[2026-06-13 00:00:00,015.015 INFO    ] 200
[2026-06-13 00:00:00,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:00,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:00,050.050 INFO    ] No update needed
[2026-06-13 00:00:00,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 00:00:00,072.072 INFO    ] 200
[2026-06-13 00:00:00,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:00,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:00:00,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:00,146.146 INFO    ] No camera update needed
[2026-06-13 00:00:00,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:00:00,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:00:00,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:00:00,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:00:02,306.306 INFO    ] ================================================
[2026-06-13 00:00:02,382.382 INFO    ] Launching Daemon at Sat Jun 13 00:00:02 IST 2026
[2026-06-13 00:00:02,425.425 INFO    ] ================================================
[2026-06-13 00:00:04,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:00:04
[2026-06-13 00:00:05,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:00:06,435.435 INFO    ] Initializing speech engine...
[2026-06-13 00:00:06,444.444 INFO    ] 2026-06-13 00:00:06
[2026-06-13 00:00:06,740.740 INFO    ] 2026-06-13 00:00:06
[2026-06-13 00:00:06,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:00:06,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:00:06,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:00:07,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:00:07,166.166 INFO    ] time= 13/06/2026 00:00:07
[2026-06-13 00:00:07,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:00:07,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:00:07,395.395 INFO    ] No existing commands found in stream
[2026-06-13 00:00:12,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:00:12,424.424 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 00:00:14,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:00:14,514.514 INFO    ] Checking for system updates...
[2026-06-13 00:00:14,535.535 INFO    ] 200
[2026-06-13 00:00:14,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:14,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:14,571.571 INFO    ] No update needed
[2026-06-13 00:00:14,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 00:00:14,594.594 INFO    ] 200
[2026-06-13 00:00:14,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:14,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:00:14,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:14,660.660 INFO    ] No camera update needed
[2026-06-13 00:00:14,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:00:14,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:00:14,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:00:14,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:00:16,709.709 INFO    ] ================================================
[2026-06-13 00:00:16,724.724 INFO    ] Launching Daemon at Sat Jun 13 00:00:16 IST 2026
[2026-06-13 00:00:16,736.736 INFO    ] ================================================
[2026-06-13 00:00:17,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:00:17
[2026-06-13 00:00:17,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:00:18,080.080 INFO    ] Initializing speech engine...
[2026-06-13 00:00:18,094.094 INFO    ] 2026-06-13 00:00:18
[2026-06-13 00:00:18,401.401 INFO    ] 2026-06-13 00:00:18
[2026-06-13 00:00:18,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:00:18,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:00:18,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:00:18,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:00:18,868.868 INFO    ] time= 13/06/2026 00:00:18
[2026-06-13 00:00:18,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:00:18,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:00:19,059.059 INFO    ] No existing commands found in stream
[2026-06-13 00:00:24,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:00:24,078.078 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 00:00:27,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:00:27,678.678 INFO    ] Checking for system updates...
[2026-06-13 00:00:27,699.699 INFO    ] 200
[2026-06-13 00:00:27,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:27,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:27,734.734 INFO    ] No update needed
[2026-06-13 00:00:27,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 00:00:27,755.755 INFO    ] 200
[2026-06-13 00:00:27,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:27,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:00:27,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:27,821.821 INFO    ] No camera update needed
[2026-06-13 00:00:27,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:00:27,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:00:27,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:00:27,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:00:29,869.869 INFO    ] ================================================
[2026-06-13 00:00:29,885.885 INFO    ] Launching Daemon at Sat Jun 13 00:00:29 IST 2026
[2026-06-13 00:00:29,897.897 INFO    ] ================================================
[2026-06-13 00:00:30,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:00:30
[2026-06-13 00:00:30,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:00:30,673.673 INFO    ] Initializing speech engine...
[2026-06-13 00:00:30,678.678 INFO    ] 2026-06-13 00:00:30
[2026-06-13 00:00:30,905.905 INFO    ] 2026-06-13 00:00:30
[2026-06-13 00:00:30,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:00:31,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:00:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:00:31,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:00:31,336.336 INFO    ] time= 13/06/2026 00:00:31
[2026-06-13 00:00:31,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:00:31,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:00:31,455.455 INFO    ] No existing commands found in stream
[2026-06-13 00:00:36,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:00:36,469.469 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 00:00:39,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:00:39,959.959 INFO    ] Checking for system updates...
[2026-06-13 00:00:39,981.981 INFO    ] 200
[2026-06-13 00:00:39,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:40,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:40,014.014 INFO    ] No update needed
[2026-06-13 00:00:40,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 00:00:40,036.036 INFO    ] 200
[2026-06-13 00:00:40,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:40,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:00:40,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:40,099.099 INFO    ] No camera update needed
[2026-06-13 00:00:40,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:00:40,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:00:40,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:00:40,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:00:42,147.147 INFO    ] ================================================
[2026-06-13 00:00:42,164.164 INFO    ] Launching Daemon at Sat Jun 13 00:00:42 IST 2026
[2026-06-13 00:00:42,175.175 INFO    ] ================================================
[2026-06-13 00:00:42,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:00:42
[2026-06-13 00:00:42,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:00:42,960.960 INFO    ] Initializing speech engine...
[2026-06-13 00:00:42,968.968 INFO    ] 2026-06-13 00:00:42
[2026-06-13 00:00:43,180.180 INFO    ] 2026-06-13 00:00:43
[2026-06-13 00:00:43,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:00:43,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:00:43,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:00:43,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:00:43,594.594 INFO    ] time= 13/06/2026 00:00:43
[2026-06-13 00:00:43,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:00:43,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:00:43,700.700 INFO    ] No existing commands found in stream
[2026-06-13 00:00:48,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:00:48,713.713 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 00:00:50,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:00:50,429.429 INFO    ] Checking for system updates...
[2026-06-13 00:00:50,450.450 INFO    ] 200
[2026-06-13 00:00:50,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:50,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:00:50,483.483 INFO    ] No update needed
[2026-06-13 00:00:50,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 00:00:50,503.503 INFO    ] 200
[2026-06-13 00:00:50,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:00:50,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:00:50,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:00:50,571.571 INFO    ] No camera update needed
[2026-06-13 00:00:50,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:00:50,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:00:50,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:00:50,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:00:52,619.619 INFO    ] ================================================
[2026-06-13 00:00:52,634.634 INFO    ] Launching Daemon at Sat Jun 13 00:00:52 IST 2026
[2026-06-13 00:00:52,645.645 INFO    ] ================================================
[2026-06-13 00:00:52,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:00:52
[2026-06-13 00:00:53,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:00:53,449.449 INFO    ] Initializing speech engine...
[2026-06-13 00:00:53,454.454 INFO    ] 2026-06-13 00:00:53
[2026-06-13 00:00:53,657.657 INFO    ] 2026-06-13 00:00:53
[2026-06-13 00:00:53,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:00:53,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:00:53,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:00:54,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:00:54,075.075 INFO    ] time= 13/06/2026 00:00:54
[2026-06-13 00:00:54,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:00:54,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:00:54,170.170 INFO    ] No existing commands found in stream
[2026-06-13 00:00:59,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:00:59,183.183 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 00:01:01,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:01:01,890.890 INFO    ] Checking for system updates...
[2026-06-13 00:01:01,911.911 INFO    ] 200
[2026-06-13 00:01:01,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:01,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:01:01,944.944 INFO    ] No update needed
[2026-06-13 00:01:01,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 00:01:01,969.969 INFO    ] 200
[2026-06-13 00:01:01,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:02,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:01:02,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:01:02,120.120 INFO    ] No camera update needed
[2026-06-13 00:01:02,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:01:02,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:01:02,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:01:02,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:01:04,187.187 INFO    ] ================================================
[2026-06-13 00:01:04,204.204 INFO    ] Launching Daemon at Sat Jun 13 00:01:04 IST 2026
[2026-06-13 00:01:04,215.215 INFO    ] ================================================
[2026-06-13 00:01:04,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:01:04
[2026-06-13 00:01:05,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:01:05,380.380 INFO    ] Initializing speech engine...
[2026-06-13 00:01:05,394.394 INFO    ] 2026-06-13 00:01:05
[2026-06-13 00:01:05,612.612 INFO    ] 2026-06-13 00:01:05
[2026-06-13 00:01:05,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:01:05,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:01:05,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:01:05,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:01:06,037.037 INFO    ] time= 13/06/2026 00:01:05
[2026-06-13 00:01:06,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:01:06,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:01:06,169.169 INFO    ] No existing commands found in stream
[2026-06-13 00:01:11,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:01:11,183.183 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 00:01:12,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:01:12,647.647 INFO    ] Checking for system updates...
[2026-06-13 00:01:12,667.667 INFO    ] 200
[2026-06-13 00:01:12,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:12,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:12,700.700 INFO    ] No update needed
[2026-06-13 00:01:12,701.701 INFO    ] Checking for camera pi updates...
[2026-06-13 00:01:12,723.723 INFO    ] 200
[2026-06-13 00:01:12,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:12,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:01:12,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:12,789.789 INFO    ] No camera update needed
[2026-06-13 00:01:12,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:01:12,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:01:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:01:12,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:01:14,837.837 INFO    ] ================================================
[2026-06-13 00:01:14,853.853 INFO    ] Launching Daemon at Sat Jun 13 00:01:14 IST 2026
[2026-06-13 00:01:14,865.865 INFO    ] ================================================
[2026-06-13 00:01:15,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:01:15
[2026-06-13 00:01:15,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:01:15,681.681 INFO    ] Initializing speech engine...
[2026-06-13 00:01:15,696.696 INFO    ] 2026-06-13 00:01:15
[2026-06-13 00:01:15,915.915 INFO    ] 2026-06-13 00:01:15
[2026-06-13 00:01:15,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:01:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:01:16,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:01:16,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:01:16,322.322 INFO    ] time= 13/06/2026 00:01:16
[2026-06-13 00:01:16,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:01:16,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:01:16,476.476 INFO    ] No existing commands found in stream
[2026-06-13 00:01:21,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:01:21,488.488 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 00:01:24,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:01:24,413.413 INFO    ] Checking for system updates...
[2026-06-13 00:01:24,435.435 INFO    ] 200
[2026-06-13 00:01:24,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:24,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:24,484.484 INFO    ] No update needed
[2026-06-13 00:01:24,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 00:01:24,525.525 INFO    ] 200
[2026-06-13 00:01:24,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:24,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:01:24,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:24,716.716 INFO    ] No camera update needed
[2026-06-13 00:01:24,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:01:24,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:01:24,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:01:24,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:01:26,777.777 INFO    ] ================================================
[2026-06-13 00:01:26,793.793 INFO    ] Launching Daemon at Sat Jun 13 00:01:26 IST 2026
[2026-06-13 00:01:26,806.806 INFO    ] ================================================
[2026-06-13 00:01:27,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:01:27
[2026-06-13 00:01:27,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:01:28,003.003 INFO    ] Initializing speech engine...
[2026-06-13 00:01:28,009.009 INFO    ] 2026-06-13 00:01:28
[2026-06-13 00:01:28,217.217 INFO    ] 2026-06-13 00:01:28
[2026-06-13 00:01:28,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:01:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:01:28,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:01:28,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:01:28,635.635 INFO    ] time= 13/06/2026 00:01:28
[2026-06-13 00:01:28,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:01:28,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:01:28,732.732 INFO    ] No existing commands found in stream
[2026-06-13 00:01:33,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:01:33,746.746 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 00:01:35,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:01:35,299.299 INFO    ] Checking for system updates...
[2026-06-13 00:01:35,320.320 INFO    ] 200
[2026-06-13 00:01:35,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:35,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:35,355.355 INFO    ] No update needed
[2026-06-13 00:01:35,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 00:01:35,378.378 INFO    ] 200
[2026-06-13 00:01:35,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:35,405.405 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:01:35,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:01:35,446.446 INFO    ] No camera update needed
[2026-06-13 00:01:35,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:01:35,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:01:35,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:01:35,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:01:37,489.489 INFO    ] ================================================
[2026-06-13 00:01:37,500.500 INFO    ] Launching Daemon at Sat Jun 13 00:01:37 IST 2026
[2026-06-13 00:01:37,507.507 INFO    ] ================================================
[2026-06-13 00:01:37,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:01:37
[2026-06-13 00:01:38,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:01:38,336.336 INFO    ] Initializing speech engine...
[2026-06-13 00:01:38,365.365 INFO    ] 2026-06-13 00:01:38
[2026-06-13 00:01:38,555.555 INFO    ] 2026-06-13 00:01:38
[2026-06-13 00:01:38,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:01:38,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:01:38,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:01:38,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:01:38,956.956 INFO    ] time= 13/06/2026 00:01:38
[2026-06-13 00:01:38,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:01:39,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:01:39,069.069 INFO    ] No existing commands found in stream
[2026-06-13 00:01:44,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:01:44,083.083 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 00:01:47,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:01:47,953.953 INFO    ] Checking for system updates...
[2026-06-13 00:01:47,974.974 INFO    ] 200
[2026-06-13 00:01:47,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:48,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:01:48,007.007 INFO    ] No update needed
[2026-06-13 00:01:48,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 00:01:48,030.030 INFO    ] 200
[2026-06-13 00:01:48,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:01:48,056.056 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:01:48,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:01:48,095.095 INFO    ] No camera update needed
[2026-06-13 00:01:48,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:01:48,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:01:48,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:01:48,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:01:50,145.145 INFO    ] ================================================
[2026-06-13 00:01:50,161.161 INFO    ] Launching Daemon at Sat Jun 13 00:01:50 IST 2026
[2026-06-13 00:01:50,173.173 INFO    ] ================================================
[2026-06-13 00:01:50,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:01:50
[2026-06-13 00:01:50,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:01:50,962.962 INFO    ] Initializing speech engine...
[2026-06-13 00:01:50,966.966 INFO    ] 2026-06-13 00:01:50
[2026-06-13 00:01:51,197.197 INFO    ] 2026-06-13 00:01:51
[2026-06-13 00:01:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:01:51,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:01:51,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:01:51,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:01:51,630.630 INFO    ] time= 13/06/2026 00:01:51
[2026-06-13 00:01:51,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:01:51,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:01:51,760.760 INFO    ] No existing commands found in stream
[2026-06-13 00:01:56,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:01:56,772.772 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 00:02:00,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:02:00,126.126 INFO    ] Checking for system updates...
[2026-06-13 00:02:00,146.146 INFO    ] 200
[2026-06-13 00:02:00,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:00,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:02:00,180.180 INFO    ] No update needed
[2026-06-13 00:02:00,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 00:02:00,201.201 INFO    ] 200
[2026-06-13 00:02:00,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:00,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:02:00,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:02:00,266.266 INFO    ] No camera update needed
[2026-06-13 00:02:00,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:02:00,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:02:00,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:02:00,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:02:02,309.309 INFO    ] ================================================
[2026-06-13 00:02:02,322.322 INFO    ] Launching Daemon at Sat Jun 13 00:02:02 IST 2026
[2026-06-13 00:02:02,333.333 INFO    ] ================================================
[2026-06-13 00:02:02,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:02:02
[2026-06-13 00:02:03,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:02:03,179.179 INFO    ] Initializing speech engine...
[2026-06-13 00:02:03,184.184 INFO    ] 2026-06-13 00:02:03
[2026-06-13 00:02:03,388.388 INFO    ] 2026-06-13 00:02:03
[2026-06-13 00:02:03,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:02:03,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:02:03,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:02:03,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:02:03,809.809 INFO    ] time= 13/06/2026 00:02:03
[2026-06-13 00:02:03,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:02:03,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:02:03,906.906 INFO    ] No existing commands found in stream
[2026-06-13 00:02:08,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:02:08,919.919 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 00:02:11,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:02:11,078.078 INFO    ] Checking for system updates...
[2026-06-13 00:02:11,100.100 INFO    ] 200
[2026-06-13 00:02:11,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:11,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:02:11,135.135 INFO    ] No update needed
[2026-06-13 00:02:11,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 00:02:11,157.157 INFO    ] 200
[2026-06-13 00:02:11,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:11,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:02:11,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:02:11,221.221 INFO    ] No camera update needed
[2026-06-13 00:02:11,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:02:11,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:02:11,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:02:11,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:02:13,271.271 INFO    ] ================================================
[2026-06-13 00:02:13,287.287 INFO    ] Launching Daemon at Sat Jun 13 00:02:13 IST 2026
[2026-06-13 00:02:13,300.300 INFO    ] ================================================
[2026-06-13 00:02:13,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:02:13
[2026-06-13 00:02:13,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:02:14,072.072 INFO    ] Initializing speech engine...
[2026-06-13 00:02:14,076.076 INFO    ] 2026-06-13 00:02:14
[2026-06-13 00:02:14,291.291 INFO    ] 2026-06-13 00:02:14
[2026-06-13 00:02:14,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:02:14,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:02:14,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:02:14,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:02:14,700.700 INFO    ] time= 13/06/2026 00:02:14
[2026-06-13 00:02:14,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:02:14,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:02:14,809.809 INFO    ] No existing commands found in stream
[2026-06-13 00:02:19,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:02:19,823.823 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 00:02:23,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:02:23,175.175 INFO    ] Checking for system updates...
[2026-06-13 00:02:23,197.197 INFO    ] 200
[2026-06-13 00:02:23,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:23,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:02:23,230.230 INFO    ] No update needed
[2026-06-13 00:02:23,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 00:02:23,251.251 INFO    ] 200
[2026-06-13 00:02:23,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:23,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:02:23,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:02:23,321.321 INFO    ] No camera update needed
[2026-06-13 00:02:23,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:02:23,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:02:23,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:02:23,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:02:25,368.368 INFO    ] ================================================
[2026-06-13 00:02:25,384.384 INFO    ] Launching Daemon at Sat Jun 13 00:02:25 IST 2026
[2026-06-13 00:02:25,396.396 INFO    ] ================================================
[2026-06-13 00:02:25,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:02:25
[2026-06-13 00:02:26,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:02:26,226.226 INFO    ] Initializing speech engine...
[2026-06-13 00:02:26,232.232 INFO    ] 2026-06-13 00:02:26
[2026-06-13 00:02:26,478.478 INFO    ] 2026-06-13 00:02:26
[2026-06-13 00:02:26,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:02:26,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:02:26,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:02:26,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:02:26,977.977 INFO    ] time= 13/06/2026 00:02:26
[2026-06-13 00:02:27,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:02:27,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:02:27,166.166 INFO    ] No existing commands found in stream
[2026-06-13 00:02:32,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:02:32,198.198 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 00:02:34,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:02:34,663.663 INFO    ] Checking for system updates...
[2026-06-13 00:02:34,684.684 INFO    ] 200
[2026-06-13 00:02:34,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:34,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:02:34,718.718 INFO    ] No update needed
[2026-06-13 00:02:34,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 00:02:34,739.739 INFO    ] 200
[2026-06-13 00:02:34,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:34,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:02:34,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:02:34,806.806 INFO    ] No camera update needed
[2026-06-13 00:02:34,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:02:34,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:02:34,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:02:34,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:02:36,856.856 INFO    ] ================================================
[2026-06-13 00:02:36,872.872 INFO    ] Launching Daemon at Sat Jun 13 00:02:36 IST 2026
[2026-06-13 00:02:36,883.883 INFO    ] ================================================
[2026-06-13 00:02:37,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:02:37
[2026-06-13 00:02:37,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:02:37,973.973 INFO    ] Initializing speech engine...
[2026-06-13 00:02:37,979.979 INFO    ] 2026-06-13 00:02:37
[2026-06-13 00:02:38,241.241 INFO    ] 2026-06-13 00:02:38
[2026-06-13 00:02:38,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:02:38,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:02:38,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:02:38,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:02:38,702.702 INFO    ] time= 13/06/2026 00:02:38
[2026-06-13 00:02:38,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:02:38,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:02:38,915.915 INFO    ] No existing commands found in stream
[2026-06-13 00:02:43,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:02:43,951.951 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 00:02:47,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:02:47,010.010 INFO    ] Checking for system updates...
[2026-06-13 00:02:47,031.031 INFO    ] 200
[2026-06-13 00:02:47,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:47,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:02:47,067.067 INFO    ] No update needed
[2026-06-13 00:02:47,069.069 INFO    ] Checking for camera pi updates...
[2026-06-13 00:02:47,093.093 INFO    ] 200
[2026-06-13 00:02:47,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:02:47,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:02:47,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:02:47,165.165 INFO    ] No camera update needed
[2026-06-13 00:02:47,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:02:47,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:02:47,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:02:47,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:02:49,216.216 INFO    ] ================================================
[2026-06-13 00:02:49,233.233 INFO    ] Launching Daemon at Sat Jun 13 00:02:49 IST 2026
[2026-06-13 00:02:49,245.245 INFO    ] ================================================
[2026-06-13 00:02:49,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:02:49
[2026-06-13 00:02:50,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:02:50,870.870 INFO    ] Initializing speech engine...
[2026-06-13 00:02:50,875.875 INFO    ] 2026-06-13 00:02:50
[2026-06-13 00:02:51,184.184 INFO    ] 2026-06-13 00:02:51
[2026-06-13 00:02:51,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:02:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:02:51,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:02:51,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:02:51,567.567 INFO    ] time= 13/06/2026 00:02:51
[2026-06-13 00:02:51,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:02:51,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:02:51,683.683 INFO    ] No existing commands found in stream
[2026-06-13 00:02:56,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:02:56,712.712 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 00:03:00,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:03:00,503.503 INFO    ] Checking for system updates...
[2026-06-13 00:03:00,546.546 INFO    ] 200
[2026-06-13 00:03:00,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:00,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:03:00,617.617 INFO    ] No update needed
[2026-06-13 00:03:00,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:00,662.662 INFO    ] 200
[2026-06-13 00:03:00,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:00,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:00,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:00,764.764 INFO    ] No camera update needed
[2026-06-13 00:03:00,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:00,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:00,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:00,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:02,827.827 INFO    ] ================================================
[2026-06-13 00:03:02,844.844 INFO    ] Launching Daemon at Sat Jun 13 00:03:02 IST 2026
[2026-06-13 00:03:02,856.856 INFO    ] ================================================
[2026-06-13 00:03:03,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:03
[2026-06-13 00:03:03,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:03,790.790 INFO    ] Initializing speech engine...
[2026-06-13 00:03:03,793.793 INFO    ] 2026-06-13 00:03:03
[2026-06-13 00:03:03,999.999 INFO    ] 2026-06-13 00:03:03
[2026-06-13 00:03:04,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:04,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:04,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:04,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:04,407.407 INFO    ] time= 13/06/2026 00:03:04
[2026-06-13 00:03:04,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:04,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:04,516.516 INFO    ] No existing commands found in stream
[2026-06-13 00:03:09,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:03:09,530.530 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 00:03:13,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:03:13,073.073 INFO    ] Checking for system updates...
[2026-06-13 00:03:13,094.094 INFO    ] 200
[2026-06-13 00:03:13,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:13,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:13,128.128 INFO    ] No update needed
[2026-06-13 00:03:13,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:13,150.150 INFO    ] 200
[2026-06-13 00:03:13,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:13,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:13,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:13,217.217 INFO    ] No camera update needed
[2026-06-13 00:03:13,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:13,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:13,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:13,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:15,269.269 INFO    ] ================================================
[2026-06-13 00:03:15,285.285 INFO    ] Launching Daemon at Sat Jun 13 00:03:15 IST 2026
[2026-06-13 00:03:15,296.296 INFO    ] ================================================
[2026-06-13 00:03:15,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:15
[2026-06-13 00:03:15,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:16,093.093 INFO    ] Initializing speech engine...
[2026-06-13 00:03:16,106.106 INFO    ] 2026-06-13 00:03:16
[2026-06-13 00:03:16,313.313 INFO    ] 2026-06-13 00:03:16
[2026-06-13 00:03:16,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:16,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:16,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:16,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:16,719.719 INFO    ] time= 13/06/2026 00:03:16
[2026-06-13 00:03:16,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:16,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:16,897.897 INFO    ] No existing commands found in stream
[2026-06-13 00:03:21,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:03:21,916.916 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 00:03:22,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:03:22,581.581 INFO    ] Checking for system updates...
[2026-06-13 00:03:22,621.621 INFO    ] 200
[2026-06-13 00:03:22,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:22,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:22,688.688 INFO    ] No update needed
[2026-06-13 00:03:22,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:22,729.729 INFO    ] 200
[2026-06-13 00:03:22,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:22,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:22,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:22,824.824 INFO    ] No camera update needed
[2026-06-13 00:03:22,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:22,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:22,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:22,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:24,886.886 INFO    ] ================================================
[2026-06-13 00:03:24,901.901 INFO    ] Launching Daemon at Sat Jun 13 00:03:24 IST 2026
[2026-06-13 00:03:24,912.912 INFO    ] ================================================
[2026-06-13 00:03:25,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:25
[2026-06-13 00:03:25,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:25,922.922 INFO    ] Initializing speech engine...
[2026-06-13 00:03:25,930.930 INFO    ] 2026-06-13 00:03:25
[2026-06-13 00:03:26,149.149 INFO    ] 2026-06-13 00:03:26
[2026-06-13 00:03:26,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:26,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:26,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:26,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:26,584.584 INFO    ] time= 13/06/2026 00:03:26
[2026-06-13 00:03:26,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:26,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:26,705.705 INFO    ] No existing commands found in stream
[2026-06-13 00:03:31,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:03:31,717.717 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 00:03:33,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:03:33,895.895 INFO    ] Checking for system updates...
[2026-06-13 00:03:33,917.917 INFO    ] 200
[2026-06-13 00:03:33,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:33,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:33,952.952 INFO    ] No update needed
[2026-06-13 00:03:33,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:33,974.974 INFO    ] 200
[2026-06-13 00:03:33,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:34,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:34,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:03:34,042.042 INFO    ] No camera update needed
[2026-06-13 00:03:34,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:34,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:34,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:34,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:36,089.089 INFO    ] ================================================
[2026-06-13 00:03:36,104.104 INFO    ] Launching Daemon at Sat Jun 13 00:03:36 IST 2026
[2026-06-13 00:03:36,115.115 INFO    ] ================================================
[2026-06-13 00:03:36,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:36
[2026-06-13 00:03:36,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:36,914.914 INFO    ] Initializing speech engine...
[2026-06-13 00:03:36,919.919 INFO    ] 2026-06-13 00:03:36
[2026-06-13 00:03:37,148.148 INFO    ] 2026-06-13 00:03:37
[2026-06-13 00:03:37,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:37,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:37,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:37,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:37,577.577 INFO    ] time= 13/06/2026 00:03:37
[2026-06-13 00:03:37,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:37,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:37,704.704 INFO    ] No existing commands found in stream
[2026-06-13 00:03:42,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:03:42,717.717 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 00:03:46,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:03:46,034.034 INFO    ] Checking for system updates...
[2026-06-13 00:03:46,056.056 INFO    ] 200
[2026-06-13 00:03:46,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:46,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:03:46,089.089 INFO    ] No update needed
[2026-06-13 00:03:46,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:46,112.112 INFO    ] 200
[2026-06-13 00:03:46,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:46,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:46,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:03:46,159.159 INFO    ] No camera update needed
[2026-06-13 00:03:46,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:46,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:46,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:46,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:48,206.206 INFO    ] ================================================
[2026-06-13 00:03:48,222.222 INFO    ] Launching Daemon at Sat Jun 13 00:03:48 IST 2026
[2026-06-13 00:03:48,232.232 INFO    ] ================================================
[2026-06-13 00:03:48,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:48
[2026-06-13 00:03:48,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:49,095.095 INFO    ] Initializing speech engine...
[2026-06-13 00:03:49,101.101 INFO    ] 2026-06-13 00:03:49
[2026-06-13 00:03:49,310.310 INFO    ] 2026-06-13 00:03:49
[2026-06-13 00:03:49,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:49,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:49,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:49,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:49,734.734 INFO    ] time= 13/06/2026 00:03:49
[2026-06-13 00:03:49,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:49,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:49,836.836 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 00:03:49,840.840 INFO    ] Checking historical command: ID=1781289225926-0
[2026-06-13 00:03:49,866.866 INFO    ] process_and_cleanup_command: msg_id=1781289225926-0
[2026-06-13 00:03:49,867.867 INFO    ] is_command_expired: timestamp=2026-06-12T18:33:45.745Z, expiry=30s
[2026-06-13 00:03:49,980.980 INFO    ] Command removed from stream: 1781289225926-0. returning for processing...
[2026-06-13 00:03:49,983.983 INFO    ] ***** get_valid_command
[2026-06-13 00:03:49,988.988 INFO    ] {'timestamp': '2026-06-12T18:33:45.745Z', 'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'data': '{"request_id":"start-order-1781289225745-fnl4hgan4","orderId":"TM08202203260613000300379","is_vending":false}'}
[2026-06-13 00:03:49,993.993 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613000300379', 'request_id': 'start-order-1781289225745-fnl4hgan4'}
[2026-06-13 00:03:49,997.997 INFO    ] Handling start order...
[2026-06-13 00:03:50,001.001 INFO    ] handle_start_order_command
[2026-06-13 00:03:50,009.009 INFO    ] _send_start_order_success: request_id=start-order-1781289225745-fnl4hgan4, order_id=TM08202203260613000300379
[2026-06-13 00:03:50,012.012 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:03:50,064.064 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781289230028-0
[2026-06-13 00:03:50,068.068 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:03:50,072.072 INFO    ] Checking for system updates...
[2026-06-13 00:03:50,100.100 INFO    ] 200
[2026-06-13 00:03:50,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:50,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:03:50,145.145 INFO    ] No update needed
[2026-06-13 00:03:50,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 00:03:50,211.211 INFO    ] 200
[2026-06-13 00:03:50,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:03:50,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:03:50,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:03:50,345.345 INFO    ] No camera update needed
[2026-06-13 00:03:50,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:03:50,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:03:50,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:03:50,367.367 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 00:03:50,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:03:52,413.413 INFO    ] ================================================
[2026-06-13 00:03:52,428.428 INFO    ] Launching Daemon at Sat Jun 13 00:03:52 IST 2026
[2026-06-13 00:03:52,439.439 INFO    ] ================================================
[2026-06-13 00:03:53,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:03:53
[2026-06-13 00:03:53,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:03:53,618.618 INFO    ] Initializing speech engine...
[2026-06-13 00:03:53,628.628 INFO    ] 2026-06-13 00:03:53
[2026-06-13 00:03:53,831.831 INFO    ] 2026-06-13 00:03:53
[2026-06-13 00:03:53,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:03:54,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:03:54,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:03:54,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:03:54,235.235 INFO    ] time= 13/06/2026 00:03:54
[2026-06-13 00:03:54,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:03:54,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:03:54,347.347 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 00:03:54,350.350 INFO    ] Checking historical command: ID=1781289230028-0
[2026-06-13 00:03:54,353.353 INFO    ] process_and_cleanup_command: msg_id=1781289230028-0
[2026-06-13 00:03:54,379.379 INFO    ] is_command_expired: timestamp=2026-06-12T18:33:50.010682Z, expiry=30s
[2026-06-13 00:03:54,490.490 INFO    ] Command removed from stream: 1781289230028-0. returning for processing...
[2026-06-13 00:03:54,493.493 INFO    ] ***** get_valid_command
[2026-06-13 00:03:54,496.496 INFO    ] {'metadata_request_id': 'start-order-1781289225745-fnl4hgan4', 'status': 'success', 'timestamp': '2026-06-12T18:33:50.010682Z', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM08202203', 'metadata_order_id': 'TM08202203260613000300379'}
[2026-06-13 00:03:54,500.500 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 00:03:59,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:03:59,513.513 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 00:04:02,308.308 INFO    ] {'weight_based_response': None, 'order_amount': '0', 'anomaly': '0', 'ex_order_id': None, 'command_request_data': None, 'sku_json': '0-0', 'delivery_fee': '0', 'amount_received': '20.0', 'command_todo': None, 'invoice_final_settled_amount': '0.0', 'pre_auth_gateway': 'razor_pay', 'command_for': None, 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/185993-3509.webp","door_id":"2","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","unit_price":20,"skuid":"185993","tray_id":"43","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM08202203260613000300379","total_amount":20,"cart_offer_desc":"","imei":"TM08202203","userId":"8210377691"}', 'type_of_order': 'order', 'wallet_txn_ids_json': '{"pre_credit":"7373201370617302218","pre_debit":"7945768106054534971"}', 'operator_sms_sent': '0', 'video_url': None, 'last_command_response': None, 'partner_order_details': None, 'server_response': '', 'previous_pending': '0.0', 'last_modified_at': '2026-06-13 00:03:39', 'all_command_response': None, 'server_status': 'init-process', 'access_code': '84178639', 'invoice_balance': '0.0', 'environment': '9', 'delivery_details_json': None, 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'affiliate_name': '', 'receipt_id': None, 'created_at': '2026-06-13 00:03:53', 'balance_gateway': None, 'short_order_expiry': None, 'status': 'active', 'order_id': 'TM08202203260613000300379', 'modified_at': '2026-06-13 00:03:53', 'user_id': '8210377691', 'vm_id': '1660745548012', 'short_order_id': None, 'delivery_address_id': None, 'pre_auth_amount': '20.0'}
[2026-06-13 00:04:02,324.324 INFO    ] Checking for system updates...
[2026-06-13 00:04:02,374.374 INFO    ] 200
[2026-06-13 00:04:02,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:02,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:04:02,448.448 INFO    ] No update needed
[2026-06-13 00:04:02,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 00:04:02,491.491 INFO    ] 200
[2026-06-13 00:04:02,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:02,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:04:02,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:04:02,614.614 INFO    ] No camera update needed
[2026-06-13 00:04:02,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:04:02,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:04:02,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:04:02,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:04:04,669.669 INFO    ] ================================================
[2026-06-13 00:04:04,684.684 INFO    ] Launching Daemon at Sat Jun 13 00:04:04 IST 2026
[2026-06-13 00:04:04,695.695 INFO    ] ================================================
[2026-06-13 00:04:05,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:04:05
[2026-06-13 00:04:05,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:04:05,501.501 INFO    ] Initializing speech engine...
[2026-06-13 00:04:05,513.513 INFO    ] 2026-06-13 00:04:05
[2026-06-13 00:04:05,711.711 INFO    ] 2026-06-13 00:04:05
[2026-06-13 00:04:05,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:04:05,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:04:05,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:04:05,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:04:05,975.975 INFO    ] time= 13/06/2026 00:04:05
[2026-06-13 00:04:05,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:04:05,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:04:06,069.069 INFO    ] No existing commands found in stream
[2026-06-13 00:04:11,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:04:11,103.103 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 00:04:12,829.829 INFO    ] {'short_order_expiry': None, 'operator_sms_sent': '0', 'short_order_id': None, 'access_code': '84178639', 'server_response': '', 'wallet_txn_ids_json': '{"pre_credit":"7373201370617302218","pre_debit":"7945768106054534971"}', 'weight_based_response': None, 'affiliate_name': '', 'anomaly': '0', 'response': {'data': 'order updated', 'msg': 'order updated', 'status': True}, 'environment': '9', 'server_status': 'init-process', 'partner_order_details': None, 'delivery_details_json': None, 'delivery_address_id': None, 'vm_id': '1660745548012', 'order_amount': '0', 'receipt_id': None, 'previous_pending': '0.0', 'order_id': 'TM08202203260613000300379', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/185993-3509.webp","door_id":"2","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","unit_price":20,"skuid":"185993","tray_id":"43","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM08202203260613000300379","total_amount":20,"cart_offer_desc":"","imei":"TM08202203","userId":"8210377691"}', 'invoice_balance': '0.0', 'video_url': None, 'all_command_response': None, 'modified_at': '2026-06-13 00:03:53', 'user_id': '8210377691', 'pre_auth_gateway': 'razor_pay', 'last_modified_at': '2026-06-13 00:03:39', 'invoice_final_settled_amount': '0.0', 'ex_order_id': None, 'pre_auth_amount': '20.0', 'delivery_fee': '0', 'last_command_response': None, 'status': 'active', 'sku_json': '0-0', 'amount_received': '20.0', 'type_of_order': 'order', 'command_for': None, 'command_todo': None, 'command_request_data': None, 'balance_gateway': None, 'created_at': '2026-06-13 00:03:53'}
[2026-06-13 00:04:12,845.845 INFO    ] Checking for system updates...
[2026-06-13 00:04:12,866.866 INFO    ] 200
[2026-06-13 00:04:12,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:12,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:04:12,901.901 INFO    ] No update needed
[2026-06-13 00:04:12,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 00:04:12,923.923 INFO    ] 200
[2026-06-13 00:04:12,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:12,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:04:12,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:04:12,991.991 INFO    ] No camera update needed
[2026-06-13 00:04:12,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:04:12,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:04:12,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:04:13,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:04:15,040.040 INFO    ] ================================================
[2026-06-13 00:04:15,056.056 INFO    ] Launching Daemon at Sat Jun 13 00:04:15 IST 2026
[2026-06-13 00:04:15,067.067 INFO    ] ================================================
[2026-06-13 00:04:15,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:04:15
[2026-06-13 00:04:15,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:04:15,911.911 INFO    ] Initializing speech engine...
[2026-06-13 00:04:15,916.916 INFO    ] 2026-06-13 00:04:15
[2026-06-13 00:04:16,123.123 INFO    ] 2026-06-13 00:04:16
[2026-06-13 00:04:16,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:04:16,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:04:16,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:04:16,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:04:16,539.539 INFO    ] time= 13/06/2026 00:04:16
[2026-06-13 00:04:16,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:04:16,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:04:16,639.639 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 00:04:16,643.643 INFO    ] Checking historical command: ID=1781289254985-0
[2026-06-13 00:04:16,668.668 INFO    ] process_and_cleanup_command: msg_id=1781289254985-0
[2026-06-13 00:04:16,670.670 INFO    ] is_command_expired: timestamp=2026-06-12T18:34:14.673Z, expiry=30s
[2026-06-13 00:04:16,780.780 INFO    ] Command removed from stream: 1781289254985-0. returning for processing...
[2026-06-13 00:04:16,784.784 INFO    ] ***** get_valid_command
[2026-06-13 00:04:16,789.789 INFO    ] {'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781289254673-0qm251ee7","orderId":"TM08202203260613000300379","is_vending":false}', 'timestamp': '2026-06-12T18:34:14.673Z', 'source': 'webapp'}
[2026-06-13 00:04:16,793.793 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781289254673-0qm251ee7', 'is_vending': False, 'orderId': 'TM08202203260613000300379'}
[2026-06-13 00:04:16,796.796 INFO    ] Handling start order...
[2026-06-13 00:04:16,800.800 INFO    ] handle_start_order_command
[2026-06-13 00:04:16,806.806 INFO    ] 🔍 handle_start_order_command: Lock file Order ID: TM08202203260613000300379, TS: 2026-06-13 00:03:50
[2026-06-13 00:04:16,817.817 INFO    ] _send_start_order_success: request_id=start-order-1781289254673-0qm251ee7, order_id=TM08202203260613000300379
[2026-06-13 00:04:16,821.821 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:04:16,875.875 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781289256839-0
[2026-06-13 00:04:16,879.879 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:04:16,884.884 INFO    ] Checking for system updates...
[2026-06-13 00:04:16,917.917 INFO    ] 200
[2026-06-13 00:04:16,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:16,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:04:17,006.006 INFO    ] No update needed
[2026-06-13 00:04:17,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 00:04:17,056.056 INFO    ] 200
[2026-06-13 00:04:17,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:17,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:04:17,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:04:17,181.181 INFO    ] No camera update needed
[2026-06-13 00:04:17,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:04:17,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:04:17,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:04:17,201.201 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 00:04:17,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:04:19,240.240 INFO    ] ================================================
[2026-06-13 00:04:19,255.255 INFO    ] Launching Daemon at Sat Jun 13 00:04:19 IST 2026
[2026-06-13 00:04:19,266.266 INFO    ] ================================================
[2026-06-13 00:04:19,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:04:19
[2026-06-13 00:04:19,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:04:20,046.046 INFO    ] Initializing speech engine...
[2026-06-13 00:04:20,056.056 INFO    ] 2026-06-13 00:04:20
[2026-06-13 00:04:20,261.261 INFO    ] 2026-06-13 00:04:20
[2026-06-13 00:04:20,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:04:20,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:04:20,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:04:20,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:04:20,667.667 INFO    ] time= 13/06/2026 00:04:20
[2026-06-13 00:04:20,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:04:20,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:04:20,786.786 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 00:04:20,790.790 INFO    ] Checking historical command: ID=1781289256839-0
[2026-06-13 00:04:20,807.807 INFO    ] process_and_cleanup_command: msg_id=1781289256839-0
[2026-06-13 00:04:20,817.817 INFO    ] is_command_expired: timestamp=2026-06-12T18:34:16.819287Z, expiry=30s
[2026-06-13 00:04:20,927.927 INFO    ] Command removed from stream: 1781289256839-0. returning for processing...
[2026-06-13 00:04:20,931.931 INFO    ] ***** get_valid_command
[2026-06-13 00:04:20,934.934 INFO    ] {'status': 'success', 'timestamp': '2026-06-12T18:34:16.819287Z', 'metadata_request_id': 'start-order-1781289254673-0qm251ee7', 'imei': 'TM08202203', 'message': 'start-order success', 'metadata_order_id': 'TM08202203260613000300379', 'message_type': 'command_response'}
[2026-06-13 00:04:20,938.938 INFO    ] Checking historical command: ID=1781289257511-0
[2026-06-13 00:04:20,942.942 INFO    ] process_and_cleanup_command: msg_id=1781289257511-0
[2026-06-13 00:04:20,946.946 INFO    ] is_command_expired: timestamp=2026-06-12T18:34:17.127Z, expiry=30s
[2026-06-13 00:04:20,991.991 INFO    ] Command removed from stream: 1781289257511-0. returning for processing...
[2026-06-13 00:04:20,994.994 INFO    ] ***** get_valid_command
[2026-06-13 00:04:20,996.996 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1781289257127-r6grtvygi","orderId":"TM08202203260613000300379","is_vending":false,"accessCode":"84178639"}', 'timestamp': '2026-06-12T18:34:17.127Z', 'source': 'webapp', 'timeout': '60'}
[2026-06-13 00:04:21,000.000 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613000300379', 'is_vending': False, 'request_id': 'process-order-1781289257127-r6grtvygi', 'accessCode': '84178639'}
[2026-06-13 00:04:21,003.003 INFO    ] Handling process order...
[2026-06-13 00:04:21,007.007 INFO    ] Processing process-order command...
[2026-06-13 00:04:21,010.010 INFO    ] 🔍 Lock file Order ID: TM08202203260613000300379, TS: 2026-06-13 00:04:16
[2026-06-13 00:04:21,019.019 INFO    ] ✅ Order lock valid for TM08202203260613000300379
[2026-06-13 00:04:21,021.021 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 00:04:21,024.024 INFO    ] processing access code 84178639 for order TM08202203260613000300379
[2026-06-13 00:04:21,029.029 INFO    ] 🔍 Lock file Order ID: TM08202203260613000300379, TS: 2026-06-13 00:04:16
[2026-06-13 00:04:21,032.032 INFO    ] ✅ Order lock valid for TM08202203260613000300379
[2026-06-13 00:04:21,035.035 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,065.065 INFO    ] 200
[2026-06-13 00:04:21,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:21,072.072 INFO    ] 84178639
[2026-06-13 00:04:21,076.076 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,080.080 INFO    ] session id :226912210
[2026-06-13 00:04:21,084.084 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=84178639&imei=TM08202203&session_id=226912210
[2026-06-13 00:04:21,882.882 INFO    ] 200
[2026-06-13 00:04:21,884.884 INFO    ] {"data": {"mobile": "8210377691", "order_id": "TM08202203260613000300379", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "84178639", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 00:04:21,885.885 INFO    ] 20
[2026-06-13 00:04:21,886.886 INFO    ] TM08202203260613000300379
[2026-06-13 00:04:21,887.887 INFO    ] 8210377691
[2026-06-13 00:04:21,889.889 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,890.890 INFO    ] Door Opening for user mobile ending with  seven six nine one 
[2026-06-13 00:04:21,891.891 INFO    ] Door Opening for user mobile ending with  seven six nine one 
[2026-06-13 00:04:21,893.893 INFO    ] 99ee0a1698e4836bdf56e526c7d2bb8e
[2026-06-13 00:04:21,894.894 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,895.895 INFO    ] playing audio file
[2026-06-13 00:04:21,905.905 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,907.907 INFO    ] 2026-06-13 00:04:21
[2026-06-13 00:04:21,909.909 INFO    ] publish_status: order_id=TM08202203260613000300379
[2026-06-13 00:04:21,911.911 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613000300379
[2026-06-13 00:04:21,955.955 INFO    ] [publish_status] Message added to stream with ID: 1781289261921-0
[2026-06-13 00:04:21,956.956 INFO    ] Published to order:TM08202203260613000300379: {'order_id': 'TM08202203260613000300379', 'server_status': 'order-started', 'timestamp': '2026-06-12T18:34:21.908297Z', 'server_response': '{"data": {"access_code": "84178639", "order_id": "TM08202203260613000300379", "bill_amount": "20", "invoice_bill": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "2", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "unit_price": 20, "skuid": "185993", "mrp": "20", "qty": 1, "sku_total": 20, "tray_id": "43", "offer_desc": "", "offer_id": ""}], "mobile": "8210377691"}, "msg": "Order Data", "status": true, "rstatus": true}'} (ID: 1781289261921-0)
[2026-06-13 00:04:22,252.252 INFO    ] {'order_id': 'TM08202203260613000300379', 'server_status': 'order-started', 'server_response': {'data': {'access_code': '84178639', 'order_id': 'TM08202203260613000300379', 'bill_amount': '20', 'invoice_bill': '20', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'skuid': '185993', 'mrp': '20', 'qty': 1, 'sku_total': 20, 'tray_id': '43', 'offer_desc': '', 'offer_id': ''}], 'mobile': '8210377691'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}}
[2026-06-13 00:04:22,253.253 INFO    ] 200
[2026-06-13 00:04:22,254.254 INFO    ] {"data":{"order_id":"TM08202203260613000300379","server_status":"order-started","server_response":{"data":{"access_code":"84178639","order_id":"TM08202203260613000300379","bill_amount":"20","invoice_bill":"20","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"2","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","unit_price":20,"skuid":"185993","mrp":"20","qty":1,"sku_total":20,"tray_id":"43","offer_desc":"","offer_id":""}],"mobile":"8210377691"},"msg":"Order Data","status":true,"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:04:22,256.256 INFO    ] {'data': {'order_id': 'TM08202203260613000300379', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'access_code': '84178639', 'order_id': 'TM08202203260613000300379', 'bill_amount': '20', 'invoice_bill': '20', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'skuid': '185993', 'mrp': '20', 'qty': 1, 'offer_desc': '', 'tray_id': '43', 'sku_total': 20, 'offer_id': ''}], 'mobile': '8210377691'}, 'msg': 'Order Data', 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 00:04:22,257.257 INFO    ] 2026-06-13 00:04:22
[2026-06-13 00:04:22,283.283 INFO    ] 200
[2026-06-13 00:04:22,284.284 INFO    ] True
[2026-06-13 00:04:22,370.370 INFO    ] 200
[2026-06-13 00:04:22,371.371 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 00:04:22,373.373 INFO    ] {'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}
[2026-06-13 00:04:22,375.375 INFO    ] *** process_order ***
[2026-06-13 00:04:23,520.520 INFO    ] 200
[2026-06-13 00:04:23,521.521 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:04:23,523.523 INFO    ] {'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait'}
[2026-06-13 00:04:23,524.524 INFO    ] *** process_order ***
[2026-06-13 00:04:23,526.526 INFO    ] publish_status: order_id=TM08202203260613000300379
[2026-06-13 00:04:23,527.527 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613000300379
[2026-06-13 00:04:23,589.589 INFO    ] [publish_status] Message added to stream with ID: 1781289263555-0
[2026-06-13 00:04:23,591.591 INFO    ] Published to order:TM08202203260613000300379: {'order_id': 'TM08202203260613000300379', 'server_status': 'doorOpened', 'server_response': '{"status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open..."}'} (ID: 1781289263555-0)
[2026-06-13 00:04:24,626.626 INFO    ] 2026-06-13 00:04:24
[2026-06-13 00:04:24,630.630 INFO    ] publish_status: order_id=TM08202203260613000300379
[2026-06-13 00:04:24,632.632 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613000300379
[2026-06-13 00:04:24,703.703 INFO    ] [publish_status] Message added to stream with ID: 1781289264669-0
[2026-06-13 00:04:24,706.706 INFO    ] Published to order:TM08202203260613000300379: {'order_id': 'TM08202203260613000300379', 'server_status': 'processOrder', 'timestamp': '2026-06-12T18:34:24.628426Z', 'server_response': '{"status": "True", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait"}'} (ID: 1781289264669-0)
[2026-06-13 00:04:24,804.804 INFO    ] {'order_id': 'TM08202203260613000300379', 'server_status': 'processOrder', 'server_response': {'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait'}}
[2026-06-13 00:04:24,807.807 INFO    ] 200
[2026-06-13 00:04:24,810.810 INFO    ] {"data":{"order_id":"TM08202203260613000300379","server_status":"processOrder","server_response":{"status":"true","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"SectionMain":{"Header":"Processing Order"},"delay":0,"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:04:24,813.813 INFO    ] {'data': {'order_id': 'TM08202203260613000300379', 'server_status': 'processOrder', 'server_response': {'status': 'true', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 00:04:24,816.816 INFO    ] 2026-06-13 00:04:24
[2026-06-13 00:04:24,819.819 INFO    ] None
[2026-06-13 00:04:24,822.822 INFO    ] Opening Door now
[2026-06-13 00:04:24,824.824 INFO    ] Opening Door now
[2026-06-13 00:04:24,827.827 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 00:04:24,829.829 INFO    ] 2026-06-13 00:04:24
[2026-06-13 00:04:24,832.832 INFO    ] playing audio file
[2026-06-13 00:04:24,849.849 INFO    ] 2026-06-13 00:04:24
[2026-06-13 00:04:24,853.853 INFO    ] 2026-06-13 00:04:24
[2026-06-13 00:04:27,907.907 INFO    ] 200
[2026-06-13 00:04:27,910.910 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:04:27,912.912 INFO    ] {'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 00:04:30,982.982 INFO    ] 200
[2026-06-13 00:04:30,985.985 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:04:30,988.988 INFO    ] {'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 00:04:34,029.029 INFO    ] 200
[2026-06-13 00:04:34,031.031 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:04:34,032.032 INFO    ] Please close door 2
[2026-06-13 00:04:34,036.036 INFO    ] Please close door 2
[2026-06-13 00:04:34,038.038 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 00:04:34,040.040 INFO    ] 2026-06-13 00:04:34
[2026-06-13 00:04:34,042.042 INFO    ] playing audio file
[2026-06-13 00:04:34,052.052 INFO    ] 2026-06-13 00:04:34
[2026-06-13 00:04:34,055.055 INFO    ] publish_status: order_id=TM08202203260613000300379
[2026-06-13 00:04:34,057.057 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613000300379
[2026-06-13 00:04:34,123.123 INFO    ] [publish_status] Message added to stream with ID: 1781289274089-0
[2026-06-13 00:04:34,125.125 INFO    ] Published to order:TM08202203260613000300379: {'order_id': 'TM08202203260613000300379', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T18:34:34.054044Z', 'server_response': '{"status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2"}, "voiceNote": "Please close door 2"}'} (ID: 1781289274089-0)
[2026-06-13 00:04:34,463.463 INFO    ] {'order_id': 'TM08202203260613000300379', 'server_status': 'OrderStatus', 'server_response': {'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}}
[2026-06-13 00:04:34,464.464 INFO    ] 200
[2026-06-13 00:04:34,466.466 INFO    ] {"data":{"order_id":"TM08202203260613000300379","server_status":"OrderStatus","server_response":{"status":"false","SectionSKU":{"skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2"},"voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:04:34,468.468 INFO    ] {'data': {'order_id': 'TM08202203260613000300379', 'server_status': 'OrderStatus', 'server_response': {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 00:04:34,470.470 INFO    ] {'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 00:04:37,506.506 INFO    ] 200
[2026-06-13 00:04:37,507.507 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:04:37,509.509 INFO    ] {'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 00:04:37,511.511 INFO    ] 2026-06-13 00:04:37
[2026-06-13 00:04:37,513.513 INFO    ] Order Completed 
[2026-06-13 00:04:37,514.514 INFO    ] Order Completed 
[2026-06-13 00:04:37,516.516 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 00:04:37,518.518 INFO    ] 2026-06-13 00:04:37
[2026-06-13 00:04:37,520.520 INFO    ] playing audio file
[2026-06-13 00:04:37,532.532 INFO    ] 2026-06-13 00:04:37
[2026-06-13 00:04:37,534.534 INFO    ] {'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 00:04:37,536.536 INFO    ] 2026-06-13 00:04:37
[2026-06-13 00:04:38,225.225 INFO    ] 200
[2026-06-13 00:04:38,227.227 INFO    ] {"res": "True", "orderId": "TM08202203260613000300379", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 00:04:38,231.231 INFO    ] {'rstatus': True, 'total_amount': 20.0, 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613000300379', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'mrp': '20'}], 'logic': 'WBL'}
[2026-06-13 00:04:38,237.237 INFO    ] {'rstatus': True, 'total_amount': 20.0, 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613000300379', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'mrp': '20'}], 'logic': 'WBL'}
[2026-06-13 00:04:38,241.241 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,243.243 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,246.246 INFO    ] 20
[2026-06-13 00:04:38,249.249 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,251.251 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,254.254 INFO    ]  Your Bill Amount is 20
[2026-06-13 00:04:38,257.257 INFO    ]  Your Bill Amount is 20
[2026-06-13 00:04:38,260.260 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 00:04:38,263.263 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,265.265 INFO    ] playing audio file
[2026-06-13 00:04:38,286.286 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,290.290 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:38,293.293 INFO    ] publish_status: order_id=TM08202203260613000300379
[2026-06-13 00:04:38,296.296 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613000300379
[2026-06-13 00:04:38,350.350 INFO    ] [publish_status] Message added to stream with ID: 1781289278314-0
[2026-06-13 00:04:38,353.353 INFO    ] Published to order:TM08202203260613000300379: {'order_id': 'TM08202203260613000300379', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T18:34:38.291781Z', 'server_response': '{"rstatus": true, "total_amount": 20.0, "anomaly": 0, "res": "True", "orderId": "TM08202203260613000300379", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "skuid": "185993", "tray_id": "43", "qty": 1, "sku_total": 20.0, "mrp": "20"}], "logic": "WBL"}'} (ID: 1781289278314-0)
[2026-06-13 00:04:38,480.480 INFO    ] {'order_id': 'TM08202203260613000300379', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'total_amount': 20.0, 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613000300379', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'mrp': '20'}], 'logic': 'WBL'}}
[2026-06-13 00:04:38,483.483 INFO    ] 200
[2026-06-13 00:04:38,486.486 INFO    ] {"data":{"order_id":"TM08202203260613000300379","server_status":"invoiceOrder","server_response":{"rstatus":true,"total_amount":20,"anomaly":0,"res":"true","orderId":"TM08202203260613000300379","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","unit_price":"20","skuid":"185993","tray_id":"43","qty":1,"sku_total":20,"mrp":"20"}],"logic":"WBL"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:04:38,489.489 INFO    ] {'data': {'order_id': 'TM08202203260613000300379', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 20, 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'orderId': 'TM08202203260613000300379', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'sku_total': 20, 'mrp': '20'}], 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 00:04:38,492.492 INFO    ] {'data': {'order_id': 'TM08202203260613000300379', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 20, 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'orderId': 'TM08202203260613000300379', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'sku_total': 20, 'mrp': '20'}], 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 00:04:38,495.495 INFO    ] 2026-06-13 00:04:38
[2026-06-13 00:04:40,371.371 INFO    ] 200
[2026-06-13 00:04:40,374.374 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379", "TM08202203260613000300379"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 00:04:40,377.377 INFO    ] 2026-06-13 00:04:40
[2026-06-13 00:04:40,509.509 INFO    ] 200
[2026-06-13 00:04:40,512.512 INFO    ] True
[2026-06-13 00:04:40,515.515 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613000300379
[2026-06-13 00:04:40,519.519 INFO    ] start order file deleted
[2026-06-13 00:04:40,522.522 INFO    ] Checking for system updates...
[2026-06-13 00:04:40,559.559 INFO    ] 200
[2026-06-13 00:04:40,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:40,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:04:40,629.629 INFO    ] No update needed
[2026-06-13 00:04:40,631.631 INFO    ] Checking for camera pi updates...
[2026-06-13 00:04:40,680.680 INFO    ] 200
[2026-06-13 00:04:40,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:40,738.738 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:04:40,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:04:40,796.796 INFO    ] No camera update needed
[2026-06-13 00:04:40,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:04:40,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:04:40,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:04:40,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:04:42,854.854 INFO    ] ================================================
[2026-06-13 00:04:42,870.870 INFO    ] Launching Daemon at Sat Jun 13 00:04:42 IST 2026
[2026-06-13 00:04:42,881.881 INFO    ] ================================================
[2026-06-13 00:04:43,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:04:43
[2026-06-13 00:04:43,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:04:43,653.653 INFO    ] Initializing speech engine...
[2026-06-13 00:04:43,666.666 INFO    ] 2026-06-13 00:04:43
[2026-06-13 00:04:43,870.870 INFO    ] 2026-06-13 00:04:43
[2026-06-13 00:04:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:04:44,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:04:44,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:04:44,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:04:44,268.268 INFO    ] time= 13/06/2026 00:04:44
[2026-06-13 00:04:44,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:04:44,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:04:44,390.390 INFO    ] No existing commands found in stream
[2026-06-13 00:04:49,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:04:49,407.407 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 00:04:51,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:04:51,893.893 INFO    ] Checking for system updates...
[2026-06-13 00:04:51,932.932 INFO    ] 200
[2026-06-13 00:04:51,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:51,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:04:51,990.990 INFO    ] No update needed
[2026-06-13 00:04:51,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 00:04:52,030.030 INFO    ] 200
[2026-06-13 00:04:52,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:04:52,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:04:52,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:04:52,121.121 INFO    ] No camera update needed
[2026-06-13 00:04:52,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:04:52,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:04:52,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:04:52,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:04:54,177.177 INFO    ] ================================================
[2026-06-13 00:04:54,192.192 INFO    ] Launching Daemon at Sat Jun 13 00:04:54 IST 2026
[2026-06-13 00:04:54,203.203 INFO    ] ================================================
[2026-06-13 00:04:54,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:04:54
[2026-06-13 00:04:54,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:04:55,077.077 INFO    ] Initializing speech engine...
[2026-06-13 00:04:55,084.084 INFO    ] 2026-06-13 00:04:55
[2026-06-13 00:04:55,290.290 INFO    ] 2026-06-13 00:04:55
[2026-06-13 00:04:55,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:04:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:04:55,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:04:55,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:04:55,713.713 INFO    ] time= 13/06/2026 00:04:55
[2026-06-13 00:04:55,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:04:55,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:04:55,933.933 INFO    ] No existing commands found in stream
[2026-06-13 00:05:00,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:05:00,947.947 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 00:05:01,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:05:01,334.334 INFO    ] Checking for system updates...
[2026-06-13 00:05:01,355.355 INFO    ] 200
[2026-06-13 00:05:01,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:01,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:01,393.393 INFO    ] No update needed
[2026-06-13 00:05:01,395.395 INFO    ] Checking for camera pi updates...
[2026-06-13 00:05:01,414.414 INFO    ] 200
[2026-06-13 00:05:01,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:01,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:05:01,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:01,484.484 INFO    ] No camera update needed
[2026-06-13 00:05:01,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:05:01,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:05:01,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:05:01,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:05:03,527.527 INFO    ] ================================================
[2026-06-13 00:05:03,542.542 INFO    ] Launching Daemon at Sat Jun 13 00:05:03 IST 2026
[2026-06-13 00:05:03,553.553 INFO    ] ================================================
[2026-06-13 00:05:03,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:05:03
[2026-06-13 00:05:04,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:05:04,401.401 INFO    ] Initializing speech engine...
[2026-06-13 00:05:04,406.406 INFO    ] 2026-06-13 00:05:04
[2026-06-13 00:05:04,614.614 INFO    ] 2026-06-13 00:05:04
[2026-06-13 00:05:04,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:05:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:05:04,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:05:04,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:05:05,015.015 INFO    ] time= 13/06/2026 00:05:04
[2026-06-13 00:05:05,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:05:05,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:05:05,129.129 INFO    ] No existing commands found in stream
[2026-06-13 00:05:10,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:05:10,144.144 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 00:05:16,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:05:16,543.543 INFO    ] Checking for system updates...
[2026-06-13 00:05:16,584.584 INFO    ] 200
[2026-06-13 00:05:16,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:16,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:05:16,644.644 INFO    ] No update needed
[2026-06-13 00:05:16,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 00:05:16,678.678 INFO    ] 200
[2026-06-13 00:05:16,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:16,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:05:16,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:16,744.744 INFO    ] No camera update needed
[2026-06-13 00:05:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:05:16,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:05:16,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:05:16,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:05:18,793.793 INFO    ] ================================================
[2026-06-13 00:05:18,808.808 INFO    ] Launching Daemon at Sat Jun 13 00:05:18 IST 2026
[2026-06-13 00:05:18,819.819 INFO    ] ================================================
[2026-06-13 00:05:19,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:05:19
[2026-06-13 00:05:19,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:05:19,631.631 INFO    ] Initializing speech engine...
[2026-06-13 00:05:19,640.640 INFO    ] 2026-06-13 00:05:19
[2026-06-13 00:05:19,866.866 INFO    ] 2026-06-13 00:05:19
[2026-06-13 00:05:19,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:05:20,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:05:20,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:05:20,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:05:20,315.315 INFO    ] time= 13/06/2026 00:05:20
[2026-06-13 00:05:20,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:05:20,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:05:20,429.429 INFO    ] No existing commands found in stream
[2026-06-13 00:05:25,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:05:25,442.442 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 00:05:27,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:05:27,780.780 INFO    ] Checking for system updates...
[2026-06-13 00:05:27,800.800 INFO    ] 200
[2026-06-13 00:05:27,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:27,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:05:27,833.833 INFO    ] No update needed
[2026-06-13 00:05:27,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 00:05:27,856.856 INFO    ] 200
[2026-06-13 00:05:27,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:27,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:05:27,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:05:27,924.924 INFO    ] No camera update needed
[2026-06-13 00:05:27,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:05:27,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:05:27,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:05:27,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:05:29,971.971 INFO    ] ================================================
[2026-06-13 00:05:29,986.986 INFO    ] Launching Daemon at Sat Jun 13 00:05:29 IST 2026
[2026-06-13 00:05:30,997.997 INFO    ] ================================================
[2026-06-13 00:05:30,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:05:30
[2026-06-13 00:05:30,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:05:30,817.817 INFO    ] Initializing speech engine...
[2026-06-13 00:05:30,820.820 INFO    ] 2026-06-13 00:05:30
[2026-06-13 00:05:31,022.022 INFO    ] 2026-06-13 00:05:31
[2026-06-13 00:05:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:05:31,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:05:31,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:05:31,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:05:31,464.464 INFO    ] time= 13/06/2026 00:05:31
[2026-06-13 00:05:31,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:05:31,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:05:31,614.614 INFO    ] No existing commands found in stream
[2026-06-13 00:05:36,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:05:36,628.628 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 00:05:40,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:05:40,879.879 INFO    ] Checking for system updates...
[2026-06-13 00:05:40,900.900 INFO    ] 200
[2026-06-13 00:05:40,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:40,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:40,933.933 INFO    ] No update needed
[2026-06-13 00:05:40,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 00:05:40,955.955 INFO    ] 200
[2026-06-13 00:05:40,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:40,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:05:41,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:41,120.120 INFO    ] No camera update needed
[2026-06-13 00:05:41,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:05:41,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:05:41,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:05:41,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:05:43,175.175 INFO    ] ================================================
[2026-06-13 00:05:43,190.190 INFO    ] Launching Daemon at Sat Jun 13 00:05:43 IST 2026
[2026-06-13 00:05:43,201.201 INFO    ] ================================================
[2026-06-13 00:05:43,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:05:43
[2026-06-13 00:05:43,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:05:44,055.055 INFO    ] Initializing speech engine...
[2026-06-13 00:05:44,060.060 INFO    ] 2026-06-13 00:05:44
[2026-06-13 00:05:44,266.266 INFO    ] 2026-06-13 00:05:44
[2026-06-13 00:05:44,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:05:44,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:05:44,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:05:44,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:05:44,683.683 INFO    ] time= 13/06/2026 00:05:44
[2026-06-13 00:05:44,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:05:44,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:05:44,784.784 INFO    ] No existing commands found in stream
[2026-06-13 00:05:49,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:05:49,802.802 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 00:05:51,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:05:51,672.672 INFO    ] Checking for system updates...
[2026-06-13 00:05:51,693.693 INFO    ] 200
[2026-06-13 00:05:51,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:51,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:51,726.726 INFO    ] No update needed
[2026-06-13 00:05:51,728.728 INFO    ] Checking for camera pi updates...
[2026-06-13 00:05:51,748.748 INFO    ] 200
[2026-06-13 00:05:51,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:05:51,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:05:51,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:05:51,818.818 INFO    ] No camera update needed
[2026-06-13 00:05:51,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:05:51,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:05:51,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:05:51,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:05:53,866.866 INFO    ] ================================================
[2026-06-13 00:05:53,881.881 INFO    ] Launching Daemon at Sat Jun 13 00:05:53 IST 2026
[2026-06-13 00:05:53,892.892 INFO    ] ================================================
[2026-06-13 00:05:54,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:05:54
[2026-06-13 00:05:54,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:05:54,680.680 INFO    ] Initializing speech engine...
[2026-06-13 00:05:54,688.688 INFO    ] 2026-06-13 00:05:54
[2026-06-13 00:05:54,895.895 INFO    ] 2026-06-13 00:05:54
[2026-06-13 00:05:54,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:05:55,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:05:55,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:05:55,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:05:55,314.314 INFO    ] time= 13/06/2026 00:05:55
[2026-06-13 00:05:55,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:05:55,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:05:55,410.410 INFO    ] No existing commands found in stream
[2026-06-13 00:06:00,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:06:00,422.422 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 00:06:04,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:06:04,663.663 INFO    ] Checking for system updates...
[2026-06-13 00:06:04,683.683 INFO    ] 200
[2026-06-13 00:06:04,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:04,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:04,716.716 INFO    ] No update needed
[2026-06-13 00:06:04,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 00:06:04,737.737 INFO    ] 200
[2026-06-13 00:06:04,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:04,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:06:04,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:04,804.804 INFO    ] No camera update needed
[2026-06-13 00:06:04,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:06:04,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:06:04,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:06:04,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:06:06,851.851 INFO    ] ================================================
[2026-06-13 00:06:06,866.866 INFO    ] Launching Daemon at Sat Jun 13 00:06:06 IST 2026
[2026-06-13 00:06:06,878.878 INFO    ] ================================================
[2026-06-13 00:06:07,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:06:07
[2026-06-13 00:06:07,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:06:07,727.727 INFO    ] Initializing speech engine...
[2026-06-13 00:06:07,732.732 INFO    ] 2026-06-13 00:06:07
[2026-06-13 00:06:07,942.942 INFO    ] 2026-06-13 00:06:07
[2026-06-13 00:06:07,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:06:08,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:06:08,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:06:08,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:06:08,364.364 INFO    ] time= 13/06/2026 00:06:08
[2026-06-13 00:06:08,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:06:08,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:06:08,459.459 INFO    ] No existing commands found in stream
[2026-06-13 00:06:13,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:06:13,474.474 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 00:06:16,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:06:16,420.420 INFO    ] Checking for system updates...
[2026-06-13 00:06:16,441.441 INFO    ] 200
[2026-06-13 00:06:16,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:16,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:16,477.477 INFO    ] No update needed
[2026-06-13 00:06:16,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 00:06:16,501.501 INFO    ] 200
[2026-06-13 00:06:16,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:16,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:06:16,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:16,568.568 INFO    ] No camera update needed
[2026-06-13 00:06:16,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:06:16,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:06:16,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:06:16,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:06:18,617.617 INFO    ] ================================================
[2026-06-13 00:06:18,634.634 INFO    ] Launching Daemon at Sat Jun 13 00:06:18 IST 2026
[2026-06-13 00:06:18,645.645 INFO    ] ================================================
[2026-06-13 00:06:19,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:06:19
[2026-06-13 00:06:19,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:06:19,469.469 INFO    ] Initializing speech engine...
[2026-06-13 00:06:19,474.474 INFO    ] 2026-06-13 00:06:19
[2026-06-13 00:06:19,677.677 INFO    ] 2026-06-13 00:06:19
[2026-06-13 00:06:19,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:06:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:06:19,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:06:20,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:06:20,088.088 INFO    ] time= 13/06/2026 00:06:20
[2026-06-13 00:06:20,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:06:20,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:06:20,201.201 INFO    ] No existing commands found in stream
[2026-06-13 00:06:25,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:06:25,214.214 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 00:06:29,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:06:29,286.286 INFO    ] Checking for system updates...
[2026-06-13 00:06:29,307.307 INFO    ] 200
[2026-06-13 00:06:29,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:29,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:06:29,341.341 INFO    ] No update needed
[2026-06-13 00:06:29,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 00:06:29,362.362 INFO    ] 200
[2026-06-13 00:06:29,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:29,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:06:29,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:29,432.432 INFO    ] No camera update needed
[2026-06-13 00:06:29,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:06:29,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:06:29,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:06:29,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:06:31,474.474 INFO    ] ================================================
[2026-06-13 00:06:31,483.483 INFO    ] Launching Daemon at Sat Jun 13 00:06:31 IST 2026
[2026-06-13 00:06:31,491.491 INFO    ] ================================================
[2026-06-13 00:06:31,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:06:31
[2026-06-13 00:06:32,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:06:32,292.292 INFO    ] Initializing speech engine...
[2026-06-13 00:06:32,295.295 INFO    ] 2026-06-13 00:06:32
[2026-06-13 00:06:32,524.524 INFO    ] 2026-06-13 00:06:32
[2026-06-13 00:06:32,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:06:32,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:06:32,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:06:32,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:06:32,771.771 INFO    ] time= 13/06/2026 00:06:32
[2026-06-13 00:06:32,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:06:32,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:06:32,875.875 INFO    ] No existing commands found in stream
[2026-06-13 00:06:37,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:06:37,912.912 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 00:06:41,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:06:41,767.767 INFO    ] Checking for system updates...
[2026-06-13 00:06:41,788.788 INFO    ] 200
[2026-06-13 00:06:41,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:41,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:41,823.823 INFO    ] No update needed
[2026-06-13 00:06:41,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 00:06:41,846.846 INFO    ] 200
[2026-06-13 00:06:41,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:41,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:06:41,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:41,917.917 INFO    ] No camera update needed
[2026-06-13 00:06:41,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:06:41,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:06:41,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:06:41,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:06:43,965.965 INFO    ] ================================================
[2026-06-13 00:06:43,980.980 INFO    ] Launching Daemon at Sat Jun 13 00:06:43 IST 2026
[2026-06-13 00:06:43,992.992 INFO    ] ================================================
[2026-06-13 00:06:44,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:06:44
[2026-06-13 00:06:44,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:06:44,797.797 INFO    ] Initializing speech engine...
[2026-06-13 00:06:44,801.801 INFO    ] 2026-06-13 00:06:44
[2026-06-13 00:06:44,994.994 INFO    ] 2026-06-13 00:06:44
[2026-06-13 00:06:45,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:06:45,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:06:45,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:06:45,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:06:45,282.282 INFO    ] time= 13/06/2026 00:06:45
[2026-06-13 00:06:45,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:06:45,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:06:45,381.381 INFO    ] No existing commands found in stream
[2026-06-13 00:06:50,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:06:50,419.419 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 00:06:52,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:06:52,119.119 INFO    ] Checking for system updates...
[2026-06-13 00:06:52,140.140 INFO    ] 200
[2026-06-13 00:06:52,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:52,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:52,173.173 INFO    ] No update needed
[2026-06-13 00:06:52,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 00:06:52,194.194 INFO    ] 200
[2026-06-13 00:06:52,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:06:52,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:06:52,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:06:52,263.263 INFO    ] No camera update needed
[2026-06-13 00:06:52,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:06:52,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:06:52,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:06:52,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:06:54,315.315 INFO    ] ================================================
[2026-06-13 00:06:54,331.331 INFO    ] Launching Daemon at Sat Jun 13 00:06:54 IST 2026
[2026-06-13 00:06:54,342.342 INFO    ] ================================================
[2026-06-13 00:06:54,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:06:54
[2026-06-13 00:06:55,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:06:55,199.199 INFO    ] Initializing speech engine...
[2026-06-13 00:06:55,204.204 INFO    ] 2026-06-13 00:06:55
[2026-06-13 00:06:55,412.412 INFO    ] 2026-06-13 00:06:55
[2026-06-13 00:06:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:06:55,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:06:55,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:06:55,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:06:55,851.851 INFO    ] time= 13/06/2026 00:06:55
[2026-06-13 00:06:55,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:06:55,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:06:56,067.067 INFO    ] No existing commands found in stream
[2026-06-13 00:07:01,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:01,101.101 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 00:07:03,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:07:03,270.270 INFO    ] Checking for system updates...
[2026-06-13 00:07:03,308.308 INFO    ] 200
[2026-06-13 00:07:03,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:03,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:03,367.367 INFO    ] No update needed
[2026-06-13 00:07:03,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:03,405.405 INFO    ] 200
[2026-06-13 00:07:03,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:03,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:03,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:03,505.505 INFO    ] No camera update needed
[2026-06-13 00:07:03,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:03,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:03,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:03,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:07:05,565.565 INFO    ] ================================================
[2026-06-13 00:07:05,580.580 INFO    ] Launching Daemon at Sat Jun 13 00:07:05 IST 2026
[2026-06-13 00:07:05,592.592 INFO    ] ================================================
[2026-06-13 00:07:05,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:07:05
[2026-06-13 00:07:06,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:07:06,402.402 INFO    ] Initializing speech engine...
[2026-06-13 00:07:06,406.406 INFO    ] 2026-06-13 00:07:06
[2026-06-13 00:07:06,604.604 INFO    ] 2026-06-13 00:07:06
[2026-06-13 00:07:06,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:07:06,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:07:06,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:07:06,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:07:06,982.982 INFO    ] time= 13/06/2026 00:07:06
[2026-06-13 00:07:06,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:07:07,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:07:07,056.056 INFO    ] No existing commands found in stream
[2026-06-13 00:07:12,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:12,070.070 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 00:07:13,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:07:13,365.365 INFO    ] Checking for system updates...
[2026-06-13 00:07:13,385.385 INFO    ] 200
[2026-06-13 00:07:13,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:13,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:13,418.418 INFO    ] No update needed
[2026-06-13 00:07:13,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:13,439.439 INFO    ] 200
[2026-06-13 00:07:13,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:13,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:13,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:13,502.502 INFO    ] No camera update needed
[2026-06-13 00:07:13,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:13,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:13,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:13,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:07:15,550.550 INFO    ] ================================================
[2026-06-13 00:07:15,566.566 INFO    ] Launching Daemon at Sat Jun 13 00:07:15 IST 2026
[2026-06-13 00:07:15,577.577 INFO    ] ================================================
[2026-06-13 00:07:15,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:07:15
[2026-06-13 00:07:16,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:07:16,377.377 INFO    ] Initializing speech engine...
[2026-06-13 00:07:16,390.390 INFO    ] 2026-06-13 00:07:16
[2026-06-13 00:07:16,609.609 INFO    ] 2026-06-13 00:07:16
[2026-06-13 00:07:16,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:07:16,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:07:16,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:07:16,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:07:16,982.982 INFO    ] time= 13/06/2026 00:07:16
[2026-06-13 00:07:17,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:07:17,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:07:17,162.162 INFO    ] No existing commands found in stream
[2026-06-13 00:07:22,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:22,173.173 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 00:07:26,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:07:26,325.325 INFO    ] Checking for system updates...
[2026-06-13 00:07:26,345.345 INFO    ] 200
[2026-06-13 00:07:26,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:26,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:26,379.379 INFO    ] No update needed
[2026-06-13 00:07:26,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:26,400.400 INFO    ] 200
[2026-06-13 00:07:26,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:26,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:26,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:26,461.461 INFO    ] No camera update needed
[2026-06-13 00:07:26,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:26,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:26,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:26,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:07:28,509.509 INFO    ] ================================================
[2026-06-13 00:07:28,524.524 INFO    ] Launching Daemon at Sat Jun 13 00:07:28 IST 2026
[2026-06-13 00:07:28,535.535 INFO    ] ================================================
[2026-06-13 00:07:28,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:07:28
[2026-06-13 00:07:29,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:07:29,403.403 INFO    ] Initializing speech engine...
[2026-06-13 00:07:29,419.419 INFO    ] 2026-06-13 00:07:29
[2026-06-13 00:07:29,713.713 INFO    ] 2026-06-13 00:07:29
[2026-06-13 00:07:29,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:07:29,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:07:29,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:07:30,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:07:30,075.075 INFO    ] time= 13/06/2026 00:07:30
[2026-06-13 00:07:30,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:07:30,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:07:30,153.153 INFO    ] No existing commands found in stream
[2026-06-13 00:07:35,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:35,163.163 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 00:07:36,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:07:36,867.867 INFO    ] Checking for system updates...
[2026-06-13 00:07:36,888.888 INFO    ] 200
[2026-06-13 00:07:36,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:36,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:36,921.921 INFO    ] No update needed
[2026-06-13 00:07:36,922.922 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:36,941.941 INFO    ] 200
[2026-06-13 00:07:36,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:36,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:37,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:07:37,011.011 INFO    ] No camera update needed
[2026-06-13 00:07:37,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:37,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:37,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:37,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:07:39,057.057 INFO    ] ================================================
[2026-06-13 00:07:39,073.073 INFO    ] Launching Daemon at Sat Jun 13 00:07:39 IST 2026
[2026-06-13 00:07:39,085.085 INFO    ] ================================================
[2026-06-13 00:07:39,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:07:39
[2026-06-13 00:07:39,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:07:39,884.884 INFO    ] Initializing speech engine...
[2026-06-13 00:07:39,894.894 INFO    ] 2026-06-13 00:07:39
[2026-06-13 00:07:40,083.083 INFO    ] 2026-06-13 00:07:40
[2026-06-13 00:07:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:07:40,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:07:40,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:07:40,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:07:40,375.375 INFO    ] time= 13/06/2026 00:07:40
[2026-06-13 00:07:40,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:07:40,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:07:40,465.465 INFO    ] No existing commands found in stream
[2026-06-13 00:07:45,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:45,501.501 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 00:07:46,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:07:46,136.136 INFO    ] Checking for system updates...
[2026-06-13 00:07:46,157.157 INFO    ] 200
[2026-06-13 00:07:46,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:46,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:46,190.190 INFO    ] No update needed
[2026-06-13 00:07:46,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:46,211.211 INFO    ] 200
[2026-06-13 00:07:46,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:46,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:46,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:46,391.391 INFO    ] No camera update needed
[2026-06-13 00:07:46,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:46,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:46,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:07:48,439.439 INFO    ] ================================================
[2026-06-13 00:07:48,455.455 INFO    ] Launching Daemon at Sat Jun 13 00:07:48 IST 2026
[2026-06-13 00:07:48,467.467 INFO    ] ================================================
[2026-06-13 00:07:48,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:07:48
[2026-06-13 00:07:49,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:07:49,283.283 INFO    ] Initializing speech engine...
[2026-06-13 00:07:49,294.294 INFO    ] 2026-06-13 00:07:49
[2026-06-13 00:07:49,501.501 INFO    ] 2026-06-13 00:07:49
[2026-06-13 00:07:49,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:07:49,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:07:49,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:07:49,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:07:49,907.907 INFO    ] time= 13/06/2026 00:07:49
[2026-06-13 00:07:49,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:07:49,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:07:50,024.024 INFO    ] No existing commands found in stream
[2026-06-13 00:07:55,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:07:55,037.037 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 00:07:57,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:07:57,902.902 INFO    ] Checking for system updates...
[2026-06-13 00:07:57,923.923 INFO    ] 200
[2026-06-13 00:07:57,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:57,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:57,961.961 INFO    ] No update needed
[2026-06-13 00:07:57,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 00:07:57,982.982 INFO    ] 200
[2026-06-13 00:07:57,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:07:58,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:07:58,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:07:58,049.049 INFO    ] No camera update needed
[2026-06-13 00:07:58,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:07:58,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:07:58,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:07:58,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:00,099.099 INFO    ] ================================================
[2026-06-13 00:08:00,115.115 INFO    ] Launching Daemon at Sat Jun 13 00:08:00 IST 2026
[2026-06-13 00:08:00,127.127 INFO    ] ================================================
[2026-06-13 00:08:00,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:00
[2026-06-13 00:08:00,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:00,944.944 INFO    ] Initializing speech engine...
[2026-06-13 00:08:00,950.950 INFO    ] 2026-06-13 00:08:00
[2026-06-13 00:08:01,136.136 INFO    ] 2026-06-13 00:08:01
[2026-06-13 00:08:01,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:01,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:01,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:01,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:01,510.510 INFO    ] time= 13/06/2026 00:08:01
[2026-06-13 00:08:01,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:01,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:01,655.655 INFO    ] No existing commands found in stream
[2026-06-13 00:08:06,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:08:06,688.688 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 00:08:07,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:08:07,141.141 INFO    ] Checking for system updates...
[2026-06-13 00:08:07,177.177 INFO    ] 200
[2026-06-13 00:08:07,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:07,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:08:07,235.235 INFO    ] No update needed
[2026-06-13 00:08:07,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 00:08:07,276.276 INFO    ] 200
[2026-06-13 00:08:07,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:07,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:08:07,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:08:07,368.368 INFO    ] No camera update needed
[2026-06-13 00:08:07,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:08:07,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:08:07,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:08:07,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:09,425.425 INFO    ] ================================================
[2026-06-13 00:08:09,441.441 INFO    ] Launching Daemon at Sat Jun 13 00:08:09 IST 2026
[2026-06-13 00:08:09,451.451 INFO    ] ================================================
[2026-06-13 00:08:09,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:09
[2026-06-13 00:08:10,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:10,260.260 INFO    ] Initializing speech engine...
[2026-06-13 00:08:10,265.265 INFO    ] 2026-06-13 00:08:10
[2026-06-13 00:08:10,470.470 INFO    ] 2026-06-13 00:08:10
[2026-06-13 00:08:10,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:10,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:10,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:10,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:10,819.819 INFO    ] time= 13/06/2026 00:08:10
[2026-06-13 00:08:10,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:10,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:10,987.987 INFO    ] No existing commands found in stream
[2026-06-13 00:08:15,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:08:16,000.000 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 00:08:19,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:08:19,557.557 INFO    ] Checking for system updates...
[2026-06-13 00:08:19,578.578 INFO    ] 200
[2026-06-13 00:08:19,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:19,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:19,612.612 INFO    ] No update needed
[2026-06-13 00:08:19,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 00:08:19,633.633 INFO    ] 200
[2026-06-13 00:08:19,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:19,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:08:19,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:19,702.702 INFO    ] No camera update needed
[2026-06-13 00:08:19,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:08:19,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:08:19,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:08:19,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:21,751.751 INFO    ] ================================================
[2026-06-13 00:08:21,771.771 INFO    ] Launching Daemon at Sat Jun 13 00:08:21 IST 2026
[2026-06-13 00:08:21,782.782 INFO    ] ================================================
[2026-06-13 00:08:22,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:22
[2026-06-13 00:08:22,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:22,604.604 INFO    ] Initializing speech engine...
[2026-06-13 00:08:22,609.609 INFO    ] 2026-06-13 00:08:22
[2026-06-13 00:08:22,813.813 INFO    ] 2026-06-13 00:08:22
[2026-06-13 00:08:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:23,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:23,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:23,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:23,220.220 INFO    ] time= 13/06/2026 00:08:23
[2026-06-13 00:08:23,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:23,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:23,329.329 INFO    ] No existing commands found in stream
[2026-06-13 00:08:28,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:08:28,343.343 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 00:08:30,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:08:30,757.757 INFO    ] Checking for system updates...
[2026-06-13 00:08:30,797.797 INFO    ] 200
[2026-06-13 00:08:30,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:30,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:30,856.856 INFO    ] No update needed
[2026-06-13 00:08:30,858.858 INFO    ] Checking for camera pi updates...
[2026-06-13 00:08:30,893.893 INFO    ] 200
[2026-06-13 00:08:30,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:30,924.924 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:08:30,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:30,966.966 INFO    ] No camera update needed
[2026-06-13 00:08:30,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:08:30,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:08:30,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:08:30,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:33,007.007 INFO    ] ================================================
[2026-06-13 00:08:33,023.023 INFO    ] Launching Daemon at Sat Jun 13 00:08:33 IST 2026
[2026-06-13 00:08:33,034.034 INFO    ] ================================================
[2026-06-13 00:08:33,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:33
[2026-06-13 00:08:33,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:33,839.839 INFO    ] Initializing speech engine...
[2026-06-13 00:08:33,844.844 INFO    ] 2026-06-13 00:08:33
[2026-06-13 00:08:34,047.047 INFO    ] 2026-06-13 00:08:34
[2026-06-13 00:08:34,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:34,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:34,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:34,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:34,457.457 INFO    ] time= 13/06/2026 00:08:34
[2026-06-13 00:08:34,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:34,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:34,563.563 INFO    ] No existing commands found in stream
[2026-06-13 00:08:39,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:08:39,574.574 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 00:08:41,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:08:41,752.752 INFO    ] Checking for system updates...
[2026-06-13 00:08:41,772.772 INFO    ] 200
[2026-06-13 00:08:41,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:41,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:41,808.808 INFO    ] No update needed
[2026-06-13 00:08:41,809.809 INFO    ] Checking for camera pi updates...
[2026-06-13 00:08:41,830.830 INFO    ] 200
[2026-06-13 00:08:41,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:41,855.855 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:08:41,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:41,892.892 INFO    ] No camera update needed
[2026-06-13 00:08:41,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:08:41,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:08:41,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:08:41,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:43,941.941 INFO    ] ================================================
[2026-06-13 00:08:43,956.956 INFO    ] Launching Daemon at Sat Jun 13 00:08:43 IST 2026
[2026-06-13 00:08:43,967.967 INFO    ] ================================================
[2026-06-13 00:08:44,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:44
[2026-06-13 00:08:45,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:45,545.545 INFO    ] Initializing speech engine...
[2026-06-13 00:08:45,551.551 INFO    ] 2026-06-13 00:08:45
[2026-06-13 00:08:45,761.761 INFO    ] 2026-06-13 00:08:45
[2026-06-13 00:08:45,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:45,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:45,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:46,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:46,191.191 INFO    ] time= 13/06/2026 00:08:46
[2026-06-13 00:08:46,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:46,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:46,287.287 INFO    ] No existing commands found in stream
[2026-06-13 00:08:51,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:08:51,302.302 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 00:08:55,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:08:55,037.037 INFO    ] Checking for system updates...
[2026-06-13 00:08:55,059.059 INFO    ] 200
[2026-06-13 00:08:55,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:55,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:08:55,095.095 INFO    ] No update needed
[2026-06-13 00:08:55,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 00:08:55,118.118 INFO    ] 200
[2026-06-13 00:08:55,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:08:55,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:08:55,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:08:55,186.186 INFO    ] No camera update needed
[2026-06-13 00:08:55,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:08:55,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:08:55,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:08:55,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:08:57,227.227 INFO    ] ================================================
[2026-06-13 00:08:57,236.236 INFO    ] Launching Daemon at Sat Jun 13 00:08:57 IST 2026
[2026-06-13 00:08:57,243.243 INFO    ] ================================================
[2026-06-13 00:08:57,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:08:57
[2026-06-13 00:08:57,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:08:58,096.096 INFO    ] Initializing speech engine...
[2026-06-13 00:08:58,106.106 INFO    ] 2026-06-13 00:08:58
[2026-06-13 00:08:58,325.325 INFO    ] 2026-06-13 00:08:58
[2026-06-13 00:08:58,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:08:58,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:08:58,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:08:58,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:08:58,750.750 INFO    ] time= 13/06/2026 00:08:58
[2026-06-13 00:08:58,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:08:58,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:08:58,891.891 INFO    ] No existing commands found in stream
[2026-06-13 00:09:03,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:03,903.903 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 00:09:05,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:09:05,445.445 INFO    ] Checking for system updates...
[2026-06-13 00:09:05,465.465 INFO    ] 200
[2026-06-13 00:09:05,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:05,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:05,499.499 INFO    ] No update needed
[2026-06-13 00:09:05,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 00:09:05,520.520 INFO    ] 200
[2026-06-13 00:09:05,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:05,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:09:05,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:05,586.586 INFO    ] No camera update needed
[2026-06-13 00:09:05,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:09:05,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:09:05,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:09:05,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:09:07,633.633 INFO    ] ================================================
[2026-06-13 00:09:07,648.648 INFO    ] Launching Daemon at Sat Jun 13 00:09:07 IST 2026
[2026-06-13 00:09:07,659.659 INFO    ] ================================================
[2026-06-13 00:09:07,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:09:07
[2026-06-13 00:09:08,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:09:08,440.440 INFO    ] Initializing speech engine...
[2026-06-13 00:09:08,454.454 INFO    ] 2026-06-13 00:09:08
[2026-06-13 00:09:08,673.673 INFO    ] 2026-06-13 00:09:08
[2026-06-13 00:09:08,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:09:08,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:09:08,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:09:09,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:09:09,096.096 INFO    ] time= 13/06/2026 00:09:09
[2026-06-13 00:09:09,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:09:09,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:09:09,228.228 INFO    ] No existing commands found in stream
[2026-06-13 00:09:14,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:14,241.241 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 00:09:15,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:09:15,957.957 INFO    ] Checking for system updates...
[2026-06-13 00:09:15,979.979 INFO    ] 200
[2026-06-13 00:09:15,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:16,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:16,016.016 INFO    ] No update needed
[2026-06-13 00:09:16,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 00:09:16,039.039 INFO    ] 200
[2026-06-13 00:09:16,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:16,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:09:16,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:16,107.107 INFO    ] No camera update needed
[2026-06-13 00:09:16,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:09:16,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:09:16,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:09:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:09:18,159.159 INFO    ] ================================================
[2026-06-13 00:09:18,174.174 INFO    ] Launching Daemon at Sat Jun 13 00:09:18 IST 2026
[2026-06-13 00:09:18,185.185 INFO    ] ================================================
[2026-06-13 00:09:18,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:09:18
[2026-06-13 00:09:18,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:09:18,970.970 INFO    ] Initializing speech engine...
[2026-06-13 00:09:18,975.975 INFO    ] 2026-06-13 00:09:18
[2026-06-13 00:09:19,185.185 INFO    ] 2026-06-13 00:09:19
[2026-06-13 00:09:19,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:09:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:09:19,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:09:19,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:09:19,609.609 INFO    ] time= 13/06/2026 00:09:19
[2026-06-13 00:09:19,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:09:19,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:09:19,740.740 INFO    ] No existing commands found in stream
[2026-06-13 00:09:24,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:24,753.753 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 00:09:26,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:09:26,547.547 INFO    ] Checking for system updates...
[2026-06-13 00:09:26,568.568 INFO    ] 200
[2026-06-13 00:09:26,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:26,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:26,604.604 INFO    ] No update needed
[2026-06-13 00:09:26,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 00:09:26,626.626 INFO    ] 200
[2026-06-13 00:09:26,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:26,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:09:26,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:26,691.691 INFO    ] No camera update needed
[2026-06-13 00:09:26,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:09:26,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:09:26,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:09:26,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:09:28,738.738 INFO    ] ================================================
[2026-06-13 00:09:28,754.754 INFO    ] Launching Daemon at Sat Jun 13 00:09:28 IST 2026
[2026-06-13 00:09:28,765.765 INFO    ] ================================================
[2026-06-13 00:09:29,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:09:29
[2026-06-13 00:09:29,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:09:29,539.539 INFO    ] Initializing speech engine...
[2026-06-13 00:09:29,549.549 INFO    ] 2026-06-13 00:09:29
[2026-06-13 00:09:29,755.755 INFO    ] 2026-06-13 00:09:29
[2026-06-13 00:09:29,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:09:29,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:09:29,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:09:30,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:09:30,159.159 INFO    ] time= 13/06/2026 00:09:30
[2026-06-13 00:09:30,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:09:30,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:09:30,276.276 INFO    ] No existing commands found in stream
[2026-06-13 00:09:35,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:35,289.289 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 00:09:39,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:09:39,398.398 INFO    ] Checking for system updates...
[2026-06-13 00:09:39,420.420 INFO    ] 200
[2026-06-13 00:09:39,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:39,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:09:39,453.453 INFO    ] No update needed
[2026-06-13 00:09:39,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 00:09:39,474.474 INFO    ] 200
[2026-06-13 00:09:39,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:39,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:09:39,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:09:39,539.539 INFO    ] No camera update needed
[2026-06-13 00:09:39,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:09:39,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:09:39,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:09:39,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:09:41,586.586 INFO    ] ================================================
[2026-06-13 00:09:41,601.601 INFO    ] Launching Daemon at Sat Jun 13 00:09:41 IST 2026
[2026-06-13 00:09:41,612.612 INFO    ] ================================================
[2026-06-13 00:09:41,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:09:41
[2026-06-13 00:09:42,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:09:42,387.387 INFO    ] Initializing speech engine...
[2026-06-13 00:09:42,400.400 INFO    ] 2026-06-13 00:09:42
[2026-06-13 00:09:42,605.605 INFO    ] 2026-06-13 00:09:42
[2026-06-13 00:09:42,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:09:42,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:09:42,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:09:42,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:09:43,017.017 INFO    ] time= 13/06/2026 00:09:42
[2026-06-13 00:09:43,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:09:43,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:09:43,117.117 INFO    ] No existing commands found in stream
[2026-06-13 00:09:48,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:48,128.128 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 00:09:50,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:09:50,900.900 INFO    ] Checking for system updates...
[2026-06-13 00:09:50,923.923 INFO    ] 200
[2026-06-13 00:09:50,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:50,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:09:50,956.956 INFO    ] No update needed
[2026-06-13 00:09:50,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 00:09:50,976.976 INFO    ] 200
[2026-06-13 00:09:50,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:09:51,003.003 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:09:51,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:09:51,142.142 INFO    ] No camera update needed
[2026-06-13 00:09:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:09:51,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:09:51,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:09:51,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:09:53,189.189 INFO    ] ================================================
[2026-06-13 00:09:53,205.205 INFO    ] Launching Daemon at Sat Jun 13 00:09:53 IST 2026
[2026-06-13 00:09:53,216.216 INFO    ] ================================================
[2026-06-13 00:09:53,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:09:53
[2026-06-13 00:09:53,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:09:53,999.999 INFO    ] Initializing speech engine...
[2026-06-13 00:09:54,005.005 INFO    ] 2026-06-13 00:09:54
[2026-06-13 00:09:54,206.206 INFO    ] 2026-06-13 00:09:54
[2026-06-13 00:09:54,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:09:54,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:09:54,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:09:54,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:09:54,608.608 INFO    ] time= 13/06/2026 00:09:54
[2026-06-13 00:09:54,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:09:54,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:09:54,722.722 INFO    ] No existing commands found in stream
[2026-06-13 00:09:59,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:09:59,735.735 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 00:10:02,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:10:02,267.267 INFO    ] Checking for system updates...
[2026-06-13 00:10:02,349.349 INFO    ] 200
[2026-06-13 00:10:02,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:02,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:10:02,429.429 INFO    ] No update needed
[2026-06-13 00:10:02,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 00:10:02,483.483 INFO    ] 200
[2026-06-13 00:10:02,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:02,529.529 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:10:02,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:10:02,616.616 INFO    ] No camera update needed
[2026-06-13 00:10:02,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:10:02,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:10:02,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:10:02,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:10:04,658.658 INFO    ] ================================================
[2026-06-13 00:10:04,666.666 INFO    ] Launching Daemon at Sat Jun 13 00:10:04 IST 2026
[2026-06-13 00:10:04,672.672 INFO    ] ================================================
[2026-06-13 00:10:05,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:10:05
[2026-06-13 00:10:05,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:10:05,471.471 INFO    ] Initializing speech engine...
[2026-06-13 00:10:05,476.476 INFO    ] 2026-06-13 00:10:05
[2026-06-13 00:10:05,707.707 INFO    ] 2026-06-13 00:10:05
[2026-06-13 00:10:05,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:10:05,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:10:05,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:10:06,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:10:06,089.089 INFO    ] time= 13/06/2026 00:10:06
[2026-06-13 00:10:06,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:10:06,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:10:06,282.282 INFO    ] No existing commands found in stream
[2026-06-13 00:10:11,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:10:11,294.294 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 00:10:13,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:10:13,743.743 INFO    ] Checking for system updates...
[2026-06-13 00:10:13,763.763 INFO    ] 200
[2026-06-13 00:10:13,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:13,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:13,799.799 INFO    ] No update needed
[2026-06-13 00:10:13,800.800 INFO    ] Checking for camera pi updates...
[2026-06-13 00:10:13,821.821 INFO    ] 200
[2026-06-13 00:10:13,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:13,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:10:13,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:13,889.889 INFO    ] No camera update needed
[2026-06-13 00:10:13,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:10:13,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:10:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:10:13,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:10:15,936.936 INFO    ] ================================================
[2026-06-13 00:10:15,951.951 INFO    ] Launching Daemon at Sat Jun 13 00:10:15 IST 2026
[2026-06-13 00:10:15,962.962 INFO    ] ================================================
[2026-06-13 00:10:16,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:10:16
[2026-06-13 00:10:16,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:10:16,773.773 INFO    ] Initializing speech engine...
[2026-06-13 00:10:16,778.778 INFO    ] 2026-06-13 00:10:16
[2026-06-13 00:10:16,982.982 INFO    ] 2026-06-13 00:10:16
[2026-06-13 00:10:17,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:10:17,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:10:17,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:10:17,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:10:17,387.387 INFO    ] time= 13/06/2026 00:10:17
[2026-06-13 00:10:17,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:10:17,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:10:17,497.497 INFO    ] No existing commands found in stream
[2026-06-13 00:10:22,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:10:22,511.511 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 00:10:24,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:10:24,465.465 INFO    ] Checking for system updates...
[2026-06-13 00:10:24,486.486 INFO    ] 200
[2026-06-13 00:10:24,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:24,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:10:24,522.522 INFO    ] No update needed
[2026-06-13 00:10:24,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 00:10:24,543.543 INFO    ] 200
[2026-06-13 00:10:24,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:24,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:10:24,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:10:24,609.609 INFO    ] No camera update needed
[2026-06-13 00:10:24,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:10:24,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:10:24,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:10:24,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:10:26,657.657 INFO    ] ================================================
[2026-06-13 00:10:26,672.672 INFO    ] Launching Daemon at Sat Jun 13 00:10:26 IST 2026
[2026-06-13 00:10:26,682.682 INFO    ] ================================================
[2026-06-13 00:10:27,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:10:27
[2026-06-13 00:10:27,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:10:27,494.494 INFO    ] Initializing speech engine...
[2026-06-13 00:10:27,506.506 INFO    ] 2026-06-13 00:10:27
[2026-06-13 00:10:27,715.715 INFO    ] 2026-06-13 00:10:27
[2026-06-13 00:10:27,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:10:27,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:10:27,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:10:28,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:10:28,121.121 INFO    ] time= 13/06/2026 00:10:28
[2026-06-13 00:10:28,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:10:28,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:10:28,231.231 INFO    ] No existing commands found in stream
[2026-06-13 00:10:33,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:10:33,243.243 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 00:10:36,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:10:36,393.393 INFO    ] Checking for system updates...
[2026-06-13 00:10:36,415.415 INFO    ] 200
[2026-06-13 00:10:36,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:36,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:36,450.450 INFO    ] No update needed
[2026-06-13 00:10:36,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 00:10:36,470.470 INFO    ] 200
[2026-06-13 00:10:36,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:36,500.500 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:10:36,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:36,540.540 INFO    ] No camera update needed
[2026-06-13 00:10:36,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:10:36,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:10:36,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:10:36,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:10:38,587.587 INFO    ] ================================================
[2026-06-13 00:10:38,602.602 INFO    ] Launching Daemon at Sat Jun 13 00:10:38 IST 2026
[2026-06-13 00:10:38,614.614 INFO    ] ================================================
[2026-06-13 00:10:38,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:10:38
[2026-06-13 00:10:39,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:10:39,394.394 INFO    ] Initializing speech engine...
[2026-06-13 00:10:39,402.402 INFO    ] 2026-06-13 00:10:39
[2026-06-13 00:10:39,620.620 INFO    ] 2026-06-13 00:10:39
[2026-06-13 00:10:39,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:10:39,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:10:39,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:10:39,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:10:40,026.026 INFO    ] time= 13/06/2026 00:10:39
[2026-06-13 00:10:40,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:10:40,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:10:40,181.181 INFO    ] No existing commands found in stream
[2026-06-13 00:10:45,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:10:45,195.195 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 00:10:48,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:10:48,842.842 INFO    ] Checking for system updates...
[2026-06-13 00:10:48,863.863 INFO    ] 200
[2026-06-13 00:10:48,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:48,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:48,896.896 INFO    ] No update needed
[2026-06-13 00:10:48,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 00:10:48,918.918 INFO    ] 200
[2026-06-13 00:10:48,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:10:48,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:10:48,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:10:48,992.992 INFO    ] No camera update needed
[2026-06-13 00:10:48,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:10:48,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:10:48,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:10:49,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:10:51,039.039 INFO    ] ================================================
[2026-06-13 00:10:51,060.060 INFO    ] Launching Daemon at Sat Jun 13 00:10:51 IST 2026
[2026-06-13 00:10:51,070.070 INFO    ] ================================================
[2026-06-13 00:10:51,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:10:51
[2026-06-13 00:10:52,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:10:52,391.391 INFO    ] Initializing speech engine...
[2026-06-13 00:10:52,401.401 INFO    ] 2026-06-13 00:10:52
[2026-06-13 00:10:52,653.653 INFO    ] 2026-06-13 00:10:52
[2026-06-13 00:10:52,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:10:52,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:10:52,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:10:52,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:10:53,009.009 INFO    ] time= 13/06/2026 00:10:52
[2026-06-13 00:10:53,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:10:53,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:10:53,106.106 INFO    ] No existing commands found in stream
[2026-06-13 00:10:58,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:10:58,120.120 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 00:11:00,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:11:00,659.659 INFO    ] Checking for system updates...
[2026-06-13 00:11:00,681.681 INFO    ] 200
[2026-06-13 00:11:00,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:00,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:11:00,717.717 INFO    ] No update needed
[2026-06-13 00:11:00,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 00:11:00,739.739 INFO    ] 200
[2026-06-13 00:11:00,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:00,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:11:00,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:11:00,799.799 INFO    ] No camera update needed
[2026-06-13 00:11:00,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:11:00,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:11:00,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:11:00,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:11:02,841.841 INFO    ] ================================================
[2026-06-13 00:11:02,857.857 INFO    ] Launching Daemon at Sat Jun 13 00:11:02 IST 2026
[2026-06-13 00:11:02,868.868 INFO    ] ================================================
[2026-06-13 00:11:03,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:11:03
[2026-06-13 00:11:03,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:11:03,679.679 INFO    ] Initializing speech engine...
[2026-06-13 00:11:03,684.684 INFO    ] 2026-06-13 00:11:03
[2026-06-13 00:11:03,875.875 INFO    ] 2026-06-13 00:11:03
[2026-06-13 00:11:03,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:11:04,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:11:04,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:11:04,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:11:04,179.179 INFO    ] time= 13/06/2026 00:11:04
[2026-06-13 00:11:04,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:11:04,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:11:04,296.296 INFO    ] No existing commands found in stream
[2026-06-13 00:11:09,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:11:09,313.313 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 00:11:12,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:11:12,005.005 INFO    ] Checking for system updates...
[2026-06-13 00:11:12,027.027 INFO    ] 200
[2026-06-13 00:11:12,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:12,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:11:12,063.063 INFO    ] No update needed
[2026-06-13 00:11:12,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 00:11:12,084.084 INFO    ] 200
[2026-06-13 00:11:12,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:12,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:11:12,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:11:12,134.134 INFO    ] No camera update needed
[2026-06-13 00:11:12,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:11:12,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:11:12,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:11:12,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:11:14,180.180 INFO    ] ================================================
[2026-06-13 00:11:14,195.195 INFO    ] Launching Daemon at Sat Jun 13 00:11:14 IST 2026
[2026-06-13 00:11:14,206.206 INFO    ] ================================================
[2026-06-13 00:11:14,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:11:14
[2026-06-13 00:11:14,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:11:15,055.055 INFO    ] Initializing speech engine...
[2026-06-13 00:11:15,061.061 INFO    ] 2026-06-13 00:11:15
[2026-06-13 00:11:15,269.269 INFO    ] 2026-06-13 00:11:15
[2026-06-13 00:11:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:11:15,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:11:15,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:11:15,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:11:15,689.689 INFO    ] time= 13/06/2026 00:11:15
[2026-06-13 00:11:15,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:11:15,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:11:15,786.786 INFO    ] No existing commands found in stream
[2026-06-13 00:11:20,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:11:20,795.795 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 00:11:23,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:11:23,930.930 INFO    ] Checking for system updates...
[2026-06-13 00:11:23,952.952 INFO    ] 200
[2026-06-13 00:11:23,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:23,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:23,986.986 INFO    ] No update needed
[2026-06-13 00:11:23,987.987 INFO    ] Checking for camera pi updates...
[2026-06-13 00:11:24,008.008 INFO    ] 200
[2026-06-13 00:11:24,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:24,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:11:24,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:24,074.074 INFO    ] No camera update needed
[2026-06-13 00:11:24,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:11:24,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:11:24,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:11:24,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:11:26,122.122 INFO    ] ================================================
[2026-06-13 00:11:26,137.137 INFO    ] Launching Daemon at Sat Jun 13 00:11:26 IST 2026
[2026-06-13 00:11:26,147.147 INFO    ] ================================================
[2026-06-13 00:11:26,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:11:26
[2026-06-13 00:11:26,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:11:26,936.936 INFO    ] Initializing speech engine...
[2026-06-13 00:11:26,941.941 INFO    ] 2026-06-13 00:11:26
[2026-06-13 00:11:27,146.146 INFO    ] 2026-06-13 00:11:27
[2026-06-13 00:11:27,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:11:27,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:11:27,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:11:27,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:11:27,570.570 INFO    ] time= 13/06/2026 00:11:27
[2026-06-13 00:11:27,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:11:27,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:11:27,669.669 INFO    ] No existing commands found in stream
[2026-06-13 00:11:32,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:11:32,680.680 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 00:11:35,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:11:35,354.354 INFO    ] Checking for system updates...
[2026-06-13 00:11:35,376.376 INFO    ] 200
[2026-06-13 00:11:35,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:35,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:35,412.412 INFO    ] No update needed
[2026-06-13 00:11:35,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 00:11:35,435.435 INFO    ] 200
[2026-06-13 00:11:35,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:35,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:11:35,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:35,502.502 INFO    ] No camera update needed
[2026-06-13 00:11:35,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:11:35,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:11:35,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:11:35,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:11:37,551.551 INFO    ] ================================================
[2026-06-13 00:11:37,566.566 INFO    ] Launching Daemon at Sat Jun 13 00:11:37 IST 2026
[2026-06-13 00:11:37,576.576 INFO    ] ================================================
[2026-06-13 00:11:37,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:11:37
[2026-06-13 00:11:38,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:11:38,430.430 INFO    ] Initializing speech engine...
[2026-06-13 00:11:38,435.435 INFO    ] 2026-06-13 00:11:38
[2026-06-13 00:11:38,646.646 INFO    ] 2026-06-13 00:11:38
[2026-06-13 00:11:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:11:38,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:11:38,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:11:39,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:11:39,067.067 INFO    ] time= 13/06/2026 00:11:39
[2026-06-13 00:11:39,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:11:39,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:11:39,168.168 INFO    ] No existing commands found in stream
[2026-06-13 00:11:44,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:11:44,182.182 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 00:11:47,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:11:47,229.229 INFO    ] Checking for system updates...
[2026-06-13 00:11:47,250.250 INFO    ] 200
[2026-06-13 00:11:47,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:47,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:47,287.287 INFO    ] No update needed
[2026-06-13 00:11:47,288.288 INFO    ] Checking for camera pi updates...
[2026-06-13 00:11:47,309.309 INFO    ] 200
[2026-06-13 00:11:47,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:11:47,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:11:47,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:11:47,377.377 INFO    ] No camera update needed
[2026-06-13 00:11:47,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:11:47,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:11:47,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:11:47,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:11:49,426.426 INFO    ] ================================================
[2026-06-13 00:11:49,442.442 INFO    ] Launching Daemon at Sat Jun 13 00:11:49 IST 2026
[2026-06-13 00:11:49,453.453 INFO    ] ================================================
[2026-06-13 00:11:50,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:11:50
[2026-06-13 00:11:50,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:11:50,785.785 INFO    ] Initializing speech engine...
[2026-06-13 00:11:50,789.789 INFO    ] 2026-06-13 00:11:50
[2026-06-13 00:11:50,998.998 INFO    ] 2026-06-13 00:11:50
[2026-06-13 00:11:51,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:11:51,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:11:51,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:11:51,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:11:51,424.424 INFO    ] time= 13/06/2026 00:11:51
[2026-06-13 00:11:51,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:11:51,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:11:51,521.521 INFO    ] No existing commands found in stream
[2026-06-13 00:11:56,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:11:56,535.535 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 00:12:00,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:12:00,639.639 INFO    ] Checking for system updates...
[2026-06-13 00:12:00,662.662 INFO    ] 200
[2026-06-13 00:12:00,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:00,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:00,696.696 INFO    ] No update needed
[2026-06-13 00:12:00,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:00,717.717 INFO    ] 200
[2026-06-13 00:12:00,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:00,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:00,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:00,882.882 INFO    ] No camera update needed
[2026-06-13 00:12:00,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:00,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:00,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:00,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:12:02,915.915 INFO    ] ================================================
[2026-06-13 00:12:02,923.923 INFO    ] Launching Daemon at Sat Jun 13 00:12:02 IST 2026
[2026-06-13 00:12:02,929.929 INFO    ] ================================================
[2026-06-13 00:12:03,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:12:03
[2026-06-13 00:12:03,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:12:03,723.723 INFO    ] Initializing speech engine...
[2026-06-13 00:12:03,730.730 INFO    ] 2026-06-13 00:12:03
[2026-06-13 00:12:03,944.944 INFO    ] 2026-06-13 00:12:03
[2026-06-13 00:12:03,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:12:04,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:12:04,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:12:04,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:12:04,382.382 INFO    ] time= 13/06/2026 00:12:04
[2026-06-13 00:12:04,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:12:04,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:12:04,542.542 INFO    ] No existing commands found in stream
[2026-06-13 00:12:09,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:12:09,554.554 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 00:12:12,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:12:12,532.532 INFO    ] Checking for system updates...
[2026-06-13 00:12:12,554.554 INFO    ] 200
[2026-06-13 00:12:12,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:12,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:12,590.590 INFO    ] No update needed
[2026-06-13 00:12:12,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:12,611.611 INFO    ] 200
[2026-06-13 00:12:12,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:12,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:12,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:12:12,677.677 INFO    ] No camera update needed
[2026-06-13 00:12:12,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:12,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:12,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:12,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:12:14,724.724 INFO    ] ================================================
[2026-06-13 00:12:14,740.740 INFO    ] Launching Daemon at Sat Jun 13 00:12:14 IST 2026
[2026-06-13 00:12:14,752.752 INFO    ] ================================================
[2026-06-13 00:12:15,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:12:15
[2026-06-13 00:12:15,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:12:15,636.636 INFO    ] Initializing speech engine...
[2026-06-13 00:12:15,645.645 INFO    ] 2026-06-13 00:12:15
[2026-06-13 00:12:15,929.929 INFO    ] 2026-06-13 00:12:15
[2026-06-13 00:12:16,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:12:16,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:12:16,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:12:16,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:12:16,481.481 INFO    ] time= 13/06/2026 00:12:16
[2026-06-13 00:12:16,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:12:16,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:12:16,619.619 INFO    ] No existing commands found in stream
[2026-06-13 00:12:21,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:12:21,645.645 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 00:12:24,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:12:24,687.687 INFO    ] Checking for system updates...
[2026-06-13 00:12:24,710.710 INFO    ] 200
[2026-06-13 00:12:24,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:24,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:12:24,747.747 INFO    ] No update needed
[2026-06-13 00:12:24,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:24,770.770 INFO    ] 200
[2026-06-13 00:12:24,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:24,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:24,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:12:24,841.841 INFO    ] No camera update needed
[2026-06-13 00:12:24,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:24,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:24,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:24,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:12:26,893.893 INFO    ] ================================================
[2026-06-13 00:12:26,909.909 INFO    ] Launching Daemon at Sat Jun 13 00:12:26 IST 2026
[2026-06-13 00:12:26,920.920 INFO    ] ================================================
[2026-06-13 00:12:27,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:12:27
[2026-06-13 00:12:27,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:12:27,781.781 INFO    ] Initializing speech engine...
[2026-06-13 00:12:27,787.787 INFO    ] 2026-06-13 00:12:27
[2026-06-13 00:12:28,000.000 INFO    ] 2026-06-13 00:12:27
[2026-06-13 00:12:28,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:12:28,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:12:28,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:12:28,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:12:28,408.408 INFO    ] time= 13/06/2026 00:12:28
[2026-06-13 00:12:28,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:12:28,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:12:28,524.524 INFO    ] No existing commands found in stream
[2026-06-13 00:12:33,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:12:33,539.539 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 00:12:36,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:12:36,483.483 INFO    ] Checking for system updates...
[2026-06-13 00:12:36,505.505 INFO    ] 200
[2026-06-13 00:12:36,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:36,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:36,539.539 INFO    ] No update needed
[2026-06-13 00:12:36,540.540 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:36,560.560 INFO    ] 200
[2026-06-13 00:12:36,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:36,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:36,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:36,629.629 INFO    ] No camera update needed
[2026-06-13 00:12:36,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:36,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:36,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:36,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:12:38,679.679 INFO    ] ================================================
[2026-06-13 00:12:38,693.693 INFO    ] Launching Daemon at Sat Jun 13 00:12:38 IST 2026
[2026-06-13 00:12:38,704.704 INFO    ] ================================================
[2026-06-13 00:12:39,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:12:39
[2026-06-13 00:12:39,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:12:39,502.502 INFO    ] Initializing speech engine...
[2026-06-13 00:12:39,507.507 INFO    ] 2026-06-13 00:12:39
[2026-06-13 00:12:39,712.712 INFO    ] 2026-06-13 00:12:39
[2026-06-13 00:12:39,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:12:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:12:39,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:12:40,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:12:40,133.133 INFO    ] time= 13/06/2026 00:12:40
[2026-06-13 00:12:40,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:12:40,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:12:40,229.229 INFO    ] No existing commands found in stream
[2026-06-13 00:12:45,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:12:45,242.242 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 00:12:46,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:12:46,701.701 INFO    ] Checking for system updates...
[2026-06-13 00:12:46,723.723 INFO    ] 200
[2026-06-13 00:12:46,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:46,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:12:46,759.759 INFO    ] No update needed
[2026-06-13 00:12:46,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:46,781.781 INFO    ] 200
[2026-06-13 00:12:46,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:46,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:46,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:12:46,843.843 INFO    ] No camera update needed
[2026-06-13 00:12:46,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:46,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:46,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:46,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:12:48,891.891 INFO    ] ================================================
[2026-06-13 00:12:48,906.906 INFO    ] Launching Daemon at Sat Jun 13 00:12:48 IST 2026
[2026-06-13 00:12:48,918.918 INFO    ] ================================================
[2026-06-13 00:12:49,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:12:49
[2026-06-13 00:12:50,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:12:50,295.295 INFO    ] Initializing speech engine...
[2026-06-13 00:12:50,301.301 INFO    ] 2026-06-13 00:12:50
[2026-06-13 00:12:50,598.598 INFO    ] 2026-06-13 00:12:50
[2026-06-13 00:12:50,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:12:50,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:12:50,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:12:50,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:12:50,959.959 INFO    ] time= 13/06/2026 00:12:50
[2026-06-13 00:12:50,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:12:50,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:12:51,040.040 INFO    ] No existing commands found in stream
[2026-06-13 00:12:56,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:12:56,054.054 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 00:12:58,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:12:58,122.122 INFO    ] Checking for system updates...
[2026-06-13 00:12:58,143.143 INFO    ] 200
[2026-06-13 00:12:58,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:58,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:58,177.177 INFO    ] No update needed
[2026-06-13 00:12:58,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 00:12:58,199.199 INFO    ] 200
[2026-06-13 00:12:58,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:12:58,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:12:58,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:12:58,271.271 INFO    ] No camera update needed
[2026-06-13 00:12:58,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:12:58,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:12:58,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:12:58,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:13:00,320.320 INFO    ] ================================================
[2026-06-13 00:13:00,335.335 INFO    ] Launching Daemon at Sat Jun 13 00:13:00 IST 2026
[2026-06-13 00:13:00,346.346 INFO    ] ================================================
[2026-06-13 00:13:00,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:13:00
[2026-06-13 00:13:01,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:13:01,175.175 INFO    ] Initializing speech engine...
[2026-06-13 00:13:01,180.180 INFO    ] 2026-06-13 00:13:01
[2026-06-13 00:13:01,383.383 INFO    ] 2026-06-13 00:13:01
[2026-06-13 00:13:01,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:13:01,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:13:01,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:13:01,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:13:01,728.728 INFO    ] time= 13/06/2026 00:13:01
[2026-06-13 00:13:01,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:13:01,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:13:01,847.847 INFO    ] No existing commands found in stream
[2026-06-13 00:13:06,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:13:06,885.885 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 00:13:10,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:13:10,900.900 INFO    ] Checking for system updates...
[2026-06-13 00:13:10,923.923 INFO    ] 200
[2026-06-13 00:13:10,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:10,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:10,956.956 INFO    ] No update needed
[2026-06-13 00:13:10,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 00:13:10,978.978 INFO    ] 200
[2026-06-13 00:13:10,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:11,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:13:11,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:11,042.042 INFO    ] No camera update needed
[2026-06-13 00:13:11,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:13:11,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:13:11,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:13:11,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:13:13,091.091 INFO    ] ================================================
[2026-06-13 00:13:13,108.108 INFO    ] Launching Daemon at Sat Jun 13 00:13:13 IST 2026
[2026-06-13 00:13:13,124.124 INFO    ] ================================================
[2026-06-13 00:13:13,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:13:13
[2026-06-13 00:13:13,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:13:13,918.918 INFO    ] Initializing speech engine...
[2026-06-13 00:13:13,926.926 INFO    ] 2026-06-13 00:13:13
[2026-06-13 00:13:14,146.146 INFO    ] 2026-06-13 00:13:14
[2026-06-13 00:13:14,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:13:14,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:13:14,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:13:14,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:13:14,593.593 INFO    ] time= 13/06/2026 00:13:14
[2026-06-13 00:13:14,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:13:14,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:13:14,697.697 INFO    ] No existing commands found in stream
[2026-06-13 00:13:19,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:13:19,710.710 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 00:13:23,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:13:23,419.419 INFO    ] Checking for system updates...
[2026-06-13 00:13:23,441.441 INFO    ] 200
[2026-06-13 00:13:23,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:23,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:13:23,476.476 INFO    ] No update needed
[2026-06-13 00:13:23,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 00:13:23,498.498 INFO    ] 200
[2026-06-13 00:13:23,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:23,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:13:23,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:23,561.561 INFO    ] No camera update needed
[2026-06-13 00:13:23,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:13:23,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:13:23,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:13:23,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:13:25,607.607 INFO    ] ================================================
[2026-06-13 00:13:25,622.622 INFO    ] Launching Daemon at Sat Jun 13 00:13:25 IST 2026
[2026-06-13 00:13:25,633.633 INFO    ] ================================================
[2026-06-13 00:13:25,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:13:25
[2026-06-13 00:13:26,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:13:26,407.407 INFO    ] Initializing speech engine...
[2026-06-13 00:13:26,419.419 INFO    ] 2026-06-13 00:13:26
[2026-06-13 00:13:26,627.627 INFO    ] 2026-06-13 00:13:26
[2026-06-13 00:13:26,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:13:26,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:13:26,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:13:26,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:13:27,048.048 INFO    ] time= 13/06/2026 00:13:26
[2026-06-13 00:13:27,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:13:27,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:13:27,145.145 INFO    ] No existing commands found in stream
[2026-06-13 00:13:32,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:13:32,152.152 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 00:13:34,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:13:34,709.709 INFO    ] Checking for system updates...
[2026-06-13 00:13:34,730.730 INFO    ] 200
[2026-06-13 00:13:34,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:34,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:34,763.763 INFO    ] No update needed
[2026-06-13 00:13:34,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 00:13:34,784.784 INFO    ] 200
[2026-06-13 00:13:34,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:34,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:13:34,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:34,847.847 INFO    ] No camera update needed
[2026-06-13 00:13:34,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:13:34,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:13:34,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:13:34,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:13:36,898.898 INFO    ] ================================================
[2026-06-13 00:13:36,913.913 INFO    ] Launching Daemon at Sat Jun 13 00:13:36 IST 2026
[2026-06-13 00:13:36,924.924 INFO    ] ================================================
[2026-06-13 00:13:37,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:13:37
[2026-06-13 00:13:37,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:13:37,698.698 INFO    ] Initializing speech engine...
[2026-06-13 00:13:37,708.708 INFO    ] 2026-06-13 00:13:37
[2026-06-13 00:13:37,913.913 INFO    ] 2026-06-13 00:13:37
[2026-06-13 00:13:37,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:13:38,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:13:38,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:13:38,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:13:38,314.314 INFO    ] time= 13/06/2026 00:13:38
[2026-06-13 00:13:38,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:13:38,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:13:38,436.436 INFO    ] No existing commands found in stream
[2026-06-13 00:13:43,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:13:43,449.449 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 00:13:46,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:13:46,799.799 INFO    ] Checking for system updates...
[2026-06-13 00:13:46,820.820 INFO    ] 200
[2026-06-13 00:13:46,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:46,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:13:46,853.853 INFO    ] No update needed
[2026-06-13 00:13:46,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 00:13:46,874.874 INFO    ] 200
[2026-06-13 00:13:46,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:46,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:13:46,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:13:46,944.944 INFO    ] No camera update needed
[2026-06-13 00:13:46,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:13:46,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:13:46,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:13:46,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:13:49,995.995 INFO    ] ================================================
[2026-06-13 00:13:49,010.010 INFO    ] Launching Daemon at Sat Jun 13 00:13:49 IST 2026
[2026-06-13 00:13:49,020.020 INFO    ] ================================================
[2026-06-13 00:13:49,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:13:49
[2026-06-13 00:13:49,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:13:49,811.811 INFO    ] Initializing speech engine...
[2026-06-13 00:13:49,816.816 INFO    ] 2026-06-13 00:13:49
[2026-06-13 00:13:50,020.020 INFO    ] 2026-06-13 00:13:50
[2026-06-13 00:13:50,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:13:50,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:13:50,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:13:50,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:13:50,329.329 INFO    ] time= 13/06/2026 00:13:50
[2026-06-13 00:13:50,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:13:50,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:13:50,589.589 INFO    ] No existing commands found in stream
[2026-06-13 00:13:55,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:13:55,618.618 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 00:13:58,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:13:58,976.976 INFO    ] Checking for system updates...
[2026-06-13 00:13:58,996.996 INFO    ] 200
[2026-06-13 00:13:58,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:59,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:13:59,032.032 INFO    ] No update needed
[2026-06-13 00:13:59,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 00:13:59,053.053 INFO    ] 200
[2026-06-13 00:13:59,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:13:59,078.078 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:13:59,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:13:59,113.113 INFO    ] No camera update needed
[2026-06-13 00:13:59,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:13:59,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:13:59,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:13:59,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:01,159.159 INFO    ] ================================================
[2026-06-13 00:14:01,175.175 INFO    ] Launching Daemon at Sat Jun 13 00:14:01 IST 2026
[2026-06-13 00:14:01,185.185 INFO    ] ================================================
[2026-06-13 00:14:01,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:01
[2026-06-13 00:14:01,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:02,195.195 INFO    ] Initializing speech engine...
[2026-06-13 00:14:02,200.200 INFO    ] 2026-06-13 00:14:02
[2026-06-13 00:14:02,595.595 INFO    ] 2026-06-13 00:14:02
[2026-06-13 00:14:02,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:02,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:03,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:03,085.085 INFO    ] time= 13/06/2026 00:14:03
[2026-06-13 00:14:03,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:03,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:03,292.292 INFO    ] No existing commands found in stream
[2026-06-13 00:14:08,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:14:08,320.320 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 00:14:09,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:14:09,348.348 INFO    ] Checking for system updates...
[2026-06-13 00:14:09,369.369 INFO    ] 200
[2026-06-13 00:14:09,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:09,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:14:09,406.406 INFO    ] No update needed
[2026-06-13 00:14:09,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 00:14:09,427.427 INFO    ] 200
[2026-06-13 00:14:09,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:09,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:14:09,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:09,603.603 INFO    ] No camera update needed
[2026-06-13 00:14:09,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:14:09,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:14:09,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:14:09,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:11,650.650 INFO    ] ================================================
[2026-06-13 00:14:11,665.665 INFO    ] Launching Daemon at Sat Jun 13 00:14:11 IST 2026
[2026-06-13 00:14:11,676.676 INFO    ] ================================================
[2026-06-13 00:14:12,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:12
[2026-06-13 00:14:12,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:12,500.500 INFO    ] Initializing speech engine...
[2026-06-13 00:14:12,505.505 INFO    ] 2026-06-13 00:14:12
[2026-06-13 00:14:12,715.715 INFO    ] 2026-06-13 00:14:12
[2026-06-13 00:14:12,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:12,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:12,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:13,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:13,134.134 INFO    ] time= 13/06/2026 00:14:13
[2026-06-13 00:14:13,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:13,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:13,241.241 INFO    ] No existing commands found in stream
[2026-06-13 00:14:18,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:14:18,255.255 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 00:14:22,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:14:22,236.236 INFO    ] Checking for system updates...
[2026-06-13 00:14:22,258.258 INFO    ] 200
[2026-06-13 00:14:22,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:22,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:22,291.291 INFO    ] No update needed
[2026-06-13 00:14:22,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 00:14:22,313.313 INFO    ] 200
[2026-06-13 00:14:22,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:22,339.339 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:14:22,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:22,379.379 INFO    ] No camera update needed
[2026-06-13 00:14:22,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:14:22,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:14:22,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:14:22,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:24,427.427 INFO    ] ================================================
[2026-06-13 00:14:24,442.442 INFO    ] Launching Daemon at Sat Jun 13 00:14:24 IST 2026
[2026-06-13 00:14:24,453.453 INFO    ] ================================================
[2026-06-13 00:14:24,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:24
[2026-06-13 00:14:25,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:25,245.245 INFO    ] Initializing speech engine...
[2026-06-13 00:14:25,254.254 INFO    ] 2026-06-13 00:14:25
[2026-06-13 00:14:25,461.461 INFO    ] 2026-06-13 00:14:25
[2026-06-13 00:14:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:25,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:25,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:25,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:25,874.874 INFO    ] time= 13/06/2026 00:14:25
[2026-06-13 00:14:25,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:25,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:25,986.986 INFO    ] No existing commands found in stream
[2026-06-13 00:14:30,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:14:31,000.000 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 00:14:34,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:14:34,134.134 INFO    ] Checking for system updates...
[2026-06-13 00:14:34,155.155 INFO    ] 200
[2026-06-13 00:14:34,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:34,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:34,189.189 INFO    ] No update needed
[2026-06-13 00:14:34,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 00:14:34,210.210 INFO    ] 200
[2026-06-13 00:14:34,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:34,236.236 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:14:34,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:14:34,280.280 INFO    ] No camera update needed
[2026-06-13 00:14:34,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:14:34,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:14:34,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:14:34,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:36,327.327 INFO    ] ================================================
[2026-06-13 00:14:36,342.342 INFO    ] Launching Daemon at Sat Jun 13 00:14:36 IST 2026
[2026-06-13 00:14:36,354.354 INFO    ] ================================================
[2026-06-13 00:14:36,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:36
[2026-06-13 00:14:37,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:37,145.145 INFO    ] Initializing speech engine...
[2026-06-13 00:14:37,151.151 INFO    ] 2026-06-13 00:14:37
[2026-06-13 00:14:37,355.355 INFO    ] 2026-06-13 00:14:37
[2026-06-13 00:14:37,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:37,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:37,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:37,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:37,763.763 INFO    ] time= 13/06/2026 00:14:37
[2026-06-13 00:14:37,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:37,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:37,876.876 INFO    ] No existing commands found in stream
[2026-06-13 00:14:42,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:14:42,887.887 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 00:14:46,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:14:46,163.163 INFO    ] Checking for system updates...
[2026-06-13 00:14:46,184.184 INFO    ] 200
[2026-06-13 00:14:46,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:46,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:14:46,218.218 INFO    ] No update needed
[2026-06-13 00:14:46,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 00:14:46,239.239 INFO    ] 200
[2026-06-13 00:14:46,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:46,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:14:46,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:14:46,304.304 INFO    ] No camera update needed
[2026-06-13 00:14:46,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:14:46,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:14:46,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:14:46,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:48,351.351 INFO    ] ================================================
[2026-06-13 00:14:48,366.366 INFO    ] Launching Daemon at Sat Jun 13 00:14:48 IST 2026
[2026-06-13 00:14:48,376.376 INFO    ] ================================================
[2026-06-13 00:14:48,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:48
[2026-06-13 00:14:49,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:49,215.215 INFO    ] Initializing speech engine...
[2026-06-13 00:14:49,222.222 INFO    ] 2026-06-13 00:14:49
[2026-06-13 00:14:49,422.422 INFO    ] 2026-06-13 00:14:49
[2026-06-13 00:14:49,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:49,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:49,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:49,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:49,831.831 INFO    ] time= 13/06/2026 00:14:49
[2026-06-13 00:14:49,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:49,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:49,935.935 INFO    ] No existing commands found in stream
[2026-06-13 00:14:54,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:14:54,949.949 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 00:14:55,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:14:55,358.358 INFO    ] Checking for system updates...
[2026-06-13 00:14:55,379.379 INFO    ] 200
[2026-06-13 00:14:55,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:55,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:55,413.413 INFO    ] No update needed
[2026-06-13 00:14:55,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 00:14:55,434.434 INFO    ] 200
[2026-06-13 00:14:55,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:14:55,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:14:55,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:14:55,510.510 INFO    ] No camera update needed
[2026-06-13 00:14:55,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:14:55,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:14:55,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:14:55,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:14:57,557.557 INFO    ] ================================================
[2026-06-13 00:14:57,572.572 INFO    ] Launching Daemon at Sat Jun 13 00:14:57 IST 2026
[2026-06-13 00:14:57,583.583 INFO    ] ================================================
[2026-06-13 00:14:57,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:14:57
[2026-06-13 00:14:58,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:14:58,451.451 INFO    ] Initializing speech engine...
[2026-06-13 00:14:58,474.474 INFO    ] 2026-06-13 00:14:58
[2026-06-13 00:14:58,747.747 INFO    ] 2026-06-13 00:14:58
[2026-06-13 00:14:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:14:59,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:14:59,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:14:59,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:14:59,236.236 INFO    ] time= 13/06/2026 00:14:59
[2026-06-13 00:14:59,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:14:59,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:14:59,383.383 INFO    ] No existing commands found in stream
[2026-06-13 00:15:04,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:15:04,398.398 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 00:15:06,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:15:06,973.973 INFO    ] Checking for system updates...
[2026-06-13 00:15:06,994.994 INFO    ] 200
[2026-06-13 00:15:06,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:07,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:15:07,027.027 INFO    ] No update needed
[2026-06-13 00:15:07,028.028 INFO    ] Checking for camera pi updates...
[2026-06-13 00:15:07,048.048 INFO    ] 200
[2026-06-13 00:15:07,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:07,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:15:07,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:15:07,109.109 INFO    ] No camera update needed
[2026-06-13 00:15:07,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:15:07,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:15:07,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:15:07,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:15:09,157.157 INFO    ] ================================================
[2026-06-13 00:15:09,173.173 INFO    ] Launching Daemon at Sat Jun 13 00:15:09 IST 2026
[2026-06-13 00:15:09,183.183 INFO    ] ================================================
[2026-06-13 00:15:09,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:15:09
[2026-06-13 00:15:09,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:15:10,070.070 INFO    ] Initializing speech engine...
[2026-06-13 00:15:10,076.076 INFO    ] 2026-06-13 00:15:10
[2026-06-13 00:15:10,283.283 INFO    ] 2026-06-13 00:15:10
[2026-06-13 00:15:10,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:15:10,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:15:10,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:15:10,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:15:10,702.702 INFO    ] time= 13/06/2026 00:15:10
[2026-06-13 00:15:10,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:15:10,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:15:10,804.804 INFO    ] No existing commands found in stream
[2026-06-13 00:15:15,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:15:15,816.816 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 00:15:18,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:15:18,555.555 INFO    ] Checking for system updates...
[2026-06-13 00:15:18,576.576 INFO    ] 200
[2026-06-13 00:15:18,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:18,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:15:18,612.612 INFO    ] No update needed
[2026-06-13 00:15:18,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 00:15:18,633.633 INFO    ] 200
[2026-06-13 00:15:18,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:18,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:15:18,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:15:18,709.709 INFO    ] No camera update needed
[2026-06-13 00:15:18,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:15:18,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:15:18,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:15:18,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:15:20,758.758 INFO    ] ================================================
[2026-06-13 00:15:20,774.774 INFO    ] Launching Daemon at Sat Jun 13 00:15:20 IST 2026
[2026-06-13 00:15:20,785.785 INFO    ] ================================================
[2026-06-13 00:15:21,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:15:21
[2026-06-13 00:15:21,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:15:21,630.630 INFO    ] Initializing speech engine...
[2026-06-13 00:15:21,633.633 INFO    ] 2026-06-13 00:15:21
[2026-06-13 00:15:21,838.838 INFO    ] 2026-06-13 00:15:21
[2026-06-13 00:15:21,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:15:22,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:15:22,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:15:22,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:15:22,259.259 INFO    ] time= 13/06/2026 00:15:22
[2026-06-13 00:15:22,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:15:22,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:15:22,354.354 INFO    ] No existing commands found in stream
[2026-06-13 00:15:27,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:15:27,368.368 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 00:15:29,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:15:29,254.254 INFO    ] Checking for system updates...
[2026-06-13 00:15:29,275.275 INFO    ] 200
[2026-06-13 00:15:29,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:29,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:29,310.310 INFO    ] No update needed
[2026-06-13 00:15:29,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 00:15:29,331.331 INFO    ] 200
[2026-06-13 00:15:29,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:29,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:15:29,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:29,404.404 INFO    ] No camera update needed
[2026-06-13 00:15:29,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:15:29,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:15:29,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:15:29,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:15:31,452.452 INFO    ] ================================================
[2026-06-13 00:15:31,466.466 INFO    ] Launching Daemon at Sat Jun 13 00:15:31 IST 2026
[2026-06-13 00:15:31,477.477 INFO    ] ================================================
[2026-06-13 00:15:31,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:15:31
[2026-06-13 00:15:32,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:15:32,600.600 INFO    ] Initializing speech engine...
[2026-06-13 00:15:32,606.606 INFO    ] 2026-06-13 00:15:32
[2026-06-13 00:15:32,923.923 INFO    ] 2026-06-13 00:15:32
[2026-06-13 00:15:32,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:15:33,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:15:33,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:15:33,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:15:33,315.315 INFO    ] time= 13/06/2026 00:15:33
[2026-06-13 00:15:33,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:15:33,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:15:33,427.427 INFO    ] No existing commands found in stream
[2026-06-13 00:15:38,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:15:38,443.443 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 00:15:40,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:15:40,807.807 INFO    ] Checking for system updates...
[2026-06-13 00:15:40,829.829 INFO    ] 200
[2026-06-13 00:15:40,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:40,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:40,862.862 INFO    ] No update needed
[2026-06-13 00:15:40,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 00:15:40,883.883 INFO    ] 200
[2026-06-13 00:15:40,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:40,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:15:40,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:40,948.948 INFO    ] No camera update needed
[2026-06-13 00:15:40,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:15:40,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:15:40,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:15:40,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:15:43,995.995 INFO    ] ================================================
[2026-06-13 00:15:43,010.010 INFO    ] Launching Daemon at Sat Jun 13 00:15:43 IST 2026
[2026-06-13 00:15:43,020.020 INFO    ] ================================================
[2026-06-13 00:15:43,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:15:43
[2026-06-13 00:15:43,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:15:43,857.857 INFO    ] Initializing speech engine...
[2026-06-13 00:15:43,862.862 INFO    ] 2026-06-13 00:15:43
[2026-06-13 00:15:44,068.068 INFO    ] 2026-06-13 00:15:44
[2026-06-13 00:15:44,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:15:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:15:44,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:15:44,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:15:44,492.492 INFO    ] time= 13/06/2026 00:15:44
[2026-06-13 00:15:44,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:15:44,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:15:44,594.594 INFO    ] No existing commands found in stream
[2026-06-13 00:15:49,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:15:49,607.607 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 00:15:53,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:15:53,058.058 INFO    ] Checking for system updates...
[2026-06-13 00:15:53,093.093 INFO    ] 200
[2026-06-13 00:15:53,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:53,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:53,152.152 INFO    ] No update needed
[2026-06-13 00:15:53,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 00:15:53,190.190 INFO    ] 200
[2026-06-13 00:15:53,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:15:53,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:15:53,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:15:53,271.271 INFO    ] No camera update needed
[2026-06-13 00:15:53,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:15:53,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:15:53,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:15:53,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:15:55,317.317 INFO    ] ================================================
[2026-06-13 00:15:55,333.333 INFO    ] Launching Daemon at Sat Jun 13 00:15:55 IST 2026
[2026-06-13 00:15:55,344.344 INFO    ] ================================================
[2026-06-13 00:15:55,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:15:55
[2026-06-13 00:15:56,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:15:56,162.162 INFO    ] Initializing speech engine...
[2026-06-13 00:15:56,172.172 INFO    ] 2026-06-13 00:15:56
[2026-06-13 00:15:56,379.379 INFO    ] 2026-06-13 00:15:56
[2026-06-13 00:15:56,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:15:56,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:15:56,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:15:56,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:15:56,787.787 INFO    ] time= 13/06/2026 00:15:56
[2026-06-13 00:15:56,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:15:56,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:15:56,956.956 INFO    ] No existing commands found in stream
[2026-06-13 00:16:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:16:01,970.970 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 00:16:08,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:16:08,362.362 INFO    ] Checking for system updates...
[2026-06-13 00:16:08,400.400 INFO    ] 200
[2026-06-13 00:16:08,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:08,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:16:08,459.459 INFO    ] No update needed
[2026-06-13 00:16:08,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 00:16:08,500.500 INFO    ] 200
[2026-06-13 00:16:08,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:08,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:16:08,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:16:08,586.586 INFO    ] No camera update needed
[2026-06-13 00:16:08,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:16:08,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:16:08,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:16:08,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:16:10,634.634 INFO    ] ================================================
[2026-06-13 00:16:10,649.649 INFO    ] Launching Daemon at Sat Jun 13 00:16:10 IST 2026
[2026-06-13 00:16:10,660.660 INFO    ] ================================================
[2026-06-13 00:16:10,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:16:10
[2026-06-13 00:16:11,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:16:11,451.451 INFO    ] Initializing speech engine...
[2026-06-13 00:16:11,465.465 INFO    ] 2026-06-13 00:16:11
[2026-06-13 00:16:11,686.686 INFO    ] 2026-06-13 00:16:11
[2026-06-13 00:16:11,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:16:11,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:16:11,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:16:12,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:16:12,082.082 INFO    ] time= 13/06/2026 00:16:12
[2026-06-13 00:16:12,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:16:12,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:16:12,239.239 INFO    ] No existing commands found in stream
[2026-06-13 00:16:17,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:16:17,252.252 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 00:16:17,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:16:17,834.834 INFO    ] Checking for system updates...
[2026-06-13 00:16:17,855.855 INFO    ] 200
[2026-06-13 00:16:17,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:17,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:17,890.890 INFO    ] No update needed
[2026-06-13 00:16:17,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 00:16:17,911.911 INFO    ] 200
[2026-06-13 00:16:17,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:17,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:16:18,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:18,080.080 INFO    ] No camera update needed
[2026-06-13 00:16:18,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:16:18,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:16:18,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:16:18,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:16:20,129.129 INFO    ] ================================================
[2026-06-13 00:16:20,144.144 INFO    ] Launching Daemon at Sat Jun 13 00:16:20 IST 2026
[2026-06-13 00:16:20,155.155 INFO    ] ================================================
[2026-06-13 00:16:20,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:16:20
[2026-06-13 00:16:20,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:16:20,963.963 INFO    ] Initializing speech engine...
[2026-06-13 00:16:20,969.969 INFO    ] 2026-06-13 00:16:20
[2026-06-13 00:16:21,172.172 INFO    ] 2026-06-13 00:16:21
[2026-06-13 00:16:21,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:16:21,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:16:21,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:16:21,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:16:21,586.586 INFO    ] time= 13/06/2026 00:16:21
[2026-06-13 00:16:21,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:16:21,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:16:21,685.685 INFO    ] No existing commands found in stream
[2026-06-13 00:16:26,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:16:26,699.699 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 00:16:30,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:16:30,267.267 INFO    ] Checking for system updates...
[2026-06-13 00:16:30,288.288 INFO    ] 200
[2026-06-13 00:16:30,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:30,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:30,324.324 INFO    ] No update needed
[2026-06-13 00:16:30,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 00:16:30,346.346 INFO    ] 200
[2026-06-13 00:16:30,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:30,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:16:30,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:30,410.410 INFO    ] No camera update needed
[2026-06-13 00:16:30,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:16:30,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:16:30,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:16:30,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:16:32,455.455 INFO    ] ================================================
[2026-06-13 00:16:32,472.472 INFO    ] Launching Daemon at Sat Jun 13 00:16:32 IST 2026
[2026-06-13 00:16:32,483.483 INFO    ] ================================================
[2026-06-13 00:16:33,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:16:33
[2026-06-13 00:16:33,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:16:33,944.944 INFO    ] Initializing speech engine...
[2026-06-13 00:16:33,958.958 INFO    ] 2026-06-13 00:16:33
[2026-06-13 00:16:34,250.250 INFO    ] 2026-06-13 00:16:34
[2026-06-13 00:16:34,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:16:34,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:16:34,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:16:34,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:16:34,603.603 INFO    ] time= 13/06/2026 00:16:34
[2026-06-13 00:16:34,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:16:34,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:16:34,713.713 INFO    ] No existing commands found in stream
[2026-06-13 00:16:39,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:16:39,729.729 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 00:16:40,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:16:40,079.079 INFO    ] Checking for system updates...
[2026-06-13 00:16:40,100.100 INFO    ] 200
[2026-06-13 00:16:40,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:40,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:16:40,136.136 INFO    ] No update needed
[2026-06-13 00:16:40,137.137 INFO    ] Checking for camera pi updates...
[2026-06-13 00:16:40,158.158 INFO    ] 200
[2026-06-13 00:16:40,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:40,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:16:40,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:16:40,228.228 INFO    ] No camera update needed
[2026-06-13 00:16:40,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:16:40,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:16:40,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:16:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:16:42,275.275 INFO    ] ================================================
[2026-06-13 00:16:42,290.290 INFO    ] Launching Daemon at Sat Jun 13 00:16:42 IST 2026
[2026-06-13 00:16:42,301.301 INFO    ] ================================================
[2026-06-13 00:16:42,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:16:42
[2026-06-13 00:16:42,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:16:43,064.064 INFO    ] Initializing speech engine...
[2026-06-13 00:16:43,068.068 INFO    ] 2026-06-13 00:16:43
[2026-06-13 00:16:43,298.298 INFO    ] 2026-06-13 00:16:43
[2026-06-13 00:16:43,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:16:43,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:16:43,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:16:43,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:16:43,734.734 INFO    ] time= 13/06/2026 00:16:43
[2026-06-13 00:16:43,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:16:43,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:16:43,855.855 INFO    ] No existing commands found in stream
[2026-06-13 00:16:48,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:16:48,868.868 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 00:16:52,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:16:52,911.911 INFO    ] Checking for system updates...
[2026-06-13 00:16:52,931.931 INFO    ] 200
[2026-06-13 00:16:52,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:52,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:52,965.965 INFO    ] No update needed
[2026-06-13 00:16:52,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 00:16:52,986.986 INFO    ] 200
[2026-06-13 00:16:52,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:16:53,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:16:53,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:16:53,060.060 INFO    ] No camera update needed
[2026-06-13 00:16:53,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:16:53,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:16:53,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:16:53,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:16:55,107.107 INFO    ] ================================================
[2026-06-13 00:16:55,122.122 INFO    ] Launching Daemon at Sat Jun 13 00:16:55 IST 2026
[2026-06-13 00:16:55,133.133 INFO    ] ================================================
[2026-06-13 00:16:55,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:16:55
[2026-06-13 00:16:55,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:16:55,913.913 INFO    ] Initializing speech engine...
[2026-06-13 00:16:55,918.918 INFO    ] 2026-06-13 00:16:55
[2026-06-13 00:16:56,122.122 INFO    ] 2026-06-13 00:16:56
[2026-06-13 00:16:56,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:16:56,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:16:56,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:16:56,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:16:56,544.544 INFO    ] time= 13/06/2026 00:16:56
[2026-06-13 00:16:56,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:16:56,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:16:56,641.641 INFO    ] No existing commands found in stream
[2026-06-13 00:17:01,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:01,652.652 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 00:17:03,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:17:03,635.635 INFO    ] Checking for system updates...
[2026-06-13 00:17:03,672.672 INFO    ] 200
[2026-06-13 00:17:03,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:03,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:03,739.739 INFO    ] No update needed
[2026-06-13 00:17:03,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:03,778.778 INFO    ] 200
[2026-06-13 00:17:03,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:03,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:03,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:03,882.882 INFO    ] No camera update needed
[2026-06-13 00:17:03,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:03,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:03,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:03,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:05,941.941 INFO    ] ================================================
[2026-06-13 00:17:05,956.956 INFO    ] Launching Daemon at Sat Jun 13 00:17:05 IST 2026
[2026-06-13 00:17:05,967.967 INFO    ] ================================================
[2026-06-13 00:17:06,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:06
[2026-06-13 00:17:06,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:06,749.749 INFO    ] Initializing speech engine...
[2026-06-13 00:17:06,762.762 INFO    ] 2026-06-13 00:17:06
[2026-06-13 00:17:06,978.978 INFO    ] 2026-06-13 00:17:06
[2026-06-13 00:17:07,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:07,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:07,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:07,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:07,399.399 INFO    ] time= 13/06/2026 00:17:07
[2026-06-13 00:17:07,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:07,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:17:07,594.594 INFO    ] No existing commands found in stream
[2026-06-13 00:17:12,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:12,627.627 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 00:17:14,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:17:14,537.537 INFO    ] Checking for system updates...
[2026-06-13 00:17:14,559.559 INFO    ] 200
[2026-06-13 00:17:14,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:14,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:14,597.597 INFO    ] No update needed
[2026-06-13 00:17:14,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:14,621.621 INFO    ] 200
[2026-06-13 00:17:14,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:14,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:14,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:14,693.693 INFO    ] No camera update needed
[2026-06-13 00:17:14,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:14,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:14,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:14,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:16,742.742 INFO    ] ================================================
[2026-06-13 00:17:16,757.757 INFO    ] Launching Daemon at Sat Jun 13 00:17:16 IST 2026
[2026-06-13 00:17:16,768.768 INFO    ] ================================================
[2026-06-13 00:17:17,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:17
[2026-06-13 00:17:17,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:17,637.637 INFO    ] Initializing speech engine...
[2026-06-13 00:17:17,642.642 INFO    ] 2026-06-13 00:17:17
[2026-06-13 00:17:17,852.852 INFO    ] 2026-06-13 00:17:17
[2026-06-13 00:17:17,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:18,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:18,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:18,257.257 INFO    ] time= 13/06/2026 00:17:18
[2026-06-13 00:17:18,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:18,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:17:18,369.369 INFO    ] No existing commands found in stream
[2026-06-13 00:17:23,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:23,386.386 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 00:17:24,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:17:24,852.852 INFO    ] Checking for system updates...
[2026-06-13 00:17:24,875.875 INFO    ] 200
[2026-06-13 00:17:24,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:24,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:24,913.913 INFO    ] No update needed
[2026-06-13 00:17:24,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:24,936.936 INFO    ] 200
[2026-06-13 00:17:24,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:24,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:25,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:25,008.008 INFO    ] No camera update needed
[2026-06-13 00:17:25,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:25,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:25,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:25,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:27,056.056 INFO    ] ================================================
[2026-06-13 00:17:27,071.071 INFO    ] Launching Daemon at Sat Jun 13 00:17:27 IST 2026
[2026-06-13 00:17:27,082.082 INFO    ] ================================================
[2026-06-13 00:17:27,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:27
[2026-06-13 00:17:27,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:27,893.893 INFO    ] Initializing speech engine...
[2026-06-13 00:17:27,898.898 INFO    ] 2026-06-13 00:17:27
[2026-06-13 00:17:28,101.101 INFO    ] 2026-06-13 00:17:28
[2026-06-13 00:17:28,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:28,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:28,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:28,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:28,517.517 INFO    ] time= 13/06/2026 00:17:28
[2026-06-13 00:17:28,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:28,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:17:28,613.613 INFO    ] No existing commands found in stream
[2026-06-13 00:17:33,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:33,626.626 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 00:17:34,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:17:34,310.310 INFO    ] Checking for system updates...
[2026-06-13 00:17:34,331.331 INFO    ] 200
[2026-06-13 00:17:34,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:34,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:34,365.365 INFO    ] No update needed
[2026-06-13 00:17:34,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:34,386.386 INFO    ] 200
[2026-06-13 00:17:34,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:34,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:34,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:17:34,460.460 INFO    ] No camera update needed
[2026-06-13 00:17:34,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:34,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:34,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:34,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:36,501.501 INFO    ] ================================================
[2026-06-13 00:17:36,510.510 INFO    ] Launching Daemon at Sat Jun 13 00:17:36 IST 2026
[2026-06-13 00:17:36,516.516 INFO    ] ================================================
[2026-06-13 00:17:36,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:36
[2026-06-13 00:17:37,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:37,354.354 INFO    ] Initializing speech engine...
[2026-06-13 00:17:37,361.361 INFO    ] 2026-06-13 00:17:37
[2026-06-13 00:17:37,563.563 INFO    ] 2026-06-13 00:17:37
[2026-06-13 00:17:37,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:37,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:37,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:37,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:37,974.974 INFO    ] time= 13/06/2026 00:17:37
[2026-06-13 00:17:38,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:38,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:17:38,079.079 INFO    ] No existing commands found in stream
[2026-06-13 00:17:43,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:43,093.093 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 00:17:44,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:17:44,153.153 INFO    ] Checking for system updates...
[2026-06-13 00:17:44,174.174 INFO    ] 200
[2026-06-13 00:17:44,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:44,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:17:44,208.208 INFO    ] No update needed
[2026-06-13 00:17:44,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:44,230.230 INFO    ] 200
[2026-06-13 00:17:44,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:44,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:44,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:17:44,303.303 INFO    ] No camera update needed
[2026-06-13 00:17:44,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:44,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:44,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:44,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:46,358.358 INFO    ] ================================================
[2026-06-13 00:17:46,373.373 INFO    ] Launching Daemon at Sat Jun 13 00:17:46 IST 2026
[2026-06-13 00:17:46,383.383 INFO    ] ================================================
[2026-06-13 00:17:46,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:46
[2026-06-13 00:17:47,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:47,287.287 INFO    ] Initializing speech engine...
[2026-06-13 00:17:47,297.297 INFO    ] 2026-06-13 00:17:47
[2026-06-13 00:17:47,542.542 INFO    ] 2026-06-13 00:17:47
[2026-06-13 00:17:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:47,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:47,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:47,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:47,910.910 INFO    ] time= 13/06/2026 00:17:47
[2026-06-13 00:17:47,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:47,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:17:48,094.094 INFO    ] No existing commands found in stream
[2026-06-13 00:17:53,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:17:53,120.120 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 00:17:56,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:17:56,230.230 INFO    ] Checking for system updates...
[2026-06-13 00:17:56,252.252 INFO    ] 200
[2026-06-13 00:17:56,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:56,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:17:56,285.285 INFO    ] No update needed
[2026-06-13 00:17:56,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 00:17:56,306.306 INFO    ] 200
[2026-06-13 00:17:56,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:17:56,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:17:56,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:17:56,368.368 INFO    ] No camera update needed
[2026-06-13 00:17:56,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:17:56,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:17:56,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:17:56,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:17:58,416.416 INFO    ] ================================================
[2026-06-13 00:17:58,431.431 INFO    ] Launching Daemon at Sat Jun 13 00:17:58 IST 2026
[2026-06-13 00:17:58,446.446 INFO    ] ================================================
[2026-06-13 00:17:58,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:17:58
[2026-06-13 00:17:59,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:17:59,226.226 INFO    ] Initializing speech engine...
[2026-06-13 00:17:59,236.236 INFO    ] 2026-06-13 00:17:59
[2026-06-13 00:17:59,452.452 INFO    ] 2026-06-13 00:17:59
[2026-06-13 00:17:59,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:17:59,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:17:59,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:17:59,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:17:59,893.893 INFO    ] time= 13/06/2026 00:17:59
[2026-06-13 00:17:59,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:17:59,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:00,005.005 INFO    ] No existing commands found in stream
[2026-06-13 00:18:05,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:18:05,018.018 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 00:18:09,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:18:09,104.104 INFO    ] Checking for system updates...
[2026-06-13 00:18:09,126.126 INFO    ] 200
[2026-06-13 00:18:09,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:09,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:09,162.162 INFO    ] No update needed
[2026-06-13 00:18:09,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 00:18:09,183.183 INFO    ] 200
[2026-06-13 00:18:09,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:09,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:18:09,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:09,250.250 INFO    ] No camera update needed
[2026-06-13 00:18:09,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:18:09,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:18:09,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:18:09,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:18:11,299.299 INFO    ] ================================================
[2026-06-13 00:18:11,314.314 INFO    ] Launching Daemon at Sat Jun 13 00:18:11 IST 2026
[2026-06-13 00:18:11,325.325 INFO    ] ================================================
[2026-06-13 00:18:11,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:18:11
[2026-06-13 00:18:12,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:18:12,182.182 INFO    ] Initializing speech engine...
[2026-06-13 00:18:12,187.187 INFO    ] 2026-06-13 00:18:12
[2026-06-13 00:18:12,398.398 INFO    ] 2026-06-13 00:18:12
[2026-06-13 00:18:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:18:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:18:12,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:18:12,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:18:12,800.800 INFO    ] time= 13/06/2026 00:18:12
[2026-06-13 00:18:12,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:18:12,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:12,922.922 INFO    ] No existing commands found in stream
[2026-06-13 00:18:17,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:18:17,936.936 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 00:18:20,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:18:20,116.116 INFO    ] Checking for system updates...
[2026-06-13 00:18:20,137.137 INFO    ] 200
[2026-06-13 00:18:20,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:20,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:20,172.172 INFO    ] No update needed
[2026-06-13 00:18:20,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 00:18:20,195.195 INFO    ] 200
[2026-06-13 00:18:20,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:20,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:18:20,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:20,372.372 INFO    ] No camera update needed
[2026-06-13 00:18:20,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:18:20,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:18:20,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:18:20,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:18:22,422.422 INFO    ] ================================================
[2026-06-13 00:18:22,437.437 INFO    ] Launching Daemon at Sat Jun 13 00:18:22 IST 2026
[2026-06-13 00:18:22,447.447 INFO    ] ================================================
[2026-06-13 00:18:22,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:18:22
[2026-06-13 00:18:23,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:18:23,253.253 INFO    ] Initializing speech engine...
[2026-06-13 00:18:23,258.258 INFO    ] 2026-06-13 00:18:23
[2026-06-13 00:18:23,487.487 INFO    ] 2026-06-13 00:18:23
[2026-06-13 00:18:23,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:18:23,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:18:23,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:18:23,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:18:23,751.751 INFO    ] time= 13/06/2026 00:18:23
[2026-06-13 00:18:23,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:18:23,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:23,869.869 INFO    ] No existing commands found in stream
[2026-06-13 00:18:28,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:18:28,881.881 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 00:18:32,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:18:32,934.934 INFO    ] Checking for system updates...
[2026-06-13 00:18:32,970.970 INFO    ] 200
[2026-06-13 00:18:32,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:33,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:33,029.029 INFO    ] No update needed
[2026-06-13 00:18:33,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 00:18:33,065.065 INFO    ] 200
[2026-06-13 00:18:33,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:33,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:18:33,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:33,137.137 INFO    ] No camera update needed
[2026-06-13 00:18:33,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:18:33,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:18:33,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:18:33,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:18:35,194.194 INFO    ] ================================================
[2026-06-13 00:18:35,209.209 INFO    ] Launching Daemon at Sat Jun 13 00:18:35 IST 2026
[2026-06-13 00:18:35,220.220 INFO    ] ================================================
[2026-06-13 00:18:35,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:18:35
[2026-06-13 00:18:35,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:18:36,077.077 INFO    ] Initializing speech engine...
[2026-06-13 00:18:36,084.084 INFO    ] 2026-06-13 00:18:36
[2026-06-13 00:18:36,282.282 INFO    ] 2026-06-13 00:18:36
[2026-06-13 00:18:36,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:18:36,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:18:36,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:18:36,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:18:36,700.700 INFO    ] time= 13/06/2026 00:18:36
[2026-06-13 00:18:36,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:18:36,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:36,795.795 INFO    ] No existing commands found in stream
[2026-06-13 00:18:41,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:18:41,808.808 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 00:18:44,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:18:44,341.341 INFO    ] Checking for system updates...
[2026-06-13 00:18:44,363.363 INFO    ] 200
[2026-06-13 00:18:44,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:44,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:44,396.396 INFO    ] No update needed
[2026-06-13 00:18:44,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 00:18:44,418.418 INFO    ] 200
[2026-06-13 00:18:44,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:44,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:18:44,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:44,499.499 INFO    ] No camera update needed
[2026-06-13 00:18:44,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:18:44,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:18:44,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:18:44,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:18:46,547.547 INFO    ] ================================================
[2026-06-13 00:18:46,562.562 INFO    ] Launching Daemon at Sat Jun 13 00:18:46 IST 2026
[2026-06-13 00:18:46,572.572 INFO    ] ================================================
[2026-06-13 00:18:46,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:18:46
[2026-06-13 00:18:47,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:18:47,362.362 INFO    ] Initializing speech engine...
[2026-06-13 00:18:47,365.365 INFO    ] 2026-06-13 00:18:47
[2026-06-13 00:18:47,580.580 INFO    ] 2026-06-13 00:18:47
[2026-06-13 00:18:47,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:18:47,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:18:47,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:18:47,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:18:47,998.998 INFO    ] time= 13/06/2026 00:18:47
[2026-06-13 00:18:48,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:18:48,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:48,094.094 INFO    ] No existing commands found in stream
[2026-06-13 00:18:53,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:18:53,107.107 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 00:18:55,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:18:55,707.707 INFO    ] Checking for system updates...
[2026-06-13 00:18:55,728.728 INFO    ] 200
[2026-06-13 00:18:55,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:55,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:55,761.761 INFO    ] No update needed
[2026-06-13 00:18:55,762.762 INFO    ] Checking for camera pi updates...
[2026-06-13 00:18:55,782.782 INFO    ] 200
[2026-06-13 00:18:55,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:18:55,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:18:55,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:18:55,849.849 INFO    ] No camera update needed
[2026-06-13 00:18:55,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:18:55,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:18:55,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:18:55,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:18:57,898.898 INFO    ] ================================================
[2026-06-13 00:18:57,913.913 INFO    ] Launching Daemon at Sat Jun 13 00:18:57 IST 2026
[2026-06-13 00:18:57,923.923 INFO    ] ================================================
[2026-06-13 00:18:58,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:18:58
[2026-06-13 00:18:58,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:18:58,722.722 INFO    ] Initializing speech engine...
[2026-06-13 00:18:58,725.725 INFO    ] 2026-06-13 00:18:58
[2026-06-13 00:18:58,946.946 INFO    ] 2026-06-13 00:18:58
[2026-06-13 00:18:58,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:18:59,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:18:59,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:18:59,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:18:59,321.321 INFO    ] time= 13/06/2026 00:18:59
[2026-06-13 00:18:59,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:18:59,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:18:59,465.465 INFO    ] No existing commands found in stream
[2026-06-13 00:19:04,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:19:04,475.475 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 00:19:08,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:19:08,724.724 INFO    ] Checking for system updates...
[2026-06-13 00:19:08,745.745 INFO    ] 200
[2026-06-13 00:19:08,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:08,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:08,778.778 INFO    ] No update needed
[2026-06-13 00:19:08,780.780 INFO    ] Checking for camera pi updates...
[2026-06-13 00:19:08,799.799 INFO    ] 200
[2026-06-13 00:19:08,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:08,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:19:08,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:08,862.862 INFO    ] No camera update needed
[2026-06-13 00:19:08,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:19:08,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:19:08,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:19:08,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:19:10,910.910 INFO    ] ================================================
[2026-06-13 00:19:10,926.926 INFO    ] Launching Daemon at Sat Jun 13 00:19:10 IST 2026
[2026-06-13 00:19:10,937.937 INFO    ] ================================================
[2026-06-13 00:19:11,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:19:11
[2026-06-13 00:19:11,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:19:11,736.736 INFO    ] Initializing speech engine...
[2026-06-13 00:19:11,740.740 INFO    ] 2026-06-13 00:19:11
[2026-06-13 00:19:11,944.944 INFO    ] 2026-06-13 00:19:11
[2026-06-13 00:19:11,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:19:12,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:19:12,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:19:12,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:19:12,349.349 INFO    ] time= 13/06/2026 00:19:12
[2026-06-13 00:19:12,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:19:12,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:19:12,457.457 INFO    ] No existing commands found in stream
[2026-06-13 00:19:17,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:19:17,471.471 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 00:19:20,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:19:20,825.825 INFO    ] Checking for system updates...
[2026-06-13 00:19:20,847.847 INFO    ] 200
[2026-06-13 00:19:20,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:20,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:19:20,881.881 INFO    ] No update needed
[2026-06-13 00:19:20,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 00:19:20,903.903 INFO    ] 200
[2026-06-13 00:19:20,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:20,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:19:20,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:19:20,965.965 INFO    ] No camera update needed
[2026-06-13 00:19:20,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:19:20,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:19:20,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:19:20,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:19:23,014.014 INFO    ] ================================================
[2026-06-13 00:19:23,030.030 INFO    ] Launching Daemon at Sat Jun 13 00:19:23 IST 2026
[2026-06-13 00:19:23,041.041 INFO    ] ================================================
[2026-06-13 00:19:23,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:19:23
[2026-06-13 00:19:23,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:19:23,888.888 INFO    ] Initializing speech engine...
[2026-06-13 00:19:23,892.892 INFO    ] 2026-06-13 00:19:23
[2026-06-13 00:19:24,099.099 INFO    ] 2026-06-13 00:19:24
[2026-06-13 00:19:24,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:19:24,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:19:24,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:19:24,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:19:24,519.519 INFO    ] time= 13/06/2026 00:19:24
[2026-06-13 00:19:24,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:19:24,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:19:24,615.615 INFO    ] No existing commands found in stream
[2026-06-13 00:19:29,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:19:29,630.630 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 00:19:32,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:19:32,350.350 INFO    ] Checking for system updates...
[2026-06-13 00:19:32,371.371 INFO    ] 200
[2026-06-13 00:19:32,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:32,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:19:32,407.407 INFO    ] No update needed
[2026-06-13 00:19:32,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 00:19:32,429.429 INFO    ] 200
[2026-06-13 00:19:32,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:32,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:19:32,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:19:32,480.480 INFO    ] No camera update needed
[2026-06-13 00:19:32,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:19:32,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:19:32,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:19:32,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:19:34,527.527 INFO    ] ================================================
[2026-06-13 00:19:34,543.543 INFO    ] Launching Daemon at Sat Jun 13 00:19:34 IST 2026
[2026-06-13 00:19:34,553.553 INFO    ] ================================================
[2026-06-13 00:19:34,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:19:34
[2026-06-13 00:19:35,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:19:35,330.330 INFO    ] Initializing speech engine...
[2026-06-13 00:19:35,338.338 INFO    ] 2026-06-13 00:19:35
[2026-06-13 00:19:35,555.555 INFO    ] 2026-06-13 00:19:35
[2026-06-13 00:19:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:19:35,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:19:35,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:19:35,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:19:35,960.960 INFO    ] time= 13/06/2026 00:19:35
[2026-06-13 00:19:35,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:19:36,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:19:36,075.075 INFO    ] No existing commands found in stream
[2026-06-13 00:19:41,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:19:41,089.089 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 00:19:42,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:19:42,740.740 INFO    ] Checking for system updates...
[2026-06-13 00:19:42,761.761 INFO    ] 200
[2026-06-13 00:19:42,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:42,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:42,794.794 INFO    ] No update needed
[2026-06-13 00:19:42,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 00:19:42,814.814 INFO    ] 200
[2026-06-13 00:19:42,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:42,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:19:42,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:42,885.885 INFO    ] No camera update needed
[2026-06-13 00:19:42,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:19:42,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:19:42,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:19:42,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:19:44,932.932 INFO    ] ================================================
[2026-06-13 00:19:44,947.947 INFO    ] Launching Daemon at Sat Jun 13 00:19:44 IST 2026
[2026-06-13 00:19:44,958.958 INFO    ] ================================================
[2026-06-13 00:19:45,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:19:45
[2026-06-13 00:19:45,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:19:45,779.779 INFO    ] Initializing speech engine...
[2026-06-13 00:19:45,784.784 INFO    ] 2026-06-13 00:19:45
[2026-06-13 00:19:45,988.988 INFO    ] 2026-06-13 00:19:45
[2026-06-13 00:19:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:19:46,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:19:46,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:19:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:19:46,398.398 INFO    ] time= 13/06/2026 00:19:46
[2026-06-13 00:19:46,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:19:46,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:19:46,509.509 INFO    ] No existing commands found in stream
[2026-06-13 00:19:51,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:19:51,523.523 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 00:19:53,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:19:53,285.285 INFO    ] Checking for system updates...
[2026-06-13 00:19:53,306.306 INFO    ] 200
[2026-06-13 00:19:53,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:53,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:53,341.341 INFO    ] No update needed
[2026-06-13 00:19:53,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 00:19:53,362.362 INFO    ] 200
[2026-06-13 00:19:53,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:19:53,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:19:53,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:19:53,427.427 INFO    ] No camera update needed
[2026-06-13 00:19:53,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:19:53,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:19:53,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:19:53,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:19:55,475.475 INFO    ] ================================================
[2026-06-13 00:19:55,490.490 INFO    ] Launching Daemon at Sat Jun 13 00:19:55 IST 2026
[2026-06-13 00:19:55,501.501 INFO    ] ================================================
[2026-06-13 00:19:55,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:19:55
[2026-06-13 00:19:56,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:19:56,804.804 INFO    ] Initializing speech engine...
[2026-06-13 00:19:56,814.814 INFO    ] 2026-06-13 00:19:56
[2026-06-13 00:19:57,070.070 INFO    ] 2026-06-13 00:19:57
[2026-06-13 00:19:57,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:19:57,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:19:57,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:19:57,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:19:57,424.424 INFO    ] time= 13/06/2026 00:19:57
[2026-06-13 00:19:57,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:19:57,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:19:57,502.502 INFO    ] No existing commands found in stream
[2026-06-13 00:20:02,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:20:02,514.514 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 00:20:08,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:20:08,637.637 INFO    ] Checking for system updates...
[2026-06-13 00:20:08,658.658 INFO    ] 200
[2026-06-13 00:20:08,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:08,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:20:08,701.701 INFO    ] No update needed
[2026-06-13 00:20:08,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 00:20:08,741.741 INFO    ] 200
[2026-06-13 00:20:08,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:08,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:20:08,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:20:08,824.824 INFO    ] No camera update needed
[2026-06-13 00:20:08,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:20:08,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:20:08,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:20:08,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:20:10,872.872 INFO    ] ================================================
[2026-06-13 00:20:10,887.887 INFO    ] Launching Daemon at Sat Jun 13 00:20:10 IST 2026
[2026-06-13 00:20:10,898.898 INFO    ] ================================================
[2026-06-13 00:20:11,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:20:11
[2026-06-13 00:20:11,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:20:11,707.707 INFO    ] Initializing speech engine...
[2026-06-13 00:20:11,720.720 INFO    ] 2026-06-13 00:20:11
[2026-06-13 00:20:11,937.937 INFO    ] 2026-06-13 00:20:11
[2026-06-13 00:20:11,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:20:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:20:12,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:20:12,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:20:12,357.357 INFO    ] time= 13/06/2026 00:20:12
[2026-06-13 00:20:12,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:20:12,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:20:12,487.487 INFO    ] No existing commands found in stream
[2026-06-13 00:20:17,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:20:17,501.501 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 00:20:18,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:20:18,980.980 INFO    ] Checking for system updates...
[2026-06-13 00:20:19,001.001 INFO    ] 200
[2026-06-13 00:20:19,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:19,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:20:19,035.035 INFO    ] No update needed
[2026-06-13 00:20:19,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 00:20:19,056.056 INFO    ] 200
[2026-06-13 00:20:19,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:19,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:20:19,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:20:19,125.125 INFO    ] No camera update needed
[2026-06-13 00:20:19,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:20:19,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:20:19,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:20:19,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:20:21,172.172 INFO    ] ================================================
[2026-06-13 00:20:21,188.188 INFO    ] Launching Daemon at Sat Jun 13 00:20:21 IST 2026
[2026-06-13 00:20:21,199.199 INFO    ] ================================================
[2026-06-13 00:20:21,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:20:21
[2026-06-13 00:20:21,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:20:21,984.984 INFO    ] Initializing speech engine...
[2026-06-13 00:20:21,990.990 INFO    ] 2026-06-13 00:20:21
[2026-06-13 00:20:22,196.196 INFO    ] 2026-06-13 00:20:22
[2026-06-13 00:20:22,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:20:22,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:20:22,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:20:22,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:20:22,612.612 INFO    ] time= 13/06/2026 00:20:22
[2026-06-13 00:20:22,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:20:22,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:20:22,720.720 INFO    ] No existing commands found in stream
[2026-06-13 00:20:27,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:20:27,733.733 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 00:20:30,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:20:30,799.799 INFO    ] Checking for system updates...
[2026-06-13 00:20:30,820.820 INFO    ] 200
[2026-06-13 00:20:30,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:30,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:20:30,853.853 INFO    ] No update needed
[2026-06-13 00:20:30,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 00:20:30,874.874 INFO    ] 200
[2026-06-13 00:20:30,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:30,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:20:31,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:20:31,044.044 INFO    ] No camera update needed
[2026-06-13 00:20:31,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:20:31,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:20:31,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:20:31,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:20:33,076.076 INFO    ] ================================================
[2026-06-13 00:20:33,085.085 INFO    ] Launching Daemon at Sat Jun 13 00:20:33 IST 2026
[2026-06-13 00:20:33,091.091 INFO    ] ================================================
[2026-06-13 00:20:33,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:20:33
[2026-06-13 00:20:33,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:20:33,903.903 INFO    ] Initializing speech engine...
[2026-06-13 00:20:33,911.911 INFO    ] 2026-06-13 00:20:33
[2026-06-13 00:20:34,114.114 INFO    ] 2026-06-13 00:20:34
[2026-06-13 00:20:34,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:20:34,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:20:34,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:20:34,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:20:34,534.534 INFO    ] time= 13/06/2026 00:20:34
[2026-06-13 00:20:34,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:20:34,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:20:34,629.629 INFO    ] No existing commands found in stream
[2026-06-13 00:20:39,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:20:39,643.643 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 00:20:41,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:20:41,910.910 INFO    ] Checking for system updates...
[2026-06-13 00:20:41,930.930 INFO    ] 200
[2026-06-13 00:20:41,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:41,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:20:41,963.963 INFO    ] No update needed
[2026-06-13 00:20:41,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 00:20:41,984.984 INFO    ] 200
[2026-06-13 00:20:41,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:42,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:20:42,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:20:42,054.054 INFO    ] No camera update needed
[2026-06-13 00:20:42,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:20:42,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:20:42,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:20:42,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:20:44,104.104 INFO    ] ================================================
[2026-06-13 00:20:44,119.119 INFO    ] Launching Daemon at Sat Jun 13 00:20:44 IST 2026
[2026-06-13 00:20:44,131.131 INFO    ] ================================================
[2026-06-13 00:20:44,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:20:44
[2026-06-13 00:20:44,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:20:44,994.994 INFO    ] Initializing speech engine...
[2026-06-13 00:20:45,009.009 INFO    ] 2026-06-13 00:20:44
[2026-06-13 00:20:45,221.221 INFO    ] 2026-06-13 00:20:45
[2026-06-13 00:20:45,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:20:45,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:20:45,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:20:45,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:20:45,639.639 INFO    ] time= 13/06/2026 00:20:45
[2026-06-13 00:20:45,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:20:45,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:20:45,745.745 INFO    ] No existing commands found in stream
[2026-06-13 00:20:50,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:20:50,760.760 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 00:20:54,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:20:54,185.185 INFO    ] Checking for system updates...
[2026-06-13 00:20:54,206.206 INFO    ] 200
[2026-06-13 00:20:54,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:54,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:20:54,242.242 INFO    ] No update needed
[2026-06-13 00:20:54,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 00:20:54,267.267 INFO    ] 200
[2026-06-13 00:20:54,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:20:54,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:20:54,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:20:54,339.339 INFO    ] No camera update needed
[2026-06-13 00:20:54,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:20:54,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:20:54,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:20:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:20:56,387.387 INFO    ] ================================================
[2026-06-13 00:20:56,402.402 INFO    ] Launching Daemon at Sat Jun 13 00:20:56 IST 2026
[2026-06-13 00:20:56,414.414 INFO    ] ================================================
[2026-06-13 00:20:56,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:20:56
[2026-06-13 00:20:57,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:20:57,259.259 INFO    ] Initializing speech engine...
[2026-06-13 00:20:57,265.265 INFO    ] 2026-06-13 00:20:57
[2026-06-13 00:20:57,473.473 INFO    ] 2026-06-13 00:20:57
[2026-06-13 00:20:57,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:20:57,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:20:57,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:20:57,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:20:57,863.863 INFO    ] time= 13/06/2026 00:20:57
[2026-06-13 00:20:57,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:20:57,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:20:58,000.000 INFO    ] No existing commands found in stream
[2026-06-13 00:21:03,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:03,031.031 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 00:21:05,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:21:05,203.203 INFO    ] Checking for system updates...
[2026-06-13 00:21:05,225.225 INFO    ] 200
[2026-06-13 00:21:05,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:05,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:21:05,259.259 INFO    ] No update needed
[2026-06-13 00:21:05,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:05,281.281 INFO    ] 200
[2026-06-13 00:21:05,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:05,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:05,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:21:05,353.353 INFO    ] No camera update needed
[2026-06-13 00:21:05,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:05,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:05,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:05,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:21:07,402.402 INFO    ] ================================================
[2026-06-13 00:21:07,418.418 INFO    ] Launching Daemon at Sat Jun 13 00:21:07 IST 2026
[2026-06-13 00:21:07,430.430 INFO    ] ================================================
[2026-06-13 00:21:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:21:07
[2026-06-13 00:21:08,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:21:08,270.270 INFO    ] Initializing speech engine...
[2026-06-13 00:21:08,276.276 INFO    ] 2026-06-13 00:21:08
[2026-06-13 00:21:08,482.482 INFO    ] 2026-06-13 00:21:08
[2026-06-13 00:21:08,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:21:08,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:21:08,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:21:08,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:21:08,908.908 INFO    ] time= 13/06/2026 00:21:08
[2026-06-13 00:21:08,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:21:08,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:21:09,008.008 INFO    ] No existing commands found in stream
[2026-06-13 00:21:14,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:14,022.022 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 00:21:16,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:21:16,634.634 INFO    ] Checking for system updates...
[2026-06-13 00:21:16,657.657 INFO    ] 200
[2026-06-13 00:21:16,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:16,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:16,691.691 INFO    ] No update needed
[2026-06-13 00:21:16,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:16,714.714 INFO    ] 200
[2026-06-13 00:21:16,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:16,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:16,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:16,785.785 INFO    ] No camera update needed
[2026-06-13 00:21:16,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:16,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:16,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:16,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:21:18,834.834 INFO    ] ================================================
[2026-06-13 00:21:18,849.849 INFO    ] Launching Daemon at Sat Jun 13 00:21:18 IST 2026
[2026-06-13 00:21:18,861.861 INFO    ] ================================================
[2026-06-13 00:21:19,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:21:19
[2026-06-13 00:21:19,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:21:19,668.668 INFO    ] Initializing speech engine...
[2026-06-13 00:21:19,680.680 INFO    ] 2026-06-13 00:21:19
[2026-06-13 00:21:19,886.886 INFO    ] 2026-06-13 00:21:19
[2026-06-13 00:21:19,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:21:20,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:21:20,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:21:20,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:21:20,279.279 INFO    ] time= 13/06/2026 00:21:20
[2026-06-13 00:21:20,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:21:20,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:21:20,499.499 INFO    ] No existing commands found in stream
[2026-06-13 00:21:25,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:25,533.533 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 00:21:25,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:21:25,934.934 INFO    ] Checking for system updates...
[2026-06-13 00:21:25,955.955 INFO    ] 200
[2026-06-13 00:21:25,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:25,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:21:25,990.990 INFO    ] No update needed
[2026-06-13 00:21:25,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:26,015.015 INFO    ] 200
[2026-06-13 00:21:26,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:26,043.043 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:26,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:26,091.091 INFO    ] No camera update needed
[2026-06-13 00:21:26,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:26,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:26,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:26,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:21:28,139.139 INFO    ] ================================================
[2026-06-13 00:21:28,155.155 INFO    ] Launching Daemon at Sat Jun 13 00:21:28 IST 2026
[2026-06-13 00:21:28,166.166 INFO    ] ================================================
[2026-06-13 00:21:28,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:21:28
[2026-06-13 00:21:28,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:21:29,046.046 INFO    ] Initializing speech engine...
[2026-06-13 00:21:29,051.051 INFO    ] 2026-06-13 00:21:29
[2026-06-13 00:21:29,255.255 INFO    ] 2026-06-13 00:21:29
[2026-06-13 00:21:29,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:21:29,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:21:29,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:21:29,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:21:29,647.647 INFO    ] time= 13/06/2026 00:21:29
[2026-06-13 00:21:29,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:21:29,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:21:29,773.773 INFO    ] No existing commands found in stream
[2026-06-13 00:21:34,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:34,787.787 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 00:21:36,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:21:36,398.398 INFO    ] Checking for system updates...
[2026-06-13 00:21:36,419.419 INFO    ] 200
[2026-06-13 00:21:36,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:36,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:36,457.457 INFO    ] No update needed
[2026-06-13 00:21:36,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:36,479.479 INFO    ] 200
[2026-06-13 00:21:36,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:36,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:36,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:36,552.552 INFO    ] No camera update needed
[2026-06-13 00:21:36,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:36,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:36,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:36,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:21:38,601.601 INFO    ] ================================================
[2026-06-13 00:21:38,617.617 INFO    ] Launching Daemon at Sat Jun 13 00:21:38 IST 2026
[2026-06-13 00:21:38,628.628 INFO    ] ================================================
[2026-06-13 00:21:38,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:21:38
[2026-06-13 00:21:39,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:21:39,431.431 INFO    ] Initializing speech engine...
[2026-06-13 00:21:39,437.437 INFO    ] 2026-06-13 00:21:39
[2026-06-13 00:21:39,639.639 INFO    ] 2026-06-13 00:21:39
[2026-06-13 00:21:39,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:21:39,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:21:39,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:21:39,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:21:40,053.053 INFO    ] time= 13/06/2026 00:21:39
[2026-06-13 00:21:40,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:21:40,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:21:40,152.152 INFO    ] No existing commands found in stream
[2026-06-13 00:21:45,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:45,163.163 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 00:21:46,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:21:46,936.936 INFO    ] Checking for system updates...
[2026-06-13 00:21:46,957.957 INFO    ] 200
[2026-06-13 00:21:46,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:46,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:46,993.993 INFO    ] No update needed
[2026-06-13 00:21:46,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:47,018.018 INFO    ] 200
[2026-06-13 00:21:47,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:47,046.046 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:47,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:21:47,085.085 INFO    ] No camera update needed
[2026-06-13 00:21:47,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:47,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:47,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:47,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:21:49,135.135 INFO    ] ================================================
[2026-06-13 00:21:49,151.151 INFO    ] Launching Daemon at Sat Jun 13 00:21:49 IST 2026
[2026-06-13 00:21:49,162.162 INFO    ] ================================================
[2026-06-13 00:21:49,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:21:49
[2026-06-13 00:21:49,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:21:49,950.950 INFO    ] Initializing speech engine...
[2026-06-13 00:21:49,955.955 INFO    ] 2026-06-13 00:21:49
[2026-06-13 00:21:50,161.161 INFO    ] 2026-06-13 00:21:50
[2026-06-13 00:21:50,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:21:50,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:21:50,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:21:50,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:21:50,567.567 INFO    ] time= 13/06/2026 00:21:50
[2026-06-13 00:21:50,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:21:50,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:21:50,709.709 INFO    ] No existing commands found in stream
[2026-06-13 00:21:55,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:21:55,721.721 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 00:21:58,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:21:58,156.156 INFO    ] Checking for system updates...
[2026-06-13 00:21:58,176.176 INFO    ] 200
[2026-06-13 00:21:58,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:58,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:21:58,209.209 INFO    ] No update needed
[2026-06-13 00:21:58,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 00:21:58,230.230 INFO    ] 200
[2026-06-13 00:21:58,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:21:58,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:21:58,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:21:58,294.294 INFO    ] No camera update needed
[2026-06-13 00:21:58,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:21:58,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:21:58,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:21:58,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:22:00,342.342 INFO    ] ================================================
[2026-06-13 00:22:00,357.357 INFO    ] Launching Daemon at Sat Jun 13 00:22:00 IST 2026
[2026-06-13 00:22:00,368.368 INFO    ] ================================================
[2026-06-13 00:22:00,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:22:00
[2026-06-13 00:22:01,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:22:01,895.895 INFO    ] Initializing speech engine...
[2026-06-13 00:22:01,913.913 INFO    ] 2026-06-13 00:22:01
[2026-06-13 00:22:02,276.276 INFO    ] 2026-06-13 00:22:02
[2026-06-13 00:22:02,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:22:02,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:22:02,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:22:02,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:22:02,685.685 INFO    ] time= 13/06/2026 00:22:02
[2026-06-13 00:22:02,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:22:02,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:22:02,760.760 INFO    ] No existing commands found in stream
[2026-06-13 00:22:07,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:22:07,771.771 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 00:22:09,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:22:09,875.875 INFO    ] Checking for system updates...
[2026-06-13 00:22:09,896.896 INFO    ] 200
[2026-06-13 00:22:09,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:09,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:22:09,930.930 INFO    ] No update needed
[2026-06-13 00:22:09,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 00:22:09,950.950 INFO    ] 200
[2026-06-13 00:22:09,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:09,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:22:10,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:22:10,014.014 INFO    ] No camera update needed
[2026-06-13 00:22:10,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:22:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:22:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:22:10,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:22:12,062.062 INFO    ] ================================================
[2026-06-13 00:22:12,077.077 INFO    ] Launching Daemon at Sat Jun 13 00:22:12 IST 2026
[2026-06-13 00:22:12,087.087 INFO    ] ================================================
[2026-06-13 00:22:12,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:22:12
[2026-06-13 00:22:12,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:22:12,934.934 INFO    ] Initializing speech engine...
[2026-06-13 00:22:12,941.941 INFO    ] 2026-06-13 00:22:12
[2026-06-13 00:22:13,148.148 INFO    ] 2026-06-13 00:22:13
[2026-06-13 00:22:13,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:22:13,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:22:13,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:22:13,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:22:13,552.552 INFO    ] time= 13/06/2026 00:22:13
[2026-06-13 00:22:13,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:22:13,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:22:13,662.662 INFO    ] No existing commands found in stream
[2026-06-13 00:22:17,883.883 INFO    ] Received new command: ID=1781290337677-0
[2026-06-13 00:22:17,885.885 INFO    ] process_and_cleanup_command: msg_id=1781290337677-0
[2026-06-13 00:22:17,888.888 INFO    ] is_command_expired: timestamp=2026-06-12T18:52:17.465Z, expiry=30s
[2026-06-13 00:22:17,966.966 INFO    ] Command removed from stream: 1781290337677-0. returning for processing...
[2026-06-13 00:22:17,969.969 INFO    ] ***** get_valid_command
[2026-06-13 00:22:17,972.972 INFO    ] {'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-12T18:52:17.465Z', 'source': 'webapp', 'data': '{"request_id":"start-order-1781290337465-nd3wcryd4","orderId":"TM08202203260613002139463","is_vending":false}'}
[2026-06-13 00:22:17,975.975 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781290337465-nd3wcryd4', 'orderId': 'TM08202203260613002139463'}
[2026-06-13 00:22:17,977.977 INFO    ] Handling start order...
[2026-06-13 00:22:17,980.980 INFO    ] handle_start_order_command
[2026-06-13 00:22:17,989.989 INFO    ] _send_start_order_success: request_id=start-order-1781290337465-nd3wcryd4, order_id=TM08202203260613002139463
[2026-06-13 00:22:17,991.991 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:22:18,039.039 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781290338018-0
[2026-06-13 00:22:18,040.040 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:22:18,042.042 INFO    ] Checking for system updates...
[2026-06-13 00:22:18,066.066 INFO    ] 200
[2026-06-13 00:22:18,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:18,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:22:18,102.102 INFO    ] No update needed
[2026-06-13 00:22:18,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 00:22:18,122.122 INFO    ] 200
[2026-06-13 00:22:18,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:18,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:22:18,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:22:18,185.185 INFO    ] No camera update needed
[2026-06-13 00:22:18,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:22:18,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:22:18,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:22:18,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:22:20,231.231 INFO    ] ================================================
[2026-06-13 00:22:20,246.246 INFO    ] Launching Daemon at Sat Jun 13 00:22:20 IST 2026
[2026-06-13 00:22:20,257.257 INFO    ] ================================================
[2026-06-13 00:22:20,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:22:20
[2026-06-13 00:22:20,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:22:21,027.027 INFO    ] Initializing speech engine...
[2026-06-13 00:22:21,035.035 INFO    ] 2026-06-13 00:22:21
[2026-06-13 00:22:21,243.243 INFO    ] 2026-06-13 00:22:21
[2026-06-13 00:22:21,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:22:21,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:22:21,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:22:21,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:22:21,675.675 INFO    ] time= 13/06/2026 00:22:21
[2026-06-13 00:22:21,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:22:21,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:22:21,776.776 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 00:22:21,778.778 INFO    ] Checking historical command: ID=1781290338018-0
[2026-06-13 00:22:21,804.804 INFO    ] process_and_cleanup_command: msg_id=1781290338018-0
[2026-06-13 00:22:21,805.805 INFO    ] is_command_expired: timestamp=2026-06-12T18:52:17.990253Z, expiry=30s
[2026-06-13 00:22:21,918.918 INFO    ] Command removed from stream: 1781290338018-0. returning for processing...
[2026-06-13 00:22:21,921.921 INFO    ] ***** get_valid_command
[2026-06-13 00:22:21,926.926 INFO    ] {'metadata_request_id': 'start-order-1781290337465-nd3wcryd4', 'metadata_order_id': 'TM08202203260613002139463', 'imei': 'TM08202203', 'message_type': 'command_response', 'status': 'success', 'message': 'start-order success', 'timestamp': '2026-06-12T18:52:17.990253Z'}
[2026-06-13 00:22:21,930.930 INFO    ] Checking historical command: ID=1781290339953-0
[2026-06-13 00:22:21,934.934 INFO    ] process_and_cleanup_command: msg_id=1781290339953-0
[2026-06-13 00:22:21,936.936 INFO    ] is_command_expired: timestamp=2026-06-12T18:52:19.835Z, expiry=30s
[2026-06-13 00:22:21,979.979 INFO    ] Command removed from stream: 1781290339953-0. returning for processing...
[2026-06-13 00:22:21,982.982 INFO    ] ***** get_valid_command
[2026-06-13 00:22:21,984.984 INFO    ] {'timeout': '60', 'timestamp': '2026-06-12T18:52:19.835Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781290339835-ue7l2jrtr","orderId":"TM08202203260613002139463","is_vending":false,"accessCode":"95709277"}', 'command': 'process-order'}
[2026-06-13 00:22:21,988.988 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781290339835-ue7l2jrtr', 'accessCode': '95709277', 'is_vending': False, 'orderId': 'TM08202203260613002139463'}
[2026-06-13 00:22:21,990.990 INFO    ] Handling process order...
[2026-06-13 00:22:21,993.993 INFO    ] Processing process-order command...
[2026-06-13 00:22:21,996.996 INFO    ] 🔍 Lock file Order ID: TM08202203260613002139463, TS: 2026-06-13 00:22:17
[2026-06-13 00:22:22,005.005 INFO    ] ✅ Order lock valid for TM08202203260613002139463
[2026-06-13 00:22:22,008.008 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 00:22:22,010.010 INFO    ] processing access code 95709277 for order TM08202203260613002139463
[2026-06-13 00:22:22,014.014 INFO    ] 🔍 Lock file Order ID: TM08202203260613002139463, TS: 2026-06-13 00:22:17
[2026-06-13 00:22:22,017.017 INFO    ] ✅ Order lock valid for TM08202203260613002139463
[2026-06-13 00:22:22,020.020 INFO    ] 2026-06-13 00:22:22
[2026-06-13 00:22:22,050.050 INFO    ] 200
[2026-06-13 00:22:22,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:22,057.057 INFO    ] 95709277
[2026-06-13 00:22:22,061.061 INFO    ] 2026-06-13 00:22:22
[2026-06-13 00:22:22,065.065 INFO    ] session id :944271408
[2026-06-13 00:22:22,069.069 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=95709277&imei=TM08202203&session_id=944271408
[2026-06-13 00:22:23,093.093 INFO    ] 200
[2026-06-13 00:22:23,104.104 INFO    ] {"data": {"mobile": "9361861764", "order_id": "TM08202203260613002139463", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Bingo Chips Chilli Sprinkled 30gm", "tray_id": "24", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "95709277", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 00:22:23,131.131 INFO    ] 20
[2026-06-13 00:22:23,155.155 INFO    ] TM08202203260613002139463
[2026-06-13 00:22:23,206.206 INFO    ] 9361861764
[2026-06-13 00:22:23,217.217 INFO    ] 2026-06-13 00:22:23
[2026-06-13 00:22:23,226.226 INFO    ] Door Opening for user mobile ending with  one seven six four 
[2026-06-13 00:22:23,236.236 INFO    ] Door Opening for user mobile ending with  one seven six four 
[2026-06-13 00:22:23,250.250 INFO    ] 9c26a34790c5845c27f55e7654fd27aa
[2026-06-13 00:22:23,285.285 INFO    ] 2026-06-13 00:22:23
[2026-06-13 00:22:23,293.293 INFO    ] playing audio file
[2026-06-13 00:22:23,330.330 INFO    ] 2026-06-13 00:22:23
[2026-06-13 00:22:23,336.336 INFO    ] 2026-06-13 00:22:23
[2026-06-13 00:22:23,347.347 INFO    ] publish_status: order_id=TM08202203260613002139463
[2026-06-13 00:22:23,354.354 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613002139463
[2026-06-13 00:22:23,471.471 INFO    ] [publish_status] Message added to stream with ID: 1781290343391-0
[2026-06-13 00:22:23,523.523 INFO    ] Published to order:TM08202203260613002139463: {'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"bill_amount": "20", "mobile": "9361861764", "access_code": "95709277", "proposed_sku_json": [{"name": "Bingo Chips Chilli Sprinkled 30gm", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "mrp": "20", "skuid": "4500452", "offer_id": "", "door_id": "1", "sku_total": 20, "offer_desc": "", "tray_id": "24", "qty": 1}], "order_id": "TM08202203260613002139463", "invoice_bill": "20"}, "status": true}', 'order_id': 'TM08202203260613002139463', 'timestamp': '2026-06-12T18:52:23.338335Z', 'server_status': 'order-started'} (ID: 1781290343391-0)
[2026-06-13 00:22:23,964.964 INFO    ] {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '20', 'mobile': '9361861764', 'access_code': '95709277', 'proposed_sku_json': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'offer_id': '', 'door_id': '1', 'sku_total': 20, 'offer_desc': '', 'tray_id': '24', 'qty': 1}], 'order_id': 'TM08202203260613002139463', 'invoice_bill': '20'}, 'status': True}, 'order_id': 'TM08202203260613002139463', 'server_status': 'order-started'}
[2026-06-13 00:22:23,967.967 INFO    ] 200
[2026-06-13 00:22:23,970.970 INFO    ] {"data":{"server_response":{"rstatus":true,"msg":"Order Data","data":{"bill_amount":"20","mobile":"9361861764","access_code":"95709277","proposed_sku_json":[{"name":"Bingo Chips Chilli Sprinkled 30gm","unit_price":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","mrp":"20","skuid":"4500452","offer_id":"","door_id":"1","sku_total":20,"offer_desc":"","tray_id":"24","qty":1}],"order_id":"TM08202203260613002139463","invoice_bill":"20"},"status":true},"order_id":"TM08202203260613002139463","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:22:23,973.973 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'data': {'bill_amount': '20', 'mobile': '9361861764', 'access_code': '95709277', 'proposed_sku_json': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '1', 'offer_id': '', 'qty': 1, 'offer_desc': '', 'tray_id': '24', 'sku_total': 20}], 'order_id': 'TM08202203260613002139463', 'invoice_bill': '20'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613002139463', 'server_status': 'order-started'}}
[2026-06-13 00:22:23,976.976 INFO    ] 2026-06-13 00:22:23
[2026-06-13 00:22:24,021.021 INFO    ] 200
[2026-06-13 00:22:24,024.024 INFO    ] True
[2026-06-13 00:22:24,196.196 INFO    ] 200
[2026-06-13 00:22:24,198.198 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 00:22:24,202.202 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'False', 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 00:22:24,204.204 INFO    ] *** process_order ***
[2026-06-13 00:22:25,352.352 INFO    ] 200
[2026-06-13 00:22:25,353.353 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:22:25,355.355 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 00:22:25,356.356 INFO    ] *** process_order ***
[2026-06-13 00:22:25,358.358 INFO    ] publish_status: order_id=TM08202203260613002139463
[2026-06-13 00:22:25,359.359 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613002139463
[2026-06-13 00:22:25,454.454 INFO    ] [publish_status] Message added to stream with ID: 1781290345433-0
[2026-06-13 00:22:25,456.456 INFO    ] Published to order:TM08202203260613002139463: {'server_response': '{"voiceNote": "Door is open...", "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613002139463', 'server_status': 'doorOpened'} (ID: 1781290345433-0)
[2026-06-13 00:22:26,500.500 INFO    ] 2026-06-13 00:22:26
[2026-06-13 00:22:26,503.503 INFO    ] publish_status: order_id=TM08202203260613002139463
[2026-06-13 00:22:26,506.506 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613002139463
[2026-06-13 00:22:26,566.566 INFO    ] [publish_status] Message added to stream with ID: 1781290346545-0
[2026-06-13 00:22:26,569.569 INFO    ] Published to order:TM08202203260613002139463: {'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "status": "True", "voiceNote": "Please Wait", "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613002139463', 'timestamp': '2026-06-12T18:52:26.501473Z', 'server_status': 'processOrder'} (ID: 1781290346545-0)
[2026-06-13 00:22:26,672.672 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613002139463', 'server_status': 'processOrder'}
[2026-06-13 00:22:26,675.675 INFO    ] 200
[2026-06-13 00:22:26,678.678 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"status":"true","voiceNote":"Please Wait","rstatus":true,"delay":0,"SectionMain":{"Header":"Processing Order"}},"order_id":"TM08202203260613002139463","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:22:26,682.682 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613002139463', 'server_status': 'processOrder'}}
[2026-06-13 00:22:26,685.685 INFO    ] 2026-06-13 00:22:26
[2026-06-13 00:22:26,687.687 INFO    ] None
[2026-06-13 00:22:26,690.690 INFO    ] Opening Door now
[2026-06-13 00:22:26,694.694 INFO    ] Opening Door now
[2026-06-13 00:22:26,696.696 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 00:22:26,699.699 INFO    ] 2026-06-13 00:22:26
[2026-06-13 00:22:26,702.702 INFO    ] playing audio file
[2026-06-13 00:22:26,714.714 INFO    ] 2026-06-13 00:22:26
[2026-06-13 00:22:26,716.716 INFO    ] 2026-06-13 00:22:26
[2026-06-13 00:22:29,834.834 INFO    ] 200
[2026-06-13 00:22:29,837.837 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:22:29,840.840 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'voiceNote': 'Door 1 is open now', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 00:22:32,925.925 INFO    ] 200
[2026-06-13 00:22:32,926.926 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:22:32,928.928 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 00:22:35,990.990 INFO    ] 200
[2026-06-13 00:22:35,993.993 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:22:35,996.996 INFO    ] Please close door 1
[2026-06-13 00:22:35,999.999 INFO    ] Please close door 1
[2026-06-13 00:22:36,002.002 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 00:22:36,004.004 INFO    ] 2026-06-13 00:22:36
[2026-06-13 00:22:36,007.007 INFO    ] playing audio file
[2026-06-13 00:22:36,027.027 INFO    ] 2026-06-13 00:22:36
[2026-06-13 00:22:36,031.031 INFO    ] publish_status: order_id=TM08202203260613002139463
[2026-06-13 00:22:36,034.034 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613002139463
[2026-06-13 00:22:36,088.088 INFO    ] [publish_status] Message added to stream with ID: 1781290356066-0
[2026-06-13 00:22:36,091.091 INFO    ] Published to order:TM08202203260613002139463: {'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Bingo Chips Chilli Sprinkled 30gm", "qty": 1}]}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionStatus": {"Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613002139463', 'timestamp': '2026-06-12T18:52:36.029263Z', 'server_status': 'OrderStatus'} (ID: 1781290356066-0)
[2026-06-13 00:22:36,465.465 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613002139463', 'server_status': 'OrderStatus'}
[2026-06-13 00:22:36,466.466 INFO    ] 200
[2026-06-13 00:22:36,467.467 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Bingo Chips Chilli Sprinkled 30gm","qty":1}]},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionStatus":{"Header":"Please Close Door 1","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"status":"false","voiceNote":"Please close door 1","rstatus":false,"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613002139463","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:22:36,469.469 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613002139463', 'server_status': 'OrderStatus'}}
[2026-06-13 00:22:36,471.471 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 00:22:39,511.511 INFO    ] 200
[2026-06-13 00:22:39,513.513 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:22:39,515.515 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 00:22:39,516.516 INFO    ] 2026-06-13 00:22:39
[2026-06-13 00:22:39,518.518 INFO    ] Order Completed 
[2026-06-13 00:22:39,519.519 INFO    ] Order Completed 
[2026-06-13 00:22:39,521.521 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 00:22:39,523.523 INFO    ] 2026-06-13 00:22:39
[2026-06-13 00:22:39,524.524 INFO    ] playing audio file
[2026-06-13 00:22:39,536.536 INFO    ] 2026-06-13 00:22:39
[2026-06-13 00:22:39,538.538 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 00:22:39,540.540 INFO    ] 2026-06-13 00:22:39
[2026-06-13 00:22:40,288.288 INFO    ] 200
[2026-06-13 00:22:40,290.290 INFO    ] {"res": "True", "orderId": "TM08202203260613002139463", "skus": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "", "tray_id": "24", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 00:22:40,292.292 INFO    ] {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613002139463', 'total_amount': 20.0, 'anomaly': 0, 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '', 'sku_total': 20.0, 'tray_id': '24', 'qty': 1}], 'res': 'True'}
[2026-06-13 00:22:40,294.294 INFO    ] {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613002139463', 'total_amount': 20.0, 'anomaly': 0, 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '', 'sku_total': 20.0, 'tray_id': '24', 'qty': 1}], 'res': 'True'}
[2026-06-13 00:22:40,295.295 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,296.296 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,298.298 INFO    ] 20
[2026-06-13 00:22:40,300.300 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,301.301 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,302.302 INFO    ]  Your Bill Amount is 20
[2026-06-13 00:22:40,304.304 INFO    ]  Your Bill Amount is 20
[2026-06-13 00:22:40,305.305 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 00:22:40,307.307 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,308.308 INFO    ] playing audio file
[2026-06-13 00:22:40,320.320 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,322.322 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:40,324.324 INFO    ] publish_status: order_id=TM08202203260613002139463
[2026-06-13 00:22:40,326.326 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613002139463
[2026-06-13 00:22:40,405.405 INFO    ] [publish_status] Message added to stream with ID: 1781290360385-0
[2026-06-13 00:22:40,406.406 INFO    ] Published to order:TM08202203260613002139463: {'server_response': '{"logic": "WBL", "rstatus": true, "orderId": "TM08202203260613002139463", "total_amount": 20.0, "anomaly": 0, "skus": [{"name": "Bingo Chips Chilli Sprinkled 30gm per peice", "unit_price": "20", "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "mrp": "20", "skuid": "4500452", "door_id": "", "sku_total": 20.0, "tray_id": "24", "qty": 1}], "res": "True"}', 'order_id': 'TM08202203260613002139463', 'timestamp': '2026-06-12T18:52:40.323235Z', 'server_status': 'invoiceOrder'} (ID: 1781290360385-0)
[2026-06-13 00:22:40,512.512 INFO    ] {'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613002139463', 'total_amount': 20.0, 'anomaly': 0, 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '', 'sku_total': 20.0, 'tray_id': '24', 'qty': 1}], 'res': 'True'}, 'order_id': 'TM08202203260613002139463', 'server_status': 'invoiceOrder'}
[2026-06-13 00:22:40,513.513 INFO    ] 200
[2026-06-13 00:22:40,515.515 INFO    ] {"data":{"server_response":{"logic":"WBL","rstatus":true,"orderId":"TM08202203260613002139463","total_amount":20,"anomaly":0,"skus":[{"name":"Bingo Chips Chilli Sprinkled 30gm per peice","unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","mrp":"20","skuid":"4500452","door_id":"","sku_total":20,"tray_id":"24","qty":1}],"res":"true"},"order_id":"TM08202203260613002139463","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:22:40,516.516 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM08202203260613002139463', 'rstatus': True, 'anomaly': 0, 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '', 'qty': 1, 'tray_id': '24', 'sku_total': 20}], 'res': 'true'}, 'order_id': 'TM08202203260613002139463', 'server_status': 'invoiceOrder'}}
[2026-06-13 00:22:40,518.518 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM08202203260613002139463', 'rstatus': True, 'anomaly': 0, 'skus': [{'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'mrp': '20', 'skuid': '4500452', 'door_id': '', 'qty': 1, 'tray_id': '24', 'sku_total': 20}], 'res': 'true'}, 'order_id': 'TM08202203260613002139463', 'server_status': 'invoiceOrder'}}
[2026-06-13 00:22:40,519.519 INFO    ] 2026-06-13 00:22:40
[2026-06-13 00:22:43,840.840 INFO    ] 200
[2026-06-13 00:22:43,842.842 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463", "TM08202203260613002139463"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 00:22:43,845.845 INFO    ] 2026-06-13 00:22:43
[2026-06-13 00:22:43,986.986 INFO    ] 200
[2026-06-13 00:22:43,989.989 INFO    ] True
[2026-06-13 00:22:43,992.992 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613002139463
[2026-06-13 00:22:43,996.996 INFO    ] start order file deleted
[2026-06-13 00:22:43,999.999 INFO    ] Checking for system updates...
[2026-06-13 00:22:44,037.037 INFO    ] 200
[2026-06-13 00:22:44,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:44,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:22:44,083.083 INFO    ] No update needed
[2026-06-13 00:22:44,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 00:22:44,114.114 INFO    ] 200
[2026-06-13 00:22:44,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:44,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:22:44,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:22:44,274.274 INFO    ] No camera update needed
[2026-06-13 00:22:44,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:22:44,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:22:44,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:22:44,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:22:46,319.319 INFO    ] ================================================
[2026-06-13 00:22:46,334.334 INFO    ] Launching Daemon at Sat Jun 13 00:22:46 IST 2026
[2026-06-13 00:22:46,345.345 INFO    ] ================================================
[2026-06-13 00:22:46,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:22:46
[2026-06-13 00:22:47,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:22:47,160.160 INFO    ] Initializing speech engine...
[2026-06-13 00:22:47,165.165 INFO    ] 2026-06-13 00:22:47
[2026-06-13 00:22:47,368.368 INFO    ] 2026-06-13 00:22:47
[2026-06-13 00:22:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:22:47,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:22:47,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:22:47,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:22:47,778.778 INFO    ] time= 13/06/2026 00:22:47
[2026-06-13 00:22:47,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:22:47,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:22:47,882.882 INFO    ] No existing commands found in stream
[2026-06-13 00:22:52,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:22:52,895.895 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 00:22:56,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:22:56,369.369 INFO    ] Checking for system updates...
[2026-06-13 00:22:56,391.391 INFO    ] 200
[2026-06-13 00:22:56,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:56,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:22:56,424.424 INFO    ] No update needed
[2026-06-13 00:22:56,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 00:22:56,445.445 INFO    ] 200
[2026-06-13 00:22:56,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:22:56,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:22:56,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:22:56,515.515 INFO    ] No camera update needed
[2026-06-13 00:22:56,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:22:56,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:22:56,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:22:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:22:58,562.562 INFO    ] ================================================
[2026-06-13 00:22:58,577.577 INFO    ] Launching Daemon at Sat Jun 13 00:22:58 IST 2026
[2026-06-13 00:22:58,588.588 INFO    ] ================================================
[2026-06-13 00:22:58,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:22:58
[2026-06-13 00:22:59,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:22:59,402.402 INFO    ] Initializing speech engine...
[2026-06-13 00:22:59,411.411 INFO    ] 2026-06-13 00:22:59
[2026-06-13 00:22:59,619.619 INFO    ] 2026-06-13 00:22:59
[2026-06-13 00:22:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:22:59,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:22:59,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:22:59,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:00,043.043 INFO    ] time= 13/06/2026 00:22:59
[2026-06-13 00:23:00,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:00,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:00,140.140 INFO    ] No existing commands found in stream
[2026-06-13 00:23:05,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:23:05,153.153 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 00:23:06,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:23:06,199.199 INFO    ] Checking for system updates...
[2026-06-13 00:23:06,221.221 INFO    ] 200
[2026-06-13 00:23:06,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:06,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:23:06,255.255 INFO    ] No update needed
[2026-06-13 00:23:06,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 00:23:06,277.277 INFO    ] 200
[2026-06-13 00:23:06,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:06,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:23:06,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:23:06,352.352 INFO    ] No camera update needed
[2026-06-13 00:23:06,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:23:06,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:23:06,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:23:06,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:23:08,399.399 INFO    ] ================================================
[2026-06-13 00:23:08,414.414 INFO    ] Launching Daemon at Sat Jun 13 00:23:08 IST 2026
[2026-06-13 00:23:08,425.425 INFO    ] ================================================
[2026-06-13 00:23:08,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:23:08
[2026-06-13 00:23:09,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:23:09,279.279 INFO    ] Initializing speech engine...
[2026-06-13 00:23:09,290.290 INFO    ] 2026-06-13 00:23:09
[2026-06-13 00:23:09,497.497 INFO    ] 2026-06-13 00:23:09
[2026-06-13 00:23:09,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:23:09,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:23:09,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:23:09,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:09,901.901 INFO    ] time= 13/06/2026 00:23:09
[2026-06-13 00:23:09,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:09,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:10,011.011 INFO    ] No existing commands found in stream
[2026-06-13 00:23:15,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:23:15,039.039 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 00:23:16,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:23:16,962.962 INFO    ] Checking for system updates...
[2026-06-13 00:23:16,983.983 INFO    ] 200
[2026-06-13 00:23:16,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:17,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:17,016.016 INFO    ] No update needed
[2026-06-13 00:23:17,018.018 INFO    ] Checking for camera pi updates...
[2026-06-13 00:23:17,038.038 INFO    ] 200
[2026-06-13 00:23:17,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:17,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:23:17,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:17,106.106 INFO    ] No camera update needed
[2026-06-13 00:23:17,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:23:17,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:23:17,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:23:17,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:23:19,153.153 INFO    ] ================================================
[2026-06-13 00:23:19,168.168 INFO    ] Launching Daemon at Sat Jun 13 00:23:19 IST 2026
[2026-06-13 00:23:19,179.179 INFO    ] ================================================
[2026-06-13 00:23:19,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:23:19
[2026-06-13 00:23:19,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:23:19,961.961 INFO    ] Initializing speech engine...
[2026-06-13 00:23:19,969.969 INFO    ] 2026-06-13 00:23:19
[2026-06-13 00:23:20,182.182 INFO    ] 2026-06-13 00:23:20
[2026-06-13 00:23:20,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:23:20,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:23:20,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:23:20,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:20,587.587 INFO    ] time= 13/06/2026 00:23:20
[2026-06-13 00:23:20,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:20,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:20,698.698 INFO    ] No existing commands found in stream
[2026-06-13 00:23:25,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:23:25,720.720 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 00:23:27,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:23:27,250.250 INFO    ] Checking for system updates...
[2026-06-13 00:23:27,271.271 INFO    ] 200
[2026-06-13 00:23:27,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:27,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:27,305.305 INFO    ] No update needed
[2026-06-13 00:23:27,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 00:23:27,326.326 INFO    ] 200
[2026-06-13 00:23:27,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:27,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:23:27,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:27,394.394 INFO    ] No camera update needed
[2026-06-13 00:23:27,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:23:27,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:23:27,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:23:27,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:23:29,440.440 INFO    ] ================================================
[2026-06-13 00:23:29,455.455 INFO    ] Launching Daemon at Sat Jun 13 00:23:29 IST 2026
[2026-06-13 00:23:29,465.465 INFO    ] ================================================
[2026-06-13 00:23:29,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:23:29
[2026-06-13 00:23:30,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:23:30,264.264 INFO    ] Initializing speech engine...
[2026-06-13 00:23:30,270.270 INFO    ] 2026-06-13 00:23:30
[2026-06-13 00:23:30,476.476 INFO    ] 2026-06-13 00:23:30
[2026-06-13 00:23:30,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:23:30,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:23:30,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:23:30,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:30,881.881 INFO    ] time= 13/06/2026 00:23:30
[2026-06-13 00:23:30,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:30,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:30,997.997 INFO    ] No existing commands found in stream
[2026-06-13 00:23:36,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:23:36,011.011 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 00:23:40,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:23:40,105.105 INFO    ] Checking for system updates...
[2026-06-13 00:23:40,127.127 INFO    ] 200
[2026-06-13 00:23:40,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:40,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:40,162.162 INFO    ] No update needed
[2026-06-13 00:23:40,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 00:23:40,184.184 INFO    ] 200
[2026-06-13 00:23:40,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:40,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:23:40,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:23:40,247.247 INFO    ] No camera update needed
[2026-06-13 00:23:40,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:23:40,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:23:40,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:23:40,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:23:42,294.294 INFO    ] ================================================
[2026-06-13 00:23:42,309.309 INFO    ] Launching Daemon at Sat Jun 13 00:23:42 IST 2026
[2026-06-13 00:23:42,320.320 INFO    ] ================================================
[2026-06-13 00:23:42,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:23:42
[2026-06-13 00:23:42,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:23:43,122.122 INFO    ] Initializing speech engine...
[2026-06-13 00:23:43,130.130 INFO    ] 2026-06-13 00:23:43
[2026-06-13 00:23:43,342.342 INFO    ] 2026-06-13 00:23:43
[2026-06-13 00:23:43,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:23:43,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:23:43,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:23:43,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:43,749.749 INFO    ] time= 13/06/2026 00:23:43
[2026-06-13 00:23:43,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:43,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:43,892.892 INFO    ] No existing commands found in stream
[2026-06-13 00:23:48,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:23:48,904.904 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 00:23:52,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:23:52,124.124 INFO    ] Checking for system updates...
[2026-06-13 00:23:52,145.145 INFO    ] 200
[2026-06-13 00:23:52,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:52,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:23:52,178.178 INFO    ] No update needed
[2026-06-13 00:23:52,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 00:23:52,199.199 INFO    ] 200
[2026-06-13 00:23:52,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:23:52,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:23:52,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:23:52,268.268 INFO    ] No camera update needed
[2026-06-13 00:23:52,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:23:52,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:23:52,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:23:52,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:23:54,318.318 INFO    ] ================================================
[2026-06-13 00:23:54,333.333 INFO    ] Launching Daemon at Sat Jun 13 00:23:54 IST 2026
[2026-06-13 00:23:54,344.344 INFO    ] ================================================
[2026-06-13 00:23:54,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:23:54
[2026-06-13 00:23:55,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:23:55,161.161 INFO    ] Initializing speech engine...
[2026-06-13 00:23:55,166.166 INFO    ] 2026-06-13 00:23:55
[2026-06-13 00:23:55,384.384 INFO    ] 2026-06-13 00:23:55
[2026-06-13 00:23:55,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:23:55,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:23:55,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:23:55,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:23:55,813.813 INFO    ] time= 13/06/2026 00:23:55
[2026-06-13 00:23:55,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:23:55,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:23:55,941.941 INFO    ] No existing commands found in stream
[2026-06-13 00:24:00,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:00,954.954 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 00:24:04,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:24:04,891.891 INFO    ] Checking for system updates...
[2026-06-13 00:24:04,913.913 INFO    ] 200
[2026-06-13 00:24:04,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:04,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:24:04,945.945 INFO    ] No update needed
[2026-06-13 00:24:04,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 00:24:04,966.966 INFO    ] 200
[2026-06-13 00:24:04,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:04,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:24:05,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:24:05,038.038 INFO    ] No camera update needed
[2026-06-13 00:24:05,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:24:05,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:24:05,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:24:05,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:24:07,087.087 INFO    ] ================================================
[2026-06-13 00:24:07,102.102 INFO    ] Launching Daemon at Sat Jun 13 00:24:07 IST 2026
[2026-06-13 00:24:07,113.113 INFO    ] ================================================
[2026-06-13 00:24:07,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:24:07
[2026-06-13 00:24:07,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:24:07,935.935 INFO    ] Initializing speech engine...
[2026-06-13 00:24:07,944.944 INFO    ] 2026-06-13 00:24:07
[2026-06-13 00:24:08,156.156 INFO    ] 2026-06-13 00:24:08
[2026-06-13 00:24:08,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:24:08,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:24:08,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:24:08,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:24:08,612.612 INFO    ] time= 13/06/2026 00:24:08
[2026-06-13 00:24:08,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:24:08,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:24:08,824.824 INFO    ] No existing commands found in stream
[2026-06-13 00:24:13,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:13,835.835 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 00:24:17,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:24:17,349.349 INFO    ] Checking for system updates...
[2026-06-13 00:24:17,371.371 INFO    ] 200
[2026-06-13 00:24:17,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:17,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:24:17,407.407 INFO    ] No update needed
[2026-06-13 00:24:17,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 00:24:17,429.429 INFO    ] 200
[2026-06-13 00:24:17,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:17,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:24:17,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:24:17,497.497 INFO    ] No camera update needed
[2026-06-13 00:24:17,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:24:17,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:24:17,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:24:17,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:24:19,538.538 INFO    ] ================================================
[2026-06-13 00:24:19,554.554 INFO    ] Launching Daemon at Sat Jun 13 00:24:19 IST 2026
[2026-06-13 00:24:19,565.565 INFO    ] ================================================
[2026-06-13 00:24:19,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:24:19
[2026-06-13 00:24:20,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:24:20,432.432 INFO    ] Initializing speech engine...
[2026-06-13 00:24:20,438.438 INFO    ] 2026-06-13 00:24:20
[2026-06-13 00:24:20,652.652 INFO    ] 2026-06-13 00:24:20
[2026-06-13 00:24:20,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:24:20,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:24:20,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:24:21,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:24:21,057.057 INFO    ] time= 13/06/2026 00:24:21
[2026-06-13 00:24:21,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:24:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:24:21,174.174 INFO    ] No existing commands found in stream
[2026-06-13 00:24:26,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:26,184.184 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 00:24:28,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:24:28,091.091 INFO    ] Checking for system updates...
[2026-06-13 00:24:28,111.111 INFO    ] 200
[2026-06-13 00:24:28,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:28,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:24:28,145.145 INFO    ] No update needed
[2026-06-13 00:24:28,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 00:24:28,167.167 INFO    ] 200
[2026-06-13 00:24:28,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:28,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:24:28,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:24:28,243.243 INFO    ] No camera update needed
[2026-06-13 00:24:28,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:24:28,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:24:28,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:24:28,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:24:30,292.292 INFO    ] ================================================
[2026-06-13 00:24:30,307.307 INFO    ] Launching Daemon at Sat Jun 13 00:24:30 IST 2026
[2026-06-13 00:24:30,318.318 INFO    ] ================================================
[2026-06-13 00:24:30,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:24:30
[2026-06-13 00:24:30,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:24:31,138.138 INFO    ] Initializing speech engine...
[2026-06-13 00:24:31,142.142 INFO    ] 2026-06-13 00:24:31
[2026-06-13 00:24:31,339.339 INFO    ] 2026-06-13 00:24:31
[2026-06-13 00:24:31,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:24:31,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:24:31,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:24:31,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:24:31,828.828 INFO    ] time= 13/06/2026 00:24:31
[2026-06-13 00:24:31,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:24:31,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:24:32,041.041 INFO    ] No existing commands found in stream
[2026-06-13 00:24:37,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:37,079.079 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 00:24:37,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:24:37,511.511 INFO    ] Checking for system updates...
[2026-06-13 00:24:37,531.531 INFO    ] 200
[2026-06-13 00:24:37,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:37,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:24:37,566.566 INFO    ] No update needed
[2026-06-13 00:24:37,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 00:24:37,587.587 INFO    ] 200
[2026-06-13 00:24:37,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:37,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:24:37,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:24:37,759.759 INFO    ] No camera update needed
[2026-06-13 00:24:37,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:24:37,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:24:37,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:24:37,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:24:39,807.807 INFO    ] ================================================
[2026-06-13 00:24:39,822.822 INFO    ] Launching Daemon at Sat Jun 13 00:24:39 IST 2026
[2026-06-13 00:24:39,833.833 INFO    ] ================================================
[2026-06-13 00:24:40,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:24:40
[2026-06-13 00:24:40,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:24:40,706.706 INFO    ] Initializing speech engine...
[2026-06-13 00:24:40,711.711 INFO    ] 2026-06-13 00:24:40
[2026-06-13 00:24:40,920.920 INFO    ] 2026-06-13 00:24:40
[2026-06-13 00:24:40,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:24:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:24:41,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:24:41,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:24:41,338.338 INFO    ] time= 13/06/2026 00:24:41
[2026-06-13 00:24:41,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:24:41,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:24:41,435.435 INFO    ] No existing commands found in stream
[2026-06-13 00:24:46,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:46,447.447 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 00:24:50,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:24:50,032.032 INFO    ] Checking for system updates...
[2026-06-13 00:24:50,052.052 INFO    ] 200
[2026-06-13 00:24:50,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:50,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:24:50,085.085 INFO    ] No update needed
[2026-06-13 00:24:50,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 00:24:50,106.106 INFO    ] 200
[2026-06-13 00:24:50,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:24:50,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:24:50,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:24:50,175.175 INFO    ] No camera update needed
[2026-06-13 00:24:50,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:24:50,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:24:50,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:24:50,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:24:52,223.223 INFO    ] ================================================
[2026-06-13 00:24:52,238.238 INFO    ] Launching Daemon at Sat Jun 13 00:24:52 IST 2026
[2026-06-13 00:24:52,249.249 INFO    ] ================================================
[2026-06-13 00:24:52,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:24:52
[2026-06-13 00:24:52,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:24:53,046.046 INFO    ] Initializing speech engine...
[2026-06-13 00:24:53,057.057 INFO    ] 2026-06-13 00:24:53
[2026-06-13 00:24:53,263.263 INFO    ] 2026-06-13 00:24:53
[2026-06-13 00:24:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:24:53,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:24:53,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:24:53,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:24:53,680.680 INFO    ] time= 13/06/2026 00:24:53
[2026-06-13 00:24:53,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:24:53,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:24:53,827.827 INFO    ] No existing commands found in stream
[2026-06-13 00:24:58,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:24:58,852.852 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 00:25:00,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:25:00,806.806 INFO    ] Checking for system updates...
[2026-06-13 00:25:00,826.826 INFO    ] 200
[2026-06-13 00:25:00,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:00,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:00,862.862 INFO    ] No update needed
[2026-06-13 00:25:00,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:00,882.882 INFO    ] 200
[2026-06-13 00:25:00,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:00,907.907 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:00,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:00,946.946 INFO    ] No camera update needed
[2026-06-13 00:25:00,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:00,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:00,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:00,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:02,988.988 INFO    ] ================================================
[2026-06-13 00:25:03,003.003 INFO    ] Launching Daemon at Sat Jun 13 00:25:02 IST 2026
[2026-06-13 00:25:03,014.014 INFO    ] ================================================
[2026-06-13 00:25:03,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:03
[2026-06-13 00:25:03,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:25:03,804.804 INFO    ] Initializing speech engine...
[2026-06-13 00:25:03,809.809 INFO    ] 2026-06-13 00:25:03
[2026-06-13 00:25:04,011.011 INFO    ] 2026-06-13 00:25:03
[2026-06-13 00:25:04,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:25:04,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:25:04,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:25:04,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:25:04,423.423 INFO    ] time= 13/06/2026 00:25:04
[2026-06-13 00:25:04,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:25:04,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:25:04,522.522 INFO    ] No existing commands found in stream
[2026-06-13 00:25:09,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:25:09,535.535 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 00:25:13,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:25:13,230.230 INFO    ] Checking for system updates...
[2026-06-13 00:25:13,250.250 INFO    ] 200
[2026-06-13 00:25:13,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:13,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:13,284.284 INFO    ] No update needed
[2026-06-13 00:25:13,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:13,304.304 INFO    ] 200
[2026-06-13 00:25:13,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:13,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:13,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:13,372.372 INFO    ] No camera update needed
[2026-06-13 00:25:13,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:13,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:13,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:13,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:15,421.421 INFO    ] ================================================
[2026-06-13 00:25:15,436.436 INFO    ] Launching Daemon at Sat Jun 13 00:25:15 IST 2026
[2026-06-13 00:25:15,446.446 INFO    ] ================================================
[2026-06-13 00:25:15,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:15
[2026-06-13 00:25:16,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:25:16,235.235 INFO    ] Initializing speech engine...
[2026-06-13 00:25:16,238.238 INFO    ] 2026-06-13 00:25:16
[2026-06-13 00:25:16,460.460 INFO    ] 2026-06-13 00:25:16
[2026-06-13 00:25:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:25:16,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:25:16,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:25:16,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:25:16,869.869 INFO    ] time= 13/06/2026 00:25:16
[2026-06-13 00:25:16,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:25:16,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:25:16,982.982 INFO    ] No existing commands found in stream
[2026-06-13 00:25:21,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:25:21,994.994 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 00:25:22,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:25:22,369.369 INFO    ] Checking for system updates...
[2026-06-13 00:25:22,389.389 INFO    ] 200
[2026-06-13 00:25:22,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:22,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:22,422.422 INFO    ] No update needed
[2026-06-13 00:25:22,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:22,443.443 INFO    ] 200
[2026-06-13 00:25:22,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:22,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:22,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:22,506.506 INFO    ] No camera update needed
[2026-06-13 00:25:22,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:22,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:22,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:22,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:24,554.554 INFO    ] ================================================
[2026-06-13 00:25:24,569.569 INFO    ] Launching Daemon at Sat Jun 13 00:25:24 IST 2026
[2026-06-13 00:25:24,580.580 INFO    ] ================================================
[2026-06-13 00:25:24,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:24
[2026-06-13 00:25:25,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:25:25,378.378 INFO    ] Initializing speech engine...
[2026-06-13 00:25:25,381.381 INFO    ] 2026-06-13 00:25:25
[2026-06-13 00:25:25,586.586 INFO    ] 2026-06-13 00:25:25
[2026-06-13 00:25:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:25:25,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:25:25,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:25:25,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:25:25,991.991 INFO    ] time= 13/06/2026 00:25:25
[2026-06-13 00:25:26,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:25:26,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:25:26,175.175 INFO    ] No existing commands found in stream
[2026-06-13 00:25:31,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:25:31,186.186 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 00:25:33,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:25:33,509.509 INFO    ] Checking for system updates...
[2026-06-13 00:25:33,530.530 INFO    ] 200
[2026-06-13 00:25:33,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:33,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:33,563.563 INFO    ] No update needed
[2026-06-13 00:25:33,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:33,585.585 INFO    ] 200
[2026-06-13 00:25:33,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:33,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:33,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:33,651.651 INFO    ] No camera update needed
[2026-06-13 00:25:33,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:33,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:33,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:33,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:35,697.697 INFO    ] ================================================
[2026-06-13 00:25:35,712.712 INFO    ] Launching Daemon at Sat Jun 13 00:25:35 IST 2026
[2026-06-13 00:25:35,723.723 INFO    ] ================================================
[2026-06-13 00:25:36,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:36
[2026-06-13 00:25:36,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:25:36,607.607 INFO    ] Initializing speech engine...
[2026-06-13 00:25:36,612.612 INFO    ] 2026-06-13 00:25:36
[2026-06-13 00:25:36,819.819 INFO    ] 2026-06-13 00:25:36
[2026-06-13 00:25:36,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:25:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:25:37,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:25:37,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:25:37,248.248 INFO    ] time= 13/06/2026 00:25:37
[2026-06-13 00:25:37,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:25:37,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:25:37,347.347 INFO    ] No existing commands found in stream
[2026-06-13 00:25:42,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:25:42,365.365 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 00:25:44,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:25:44,176.176 INFO    ] Checking for system updates...
[2026-06-13 00:25:44,199.199 INFO    ] 200
[2026-06-13 00:25:44,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:44,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:44,233.233 INFO    ] No update needed
[2026-06-13 00:25:44,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:44,255.255 INFO    ] 200
[2026-06-13 00:25:44,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:44,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:44,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:25:44,333.333 INFO    ] No camera update needed
[2026-06-13 00:25:44,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:44,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:44,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:44,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:46,393.393 INFO    ] ================================================
[2026-06-13 00:25:46,408.408 INFO    ] Launching Daemon at Sat Jun 13 00:25:46 IST 2026
[2026-06-13 00:25:46,420.420 INFO    ] ================================================
[2026-06-13 00:25:47,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:47
[2026-06-13 00:25:47,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:25:47,748.748 INFO    ] Initializing speech engine...
[2026-06-13 00:25:47,753.753 INFO    ] 2026-06-13 00:25:47
[2026-06-13 00:25:47,961.961 INFO    ] 2026-06-13 00:25:47
[2026-06-13 00:25:47,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:25:48,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:25:48,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:25:48,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:25:48,387.387 INFO    ] time= 13/06/2026 00:25:48
[2026-06-13 00:25:48,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:25:48,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:25:48,485.485 INFO    ] No existing commands found in stream
[2026-06-13 00:25:53,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:25:53,522.522 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 00:25:57,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:25:57,395.395 INFO    ] Checking for system updates...
[2026-06-13 00:25:57,416.416 INFO    ] 200
[2026-06-13 00:25:57,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:57,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:57,450.450 INFO    ] No update needed
[2026-06-13 00:25:57,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 00:25:57,471.471 INFO    ] 200
[2026-06-13 00:25:57,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:25:57,496.496 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:25:57,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:25:57,534.534 INFO    ] No camera update needed
[2026-06-13 00:25:57,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:25:57,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:25:57,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:25:57,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:25:59,582.582 INFO    ] ================================================
[2026-06-13 00:25:59,597.597 INFO    ] Launching Daemon at Sat Jun 13 00:25:59 IST 2026
[2026-06-13 00:25:59,608.608 INFO    ] ================================================
[2026-06-13 00:25:59,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:25:59
[2026-06-13 00:26:00,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:00,450.450 INFO    ] Initializing speech engine...
[2026-06-13 00:26:00,455.455 INFO    ] 2026-06-13 00:26:00
[2026-06-13 00:26:00,661.661 INFO    ] 2026-06-13 00:26:00
[2026-06-13 00:26:00,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:00,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:00,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:01,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:01,161.161 INFO    ] time= 13/06/2026 00:26:01
[2026-06-13 00:26:01,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:01,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:01,394.394 INFO    ] No existing commands found in stream
[2026-06-13 00:26:06,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:06,414.414 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 00:26:10,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:26:10,286.286 INFO    ] Checking for system updates...
[2026-06-13 00:26:10,309.309 INFO    ] 200
[2026-06-13 00:26:10,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:10,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:26:10,344.344 INFO    ] No update needed
[2026-06-13 00:26:10,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 00:26:10,366.366 INFO    ] 200
[2026-06-13 00:26:10,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:10,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:26:10,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:26:10,429.429 INFO    ] No camera update needed
[2026-06-13 00:26:10,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:26:10,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:26:10,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:26:10,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:26:12,469.469 INFO    ] ================================================
[2026-06-13 00:26:12,484.484 INFO    ] Launching Daemon at Sat Jun 13 00:26:12 IST 2026
[2026-06-13 00:26:12,494.494 INFO    ] ================================================
[2026-06-13 00:26:12,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:26:12
[2026-06-13 00:26:13,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:13,317.317 INFO    ] Initializing speech engine...
[2026-06-13 00:26:13,330.330 INFO    ] 2026-06-13 00:26:13
[2026-06-13 00:26:13,549.549 INFO    ] 2026-06-13 00:26:13
[2026-06-13 00:26:13,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:13,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:13,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:13,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:13,965.965 INFO    ] time= 13/06/2026 00:26:13
[2026-06-13 00:26:14,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:14,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:14,108.108 INFO    ] No existing commands found in stream
[2026-06-13 00:26:19,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:19,121.121 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 00:26:22,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:26:22,032.032 INFO    ] Checking for system updates...
[2026-06-13 00:26:22,052.052 INFO    ] 200
[2026-06-13 00:26:22,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:22,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:26:22,085.085 INFO    ] No update needed
[2026-06-13 00:26:22,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 00:26:22,107.107 INFO    ] 200
[2026-06-13 00:26:22,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:22,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:26:22,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:26:22,182.182 INFO    ] No camera update needed
[2026-06-13 00:26:22,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:26:22,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:26:22,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:26:22,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:26:24,229.229 INFO    ] ================================================
[2026-06-13 00:26:24,244.244 INFO    ] Launching Daemon at Sat Jun 13 00:26:24 IST 2026
[2026-06-13 00:26:24,255.255 INFO    ] ================================================
[2026-06-13 00:26:24,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:26:24
[2026-06-13 00:26:24,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:25,071.071 INFO    ] Initializing speech engine...
[2026-06-13 00:26:25,084.084 INFO    ] 2026-06-13 00:26:25
[2026-06-13 00:26:25,303.303 INFO    ] 2026-06-13 00:26:25
[2026-06-13 00:26:25,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:25,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:25,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:25,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:25,739.739 INFO    ] time= 13/06/2026 00:26:25
[2026-06-13 00:26:25,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:25,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:25,862.862 INFO    ] No existing commands found in stream
[2026-06-13 00:26:30,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:30,875.875 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 00:26:31,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:26:31,619.619 INFO    ] Checking for system updates...
[2026-06-13 00:26:31,640.640 INFO    ] 200
[2026-06-13 00:26:31,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:31,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:26:31,677.677 INFO    ] No update needed
[2026-06-13 00:26:31,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 00:26:31,706.706 INFO    ] 200
[2026-06-13 00:26:31,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:31,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:26:31,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:26:31,777.777 INFO    ] No camera update needed
[2026-06-13 00:26:31,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:26:31,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:26:31,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:26:31,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:26:33,823.823 INFO    ] ================================================
[2026-06-13 00:26:33,838.838 INFO    ] Launching Daemon at Sat Jun 13 00:26:33 IST 2026
[2026-06-13 00:26:33,849.849 INFO    ] ================================================
[2026-06-13 00:26:34,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:26:34
[2026-06-13 00:26:34,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:34,897.897 INFO    ] Initializing speech engine...
[2026-06-13 00:26:34,914.914 INFO    ] 2026-06-13 00:26:34
[2026-06-13 00:26:35,200.200 INFO    ] 2026-06-13 00:26:35
[2026-06-13 00:26:35,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:35,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:35,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:35,576.576 INFO    ] time= 13/06/2026 00:26:35
[2026-06-13 00:26:35,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:35,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:35,641.641 INFO    ] No existing commands found in stream
[2026-06-13 00:26:40,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:40,675.675 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 00:26:41,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:26:41,328.328 INFO    ] Checking for system updates...
[2026-06-13 00:26:41,351.351 INFO    ] 200
[2026-06-13 00:26:41,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:41,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:26:41,388.388 INFO    ] No update needed
[2026-06-13 00:26:41,389.389 INFO    ] Checking for camera pi updates...
[2026-06-13 00:26:41,409.409 INFO    ] 200
[2026-06-13 00:26:41,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:41,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:26:41,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:26:41,560.560 INFO    ] No camera update needed
[2026-06-13 00:26:41,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:26:41,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:26:41,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:26:41,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:26:43,608.608 INFO    ] ================================================
[2026-06-13 00:26:43,628.628 INFO    ] Launching Daemon at Sat Jun 13 00:26:43 IST 2026
[2026-06-13 00:26:43,638.638 INFO    ] ================================================
[2026-06-13 00:26:43,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:26:43
[2026-06-13 00:26:44,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:44,416.416 INFO    ] Initializing speech engine...
[2026-06-13 00:26:44,421.421 INFO    ] 2026-06-13 00:26:44
[2026-06-13 00:26:44,624.624 INFO    ] 2026-06-13 00:26:44
[2026-06-13 00:26:44,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:44,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:44,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:44,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:45,032.032 INFO    ] time= 13/06/2026 00:26:44
[2026-06-13 00:26:45,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:45,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:45,137.137 INFO    ] No existing commands found in stream
[2026-06-13 00:26:50,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:50,153.153 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 00:26:50,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:26:50,503.503 INFO    ] Checking for system updates...
[2026-06-13 00:26:50,524.524 INFO    ] 200
[2026-06-13 00:26:50,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:50,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:26:50,557.557 INFO    ] No update needed
[2026-06-13 00:26:50,558.558 INFO    ] Checking for camera pi updates...
[2026-06-13 00:26:50,578.578 INFO    ] 200
[2026-06-13 00:26:50,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:26:50,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:26:50,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:26:50,637.637 INFO    ] No camera update needed
[2026-06-13 00:26:50,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:26:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:26:50,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:26:50,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:26:52,686.686 INFO    ] ================================================
[2026-06-13 00:26:52,702.702 INFO    ] Launching Daemon at Sat Jun 13 00:26:52 IST 2026
[2026-06-13 00:26:52,712.712 INFO    ] ================================================
[2026-06-13 00:26:53,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:26:53
[2026-06-13 00:26:53,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:26:53,527.527 INFO    ] Initializing speech engine...
[2026-06-13 00:26:53,535.535 INFO    ] 2026-06-13 00:26:53
[2026-06-13 00:26:53,761.761 INFO    ] 2026-06-13 00:26:53
[2026-06-13 00:26:53,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:26:53,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:26:53,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:26:54,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:26:54,194.194 INFO    ] time= 13/06/2026 00:26:54
[2026-06-13 00:26:54,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:26:54,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:26:54,324.324 INFO    ] No existing commands found in stream
[2026-06-13 00:26:59,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:26:59,336.336 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 00:27:02,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:27:02,302.302 INFO    ] Checking for system updates...
[2026-06-13 00:27:02,329.329 INFO    ] 200
[2026-06-13 00:27:02,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:02,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:02,383.383 INFO    ] No update needed
[2026-06-13 00:27:02,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 00:27:02,421.421 INFO    ] 200
[2026-06-13 00:27:02,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:02,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:27:02,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:02,527.527 INFO    ] No camera update needed
[2026-06-13 00:27:02,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:27:02,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:27:02,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:27:02,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:27:04,597.597 INFO    ] ================================================
[2026-06-13 00:27:04,612.612 INFO    ] Launching Daemon at Sat Jun 13 00:27:04 IST 2026
[2026-06-13 00:27:04,623.623 INFO    ] ================================================
[2026-06-13 00:27:05,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:27:05
[2026-06-13 00:27:05,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:27:05,884.884 INFO    ] Initializing speech engine...
[2026-06-13 00:27:05,895.895 INFO    ] 2026-06-13 00:27:05
[2026-06-13 00:27:06,105.105 INFO    ] 2026-06-13 00:27:06
[2026-06-13 00:27:06,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:27:06,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:27:06,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:27:06,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:27:06,509.509 INFO    ] time= 13/06/2026 00:27:06
[2026-06-13 00:27:06,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:27:06,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:27:06,629.629 INFO    ] No existing commands found in stream
[2026-06-13 00:27:11,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:27:11,641.641 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 00:27:15,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:27:15,365.365 INFO    ] Checking for system updates...
[2026-06-13 00:27:15,385.385 INFO    ] 200
[2026-06-13 00:27:15,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:15,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:15,419.419 INFO    ] No update needed
[2026-06-13 00:27:15,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 00:27:15,440.440 INFO    ] 200
[2026-06-13 00:27:15,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:15,464.464 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:27:15,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:15,506.506 INFO    ] No camera update needed
[2026-06-13 00:27:15,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:27:15,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:27:15,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:27:15,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:27:17,554.554 INFO    ] ================================================
[2026-06-13 00:27:17,570.570 INFO    ] Launching Daemon at Sat Jun 13 00:27:17 IST 2026
[2026-06-13 00:27:17,581.581 INFO    ] ================================================
[2026-06-13 00:27:17,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:27:17
[2026-06-13 00:27:18,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:27:18,372.372 INFO    ] Initializing speech engine...
[2026-06-13 00:27:18,376.376 INFO    ] 2026-06-13 00:27:18
[2026-06-13 00:27:18,595.595 INFO    ] 2026-06-13 00:27:18
[2026-06-13 00:27:18,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:27:18,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:27:18,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:27:18,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:27:19,010.010 INFO    ] time= 13/06/2026 00:27:18
[2026-06-13 00:27:19,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:27:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:27:19,116.116 INFO    ] No existing commands found in stream
[2026-06-13 00:27:24,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:27:24,128.128 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 00:27:28,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:27:28,195.195 INFO    ] Checking for system updates...
[2026-06-13 00:27:28,215.215 INFO    ] 200
[2026-06-13 00:27:28,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:28,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:28,248.248 INFO    ] No update needed
[2026-06-13 00:27:28,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 00:27:28,270.270 INFO    ] 200
[2026-06-13 00:27:28,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:28,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:27:28,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:28,330.330 INFO    ] No camera update needed
[2026-06-13 00:27:28,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:27:28,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:27:28,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:27:28,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:27:30,376.376 INFO    ] ================================================
[2026-06-13 00:27:30,392.392 INFO    ] Launching Daemon at Sat Jun 13 00:27:30 IST 2026
[2026-06-13 00:27:30,404.404 INFO    ] ================================================
[2026-06-13 00:27:30,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:27:30
[2026-06-13 00:27:31,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:27:31,645.645 INFO    ] Initializing speech engine...
[2026-06-13 00:27:31,654.654 INFO    ] 2026-06-13 00:27:31
[2026-06-13 00:27:31,930.930 INFO    ] 2026-06-13 00:27:31
[2026-06-13 00:27:31,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:27:32,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:27:32,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:27:32,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:27:32,413.413 INFO    ] time= 13/06/2026 00:27:32
[2026-06-13 00:27:32,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:27:32,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:27:32,689.689 INFO    ] No existing commands found in stream
[2026-06-13 00:27:37,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:27:37,722.722 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 00:27:40,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:27:40,645.645 INFO    ] Checking for system updates...
[2026-06-13 00:27:40,668.668 INFO    ] 200
[2026-06-13 00:27:40,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:40,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:40,705.705 INFO    ] No update needed
[2026-06-13 00:27:40,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 00:27:40,728.728 INFO    ] 200
[2026-06-13 00:27:40,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:40,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:27:40,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:40,795.795 INFO    ] No camera update needed
[2026-06-13 00:27:40,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:27:40,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:27:40,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:27:40,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:27:42,845.845 INFO    ] ================================================
[2026-06-13 00:27:42,861.861 INFO    ] Launching Daemon at Sat Jun 13 00:27:42 IST 2026
[2026-06-13 00:27:42,872.872 INFO    ] ================================================
[2026-06-13 00:27:43,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:27:43
[2026-06-13 00:27:43,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:27:43,746.746 INFO    ] Initializing speech engine...
[2026-06-13 00:27:43,752.752 INFO    ] 2026-06-13 00:27:43
[2026-06-13 00:27:43,963.963 INFO    ] 2026-06-13 00:27:43
[2026-06-13 00:27:43,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:27:44,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:27:44,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:27:44,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:27:44,380.380 INFO    ] time= 13/06/2026 00:27:44
[2026-06-13 00:27:44,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:27:44,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:27:44,488.488 INFO    ] No existing commands found in stream
[2026-06-13 00:27:49,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:27:49,516.516 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 00:27:50,770.770 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:27:50,771.771 INFO    ] Checking for system updates...
[2026-06-13 00:27:50,794.794 INFO    ] 200
[2026-06-13 00:27:50,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:50,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:50,829.829 INFO    ] No update needed
[2026-06-13 00:27:50,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 00:27:50,851.851 INFO    ] 200
[2026-06-13 00:27:50,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:27:50,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:27:50,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:27:50,915.915 INFO    ] No camera update needed
[2026-06-13 00:27:50,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:27:50,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:27:50,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:27:50,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:27:52,964.964 INFO    ] ================================================
[2026-06-13 00:27:52,980.980 INFO    ] Launching Daemon at Sat Jun 13 00:27:52 IST 2026
[2026-06-13 00:27:52,991.991 INFO    ] ================================================
[2026-06-13 00:27:53,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:27:53
[2026-06-13 00:27:53,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:27:53,884.884 INFO    ] Initializing speech engine...
[2026-06-13 00:27:53,889.889 INFO    ] 2026-06-13 00:27:53
[2026-06-13 00:27:54,098.098 INFO    ] 2026-06-13 00:27:54
[2026-06-13 00:27:54,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:27:54,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:27:54,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:27:54,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:27:54,496.496 INFO    ] time= 13/06/2026 00:27:54
[2026-06-13 00:27:54,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:27:54,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:27:54,617.617 INFO    ] No existing commands found in stream
[2026-06-13 00:27:59,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:27:59,635.635 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 00:28:02,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:28:02,592.592 INFO    ] Checking for system updates...
[2026-06-13 00:28:02,622.622 INFO    ] 200
[2026-06-13 00:28:02,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:02,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:02,673.673 INFO    ] No update needed
[2026-06-13 00:28:02,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:02,704.704 INFO    ] 200
[2026-06-13 00:28:02,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:02,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:02,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:02,777.777 INFO    ] No camera update needed
[2026-06-13 00:28:02,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:02,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:02,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:02,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:04,830.830 INFO    ] ================================================
[2026-06-13 00:28:04,846.846 INFO    ] Launching Daemon at Sat Jun 13 00:28:04 IST 2026
[2026-06-13 00:28:04,857.857 INFO    ] ================================================
[2026-06-13 00:28:05,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:05
[2026-06-13 00:28:05,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:05,737.737 INFO    ] Initializing speech engine...
[2026-06-13 00:28:05,744.744 INFO    ] 2026-06-13 00:28:05
[2026-06-13 00:28:05,954.954 INFO    ] 2026-06-13 00:28:05
[2026-06-13 00:28:05,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:28:06,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:28:06,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:28:06,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:28:06,376.376 INFO    ] time= 13/06/2026 00:28:06
[2026-06-13 00:28:06,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:28:06,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:28:06,567.567 INFO    ] No existing commands found in stream
[2026-06-13 00:28:11,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:28:11,580.580 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 00:28:13,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:28:13,124.124 INFO    ] Checking for system updates...
[2026-06-13 00:28:13,144.144 INFO    ] 200
[2026-06-13 00:28:13,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:13,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:28:13,178.178 INFO    ] No update needed
[2026-06-13 00:28:13,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:13,199.199 INFO    ] 200
[2026-06-13 00:28:13,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:13,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:13,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:28:13,264.264 INFO    ] No camera update needed
[2026-06-13 00:28:13,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:13,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:13,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:13,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:15,312.312 INFO    ] ================================================
[2026-06-13 00:28:15,327.327 INFO    ] Launching Daemon at Sat Jun 13 00:28:15 IST 2026
[2026-06-13 00:28:15,339.339 INFO    ] ================================================
[2026-06-13 00:28:15,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:15
[2026-06-13 00:28:15,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:16,141.141 INFO    ] Initializing speech engine...
[2026-06-13 00:28:16,149.149 INFO    ] 2026-06-13 00:28:16
[2026-06-13 00:28:16,369.369 INFO    ] 2026-06-13 00:28:16
[2026-06-13 00:28:16,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:28:16,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:28:16,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:28:16,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:28:16,792.792 INFO    ] time= 13/06/2026 00:28:16
[2026-06-13 00:28:16,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:28:16,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:28:16,930.930 INFO    ] No existing commands found in stream
[2026-06-13 00:28:21,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:28:21,944.944 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 00:28:22,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:28:22,473.473 INFO    ] Checking for system updates...
[2026-06-13 00:28:22,494.494 INFO    ] 200
[2026-06-13 00:28:22,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:22,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:22,528.528 INFO    ] No update needed
[2026-06-13 00:28:22,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:22,550.550 INFO    ] 200
[2026-06-13 00:28:22,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:22,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:22,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:22,614.614 INFO    ] No camera update needed
[2026-06-13 00:28:22,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:22,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:22,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:22,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:24,663.663 INFO    ] ================================================
[2026-06-13 00:28:24,679.679 INFO    ] Launching Daemon at Sat Jun 13 00:28:24 IST 2026
[2026-06-13 00:28:24,690.690 INFO    ] ================================================
[2026-06-13 00:28:25,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:25
[2026-06-13 00:28:25,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:25,465.465 INFO    ] Initializing speech engine...
[2026-06-13 00:28:25,468.468 INFO    ] 2026-06-13 00:28:25
[2026-06-13 00:28:25,676.676 INFO    ] 2026-06-13 00:28:25
[2026-06-13 00:28:25,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:28:25,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:28:25,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:28:26,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:28:26,102.102 INFO    ] time= 13/06/2026 00:28:26
[2026-06-13 00:28:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:28:26,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:28:26,256.256 INFO    ] No existing commands found in stream
[2026-06-13 00:28:31,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:28:31,269.269 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 00:28:35,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:28:35,617.617 INFO    ] Checking for system updates...
[2026-06-13 00:28:35,638.638 INFO    ] 200
[2026-06-13 00:28:35,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:35,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:28:35,671.671 INFO    ] No update needed
[2026-06-13 00:28:35,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:35,692.692 INFO    ] 200
[2026-06-13 00:28:35,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:35,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:35,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:28:35,756.756 INFO    ] No camera update needed
[2026-06-13 00:28:35,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:35,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:35,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:35,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:37,804.804 INFO    ] ================================================
[2026-06-13 00:28:37,821.821 INFO    ] Launching Daemon at Sat Jun 13 00:28:37 IST 2026
[2026-06-13 00:28:37,832.832 INFO    ] ================================================
[2026-06-13 00:28:38,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:38
[2026-06-13 00:28:38,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:38,725.725 INFO    ] Initializing speech engine...
[2026-06-13 00:28:38,730.730 INFO    ] 2026-06-13 00:28:38
[2026-06-13 00:28:38,937.937 INFO    ] 2026-06-13 00:28:38
[2026-06-13 00:28:38,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:28:39,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:28:39,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:28:39,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:28:39,369.369 INFO    ] time= 13/06/2026 00:28:39
[2026-06-13 00:28:39,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:28:39,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:28:39,464.464 INFO    ] No existing commands found in stream
[2026-06-13 00:28:44,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:28:44,478.478 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 00:28:46,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:28:46,917.917 INFO    ] Checking for system updates...
[2026-06-13 00:28:46,938.938 INFO    ] 200
[2026-06-13 00:28:46,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:46,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:46,971.971 INFO    ] No update needed
[2026-06-13 00:28:46,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:46,992.992 INFO    ] 200
[2026-06-13 00:28:46,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:47,017.017 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:47,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:47,157.157 INFO    ] No camera update needed
[2026-06-13 00:28:47,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:47,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:47,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:47,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:49,206.206 INFO    ] ================================================
[2026-06-13 00:28:49,221.221 INFO    ] Launching Daemon at Sat Jun 13 00:28:49 IST 2026
[2026-06-13 00:28:49,232.232 INFO    ] ================================================
[2026-06-13 00:28:49,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:49
[2026-06-13 00:28:49,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:50,043.043 INFO    ] Initializing speech engine...
[2026-06-13 00:28:50,047.047 INFO    ] 2026-06-13 00:28:50
[2026-06-13 00:28:50,277.277 INFO    ] 2026-06-13 00:28:50
[2026-06-13 00:28:50,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:28:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:28:50,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:28:50,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:28:50,653.653 INFO    ] time= 13/06/2026 00:28:50
[2026-06-13 00:28:50,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:28:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:28:50,862.862 INFO    ] No existing commands found in stream
[2026-06-13 00:28:55,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:28:55,874.874 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 00:28:56,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:28:56,707.707 INFO    ] Checking for system updates...
[2026-06-13 00:28:56,732.732 INFO    ] 200
[2026-06-13 00:28:56,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:56,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:56,765.765 INFO    ] No update needed
[2026-06-13 00:28:56,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 00:28:56,786.786 INFO    ] 200
[2026-06-13 00:28:56,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:28:56,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:28:56,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:28:56,858.858 INFO    ] No camera update needed
[2026-06-13 00:28:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:28:56,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:28:56,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:28:56,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:28:58,906.906 INFO    ] ================================================
[2026-06-13 00:28:58,921.921 INFO    ] Launching Daemon at Sat Jun 13 00:28:58 IST 2026
[2026-06-13 00:28:58,932.932 INFO    ] ================================================
[2026-06-13 00:28:59,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:28:59
[2026-06-13 00:28:59,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:28:59,735.735 INFO    ] Initializing speech engine...
[2026-06-13 00:28:59,744.744 INFO    ] 2026-06-13 00:28:59
[2026-06-13 00:28:59,968.968 INFO    ] 2026-06-13 00:28:59
[2026-06-13 00:28:59,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:00,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:00,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:00,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:00,403.403 INFO    ] time= 13/06/2026 00:29:00
[2026-06-13 00:29:00,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:00,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:00,628.628 INFO    ] No existing commands found in stream
[2026-06-13 00:29:05,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:29:05,644.644 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 00:29:07,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:29:07,893.893 INFO    ] Checking for system updates...
[2026-06-13 00:29:07,913.913 INFO    ] 200
[2026-06-13 00:29:07,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:07,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:29:07,950.950 INFO    ] No update needed
[2026-06-13 00:29:07,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 00:29:07,972.972 INFO    ] 200
[2026-06-13 00:29:07,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:07,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:29:08,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:29:08,047.047 INFO    ] No camera update needed
[2026-06-13 00:29:08,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:29:08,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:29:08,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:29:08,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:29:10,097.097 INFO    ] ================================================
[2026-06-13 00:29:10,112.112 INFO    ] Launching Daemon at Sat Jun 13 00:29:10 IST 2026
[2026-06-13 00:29:10,123.123 INFO    ] ================================================
[2026-06-13 00:29:10,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:29:10
[2026-06-13 00:29:10,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:29:10,902.902 INFO    ] Initializing speech engine...
[2026-06-13 00:29:10,907.907 INFO    ] 2026-06-13 00:29:10
[2026-06-13 00:29:11,119.119 INFO    ] 2026-06-13 00:29:11
[2026-06-13 00:29:11,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:11,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:11,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:11,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:11,534.534 INFO    ] time= 13/06/2026 00:29:11
[2026-06-13 00:29:11,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:11,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:11,672.672 INFO    ] No existing commands found in stream
[2026-06-13 00:29:16,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:29:16,685.685 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 00:29:17,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:29:17,645.645 INFO    ] Checking for system updates...
[2026-06-13 00:29:17,666.666 INFO    ] 200
[2026-06-13 00:29:17,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:17,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:17,702.702 INFO    ] No update needed
[2026-06-13 00:29:17,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 00:29:17,722.722 INFO    ] 200
[2026-06-13 00:29:17,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:17,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:29:17,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:17,785.785 INFO    ] No camera update needed
[2026-06-13 00:29:17,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:29:17,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:29:17,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:29:17,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:29:19,833.833 INFO    ] ================================================
[2026-06-13 00:29:19,848.848 INFO    ] Launching Daemon at Sat Jun 13 00:29:19 IST 2026
[2026-06-13 00:29:19,859.859 INFO    ] ================================================
[2026-06-13 00:29:20,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:29:20
[2026-06-13 00:29:20,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:29:20,722.722 INFO    ] Initializing speech engine...
[2026-06-13 00:29:20,727.727 INFO    ] 2026-06-13 00:29:20
[2026-06-13 00:29:20,934.934 INFO    ] 2026-06-13 00:29:20
[2026-06-13 00:29:20,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:21,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:21,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:21,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:21,346.346 INFO    ] time= 13/06/2026 00:29:21
[2026-06-13 00:29:21,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:21,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:21,451.451 INFO    ] No existing commands found in stream
[2026-06-13 00:29:26,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:29:26,469.469 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 00:29:29,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:29:29,313.313 INFO    ] Checking for system updates...
[2026-06-13 00:29:29,333.333 INFO    ] 200
[2026-06-13 00:29:29,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:29,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:29,367.367 INFO    ] No update needed
[2026-06-13 00:29:29,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 00:29:29,388.388 INFO    ] 200
[2026-06-13 00:29:29,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:29,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:29:29,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:29,460.460 INFO    ] No camera update needed
[2026-06-13 00:29:29,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:29:29,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:29:29,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:29:29,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:29:31,501.501 INFO    ] ================================================
[2026-06-13 00:29:31,510.510 INFO    ] Launching Daemon at Sat Jun 13 00:29:31 IST 2026
[2026-06-13 00:29:31,517.517 INFO    ] ================================================
[2026-06-13 00:29:31,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:29:31
[2026-06-13 00:29:32,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:29:32,321.321 INFO    ] Initializing speech engine...
[2026-06-13 00:29:32,328.328 INFO    ] 2026-06-13 00:29:32
[2026-06-13 00:29:32,552.552 INFO    ] 2026-06-13 00:29:32
[2026-06-13 00:29:32,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:32,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:32,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:32,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:32,967.967 INFO    ] time= 13/06/2026 00:29:32
[2026-06-13 00:29:33,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:33,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:33,102.102 INFO    ] No existing commands found in stream
[2026-06-13 00:29:38,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:29:38,115.115 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 00:29:41,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:29:41,494.494 INFO    ] Checking for system updates...
[2026-06-13 00:29:41,516.516 INFO    ] 200
[2026-06-13 00:29:41,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:41,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:29:41,550.550 INFO    ] No update needed
[2026-06-13 00:29:41,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 00:29:41,572.572 INFO    ] 200
[2026-06-13 00:29:41,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:41,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:29:41,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:41,645.645 INFO    ] No camera update needed
[2026-06-13 00:29:41,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:29:41,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:29:41,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:29:41,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:29:43,692.692 INFO    ] ================================================
[2026-06-13 00:29:43,707.707 INFO    ] Launching Daemon at Sat Jun 13 00:29:43 IST 2026
[2026-06-13 00:29:43,718.718 INFO    ] ================================================
[2026-06-13 00:29:44,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:29:44
[2026-06-13 00:29:44,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:29:44,574.574 INFO    ] Initializing speech engine...
[2026-06-13 00:29:44,578.578 INFO    ] 2026-06-13 00:29:44
[2026-06-13 00:29:44,787.787 INFO    ] 2026-06-13 00:29:44
[2026-06-13 00:29:44,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:44,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:45,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:45,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:45,181.181 INFO    ] time= 13/06/2026 00:29:45
[2026-06-13 00:29:45,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:45,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:45,382.382 INFO    ] No existing commands found in stream
[2026-06-13 00:29:50,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:29:50,414.414 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 00:29:51,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:29:51,759.759 INFO    ] Checking for system updates...
[2026-06-13 00:29:51,780.780 INFO    ] 200
[2026-06-13 00:29:51,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:51,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:51,813.813 INFO    ] No update needed
[2026-06-13 00:29:51,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 00:29:51,834.834 INFO    ] 200
[2026-06-13 00:29:51,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:29:51,859.859 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:29:51,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:29:51,901.901 INFO    ] No camera update needed
[2026-06-13 00:29:51,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:29:51,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:29:51,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:29:51,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:29:53,949.949 INFO    ] ================================================
[2026-06-13 00:29:53,964.964 INFO    ] Launching Daemon at Sat Jun 13 00:29:53 IST 2026
[2026-06-13 00:29:53,975.975 INFO    ] ================================================
[2026-06-13 00:29:54,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:29:54
[2026-06-13 00:29:54,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:29:54,826.826 INFO    ] Initializing speech engine...
[2026-06-13 00:29:54,830.830 INFO    ] 2026-06-13 00:29:54
[2026-06-13 00:29:55,038.038 INFO    ] 2026-06-13 00:29:55
[2026-06-13 00:29:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:29:55,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:29:55,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:29:55,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:29:55,440.440 INFO    ] time= 13/06/2026 00:29:55
[2026-06-13 00:29:55,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:29:55,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:29:55,556.556 INFO    ] No existing commands found in stream
[2026-06-13 00:30:00,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:00,569.569 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 00:30:03,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:30:03,877.877 INFO    ] Checking for system updates...
[2026-06-13 00:30:03,914.914 INFO    ] 200
[2026-06-13 00:30:03,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:03,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:03,974.974 INFO    ] No update needed
[2026-06-13 00:30:03,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:04,015.015 INFO    ] 200
[2026-06-13 00:30:04,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:04,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:04,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:30:04,111.111 INFO    ] No camera update needed
[2026-06-13 00:30:04,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:04,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:04,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:04,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:30:06,168.168 INFO    ] ================================================
[2026-06-13 00:30:06,185.185 INFO    ] Launching Daemon at Sat Jun 13 00:30:06 IST 2026
[2026-06-13 00:30:06,195.195 INFO    ] ================================================
[2026-06-13 00:30:06,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:30:06
[2026-06-13 00:30:06,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:30:06,975.975 INFO    ] Initializing speech engine...
[2026-06-13 00:30:06,984.984 INFO    ] 2026-06-13 00:30:06
[2026-06-13 00:30:07,208.208 INFO    ] 2026-06-13 00:30:07
[2026-06-13 00:30:07,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:30:07,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:30:07,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:30:07,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:30:07,583.583 INFO    ] time= 13/06/2026 00:30:07
[2026-06-13 00:30:07,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:30:07,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:30:07,770.770 INFO    ] No existing commands found in stream
[2026-06-13 00:30:12,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:12,783.783 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 00:30:13,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:30:13,366.366 INFO    ] Checking for system updates...
[2026-06-13 00:30:13,388.388 INFO    ] 200
[2026-06-13 00:30:13,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:13,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:30:13,422.422 INFO    ] No update needed
[2026-06-13 00:30:13,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:13,442.442 INFO    ] 200
[2026-06-13 00:30:13,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:13,468.468 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:13,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:13,515.515 INFO    ] No camera update needed
[2026-06-13 00:30:13,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:13,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:13,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:13,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:30:15,564.564 INFO    ] ================================================
[2026-06-13 00:30:15,580.580 INFO    ] Launching Daemon at Sat Jun 13 00:30:15 IST 2026
[2026-06-13 00:30:15,591.591 INFO    ] ================================================
[2026-06-13 00:30:15,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:30:15
[2026-06-13 00:30:16,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:30:16,406.406 INFO    ] Initializing speech engine...
[2026-06-13 00:30:16,414.414 INFO    ] 2026-06-13 00:30:16
[2026-06-13 00:30:16,643.643 INFO    ] 2026-06-13 00:30:16
[2026-06-13 00:30:16,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:30:16,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:30:16,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:30:17,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:30:17,070.070 INFO    ] time= 13/06/2026 00:30:17
[2026-06-13 00:30:17,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:30:17,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:30:17,205.205 INFO    ] No existing commands found in stream
[2026-06-13 00:30:22,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:22,219.219 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 00:30:24,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:30:24,051.051 INFO    ] Checking for system updates...
[2026-06-13 00:30:24,071.071 INFO    ] 200
[2026-06-13 00:30:24,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:24,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:24,104.104 INFO    ] No update needed
[2026-06-13 00:30:24,105.105 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:24,125.125 INFO    ] 200
[2026-06-13 00:30:24,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:24,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:24,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:24,198.198 INFO    ] No camera update needed
[2026-06-13 00:30:24,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:24,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:24,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:24,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:30:26,245.245 INFO    ] ================================================
[2026-06-13 00:30:26,262.262 INFO    ] Launching Daemon at Sat Jun 13 00:30:26 IST 2026
[2026-06-13 00:30:26,272.272 INFO    ] ================================================
[2026-06-13 00:30:26,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:30:26
[2026-06-13 00:30:26,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:30:27,107.107 INFO    ] Initializing speech engine...
[2026-06-13 00:30:27,116.116 INFO    ] 2026-06-13 00:30:27
[2026-06-13 00:30:27,336.336 INFO    ] 2026-06-13 00:30:27
[2026-06-13 00:30:27,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:30:27,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:30:27,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:30:27,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:30:27,766.766 INFO    ] time= 13/06/2026 00:30:27
[2026-06-13 00:30:27,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:30:27,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:30:27,901.901 INFO    ] No existing commands found in stream
[2026-06-13 00:30:32,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:32,913.913 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 00:30:36,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:30:36,932.932 INFO    ] Checking for system updates...
[2026-06-13 00:30:36,954.954 INFO    ] 200
[2026-06-13 00:30:36,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:36,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:36,990.990 INFO    ] No update needed
[2026-06-13 00:30:36,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:37,010.010 INFO    ] 200
[2026-06-13 00:30:37,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:37,035.035 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:37,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:37,081.081 INFO    ] No camera update needed
[2026-06-13 00:30:37,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:37,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:37,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:37,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:30:39,129.129 INFO    ] ================================================
[2026-06-13 00:30:39,144.144 INFO    ] Launching Daemon at Sat Jun 13 00:30:39 IST 2026
[2026-06-13 00:30:39,155.155 INFO    ] ================================================
[2026-06-13 00:30:39,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:30:39
[2026-06-13 00:30:39,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:30:39,969.969 INFO    ] Initializing speech engine...
[2026-06-13 00:30:39,973.973 INFO    ] 2026-06-13 00:30:39
[2026-06-13 00:30:40,165.165 INFO    ] 2026-06-13 00:30:40
[2026-06-13 00:30:40,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:30:40,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:30:40,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:30:40,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:30:40,600.600 INFO    ] time= 13/06/2026 00:30:40
[2026-06-13 00:30:40,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:30:40,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:30:40,798.798 INFO    ] No existing commands found in stream
[2026-06-13 00:30:45,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:45,810.810 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 00:30:48,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:30:48,054.054 INFO    ] Checking for system updates...
[2026-06-13 00:30:48,077.077 INFO    ] 200
[2026-06-13 00:30:48,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:48,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:48,114.114 INFO    ] No update needed
[2026-06-13 00:30:48,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:48,135.135 INFO    ] 200
[2026-06-13 00:30:48,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:48,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:48,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:48,209.209 INFO    ] No camera update needed
[2026-06-13 00:30:48,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:48,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:48,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:48,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:30:50,259.259 INFO    ] ================================================
[2026-06-13 00:30:50,274.274 INFO    ] Launching Daemon at Sat Jun 13 00:30:50 IST 2026
[2026-06-13 00:30:50,285.285 INFO    ] ================================================
[2026-06-13 00:30:50,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:30:50
[2026-06-13 00:30:50,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:30:51,096.096 INFO    ] Initializing speech engine...
[2026-06-13 00:30:51,106.106 INFO    ] 2026-06-13 00:30:51
[2026-06-13 00:30:51,323.323 INFO    ] 2026-06-13 00:30:51
[2026-06-13 00:30:51,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:30:51,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:30:51,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:30:51,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:30:51,708.708 INFO    ] time= 13/06/2026 00:30:51
[2026-06-13 00:30:51,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:30:51,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:30:51,889.889 INFO    ] No existing commands found in stream
[2026-06-13 00:30:56,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:30:56,901.901 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 00:30:58,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:30:58,924.924 INFO    ] Checking for system updates...
[2026-06-13 00:30:58,945.945 INFO    ] 200
[2026-06-13 00:30:58,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:58,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:30:58,980.980 INFO    ] No update needed
[2026-06-13 00:30:58,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 00:30:59,001.001 INFO    ] 200
[2026-06-13 00:30:59,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:30:59,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:30:59,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:30:59,169.169 INFO    ] No camera update needed
[2026-06-13 00:30:59,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:30:59,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:30:59,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:30:59,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:01,216.216 INFO    ] ================================================
[2026-06-13 00:31:01,233.233 INFO    ] Launching Daemon at Sat Jun 13 00:31:01 IST 2026
[2026-06-13 00:31:01,245.245 INFO    ] ================================================
[2026-06-13 00:31:01,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:01
[2026-06-13 00:31:01,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:02,196.196 INFO    ] Initializing speech engine...
[2026-06-13 00:31:02,198.198 INFO    ] 2026-06-13 00:31:02
[2026-06-13 00:31:02,476.476 INFO    ] 2026-06-13 00:31:02
[2026-06-13 00:31:02,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:02,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:02,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:02,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:02,893.893 INFO    ] time= 13/06/2026 00:31:02
[2026-06-13 00:31:02,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:02,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:03,073.073 INFO    ] No existing commands found in stream
[2026-06-13 00:31:08,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:31:08,085.085 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 00:31:10,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:31:10,060.060 INFO    ] Checking for system updates...
[2026-06-13 00:31:10,081.081 INFO    ] 200
[2026-06-13 00:31:10,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:10,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:10,117.117 INFO    ] No update needed
[2026-06-13 00:31:10,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 00:31:10,140.140 INFO    ] 200
[2026-06-13 00:31:10,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:10,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:31:10,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:10,214.214 INFO    ] No camera update needed
[2026-06-13 00:31:10,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:31:10,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:31:10,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:31:10,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:12,265.265 INFO    ] ================================================
[2026-06-13 00:31:12,281.281 INFO    ] Launching Daemon at Sat Jun 13 00:31:12 IST 2026
[2026-06-13 00:31:12,292.292 INFO    ] ================================================
[2026-06-13 00:31:12,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:12
[2026-06-13 00:31:12,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:13,114.114 INFO    ] Initializing speech engine...
[2026-06-13 00:31:13,125.125 INFO    ] 2026-06-13 00:31:13
[2026-06-13 00:31:13,327.327 INFO    ] 2026-06-13 00:31:13
[2026-06-13 00:31:13,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:13,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:13,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:13,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:13,736.736 INFO    ] time= 13/06/2026 00:31:13
[2026-06-13 00:31:13,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:13,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:13,841.841 INFO    ] No existing commands found in stream
[2026-06-13 00:31:18,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:31:18,852.852 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 00:31:20,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:31:20,586.586 INFO    ] Checking for system updates...
[2026-06-13 00:31:20,608.608 INFO    ] 200
[2026-06-13 00:31:20,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:20,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:31:20,641.641 INFO    ] No update needed
[2026-06-13 00:31:20,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 00:31:20,663.663 INFO    ] 200
[2026-06-13 00:31:20,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:20,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:31:20,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:20,729.729 INFO    ] No camera update needed
[2026-06-13 00:31:20,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:31:20,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:31:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:31:20,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:22,779.779 INFO    ] ================================================
[2026-06-13 00:31:22,796.796 INFO    ] Launching Daemon at Sat Jun 13 00:31:22 IST 2026
[2026-06-13 00:31:22,807.807 INFO    ] ================================================
[2026-06-13 00:31:23,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:23
[2026-06-13 00:31:23,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:23,680.680 INFO    ] Initializing speech engine...
[2026-06-13 00:31:23,691.691 INFO    ] 2026-06-13 00:31:23
[2026-06-13 00:31:23,898.898 INFO    ] 2026-06-13 00:31:23
[2026-06-13 00:31:23,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:24,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:24,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:24,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:24,317.317 INFO    ] time= 13/06/2026 00:31:24
[2026-06-13 00:31:24,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:24,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:24,412.412 INFO    ] No existing commands found in stream
[2026-06-13 00:31:29,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:31:29,425.425 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 00:31:32,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:31:32,341.341 INFO    ] Checking for system updates...
[2026-06-13 00:31:32,383.383 INFO    ] 200
[2026-06-13 00:31:32,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:32,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:32,449.449 INFO    ] No update needed
[2026-06-13 00:31:32,453.453 INFO    ] Checking for camera pi updates...
[2026-06-13 00:31:32,490.490 INFO    ] 200
[2026-06-13 00:31:32,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:32,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:31:32,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:32,573.573 INFO    ] No camera update needed
[2026-06-13 00:31:32,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:31:32,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:31:32,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:31:32,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:34,637.637 INFO    ] ================================================
[2026-06-13 00:31:34,653.653 INFO    ] Launching Daemon at Sat Jun 13 00:31:34 IST 2026
[2026-06-13 00:31:34,665.665 INFO    ] ================================================
[2026-06-13 00:31:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:35
[2026-06-13 00:31:35,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:35,891.891 INFO    ] Initializing speech engine...
[2026-06-13 00:31:35,904.904 INFO    ] 2026-06-13 00:31:35
[2026-06-13 00:31:36,115.115 INFO    ] 2026-06-13 00:31:36
[2026-06-13 00:31:36,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:36,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:36,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:36,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:36,524.524 INFO    ] time= 13/06/2026 00:31:36
[2026-06-13 00:31:36,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:36,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:36,635.635 INFO    ] No existing commands found in stream
[2026-06-13 00:31:41,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:31:41,663.663 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 00:31:45,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:31:45,011.011 INFO    ] Checking for system updates...
[2026-06-13 00:31:45,033.033 INFO    ] 200
[2026-06-13 00:31:45,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:45,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:31:45,070.070 INFO    ] No update needed
[2026-06-13 00:31:45,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 00:31:45,091.091 INFO    ] 200
[2026-06-13 00:31:45,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:45,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:31:45,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:31:45,158.158 INFO    ] No camera update needed
[2026-06-13 00:31:45,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:31:45,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:31:45,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:31:45,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:47,208.208 INFO    ] ================================================
[2026-06-13 00:31:47,224.224 INFO    ] Launching Daemon at Sat Jun 13 00:31:47 IST 2026
[2026-06-13 00:31:47,235.235 INFO    ] ================================================
[2026-06-13 00:31:47,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:47
[2026-06-13 00:31:47,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:48,022.022 INFO    ] Initializing speech engine...
[2026-06-13 00:31:48,028.028 INFO    ] 2026-06-13 00:31:48
[2026-06-13 00:31:48,237.237 INFO    ] 2026-06-13 00:31:48
[2026-06-13 00:31:48,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:48,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:48,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:48,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:48,701.701 INFO    ] time= 13/06/2026 00:31:48
[2026-06-13 00:31:48,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:48,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:48,829.829 INFO    ] No existing commands found in stream
[2026-06-13 00:31:53,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:31:53,841.841 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 00:31:56,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:31:56,104.104 INFO    ] Checking for system updates...
[2026-06-13 00:31:56,124.124 INFO    ] 200
[2026-06-13 00:31:56,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:56,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:31:56,160.160 INFO    ] No update needed
[2026-06-13 00:31:56,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 00:31:56,182.182 INFO    ] 200
[2026-06-13 00:31:56,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:31:56,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:31:56,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:31:56,246.246 INFO    ] No camera update needed
[2026-06-13 00:31:56,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:31:56,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:31:56,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:31:56,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:31:58,294.294 INFO    ] ================================================
[2026-06-13 00:31:58,310.310 INFO    ] Launching Daemon at Sat Jun 13 00:31:58 IST 2026
[2026-06-13 00:31:58,321.321 INFO    ] ================================================
[2026-06-13 00:31:58,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:31:58
[2026-06-13 00:31:58,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:31:59,132.132 INFO    ] Initializing speech engine...
[2026-06-13 00:31:59,138.138 INFO    ] 2026-06-13 00:31:59
[2026-06-13 00:31:59,354.354 INFO    ] 2026-06-13 00:31:59
[2026-06-13 00:31:59,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:31:59,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:31:59,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:31:59,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:31:59,774.774 INFO    ] time= 13/06/2026 00:31:59
[2026-06-13 00:31:59,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:31:59,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:31:59,949.949 INFO    ] No existing commands found in stream
[2026-06-13 00:32:04,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:32:04,975.975 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 00:32:08,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:32:08,176.176 INFO    ] Checking for system updates...
[2026-06-13 00:32:08,198.198 INFO    ] 200
[2026-06-13 00:32:08,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:08,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:08,231.231 INFO    ] No update needed
[2026-06-13 00:32:08,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 00:32:08,252.252 INFO    ] 200
[2026-06-13 00:32:08,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:08,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:32:08,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:08,318.318 INFO    ] No camera update needed
[2026-06-13 00:32:08,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:32:08,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:32:08,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:32:08,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:32:10,365.365 INFO    ] ================================================
[2026-06-13 00:32:10,381.381 INFO    ] Launching Daemon at Sat Jun 13 00:32:10 IST 2026
[2026-06-13 00:32:10,392.392 INFO    ] ================================================
[2026-06-13 00:32:10,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:32:10
[2026-06-13 00:32:11,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:32:11,325.325 INFO    ] Initializing speech engine...
[2026-06-13 00:32:11,334.334 INFO    ] 2026-06-13 00:32:11
[2026-06-13 00:32:11,611.611 INFO    ] 2026-06-13 00:32:11
[2026-06-13 00:32:11,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:32:11,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:32:11,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:32:12,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:32:12,079.079 INFO    ] time= 13/06/2026 00:32:12
[2026-06-13 00:32:12,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:32:12,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:32:12,310.310 INFO    ] No existing commands found in stream
[2026-06-13 00:32:17,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:32:17,333.333 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 00:32:21,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:32:21,237.237 INFO    ] Checking for system updates...
[2026-06-13 00:32:21,258.258 INFO    ] 200
[2026-06-13 00:32:21,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:21,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:21,294.294 INFO    ] No update needed
[2026-06-13 00:32:21,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 00:32:21,318.318 INFO    ] 200
[2026-06-13 00:32:21,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:21,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:32:21,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:21,384.384 INFO    ] No camera update needed
[2026-06-13 00:32:21,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:32:21,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:32:21,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:32:21,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:32:23,433.433 INFO    ] ================================================
[2026-06-13 00:32:23,448.448 INFO    ] Launching Daemon at Sat Jun 13 00:32:23 IST 2026
[2026-06-13 00:32:23,459.459 INFO    ] ================================================
[2026-06-13 00:32:23,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:32:23
[2026-06-13 00:32:24,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:32:24,259.259 INFO    ] Initializing speech engine...
[2026-06-13 00:32:24,268.268 INFO    ] 2026-06-13 00:32:24
[2026-06-13 00:32:24,470.470 INFO    ] 2026-06-13 00:32:24
[2026-06-13 00:32:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:32:24,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:32:24,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:32:24,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:32:24,885.885 INFO    ] time= 13/06/2026 00:32:24
[2026-06-13 00:32:24,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:32:24,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:32:24,982.982 INFO    ] No existing commands found in stream
[2026-06-13 00:32:30,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:32:30,009.009 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 00:32:33,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:32:33,156.156 INFO    ] Checking for system updates...
[2026-06-13 00:32:33,177.177 INFO    ] 200
[2026-06-13 00:32:33,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:33,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:33,215.215 INFO    ] No update needed
[2026-06-13 00:32:33,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 00:32:33,236.236 INFO    ] 200
[2026-06-13 00:32:33,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:33,262.262 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:32:33,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:33,311.311 INFO    ] No camera update needed
[2026-06-13 00:32:33,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:32:33,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:32:33,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:32:33,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:32:35,361.361 INFO    ] ================================================
[2026-06-13 00:32:35,377.377 INFO    ] Launching Daemon at Sat Jun 13 00:32:35 IST 2026
[2026-06-13 00:32:35,387.387 INFO    ] ================================================
[2026-06-13 00:32:35,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:32:35
[2026-06-13 00:32:36,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:32:36,249.249 INFO    ] Initializing speech engine...
[2026-06-13 00:32:36,255.255 INFO    ] 2026-06-13 00:32:36
[2026-06-13 00:32:36,463.463 INFO    ] 2026-06-13 00:32:36
[2026-06-13 00:32:36,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:32:36,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:32:36,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:32:36,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:32:36,883.883 INFO    ] time= 13/06/2026 00:32:36
[2026-06-13 00:32:36,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:32:36,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:32:36,981.981 INFO    ] No existing commands found in stream
[2026-06-13 00:32:41,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:32:41,999.999 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 00:32:45,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:32:45,065.065 INFO    ] Checking for system updates...
[2026-06-13 00:32:45,086.086 INFO    ] 200
[2026-06-13 00:32:45,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:45,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:32:45,123.123 INFO    ] No update needed
[2026-06-13 00:32:45,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 00:32:45,144.144 INFO    ] 200
[2026-06-13 00:32:45,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:45,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:32:45,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:32:45,212.212 INFO    ] No camera update needed
[2026-06-13 00:32:45,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:32:45,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:32:45,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:32:45,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:32:47,260.260 INFO    ] ================================================
[2026-06-13 00:32:47,275.275 INFO    ] Launching Daemon at Sat Jun 13 00:32:47 IST 2026
[2026-06-13 00:32:47,286.286 INFO    ] ================================================
[2026-06-13 00:32:47,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:32:47
[2026-06-13 00:32:47,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:32:48,131.131 INFO    ] Initializing speech engine...
[2026-06-13 00:32:48,139.139 INFO    ] 2026-06-13 00:32:48
[2026-06-13 00:32:48,342.342 INFO    ] 2026-06-13 00:32:48
[2026-06-13 00:32:48,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:32:48,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:32:48,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:32:48,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:32:48,749.749 INFO    ] time= 13/06/2026 00:32:48
[2026-06-13 00:32:48,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:32:48,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:32:48,860.860 INFO    ] No existing commands found in stream
[2026-06-13 00:32:53,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:32:53,878.878 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 00:32:54,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:32:54,942.942 INFO    ] Checking for system updates...
[2026-06-13 00:32:54,963.963 INFO    ] 200
[2026-06-13 00:32:54,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:54,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:32:54,997.997 INFO    ] No update needed
[2026-06-13 00:32:54,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 00:32:55,019.019 INFO    ] 200
[2026-06-13 00:32:55,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:32:55,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:32:55,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:32:55,084.084 INFO    ] No camera update needed
[2026-06-13 00:32:55,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:32:55,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:32:55,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:32:55,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:32:57,133.133 INFO    ] ================================================
[2026-06-13 00:32:57,149.149 INFO    ] Launching Daemon at Sat Jun 13 00:32:57 IST 2026
[2026-06-13 00:32:57,160.160 INFO    ] ================================================
[2026-06-13 00:32:57,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:32:57
[2026-06-13 00:32:57,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:32:58,032.032 INFO    ] Initializing speech engine...
[2026-06-13 00:32:58,036.036 INFO    ] 2026-06-13 00:32:58
[2026-06-13 00:32:58,244.244 INFO    ] 2026-06-13 00:32:58
[2026-06-13 00:32:58,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:32:58,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:32:58,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:32:58,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:32:58,664.664 INFO    ] time= 13/06/2026 00:32:58
[2026-06-13 00:32:58,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:32:58,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:32:58,766.766 INFO    ] No existing commands found in stream
[2026-06-13 00:33:03,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:03,784.784 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 00:33:04,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:33:04,881.881 INFO    ] Checking for system updates...
[2026-06-13 00:33:04,903.903 INFO    ] 200
[2026-06-13 00:33:04,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:04,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:04,939.939 INFO    ] No update needed
[2026-06-13 00:33:04,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:04,960.960 INFO    ] 200
[2026-06-13 00:33:04,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:04,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:05,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:05,030.030 INFO    ] No camera update needed
[2026-06-13 00:33:05,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:05,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:05,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:05,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:33:07,078.078 INFO    ] ================================================
[2026-06-13 00:33:07,093.093 INFO    ] Launching Daemon at Sat Jun 13 00:33:07 IST 2026
[2026-06-13 00:33:07,104.104 INFO    ] ================================================
[2026-06-13 00:33:07,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:33:07
[2026-06-13 00:33:07,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:33:07,907.907 INFO    ] Initializing speech engine...
[2026-06-13 00:33:07,921.921 INFO    ] 2026-06-13 00:33:07
[2026-06-13 00:33:08,127.127 INFO    ] 2026-06-13 00:33:08
[2026-06-13 00:33:08,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:33:08,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:33:08,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:33:08,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:33:08,543.543 INFO    ] time= 13/06/2026 00:33:08
[2026-06-13 00:33:08,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:33:08,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:33:08,643.643 INFO    ] No existing commands found in stream
[2026-06-13 00:33:13,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:13,655.655 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 00:33:16,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:33:16,908.908 INFO    ] Checking for system updates...
[2026-06-13 00:33:16,929.929 INFO    ] 200
[2026-06-13 00:33:16,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:16,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:16,963.963 INFO    ] No update needed
[2026-06-13 00:33:16,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:16,986.986 INFO    ] 200
[2026-06-13 00:33:16,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:17,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:17,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:17,054.054 INFO    ] No camera update needed
[2026-06-13 00:33:17,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:17,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:17,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:17,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:33:19,101.101 INFO    ] ================================================
[2026-06-13 00:33:19,117.117 INFO    ] Launching Daemon at Sat Jun 13 00:33:19 IST 2026
[2026-06-13 00:33:19,127.127 INFO    ] ================================================
[2026-06-13 00:33:19,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:33:19
[2026-06-13 00:33:19,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:33:19,903.903 INFO    ] Initializing speech engine...
[2026-06-13 00:33:19,911.911 INFO    ] 2026-06-13 00:33:19
[2026-06-13 00:33:20,120.120 INFO    ] 2026-06-13 00:33:20
[2026-06-13 00:33:20,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:33:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:33:20,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:33:20,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:33:20,683.683 INFO    ] time= 13/06/2026 00:33:20
[2026-06-13 00:33:20,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:33:20,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:33:20,758.758 INFO    ] No existing commands found in stream
[2026-06-13 00:33:25,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:25,771.771 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 00:33:26,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:33:26,893.893 INFO    ] Checking for system updates...
[2026-06-13 00:33:26,914.914 INFO    ] 200
[2026-06-13 00:33:26,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:26,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:26,949.949 INFO    ] No update needed
[2026-06-13 00:33:26,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:26,971.971 INFO    ] 200
[2026-06-13 00:33:26,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:26,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:27,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:27,035.035 INFO    ] No camera update needed
[2026-06-13 00:33:27,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:27,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:27,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:27,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:33:29,083.083 INFO    ] ================================================
[2026-06-13 00:33:29,098.098 INFO    ] Launching Daemon at Sat Jun 13 00:33:29 IST 2026
[2026-06-13 00:33:29,109.109 INFO    ] ================================================
[2026-06-13 00:33:29,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:33:29
[2026-06-13 00:33:29,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:33:29,933.933 INFO    ] Initializing speech engine...
[2026-06-13 00:33:29,937.937 INFO    ] 2026-06-13 00:33:29
[2026-06-13 00:33:30,142.142 INFO    ] 2026-06-13 00:33:30
[2026-06-13 00:33:30,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:33:30,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:33:30,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:33:30,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:33:30,560.560 INFO    ] time= 13/06/2026 00:33:30
[2026-06-13 00:33:30,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:33:30,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:33:30,658.658 INFO    ] No existing commands found in stream
[2026-06-13 00:33:35,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:35,670.670 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 00:33:37,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:33:37,486.486 INFO    ] Checking for system updates...
[2026-06-13 00:33:37,507.507 INFO    ] 200
[2026-06-13 00:33:37,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:37,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:37,540.540 INFO    ] No update needed
[2026-06-13 00:33:37,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:37,562.562 INFO    ] 200
[2026-06-13 00:33:37,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:37,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:37,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:37,630.630 INFO    ] No camera update needed
[2026-06-13 00:33:37,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:37,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:37,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:37,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:33:39,670.670 INFO    ] ================================================
[2026-06-13 00:33:39,685.685 INFO    ] Launching Daemon at Sat Jun 13 00:33:39 IST 2026
[2026-06-13 00:33:39,696.696 INFO    ] ================================================
[2026-06-13 00:33:40,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:33:40
[2026-06-13 00:33:40,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:33:40,480.480 INFO    ] Initializing speech engine...
[2026-06-13 00:33:40,487.487 INFO    ] 2026-06-13 00:33:40
[2026-06-13 00:33:40,700.700 INFO    ] 2026-06-13 00:33:40
[2026-06-13 00:33:40,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:33:40,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:33:40,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:33:41,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:33:41,115.115 INFO    ] time= 13/06/2026 00:33:41
[2026-06-13 00:33:41,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:33:41,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:33:41,214.214 INFO    ] No existing commands found in stream
[2026-06-13 00:33:46,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:46,226.226 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 00:33:49,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:33:49,549.549 INFO    ] Checking for system updates...
[2026-06-13 00:33:49,569.569 INFO    ] 200
[2026-06-13 00:33:49,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:49,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:33:49,605.605 INFO    ] No update needed
[2026-06-13 00:33:49,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:49,625.625 INFO    ] 200
[2026-06-13 00:33:49,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:49,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:49,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:33:49,692.692 INFO    ] No camera update needed
[2026-06-13 00:33:49,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:49,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:49,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:49,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:33:51,740.740 INFO    ] ================================================
[2026-06-13 00:33:51,756.756 INFO    ] Launching Daemon at Sat Jun 13 00:33:51 IST 2026
[2026-06-13 00:33:51,767.767 INFO    ] ================================================
[2026-06-13 00:33:52,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:33:52
[2026-06-13 00:33:52,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:33:52,569.569 INFO    ] Initializing speech engine...
[2026-06-13 00:33:52,575.575 INFO    ] 2026-06-13 00:33:52
[2026-06-13 00:33:52,779.779 INFO    ] 2026-06-13 00:33:52
[2026-06-13 00:33:52,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:33:52,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:33:52,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:33:53,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:33:53,196.196 INFO    ] time= 13/06/2026 00:33:53
[2026-06-13 00:33:53,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:33:53,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:33:53,294.294 INFO    ] No existing commands found in stream
[2026-06-13 00:33:58,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:33:58,305.305 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 00:33:58,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:33:58,861.861 INFO    ] Checking for system updates...
[2026-06-13 00:33:58,883.883 INFO    ] 200
[2026-06-13 00:33:58,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:58,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:33:58,917.917 INFO    ] No update needed
[2026-06-13 00:33:58,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 00:33:58,938.938 INFO    ] 200
[2026-06-13 00:33:58,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:33:58,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:33:59,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:33:59,002.002 INFO    ] No camera update needed
[2026-06-13 00:33:59,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:33:59,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:33:59,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:33:59,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:34:01,057.057 INFO    ] ================================================
[2026-06-13 00:34:01,072.072 INFO    ] Launching Daemon at Sat Jun 13 00:34:01 IST 2026
[2026-06-13 00:34:01,083.083 INFO    ] ================================================
[2026-06-13 00:34:01,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:34:01
[2026-06-13 00:34:01,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:34:02,018.018 INFO    ] Initializing speech engine...
[2026-06-13 00:34:02,032.032 INFO    ] 2026-06-13 00:34:02
[2026-06-13 00:34:02,276.276 INFO    ] 2026-06-13 00:34:02
[2026-06-13 00:34:02,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:34:02,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:34:02,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:34:02,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:34:02,704.704 INFO    ] time= 13/06/2026 00:34:02
[2026-06-13 00:34:02,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:34:02,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:34:02,872.872 INFO    ] No existing commands found in stream
[2026-06-13 00:34:07,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:34:07,885.885 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 00:34:11,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:34:11,837.837 INFO    ] Checking for system updates...
[2026-06-13 00:34:11,874.874 INFO    ] 200
[2026-06-13 00:34:11,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:11,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:34:11,941.941 INFO    ] No update needed
[2026-06-13 00:34:11,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 00:34:11,977.977 INFO    ] 200
[2026-06-13 00:34:11,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:12,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:34:12,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:34:12,048.048 INFO    ] No camera update needed
[2026-06-13 00:34:12,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:34:12,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:34:12,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:34:12,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:34:14,095.095 INFO    ] ================================================
[2026-06-13 00:34:14,110.110 INFO    ] Launching Daemon at Sat Jun 13 00:34:14 IST 2026
[2026-06-13 00:34:14,121.121 INFO    ] ================================================
[2026-06-13 00:34:14,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:34:14
[2026-06-13 00:34:14,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:34:15,237.237 INFO    ] Initializing speech engine...
[2026-06-13 00:34:15,244.244 INFO    ] 2026-06-13 00:34:15
[2026-06-13 00:34:15,497.497 INFO    ] 2026-06-13 00:34:15
[2026-06-13 00:34:15,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:34:15,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:34:15,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:34:15,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:34:15,851.851 INFO    ] time= 13/06/2026 00:34:15
[2026-06-13 00:34:15,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:34:15,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:34:15,957.957 INFO    ] No existing commands found in stream
[2026-06-13 00:34:20,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:34:20,990.990 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 00:34:23,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:34:23,808.808 INFO    ] Checking for system updates...
[2026-06-13 00:34:23,829.829 INFO    ] 200
[2026-06-13 00:34:23,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:23,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:23,862.862 INFO    ] No update needed
[2026-06-13 00:34:23,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 00:34:23,884.884 INFO    ] 200
[2026-06-13 00:34:23,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:23,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:34:23,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:34:23,954.954 INFO    ] No camera update needed
[2026-06-13 00:34:23,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:34:23,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:34:23,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:34:23,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:34:26,001.001 INFO    ] ================================================
[2026-06-13 00:34:26,017.017 INFO    ] Launching Daemon at Sat Jun 13 00:34:26 IST 2026
[2026-06-13 00:34:26,029.029 INFO    ] ================================================
[2026-06-13 00:34:26,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:34:26
[2026-06-13 00:34:26,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:34:26,817.817 INFO    ] Initializing speech engine...
[2026-06-13 00:34:26,821.821 INFO    ] 2026-06-13 00:34:26
[2026-06-13 00:34:27,040.040 INFO    ] 2026-06-13 00:34:27
[2026-06-13 00:34:27,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:34:27,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:34:27,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:34:27,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:34:27,444.444 INFO    ] time= 13/06/2026 00:34:27
[2026-06-13 00:34:27,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:34:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:34:27,565.565 INFO    ] No existing commands found in stream
[2026-06-13 00:34:32,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:34:32,577.577 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 00:34:34,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:34:34,498.498 INFO    ] Checking for system updates...
[2026-06-13 00:34:34,518.518 INFO    ] 200
[2026-06-13 00:34:34,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:34,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:34,552.552 INFO    ] No update needed
[2026-06-13 00:34:34,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 00:34:34,572.572 INFO    ] 200
[2026-06-13 00:34:34,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:34,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:34:34,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:34,645.645 INFO    ] No camera update needed
[2026-06-13 00:34:34,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:34:34,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:34:34,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:34:34,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:34:36,694.694 INFO    ] ================================================
[2026-06-13 00:34:36,709.709 INFO    ] Launching Daemon at Sat Jun 13 00:34:36 IST 2026
[2026-06-13 00:34:36,720.720 INFO    ] ================================================
[2026-06-13 00:34:37,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:34:37
[2026-06-13 00:34:37,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:34:38,039.039 INFO    ] Initializing speech engine...
[2026-06-13 00:34:38,052.052 INFO    ] 2026-06-13 00:34:38
[2026-06-13 00:34:38,360.360 INFO    ] 2026-06-13 00:34:38
[2026-06-13 00:34:38,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:34:38,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:34:38,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:34:38,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:34:38,870.870 INFO    ] time= 13/06/2026 00:34:38
[2026-06-13 00:34:38,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:34:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:34:39,011.011 INFO    ] No existing commands found in stream
[2026-06-13 00:34:44,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:34:44,042.042 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 00:34:45,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:34:45,958.958 INFO    ] Checking for system updates...
[2026-06-13 00:34:45,980.980 INFO    ] 200
[2026-06-13 00:34:45,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:46,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:46,013.013 INFO    ] No update needed
[2026-06-13 00:34:46,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 00:34:46,037.037 INFO    ] 200
[2026-06-13 00:34:46,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:46,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:34:46,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:46,105.105 INFO    ] No camera update needed
[2026-06-13 00:34:46,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:34:46,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:34:46,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:34:46,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:34:48,152.152 INFO    ] ================================================
[2026-06-13 00:34:48,167.167 INFO    ] Launching Daemon at Sat Jun 13 00:34:48 IST 2026
[2026-06-13 00:34:48,179.179 INFO    ] ================================================
[2026-06-13 00:34:48,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:34:48
[2026-06-13 00:34:48,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:34:49,041.041 INFO    ] Initializing speech engine...
[2026-06-13 00:34:49,049.049 INFO    ] 2026-06-13 00:34:49
[2026-06-13 00:34:49,260.260 INFO    ] 2026-06-13 00:34:49
[2026-06-13 00:34:49,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:34:49,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:34:49,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:34:49,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:34:49,667.667 INFO    ] time= 13/06/2026 00:34:49
[2026-06-13 00:34:49,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:34:49,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:34:49,777.777 INFO    ] No existing commands found in stream
[2026-06-13 00:34:54,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:34:54,799.799 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 00:34:58,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:34:58,023.023 INFO    ] Checking for system updates...
[2026-06-13 00:34:58,044.044 INFO    ] 200
[2026-06-13 00:34:58,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:58,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:58,078.078 INFO    ] No update needed
[2026-06-13 00:34:58,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 00:34:58,099.099 INFO    ] 200
[2026-06-13 00:34:58,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:34:58,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:34:58,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:34:58,173.173 INFO    ] No camera update needed
[2026-06-13 00:34:58,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:34:58,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:34:58,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:34:58,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:00,221.221 INFO    ] ================================================
[2026-06-13 00:35:00,236.236 INFO    ] Launching Daemon at Sat Jun 13 00:35:00 IST 2026
[2026-06-13 00:35:00,248.248 INFO    ] ================================================
[2026-06-13 00:35:00,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:00
[2026-06-13 00:35:00,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:01,027.027 INFO    ] Initializing speech engine...
[2026-06-13 00:35:01,034.034 INFO    ] 2026-06-13 00:35:01
[2026-06-13 00:35:01,253.253 INFO    ] 2026-06-13 00:35:01
[2026-06-13 00:35:01,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:01,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:01,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:01,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:01,669.669 INFO    ] time= 13/06/2026 00:35:01
[2026-06-13 00:35:01,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:01,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:01,920.920 INFO    ] No existing commands found in stream
[2026-06-13 00:35:06,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:06,945.945 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 00:35:07,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:35:07,357.357 INFO    ] Checking for system updates...
[2026-06-13 00:35:07,379.379 INFO    ] 200
[2026-06-13 00:35:07,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:07,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:07,412.412 INFO    ] No update needed
[2026-06-13 00:35:07,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:07,434.434 INFO    ] 200
[2026-06-13 00:35:07,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:07,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:07,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:07,599.599 INFO    ] No camera update needed
[2026-06-13 00:35:07,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:07,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:07,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:07,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:09,650.650 INFO    ] ================================================
[2026-06-13 00:35:09,666.666 INFO    ] Launching Daemon at Sat Jun 13 00:35:09 IST 2026
[2026-06-13 00:35:09,677.677 INFO    ] ================================================
[2026-06-13 00:35:10,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:10
[2026-06-13 00:35:10,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:10,506.506 INFO    ] Initializing speech engine...
[2026-06-13 00:35:10,511.511 INFO    ] 2026-06-13 00:35:10
[2026-06-13 00:35:10,741.741 INFO    ] 2026-06-13 00:35:10
[2026-06-13 00:35:10,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:10,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:10,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:11,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:11,167.167 INFO    ] time= 13/06/2026 00:35:11
[2026-06-13 00:35:11,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:11,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:11,307.307 INFO    ] No existing commands found in stream
[2026-06-13 00:35:16,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:16,336.336 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 00:35:17,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:35:17,956.956 INFO    ] Checking for system updates...
[2026-06-13 00:35:17,977.977 INFO    ] 200
[2026-06-13 00:35:17,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:18,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:18,010.010 INFO    ] No update needed
[2026-06-13 00:35:18,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:18,034.034 INFO    ] 200
[2026-06-13 00:35:18,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:18,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:18,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:18,099.099 INFO    ] No camera update needed
[2026-06-13 00:35:18,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:18,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:18,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:18,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:20,148.148 INFO    ] ================================================
[2026-06-13 00:35:20,164.164 INFO    ] Launching Daemon at Sat Jun 13 00:35:20 IST 2026
[2026-06-13 00:35:20,175.175 INFO    ] ================================================
[2026-06-13 00:35:20,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:20
[2026-06-13 00:35:20,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:20,981.981 INFO    ] Initializing speech engine...
[2026-06-13 00:35:20,986.986 INFO    ] 2026-06-13 00:35:20
[2026-06-13 00:35:21,202.202 INFO    ] 2026-06-13 00:35:21
[2026-06-13 00:35:21,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:21,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:21,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:21,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:21,594.594 INFO    ] time= 13/06/2026 00:35:21
[2026-06-13 00:35:21,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:21,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:21,756.756 INFO    ] No existing commands found in stream
[2026-06-13 00:35:26,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:26,769.769 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 00:35:28,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:35:28,005.005 INFO    ] Checking for system updates...
[2026-06-13 00:35:28,026.026 INFO    ] 200
[2026-06-13 00:35:28,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:28,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:28,061.061 INFO    ] No update needed
[2026-06-13 00:35:28,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:28,084.084 INFO    ] 200
[2026-06-13 00:35:28,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:28,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:28,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:28,146.146 INFO    ] No camera update needed
[2026-06-13 00:35:28,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:28,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:28,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:28,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:30,193.193 INFO    ] ================================================
[2026-06-13 00:35:30,208.208 INFO    ] Launching Daemon at Sat Jun 13 00:35:30 IST 2026
[2026-06-13 00:35:30,219.219 INFO    ] ================================================
[2026-06-13 00:35:30,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:30
[2026-06-13 00:35:30,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:31,028.028 INFO    ] Initializing speech engine...
[2026-06-13 00:35:31,032.032 INFO    ] 2026-06-13 00:35:31
[2026-06-13 00:35:31,239.239 INFO    ] 2026-06-13 00:35:31
[2026-06-13 00:35:31,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:31,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:31,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:31,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:31,655.655 INFO    ] time= 13/06/2026 00:35:31
[2026-06-13 00:35:31,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:31,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:31,788.788 INFO    ] No existing commands found in stream
[2026-06-13 00:35:36,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:36,799.799 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 00:35:37,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:35:37,173.173 INFO    ] Checking for system updates...
[2026-06-13 00:35:37,194.194 INFO    ] 200
[2026-06-13 00:35:37,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:37,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:35:37,229.229 INFO    ] No update needed
[2026-06-13 00:35:37,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:37,250.250 INFO    ] 200
[2026-06-13 00:35:37,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:37,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:37,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:35:37,314.314 INFO    ] No camera update needed
[2026-06-13 00:35:37,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:37,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:37,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:37,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:39,362.362 INFO    ] ================================================
[2026-06-13 00:35:39,378.378 INFO    ] Launching Daemon at Sat Jun 13 00:35:39 IST 2026
[2026-06-13 00:35:39,389.389 INFO    ] ================================================
[2026-06-13 00:35:39,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:39
[2026-06-13 00:35:40,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:40,180.180 INFO    ] Initializing speech engine...
[2026-06-13 00:35:40,183.183 INFO    ] 2026-06-13 00:35:40
[2026-06-13 00:35:40,400.400 INFO    ] 2026-06-13 00:35:40
[2026-06-13 00:35:40,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:40,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:40,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:40,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:40,805.805 INFO    ] time= 13/06/2026 00:35:40
[2026-06-13 00:35:40,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:40,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:40,921.921 INFO    ] No existing commands found in stream
[2026-06-13 00:35:45,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:45,934.934 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 00:35:47,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:35:47,907.907 INFO    ] Checking for system updates...
[2026-06-13 00:35:47,927.927 INFO    ] 200
[2026-06-13 00:35:47,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:47,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:47,961.961 INFO    ] No update needed
[2026-06-13 00:35:47,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:47,981.981 INFO    ] 200
[2026-06-13 00:35:47,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:48,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:48,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:35:48,048.048 INFO    ] No camera update needed
[2026-06-13 00:35:48,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:48,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:48,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:48,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:35:50,097.097 INFO    ] ================================================
[2026-06-13 00:35:50,112.112 INFO    ] Launching Daemon at Sat Jun 13 00:35:50 IST 2026
[2026-06-13 00:35:50,124.124 INFO    ] ================================================
[2026-06-13 00:35:50,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:35:50
[2026-06-13 00:35:50,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:35:50,929.929 INFO    ] Initializing speech engine...
[2026-06-13 00:35:50,934.934 INFO    ] 2026-06-13 00:35:50
[2026-06-13 00:35:51,141.141 INFO    ] 2026-06-13 00:35:51
[2026-06-13 00:35:51,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:35:51,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:35:51,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:35:51,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:35:51,551.551 INFO    ] time= 13/06/2026 00:35:51
[2026-06-13 00:35:51,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:35:51,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:35:51,663.663 INFO    ] No existing commands found in stream
[2026-06-13 00:35:56,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:35:56,676.676 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 00:35:59,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:35:59,178.178 INFO    ] Checking for system updates...
[2026-06-13 00:35:59,200.200 INFO    ] 200
[2026-06-13 00:35:59,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:59,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:35:59,233.233 INFO    ] No update needed
[2026-06-13 00:35:59,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 00:35:59,254.254 INFO    ] 200
[2026-06-13 00:35:59,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:35:59,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:35:59,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:35:59,396.396 INFO    ] No camera update needed
[2026-06-13 00:35:59,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:35:59,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:35:59,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:35:59,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:01,444.444 INFO    ] ================================================
[2026-06-13 00:36:01,472.472 INFO    ] Launching Daemon at Sat Jun 13 00:36:01 IST 2026
[2026-06-13 00:36:01,497.497 INFO    ] ================================================
[2026-06-13 00:36:02,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:02
[2026-06-13 00:36:02,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:03,103.103 INFO    ] Initializing speech engine...
[2026-06-13 00:36:03,111.111 INFO    ] 2026-06-13 00:36:03
[2026-06-13 00:36:03,409.409 INFO    ] 2026-06-13 00:36:03
[2026-06-13 00:36:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:03,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:03,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:03,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:36:03,744.744 INFO    ] time= 13/06/2026 00:36:03
[2026-06-13 00:36:03,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:36:03,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:36:03,824.824 INFO    ] No existing commands found in stream
[2026-06-13 00:36:08,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:36:08,839.839 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 00:36:09,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:36:09,856.856 INFO    ] Checking for system updates...
[2026-06-13 00:36:09,879.879 INFO    ] 200
[2026-06-13 00:36:09,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:09,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:09,912.912 INFO    ] No update needed
[2026-06-13 00:36:09,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 00:36:09,935.935 INFO    ] 200
[2026-06-13 00:36:09,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:09,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:36:10,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:10,002.002 INFO    ] No camera update needed
[2026-06-13 00:36:10,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:36:10,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:36:10,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:36:10,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:12,050.050 INFO    ] ================================================
[2026-06-13 00:36:12,065.065 INFO    ] Launching Daemon at Sat Jun 13 00:36:12 IST 2026
[2026-06-13 00:36:12,075.075 INFO    ] ================================================
[2026-06-13 00:36:12,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:12
[2026-06-13 00:36:12,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:12,899.899 INFO    ] Initializing speech engine...
[2026-06-13 00:36:12,904.904 INFO    ] 2026-06-13 00:36:12
[2026-06-13 00:36:13,110.110 INFO    ] 2026-06-13 00:36:13
[2026-06-13 00:36:13,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:13,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:13,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:13,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:36:13,510.510 INFO    ] time= 13/06/2026 00:36:13
[2026-06-13 00:36:13,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:36:13,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:36:13,626.626 INFO    ] No existing commands found in stream
[2026-06-13 00:36:18,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:36:18,637.637 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 00:36:22,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:36:22,720.720 INFO    ] Checking for system updates...
[2026-06-13 00:36:22,747.747 INFO    ] 200
[2026-06-13 00:36:22,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:22,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:22,783.783 INFO    ] No update needed
[2026-06-13 00:36:22,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 00:36:22,804.804 INFO    ] 200
[2026-06-13 00:36:22,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:22,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:36:22,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:22,872.872 INFO    ] No camera update needed
[2026-06-13 00:36:22,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:36:22,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:36:22,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:36:22,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:24,919.919 INFO    ] ================================================
[2026-06-13 00:36:24,934.934 INFO    ] Launching Daemon at Sat Jun 13 00:36:24 IST 2026
[2026-06-13 00:36:24,944.944 INFO    ] ================================================
[2026-06-13 00:36:25,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:25
[2026-06-13 00:36:25,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:25,746.746 INFO    ] Initializing speech engine...
[2026-06-13 00:36:25,754.754 INFO    ] 2026-06-13 00:36:25
[2026-06-13 00:36:25,971.971 INFO    ] 2026-06-13 00:36:25
[2026-06-13 00:36:26,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:26,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:26,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:26,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:36:26,374.374 INFO    ] time= 13/06/2026 00:36:26
[2026-06-13 00:36:26,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:36:26,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:36:26,491.491 INFO    ] No existing commands found in stream
[2026-06-13 00:36:31,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:36:31,501.501 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 00:36:32,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:36:32,927.927 INFO    ] Checking for system updates...
[2026-06-13 00:36:32,949.949 INFO    ] 200
[2026-06-13 00:36:32,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:32,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:36:32,982.982 INFO    ] No update needed
[2026-06-13 00:36:32,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 00:36:33,006.006 INFO    ] 200
[2026-06-13 00:36:33,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:33,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:36:33,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:36:33,070.070 INFO    ] No camera update needed
[2026-06-13 00:36:33,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:36:33,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:36:33,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:36:33,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:35,119.119 INFO    ] ================================================
[2026-06-13 00:36:35,135.135 INFO    ] Launching Daemon at Sat Jun 13 00:36:35 IST 2026
[2026-06-13 00:36:35,146.146 INFO    ] ================================================
[2026-06-13 00:36:35,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:35
[2026-06-13 00:36:35,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:35,970.970 INFO    ] Initializing speech engine...
[2026-06-13 00:36:35,975.975 INFO    ] 2026-06-13 00:36:35
[2026-06-13 00:36:36,182.182 INFO    ] 2026-06-13 00:36:36
[2026-06-13 00:36:36,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:36,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:36,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:36,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:36:36,585.585 INFO    ] time= 13/06/2026 00:36:36
[2026-06-13 00:36:36,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:36:36,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:36:36,704.704 INFO    ] No existing commands found in stream
[2026-06-13 00:36:41,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:36:41,721.721 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 00:36:45,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:36:45,543.543 INFO    ] Checking for system updates...
[2026-06-13 00:36:45,580.580 INFO    ] 200
[2026-06-13 00:36:45,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:45,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:45,638.638 INFO    ] No update needed
[2026-06-13 00:36:45,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 00:36:45,661.661 INFO    ] 200
[2026-06-13 00:36:45,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:45,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:36:45,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:36:45,725.725 INFO    ] No camera update needed
[2026-06-13 00:36:45,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:36:45,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:36:45,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:36:45,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:47,774.774 INFO    ] ================================================
[2026-06-13 00:36:47,789.789 INFO    ] Launching Daemon at Sat Jun 13 00:36:47 IST 2026
[2026-06-13 00:36:47,800.800 INFO    ] ================================================
[2026-06-13 00:36:48,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:48
[2026-06-13 00:36:48,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:48,614.614 INFO    ] Initializing speech engine...
[2026-06-13 00:36:48,619.619 INFO    ] 2026-06-13 00:36:48
[2026-06-13 00:36:48,823.823 INFO    ] 2026-06-13 00:36:48
[2026-06-13 00:36:48,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:49,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:49,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:49,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:36:49,216.216 INFO    ] time= 13/06/2026 00:36:49
[2026-06-13 00:36:49,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:36:49,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:36:49,335.335 INFO    ] No existing commands found in stream
[2026-06-13 00:36:54,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:36:54,348.348 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 00:36:56,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:36:56,305.305 INFO    ] Checking for system updates...
[2026-06-13 00:36:56,325.325 INFO    ] 200
[2026-06-13 00:36:56,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:56,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:36:56,358.358 INFO    ] No update needed
[2026-06-13 00:36:56,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 00:36:56,380.380 INFO    ] 200
[2026-06-13 00:36:56,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:36:56,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:36:56,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:36:56,442.442 INFO    ] No camera update needed
[2026-06-13 00:36:56,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:36:56,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:36:56,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:36:56,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:36:58,490.490 INFO    ] ================================================
[2026-06-13 00:36:58,506.506 INFO    ] Launching Daemon at Sat Jun 13 00:36:58 IST 2026
[2026-06-13 00:36:58,517.517 INFO    ] ================================================
[2026-06-13 00:36:58,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:36:58
[2026-06-13 00:36:59,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:36:59,363.363 INFO    ] Initializing speech engine...
[2026-06-13 00:36:59,376.376 INFO    ] 2026-06-13 00:36:59
[2026-06-13 00:36:59,583.583 INFO    ] 2026-06-13 00:36:59
[2026-06-13 00:36:59,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:36:59,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:36:59,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:36:59,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:00,004.004 INFO    ] time= 13/06/2026 00:36:59
[2026-06-13 00:37:00,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:00,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:00,101.101 INFO    ] No existing commands found in stream
[2026-06-13 00:37:05,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:05,119.119 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 00:37:05,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:37:05,579.579 INFO    ] Checking for system updates...
[2026-06-13 00:37:05,601.601 INFO    ] 200
[2026-06-13 00:37:05,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:05,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:05,640.640 INFO    ] No update needed
[2026-06-13 00:37:05,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:05,661.661 INFO    ] 200
[2026-06-13 00:37:05,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:05,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:05,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:05,725.725 INFO    ] No camera update needed
[2026-06-13 00:37:05,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:05,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:05,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:05,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:07,771.771 INFO    ] ================================================
[2026-06-13 00:37:07,786.786 INFO    ] Launching Daemon at Sat Jun 13 00:37:07 IST 2026
[2026-06-13 00:37:07,797.797 INFO    ] ================================================
[2026-06-13 00:37:08,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:37:08
[2026-06-13 00:37:08,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:37:08,604.604 INFO    ] Initializing speech engine...
[2026-06-13 00:37:08,611.611 INFO    ] 2026-06-13 00:37:08
[2026-06-13 00:37:08,882.882 INFO    ] 2026-06-13 00:37:08
[2026-06-13 00:37:08,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:37:09,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:37:09,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:37:09,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:09,271.271 INFO    ] time= 13/06/2026 00:37:09
[2026-06-13 00:37:09,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:09,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:09,373.373 INFO    ] No existing commands found in stream
[2026-06-13 00:37:14,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:14,389.389 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 00:37:15,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:37:15,297.297 INFO    ] Checking for system updates...
[2026-06-13 00:37:15,318.318 INFO    ] 200
[2026-06-13 00:37:15,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:15,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:15,351.351 INFO    ] No update needed
[2026-06-13 00:37:15,352.352 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:15,372.372 INFO    ] 200
[2026-06-13 00:37:15,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:15,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:15,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:15,536.536 INFO    ] No camera update needed
[2026-06-13 00:37:15,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:15,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:15,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:15,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:17,583.583 INFO    ] ================================================
[2026-06-13 00:37:17,599.599 INFO    ] Launching Daemon at Sat Jun 13 00:37:17 IST 2026
[2026-06-13 00:37:17,610.610 INFO    ] ================================================
[2026-06-13 00:37:17,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:37:17
[2026-06-13 00:37:18,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:37:18,443.443 INFO    ] Initializing speech engine...
[2026-06-13 00:37:18,448.448 INFO    ] 2026-06-13 00:37:18
[2026-06-13 00:37:18,653.653 INFO    ] 2026-06-13 00:37:18
[2026-06-13 00:37:18,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:37:18,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:37:18,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:37:18,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:19,052.052 INFO    ] time= 13/06/2026 00:37:19
[2026-06-13 00:37:19,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:19,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:19,167.167 INFO    ] No existing commands found in stream
[2026-06-13 00:37:24,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:24,180.180 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 00:37:25,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:37:25,185.185 INFO    ] Checking for system updates...
[2026-06-13 00:37:25,205.205 INFO    ] 200
[2026-06-13 00:37:25,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:25,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:25,241.241 INFO    ] No update needed
[2026-06-13 00:37:25,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:25,261.261 INFO    ] 200
[2026-06-13 00:37:25,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:25,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:25,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:25,327.327 INFO    ] No camera update needed
[2026-06-13 00:37:25,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:25,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:25,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:25,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:27,377.377 INFO    ] ================================================
[2026-06-13 00:37:27,392.392 INFO    ] Launching Daemon at Sat Jun 13 00:37:27 IST 2026
[2026-06-13 00:37:27,403.403 INFO    ] ================================================
[2026-06-13 00:37:27,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:37:27
[2026-06-13 00:37:28,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:37:28,201.201 INFO    ] Initializing speech engine...
[2026-06-13 00:37:28,215.215 INFO    ] 2026-06-13 00:37:28
[2026-06-13 00:37:28,419.419 INFO    ] 2026-06-13 00:37:28
[2026-06-13 00:37:28,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:37:28,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:37:28,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:37:28,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:28,825.825 INFO    ] time= 13/06/2026 00:37:28
[2026-06-13 00:37:28,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:28,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:28,934.934 INFO    ] No existing commands found in stream
[2026-06-13 00:37:33,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:33,948.948 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 00:37:34,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:37:34,942.942 INFO    ] Checking for system updates...
[2026-06-13 00:37:34,964.964 INFO    ] 200
[2026-06-13 00:37:34,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:34,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:37:35,000.000 INFO    ] No update needed
[2026-06-13 00:37:35,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:35,021.021 INFO    ] 200
[2026-06-13 00:37:35,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:35,046.046 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:35,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:37:35,083.083 INFO    ] No camera update needed
[2026-06-13 00:37:35,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:35,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:35,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:35,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:37,130.130 INFO    ] ================================================
[2026-06-13 00:37:37,145.145 INFO    ] Launching Daemon at Sat Jun 13 00:37:37 IST 2026
[2026-06-13 00:37:37,156.156 INFO    ] ================================================
[2026-06-13 00:37:37,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:37:37
[2026-06-13 00:37:37,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:37:37,966.966 INFO    ] Initializing speech engine...
[2026-06-13 00:37:37,971.971 INFO    ] 2026-06-13 00:37:37
[2026-06-13 00:37:38,174.174 INFO    ] 2026-06-13 00:37:38
[2026-06-13 00:37:38,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:37:38,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:37:38,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:37:38,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:38,584.584 INFO    ] time= 13/06/2026 00:37:38
[2026-06-13 00:37:38,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:38,689.689 INFO    ] No existing commands found in stream
[2026-06-13 00:37:43,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:43,701.701 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 00:37:47,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:37:47,638.638 INFO    ] Checking for system updates...
[2026-06-13 00:37:47,659.659 INFO    ] 200
[2026-06-13 00:37:47,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:47,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:37:47,692.692 INFO    ] No update needed
[2026-06-13 00:37:47,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:47,713.713 INFO    ] 200
[2026-06-13 00:37:47,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:47,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:47,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:37:47,777.777 INFO    ] No camera update needed
[2026-06-13 00:37:47,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:47,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:47,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:47,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:49,825.825 INFO    ] ================================================
[2026-06-13 00:37:49,841.841 INFO    ] Launching Daemon at Sat Jun 13 00:37:49 IST 2026
[2026-06-13 00:37:49,851.851 INFO    ] ================================================
[2026-06-13 00:37:50,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:37:50
[2026-06-13 00:37:50,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:37:50,671.671 INFO    ] Initializing speech engine...
[2026-06-13 00:37:50,683.683 INFO    ] 2026-06-13 00:37:50
[2026-06-13 00:37:50,900.900 INFO    ] 2026-06-13 00:37:50
[2026-06-13 00:37:50,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:37:51,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:37:51,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:37:51,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:37:51,267.267 INFO    ] time= 13/06/2026 00:37:51
[2026-06-13 00:37:51,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:37:51,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:37:51,444.444 INFO    ] No existing commands found in stream
[2026-06-13 00:37:56,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:37:56,457.457 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 00:37:57,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:37:57,446.446 INFO    ] Checking for system updates...
[2026-06-13 00:37:57,468.468 INFO    ] 200
[2026-06-13 00:37:57,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:57,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:57,520.520 INFO    ] No update needed
[2026-06-13 00:37:57,522.522 INFO    ] Checking for camera pi updates...
[2026-06-13 00:37:57,541.541 INFO    ] 200
[2026-06-13 00:37:57,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:37:57,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:37:57,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:37:57,604.604 INFO    ] No camera update needed
[2026-06-13 00:37:57,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:37:57,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:37:57,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:37:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:37:59,652.652 INFO    ] ================================================
[2026-06-13 00:37:59,671.671 INFO    ] Launching Daemon at Sat Jun 13 00:37:59 IST 2026
[2026-06-13 00:37:59,682.682 INFO    ] ================================================
[2026-06-13 00:38:00,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:38:00
[2026-06-13 00:38:00,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:38:00,464.464 INFO    ] Initializing speech engine...
[2026-06-13 00:38:00,470.470 INFO    ] 2026-06-13 00:38:00
[2026-06-13 00:38:00,675.675 INFO    ] 2026-06-13 00:38:00
[2026-06-13 00:38:00,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:38:00,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:38:00,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:38:01,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:38:01,102.102 INFO    ] time= 13/06/2026 00:38:01
[2026-06-13 00:38:01,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:38:01,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:38:01,244.244 INFO    ] No existing commands found in stream
[2026-06-13 00:38:06,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:38:06,257.257 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 00:38:09,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:38:09,171.171 INFO    ] Checking for system updates...
[2026-06-13 00:38:09,193.193 INFO    ] 200
[2026-06-13 00:38:09,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:09,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:09,226.226 INFO    ] No update needed
[2026-06-13 00:38:09,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 00:38:09,247.247 INFO    ] 200
[2026-06-13 00:38:09,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:09,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:38:09,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:09,310.310 INFO    ] No camera update needed
[2026-06-13 00:38:09,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:38:09,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:38:09,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:38:09,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:38:11,342.342 INFO    ] ================================================
[2026-06-13 00:38:11,350.350 INFO    ] Launching Daemon at Sat Jun 13 00:38:11 IST 2026
[2026-06-13 00:38:11,356.356 INFO    ] ================================================
[2026-06-13 00:38:11,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:38:11
[2026-06-13 00:38:11,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:38:12,110.110 INFO    ] Initializing speech engine...
[2026-06-13 00:38:12,115.115 INFO    ] 2026-06-13 00:38:12
[2026-06-13 00:38:12,318.318 INFO    ] 2026-06-13 00:38:12
[2026-06-13 00:38:12,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:38:12,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:38:12,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:38:12,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:38:12,683.683 INFO    ] time= 13/06/2026 00:38:12
[2026-06-13 00:38:12,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:38:12,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:38:12,852.852 INFO    ] No existing commands found in stream
[2026-06-13 00:38:17,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:38:17,865.865 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 00:38:21,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:38:21,244.244 INFO    ] Checking for system updates...
[2026-06-13 00:38:21,266.266 INFO    ] 200
[2026-06-13 00:38:21,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:21,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:38:21,301.301 INFO    ] No update needed
[2026-06-13 00:38:21,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 00:38:21,325.325 INFO    ] 200
[2026-06-13 00:38:21,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:21,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:38:21,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:38:21,398.398 INFO    ] No camera update needed
[2026-06-13 00:38:21,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:38:21,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:38:21,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:38:21,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:38:23,447.447 INFO    ] ================================================
[2026-06-13 00:38:23,463.463 INFO    ] Launching Daemon at Sat Jun 13 00:38:23 IST 2026
[2026-06-13 00:38:23,474.474 INFO    ] ================================================
[2026-06-13 00:38:23,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:38:23
[2026-06-13 00:38:24,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:38:24,287.287 INFO    ] Initializing speech engine...
[2026-06-13 00:38:24,297.297 INFO    ] 2026-06-13 00:38:24
[2026-06-13 00:38:24,505.505 INFO    ] 2026-06-13 00:38:24
[2026-06-13 00:38:24,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:38:24,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:38:24,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:38:24,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:38:24,835.835 INFO    ] time= 13/06/2026 00:38:24
[2026-06-13 00:38:24,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:38:24,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:38:24,940.940 INFO    ] No existing commands found in stream
[2026-06-13 00:38:29,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:38:29,969.969 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 00:38:33,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:38:33,977.977 INFO    ] Checking for system updates...
[2026-06-13 00:38:34,001.001 INFO    ] 200
[2026-06-13 00:38:34,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:34,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:34,035.035 INFO    ] No update needed
[2026-06-13 00:38:34,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 00:38:34,056.056 INFO    ] 200
[2026-06-13 00:38:34,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:34,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:38:34,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:34,124.124 INFO    ] No camera update needed
[2026-06-13 00:38:34,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:38:34,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:38:34,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:38:34,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:38:36,171.171 INFO    ] ================================================
[2026-06-13 00:38:36,186.186 INFO    ] Launching Daemon at Sat Jun 13 00:38:36 IST 2026
[2026-06-13 00:38:36,197.197 INFO    ] ================================================
[2026-06-13 00:38:36,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:38:36
[2026-06-13 00:38:36,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:38:37,039.039 INFO    ] Initializing speech engine...
[2026-06-13 00:38:37,044.044 INFO    ] 2026-06-13 00:38:37
[2026-06-13 00:38:37,251.251 INFO    ] 2026-06-13 00:38:37
[2026-06-13 00:38:37,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:38:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:38:37,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:38:37,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:38:37,645.645 INFO    ] time= 13/06/2026 00:38:37
[2026-06-13 00:38:37,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:38:37,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:38:37,791.791 INFO    ] No existing commands found in stream
[2026-06-13 00:38:42,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:38:42,808.808 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 00:38:45,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:38:45,020.020 INFO    ] Checking for system updates...
[2026-06-13 00:38:45,041.041 INFO    ] 200
[2026-06-13 00:38:45,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:45,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:45,076.076 INFO    ] No update needed
[2026-06-13 00:38:45,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 00:38:45,100.100 INFO    ] 200
[2026-06-13 00:38:45,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:45,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:38:45,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:38:45,175.175 INFO    ] No camera update needed
[2026-06-13 00:38:45,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:38:45,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:38:45,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:38:45,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:38:47,223.223 INFO    ] ================================================
[2026-06-13 00:38:47,238.238 INFO    ] Launching Daemon at Sat Jun 13 00:38:47 IST 2026
[2026-06-13 00:38:47,249.249 INFO    ] ================================================
[2026-06-13 00:38:47,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:38:47
[2026-06-13 00:38:47,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:38:48,064.064 INFO    ] Initializing speech engine...
[2026-06-13 00:38:48,072.072 INFO    ] 2026-06-13 00:38:48
[2026-06-13 00:38:48,286.286 INFO    ] 2026-06-13 00:38:48
[2026-06-13 00:38:48,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:38:48,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:38:48,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:38:48,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:38:48,702.702 INFO    ] time= 13/06/2026 00:38:48
[2026-06-13 00:38:48,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:38:48,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:38:48,802.802 INFO    ] No existing commands found in stream
[2026-06-13 00:38:53,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:38:53,814.814 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 00:38:57,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:38:57,837.837 INFO    ] Checking for system updates...
[2026-06-13 00:38:57,859.859 INFO    ] 200
[2026-06-13 00:38:57,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:57,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:38:57,894.894 INFO    ] No update needed
[2026-06-13 00:38:57,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 00:38:57,917.917 INFO    ] 200
[2026-06-13 00:38:57,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:38:57,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:38:57,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:38:57,983.983 INFO    ] No camera update needed
[2026-06-13 00:38:57,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:38:57,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:38:57,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:38:57,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:39:00,032.032 INFO    ] ================================================
[2026-06-13 00:39:00,047.047 INFO    ] Launching Daemon at Sat Jun 13 00:39:00 IST 2026
[2026-06-13 00:39:00,058.058 INFO    ] ================================================
[2026-06-13 00:39:00,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:39:00
[2026-06-13 00:39:00,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:39:00,866.866 INFO    ] Initializing speech engine...
[2026-06-13 00:39:00,876.876 INFO    ] 2026-06-13 00:39:00
[2026-06-13 00:39:01,084.084 INFO    ] 2026-06-13 00:39:01
[2026-06-13 00:39:01,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:39:01,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:39:01,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:39:01,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:39:01,500.500 INFO    ] time= 13/06/2026 00:39:01
[2026-06-13 00:39:01,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:39:01,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:39:01,561.561 INFO    ] No existing commands found in stream
[2026-06-13 00:39:06,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:39:06,573.573 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 00:39:10,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:39:10,562.562 INFO    ] Checking for system updates...
[2026-06-13 00:39:10,585.585 INFO    ] 200
[2026-06-13 00:39:10,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:10,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:39:10,621.621 INFO    ] No update needed
[2026-06-13 00:39:10,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 00:39:10,644.644 INFO    ] 200
[2026-06-13 00:39:10,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:10,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:39:10,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:39:10,715.715 INFO    ] No camera update needed
[2026-06-13 00:39:10,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:39:10,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:39:10,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:39:10,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:39:12,761.761 INFO    ] ================================================
[2026-06-13 00:39:12,776.776 INFO    ] Launching Daemon at Sat Jun 13 00:39:12 IST 2026
[2026-06-13 00:39:12,787.787 INFO    ] ================================================
[2026-06-13 00:39:13,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:39:13
[2026-06-13 00:39:13,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:39:13,596.596 INFO    ] Initializing speech engine...
[2026-06-13 00:39:13,606.606 INFO    ] 2026-06-13 00:39:13
[2026-06-13 00:39:13,821.821 INFO    ] 2026-06-13 00:39:13
[2026-06-13 00:39:13,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:39:13,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:39:14,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:39:14,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:39:14,216.216 INFO    ] time= 13/06/2026 00:39:14
[2026-06-13 00:39:14,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:39:14,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:39:14,371.371 INFO    ] No existing commands found in stream
[2026-06-13 00:39:19,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:39:19,384.384 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 00:39:22,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:39:22,286.286 INFO    ] Checking for system updates...
[2026-06-13 00:39:22,307.307 INFO    ] 200
[2026-06-13 00:39:22,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:22,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:39:22,340.340 INFO    ] No update needed
[2026-06-13 00:39:22,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 00:39:22,361.361 INFO    ] 200
[2026-06-13 00:39:22,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:22,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:39:22,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:39:22,521.521 INFO    ] No camera update needed
[2026-06-13 00:39:22,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:39:22,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:39:22,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:39:22,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:39:24,568.568 INFO    ] ================================================
[2026-06-13 00:39:24,584.584 INFO    ] Launching Daemon at Sat Jun 13 00:39:24 IST 2026
[2026-06-13 00:39:24,595.595 INFO    ] ================================================
[2026-06-13 00:39:24,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:39:24
[2026-06-13 00:39:25,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:39:25,391.391 INFO    ] Initializing speech engine...
[2026-06-13 00:39:25,398.398 INFO    ] 2026-06-13 00:39:25
[2026-06-13 00:39:25,611.611 INFO    ] 2026-06-13 00:39:25
[2026-06-13 00:39:25,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:39:25,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:39:25,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:39:25,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:39:26,001.001 INFO    ] time= 13/06/2026 00:39:25
[2026-06-13 00:39:26,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:39:26,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:39:26,128.128 INFO    ] No existing commands found in stream
[2026-06-13 00:39:31,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:39:31,144.144 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 00:39:33,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:39:33,938.938 INFO    ] Checking for system updates...
[2026-06-13 00:39:33,960.960 INFO    ] 200
[2026-06-13 00:39:33,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:33,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:39:33,993.993 INFO    ] No update needed
[2026-06-13 00:39:33,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 00:39:34,013.013 INFO    ] 200
[2026-06-13 00:39:34,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:34,039.039 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:39:34,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:39:34,085.085 INFO    ] No camera update needed
[2026-06-13 00:39:34,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:39:34,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:39:34,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:39:34,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:39:36,133.133 INFO    ] ================================================
[2026-06-13 00:39:36,148.148 INFO    ] Launching Daemon at Sat Jun 13 00:39:36 IST 2026
[2026-06-13 00:39:36,158.158 INFO    ] ================================================
[2026-06-13 00:39:36,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:39:36
[2026-06-13 00:39:36,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:39:36,956.956 INFO    ] Initializing speech engine...
[2026-06-13 00:39:36,961.961 INFO    ] 2026-06-13 00:39:36
[2026-06-13 00:39:37,163.163 INFO    ] 2026-06-13 00:39:37
[2026-06-13 00:39:37,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:39:37,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:39:37,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:39:37,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:39:37,577.577 INFO    ] time= 13/06/2026 00:39:37
[2026-06-13 00:39:37,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:39:37,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:39:37,676.676 INFO    ] No existing commands found in stream
[2026-06-13 00:39:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:39:42,693.693 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 00:39:47,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:39:47,036.036 INFO    ] Checking for system updates...
[2026-06-13 00:39:47,057.057 INFO    ] 200
[2026-06-13 00:39:47,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:47,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:39:47,090.090 INFO    ] No update needed
[2026-06-13 00:39:47,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 00:39:47,111.111 INFO    ] 200
[2026-06-13 00:39:47,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:47,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:39:47,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:39:47,181.181 INFO    ] No camera update needed
[2026-06-13 00:39:47,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:39:47,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:39:47,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:39:47,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:39:49,229.229 INFO    ] ================================================
[2026-06-13 00:39:49,244.244 INFO    ] Launching Daemon at Sat Jun 13 00:39:49 IST 2026
[2026-06-13 00:39:49,254.254 INFO    ] ================================================
[2026-06-13 00:39:49,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:39:49
[2026-06-13 00:39:49,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:39:50,038.038 INFO    ] Initializing speech engine...
[2026-06-13 00:39:50,043.043 INFO    ] 2026-06-13 00:39:50
[2026-06-13 00:39:50,246.246 INFO    ] 2026-06-13 00:39:50
[2026-06-13 00:39:50,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:39:50,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:39:50,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:39:50,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:39:50,646.646 INFO    ] time= 13/06/2026 00:39:50
[2026-06-13 00:39:50,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:39:50,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:39:50,761.761 INFO    ] No existing commands found in stream
[2026-06-13 00:39:55,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:39:55,788.788 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 00:39:59,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:39:59,125.125 INFO    ] Checking for system updates...
[2026-06-13 00:39:59,146.146 INFO    ] 200
[2026-06-13 00:39:59,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:59,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:39:59,179.179 INFO    ] No update needed
[2026-06-13 00:39:59,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 00:39:59,199.199 INFO    ] 200
[2026-06-13 00:39:59,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:39:59,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:39:59,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:39:59,264.264 INFO    ] No camera update needed
[2026-06-13 00:39:59,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:39:59,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:39:59,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:39:59,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:01,312.312 INFO    ] ================================================
[2026-06-13 00:40:01,327.327 INFO    ] Launching Daemon at Sat Jun 13 00:40:01 IST 2026
[2026-06-13 00:40:01,337.337 INFO    ] ================================================
[2026-06-13 00:40:01,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:01
[2026-06-13 00:40:02,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:02,602.602 INFO    ] Initializing speech engine...
[2026-06-13 00:40:02,605.605 INFO    ] 2026-06-13 00:40:02
[2026-06-13 00:40:02,991.991 INFO    ] 2026-06-13 00:40:02
[2026-06-13 00:40:03,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:40:03,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:40:03,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:40:03,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:40:03,438.438 INFO    ] time= 13/06/2026 00:40:03
[2026-06-13 00:40:03,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:40:03,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:40:03,524.524 INFO    ] No existing commands found in stream
[2026-06-13 00:40:08,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:40:08,539.539 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 00:40:12,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:40:12,040.040 INFO    ] Checking for system updates...
[2026-06-13 00:40:12,060.060 INFO    ] 200
[2026-06-13 00:40:12,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:12,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:40:12,093.093 INFO    ] No update needed
[2026-06-13 00:40:12,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 00:40:12,114.114 INFO    ] 200
[2026-06-13 00:40:12,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:12,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:40:12,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:40:12,182.182 INFO    ] No camera update needed
[2026-06-13 00:40:12,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:40:12,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:40:12,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:40:12,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:14,231.231 INFO    ] ================================================
[2026-06-13 00:40:14,247.247 INFO    ] Launching Daemon at Sat Jun 13 00:40:14 IST 2026
[2026-06-13 00:40:14,257.257 INFO    ] ================================================
[2026-06-13 00:40:14,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:14
[2026-06-13 00:40:14,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:15,062.062 INFO    ] Initializing speech engine...
[2026-06-13 00:40:15,070.070 INFO    ] 2026-06-13 00:40:15
[2026-06-13 00:40:15,294.294 INFO    ] 2026-06-13 00:40:15
[2026-06-13 00:40:15,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:40:15,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:40:15,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:40:15,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:40:15,721.721 INFO    ] time= 13/06/2026 00:40:15
[2026-06-13 00:40:15,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:40:15,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:40:15,845.845 INFO    ] No existing commands found in stream
[2026-06-13 00:40:20,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:40:20,858.858 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 00:40:24,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:40:24,725.725 INFO    ] Checking for system updates...
[2026-06-13 00:40:24,749.749 INFO    ] 200
[2026-06-13 00:40:24,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:24,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:24,782.782 INFO    ] No update needed
[2026-06-13 00:40:24,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 00:40:24,802.802 INFO    ] 200
[2026-06-13 00:40:24,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:24,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:40:24,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:24,868.868 INFO    ] No camera update needed
[2026-06-13 00:40:24,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:40:24,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:40:24,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:40:24,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:26,915.915 INFO    ] ================================================
[2026-06-13 00:40:26,930.930 INFO    ] Launching Daemon at Sat Jun 13 00:40:26 IST 2026
[2026-06-13 00:40:26,941.941 INFO    ] ================================================
[2026-06-13 00:40:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:27
[2026-06-13 00:40:27,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:27,728.728 INFO    ] Initializing speech engine...
[2026-06-13 00:40:27,741.741 INFO    ] 2026-06-13 00:40:27
[2026-06-13 00:40:27,958.958 INFO    ] 2026-06-13 00:40:27
[2026-06-13 00:40:27,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:40:28,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:40:28,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:40:28,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:40:28,380.380 INFO    ] time= 13/06/2026 00:40:28
[2026-06-13 00:40:28,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:40:28,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:40:28,504.504 INFO    ] No existing commands found in stream
[2026-06-13 00:40:33,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:40:33,517.517 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 00:40:36,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:40:36,248.248 INFO    ] Checking for system updates...
[2026-06-13 00:40:36,280.280 INFO    ] 200
[2026-06-13 00:40:36,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:36,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:40:36,316.316 INFO    ] No update needed
[2026-06-13 00:40:36,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 00:40:36,336.336 INFO    ] 200
[2026-06-13 00:40:36,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:36,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:40:36,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:40:36,399.399 INFO    ] No camera update needed
[2026-06-13 00:40:36,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:40:36,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:40:36,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:40:36,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:38,448.448 INFO    ] ================================================
[2026-06-13 00:40:38,464.464 INFO    ] Launching Daemon at Sat Jun 13 00:40:38 IST 2026
[2026-06-13 00:40:38,475.475 INFO    ] ================================================
[2026-06-13 00:40:38,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:38
[2026-06-13 00:40:39,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:39,279.279 INFO    ] Initializing speech engine...
[2026-06-13 00:40:39,283.283 INFO    ] 2026-06-13 00:40:39
[2026-06-13 00:40:39,486.486 INFO    ] 2026-06-13 00:40:39
[2026-06-13 00:40:39,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:40:39,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:40:39,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:40:39,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:40:39,891.891 INFO    ] time= 13/06/2026 00:40:39
[2026-06-13 00:40:39,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:40:39,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:40:40,001.001 INFO    ] No existing commands found in stream
[2026-06-13 00:40:45,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:40:45,013.013 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 00:40:46,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:40:46,659.659 INFO    ] Checking for system updates...
[2026-06-13 00:40:46,680.680 INFO    ] 200
[2026-06-13 00:40:46,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:46,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:46,712.712 INFO    ] No update needed
[2026-06-13 00:40:46,714.714 INFO    ] Checking for camera pi updates...
[2026-06-13 00:40:46,735.735 INFO    ] 200
[2026-06-13 00:40:46,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:46,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:40:46,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:46,802.802 INFO    ] No camera update needed
[2026-06-13 00:40:46,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:40:46,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:40:46,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:40:46,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:48,849.849 INFO    ] ================================================
[2026-06-13 00:40:48,865.865 INFO    ] Launching Daemon at Sat Jun 13 00:40:48 IST 2026
[2026-06-13 00:40:48,877.877 INFO    ] ================================================
[2026-06-13 00:40:49,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:49
[2026-06-13 00:40:49,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:49,714.714 INFO    ] Initializing speech engine...
[2026-06-13 00:40:49,720.720 INFO    ] 2026-06-13 00:40:49
[2026-06-13 00:40:49,927.927 INFO    ] 2026-06-13 00:40:49
[2026-06-13 00:40:49,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:40:50,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:40:50,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:40:50,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:40:50,337.337 INFO    ] time= 13/06/2026 00:40:50
[2026-06-13 00:40:50,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:40:50,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:40:50,445.445 INFO    ] No existing commands found in stream
[2026-06-13 00:40:55,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:40:55,454.454 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 00:40:56,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:40:56,610.610 INFO    ] Checking for system updates...
[2026-06-13 00:40:56,632.632 INFO    ] 200
[2026-06-13 00:40:56,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:56,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:56,670.670 INFO    ] No update needed
[2026-06-13 00:40:56,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 00:40:56,691.691 INFO    ] 200
[2026-06-13 00:40:56,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:40:56,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:40:56,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:40:56,754.754 INFO    ] No camera update needed
[2026-06-13 00:40:56,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:40:56,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:40:56,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:40:56,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:40:58,803.803 INFO    ] ================================================
[2026-06-13 00:40:58,820.820 INFO    ] Launching Daemon at Sat Jun 13 00:40:58 IST 2026
[2026-06-13 00:40:58,831.831 INFO    ] ================================================
[2026-06-13 00:40:59,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:40:59
[2026-06-13 00:40:59,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:40:59,687.687 INFO    ] Initializing speech engine...
[2026-06-13 00:40:59,693.693 INFO    ] 2026-06-13 00:40:59
[2026-06-13 00:40:59,897.897 INFO    ] 2026-06-13 00:40:59
[2026-06-13 00:40:59,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:41:00,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:41:00,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:41:00,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:41:00,317.317 INFO    ] time= 13/06/2026 00:41:00
[2026-06-13 00:41:00,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:41:00,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:41:00,414.414 INFO    ] No existing commands found in stream
[2026-06-13 00:41:05,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:41:05,432.432 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 00:41:08,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:41:08,245.245 INFO    ] Checking for system updates...
[2026-06-13 00:41:08,267.267 INFO    ] 200
[2026-06-13 00:41:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:08,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:41:08,303.303 INFO    ] No update needed
[2026-06-13 00:41:08,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 00:41:08,324.324 INFO    ] 200
[2026-06-13 00:41:08,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:08,351.351 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:41:08,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:41:08,391.391 INFO    ] No camera update needed
[2026-06-13 00:41:08,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:41:08,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:41:08,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:41:08,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:41:10,440.440 INFO    ] ================================================
[2026-06-13 00:41:10,456.456 INFO    ] Launching Daemon at Sat Jun 13 00:41:10 IST 2026
[2026-06-13 00:41:10,473.473 INFO    ] ================================================
[2026-06-13 00:41:10,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:41:10
[2026-06-13 00:41:11,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:41:11,278.278 INFO    ] Initializing speech engine...
[2026-06-13 00:41:11,283.283 INFO    ] 2026-06-13 00:41:11
[2026-06-13 00:41:11,487.487 INFO    ] 2026-06-13 00:41:11
[2026-06-13 00:41:11,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:41:11,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:41:11,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:41:11,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:41:11,891.891 INFO    ] time= 13/06/2026 00:41:11
[2026-06-13 00:41:11,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:41:11,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:41:12,002.002 INFO    ] No existing commands found in stream
[2026-06-13 00:41:17,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:41:17,019.019 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 00:41:21,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:41:21,061.061 INFO    ] Checking for system updates...
[2026-06-13 00:41:21,082.082 INFO    ] 200
[2026-06-13 00:41:21,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:21,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:41:21,116.116 INFO    ] No update needed
[2026-06-13 00:41:21,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 00:41:21,139.139 INFO    ] 200
[2026-06-13 00:41:21,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:21,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:41:21,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:41:21,207.207 INFO    ] No camera update needed
[2026-06-13 00:41:21,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:41:21,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:41:21,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:41:21,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:41:23,254.254 INFO    ] ================================================
[2026-06-13 00:41:23,270.270 INFO    ] Launching Daemon at Sat Jun 13 00:41:23 IST 2026
[2026-06-13 00:41:23,282.282 INFO    ] ================================================
[2026-06-13 00:41:23,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:41:23
[2026-06-13 00:41:23,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:41:24,075.075 INFO    ] Initializing speech engine...
[2026-06-13 00:41:24,084.084 INFO    ] 2026-06-13 00:41:24
[2026-06-13 00:41:24,307.307 INFO    ] 2026-06-13 00:41:24
[2026-06-13 00:41:24,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:41:24,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:41:24,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:41:24,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:41:24,732.732 INFO    ] time= 13/06/2026 00:41:24
[2026-06-13 00:41:24,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:41:24,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:41:24,857.857 INFO    ] No existing commands found in stream
[2026-06-13 00:41:29,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:41:29,871.871 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 00:41:32,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:41:32,619.619 INFO    ] Checking for system updates...
[2026-06-13 00:41:32,665.665 INFO    ] 200
[2026-06-13 00:41:32,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:32,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:41:32,725.725 INFO    ] No update needed
[2026-06-13 00:41:32,728.728 INFO    ] Checking for camera pi updates...
[2026-06-13 00:41:32,766.766 INFO    ] 200
[2026-06-13 00:41:32,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:32,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:41:32,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:41:32,864.864 INFO    ] No camera update needed
[2026-06-13 00:41:32,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:41:32,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:41:32,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:41:32,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:41:34,923.923 INFO    ] ================================================
[2026-06-13 00:41:34,939.939 INFO    ] Launching Daemon at Sat Jun 13 00:41:34 IST 2026
[2026-06-13 00:41:34,950.950 INFO    ] ================================================
[2026-06-13 00:41:35,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:41:35
[2026-06-13 00:41:35,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:41:36,023.023 INFO    ] Initializing speech engine...
[2026-06-13 00:41:36,031.031 INFO    ] 2026-06-13 00:41:36
[2026-06-13 00:41:36,247.247 INFO    ] 2026-06-13 00:41:36
[2026-06-13 00:41:36,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:41:36,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:41:36,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:41:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:41:36,672.672 INFO    ] time= 13/06/2026 00:41:36
[2026-06-13 00:41:36,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:41:36,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:41:36,768.768 INFO    ] No existing commands found in stream
[2026-06-13 00:41:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:41:41,783.783 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 00:41:44,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:41:44,909.909 INFO    ] Checking for system updates...
[2026-06-13 00:41:44,930.930 INFO    ] 200
[2026-06-13 00:41:44,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:44,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:41:44,966.966 INFO    ] No update needed
[2026-06-13 00:41:44,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 00:41:44,988.988 INFO    ] 200
[2026-06-13 00:41:44,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:45,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:41:45,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:41:45,050.050 INFO    ] No camera update needed
[2026-06-13 00:41:45,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:41:45,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:41:45,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:41:45,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:41:47,097.097 INFO    ] ================================================
[2026-06-13 00:41:47,113.113 INFO    ] Launching Daemon at Sat Jun 13 00:41:47 IST 2026
[2026-06-13 00:41:47,123.123 INFO    ] ================================================
[2026-06-13 00:41:47,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:41:47
[2026-06-13 00:41:47,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:41:47,992.992 INFO    ] Initializing speech engine...
[2026-06-13 00:41:47,997.997 INFO    ] 2026-06-13 00:41:47
[2026-06-13 00:41:48,206.206 INFO    ] 2026-06-13 00:41:48
[2026-06-13 00:41:48,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:41:48,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:41:48,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:41:48,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:41:48,630.630 INFO    ] time= 13/06/2026 00:41:48
[2026-06-13 00:41:48,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:41:48,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:41:48,752.752 INFO    ] No existing commands found in stream
[2026-06-13 00:41:53,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:41:53,764.764 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 00:41:56,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:41:56,660.660 INFO    ] Checking for system updates...
[2026-06-13 00:41:56,681.681 INFO    ] 200
[2026-06-13 00:41:56,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:56,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:41:56,714.714 INFO    ] No update needed
[2026-06-13 00:41:56,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 00:41:56,736.736 INFO    ] 200
[2026-06-13 00:41:56,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:41:56,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:41:56,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:41:56,801.801 INFO    ] No camera update needed
[2026-06-13 00:41:56,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:41:56,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:41:56,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:41:56,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:41:58,847.847 INFO    ] ================================================
[2026-06-13 00:41:58,862.862 INFO    ] Launching Daemon at Sat Jun 13 00:41:58 IST 2026
[2026-06-13 00:41:58,873.873 INFO    ] ================================================
[2026-06-13 00:41:59,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:41:59
[2026-06-13 00:41:59,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:41:59,669.669 INFO    ] Initializing speech engine...
[2026-06-13 00:41:59,679.679 INFO    ] 2026-06-13 00:41:59
[2026-06-13 00:41:59,896.896 INFO    ] 2026-06-13 00:41:59
[2026-06-13 00:41:59,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:00,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:00,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:00,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:00,311.311 INFO    ] time= 13/06/2026 00:42:00
[2026-06-13 00:42:00,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:00,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:00,453.453 INFO    ] No existing commands found in stream
[2026-06-13 00:42:05,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:42:05,466.466 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 00:42:06,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:42:06,898.898 INFO    ] Checking for system updates...
[2026-06-13 00:42:06,919.919 INFO    ] 200
[2026-06-13 00:42:06,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:06,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:42:06,954.954 INFO    ] No update needed
[2026-06-13 00:42:06,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 00:42:06,975.975 INFO    ] 200
[2026-06-13 00:42:06,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:07,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:42:07,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:42:07,038.038 INFO    ] No camera update needed
[2026-06-13 00:42:07,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:42:07,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:42:07,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:42:07,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:42:09,085.085 INFO    ] ================================================
[2026-06-13 00:42:09,101.101 INFO    ] Launching Daemon at Sat Jun 13 00:42:09 IST 2026
[2026-06-13 00:42:09,113.113 INFO    ] ================================================
[2026-06-13 00:42:09,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:42:09
[2026-06-13 00:42:09,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:42:09,923.923 INFO    ] Initializing speech engine...
[2026-06-13 00:42:09,929.929 INFO    ] 2026-06-13 00:42:09
[2026-06-13 00:42:10,132.132 INFO    ] 2026-06-13 00:42:10
[2026-06-13 00:42:10,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:10,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:10,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:10,532.532 INFO    ] time= 13/06/2026 00:42:10
[2026-06-13 00:42:10,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:10,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:10,673.673 INFO    ] No existing commands found in stream
[2026-06-13 00:42:15,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:42:15,690.690 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 00:42:16,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:42:16,715.715 INFO    ] Checking for system updates...
[2026-06-13 00:42:16,736.736 INFO    ] 200
[2026-06-13 00:42:16,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:16,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:16,769.769 INFO    ] No update needed
[2026-06-13 00:42:16,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 00:42:16,790.790 INFO    ] 200
[2026-06-13 00:42:16,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:16,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:42:16,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:16,864.864 INFO    ] No camera update needed
[2026-06-13 00:42:16,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:42:16,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:42:16,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:42:16,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:42:18,912.912 INFO    ] ================================================
[2026-06-13 00:42:18,928.928 INFO    ] Launching Daemon at Sat Jun 13 00:42:18 IST 2026
[2026-06-13 00:42:18,940.940 INFO    ] ================================================
[2026-06-13 00:42:19,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:42:19
[2026-06-13 00:42:19,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:42:19,732.732 INFO    ] Initializing speech engine...
[2026-06-13 00:42:19,746.746 INFO    ] 2026-06-13 00:42:19
[2026-06-13 00:42:19,966.966 INFO    ] 2026-06-13 00:42:19
[2026-06-13 00:42:19,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:20,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:20,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:20,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:20,394.394 INFO    ] time= 13/06/2026 00:42:20
[2026-06-13 00:42:20,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:20,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:20,530.530 INFO    ] No existing commands found in stream
[2026-06-13 00:42:25,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:42:25,542.542 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 00:42:28,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:42:28,338.338 INFO    ] Checking for system updates...
[2026-06-13 00:42:28,359.359 INFO    ] 200
[2026-06-13 00:42:28,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:28,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:28,392.392 INFO    ] No update needed
[2026-06-13 00:42:28,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 00:42:28,412.412 INFO    ] 200
[2026-06-13 00:42:28,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:28,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:42:28,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:28,487.487 INFO    ] No camera update needed
[2026-06-13 00:42:28,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:42:28,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:42:28,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:42:28,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:42:30,537.537 INFO    ] ================================================
[2026-06-13 00:42:30,553.553 INFO    ] Launching Daemon at Sat Jun 13 00:42:30 IST 2026
[2026-06-13 00:42:30,564.564 INFO    ] ================================================
[2026-06-13 00:42:31,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:42:31
[2026-06-13 00:42:31,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:42:31,875.875 INFO    ] Initializing speech engine...
[2026-06-13 00:42:31,880.880 INFO    ] 2026-06-13 00:42:31
[2026-06-13 00:42:32,095.095 INFO    ] 2026-06-13 00:42:32
[2026-06-13 00:42:32,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:32,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:32,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:32,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:32,537.537 INFO    ] time= 13/06/2026 00:42:32
[2026-06-13 00:42:32,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:32,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:32,654.654 INFO    ] No existing commands found in stream
[2026-06-13 00:42:37,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:42:37,672.672 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 00:42:41,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:42:41,965.965 INFO    ] Checking for system updates...
[2026-06-13 00:42:41,986.986 INFO    ] 200
[2026-06-13 00:42:41,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:42,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:42:42,019.019 INFO    ] No update needed
[2026-06-13 00:42:42,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 00:42:42,041.041 INFO    ] 200
[2026-06-13 00:42:42,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:42,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:42:42,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:42,103.103 INFO    ] No camera update needed
[2026-06-13 00:42:42,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:42:42,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:42:42,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:42:42,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:42:44,153.153 INFO    ] ================================================
[2026-06-13 00:42:44,169.169 INFO    ] Launching Daemon at Sat Jun 13 00:42:44 IST 2026
[2026-06-13 00:42:44,180.180 INFO    ] ================================================
[2026-06-13 00:42:44,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:42:44
[2026-06-13 00:42:44,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:42:45,023.023 INFO    ] Initializing speech engine...
[2026-06-13 00:42:45,028.028 INFO    ] 2026-06-13 00:42:45
[2026-06-13 00:42:45,236.236 INFO    ] 2026-06-13 00:42:45
[2026-06-13 00:42:45,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:45,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:45,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:45,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:45,663.663 INFO    ] time= 13/06/2026 00:42:45
[2026-06-13 00:42:45,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:45,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:45,761.761 INFO    ] No existing commands found in stream
[2026-06-13 00:42:50,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:42:50,775.775 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 00:42:55,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:42:55,018.018 INFO    ] Checking for system updates...
[2026-06-13 00:42:55,040.040 INFO    ] 200
[2026-06-13 00:42:55,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:55,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:55,073.073 INFO    ] No update needed
[2026-06-13 00:42:55,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 00:42:55,096.096 INFO    ] 200
[2026-06-13 00:42:55,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:42:55,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:42:55,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:42:55,172.172 INFO    ] No camera update needed
[2026-06-13 00:42:55,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:42:55,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:42:55,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:42:55,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:42:57,222.222 INFO    ] ================================================
[2026-06-13 00:42:57,237.237 INFO    ] Launching Daemon at Sat Jun 13 00:42:57 IST 2026
[2026-06-13 00:42:57,247.247 INFO    ] ================================================
[2026-06-13 00:42:57,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:42:57
[2026-06-13 00:42:57,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:42:58,101.101 INFO    ] Initializing speech engine...
[2026-06-13 00:42:58,105.105 INFO    ] 2026-06-13 00:42:58
[2026-06-13 00:42:58,313.313 INFO    ] 2026-06-13 00:42:58
[2026-06-13 00:42:58,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:42:58,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:42:58,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:42:58,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:42:58,732.732 INFO    ] time= 13/06/2026 00:42:58
[2026-06-13 00:42:58,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:42:58,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:42:58,830.830 INFO    ] No existing commands found in stream
[2026-06-13 00:43:03,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:43:03,842.842 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 00:43:05,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:43:05,092.092 INFO    ] Checking for system updates...
[2026-06-13 00:43:05,131.131 INFO    ] 200
[2026-06-13 00:43:05,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:05,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:05,190.190 INFO    ] No update needed
[2026-06-13 00:43:05,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 00:43:05,230.230 INFO    ] 200
[2026-06-13 00:43:05,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:05,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:43:05,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:05,333.333 INFO    ] No camera update needed
[2026-06-13 00:43:05,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:43:05,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:43:05,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:43:05,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:43:07,391.391 INFO    ] ================================================
[2026-06-13 00:43:07,406.406 INFO    ] Launching Daemon at Sat Jun 13 00:43:07 IST 2026
[2026-06-13 00:43:07,416.416 INFO    ] ================================================
[2026-06-13 00:43:07,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:43:07
[2026-06-13 00:43:08,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:43:08,541.541 INFO    ] Initializing speech engine...
[2026-06-13 00:43:08,546.546 INFO    ] 2026-06-13 00:43:08
[2026-06-13 00:43:08,844.844 INFO    ] 2026-06-13 00:43:08
[2026-06-13 00:43:08,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:43:09,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:43:09,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:43:09,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:43:09,215.215 INFO    ] time= 13/06/2026 00:43:09
[2026-06-13 00:43:09,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:43:09,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:43:09,277.277 INFO    ] No existing commands found in stream
[2026-06-13 00:43:14,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:43:14,293.293 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 00:43:16,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:43:16,767.767 INFO    ] Checking for system updates...
[2026-06-13 00:43:16,788.788 INFO    ] 200
[2026-06-13 00:43:16,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:16,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:43:16,823.823 INFO    ] No update needed
[2026-06-13 00:43:16,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 00:43:16,844.844 INFO    ] 200
[2026-06-13 00:43:16,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:16,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:43:16,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:43:16,911.911 INFO    ] No camera update needed
[2026-06-13 00:43:16,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:43:16,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:43:16,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:43:16,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:43:18,960.960 INFO    ] ================================================
[2026-06-13 00:43:18,975.975 INFO    ] Launching Daemon at Sat Jun 13 00:43:18 IST 2026
[2026-06-13 00:43:18,987.987 INFO    ] ================================================
[2026-06-13 00:43:19,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:43:19
[2026-06-13 00:43:19,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:43:19,800.800 INFO    ] Initializing speech engine...
[2026-06-13 00:43:19,813.813 INFO    ] 2026-06-13 00:43:19
[2026-06-13 00:43:20,020.020 INFO    ] 2026-06-13 00:43:19
[2026-06-13 00:43:20,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:43:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:43:20,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:43:20,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:43:20,432.432 INFO    ] time= 13/06/2026 00:43:20
[2026-06-13 00:43:20,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:43:20,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:43:20,539.539 INFO    ] No existing commands found in stream
[2026-06-13 00:43:25,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:43:25,550.550 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 00:43:29,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:43:29,510.510 INFO    ] Checking for system updates...
[2026-06-13 00:43:29,533.533 INFO    ] 200
[2026-06-13 00:43:29,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:29,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:43:29,566.566 INFO    ] No update needed
[2026-06-13 00:43:29,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 00:43:29,586.586 INFO    ] 200
[2026-06-13 00:43:29,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:29,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:43:29,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:43:29,652.652 INFO    ] No camera update needed
[2026-06-13 00:43:29,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:43:29,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:43:29,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:43:29,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:43:31,702.702 INFO    ] ================================================
[2026-06-13 00:43:31,718.718 INFO    ] Launching Daemon at Sat Jun 13 00:43:31 IST 2026
[2026-06-13 00:43:31,730.730 INFO    ] ================================================
[2026-06-13 00:43:32,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:43:32
[2026-06-13 00:43:32,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:43:32,602.602 INFO    ] Initializing speech engine...
[2026-06-13 00:43:32,606.606 INFO    ] 2026-06-13 00:43:32
[2026-06-13 00:43:32,825.825 INFO    ] 2026-06-13 00:43:32
[2026-06-13 00:43:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:43:32,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:43:33,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:43:33,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:43:33,184.184 INFO    ] time= 13/06/2026 00:43:33
[2026-06-13 00:43:33,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:43:33,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:43:33,347.347 INFO    ] No existing commands found in stream
[2026-06-13 00:43:38,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:43:38,360.360 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 00:43:42,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:43:42,425.425 INFO    ] Checking for system updates...
[2026-06-13 00:43:42,446.446 INFO    ] 200
[2026-06-13 00:43:42,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:42,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:42,479.479 INFO    ] No update needed
[2026-06-13 00:43:42,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 00:43:42,500.500 INFO    ] 200
[2026-06-13 00:43:42,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:42,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:43:42,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:42,571.571 INFO    ] No camera update needed
[2026-06-13 00:43:42,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:43:42,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:43:42,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:43:42,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:43:44,619.619 INFO    ] ================================================
[2026-06-13 00:43:44,634.634 INFO    ] Launching Daemon at Sat Jun 13 00:43:44 IST 2026
[2026-06-13 00:43:44,645.645 INFO    ] ================================================
[2026-06-13 00:43:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:43:45
[2026-06-13 00:43:45,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:43:45,470.470 INFO    ] Initializing speech engine...
[2026-06-13 00:43:45,476.476 INFO    ] 2026-06-13 00:43:45
[2026-06-13 00:43:45,677.677 INFO    ] 2026-06-13 00:43:45
[2026-06-13 00:43:45,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:43:45,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:43:45,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:43:46,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:43:46,082.082 INFO    ] time= 13/06/2026 00:43:46
[2026-06-13 00:43:46,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:43:46,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:43:46,193.193 INFO    ] No existing commands found in stream
[2026-06-13 00:43:51,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:43:51,210.210 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 00:43:52,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:43:52,487.487 INFO    ] Checking for system updates...
[2026-06-13 00:43:52,509.509 INFO    ] 200
[2026-06-13 00:43:52,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:52,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:52,543.543 INFO    ] No update needed
[2026-06-13 00:43:52,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 00:43:52,565.565 INFO    ] 200
[2026-06-13 00:43:52,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:43:52,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:43:52,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:43:52,640.640 INFO    ] No camera update needed
[2026-06-13 00:43:52,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:43:52,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:43:52,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:43:52,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:43:54,690.690 INFO    ] ================================================
[2026-06-13 00:43:54,705.705 INFO    ] Launching Daemon at Sat Jun 13 00:43:54 IST 2026
[2026-06-13 00:43:54,716.716 INFO    ] ================================================
[2026-06-13 00:43:55,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:43:55
[2026-06-13 00:43:55,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:43:55,506.506 INFO    ] Initializing speech engine...
[2026-06-13 00:43:55,512.512 INFO    ] 2026-06-13 00:43:55
[2026-06-13 00:43:55,714.714 INFO    ] 2026-06-13 00:43:55
[2026-06-13 00:43:55,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:43:55,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:43:55,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:43:56,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:43:56,121.121 INFO    ] time= 13/06/2026 00:43:56
[2026-06-13 00:43:56,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:43:56,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:43:56,225.225 INFO    ] No existing commands found in stream
[2026-06-13 00:44:01,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:01,236.236 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 00:44:04,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:44:04,704.704 INFO    ] Checking for system updates...
[2026-06-13 00:44:04,725.725 INFO    ] 200
[2026-06-13 00:44:04,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:04,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:04,760.760 INFO    ] No update needed
[2026-06-13 00:44:04,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 00:44:04,782.782 INFO    ] 200
[2026-06-13 00:44:04,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:04,810.810 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:44:04,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:04,856.856 INFO    ] No camera update needed
[2026-06-13 00:44:04,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:44:04,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:44:04,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:44:04,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:44:06,903.903 INFO    ] ================================================
[2026-06-13 00:44:06,919.919 INFO    ] Launching Daemon at Sat Jun 13 00:44:06 IST 2026
[2026-06-13 00:44:06,930.930 INFO    ] ================================================
[2026-06-13 00:44:07,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:44:07
[2026-06-13 00:44:07,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:44:07,745.745 INFO    ] Initializing speech engine...
[2026-06-13 00:44:07,748.748 INFO    ] 2026-06-13 00:44:07
[2026-06-13 00:44:07,979.979 INFO    ] 2026-06-13 00:44:07
[2026-06-13 00:44:08,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:44:08,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:44:08,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:44:08,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:44:08,410.410 INFO    ] time= 13/06/2026 00:44:08
[2026-06-13 00:44:08,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:44:08,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:44:08,512.512 INFO    ] No existing commands found in stream
[2026-06-13 00:44:13,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:13,523.523 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 00:44:17,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:44:17,523.523 INFO    ] Checking for system updates...
[2026-06-13 00:44:17,543.543 INFO    ] 200
[2026-06-13 00:44:17,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:17,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:17,576.576 INFO    ] No update needed
[2026-06-13 00:44:17,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 00:44:17,601.601 INFO    ] 200
[2026-06-13 00:44:17,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:17,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:44:17,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:17,670.670 INFO    ] No camera update needed
[2026-06-13 00:44:17,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:44:17,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:44:17,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:44:17,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:44:19,716.716 INFO    ] ================================================
[2026-06-13 00:44:19,732.732 INFO    ] Launching Daemon at Sat Jun 13 00:44:19 IST 2026
[2026-06-13 00:44:19,743.743 INFO    ] ================================================
[2026-06-13 00:44:20,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:44:20
[2026-06-13 00:44:20,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:44:20,524.524 INFO    ] Initializing speech engine...
[2026-06-13 00:44:20,532.532 INFO    ] 2026-06-13 00:44:20
[2026-06-13 00:44:20,744.744 INFO    ] 2026-06-13 00:44:20
[2026-06-13 00:44:20,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:44:20,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:44:20,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:44:21,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:44:21,147.147 INFO    ] time= 13/06/2026 00:44:21
[2026-06-13 00:44:21,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:44:21,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:44:21,297.297 INFO    ] No existing commands found in stream
[2026-06-13 00:44:26,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:26,321.321 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 00:44:27,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:44:27,255.255 INFO    ] Checking for system updates...
[2026-06-13 00:44:27,276.276 INFO    ] 200
[2026-06-13 00:44:27,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:27,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:27,311.311 INFO    ] No update needed
[2026-06-13 00:44:27,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 00:44:27,333.333 INFO    ] 200
[2026-06-13 00:44:27,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:27,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:44:27,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:27,408.408 INFO    ] No camera update needed
[2026-06-13 00:44:27,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:44:27,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:44:27,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:44:27,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:44:29,454.454 INFO    ] ================================================
[2026-06-13 00:44:29,471.471 INFO    ] Launching Daemon at Sat Jun 13 00:44:29 IST 2026
[2026-06-13 00:44:29,483.483 INFO    ] ================================================
[2026-06-13 00:44:29,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:44:29
[2026-06-13 00:44:30,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:44:30,303.303 INFO    ] Initializing speech engine...
[2026-06-13 00:44:30,308.308 INFO    ] 2026-06-13 00:44:30
[2026-06-13 00:44:30,512.512 INFO    ] 2026-06-13 00:44:30
[2026-06-13 00:44:30,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:44:30,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:44:30,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:44:30,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:44:30,916.916 INFO    ] time= 13/06/2026 00:44:30
[2026-06-13 00:44:30,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:44:30,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:44:31,051.051 INFO    ] No existing commands found in stream
[2026-06-13 00:44:36,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:36,062.062 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 00:44:37,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:44:39,232.232 INFO    ] Checking for system updates...
[2026-06-13 00:44:39,271.271 INFO    ] 200
[2026-06-13 00:44:39,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:39,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:39,329.329 INFO    ] No update needed
[2026-06-13 00:44:39,332.332 INFO    ] Checking for camera pi updates...
[2026-06-13 00:44:39,353.353 INFO    ] 200
[2026-06-13 00:44:39,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:39,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:44:39,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:44:39,415.415 INFO    ] No camera update needed
[2026-06-13 00:44:39,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:44:39,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:44:39,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:44:39,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:44:41,462.462 INFO    ] ================================================
[2026-06-13 00:44:41,477.477 INFO    ] Launching Daemon at Sat Jun 13 00:44:41 IST 2026
[2026-06-13 00:44:41,489.489 INFO    ] ================================================
[2026-06-13 00:44:41,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:44:41
[2026-06-13 00:44:42,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:44:42,425.425 INFO    ] Initializing speech engine...
[2026-06-13 00:44:42,429.429 INFO    ] 2026-06-13 00:44:42
[2026-06-13 00:44:42,636.636 INFO    ] 2026-06-13 00:44:42
[2026-06-13 00:44:42,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:44:42,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:44:42,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:44:42,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:44:43,053.053 INFO    ] time= 13/06/2026 00:44:42
[2026-06-13 00:44:43,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:44:43,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:44:43,150.150 INFO    ] No existing commands found in stream
[2026-06-13 00:44:48,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:48,163.163 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 00:44:50,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:44:50,454.454 INFO    ] Checking for system updates...
[2026-06-13 00:44:50,477.477 INFO    ] 200
[2026-06-13 00:44:50,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:50,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:44:50,510.510 INFO    ] No update needed
[2026-06-13 00:44:50,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 00:44:50,531.531 INFO    ] 200
[2026-06-13 00:44:50,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:44:50,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:44:50,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:44:50,599.599 INFO    ] No camera update needed
[2026-06-13 00:44:50,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:44:50,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:44:50,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:44:50,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:44:52,646.646 INFO    ] ================================================
[2026-06-13 00:44:52,662.662 INFO    ] Launching Daemon at Sat Jun 13 00:44:52 IST 2026
[2026-06-13 00:44:52,673.673 INFO    ] ================================================
[2026-06-13 00:44:53,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:44:53
[2026-06-13 00:44:53,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:44:53,562.562 INFO    ] Initializing speech engine...
[2026-06-13 00:44:53,586.586 INFO    ] 2026-06-13 00:44:53
[2026-06-13 00:44:53,824.824 INFO    ] 2026-06-13 00:44:53
[2026-06-13 00:44:53,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:44:54,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:44:54,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:44:54,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:44:54,285.285 INFO    ] time= 13/06/2026 00:44:54
[2026-06-13 00:44:54,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:44:54,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:44:54,357.357 INFO    ] No existing commands found in stream
[2026-06-13 00:44:59,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:44:59,371.371 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 00:45:02,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:45:02,145.145 INFO    ] Checking for system updates...
[2026-06-13 00:45:02,176.176 INFO    ] 200
[2026-06-13 00:45:02,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:02,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:02,219.219 INFO    ] No update needed
[2026-06-13 00:45:02,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 00:45:02,245.245 INFO    ] 200
[2026-06-13 00:45:02,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:02,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:45:02,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:02,333.333 INFO    ] No camera update needed
[2026-06-13 00:45:02,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:45:02,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:45:02,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:45:02,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:45:04,385.385 INFO    ] ================================================
[2026-06-13 00:45:04,436.436 INFO    ] Launching Daemon at Sat Jun 13 00:45:04 IST 2026
[2026-06-13 00:45:04,450.450 INFO    ] ================================================
[2026-06-13 00:45:04,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:45:04
[2026-06-13 00:45:05,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:45:05,216.216 INFO    ] Initializing speech engine...
[2026-06-13 00:45:05,228.228 INFO    ] 2026-06-13 00:45:05
[2026-06-13 00:45:05,435.435 INFO    ] 2026-06-13 00:45:05
[2026-06-13 00:45:05,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:45:05,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:45:05,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:45:05,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:45:05,855.855 INFO    ] time= 13/06/2026 00:45:05
[2026-06-13 00:45:05,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:45:05,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:45:06,035.035 INFO    ] No existing commands found in stream
[2026-06-13 00:45:11,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:45:11,049.049 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 00:45:13,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:45:13,450.450 INFO    ] Checking for system updates...
[2026-06-13 00:45:13,472.472 INFO    ] 200
[2026-06-13 00:45:13,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:13,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:13,505.505 INFO    ] No update needed
[2026-06-13 00:45:13,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 00:45:13,526.526 INFO    ] 200
[2026-06-13 00:45:13,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:13,551.551 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:45:13,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:13,593.593 INFO    ] No camera update needed
[2026-06-13 00:45:13,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:45:13,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:45:13,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:45:13,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:45:15,646.646 INFO    ] ================================================
[2026-06-13 00:45:15,662.662 INFO    ] Launching Daemon at Sat Jun 13 00:45:15 IST 2026
[2026-06-13 00:45:15,672.672 INFO    ] ================================================
[2026-06-13 00:45:16,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:45:16
[2026-06-13 00:45:16,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:45:16,469.469 INFO    ] Initializing speech engine...
[2026-06-13 00:45:16,474.474 INFO    ] 2026-06-13 00:45:16
[2026-06-13 00:45:16,704.704 INFO    ] 2026-06-13 00:45:16
[2026-06-13 00:45:16,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:45:16,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:45:16,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:45:17,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:45:17,067.067 INFO    ] time= 13/06/2026 00:45:17
[2026-06-13 00:45:17,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:45:17,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:45:17,268.268 INFO    ] No existing commands found in stream
[2026-06-13 00:45:22,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:45:22,281.281 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 00:45:26,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:45:26,569.569 INFO    ] Checking for system updates...
[2026-06-13 00:45:26,591.591 INFO    ] 200
[2026-06-13 00:45:26,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:26,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:45:26,624.624 INFO    ] No update needed
[2026-06-13 00:45:26,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 00:45:26,646.646 INFO    ] 200
[2026-06-13 00:45:26,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:26,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:45:26,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:45:26,718.718 INFO    ] No camera update needed
[2026-06-13 00:45:26,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:45:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:45:26,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:45:26,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:45:28,765.765 INFO    ] ================================================
[2026-06-13 00:45:28,780.780 INFO    ] Launching Daemon at Sat Jun 13 00:45:28 IST 2026
[2026-06-13 00:45:28,792.792 INFO    ] ================================================
[2026-06-13 00:45:29,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:45:29
[2026-06-13 00:45:29,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:45:29,569.569 INFO    ] Initializing speech engine...
[2026-06-13 00:45:29,575.575 INFO    ] 2026-06-13 00:45:29
[2026-06-13 00:45:29,788.788 INFO    ] 2026-06-13 00:45:29
[2026-06-13 00:45:29,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:45:30,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:45:30,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:45:30,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:45:30,184.184 INFO    ] time= 13/06/2026 00:45:30
[2026-06-13 00:45:30,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:45:30,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:45:30,312.312 INFO    ] No existing commands found in stream
[2026-06-13 00:45:35,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:45:35,340.340 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 00:45:37,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:45:37,810.810 INFO    ] Checking for system updates...
[2026-06-13 00:45:37,831.831 INFO    ] 200
[2026-06-13 00:45:37,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:37,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:37,865.865 INFO    ] No update needed
[2026-06-13 00:45:37,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 00:45:37,886.886 INFO    ] 200
[2026-06-13 00:45:37,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:37,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:45:38,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:38,055.055 INFO    ] No camera update needed
[2026-06-13 00:45:38,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:45:38,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:45:38,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:45:38,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:45:40,109.109 INFO    ] ================================================
[2026-06-13 00:45:40,125.125 INFO    ] Launching Daemon at Sat Jun 13 00:45:40 IST 2026
[2026-06-13 00:45:40,136.136 INFO    ] ================================================
[2026-06-13 00:45:40,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:45:40
[2026-06-13 00:45:40,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:45:41,004.004 INFO    ] Initializing speech engine...
[2026-06-13 00:45:41,009.009 INFO    ] 2026-06-13 00:45:41
[2026-06-13 00:45:41,216.216 INFO    ] 2026-06-13 00:45:41
[2026-06-13 00:45:41,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:45:41,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:45:41,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:45:41,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:45:41,637.637 INFO    ] time= 13/06/2026 00:45:41
[2026-06-13 00:45:41,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:45:41,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:45:41,759.759 INFO    ] No existing commands found in stream
[2026-06-13 00:45:46,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:45:46,772.772 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 00:45:50,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:45:50,527.527 INFO    ] Checking for system updates...
[2026-06-13 00:45:50,549.549 INFO    ] 200
[2026-06-13 00:45:50,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:50,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:45:50,582.582 INFO    ] No update needed
[2026-06-13 00:45:50,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 00:45:50,604.604 INFO    ] 200
[2026-06-13 00:45:50,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:45:50,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:45:50,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:45:50,705.705 INFO    ] No camera update needed
[2026-06-13 00:45:50,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:45:50,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:45:50,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:45:50,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:45:52,761.761 INFO    ] ================================================
[2026-06-13 00:45:52,776.776 INFO    ] Launching Daemon at Sat Jun 13 00:45:52 IST 2026
[2026-06-13 00:45:52,787.787 INFO    ] ================================================
[2026-06-13 00:45:53,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:45:53
[2026-06-13 00:45:53,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:45:54,081.081 INFO    ] Initializing speech engine...
[2026-06-13 00:45:54,084.084 INFO    ] 2026-06-13 00:45:54
[2026-06-13 00:45:54,291.291 INFO    ] 2026-06-13 00:45:54
[2026-06-13 00:45:54,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:45:54,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:45:54,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:45:54,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:45:54,697.697 INFO    ] time= 13/06/2026 00:45:54
[2026-06-13 00:45:54,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:45:54,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:45:54,807.807 INFO    ] No existing commands found in stream
[2026-06-13 00:45:59,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:45:59,821.821 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 00:46:03,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:46:03,663.663 INFO    ] Checking for system updates...
[2026-06-13 00:46:03,700.700 INFO    ] 200
[2026-06-13 00:46:03,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:03,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:46:03,759.759 INFO    ] No update needed
[2026-06-13 00:46:03,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:03,795.795 INFO    ] 200
[2026-06-13 00:46:03,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:03,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:03,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:46:03,881.881 INFO    ] No camera update needed
[2026-06-13 00:46:03,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:03,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:03,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:03,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:05,937.937 INFO    ] ================================================
[2026-06-13 00:46:05,952.952 INFO    ] Launching Daemon at Sat Jun 13 00:46:05 IST 2026
[2026-06-13 00:46:05,964.964 INFO    ] ================================================
[2026-06-13 00:46:06,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:06
[2026-06-13 00:46:06,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:06,782.782 INFO    ] Initializing speech engine...
[2026-06-13 00:46:06,787.787 INFO    ] 2026-06-13 00:46:06
[2026-06-13 00:46:06,991.991 INFO    ] 2026-06-13 00:46:06
[2026-06-13 00:46:07,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:07,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:07,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:07,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:07,407.407 INFO    ] time= 13/06/2026 00:46:07
[2026-06-13 00:46:07,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:07,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:07,505.505 INFO    ] No existing commands found in stream
[2026-06-13 00:46:12,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:46:12,517.517 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 00:46:12,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:46:12,969.969 INFO    ] Checking for system updates...
[2026-06-13 00:46:12,990.990 INFO    ] 200
[2026-06-13 00:46:12,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:13,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:13,026.026 INFO    ] No update needed
[2026-06-13 00:46:13,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:13,047.047 INFO    ] 200
[2026-06-13 00:46:13,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:13,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:13,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:13,125.125 INFO    ] No camera update needed
[2026-06-13 00:46:13,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:13,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:13,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:13,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:15,183.183 INFO    ] ================================================
[2026-06-13 00:46:15,198.198 INFO    ] Launching Daemon at Sat Jun 13 00:46:15 IST 2026
[2026-06-13 00:46:15,210.210 INFO    ] ================================================
[2026-06-13 00:46:15,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:15
[2026-06-13 00:46:16,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:16,395.395 INFO    ] Initializing speech engine...
[2026-06-13 00:46:16,409.409 INFO    ] 2026-06-13 00:46:16
[2026-06-13 00:46:16,613.613 INFO    ] 2026-06-13 00:46:16
[2026-06-13 00:46:16,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:16,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:16,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:17,018.018 INFO    ] time= 13/06/2026 00:46:16
[2026-06-13 00:46:17,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:17,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:17,128.128 INFO    ] No existing commands found in stream
[2026-06-13 00:46:22,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:46:22,140.140 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 00:46:23,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:46:23,306.306 INFO    ] Checking for system updates...
[2026-06-13 00:46:23,327.327 INFO    ] 200
[2026-06-13 00:46:23,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:23,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:46:23,360.360 INFO    ] No update needed
[2026-06-13 00:46:23,362.362 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:23,383.383 INFO    ] 200
[2026-06-13 00:46:23,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:23,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:23,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:46:23,447.447 INFO    ] No camera update needed
[2026-06-13 00:46:23,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:23,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:23,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:23,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:25,495.495 INFO    ] ================================================
[2026-06-13 00:46:25,511.511 INFO    ] Launching Daemon at Sat Jun 13 00:46:25 IST 2026
[2026-06-13 00:46:25,522.522 INFO    ] ================================================
[2026-06-13 00:46:25,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:25
[2026-06-13 00:46:26,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:26,322.322 INFO    ] Initializing speech engine...
[2026-06-13 00:46:26,332.332 INFO    ] 2026-06-13 00:46:26
[2026-06-13 00:46:26,538.538 INFO    ] 2026-06-13 00:46:26
[2026-06-13 00:46:26,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:26,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:26,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:26,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:26,954.954 INFO    ] time= 13/06/2026 00:46:26
[2026-06-13 00:46:26,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:26,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:27,061.061 INFO    ] No existing commands found in stream
[2026-06-13 00:46:32,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:46:32,070.070 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 00:46:35,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:46:35,776.776 INFO    ] Checking for system updates...
[2026-06-13 00:46:35,798.798 INFO    ] 200
[2026-06-13 00:46:35,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:35,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:35,834.834 INFO    ] No update needed
[2026-06-13 00:46:35,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:35,854.854 INFO    ] 200
[2026-06-13 00:46:35,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:35,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:35,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:35,918.918 INFO    ] No camera update needed
[2026-06-13 00:46:35,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:35,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:35,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:35,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:37,968.968 INFO    ] ================================================
[2026-06-13 00:46:37,984.984 INFO    ] Launching Daemon at Sat Jun 13 00:46:37 IST 2026
[2026-06-13 00:46:38,996.996 INFO    ] ================================================
[2026-06-13 00:46:38,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:38
[2026-06-13 00:46:38,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:38,763.763 INFO    ] Initializing speech engine...
[2026-06-13 00:46:38,771.771 INFO    ] 2026-06-13 00:46:38
[2026-06-13 00:46:38,976.976 INFO    ] 2026-06-13 00:46:38
[2026-06-13 00:46:39,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:39,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:39,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:39,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:39,378.378 INFO    ] time= 13/06/2026 00:46:39
[2026-06-13 00:46:39,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:39,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:39,494.494 INFO    ] No existing commands found in stream
[2026-06-13 00:46:44,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:46:44,529.529 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 00:46:46,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:46:46,528.528 INFO    ] Checking for system updates...
[2026-06-13 00:46:46,550.550 INFO    ] 200
[2026-06-13 00:46:46,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:46,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:46,584.584 INFO    ] No update needed
[2026-06-13 00:46:46,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:46,605.605 INFO    ] 200
[2026-06-13 00:46:46,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:46,630.630 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:46,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:46,679.679 INFO    ] No camera update needed
[2026-06-13 00:46:46,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:46,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:46,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:46,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:48,728.728 INFO    ] ================================================
[2026-06-13 00:46:48,744.744 INFO    ] Launching Daemon at Sat Jun 13 00:46:48 IST 2026
[2026-06-13 00:46:48,755.755 INFO    ] ================================================
[2026-06-13 00:46:49,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:49
[2026-06-13 00:46:49,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:49,572.572 INFO    ] Initializing speech engine...
[2026-06-13 00:46:49,583.583 INFO    ] 2026-06-13 00:46:49
[2026-06-13 00:46:49,789.789 INFO    ] 2026-06-13 00:46:49
[2026-06-13 00:46:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:50,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:50,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:50,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:50,195.195 INFO    ] time= 13/06/2026 00:46:50
[2026-06-13 00:46:50,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:50,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:50,305.305 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 00:46:50,307.307 INFO    ] Checking historical command: ID=1781291805028-0
[2026-06-13 00:46:50,332.332 INFO    ] process_and_cleanup_command: msg_id=1781291805028-0
[2026-06-13 00:46:50,334.334 INFO    ] is_command_expired: timestamp=2026-06-12T19:16:44.358Z, expiry=30s
[2026-06-13 00:46:50,443.443 INFO    ] Command removed from stream: 1781291805028-0. returning for processing...
[2026-06-13 00:46:50,446.446 INFO    ] ***** get_valid_command
[2026-06-13 00:46:50,449.449 INFO    ] {'timeout': '10', 'data': '{"request_id":"start-order-1781291804358-4fs14pc8c","orderId":"TM08202203260613004547359","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-12T19:16:44.358Z', 'source': 'webapp'}
[2026-06-13 00:46:50,454.454 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781291804358-4fs14pc8c', 'orderId': 'TM08202203260613004547359', 'is_vending': False}
[2026-06-13 00:46:50,459.459 INFO    ] Handling start order...
[2026-06-13 00:46:50,462.462 INFO    ] handle_start_order_command
[2026-06-13 00:46:50,468.468 INFO    ] _send_start_order_success: request_id=start-order-1781291804358-4fs14pc8c, order_id=TM08202203260613004547359
[2026-06-13 00:46:50,471.471 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:46:50,520.520 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781291810490-0
[2026-06-13 00:46:50,522.522 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:46:50,525.525 INFO    ] Checking for system updates...
[2026-06-13 00:46:50,554.554 INFO    ] 200
[2026-06-13 00:46:50,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:50,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:50,596.596 INFO    ] No update needed
[2026-06-13 00:46:50,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 00:46:50,673.673 INFO    ] 200
[2026-06-13 00:46:50,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:50,738.738 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:46:50,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:46:50,822.822 INFO    ] No camera update needed
[2026-06-13 00:46:50,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:46:50,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:46:50,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:46:50,847.847 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 00:46:50,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:46:52,891.891 INFO    ] ================================================
[2026-06-13 00:46:52,907.907 INFO    ] Launching Daemon at Sat Jun 13 00:46:52 IST 2026
[2026-06-13 00:46:52,918.918 INFO    ] ================================================
[2026-06-13 00:46:53,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:46:53
[2026-06-13 00:46:53,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:46:53,795.795 INFO    ] Initializing speech engine...
[2026-06-13 00:46:53,801.801 INFO    ] 2026-06-13 00:46:53
[2026-06-13 00:46:54,008.008 INFO    ] 2026-06-13 00:46:53
[2026-06-13 00:46:54,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:46:54,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:46:54,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:46:54,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:46:54,427.427 INFO    ] time= 13/06/2026 00:46:54
[2026-06-13 00:46:54,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:46:54,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:46:54,525.525 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 00:46:54,527.527 INFO    ] Checking historical command: ID=1781291810490-0
[2026-06-13 00:46:54,553.553 INFO    ] process_and_cleanup_command: msg_id=1781291810490-0
[2026-06-13 00:46:54,555.555 INFO    ] is_command_expired: timestamp=2026-06-12T19:16:50.469338Z, expiry=30s
[2026-06-13 00:46:54,665.665 INFO    ] Command removed from stream: 1781291810490-0. returning for processing...
[2026-06-13 00:46:54,669.669 INFO    ] ***** get_valid_command
[2026-06-13 00:46:54,673.673 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781291804358-4fs14pc8c', 'imei': 'TM08202203', 'message': 'start-order success', 'timestamp': '2026-06-12T19:16:50.469338Z', 'status': 'success', 'metadata_order_id': 'TM08202203260613004547359'}
[2026-06-13 00:46:54,679.679 INFO    ] Checking historical command: ID=1781291813527-0
[2026-06-13 00:46:54,682.682 INFO    ] process_and_cleanup_command: msg_id=1781291813527-0
[2026-06-13 00:46:54,686.686 INFO    ] is_command_expired: timestamp=2026-06-12T19:16:52.858Z, expiry=30s
[2026-06-13 00:46:54,733.733 INFO    ] Command removed from stream: 1781291813527-0. returning for processing...
[2026-06-13 00:46:54,737.737 INFO    ] ***** get_valid_command
[2026-06-13 00:46:54,740.740 INFO    ] {'timeout': '60', 'timestamp': '2026-06-12T19:16:52.858Z', 'data': '{"request_id":"process-order-1781291812858-i2z4ngm6o","orderId":"TM08202203260613004547359","is_vending":false,"accessCode":"84539815"}', 'command': 'process-order', 'source': 'webapp'}
[2026-06-13 00:46:54,744.744 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781291812858-i2z4ngm6o', 'orderId': 'TM08202203260613004547359', 'accessCode': '84539815', 'is_vending': False}
[2026-06-13 00:46:54,747.747 INFO    ] Handling process order...
[2026-06-13 00:46:54,750.750 INFO    ] Processing process-order command...
[2026-06-13 00:46:54,755.755 INFO    ] 🔍 Lock file Order ID: TM08202203260613004547359, TS: 2026-06-13 00:46:50
[2026-06-13 00:46:54,764.764 INFO    ] ✅ Order lock valid for TM08202203260613004547359
[2026-06-13 00:46:54,767.767 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 00:46:54,770.770 INFO    ] processing access code 84539815 for order TM08202203260613004547359
[2026-06-13 00:46:54,774.774 INFO    ] 🔍 Lock file Order ID: TM08202203260613004547359, TS: 2026-06-13 00:46:50
[2026-06-13 00:46:54,779.779 INFO    ] ✅ Order lock valid for TM08202203260613004547359
[2026-06-13 00:46:54,784.784 INFO    ] 2026-06-13 00:46:54
[2026-06-13 00:46:54,814.814 INFO    ] 200
[2026-06-13 00:46:54,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:46:54,822.822 INFO    ] 84539815
[2026-06-13 00:46:54,827.827 INFO    ] 2026-06-13 00:46:54
[2026-06-13 00:46:54,831.831 INFO    ] session id :202558429
[2026-06-13 00:46:54,835.835 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=84539815&imei=TM08202203&session_id=202558429
[2026-06-13 00:46:55,993.993 INFO    ] 200
[2026-06-13 00:46:56,049.049 INFO    ] {"data": {"mobile": "7672030482", "order_id": "TM08202203260613004547359", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Farmely Classic date Bites 20gm", "tray_id": "37", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "84539815", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 00:46:56,061.061 INFO    ] 40
[2026-06-13 00:46:56,080.080 INFO    ] TM08202203260613004547359
[2026-06-13 00:46:56,097.097 INFO    ] 7672030482
[2026-06-13 00:46:56,109.109 INFO    ] 2026-06-13 00:46:56
[2026-06-13 00:46:56,118.118 INFO    ] Door Opening for user mobile ending with  zero four eight two 
[2026-06-13 00:46:56,121.121 INFO    ] Door Opening for user mobile ending with  zero four eight two 
[2026-06-13 00:46:56,124.124 INFO    ] 1fec7d2bb79c6d449d818a448e0b4785
[2026-06-13 00:46:56,127.127 INFO    ] 2026-06-13 00:46:56
[2026-06-13 00:46:56,130.130 INFO    ] playing audio file
[2026-06-13 00:46:56,148.148 INFO    ] 2026-06-13 00:46:56
[2026-06-13 00:46:56,151.151 INFO    ] 2026-06-13 00:46:56
[2026-06-13 00:46:56,155.155 INFO    ] publish_status: order_id=TM08202203260613004547359
[2026-06-13 00:46:56,159.159 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613004547359
[2026-06-13 00:46:56,262.262 INFO    ] [publish_status] Message added to stream with ID: 1781291816233-0
[2026-06-13 00:46:56,265.265 INFO    ] Published to order:TM08202203260613004547359: {'server_response': '{"status": true, "rstatus": true, "data": {"bill_amount": "40", "invoice_bill": "40", "mobile": "7672030482", "order_id": "TM08202203260613004547359", "access_code": "84539815", "proposed_sku_json": [{"tray_id": "37", "door_id": "2", "unit_price": 40, "qty": 1, "offer_id": "", "mrp": "40", "name": "Farmely Classic date Bites 20gm", "offer_desc": "", "sku_total": 40, "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp"}]}, "msg": "Order Data"}', 'timestamp': '2026-06-12T19:16:56.153540Z', 'server_status': 'order-started', 'order_id': 'TM08202203260613004547359'} (ID: 1781291816233-0)
[2026-06-13 00:46:56,662.662 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'data': {'bill_amount': '40', 'invoice_bill': '40', 'mobile': '7672030482', 'order_id': 'TM08202203260613004547359', 'access_code': '84539815', 'proposed_sku_json': [{'tray_id': '37', 'door_id': '2', 'unit_price': 40, 'qty': 1, 'offer_id': '', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm', 'offer_desc': '', 'sku_total': 40, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}]}, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM08202203260613004547359'}
[2026-06-13 00:46:56,665.665 INFO    ] 200
[2026-06-13 00:46:56,668.668 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"data":{"bill_amount":"40","invoice_bill":"40","mobile":"7672030482","order_id":"TM08202203260613004547359","access_code":"84539815","proposed_sku_json":[{"tray_id":"37","door_id":"2","unit_price":40,"qty":1,"offer_id":"","mrp":"40","name":"Farmely Classic date Bites 20gm","offer_desc":"","sku_total":40,"skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp"}]},"msg":"Order Data"},"server_status":"order-started","order_id":"TM08202203260613004547359"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:46:56,672.672 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'rstatus': True, 'data': {'bill_amount': '40', 'invoice_bill': '40', 'mobile': '7672030482', 'order_id': 'TM08202203260613004547359', 'access_code': '84539815', 'proposed_sku_json': [{'door_id': '2', 'unit_price': 40, 'qty': 1, 'tray_id': '37', 'skuid': '4500667', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm', 'offer_desc': '', 'sku_total': 40, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}]}, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM08202203260613004547359'}}
[2026-06-13 00:46:56,675.675 INFO    ] 2026-06-13 00:46:56
[2026-06-13 00:46:56,723.723 INFO    ] 200
[2026-06-13 00:46:56,726.726 INFO    ] True
[2026-06-13 00:46:56,914.914 INFO    ] 200
[2026-06-13 00:46:56,917.917 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 00:46:56,921.921 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}}
[2026-06-13 00:46:56,924.924 INFO    ] *** process_order ***
[2026-06-13 00:46:58,101.101 INFO    ] 200
[2026-06-13 00:46:58,102.102 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:46:58,104.104 INFO    ] {'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}}
[2026-06-13 00:46:58,105.105 INFO    ] *** process_order ***
[2026-06-13 00:46:58,107.107 INFO    ] publish_status: order_id=TM08202203260613004547359
[2026-06-13 00:46:58,108.108 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613004547359
[2026-06-13 00:46:58,193.193 INFO    ] [publish_status] Message added to stream with ID: 1781291818165-0
[2026-06-13 00:46:58,194.194 INFO    ] Published to order:TM08202203260613004547359: {'server_response': '{"status": "True", "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613004547359'} (ID: 1781291818165-0)
[2026-06-13 00:46:59,240.240 INFO    ] 2026-06-13 00:46:59
[2026-06-13 00:46:59,243.243 INFO    ] publish_status: order_id=TM08202203260613004547359
[2026-06-13 00:46:59,245.245 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613004547359
[2026-06-13 00:46:59,335.335 INFO    ] [publish_status] Message added to stream with ID: 1781291819305-0
[2026-06-13 00:46:59,339.339 INFO    ] Published to order:TM08202203260613004547359: {'server_response': '{"status": "True", "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}', 'timestamp': '2026-06-12T19:16:59.241432Z', 'server_status': 'processOrder', 'order_id': 'TM08202203260613004547359'} (ID: 1781291819305-0)
[2026-06-13 00:46:59,458.458 INFO    ] {'server_response': {'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613004547359'}
[2026-06-13 00:46:59,461.461 INFO    ] 200
[2026-06-13 00:46:59,463.463 INFO    ] {"data":{"server_response":{"status":"true","voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""}},"server_status":"processOrder","order_id":"TM08202203260613004547359"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:46:59,466.466 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'true', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613004547359'}}
[2026-06-13 00:46:59,469.469 INFO    ] 2026-06-13 00:46:59
[2026-06-13 00:46:59,471.471 INFO    ] None
[2026-06-13 00:46:59,474.474 INFO    ] Opening Door now
[2026-06-13 00:46:59,476.476 INFO    ] Opening Door now
[2026-06-13 00:46:59,479.479 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 00:46:59,482.482 INFO    ] 2026-06-13 00:46:59
[2026-06-13 00:46:59,484.484 INFO    ] playing audio file
[2026-06-13 00:46:59,501.501 INFO    ] 2026-06-13 00:46:59
[2026-06-13 00:46:59,504.504 INFO    ] 2026-06-13 00:46:59
[2026-06-13 00:47:02,578.578 INFO    ] 200
[2026-06-13 00:47:02,580.580 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:47:02,582.582 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-13 00:47:05,623.623 INFO    ] 200
[2026-06-13 00:47:05,625.625 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:47:05,627.627 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-13 00:47:08,679.679 INFO    ] 200
[2026-06-13 00:47:08,680.680 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:47:08,682.682 INFO    ] Please close door 2
[2026-06-13 00:47:08,683.683 INFO    ] Please close door 2
[2026-06-13 00:47:08,684.684 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 00:47:08,685.685 INFO    ] 2026-06-13 00:47:08
[2026-06-13 00:47:08,687.687 INFO    ] playing audio file
[2026-06-13 00:47:08,697.697 INFO    ] 2026-06-13 00:47:08
[2026-06-13 00:47:08,699.699 INFO    ] publish_status: order_id=TM08202203260613004547359
[2026-06-13 00:47:08,701.701 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613004547359
[2026-06-13 00:47:08,782.782 INFO    ] [publish_status] Message added to stream with ID: 1781291828754-0
[2026-06-13 00:47:08,784.784 INFO    ] Published to order:TM08202203260613004547359: {'server_response': '{"status": "False", "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}}', 'timestamp': '2026-06-12T19:17:08.698457Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613004547359'} (ID: 1781291828754-0)
[2026-06-13 00:47:09,124.124 INFO    ] {'server_response': {'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613004547359'}
[2026-06-13 00:47:09,125.125 INFO    ] 200
[2026-06-13 00:47:09,127.127 INFO    ] {"data":{"server_response":{"status":"false","error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Farmely Classic date Bites 20gm","qty":1}]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"}},"server_status":"OrderStatus","order_id":"TM08202203260613004547359"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:47:09,129.129 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613004547359'}}
[2026-06-13 00:47:09,131.131 INFO    ] {'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-13 00:47:12,167.167 INFO    ] 200
[2026-06-13 00:47:12,169.169 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:47:12,170.170 INFO    ] {'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-13 00:47:12,172.172 INFO    ] 2026-06-13 00:47:12
[2026-06-13 00:47:12,174.174 INFO    ] Order Completed 
[2026-06-13 00:47:12,175.175 INFO    ] Order Completed 
[2026-06-13 00:47:12,177.177 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 00:47:12,179.179 INFO    ] 2026-06-13 00:47:12
[2026-06-13 00:47:12,180.180 INFO    ] playing audio file
[2026-06-13 00:47:12,192.192 INFO    ] 2026-06-13 00:47:12
[2026-06-13 00:47:12,193.193 INFO    ] {'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-13 00:47:12,195.195 INFO    ] 2026-06-13 00:47:12
[2026-06-13 00:47:13,554.554 INFO    ] 200
[2026-06-13 00:47:13,555.555 INFO    ] {"res": "True", "orderId": "TM08202203260613004547359", "skus": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "", "tray_id": "37", "name": "Farmely Classic date Bites 20gm per peice", "unit_price": "40", "mrp": "40", "qty": 2, "sku_total": 80.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 80.0}
[2026-06-13 00:47:13,558.558 INFO    ] {'orderId': 'TM08202203260613004547359', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'unit_price': '40', 'qty': 2, 'tray_id': '37', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}], 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-13 00:47:13,560.560 INFO    ] {'orderId': 'TM08202203260613004547359', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'unit_price': '40', 'qty': 2, 'tray_id': '37', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}], 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-13 00:47:13,562.562 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,564.564 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,567.567 INFO    ] 40
[2026-06-13 00:47:13,570.570 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,573.573 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,576.576 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 80
[2026-06-13 00:47:13,578.578 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 80
[2026-06-13 00:47:13,581.581 INFO    ] 0aa6231755ed3a3e83de3e4b043cc777
[2026-06-13 00:47:13,584.584 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,587.587 INFO    ] playing audio file
[2026-06-13 00:47:13,605.605 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,609.609 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:13,613.613 INFO    ] publish_status: order_id=TM08202203260613004547359
[2026-06-13 00:47:13,616.616 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613004547359
[2026-06-13 00:47:13,694.694 INFO    ] [publish_status] Message added to stream with ID: 1781291833665-0
[2026-06-13 00:47:13,697.697 INFO    ] Published to order:TM08202203260613004547359: {'server_response': '{"orderId": "TM08202203260613004547359", "rstatus": true, "res": "True", "anomaly": 0, "skus": [{"door_id": "", "unit_price": "40", "qty": 2, "tray_id": "37", "mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "sku_total": 80.0, "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp"}], "logic": "WBL", "total_amount": 80.0}', 'timestamp': '2026-06-12T19:17:13.611205Z', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613004547359'} (ID: 1781291833665-0)
[2026-06-13 00:47:13,813.813 INFO    ] {'server_response': {'orderId': 'TM08202203260613004547359', 'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'unit_price': '40', 'qty': 2, 'tray_id': '37', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}], 'logic': 'WBL', 'total_amount': 80.0}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613004547359'}
[2026-06-13 00:47:13,815.815 INFO    ] 200
[2026-06-13 00:47:13,817.817 INFO    ] {"data":{"server_response":{"orderId":"TM08202203260613004547359","rstatus":true,"res":"true","anomaly":0,"skus":[{"door_id":"","unit_price":"40","qty":2,"tray_id":"37","mrp":"40","name":"Farmely Classic date Bites 20gm per peice","sku_total":80,"skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp"}],"logic":"WBL","total_amount":80},"server_status":"invoiceOrder","order_id":"TM08202203260613004547359"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:47:13,823.823 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613004547359', 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'skus': [{'door_id': '', 'unit_price': '40', 'qty': 2, 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'tray_id': '37', 'sku_total': 80, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}], 'rstatus': True, 'total_amount': 80}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613004547359'}}
[2026-06-13 00:47:13,826.826 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613004547359', 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'skus': [{'door_id': '', 'unit_price': '40', 'qty': 2, 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'tray_id': '37', 'sku_total': 80, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp'}], 'rstatus': True, 'total_amount': 80}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613004547359'}}
[2026-06-13 00:47:13,829.829 INFO    ] 2026-06-13 00:47:13
[2026-06-13 00:47:15,815.815 INFO    ] 200
[2026-06-13 00:47:15,819.819 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359", "TM08202203260613004547359"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 00:47:15,823.823 INFO    ] 2026-06-13 00:47:15
[2026-06-13 00:47:15,978.978 INFO    ] 200
[2026-06-13 00:47:15,981.981 INFO    ] True
[2026-06-13 00:47:15,984.984 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613004547359
[2026-06-13 00:47:15,988.988 INFO    ] start order file deleted
[2026-06-13 00:47:15,991.991 INFO    ] Checking for system updates...
[2026-06-13 00:47:16,031.031 INFO    ] 200
[2026-06-13 00:47:16,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:16,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:16,101.101 INFO    ] No update needed
[2026-06-13 00:47:16,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 00:47:16,148.148 INFO    ] 200
[2026-06-13 00:47:16,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:16,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:47:16,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:16,270.270 INFO    ] No camera update needed
[2026-06-13 00:47:16,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:47:16,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:47:16,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:47:16,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:47:18,330.330 INFO    ] ================================================
[2026-06-13 00:47:18,345.345 INFO    ] Launching Daemon at Sat Jun 13 00:47:18 IST 2026
[2026-06-13 00:47:18,356.356 INFO    ] ================================================
[2026-06-13 00:47:18,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:47:18
[2026-06-13 00:47:18,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:47:19,130.130 INFO    ] Initializing speech engine...
[2026-06-13 00:47:19,135.135 INFO    ] 2026-06-13 00:47:19
[2026-06-13 00:47:19,344.344 INFO    ] 2026-06-13 00:47:19
[2026-06-13 00:47:19,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:47:19,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:47:19,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:47:19,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:47:19,759.759 INFO    ] time= 13/06/2026 00:47:19
[2026-06-13 00:47:19,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:47:19,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:47:19,930.930 INFO    ] No existing commands found in stream
[2026-06-13 00:47:24,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:47:24,943.943 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 00:47:29,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:47:29,196.196 INFO    ] Checking for system updates...
[2026-06-13 00:47:29,224.224 INFO    ] 200
[2026-06-13 00:47:29,226.226 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:29,228.228 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 00:47:29,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 00:47:29,252.252 INFO    ] 200
[2026-06-13 00:47:29,253.253 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:29,255.255 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 00:47:29,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:47:29,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:47:29,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:47:29,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:47:31,303.303 INFO    ] ================================================
[2026-06-13 00:47:31,319.319 INFO    ] Launching Daemon at Sat Jun 13 00:47:31 IST 2026
[2026-06-13 00:47:31,330.330 INFO    ] ================================================
[2026-06-13 00:47:31,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:47:31
[2026-06-13 00:47:32,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:47:32,595.595 INFO    ] Initializing speech engine...
[2026-06-13 00:47:32,609.609 INFO    ] 2026-06-13 00:47:32
[2026-06-13 00:47:32,874.874 INFO    ] 2026-06-13 00:47:32
[2026-06-13 00:47:32,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:47:33,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:47:33,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:47:33,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:47:33,261.261 INFO    ] time= 13/06/2026 00:47:33
[2026-06-13 00:47:33,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:47:33,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:47:33,343.343 INFO    ] No existing commands found in stream
[2026-06-13 00:47:38,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:47:38,357.357 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 00:47:39,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:47:39,228.228 INFO    ] Checking for system updates...
[2026-06-13 00:47:39,250.250 INFO    ] 200
[2026-06-13 00:47:39,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:39,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:39,285.285 INFO    ] No update needed
[2026-06-13 00:47:39,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 00:47:39,307.307 INFO    ] 200
[2026-06-13 00:47:39,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:39,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:47:39,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:39,383.383 INFO    ] No camera update needed
[2026-06-13 00:47:39,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:47:39,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:47:39,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:47:39,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:47:41,433.433 INFO    ] ================================================
[2026-06-13 00:47:41,449.449 INFO    ] Launching Daemon at Sat Jun 13 00:47:41 IST 2026
[2026-06-13 00:47:41,460.460 INFO    ] ================================================
[2026-06-13 00:47:41,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:47:41
[2026-06-13 00:47:42,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:47:42,281.281 INFO    ] Initializing speech engine...
[2026-06-13 00:47:42,289.289 INFO    ] 2026-06-13 00:47:42
[2026-06-13 00:47:42,511.511 INFO    ] 2026-06-13 00:47:42
[2026-06-13 00:47:42,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:47:42,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:47:42,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:47:42,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:47:42,968.968 INFO    ] time= 13/06/2026 00:47:42
[2026-06-13 00:47:42,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:47:43,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:47:43,080.080 INFO    ] No existing commands found in stream
[2026-06-13 00:47:48,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:47:48,094.094 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 00:47:49,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:47:49,085.085 INFO    ] Checking for system updates...
[2026-06-13 00:47:49,106.106 INFO    ] 200
[2026-06-13 00:47:49,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:49,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:47:49,142.142 INFO    ] No update needed
[2026-06-13 00:47:49,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 00:47:49,162.162 INFO    ] 200
[2026-06-13 00:47:49,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:49,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:47:49,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:47:49,328.328 INFO    ] No camera update needed
[2026-06-13 00:47:49,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:47:49,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:47:49,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:47:49,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:47:51,375.375 INFO    ] ================================================
[2026-06-13 00:47:51,391.391 INFO    ] Launching Daemon at Sat Jun 13 00:47:51 IST 2026
[2026-06-13 00:47:51,402.402 INFO    ] ================================================
[2026-06-13 00:47:51,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:47:51
[2026-06-13 00:47:52,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:47:52,187.187 INFO    ] Initializing speech engine...
[2026-06-13 00:47:52,190.190 INFO    ] 2026-06-13 00:47:52
[2026-06-13 00:47:52,387.387 INFO    ] 2026-06-13 00:47:52
[2026-06-13 00:47:52,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:47:52,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:47:52,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:47:52,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:47:52,847.847 INFO    ] time= 13/06/2026 00:47:52
[2026-06-13 00:47:52,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:47:52,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:47:52,986.986 INFO    ] No existing commands found in stream
[2026-06-13 00:47:57,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:47:58,000.000 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 00:47:58,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:47:58,632.632 INFO    ] Checking for system updates...
[2026-06-13 00:47:58,654.654 INFO    ] 200
[2026-06-13 00:47:58,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:58,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:58,690.690 INFO    ] No update needed
[2026-06-13 00:47:58,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 00:47:58,711.711 INFO    ] 200
[2026-06-13 00:47:58,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:47:58,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:47:58,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:47:58,784.784 INFO    ] No camera update needed
[2026-06-13 00:47:58,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:47:58,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:47:58,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:47:58,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:00,832.832 INFO    ] ================================================
[2026-06-13 00:48:00,848.848 INFO    ] Launching Daemon at Sat Jun 13 00:48:00 IST 2026
[2026-06-13 00:48:00,859.859 INFO    ] ================================================
[2026-06-13 00:48:01,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:01
[2026-06-13 00:48:01,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:01,746.746 INFO    ] Initializing speech engine...
[2026-06-13 00:48:01,749.749 INFO    ] 2026-06-13 00:48:01
[2026-06-13 00:48:01,952.952 INFO    ] 2026-06-13 00:48:01
[2026-06-13 00:48:02,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:02,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:02,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:02,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:02,260.260 INFO    ] time= 13/06/2026 00:48:02
[2026-06-13 00:48:02,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:02,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:02,329.329 INFO    ] No existing commands found in stream
[2026-06-13 00:48:07,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:48:07,344.344 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 00:48:09,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:48:09,104.104 INFO    ] Checking for system updates...
[2026-06-13 00:48:09,126.126 INFO    ] 200
[2026-06-13 00:48:09,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:09,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:09,164.164 INFO    ] No update needed
[2026-06-13 00:48:09,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 00:48:09,189.189 INFO    ] 200
[2026-06-13 00:48:09,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:09,217.217 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:48:09,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:09,260.260 INFO    ] No camera update needed
[2026-06-13 00:48:09,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:48:09,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:48:09,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:48:09,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:11,312.312 INFO    ] ================================================
[2026-06-13 00:48:11,327.327 INFO    ] Launching Daemon at Sat Jun 13 00:48:11 IST 2026
[2026-06-13 00:48:11,340.340 INFO    ] ================================================
[2026-06-13 00:48:11,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:11
[2026-06-13 00:48:12,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:12,203.203 INFO    ] Initializing speech engine...
[2026-06-13 00:48:12,209.209 INFO    ] 2026-06-13 00:48:12
[2026-06-13 00:48:12,416.416 INFO    ] 2026-06-13 00:48:12
[2026-06-13 00:48:12,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:12,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:12,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:12,839.839 INFO    ] time= 13/06/2026 00:48:12
[2026-06-13 00:48:12,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:12,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:12,959.959 INFO    ] No existing commands found in stream
[2026-06-13 00:48:17,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:48:17,977.977 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 00:48:21,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:48:21,119.119 INFO    ] Checking for system updates...
[2026-06-13 00:48:21,141.141 INFO    ] 200
[2026-06-13 00:48:21,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:21,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:21,178.178 INFO    ] No update needed
[2026-06-13 00:48:21,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 00:48:21,200.200 INFO    ] 200
[2026-06-13 00:48:21,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:21,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:48:21,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:21,275.275 INFO    ] No camera update needed
[2026-06-13 00:48:21,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:48:21,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:48:21,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:48:21,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:23,322.322 INFO    ] ================================================
[2026-06-13 00:48:23,337.337 INFO    ] Launching Daemon at Sat Jun 13 00:48:23 IST 2026
[2026-06-13 00:48:23,348.348 INFO    ] ================================================
[2026-06-13 00:48:23,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:23
[2026-06-13 00:48:24,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:24,239.239 INFO    ] Initializing speech engine...
[2026-06-13 00:48:24,244.244 INFO    ] 2026-06-13 00:48:24
[2026-06-13 00:48:24,452.452 INFO    ] 2026-06-13 00:48:24
[2026-06-13 00:48:24,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:24,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:24,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:24,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:24,871.871 INFO    ] time= 13/06/2026 00:48:24
[2026-06-13 00:48:24,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:24,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:24,972.972 INFO    ] No existing commands found in stream
[2026-06-13 00:48:29,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:48:29,990.990 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 00:48:30,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:48:30,957.957 INFO    ] Checking for system updates...
[2026-06-13 00:48:30,979.979 INFO    ] 200
[2026-06-13 00:48:30,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:31,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:31,014.014 INFO    ] No update needed
[2026-06-13 00:48:31,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 00:48:31,035.035 INFO    ] 200
[2026-06-13 00:48:31,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:31,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:48:31,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:31,103.103 INFO    ] No camera update needed
[2026-06-13 00:48:31,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:48:31,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:48:31,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:48:31,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:33,146.146 INFO    ] ================================================
[2026-06-13 00:48:33,161.161 INFO    ] Launching Daemon at Sat Jun 13 00:48:33 IST 2026
[2026-06-13 00:48:33,171.171 INFO    ] ================================================
[2026-06-13 00:48:33,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:33
[2026-06-13 00:48:33,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:34,054.054 INFO    ] Initializing speech engine...
[2026-06-13 00:48:34,060.060 INFO    ] 2026-06-13 00:48:34
[2026-06-13 00:48:34,270.270 INFO    ] 2026-06-13 00:48:34
[2026-06-13 00:48:34,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:34,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:34,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:34,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:34,696.696 INFO    ] time= 13/06/2026 00:48:34
[2026-06-13 00:48:34,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:34,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:34,799.799 INFO    ] No existing commands found in stream
[2026-06-13 00:48:39,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:48:39,817.817 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 00:48:42,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:48:42,147.147 INFO    ] Checking for system updates...
[2026-06-13 00:48:42,170.170 INFO    ] 200
[2026-06-13 00:48:42,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:42,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:48:42,206.206 INFO    ] No update needed
[2026-06-13 00:48:42,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 00:48:42,228.228 INFO    ] 200
[2026-06-13 00:48:42,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:42,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:48:42,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:48:42,296.296 INFO    ] No camera update needed
[2026-06-13 00:48:42,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:48:42,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:48:42,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:48:42,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:44,344.344 INFO    ] ================================================
[2026-06-13 00:48:44,359.359 INFO    ] Launching Daemon at Sat Jun 13 00:48:44 IST 2026
[2026-06-13 00:48:44,370.370 INFO    ] ================================================
[2026-06-13 00:48:44,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:44
[2026-06-13 00:48:45,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:45,366.366 INFO    ] Initializing speech engine...
[2026-06-13 00:48:45,373.373 INFO    ] 2026-06-13 00:48:45
[2026-06-13 00:48:45,634.634 INFO    ] 2026-06-13 00:48:45
[2026-06-13 00:48:45,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:45,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:45,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:46,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:46,092.092 INFO    ] time= 13/06/2026 00:48:46
[2026-06-13 00:48:46,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:46,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:46,317.317 INFO    ] No existing commands found in stream
[2026-06-13 00:48:51,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:48:51,343.343 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 00:48:54,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:48:54,540.540 INFO    ] Checking for system updates...
[2026-06-13 00:48:54,562.562 INFO    ] 200
[2026-06-13 00:48:54,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:54,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:48:54,597.597 INFO    ] No update needed
[2026-06-13 00:48:54,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 00:48:54,618.618 INFO    ] 200
[2026-06-13 00:48:54,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:48:54,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:48:54,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:48:54,682.682 INFO    ] No camera update needed
[2026-06-13 00:48:54,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:48:54,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:48:54,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:48:54,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:48:56,730.730 INFO    ] ================================================
[2026-06-13 00:48:56,745.745 INFO    ] Launching Daemon at Sat Jun 13 00:48:56 IST 2026
[2026-06-13 00:48:56,756.756 INFO    ] ================================================
[2026-06-13 00:48:57,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:48:57
[2026-06-13 00:48:57,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:48:57,569.569 INFO    ] Initializing speech engine...
[2026-06-13 00:48:57,572.572 INFO    ] 2026-06-13 00:48:57
[2026-06-13 00:48:57,774.774 INFO    ] 2026-06-13 00:48:57
[2026-06-13 00:48:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:48:57,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:48:57,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:48:58,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:48:58,190.190 INFO    ] time= 13/06/2026 00:48:58
[2026-06-13 00:48:58,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:48:58,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:48:58,285.285 INFO    ] No existing commands found in stream
[2026-06-13 00:49:03,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:03,312.312 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 00:49:03,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:49:03,889.889 INFO    ] Checking for system updates...
[2026-06-13 00:49:03,930.930 INFO    ] 200
[2026-06-13 00:49:03,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:03,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:49:04,000.000 INFO    ] No update needed
[2026-06-13 00:49:04,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 00:49:04,047.047 INFO    ] 200
[2026-06-13 00:49:04,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:04,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:49:04,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:49:04,163.163 INFO    ] No camera update needed
[2026-06-13 00:49:04,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:49:04,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:49:04,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:49:04,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:49:06,225.225 INFO    ] ================================================
[2026-06-13 00:49:06,240.240 INFO    ] Launching Daemon at Sat Jun 13 00:49:06 IST 2026
[2026-06-13 00:49:06,251.251 INFO    ] ================================================
[2026-06-13 00:49:06,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:49:06
[2026-06-13 00:49:06,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:49:07,146.146 INFO    ] Initializing speech engine...
[2026-06-13 00:49:07,157.157 INFO    ] 2026-06-13 00:49:07
[2026-06-13 00:49:07,446.446 INFO    ] 2026-06-13 00:49:07
[2026-06-13 00:49:07,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:49:07,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:49:07,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:49:07,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:49:07,831.831 INFO    ] time= 13/06/2026 00:49:07
[2026-06-13 00:49:07,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:49:07,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:49:07,930.930 INFO    ] No existing commands found in stream
[2026-06-13 00:49:12,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:12,960.960 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 00:49:13,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:49:13,973.973 INFO    ] Checking for system updates...
[2026-06-13 00:49:13,995.995 INFO    ] 200
[2026-06-13 00:49:13,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:14,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:49:14,029.029 INFO    ] No update needed
[2026-06-13 00:49:14,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 00:49:14,050.050 INFO    ] 200
[2026-06-13 00:49:14,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:14,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:49:14,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:14,128.128 INFO    ] No camera update needed
[2026-06-13 00:49:14,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:49:14,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:49:14,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:49:14,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:49:16,178.178 INFO    ] ================================================
[2026-06-13 00:49:16,193.193 INFO    ] Launching Daemon at Sat Jun 13 00:49:16 IST 2026
[2026-06-13 00:49:16,204.204 INFO    ] ================================================
[2026-06-13 00:49:16,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:49:16
[2026-06-13 00:49:16,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:49:16,991.991 INFO    ] Initializing speech engine...
[2026-06-13 00:49:16,997.997 INFO    ] 2026-06-13 00:49:16
[2026-06-13 00:49:17,201.201 INFO    ] 2026-06-13 00:49:17
[2026-06-13 00:49:17,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:49:17,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:49:17,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:49:17,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:49:17,609.609 INFO    ] time= 13/06/2026 00:49:17
[2026-06-13 00:49:17,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:49:17,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:49:17,713.713 INFO    ] No existing commands found in stream
[2026-06-13 00:49:22,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:22,726.726 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 00:49:26,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:49:26,977.977 INFO    ] Checking for system updates...
[2026-06-13 00:49:26,999.999 INFO    ] 200
[2026-06-13 00:49:27,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:27,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:27,032.032 INFO    ] No update needed
[2026-06-13 00:49:27,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 00:49:27,053.053 INFO    ] 200
[2026-06-13 00:49:27,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:27,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:49:27,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:27,119.119 INFO    ] No camera update needed
[2026-06-13 00:49:27,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:49:27,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:49:27,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:49:27,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:49:29,169.169 INFO    ] ================================================
[2026-06-13 00:49:29,184.184 INFO    ] Launching Daemon at Sat Jun 13 00:49:29 IST 2026
[2026-06-13 00:49:29,194.194 INFO    ] ================================================
[2026-06-13 00:49:29,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:49:29
[2026-06-13 00:49:29,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:49:30,010.010 INFO    ] Initializing speech engine...
[2026-06-13 00:49:30,014.014 INFO    ] 2026-06-13 00:49:30
[2026-06-13 00:49:30,214.214 INFO    ] 2026-06-13 00:49:30
[2026-06-13 00:49:30,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:49:30,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:49:30,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:49:30,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:49:30,510.510 INFO    ] time= 13/06/2026 00:49:30
[2026-06-13 00:49:30,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:49:30,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:49:30,604.604 INFO    ] No existing commands found in stream
[2026-06-13 00:49:35,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:35,636.636 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 00:49:39,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:49:39,817.817 INFO    ] Checking for system updates...
[2026-06-13 00:49:39,838.838 INFO    ] 200
[2026-06-13 00:49:39,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:39,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:39,874.874 INFO    ] No update needed
[2026-06-13 00:49:39,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 00:49:39,894.894 INFO    ] 200
[2026-06-13 00:49:39,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:39,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:49:39,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:39,965.965 INFO    ] No camera update needed
[2026-06-13 00:49:39,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:49:39,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:49:39,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:49:39,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:49:42,012.012 INFO    ] ================================================
[2026-06-13 00:49:42,027.027 INFO    ] Launching Daemon at Sat Jun 13 00:49:42 IST 2026
[2026-06-13 00:49:42,038.038 INFO    ] ================================================
[2026-06-13 00:49:42,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:49:42
[2026-06-13 00:49:42,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:49:42,934.934 INFO    ] Initializing speech engine...
[2026-06-13 00:49:42,943.943 INFO    ] 2026-06-13 00:49:42
[2026-06-13 00:49:43,153.153 INFO    ] 2026-06-13 00:49:43
[2026-06-13 00:49:43,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:49:43,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:49:43,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:49:43,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:49:43,578.578 INFO    ] time= 13/06/2026 00:49:43
[2026-06-13 00:49:43,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:49:43,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:49:43,674.674 INFO    ] No existing commands found in stream
[2026-06-13 00:49:48,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:48,693.693 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 00:49:50,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:49:50,781.781 INFO    ] Checking for system updates...
[2026-06-13 00:49:50,804.804 INFO    ] 200
[2026-06-13 00:49:50,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:50,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:50,842.842 INFO    ] No update needed
[2026-06-13 00:49:50,843.843 INFO    ] Checking for camera pi updates...
[2026-06-13 00:49:50,863.863 INFO    ] 200
[2026-06-13 00:49:50,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:49:50,890.890 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:49:50,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:49:50,928.928 INFO    ] No camera update needed
[2026-06-13 00:49:50,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:49:50,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:49:50,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:49:50,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:49:52,976.976 INFO    ] ================================================
[2026-06-13 00:49:52,991.991 INFO    ] Launching Daemon at Sat Jun 13 00:49:52 IST 2026
[2026-06-13 00:49:53,002.002 INFO    ] ================================================
[2026-06-13 00:49:53,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:49:53
[2026-06-13 00:49:53,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:49:53,805.805 INFO    ] Initializing speech engine...
[2026-06-13 00:49:53,808.808 INFO    ] 2026-06-13 00:49:53
[2026-06-13 00:49:54,001.001 INFO    ] 2026-06-13 00:49:53
[2026-06-13 00:49:54,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:49:54,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:49:54,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:49:54,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:49:54,477.477 INFO    ] time= 13/06/2026 00:49:54
[2026-06-13 00:49:54,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:49:54,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:49:54,606.606 INFO    ] No existing commands found in stream
[2026-06-13 00:49:59,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:49:59,639.639 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 00:50:01,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:50:01,132.132 INFO    ] Checking for system updates...
[2026-06-13 00:50:01,153.153 INFO    ] 200
[2026-06-13 00:50:01,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:01,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:01,187.187 INFO    ] No update needed
[2026-06-13 00:50:01,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:01,208.208 INFO    ] 200
[2026-06-13 00:50:01,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:01,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:01,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:01,410.410 INFO    ] No camera update needed
[2026-06-13 00:50:01,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:01,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:01,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:01,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:50:03,453.453 INFO    ] ================================================
[2026-06-13 00:50:03,469.469 INFO    ] Launching Daemon at Sat Jun 13 00:50:03 IST 2026
[2026-06-13 00:50:03,480.480 INFO    ] ================================================
[2026-06-13 00:50:03,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:50:03
[2026-06-13 00:50:04,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:50:04,285.285 INFO    ] Initializing speech engine...
[2026-06-13 00:50:04,295.295 INFO    ] 2026-06-13 00:50:04
[2026-06-13 00:50:04,498.498 INFO    ] 2026-06-13 00:50:04
[2026-06-13 00:50:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:50:04,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:50:04,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:50:04,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:50:04,894.894 INFO    ] time= 13/06/2026 00:50:04
[2026-06-13 00:50:04,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:50:04,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:50:05,023.023 INFO    ] No existing commands found in stream
[2026-06-13 00:50:10,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:50:10,040.040 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 00:50:11,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:50:11,160.160 INFO    ] Checking for system updates...
[2026-06-13 00:50:11,181.181 INFO    ] 200
[2026-06-13 00:50:11,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:11,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:11,214.214 INFO    ] No update needed
[2026-06-13 00:50:11,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:11,235.235 INFO    ] 200
[2026-06-13 00:50:11,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:11,260.260 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:11,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:11,305.305 INFO    ] No camera update needed
[2026-06-13 00:50:11,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:11,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:11,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:11,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:50:13,345.345 INFO    ] ================================================
[2026-06-13 00:50:13,360.360 INFO    ] Launching Daemon at Sat Jun 13 00:50:13 IST 2026
[2026-06-13 00:50:13,371.371 INFO    ] ================================================
[2026-06-13 00:50:13,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:50:13
[2026-06-13 00:50:14,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:50:14,212.212 INFO    ] Initializing speech engine...
[2026-06-13 00:50:14,217.217 INFO    ] 2026-06-13 00:50:14
[2026-06-13 00:50:14,449.449 INFO    ] 2026-06-13 00:50:14
[2026-06-13 00:50:14,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:50:14,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:50:14,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:50:14,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:50:14,886.886 INFO    ] time= 13/06/2026 00:50:14
[2026-06-13 00:50:14,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:50:14,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:50:15,035.035 INFO    ] No existing commands found in stream
[2026-06-13 00:50:20,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:50:20,056.056 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 00:50:22,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:50:22,255.255 INFO    ] Checking for system updates...
[2026-06-13 00:50:22,279.279 INFO    ] 200
[2026-06-13 00:50:22,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:22,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:22,313.313 INFO    ] No update needed
[2026-06-13 00:50:22,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:22,336.336 INFO    ] 200
[2026-06-13 00:50:22,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:22,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:22,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:22,405.405 INFO    ] No camera update needed
[2026-06-13 00:50:22,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:22,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:22,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:22,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:50:24,454.454 INFO    ] ================================================
[2026-06-13 00:50:24,469.469 INFO    ] Launching Daemon at Sat Jun 13 00:50:24 IST 2026
[2026-06-13 00:50:24,481.481 INFO    ] ================================================
[2026-06-13 00:50:24,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:50:24
[2026-06-13 00:50:25,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:50:25,287.287 INFO    ] Initializing speech engine...
[2026-06-13 00:50:25,295.295 INFO    ] 2026-06-13 00:50:25
[2026-06-13 00:50:25,522.522 INFO    ] 2026-06-13 00:50:25
[2026-06-13 00:50:25,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:50:25,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:50:25,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:50:25,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:50:25,942.942 INFO    ] time= 13/06/2026 00:50:25
[2026-06-13 00:50:25,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:50:26,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:50:26,087.087 INFO    ] No existing commands found in stream
[2026-06-13 00:50:31,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:50:31,101.101 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 00:50:33,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:50:33,556.556 INFO    ] Checking for system updates...
[2026-06-13 00:50:33,576.576 INFO    ] 200
[2026-06-13 00:50:33,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:33,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:50:33,609.609 INFO    ] No update needed
[2026-06-13 00:50:33,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:33,632.632 INFO    ] 200
[2026-06-13 00:50:33,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:33,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:33,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:50:33,704.704 INFO    ] No camera update needed
[2026-06-13 00:50:33,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:33,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:33,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:33,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:50:35,752.752 INFO    ] ================================================
[2026-06-13 00:50:35,767.767 INFO    ] Launching Daemon at Sat Jun 13 00:50:35 IST 2026
[2026-06-13 00:50:35,778.778 INFO    ] ================================================
[2026-06-13 00:50:36,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:50:36
[2026-06-13 00:50:36,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:50:36,552.552 INFO    ] Initializing speech engine...
[2026-06-13 00:50:36,564.564 INFO    ] 2026-06-13 00:50:36
[2026-06-13 00:50:36,769.769 INFO    ] 2026-06-13 00:50:36
[2026-06-13 00:50:36,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:50:36,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:50:36,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:50:37,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:50:37,156.156 INFO    ] time= 13/06/2026 00:50:37
[2026-06-13 00:50:37,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:50:37,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:50:37,364.364 INFO    ] No existing commands found in stream
[2026-06-13 00:50:42,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:50:42,376.376 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 00:50:44,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:50:44,828.828 INFO    ] Checking for system updates...
[2026-06-13 00:50:44,852.852 INFO    ] 200
[2026-06-13 00:50:44,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:44,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:50:44,901.901 INFO    ] No update needed
[2026-06-13 00:50:44,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:44,927.927 INFO    ] 200
[2026-06-13 00:50:44,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:44,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:45,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:50:45,012.012 INFO    ] No camera update needed
[2026-06-13 00:50:45,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:45,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:45,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:45,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:50:47,060.060 INFO    ] ================================================
[2026-06-13 00:50:47,075.075 INFO    ] Launching Daemon at Sat Jun 13 00:50:47 IST 2026
[2026-06-13 00:50:47,086.086 INFO    ] ================================================
[2026-06-13 00:50:47,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:50:47
[2026-06-13 00:50:48,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:50:48,653.653 INFO    ] Initializing speech engine...
[2026-06-13 00:50:48,656.656 INFO    ] 2026-06-13 00:50:48
[2026-06-13 00:50:48,864.864 INFO    ] 2026-06-13 00:50:48
[2026-06-13 00:50:48,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:50:49,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:50:49,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:50:49,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:50:49,280.280 INFO    ] time= 13/06/2026 00:50:49
[2026-06-13 00:50:49,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:50:49,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:50:49,387.387 INFO    ] No existing commands found in stream
[2026-06-13 00:50:54,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:50:54,401.401 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 00:50:57,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:50:57,897.897 INFO    ] Checking for system updates...
[2026-06-13 00:50:57,919.919 INFO    ] 200
[2026-06-13 00:50:57,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:57,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:50:57,952.952 INFO    ] No update needed
[2026-06-13 00:50:57,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 00:50:57,973.973 INFO    ] 200
[2026-06-13 00:50:57,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:50:57,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:50:58,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:50:58,041.041 INFO    ] No camera update needed
[2026-06-13 00:50:58,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:50:58,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:50:58,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:50:58,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:00,089.089 INFO    ] ================================================
[2026-06-13 00:51:00,104.104 INFO    ] Launching Daemon at Sat Jun 13 00:51:00 IST 2026
[2026-06-13 00:51:00,115.115 INFO    ] ================================================
[2026-06-13 00:51:00,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:00
[2026-06-13 00:51:00,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:00,946.946 INFO    ] Initializing speech engine...
[2026-06-13 00:51:00,951.951 INFO    ] 2026-06-13 00:51:00
[2026-06-13 00:51:01,140.140 INFO    ] 2026-06-13 00:51:01
[2026-06-13 00:51:01,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:01,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:01,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:01,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:01,521.521 INFO    ] time= 13/06/2026 00:51:01
[2026-06-13 00:51:01,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:01,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:01,574.574 INFO    ] No existing commands found in stream
[2026-06-13 00:51:06,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:51:06,586.586 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 00:51:08,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:51:08,601.601 INFO    ] Checking for system updates...
[2026-06-13 00:51:08,621.621 INFO    ] 200
[2026-06-13 00:51:08,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:08,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:08,655.655 INFO    ] No update needed
[2026-06-13 00:51:08,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 00:51:08,677.677 INFO    ] 200
[2026-06-13 00:51:08,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:08,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:51:08,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:08,749.749 INFO    ] No camera update needed
[2026-06-13 00:51:08,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:51:08,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:51:08,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:51:08,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:10,799.799 INFO    ] ================================================
[2026-06-13 00:51:10,814.814 INFO    ] Launching Daemon at Sat Jun 13 00:51:10 IST 2026
[2026-06-13 00:51:10,824.824 INFO    ] ================================================
[2026-06-13 00:51:11,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:11
[2026-06-13 00:51:11,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:11,670.670 INFO    ] Initializing speech engine...
[2026-06-13 00:51:11,675.675 INFO    ] 2026-06-13 00:51:11
[2026-06-13 00:51:11,882.882 INFO    ] 2026-06-13 00:51:11
[2026-06-13 00:51:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:12,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:12,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:12,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:12,284.284 INFO    ] time= 13/06/2026 00:51:12
[2026-06-13 00:51:12,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:12,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:12,400.400 INFO    ] No existing commands found in stream
[2026-06-13 00:51:17,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:51:17,411.411 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 00:51:19,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:51:19,191.191 INFO    ] Checking for system updates...
[2026-06-13 00:51:19,213.213 INFO    ] 200
[2026-06-13 00:51:19,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:19,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:19,248.248 INFO    ] No update needed
[2026-06-13 00:51:19,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 00:51:19,270.270 INFO    ] 200
[2026-06-13 00:51:19,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:19,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:51:19,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:19,319.319 INFO    ] No camera update needed
[2026-06-13 00:51:19,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:51:19,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:51:19,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:51:19,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:21,367.367 INFO    ] ================================================
[2026-06-13 00:51:21,382.382 INFO    ] Launching Daemon at Sat Jun 13 00:51:21 IST 2026
[2026-06-13 00:51:21,393.393 INFO    ] ================================================
[2026-06-13 00:51:21,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:21
[2026-06-13 00:51:22,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:22,248.248 INFO    ] Initializing speech engine...
[2026-06-13 00:51:22,269.269 INFO    ] 2026-06-13 00:51:22
[2026-06-13 00:51:22,538.538 INFO    ] 2026-06-13 00:51:22
[2026-06-13 00:51:22,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:22,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:22,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:22,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:22,916.916 INFO    ] time= 13/06/2026 00:51:22
[2026-06-13 00:51:22,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:22,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:23,040.040 INFO    ] No existing commands found in stream
[2026-06-13 00:51:28,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:51:28,056.056 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 00:51:31,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:51:31,753.753 INFO    ] Checking for system updates...
[2026-06-13 00:51:31,776.776 INFO    ] 200
[2026-06-13 00:51:31,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:31,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:31,813.813 INFO    ] No update needed
[2026-06-13 00:51:31,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 00:51:31,836.836 INFO    ] 200
[2026-06-13 00:51:31,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:31,870.870 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:51:31,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:31,905.905 INFO    ] No camera update needed
[2026-06-13 00:51:31,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:51:31,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:51:31,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:51:31,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:33,957.957 INFO    ] ================================================
[2026-06-13 00:51:33,972.972 INFO    ] Launching Daemon at Sat Jun 13 00:51:33 IST 2026
[2026-06-13 00:51:33,984.984 INFO    ] ================================================
[2026-06-13 00:51:34,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:34
[2026-06-13 00:51:34,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:34,816.816 INFO    ] Initializing speech engine...
[2026-06-13 00:51:34,820.820 INFO    ] 2026-06-13 00:51:34
[2026-06-13 00:51:35,026.026 INFO    ] 2026-06-13 00:51:35
[2026-06-13 00:51:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:35,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:35,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:35,446.446 INFO    ] time= 13/06/2026 00:51:35
[2026-06-13 00:51:35,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:35,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:35,544.544 INFO    ] No existing commands found in stream
[2026-06-13 00:51:40,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:51:40,557.557 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 00:51:43,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:51:43,856.856 INFO    ] Checking for system updates...
[2026-06-13 00:51:43,877.877 INFO    ] 200
[2026-06-13 00:51:43,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:43,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:51:43,912.912 INFO    ] No update needed
[2026-06-13 00:51:43,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 00:51:43,933.933 INFO    ] 200
[2026-06-13 00:51:43,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:43,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:51:43,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:51:43,984.984 INFO    ] No camera update needed
[2026-06-13 00:51:43,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:51:43,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:51:43,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:51:43,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:46,030.030 INFO    ] ================================================
[2026-06-13 00:51:46,046.046 INFO    ] Launching Daemon at Sat Jun 13 00:51:46 IST 2026
[2026-06-13 00:51:46,057.057 INFO    ] ================================================
[2026-06-13 00:51:46,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:46
[2026-06-13 00:51:46,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:46,833.833 INFO    ] Initializing speech engine...
[2026-06-13 00:51:46,837.837 INFO    ] 2026-06-13 00:51:46
[2026-06-13 00:51:47,057.057 INFO    ] 2026-06-13 00:51:47
[2026-06-13 00:51:47,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:47,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:47,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:47,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:47,471.471 INFO    ] time= 13/06/2026 00:51:47
[2026-06-13 00:51:47,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:47,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:47,608.608 INFO    ] No existing commands found in stream
[2026-06-13 00:51:52,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:51:52,619.619 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 00:51:53,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:51:53,480.480 INFO    ] Checking for system updates...
[2026-06-13 00:51:53,501.501 INFO    ] 200
[2026-06-13 00:51:53,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:53,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:53,537.537 INFO    ] No update needed
[2026-06-13 00:51:53,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 00:51:53,558.558 INFO    ] 200
[2026-06-13 00:51:53,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:51:53,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:51:53,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:51:53,622.622 INFO    ] No camera update needed
[2026-06-13 00:51:53,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:51:53,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:51:53,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:51:53,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:51:55,669.669 INFO    ] ================================================
[2026-06-13 00:51:55,686.686 INFO    ] Launching Daemon at Sat Jun 13 00:51:55 IST 2026
[2026-06-13 00:51:55,697.697 INFO    ] ================================================
[2026-06-13 00:51:56,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:51:56
[2026-06-13 00:51:56,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:51:57,088.088 INFO    ] Initializing speech engine...
[2026-06-13 00:51:57,093.093 INFO    ] 2026-06-13 00:51:57
[2026-06-13 00:51:57,344.344 INFO    ] 2026-06-13 00:51:57
[2026-06-13 00:51:57,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:51:57,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:51:57,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:51:57,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:51:57,808.808 INFO    ] time= 13/06/2026 00:51:57
[2026-06-13 00:51:57,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:51:57,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:51:58,018.018 INFO    ] No existing commands found in stream
[2026-06-13 00:52:01,322.322 INFO    ] Received new command: ID=1781292121000-0
[2026-06-13 00:52:01,325.325 INFO    ] process_and_cleanup_command: msg_id=1781292121000-0
[2026-06-13 00:52:01,328.328 INFO    ] is_command_expired: timestamp=2026-06-12T19:22:00.762Z, expiry=30s
[2026-06-13 00:52:01,396.396 INFO    ] Command removed from stream: 1781292121000-0. returning for processing...
[2026-06-13 00:52:01,400.400 INFO    ] ***** get_valid_command
[2026-06-13 00:52:01,404.404 INFO    ] {'command': 'start-order', 'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1781292120761-090isd5ci","orderId":"TM08202203260613005108166","is_vending":false}', 'timestamp': '2026-06-12T19:22:00.762Z'}
[2026-06-13 00:52:01,414.414 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781292120761-090isd5ci', 'is_vending': False, 'orderId': 'TM08202203260613005108166'}
[2026-06-13 00:52:01,423.423 INFO    ] Handling start order...
[2026-06-13 00:52:01,426.426 INFO    ] handle_start_order_command
[2026-06-13 00:52:01,457.457 INFO    ] _send_start_order_success: request_id=start-order-1781292120761-090isd5ci, order_id=TM08202203260613005108166
[2026-06-13 00:52:01,460.460 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:52:01,513.513 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781292121475-0
[2026-06-13 00:52:01,516.516 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:52:01,520.520 INFO    ] Checking for system updates...
[2026-06-13 00:52:01,613.613 INFO    ] 200
[2026-06-13 00:52:01,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:01,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:52:01,737.737 INFO    ] No update needed
[2026-06-13 00:52:01,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 00:52:01,804.804 INFO    ] 200
[2026-06-13 00:52:01,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:01,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:52:01,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:52:01,924.924 INFO    ] No camera update needed
[2026-06-13 00:52:01,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:52:01,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:52:01,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:52:01,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:52:04,996.996 INFO    ] ================================================
[2026-06-13 00:52:04,012.012 INFO    ] Launching Daemon at Sat Jun 13 00:52:04 IST 2026
[2026-06-13 00:52:04,024.024 INFO    ] ================================================
[2026-06-13 00:52:04,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:52:04
[2026-06-13 00:52:04,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:52:05,055.055 INFO    ] Initializing speech engine...
[2026-06-13 00:52:05,060.060 INFO    ] 2026-06-13 00:52:05
[2026-06-13 00:52:05,263.263 INFO    ] 2026-06-13 00:52:05
[2026-06-13 00:52:05,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:52:05,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:52:05,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:52:05,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:52:05,664.664 INFO    ] time= 13/06/2026 00:52:05
[2026-06-13 00:52:05,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:52:05,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:52:05,781.781 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 00:52:05,782.782 INFO    ] Checking historical command: ID=1781292121475-0
[2026-06-13 00:52:05,808.808 INFO    ] process_and_cleanup_command: msg_id=1781292121475-0
[2026-06-13 00:52:05,810.810 INFO    ] is_command_expired: timestamp=2026-06-12T19:22:01.459223Z, expiry=30s
[2026-06-13 00:52:05,919.919 INFO    ] Command removed from stream: 1781292121475-0. returning for processing...
[2026-06-13 00:52:05,922.922 INFO    ] ***** get_valid_command
[2026-06-13 00:52:05,926.926 INFO    ] {'timestamp': '2026-06-12T19:22:01.459223Z', 'metadata_order_id': 'TM08202203260613005108166', 'status': 'success', 'imei': 'TM08202203', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781292120761-090isd5ci'}
[2026-06-13 00:52:05,930.930 INFO    ] Checking historical command: ID=1781292123876-0
[2026-06-13 00:52:05,933.933 INFO    ] process_and_cleanup_command: msg_id=1781292123876-0
[2026-06-13 00:52:05,936.936 INFO    ] is_command_expired: timestamp=2026-06-12T19:22:03.786Z, expiry=30s
[2026-06-13 00:52:05,981.981 INFO    ] Command removed from stream: 1781292123876-0. returning for processing...
[2026-06-13 00:52:05,983.983 INFO    ] ***** get_valid_command
[2026-06-13 00:52:05,987.987 INFO    ] {'data': '{"request_id":"process-order-1781292123786-2u9zbf2ce","orderId":"TM08202203260613005108166","is_vending":false,"accessCode":"43206927"}', 'timestamp': '2026-06-12T19:22:03.786Z', 'source': 'webapp', 'timeout': '60', 'command': 'process-order'}
[2026-06-13 00:52:05,991.991 INFO    ] ***** Parsed command data: {'accessCode': '43206927', 'is_vending': False, 'request_id': 'process-order-1781292123786-2u9zbf2ce', 'orderId': 'TM08202203260613005108166'}
[2026-06-13 00:52:05,994.994 INFO    ] Handling process order...
[2026-06-13 00:52:05,996.996 INFO    ] Processing process-order command...
[2026-06-13 00:52:06,000.000 INFO    ] 🔍 Lock file Order ID: TM08202203260613005108166, TS: 2026-06-13 00:52:01
[2026-06-13 00:52:06,008.008 INFO    ] ✅ Order lock valid for TM08202203260613005108166
[2026-06-13 00:52:06,012.012 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 00:52:06,014.014 INFO    ] processing access code 43206927 for order TM08202203260613005108166
[2026-06-13 00:52:06,019.019 INFO    ] 🔍 Lock file Order ID: TM08202203260613005108166, TS: 2026-06-13 00:52:01
[2026-06-13 00:52:06,022.022 INFO    ] ✅ Order lock valid for TM08202203260613005108166
[2026-06-13 00:52:06,025.025 INFO    ] 2026-06-13 00:52:06
[2026-06-13 00:52:06,055.055 INFO    ] 200
[2026-06-13 00:52:06,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:06,063.063 INFO    ] 43206927
[2026-06-13 00:52:06,067.067 INFO    ] 2026-06-13 00:52:06
[2026-06-13 00:52:06,073.073 INFO    ] session id :681253669
[2026-06-13 00:52:06,082.082 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=43206927&imei=TM08202203&session_id=681253669
[2026-06-13 00:52:06,917.917 INFO    ] 200
[2026-06-13 00:52:06,923.923 INFO    ] {"data": {"mobile": "8792267829", "order_id": "TM08202203260613005108166", "bill_amount": "150", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 5, "sku_total": 150, "offer_id": ""}], "access_code": "43206927", "invoice_bill": "150"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 00:52:06,928.928 INFO    ] 150
[2026-06-13 00:52:06,938.938 INFO    ] TM08202203260613005108166
[2026-06-13 00:52:06,946.946 INFO    ] 8792267829
[2026-06-13 00:52:06,951.951 INFO    ] 2026-06-13 00:52:06
[2026-06-13 00:52:06,959.959 INFO    ] Door Opening for user mobile ending with  seven eight two nine 
[2026-06-13 00:52:06,965.965 INFO    ] Door Opening for user mobile ending with  seven eight two nine 
[2026-06-13 00:52:06,972.972 INFO    ] 0261c48e5c566e25237392489bec845f
[2026-06-13 00:52:07,005.005 INFO    ] 2026-06-13 00:52:06
[2026-06-13 00:52:07,030.030 INFO    ] playing audio file
[2026-06-13 00:52:07,097.097 INFO    ] 2026-06-13 00:52:07
[2026-06-13 00:52:07,149.149 INFO    ] 2026-06-13 00:52:07
[2026-06-13 00:52:07,196.196 INFO    ] publish_status: order_id=TM08202203260613005108166
[2026-06-13 00:52:07,224.224 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005108166
[2026-06-13 00:52:07,301.301 INFO    ] [publish_status] Message added to stream with ID: 1781292127265-0
[2026-06-13 00:52:07,304.304 INFO    ] Published to order:TM08202203260613005108166: {'timestamp': '2026-06-12T19:22:07.151338Z', 'order_id': 'TM08202203260613005108166', 'server_status': 'order-started', 'server_response': '{"data": {"order_id": "TM08202203260613005108166", "invoice_bill": "150", "mobile": "8792267829", "bill_amount": "150", "access_code": "43206927", "proposed_sku_json": [{"door_id": "2", "sku_total": 150, "skuid": "186084", "unit_price": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "mrp": "30", "tray_id": "40", "qty": 5, "offer_id": ""}]}, "rstatus": true, "msg": "Order Data", "status": true}'} (ID: 1781292127265-0)
[2026-06-13 00:52:07,693.693 INFO    ] {'order_id': 'TM08202203260613005108166', 'server_status': 'order-started', 'server_response': {'data': {'order_id': 'TM08202203260613005108166', 'invoice_bill': '150', 'mobile': '8792267829', 'bill_amount': '150', 'access_code': '43206927', 'proposed_sku_json': [{'door_id': '2', 'sku_total': 150, 'skuid': '186084', 'unit_price': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_desc': '', 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}]}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}
[2026-06-13 00:52:07,696.696 INFO    ] 200
[2026-06-13 00:52:07,698.698 INFO    ] {"data":{"order_id":"TM08202203260613005108166","server_status":"order-started","server_response":{"data":{"order_id":"TM08202203260613005108166","invoice_bill":"150","mobile":"8792267829","bill_amount":"150","access_code":"43206927","proposed_sku_json":[{"door_id":"2","sku_total":150,"skuid":"186084","unit_price":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_desc":"","mrp":"30","tray_id":"40","qty":5,"offer_id":""}]},"rstatus":true,"msg":"Order Data","status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:52:07,701.701 INFO    ] {'data': {'order_id': 'TM08202203260613005108166', 'server_status': 'order-started', 'server_response': {'data': {'order_id': 'TM08202203260613005108166', 'invoice_bill': '150', 'mobile': '8792267829', 'bill_amount': '150', 'access_code': '43206927', 'proposed_sku_json': [{'door_id': '2', 'offer_desc': '', 'skuid': '186084', 'unit_price': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}]}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 00:52:07,704.704 INFO    ] 2026-06-13 00:52:07
[2026-06-13 00:52:07,747.747 INFO    ] 200
[2026-06-13 00:52:07,750.750 INFO    ] True
[2026-06-13 00:52:07,905.905 INFO    ] 200
[2026-06-13 00:52:07,908.908 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 00:52:07,912.912 INFO    ] {'voiceNote': 'Please Wait', 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 00:52:07,914.914 INFO    ] *** process_order ***
[2026-06-13 00:52:09,098.098 INFO    ] 200
[2026-06-13 00:52:09,101.101 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:52:09,103.103 INFO    ] {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True'}
[2026-06-13 00:52:09,106.106 INFO    ] *** process_order ***
[2026-06-13 00:52:09,108.108 INFO    ] publish_status: order_id=TM08202203260613005108166
[2026-06-13 00:52:09,111.111 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005108166
[2026-06-13 00:52:09,209.209 INFO    ] [publish_status] Message added to stream with ID: 1781292129173-0
[2026-06-13 00:52:09,211.211 INFO    ] Published to order:TM08202203260613005108166: {'order_id': 'TM08202203260613005108166', 'server_status': 'doorOpened', 'server_response': '{"voiceNote": "Door is open...", "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "rstatus": true}'} (ID: 1781292129173-0)
[2026-06-13 00:52:10,254.254 INFO    ] 2026-06-13 00:52:10
[2026-06-13 00:52:10,257.257 INFO    ] publish_status: order_id=TM08202203260613005108166
[2026-06-13 00:52:10,259.259 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005108166
[2026-06-13 00:52:10,312.312 INFO    ] [publish_status] Message added to stream with ID: 1781292130277-0
[2026-06-13 00:52:10,315.315 INFO    ] Published to order:TM08202203260613005108166: {'timestamp': '2026-06-12T19:22:10.255765Z', 'order_id': 'TM08202203260613005108166', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "status": "True"}'} (ID: 1781292130277-0)
[2026-06-13 00:52:10,417.417 INFO    ] {'order_id': 'TM08202203260613005108166', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True'}}
[2026-06-13 00:52:10,420.420 INFO    ] 200
[2026-06-13 00:52:10,422.422 INFO    ] {"data":{"order_id":"TM08202203260613005108166","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","delay":0,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"},"rstatus":true,"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:52:10,424.424 INFO    ] {'data': {'order_id': 'TM08202203260613005108166', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'true'}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 00:52:10,426.426 INFO    ] 2026-06-13 00:52:10
[2026-06-13 00:52:10,427.427 INFO    ] None
[2026-06-13 00:52:10,428.428 INFO    ] Opening Door now
[2026-06-13 00:52:10,430.430 INFO    ] Opening Door now
[2026-06-13 00:52:10,431.431 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 00:52:10,433.433 INFO    ] 2026-06-13 00:52:10
[2026-06-13 00:52:10,435.435 INFO    ] playing audio file
[2026-06-13 00:52:10,445.445 INFO    ] 2026-06-13 00:52:10
[2026-06-13 00:52:10,447.447 INFO    ] 2026-06-13 00:52:10
[2026-06-13 00:52:13,498.498 INFO    ] 200
[2026-06-13 00:52:13,499.499 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:52:13,501.501 INFO    ] {'voiceNote': 'Door 2 is open now', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 00:52:16,560.560 INFO    ] 200
[2026-06-13 00:52:16,561.561 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:52:16,563.563 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 00:52:19,633.633 INFO    ] 200
[2026-06-13 00:52:19,635.635 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:52:19,637.637 INFO    ] Please close door 2
[2026-06-13 00:52:19,639.639 INFO    ] Please close door 2
[2026-06-13 00:52:19,640.640 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 00:52:19,642.642 INFO    ] 2026-06-13 00:52:19
[2026-06-13 00:52:19,644.644 INFO    ] playing audio file
[2026-06-13 00:52:19,654.654 INFO    ] 2026-06-13 00:52:19
[2026-06-13 00:52:19,656.656 INFO    ] publish_status: order_id=TM08202203260613005108166
[2026-06-13 00:52:19,658.658 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005108166
[2026-06-13 00:52:19,729.729 INFO    ] [publish_status] Message added to stream with ID: 1781292139693-0
[2026-06-13 00:52:19,730.730 INFO    ] Published to order:TM08202203260613005108166: {'timestamp': '2026-06-12T19:22:19.655815Z', 'order_id': 'TM08202203260613005108166', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 2", "status": "False", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 5}], "Header": "Pick the below items from the door"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}}'} (ID: 1781292139693-0)
[2026-06-13 00:52:20,076.076 INFO    ] {'order_id': 'TM08202203260613005108166', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}}
[2026-06-13 00:52:20,078.078 INFO    ] 200
[2026-06-13 00:52:20,079.079 INFO    ] {"data":{"order_id":"TM08202203260613005108166","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 2","status":"false","SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":5}],"Header":"Pick the below items from the door"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"data":[],"tmessage":"In Progress","code":20001,"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:52:20,081.081 INFO    ] {'data': {'order_id': 'TM08202203260613005108166', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 00:52:20,083.083 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 00:52:23,129.129 INFO    ] 200
[2026-06-13 00:52:23,131.131 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 2 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:52:23,133.133 INFO    ] {'voiceNote': 'Door 2 is closed now', 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 5}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Header': 'Door 2 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'status': 'False'}
[2026-06-13 00:52:26,195.195 INFO    ] 200
[2026-06-13 00:52:26,198.198 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:52:26,202.202 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'status': 'True'}
[2026-06-13 00:52:26,205.205 INFO    ] 2026-06-13 00:52:26
[2026-06-13 00:52:26,207.207 INFO    ] Order Completed 
[2026-06-13 00:52:26,210.210 INFO    ] Order Completed 
[2026-06-13 00:52:26,213.213 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 00:52:26,216.216 INFO    ] 2026-06-13 00:52:26
[2026-06-13 00:52:26,219.219 INFO    ] playing audio file
[2026-06-13 00:52:26,235.235 INFO    ] 2026-06-13 00:52:26
[2026-06-13 00:52:26,237.237 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'status': 'True'}
[2026-06-13 00:52:26,240.240 INFO    ] 2026-06-13 00:52:26
[2026-06-13 00:52:27,133.133 INFO    ] 200
[2026-06-13 00:52:27,136.136 INFO    ] {"res": true, "bill_amount": 150, "orderId": "TM08202203260613005108166", "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "door_id": "", "mrp": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "tray_id": "40", "sku_total": 150, "qty": 5, "offer_id": ""}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 150, "order_status": "", "userId": "8792267829", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 00:52:27,140.140 INFO    ] {'order_status': '', 'userId': '8792267829', 'bill_amount': 150, 'imei': 'TM08202203', 'skus': [{'door_id': '', 'skuid': '186084', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}], 'rstatus': True, 'total_amount': 150, 'anomaly': 0, 'cart_offer_desc': '', 'orderId': 'TM08202203260613005108166', 'res': True}
[2026-06-13 00:52:27,144.144 INFO    ] {'order_status': '', 'userId': '8792267829', 'bill_amount': 150, 'imei': 'TM08202203', 'skus': [{'door_id': '', 'skuid': '186084', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}], 'rstatus': True, 'total_amount': 150, 'anomaly': 0, 'cart_offer_desc': '', 'orderId': 'TM08202203260613005108166', 'res': True}
[2026-06-13 00:52:27,147.147 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,150.150 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,154.154 INFO    ] 150
[2026-06-13 00:52:27,157.157 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,160.160 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,164.164 INFO    ]  Your Bill Amount is 150
[2026-06-13 00:52:27,167.167 INFO    ]  Your Bill Amount is 150
[2026-06-13 00:52:27,171.171 INFO    ] 7f22b96cef40cd7fff79080fb83443e7
[2026-06-13 00:52:27,174.174 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,177.177 INFO    ] playing audio file
[2026-06-13 00:52:27,197.197 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,201.201 INFO    ] 2026-06-13 00:52:27
[2026-06-13 00:52:27,206.206 INFO    ] publish_status: order_id=TM08202203260613005108166
[2026-06-13 00:52:27,210.210 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005108166
[2026-06-13 00:52:27,302.302 INFO    ] [publish_status] Message added to stream with ID: 1781292147265-0
[2026-06-13 00:52:27,305.305 INFO    ] Published to order:TM08202203260613005108166: {'timestamp': '2026-06-12T19:22:27.203770Z', 'order_id': 'TM08202203260613005108166', 'server_status': 'invoiceOrder', 'server_response': '{"order_status": "", "userId": "8792267829", "bill_amount": 150, "imei": "TM08202203", "skus": [{"door_id": "", "skuid": "186084", "unit_price": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 150, "mrp": "30", "tray_id": "40", "qty": 5, "offer_id": ""}], "rstatus": true, "total_amount": 150, "anomaly": 0, "cart_offer_desc": "", "orderId": "TM08202203260613005108166", "res": true}'} (ID: 1781292147265-0)
[2026-06-13 00:52:32,718.718 INFO    ] {'order_id': 'TM08202203260613005108166', 'server_status': 'invoiceOrder', 'server_response': {'order_status': '', 'userId': '8792267829', 'bill_amount': 150, 'imei': 'TM08202203', 'skus': [{'door_id': '', 'skuid': '186084', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}], 'rstatus': True, 'total_amount': 150, 'anomaly': 0, 'cart_offer_desc': '', 'orderId': 'TM08202203260613005108166', 'res': True}}
[2026-06-13 00:52:32,721.721 INFO    ] 200
[2026-06-13 00:52:32,724.724 INFO    ] {"data":{"order_id":"TM08202203260613005108166","server_status":"invoiceOrder","server_response":{"order_status":"","userId":"8792267829","bill_amount":150,"imei":"TM08202203","skus":[{"door_id":"","skuid":"186084","unit_price":"30","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","sku_total":150,"mrp":"30","tray_id":"40","qty":5,"offer_id":""}],"rstatus":true,"total_amount":150,"anomaly":0,"cart_offer_desc":"","orderId":"TM08202203260613005108166","res":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:52:32,727.727 INFO    ] {'data': {'order_id': 'TM08202203260613005108166', 'server_status': 'invoiceOrder', 'server_response': {'order_status': '', 'userId': '8792267829', 'bill_amount': 150, 'res': True, 'imei': 'TM08202203', 'skus': [{'door_id': '', 'skuid': '186084', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}], 'total_amount': 150, 'rstatus': True, 'anomaly': 0, 'orderId': 'TM08202203260613005108166', 'cart_offer_desc': ''}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 00:52:32,730.730 INFO    ] {'data': {'order_id': 'TM08202203260613005108166', 'server_status': 'invoiceOrder', 'server_response': {'order_status': '', 'userId': '8792267829', 'bill_amount': 150, 'res': True, 'imei': 'TM08202203', 'skus': [{'door_id': '', 'skuid': '186084', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 150, 'mrp': '30', 'tray_id': '40', 'qty': 5, 'offer_id': ''}], 'total_amount': 150, 'rstatus': True, 'anomaly': 0, 'orderId': 'TM08202203260613005108166', 'cart_offer_desc': ''}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 00:52:32,733.733 INFO    ] 2026-06-13 00:52:32
[2026-06-13 00:52:33,277.277 INFO    ] 200
[2026-06-13 00:52:33,280.280 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 00:52:33,284.284 INFO    ] 2026-06-13 00:52:33
[2026-06-13 00:52:33,399.399 INFO    ] 200
[2026-06-13 00:52:33,402.402 INFO    ] True
[2026-06-13 00:52:33,406.406 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613005108166
[2026-06-13 00:52:33,410.410 INFO    ] start order file deleted
[2026-06-13 00:52:33,413.413 INFO    ] Checking for system updates...
[2026-06-13 00:52:33,448.448 INFO    ] 200
[2026-06-13 00:52:33,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:33,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:52:33,510.510 INFO    ] No update needed
[2026-06-13 00:52:33,512.512 INFO    ] Checking for camera pi updates...
[2026-06-13 00:52:33,552.552 INFO    ] 200
[2026-06-13 00:52:33,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:33,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:52:33,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:52:33,647.647 INFO    ] No camera update needed
[2026-06-13 00:52:33,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:52:33,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:52:33,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:52:33,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:52:35,711.711 INFO    ] ================================================
[2026-06-13 00:52:35,726.726 INFO    ] Launching Daemon at Sat Jun 13 00:52:35 IST 2026
[2026-06-13 00:52:35,737.737 INFO    ] ================================================
[2026-06-13 00:52:36,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:52:36
[2026-06-13 00:52:36,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:52:36,603.603 INFO    ] Initializing speech engine...
[2026-06-13 00:52:36,607.607 INFO    ] 2026-06-13 00:52:36
[2026-06-13 00:52:36,815.815 INFO    ] 2026-06-13 00:52:36
[2026-06-13 00:52:36,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:52:37,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:52:37,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:52:37,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:52:37,233.233 INFO    ] time= 13/06/2026 00:52:37
[2026-06-13 00:52:37,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:52:37,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:52:37,385.385 INFO    ] No existing commands found in stream
[2026-06-13 00:52:42,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:52:42,405.405 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 00:52:46,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:52:46,412.412 INFO    ] Checking for system updates...
[2026-06-13 00:52:46,437.437 INFO    ] 200
[2026-06-13 00:52:46,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:46,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:52:46,472.472 INFO    ] No update needed
[2026-06-13 00:52:46,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 00:52:46,493.493 INFO    ] 200
[2026-06-13 00:52:46,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:46,518.518 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:52:46,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:52:46,566.566 INFO    ] No camera update needed
[2026-06-13 00:52:46,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:52:46,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:52:46,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:52:46,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:52:48,618.618 INFO    ] ================================================
[2026-06-13 00:52:48,640.640 INFO    ] Launching Daemon at Sat Jun 13 00:52:48 IST 2026
[2026-06-13 00:52:48,651.651 INFO    ] ================================================
[2026-06-13 00:52:49,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:52:49
[2026-06-13 00:52:49,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:52:49,455.455 INFO    ] Initializing speech engine...
[2026-06-13 00:52:49,460.460 INFO    ] 2026-06-13 00:52:49
[2026-06-13 00:52:49,671.671 INFO    ] 2026-06-13 00:52:49
[2026-06-13 00:52:49,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:52:49,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:52:49,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:52:50,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:52:50,094.094 INFO    ] time= 13/06/2026 00:52:50
[2026-06-13 00:52:50,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:52:50,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:52:50,260.260 INFO    ] No existing commands found in stream
[2026-06-13 00:52:55,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:52:55,273.273 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 00:52:58,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:52:58,906.906 INFO    ] Checking for system updates...
[2026-06-13 00:52:58,943.943 INFO    ] 200
[2026-06-13 00:52:58,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:58,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:52:59,001.001 INFO    ] No update needed
[2026-06-13 00:52:59,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 00:52:59,038.038 INFO    ] 200
[2026-06-13 00:52:59,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:52:59,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:52:59,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:52:59,114.114 INFO    ] No camera update needed
[2026-06-13 00:52:59,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:52:59,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:52:59,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:52:59,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:01,181.181 INFO    ] ================================================
[2026-06-13 00:53:01,207.207 INFO    ] Launching Daemon at Sat Jun 13 00:53:01 IST 2026
[2026-06-13 00:53:01,228.228 INFO    ] ================================================
[2026-06-13 00:53:01,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:01
[2026-06-13 00:53:02,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:02,184.184 INFO    ] Initializing speech engine...
[2026-06-13 00:53:02,191.191 INFO    ] 2026-06-13 00:53:02
[2026-06-13 00:53:02,394.394 INFO    ] 2026-06-13 00:53:02
[2026-06-13 00:53:02,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:02,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:02,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:02,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:02,668.668 INFO    ] time= 13/06/2026 00:53:02
[2026-06-13 00:53:02,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:02,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:02,766.766 INFO    ] No existing commands found in stream
[2026-06-13 00:53:07,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:53:07,803.803 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 00:53:08,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:53:08,921.921 INFO    ] Checking for system updates...
[2026-06-13 00:53:08,945.945 INFO    ] 200
[2026-06-13 00:53:08,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:08,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:08,978.978 INFO    ] No update needed
[2026-06-13 00:53:08,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 00:53:08,999.999 INFO    ] 200
[2026-06-13 00:53:09,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:09,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:53:09,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:09,067.067 INFO    ] No camera update needed
[2026-06-13 00:53:09,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:53:09,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:53:09,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:53:09,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:11,114.114 INFO    ] ================================================
[2026-06-13 00:53:11,130.130 INFO    ] Launching Daemon at Sat Jun 13 00:53:11 IST 2026
[2026-06-13 00:53:11,140.140 INFO    ] ================================================
[2026-06-13 00:53:11,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:11
[2026-06-13 00:53:11,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:11,939.939 INFO    ] Initializing speech engine...
[2026-06-13 00:53:11,947.947 INFO    ] 2026-06-13 00:53:11
[2026-06-13 00:53:12,153.153 INFO    ] 2026-06-13 00:53:12
[2026-06-13 00:53:12,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:12,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:12,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:12,574.574 INFO    ] time= 13/06/2026 00:53:12
[2026-06-13 00:53:12,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:12,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:12,672.672 INFO    ] No existing commands found in stream
[2026-06-13 00:53:17,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:53:17,689.689 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 00:53:19,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:53:19,321.321 INFO    ] Checking for system updates...
[2026-06-13 00:53:19,342.342 INFO    ] 200
[2026-06-13 00:53:19,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:19,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:53:19,384.384 INFO    ] No update needed
[2026-06-13 00:53:19,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 00:53:19,405.405 INFO    ] 200
[2026-06-13 00:53:19,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:19,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:53:19,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:53:19,480.480 INFO    ] No camera update needed
[2026-06-13 00:53:19,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:53:19,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:53:19,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:53:19,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:21,531.531 INFO    ] ================================================
[2026-06-13 00:53:21,547.547 INFO    ] Launching Daemon at Sat Jun 13 00:53:21 IST 2026
[2026-06-13 00:53:21,557.557 INFO    ] ================================================
[2026-06-13 00:53:21,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:21
[2026-06-13 00:53:22,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:22,354.354 INFO    ] Initializing speech engine...
[2026-06-13 00:53:22,359.359 INFO    ] 2026-06-13 00:53:22
[2026-06-13 00:53:22,564.564 INFO    ] 2026-06-13 00:53:22
[2026-06-13 00:53:22,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:22,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:22,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:22,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:22,974.974 INFO    ] time= 13/06/2026 00:53:22
[2026-06-13 00:53:23,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:23,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:23,086.086 INFO    ] No existing commands found in stream
[2026-06-13 00:53:28,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:53:28,103.103 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 00:53:29,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:53:29,160.160 INFO    ] Checking for system updates...
[2026-06-13 00:53:29,182.182 INFO    ] 200
[2026-06-13 00:53:29,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:29,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:53:29,218.218 INFO    ] No update needed
[2026-06-13 00:53:29,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 00:53:29,239.239 INFO    ] 200
[2026-06-13 00:53:29,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:29,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:53:29,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:53:29,302.302 INFO    ] No camera update needed
[2026-06-13 00:53:29,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:53:29,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:53:29,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:53:29,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:31,350.350 INFO    ] ================================================
[2026-06-13 00:53:31,367.367 INFO    ] Launching Daemon at Sat Jun 13 00:53:31 IST 2026
[2026-06-13 00:53:31,378.378 INFO    ] ================================================
[2026-06-13 00:53:31,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:31
[2026-06-13 00:53:32,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:32,252.252 INFO    ] Initializing speech engine...
[2026-06-13 00:53:32,258.258 INFO    ] 2026-06-13 00:53:32
[2026-06-13 00:53:32,465.465 INFO    ] 2026-06-13 00:53:32
[2026-06-13 00:53:32,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:32,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:32,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:32,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:32,880.880 INFO    ] time= 13/06/2026 00:53:32
[2026-06-13 00:53:32,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:32,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:32,987.987 INFO    ] No existing commands found in stream
[2026-06-13 00:53:38,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:53:38,003.003 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 00:53:39,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:53:39,954.954 INFO    ] Checking for system updates...
[2026-06-13 00:53:39,991.991 INFO    ] 200
[2026-06-13 00:53:39,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:40,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:40,056.056 INFO    ] No update needed
[2026-06-13 00:53:40,059.059 INFO    ] Checking for camera pi updates...
[2026-06-13 00:53:40,094.094 INFO    ] 200
[2026-06-13 00:53:40,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:40,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:53:40,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:40,187.187 INFO    ] No camera update needed
[2026-06-13 00:53:40,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:53:40,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:53:40,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:53:40,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:42,243.243 INFO    ] ================================================
[2026-06-13 00:53:42,259.259 INFO    ] Launching Daemon at Sat Jun 13 00:53:42 IST 2026
[2026-06-13 00:53:42,269.269 INFO    ] ================================================
[2026-06-13 00:53:42,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:42
[2026-06-13 00:53:43,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:43,155.155 INFO    ] Initializing speech engine...
[2026-06-13 00:53:43,160.160 INFO    ] 2026-06-13 00:53:43
[2026-06-13 00:53:43,368.368 INFO    ] 2026-06-13 00:53:43
[2026-06-13 00:53:43,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:43,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:43,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:43,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:43,778.778 INFO    ] time= 13/06/2026 00:53:43
[2026-06-13 00:53:43,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:43,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:43,883.883 INFO    ] No existing commands found in stream
[2026-06-13 00:53:48,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:53:48,896.896 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 00:53:53,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:53:53,451.451 INFO    ] Checking for system updates...
[2026-06-13 00:53:53,494.494 INFO    ] 200
[2026-06-13 00:53:53,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:53,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:53,554.554 INFO    ] No update needed
[2026-06-13 00:53:53,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 00:53:53,597.597 INFO    ] 200
[2026-06-13 00:53:53,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:53:53,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:53:53,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:53:53,697.697 INFO    ] No camera update needed
[2026-06-13 00:53:53,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:53:53,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:53:53,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:53:53,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:53:55,752.752 INFO    ] ================================================
[2026-06-13 00:53:55,767.767 INFO    ] Launching Daemon at Sat Jun 13 00:53:55 IST 2026
[2026-06-13 00:53:55,778.778 INFO    ] ================================================
[2026-06-13 00:53:56,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:53:56
[2026-06-13 00:53:56,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:53:56,580.580 INFO    ] Initializing speech engine...
[2026-06-13 00:53:56,589.589 INFO    ] 2026-06-13 00:53:56
[2026-06-13 00:53:56,801.801 INFO    ] 2026-06-13 00:53:56
[2026-06-13 00:53:56,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:53:57,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:53:57,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:53:57,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:53:57,193.193 INFO    ] time= 13/06/2026 00:53:57
[2026-06-13 00:53:57,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:53:57,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:53:57,314.314 INFO    ] No existing commands found in stream
[2026-06-13 00:54:02,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:54:02,323.323 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 00:54:03,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:54:03,330.330 INFO    ] Checking for system updates...
[2026-06-13 00:54:03,351.351 INFO    ] 200
[2026-06-13 00:54:03,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:03,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:54:03,388.388 INFO    ] No update needed
[2026-06-13 00:54:03,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 00:54:03,410.410 INFO    ] 200
[2026-06-13 00:54:03,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:03,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:54:03,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:54:03,477.477 INFO    ] No camera update needed
[2026-06-13 00:54:03,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:54:03,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:54:03,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:54:03,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:54:05,526.526 INFO    ] ================================================
[2026-06-13 00:54:05,542.542 INFO    ] Launching Daemon at Sat Jun 13 00:54:05 IST 2026
[2026-06-13 00:54:05,553.553 INFO    ] ================================================
[2026-06-13 00:54:05,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:54:05
[2026-06-13 00:54:06,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:54:06,382.382 INFO    ] Initializing speech engine...
[2026-06-13 00:54:06,386.386 INFO    ] 2026-06-13 00:54:06
[2026-06-13 00:54:06,602.602 INFO    ] 2026-06-13 00:54:06
[2026-06-13 00:54:06,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:54:06,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:54:06,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:54:06,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:54:07,024.024 INFO    ] time= 13/06/2026 00:54:06
[2026-06-13 00:54:07,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:54:07,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:54:07,129.129 INFO    ] No existing commands found in stream
[2026-06-13 00:54:12,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:54:12,970.970 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 00:54:17,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:54:17,253.253 INFO    ] Checking for system updates...
[2026-06-13 00:54:17,274.274 INFO    ] 200
[2026-06-13 00:54:17,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:17,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:54:17,307.307 INFO    ] No update needed
[2026-06-13 00:54:17,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 00:54:17,328.328 INFO    ] 200
[2026-06-13 00:54:17,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:17,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:54:17,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:54:17,492.492 INFO    ] No camera update needed
[2026-06-13 00:54:17,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:54:17,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:54:17,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:54:17,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:54:19,542.542 INFO    ] ================================================
[2026-06-13 00:54:19,556.556 INFO    ] Launching Daemon at Sat Jun 13 00:54:19 IST 2026
[2026-06-13 00:54:19,568.568 INFO    ] ================================================
[2026-06-13 00:54:19,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:54:19
[2026-06-13 00:54:20,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:54:20,366.366 INFO    ] Initializing speech engine...
[2026-06-13 00:54:20,372.372 INFO    ] 2026-06-13 00:54:20
[2026-06-13 00:54:20,574.574 INFO    ] 2026-06-13 00:54:20
[2026-06-13 00:54:20,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:54:20,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:54:20,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:54:20,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:54:20,978.978 INFO    ] time= 13/06/2026 00:54:20
[2026-06-13 00:54:21,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:54:21,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:54:21,088.088 INFO    ] No existing commands found in stream
[2026-06-13 00:54:26,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:54:26,100.100 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 00:54:29,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:54:29,225.225 INFO    ] Checking for system updates...
[2026-06-13 00:54:29,247.247 INFO    ] 200
[2026-06-13 00:54:29,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:29,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:54:29,283.283 INFO    ] No update needed
[2026-06-13 00:54:29,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 00:54:29,308.308 INFO    ] 200
[2026-06-13 00:54:29,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:29,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:54:29,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:54:29,383.383 INFO    ] No camera update needed
[2026-06-13 00:54:29,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:54:29,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:54:29,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:54:29,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:54:31,433.433 INFO    ] ================================================
[2026-06-13 00:54:31,448.448 INFO    ] Launching Daemon at Sat Jun 13 00:54:31 IST 2026
[2026-06-13 00:54:31,459.459 INFO    ] ================================================
[2026-06-13 00:54:31,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:54:31
[2026-06-13 00:54:32,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:54:32,333.333 INFO    ] Initializing speech engine...
[2026-06-13 00:54:32,341.341 INFO    ] 2026-06-13 00:54:32
[2026-06-13 00:54:32,535.535 INFO    ] 2026-06-13 00:54:32
[2026-06-13 00:54:32,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:54:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:54:32,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:54:32,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:54:33,014.014 INFO    ] time= 13/06/2026 00:54:32
[2026-06-13 00:54:33,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:54:33,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:54:33,273.273 INFO    ] No existing commands found in stream
[2026-06-13 00:54:38,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:54:38,309.309 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 00:54:40,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:54:40,260.260 INFO    ] Checking for system updates...
[2026-06-13 00:54:40,281.281 INFO    ] 200
[2026-06-13 00:54:40,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:40,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:54:40,315.315 INFO    ] No update needed
[2026-06-13 00:54:40,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 00:54:40,338.338 INFO    ] 200
[2026-06-13 00:54:40,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:40,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:54:40,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:54:40,413.413 INFO    ] No camera update needed
[2026-06-13 00:54:40,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:54:40,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:54:40,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:54:40,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:54:42,462.462 INFO    ] ================================================
[2026-06-13 00:54:42,478.478 INFO    ] Launching Daemon at Sat Jun 13 00:54:42 IST 2026
[2026-06-13 00:54:42,489.489 INFO    ] ================================================
[2026-06-13 00:54:42,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:54:42
[2026-06-13 00:54:43,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:54:43,343.343 INFO    ] Initializing speech engine...
[2026-06-13 00:54:43,348.348 INFO    ] 2026-06-13 00:54:43
[2026-06-13 00:54:43,555.555 INFO    ] 2026-06-13 00:54:43
[2026-06-13 00:54:43,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:54:43,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:54:43,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:54:44,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:54:44,065.065 INFO    ] time= 13/06/2026 00:54:44
[2026-06-13 00:54:44,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:54:44,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:54:44,272.272 INFO    ] No existing commands found in stream
[2026-06-13 00:54:49,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:54:49,291.291 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 00:54:51,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:54:51,219.219 INFO    ] Checking for system updates...
[2026-06-13 00:54:51,240.240 INFO    ] 200
[2026-06-13 00:54:51,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:51,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:54:51,276.276 INFO    ] No update needed
[2026-06-13 00:54:51,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 00:54:51,300.300 INFO    ] 200
[2026-06-13 00:54:51,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:54:51,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:54:51,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:54:51,367.367 INFO    ] No camera update needed
[2026-06-13 00:54:51,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:54:51,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:54:51,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:54:51,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:54:53,421.421 INFO    ] ================================================
[2026-06-13 00:54:53,439.439 INFO    ] Launching Daemon at Sat Jun 13 00:54:53 IST 2026
[2026-06-13 00:54:53,449.449 INFO    ] ================================================
[2026-06-13 00:54:53,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:54:53
[2026-06-13 00:54:54,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:54:54,239.239 INFO    ] Initializing speech engine...
[2026-06-13 00:54:54,244.244 INFO    ] 2026-06-13 00:54:54
[2026-06-13 00:54:54,473.473 INFO    ] 2026-06-13 00:54:54
[2026-06-13 00:54:54,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:54:54,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:54:54,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:54:54,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:54:54,897.897 INFO    ] time= 13/06/2026 00:54:54
[2026-06-13 00:54:54,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:54:54,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:54:55,031.031 INFO    ] No existing commands found in stream
[2026-06-13 00:55:00,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:55:00,048.048 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 00:55:02,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:55:02,109.109 INFO    ] Checking for system updates...
[2026-06-13 00:55:02,144.144 INFO    ] 200
[2026-06-13 00:55:02,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:02,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:55:02,187.187 INFO    ] No update needed
[2026-06-13 00:55:02,189.189 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:02,212.212 INFO    ] 200
[2026-06-13 00:55:02,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:02,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:02,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:55:02,278.278 INFO    ] No camera update needed
[2026-06-13 00:55:02,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:02,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:02,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:02,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:04,331.331 INFO    ] ================================================
[2026-06-13 00:55:04,346.346 INFO    ] Launching Daemon at Sat Jun 13 00:55:04 IST 2026
[2026-06-13 00:55:04,357.357 INFO    ] ================================================
[2026-06-13 00:55:04,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:04
[2026-06-13 00:55:05,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:05,159.159 INFO    ] Initializing speech engine...
[2026-06-13 00:55:05,164.164 INFO    ] 2026-06-13 00:55:05
[2026-06-13 00:55:05,369.369 INFO    ] 2026-06-13 00:55:05
[2026-06-13 00:55:05,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:05,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:05,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:05,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:05,784.784 INFO    ] time= 13/06/2026 00:55:05
[2026-06-13 00:55:05,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:05,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:05,897.897 INFO    ] No existing commands found in stream
[2026-06-13 00:55:10,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:55:10,910.910 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 00:55:13,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:55:13,812.812 INFO    ] Checking for system updates...
[2026-06-13 00:55:13,833.833 INFO    ] 200
[2026-06-13 00:55:13,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:13,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:13,866.866 INFO    ] No update needed
[2026-06-13 00:55:13,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:13,886.886 INFO    ] 200
[2026-06-13 00:55:13,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:13,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:13,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:13,951.951 INFO    ] No camera update needed
[2026-06-13 00:55:13,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:13,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:13,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:13,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:16,000.000 INFO    ] ================================================
[2026-06-13 00:55:16,015.015 INFO    ] Launching Daemon at Sat Jun 13 00:55:16 IST 2026
[2026-06-13 00:55:16,026.026 INFO    ] ================================================
[2026-06-13 00:55:16,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:16
[2026-06-13 00:55:16,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:16,844.844 INFO    ] Initializing speech engine...
[2026-06-13 00:55:16,849.849 INFO    ] 2026-06-13 00:55:16
[2026-06-13 00:55:17,052.052 INFO    ] 2026-06-13 00:55:17
[2026-06-13 00:55:17,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:17,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:17,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:17,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:17,445.445 INFO    ] time= 13/06/2026 00:55:17
[2026-06-13 00:55:17,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:17,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:17,645.645 INFO    ] No existing commands found in stream
[2026-06-13 00:55:22,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:55:22,663.663 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 00:55:23,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:55:23,042.042 INFO    ] Checking for system updates...
[2026-06-13 00:55:23,064.064 INFO    ] 200
[2026-06-13 00:55:23,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:23,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:55:23,097.097 INFO    ] No update needed
[2026-06-13 00:55:23,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:23,119.119 INFO    ] 200
[2026-06-13 00:55:23,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:23,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:23,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:23,181.181 INFO    ] No camera update needed
[2026-06-13 00:55:23,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:23,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:23,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:23,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:25,229.229 INFO    ] ================================================
[2026-06-13 00:55:25,244.244 INFO    ] Launching Daemon at Sat Jun 13 00:55:25 IST 2026
[2026-06-13 00:55:25,255.255 INFO    ] ================================================
[2026-06-13 00:55:25,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:25
[2026-06-13 00:55:25,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:26,060.060 INFO    ] Initializing speech engine...
[2026-06-13 00:55:26,066.066 INFO    ] 2026-06-13 00:55:26
[2026-06-13 00:55:26,269.269 INFO    ] 2026-06-13 00:55:26
[2026-06-13 00:55:26,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:26,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:26,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:26,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:26,675.675 INFO    ] time= 13/06/2026 00:55:26
[2026-06-13 00:55:26,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:26,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:26,786.786 INFO    ] No existing commands found in stream
[2026-06-13 00:55:31,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:55:31,798.798 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 00:55:33,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:55:33,327.327 INFO    ] Checking for system updates...
[2026-06-13 00:55:33,347.347 INFO    ] 200
[2026-06-13 00:55:33,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:33,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:33,381.381 INFO    ] No update needed
[2026-06-13 00:55:33,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:33,402.402 INFO    ] 200
[2026-06-13 00:55:33,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:33,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:33,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:33,464.464 INFO    ] No camera update needed
[2026-06-13 00:55:33,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:33,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:33,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:33,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:35,514.514 INFO    ] ================================================
[2026-06-13 00:55:35,529.529 INFO    ] Launching Daemon at Sat Jun 13 00:55:35 IST 2026
[2026-06-13 00:55:35,540.540 INFO    ] ================================================
[2026-06-13 00:55:35,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:35
[2026-06-13 00:55:36,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:36,345.345 INFO    ] Initializing speech engine...
[2026-06-13 00:55:36,353.353 INFO    ] 2026-06-13 00:55:36
[2026-06-13 00:55:36,573.573 INFO    ] 2026-06-13 00:55:36
[2026-06-13 00:55:36,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:36,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:36,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:36,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:36,949.949 INFO    ] time= 13/06/2026 00:55:36
[2026-06-13 00:55:37,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:37,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:37,155.155 INFO    ] No existing commands found in stream
[2026-06-13 00:55:42,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:55:42,163.163 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 00:55:45,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:55:45,995.995 INFO    ] Checking for system updates...
[2026-06-13 00:55:46,015.015 INFO    ] 200
[2026-06-13 00:55:46,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:46,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:55:46,051.051 INFO    ] No update needed
[2026-06-13 00:55:46,052.052 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:46,072.072 INFO    ] 200
[2026-06-13 00:55:46,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:46,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:46,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:46,140.140 INFO    ] No camera update needed
[2026-06-13 00:55:46,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:46,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:46,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:46,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:48,186.186 INFO    ] ================================================
[2026-06-13 00:55:48,201.201 INFO    ] Launching Daemon at Sat Jun 13 00:55:48 IST 2026
[2026-06-13 00:55:48,212.212 INFO    ] ================================================
[2026-06-13 00:55:48,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:48
[2026-06-13 00:55:48,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:49,013.013 INFO    ] Initializing speech engine...
[2026-06-13 00:55:49,023.023 INFO    ] 2026-06-13 00:55:49
[2026-06-13 00:55:49,246.246 INFO    ] 2026-06-13 00:55:49
[2026-06-13 00:55:49,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:49,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:49,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:49,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:49,665.665 INFO    ] time= 13/06/2026 00:55:49
[2026-06-13 00:55:49,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:49,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:49,803.803 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 00:55:49,807.807 INFO    ] Checking historical command: ID=1781292346589-0
[2026-06-13 00:55:49,834.834 INFO    ] process_and_cleanup_command: msg_id=1781292346589-0
[2026-06-13 00:55:49,836.836 INFO    ] is_command_expired: timestamp=2026-06-12T19:25:46.833Z, expiry=30s
[2026-06-13 00:55:49,953.953 INFO    ] Command removed from stream: 1781292346589-0. returning for processing...
[2026-06-13 00:55:49,956.956 INFO    ] ***** get_valid_command
[2026-06-13 00:55:49,959.959 INFO    ] {'data': '{"request_id":"start-order-1781292346833-gflnei89d","orderId":"TM08202203260613005456546","is_vending":false}', 'timestamp': '2026-06-12T19:25:46.833Z', 'command': 'start-order', 'source': 'webapp', 'timeout': '10'}
[2026-06-13 00:55:49,964.964 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613005456546', 'request_id': 'start-order-1781292346833-gflnei89d'}
[2026-06-13 00:55:49,969.969 INFO    ] Handling start order...
[2026-06-13 00:55:49,972.972 INFO    ] handle_start_order_command
[2026-06-13 00:55:49,979.979 INFO    ] _send_start_order_success: request_id=start-order-1781292346833-gflnei89d, order_id=TM08202203260613005456546
[2026-06-13 00:55:49,981.981 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 00:55:50,045.045 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781292350005-0
[2026-06-13 00:55:50,049.049 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 00:55:50,053.053 INFO    ] Checking for system updates...
[2026-06-13 00:55:50,081.081 INFO    ] 200
[2026-06-13 00:55:50,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:50,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:50,177.177 INFO    ] No update needed
[2026-06-13 00:55:50,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 00:55:50,232.232 INFO    ] 200
[2026-06-13 00:55:50,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:50,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:55:50,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:55:50,352.352 INFO    ] No camera update needed
[2026-06-13 00:55:50,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:55:50,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:55:50,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:55:50,369.369 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 00:55:50,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:55:52,415.415 INFO    ] ================================================
[2026-06-13 00:55:52,430.430 INFO    ] Launching Daemon at Sat Jun 13 00:55:52 IST 2026
[2026-06-13 00:55:52,441.441 INFO    ] ================================================
[2026-06-13 00:55:52,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:55:52
[2026-06-13 00:55:53,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:55:53,246.246 INFO    ] Initializing speech engine...
[2026-06-13 00:55:53,255.255 INFO    ] 2026-06-13 00:55:53
[2026-06-13 00:55:53,483.483 INFO    ] 2026-06-13 00:55:53
[2026-06-13 00:55:53,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:55:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:55:53,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:55:53,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:55:53,921.921 INFO    ] time= 13/06/2026 00:55:53
[2026-06-13 00:55:53,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:55:53,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:55:54,047.047 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 00:55:54,054.054 INFO    ] Checking historical command: ID=1781292350005-0
[2026-06-13 00:55:54,076.076 INFO    ] process_and_cleanup_command: msg_id=1781292350005-0
[2026-06-13 00:55:54,078.078 INFO    ] is_command_expired: timestamp=2026-06-12T19:25:49.979721Z, expiry=30s
[2026-06-13 00:55:54,196.196 INFO    ] Command removed from stream: 1781292350005-0. returning for processing...
[2026-06-13 00:55:54,200.200 INFO    ] ***** get_valid_command
[2026-06-13 00:55:54,205.205 INFO    ] {'metadata_request_id': 'start-order-1781292346833-gflnei89d', 'message_type': 'command_response', 'imei': 'TM08202203', 'timestamp': '2026-06-12T19:25:49.979721Z', 'metadata_order_id': 'TM08202203260613005456546', 'message': 'start-order success', 'status': 'success'}
[2026-06-13 00:55:54,209.209 INFO    ] Checking historical command: ID=1781292352050-0
[2026-06-13 00:55:54,213.213 INFO    ] process_and_cleanup_command: msg_id=1781292352050-0
[2026-06-13 00:55:54,215.215 INFO    ] is_command_expired: timestamp=2026-06-12T19:25:52.277Z, expiry=30s
[2026-06-13 00:55:54,263.263 INFO    ] Command removed from stream: 1781292352050-0. returning for processing...
[2026-06-13 00:55:54,266.266 INFO    ] ***** get_valid_command
[2026-06-13 00:55:54,268.268 INFO    ] {'data': '{"request_id":"process-order-1781292352277-7jjkayd5b","orderId":"TM08202203260613005456546","is_vending":false,"accessCode":"75805171"}', 'source': 'webapp', 'timestamp': '2026-06-12T19:25:52.277Z', 'command': 'process-order', 'timeout': '60'}
[2026-06-13 00:55:54,272.272 INFO    ] ***** Parsed command data: {'accessCode': '75805171', 'orderId': 'TM08202203260613005456546', 'request_id': 'process-order-1781292352277-7jjkayd5b', 'is_vending': False}
[2026-06-13 00:55:54,275.275 INFO    ] Handling process order...
[2026-06-13 00:55:54,277.277 INFO    ] Processing process-order command...
[2026-06-13 00:55:54,281.281 INFO    ] 🔍 Lock file Order ID: TM08202203260613005456546, TS: 2026-06-13 00:55:49
[2026-06-13 00:55:54,290.290 INFO    ] ✅ Order lock valid for TM08202203260613005456546
[2026-06-13 00:55:54,293.293 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 00:55:54,296.296 INFO    ] processing access code 75805171 for order TM08202203260613005456546
[2026-06-13 00:55:54,300.300 INFO    ] 🔍 Lock file Order ID: TM08202203260613005456546, TS: 2026-06-13 00:55:49
[2026-06-13 00:55:54,304.304 INFO    ] ✅ Order lock valid for TM08202203260613005456546
[2026-06-13 00:55:54,307.307 INFO    ] 2026-06-13 00:55:54
[2026-06-13 00:55:54,336.336 INFO    ] 200
[2026-06-13 00:55:54,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:55:54,344.344 INFO    ] 75805171
[2026-06-13 00:55:54,348.348 INFO    ] 2026-06-13 00:55:54
[2026-06-13 00:55:54,352.352 INFO    ] session id :899868102
[2026-06-13 00:55:54,356.356 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=75805171&imei=TM08202203&session_id=899868102
[2026-06-13 00:55:55,319.319 INFO    ] 200
[2026-06-13 00:55:55,324.324 INFO    ] {"data": {"mobile": "9731074647", "order_id": "TM08202203260613005456546", "bill_amount": "30", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "skuid": "4500668", "door_id": "1", "mrp": "30", "offer_desc": "", "name": "Farmely Panchmeva 21gm", "tray_id": "21", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}], "access_code": "75805171", "invoice_bill": "30"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 00:55:55,361.361 INFO    ] 30
[2026-06-13 00:55:55,380.380 INFO    ] TM08202203260613005456546
[2026-06-13 00:55:55,388.388 INFO    ] 9731074647
[2026-06-13 00:55:55,402.402 INFO    ] 2026-06-13 00:55:55
[2026-06-13 00:55:55,415.415 INFO    ] Door Opening for user mobile ending with  four six four seven 
[2026-06-13 00:55:55,427.427 INFO    ] Door Opening for user mobile ending with  four six four seven 
[2026-06-13 00:55:55,465.465 INFO    ] 7c8ef0915f02d0106e2a4efd1cd39645
[2026-06-13 00:55:55,537.537 INFO    ] 2026-06-13 00:55:55
[2026-06-13 00:55:55,544.544 INFO    ] creating audio file
[2026-06-13 00:55:55,981.981 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 00:55:56,883.883 INFO    ] gTTS API call completed successfully
[2026-06-13 00:55:57,842.842 INFO    ] 2026-06-13 00:55:57
[2026-06-13 00:55:57,844.844 INFO    ] playing audio file
[2026-06-13 00:55:57,854.854 INFO    ] 2026-06-13 00:55:57
[2026-06-13 00:55:57,856.856 INFO    ] 2026-06-13 00:55:57
[2026-06-13 00:55:57,858.858 INFO    ] publish_status: order_id=TM08202203260613005456546
[2026-06-13 00:55:57,859.859 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005456546
[2026-06-13 00:55:57,951.951 INFO    ] [publish_status] Message added to stream with ID: 1781292357913-0
[2026-06-13 00:55:57,953.953 INFO    ] Published to order:TM08202203260613005456546: {'order_id': 'TM08202203260613005456546', 'server_status': 'order-started', 'timestamp': '2026-06-12T19:25:57.856975Z', 'server_response': '{"data": {"access_code": "75805171", "invoice_bill": "30", "proposed_sku_json": [{"mrp": "30", "sku_total": 30, "tray_id": "21", "qty": 1, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_id": "", "skuid": "4500668", "door_id": "1", "name": "Farmely Panchmeva 21gm", "unit_price": 30, "offer_desc": ""}], "order_id": "TM08202203260613005456546", "mobile": "9731074647", "bill_amount": "30"}, "msg": "Order Data", "rstatus": true, "status": true}'} (ID: 1781292357913-0)
[2026-06-13 00:55:58,268.268 INFO    ] {'order_id': 'TM08202203260613005456546', 'server_status': 'order-started', 'server_response': {'data': {'access_code': '75805171', 'invoice_bill': '30', 'proposed_sku_json': [{'mrp': '30', 'sku_total': 30, 'tray_id': '21', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'offer_id': '', 'skuid': '4500668', 'door_id': '1', 'name': 'Farmely Panchmeva 21gm', 'unit_price': 30, 'offer_desc': ''}], 'order_id': 'TM08202203260613005456546', 'mobile': '9731074647', 'bill_amount': '30'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}
[2026-06-13 00:55:58,270.270 INFO    ] 200
[2026-06-13 00:55:58,271.271 INFO    ] {"data":{"order_id":"TM08202203260613005456546","server_status":"order-started","server_response":{"data":{"access_code":"75805171","invoice_bill":"30","proposed_sku_json":[{"mrp":"30","sku_total":30,"tray_id":"21","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","offer_id":"","skuid":"4500668","door_id":"1","name":"Farmely Panchmeva 21gm","unit_price":30,"offer_desc":""}],"order_id":"TM08202203260613005456546","mobile":"9731074647","bill_amount":"30"},"msg":"Order Data","rstatus":true,"status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:55:58,273.273 INFO    ] {'data': {'order_id': 'TM08202203260613005456546', 'server_status': 'order-started', 'server_response': {'data': {'access_code': '75805171', 'invoice_bill': '30', 'proposed_sku_json': [{'mrp': '30', 'sku_total': 30, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'offer_id': '', 'skuid': '4500668', 'door_id': '1', 'name': 'Farmely Panchmeva 21gm', 'offer_desc': '', 'unit_price': 30, 'qty': 1}], 'order_id': 'TM08202203260613005456546', 'mobile': '9731074647', 'bill_amount': '30'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 00:55:58,275.275 INFO    ] 2026-06-13 00:55:58
[2026-06-13 00:55:58,301.301 INFO    ] 200
[2026-06-13 00:55:58,302.302 INFO    ] True
[2026-06-13 00:55:58,389.389 INFO    ] 200
[2026-06-13 00:55:58,391.391 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 00:55:58,393.393 INFO    ] {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-13 00:55:58,395.395 INFO    ] *** process_order ***
[2026-06-13 00:55:59,557.557 INFO    ] 200
[2026-06-13 00:55:59,559.559 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:55:59,560.560 INFO    ] {'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-13 00:55:59,561.561 INFO    ] *** process_order ***
[2026-06-13 00:55:59,563.563 INFO    ] publish_status: order_id=TM08202203260613005456546
[2026-06-13 00:55:59,564.564 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005456546
[2026-06-13 00:55:59,643.643 INFO    ] [publish_status] Message added to stream with ID: 1781292359605-0
[2026-06-13 00:55:59,644.644 INFO    ] Published to order:TM08202203260613005456546: {'order_id': 'TM08202203260613005456546', 'server_status': 'doorOpened', 'server_response': '{"delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1781292359605-0)
[2026-06-13 00:56:00,686.686 INFO    ] 2026-06-13 00:56:00
[2026-06-13 00:56:00,689.689 INFO    ] publish_status: order_id=TM08202203260613005456546
[2026-06-13 00:56:00,692.692 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005456546
[2026-06-13 00:56:00,764.764 INFO    ] [publish_status] Message added to stream with ID: 1781292360725-0
[2026-06-13 00:56:00,767.767 INFO    ] Published to order:TM08202203260613005456546: {'order_id': 'TM08202203260613005456546', 'server_status': 'processOrder', 'timestamp': '2026-06-12T19:26:00.688078Z', 'server_response': '{"delay": 0, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1781292360725-0)
[2026-06-13 00:56:00,882.882 INFO    ] {'order_id': 'TM08202203260613005456546', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}}
[2026-06-13 00:56:00,883.883 INFO    ] 200
[2026-06-13 00:56:00,885.885 INFO    ] {"data":{"order_id":"TM08202203260613005456546","server_status":"processOrder","server_response":{"delay":0,"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","rstatus":true,"SectionMain":{"Header":"Processing Order"},"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:56:00,887.887 INFO    ] {'data': {'order_id': 'TM08202203260613005456546', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 00:56:00,888.888 INFO    ] 2026-06-13 00:56:00
[2026-06-13 00:56:00,890.890 INFO    ] None
[2026-06-13 00:56:00,892.892 INFO    ] Opening Door now
[2026-06-13 00:56:00,893.893 INFO    ] Opening Door now
[2026-06-13 00:56:00,895.895 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 00:56:00,896.896 INFO    ] 2026-06-13 00:56:00
[2026-06-13 00:56:00,898.898 INFO    ] playing audio file
[2026-06-13 00:56:00,910.910 INFO    ] 2026-06-13 00:56:00
[2026-06-13 00:56:00,912.912 INFO    ] 2026-06-13 00:56:00
[2026-06-13 00:56:04,053.053 INFO    ] 200
[2026-06-13 00:56:04,056.056 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:56:04,059.059 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is open now', 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 00:56:07,109.109 INFO    ] 200
[2026-06-13 00:56:07,110.110 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:56:07,112.112 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 00:56:10,188.188 INFO    ] 200
[2026-06-13 00:56:10,191.191 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 00:56:10,194.194 INFO    ] Please close door 1
[2026-06-13 00:56:10,197.197 INFO    ] Please close door 1
[2026-06-13 00:56:10,199.199 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 00:56:10,202.202 INFO    ] 2026-06-13 00:56:10
[2026-06-13 00:56:10,204.204 INFO    ] playing audio file
[2026-06-13 00:56:10,222.222 INFO    ] 2026-06-13 00:56:10
[2026-06-13 00:56:10,226.226 INFO    ] publish_status: order_id=TM08202203260613005456546
[2026-06-13 00:56:10,230.230 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005456546
[2026-06-13 00:56:10,314.314 INFO    ] [publish_status] Message added to stream with ID: 1781292370273-0
[2026-06-13 00:56:10,317.317 INFO    ] Published to order:TM08202203260613005456546: {'order_id': 'TM08202203260613005456546', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T19:26:10.224767Z', 'server_response': '{"SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"skus": [{"name": "Farmely Panchmeva 21gm", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}'} (ID: 1781292370273-0)
[2026-06-13 00:56:10,726.726 INFO    ] {'order_id': 'TM08202203260613005456546', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}}
[2026-06-13 00:56:10,729.729 INFO    ] 200
[2026-06-13 00:56:10,732.732 INFO    ] {"data":{"order_id":"TM08202203260613005456546","server_status":"OrderStatus","server_response":{"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"SectionSKU":{"skus":[{"name":"Farmely Panchmeva 21gm","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 1","error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:56:10,735.735 INFO    ] {'data': {'order_id': 'TM08202203260613005456546', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'error': {'data': [], 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 00:56:10,737.737 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 00:56:13,778.778 INFO    ] 200
[2026-06-13 00:56:13,781.781 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 00:56:13,783.783 INFO    ] {'delay': 100, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 00:56:13,784.784 INFO    ] 2026-06-13 00:56:13
[2026-06-13 00:56:13,786.786 INFO    ] Order Completed 
[2026-06-13 00:56:13,787.787 INFO    ] Order Completed 
[2026-06-13 00:56:13,789.789 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 00:56:13,791.791 INFO    ] 2026-06-13 00:56:13
[2026-06-13 00:56:13,792.792 INFO    ] playing audio file
[2026-06-13 00:56:13,806.806 INFO    ] 2026-06-13 00:56:13
[2026-06-13 00:56:13,810.810 INFO    ] {'delay': 100, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 00:56:13,813.813 INFO    ] 2026-06-13 00:56:13
[2026-06-13 00:56:14,875.875 INFO    ] 200
[2026-06-13 00:56:14,879.879 INFO    ] {"res": "True", "orderId": "TM08202203260613005456546", "skus": [{"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "skuid": "4500668", "door_id": "", "tray_id": "21", "name": "Farmely Panchmeva 21gm per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 30.0}
[2026-06-13 00:56:14,882.882 INFO    ] {'skus': [{'mrp': '30', 'sku_total': 30.0, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'door_id': '', 'qty': 1, 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice'}], 'logic': 'WBL', 'orderId': 'TM08202203260613005456546', 'total_amount': 30.0, 'rstatus': True, 'res': 'True', 'anomaly': 0}
[2026-06-13 00:56:14,886.886 INFO    ] {'skus': [{'mrp': '30', 'sku_total': 30.0, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'door_id': '', 'qty': 1, 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice'}], 'logic': 'WBL', 'orderId': 'TM08202203260613005456546', 'total_amount': 30.0, 'rstatus': True, 'res': 'True', 'anomaly': 0}
[2026-06-13 00:56:14,889.889 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,892.892 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,895.895 INFO    ] 30
[2026-06-13 00:56:14,898.898 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,900.900 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,903.903 INFO    ]  Your Bill Amount is 30
[2026-06-13 00:56:14,906.906 INFO    ]  Your Bill Amount is 30
[2026-06-13 00:56:14,909.909 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-13 00:56:14,913.913 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,915.915 INFO    ] playing audio file
[2026-06-13 00:56:14,933.933 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,937.937 INFO    ] 2026-06-13 00:56:14
[2026-06-13 00:56:14,941.941 INFO    ] publish_status: order_id=TM08202203260613005456546
[2026-06-13 00:56:14,944.944 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613005456546
[2026-06-13 00:56:15,026.026 INFO    ] [publish_status] Message added to stream with ID: 1781292374986-0
[2026-06-13 00:56:15,028.028 INFO    ] Published to order:TM08202203260613005456546: {'order_id': 'TM08202203260613005456546', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T19:26:14.939207Z', 'server_response': '{"skus": [{"mrp": "30", "sku_total": 30.0, "tray_id": "21", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "skuid": "4500668", "door_id": "", "qty": 1, "unit_price": "30", "name": "Farmely Panchmeva 21gm per peice"}], "logic": "WBL", "orderId": "TM08202203260613005456546", "total_amount": 30.0, "rstatus": true, "res": "True", "anomaly": 0}'} (ID: 1781292374986-0)
[2026-06-13 00:56:15,136.136 INFO    ] {'order_id': 'TM08202203260613005456546', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'mrp': '30', 'sku_total': 30.0, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'door_id': '', 'qty': 1, 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice'}], 'logic': 'WBL', 'orderId': 'TM08202203260613005456546', 'total_amount': 30.0, 'rstatus': True, 'res': 'True', 'anomaly': 0}}
[2026-06-13 00:56:15,139.139 INFO    ] 200
[2026-06-13 00:56:15,141.141 INFO    ] {"data":{"order_id":"TM08202203260613005456546","server_status":"invoiceOrder","server_response":{"skus":[{"mrp":"30","sku_total":30,"tray_id":"21","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","skuid":"4500668","door_id":"","qty":1,"unit_price":"30","name":"Farmely Panchmeva 21gm per peice"}],"logic":"WBL","orderId":"TM08202203260613005456546","total_amount":30,"rstatus":true,"res":"true","anomaly":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 00:56:15,144.144 INFO    ] {'data': {'order_id': 'TM08202203260613005456546', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'mrp': '30', 'sku_total': 30, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'door_id': '', 'name': 'Farmely Panchmeva 21gm per peice', 'unit_price': '30', 'qty': 1}], 'logic': 'WBL', 'orderId': 'TM08202203260613005456546', 'res': 'true', 'rstatus': True, 'total_amount': 30, 'anomaly': 0}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 00:56:15,147.147 INFO    ] {'data': {'order_id': 'TM08202203260613005456546', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'mrp': '30', 'sku_total': 30, 'tray_id': '21', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'door_id': '', 'name': 'Farmely Panchmeva 21gm per peice', 'unit_price': '30', 'qty': 1}], 'logic': 'WBL', 'orderId': 'TM08202203260613005456546', 'res': 'true', 'rstatus': True, 'total_amount': 30, 'anomaly': 0}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 00:56:15,149.149 INFO    ] 2026-06-13 00:56:15
[2026-06-13 00:56:17,117.117 INFO    ] 200
[2026-06-13 00:56:17,119.119 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546", "TM08202203260613005456546"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 00:56:17,122.122 INFO    ] 2026-06-13 00:56:17
[2026-06-13 00:56:17,238.238 INFO    ] 200
[2026-06-13 00:56:17,240.240 INFO    ] True
[2026-06-13 00:56:17,242.242 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613005456546
[2026-06-13 00:56:17,244.244 INFO    ] start order file deleted
[2026-06-13 00:56:17,246.246 INFO    ] Checking for system updates...
[2026-06-13 00:56:17,268.268 INFO    ] 200
[2026-06-13 00:56:17,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:17,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:56:17,307.307 INFO    ] No update needed
[2026-06-13 00:56:17,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 00:56:17,331.331 INFO    ] 200
[2026-06-13 00:56:17,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:17,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:56:17,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:56:17,439.439 INFO    ] No camera update needed
[2026-06-13 00:56:17,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:56:17,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:56:17,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:56:17,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:56:19,488.488 INFO    ] ================================================
[2026-06-13 00:56:19,503.503 INFO    ] Launching Daemon at Sat Jun 13 00:56:19 IST 2026
[2026-06-13 00:56:19,516.516 INFO    ] ================================================
[2026-06-13 00:56:19,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:56:19
[2026-06-13 00:56:20,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:56:20,305.305 INFO    ] Initializing speech engine...
[2026-06-13 00:56:20,310.310 INFO    ] 2026-06-13 00:56:20
[2026-06-13 00:56:20,542.542 INFO    ] 2026-06-13 00:56:20
[2026-06-13 00:56:20,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:56:20,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:56:20,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:56:20,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:56:20,968.968 INFO    ] time= 13/06/2026 00:56:20
[2026-06-13 00:56:21,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:56:21,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:56:21,101.101 INFO    ] No existing commands found in stream
[2026-06-13 00:56:26,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:56:26,114.114 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 00:56:26,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:56:26,891.891 INFO    ] Checking for system updates...
[2026-06-13 00:56:26,911.911 INFO    ] 200
[2026-06-13 00:56:26,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:26,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:56:26,944.944 INFO    ] No update needed
[2026-06-13 00:56:26,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 00:56:26,965.965 INFO    ] 200
[2026-06-13 00:56:26,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:26,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:56:27,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:56:27,140.140 INFO    ] No camera update needed
[2026-06-13 00:56:27,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:56:27,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:56:27,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:56:27,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:56:29,188.188 INFO    ] ================================================
[2026-06-13 00:56:29,203.203 INFO    ] Launching Daemon at Sat Jun 13 00:56:29 IST 2026
[2026-06-13 00:56:29,214.214 INFO    ] ================================================
[2026-06-13 00:56:29,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:56:29
[2026-06-13 00:56:29,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:56:29,998.998 INFO    ] Initializing speech engine...
[2026-06-13 00:56:30,011.011 INFO    ] 2026-06-13 00:56:30
[2026-06-13 00:56:30,231.231 INFO    ] 2026-06-13 00:56:30
[2026-06-13 00:56:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:56:30,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:56:30,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:56:30,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:56:30,662.662 INFO    ] time= 13/06/2026 00:56:30
[2026-06-13 00:56:30,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:56:30,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:56:30,760.760 INFO    ] No existing commands found in stream
[2026-06-13 00:56:35,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:56:35,773.773 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 00:56:38,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:56:38,052.052 INFO    ] Checking for system updates...
[2026-06-13 00:56:38,073.073 INFO    ] 200
[2026-06-13 00:56:38,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:38,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:56:38,108.108 INFO    ] No update needed
[2026-06-13 00:56:38,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 00:56:38,129.129 INFO    ] 200
[2026-06-13 00:56:38,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:38,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:56:38,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:56:38,204.204 INFO    ] No camera update needed
[2026-06-13 00:56:38,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:56:38,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:56:38,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:56:38,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:56:40,250.250 INFO    ] ================================================
[2026-06-13 00:56:40,265.265 INFO    ] Launching Daemon at Sat Jun 13 00:56:40 IST 2026
[2026-06-13 00:56:40,275.275 INFO    ] ================================================
[2026-06-13 00:56:40,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:56:40
[2026-06-13 00:56:40,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:56:41,066.066 INFO    ] Initializing speech engine...
[2026-06-13 00:56:41,079.079 INFO    ] 2026-06-13 00:56:41
[2026-06-13 00:56:41,285.285 INFO    ] 2026-06-13 00:56:41
[2026-06-13 00:56:41,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:56:41,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:56:41,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:56:41,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:56:41,697.697 INFO    ] time= 13/06/2026 00:56:41
[2026-06-13 00:56:41,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:56:41,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:56:41,922.922 INFO    ] No existing commands found in stream
[2026-06-13 00:56:46,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:56:46,955.955 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 00:56:50,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:56:50,522.522 INFO    ] Checking for system updates...
[2026-06-13 00:56:50,543.543 INFO    ] 200
[2026-06-13 00:56:50,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:50,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:56:50,576.576 INFO    ] No update needed
[2026-06-13 00:56:50,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 00:56:50,597.597 INFO    ] 200
[2026-06-13 00:56:50,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:56:50,621.621 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:56:50,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:56:50,660.660 INFO    ] No camera update needed
[2026-06-13 00:56:50,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:56:50,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:56:50,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:56:50,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:56:52,710.710 INFO    ] ================================================
[2026-06-13 00:56:52,726.726 INFO    ] Launching Daemon at Sat Jun 13 00:56:52 IST 2026
[2026-06-13 00:56:52,737.737 INFO    ] ================================================
[2026-06-13 00:56:53,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:56:53
[2026-06-13 00:56:53,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:56:54,189.189 INFO    ] Initializing speech engine...
[2026-06-13 00:56:54,198.198 INFO    ] 2026-06-13 00:56:54
[2026-06-13 00:56:54,458.458 INFO    ] 2026-06-13 00:56:54
[2026-06-13 00:56:54,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:56:54,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:56:54,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:56:54,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:56:54,920.920 INFO    ] time= 13/06/2026 00:56:54
[2026-06-13 00:56:54,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:56:55,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:56:55,063.063 INFO    ] No existing commands found in stream
[2026-06-13 00:57:00,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:57:00,077.077 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 00:57:02,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:57:02,494.494 INFO    ] Checking for system updates...
[2026-06-13 00:57:02,520.520 INFO    ] 200
[2026-06-13 00:57:02,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:02,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:57:02,563.563 INFO    ] No update needed
[2026-06-13 00:57:02,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 00:57:02,589.589 INFO    ] 200
[2026-06-13 00:57:02,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:02,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:57:02,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:02,665.665 INFO    ] No camera update needed
[2026-06-13 00:57:02,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:57:02,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:57:02,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:57:02,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:57:04,718.718 INFO    ] ================================================
[2026-06-13 00:57:04,733.733 INFO    ] Launching Daemon at Sat Jun 13 00:57:04 IST 2026
[2026-06-13 00:57:04,744.744 INFO    ] ================================================
[2026-06-13 00:57:05,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:57:05
[2026-06-13 00:57:05,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:57:05,597.597 INFO    ] Initializing speech engine...
[2026-06-13 00:57:05,601.601 INFO    ] 2026-06-13 00:57:05
[2026-06-13 00:57:05,808.808 INFO    ] 2026-06-13 00:57:05
[2026-06-13 00:57:05,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:57:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:57:06,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:57:06,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:57:06,233.233 INFO    ] time= 13/06/2026 00:57:06
[2026-06-13 00:57:06,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:57:06,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:57:06,334.334 INFO    ] No existing commands found in stream
[2026-06-13 00:57:11,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:57:11,348.348 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 00:57:15,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:57:15,108.108 INFO    ] Checking for system updates...
[2026-06-13 00:57:15,131.131 INFO    ] 200
[2026-06-13 00:57:15,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:15,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:15,164.164 INFO    ] No update needed
[2026-06-13 00:57:15,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 00:57:15,186.186 INFO    ] 200
[2026-06-13 00:57:15,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:15,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:57:15,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:15,254.254 INFO    ] No camera update needed
[2026-06-13 00:57:15,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:57:15,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:57:15,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:57:15,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:57:17,303.303 INFO    ] ================================================
[2026-06-13 00:57:17,319.319 INFO    ] Launching Daemon at Sat Jun 13 00:57:17 IST 2026
[2026-06-13 00:57:17,329.329 INFO    ] ================================================
[2026-06-13 00:57:17,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:57:17
[2026-06-13 00:57:18,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:57:18,159.159 INFO    ] Initializing speech engine...
[2026-06-13 00:57:18,164.164 INFO    ] 2026-06-13 00:57:18
[2026-06-13 00:57:18,367.367 INFO    ] 2026-06-13 00:57:18
[2026-06-13 00:57:18,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:57:18,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:57:18,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:57:18,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:57:18,783.783 INFO    ] time= 13/06/2026 00:57:18
[2026-06-13 00:57:18,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:57:18,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:57:18,882.882 INFO    ] No existing commands found in stream
[2026-06-13 00:57:23,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:57:23,895.895 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 00:57:28,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:57:28,036.036 INFO    ] Checking for system updates...
[2026-06-13 00:57:28,057.057 INFO    ] 200
[2026-06-13 00:57:28,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:28,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:28,092.092 INFO    ] No update needed
[2026-06-13 00:57:28,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 00:57:28,113.113 INFO    ] 200
[2026-06-13 00:57:28,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:28,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:57:28,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:57:28,176.176 INFO    ] No camera update needed
[2026-06-13 00:57:28,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:57:28,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:57:28,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:57:28,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:57:30,227.227 INFO    ] ================================================
[2026-06-13 00:57:30,242.242 INFO    ] Launching Daemon at Sat Jun 13 00:57:30 IST 2026
[2026-06-13 00:57:30,252.252 INFO    ] ================================================
[2026-06-13 00:57:30,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:57:30
[2026-06-13 00:57:30,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:57:31,054.054 INFO    ] Initializing speech engine...
[2026-06-13 00:57:31,060.060 INFO    ] 2026-06-13 00:57:31
[2026-06-13 00:57:31,265.265 INFO    ] 2026-06-13 00:57:31
[2026-06-13 00:57:31,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:57:31,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:57:31,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:57:31,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:57:31,663.663 INFO    ] time= 13/06/2026 00:57:31
[2026-06-13 00:57:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:57:31,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:57:31,778.778 INFO    ] No existing commands found in stream
[2026-06-13 00:57:36,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:57:36,790.790 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 00:57:40,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:57:40,784.784 INFO    ] Checking for system updates...
[2026-06-13 00:57:40,805.805 INFO    ] 200
[2026-06-13 00:57:40,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:40,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:57:40,840.840 INFO    ] No update needed
[2026-06-13 00:57:40,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 00:57:40,861.861 INFO    ] 200
[2026-06-13 00:57:40,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:40,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:57:40,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:40,928.928 INFO    ] No camera update needed
[2026-06-13 00:57:40,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:57:40,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:57:40,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:57:40,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:57:42,975.975 INFO    ] ================================================
[2026-06-13 00:57:42,991.991 INFO    ] Launching Daemon at Sat Jun 13 00:57:42 IST 2026
[2026-06-13 00:57:43,002.002 INFO    ] ================================================
[2026-06-13 00:57:43,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:57:43
[2026-06-13 00:57:43,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:57:44,230.230 INFO    ] Initializing speech engine...
[2026-06-13 00:57:44,236.236 INFO    ] 2026-06-13 00:57:44
[2026-06-13 00:57:44,538.538 INFO    ] 2026-06-13 00:57:44
[2026-06-13 00:57:44,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:57:44,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:57:44,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:57:44,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:57:44,922.922 INFO    ] time= 13/06/2026 00:57:44
[2026-06-13 00:57:44,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:57:44,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:57:45,053.053 INFO    ] No existing commands found in stream
[2026-06-13 00:57:50,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:57:50,066.066 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 00:57:54,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:57:54,169.169 INFO    ] Checking for system updates...
[2026-06-13 00:57:54,190.190 INFO    ] 200
[2026-06-13 00:57:54,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:54,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:54,225.225 INFO    ] No update needed
[2026-06-13 00:57:54,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 00:57:54,246.246 INFO    ] 200
[2026-06-13 00:57:54,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:57:54,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:57:54,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:57:54,312.312 INFO    ] No camera update needed
[2026-06-13 00:57:54,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:57:54,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:57:54,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:57:54,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:57:56,364.364 INFO    ] ================================================
[2026-06-13 00:57:56,379.379 INFO    ] Launching Daemon at Sat Jun 13 00:57:56 IST 2026
[2026-06-13 00:57:56,390.390 INFO    ] ================================================
[2026-06-13 00:57:56,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:57:56
[2026-06-13 00:57:57,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:57:57,171.171 INFO    ] Initializing speech engine...
[2026-06-13 00:57:57,176.176 INFO    ] 2026-06-13 00:57:57
[2026-06-13 00:57:57,408.408 INFO    ] 2026-06-13 00:57:57
[2026-06-13 00:57:57,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:57:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:57:57,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:57:57,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:57:57,787.787 INFO    ] time= 13/06/2026 00:57:57
[2026-06-13 00:57:57,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:57:57,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:57:57,970.970 INFO    ] No existing commands found in stream
[2026-06-13 00:58:02,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:02,983.983 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 00:58:04,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:58:04,838.838 INFO    ] Checking for system updates...
[2026-06-13 00:58:04,858.858 INFO    ] 200
[2026-06-13 00:58:04,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:04,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:04,891.891 INFO    ] No update needed
[2026-06-13 00:58:04,893.893 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:04,912.912 INFO    ] 200
[2026-06-13 00:58:04,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:04,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:04,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:04,978.978 INFO    ] No camera update needed
[2026-06-13 00:58:04,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:04,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:04,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:04,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:58:07,025.025 INFO    ] ================================================
[2026-06-13 00:58:07,040.040 INFO    ] Launching Daemon at Sat Jun 13 00:58:07 IST 2026
[2026-06-13 00:58:07,050.050 INFO    ] ================================================
[2026-06-13 00:58:07,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:58:07
[2026-06-13 00:58:07,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:58:07,855.855 INFO    ] Initializing speech engine...
[2026-06-13 00:58:07,865.865 INFO    ] 2026-06-13 00:58:07
[2026-06-13 00:58:08,075.075 INFO    ] 2026-06-13 00:58:08
[2026-06-13 00:58:08,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:58:08,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:58:08,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:58:08,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:58:08,449.449 INFO    ] time= 13/06/2026 00:58:08
[2026-06-13 00:58:08,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:58:08,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:58:08,496.496 INFO    ] No existing commands found in stream
[2026-06-13 00:58:13,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:13,508.508 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 00:58:14,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:58:14,090.090 INFO    ] Checking for system updates...
[2026-06-13 00:58:14,112.112 INFO    ] 200
[2026-06-13 00:58:14,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:14,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:14,144.144 INFO    ] No update needed
[2026-06-13 00:58:14,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:14,165.165 INFO    ] 200
[2026-06-13 00:58:14,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:14,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:14,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:14,230.230 INFO    ] No camera update needed
[2026-06-13 00:58:14,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:14,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:14,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:14,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:58:16,279.279 INFO    ] ================================================
[2026-06-13 00:58:16,294.294 INFO    ] Launching Daemon at Sat Jun 13 00:58:16 IST 2026
[2026-06-13 00:58:16,305.305 INFO    ] ================================================
[2026-06-13 00:58:16,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:58:16
[2026-06-13 00:58:16,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:58:17,185.185 INFO    ] Initializing speech engine...
[2026-06-13 00:58:17,195.195 INFO    ] 2026-06-13 00:58:17
[2026-06-13 00:58:17,443.443 INFO    ] 2026-06-13 00:58:17
[2026-06-13 00:58:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:58:17,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:58:17,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:58:17,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:58:17,896.896 INFO    ] time= 13/06/2026 00:58:17
[2026-06-13 00:58:17,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:58:18,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:58:18,153.153 INFO    ] No existing commands found in stream
[2026-06-13 00:58:23,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:23,172.172 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 00:58:23,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:58:23,729.729 INFO    ] Checking for system updates...
[2026-06-13 00:58:23,750.750 INFO    ] 200
[2026-06-13 00:58:23,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:23,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:23,783.783 INFO    ] No update needed
[2026-06-13 00:58:23,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:23,805.805 INFO    ] 200
[2026-06-13 00:58:23,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:23,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:23,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:23,868.868 INFO    ] No camera update needed
[2026-06-13 00:58:23,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:23,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:23,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:23,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:58:25,915.915 INFO    ] ================================================
[2026-06-13 00:58:25,931.931 INFO    ] Launching Daemon at Sat Jun 13 00:58:25 IST 2026
[2026-06-13 00:58:25,941.941 INFO    ] ================================================
[2026-06-13 00:58:26,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:58:26
[2026-06-13 00:58:26,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:58:26,721.721 INFO    ] Initializing speech engine...
[2026-06-13 00:58:26,731.731 INFO    ] 2026-06-13 00:58:26
[2026-06-13 00:58:26,946.946 INFO    ] 2026-06-13 00:58:26
[2026-06-13 00:58:26,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:58:27,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:58:27,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:58:27,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:58:27,378.378 INFO    ] time= 13/06/2026 00:58:27
[2026-06-13 00:58:27,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:58:27,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:58:27,497.497 INFO    ] No existing commands found in stream
[2026-06-13 00:58:32,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:32,511.511 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 00:58:34,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 00:58:34,217.217 INFO    ] Checking for system updates...
[2026-06-13 00:58:34,238.238 INFO    ] 200
[2026-06-13 00:58:34,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:34,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:34,271.271 INFO    ] No update needed
[2026-06-13 00:58:34,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:34,292.292 INFO    ] 200
[2026-06-13 00:58:34,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:34,317.317 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:34,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:34,359.359 INFO    ] No camera update needed
[2026-06-13 00:58:34,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:34,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:34,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:34,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:58:36,406.406 INFO    ] ================================================
[2026-06-13 00:58:36,421.421 INFO    ] Launching Daemon at Sat Jun 13 00:58:36 IST 2026
[2026-06-13 00:58:36,431.431 INFO    ] ================================================
[2026-06-13 00:58:36,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:58:36
[2026-06-13 00:58:37,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:58:37,230.230 INFO    ] Initializing speech engine...
[2026-06-13 00:58:37,240.240 INFO    ] 2026-06-13 00:58:37
[2026-06-13 00:58:37,444.444 INFO    ] 2026-06-13 00:58:37
[2026-06-13 00:58:37,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:58:37,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:58:37,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:58:37,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:58:37,881.881 INFO    ] time= 13/06/2026 00:58:37
[2026-06-13 00:58:37,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:58:37,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:58:38,026.026 INFO    ] No existing commands found in stream
[2026-06-13 00:58:43,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:43,041.041 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 00:58:45,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:58:45,317.317 INFO    ] Checking for system updates...
[2026-06-13 00:58:45,339.339 INFO    ] 200
[2026-06-13 00:58:45,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:45,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:58:45,373.373 INFO    ] No update needed
[2026-06-13 00:58:45,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:45,395.395 INFO    ] 200
[2026-06-13 00:58:45,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:45,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:45,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:58:45,460.460 INFO    ] No camera update needed
[2026-06-13 00:58:45,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:45,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:45,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:45,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:58:47,509.509 INFO    ] ================================================
[2026-06-13 00:58:47,524.524 INFO    ] Launching Daemon at Sat Jun 13 00:58:47 IST 2026
[2026-06-13 00:58:47,535.535 INFO    ] ================================================
[2026-06-13 00:58:47,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:58:47
[2026-06-13 00:58:48,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:58:48,346.346 INFO    ] Initializing speech engine...
[2026-06-13 00:58:48,351.351 INFO    ] 2026-06-13 00:58:48
[2026-06-13 00:58:48,555.555 INFO    ] 2026-06-13 00:58:48
[2026-06-13 00:58:48,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:58:48,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:58:48,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:58:48,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:58:48,945.945 INFO    ] time= 13/06/2026 00:58:48
[2026-06-13 00:58:48,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:58:48,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:58:49,070.070 INFO    ] No existing commands found in stream
[2026-06-13 00:58:54,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:58:54,087.087 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 00:58:57,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:58:57,914.914 INFO    ] Checking for system updates...
[2026-06-13 00:58:57,936.936 INFO    ] 200
[2026-06-13 00:58:57,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:57,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:57,969.969 INFO    ] No update needed
[2026-06-13 00:58:57,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 00:58:57,990.990 INFO    ] 200
[2026-06-13 00:58:57,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:58:58,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:58:58,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:58:58,054.054 INFO    ] No camera update needed
[2026-06-13 00:58:58,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:58:58,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:58:58,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:58:58,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:00,101.101 INFO    ] ================================================
[2026-06-13 00:59:00,116.116 INFO    ] Launching Daemon at Sat Jun 13 00:59:00 IST 2026
[2026-06-13 00:59:00,127.127 INFO    ] ================================================
[2026-06-13 00:59:00,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:00
[2026-06-13 00:59:00,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:00,919.919 INFO    ] Initializing speech engine...
[2026-06-13 00:59:00,924.924 INFO    ] 2026-06-13 00:59:00
[2026-06-13 00:59:01,128.128 INFO    ] 2026-06-13 00:59:01
[2026-06-13 00:59:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:01,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:01,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:01,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:01,522.522 INFO    ] time= 13/06/2026 00:59:01
[2026-06-13 00:59:01,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:01,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:01,581.581 INFO    ] No existing commands found in stream
[2026-06-13 00:59:06,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:59:06,594.594 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 00:59:08,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 00:59:08,256.256 INFO    ] Checking for system updates...
[2026-06-13 00:59:08,278.278 INFO    ] 200
[2026-06-13 00:59:08,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:08,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:59:08,313.313 INFO    ] No update needed
[2026-06-13 00:59:08,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 00:59:08,335.335 INFO    ] 200
[2026-06-13 00:59:08,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:08,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:59:08,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:08,407.407 INFO    ] No camera update needed
[2026-06-13 00:59:08,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:59:08,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:59:08,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:59:08,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:10,456.456 INFO    ] ================================================
[2026-06-13 00:59:10,471.471 INFO    ] Launching Daemon at Sat Jun 13 00:59:10 IST 2026
[2026-06-13 00:59:10,481.481 INFO    ] ================================================
[2026-06-13 00:59:10,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:10
[2026-06-13 00:59:11,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:11,297.297 INFO    ] Initializing speech engine...
[2026-06-13 00:59:11,308.308 INFO    ] 2026-06-13 00:59:11
[2026-06-13 00:59:11,522.522 INFO    ] 2026-06-13 00:59:11
[2026-06-13 00:59:11,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:11,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:11,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:11,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:11,970.970 INFO    ] time= 13/06/2026 00:59:11
[2026-06-13 00:59:11,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:12,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:12,076.076 INFO    ] No existing commands found in stream
[2026-06-13 00:59:17,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:59:17,087.087 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 00:59:20,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 00:59:20,845.845 INFO    ] Checking for system updates...
[2026-06-13 00:59:20,865.865 INFO    ] 200
[2026-06-13 00:59:20,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:20,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:20,900.900 INFO    ] No update needed
[2026-06-13 00:59:20,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 00:59:20,920.920 INFO    ] 200
[2026-06-13 00:59:20,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:20,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:59:20,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:20,986.986 INFO    ] No camera update needed
[2026-06-13 00:59:20,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:59:20,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:59:20,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:59:20,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:23,037.037 INFO    ] ================================================
[2026-06-13 00:59:23,052.052 INFO    ] Launching Daemon at Sat Jun 13 00:59:23 IST 2026
[2026-06-13 00:59:23,063.063 INFO    ] ================================================
[2026-06-13 00:59:23,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:23
[2026-06-13 00:59:23,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:23,843.843 INFO    ] Initializing speech engine...
[2026-06-13 00:59:23,855.855 INFO    ] 2026-06-13 00:59:23
[2026-06-13 00:59:24,061.061 INFO    ] 2026-06-13 00:59:24
[2026-06-13 00:59:24,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:24,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:24,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:24,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:24,471.471 INFO    ] time= 13/06/2026 00:59:24
[2026-06-13 00:59:24,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:24,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:24,675.675 INFO    ] No existing commands found in stream
[2026-06-13 00:59:29,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:59:29,688.688 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 00:59:31,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 00:59:31,350.350 INFO    ] Checking for system updates...
[2026-06-13 00:59:31,371.371 INFO    ] 200
[2026-06-13 00:59:31,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:31,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:59:31,403.403 INFO    ] No update needed
[2026-06-13 00:59:31,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 00:59:31,425.425 INFO    ] 200
[2026-06-13 00:59:31,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:31,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:59:31,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 00:59:31,506.506 INFO    ] No camera update needed
[2026-06-13 00:59:31,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:59:31,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:59:31,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:59:31,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:33,550.550 INFO    ] ================================================
[2026-06-13 00:59:33,565.565 INFO    ] Launching Daemon at Sat Jun 13 00:59:33 IST 2026
[2026-06-13 00:59:33,576.576 INFO    ] ================================================
[2026-06-13 00:59:33,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:33
[2026-06-13 00:59:34,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:34,435.435 INFO    ] Initializing speech engine...
[2026-06-13 00:59:34,441.441 INFO    ] 2026-06-13 00:59:34
[2026-06-13 00:59:34,648.648 INFO    ] 2026-06-13 00:59:34
[2026-06-13 00:59:34,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:34,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:34,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:35,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:35,066.066 INFO    ] time= 13/06/2026 00:59:35
[2026-06-13 00:59:35,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:35,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:35,166.166 INFO    ] No existing commands found in stream
[2026-06-13 00:59:40,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:59:40,184.184 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 00:59:41,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 00:59:41,615.615 INFO    ] Checking for system updates...
[2026-06-13 00:59:41,636.636 INFO    ] 200
[2026-06-13 00:59:41,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:41,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:41,672.672 INFO    ] No update needed
[2026-06-13 00:59:41,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 00:59:41,695.695 INFO    ] 200
[2026-06-13 00:59:41,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:41,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:59:41,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:41,781.781 INFO    ] No camera update needed
[2026-06-13 00:59:41,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:59:41,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:59:41,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:59:41,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:43,829.829 INFO    ] ================================================
[2026-06-13 00:59:43,843.843 INFO    ] Launching Daemon at Sat Jun 13 00:59:43 IST 2026
[2026-06-13 00:59:43,854.854 INFO    ] ================================================
[2026-06-13 00:59:44,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:44
[2026-06-13 00:59:44,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:44,662.662 INFO    ] Initializing speech engine...
[2026-06-13 00:59:44,676.676 INFO    ] 2026-06-13 00:59:44
[2026-06-13 00:59:44,891.891 INFO    ] 2026-06-13 00:59:44
[2026-06-13 00:59:44,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:45,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:45,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:45,326.326 INFO    ] time= 13/06/2026 00:59:45
[2026-06-13 00:59:45,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:45,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:45,447.447 INFO    ] No existing commands found in stream
[2026-06-13 00:59:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 00:59:50,461.461 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 00:59:53,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 00:59:53,950.950 INFO    ] Checking for system updates...
[2026-06-13 00:59:53,971.971 INFO    ] 200
[2026-06-13 00:59:53,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:54,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:54,006.006 INFO    ] No update needed
[2026-06-13 00:59:54,008.008 INFO    ] Checking for camera pi updates...
[2026-06-13 00:59:54,027.027 INFO    ] 200
[2026-06-13 00:59:54,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 00:59:54,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 00:59:54,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 00:59:54,092.092 INFO    ] No camera update needed
[2026-06-13 00:59:54,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 00:59:54,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 00:59:54,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 00:59:54,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 00:59:56,139.139 INFO    ] ================================================
[2026-06-13 00:59:56,154.154 INFO    ] Launching Daemon at Sat Jun 13 00:59:56 IST 2026
[2026-06-13 00:59:56,165.165 INFO    ] ================================================
[2026-06-13 00:59:56,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 00:59:56
[2026-06-13 00:59:56,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 00:59:56,978.978 INFO    ] Initializing speech engine...
[2026-06-13 00:59:56,987.987 INFO    ] 2026-06-13 00:59:56
[2026-06-13 00:59:57,198.198 INFO    ] 2026-06-13 00:59:57
[2026-06-13 00:59:57,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 00:59:57,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 00:59:57,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 00:59:57,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 00:59:57,647.647 INFO    ] time= 13/06/2026 00:59:57
[2026-06-13 00:59:57,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 00:59:57,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 00:59:57,775.775 INFO    ] No existing commands found in stream
[2026-06-13 01:00:02,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:00:02,791.791 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 01:00:07,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:00:07,504.504 INFO    ] Checking for system updates...
[2026-06-13 01:00:07,547.547 INFO    ] 200
[2026-06-13 01:00:07,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:07,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:00:07,606.606 INFO    ] No update needed
[2026-06-13 01:00:07,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 01:00:07,637.637 INFO    ] 200
[2026-06-13 01:00:07,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:07,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:00:07,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:00:07,704.704 INFO    ] No camera update needed
[2026-06-13 01:00:07,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:00:07,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:00:07,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:00:07,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:00:09,752.752 INFO    ] ================================================
[2026-06-13 01:00:09,768.768 INFO    ] Launching Daemon at Sat Jun 13 01:00:09 IST 2026
[2026-06-13 01:00:09,779.779 INFO    ] ================================================
[2026-06-13 01:00:10,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:00:10
[2026-06-13 01:00:10,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:00:10,648.648 INFO    ] Initializing speech engine...
[2026-06-13 01:00:10,654.654 INFO    ] 2026-06-13 01:00:10
[2026-06-13 01:00:10,868.868 INFO    ] 2026-06-13 01:00:10
[2026-06-13 01:00:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:00:11,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:00:11,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:00:11,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:00:11,283.283 INFO    ] time= 13/06/2026 01:00:11
[2026-06-13 01:00:11,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:00:11,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:00:11,396.396 INFO    ] No existing commands found in stream
[2026-06-13 01:00:16,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:00:16,414.414 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 01:00:18,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:00:18,891.891 INFO    ] Checking for system updates...
[2026-06-13 01:00:18,912.912 INFO    ] 200
[2026-06-13 01:00:18,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:18,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:00:18,946.946 INFO    ] No update needed
[2026-06-13 01:00:18,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 01:00:18,968.968 INFO    ] 200
[2026-06-13 01:00:18,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:18,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:00:19,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:00:19,027.027 INFO    ] No camera update needed
[2026-06-13 01:00:19,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:00:19,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:00:19,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:00:19,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:00:21,078.078 INFO    ] ================================================
[2026-06-13 01:00:21,094.094 INFO    ] Launching Daemon at Sat Jun 13 01:00:21 IST 2026
[2026-06-13 01:00:21,105.105 INFO    ] ================================================
[2026-06-13 01:00:21,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:00:21
[2026-06-13 01:00:21,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:00:21,899.899 INFO    ] Initializing speech engine...
[2026-06-13 01:00:21,902.902 INFO    ] 2026-06-13 01:00:21
[2026-06-13 01:00:22,120.120 INFO    ] 2026-06-13 01:00:22
[2026-06-13 01:00:22,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:00:22,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:00:22,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:00:22,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:00:22,542.542 INFO    ] time= 13/06/2026 01:00:22
[2026-06-13 01:00:22,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:00:22,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:00:22,643.643 INFO    ] No existing commands found in stream
[2026-06-13 01:00:27,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:00:27,656.656 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 01:00:31,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:00:31,236.236 INFO    ] Checking for system updates...
[2026-06-13 01:00:31,257.257 INFO    ] 200
[2026-06-13 01:00:31,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:31,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:00:31,294.294 INFO    ] No update needed
[2026-06-13 01:00:31,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 01:00:31,326.326 INFO    ] 200
[2026-06-13 01:00:31,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:31,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:00:31,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:00:31,405.405 INFO    ] No camera update needed
[2026-06-13 01:00:31,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:00:31,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:00:31,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:00:31,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:00:33,457.457 INFO    ] ================================================
[2026-06-13 01:00:33,473.473 INFO    ] Launching Daemon at Sat Jun 13 01:00:33 IST 2026
[2026-06-13 01:00:33,484.484 INFO    ] ================================================
[2026-06-13 01:00:34,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:00:34
[2026-06-13 01:00:34,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:00:34,728.728 INFO    ] Initializing speech engine...
[2026-06-13 01:00:34,736.736 INFO    ] 2026-06-13 01:00:34
[2026-06-13 01:00:34,935.935 INFO    ] 2026-06-13 01:00:34
[2026-06-13 01:00:34,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:00:35,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:00:35,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:00:35,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:00:35,417.417 INFO    ] time= 13/06/2026 01:00:35
[2026-06-13 01:00:35,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:00:35,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:00:35,558.558 INFO    ] No existing commands found in stream
[2026-06-13 01:00:40,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:00:40,570.570 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 01:00:44,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:00:44,896.896 INFO    ] Checking for system updates...
[2026-06-13 01:00:44,916.916 INFO    ] 200
[2026-06-13 01:00:44,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:44,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:00:44,952.952 INFO    ] No update needed
[2026-06-13 01:00:44,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 01:00:44,975.975 INFO    ] 200
[2026-06-13 01:00:44,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:44,999.999 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:00:45,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:00:45,144.144 INFO    ] No camera update needed
[2026-06-13 01:00:45,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:00:45,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:00:45,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:00:45,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:00:47,192.192 INFO    ] ================================================
[2026-06-13 01:00:47,208.208 INFO    ] Launching Daemon at Sat Jun 13 01:00:47 IST 2026
[2026-06-13 01:00:47,221.221 INFO    ] ================================================
[2026-06-13 01:00:47,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:00:47
[2026-06-13 01:00:47,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:00:48,022.022 INFO    ] Initializing speech engine...
[2026-06-13 01:00:48,026.026 INFO    ] 2026-06-13 01:00:48
[2026-06-13 01:00:48,259.259 INFO    ] 2026-06-13 01:00:48
[2026-06-13 01:00:48,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:00:48,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:00:48,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:00:48,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:00:48,674.674 INFO    ] time= 13/06/2026 01:00:48
[2026-06-13 01:00:48,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:00:48,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:00:48,831.831 INFO    ] No existing commands found in stream
[2026-06-13 01:00:53,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:00:53,844.844 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 01:00:55,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:00:55,632.632 INFO    ] Checking for system updates...
[2026-06-13 01:00:55,654.654 INFO    ] 200
[2026-06-13 01:00:55,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:55,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:00:55,687.687 INFO    ] No update needed
[2026-06-13 01:00:55,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 01:00:55,708.708 INFO    ] 200
[2026-06-13 01:00:55,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:00:55,735.735 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:00:55,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:00:55,776.776 INFO    ] No camera update needed
[2026-06-13 01:00:55,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:00:55,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:00:55,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:00:55,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:00:57,828.828 INFO    ] ================================================
[2026-06-13 01:00:57,843.843 INFO    ] Launching Daemon at Sat Jun 13 01:00:57 IST 2026
[2026-06-13 01:00:57,855.855 INFO    ] ================================================
[2026-06-13 01:00:58,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:00:58
[2026-06-13 01:00:58,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:00:58,737.737 INFO    ] Initializing speech engine...
[2026-06-13 01:00:58,743.743 INFO    ] 2026-06-13 01:00:58
[2026-06-13 01:00:58,954.954 INFO    ] 2026-06-13 01:00:58
[2026-06-13 01:00:58,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:00:59,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:00:59,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:00:59,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:00:59,380.380 INFO    ] time= 13/06/2026 01:00:59
[2026-06-13 01:00:59,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:00:59,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:00:59,475.475 INFO    ] No existing commands found in stream
[2026-06-13 01:01:04,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:01:04,487.487 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 01:01:07,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:01:07,696.696 INFO    ] Checking for system updates...
[2026-06-13 01:01:07,719.719 INFO    ] 200
[2026-06-13 01:01:07,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:07,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:01:07,754.754 INFO    ] No update needed
[2026-06-13 01:01:07,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 01:01:07,776.776 INFO    ] 200
[2026-06-13 01:01:07,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:07,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:01:07,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:07,843.843 INFO    ] No camera update needed
[2026-06-13 01:01:07,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:01:07,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:01:07,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:01:07,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:01:09,882.882 INFO    ] ================================================
[2026-06-13 01:01:09,891.891 INFO    ] Launching Daemon at Sat Jun 13 01:01:09 IST 2026
[2026-06-13 01:01:09,897.897 INFO    ] ================================================
[2026-06-13 01:01:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:01:10
[2026-06-13 01:01:10,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:01:10,663.663 INFO    ] Initializing speech engine...
[2026-06-13 01:01:10,674.674 INFO    ] 2026-06-13 01:01:10
[2026-06-13 01:01:10,888.888 INFO    ] 2026-06-13 01:01:10
[2026-06-13 01:01:10,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:01:11,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:01:11,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:01:11,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:01:11,337.337 INFO    ] time= 13/06/2026 01:01:11
[2026-06-13 01:01:11,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:01:11,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:01:11,472.472 INFO    ] No existing commands found in stream
[2026-06-13 01:01:16,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:01:16,507.507 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 01:01:20,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:01:20,833.833 INFO    ] Checking for system updates...
[2026-06-13 01:01:20,854.854 INFO    ] 200
[2026-06-13 01:01:20,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:20,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:01:20,890.890 INFO    ] No update needed
[2026-06-13 01:01:20,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 01:01:20,912.912 INFO    ] 200
[2026-06-13 01:01:20,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:20,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:01:20,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:01:20,983.983 INFO    ] No camera update needed
[2026-06-13 01:01:20,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:01:20,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:01:20,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:01:20,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:01:23,030.030 INFO    ] ================================================
[2026-06-13 01:01:23,045.045 INFO    ] Launching Daemon at Sat Jun 13 01:01:23 IST 2026
[2026-06-13 01:01:23,057.057 INFO    ] ================================================
[2026-06-13 01:01:23,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:01:23
[2026-06-13 01:01:23,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:01:23,926.926 INFO    ] Initializing speech engine...
[2026-06-13 01:01:23,932.932 INFO    ] 2026-06-13 01:01:23
[2026-06-13 01:01:24,140.140 INFO    ] 2026-06-13 01:01:24
[2026-06-13 01:01:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:01:24,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:01:24,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:01:24,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:01:24,548.548 INFO    ] time= 13/06/2026 01:01:24
[2026-06-13 01:01:24,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:01:24,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:01:24,660.660 INFO    ] No existing commands found in stream
[2026-06-13 01:01:29,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:01:29,674.674 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 01:01:30,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:01:30,716.716 INFO    ] Checking for system updates...
[2026-06-13 01:01:30,737.737 INFO    ] 200
[2026-06-13 01:01:30,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:30,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:30,771.771 INFO    ] No update needed
[2026-06-13 01:01:30,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 01:01:30,792.792 INFO    ] 200
[2026-06-13 01:01:30,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:30,817.817 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:01:30,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:01:30,847.847 INFO    ] No camera update needed
[2026-06-13 01:01:30,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:01:30,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:01:30,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:01:30,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:01:32,892.892 INFO    ] ================================================
[2026-06-13 01:01:32,909.909 INFO    ] Launching Daemon at Sat Jun 13 01:01:32 IST 2026
[2026-06-13 01:01:32,920.920 INFO    ] ================================================
[2026-06-13 01:01:33,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:01:33
[2026-06-13 01:01:33,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:01:34,189.189 INFO    ] Initializing speech engine...
[2026-06-13 01:01:34,202.202 INFO    ] 2026-06-13 01:01:34
[2026-06-13 01:01:34,512.512 INFO    ] 2026-06-13 01:01:34
[2026-06-13 01:01:34,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:01:34,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:01:34,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:01:34,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:01:35,023.023 INFO    ] time= 13/06/2026 01:01:34
[2026-06-13 01:01:35,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:01:35,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:01:35,179.179 INFO    ] No existing commands found in stream
[2026-06-13 01:01:40,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:01:40,217.217 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 01:01:42,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:01:42,899.899 INFO    ] Checking for system updates...
[2026-06-13 01:01:42,921.921 INFO    ] 200
[2026-06-13 01:01:42,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:42,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:42,957.957 INFO    ] No update needed
[2026-06-13 01:01:42,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 01:01:42,979.979 INFO    ] 200
[2026-06-13 01:01:42,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:43,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:01:43,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:43,053.053 INFO    ] No camera update needed
[2026-06-13 01:01:43,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:01:43,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:01:43,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:01:43,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:01:45,102.102 INFO    ] ================================================
[2026-06-13 01:01:45,122.122 INFO    ] Launching Daemon at Sat Jun 13 01:01:45 IST 2026
[2026-06-13 01:01:45,133.133 INFO    ] ================================================
[2026-06-13 01:01:45,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:01:45
[2026-06-13 01:01:45,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:01:45,920.920 INFO    ] Initializing speech engine...
[2026-06-13 01:01:45,933.933 INFO    ] 2026-06-13 01:01:45
[2026-06-13 01:01:46,140.140 INFO    ] 2026-06-13 01:01:46
[2026-06-13 01:01:46,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:01:46,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:01:46,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:01:46,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:01:46,556.556 INFO    ] time= 13/06/2026 01:01:46
[2026-06-13 01:01:46,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:01:46,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:01:46,656.656 INFO    ] No existing commands found in stream
[2026-06-13 01:01:51,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:01:51,668.668 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 01:01:55,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:01:55,091.091 INFO    ] Checking for system updates...
[2026-06-13 01:01:55,114.114 INFO    ] 200
[2026-06-13 01:01:55,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:55,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:55,149.149 INFO    ] No update needed
[2026-06-13 01:01:55,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 01:01:55,171.171 INFO    ] 200
[2026-06-13 01:01:55,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:01:55,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:01:55,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:01:55,234.234 INFO    ] No camera update needed
[2026-06-13 01:01:55,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:01:55,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:01:55,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:01:55,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:01:57,282.282 INFO    ] ================================================
[2026-06-13 01:01:57,297.297 INFO    ] Launching Daemon at Sat Jun 13 01:01:57 IST 2026
[2026-06-13 01:01:57,308.308 INFO    ] ================================================
[2026-06-13 01:01:57,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:01:57
[2026-06-13 01:01:58,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:01:58,178.178 INFO    ] Initializing speech engine...
[2026-06-13 01:01:58,186.186 INFO    ] 2026-06-13 01:01:58
[2026-06-13 01:01:58,395.395 INFO    ] 2026-06-13 01:01:58
[2026-06-13 01:01:58,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:01:58,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:01:58,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:01:58,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:01:58,796.796 INFO    ] time= 13/06/2026 01:01:58
[2026-06-13 01:01:58,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:01:58,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:01:58,914.914 INFO    ] No existing commands found in stream
[2026-06-13 01:02:03,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:03,931.931 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 01:02:06,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:02:06,308.308 INFO    ] Checking for system updates...
[2026-06-13 01:02:06,329.329 INFO    ] 200
[2026-06-13 01:02:06,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:06,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:02:06,364.364 INFO    ] No update needed
[2026-06-13 01:02:06,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 01:02:06,384.384 INFO    ] 200
[2026-06-13 01:02:06,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:06,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:02:06,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:02:06,454.454 INFO    ] No camera update needed
[2026-06-13 01:02:06,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:02:06,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:02:06,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:02:06,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:02:08,503.503 INFO    ] ================================================
[2026-06-13 01:02:08,519.519 INFO    ] Launching Daemon at Sat Jun 13 01:02:08 IST 2026
[2026-06-13 01:02:08,529.529 INFO    ] ================================================
[2026-06-13 01:02:08,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:02:08
[2026-06-13 01:02:09,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:02:09,366.366 INFO    ] Initializing speech engine...
[2026-06-13 01:02:09,369.369 INFO    ] 2026-06-13 01:02:09
[2026-06-13 01:02:09,575.575 INFO    ] 2026-06-13 01:02:09
[2026-06-13 01:02:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:02:09,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:02:09,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:02:09,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:02:09,998.998 INFO    ] time= 13/06/2026 01:02:09
[2026-06-13 01:02:10,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:02:10,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:02:10,095.095 INFO    ] No existing commands found in stream
[2026-06-13 01:02:15,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:15,113.113 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 01:02:16,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:02:16,328.328 INFO    ] Checking for system updates...
[2026-06-13 01:02:16,350.350 INFO    ] 200
[2026-06-13 01:02:16,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:16,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:02:16,386.386 INFO    ] No update needed
[2026-06-13 01:02:16,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 01:02:16,409.409 INFO    ] 200
[2026-06-13 01:02:16,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:16,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:02:16,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:02:16,479.479 INFO    ] No camera update needed
[2026-06-13 01:02:16,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:02:16,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:02:16,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:02:16,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:02:18,529.529 INFO    ] ================================================
[2026-06-13 01:02:18,545.545 INFO    ] Launching Daemon at Sat Jun 13 01:02:18 IST 2026
[2026-06-13 01:02:18,556.556 INFO    ] ================================================
[2026-06-13 01:02:18,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:02:18
[2026-06-13 01:02:19,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:02:19,379.379 INFO    ] Initializing speech engine...
[2026-06-13 01:02:19,384.384 INFO    ] 2026-06-13 01:02:19
[2026-06-13 01:02:19,589.589 INFO    ] 2026-06-13 01:02:19
[2026-06-13 01:02:19,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:02:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:02:19,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:02:19,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:02:19,987.987 INFO    ] time= 13/06/2026 01:02:19
[2026-06-13 01:02:20,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:02:20,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:02:20,101.101 INFO    ] No existing commands found in stream
[2026-06-13 01:02:25,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:25,114.114 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 01:02:27,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:02:27,616.616 INFO    ] Checking for system updates...
[2026-06-13 01:02:27,637.637 INFO    ] 200
[2026-06-13 01:02:27,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:27,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:02:27,670.670 INFO    ] No update needed
[2026-06-13 01:02:27,671.671 INFO    ] Checking for camera pi updates...
[2026-06-13 01:02:27,691.691 INFO    ] 200
[2026-06-13 01:02:27,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:27,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:02:27,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:02:27,760.760 INFO    ] No camera update needed
[2026-06-13 01:02:27,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:02:27,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:02:27,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:02:27,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:02:29,810.810 INFO    ] ================================================
[2026-06-13 01:02:29,825.825 INFO    ] Launching Daemon at Sat Jun 13 01:02:29 IST 2026
[2026-06-13 01:02:29,836.836 INFO    ] ================================================
[2026-06-13 01:02:30,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:02:30
[2026-06-13 01:02:30,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:02:30,623.623 INFO    ] Initializing speech engine...
[2026-06-13 01:02:30,629.629 INFO    ] 2026-06-13 01:02:30
[2026-06-13 01:02:30,846.846 INFO    ] 2026-06-13 01:02:30
[2026-06-13 01:02:30,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:02:31,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:02:31,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:02:31,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:02:31,270.270 INFO    ] time= 13/06/2026 01:02:31
[2026-06-13 01:02:31,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:02:31,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:02:31,424.424 INFO    ] No existing commands found in stream
[2026-06-13 01:02:36,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:36,441.441 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 01:02:39,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:02:39,060.060 INFO    ] Checking for system updates...
[2026-06-13 01:02:39,081.081 INFO    ] 200
[2026-06-13 01:02:39,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:39,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:02:39,115.115 INFO    ] No update needed
[2026-06-13 01:02:39,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 01:02:39,136.136 INFO    ] 200
[2026-06-13 01:02:39,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:39,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:02:39,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:02:39,206.206 INFO    ] No camera update needed
[2026-06-13 01:02:39,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:02:39,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:02:39,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:02:39,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:02:41,256.256 INFO    ] ================================================
[2026-06-13 01:02:41,271.271 INFO    ] Launching Daemon at Sat Jun 13 01:02:41 IST 2026
[2026-06-13 01:02:41,282.282 INFO    ] ================================================
[2026-06-13 01:02:41,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:02:41
[2026-06-13 01:02:41,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:02:42,088.088 INFO    ] Initializing speech engine...
[2026-06-13 01:02:42,092.092 INFO    ] 2026-06-13 01:02:42
[2026-06-13 01:02:42,307.307 INFO    ] 2026-06-13 01:02:42
[2026-06-13 01:02:42,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:02:42,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:02:42,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:02:42,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:02:42,716.716 INFO    ] time= 13/06/2026 01:02:42
[2026-06-13 01:02:42,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:02:42,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:02:42,858.858 INFO    ] No existing commands found in stream
[2026-06-13 01:02:47,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:47,870.870 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 01:02:48,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:02:48,863.863 INFO    ] Checking for system updates...
[2026-06-13 01:02:48,883.883 INFO    ] 200
[2026-06-13 01:02:48,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:48,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:02:48,919.919 INFO    ] No update needed
[2026-06-13 01:02:48,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 01:02:48,940.940 INFO    ] 200
[2026-06-13 01:02:48,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:02:48,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:02:49,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:02:49,103.103 INFO    ] No camera update needed
[2026-06-13 01:02:49,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:02:49,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:02:49,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:02:49,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:02:51,152.152 INFO    ] ================================================
[2026-06-13 01:02:51,168.168 INFO    ] Launching Daemon at Sat Jun 13 01:02:51 IST 2026
[2026-06-13 01:02:51,179.179 INFO    ] ================================================
[2026-06-13 01:02:51,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:02:51
[2026-06-13 01:02:51,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:02:52,177.177 INFO    ] Initializing speech engine...
[2026-06-13 01:02:52,190.190 INFO    ] 2026-06-13 01:02:52
[2026-06-13 01:02:52,465.465 INFO    ] 2026-06-13 01:02:52
[2026-06-13 01:02:52,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:02:52,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:02:52,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:02:52,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:02:52,947.947 INFO    ] time= 13/06/2026 01:02:52
[2026-06-13 01:02:53,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:02:53,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:02:53,176.176 INFO    ] No existing commands found in stream
[2026-06-13 01:02:58,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:02:58,206.206 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 01:03:00,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:03:00,733.733 INFO    ] Checking for system updates...
[2026-06-13 01:03:00,754.754 INFO    ] 200
[2026-06-13 01:03:00,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:00,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:03:00,791.791 INFO    ] No update needed
[2026-06-13 01:03:00,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:00,812.812 INFO    ] 200
[2026-06-13 01:03:00,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:00,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:00,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:03:00,876.876 INFO    ] No camera update needed
[2026-06-13 01:03:00,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:00,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:00,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:00,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:02,915.915 INFO    ] ================================================
[2026-06-13 01:03:02,923.923 INFO    ] Launching Daemon at Sat Jun 13 01:03:02 IST 2026
[2026-06-13 01:03:02,929.929 INFO    ] ================================================
[2026-06-13 01:03:03,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:03
[2026-06-13 01:03:03,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:03,762.762 INFO    ] Initializing speech engine...
[2026-06-13 01:03:03,766.766 INFO    ] 2026-06-13 01:03:03
[2026-06-13 01:03:03,974.974 INFO    ] 2026-06-13 01:03:03
[2026-06-13 01:03:04,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:03:04,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:03:04,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:03:04,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:03:04,390.390 INFO    ] time= 13/06/2026 01:03:04
[2026-06-13 01:03:04,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:03:04,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:03:04,496.496 INFO    ] No existing commands found in stream
[2026-06-13 01:03:09,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:03:09,510.510 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 01:03:10,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:03:10,336.336 INFO    ] Checking for system updates...
[2026-06-13 01:03:10,357.357 INFO    ] 200
[2026-06-13 01:03:10,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:10,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:03:10,392.392 INFO    ] No update needed
[2026-06-13 01:03:10,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:10,413.413 INFO    ] 200
[2026-06-13 01:03:10,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:10,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:10,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:10,487.487 INFO    ] No camera update needed
[2026-06-13 01:03:10,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:10,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:10,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:10,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:12,534.534 INFO    ] ================================================
[2026-06-13 01:03:12,550.550 INFO    ] Launching Daemon at Sat Jun 13 01:03:12 IST 2026
[2026-06-13 01:03:12,561.561 INFO    ] ================================================
[2026-06-13 01:03:12,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:12
[2026-06-13 01:03:13,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:13,411.411 INFO    ] Initializing speech engine...
[2026-06-13 01:03:13,417.417 INFO    ] 2026-06-13 01:03:13
[2026-06-13 01:03:13,625.625 INFO    ] 2026-06-13 01:03:13
[2026-06-13 01:03:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:03:13,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:03:13,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:03:13,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:03:14,036.036 INFO    ] time= 13/06/2026 01:03:13
[2026-06-13 01:03:14,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:03:14,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:03:14,142.142 INFO    ] No existing commands found in stream
[2026-06-13 01:03:19,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:03:19,155.155 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 01:03:22,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:03:22,077.077 INFO    ] Checking for system updates...
[2026-06-13 01:03:22,100.100 INFO    ] 200
[2026-06-13 01:03:22,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:22,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:22,135.135 INFO    ] No update needed
[2026-06-13 01:03:22,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:22,157.157 INFO    ] 200
[2026-06-13 01:03:22,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:22,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:22,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:22,218.218 INFO    ] No camera update needed
[2026-06-13 01:03:22,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:22,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:22,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:22,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:24,264.264 INFO    ] ================================================
[2026-06-13 01:03:24,279.279 INFO    ] Launching Daemon at Sat Jun 13 01:03:24 IST 2026
[2026-06-13 01:03:24,290.290 INFO    ] ================================================
[2026-06-13 01:03:24,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:24
[2026-06-13 01:03:24,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:25,097.097 INFO    ] Initializing speech engine...
[2026-06-13 01:03:25,102.102 INFO    ] 2026-06-13 01:03:25
[2026-06-13 01:03:25,311.311 INFO    ] 2026-06-13 01:03:25
[2026-06-13 01:03:25,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:03:25,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:03:25,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:03:25,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:03:25,722.722 INFO    ] time= 13/06/2026 01:03:25
[2026-06-13 01:03:25,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:03:25,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:03:25,943.943 INFO    ] No existing commands found in stream
[2026-06-13 01:03:30,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:03:30,961.961 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 01:03:34,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:03:34,766.766 INFO    ] Checking for system updates...
[2026-06-13 01:03:34,788.788 INFO    ] 200
[2026-06-13 01:03:34,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:34,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:34,821.821 INFO    ] No update needed
[2026-06-13 01:03:34,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:34,842.842 INFO    ] 200
[2026-06-13 01:03:34,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:34,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:34,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:34,907.907 INFO    ] No camera update needed
[2026-06-13 01:03:34,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:34,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:34,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:34,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:36,955.955 INFO    ] ================================================
[2026-06-13 01:03:36,970.970 INFO    ] Launching Daemon at Sat Jun 13 01:03:36 IST 2026
[2026-06-13 01:03:36,980.980 INFO    ] ================================================
[2026-06-13 01:03:37,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:37
[2026-06-13 01:03:37,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:37,797.797 INFO    ] Initializing speech engine...
[2026-06-13 01:03:37,807.807 INFO    ] 2026-06-13 01:03:37
[2026-06-13 01:03:38,010.010 INFO    ] 2026-06-13 01:03:37
[2026-06-13 01:03:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:03:38,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:03:38,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:03:38,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:03:38,410.410 INFO    ] time= 13/06/2026 01:03:38
[2026-06-13 01:03:38,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:03:38,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:03:38,525.525 INFO    ] No existing commands found in stream
[2026-06-13 01:03:43,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:03:43,538.538 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 01:03:43,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:03:43,842.842 INFO    ] Checking for system updates...
[2026-06-13 01:03:43,864.864 INFO    ] 200
[2026-06-13 01:03:43,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:43,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:43,897.897 INFO    ] No update needed
[2026-06-13 01:03:43,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:43,918.918 INFO    ] 200
[2026-06-13 01:03:43,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:43,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:44,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:03:44,001.001 INFO    ] No camera update needed
[2026-06-13 01:03:44,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:44,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:44,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:44,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:46,054.054 INFO    ] ================================================
[2026-06-13 01:03:46,070.070 INFO    ] Launching Daemon at Sat Jun 13 01:03:46 IST 2026
[2026-06-13 01:03:46,080.080 INFO    ] ================================================
[2026-06-13 01:03:46,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:46
[2026-06-13 01:03:46,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:46,851.851 INFO    ] Initializing speech engine...
[2026-06-13 01:03:46,861.861 INFO    ] 2026-06-13 01:03:46
[2026-06-13 01:03:47,066.066 INFO    ] 2026-06-13 01:03:47
[2026-06-13 01:03:47,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:03:47,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:03:47,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:03:47,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:03:47,446.446 INFO    ] time= 13/06/2026 01:03:47
[2026-06-13 01:03:47,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:03:47,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:03:47,582.582 INFO    ] No existing commands found in stream
[2026-06-13 01:03:52,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:03:52,594.594 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 01:03:56,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:03:56,823.823 INFO    ] Checking for system updates...
[2026-06-13 01:03:56,844.844 INFO    ] 200
[2026-06-13 01:03:56,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:56,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:56,879.879 INFO    ] No update needed
[2026-06-13 01:03:56,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 01:03:56,901.901 INFO    ] 200
[2026-06-13 01:03:56,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:03:56,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:03:56,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:03:56,967.967 INFO    ] No camera update needed
[2026-06-13 01:03:56,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:03:56,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:03:56,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:03:56,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:03:59,015.015 INFO    ] ================================================
[2026-06-13 01:03:59,030.030 INFO    ] Launching Daemon at Sat Jun 13 01:03:59 IST 2026
[2026-06-13 01:03:59,041.041 INFO    ] ================================================
[2026-06-13 01:03:59,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:03:59
[2026-06-13 01:03:59,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:03:59,998.998 INFO    ] Initializing speech engine...
[2026-06-13 01:04:00,005.005 INFO    ] 2026-06-13 01:04:00
[2026-06-13 01:04:00,274.274 INFO    ] 2026-06-13 01:04:00
[2026-06-13 01:04:00,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:04:00,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:04:00,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:04:00,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:04:00,726.726 INFO    ] time= 13/06/2026 01:04:00
[2026-06-13 01:04:00,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:04:00,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:04:00,960.960 INFO    ] No existing commands found in stream
[2026-06-13 01:04:05,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:04:05,973.973 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 01:04:09,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:04:09,832.832 INFO    ] Checking for system updates...
[2026-06-13 01:04:09,853.853 INFO    ] 200
[2026-06-13 01:04:09,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:09,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:09,886.886 INFO    ] No update needed
[2026-06-13 01:04:09,887.887 INFO    ] Checking for camera pi updates...
[2026-06-13 01:04:09,907.907 INFO    ] 200
[2026-06-13 01:04:09,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:09,933.933 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:04:09,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:09,971.971 INFO    ] No camera update needed
[2026-06-13 01:04:09,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:04:09,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:04:09,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:04:09,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:04:12,019.019 INFO    ] ================================================
[2026-06-13 01:04:12,034.034 INFO    ] Launching Daemon at Sat Jun 13 01:04:12 IST 2026
[2026-06-13 01:04:12,045.045 INFO    ] ================================================
[2026-06-13 01:04:12,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:04:12
[2026-06-13 01:04:12,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:04:12,909.909 INFO    ] Initializing speech engine...
[2026-06-13 01:04:12,915.915 INFO    ] 2026-06-13 01:04:12
[2026-06-13 01:04:13,120.120 INFO    ] 2026-06-13 01:04:13
[2026-06-13 01:04:13,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:04:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:04:13,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:04:13,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:04:13,520.520 INFO    ] time= 13/06/2026 01:04:13
[2026-06-13 01:04:13,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:04:13,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:04:13,637.637 INFO    ] No existing commands found in stream
[2026-06-13 01:04:18,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:04:18,649.649 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 01:04:19,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:04:19,211.211 INFO    ] Checking for system updates...
[2026-06-13 01:04:19,232.232 INFO    ] 200
[2026-06-13 01:04:19,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:19,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:19,264.264 INFO    ] No update needed
[2026-06-13 01:04:19,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 01:04:19,285.285 INFO    ] 200
[2026-06-13 01:04:19,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:19,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:04:19,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:19,355.355 INFO    ] No camera update needed
[2026-06-13 01:04:19,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:04:19,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:04:19,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:04:19,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:04:21,404.404 INFO    ] ================================================
[2026-06-13 01:04:21,419.419 INFO    ] Launching Daemon at Sat Jun 13 01:04:21 IST 2026
[2026-06-13 01:04:21,430.430 INFO    ] ================================================
[2026-06-13 01:04:21,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:04:21
[2026-06-13 01:04:22,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:04:22,211.211 INFO    ] Initializing speech engine...
[2026-06-13 01:04:22,216.216 INFO    ] 2026-06-13 01:04:22
[2026-06-13 01:04:22,420.420 INFO    ] 2026-06-13 01:04:22
[2026-06-13 01:04:22,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:04:22,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:04:22,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:04:22,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:04:22,814.814 INFO    ] time= 13/06/2026 01:04:22
[2026-06-13 01:04:22,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:04:22,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:04:22,934.934 INFO    ] No existing commands found in stream
[2026-06-13 01:04:27,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:04:27,943.943 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 01:04:31,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:04:31,973.973 INFO    ] Checking for system updates...
[2026-06-13 01:04:31,999.999 INFO    ] 200
[2026-06-13 01:04:32,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:32,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:32,050.050 INFO    ] No update needed
[2026-06-13 01:04:32,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 01:04:32,087.087 INFO    ] 200
[2026-06-13 01:04:32,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:32,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:04:32,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:32,164.164 INFO    ] No camera update needed
[2026-06-13 01:04:32,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:04:32,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:04:32,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:04:32,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:04:34,224.224 INFO    ] ================================================
[2026-06-13 01:04:34,239.239 INFO    ] Launching Daemon at Sat Jun 13 01:04:34 IST 2026
[2026-06-13 01:04:34,250.250 INFO    ] ================================================
[2026-06-13 01:04:34,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:04:34
[2026-06-13 01:04:34,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:04:35,025.025 INFO    ] Initializing speech engine...
[2026-06-13 01:04:35,030.030 INFO    ] 2026-06-13 01:04:35
[2026-06-13 01:04:35,233.233 INFO    ] 2026-06-13 01:04:35
[2026-06-13 01:04:35,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:04:35,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:04:35,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:04:35,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:04:35,647.647 INFO    ] time= 13/06/2026 01:04:35
[2026-06-13 01:04:35,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:04:35,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:04:35,772.772 INFO    ] No existing commands found in stream
[2026-06-13 01:04:40,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:04:40,783.783 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 01:04:44,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:04:44,815.815 INFO    ] Checking for system updates...
[2026-06-13 01:04:44,836.836 INFO    ] 200
[2026-06-13 01:04:44,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:44,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:44,871.871 INFO    ] No update needed
[2026-06-13 01:04:44,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 01:04:44,892.892 INFO    ] 200
[2026-06-13 01:04:44,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:44,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:04:44,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:44,959.959 INFO    ] No camera update needed
[2026-06-13 01:04:44,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:04:44,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:04:44,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:04:44,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:04:47,007.007 INFO    ] ================================================
[2026-06-13 01:04:47,023.023 INFO    ] Launching Daemon at Sat Jun 13 01:04:47 IST 2026
[2026-06-13 01:04:47,033.033 INFO    ] ================================================
[2026-06-13 01:04:47,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:04:47
[2026-06-13 01:04:47,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:04:47,840.840 INFO    ] Initializing speech engine...
[2026-06-13 01:04:47,845.845 INFO    ] 2026-06-13 01:04:47
[2026-06-13 01:04:48,047.047 INFO    ] 2026-06-13 01:04:48
[2026-06-13 01:04:48,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:04:48,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:04:48,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:04:48,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:04:48,432.432 INFO    ] time= 13/06/2026 01:04:48
[2026-06-13 01:04:48,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:04:48,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:04:48,562.562 INFO    ] No existing commands found in stream
[2026-06-13 01:04:53,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:04:53,576.576 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 01:04:56,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:04:56,631.631 INFO    ] Checking for system updates...
[2026-06-13 01:04:56,652.652 INFO    ] 200
[2026-06-13 01:04:56,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:56,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:56,685.685 INFO    ] No update needed
[2026-06-13 01:04:56,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 01:04:56,709.709 INFO    ] 200
[2026-06-13 01:04:56,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:04:56,735.735 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:04:56,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:04:56,878.878 INFO    ] No camera update needed
[2026-06-13 01:04:56,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:04:56,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:04:56,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:04:56,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:04:58,925.925 INFO    ] ================================================
[2026-06-13 01:04:58,940.940 INFO    ] Launching Daemon at Sat Jun 13 01:04:58 IST 2026
[2026-06-13 01:04:58,951.951 INFO    ] ================================================
[2026-06-13 01:04:59,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:04:59
[2026-06-13 01:04:59,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:04:59,719.719 INFO    ] Initializing speech engine...
[2026-06-13 01:04:59,723.723 INFO    ] 2026-06-13 01:04:59
[2026-06-13 01:04:59,940.940 INFO    ] 2026-06-13 01:04:59
[2026-06-13 01:04:59,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:00,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:00,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:00,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:00,363.363 INFO    ] time= 13/06/2026 01:05:00
[2026-06-13 01:05:00,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:00,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:00,459.459 INFO    ] No existing commands found in stream
[2026-06-13 01:05:05,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:05:05,472.472 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 01:05:09,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:05:09,291.291 INFO    ] Checking for system updates...
[2026-06-13 01:05:09,311.311 INFO    ] 200
[2026-06-13 01:05:09,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:09,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:05:09,346.346 INFO    ] No update needed
[2026-06-13 01:05:09,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 01:05:09,367.367 INFO    ] 200
[2026-06-13 01:05:09,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:09,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:05:09,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:05:09,429.429 INFO    ] No camera update needed
[2026-06-13 01:05:09,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:05:09,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:05:09,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:05:09,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:05:11,479.479 INFO    ] ================================================
[2026-06-13 01:05:11,494.494 INFO    ] Launching Daemon at Sat Jun 13 01:05:11 IST 2026
[2026-06-13 01:05:11,504.504 INFO    ] ================================================
[2026-06-13 01:05:12,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:05:12
[2026-06-13 01:05:12,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:05:12,963.963 INFO    ] Initializing speech engine...
[2026-06-13 01:05:12,969.969 INFO    ] 2026-06-13 01:05:12
[2026-06-13 01:05:13,203.203 INFO    ] 2026-06-13 01:05:13
[2026-06-13 01:05:13,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:13,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:13,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:13,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:13,613.613 INFO    ] time= 13/06/2026 01:05:13
[2026-06-13 01:05:13,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:13,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:13,718.718 INFO    ] No existing commands found in stream
[2026-06-13 01:05:18,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:05:18,735.735 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 01:05:22,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:05:22,222.222 INFO    ] Checking for system updates...
[2026-06-13 01:05:22,242.242 INFO    ] 200
[2026-06-13 01:05:22,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:22,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:05:22,276.276 INFO    ] No update needed
[2026-06-13 01:05:22,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 01:05:22,299.299 INFO    ] 200
[2026-06-13 01:05:22,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:22,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:05:22,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:05:22,365.365 INFO    ] No camera update needed
[2026-06-13 01:05:22,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:05:22,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:05:22,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:05:22,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:05:24,412.412 INFO    ] ================================================
[2026-06-13 01:05:24,427.427 INFO    ] Launching Daemon at Sat Jun 13 01:05:24 IST 2026
[2026-06-13 01:05:24,438.438 INFO    ] ================================================
[2026-06-13 01:05:24,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:05:24
[2026-06-13 01:05:25,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:05:25,223.223 INFO    ] Initializing speech engine...
[2026-06-13 01:05:25,228.228 INFO    ] 2026-06-13 01:05:25
[2026-06-13 01:05:25,455.455 INFO    ] 2026-06-13 01:05:25
[2026-06-13 01:05:25,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:25,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:25,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:25,873.873 INFO    ] time= 13/06/2026 01:05:25
[2026-06-13 01:05:25,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:25,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:26,004.004 INFO    ] No existing commands found in stream
[2026-06-13 01:05:31,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:05:31,013.013 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 01:05:33,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:05:33,606.606 INFO    ] Checking for system updates...
[2026-06-13 01:05:33,627.627 INFO    ] 200
[2026-06-13 01:05:33,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:33,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:05:33,663.663 INFO    ] No update needed
[2026-06-13 01:05:33,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 01:05:33,711.711 INFO    ] 200
[2026-06-13 01:05:33,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:33,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:05:33,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:05:33,772.772 INFO    ] No camera update needed
[2026-06-13 01:05:33,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:05:33,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:05:33,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:05:33,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:05:35,820.820 INFO    ] ================================================
[2026-06-13 01:05:35,835.835 INFO    ] Launching Daemon at Sat Jun 13 01:05:35 IST 2026
[2026-06-13 01:05:35,846.846 INFO    ] ================================================
[2026-06-13 01:05:36,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:05:36
[2026-06-13 01:05:36,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:05:36,686.686 INFO    ] Initializing speech engine...
[2026-06-13 01:05:36,692.692 INFO    ] 2026-06-13 01:05:36
[2026-06-13 01:05:36,902.902 INFO    ] 2026-06-13 01:05:36
[2026-06-13 01:05:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:37,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:37,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:37,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:37,310.310 INFO    ] time= 13/06/2026 01:05:37
[2026-06-13 01:05:37,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:37,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:37,428.428 INFO    ] No existing commands found in stream
[2026-06-13 01:05:42,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:05:42,441.441 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 01:05:42,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:05:42,845.845 INFO    ] Checking for system updates...
[2026-06-13 01:05:42,867.867 INFO    ] 200
[2026-06-13 01:05:42,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:42,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:05:42,899.899 INFO    ] No update needed
[2026-06-13 01:05:42,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 01:05:42,921.921 INFO    ] 200
[2026-06-13 01:05:42,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:42,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:05:42,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:05:42,988.988 INFO    ] No camera update needed
[2026-06-13 01:05:42,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:05:42,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:05:42,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:05:42,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:05:45,034.034 INFO    ] ================================================
[2026-06-13 01:05:45,049.049 INFO    ] Launching Daemon at Sat Jun 13 01:05:45 IST 2026
[2026-06-13 01:05:45,060.060 INFO    ] ================================================
[2026-06-13 01:05:45,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:05:45
[2026-06-13 01:05:45,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:05:45,844.844 INFO    ] Initializing speech engine...
[2026-06-13 01:05:45,849.849 INFO    ] 2026-06-13 01:05:45
[2026-06-13 01:05:46,076.076 INFO    ] 2026-06-13 01:05:46
[2026-06-13 01:05:46,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:46,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:46,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:46,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:46,465.465 INFO    ] time= 13/06/2026 01:05:46
[2026-06-13 01:05:46,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:46,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:46,523.523 INFO    ] No existing commands found in stream
[2026-06-13 01:05:51,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:05:51,537.537 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 01:05:54,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:05:54,063.063 INFO    ] Checking for system updates...
[2026-06-13 01:05:54,084.084 INFO    ] 200
[2026-06-13 01:05:54,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:54,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:05:54,116.116 INFO    ] No update needed
[2026-06-13 01:05:54,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 01:05:54,138.138 INFO    ] 200
[2026-06-13 01:05:54,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:05:54,164.164 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:05:54,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:05:54,205.205 INFO    ] No camera update needed
[2026-06-13 01:05:54,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:05:54,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:05:54,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:05:54,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:05:56,253.253 INFO    ] ================================================
[2026-06-13 01:05:56,269.269 INFO    ] Launching Daemon at Sat Jun 13 01:05:56 IST 2026
[2026-06-13 01:05:56,279.279 INFO    ] ================================================
[2026-06-13 01:05:56,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:05:56
[2026-06-13 01:05:56,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:05:57,129.129 INFO    ] Initializing speech engine...
[2026-06-13 01:05:57,134.134 INFO    ] 2026-06-13 01:05:57
[2026-06-13 01:05:57,347.347 INFO    ] 2026-06-13 01:05:57
[2026-06-13 01:05:57,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:05:57,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:05:57,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:05:57,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:05:57,777.777 INFO    ] time= 13/06/2026 01:05:57
[2026-06-13 01:05:57,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:05:57,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:05:57,963.963 INFO    ] No existing commands found in stream
[2026-06-13 01:06:02,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:06:02,989.989 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 01:06:06,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:06:06,065.065 INFO    ] Checking for system updates...
[2026-06-13 01:06:06,089.089 INFO    ] 200
[2026-06-13 01:06:06,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:06,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:06:06,122.122 INFO    ] No update needed
[2026-06-13 01:06:06,123.123 INFO    ] Checking for camera pi updates...
[2026-06-13 01:06:06,146.146 INFO    ] 200
[2026-06-13 01:06:06,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:06,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:06:06,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:06:06,209.209 INFO    ] No camera update needed
[2026-06-13 01:06:06,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:06:06,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:06:06,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:06:06,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:06:08,255.255 INFO    ] ================================================
[2026-06-13 01:06:08,270.270 INFO    ] Launching Daemon at Sat Jun 13 01:06:08 IST 2026
[2026-06-13 01:06:08,281.281 INFO    ] ================================================
[2026-06-13 01:06:08,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:06:08
[2026-06-13 01:06:08,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:06:09,135.135 INFO    ] Initializing speech engine...
[2026-06-13 01:06:09,138.138 INFO    ] 2026-06-13 01:06:09
[2026-06-13 01:06:09,360.360 INFO    ] 2026-06-13 01:06:09
[2026-06-13 01:06:09,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:06:09,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:06:09,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:06:09,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:06:09,759.759 INFO    ] time= 13/06/2026 01:06:09
[2026-06-13 01:06:09,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:06:09,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:06:09,874.874 INFO    ] No existing commands found in stream
[2026-06-13 01:06:14,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:06:14,891.891 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 01:06:17,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:06:17,748.748 INFO    ] Checking for system updates...
[2026-06-13 01:06:17,769.769 INFO    ] 200
[2026-06-13 01:06:17,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:17,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:06:17,804.804 INFO    ] No update needed
[2026-06-13 01:06:17,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 01:06:17,825.825 INFO    ] 200
[2026-06-13 01:06:17,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:17,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:06:17,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:06:17,885.885 INFO    ] No camera update needed
[2026-06-13 01:06:17,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:06:17,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:06:17,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:06:17,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:06:19,932.932 INFO    ] ================================================
[2026-06-13 01:06:19,947.947 INFO    ] Launching Daemon at Sat Jun 13 01:06:19 IST 2026
[2026-06-13 01:06:19,958.958 INFO    ] ================================================
[2026-06-13 01:06:20,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:06:20
[2026-06-13 01:06:20,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:06:20,814.814 INFO    ] Initializing speech engine...
[2026-06-13 01:06:20,824.824 INFO    ] 2026-06-13 01:06:20
[2026-06-13 01:06:21,032.032 INFO    ] 2026-06-13 01:06:21
[2026-06-13 01:06:21,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:06:21,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:06:21,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:06:21,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:06:21,440.440 INFO    ] time= 13/06/2026 01:06:21
[2026-06-13 01:06:21,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:06:21,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:06:21,552.552 INFO    ] No existing commands found in stream
[2026-06-13 01:06:26,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:06:26,580.580 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 01:06:30,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:06:30,531.531 INFO    ] Checking for system updates...
[2026-06-13 01:06:30,553.553 INFO    ] 200
[2026-06-13 01:06:30,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:30,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:06:30,588.588 INFO    ] No update needed
[2026-06-13 01:06:30,590.590 INFO    ] Checking for camera pi updates...
[2026-06-13 01:06:30,609.609 INFO    ] 200
[2026-06-13 01:06:30,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:30,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:06:30,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:06:30,675.675 INFO    ] No camera update needed
[2026-06-13 01:06:30,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:06:30,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:06:30,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:06:30,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:06:32,717.717 INFO    ] ================================================
[2026-06-13 01:06:32,732.732 INFO    ] Launching Daemon at Sat Jun 13 01:06:32 IST 2026
[2026-06-13 01:06:32,742.742 INFO    ] ================================================
[2026-06-13 01:06:33,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:06:33
[2026-06-13 01:06:33,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:06:33,513.513 INFO    ] Initializing speech engine...
[2026-06-13 01:06:33,518.518 INFO    ] 2026-06-13 01:06:33
[2026-06-13 01:06:33,746.746 INFO    ] 2026-06-13 01:06:33
[2026-06-13 01:06:33,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:06:33,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:06:33,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:06:34,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:06:34,170.170 INFO    ] time= 13/06/2026 01:06:34
[2026-06-13 01:06:34,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:06:34,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:06:34,297.297 INFO    ] No existing commands found in stream
[2026-06-13 01:06:39,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:06:39,324.324 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 01:06:40,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:06:40,407.407 INFO    ] Checking for system updates...
[2026-06-13 01:06:40,428.428 INFO    ] 200
[2026-06-13 01:06:40,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:40,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:06:40,462.462 INFO    ] No update needed
[2026-06-13 01:06:40,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 01:06:40,487.487 INFO    ] 200
[2026-06-13 01:06:40,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:40,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:06:40,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:06:40,555.555 INFO    ] No camera update needed
[2026-06-13 01:06:40,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:06:40,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:06:40,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:06:40,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:06:42,602.602 INFO    ] ================================================
[2026-06-13 01:06:42,617.617 INFO    ] Launching Daemon at Sat Jun 13 01:06:42 IST 2026
[2026-06-13 01:06:42,628.628 INFO    ] ================================================
[2026-06-13 01:06:42,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:06:42
[2026-06-13 01:06:43,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:06:43,437.437 INFO    ] Initializing speech engine...
[2026-06-13 01:06:43,442.442 INFO    ] 2026-06-13 01:06:43
[2026-06-13 01:06:43,645.645 INFO    ] 2026-06-13 01:06:43
[2026-06-13 01:06:43,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:06:43,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:06:43,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:06:44,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:06:44,062.062 INFO    ] time= 13/06/2026 01:06:44
[2026-06-13 01:06:44,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:06:44,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:06:44,157.157 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 01:06:44,161.161 INFO    ] Checking historical command: ID=1781293000245-0
[2026-06-13 01:06:44,186.186 INFO    ] process_and_cleanup_command: msg_id=1781293000245-0
[2026-06-13 01:06:44,187.187 INFO    ] is_command_expired: timestamp=2026-06-12T19:36:40.057Z, expiry=30s
[2026-06-13 01:06:44,296.296 INFO    ] Command removed from stream: 1781293000245-0. returning for processing...
[2026-06-13 01:06:44,299.299 INFO    ] ***** get_valid_command
[2026-06-13 01:06:44,304.304 INFO    ] {'timeout': '10', 'data': '{"request_id":"start-order-1781293000057-pcf1tzzok","orderId":"TM08202203260613010557933","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-12T19:36:40.057Z', 'source': 'webapp'}
[2026-06-13 01:06:44,309.309 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781293000057-pcf1tzzok', 'orderId': 'TM08202203260613010557933'}
[2026-06-13 01:06:44,312.312 INFO    ] Handling start order...
[2026-06-13 01:06:44,315.315 INFO    ] handle_start_order_command
[2026-06-13 01:06:44,322.322 INFO    ] _send_start_order_success: request_id=start-order-1781293000057-pcf1tzzok, order_id=TM08202203260613010557933
[2026-06-13 01:06:44,325.325 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 01:06:44,370.370 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781293004325-0
[2026-06-13 01:06:44,373.373 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 01:06:44,376.376 INFO    ] Checking for system updates...
[2026-06-13 01:06:44,404.404 INFO    ] 200
[2026-06-13 01:06:44,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:44,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:06:44,446.446 INFO    ] No update needed
[2026-06-13 01:06:44,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 01:06:44,516.516 INFO    ] 200
[2026-06-13 01:06:44,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:44,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:06:44,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:06:44,651.651 INFO    ] No camera update needed
[2026-06-13 01:06:44,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:06:44,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:06:44,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:06:44,672.672 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 01:06:44,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:06:46,720.720 INFO    ] ================================================
[2026-06-13 01:06:46,735.735 INFO    ] Launching Daemon at Sat Jun 13 01:06:46 IST 2026
[2026-06-13 01:06:46,745.745 INFO    ] ================================================
[2026-06-13 01:06:47,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:06:47
[2026-06-13 01:06:47,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:06:47,552.552 INFO    ] Initializing speech engine...
[2026-06-13 01:06:47,557.557 INFO    ] 2026-06-13 01:06:47
[2026-06-13 01:06:47,768.768 INFO    ] 2026-06-13 01:06:47
[2026-06-13 01:06:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:06:48,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:06:48,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:06:48,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:06:48,175.175 INFO    ] time= 13/06/2026 01:06:48
[2026-06-13 01:06:48,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:06:48,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:06:48,339.339 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 01:06:48,348.348 INFO    ] Checking historical command: ID=1781293004325-0
[2026-06-13 01:06:48,364.364 INFO    ] process_and_cleanup_command: msg_id=1781293004325-0
[2026-06-13 01:06:48,431.431 INFO    ] is_command_expired: timestamp=2026-06-12T19:36:44.323145Z, expiry=30s
[2026-06-13 01:06:48,661.661 INFO    ] Command removed from stream: 1781293004325-0. returning for processing...
[2026-06-13 01:06:48,723.723 INFO    ] ***** get_valid_command
[2026-06-13 01:06:48,767.767 INFO    ] {'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781293000057-pcf1tzzok', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613010557933', 'message': 'start-order success', 'timestamp': '2026-06-12T19:36:44.323145Z', 'status': 'success'}
[2026-06-13 01:06:48,771.771 INFO    ] Checking historical command: ID=1781293006406-0
[2026-06-13 01:06:48,782.782 INFO    ] process_and_cleanup_command: msg_id=1781293006406-0
[2026-06-13 01:06:48,785.785 INFO    ] is_command_expired: timestamp=2026-06-12T19:36:46.173Z, expiry=30s
[2026-06-13 01:06:48,913.913 INFO    ] Command removed from stream: 1781293006406-0. returning for processing...
[2026-06-13 01:06:48,919.919 INFO    ] ***** get_valid_command
[2026-06-13 01:06:48,927.927 INFO    ] {'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-12T19:36:46.173Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781293006173-obt7euwk4","orderId":"TM08202203260613010557933","is_vending":false,"accessCode":"76191414"}'}
[2026-06-13 01:06:48,972.972 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781293006173-obt7euwk4', 'accessCode': '76191414', 'orderId': 'TM08202203260613010557933', 'is_vending': False}
[2026-06-13 01:06:48,976.976 INFO    ] Handling process order...
[2026-06-13 01:06:48,994.994 INFO    ] Processing process-order command...
[2026-06-13 01:06:49,032.032 INFO    ] 🔍 Lock file Order ID: TM08202203260613010557933, TS: 2026-06-13 01:06:44
[2026-06-13 01:06:49,047.047 INFO    ] ✅ Order lock valid for TM08202203260613010557933
[2026-06-13 01:06:49,052.052 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 01:06:49,056.056 INFO    ] processing access code 76191414 for order TM08202203260613010557933
[2026-06-13 01:06:49,061.061 INFO    ] 🔍 Lock file Order ID: TM08202203260613010557933, TS: 2026-06-13 01:06:44
[2026-06-13 01:06:49,066.066 INFO    ] ✅ Order lock valid for TM08202203260613010557933
[2026-06-13 01:06:49,071.071 INFO    ] 2026-06-13 01:06:49
[2026-06-13 01:06:49,180.180 INFO    ] 200
[2026-06-13 01:06:49,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:06:49,228.228 INFO    ] 76191414
[2026-06-13 01:06:49,233.233 INFO    ] 2026-06-13 01:06:49
[2026-06-13 01:06:49,241.241 INFO    ] session id :209912770
[2026-06-13 01:06:49,247.247 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=76191414&imei=TM08202203&session_id=209912770
[2026-06-13 01:06:50,313.313 INFO    ] 200
[2026-06-13 01:06:50,320.320 INFO    ] {"data": {"mobile": "6361732753", "order_id": "TM08202203260613010557933", "bill_amount": "30", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}], "access_code": "76191414", "invoice_bill": "30"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 01:06:50,326.326 INFO    ] 30
[2026-06-13 01:06:50,331.331 INFO    ] TM08202203260613010557933
[2026-06-13 01:06:50,362.362 INFO    ] 6361732753
[2026-06-13 01:06:50,383.383 INFO    ] 2026-06-13 01:06:50
[2026-06-13 01:06:50,396.396 INFO    ] Door Opening for user mobile ending with  two seven five three 
[2026-06-13 01:06:50,407.407 INFO    ] Door Opening for user mobile ending with  two seven five three 
[2026-06-13 01:06:50,432.432 INFO    ] adbbf61f5706fa0601f26cd69bb11242
[2026-06-13 01:06:50,457.457 INFO    ] 2026-06-13 01:06:50
[2026-06-13 01:06:50,515.515 INFO    ] playing audio file
[2026-06-13 01:06:50,539.539 INFO    ] 2026-06-13 01:06:50
[2026-06-13 01:06:50,550.550 INFO    ] 2026-06-13 01:06:50
[2026-06-13 01:06:50,559.559 INFO    ] publish_status: order_id=TM08202203260613010557933
[2026-06-13 01:06:50,566.566 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613010557933
[2026-06-13 01:06:50,650.650 INFO    ] [publish_status] Message added to stream with ID: 1781293010597-0
[2026-06-13 01:06:50,658.658 INFO    ] Published to order:TM08202203260613010557933: {'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"qty": 1, "tray_id": "40", "mrp": "30", "skuid": "186084", "door_id": "2", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_id": "", "unit_price": 30}], "mobile": "6361732753", "order_id": "TM08202203260613010557933", "invoice_bill": "30", "bill_amount": "30", "access_code": "76191414"}}', 'timestamp': '2026-06-12T19:36:50.552183Z', 'server_status': 'order-started', 'order_id': 'TM08202203260613010557933'} (ID: 1781293010597-0)
[2026-06-13 01:06:51,085.085 INFO    ] {'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'qty': 1, 'tray_id': '40', 'mrp': '30', 'skuid': '186084', 'door_id': '2', 'offer_desc': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'unit_price': 30}], 'mobile': '6361732753', 'order_id': 'TM08202203260613010557933', 'invoice_bill': '30', 'bill_amount': '30', 'access_code': '76191414'}}, 'server_status': 'order-started', 'order_id': 'TM08202203260613010557933'}
[2026-06-13 01:06:51,086.086 INFO    ] 200
[2026-06-13 01:06:51,088.088 INFO    ] {"data":{"server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"qty":1,"tray_id":"40","mrp":"30","skuid":"186084","door_id":"2","offer_desc":"","name":"KITKAT Nestle 4 Finger Chocolate 38g","sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_id":"","unit_price":30}],"mobile":"6361732753","order_id":"TM08202203260613010557933","invoice_bill":"30","bill_amount":"30","access_code":"76191414"}},"server_status":"order-started","order_id":"TM08202203260613010557933"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:06:51,090.090 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'qty': 1, 'tray_id': '40', 'mrp': '30', 'skuid': '186084', 'door_id': '2', 'offer_desc': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'unit_price': 30}], 'mobile': '6361732753', 'order_id': 'TM08202203260613010557933', 'invoice_bill': '30', 'bill_amount': '30', 'access_code': '76191414'}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613010557933'}}
[2026-06-13 01:06:51,091.091 INFO    ] 2026-06-13 01:06:51
[2026-06-13 01:06:51,117.117 INFO    ] 200
[2026-06-13 01:06:51,119.119 INFO    ] True
[2026-06-13 01:06:51,205.205 INFO    ] 200
[2026-06-13 01:06:51,207.207 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 01:06:51,209.209 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please Wait'}
[2026-06-13 01:06:51,211.211 INFO    ] *** process_order ***
[2026-06-13 01:06:52,366.366 INFO    ] 200
[2026-06-13 01:06:52,369.369 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:06:52,371.371 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}
[2026-06-13 01:06:52,374.374 INFO    ] *** process_order ***
[2026-06-13 01:06:52,377.377 INFO    ] publish_status: order_id=TM08202203260613010557933
[2026-06-13 01:06:52,379.379 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613010557933
[2026-06-13 01:06:52,442.442 INFO    ] [publish_status] Message added to stream with ID: 1781293012397-0
[2026-06-13 01:06:52,444.444 INFO    ] Published to order:TM08202203260613010557933: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "voiceNote": "Door is open...", "status": "True"}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613010557933'} (ID: 1781293012397-0)
[2026-06-13 01:06:53,487.487 INFO    ] 2026-06-13 01:06:53
[2026-06-13 01:06:53,490.490 INFO    ] publish_status: order_id=TM08202203260613010557933
[2026-06-13 01:06:53,493.493 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613010557933
[2026-06-13 01:06:53,570.570 INFO    ] [publish_status] Message added to stream with ID: 1781293013525-0
[2026-06-13 01:06:53,573.573 INFO    ] Published to order:TM08202203260613010557933: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True", "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "voiceNote": "Please Wait"}', 'timestamp': '2026-06-12T19:36:53.488721Z', 'server_status': 'processOrder', 'order_id': 'TM08202203260613010557933'} (ID: 1781293013525-0)
[2026-06-13 01:06:53,677.677 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613010557933'}
[2026-06-13 01:06:53,680.680 INFO    ] 200
[2026-06-13 01:06:53,683.683 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"status":"true","delay":0,"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"voiceNote":"Please Wait"},"server_status":"processOrder","order_id":"TM08202203260613010557933"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:06:53,686.686 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'status': 'true'}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613010557933'}}
[2026-06-13 01:06:53,690.690 INFO    ] 2026-06-13 01:06:53
[2026-06-13 01:06:53,693.693 INFO    ] None
[2026-06-13 01:06:53,695.695 INFO    ] Opening Door now
[2026-06-13 01:06:53,698.698 INFO    ] Opening Door now
[2026-06-13 01:06:53,701.701 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 01:06:53,704.704 INFO    ] 2026-06-13 01:06:53
[2026-06-13 01:06:53,712.712 INFO    ] playing audio file
[2026-06-13 01:06:53,730.730 INFO    ] 2026-06-13 01:06:53
[2026-06-13 01:06:53,734.734 INFO    ] 2026-06-13 01:06:53
[2026-06-13 01:06:56,775.775 INFO    ] 200
[2026-06-13 01:06:56,777.777 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:06:56,778.778 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 01:06:59,905.905 INFO    ] 200
[2026-06-13 01:06:59,908.908 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:06:59,911.911 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:07:02,946.946 INFO    ] 200
[2026-06-13 01:07:02,947.947 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:07:02,949.949 INFO    ] Please close door 2
[2026-06-13 01:07:02,950.950 INFO    ] Please close door 2
[2026-06-13 01:07:02,952.952 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 01:07:02,953.953 INFO    ] 2026-06-13 01:07:02
[2026-06-13 01:07:02,954.954 INFO    ] playing audio file
[2026-06-13 01:07:02,965.965 INFO    ] 2026-06-13 01:07:02
[2026-06-13 01:07:02,967.967 INFO    ] publish_status: order_id=TM08202203260613010557933
[2026-06-13 01:07:02,969.969 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613010557933
[2026-06-13 01:07:03,013.013 INFO    ] [publish_status] Message added to stream with ID: 1781293022969-0
[2026-06-13 01:07:03,014.014 INFO    ] Published to order:TM08202203260613010557933: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False", "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "voiceNote": "Please close door 2"}', 'timestamp': '2026-06-12T19:37:02.966738Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613010557933'} (ID: 1781293022969-0)
[2026-06-13 01:07:03,342.342 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613010557933'}
[2026-06-13 01:07:03,344.344 INFO    ] 200
[2026-06-13 01:07:03,345.345 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}]},"rstatus":false,"status":"false","error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"voiceNote":"Please close door 2"},"server_status":"OrderStatus","order_id":"TM08202203260613010557933"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:07:03,347.347 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 2', 'status': 'false'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613010557933'}}
[2026-06-13 01:07:03,349.349 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:07:06,385.385 INFO    ] 200
[2026-06-13 01:07:06,387.387 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:07:06,389.389 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:07:09,465.465 INFO    ] 200
[2026-06-13 01:07:09,468.468 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:07:09,471.471 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 01:07:09,474.474 INFO    ] 2026-06-13 01:07:09
[2026-06-13 01:07:09,476.476 INFO    ] Order Completed 
[2026-06-13 01:07:09,479.479 INFO    ] Order Completed 
[2026-06-13 01:07:09,482.482 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 01:07:09,485.485 INFO    ] 2026-06-13 01:07:09
[2026-06-13 01:07:09,488.488 INFO    ] playing audio file
[2026-06-13 01:07:09,508.508 INFO    ] 2026-06-13 01:07:09
[2026-06-13 01:07:09,512.512 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 01:07:09,515.515 INFO    ] 2026-06-13 01:07:09
[2026-06-13 01:07:11,538.538 INFO    ] 200
[2026-06-13 01:07:11,540.540 INFO    ] {"res": "True", "orderId": "TM08202203260613010557933", "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 30.0}
[2026-06-13 01:07:11,542.542 INFO    ] {'orderId': 'TM08202203260613010557933', 'total_amount': 30.0, 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'mrp': '30', 'tray_id': '40', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'unit_price': '30'}], 'logic': 'WBL'}
[2026-06-13 01:07:11,543.543 INFO    ] {'orderId': 'TM08202203260613010557933', 'total_amount': 30.0, 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'mrp': '30', 'tray_id': '40', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'unit_price': '30'}], 'logic': 'WBL'}
[2026-06-13 01:07:11,545.545 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,546.546 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,548.548 INFO    ] 30
[2026-06-13 01:07:11,549.549 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,551.551 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,552.552 INFO    ]  Your Bill Amount is 30
[2026-06-13 01:07:11,554.554 INFO    ]  Your Bill Amount is 30
[2026-06-13 01:07:11,555.555 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-13 01:07:11,557.557 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,558.558 INFO    ] playing audio file
[2026-06-13 01:07:11,569.569 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,571.571 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:11,574.574 INFO    ] publish_status: order_id=TM08202203260613010557933
[2026-06-13 01:07:11,576.576 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613010557933
[2026-06-13 01:07:11,650.650 INFO    ] [publish_status] Message added to stream with ID: 1781293031605-0
[2026-06-13 01:07:11,652.652 INFO    ] Published to order:TM08202203260613010557933: {'server_response': '{"orderId": "TM08202203260613010557933", "total_amount": 30.0, "rstatus": true, "anomaly": 0, "res": "True", "skus": [{"mrp": "30", "tray_id": "40", "skuid": "186084", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30.0, "unit_price": "30"}], "logic": "WBL"}', 'timestamp': '2026-06-12T19:37:11.572744Z', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613010557933'} (ID: 1781293031605-0)
[2026-06-13 01:07:11,989.989 INFO    ] {'server_response': {'orderId': 'TM08202203260613010557933', 'total_amount': 30.0, 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'mrp': '30', 'tray_id': '40', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'unit_price': '30'}], 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613010557933'}
[2026-06-13 01:07:11,990.990 INFO    ] 200
[2026-06-13 01:07:11,991.991 INFO    ] {"data":{"server_response":{"orderId":"TM08202203260613010557933","total_amount":30,"rstatus":true,"anomaly":0,"res":"true","skus":[{"mrp":"30","tray_id":"40","skuid":"186084","door_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","sku_total":30,"unit_price":"30"}],"logic":"WBL"},"server_status":"invoiceOrder","order_id":"TM08202203260613010557933"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:07:11,993.993 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'skus': [{'qty': 1, 'tray_id': '40', 'mrp': '30', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30'}], 'orderId': 'TM08202203260613010557933', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'total_amount': 30, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613010557933'}}
[2026-06-13 01:07:11,995.995 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'skus': [{'qty': 1, 'tray_id': '40', 'mrp': '30', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30'}], 'orderId': 'TM08202203260613010557933', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'total_amount': 30, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613010557933'}}
[2026-06-13 01:07:11,996.996 INFO    ] 2026-06-13 01:07:11
[2026-06-13 01:07:13,696.696 INFO    ] 200
[2026-06-13 01:07:13,699.699 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933", "TM08202203260613010557933"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 01:07:13,702.702 INFO    ] 2026-06-13 01:07:13
[2026-06-13 01:07:13,826.826 INFO    ] 200
[2026-06-13 01:07:13,829.829 INFO    ] True
[2026-06-13 01:07:13,832.832 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613010557933
[2026-06-13 01:07:13,836.836 INFO    ] start order file deleted
[2026-06-13 01:07:13,840.840 INFO    ] Checking for system updates...
[2026-06-13 01:07:13,891.891 INFO    ] 200
[2026-06-13 01:07:13,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:13,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:07:13,958.958 INFO    ] No update needed
[2026-06-13 01:07:13,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 01:07:13,999.999 INFO    ] 200
[2026-06-13 01:07:14,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:14,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:07:14,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:07:14,109.109 INFO    ] No camera update needed
[2026-06-13 01:07:14,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:07:14,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:07:14,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:07:14,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:07:16,157.157 INFO    ] ================================================
[2026-06-13 01:07:16,173.173 INFO    ] Launching Daemon at Sat Jun 13 01:07:16 IST 2026
[2026-06-13 01:07:16,184.184 INFO    ] ================================================
[2026-06-13 01:07:17,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:07:16
[2026-06-13 01:07:17,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:07:17,591.591 INFO    ] Initializing speech engine...
[2026-06-13 01:07:17,601.601 INFO    ] 2026-06-13 01:07:17
[2026-06-13 01:07:17,811.811 INFO    ] 2026-06-13 01:07:17
[2026-06-13 01:07:17,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:07:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:07:18,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:07:18,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:07:18,225.225 INFO    ] time= 13/06/2026 01:07:18
[2026-06-13 01:07:18,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:07:18,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:07:18,331.331 INFO    ] No existing commands found in stream
[2026-06-13 01:07:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:07:23,344.344 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 01:07:27,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:07:27,605.605 INFO    ] Checking for system updates...
[2026-06-13 01:07:27,628.628 INFO    ] 200
[2026-06-13 01:07:27,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:27,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:07:27,662.662 INFO    ] No update needed
[2026-06-13 01:07:27,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 01:07:27,682.682 INFO    ] 200
[2026-06-13 01:07:27,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:27,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:07:27,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:07:27,752.752 INFO    ] No camera update needed
[2026-06-13 01:07:27,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:07:27,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:07:27,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:07:27,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:07:29,801.801 INFO    ] ================================================
[2026-06-13 01:07:29,817.817 INFO    ] Launching Daemon at Sat Jun 13 01:07:29 IST 2026
[2026-06-13 01:07:29,828.828 INFO    ] ================================================
[2026-06-13 01:07:30,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:07:30
[2026-06-13 01:07:30,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:07:30,723.723 INFO    ] Initializing speech engine...
[2026-06-13 01:07:30,736.736 INFO    ] 2026-06-13 01:07:30
[2026-06-13 01:07:30,962.962 INFO    ] 2026-06-13 01:07:30
[2026-06-13 01:07:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:07:31,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:07:31,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:07:31,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:07:31,341.341 INFO    ] time= 13/06/2026 01:07:31
[2026-06-13 01:07:31,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:07:31,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:07:31,513.513 INFO    ] No existing commands found in stream
[2026-06-13 01:07:36,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:07:36,525.525 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 01:07:38,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:07:38,851.851 INFO    ] Checking for system updates...
[2026-06-13 01:07:38,873.873 INFO    ] 200
[2026-06-13 01:07:38,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:38,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:07:38,906.906 INFO    ] No update needed
[2026-06-13 01:07:38,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 01:07:38,929.929 INFO    ] 200
[2026-06-13 01:07:38,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:38,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:07:38,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:07:38,995.995 INFO    ] No camera update needed
[2026-06-13 01:07:38,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:07:38,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:07:39,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:07:39,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:07:41,044.044 INFO    ] ================================================
[2026-06-13 01:07:41,059.059 INFO    ] Launching Daemon at Sat Jun 13 01:07:41 IST 2026
[2026-06-13 01:07:41,070.070 INFO    ] ================================================
[2026-06-13 01:07:41,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:07:41
[2026-06-13 01:07:41,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:07:41,871.871 INFO    ] Initializing speech engine...
[2026-06-13 01:07:41,881.881 INFO    ] 2026-06-13 01:07:41
[2026-06-13 01:07:42,085.085 INFO    ] 2026-06-13 01:07:42
[2026-06-13 01:07:42,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:07:42,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:07:42,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:07:42,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:07:42,508.508 INFO    ] time= 13/06/2026 01:07:42
[2026-06-13 01:07:42,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:07:42,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:07:42,671.671 INFO    ] No existing commands found in stream
[2026-06-13 01:07:47,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:07:47,684.684 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 01:07:50,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:07:50,394.394 INFO    ] Checking for system updates...
[2026-06-13 01:07:50,416.416 INFO    ] 200
[2026-06-13 01:07:50,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:50,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:07:50,450.450 INFO    ] No update needed
[2026-06-13 01:07:50,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 01:07:50,471.471 INFO    ] 200
[2026-06-13 01:07:50,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:07:50,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:07:50,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:07:50,539.539 INFO    ] No camera update needed
[2026-06-13 01:07:50,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:07:50,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:07:50,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:07:50,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:07:52,588.588 INFO    ] ================================================
[2026-06-13 01:07:52,603.603 INFO    ] Launching Daemon at Sat Jun 13 01:07:52 IST 2026
[2026-06-13 01:07:52,614.614 INFO    ] ================================================
[2026-06-13 01:07:52,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:07:52
[2026-06-13 01:07:53,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:07:53,391.391 INFO    ] Initializing speech engine...
[2026-06-13 01:07:53,402.402 INFO    ] 2026-06-13 01:07:53
[2026-06-13 01:07:53,603.603 INFO    ] 2026-06-13 01:07:53
[2026-06-13 01:07:53,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:07:53,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:07:53,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:07:53,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:07:54,021.021 INFO    ] time= 13/06/2026 01:07:53
[2026-06-13 01:07:54,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:07:54,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:07:54,117.117 INFO    ] No existing commands found in stream
[2026-06-13 01:07:59,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:07:59,129.129 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 01:08:00,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:08:00,033.033 INFO    ] Checking for system updates...
[2026-06-13 01:08:00,055.055 INFO    ] 200
[2026-06-13 01:08:00,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:00,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:00,089.089 INFO    ] No update needed
[2026-06-13 01:08:00,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:00,109.109 INFO    ] 200
[2026-06-13 01:08:00,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:00,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:08:00,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:00,172.172 INFO    ] No camera update needed
[2026-06-13 01:08:00,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:00,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:00,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:00,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:02,218.218 INFO    ] ================================================
[2026-06-13 01:08:02,229.229 INFO    ] Launching Daemon at Sat Jun 13 01:08:02 IST 2026
[2026-06-13 01:08:02,238.238 INFO    ] ================================================
[2026-06-13 01:08:02,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:02
[2026-06-13 01:08:02,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:03,117.117 INFO    ] Initializing speech engine...
[2026-06-13 01:08:03,128.128 INFO    ] 2026-06-13 01:08:03
[2026-06-13 01:08:03,332.332 INFO    ] 2026-06-13 01:08:03
[2026-06-13 01:08:03,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:03,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:03,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:03,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:03,681.681 INFO    ] time= 13/06/2026 01:08:03
[2026-06-13 01:08:03,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:03,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:03,850.850 INFO    ] No existing commands found in stream
[2026-06-13 01:08:08,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:08:08,863.863 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 01:08:10,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:08:10,485.485 INFO    ] Checking for system updates...
[2026-06-13 01:08:10,512.512 INFO    ] 200
[2026-06-13 01:08:10,514.514 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:10,515.515 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 01:08:10,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:10,541.541 INFO    ] 200
[2026-06-13 01:08:10,543.543 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:10,544.544 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 01:08:10,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:10,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:10,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:10,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:12,588.588 INFO    ] ================================================
[2026-06-13 01:08:12,603.603 INFO    ] Launching Daemon at Sat Jun 13 01:08:12 IST 2026
[2026-06-13 01:08:12,614.614 INFO    ] ================================================
[2026-06-13 01:08:13,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:13
[2026-06-13 01:08:13,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:14,084.084 INFO    ] Initializing speech engine...
[2026-06-13 01:08:14,089.089 INFO    ] 2026-06-13 01:08:14
[2026-06-13 01:08:14,350.350 INFO    ] 2026-06-13 01:08:14
[2026-06-13 01:08:14,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:14,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:14,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:14,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:14,706.706 INFO    ] time= 13/06/2026 01:08:14
[2026-06-13 01:08:14,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:14,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:14,810.810 INFO    ] No existing commands found in stream
[2026-06-13 01:08:19,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:08:19,824.824 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 01:08:21,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:08:21,099.099 INFO    ] Checking for system updates...
[2026-06-13 01:08:21,120.120 INFO    ] 200
[2026-06-13 01:08:21,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:21,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:08:21,154.154 INFO    ] No update needed
[2026-06-13 01:08:21,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:21,176.176 INFO    ] 200
[2026-06-13 01:08:21,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:21,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:08:21,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:08:21,251.251 INFO    ] No camera update needed
[2026-06-13 01:08:21,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:21,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:21,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:21,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:23,300.300 INFO    ] ================================================
[2026-06-13 01:08:23,316.316 INFO    ] Launching Daemon at Sat Jun 13 01:08:23 IST 2026
[2026-06-13 01:08:23,327.327 INFO    ] ================================================
[2026-06-13 01:08:23,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:23
[2026-06-13 01:08:24,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:24,192.192 INFO    ] Initializing speech engine...
[2026-06-13 01:08:24,199.199 INFO    ] 2026-06-13 01:08:24
[2026-06-13 01:08:24,400.400 INFO    ] 2026-06-13 01:08:24
[2026-06-13 01:08:24,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:24,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:24,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:24,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:24,781.781 INFO    ] time= 13/06/2026 01:08:24
[2026-06-13 01:08:24,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:24,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:24,921.921 INFO    ] No existing commands found in stream
[2026-06-13 01:08:29,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:08:29,933.933 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 01:08:32,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:08:32,837.837 INFO    ] Checking for system updates...
[2026-06-13 01:08:32,858.858 INFO    ] 200
[2026-06-13 01:08:32,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:32,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:32,893.893 INFO    ] No update needed
[2026-06-13 01:08:32,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:32,913.913 INFO    ] 200
[2026-06-13 01:08:32,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:32,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:08:32,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:08:32,969.969 INFO    ] No camera update needed
[2026-06-13 01:08:32,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:32,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:32,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:32,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:35,016.016 INFO    ] ================================================
[2026-06-13 01:08:35,032.032 INFO    ] Launching Daemon at Sat Jun 13 01:08:35 IST 2026
[2026-06-13 01:08:35,043.043 INFO    ] ================================================
[2026-06-13 01:08:35,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:35
[2026-06-13 01:08:35,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:35,863.863 INFO    ] Initializing speech engine...
[2026-06-13 01:08:35,868.868 INFO    ] 2026-06-13 01:08:35
[2026-06-13 01:08:36,075.075 INFO    ] 2026-06-13 01:08:36
[2026-06-13 01:08:36,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:36,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:36,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:36,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:36,430.430 INFO    ] time= 13/06/2026 01:08:36
[2026-06-13 01:08:36,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:36,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:36,596.596 INFO    ] No existing commands found in stream
[2026-06-13 01:08:41,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:08:41,609.609 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 01:08:41,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:08:41,918.918 INFO    ] Checking for system updates...
[2026-06-13 01:08:41,940.940 INFO    ] 200
[2026-06-13 01:08:41,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:41,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:41,974.974 INFO    ] No update needed
[2026-06-13 01:08:41,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:41,995.995 INFO    ] 200
[2026-06-13 01:08:41,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:42,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:08:42,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:42,058.058 INFO    ] No camera update needed
[2026-06-13 01:08:42,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:42,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:42,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:42,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:44,106.106 INFO    ] ================================================
[2026-06-13 01:08:44,122.122 INFO    ] Launching Daemon at Sat Jun 13 01:08:44 IST 2026
[2026-06-13 01:08:44,132.132 INFO    ] ================================================
[2026-06-13 01:08:44,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:44
[2026-06-13 01:08:44,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:44,943.943 INFO    ] Initializing speech engine...
[2026-06-13 01:08:44,947.947 INFO    ] 2026-06-13 01:08:44
[2026-06-13 01:08:45,152.152 INFO    ] 2026-06-13 01:08:45
[2026-06-13 01:08:45,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:45,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:45,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:45,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:45,559.559 INFO    ] time= 13/06/2026 01:08:45
[2026-06-13 01:08:45,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:45,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:45,670.670 INFO    ] No existing commands found in stream
[2026-06-13 01:08:50,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:08:50,684.684 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 01:08:54,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:08:54,182.182 INFO    ] Checking for system updates...
[2026-06-13 01:08:54,204.204 INFO    ] 200
[2026-06-13 01:08:54,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:54,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:54,238.238 INFO    ] No update needed
[2026-06-13 01:08:54,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 01:08:54,259.259 INFO    ] 200
[2026-06-13 01:08:54,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:08:54,288.288 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:08:54,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:08:54,332.332 INFO    ] No camera update needed
[2026-06-13 01:08:54,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:08:54,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:08:54,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:08:54,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:08:56,380.380 INFO    ] ================================================
[2026-06-13 01:08:56,396.396 INFO    ] Launching Daemon at Sat Jun 13 01:08:56 IST 2026
[2026-06-13 01:08:56,412.412 INFO    ] ================================================
[2026-06-13 01:08:56,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:08:56
[2026-06-13 01:08:57,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:08:57,202.202 INFO    ] Initializing speech engine...
[2026-06-13 01:08:57,207.207 INFO    ] 2026-06-13 01:08:57
[2026-06-13 01:08:57,441.441 INFO    ] 2026-06-13 01:08:57
[2026-06-13 01:08:57,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:08:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:08:57,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:08:57,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:08:57,684.684 INFO    ] time= 13/06/2026 01:08:57
[2026-06-13 01:08:57,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:08:57,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:08:57,795.795 INFO    ] No existing commands found in stream
[2026-06-13 01:09:02,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:02,824.824 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 01:09:06,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:09:06,743.743 INFO    ] Checking for system updates...
[2026-06-13 01:09:06,763.763 INFO    ] 200
[2026-06-13 01:09:06,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:06,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:09:06,796.796 INFO    ] No update needed
[2026-06-13 01:09:06,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 01:09:06,818.818 INFO    ] 200
[2026-06-13 01:09:06,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:06,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:09:06,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:09:06,883.883 INFO    ] No camera update needed
[2026-06-13 01:09:06,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:09:06,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:09:06,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:09:06,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:09:08,930.930 INFO    ] ================================================
[2026-06-13 01:09:08,946.946 INFO    ] Launching Daemon at Sat Jun 13 01:09:08 IST 2026
[2026-06-13 01:09:08,957.957 INFO    ] ================================================
[2026-06-13 01:09:09,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:09:09
[2026-06-13 01:09:09,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:09:09,748.748 INFO    ] Initializing speech engine...
[2026-06-13 01:09:09,753.753 INFO    ] 2026-06-13 01:09:09
[2026-06-13 01:09:09,960.960 INFO    ] 2026-06-13 01:09:09
[2026-06-13 01:09:09,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:09:10,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:09:10,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:09:10,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:09:10,364.364 INFO    ] time= 13/06/2026 01:09:10
[2026-06-13 01:09:10,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:09:10,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:09:10,482.482 INFO    ] No existing commands found in stream
[2026-06-13 01:09:15,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:15,493.493 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 01:09:17,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:09:17,600.600 INFO    ] Checking for system updates...
[2026-06-13 01:09:17,621.621 INFO    ] 200
[2026-06-13 01:09:17,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:17,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:09:17,655.655 INFO    ] No update needed
[2026-06-13 01:09:17,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 01:09:17,676.676 INFO    ] 200
[2026-06-13 01:09:17,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:17,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:09:17,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:09:17,750.750 INFO    ] No camera update needed
[2026-06-13 01:09:17,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:09:17,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:09:17,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:09:17,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:09:19,799.799 INFO    ] ================================================
[2026-06-13 01:09:19,815.815 INFO    ] Launching Daemon at Sat Jun 13 01:09:19 IST 2026
[2026-06-13 01:09:19,826.826 INFO    ] ================================================
[2026-06-13 01:09:20,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:09:20
[2026-06-13 01:09:20,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:09:20,634.634 INFO    ] Initializing speech engine...
[2026-06-13 01:09:20,639.639 INFO    ] 2026-06-13 01:09:20
[2026-06-13 01:09:20,855.855 INFO    ] 2026-06-13 01:09:20
[2026-06-13 01:09:20,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:09:21,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:09:21,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:09:21,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:09:21,249.249 INFO    ] time= 13/06/2026 01:09:21
[2026-06-13 01:09:21,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:09:21,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:09:21,437.437 INFO    ] No existing commands found in stream
[2026-06-13 01:09:26,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:26,453.453 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 01:09:27,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:09:27,561.561 INFO    ] Checking for system updates...
[2026-06-13 01:09:27,581.581 INFO    ] 200
[2026-06-13 01:09:27,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:27,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:09:27,614.614 INFO    ] No update needed
[2026-06-13 01:09:27,615.615 INFO    ] Checking for camera pi updates...
[2026-06-13 01:09:27,639.639 INFO    ] 200
[2026-06-13 01:09:27,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:27,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:09:27,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:09:27,705.705 INFO    ] No camera update needed
[2026-06-13 01:09:27,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:09:27,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:09:27,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:09:27,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:09:29,754.754 INFO    ] ================================================
[2026-06-13 01:09:29,770.770 INFO    ] Launching Daemon at Sat Jun 13 01:09:29 IST 2026
[2026-06-13 01:09:29,781.781 INFO    ] ================================================
[2026-06-13 01:09:30,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:09:30
[2026-06-13 01:09:30,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:09:30,562.562 INFO    ] Initializing speech engine...
[2026-06-13 01:09:30,570.570 INFO    ] 2026-06-13 01:09:30
[2026-06-13 01:09:30,785.785 INFO    ] 2026-06-13 01:09:30
[2026-06-13 01:09:30,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:09:30,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:09:31,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:09:31,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:09:31,204.204 INFO    ] time= 13/06/2026 01:09:31
[2026-06-13 01:09:31,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:09:31,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:09:31,279.279 INFO    ] No existing commands found in stream
[2026-06-13 01:09:36,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:36,321.321 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 01:09:38,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:09:38,328.328 INFO    ] Checking for system updates...
[2026-06-13 01:09:38,349.349 INFO    ] 200
[2026-06-13 01:09:38,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:38,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:09:38,382.382 INFO    ] No update needed
[2026-06-13 01:09:38,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 01:09:38,405.405 INFO    ] 200
[2026-06-13 01:09:38,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:38,431.431 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:09:38,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:09:38,480.480 INFO    ] No camera update needed
[2026-06-13 01:09:38,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:09:38,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:09:38,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:09:38,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:09:40,529.529 INFO    ] ================================================
[2026-06-13 01:09:40,545.545 INFO    ] Launching Daemon at Sat Jun 13 01:09:40 IST 2026
[2026-06-13 01:09:40,556.556 INFO    ] ================================================
[2026-06-13 01:09:40,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:09:40
[2026-06-13 01:09:41,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:09:41,356.356 INFO    ] Initializing speech engine...
[2026-06-13 01:09:41,364.364 INFO    ] 2026-06-13 01:09:41
[2026-06-13 01:09:41,579.579 INFO    ] 2026-06-13 01:09:41
[2026-06-13 01:09:41,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:09:41,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:09:41,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:09:41,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:09:41,986.986 INFO    ] time= 13/06/2026 01:09:41
[2026-06-13 01:09:42,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:09:42,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:09:42,105.105 INFO    ] No existing commands found in stream
[2026-06-13 01:09:47,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:47,116.116 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 01:09:47,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:09:47,764.764 INFO    ] Checking for system updates...
[2026-06-13 01:09:47,785.785 INFO    ] 200
[2026-06-13 01:09:47,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:47,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:09:47,822.822 INFO    ] No update needed
[2026-06-13 01:09:47,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 01:09:47,846.846 INFO    ] 200
[2026-06-13 01:09:47,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:09:47,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:09:47,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:09:47,918.918 INFO    ] No camera update needed
[2026-06-13 01:09:47,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:09:47,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:09:47,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:09:47,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:09:49,968.968 INFO    ] ================================================
[2026-06-13 01:09:49,984.984 INFO    ] Launching Daemon at Sat Jun 13 01:09:49 IST 2026
[2026-06-13 01:09:50,995.995 INFO    ] ================================================
[2026-06-13 01:09:50,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:09:50
[2026-06-13 01:09:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:09:50,802.802 INFO    ] Initializing speech engine...
[2026-06-13 01:09:50,807.807 INFO    ] 2026-06-13 01:09:50
[2026-06-13 01:09:50,998.998 INFO    ] 2026-06-13 01:09:50
[2026-06-13 01:09:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:09:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:09:51,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:09:51,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:09:51,290.290 INFO    ] time= 13/06/2026 01:09:51
[2026-06-13 01:09:51,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:09:51,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:09:51,375.375 INFO    ] No existing commands found in stream
[2026-06-13 01:09:56,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:09:56,407.407 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 01:10:01,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:10:01,884.884 INFO    ] Checking for system updates...
[2026-06-13 01:10:01,923.923 INFO    ] 200
[2026-06-13 01:10:01,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:01,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:01,984.984 INFO    ] No update needed
[2026-06-13 01:10:01,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:02,034.034 INFO    ] 200
[2026-06-13 01:10:02,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:02,095.095 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:02,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:02,145.145 INFO    ] No camera update needed
[2026-06-13 01:10:02,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:02,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:02,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:02,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:04,194.194 INFO    ] ================================================
[2026-06-13 01:10:04,212.212 INFO    ] Launching Daemon at Sat Jun 13 01:10:04 IST 2026
[2026-06-13 01:10:04,225.225 INFO    ] ================================================
[2026-06-13 01:10:04,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:04
[2026-06-13 01:10:04,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:05,035.035 INFO    ] Initializing speech engine...
[2026-06-13 01:10:05,041.041 INFO    ] 2026-06-13 01:10:05
[2026-06-13 01:10:05,246.246 INFO    ] 2026-06-13 01:10:05
[2026-06-13 01:10:05,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:10:05,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:10:05,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:10:05,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:10:05,652.652 INFO    ] time= 13/06/2026 01:10:05
[2026-06-13 01:10:05,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:10:05,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:10:05,768.768 INFO    ] No existing commands found in stream
[2026-06-13 01:10:10,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:10:10,782.782 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 01:10:14,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:10:14,435.435 INFO    ] Checking for system updates...
[2026-06-13 01:10:14,455.455 INFO    ] 200
[2026-06-13 01:10:14,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:14,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:14,491.491 INFO    ] No update needed
[2026-06-13 01:10:14,493.493 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:14,512.512 INFO    ] 200
[2026-06-13 01:10:14,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:14,539.539 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:14,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:14,580.580 INFO    ] No camera update needed
[2026-06-13 01:10:14,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:14,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:14,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:14,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:16,630.630 INFO    ] ================================================
[2026-06-13 01:10:16,646.646 INFO    ] Launching Daemon at Sat Jun 13 01:10:16 IST 2026
[2026-06-13 01:10:16,657.657 INFO    ] ================================================
[2026-06-13 01:10:17,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:17
[2026-06-13 01:10:17,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:17,475.475 INFO    ] Initializing speech engine...
[2026-06-13 01:10:17,480.480 INFO    ] 2026-06-13 01:10:17
[2026-06-13 01:10:17,681.681 INFO    ] 2026-06-13 01:10:17
[2026-06-13 01:10:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:10:17,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:10:17,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:10:18,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:10:18,084.084 INFO    ] time= 13/06/2026 01:10:18
[2026-06-13 01:10:18,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:10:18,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:10:18,245.245 INFO    ] No existing commands found in stream
[2026-06-13 01:10:23,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:10:23,262.262 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 01:10:24,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:10:24,775.775 INFO    ] Checking for system updates...
[2026-06-13 01:10:24,796.796 INFO    ] 200
[2026-06-13 01:10:24,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:24,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:24,832.832 INFO    ] No update needed
[2026-06-13 01:10:24,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:24,854.854 INFO    ] 200
[2026-06-13 01:10:24,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:24,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:24,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:24,919.919 INFO    ] No camera update needed
[2026-06-13 01:10:24,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:24,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:24,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:24,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:26,968.968 INFO    ] ================================================
[2026-06-13 01:10:26,985.985 INFO    ] Launching Daemon at Sat Jun 13 01:10:26 IST 2026
[2026-06-13 01:10:27,999.999 INFO    ] ================================================
[2026-06-13 01:10:27,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:27
[2026-06-13 01:10:27,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:27,889.889 INFO    ] Initializing speech engine...
[2026-06-13 01:10:27,894.894 INFO    ] 2026-06-13 01:10:27
[2026-06-13 01:10:28,102.102 INFO    ] 2026-06-13 01:10:28
[2026-06-13 01:10:28,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:10:28,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:10:28,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:10:28,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:10:28,519.519 INFO    ] time= 13/06/2026 01:10:28
[2026-06-13 01:10:28,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:10:28,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:10:28,619.619 INFO    ] No existing commands found in stream
[2026-06-13 01:10:33,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:10:33,647.647 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 01:10:36,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:10:36,476.476 INFO    ] Checking for system updates...
[2026-06-13 01:10:36,498.498 INFO    ] 200
[2026-06-13 01:10:36,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:36,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:10:36,532.532 INFO    ] No update needed
[2026-06-13 01:10:36,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:36,553.553 INFO    ] 200
[2026-06-13 01:10:36,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:36,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:36,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:10:36,620.620 INFO    ] No camera update needed
[2026-06-13 01:10:36,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:36,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:36,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:36,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:38,670.670 INFO    ] ================================================
[2026-06-13 01:10:38,685.685 INFO    ] Launching Daemon at Sat Jun 13 01:10:38 IST 2026
[2026-06-13 01:10:38,696.696 INFO    ] ================================================
[2026-06-13 01:10:39,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:39
[2026-06-13 01:10:39,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:39,558.558 INFO    ] Initializing speech engine...
[2026-06-13 01:10:39,564.564 INFO    ] 2026-06-13 01:10:39
[2026-06-13 01:10:39,785.785 INFO    ] 2026-06-13 01:10:39
[2026-06-13 01:10:39,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:10:39,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:10:39,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:10:40,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:10:40,044.044 INFO    ] time= 13/06/2026 01:10:40
[2026-06-13 01:10:40,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:10:40,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:10:40,224.224 INFO    ] No existing commands found in stream
[2026-06-13 01:10:45,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:10:45,260.260 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 01:10:47,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:10:47,267.267 INFO    ] Checking for system updates...
[2026-06-13 01:10:47,289.289 INFO    ] 200
[2026-06-13 01:10:47,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:47,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:10:47,323.323 INFO    ] No update needed
[2026-06-13 01:10:47,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:47,345.345 INFO    ] 200
[2026-06-13 01:10:47,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:47,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:47,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:10:47,412.412 INFO    ] No camera update needed
[2026-06-13 01:10:47,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:47,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:47,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:47,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:49,459.459 INFO    ] ================================================
[2026-06-13 01:10:49,475.475 INFO    ] Launching Daemon at Sat Jun 13 01:10:49 IST 2026
[2026-06-13 01:10:49,485.485 INFO    ] ================================================
[2026-06-13 01:10:49,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:49
[2026-06-13 01:10:50,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:50,318.318 INFO    ] Initializing speech engine...
[2026-06-13 01:10:50,322.322 INFO    ] 2026-06-13 01:10:50
[2026-06-13 01:10:50,527.527 INFO    ] 2026-06-13 01:10:50
[2026-06-13 01:10:50,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:10:50,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:10:50,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:10:50,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:10:50,808.808 INFO    ] time= 13/06/2026 01:10:50
[2026-06-13 01:10:50,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:10:50,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:10:50,897.897 INFO    ] No existing commands found in stream
[2026-06-13 01:10:55,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:10:55,934.934 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 01:10:56,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:10:56,643.643 INFO    ] Checking for system updates...
[2026-06-13 01:10:56,687.687 INFO    ] 200
[2026-06-13 01:10:56,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:56,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:56,754.754 INFO    ] No update needed
[2026-06-13 01:10:56,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 01:10:56,790.790 INFO    ] 200
[2026-06-13 01:10:56,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:10:56,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:10:56,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:10:56,890.890 INFO    ] No camera update needed
[2026-06-13 01:10:56,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:10:56,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:10:56,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:10:56,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:10:58,946.946 INFO    ] ================================================
[2026-06-13 01:10:58,961.961 INFO    ] Launching Daemon at Sat Jun 13 01:10:58 IST 2026
[2026-06-13 01:10:58,972.972 INFO    ] ================================================
[2026-06-13 01:10:59,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:10:59
[2026-06-13 01:10:59,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:10:59,824.824 INFO    ] Initializing speech engine...
[2026-06-13 01:10:59,830.830 INFO    ] 2026-06-13 01:10:59
[2026-06-13 01:11:00,037.037 INFO    ] 2026-06-13 01:11:00
[2026-06-13 01:11:00,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:00,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:00,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:00,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:00,468.468 INFO    ] time= 13/06/2026 01:11:00
[2026-06-13 01:11:00,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:00,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:00,570.570 INFO    ] No existing commands found in stream
[2026-06-13 01:11:05,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:05,589.589 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 01:11:08,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:11:08,236.236 INFO    ] Checking for system updates...
[2026-06-13 01:11:08,258.258 INFO    ] 200
[2026-06-13 01:11:08,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:08,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:08,291.291 INFO    ] No update needed
[2026-06-13 01:11:08,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 01:11:08,314.314 INFO    ] 200
[2026-06-13 01:11:08,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:08,341.341 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:11:08,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:08,487.487 INFO    ] No camera update needed
[2026-06-13 01:11:08,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:11:08,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:11:08,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:11:08,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:11:10,536.536 INFO    ] ================================================
[2026-06-13 01:11:10,551.551 INFO    ] Launching Daemon at Sat Jun 13 01:11:10 IST 2026
[2026-06-13 01:11:10,563.563 INFO    ] ================================================
[2026-06-13 01:11:10,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:11:10
[2026-06-13 01:11:11,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:11:11,359.359 INFO    ] Initializing speech engine...
[2026-06-13 01:11:11,367.367 INFO    ] 2026-06-13 01:11:11
[2026-06-13 01:11:11,561.561 INFO    ] 2026-06-13 01:11:11
[2026-06-13 01:11:11,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:11,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:11,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:11,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:11,994.994 INFO    ] time= 13/06/2026 01:11:11
[2026-06-13 01:11:12,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:12,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:12,180.180 INFO    ] No existing commands found in stream
[2026-06-13 01:11:17,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:17,197.197 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 01:11:17,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:11:17,887.887 INFO    ] Checking for system updates...
[2026-06-13 01:11:17,908.908 INFO    ] 200
[2026-06-13 01:11:17,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:17,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:11:17,949.949 INFO    ] No update needed
[2026-06-13 01:11:17,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 01:11:17,970.970 INFO    ] 200
[2026-06-13 01:11:17,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:17,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:11:18,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:11:18,036.036 INFO    ] No camera update needed
[2026-06-13 01:11:18,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:11:18,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:11:18,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:11:18,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:11:20,086.086 INFO    ] ================================================
[2026-06-13 01:11:20,101.101 INFO    ] Launching Daemon at Sat Jun 13 01:11:20 IST 2026
[2026-06-13 01:11:20,112.112 INFO    ] ================================================
[2026-06-13 01:11:20,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:11:20
[2026-06-13 01:11:20,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:11:20,913.913 INFO    ] Initializing speech engine...
[2026-06-13 01:11:20,918.918 INFO    ] 2026-06-13 01:11:20
[2026-06-13 01:11:21,124.124 INFO    ] 2026-06-13 01:11:21
[2026-06-13 01:11:21,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:21,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:21,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:21,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:21,540.540 INFO    ] time= 13/06/2026 01:11:21
[2026-06-13 01:11:21,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:21,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:21,647.647 INFO    ] No existing commands found in stream
[2026-06-13 01:11:26,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:26,660.660 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 01:11:29,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:11:29,195.195 INFO    ] Checking for system updates...
[2026-06-13 01:11:29,217.217 INFO    ] 200
[2026-06-13 01:11:29,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:29,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:29,251.251 INFO    ] No update needed
[2026-06-13 01:11:29,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 01:11:29,272.272 INFO    ] 200
[2026-06-13 01:11:29,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:29,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:11:29,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:29,338.338 INFO    ] No camera update needed
[2026-06-13 01:11:29,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:11:29,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:11:29,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:11:29,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:11:31,386.386 INFO    ] ================================================
[2026-06-13 01:11:31,401.401 INFO    ] Launching Daemon at Sat Jun 13 01:11:31 IST 2026
[2026-06-13 01:11:31,413.413 INFO    ] ================================================
[2026-06-13 01:11:31,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:11:31
[2026-06-13 01:11:32,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:11:32,245.245 INFO    ] Initializing speech engine...
[2026-06-13 01:11:32,252.252 INFO    ] 2026-06-13 01:11:32
[2026-06-13 01:11:32,476.476 INFO    ] 2026-06-13 01:11:32
[2026-06-13 01:11:32,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:32,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:32,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:32,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:32,891.891 INFO    ] time= 13/06/2026 01:11:32
[2026-06-13 01:11:32,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:32,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:33,041.041 INFO    ] No existing commands found in stream
[2026-06-13 01:11:38,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:38,055.055 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 01:11:41,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:11:41,769.769 INFO    ] Checking for system updates...
[2026-06-13 01:11:41,789.789 INFO    ] 200
[2026-06-13 01:11:41,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:41,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:41,823.823 INFO    ] No update needed
[2026-06-13 01:11:41,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 01:11:41,844.844 INFO    ] 200
[2026-06-13 01:11:41,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:41,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:11:41,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:41,910.910 INFO    ] No camera update needed
[2026-06-13 01:11:41,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:11:41,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:11:41,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:11:41,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:11:43,957.957 INFO    ] ================================================
[2026-06-13 01:11:43,973.973 INFO    ] Launching Daemon at Sat Jun 13 01:11:43 IST 2026
[2026-06-13 01:11:43,985.985 INFO    ] ================================================
[2026-06-13 01:11:44,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:11:44
[2026-06-13 01:11:44,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:11:44,776.776 INFO    ] Initializing speech engine...
[2026-06-13 01:11:44,780.780 INFO    ] 2026-06-13 01:11:44
[2026-06-13 01:11:44,988.988 INFO    ] 2026-06-13 01:11:44
[2026-06-13 01:11:45,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:45,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:45,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:45,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:45,401.401 INFO    ] time= 13/06/2026 01:11:45
[2026-06-13 01:11:45,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:45,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:45,514.514 INFO    ] No existing commands found in stream
[2026-06-13 01:11:50,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:50,526.526 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 01:11:50,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:11:50,862.862 INFO    ] Checking for system updates...
[2026-06-13 01:11:50,884.884 INFO    ] 200
[2026-06-13 01:11:50,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:50,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:50,921.921 INFO    ] No update needed
[2026-06-13 01:11:50,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 01:11:50,945.945 INFO    ] 200
[2026-06-13 01:11:50,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:11:50,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:11:51,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:11:51,007.007 INFO    ] No camera update needed
[2026-06-13 01:11:51,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:11:51,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:11:51,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:11:51,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:11:53,057.057 INFO    ] ================================================
[2026-06-13 01:11:53,073.073 INFO    ] Launching Daemon at Sat Jun 13 01:11:53 IST 2026
[2026-06-13 01:11:53,085.085 INFO    ] ================================================
[2026-06-13 01:11:53,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:11:53
[2026-06-13 01:11:53,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:11:53,890.890 INFO    ] Initializing speech engine...
[2026-06-13 01:11:53,895.895 INFO    ] 2026-06-13 01:11:53
[2026-06-13 01:11:54,100.100 INFO    ] 2026-06-13 01:11:54
[2026-06-13 01:11:54,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:11:54,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:11:54,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:11:54,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:11:54,510.510 INFO    ] time= 13/06/2026 01:11:54
[2026-06-13 01:11:54,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:11:54,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:11:54,616.616 INFO    ] No existing commands found in stream
[2026-06-13 01:11:59,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:11:59,629.629 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 01:12:00,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:12:00,612.612 INFO    ] Checking for system updates...
[2026-06-13 01:12:00,634.634 INFO    ] 200
[2026-06-13 01:12:00,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:00,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:00,670.670 INFO    ] No update needed
[2026-06-13 01:12:00,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:00,691.691 INFO    ] 200
[2026-06-13 01:12:00,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:00,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:00,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:00,754.754 INFO    ] No camera update needed
[2026-06-13 01:12:00,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:00,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:00,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:00,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:12:02,819.819 INFO    ] ================================================
[2026-06-13 01:12:02,846.846 INFO    ] Launching Daemon at Sat Jun 13 01:12:02 IST 2026
[2026-06-13 01:12:02,860.860 INFO    ] ================================================
[2026-06-13 01:12:03,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:12:03
[2026-06-13 01:12:04,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:12:04,573.573 INFO    ] Initializing speech engine...
[2026-06-13 01:12:04,585.585 INFO    ] 2026-06-13 01:12:04
[2026-06-13 01:12:04,894.894 INFO    ] 2026-06-13 01:12:04
[2026-06-13 01:12:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:12:05,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:12:05,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:12:05,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:12:05,278.278 INFO    ] time= 13/06/2026 01:12:05
[2026-06-13 01:12:05,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:12:05,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:12:05,401.401 INFO    ] No existing commands found in stream
[2026-06-13 01:12:10,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:12:10,419.419 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 01:12:13,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:12:13,043.043 INFO    ] Checking for system updates...
[2026-06-13 01:12:13,064.064 INFO    ] 200
[2026-06-13 01:12:13,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:13,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:12:13,097.097 INFO    ] No update needed
[2026-06-13 01:12:13,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:13,119.119 INFO    ] 200
[2026-06-13 01:12:13,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:13,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:13,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:13,183.183 INFO    ] No camera update needed
[2026-06-13 01:12:13,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:13,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:13,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:13,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:12:15,231.231 INFO    ] ================================================
[2026-06-13 01:12:15,247.247 INFO    ] Launching Daemon at Sat Jun 13 01:12:15 IST 2026
[2026-06-13 01:12:15,258.258 INFO    ] ================================================
[2026-06-13 01:12:15,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:12:15
[2026-06-13 01:12:15,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:12:16,124.124 INFO    ] Initializing speech engine...
[2026-06-13 01:12:16,130.130 INFO    ] 2026-06-13 01:12:16
[2026-06-13 01:12:16,336.336 INFO    ] 2026-06-13 01:12:16
[2026-06-13 01:12:16,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:12:16,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:12:16,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:12:16,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:12:16,753.753 INFO    ] time= 13/06/2026 01:12:16
[2026-06-13 01:12:16,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:12:16,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:12:16,877.877 INFO    ] No existing commands found in stream
[2026-06-13 01:12:21,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:12:21,900.900 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 01:12:24,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:12:24,568.568 INFO    ] Checking for system updates...
[2026-06-13 01:12:24,589.589 INFO    ] 200
[2026-06-13 01:12:24,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:24,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:24,622.622 INFO    ] No update needed
[2026-06-13 01:12:24,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:24,644.644 INFO    ] 200
[2026-06-13 01:12:24,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:24,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:24,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:24,706.706 INFO    ] No camera update needed
[2026-06-13 01:12:24,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:24,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:24,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:24,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:12:26,756.756 INFO    ] ================================================
[2026-06-13 01:12:26,771.771 INFO    ] Launching Daemon at Sat Jun 13 01:12:26 IST 2026
[2026-06-13 01:12:26,782.782 INFO    ] ================================================
[2026-06-13 01:12:27,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:12:27
[2026-06-13 01:12:27,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:12:27,608.608 INFO    ] Initializing speech engine...
[2026-06-13 01:12:27,613.613 INFO    ] 2026-06-13 01:12:27
[2026-06-13 01:12:27,819.819 INFO    ] 2026-06-13 01:12:27
[2026-06-13 01:12:27,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:12:28,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:12:28,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:12:28,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:12:28,224.224 INFO    ] time= 13/06/2026 01:12:28
[2026-06-13 01:12:28,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:12:28,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:12:28,341.341 INFO    ] No existing commands found in stream
[2026-06-13 01:12:33,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:12:33,354.354 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 01:12:37,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:12:37,323.323 INFO    ] Checking for system updates...
[2026-06-13 01:12:37,343.343 INFO    ] 200
[2026-06-13 01:12:37,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:37,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:12:37,378.378 INFO    ] No update needed
[2026-06-13 01:12:37,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:37,400.400 INFO    ] 200
[2026-06-13 01:12:37,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:37,425.425 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:37,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:12:37,472.472 INFO    ] No camera update needed
[2026-06-13 01:12:37,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:37,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:37,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:37,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:12:39,520.520 INFO    ] ================================================
[2026-06-13 01:12:39,536.536 INFO    ] Launching Daemon at Sat Jun 13 01:12:39 IST 2026
[2026-06-13 01:12:39,547.547 INFO    ] ================================================
[2026-06-13 01:12:39,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:12:39
[2026-06-13 01:12:40,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:12:40,393.393 INFO    ] Initializing speech engine...
[2026-06-13 01:12:40,398.398 INFO    ] 2026-06-13 01:12:40
[2026-06-13 01:12:40,605.605 INFO    ] 2026-06-13 01:12:40
[2026-06-13 01:12:40,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:12:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:12:40,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:12:40,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:12:41,006.006 INFO    ] time= 13/06/2026 01:12:40
[2026-06-13 01:12:41,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:12:41,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:12:41,127.127 INFO    ] No existing commands found in stream
[2026-06-13 01:12:46,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:12:46,141.141 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 01:12:47,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:12:47,435.435 INFO    ] Checking for system updates...
[2026-06-13 01:12:47,456.456 INFO    ] 200
[2026-06-13 01:12:47,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:47,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:47,490.490 INFO    ] No update needed
[2026-06-13 01:12:47,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:47,512.512 INFO    ] 200
[2026-06-13 01:12:47,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:47,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:47,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:47,578.578 INFO    ] No camera update needed
[2026-06-13 01:12:47,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:47,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:47,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:47,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:12:49,624.624 INFO    ] ================================================
[2026-06-13 01:12:49,640.640 INFO    ] Launching Daemon at Sat Jun 13 01:12:49 IST 2026
[2026-06-13 01:12:49,651.651 INFO    ] ================================================
[2026-06-13 01:12:50,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:12:50
[2026-06-13 01:12:50,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:12:50,534.534 INFO    ] Initializing speech engine...
[2026-06-13 01:12:50,539.539 INFO    ] 2026-06-13 01:12:50
[2026-06-13 01:12:50,746.746 INFO    ] 2026-06-13 01:12:50
[2026-06-13 01:12:50,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:12:50,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:12:50,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:12:51,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:12:51,156.156 INFO    ] time= 13/06/2026 01:12:51
[2026-06-13 01:12:51,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:12:51,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:12:51,261.261 INFO    ] No existing commands found in stream
[2026-06-13 01:12:56,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:12:56,273.273 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 01:12:59,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:12:59,384.384 INFO    ] Checking for system updates...
[2026-06-13 01:12:59,405.405 INFO    ] 200
[2026-06-13 01:12:59,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:59,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:59,439.439 INFO    ] No update needed
[2026-06-13 01:12:59,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 01:12:59,460.460 INFO    ] 200
[2026-06-13 01:12:59,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:12:59,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:12:59,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:12:59,530.530 INFO    ] No camera update needed
[2026-06-13 01:12:59,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:12:59,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:12:59,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:12:59,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:01,595.595 INFO    ] ================================================
[2026-06-13 01:13:01,627.627 INFO    ] Launching Daemon at Sat Jun 13 01:13:01 IST 2026
[2026-06-13 01:13:01,660.660 INFO    ] ================================================
[2026-06-13 01:13:02,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:02
[2026-06-13 01:13:02,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:02,647.647 INFO    ] Initializing speech engine...
[2026-06-13 01:13:02,652.652 INFO    ] 2026-06-13 01:13:02
[2026-06-13 01:13:02,883.883 INFO    ] 2026-06-13 01:13:02
[2026-06-13 01:13:02,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:03,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:03,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:03,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:03,268.268 INFO    ] time= 13/06/2026 01:13:03
[2026-06-13 01:13:03,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:03,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:03,396.396 INFO    ] No existing commands found in stream
[2026-06-13 01:13:08,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:13:08,410.410 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 01:13:11,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:13:11,026.026 INFO    ] Checking for system updates...
[2026-06-13 01:13:11,047.047 INFO    ] 200
[2026-06-13 01:13:11,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:11,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:13:11,082.082 INFO    ] No update needed
[2026-06-13 01:13:11,083.083 INFO    ] Checking for camera pi updates...
[2026-06-13 01:13:11,103.103 INFO    ] 200
[2026-06-13 01:13:11,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:11,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:13:11,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:13:11,269.269 INFO    ] No camera update needed
[2026-06-13 01:13:11,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:13:11,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:13:11,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:13:11,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:13,319.319 INFO    ] ================================================
[2026-06-13 01:13:13,334.334 INFO    ] Launching Daemon at Sat Jun 13 01:13:13 IST 2026
[2026-06-13 01:13:13,346.346 INFO    ] ================================================
[2026-06-13 01:13:13,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:13
[2026-06-13 01:13:14,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:14,150.150 INFO    ] Initializing speech engine...
[2026-06-13 01:13:14,158.158 INFO    ] 2026-06-13 01:13:14
[2026-06-13 01:13:14,365.365 INFO    ] 2026-06-13 01:13:14
[2026-06-13 01:13:14,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:14,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:14,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:14,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:14,775.775 INFO    ] time= 13/06/2026 01:13:14
[2026-06-13 01:13:14,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:14,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:14,879.879 INFO    ] No existing commands found in stream
[2026-06-13 01:13:19,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:13:19,892.892 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 01:13:21,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:13:21,064.064 INFO    ] Checking for system updates...
[2026-06-13 01:13:21,085.085 INFO    ] 200
[2026-06-13 01:13:21,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:21,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:13:21,118.118 INFO    ] No update needed
[2026-06-13 01:13:21,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 01:13:21,140.140 INFO    ] 200
[2026-06-13 01:13:21,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:21,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:13:21,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:13:21,201.201 INFO    ] No camera update needed
[2026-06-13 01:13:21,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:13:21,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:13:21,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:13:21,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:23,249.249 INFO    ] ================================================
[2026-06-13 01:13:23,265.265 INFO    ] Launching Daemon at Sat Jun 13 01:13:23 IST 2026
[2026-06-13 01:13:23,277.277 INFO    ] ================================================
[2026-06-13 01:13:23,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:23
[2026-06-13 01:13:23,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:24,109.109 INFO    ] Initializing speech engine...
[2026-06-13 01:13:24,114.114 INFO    ] 2026-06-13 01:13:24
[2026-06-13 01:13:24,318.318 INFO    ] 2026-06-13 01:13:24
[2026-06-13 01:13:24,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:24,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:24,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:24,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:24,719.719 INFO    ] time= 13/06/2026 01:13:24
[2026-06-13 01:13:24,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:24,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:24,834.834 INFO    ] No existing commands found in stream
[2026-06-13 01:13:29,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:13:29,847.847 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 01:13:30,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:13:30,459.459 INFO    ] Checking for system updates...
[2026-06-13 01:13:30,480.480 INFO    ] 200
[2026-06-13 01:13:30,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:30,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:13:30,513.513 INFO    ] No update needed
[2026-06-13 01:13:30,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 01:13:30,535.535 INFO    ] 200
[2026-06-13 01:13:30,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:30,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:13:30,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:13:30,600.600 INFO    ] No camera update needed
[2026-06-13 01:13:30,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:13:30,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:13:30,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:13:30,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:32,639.639 INFO    ] ================================================
[2026-06-13 01:13:32,647.647 INFO    ] Launching Daemon at Sat Jun 13 01:13:32 IST 2026
[2026-06-13 01:13:32,653.653 INFO    ] ================================================
[2026-06-13 01:13:32,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:32
[2026-06-13 01:13:33,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:33,395.395 INFO    ] Initializing speech engine...
[2026-06-13 01:13:33,407.407 INFO    ] 2026-06-13 01:13:33
[2026-06-13 01:13:33,613.613 INFO    ] 2026-06-13 01:13:33
[2026-06-13 01:13:33,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:33,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:33,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:33,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:34,014.014 INFO    ] time= 13/06/2026 01:13:33
[2026-06-13 01:13:34,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:34,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:34,130.130 INFO    ] No existing commands found in stream
[2026-06-13 01:13:39,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:13:39,142.142 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 01:13:43,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:13:43,072.072 INFO    ] Checking for system updates...
[2026-06-13 01:13:43,093.093 INFO    ] 200
[2026-06-13 01:13:43,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:43,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:13:43,126.126 INFO    ] No update needed
[2026-06-13 01:13:43,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 01:13:43,149.149 INFO    ] 200
[2026-06-13 01:13:43,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:43,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:13:43,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:13:43,215.215 INFO    ] No camera update needed
[2026-06-13 01:13:43,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:13:43,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:13:43,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:13:43,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:45,263.263 INFO    ] ================================================
[2026-06-13 01:13:45,278.278 INFO    ] Launching Daemon at Sat Jun 13 01:13:45 IST 2026
[2026-06-13 01:13:45,289.289 INFO    ] ================================================
[2026-06-13 01:13:45,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:45
[2026-06-13 01:13:45,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:46,110.110 INFO    ] Initializing speech engine...
[2026-06-13 01:13:46,114.114 INFO    ] 2026-06-13 01:13:46
[2026-06-13 01:13:46,338.338 INFO    ] 2026-06-13 01:13:46
[2026-06-13 01:13:46,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:46,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:46,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:46,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:46,743.743 INFO    ] time= 13/06/2026 01:13:46
[2026-06-13 01:13:46,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:46,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:46,854.854 INFO    ] No existing commands found in stream
[2026-06-13 01:13:51,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:13:51,871.871 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 01:13:55,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:13:55,338.338 INFO    ] Checking for system updates...
[2026-06-13 01:13:55,359.359 INFO    ] 200
[2026-06-13 01:13:55,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:55,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:13:55,392.392 INFO    ] No update needed
[2026-06-13 01:13:55,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 01:13:55,415.415 INFO    ] 200
[2026-06-13 01:13:55,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:13:55,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:13:55,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:13:55,490.490 INFO    ] No camera update needed
[2026-06-13 01:13:55,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:13:55,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:13:55,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:13:55,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:13:57,537.537 INFO    ] ================================================
[2026-06-13 01:13:57,553.553 INFO    ] Launching Daemon at Sat Jun 13 01:13:57 IST 2026
[2026-06-13 01:13:57,564.564 INFO    ] ================================================
[2026-06-13 01:13:57,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:13:57
[2026-06-13 01:13:58,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:13:58,380.380 INFO    ] Initializing speech engine...
[2026-06-13 01:13:58,388.388 INFO    ] 2026-06-13 01:13:58
[2026-06-13 01:13:58,599.599 INFO    ] 2026-06-13 01:13:58
[2026-06-13 01:13:58,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:13:58,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:13:58,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:13:58,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:13:59,001.001 INFO    ] time= 13/06/2026 01:13:58
[2026-06-13 01:13:59,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:13:59,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:13:59,117.117 INFO    ] No existing commands found in stream
[2026-06-13 01:14:04,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:14:04,134.134 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 01:14:08,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:14:08,295.295 INFO    ] Checking for system updates...
[2026-06-13 01:14:08,315.315 INFO    ] 200
[2026-06-13 01:14:08,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:08,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:08,350.350 INFO    ] No update needed
[2026-06-13 01:14:08,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 01:14:08,372.372 INFO    ] 200
[2026-06-13 01:14:08,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:08,396.396 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:14:08,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:08,430.430 INFO    ] No camera update needed
[2026-06-13 01:14:08,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:14:08,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:14:08,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:14:08,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:14:10,477.477 INFO    ] ================================================
[2026-06-13 01:14:10,493.493 INFO    ] Launching Daemon at Sat Jun 13 01:14:10 IST 2026
[2026-06-13 01:14:10,504.504 INFO    ] ================================================
[2026-06-13 01:14:10,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:14:10
[2026-06-13 01:14:11,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:14:11,726.726 INFO    ] Initializing speech engine...
[2026-06-13 01:14:11,734.734 INFO    ] 2026-06-13 01:14:11
[2026-06-13 01:14:12,004.004 INFO    ] 2026-06-13 01:14:11
[2026-06-13 01:14:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:14:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:14:12,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:14:12,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:14:12,352.352 INFO    ] time= 13/06/2026 01:14:12
[2026-06-13 01:14:12,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:14:12,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:14:12,447.447 INFO    ] No existing commands found in stream
[2026-06-13 01:14:17,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:14:17,462.462 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 01:14:18,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:14:18,434.434 INFO    ] Checking for system updates...
[2026-06-13 01:14:18,455.455 INFO    ] 200
[2026-06-13 01:14:18,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:18,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:18,490.490 INFO    ] No update needed
[2026-06-13 01:14:18,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 01:14:18,511.511 INFO    ] 200
[2026-06-13 01:14:18,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:18,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:14:18,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:18,573.573 INFO    ] No camera update needed
[2026-06-13 01:14:18,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:14:18,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:14:18,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:14:18,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:14:20,620.620 INFO    ] ================================================
[2026-06-13 01:14:20,635.635 INFO    ] Launching Daemon at Sat Jun 13 01:14:20 IST 2026
[2026-06-13 01:14:20,646.646 INFO    ] ================================================
[2026-06-13 01:14:20,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:14:20
[2026-06-13 01:14:21,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:14:21,430.430 INFO    ] Initializing speech engine...
[2026-06-13 01:14:21,435.435 INFO    ] 2026-06-13 01:14:21
[2026-06-13 01:14:21,641.641 INFO    ] 2026-06-13 01:14:21
[2026-06-13 01:14:21,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:14:21,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:14:21,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:14:21,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:14:22,063.063 INFO    ] time= 13/06/2026 01:14:22
[2026-06-13 01:14:22,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:14:22,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:14:22,160.160 INFO    ] No existing commands found in stream
[2026-06-13 01:14:27,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:14:27,174.174 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 01:14:28,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:14:28,139.139 INFO    ] Checking for system updates...
[2026-06-13 01:14:28,161.161 INFO    ] 200
[2026-06-13 01:14:28,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:28,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:14:28,194.194 INFO    ] No update needed
[2026-06-13 01:14:28,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 01:14:28,216.216 INFO    ] 200
[2026-06-13 01:14:28,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:28,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:14:28,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:28,287.287 INFO    ] No camera update needed
[2026-06-13 01:14:28,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:14:28,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:14:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:14:28,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:14:30,336.336 INFO    ] ================================================
[2026-06-13 01:14:30,351.351 INFO    ] Launching Daemon at Sat Jun 13 01:14:30 IST 2026
[2026-06-13 01:14:30,362.362 INFO    ] ================================================
[2026-06-13 01:14:30,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:14:30
[2026-06-13 01:14:31,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:14:31,167.167 INFO    ] Initializing speech engine...
[2026-06-13 01:14:31,172.172 INFO    ] 2026-06-13 01:14:31
[2026-06-13 01:14:31,376.376 INFO    ] 2026-06-13 01:14:31
[2026-06-13 01:14:31,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:14:31,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:14:31,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:14:31,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:14:31,779.779 INFO    ] time= 13/06/2026 01:14:31
[2026-06-13 01:14:31,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:14:31,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:14:31,886.886 INFO    ] No existing commands found in stream
[2026-06-13 01:14:36,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:14:36,900.900 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 01:14:41,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:14:41,241.241 INFO    ] Checking for system updates...
[2026-06-13 01:14:41,261.261 INFO    ] 200
[2026-06-13 01:14:41,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:41,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:41,294.294 INFO    ] No update needed
[2026-06-13 01:14:41,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 01:14:41,318.318 INFO    ] 200
[2026-06-13 01:14:41,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:41,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:14:41,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:41,384.384 INFO    ] No camera update needed
[2026-06-13 01:14:41,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:14:41,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:14:41,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:14:41,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:14:43,431.431 INFO    ] ================================================
[2026-06-13 01:14:43,446.446 INFO    ] Launching Daemon at Sat Jun 13 01:14:43 IST 2026
[2026-06-13 01:14:43,457.457 INFO    ] ================================================
[2026-06-13 01:14:43,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:14:43
[2026-06-13 01:14:44,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:14:44,332.332 INFO    ] Initializing speech engine...
[2026-06-13 01:14:44,340.340 INFO    ] 2026-06-13 01:14:44
[2026-06-13 01:14:44,543.543 INFO    ] 2026-06-13 01:14:44
[2026-06-13 01:14:44,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:14:44,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:14:44,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:14:44,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:14:44,952.952 INFO    ] time= 13/06/2026 01:14:44
[2026-06-13 01:14:44,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:14:44,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:14:45,063.063 INFO    ] No existing commands found in stream
[2026-06-13 01:14:50,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:14:50,079.079 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 01:14:53,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:14:53,300.300 INFO    ] Checking for system updates...
[2026-06-13 01:14:53,321.321 INFO    ] 200
[2026-06-13 01:14:53,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:53,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:53,355.355 INFO    ] No update needed
[2026-06-13 01:14:53,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 01:14:53,377.377 INFO    ] 200
[2026-06-13 01:14:53,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:14:53,402.402 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:14:53,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:14:53,449.449 INFO    ] No camera update needed
[2026-06-13 01:14:53,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:14:53,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:14:53,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:14:53,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:14:55,498.498 INFO    ] ================================================
[2026-06-13 01:14:55,514.514 INFO    ] Launching Daemon at Sat Jun 13 01:14:55 IST 2026
[2026-06-13 01:14:55,525.525 INFO    ] ================================================
[2026-06-13 01:14:55,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:14:55
[2026-06-13 01:14:56,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:14:56,761.761 INFO    ] Initializing speech engine...
[2026-06-13 01:14:56,770.770 INFO    ] 2026-06-13 01:14:56
[2026-06-13 01:14:57,029.029 INFO    ] 2026-06-13 01:14:57
[2026-06-13 01:14:57,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:14:57,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:14:57,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:14:57,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:14:57,462.462 INFO    ] time= 13/06/2026 01:14:57
[2026-06-13 01:14:57,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:14:57,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:14:57,630.630 INFO    ] No existing commands found in stream
[2026-06-13 01:15:02,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:15:02,644.644 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 01:15:05,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:15:05,324.324 INFO    ] Checking for system updates...
[2026-06-13 01:15:05,346.346 INFO    ] 200
[2026-06-13 01:15:05,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:05,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:15:05,379.379 INFO    ] No update needed
[2026-06-13 01:15:05,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 01:15:05,400.400 INFO    ] 200
[2026-06-13 01:15:05,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:05,425.425 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:15:05,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:15:05,471.471 INFO    ] No camera update needed
[2026-06-13 01:15:05,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:15:05,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:15:05,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:15:05,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:15:07,520.520 INFO    ] ================================================
[2026-06-13 01:15:07,538.538 INFO    ] Launching Daemon at Sat Jun 13 01:15:07 IST 2026
[2026-06-13 01:15:07,550.550 INFO    ] ================================================
[2026-06-13 01:15:07,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:15:07
[2026-06-13 01:15:08,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:15:08,367.367 INFO    ] Initializing speech engine...
[2026-06-13 01:15:08,376.376 INFO    ] 2026-06-13 01:15:08
[2026-06-13 01:15:08,580.580 INFO    ] 2026-06-13 01:15:08
[2026-06-13 01:15:08,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:15:08,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:15:08,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:15:08,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:15:08,985.985 INFO    ] time= 13/06/2026 01:15:08
[2026-06-13 01:15:09,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:15:09,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:15:09,095.095 INFO    ] No existing commands found in stream
[2026-06-13 01:15:14,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:15:14,107.107 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 01:15:16,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:15:16,996.996 INFO    ] Checking for system updates...
[2026-06-13 01:15:17,021.021 INFO    ] 200
[2026-06-13 01:15:17,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:17,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:15:17,056.056 INFO    ] No update needed
[2026-06-13 01:15:17,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 01:15:17,079.079 INFO    ] 200
[2026-06-13 01:15:17,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:17,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:15:17,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:17,246.246 INFO    ] No camera update needed
[2026-06-13 01:15:17,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:15:17,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:15:17,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:15:17,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:15:19,294.294 INFO    ] ================================================
[2026-06-13 01:15:19,311.311 INFO    ] Launching Daemon at Sat Jun 13 01:15:19 IST 2026
[2026-06-13 01:15:19,322.322 INFO    ] ================================================
[2026-06-13 01:15:19,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:15:19
[2026-06-13 01:15:19,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:15:20,116.116 INFO    ] Initializing speech engine...
[2026-06-13 01:15:20,124.124 INFO    ] 2026-06-13 01:15:20
[2026-06-13 01:15:20,311.311 INFO    ] 2026-06-13 01:15:20
[2026-06-13 01:15:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:15:20,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:15:20,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:15:20,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:15:20,764.764 INFO    ] time= 13/06/2026 01:15:20
[2026-06-13 01:15:20,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:15:20,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:15:20,877.877 INFO    ] No existing commands found in stream
[2026-06-13 01:15:25,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:15:25,889.889 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 01:15:30,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:15:30,118.118 INFO    ] Checking for system updates...
[2026-06-13 01:15:30,141.141 INFO    ] 200
[2026-06-13 01:15:30,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:30,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:30,174.174 INFO    ] No update needed
[2026-06-13 01:15:30,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 01:15:30,194.194 INFO    ] 200
[2026-06-13 01:15:30,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:30,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:15:30,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:15:30,264.264 INFO    ] No camera update needed
[2026-06-13 01:15:30,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:15:30,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:15:30,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:15:30,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:15:32,305.305 INFO    ] ================================================
[2026-06-13 01:15:32,315.315 INFO    ] Launching Daemon at Sat Jun 13 01:15:32 IST 2026
[2026-06-13 01:15:32,322.322 INFO    ] ================================================
[2026-06-13 01:15:32,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:15:32
[2026-06-13 01:15:32,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:15:33,088.088 INFO    ] Initializing speech engine...
[2026-06-13 01:15:33,091.091 INFO    ] 2026-06-13 01:15:33
[2026-06-13 01:15:33,321.321 INFO    ] 2026-06-13 01:15:33
[2026-06-13 01:15:33,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:15:33,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:15:33,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:15:33,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:15:33,752.752 INFO    ] time= 13/06/2026 01:15:33
[2026-06-13 01:15:33,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:15:33,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:15:33,874.874 INFO    ] No existing commands found in stream
[2026-06-13 01:15:38,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:15:38,887.887 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 01:15:41,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:15:41,523.523 INFO    ] Checking for system updates...
[2026-06-13 01:15:41,544.544 INFO    ] 200
[2026-06-13 01:15:41,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:41,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:41,577.577 INFO    ] No update needed
[2026-06-13 01:15:41,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 01:15:41,600.600 INFO    ] 200
[2026-06-13 01:15:41,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:41,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:15:41,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:41,672.672 INFO    ] No camera update needed
[2026-06-13 01:15:41,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:15:41,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:15:41,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:15:41,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:15:43,721.721 INFO    ] ================================================
[2026-06-13 01:15:43,736.736 INFO    ] Launching Daemon at Sat Jun 13 01:15:43 IST 2026
[2026-06-13 01:15:43,747.747 INFO    ] ================================================
[2026-06-13 01:15:44,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:15:44
[2026-06-13 01:15:44,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:15:44,552.552 INFO    ] Initializing speech engine...
[2026-06-13 01:15:44,558.558 INFO    ] 2026-06-13 01:15:44
[2026-06-13 01:15:44,784.784 INFO    ] 2026-06-13 01:15:44
[2026-06-13 01:15:44,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:15:44,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:15:45,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:15:45,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:15:45,203.203 INFO    ] time= 13/06/2026 01:15:45
[2026-06-13 01:15:45,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:15:45,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:15:45,333.333 INFO    ] No existing commands found in stream
[2026-06-13 01:15:50,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:15:50,346.346 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 01:15:52,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:15:52,280.280 INFO    ] Checking for system updates...
[2026-06-13 01:15:52,301.301 INFO    ] 200
[2026-06-13 01:15:52,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:52,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:52,334.334 INFO    ] No update needed
[2026-06-13 01:15:52,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 01:15:52,355.355 INFO    ] 200
[2026-06-13 01:15:52,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:15:52,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:15:52,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:15:52,421.421 INFO    ] No camera update needed
[2026-06-13 01:15:52,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:15:52,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:15:52,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:15:52,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:15:54,470.470 INFO    ] ================================================
[2026-06-13 01:15:54,485.485 INFO    ] Launching Daemon at Sat Jun 13 01:15:54 IST 2026
[2026-06-13 01:15:54,496.496 INFO    ] ================================================
[2026-06-13 01:15:54,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:15:54
[2026-06-13 01:15:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:15:55,280.280 INFO    ] Initializing speech engine...
[2026-06-13 01:15:55,293.293 INFO    ] 2026-06-13 01:15:55
[2026-06-13 01:15:55,513.513 INFO    ] 2026-06-13 01:15:55
[2026-06-13 01:15:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:15:55,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:15:55,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:15:55,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:15:55,942.942 INFO    ] time= 13/06/2026 01:15:55
[2026-06-13 01:15:55,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:15:55,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:15:56,069.069 INFO    ] No existing commands found in stream
[2026-06-13 01:16:01,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:01,083.083 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 01:16:01,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:16:01,903.903 INFO    ] Checking for system updates...
[2026-06-13 01:16:01,942.942 INFO    ] 200
[2026-06-13 01:16:01,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:01,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:02,001.001 INFO    ] No update needed
[2026-06-13 01:16:02,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:02,026.026 INFO    ] 200
[2026-06-13 01:16:02,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:02,059.059 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:02,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:02,133.133 INFO    ] No camera update needed
[2026-06-13 01:16:02,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:02,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:02,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:02,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:04,188.188 INFO    ] ================================================
[2026-06-13 01:16:04,207.207 INFO    ] Launching Daemon at Sat Jun 13 01:16:04 IST 2026
[2026-06-13 01:16:04,219.219 INFO    ] ================================================
[2026-06-13 01:16:04,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:04
[2026-06-13 01:16:04,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:05,046.046 INFO    ] Initializing speech engine...
[2026-06-13 01:16:05,057.057 INFO    ] 2026-06-13 01:16:05
[2026-06-13 01:16:05,263.263 INFO    ] 2026-06-13 01:16:05
[2026-06-13 01:16:05,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:05,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:05,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:05,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:05,683.683 INFO    ] time= 13/06/2026 01:16:05
[2026-06-13 01:16:05,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:05,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:05,781.781 INFO    ] No existing commands found in stream
[2026-06-13 01:16:10,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:10,809.809 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 01:16:13,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:16:13,169.169 INFO    ] Checking for system updates...
[2026-06-13 01:16:13,190.190 INFO    ] 200
[2026-06-13 01:16:13,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:13,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:13,224.224 INFO    ] No update needed
[2026-06-13 01:16:13,225.225 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:13,245.245 INFO    ] 200
[2026-06-13 01:16:13,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:13,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:13,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:13,309.309 INFO    ] No camera update needed
[2026-06-13 01:16:13,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:13,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:13,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:13,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:15,358.358 INFO    ] ================================================
[2026-06-13 01:16:15,373.373 INFO    ] Launching Daemon at Sat Jun 13 01:16:15 IST 2026
[2026-06-13 01:16:15,384.384 INFO    ] ================================================
[2026-06-13 01:16:15,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:15
[2026-06-13 01:16:16,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:16,162.162 INFO    ] Initializing speech engine...
[2026-06-13 01:16:16,172.172 INFO    ] 2026-06-13 01:16:16
[2026-06-13 01:16:16,377.377 INFO    ] 2026-06-13 01:16:16
[2026-06-13 01:16:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:16,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:16,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:16,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:16,778.778 INFO    ] time= 13/06/2026 01:16:16
[2026-06-13 01:16:16,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:16,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:16,893.893 INFO    ] No existing commands found in stream
[2026-06-13 01:16:21,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:21,910.910 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 01:16:23,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:16:23,269.269 INFO    ] Checking for system updates...
[2026-06-13 01:16:23,290.290 INFO    ] 200
[2026-06-13 01:16:23,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:23,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:23,324.324 INFO    ] No update needed
[2026-06-13 01:16:23,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:23,345.345 INFO    ] 200
[2026-06-13 01:16:23,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:23,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:23,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:23,417.417 INFO    ] No camera update needed
[2026-06-13 01:16:23,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:23,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:23,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:23,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:25,472.472 INFO    ] ================================================
[2026-06-13 01:16:25,487.487 INFO    ] Launching Daemon at Sat Jun 13 01:16:25 IST 2026
[2026-06-13 01:16:25,499.499 INFO    ] ================================================
[2026-06-13 01:16:25,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:25
[2026-06-13 01:16:26,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:26,352.352 INFO    ] Initializing speech engine...
[2026-06-13 01:16:26,360.360 INFO    ] 2026-06-13 01:16:26
[2026-06-13 01:16:26,570.570 INFO    ] 2026-06-13 01:16:26
[2026-06-13 01:16:26,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:26,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:26,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:26,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:26,983.983 INFO    ] time= 13/06/2026 01:16:26
[2026-06-13 01:16:27,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:27,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:27,087.087 INFO    ] No existing commands found in stream
[2026-06-13 01:16:32,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:32,100.100 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 01:16:34,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:16:34,542.542 INFO    ] Checking for system updates...
[2026-06-13 01:16:34,564.564 INFO    ] 200
[2026-06-13 01:16:34,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:34,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:34,600.600 INFO    ] No update needed
[2026-06-13 01:16:34,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:34,623.623 INFO    ] 200
[2026-06-13 01:16:34,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:34,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:34,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:16:34,690.690 INFO    ] No camera update needed
[2026-06-13 01:16:34,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:34,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:34,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:34,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:36,740.740 INFO    ] ================================================
[2026-06-13 01:16:36,757.757 INFO    ] Launching Daemon at Sat Jun 13 01:16:36 IST 2026
[2026-06-13 01:16:36,769.769 INFO    ] ================================================
[2026-06-13 01:16:37,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:37
[2026-06-13 01:16:38,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:38,404.404 INFO    ] Initializing speech engine...
[2026-06-13 01:16:38,418.418 INFO    ] 2026-06-13 01:16:38
[2026-06-13 01:16:38,691.691 INFO    ] 2026-06-13 01:16:38
[2026-06-13 01:16:38,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:39,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:39,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:39,174.174 INFO    ] time= 13/06/2026 01:16:39
[2026-06-13 01:16:39,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:39,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:39,327.327 INFO    ] No existing commands found in stream
[2026-06-13 01:16:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:44,365.365 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 01:16:45,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:16:45,664.664 INFO    ] Checking for system updates...
[2026-06-13 01:16:45,685.685 INFO    ] 200
[2026-06-13 01:16:45,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:45,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:45,717.717 INFO    ] No update needed
[2026-06-13 01:16:45,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:45,739.739 INFO    ] 200
[2026-06-13 01:16:45,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:45,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:45,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:45,806.806 INFO    ] No camera update needed
[2026-06-13 01:16:45,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:45,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:45,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:45,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:47,853.853 INFO    ] ================================================
[2026-06-13 01:16:47,869.869 INFO    ] Launching Daemon at Sat Jun 13 01:16:47 IST 2026
[2026-06-13 01:16:47,880.880 INFO    ] ================================================
[2026-06-13 01:16:48,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:48
[2026-06-13 01:16:48,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:48,736.736 INFO    ] Initializing speech engine...
[2026-06-13 01:16:48,747.747 INFO    ] 2026-06-13 01:16:48
[2026-06-13 01:16:48,955.955 INFO    ] 2026-06-13 01:16:48
[2026-06-13 01:16:48,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:49,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:49,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:49,372.372 INFO    ] time= 13/06/2026 01:16:49
[2026-06-13 01:16:49,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:49,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:49,494.494 INFO    ] No existing commands found in stream
[2026-06-13 01:16:54,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:16:54,506.506 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 01:16:55,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:16:55,448.448 INFO    ] Checking for system updates...
[2026-06-13 01:16:55,470.470 INFO    ] 200
[2026-06-13 01:16:55,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:55,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:55,504.504 INFO    ] No update needed
[2026-06-13 01:16:55,505.505 INFO    ] Checking for camera pi updates...
[2026-06-13 01:16:55,526.526 INFO    ] 200
[2026-06-13 01:16:55,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:16:55,552.552 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:16:55,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:16:55,589.589 INFO    ] No camera update needed
[2026-06-13 01:16:55,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:16:55,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:16:55,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:16:55,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:16:57,639.639 INFO    ] ================================================
[2026-06-13 01:16:57,655.655 INFO    ] Launching Daemon at Sat Jun 13 01:16:57 IST 2026
[2026-06-13 01:16:57,666.666 INFO    ] ================================================
[2026-06-13 01:16:58,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:16:58
[2026-06-13 01:16:58,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:16:58,467.467 INFO    ] Initializing speech engine...
[2026-06-13 01:16:58,477.477 INFO    ] 2026-06-13 01:16:58
[2026-06-13 01:16:58,683.683 INFO    ] 2026-06-13 01:16:58
[2026-06-13 01:16:58,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:16:58,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:16:58,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:16:59,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:16:59,102.102 INFO    ] time= 13/06/2026 01:16:59
[2026-06-13 01:16:59,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:16:59,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:16:59,227.227 INFO    ] No existing commands found in stream
[2026-06-13 01:17:04,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:04,243.243 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 01:17:04,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:17:04,767.767 INFO    ] Checking for system updates...
[2026-06-13 01:17:04,801.801 INFO    ] 200
[2026-06-13 01:17:04,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:04,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:04,834.834 INFO    ] No update needed
[2026-06-13 01:17:04,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 01:17:04,857.857 INFO    ] 200
[2026-06-13 01:17:04,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:04,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:17:04,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:04,920.920 INFO    ] No camera update needed
[2026-06-13 01:17:04,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:17:04,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:17:04,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:17:04,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:17:06,970.970 INFO    ] ================================================
[2026-06-13 01:17:06,985.985 INFO    ] Launching Daemon at Sat Jun 13 01:17:06 IST 2026
[2026-06-13 01:17:07,995.995 INFO    ] ================================================
[2026-06-13 01:17:07,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:17:07
[2026-06-13 01:17:07,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:17:07,829.829 INFO    ] Initializing speech engine...
[2026-06-13 01:17:07,836.836 INFO    ] 2026-06-13 01:17:07
[2026-06-13 01:17:08,055.055 INFO    ] 2026-06-13 01:17:08
[2026-06-13 01:17:08,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:17:08,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:17:08,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:17:08,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:17:08,481.481 INFO    ] time= 13/06/2026 01:17:08
[2026-06-13 01:17:08,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:17:08,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:17:08,606.606 INFO    ] No existing commands found in stream
[2026-06-13 01:17:13,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:13,620.620 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 01:17:14,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:17:14,747.747 INFO    ] Checking for system updates...
[2026-06-13 01:17:14,768.768 INFO    ] 200
[2026-06-13 01:17:14,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:14,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:14,802.802 INFO    ] No update needed
[2026-06-13 01:17:14,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 01:17:14,822.822 INFO    ] 200
[2026-06-13 01:17:14,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:14,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:17:14,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:14,882.882 INFO    ] No camera update needed
[2026-06-13 01:17:14,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:17:14,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:17:14,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:17:14,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:17:16,931.931 INFO    ] ================================================
[2026-06-13 01:17:16,946.946 INFO    ] Launching Daemon at Sat Jun 13 01:17:16 IST 2026
[2026-06-13 01:17:16,957.957 INFO    ] ================================================
[2026-06-13 01:17:17,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:17:17
[2026-06-13 01:17:17,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:17:17,805.805 INFO    ] Initializing speech engine...
[2026-06-13 01:17:17,810.810 INFO    ] 2026-06-13 01:17:17
[2026-06-13 01:17:18,019.019 INFO    ] 2026-06-13 01:17:17
[2026-06-13 01:17:18,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:17:18,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:17:18,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:17:18,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:17:18,421.421 INFO    ] time= 13/06/2026 01:17:18
[2026-06-13 01:17:18,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:17:18,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:17:18,542.542 INFO    ] No existing commands found in stream
[2026-06-13 01:17:23,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:23,556.556 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 01:17:26,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:17:26,387.387 INFO    ] Checking for system updates...
[2026-06-13 01:17:26,410.410 INFO    ] 200
[2026-06-13 01:17:26,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:26,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:26,444.444 INFO    ] No update needed
[2026-06-13 01:17:26,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 01:17:26,465.465 INFO    ] 200
[2026-06-13 01:17:26,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:26,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:17:26,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:26,632.632 INFO    ] No camera update needed
[2026-06-13 01:17:26,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:17:26,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:17:26,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:17:26,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:17:28,673.673 INFO    ] ================================================
[2026-06-13 01:17:28,693.693 INFO    ] Launching Daemon at Sat Jun 13 01:17:28 IST 2026
[2026-06-13 01:17:28,700.700 INFO    ] ================================================
[2026-06-13 01:17:29,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:17:29
[2026-06-13 01:17:29,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:17:29,497.497 INFO    ] Initializing speech engine...
[2026-06-13 01:17:29,510.510 INFO    ] 2026-06-13 01:17:29
[2026-06-13 01:17:29,745.745 INFO    ] 2026-06-13 01:17:29
[2026-06-13 01:17:29,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:17:29,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:17:29,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:17:29,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:17:30,008.008 INFO    ] time= 13/06/2026 01:17:29
[2026-06-13 01:17:30,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:17:30,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:17:30,094.094 INFO    ] No existing commands found in stream
[2026-06-13 01:17:35,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:35,113.113 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 01:17:36,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:17:36,736.736 INFO    ] Checking for system updates...
[2026-06-13 01:17:36,777.777 INFO    ] 200
[2026-06-13 01:17:36,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:36,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:17:36,821.821 INFO    ] No update needed
[2026-06-13 01:17:36,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 01:17:36,842.842 INFO    ] 200
[2026-06-13 01:17:36,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:36,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:17:36,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:17:36,904.904 INFO    ] No camera update needed
[2026-06-13 01:17:36,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:17:36,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:17:36,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:17:36,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:17:38,953.953 INFO    ] ================================================
[2026-06-13 01:17:38,969.969 INFO    ] Launching Daemon at Sat Jun 13 01:17:38 IST 2026
[2026-06-13 01:17:38,980.980 INFO    ] ================================================
[2026-06-13 01:17:39,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:17:39
[2026-06-13 01:17:39,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:17:39,823.823 INFO    ] Initializing speech engine...
[2026-06-13 01:17:39,829.829 INFO    ] 2026-06-13 01:17:39
[2026-06-13 01:17:40,037.037 INFO    ] 2026-06-13 01:17:40
[2026-06-13 01:17:40,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:17:40,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:17:40,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:17:40,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:17:40,458.458 INFO    ] time= 13/06/2026 01:17:40
[2026-06-13 01:17:40,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:17:40,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:17:40,557.557 INFO    ] No existing commands found in stream
[2026-06-13 01:17:45,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:45,575.575 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 01:17:48,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:17:48,340.340 INFO    ] Checking for system updates...
[2026-06-13 01:17:48,361.361 INFO    ] 200
[2026-06-13 01:17:48,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:48,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:17:48,395.395 INFO    ] No update needed
[2026-06-13 01:17:48,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 01:17:48,416.416 INFO    ] 200
[2026-06-13 01:17:48,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:17:48,442.442 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:17:48,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:17:48,485.485 INFO    ] No camera update needed
[2026-06-13 01:17:48,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:17:48,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:17:48,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:17:48,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:17:50,536.536 INFO    ] ================================================
[2026-06-13 01:17:50,552.552 INFO    ] Launching Daemon at Sat Jun 13 01:17:50 IST 2026
[2026-06-13 01:17:50,563.563 INFO    ] ================================================
[2026-06-13 01:17:50,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:17:50
[2026-06-13 01:17:51,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:17:51,415.415 INFO    ] Initializing speech engine...
[2026-06-13 01:17:51,420.420 INFO    ] 2026-06-13 01:17:51
[2026-06-13 01:17:51,628.628 INFO    ] 2026-06-13 01:17:51
[2026-06-13 01:17:51,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:17:51,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:17:51,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:17:51,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:17:52,031.031 INFO    ] time= 13/06/2026 01:17:51
[2026-06-13 01:17:52,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:17:52,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:17:52,147.147 INFO    ] No existing commands found in stream
[2026-06-13 01:17:57,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:17:57,160.160 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 01:18:00,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:18:00,799.799 INFO    ] Checking for system updates...
[2026-06-13 01:18:00,820.820 INFO    ] 200
[2026-06-13 01:18:00,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:00,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:00,853.853 INFO    ] No update needed
[2026-06-13 01:18:00,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:00,875.875 INFO    ] 200
[2026-06-13 01:18:00,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:00,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:00,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:00,944.944 INFO    ] No camera update needed
[2026-06-13 01:18:00,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:00,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:00,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:00,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:18:03,999.999 INFO    ] ================================================
[2026-06-13 01:18:03,014.014 INFO    ] Launching Daemon at Sat Jun 13 01:18:03 IST 2026
[2026-06-13 01:18:03,024.024 INFO    ] ================================================
[2026-06-13 01:18:03,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:18:03
[2026-06-13 01:18:04,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:18:04,450.450 INFO    ] Initializing speech engine...
[2026-06-13 01:18:04,457.457 INFO    ] 2026-06-13 01:18:04
[2026-06-13 01:18:04,761.761 INFO    ] 2026-06-13 01:18:04
[2026-06-13 01:18:04,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:18:04,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:18:04,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:18:05,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:18:05,177.177 INFO    ] time= 13/06/2026 01:18:05
[2026-06-13 01:18:05,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:18:05,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:18:05,319.319 INFO    ] No existing commands found in stream
[2026-06-13 01:18:10,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:18:10,333.333 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 01:18:12,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:18:12,081.081 INFO    ] Checking for system updates...
[2026-06-13 01:18:12,105.105 INFO    ] 200
[2026-06-13 01:18:12,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:12,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:12,138.138 INFO    ] No update needed
[2026-06-13 01:18:12,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:12,160.160 INFO    ] 200
[2026-06-13 01:18:12,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:12,184.184 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:12,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:12,225.225 INFO    ] No camera update needed
[2026-06-13 01:18:12,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:12,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:12,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:12,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:18:14,272.272 INFO    ] ================================================
[2026-06-13 01:18:14,287.287 INFO    ] Launching Daemon at Sat Jun 13 01:18:14 IST 2026
[2026-06-13 01:18:14,298.298 INFO    ] ================================================
[2026-06-13 01:18:14,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:18:14
[2026-06-13 01:18:14,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:18:15,107.107 INFO    ] Initializing speech engine...
[2026-06-13 01:18:15,115.115 INFO    ] 2026-06-13 01:18:15
[2026-06-13 01:18:15,341.341 INFO    ] 2026-06-13 01:18:15
[2026-06-13 01:18:15,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:18:15,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:18:15,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:18:15,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:18:15,781.781 INFO    ] time= 13/06/2026 01:18:15
[2026-06-13 01:18:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:18:15,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:18:15,897.897 INFO    ] No existing commands found in stream
[2026-06-13 01:18:20,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:18:20,911.911 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 01:18:25,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:18:25,244.244 INFO    ] Checking for system updates...
[2026-06-13 01:18:25,265.265 INFO    ] 200
[2026-06-13 01:18:25,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:25,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:25,300.300 INFO    ] No update needed
[2026-06-13 01:18:25,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:25,321.321 INFO    ] 200
[2026-06-13 01:18:25,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:25,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:25,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:25,391.391 INFO    ] No camera update needed
[2026-06-13 01:18:25,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:25,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:25,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:25,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:18:27,438.438 INFO    ] ================================================
[2026-06-13 01:18:27,454.454 INFO    ] Launching Daemon at Sat Jun 13 01:18:27 IST 2026
[2026-06-13 01:18:27,465.465 INFO    ] ================================================
[2026-06-13 01:18:27,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:18:27
[2026-06-13 01:18:28,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:18:28,259.259 INFO    ] Initializing speech engine...
[2026-06-13 01:18:28,267.267 INFO    ] 2026-06-13 01:18:28
[2026-06-13 01:18:28,493.493 INFO    ] 2026-06-13 01:18:28
[2026-06-13 01:18:28,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:18:28,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:18:28,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:18:28,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:18:28,920.920 INFO    ] time= 13/06/2026 01:18:28
[2026-06-13 01:18:28,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:18:28,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:18:29,057.057 INFO    ] No existing commands found in stream
[2026-06-13 01:18:34,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:18:34,069.069 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 01:18:35,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:18:35,013.013 INFO    ] Checking for system updates...
[2026-06-13 01:18:35,034.034 INFO    ] 200
[2026-06-13 01:18:35,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:35,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:35,069.069 INFO    ] No update needed
[2026-06-13 01:18:35,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:35,090.090 INFO    ] 200
[2026-06-13 01:18:35,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:35,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:35,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:18:35,153.153 INFO    ] No camera update needed
[2026-06-13 01:18:35,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:35,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:35,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:35,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:18:37,201.201 INFO    ] ================================================
[2026-06-13 01:18:37,217.217 INFO    ] Launching Daemon at Sat Jun 13 01:18:37 IST 2026
[2026-06-13 01:18:37,227.227 INFO    ] ================================================
[2026-06-13 01:18:37,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:18:37
[2026-06-13 01:18:37,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:18:38,017.017 INFO    ] Initializing speech engine...
[2026-06-13 01:18:38,022.022 INFO    ] 2026-06-13 01:18:38
[2026-06-13 01:18:38,227.227 INFO    ] 2026-06-13 01:18:38
[2026-06-13 01:18:38,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:18:38,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:18:38,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:18:38,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:18:38,642.642 INFO    ] time= 13/06/2026 01:18:38
[2026-06-13 01:18:38,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:18:38,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:18:38,748.748 INFO    ] No existing commands found in stream
[2026-06-13 01:18:43,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:18:43,761.761 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 01:18:47,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:18:47,786.786 INFO    ] Checking for system updates...
[2026-06-13 01:18:47,806.806 INFO    ] 200
[2026-06-13 01:18:47,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:47,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:47,839.839 INFO    ] No update needed
[2026-06-13 01:18:47,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:47,862.862 INFO    ] 200
[2026-06-13 01:18:47,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:47,889.889 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:47,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:47,924.924 INFO    ] No camera update needed
[2026-06-13 01:18:47,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:47,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:47,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:47,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:18:49,973.973 INFO    ] ================================================
[2026-06-13 01:18:49,988.988 INFO    ] Launching Daemon at Sat Jun 13 01:18:49 IST 2026
[2026-06-13 01:18:50,999.999 INFO    ] ================================================
[2026-06-13 01:18:50,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:18:50
[2026-06-13 01:18:50,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:18:50,805.805 INFO    ] Initializing speech engine...
[2026-06-13 01:18:50,813.813 INFO    ] 2026-06-13 01:18:50
[2026-06-13 01:18:51,022.022 INFO    ] 2026-06-13 01:18:50
[2026-06-13 01:18:51,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:18:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:18:51,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:18:51,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:18:51,440.440 INFO    ] time= 13/06/2026 01:18:51
[2026-06-13 01:18:51,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:18:51,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:18:51,541.541 INFO    ] No existing commands found in stream
[2026-06-13 01:18:56,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:18:56,553.553 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 01:18:58,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:18:58,978.978 INFO    ] Checking for system updates...
[2026-06-13 01:18:58,999.999 INFO    ] 200
[2026-06-13 01:18:59,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:59,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:59,035.035 INFO    ] No update needed
[2026-06-13 01:18:59,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 01:18:59,058.058 INFO    ] 200
[2026-06-13 01:18:59,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:18:59,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:18:59,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:18:59,118.118 INFO    ] No camera update needed
[2026-06-13 01:18:59,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:18:59,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:18:59,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:18:59,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:01,168.168 INFO    ] ================================================
[2026-06-13 01:19:01,183.183 INFO    ] Launching Daemon at Sat Jun 13 01:19:01 IST 2026
[2026-06-13 01:19:01,193.193 INFO    ] ================================================
[2026-06-13 01:19:01,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:01
[2026-06-13 01:19:01,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:01,972.972 INFO    ] Initializing speech engine...
[2026-06-13 01:19:01,977.977 INFO    ] 2026-06-13 01:19:01
[2026-06-13 01:19:02,250.250 INFO    ] 2026-06-13 01:19:02
[2026-06-13 01:19:02,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:02,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:02,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:02,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:02,631.631 INFO    ] time= 13/06/2026 01:19:02
[2026-06-13 01:19:02,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:02,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:02,829.829 INFO    ] No existing commands found in stream
[2026-06-13 01:19:07,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:19:07,851.851 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 01:19:11,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:19:11,765.765 INFO    ] Checking for system updates...
[2026-06-13 01:19:11,786.786 INFO    ] 200
[2026-06-13 01:19:11,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:11,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:11,819.819 INFO    ] No update needed
[2026-06-13 01:19:11,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 01:19:11,841.841 INFO    ] 200
[2026-06-13 01:19:11,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:11,866.866 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:19:11,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:11,915.915 INFO    ] No camera update needed
[2026-06-13 01:19:11,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:19:11,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:19:11,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:19:11,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:13,963.963 INFO    ] ================================================
[2026-06-13 01:19:13,978.978 INFO    ] Launching Daemon at Sat Jun 13 01:19:13 IST 2026
[2026-06-13 01:19:13,989.989 INFO    ] ================================================
[2026-06-13 01:19:14,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:14
[2026-06-13 01:19:14,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:14,802.802 INFO    ] Initializing speech engine...
[2026-06-13 01:19:14,807.807 INFO    ] 2026-06-13 01:19:14
[2026-06-13 01:19:15,010.010 INFO    ] 2026-06-13 01:19:14
[2026-06-13 01:19:15,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:15,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:15,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:15,426.426 INFO    ] time= 13/06/2026 01:19:15
[2026-06-13 01:19:15,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:15,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:15,533.533 INFO    ] No existing commands found in stream
[2026-06-13 01:19:20,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:19:20,545.545 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 01:19:23,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:19:23,166.166 INFO    ] Checking for system updates...
[2026-06-13 01:19:23,187.187 INFO    ] 200
[2026-06-13 01:19:23,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:23,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:23,220.220 INFO    ] No update needed
[2026-06-13 01:19:23,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 01:19:23,241.241 INFO    ] 200
[2026-06-13 01:19:23,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:23,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:19:23,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:19:23,306.306 INFO    ] No camera update needed
[2026-06-13 01:19:23,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:19:23,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:19:23,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:19:23,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:25,354.354 INFO    ] ================================================
[2026-06-13 01:19:25,369.369 INFO    ] Launching Daemon at Sat Jun 13 01:19:25 IST 2026
[2026-06-13 01:19:25,380.380 INFO    ] ================================================
[2026-06-13 01:19:25,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:25
[2026-06-13 01:19:26,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:26,169.169 INFO    ] Initializing speech engine...
[2026-06-13 01:19:26,174.174 INFO    ] 2026-06-13 01:19:26
[2026-06-13 01:19:26,377.377 INFO    ] 2026-06-13 01:19:26
[2026-06-13 01:19:26,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:26,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:26,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:26,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:26,779.779 INFO    ] time= 13/06/2026 01:19:26
[2026-06-13 01:19:26,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:26,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:26,912.912 INFO    ] No existing commands found in stream
[2026-06-13 01:19:31,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:19:31,923.923 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 01:19:32,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:19:32,729.729 INFO    ] Checking for system updates...
[2026-06-13 01:19:32,754.754 INFO    ] 200
[2026-06-13 01:19:32,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:32,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:32,790.790 INFO    ] No update needed
[2026-06-13 01:19:32,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 01:19:32,811.811 INFO    ] 200
[2026-06-13 01:19:32,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:32,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:19:32,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:32,862.862 INFO    ] No camera update needed
[2026-06-13 01:19:32,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:19:32,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:19:32,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:19:32,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:34,913.913 INFO    ] ================================================
[2026-06-13 01:19:34,928.928 INFO    ] Launching Daemon at Sat Jun 13 01:19:34 IST 2026
[2026-06-13 01:19:34,939.939 INFO    ] ================================================
[2026-06-13 01:19:35,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:35
[2026-06-13 01:19:35,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:35,805.805 INFO    ] Initializing speech engine...
[2026-06-13 01:19:35,809.809 INFO    ] 2026-06-13 01:19:35
[2026-06-13 01:19:36,019.019 INFO    ] 2026-06-13 01:19:36
[2026-06-13 01:19:36,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:36,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:36,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:36,431.431 INFO    ] time= 13/06/2026 01:19:36
[2026-06-13 01:19:36,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:36,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:36,537.537 INFO    ] No existing commands found in stream
[2026-06-13 01:19:41,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:19:41,560.560 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 01:19:42,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:19:42,706.706 INFO    ] Checking for system updates...
[2026-06-13 01:19:42,729.729 INFO    ] 200
[2026-06-13 01:19:42,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:42,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:19:42,762.762 INFO    ] No update needed
[2026-06-13 01:19:42,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 01:19:42,782.782 INFO    ] 200
[2026-06-13 01:19:42,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:42,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:19:42,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:19:42,846.846 INFO    ] No camera update needed
[2026-06-13 01:19:42,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:19:42,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:19:42,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:19:42,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:44,893.893 INFO    ] ================================================
[2026-06-13 01:19:44,907.907 INFO    ] Launching Daemon at Sat Jun 13 01:19:44 IST 2026
[2026-06-13 01:19:44,918.918 INFO    ] ================================================
[2026-06-13 01:19:45,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:45
[2026-06-13 01:19:45,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:45,739.739 INFO    ] Initializing speech engine...
[2026-06-13 01:19:45,744.744 INFO    ] 2026-06-13 01:19:45
[2026-06-13 01:19:45,952.952 INFO    ] 2026-06-13 01:19:45
[2026-06-13 01:19:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:46,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:46,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:46,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:46,316.316 INFO    ] time= 13/06/2026 01:19:46
[2026-06-13 01:19:46,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:46,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:46,478.478 INFO    ] No existing commands found in stream
[2026-06-13 01:19:51,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:19:51,492.492 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 01:19:55,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:19:55,781.781 INFO    ] Checking for system updates...
[2026-06-13 01:19:55,802.802 INFO    ] 200
[2026-06-13 01:19:55,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:55,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:55,836.836 INFO    ] No update needed
[2026-06-13 01:19:55,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 01:19:55,858.858 INFO    ] 200
[2026-06-13 01:19:55,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:19:55,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:19:55,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:19:55,922.922 INFO    ] No camera update needed
[2026-06-13 01:19:55,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:19:55,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:19:55,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:19:55,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:19:57,971.971 INFO    ] ================================================
[2026-06-13 01:19:57,986.986 INFO    ] Launching Daemon at Sat Jun 13 01:19:57 IST 2026
[2026-06-13 01:19:58,997.997 INFO    ] ================================================
[2026-06-13 01:19:58,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:19:58
[2026-06-13 01:19:58,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:19:58,784.784 INFO    ] Initializing speech engine...
[2026-06-13 01:19:58,789.789 INFO    ] 2026-06-13 01:19:58
[2026-06-13 01:19:58,995.995 INFO    ] 2026-06-13 01:19:58
[2026-06-13 01:19:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:19:59,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:19:59,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:19:59,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:19:59,409.409 INFO    ] time= 13/06/2026 01:19:59
[2026-06-13 01:19:59,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:19:59,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:19:59,536.536 INFO    ] No existing commands found in stream
[2026-06-13 01:20:04,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:20:04,548.548 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 01:20:08,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:20:08,779.779 INFO    ] Checking for system updates...
[2026-06-13 01:20:08,818.818 INFO    ] 200
[2026-06-13 01:20:08,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:08,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:20:08,891.891 INFO    ] No update needed
[2026-06-13 01:20:08,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 01:20:08,921.921 INFO    ] 200
[2026-06-13 01:20:08,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:08,947.947 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:20:08,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:20:08,986.986 INFO    ] No camera update needed
[2026-06-13 01:20:08,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:20:08,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:20:08,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:20:08,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:20:11,033.033 INFO    ] ================================================
[2026-06-13 01:20:11,049.049 INFO    ] Launching Daemon at Sat Jun 13 01:20:11 IST 2026
[2026-06-13 01:20:11,060.060 INFO    ] ================================================
[2026-06-13 01:20:11,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:20:11
[2026-06-13 01:20:11,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:20:11,864.864 INFO    ] Initializing speech engine...
[2026-06-13 01:20:11,874.874 INFO    ] 2026-06-13 01:20:11
[2026-06-13 01:20:12,089.089 INFO    ] 2026-06-13 01:20:12
[2026-06-13 01:20:12,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:20:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:20:12,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:20:12,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:20:12,509.509 INFO    ] time= 13/06/2026 01:20:12
[2026-06-13 01:20:12,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:20:12,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:20:12,639.639 INFO    ] No existing commands found in stream
[2026-06-13 01:20:17,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:20:17,652.652 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 01:20:20,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:20:20,959.959 INFO    ] Checking for system updates...
[2026-06-13 01:20:20,980.980 INFO    ] 200
[2026-06-13 01:20:20,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:21,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:20:21,013.013 INFO    ] No update needed
[2026-06-13 01:20:21,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 01:20:21,033.033 INFO    ] 200
[2026-06-13 01:20:21,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:21,058.058 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:20:21,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:20:21,095.095 INFO    ] No camera update needed
[2026-06-13 01:20:21,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:20:21,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:20:21,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:20:21,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:20:23,134.134 INFO    ] ================================================
[2026-06-13 01:20:23,149.149 INFO    ] Launching Daemon at Sat Jun 13 01:20:23 IST 2026
[2026-06-13 01:20:23,160.160 INFO    ] ================================================
[2026-06-13 01:20:23,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:20:23
[2026-06-13 01:20:23,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:20:23,958.958 INFO    ] Initializing speech engine...
[2026-06-13 01:20:23,964.964 INFO    ] 2026-06-13 01:20:23
[2026-06-13 01:20:24,166.166 INFO    ] 2026-06-13 01:20:24
[2026-06-13 01:20:24,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:20:24,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:20:24,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:20:24,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:20:24,579.579 INFO    ] time= 13/06/2026 01:20:24
[2026-06-13 01:20:24,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:20:24,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:20:24,677.677 INFO    ] No existing commands found in stream
[2026-06-13 01:20:29,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:20:29,690.690 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 01:20:30,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:20:30,801.801 INFO    ] Checking for system updates...
[2026-06-13 01:20:30,823.823 INFO    ] 200
[2026-06-13 01:20:30,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:30,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:30,856.856 INFO    ] No update needed
[2026-06-13 01:20:30,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 01:20:30,880.880 INFO    ] 200
[2026-06-13 01:20:30,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:30,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:20:30,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:30,954.954 INFO    ] No camera update needed
[2026-06-13 01:20:30,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:20:30,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:20:30,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:20:30,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:20:32,987.987 INFO    ] ================================================
[2026-06-13 01:20:32,995.995 INFO    ] Launching Daemon at Sat Jun 13 01:20:32 IST 2026
[2026-06-13 01:20:33,001.001 INFO    ] ================================================
[2026-06-13 01:20:33,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:20:33
[2026-06-13 01:20:33,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:20:33,801.801 INFO    ] Initializing speech engine...
[2026-06-13 01:20:33,811.811 INFO    ] 2026-06-13 01:20:33
[2026-06-13 01:20:34,014.014 INFO    ] 2026-06-13 01:20:33
[2026-06-13 01:20:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:20:34,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:20:34,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:20:34,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:20:34,418.418 INFO    ] time= 13/06/2026 01:20:34
[2026-06-13 01:20:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:20:34,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:20:34,535.535 INFO    ] No existing commands found in stream
[2026-06-13 01:20:39,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:20:39,552.552 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 01:20:42,552.552 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:20:42,554.554 INFO    ] Checking for system updates...
[2026-06-13 01:20:42,577.577 INFO    ] 200
[2026-06-13 01:20:42,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:42,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:42,612.612 INFO    ] No update needed
[2026-06-13 01:20:42,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 01:20:42,633.633 INFO    ] 200
[2026-06-13 01:20:42,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:42,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:20:42,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:42,698.698 INFO    ] No camera update needed
[2026-06-13 01:20:42,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:20:42,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:20:42,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:20:42,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:20:44,747.747 INFO    ] ================================================
[2026-06-13 01:20:44,763.763 INFO    ] Launching Daemon at Sat Jun 13 01:20:44 IST 2026
[2026-06-13 01:20:44,774.774 INFO    ] ================================================
[2026-06-13 01:20:45,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:20:45
[2026-06-13 01:20:45,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:20:45,559.559 INFO    ] Initializing speech engine...
[2026-06-13 01:20:45,571.571 INFO    ] 2026-06-13 01:20:45
[2026-06-13 01:20:45,778.778 INFO    ] 2026-06-13 01:20:45
[2026-06-13 01:20:45,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:20:45,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:20:46,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:20:46,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:20:46,178.178 INFO    ] time= 13/06/2026 01:20:46
[2026-06-13 01:20:46,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:20:46,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:20:46,299.299 INFO    ] No existing commands found in stream
[2026-06-13 01:20:51,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:20:51,316.316 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 01:20:51,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:20:51,942.942 INFO    ] Checking for system updates...
[2026-06-13 01:20:51,963.963 INFO    ] 200
[2026-06-13 01:20:51,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:51,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:51,996.996 INFO    ] No update needed
[2026-06-13 01:20:51,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 01:20:52,016.016 INFO    ] 200
[2026-06-13 01:20:52,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:20:52,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:20:52,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:20:52,081.081 INFO    ] No camera update needed
[2026-06-13 01:20:52,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:20:52,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:20:52,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:20:52,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:20:54,130.130 INFO    ] ================================================
[2026-06-13 01:20:54,145.145 INFO    ] Launching Daemon at Sat Jun 13 01:20:54 IST 2026
[2026-06-13 01:20:54,157.157 INFO    ] ================================================
[2026-06-13 01:20:54,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:20:54
[2026-06-13 01:20:54,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:20:54,953.953 INFO    ] Initializing speech engine...
[2026-06-13 01:20:54,959.959 INFO    ] 2026-06-13 01:20:54
[2026-06-13 01:20:55,264.264 INFO    ] 2026-06-13 01:20:55
[2026-06-13 01:20:55,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:20:55,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:20:55,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:20:55,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:20:55,610.610 INFO    ] time= 13/06/2026 01:20:55
[2026-06-13 01:20:55,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:20:55,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:20:55,683.683 INFO    ] No existing commands found in stream
[2026-06-13 01:21:00,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:21:00,696.696 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 01:21:03,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:21:03,769.769 INFO    ] Checking for system updates...
[2026-06-13 01:21:03,789.789 INFO    ] 200
[2026-06-13 01:21:03,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:03,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:03,823.823 INFO    ] No update needed
[2026-06-13 01:21:03,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 01:21:03,846.846 INFO    ] 200
[2026-06-13 01:21:03,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:03,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:21:03,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:03,914.914 INFO    ] No camera update needed
[2026-06-13 01:21:03,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:21:03,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:21:03,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:21:03,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:21:05,962.962 INFO    ] ================================================
[2026-06-13 01:21:05,982.982 INFO    ] Launching Daemon at Sat Jun 13 01:21:05 IST 2026
[2026-06-13 01:21:06,995.995 INFO    ] ================================================
[2026-06-13 01:21:06,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:21:06
[2026-06-13 01:21:07,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:21:07,359.359 INFO    ] Initializing speech engine...
[2026-06-13 01:21:07,368.368 INFO    ] 2026-06-13 01:21:07
[2026-06-13 01:21:07,614.614 INFO    ] 2026-06-13 01:21:07
[2026-06-13 01:21:07,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:21:07,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:21:07,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:21:07,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:21:07,984.984 INFO    ] time= 13/06/2026 01:21:07
[2026-06-13 01:21:07,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:21:07,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:21:08,058.058 INFO    ] No existing commands found in stream
[2026-06-13 01:21:13,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:21:13,071.071 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 01:21:15,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:21:15,343.343 INFO    ] Checking for system updates...
[2026-06-13 01:21:15,364.364 INFO    ] 200
[2026-06-13 01:21:15,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:15,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:15,397.397 INFO    ] No update needed
[2026-06-13 01:21:15,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 01:21:15,418.418 INFO    ] 200
[2026-06-13 01:21:15,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:15,442.442 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:21:15,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:15,487.487 INFO    ] No camera update needed
[2026-06-13 01:21:15,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:21:15,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:21:15,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:21:15,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:21:17,536.536 INFO    ] ================================================
[2026-06-13 01:21:17,552.552 INFO    ] Launching Daemon at Sat Jun 13 01:21:17 IST 2026
[2026-06-13 01:21:17,563.563 INFO    ] ================================================
[2026-06-13 01:21:17,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:21:17
[2026-06-13 01:21:18,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:21:18,372.372 INFO    ] Initializing speech engine...
[2026-06-13 01:21:18,376.376 INFO    ] 2026-06-13 01:21:18
[2026-06-13 01:21:18,605.605 INFO    ] 2026-06-13 01:21:18
[2026-06-13 01:21:18,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:21:18,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:21:18,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:21:18,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:21:19,021.021 INFO    ] time= 13/06/2026 01:21:18
[2026-06-13 01:21:19,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:21:19,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:21:19,158.158 INFO    ] No existing commands found in stream
[2026-06-13 01:21:24,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:21:24,170.170 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 01:21:27,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:21:27,090.090 INFO    ] Checking for system updates...
[2026-06-13 01:21:27,111.111 INFO    ] 200
[2026-06-13 01:21:27,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:27,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:21:27,144.144 INFO    ] No update needed
[2026-06-13 01:21:27,145.145 INFO    ] Checking for camera pi updates...
[2026-06-13 01:21:27,165.165 INFO    ] 200
[2026-06-13 01:21:27,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:27,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:21:27,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:21:27,227.227 INFO    ] No camera update needed
[2026-06-13 01:21:27,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:21:27,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:21:27,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:21:27,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:21:29,276.276 INFO    ] ================================================
[2026-06-13 01:21:29,295.295 INFO    ] Launching Daemon at Sat Jun 13 01:21:29 IST 2026
[2026-06-13 01:21:29,306.306 INFO    ] ================================================
[2026-06-13 01:21:29,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:21:29
[2026-06-13 01:21:29,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:21:30,084.084 INFO    ] Initializing speech engine...
[2026-06-13 01:21:30,089.089 INFO    ] 2026-06-13 01:21:30
[2026-06-13 01:21:30,315.315 INFO    ] 2026-06-13 01:21:30
[2026-06-13 01:21:30,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:21:30,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:21:30,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:21:30,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:21:30,732.732 INFO    ] time= 13/06/2026 01:21:30
[2026-06-13 01:21:30,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:21:30,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:21:30,866.866 INFO    ] No existing commands found in stream
[2026-06-13 01:21:35,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:21:35,879.879 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 01:21:39,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:21:39,030.030 INFO    ] Checking for system updates...
[2026-06-13 01:21:39,053.053 INFO    ] 200
[2026-06-13 01:21:39,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:39,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:21:39,088.088 INFO    ] No update needed
[2026-06-13 01:21:39,089.089 INFO    ] Checking for camera pi updates...
[2026-06-13 01:21:39,109.109 INFO    ] 200
[2026-06-13 01:21:39,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:39,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:21:39,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:21:39,276.276 INFO    ] No camera update needed
[2026-06-13 01:21:39,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:21:39,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:21:39,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:21:39,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:21:41,323.323 INFO    ] ================================================
[2026-06-13 01:21:41,339.339 INFO    ] Launching Daemon at Sat Jun 13 01:21:41 IST 2026
[2026-06-13 01:21:41,350.350 INFO    ] ================================================
[2026-06-13 01:21:41,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:21:41
[2026-06-13 01:21:42,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:21:42,162.162 INFO    ] Initializing speech engine...
[2026-06-13 01:21:42,166.166 INFO    ] 2026-06-13 01:21:42
[2026-06-13 01:21:42,396.396 INFO    ] 2026-06-13 01:21:42
[2026-06-13 01:21:42,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:21:42,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:21:42,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:21:42,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:21:42,813.813 INFO    ] time= 13/06/2026 01:21:42
[2026-06-13 01:21:42,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:21:42,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:21:42,950.950 INFO    ] No existing commands found in stream
[2026-06-13 01:21:47,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:21:47,964.964 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 01:21:51,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:21:51,362.362 INFO    ] Checking for system updates...
[2026-06-13 01:21:51,383.383 INFO    ] 200
[2026-06-13 01:21:51,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:51,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:51,418.418 INFO    ] No update needed
[2026-06-13 01:21:51,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 01:21:51,440.440 INFO    ] 200
[2026-06-13 01:21:51,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:21:51,468.468 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:21:51,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:21:51,510.510 INFO    ] No camera update needed
[2026-06-13 01:21:51,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:21:51,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:21:51,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:21:51,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:21:53,551.551 INFO    ] ================================================
[2026-06-13 01:21:53,560.560 INFO    ] Launching Daemon at Sat Jun 13 01:21:53 IST 2026
[2026-06-13 01:21:53,566.566 INFO    ] ================================================
[2026-06-13 01:21:53,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:21:53
[2026-06-13 01:21:54,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:21:54,368.368 INFO    ] Initializing speech engine...
[2026-06-13 01:21:54,374.374 INFO    ] 2026-06-13 01:21:54
[2026-06-13 01:21:54,581.581 INFO    ] 2026-06-13 01:21:54
[2026-06-13 01:21:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:21:54,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:21:54,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:21:54,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:21:55,002.002 INFO    ] time= 13/06/2026 01:21:54
[2026-06-13 01:21:55,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:21:55,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:21:55,100.100 INFO    ] No existing commands found in stream
[2026-06-13 01:22:00,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:00,118.118 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 01:22:03,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:22:03,548.548 INFO    ] Checking for system updates...
[2026-06-13 01:22:03,569.569 INFO    ] 200
[2026-06-13 01:22:03,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:03,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:22:03,605.605 INFO    ] No update needed
[2026-06-13 01:22:03,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 01:22:03,628.628 INFO    ] 200
[2026-06-13 01:22:03,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:03,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:22:03,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:22:03,690.690 INFO    ] No camera update needed
[2026-06-13 01:22:03,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:22:03,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:22:03,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:22:03,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:22:05,740.740 INFO    ] ================================================
[2026-06-13 01:22:05,756.756 INFO    ] Launching Daemon at Sat Jun 13 01:22:05 IST 2026
[2026-06-13 01:22:05,767.767 INFO    ] ================================================
[2026-06-13 01:22:06,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:22:06
[2026-06-13 01:22:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:22:06,558.558 INFO    ] Initializing speech engine...
[2026-06-13 01:22:06,568.568 INFO    ] 2026-06-13 01:22:06
[2026-06-13 01:22:06,772.772 INFO    ] 2026-06-13 01:22:06
[2026-06-13 01:22:06,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:22:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:22:06,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:22:07,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:22:07,180.180 INFO    ] time= 13/06/2026 01:22:07
[2026-06-13 01:22:07,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:22:07,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:22:07,307.307 INFO    ] No existing commands found in stream
[2026-06-13 01:22:12,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:12,319.319 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 01:22:16,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:22:16,463.463 INFO    ] Checking for system updates...
[2026-06-13 01:22:16,483.483 INFO    ] 200
[2026-06-13 01:22:16,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:16,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:16,516.516 INFO    ] No update needed
[2026-06-13 01:22:16,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 01:22:16,537.537 INFO    ] 200
[2026-06-13 01:22:16,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:16,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:22:16,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:22:16,602.602 INFO    ] No camera update needed
[2026-06-13 01:22:16,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:22:16,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:22:16,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:22:16,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:22:18,650.650 INFO    ] ================================================
[2026-06-13 01:22:18,666.666 INFO    ] Launching Daemon at Sat Jun 13 01:22:18 IST 2026
[2026-06-13 01:22:18,681.681 INFO    ] ================================================
[2026-06-13 01:22:19,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:22:19
[2026-06-13 01:22:19,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:22:19,821.821 INFO    ] Initializing speech engine...
[2026-06-13 01:22:19,841.841 INFO    ] 2026-06-13 01:22:19
[2026-06-13 01:22:20,098.098 INFO    ] 2026-06-13 01:22:20
[2026-06-13 01:22:20,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:22:20,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:22:20,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:22:20,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:22:20,570.570 INFO    ] time= 13/06/2026 01:22:20
[2026-06-13 01:22:20,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:22:20,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:22:20,796.796 INFO    ] No existing commands found in stream
[2026-06-13 01:22:25,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:25,823.823 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 01:22:27,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:22:27,708.708 INFO    ] Checking for system updates...
[2026-06-13 01:22:27,729.729 INFO    ] 200
[2026-06-13 01:22:27,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:27,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:27,762.762 INFO    ] No update needed
[2026-06-13 01:22:27,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 01:22:27,783.783 INFO    ] 200
[2026-06-13 01:22:27,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:27,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:22:27,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:27,848.848 INFO    ] No camera update needed
[2026-06-13 01:22:27,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:22:27,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:22:27,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:22:27,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:22:29,896.896 INFO    ] ================================================
[2026-06-13 01:22:29,915.915 INFO    ] Launching Daemon at Sat Jun 13 01:22:29 IST 2026
[2026-06-13 01:22:29,926.926 INFO    ] ================================================
[2026-06-13 01:22:30,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:22:30
[2026-06-13 01:22:30,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:22:30,748.748 INFO    ] Initializing speech engine...
[2026-06-13 01:22:30,752.752 INFO    ] 2026-06-13 01:22:30
[2026-06-13 01:22:30,963.963 INFO    ] 2026-06-13 01:22:30
[2026-06-13 01:22:30,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:22:31,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:22:31,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:22:31,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:22:31,338.338 INFO    ] time= 13/06/2026 01:22:31
[2026-06-13 01:22:31,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:22:31,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:22:31,547.547 INFO    ] No existing commands found in stream
[2026-06-13 01:22:36,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:36,559.559 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 01:22:37,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:22:37,976.976 INFO    ] Checking for system updates...
[2026-06-13 01:22:37,996.996 INFO    ] 200
[2026-06-13 01:22:37,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:38,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:38,029.029 INFO    ] No update needed
[2026-06-13 01:22:38,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 01:22:38,049.049 INFO    ] 200
[2026-06-13 01:22:38,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:38,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:22:38,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:38,125.125 INFO    ] No camera update needed
[2026-06-13 01:22:38,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:22:38,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:22:38,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:22:38,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:22:40,174.174 INFO    ] ================================================
[2026-06-13 01:22:40,190.190 INFO    ] Launching Daemon at Sat Jun 13 01:22:40 IST 2026
[2026-06-13 01:22:40,201.201 INFO    ] ================================================
[2026-06-13 01:22:40,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:22:40
[2026-06-13 01:22:40,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:22:41,049.049 INFO    ] Initializing speech engine...
[2026-06-13 01:22:41,055.055 INFO    ] 2026-06-13 01:22:41
[2026-06-13 01:22:41,263.263 INFO    ] 2026-06-13 01:22:41
[2026-06-13 01:22:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:22:41,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:22:41,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:22:41,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:22:41,668.668 INFO    ] time= 13/06/2026 01:22:41
[2026-06-13 01:22:41,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:22:41,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:22:41,790.790 INFO    ] No existing commands found in stream
[2026-06-13 01:22:46,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:46,808.808 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 01:22:51,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:22:51,036.036 INFO    ] Checking for system updates...
[2026-06-13 01:22:51,058.058 INFO    ] 200
[2026-06-13 01:22:51,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:51,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:51,094.094 INFO    ] No update needed
[2026-06-13 01:22:51,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 01:22:51,116.116 INFO    ] 200
[2026-06-13 01:22:51,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:22:51,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:22:51,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:22:51,180.180 INFO    ] No camera update needed
[2026-06-13 01:22:51,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:22:51,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:22:51,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:22:51,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:22:53,230.230 INFO    ] ================================================
[2026-06-13 01:22:53,246.246 INFO    ] Launching Daemon at Sat Jun 13 01:22:53 IST 2026
[2026-06-13 01:22:53,258.258 INFO    ] ================================================
[2026-06-13 01:22:53,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:22:53
[2026-06-13 01:22:53,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:22:54,050.050 INFO    ] Initializing speech engine...
[2026-06-13 01:22:54,055.055 INFO    ] 2026-06-13 01:22:54
[2026-06-13 01:22:54,259.259 INFO    ] 2026-06-13 01:22:54
[2026-06-13 01:22:54,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:22:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:22:54,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:22:54,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:22:54,657.657 INFO    ] time= 13/06/2026 01:22:54
[2026-06-13 01:22:54,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:22:54,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:22:54,773.773 INFO    ] No existing commands found in stream
[2026-06-13 01:22:59,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:22:59,785.785 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 01:23:00,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:23:00,501.501 INFO    ] Checking for system updates...
[2026-06-13 01:23:00,521.521 INFO    ] 200
[2026-06-13 01:23:00,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:00,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:00,554.554 INFO    ] No update needed
[2026-06-13 01:23:00,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:00,577.577 INFO    ] 200
[2026-06-13 01:23:00,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:00,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:00,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:00,638.638 INFO    ] No camera update needed
[2026-06-13 01:23:00,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:00,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:00,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:00,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:02,673.673 INFO    ] ================================================
[2026-06-13 01:23:02,682.682 INFO    ] Launching Daemon at Sat Jun 13 01:23:02 IST 2026
[2026-06-13 01:23:02,688.688 INFO    ] ================================================
[2026-06-13 01:23:03,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:03
[2026-06-13 01:23:03,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:03,556.556 INFO    ] Initializing speech engine...
[2026-06-13 01:23:03,561.561 INFO    ] 2026-06-13 01:23:03
[2026-06-13 01:23:03,770.770 INFO    ] 2026-06-13 01:23:03
[2026-06-13 01:23:03,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:03,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:04,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:04,187.187 INFO    ] time= 13/06/2026 01:23:04
[2026-06-13 01:23:04,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:04,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:04,294.294 INFO    ] No existing commands found in stream
[2026-06-13 01:23:09,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:23:09,306.306 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 01:23:11,624.624 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:23:11,625.625 INFO    ] Checking for system updates...
[2026-06-13 01:23:11,646.646 INFO    ] 200
[2026-06-13 01:23:11,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:11,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:11,680.680 INFO    ] No update needed
[2026-06-13 01:23:11,682.682 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:11,701.701 INFO    ] 200
[2026-06-13 01:23:11,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:11,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:11,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:11,765.765 INFO    ] No camera update needed
[2026-06-13 01:23:11,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:11,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:11,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:11,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:13,814.814 INFO    ] ================================================
[2026-06-13 01:23:13,830.830 INFO    ] Launching Daemon at Sat Jun 13 01:23:13 IST 2026
[2026-06-13 01:23:13,842.842 INFO    ] ================================================
[2026-06-13 01:23:14,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:14
[2026-06-13 01:23:14,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:14,650.650 INFO    ] Initializing speech engine...
[2026-06-13 01:23:14,656.656 INFO    ] 2026-06-13 01:23:14
[2026-06-13 01:23:14,866.866 INFO    ] 2026-06-13 01:23:14
[2026-06-13 01:23:14,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:15,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:15,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:15,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:15,270.270 INFO    ] time= 13/06/2026 01:23:15
[2026-06-13 01:23:15,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:15,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:15,397.397 INFO    ] No existing commands found in stream
[2026-06-13 01:23:20,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:23:20,415.415 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 01:23:21,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:23:21,826.826 INFO    ] Checking for system updates...
[2026-06-13 01:23:21,847.847 INFO    ] 200
[2026-06-13 01:23:21,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:21,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:21,881.881 INFO    ] No update needed
[2026-06-13 01:23:21,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:21,903.903 INFO    ] 200
[2026-06-13 01:23:21,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:21,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:21,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:23:21,972.972 INFO    ] No camera update needed
[2026-06-13 01:23:21,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:21,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:21,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:21,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:24,022.022 INFO    ] ================================================
[2026-06-13 01:23:24,037.037 INFO    ] Launching Daemon at Sat Jun 13 01:23:24 IST 2026
[2026-06-13 01:23:24,048.048 INFO    ] ================================================
[2026-06-13 01:23:24,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:24
[2026-06-13 01:23:24,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:24,814.814 INFO    ] Initializing speech engine...
[2026-06-13 01:23:24,818.818 INFO    ] 2026-06-13 01:23:24
[2026-06-13 01:23:25,035.035 INFO    ] 2026-06-13 01:23:25
[2026-06-13 01:23:25,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:25,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:25,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:25,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:25,436.436 INFO    ] time= 13/06/2026 01:23:25
[2026-06-13 01:23:25,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:25,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:25,558.558 INFO    ] No existing commands found in stream
[2026-06-13 01:23:30,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:23:30,570.570 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 01:23:34,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:23:34,863.863 INFO    ] Checking for system updates...
[2026-06-13 01:23:34,884.884 INFO    ] 200
[2026-06-13 01:23:34,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:34,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:34,916.916 INFO    ] No update needed
[2026-06-13 01:23:34,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:34,937.937 INFO    ] 200
[2026-06-13 01:23:34,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:34,964.964 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:35,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:35,005.005 INFO    ] No camera update needed
[2026-06-13 01:23:35,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:35,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:35,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:35,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:37,053.053 INFO    ] ================================================
[2026-06-13 01:23:37,069.069 INFO    ] Launching Daemon at Sat Jun 13 01:23:37 IST 2026
[2026-06-13 01:23:37,079.079 INFO    ] ================================================
[2026-06-13 01:23:37,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:37
[2026-06-13 01:23:37,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:37,871.871 INFO    ] Initializing speech engine...
[2026-06-13 01:23:37,884.884 INFO    ] 2026-06-13 01:23:37
[2026-06-13 01:23:38,090.090 INFO    ] 2026-06-13 01:23:38
[2026-06-13 01:23:38,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:38,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:38,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:38,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:38,459.459 INFO    ] time= 13/06/2026 01:23:38
[2026-06-13 01:23:38,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:38,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:38,598.598 INFO    ] No existing commands found in stream
[2026-06-13 01:23:43,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:23:43,625.625 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 01:23:44,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:23:44,312.312 INFO    ] Checking for system updates...
[2026-06-13 01:23:44,333.333 INFO    ] 200
[2026-06-13 01:23:44,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:44,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:44,366.366 INFO    ] No update needed
[2026-06-13 01:23:44,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:44,387.387 INFO    ] 200
[2026-06-13 01:23:44,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:44,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:44,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:44,556.556 INFO    ] No camera update needed
[2026-06-13 01:23:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:44,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:44,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:44,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:46,603.603 INFO    ] ================================================
[2026-06-13 01:23:46,619.619 INFO    ] Launching Daemon at Sat Jun 13 01:23:46 IST 2026
[2026-06-13 01:23:46,630.630 INFO    ] ================================================
[2026-06-13 01:23:46,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:46
[2026-06-13 01:23:47,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:47,411.411 INFO    ] Initializing speech engine...
[2026-06-13 01:23:47,420.420 INFO    ] 2026-06-13 01:23:47
[2026-06-13 01:23:47,644.644 INFO    ] 2026-06-13 01:23:47
[2026-06-13 01:23:47,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:47,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:47,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:48,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:48,076.076 INFO    ] time= 13/06/2026 01:23:48
[2026-06-13 01:23:48,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:48,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:48,197.197 INFO    ] No existing commands found in stream
[2026-06-13 01:23:53,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:23:53,211.211 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 01:23:55,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:23:55,865.865 INFO    ] Checking for system updates...
[2026-06-13 01:23:55,885.885 INFO    ] 200
[2026-06-13 01:23:55,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:55,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:55,919.919 INFO    ] No update needed
[2026-06-13 01:23:55,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 01:23:55,940.940 INFO    ] 200
[2026-06-13 01:23:55,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:23:55,964.964 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:23:56,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:23:56,003.003 INFO    ] No camera update needed
[2026-06-13 01:23:56,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:23:56,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:23:56,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:23:56,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:23:58,050.050 INFO    ] ================================================
[2026-06-13 01:23:58,065.065 INFO    ] Launching Daemon at Sat Jun 13 01:23:58 IST 2026
[2026-06-13 01:23:58,076.076 INFO    ] ================================================
[2026-06-13 01:23:58,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:23:58
[2026-06-13 01:23:58,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:23:58,927.927 INFO    ] Initializing speech engine...
[2026-06-13 01:23:58,936.936 INFO    ] 2026-06-13 01:23:58
[2026-06-13 01:23:59,145.145 INFO    ] 2026-06-13 01:23:59
[2026-06-13 01:23:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:23:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:23:59,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:23:59,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:23:59,542.542 INFO    ] time= 13/06/2026 01:23:59
[2026-06-13 01:23:59,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:23:59,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:23:59,658.658 INFO    ] No existing commands found in stream
[2026-06-13 01:24:04,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:24:04,676.676 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 01:24:08,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:24:08,897.897 INFO    ] Checking for system updates...
[2026-06-13 01:24:08,919.919 INFO    ] 200
[2026-06-13 01:24:08,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:08,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:08,952.952 INFO    ] No update needed
[2026-06-13 01:24:08,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 01:24:08,975.975 INFO    ] 200
[2026-06-13 01:24:08,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:09,002.002 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:24:09,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:09,040.040 INFO    ] No camera update needed
[2026-06-13 01:24:09,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:24:09,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:24:09,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:24:09,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:24:11,087.087 INFO    ] ================================================
[2026-06-13 01:24:11,102.102 INFO    ] Launching Daemon at Sat Jun 13 01:24:11 IST 2026
[2026-06-13 01:24:11,113.113 INFO    ] ================================================
[2026-06-13 01:24:11,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:24:11
[2026-06-13 01:24:11,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:24:11,931.931 INFO    ] Initializing speech engine...
[2026-06-13 01:24:11,937.937 INFO    ] 2026-06-13 01:24:11
[2026-06-13 01:24:12,142.142 INFO    ] 2026-06-13 01:24:12
[2026-06-13 01:24:12,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:24:12,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:24:12,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:24:12,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:24:12,551.551 INFO    ] time= 13/06/2026 01:24:12
[2026-06-13 01:24:12,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:24:12,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:24:12,687.687 INFO    ] No existing commands found in stream
[2026-06-13 01:24:17,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:24:17,695.695 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 01:24:21,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:24:21,584.584 INFO    ] Checking for system updates...
[2026-06-13 01:24:21,605.605 INFO    ] 200
[2026-06-13 01:24:21,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:21,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:24:21,638.638 INFO    ] No update needed
[2026-06-13 01:24:21,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 01:24:21,662.662 INFO    ] 200
[2026-06-13 01:24:21,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:21,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:24:21,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:24:21,728.728 INFO    ] No camera update needed
[2026-06-13 01:24:21,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:24:21,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:24:21,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:24:21,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:24:23,777.777 INFO    ] ================================================
[2026-06-13 01:24:23,792.792 INFO    ] Launching Daemon at Sat Jun 13 01:24:23 IST 2026
[2026-06-13 01:24:23,803.803 INFO    ] ================================================
[2026-06-13 01:24:24,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:24:24
[2026-06-13 01:24:24,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:24:24,595.595 INFO    ] Initializing speech engine...
[2026-06-13 01:24:24,603.603 INFO    ] 2026-06-13 01:24:24
[2026-06-13 01:24:24,829.829 INFO    ] 2026-06-13 01:24:24
[2026-06-13 01:24:24,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:24:25,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:24:25,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:24:25,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:24:25,268.268 INFO    ] time= 13/06/2026 01:24:25
[2026-06-13 01:24:25,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:24:25,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:24:25,392.392 INFO    ] No existing commands found in stream
[2026-06-13 01:24:30,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:24:30,406.406 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 01:24:34,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:24:34,481.481 INFO    ] Checking for system updates...
[2026-06-13 01:24:34,501.501 INFO    ] 200
[2026-06-13 01:24:34,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:34,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:24:34,534.534 INFO    ] No update needed
[2026-06-13 01:24:34,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 01:24:34,555.555 INFO    ] 200
[2026-06-13 01:24:34,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:34,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:24:34,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:24:34,617.617 INFO    ] No camera update needed
[2026-06-13 01:24:34,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:24:34,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:24:34,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:24:34,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:24:36,664.664 INFO    ] ================================================
[2026-06-13 01:24:36,680.680 INFO    ] Launching Daemon at Sat Jun 13 01:24:36 IST 2026
[2026-06-13 01:24:36,690.690 INFO    ] ================================================
[2026-06-13 01:24:37,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:24:37
[2026-06-13 01:24:37,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:24:37,486.486 INFO    ] Initializing speech engine...
[2026-06-13 01:24:37,491.491 INFO    ] 2026-06-13 01:24:37
[2026-06-13 01:24:37,694.694 INFO    ] 2026-06-13 01:24:37
[2026-06-13 01:24:37,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:24:37,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:24:37,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:24:38,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:24:38,109.109 INFO    ] time= 13/06/2026 01:24:38
[2026-06-13 01:24:38,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:24:38,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:24:38,207.207 INFO    ] No existing commands found in stream
[2026-06-13 01:24:43,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:24:43,219.219 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 01:24:43,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:24:43,581.581 INFO    ] Checking for system updates...
[2026-06-13 01:24:43,602.602 INFO    ] 200
[2026-06-13 01:24:43,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:43,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:43,635.635 INFO    ] No update needed
[2026-06-13 01:24:43,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 01:24:43,656.656 INFO    ] 200
[2026-06-13 01:24:43,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:43,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:24:43,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:43,720.720 INFO    ] No camera update needed
[2026-06-13 01:24:43,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:24:43,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:24:43,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:24:43,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:24:45,768.768 INFO    ] ================================================
[2026-06-13 01:24:45,783.783 INFO    ] Launching Daemon at Sat Jun 13 01:24:45 IST 2026
[2026-06-13 01:24:45,794.794 INFO    ] ================================================
[2026-06-13 01:24:46,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:24:46
[2026-06-13 01:24:46,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:24:46,648.648 INFO    ] Initializing speech engine...
[2026-06-13 01:24:46,656.656 INFO    ] 2026-06-13 01:24:46
[2026-06-13 01:24:46,866.866 INFO    ] 2026-06-13 01:24:46
[2026-06-13 01:24:46,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:24:47,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:24:47,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:24:47,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:24:47,284.284 INFO    ] time= 13/06/2026 01:24:47
[2026-06-13 01:24:47,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:24:47,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:24:47,379.379 INFO    ] No existing commands found in stream
[2026-06-13 01:24:52,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:24:52,391.391 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 01:24:55,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:24:55,068.068 INFO    ] Checking for system updates...
[2026-06-13 01:24:55,090.090 INFO    ] 200
[2026-06-13 01:24:55,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:55,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:55,124.124 INFO    ] No update needed
[2026-06-13 01:24:55,125.125 INFO    ] Checking for camera pi updates...
[2026-06-13 01:24:55,145.145 INFO    ] 200
[2026-06-13 01:24:55,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:24:55,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:24:55,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:24:55,212.212 INFO    ] No camera update needed
[2026-06-13 01:24:55,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:24:55,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:24:55,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:24:55,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:24:57,261.261 INFO    ] ================================================
[2026-06-13 01:24:57,276.276 INFO    ] Launching Daemon at Sat Jun 13 01:24:57 IST 2026
[2026-06-13 01:24:57,287.287 INFO    ] ================================================
[2026-06-13 01:24:57,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:24:57
[2026-06-13 01:24:57,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:24:58,077.077 INFO    ] Initializing speech engine...
[2026-06-13 01:24:58,082.082 INFO    ] 2026-06-13 01:24:58
[2026-06-13 01:24:58,289.289 INFO    ] 2026-06-13 01:24:58
[2026-06-13 01:24:58,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:24:58,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:24:58,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:24:58,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:24:58,699.699 INFO    ] time= 13/06/2026 01:24:58
[2026-06-13 01:24:58,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:24:58,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:24:58,812.812 INFO    ] No existing commands found in stream
[2026-06-13 01:25:03,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:25:03,848.848 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 01:25:07,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:25:07,140.140 INFO    ] Checking for system updates...
[2026-06-13 01:25:07,161.161 INFO    ] 200
[2026-06-13 01:25:07,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:07,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:07,194.194 INFO    ] No update needed
[2026-06-13 01:25:07,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 01:25:07,215.215 INFO    ] 200
[2026-06-13 01:25:07,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:07,240.240 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:25:07,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:07,280.280 INFO    ] No camera update needed
[2026-06-13 01:25:07,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:25:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:25:07,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:25:07,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:25:09,329.329 INFO    ] ================================================
[2026-06-13 01:25:09,344.344 INFO    ] Launching Daemon at Sat Jun 13 01:25:09 IST 2026
[2026-06-13 01:25:09,355.355 INFO    ] ================================================
[2026-06-13 01:25:09,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:25:09
[2026-06-13 01:25:10,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:25:10,180.180 INFO    ] Initializing speech engine...
[2026-06-13 01:25:10,190.190 INFO    ] 2026-06-13 01:25:10
[2026-06-13 01:25:10,404.404 INFO    ] 2026-06-13 01:25:10
[2026-06-13 01:25:10,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:25:10,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:25:10,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:25:10,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:25:10,833.833 INFO    ] time= 13/06/2026 01:25:10
[2026-06-13 01:25:10,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:25:10,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:25:10,963.963 INFO    ] No existing commands found in stream
[2026-06-13 01:25:15,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:25:15,977.977 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 01:25:17,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:25:17,869.869 INFO    ] Checking for system updates...
[2026-06-13 01:25:17,891.891 INFO    ] 200
[2026-06-13 01:25:17,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:17,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:17,926.926 INFO    ] No update needed
[2026-06-13 01:25:17,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 01:25:17,947.947 INFO    ] 200
[2026-06-13 01:25:17,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:17,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:25:18,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:18,018.018 INFO    ] No camera update needed
[2026-06-13 01:25:18,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:25:18,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:25:18,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:25:18,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:25:20,067.067 INFO    ] ================================================
[2026-06-13 01:25:20,082.082 INFO    ] Launching Daemon at Sat Jun 13 01:25:20 IST 2026
[2026-06-13 01:25:20,093.093 INFO    ] ================================================
[2026-06-13 01:25:20,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:25:20
[2026-06-13 01:25:20,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:25:20,876.876 INFO    ] Initializing speech engine...
[2026-06-13 01:25:20,884.884 INFO    ] 2026-06-13 01:25:20
[2026-06-13 01:25:21,101.101 INFO    ] 2026-06-13 01:25:21
[2026-06-13 01:25:21,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:25:21,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:25:21,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:25:21,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:25:21,533.533 INFO    ] time= 13/06/2026 01:25:21
[2026-06-13 01:25:21,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:25:21,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:25:21,653.653 INFO    ] No existing commands found in stream
[2026-06-13 01:25:26,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:25:26,667.667 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 01:25:28,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:25:28,600.600 INFO    ] Checking for system updates...
[2026-06-13 01:25:28,621.621 INFO    ] 200
[2026-06-13 01:25:28,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:28,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:28,653.653 INFO    ] No update needed
[2026-06-13 01:25:28,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 01:25:28,674.674 INFO    ] 200
[2026-06-13 01:25:28,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:28,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:25:28,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:28,737.737 INFO    ] No camera update needed
[2026-06-13 01:25:28,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:25:28,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:25:28,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:25:28,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:25:30,784.784 INFO    ] ================================================
[2026-06-13 01:25:30,800.800 INFO    ] Launching Daemon at Sat Jun 13 01:25:30 IST 2026
[2026-06-13 01:25:30,811.811 INFO    ] ================================================
[2026-06-13 01:25:31,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:25:31
[2026-06-13 01:25:31,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:25:31,677.677 INFO    ] Initializing speech engine...
[2026-06-13 01:25:31,682.682 INFO    ] 2026-06-13 01:25:31
[2026-06-13 01:25:31,897.897 INFO    ] 2026-06-13 01:25:31
[2026-06-13 01:25:31,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:25:32,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:25:32,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:25:32,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:25:32,334.334 INFO    ] time= 13/06/2026 01:25:32
[2026-06-13 01:25:32,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:25:32,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:25:32,432.432 INFO    ] No existing commands found in stream
[2026-06-13 01:25:37,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:25:37,444.444 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 01:25:39,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:25:39,964.964 INFO    ] Checking for system updates...
[2026-06-13 01:25:39,985.985 INFO    ] 200
[2026-06-13 01:25:39,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:40,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:40,018.018 INFO    ] No update needed
[2026-06-13 01:25:40,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 01:25:40,039.039 INFO    ] 200
[2026-06-13 01:25:40,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:40,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:25:40,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:40,101.101 INFO    ] No camera update needed
[2026-06-13 01:25:40,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:25:40,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:25:40,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:25:40,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:25:42,148.148 INFO    ] ================================================
[2026-06-13 01:25:42,164.164 INFO    ] Launching Daemon at Sat Jun 13 01:25:42 IST 2026
[2026-06-13 01:25:42,175.175 INFO    ] ================================================
[2026-06-13 01:25:42,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:25:42
[2026-06-13 01:25:42,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:25:42,950.950 INFO    ] Initializing speech engine...
[2026-06-13 01:25:42,957.957 INFO    ] 2026-06-13 01:25:42
[2026-06-13 01:25:43,164.164 INFO    ] 2026-06-13 01:25:43
[2026-06-13 01:25:43,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:25:43,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:25:43,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:25:43,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:25:43,570.570 INFO    ] time= 13/06/2026 01:25:43
[2026-06-13 01:25:43,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:25:43,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:25:43,675.675 INFO    ] No existing commands found in stream
[2026-06-13 01:25:48,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:25:48,687.687 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 01:25:52,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:25:52,229.229 INFO    ] Checking for system updates...
[2026-06-13 01:25:52,251.251 INFO    ] 200
[2026-06-13 01:25:52,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:52,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:25:52,285.285 INFO    ] No update needed
[2026-06-13 01:25:52,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 01:25:52,307.307 INFO    ] 200
[2026-06-13 01:25:52,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:25:52,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:25:52,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:25:52,474.474 INFO    ] No camera update needed
[2026-06-13 01:25:52,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:25:52,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:25:52,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:25:52,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:25:54,522.522 INFO    ] ================================================
[2026-06-13 01:25:54,538.538 INFO    ] Launching Daemon at Sat Jun 13 01:25:54 IST 2026
[2026-06-13 01:25:54,549.549 INFO    ] ================================================
[2026-06-13 01:25:54,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:25:54
[2026-06-13 01:25:55,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:25:55,383.383 INFO    ] Initializing speech engine...
[2026-06-13 01:25:55,391.391 INFO    ] 2026-06-13 01:25:55
[2026-06-13 01:25:55,604.604 INFO    ] 2026-06-13 01:25:55
[2026-06-13 01:25:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:25:55,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:25:55,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:25:55,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:25:56,009.009 INFO    ] time= 13/06/2026 01:25:55
[2026-06-13 01:25:56,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:25:56,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:25:56,120.120 INFO    ] No existing commands found in stream
[2026-06-13 01:26:01,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:01,137.137 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 01:26:03,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:26:03,186.186 INFO    ] Checking for system updates...
[2026-06-13 01:26:03,207.207 INFO    ] 200
[2026-06-13 01:26:03,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:03,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:03,240.240 INFO    ] No update needed
[2026-06-13 01:26:03,241.241 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:03,261.261 INFO    ] 200
[2026-06-13 01:26:03,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:03,285.285 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:03,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:03,326.326 INFO    ] No camera update needed
[2026-06-13 01:26:03,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:03,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:03,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:03,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:05,376.376 INFO    ] ================================================
[2026-06-13 01:26:05,391.391 INFO    ] Launching Daemon at Sat Jun 13 01:26:05 IST 2026
[2026-06-13 01:26:05,401.401 INFO    ] ================================================
[2026-06-13 01:26:05,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:26:05
[2026-06-13 01:26:06,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:26:06,199.199 INFO    ] Initializing speech engine...
[2026-06-13 01:26:06,203.203 INFO    ] 2026-06-13 01:26:06
[2026-06-13 01:26:06,422.422 INFO    ] 2026-06-13 01:26:06
[2026-06-13 01:26:06,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:26:06,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:26:06,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:26:06,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:26:06,841.841 INFO    ] time= 13/06/2026 01:26:06
[2026-06-13 01:26:06,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:26:06,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:26:06,950.950 INFO    ] No existing commands found in stream
[2026-06-13 01:26:11,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:11,961.961 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 01:26:13,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:26:13,908.908 INFO    ] Checking for system updates...
[2026-06-13 01:26:13,944.944 INFO    ] 200
[2026-06-13 01:26:13,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:13,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:13,988.988 INFO    ] No update needed
[2026-06-13 01:26:13,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:14,009.009 INFO    ] 200
[2026-06-13 01:26:14,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:14,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:14,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:14,075.075 INFO    ] No camera update needed
[2026-06-13 01:26:14,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:14,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:14,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:16,125.125 INFO    ] ================================================
[2026-06-13 01:26:16,141.141 INFO    ] Launching Daemon at Sat Jun 13 01:26:16 IST 2026
[2026-06-13 01:26:16,153.153 INFO    ] ================================================
[2026-06-13 01:26:16,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:26:16
[2026-06-13 01:26:16,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:26:16,935.935 INFO    ] Initializing speech engine...
[2026-06-13 01:26:16,947.947 INFO    ] 2026-06-13 01:26:16
[2026-06-13 01:26:17,154.154 INFO    ] 2026-06-13 01:26:17
[2026-06-13 01:26:17,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:26:17,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:26:17,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:26:17,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:26:17,573.573 INFO    ] time= 13/06/2026 01:26:17
[2026-06-13 01:26:17,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:26:17,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:26:17,670.670 INFO    ] No existing commands found in stream
[2026-06-13 01:26:22,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:22,687.687 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 01:26:25,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:26:25,380.380 INFO    ] Checking for system updates...
[2026-06-13 01:26:25,401.401 INFO    ] 200
[2026-06-13 01:26:25,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:25,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:25,437.437 INFO    ] No update needed
[2026-06-13 01:26:25,439.439 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:25,458.458 INFO    ] 200
[2026-06-13 01:26:25,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:25,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:25,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:26:25,521.521 INFO    ] No camera update needed
[2026-06-13 01:26:25,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:25,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:25,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:25,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:27,569.569 INFO    ] ================================================
[2026-06-13 01:26:27,585.585 INFO    ] Launching Daemon at Sat Jun 13 01:26:27 IST 2026
[2026-06-13 01:26:27,597.597 INFO    ] ================================================
[2026-06-13 01:26:27,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:26:27
[2026-06-13 01:26:28,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:26:28,432.432 INFO    ] Initializing speech engine...
[2026-06-13 01:26:28,437.437 INFO    ] 2026-06-13 01:26:28
[2026-06-13 01:26:28,641.641 INFO    ] 2026-06-13 01:26:28
[2026-06-13 01:26:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:26:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:26:28,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:26:28,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:26:29,025.025 INFO    ] time= 13/06/2026 01:26:28
[2026-06-13 01:26:29,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:26:29,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:26:29,154.154 INFO    ] No existing commands found in stream
[2026-06-13 01:26:34,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:34,166.166 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 01:26:35,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:26:35,966.966 INFO    ] Checking for system updates...
[2026-06-13 01:26:35,989.989 INFO    ] 200
[2026-06-13 01:26:35,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:36,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:36,025.025 INFO    ] No update needed
[2026-06-13 01:26:36,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:36,047.047 INFO    ] 200
[2026-06-13 01:26:36,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:36,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:36,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:36,102.102 INFO    ] No camera update needed
[2026-06-13 01:26:36,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:36,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:36,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:36,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:38,151.151 INFO    ] ================================================
[2026-06-13 01:26:38,166.166 INFO    ] Launching Daemon at Sat Jun 13 01:26:38 IST 2026
[2026-06-13 01:26:38,176.176 INFO    ] ================================================
[2026-06-13 01:26:38,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:26:38
[2026-06-13 01:26:38,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:26:39,028.028 INFO    ] Initializing speech engine...
[2026-06-13 01:26:39,034.034 INFO    ] 2026-06-13 01:26:39
[2026-06-13 01:26:39,245.245 INFO    ] 2026-06-13 01:26:39
[2026-06-13 01:26:39,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:26:39,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:26:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:26:39,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:26:39,653.653 INFO    ] time= 13/06/2026 01:26:39
[2026-06-13 01:26:39,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:26:39,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:26:39,773.773 INFO    ] No existing commands found in stream
[2026-06-13 01:26:44,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:44,791.791 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 01:26:47,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:26:47,625.625 INFO    ] Checking for system updates...
[2026-06-13 01:26:47,646.646 INFO    ] 200
[2026-06-13 01:26:47,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:47,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:47,683.683 INFO    ] No update needed
[2026-06-13 01:26:47,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:47,707.707 INFO    ] 200
[2026-06-13 01:26:47,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:47,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:47,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:47,775.775 INFO    ] No camera update needed
[2026-06-13 01:26:47,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:47,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:47,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:47,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:49,825.825 INFO    ] ================================================
[2026-06-13 01:26:49,840.840 INFO    ] Launching Daemon at Sat Jun 13 01:26:49 IST 2026
[2026-06-13 01:26:49,852.852 INFO    ] ================================================
[2026-06-13 01:26:50,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:26:50
[2026-06-13 01:26:50,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:26:50,666.666 INFO    ] Initializing speech engine...
[2026-06-13 01:26:50,679.679 INFO    ] 2026-06-13 01:26:50
[2026-06-13 01:26:50,884.884 INFO    ] 2026-06-13 01:26:50
[2026-06-13 01:26:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:26:51,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:26:51,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:26:51,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:26:51,300.300 INFO    ] time= 13/06/2026 01:26:51
[2026-06-13 01:26:51,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:26:51,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:26:51,399.399 INFO    ] No existing commands found in stream
[2026-06-13 01:26:56,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:26:56,411.411 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 01:26:57,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:26:57,443.443 INFO    ] Checking for system updates...
[2026-06-13 01:26:57,466.466 INFO    ] 200
[2026-06-13 01:26:57,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:57,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:57,499.499 INFO    ] No update needed
[2026-06-13 01:26:57,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 01:26:57,523.523 INFO    ] 200
[2026-06-13 01:26:57,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:26:57,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:26:57,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:26:57,600.600 INFO    ] No camera update needed
[2026-06-13 01:26:57,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:26:57,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:26:57,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:26:57,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:26:59,647.647 INFO    ] ================================================
[2026-06-13 01:26:59,663.663 INFO    ] Launching Daemon at Sat Jun 13 01:26:59 IST 2026
[2026-06-13 01:26:59,674.674 INFO    ] ================================================
[2026-06-13 01:27:00,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:00
[2026-06-13 01:27:00,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:00,492.492 INFO    ] Initializing speech engine...
[2026-06-13 01:27:00,496.496 INFO    ] 2026-06-13 01:27:00
[2026-06-13 01:27:00,702.702 INFO    ] 2026-06-13 01:27:00
[2026-06-13 01:27:00,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:00,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:00,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:01,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:01,110.110 INFO    ] time= 13/06/2026 01:27:01
[2026-06-13 01:27:01,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:01,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:01,216.216 INFO    ] No existing commands found in stream
[2026-06-13 01:27:06,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:27:06,228.228 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 01:27:08,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:27:08,602.602 INFO    ] Checking for system updates...
[2026-06-13 01:27:08,622.622 INFO    ] 200
[2026-06-13 01:27:08,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:08,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:27:08,655.655 INFO    ] No update needed
[2026-06-13 01:27:08,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 01:27:08,676.676 INFO    ] 200
[2026-06-13 01:27:08,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:08,701.701 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:27:08,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:27:08,744.744 INFO    ] No camera update needed
[2026-06-13 01:27:08,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:27:08,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:27:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:27:08,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:27:10,791.791 INFO    ] ================================================
[2026-06-13 01:27:10,807.807 INFO    ] Launching Daemon at Sat Jun 13 01:27:10 IST 2026
[2026-06-13 01:27:10,819.819 INFO    ] ================================================
[2026-06-13 01:27:11,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:11
[2026-06-13 01:27:11,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:11,661.661 INFO    ] Initializing speech engine...
[2026-06-13 01:27:11,666.666 INFO    ] 2026-06-13 01:27:11
[2026-06-13 01:27:11,883.883 INFO    ] 2026-06-13 01:27:11
[2026-06-13 01:27:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:12,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:12,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:12,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:12,284.284 INFO    ] time= 13/06/2026 01:27:12
[2026-06-13 01:27:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:12,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:12,441.441 INFO    ] No existing commands found in stream
[2026-06-13 01:27:17,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:27:17,455.455 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 01:27:19,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:27:19,477.477 INFO    ] Checking for system updates...
[2026-06-13 01:27:19,499.499 INFO    ] 200
[2026-06-13 01:27:19,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:19,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:27:19,532.532 INFO    ] No update needed
[2026-06-13 01:27:19,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 01:27:19,552.552 INFO    ] 200
[2026-06-13 01:27:19,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:19,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:27:19,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:27:19,618.618 INFO    ] No camera update needed
[2026-06-13 01:27:19,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:27:19,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:27:19,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:27:19,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:27:21,666.666 INFO    ] ================================================
[2026-06-13 01:27:21,681.681 INFO    ] Launching Daemon at Sat Jun 13 01:27:21 IST 2026
[2026-06-13 01:27:21,692.692 INFO    ] ================================================
[2026-06-13 01:27:22,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:22
[2026-06-13 01:27:22,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:22,513.513 INFO    ] Initializing speech engine...
[2026-06-13 01:27:22,518.518 INFO    ] 2026-06-13 01:27:22
[2026-06-13 01:27:22,749.749 INFO    ] 2026-06-13 01:27:22
[2026-06-13 01:27:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:22,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:22,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:23,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:23,148.148 INFO    ] time= 13/06/2026 01:27:23
[2026-06-13 01:27:23,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:23,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:23,305.305 INFO    ] No existing commands found in stream
[2026-06-13 01:27:28,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:27:28,318.318 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 01:27:30,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:27:30,043.043 INFO    ] Checking for system updates...
[2026-06-13 01:27:30,065.065 INFO    ] 200
[2026-06-13 01:27:30,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:30,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:30,098.098 INFO    ] No update needed
[2026-06-13 01:27:30,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 01:27:30,121.121 INFO    ] 200
[2026-06-13 01:27:30,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:30,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:27:30,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:30,190.190 INFO    ] No camera update needed
[2026-06-13 01:27:30,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:27:30,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:27:30,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:27:30,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:27:32,236.236 INFO    ] ================================================
[2026-06-13 01:27:32,251.251 INFO    ] Launching Daemon at Sat Jun 13 01:27:32 IST 2026
[2026-06-13 01:27:32,262.262 INFO    ] ================================================
[2026-06-13 01:27:32,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:32
[2026-06-13 01:27:32,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:33,053.053 INFO    ] Initializing speech engine...
[2026-06-13 01:27:33,062.062 INFO    ] 2026-06-13 01:27:33
[2026-06-13 01:27:33,289.289 INFO    ] 2026-06-13 01:27:33
[2026-06-13 01:27:33,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:33,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:33,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:33,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:33,725.725 INFO    ] time= 13/06/2026 01:27:33
[2026-06-13 01:27:33,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:33,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:33,856.856 INFO    ] No existing commands found in stream
[2026-06-13 01:27:38,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:27:38,870.870 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 01:27:41,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:27:41,671.671 INFO    ] Checking for system updates...
[2026-06-13 01:27:41,692.692 INFO    ] 200
[2026-06-13 01:27:41,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:41,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:41,725.725 INFO    ] No update needed
[2026-06-13 01:27:41,726.726 INFO    ] Checking for camera pi updates...
[2026-06-13 01:27:41,746.746 INFO    ] 200
[2026-06-13 01:27:41,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:41,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:27:41,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:41,819.819 INFO    ] No camera update needed
[2026-06-13 01:27:41,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:27:41,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:27:41,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:27:41,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:27:43,866.866 INFO    ] ================================================
[2026-06-13 01:27:43,882.882 INFO    ] Launching Daemon at Sat Jun 13 01:27:43 IST 2026
[2026-06-13 01:27:43,892.892 INFO    ] ================================================
[2026-06-13 01:27:44,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:44
[2026-06-13 01:27:44,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:45,043.043 INFO    ] Initializing speech engine...
[2026-06-13 01:27:45,051.051 INFO    ] 2026-06-13 01:27:45
[2026-06-13 01:27:45,348.348 INFO    ] 2026-06-13 01:27:45
[2026-06-13 01:27:45,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:45,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:45,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:45,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:45,884.884 INFO    ] time= 13/06/2026 01:27:45
[2026-06-13 01:27:45,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:45,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:46,040.040 INFO    ] No existing commands found in stream
[2026-06-13 01:27:51,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:27:51,062.062 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 01:27:52,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:27:52,204.204 INFO    ] Checking for system updates...
[2026-06-13 01:27:52,225.225 INFO    ] 200
[2026-06-13 01:27:52,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:52,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:52,260.260 INFO    ] No update needed
[2026-06-13 01:27:52,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 01:27:52,281.281 INFO    ] 200
[2026-06-13 01:27:52,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:27:52,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:27:52,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:27:52,360.360 INFO    ] No camera update needed
[2026-06-13 01:27:52,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:27:52,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:27:52,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:27:52,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:27:54,409.409 INFO    ] ================================================
[2026-06-13 01:27:54,425.425 INFO    ] Launching Daemon at Sat Jun 13 01:27:54 IST 2026
[2026-06-13 01:27:54,436.436 INFO    ] ================================================
[2026-06-13 01:27:54,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:27:54
[2026-06-13 01:27:55,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:27:55,294.294 INFO    ] Initializing speech engine...
[2026-06-13 01:27:55,304.304 INFO    ] 2026-06-13 01:27:55
[2026-06-13 01:27:55,518.518 INFO    ] 2026-06-13 01:27:55
[2026-06-13 01:27:55,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:27:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:27:55,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:27:55,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:27:55,975.975 INFO    ] time= 13/06/2026 01:27:55
[2026-06-13 01:27:56,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:27:56,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:27:56,240.240 INFO    ] No existing commands found in stream
[2026-06-13 01:28:01,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:01,274.274 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 01:28:01,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:28:01,863.863 INFO    ] Checking for system updates...
[2026-06-13 01:28:01,921.921 INFO    ] 200
[2026-06-13 01:28:01,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:01,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:01,998.998 INFO    ] No update needed
[2026-06-13 01:28:02,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:02,045.045 INFO    ] 200
[2026-06-13 01:28:02,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:02,095.095 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:02,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:02,234.234 INFO    ] No camera update needed
[2026-06-13 01:28:02,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:02,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:02,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:02,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:04,305.305 INFO    ] ================================================
[2026-06-13 01:28:04,320.320 INFO    ] Launching Daemon at Sat Jun 13 01:28:04 IST 2026
[2026-06-13 01:28:04,330.330 INFO    ] ================================================
[2026-06-13 01:28:04,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:04
[2026-06-13 01:28:05,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:05,270.270 INFO    ] Initializing speech engine...
[2026-06-13 01:28:05,276.276 INFO    ] 2026-06-13 01:28:05
[2026-06-13 01:28:05,480.480 INFO    ] 2026-06-13 01:28:05
[2026-06-13 01:28:05,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:05,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:05,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:05,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:28:05,890.890 INFO    ] time= 13/06/2026 01:28:05
[2026-06-13 01:28:05,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:28:05,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:28:05,996.996 INFO    ] No existing commands found in stream
[2026-06-13 01:28:11,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:11,013.013 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 01:28:12,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:28:12,972.972 INFO    ] Checking for system updates...
[2026-06-13 01:28:12,993.993 INFO    ] 200
[2026-06-13 01:28:12,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:13,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:13,030.030 INFO    ] No update needed
[2026-06-13 01:28:13,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:13,052.052 INFO    ] 200
[2026-06-13 01:28:13,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:13,079.079 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:13,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:13,115.115 INFO    ] No camera update needed
[2026-06-13 01:28:13,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:13,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:13,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:13,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:15,164.164 INFO    ] ================================================
[2026-06-13 01:28:15,179.179 INFO    ] Launching Daemon at Sat Jun 13 01:28:15 IST 2026
[2026-06-13 01:28:15,189.189 INFO    ] ================================================
[2026-06-13 01:28:15,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:15
[2026-06-13 01:28:15,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:16,022.022 INFO    ] Initializing speech engine...
[2026-06-13 01:28:16,027.027 INFO    ] 2026-06-13 01:28:16
[2026-06-13 01:28:16,234.234 INFO    ] 2026-06-13 01:28:16
[2026-06-13 01:28:16,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:16,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:16,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:16,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:28:16,650.650 INFO    ] time= 13/06/2026 01:28:16
[2026-06-13 01:28:16,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:28:16,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:28:16,750.750 INFO    ] No existing commands found in stream
[2026-06-13 01:28:21,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:21,768.768 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 01:28:25,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:28:25,402.402 INFO    ] Checking for system updates...
[2026-06-13 01:28:25,423.423 INFO    ] 200
[2026-06-13 01:28:25,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:25,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:28:25,456.456 INFO    ] No update needed
[2026-06-13 01:28:25,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:25,478.478 INFO    ] 200
[2026-06-13 01:28:25,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:25,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:25,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:25,551.551 INFO    ] No camera update needed
[2026-06-13 01:28:25,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:25,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:25,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:25,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:27,598.598 INFO    ] ================================================
[2026-06-13 01:28:27,613.613 INFO    ] Launching Daemon at Sat Jun 13 01:28:27 IST 2026
[2026-06-13 01:28:27,623.623 INFO    ] ================================================
[2026-06-13 01:28:27,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:27
[2026-06-13 01:28:28,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:28,426.426 INFO    ] Initializing speech engine...
[2026-06-13 01:28:28,431.431 INFO    ] 2026-06-13 01:28:28
[2026-06-13 01:28:28,632.632 INFO    ] 2026-06-13 01:28:28
[2026-06-13 01:28:28,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:28,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:28,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:28,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:28:29,031.031 INFO    ] time= 13/06/2026 01:28:28
[2026-06-13 01:28:29,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:28:29,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:28:29,144.144 INFO    ] No existing commands found in stream
[2026-06-13 01:28:34,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:34,157.157 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 01:28:34,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:28:34,881.881 INFO    ] Checking for system updates...
[2026-06-13 01:28:34,901.901 INFO    ] 200
[2026-06-13 01:28:34,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:34,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:34,936.936 INFO    ] No update needed
[2026-06-13 01:28:34,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:34,961.961 INFO    ] 200
[2026-06-13 01:28:34,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:34,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:35,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:35,025.025 INFO    ] No camera update needed
[2026-06-13 01:28:35,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:35,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:35,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:35,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:37,074.074 INFO    ] ================================================
[2026-06-13 01:28:37,089.089 INFO    ] Launching Daemon at Sat Jun 13 01:28:37 IST 2026
[2026-06-13 01:28:37,099.099 INFO    ] ================================================
[2026-06-13 01:28:37,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:37
[2026-06-13 01:28:37,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:37,882.882 INFO    ] Initializing speech engine...
[2026-06-13 01:28:37,887.887 INFO    ] 2026-06-13 01:28:37
[2026-06-13 01:28:38,114.114 INFO    ] 2026-06-13 01:28:38
[2026-06-13 01:28:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:38,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:38,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:38,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:28:38,550.550 INFO    ] time= 13/06/2026 01:28:38
[2026-06-13 01:28:38,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:28:38,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:28:38,667.667 INFO    ] No existing commands found in stream
[2026-06-13 01:28:43,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:43,679.679 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 01:28:45,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:28:45,856.856 INFO    ] Checking for system updates...
[2026-06-13 01:28:45,876.876 INFO    ] 200
[2026-06-13 01:28:45,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:45,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:45,910.910 INFO    ] No update needed
[2026-06-13 01:28:45,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:45,930.930 INFO    ] 200
[2026-06-13 01:28:45,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:45,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:45,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:45,991.991 INFO    ] No camera update needed
[2026-06-13 01:28:45,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:45,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:45,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:46,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:48,040.040 INFO    ] ================================================
[2026-06-13 01:28:48,054.054 INFO    ] Launching Daemon at Sat Jun 13 01:28:48 IST 2026
[2026-06-13 01:28:48,065.065 INFO    ] ================================================
[2026-06-13 01:28:48,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:48
[2026-06-13 01:28:48,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:48,933.933 INFO    ] Initializing speech engine...
[2026-06-13 01:28:48,938.938 INFO    ] 2026-06-13 01:28:48
[2026-06-13 01:28:49,142.142 INFO    ] 2026-06-13 01:28:49
[2026-06-13 01:28:49,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:49,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:49,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:49,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:28:49,556.556 INFO    ] time= 13/06/2026 01:28:49
[2026-06-13 01:28:49,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:28:49,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:28:49,663.663 INFO    ] No existing commands found in stream
[2026-06-13 01:28:54,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:28:54,699.699 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 01:28:56,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:28:56,386.386 INFO    ] Checking for system updates...
[2026-06-13 01:28:56,407.407 INFO    ] 200
[2026-06-13 01:28:56,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:56,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:28:56,440.440 INFO    ] No update needed
[2026-06-13 01:28:56,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 01:28:56,461.461 INFO    ] 200
[2026-06-13 01:28:56,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:28:56,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:28:56,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:28:56,527.527 INFO    ] No camera update needed
[2026-06-13 01:28:56,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:28:56,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:28:56,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:28:56,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:28:58,576.576 INFO    ] ================================================
[2026-06-13 01:28:58,591.591 INFO    ] Launching Daemon at Sat Jun 13 01:28:58 IST 2026
[2026-06-13 01:28:58,602.602 INFO    ] ================================================
[2026-06-13 01:28:58,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:28:58
[2026-06-13 01:28:59,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:28:59,392.392 INFO    ] Initializing speech engine...
[2026-06-13 01:28:59,396.396 INFO    ] 2026-06-13 01:28:59
[2026-06-13 01:28:59,599.599 INFO    ] 2026-06-13 01:28:59
[2026-06-13 01:28:59,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:28:59,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:28:59,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:28:59,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:00,055.055 INFO    ] time= 13/06/2026 01:29:00
[2026-06-13 01:29:00,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:00,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:00,181.181 INFO    ] No existing commands found in stream
[2026-06-13 01:29:05,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:05,194.194 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 01:29:08,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:29:08,726.726 INFO    ] Checking for system updates...
[2026-06-13 01:29:08,747.747 INFO    ] 200
[2026-06-13 01:29:08,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:08,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:08,783.783 INFO    ] No update needed
[2026-06-13 01:29:08,785.785 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:08,808.808 INFO    ] 200
[2026-06-13 01:29:08,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:08,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:08,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:08,875.875 INFO    ] No camera update needed
[2026-06-13 01:29:08,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:08,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:08,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:08,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:29:10,924.924 INFO    ] ================================================
[2026-06-13 01:29:10,940.940 INFO    ] Launching Daemon at Sat Jun 13 01:29:10 IST 2026
[2026-06-13 01:29:10,950.950 INFO    ] ================================================
[2026-06-13 01:29:11,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:29:11
[2026-06-13 01:29:11,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:29:11,745.745 INFO    ] Initializing speech engine...
[2026-06-13 01:29:11,750.750 INFO    ] 2026-06-13 01:29:11
[2026-06-13 01:29:11,954.954 INFO    ] 2026-06-13 01:29:11
[2026-06-13 01:29:11,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:29:12,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:29:12,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:29:12,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:12,418.418 INFO    ] time= 13/06/2026 01:29:12
[2026-06-13 01:29:12,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:12,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:12,541.541 INFO    ] No existing commands found in stream
[2026-06-13 01:29:17,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:17,555.555 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 01:29:17,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:29:17,897.897 INFO    ] Checking for system updates...
[2026-06-13 01:29:17,918.918 INFO    ] 200
[2026-06-13 01:29:17,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:17,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:17,951.951 INFO    ] No update needed
[2026-06-13 01:29:17,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:17,971.971 INFO    ] 200
[2026-06-13 01:29:17,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:17,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:18,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:18,046.046 INFO    ] No camera update needed
[2026-06-13 01:29:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:18,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:18,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:18,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:29:20,093.093 INFO    ] ================================================
[2026-06-13 01:29:20,108.108 INFO    ] Launching Daemon at Sat Jun 13 01:29:20 IST 2026
[2026-06-13 01:29:20,121.121 INFO    ] ================================================
[2026-06-13 01:29:20,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:29:20
[2026-06-13 01:29:20,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:29:20,917.917 INFO    ] Initializing speech engine...
[2026-06-13 01:29:20,922.922 INFO    ] 2026-06-13 01:29:20
[2026-06-13 01:29:21,141.141 INFO    ] 2026-06-13 01:29:21
[2026-06-13 01:29:21,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:29:21,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:29:21,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:29:21,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:21,559.559 INFO    ] time= 13/06/2026 01:29:21
[2026-06-13 01:29:21,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:21,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:21,691.691 INFO    ] No existing commands found in stream
[2026-06-13 01:29:26,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:26,703.703 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 01:29:27,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:29:27,427.427 INFO    ] Checking for system updates...
[2026-06-13 01:29:27,459.459 INFO    ] 200
[2026-06-13 01:29:27,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:27,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:27,492.492 INFO    ] No update needed
[2026-06-13 01:29:27,493.493 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:27,513.513 INFO    ] 200
[2026-06-13 01:29:27,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:27,539.539 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:27,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:27,578.578 INFO    ] No camera update needed
[2026-06-13 01:29:27,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:27,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:27,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:27,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:29:29,625.625 INFO    ] ================================================
[2026-06-13 01:29:29,640.640 INFO    ] Launching Daemon at Sat Jun 13 01:29:29 IST 2026
[2026-06-13 01:29:29,651.651 INFO    ] ================================================
[2026-06-13 01:29:30,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:29:30
[2026-06-13 01:29:30,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:29:30,446.446 INFO    ] Initializing speech engine...
[2026-06-13 01:29:30,450.450 INFO    ] 2026-06-13 01:29:30
[2026-06-13 01:29:30,668.668 INFO    ] 2026-06-13 01:29:30
[2026-06-13 01:29:30,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:29:30,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:29:30,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:29:31,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:31,072.072 INFO    ] time= 13/06/2026 01:29:31
[2026-06-13 01:29:31,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:31,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:31,203.203 INFO    ] No existing commands found in stream
[2026-06-13 01:29:36,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:36,219.219 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 01:29:37,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:29:37,311.311 INFO    ] Checking for system updates...
[2026-06-13 01:29:37,333.333 INFO    ] 200
[2026-06-13 01:29:37,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:37,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:29:37,366.366 INFO    ] No update needed
[2026-06-13 01:29:37,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:37,388.388 INFO    ] 200
[2026-06-13 01:29:37,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:37,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:37,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:37,459.459 INFO    ] No camera update needed
[2026-06-13 01:29:37,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:37,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:37,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:37,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:29:39,512.512 INFO    ] ================================================
[2026-06-13 01:29:39,527.527 INFO    ] Launching Daemon at Sat Jun 13 01:29:39 IST 2026
[2026-06-13 01:29:39,537.537 INFO    ] ================================================
[2026-06-13 01:29:39,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:29:39
[2026-06-13 01:29:40,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:29:40,354.354 INFO    ] Initializing speech engine...
[2026-06-13 01:29:40,359.359 INFO    ] 2026-06-13 01:29:40
[2026-06-13 01:29:40,562.562 INFO    ] 2026-06-13 01:29:40
[2026-06-13 01:29:40,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:29:40,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:29:40,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:29:40,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:40,966.966 INFO    ] time= 13/06/2026 01:29:40
[2026-06-13 01:29:41,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:41,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:41,077.077 INFO    ] No existing commands found in stream
[2026-06-13 01:29:46,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:46,089.089 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 01:29:48,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:29:48,807.807 INFO    ] Checking for system updates...
[2026-06-13 01:29:48,828.828 INFO    ] 200
[2026-06-13 01:29:48,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:48,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:48,861.861 INFO    ] No update needed
[2026-06-13 01:29:48,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:48,883.883 INFO    ] 200
[2026-06-13 01:29:48,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:48,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:48,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:48,944.944 INFO    ] No camera update needed
[2026-06-13 01:29:48,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:48,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:48,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:48,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:29:50,992.992 INFO    ] ================================================
[2026-06-13 01:29:51,007.007 INFO    ] Launching Daemon at Sat Jun 13 01:29:51 IST 2026
[2026-06-13 01:29:51,017.017 INFO    ] ================================================
[2026-06-13 01:29:51,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:29:51
[2026-06-13 01:29:51,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:29:51,828.828 INFO    ] Initializing speech engine...
[2026-06-13 01:29:51,836.836 INFO    ] 2026-06-13 01:29:51
[2026-06-13 01:29:52,060.060 INFO    ] 2026-06-13 01:29:52
[2026-06-13 01:29:52,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:29:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:29:52,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:29:52,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:29:52,493.493 INFO    ] time= 13/06/2026 01:29:52
[2026-06-13 01:29:52,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:29:52,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:29:52,616.616 INFO    ] No existing commands found in stream
[2026-06-13 01:29:57,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:29:57,630.630 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 01:29:59,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:29:59,853.853 INFO    ] Checking for system updates...
[2026-06-13 01:29:59,873.873 INFO    ] 200
[2026-06-13 01:29:59,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:59,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:59,906.906 INFO    ] No update needed
[2026-06-13 01:29:59,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 01:29:59,929.929 INFO    ] 200
[2026-06-13 01:29:59,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:29:59,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:29:59,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:29:59,991.991 INFO    ] No camera update needed
[2026-06-13 01:29:59,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:29:59,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:29:59,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:29:59,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:02,053.053 INFO    ] ================================================
[2026-06-13 01:30:02,089.089 INFO    ] Launching Daemon at Sat Jun 13 01:30:02 IST 2026
[2026-06-13 01:30:02,129.129 INFO    ] ================================================
[2026-06-13 01:30:02,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:02
[2026-06-13 01:30:02,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:03,119.119 INFO    ] Initializing speech engine...
[2026-06-13 01:30:03,121.121 INFO    ] 2026-06-13 01:30:03
[2026-06-13 01:30:03,329.329 INFO    ] 2026-06-13 01:30:03
[2026-06-13 01:30:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:30:03,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:30:03,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:30:03,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:30:03,598.598 INFO    ] time= 13/06/2026 01:30:03
[2026-06-13 01:30:03,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:30:03,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:30:03,690.690 INFO    ] No existing commands found in stream
[2026-06-13 01:30:08,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:30:08,727.727 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 01:30:12,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:30:12,573.573 INFO    ] Checking for system updates...
[2026-06-13 01:30:12,598.598 INFO    ] 200
[2026-06-13 01:30:12,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:12,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:12,637.637 INFO    ] No update needed
[2026-06-13 01:30:12,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 01:30:12,658.658 INFO    ] 200
[2026-06-13 01:30:12,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:12,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:30:12,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:12,832.832 INFO    ] No camera update needed
[2026-06-13 01:30:12,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:30:12,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:30:12,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:30:12,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:14,880.880 INFO    ] ================================================
[2026-06-13 01:30:14,896.896 INFO    ] Launching Daemon at Sat Jun 13 01:30:14 IST 2026
[2026-06-13 01:30:14,907.907 INFO    ] ================================================
[2026-06-13 01:30:15,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:15
[2026-06-13 01:30:15,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:15,694.694 INFO    ] Initializing speech engine...
[2026-06-13 01:30:15,698.698 INFO    ] 2026-06-13 01:30:15
[2026-06-13 01:30:15,927.927 INFO    ] 2026-06-13 01:30:15
[2026-06-13 01:30:15,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:30:16,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:30:16,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:30:16,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:30:16,317.317 INFO    ] time= 13/06/2026 01:30:16
[2026-06-13 01:30:16,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:30:16,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:30:16,494.494 INFO    ] No existing commands found in stream
[2026-06-13 01:30:21,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:30:21,507.507 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 01:30:22,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:30:22,003.003 INFO    ] Checking for system updates...
[2026-06-13 01:30:22,023.023 INFO    ] 200
[2026-06-13 01:30:22,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:22,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:22,058.058 INFO    ] No update needed
[2026-06-13 01:30:22,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 01:30:22,080.080 INFO    ] 200
[2026-06-13 01:30:22,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:22,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:30:22,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:22,145.145 INFO    ] No camera update needed
[2026-06-13 01:30:22,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:30:22,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:30:22,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:30:22,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:24,193.193 INFO    ] ================================================
[2026-06-13 01:30:24,208.208 INFO    ] Launching Daemon at Sat Jun 13 01:30:24 IST 2026
[2026-06-13 01:30:24,219.219 INFO    ] ================================================
[2026-06-13 01:30:24,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:24
[2026-06-13 01:30:24,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:25,048.048 INFO    ] Initializing speech engine...
[2026-06-13 01:30:25,053.053 INFO    ] 2026-06-13 01:30:25
[2026-06-13 01:30:25,253.253 INFO    ] 2026-06-13 01:30:25
[2026-06-13 01:30:25,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:30:25,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:30:25,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:30:25,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:30:25,652.652 INFO    ] time= 13/06/2026 01:30:25
[2026-06-13 01:30:25,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:30:25,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:30:25,767.767 INFO    ] No existing commands found in stream
[2026-06-13 01:30:30,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:30:30,789.789 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 01:30:34,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:30:34,576.576 INFO    ] Checking for system updates...
[2026-06-13 01:30:34,597.597 INFO    ] 200
[2026-06-13 01:30:34,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:34,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:30:34,630.630 INFO    ] No update needed
[2026-06-13 01:30:34,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 01:30:34,651.651 INFO    ] 200
[2026-06-13 01:30:34,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:34,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:30:34,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:30:34,715.715 INFO    ] No camera update needed
[2026-06-13 01:30:34,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:30:34,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:30:34,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:30:34,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:36,765.765 INFO    ] ================================================
[2026-06-13 01:30:36,781.781 INFO    ] Launching Daemon at Sat Jun 13 01:30:36 IST 2026
[2026-06-13 01:30:36,792.792 INFO    ] ================================================
[2026-06-13 01:30:37,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:37
[2026-06-13 01:30:37,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:37,656.656 INFO    ] Initializing speech engine...
[2026-06-13 01:30:37,660.660 INFO    ] 2026-06-13 01:30:37
[2026-06-13 01:30:37,894.894 INFO    ] 2026-06-13 01:30:37
[2026-06-13 01:30:37,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:30:38,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:30:38,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:30:38,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:30:38,325.325 INFO    ] time= 13/06/2026 01:30:38
[2026-06-13 01:30:38,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:30:38,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:30:38,430.430 INFO    ] No existing commands found in stream
[2026-06-13 01:30:43,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:30:43,446.446 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 01:30:45,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:30:45,937.937 INFO    ] Checking for system updates...
[2026-06-13 01:30:45,958.958 INFO    ] 200
[2026-06-13 01:30:45,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:45,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:45,992.992 INFO    ] No update needed
[2026-06-13 01:30:45,993.993 INFO    ] Checking for camera pi updates...
[2026-06-13 01:30:46,012.012 INFO    ] 200
[2026-06-13 01:30:46,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:46,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:30:46,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:30:46,077.077 INFO    ] No camera update needed
[2026-06-13 01:30:46,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:30:46,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:30:46,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:30:46,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:48,123.123 INFO    ] ================================================
[2026-06-13 01:30:48,139.139 INFO    ] Launching Daemon at Sat Jun 13 01:30:48 IST 2026
[2026-06-13 01:30:48,151.151 INFO    ] ================================================
[2026-06-13 01:30:48,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:48
[2026-06-13 01:30:49,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:49,153.153 INFO    ] Initializing speech engine...
[2026-06-13 01:30:49,158.158 INFO    ] 2026-06-13 01:30:49
[2026-06-13 01:30:49,360.360 INFO    ] 2026-06-13 01:30:49
[2026-06-13 01:30:49,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:30:49,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:30:49,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:30:49,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:30:49,759.759 INFO    ] time= 13/06/2026 01:30:49
[2026-06-13 01:30:49,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:30:49,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:30:49,874.874 INFO    ] No existing commands found in stream
[2026-06-13 01:30:54,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:30:54,887.887 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 01:30:56,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:30:56,598.598 INFO    ] Checking for system updates...
[2026-06-13 01:30:56,619.619 INFO    ] 200
[2026-06-13 01:30:56,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:56,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:56,654.654 INFO    ] No update needed
[2026-06-13 01:30:56,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 01:30:56,675.675 INFO    ] 200
[2026-06-13 01:30:56,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:30:56,701.701 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:30:56,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:30:56,748.748 INFO    ] No camera update needed
[2026-06-13 01:30:56,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:30:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:30:56,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:30:56,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:30:58,797.797 INFO    ] ================================================
[2026-06-13 01:30:58,813.813 INFO    ] Launching Daemon at Sat Jun 13 01:30:58 IST 2026
[2026-06-13 01:30:58,824.824 INFO    ] ================================================
[2026-06-13 01:30:59,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:30:59
[2026-06-13 01:30:59,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:30:59,675.675 INFO    ] Initializing speech engine...
[2026-06-13 01:30:59,680.680 INFO    ] 2026-06-13 01:30:59
[2026-06-13 01:30:59,885.885 INFO    ] 2026-06-13 01:30:59
[2026-06-13 01:30:59,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:00,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:00,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:00,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:00,285.285 INFO    ] time= 13/06/2026 01:31:00
[2026-06-13 01:31:00,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:00,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:00,399.399 INFO    ] No existing commands found in stream
[2026-06-13 01:31:05,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:31:05,413.413 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 01:31:05,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:31:05,839.839 INFO    ] Checking for system updates...
[2026-06-13 01:31:05,862.862 INFO    ] 200
[2026-06-13 01:31:05,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:05,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:05,897.897 INFO    ] No update needed
[2026-06-13 01:31:05,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 01:31:05,919.919 INFO    ] 200
[2026-06-13 01:31:05,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:05,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:31:05,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:05,986.986 INFO    ] No camera update needed
[2026-06-13 01:31:05,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:31:05,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:31:05,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:31:05,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:31:08,035.035 INFO    ] ================================================
[2026-06-13 01:31:08,051.051 INFO    ] Launching Daemon at Sat Jun 13 01:31:08 IST 2026
[2026-06-13 01:31:08,062.062 INFO    ] ================================================
[2026-06-13 01:31:08,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:31:08
[2026-06-13 01:31:08,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:31:08,863.863 INFO    ] Initializing speech engine...
[2026-06-13 01:31:08,873.873 INFO    ] 2026-06-13 01:31:08
[2026-06-13 01:31:09,079.079 INFO    ] 2026-06-13 01:31:09
[2026-06-13 01:31:09,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:09,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:09,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:09,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:09,331.331 INFO    ] time= 13/06/2026 01:31:09
[2026-06-13 01:31:09,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:09,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:09,440.440 INFO    ] No existing commands found in stream
[2026-06-13 01:31:14,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:31:14,459.459 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 01:31:17,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:31:17,316.316 INFO    ] Checking for system updates...
[2026-06-13 01:31:17,337.337 INFO    ] 200
[2026-06-13 01:31:17,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:17,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:31:17,372.372 INFO    ] No update needed
[2026-06-13 01:31:17,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 01:31:17,394.394 INFO    ] 200
[2026-06-13 01:31:17,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:17,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:31:17,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:31:17,471.471 INFO    ] No camera update needed
[2026-06-13 01:31:17,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:31:17,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:31:17,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:31:17,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:31:19,519.519 INFO    ] ================================================
[2026-06-13 01:31:19,535.535 INFO    ] Launching Daemon at Sat Jun 13 01:31:19 IST 2026
[2026-06-13 01:31:19,546.546 INFO    ] ================================================
[2026-06-13 01:31:19,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:31:19
[2026-06-13 01:31:20,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:31:20,336.336 INFO    ] Initializing speech engine...
[2026-06-13 01:31:20,340.340 INFO    ] 2026-06-13 01:31:20
[2026-06-13 01:31:20,569.569 INFO    ] 2026-06-13 01:31:20
[2026-06-13 01:31:20,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:20,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:20,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:20,993.993 INFO    ] time= 13/06/2026 01:31:20
[2026-06-13 01:31:21,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:21,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:21,118.118 INFO    ] No existing commands found in stream
[2026-06-13 01:31:26,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:31:26,131.131 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 01:31:28,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:31:28,121.121 INFO    ] Checking for system updates...
[2026-06-13 01:31:28,142.142 INFO    ] 200
[2026-06-13 01:31:28,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:28,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:28,175.175 INFO    ] No update needed
[2026-06-13 01:31:28,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 01:31:28,199.199 INFO    ] 200
[2026-06-13 01:31:28,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:28,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:31:28,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:28,263.263 INFO    ] No camera update needed
[2026-06-13 01:31:28,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:31:28,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:31:28,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:31:28,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:31:30,311.311 INFO    ] ================================================
[2026-06-13 01:31:30,327.327 INFO    ] Launching Daemon at Sat Jun 13 01:31:30 IST 2026
[2026-06-13 01:31:30,339.339 INFO    ] ================================================
[2026-06-13 01:31:30,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:31:30
[2026-06-13 01:31:31,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:31:31,584.584 INFO    ] Initializing speech engine...
[2026-06-13 01:31:31,590.590 INFO    ] 2026-06-13 01:31:31
[2026-06-13 01:31:31,909.909 INFO    ] 2026-06-13 01:31:31
[2026-06-13 01:31:31,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:32,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:32,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:32,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:32,322.322 INFO    ] time= 13/06/2026 01:31:32
[2026-06-13 01:31:32,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:32,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:32,453.453 INFO    ] No existing commands found in stream
[2026-06-13 01:31:37,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:31:37,468.468 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 01:31:39,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:31:39,629.629 INFO    ] Checking for system updates...
[2026-06-13 01:31:39,650.650 INFO    ] 200
[2026-06-13 01:31:39,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:39,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:39,683.683 INFO    ] No update needed
[2026-06-13 01:31:39,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 01:31:39,704.704 INFO    ] 200
[2026-06-13 01:31:39,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:39,728.728 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:31:39,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:31:39,766.766 INFO    ] No camera update needed
[2026-06-13 01:31:39,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:31:39,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:31:39,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:31:39,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:31:41,821.821 INFO    ] ================================================
[2026-06-13 01:31:41,837.837 INFO    ] Launching Daemon at Sat Jun 13 01:31:41 IST 2026
[2026-06-13 01:31:41,848.848 INFO    ] ================================================
[2026-06-13 01:31:42,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:31:42
[2026-06-13 01:31:42,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:31:42,656.656 INFO    ] Initializing speech engine...
[2026-06-13 01:31:42,667.667 INFO    ] 2026-06-13 01:31:42
[2026-06-13 01:31:42,883.883 INFO    ] 2026-06-13 01:31:42
[2026-06-13 01:31:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:43,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:43,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:43,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:43,305.305 INFO    ] time= 13/06/2026 01:31:43
[2026-06-13 01:31:43,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:43,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:43,435.435 INFO    ] No existing commands found in stream
[2026-06-13 01:31:48,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:31:48,449.449 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 01:31:51,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:31:51,291.291 INFO    ] Checking for system updates...
[2026-06-13 01:31:51,313.313 INFO    ] 200
[2026-06-13 01:31:51,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:51,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:31:51,347.347 INFO    ] No update needed
[2026-06-13 01:31:51,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 01:31:51,369.369 INFO    ] 200
[2026-06-13 01:31:51,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:31:51,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:31:51,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:31:51,439.439 INFO    ] No camera update needed
[2026-06-13 01:31:51,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:31:51,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:31:51,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:31:51,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:31:53,499.499 INFO    ] ================================================
[2026-06-13 01:31:53,516.516 INFO    ] Launching Daemon at Sat Jun 13 01:31:53 IST 2026
[2026-06-13 01:31:53,527.527 INFO    ] ================================================
[2026-06-13 01:31:54,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:31:54
[2026-06-13 01:31:54,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:31:54,831.831 INFO    ] Initializing speech engine...
[2026-06-13 01:31:54,836.836 INFO    ] 2026-06-13 01:31:54
[2026-06-13 01:31:55,041.041 INFO    ] 2026-06-13 01:31:55
[2026-06-13 01:31:55,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:31:55,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:31:55,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:31:55,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:31:55,445.445 INFO    ] time= 13/06/2026 01:31:55
[2026-06-13 01:31:55,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:31:55,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:31:55,567.567 INFO    ] No existing commands found in stream
[2026-06-13 01:32:00,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:00,576.576 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 01:32:03,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:32:03,789.789 INFO    ] Checking for system updates...
[2026-06-13 01:32:03,811.811 INFO    ] 200
[2026-06-13 01:32:03,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:03,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:32:03,844.844 INFO    ] No update needed
[2026-06-13 01:32:03,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 01:32:03,865.865 INFO    ] 200
[2026-06-13 01:32:03,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:03,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:32:03,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:32:03,933.933 INFO    ] No camera update needed
[2026-06-13 01:32:03,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:32:03,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:32:03,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:32:03,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:32:05,982.982 INFO    ] ================================================
[2026-06-13 01:32:06,998.998 INFO    ] Launching Daemon at Sat Jun 13 01:32:05 IST 2026
[2026-06-13 01:32:06,009.009 INFO    ] ================================================
[2026-06-13 01:32:06,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:32:06
[2026-06-13 01:32:06,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:32:07,293.293 INFO    ] Initializing speech engine...
[2026-06-13 01:32:07,299.299 INFO    ] 2026-06-13 01:32:07
[2026-06-13 01:32:07,573.573 INFO    ] 2026-06-13 01:32:07
[2026-06-13 01:32:07,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:32:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:32:07,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:32:07,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:32:08,039.039 INFO    ] time= 13/06/2026 01:32:08
[2026-06-13 01:32:08,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:32:08,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:32:08,273.273 INFO    ] No existing commands found in stream
[2026-06-13 01:32:13,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:13,301.301 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 01:32:14,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:32:14,239.239 INFO    ] Checking for system updates...
[2026-06-13 01:32:14,262.262 INFO    ] 200
[2026-06-13 01:32:14,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:14,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:14,302.302 INFO    ] No update needed
[2026-06-13 01:32:14,303.303 INFO    ] Checking for camera pi updates...
[2026-06-13 01:32:14,324.324 INFO    ] 200
[2026-06-13 01:32:14,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:14,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:32:14,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:14,388.388 INFO    ] No camera update needed
[2026-06-13 01:32:14,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:32:14,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:32:14,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:32:14,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:32:16,437.437 INFO    ] ================================================
[2026-06-13 01:32:16,452.452 INFO    ] Launching Daemon at Sat Jun 13 01:32:16 IST 2026
[2026-06-13 01:32:16,463.463 INFO    ] ================================================
[2026-06-13 01:32:16,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:32:16
[2026-06-13 01:32:17,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:32:17,291.291 INFO    ] Initializing speech engine...
[2026-06-13 01:32:17,296.296 INFO    ] 2026-06-13 01:32:17
[2026-06-13 01:32:17,510.510 INFO    ] 2026-06-13 01:32:17
[2026-06-13 01:32:17,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:32:17,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:32:17,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:32:17,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:32:17,911.911 INFO    ] time= 13/06/2026 01:32:17
[2026-06-13 01:32:17,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:32:17,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:32:18,062.062 INFO    ] No existing commands found in stream
[2026-06-13 01:32:23,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:23,075.075 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 01:32:25,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:32:25,057.057 INFO    ] Checking for system updates...
[2026-06-13 01:32:25,078.078 INFO    ] 200
[2026-06-13 01:32:25,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:25,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:25,111.111 INFO    ] No update needed
[2026-06-13 01:32:25,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 01:32:25,132.132 INFO    ] 200
[2026-06-13 01:32:25,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:25,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:32:25,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:25,307.307 INFO    ] No camera update needed
[2026-06-13 01:32:25,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:32:25,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:32:25,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:32:25,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:32:27,355.355 INFO    ] ================================================
[2026-06-13 01:32:27,389.389 INFO    ] Launching Daemon at Sat Jun 13 01:32:27 IST 2026
[2026-06-13 01:32:27,401.401 INFO    ] ================================================
[2026-06-13 01:32:27,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:32:27
[2026-06-13 01:32:28,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:32:28,230.230 INFO    ] Initializing speech engine...
[2026-06-13 01:32:28,237.237 INFO    ] 2026-06-13 01:32:28
[2026-06-13 01:32:28,446.446 INFO    ] 2026-06-13 01:32:28
[2026-06-13 01:32:28,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:32:28,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:32:28,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:32:28,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:32:28,868.868 INFO    ] time= 13/06/2026 01:32:28
[2026-06-13 01:32:28,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:32:28,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:32:28,965.965 INFO    ] No existing commands found in stream
[2026-06-13 01:32:33,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:33,978.978 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 01:32:40,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:32:40,042.042 INFO    ] Checking for system updates...
[2026-06-13 01:32:40,063.063 INFO    ] 200
[2026-06-13 01:32:40,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:40,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:32:40,096.096 INFO    ] No update needed
[2026-06-13 01:32:40,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 01:32:40,117.117 INFO    ] 200
[2026-06-13 01:32:40,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:40,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:32:40,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:32:40,189.189 INFO    ] No camera update needed
[2026-06-13 01:32:40,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:32:40,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:32:40,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:32:40,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:32:42,237.237 INFO    ] ================================================
[2026-06-13 01:32:42,253.253 INFO    ] Launching Daemon at Sat Jun 13 01:32:42 IST 2026
[2026-06-13 01:32:42,263.263 INFO    ] ================================================
[2026-06-13 01:32:42,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:32:42
[2026-06-13 01:32:42,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:32:43,037.037 INFO    ] Initializing speech engine...
[2026-06-13 01:32:43,042.042 INFO    ] 2026-06-13 01:32:43
[2026-06-13 01:32:43,270.270 INFO    ] 2026-06-13 01:32:43
[2026-06-13 01:32:43,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:32:43,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:32:43,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:32:43,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:32:43,670.670 INFO    ] time= 13/06/2026 01:32:43
[2026-06-13 01:32:43,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:32:43,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:32:43,821.821 INFO    ] No existing commands found in stream
[2026-06-13 01:32:48,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:48,834.834 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 01:32:50,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:32:50,371.371 INFO    ] Checking for system updates...
[2026-06-13 01:32:50,392.392 INFO    ] 200
[2026-06-13 01:32:50,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:50,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:50,427.427 INFO    ] No update needed
[2026-06-13 01:32:50,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 01:32:50,449.449 INFO    ] 200
[2026-06-13 01:32:50,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:32:50,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:32:50,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:32:50,516.516 INFO    ] No camera update needed
[2026-06-13 01:32:50,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:32:50,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:32:50,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:32:50,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:32:52,564.564 INFO    ] ================================================
[2026-06-13 01:32:52,580.580 INFO    ] Launching Daemon at Sat Jun 13 01:32:52 IST 2026
[2026-06-13 01:32:52,591.591 INFO    ] ================================================
[2026-06-13 01:32:52,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:32:52
[2026-06-13 01:32:53,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:32:53,401.401 INFO    ] Initializing speech engine...
[2026-06-13 01:32:53,406.406 INFO    ] 2026-06-13 01:32:53
[2026-06-13 01:32:53,618.618 INFO    ] 2026-06-13 01:32:53
[2026-06-13 01:32:53,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:32:53,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:32:53,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:32:53,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:32:54,027.027 INFO    ] time= 13/06/2026 01:32:53
[2026-06-13 01:32:54,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:32:54,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:32:54,144.144 INFO    ] No existing commands found in stream
[2026-06-13 01:32:59,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:32:59,162.162 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 01:33:01,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:33:01,323.323 INFO    ] Checking for system updates...
[2026-06-13 01:33:01,360.360 INFO    ] 200
[2026-06-13 01:33:01,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:01,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:01,455.455 INFO    ] No update needed
[2026-06-13 01:33:01,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 01:33:01,501.501 INFO    ] 200
[2026-06-13 01:33:01,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:01,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:33:01,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:01,594.594 INFO    ] No camera update needed
[2026-06-13 01:33:01,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:33:01,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:01,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:01,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:03,650.650 INFO    ] ================================================
[2026-06-13 01:33:03,665.665 INFO    ] Launching Daemon at Sat Jun 13 01:33:03 IST 2026
[2026-06-13 01:33:03,677.677 INFO    ] ================================================
[2026-06-13 01:33:04,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:04
[2026-06-13 01:33:04,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:04,557.557 INFO    ] Initializing speech engine...
[2026-06-13 01:33:04,563.563 INFO    ] 2026-06-13 01:33:04
[2026-06-13 01:33:04,830.830 INFO    ] 2026-06-13 01:33:04
[2026-06-13 01:33:04,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:05,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:33:05,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:33:05,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:33:05,263.263 INFO    ] time= 13/06/2026 01:33:05
[2026-06-13 01:33:05,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:33:05,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:33:05,515.515 INFO    ] No existing commands found in stream
[2026-06-13 01:33:10,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:33:10,549.549 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 01:33:12,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:33:12,705.705 INFO    ] Checking for system updates...
[2026-06-13 01:33:12,726.726 INFO    ] 200
[2026-06-13 01:33:12,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:12,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:12,762.762 INFO    ] No update needed
[2026-06-13 01:33:12,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 01:33:12,782.782 INFO    ] 200
[2026-06-13 01:33:12,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:12,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:33:12,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:12,854.854 INFO    ] No camera update needed
[2026-06-13 01:33:12,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:33:12,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:12,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:12,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:14,903.903 INFO    ] ================================================
[2026-06-13 01:33:14,918.918 INFO    ] Launching Daemon at Sat Jun 13 01:33:14 IST 2026
[2026-06-13 01:33:14,929.929 INFO    ] ================================================
[2026-06-13 01:33:15,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:15
[2026-06-13 01:33:15,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:15,765.765 INFO    ] Initializing speech engine...
[2026-06-13 01:33:15,771.771 INFO    ] 2026-06-13 01:33:15
[2026-06-13 01:33:15,984.984 INFO    ] 2026-06-13 01:33:15
[2026-06-13 01:33:16,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:16,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:33:16,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:33:16,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:33:16,390.390 INFO    ] time= 13/06/2026 01:33:16
[2026-06-13 01:33:16,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:33:16,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:33:16,509.509 INFO    ] No existing commands found in stream
[2026-06-13 01:33:21,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:33:21,521.521 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 01:33:23,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:33:23,792.792 INFO    ] Checking for system updates...
[2026-06-13 01:33:23,813.813 INFO    ] 200
[2026-06-13 01:33:23,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:23,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:33:23,850.850 INFO    ] No update needed
[2026-06-13 01:33:23,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 01:33:23,873.873 INFO    ] 200
[2026-06-13 01:33:23,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:23,898.898 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:33:23,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:23,936.936 INFO    ] No camera update needed
[2026-06-13 01:33:23,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:33:23,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:23,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:23,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:25,983.983 INFO    ] ================================================
[2026-06-13 01:33:26,998.998 INFO    ] Launching Daemon at Sat Jun 13 01:33:25 IST 2026
[2026-06-13 01:33:26,009.009 INFO    ] ================================================
[2026-06-13 01:33:26,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:26
[2026-06-13 01:33:26,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:26,917.917 INFO    ] Initializing speech engine...
[2026-06-13 01:33:26,925.925 INFO    ] 2026-06-13 01:33:26
[2026-06-13 01:33:27,231.231 INFO    ] 2026-06-13 01:33:27
[2026-06-13 01:33:27,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:27,982.982 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-06-13 01:33:28,226.226 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 01:33:28,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:28,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:28,341.341 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 01:33:28,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:30,444.444 INFO    ] ================================================
[2026-06-13 01:33:30,459.459 INFO    ] Launching Daemon at Sat Jun 13 01:33:30 IST 2026
[2026-06-13 01:33:30,470.470 INFO    ] ================================================
[2026-06-13 01:33:30,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:30
[2026-06-13 01:33:31,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:31,295.295 INFO    ] Initializing speech engine...
[2026-06-13 01:33:31,301.301 INFO    ] 2026-06-13 01:33:31
[2026-06-13 01:33:31,524.524 INFO    ] 2026-06-13 01:33:31
[2026-06-13 01:33:31,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:33:31,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:33:31,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:33:31,974.974 INFO    ] time= 13/06/2026 01:33:31
[2026-06-13 01:33:32,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:33:32,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:33:32,079.079 INFO    ] No existing commands found in stream
[2026-06-13 01:33:37,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:33:37,093.093 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 01:33:39,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:33:39,970.970 INFO    ] Checking for system updates...
[2026-06-13 01:33:39,991.991 INFO    ] 200
[2026-06-13 01:33:39,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:40,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:40,025.025 INFO    ] No update needed
[2026-06-13 01:33:40,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 01:33:40,047.047 INFO    ] 200
[2026-06-13 01:33:40,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:40,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:33:40,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:33:40,112.112 INFO    ] No camera update needed
[2026-06-13 01:33:40,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:33:40,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:40,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:40,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:42,160.160 INFO    ] ================================================
[2026-06-13 01:33:42,175.175 INFO    ] Launching Daemon at Sat Jun 13 01:33:42 IST 2026
[2026-06-13 01:33:42,185.185 INFO    ] ================================================
[2026-06-13 01:33:42,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:42
[2026-06-13 01:33:42,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:43,036.036 INFO    ] Initializing speech engine...
[2026-06-13 01:33:43,040.040 INFO    ] 2026-06-13 01:33:43
[2026-06-13 01:33:43,247.247 INFO    ] 2026-06-13 01:33:43
[2026-06-13 01:33:43,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:43,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:33:43,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:33:43,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:33:43,662.662 INFO    ] time= 13/06/2026 01:33:43
[2026-06-13 01:33:43,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:33:43,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:33:43,773.773 INFO    ] No existing commands found in stream
[2026-06-13 01:33:48,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:33:48,785.785 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 01:33:50,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:33:50,167.167 INFO    ] Checking for system updates...
[2026-06-13 01:33:50,189.189 INFO    ] 200
[2026-06-13 01:33:50,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:50,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:33:50,222.222 INFO    ] No update needed
[2026-06-13 01:33:50,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 01:33:50,243.243 INFO    ] 200
[2026-06-13 01:33:50,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:33:50,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:33:50,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:33:50,319.319 INFO    ] No camera update needed
[2026-06-13 01:33:50,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:33:50,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:33:50,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:33:50,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:33:52,366.366 INFO    ] ================================================
[2026-06-13 01:33:52,381.381 INFO    ] Launching Daemon at Sat Jun 13 01:33:52 IST 2026
[2026-06-13 01:33:52,392.392 INFO    ] ================================================
[2026-06-13 01:33:52,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:33:52
[2026-06-13 01:33:53,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:33:53,338.338 INFO    ] Initializing speech engine...
[2026-06-13 01:33:53,363.363 INFO    ] 2026-06-13 01:33:53
[2026-06-13 01:33:53,633.633 INFO    ] 2026-06-13 01:33:53
[2026-06-13 01:33:53,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:33:53,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:33:53,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:33:53,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:33:53,982.982 INFO    ] time= 13/06/2026 01:33:53
[2026-06-13 01:33:53,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:33:54,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:33:54,059.059 INFO    ] No existing commands found in stream
[2026-06-13 01:33:59,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:33:59,073.073 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 01:34:01,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:34:01,991.991 INFO    ] Checking for system updates...
[2026-06-13 01:34:02,027.027 INFO    ] 200
[2026-06-13 01:34:02,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:02,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:34:02,069.069 INFO    ] No update needed
[2026-06-13 01:34:02,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:02,096.096 INFO    ] 200
[2026-06-13 01:34:02,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:02,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:02,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:34:02,154.154 INFO    ] No camera update needed
[2026-06-13 01:34:02,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:02,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:02,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:02,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:04,205.205 INFO    ] ================================================
[2026-06-13 01:34:04,221.221 INFO    ] Launching Daemon at Sat Jun 13 01:34:04 IST 2026
[2026-06-13 01:34:04,233.233 INFO    ] ================================================
[2026-06-13 01:34:04,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:04
[2026-06-13 01:34:04,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:05,063.063 INFO    ] Initializing speech engine...
[2026-06-13 01:34:05,068.068 INFO    ] 2026-06-13 01:34:05
[2026-06-13 01:34:05,273.273 INFO    ] 2026-06-13 01:34:05
[2026-06-13 01:34:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:05,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:05,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:05,660.660 INFO    ] time= 13/06/2026 01:34:05
[2026-06-13 01:34:05,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:05,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:34:05,802.802 INFO    ] No existing commands found in stream
[2026-06-13 01:34:10,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:34:10,816.816 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 01:34:14,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:34:14,717.717 INFO    ] Checking for system updates...
[2026-06-13 01:34:14,738.738 INFO    ] 200
[2026-06-13 01:34:14,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:14,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:14,771.771 INFO    ] No update needed
[2026-06-13 01:34:14,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:14,793.793 INFO    ] 200
[2026-06-13 01:34:14,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:14,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:14,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:14,858.858 INFO    ] No camera update needed
[2026-06-13 01:34:14,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:14,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:14,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:14,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:16,907.907 INFO    ] ================================================
[2026-06-13 01:34:16,922.922 INFO    ] Launching Daemon at Sat Jun 13 01:34:16 IST 2026
[2026-06-13 01:34:16,934.934 INFO    ] ================================================
[2026-06-13 01:34:17,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:17
[2026-06-13 01:34:17,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:17,794.794 INFO    ] Initializing speech engine...
[2026-06-13 01:34:17,801.801 INFO    ] 2026-06-13 01:34:17
[2026-06-13 01:34:18,001.001 INFO    ] 2026-06-13 01:34:18
[2026-06-13 01:34:18,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:18,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:18,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:18,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:18,343.343 INFO    ] time= 13/06/2026 01:34:18
[2026-06-13 01:34:18,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:18,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:34:18,501.501 INFO    ] No existing commands found in stream
[2026-06-13 01:34:23,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:34:23,517.517 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 01:34:24,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:34:24,177.177 INFO    ] Checking for system updates...
[2026-06-13 01:34:24,198.198 INFO    ] 200
[2026-06-13 01:34:24,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:24,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:24,234.234 INFO    ] No update needed
[2026-06-13 01:34:24,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:24,254.254 INFO    ] 200
[2026-06-13 01:34:24,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:24,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:24,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:24,336.336 INFO    ] No camera update needed
[2026-06-13 01:34:24,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:24,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:24,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:24,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:26,386.386 INFO    ] ================================================
[2026-06-13 01:34:26,402.402 INFO    ] Launching Daemon at Sat Jun 13 01:34:26 IST 2026
[2026-06-13 01:34:26,413.413 INFO    ] ================================================
[2026-06-13 01:34:26,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:26
[2026-06-13 01:34:27,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:27,265.265 INFO    ] Initializing speech engine...
[2026-06-13 01:34:27,278.278 INFO    ] 2026-06-13 01:34:27
[2026-06-13 01:34:27,489.489 INFO    ] 2026-06-13 01:34:27
[2026-06-13 01:34:27,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:27,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:27,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:27,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:27,913.913 INFO    ] time= 13/06/2026 01:34:27
[2026-06-13 01:34:27,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:27,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:34:28,068.068 INFO    ] No existing commands found in stream
[2026-06-13 01:34:33,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:34:33,080.080 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 01:34:34,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:34:34,059.059 INFO    ] Checking for system updates...
[2026-06-13 01:34:34,114.114 INFO    ] 200
[2026-06-13 01:34:34,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:34,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:34:34,153.153 INFO    ] No update needed
[2026-06-13 01:34:34,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:34,177.177 INFO    ] 200
[2026-06-13 01:34:34,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:34,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:34,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:34,256.256 INFO    ] No camera update needed
[2026-06-13 01:34:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:34,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:34,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:34,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:36,317.317 INFO    ] ================================================
[2026-06-13 01:34:36,333.333 INFO    ] Launching Daemon at Sat Jun 13 01:34:36 IST 2026
[2026-06-13 01:34:36,344.344 INFO    ] ================================================
[2026-06-13 01:34:36,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:36
[2026-06-13 01:34:37,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:37,591.591 INFO    ] Initializing speech engine...
[2026-06-13 01:34:37,596.596 INFO    ] 2026-06-13 01:34:37
[2026-06-13 01:34:37,800.800 INFO    ] 2026-06-13 01:34:37
[2026-06-13 01:34:37,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:38,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:38,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:38,210.210 INFO    ] time= 13/06/2026 01:34:38
[2026-06-13 01:34:38,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:38,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:34:38,313.313 INFO    ] No existing commands found in stream
[2026-06-13 01:34:43,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:34:43,327.327 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 01:34:45,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:34:45,216.216 INFO    ] Checking for system updates...
[2026-06-13 01:34:45,238.238 INFO    ] 200
[2026-06-13 01:34:45,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:45,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:34:45,272.272 INFO    ] No update needed
[2026-06-13 01:34:45,273.273 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:45,293.293 INFO    ] 200
[2026-06-13 01:34:45,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:45,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:45,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:34:45,359.359 INFO    ] No camera update needed
[2026-06-13 01:34:45,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:45,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:45,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:45,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:47,407.407 INFO    ] ================================================
[2026-06-13 01:34:47,423.423 INFO    ] Launching Daemon at Sat Jun 13 01:34:47 IST 2026
[2026-06-13 01:34:47,435.435 INFO    ] ================================================
[2026-06-13 01:34:48,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:48
[2026-06-13 01:34:48,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:48,752.752 INFO    ] Initializing speech engine...
[2026-06-13 01:34:48,757.757 INFO    ] 2026-06-13 01:34:48
[2026-06-13 01:34:48,963.963 INFO    ] 2026-06-13 01:34:48
[2026-06-13 01:34:48,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:49,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:49,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:49,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:49,380.380 INFO    ] time= 13/06/2026 01:34:49
[2026-06-13 01:34:49,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:49,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:34:49,480.480 INFO    ] No existing commands found in stream
[2026-06-13 01:34:54,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:34:54,515.515 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 01:34:56,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:34:56,230.230 INFO    ] Checking for system updates...
[2026-06-13 01:34:56,251.251 INFO    ] 200
[2026-06-13 01:34:56,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:56,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:56,285.285 INFO    ] No update needed
[2026-06-13 01:34:56,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 01:34:56,307.307 INFO    ] 200
[2026-06-13 01:34:56,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:34:56,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:34:56,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:34:56,369.369 INFO    ] No camera update needed
[2026-06-13 01:34:56,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:34:56,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:34:56,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:34:56,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:34:58,417.417 INFO    ] ================================================
[2026-06-13 01:34:58,434.434 INFO    ] Launching Daemon at Sat Jun 13 01:34:58 IST 2026
[2026-06-13 01:34:58,445.445 INFO    ] ================================================
[2026-06-13 01:34:58,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:34:58
[2026-06-13 01:34:59,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:34:59,236.236 INFO    ] Initializing speech engine...
[2026-06-13 01:34:59,240.240 INFO    ] 2026-06-13 01:34:59
[2026-06-13 01:34:59,455.455 INFO    ] 2026-06-13 01:34:59
[2026-06-13 01:34:59,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:34:59,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:34:59,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:34:59,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:34:59,847.847 INFO    ] time= 13/06/2026 01:34:59
[2026-06-13 01:34:59,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:34:59,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:00,031.031 INFO    ] No existing commands found in stream
[2026-06-13 01:35:05,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:05,043.043 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 01:35:08,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:35:08,820.820 INFO    ] Checking for system updates...
[2026-06-13 01:35:08,851.851 INFO    ] 200
[2026-06-13 01:35:08,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:08,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:08,885.885 INFO    ] No update needed
[2026-06-13 01:35:08,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:08,907.907 INFO    ] 200
[2026-06-13 01:35:08,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:08,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:08,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:08,974.974 INFO    ] No camera update needed
[2026-06-13 01:35:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:08,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:08,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:35:11,021.021 INFO    ] ================================================
[2026-06-13 01:35:11,037.037 INFO    ] Launching Daemon at Sat Jun 13 01:35:11 IST 2026
[2026-06-13 01:35:11,048.048 INFO    ] ================================================
[2026-06-13 01:35:11,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:35:11
[2026-06-13 01:35:11,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:35:11,925.925 INFO    ] Initializing speech engine...
[2026-06-13 01:35:11,932.932 INFO    ] 2026-06-13 01:35:11
[2026-06-13 01:35:12,137.137 INFO    ] 2026-06-13 01:35:12
[2026-06-13 01:35:12,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:35:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:35:12,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:35:12,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:35:12,554.554 INFO    ] time= 13/06/2026 01:35:12
[2026-06-13 01:35:12,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:35:12,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:12,653.653 INFO    ] No existing commands found in stream
[2026-06-13 01:35:17,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:17,671.671 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 01:35:21,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:35:21,117.117 INFO    ] Checking for system updates...
[2026-06-13 01:35:21,139.139 INFO    ] 200
[2026-06-13 01:35:21,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:21,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:35:21,172.172 INFO    ] No update needed
[2026-06-13 01:35:21,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:21,193.193 INFO    ] 200
[2026-06-13 01:35:21,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:21,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:21,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:35:21,254.254 INFO    ] No camera update needed
[2026-06-13 01:35:21,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:21,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:21,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:21,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:35:23,303.303 INFO    ] ================================================
[2026-06-13 01:35:23,318.318 INFO    ] Launching Daemon at Sat Jun 13 01:35:23 IST 2026
[2026-06-13 01:35:23,329.329 INFO    ] ================================================
[2026-06-13 01:35:23,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:35:23
[2026-06-13 01:35:24,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:35:24,160.160 INFO    ] Initializing speech engine...
[2026-06-13 01:35:24,173.173 INFO    ] 2026-06-13 01:35:24
[2026-06-13 01:35:24,382.382 INFO    ] 2026-06-13 01:35:24
[2026-06-13 01:35:24,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:35:24,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:35:24,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:35:24,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:35:24,778.778 INFO    ] time= 13/06/2026 01:35:24
[2026-06-13 01:35:24,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:35:24,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:25,008.008 INFO    ] No existing commands found in stream
[2026-06-13 01:35:30,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:30,026.026 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 01:35:30,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:35:30,726.726 INFO    ] Checking for system updates...
[2026-06-13 01:35:30,746.746 INFO    ] 200
[2026-06-13 01:35:30,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:30,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:35:30,782.782 INFO    ] No update needed
[2026-06-13 01:35:30,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:30,804.804 INFO    ] 200
[2026-06-13 01:35:30,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:30,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:30,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:30,877.877 INFO    ] No camera update needed
[2026-06-13 01:35:30,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:30,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:30,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:30,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:35:32,925.925 INFO    ] ================================================
[2026-06-13 01:35:32,940.940 INFO    ] Launching Daemon at Sat Jun 13 01:35:32 IST 2026
[2026-06-13 01:35:32,952.952 INFO    ] ================================================
[2026-06-13 01:35:33,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:35:33
[2026-06-13 01:35:33,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:35:33,776.776 INFO    ] Initializing speech engine...
[2026-06-13 01:35:33,781.781 INFO    ] 2026-06-13 01:35:33
[2026-06-13 01:35:33,985.985 INFO    ] 2026-06-13 01:35:33
[2026-06-13 01:35:34,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:35:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:35:34,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:35:34,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:35:34,266.266 INFO    ] time= 13/06/2026 01:35:34
[2026-06-13 01:35:34,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:35:34,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:34,357.357 INFO    ] No existing commands found in stream
[2026-06-13 01:35:39,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:39,385.385 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 01:35:40,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:35:40,239.239 INFO    ] Checking for system updates...
[2026-06-13 01:35:40,260.260 INFO    ] 200
[2026-06-13 01:35:40,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:40,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:40,293.293 INFO    ] No update needed
[2026-06-13 01:35:40,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:40,314.314 INFO    ] 200
[2026-06-13 01:35:40,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:40,341.341 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:40,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:40,381.381 INFO    ] No camera update needed
[2026-06-13 01:35:40,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:40,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:40,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:40,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:35:42,428.428 INFO    ] ================================================
[2026-06-13 01:35:42,444.444 INFO    ] Launching Daemon at Sat Jun 13 01:35:42 IST 2026
[2026-06-13 01:35:42,455.455 INFO    ] ================================================
[2026-06-13 01:35:42,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:35:42
[2026-06-13 01:35:43,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:35:43,226.226 INFO    ] Initializing speech engine...
[2026-06-13 01:35:43,230.230 INFO    ] 2026-06-13 01:35:43
[2026-06-13 01:35:43,450.450 INFO    ] 2026-06-13 01:35:43
[2026-06-13 01:35:43,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:35:43,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:35:43,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:35:43,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:35:43,870.870 INFO    ] time= 13/06/2026 01:35:43
[2026-06-13 01:35:43,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:35:43,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:43,972.972 INFO    ] No existing commands found in stream
[2026-06-13 01:35:49,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:49,005.005 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 01:35:49,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:35:49,670.670 INFO    ] Checking for system updates...
[2026-06-13 01:35:49,690.690 INFO    ] 200
[2026-06-13 01:35:49,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:49,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:49,730.730 INFO    ] No update needed
[2026-06-13 01:35:49,732.732 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:49,753.753 INFO    ] 200
[2026-06-13 01:35:49,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:49,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:49,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:49,813.813 INFO    ] No camera update needed
[2026-06-13 01:35:49,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:49,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:49,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:49,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:35:51,856.856 INFO    ] ================================================
[2026-06-13 01:35:51,873.873 INFO    ] Launching Daemon at Sat Jun 13 01:35:51 IST 2026
[2026-06-13 01:35:51,888.888 INFO    ] ================================================
[2026-06-13 01:35:52,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:35:52
[2026-06-13 01:35:52,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:35:52,655.655 INFO    ] Initializing speech engine...
[2026-06-13 01:35:52,660.660 INFO    ] 2026-06-13 01:35:52
[2026-06-13 01:35:52,882.882 INFO    ] 2026-06-13 01:35:52
[2026-06-13 01:35:52,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:35:53,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:35:53,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:35:53,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:35:53,305.305 INFO    ] time= 13/06/2026 01:35:53
[2026-06-13 01:35:53,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:35:53,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:35:53,432.432 INFO    ] No existing commands found in stream
[2026-06-13 01:35:58,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:35:58,455.455 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 01:35:59,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:35:59,168.168 INFO    ] Checking for system updates...
[2026-06-13 01:35:59,190.190 INFO    ] 200
[2026-06-13 01:35:59,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:59,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:59,223.223 INFO    ] No update needed
[2026-06-13 01:35:59,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 01:35:59,244.244 INFO    ] 200
[2026-06-13 01:35:59,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:35:59,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:35:59,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:35:59,310.310 INFO    ] No camera update needed
[2026-06-13 01:35:59,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:35:59,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:35:59,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:35:59,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:36:01,358.358 INFO    ] ================================================
[2026-06-13 01:36:01,374.374 INFO    ] Launching Daemon at Sat Jun 13 01:36:01 IST 2026
[2026-06-13 01:36:01,385.385 INFO    ] ================================================
[2026-06-13 01:36:01,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:36:01
[2026-06-13 01:36:02,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:36:02,384.384 INFO    ] Initializing speech engine...
[2026-06-13 01:36:02,399.399 INFO    ] 2026-06-13 01:36:02
[2026-06-13 01:36:02,587.587 INFO    ] 2026-06-13 01:36:02
[2026-06-13 01:36:02,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:36:02,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:36:02,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:36:02,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:36:02,857.857 INFO    ] time= 13/06/2026 01:36:02
[2026-06-13 01:36:02,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:36:02,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:36:02,944.944 INFO    ] No existing commands found in stream
[2026-06-13 01:36:07,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:36:07,982.982 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 01:36:12,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:36:12,176.176 INFO    ] Checking for system updates...
[2026-06-13 01:36:12,196.196 INFO    ] 200
[2026-06-13 01:36:12,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:12,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:36:12,230.230 INFO    ] No update needed
[2026-06-13 01:36:12,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 01:36:12,252.252 INFO    ] 200
[2026-06-13 01:36:12,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:12,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:36:12,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:12,312.312 INFO    ] No camera update needed
[2026-06-13 01:36:12,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:36:12,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:36:12,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:36:12,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:36:14,361.361 INFO    ] ================================================
[2026-06-13 01:36:14,377.377 INFO    ] Launching Daemon at Sat Jun 13 01:36:14 IST 2026
[2026-06-13 01:36:14,387.387 INFO    ] ================================================
[2026-06-13 01:36:14,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:36:14
[2026-06-13 01:36:15,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:36:15,264.264 INFO    ] Initializing speech engine...
[2026-06-13 01:36:15,277.277 INFO    ] 2026-06-13 01:36:15
[2026-06-13 01:36:15,533.533 INFO    ] 2026-06-13 01:36:15
[2026-06-13 01:36:15,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:36:15,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:36:15,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:36:15,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:36:15,890.890 INFO    ] time= 13/06/2026 01:36:15
[2026-06-13 01:36:15,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:36:15,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:36:15,985.985 INFO    ] No existing commands found in stream
[2026-06-13 01:36:20,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:36:21,000.000 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 01:36:23,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:36:23,160.160 INFO    ] Checking for system updates...
[2026-06-13 01:36:23,181.181 INFO    ] 200
[2026-06-13 01:36:23,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:23,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:23,214.214 INFO    ] No update needed
[2026-06-13 01:36:23,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 01:36:23,235.235 INFO    ] 200
[2026-06-13 01:36:23,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:23,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:36:23,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:23,300.300 INFO    ] No camera update needed
[2026-06-13 01:36:23,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:36:23,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:36:23,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:36:23,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:36:25,350.350 INFO    ] ================================================
[2026-06-13 01:36:25,366.366 INFO    ] Launching Daemon at Sat Jun 13 01:36:25 IST 2026
[2026-06-13 01:36:25,377.377 INFO    ] ================================================
[2026-06-13 01:36:25,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:36:25
[2026-06-13 01:36:26,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:36:26,244.244 INFO    ] Initializing speech engine...
[2026-06-13 01:36:26,249.249 INFO    ] 2026-06-13 01:36:26
[2026-06-13 01:36:26,456.456 INFO    ] 2026-06-13 01:36:26
[2026-06-13 01:36:26,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:36:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:36:26,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:36:26,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:36:26,871.871 INFO    ] time= 13/06/2026 01:36:26
[2026-06-13 01:36:26,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:36:26,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:36:26,975.975 INFO    ] No existing commands found in stream
[2026-06-13 01:36:31,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:36:31,987.987 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 01:36:34,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:36:34,879.879 INFO    ] Checking for system updates...
[2026-06-13 01:36:34,900.900 INFO    ] 200
[2026-06-13 01:36:34,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:34,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:34,934.934 INFO    ] No update needed
[2026-06-13 01:36:34,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 01:36:34,956.956 INFO    ] 200
[2026-06-13 01:36:34,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:34,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:36:35,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:35,127.127 INFO    ] No camera update needed
[2026-06-13 01:36:35,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:36:35,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:36:35,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:36:35,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:36:37,173.173 INFO    ] ================================================
[2026-06-13 01:36:37,189.189 INFO    ] Launching Daemon at Sat Jun 13 01:36:37 IST 2026
[2026-06-13 01:36:37,200.200 INFO    ] ================================================
[2026-06-13 01:36:37,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:36:37
[2026-06-13 01:36:38,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:36:38,472.472 INFO    ] Initializing speech engine...
[2026-06-13 01:36:38,488.488 INFO    ] 2026-06-13 01:36:38
[2026-06-13 01:36:38,757.757 INFO    ] 2026-06-13 01:36:38
[2026-06-13 01:36:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:36:38,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:36:38,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:36:39,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:36:39,118.118 INFO    ] time= 13/06/2026 01:36:39
[2026-06-13 01:36:39,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:36:39,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:36:39,216.216 INFO    ] No existing commands found in stream
[2026-06-13 01:36:44,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:36:44,232.232 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 01:36:46,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:36:46,544.544 INFO    ] Checking for system updates...
[2026-06-13 01:36:46,565.565 INFO    ] 200
[2026-06-13 01:36:46,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:46,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:46,602.602 INFO    ] No update needed
[2026-06-13 01:36:46,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 01:36:46,624.624 INFO    ] 200
[2026-06-13 01:36:46,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:46,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:36:46,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:36:46,699.699 INFO    ] No camera update needed
[2026-06-13 01:36:46,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:36:46,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:36:46,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:36:46,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:36:48,746.746 INFO    ] ================================================
[2026-06-13 01:36:48,762.762 INFO    ] Launching Daemon at Sat Jun 13 01:36:48 IST 2026
[2026-06-13 01:36:48,773.773 INFO    ] ================================================
[2026-06-13 01:36:49,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:36:49
[2026-06-13 01:36:49,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:36:49,590.590 INFO    ] Initializing speech engine...
[2026-06-13 01:36:49,595.595 INFO    ] 2026-06-13 01:36:49
[2026-06-13 01:36:49,800.800 INFO    ] 2026-06-13 01:36:49
[2026-06-13 01:36:49,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:36:50,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:36:50,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:36:50,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:36:50,205.205 INFO    ] time= 13/06/2026 01:36:50
[2026-06-13 01:36:50,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:36:50,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:36:50,321.321 INFO    ] No existing commands found in stream
[2026-06-13 01:36:55,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:36:55,353.353 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 01:36:58,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:36:58,311.311 INFO    ] Checking for system updates...
[2026-06-13 01:36:58,333.333 INFO    ] 200
[2026-06-13 01:36:58,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:58,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:36:58,366.366 INFO    ] No update needed
[2026-06-13 01:36:58,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 01:36:58,390.390 INFO    ] 200
[2026-06-13 01:36:58,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:36:58,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:36:58,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:36:58,454.454 INFO    ] No camera update needed
[2026-06-13 01:36:58,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:36:58,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:36:58,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:36:58,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:00,502.502 INFO    ] ================================================
[2026-06-13 01:37:00,517.517 INFO    ] Launching Daemon at Sat Jun 13 01:37:00 IST 2026
[2026-06-13 01:37:00,528.528 INFO    ] ================================================
[2026-06-13 01:37:00,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:00
[2026-06-13 01:37:01,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:01,369.369 INFO    ] Initializing speech engine...
[2026-06-13 01:37:01,375.375 INFO    ] 2026-06-13 01:37:01
[2026-06-13 01:37:01,582.582 INFO    ] 2026-06-13 01:37:01
[2026-06-13 01:37:01,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:01,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:01,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:01,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:01,860.860 INFO    ] time= 13/06/2026 01:37:01
[2026-06-13 01:37:01,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:01,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:01,904.904 INFO    ] No existing commands found in stream
[2026-06-13 01:37:06,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:37:06,916.916 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 01:37:09,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:37:09,375.375 INFO    ] Checking for system updates...
[2026-06-13 01:37:09,396.396 INFO    ] 200
[2026-06-13 01:37:09,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:09,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:37:09,432.432 INFO    ] No update needed
[2026-06-13 01:37:09,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 01:37:09,454.454 INFO    ] 200
[2026-06-13 01:37:09,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:09,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:37:09,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:37:09,518.518 INFO    ] No camera update needed
[2026-06-13 01:37:09,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:37:09,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:37:09,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:37:09,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:11,568.568 INFO    ] ================================================
[2026-06-13 01:37:11,584.584 INFO    ] Launching Daemon at Sat Jun 13 01:37:11 IST 2026
[2026-06-13 01:37:11,595.595 INFO    ] ================================================
[2026-06-13 01:37:11,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:11
[2026-06-13 01:37:12,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:12,405.405 INFO    ] Initializing speech engine...
[2026-06-13 01:37:12,410.410 INFO    ] 2026-06-13 01:37:12
[2026-06-13 01:37:12,613.613 INFO    ] 2026-06-13 01:37:12
[2026-06-13 01:37:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:12,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:12,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:12,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:13,017.017 INFO    ] time= 13/06/2026 01:37:12
[2026-06-13 01:37:13,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:13,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:13,126.126 INFO    ] No existing commands found in stream
[2026-06-13 01:37:18,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:37:18,138.138 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 01:37:21,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:37:21,105.105 INFO    ] Checking for system updates...
[2026-06-13 01:37:21,127.127 INFO    ] 200
[2026-06-13 01:37:21,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:21,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:37:21,163.163 INFO    ] No update needed
[2026-06-13 01:37:21,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 01:37:21,185.185 INFO    ] 200
[2026-06-13 01:37:21,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:21,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:37:21,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:37:21,259.259 INFO    ] No camera update needed
[2026-06-13 01:37:21,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:37:21,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:37:21,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:37:21,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:23,305.305 INFO    ] ================================================
[2026-06-13 01:37:23,321.321 INFO    ] Launching Daemon at Sat Jun 13 01:37:23 IST 2026
[2026-06-13 01:37:23,332.332 INFO    ] ================================================
[2026-06-13 01:37:23,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:23
[2026-06-13 01:37:24,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:24,143.143 INFO    ] Initializing speech engine...
[2026-06-13 01:37:24,147.147 INFO    ] 2026-06-13 01:37:24
[2026-06-13 01:37:24,378.378 INFO    ] 2026-06-13 01:37:24
[2026-06-13 01:37:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:24,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:24,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:24,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:24,796.796 INFO    ] time= 13/06/2026 01:37:24
[2026-06-13 01:37:24,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:24,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:24,909.909 INFO    ] No existing commands found in stream
[2026-06-13 01:37:29,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:37:29,922.922 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 01:37:32,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:37:32,086.086 INFO    ] Checking for system updates...
[2026-06-13 01:37:32,108.108 INFO    ] 200
[2026-06-13 01:37:32,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:32,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:37:32,150.150 INFO    ] No update needed
[2026-06-13 01:37:32,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 01:37:32,178.178 INFO    ] 200
[2026-06-13 01:37:32,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:32,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:37:32,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:37:32,238.238 INFO    ] No camera update needed
[2026-06-13 01:37:32,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:37:32,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:37:32,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:37:32,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:34,280.280 INFO    ] ================================================
[2026-06-13 01:37:34,296.296 INFO    ] Launching Daemon at Sat Jun 13 01:37:34 IST 2026
[2026-06-13 01:37:34,307.307 INFO    ] ================================================
[2026-06-13 01:37:34,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:34
[2026-06-13 01:37:34,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:35,106.106 INFO    ] Initializing speech engine...
[2026-06-13 01:37:35,112.112 INFO    ] 2026-06-13 01:37:35
[2026-06-13 01:37:35,318.318 INFO    ] 2026-06-13 01:37:35
[2026-06-13 01:37:35,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:35,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:35,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:35,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:35,729.729 INFO    ] time= 13/06/2026 01:37:35
[2026-06-13 01:37:35,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:35,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:35,835.835 INFO    ] No existing commands found in stream
[2026-06-13 01:37:40,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:37:40,852.852 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 01:37:44,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:37:44,517.517 INFO    ] Checking for system updates...
[2026-06-13 01:37:44,545.545 INFO    ] 200
[2026-06-13 01:37:44,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:44,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:37:44,584.584 INFO    ] No update needed
[2026-06-13 01:37:44,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 01:37:44,609.609 INFO    ] 200
[2026-06-13 01:37:44,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:44,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:37:44,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:37:44,675.675 INFO    ] No camera update needed
[2026-06-13 01:37:44,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:37:44,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:37:44,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:37:44,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:46,724.724 INFO    ] ================================================
[2026-06-13 01:37:46,741.741 INFO    ] Launching Daemon at Sat Jun 13 01:37:46 IST 2026
[2026-06-13 01:37:46,753.753 INFO    ] ================================================
[2026-06-13 01:37:47,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:47
[2026-06-13 01:37:47,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:47,559.559 INFO    ] Initializing speech engine...
[2026-06-13 01:37:47,569.569 INFO    ] 2026-06-13 01:37:47
[2026-06-13 01:37:47,777.777 INFO    ] 2026-06-13 01:37:47
[2026-06-13 01:37:47,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:47,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:47,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:48,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:48,196.196 INFO    ] time= 13/06/2026 01:37:48
[2026-06-13 01:37:48,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:48,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:48,296.296 INFO    ] No existing commands found in stream
[2026-06-13 01:37:53,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:37:53,310.310 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 01:37:55,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:37:55,001.001 INFO    ] Checking for system updates...
[2026-06-13 01:37:55,023.023 INFO    ] 200
[2026-06-13 01:37:55,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:55,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:37:55,059.059 INFO    ] No update needed
[2026-06-13 01:37:55,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 01:37:55,080.080 INFO    ] 200
[2026-06-13 01:37:55,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:37:55,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:37:55,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:37:55,155.155 INFO    ] No camera update needed
[2026-06-13 01:37:55,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:37:55,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:37:55,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:37:55,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:37:57,202.202 INFO    ] ================================================
[2026-06-13 01:37:57,219.219 INFO    ] Launching Daemon at Sat Jun 13 01:37:57 IST 2026
[2026-06-13 01:37:57,231.231 INFO    ] ================================================
[2026-06-13 01:37:57,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:37:57
[2026-06-13 01:37:57,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:37:58,021.021 INFO    ] Initializing speech engine...
[2026-06-13 01:37:58,029.029 INFO    ] 2026-06-13 01:37:58
[2026-06-13 01:37:58,255.255 INFO    ] 2026-06-13 01:37:58
[2026-06-13 01:37:58,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:37:58,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:37:58,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:37:58,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:37:58,685.685 INFO    ] time= 13/06/2026 01:37:58
[2026-06-13 01:37:58,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:37:58,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:37:58,795.795 INFO    ] No existing commands found in stream
[2026-06-13 01:38:03,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:38:03,809.809 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 01:38:07,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:38:07,119.119 INFO    ] Checking for system updates...
[2026-06-13 01:38:07,140.140 INFO    ] 200
[2026-06-13 01:38:07,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:07,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:07,175.175 INFO    ] No update needed
[2026-06-13 01:38:07,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 01:38:07,196.196 INFO    ] 200
[2026-06-13 01:38:07,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:07,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:38:07,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:07,259.259 INFO    ] No camera update needed
[2026-06-13 01:38:07,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:38:07,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:38:07,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:38:07,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:38:09,308.308 INFO    ] ================================================
[2026-06-13 01:38:09,327.327 INFO    ] Launching Daemon at Sat Jun 13 01:38:09 IST 2026
[2026-06-13 01:38:09,338.338 INFO    ] ================================================
[2026-06-13 01:38:09,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:38:09
[2026-06-13 01:38:10,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:38:10,207.207 INFO    ] Initializing speech engine...
[2026-06-13 01:38:10,210.210 INFO    ] 2026-06-13 01:38:10
[2026-06-13 01:38:10,415.415 INFO    ] 2026-06-13 01:38:10
[2026-06-13 01:38:10,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:38:10,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:38:10,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:38:10,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:38:10,819.819 INFO    ] time= 13/06/2026 01:38:10
[2026-06-13 01:38:10,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:38:10,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:38:10,936.936 INFO    ] No existing commands found in stream
[2026-06-13 01:38:15,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:38:15,947.947 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 01:38:17,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:38:17,038.038 INFO    ] Checking for system updates...
[2026-06-13 01:38:17,061.061 INFO    ] 200
[2026-06-13 01:38:17,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:17,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:17,097.097 INFO    ] No update needed
[2026-06-13 01:38:17,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 01:38:17,121.121 INFO    ] 200
[2026-06-13 01:38:17,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:17,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:38:17,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:17,211.211 INFO    ] No camera update needed
[2026-06-13 01:38:17,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:38:17,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:38:17,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:38:17,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:38:19,260.260 INFO    ] ================================================
[2026-06-13 01:38:19,275.275 INFO    ] Launching Daemon at Sat Jun 13 01:38:19 IST 2026
[2026-06-13 01:38:19,286.286 INFO    ] ================================================
[2026-06-13 01:38:19,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:38:19
[2026-06-13 01:38:20,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:38:20,184.184 INFO    ] Initializing speech engine...
[2026-06-13 01:38:20,192.192 INFO    ] 2026-06-13 01:38:20
[2026-06-13 01:38:20,397.397 INFO    ] 2026-06-13 01:38:20
[2026-06-13 01:38:20,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:38:20,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:38:20,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:38:20,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:38:20,820.820 INFO    ] time= 13/06/2026 01:38:20
[2026-06-13 01:38:20,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:38:20,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:38:20,923.923 INFO    ] No existing commands found in stream
[2026-06-13 01:38:25,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:38:25,942.942 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 01:38:28,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:38:28,581.581 INFO    ] Checking for system updates...
[2026-06-13 01:38:28,603.603 INFO    ] 200
[2026-06-13 01:38:28,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:28,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:38:28,637.637 INFO    ] No update needed
[2026-06-13 01:38:28,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 01:38:28,660.660 INFO    ] 200
[2026-06-13 01:38:28,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:28,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:38:28,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:38:28,734.734 INFO    ] No camera update needed
[2026-06-13 01:38:28,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:38:28,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:38:28,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:38:28,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:38:30,783.783 INFO    ] ================================================
[2026-06-13 01:38:30,799.799 INFO    ] Launching Daemon at Sat Jun 13 01:38:30 IST 2026
[2026-06-13 01:38:30,810.810 INFO    ] ================================================
[2026-06-13 01:38:31,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:38:31
[2026-06-13 01:38:31,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:38:31,625.625 INFO    ] Initializing speech engine...
[2026-06-13 01:38:31,630.630 INFO    ] 2026-06-13 01:38:31
[2026-06-13 01:38:31,836.836 INFO    ] 2026-06-13 01:38:31
[2026-06-13 01:38:31,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:38:32,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:38:32,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:38:32,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:38:32,277.277 INFO    ] time= 13/06/2026 01:38:32
[2026-06-13 01:38:32,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:38:32,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:38:32,386.386 INFO    ] No existing commands found in stream
[2026-06-13 01:38:37,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:38:37,398.398 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 01:38:39,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:38:39,730.730 INFO    ] Checking for system updates...
[2026-06-13 01:38:39,761.761 INFO    ] 200
[2026-06-13 01:38:39,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:39,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:38:39,796.796 INFO    ] No update needed
[2026-06-13 01:38:39,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 01:38:39,819.819 INFO    ] 200
[2026-06-13 01:38:39,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:39,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:38:39,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:39,983.983 INFO    ] No camera update needed
[2026-06-13 01:38:39,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:38:39,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:38:39,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:38:39,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:38:42,033.033 INFO    ] ================================================
[2026-06-13 01:38:42,049.049 INFO    ] Launching Daemon at Sat Jun 13 01:38:42 IST 2026
[2026-06-13 01:38:42,060.060 INFO    ] ================================================
[2026-06-13 01:38:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:38:42
[2026-06-13 01:38:42,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:38:42,909.909 INFO    ] Initializing speech engine...
[2026-06-13 01:38:42,914.914 INFO    ] 2026-06-13 01:38:42
[2026-06-13 01:38:43,123.123 INFO    ] 2026-06-13 01:38:43
[2026-06-13 01:38:43,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:38:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:38:43,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:38:43,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:38:43,548.548 INFO    ] time= 13/06/2026 01:38:43
[2026-06-13 01:38:43,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:38:43,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:38:43,646.646 INFO    ] No existing commands found in stream
[2026-06-13 01:38:48,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:38:48,664.664 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 01:38:52,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:38:52,390.390 INFO    ] Checking for system updates...
[2026-06-13 01:38:52,412.412 INFO    ] 200
[2026-06-13 01:38:52,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:52,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:52,448.448 INFO    ] No update needed
[2026-06-13 01:38:52,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 01:38:52,473.473 INFO    ] 200
[2026-06-13 01:38:52,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:38:52,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:38:52,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:38:52,539.539 INFO    ] No camera update needed
[2026-06-13 01:38:52,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:38:52,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:38:52,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:38:52,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:38:54,590.590 INFO    ] ================================================
[2026-06-13 01:38:54,606.606 INFO    ] Launching Daemon at Sat Jun 13 01:38:54 IST 2026
[2026-06-13 01:38:54,617.617 INFO    ] ================================================
[2026-06-13 01:38:54,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:38:54
[2026-06-13 01:38:55,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:38:55,433.433 INFO    ] Initializing speech engine...
[2026-06-13 01:38:55,447.447 INFO    ] 2026-06-13 01:38:55
[2026-06-13 01:38:55,669.669 INFO    ] 2026-06-13 01:38:55
[2026-06-13 01:38:55,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:38:55,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:38:55,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:38:56,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:38:56,087.087 INFO    ] time= 13/06/2026 01:38:56
[2026-06-13 01:38:56,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:38:56,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:38:56,232.232 INFO    ] No existing commands found in stream
[2026-06-13 01:39:01,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:39:01,245.245 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 01:39:03,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:39:03,126.126 INFO    ] Checking for system updates...
[2026-06-13 01:39:03,146.146 INFO    ] 200
[2026-06-13 01:39:03,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:03,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:03,180.180 INFO    ] No update needed
[2026-06-13 01:39:03,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 01:39:03,202.202 INFO    ] 200
[2026-06-13 01:39:03,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:03,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:39:03,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:03,267.267 INFO    ] No camera update needed
[2026-06-13 01:39:03,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:39:03,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:39:03,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:39:03,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:39:05,315.315 INFO    ] ================================================
[2026-06-13 01:39:05,330.330 INFO    ] Launching Daemon at Sat Jun 13 01:39:05 IST 2026
[2026-06-13 01:39:05,341.341 INFO    ] ================================================
[2026-06-13 01:39:05,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:39:05
[2026-06-13 01:39:06,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:39:06,155.155 INFO    ] Initializing speech engine...
[2026-06-13 01:39:06,164.164 INFO    ] 2026-06-13 01:39:06
[2026-06-13 01:39:06,389.389 INFO    ] 2026-06-13 01:39:06
[2026-06-13 01:39:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:39:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:39:06,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:39:06,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:39:06,820.820 INFO    ] time= 13/06/2026 01:39:06
[2026-06-13 01:39:06,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:39:06,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:39:06,949.949 INFO    ] No existing commands found in stream
[2026-06-13 01:39:11,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:39:11,961.961 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 01:39:15,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:39:15,941.941 INFO    ] Checking for system updates...
[2026-06-13 01:39:15,962.962 INFO    ] 200
[2026-06-13 01:39:15,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:15,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:39:15,994.994 INFO    ] No update needed
[2026-06-13 01:39:15,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 01:39:16,016.016 INFO    ] 200
[2026-06-13 01:39:16,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:16,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:39:16,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:39:16,076.076 INFO    ] No camera update needed
[2026-06-13 01:39:16,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:39:16,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:39:16,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:39:16,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:39:18,122.122 INFO    ] ================================================
[2026-06-13 01:39:18,137.137 INFO    ] Launching Daemon at Sat Jun 13 01:39:18 IST 2026
[2026-06-13 01:39:18,148.148 INFO    ] ================================================
[2026-06-13 01:39:18,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:39:18
[2026-06-13 01:39:18,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:39:18,941.941 INFO    ] Initializing speech engine...
[2026-06-13 01:39:18,946.946 INFO    ] 2026-06-13 01:39:18
[2026-06-13 01:39:19,152.152 INFO    ] 2026-06-13 01:39:19
[2026-06-13 01:39:19,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:39:19,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:39:19,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:39:19,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:39:19,551.551 INFO    ] time= 13/06/2026 01:39:19
[2026-06-13 01:39:19,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:39:19,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:39:19,673.673 INFO    ] No existing commands found in stream
[2026-06-13 01:39:24,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:39:24,684.684 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 01:39:28,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:39:28,764.764 INFO    ] Checking for system updates...
[2026-06-13 01:39:28,786.786 INFO    ] 200
[2026-06-13 01:39:28,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:28,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:28,819.819 INFO    ] No update needed
[2026-06-13 01:39:28,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 01:39:28,840.840 INFO    ] 200
[2026-06-13 01:39:28,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:28,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:39:28,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:28,914.914 INFO    ] No camera update needed
[2026-06-13 01:39:28,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:39:28,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:39:28,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:39:28,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:39:30,962.962 INFO    ] ================================================
[2026-06-13 01:39:30,977.977 INFO    ] Launching Daemon at Sat Jun 13 01:39:30 IST 2026
[2026-06-13 01:39:30,988.988 INFO    ] ================================================
[2026-06-13 01:39:31,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:39:31
[2026-06-13 01:39:31,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:39:32,050.050 INFO    ] Initializing speech engine...
[2026-06-13 01:39:32,058.058 INFO    ] 2026-06-13 01:39:32
[2026-06-13 01:39:32,361.361 INFO    ] 2026-06-13 01:39:32
[2026-06-13 01:39:32,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:39:32,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:39:32,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:39:32,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:39:32,811.811 INFO    ] time= 13/06/2026 01:39:32
[2026-06-13 01:39:32,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:39:32,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:39:33,094.094 INFO    ] No existing commands found in stream
[2026-06-13 01:39:38,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:39:38,120.120 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 01:39:41,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:39:41,741.741 INFO    ] Checking for system updates...
[2026-06-13 01:39:41,762.762 INFO    ] 200
[2026-06-13 01:39:41,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:41,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:41,795.795 INFO    ] No update needed
[2026-06-13 01:39:41,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 01:39:41,817.817 INFO    ] 200
[2026-06-13 01:39:41,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:41,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:39:41,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:39:41,880.880 INFO    ] No camera update needed
[2026-06-13 01:39:41,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:39:41,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:39:41,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:39:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:39:43,927.927 INFO    ] ================================================
[2026-06-13 01:39:43,943.943 INFO    ] Launching Daemon at Sat Jun 13 01:39:43 IST 2026
[2026-06-13 01:39:43,955.955 INFO    ] ================================================
[2026-06-13 01:39:44,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:39:44
[2026-06-13 01:39:44,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:39:44,807.807 INFO    ] Initializing speech engine...
[2026-06-13 01:39:44,813.813 INFO    ] 2026-06-13 01:39:44
[2026-06-13 01:39:45,022.022 INFO    ] 2026-06-13 01:39:45
[2026-06-13 01:39:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:39:45,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:39:45,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:39:45,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:39:45,425.425 INFO    ] time= 13/06/2026 01:39:45
[2026-06-13 01:39:45,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:39:45,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:39:45,540.540 INFO    ] No existing commands found in stream
[2026-06-13 01:39:50,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:39:50,575.575 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 01:39:51,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:39:51,609.609 INFO    ] Checking for system updates...
[2026-06-13 01:39:51,630.630 INFO    ] 200
[2026-06-13 01:39:51,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:51,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:39:51,663.663 INFO    ] No update needed
[2026-06-13 01:39:51,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 01:39:51,683.683 INFO    ] 200
[2026-06-13 01:39:51,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:39:51,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:39:51,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:39:51,751.751 INFO    ] No camera update needed
[2026-06-13 01:39:51,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:39:51,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:39:51,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:39:51,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:39:53,798.798 INFO    ] ================================================
[2026-06-13 01:39:53,813.813 INFO    ] Launching Daemon at Sat Jun 13 01:39:53 IST 2026
[2026-06-13 01:39:53,824.824 INFO    ] ================================================
[2026-06-13 01:39:54,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:39:54
[2026-06-13 01:39:54,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:39:55,146.146 INFO    ] Initializing speech engine...
[2026-06-13 01:39:55,153.153 INFO    ] 2026-06-13 01:39:55
[2026-06-13 01:39:55,412.412 INFO    ] 2026-06-13 01:39:55
[2026-06-13 01:39:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:39:55,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:39:55,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:39:55,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:39:55,847.847 INFO    ] time= 13/06/2026 01:39:55
[2026-06-13 01:39:55,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:39:55,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:39:56,025.025 INFO    ] No existing commands found in stream
[2026-06-13 01:40:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:40:01,042.042 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 01:40:08,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:40:08,454.454 INFO    ] Checking for system updates...
[2026-06-13 01:40:08,491.491 INFO    ] 200
[2026-06-13 01:40:08,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:08,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:08,551.551 INFO    ] No update needed
[2026-06-13 01:40:08,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 01:40:08,589.589 INFO    ] 200
[2026-06-13 01:40:08,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:08,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:40:08,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:08,684.684 INFO    ] No camera update needed
[2026-06-13 01:40:08,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:40:08,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:40:08,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:40:08,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:40:10,731.731 INFO    ] ================================================
[2026-06-13 01:40:10,745.745 INFO    ] Launching Daemon at Sat Jun 13 01:40:10 IST 2026
[2026-06-13 01:40:10,756.756 INFO    ] ================================================
[2026-06-13 01:40:11,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:40:11
[2026-06-13 01:40:11,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:40:11,542.542 INFO    ] Initializing speech engine...
[2026-06-13 01:40:11,547.547 INFO    ] 2026-06-13 01:40:11
[2026-06-13 01:40:11,754.754 INFO    ] 2026-06-13 01:40:11
[2026-06-13 01:40:11,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:40:11,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:40:11,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:40:12,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:40:12,150.150 INFO    ] time= 13/06/2026 01:40:12
[2026-06-13 01:40:12,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:40:12,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:40:12,276.276 INFO    ] No existing commands found in stream
[2026-06-13 01:40:17,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:40:17,290.290 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 01:40:20,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:40:20,339.339 INFO    ] Checking for system updates...
[2026-06-13 01:40:20,362.362 INFO    ] 200
[2026-06-13 01:40:20,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:20,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:20,399.399 INFO    ] No update needed
[2026-06-13 01:40:20,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 01:40:20,423.423 INFO    ] 200
[2026-06-13 01:40:20,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:20,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:40:20,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:20,492.492 INFO    ] No camera update needed
[2026-06-13 01:40:20,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:40:20,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:40:20,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:40:20,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:40:22,540.540 INFO    ] ================================================
[2026-06-13 01:40:22,554.554 INFO    ] Launching Daemon at Sat Jun 13 01:40:22 IST 2026
[2026-06-13 01:40:22,565.565 INFO    ] ================================================
[2026-06-13 01:40:22,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:40:22
[2026-06-13 01:40:23,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:40:23,352.352 INFO    ] Initializing speech engine...
[2026-06-13 01:40:23,358.358 INFO    ] 2026-06-13 01:40:23
[2026-06-13 01:40:23,563.563 INFO    ] 2026-06-13 01:40:23
[2026-06-13 01:40:23,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:40:23,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:40:23,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:40:23,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:40:23,969.969 INFO    ] time= 13/06/2026 01:40:23
[2026-06-13 01:40:24,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:40:24,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:40:24,103.103 INFO    ] No existing commands found in stream
[2026-06-13 01:40:29,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:40:29,115.115 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 01:40:32,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:40:32,280.280 INFO    ] Checking for system updates...
[2026-06-13 01:40:32,306.306 INFO    ] 200
[2026-06-13 01:40:32,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:32,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:40:32,344.344 INFO    ] No update needed
[2026-06-13 01:40:32,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 01:40:32,367.367 INFO    ] 200
[2026-06-13 01:40:32,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:32,400.400 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:40:32,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:40:32,439.439 INFO    ] No camera update needed
[2026-06-13 01:40:32,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:40:32,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:40:32,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:40:32,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:40:34,489.489 INFO    ] ================================================
[2026-06-13 01:40:34,504.504 INFO    ] Launching Daemon at Sat Jun 13 01:40:34 IST 2026
[2026-06-13 01:40:34,514.514 INFO    ] ================================================
[2026-06-13 01:40:34,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:40:34
[2026-06-13 01:40:35,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:40:35,291.291 INFO    ] Initializing speech engine...
[2026-06-13 01:40:35,296.296 INFO    ] 2026-06-13 01:40:35
[2026-06-13 01:40:35,503.503 INFO    ] 2026-06-13 01:40:35
[2026-06-13 01:40:35,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:40:35,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:40:35,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:40:35,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:40:35,910.910 INFO    ] time= 13/06/2026 01:40:35
[2026-06-13 01:40:35,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:40:35,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:40:36,022.022 INFO    ] No existing commands found in stream
[2026-06-13 01:40:41,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:40:41,034.034 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 01:40:42,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:40:42,371.371 INFO    ] Checking for system updates...
[2026-06-13 01:40:42,391.391 INFO    ] 200
[2026-06-13 01:40:42,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:42,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:40:42,425.425 INFO    ] No update needed
[2026-06-13 01:40:42,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 01:40:42,446.446 INFO    ] 200
[2026-06-13 01:40:42,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:42,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:40:42,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:40:42,610.610 INFO    ] No camera update needed
[2026-06-13 01:40:42,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:40:42,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:40:42,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:40:42,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:40:44,657.657 INFO    ] ================================================
[2026-06-13 01:40:44,672.672 INFO    ] Launching Daemon at Sat Jun 13 01:40:44 IST 2026
[2026-06-13 01:40:44,684.684 INFO    ] ================================================
[2026-06-13 01:40:45,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:40:45
[2026-06-13 01:40:45,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:40:45,500.500 INFO    ] Initializing speech engine...
[2026-06-13 01:40:45,505.505 INFO    ] 2026-06-13 01:40:45
[2026-06-13 01:40:45,709.709 INFO    ] 2026-06-13 01:40:45
[2026-06-13 01:40:45,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:40:45,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:40:45,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:40:46,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:40:46,120.120 INFO    ] time= 13/06/2026 01:40:46
[2026-06-13 01:40:46,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:40:46,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:40:46,225.225 INFO    ] No existing commands found in stream
[2026-06-13 01:40:51,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:40:51,242.242 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 01:40:52,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:40:52,164.164 INFO    ] Checking for system updates...
[2026-06-13 01:40:52,186.186 INFO    ] 200
[2026-06-13 01:40:52,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:52,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:52,224.224 INFO    ] No update needed
[2026-06-13 01:40:52,225.225 INFO    ] Checking for camera pi updates...
[2026-06-13 01:40:52,246.246 INFO    ] 200
[2026-06-13 01:40:52,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:40:52,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:40:52,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:40:52,312.312 INFO    ] No camera update needed
[2026-06-13 01:40:52,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:40:52,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:40:52,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:40:52,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:40:54,360.360 INFO    ] ================================================
[2026-06-13 01:40:54,376.376 INFO    ] Launching Daemon at Sat Jun 13 01:40:54 IST 2026
[2026-06-13 01:40:54,387.387 INFO    ] ================================================
[2026-06-13 01:40:54,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:40:54
[2026-06-13 01:40:55,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:40:55,275.275 INFO    ] Initializing speech engine...
[2026-06-13 01:40:55,281.281 INFO    ] 2026-06-13 01:40:55
[2026-06-13 01:40:55,493.493 INFO    ] 2026-06-13 01:40:55
[2026-06-13 01:40:55,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:40:55,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:40:55,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:40:55,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:40:55,901.901 INFO    ] time= 13/06/2026 01:40:55
[2026-06-13 01:40:55,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:40:55,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:40:56,012.012 INFO    ] No existing commands found in stream
[2026-06-13 01:41:01,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:01,031.031 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 01:41:03,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:41:03,430.430 INFO    ] Checking for system updates...
[2026-06-13 01:41:03,469.469 INFO    ] 200
[2026-06-13 01:41:03,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:03,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:03,529.529 INFO    ] No update needed
[2026-06-13 01:41:03,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:03,572.572 INFO    ] 200
[2026-06-13 01:41:03,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:03,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:03,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:03,663.663 INFO    ] No camera update needed
[2026-06-13 01:41:03,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:03,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:03,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:03,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:41:05,723.723 INFO    ] ================================================
[2026-06-13 01:41:05,744.744 INFO    ] Launching Daemon at Sat Jun 13 01:41:05 IST 2026
[2026-06-13 01:41:05,755.755 INFO    ] ================================================
[2026-06-13 01:41:06,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:41:06
[2026-06-13 01:41:06,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:41:06,553.553 INFO    ] Initializing speech engine...
[2026-06-13 01:41:06,557.557 INFO    ] 2026-06-13 01:41:06
[2026-06-13 01:41:06,750.750 INFO    ] 2026-06-13 01:41:06
[2026-06-13 01:41:06,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:41:06,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:41:06,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:41:07,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:41:07,069.069 INFO    ] time= 13/06/2026 01:41:07
[2026-06-13 01:41:07,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:41:07,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:41:07,279.279 INFO    ] No existing commands found in stream
[2026-06-13 01:41:12,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:12,301.301 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 01:41:14,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:41:14,136.136 INFO    ] Checking for system updates...
[2026-06-13 01:41:14,159.159 INFO    ] 200
[2026-06-13 01:41:14,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:14,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:41:14,192.192 INFO    ] No update needed
[2026-06-13 01:41:14,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:14,212.212 INFO    ] 200
[2026-06-13 01:41:14,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:14,237.237 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:14,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:41:14,279.279 INFO    ] No camera update needed
[2026-06-13 01:41:14,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:14,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:14,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:14,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:41:16,327.327 INFO    ] ================================================
[2026-06-13 01:41:16,343.343 INFO    ] Launching Daemon at Sat Jun 13 01:41:16 IST 2026
[2026-06-13 01:41:16,354.354 INFO    ] ================================================
[2026-06-13 01:41:16,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:41:16
[2026-06-13 01:41:17,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:41:17,236.236 INFO    ] Initializing speech engine...
[2026-06-13 01:41:17,246.246 INFO    ] 2026-06-13 01:41:17
[2026-06-13 01:41:17,456.456 INFO    ] 2026-06-13 01:41:17
[2026-06-13 01:41:17,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:41:17,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:41:17,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:41:17,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:41:17,879.879 INFO    ] time= 13/06/2026 01:41:17
[2026-06-13 01:41:17,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:41:17,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:41:17,978.978 INFO    ] No existing commands found in stream
[2026-06-13 01:41:22,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:22,991.991 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 01:41:25,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:41:25,342.342 INFO    ] Checking for system updates...
[2026-06-13 01:41:25,364.364 INFO    ] 200
[2026-06-13 01:41:25,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:25,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:25,400.400 INFO    ] No update needed
[2026-06-13 01:41:25,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:25,422.422 INFO    ] 200
[2026-06-13 01:41:25,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:25,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:25,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:25,491.491 INFO    ] No camera update needed
[2026-06-13 01:41:25,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:25,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:25,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:25,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:41:27,542.542 INFO    ] ================================================
[2026-06-13 01:41:27,557.557 INFO    ] Launching Daemon at Sat Jun 13 01:41:27 IST 2026
[2026-06-13 01:41:27,568.568 INFO    ] ================================================
[2026-06-13 01:41:27,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:41:27
[2026-06-13 01:41:28,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:41:28,418.418 INFO    ] Initializing speech engine...
[2026-06-13 01:41:28,424.424 INFO    ] 2026-06-13 01:41:28
[2026-06-13 01:41:28,636.636 INFO    ] 2026-06-13 01:41:28
[2026-06-13 01:41:28,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:41:28,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:41:28,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:41:28,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:41:29,052.052 INFO    ] time= 13/06/2026 01:41:28
[2026-06-13 01:41:29,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:41:29,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:41:29,157.157 INFO    ] No existing commands found in stream
[2026-06-13 01:41:34,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:34,172.172 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 01:41:36,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:41:36,399.399 INFO    ] Checking for system updates...
[2026-06-13 01:41:36,421.421 INFO    ] 200
[2026-06-13 01:41:36,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:36,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:36,454.454 INFO    ] No update needed
[2026-06-13 01:41:36,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:36,476.476 INFO    ] 200
[2026-06-13 01:41:36,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:36,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:36,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:36,542.542 INFO    ] No camera update needed
[2026-06-13 01:41:36,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:36,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:36,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:36,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:41:38,590.590 INFO    ] ================================================
[2026-06-13 01:41:38,606.606 INFO    ] Launching Daemon at Sat Jun 13 01:41:38 IST 2026
[2026-06-13 01:41:38,618.618 INFO    ] ================================================
[2026-06-13 01:41:38,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:41:38
[2026-06-13 01:41:39,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:41:39,424.424 INFO    ] Initializing speech engine...
[2026-06-13 01:41:39,435.435 INFO    ] 2026-06-13 01:41:39
[2026-06-13 01:41:39,639.639 INFO    ] 2026-06-13 01:41:39
[2026-06-13 01:41:39,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:41:39,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:41:39,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:41:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:41:39,993.993 INFO    ] time= 13/06/2026 01:41:39
[2026-06-13 01:41:40,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:41:40,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:41:40,175.175 INFO    ] No existing commands found in stream
[2026-06-13 01:41:45,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:45,188.188 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 01:41:48,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:41:48,282.282 INFO    ] Checking for system updates...
[2026-06-13 01:41:48,303.303 INFO    ] 200
[2026-06-13 01:41:48,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:48,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:41:48,336.336 INFO    ] No update needed
[2026-06-13 01:41:48,338.338 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:48,358.358 INFO    ] 200
[2026-06-13 01:41:48,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:48,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:48,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:41:48,429.429 INFO    ] No camera update needed
[2026-06-13 01:41:48,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:48,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:48,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:48,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:41:50,478.478 INFO    ] ================================================
[2026-06-13 01:41:50,494.494 INFO    ] Launching Daemon at Sat Jun 13 01:41:50 IST 2026
[2026-06-13 01:41:50,505.505 INFO    ] ================================================
[2026-06-13 01:41:50,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:41:50
[2026-06-13 01:41:51,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:41:51,440.440 INFO    ] Initializing speech engine...
[2026-06-13 01:41:51,445.445 INFO    ] 2026-06-13 01:41:51
[2026-06-13 01:41:51,650.650 INFO    ] 2026-06-13 01:41:51
[2026-06-13 01:41:51,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:41:51,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:41:51,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:41:52,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:41:52,018.018 INFO    ] time= 13/06/2026 01:41:52
[2026-06-13 01:41:52,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:41:52,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:41:52,156.156 INFO    ] No existing commands found in stream
[2026-06-13 01:41:57,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:41:57,174.174 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 01:41:58,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:41:58,501.501 INFO    ] Checking for system updates...
[2026-06-13 01:41:58,522.522 INFO    ] 200
[2026-06-13 01:41:58,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:58,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:58,572.572 INFO    ] No update needed
[2026-06-13 01:41:58,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 01:41:58,594.594 INFO    ] 200
[2026-06-13 01:41:58,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:41:58,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:41:58,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:41:58,658.658 INFO    ] No camera update needed
[2026-06-13 01:41:58,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:41:58,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:41:58,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:41:58,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:00,707.707 INFO    ] ================================================
[2026-06-13 01:42:00,723.723 INFO    ] Launching Daemon at Sat Jun 13 01:42:00 IST 2026
[2026-06-13 01:42:00,734.734 INFO    ] ================================================
[2026-06-13 01:42:01,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:01
[2026-06-13 01:42:01,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:02,147.147 INFO    ] Initializing speech engine...
[2026-06-13 01:42:02,157.157 INFO    ] 2026-06-13 01:42:02
[2026-06-13 01:42:02,444.444 INFO    ] 2026-06-13 01:42:02
[2026-06-13 01:42:02,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:02,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:02,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:42:02,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:42:02,840.840 INFO    ] time= 13/06/2026 01:42:02
[2026-06-13 01:42:02,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:42:02,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:42:02,943.943 INFO    ] No existing commands found in stream
[2026-06-13 01:42:07,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:42:07,959.959 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 01:42:09,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:42:09,779.779 INFO    ] Checking for system updates...
[2026-06-13 01:42:09,800.800 INFO    ] 200
[2026-06-13 01:42:09,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:09,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:09,833.833 INFO    ] No update needed
[2026-06-13 01:42:09,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 01:42:09,857.857 INFO    ] 200
[2026-06-13 01:42:09,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:09,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:42:09,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:09,921.921 INFO    ] No camera update needed
[2026-06-13 01:42:09,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:42:09,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:42:09,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:42:09,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:11,970.970 INFO    ] ================================================
[2026-06-13 01:42:11,985.985 INFO    ] Launching Daemon at Sat Jun 13 01:42:11 IST 2026
[2026-06-13 01:42:12,996.996 INFO    ] ================================================
[2026-06-13 01:42:12,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:12
[2026-06-13 01:42:12,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:12,767.767 INFO    ] Initializing speech engine...
[2026-06-13 01:42:12,771.771 INFO    ] 2026-06-13 01:42:12
[2026-06-13 01:42:12,966.966 INFO    ] 2026-06-13 01:42:12
[2026-06-13 01:42:13,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:13,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:13,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:42:13,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:42:13,378.378 INFO    ] time= 13/06/2026 01:42:13
[2026-06-13 01:42:13,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:42:13,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:42:13,560.560 INFO    ] No existing commands found in stream
[2026-06-13 01:42:18,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:42:18,573.573 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 01:42:22,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:42:22,070.070 INFO    ] Checking for system updates...
[2026-06-13 01:42:22,090.090 INFO    ] 200
[2026-06-13 01:42:22,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:22,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:42:22,123.123 INFO    ] No update needed
[2026-06-13 01:42:22,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 01:42:22,144.144 INFO    ] 200
[2026-06-13 01:42:22,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:22,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:42:22,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:22,194.194 INFO    ] No camera update needed
[2026-06-13 01:42:22,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:42:22,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:42:22,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:42:22,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:24,241.241 INFO    ] ================================================
[2026-06-13 01:42:24,257.257 INFO    ] Launching Daemon at Sat Jun 13 01:42:24 IST 2026
[2026-06-13 01:42:24,267.267 INFO    ] ================================================
[2026-06-13 01:42:24,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:24
[2026-06-13 01:42:24,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:25,127.127 INFO    ] Initializing speech engine...
[2026-06-13 01:42:25,133.133 INFO    ] 2026-06-13 01:42:25
[2026-06-13 01:42:25,340.340 INFO    ] 2026-06-13 01:42:25
[2026-06-13 01:42:25,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:25,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:42:25,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:42:25,663.663 INFO    ] time= 13/06/2026 01:42:25
[2026-06-13 01:42:25,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:42:25,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:42:25,802.802 INFO    ] No existing commands found in stream
[2026-06-13 01:42:30,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:42:30,821.821 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 01:42:32,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:42:32,593.593 INFO    ] Checking for system updates...
[2026-06-13 01:42:32,633.633 INFO    ] 200
[2026-06-13 01:42:32,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:32,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:32,691.691 INFO    ] No update needed
[2026-06-13 01:42:32,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 01:42:32,727.727 INFO    ] 200
[2026-06-13 01:42:32,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:32,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:42:32,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:32,806.806 INFO    ] No camera update needed
[2026-06-13 01:42:32,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:42:32,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:42:32,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:42:32,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:34,856.856 INFO    ] ================================================
[2026-06-13 01:42:34,864.864 INFO    ] Launching Daemon at Sat Jun 13 01:42:34 IST 2026
[2026-06-13 01:42:34,871.871 INFO    ] ================================================
[2026-06-13 01:42:35,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:35
[2026-06-13 01:42:35,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:35,646.646 INFO    ] Initializing speech engine...
[2026-06-13 01:42:35,651.651 INFO    ] 2026-06-13 01:42:35
[2026-06-13 01:42:35,856.856 INFO    ] 2026-06-13 01:42:35
[2026-06-13 01:42:35,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:36,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:36,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:42:36,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:42:36,260.260 INFO    ] time= 13/06/2026 01:42:36
[2026-06-13 01:42:36,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:42:36,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:42:36,371.371 INFO    ] No existing commands found in stream
[2026-06-13 01:42:41,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:42:41,383.383 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 01:42:45,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:42:45,534.534 INFO    ] Checking for system updates...
[2026-06-13 01:42:45,555.555 INFO    ] 200
[2026-06-13 01:42:45,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:45,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:45,591.591 INFO    ] No update needed
[2026-06-13 01:42:45,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 01:42:45,612.612 INFO    ] 200
[2026-06-13 01:42:45,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:45,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:42:45,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:42:45,781.781 INFO    ] No camera update needed
[2026-06-13 01:42:45,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:42:45,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:42:45,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:42:45,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:47,830.830 INFO    ] ================================================
[2026-06-13 01:42:47,845.845 INFO    ] Launching Daemon at Sat Jun 13 01:42:47 IST 2026
[2026-06-13 01:42:47,856.856 INFO    ] ================================================
[2026-06-13 01:42:48,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:48
[2026-06-13 01:42:48,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:48,678.678 INFO    ] Initializing speech engine...
[2026-06-13 01:42:48,684.684 INFO    ] 2026-06-13 01:42:48
[2026-06-13 01:42:48,886.886 INFO    ] 2026-06-13 01:42:48
[2026-06-13 01:42:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:49,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:49,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:42:49,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:42:49,295.295 INFO    ] time= 13/06/2026 01:42:49
[2026-06-13 01:42:49,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:42:49,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:42:49,404.404 INFO    ] No existing commands found in stream
[2026-06-13 01:42:54,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:42:54,417.417 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 01:42:56,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:42:56,542.542 INFO    ] Checking for system updates...
[2026-06-13 01:42:56,563.563 INFO    ] 200
[2026-06-13 01:42:56,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:56,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:42:56,597.597 INFO    ] No update needed
[2026-06-13 01:42:56,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 01:42:56,619.619 INFO    ] 200
[2026-06-13 01:42:56,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:42:56,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:42:56,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:42:56,681.681 INFO    ] No camera update needed
[2026-06-13 01:42:56,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:42:56,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:42:56,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:42:56,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:42:58,729.729 INFO    ] ================================================
[2026-06-13 01:42:58,745.745 INFO    ] Launching Daemon at Sat Jun 13 01:42:58 IST 2026
[2026-06-13 01:42:58,756.756 INFO    ] ================================================
[2026-06-13 01:42:59,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:42:59
[2026-06-13 01:42:59,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:42:59,537.537 INFO    ] Initializing speech engine...
[2026-06-13 01:42:59,548.548 INFO    ] 2026-06-13 01:42:59
[2026-06-13 01:42:59,754.754 INFO    ] 2026-06-13 01:42:59
[2026-06-13 01:42:59,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:42:59,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:42:59,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:00,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:00,161.161 INFO    ] time= 13/06/2026 01:43:00
[2026-06-13 01:43:00,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:00,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:00,271.271 INFO    ] No existing commands found in stream
[2026-06-13 01:43:05,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:05,283.283 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 01:43:07,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:43:07,371.371 INFO    ] Checking for system updates...
[2026-06-13 01:43:07,391.391 INFO    ] 200
[2026-06-13 01:43:07,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:07,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:07,426.426 INFO    ] No update needed
[2026-06-13 01:43:07,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 01:43:07,447.447 INFO    ] 200
[2026-06-13 01:43:07,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:07,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:43:07,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:07,520.520 INFO    ] No camera update needed
[2026-06-13 01:43:07,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:43:07,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:43:07,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:43:07,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:43:09,569.569 INFO    ] ================================================
[2026-06-13 01:43:09,585.585 INFO    ] Launching Daemon at Sat Jun 13 01:43:09 IST 2026
[2026-06-13 01:43:09,597.597 INFO    ] ================================================
[2026-06-13 01:43:09,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:43:09
[2026-06-13 01:43:10,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:43:10,399.399 INFO    ] Initializing speech engine...
[2026-06-13 01:43:10,405.405 INFO    ] 2026-06-13 01:43:10
[2026-06-13 01:43:10,611.611 INFO    ] 2026-06-13 01:43:10
[2026-06-13 01:43:10,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:43:10,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:43:10,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:10,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:11,025.025 INFO    ] time= 13/06/2026 01:43:10
[2026-06-13 01:43:11,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:11,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:11,130.130 INFO    ] No existing commands found in stream
[2026-06-13 01:43:16,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:16,142.142 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 01:43:17,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:43:17,523.523 INFO    ] Checking for system updates...
[2026-06-13 01:43:17,544.544 INFO    ] 200
[2026-06-13 01:43:17,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:17,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:43:17,577.577 INFO    ] No update needed
[2026-06-13 01:43:17,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 01:43:17,600.600 INFO    ] 200
[2026-06-13 01:43:17,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:17,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:43:17,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:43:17,662.662 INFO    ] No camera update needed
[2026-06-13 01:43:17,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:43:17,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:43:17,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:43:17,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:43:19,710.710 INFO    ] ================================================
[2026-06-13 01:43:19,726.726 INFO    ] Launching Daemon at Sat Jun 13 01:43:19 IST 2026
[2026-06-13 01:43:19,737.737 INFO    ] ================================================
[2026-06-13 01:43:20,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:43:20
[2026-06-13 01:43:20,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:43:20,609.609 INFO    ] Initializing speech engine...
[2026-06-13 01:43:20,615.615 INFO    ] 2026-06-13 01:43:20
[2026-06-13 01:43:20,824.824 INFO    ] 2026-06-13 01:43:20
[2026-06-13 01:43:20,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:43:21,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:43:21,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:21,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:21,256.256 INFO    ] time= 13/06/2026 01:43:21
[2026-06-13 01:43:21,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:21,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:21,353.353 INFO    ] No existing commands found in stream
[2026-06-13 01:43:26,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:26,367.367 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 01:43:26,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:43:26,761.761 INFO    ] Checking for system updates...
[2026-06-13 01:43:26,782.782 INFO    ] 200
[2026-06-13 01:43:26,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:26,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:26,816.816 INFO    ] No update needed
[2026-06-13 01:43:26,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 01:43:26,837.837 INFO    ] 200
[2026-06-13 01:43:26,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:26,862.862 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:43:26,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:26,904.904 INFO    ] No camera update needed
[2026-06-13 01:43:26,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:43:26,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:43:26,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:43:26,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:43:28,952.952 INFO    ] ================================================
[2026-06-13 01:43:28,968.968 INFO    ] Launching Daemon at Sat Jun 13 01:43:28 IST 2026
[2026-06-13 01:43:28,980.980 INFO    ] ================================================
[2026-06-13 01:43:29,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:43:29
[2026-06-13 01:43:29,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:43:29,788.788 INFO    ] Initializing speech engine...
[2026-06-13 01:43:29,797.797 INFO    ] 2026-06-13 01:43:29
[2026-06-13 01:43:30,001.001 INFO    ] 2026-06-13 01:43:29
[2026-06-13 01:43:30,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:43:30,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:43:30,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:30,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:30,399.399 INFO    ] time= 13/06/2026 01:43:30
[2026-06-13 01:43:30,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:30,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:30,514.514 INFO    ] No existing commands found in stream
[2026-06-13 01:43:35,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:35,531.531 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 01:43:39,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:43:39,716.716 INFO    ] Checking for system updates...
[2026-06-13 01:43:39,737.737 INFO    ] 200
[2026-06-13 01:43:39,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:39,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:39,771.771 INFO    ] No update needed
[2026-06-13 01:43:39,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 01:43:39,792.792 INFO    ] 200
[2026-06-13 01:43:39,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:39,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:43:39,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:43:39,863.863 INFO    ] No camera update needed
[2026-06-13 01:43:39,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:43:39,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:43:39,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:43:39,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:43:41,910.910 INFO    ] ================================================
[2026-06-13 01:43:41,926.926 INFO    ] Launching Daemon at Sat Jun 13 01:43:41 IST 2026
[2026-06-13 01:43:41,937.937 INFO    ] ================================================
[2026-06-13 01:43:42,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:43:42
[2026-06-13 01:43:42,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:43:42,793.793 INFO    ] Initializing speech engine...
[2026-06-13 01:43:42,798.798 INFO    ] 2026-06-13 01:43:42
[2026-06-13 01:43:43,006.006 INFO    ] 2026-06-13 01:43:42
[2026-06-13 01:43:43,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:43:43,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:43:43,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:43,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:43,408.408 INFO    ] time= 13/06/2026 01:43:43
[2026-06-13 01:43:43,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:43,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:43,524.524 INFO    ] No existing commands found in stream
[2026-06-13 01:43:48,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:48,533.533 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 01:43:50,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:43:50,334.334 INFO    ] Checking for system updates...
[2026-06-13 01:43:50,356.356 INFO    ] 200
[2026-06-13 01:43:50,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:50,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:43:50,389.389 INFO    ] No update needed
[2026-06-13 01:43:50,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 01:43:50,410.410 INFO    ] 200
[2026-06-13 01:43:50,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:43:50,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:43:50,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:43:50,474.474 INFO    ] No camera update needed
[2026-06-13 01:43:50,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:43:50,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:43:50,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:43:50,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:43:52,522.522 INFO    ] ================================================
[2026-06-13 01:43:52,538.538 INFO    ] Launching Daemon at Sat Jun 13 01:43:52 IST 2026
[2026-06-13 01:43:52,549.549 INFO    ] ================================================
[2026-06-13 01:43:52,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:43:52
[2026-06-13 01:43:53,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:43:53,360.360 INFO    ] Initializing speech engine...
[2026-06-13 01:43:53,373.373 INFO    ] 2026-06-13 01:43:53
[2026-06-13 01:43:53,591.591 INFO    ] 2026-06-13 01:43:53
[2026-06-13 01:43:53,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:43:53,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:43:53,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:43:53,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:43:53,988.988 INFO    ] time= 13/06/2026 01:43:53
[2026-06-13 01:43:54,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:43:54,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:43:54,145.145 INFO    ] No existing commands found in stream
[2026-06-13 01:43:59,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:43:59,158.158 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 01:44:02,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:44:02,232.232 INFO    ] Checking for system updates...
[2026-06-13 01:44:02,272.272 INFO    ] 200
[2026-06-13 01:44:02,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:02,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:44:02,340.340 INFO    ] No update needed
[2026-06-13 01:44:02,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:02,384.384 INFO    ] 200
[2026-06-13 01:44:02,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:02,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:02,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:44:02,486.486 INFO    ] No camera update needed
[2026-06-13 01:44:02,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:02,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:02,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:02,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:04,543.543 INFO    ] ================================================
[2026-06-13 01:44:04,559.559 INFO    ] Launching Daemon at Sat Jun 13 01:44:04 IST 2026
[2026-06-13 01:44:04,570.570 INFO    ] ================================================
[2026-06-13 01:44:04,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:04
[2026-06-13 01:44:05,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:05,408.408 INFO    ] Initializing speech engine...
[2026-06-13 01:44:05,413.413 INFO    ] 2026-06-13 01:44:05
[2026-06-13 01:44:05,620.620 INFO    ] 2026-06-13 01:44:05
[2026-06-13 01:44:05,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:05,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:05,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:05,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:06,030.030 INFO    ] time= 13/06/2026 01:44:05
[2026-06-13 01:44:06,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:06,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:06,144.144 INFO    ] No existing commands found in stream
[2026-06-13 01:44:11,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:44:11,161.161 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 01:44:11,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:44:11,782.782 INFO    ] Checking for system updates...
[2026-06-13 01:44:11,804.804 INFO    ] 200
[2026-06-13 01:44:11,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:11,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:11,853.853 INFO    ] No update needed
[2026-06-13 01:44:11,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:11,875.875 INFO    ] 200
[2026-06-13 01:44:11,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:11,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:11,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:11,945.945 INFO    ] No camera update needed
[2026-06-13 01:44:11,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:11,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:11,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:13,992.992 INFO    ] ================================================
[2026-06-13 01:44:14,007.007 INFO    ] Launching Daemon at Sat Jun 13 01:44:14 IST 2026
[2026-06-13 01:44:14,019.019 INFO    ] ================================================
[2026-06-13 01:44:14,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:14
[2026-06-13 01:44:14,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:14,813.813 INFO    ] Initializing speech engine...
[2026-06-13 01:44:14,819.819 INFO    ] 2026-06-13 01:44:14
[2026-06-13 01:44:15,021.021 INFO    ] 2026-06-13 01:44:15
[2026-06-13 01:44:15,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:15,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:15,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:15,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:15,423.423 INFO    ] time= 13/06/2026 01:44:15
[2026-06-13 01:44:15,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:15,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:15,533.533 INFO    ] No existing commands found in stream
[2026-06-13 01:44:20,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:44:20,544.544 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 01:44:23,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:44:23,713.713 INFO    ] Checking for system updates...
[2026-06-13 01:44:23,749.749 INFO    ] 200
[2026-06-13 01:44:23,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:23,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:23,803.803 INFO    ] No update needed
[2026-06-13 01:44:23,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:23,823.823 INFO    ] 200
[2026-06-13 01:44:23,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:23,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:23,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:23,889.889 INFO    ] No camera update needed
[2026-06-13 01:44:23,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:23,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:23,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:23,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:25,938.938 INFO    ] ================================================
[2026-06-13 01:44:25,954.954 INFO    ] Launching Daemon at Sat Jun 13 01:44:25 IST 2026
[2026-06-13 01:44:25,965.965 INFO    ] ================================================
[2026-06-13 01:44:26,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:26
[2026-06-13 01:44:26,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:26,747.747 INFO    ] Initializing speech engine...
[2026-06-13 01:44:26,751.751 INFO    ] 2026-06-13 01:44:26
[2026-06-13 01:44:26,955.955 INFO    ] 2026-06-13 01:44:26
[2026-06-13 01:44:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:27,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:27,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:27,354.354 INFO    ] time= 13/06/2026 01:44:27
[2026-06-13 01:44:27,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:27,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:27,468.468 INFO    ] No existing commands found in stream
[2026-06-13 01:44:32,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:44:32,481.481 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 01:44:35,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:44:35,197.197 INFO    ] Checking for system updates...
[2026-06-13 01:44:35,218.218 INFO    ] 200
[2026-06-13 01:44:35,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:35,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:35,251.251 INFO    ] No update needed
[2026-06-13 01:44:35,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:35,271.271 INFO    ] 200
[2026-06-13 01:44:35,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:35,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:35,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:35,337.337 INFO    ] No camera update needed
[2026-06-13 01:44:35,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:35,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:35,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:35,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:37,384.384 INFO    ] ================================================
[2026-06-13 01:44:37,400.400 INFO    ] Launching Daemon at Sat Jun 13 01:44:37 IST 2026
[2026-06-13 01:44:37,410.410 INFO    ] ================================================
[2026-06-13 01:44:37,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:37
[2026-06-13 01:44:38,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:38,227.227 INFO    ] Initializing speech engine...
[2026-06-13 01:44:38,237.237 INFO    ] 2026-06-13 01:44:38
[2026-06-13 01:44:38,443.443 INFO    ] 2026-06-13 01:44:38
[2026-06-13 01:44:38,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:38,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:38,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:38,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:38,856.856 INFO    ] time= 13/06/2026 01:44:38
[2026-06-13 01:44:38,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:38,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:38,961.961 INFO    ] No existing commands found in stream
[2026-06-13 01:44:43,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:44:43,973.973 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 01:44:44,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:44:44,416.416 INFO    ] Checking for system updates...
[2026-06-13 01:44:44,436.436 INFO    ] 200
[2026-06-13 01:44:44,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:44,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:44:44,469.469 INFO    ] No update needed
[2026-06-13 01:44:44,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:44,490.490 INFO    ] 200
[2026-06-13 01:44:44,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:44,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:44,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:44,557.557 INFO    ] No camera update needed
[2026-06-13 01:44:44,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:44,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:44,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:44,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:46,605.605 INFO    ] ================================================
[2026-06-13 01:44:46,620.620 INFO    ] Launching Daemon at Sat Jun 13 01:44:46 IST 2026
[2026-06-13 01:44:46,630.630 INFO    ] ================================================
[2026-06-13 01:44:46,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:46
[2026-06-13 01:44:47,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:47,420.420 INFO    ] Initializing speech engine...
[2026-06-13 01:44:47,428.428 INFO    ] 2026-06-13 01:44:47
[2026-06-13 01:44:47,632.632 INFO    ] 2026-06-13 01:44:47
[2026-06-13 01:44:47,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:47,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:47,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:47,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:48,031.031 INFO    ] time= 13/06/2026 01:44:47
[2026-06-13 01:44:48,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:48,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:48,170.170 INFO    ] No existing commands found in stream
[2026-06-13 01:44:53,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:44:53,186.186 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 01:44:55,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:44:55,311.311 INFO    ] Checking for system updates...
[2026-06-13 01:44:55,331.331 INFO    ] 200
[2026-06-13 01:44:55,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:55,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:55,364.364 INFO    ] No update needed
[2026-06-13 01:44:55,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:55,387.387 INFO    ] 200
[2026-06-13 01:44:55,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:55,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:55,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:55,556.556 INFO    ] No camera update needed
[2026-06-13 01:44:55,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:55,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:55,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:55,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:44:57,603.603 INFO    ] ================================================
[2026-06-13 01:44:57,617.617 INFO    ] Launching Daemon at Sat Jun 13 01:44:57 IST 2026
[2026-06-13 01:44:57,628.628 INFO    ] ================================================
[2026-06-13 01:44:57,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:44:57
[2026-06-13 01:44:58,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:44:58,409.409 INFO    ] Initializing speech engine...
[2026-06-13 01:44:58,419.419 INFO    ] 2026-06-13 01:44:58
[2026-06-13 01:44:58,621.621 INFO    ] 2026-06-13 01:44:58
[2026-06-13 01:44:58,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:44:58,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:44:58,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:44:58,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:44:59,015.015 INFO    ] time= 13/06/2026 01:44:58
[2026-06-13 01:44:59,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:44:59,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:44:59,137.137 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 01:44:59,139.139 INFO    ] Checking historical command: ID=1781295294720-0
[2026-06-13 01:44:59,164.164 INFO    ] process_and_cleanup_command: msg_id=1781295294720-0
[2026-06-13 01:44:59,166.166 INFO    ] is_command_expired: timestamp=2026-06-12T20:14:53.738Z, expiry=30s
[2026-06-13 01:44:59,273.273 INFO    ] Command removed from stream: 1781295294720-0. returning for processing...
[2026-06-13 01:44:59,276.276 INFO    ] ***** get_valid_command
[2026-06-13 01:44:59,279.279 INFO    ] {'data': '{"request_id":"start-order-1781295293737-qe84biyx1","orderId":"TM08202203260613014259336","is_vending":false}', 'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'timestamp': '2026-06-12T20:14:53.738Z'}
[2026-06-13 01:44:59,284.284 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613014259336', 'is_vending': False, 'request_id': 'start-order-1781295293737-qe84biyx1'}
[2026-06-13 01:44:59,287.287 INFO    ] Handling start order...
[2026-06-13 01:44:59,290.290 INFO    ] handle_start_order_command
[2026-06-13 01:44:59,296.296 INFO    ] _send_start_order_success: request_id=start-order-1781295293737-qe84biyx1, order_id=TM08202203260613014259336
[2026-06-13 01:44:59,299.299 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 01:44:59,347.347 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781295299310-0
[2026-06-13 01:44:59,350.350 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 01:44:59,353.353 INFO    ] Checking for system updates...
[2026-06-13 01:44:59,381.381 INFO    ] 200
[2026-06-13 01:44:59,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:59,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:59,425.425 INFO    ] No update needed
[2026-06-13 01:44:59,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 01:44:59,498.498 INFO    ] 200
[2026-06-13 01:44:59,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:44:59,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:44:59,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:44:59,633.633 INFO    ] No camera update needed
[2026-06-13 01:44:59,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:44:59,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:44:59,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:44:59,654.654 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 01:44:59,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:45:01,693.693 INFO    ] ================================================
[2026-06-13 01:45:01,706.706 INFO    ] Launching Daemon at Sat Jun 13 01:45:01 IST 2026
[2026-06-13 01:45:01,716.716 INFO    ] ================================================
[2026-06-13 01:45:02,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:45:02
[2026-06-13 01:45:02,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:45:02,580.580 INFO    ] Initializing speech engine...
[2026-06-13 01:45:02,585.585 INFO    ] 2026-06-13 01:45:02
[2026-06-13 01:45:02,789.789 INFO    ] 2026-06-13 01:45:02
[2026-06-13 01:45:02,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:45:03,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:45:03,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:45:03,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:45:03,130.130 INFO    ] time= 13/06/2026 01:45:03
[2026-06-13 01:45:03,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:45:03,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:45:03,251.251 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 01:45:03,272.272 INFO    ] Checking historical command: ID=1781295299310-0
[2026-06-13 01:45:03,327.327 INFO    ] process_and_cleanup_command: msg_id=1781295299310-0
[2026-06-13 01:45:03,376.376 INFO    ] is_command_expired: timestamp=2026-06-12T20:14:59.297957Z, expiry=30s
[2026-06-13 01:45:03,469.469 INFO    ] Command removed from stream: 1781295299310-0. returning for processing...
[2026-06-13 01:45:03,510.510 INFO    ] ***** get_valid_command
[2026-06-13 01:45:03,570.570 INFO    ] {'metadata_order_id': 'TM08202203260613014259336', 'metadata_request_id': 'start-order-1781295293737-qe84biyx1', 'message_type': 'command_response', 'timestamp': '2026-06-12T20:14:59.297957Z', 'message': 'start-order success', 'imei': 'TM08202203', 'status': 'success'}
[2026-06-13 01:45:03,622.622 INFO    ] Checking historical command: ID=1781295302908-0
[2026-06-13 01:45:03,673.673 INFO    ] process_and_cleanup_command: msg_id=1781295302908-0
[2026-06-13 01:45:03,703.703 INFO    ] is_command_expired: timestamp=2026-06-12T20:15:02.033Z, expiry=30s
[2026-06-13 01:45:03,818.818 INFO    ] Command removed from stream: 1781295302908-0. returning for processing...
[2026-06-13 01:45:03,856.856 INFO    ] ***** get_valid_command
[2026-06-13 01:45:03,875.875 INFO    ] {'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1781295302033-fkownupxv","orderId":"TM08202203260613014259336","is_vending":false,"accessCode":"13742020"}', 'timeout': '60', 'timestamp': '2026-06-12T20:15:02.033Z'}
[2026-06-13 01:45:03,885.885 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1781295302033-fkownupxv', 'accessCode': '13742020', 'orderId': 'TM08202203260613014259336'}
[2026-06-13 01:45:03,888.888 INFO    ] Handling process order...
[2026-06-13 01:45:03,891.891 INFO    ] Processing process-order command...
[2026-06-13 01:45:03,894.894 INFO    ] 🔍 Lock file Order ID: TM08202203260613014259336, TS: 2026-06-13 01:44:59
[2026-06-13 01:45:03,956.956 INFO    ] ✅ Order lock valid for TM08202203260613014259336
[2026-06-13 01:45:04,010.010 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 01:45:04,038.038 INFO    ] processing access code 13742020 for order TM08202203260613014259336
[2026-06-13 01:45:04,045.045 INFO    ] 🔍 Lock file Order ID: TM08202203260613014259336, TS: 2026-06-13 01:44:59
[2026-06-13 01:45:04,089.089 INFO    ] ✅ Order lock valid for TM08202203260613014259336
[2026-06-13 01:45:04,099.099 INFO    ] 2026-06-13 01:45:04
[2026-06-13 01:45:04,165.165 INFO    ] 200
[2026-06-13 01:45:04,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:45:04,175.175 INFO    ] 13742020
[2026-06-13 01:45:04,179.179 INFO    ] 2026-06-13 01:45:04
[2026-06-13 01:45:04,183.183 INFO    ] session id :275570511
[2026-06-13 01:45:04,188.188 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=13742020&imei=TM08202203&session_id=275570511
[2026-06-13 01:45:05,854.854 INFO    ] 200
[2026-06-13 01:45:05,862.862 INFO    ] {"data": {"mobile": "8597643532", "order_id": "TM08202203260613014259336", "bill_amount": "66.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500707-9670.jpg", "skuid": "4500707", "door_id": "1", "mrp": "30", "offer_desc": "", "name": "Farmely Party Mix 21gm", "tray_id": "22", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/166327-5644.jpg", "skuid": "166327", "door_id": "2", "mrp": "38", "offer_desc": "", "name": "Epigamia Chocolate Milkshake 200g", "tray_id": "38", "unit_price": 36, "qty": 1, "sku_total": 36, "offer_id": "166327_0803"}], "access_code": "13742020", "invoice_bill": "66.0"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 01:45:05,869.869 INFO    ] 66
[2026-06-13 01:45:05,883.883 INFO    ] TM08202203260613014259336
[2026-06-13 01:45:05,890.890 INFO    ] 8597643532
[2026-06-13 01:45:05,897.897 INFO    ] 2026-06-13 01:45:05
[2026-06-13 01:45:05,905.905 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 01:45:05,908.908 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 01:45:05,910.910 INFO    ] baf9e0f52a6dacc8cc372b7eeef1b6f7
[2026-06-13 01:45:05,913.913 INFO    ] 2026-06-13 01:45:05
[2026-06-13 01:45:05,915.915 INFO    ] playing audio file
[2026-06-13 01:45:05,932.932 INFO    ] 2026-06-13 01:45:05
[2026-06-13 01:45:05,935.935 INFO    ] 2026-06-13 01:45:05
[2026-06-13 01:45:05,938.938 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:05,941.941 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:05,987.987 INFO    ] [publish_status] Message added to stream with ID: 1781295305953-0
[2026-06-13 01:45:05,988.988 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"data": {"proposed_sku_json": [{"offer_id": "", "sku_total": 30, "name": "Farmely Party Mix 21gm", "door_id": "1", "tray_id": "22", "mrp": "30", "qty": 1, "image_url": "https://images.tinymart.in/product/4500707-9670.jpg", "skuid": "4500707", "offer_desc": "", "unit_price": 30}, {"offer_id": "166327_0803", "sku_total": 36, "name": "Epigamia Chocolate Milkshake 200g", "door_id": "2", "tray_id": "38", "mrp": "38", "qty": 1, "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "skuid": "166327", "offer_desc": "", "unit_price": 36}], "mobile": "8597643532", "order_id": "TM08202203260613014259336", "access_code": "13742020", "invoice_bill": "66.0", "bill_amount": "66.0"}, "msg": "Order Data", "rstatus": true, "status": true}', 'server_status': 'order-started', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:05.936808Z'} (ID: 1781295305953-0)
[2026-06-13 01:45:06,302.302 INFO    ] {'server_response': {'data': {'proposed_sku_json': [{'offer_id': '', 'sku_total': 30, 'name': 'Farmely Party Mix 21gm', 'door_id': '1', 'tray_id': '22', 'mrp': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'skuid': '4500707', 'offer_desc': '', 'unit_price': 30}, {'offer_id': '166327_0803', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g', 'door_id': '2', 'tray_id': '38', 'mrp': '38', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'skuid': '166327', 'offer_desc': '', 'unit_price': 36}], 'mobile': '8597643532', 'order_id': 'TM08202203260613014259336', 'access_code': '13742020', 'invoice_bill': '66.0', 'bill_amount': '66.0'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:06,303.303 INFO    ] 200
[2026-06-13 01:45:06,304.304 INFO    ] {"data":{"server_response":{"data":{"proposed_sku_json":[{"offer_id":"","sku_total":30,"name":"Farmely Party Mix 21gm","door_id":"1","tray_id":"22","mrp":"30","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500707-9670.jpg","skuid":"4500707","offer_desc":"","unit_price":30},{"offer_id":"166327_0803","sku_total":36,"name":"Epigamia Chocolate Milkshake 200g","door_id":"2","tray_id":"38","mrp":"38","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","skuid":"166327","offer_desc":"","unit_price":36}],"mobile":"8597643532","order_id":"TM08202203260613014259336","access_code":"13742020","invoice_bill":"66.0","bill_amount":"66.0"},"msg":"Order Data","rstatus":true,"status":true},"server_status":"order-started","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:06,306.306 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'data': {'proposed_sku_json': [{'offer_id': '', 'name': 'Farmely Party Mix 21gm', 'door_id': '1', 'sku_total': 30, 'qty': 1, 'offer_desc': '', 'mrp': '30', 'tray_id': '22', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': 30, 'skuid': '4500707'}, {'offer_id': '166327_0803', 'name': 'Epigamia Chocolate Milkshake 200g', 'door_id': '2', 'sku_total': 36, 'qty': 1, 'offer_desc': '', 'mrp': '38', 'tray_id': '38', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'unit_price': 36, 'skuid': '166327'}], 'mobile': '8597643532', 'order_id': 'TM08202203260613014259336', 'access_code': '13742020', 'invoice_bill': '66.0', 'bill_amount': '66.0'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:06,308.308 INFO    ] 2026-06-13 01:45:06
[2026-06-13 01:45:06,335.335 INFO    ] 200
[2026-06-13 01:45:06,336.336 INFO    ] True
[2026-06-13 01:45:06,417.417 INFO    ] 200
[2026-06-13 01:45:06,418.418 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:06,420.420 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please Wait'}
[2026-06-13 01:45:06,422.422 INFO    ] *** process_order ***
[2026-06-13 01:45:07,595.595 INFO    ] 200
[2026-06-13 01:45:07,596.596 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:45:07,598.598 INFO    ] {'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 01:45:07,599.599 INFO    ] *** process_order ***
[2026-06-13 01:45:07,601.601 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:07,602.602 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:07,680.680 INFO    ] [publish_status] Message added to stream with ID: 1781295307646-0
[2026-06-13 01:45:07,681.681 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"voiceNote": "Door is open...", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "status": "True"}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613014259336'} (ID: 1781295307646-0)
[2026-06-13 01:45:08,727.727 INFO    ] 2026-06-13 01:45:08
[2026-06-13 01:45:08,731.731 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:08,733.733 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:08,821.821 INFO    ] [publish_status] Message added to stream with ID: 1781295308786-0
[2026-06-13 01:45:08,824.824 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"delay": 0, "voiceNote": "Please Wait", "rstatus": true, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}}', 'server_status': 'processOrder', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:08.729415Z'} (ID: 1781295308786-0)
[2026-06-13 01:45:08,935.935 INFO    ] {'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:08,938.938 INFO    ] 200
[2026-06-13 01:45:08,940.940 INFO    ] {"data":{"server_response":{"delay":0,"voiceNote":"Please Wait","rstatus":true,"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"}},"server_status":"processOrder","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:08,943.943 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'delay': 0, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:08,946.946 INFO    ] 2026-06-13 01:45:08
[2026-06-13 01:45:08,949.949 INFO    ] None
[2026-06-13 01:45:08,951.951 INFO    ] Opening Door now
[2026-06-13 01:45:08,954.954 INFO    ] Opening Door now
[2026-06-13 01:45:08,957.957 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 01:45:08,959.959 INFO    ] 2026-06-13 01:45:08
[2026-06-13 01:45:08,962.962 INFO    ] playing audio file
[2026-06-13 01:45:08,980.980 INFO    ] 2026-06-13 01:45:08
[2026-06-13 01:45:08,983.983 INFO    ] 2026-06-13 01:45:08
[2026-06-13 01:45:12,031.031 INFO    ] 200
[2026-06-13 01:45:12,032.032 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Party Mix 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:12,034.034 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is open now'}
[2026-06-13 01:45:15,103.103 INFO    ] 200
[2026-06-13 01:45:15,105.105 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Party Mix 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:15,109.109 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1'}
[2026-06-13 01:45:18,146.146 INFO    ] 200
[2026-06-13 01:45:18,148.148 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Party Mix 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:18,150.150 INFO    ] Please close door 1
[2026-06-13 01:45:18,152.152 INFO    ] Please close door 1
[2026-06-13 01:45:18,154.154 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 01:45:18,156.156 INFO    ] 2026-06-13 01:45:18
[2026-06-13 01:45:18,157.157 INFO    ] playing audio file
[2026-06-13 01:45:18,168.168 INFO    ] 2026-06-13 01:45:18
[2026-06-13 01:45:18,170.170 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:18,172.172 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:18,267.267 INFO    ] [publish_status] Message added to stream with ID: 1781295318233-0
[2026-06-13 01:45:18,269.269 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "Farmely Party Mix 21gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}, "voiceNote": "Please close door 1"}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:18.169652Z'} (ID: 1781295318233-0)
[2026-06-13 01:45:18,602.602 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:18,605.605 INFO    ] 200
[2026-06-13 01:45:18,608.608 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"status":"false","SectionSKU":{"skus":[{"qty":1,"name":"Farmely Party Mix 21gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"},"voiceNote":"Please close door 1"},"server_status":"OrderStatus","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:18,612.612 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 1', 'status': 'false', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}]}, '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'}, 'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:18,615.615 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1'}
[2026-06-13 01:45:21,709.709 INFO    ] 200
[2026-06-13 01:45:21,712.712 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Party Mix 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:21,715.715 INFO    ] {'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'SubHeader': 'Please wait for invoice to generate'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is closed now'}
[2026-06-13 01:45:24,779.779 INFO    ] 200
[2026-06-13 01:45:24,781.781 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:24,783.783 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 01:45:27,818.818 INFO    ] 200
[2026-06-13 01:45:27,819.819 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:27,821.821 INFO    ] Please close door 2
[2026-06-13 01:45:27,822.822 INFO    ] Please close door 2
[2026-06-13 01:45:27,823.823 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 01:45:27,825.825 INFO    ] 2026-06-13 01:45:27
[2026-06-13 01:45:27,826.826 INFO    ] playing audio file
[2026-06-13 01:45:27,845.845 INFO    ] 2026-06-13 01:45:27
[2026-06-13 01:45:27,847.847 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:27,849.849 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:27,920.920 INFO    ] [publish_status] Message added to stream with ID: 1781295327886-0
[2026-06-13 01:45:27,921.921 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}, "voiceNote": "Please close door 2"}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:27.846302Z'} (ID: 1781295327886-0)
[2026-06-13 01:45:28,230.230 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:28,231.231 INFO    ] 200
[2026-06-13 01:45:28,232.232 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"status":"false","SectionSKU":{"skus":[{"qty":1,"name":"Epigamia Chocolate Milkshake 200g"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"},"voiceNote":"Please close door 2"},"server_status":"OrderStatus","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:28,234.234 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 2', 'status': 'false', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:28,235.235 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:45:31,270.270 INFO    ] 200
[2026-06-13 01:45:31,272.272 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:31,275.275 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:45:34,326.326 INFO    ] 200
[2026-06-13 01:45:34,329.329 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Chocolate Milkshake 200g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:45:34,332.332 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Epigamia Chocolate Milkshake 200g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 01:45:37,404.404 INFO    ] 200
[2026-06-13 01:45:37,406.406 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:45:37,410.410 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:37,413.413 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:37,500.500 INFO    ] [publish_status] Message added to stream with ID: 1781295337465-0
[2026-06-13 01:45:37,503.503 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"delay": 100, "voiceNote": "Transaction Completed", "rstatus": true, "status": "True", "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "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"}, "SectionMain": {"Header": "Door Closed"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:37.408693Z'} (ID: 1781295337465-0)
[2026-06-13 01:45:37,925.925 INFO    ] {'server_response': {'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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'}, 'SectionMain': {'Header': 'Door Closed'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:37,927.927 INFO    ] 200
[2026-06-13 01:45:37,930.930 INFO    ] {"data":{"server_response":{"delay":100,"voiceNote":"Transaction Completed","rstatus":true,"status":"true","SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"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"},"SectionMain":{"Header":"Door Closed"}},"server_status":"OrderStatus","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:37,933.933 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'delay': 100, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:37,935.935 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 01:45:37,938.938 INFO    ] 2026-06-13 01:45:37
[2026-06-13 01:45:37,940.940 INFO    ] Order Completed 
[2026-06-13 01:45:37,943.943 INFO    ] Order Completed 
[2026-06-13 01:45:37,945.945 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 01:45:37,947.947 INFO    ] 2026-06-13 01:45:37
[2026-06-13 01:45:37,950.950 INFO    ] playing audio file
[2026-06-13 01:45:37,969.969 INFO    ] 2026-06-13 01:45:37
[2026-06-13 01:45:37,973.973 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 01:45:37,976.976 INFO    ] 2026-06-13 01:45:37
[2026-06-13 01:45:38,940.940 INFO    ] 200
[2026-06-13 01:45:38,943.943 INFO    ] {"res": true, "bill_amount": 68, "orderId": "TM08202203260613014259336", "skus": [{"image_url": "https://images.tinymart.in/product/4500707-9670.jpg", "unit_price": "30", "door_id": "", "mrp": "30", "name": "Farmely Party Mix 21gm per peice", "skuid": "4500707", "tray_id": "22", "sku_total": 30, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/166327-5644.jpg", "unit_price": "36", "door_id": "", "mrp": "38", "name": "Epigamia Chocolate Milkshake 200g per peice", "offer_desc": "5% OFF", "skuid": "166327", "tray_id": "38", "sku_total": 36, "qty": "1", "offer_id": "166327_0803"}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 66, "order_status": "", "userId": "8597643532", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 01:45:38,946.946 INFO    ] {'total_amount': 66, 'res': True, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm per peice', 'door_id': '', 'mrp': '30', 'sku_total': 30, 'tray_id': '22', 'skuid': '4500707', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': '30', 'offer_id': ''}, {'qty': '1', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': '', 'tray_id': '38', 'mrp': '38', 'sku_total': 36, 'offer_desc': '5% OFF', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'unit_price': '36', 'offer_id': '166327_0803'}], 'orderId': 'TM08202203260613014259336', 'anomaly': 0, 'order_status': '', 'userId': '8597643532', 'imei': 'TM08202203', 'bill_amount': 68}
[2026-06-13 01:45:38,951.951 INFO    ] {'total_amount': 66, 'res': True, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm per peice', 'door_id': '', 'mrp': '30', 'sku_total': 30, 'tray_id': '22', 'skuid': '4500707', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': '30', 'offer_id': ''}, {'qty': '1', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': '', 'tray_id': '38', 'mrp': '38', 'sku_total': 36, 'offer_desc': '5% OFF', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'unit_price': '36', 'offer_id': '166327_0803'}], 'orderId': 'TM08202203260613014259336', 'anomaly': 0, 'order_status': '', 'userId': '8597643532', 'imei': 'TM08202203', 'bill_amount': 68}
[2026-06-13 01:45:38,953.953 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:38,957.957 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:38,960.960 INFO    ] 66
[2026-06-13 01:45:38,963.963 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:38,965.965 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:38,968.968 INFO    ]  Your Bill Amount is 66
[2026-06-13 01:45:38,971.971 INFO    ]  Your Bill Amount is 66
[2026-06-13 01:45:38,973.973 INFO    ] 214d957000239806278e62d9032b56cb
[2026-06-13 01:45:38,976.976 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:38,979.979 INFO    ] playing audio file
[2026-06-13 01:45:38,997.997 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:39,000.000 INFO    ] 2026-06-13 01:45:38
[2026-06-13 01:45:39,004.004 INFO    ] publish_status: order_id=TM08202203260613014259336
[2026-06-13 01:45:39,007.007 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014259336
[2026-06-13 01:45:39,068.068 INFO    ] [publish_status] Message added to stream with ID: 1781295339034-0
[2026-06-13 01:45:39,070.070 INFO    ] Published to order:TM08202203260613014259336: {'server_response': '{"total_amount": 66, "res": true, "cart_offer_desc": "", "rstatus": true, "skus": [{"qty": 1, "name": "Farmely Party Mix 21gm per peice", "door_id": "", "mrp": "30", "sku_total": 30, "tray_id": "22", "skuid": "4500707", "image_url": "https://images.tinymart.in/product/4500707-9670.jpg", "unit_price": "30", "offer_id": ""}, {"qty": "1", "name": "Epigamia Chocolate Milkshake 200g per peice", "door_id": "", "tray_id": "38", "mrp": "38", "sku_total": 36, "offer_desc": "5% OFF", "skuid": "166327", "image_url": "https://images.tinymart.in/product/166327-5644.jpg", "unit_price": "36", "offer_id": "166327_0803"}], "orderId": "TM08202203260613014259336", "anomaly": 0, "order_status": "", "userId": "8597643532", "imei": "TM08202203", "bill_amount": 68}', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613014259336', 'timestamp': '2026-06-12T20:15:39.002491Z'} (ID: 1781295339034-0)
[2026-06-13 01:45:39,177.177 INFO    ] {'server_response': {'total_amount': 66, 'res': True, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'qty': 1, 'name': 'Farmely Party Mix 21gm per peice', 'door_id': '', 'mrp': '30', 'sku_total': 30, 'tray_id': '22', 'skuid': '4500707', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': '30', 'offer_id': ''}, {'qty': '1', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': '', 'tray_id': '38', 'mrp': '38', 'sku_total': 36, 'offer_desc': '5% OFF', 'skuid': '166327', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'unit_price': '36', 'offer_id': '166327_0803'}], 'orderId': 'TM08202203260613014259336', 'anomaly': 0, 'order_status': '', 'userId': '8597643532', 'imei': 'TM08202203', 'bill_amount': 68}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613014259336'}
[2026-06-13 01:45:39,179.179 INFO    ] 200
[2026-06-13 01:45:39,180.180 INFO    ] {"data":{"server_response":{"total_amount":66,"res":true,"cart_offer_desc":"","rstatus":true,"skus":[{"qty":1,"name":"Farmely Party Mix 21gm per peice","door_id":"","mrp":"30","sku_total":30,"tray_id":"22","skuid":"4500707","image_url":"https:\/\/images.tinymart.in\/product\/4500707-9670.jpg","unit_price":"30","offer_id":""},{"qty":"1","name":"Epigamia Chocolate Milkshake 200g per peice","door_id":"","tray_id":"38","mrp":"38","sku_total":36,"offer_desc":"5% OFF","skuid":"166327","image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","unit_price":"36","offer_id":"166327_0803"}],"orderId":"TM08202203260613014259336","anomaly":0,"order_status":"","userId":"8597643532","imei":"TM08202203","bill_amount":68},"server_status":"invoiceOrder","order_id":"TM08202203260613014259336"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:45:39,182.182 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'anomaly': 0, 'res': True, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'offer_id': '', 'name': 'Farmely Party Mix 21gm per peice', 'door_id': '', 'sku_total': 30, 'qty': 1, 'tray_id': '22', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': '30', 'skuid': '4500707'}, {'offer_id': '166327_0803', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': '', 'mrp': '38', 'qty': '1', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'tray_id': '38', 'offer_desc': '5% OFF', 'unit_price': '36', 'skuid': '166327'}], 'orderId': 'TM08202203260613014259336', 'total_amount': 66, 'order_status': '', 'bill_amount': 68, 'imei': 'TM08202203', 'userId': '8597643532'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:39,183.183 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_response': {'anomaly': 0, 'res': True, 'cart_offer_desc': '', 'rstatus': True, 'skus': [{'offer_id': '', 'name': 'Farmely Party Mix 21gm per peice', 'door_id': '', 'sku_total': 30, 'qty': 1, 'tray_id': '22', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/4500707-9670.jpg', 'unit_price': '30', 'skuid': '4500707'}, {'offer_id': '166327_0803', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'door_id': '', 'mrp': '38', 'qty': '1', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'tray_id': '38', 'offer_desc': '5% OFF', 'unit_price': '36', 'skuid': '166327'}], 'orderId': 'TM08202203260613014259336', 'total_amount': 66, 'order_status': '', 'bill_amount': 68, 'imei': 'TM08202203', 'userId': '8597643532'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613014259336'}}
[2026-06-13 01:45:39,185.185 INFO    ] 2026-06-13 01:45:39
[2026-06-13 01:45:39,761.761 INFO    ] 200
[2026-06-13 01:45:39,764.764 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 01:45:39,767.767 INFO    ] 2026-06-13 01:45:39
[2026-06-13 01:45:39,893.893 INFO    ] 200
[2026-06-13 01:45:39,896.896 INFO    ] True
[2026-06-13 01:45:39,899.899 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613014259336
[2026-06-13 01:45:39,902.902 INFO    ] start order file deleted
[2026-06-13 01:45:39,906.906 INFO    ] Checking for system updates...
[2026-06-13 01:45:39,941.941 INFO    ] 200
[2026-06-13 01:45:39,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:45:39,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:45:40,001.001 INFO    ] No update needed
[2026-06-13 01:45:40,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 01:45:40,039.039 INFO    ] 200
[2026-06-13 01:45:40,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:45:40,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:45:40,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:45:40,135.135 INFO    ] No camera update needed
[2026-06-13 01:45:40,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:45:40,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:45:40,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:45:40,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:45:42,195.195 INFO    ] ================================================
[2026-06-13 01:45:42,212.212 INFO    ] Launching Daemon at Sat Jun 13 01:45:42 IST 2026
[2026-06-13 01:45:42,223.223 INFO    ] ================================================
[2026-06-13 01:45:42,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:45:42
[2026-06-13 01:45:42,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:45:43,081.081 INFO    ] Initializing speech engine...
[2026-06-13 01:45:43,087.087 INFO    ] 2026-06-13 01:45:43
[2026-06-13 01:45:43,295.295 INFO    ] 2026-06-13 01:45:43
[2026-06-13 01:45:43,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:45:43,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:45:43,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:45:43,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:45:43,698.698 INFO    ] time= 13/06/2026 01:45:43
[2026-06-13 01:45:43,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:45:43,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:45:43,815.815 INFO    ] No existing commands found in stream
[2026-06-13 01:45:48,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:45:48,833.833 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 01:45:49,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:45:49,882.882 INFO    ] Checking for system updates...
[2026-06-13 01:45:49,903.903 INFO    ] 200
[2026-06-13 01:45:49,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:45:49,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:45:49,937.937 INFO    ] No update needed
[2026-06-13 01:45:49,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 01:45:49,958.958 INFO    ] 200
[2026-06-13 01:45:49,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:45:49,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:45:50,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:45:50,024.024 INFO    ] No camera update needed
[2026-06-13 01:45:50,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:45:50,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:45:50,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:45:50,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:45:52,065.065 INFO    ] ================================================
[2026-06-13 01:45:52,081.081 INFO    ] Launching Daemon at Sat Jun 13 01:45:52 IST 2026
[2026-06-13 01:45:52,092.092 INFO    ] ================================================
[2026-06-13 01:45:52,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:45:52
[2026-06-13 01:45:52,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:45:52,968.968 INFO    ] Initializing speech engine...
[2026-06-13 01:45:52,973.973 INFO    ] 2026-06-13 01:45:52
[2026-06-13 01:45:53,189.189 INFO    ] 2026-06-13 01:45:53
[2026-06-13 01:45:53,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:45:53,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:45:53,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:45:53,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:45:53,539.539 INFO    ] time= 13/06/2026 01:45:53
[2026-06-13 01:45:53,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:45:53,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:45:53,666.666 INFO    ] No existing commands found in stream
[2026-06-13 01:45:58,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:45:58,681.681 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 01:46:02,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:46:02,193.193 INFO    ] Checking for system updates...
[2026-06-13 01:46:02,218.218 INFO    ] 200
[2026-06-13 01:46:02,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:02,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:46:02,265.265 INFO    ] No update needed
[2026-06-13 01:46:02,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:02,290.290 INFO    ] 200
[2026-06-13 01:46:02,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:02,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:02,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:02,360.360 INFO    ] No camera update needed
[2026-06-13 01:46:02,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:02,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:02,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:04,421.421 INFO    ] ================================================
[2026-06-13 01:46:04,438.438 INFO    ] Launching Daemon at Sat Jun 13 01:46:04 IST 2026
[2026-06-13 01:46:04,449.449 INFO    ] ================================================
[2026-06-13 01:46:04,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:04
[2026-06-13 01:46:05,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:05,291.291 INFO    ] Initializing speech engine...
[2026-06-13 01:46:05,296.296 INFO    ] 2026-06-13 01:46:05
[2026-06-13 01:46:05,500.500 INFO    ] 2026-06-13 01:46:05
[2026-06-13 01:46:05,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:05,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:05,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:05,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:05,917.917 INFO    ] time= 13/06/2026 01:46:05
[2026-06-13 01:46:05,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:05,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:06,040.040 INFO    ] No existing commands found in stream
[2026-06-13 01:46:11,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:46:11,056.056 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 01:46:11,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:46:11,516.516 INFO    ] Checking for system updates...
[2026-06-13 01:46:11,536.536 INFO    ] 200
[2026-06-13 01:46:11,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:11,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:11,571.571 INFO    ] No update needed
[2026-06-13 01:46:11,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:11,592.592 INFO    ] 200
[2026-06-13 01:46:11,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:11,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:11,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:11,662.662 INFO    ] No camera update needed
[2026-06-13 01:46:11,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:11,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:11,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:11,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:13,712.712 INFO    ] ================================================
[2026-06-13 01:46:13,729.729 INFO    ] Launching Daemon at Sat Jun 13 01:46:13 IST 2026
[2026-06-13 01:46:13,739.739 INFO    ] ================================================
[2026-06-13 01:46:14,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:14
[2026-06-13 01:46:14,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:14,507.507 INFO    ] Initializing speech engine...
[2026-06-13 01:46:14,511.511 INFO    ] 2026-06-13 01:46:14
[2026-06-13 01:46:14,720.720 INFO    ] 2026-06-13 01:46:14
[2026-06-13 01:46:14,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:14,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:14,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:15,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:15,165.165 INFO    ] time= 13/06/2026 01:46:15
[2026-06-13 01:46:15,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:15,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:15,305.305 INFO    ] No existing commands found in stream
[2026-06-13 01:46:20,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:46:20,318.318 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 01:46:22,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:46:22,108.108 INFO    ] Checking for system updates...
[2026-06-13 01:46:22,129.129 INFO    ] 200
[2026-06-13 01:46:22,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:22,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:46:22,163.163 INFO    ] No update needed
[2026-06-13 01:46:22,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:22,183.183 INFO    ] 200
[2026-06-13 01:46:22,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:22,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:22,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:46:22,252.252 INFO    ] No camera update needed
[2026-06-13 01:46:22,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:22,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:22,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:22,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:24,300.300 INFO    ] ================================================
[2026-06-13 01:46:24,315.315 INFO    ] Launching Daemon at Sat Jun 13 01:46:24 IST 2026
[2026-06-13 01:46:24,327.327 INFO    ] ================================================
[2026-06-13 01:46:24,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:24
[2026-06-13 01:46:24,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:25,112.112 INFO    ] Initializing speech engine...
[2026-06-13 01:46:25,120.120 INFO    ] 2026-06-13 01:46:25
[2026-06-13 01:46:25,323.323 INFO    ] 2026-06-13 01:46:25
[2026-06-13 01:46:25,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:25,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:25,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:25,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:25,729.729 INFO    ] time= 13/06/2026 01:46:25
[2026-06-13 01:46:25,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:25,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:25,914.914 INFO    ] No existing commands found in stream
[2026-06-13 01:46:30,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:46:30,927.927 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 01:46:32,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:46:32,575.575 INFO    ] Checking for system updates...
[2026-06-13 01:46:32,616.616 INFO    ] 200
[2026-06-13 01:46:32,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:32,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:32,701.701 INFO    ] No update needed
[2026-06-13 01:46:32,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:32,739.739 INFO    ] 200
[2026-06-13 01:46:32,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:32,783.783 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:32,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:32,814.814 INFO    ] No camera update needed
[2026-06-13 01:46:32,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:32,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:32,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:32,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:34,872.872 INFO    ] ================================================
[2026-06-13 01:46:34,889.889 INFO    ] Launching Daemon at Sat Jun 13 01:46:34 IST 2026
[2026-06-13 01:46:34,900.900 INFO    ] ================================================
[2026-06-13 01:46:35,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:35
[2026-06-13 01:46:35,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:35,943.943 INFO    ] Initializing speech engine...
[2026-06-13 01:46:35,951.951 INFO    ] 2026-06-13 01:46:35
[2026-06-13 01:46:36,170.170 INFO    ] 2026-06-13 01:46:36
[2026-06-13 01:46:36,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:36,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:36,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:36,597.597 INFO    ] time= 13/06/2026 01:46:36
[2026-06-13 01:46:36,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:36,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:36,729.729 INFO    ] No existing commands found in stream
[2026-06-13 01:46:41,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:46:41,744.744 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 01:46:42,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:46:42,515.515 INFO    ] Checking for system updates...
[2026-06-13 01:46:42,536.536 INFO    ] 200
[2026-06-13 01:46:42,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:42,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:42,570.570 INFO    ] No update needed
[2026-06-13 01:46:42,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:42,594.594 INFO    ] 200
[2026-06-13 01:46:42,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:42,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:42,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:46:42,656.656 INFO    ] No camera update needed
[2026-06-13 01:46:42,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:42,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:42,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:42,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:44,704.704 INFO    ] ================================================
[2026-06-13 01:46:44,720.720 INFO    ] Launching Daemon at Sat Jun 13 01:46:44 IST 2026
[2026-06-13 01:46:44,732.732 INFO    ] ================================================
[2026-06-13 01:46:45,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:45
[2026-06-13 01:46:45,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:45,592.592 INFO    ] Initializing speech engine...
[2026-06-13 01:46:45,602.602 INFO    ] 2026-06-13 01:46:45
[2026-06-13 01:46:45,812.812 INFO    ] 2026-06-13 01:46:45
[2026-06-13 01:46:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:46,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:46,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:46,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:46,220.220 INFO    ] time= 13/06/2026 01:46:46
[2026-06-13 01:46:46,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:46,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:46,331.331 INFO    ] No existing commands found in stream
[2026-06-13 01:46:51,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:46:51,344.344 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 01:46:52,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:46:52,466.466 INFO    ] Checking for system updates...
[2026-06-13 01:46:52,488.488 INFO    ] 200
[2026-06-13 01:46:52,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:52,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:46:52,522.522 INFO    ] No update needed
[2026-06-13 01:46:52,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 01:46:52,543.543 INFO    ] 200
[2026-06-13 01:46:52,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:46:52,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:46:52,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:46:52,607.607 INFO    ] No camera update needed
[2026-06-13 01:46:52,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:46:52,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:46:52,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:46:52,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:46:54,657.657 INFO    ] ================================================
[2026-06-13 01:46:54,673.673 INFO    ] Launching Daemon at Sat Jun 13 01:46:54 IST 2026
[2026-06-13 01:46:54,685.685 INFO    ] ================================================
[2026-06-13 01:46:55,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:46:55
[2026-06-13 01:46:55,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:46:56,009.009 INFO    ] Initializing speech engine...
[2026-06-13 01:46:56,019.019 INFO    ] 2026-06-13 01:46:56
[2026-06-13 01:46:56,281.281 INFO    ] 2026-06-13 01:46:56
[2026-06-13 01:46:56,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:46:56,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:46:56,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:46:56,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:46:56,634.634 INFO    ] time= 13/06/2026 01:46:56
[2026-06-13 01:46:56,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:46:56,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:46:56,712.712 INFO    ] No existing commands found in stream
[2026-06-13 01:47:01,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:47:01,725.725 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 01:47:05,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:47:05,511.511 INFO    ] Checking for system updates...
[2026-06-13 01:47:05,533.533 INFO    ] 200
[2026-06-13 01:47:05,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:47:05,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:47:05,567.567 INFO    ] No update needed
[2026-06-13 01:47:05,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 01:47:05,588.588 INFO    ] 200
[2026-06-13 01:47:05,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:47:05,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:47:05,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:47:05,649.649 INFO    ] No camera update needed
[2026-06-13 01:47:05,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:47:05,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:47:05,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:47:05,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:47:07,699.699 INFO    ] ================================================
[2026-06-13 01:47:07,715.715 INFO    ] Launching Daemon at Sat Jun 13 01:47:07 IST 2026
[2026-06-13 01:47:07,726.726 INFO    ] ================================================
[2026-06-13 01:47:08,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:47:08
[2026-06-13 01:47:08,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:47:08,610.610 INFO    ] Initializing speech engine...
[2026-06-13 01:47:08,615.615 INFO    ] 2026-06-13 01:47:08
[2026-06-13 01:47:08,823.823 INFO    ] 2026-06-13 01:47:08
[2026-06-13 01:47:08,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:47:09,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:47:09,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:47:09,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:47:09,244.244 INFO    ] time= 13/06/2026 01:47:09
[2026-06-13 01:47:09,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:47:09,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:47:09,342.342 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 01:47:09,367.367 INFO    ] Checking historical command: ID=1781295424270-0
[2026-06-13 01:47:09,369.369 INFO    ] process_and_cleanup_command: msg_id=1781295424270-0
[2026-06-13 01:47:09,395.395 INFO    ] is_command_expired: timestamp=2026-06-12T20:17:03.445Z, expiry=30s
[2026-06-13 01:47:09,481.481 INFO    ] Command removed from stream: 1781295424270-0. returning for processing...
[2026-06-13 01:47:09,484.484 INFO    ] ***** get_valid_command
[2026-06-13 01:47:09,489.489 INFO    ] {'timestamp': '2026-06-12T20:17:03.445Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1781295423445-ipstt9oj8","orderId":"TM08202203260613014618032","is_vending":false}'}
[2026-06-13 01:47:09,494.494 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613014618032', 'is_vending': False, 'request_id': 'start-order-1781295423445-ipstt9oj8'}
[2026-06-13 01:47:09,497.497 INFO    ] Handling start order...
[2026-06-13 01:47:09,501.501 INFO    ] handle_start_order_command
[2026-06-13 01:47:09,508.508 INFO    ] _send_start_order_success: request_id=start-order-1781295423445-ipstt9oj8, order_id=TM08202203260613014618032
[2026-06-13 01:47:09,512.512 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 01:47:09,583.583 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781295429545-0
[2026-06-13 01:47:09,587.587 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 01:47:09,592.592 INFO    ] Checking for system updates...
[2026-06-13 01:47:09,621.621 INFO    ] 200
[2026-06-13 01:47:09,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:47:09,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:47:09,715.715 INFO    ] No update needed
[2026-06-13 01:47:09,733.733 INFO    ] Checking for camera pi updates...
[2026-06-13 01:47:09,763.763 INFO    ] 200
[2026-06-13 01:47:09,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:47:09,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:47:09,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:47:09,892.892 INFO    ] No camera update needed
[2026-06-13 01:47:09,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:47:09,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:47:09,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:47:09,912.912 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 01:47:09,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:47:11,953.953 INFO    ] ================================================
[2026-06-13 01:47:11,968.968 INFO    ] Launching Daemon at Sat Jun 13 01:47:11 IST 2026
[2026-06-13 01:47:11,981.981 INFO    ] ================================================
[2026-06-13 01:47:12,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:47:12
[2026-06-13 01:47:12,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:47:12,803.803 INFO    ] Initializing speech engine...
[2026-06-13 01:47:12,815.815 INFO    ] 2026-06-13 01:47:12
[2026-06-13 01:47:13,026.026 INFO    ] 2026-06-13 01:47:13
[2026-06-13 01:47:13,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:47:13,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:47:13,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:47:13,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:47:13,423.423 INFO    ] time= 13/06/2026 01:47:13
[2026-06-13 01:47:13,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:47:13,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:47:13,547.547 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 01:47:13,572.572 INFO    ] Checking historical command: ID=1781295429545-0
[2026-06-13 01:47:13,574.574 INFO    ] process_and_cleanup_command: msg_id=1781295429545-0
[2026-06-13 01:47:13,600.600 INFO    ] is_command_expired: timestamp=2026-06-12T20:17:09.509601Z, expiry=30s
[2026-06-13 01:47:13,685.685 INFO    ] Command removed from stream: 1781295429545-0. returning for processing...
[2026-06-13 01:47:13,689.689 INFO    ] ***** get_valid_command
[2026-06-13 01:47:13,694.694 INFO    ] {'message_type': 'command_response', 'status': 'success', 'metadata_request_id': 'start-order-1781295423445-ipstt9oj8', 'message': 'start-order success', 'imei': 'TM08202203', 'metadata_order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:09.509601Z'}
[2026-06-13 01:47:13,698.698 INFO    ] Checking historical command: ID=1781295432148-0
[2026-06-13 01:47:13,702.702 INFO    ] process_and_cleanup_command: msg_id=1781295432148-0
[2026-06-13 01:47:13,705.705 INFO    ] is_command_expired: timestamp=2026-06-12T20:17:11.310Z, expiry=30s
[2026-06-13 01:47:13,749.749 INFO    ] Command removed from stream: 1781295432148-0. returning for processing...
[2026-06-13 01:47:13,752.752 INFO    ] ***** get_valid_command
[2026-06-13 01:47:13,755.755 INFO    ] {'data': '{"request_id":"process-order-1781295431310-9r1tlymm9","orderId":"TM08202203260613014618032","is_vending":false,"accessCode":"46992055"}', 'source': 'webapp', 'command': 'process-order', 'timeout': '60', 'timestamp': '2026-06-12T20:17:11.310Z'}
[2026-06-13 01:47:13,758.758 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781295431310-9r1tlymm9', 'orderId': 'TM08202203260613014618032', 'accessCode': '46992055', 'is_vending': False}
[2026-06-13 01:47:13,762.762 INFO    ] Handling process order...
[2026-06-13 01:47:13,765.765 INFO    ] Processing process-order command...
[2026-06-13 01:47:13,770.770 INFO    ] 🔍 Lock file Order ID: TM08202203260613014618032, TS: 2026-06-13 01:47:09
[2026-06-13 01:47:13,779.779 INFO    ] ✅ Order lock valid for TM08202203260613014618032
[2026-06-13 01:47:13,782.782 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 01:47:13,785.785 INFO    ] processing access code 46992055 for order TM08202203260613014618032
[2026-06-13 01:47:13,790.790 INFO    ] 🔍 Lock file Order ID: TM08202203260613014618032, TS: 2026-06-13 01:47:09
[2026-06-13 01:47:13,793.793 INFO    ] ✅ Order lock valid for TM08202203260613014618032
[2026-06-13 01:47:13,796.796 INFO    ] 2026-06-13 01:47:13
[2026-06-13 01:47:13,829.829 INFO    ] 200
[2026-06-13 01:47:13,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:47:13,838.838 INFO    ] 46992055
[2026-06-13 01:47:13,842.842 INFO    ] 2026-06-13 01:47:13
[2026-06-13 01:47:13,847.847 INFO    ] session id :819494825
[2026-06-13 01:47:13,851.851 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=46992055&imei=TM08202203&session_id=819494825
[2026-06-13 01:47:14,607.607 INFO    ] 200
[2026-06-13 01:47:14,609.609 INFO    ] {"data": {"mobile": "8597643532", "order_id": "TM08202203260613014618032", "bill_amount": "10", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "46992055", "invoice_bill": "10"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 01:47:14,611.611 INFO    ] 10
[2026-06-13 01:47:14,612.612 INFO    ] TM08202203260613014618032
[2026-06-13 01:47:14,613.613 INFO    ] 8597643532
[2026-06-13 01:47:14,615.615 INFO    ] 2026-06-13 01:47:14
[2026-06-13 01:47:14,616.616 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 01:47:14,618.618 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 01:47:14,619.619 INFO    ] baf9e0f52a6dacc8cc372b7eeef1b6f7
[2026-06-13 01:47:14,621.621 INFO    ] 2026-06-13 01:47:14
[2026-06-13 01:47:14,622.622 INFO    ] playing audio file
[2026-06-13 01:47:14,632.632 INFO    ] 2026-06-13 01:47:14
[2026-06-13 01:47:14,634.634 INFO    ] 2026-06-13 01:47:14
[2026-06-13 01:47:14,635.635 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:14,637.637 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:14,707.707 INFO    ] [publish_status] Message added to stream with ID: 1781295434673-0
[2026-06-13 01:47:14,709.709 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'order-started', 'server_response': '{"data": {"invoice_bill": "10", "bill_amount": "10", "order_id": "TM08202203260613014618032", "mobile": "8597643532", "proposed_sku_json": [{"offer_id": "", "offer_desc": "", "skuid": "4500687", "tray_id": "23", "qty": 1, "unit_price": 10, "mrp": "10", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "door_id": "1", "name": "Modern Kitchens Potato waffers Spicy 24gm "}], "access_code": "46992055"}, "rstatus": true, "msg": "Order Data", "status": true}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:14.635001Z'} (ID: 1781295434673-0)
[2026-06-13 01:47:15,023.023 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'invoice_bill': '10', 'bill_amount': '10', 'order_id': 'TM08202203260613014618032', 'mobile': '8597643532', 'proposed_sku_json': [{'offer_id': '', 'offer_desc': '', 'skuid': '4500687', 'tray_id': '23', 'qty': 1, 'unit_price': 10, 'mrp': '10', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'door_id': '1', 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'access_code': '46992055'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:15,025.025 INFO    ] 200
[2026-06-13 01:47:15,026.026 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"invoice_bill":"10","bill_amount":"10","order_id":"TM08202203260613014618032","mobile":"8597643532","proposed_sku_json":[{"offer_id":"","offer_desc":"","skuid":"4500687","tray_id":"23","qty":1,"unit_price":10,"mrp":"10","sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","door_id":"1","name":"Modern Kitchens Potato waffers Spicy 24gm "}],"access_code":"46992055"},"rstatus":true,"msg":"Order Data","status":true},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:15,028.028 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'data': {'invoice_bill': '10', 'order_id': 'TM08202203260613014618032', 'bill_amount': '10', 'mobile': '8597643532', 'proposed_sku_json': [{'offer_id': '', 'offer_desc': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'qty': 1, 'unit_price': 10, 'mrp': '10', 'door_id': '1', 'sku_total': 10}], 'access_code': '46992055'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:15,030.030 INFO    ] 2026-06-13 01:47:15
[2026-06-13 01:47:15,055.055 INFO    ] 200
[2026-06-13 01:47:15,056.056 INFO    ] True
[2026-06-13 01:47:15,135.135 INFO    ] 200
[2026-06-13 01:47:15,137.137 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:15,139.139 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 01:47:15,141.141 INFO    ] *** process_order ***
[2026-06-13 01:47:16,320.320 INFO    ] 200
[2026-06-13 01:47:16,323.323 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:47:16,326.326 INFO    ] {'rstatus': True, 'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 01:47:16,329.329 INFO    ] *** process_order ***
[2026-06-13 01:47:16,332.332 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:16,335.335 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:16,420.420 INFO    ] [publish_status] Message added to stream with ID: 1781295436385-0
[2026-06-13 01:47:16,423.423 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "status": "True", "voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613014618032'} (ID: 1781295436385-0)
[2026-06-13 01:47:17,466.466 INFO    ] 2026-06-13 01:47:17
[2026-06-13 01:47:17,470.470 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:17,473.473 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:17,561.561 INFO    ] [publish_status] Message added to stream with ID: 1781295437525-0
[2026-06-13 01:47:17,565.565 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'processOrder', 'server_response': '{"rstatus": true, "delay": 0, "status": "True", "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:17.468440Z'} (ID: 1781295437525-0)
[2026-06-13 01:47:17,684.684 INFO    ] {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:17,687.687 INFO    ] 200
[2026-06-13 01:47:17,690.690 INFO    ] {"data":{"server_status":"processOrder","server_response":{"rstatus":true,"delay":0,"status":"true","voiceNote":"Please Wait","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:17,694.694 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'delay': 0, 'status': 'true', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:17,698.698 INFO    ] 2026-06-13 01:47:17
[2026-06-13 01:47:17,701.701 INFO    ] None
[2026-06-13 01:47:17,705.705 INFO    ] Opening Door now
[2026-06-13 01:47:17,708.708 INFO    ] Opening Door now
[2026-06-13 01:47:17,711.711 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 01:47:17,715.715 INFO    ] 2026-06-13 01:47:17
[2026-06-13 01:47:17,719.719 INFO    ] playing audio file
[2026-06-13 01:47:17,738.738 INFO    ] 2026-06-13 01:47:17
[2026-06-13 01:47:17,742.742 INFO    ] 2026-06-13 01:47:17
[2026-06-13 01:47:20,794.794 INFO    ] 200
[2026-06-13 01:47:20,796.796 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:20,799.799 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:23,887.887 INFO    ] 200
[2026-06-13 01:47:23,890.890 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:23,894.894 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:26,931.931 INFO    ] 200
[2026-06-13 01:47:26,933.933 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:26,935.935 INFO    ] Please close door 1
[2026-06-13 01:47:26,936.936 INFO    ] Please close door 1
[2026-06-13 01:47:26,938.938 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 01:47:26,939.939 INFO    ] 2026-06-13 01:47:26
[2026-06-13 01:47:26,941.941 INFO    ] playing audio file
[2026-06-13 01:47:26,951.951 INFO    ] 2026-06-13 01:47:26
[2026-06-13 01:47:26,954.954 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:26,956.956 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:27,047.047 INFO    ] [publish_status] Message added to stream with ID: 1781295447013-0
[2026-06-13 01:47:27,049.049 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "status": "False", "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:26.952846Z'} (ID: 1781295447013-0)
[2026-06-13 01:47:27,393.393 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:27,395.395 INFO    ] 200
[2026-06-13 01:47:27,397.397 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"status":"false","voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:27,399.399 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'status': 'false', 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:27,401.401 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:30,438.438 INFO    ] 200
[2026-06-13 01:47:30,440.440 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:30,442.442 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:33,484.484 INFO    ] 200
[2026-06-13 01:47:33,486.486 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:33,488.488 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:36,573.573 INFO    ] 200
[2026-06-13 01:47:36,575.575 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:36,578.578 INFO    ] Please close door 1
[2026-06-13 01:47:36,581.581 INFO    ] Please close door 1
[2026-06-13 01:47:36,583.583 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 01:47:36,586.586 INFO    ] 2026-06-13 01:47:36
[2026-06-13 01:47:36,589.589 INFO    ] playing audio file
[2026-06-13 01:47:36,606.606 INFO    ] 2026-06-13 01:47:36
[2026-06-13 01:47:36,610.610 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:36,613.613 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:36,700.700 INFO    ] [publish_status] Message added to stream with ID: 1781295456665-0
[2026-06-13 01:47:36,703.703 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "status": "False", "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:36.608100Z'} (ID: 1781295456665-0)
[2026-06-13 01:47:37,119.119 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:37,122.122 INFO    ] 200
[2026-06-13 01:47:37,124.124 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"status":"false","voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:37,128.128 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'status': 'false', 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:37,131.131 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:40,286.286 INFO    ] 200
[2026-06-13 01:47:40,289.289 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:40,293.293 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:43,334.334 INFO    ] 200
[2026-06-13 01:47:43,335.335 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:43,337.337 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:46,446.446 INFO    ] 200
[2026-06-13 01:47:46,449.449 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:46,452.452 INFO    ] Please close door 1
[2026-06-13 01:47:46,455.455 INFO    ] Please close door 1
[2026-06-13 01:47:46,457.457 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 01:47:46,461.461 INFO    ] 2026-06-13 01:47:46
[2026-06-13 01:47:46,463.463 INFO    ] playing audio file
[2026-06-13 01:47:46,482.482 INFO    ] 2026-06-13 01:47:46
[2026-06-13 01:47:46,486.486 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:46,489.489 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:46,590.590 INFO    ] [publish_status] Message added to stream with ID: 1781295466554-0
[2026-06-13 01:47:46,593.593 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "status": "False", "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:46.484237Z'} (ID: 1781295466554-0)
[2026-06-13 01:47:49,333.333 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:49,334.334 INFO    ] 200
[2026-06-13 01:47:49,336.336 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"status":"false","voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:49,338.338 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'status': 'false', 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:49,340.340 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:52,433.433 INFO    ] 200
[2026-06-13 01:47:52,435.435 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:52,437.437 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:55,495.495 INFO    ] 200
[2026-06-13 01:47:55,497.497 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:55,501.501 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:47:58,600.600 INFO    ] 200
[2026-06-13 01:47:58,603.603 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:47:58,606.606 INFO    ] Please close door 1
[2026-06-13 01:47:58,609.609 INFO    ] Please close door 1
[2026-06-13 01:47:58,612.612 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 01:47:58,615.615 INFO    ] 2026-06-13 01:47:58
[2026-06-13 01:47:58,618.618 INFO    ] playing audio file
[2026-06-13 01:47:58,635.635 INFO    ] 2026-06-13 01:47:58
[2026-06-13 01:47:58,639.639 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:47:58,643.643 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:47:58,708.708 INFO    ] [publish_status] Message added to stream with ID: 1781295478673-0
[2026-06-13 01:47:58,711.711 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "status": "False", "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:17:58.637510Z'} (ID: 1781295478673-0)
[2026-06-13 01:47:59,153.153 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:47:59,155.155 INFO    ] 200
[2026-06-13 01:47:59,158.158 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"status":"false","voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:47:59,161.161 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'status': 'false', 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:47:59,164.164 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:48:02,314.314 INFO    ] 200
[2026-06-13 01:48:02,316.316 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:48:02,320.320 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:48:05,384.384 INFO    ] 200
[2026-06-13 01:48:05,387.387 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 01:48:05,390.390 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 01:48:08,467.467 INFO    ] 200
[2026-06-13 01:48:08,469.469 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 01:48:08,478.478 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:48:08,481.481 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:48:08,568.568 INFO    ] [publish_status] Message added to stream with ID: 1781295488533-0
[2026-06-13 01:48:08,571.571 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'OrderStatus', 'server_response': '{"rstatus": true, "delay": 100, "status": "True", "voiceNote": "Transaction Completed", "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete "}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "SectionMain": {"Header": "Door Closed"}}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:18:08.471324Z'} (ID: 1781295488533-0)
[2026-06-13 01:48:08,966.966 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:48:08,969.969 INFO    ] 200
[2026-06-13 01:48:08,971.971 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"rstatus":true,"delay":100,"status":"true","voiceNote":"Transaction Completed","SectionStatus":{"SubHeader":"Please wait for invoice to generate","UI_Header":"","Note":"If any due amount, clear at https:\/\/go.tinymart.in","Header":" Order is complete "},"SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"SectionMain":{"Header":"Door Closed"}},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:48:08,975.975 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'delay': 100, 'status': 'true', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:48:08,978.978 INFO    ] {'rstatus': True, 'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 01:48:08,980.980 INFO    ] 2026-06-13 01:48:08
[2026-06-13 01:48:08,983.983 INFO    ] Order Completed 
[2026-06-13 01:48:08,985.985 INFO    ] Order Completed 
[2026-06-13 01:48:08,988.988 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 01:48:08,991.991 INFO    ] 2026-06-13 01:48:08
[2026-06-13 01:48:08,994.994 INFO    ] playing audio file
[2026-06-13 01:48:09,011.011 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,015.015 INFO    ] {'rstatus': True, 'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 01:48:09,017.017 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,488.488 INFO    ] 200
[2026-06-13 01:48:09,491.491 INFO    ] {"res": "True", "orderId": "TM08202203260613014618032", "skus": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 10.0}
[2026-06-13 01:48:09,493.493 INFO    ] {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'skuid': '4500687', 'tray_id': '23', 'qty': 1, 'unit_price': '10', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 10.0}], 'orderId': 'TM08202203260613014618032', 'total_amount': 10.0, 'logic': 'WBL'}
[2026-06-13 01:48:09,496.496 INFO    ] {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'skuid': '4500687', 'tray_id': '23', 'qty': 1, 'unit_price': '10', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 10.0}], 'orderId': 'TM08202203260613014618032', 'total_amount': 10.0, 'logic': 'WBL'}
[2026-06-13 01:48:09,499.499 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,501.501 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,503.503 INFO    ] 10
[2026-06-13 01:48:09,506.506 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,508.508 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,511.511 INFO    ]  Your Bill Amount is 10
[2026-06-13 01:48:09,513.513 INFO    ]  Your Bill Amount is 10
[2026-06-13 01:48:09,515.515 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-13 01:48:09,517.517 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,520.520 INFO    ] playing audio file
[2026-06-13 01:48:09,537.537 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,541.541 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:09,544.544 INFO    ] publish_status: order_id=TM08202203260613014618032
[2026-06-13 01:48:09,547.547 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613014618032
[2026-06-13 01:48:09,607.607 INFO    ] [publish_status] Message added to stream with ID: 1781295489572-0
[2026-06-13 01:48:09,610.610 INFO    ] Published to order:TM08202203260613014618032: {'server_status': 'invoiceOrder', 'server_response': '{"rstatus": true, "res": "True", "anomaly": 0, "skus": [{"door_id": "", "skuid": "4500687", "tray_id": "23", "qty": 1, "unit_price": "10", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "sku_total": 10.0}], "orderId": "TM08202203260613014618032", "total_amount": 10.0, "logic": "WBL"}', 'order_id': 'TM08202203260613014618032', 'timestamp': '2026-06-12T20:18:09.542768Z'} (ID: 1781295489572-0)
[2026-06-13 01:48:09,736.736 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'door_id': '', 'skuid': '4500687', 'tray_id': '23', 'qty': 1, 'unit_price': '10', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 10.0}], 'orderId': 'TM08202203260613014618032', 'total_amount': 10.0, 'logic': 'WBL'}, 'order_id': 'TM08202203260613014618032'}
[2026-06-13 01:48:09,739.739 INFO    ] 200
[2026-06-13 01:48:09,741.741 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"rstatus":true,"res":"true","anomaly":0,"skus":[{"door_id":"","skuid":"4500687","tray_id":"23","qty":1,"unit_price":"10","mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","sku_total":10}],"orderId":"TM08202203260613014618032","total_amount":10,"logic":"WBL"},"order_id":"TM08202203260613014618032"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 01:48:09,744.744 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'anomaly': 0, 'skus': [{'door_id': '', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'qty': 1, 'sku_total': 10, 'unit_price': '10', 'mrp': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice'}], 'orderId': 'TM08202203260613014618032', 'total_amount': 10, 'logic': 'WBL'}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:48:09,747.747 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'anomaly': 0, 'skus': [{'door_id': '', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'qty': 1, 'sku_total': 10, 'unit_price': '10', 'mrp': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice'}], 'orderId': 'TM08202203260613014618032', 'total_amount': 10, 'logic': 'WBL'}, 'order_id': 'TM08202203260613014618032'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 01:48:09,750.750 INFO    ] 2026-06-13 01:48:09
[2026-06-13 01:48:11,747.747 INFO    ] 200
[2026-06-13 01:48:11,750.750 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032", "TM08202203260613014618032"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 01:48:11,753.753 INFO    ] 2026-06-13 01:48:11
[2026-06-13 01:48:11,855.855 INFO    ] 200
[2026-06-13 01:48:11,858.858 INFO    ] True
[2026-06-13 01:48:11,860.860 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613014618032
[2026-06-13 01:48:11,864.864 INFO    ] start order file deleted
[2026-06-13 01:48:11,868.868 INFO    ] Checking for system updates...
[2026-06-13 01:48:11,904.904 INFO    ] 200
[2026-06-13 01:48:11,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:11,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:11,964.964 INFO    ] No update needed
[2026-06-13 01:48:11,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 01:48:12,000.000 INFO    ] 200
[2026-06-13 01:48:12,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:12,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:48:12,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:12,136.136 INFO    ] No camera update needed
[2026-06-13 01:48:12,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:48:12,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:48:12,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:48:12,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:48:14,193.193 INFO    ] ================================================
[2026-06-13 01:48:14,209.209 INFO    ] Launching Daemon at Sat Jun 13 01:48:14 IST 2026
[2026-06-13 01:48:14,220.220 INFO    ] ================================================
[2026-06-13 01:48:14,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:48:14
[2026-06-13 01:48:14,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:48:14,995.995 INFO    ] Initializing speech engine...
[2026-06-13 01:48:15,000.000 INFO    ] 2026-06-13 01:48:14
[2026-06-13 01:48:15,220.220 INFO    ] 2026-06-13 01:48:15
[2026-06-13 01:48:15,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:48:15,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:48:15,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:48:15,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:48:15,632.632 INFO    ] time= 13/06/2026 01:48:15
[2026-06-13 01:48:15,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:48:15,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:48:15,746.746 INFO    ] No existing commands found in stream
[2026-06-13 01:48:20,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:48:20,757.757 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 01:48:22,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:48:22,825.825 INFO    ] Checking for system updates...
[2026-06-13 01:48:22,846.846 INFO    ] 200
[2026-06-13 01:48:22,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:22,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:22,879.879 INFO    ] No update needed
[2026-06-13 01:48:22,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 01:48:22,900.900 INFO    ] 200
[2026-06-13 01:48:22,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:22,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:48:22,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:22,976.976 INFO    ] No camera update needed
[2026-06-13 01:48:22,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:48:22,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:48:22,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:48:22,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:48:25,022.022 INFO    ] ================================================
[2026-06-13 01:48:25,041.041 INFO    ] Launching Daemon at Sat Jun 13 01:48:25 IST 2026
[2026-06-13 01:48:25,053.053 INFO    ] ================================================
[2026-06-13 01:48:25,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:48:25
[2026-06-13 01:48:25,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:48:25,859.859 INFO    ] Initializing speech engine...
[2026-06-13 01:48:25,864.864 INFO    ] 2026-06-13 01:48:25
[2026-06-13 01:48:26,068.068 INFO    ] 2026-06-13 01:48:26
[2026-06-13 01:48:26,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:48:26,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:48:26,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:48:26,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:48:26,471.471 INFO    ] time= 13/06/2026 01:48:26
[2026-06-13 01:48:26,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:48:26,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:48:26,581.581 INFO    ] No existing commands found in stream
[2026-06-13 01:48:31,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:48:31,598.598 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 01:48:32,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:48:32,549.549 INFO    ] Checking for system updates...
[2026-06-13 01:48:32,571.571 INFO    ] 200
[2026-06-13 01:48:32,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:32,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:32,609.609 INFO    ] No update needed
[2026-06-13 01:48:32,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 01:48:32,638.638 INFO    ] 200
[2026-06-13 01:48:32,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:32,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:48:32,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:32,721.721 INFO    ] No camera update needed
[2026-06-13 01:48:32,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:48:32,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:48:32,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:48:32,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:48:34,767.767 INFO    ] ================================================
[2026-06-13 01:48:34,782.782 INFO    ] Launching Daemon at Sat Jun 13 01:48:34 IST 2026
[2026-06-13 01:48:34,793.793 INFO    ] ================================================
[2026-06-13 01:48:35,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:48:35
[2026-06-13 01:48:35,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:48:35,639.639 INFO    ] Initializing speech engine...
[2026-06-13 01:48:35,644.644 INFO    ] 2026-06-13 01:48:35
[2026-06-13 01:48:35,852.852 INFO    ] 2026-06-13 01:48:35
[2026-06-13 01:48:35,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:48:36,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:48:36,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:48:36,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:48:36,272.272 INFO    ] time= 13/06/2026 01:48:36
[2026-06-13 01:48:36,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:48:36,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:48:36,389.389 INFO    ] No existing commands found in stream
[2026-06-13 01:48:41,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:48:41,407.407 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 01:48:45,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:48:45,397.397 INFO    ] Checking for system updates...
[2026-06-13 01:48:45,420.420 INFO    ] 200
[2026-06-13 01:48:45,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:45,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:45,455.455 INFO    ] No update needed
[2026-06-13 01:48:45,457.457 INFO    ] Checking for camera pi updates...
[2026-06-13 01:48:45,477.477 INFO    ] 200
[2026-06-13 01:48:45,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:45,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:48:45,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:45,549.549 INFO    ] No camera update needed
[2026-06-13 01:48:45,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:48:45,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:48:45,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:48:45,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:48:47,608.608 INFO    ] ================================================
[2026-06-13 01:48:47,625.625 INFO    ] Launching Daemon at Sat Jun 13 01:48:47 IST 2026
[2026-06-13 01:48:47,636.636 INFO    ] ================================================
[2026-06-13 01:48:48,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:48:48
[2026-06-13 01:48:48,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:48:48,826.826 INFO    ] Initializing speech engine...
[2026-06-13 01:48:48,837.837 INFO    ] 2026-06-13 01:48:48
[2026-06-13 01:48:49,055.055 INFO    ] 2026-06-13 01:48:49
[2026-06-13 01:48:49,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:48:49,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:48:49,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:48:49,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:48:49,423.423 INFO    ] time= 13/06/2026 01:48:49
[2026-06-13 01:48:49,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:48:49,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:48:49,594.594 INFO    ] No existing commands found in stream
[2026-06-13 01:48:54,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:48:54,606.606 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 01:48:55,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:48:55,121.121 INFO    ] Checking for system updates...
[2026-06-13 01:48:55,143.143 INFO    ] 200
[2026-06-13 01:48:55,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:55,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:55,190.190 INFO    ] No update needed
[2026-06-13 01:48:55,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 01:48:55,210.210 INFO    ] 200
[2026-06-13 01:48:55,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:48:55,236.236 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:48:55,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:48:55,275.275 INFO    ] No camera update needed
[2026-06-13 01:48:55,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:48:55,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:48:55,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:48:55,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:48:57,324.324 INFO    ] ================================================
[2026-06-13 01:48:57,340.340 INFO    ] Launching Daemon at Sat Jun 13 01:48:57 IST 2026
[2026-06-13 01:48:57,351.351 INFO    ] ================================================
[2026-06-13 01:48:57,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:48:57
[2026-06-13 01:48:58,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:48:58,150.150 INFO    ] Initializing speech engine...
[2026-06-13 01:48:58,155.155 INFO    ] 2026-06-13 01:48:58
[2026-06-13 01:48:58,360.360 INFO    ] 2026-06-13 01:48:58
[2026-06-13 01:48:58,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:48:58,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:48:58,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:48:58,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:48:58,750.750 INFO    ] time= 13/06/2026 01:48:58
[2026-06-13 01:48:58,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:48:58,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:48:58,890.890 INFO    ] No existing commands found in stream
[2026-06-13 01:49:03,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:03,921.921 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 01:49:06,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:49:06,918.918 INFO    ] Checking for system updates...
[2026-06-13 01:49:06,939.939 INFO    ] 200
[2026-06-13 01:49:06,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:06,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:06,972.972 INFO    ] No update needed
[2026-06-13 01:49:06,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 01:49:06,993.993 INFO    ] 200
[2026-06-13 01:49:06,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:07,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:49:07,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:07,160.160 INFO    ] No camera update needed
[2026-06-13 01:49:07,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:49:07,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:49:07,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:49:07,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:49:09,209.209 INFO    ] ================================================
[2026-06-13 01:49:09,225.225 INFO    ] Launching Daemon at Sat Jun 13 01:49:09 IST 2026
[2026-06-13 01:49:09,237.237 INFO    ] ================================================
[2026-06-13 01:49:09,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:49:09
[2026-06-13 01:49:10,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:49:10,310.310 INFO    ] Initializing speech engine...
[2026-06-13 01:49:10,325.325 INFO    ] 2026-06-13 01:49:10
[2026-06-13 01:49:10,619.619 INFO    ] 2026-06-13 01:49:10
[2026-06-13 01:49:10,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:49:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:49:10,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:49:10,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:49:10,968.968 INFO    ] time= 13/06/2026 01:49:10
[2026-06-13 01:49:10,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:49:10,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:49:11,101.101 INFO    ] No existing commands found in stream
[2026-06-13 01:49:16,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:16,116.116 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 01:49:19,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:49:19,595.595 INFO    ] Checking for system updates...
[2026-06-13 01:49:19,616.616 INFO    ] 200
[2026-06-13 01:49:19,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:19,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:19,649.649 INFO    ] No update needed
[2026-06-13 01:49:19,651.651 INFO    ] Checking for camera pi updates...
[2026-06-13 01:49:19,670.670 INFO    ] 200
[2026-06-13 01:49:19,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:19,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:49:19,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:19,747.747 INFO    ] No camera update needed
[2026-06-13 01:49:19,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:49:19,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:49:19,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:49:19,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:49:21,794.794 INFO    ] ================================================
[2026-06-13 01:49:21,809.809 INFO    ] Launching Daemon at Sat Jun 13 01:49:21 IST 2026
[2026-06-13 01:49:21,820.820 INFO    ] ================================================
[2026-06-13 01:49:22,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:49:22
[2026-06-13 01:49:22,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:49:22,629.629 INFO    ] Initializing speech engine...
[2026-06-13 01:49:22,635.635 INFO    ] 2026-06-13 01:49:22
[2026-06-13 01:49:22,839.839 INFO    ] 2026-06-13 01:49:22
[2026-06-13 01:49:22,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:49:23,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:49:23,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:49:23,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:49:23,251.251 INFO    ] time= 13/06/2026 01:49:23
[2026-06-13 01:49:23,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:49:23,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:49:23,355.355 INFO    ] No existing commands found in stream
[2026-06-13 01:49:28,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:28,369.369 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 01:49:29,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:49:29,643.643 INFO    ] Checking for system updates...
[2026-06-13 01:49:29,673.673 INFO    ] 200
[2026-06-13 01:49:29,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:29,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:29,712.712 INFO    ] No update needed
[2026-06-13 01:49:29,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 01:49:29,734.734 INFO    ] 200
[2026-06-13 01:49:29,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:29,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:49:29,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:29,800.800 INFO    ] No camera update needed
[2026-06-13 01:49:29,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:49:29,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:49:29,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:49:29,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:49:31,840.840 INFO    ] ================================================
[2026-06-13 01:49:31,851.851 INFO    ] Launching Daemon at Sat Jun 13 01:49:31 IST 2026
[2026-06-13 01:49:31,858.858 INFO    ] ================================================
[2026-06-13 01:49:32,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:49:32
[2026-06-13 01:49:32,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:49:33,169.169 INFO    ] Initializing speech engine...
[2026-06-13 01:49:33,183.183 INFO    ] 2026-06-13 01:49:33
[2026-06-13 01:49:33,451.451 INFO    ] 2026-06-13 01:49:33
[2026-06-13 01:49:33,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:49:33,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:49:33,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:49:33,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:49:33,785.785 INFO    ] time= 13/06/2026 01:49:33
[2026-06-13 01:49:33,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:49:33,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:49:33,895.895 INFO    ] No existing commands found in stream
[2026-06-13 01:49:38,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:38,911.911 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 01:49:40,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:49:40,954.954 INFO    ] Checking for system updates...
[2026-06-13 01:49:40,975.975 INFO    ] 200
[2026-06-13 01:49:40,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:41,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:41,012.012 INFO    ] No update needed
[2026-06-13 01:49:41,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 01:49:41,033.033 INFO    ] 200
[2026-06-13 01:49:41,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:41,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:49:41,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:41,096.096 INFO    ] No camera update needed
[2026-06-13 01:49:41,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:49:41,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:49:41,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:49:41,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:49:43,144.144 INFO    ] ================================================
[2026-06-13 01:49:43,159.159 INFO    ] Launching Daemon at Sat Jun 13 01:49:43 IST 2026
[2026-06-13 01:49:43,170.170 INFO    ] ================================================
[2026-06-13 01:49:43,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:49:43
[2026-06-13 01:49:43,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:49:44,009.009 INFO    ] Initializing speech engine...
[2026-06-13 01:49:44,015.015 INFO    ] 2026-06-13 01:49:44
[2026-06-13 01:49:44,219.219 INFO    ] 2026-06-13 01:49:44
[2026-06-13 01:49:44,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:49:44,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:49:44,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:49:44,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:49:44,624.624 INFO    ] time= 13/06/2026 01:49:44
[2026-06-13 01:49:44,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:49:44,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:49:44,734.734 INFO    ] No existing commands found in stream
[2026-06-13 01:49:49,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:49,747.747 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 01:49:50,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:49:50,134.134 INFO    ] Checking for system updates...
[2026-06-13 01:49:50,155.155 INFO    ] 200
[2026-06-13 01:49:50,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:50,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:50,189.189 INFO    ] No update needed
[2026-06-13 01:49:50,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 01:49:50,210.210 INFO    ] 200
[2026-06-13 01:49:50,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:49:50,237.237 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:49:50,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:49:50,275.275 INFO    ] No camera update needed
[2026-06-13 01:49:50,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:49:50,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:49:50,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:49:50,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:49:52,324.324 INFO    ] ================================================
[2026-06-13 01:49:52,339.339 INFO    ] Launching Daemon at Sat Jun 13 01:49:52 IST 2026
[2026-06-13 01:49:52,350.350 INFO    ] ================================================
[2026-06-13 01:49:52,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:49:52
[2026-06-13 01:49:53,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:49:53,175.175 INFO    ] Initializing speech engine...
[2026-06-13 01:49:53,185.185 INFO    ] 2026-06-13 01:49:53
[2026-06-13 01:49:53,389.389 INFO    ] 2026-06-13 01:49:53
[2026-06-13 01:49:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:49:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:49:53,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:49:53,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:49:53,781.781 INFO    ] time= 13/06/2026 01:49:53
[2026-06-13 01:49:53,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:49:53,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:49:53,902.902 INFO    ] No existing commands found in stream
[2026-06-13 01:49:58,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:49:58,919.919 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 01:50:01,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:50:01,007.007 INFO    ] Checking for system updates...
[2026-06-13 01:50:01,029.029 INFO    ] 200
[2026-06-13 01:50:01,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:01,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:50:01,065.065 INFO    ] No update needed
[2026-06-13 01:50:01,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 01:50:01,086.086 INFO    ] 200
[2026-06-13 01:50:01,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:01,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:50:01,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:50:01,147.147 INFO    ] No camera update needed
[2026-06-13 01:50:01,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:50:01,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:50:01,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:50:01,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:50:03,182.182 INFO    ] ================================================
[2026-06-13 01:50:03,190.190 INFO    ] Launching Daemon at Sat Jun 13 01:50:03 IST 2026
[2026-06-13 01:50:03,196.196 INFO    ] ================================================
[2026-06-13 01:50:03,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:50:03
[2026-06-13 01:50:03,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:50:03,954.954 INFO    ] Initializing speech engine...
[2026-06-13 01:50:03,960.960 INFO    ] 2026-06-13 01:50:03
[2026-06-13 01:50:04,163.163 INFO    ] 2026-06-13 01:50:04
[2026-06-13 01:50:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:50:04,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:50:04,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:50:04,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:50:04,393.393 INFO    ] time= 13/06/2026 01:50:04
[2026-06-13 01:50:04,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:50:04,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:50:04,474.474 INFO    ] No existing commands found in stream
[2026-06-13 01:50:09,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:50:09,501.501 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 01:50:11,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:50:11,695.695 INFO    ] Checking for system updates...
[2026-06-13 01:50:11,737.737 INFO    ] 200
[2026-06-13 01:50:11,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:11,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:50:11,799.799 INFO    ] No update needed
[2026-06-13 01:50:11,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 01:50:11,840.840 INFO    ] 200
[2026-06-13 01:50:11,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:11,889.889 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:50:11,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:50:11,935.935 INFO    ] No camera update needed
[2026-06-13 01:50:11,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:50:11,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:50:11,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:50:11,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:50:13,991.991 INFO    ] ================================================
[2026-06-13 01:50:14,006.006 INFO    ] Launching Daemon at Sat Jun 13 01:50:14 IST 2026
[2026-06-13 01:50:14,016.016 INFO    ] ================================================
[2026-06-13 01:50:14,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:50:14
[2026-06-13 01:50:14,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:50:14,894.894 INFO    ] Initializing speech engine...
[2026-06-13 01:50:14,898.898 INFO    ] 2026-06-13 01:50:14
[2026-06-13 01:50:15,104.104 INFO    ] 2026-06-13 01:50:15
[2026-06-13 01:50:15,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:50:15,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:50:15,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:50:15,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:50:15,526.526 INFO    ] time= 13/06/2026 01:50:15
[2026-06-13 01:50:15,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:50:15,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:50:15,622.622 INFO    ] No existing commands found in stream
[2026-06-13 01:50:20,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:50:20,657.657 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 01:50:25,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:50:25,025.025 INFO    ] Checking for system updates...
[2026-06-13 01:50:25,046.046 INFO    ] 200
[2026-06-13 01:50:25,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:25,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:50:25,083.083 INFO    ] No update needed
[2026-06-13 01:50:25,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 01:50:25,111.111 INFO    ] 200
[2026-06-13 01:50:25,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:25,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:50:25,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:50:25,183.183 INFO    ] No camera update needed
[2026-06-13 01:50:25,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:50:25,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:50:25,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:50:25,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:50:27,231.231 INFO    ] ================================================
[2026-06-13 01:50:27,246.246 INFO    ] Launching Daemon at Sat Jun 13 01:50:27 IST 2026
[2026-06-13 01:50:27,257.257 INFO    ] ================================================
[2026-06-13 01:50:27,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:50:27
[2026-06-13 01:50:27,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:50:28,108.108 INFO    ] Initializing speech engine...
[2026-06-13 01:50:28,113.113 INFO    ] 2026-06-13 01:50:28
[2026-06-13 01:50:28,319.319 INFO    ] 2026-06-13 01:50:28
[2026-06-13 01:50:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:50:28,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:50:28,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:50:28,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:50:28,716.716 INFO    ] time= 13/06/2026 01:50:28
[2026-06-13 01:50:28,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:50:28,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:50:28,942.942 INFO    ] No existing commands found in stream
[2026-06-13 01:50:33,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:50:33,965.965 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 01:50:37,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:50:37,156.156 INFO    ] Checking for system updates...
[2026-06-13 01:50:37,177.177 INFO    ] 200
[2026-06-13 01:50:37,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:37,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:50:37,210.210 INFO    ] No update needed
[2026-06-13 01:50:37,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 01:50:37,231.231 INFO    ] 200
[2026-06-13 01:50:37,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:37,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:50:37,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:50:37,292.292 INFO    ] No camera update needed
[2026-06-13 01:50:37,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:50:37,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:50:37,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:50:37,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:50:39,339.339 INFO    ] ================================================
[2026-06-13 01:50:39,354.354 INFO    ] Launching Daemon at Sat Jun 13 01:50:39 IST 2026
[2026-06-13 01:50:39,365.365 INFO    ] ================================================
[2026-06-13 01:50:39,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:50:39
[2026-06-13 01:50:40,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:50:40,168.168 INFO    ] Initializing speech engine...
[2026-06-13 01:50:40,173.173 INFO    ] 2026-06-13 01:50:40
[2026-06-13 01:50:40,379.379 INFO    ] 2026-06-13 01:50:40
[2026-06-13 01:50:40,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:50:40,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:50:40,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:50:40,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:50:40,733.733 INFO    ] time= 13/06/2026 01:50:40
[2026-06-13 01:50:40,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:50:40,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:50:40,846.846 INFO    ] No existing commands found in stream
[2026-06-13 01:50:45,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:50:45,862.862 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 01:50:47,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:50:47,338.338 INFO    ] Checking for system updates...
[2026-06-13 01:50:47,359.359 INFO    ] 200
[2026-06-13 01:50:47,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:47,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:50:47,393.393 INFO    ] No update needed
[2026-06-13 01:50:47,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 01:50:47,414.414 INFO    ] 200
[2026-06-13 01:50:47,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:50:47,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:50:47,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:50:47,481.481 INFO    ] No camera update needed
[2026-06-13 01:50:47,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:50:47,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:50:47,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:50:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:50:49,529.529 INFO    ] ================================================
[2026-06-13 01:50:49,544.544 INFO    ] Launching Daemon at Sat Jun 13 01:50:49 IST 2026
[2026-06-13 01:50:49,556.556 INFO    ] ================================================
[2026-06-13 01:50:49,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:50:49
[2026-06-13 01:50:50,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:50:50,347.347 INFO    ] Initializing speech engine...
[2026-06-13 01:50:50,352.352 INFO    ] 2026-06-13 01:50:50
[2026-06-13 01:50:50,568.568 INFO    ] 2026-06-13 01:50:50
[2026-06-13 01:50:50,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:50:50,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:50:50,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:50:50,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:50:51,030.030 INFO    ] time= 13/06/2026 01:50:50
[2026-06-13 01:50:51,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:50:51,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:50:51,263.263 INFO    ] No existing commands found in stream
[2026-06-13 01:50:56,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:50:56,290.290 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 01:51:00,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:51:00,454.454 INFO    ] Checking for system updates...
[2026-06-13 01:51:00,475.475 INFO    ] 200
[2026-06-13 01:51:00,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:00,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:00,508.508 INFO    ] No update needed
[2026-06-13 01:51:00,509.509 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:00,531.531 INFO    ] 200
[2026-06-13 01:51:00,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:00,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:51:00,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:00,595.595 INFO    ] No camera update needed
[2026-06-13 01:51:00,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:00,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:00,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:00,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:02,637.637 INFO    ] ================================================
[2026-06-13 01:51:02,652.652 INFO    ] Launching Daemon at Sat Jun 13 01:51:02 IST 2026
[2026-06-13 01:51:02,663.663 INFO    ] ================================================
[2026-06-13 01:51:03,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:03
[2026-06-13 01:51:03,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:04,069.069 INFO    ] Initializing speech engine...
[2026-06-13 01:51:04,076.076 INFO    ] 2026-06-13 01:51:04
[2026-06-13 01:51:04,376.376 INFO    ] 2026-06-13 01:51:04
[2026-06-13 01:51:04,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:04,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:04,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:04,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:04,735.735 INFO    ] time= 13/06/2026 01:51:04
[2026-06-13 01:51:04,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:04,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:51:04,816.816 INFO    ] No existing commands found in stream
[2026-06-13 01:51:09,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:51:09,828.828 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 01:51:11,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:51:11,971.971 INFO    ] Checking for system updates...
[2026-06-13 01:51:11,992.992 INFO    ] 200
[2026-06-13 01:51:11,993.993 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:11,994.994 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 01:51:11,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:12,019.019 INFO    ] 200
[2026-06-13 01:51:12,020.020 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:12,022.022 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 01:51:12,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:12,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:12,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:12,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:14,069.069 INFO    ] ================================================
[2026-06-13 01:51:14,085.085 INFO    ] Launching Daemon at Sat Jun 13 01:51:14 IST 2026
[2026-06-13 01:51:14,095.095 INFO    ] ================================================
[2026-06-13 01:51:14,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:14
[2026-06-13 01:51:14,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:14,904.904 INFO    ] Initializing speech engine...
[2026-06-13 01:51:14,907.907 INFO    ] 2026-06-13 01:51:14
[2026-06-13 01:51:15,140.140 INFO    ] 2026-06-13 01:51:15
[2026-06-13 01:51:15,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:15,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:15,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:15,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:15,561.561 INFO    ] time= 13/06/2026 01:51:15
[2026-06-13 01:51:15,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:15,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:51:15,708.708 INFO    ] No existing commands found in stream
[2026-06-13 01:51:20,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:51:20,721.721 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 01:51:21,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:51:21,606.606 INFO    ] Checking for system updates...
[2026-06-13 01:51:21,629.629 INFO    ] 200
[2026-06-13 01:51:21,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:21,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:21,662.662 INFO    ] No update needed
[2026-06-13 01:51:21,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:21,683.683 INFO    ] 200
[2026-06-13 01:51:21,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:21,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:51:21,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:21,848.848 INFO    ] No camera update needed
[2026-06-13 01:51:21,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:21,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:21,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:21,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:23,894.894 INFO    ] ================================================
[2026-06-13 01:51:23,910.910 INFO    ] Launching Daemon at Sat Jun 13 01:51:23 IST 2026
[2026-06-13 01:51:23,921.921 INFO    ] ================================================
[2026-06-13 01:51:24,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:24
[2026-06-13 01:51:24,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:24,740.740 INFO    ] Initializing speech engine...
[2026-06-13 01:51:24,744.744 INFO    ] 2026-06-13 01:51:24
[2026-06-13 01:51:24,951.951 INFO    ] 2026-06-13 01:51:24
[2026-06-13 01:51:24,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:25,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:25,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:25,350.350 INFO    ] time= 13/06/2026 01:51:25
[2026-06-13 01:51:25,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:25,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:51:25,465.465 INFO    ] No existing commands found in stream
[2026-06-13 01:51:30,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:51:30,482.482 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 01:51:33,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:51:33,999.999 INFO    ] Checking for system updates...
[2026-06-13 01:51:34,021.021 INFO    ] 200
[2026-06-13 01:51:34,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:34,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:34,057.057 INFO    ] No update needed
[2026-06-13 01:51:34,059.059 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:34,079.079 INFO    ] 200
[2026-06-13 01:51:34,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:34,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:51:34,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:34,142.142 INFO    ] No camera update needed
[2026-06-13 01:51:34,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:34,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:34,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:34,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:36,191.191 INFO    ] ================================================
[2026-06-13 01:51:36,206.206 INFO    ] Launching Daemon at Sat Jun 13 01:51:36 IST 2026
[2026-06-13 01:51:36,217.217 INFO    ] ================================================
[2026-06-13 01:51:36,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:36
[2026-06-13 01:51:36,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:37,059.059 INFO    ] Initializing speech engine...
[2026-06-13 01:51:37,063.063 INFO    ] 2026-06-13 01:51:37
[2026-06-13 01:51:37,272.272 INFO    ] 2026-06-13 01:51:37
[2026-06-13 01:51:37,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:37,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:37,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:37,693.693 INFO    ] time= 13/06/2026 01:51:37
[2026-06-13 01:51:37,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:37,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:51:37,791.791 INFO    ] No existing commands found in stream
[2026-06-13 01:51:42,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:51:42,804.804 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 01:51:46,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:51:46,524.524 INFO    ] Checking for system updates...
[2026-06-13 01:51:46,544.544 INFO    ] 200
[2026-06-13 01:51:46,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:46,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:46,580.580 INFO    ] No update needed
[2026-06-13 01:51:46,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:46,604.604 INFO    ] 200
[2026-06-13 01:51:46,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:46,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:51:46,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:46,671.671 INFO    ] No camera update needed
[2026-06-13 01:51:46,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:46,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:46,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:46,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:48,719.719 INFO    ] ================================================
[2026-06-13 01:51:48,734.734 INFO    ] Launching Daemon at Sat Jun 13 01:51:48 IST 2026
[2026-06-13 01:51:48,745.745 INFO    ] ================================================
[2026-06-13 01:51:49,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:49
[2026-06-13 01:51:49,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:49,528.528 INFO    ] Initializing speech engine...
[2026-06-13 01:51:49,533.533 INFO    ] 2026-06-13 01:51:49
[2026-06-13 01:51:49,738.738 INFO    ] 2026-06-13 01:51:49
[2026-06-13 01:51:49,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:49,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:49,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:50,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:50,137.137 INFO    ] time= 13/06/2026 01:51:50
[2026-06-13 01:51:50,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:50,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:51:50,275.275 INFO    ] No existing commands found in stream
[2026-06-13 01:51:55,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:51:55,286.286 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 01:51:56,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:51:56,219.219 INFO    ] Checking for system updates...
[2026-06-13 01:51:56,244.244 INFO    ] 200
[2026-06-13 01:51:56,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:56,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:56,286.286 INFO    ] No update needed
[2026-06-13 01:51:56,288.288 INFO    ] Checking for camera pi updates...
[2026-06-13 01:51:56,312.312 INFO    ] 200
[2026-06-13 01:51:56,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:51:56,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:51:56,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:51:56,388.388 INFO    ] No camera update needed
[2026-06-13 01:51:56,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:51:56,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:51:56,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:51:56,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:51:58,432.432 INFO    ] ================================================
[2026-06-13 01:51:58,449.449 INFO    ] Launching Daemon at Sat Jun 13 01:51:58 IST 2026
[2026-06-13 01:51:58,461.461 INFO    ] ================================================
[2026-06-13 01:51:58,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:51:58
[2026-06-13 01:51:59,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:51:59,267.267 INFO    ] Initializing speech engine...
[2026-06-13 01:51:59,272.272 INFO    ] 2026-06-13 01:51:59
[2026-06-13 01:51:59,477.477 INFO    ] 2026-06-13 01:51:59
[2026-06-13 01:51:59,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:51:59,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:51:59,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:51:59,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:51:59,888.888 INFO    ] time= 13/06/2026 01:51:59
[2026-06-13 01:51:59,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:51:59,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:00,024.024 INFO    ] No existing commands found in stream
[2026-06-13 01:52:05,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:05,036.036 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 01:52:06,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:52:06,783.783 INFO    ] Checking for system updates...
[2026-06-13 01:52:06,804.804 INFO    ] 200
[2026-06-13 01:52:06,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:06,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:52:06,837.837 INFO    ] No update needed
[2026-06-13 01:52:06,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 01:52:06,859.859 INFO    ] 200
[2026-06-13 01:52:06,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:06,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:52:06,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:52:06,923.923 INFO    ] No camera update needed
[2026-06-13 01:52:06,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:52:06,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:52:06,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:52:06,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:52:08,969.969 INFO    ] ================================================
[2026-06-13 01:52:08,984.984 INFO    ] Launching Daemon at Sat Jun 13 01:52:08 IST 2026
[2026-06-13 01:52:09,995.995 INFO    ] ================================================
[2026-06-13 01:52:09,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:52:09
[2026-06-13 01:52:09,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:52:09,785.785 INFO    ] Initializing speech engine...
[2026-06-13 01:52:09,796.796 INFO    ] 2026-06-13 01:52:09
[2026-06-13 01:52:10,018.018 INFO    ] 2026-06-13 01:52:09
[2026-06-13 01:52:10,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:52:10,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:52:10,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:52:10,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:52:10,457.457 INFO    ] time= 13/06/2026 01:52:10
[2026-06-13 01:52:10,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:52:10,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:10,572.572 INFO    ] No existing commands found in stream
[2026-06-13 01:52:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:15,584.584 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 01:52:16,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:52:16,790.790 INFO    ] Checking for system updates...
[2026-06-13 01:52:16,826.826 INFO    ] 200
[2026-06-13 01:52:16,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:16,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:16,885.885 INFO    ] No update needed
[2026-06-13 01:52:16,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 01:52:16,921.921 INFO    ] 200
[2026-06-13 01:52:16,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:16,964.964 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:52:17,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:17,013.013 INFO    ] No camera update needed
[2026-06-13 01:52:17,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:52:17,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:52:17,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:52:17,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:52:19,070.070 INFO    ] ================================================
[2026-06-13 01:52:19,086.086 INFO    ] Launching Daemon at Sat Jun 13 01:52:19 IST 2026
[2026-06-13 01:52:19,097.097 INFO    ] ================================================
[2026-06-13 01:52:19,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:52:19
[2026-06-13 01:52:19,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:52:19,901.901 INFO    ] Initializing speech engine...
[2026-06-13 01:52:19,906.906 INFO    ] 2026-06-13 01:52:19
[2026-06-13 01:52:20,133.133 INFO    ] 2026-06-13 01:52:20
[2026-06-13 01:52:20,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:52:20,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:52:20,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:52:20,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:52:20,518.518 INFO    ] time= 13/06/2026 01:52:20
[2026-06-13 01:52:20,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:52:20,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:20,704.704 INFO    ] No existing commands found in stream
[2026-06-13 01:52:25,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:25,737.737 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 01:52:30,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:52:30,023.023 INFO    ] Checking for system updates...
[2026-06-13 01:52:30,044.044 INFO    ] 200
[2026-06-13 01:52:30,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:30,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:30,079.079 INFO    ] No update needed
[2026-06-13 01:52:30,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 01:52:30,102.102 INFO    ] 200
[2026-06-13 01:52:30,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:30,129.129 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:52:30,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:30,166.166 INFO    ] No camera update needed
[2026-06-13 01:52:30,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:52:30,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:52:30,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:52:30,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:52:32,208.208 INFO    ] ================================================
[2026-06-13 01:52:32,230.230 INFO    ] Launching Daemon at Sat Jun 13 01:52:32 IST 2026
[2026-06-13 01:52:32,246.246 INFO    ] ================================================
[2026-06-13 01:52:32,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:52:32
[2026-06-13 01:52:33,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:52:33,704.704 INFO    ] Initializing speech engine...
[2026-06-13 01:52:33,711.711 INFO    ] 2026-06-13 01:52:33
[2026-06-13 01:52:34,005.005 INFO    ] 2026-06-13 01:52:33
[2026-06-13 01:52:34,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:52:34,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:52:34,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:52:34,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:52:34,382.382 INFO    ] time= 13/06/2026 01:52:34
[2026-06-13 01:52:34,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:52:34,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:34,511.511 INFO    ] No existing commands found in stream
[2026-06-13 01:52:39,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:39,526.526 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 01:52:39,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:52:39,920.920 INFO    ] Checking for system updates...
[2026-06-13 01:52:39,940.940 INFO    ] 200
[2026-06-13 01:52:39,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:39,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:52:39,976.976 INFO    ] No update needed
[2026-06-13 01:52:39,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 01:52:39,998.998 INFO    ] 200
[2026-06-13 01:52:39,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:40,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:52:40,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:52:40,066.066 INFO    ] No camera update needed
[2026-06-13 01:52:40,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:52:40,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:52:40,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:52:40,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:52:42,114.114 INFO    ] ================================================
[2026-06-13 01:52:42,130.130 INFO    ] Launching Daemon at Sat Jun 13 01:52:42 IST 2026
[2026-06-13 01:52:42,141.141 INFO    ] ================================================
[2026-06-13 01:52:42,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:52:42
[2026-06-13 01:52:42,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:52:43,057.057 INFO    ] Initializing speech engine...
[2026-06-13 01:52:43,065.065 INFO    ] 2026-06-13 01:52:43
[2026-06-13 01:52:43,394.394 INFO    ] 2026-06-13 01:52:43
[2026-06-13 01:52:43,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:52:43,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:52:43,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:52:43,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:52:43,892.892 INFO    ] time= 13/06/2026 01:52:43
[2026-06-13 01:52:43,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:52:43,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:44,048.048 INFO    ] No existing commands found in stream
[2026-06-13 01:52:49,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:49,084.084 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 01:52:49,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:52:49,516.516 INFO    ] Checking for system updates...
[2026-06-13 01:52:49,537.537 INFO    ] 200
[2026-06-13 01:52:49,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:49,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:49,573.573 INFO    ] No update needed
[2026-06-13 01:52:49,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 01:52:49,597.597 INFO    ] 200
[2026-06-13 01:52:49,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:52:49,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:52:49,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:52:49,661.661 INFO    ] No camera update needed
[2026-06-13 01:52:49,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:52:49,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:52:49,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:52:49,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:52:51,709.709 INFO    ] ================================================
[2026-06-13 01:52:51,724.724 INFO    ] Launching Daemon at Sat Jun 13 01:52:51 IST 2026
[2026-06-13 01:52:51,735.735 INFO    ] ================================================
[2026-06-13 01:52:52,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:52:52
[2026-06-13 01:52:52,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:52:52,566.566 INFO    ] Initializing speech engine...
[2026-06-13 01:52:52,574.574 INFO    ] 2026-06-13 01:52:52
[2026-06-13 01:52:52,792.792 INFO    ] 2026-06-13 01:52:52
[2026-06-13 01:52:52,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:52:53,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:52:53,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:52:53,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:52:53,234.234 INFO    ] time= 13/06/2026 01:52:53
[2026-06-13 01:52:53,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:52:53,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:52:53,344.344 INFO    ] No existing commands found in stream
[2026-06-13 01:52:58,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:52:58,357.357 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 01:53:00,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:53:00,538.538 INFO    ] Checking for system updates...
[2026-06-13 01:53:00,559.559 INFO    ] 200
[2026-06-13 01:53:00,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:00,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:53:00,596.596 INFO    ] No update needed
[2026-06-13 01:53:00,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 01:53:00,617.617 INFO    ] 200
[2026-06-13 01:53:00,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:00,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:53:00,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:53:00,683.683 INFO    ] No camera update needed
[2026-06-13 01:53:00,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:53:00,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:53:00,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:53:00,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:53:02,723.723 INFO    ] ================================================
[2026-06-13 01:53:02,733.733 INFO    ] Launching Daemon at Sat Jun 13 01:53:02 IST 2026
[2026-06-13 01:53:02,740.740 INFO    ] ================================================
[2026-06-13 01:53:03,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:53:03
[2026-06-13 01:53:03,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:53:03,500.500 INFO    ] Initializing speech engine...
[2026-06-13 01:53:03,507.507 INFO    ] 2026-06-13 01:53:03
[2026-06-13 01:53:03,731.731 INFO    ] 2026-06-13 01:53:03
[2026-06-13 01:53:03,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:53:03,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:53:03,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:53:03,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:53:03,972.972 INFO    ] time= 13/06/2026 01:53:03
[2026-06-13 01:53:03,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:53:03,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:53:04,060.060 INFO    ] No existing commands found in stream
[2026-06-13 01:53:09,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:53:09,080.080 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 01:53:15,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:53:15,031.031 INFO    ] Checking for system updates...
[2026-06-13 01:53:15,071.071 INFO    ] 200
[2026-06-13 01:53:15,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:15,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:15,131.131 INFO    ] No update needed
[2026-06-13 01:53:15,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 01:53:15,171.171 INFO    ] 200
[2026-06-13 01:53:15,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:15,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:53:15,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:15,269.269 INFO    ] No camera update needed
[2026-06-13 01:53:15,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:53:15,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:53:15,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:53:15,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:53:17,326.326 INFO    ] ================================================
[2026-06-13 01:53:17,341.341 INFO    ] Launching Daemon at Sat Jun 13 01:53:17 IST 2026
[2026-06-13 01:53:17,352.352 INFO    ] ================================================
[2026-06-13 01:53:17,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:53:17
[2026-06-13 01:53:18,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:53:18,172.172 INFO    ] Initializing speech engine...
[2026-06-13 01:53:18,181.181 INFO    ] 2026-06-13 01:53:18
[2026-06-13 01:53:18,406.406 INFO    ] 2026-06-13 01:53:18
[2026-06-13 01:53:18,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:53:18,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:53:18,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:53:18,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:53:18,826.826 INFO    ] time= 13/06/2026 01:53:18
[2026-06-13 01:53:18,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:53:18,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:53:18,956.956 INFO    ] No existing commands found in stream
[2026-06-13 01:53:23,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:53:23,970.970 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 01:53:25,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:53:25,838.838 INFO    ] Checking for system updates...
[2026-06-13 01:53:25,860.860 INFO    ] 200
[2026-06-13 01:53:25,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:25,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:25,892.892 INFO    ] No update needed
[2026-06-13 01:53:25,893.893 INFO    ] Checking for camera pi updates...
[2026-06-13 01:53:25,914.914 INFO    ] 200
[2026-06-13 01:53:25,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:25,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:53:26,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:26,082.082 INFO    ] No camera update needed
[2026-06-13 01:53:26,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:53:26,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:53:26,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:53:26,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:53:28,129.129 INFO    ] ================================================
[2026-06-13 01:53:28,146.146 INFO    ] Launching Daemon at Sat Jun 13 01:53:28 IST 2026
[2026-06-13 01:53:28,157.157 INFO    ] ================================================
[2026-06-13 01:53:28,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:53:28
[2026-06-13 01:53:28,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:53:28,963.963 INFO    ] Initializing speech engine...
[2026-06-13 01:53:28,976.976 INFO    ] 2026-06-13 01:53:28
[2026-06-13 01:53:29,194.194 INFO    ] 2026-06-13 01:53:29
[2026-06-13 01:53:29,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:53:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:53:29,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:53:29,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:53:29,605.605 INFO    ] time= 13/06/2026 01:53:29
[2026-06-13 01:53:29,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:53:29,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:53:29,747.747 INFO    ] No existing commands found in stream
[2026-06-13 01:53:34,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:53:34,764.764 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 01:53:35,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:53:35,763.763 INFO    ] Checking for system updates...
[2026-06-13 01:53:35,784.784 INFO    ] 200
[2026-06-13 01:53:35,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:35,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:35,819.819 INFO    ] No update needed
[2026-06-13 01:53:35,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 01:53:35,840.840 INFO    ] 200
[2026-06-13 01:53:35,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:35,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:53:35,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:53:35,908.908 INFO    ] No camera update needed
[2026-06-13 01:53:35,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:53:35,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:53:35,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:53:35,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:53:37,955.955 INFO    ] ================================================
[2026-06-13 01:53:37,971.971 INFO    ] Launching Daemon at Sat Jun 13 01:53:37 IST 2026
[2026-06-13 01:53:37,983.983 INFO    ] ================================================
[2026-06-13 01:53:38,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:53:38
[2026-06-13 01:53:38,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:53:38,764.764 INFO    ] Initializing speech engine...
[2026-06-13 01:53:38,775.775 INFO    ] 2026-06-13 01:53:38
[2026-06-13 01:53:38,991.991 INFO    ] 2026-06-13 01:53:38
[2026-06-13 01:53:39,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:53:39,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:53:39,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:53:39,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:53:39,366.366 INFO    ] time= 13/06/2026 01:53:39
[2026-06-13 01:53:39,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:53:39,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:53:39,510.510 INFO    ] No existing commands found in stream
[2026-06-13 01:53:44,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:53:44,543.543 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 01:53:47,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:53:47,794.794 INFO    ] Checking for system updates...
[2026-06-13 01:53:47,814.814 INFO    ] 200
[2026-06-13 01:53:47,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:47,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:53:47,850.850 INFO    ] No update needed
[2026-06-13 01:53:47,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 01:53:47,871.871 INFO    ] 200
[2026-06-13 01:53:47,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:53:47,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:53:47,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:53:47,937.937 INFO    ] No camera update needed
[2026-06-13 01:53:47,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:53:47,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:53:47,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:53:47,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:53:49,984.984 INFO    ] ================================================
[2026-06-13 01:53:50,001.001 INFO    ] Launching Daemon at Sat Jun 13 01:53:49 IST 2026
[2026-06-13 01:53:50,013.013 INFO    ] ================================================
[2026-06-13 01:53:50,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:53:50
[2026-06-13 01:53:51,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:53:51,310.310 INFO    ] Initializing speech engine...
[2026-06-13 01:53:51,320.320 INFO    ] 2026-06-13 01:53:51
[2026-06-13 01:53:51,589.589 INFO    ] 2026-06-13 01:53:51
[2026-06-13 01:53:51,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:53:51,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:53:51,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:53:52,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:53:52,075.075 INFO    ] time= 13/06/2026 01:53:52
[2026-06-13 01:53:52,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:53:52,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:53:52,319.319 INFO    ] No existing commands found in stream
[2026-06-13 01:53:57,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:53:57,359.359 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 01:54:00,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:54:00,746.746 INFO    ] Checking for system updates...
[2026-06-13 01:54:00,767.767 INFO    ] 200
[2026-06-13 01:54:00,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:00,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:00,802.802 INFO    ] No update needed
[2026-06-13 01:54:00,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:00,825.825 INFO    ] 200
[2026-06-13 01:54:00,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:00,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:00,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:00,889.889 INFO    ] No camera update needed
[2026-06-13 01:54:00,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:00,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:00,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:00,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:54:02,958.958 INFO    ] ================================================
[2026-06-13 01:54:02,980.980 INFO    ] Launching Daemon at Sat Jun 13 01:54:02 IST 2026
[2026-06-13 01:54:03,999.999 INFO    ] ================================================
[2026-06-13 01:54:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:54:03
[2026-06-13 01:54:04,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:54:04,555.555 INFO    ] Initializing speech engine...
[2026-06-13 01:54:04,571.571 INFO    ] 2026-06-13 01:54:04
[2026-06-13 01:54:04,855.855 INFO    ] 2026-06-13 01:54:04
[2026-06-13 01:54:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:54:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:54:05,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:54:05,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:54:05,210.210 INFO    ] time= 13/06/2026 01:54:05
[2026-06-13 01:54:05,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:54:05,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:54:05,286.286 INFO    ] No existing commands found in stream
[2026-06-13 01:54:10,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:54:10,302.302 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 01:54:12,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:54:12,117.117 INFO    ] Checking for system updates...
[2026-06-13 01:54:12,138.138 INFO    ] 200
[2026-06-13 01:54:12,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:12,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:12,175.175 INFO    ] No update needed
[2026-06-13 01:54:12,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:12,196.196 INFO    ] 200
[2026-06-13 01:54:12,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:12,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:12,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:12,267.267 INFO    ] No camera update needed
[2026-06-13 01:54:12,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:12,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:12,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:12,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:54:14,316.316 INFO    ] ================================================
[2026-06-13 01:54:14,332.332 INFO    ] Launching Daemon at Sat Jun 13 01:54:14 IST 2026
[2026-06-13 01:54:14,343.343 INFO    ] ================================================
[2026-06-13 01:54:14,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:54:14
[2026-06-13 01:54:14,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:54:15,129.129 INFO    ] Initializing speech engine...
[2026-06-13 01:54:15,142.142 INFO    ] 2026-06-13 01:54:15
[2026-06-13 01:54:15,361.361 INFO    ] 2026-06-13 01:54:15
[2026-06-13 01:54:15,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:54:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:54:15,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:54:15,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:54:15,761.761 INFO    ] time= 13/06/2026 01:54:15
[2026-06-13 01:54:15,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:54:15,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:54:15,919.919 INFO    ] No existing commands found in stream
[2026-06-13 01:54:20,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:54:20,932.932 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 01:54:24,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:54:24,234.234 INFO    ] Checking for system updates...
[2026-06-13 01:54:24,255.255 INFO    ] 200
[2026-06-13 01:54:24,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:24,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:24,290.290 INFO    ] No update needed
[2026-06-13 01:54:24,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:24,311.311 INFO    ] 200
[2026-06-13 01:54:24,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:24,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:24,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:24,376.376 INFO    ] No camera update needed
[2026-06-13 01:54:24,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:24,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:24,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:24,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:54:26,416.416 INFO    ] ================================================
[2026-06-13 01:54:26,424.424 INFO    ] Launching Daemon at Sat Jun 13 01:54:26 IST 2026
[2026-06-13 01:54:26,430.430 INFO    ] ================================================
[2026-06-13 01:54:26,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:54:26
[2026-06-13 01:54:27,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:54:27,244.244 INFO    ] Initializing speech engine...
[2026-06-13 01:54:27,249.249 INFO    ] 2026-06-13 01:54:27
[2026-06-13 01:54:27,481.481 INFO    ] 2026-06-13 01:54:27
[2026-06-13 01:54:27,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:54:27,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:54:27,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:54:27,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:54:27,863.863 INFO    ] time= 13/06/2026 01:54:27
[2026-06-13 01:54:27,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:54:27,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:54:28,041.041 INFO    ] No existing commands found in stream
[2026-06-13 01:54:33,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:54:33,055.055 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 01:54:35,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:54:35,743.743 INFO    ] Checking for system updates...
[2026-06-13 01:54:35,765.765 INFO    ] 200
[2026-06-13 01:54:35,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:35,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:35,800.800 INFO    ] No update needed
[2026-06-13 01:54:35,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:35,821.821 INFO    ] 200
[2026-06-13 01:54:35,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:35,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:35,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:35,893.893 INFO    ] No camera update needed
[2026-06-13 01:54:35,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:35,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:35,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:35,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:54:37,941.941 INFO    ] ================================================
[2026-06-13 01:54:37,956.956 INFO    ] Launching Daemon at Sat Jun 13 01:54:37 IST 2026
[2026-06-13 01:54:37,966.966 INFO    ] ================================================
[2026-06-13 01:54:38,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:54:38
[2026-06-13 01:54:38,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:54:38,852.852 INFO    ] Initializing speech engine...
[2026-06-13 01:54:38,859.859 INFO    ] 2026-06-13 01:54:38
[2026-06-13 01:54:39,066.066 INFO    ] 2026-06-13 01:54:39
[2026-06-13 01:54:39,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:54:39,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:54:39,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:54:39,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:54:39,470.470 INFO    ] time= 13/06/2026 01:54:39
[2026-06-13 01:54:39,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:54:39,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:54:39,585.585 INFO    ] No existing commands found in stream
[2026-06-13 01:54:44,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:54:44,603.603 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 01:54:45,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:54:45,821.821 INFO    ] Checking for system updates...
[2026-06-13 01:54:45,842.842 INFO    ] 200
[2026-06-13 01:54:45,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:45,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:45,876.876 INFO    ] No update needed
[2026-06-13 01:54:45,877.877 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:45,897.897 INFO    ] 200
[2026-06-13 01:54:45,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:45,924.924 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:45,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:54:45,964.964 INFO    ] No camera update needed
[2026-06-13 01:54:45,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:45,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:45,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:45,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:54:48,012.012 INFO    ] ================================================
[2026-06-13 01:54:48,028.028 INFO    ] Launching Daemon at Sat Jun 13 01:54:48 IST 2026
[2026-06-13 01:54:48,038.038 INFO    ] ================================================
[2026-06-13 01:54:48,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:54:48
[2026-06-13 01:54:48,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:54:48,826.826 INFO    ] Initializing speech engine...
[2026-06-13 01:54:48,831.831 INFO    ] 2026-06-13 01:54:48
[2026-06-13 01:54:49,035.035 INFO    ] 2026-06-13 01:54:49
[2026-06-13 01:54:49,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:54:49,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:54:49,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:54:49,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:54:49,438.438 INFO    ] time= 13/06/2026 01:54:49
[2026-06-13 01:54:49,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:54:49,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:54:49,546.546 INFO    ] No existing commands found in stream
[2026-06-13 01:54:54,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:54:54,559.559 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 01:54:58,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:54:58,486.486 INFO    ] Checking for system updates...
[2026-06-13 01:54:58,507.507 INFO    ] 200
[2026-06-13 01:54:58,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:58,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:58,541.541 INFO    ] No update needed
[2026-06-13 01:54:58,542.542 INFO    ] Checking for camera pi updates...
[2026-06-13 01:54:58,562.562 INFO    ] 200
[2026-06-13 01:54:58,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:54:58,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:54:58,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:54:58,630.630 INFO    ] No camera update needed
[2026-06-13 01:54:58,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:54:58,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:54:58,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:54:58,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:00,679.679 INFO    ] ================================================
[2026-06-13 01:55:00,695.695 INFO    ] Launching Daemon at Sat Jun 13 01:55:00 IST 2026
[2026-06-13 01:55:00,705.705 INFO    ] ================================================
[2026-06-13 01:55:01,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:01
[2026-06-13 01:55:01,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:01,492.492 INFO    ] Initializing speech engine...
[2026-06-13 01:55:01,497.497 INFO    ] 2026-06-13 01:55:01
[2026-06-13 01:55:01,700.700 INFO    ] 2026-06-13 01:55:01
[2026-06-13 01:55:01,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:01,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:01,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:02,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:02,075.075 INFO    ] time= 13/06/2026 01:55:02
[2026-06-13 01:55:02,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:02,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:02,131.131 INFO    ] No existing commands found in stream
[2026-06-13 01:55:07,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:55:07,145.145 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 01:55:09,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:55:09,552.552 INFO    ] Checking for system updates...
[2026-06-13 01:55:09,573.573 INFO    ] 200
[2026-06-13 01:55:09,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:09,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:09,607.607 INFO    ] No update needed
[2026-06-13 01:55:09,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 01:55:09,629.629 INFO    ] 200
[2026-06-13 01:55:09,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:09,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:55:09,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:09,681.681 INFO    ] No camera update needed
[2026-06-13 01:55:09,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:55:09,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:55:09,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:55:09,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:11,731.731 INFO    ] ================================================
[2026-06-13 01:55:11,754.754 INFO    ] Launching Daemon at Sat Jun 13 01:55:11 IST 2026
[2026-06-13 01:55:11,765.765 INFO    ] ================================================
[2026-06-13 01:55:12,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:12
[2026-06-13 01:55:12,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:12,571.571 INFO    ] Initializing speech engine...
[2026-06-13 01:55:12,583.583 INFO    ] 2026-06-13 01:55:12
[2026-06-13 01:55:12,787.787 INFO    ] 2026-06-13 01:55:12
[2026-06-13 01:55:12,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:12,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:13,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:13,182.182 INFO    ] time= 13/06/2026 01:55:13
[2026-06-13 01:55:13,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:13,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:13,356.356 INFO    ] No existing commands found in stream
[2026-06-13 01:55:18,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:55:18,385.385 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 01:55:21,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:55:21,328.328 INFO    ] Checking for system updates...
[2026-06-13 01:55:21,350.350 INFO    ] 200
[2026-06-13 01:55:21,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:21,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:21,383.383 INFO    ] No update needed
[2026-06-13 01:55:21,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 01:55:21,406.406 INFO    ] 200
[2026-06-13 01:55:21,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:21,431.431 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:55:21,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:21,473.473 INFO    ] No camera update needed
[2026-06-13 01:55:21,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:55:21,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:55:21,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:55:21,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:23,520.520 INFO    ] ================================================
[2026-06-13 01:55:23,535.535 INFO    ] Launching Daemon at Sat Jun 13 01:55:23 IST 2026
[2026-06-13 01:55:23,546.546 INFO    ] ================================================
[2026-06-13 01:55:23,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:23
[2026-06-13 01:55:24,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:24,369.369 INFO    ] Initializing speech engine...
[2026-06-13 01:55:24,374.374 INFO    ] 2026-06-13 01:55:24
[2026-06-13 01:55:24,580.580 INFO    ] 2026-06-13 01:55:24
[2026-06-13 01:55:24,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:24,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:24,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:24,990.990 INFO    ] time= 13/06/2026 01:55:24
[2026-06-13 01:55:25,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:25,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:25,101.101 INFO    ] No existing commands found in stream
[2026-06-13 01:55:30,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:55:30,114.114 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 01:55:33,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:55:33,144.144 INFO    ] Checking for system updates...
[2026-06-13 01:55:33,166.166 INFO    ] 200
[2026-06-13 01:55:33,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:33,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:55:33,199.199 INFO    ] No update needed
[2026-06-13 01:55:33,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 01:55:33,220.220 INFO    ] 200
[2026-06-13 01:55:33,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:33,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:55:33,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:55:33,286.286 INFO    ] No camera update needed
[2026-06-13 01:55:33,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:55:33,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:55:33,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:55:33,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:35,333.333 INFO    ] ================================================
[2026-06-13 01:55:35,348.348 INFO    ] Launching Daemon at Sat Jun 13 01:55:35 IST 2026
[2026-06-13 01:55:35,358.358 INFO    ] ================================================
[2026-06-13 01:55:35,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:35
[2026-06-13 01:55:36,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:36,151.151 INFO    ] Initializing speech engine...
[2026-06-13 01:55:36,156.156 INFO    ] 2026-06-13 01:55:36
[2026-06-13 01:55:36,359.359 INFO    ] 2026-06-13 01:55:36
[2026-06-13 01:55:36,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:36,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:36,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:36,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:36,740.740 INFO    ] time= 13/06/2026 01:55:36
[2026-06-13 01:55:36,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:36,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:36,879.879 INFO    ] No existing commands found in stream
[2026-06-13 01:55:41,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:55:41,892.892 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 01:55:42,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:55:42,868.868 INFO    ] Checking for system updates...
[2026-06-13 01:55:42,889.889 INFO    ] 200
[2026-06-13 01:55:42,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:42,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:55:42,923.923 INFO    ] No update needed
[2026-06-13 01:55:42,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 01:55:42,944.944 INFO    ] 200
[2026-06-13 01:55:42,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:42,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:55:43,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:55:43,010.010 INFO    ] No camera update needed
[2026-06-13 01:55:43,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:55:43,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:55:43,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:55:43,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:45,059.059 INFO    ] ================================================
[2026-06-13 01:55:45,075.075 INFO    ] Launching Daemon at Sat Jun 13 01:55:45 IST 2026
[2026-06-13 01:55:45,086.086 INFO    ] ================================================
[2026-06-13 01:55:45,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:45
[2026-06-13 01:55:45,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:45,896.896 INFO    ] Initializing speech engine...
[2026-06-13 01:55:45,901.901 INFO    ] 2026-06-13 01:55:45
[2026-06-13 01:55:46,105.105 INFO    ] 2026-06-13 01:55:46
[2026-06-13 01:55:46,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:46,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:46,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:46,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:46,471.471 INFO    ] time= 13/06/2026 01:55:46
[2026-06-13 01:55:46,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:46,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:46,621.621 INFO    ] No existing commands found in stream
[2026-06-13 01:55:51,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:55:51,635.635 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 01:55:54,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:55:54,982.982 INFO    ] Checking for system updates...
[2026-06-13 01:55:55,002.002 INFO    ] 200
[2026-06-13 01:55:55,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:55,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:55,039.039 INFO    ] No update needed
[2026-06-13 01:55:55,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 01:55:55,061.061 INFO    ] 200
[2026-06-13 01:55:55,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:55:55,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:55:55,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:55:55,130.130 INFO    ] No camera update needed
[2026-06-13 01:55:55,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:55:55,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:55:55,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:55:55,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:55:57,179.179 INFO    ] ================================================
[2026-06-13 01:55:57,194.194 INFO    ] Launching Daemon at Sat Jun 13 01:55:57 IST 2026
[2026-06-13 01:55:57,205.205 INFO    ] ================================================
[2026-06-13 01:55:57,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:55:57
[2026-06-13 01:55:57,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:55:58,083.083 INFO    ] Initializing speech engine...
[2026-06-13 01:55:58,086.086 INFO    ] 2026-06-13 01:55:58
[2026-06-13 01:55:58,296.296 INFO    ] 2026-06-13 01:55:58
[2026-06-13 01:55:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:55:58,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:55:58,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:55:58,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:55:58,703.703 INFO    ] time= 13/06/2026 01:55:58
[2026-06-13 01:55:58,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:55:58,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:55:58,819.819 INFO    ] No existing commands found in stream
[2026-06-13 01:56:03,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:03,833.833 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 01:56:04,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:56:04,352.352 INFO    ] Checking for system updates...
[2026-06-13 01:56:04,372.372 INFO    ] 200
[2026-06-13 01:56:04,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:04,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:04,406.406 INFO    ] No update needed
[2026-06-13 01:56:04,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:04,428.428 INFO    ] 200
[2026-06-13 01:56:04,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:04,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:04,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:04,494.494 INFO    ] No camera update needed
[2026-06-13 01:56:04,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:04,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:04,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:04,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:06,544.544 INFO    ] ================================================
[2026-06-13 01:56:06,560.560 INFO    ] Launching Daemon at Sat Jun 13 01:56:06 IST 2026
[2026-06-13 01:56:06,570.570 INFO    ] ================================================
[2026-06-13 01:56:06,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:06
[2026-06-13 01:56:07,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:07,380.380 INFO    ] Initializing speech engine...
[2026-06-13 01:56:07,394.394 INFO    ] 2026-06-13 01:56:07
[2026-06-13 01:56:07,626.626 INFO    ] 2026-06-13 01:56:07
[2026-06-13 01:56:07,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:07,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:07,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:07,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:08,038.038 INFO    ] time= 13/06/2026 01:56:07
[2026-06-13 01:56:08,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:08,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:08,150.150 INFO    ] No existing commands found in stream
[2026-06-13 01:56:13,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:13,163.163 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 01:56:13,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:56:13,469.469 INFO    ] Checking for system updates...
[2026-06-13 01:56:13,489.489 INFO    ] 200
[2026-06-13 01:56:13,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:13,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:13,522.522 INFO    ] No update needed
[2026-06-13 01:56:13,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:13,546.546 INFO    ] 200
[2026-06-13 01:56:13,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:13,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:13,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:13,610.610 INFO    ] No camera update needed
[2026-06-13 01:56:13,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:13,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:13,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:13,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:15,658.658 INFO    ] ================================================
[2026-06-13 01:56:15,673.673 INFO    ] Launching Daemon at Sat Jun 13 01:56:15 IST 2026
[2026-06-13 01:56:15,684.684 INFO    ] ================================================
[2026-06-13 01:56:16,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:16
[2026-06-13 01:56:16,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:16,709.709 INFO    ] Initializing speech engine...
[2026-06-13 01:56:16,714.714 INFO    ] 2026-06-13 01:56:16
[2026-06-13 01:56:16,977.977 INFO    ] 2026-06-13 01:56:16
[2026-06-13 01:56:17,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:17,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:17,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:17,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:17,325.325 INFO    ] time= 13/06/2026 01:56:17
[2026-06-13 01:56:17,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:17,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:17,422.422 INFO    ] No existing commands found in stream
[2026-06-13 01:56:22,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:22,437.437 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 01:56:26,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:56:26,024.024 INFO    ] Checking for system updates...
[2026-06-13 01:56:26,045.045 INFO    ] 200
[2026-06-13 01:56:26,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:26,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:26,078.078 INFO    ] No update needed
[2026-06-13 01:56:26,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:26,099.099 INFO    ] 200
[2026-06-13 01:56:26,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:26,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:26,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:26,167.167 INFO    ] No camera update needed
[2026-06-13 01:56:26,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:26,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:26,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:26,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:28,214.214 INFO    ] ================================================
[2026-06-13 01:56:28,229.229 INFO    ] Launching Daemon at Sat Jun 13 01:56:28 IST 2026
[2026-06-13 01:56:28,239.239 INFO    ] ================================================
[2026-06-13 01:56:28,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:28
[2026-06-13 01:56:28,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:29,027.027 INFO    ] Initializing speech engine...
[2026-06-13 01:56:29,037.037 INFO    ] 2026-06-13 01:56:29
[2026-06-13 01:56:29,241.241 INFO    ] 2026-06-13 01:56:29
[2026-06-13 01:56:29,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:29,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:29,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:29,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:29,656.656 INFO    ] time= 13/06/2026 01:56:29
[2026-06-13 01:56:29,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:29,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:29,754.754 INFO    ] No existing commands found in stream
[2026-06-13 01:56:34,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:34,767.767 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 01:56:35,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:56:35,636.636 INFO    ] Checking for system updates...
[2026-06-13 01:56:35,676.676 INFO    ] 200
[2026-06-13 01:56:35,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:35,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:35,735.735 INFO    ] No update needed
[2026-06-13 01:56:35,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:35,772.772 INFO    ] 200
[2026-06-13 01:56:35,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:35,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:35,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:35,866.866 INFO    ] No camera update needed
[2026-06-13 01:56:35,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:35,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:35,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:35,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:37,923.923 INFO    ] ================================================
[2026-06-13 01:56:37,938.938 INFO    ] Launching Daemon at Sat Jun 13 01:56:37 IST 2026
[2026-06-13 01:56:37,949.949 INFO    ] ================================================
[2026-06-13 01:56:38,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:38
[2026-06-13 01:56:38,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:38,758.758 INFO    ] Initializing speech engine...
[2026-06-13 01:56:38,763.763 INFO    ] 2026-06-13 01:56:38
[2026-06-13 01:56:38,967.967 INFO    ] 2026-06-13 01:56:38
[2026-06-13 01:56:38,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:39,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:39,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:39,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:39,369.369 INFO    ] time= 13/06/2026 01:56:39
[2026-06-13 01:56:39,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:39,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:39,482.482 INFO    ] No existing commands found in stream
[2026-06-13 01:56:44,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:44,495.495 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 01:56:45,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:56:45,124.124 INFO    ] Checking for system updates...
[2026-06-13 01:56:45,145.145 INFO    ] 200
[2026-06-13 01:56:45,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:45,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:45,180.180 INFO    ] No update needed
[2026-06-13 01:56:45,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:45,201.201 INFO    ] 200
[2026-06-13 01:56:45,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:45,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:45,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:56:45,270.270 INFO    ] No camera update needed
[2026-06-13 01:56:45,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:45,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:45,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:45,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:47,319.319 INFO    ] ================================================
[2026-06-13 01:56:47,334.334 INFO    ] Launching Daemon at Sat Jun 13 01:56:47 IST 2026
[2026-06-13 01:56:47,344.344 INFO    ] ================================================
[2026-06-13 01:56:47,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:47
[2026-06-13 01:56:47,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:48,141.141 INFO    ] Initializing speech engine...
[2026-06-13 01:56:48,145.145 INFO    ] 2026-06-13 01:56:48
[2026-06-13 01:56:48,348.348 INFO    ] 2026-06-13 01:56:48
[2026-06-13 01:56:48,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:48,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:48,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:48,759.759 INFO    ] time= 13/06/2026 01:56:48
[2026-06-13 01:56:48,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:48,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:48,863.863 INFO    ] No existing commands found in stream
[2026-06-13 01:56:53,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:56:53,876.876 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 01:56:55,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:56:55,467.467 INFO    ] Checking for system updates...
[2026-06-13 01:56:55,488.488 INFO    ] 200
[2026-06-13 01:56:55,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:55,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:55,524.524 INFO    ] No update needed
[2026-06-13 01:56:55,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 01:56:55,545.545 INFO    ] 200
[2026-06-13 01:56:55,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:56:55,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:56:55,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:56:55,608.608 INFO    ] No camera update needed
[2026-06-13 01:56:55,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:56:55,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:56:55,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:56:55,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:56:57,657.657 INFO    ] ================================================
[2026-06-13 01:56:57,672.672 INFO    ] Launching Daemon at Sat Jun 13 01:56:57 IST 2026
[2026-06-13 01:56:57,683.683 INFO    ] ================================================
[2026-06-13 01:56:58,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:56:58
[2026-06-13 01:56:58,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:56:58,464.464 INFO    ] Initializing speech engine...
[2026-06-13 01:56:58,467.467 INFO    ] 2026-06-13 01:56:58
[2026-06-13 01:56:58,696.696 INFO    ] 2026-06-13 01:56:58
[2026-06-13 01:56:58,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:56:58,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:56:58,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:56:59,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:56:59,078.078 INFO    ] time= 13/06/2026 01:56:59
[2026-06-13 01:56:59,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:56:59,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:56:59,259.259 INFO    ] No existing commands found in stream
[2026-06-13 01:57:04,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:57:04,273.273 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 01:57:06,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:57:06,323.323 INFO    ] Checking for system updates...
[2026-06-13 01:57:06,345.345 INFO    ] 200
[2026-06-13 01:57:06,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:06,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:57:06,379.379 INFO    ] No update needed
[2026-06-13 01:57:06,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 01:57:06,401.401 INFO    ] 200
[2026-06-13 01:57:06,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:06,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:57:06,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:06,465.465 INFO    ] No camera update needed
[2026-06-13 01:57:06,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:57:06,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:57:06,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:57:06,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:57:08,514.514 INFO    ] ================================================
[2026-06-13 01:57:08,529.529 INFO    ] Launching Daemon at Sat Jun 13 01:57:08 IST 2026
[2026-06-13 01:57:08,540.540 INFO    ] ================================================
[2026-06-13 01:57:08,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:57:08
[2026-06-13 01:57:09,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:57:09,412.412 INFO    ] Initializing speech engine...
[2026-06-13 01:57:09,417.417 INFO    ] 2026-06-13 01:57:09
[2026-06-13 01:57:09,625.625 INFO    ] 2026-06-13 01:57:09
[2026-06-13 01:57:09,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:57:09,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:57:09,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:57:09,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:57:09,982.982 INFO    ] time= 13/06/2026 01:57:09
[2026-06-13 01:57:10,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:57:10,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:57:10,145.145 INFO    ] No existing commands found in stream
[2026-06-13 01:57:15,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:57:15,163.163 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 01:57:16,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:57:16,752.752 INFO    ] Checking for system updates...
[2026-06-13 01:57:16,774.774 INFO    ] 200
[2026-06-13 01:57:16,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:16,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:16,809.809 INFO    ] No update needed
[2026-06-13 01:57:16,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 01:57:16,831.831 INFO    ] 200
[2026-06-13 01:57:16,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:16,858.858 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:57:16,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:16,896.896 INFO    ] No camera update needed
[2026-06-13 01:57:16,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:57:16,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:57:16,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:57:16,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:57:18,943.943 INFO    ] ================================================
[2026-06-13 01:57:18,959.959 INFO    ] Launching Daemon at Sat Jun 13 01:57:18 IST 2026
[2026-06-13 01:57:18,970.970 INFO    ] ================================================
[2026-06-13 01:57:19,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:57:19
[2026-06-13 01:57:19,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:57:19,747.747 INFO    ] Initializing speech engine...
[2026-06-13 01:57:19,760.760 INFO    ] 2026-06-13 01:57:19
[2026-06-13 01:57:19,967.967 INFO    ] 2026-06-13 01:57:19
[2026-06-13 01:57:19,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:57:20,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:57:20,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:57:20,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:57:20,371.371 INFO    ] time= 13/06/2026 01:57:20
[2026-06-13 01:57:20,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:57:20,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:57:20,512.512 INFO    ] No existing commands found in stream
[2026-06-13 01:57:25,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:57:25,528.528 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 01:57:26,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 01:57:26,836.836 INFO    ] Checking for system updates...
[2026-06-13 01:57:26,861.861 INFO    ] 200
[2026-06-13 01:57:26,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:26,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:57:26,894.894 INFO    ] No update needed
[2026-06-13 01:57:26,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 01:57:26,915.915 INFO    ] 200
[2026-06-13 01:57:26,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:26,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:57:26,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:57:26,980.980 INFO    ] No camera update needed
[2026-06-13 01:57:26,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:57:26,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:57:26,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:57:26,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:57:29,028.028 INFO    ] ================================================
[2026-06-13 01:57:29,043.043 INFO    ] Launching Daemon at Sat Jun 13 01:57:29 IST 2026
[2026-06-13 01:57:29,054.054 INFO    ] ================================================
[2026-06-13 01:57:29,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:57:29
[2026-06-13 01:57:29,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:57:29,853.853 INFO    ] Initializing speech engine...
[2026-06-13 01:57:29,861.861 INFO    ] 2026-06-13 01:57:29
[2026-06-13 01:57:30,067.067 INFO    ] 2026-06-13 01:57:30
[2026-06-13 01:57:30,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:57:30,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:57:30,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:57:30,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:57:30,473.473 INFO    ] time= 13/06/2026 01:57:30
[2026-06-13 01:57:30,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:57:30,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:57:30,591.591 INFO    ] No existing commands found in stream
[2026-06-13 01:57:35,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:57:35,602.602 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 01:57:39,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:57:39,604.604 INFO    ] Checking for system updates...
[2026-06-13 01:57:39,629.629 INFO    ] 200
[2026-06-13 01:57:39,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:39,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:39,665.665 INFO    ] No update needed
[2026-06-13 01:57:39,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 01:57:39,686.686 INFO    ] 200
[2026-06-13 01:57:39,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:39,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:57:39,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:39,854.854 INFO    ] No camera update needed
[2026-06-13 01:57:39,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:57:39,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:57:39,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:57:39,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:57:41,905.905 INFO    ] ================================================
[2026-06-13 01:57:41,920.920 INFO    ] Launching Daemon at Sat Jun 13 01:57:41 IST 2026
[2026-06-13 01:57:41,931.931 INFO    ] ================================================
[2026-06-13 01:57:42,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:57:42
[2026-06-13 01:57:42,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:57:42,702.702 INFO    ] Initializing speech engine...
[2026-06-13 01:57:42,706.706 INFO    ] 2026-06-13 01:57:42
[2026-06-13 01:57:42,936.936 INFO    ] 2026-06-13 01:57:42
[2026-06-13 01:57:42,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:57:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:57:43,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:57:43,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:57:43,339.339 INFO    ] time= 13/06/2026 01:57:43
[2026-06-13 01:57:43,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:57:43,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:57:43,454.454 INFO    ] No existing commands found in stream
[2026-06-13 01:57:48,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:57:48,466.466 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 01:57:51,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:57:51,715.715 INFO    ] Checking for system updates...
[2026-06-13 01:57:51,737.737 INFO    ] 200
[2026-06-13 01:57:51,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:51,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:57:51,778.778 INFO    ] No update needed
[2026-06-13 01:57:51,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 01:57:51,802.802 INFO    ] 200
[2026-06-13 01:57:51,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:57:51,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:57:51,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:57:51,871.871 INFO    ] No camera update needed
[2026-06-13 01:57:51,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:57:51,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:57:51,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:57:51,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:57:53,917.917 INFO    ] ================================================
[2026-06-13 01:57:53,932.932 INFO    ] Launching Daemon at Sat Jun 13 01:57:53 IST 2026
[2026-06-13 01:57:53,943.943 INFO    ] ================================================
[2026-06-13 01:57:54,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:57:54
[2026-06-13 01:57:54,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:57:54,760.760 INFO    ] Initializing speech engine...
[2026-06-13 01:57:54,765.765 INFO    ] 2026-06-13 01:57:54
[2026-06-13 01:57:54,968.968 INFO    ] 2026-06-13 01:57:54
[2026-06-13 01:57:54,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:57:55,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:57:55,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:57:55,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:57:55,320.320 INFO    ] time= 13/06/2026 01:57:55
[2026-06-13 01:57:55,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:57:55,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:57:55,482.482 INFO    ] No existing commands found in stream
[2026-06-13 01:58:00,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:58:00,499.499 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 01:58:04,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:58:04,583.583 INFO    ] Checking for system updates...
[2026-06-13 01:58:04,621.621 INFO    ] 200
[2026-06-13 01:58:04,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:04,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:04,687.687 INFO    ] No update needed
[2026-06-13 01:58:04,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 01:58:04,730.730 INFO    ] 200
[2026-06-13 01:58:04,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:04,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:58:04,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:04,820.820 INFO    ] No camera update needed
[2026-06-13 01:58:04,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:58:04,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:58:04,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:58:04,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:58:06,879.879 INFO    ] ================================================
[2026-06-13 01:58:06,894.894 INFO    ] Launching Daemon at Sat Jun 13 01:58:06 IST 2026
[2026-06-13 01:58:06,905.905 INFO    ] ================================================
[2026-06-13 01:58:07,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:58:07
[2026-06-13 01:58:07,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:58:07,701.701 INFO    ] Initializing speech engine...
[2026-06-13 01:58:07,705.705 INFO    ] 2026-06-13 01:58:07
[2026-06-13 01:58:07,914.914 INFO    ] 2026-06-13 01:58:07
[2026-06-13 01:58:07,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:58:08,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:58:08,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:58:08,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:58:08,174.174 INFO    ] time= 13/06/2026 01:58:08
[2026-06-13 01:58:08,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:58:08,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:58:08,276.276 INFO    ] No existing commands found in stream
[2026-06-13 01:58:13,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:58:13,313.313 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 01:58:15,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:58:15,694.694 INFO    ] Checking for system updates...
[2026-06-13 01:58:15,715.715 INFO    ] 200
[2026-06-13 01:58:15,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:15,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:15,750.750 INFO    ] No update needed
[2026-06-13 01:58:15,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 01:58:15,772.772 INFO    ] 200
[2026-06-13 01:58:15,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:15,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:58:15,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:15,839.839 INFO    ] No camera update needed
[2026-06-13 01:58:15,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:58:15,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:58:15,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:58:15,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:58:17,889.889 INFO    ] ================================================
[2026-06-13 01:58:17,904.904 INFO    ] Launching Daemon at Sat Jun 13 01:58:17 IST 2026
[2026-06-13 01:58:17,914.914 INFO    ] ================================================
[2026-06-13 01:58:18,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:58:18
[2026-06-13 01:58:18,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:58:18,697.697 INFO    ] Initializing speech engine...
[2026-06-13 01:58:18,701.701 INFO    ] 2026-06-13 01:58:18
[2026-06-13 01:58:18,928.928 INFO    ] 2026-06-13 01:58:18
[2026-06-13 01:58:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:58:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:58:19,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:58:19,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:58:19,345.345 INFO    ] time= 13/06/2026 01:58:19
[2026-06-13 01:58:19,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:58:19,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:58:19,455.455 INFO    ] No existing commands found in stream
[2026-06-13 01:58:24,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:58:24,469.469 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 01:58:26,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:58:26,418.418 INFO    ] Checking for system updates...
[2026-06-13 01:58:26,441.441 INFO    ] 200
[2026-06-13 01:58:26,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:26,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:26,479.479 INFO    ] No update needed
[2026-06-13 01:58:26,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 01:58:26,501.501 INFO    ] 200
[2026-06-13 01:58:26,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:26,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:58:26,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:26,569.569 INFO    ] No camera update needed
[2026-06-13 01:58:26,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:58:26,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:58:26,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:58:26,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:58:28,618.618 INFO    ] ================================================
[2026-06-13 01:58:28,633.633 INFO    ] Launching Daemon at Sat Jun 13 01:58:28 IST 2026
[2026-06-13 01:58:28,644.644 INFO    ] ================================================
[2026-06-13 01:58:28,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:58:28
[2026-06-13 01:58:29,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:58:29,448.448 INFO    ] Initializing speech engine...
[2026-06-13 01:58:29,458.458 INFO    ] 2026-06-13 01:58:29
[2026-06-13 01:58:29,662.662 INFO    ] 2026-06-13 01:58:29
[2026-06-13 01:58:29,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:58:29,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:58:29,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:58:30,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:58:30,083.083 INFO    ] time= 13/06/2026 01:58:30
[2026-06-13 01:58:30,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:58:30,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:58:30,185.185 INFO    ] No existing commands found in stream
[2026-06-13 01:58:35,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:58:35,197.197 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 01:58:39,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:58:39,274.274 INFO    ] Checking for system updates...
[2026-06-13 01:58:39,313.313 INFO    ] 200
[2026-06-13 01:58:39,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:39,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:39,372.372 INFO    ] No update needed
[2026-06-13 01:58:39,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 01:58:39,409.409 INFO    ] 200
[2026-06-13 01:58:39,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:39,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:58:39,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:39,496.496 INFO    ] No camera update needed
[2026-06-13 01:58:39,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:58:39,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:58:39,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:58:39,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:58:41,544.544 INFO    ] ================================================
[2026-06-13 01:58:41,559.559 INFO    ] Launching Daemon at Sat Jun 13 01:58:41 IST 2026
[2026-06-13 01:58:41,570.570 INFO    ] ================================================
[2026-06-13 01:58:41,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:58:41
[2026-06-13 01:58:42,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:58:42,592.592 INFO    ] Initializing speech engine...
[2026-06-13 01:58:42,610.610 INFO    ] 2026-06-13 01:58:42
[2026-06-13 01:58:42,889.889 INFO    ] 2026-06-13 01:58:42
[2026-06-13 01:58:42,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:58:43,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:58:43,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:58:43,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:58:43,334.334 INFO    ] time= 13/06/2026 01:58:43
[2026-06-13 01:58:43,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:58:43,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:58:43,578.578 INFO    ] No existing commands found in stream
[2026-06-13 01:58:48,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:58:48,597.597 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 01:58:52,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 01:58:52,129.129 INFO    ] Checking for system updates...
[2026-06-13 01:58:52,150.150 INFO    ] 200
[2026-06-13 01:58:52,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:52,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:52,184.184 INFO    ] No update needed
[2026-06-13 01:58:52,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 01:58:52,207.207 INFO    ] 200
[2026-06-13 01:58:52,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:58:52,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:58:52,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:58:52,272.272 INFO    ] No camera update needed
[2026-06-13 01:58:52,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:58:52,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:58:52,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:58:52,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:58:54,320.320 INFO    ] ================================================
[2026-06-13 01:58:54,335.335 INFO    ] Launching Daemon at Sat Jun 13 01:58:54 IST 2026
[2026-06-13 01:58:54,346.346 INFO    ] ================================================
[2026-06-13 01:58:54,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:58:54
[2026-06-13 01:58:55,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:58:55,137.137 INFO    ] Initializing speech engine...
[2026-06-13 01:58:55,145.145 INFO    ] 2026-06-13 01:58:55
[2026-06-13 01:58:55,368.368 INFO    ] 2026-06-13 01:58:55
[2026-06-13 01:58:55,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:58:55,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:58:55,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:58:55,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:58:55,677.677 INFO    ] time= 13/06/2026 01:58:55
[2026-06-13 01:58:55,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:58:55,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:58:55,833.833 INFO    ] No existing commands found in stream
[2026-06-13 01:59:00,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:00,845.845 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 01:59:01,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:59:01,532.532 INFO    ] Checking for system updates...
[2026-06-13 01:59:01,566.566 INFO    ] 200
[2026-06-13 01:59:01,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:01,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:59:01,635.635 INFO    ] No update needed
[2026-06-13 01:59:01,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 01:59:01,672.672 INFO    ] 200
[2026-06-13 01:59:01,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:01,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:59:01,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:59:01,779.779 INFO    ] No camera update needed
[2026-06-13 01:59:01,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:59:01,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:59:01,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:59:01,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:59:03,834.834 INFO    ] ================================================
[2026-06-13 01:59:03,849.849 INFO    ] Launching Daemon at Sat Jun 13 01:59:03 IST 2026
[2026-06-13 01:59:03,859.859 INFO    ] ================================================
[2026-06-13 01:59:04,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:59:04
[2026-06-13 01:59:04,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:59:04,716.716 INFO    ] Initializing speech engine...
[2026-06-13 01:59:04,723.723 INFO    ] 2026-06-13 01:59:04
[2026-06-13 01:59:04,987.987 INFO    ] 2026-06-13 01:59:04
[2026-06-13 01:59:05,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:59:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:59:05,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:59:05,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:59:05,445.445 INFO    ] time= 13/06/2026 01:59:05
[2026-06-13 01:59:05,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:59:05,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:59:05,564.564 INFO    ] No existing commands found in stream
[2026-06-13 01:59:10,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:10,577.577 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 01:59:14,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 01:59:14,675.675 INFO    ] Checking for system updates...
[2026-06-13 01:59:14,696.696 INFO    ] 200
[2026-06-13 01:59:14,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:14,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:59:14,729.729 INFO    ] No update needed
[2026-06-13 01:59:14,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 01:59:14,750.750 INFO    ] 200
[2026-06-13 01:59:14,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:14,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:59:14,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:14,819.819 INFO    ] No camera update needed
[2026-06-13 01:59:14,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:59:14,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:59:14,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:59:14,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:59:16,865.865 INFO    ] ================================================
[2026-06-13 01:59:16,881.881 INFO    ] Launching Daemon at Sat Jun 13 01:59:16 IST 2026
[2026-06-13 01:59:16,892.892 INFO    ] ================================================
[2026-06-13 01:59:17,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:59:17
[2026-06-13 01:59:17,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:59:17,675.675 INFO    ] Initializing speech engine...
[2026-06-13 01:59:17,680.680 INFO    ] 2026-06-13 01:59:17
[2026-06-13 01:59:17,884.884 INFO    ] 2026-06-13 01:59:17
[2026-06-13 01:59:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:59:18,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:59:18,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:59:18,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:59:18,293.293 INFO    ] time= 13/06/2026 01:59:18
[2026-06-13 01:59:18,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:59:18,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:59:18,399.399 INFO    ] No existing commands found in stream
[2026-06-13 01:59:23,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:23,434.434 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 01:59:24,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 01:59:24,557.557 INFO    ] Checking for system updates...
[2026-06-13 01:59:24,578.578 INFO    ] 200
[2026-06-13 01:59:24,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:24,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:24,611.611 INFO    ] No update needed
[2026-06-13 01:59:24,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 01:59:24,633.633 INFO    ] 200
[2026-06-13 01:59:24,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:24,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:59:24,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:24,694.694 INFO    ] No camera update needed
[2026-06-13 01:59:24,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:59:24,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:59:24,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:59:24,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:59:26,742.742 INFO    ] ================================================
[2026-06-13 01:59:26,758.758 INFO    ] Launching Daemon at Sat Jun 13 01:59:26 IST 2026
[2026-06-13 01:59:26,770.770 INFO    ] ================================================
[2026-06-13 01:59:27,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:59:27
[2026-06-13 01:59:27,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:59:27,561.561 INFO    ] Initializing speech engine...
[2026-06-13 01:59:27,566.566 INFO    ] 2026-06-13 01:59:27
[2026-06-13 01:59:27,772.772 INFO    ] 2026-06-13 01:59:27
[2026-06-13 01:59:27,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:59:28,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:59:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:59:28,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:59:28,192.192 INFO    ] time= 13/06/2026 01:59:28
[2026-06-13 01:59:28,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:59:28,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:59:28,356.356 INFO    ] No existing commands found in stream
[2026-06-13 01:59:33,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:33,373.373 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 01:59:36,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 01:59:36,919.919 INFO    ] Checking for system updates...
[2026-06-13 01:59:36,939.939 INFO    ] 200
[2026-06-13 01:59:36,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:36,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:36,975.975 INFO    ] No update needed
[2026-06-13 01:59:36,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 01:59:36,995.995 INFO    ] 200
[2026-06-13 01:59:36,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:37,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:59:37,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:37,064.064 INFO    ] No camera update needed
[2026-06-13 01:59:37,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:59:37,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:59:37,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:59:37,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:59:39,111.111 INFO    ] ================================================
[2026-06-13 01:59:39,127.127 INFO    ] Launching Daemon at Sat Jun 13 01:59:39 IST 2026
[2026-06-13 01:59:39,138.138 INFO    ] ================================================
[2026-06-13 01:59:39,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:59:39
[2026-06-13 01:59:39,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:59:39,970.970 INFO    ] Initializing speech engine...
[2026-06-13 01:59:39,975.975 INFO    ] 2026-06-13 01:59:39
[2026-06-13 01:59:40,179.179 INFO    ] 2026-06-13 01:59:40
[2026-06-13 01:59:40,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:59:40,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:59:40,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:59:40,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:59:40,583.583 INFO    ] time= 13/06/2026 01:59:40
[2026-06-13 01:59:40,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:59:40,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:59:40,694.694 INFO    ] No existing commands found in stream
[2026-06-13 01:59:45,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:45,711.711 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 01:59:48,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 01:59:48,410.410 INFO    ] Checking for system updates...
[2026-06-13 01:59:48,431.431 INFO    ] 200
[2026-06-13 01:59:48,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:48,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 01:59:48,465.465 INFO    ] No update needed
[2026-06-13 01:59:48,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 01:59:48,486.486 INFO    ] 200
[2026-06-13 01:59:48,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 01:59:48,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 01:59:48,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 01:59:48,658.658 INFO    ] No camera update needed
[2026-06-13 01:59:48,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-13 01:59:48,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 01:59:48,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 01:59:48,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 01:59:50,705.705 INFO    ] ================================================
[2026-06-13 01:59:50,720.720 INFO    ] Launching Daemon at Sat Jun 13 01:59:50 IST 2026
[2026-06-13 01:59:50,731.731 INFO    ] ================================================
[2026-06-13 01:59:51,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 01:59:51
[2026-06-13 01:59:51,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 01:59:51,553.553 INFO    ] Initializing speech engine...
[2026-06-13 01:59:51,558.558 INFO    ] 2026-06-13 01:59:51
[2026-06-13 01:59:51,762.762 INFO    ] 2026-06-13 01:59:51
[2026-06-13 01:59:51,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 01:59:51,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 01:59:51,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 01:59:52,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 01:59:52,172.172 INFO    ] time= 13/06/2026 01:59:52
[2026-06-13 01:59:52,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 01:59:52,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 01:59:52,275.275 INFO    ] No existing commands found in stream
[2026-06-13 01:59:57,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 01:59:57,289.289 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 02:00:00,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:00:00,310.310 INFO    ] Checking for system updates...
[2026-06-13 02:00:00,332.332 INFO    ] 200
[2026-06-13 02:00:00,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:00,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:00:00,369.369 INFO    ] No update needed
[2026-06-13 02:00:00,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 02:00:00,393.393 INFO    ] 200
[2026-06-13 02:00:00,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:00,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:00:00,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:00:00,458.458 INFO    ] No camera update needed
[2026-06-13 02:00:00,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:00:00,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:00:00,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:00:00,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:00:02,510.510 INFO    ] ================================================
[2026-06-13 02:00:02,651.651 INFO    ] Launching Daemon at Sat Jun 13 02:00:02 IST 2026
[2026-06-13 02:00:02,750.750 INFO    ] ================================================
[2026-06-13 02:00:04,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:00:04
[2026-06-13 02:00:05,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:00:06,016.016 INFO    ] Initializing speech engine...
[2026-06-13 02:00:06,025.025 INFO    ] 2026-06-13 02:00:06
[2026-06-13 02:00:06,277.277 INFO    ] 2026-06-13 02:00:06
[2026-06-13 02:00:06,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:00:06,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:00:06,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:00:06,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:00:06,589.589 INFO    ] time= 13/06/2026 02:00:06
[2026-06-13 02:00:06,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:00:06,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:00:06,691.691 INFO    ] No existing commands found in stream
[2026-06-13 02:00:11,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:00:11,723.723 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 02:00:15,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:00:15,471.471 INFO    ] Checking for system updates...
[2026-06-13 02:00:15,492.492 INFO    ] 200
[2026-06-13 02:00:15,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:15,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:00:15,526.526 INFO    ] No update needed
[2026-06-13 02:00:15,528.528 INFO    ] Checking for camera pi updates...
[2026-06-13 02:00:15,549.549 INFO    ] 200
[2026-06-13 02:00:15,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:15,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:00:15,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:00:15,624.624 INFO    ] No camera update needed
[2026-06-13 02:00:15,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:00:15,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:00:15,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:00:15,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:00:17,672.672 INFO    ] ================================================
[2026-06-13 02:00:17,688.688 INFO    ] Launching Daemon at Sat Jun 13 02:00:17 IST 2026
[2026-06-13 02:00:17,700.700 INFO    ] ================================================
[2026-06-13 02:00:18,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:00:18
[2026-06-13 02:00:18,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:00:18,578.578 INFO    ] Initializing speech engine...
[2026-06-13 02:00:18,584.584 INFO    ] 2026-06-13 02:00:18
[2026-06-13 02:00:18,790.790 INFO    ] 2026-06-13 02:00:18
[2026-06-13 02:00:18,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:00:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:00:19,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:00:19,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:00:19,207.207 INFO    ] time= 13/06/2026 02:00:19
[2026-06-13 02:00:19,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:00:19,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:00:19,309.309 INFO    ] No existing commands found in stream
[2026-06-13 02:00:24,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:00:24,322.322 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 02:00:25,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:00:25,985.985 INFO    ] Checking for system updates...
[2026-06-13 02:00:26,045.045 INFO    ] 200
[2026-06-13 02:00:26,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:26,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:00:26,217.217 INFO    ] No update needed
[2026-06-13 02:00:26,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 02:00:26,264.264 INFO    ] 200
[2026-06-13 02:00:26,266.266 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:26,267.267 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 02:00:26,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:00:26,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:00:26,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:00:26,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:00:28,301.301 INFO    ] ================================================
[2026-06-13 02:00:28,311.311 INFO    ] Launching Daemon at Sat Jun 13 02:00:28 IST 2026
[2026-06-13 02:00:28,318.318 INFO    ] ================================================
[2026-06-13 02:00:28,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:00:28
[2026-06-13 02:00:28,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:00:29,111.111 INFO    ] Initializing speech engine...
[2026-06-13 02:00:29,122.122 INFO    ] 2026-06-13 02:00:29
[2026-06-13 02:00:29,343.343 INFO    ] 2026-06-13 02:00:29
[2026-06-13 02:00:29,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:00:29,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:00:29,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:00:29,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:00:29,594.594 INFO    ] time= 13/06/2026 02:00:29
[2026-06-13 02:00:29,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:00:29,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:00:29,679.679 INFO    ] No existing commands found in stream
[2026-06-13 02:00:34,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:00:34,703.703 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 02:00:38,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:00:38,999.999 INFO    ] Checking for system updates...
[2026-06-13 02:00:39,020.020 INFO    ] 200
[2026-06-13 02:00:39,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:39,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:00:39,055.055 INFO    ] No update needed
[2026-06-13 02:00:39,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 02:00:39,076.076 INFO    ] 200
[2026-06-13 02:00:39,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:39,102.102 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:00:39,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:00:39,127.127 INFO    ] No camera update needed
[2026-06-13 02:00:39,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:00:39,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:00:39,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:00:39,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:00:41,174.174 INFO    ] ================================================
[2026-06-13 02:00:41,191.191 INFO    ] Launching Daemon at Sat Jun 13 02:00:41 IST 2026
[2026-06-13 02:00:41,202.202 INFO    ] ================================================
[2026-06-13 02:00:41,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:00:41
[2026-06-13 02:00:41,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:00:42,056.056 INFO    ] Initializing speech engine...
[2026-06-13 02:00:42,062.062 INFO    ] 2026-06-13 02:00:42
[2026-06-13 02:00:42,274.274 INFO    ] 2026-06-13 02:00:42
[2026-06-13 02:00:42,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:00:42,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:00:42,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:00:42,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:00:42,608.608 INFO    ] time= 13/06/2026 02:00:42
[2026-06-13 02:00:42,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:00:42,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:00:42,805.805 INFO    ] No existing commands found in stream
[2026-06-13 02:00:47,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:00:47,818.818 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 02:00:51,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:00:51,811.811 INFO    ] Checking for system updates...
[2026-06-13 02:00:51,833.833 INFO    ] 200
[2026-06-13 02:00:51,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:51,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:00:51,866.866 INFO    ] No update needed
[2026-06-13 02:00:51,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 02:00:51,887.887 INFO    ] 200
[2026-06-13 02:00:51,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:00:51,912.912 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:00:51,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:00:51,937.937 INFO    ] No camera update needed
[2026-06-13 02:00:51,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:00:51,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:00:51,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:00:51,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:00:53,987.987 INFO    ] ================================================
[2026-06-13 02:00:54,003.003 INFO    ] Launching Daemon at Sat Jun 13 02:00:53 IST 2026
[2026-06-13 02:00:54,014.014 INFO    ] ================================================
[2026-06-13 02:00:54,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:00:54
[2026-06-13 02:00:54,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:00:54,789.789 INFO    ] Initializing speech engine...
[2026-06-13 02:00:54,794.794 INFO    ] 2026-06-13 02:00:54
[2026-06-13 02:00:54,997.997 INFO    ] 2026-06-13 02:00:54
[2026-06-13 02:00:55,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:00:55,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:00:55,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:00:55,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:00:55,413.413 INFO    ] time= 13/06/2026 02:00:55
[2026-06-13 02:00:55,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:00:55,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:00:55,510.510 INFO    ] No existing commands found in stream
[2026-06-13 02:01:00,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:00,526.526 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 02:01:04,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:01:04,604.604 INFO    ] Checking for system updates...
[2026-06-13 02:01:04,626.626 INFO    ] 200
[2026-06-13 02:01:04,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:04,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:04,661.661 INFO    ] No update needed
[2026-06-13 02:01:04,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 02:01:04,682.682 INFO    ] 200
[2026-06-13 02:01:04,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:04,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:01:04,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:04,756.756 INFO    ] No camera update needed
[2026-06-13 02:01:04,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:01:04,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:01:04,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:01:04,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:01:06,804.804 INFO    ] ================================================
[2026-06-13 02:01:06,821.821 INFO    ] Launching Daemon at Sat Jun 13 02:01:06 IST 2026
[2026-06-13 02:01:06,831.831 INFO    ] ================================================
[2026-06-13 02:01:07,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:01:07
[2026-06-13 02:01:07,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:01:07,614.614 INFO    ] Initializing speech engine...
[2026-06-13 02:01:07,619.619 INFO    ] 2026-06-13 02:01:07
[2026-06-13 02:01:07,822.822 INFO    ] 2026-06-13 02:01:07
[2026-06-13 02:01:07,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:01:07,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:01:08,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:01:08,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:01:08,163.163 INFO    ] time= 13/06/2026 02:01:08
[2026-06-13 02:01:08,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:01:08,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:01:08,370.370 INFO    ] No existing commands found in stream
[2026-06-13 02:01:13,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:13,383.383 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 02:01:14,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:01:14,398.398 INFO    ] Checking for system updates...
[2026-06-13 02:01:14,420.420 INFO    ] 200
[2026-06-13 02:01:14,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:14,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:14,454.454 INFO    ] No update needed
[2026-06-13 02:01:14,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 02:01:14,475.475 INFO    ] 200
[2026-06-13 02:01:14,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:14,500.500 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:01:14,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:14,545.545 INFO    ] No camera update needed
[2026-06-13 02:01:14,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:01:14,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:01:14,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:01:14,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:01:16,594.594 INFO    ] ================================================
[2026-06-13 02:01:16,610.610 INFO    ] Launching Daemon at Sat Jun 13 02:01:16 IST 2026
[2026-06-13 02:01:16,621.621 INFO    ] ================================================
[2026-06-13 02:01:16,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:01:16
[2026-06-13 02:01:17,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:01:17,483.483 INFO    ] Initializing speech engine...
[2026-06-13 02:01:17,494.494 INFO    ] 2026-06-13 02:01:17
[2026-06-13 02:01:17,705.705 INFO    ] 2026-06-13 02:01:17
[2026-06-13 02:01:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:01:17,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:01:17,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:01:18,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:01:18,129.129 INFO    ] time= 13/06/2026 02:01:18
[2026-06-13 02:01:18,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:01:18,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:01:18,232.232 INFO    ] No existing commands found in stream
[2026-06-13 02:01:23,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:23,251.251 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 02:01:26,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:01:26,299.299 INFO    ] Checking for system updates...
[2026-06-13 02:01:26,320.320 INFO    ] 200
[2026-06-13 02:01:26,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:26,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:26,355.355 INFO    ] No update needed
[2026-06-13 02:01:26,356.356 INFO    ] Checking for camera pi updates...
[2026-06-13 02:01:26,376.376 INFO    ] 200
[2026-06-13 02:01:26,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:26,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:01:26,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:26,445.445 INFO    ] No camera update needed
[2026-06-13 02:01:26,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:01:26,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:01:26,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:01:26,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:01:28,495.495 INFO    ] ================================================
[2026-06-13 02:01:28,511.511 INFO    ] Launching Daemon at Sat Jun 13 02:01:28 IST 2026
[2026-06-13 02:01:28,523.523 INFO    ] ================================================
[2026-06-13 02:01:28,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:01:28
[2026-06-13 02:01:29,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:01:29,294.294 INFO    ] Initializing speech engine...
[2026-06-13 02:01:29,297.297 INFO    ] 2026-06-13 02:01:29
[2026-06-13 02:01:29,494.494 INFO    ] 2026-06-13 02:01:29
[2026-06-13 02:01:29,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:01:29,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:01:29,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:01:29,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:01:29,795.795 INFO    ] time= 13/06/2026 02:01:29
[2026-06-13 02:01:29,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:01:29,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:01:29,872.872 INFO    ] No existing commands found in stream
[2026-06-13 02:01:34,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:34,910.910 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 02:01:38,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:01:38,361.361 INFO    ] Checking for system updates...
[2026-06-13 02:01:38,382.382 INFO    ] 200
[2026-06-13 02:01:38,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:38,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:38,416.416 INFO    ] No update needed
[2026-06-13 02:01:38,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 02:01:38,438.438 INFO    ] 200
[2026-06-13 02:01:38,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:38,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:01:38,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:01:38,504.504 INFO    ] No camera update needed
[2026-06-13 02:01:38,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:01:38,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:01:38,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:01:38,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:01:40,554.554 INFO    ] ================================================
[2026-06-13 02:01:40,570.570 INFO    ] Launching Daemon at Sat Jun 13 02:01:40 IST 2026
[2026-06-13 02:01:40,580.580 INFO    ] ================================================
[2026-06-13 02:01:40,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:01:40
[2026-06-13 02:01:41,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:01:41,427.427 INFO    ] Initializing speech engine...
[2026-06-13 02:01:41,432.432 INFO    ] 2026-06-13 02:01:41
[2026-06-13 02:01:41,640.640 INFO    ] 2026-06-13 02:01:41
[2026-06-13 02:01:41,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:01:41,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:01:41,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:01:42,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:01:42,055.055 INFO    ] time= 13/06/2026 02:01:42
[2026-06-13 02:01:42,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:01:42,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:01:42,234.234 INFO    ] No existing commands found in stream
[2026-06-13 02:01:47,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:47,272.272 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 02:01:48,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:01:48,559.559 INFO    ] Checking for system updates...
[2026-06-13 02:01:48,581.581 INFO    ] 200
[2026-06-13 02:01:48,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:48,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:01:48,615.615 INFO    ] No update needed
[2026-06-13 02:01:48,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 02:01:48,636.636 INFO    ] 200
[2026-06-13 02:01:48,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:01:48,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:01:48,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:01:48,704.704 INFO    ] No camera update needed
[2026-06-13 02:01:48,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:01:48,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:01:48,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:01:48,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:01:50,753.753 INFO    ] ================================================
[2026-06-13 02:01:50,769.769 INFO    ] Launching Daemon at Sat Jun 13 02:01:50 IST 2026
[2026-06-13 02:01:50,781.781 INFO    ] ================================================
[2026-06-13 02:01:51,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:01:51
[2026-06-13 02:01:51,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:01:51,679.679 INFO    ] Initializing speech engine...
[2026-06-13 02:01:51,684.684 INFO    ] 2026-06-13 02:01:51
[2026-06-13 02:01:51,892.892 INFO    ] 2026-06-13 02:01:51
[2026-06-13 02:01:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:01:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:01:52,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:01:52,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:01:52,297.297 INFO    ] time= 13/06/2026 02:01:52
[2026-06-13 02:01:52,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:01:52,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:01:52,414.414 INFO    ] No existing commands found in stream
[2026-06-13 02:01:57,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:01:57,429.429 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 02:02:00,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:02:00,981.981 INFO    ] Checking for system updates...
[2026-06-13 02:02:01,003.003 INFO    ] 200
[2026-06-13 02:02:01,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:01,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:01,039.039 INFO    ] No update needed
[2026-06-13 02:02:01,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:01,062.062 INFO    ] 200
[2026-06-13 02:02:01,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:01,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:01,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:01,236.236 INFO    ] No camera update needed
[2026-06-13 02:02:01,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:01,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:01,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:01,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:03,287.287 INFO    ] ================================================
[2026-06-13 02:02:03,302.302 INFO    ] Launching Daemon at Sat Jun 13 02:02:03 IST 2026
[2026-06-13 02:02:03,313.313 INFO    ] ================================================
[2026-06-13 02:02:03,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:03
[2026-06-13 02:02:04,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:04,155.155 INFO    ] Initializing speech engine...
[2026-06-13 02:02:04,160.160 INFO    ] 2026-06-13 02:02:04
[2026-06-13 02:02:04,348.348 INFO    ] 2026-06-13 02:02:04
[2026-06-13 02:02:04,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:02:04,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:02:04,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:02:04,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:02:04,835.835 INFO    ] time= 13/06/2026 02:02:04
[2026-06-13 02:02:04,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:02:04,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:02:04,974.974 INFO    ] No existing commands found in stream
[2026-06-13 02:02:09,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:02:09,990.990 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 02:02:12,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:02:12,873.873 INFO    ] Checking for system updates...
[2026-06-13 02:02:12,894.894 INFO    ] 200
[2026-06-13 02:02:12,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:12,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:12,928.928 INFO    ] No update needed
[2026-06-13 02:02:12,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:12,949.949 INFO    ] 200
[2026-06-13 02:02:12,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:12,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:13,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:13,018.018 INFO    ] No camera update needed
[2026-06-13 02:02:13,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:13,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:13,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:13,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:15,067.067 INFO    ] ================================================
[2026-06-13 02:02:15,083.083 INFO    ] Launching Daemon at Sat Jun 13 02:02:15 IST 2026
[2026-06-13 02:02:15,094.094 INFO    ] ================================================
[2026-06-13 02:02:15,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:15
[2026-06-13 02:02:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:16,222.222 INFO    ] Initializing speech engine...
[2026-06-13 02:02:16,232.232 INFO    ] 2026-06-13 02:02:16
[2026-06-13 02:02:16,533.533 INFO    ] 2026-06-13 02:02:16
[2026-06-13 02:02:16,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:02:16,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:02:16,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:02:16,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:02:16,886.886 INFO    ] time= 13/06/2026 02:02:16
[2026-06-13 02:02:16,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:02:16,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:02:16,965.965 INFO    ] No existing commands found in stream
[2026-06-13 02:02:21,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:02:21,979.979 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 02:02:23,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:02:23,358.358 INFO    ] Checking for system updates...
[2026-06-13 02:02:23,379.379 INFO    ] 200
[2026-06-13 02:02:23,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:23,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:23,412.412 INFO    ] No update needed
[2026-06-13 02:02:23,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:23,434.434 INFO    ] 200
[2026-06-13 02:02:23,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:23,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:23,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:23,502.502 INFO    ] No camera update needed
[2026-06-13 02:02:23,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:23,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:23,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:23,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:25,551.551 INFO    ] ================================================
[2026-06-13 02:02:25,568.568 INFO    ] Launching Daemon at Sat Jun 13 02:02:25 IST 2026
[2026-06-13 02:02:25,580.580 INFO    ] ================================================
[2026-06-13 02:02:25,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:25
[2026-06-13 02:02:26,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:26,373.373 INFO    ] Initializing speech engine...
[2026-06-13 02:02:26,377.377 INFO    ] 2026-06-13 02:02:26
[2026-06-13 02:02:26,583.583 INFO    ] 2026-06-13 02:02:26
[2026-06-13 02:02:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:02:26,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:02:26,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:02:26,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:02:26,981.981 INFO    ] time= 13/06/2026 02:02:26
[2026-06-13 02:02:27,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:02:27,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:02:27,105.105 INFO    ] No existing commands found in stream
[2026-06-13 02:02:32,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:02:32,111.111 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 02:02:32,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:02:32,565.565 INFO    ] Checking for system updates...
[2026-06-13 02:02:32,587.587 INFO    ] 200
[2026-06-13 02:02:32,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:32,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:32,623.623 INFO    ] No update needed
[2026-06-13 02:02:32,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:32,643.643 INFO    ] 200
[2026-06-13 02:02:32,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:32,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:32,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:32,723.723 INFO    ] No camera update needed
[2026-06-13 02:02:32,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:32,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:32,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:32,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:34,765.765 INFO    ] ================================================
[2026-06-13 02:02:34,774.774 INFO    ] Launching Daemon at Sat Jun 13 02:02:34 IST 2026
[2026-06-13 02:02:34,781.781 INFO    ] ================================================
[2026-06-13 02:02:35,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:35
[2026-06-13 02:02:35,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:35,551.551 INFO    ] Initializing speech engine...
[2026-06-13 02:02:35,556.556 INFO    ] 2026-06-13 02:02:35
[2026-06-13 02:02:35,762.762 INFO    ] 2026-06-13 02:02:35
[2026-06-13 02:02:35,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:02:35,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:02:35,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:02:36,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:02:36,173.173 INFO    ] time= 13/06/2026 02:02:36
[2026-06-13 02:02:36,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:02:36,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:02:36,279.279 INFO    ] No existing commands found in stream
[2026-06-13 02:02:41,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:02:41,296.296 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 02:02:44,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:02:44,866.866 INFO    ] Checking for system updates...
[2026-06-13 02:02:44,891.891 INFO    ] 200
[2026-06-13 02:02:44,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:44,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:02:44,926.926 INFO    ] No update needed
[2026-06-13 02:02:44,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:44,948.948 INFO    ] 200
[2026-06-13 02:02:44,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:44,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:45,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:02:45,019.019 INFO    ] No camera update needed
[2026-06-13 02:02:45,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:45,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:45,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:45,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:47,066.066 INFO    ] ================================================
[2026-06-13 02:02:47,082.082 INFO    ] Launching Daemon at Sat Jun 13 02:02:47 IST 2026
[2026-06-13 02:02:47,093.093 INFO    ] ================================================
[2026-06-13 02:02:47,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:47
[2026-06-13 02:02:47,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:47,865.865 INFO    ] Initializing speech engine...
[2026-06-13 02:02:47,878.878 INFO    ] 2026-06-13 02:02:47
[2026-06-13 02:02:48,096.096 INFO    ] 2026-06-13 02:02:48
[2026-06-13 02:02:48,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:02:48,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:02:48,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:02:48,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:02:48,507.507 INFO    ] time= 13/06/2026 02:02:48
[2026-06-13 02:02:48,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:02:48,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:02:48,643.643 INFO    ] No existing commands found in stream
[2026-06-13 02:02:53,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:02:53,654.654 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 02:02:56,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:02:56,737.737 INFO    ] Checking for system updates...
[2026-06-13 02:02:56,758.758 INFO    ] 200
[2026-06-13 02:02:56,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:56,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:02:56,792.792 INFO    ] No update needed
[2026-06-13 02:02:56,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 02:02:56,813.813 INFO    ] 200
[2026-06-13 02:02:56,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:02:56,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:02:56,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:02:56,879.879 INFO    ] No camera update needed
[2026-06-13 02:02:56,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:02:56,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:02:56,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:02:56,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:02:58,927.927 INFO    ] ================================================
[2026-06-13 02:02:58,942.942 INFO    ] Launching Daemon at Sat Jun 13 02:02:58 IST 2026
[2026-06-13 02:02:58,954.954 INFO    ] ================================================
[2026-06-13 02:02:59,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:02:59
[2026-06-13 02:02:59,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:02:59,806.806 INFO    ] Initializing speech engine...
[2026-06-13 02:02:59,811.811 INFO    ] 2026-06-13 02:02:59
[2026-06-13 02:03:00,016.016 INFO    ] 2026-06-13 02:03:00
[2026-06-13 02:03:00,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:00,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:00,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:00,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:00,451.451 INFO    ] time= 13/06/2026 02:03:00
[2026-06-13 02:03:00,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:00,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:00,719.719 INFO    ] No existing commands found in stream
[2026-06-13 02:03:05,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:03:05,758.758 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 02:03:07,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:03:07,255.255 INFO    ] Checking for system updates...
[2026-06-13 02:03:07,277.277 INFO    ] 200
[2026-06-13 02:03:07,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:07,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:03:07,311.311 INFO    ] No update needed
[2026-06-13 02:03:07,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 02:03:07,333.333 INFO    ] 200
[2026-06-13 02:03:07,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:07,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:03:07,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:03:07,402.402 INFO    ] No camera update needed
[2026-06-13 02:03:07,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:03:07,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:03:07,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:03:07,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:03:09,450.450 INFO    ] ================================================
[2026-06-13 02:03:09,465.465 INFO    ] Launching Daemon at Sat Jun 13 02:03:09 IST 2026
[2026-06-13 02:03:09,476.476 INFO    ] ================================================
[2026-06-13 02:03:09,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:03:09
[2026-06-13 02:03:10,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:03:10,270.270 INFO    ] Initializing speech engine...
[2026-06-13 02:03:10,274.274 INFO    ] 2026-06-13 02:03:10
[2026-06-13 02:03:10,483.483 INFO    ] 2026-06-13 02:03:10
[2026-06-13 02:03:10,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:10,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:10,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:10,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:10,897.897 INFO    ] time= 13/06/2026 02:03:10
[2026-06-13 02:03:10,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:10,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:11,005.005 INFO    ] No existing commands found in stream
[2026-06-13 02:03:16,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:03:16,017.017 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 02:03:19,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:03:19,353.353 INFO    ] Checking for system updates...
[2026-06-13 02:03:19,374.374 INFO    ] 200
[2026-06-13 02:03:19,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:19,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:19,412.412 INFO    ] No update needed
[2026-06-13 02:03:19,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 02:03:19,436.436 INFO    ] 200
[2026-06-13 02:03:19,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:19,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:03:19,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:19,513.513 INFO    ] No camera update needed
[2026-06-13 02:03:19,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:03:19,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:03:19,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:03:19,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:03:21,561.561 INFO    ] ================================================
[2026-06-13 02:03:21,577.577 INFO    ] Launching Daemon at Sat Jun 13 02:03:21 IST 2026
[2026-06-13 02:03:21,588.588 INFO    ] ================================================
[2026-06-13 02:03:21,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:03:21
[2026-06-13 02:03:22,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:03:22,391.391 INFO    ] Initializing speech engine...
[2026-06-13 02:03:22,399.399 INFO    ] 2026-06-13 02:03:22
[2026-06-13 02:03:22,611.611 INFO    ] 2026-06-13 02:03:22
[2026-06-13 02:03:22,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:22,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:22,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:22,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:23,012.012 INFO    ] time= 13/06/2026 02:03:22
[2026-06-13 02:03:23,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:23,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:23,135.135 INFO    ] No existing commands found in stream
[2026-06-13 02:03:28,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:03:28,146.146 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 02:03:32,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:03:32,296.296 INFO    ] Checking for system updates...
[2026-06-13 02:03:32,319.319 INFO    ] 200
[2026-06-13 02:03:32,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:32,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:32,352.352 INFO    ] No update needed
[2026-06-13 02:03:32,353.353 INFO    ] Checking for camera pi updates...
[2026-06-13 02:03:32,374.374 INFO    ] 200
[2026-06-13 02:03:32,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:32,400.400 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:03:32,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:32,428.428 INFO    ] No camera update needed
[2026-06-13 02:03:32,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:03:32,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:03:32,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:03:32,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:03:34,478.478 INFO    ] ================================================
[2026-06-13 02:03:34,493.493 INFO    ] Launching Daemon at Sat Jun 13 02:03:34 IST 2026
[2026-06-13 02:03:34,503.503 INFO    ] ================================================
[2026-06-13 02:03:34,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:03:34
[2026-06-13 02:03:35,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:03:35,330.330 INFO    ] Initializing speech engine...
[2026-06-13 02:03:35,335.335 INFO    ] 2026-06-13 02:03:35
[2026-06-13 02:03:35,544.544 INFO    ] 2026-06-13 02:03:35
[2026-06-13 02:03:35,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:35,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:35,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:35,954.954 INFO    ] time= 13/06/2026 02:03:35
[2026-06-13 02:03:35,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:35,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:36,064.064 INFO    ] No existing commands found in stream
[2026-06-13 02:03:41,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:03:41,077.077 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 02:03:44,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:03:44,102.102 INFO    ] Checking for system updates...
[2026-06-13 02:03:44,124.124 INFO    ] 200
[2026-06-13 02:03:44,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:44,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:03:44,160.160 INFO    ] No update needed
[2026-06-13 02:03:44,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 02:03:44,181.181 INFO    ] 200
[2026-06-13 02:03:44,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:44,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:03:44,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:03:44,248.248 INFO    ] No camera update needed
[2026-06-13 02:03:44,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:03:44,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:03:44,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:03:44,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:03:46,296.296 INFO    ] ================================================
[2026-06-13 02:03:46,312.312 INFO    ] Launching Daemon at Sat Jun 13 02:03:46 IST 2026
[2026-06-13 02:03:46,322.322 INFO    ] ================================================
[2026-06-13 02:03:46,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:03:46
[2026-06-13 02:03:46,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:03:47,102.102 INFO    ] Initializing speech engine...
[2026-06-13 02:03:47,110.110 INFO    ] 2026-06-13 02:03:47
[2026-06-13 02:03:47,323.323 INFO    ] 2026-06-13 02:03:47
[2026-06-13 02:03:47,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:47,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:47,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:47,736.736 INFO    ] time= 13/06/2026 02:03:47
[2026-06-13 02:03:47,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:47,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:47,844.844 INFO    ] No existing commands found in stream
[2026-06-13 02:03:52,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:03:52,857.857 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 02:03:54,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:03:54,515.515 INFO    ] Checking for system updates...
[2026-06-13 02:03:54,537.537 INFO    ] 200
[2026-06-13 02:03:54,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:54,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:54,571.571 INFO    ] No update needed
[2026-06-13 02:03:54,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 02:03:54,593.593 INFO    ] 200
[2026-06-13 02:03:54,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:03:54,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:03:54,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:03:54,662.662 INFO    ] No camera update needed
[2026-06-13 02:03:54,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:03:54,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:03:54,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:03:54,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:03:56,709.709 INFO    ] ================================================
[2026-06-13 02:03:56,724.724 INFO    ] Launching Daemon at Sat Jun 13 02:03:56 IST 2026
[2026-06-13 02:03:56,735.735 INFO    ] ================================================
[2026-06-13 02:03:57,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:03:57
[2026-06-13 02:03:57,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:03:57,573.573 INFO    ] Initializing speech engine...
[2026-06-13 02:03:57,579.579 INFO    ] 2026-06-13 02:03:57
[2026-06-13 02:03:57,787.787 INFO    ] 2026-06-13 02:03:57
[2026-06-13 02:03:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:03:58,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:03:58,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:03:58,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:03:58,190.190 INFO    ] time= 13/06/2026 02:03:58
[2026-06-13 02:03:58,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:03:58,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:03:58,306.306 INFO    ] No existing commands found in stream
[2026-06-13 02:04:03,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:03,321.321 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 02:04:05,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:04:05,617.617 INFO    ] Checking for system updates...
[2026-06-13 02:04:05,654.654 INFO    ] 200
[2026-06-13 02:04:05,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:05,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:04:05,717.717 INFO    ] No update needed
[2026-06-13 02:04:05,720.720 INFO    ] Checking for camera pi updates...
[2026-06-13 02:04:05,758.758 INFO    ] 200
[2026-06-13 02:04:05,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:05,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:04:05,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:04:05,841.841 INFO    ] No camera update needed
[2026-06-13 02:04:05,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:04:05,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:04:05,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:04:05,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:04:07,891.891 INFO    ] ================================================
[2026-06-13 02:04:07,906.906 INFO    ] Launching Daemon at Sat Jun 13 02:04:07 IST 2026
[2026-06-13 02:04:07,917.917 INFO    ] ================================================
[2026-06-13 02:04:08,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:04:08
[2026-06-13 02:04:08,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:04:08,721.721 INFO    ] Initializing speech engine...
[2026-06-13 02:04:08,725.725 INFO    ] 2026-06-13 02:04:08
[2026-06-13 02:04:08,928.928 INFO    ] 2026-06-13 02:04:08
[2026-06-13 02:04:08,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:04:09,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:04:09,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:04:09,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:04:09,359.359 INFO    ] time= 13/06/2026 02:04:09
[2026-06-13 02:04:09,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:04:09,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:04:09,472.472 INFO    ] No existing commands found in stream
[2026-06-13 02:04:14,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:14,483.483 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 02:04:17,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:04:17,328.328 INFO    ] Checking for system updates...
[2026-06-13 02:04:17,349.349 INFO    ] 200
[2026-06-13 02:04:17,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:17,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:17,399.399 INFO    ] No update needed
[2026-06-13 02:04:17,401.401 INFO    ] Checking for camera pi updates...
[2026-06-13 02:04:17,423.423 INFO    ] 200
[2026-06-13 02:04:17,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:17,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:04:17,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:04:17,472.472 INFO    ] No camera update needed
[2026-06-13 02:04:17,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:04:17,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:04:17,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:04:17,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:04:19,519.519 INFO    ] ================================================
[2026-06-13 02:04:19,534.534 INFO    ] Launching Daemon at Sat Jun 13 02:04:19 IST 2026
[2026-06-13 02:04:19,544.544 INFO    ] ================================================
[2026-06-13 02:04:19,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:04:19
[2026-06-13 02:04:20,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:04:20,337.337 INFO    ] Initializing speech engine...
[2026-06-13 02:04:20,343.343 INFO    ] 2026-06-13 02:04:20
[2026-06-13 02:04:20,545.545 INFO    ] 2026-06-13 02:04:20
[2026-06-13 02:04:20,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:04:20,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:04:20,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:04:20,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:04:20,949.949 INFO    ] time= 13/06/2026 02:04:20
[2026-06-13 02:04:20,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:04:20,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:04:21,058.058 INFO    ] No existing commands found in stream
[2026-06-13 02:04:26,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:26,085.085 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 02:04:28,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:04:28,835.835 INFO    ] Checking for system updates...
[2026-06-13 02:04:28,859.859 INFO    ] 200
[2026-06-13 02:04:28,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:28,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:28,894.894 INFO    ] No update needed
[2026-06-13 02:04:28,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 02:04:28,918.918 INFO    ] 200
[2026-06-13 02:04:28,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:28,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:04:28,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:28,979.979 INFO    ] No camera update needed
[2026-06-13 02:04:28,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:04:28,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:04:28,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:04:28,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:04:31,027.027 INFO    ] ================================================
[2026-06-13 02:04:31,042.042 INFO    ] Launching Daemon at Sat Jun 13 02:04:31 IST 2026
[2026-06-13 02:04:31,052.052 INFO    ] ================================================
[2026-06-13 02:04:31,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:04:31
[2026-06-13 02:04:31,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:04:31,922.922 INFO    ] Initializing speech engine...
[2026-06-13 02:04:31,938.938 INFO    ] 2026-06-13 02:04:31
[2026-06-13 02:04:32,159.159 INFO    ] 2026-06-13 02:04:32
[2026-06-13 02:04:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:04:32,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:04:32,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:04:32,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:04:32,589.589 INFO    ] time= 13/06/2026 02:04:32
[2026-06-13 02:04:32,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:04:32,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:04:32,689.689 INFO    ] No existing commands found in stream
[2026-06-13 02:04:37,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:37,706.706 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 02:04:39,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:04:39,212.212 INFO    ] Checking for system updates...
[2026-06-13 02:04:39,233.233 INFO    ] 200
[2026-06-13 02:04:39,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:39,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:39,268.268 INFO    ] No update needed
[2026-06-13 02:04:39,269.269 INFO    ] Checking for camera pi updates...
[2026-06-13 02:04:39,299.299 INFO    ] 200
[2026-06-13 02:04:39,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:39,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:04:39,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:04:39,378.378 INFO    ] No camera update needed
[2026-06-13 02:04:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:04:39,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:04:39,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:04:39,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:04:41,425.425 INFO    ] ================================================
[2026-06-13 02:04:41,440.440 INFO    ] Launching Daemon at Sat Jun 13 02:04:41 IST 2026
[2026-06-13 02:04:41,452.452 INFO    ] ================================================
[2026-06-13 02:04:41,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:04:41
[2026-06-13 02:04:42,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:04:42,313.313 INFO    ] Initializing speech engine...
[2026-06-13 02:04:42,318.318 INFO    ] 2026-06-13 02:04:42
[2026-06-13 02:04:42,527.527 INFO    ] 2026-06-13 02:04:42
[2026-06-13 02:04:42,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:04:42,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:04:42,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:04:42,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:04:42,946.946 INFO    ] time= 13/06/2026 02:04:42
[2026-06-13 02:04:42,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:04:42,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:04:43,049.049 INFO    ] No existing commands found in stream
[2026-06-13 02:04:48,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:48,061.061 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 02:04:49,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:04:49,800.800 INFO    ] Checking for system updates...
[2026-06-13 02:04:49,820.820 INFO    ] 200
[2026-06-13 02:04:49,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:49,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:49,856.856 INFO    ] No update needed
[2026-06-13 02:04:49,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 02:04:49,878.878 INFO    ] 200
[2026-06-13 02:04:49,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:04:49,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:04:49,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:04:49,943.943 INFO    ] No camera update needed
[2026-06-13 02:04:49,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:04:49,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:04:49,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:04:49,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:04:51,992.992 INFO    ] ================================================
[2026-06-13 02:04:52,007.007 INFO    ] Launching Daemon at Sat Jun 13 02:04:52 IST 2026
[2026-06-13 02:04:52,018.018 INFO    ] ================================================
[2026-06-13 02:04:52,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:04:52
[2026-06-13 02:04:52,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:04:52,824.824 INFO    ] Initializing speech engine...
[2026-06-13 02:04:52,829.829 INFO    ] 2026-06-13 02:04:52
[2026-06-13 02:04:53,035.035 INFO    ] 2026-06-13 02:04:53
[2026-06-13 02:04:53,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:04:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:04:53,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:04:53,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:04:53,435.435 INFO    ] time= 13/06/2026 02:04:53
[2026-06-13 02:04:53,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:04:53,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:04:53,573.573 INFO    ] No existing commands found in stream
[2026-06-13 02:04:58,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:04:58,601.601 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 02:05:02,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:05:02,897.897 INFO    ] Checking for system updates...
[2026-06-13 02:05:02,919.919 INFO    ] 200
[2026-06-13 02:05:02,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:02,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:02,961.961 INFO    ] No update needed
[2026-06-13 02:05:02,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:02,990.990 INFO    ] 200
[2026-06-13 02:05:02,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:03,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:03,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:03,054.054 INFO    ] No camera update needed
[2026-06-13 02:05:03,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:03,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:03,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:03,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:05:05,108.108 INFO    ] ================================================
[2026-06-13 02:05:05,123.123 INFO    ] Launching Daemon at Sat Jun 13 02:05:05 IST 2026
[2026-06-13 02:05:05,134.134 INFO    ] ================================================
[2026-06-13 02:05:05,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:05:05
[2026-06-13 02:05:05,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:05:05,944.944 INFO    ] Initializing speech engine...
[2026-06-13 02:05:05,952.952 INFO    ] 2026-06-13 02:05:05
[2026-06-13 02:05:06,144.144 INFO    ] 2026-06-13 02:05:06
[2026-06-13 02:05:06,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:05:06,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:05:06,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:05:06,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:05:06,585.585 INFO    ] time= 13/06/2026 02:05:06
[2026-06-13 02:05:06,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:05:06,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:05:06,696.696 INFO    ] No existing commands found in stream
[2026-06-13 02:05:11,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:05:11,708.708 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 02:05:14,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:05:14,551.551 INFO    ] Checking for system updates...
[2026-06-13 02:05:14,572.572 INFO    ] 200
[2026-06-13 02:05:14,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:14,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:14,605.605 INFO    ] No update needed
[2026-06-13 02:05:14,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:14,625.625 INFO    ] 200
[2026-06-13 02:05:14,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:14,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:14,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:14,690.690 INFO    ] No camera update needed
[2026-06-13 02:05:14,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:14,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:14,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:14,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:05:16,736.736 INFO    ] ================================================
[2026-06-13 02:05:16,751.751 INFO    ] Launching Daemon at Sat Jun 13 02:05:16 IST 2026
[2026-06-13 02:05:16,761.761 INFO    ] ================================================
[2026-06-13 02:05:17,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:05:17
[2026-06-13 02:05:17,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:05:17,561.561 INFO    ] Initializing speech engine...
[2026-06-13 02:05:17,566.566 INFO    ] 2026-06-13 02:05:17
[2026-06-13 02:05:17,781.781 INFO    ] 2026-06-13 02:05:17
[2026-06-13 02:05:17,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:05:17,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:05:18,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:05:18,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:05:18,210.210 INFO    ] time= 13/06/2026 02:05:18
[2026-06-13 02:05:18,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:05:18,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:05:18,329.329 INFO    ] No existing commands found in stream
[2026-06-13 02:05:23,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:05:23,342.342 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 02:05:26,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:05:26,616.616 INFO    ] Checking for system updates...
[2026-06-13 02:05:26,638.638 INFO    ] 200
[2026-06-13 02:05:26,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:26,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:26,673.673 INFO    ] No update needed
[2026-06-13 02:05:26,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:26,695.695 INFO    ] 200
[2026-06-13 02:05:26,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:26,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:26,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:05:26,765.765 INFO    ] No camera update needed
[2026-06-13 02:05:26,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:26,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:26,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:26,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:05:28,812.812 INFO    ] ================================================
[2026-06-13 02:05:28,827.827 INFO    ] Launching Daemon at Sat Jun 13 02:05:28 IST 2026
[2026-06-13 02:05:28,837.837 INFO    ] ================================================
[2026-06-13 02:05:29,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:05:29
[2026-06-13 02:05:29,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:05:29,673.673 INFO    ] Initializing speech engine...
[2026-06-13 02:05:29,676.676 INFO    ] 2026-06-13 02:05:29
[2026-06-13 02:05:29,891.891 INFO    ] 2026-06-13 02:05:29
[2026-06-13 02:05:29,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:05:30,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:05:30,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:05:30,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:05:30,297.297 INFO    ] time= 13/06/2026 02:05:30
[2026-06-13 02:05:30,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:05:30,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:05:30,407.407 INFO    ] No existing commands found in stream
[2026-06-13 02:05:35,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:05:35,420.420 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 02:05:38,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:05:38,740.740 INFO    ] Checking for system updates...
[2026-06-13 02:05:38,762.762 INFO    ] 200
[2026-06-13 02:05:38,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:38,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:38,794.794 INFO    ] No update needed
[2026-06-13 02:05:38,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:38,815.815 INFO    ] 200
[2026-06-13 02:05:38,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:38,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:38,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:38,877.877 INFO    ] No camera update needed
[2026-06-13 02:05:38,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:38,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:38,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:38,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:05:40,925.925 INFO    ] ================================================
[2026-06-13 02:05:40,941.941 INFO    ] Launching Daemon at Sat Jun 13 02:05:40 IST 2026
[2026-06-13 02:05:40,952.952 INFO    ] ================================================
[2026-06-13 02:05:41,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:05:41
[2026-06-13 02:05:41,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:05:41,800.800 INFO    ] Initializing speech engine...
[2026-06-13 02:05:41,805.805 INFO    ] 2026-06-13 02:05:41
[2026-06-13 02:05:42,012.012 INFO    ] 2026-06-13 02:05:41
[2026-06-13 02:05:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:05:42,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:05:42,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:05:42,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:05:42,434.434 INFO    ] time= 13/06/2026 02:05:42
[2026-06-13 02:05:42,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:05:42,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:05:42,531.531 INFO    ] No existing commands found in stream
[2026-06-13 02:05:47,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:05:47,549.549 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 02:05:49,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:05:49,133.133 INFO    ] Checking for system updates...
[2026-06-13 02:05:49,154.154 INFO    ] 200
[2026-06-13 02:05:49,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:49,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:49,189.189 INFO    ] No update needed
[2026-06-13 02:05:49,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:49,210.210 INFO    ] 200
[2026-06-13 02:05:49,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:49,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:49,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:49,279.279 INFO    ] No camera update needed
[2026-06-13 02:05:49,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:49,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:49,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:49,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:05:51,327.327 INFO    ] ================================================
[2026-06-13 02:05:51,343.343 INFO    ] Launching Daemon at Sat Jun 13 02:05:51 IST 2026
[2026-06-13 02:05:51,353.353 INFO    ] ================================================
[2026-06-13 02:05:51,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:05:51
[2026-06-13 02:05:52,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:05:52,151.151 INFO    ] Initializing speech engine...
[2026-06-13 02:05:52,156.156 INFO    ] 2026-06-13 02:05:52
[2026-06-13 02:05:52,362.362 INFO    ] 2026-06-13 02:05:52
[2026-06-13 02:05:52,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:05:52,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:05:52,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:05:52,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:05:52,769.769 INFO    ] time= 13/06/2026 02:05:52
[2026-06-13 02:05:52,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:05:52,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:05:52,880.880 INFO    ] No existing commands found in stream
[2026-06-13 02:05:57,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:05:57,912.912 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 02:05:59,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:05:59,283.283 INFO    ] Checking for system updates...
[2026-06-13 02:05:59,304.304 INFO    ] 200
[2026-06-13 02:05:59,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:59,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:59,340.340 INFO    ] No update needed
[2026-06-13 02:05:59,341.341 INFO    ] Checking for camera pi updates...
[2026-06-13 02:05:59,369.369 INFO    ] 200
[2026-06-13 02:05:59,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:05:59,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:05:59,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:05:59,444.444 INFO    ] No camera update needed
[2026-06-13 02:05:59,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:05:59,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:05:59,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:05:59,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:01,487.487 INFO    ] ================================================
[2026-06-13 02:06:01,498.498 INFO    ] Launching Daemon at Sat Jun 13 02:06:01 IST 2026
[2026-06-13 02:06:01,509.509 INFO    ] ================================================
[2026-06-13 02:06:01,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:01
[2026-06-13 02:06:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:02,439.439 INFO    ] Initializing speech engine...
[2026-06-13 02:06:02,445.445 INFO    ] 2026-06-13 02:06:02
[2026-06-13 02:06:02,649.649 INFO    ] 2026-06-13 02:06:02
[2026-06-13 02:06:02,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:06:02,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:06:02,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:06:02,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:06:02,897.897 INFO    ] time= 13/06/2026 02:06:02
[2026-06-13 02:06:02,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:06:02,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:06:03,026.026 INFO    ] No existing commands found in stream
[2026-06-13 02:06:08,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:06:08,063.063 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 02:06:08,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:06:08,858.858 INFO    ] Checking for system updates...
[2026-06-13 02:06:08,879.879 INFO    ] 200
[2026-06-13 02:06:08,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:08,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:06:08,912.912 INFO    ] No update needed
[2026-06-13 02:06:08,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 02:06:08,934.934 INFO    ] 200
[2026-06-13 02:06:08,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:08,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:06:09,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:06:09,107.107 INFO    ] No camera update needed
[2026-06-13 02:06:09,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:06:09,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:06:09,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:06:09,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:11,158.158 INFO    ] ================================================
[2026-06-13 02:06:11,176.176 INFO    ] Launching Daemon at Sat Jun 13 02:06:11 IST 2026
[2026-06-13 02:06:11,184.184 INFO    ] ================================================
[2026-06-13 02:06:11,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:11
[2026-06-13 02:06:12,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:12,660.660 INFO    ] Initializing speech engine...
[2026-06-13 02:06:12,685.685 INFO    ] 2026-06-13 02:06:12
[2026-06-13 02:06:12,970.970 INFO    ] 2026-06-13 02:06:12
[2026-06-13 02:06:13,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:06:13,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:06:13,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:06:13,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:06:13,312.312 INFO    ] time= 13/06/2026 02:06:13
[2026-06-13 02:06:13,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:06:13,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:06:13,427.427 INFO    ] No existing commands found in stream
[2026-06-13 02:06:18,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:06:18,443.443 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 02:06:18,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:06:18,915.915 INFO    ] Checking for system updates...
[2026-06-13 02:06:18,938.938 INFO    ] 200
[2026-06-13 02:06:18,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:18,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:18,971.971 INFO    ] No update needed
[2026-06-13 02:06:18,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 02:06:18,994.994 INFO    ] 200
[2026-06-13 02:06:18,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:19,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:06:19,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:19,059.059 INFO    ] No camera update needed
[2026-06-13 02:06:19,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:06:19,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:06:19,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:06:19,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:21,105.105 INFO    ] ================================================
[2026-06-13 02:06:21,122.122 INFO    ] Launching Daemon at Sat Jun 13 02:06:21 IST 2026
[2026-06-13 02:06:21,133.133 INFO    ] ================================================
[2026-06-13 02:06:21,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:21
[2026-06-13 02:06:21,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:21,916.916 INFO    ] Initializing speech engine...
[2026-06-13 02:06:21,921.921 INFO    ] 2026-06-13 02:06:21
[2026-06-13 02:06:22,128.128 INFO    ] 2026-06-13 02:06:22
[2026-06-13 02:06:22,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:06:22,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:06:22,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:06:22,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:06:22,535.535 INFO    ] time= 13/06/2026 02:06:22
[2026-06-13 02:06:22,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:06:22,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:06:22,778.778 INFO    ] No existing commands found in stream
[2026-06-13 02:06:27,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:06:27,807.807 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 02:06:31,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:06:31,276.276 INFO    ] Checking for system updates...
[2026-06-13 02:06:31,300.300 INFO    ] 200
[2026-06-13 02:06:31,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:31,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:06:31,338.338 INFO    ] No update needed
[2026-06-13 02:06:31,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 02:06:31,361.361 INFO    ] 200
[2026-06-13 02:06:31,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:31,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:06:31,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:06:31,421.421 INFO    ] No camera update needed
[2026-06-13 02:06:31,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:06:31,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:06:31,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:06:31,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:33,463.463 INFO    ] ================================================
[2026-06-13 02:06:33,478.478 INFO    ] Launching Daemon at Sat Jun 13 02:06:33 IST 2026
[2026-06-13 02:06:33,490.490 INFO    ] ================================================
[2026-06-13 02:06:33,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:33
[2026-06-13 02:06:34,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:34,280.280 INFO    ] Initializing speech engine...
[2026-06-13 02:06:34,286.286 INFO    ] 2026-06-13 02:06:34
[2026-06-13 02:06:34,492.492 INFO    ] 2026-06-13 02:06:34
[2026-06-13 02:06:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:06:34,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:06:34,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:06:34,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:06:34,893.893 INFO    ] time= 13/06/2026 02:06:34
[2026-06-13 02:06:34,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:06:34,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:06:35,015.015 INFO    ] No existing commands found in stream
[2026-06-13 02:06:40,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:06:40,053.053 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 02:06:44,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:06:44,143.143 INFO    ] Checking for system updates...
[2026-06-13 02:06:44,164.164 INFO    ] 200
[2026-06-13 02:06:44,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:44,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:44,197.197 INFO    ] No update needed
[2026-06-13 02:06:44,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 02:06:44,218.218 INFO    ] 200
[2026-06-13 02:06:44,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:44,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:06:44,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:44,285.285 INFO    ] No camera update needed
[2026-06-13 02:06:44,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:06:44,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:06:44,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:06:44,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:46,334.334 INFO    ] ================================================
[2026-06-13 02:06:46,350.350 INFO    ] Launching Daemon at Sat Jun 13 02:06:46 IST 2026
[2026-06-13 02:06:46,361.361 INFO    ] ================================================
[2026-06-13 02:06:46,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:46
[2026-06-13 02:06:47,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:47,192.192 INFO    ] Initializing speech engine...
[2026-06-13 02:06:47,198.198 INFO    ] 2026-06-13 02:06:47
[2026-06-13 02:06:47,415.415 INFO    ] 2026-06-13 02:06:47
[2026-06-13 02:06:47,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:06:47,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:06:47,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:06:47,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:06:47,663.663 INFO    ] time= 13/06/2026 02:06:47
[2026-06-13 02:06:47,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:06:47,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:06:47,749.749 INFO    ] No existing commands found in stream
[2026-06-13 02:06:52,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:06:52,784.784 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 02:06:56,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:06:56,922.922 INFO    ] Checking for system updates...
[2026-06-13 02:06:56,943.943 INFO    ] 200
[2026-06-13 02:06:56,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:56,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:56,975.975 INFO    ] No update needed
[2026-06-13 02:06:56,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 02:06:56,996.996 INFO    ] 200
[2026-06-13 02:06:56,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:06:57,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:06:57,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:06:57,061.061 INFO    ] No camera update needed
[2026-06-13 02:06:57,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:06:57,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:06:57,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:06:57,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:06:59,109.109 INFO    ] ================================================
[2026-06-13 02:06:59,124.124 INFO    ] Launching Daemon at Sat Jun 13 02:06:59 IST 2026
[2026-06-13 02:06:59,136.136 INFO    ] ================================================
[2026-06-13 02:06:59,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:06:59
[2026-06-13 02:06:59,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:06:59,996.996 INFO    ] Initializing speech engine...
[2026-06-13 02:07:00,002.002 INFO    ] 2026-06-13 02:06:59
[2026-06-13 02:07:00,208.208 INFO    ] 2026-06-13 02:07:00
[2026-06-13 02:07:00,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:00,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:00,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:00,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:00,606.606 INFO    ] time= 13/06/2026 02:07:00
[2026-06-13 02:07:00,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:00,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:00,728.728 INFO    ] No existing commands found in stream
[2026-06-13 02:07:05,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:05,742.742 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 02:07:06,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:07:06,638.638 INFO    ] Checking for system updates...
[2026-06-13 02:07:06,662.662 INFO    ] 200
[2026-06-13 02:07:06,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:06,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:06,696.696 INFO    ] No update needed
[2026-06-13 02:07:06,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 02:07:06,718.718 INFO    ] 200
[2026-06-13 02:07:06,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:06,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:07:06,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:06,784.784 INFO    ] No camera update needed
[2026-06-13 02:07:06,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:07:06,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:07:06,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:07:06,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:07:08,830.830 INFO    ] ================================================
[2026-06-13 02:07:08,846.846 INFO    ] Launching Daemon at Sat Jun 13 02:07:08 IST 2026
[2026-06-13 02:07:08,857.857 INFO    ] ================================================
[2026-06-13 02:07:09,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:07:09
[2026-06-13 02:07:09,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:07:09,709.709 INFO    ] Initializing speech engine...
[2026-06-13 02:07:09,715.715 INFO    ] 2026-06-13 02:07:09
[2026-06-13 02:07:09,916.916 INFO    ] 2026-06-13 02:07:09
[2026-06-13 02:07:09,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:10,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:10,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:10,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:10,332.332 INFO    ] time= 13/06/2026 02:07:10
[2026-06-13 02:07:10,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:10,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:10,428.428 INFO    ] No existing commands found in stream
[2026-06-13 02:07:15,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:15,441.441 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 02:07:17,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:07:17,819.819 INFO    ] Checking for system updates...
[2026-06-13 02:07:17,840.840 INFO    ] 200
[2026-06-13 02:07:17,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:17,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:17,875.875 INFO    ] No update needed
[2026-06-13 02:07:17,876.876 INFO    ] Checking for camera pi updates...
[2026-06-13 02:07:17,895.895 INFO    ] 200
[2026-06-13 02:07:17,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:17,921.921 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:07:17,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:17,969.969 INFO    ] No camera update needed
[2026-06-13 02:07:17,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:07:17,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:07:17,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:07:17,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:07:20,018.018 INFO    ] ================================================
[2026-06-13 02:07:20,033.033 INFO    ] Launching Daemon at Sat Jun 13 02:07:20 IST 2026
[2026-06-13 02:07:20,045.045 INFO    ] ================================================
[2026-06-13 02:07:20,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:07:20
[2026-06-13 02:07:20,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:07:20,885.885 INFO    ] Initializing speech engine...
[2026-06-13 02:07:20,890.890 INFO    ] 2026-06-13 02:07:20
[2026-06-13 02:07:21,094.094 INFO    ] 2026-06-13 02:07:21
[2026-06-13 02:07:21,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:21,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:21,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:21,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:21,501.501 INFO    ] time= 13/06/2026 02:07:21
[2026-06-13 02:07:21,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:21,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:21,613.613 INFO    ] No existing commands found in stream
[2026-06-13 02:07:26,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:26,641.641 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 02:07:27,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:07:27,157.157 INFO    ] Checking for system updates...
[2026-06-13 02:07:27,181.181 INFO    ] 200
[2026-06-13 02:07:27,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:27,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:07:27,231.231 INFO    ] No update needed
[2026-06-13 02:07:27,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 02:07:27,281.281 INFO    ] 200
[2026-06-13 02:07:27,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:27,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:07:27,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:07:27,369.369 INFO    ] No camera update needed
[2026-06-13 02:07:27,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:07:27,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:07:27,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:07:27,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:07:29,429.429 INFO    ] ================================================
[2026-06-13 02:07:29,444.444 INFO    ] Launching Daemon at Sat Jun 13 02:07:29 IST 2026
[2026-06-13 02:07:29,456.456 INFO    ] ================================================
[2026-06-13 02:07:30,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:07:30
[2026-06-13 02:07:30,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:07:30,691.691 INFO    ] Initializing speech engine...
[2026-06-13 02:07:30,696.696 INFO    ] 2026-06-13 02:07:30
[2026-06-13 02:07:30,907.907 INFO    ] 2026-06-13 02:07:30
[2026-06-13 02:07:30,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:31,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:31,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:31,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:31,323.323 INFO    ] time= 13/06/2026 02:07:31
[2026-06-13 02:07:31,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:31,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:31,432.432 INFO    ] No existing commands found in stream
[2026-06-13 02:07:36,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:36,445.445 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 02:07:37,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:07:37,139.139 INFO    ] Checking for system updates...
[2026-06-13 02:07:37,163.163 INFO    ] 200
[2026-06-13 02:07:37,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:37,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:37,198.198 INFO    ] No update needed
[2026-06-13 02:07:37,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 02:07:37,220.220 INFO    ] 200
[2026-06-13 02:07:37,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:37,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:07:37,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:07:37,284.284 INFO    ] No camera update needed
[2026-06-13 02:07:37,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:07:37,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:07:37,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:07:37,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:07:39,333.333 INFO    ] ================================================
[2026-06-13 02:07:39,348.348 INFO    ] Launching Daemon at Sat Jun 13 02:07:39 IST 2026
[2026-06-13 02:07:39,359.359 INFO    ] ================================================
[2026-06-13 02:07:39,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:07:39
[2026-06-13 02:07:40,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:07:40,200.200 INFO    ] Initializing speech engine...
[2026-06-13 02:07:40,205.205 INFO    ] 2026-06-13 02:07:40
[2026-06-13 02:07:40,423.423 INFO    ] 2026-06-13 02:07:40
[2026-06-13 02:07:40,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:40,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:40,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:40,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:40,846.846 INFO    ] time= 13/06/2026 02:07:40
[2026-06-13 02:07:40,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:40,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:40,985.985 INFO    ] No existing commands found in stream
[2026-06-13 02:07:45,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:45,999.999 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 02:07:47,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:07:47,341.341 INFO    ] Checking for system updates...
[2026-06-13 02:07:47,361.361 INFO    ] 200
[2026-06-13 02:07:47,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:47,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:07:47,397.397 INFO    ] No update needed
[2026-06-13 02:07:47,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 02:07:47,418.418 INFO    ] 200
[2026-06-13 02:07:47,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:07:47,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:07:47,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:07:47,482.482 INFO    ] No camera update needed
[2026-06-13 02:07:47,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:07:47,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:07:47,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:07:47,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:07:49,531.531 INFO    ] ================================================
[2026-06-13 02:07:49,548.548 INFO    ] Launching Daemon at Sat Jun 13 02:07:49 IST 2026
[2026-06-13 02:07:49,559.559 INFO    ] ================================================
[2026-06-13 02:07:49,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:07:49
[2026-06-13 02:07:50,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:07:50,375.375 INFO    ] Initializing speech engine...
[2026-06-13 02:07:50,384.384 INFO    ] 2026-06-13 02:07:50
[2026-06-13 02:07:50,589.589 INFO    ] 2026-06-13 02:07:50
[2026-06-13 02:07:50,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:07:50,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:07:50,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:07:50,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:07:51,016.016 INFO    ] time= 13/06/2026 02:07:50
[2026-06-13 02:07:51,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:07:51,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:07:51,176.176 INFO    ] No existing commands found in stream
[2026-06-13 02:07:56,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:07:56,185.185 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 02:08:00,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:08:00,439.439 INFO    ] Checking for system updates...
[2026-06-13 02:08:00,462.462 INFO    ] 200
[2026-06-13 02:08:00,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:00,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:00,496.496 INFO    ] No update needed
[2026-06-13 02:08:00,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:00,516.516 INFO    ] 200
[2026-06-13 02:08:00,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:00,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:00,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:00,580.580 INFO    ] No camera update needed
[2026-06-13 02:08:00,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:00,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:00,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:00,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:02,614.614 INFO    ] ================================================
[2026-06-13 02:08:02,622.622 INFO    ] Launching Daemon at Sat Jun 13 02:08:02 IST 2026
[2026-06-13 02:08:02,628.628 INFO    ] ================================================
[2026-06-13 02:08:02,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:02
[2026-06-13 02:08:03,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:08:03,430.430 INFO    ] Initializing speech engine...
[2026-06-13 02:08:03,439.439 INFO    ] 2026-06-13 02:08:03
[2026-06-13 02:08:03,654.654 INFO    ] 2026-06-13 02:08:03
[2026-06-13 02:08:03,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:08:03,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:08:03,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:08:04,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:08:04,108.108 INFO    ] time= 13/06/2026 02:08:04
[2026-06-13 02:08:04,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:08:04,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:08:04,264.264 INFO    ] No existing commands found in stream
[2026-06-13 02:08:09,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:08:09,276.276 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 02:08:10,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:08:10,071.071 INFO    ] Checking for system updates...
[2026-06-13 02:08:10,091.091 INFO    ] 200
[2026-06-13 02:08:10,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:10,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:10,125.125 INFO    ] No update needed
[2026-06-13 02:08:10,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:10,146.146 INFO    ] 200
[2026-06-13 02:08:10,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:10,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:10,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:10,208.208 INFO    ] No camera update needed
[2026-06-13 02:08:10,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:10,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:10,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:10,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:12,255.255 INFO    ] ================================================
[2026-06-13 02:08:12,270.270 INFO    ] Launching Daemon at Sat Jun 13 02:08:12 IST 2026
[2026-06-13 02:08:12,281.281 INFO    ] ================================================
[2026-06-13 02:08:12,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:12
[2026-06-13 02:08:12,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:08:13,096.096 INFO    ] Initializing speech engine...
[2026-06-13 02:08:13,102.102 INFO    ] 2026-06-13 02:08:13
[2026-06-13 02:08:13,307.307 INFO    ] 2026-06-13 02:08:13
[2026-06-13 02:08:13,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:08:13,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:08:13,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:08:13,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:08:13,707.707 INFO    ] time= 13/06/2026 02:08:13
[2026-06-13 02:08:13,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:08:13,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:08:13,821.821 INFO    ] No existing commands found in stream
[2026-06-13 02:08:18,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:08:18,843.843 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 02:08:22,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:08:22,756.756 INFO    ] Checking for system updates...
[2026-06-13 02:08:22,793.793 INFO    ] 200
[2026-06-13 02:08:22,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:22,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:22,860.860 INFO    ] No update needed
[2026-06-13 02:08:22,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:22,902.902 INFO    ] 200
[2026-06-13 02:08:22,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:22,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:23,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:23,096.096 INFO    ] No camera update needed
[2026-06-13 02:08:23,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:23,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:23,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:23,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:25,154.154 INFO    ] ================================================
[2026-06-13 02:08:25,169.169 INFO    ] Launching Daemon at Sat Jun 13 02:08:25 IST 2026
[2026-06-13 02:08:25,180.180 INFO    ] ================================================
[2026-06-13 02:08:25,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:25
[2026-06-13 02:08:25,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:08:25,979.979 INFO    ] Initializing speech engine...
[2026-06-13 02:08:25,985.985 INFO    ] 2026-06-13 02:08:25
[2026-06-13 02:08:26,247.247 INFO    ] 2026-06-13 02:08:26
[2026-06-13 02:08:26,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:08:26,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:08:26,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:08:26,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:08:26,673.673 INFO    ] time= 13/06/2026 02:08:26
[2026-06-13 02:08:26,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:08:26,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:08:26,877.877 INFO    ] No existing commands found in stream
[2026-06-13 02:08:31,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:08:31,889.889 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 02:08:35,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:08:35,174.174 INFO    ] Checking for system updates...
[2026-06-13 02:08:35,196.196 INFO    ] 200
[2026-06-13 02:08:35,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:35,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:35,229.229 INFO    ] No update needed
[2026-06-13 02:08:35,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:35,251.251 INFO    ] 200
[2026-06-13 02:08:35,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:35,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:35,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:35,319.319 INFO    ] No camera update needed
[2026-06-13 02:08:35,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:35,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:35,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:35,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:37,368.368 INFO    ] ================================================
[2026-06-13 02:08:37,384.384 INFO    ] Launching Daemon at Sat Jun 13 02:08:37 IST 2026
[2026-06-13 02:08:37,395.395 INFO    ] ================================================
[2026-06-13 02:08:37,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:37
[2026-06-13 02:08:38,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:08:38,250.250 INFO    ] Initializing speech engine...
[2026-06-13 02:08:38,255.255 INFO    ] 2026-06-13 02:08:38
[2026-06-13 02:08:38,463.463 INFO    ] 2026-06-13 02:08:38
[2026-06-13 02:08:38,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:08:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:08:38,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:08:38,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:08:38,883.883 INFO    ] time= 13/06/2026 02:08:38
[2026-06-13 02:08:38,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:08:38,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:08:38,980.980 INFO    ] No existing commands found in stream
[2026-06-13 02:08:44,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:08:44,008.008 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 02:08:47,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:08:47,637.637 INFO    ] Checking for system updates...
[2026-06-13 02:08:47,659.659 INFO    ] 200
[2026-06-13 02:08:47,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:47,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:47,692.692 INFO    ] No update needed
[2026-06-13 02:08:47,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:47,712.712 INFO    ] 200
[2026-06-13 02:08:47,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:47,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:47,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:08:47,775.775 INFO    ] No camera update needed
[2026-06-13 02:08:47,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:47,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:47,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:47,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:49,823.823 INFO    ] ================================================
[2026-06-13 02:08:49,838.838 INFO    ] Launching Daemon at Sat Jun 13 02:08:49 IST 2026
[2026-06-13 02:08:49,849.849 INFO    ] ================================================
[2026-06-13 02:08:50,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:50
[2026-06-13 02:08:50,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:08:50,657.657 INFO    ] Initializing speech engine...
[2026-06-13 02:08:50,662.662 INFO    ] 2026-06-13 02:08:50
[2026-06-13 02:08:50,866.866 INFO    ] 2026-06-13 02:08:50
[2026-06-13 02:08:50,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:08:51,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:08:51,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:08:51,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:08:51,264.264 INFO    ] time= 13/06/2026 02:08:51
[2026-06-13 02:08:51,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:08:51,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:08:51,379.379 INFO    ] No existing commands found in stream
[2026-06-13 02:08:56,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:08:56,396.396 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 02:08:57,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:08:57,023.023 INFO    ] Checking for system updates...
[2026-06-13 02:08:57,045.045 INFO    ] 200
[2026-06-13 02:08:57,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:57,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:57,081.081 INFO    ] No update needed
[2026-06-13 02:08:57,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 02:08:57,101.101 INFO    ] 200
[2026-06-13 02:08:57,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:08:57,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:08:57,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:08:57,163.163 INFO    ] No camera update needed
[2026-06-13 02:08:57,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:08:57,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:08:57,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:08:57,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:08:59,203.203 INFO    ] ================================================
[2026-06-13 02:08:59,211.211 INFO    ] Launching Daemon at Sat Jun 13 02:08:59 IST 2026
[2026-06-13 02:08:59,217.217 INFO    ] ================================================
[2026-06-13 02:08:59,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:08:59
[2026-06-13 02:09:00,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:00,405.405 INFO    ] Initializing speech engine...
[2026-06-13 02:09:00,419.419 INFO    ] 2026-06-13 02:09:00
[2026-06-13 02:09:00,727.727 INFO    ] 2026-06-13 02:09:00
[2026-06-13 02:09:00,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:00,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:01,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:01,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:01,233.233 INFO    ] time= 13/06/2026 02:09:01
[2026-06-13 02:09:01,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:01,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:01,387.387 INFO    ] No existing commands found in stream
[2026-06-13 02:09:06,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:09:06,407.407 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 02:09:09,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:09:09,340.340 INFO    ] Checking for system updates...
[2026-06-13 02:09:09,361.361 INFO    ] 200
[2026-06-13 02:09:09,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:09,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:09:09,395.395 INFO    ] No update needed
[2026-06-13 02:09:09,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 02:09:09,417.417 INFO    ] 200
[2026-06-13 02:09:09,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:09,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:09:09,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:09,486.486 INFO    ] No camera update needed
[2026-06-13 02:09:09,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:09:09,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:09:09,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:09:09,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:09:11,534.534 INFO    ] ================================================
[2026-06-13 02:09:11,550.550 INFO    ] Launching Daemon at Sat Jun 13 02:09:11 IST 2026
[2026-06-13 02:09:11,560.560 INFO    ] ================================================
[2026-06-13 02:09:11,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:09:11
[2026-06-13 02:09:12,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:12,336.336 INFO    ] Initializing speech engine...
[2026-06-13 02:09:12,347.347 INFO    ] 2026-06-13 02:09:12
[2026-06-13 02:09:12,550.550 INFO    ] 2026-06-13 02:09:12
[2026-06-13 02:09:12,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:12,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:12,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:12,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:12,948.948 INFO    ] time= 13/06/2026 02:09:12
[2026-06-13 02:09:12,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:12,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:13,063.063 INFO    ] No existing commands found in stream
[2026-06-13 02:09:18,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:09:18,080.080 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 02:09:18,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:09:18,675.675 INFO    ] Checking for system updates...
[2026-06-13 02:09:18,695.695 INFO    ] 200
[2026-06-13 02:09:18,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:18,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:18,728.728 INFO    ] No update needed
[2026-06-13 02:09:18,729.729 INFO    ] Checking for camera pi updates...
[2026-06-13 02:09:18,752.752 INFO    ] 200
[2026-06-13 02:09:18,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:18,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:09:18,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:18,816.816 INFO    ] No camera update needed
[2026-06-13 02:09:18,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:09:18,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:09:18,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:09:18,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:09:20,864.864 INFO    ] ================================================
[2026-06-13 02:09:20,879.879 INFO    ] Launching Daemon at Sat Jun 13 02:09:20 IST 2026
[2026-06-13 02:09:20,890.890 INFO    ] ================================================
[2026-06-13 02:09:21,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:09:21
[2026-06-13 02:09:21,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:21,693.693 INFO    ] Initializing speech engine...
[2026-06-13 02:09:21,705.705 INFO    ] 2026-06-13 02:09:21
[2026-06-13 02:09:21,914.914 INFO    ] 2026-06-13 02:09:21
[2026-06-13 02:09:21,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:22,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:22,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:22,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:22,315.315 INFO    ] time= 13/06/2026 02:09:22
[2026-06-13 02:09:22,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:22,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:22,431.431 INFO    ] No existing commands found in stream
[2026-06-13 02:09:27,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:09:27,443.443 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 02:09:31,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:09:31,036.036 INFO    ] Checking for system updates...
[2026-06-13 02:09:31,072.072 INFO    ] 200
[2026-06-13 02:09:31,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:31,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:31,138.138 INFO    ] No update needed
[2026-06-13 02:09:31,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 02:09:31,177.177 INFO    ] 200
[2026-06-13 02:09:31,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:31,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:09:31,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:31,242.242 INFO    ] No camera update needed
[2026-06-13 02:09:31,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:09:31,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:09:31,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:09:31,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:09:33,282.282 INFO    ] ================================================
[2026-06-13 02:09:33,298.298 INFO    ] Launching Daemon at Sat Jun 13 02:09:33 IST 2026
[2026-06-13 02:09:33,309.309 INFO    ] ================================================
[2026-06-13 02:09:33,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:09:33
[2026-06-13 02:09:33,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:34,119.119 INFO    ] Initializing speech engine...
[2026-06-13 02:09:34,129.129 INFO    ] 2026-06-13 02:09:34
[2026-06-13 02:09:34,334.334 INFO    ] 2026-06-13 02:09:34
[2026-06-13 02:09:34,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:34,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:34,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:34,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:34,738.738 INFO    ] time= 13/06/2026 02:09:34
[2026-06-13 02:09:34,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:34,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:34,847.847 INFO    ] No existing commands found in stream
[2026-06-13 02:09:39,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:09:39,860.860 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 02:09:41,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:09:41,536.536 INFO    ] Checking for system updates...
[2026-06-13 02:09:41,558.558 INFO    ] 200
[2026-06-13 02:09:41,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:41,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:09:41,592.592 INFO    ] No update needed
[2026-06-13 02:09:41,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 02:09:41,613.613 INFO    ] 200
[2026-06-13 02:09:41,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:41,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:09:41,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:09:41,676.676 INFO    ] No camera update needed
[2026-06-13 02:09:41,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:09:41,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:09:41,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:09:41,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:09:43,726.726 INFO    ] ================================================
[2026-06-13 02:09:43,740.740 INFO    ] Launching Daemon at Sat Jun 13 02:09:43 IST 2026
[2026-06-13 02:09:43,751.751 INFO    ] ================================================
[2026-06-13 02:09:44,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:09:44
[2026-06-13 02:09:44,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:44,557.557 INFO    ] Initializing speech engine...
[2026-06-13 02:09:44,562.562 INFO    ] 2026-06-13 02:09:44
[2026-06-13 02:09:44,767.767 INFO    ] 2026-06-13 02:09:44
[2026-06-13 02:09:44,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:44,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:44,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:45,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:45,152.152 INFO    ] time= 13/06/2026 02:09:45
[2026-06-13 02:09:45,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:45,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:45,303.303 INFO    ] No existing commands found in stream
[2026-06-13 02:09:50,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:09:50,321.321 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 02:09:51,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:09:51,830.830 INFO    ] Checking for system updates...
[2026-06-13 02:09:51,851.851 INFO    ] 200
[2026-06-13 02:09:51,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:51,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:51,885.885 INFO    ] No update needed
[2026-06-13 02:09:51,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 02:09:51,905.905 INFO    ] 200
[2026-06-13 02:09:51,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:09:51,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:09:51,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:09:51,973.973 INFO    ] No camera update needed
[2026-06-13 02:09:51,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:09:51,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:09:51,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:09:51,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:09:54,020.020 INFO    ] ================================================
[2026-06-13 02:09:54,036.036 INFO    ] Launching Daemon at Sat Jun 13 02:09:54 IST 2026
[2026-06-13 02:09:54,047.047 INFO    ] ================================================
[2026-06-13 02:09:54,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:09:54
[2026-06-13 02:09:54,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:09:54,836.836 INFO    ] Initializing speech engine...
[2026-06-13 02:09:54,839.839 INFO    ] 2026-06-13 02:09:54
[2026-06-13 02:09:55,044.044 INFO    ] 2026-06-13 02:09:55
[2026-06-13 02:09:55,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:09:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:09:55,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:09:55,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:09:55,428.428 INFO    ] time= 13/06/2026 02:09:55
[2026-06-13 02:09:55,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:09:55,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:09:55,639.639 INFO    ] No existing commands found in stream
[2026-06-13 02:10:00,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:10:00,652.652 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 02:10:08,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:10:08,129.129 INFO    ] Checking for system updates...
[2026-06-13 02:10:08,169.169 INFO    ] 200
[2026-06-13 02:10:08,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:08,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:08,227.227 INFO    ] No update needed
[2026-06-13 02:10:08,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 02:10:08,264.264 INFO    ] 200
[2026-06-13 02:10:08,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:08,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:10:08,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:08,348.348 INFO    ] No camera update needed
[2026-06-13 02:10:08,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:10:08,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:10:08,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:10:08,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:10:10,396.396 INFO    ] ================================================
[2026-06-13 02:10:10,411.411 INFO    ] Launching Daemon at Sat Jun 13 02:10:10 IST 2026
[2026-06-13 02:10:10,427.427 INFO    ] ================================================
[2026-06-13 02:10:10,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:10:10
[2026-06-13 02:10:11,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:10:11,235.235 INFO    ] Initializing speech engine...
[2026-06-13 02:10:11,241.241 INFO    ] 2026-06-13 02:10:11
[2026-06-13 02:10:11,449.449 INFO    ] 2026-06-13 02:10:11
[2026-06-13 02:10:11,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:10:11,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:10:11,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:10:11,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:10:11,871.871 INFO    ] time= 13/06/2026 02:10:11
[2026-06-13 02:10:11,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:10:11,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:10:11,968.968 INFO    ] No existing commands found in stream
[2026-06-13 02:10:16,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:10:16,986.986 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 02:10:17,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:10:17,665.665 INFO    ] Checking for system updates...
[2026-06-13 02:10:17,686.686 INFO    ] 200
[2026-06-13 02:10:17,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:17,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:17,720.720 INFO    ] No update needed
[2026-06-13 02:10:17,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 02:10:17,741.741 INFO    ] 200
[2026-06-13 02:10:17,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:17,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:10:17,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:17,805.805 INFO    ] No camera update needed
[2026-06-13 02:10:17,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:10:17,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:10:17,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:10:17,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:10:19,853.853 INFO    ] ================================================
[2026-06-13 02:10:19,869.869 INFO    ] Launching Daemon at Sat Jun 13 02:10:19 IST 2026
[2026-06-13 02:10:19,879.879 INFO    ] ================================================
[2026-06-13 02:10:20,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:10:20
[2026-06-13 02:10:20,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:10:20,707.707 INFO    ] Initializing speech engine...
[2026-06-13 02:10:20,717.717 INFO    ] 2026-06-13 02:10:20
[2026-06-13 02:10:20,935.935 INFO    ] 2026-06-13 02:10:20
[2026-06-13 02:10:20,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:10:21,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:10:21,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:10:21,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:10:21,357.357 INFO    ] time= 13/06/2026 02:10:21
[2026-06-13 02:10:21,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:10:21,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:10:21,494.494 INFO    ] No existing commands found in stream
[2026-06-13 02:10:26,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:10:26,507.507 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 02:10:28,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:10:28,954.954 INFO    ] Checking for system updates...
[2026-06-13 02:10:28,975.975 INFO    ] 200
[2026-06-13 02:10:28,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:29,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:10:29,010.010 INFO    ] No update needed
[2026-06-13 02:10:29,011.011 INFO    ] Checking for camera pi updates...
[2026-06-13 02:10:29,034.034 INFO    ] 200
[2026-06-13 02:10:29,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:29,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:10:29,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:10:29,210.210 INFO    ] No camera update needed
[2026-06-13 02:10:29,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:10:29,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:10:29,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:10:29,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:10:31,258.258 INFO    ] ================================================
[2026-06-13 02:10:31,273.273 INFO    ] Launching Daemon at Sat Jun 13 02:10:31 IST 2026
[2026-06-13 02:10:31,283.283 INFO    ] ================================================
[2026-06-13 02:10:31,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:10:31
[2026-06-13 02:10:32,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:10:32,160.160 INFO    ] Initializing speech engine...
[2026-06-13 02:10:32,173.173 INFO    ] 2026-06-13 02:10:32
[2026-06-13 02:10:32,381.381 INFO    ] 2026-06-13 02:10:32
[2026-06-13 02:10:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:10:32,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:10:32,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:10:32,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:10:32,782.782 INFO    ] time= 13/06/2026 02:10:32
[2026-06-13 02:10:32,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:10:32,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:10:32,910.910 INFO    ] No existing commands found in stream
[2026-06-13 02:10:37,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:10:37,923.923 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 02:10:42,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:10:42,079.079 INFO    ] Checking for system updates...
[2026-06-13 02:10:42,099.099 INFO    ] 200
[2026-06-13 02:10:42,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:42,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:42,133.133 INFO    ] No update needed
[2026-06-13 02:10:42,134.134 INFO    ] Checking for camera pi updates...
[2026-06-13 02:10:42,154.154 INFO    ] 200
[2026-06-13 02:10:42,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:42,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:10:42,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:10:42,222.222 INFO    ] No camera update needed
[2026-06-13 02:10:42,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:10:42,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:10:42,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:10:42,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:10:44,269.269 INFO    ] ================================================
[2026-06-13 02:10:44,284.284 INFO    ] Launching Daemon at Sat Jun 13 02:10:44 IST 2026
[2026-06-13 02:10:44,294.294 INFO    ] ================================================
[2026-06-13 02:10:44,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:10:44
[2026-06-13 02:10:44,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:10:45,088.088 INFO    ] Initializing speech engine...
[2026-06-13 02:10:45,098.098 INFO    ] 2026-06-13 02:10:45
[2026-06-13 02:10:45,303.303 INFO    ] 2026-06-13 02:10:45
[2026-06-13 02:10:45,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:10:45,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:10:45,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:10:45,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:10:45,693.693 INFO    ] time= 13/06/2026 02:10:45
[2026-06-13 02:10:45,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:10:45,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:10:45,840.840 INFO    ] No existing commands found in stream
[2026-06-13 02:10:50,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:10:50,853.853 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 02:10:52,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:10:52,299.299 INFO    ] Checking for system updates...
[2026-06-13 02:10:52,322.322 INFO    ] 200
[2026-06-13 02:10:52,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:52,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:10:52,357.357 INFO    ] No update needed
[2026-06-13 02:10:52,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 02:10:52,379.379 INFO    ] 200
[2026-06-13 02:10:52,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:10:52,405.405 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:10:52,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:10:52,446.446 INFO    ] No camera update needed
[2026-06-13 02:10:52,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:10:52,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:10:52,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:10:52,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:10:54,495.495 INFO    ] ================================================
[2026-06-13 02:10:54,510.510 INFO    ] Launching Daemon at Sat Jun 13 02:10:54 IST 2026
[2026-06-13 02:10:54,521.521 INFO    ] ================================================
[2026-06-13 02:10:54,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:10:54
[2026-06-13 02:10:55,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:10:55,372.372 INFO    ] Initializing speech engine...
[2026-06-13 02:10:55,377.377 INFO    ] 2026-06-13 02:10:55
[2026-06-13 02:10:55,585.585 INFO    ] 2026-06-13 02:10:55
[2026-06-13 02:10:55,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:10:55,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:10:55,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:10:55,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:10:55,989.989 INFO    ] time= 13/06/2026 02:10:55
[2026-06-13 02:10:56,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:10:56,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:10:56,113.113 INFO    ] No existing commands found in stream
[2026-06-13 02:11:01,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:01,128.128 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 02:11:02,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:11:02,236.236 INFO    ] Checking for system updates...
[2026-06-13 02:11:02,262.262 INFO    ] 200
[2026-06-13 02:11:02,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:02,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:02,305.305 INFO    ] No update needed
[2026-06-13 02:11:02,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:02,328.328 INFO    ] 200
[2026-06-13 02:11:02,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:02,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:02,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:02,390.390 INFO    ] No camera update needed
[2026-06-13 02:11:02,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:02,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:02,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:11:04,448.448 INFO    ] ================================================
[2026-06-13 02:11:04,463.463 INFO    ] Launching Daemon at Sat Jun 13 02:11:04 IST 2026
[2026-06-13 02:11:04,474.474 INFO    ] ================================================
[2026-06-13 02:11:04,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:11:04
[2026-06-13 02:11:05,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:11:05,335.335 INFO    ] Initializing speech engine...
[2026-06-13 02:11:05,340.340 INFO    ] 2026-06-13 02:11:05
[2026-06-13 02:11:05,561.561 INFO    ] 2026-06-13 02:11:05
[2026-06-13 02:11:05,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:11:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:11:05,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:11:05,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:11:05,992.992 INFO    ] time= 13/06/2026 02:11:05
[2026-06-13 02:11:06,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:11:06,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:11:06,118.118 INFO    ] No existing commands found in stream
[2026-06-13 02:11:11,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:11,132.132 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 02:11:14,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:11:14,380.380 INFO    ] Checking for system updates...
[2026-06-13 02:11:14,400.400 INFO    ] 200
[2026-06-13 02:11:14,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:14,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:14,434.434 INFO    ] No update needed
[2026-06-13 02:11:14,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:14,458.458 INFO    ] 200
[2026-06-13 02:11:14,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:14,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:14,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:14,519.519 INFO    ] No camera update needed
[2026-06-13 02:11:14,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:14,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:14,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:14,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:11:16,566.566 INFO    ] ================================================
[2026-06-13 02:11:16,581.581 INFO    ] Launching Daemon at Sat Jun 13 02:11:16 IST 2026
[2026-06-13 02:11:16,592.592 INFO    ] ================================================
[2026-06-13 02:11:16,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:11:16
[2026-06-13 02:11:17,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:11:17,440.440 INFO    ] Initializing speech engine...
[2026-06-13 02:11:17,445.445 INFO    ] 2026-06-13 02:11:17
[2026-06-13 02:11:17,655.655 INFO    ] 2026-06-13 02:11:17
[2026-06-13 02:11:17,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:11:17,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:11:17,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:11:18,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:11:18,085.085 INFO    ] time= 13/06/2026 02:11:18
[2026-06-13 02:11:18,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:11:18,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:11:18,185.185 INFO    ] No existing commands found in stream
[2026-06-13 02:11:23,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:23,203.203 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 02:11:27,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:11:27,555.555 INFO    ] Checking for system updates...
[2026-06-13 02:11:27,577.577 INFO    ] 200
[2026-06-13 02:11:27,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:27,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:27,611.611 INFO    ] No update needed
[2026-06-13 02:11:27,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:27,633.633 INFO    ] 200
[2026-06-13 02:11:27,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:27,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:27,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:27,703.703 INFO    ] No camera update needed
[2026-06-13 02:11:27,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:27,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:27,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:27,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:11:29,751.751 INFO    ] ================================================
[2026-06-13 02:11:29,766.766 INFO    ] Launching Daemon at Sat Jun 13 02:11:29 IST 2026
[2026-06-13 02:11:29,777.777 INFO    ] ================================================
[2026-06-13 02:11:30,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:11:30
[2026-06-13 02:11:30,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:11:30,582.582 INFO    ] Initializing speech engine...
[2026-06-13 02:11:30,595.595 INFO    ] 2026-06-13 02:11:30
[2026-06-13 02:11:30,804.804 INFO    ] 2026-06-13 02:11:30
[2026-06-13 02:11:30,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:11:30,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:11:31,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:11:31,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:11:31,207.207 INFO    ] time= 13/06/2026 02:11:31
[2026-06-13 02:11:31,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:11:31,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:11:31,328.328 INFO    ] No existing commands found in stream
[2026-06-13 02:11:36,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:36,342.342 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 02:11:37,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:11:37,996.996 INFO    ] Checking for system updates...
[2026-06-13 02:11:38,016.016 INFO    ] 200
[2026-06-13 02:11:38,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:38,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:38,050.050 INFO    ] No update needed
[2026-06-13 02:11:38,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:38,070.070 INFO    ] 200
[2026-06-13 02:11:38,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:38,095.095 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:38,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:38,133.133 INFO    ] No camera update needed
[2026-06-13 02:11:38,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:38,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:38,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:38,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:11:40,182.182 INFO    ] ================================================
[2026-06-13 02:11:40,197.197 INFO    ] Launching Daemon at Sat Jun 13 02:11:40 IST 2026
[2026-06-13 02:11:40,208.208 INFO    ] ================================================
[2026-06-13 02:11:40,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:11:40
[2026-06-13 02:11:40,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:11:40,986.986 INFO    ] Initializing speech engine...
[2026-06-13 02:11:40,990.990 INFO    ] 2026-06-13 02:11:40
[2026-06-13 02:11:41,219.219 INFO    ] 2026-06-13 02:11:41
[2026-06-13 02:11:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:11:41,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:11:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:11:41,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:11:41,654.654 INFO    ] time= 13/06/2026 02:11:41
[2026-06-13 02:11:41,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:11:41,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:11:41,776.776 INFO    ] No existing commands found in stream
[2026-06-13 02:11:46,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:46,790.790 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 02:11:49,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:11:49,274.274 INFO    ] Checking for system updates...
[2026-06-13 02:11:49,295.295 INFO    ] 200
[2026-06-13 02:11:49,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:49,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:49,329.329 INFO    ] No update needed
[2026-06-13 02:11:49,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:49,350.350 INFO    ] 200
[2026-06-13 02:11:49,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:49,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:49,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:11:49,421.421 INFO    ] No camera update needed
[2026-06-13 02:11:49,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:49,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:49,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:49,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:11:51,469.469 INFO    ] ================================================
[2026-06-13 02:11:51,484.484 INFO    ] Launching Daemon at Sat Jun 13 02:11:51 IST 2026
[2026-06-13 02:11:51,495.495 INFO    ] ================================================
[2026-06-13 02:11:51,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:11:51
[2026-06-13 02:11:52,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:11:52,366.366 INFO    ] Initializing speech engine...
[2026-06-13 02:11:52,371.371 INFO    ] 2026-06-13 02:11:52
[2026-06-13 02:11:52,579.579 INFO    ] 2026-06-13 02:11:52
[2026-06-13 02:11:52,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:11:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:11:52,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:11:52,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:11:52,980.980 INFO    ] time= 13/06/2026 02:11:52
[2026-06-13 02:11:53,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:11:53,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:11:53,096.096 INFO    ] No existing commands found in stream
[2026-06-13 02:11:58,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:11:58,113.113 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 02:11:59,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:11:59,839.839 INFO    ] Checking for system updates...
[2026-06-13 02:11:59,861.861 INFO    ] 200
[2026-06-13 02:11:59,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:59,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:59,895.895 INFO    ] No update needed
[2026-06-13 02:11:59,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 02:11:59,916.916 INFO    ] 200
[2026-06-13 02:11:59,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:11:59,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:11:59,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:11:59,983.983 INFO    ] No camera update needed
[2026-06-13 02:11:59,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:11:59,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:11:59,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:11:59,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:12:02,026.026 INFO    ] ================================================
[2026-06-13 02:12:02,039.039 INFO    ] Launching Daemon at Sat Jun 13 02:12:02 IST 2026
[2026-06-13 02:12:02,049.049 INFO    ] ================================================
[2026-06-13 02:12:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:12:02
[2026-06-13 02:12:02,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:12:02,887.887 INFO    ] Initializing speech engine...
[2026-06-13 02:12:02,897.897 INFO    ] 2026-06-13 02:12:02
[2026-06-13 02:12:03,100.100 INFO    ] 2026-06-13 02:12:03
[2026-06-13 02:12:03,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:12:03,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:12:03,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:12:03,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:12:03,350.350 INFO    ] time= 13/06/2026 02:12:03
[2026-06-13 02:12:03,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:12:03,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:12:03,477.477 INFO    ] No existing commands found in stream
[2026-06-13 02:12:08,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:12:08,514.514 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 02:12:11,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:12:11,376.376 INFO    ] Checking for system updates...
[2026-06-13 02:12:11,397.397 INFO    ] 200
[2026-06-13 02:12:11,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:11,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:11,430.430 INFO    ] No update needed
[2026-06-13 02:12:11,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 02:12:11,451.451 INFO    ] 200
[2026-06-13 02:12:11,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:11,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:12:11,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:11,524.524 INFO    ] No camera update needed
[2026-06-13 02:12:11,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:12:11,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:12:11,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:12:11,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:12:13,573.573 INFO    ] ================================================
[2026-06-13 02:12:13,588.588 INFO    ] Launching Daemon at Sat Jun 13 02:12:13 IST 2026
[2026-06-13 02:12:13,599.599 INFO    ] ================================================
[2026-06-13 02:12:13,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:12:13
[2026-06-13 02:12:14,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:12:14,418.418 INFO    ] Initializing speech engine...
[2026-06-13 02:12:14,423.423 INFO    ] 2026-06-13 02:12:14
[2026-06-13 02:12:14,627.627 INFO    ] 2026-06-13 02:12:14
[2026-06-13 02:12:14,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:12:14,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:12:14,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:12:14,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:12:15,034.034 INFO    ] time= 13/06/2026 02:12:14
[2026-06-13 02:12:15,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:12:15,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:12:15,146.146 INFO    ] No existing commands found in stream
[2026-06-13 02:12:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:12:20,163.163 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 02:12:22,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:12:22,227.227 INFO    ] Checking for system updates...
[2026-06-13 02:12:22,248.248 INFO    ] 200
[2026-06-13 02:12:22,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:22,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:12:22,281.281 INFO    ] No update needed
[2026-06-13 02:12:22,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 02:12:22,302.302 INFO    ] 200
[2026-06-13 02:12:22,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:22,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:12:22,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:12:22,368.368 INFO    ] No camera update needed
[2026-06-13 02:12:22,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:12:22,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:12:22,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:12:22,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:12:24,417.417 INFO    ] ================================================
[2026-06-13 02:12:24,432.432 INFO    ] Launching Daemon at Sat Jun 13 02:12:24 IST 2026
[2026-06-13 02:12:24,443.443 INFO    ] ================================================
[2026-06-13 02:12:24,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:12:24
[2026-06-13 02:12:25,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:12:25,305.305 INFO    ] Initializing speech engine...
[2026-06-13 02:12:25,310.310 INFO    ] 2026-06-13 02:12:25
[2026-06-13 02:12:25,521.521 INFO    ] 2026-06-13 02:12:25
[2026-06-13 02:12:25,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:12:25,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:12:25,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:12:25,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:12:25,933.933 INFO    ] time= 13/06/2026 02:12:25
[2026-06-13 02:12:25,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:12:25,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:12:26,046.046 INFO    ] No existing commands found in stream
[2026-06-13 02:12:31,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:12:31,064.064 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 02:12:34,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:12:34,316.316 INFO    ] Checking for system updates...
[2026-06-13 02:12:34,337.337 INFO    ] 200
[2026-06-13 02:12:34,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:34,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:34,371.371 INFO    ] No update needed
[2026-06-13 02:12:34,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 02:12:34,392.392 INFO    ] 200
[2026-06-13 02:12:34,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:34,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:12:34,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:12:34,463.463 INFO    ] No camera update needed
[2026-06-13 02:12:34,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:12:34,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:12:34,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:12:34,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:12:36,512.512 INFO    ] ================================================
[2026-06-13 02:12:36,528.528 INFO    ] Launching Daemon at Sat Jun 13 02:12:36 IST 2026
[2026-06-13 02:12:36,539.539 INFO    ] ================================================
[2026-06-13 02:12:36,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:12:36
[2026-06-13 02:12:37,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:12:37,366.366 INFO    ] Initializing speech engine...
[2026-06-13 02:12:37,371.371 INFO    ] 2026-06-13 02:12:37
[2026-06-13 02:12:37,602.602 INFO    ] 2026-06-13 02:12:37
[2026-06-13 02:12:37,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:12:37,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:12:37,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:12:37,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:12:38,007.007 INFO    ] time= 13/06/2026 02:12:37
[2026-06-13 02:12:38,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:12:38,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:12:38,161.161 INFO    ] No existing commands found in stream
[2026-06-13 02:12:43,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:12:43,175.175 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 02:12:47,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:12:47,185.185 INFO    ] Checking for system updates...
[2026-06-13 02:12:47,205.205 INFO    ] 200
[2026-06-13 02:12:47,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:47,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:47,241.241 INFO    ] No update needed
[2026-06-13 02:12:47,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 02:12:47,262.262 INFO    ] 200
[2026-06-13 02:12:47,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:47,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:12:47,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:47,326.326 INFO    ] No camera update needed
[2026-06-13 02:12:47,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:12:47,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:12:47,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:12:47,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:12:49,374.374 INFO    ] ================================================
[2026-06-13 02:12:49,390.390 INFO    ] Launching Daemon at Sat Jun 13 02:12:49 IST 2026
[2026-06-13 02:12:49,401.401 INFO    ] ================================================
[2026-06-13 02:12:49,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:12:49
[2026-06-13 02:12:50,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:12:50,256.256 INFO    ] Initializing speech engine...
[2026-06-13 02:12:50,262.262 INFO    ] 2026-06-13 02:12:50
[2026-06-13 02:12:50,516.516 INFO    ] 2026-06-13 02:12:50
[2026-06-13 02:12:50,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:12:50,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:12:50,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:12:50,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:12:50,978.978 INFO    ] time= 13/06/2026 02:12:50
[2026-06-13 02:12:51,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:12:51,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:12:51,239.239 INFO    ] No existing commands found in stream
[2026-06-13 02:12:56,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:12:56,265.265 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 02:12:58,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:12:58,298.298 INFO    ] Checking for system updates...
[2026-06-13 02:12:58,319.319 INFO    ] 200
[2026-06-13 02:12:58,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:58,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:58,352.352 INFO    ] No update needed
[2026-06-13 02:12:58,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 02:12:58,373.373 INFO    ] 200
[2026-06-13 02:12:58,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:12:58,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:12:58,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:12:58,439.439 INFO    ] No camera update needed
[2026-06-13 02:12:58,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:12:58,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:12:58,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:12:58,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:00,488.488 INFO    ] ================================================
[2026-06-13 02:13:00,503.503 INFO    ] Launching Daemon at Sat Jun 13 02:13:00 IST 2026
[2026-06-13 02:13:00,514.514 INFO    ] ================================================
[2026-06-13 02:13:00,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:00
[2026-06-13 02:13:01,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:01,303.303 INFO    ] Initializing speech engine...
[2026-06-13 02:13:01,306.306 INFO    ] 2026-06-13 02:13:01
[2026-06-13 02:13:01,502.502 INFO    ] 2026-06-13 02:13:01
[2026-06-13 02:13:01,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:01,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:01,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:01,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:01,890.890 INFO    ] time= 13/06/2026 02:13:01
[2026-06-13 02:13:01,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:01,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:01,998.998 INFO    ] No existing commands found in stream
[2026-06-13 02:13:07,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:07,015.015 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 02:13:08,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:13:08,954.954 INFO    ] Checking for system updates...
[2026-06-13 02:13:08,975.975 INFO    ] 200
[2026-06-13 02:13:08,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:09,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:13:09,008.008 INFO    ] No update needed
[2026-06-13 02:13:09,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 02:13:09,029.029 INFO    ] 200
[2026-06-13 02:13:09,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:09,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:13:09,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:13:09,093.093 INFO    ] No camera update needed
[2026-06-13 02:13:09,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:13:09,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:13:09,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:13:09,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:11,140.140 INFO    ] ================================================
[2026-06-13 02:13:11,156.156 INFO    ] Launching Daemon at Sat Jun 13 02:13:11 IST 2026
[2026-06-13 02:13:11,167.167 INFO    ] ================================================
[2026-06-13 02:13:11,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:11
[2026-06-13 02:13:11,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:11,964.964 INFO    ] Initializing speech engine...
[2026-06-13 02:13:11,967.967 INFO    ] 2026-06-13 02:13:11
[2026-06-13 02:13:12,195.195 INFO    ] 2026-06-13 02:13:12
[2026-06-13 02:13:12,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:12,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:12,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:12,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:12,561.561 INFO    ] time= 13/06/2026 02:13:12
[2026-06-13 02:13:12,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:12,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:12,753.753 INFO    ] No existing commands found in stream
[2026-06-13 02:13:17,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:17,767.767 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 02:13:19,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:13:19,493.493 INFO    ] Checking for system updates...
[2026-06-13 02:13:19,515.515 INFO    ] 200
[2026-06-13 02:13:19,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:19,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:19,548.548 INFO    ] No update needed
[2026-06-13 02:13:19,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 02:13:19,569.569 INFO    ] 200
[2026-06-13 02:13:19,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:19,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:13:19,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:19,631.631 INFO    ] No camera update needed
[2026-06-13 02:13:19,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:13:19,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:13:19,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:13:19,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:21,679.679 INFO    ] ================================================
[2026-06-13 02:13:21,694.694 INFO    ] Launching Daemon at Sat Jun 13 02:13:21 IST 2026
[2026-06-13 02:13:21,705.705 INFO    ] ================================================
[2026-06-13 02:13:22,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:22
[2026-06-13 02:13:22,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:22,556.556 INFO    ] Initializing speech engine...
[2026-06-13 02:13:22,560.560 INFO    ] 2026-06-13 02:13:22
[2026-06-13 02:13:22,770.770 INFO    ] 2026-06-13 02:13:22
[2026-06-13 02:13:22,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:22,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:22,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:23,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:23,186.186 INFO    ] time= 13/06/2026 02:13:23
[2026-06-13 02:13:23,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:23,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:23,293.293 INFO    ] No existing commands found in stream
[2026-06-13 02:13:28,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:28,311.311 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 02:13:30,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:13:30,497.497 INFO    ] Checking for system updates...
[2026-06-13 02:13:30,518.518 INFO    ] 200
[2026-06-13 02:13:30,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:30,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:30,551.551 INFO    ] No update needed
[2026-06-13 02:13:30,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 02:13:30,573.573 INFO    ] 200
[2026-06-13 02:13:30,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:30,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:13:30,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:30,650.650 INFO    ] No camera update needed
[2026-06-13 02:13:30,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:13:30,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:13:30,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:13:30,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:32,690.690 INFO    ] ================================================
[2026-06-13 02:13:32,698.698 INFO    ] Launching Daemon at Sat Jun 13 02:13:32 IST 2026
[2026-06-13 02:13:32,704.704 INFO    ] ================================================
[2026-06-13 02:13:33,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:33
[2026-06-13 02:13:33,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:33,509.509 INFO    ] Initializing speech engine...
[2026-06-13 02:13:33,514.514 INFO    ] 2026-06-13 02:13:33
[2026-06-13 02:13:33,719.719 INFO    ] 2026-06-13 02:13:33
[2026-06-13 02:13:33,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:33,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:33,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:34,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:34,116.116 INFO    ] time= 13/06/2026 02:13:34
[2026-06-13 02:13:34,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:34,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:34,237.237 INFO    ] No existing commands found in stream
[2026-06-13 02:13:39,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:39,251.251 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 02:13:40,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:13:40,146.146 INFO    ] Checking for system updates...
[2026-06-13 02:13:40,182.182 INFO    ] 200
[2026-06-13 02:13:40,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:40,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:40,230.230 INFO    ] No update needed
[2026-06-13 02:13:40,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 02:13:40,251.251 INFO    ] 200
[2026-06-13 02:13:40,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:40,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:13:40,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:13:40,314.314 INFO    ] No camera update needed
[2026-06-13 02:13:40,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:13:40,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:13:40,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:13:40,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:42,363.363 INFO    ] ================================================
[2026-06-13 02:13:42,378.378 INFO    ] Launching Daemon at Sat Jun 13 02:13:42 IST 2026
[2026-06-13 02:13:42,389.389 INFO    ] ================================================
[2026-06-13 02:13:42,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:42
[2026-06-13 02:13:43,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:43,204.204 INFO    ] Initializing speech engine...
[2026-06-13 02:13:43,213.213 INFO    ] 2026-06-13 02:13:43
[2026-06-13 02:13:43,431.431 INFO    ] 2026-06-13 02:13:43
[2026-06-13 02:13:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:43,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:43,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:43,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:43,787.787 INFO    ] time= 13/06/2026 02:13:43
[2026-06-13 02:13:43,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:43,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:43,989.989 INFO    ] No existing commands found in stream
[2026-06-13 02:13:49,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:49,009.009 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 02:13:50,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:13:50,427.427 INFO    ] Checking for system updates...
[2026-06-13 02:13:50,447.447 INFO    ] 200
[2026-06-13 02:13:50,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:50,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:13:50,483.483 INFO    ] No update needed
[2026-06-13 02:13:50,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 02:13:50,503.503 INFO    ] 200
[2026-06-13 02:13:50,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:13:50,528.528 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:13:50,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:13:50,575.575 INFO    ] No camera update needed
[2026-06-13 02:13:50,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:13:50,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:13:50,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:13:50,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:13:52,621.621 INFO    ] ================================================
[2026-06-13 02:13:52,637.637 INFO    ] Launching Daemon at Sat Jun 13 02:13:52 IST 2026
[2026-06-13 02:13:52,648.648 INFO    ] ================================================
[2026-06-13 02:13:53,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:13:53
[2026-06-13 02:13:53,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:13:53,506.506 INFO    ] Initializing speech engine...
[2026-06-13 02:13:53,512.512 INFO    ] 2026-06-13 02:13:53
[2026-06-13 02:13:53,721.721 INFO    ] 2026-06-13 02:13:53
[2026-06-13 02:13:53,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:13:53,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:13:53,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:13:54,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:13:54,138.138 INFO    ] time= 13/06/2026 02:13:54
[2026-06-13 02:13:54,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:13:54,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:13:54,243.243 INFO    ] No existing commands found in stream
[2026-06-13 02:13:59,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:13:59,274.274 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 02:14:03,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:14:03,063.063 INFO    ] Checking for system updates...
[2026-06-13 02:14:03,084.084 INFO    ] 200
[2026-06-13 02:14:03,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:03,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:14:03,118.118 INFO    ] No update needed
[2026-06-13 02:14:03,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 02:14:03,140.140 INFO    ] 200
[2026-06-13 02:14:03,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:03,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:14:03,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:14:03,193.193 INFO    ] No camera update needed
[2026-06-13 02:14:03,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:14:03,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:14:03,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:14:03,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:14:05,240.240 INFO    ] ================================================
[2026-06-13 02:14:05,255.255 INFO    ] Launching Daemon at Sat Jun 13 02:14:05 IST 2026
[2026-06-13 02:14:05,265.265 INFO    ] ================================================
[2026-06-13 02:14:05,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:14:05
[2026-06-13 02:14:05,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:14:06,075.075 INFO    ] Initializing speech engine...
[2026-06-13 02:14:06,085.085 INFO    ] 2026-06-13 02:14:06
[2026-06-13 02:14:06,300.300 INFO    ] 2026-06-13 02:14:06
[2026-06-13 02:14:06,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:14:06,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:14:06,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:14:06,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:14:06,722.722 INFO    ] time= 13/06/2026 02:14:06
[2026-06-13 02:14:06,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:14:06,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:14:06,852.852 INFO    ] No existing commands found in stream
[2026-06-13 02:14:11,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:14:11,865.865 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 02:14:15,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:14:15,755.755 INFO    ] Checking for system updates...
[2026-06-13 02:14:15,776.776 INFO    ] 200
[2026-06-13 02:14:15,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:15,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:14:15,810.810 INFO    ] No update needed
[2026-06-13 02:14:15,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 02:14:15,831.831 INFO    ] 200
[2026-06-13 02:14:15,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:15,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:14:15,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:14:15,899.899 INFO    ] No camera update needed
[2026-06-13 02:14:15,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:14:15,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:14:15,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:14:15,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:14:17,946.946 INFO    ] ================================================
[2026-06-13 02:14:17,961.961 INFO    ] Launching Daemon at Sat Jun 13 02:14:17 IST 2026
[2026-06-13 02:14:17,972.972 INFO    ] ================================================
[2026-06-13 02:14:18,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:14:18
[2026-06-13 02:14:18,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:14:18,777.777 INFO    ] Initializing speech engine...
[2026-06-13 02:14:18,782.782 INFO    ] 2026-06-13 02:14:18
[2026-06-13 02:14:19,011.011 INFO    ] 2026-06-13 02:14:18
[2026-06-13 02:14:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:14:19,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:14:19,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:14:19,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:14:19,433.433 INFO    ] time= 13/06/2026 02:14:19
[2026-06-13 02:14:19,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:14:19,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:14:19,566.566 INFO    ] No existing commands found in stream
[2026-06-13 02:14:24,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:14:24,578.578 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 02:14:28,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:14:28,292.292 INFO    ] Checking for system updates...
[2026-06-13 02:14:28,314.314 INFO    ] 200
[2026-06-13 02:14:28,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:28,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:14:28,347.347 INFO    ] No update needed
[2026-06-13 02:14:28,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 02:14:28,368.368 INFO    ] 200
[2026-06-13 02:14:28,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:28,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:14:28,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:14:28,434.434 INFO    ] No camera update needed
[2026-06-13 02:14:28,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:14:28,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:14:28,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:14:28,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:14:30,480.480 INFO    ] ================================================
[2026-06-13 02:14:30,495.495 INFO    ] Launching Daemon at Sat Jun 13 02:14:30 IST 2026
[2026-06-13 02:14:30,506.506 INFO    ] ================================================
[2026-06-13 02:14:30,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:14:30
[2026-06-13 02:14:31,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:14:32,003.003 INFO    ] Initializing speech engine...
[2026-06-13 02:14:32,012.012 INFO    ] 2026-06-13 02:14:32
[2026-06-13 02:14:32,308.308 INFO    ] 2026-06-13 02:14:32
[2026-06-13 02:14:32,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:14:32,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:14:32,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:14:32,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:14:32,787.787 INFO    ] time= 13/06/2026 02:14:32
[2026-06-13 02:14:32,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:14:32,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:14:33,025.025 INFO    ] No existing commands found in stream
[2026-06-13 02:14:38,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:14:38,057.057 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 02:14:41,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:14:41,127.127 INFO    ] Checking for system updates...
[2026-06-13 02:14:41,147.147 INFO    ] 200
[2026-06-13 02:14:41,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:41,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:14:41,181.181 INFO    ] No update needed
[2026-06-13 02:14:41,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 02:14:41,202.202 INFO    ] 200
[2026-06-13 02:14:41,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:41,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:14:41,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:14:41,371.371 INFO    ] No camera update needed
[2026-06-13 02:14:41,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:14:41,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:14:41,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:14:41,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:14:43,420.420 INFO    ] ================================================
[2026-06-13 02:14:43,435.435 INFO    ] Launching Daemon at Sat Jun 13 02:14:43 IST 2026
[2026-06-13 02:14:43,446.446 INFO    ] ================================================
[2026-06-13 02:14:43,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:14:43
[2026-06-13 02:14:44,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:14:44,238.238 INFO    ] Initializing speech engine...
[2026-06-13 02:14:44,248.248 INFO    ] 2026-06-13 02:14:44
[2026-06-13 02:14:44,452.452 INFO    ] 2026-06-13 02:14:44
[2026-06-13 02:14:44,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:14:44,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:14:44,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:14:44,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:14:44,872.872 INFO    ] time= 13/06/2026 02:14:44
[2026-06-13 02:14:44,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:14:44,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:14:44,969.969 INFO    ] No existing commands found in stream
[2026-06-13 02:14:49,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:14:49,981.981 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 02:14:50,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:14:50,580.580 INFO    ] Checking for system updates...
[2026-06-13 02:14:50,601.601 INFO    ] 200
[2026-06-13 02:14:50,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:50,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:14:50,634.634 INFO    ] No update needed
[2026-06-13 02:14:50,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 02:14:50,655.655 INFO    ] 200
[2026-06-13 02:14:50,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:14:50,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:14:50,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:14:50,728.728 INFO    ] No camera update needed
[2026-06-13 02:14:50,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:14:50,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:14:50,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:14:50,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:14:52,777.777 INFO    ] ================================================
[2026-06-13 02:14:52,793.793 INFO    ] Launching Daemon at Sat Jun 13 02:14:52 IST 2026
[2026-06-13 02:14:52,804.804 INFO    ] ================================================
[2026-06-13 02:14:53,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:14:53
[2026-06-13 02:14:53,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:14:53,963.963 INFO    ] Initializing speech engine...
[2026-06-13 02:14:53,976.976 INFO    ] 2026-06-13 02:14:53
[2026-06-13 02:14:54,249.249 INFO    ] 2026-06-13 02:14:54
[2026-06-13 02:14:54,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:14:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:14:54,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:14:54,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:14:54,604.604 INFO    ] time= 13/06/2026 02:14:54
[2026-06-13 02:14:54,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:14:54,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:14:54,704.704 INFO    ] No existing commands found in stream
[2026-06-13 02:14:59,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:14:59,721.721 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 02:15:03,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:15:03,216.216 INFO    ] Checking for system updates...
[2026-06-13 02:15:03,237.237 INFO    ] 200
[2026-06-13 02:15:03,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:03,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:15:03,271.271 INFO    ] No update needed
[2026-06-13 02:15:03,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 02:15:03,292.292 INFO    ] 200
[2026-06-13 02:15:03,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:03,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:15:03,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:15:03,366.366 INFO    ] No camera update needed
[2026-06-13 02:15:03,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:15:03,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:15:03,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:15:03,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:15:05,415.415 INFO    ] ================================================
[2026-06-13 02:15:05,431.431 INFO    ] Launching Daemon at Sat Jun 13 02:15:05 IST 2026
[2026-06-13 02:15:05,443.443 INFO    ] ================================================
[2026-06-13 02:15:05,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:15:05
[2026-06-13 02:15:06,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:15:06,279.279 INFO    ] Initializing speech engine...
[2026-06-13 02:15:06,284.284 INFO    ] 2026-06-13 02:15:06
[2026-06-13 02:15:06,488.488 INFO    ] 2026-06-13 02:15:06
[2026-06-13 02:15:06,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:15:06,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:15:06,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:15:06,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:15:06,905.905 INFO    ] time= 13/06/2026 02:15:06
[2026-06-13 02:15:06,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:15:06,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:15:07,003.003 INFO    ] No existing commands found in stream
[2026-06-13 02:15:12,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:15:12,020.020 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 02:15:13,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:15:13,644.644 INFO    ] Checking for system updates...
[2026-06-13 02:15:13,665.665 INFO    ] 200
[2026-06-13 02:15:13,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:13,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:13,699.699 INFO    ] No update needed
[2026-06-13 02:15:13,700.700 INFO    ] Checking for camera pi updates...
[2026-06-13 02:15:13,719.719 INFO    ] 200
[2026-06-13 02:15:13,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:13,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:15:13,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:13,791.791 INFO    ] No camera update needed
[2026-06-13 02:15:13,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:15:13,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:15:13,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:15:13,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:15:15,841.841 INFO    ] ================================================
[2026-06-13 02:15:15,859.859 INFO    ] Launching Daemon at Sat Jun 13 02:15:15 IST 2026
[2026-06-13 02:15:15,870.870 INFO    ] ================================================
[2026-06-13 02:15:16,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:15:16
[2026-06-13 02:15:16,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:15:16,744.744 INFO    ] Initializing speech engine...
[2026-06-13 02:15:16,748.748 INFO    ] 2026-06-13 02:15:16
[2026-06-13 02:15:16,952.952 INFO    ] 2026-06-13 02:15:16
[2026-06-13 02:15:16,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:15:17,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:15:17,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:15:17,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:15:17,367.367 INFO    ] time= 13/06/2026 02:15:17
[2026-06-13 02:15:17,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:15:17,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:15:17,471.471 INFO    ] No existing commands found in stream
[2026-06-13 02:15:22,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:15:22,484.484 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 02:15:26,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:15:26,495.495 INFO    ] Checking for system updates...
[2026-06-13 02:15:26,516.516 INFO    ] 200
[2026-06-13 02:15:26,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:26,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:26,552.552 INFO    ] No update needed
[2026-06-13 02:15:26,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 02:15:26,573.573 INFO    ] 200
[2026-06-13 02:15:26,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:26,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:15:26,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:26,643.643 INFO    ] No camera update needed
[2026-06-13 02:15:26,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:15:26,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:15:26,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:15:26,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:15:28,690.690 INFO    ] ================================================
[2026-06-13 02:15:28,705.705 INFO    ] Launching Daemon at Sat Jun 13 02:15:28 IST 2026
[2026-06-13 02:15:28,717.717 INFO    ] ================================================
[2026-06-13 02:15:29,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:15:29
[2026-06-13 02:15:29,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:15:29,531.531 INFO    ] Initializing speech engine...
[2026-06-13 02:15:29,535.535 INFO    ] 2026-06-13 02:15:29
[2026-06-13 02:15:29,740.740 INFO    ] 2026-06-13 02:15:29
[2026-06-13 02:15:29,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:15:29,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:15:29,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:15:30,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:15:30,143.143 INFO    ] time= 13/06/2026 02:15:30
[2026-06-13 02:15:30,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:15:30,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:15:30,262.262 INFO    ] No existing commands found in stream
[2026-06-13 02:15:35,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:15:35,279.279 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 02:15:37,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:15:37,715.715 INFO    ] Checking for system updates...
[2026-06-13 02:15:37,737.737 INFO    ] 200
[2026-06-13 02:15:37,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:37,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:37,772.772 INFO    ] No update needed
[2026-06-13 02:15:37,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 02:15:37,793.793 INFO    ] 200
[2026-06-13 02:15:37,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:37,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:15:37,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:15:37,856.856 INFO    ] No camera update needed
[2026-06-13 02:15:37,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:15:37,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:15:37,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:15:37,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:15:39,905.905 INFO    ] ================================================
[2026-06-13 02:15:39,920.920 INFO    ] Launching Daemon at Sat Jun 13 02:15:39 IST 2026
[2026-06-13 02:15:39,931.931 INFO    ] ================================================
[2026-06-13 02:15:40,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:15:40
[2026-06-13 02:15:40,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:15:40,758.758 INFO    ] Initializing speech engine...
[2026-06-13 02:15:40,763.763 INFO    ] 2026-06-13 02:15:40
[2026-06-13 02:15:40,967.967 INFO    ] 2026-06-13 02:15:40
[2026-06-13 02:15:40,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:15:41,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:15:41,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:15:41,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:15:41,361.361 INFO    ] time= 13/06/2026 02:15:41
[2026-06-13 02:15:41,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:15:41,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:15:41,481.481 INFO    ] No existing commands found in stream
[2026-06-13 02:15:46,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:15:46,494.494 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 02:15:49,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:15:49,462.462 INFO    ] Checking for system updates...
[2026-06-13 02:15:49,500.500 INFO    ] 200
[2026-06-13 02:15:49,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:49,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:15:49,566.566 INFO    ] No update needed
[2026-06-13 02:15:49,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 02:15:49,603.603 INFO    ] 200
[2026-06-13 02:15:49,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:15:49,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:15:49,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:15:49,691.691 INFO    ] No camera update needed
[2026-06-13 02:15:49,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:15:49,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:15:49,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:15:49,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:15:51,748.748 INFO    ] ================================================
[2026-06-13 02:15:51,764.764 INFO    ] Launching Daemon at Sat Jun 13 02:15:51 IST 2026
[2026-06-13 02:15:51,774.774 INFO    ] ================================================
[2026-06-13 02:15:52,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:15:52
[2026-06-13 02:15:52,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:15:52,850.850 INFO    ] Initializing speech engine...
[2026-06-13 02:15:52,856.856 INFO    ] 2026-06-13 02:15:52
[2026-06-13 02:15:53,061.061 INFO    ] 2026-06-13 02:15:53
[2026-06-13 02:15:53,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:15:53,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:15:53,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:15:53,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:15:53,471.471 INFO    ] time= 13/06/2026 02:15:53
[2026-06-13 02:15:53,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:15:53,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:15:53,585.585 INFO    ] No existing commands found in stream
[2026-06-13 02:15:58,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:15:58,597.597 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 02:15:59,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:15:59,978.978 INFO    ] Checking for system updates...
[2026-06-13 02:16:00,003.003 INFO    ] 200
[2026-06-13 02:16:00,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:00,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:16:00,040.040 INFO    ] No update needed
[2026-06-13 02:16:00,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:00,063.063 INFO    ] 200
[2026-06-13 02:16:00,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:00,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:00,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:16:00,134.134 INFO    ] No camera update needed
[2026-06-13 02:16:00,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:00,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:00,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:16:02,179.179 INFO    ] ================================================
[2026-06-13 02:16:02,190.190 INFO    ] Launching Daemon at Sat Jun 13 02:16:02 IST 2026
[2026-06-13 02:16:02,198.198 INFO    ] ================================================
[2026-06-13 02:16:02,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:16:02
[2026-06-13 02:16:02,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:16:03,049.049 INFO    ] Initializing speech engine...
[2026-06-13 02:16:03,057.057 INFO    ] 2026-06-13 02:16:03
[2026-06-13 02:16:03,264.264 INFO    ] 2026-06-13 02:16:03
[2026-06-13 02:16:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:16:03,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:16:03,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:16:03,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:16:03,517.517 INFO    ] time= 13/06/2026 02:16:03
[2026-06-13 02:16:03,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:16:03,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:16:03,699.699 INFO    ] No existing commands found in stream
[2026-06-13 02:16:08,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:16:08,727.727 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 02:16:11,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:16:11,790.790 INFO    ] Checking for system updates...
[2026-06-13 02:16:11,811.811 INFO    ] 200
[2026-06-13 02:16:11,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:11,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:11,844.844 INFO    ] No update needed
[2026-06-13 02:16:11,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:11,865.865 INFO    ] 200
[2026-06-13 02:16:11,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:11,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:11,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:11,936.936 INFO    ] No camera update needed
[2026-06-13 02:16:11,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:11,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:11,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:11,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:16:13,971.971 INFO    ] ================================================
[2026-06-13 02:16:13,980.980 INFO    ] Launching Daemon at Sat Jun 13 02:16:13 IST 2026
[2026-06-13 02:16:13,985.985 INFO    ] ================================================
[2026-06-13 02:16:14,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:16:14
[2026-06-13 02:16:14,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:16:14,791.791 INFO    ] Initializing speech engine...
[2026-06-13 02:16:14,801.801 INFO    ] 2026-06-13 02:16:14
[2026-06-13 02:16:15,005.005 INFO    ] 2026-06-13 02:16:14
[2026-06-13 02:16:15,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:16:15,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:16:15,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:16:15,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:16:15,412.412 INFO    ] time= 13/06/2026 02:16:15
[2026-06-13 02:16:15,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:16:15,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:16:15,546.546 INFO    ] No existing commands found in stream
[2026-06-13 02:16:20,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:16:20,558.558 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 02:16:23,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:16:23,524.524 INFO    ] Checking for system updates...
[2026-06-13 02:16:23,546.546 INFO    ] 200
[2026-06-13 02:16:23,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:23,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:23,580.580 INFO    ] No update needed
[2026-06-13 02:16:23,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:23,603.603 INFO    ] 200
[2026-06-13 02:16:23,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:23,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:23,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:23,676.676 INFO    ] No camera update needed
[2026-06-13 02:16:23,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:23,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:23,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:23,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:16:25,724.724 INFO    ] ================================================
[2026-06-13 02:16:25,739.739 INFO    ] Launching Daemon at Sat Jun 13 02:16:25 IST 2026
[2026-06-13 02:16:25,749.749 INFO    ] ================================================
[2026-06-13 02:16:26,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:16:26
[2026-06-13 02:16:26,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:16:26,523.523 INFO    ] Initializing speech engine...
[2026-06-13 02:16:26,533.533 INFO    ] 2026-06-13 02:16:26
[2026-06-13 02:16:26,756.756 INFO    ] 2026-06-13 02:16:26
[2026-06-13 02:16:26,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:16:26,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:16:26,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:16:27,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:16:27,165.165 INFO    ] time= 13/06/2026 02:16:27
[2026-06-13 02:16:27,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:16:27,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:16:27,312.312 INFO    ] No existing commands found in stream
[2026-06-13 02:16:32,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:16:32,324.324 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 02:16:34,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:16:34,745.745 INFO    ] Checking for system updates...
[2026-06-13 02:16:34,767.767 INFO    ] 200
[2026-06-13 02:16:34,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:34,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:34,804.804 INFO    ] No update needed
[2026-06-13 02:16:34,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:34,825.825 INFO    ] 200
[2026-06-13 02:16:34,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:34,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:34,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:34,902.902 INFO    ] No camera update needed
[2026-06-13 02:16:34,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:34,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:34,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:34,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:16:36,950.950 INFO    ] ================================================
[2026-06-13 02:16:36,965.965 INFO    ] Launching Daemon at Sat Jun 13 02:16:36 IST 2026
[2026-06-13 02:16:36,975.975 INFO    ] ================================================
[2026-06-13 02:16:37,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:16:37
[2026-06-13 02:16:37,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:16:37,760.760 INFO    ] Initializing speech engine...
[2026-06-13 02:16:37,772.772 INFO    ] 2026-06-13 02:16:37
[2026-06-13 02:16:37,981.981 INFO    ] 2026-06-13 02:16:37
[2026-06-13 02:16:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:16:38,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:16:38,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:16:38,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:16:38,395.395 INFO    ] time= 13/06/2026 02:16:38
[2026-06-13 02:16:38,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:16:38,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:16:38,502.502 INFO    ] No existing commands found in stream
[2026-06-13 02:16:43,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:16:43,533.533 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 02:16:46,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:16:46,861.861 INFO    ] Checking for system updates...
[2026-06-13 02:16:46,881.881 INFO    ] 200
[2026-06-13 02:16:46,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:46,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:46,915.915 INFO    ] No update needed
[2026-06-13 02:16:46,916.916 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:46,935.935 INFO    ] 200
[2026-06-13 02:16:46,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:46,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:47,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:16:47,101.101 INFO    ] No camera update needed
[2026-06-13 02:16:47,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:47,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:47,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:47,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:16:49,150.150 INFO    ] ================================================
[2026-06-13 02:16:49,166.166 INFO    ] Launching Daemon at Sat Jun 13 02:16:49 IST 2026
[2026-06-13 02:16:49,177.177 INFO    ] ================================================
[2026-06-13 02:16:49,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:16:49
[2026-06-13 02:16:49,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:16:49,994.994 INFO    ] Initializing speech engine...
[2026-06-13 02:16:50,000.000 INFO    ] 2026-06-13 02:16:49
[2026-06-13 02:16:50,206.206 INFO    ] 2026-06-13 02:16:50
[2026-06-13 02:16:50,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:16:50,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:16:50,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:16:50,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:16:50,595.595 INFO    ] time= 13/06/2026 02:16:50
[2026-06-13 02:16:50,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:16:50,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:16:50,727.727 INFO    ] No existing commands found in stream
[2026-06-13 02:16:55,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:16:55,744.744 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 02:16:58,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:16:58,311.311 INFO    ] Checking for system updates...
[2026-06-13 02:16:58,332.332 INFO    ] 200
[2026-06-13 02:16:58,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:58,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:16:58,365.365 INFO    ] No update needed
[2026-06-13 02:16:58,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 02:16:58,386.386 INFO    ] 200
[2026-06-13 02:16:58,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:16:58,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:16:58,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:16:58,448.448 INFO    ] No camera update needed
[2026-06-13 02:16:58,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:16:58,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:16:58,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:16:58,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:00,496.496 INFO    ] ================================================
[2026-06-13 02:17:00,511.511 INFO    ] Launching Daemon at Sat Jun 13 02:17:00 IST 2026
[2026-06-13 02:17:00,521.521 INFO    ] ================================================
[2026-06-13 02:17:00,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:00
[2026-06-13 02:17:01,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:17:01,302.302 INFO    ] Initializing speech engine...
[2026-06-13 02:17:01,306.306 INFO    ] 2026-06-13 02:17:01
[2026-06-13 02:17:01,535.535 INFO    ] 2026-06-13 02:17:01
[2026-06-13 02:17:01,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:17:01,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:17:01,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:17:01,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:17:01,926.926 INFO    ] time= 13/06/2026 02:17:01
[2026-06-13 02:17:01,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:17:01,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:17:02,000.000 INFO    ] No existing commands found in stream
[2026-06-13 02:17:07,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:17:07,012.012 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 02:17:09,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:17:09,522.522 INFO    ] Checking for system updates...
[2026-06-13 02:17:09,543.543 INFO    ] 200
[2026-06-13 02:17:09,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:09,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:09,576.576 INFO    ] No update needed
[2026-06-13 02:17:09,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 02:17:09,598.598 INFO    ] 200
[2026-06-13 02:17:09,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:09,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:17:09,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:09,671.671 INFO    ] No camera update needed
[2026-06-13 02:17:09,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:17:09,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:17:09,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:17:09,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:11,718.718 INFO    ] ================================================
[2026-06-13 02:17:11,734.734 INFO    ] Launching Daemon at Sat Jun 13 02:17:11 IST 2026
[2026-06-13 02:17:11,745.745 INFO    ] ================================================
[2026-06-13 02:17:12,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:12
[2026-06-13 02:17:12,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:17:12,556.556 INFO    ] Initializing speech engine...
[2026-06-13 02:17:12,560.560 INFO    ] 2026-06-13 02:17:12
[2026-06-13 02:17:12,787.787 INFO    ] 2026-06-13 02:17:12
[2026-06-13 02:17:12,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:17:12,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:17:13,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:17:13,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:17:13,223.223 INFO    ] time= 13/06/2026 02:17:13
[2026-06-13 02:17:13,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:17:13,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:17:13,337.337 INFO    ] No existing commands found in stream
[2026-06-13 02:17:18,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:17:18,351.351 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 02:17:22,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:17:22,172.172 INFO    ] Checking for system updates...
[2026-06-13 02:17:22,193.193 INFO    ] 200
[2026-06-13 02:17:22,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:22,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:22,229.229 INFO    ] No update needed
[2026-06-13 02:17:22,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 02:17:22,251.251 INFO    ] 200
[2026-06-13 02:17:22,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:22,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:17:22,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:22,318.318 INFO    ] No camera update needed
[2026-06-13 02:17:22,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:17:22,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:17:22,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:17:22,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:24,365.365 INFO    ] ================================================
[2026-06-13 02:17:24,381.381 INFO    ] Launching Daemon at Sat Jun 13 02:17:24 IST 2026
[2026-06-13 02:17:24,392.392 INFO    ] ================================================
[2026-06-13 02:17:24,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:24
[2026-06-13 02:17:25,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:17:25,255.255 INFO    ] Initializing speech engine...
[2026-06-13 02:17:25,260.260 INFO    ] 2026-06-13 02:17:25
[2026-06-13 02:17:25,469.469 INFO    ] 2026-06-13 02:17:25
[2026-06-13 02:17:25,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:17:25,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:17:25,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:17:25,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:17:25,883.883 INFO    ] time= 13/06/2026 02:17:25
[2026-06-13 02:17:25,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:17:25,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:17:25,998.998 INFO    ] No existing commands found in stream
[2026-06-13 02:17:31,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:17:31,015.015 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 02:17:34,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:17:34,612.612 INFO    ] Checking for system updates...
[2026-06-13 02:17:34,633.633 INFO    ] 200
[2026-06-13 02:17:34,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:34,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:17:34,667.667 INFO    ] No update needed
[2026-06-13 02:17:34,668.668 INFO    ] Checking for camera pi updates...
[2026-06-13 02:17:34,688.688 INFO    ] 200
[2026-06-13 02:17:34,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:34,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:17:34,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:17:34,747.747 INFO    ] No camera update needed
[2026-06-13 02:17:34,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:17:34,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:17:34,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:17:34,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:36,796.796 INFO    ] ================================================
[2026-06-13 02:17:36,811.811 INFO    ] Launching Daemon at Sat Jun 13 02:17:36 IST 2026
[2026-06-13 02:17:36,822.822 INFO    ] ================================================
[2026-06-13 02:17:37,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:37
[2026-06-13 02:17:37,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:17:37,609.609 INFO    ] Initializing speech engine...
[2026-06-13 02:17:37,614.614 INFO    ] 2026-06-13 02:17:37
[2026-06-13 02:17:37,822.822 INFO    ] 2026-06-13 02:17:37
[2026-06-13 02:17:37,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:17:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:17:38,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:17:38,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:17:38,221.221 INFO    ] time= 13/06/2026 02:17:38
[2026-06-13 02:17:38,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:17:38,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:17:38,335.335 INFO    ] No existing commands found in stream
[2026-06-13 02:17:43,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:17:43,349.349 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 02:17:44,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:17:44,371.371 INFO    ] Checking for system updates...
[2026-06-13 02:17:44,392.392 INFO    ] 200
[2026-06-13 02:17:44,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:44,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:17:44,428.428 INFO    ] No update needed
[2026-06-13 02:17:44,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 02:17:44,449.449 INFO    ] 200
[2026-06-13 02:17:44,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:44,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:17:44,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:17:44,514.514 INFO    ] No camera update needed
[2026-06-13 02:17:44,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:17:44,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:17:44,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:17:44,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:46,564.564 INFO    ] ================================================
[2026-06-13 02:17:46,581.581 INFO    ] Launching Daemon at Sat Jun 13 02:17:46 IST 2026
[2026-06-13 02:17:46,593.593 INFO    ] ================================================
[2026-06-13 02:17:46,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:46
[2026-06-13 02:17:47,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:17:47,619.619 INFO    ] Initializing speech engine...
[2026-06-13 02:17:47,626.626 INFO    ] 2026-06-13 02:17:47
[2026-06-13 02:17:47,920.920 INFO    ] 2026-06-13 02:17:47
[2026-06-13 02:17:47,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:17:48,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:17:48,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:17:48,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:17:48,271.271 INFO    ] time= 13/06/2026 02:17:48
[2026-06-13 02:17:48,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:17:48,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:17:48,352.352 INFO    ] No existing commands found in stream
[2026-06-13 02:17:53,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:17:53,367.367 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 02:17:57,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:17:57,249.249 INFO    ] Checking for system updates...
[2026-06-13 02:17:57,273.273 INFO    ] 200
[2026-06-13 02:17:57,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:57,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:57,308.308 INFO    ] No update needed
[2026-06-13 02:17:57,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 02:17:57,329.329 INFO    ] 200
[2026-06-13 02:17:57,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:17:57,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:17:57,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:17:57,392.392 INFO    ] No camera update needed
[2026-06-13 02:17:57,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:17:57,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:17:57,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:17:57,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:17:59,441.441 INFO    ] ================================================
[2026-06-13 02:17:59,457.457 INFO    ] Launching Daemon at Sat Jun 13 02:17:59 IST 2026
[2026-06-13 02:17:59,467.467 INFO    ] ================================================
[2026-06-13 02:17:59,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:17:59
[2026-06-13 02:18:00,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:00,298.298 INFO    ] Initializing speech engine...
[2026-06-13 02:18:00,302.302 INFO    ] 2026-06-13 02:18:00
[2026-06-13 02:18:00,506.506 INFO    ] 2026-06-13 02:18:00
[2026-06-13 02:18:00,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:00,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:00,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:00,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:00,917.917 INFO    ] time= 13/06/2026 02:18:00
[2026-06-13 02:18:00,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:00,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:01,023.023 INFO    ] No existing commands found in stream
[2026-06-13 02:18:06,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:18:06,051.051 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 02:18:06,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:18:06,964.964 INFO    ] Checking for system updates...
[2026-06-13 02:18:06,985.985 INFO    ] 200
[2026-06-13 02:18:06,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:07,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:18:07,019.019 INFO    ] No update needed
[2026-06-13 02:18:07,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 02:18:07,040.040 INFO    ] 200
[2026-06-13 02:18:07,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:07,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:18:07,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:18:07,113.113 INFO    ] No camera update needed
[2026-06-13 02:18:07,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:18:07,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:18:07,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:18:07,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:18:09,162.162 INFO    ] ================================================
[2026-06-13 02:18:09,178.178 INFO    ] Launching Daemon at Sat Jun 13 02:18:09 IST 2026
[2026-06-13 02:18:09,189.189 INFO    ] ================================================
[2026-06-13 02:18:09,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:18:09
[2026-06-13 02:18:09,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:10,028.028 INFO    ] Initializing speech engine...
[2026-06-13 02:18:10,034.034 INFO    ] 2026-06-13 02:18:10
[2026-06-13 02:18:10,247.247 INFO    ] 2026-06-13 02:18:10
[2026-06-13 02:18:10,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:10,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:10,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:10,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:10,653.653 INFO    ] time= 13/06/2026 02:18:10
[2026-06-13 02:18:10,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:10,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:10,764.764 INFO    ] No existing commands found in stream
[2026-06-13 02:18:15,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:18:15,781.781 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 02:18:19,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:18:19,984.984 INFO    ] Checking for system updates...
[2026-06-13 02:18:20,004.004 INFO    ] 200
[2026-06-13 02:18:20,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:20,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:18:20,038.038 INFO    ] No update needed
[2026-06-13 02:18:20,039.039 INFO    ] Checking for camera pi updates...
[2026-06-13 02:18:20,059.059 INFO    ] 200
[2026-06-13 02:18:20,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:20,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:18:20,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:18:20,135.135 INFO    ] No camera update needed
[2026-06-13 02:18:20,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:18:20,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:18:20,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:18:20,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:18:22,183.183 INFO    ] ================================================
[2026-06-13 02:18:22,198.198 INFO    ] Launching Daemon at Sat Jun 13 02:18:22 IST 2026
[2026-06-13 02:18:22,209.209 INFO    ] ================================================
[2026-06-13 02:18:22,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:18:22
[2026-06-13 02:18:22,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:23,043.043 INFO    ] Initializing speech engine...
[2026-06-13 02:18:23,049.049 INFO    ] 2026-06-13 02:18:23
[2026-06-13 02:18:23,255.255 INFO    ] 2026-06-13 02:18:23
[2026-06-13 02:18:23,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:23,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:23,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:23,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:23,676.676 INFO    ] time= 13/06/2026 02:18:23
[2026-06-13 02:18:23,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:23,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:23,773.773 INFO    ] No existing commands found in stream
[2026-06-13 02:18:28,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:18:28,785.785 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 02:18:32,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:18:32,023.023 INFO    ] Checking for system updates...
[2026-06-13 02:18:32,046.046 INFO    ] 200
[2026-06-13 02:18:32,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:32,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:18:32,086.086 INFO    ] No update needed
[2026-06-13 02:18:32,089.089 INFO    ] Checking for camera pi updates...
[2026-06-13 02:18:32,113.113 INFO    ] 200
[2026-06-13 02:18:32,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:32,173.173 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:18:32,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:18:32,208.208 INFO    ] No camera update needed
[2026-06-13 02:18:32,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:18:32,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:18:32,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:18:32,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:18:34,273.273 INFO    ] ================================================
[2026-06-13 02:18:34,289.289 INFO    ] Launching Daemon at Sat Jun 13 02:18:34 IST 2026
[2026-06-13 02:18:34,300.300 INFO    ] ================================================
[2026-06-13 02:18:34,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:18:34
[2026-06-13 02:18:35,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:35,507.507 INFO    ] Initializing speech engine...
[2026-06-13 02:18:35,512.512 INFO    ] 2026-06-13 02:18:35
[2026-06-13 02:18:35,718.718 INFO    ] 2026-06-13 02:18:35
[2026-06-13 02:18:35,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:35,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:35,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:36,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:36,180.180 INFO    ] time= 13/06/2026 02:18:36
[2026-06-13 02:18:36,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:36,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:36,286.286 INFO    ] No existing commands found in stream
[2026-06-13 02:18:41,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:18:41,300.300 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 02:18:42,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:18:42,577.577 INFO    ] Checking for system updates...
[2026-06-13 02:18:42,597.597 INFO    ] 200
[2026-06-13 02:18:42,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:42,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:18:42,630.630 INFO    ] No update needed
[2026-06-13 02:18:42,631.631 INFO    ] Checking for camera pi updates...
[2026-06-13 02:18:42,653.653 INFO    ] 200
[2026-06-13 02:18:42,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:42,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:18:42,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:18:42,722.722 INFO    ] No camera update needed
[2026-06-13 02:18:42,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:18:42,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:18:42,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:18:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:18:44,769.769 INFO    ] ================================================
[2026-06-13 02:18:44,784.784 INFO    ] Launching Daemon at Sat Jun 13 02:18:44 IST 2026
[2026-06-13 02:18:44,795.795 INFO    ] ================================================
[2026-06-13 02:18:45,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:18:45
[2026-06-13 02:18:45,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:45,571.571 INFO    ] Initializing speech engine...
[2026-06-13 02:18:45,582.582 INFO    ] 2026-06-13 02:18:45
[2026-06-13 02:18:45,784.784 INFO    ] 2026-06-13 02:18:45
[2026-06-13 02:18:45,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:45,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:46,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:46,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:46,178.178 INFO    ] time= 13/06/2026 02:18:46
[2026-06-13 02:18:46,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:46,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:46,300.300 INFO    ] No existing commands found in stream
[2026-06-13 02:18:51,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:18:51,311.311 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 02:18:54,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:18:54,003.003 INFO    ] Checking for system updates...
[2026-06-13 02:18:54,024.024 INFO    ] 200
[2026-06-13 02:18:54,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:54,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:18:54,058.058 INFO    ] No update needed
[2026-06-13 02:18:54,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 02:18:54,080.080 INFO    ] 200
[2026-06-13 02:18:54,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:18:54,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:18:54,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:18:54,254.254 INFO    ] No camera update needed
[2026-06-13 02:18:54,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:18:54,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:18:54,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:18:54,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:18:56,301.301 INFO    ] ================================================
[2026-06-13 02:18:56,316.316 INFO    ] Launching Daemon at Sat Jun 13 02:18:56 IST 2026
[2026-06-13 02:18:56,327.327 INFO    ] ================================================
[2026-06-13 02:18:56,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:18:56
[2026-06-13 02:18:56,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:18:57,147.147 INFO    ] Initializing speech engine...
[2026-06-13 02:18:57,152.152 INFO    ] 2026-06-13 02:18:57
[2026-06-13 02:18:57,358.358 INFO    ] 2026-06-13 02:18:57
[2026-06-13 02:18:57,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:18:57,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:18:57,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:18:57,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:18:57,760.760 INFO    ] time= 13/06/2026 02:18:57
[2026-06-13 02:18:57,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:18:57,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:18:57,874.874 INFO    ] No existing commands found in stream
[2026-06-13 02:19:02,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:19:02,881.881 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 02:19:06,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:19:06,476.476 INFO    ] Checking for system updates...
[2026-06-13 02:19:06,497.497 INFO    ] 200
[2026-06-13 02:19:06,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:06,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:19:06,531.531 INFO    ] No update needed
[2026-06-13 02:19:06,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 02:19:06,553.553 INFO    ] 200
[2026-06-13 02:19:06,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:06,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:19:06,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:06,620.620 INFO    ] No camera update needed
[2026-06-13 02:19:06,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:19:06,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:19:06,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:19:06,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:19:08,669.669 INFO    ] ================================================
[2026-06-13 02:19:08,685.685 INFO    ] Launching Daemon at Sat Jun 13 02:19:08 IST 2026
[2026-06-13 02:19:08,742.742 INFO    ] ================================================
[2026-06-13 02:19:09,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:19:09
[2026-06-13 02:19:09,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:19:09,542.542 INFO    ] Initializing speech engine...
[2026-06-13 02:19:09,551.551 INFO    ] 2026-06-13 02:19:09
[2026-06-13 02:19:09,756.756 INFO    ] 2026-06-13 02:19:09
[2026-06-13 02:19:09,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:19:09,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:19:09,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:19:10,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:19:10,171.171 INFO    ] time= 13/06/2026 02:19:10
[2026-06-13 02:19:10,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:19:10,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:19:10,285.285 INFO    ] No existing commands found in stream
[2026-06-13 02:19:15,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:19:15,302.302 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 02:19:18,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:19:18,554.554 INFO    ] Checking for system updates...
[2026-06-13 02:19:18,575.575 INFO    ] 200
[2026-06-13 02:19:18,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:18,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:18,610.610 INFO    ] No update needed
[2026-06-13 02:19:18,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 02:19:18,631.631 INFO    ] 200
[2026-06-13 02:19:18,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:18,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:19:18,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:18,693.693 INFO    ] No camera update needed
[2026-06-13 02:19:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:19:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:19:18,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:19:18,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:19:20,740.740 INFO    ] ================================================
[2026-06-13 02:19:20,825.825 INFO    ] Launching Daemon at Sat Jun 13 02:19:20 IST 2026
[2026-06-13 02:19:20,836.836 INFO    ] ================================================
[2026-06-13 02:19:21,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:19:21
[2026-06-13 02:19:21,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:19:21,644.644 INFO    ] Initializing speech engine...
[2026-06-13 02:19:21,649.649 INFO    ] 2026-06-13 02:19:21
[2026-06-13 02:19:21,851.851 INFO    ] 2026-06-13 02:19:21
[2026-06-13 02:19:21,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:19:22,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:19:22,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:19:22,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:19:22,267.267 INFO    ] time= 13/06/2026 02:19:22
[2026-06-13 02:19:22,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:19:22,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:19:22,369.369 INFO    ] No existing commands found in stream
[2026-06-13 02:19:27,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:19:27,386.386 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 02:19:28,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:19:28,804.804 INFO    ] Checking for system updates...
[2026-06-13 02:19:28,825.825 INFO    ] 200
[2026-06-13 02:19:28,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:28,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:28,863.863 INFO    ] No update needed
[2026-06-13 02:19:28,864.864 INFO    ] Checking for camera pi updates...
[2026-06-13 02:19:28,885.885 INFO    ] 200
[2026-06-13 02:19:28,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:28,909.909 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:19:28,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:28,956.956 INFO    ] No camera update needed
[2026-06-13 02:19:28,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:19:28,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:19:28,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:19:28,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:19:31,003.003 INFO    ] ================================================
[2026-06-13 02:19:31,017.017 INFO    ] Launching Daemon at Sat Jun 13 02:19:31 IST 2026
[2026-06-13 02:19:31,029.029 INFO    ] ================================================
[2026-06-13 02:19:31,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:19:31
[2026-06-13 02:19:31,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:19:31,799.799 INFO    ] Initializing speech engine...
[2026-06-13 02:19:31,807.807 INFO    ] 2026-06-13 02:19:31
[2026-06-13 02:19:32,030.030 INFO    ] 2026-06-13 02:19:31
[2026-06-13 02:19:32,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:19:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:19:32,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:19:32,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:19:32,504.504 INFO    ] time= 13/06/2026 02:19:32
[2026-06-13 02:19:32,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:19:32,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:19:32,592.592 INFO    ] No existing commands found in stream
[2026-06-13 02:19:37,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:19:37,760.760 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 02:19:41,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:19:41,105.105 INFO    ] Checking for system updates...
[2026-06-13 02:19:41,126.126 INFO    ] 200
[2026-06-13 02:19:41,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:41,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:19:41,160.160 INFO    ] No update needed
[2026-06-13 02:19:41,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 02:19:41,182.182 INFO    ] 200
[2026-06-13 02:19:41,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:41,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:19:41,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:19:41,249.249 INFO    ] No camera update needed
[2026-06-13 02:19:41,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:19:41,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:19:41,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:19:41,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:19:43,297.297 INFO    ] ================================================
[2026-06-13 02:19:43,313.313 INFO    ] Launching Daemon at Sat Jun 13 02:19:43 IST 2026
[2026-06-13 02:19:43,323.323 INFO    ] ================================================
[2026-06-13 02:19:43,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:19:43
[2026-06-13 02:19:43,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:19:44,132.132 INFO    ] Initializing speech engine...
[2026-06-13 02:19:44,137.137 INFO    ] 2026-06-13 02:19:44
[2026-06-13 02:19:44,351.351 INFO    ] 2026-06-13 02:19:44
[2026-06-13 02:19:44,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:19:44,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:19:44,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:19:44,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:19:44,783.783 INFO    ] time= 13/06/2026 02:19:44
[2026-06-13 02:19:44,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:19:44,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:19:44,898.898 INFO    ] No existing commands found in stream
[2026-06-13 02:19:49,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:19:49,910.910 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 02:19:53,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:19:53,880.880 INFO    ] Checking for system updates...
[2026-06-13 02:19:53,901.901 INFO    ] 200
[2026-06-13 02:19:53,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:53,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:53,934.934 INFO    ] No update needed
[2026-06-13 02:19:53,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 02:19:53,957.957 INFO    ] 200
[2026-06-13 02:19:53,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:19:53,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:19:54,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:19:54,025.025 INFO    ] No camera update needed
[2026-06-13 02:19:54,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:19:54,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:19:54,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:19:54,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:19:56,073.073 INFO    ] ================================================
[2026-06-13 02:19:56,088.088 INFO    ] Launching Daemon at Sat Jun 13 02:19:56 IST 2026
[2026-06-13 02:19:56,099.099 INFO    ] ================================================
[2026-06-13 02:19:56,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:19:56
[2026-06-13 02:19:56,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:19:56,920.920 INFO    ] Initializing speech engine...
[2026-06-13 02:19:56,929.929 INFO    ] 2026-06-13 02:19:56
[2026-06-13 02:19:57,150.150 INFO    ] 2026-06-13 02:19:57
[2026-06-13 02:19:57,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:19:57,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:19:57,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:19:57,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:19:57,566.566 INFO    ] time= 13/06/2026 02:19:57
[2026-06-13 02:19:57,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:19:57,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:19:57,696.696 INFO    ] No existing commands found in stream
[2026-06-13 02:20:02,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:20:02,704.704 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 02:20:09,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:20:09,725.725 INFO    ] Checking for system updates...
[2026-06-13 02:20:09,762.762 INFO    ] 200
[2026-06-13 02:20:09,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:09,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:09,822.822 INFO    ] No update needed
[2026-06-13 02:20:09,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 02:20:09,848.848 INFO    ] 200
[2026-06-13 02:20:09,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:09,874.874 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:20:09,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:09,912.912 INFO    ] No camera update needed
[2026-06-13 02:20:09,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:20:09,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:20:09,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:20:09,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:20:11,961.961 INFO    ] ================================================
[2026-06-13 02:20:11,976.976 INFO    ] Launching Daemon at Sat Jun 13 02:20:11 IST 2026
[2026-06-13 02:20:11,987.987 INFO    ] ================================================
[2026-06-13 02:20:12,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:20:12
[2026-06-13 02:20:12,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:20:12,766.766 INFO    ] Initializing speech engine...
[2026-06-13 02:20:12,769.769 INFO    ] 2026-06-13 02:20:12
[2026-06-13 02:20:12,988.988 INFO    ] 2026-06-13 02:20:12
[2026-06-13 02:20:13,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:20:13,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:20:13,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:20:13,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:20:13,449.449 INFO    ] time= 13/06/2026 02:20:13
[2026-06-13 02:20:13,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:20:13,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:20:13,680.680 INFO    ] No existing commands found in stream
[2026-06-13 02:20:18,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:20:18,713.713 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 02:20:20,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:20:20,985.985 INFO    ] Checking for system updates...
[2026-06-13 02:20:21,006.006 INFO    ] 200
[2026-06-13 02:20:21,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:21,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:21,042.042 INFO    ] No update needed
[2026-06-13 02:20:21,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 02:20:21,067.067 INFO    ] 200
[2026-06-13 02:20:21,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:21,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:20:21,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:21,133.133 INFO    ] No camera update needed
[2026-06-13 02:20:21,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:20:21,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:20:21,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:20:21,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:20:23,183.183 INFO    ] ================================================
[2026-06-13 02:20:23,198.198 INFO    ] Launching Daemon at Sat Jun 13 02:20:23 IST 2026
[2026-06-13 02:20:23,209.209 INFO    ] ================================================
[2026-06-13 02:20:23,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:20:23
[2026-06-13 02:20:23,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:20:23,984.984 INFO    ] Initializing speech engine...
[2026-06-13 02:20:23,994.994 INFO    ] 2026-06-13 02:20:23
[2026-06-13 02:20:24,197.197 INFO    ] 2026-06-13 02:20:24
[2026-06-13 02:20:24,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:20:24,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:20:24,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:20:24,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:20:24,707.707 INFO    ] time= 13/06/2026 02:20:24
[2026-06-13 02:20:24,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:20:24,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:20:24,950.950 INFO    ] No existing commands found in stream
[2026-06-13 02:20:29,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:20:29,979.979 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 02:20:31,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:20:31,099.099 INFO    ] Checking for system updates...
[2026-06-13 02:20:31,120.120 INFO    ] 200
[2026-06-13 02:20:31,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:31,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:31,153.153 INFO    ] No update needed
[2026-06-13 02:20:31,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 02:20:31,175.175 INFO    ] 200
[2026-06-13 02:20:31,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:31,200.200 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:20:31,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:31,237.237 INFO    ] No camera update needed
[2026-06-13 02:20:31,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:20:31,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:20:31,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:20:31,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:20:33,284.284 INFO    ] ================================================
[2026-06-13 02:20:33,298.298 INFO    ] Launching Daemon at Sat Jun 13 02:20:33 IST 2026
[2026-06-13 02:20:33,309.309 INFO    ] ================================================
[2026-06-13 02:20:33,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:20:33
[2026-06-13 02:20:33,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:20:34,135.135 INFO    ] Initializing speech engine...
[2026-06-13 02:20:34,146.146 INFO    ] 2026-06-13 02:20:34
[2026-06-13 02:20:34,350.350 INFO    ] 2026-06-13 02:20:34
[2026-06-13 02:20:34,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:20:34,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:20:34,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:20:34,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:20:34,749.749 INFO    ] time= 13/06/2026 02:20:34
[2026-06-13 02:20:34,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:20:34,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:20:34,865.865 INFO    ] No existing commands found in stream
[2026-06-13 02:20:39,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:20:39,881.881 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 02:20:43,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:20:43,467.467 INFO    ] Checking for system updates...
[2026-06-13 02:20:43,490.490 INFO    ] 200
[2026-06-13 02:20:43,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:43,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:43,523.523 INFO    ] No update needed
[2026-06-13 02:20:43,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 02:20:43,544.544 INFO    ] 200
[2026-06-13 02:20:43,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:43,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:20:43,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:20:43,608.608 INFO    ] No camera update needed
[2026-06-13 02:20:43,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:20:43,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:20:43,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:20:43,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:20:45,655.655 INFO    ] ================================================
[2026-06-13 02:20:45,670.670 INFO    ] Launching Daemon at Sat Jun 13 02:20:45 IST 2026
[2026-06-13 02:20:45,681.681 INFO    ] ================================================
[2026-06-13 02:20:46,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:20:46
[2026-06-13 02:20:46,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:20:46,538.538 INFO    ] Initializing speech engine...
[2026-06-13 02:20:46,548.548 INFO    ] 2026-06-13 02:20:46
[2026-06-13 02:20:46,753.753 INFO    ] 2026-06-13 02:20:46
[2026-06-13 02:20:46,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:20:47,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:20:47,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:20:47,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:20:47,251.251 INFO    ] time= 13/06/2026 02:20:47
[2026-06-13 02:20:47,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:20:47,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:20:47,394.394 INFO    ] No existing commands found in stream
[2026-06-13 02:20:52,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:20:52,423.423 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 02:20:55,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:20:55,704.704 INFO    ] Checking for system updates...
[2026-06-13 02:20:55,725.725 INFO    ] 200
[2026-06-13 02:20:55,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:55,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:55,758.758 INFO    ] No update needed
[2026-06-13 02:20:55,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 02:20:55,780.780 INFO    ] 200
[2026-06-13 02:20:55,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:20:55,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:20:55,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:20:55,946.946 INFO    ] No camera update needed
[2026-06-13 02:20:55,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:20:55,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:20:55,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:20:55,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:20:58,998.998 INFO    ] ================================================
[2026-06-13 02:20:58,013.013 INFO    ] Launching Daemon at Sat Jun 13 02:20:58 IST 2026
[2026-06-13 02:20:58,024.024 INFO    ] ================================================
[2026-06-13 02:20:58,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:20:58
[2026-06-13 02:20:58,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:20:58,850.850 INFO    ] Initializing speech engine...
[2026-06-13 02:20:58,856.856 INFO    ] 2026-06-13 02:20:58
[2026-06-13 02:20:59,059.059 INFO    ] 2026-06-13 02:20:59
[2026-06-13 02:20:59,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:20:59,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:20:59,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:20:59,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:20:59,458.458 INFO    ] time= 13/06/2026 02:20:59
[2026-06-13 02:20:59,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:20:59,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:20:59,572.572 INFO    ] No existing commands found in stream
[2026-06-13 02:21:04,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:21:04,585.585 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 02:21:05,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:21:05,599.599 INFO    ] Checking for system updates...
[2026-06-13 02:21:05,619.619 INFO    ] 200
[2026-06-13 02:21:05,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:05,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:21:05,653.653 INFO    ] No update needed
[2026-06-13 02:21:05,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 02:21:05,673.673 INFO    ] 200
[2026-06-13 02:21:05,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:05,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:21:05,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:21:05,739.739 INFO    ] No camera update needed
[2026-06-13 02:21:05,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:21:05,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:21:05,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:21:05,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:21:07,788.788 INFO    ] ================================================
[2026-06-13 02:21:07,803.803 INFO    ] Launching Daemon at Sat Jun 13 02:21:07 IST 2026
[2026-06-13 02:21:07,814.814 INFO    ] ================================================
[2026-06-13 02:21:08,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:21:08
[2026-06-13 02:21:08,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:21:08,626.626 INFO    ] Initializing speech engine...
[2026-06-13 02:21:08,634.634 INFO    ] 2026-06-13 02:21:08
[2026-06-13 02:21:08,858.858 INFO    ] 2026-06-13 02:21:08
[2026-06-13 02:21:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:21:09,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:21:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:21:09,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:21:09,292.292 INFO    ] time= 13/06/2026 02:21:09
[2026-06-13 02:21:09,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:21:09,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:21:09,422.422 INFO    ] No existing commands found in stream
[2026-06-13 02:21:14,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:21:14,436.436 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 02:21:18,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:21:18,279.279 INFO    ] Checking for system updates...
[2026-06-13 02:21:18,300.300 INFO    ] 200
[2026-06-13 02:21:18,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:18,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:21:18,333.333 INFO    ] No update needed
[2026-06-13 02:21:18,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 02:21:18,354.354 INFO    ] 200
[2026-06-13 02:21:18,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:18,381.381 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:21:18,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:21:18,422.422 INFO    ] No camera update needed
[2026-06-13 02:21:18,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:21:18,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:21:18,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:21:18,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:21:20,470.470 INFO    ] ================================================
[2026-06-13 02:21:20,485.485 INFO    ] Launching Daemon at Sat Jun 13 02:21:20 IST 2026
[2026-06-13 02:21:20,496.496 INFO    ] ================================================
[2026-06-13 02:21:20,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:21:20
[2026-06-13 02:21:21,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:21:21,301.301 INFO    ] Initializing speech engine...
[2026-06-13 02:21:21,306.306 INFO    ] 2026-06-13 02:21:21
[2026-06-13 02:21:21,510.510 INFO    ] 2026-06-13 02:21:21
[2026-06-13 02:21:21,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:21:21,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:21:21,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:21:21,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:21:21,929.929 INFO    ] time= 13/06/2026 02:21:21
[2026-06-13 02:21:21,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:21:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:21:22,025.025 INFO    ] No existing commands found in stream
[2026-06-13 02:21:27,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:21:27,037.037 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 02:21:29,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:21:29,688.688 INFO    ] Checking for system updates...
[2026-06-13 02:21:29,711.711 INFO    ] 200
[2026-06-13 02:21:29,712.712 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:29,714.714 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 02:21:29,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 02:21:29,738.738 INFO    ] 200
[2026-06-13 02:21:29,740.740 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:29,742.742 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 02:21:29,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:21:29,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:21:29,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:21:29,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:21:31,784.784 INFO    ] ================================================
[2026-06-13 02:21:31,799.799 INFO    ] Launching Daemon at Sat Jun 13 02:21:31 IST 2026
[2026-06-13 02:21:31,811.811 INFO    ] ================================================
[2026-06-13 02:21:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:21:32
[2026-06-13 02:21:32,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:21:33,336.336 INFO    ] Initializing speech engine...
[2026-06-13 02:21:33,345.345 INFO    ] 2026-06-13 02:21:33
[2026-06-13 02:21:33,660.660 INFO    ] 2026-06-13 02:21:33
[2026-06-13 02:21:33,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:21:33,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:21:33,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:21:34,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:21:34,054.054 INFO    ] time= 13/06/2026 02:21:34
[2026-06-13 02:21:34,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:21:34,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:21:34,278.278 INFO    ] No existing commands found in stream
[2026-06-13 02:21:39,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:21:39,302.302 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 02:21:42,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:21:42,469.469 INFO    ] Checking for system updates...
[2026-06-13 02:21:42,490.490 INFO    ] 200
[2026-06-13 02:21:42,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:42,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:21:42,523.523 INFO    ] No update needed
[2026-06-13 02:21:42,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 02:21:42,543.543 INFO    ] 200
[2026-06-13 02:21:42,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:42,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:21:42,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:21:42,610.610 INFO    ] No camera update needed
[2026-06-13 02:21:42,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:21:42,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:21:42,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:21:42,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:21:44,657.657 INFO    ] ================================================
[2026-06-13 02:21:44,673.673 INFO    ] Launching Daemon at Sat Jun 13 02:21:44 IST 2026
[2026-06-13 02:21:44,683.683 INFO    ] ================================================
[2026-06-13 02:21:45,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:21:45
[2026-06-13 02:21:45,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:21:45,547.547 INFO    ] Initializing speech engine...
[2026-06-13 02:21:45,552.552 INFO    ] 2026-06-13 02:21:45
[2026-06-13 02:21:45,760.760 INFO    ] 2026-06-13 02:21:45
[2026-06-13 02:21:45,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:21:45,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:21:45,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:21:46,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:21:46,153.153 INFO    ] time= 13/06/2026 02:21:46
[2026-06-13 02:21:46,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:21:46,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:21:46,287.287 INFO    ] No existing commands found in stream
[2026-06-13 02:21:51,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:21:51,305.305 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 02:21:53,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:21:53,764.764 INFO    ] Checking for system updates...
[2026-06-13 02:21:53,786.786 INFO    ] 200
[2026-06-13 02:21:53,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:53,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:21:53,821.821 INFO    ] No update needed
[2026-06-13 02:21:53,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 02:21:53,842.842 INFO    ] 200
[2026-06-13 02:21:53,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:21:53,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:21:53,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:21:53,908.908 INFO    ] No camera update needed
[2026-06-13 02:21:53,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:21:53,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:21:53,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:21:53,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:21:55,958.958 INFO    ] ================================================
[2026-06-13 02:21:55,973.973 INFO    ] Launching Daemon at Sat Jun 13 02:21:55 IST 2026
[2026-06-13 02:21:55,984.984 INFO    ] ================================================
[2026-06-13 02:21:56,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:21:56
[2026-06-13 02:21:56,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:21:56,840.840 INFO    ] Initializing speech engine...
[2026-06-13 02:21:56,847.847 INFO    ] 2026-06-13 02:21:56
[2026-06-13 02:21:57,053.053 INFO    ] 2026-06-13 02:21:57
[2026-06-13 02:21:57,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:21:57,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:21:57,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:21:57,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:21:57,482.482 INFO    ] time= 13/06/2026 02:21:57
[2026-06-13 02:21:57,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:21:57,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:21:57,582.582 INFO    ] No existing commands found in stream
[2026-06-13 02:22:02,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:02,607.607 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 02:22:05,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:22:05,674.674 INFO    ] Checking for system updates...
[2026-06-13 02:22:05,694.694 INFO    ] 200
[2026-06-13 02:22:05,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:05,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:22:05,734.734 INFO    ] No update needed
[2026-06-13 02:22:05,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:05,756.756 INFO    ] 200
[2026-06-13 02:22:05,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:05,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:05,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:22:05,825.825 INFO    ] No camera update needed
[2026-06-13 02:22:05,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:05,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:05,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:05,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:07,876.876 INFO    ] ================================================
[2026-06-13 02:22:07,891.891 INFO    ] Launching Daemon at Sat Jun 13 02:22:07 IST 2026
[2026-06-13 02:22:07,902.902 INFO    ] ================================================
[2026-06-13 02:22:08,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:22:08
[2026-06-13 02:22:08,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:22:08,686.686 INFO    ] Initializing speech engine...
[2026-06-13 02:22:08,691.691 INFO    ] 2026-06-13 02:22:08
[2026-06-13 02:22:08,895.895 INFO    ] 2026-06-13 02:22:08
[2026-06-13 02:22:08,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:22:09,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:22:09,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:22:09,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:22:09,306.306 INFO    ] time= 13/06/2026 02:22:09
[2026-06-13 02:22:09,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:22:09,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:22:09,418.418 INFO    ] No existing commands found in stream
[2026-06-13 02:22:14,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:14,430.430 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 02:22:15,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:22:15,178.178 INFO    ] Checking for system updates...
[2026-06-13 02:22:15,200.200 INFO    ] 200
[2026-06-13 02:22:15,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:15,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:15,233.233 INFO    ] No update needed
[2026-06-13 02:22:15,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:15,254.254 INFO    ] 200
[2026-06-13 02:22:15,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:15,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:15,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:15,323.323 INFO    ] No camera update needed
[2026-06-13 02:22:15,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:15,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:15,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:15,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:17,372.372 INFO    ] ================================================
[2026-06-13 02:22:17,388.388 INFO    ] Launching Daemon at Sat Jun 13 02:22:17 IST 2026
[2026-06-13 02:22:17,399.399 INFO    ] ================================================
[2026-06-13 02:22:17,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:22:17
[2026-06-13 02:22:18,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:22:18,249.249 INFO    ] Initializing speech engine...
[2026-06-13 02:22:18,256.256 INFO    ] 2026-06-13 02:22:18
[2026-06-13 02:22:18,463.463 INFO    ] 2026-06-13 02:22:18
[2026-06-13 02:22:18,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:22:18,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:22:18,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:22:18,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:22:18,880.880 INFO    ] time= 13/06/2026 02:22:18
[2026-06-13 02:22:18,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:22:18,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:22:18,980.980 INFO    ] No existing commands found in stream
[2026-06-13 02:22:24,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:24,005.005 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 02:22:24,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:22:24,330.330 INFO    ] Checking for system updates...
[2026-06-13 02:22:24,351.351 INFO    ] 200
[2026-06-13 02:22:24,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:24,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:22:24,385.385 INFO    ] No update needed
[2026-06-13 02:22:24,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:24,407.407 INFO    ] 200
[2026-06-13 02:22:24,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:24,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:24,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:22:24,456.456 INFO    ] No camera update needed
[2026-06-13 02:22:24,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:24,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:24,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:24,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:26,506.506 INFO    ] ================================================
[2026-06-13 02:22:26,521.521 INFO    ] Launching Daemon at Sat Jun 13 02:22:26 IST 2026
[2026-06-13 02:22:26,532.532 INFO    ] ================================================
[2026-06-13 02:22:26,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:22:26
[2026-06-13 02:22:27,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:22:27,313.313 INFO    ] Initializing speech engine...
[2026-06-13 02:22:27,322.322 INFO    ] 2026-06-13 02:22:27
[2026-06-13 02:22:27,527.527 INFO    ] 2026-06-13 02:22:27
[2026-06-13 02:22:27,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:22:27,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:22:27,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:22:27,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:22:27,945.945 INFO    ] time= 13/06/2026 02:22:27
[2026-06-13 02:22:27,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:22:28,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:22:28,152.152 INFO    ] No existing commands found in stream
[2026-06-13 02:22:33,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:33,165.165 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 02:22:33,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:22:33,823.823 INFO    ] Checking for system updates...
[2026-06-13 02:22:33,845.845 INFO    ] 200
[2026-06-13 02:22:33,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:33,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:33,879.879 INFO    ] No update needed
[2026-06-13 02:22:33,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:33,903.903 INFO    ] 200
[2026-06-13 02:22:33,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:33,930.930 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:33,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:33,968.968 INFO    ] No camera update needed
[2026-06-13 02:22:33,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:33,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:33,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:33,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:36,009.009 INFO    ] ================================================
[2026-06-13 02:22:36,024.024 INFO    ] Launching Daemon at Sat Jun 13 02:22:36 IST 2026
[2026-06-13 02:22:36,042.042 INFO    ] ================================================
[2026-06-13 02:22:36,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:22:36
[2026-06-13 02:22:36,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:22:36,894.894 INFO    ] Initializing speech engine...
[2026-06-13 02:22:36,900.900 INFO    ] 2026-06-13 02:22:36
[2026-06-13 02:22:37,110.110 INFO    ] 2026-06-13 02:22:37
[2026-06-13 02:22:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:22:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:22:37,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:22:37,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:22:37,535.535 INFO    ] time= 13/06/2026 02:22:37
[2026-06-13 02:22:37,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:22:37,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:22:37,638.638 INFO    ] No existing commands found in stream
[2026-06-13 02:22:42,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:42,651.651 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 02:22:46,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:22:46,173.173 INFO    ] Checking for system updates...
[2026-06-13 02:22:46,194.194 INFO    ] 200
[2026-06-13 02:22:46,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:46,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:46,227.227 INFO    ] No update needed
[2026-06-13 02:22:46,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:46,249.249 INFO    ] 200
[2026-06-13 02:22:46,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:46,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:46,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:46,309.309 INFO    ] No camera update needed
[2026-06-13 02:22:46,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:46,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:46,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:46,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:48,359.359 INFO    ] ================================================
[2026-06-13 02:22:48,374.374 INFO    ] Launching Daemon at Sat Jun 13 02:22:48 IST 2026
[2026-06-13 02:22:48,384.384 INFO    ] ================================================
[2026-06-13 02:22:48,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:22:48
[2026-06-13 02:22:49,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:22:49,220.220 INFO    ] Initializing speech engine...
[2026-06-13 02:22:49,229.229 INFO    ] 2026-06-13 02:22:49
[2026-06-13 02:22:49,449.449 INFO    ] 2026-06-13 02:22:49
[2026-06-13 02:22:49,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:22:49,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:22:49,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:22:49,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:22:49,882.882 INFO    ] time= 13/06/2026 02:22:49
[2026-06-13 02:22:49,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:22:49,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:22:50,009.009 INFO    ] No existing commands found in stream
[2026-06-13 02:22:55,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:22:55,022.022 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 02:22:57,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:22:57,403.403 INFO    ] Checking for system updates...
[2026-06-13 02:22:57,423.423 INFO    ] 200
[2026-06-13 02:22:57,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:57,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:57,457.457 INFO    ] No update needed
[2026-06-13 02:22:57,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 02:22:57,481.481 INFO    ] 200
[2026-06-13 02:22:57,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:22:57,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:22:57,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:22:57,650.650 INFO    ] No camera update needed
[2026-06-13 02:22:57,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:22:57,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:22:57,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:22:57,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:22:59,698.698 INFO    ] ================================================
[2026-06-13 02:22:59,713.713 INFO    ] Launching Daemon at Sat Jun 13 02:22:59 IST 2026
[2026-06-13 02:22:59,724.724 INFO    ] ================================================
[2026-06-13 02:23:00,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:00
[2026-06-13 02:23:00,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:00,540.540 INFO    ] Initializing speech engine...
[2026-06-13 02:23:00,550.550 INFO    ] 2026-06-13 02:23:00
[2026-06-13 02:23:00,755.755 INFO    ] 2026-06-13 02:23:00
[2026-06-13 02:23:00,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:23:00,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:23:00,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:23:01,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:23:01,166.166 INFO    ] time= 13/06/2026 02:23:01
[2026-06-13 02:23:01,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:23:01,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:23:01,272.272 INFO    ] No existing commands found in stream
[2026-06-13 02:23:06,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:23:06,284.284 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 02:23:09,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:23:10,001.001 INFO    ] Checking for system updates...
[2026-06-13 02:23:10,021.021 INFO    ] 200
[2026-06-13 02:23:10,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:10,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:23:10,054.054 INFO    ] No update needed
[2026-06-13 02:23:10,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 02:23:10,075.075 INFO    ] 200
[2026-06-13 02:23:10,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:10,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:23:10,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:23:10,148.148 INFO    ] No camera update needed
[2026-06-13 02:23:10,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:23:10,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:23:10,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:23:10,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:23:12,194.194 INFO    ] ================================================
[2026-06-13 02:23:12,210.210 INFO    ] Launching Daemon at Sat Jun 13 02:23:12 IST 2026
[2026-06-13 02:23:12,221.221 INFO    ] ================================================
[2026-06-13 02:23:12,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:12
[2026-06-13 02:23:13,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:13,383.383 INFO    ] Initializing speech engine...
[2026-06-13 02:23:13,389.389 INFO    ] 2026-06-13 02:23:13
[2026-06-13 02:23:13,652.652 INFO    ] 2026-06-13 02:23:13
[2026-06-13 02:23:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:23:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:23:13,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:23:14,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:23:14,089.089 INFO    ] time= 13/06/2026 02:23:14
[2026-06-13 02:23:14,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:23:14,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:23:14,343.343 INFO    ] No existing commands found in stream
[2026-06-13 02:23:19,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:23:19,373.373 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 02:23:24,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:23:24,257.257 INFO    ] Checking for system updates...
[2026-06-13 02:23:24,281.281 INFO    ] 200
[2026-06-13 02:23:24,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:24,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:24,341.341 INFO    ] No update needed
[2026-06-13 02:23:24,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 02:23:24,377.377 INFO    ] 200
[2026-06-13 02:23:24,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:24,402.402 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:23:24,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:24,449.449 INFO    ] No camera update needed
[2026-06-13 02:23:24,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:23:24,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:23:24,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:23:24,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:23:26,496.496 INFO    ] ================================================
[2026-06-13 02:23:26,511.511 INFO    ] Launching Daemon at Sat Jun 13 02:23:26 IST 2026
[2026-06-13 02:23:26,521.521 INFO    ] ================================================
[2026-06-13 02:23:26,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:26
[2026-06-13 02:23:27,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:27,352.352 INFO    ] Initializing speech engine...
[2026-06-13 02:23:27,358.358 INFO    ] 2026-06-13 02:23:27
[2026-06-13 02:23:27,568.568 INFO    ] 2026-06-13 02:23:27
[2026-06-13 02:23:27,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:23:27,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:23:27,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:23:27,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:23:27,976.976 INFO    ] time= 13/06/2026 02:23:27
[2026-06-13 02:23:28,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:23:28,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:23:28,095.095 INFO    ] No existing commands found in stream
[2026-06-13 02:23:33,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:23:33,109.109 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 02:23:33,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:23:33,867.867 INFO    ] Checking for system updates...
[2026-06-13 02:23:33,890.890 INFO    ] 200
[2026-06-13 02:23:33,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:33,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:23:33,924.924 INFO    ] No update needed
[2026-06-13 02:23:33,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 02:23:33,945.945 INFO    ] 200
[2026-06-13 02:23:33,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:33,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:23:34,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:23:34,004.004 INFO    ] No camera update needed
[2026-06-13 02:23:34,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:23:34,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:23:34,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:23:34,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:23:36,051.051 INFO    ] ================================================
[2026-06-13 02:23:36,066.066 INFO    ] Launching Daemon at Sat Jun 13 02:23:36 IST 2026
[2026-06-13 02:23:36,076.076 INFO    ] ================================================
[2026-06-13 02:23:36,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:36
[2026-06-13 02:23:36,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:36,863.863 INFO    ] Initializing speech engine...
[2026-06-13 02:23:36,868.868 INFO    ] 2026-06-13 02:23:36
[2026-06-13 02:23:37,074.074 INFO    ] 2026-06-13 02:23:37
[2026-06-13 02:23:37,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:23:37,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:23:37,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:23:37,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:23:37,484.484 INFO    ] time= 13/06/2026 02:23:37
[2026-06-13 02:23:37,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:23:37,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:23:37,589.589 INFO    ] No existing commands found in stream
[2026-06-13 02:23:42,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:23:42,635.635 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 02:23:43,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:23:43,521.521 INFO    ] Checking for system updates...
[2026-06-13 02:23:43,542.542 INFO    ] 200
[2026-06-13 02:23:43,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:43,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:43,577.577 INFO    ] No update needed
[2026-06-13 02:23:43,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 02:23:43,599.599 INFO    ] 200
[2026-06-13 02:23:43,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:43,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:23:43,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:43,665.665 INFO    ] No camera update needed
[2026-06-13 02:23:43,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:23:43,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:23:43,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:23:43,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:23:45,713.713 INFO    ] ================================================
[2026-06-13 02:23:45,728.728 INFO    ] Launching Daemon at Sat Jun 13 02:23:45 IST 2026
[2026-06-13 02:23:45,739.739 INFO    ] ================================================
[2026-06-13 02:23:46,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:46
[2026-06-13 02:23:46,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:46,540.540 INFO    ] Initializing speech engine...
[2026-06-13 02:23:46,544.544 INFO    ] 2026-06-13 02:23:46
[2026-06-13 02:23:46,767.767 INFO    ] 2026-06-13 02:23:46
[2026-06-13 02:23:46,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:23:46,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:23:46,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:23:47,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:23:47,174.174 INFO    ] time= 13/06/2026 02:23:47
[2026-06-13 02:23:47,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:23:47,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:23:47,300.300 INFO    ] No existing commands found in stream
[2026-06-13 02:23:52,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:23:52,318.318 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 02:23:56,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:23:56,673.673 INFO    ] Checking for system updates...
[2026-06-13 02:23:56,693.693 INFO    ] 200
[2026-06-13 02:23:56,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:56,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:56,728.728 INFO    ] No update needed
[2026-06-13 02:23:56,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 02:23:56,749.749 INFO    ] 200
[2026-06-13 02:23:56,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:23:56,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:23:56,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:23:56,813.813 INFO    ] No camera update needed
[2026-06-13 02:23:56,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:23:56,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:23:56,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:23:56,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:23:58,861.861 INFO    ] ================================================
[2026-06-13 02:23:58,876.876 INFO    ] Launching Daemon at Sat Jun 13 02:23:58 IST 2026
[2026-06-13 02:23:58,887.887 INFO    ] ================================================
[2026-06-13 02:23:59,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:23:59
[2026-06-13 02:23:59,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:23:59,699.699 INFO    ] Initializing speech engine...
[2026-06-13 02:23:59,704.704 INFO    ] 2026-06-13 02:23:59
[2026-06-13 02:23:59,918.918 INFO    ] 2026-06-13 02:23:59
[2026-06-13 02:23:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:00,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:00,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:00,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:00,315.315 INFO    ] time= 13/06/2026 02:24:00
[2026-06-13 02:24:00,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:00,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:00,463.463 INFO    ] No existing commands found in stream
[2026-06-13 02:24:05,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:05,476.476 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 02:24:06,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:24:06,555.555 INFO    ] Checking for system updates...
[2026-06-13 02:24:06,575.575 INFO    ] 200
[2026-06-13 02:24:06,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:06,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:24:06,608.608 INFO    ] No update needed
[2026-06-13 02:24:06,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 02:24:06,630.630 INFO    ] 200
[2026-06-13 02:24:06,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:06,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:24:06,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:24:06,699.699 INFO    ] No camera update needed
[2026-06-13 02:24:06,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:24:06,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:24:06,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:24:06,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:24:08,749.749 INFO    ] ================================================
[2026-06-13 02:24:08,764.764 INFO    ] Launching Daemon at Sat Jun 13 02:24:08 IST 2026
[2026-06-13 02:24:08,775.775 INFO    ] ================================================
[2026-06-13 02:24:09,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:24:09
[2026-06-13 02:24:09,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:24:09,600.600 INFO    ] Initializing speech engine...
[2026-06-13 02:24:09,604.604 INFO    ] 2026-06-13 02:24:09
[2026-06-13 02:24:09,806.806 INFO    ] 2026-06-13 02:24:09
[2026-06-13 02:24:09,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:10,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:10,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:10,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:10,209.209 INFO    ] time= 13/06/2026 02:24:10
[2026-06-13 02:24:10,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:10,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:10,319.319 INFO    ] No existing commands found in stream
[2026-06-13 02:24:15,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:15,331.331 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 02:24:15,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:24:15,681.681 INFO    ] Checking for system updates...
[2026-06-13 02:24:15,701.701 INFO    ] 200
[2026-06-13 02:24:15,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:15,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:15,734.734 INFO    ] No update needed
[2026-06-13 02:24:15,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 02:24:15,755.755 INFO    ] 200
[2026-06-13 02:24:15,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:15,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:24:15,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:15,822.822 INFO    ] No camera update needed
[2026-06-13 02:24:15,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:24:15,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:24:15,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:24:15,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:24:17,871.871 INFO    ] ================================================
[2026-06-13 02:24:17,887.887 INFO    ] Launching Daemon at Sat Jun 13 02:24:17 IST 2026
[2026-06-13 02:24:17,898.898 INFO    ] ================================================
[2026-06-13 02:24:18,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:24:18
[2026-06-13 02:24:18,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:24:18,702.702 INFO    ] Initializing speech engine...
[2026-06-13 02:24:18,707.707 INFO    ] 2026-06-13 02:24:18
[2026-06-13 02:24:18,893.893 INFO    ] 2026-06-13 02:24:18
[2026-06-13 02:24:18,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:19,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:19,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:19,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:19,324.324 INFO    ] time= 13/06/2026 02:24:19
[2026-06-13 02:24:19,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:19,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:19,434.434 INFO    ] No existing commands found in stream
[2026-06-13 02:24:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:24,452.452 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 02:24:27,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:24:27,220.220 INFO    ] Checking for system updates...
[2026-06-13 02:24:27,241.241 INFO    ] 200
[2026-06-13 02:24:27,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:27,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:27,276.276 INFO    ] No update needed
[2026-06-13 02:24:27,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 02:24:27,298.298 INFO    ] 200
[2026-06-13 02:24:27,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:27,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:24:27,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:27,369.369 INFO    ] No camera update needed
[2026-06-13 02:24:27,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:24:27,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:24:27,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:24:27,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:24:29,418.418 INFO    ] ================================================
[2026-06-13 02:24:29,434.434 INFO    ] Launching Daemon at Sat Jun 13 02:24:29 IST 2026
[2026-06-13 02:24:29,445.445 INFO    ] ================================================
[2026-06-13 02:24:29,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:24:29
[2026-06-13 02:24:30,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:24:30,289.289 INFO    ] Initializing speech engine...
[2026-06-13 02:24:30,294.294 INFO    ] 2026-06-13 02:24:30
[2026-06-13 02:24:30,500.500 INFO    ] 2026-06-13 02:24:30
[2026-06-13 02:24:30,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:30,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:30,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:30,911.911 INFO    ] time= 13/06/2026 02:24:30
[2026-06-13 02:24:30,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:30,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:31,016.016 INFO    ] No existing commands found in stream
[2026-06-13 02:24:36,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:36,029.029 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 02:24:37,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:24:37,220.220 INFO    ] Checking for system updates...
[2026-06-13 02:24:37,243.243 INFO    ] 200
[2026-06-13 02:24:37,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:37,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:37,276.276 INFO    ] No update needed
[2026-06-13 02:24:37,278.278 INFO    ] Checking for camera pi updates...
[2026-06-13 02:24:37,299.299 INFO    ] 200
[2026-06-13 02:24:37,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:37,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:24:37,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:37,376.376 INFO    ] No camera update needed
[2026-06-13 02:24:37,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:24:37,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:24:37,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:24:37,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:24:39,424.424 INFO    ] ================================================
[2026-06-13 02:24:39,440.440 INFO    ] Launching Daemon at Sat Jun 13 02:24:39 IST 2026
[2026-06-13 02:24:39,452.452 INFO    ] ================================================
[2026-06-13 02:24:39,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:24:39
[2026-06-13 02:24:40,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:24:40,266.266 INFO    ] Initializing speech engine...
[2026-06-13 02:24:40,270.270 INFO    ] 2026-06-13 02:24:40
[2026-06-13 02:24:40,474.474 INFO    ] 2026-06-13 02:24:40
[2026-06-13 02:24:40,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:40,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:40,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:40,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:40,873.873 INFO    ] time= 13/06/2026 02:24:40
[2026-06-13 02:24:40,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:40,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:40,994.994 INFO    ] No existing commands found in stream
[2026-06-13 02:24:46,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:46,005.005 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 02:24:49,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:24:49,891.891 INFO    ] Checking for system updates...
[2026-06-13 02:24:49,929.929 INFO    ] 200
[2026-06-13 02:24:49,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:49,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:49,988.988 INFO    ] No update needed
[2026-06-13 02:24:49,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 02:24:50,026.026 INFO    ] 200
[2026-06-13 02:24:50,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:24:50,070.070 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:24:50,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:24:50,115.115 INFO    ] No camera update needed
[2026-06-13 02:24:50,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:24:50,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:24:50,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:24:50,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:24:52,167.167 INFO    ] ================================================
[2026-06-13 02:24:52,183.183 INFO    ] Launching Daemon at Sat Jun 13 02:24:52 IST 2026
[2026-06-13 02:24:52,194.194 INFO    ] ================================================
[2026-06-13 02:24:52,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:24:52
[2026-06-13 02:24:52,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:24:52,987.987 INFO    ] Initializing speech engine...
[2026-06-13 02:24:52,997.997 INFO    ] 2026-06-13 02:24:52
[2026-06-13 02:24:53,210.210 INFO    ] 2026-06-13 02:24:53
[2026-06-13 02:24:53,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:24:53,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:24:53,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:24:53,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:24:53,454.454 INFO    ] time= 13/06/2026 02:24:53
[2026-06-13 02:24:53,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:24:53,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:24:53,546.546 INFO    ] No existing commands found in stream
[2026-06-13 02:24:58,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:24:58,584.584 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 02:25:02,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:25:02,641.641 INFO    ] Checking for system updates...
[2026-06-13 02:25:02,678.678 INFO    ] 200
[2026-06-13 02:25:02,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:02,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:25:02,716.716 INFO    ] No update needed
[2026-06-13 02:25:02,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:02,742.742 INFO    ] 200
[2026-06-13 02:25:02,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:02,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:02,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:25:02,811.811 INFO    ] No camera update needed
[2026-06-13 02:25:02,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:02,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:02,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:02,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:04,860.860 INFO    ] ================================================
[2026-06-13 02:25:04,875.875 INFO    ] Launching Daemon at Sat Jun 13 02:25:04 IST 2026
[2026-06-13 02:25:04,887.887 INFO    ] ================================================
[2026-06-13 02:25:05,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:05
[2026-06-13 02:25:05,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:06,241.241 INFO    ] Initializing speech engine...
[2026-06-13 02:25:06,260.260 INFO    ] 2026-06-13 02:25:06
[2026-06-13 02:25:06,512.512 INFO    ] 2026-06-13 02:25:06
[2026-06-13 02:25:06,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:06,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:06,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:06,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:06,856.856 INFO    ] time= 13/06/2026 02:25:06
[2026-06-13 02:25:06,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:06,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:06,976.976 INFO    ] No existing commands found in stream
[2026-06-13 02:25:12,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:25:12,014.014 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 02:25:16,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:25:16,040.040 INFO    ] Checking for system updates...
[2026-06-13 02:25:16,063.063 INFO    ] 200
[2026-06-13 02:25:16,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:16,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:16,096.096 INFO    ] No update needed
[2026-06-13 02:25:16,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:16,117.117 INFO    ] 200
[2026-06-13 02:25:16,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:16,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:16,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:16,189.189 INFO    ] No camera update needed
[2026-06-13 02:25:16,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:16,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:16,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:16,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:18,238.238 INFO    ] ================================================
[2026-06-13 02:25:18,254.254 INFO    ] Launching Daemon at Sat Jun 13 02:25:18 IST 2026
[2026-06-13 02:25:18,266.266 INFO    ] ================================================
[2026-06-13 02:25:18,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:18
[2026-06-13 02:25:18,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:19,055.055 INFO    ] Initializing speech engine...
[2026-06-13 02:25:19,066.066 INFO    ] 2026-06-13 02:25:19
[2026-06-13 02:25:19,275.275 INFO    ] 2026-06-13 02:25:19
[2026-06-13 02:25:19,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:19,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:19,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:19,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:19,678.678 INFO    ] time= 13/06/2026 02:25:19
[2026-06-13 02:25:19,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:19,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:19,794.794 INFO    ] No existing commands found in stream
[2026-06-13 02:25:24,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:25:24,805.805 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 02:25:26,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:25:26,576.576 INFO    ] Checking for system updates...
[2026-06-13 02:25:26,597.597 INFO    ] 200
[2026-06-13 02:25:26,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:26,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:26,631.631 INFO    ] No update needed
[2026-06-13 02:25:26,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:26,653.653 INFO    ] 200
[2026-06-13 02:25:26,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:26,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:26,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:26,717.717 INFO    ] No camera update needed
[2026-06-13 02:25:26,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:26,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:26,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:28,767.767 INFO    ] ================================================
[2026-06-13 02:25:28,783.783 INFO    ] Launching Daemon at Sat Jun 13 02:25:28 IST 2026
[2026-06-13 02:25:28,794.794 INFO    ] ================================================
[2026-06-13 02:25:29,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:29
[2026-06-13 02:25:29,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:29,656.656 INFO    ] Initializing speech engine...
[2026-06-13 02:25:29,661.661 INFO    ] 2026-06-13 02:25:29
[2026-06-13 02:25:29,873.873 INFO    ] 2026-06-13 02:25:29
[2026-06-13 02:25:29,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:30,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:30,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:30,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:30,285.285 INFO    ] time= 13/06/2026 02:25:30
[2026-06-13 02:25:30,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:30,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:30,396.396 INFO    ] No existing commands found in stream
[2026-06-13 02:25:35,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:25:35,411.411 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 02:25:35,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:25:35,747.747 INFO    ] Checking for system updates...
[2026-06-13 02:25:35,768.768 INFO    ] 200
[2026-06-13 02:25:35,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:35,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:35,804.804 INFO    ] No update needed
[2026-06-13 02:25:35,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:35,828.828 INFO    ] 200
[2026-06-13 02:25:35,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:35,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:35,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:35,901.901 INFO    ] No camera update needed
[2026-06-13 02:25:35,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:35,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:35,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:35,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:37,949.949 INFO    ] ================================================
[2026-06-13 02:25:37,966.966 INFO    ] Launching Daemon at Sat Jun 13 02:25:37 IST 2026
[2026-06-13 02:25:37,977.977 INFO    ] ================================================
[2026-06-13 02:25:38,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:38
[2026-06-13 02:25:38,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:38,928.928 INFO    ] Initializing speech engine...
[2026-06-13 02:25:38,943.943 INFO    ] 2026-06-13 02:25:38
[2026-06-13 02:25:39,216.216 INFO    ] 2026-06-13 02:25:39
[2026-06-13 02:25:39,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:39,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:39,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:39,701.701 INFO    ] time= 13/06/2026 02:25:39
[2026-06-13 02:25:39,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:39,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:39,919.919 INFO    ] No existing commands found in stream
[2026-06-13 02:25:44,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:25:44,949.949 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 02:25:45,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:25:45,638.638 INFO    ] Checking for system updates...
[2026-06-13 02:25:45,659.659 INFO    ] 200
[2026-06-13 02:25:45,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:45,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:45,694.694 INFO    ] No update needed
[2026-06-13 02:25:45,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:45,717.717 INFO    ] 200
[2026-06-13 02:25:45,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:45,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:45,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:45,790.790 INFO    ] No camera update needed
[2026-06-13 02:25:45,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:45,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:45,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:45,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:47,838.838 INFO    ] ================================================
[2026-06-13 02:25:47,854.854 INFO    ] Launching Daemon at Sat Jun 13 02:25:47 IST 2026
[2026-06-13 02:25:47,866.866 INFO    ] ================================================
[2026-06-13 02:25:48,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:48
[2026-06-13 02:25:48,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:48,742.742 INFO    ] Initializing speech engine...
[2026-06-13 02:25:48,747.747 INFO    ] 2026-06-13 02:25:48
[2026-06-13 02:25:48,960.960 INFO    ] 2026-06-13 02:25:48
[2026-06-13 02:25:48,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:49,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:49,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:49,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:49,389.389 INFO    ] time= 13/06/2026 02:25:49
[2026-06-13 02:25:49,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:49,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:49,488.488 INFO    ] No existing commands found in stream
[2026-06-13 02:25:54,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:25:54,516.516 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 02:25:55,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:25:55,491.491 INFO    ] Checking for system updates...
[2026-06-13 02:25:55,511.511 INFO    ] 200
[2026-06-13 02:25:55,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:55,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:55,547.547 INFO    ] No update needed
[2026-06-13 02:25:55,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 02:25:55,572.572 INFO    ] 200
[2026-06-13 02:25:55,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:25:55,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:25:55,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:25:55,645.645 INFO    ] No camera update needed
[2026-06-13 02:25:55,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:25:55,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:25:55,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:25:55,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:25:57,694.694 INFO    ] ================================================
[2026-06-13 02:25:57,710.710 INFO    ] Launching Daemon at Sat Jun 13 02:25:57 IST 2026
[2026-06-13 02:25:57,721.721 INFO    ] ================================================
[2026-06-13 02:25:58,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:25:58
[2026-06-13 02:25:58,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:25:58,500.500 INFO    ] Initializing speech engine...
[2026-06-13 02:25:58,509.509 INFO    ] 2026-06-13 02:25:58
[2026-06-13 02:25:58,714.714 INFO    ] 2026-06-13 02:25:58
[2026-06-13 02:25:58,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:25:58,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:25:58,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:25:59,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:25:59,114.114 INFO    ] time= 13/06/2026 02:25:59
[2026-06-13 02:25:59,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:25:59,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:25:59,236.236 INFO    ] No existing commands found in stream
[2026-06-13 02:26:04,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:04,248.248 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 02:26:06,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:26:06,222.222 INFO    ] Checking for system updates...
[2026-06-13 02:26:06,246.246 INFO    ] 200
[2026-06-13 02:26:06,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:06,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:26:06,279.279 INFO    ] No update needed
[2026-06-13 02:26:06,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 02:26:06,300.300 INFO    ] 200
[2026-06-13 02:26:06,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:06,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:26:06,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:26:06,366.366 INFO    ] No camera update needed
[2026-06-13 02:26:06,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:26:06,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:26:06,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:26:06,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:26:08,415.415 INFO    ] ================================================
[2026-06-13 02:26:08,430.430 INFO    ] Launching Daemon at Sat Jun 13 02:26:08 IST 2026
[2026-06-13 02:26:08,441.441 INFO    ] ================================================
[2026-06-13 02:26:08,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:26:08
[2026-06-13 02:26:09,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:26:09,245.245 INFO    ] Initializing speech engine...
[2026-06-13 02:26:09,250.250 INFO    ] 2026-06-13 02:26:09
[2026-06-13 02:26:09,484.484 INFO    ] 2026-06-13 02:26:09
[2026-06-13 02:26:09,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:26:09,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:26:09,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:26:09,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:26:09,910.910 INFO    ] time= 13/06/2026 02:26:09
[2026-06-13 02:26:09,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:26:09,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:26:10,043.043 INFO    ] No existing commands found in stream
[2026-06-13 02:26:15,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:15,056.056 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 02:26:17,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:26:17,285.285 INFO    ] Checking for system updates...
[2026-06-13 02:26:17,305.305 INFO    ] 200
[2026-06-13 02:26:17,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:17,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:26:17,342.342 INFO    ] No update needed
[2026-06-13 02:26:17,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 02:26:17,363.363 INFO    ] 200
[2026-06-13 02:26:17,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:17,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:26:17,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:26:17,436.436 INFO    ] No camera update needed
[2026-06-13 02:26:17,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:26:17,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:26:17,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:26:17,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:26:19,486.486 INFO    ] ================================================
[2026-06-13 02:26:19,501.501 INFO    ] Launching Daemon at Sat Jun 13 02:26:19 IST 2026
[2026-06-13 02:26:19,515.515 INFO    ] ================================================
[2026-06-13 02:26:19,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:26:19
[2026-06-13 02:26:20,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:26:20,334.334 INFO    ] Initializing speech engine...
[2026-06-13 02:26:20,340.340 INFO    ] 2026-06-13 02:26:20
[2026-06-13 02:26:20,558.558 INFO    ] 2026-06-13 02:26:20
[2026-06-13 02:26:20,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:26:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:26:20,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:26:20,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:26:20,953.953 INFO    ] time= 13/06/2026 02:26:20
[2026-06-13 02:26:21,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:26:21,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:26:21,117.117 INFO    ] No existing commands found in stream
[2026-06-13 02:26:26,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:26,131.131 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 02:26:29,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:26:29,281.281 INFO    ] Checking for system updates...
[2026-06-13 02:26:29,309.309 INFO    ] 200
[2026-06-13 02:26:29,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:29,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:29,343.343 INFO    ] No update needed
[2026-06-13 02:26:29,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 02:26:29,368.368 INFO    ] 200
[2026-06-13 02:26:29,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:29,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:26:29,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:29,441.441 INFO    ] No camera update needed
[2026-06-13 02:26:29,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:26:29,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:26:29,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:26:29,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:26:31,482.482 INFO    ] ================================================
[2026-06-13 02:26:31,492.492 INFO    ] Launching Daemon at Sat Jun 13 02:26:31 IST 2026
[2026-06-13 02:26:31,499.499 INFO    ] ================================================
[2026-06-13 02:26:31,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:26:31
[2026-06-13 02:26:32,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:26:32,304.304 INFO    ] Initializing speech engine...
[2026-06-13 02:26:32,309.309 INFO    ] 2026-06-13 02:26:32
[2026-06-13 02:26:32,527.527 INFO    ] 2026-06-13 02:26:32
[2026-06-13 02:26:32,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:26:32,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:26:32,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:26:32,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:26:32,957.957 INFO    ] time= 13/06/2026 02:26:32
[2026-06-13 02:26:32,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:26:33,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:26:33,084.084 INFO    ] No existing commands found in stream
[2026-06-13 02:26:38,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:38,097.097 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 02:26:40,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:26:40,420.420 INFO    ] Checking for system updates...
[2026-06-13 02:26:40,442.442 INFO    ] 200
[2026-06-13 02:26:40,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:40,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:40,475.475 INFO    ] No update needed
[2026-06-13 02:26:40,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 02:26:40,495.495 INFO    ] 200
[2026-06-13 02:26:40,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:40,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:26:40,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:40,561.561 INFO    ] No camera update needed
[2026-06-13 02:26:40,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:26:40,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:26:40,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:26:40,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:26:42,610.610 INFO    ] ================================================
[2026-06-13 02:26:42,626.626 INFO    ] Launching Daemon at Sat Jun 13 02:26:42 IST 2026
[2026-06-13 02:26:42,637.637 INFO    ] ================================================
[2026-06-13 02:26:42,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:26:42
[2026-06-13 02:26:43,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:26:43,434.434 INFO    ] Initializing speech engine...
[2026-06-13 02:26:43,440.440 INFO    ] 2026-06-13 02:26:43
[2026-06-13 02:26:43,642.642 INFO    ] 2026-06-13 02:26:43
[2026-06-13 02:26:43,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:26:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:26:43,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:26:43,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:26:44,044.044 INFO    ] time= 13/06/2026 02:26:43
[2026-06-13 02:26:44,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:26:44,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:26:44,159.159 INFO    ] No existing commands found in stream
[2026-06-13 02:26:49,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:49,175.175 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 02:26:49,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:26:49,878.878 INFO    ] Checking for system updates...
[2026-06-13 02:26:49,898.898 INFO    ] 200
[2026-06-13 02:26:49,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:49,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:49,932.932 INFO    ] No update needed
[2026-06-13 02:26:49,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 02:26:49,955.955 INFO    ] 200
[2026-06-13 02:26:49,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:26:49,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:26:50,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:26:50,028.028 INFO    ] No camera update needed
[2026-06-13 02:26:50,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:26:50,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:26:50,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:26:50,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:26:52,078.078 INFO    ] ================================================
[2026-06-13 02:26:52,094.094 INFO    ] Launching Daemon at Sat Jun 13 02:26:52 IST 2026
[2026-06-13 02:26:52,105.105 INFO    ] ================================================
[2026-06-13 02:26:52,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:26:52
[2026-06-13 02:26:52,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:26:52,964.964 INFO    ] Initializing speech engine...
[2026-06-13 02:26:52,969.969 INFO    ] 2026-06-13 02:26:52
[2026-06-13 02:26:53,178.178 INFO    ] 2026-06-13 02:26:53
[2026-06-13 02:26:53,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:26:53,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:26:53,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:26:53,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:26:53,595.595 INFO    ] time= 13/06/2026 02:26:53
[2026-06-13 02:26:53,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:26:53,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:26:53,695.695 INFO    ] No existing commands found in stream
[2026-06-13 02:26:58,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:26:58,713.713 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 02:27:00,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:27:00,255.255 INFO    ] Checking for system updates...
[2026-06-13 02:27:00,276.276 INFO    ] 200
[2026-06-13 02:27:00,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:00,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:00,310.310 INFO    ] No update needed
[2026-06-13 02:27:00,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:00,331.331 INFO    ] 200
[2026-06-13 02:27:00,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:00,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:00,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:00,395.395 INFO    ] No camera update needed
[2026-06-13 02:27:00,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:00,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:00,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:27:02,439.439 INFO    ] ================================================
[2026-06-13 02:27:02,450.450 INFO    ] Launching Daemon at Sat Jun 13 02:27:02 IST 2026
[2026-06-13 02:27:02,460.460 INFO    ] ================================================
[2026-06-13 02:27:02,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:27:02
[2026-06-13 02:27:03,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:27:03,473.473 INFO    ] Initializing speech engine...
[2026-06-13 02:27:03,483.483 INFO    ] 2026-06-13 02:27:03
[2026-06-13 02:27:03,733.733 INFO    ] 2026-06-13 02:27:03
[2026-06-13 02:27:03,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:27:03,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:27:03,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:27:04,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:27:04,050.050 INFO    ] time= 13/06/2026 02:27:04
[2026-06-13 02:27:04,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:27:04,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:27:04,120.120 INFO    ] No existing commands found in stream
[2026-06-13 02:27:09,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:27:09,133.133 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 02:27:09,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:27:09,662.662 INFO    ] Checking for system updates...
[2026-06-13 02:27:09,683.683 INFO    ] 200
[2026-06-13 02:27:09,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:09,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:09,716.716 INFO    ] No update needed
[2026-06-13 02:27:09,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:09,737.737 INFO    ] 200
[2026-06-13 02:27:09,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:09,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:09,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:09,905.905 INFO    ] No camera update needed
[2026-06-13 02:27:09,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:09,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:09,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:09,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:27:11,953.953 INFO    ] ================================================
[2026-06-13 02:27:11,968.968 INFO    ] Launching Daemon at Sat Jun 13 02:27:11 IST 2026
[2026-06-13 02:27:11,979.979 INFO    ] ================================================
[2026-06-13 02:27:12,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:27:12
[2026-06-13 02:27:12,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:27:12,771.771 INFO    ] Initializing speech engine...
[2026-06-13 02:27:12,784.784 INFO    ] 2026-06-13 02:27:12
[2026-06-13 02:27:13,004.004 INFO    ] 2026-06-13 02:27:12
[2026-06-13 02:27:13,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:27:13,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:27:13,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:27:13,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:27:13,438.438 INFO    ] time= 13/06/2026 02:27:13
[2026-06-13 02:27:13,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:27:13,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:27:13,560.560 INFO    ] No existing commands found in stream
[2026-06-13 02:27:18,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:27:18,574.574 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 02:27:22,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:27:22,207.207 INFO    ] Checking for system updates...
[2026-06-13 02:27:22,228.228 INFO    ] 200
[2026-06-13 02:27:22,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:22,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:27:22,262.262 INFO    ] No update needed
[2026-06-13 02:27:22,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:22,285.285 INFO    ] 200
[2026-06-13 02:27:22,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:22,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:22,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:27:22,351.351 INFO    ] No camera update needed
[2026-06-13 02:27:22,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:22,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:22,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:22,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:27:24,400.400 INFO    ] ================================================
[2026-06-13 02:27:24,416.416 INFO    ] Launching Daemon at Sat Jun 13 02:27:24 IST 2026
[2026-06-13 02:27:24,427.427 INFO    ] ================================================
[2026-06-13 02:27:24,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:27:24
[2026-06-13 02:27:25,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:27:25,255.255 INFO    ] Initializing speech engine...
[2026-06-13 02:27:25,260.260 INFO    ] 2026-06-13 02:27:25
[2026-06-13 02:27:25,464.464 INFO    ] 2026-06-13 02:27:25
[2026-06-13 02:27:25,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:27:25,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:27:25,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:27:25,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:27:25,990.990 INFO    ] time= 13/06/2026 02:27:25
[2026-06-13 02:27:26,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:27:26,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:27:26,241.241 INFO    ] No existing commands found in stream
[2026-06-13 02:27:31,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:27:31,254.254 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 02:27:32,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:27:32,957.957 INFO    ] Checking for system updates...
[2026-06-13 02:27:32,994.994 INFO    ] 200
[2026-06-13 02:27:32,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:33,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:27:33,054.054 INFO    ] No update needed
[2026-06-13 02:27:33,057.057 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:33,090.090 INFO    ] 200
[2026-06-13 02:27:33,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:33,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:33,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:27:33,193.193 INFO    ] No camera update needed
[2026-06-13 02:27:33,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:33,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:33,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:33,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:27:35,250.250 INFO    ] ================================================
[2026-06-13 02:27:35,266.266 INFO    ] Launching Daemon at Sat Jun 13 02:27:35 IST 2026
[2026-06-13 02:27:35,277.277 INFO    ] ================================================
[2026-06-13 02:27:35,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:27:35
[2026-06-13 02:27:35,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:27:36,075.075 INFO    ] Initializing speech engine...
[2026-06-13 02:27:36,080.080 INFO    ] 2026-06-13 02:27:36
[2026-06-13 02:27:36,299.299 INFO    ] 2026-06-13 02:27:36
[2026-06-13 02:27:36,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:27:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:27:36,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:27:36,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:27:36,702.702 INFO    ] time= 13/06/2026 02:27:36
[2026-06-13 02:27:36,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:27:36,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:27:36,859.859 INFO    ] No existing commands found in stream
[2026-06-13 02:27:41,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:27:41,883.883 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 02:27:46,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:27:46,039.039 INFO    ] Checking for system updates...
[2026-06-13 02:27:46,061.061 INFO    ] 200
[2026-06-13 02:27:46,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:46,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:46,094.094 INFO    ] No update needed
[2026-06-13 02:27:46,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:46,115.115 INFO    ] 200
[2026-06-13 02:27:46,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:46,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:46,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:46,178.178 INFO    ] No camera update needed
[2026-06-13 02:27:46,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:46,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:46,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:46,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:27:48,225.225 INFO    ] ================================================
[2026-06-13 02:27:48,241.241 INFO    ] Launching Daemon at Sat Jun 13 02:27:48 IST 2026
[2026-06-13 02:27:48,252.252 INFO    ] ================================================
[2026-06-13 02:27:48,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:27:48
[2026-06-13 02:27:48,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:27:49,042.042 INFO    ] Initializing speech engine...
[2026-06-13 02:27:49,045.045 INFO    ] 2026-06-13 02:27:49
[2026-06-13 02:27:49,251.251 INFO    ] 2026-06-13 02:27:49
[2026-06-13 02:27:49,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:27:49,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:27:49,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:27:49,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:27:49,656.656 INFO    ] time= 13/06/2026 02:27:49
[2026-06-13 02:27:49,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:27:49,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:27:49,770.770 INFO    ] No existing commands found in stream
[2026-06-13 02:27:54,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:27:54,783.783 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 02:27:58,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:27:58,890.890 INFO    ] Checking for system updates...
[2026-06-13 02:27:58,912.912 INFO    ] 200
[2026-06-13 02:27:58,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:58,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:58,948.948 INFO    ] No update needed
[2026-06-13 02:27:58,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 02:27:58,970.970 INFO    ] 200
[2026-06-13 02:27:58,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:27:58,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:27:59,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:27:59,038.038 INFO    ] No camera update needed
[2026-06-13 02:27:59,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:27:59,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:27:59,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:27:59,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:01,089.089 INFO    ] ================================================
[2026-06-13 02:28:01,104.104 INFO    ] Launching Daemon at Sat Jun 13 02:28:01 IST 2026
[2026-06-13 02:28:01,115.115 INFO    ] ================================================
[2026-06-13 02:28:01,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:01
[2026-06-13 02:28:01,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:28:02,149.149 INFO    ] Initializing speech engine...
[2026-06-13 02:28:02,156.156 INFO    ] 2026-06-13 02:28:02
[2026-06-13 02:28:02,370.370 INFO    ] 2026-06-13 02:28:02
[2026-06-13 02:28:02,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:28:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:28:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:28:02,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:28:02,630.630 INFO    ] time= 13/06/2026 02:28:02
[2026-06-13 02:28:02,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:28:02,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:28:02,739.739 INFO    ] No existing commands found in stream
[2026-06-13 02:28:07,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:28:07,755.755 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 02:28:11,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:28:11,708.708 INFO    ] Checking for system updates...
[2026-06-13 02:28:11,729.729 INFO    ] 200
[2026-06-13 02:28:11,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:11,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:11,761.761 INFO    ] No update needed
[2026-06-13 02:28:11,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 02:28:11,786.786 INFO    ] 200
[2026-06-13 02:28:11,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:11,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:28:11,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:11,850.850 INFO    ] No camera update needed
[2026-06-13 02:28:11,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:28:11,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:28:11,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:28:11,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:13,898.898 INFO    ] ================================================
[2026-06-13 02:28:13,914.914 INFO    ] Launching Daemon at Sat Jun 13 02:28:13 IST 2026
[2026-06-13 02:28:13,925.925 INFO    ] ================================================
[2026-06-13 02:28:14,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:14
[2026-06-13 02:28:14,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:28:14,771.771 INFO    ] Initializing speech engine...
[2026-06-13 02:28:14,777.777 INFO    ] 2026-06-13 02:28:14
[2026-06-13 02:28:14,987.987 INFO    ] 2026-06-13 02:28:14
[2026-06-13 02:28:15,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:28:15,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:28:15,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:28:15,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:28:15,395.395 INFO    ] time= 13/06/2026 02:28:15
[2026-06-13 02:28:15,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:28:15,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:28:15,507.507 INFO    ] No existing commands found in stream
[2026-06-13 02:28:20,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:28:20,525.525 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 02:28:22,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:28:22,232.232 INFO    ] Checking for system updates...
[2026-06-13 02:28:22,253.253 INFO    ] 200
[2026-06-13 02:28:22,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:22,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:28:22,286.286 INFO    ] No update needed
[2026-06-13 02:28:22,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 02:28:22,306.306 INFO    ] 200
[2026-06-13 02:28:22,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:22,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:28:22,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:28:22,377.377 INFO    ] No camera update needed
[2026-06-13 02:28:22,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:28:22,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:28:22,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:28:22,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:24,430.430 INFO    ] ================================================
[2026-06-13 02:28:24,446.446 INFO    ] Launching Daemon at Sat Jun 13 02:28:24 IST 2026
[2026-06-13 02:28:24,457.457 INFO    ] ================================================
[2026-06-13 02:28:24,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:24
[2026-06-13 02:28:25,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:28:25,261.261 INFO    ] Initializing speech engine...
[2026-06-13 02:28:25,266.266 INFO    ] 2026-06-13 02:28:25
[2026-06-13 02:28:25,481.481 INFO    ] 2026-06-13 02:28:25
[2026-06-13 02:28:25,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:28:25,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:28:25,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:28:25,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:28:25,901.901 INFO    ] time= 13/06/2026 02:28:25
[2026-06-13 02:28:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:28:25,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:28:25,997.997 INFO    ] No existing commands found in stream
[2026-06-13 02:28:31,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:28:31,014.014 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 02:28:34,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:28:34,446.446 INFO    ] Checking for system updates...
[2026-06-13 02:28:34,468.468 INFO    ] 200
[2026-06-13 02:28:34,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:34,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:28:34,501.501 INFO    ] No update needed
[2026-06-13 02:28:34,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 02:28:34,522.522 INFO    ] 200
[2026-06-13 02:28:34,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:34,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:28:34,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:28:34,584.584 INFO    ] No camera update needed
[2026-06-13 02:28:34,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:28:34,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:28:34,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:28:34,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:36,633.633 INFO    ] ================================================
[2026-06-13 02:28:36,648.648 INFO    ] Launching Daemon at Sat Jun 13 02:28:36 IST 2026
[2026-06-13 02:28:36,660.660 INFO    ] ================================================
[2026-06-13 02:28:37,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:37
[2026-06-13 02:28:37,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:28:37,527.527 INFO    ] Initializing speech engine...
[2026-06-13 02:28:37,532.532 INFO    ] 2026-06-13 02:28:37
[2026-06-13 02:28:37,740.740 INFO    ] 2026-06-13 02:28:37
[2026-06-13 02:28:37,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:28:37,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:28:37,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:28:38,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:28:38,139.139 INFO    ] time= 13/06/2026 02:28:38
[2026-06-13 02:28:38,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:28:38,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:28:38,254.254 INFO    ] No existing commands found in stream
[2026-06-13 02:28:43,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:28:43,282.282 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 02:28:46,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:28:46,442.442 INFO    ] Checking for system updates...
[2026-06-13 02:28:46,462.462 INFO    ] 200
[2026-06-13 02:28:46,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:46,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:46,497.497 INFO    ] No update needed
[2026-06-13 02:28:46,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 02:28:46,517.517 INFO    ] 200
[2026-06-13 02:28:46,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:46,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:28:46,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:46,581.581 INFO    ] No camera update needed
[2026-06-13 02:28:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:28:46,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:28:46,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:28:46,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:48,629.629 INFO    ] ================================================
[2026-06-13 02:28:48,645.645 INFO    ] Launching Daemon at Sat Jun 13 02:28:48 IST 2026
[2026-06-13 02:28:48,656.656 INFO    ] ================================================
[2026-06-13 02:28:49,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:49
[2026-06-13 02:28:49,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:28:49,454.454 INFO    ] Initializing speech engine...
[2026-06-13 02:28:49,467.467 INFO    ] 2026-06-13 02:28:49
[2026-06-13 02:28:49,685.685 INFO    ] 2026-06-13 02:28:49
[2026-06-13 02:28:49,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:28:49,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:28:49,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:28:49,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:28:50,032.032 INFO    ] time= 13/06/2026 02:28:49
[2026-06-13 02:28:50,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:28:50,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:28:50,234.234 INFO    ] No existing commands found in stream
[2026-06-13 02:28:55,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:28:55,254.254 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 02:28:57,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:28:57,121.121 INFO    ] Checking for system updates...
[2026-06-13 02:28:57,142.142 INFO    ] 200
[2026-06-13 02:28:57,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:57,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:57,175.175 INFO    ] No update needed
[2026-06-13 02:28:57,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 02:28:57,196.196 INFO    ] 200
[2026-06-13 02:28:57,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:28:57,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:28:57,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:28:57,270.270 INFO    ] No camera update needed
[2026-06-13 02:28:57,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:28:57,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:28:57,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:28:57,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:28:59,318.318 INFO    ] ================================================
[2026-06-13 02:28:59,334.334 INFO    ] Launching Daemon at Sat Jun 13 02:28:59 IST 2026
[2026-06-13 02:28:59,345.345 INFO    ] ================================================
[2026-06-13 02:28:59,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:28:59
[2026-06-13 02:28:59,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:00,123.123 INFO    ] Initializing speech engine...
[2026-06-13 02:29:00,126.126 INFO    ] 2026-06-13 02:29:00
[2026-06-13 02:29:00,355.355 INFO    ] 2026-06-13 02:29:00
[2026-06-13 02:29:00,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:00,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:00,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:00,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:00,767.767 INFO    ] time= 13/06/2026 02:29:00
[2026-06-13 02:29:00,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:00,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:00,908.908 INFO    ] No existing commands found in stream
[2026-06-13 02:29:05,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:29:05,921.921 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 02:29:08,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:29:08,320.320 INFO    ] Checking for system updates...
[2026-06-13 02:29:08,340.340 INFO    ] 200
[2026-06-13 02:29:08,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:08,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:29:08,375.375 INFO    ] No update needed
[2026-06-13 02:29:08,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 02:29:08,399.399 INFO    ] 200
[2026-06-13 02:29:08,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:08,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:29:08,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:29:08,462.462 INFO    ] No camera update needed
[2026-06-13 02:29:08,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:29:08,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:29:08,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:29:08,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:29:10,509.509 INFO    ] ================================================
[2026-06-13 02:29:10,525.525 INFO    ] Launching Daemon at Sat Jun 13 02:29:10 IST 2026
[2026-06-13 02:29:10,539.539 INFO    ] ================================================
[2026-06-13 02:29:10,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:29:10
[2026-06-13 02:29:11,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:11,359.359 INFO    ] Initializing speech engine...
[2026-06-13 02:29:11,364.364 INFO    ] 2026-06-13 02:29:11
[2026-06-13 02:29:11,568.568 INFO    ] 2026-06-13 02:29:11
[2026-06-13 02:29:11,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:11,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:11,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:11,962.962 INFO    ] time= 13/06/2026 02:29:11
[2026-06-13 02:29:12,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:12,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:12,083.083 INFO    ] No existing commands found in stream
[2026-06-13 02:29:17,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:29:17,100.100 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 02:29:18,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:29:18,830.830 INFO    ] Checking for system updates...
[2026-06-13 02:29:18,851.851 INFO    ] 200
[2026-06-13 02:29:18,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:18,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:29:18,884.884 INFO    ] No update needed
[2026-06-13 02:29:18,885.885 INFO    ] Checking for camera pi updates...
[2026-06-13 02:29:18,906.906 INFO    ] 200
[2026-06-13 02:29:18,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:18,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:29:19,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:29:19,080.080 INFO    ] No camera update needed
[2026-06-13 02:29:19,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:29:19,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:29:19,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:29:19,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:29:21,131.131 INFO    ] ================================================
[2026-06-13 02:29:21,147.147 INFO    ] Launching Daemon at Sat Jun 13 02:29:21 IST 2026
[2026-06-13 02:29:21,158.158 INFO    ] ================================================
[2026-06-13 02:29:21,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:29:21
[2026-06-13 02:29:21,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:22,037.037 INFO    ] Initializing speech engine...
[2026-06-13 02:29:22,042.042 INFO    ] 2026-06-13 02:29:22
[2026-06-13 02:29:22,250.250 INFO    ] 2026-06-13 02:29:22
[2026-06-13 02:29:22,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:22,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:22,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:22,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:22,652.652 INFO    ] time= 13/06/2026 02:29:22
[2026-06-13 02:29:22,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:22,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:22,768.768 INFO    ] No existing commands found in stream
[2026-06-13 02:29:27,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:29:27,786.786 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 02:29:30,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:29:30,359.359 INFO    ] Checking for system updates...
[2026-06-13 02:29:30,379.379 INFO    ] 200
[2026-06-13 02:29:30,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:30,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:29:30,413.413 INFO    ] No update needed
[2026-06-13 02:29:30,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 02:29:30,433.433 INFO    ] 200
[2026-06-13 02:29:30,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:30,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:29:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:29:30,501.501 INFO    ] No camera update needed
[2026-06-13 02:29:30,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:29:30,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:29:30,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:29:30,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:29:32,550.550 INFO    ] ================================================
[2026-06-13 02:29:32,565.565 INFO    ] Launching Daemon at Sat Jun 13 02:29:32 IST 2026
[2026-06-13 02:29:32,577.577 INFO    ] ================================================
[2026-06-13 02:29:32,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:29:32
[2026-06-13 02:29:33,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:33,396.396 INFO    ] Initializing speech engine...
[2026-06-13 02:29:33,402.402 INFO    ] 2026-06-13 02:29:33
[2026-06-13 02:29:33,605.605 INFO    ] 2026-06-13 02:29:33
[2026-06-13 02:29:33,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:33,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:33,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:33,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:34,001.001 INFO    ] time= 13/06/2026 02:29:33
[2026-06-13 02:29:34,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:34,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:34,122.122 INFO    ] No existing commands found in stream
[2026-06-13 02:29:39,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:29:39,154.154 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 02:29:41,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:29:41,583.583 INFO    ] Checking for system updates...
[2026-06-13 02:29:41,603.603 INFO    ] 200
[2026-06-13 02:29:41,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:41,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:29:41,637.637 INFO    ] No update needed
[2026-06-13 02:29:41,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 02:29:41,658.658 INFO    ] 200
[2026-06-13 02:29:41,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:41,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:29:41,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:29:41,728.728 INFO    ] No camera update needed
[2026-06-13 02:29:41,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:29:41,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:29:41,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:29:41,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:29:43,776.776 INFO    ] ================================================
[2026-06-13 02:29:43,792.792 INFO    ] Launching Daemon at Sat Jun 13 02:29:43 IST 2026
[2026-06-13 02:29:43,806.806 INFO    ] ================================================
[2026-06-13 02:29:44,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:29:44
[2026-06-13 02:29:44,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:44,617.617 INFO    ] Initializing speech engine...
[2026-06-13 02:29:44,630.630 INFO    ] 2026-06-13 02:29:44
[2026-06-13 02:29:44,845.845 INFO    ] 2026-06-13 02:29:44
[2026-06-13 02:29:44,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:45,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:45,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:45,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:45,266.266 INFO    ] time= 13/06/2026 02:29:45
[2026-06-13 02:29:45,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:45,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:45,389.389 INFO    ] No existing commands found in stream
[2026-06-13 02:29:50,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:29:50,406.406 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 02:29:53,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:29:53,520.520 INFO    ] Checking for system updates...
[2026-06-13 02:29:53,541.541 INFO    ] 200
[2026-06-13 02:29:53,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:53,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:29:53,574.574 INFO    ] No update needed
[2026-06-13 02:29:53,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 02:29:53,594.594 INFO    ] 200
[2026-06-13 02:29:53,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:29:53,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:29:53,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:29:53,661.661 INFO    ] No camera update needed
[2026-06-13 02:29:53,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:29:53,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:29:53,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:29:53,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:29:55,709.709 INFO    ] ================================================
[2026-06-13 02:29:55,724.724 INFO    ] Launching Daemon at Sat Jun 13 02:29:55 IST 2026
[2026-06-13 02:29:55,736.736 INFO    ] ================================================
[2026-06-13 02:29:56,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:29:56
[2026-06-13 02:29:56,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:29:56,541.541 INFO    ] Initializing speech engine...
[2026-06-13 02:29:56,547.547 INFO    ] 2026-06-13 02:29:56
[2026-06-13 02:29:56,750.750 INFO    ] 2026-06-13 02:29:56
[2026-06-13 02:29:56,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:29:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:29:56,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:29:57,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:29:57,151.151 INFO    ] time= 13/06/2026 02:29:57
[2026-06-13 02:29:57,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:29:57,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:29:57,385.385 INFO    ] No existing commands found in stream
[2026-06-13 02:30:02,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:02,417.417 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 02:30:08,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:30:08,141.141 INFO    ] Checking for system updates...
[2026-06-13 02:30:08,177.177 INFO    ] 200
[2026-06-13 02:30:08,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:08,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:08,241.241 INFO    ] No update needed
[2026-06-13 02:30:08,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:08,279.279 INFO    ] 200
[2026-06-13 02:30:08,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:08,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:08,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:08,355.355 INFO    ] No camera update needed
[2026-06-13 02:30:08,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:08,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:08,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:30:10,404.404 INFO    ] ================================================
[2026-06-13 02:30:10,420.420 INFO    ] Launching Daemon at Sat Jun 13 02:30:10 IST 2026
[2026-06-13 02:30:10,431.431 INFO    ] ================================================
[2026-06-13 02:30:10,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:30:10
[2026-06-13 02:30:11,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:30:11,228.228 INFO    ] Initializing speech engine...
[2026-06-13 02:30:11,233.233 INFO    ] 2026-06-13 02:30:11
[2026-06-13 02:30:11,439.439 INFO    ] 2026-06-13 02:30:11
[2026-06-13 02:30:11,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:30:11,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:30:11,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:30:11,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:30:11,845.845 INFO    ] time= 13/06/2026 02:30:11
[2026-06-13 02:30:11,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:30:11,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:30:11,963.963 INFO    ] No existing commands found in stream
[2026-06-13 02:30:16,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:16,985.985 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 02:30:18,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:30:18,794.794 INFO    ] Checking for system updates...
[2026-06-13 02:30:18,815.815 INFO    ] 200
[2026-06-13 02:30:18,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:18,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:30:18,848.848 INFO    ] No update needed
[2026-06-13 02:30:18,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:18,869.869 INFO    ] 200
[2026-06-13 02:30:18,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:18,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:18,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:18,936.936 INFO    ] No camera update needed
[2026-06-13 02:30:18,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:18,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:18,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:18,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:30:20,985.985 INFO    ] ================================================
[2026-06-13 02:30:21,000.000 INFO    ] Launching Daemon at Sat Jun 13 02:30:20 IST 2026
[2026-06-13 02:30:21,010.010 INFO    ] ================================================
[2026-06-13 02:30:21,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:30:21
[2026-06-13 02:30:21,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:30:21,831.831 INFO    ] Initializing speech engine...
[2026-06-13 02:30:21,840.840 INFO    ] 2026-06-13 02:30:21
[2026-06-13 02:30:22,063.063 INFO    ] 2026-06-13 02:30:22
[2026-06-13 02:30:22,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:30:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:30:22,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:30:22,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:30:22,493.493 INFO    ] time= 13/06/2026 02:30:22
[2026-06-13 02:30:22,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:30:22,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:30:22,612.612 INFO    ] No existing commands found in stream
[2026-06-13 02:30:27,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:27,625.625 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 02:30:30,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:30:30,744.744 INFO    ] Checking for system updates...
[2026-06-13 02:30:30,766.766 INFO    ] 200
[2026-06-13 02:30:30,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:30,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:30,802.802 INFO    ] No update needed
[2026-06-13 02:30:30,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:30,822.822 INFO    ] 200
[2026-06-13 02:30:30,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:30,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:30,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:30,887.887 INFO    ] No camera update needed
[2026-06-13 02:30:30,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:30,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:30,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:30,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:30:32,926.926 INFO    ] ================================================
[2026-06-13 02:30:32,942.942 INFO    ] Launching Daemon at Sat Jun 13 02:30:32 IST 2026
[2026-06-13 02:30:32,954.954 INFO    ] ================================================
[2026-06-13 02:30:33,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:30:33
[2026-06-13 02:30:33,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:30:33,743.743 INFO    ] Initializing speech engine...
[2026-06-13 02:30:33,751.751 INFO    ] 2026-06-13 02:30:33
[2026-06-13 02:30:33,956.956 INFO    ] 2026-06-13 02:30:33
[2026-06-13 02:30:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:30:34,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:30:34,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:30:34,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:30:34,372.372 INFO    ] time= 13/06/2026 02:30:34
[2026-06-13 02:30:34,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:30:34,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:30:34,473.473 INFO    ] No existing commands found in stream
[2026-06-13 02:30:39,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:39,489.489 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 02:30:39,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:30:39,850.850 INFO    ] Checking for system updates...
[2026-06-13 02:30:39,872.872 INFO    ] 200
[2026-06-13 02:30:39,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:39,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:39,907.907 INFO    ] No update needed
[2026-06-13 02:30:39,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:39,928.928 INFO    ] 200
[2026-06-13 02:30:39,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:39,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:39,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:39,996.996 INFO    ] No camera update needed
[2026-06-13 02:30:39,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:39,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:40,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:40,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:30:42,045.045 INFO    ] ================================================
[2026-06-13 02:30:42,061.061 INFO    ] Launching Daemon at Sat Jun 13 02:30:42 IST 2026
[2026-06-13 02:30:42,072.072 INFO    ] ================================================
[2026-06-13 02:30:42,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:30:42
[2026-06-13 02:30:43,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:30:43,357.357 INFO    ] Initializing speech engine...
[2026-06-13 02:30:43,376.376 INFO    ] 2026-06-13 02:30:43
[2026-06-13 02:30:43,640.640 INFO    ] 2026-06-13 02:30:43
[2026-06-13 02:30:43,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:30:43,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:30:43,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:30:44,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:30:44,010.010 INFO    ] time= 13/06/2026 02:30:44
[2026-06-13 02:30:44,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:30:44,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:30:44,132.132 INFO    ] No existing commands found in stream
[2026-06-13 02:30:49,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:49,148.148 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 02:30:49,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:30:49,660.660 INFO    ] Checking for system updates...
[2026-06-13 02:30:49,681.681 INFO    ] 200
[2026-06-13 02:30:49,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:49,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:49,714.714 INFO    ] No update needed
[2026-06-13 02:30:49,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:49,737.737 INFO    ] 200
[2026-06-13 02:30:49,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:49,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:49,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:49,807.807 INFO    ] No camera update needed
[2026-06-13 02:30:49,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:49,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:49,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:49,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:30:51,856.856 INFO    ] ================================================
[2026-06-13 02:30:51,872.872 INFO    ] Launching Daemon at Sat Jun 13 02:30:51 IST 2026
[2026-06-13 02:30:51,883.883 INFO    ] ================================================
[2026-06-13 02:30:52,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:30:52
[2026-06-13 02:30:52,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:30:52,705.705 INFO    ] Initializing speech engine...
[2026-06-13 02:30:52,710.710 INFO    ] 2026-06-13 02:30:52
[2026-06-13 02:30:52,927.927 INFO    ] 2026-06-13 02:30:52
[2026-06-13 02:30:52,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:30:53,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:30:53,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:30:53,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:30:53,352.352 INFO    ] time= 13/06/2026 02:30:53
[2026-06-13 02:30:53,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:30:53,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:30:53,480.480 INFO    ] No existing commands found in stream
[2026-06-13 02:30:58,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:30:58,494.494 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 02:30:59,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:30:59,796.796 INFO    ] Checking for system updates...
[2026-06-13 02:30:59,817.817 INFO    ] 200
[2026-06-13 02:30:59,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:59,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:59,851.851 INFO    ] No update needed
[2026-06-13 02:30:59,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 02:30:59,871.871 INFO    ] 200
[2026-06-13 02:30:59,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:30:59,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:30:59,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:30:59,934.934 INFO    ] No camera update needed
[2026-06-13 02:30:59,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:30:59,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:30:59,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:30:59,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:31:01,973.973 INFO    ] ================================================
[2026-06-13 02:31:01,983.983 INFO    ] Launching Daemon at Sat Jun 13 02:31:01 IST 2026
[2026-06-13 02:31:01,989.989 INFO    ] ================================================
[2026-06-13 02:31:02,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:31:02
[2026-06-13 02:31:02,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:31:02,810.810 INFO    ] Initializing speech engine...
[2026-06-13 02:31:02,815.815 INFO    ] 2026-06-13 02:31:02
[2026-06-13 02:31:03,022.022 INFO    ] 2026-06-13 02:31:03
[2026-06-13 02:31:03,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:31:03,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:31:03,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:31:03,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:31:03,379.379 INFO    ] time= 13/06/2026 02:31:03
[2026-06-13 02:31:03,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:31:03,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:31:03,550.550 INFO    ] No existing commands found in stream
[2026-06-13 02:31:08,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:31:08,564.564 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 02:31:12,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:31:12,581.581 INFO    ] Checking for system updates...
[2026-06-13 02:31:12,603.603 INFO    ] 200
[2026-06-13 02:31:12,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:12,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:12,639.639 INFO    ] No update needed
[2026-06-13 02:31:12,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 02:31:12,660.660 INFO    ] 200
[2026-06-13 02:31:12,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:12,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:31:12,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:12,733.733 INFO    ] No camera update needed
[2026-06-13 02:31:12,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:31:12,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:31:12,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:31:12,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:31:14,783.783 INFO    ] ================================================
[2026-06-13 02:31:14,799.799 INFO    ] Launching Daemon at Sat Jun 13 02:31:14 IST 2026
[2026-06-13 02:31:14,811.811 INFO    ] ================================================
[2026-06-13 02:31:15,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:31:15
[2026-06-13 02:31:15,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:31:15,596.596 INFO    ] Initializing speech engine...
[2026-06-13 02:31:15,601.601 INFO    ] 2026-06-13 02:31:15
[2026-06-13 02:31:15,867.867 INFO    ] 2026-06-13 02:31:15
[2026-06-13 02:31:15,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:31:16,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:31:16,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:31:16,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:31:16,240.240 INFO    ] time= 13/06/2026 02:31:16
[2026-06-13 02:31:16,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:31:16,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:31:16,365.365 INFO    ] No existing commands found in stream
[2026-06-13 02:31:21,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:31:21,381.381 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 02:31:25,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:31:25,364.364 INFO    ] Checking for system updates...
[2026-06-13 02:31:25,385.385 INFO    ] 200
[2026-06-13 02:31:25,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:25,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:31:25,420.420 INFO    ] No update needed
[2026-06-13 02:31:25,422.422 INFO    ] Checking for camera pi updates...
[2026-06-13 02:31:25,443.443 INFO    ] 200
[2026-06-13 02:31:25,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:25,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:31:25,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:31:25,615.615 INFO    ] No camera update needed
[2026-06-13 02:31:25,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:31:25,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:31:25,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:31:25,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:31:27,662.662 INFO    ] ================================================
[2026-06-13 02:31:27,678.678 INFO    ] Launching Daemon at Sat Jun 13 02:31:27 IST 2026
[2026-06-13 02:31:27,689.689 INFO    ] ================================================
[2026-06-13 02:31:28,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:31:28
[2026-06-13 02:31:28,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:31:28,508.508 INFO    ] Initializing speech engine...
[2026-06-13 02:31:28,513.513 INFO    ] 2026-06-13 02:31:28
[2026-06-13 02:31:28,716.716 INFO    ] 2026-06-13 02:31:28
[2026-06-13 02:31:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:31:28,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:31:28,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:31:29,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:31:29,133.133 INFO    ] time= 13/06/2026 02:31:29
[2026-06-13 02:31:29,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:31:29,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:31:29,232.232 INFO    ] No existing commands found in stream
[2026-06-13 02:31:34,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:31:34,243.243 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 02:31:36,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:31:36,039.039 INFO    ] Checking for system updates...
[2026-06-13 02:31:36,060.060 INFO    ] 200
[2026-06-13 02:31:36,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:36,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:36,093.093 INFO    ] No update needed
[2026-06-13 02:31:36,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 02:31:36,114.114 INFO    ] 200
[2026-06-13 02:31:36,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:36,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:31:36,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:36,178.178 INFO    ] No camera update needed
[2026-06-13 02:31:36,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:31:36,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:31:36,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:31:36,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:31:38,226.226 INFO    ] ================================================
[2026-06-13 02:31:38,242.242 INFO    ] Launching Daemon at Sat Jun 13 02:31:38 IST 2026
[2026-06-13 02:31:38,254.254 INFO    ] ================================================
[2026-06-13 02:31:38,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:31:38
[2026-06-13 02:31:38,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:31:39,043.043 INFO    ] Initializing speech engine...
[2026-06-13 02:31:39,055.055 INFO    ] 2026-06-13 02:31:39
[2026-06-13 02:31:39,261.261 INFO    ] 2026-06-13 02:31:39
[2026-06-13 02:31:39,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:31:39,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:31:39,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:31:39,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:31:39,666.666 INFO    ] time= 13/06/2026 02:31:39
[2026-06-13 02:31:39,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:31:39,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:31:39,784.784 INFO    ] No existing commands found in stream
[2026-06-13 02:31:44,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:31:44,798.798 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 02:31:45,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:31:45,951.951 INFO    ] Checking for system updates...
[2026-06-13 02:31:45,973.973 INFO    ] 200
[2026-06-13 02:31:45,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:46,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:46,007.007 INFO    ] No update needed
[2026-06-13 02:31:46,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 02:31:46,028.028 INFO    ] 200
[2026-06-13 02:31:46,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:46,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:31:46,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:31:46,098.098 INFO    ] No camera update needed
[2026-06-13 02:31:46,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:31:46,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:31:46,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:31:46,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:31:48,146.146 INFO    ] ================================================
[2026-06-13 02:31:48,162.162 INFO    ] Launching Daemon at Sat Jun 13 02:31:48 IST 2026
[2026-06-13 02:31:48,173.173 INFO    ] ================================================
[2026-06-13 02:31:48,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:31:48
[2026-06-13 02:31:48,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:31:48,976.976 INFO    ] Initializing speech engine...
[2026-06-13 02:31:48,981.981 INFO    ] 2026-06-13 02:31:48
[2026-06-13 02:31:49,184.184 INFO    ] 2026-06-13 02:31:49
[2026-06-13 02:31:49,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:31:49,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:31:49,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:31:49,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:31:49,586.586 INFO    ] time= 13/06/2026 02:31:49
[2026-06-13 02:31:49,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:31:49,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:31:49,707.707 INFO    ] No existing commands found in stream
[2026-06-13 02:31:54,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:31:54,720.720 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 02:31:57,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:31:57,897.897 INFO    ] Checking for system updates...
[2026-06-13 02:31:57,917.917 INFO    ] 200
[2026-06-13 02:31:57,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:57,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:31:57,950.950 INFO    ] No update needed
[2026-06-13 02:31:57,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 02:31:57,971.971 INFO    ] 200
[2026-06-13 02:31:57,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:31:57,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:31:58,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:31:58,032.032 INFO    ] No camera update needed
[2026-06-13 02:31:58,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:31:58,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:31:58,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:31:58,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:32:00,080.080 INFO    ] ================================================
[2026-06-13 02:32:00,095.095 INFO    ] Launching Daemon at Sat Jun 13 02:32:00 IST 2026
[2026-06-13 02:32:00,107.107 INFO    ] ================================================
[2026-06-13 02:32:00,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:32:00
[2026-06-13 02:32:00,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:32:00,922.922 INFO    ] Initializing speech engine...
[2026-06-13 02:32:00,928.928 INFO    ] 2026-06-13 02:32:00
[2026-06-13 02:32:01,134.134 INFO    ] 2026-06-13 02:32:01
[2026-06-13 02:32:01,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:32:01,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:32:01,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:32:01,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:32:01,449.449 INFO    ] time= 13/06/2026 02:32:01
[2026-06-13 02:32:01,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:32:01,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:32:01,579.579 INFO    ] No existing commands found in stream
[2026-06-13 02:32:06,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:32:06,603.603 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 02:32:09,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:32:09,408.408 INFO    ] Checking for system updates...
[2026-06-13 02:32:09,429.429 INFO    ] 200
[2026-06-13 02:32:09,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:09,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:32:09,462.462 INFO    ] No update needed
[2026-06-13 02:32:09,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 02:32:09,483.483 INFO    ] 200
[2026-06-13 02:32:09,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:09,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:32:09,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:32:09,551.551 INFO    ] No camera update needed
[2026-06-13 02:32:09,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:32:09,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:32:09,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:32:09,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:32:11,600.600 INFO    ] ================================================
[2026-06-13 02:32:11,615.615 INFO    ] Launching Daemon at Sat Jun 13 02:32:11 IST 2026
[2026-06-13 02:32:11,626.626 INFO    ] ================================================
[2026-06-13 02:32:11,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:32:11
[2026-06-13 02:32:12,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:32:12,454.454 INFO    ] Initializing speech engine...
[2026-06-13 02:32:12,459.459 INFO    ] 2026-06-13 02:32:12
[2026-06-13 02:32:12,660.660 INFO    ] 2026-06-13 02:32:12
[2026-06-13 02:32:12,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:32:12,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:32:12,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:32:13,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:32:13,065.065 INFO    ] time= 13/06/2026 02:32:13
[2026-06-13 02:32:13,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:32:13,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:32:13,175.175 INFO    ] No existing commands found in stream
[2026-06-13 02:32:18,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:32:18,192.192 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 02:32:21,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:32:21,304.304 INFO    ] Checking for system updates...
[2026-06-13 02:32:21,326.326 INFO    ] 200
[2026-06-13 02:32:21,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:21,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:32:21,361.361 INFO    ] No update needed
[2026-06-13 02:32:21,362.362 INFO    ] Checking for camera pi updates...
[2026-06-13 02:32:21,382.382 INFO    ] 200
[2026-06-13 02:32:21,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:21,408.408 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:32:21,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:32:21,446.446 INFO    ] No camera update needed
[2026-06-13 02:32:21,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:32:21,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:32:21,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:32:21,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:32:23,487.487 INFO    ] ================================================
[2026-06-13 02:32:23,505.505 INFO    ] Launching Daemon at Sat Jun 13 02:32:23 IST 2026
[2026-06-13 02:32:23,516.516 INFO    ] ================================================
[2026-06-13 02:32:23,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:32:23
[2026-06-13 02:32:24,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:32:24,289.289 INFO    ] Initializing speech engine...
[2026-06-13 02:32:24,305.305 INFO    ] 2026-06-13 02:32:24
[2026-06-13 02:32:24,524.524 INFO    ] 2026-06-13 02:32:24
[2026-06-13 02:32:24,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:32:24,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:32:24,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:32:24,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:32:24,958.958 INFO    ] time= 13/06/2026 02:32:24
[2026-06-13 02:32:24,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:32:25,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:32:25,074.074 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 02:32:25,078.078 INFO    ] Checking historical command: ID=1781298139898-0
[2026-06-13 02:32:25,105.105 INFO    ] process_and_cleanup_command: msg_id=1781298139898-0
[2026-06-13 02:32:25,107.107 INFO    ] is_command_expired: timestamp=2026-06-12T21:02:19.600Z, expiry=30s
[2026-06-13 02:32:25,222.222 INFO    ] Command removed from stream: 1781298139898-0. returning for processing...
[2026-06-13 02:32:25,226.226 INFO    ] ***** get_valid_command
[2026-06-13 02:32:25,229.229 INFO    ] {'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1781298139600-p2hd5aeg3","orderId":"TM08202203260613023127977","is_vending":false}', 'timestamp': '2026-06-12T21:02:19.600Z'}
[2026-06-13 02:32:25,234.234 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613023127977', 'request_id': 'start-order-1781298139600-p2hd5aeg3', 'is_vending': False}
[2026-06-13 02:32:25,238.238 INFO    ] Handling start order...
[2026-06-13 02:32:25,241.241 INFO    ] handle_start_order_command
[2026-06-13 02:32:25,248.248 INFO    ] _send_start_order_success: request_id=start-order-1781298139600-p2hd5aeg3, order_id=TM08202203260613023127977
[2026-06-13 02:32:25,251.251 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 02:32:25,299.299 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781298145260-0
[2026-06-13 02:32:25,302.302 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 02:32:25,306.306 INFO    ] Checking for system updates...
[2026-06-13 02:32:25,332.332 INFO    ] 200
[2026-06-13 02:32:25,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:25,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:32:25,380.380 INFO    ] No update needed
[2026-06-13 02:32:25,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 02:32:25,458.458 INFO    ] 200
[2026-06-13 02:32:25,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:25,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:32:25,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:32:25,597.597 INFO    ] No camera update needed
[2026-06-13 02:32:25,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:32:25,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:32:25,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:32:25,618.618 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 02:32:25,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:32:27,659.659 INFO    ] ================================================
[2026-06-13 02:32:27,674.674 INFO    ] Launching Daemon at Sat Jun 13 02:32:27 IST 2026
[2026-06-13 02:32:27,684.684 INFO    ] ================================================
[2026-06-13 02:32:28,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:32:28
[2026-06-13 02:32:28,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:32:28,501.501 INFO    ] Initializing speech engine...
[2026-06-13 02:32:28,510.510 INFO    ] 2026-06-13 02:32:28
[2026-06-13 02:32:28,736.736 INFO    ] 2026-06-13 02:32:28
[2026-06-13 02:32:28,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:32:28,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:32:28,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:32:29,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:32:29,145.145 INFO    ] time= 13/06/2026 02:32:29
[2026-06-13 02:32:29,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:32:29,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:32:29,376.376 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 02:32:29,423.423 INFO    ] Checking historical command: ID=1781298145260-0
[2026-06-13 02:32:29,474.474 INFO    ] process_and_cleanup_command: msg_id=1781298145260-0
[2026-06-13 02:32:29,483.483 INFO    ] is_command_expired: timestamp=2026-06-12T21:02:25.248803Z, expiry=30s
[2026-06-13 02:32:29,623.623 INFO    ] Command removed from stream: 1781298145260-0. returning for processing...
[2026-06-13 02:32:29,659.659 INFO    ] ***** get_valid_command
[2026-06-13 02:32:29,663.663 INFO    ] {'status': 'success', 'imei': 'TM08202203', 'metadata_order_id': 'TM08202203260613023127977', 'metadata_request_id': 'start-order-1781298139600-p2hd5aeg3', 'message': 'start-order success', 'timestamp': '2026-06-12T21:02:25.248803Z', 'message_type': 'command_response'}
[2026-06-13 02:32:29,669.669 INFO    ] Checking historical command: ID=1781298148012-0
[2026-06-13 02:32:29,677.677 INFO    ] process_and_cleanup_command: msg_id=1781298148012-0
[2026-06-13 02:32:29,730.730 INFO    ] is_command_expired: timestamp=2026-06-12T21:02:27.725Z, expiry=30s
[2026-06-13 02:32:29,793.793 INFO    ] Command removed from stream: 1781298148012-0. returning for processing...
[2026-06-13 02:32:29,797.797 INFO    ] ***** get_valid_command
[2026-06-13 02:32:29,801.801 INFO    ] {'command': 'process-order', 'timeout': '60', 'timestamp': '2026-06-12T21:02:27.725Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781298147725-y222j8i7v","orderId":"TM08202203260613023127977","is_vending":false,"accessCode":"84659358"}'}
[2026-06-13 02:32:29,806.806 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613023127977', 'accessCode': '84659358', 'is_vending': False, 'request_id': 'process-order-1781298147725-y222j8i7v'}
[2026-06-13 02:32:29,811.811 INFO    ] Handling process order...
[2026-06-13 02:32:29,814.814 INFO    ] Processing process-order command...
[2026-06-13 02:32:29,820.820 INFO    ] 🔍 Lock file Order ID: TM08202203260613023127977, TS: 2026-06-13 02:32:25
[2026-06-13 02:32:29,836.836 INFO    ] ✅ Order lock valid for TM08202203260613023127977
[2026-06-13 02:32:29,840.840 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 02:32:29,844.844 INFO    ] processing access code 84659358 for order TM08202203260613023127977
[2026-06-13 02:32:29,850.850 INFO    ] 🔍 Lock file Order ID: TM08202203260613023127977, TS: 2026-06-13 02:32:25
[2026-06-13 02:32:29,855.855 INFO    ] ✅ Order lock valid for TM08202203260613023127977
[2026-06-13 02:32:29,859.859 INFO    ] 2026-06-13 02:32:29
[2026-06-13 02:32:29,970.970 INFO    ] 200
[2026-06-13 02:32:30,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:32:30,028.028 INFO    ] 84659358
[2026-06-13 02:32:30,033.033 INFO    ] 2026-06-13 02:32:30
[2026-06-13 02:32:30,038.038 INFO    ] session id :552451231
[2026-06-13 02:32:30,046.046 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=84659358&imei=TM08202203&session_id=552451231
[2026-06-13 02:32:30,699.699 INFO    ] 200
[2026-06-13 02:32:30,704.704 INFO    ] {"data": {"mobile": "6379699559", "order_id": "TM08202203260613023127977", "bill_amount": "130.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Bingo Chips Chilli Sprinkled 30gm", "tray_id": "24", "unit_price": 20, "qty": 2, "sku_total": 40, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 2, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "84659358", "invoice_bill": "130.0"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 02:32:30,710.710 INFO    ] 130
[2026-06-13 02:32:30,715.715 INFO    ] TM08202203260613023127977
[2026-06-13 02:32:30,721.721 INFO    ] 6379699559
[2026-06-13 02:32:30,725.725 INFO    ] 2026-06-13 02:32:30
[2026-06-13 02:32:30,730.730 INFO    ] Door Opening for user mobile ending with  nine five five nine 
[2026-06-13 02:32:30,735.735 INFO    ] Door Opening for user mobile ending with  nine five five nine 
[2026-06-13 02:32:30,740.740 INFO    ] dda9771b028a99b4118a7e0a9579621c
[2026-06-13 02:32:30,747.747 INFO    ] 2026-06-13 02:32:30
[2026-06-13 02:32:30,753.753 INFO    ] playing audio file
[2026-06-13 02:32:30,774.774 INFO    ] 2026-06-13 02:32:30
[2026-06-13 02:32:30,781.781 INFO    ] 2026-06-13 02:32:30
[2026-06-13 02:32:30,787.787 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:32:30,793.793 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:32:30,950.950 INFO    ] [publish_status] Message added to stream with ID: 1781298150846-0
[2026-06-13 02:32:30,965.965 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"bill_amount": "130.0", "mobile": "6379699559", "proposed_sku_json": [{"skuid": "4500452", "tray_id": "24", "qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm", "unit_price": 20, "mrp": "20", "offer_id": "", "door_id": "1", "offer_desc": "", "sku_total": 40, "image_url": "https://images.tinymart.in/product/4500452-8664.jpg"}, {"skuid": "4500648", "tray_id": "11", "qty": 2, "name": "Modern kitchens Banana Chips 21gm", "unit_price": 10, "mrp": "10", "offer_id": "", "door_id": "1", "offer_desc": "", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500648-25.webp"}, {"skuid": "186084", "tray_id": "40", "qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "unit_price": 30, "mrp": "30", "offer_id": "", "door_id": "2", "offer_desc": "", "sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png"}, {"skuid": "185993", "tray_id": "43", "qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "unit_price": 20, "mrp": "20", "offer_id": "", "door_id": "2", "offer_desc": "", "sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp"}, {"skuid": "4500541", "tray_id": "39", "qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm", "unit_price": 20, "mrp": "20", "offer_id": "", "door_id": "2", "offer_desc": "", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg"}], "order_id": "TM08202203260613023127977", "invoice_bill": "130.0", "access_code": "84659358"}, "status": true}', 'timestamp': '2026-06-12T21:02:30.783837Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298150846-0)
[2026-06-13 02:32:31,443.443 INFO    ] {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '130.0', 'mobile': '6379699559', 'proposed_sku_json': [{'skuid': '4500452', 'tray_id': '24', 'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm', 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'door_id': '1', 'offer_desc': '', 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg'}, {'skuid': '4500648', 'tray_id': '11', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm', 'unit_price': 10, 'mrp': '10', 'offer_id': '', 'door_id': '1', 'offer_desc': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp'}, {'skuid': '186084', 'tray_id': '40', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'unit_price': 30, 'mrp': '30', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'skuid': '185993', 'tray_id': '43', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}, {'skuid': '4500541', 'tray_id': '39', 'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}], 'order_id': 'TM08202203260613023127977', 'invoice_bill': '130.0', 'access_code': '84659358'}, 'status': True}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:32:31,452.452 INFO    ] 200
[2026-06-13 02:32:31,465.465 INFO    ] {"data":{"server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","data":{"bill_amount":"130.0","mobile":"6379699559","proposed_sku_json":[{"skuid":"4500452","tray_id":"24","qty":2,"name":"Bingo Chips Chilli Sprinkled 30gm","unit_price":20,"mrp":"20","offer_id":"","door_id":"1","offer_desc":"","sku_total":40,"image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg"},{"skuid":"4500648","tray_id":"11","qty":2,"name":"Modern kitchens Banana Chips 21gm","unit_price":10,"mrp":"10","offer_id":"","door_id":"1","offer_desc":"","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp"},{"skuid":"186084","tray_id":"40","qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g","unit_price":30,"mrp":"30","offer_id":"","door_id":"2","offer_desc":"","sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"},{"skuid":"185993","tray_id":"43","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","unit_price":20,"mrp":"20","offer_id":"","door_id":"2","offer_desc":"","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp"},{"skuid":"4500541","tray_id":"39","qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm","unit_price":20,"mrp":"20","offer_id":"","door_id":"2","offer_desc":"","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg"}],"order_id":"TM08202203260613023127977","invoice_bill":"130.0","access_code":"84659358"},"status":true},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:32:31,480.480 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '130.0', 'mobile': '6379699559', 'access_code': '84659358', 'order_id': 'TM08202203260613023127977', 'invoice_bill': '130.0', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'door_id': '1', 'qty': 2, 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'tray_id': '24', 'offer_desc': '', 'sku_total': 40, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'door_id': '1', 'qty': 2, 'unit_price': 10, 'mrp': '10', 'offer_id': '', 'tray_id': '11', 'offer_desc': '', 'sku_total': 20, 'name': 'Modern kitchens Banana Chips 21gm'}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'door_id': '2', 'qty': 1, 'unit_price': 30, 'mrp': '30', 'offer_id': '', 'tray_id': '40', 'offer_desc': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'door_id': '2', 'qty': 1, 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'tray_id': '43', 'offer_desc': '', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'door_id': '2', 'qty': 1, 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'tray_id': '39', 'offer_desc': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'status': True}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:32:31,509.509 INFO    ] 2026-06-13 02:32:31
[2026-06-13 02:32:31,583.583 INFO    ] 200
[2026-06-13 02:32:31,587.587 INFO    ] True
[2026-06-13 02:32:31,806.806 INFO    ] 200
[2026-06-13 02:32:31,823.823 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:31,833.833 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 02:32:31,852.852 INFO    ] *** process_order ***
[2026-06-13 02:32:32,989.989 INFO    ] 200
[2026-06-13 02:32:32,991.991 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 02:32:32,992.992 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 02:32:32,993.993 INFO    ] *** process_order ***
[2026-06-13 02:32:32,995.995 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:32:32,996.996 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:32:33,040.040 INFO    ] [publish_status] Message added to stream with ID: 1781298153003-0
[2026-06-13 02:32:33,041.041 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "status": "True", "rstatus": true, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}}', 'order_id': 'TM08202203260613023127977'} (ID: 1781298153003-0)
[2026-06-13 02:32:34,089.089 INFO    ] 2026-06-13 02:32:34
[2026-06-13 02:32:34,092.092 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:32:34,094.094 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:32:34,177.177 INFO    ] [publish_status] Message added to stream with ID: 1781298154140-0
[2026-06-13 02:32:34,180.180 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'processOrder', 'server_response': '{"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "status": "True", "delay": 0, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}}', 'timestamp': '2026-06-12T21:02:34.090479Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298154140-0)
[2026-06-13 02:32:34,291.291 INFO    ] {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:32:34,294.294 INFO    ] 200
[2026-06-13 02:32:34,297.297 INFO    ] {"data":{"server_status":"processOrder","server_response":{"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","status":"true","delay":0,"SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:32:34,300.300 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:32:34,303.303 INFO    ] 2026-06-13 02:32:34
[2026-06-13 02:32:34,306.306 INFO    ] None
[2026-06-13 02:32:34,308.308 INFO    ] Opening Door now
[2026-06-13 02:32:34,311.311 INFO    ] Opening Door now
[2026-06-13 02:32:34,314.314 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 02:32:34,317.317 INFO    ] 2026-06-13 02:32:34
[2026-06-13 02:32:34,319.319 INFO    ] playing audio file
[2026-06-13 02:32:34,337.337 INFO    ] 2026-06-13 02:32:34
[2026-06-13 02:32:34,341.341 INFO    ] 2026-06-13 02:32:34
[2026-06-13 02:32:37,389.389 INFO    ] 200
[2026-06-13 02:32:37,390.390 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm"}, {"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:37,392.392 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}}
[2026-06-13 02:32:40,439.439 INFO    ] 200
[2026-06-13 02:32:40,440.440 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm"}, {"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:40,442.442 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}}
[2026-06-13 02:32:43,487.487 INFO    ] 200
[2026-06-13 02:32:43,489.489 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm"}, {"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:43,491.491 INFO    ] Please close door 1
[2026-06-13 02:32:43,492.492 INFO    ] Please close door 1
[2026-06-13 02:32:43,494.494 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 02:32:43,495.495 INFO    ] 2026-06-13 02:32:43
[2026-06-13 02:32:43,497.497 INFO    ] playing audio file
[2026-06-13 02:32:43,507.507 INFO    ] 2026-06-13 02:32:43
[2026-06-13 02:32:43,509.509 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:32:43,511.511 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:32:43,563.563 INFO    ] [publish_status] Message added to stream with ID: 1781298163526-0
[2026-06-13 02:32:43,565.565 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm"}, {"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "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"}}', 'timestamp': '2026-06-12T21:02:43.508603Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298163526-0)
[2026-06-13 02:32:43,928.928 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:32:43,931.931 INFO    ] 200
[2026-06-13 02:32:43,933.933 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":2,"name":"Bingo Chips Chilli Sprinkled 30gm"},{"qty":2,"name":"Modern kitchens Banana Chips 21gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","status":"false","rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"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"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:32:43,936.936 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, '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'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:32:43,939.939 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}}
[2026-06-13 02:32:46,990.990 INFO    ] 200
[2026-06-13 02:32:46,992.992 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Bingo Chips Chilli Sprinkled 30gm"}, {"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:46,995.995 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, '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'}}
[2026-06-13 02:32:50,041.041 INFO    ] 200
[2026-06-13 02:32:50,042.042 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:50,044.044 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:32:53,079.079 INFO    ] 200
[2026-06-13 02:32:53,080.080 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:53,082.082 INFO    ] Please close door 2
[2026-06-13 02:32:53,083.083 INFO    ] Please close door 2
[2026-06-13 02:32:53,085.085 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 02:32:53,086.086 INFO    ] 2026-06-13 02:32:53
[2026-06-13 02:32:53,088.088 INFO    ] playing audio file
[2026-06-13 02:32:53,100.100 INFO    ] 2026-06-13 02:32:53
[2026-06-13 02:32:53,103.103 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:32:53,104.104 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:32:53,192.192 INFO    ] [publish_status] Message added to stream with ID: 1781298173146-0
[2026-06-13 02:32:53,195.195 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}}', 'timestamp': '2026-06-12T21:02:53.101896Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298173146-0)
[2026-06-13 02:32:53,536.536 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:32:53,538.538 INFO    ] 200
[2026-06-13 02:32:53,539.539 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"},{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","status":"false","rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:32:53,542.542 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:32:53,543.543 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:32:56,594.594 INFO    ] 200
[2026-06-13 02:32:56,596.596 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:56,599.599 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:32:59,649.649 INFO    ] 200
[2026-06-13 02:32:59,651.651 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:32:59,654.654 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:02,713.713 INFO    ] 200
[2026-06-13 02:33:02,716.716 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:02,719.719 INFO    ] Please close door 2
[2026-06-13 02:33:02,723.723 INFO    ] Please close door 2
[2026-06-13 02:33:02,726.726 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 02:33:02,729.729 INFO    ] 2026-06-13 02:33:02
[2026-06-13 02:33:02,732.732 INFO    ] playing audio file
[2026-06-13 02:33:02,751.751 INFO    ] 2026-06-13 02:33:02
[2026-06-13 02:33:02,754.754 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:33:02,759.759 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:33:02,807.807 INFO    ] [publish_status] Message added to stream with ID: 1781298182769-0
[2026-06-13 02:33:02,810.810 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}}', 'timestamp': '2026-06-12T21:03:02.753109Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298182769-0)
[2026-06-13 02:33:03,207.207 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:33:03,210.210 INFO    ] 200
[2026-06-13 02:33:03,212.212 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"},{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","status":"false","rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:33:03,215.215 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:33:03,218.218 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:06,250.250 INFO    ] 200
[2026-06-13 02:33:06,251.251 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:06,253.253 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:09,295.295 INFO    ] 200
[2026-06-13 02:33:09,297.297 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:09,299.299 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:12,361.361 INFO    ] 200
[2026-06-13 02:33:12,363.363 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:12,364.364 INFO    ] Please close door 2
[2026-06-13 02:33:12,366.366 INFO    ] Please close door 2
[2026-06-13 02:33:12,367.367 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 02:33:12,369.369 INFO    ] 2026-06-13 02:33:12
[2026-06-13 02:33:12,370.370 INFO    ] playing audio file
[2026-06-13 02:33:12,382.382 INFO    ] 2026-06-13 02:33:12
[2026-06-13 02:33:12,384.384 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:33:12,386.386 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:33:12,471.471 INFO    ] [publish_status] Message added to stream with ID: 1781298192433-0
[2026-06-13 02:33:12,472.472 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}}', 'timestamp': '2026-06-12T21:03:12.383212Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298192433-0)
[2026-06-13 02:33:12,790.790 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:33:12,791.791 INFO    ] 200
[2026-06-13 02:33:12,792.792 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"},{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","status":"false","rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:33:12,794.794 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:33:12,797.797 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:15,862.862 INFO    ] 200
[2026-06-13 02:33:15,865.865 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:15,868.868 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 02:33:18,929.929 INFO    ] 200
[2026-06-13 02:33:18,931.931 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 2 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:33:18,933.933 INFO    ] {'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 2 is closed now', 'status': 'False', 'delay': 1000, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Header': 'Door 2 is closed now', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 02:33:21,992.992 INFO    ] 200
[2026-06-13 02:33:21,995.995 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 02:33:21,999.999 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:33:22,002.002 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:33:22,085.085 INFO    ] [publish_status] Message added to stream with ID: 1781298202045-0
[2026-06-13 02:33:22,087.087 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'OrderStatus', 'server_response': '{"rstatus": true, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "status": "True", "delay": 100, "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"}}', 'timestamp': '2026-06-12T21:03:21.997655Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298202045-0)
[2026-06-13 02:33:22,491.491 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, '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'}}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:33:22,494.494 INFO    ] 200
[2026-06-13 02:33:22,496.496 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"rstatus":true,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"voiceNote":"Transaction Completed","status":"true","delay":100,"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"}},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:33:22,499.499 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, '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'}}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:33:22,502.502 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, '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'}}
[2026-06-13 02:33:22,504.504 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,507.507 INFO    ] Order Completed 
[2026-06-13 02:33:22,509.509 INFO    ] Order Completed 
[2026-06-13 02:33:22,512.512 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 02:33:22,515.515 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,518.518 INFO    ] playing audio file
[2026-06-13 02:33:22,535.535 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,539.539 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, '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'}}
[2026-06-13 02:33:22,542.542 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,932.932 INFO    ] 200
[2026-06-13 02:33:22,935.935 INFO    ] {"res": true, "bill_amount": 248, "orderId": "TM08202203260613023127977", "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "unit_price": "10", "door_id": "", "mrp": "10", "name": "Modern kitchens Banana Chips 21gm per peice", "skuid": "4500648", "tray_id": "19", "sku_total": 20, "qty": 2, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "unit_price": "20", "door_id": "", "mrp": "20", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "skuid": "4500452", "tray_id": "24", "sku_total": 40, "qty": 2, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500610-5545.webp", "unit_price": "57", "door_id": "", "mrp": "60", "name": "The Drill Bite Coffee Cocoa 10g Protein per peice", "offer_desc": "5% OFF", "skuid": "4500610", "tray_id": "35", "sku_total": 57, "qty": "1", "offer_id": "4500610_0803"}, {"image_url": "https://images.tinymart.in/product/166327-5644.jpg", "unit_price": "36", "door_id": "", "mrp": "38", "name": "Epigamia Chocolate Milkshake 200g per peice", "offer_desc": "5% OFF", "skuid": "166327", "tray_id": "38", "sku_total": 36, "qty": "1", "offer_id": "166327_0803"}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": "20", "door_id": "", "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "skuid": "4500541", "tray_id": "39", "sku_total": 20, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "door_id": "", "mrp": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "tray_id": "40", "sku_total": 30, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500499-5719.webp", "unit_price": "20", "door_id": "", "mrp": "20", "name": "Heritage A1 Spiced Butter Milk180ml per peice", "skuid": "4500499", "tray_id": "42", "sku_total": 20, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "unit_price": "20", "door_id": "", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "skuid": "185993", "tray_id": "43", "sku_total": 20, "qty": 1, "offer_id": ""}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 243, "order_status": "", "userId": "6379699559", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 02:33:22,939.939 INFO    ] {'bill_amount': 248, 'orderId': 'TM08202203260613023127977', 'total_amount': 243, 'anomaly': 0, 'rstatus': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'tray_id': '19', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Modern kitchens Banana Chips 21gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'tray_id': '24', 'qty': 2, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 40, 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500610-5545.webp', 'skuid': '4500610', 'tray_id': '35', 'qty': '1', 'unit_price': '57', 'mrp': '60', 'offer_id': '4500610_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 57, 'name': 'The Drill Bite Coffee Cocoa 10g Protein per peice'}, {'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'skuid': '166327', 'tray_id': '38', 'qty': '1', 'unit_price': '36', 'mrp': '38', 'offer_id': '166327_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'tray_id': '39', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'tray_id': '40', 'qty': 1, 'unit_price': '30', 'mrp': '30', 'offer_id': '', 'door_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'skuid': '4500499', 'tray_id': '42', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'order_status': '', 'userId': '6379699559', 'res': True}
[2026-06-13 02:33:22,942.942 INFO    ] {'bill_amount': 248, 'orderId': 'TM08202203260613023127977', 'total_amount': 243, 'anomaly': 0, 'rstatus': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'tray_id': '19', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Modern kitchens Banana Chips 21gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'tray_id': '24', 'qty': 2, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 40, 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500610-5545.webp', 'skuid': '4500610', 'tray_id': '35', 'qty': '1', 'unit_price': '57', 'mrp': '60', 'offer_id': '4500610_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 57, 'name': 'The Drill Bite Coffee Cocoa 10g Protein per peice'}, {'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'skuid': '166327', 'tray_id': '38', 'qty': '1', 'unit_price': '36', 'mrp': '38', 'offer_id': '166327_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'tray_id': '39', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'tray_id': '40', 'qty': 1, 'unit_price': '30', 'mrp': '30', 'offer_id': '', 'door_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'skuid': '4500499', 'tray_id': '42', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'order_status': '', 'userId': '6379699559', 'res': True}
[2026-06-13 02:33:22,945.945 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,947.947 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,950.950 INFO    ] 130
[2026-06-13 02:33:22,952.952 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,955.955 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,957.957 INFO    ]  You had Picked Excess of 113 Your Bill Amount is 243
[2026-06-13 02:33:22,960.960 INFO    ]  You had Picked Excess of 113 Your Bill Amount is 243
[2026-06-13 02:33:22,962.962 INFO    ] b9dbb3f502637077cae273bb2d77e6e3
[2026-06-13 02:33:22,969.969 INFO    ] 2026-06-13 02:33:22
[2026-06-13 02:33:22,971.971 INFO    ] creating audio file
[2026-06-13 02:33:23,044.044 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 02:33:23,604.604 INFO    ] gTTS API call completed successfully
[2026-06-13 02:33:25,128.128 INFO    ] 2026-06-13 02:33:25
[2026-06-13 02:33:25,131.131 INFO    ] playing audio file
[2026-06-13 02:33:25,149.149 INFO    ] 2026-06-13 02:33:25
[2026-06-13 02:33:25,152.152 INFO    ] 2026-06-13 02:33:25
[2026-06-13 02:33:25,156.156 INFO    ] publish_status: order_id=TM08202203260613023127977
[2026-06-13 02:33:25,159.159 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023127977
[2026-06-13 02:33:25,228.228 INFO    ] [publish_status] Message added to stream with ID: 1781298205190-0
[2026-06-13 02:33:25,231.231 INFO    ] Published to order:TM08202203260613023127977: {'server_status': 'invoiceOrder', 'server_response': '{"bill_amount": 248, "orderId": "TM08202203260613023127977", "total_amount": 243, "anomaly": 0, "rstatus": true, "imei": "TM08202203", "cart_offer_desc": "", "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "tray_id": "19", "qty": 2, "unit_price": "10", "mrp": "10", "offer_id": "", "door_id": "", "sku_total": 20, "name": "Modern kitchens Banana Chips 21gm per peice"}, {"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "tray_id": "24", "qty": 2, "unit_price": "20", "mrp": "20", "offer_id": "", "door_id": "", "sku_total": 40, "name": "Bingo Chips Chilli Sprinkled 30gm per peice"}, {"image_url": "https://images.tinymart.in/product/4500610-5545.webp", "skuid": "4500610", "tray_id": "35", "qty": "1", "unit_price": "57", "mrp": "60", "offer_id": "4500610_0803", "door_id": "", "offer_desc": "5% OFF", "sku_total": 57, "name": "The Drill Bite Coffee Cocoa 10g Protein per peice"}, {"image_url": "https://images.tinymart.in/product/166327-5644.jpg", "skuid": "166327", "tray_id": "38", "qty": "1", "unit_price": "36", "mrp": "38", "offer_id": "166327_0803", "door_id": "", "offer_desc": "5% OFF", "sku_total": 36, "name": "Epigamia Chocolate Milkshake 200g per peice"}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "tray_id": "39", "qty": 1, "unit_price": "20", "mrp": "20", "offer_id": "", "door_id": "", "sku_total": 20, "name": "Cad bury Dairy Milk Chocolate 18gm per peice"}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "tray_id": "40", "qty": 1, "unit_price": "30", "mrp": "30", "offer_id": "", "door_id": "", "sku_total": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice"}, {"image_url": "https://images.tinymart.in/product/4500499-5719.webp", "skuid": "4500499", "tray_id": "42", "qty": 1, "unit_price": "20", "mrp": "20", "offer_id": "", "door_id": "", "sku_total": 20, "name": "Heritage A1 Spiced Butter Milk180ml per peice"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "tray_id": "43", "qty": 1, "unit_price": "20", "mrp": "20", "offer_id": "", "door_id": "", "sku_total": 20, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}], "order_status": "", "userId": "6379699559", "res": true}', 'timestamp': '2026-06-12T21:03:25.154255Z', 'order_id': 'TM08202203260613023127977'} (ID: 1781298205190-0)
[2026-06-13 02:33:25,354.354 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 248, 'orderId': 'TM08202203260613023127977', 'total_amount': 243, 'anomaly': 0, 'rstatus': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'tray_id': '19', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Modern kitchens Banana Chips 21gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'tray_id': '24', 'qty': 2, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 40, 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}, {'image_url': 'https://images.tinymart.in/product/4500610-5545.webp', 'skuid': '4500610', 'tray_id': '35', 'qty': '1', 'unit_price': '57', 'mrp': '60', 'offer_id': '4500610_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 57, 'name': 'The Drill Bite Coffee Cocoa 10g Protein per peice'}, {'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'skuid': '166327', 'tray_id': '38', 'qty': '1', 'unit_price': '36', 'mrp': '38', 'offer_id': '166327_0803', 'door_id': '', 'offer_desc': '5% OFF', 'sku_total': 36, 'name': 'Epigamia Chocolate Milkshake 200g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'tray_id': '39', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'tray_id': '40', 'qty': 1, 'unit_price': '30', 'mrp': '30', 'offer_id': '', 'door_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}, {'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'skuid': '4500499', 'tray_id': '42', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'Heritage A1 Spiced Butter Milk180ml per peice'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'tray_id': '43', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'door_id': '', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'order_status': '', 'userId': '6379699559', 'res': True}, 'order_id': 'TM08202203260613023127977'}
[2026-06-13 02:33:25,357.357 INFO    ] 200
[2026-06-13 02:33:25,359.359 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"bill_amount":248,"orderId":"TM08202203260613023127977","total_amount":243,"anomaly":0,"rstatus":true,"imei":"TM08202203","cart_offer_desc":"","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","skuid":"4500648","tray_id":"19","qty":2,"unit_price":"10","mrp":"10","offer_id":"","door_id":"","sku_total":20,"name":"Modern kitchens Banana Chips 21gm per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","skuid":"4500452","tray_id":"24","qty":2,"unit_price":"20","mrp":"20","offer_id":"","door_id":"","sku_total":40,"name":"Bingo Chips Chilli Sprinkled 30gm per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500610-5545.webp","skuid":"4500610","tray_id":"35","qty":"1","unit_price":"57","mrp":"60","offer_id":"4500610_0803","door_id":"","offer_desc":"5% OFF","sku_total":57,"name":"The Drill Bite Coffee Cocoa 10g Protein per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/166327-5644.jpg","skuid":"166327","tray_id":"38","qty":"1","unit_price":"36","mrp":"38","offer_id":"166327_0803","door_id":"","offer_desc":"5% OFF","sku_total":36,"name":"Epigamia Chocolate Milkshake 200g per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","skuid":"4500541","tray_id":"39","qty":1,"unit_price":"20","mrp":"20","offer_id":"","door_id":"","sku_total":20,"name":"Cad bury Dairy Milk Chocolate 18gm per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","skuid":"186084","tray_id":"40","qty":1,"unit_price":"30","mrp":"30","offer_id":"","door_id":"","sku_total":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500499-5719.webp","skuid":"4500499","tray_id":"42","qty":1,"unit_price":"20","mrp":"20","offer_id":"","door_id":"","sku_total":20,"name":"Heritage A1 Spiced Butter Milk180ml per peice"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","skuid":"185993","tray_id":"43","qty":1,"unit_price":"20","mrp":"20","offer_id":"","door_id":"","sku_total":20,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}],"order_status":"","userId":"6379699559","res":true},"order_id":"TM08202203260613023127977"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:33:25,363.363 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 248, 'orderId': 'TM08202203260613023127977', 'total_amount': 243, 'anomaly': 0, 'rstatus': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'skus': [{'skuid': '4500648', 'door_id': '', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 20, 'tray_id': '19'}, {'skuid': '4500452', 'door_id': '', 'qty': 2, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'sku_total': 40, 'tray_id': '24'}, {'skuid': '4500610', 'door_id': '', 'qty': '1', 'unit_price': '57', 'mrp': '60', 'name': 'The Drill Bite Coffee Cocoa 10g Protein per peice', 'offer_id': '4500610_0803', 'image_url': 'https://images.tinymart.in/product/4500610-5545.webp', 'offer_desc': '5% OFF', 'sku_total': 57, 'tray_id': '35'}, {'skuid': '166327', 'door_id': '', 'qty': '1', 'unit_price': '36', 'mrp': '38', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'offer_id': '166327_0803', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'offer_desc': '5% OFF', 'sku_total': 36, 'tray_id': '38'}, {'skuid': '4500541', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'tray_id': '39'}, {'skuid': '186084', 'door_id': '', 'qty': 1, 'unit_price': '30', 'mrp': '30', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'tray_id': '40'}, {'skuid': '4500499', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice', 'sku_total': 20, 'tray_id': '42'}, {'skuid': '185993', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'tray_id': '43'}], 'order_status': '', 'userId': '6379699559', 'res': True}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:33:25,367.367 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 248, 'orderId': 'TM08202203260613023127977', 'total_amount': 243, 'anomaly': 0, 'rstatus': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'skus': [{'skuid': '4500648', 'door_id': '', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 20, 'tray_id': '19'}, {'skuid': '4500452', 'door_id': '', 'qty': 2, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'sku_total': 40, 'tray_id': '24'}, {'skuid': '4500610', 'door_id': '', 'qty': '1', 'unit_price': '57', 'mrp': '60', 'name': 'The Drill Bite Coffee Cocoa 10g Protein per peice', 'offer_id': '4500610_0803', 'image_url': 'https://images.tinymart.in/product/4500610-5545.webp', 'offer_desc': '5% OFF', 'sku_total': 57, 'tray_id': '35'}, {'skuid': '166327', 'door_id': '', 'qty': '1', 'unit_price': '36', 'mrp': '38', 'name': 'Epigamia Chocolate Milkshake 200g per peice', 'offer_id': '166327_0803', 'image_url': 'https://images.tinymart.in/product/166327-5644.jpg', 'offer_desc': '5% OFF', 'sku_total': 36, 'tray_id': '38'}, {'skuid': '4500541', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'tray_id': '39'}, {'skuid': '186084', 'door_id': '', 'qty': 1, 'unit_price': '30', 'mrp': '30', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'tray_id': '40'}, {'skuid': '4500499', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500499-5719.webp', 'name': 'Heritage A1 Spiced Butter Milk180ml per peice', 'sku_total': 20, 'tray_id': '42'}, {'skuid': '185993', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'tray_id': '43'}], 'order_status': '', 'userId': '6379699559', 'res': True}, 'order_id': 'TM08202203260613023127977'}}
[2026-06-13 02:33:25,369.369 INFO    ] 2026-06-13 02:33:25
[2026-06-13 02:33:25,916.916 INFO    ] 200
[2026-06-13 02:33:25,919.919 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 02:33:25,922.922 INFO    ] 2026-06-13 02:33:25
[2026-06-13 02:33:26,033.033 INFO    ] 200
[2026-06-13 02:33:26,036.036 INFO    ] True
[2026-06-13 02:33:26,038.038 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613023127977
[2026-06-13 02:33:26,042.042 INFO    ] start order file deleted
[2026-06-13 02:33:26,045.045 INFO    ] Checking for system updates...
[2026-06-13 02:33:26,085.085 INFO    ] 200
[2026-06-13 02:33:26,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:26,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:33:26,148.148 INFO    ] No update needed
[2026-06-13 02:33:26,151.151 INFO    ] Checking for camera pi updates...
[2026-06-13 02:33:26,185.185 INFO    ] 200
[2026-06-13 02:33:26,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:26,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:33:26,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:33:26,272.272 INFO    ] No camera update needed
[2026-06-13 02:33:26,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:33:26,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:33:26,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:33:26,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:33:28,330.330 INFO    ] ================================================
[2026-06-13 02:33:28,345.345 INFO    ] Launching Daemon at Sat Jun 13 02:33:28 IST 2026
[2026-06-13 02:33:28,356.356 INFO    ] ================================================
[2026-06-13 02:33:28,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:33:28
[2026-06-13 02:33:29,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:33:29,157.157 INFO    ] Initializing speech engine...
[2026-06-13 02:33:29,168.168 INFO    ] 2026-06-13 02:33:29
[2026-06-13 02:33:29,375.375 INFO    ] 2026-06-13 02:33:29
[2026-06-13 02:33:29,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:33:29,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:33:29,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:33:29,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:33:29,896.896 INFO    ] time= 13/06/2026 02:33:29
[2026-06-13 02:33:29,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:33:29,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:33:30,017.017 INFO    ] No existing commands found in stream
[2026-06-13 02:33:35,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:33:35,030.030 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 02:33:35,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:33:35,912.912 INFO    ] Checking for system updates...
[2026-06-13 02:33:35,934.934 INFO    ] 200
[2026-06-13 02:33:35,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:35,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:33:35,969.969 INFO    ] No update needed
[2026-06-13 02:33:35,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 02:33:35,990.990 INFO    ] 200
[2026-06-13 02:33:35,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:36,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:33:36,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:33:36,058.058 INFO    ] No camera update needed
[2026-06-13 02:33:36,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:33:36,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:33:36,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:33:36,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:33:38,106.106 INFO    ] ================================================
[2026-06-13 02:33:38,121.121 INFO    ] Launching Daemon at Sat Jun 13 02:33:38 IST 2026
[2026-06-13 02:33:38,131.131 INFO    ] ================================================
[2026-06-13 02:33:38,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:33:38
[2026-06-13 02:33:38,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:33:38,941.941 INFO    ] Initializing speech engine...
[2026-06-13 02:33:38,954.954 INFO    ] 2026-06-13 02:33:38
[2026-06-13 02:33:39,175.175 INFO    ] 2026-06-13 02:33:39
[2026-06-13 02:33:39,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:33:39,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:33:39,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:33:39,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:33:39,607.607 INFO    ] time= 13/06/2026 02:33:39
[2026-06-13 02:33:39,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:33:39,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:33:39,742.742 INFO    ] No existing commands found in stream
[2026-06-13 02:33:44,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:33:44,756.756 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 02:33:48,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:33:48,637.637 INFO    ] Checking for system updates...
[2026-06-13 02:33:48,659.659 INFO    ] 200
[2026-06-13 02:33:48,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:48,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:33:48,692.692 INFO    ] No update needed
[2026-06-13 02:33:48,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 02:33:48,714.714 INFO    ] 200
[2026-06-13 02:33:48,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:33:48,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:33:48,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:33:48,777.777 INFO    ] No camera update needed
[2026-06-13 02:33:48,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:33:48,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:33:48,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:33:48,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:33:50,824.824 INFO    ] ================================================
[2026-06-13 02:33:50,840.840 INFO    ] Launching Daemon at Sat Jun 13 02:33:50 IST 2026
[2026-06-13 02:33:50,851.851 INFO    ] ================================================
[2026-06-13 02:33:51,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:33:51
[2026-06-13 02:33:51,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:33:51,641.641 INFO    ] Initializing speech engine...
[2026-06-13 02:33:51,644.644 INFO    ] 2026-06-13 02:33:51
[2026-06-13 02:33:51,856.856 INFO    ] 2026-06-13 02:33:51
[2026-06-13 02:33:51,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:33:52,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:33:52,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:33:52,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:33:52,283.283 INFO    ] time= 13/06/2026 02:33:52
[2026-06-13 02:33:52,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:33:52,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:33:52,442.442 INFO    ] No existing commands found in stream
[2026-06-13 02:33:57,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:33:57,456.456 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 02:34:01,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:34:01,139.139 INFO    ] Checking for system updates...
[2026-06-13 02:34:01,186.186 INFO    ] 200
[2026-06-13 02:34:01,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:01,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:01,245.245 INFO    ] No update needed
[2026-06-13 02:34:01,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:01,301.301 INFO    ] 200
[2026-06-13 02:34:01,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:01,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:01,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:01,392.392 INFO    ] No camera update needed
[2026-06-13 02:34:01,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:01,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:01,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:01,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:34:03,442.442 INFO    ] ================================================
[2026-06-13 02:34:03,457.457 INFO    ] Launching Daemon at Sat Jun 13 02:34:03 IST 2026
[2026-06-13 02:34:03,467.467 INFO    ] ================================================
[2026-06-13 02:34:03,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:34:03
[2026-06-13 02:34:04,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:34:04,610.610 INFO    ] Initializing speech engine...
[2026-06-13 02:34:04,626.626 INFO    ] 2026-06-13 02:34:04
[2026-06-13 02:34:04,912.912 INFO    ] 2026-06-13 02:34:04
[2026-06-13 02:34:04,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:34:05,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:34:05,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:34:05,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:34:05,216.216 INFO    ] time= 13/06/2026 02:34:05
[2026-06-13 02:34:05,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:34:05,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:34:05,346.346 INFO    ] No existing commands found in stream
[2026-06-13 02:34:10,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:34:10,363.363 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 02:34:12,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:34:12,983.983 INFO    ] Checking for system updates...
[2026-06-13 02:34:13,003.003 INFO    ] 200
[2026-06-13 02:34:13,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:13,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:34:13,037.037 INFO    ] No update needed
[2026-06-13 02:34:13,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:13,058.058 INFO    ] 200
[2026-06-13 02:34:13,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:13,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:13,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:13,106.106 INFO    ] No camera update needed
[2026-06-13 02:34:13,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:13,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:13,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:13,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:34:15,153.153 INFO    ] ================================================
[2026-06-13 02:34:15,168.168 INFO    ] Launching Daemon at Sat Jun 13 02:34:15 IST 2026
[2026-06-13 02:34:15,178.178 INFO    ] ================================================
[2026-06-13 02:34:15,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:34:15
[2026-06-13 02:34:16,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:34:16,602.602 INFO    ] Initializing speech engine...
[2026-06-13 02:34:16,611.611 INFO    ] 2026-06-13 02:34:16
[2026-06-13 02:34:16,857.857 INFO    ] 2026-06-13 02:34:16
[2026-06-13 02:34:16,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:34:17,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:34:17,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:34:17,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:34:17,193.193 INFO    ] time= 13/06/2026 02:34:17
[2026-06-13 02:34:17,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:34:17,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:34:17,303.303 INFO    ] No existing commands found in stream
[2026-06-13 02:34:22,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:34:22,318.318 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 02:34:24,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:34:24,132.132 INFO    ] Checking for system updates...
[2026-06-13 02:34:24,153.153 INFO    ] 200
[2026-06-13 02:34:24,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:24,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:24,190.190 INFO    ] No update needed
[2026-06-13 02:34:24,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:24,211.211 INFO    ] 200
[2026-06-13 02:34:24,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:24,236.236 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:24,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:24,277.277 INFO    ] No camera update needed
[2026-06-13 02:34:24,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:24,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:24,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:24,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:34:26,327.327 INFO    ] ================================================
[2026-06-13 02:34:26,343.343 INFO    ] Launching Daemon at Sat Jun 13 02:34:26 IST 2026
[2026-06-13 02:34:26,354.354 INFO    ] ================================================
[2026-06-13 02:34:26,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:34:26
[2026-06-13 02:34:27,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:34:27,145.145 INFO    ] Initializing speech engine...
[2026-06-13 02:34:27,155.155 INFO    ] 2026-06-13 02:34:27
[2026-06-13 02:34:27,369.369 INFO    ] 2026-06-13 02:34:27
[2026-06-13 02:34:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:34:27,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:34:27,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:34:27,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:34:27,761.761 INFO    ] time= 13/06/2026 02:34:27
[2026-06-13 02:34:27,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:34:27,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:34:27,921.921 INFO    ] No existing commands found in stream
[2026-06-13 02:34:32,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:34:32,935.935 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 02:34:37,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:34:37,121.121 INFO    ] Checking for system updates...
[2026-06-13 02:34:37,143.143 INFO    ] 200
[2026-06-13 02:34:37,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:37,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:34:37,176.176 INFO    ] No update needed
[2026-06-13 02:34:37,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:37,197.197 INFO    ] 200
[2026-06-13 02:34:37,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:37,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:37,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:34:37,263.263 INFO    ] No camera update needed
[2026-06-13 02:34:37,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:37,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:37,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:37,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:34:39,311.311 INFO    ] ================================================
[2026-06-13 02:34:39,327.327 INFO    ] Launching Daemon at Sat Jun 13 02:34:39 IST 2026
[2026-06-13 02:34:39,338.338 INFO    ] ================================================
[2026-06-13 02:34:39,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:34:39
[2026-06-13 02:34:40,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:34:40,185.185 INFO    ] Initializing speech engine...
[2026-06-13 02:34:40,195.195 INFO    ] 2026-06-13 02:34:40
[2026-06-13 02:34:40,402.402 INFO    ] 2026-06-13 02:34:40
[2026-06-13 02:34:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:34:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:34:40,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:34:40,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:34:40,818.818 INFO    ] time= 13/06/2026 02:34:40
[2026-06-13 02:34:40,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:34:40,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:34:40,917.917 INFO    ] No existing commands found in stream
[2026-06-13 02:34:45,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:34:45,932.932 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 02:34:48,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:34:48,024.024 INFO    ] Checking for system updates...
[2026-06-13 02:34:48,045.045 INFO    ] 200
[2026-06-13 02:34:48,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:48,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:48,079.079 INFO    ] No update needed
[2026-06-13 02:34:48,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:48,100.100 INFO    ] 200
[2026-06-13 02:34:48,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:48,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:48,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:34:48,161.161 INFO    ] No camera update needed
[2026-06-13 02:34:48,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:48,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:48,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:48,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:34:50,208.208 INFO    ] ================================================
[2026-06-13 02:34:50,224.224 INFO    ] Launching Daemon at Sat Jun 13 02:34:50 IST 2026
[2026-06-13 02:34:50,235.235 INFO    ] ================================================
[2026-06-13 02:34:50,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:34:50
[2026-06-13 02:34:50,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:34:51,036.036 INFO    ] Initializing speech engine...
[2026-06-13 02:34:51,047.047 INFO    ] 2026-06-13 02:34:51
[2026-06-13 02:34:51,262.262 INFO    ] 2026-06-13 02:34:51
[2026-06-13 02:34:51,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:34:51,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:34:51,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:34:51,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:34:51,638.638 INFO    ] time= 13/06/2026 02:34:51
[2026-06-13 02:34:51,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:34:51,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:34:51,818.818 INFO    ] No existing commands found in stream
[2026-06-13 02:34:56,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:34:56,832.832 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 02:34:58,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:34:58,073.073 INFO    ] Checking for system updates...
[2026-06-13 02:34:58,094.094 INFO    ] 200
[2026-06-13 02:34:58,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:58,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:34:58,127.127 INFO    ] No update needed
[2026-06-13 02:34:58,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 02:34:58,150.150 INFO    ] 200
[2026-06-13 02:34:58,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:34:58,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:34:58,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:34:58,214.214 INFO    ] No camera update needed
[2026-06-13 02:34:58,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:34:58,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:34:58,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:34:58,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:35:00,263.263 INFO    ] ================================================
[2026-06-13 02:35:00,281.281 INFO    ] Launching Daemon at Sat Jun 13 02:35:00 IST 2026
[2026-06-13 02:35:00,293.293 INFO    ] ================================================
[2026-06-13 02:35:00,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:35:00
[2026-06-13 02:35:00,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:35:01,089.089 INFO    ] Initializing speech engine...
[2026-06-13 02:35:01,094.094 INFO    ] 2026-06-13 02:35:01
[2026-06-13 02:35:01,275.275 INFO    ] 2026-06-13 02:35:01
[2026-06-13 02:35:01,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:35:01,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:35:01,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:35:01,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:35:01,611.611 INFO    ] time= 13/06/2026 02:35:01
[2026-06-13 02:35:01,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:35:01,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:35:01,660.660 INFO    ] No existing commands found in stream
[2026-06-13 02:35:06,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:35:06,674.674 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 02:35:08,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:35:08,786.786 INFO    ] Checking for system updates...
[2026-06-13 02:35:08,807.807 INFO    ] 200
[2026-06-13 02:35:08,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:08,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:08,841.841 INFO    ] No update needed
[2026-06-13 02:35:08,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 02:35:08,863.863 INFO    ] 200
[2026-06-13 02:35:08,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:08,889.889 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:35:08,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:08,931.931 INFO    ] No camera update needed
[2026-06-13 02:35:08,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:35:08,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:35:08,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:35:08,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:35:10,981.981 INFO    ] ================================================
[2026-06-13 02:35:11,997.997 INFO    ] Launching Daemon at Sat Jun 13 02:35:10 IST 2026
[2026-06-13 02:35:11,008.008 INFO    ] ================================================
[2026-06-13 02:35:11,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:35:11
[2026-06-13 02:35:12,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:35:12,448.448 INFO    ] Initializing speech engine...
[2026-06-13 02:35:12,455.455 INFO    ] 2026-06-13 02:35:12
[2026-06-13 02:35:12,745.745 INFO    ] 2026-06-13 02:35:12
[2026-06-13 02:35:12,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:35:13,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:35:13,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:35:13,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:35:13,199.199 INFO    ] time= 13/06/2026 02:35:13
[2026-06-13 02:35:13,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:35:13,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:35:13,346.346 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 02:35:13,356.356 INFO    ] Checking historical command: ID=1781298311888-0
[2026-06-13 02:35:13,404.404 INFO    ] process_and_cleanup_command: msg_id=1781298311888-0
[2026-06-13 02:35:13,451.451 INFO    ] is_command_expired: timestamp=2026-06-12T21:05:11.744Z, expiry=30s
[2026-06-13 02:35:13,629.629 INFO    ] Command removed from stream: 1781298311888-0. returning for processing...
[2026-06-13 02:35:13,689.689 INFO    ] ***** get_valid_command
[2026-06-13 02:35:13,741.741 INFO    ] {'timeout': '10', 'timestamp': '2026-06-12T21:05:11.744Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1781298311744-dp0nllroy","orderId":"TM08202203260613023241084","is_vending":false}', 'source': 'webapp'}
[2026-06-13 02:35:13,787.787 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613023241084', 'is_vending': False, 'request_id': 'start-order-1781298311744-dp0nllroy'}
[2026-06-13 02:35:13,798.798 INFO    ] Handling start order...
[2026-06-13 02:35:13,802.802 INFO    ] handle_start_order_command
[2026-06-13 02:35:13,876.876 INFO    ] _send_start_order_success: request_id=start-order-1781298311744-dp0nllroy, order_id=TM08202203260613023241084
[2026-06-13 02:35:13,936.936 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 02:35:13,994.994 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781298313946-0
[2026-06-13 02:35:14,012.012 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 02:35:14,050.050 INFO    ] Checking for system updates...
[2026-06-13 02:35:14,100.100 INFO    ] 200
[2026-06-13 02:35:14,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:14,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:14,262.262 INFO    ] No update needed
[2026-06-13 02:35:14,268.268 INFO    ] Checking for camera pi updates...
[2026-06-13 02:35:14,309.309 INFO    ] 200
[2026-06-13 02:35:14,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:14,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:35:14,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:14,412.412 INFO    ] No camera update needed
[2026-06-13 02:35:14,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:35:14,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:35:14,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:35:14,447.447 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 02:35:14,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:35:16,495.495 INFO    ] ================================================
[2026-06-13 02:35:16,511.511 INFO    ] Launching Daemon at Sat Jun 13 02:35:16 IST 2026
[2026-06-13 02:35:16,523.523 INFO    ] ================================================
[2026-06-13 02:35:16,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:35:16
[2026-06-13 02:35:17,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:35:17,678.678 INFO    ] Initializing speech engine...
[2026-06-13 02:35:17,691.691 INFO    ] 2026-06-13 02:35:17
[2026-06-13 02:35:17,983.983 INFO    ] 2026-06-13 02:35:17
[2026-06-13 02:35:18,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:35:18,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:35:18,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:35:18,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:35:18,340.340 INFO    ] time= 13/06/2026 02:35:18
[2026-06-13 02:35:18,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:35:18,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:35:18,423.423 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 02:35:18,433.433 INFO    ] Checking historical command: ID=1781298313946-0
[2026-06-13 02:35:18,438.438 INFO    ] process_and_cleanup_command: msg_id=1781298313946-0
[2026-06-13 02:35:18,445.445 INFO    ] is_command_expired: timestamp=2026-06-12T21:05:13.888297Z, expiry=30s
[2026-06-13 02:35:18,621.621 INFO    ] Command removed from stream: 1781298313946-0. returning for processing...
[2026-06-13 02:35:18,666.666 INFO    ] ***** get_valid_command
[2026-06-13 02:35:18,695.695 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781298311744-dp0nllroy', 'status': 'success', 'metadata_order_id': 'TM08202203260613023241084', 'imei': 'TM08202203', 'message': 'start-order success', 'timestamp': '2026-06-12T21:05:13.888297Z'}
[2026-06-13 02:35:18,702.702 INFO    ] Checking historical command: ID=1781298316459-0
[2026-06-13 02:35:18,723.723 INFO    ] process_and_cleanup_command: msg_id=1781298316459-0
[2026-06-13 02:35:18,731.731 INFO    ] is_command_expired: timestamp=2026-06-12T21:05:16.297Z, expiry=30s
[2026-06-13 02:35:18,842.842 INFO    ] Command removed from stream: 1781298316459-0. returning for processing...
[2026-06-13 02:35:18,885.885 INFO    ] ***** get_valid_command
[2026-06-13 02:35:18,912.912 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1781298316297-u0e6krlz9","orderId":"TM08202203260613023241084","is_vending":false,"accessCode":"86833876"}', 'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-12T21:05:16.297Z'}
[2026-06-13 02:35:18,967.967 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613023241084', 'request_id': 'process-order-1781298316297-u0e6krlz9', 'accessCode': '86833876'}
[2026-06-13 02:35:19,014.014 INFO    ] Handling process order...
[2026-06-13 02:35:19,023.023 INFO    ] Processing process-order command...
[2026-06-13 02:35:19,090.090 INFO    ] 🔍 Lock file Order ID: TM08202203260613023241084, TS: 2026-06-13 02:35:13
[2026-06-13 02:35:19,165.165 INFO    ] ✅ Order lock valid for TM08202203260613023241084
[2026-06-13 02:35:19,210.210 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 02:35:19,259.259 INFO    ] processing access code 86833876 for order TM08202203260613023241084
[2026-06-13 02:35:19,263.263 INFO    ] 🔍 Lock file Order ID: TM08202203260613023241084, TS: 2026-06-13 02:35:13
[2026-06-13 02:35:19,276.276 INFO    ] ✅ Order lock valid for TM08202203260613023241084
[2026-06-13 02:35:19,279.279 INFO    ] 2026-06-13 02:35:19
[2026-06-13 02:35:19,391.391 INFO    ] 200
[2026-06-13 02:35:19,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:19,446.446 INFO    ] 86833876
[2026-06-13 02:35:19,454.454 INFO    ] 2026-06-13 02:35:19
[2026-06-13 02:35:19,477.477 INFO    ] session id :824694561
[2026-06-13 02:35:19,516.516 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=86833876&imei=TM08202203&session_id=824694561
[2026-06-13 02:35:20,373.373 INFO    ] 200
[2026-06-13 02:35:20,386.386 INFO    ] {"data": {"mobile": "9341608339", "order_id": "TM08202203260613023241084", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Bingo Chips Chilli Sprinkled 30gm", "tray_id": "24", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "86833876", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 02:35:20,389.389 INFO    ] 20
[2026-06-13 02:35:20,392.392 INFO    ] TM08202203260613023241084
[2026-06-13 02:35:20,395.395 INFO    ] 9341608339
[2026-06-13 02:35:20,398.398 INFO    ] 2026-06-13 02:35:20
[2026-06-13 02:35:20,401.401 INFO    ] Door Opening for user mobile ending with  eight three three nine 
[2026-06-13 02:35:20,404.404 INFO    ] Door Opening for user mobile ending with  eight three three nine 
[2026-06-13 02:35:20,410.410 INFO    ] 74033e8738c87391fdd5a0e1e51fa160
[2026-06-13 02:35:20,422.422 INFO    ] 2026-06-13 02:35:20
[2026-06-13 02:35:20,426.426 INFO    ] creating audio file
[2026-06-13 02:35:20,811.811 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 02:35:21,212.212 INFO    ] gTTS API call completed successfully
[2026-06-13 02:35:21,887.887 INFO    ] 2026-06-13 02:35:21
[2026-06-13 02:35:21,888.888 INFO    ] playing audio file
[2026-06-13 02:35:21,899.899 INFO    ] 2026-06-13 02:35:21
[2026-06-13 02:35:21,901.901 INFO    ] 2026-06-13 02:35:21
[2026-06-13 02:35:21,903.903 INFO    ] publish_status: order_id=TM08202203260613023241084
[2026-06-13 02:35:21,904.904 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023241084
[2026-06-13 02:35:21,949.949 INFO    ] [publish_status] Message added to stream with ID: 1781298321912-0
[2026-06-13 02:35:21,950.950 INFO    ] Published to order:TM08202203260613023241084: {'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"access_code": "86833876", "mobile": "9341608339", "proposed_sku_json": [{"sku_total": 20, "mrp": "20", "skuid": "4500452", "name": "Bingo Chips Chilli Sprinkled 30gm", "offer_id": "", "door_id": "1", "offer_desc": "", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "qty": 1, "unit_price": 20}], "order_id": "TM08202203260613023241084", "bill_amount": "20", "invoice_bill": "20"}}', 'order_id': 'TM08202203260613023241084', 'timestamp': '2026-06-12T21:05:21.901870Z'} (ID: 1781298321912-0)
[2026-06-13 02:35:22,246.246 INFO    ] {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'access_code': '86833876', 'mobile': '9341608339', 'proposed_sku_json': [{'sku_total': 20, 'mrp': '20', 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm', 'offer_id': '', 'door_id': '1', 'offer_desc': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'qty': 1, 'unit_price': 20}], 'order_id': 'TM08202203260613023241084', 'bill_amount': '20', 'invoice_bill': '20'}}, 'order_id': 'TM08202203260613023241084'}
[2026-06-13 02:35:22,247.247 INFO    ] 200
[2026-06-13 02:35:22,248.248 INFO    ] {"data":{"server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"access_code":"86833876","mobile":"9341608339","proposed_sku_json":[{"sku_total":20,"mrp":"20","skuid":"4500452","name":"Bingo Chips Chilli Sprinkled 30gm","offer_id":"","door_id":"1","offer_desc":"","tray_id":"24","image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","qty":1,"unit_price":20}],"order_id":"TM08202203260613023241084","bill_amount":"20","invoice_bill":"20"}},"order_id":"TM08202203260613023241084"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:35:22,250.250 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'access_code': '86833876', 'mobile': '9341608339', 'proposed_sku_json': [{'sku_total': 20, 'mrp': '20', 'skuid': '4500452', 'unit_price': 20, 'name': 'Bingo Chips Chilli Sprinkled 30gm', 'door_id': '1', 'offer_id': '', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'qty': 1, 'offer_desc': ''}], 'order_id': 'TM08202203260613023241084', 'bill_amount': '20', 'invoice_bill': '20'}}, 'order_id': 'TM08202203260613023241084'}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-06-13 02:35:22,251.251 INFO    ] 2026-06-13 02:35:22
[2026-06-13 02:35:22,277.277 INFO    ] 200
[2026-06-13 02:35:22,279.279 INFO    ] True
[2026-06-13 02:35:22,364.364 INFO    ] 200
[2026-06-13 02:35:22,365.365 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 02:35:22,367.367 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 02:35:22,369.369 INFO    ] *** process_order ***
[2026-06-13 02:35:23,557.557 INFO    ] 200
[2026-06-13 02:35:23,559.559 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 02:35:23,560.560 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 02:35:23,561.561 INFO    ] *** process_order ***
[2026-06-13 02:35:23,563.563 INFO    ] publish_status: order_id=TM08202203260613023241084
[2026-06-13 02:35:23,564.564 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023241084
[2026-06-13 02:35:23,622.622 INFO    ] [publish_status] Message added to stream with ID: 1781298323586-0
[2026-06-13 02:35:23,624.624 INFO    ] Published to order:TM08202203260613023241084: {'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613023241084'} (ID: 1781298323586-0)
[2026-06-13 02:35:24,666.666 INFO    ] 2026-06-13 02:35:24
[2026-06-13 02:35:24,670.670 INFO    ] publish_status: order_id=TM08202203260613023241084
[2026-06-13 02:35:24,672.672 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023241084
[2026-06-13 02:35:24,726.726 INFO    ] [publish_status] Message added to stream with ID: 1781298324688-0
[2026-06-13 02:35:24,727.727 INFO    ] Published to order:TM08202203260613023241084: {'server_status': 'processOrder', 'server_response': '{"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "status": "True", "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613023241084', 'timestamp': '2026-06-12T21:05:24.668239Z'} (ID: 1781298324688-0)
[2026-06-13 02:35:24,829.829 INFO    ] {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613023241084'}
[2026-06-13 02:35:24,830.830 INFO    ] 200
[2026-06-13 02:35:24,831.831 INFO    ] {"data":{"server_status":"processOrder","server_response":{"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","status":"true","SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"delay":0,"SectionMain":{"Header":"Processing Order"}},"order_id":"TM08202203260613023241084"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:35:24,833.833 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202203260613023241084'}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-06-13 02:35:24,834.834 INFO    ] 2026-06-13 02:35:24
[2026-06-13 02:35:24,836.836 INFO    ] None
[2026-06-13 02:35:24,837.837 INFO    ] Opening Door now
[2026-06-13 02:35:24,838.838 INFO    ] Opening Door now
[2026-06-13 02:35:24,839.839 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 02:35:24,841.841 INFO    ] 2026-06-13 02:35:24
[2026-06-13 02:35:24,842.842 INFO    ] playing audio file
[2026-06-13 02:35:24,854.854 INFO    ] 2026-06-13 02:35:24
[2026-06-13 02:35:24,856.856 INFO    ] 2026-06-13 02:35:24
[2026-06-13 02:35:27,893.893 INFO    ] 200
[2026-06-13 02:35:27,895.895 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:35:27,896.896 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 02:35:30,949.949 INFO    ] 200
[2026-06-13 02:35:30,950.950 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:35:30,952.952 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 02:35:33,992.992 INFO    ] 200
[2026-06-13 02:35:33,993.993 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 02:35:33,995.995 INFO    ] Please close door 1
[2026-06-13 02:35:33,997.997 INFO    ] Please close door 1
[2026-06-13 02:35:33,999.999 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 02:35:34,000.000 INFO    ] 2026-06-13 02:35:33
[2026-06-13 02:35:34,002.002 INFO    ] playing audio file
[2026-06-13 02:35:34,013.013 INFO    ] 2026-06-13 02:35:34
[2026-06-13 02:35:34,015.015 INFO    ] publish_status: order_id=TM08202203260613023241084
[2026-06-13 02:35:34,017.017 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023241084
[2026-06-13 02:35:34,064.064 INFO    ] [publish_status] Message added to stream with ID: 1781298334027-0
[2026-06-13 02:35:34,065.065 INFO    ] Published to order:TM08202203260613023241084: {'server_status': 'OrderStatus', 'server_response': '{"error": {"code": 20001, "data": {}, "tmessage": "In Progress", "umessage": "In Progress"}, "rstatus": false, "SectionSKU": {"skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "status": "False", "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202203260613023241084', 'timestamp': '2026-06-12T21:05:34.014381Z'} (ID: 1781298334027-0)
[2026-06-13 02:35:34,396.396 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613023241084'}
[2026-06-13 02:35:34,398.398 INFO    ] 200
[2026-06-13 02:35:34,399.399 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"code":20001,"data":[],"tmessage":"In Progress","umessage":"In Progress"},"rstatus":false,"SectionSKU":{"skus":[{"qty":1,"name":"Bingo Chips Chilli Sprinkled 30gm"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 1","status":"false","SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202203260613023241084"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:35:34,401.401 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202203260613023241084'}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-06-13 02:35:34,403.403 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 02:35:37,460.460 INFO    ] 200
[2026-06-13 02:35:37,463.463 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 02:35:37,466.466 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 02:35:37,469.469 INFO    ] 2026-06-13 02:35:37
[2026-06-13 02:35:37,472.472 INFO    ] Order Completed 
[2026-06-13 02:35:37,474.474 INFO    ] Order Completed 
[2026-06-13 02:35:37,477.477 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 02:35:37,480.480 INFO    ] 2026-06-13 02:35:37
[2026-06-13 02:35:37,483.483 INFO    ] playing audio file
[2026-06-13 02:35:37,503.503 INFO    ] 2026-06-13 02:35:37
[2026-06-13 02:35:37,506.506 INFO    ] {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 02:35:37,510.510 INFO    ] 2026-06-13 02:35:37
[2026-06-13 02:35:39,194.194 INFO    ] 200
[2026-06-13 02:35:39,197.197 INFO    ] {"res": "True", "orderId": "TM08202203260613023241084", "skus": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "", "tray_id": "24", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 02:35:39,200.200 INFO    ] {'rstatus': True, 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'skus': [{'sku_total': 20.0, 'qty': 1, 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'unit_price': '20'}], 'anomaly': 0, 'orderId': 'TM08202203260613023241084'}
[2026-06-13 02:35:39,202.202 INFO    ] {'rstatus': True, 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'skus': [{'sku_total': 20.0, 'qty': 1, 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'unit_price': '20'}], 'anomaly': 0, 'orderId': 'TM08202203260613023241084'}
[2026-06-13 02:35:39,205.205 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,207.207 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,209.209 INFO    ] 20
[2026-06-13 02:35:39,212.212 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,214.214 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,216.216 INFO    ]  Your Bill Amount is 20
[2026-06-13 02:35:39,219.219 INFO    ]  Your Bill Amount is 20
[2026-06-13 02:35:39,221.221 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 02:35:39,224.224 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,226.226 INFO    ] playing audio file
[2026-06-13 02:35:39,244.244 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,247.247 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:39,251.251 INFO    ] publish_status: order_id=TM08202203260613023241084
[2026-06-13 02:35:39,254.254 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613023241084
[2026-06-13 02:35:39,297.297 INFO    ] [publish_status] Message added to stream with ID: 1781298339259-0
[2026-06-13 02:35:39,300.300 INFO    ] Published to order:TM08202203260613023241084: {'server_status': 'invoiceOrder', 'server_response': '{"rstatus": true, "res": "True", "total_amount": 20.0, "logic": "WBL", "skus": [{"sku_total": 20.0, "qty": 1, "skuid": "4500452", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "door_id": "", "mrp": "20", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "unit_price": "20"}], "anomaly": 0, "orderId": "TM08202203260613023241084"}', 'order_id': 'TM08202203260613023241084', 'timestamp': '2026-06-12T21:05:39.249240Z'} (ID: 1781298339259-0)
[2026-06-13 02:35:39,416.416 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'True', 'total_amount': 20.0, 'logic': 'WBL', 'skus': [{'sku_total': 20.0, 'qty': 1, 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'unit_price': '20'}], 'anomaly': 0, 'orderId': 'TM08202203260613023241084'}, 'order_id': 'TM08202203260613023241084'}
[2026-06-13 02:35:39,419.419 INFO    ] 200
[2026-06-13 02:35:39,422.422 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"rstatus":true,"res":"true","total_amount":20,"logic":"WBL","skus":[{"sku_total":20,"qty":1,"skuid":"4500452","name":"Bingo Chips Chilli Sprinkled 30gm per peice","door_id":"","mrp":"20","tray_id":"24","image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","unit_price":"20"}],"anomaly":0,"orderId":"TM08202203260613023241084"},"order_id":"TM08202203260613023241084"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 02:35:39,424.424 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'total_amount': 20, 'skus': [{'sku_total': 20, 'qty': 1, 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM08202203260613023241084'}, 'order_id': 'TM08202203260613023241084'}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-06-13 02:35:39,428.428 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'total_amount': 20, 'skus': [{'sku_total': 20, 'qty': 1, 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM08202203260613023241084'}, 'order_id': 'TM08202203260613023241084'}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-06-13 02:35:39,431.431 INFO    ] 2026-06-13 02:35:39
[2026-06-13 02:35:41,007.007 INFO    ] 200
[2026-06-13 02:35:41,011.011 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084", "TM08202203260613023241084"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 02:35:41,016.016 INFO    ] 2026-06-13 02:35:41
[2026-06-13 02:35:41,134.134 INFO    ] 200
[2026-06-13 02:35:41,137.137 INFO    ] True
[2026-06-13 02:35:41,141.141 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613023241084
[2026-06-13 02:35:41,145.145 INFO    ] start order file deleted
[2026-06-13 02:35:41,149.149 INFO    ] Checking for system updates...
[2026-06-13 02:35:41,193.193 INFO    ] 200
[2026-06-13 02:35:41,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:41,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:41,262.262 INFO    ] No update needed
[2026-06-13 02:35:41,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 02:35:41,307.307 INFO    ] 200
[2026-06-13 02:35:41,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:41,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:35:41,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:41,409.409 INFO    ] No camera update needed
[2026-06-13 02:35:41,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:35:41,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:35:41,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:35:41,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:35:43,476.476 INFO    ] ================================================
[2026-06-13 02:35:43,491.491 INFO    ] Launching Daemon at Sat Jun 13 02:35:43 IST 2026
[2026-06-13 02:35:43,502.502 INFO    ] ================================================
[2026-06-13 02:35:43,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:35:43
[2026-06-13 02:35:44,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:35:44,295.295 INFO    ] Initializing speech engine...
[2026-06-13 02:35:44,300.300 INFO    ] 2026-06-13 02:35:44
[2026-06-13 02:35:44,525.525 INFO    ] 2026-06-13 02:35:44
[2026-06-13 02:35:44,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:35:44,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:35:44,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:35:44,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:35:44,950.950 INFO    ] time= 13/06/2026 02:35:44
[2026-06-13 02:35:44,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:35:45,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:35:45,157.157 INFO    ] No existing commands found in stream
[2026-06-13 02:35:50,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:35:50,185.185 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 02:35:50,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:35:50,604.604 INFO    ] Checking for system updates...
[2026-06-13 02:35:50,624.624 INFO    ] 200
[2026-06-13 02:35:50,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:50,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:35:50,658.658 INFO    ] No update needed
[2026-06-13 02:35:50,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 02:35:50,680.680 INFO    ] 200
[2026-06-13 02:35:50,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:35:50,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:35:50,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:35:50,750.750 INFO    ] No camera update needed
[2026-06-13 02:35:50,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:35:50,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:35:50,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:35:50,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:35:52,800.800 INFO    ] ================================================
[2026-06-13 02:35:52,815.815 INFO    ] Launching Daemon at Sat Jun 13 02:35:52 IST 2026
[2026-06-13 02:35:52,826.826 INFO    ] ================================================
[2026-06-13 02:35:53,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:35:53
[2026-06-13 02:35:53,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:35:53,637.637 INFO    ] Initializing speech engine...
[2026-06-13 02:35:53,645.645 INFO    ] 2026-06-13 02:35:53
[2026-06-13 02:35:53,861.861 INFO    ] 2026-06-13 02:35:53
[2026-06-13 02:35:53,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:35:54,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:35:54,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:35:54,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:35:54,287.287 INFO    ] time= 13/06/2026 02:35:54
[2026-06-13 02:35:54,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:35:54,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:35:54,407.407 INFO    ] No existing commands found in stream
[2026-06-13 02:35:59,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:35:59,419.419 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 02:36:01,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:36:01,975.975 INFO    ] Checking for system updates...
[2026-06-13 02:36:02,023.023 INFO    ] 200
[2026-06-13 02:36:02,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:02,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:36:02,090.090 INFO    ] No update needed
[2026-06-13 02:36:02,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:02,133.133 INFO    ] 200
[2026-06-13 02:36:02,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:02,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:02,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:36:02,224.224 INFO    ] No camera update needed
[2026-06-13 02:36:02,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:02,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:02,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:04,289.289 INFO    ] ================================================
[2026-06-13 02:36:04,305.305 INFO    ] Launching Daemon at Sat Jun 13 02:36:04 IST 2026
[2026-06-13 02:36:04,316.316 INFO    ] ================================================
[2026-06-13 02:36:04,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:04
[2026-06-13 02:36:05,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:05,373.373 INFO    ] Initializing speech engine...
[2026-06-13 02:36:05,384.384 INFO    ] 2026-06-13 02:36:05
[2026-06-13 02:36:05,599.599 INFO    ] 2026-06-13 02:36:05
[2026-06-13 02:36:05,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:05,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:05,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:36:05,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:36:05,992.992 INFO    ] time= 13/06/2026 02:36:05
[2026-06-13 02:36:06,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:36:06,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:36:06,148.148 INFO    ] No existing commands found in stream
[2026-06-13 02:36:11,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:36:11,160.160 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 02:36:12,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:36:12,319.319 INFO    ] Checking for system updates...
[2026-06-13 02:36:12,340.340 INFO    ] 200
[2026-06-13 02:36:12,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:12,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:12,372.372 INFO    ] No update needed
[2026-06-13 02:36:12,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:12,393.393 INFO    ] 200
[2026-06-13 02:36:12,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:12,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:12,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:12,468.468 INFO    ] No camera update needed
[2026-06-13 02:36:12,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:12,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:12,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:12,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:14,516.516 INFO    ] ================================================
[2026-06-13 02:36:14,531.531 INFO    ] Launching Daemon at Sat Jun 13 02:36:14 IST 2026
[2026-06-13 02:36:14,542.542 INFO    ] ================================================
[2026-06-13 02:36:14,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:14
[2026-06-13 02:36:15,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:15,325.325 INFO    ] Initializing speech engine...
[2026-06-13 02:36:15,328.328 INFO    ] 2026-06-13 02:36:15
[2026-06-13 02:36:15,557.557 INFO    ] 2026-06-13 02:36:15
[2026-06-13 02:36:15,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:15,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:15,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:36:15,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:36:15,803.803 INFO    ] time= 13/06/2026 02:36:15
[2026-06-13 02:36:15,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:36:15,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:36:15,904.904 INFO    ] No existing commands found in stream
[2026-06-13 02:36:20,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:36:20,942.942 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 02:36:21,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:36:21,381.381 INFO    ] Checking for system updates...
[2026-06-13 02:36:21,402.402 INFO    ] 200
[2026-06-13 02:36:21,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:21,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:21,435.435 INFO    ] No update needed
[2026-06-13 02:36:21,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:21,456.456 INFO    ] 200
[2026-06-13 02:36:21,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:21,481.481 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:21,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:36:21,524.524 INFO    ] No camera update needed
[2026-06-13 02:36:21,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:21,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:21,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:21,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:23,571.571 INFO    ] ================================================
[2026-06-13 02:36:23,587.587 INFO    ] Launching Daemon at Sat Jun 13 02:36:23 IST 2026
[2026-06-13 02:36:23,597.597 INFO    ] ================================================
[2026-06-13 02:36:23,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:23
[2026-06-13 02:36:24,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:24,423.423 INFO    ] Initializing speech engine...
[2026-06-13 02:36:24,440.440 INFO    ] 2026-06-13 02:36:24
[2026-06-13 02:36:24,730.730 INFO    ] 2026-06-13 02:36:24
[2026-06-13 02:36:24,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:24,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:24,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:36:25,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:36:25,106.106 INFO    ] time= 13/06/2026 02:36:25
[2026-06-13 02:36:25,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:36:25,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:36:25,229.229 INFO    ] No existing commands found in stream
[2026-06-13 02:36:30,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:36:30,244.244 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 02:36:32,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:36:32,257.257 INFO    ] Checking for system updates...
[2026-06-13 02:36:32,281.281 INFO    ] 200
[2026-06-13 02:36:32,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:32,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:32,326.326 INFO    ] No update needed
[2026-06-13 02:36:32,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:32,352.352 INFO    ] 200
[2026-06-13 02:36:32,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:32,378.378 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:32,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:32,402.402 INFO    ] No camera update needed
[2026-06-13 02:36:32,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:32,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:32,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:32,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:34,450.450 INFO    ] ================================================
[2026-06-13 02:36:34,465.465 INFO    ] Launching Daemon at Sat Jun 13 02:36:34 IST 2026
[2026-06-13 02:36:34,477.477 INFO    ] ================================================
[2026-06-13 02:36:34,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:34
[2026-06-13 02:36:35,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:35,295.295 INFO    ] Initializing speech engine...
[2026-06-13 02:36:35,305.305 INFO    ] 2026-06-13 02:36:35
[2026-06-13 02:36:35,512.512 INFO    ] 2026-06-13 02:36:35
[2026-06-13 02:36:35,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:35,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:36:35,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:36:35,900.900 INFO    ] time= 13/06/2026 02:36:35
[2026-06-13 02:36:35,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:36:35,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:36:36,075.075 INFO    ] No existing commands found in stream
[2026-06-13 02:36:41,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:36:41,097.097 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 02:36:43,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:36:43,431.431 INFO    ] Checking for system updates...
[2026-06-13 02:36:43,452.452 INFO    ] 200
[2026-06-13 02:36:43,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:43,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:36:43,486.486 INFO    ] No update needed
[2026-06-13 02:36:43,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:43,507.507 INFO    ] 200
[2026-06-13 02:36:43,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:43,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:43,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:43,569.569 INFO    ] No camera update needed
[2026-06-13 02:36:43,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:43,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:43,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:43,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:45,616.616 INFO    ] ================================================
[2026-06-13 02:36:45,631.631 INFO    ] Launching Daemon at Sat Jun 13 02:36:45 IST 2026
[2026-06-13 02:36:45,642.642 INFO    ] ================================================
[2026-06-13 02:36:46,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:46
[2026-06-13 02:36:46,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:46,472.472 INFO    ] Initializing speech engine...
[2026-06-13 02:36:46,477.477 INFO    ] 2026-06-13 02:36:46
[2026-06-13 02:36:46,696.696 INFO    ] 2026-06-13 02:36:46
[2026-06-13 02:36:46,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:46,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:46,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:36:47,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:36:47,131.131 INFO    ] time= 13/06/2026 02:36:47
[2026-06-13 02:36:47,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:36:47,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:36:47,284.284 INFO    ] No existing commands found in stream
[2026-06-13 02:36:52,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:36:52,304.304 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 02:36:56,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:36:56,385.385 INFO    ] Checking for system updates...
[2026-06-13 02:36:56,406.406 INFO    ] 200
[2026-06-13 02:36:56,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:56,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:56,439.439 INFO    ] No update needed
[2026-06-13 02:36:56,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 02:36:56,460.460 INFO    ] 200
[2026-06-13 02:36:56,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:36:56,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:36:56,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:36:56,525.525 INFO    ] No camera update needed
[2026-06-13 02:36:56,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:36:56,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:36:56,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:36:56,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:36:58,573.573 INFO    ] ================================================
[2026-06-13 02:36:58,589.589 INFO    ] Launching Daemon at Sat Jun 13 02:36:58 IST 2026
[2026-06-13 02:36:58,599.599 INFO    ] ================================================
[2026-06-13 02:36:58,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:36:58
[2026-06-13 02:36:59,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:36:59,447.447 INFO    ] Initializing speech engine...
[2026-06-13 02:36:59,452.452 INFO    ] 2026-06-13 02:36:59
[2026-06-13 02:36:59,660.660 INFO    ] 2026-06-13 02:36:59
[2026-06-13 02:36:59,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:36:59,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:36:59,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:00,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:00,072.072 INFO    ] time= 13/06/2026 02:37:00
[2026-06-13 02:37:00,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:00,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:00,177.177 INFO    ] No existing commands found in stream
[2026-06-13 02:37:05,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:05,190.190 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 02:37:05,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:37:05,617.617 INFO    ] Checking for system updates...
[2026-06-13 02:37:05,639.639 INFO    ] 200
[2026-06-13 02:37:05,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:05,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:05,674.674 INFO    ] No update needed
[2026-06-13 02:37:05,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:05,698.698 INFO    ] 200
[2026-06-13 02:37:05,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:05,723.723 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:05,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:05,767.767 INFO    ] No camera update needed
[2026-06-13 02:37:05,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:05,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:05,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:05,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:37:07,815.815 INFO    ] ================================================
[2026-06-13 02:37:07,830.830 INFO    ] Launching Daemon at Sat Jun 13 02:37:07 IST 2026
[2026-06-13 02:37:07,841.841 INFO    ] ================================================
[2026-06-13 02:37:08,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:37:08
[2026-06-13 02:37:08,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:37:08,657.657 INFO    ] Initializing speech engine...
[2026-06-13 02:37:08,662.662 INFO    ] 2026-06-13 02:37:08
[2026-06-13 02:37:08,872.872 INFO    ] 2026-06-13 02:37:08
[2026-06-13 02:37:08,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:37:09,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:37:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:09,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:09,275.275 INFO    ] time= 13/06/2026 02:37:09
[2026-06-13 02:37:09,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:09,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:09,398.398 INFO    ] No existing commands found in stream
[2026-06-13 02:37:14,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:14,412.412 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 02:37:17,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:37:17,364.364 INFO    ] Checking for system updates...
[2026-06-13 02:37:17,384.384 INFO    ] 200
[2026-06-13 02:37:17,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:17,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:17,418.418 INFO    ] No update needed
[2026-06-13 02:37:17,419.419 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:17,439.439 INFO    ] 200
[2026-06-13 02:37:17,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:17,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:17,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:17,500.500 INFO    ] No camera update needed
[2026-06-13 02:37:17,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:17,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:17,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:37:19,549.549 INFO    ] ================================================
[2026-06-13 02:37:19,564.564 INFO    ] Launching Daemon at Sat Jun 13 02:37:19 IST 2026
[2026-06-13 02:37:19,575.575 INFO    ] ================================================
[2026-06-13 02:37:19,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:37:19
[2026-06-13 02:37:20,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:37:20,417.417 INFO    ] Initializing speech engine...
[2026-06-13 02:37:20,426.426 INFO    ] 2026-06-13 02:37:20
[2026-06-13 02:37:20,677.677 INFO    ] 2026-06-13 02:37:20
[2026-06-13 02:37:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:37:20,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:37:20,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:21,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:21,031.031 INFO    ] time= 13/06/2026 02:37:21
[2026-06-13 02:37:21,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:21,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:21,126.126 INFO    ] No existing commands found in stream
[2026-06-13 02:37:26,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:26,141.141 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 02:37:27,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:37:27,333.333 INFO    ] Checking for system updates...
[2026-06-13 02:37:27,354.354 INFO    ] 200
[2026-06-13 02:37:27,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:27,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:37:27,387.387 INFO    ] No update needed
[2026-06-13 02:37:27,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:27,408.408 INFO    ] 200
[2026-06-13 02:37:27,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:27,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:27,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:37:27,469.469 INFO    ] No camera update needed
[2026-06-13 02:37:27,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:27,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:27,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:27,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:37:29,517.517 INFO    ] ================================================
[2026-06-13 02:37:29,532.532 INFO    ] Launching Daemon at Sat Jun 13 02:37:29 IST 2026
[2026-06-13 02:37:29,543.543 INFO    ] ================================================
[2026-06-13 02:37:29,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:37:29
[2026-06-13 02:37:30,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:37:30,349.349 INFO    ] Initializing speech engine...
[2026-06-13 02:37:30,354.354 INFO    ] 2026-06-13 02:37:30
[2026-06-13 02:37:30,584.584 INFO    ] 2026-06-13 02:37:30
[2026-06-13 02:37:30,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:37:30,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:37:30,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:30,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:31,010.010 INFO    ] time= 13/06/2026 02:37:30
[2026-06-13 02:37:31,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:31,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:31,135.135 INFO    ] No existing commands found in stream
[2026-06-13 02:37:36,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:36,148.148 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 02:37:40,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:37:40,040.040 INFO    ] Checking for system updates...
[2026-06-13 02:37:40,060.060 INFO    ] 200
[2026-06-13 02:37:40,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:40,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:40,094.094 INFO    ] No update needed
[2026-06-13 02:37:40,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:40,118.118 INFO    ] 200
[2026-06-13 02:37:40,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:40,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:40,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:40,289.289 INFO    ] No camera update needed
[2026-06-13 02:37:40,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:40,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:40,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:40,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:37:42,336.336 INFO    ] ================================================
[2026-06-13 02:37:42,352.352 INFO    ] Launching Daemon at Sat Jun 13 02:37:42 IST 2026
[2026-06-13 02:37:42,362.362 INFO    ] ================================================
[2026-06-13 02:37:42,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:37:42
[2026-06-13 02:37:43,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:37:43,213.213 INFO    ] Initializing speech engine...
[2026-06-13 02:37:43,219.219 INFO    ] 2026-06-13 02:37:43
[2026-06-13 02:37:43,427.427 INFO    ] 2026-06-13 02:37:43
[2026-06-13 02:37:43,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:37:43,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:37:43,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:43,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:43,834.834 INFO    ] time= 13/06/2026 02:37:43
[2026-06-13 02:37:43,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:43,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:43,950.950 INFO    ] No existing commands found in stream
[2026-06-13 02:37:48,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:48,981.981 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 02:37:49,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:37:49,722.722 INFO    ] Checking for system updates...
[2026-06-13 02:37:49,743.743 INFO    ] 200
[2026-06-13 02:37:49,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:49,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:49,778.778 INFO    ] No update needed
[2026-06-13 02:37:49,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:49,799.799 INFO    ] 200
[2026-06-13 02:37:49,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:49,825.825 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:49,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:37:49,862.862 INFO    ] No camera update needed
[2026-06-13 02:37:49,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:49,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:49,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:49,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:37:51,903.903 INFO    ] ================================================
[2026-06-13 02:37:51,918.918 INFO    ] Launching Daemon at Sat Jun 13 02:37:51 IST 2026
[2026-06-13 02:37:51,928.928 INFO    ] ================================================
[2026-06-13 02:37:52,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:37:52
[2026-06-13 02:37:52,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:37:52,700.700 INFO    ] Initializing speech engine...
[2026-06-13 02:37:52,704.704 INFO    ] 2026-06-13 02:37:52
[2026-06-13 02:37:52,916.916 INFO    ] 2026-06-13 02:37:52
[2026-06-13 02:37:52,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:37:53,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:37:53,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:37:53,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:37:53,357.357 INFO    ] time= 13/06/2026 02:37:53
[2026-06-13 02:37:53,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:37:53,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:37:53,490.490 INFO    ] No existing commands found in stream
[2026-06-13 02:37:58,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:37:58,512.512 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 02:37:58,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:37:58,908.908 INFO    ] Checking for system updates...
[2026-06-13 02:37:58,929.929 INFO    ] 200
[2026-06-13 02:37:58,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:58,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:37:58,962.962 INFO    ] No update needed
[2026-06-13 02:37:58,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 02:37:58,982.982 INFO    ] 200
[2026-06-13 02:37:58,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:37:59,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:37:59,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:37:59,043.043 INFO    ] No camera update needed
[2026-06-13 02:37:59,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:37:59,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:37:59,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:37:59,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:01,083.083 INFO    ] ================================================
[2026-06-13 02:38:01,092.092 INFO    ] Launching Daemon at Sat Jun 13 02:38:01 IST 2026
[2026-06-13 02:38:01,097.097 INFO    ] ================================================
[2026-06-13 02:38:01,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:01
[2026-06-13 02:38:01,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:02,021.021 INFO    ] Initializing speech engine...
[2026-06-13 02:38:02,031.031 INFO    ] 2026-06-13 02:38:02
[2026-06-13 02:38:02,264.264 INFO    ] 2026-06-13 02:38:02
[2026-06-13 02:38:02,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:02,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:02,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:02,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:02,580.580 INFO    ] time= 13/06/2026 02:38:02
[2026-06-13 02:38:02,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:02,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:02,692.692 INFO    ] No existing commands found in stream
[2026-06-13 02:38:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:38:07,719.719 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 02:38:10,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:38:10,400.400 INFO    ] Checking for system updates...
[2026-06-13 02:38:10,420.420 INFO    ] 200
[2026-06-13 02:38:10,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:10,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:10,453.453 INFO    ] No update needed
[2026-06-13 02:38:10,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 02:38:10,474.474 INFO    ] 200
[2026-06-13 02:38:10,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:10,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:38:10,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:10,554.554 INFO    ] No camera update needed
[2026-06-13 02:38:10,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:38:10,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:38:10,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:38:10,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:12,601.601 INFO    ] ================================================
[2026-06-13 02:38:12,616.616 INFO    ] Launching Daemon at Sat Jun 13 02:38:12 IST 2026
[2026-06-13 02:38:12,627.627 INFO    ] ================================================
[2026-06-13 02:38:12,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:12
[2026-06-13 02:38:13,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:13,483.483 INFO    ] Initializing speech engine...
[2026-06-13 02:38:13,491.491 INFO    ] 2026-06-13 02:38:13
[2026-06-13 02:38:13,714.714 INFO    ] 2026-06-13 02:38:13
[2026-06-13 02:38:13,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:13,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:13,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:14,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:14,119.119 INFO    ] time= 13/06/2026 02:38:14
[2026-06-13 02:38:14,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:14,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:14,228.228 INFO    ] No existing commands found in stream
[2026-06-13 02:38:19,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:38:19,240.240 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 02:38:22,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:38:22,322.322 INFO    ] Checking for system updates...
[2026-06-13 02:38:22,343.343 INFO    ] 200
[2026-06-13 02:38:22,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:22,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:38:22,376.376 INFO    ] No update needed
[2026-06-13 02:38:22,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 02:38:22,399.399 INFO    ] 200
[2026-06-13 02:38:22,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:22,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:38:22,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:38:22,474.474 INFO    ] No camera update needed
[2026-06-13 02:38:22,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:38:22,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:38:22,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:38:22,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:24,524.524 INFO    ] ================================================
[2026-06-13 02:38:24,539.539 INFO    ] Launching Daemon at Sat Jun 13 02:38:24 IST 2026
[2026-06-13 02:38:24,549.549 INFO    ] ================================================
[2026-06-13 02:38:24,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:24
[2026-06-13 02:38:25,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:25,325.325 INFO    ] Initializing speech engine...
[2026-06-13 02:38:25,329.329 INFO    ] 2026-06-13 02:38:25
[2026-06-13 02:38:25,522.522 INFO    ] 2026-06-13 02:38:25
[2026-06-13 02:38:25,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:25,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:25,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:25,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:25,814.814 INFO    ] time= 13/06/2026 02:38:25
[2026-06-13 02:38:25,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:25,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:25,914.914 INFO    ] No existing commands found in stream
[2026-06-13 02:38:30,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:38:30,951.951 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 02:38:33,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:38:33,018.018 INFO    ] Checking for system updates...
[2026-06-13 02:38:33,040.040 INFO    ] 200
[2026-06-13 02:38:33,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:33,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:33,074.074 INFO    ] No update needed
[2026-06-13 02:38:33,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 02:38:33,095.095 INFO    ] 200
[2026-06-13 02:38:33,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:33,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:38:33,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:33,160.160 INFO    ] No camera update needed
[2026-06-13 02:38:33,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:38:33,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:38:33,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:38:33,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:35,210.210 INFO    ] ================================================
[2026-06-13 02:38:35,226.226 INFO    ] Launching Daemon at Sat Jun 13 02:38:35 IST 2026
[2026-06-13 02:38:35,237.237 INFO    ] ================================================
[2026-06-13 02:38:35,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:35
[2026-06-13 02:38:35,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:36,038.038 INFO    ] Initializing speech engine...
[2026-06-13 02:38:36,046.046 INFO    ] 2026-06-13 02:38:36
[2026-06-13 02:38:36,254.254 INFO    ] 2026-06-13 02:38:36
[2026-06-13 02:38:36,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:36,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:36,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:36,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:36,665.665 INFO    ] time= 13/06/2026 02:38:36
[2026-06-13 02:38:36,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:36,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:36,769.769 INFO    ] No existing commands found in stream
[2026-06-13 02:38:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:38:41,782.782 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 02:38:42,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:38:42,499.499 INFO    ] Checking for system updates...
[2026-06-13 02:38:42,521.521 INFO    ] 200
[2026-06-13 02:38:42,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:42,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:38:42,555.555 INFO    ] No update needed
[2026-06-13 02:38:42,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 02:38:42,576.576 INFO    ] 200
[2026-06-13 02:38:42,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:42,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:38:42,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:38:42,642.642 INFO    ] No camera update needed
[2026-06-13 02:38:42,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:38:42,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:38:42,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:38:42,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:44,691.691 INFO    ] ================================================
[2026-06-13 02:38:44,707.707 INFO    ] Launching Daemon at Sat Jun 13 02:38:44 IST 2026
[2026-06-13 02:38:44,717.717 INFO    ] ================================================
[2026-06-13 02:38:45,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:45
[2026-06-13 02:38:45,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:45,549.549 INFO    ] Initializing speech engine...
[2026-06-13 02:38:45,554.554 INFO    ] 2026-06-13 02:38:45
[2026-06-13 02:38:45,757.757 INFO    ] 2026-06-13 02:38:45
[2026-06-13 02:38:45,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:45,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:45,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:46,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:46,172.172 INFO    ] time= 13/06/2026 02:38:46
[2026-06-13 02:38:46,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:46,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:46,271.271 INFO    ] No existing commands found in stream
[2026-06-13 02:38:51,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:38:51,284.284 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 02:38:55,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:38:55,242.242 INFO    ] Checking for system updates...
[2026-06-13 02:38:55,265.265 INFO    ] 200
[2026-06-13 02:38:55,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:55,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:55,300.300 INFO    ] No update needed
[2026-06-13 02:38:55,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 02:38:55,332.332 INFO    ] 200
[2026-06-13 02:38:55,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:38:55,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:38:55,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:38:55,395.395 INFO    ] No camera update needed
[2026-06-13 02:38:55,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:38:55,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:38:55,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:38:55,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:38:57,442.442 INFO    ] ================================================
[2026-06-13 02:38:57,457.457 INFO    ] Launching Daemon at Sat Jun 13 02:38:57 IST 2026
[2026-06-13 02:38:57,467.467 INFO    ] ================================================
[2026-06-13 02:38:57,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:38:57
[2026-06-13 02:38:58,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:38:58,264.264 INFO    ] Initializing speech engine...
[2026-06-13 02:38:58,269.269 INFO    ] 2026-06-13 02:38:58
[2026-06-13 02:38:58,477.477 INFO    ] 2026-06-13 02:38:58
[2026-06-13 02:38:58,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:38:58,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:38:58,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:38:58,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:38:58,883.883 INFO    ] time= 13/06/2026 02:38:58
[2026-06-13 02:38:58,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:38:58,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:38:58,993.993 INFO    ] No existing commands found in stream
[2026-06-13 02:39:04,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:04,010.010 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 02:39:07,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:39:07,445.445 INFO    ] Checking for system updates...
[2026-06-13 02:39:07,466.466 INFO    ] 200
[2026-06-13 02:39:07,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:07,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:07,508.508 INFO    ] No update needed
[2026-06-13 02:39:07,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 02:39:07,547.547 INFO    ] 200
[2026-06-13 02:39:07,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:07,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:39:07,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:07,638.638 INFO    ] No camera update needed
[2026-06-13 02:39:07,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:39:07,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:39:07,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:39:07,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:39:09,693.693 INFO    ] ================================================
[2026-06-13 02:39:09,708.708 INFO    ] Launching Daemon at Sat Jun 13 02:39:09 IST 2026
[2026-06-13 02:39:09,718.718 INFO    ] ================================================
[2026-06-13 02:39:10,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:39:10
[2026-06-13 02:39:10,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:39:10,895.895 INFO    ] Initializing speech engine...
[2026-06-13 02:39:10,909.909 INFO    ] 2026-06-13 02:39:10
[2026-06-13 02:39:11,113.113 INFO    ] 2026-06-13 02:39:11
[2026-06-13 02:39:11,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:39:11,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:39:11,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:39:11,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:39:11,513.513 INFO    ] time= 13/06/2026 02:39:11
[2026-06-13 02:39:11,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:39:11,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:39:11,629.629 INFO    ] No existing commands found in stream
[2026-06-13 02:39:16,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:16,641.641 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 02:39:19,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:39:19,283.283 INFO    ] Checking for system updates...
[2026-06-13 02:39:19,305.305 INFO    ] 200
[2026-06-13 02:39:19,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:19,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:19,338.338 INFO    ] No update needed
[2026-06-13 02:39:19,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 02:39:19,360.360 INFO    ] 200
[2026-06-13 02:39:19,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:19,386.386 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:39:19,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:39:19,429.429 INFO    ] No camera update needed
[2026-06-13 02:39:19,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:39:19,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:39:19,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:39:19,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:39:21,477.477 INFO    ] ================================================
[2026-06-13 02:39:21,492.492 INFO    ] Launching Daemon at Sat Jun 13 02:39:21 IST 2026
[2026-06-13 02:39:21,503.503 INFO    ] ================================================
[2026-06-13 02:39:21,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:39:21
[2026-06-13 02:39:22,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:39:22,309.309 INFO    ] Initializing speech engine...
[2026-06-13 02:39:22,319.319 INFO    ] 2026-06-13 02:39:22
[2026-06-13 02:39:22,524.524 INFO    ] 2026-06-13 02:39:22
[2026-06-13 02:39:22,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:39:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:39:22,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:39:22,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:39:22,939.939 INFO    ] time= 13/06/2026 02:39:22
[2026-06-13 02:39:22,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:39:22,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:39:23,039.039 INFO    ] No existing commands found in stream
[2026-06-13 02:39:28,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:28,051.051 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 02:39:29,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:39:29,883.883 INFO    ] Checking for system updates...
[2026-06-13 02:39:29,905.905 INFO    ] 200
[2026-06-13 02:39:29,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:29,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:29,940.940 INFO    ] No update needed
[2026-06-13 02:39:29,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 02:39:29,961.961 INFO    ] 200
[2026-06-13 02:39:29,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:29,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:39:30,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:30,030.030 INFO    ] No camera update needed
[2026-06-13 02:39:30,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:39:30,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:39:30,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:39:30,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:39:32,070.070 INFO    ] ================================================
[2026-06-13 02:39:32,080.080 INFO    ] Launching Daemon at Sat Jun 13 02:39:32 IST 2026
[2026-06-13 02:39:32,086.086 INFO    ] ================================================
[2026-06-13 02:39:32,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:39:32
[2026-06-13 02:39:32,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:39:32,888.888 INFO    ] Initializing speech engine...
[2026-06-13 02:39:32,901.901 INFO    ] 2026-06-13 02:39:32
[2026-06-13 02:39:33,117.117 INFO    ] 2026-06-13 02:39:33
[2026-06-13 02:39:33,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:39:33,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:39:33,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:39:33,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:39:33,433.433 INFO    ] time= 13/06/2026 02:39:33
[2026-06-13 02:39:33,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:39:33,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:39:33,641.641 INFO    ] No existing commands found in stream
[2026-06-13 02:39:38,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:38,654.654 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 02:39:40,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:39:40,220.220 INFO    ] Checking for system updates...
[2026-06-13 02:39:40,241.241 INFO    ] 200
[2026-06-13 02:39:40,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:40,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:39:40,274.274 INFO    ] No update needed
[2026-06-13 02:39:40,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 02:39:40,297.297 INFO    ] 200
[2026-06-13 02:39:40,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:40,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:39:40,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:40,362.362 INFO    ] No camera update needed
[2026-06-13 02:39:40,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:39:40,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:39:40,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:39:40,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:39:42,410.410 INFO    ] ================================================
[2026-06-13 02:39:42,425.425 INFO    ] Launching Daemon at Sat Jun 13 02:39:42 IST 2026
[2026-06-13 02:39:42,436.436 INFO    ] ================================================
[2026-06-13 02:39:42,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:39:42
[2026-06-13 02:39:43,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:39:43,220.220 INFO    ] Initializing speech engine...
[2026-06-13 02:39:43,225.225 INFO    ] 2026-06-13 02:39:43
[2026-06-13 02:39:43,431.431 INFO    ] 2026-06-13 02:39:43
[2026-06-13 02:39:43,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:39:43,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:39:43,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:39:43,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:39:43,853.853 INFO    ] time= 13/06/2026 02:39:43
[2026-06-13 02:39:43,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:39:43,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:39:43,981.981 INFO    ] No existing commands found in stream
[2026-06-13 02:39:48,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:48,997.997 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 02:39:49,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:39:49,347.347 INFO    ] Checking for system updates...
[2026-06-13 02:39:49,368.368 INFO    ] 200
[2026-06-13 02:39:49,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:49,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:49,403.403 INFO    ] No update needed
[2026-06-13 02:39:49,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 02:39:49,424.424 INFO    ] 200
[2026-06-13 02:39:49,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:39:49,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:39:49,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:39:49,589.589 INFO    ] No camera update needed
[2026-06-13 02:39:49,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:39:49,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:39:49,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:39:49,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:39:51,640.640 INFO    ] ================================================
[2026-06-13 02:39:51,656.656 INFO    ] Launching Daemon at Sat Jun 13 02:39:51 IST 2026
[2026-06-13 02:39:51,667.667 INFO    ] ================================================
[2026-06-13 02:39:52,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:39:52
[2026-06-13 02:39:52,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:39:53,164.164 INFO    ] Initializing speech engine...
[2026-06-13 02:39:53,176.176 INFO    ] 2026-06-13 02:39:53
[2026-06-13 02:39:53,451.451 INFO    ] 2026-06-13 02:39:53
[2026-06-13 02:39:53,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:39:53,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:39:53,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:39:53,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:39:53,893.893 INFO    ] time= 13/06/2026 02:39:53
[2026-06-13 02:39:53,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:39:54,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:39:54,123.123 INFO    ] No existing commands found in stream
[2026-06-13 02:39:59,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:39:59,156.156 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 02:40:02,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:40:02,337.337 INFO    ] Checking for system updates...
[2026-06-13 02:40:02,372.372 INFO    ] 200
[2026-06-13 02:40:02,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:02,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:02,424.424 INFO    ] No update needed
[2026-06-13 02:40:02,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:02,461.461 INFO    ] 200
[2026-06-13 02:40:02,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:02,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:02,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:02,627.627 INFO    ] No camera update needed
[2026-06-13 02:40:02,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:02,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:02,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:02,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:04,676.676 INFO    ] ================================================
[2026-06-13 02:40:04,692.692 INFO    ] Launching Daemon at Sat Jun 13 02:40:04 IST 2026
[2026-06-13 02:40:04,702.702 INFO    ] ================================================
[2026-06-13 02:40:05,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:05
[2026-06-13 02:40:05,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:05,485.485 INFO    ] Initializing speech engine...
[2026-06-13 02:40:05,490.490 INFO    ] 2026-06-13 02:40:05
[2026-06-13 02:40:05,692.692 INFO    ] 2026-06-13 02:40:05
[2026-06-13 02:40:05,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:05,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:05,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:05,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:05,972.972 INFO    ] time= 13/06/2026 02:40:05
[2026-06-13 02:40:05,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:05,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:06,069.069 INFO    ] No existing commands found in stream
[2026-06-13 02:40:11,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:40:11,106.106 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 02:40:12,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:40:12,129.129 INFO    ] Checking for system updates...
[2026-06-13 02:40:12,150.150 INFO    ] 200
[2026-06-13 02:40:12,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:12,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:12,183.183 INFO    ] No update needed
[2026-06-13 02:40:12,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:12,207.207 INFO    ] 200
[2026-06-13 02:40:12,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:12,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:12,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:12,275.275 INFO    ] No camera update needed
[2026-06-13 02:40:12,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:12,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:12,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:12,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:14,323.323 INFO    ] ================================================
[2026-06-13 02:40:14,338.338 INFO    ] Launching Daemon at Sat Jun 13 02:40:14 IST 2026
[2026-06-13 02:40:14,350.350 INFO    ] ================================================
[2026-06-13 02:40:14,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:14
[2026-06-13 02:40:15,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:15,156.156 INFO    ] Initializing speech engine...
[2026-06-13 02:40:15,161.161 INFO    ] 2026-06-13 02:40:15
[2026-06-13 02:40:15,364.364 INFO    ] 2026-06-13 02:40:15
[2026-06-13 02:40:15,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:15,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:15,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:15,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:15,761.761 INFO    ] time= 13/06/2026 02:40:15
[2026-06-13 02:40:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:15,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:15,876.876 INFO    ] No existing commands found in stream
[2026-06-13 02:40:20,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:40:20,888.888 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 02:40:21,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:40:21,268.268 INFO    ] Checking for system updates...
[2026-06-13 02:40:21,291.291 INFO    ] 200
[2026-06-13 02:40:21,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:21,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:21,331.331 INFO    ] No update needed
[2026-06-13 02:40:21,332.332 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:21,354.354 INFO    ] 200
[2026-06-13 02:40:21,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:21,381.381 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:21,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:21,428.428 INFO    ] No camera update needed
[2026-06-13 02:40:21,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:21,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:21,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:21,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:23,477.477 INFO    ] ================================================
[2026-06-13 02:40:23,492.492 INFO    ] Launching Daemon at Sat Jun 13 02:40:23 IST 2026
[2026-06-13 02:40:23,503.503 INFO    ] ================================================
[2026-06-13 02:40:23,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:23
[2026-06-13 02:40:24,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:24,285.285 INFO    ] Initializing speech engine...
[2026-06-13 02:40:24,295.295 INFO    ] 2026-06-13 02:40:24
[2026-06-13 02:40:24,500.500 INFO    ] 2026-06-13 02:40:24
[2026-06-13 02:40:24,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:24,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:24,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:24,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:24,939.939 INFO    ] time= 13/06/2026 02:40:24
[2026-06-13 02:40:24,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:24,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:25,041.041 INFO    ] No existing commands found in stream
[2026-06-13 02:40:30,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:40:30,053.053 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 02:40:34,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:40:34,358.358 INFO    ] Checking for system updates...
[2026-06-13 02:40:34,380.380 INFO    ] 200
[2026-06-13 02:40:34,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:34,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:34,413.413 INFO    ] No update needed
[2026-06-13 02:40:34,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:34,433.433 INFO    ] 200
[2026-06-13 02:40:34,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:34,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:34,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:34,495.495 INFO    ] No camera update needed
[2026-06-13 02:40:34,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:34,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:34,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:34,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:36,543.543 INFO    ] ================================================
[2026-06-13 02:40:36,558.558 INFO    ] Launching Daemon at Sat Jun 13 02:40:36 IST 2026
[2026-06-13 02:40:36,569.569 INFO    ] ================================================
[2026-06-13 02:40:36,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:36
[2026-06-13 02:40:37,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:37,375.375 INFO    ] Initializing speech engine...
[2026-06-13 02:40:37,383.383 INFO    ] 2026-06-13 02:40:37
[2026-06-13 02:40:37,595.595 INFO    ] 2026-06-13 02:40:37
[2026-06-13 02:40:37,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:37,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:37,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:38,005.005 INFO    ] time= 13/06/2026 02:40:37
[2026-06-13 02:40:38,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:38,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:38,118.118 INFO    ] No existing commands found in stream
[2026-06-13 02:40:43,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:40:43,130.130 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 02:40:45,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:40:45,369.369 INFO    ] Checking for system updates...
[2026-06-13 02:40:45,391.391 INFO    ] 200
[2026-06-13 02:40:45,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:45,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:45,428.428 INFO    ] No update needed
[2026-06-13 02:40:45,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:45,450.450 INFO    ] 200
[2026-06-13 02:40:45,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:45,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:45,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:45,518.518 INFO    ] No camera update needed
[2026-06-13 02:40:45,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:45,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:45,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:45,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:47,565.565 INFO    ] ================================================
[2026-06-13 02:40:47,580.580 INFO    ] Launching Daemon at Sat Jun 13 02:40:47 IST 2026
[2026-06-13 02:40:47,590.590 INFO    ] ================================================
[2026-06-13 02:40:47,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:47
[2026-06-13 02:40:48,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:48,391.391 INFO    ] Initializing speech engine...
[2026-06-13 02:40:48,404.404 INFO    ] 2026-06-13 02:40:48
[2026-06-13 02:40:48,614.614 INFO    ] 2026-06-13 02:40:48
[2026-06-13 02:40:48,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:48,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:48,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:48,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:49,031.031 INFO    ] time= 13/06/2026 02:40:48
[2026-06-13 02:40:49,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:49,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:49,160.160 INFO    ] No existing commands found in stream
[2026-06-13 02:40:54,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:40:54,173.173 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 02:40:55,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:40:55,540.540 INFO    ] Checking for system updates...
[2026-06-13 02:40:55,562.562 INFO    ] 200
[2026-06-13 02:40:55,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:55,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:55,600.600 INFO    ] No update needed
[2026-06-13 02:40:55,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 02:40:55,621.621 INFO    ] 200
[2026-06-13 02:40:55,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:40:55,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:40:55,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:40:55,687.687 INFO    ] No camera update needed
[2026-06-13 02:40:55,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:40:55,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:40:55,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:40:55,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:40:57,735.735 INFO    ] ================================================
[2026-06-13 02:40:57,750.750 INFO    ] Launching Daemon at Sat Jun 13 02:40:57 IST 2026
[2026-06-13 02:40:57,761.761 INFO    ] ================================================
[2026-06-13 02:40:58,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:40:58
[2026-06-13 02:40:58,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:40:58,568.568 INFO    ] Initializing speech engine...
[2026-06-13 02:40:58,573.573 INFO    ] 2026-06-13 02:40:58
[2026-06-13 02:40:58,778.778 INFO    ] 2026-06-13 02:40:58
[2026-06-13 02:40:58,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:40:58,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:40:58,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:40:59,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:40:59,182.182 INFO    ] time= 13/06/2026 02:40:59
[2026-06-13 02:40:59,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:40:59,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:40:59,388.388 INFO    ] No existing commands found in stream
[2026-06-13 02:41:04,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:04,401.401 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 02:41:05,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:41:05,323.323 INFO    ] Checking for system updates...
[2026-06-13 02:41:05,344.344 INFO    ] 200
[2026-06-13 02:41:05,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:05,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:05,380.380 INFO    ] No update needed
[2026-06-13 02:41:05,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 02:41:05,403.403 INFO    ] 200
[2026-06-13 02:41:05,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:05,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:41:05,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:05,466.466 INFO    ] No camera update needed
[2026-06-13 02:41:05,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:41:05,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:41:05,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:41:05,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:41:07,518.518 INFO    ] ================================================
[2026-06-13 02:41:07,533.533 INFO    ] Launching Daemon at Sat Jun 13 02:41:07 IST 2026
[2026-06-13 02:41:07,544.544 INFO    ] ================================================
[2026-06-13 02:41:07,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:41:07
[2026-06-13 02:41:08,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:41:08,320.320 INFO    ] Initializing speech engine...
[2026-06-13 02:41:08,324.324 INFO    ] 2026-06-13 02:41:08
[2026-06-13 02:41:08,542.542 INFO    ] 2026-06-13 02:41:08
[2026-06-13 02:41:08,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:41:08,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:41:08,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:41:08,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:41:08,957.957 INFO    ] time= 13/06/2026 02:41:08
[2026-06-13 02:41:09,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:41:09,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:41:09,091.091 INFO    ] No existing commands found in stream
[2026-06-13 02:41:14,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:14,105.105 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 02:41:15,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:41:15,563.563 INFO    ] Checking for system updates...
[2026-06-13 02:41:15,584.584 INFO    ] 200
[2026-06-13 02:41:15,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:15,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:15,620.620 INFO    ] No update needed
[2026-06-13 02:41:15,621.621 INFO    ] Checking for camera pi updates...
[2026-06-13 02:41:15,642.642 INFO    ] 200
[2026-06-13 02:41:15,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:15,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:41:15,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:15,708.708 INFO    ] No camera update needed
[2026-06-13 02:41:15,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:41:15,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:41:15,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:41:15,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:41:17,759.759 INFO    ] ================================================
[2026-06-13 02:41:17,775.775 INFO    ] Launching Daemon at Sat Jun 13 02:41:17 IST 2026
[2026-06-13 02:41:17,786.786 INFO    ] ================================================
[2026-06-13 02:41:18,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:41:18
[2026-06-13 02:41:18,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:41:18,643.643 INFO    ] Initializing speech engine...
[2026-06-13 02:41:18,650.650 INFO    ] 2026-06-13 02:41:18
[2026-06-13 02:41:18,865.865 INFO    ] 2026-06-13 02:41:18
[2026-06-13 02:41:18,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:41:19,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:41:19,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:41:19,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:41:19,286.286 INFO    ] time= 13/06/2026 02:41:19
[2026-06-13 02:41:19,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:41:19,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:41:19,431.431 INFO    ] No existing commands found in stream
[2026-06-13 02:41:24,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:24,444.444 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 02:41:26,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:41:26,599.599 INFO    ] Checking for system updates...
[2026-06-13 02:41:26,619.619 INFO    ] 200
[2026-06-13 02:41:26,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:26,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:41:26,656.656 INFO    ] No update needed
[2026-06-13 02:41:26,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 02:41:26,679.679 INFO    ] 200
[2026-06-13 02:41:26,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:26,706.706 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:41:26,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:41:26,744.744 INFO    ] No camera update needed
[2026-06-13 02:41:26,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:41:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:41:26,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:41:26,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:41:28,793.793 INFO    ] ================================================
[2026-06-13 02:41:28,808.808 INFO    ] Launching Daemon at Sat Jun 13 02:41:28 IST 2026
[2026-06-13 02:41:28,819.819 INFO    ] ================================================
[2026-06-13 02:41:29,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:41:29
[2026-06-13 02:41:29,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:41:29,619.619 INFO    ] Initializing speech engine...
[2026-06-13 02:41:29,624.624 INFO    ] 2026-06-13 02:41:29
[2026-06-13 02:41:29,828.828 INFO    ] 2026-06-13 02:41:29
[2026-06-13 02:41:29,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:41:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:41:30,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:41:30,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:41:30,240.240 INFO    ] time= 13/06/2026 02:41:30
[2026-06-13 02:41:30,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:41:30,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:41:30,348.348 INFO    ] No existing commands found in stream
[2026-06-13 02:41:35,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:35,365.365 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 02:41:36,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:41:36,223.223 INFO    ] Checking for system updates...
[2026-06-13 02:41:36,243.243 INFO    ] 200
[2026-06-13 02:41:36,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:36,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:36,277.277 INFO    ] No update needed
[2026-06-13 02:41:36,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 02:41:36,298.298 INFO    ] 200
[2026-06-13 02:41:36,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:36,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:41:36,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:41:36,375.375 INFO    ] No camera update needed
[2026-06-13 02:41:36,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:41:36,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:41:36,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:41:36,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:41:38,423.423 INFO    ] ================================================
[2026-06-13 02:41:38,439.439 INFO    ] Launching Daemon at Sat Jun 13 02:41:38 IST 2026
[2026-06-13 02:41:38,450.450 INFO    ] ================================================
[2026-06-13 02:41:38,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:41:38
[2026-06-13 02:41:39,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:41:39,245.245 INFO    ] Initializing speech engine...
[2026-06-13 02:41:39,251.251 INFO    ] 2026-06-13 02:41:39
[2026-06-13 02:41:39,454.454 INFO    ] 2026-06-13 02:41:39
[2026-06-13 02:41:39,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:41:39,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:41:39,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:41:39,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:41:39,866.866 INFO    ] time= 13/06/2026 02:41:39
[2026-06-13 02:41:39,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:41:39,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:41:39,972.972 INFO    ] No existing commands found in stream
[2026-06-13 02:41:44,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:44,983.983 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 02:41:49,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:41:49,617.617 INFO    ] Checking for system updates...
[2026-06-13 02:41:49,661.661 INFO    ] 200
[2026-06-13 02:41:49,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:49,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:41:49,718.718 INFO    ] No update needed
[2026-06-13 02:41:49,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 02:41:49,741.741 INFO    ] 200
[2026-06-13 02:41:49,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:41:49,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:41:49,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:41:49,806.806 INFO    ] No camera update needed
[2026-06-13 02:41:49,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:41:49,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:41:49,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:41:49,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:41:51,856.856 INFO    ] ================================================
[2026-06-13 02:41:51,872.872 INFO    ] Launching Daemon at Sat Jun 13 02:41:51 IST 2026
[2026-06-13 02:41:51,883.883 INFO    ] ================================================
[2026-06-13 02:41:52,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:41:52
[2026-06-13 02:41:52,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:41:52,766.766 INFO    ] Initializing speech engine...
[2026-06-13 02:41:52,771.771 INFO    ] 2026-06-13 02:41:52
[2026-06-13 02:41:52,980.980 INFO    ] 2026-06-13 02:41:52
[2026-06-13 02:41:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:41:53,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:41:53,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:41:53,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:41:53,409.409 INFO    ] time= 13/06/2026 02:41:53
[2026-06-13 02:41:53,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:41:53,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:41:53,508.508 INFO    ] No existing commands found in stream
[2026-06-13 02:41:58,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:41:58,526.526 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 02:42:00,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:42:00,080.080 INFO    ] Checking for system updates...
[2026-06-13 02:42:00,103.103 INFO    ] 200
[2026-06-13 02:42:00,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:00,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:00,138.138 INFO    ] No update needed
[2026-06-13 02:42:00,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:00,161.161 INFO    ] 200
[2026-06-13 02:42:00,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:00,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:00,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:00,333.333 INFO    ] No camera update needed
[2026-06-13 02:42:00,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:00,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:00,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:00,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:02,390.390 INFO    ] ================================================
[2026-06-13 02:42:02,412.412 INFO    ] Launching Daemon at Sat Jun 13 02:42:02 IST 2026
[2026-06-13 02:42:02,428.428 INFO    ] ================================================
[2026-06-13 02:42:03,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:03
[2026-06-13 02:42:03,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:03,927.927 INFO    ] Initializing speech engine...
[2026-06-13 02:42:03,936.936 INFO    ] 2026-06-13 02:42:03
[2026-06-13 02:42:04,190.190 INFO    ] 2026-06-13 02:42:04
[2026-06-13 02:42:04,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:04,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:04,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:04,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:04,516.516 INFO    ] time= 13/06/2026 02:42:04
[2026-06-13 02:42:04,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:04,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:42:04,629.629 INFO    ] No existing commands found in stream
[2026-06-13 02:42:09,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:42:09,647.647 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 02:42:13,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:42:13,043.043 INFO    ] Checking for system updates...
[2026-06-13 02:42:13,063.063 INFO    ] 200
[2026-06-13 02:42:13,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:13,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:13,097.097 INFO    ] No update needed
[2026-06-13 02:42:13,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:13,120.120 INFO    ] 200
[2026-06-13 02:42:13,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:13,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:13,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:13,188.188 INFO    ] No camera update needed
[2026-06-13 02:42:13,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:13,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:13,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:13,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:15,239.239 INFO    ] ================================================
[2026-06-13 02:42:15,254.254 INFO    ] Launching Daemon at Sat Jun 13 02:42:15 IST 2026
[2026-06-13 02:42:15,266.266 INFO    ] ================================================
[2026-06-13 02:42:15,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:15
[2026-06-13 02:42:15,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:16,058.058 INFO    ] Initializing speech engine...
[2026-06-13 02:42:16,062.062 INFO    ] 2026-06-13 02:42:16
[2026-06-13 02:42:16,265.265 INFO    ] 2026-06-13 02:42:16
[2026-06-13 02:42:16,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:16,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:16,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:16,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:16,667.667 INFO    ] time= 13/06/2026 02:42:16
[2026-06-13 02:42:16,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:16,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:42:16,777.777 INFO    ] No existing commands found in stream
[2026-06-13 02:42:21,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:42:21,789.789 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 02:42:23,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:42:23,083.083 INFO    ] Checking for system updates...
[2026-06-13 02:42:23,103.103 INFO    ] 200
[2026-06-13 02:42:23,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:23,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:23,142.142 INFO    ] No update needed
[2026-06-13 02:42:23,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:23,164.164 INFO    ] 200
[2026-06-13 02:42:23,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:23,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:23,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:23,228.228 INFO    ] No camera update needed
[2026-06-13 02:42:23,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:23,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:23,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:23,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:25,280.280 INFO    ] ================================================
[2026-06-13 02:42:25,296.296 INFO    ] Launching Daemon at Sat Jun 13 02:42:25 IST 2026
[2026-06-13 02:42:25,307.307 INFO    ] ================================================
[2026-06-13 02:42:25,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:25
[2026-06-13 02:42:25,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:26,108.108 INFO    ] Initializing speech engine...
[2026-06-13 02:42:26,114.114 INFO    ] 2026-06-13 02:42:26
[2026-06-13 02:42:26,316.316 INFO    ] 2026-06-13 02:42:26
[2026-06-13 02:42:26,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:26,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:26,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:26,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:26,720.720 INFO    ] time= 13/06/2026 02:42:26
[2026-06-13 02:42:26,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:26,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:42:26,830.830 INFO    ] No existing commands found in stream
[2026-06-13 02:42:31,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:42:31,840.840 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 02:42:34,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:42:34,680.680 INFO    ] Checking for system updates...
[2026-06-13 02:42:34,701.701 INFO    ] 200
[2026-06-13 02:42:34,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:34,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:34,737.737 INFO    ] No update needed
[2026-06-13 02:42:34,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:34,760.760 INFO    ] 200
[2026-06-13 02:42:34,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:34,786.786 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:34,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:34,817.817 INFO    ] No camera update needed
[2026-06-13 02:42:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:34,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:34,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:34,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:36,871.871 INFO    ] ================================================
[2026-06-13 02:42:36,888.888 INFO    ] Launching Daemon at Sat Jun 13 02:42:36 IST 2026
[2026-06-13 02:42:36,899.899 INFO    ] ================================================
[2026-06-13 02:42:37,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:37
[2026-06-13 02:42:37,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:37,703.703 INFO    ] Initializing speech engine...
[2026-06-13 02:42:37,715.715 INFO    ] 2026-06-13 02:42:37
[2026-06-13 02:42:37,924.924 INFO    ] 2026-06-13 02:42:37
[2026-06-13 02:42:37,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:38,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:38,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:38,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:38,335.335 INFO    ] time= 13/06/2026 02:42:38
[2026-06-13 02:42:38,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:38,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:42:38,448.448 INFO    ] No existing commands found in stream
[2026-06-13 02:42:43,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:42:43,462.462 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 02:42:43,939.939 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:42:43,941.941 INFO    ] Checking for system updates...
[2026-06-13 02:42:43,962.962 INFO    ] 200
[2026-06-13 02:42:43,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:43,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:43,998.998 INFO    ] No update needed
[2026-06-13 02:42:44,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:44,021.021 INFO    ] 200
[2026-06-13 02:42:44,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:44,048.048 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:44,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:42:44,090.090 INFO    ] No camera update needed
[2026-06-13 02:42:44,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:44,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:44,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:44,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:46,131.131 INFO    ] ================================================
[2026-06-13 02:42:46,146.146 INFO    ] Launching Daemon at Sat Jun 13 02:42:46 IST 2026
[2026-06-13 02:42:46,157.157 INFO    ] ================================================
[2026-06-13 02:42:46,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:46
[2026-06-13 02:42:46,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:46,937.937 INFO    ] Initializing speech engine...
[2026-06-13 02:42:46,942.942 INFO    ] 2026-06-13 02:42:46
[2026-06-13 02:42:47,159.159 INFO    ] 2026-06-13 02:42:47
[2026-06-13 02:42:47,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:47,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:47,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:47,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:47,574.574 INFO    ] time= 13/06/2026 02:42:47
[2026-06-13 02:42:47,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:47,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:42:47,674.674 INFO    ] No existing commands found in stream
[2026-06-13 02:42:52,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:42:52,705.705 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 02:42:56,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:42:56,200.200 INFO    ] Checking for system updates...
[2026-06-13 02:42:56,222.222 INFO    ] 200
[2026-06-13 02:42:56,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:56,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:56,257.257 INFO    ] No update needed
[2026-06-13 02:42:56,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 02:42:56,278.278 INFO    ] 200
[2026-06-13 02:42:56,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:42:56,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:42:56,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:42:56,341.341 INFO    ] No camera update needed
[2026-06-13 02:42:56,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:42:56,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:42:56,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:42:56,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:42:58,391.391 INFO    ] ================================================
[2026-06-13 02:42:58,407.407 INFO    ] Launching Daemon at Sat Jun 13 02:42:58 IST 2026
[2026-06-13 02:42:58,418.418 INFO    ] ================================================
[2026-06-13 02:42:58,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:42:58
[2026-06-13 02:42:59,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:42:59,203.203 INFO    ] Initializing speech engine...
[2026-06-13 02:42:59,207.207 INFO    ] 2026-06-13 02:42:59
[2026-06-13 02:42:59,401.401 INFO    ] 2026-06-13 02:42:59
[2026-06-13 02:42:59,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:42:59,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:42:59,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:42:59,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:42:59,847.847 INFO    ] time= 13/06/2026 02:42:59
[2026-06-13 02:42:59,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:42:59,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:00,006.006 INFO    ] No existing commands found in stream
[2026-06-13 02:43:05,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:05,019.019 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 02:43:05,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:43:05,740.740 INFO    ] Checking for system updates...
[2026-06-13 02:43:05,762.762 INFO    ] 200
[2026-06-13 02:43:05,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:05,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:05,797.797 INFO    ] No update needed
[2026-06-13 02:43:05,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 02:43:05,818.818 INFO    ] 200
[2026-06-13 02:43:05,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:05,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:43:05,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:05,882.882 INFO    ] No camera update needed
[2026-06-13 02:43:05,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:43:05,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:43:05,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:43:05,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:43:07,930.930 INFO    ] ================================================
[2026-06-13 02:43:07,946.946 INFO    ] Launching Daemon at Sat Jun 13 02:43:07 IST 2026
[2026-06-13 02:43:07,957.957 INFO    ] ================================================
[2026-06-13 02:43:08,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:43:08
[2026-06-13 02:43:08,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:43:09,122.122 INFO    ] Initializing speech engine...
[2026-06-13 02:43:09,129.129 INFO    ] 2026-06-13 02:43:09
[2026-06-13 02:43:09,431.431 INFO    ] 2026-06-13 02:43:09
[2026-06-13 02:43:09,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:43:09,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:43:09,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:43:09,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:43:09,795.795 INFO    ] time= 13/06/2026 02:43:09
[2026-06-13 02:43:09,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:43:09,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:09,876.876 INFO    ] No existing commands found in stream
[2026-06-13 02:43:14,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:14,890.890 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 02:43:18,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:43:18,141.141 INFO    ] Checking for system updates...
[2026-06-13 02:43:18,163.163 INFO    ] 200
[2026-06-13 02:43:18,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:18,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:18,199.199 INFO    ] No update needed
[2026-06-13 02:43:18,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 02:43:18,220.220 INFO    ] 200
[2026-06-13 02:43:18,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:18,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:43:18,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:18,284.284 INFO    ] No camera update needed
[2026-06-13 02:43:18,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:43:18,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:43:18,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:43:18,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:43:20,332.332 INFO    ] ================================================
[2026-06-13 02:43:20,349.349 INFO    ] Launching Daemon at Sat Jun 13 02:43:20 IST 2026
[2026-06-13 02:43:20,360.360 INFO    ] ================================================
[2026-06-13 02:43:20,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:43:20
[2026-06-13 02:43:21,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:43:21,175.175 INFO    ] Initializing speech engine...
[2026-06-13 02:43:21,178.178 INFO    ] 2026-06-13 02:43:21
[2026-06-13 02:43:21,409.409 INFO    ] 2026-06-13 02:43:21
[2026-06-13 02:43:21,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:43:21,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:43:21,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:43:21,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:43:21,829.829 INFO    ] time= 13/06/2026 02:43:21
[2026-06-13 02:43:21,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:43:21,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:22,002.002 INFO    ] No existing commands found in stream
[2026-06-13 02:43:27,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:27,013.013 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 02:43:27,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:43:27,431.431 INFO    ] Checking for system updates...
[2026-06-13 02:43:27,453.453 INFO    ] 200
[2026-06-13 02:43:27,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:27,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:27,489.489 INFO    ] No update needed
[2026-06-13 02:43:27,490.490 INFO    ] Checking for camera pi updates...
[2026-06-13 02:43:27,510.510 INFO    ] 200
[2026-06-13 02:43:27,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:27,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:43:27,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:43:27,575.575 INFO    ] No camera update needed
[2026-06-13 02:43:27,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:43:27,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:43:27,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:43:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:43:29,623.623 INFO    ] ================================================
[2026-06-13 02:43:29,640.640 INFO    ] Launching Daemon at Sat Jun 13 02:43:29 IST 2026
[2026-06-13 02:43:29,650.650 INFO    ] ================================================
[2026-06-13 02:43:30,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:43:30
[2026-06-13 02:43:30,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:43:30,510.510 INFO    ] Initializing speech engine...
[2026-06-13 02:43:30,515.515 INFO    ] 2026-06-13 02:43:30
[2026-06-13 02:43:30,726.726 INFO    ] 2026-06-13 02:43:30
[2026-06-13 02:43:30,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:43:30,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:43:30,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:43:31,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:43:31,142.142 INFO    ] time= 13/06/2026 02:43:31
[2026-06-13 02:43:31,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:43:31,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:31,264.264 INFO    ] No existing commands found in stream
[2026-06-13 02:43:36,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:36,292.292 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 02:43:37,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:43:37,221.221 INFO    ] Checking for system updates...
[2026-06-13 02:43:37,243.243 INFO    ] 200
[2026-06-13 02:43:37,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:37,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:43:37,282.282 INFO    ] No update needed
[2026-06-13 02:43:37,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 02:43:37,307.307 INFO    ] 200
[2026-06-13 02:43:37,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:37,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:43:37,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:43:37,357.357 INFO    ] No camera update needed
[2026-06-13 02:43:37,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:43:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:43:37,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:43:37,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:43:39,409.409 INFO    ] ================================================
[2026-06-13 02:43:39,425.425 INFO    ] Launching Daemon at Sat Jun 13 02:43:39 IST 2026
[2026-06-13 02:43:39,437.437 INFO    ] ================================================
[2026-06-13 02:43:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:43:39
[2026-06-13 02:43:40,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:43:40,249.249 INFO    ] Initializing speech engine...
[2026-06-13 02:43:40,253.253 INFO    ] 2026-06-13 02:43:40
[2026-06-13 02:43:40,456.456 INFO    ] 2026-06-13 02:43:40
[2026-06-13 02:43:40,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:43:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:43:40,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:43:40,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:43:40,872.872 INFO    ] time= 13/06/2026 02:43:40
[2026-06-13 02:43:40,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:43:40,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:40,973.973 INFO    ] No existing commands found in stream
[2026-06-13 02:43:45,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:45,984.984 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 02:43:49,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:43:49,924.924 INFO    ] Checking for system updates...
[2026-06-13 02:43:49,945.945 INFO    ] 200
[2026-06-13 02:43:49,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:49,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:43:49,982.982 INFO    ] No update needed
[2026-06-13 02:43:49,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 02:43:50,004.004 INFO    ] 200
[2026-06-13 02:43:50,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:43:50,029.029 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:43:50,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:43:50,075.075 INFO    ] No camera update needed
[2026-06-13 02:43:50,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:43:50,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:43:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:43:50,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:43:52,123.123 INFO    ] ================================================
[2026-06-13 02:43:52,138.138 INFO    ] Launching Daemon at Sat Jun 13 02:43:52 IST 2026
[2026-06-13 02:43:52,149.149 INFO    ] ================================================
[2026-06-13 02:43:52,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:43:52
[2026-06-13 02:43:52,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:43:52,965.965 INFO    ] Initializing speech engine...
[2026-06-13 02:43:52,973.973 INFO    ] 2026-06-13 02:43:52
[2026-06-13 02:43:53,199.199 INFO    ] 2026-06-13 02:43:53
[2026-06-13 02:43:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:43:53,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:43:53,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:43:53,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:43:53,639.639 INFO    ] time= 13/06/2026 02:43:53
[2026-06-13 02:43:53,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:43:53,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:43:53,762.762 INFO    ] No existing commands found in stream
[2026-06-13 02:43:58,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:43:58,776.776 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 02:44:00,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:44:00,822.822 INFO    ] Checking for system updates...
[2026-06-13 02:44:00,844.844 INFO    ] 200
[2026-06-13 02:44:00,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:00,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:44:00,879.879 INFO    ] No update needed
[2026-06-13 02:44:00,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:00,901.901 INFO    ] 200
[2026-06-13 02:44:00,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:00,926.926 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:01,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:44:01,063.063 INFO    ] No camera update needed
[2026-06-13 02:44:01,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:01,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:01,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:01,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:03,105.105 INFO    ] ================================================
[2026-06-13 02:44:03,120.120 INFO    ] Launching Daemon at Sat Jun 13 02:44:03 IST 2026
[2026-06-13 02:44:03,131.131 INFO    ] ================================================
[2026-06-13 02:44:03,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:03
[2026-06-13 02:44:03,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:03,960.960 INFO    ] Initializing speech engine...
[2026-06-13 02:44:03,966.966 INFO    ] 2026-06-13 02:44:03
[2026-06-13 02:44:04,169.169 INFO    ] 2026-06-13 02:44:04
[2026-06-13 02:44:04,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:04,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:04,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:04,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:04,585.585 INFO    ] time= 13/06/2026 02:44:04
[2026-06-13 02:44:04,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:04,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:04,784.784 INFO    ] No existing commands found in stream
[2026-06-13 02:44:09,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:44:09,805.805 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 02:44:13,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:44:13,199.199 INFO    ] Checking for system updates...
[2026-06-13 02:44:13,221.221 INFO    ] 200
[2026-06-13 02:44:13,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:13,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:13,254.254 INFO    ] No update needed
[2026-06-13 02:44:13,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:13,275.275 INFO    ] 200
[2026-06-13 02:44:13,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:13,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:13,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:13,341.341 INFO    ] No camera update needed
[2026-06-13 02:44:13,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:13,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:13,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:13,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:15,389.389 INFO    ] ================================================
[2026-06-13 02:44:15,404.404 INFO    ] Launching Daemon at Sat Jun 13 02:44:15 IST 2026
[2026-06-13 02:44:15,415.415 INFO    ] ================================================
[2026-06-13 02:44:15,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:15
[2026-06-13 02:44:16,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:16,242.242 INFO    ] Initializing speech engine...
[2026-06-13 02:44:16,250.250 INFO    ] 2026-06-13 02:44:16
[2026-06-13 02:44:16,462.462 INFO    ] 2026-06-13 02:44:16
[2026-06-13 02:44:16,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:16,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:16,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:16,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:16,868.868 INFO    ] time= 13/06/2026 02:44:16
[2026-06-13 02:44:16,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:16,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:16,986.986 INFO    ] No existing commands found in stream
[2026-06-13 02:44:21,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:44:21,997.997 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 02:44:22,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:44:22,353.353 INFO    ] Checking for system updates...
[2026-06-13 02:44:22,374.374 INFO    ] 200
[2026-06-13 02:44:22,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:22,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:22,410.410 INFO    ] No update needed
[2026-06-13 02:44:22,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:22,431.431 INFO    ] 200
[2026-06-13 02:44:22,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:22,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:22,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:44:22,498.498 INFO    ] No camera update needed
[2026-06-13 02:44:22,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:22,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:22,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:22,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:24,544.544 INFO    ] ================================================
[2026-06-13 02:44:24,559.559 INFO    ] Launching Daemon at Sat Jun 13 02:44:24 IST 2026
[2026-06-13 02:44:24,569.569 INFO    ] ================================================
[2026-06-13 02:44:24,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:24
[2026-06-13 02:44:25,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:25,361.361 INFO    ] Initializing speech engine...
[2026-06-13 02:44:25,366.366 INFO    ] 2026-06-13 02:44:25
[2026-06-13 02:44:25,570.570 INFO    ] 2026-06-13 02:44:25
[2026-06-13 02:44:25,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:25,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:25,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:25,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:25,970.970 INFO    ] time= 13/06/2026 02:44:25
[2026-06-13 02:44:26,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:26,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:26,085.085 INFO    ] No existing commands found in stream
[2026-06-13 02:44:31,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:44:31,120.120 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 02:44:32,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:44:32,605.605 INFO    ] Checking for system updates...
[2026-06-13 02:44:32,628.628 INFO    ] 200
[2026-06-13 02:44:32,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:32,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:32,664.664 INFO    ] No update needed
[2026-06-13 02:44:32,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:32,684.684 INFO    ] 200
[2026-06-13 02:44:32,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:32,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:32,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:32,738.738 INFO    ] No camera update needed
[2026-06-13 02:44:32,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:32,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:32,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:32,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:34,784.784 INFO    ] ================================================
[2026-06-13 02:44:34,800.800 INFO    ] Launching Daemon at Sat Jun 13 02:44:34 IST 2026
[2026-06-13 02:44:34,810.810 INFO    ] ================================================
[2026-06-13 02:44:35,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:35
[2026-06-13 02:44:35,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:35,631.631 INFO    ] Initializing speech engine...
[2026-06-13 02:44:35,635.635 INFO    ] 2026-06-13 02:44:35
[2026-06-13 02:44:35,841.841 INFO    ] 2026-06-13 02:44:35
[2026-06-13 02:44:35,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:36,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:36,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:36,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:36,259.259 INFO    ] time= 13/06/2026 02:44:36
[2026-06-13 02:44:36,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:36,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:36,360.360 INFO    ] No existing commands found in stream
[2026-06-13 02:44:41,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:44:41,373.373 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 02:44:42,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:44:42,265.265 INFO    ] Checking for system updates...
[2026-06-13 02:44:42,288.288 INFO    ] 200
[2026-06-13 02:44:42,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:42,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:44:42,324.324 INFO    ] No update needed
[2026-06-13 02:44:42,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:42,345.345 INFO    ] 200
[2026-06-13 02:44:42,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:42,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:42,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:44:42,412.412 INFO    ] No camera update needed
[2026-06-13 02:44:42,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:42,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:42,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:42,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:44,457.457 INFO    ] ================================================
[2026-06-13 02:44:44,473.473 INFO    ] Launching Daemon at Sat Jun 13 02:44:44 IST 2026
[2026-06-13 02:44:44,483.483 INFO    ] ================================================
[2026-06-13 02:44:44,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:44
[2026-06-13 02:44:45,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:45,284.284 INFO    ] Initializing speech engine...
[2026-06-13 02:44:45,295.295 INFO    ] 2026-06-13 02:44:45
[2026-06-13 02:44:45,512.512 INFO    ] 2026-06-13 02:44:45
[2026-06-13 02:44:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:45,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:45,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:45,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:45,933.933 INFO    ] time= 13/06/2026 02:44:45
[2026-06-13 02:44:45,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:45,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:46,073.073 INFO    ] No existing commands found in stream
[2026-06-13 02:44:51,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:44:51,086.086 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 02:44:54,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:44:54,781.781 INFO    ] Checking for system updates...
[2026-06-13 02:44:54,802.802 INFO    ] 200
[2026-06-13 02:44:54,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:54,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:54,837.837 INFO    ] No update needed
[2026-06-13 02:44:54,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 02:44:54,860.860 INFO    ] 200
[2026-06-13 02:44:54,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:44:54,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:44:54,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:44:54,923.923 INFO    ] No camera update needed
[2026-06-13 02:44:54,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:44:54,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:44:54,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:44:54,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:44:56,975.975 INFO    ] ================================================
[2026-06-13 02:44:56,990.990 INFO    ] Launching Daemon at Sat Jun 13 02:44:56 IST 2026
[2026-06-13 02:44:57,001.001 INFO    ] ================================================
[2026-06-13 02:44:57,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:44:57
[2026-06-13 02:44:57,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:44:57,815.815 INFO    ] Initializing speech engine...
[2026-06-13 02:44:57,821.821 INFO    ] 2026-06-13 02:44:57
[2026-06-13 02:44:58,024.024 INFO    ] 2026-06-13 02:44:58
[2026-06-13 02:44:58,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:44:58,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:44:58,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:44:58,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:44:58,428.428 INFO    ] time= 13/06/2026 02:44:58
[2026-06-13 02:44:58,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:44:58,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:44:58,539.539 INFO    ] No existing commands found in stream
[2026-06-13 02:45:03,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:45:03,573.573 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 02:45:03,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:45:03,871.871 INFO    ] Checking for system updates...
[2026-06-13 02:45:03,892.892 INFO    ] 200
[2026-06-13 02:45:03,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:03,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:03,925.925 INFO    ] No update needed
[2026-06-13 02:45:03,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 02:45:03,947.947 INFO    ] 200
[2026-06-13 02:45:03,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:03,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:45:04,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:45:04,010.010 INFO    ] No camera update needed
[2026-06-13 02:45:04,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:45:04,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:45:04,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:45:04,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:45:06,057.057 INFO    ] ================================================
[2026-06-13 02:45:06,073.073 INFO    ] Launching Daemon at Sat Jun 13 02:45:06 IST 2026
[2026-06-13 02:45:06,083.083 INFO    ] ================================================
[2026-06-13 02:45:06,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:45:06
[2026-06-13 02:45:07,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:45:07,423.423 INFO    ] Initializing speech engine...
[2026-06-13 02:45:07,448.448 INFO    ] 2026-06-13 02:45:07
[2026-06-13 02:45:07,724.724 INFO    ] 2026-06-13 02:45:07
[2026-06-13 02:45:07,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:45:07,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:45:07,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:45:08,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:45:08,106.106 INFO    ] time= 13/06/2026 02:45:08
[2026-06-13 02:45:08,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:45:08,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:45:08,232.232 INFO    ] No existing commands found in stream
[2026-06-13 02:45:13,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:45:13,247.247 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 02:45:17,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:45:17,303.303 INFO    ] Checking for system updates...
[2026-06-13 02:45:17,323.323 INFO    ] 200
[2026-06-13 02:45:17,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:17,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:17,357.357 INFO    ] No update needed
[2026-06-13 02:45:17,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 02:45:17,378.378 INFO    ] 200
[2026-06-13 02:45:17,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:17,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:45:17,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:17,454.454 INFO    ] No camera update needed
[2026-06-13 02:45:17,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:45:17,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:45:17,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:45:17,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:45:19,503.503 INFO    ] ================================================
[2026-06-13 02:45:19,518.518 INFO    ] Launching Daemon at Sat Jun 13 02:45:19 IST 2026
[2026-06-13 02:45:19,529.529 INFO    ] ================================================
[2026-06-13 02:45:19,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:45:19
[2026-06-13 02:45:20,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:45:20,335.335 INFO    ] Initializing speech engine...
[2026-06-13 02:45:20,340.340 INFO    ] 2026-06-13 02:45:20
[2026-06-13 02:45:20,543.543 INFO    ] 2026-06-13 02:45:20
[2026-06-13 02:45:20,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:45:20,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:45:20,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:45:20,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:45:20,950.950 INFO    ] time= 13/06/2026 02:45:20
[2026-06-13 02:45:20,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:45:20,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:45:21,060.060 INFO    ] No existing commands found in stream
[2026-06-13 02:45:26,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:45:26,073.073 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 02:45:29,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:45:29,869.869 INFO    ] Checking for system updates...
[2026-06-13 02:45:29,897.897 INFO    ] 200
[2026-06-13 02:45:29,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:29,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:29,934.934 INFO    ] No update needed
[2026-06-13 02:45:29,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 02:45:29,956.956 INFO    ] 200
[2026-06-13 02:45:29,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:29,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:45:30,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:30,024.024 INFO    ] No camera update needed
[2026-06-13 02:45:30,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:45:30,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:45:30,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:45:30,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:45:32,065.065 INFO    ] ================================================
[2026-06-13 02:45:32,074.074 INFO    ] Launching Daemon at Sat Jun 13 02:45:32 IST 2026
[2026-06-13 02:45:32,081.081 INFO    ] ================================================
[2026-06-13 02:45:32,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:45:32
[2026-06-13 02:45:32,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:45:32,866.866 INFO    ] Initializing speech engine...
[2026-06-13 02:45:32,871.871 INFO    ] 2026-06-13 02:45:32
[2026-06-13 02:45:33,074.074 INFO    ] 2026-06-13 02:45:33
[2026-06-13 02:45:33,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:45:33,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:45:33,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:45:33,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:45:33,478.478 INFO    ] time= 13/06/2026 02:45:33
[2026-06-13 02:45:33,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:45:33,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:45:33,612.612 INFO    ] No existing commands found in stream
[2026-06-13 02:45:38,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:45:38,624.624 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 02:45:39,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:45:39,285.285 INFO    ] Checking for system updates...
[2026-06-13 02:45:39,305.305 INFO    ] 200
[2026-06-13 02:45:39,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:39,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:39,338.338 INFO    ] No update needed
[2026-06-13 02:45:39,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 02:45:39,359.359 INFO    ] 200
[2026-06-13 02:45:39,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:39,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:45:39,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:39,425.425 INFO    ] No camera update needed
[2026-06-13 02:45:39,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:45:39,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:45:39,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:45:39,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:45:41,474.474 INFO    ] ================================================
[2026-06-13 02:45:41,490.490 INFO    ] Launching Daemon at Sat Jun 13 02:45:41 IST 2026
[2026-06-13 02:45:41,501.501 INFO    ] ================================================
[2026-06-13 02:45:41,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:45:41
[2026-06-13 02:45:42,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:45:42,322.322 INFO    ] Initializing speech engine...
[2026-06-13 02:45:42,326.326 INFO    ] 2026-06-13 02:45:42
[2026-06-13 02:45:42,531.531 INFO    ] 2026-06-13 02:45:42
[2026-06-13 02:45:42,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:45:42,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:45:42,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:45:42,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:45:42,936.936 INFO    ] time= 13/06/2026 02:45:42
[2026-06-13 02:45:42,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:45:42,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:45:43,046.046 INFO    ] No existing commands found in stream
[2026-06-13 02:45:48,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:45:48,081.081 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 02:45:52,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:45:52,085.085 INFO    ] Checking for system updates...
[2026-06-13 02:45:52,106.106 INFO    ] 200
[2026-06-13 02:45:52,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:52,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:52,141.141 INFO    ] No update needed
[2026-06-13 02:45:52,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 02:45:52,162.162 INFO    ] 200
[2026-06-13 02:45:52,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:45:52,190.190 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:45:52,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:45:52,230.230 INFO    ] No camera update needed
[2026-06-13 02:45:52,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:45:52,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:45:52,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:45:52,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:45:54,279.279 INFO    ] ================================================
[2026-06-13 02:45:54,294.294 INFO    ] Launching Daemon at Sat Jun 13 02:45:54 IST 2026
[2026-06-13 02:45:54,305.305 INFO    ] ================================================
[2026-06-13 02:45:54,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:45:54
[2026-06-13 02:45:54,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:45:55,080.080 INFO    ] Initializing speech engine...
[2026-06-13 02:45:55,085.085 INFO    ] 2026-06-13 02:45:55
[2026-06-13 02:45:55,313.313 INFO    ] 2026-06-13 02:45:55
[2026-06-13 02:45:55,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:45:55,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:45:55,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:45:55,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:45:55,733.733 INFO    ] time= 13/06/2026 02:45:55
[2026-06-13 02:45:55,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:45:55,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:45:55,863.863 INFO    ] No existing commands found in stream
[2026-06-13 02:46:00,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:00,873.873 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 02:46:02,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:46:02,288.288 INFO    ] Checking for system updates...
[2026-06-13 02:46:02,316.316 INFO    ] 200
[2026-06-13 02:46:02,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:02,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:46:02,364.364 INFO    ] No update needed
[2026-06-13 02:46:02,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 02:46:02,395.395 INFO    ] 200
[2026-06-13 02:46:02,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:02,464.464 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:46:02,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:46:02,599.599 INFO    ] No camera update needed
[2026-06-13 02:46:02,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:46:02,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:46:02,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:46:02,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:46:04,665.665 INFO    ] ================================================
[2026-06-13 02:46:04,680.680 INFO    ] Launching Daemon at Sat Jun 13 02:46:04 IST 2026
[2026-06-13 02:46:04,692.692 INFO    ] ================================================
[2026-06-13 02:46:05,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:46:05
[2026-06-13 02:46:05,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:46:05,856.856 INFO    ] Initializing speech engine...
[2026-06-13 02:46:05,866.866 INFO    ] 2026-06-13 02:46:05
[2026-06-13 02:46:06,070.070 INFO    ] 2026-06-13 02:46:06
[2026-06-13 02:46:06,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:46:06,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:46:06,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:46:06,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:46:06,478.478 INFO    ] time= 13/06/2026 02:46:06
[2026-06-13 02:46:06,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:46:06,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:46:06,600.600 INFO    ] No existing commands found in stream
[2026-06-13 02:46:11,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:11,614.614 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 02:46:14,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:46:14,687.687 INFO    ] Checking for system updates...
[2026-06-13 02:46:14,708.708 INFO    ] 200
[2026-06-13 02:46:14,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:14,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:46:14,742.742 INFO    ] No update needed
[2026-06-13 02:46:14,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 02:46:14,764.764 INFO    ] 200
[2026-06-13 02:46:14,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:14,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:46:14,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:46:14,835.835 INFO    ] No camera update needed
[2026-06-13 02:46:14,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:46:14,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:46:14,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:46:14,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:46:16,884.884 INFO    ] ================================================
[2026-06-13 02:46:16,900.900 INFO    ] Launching Daemon at Sat Jun 13 02:46:16 IST 2026
[2026-06-13 02:46:16,910.910 INFO    ] ================================================
[2026-06-13 02:46:17,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:46:17
[2026-06-13 02:46:17,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:46:17,736.736 INFO    ] Initializing speech engine...
[2026-06-13 02:46:17,742.742 INFO    ] 2026-06-13 02:46:17
[2026-06-13 02:46:17,966.966 INFO    ] 2026-06-13 02:46:17
[2026-06-13 02:46:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:46:18,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:46:18,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:46:18,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:46:18,378.378 INFO    ] time= 13/06/2026 02:46:18
[2026-06-13 02:46:18,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:46:18,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:46:18,491.491 INFO    ] No existing commands found in stream
[2026-06-13 02:46:23,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:23,509.509 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 02:46:26,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:46:26,704.704 INFO    ] Checking for system updates...
[2026-06-13 02:46:26,726.726 INFO    ] 200
[2026-06-13 02:46:26,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:26,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:46:26,759.759 INFO    ] No update needed
[2026-06-13 02:46:26,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 02:46:26,781.781 INFO    ] 200
[2026-06-13 02:46:26,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:26,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:46:26,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:46:26,849.849 INFO    ] No camera update needed
[2026-06-13 02:46:26,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:46:26,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:46:26,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:46:26,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:46:28,896.896 INFO    ] ================================================
[2026-06-13 02:46:28,911.911 INFO    ] Launching Daemon at Sat Jun 13 02:46:28 IST 2026
[2026-06-13 02:46:28,922.922 INFO    ] ================================================
[2026-06-13 02:46:29,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:46:29
[2026-06-13 02:46:29,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:46:29,696.696 INFO    ] Initializing speech engine...
[2026-06-13 02:46:29,704.704 INFO    ] 2026-06-13 02:46:29
[2026-06-13 02:46:29,928.928 INFO    ] 2026-06-13 02:46:29
[2026-06-13 02:46:29,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:46:30,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:46:30,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:46:30,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:46:30,360.360 INFO    ] time= 13/06/2026 02:46:30
[2026-06-13 02:46:30,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:46:30,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:46:30,462.462 INFO    ] No existing commands found in stream
[2026-06-13 02:46:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:35,473.473 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 02:46:38,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:46:38,285.285 INFO    ] Checking for system updates...
[2026-06-13 02:46:38,306.306 INFO    ] 200
[2026-06-13 02:46:38,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:38,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:46:38,342.342 INFO    ] No update needed
[2026-06-13 02:46:38,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 02:46:38,364.364 INFO    ] 200
[2026-06-13 02:46:38,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:38,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:46:38,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:46:38,437.437 INFO    ] No camera update needed
[2026-06-13 02:46:38,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:46:38,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:46:38,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:46:38,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:46:40,485.485 INFO    ] ================================================
[2026-06-13 02:46:40,501.501 INFO    ] Launching Daemon at Sat Jun 13 02:46:40 IST 2026
[2026-06-13 02:46:40,512.512 INFO    ] ================================================
[2026-06-13 02:46:40,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:46:40
[2026-06-13 02:46:41,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:46:41,293.293 INFO    ] Initializing speech engine...
[2026-06-13 02:46:41,304.304 INFO    ] 2026-06-13 02:46:41
[2026-06-13 02:46:41,528.528 INFO    ] 2026-06-13 02:46:41
[2026-06-13 02:46:41,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:46:41,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:46:41,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:46:41,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:46:41,911.911 INFO    ] time= 13/06/2026 02:46:41
[2026-06-13 02:46:41,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:46:41,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:46:42,094.094 INFO    ] No existing commands found in stream
[2026-06-13 02:46:47,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:47,108.108 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 02:46:49,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:46:49,521.521 INFO    ] Checking for system updates...
[2026-06-13 02:46:49,542.542 INFO    ] 200
[2026-06-13 02:46:49,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:49,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:46:49,577.577 INFO    ] No update needed
[2026-06-13 02:46:49,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 02:46:49,598.598 INFO    ] 200
[2026-06-13 02:46:49,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:46:49,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:46:49,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:46:49,666.666 INFO    ] No camera update needed
[2026-06-13 02:46:49,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:46:49,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:46:49,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:46:49,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:46:51,715.715 INFO    ] ================================================
[2026-06-13 02:46:51,730.730 INFO    ] Launching Daemon at Sat Jun 13 02:46:51 IST 2026
[2026-06-13 02:46:51,741.741 INFO    ] ================================================
[2026-06-13 02:46:52,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:46:52
[2026-06-13 02:46:52,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:46:52,532.532 INFO    ] Initializing speech engine...
[2026-06-13 02:46:52,540.540 INFO    ] 2026-06-13 02:46:52
[2026-06-13 02:46:52,756.756 INFO    ] 2026-06-13 02:46:52
[2026-06-13 02:46:52,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:46:53,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:46:53,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:46:53,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:46:53,226.226 INFO    ] time= 13/06/2026 02:46:53
[2026-06-13 02:46:53,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:46:53,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:46:53,438.438 INFO    ] No existing commands found in stream
[2026-06-13 02:46:58,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:46:58,471.471 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 02:47:00,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:47:00,022.022 INFO    ] Checking for system updates...
[2026-06-13 02:47:00,043.043 INFO    ] 200
[2026-06-13 02:47:00,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:00,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:00,079.079 INFO    ] No update needed
[2026-06-13 02:47:00,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:00,100.100 INFO    ] 200
[2026-06-13 02:47:00,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:00,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:00,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:00,166.166 INFO    ] No camera update needed
[2026-06-13 02:47:00,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:00,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:00,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:00,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:02,209.209 INFO    ] ================================================
[2026-06-13 02:47:02,222.222 INFO    ] Launching Daemon at Sat Jun 13 02:47:02 IST 2026
[2026-06-13 02:47:02,229.229 INFO    ] ================================================
[2026-06-13 02:47:02,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:02
[2026-06-13 02:47:02,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:03,118.118 INFO    ] Initializing speech engine...
[2026-06-13 02:47:03,122.122 INFO    ] 2026-06-13 02:47:03
[2026-06-13 02:47:03,327.327 INFO    ] 2026-06-13 02:47:03
[2026-06-13 02:47:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:03,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:03,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:03,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:03,581.581 INFO    ] time= 13/06/2026 02:47:03
[2026-06-13 02:47:03,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:03,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:03,759.759 INFO    ] No existing commands found in stream
[2026-06-13 02:47:08,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:47:08,792.792 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 02:47:13,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:47:13,441.441 INFO    ] Checking for system updates...
[2026-06-13 02:47:13,478.478 INFO    ] 200
[2026-06-13 02:47:13,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:13,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:13,537.537 INFO    ] No update needed
[2026-06-13 02:47:13,540.540 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:13,568.568 INFO    ] 200
[2026-06-13 02:47:13,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:13,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:13,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:47:13,634.634 INFO    ] No camera update needed
[2026-06-13 02:47:13,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:13,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:13,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:13,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:15,682.682 INFO    ] ================================================
[2026-06-13 02:47:15,697.697 INFO    ] Launching Daemon at Sat Jun 13 02:47:15 IST 2026
[2026-06-13 02:47:15,707.707 INFO    ] ================================================
[2026-06-13 02:47:16,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:16
[2026-06-13 02:47:16,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:16,513.513 INFO    ] Initializing speech engine...
[2026-06-13 02:47:16,521.521 INFO    ] 2026-06-13 02:47:16
[2026-06-13 02:47:16,735.735 INFO    ] 2026-06-13 02:47:16
[2026-06-13 02:47:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:16,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:16,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:17,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:17,132.132 INFO    ] time= 13/06/2026 02:47:17
[2026-06-13 02:47:17,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:17,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:17,247.247 INFO    ] No existing commands found in stream
[2026-06-13 02:47:22,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:47:22,264.264 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 02:47:23,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:47:23,462.462 INFO    ] Checking for system updates...
[2026-06-13 02:47:23,484.484 INFO    ] 200
[2026-06-13 02:47:23,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:23,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:23,520.520 INFO    ] No update needed
[2026-06-13 02:47:23,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:23,541.541 INFO    ] 200
[2026-06-13 02:47:23,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:23,567.567 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:23,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:23,594.594 INFO    ] No camera update needed
[2026-06-13 02:47:23,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:23,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:23,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:23,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:25,641.641 INFO    ] ================================================
[2026-06-13 02:47:25,657.657 INFO    ] Launching Daemon at Sat Jun 13 02:47:25 IST 2026
[2026-06-13 02:47:25,667.667 INFO    ] ================================================
[2026-06-13 02:47:26,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:26
[2026-06-13 02:47:26,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:26,484.484 INFO    ] Initializing speech engine...
[2026-06-13 02:47:26,492.492 INFO    ] 2026-06-13 02:47:26
[2026-06-13 02:47:26,743.743 INFO    ] 2026-06-13 02:47:26
[2026-06-13 02:47:26,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:26,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:27,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:27,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:27,192.192 INFO    ] time= 13/06/2026 02:47:27
[2026-06-13 02:47:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:27,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:27,379.379 INFO    ] No existing commands found in stream
[2026-06-13 02:47:32,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:47:32,390.390 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 02:47:35,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:47:35,484.484 INFO    ] Checking for system updates...
[2026-06-13 02:47:35,505.505 INFO    ] 200
[2026-06-13 02:47:35,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:35,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:35,540.540 INFO    ] No update needed
[2026-06-13 02:47:35,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:35,562.562 INFO    ] 200
[2026-06-13 02:47:35,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:35,588.588 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:35,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:35,627.627 INFO    ] No camera update needed
[2026-06-13 02:47:35,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:35,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:35,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:35,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:37,677.677 INFO    ] ================================================
[2026-06-13 02:47:37,692.692 INFO    ] Launching Daemon at Sat Jun 13 02:47:37 IST 2026
[2026-06-13 02:47:37,703.703 INFO    ] ================================================
[2026-06-13 02:47:38,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:38
[2026-06-13 02:47:38,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:38,545.545 INFO    ] Initializing speech engine...
[2026-06-13 02:47:38,550.550 INFO    ] 2026-06-13 02:47:38
[2026-06-13 02:47:38,758.758 INFO    ] 2026-06-13 02:47:38
[2026-06-13 02:47:38,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:38,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:38,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:39,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:39,175.175 INFO    ] time= 13/06/2026 02:47:39
[2026-06-13 02:47:39,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:39,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:39,281.281 INFO    ] No existing commands found in stream
[2026-06-13 02:47:44,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:47:44,295.295 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 02:47:45,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:47:45,788.788 INFO    ] Checking for system updates...
[2026-06-13 02:47:45,809.809 INFO    ] 200
[2026-06-13 02:47:45,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:45,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:45,842.842 INFO    ] No update needed
[2026-06-13 02:47:45,843.843 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:45,863.863 INFO    ] 200
[2026-06-13 02:47:45,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:45,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:45,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:45,926.926 INFO    ] No camera update needed
[2026-06-13 02:47:45,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:45,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:45,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:45,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:47,973.973 INFO    ] ================================================
[2026-06-13 02:47:47,989.989 INFO    ] Launching Daemon at Sat Jun 13 02:47:47 IST 2026
[2026-06-13 02:47:48,000.000 INFO    ] ================================================
[2026-06-13 02:47:48,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:48
[2026-06-13 02:47:48,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:48,807.807 INFO    ] Initializing speech engine...
[2026-06-13 02:47:48,820.820 INFO    ] 2026-06-13 02:47:48
[2026-06-13 02:47:49,027.027 INFO    ] 2026-06-13 02:47:49
[2026-06-13 02:47:49,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:49,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:49,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:49,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:49,386.386 INFO    ] time= 13/06/2026 02:47:49
[2026-06-13 02:47:49,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:49,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:49,564.564 INFO    ] No existing commands found in stream
[2026-06-13 02:47:54,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:47:54,598.598 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 02:47:56,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:47:56,241.241 INFO    ] Checking for system updates...
[2026-06-13 02:47:56,262.262 INFO    ] 200
[2026-06-13 02:47:56,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:56,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:56,297.297 INFO    ] No update needed
[2026-06-13 02:47:56,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 02:47:56,319.319 INFO    ] 200
[2026-06-13 02:47:56,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:47:56,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:47:56,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:47:56,383.383 INFO    ] No camera update needed
[2026-06-13 02:47:56,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:47:56,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:47:56,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:47:56,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:47:58,431.431 INFO    ] ================================================
[2026-06-13 02:47:58,448.448 INFO    ] Launching Daemon at Sat Jun 13 02:47:58 IST 2026
[2026-06-13 02:47:58,459.459 INFO    ] ================================================
[2026-06-13 02:47:58,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:47:58
[2026-06-13 02:47:59,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:47:59,251.251 INFO    ] Initializing speech engine...
[2026-06-13 02:47:59,256.256 INFO    ] 2026-06-13 02:47:59
[2026-06-13 02:47:59,459.459 INFO    ] 2026-06-13 02:47:59
[2026-06-13 02:47:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:47:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:47:59,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:47:59,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:47:59,866.866 INFO    ] time= 13/06/2026 02:47:59
[2026-06-13 02:47:59,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:47:59,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:47:59,984.984 INFO    ] No existing commands found in stream
[2026-06-13 02:48:04,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:48:04,991.991 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 02:48:07,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:48:07,601.601 INFO    ] Checking for system updates...
[2026-06-13 02:48:07,641.641 INFO    ] 200
[2026-06-13 02:48:07,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:07,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:07,705.705 INFO    ] No update needed
[2026-06-13 02:48:07,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 02:48:07,741.741 INFO    ] 200
[2026-06-13 02:48:07,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:07,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:48:07,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:07,932.932 INFO    ] No camera update needed
[2026-06-13 02:48:07,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:48:07,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:48:07,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:48:07,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:48:09,980.980 INFO    ] ================================================
[2026-06-13 02:48:09,989.989 INFO    ] Launching Daemon at Sat Jun 13 02:48:09 IST 2026
[2026-06-13 02:48:10,000.000 INFO    ] ================================================
[2026-06-13 02:48:10,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:48:10
[2026-06-13 02:48:10,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:48:10,767.767 INFO    ] Initializing speech engine...
[2026-06-13 02:48:10,775.775 INFO    ] 2026-06-13 02:48:10
[2026-06-13 02:48:11,002.002 INFO    ] 2026-06-13 02:48:10
[2026-06-13 02:48:11,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:48:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:48:11,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:48:11,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:48:11,420.420 INFO    ] time= 13/06/2026 02:48:11
[2026-06-13 02:48:11,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:48:11,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:48:11,559.559 INFO    ] No existing commands found in stream
[2026-06-13 02:48:16,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:48:16,572.572 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 02:48:17,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:48:17,382.382 INFO    ] Checking for system updates...
[2026-06-13 02:48:17,403.403 INFO    ] 200
[2026-06-13 02:48:17,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:17,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:17,439.439 INFO    ] No update needed
[2026-06-13 02:48:17,441.441 INFO    ] Checking for camera pi updates...
[2026-06-13 02:48:17,462.462 INFO    ] 200
[2026-06-13 02:48:17,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:17,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:48:17,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:17,531.531 INFO    ] No camera update needed
[2026-06-13 02:48:17,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:48:17,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:48:17,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:48:17,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:48:19,579.579 INFO    ] ================================================
[2026-06-13 02:48:19,596.596 INFO    ] Launching Daemon at Sat Jun 13 02:48:19 IST 2026
[2026-06-13 02:48:19,608.608 INFO    ] ================================================
[2026-06-13 02:48:19,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:48:19
[2026-06-13 02:48:20,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:48:20,399.399 INFO    ] Initializing speech engine...
[2026-06-13 02:48:20,404.404 INFO    ] 2026-06-13 02:48:20
[2026-06-13 02:48:20,622.622 INFO    ] 2026-06-13 02:48:20
[2026-06-13 02:48:20,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:48:20,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:48:20,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:48:20,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:48:21,028.028 INFO    ] time= 13/06/2026 02:48:20
[2026-06-13 02:48:21,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:48:21,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:48:21,169.169 INFO    ] No existing commands found in stream
[2026-06-13 02:48:26,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:48:26,181.181 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 02:48:29,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:48:29,661.661 INFO    ] Checking for system updates...
[2026-06-13 02:48:29,682.682 INFO    ] 200
[2026-06-13 02:48:29,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:29,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:48:29,716.716 INFO    ] No update needed
[2026-06-13 02:48:29,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 02:48:29,737.737 INFO    ] 200
[2026-06-13 02:48:29,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:29,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:48:29,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:29,811.811 INFO    ] No camera update needed
[2026-06-13 02:48:29,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:48:29,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:48:29,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:48:29,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:48:31,861.861 INFO    ] ================================================
[2026-06-13 02:48:31,878.878 INFO    ] Launching Daemon at Sat Jun 13 02:48:31 IST 2026
[2026-06-13 02:48:31,886.886 INFO    ] ================================================
[2026-06-13 02:48:32,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:48:32
[2026-06-13 02:48:32,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:48:32,769.769 INFO    ] Initializing speech engine...
[2026-06-13 02:48:32,773.773 INFO    ] 2026-06-13 02:48:32
[2026-06-13 02:48:33,010.010 INFO    ] 2026-06-13 02:48:32
[2026-06-13 02:48:33,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:48:33,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:48:33,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:48:33,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:48:33,416.416 INFO    ] time= 13/06/2026 02:48:33
[2026-06-13 02:48:33,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:48:33,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:48:33,534.534 INFO    ] No existing commands found in stream
[2026-06-13 02:48:38,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:48:38,552.552 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 02:48:42,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:48:42,155.155 INFO    ] Checking for system updates...
[2026-06-13 02:48:42,177.177 INFO    ] 200
[2026-06-13 02:48:42,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:42,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:42,212.212 INFO    ] No update needed
[2026-06-13 02:48:42,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 02:48:42,233.233 INFO    ] 200
[2026-06-13 02:48:42,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:42,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:48:42,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:42,297.297 INFO    ] No camera update needed
[2026-06-13 02:48:42,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:48:42,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:48:42,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:48:42,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:48:44,346.346 INFO    ] ================================================
[2026-06-13 02:48:44,361.361 INFO    ] Launching Daemon at Sat Jun 13 02:48:44 IST 2026
[2026-06-13 02:48:44,372.372 INFO    ] ================================================
[2026-06-13 02:48:44,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:48:44
[2026-06-13 02:48:45,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:48:45,153.153 INFO    ] Initializing speech engine...
[2026-06-13 02:48:45,166.166 INFO    ] 2026-06-13 02:48:45
[2026-06-13 02:48:45,358.358 INFO    ] 2026-06-13 02:48:45
[2026-06-13 02:48:45,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:48:45,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:48:45,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:48:45,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:48:45,811.811 INFO    ] time= 13/06/2026 02:48:45
[2026-06-13 02:48:45,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:48:45,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:48:46,043.043 INFO    ] No existing commands found in stream
[2026-06-13 02:48:51,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:48:51,077.077 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 02:48:53,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:48:53,259.259 INFO    ] Checking for system updates...
[2026-06-13 02:48:53,300.300 INFO    ] 200
[2026-06-13 02:48:53,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:53,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:53,366.366 INFO    ] No update needed
[2026-06-13 02:48:53,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 02:48:53,403.403 INFO    ] 200
[2026-06-13 02:48:53,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:48:53,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:48:53,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:48:53,467.467 INFO    ] No camera update needed
[2026-06-13 02:48:53,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:48:53,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:48:53,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:48:53,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:48:55,515.515 INFO    ] ================================================
[2026-06-13 02:48:55,530.530 INFO    ] Launching Daemon at Sat Jun 13 02:48:55 IST 2026
[2026-06-13 02:48:55,540.540 INFO    ] ================================================
[2026-06-13 02:48:55,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:48:55
[2026-06-13 02:48:56,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:48:56,312.312 INFO    ] Initializing speech engine...
[2026-06-13 02:48:56,322.322 INFO    ] 2026-06-13 02:48:56
[2026-06-13 02:48:56,529.529 INFO    ] 2026-06-13 02:48:56
[2026-06-13 02:48:56,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:48:56,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:48:56,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:48:56,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:48:56,882.882 INFO    ] time= 13/06/2026 02:48:56
[2026-06-13 02:48:56,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:48:56,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:48:57,025.025 INFO    ] No existing commands found in stream
[2026-06-13 02:49:02,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:02,041.041 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 02:49:04,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:49:04,465.465 INFO    ] Checking for system updates...
[2026-06-13 02:49:04,503.503 INFO    ] 200
[2026-06-13 02:49:04,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:04,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:04,568.568 INFO    ] No update needed
[2026-06-13 02:49:04,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:04,611.611 INFO    ] 200
[2026-06-13 02:49:04,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:04,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:04,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:04,685.685 INFO    ] No camera update needed
[2026-06-13 02:49:04,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:04,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:04,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:04,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:49:06,741.741 INFO    ] ================================================
[2026-06-13 02:49:06,756.756 INFO    ] Launching Daemon at Sat Jun 13 02:49:06 IST 2026
[2026-06-13 02:49:06,767.767 INFO    ] ================================================
[2026-06-13 02:49:07,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:49:07
[2026-06-13 02:49:07,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:49:07,556.556 INFO    ] Initializing speech engine...
[2026-06-13 02:49:07,568.568 INFO    ] 2026-06-13 02:49:07
[2026-06-13 02:49:07,755.755 INFO    ] 2026-06-13 02:49:07
[2026-06-13 02:49:07,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:49:08,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:49:08,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:49:08,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:49:08,255.255 INFO    ] time= 13/06/2026 02:49:08
[2026-06-13 02:49:08,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:49:08,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:49:08,406.406 INFO    ] No existing commands found in stream
[2026-06-13 02:49:13,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:13,424.424 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 02:49:14,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:49:14,044.044 INFO    ] Checking for system updates...
[2026-06-13 02:49:14,065.065 INFO    ] 200
[2026-06-13 02:49:14,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:14,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:14,097.097 INFO    ] No update needed
[2026-06-13 02:49:14,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:14,118.118 INFO    ] 200
[2026-06-13 02:49:14,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:14,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:14,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:14,186.186 INFO    ] No camera update needed
[2026-06-13 02:49:14,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:14,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:14,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:14,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:49:16,233.233 INFO    ] ================================================
[2026-06-13 02:49:16,249.249 INFO    ] Launching Daemon at Sat Jun 13 02:49:16 IST 2026
[2026-06-13 02:49:16,260.260 INFO    ] ================================================
[2026-06-13 02:49:16,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:49:16
[2026-06-13 02:49:16,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:49:17,071.071 INFO    ] Initializing speech engine...
[2026-06-13 02:49:17,079.079 INFO    ] 2026-06-13 02:49:17
[2026-06-13 02:49:17,300.300 INFO    ] 2026-06-13 02:49:17
[2026-06-13 02:49:17,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:49:17,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:49:17,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:49:17,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:49:17,718.718 INFO    ] time= 13/06/2026 02:49:17
[2026-06-13 02:49:17,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:49:17,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:49:17,830.830 INFO    ] No existing commands found in stream
[2026-06-13 02:49:22,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:22,842.842 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 02:49:24,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:49:24,271.271 INFO    ] Checking for system updates...
[2026-06-13 02:49:24,310.310 INFO    ] 200
[2026-06-13 02:49:24,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:24,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:49:24,371.371 INFO    ] No update needed
[2026-06-13 02:49:24,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:24,410.410 INFO    ] 200
[2026-06-13 02:49:24,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:24,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:24,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:24,489.489 INFO    ] No camera update needed
[2026-06-13 02:49:24,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:24,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:24,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:24,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:49:26,536.536 INFO    ] ================================================
[2026-06-13 02:49:26,551.551 INFO    ] Launching Daemon at Sat Jun 13 02:49:26 IST 2026
[2026-06-13 02:49:26,562.562 INFO    ] ================================================
[2026-06-13 02:49:26,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:49:26
[2026-06-13 02:49:27,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:49:27,375.375 INFO    ] Initializing speech engine...
[2026-06-13 02:49:27,381.381 INFO    ] 2026-06-13 02:49:27
[2026-06-13 02:49:27,583.583 INFO    ] 2026-06-13 02:49:27
[2026-06-13 02:49:27,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:49:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:49:27,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:49:27,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:49:27,984.984 INFO    ] time= 13/06/2026 02:49:27
[2026-06-13 02:49:28,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:49:28,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:49:28,099.099 INFO    ] No existing commands found in stream
[2026-06-13 02:49:33,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:33,126.126 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 02:49:36,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:49:36,575.575 INFO    ] Checking for system updates...
[2026-06-13 02:49:36,595.595 INFO    ] 200
[2026-06-13 02:49:36,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:36,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:36,630.630 INFO    ] No update needed
[2026-06-13 02:49:36,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:36,651.651 INFO    ] 200
[2026-06-13 02:49:36,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:36,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:36,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:36,724.724 INFO    ] No camera update needed
[2026-06-13 02:49:36,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:36,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:36,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:36,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:49:38,771.771 INFO    ] ================================================
[2026-06-13 02:49:38,786.786 INFO    ] Launching Daemon at Sat Jun 13 02:49:38 IST 2026
[2026-06-13 02:49:38,797.797 INFO    ] ================================================
[2026-06-13 02:49:39,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:49:39
[2026-06-13 02:49:39,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:49:39,654.654 INFO    ] Initializing speech engine...
[2026-06-13 02:49:39,657.657 INFO    ] 2026-06-13 02:49:39
[2026-06-13 02:49:39,864.864 INFO    ] 2026-06-13 02:49:39
[2026-06-13 02:49:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:49:40,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:49:40,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:49:40,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:49:40,275.275 INFO    ] time= 13/06/2026 02:49:40
[2026-06-13 02:49:40,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:49:40,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:49:40,381.381 INFO    ] No existing commands found in stream
[2026-06-13 02:49:45,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:45,393.393 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 02:49:47,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:49:47,381.381 INFO    ] Checking for system updates...
[2026-06-13 02:49:47,405.405 INFO    ] 200
[2026-06-13 02:49:47,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:47,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:49:47,440.440 INFO    ] No update needed
[2026-06-13 02:49:47,441.441 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:47,461.461 INFO    ] 200
[2026-06-13 02:49:47,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:47,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:47,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:49:47,525.525 INFO    ] No camera update needed
[2026-06-13 02:49:47,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:47,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:47,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:47,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:49:49,573.573 INFO    ] ================================================
[2026-06-13 02:49:49,588.588 INFO    ] Launching Daemon at Sat Jun 13 02:49:49 IST 2026
[2026-06-13 02:49:49,599.599 INFO    ] ================================================
[2026-06-13 02:49:49,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:49:49
[2026-06-13 02:49:50,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:49:50,422.422 INFO    ] Initializing speech engine...
[2026-06-13 02:49:50,427.427 INFO    ] 2026-06-13 02:49:50
[2026-06-13 02:49:50,630.630 INFO    ] 2026-06-13 02:49:50
[2026-06-13 02:49:50,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:49:50,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:49:50,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:49:50,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:49:51,032.032 INFO    ] time= 13/06/2026 02:49:50
[2026-06-13 02:49:51,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:49:51,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:49:51,140.140 INFO    ] No existing commands found in stream
[2026-06-13 02:49:56,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:49:56,154.154 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 02:49:57,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:49:57,830.830 INFO    ] Checking for system updates...
[2026-06-13 02:49:57,853.853 INFO    ] 200
[2026-06-13 02:49:57,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:57,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:57,894.894 INFO    ] No update needed
[2026-06-13 02:49:57,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 02:49:57,918.918 INFO    ] 200
[2026-06-13 02:49:57,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:49:57,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:49:57,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:49:57,983.983 INFO    ] No camera update needed
[2026-06-13 02:49:57,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:49:57,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:49:57,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:49:57,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:50:00,027.027 INFO    ] ================================================
[2026-06-13 02:50:00,036.036 INFO    ] Launching Daemon at Sat Jun 13 02:50:00 IST 2026
[2026-06-13 02:50:00,043.043 INFO    ] ================================================
[2026-06-13 02:50:00,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:50:00
[2026-06-13 02:50:00,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:50:00,812.812 INFO    ] Initializing speech engine...
[2026-06-13 02:50:00,821.821 INFO    ] 2026-06-13 02:50:00
[2026-06-13 02:50:01,007.007 INFO    ] 2026-06-13 02:50:01
[2026-06-13 02:50:01,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:50:01,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:50:01,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:50:01,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:50:01,369.369 INFO    ] time= 13/06/2026 02:50:01
[2026-06-13 02:50:01,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:50:01,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:50:01,421.421 INFO    ] No existing commands found in stream
[2026-06-13 02:50:06,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:50:06,431.431 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 02:50:09,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:50:09,222.222 INFO    ] Checking for system updates...
[2026-06-13 02:50:09,261.261 INFO    ] 200
[2026-06-13 02:50:09,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:09,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:50:09,315.315 INFO    ] No update needed
[2026-06-13 02:50:09,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 02:50:09,337.337 INFO    ] 200
[2026-06-13 02:50:09,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:09,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:50:09,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:50:09,401.401 INFO    ] No camera update needed
[2026-06-13 02:50:09,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:50:09,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:50:09,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:50:09,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:50:11,451.451 INFO    ] ================================================
[2026-06-13 02:50:11,466.466 INFO    ] Launching Daemon at Sat Jun 13 02:50:11 IST 2026
[2026-06-13 02:50:11,476.476 INFO    ] ================================================
[2026-06-13 02:50:11,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:50:11
[2026-06-13 02:50:12,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:50:12,273.273 INFO    ] Initializing speech engine...
[2026-06-13 02:50:12,278.278 INFO    ] 2026-06-13 02:50:12
[2026-06-13 02:50:12,483.483 INFO    ] 2026-06-13 02:50:12
[2026-06-13 02:50:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:50:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:50:12,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:50:12,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:50:12,896.896 INFO    ] time= 13/06/2026 02:50:12
[2026-06-13 02:50:12,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:50:12,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:50:13,000.000 INFO    ] No existing commands found in stream
[2026-06-13 02:50:18,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:50:18,013.013 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 02:50:21,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:50:21,538.538 INFO    ] Checking for system updates...
[2026-06-13 02:50:21,560.560 INFO    ] 200
[2026-06-13 02:50:21,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:21,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:50:21,600.600 INFO    ] No update needed
[2026-06-13 02:50:21,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 02:50:21,638.638 INFO    ] 200
[2026-06-13 02:50:21,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:21,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:50:21,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:50:21,829.829 INFO    ] No camera update needed
[2026-06-13 02:50:21,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:50:21,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:50:21,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:50:21,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:50:23,875.875 INFO    ] ================================================
[2026-06-13 02:50:23,891.891 INFO    ] Launching Daemon at Sat Jun 13 02:50:23 IST 2026
[2026-06-13 02:50:23,901.901 INFO    ] ================================================
[2026-06-13 02:50:24,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:50:24
[2026-06-13 02:50:24,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:50:24,752.752 INFO    ] Initializing speech engine...
[2026-06-13 02:50:24,763.763 INFO    ] 2026-06-13 02:50:24
[2026-06-13 02:50:24,969.969 INFO    ] 2026-06-13 02:50:24
[2026-06-13 02:50:24,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:50:25,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:50:25,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:50:25,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:50:25,373.373 INFO    ] time= 13/06/2026 02:50:25
[2026-06-13 02:50:25,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:50:25,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:50:25,483.483 INFO    ] No existing commands found in stream
[2026-06-13 02:50:30,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:50:30,497.497 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 02:50:32,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:50:32,487.487 INFO    ] Checking for system updates...
[2026-06-13 02:50:32,509.509 INFO    ] 200
[2026-06-13 02:50:32,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:32,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:50:32,545.545 INFO    ] No update needed
[2026-06-13 02:50:32,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 02:50:32,567.567 INFO    ] 200
[2026-06-13 02:50:32,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:32,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:50:32,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:50:32,622.622 INFO    ] No camera update needed
[2026-06-13 02:50:32,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:50:32,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:50:32,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:50:32,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:50:34,668.668 INFO    ] ================================================
[2026-06-13 02:50:34,683.683 INFO    ] Launching Daemon at Sat Jun 13 02:50:34 IST 2026
[2026-06-13 02:50:34,694.694 INFO    ] ================================================
[2026-06-13 02:50:35,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:50:35
[2026-06-13 02:50:35,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:50:35,561.561 INFO    ] Initializing speech engine...
[2026-06-13 02:50:35,566.566 INFO    ] 2026-06-13 02:50:35
[2026-06-13 02:50:35,772.772 INFO    ] 2026-06-13 02:50:35
[2026-06-13 02:50:35,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:50:35,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:50:35,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:50:36,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:50:36,188.188 INFO    ] time= 13/06/2026 02:50:36
[2026-06-13 02:50:36,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:50:36,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:50:36,289.289 INFO    ] No existing commands found in stream
[2026-06-13 02:50:41,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:50:41,306.306 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 02:50:45,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:50:45,264.264 INFO    ] Checking for system updates...
[2026-06-13 02:50:45,287.287 INFO    ] 200
[2026-06-13 02:50:45,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:45,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:50:45,321.321 INFO    ] No update needed
[2026-06-13 02:50:45,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 02:50:45,342.342 INFO    ] 200
[2026-06-13 02:50:45,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:50:45,369.369 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:50:45,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:50:45,407.407 INFO    ] No camera update needed
[2026-06-13 02:50:45,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:50:45,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:50:45,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:50:45,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:50:47,453.453 INFO    ] ================================================
[2026-06-13 02:50:47,468.468 INFO    ] Launching Daemon at Sat Jun 13 02:50:47 IST 2026
[2026-06-13 02:50:47,479.479 INFO    ] ================================================
[2026-06-13 02:50:47,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:50:47
[2026-06-13 02:50:48,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:50:48,272.272 INFO    ] Initializing speech engine...
[2026-06-13 02:50:48,283.283 INFO    ] 2026-06-13 02:50:48
[2026-06-13 02:50:48,483.483 INFO    ] 2026-06-13 02:50:48
[2026-06-13 02:50:48,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:50:48,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:50:48,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:50:51,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:50:51,965.965 INFO    ] time= 13/06/2026 02:50:51
[2026-06-13 02:50:51,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:50:51,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:50:56,979.979 INFO    ] Error reading historical messages: Timeout reading from socket
[2026-06-13 02:51:02,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:51:02,051.051 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 02:51:04,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:51:04,572.572 INFO    ] Checking for system updates...
[2026-06-13 02:51:04,593.593 INFO    ] 200
[2026-06-13 02:51:04,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:04,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:04,629.629 INFO    ] No update needed
[2026-06-13 02:51:04,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 02:51:04,651.651 INFO    ] 200
[2026-06-13 02:51:04,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:04,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:51:04,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:04,715.715 INFO    ] No camera update needed
[2026-06-13 02:51:04,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:51:04,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:51:04,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:51:04,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:51:06,762.762 INFO    ] ================================================
[2026-06-13 02:51:06,777.777 INFO    ] Launching Daemon at Sat Jun 13 02:51:06 IST 2026
[2026-06-13 02:51:06,787.787 INFO    ] ================================================
[2026-06-13 02:51:07,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:51:07
[2026-06-13 02:51:07,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:51:07,572.572 INFO    ] Initializing speech engine...
[2026-06-13 02:51:07,584.584 INFO    ] 2026-06-13 02:51:07
[2026-06-13 02:51:07,790.790 INFO    ] 2026-06-13 02:51:07
[2026-06-13 02:51:07,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:51:07,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:51:08,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:51:08,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:51:08,198.198 INFO    ] time= 13/06/2026 02:51:08
[2026-06-13 02:51:08,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:51:08,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:51:08,300.300 INFO    ] No existing commands found in stream
[2026-06-13 02:51:13,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:51:13,314.314 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 02:51:17,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:51:17,464.464 INFO    ] Checking for system updates...
[2026-06-13 02:51:17,486.486 INFO    ] 200
[2026-06-13 02:51:17,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:17,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:17,522.522 INFO    ] No update needed
[2026-06-13 02:51:17,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 02:51:17,543.543 INFO    ] 200
[2026-06-13 02:51:17,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:17,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:51:17,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:17,609.609 INFO    ] No camera update needed
[2026-06-13 02:51:17,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:51:17,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:51:17,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:51:17,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:51:19,660.660 INFO    ] ================================================
[2026-06-13 02:51:19,675.675 INFO    ] Launching Daemon at Sat Jun 13 02:51:19 IST 2026
[2026-06-13 02:51:19,686.686 INFO    ] ================================================
[2026-06-13 02:51:20,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:51:20
[2026-06-13 02:51:20,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:51:20,482.482 INFO    ] Initializing speech engine...
[2026-06-13 02:51:20,492.492 INFO    ] 2026-06-13 02:51:20
[2026-06-13 02:51:20,696.696 INFO    ] 2026-06-13 02:51:20
[2026-06-13 02:51:20,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:51:20,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:51:20,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:51:21,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:51:21,113.113 INFO    ] time= 13/06/2026 02:51:21
[2026-06-13 02:51:21,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:51:21,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:51:21,209.209 INFO    ] No existing commands found in stream
[2026-06-13 02:51:26,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:51:26,222.222 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 02:51:28,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:51:28,775.775 INFO    ] Checking for system updates...
[2026-06-13 02:51:28,795.795 INFO    ] 200
[2026-06-13 02:51:28,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:28,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:28,830.830 INFO    ] No update needed
[2026-06-13 02:51:28,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 02:51:28,852.852 INFO    ] 200
[2026-06-13 02:51:28,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:28,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:51:28,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:28,910.910 INFO    ] No camera update needed
[2026-06-13 02:51:28,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:51:28,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:51:28,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:51:28,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:51:30,958.958 INFO    ] ================================================
[2026-06-13 02:51:30,974.974 INFO    ] Launching Daemon at Sat Jun 13 02:51:30 IST 2026
[2026-06-13 02:51:30,984.984 INFO    ] ================================================
[2026-06-13 02:51:31,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:51:31
[2026-06-13 02:51:31,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:51:31,808.808 INFO    ] Initializing speech engine...
[2026-06-13 02:51:31,813.813 INFO    ] 2026-06-13 02:51:31
[2026-06-13 02:51:32,008.008 INFO    ] 2026-06-13 02:51:32
[2026-06-13 02:51:32,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:51:32,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:51:32,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:51:32,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:51:32,487.487 INFO    ] time= 13/06/2026 02:51:32
[2026-06-13 02:51:32,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:51:32,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:51:32,617.617 INFO    ] No existing commands found in stream
[2026-06-13 02:51:37,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:51:37,631.631 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 02:51:41,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:51:41,700.700 INFO    ] Checking for system updates...
[2026-06-13 02:51:41,721.721 INFO    ] 200
[2026-06-13 02:51:41,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:41,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:51:41,754.754 INFO    ] No update needed
[2026-06-13 02:51:41,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 02:51:41,776.776 INFO    ] 200
[2026-06-13 02:51:41,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:41,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:51:41,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:51:41,844.844 INFO    ] No camera update needed
[2026-06-13 02:51:41,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:51:41,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:51:41,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:51:41,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:51:43,890.890 INFO    ] ================================================
[2026-06-13 02:51:43,906.906 INFO    ] Launching Daemon at Sat Jun 13 02:51:43 IST 2026
[2026-06-13 02:51:43,917.917 INFO    ] ================================================
[2026-06-13 02:51:44,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:51:44
[2026-06-13 02:51:44,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:51:44,727.727 INFO    ] Initializing speech engine...
[2026-06-13 02:51:44,737.737 INFO    ] 2026-06-13 02:51:44
[2026-06-13 02:51:44,943.943 INFO    ] 2026-06-13 02:51:44
[2026-06-13 02:51:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:51:45,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:51:45,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:51:45,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:51:45,357.357 INFO    ] time= 13/06/2026 02:51:45
[2026-06-13 02:51:45,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:51:45,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:51:45,462.462 INFO    ] No existing commands found in stream
[2026-06-13 02:51:50,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:51:50,475.475 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 02:51:51,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:51:51,635.635 INFO    ] Checking for system updates...
[2026-06-13 02:51:51,656.656 INFO    ] 200
[2026-06-13 02:51:51,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:51,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:51,690.690 INFO    ] No update needed
[2026-06-13 02:51:51,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 02:51:51,711.711 INFO    ] 200
[2026-06-13 02:51:51,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:51:51,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:51:51,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:51:51,783.783 INFO    ] No camera update needed
[2026-06-13 02:51:51,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:51:51,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:51:51,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:51:51,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:51:53,830.830 INFO    ] ================================================
[2026-06-13 02:51:53,845.845 INFO    ] Launching Daemon at Sat Jun 13 02:51:53 IST 2026
[2026-06-13 02:51:53,856.856 INFO    ] ================================================
[2026-06-13 02:51:54,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:51:54
[2026-06-13 02:51:54,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:51:54,632.632 INFO    ] Initializing speech engine...
[2026-06-13 02:51:54,642.642 INFO    ] 2026-06-13 02:51:54
[2026-06-13 02:51:54,847.847 INFO    ] 2026-06-13 02:51:54
[2026-06-13 02:51:54,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:51:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:51:55,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:51:55,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:51:55,268.268 INFO    ] time= 13/06/2026 02:51:55
[2026-06-13 02:51:55,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:51:55,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:51:55,366.366 INFO    ] No existing commands found in stream
[2026-06-13 02:52:00,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:00,377.377 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 02:52:03,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:52:03,486.486 INFO    ] Checking for system updates...
[2026-06-13 02:52:03,524.524 INFO    ] 200
[2026-06-13 02:52:03,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:03,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:03,586.586 INFO    ] No update needed
[2026-06-13 02:52:03,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:03,623.623 INFO    ] 200
[2026-06-13 02:52:03,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:03,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:03,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:03,709.709 INFO    ] No camera update needed
[2026-06-13 02:52:03,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:03,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:03,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:03,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:52:05,766.766 INFO    ] ================================================
[2026-06-13 02:52:05,781.781 INFO    ] Launching Daemon at Sat Jun 13 02:52:05 IST 2026
[2026-06-13 02:52:05,792.792 INFO    ] ================================================
[2026-06-13 02:52:06,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:52:06
[2026-06-13 02:52:06,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:52:06,599.599 INFO    ] Initializing speech engine...
[2026-06-13 02:52:06,607.607 INFO    ] 2026-06-13 02:52:06
[2026-06-13 02:52:06,829.829 INFO    ] 2026-06-13 02:52:06
[2026-06-13 02:52:06,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:52:07,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:52:07,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:52:07,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:52:07,251.251 INFO    ] time= 13/06/2026 02:52:07
[2026-06-13 02:52:07,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:52:07,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:52:07,370.370 INFO    ] No existing commands found in stream
[2026-06-13 02:52:12,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:12,411.411 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 02:52:14,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:52:14,133.133 INFO    ] Checking for system updates...
[2026-06-13 02:52:14,154.154 INFO    ] 200
[2026-06-13 02:52:14,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:14,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:14,188.188 INFO    ] No update needed
[2026-06-13 02:52:14,189.189 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:14,210.210 INFO    ] 200
[2026-06-13 02:52:14,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:14,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:14,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:14,258.258 INFO    ] No camera update needed
[2026-06-13 02:52:14,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:14,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:14,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:14,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:52:16,305.305 INFO    ] ================================================
[2026-06-13 02:52:16,321.321 INFO    ] Launching Daemon at Sat Jun 13 02:52:16 IST 2026
[2026-06-13 02:52:16,332.332 INFO    ] ================================================
[2026-06-13 02:52:16,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:52:16
[2026-06-13 02:52:16,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:52:17,103.103 INFO    ] Initializing speech engine...
[2026-06-13 02:52:17,107.107 INFO    ] 2026-06-13 02:52:17
[2026-06-13 02:52:17,324.324 INFO    ] 2026-06-13 02:52:17
[2026-06-13 02:52:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:52:17,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:52:17,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:52:17,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:52:17,730.730 INFO    ] time= 13/06/2026 02:52:17
[2026-06-13 02:52:17,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:52:17,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:52:17,840.840 INFO    ] No existing commands found in stream
[2026-06-13 02:52:22,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:22,852.852 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 02:52:24,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:52:24,192.192 INFO    ] Checking for system updates...
[2026-06-13 02:52:24,213.213 INFO    ] 200
[2026-06-13 02:52:24,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:24,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:24,249.249 INFO    ] No update needed
[2026-06-13 02:52:24,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:24,272.272 INFO    ] 200
[2026-06-13 02:52:24,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:24,298.298 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:24,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:24,441.441 INFO    ] No camera update needed
[2026-06-13 02:52:24,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:24,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:24,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:24,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:52:26,488.488 INFO    ] ================================================
[2026-06-13 02:52:26,504.504 INFO    ] Launching Daemon at Sat Jun 13 02:52:26 IST 2026
[2026-06-13 02:52:26,515.515 INFO    ] ================================================
[2026-06-13 02:52:26,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:52:26
[2026-06-13 02:52:27,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:52:27,334.334 INFO    ] Initializing speech engine...
[2026-06-13 02:52:27,340.340 INFO    ] 2026-06-13 02:52:27
[2026-06-13 02:52:27,543.543 INFO    ] 2026-06-13 02:52:27
[2026-06-13 02:52:27,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:52:27,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:52:27,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:52:27,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:52:27,954.954 INFO    ] time= 13/06/2026 02:52:27
[2026-06-13 02:52:27,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:52:27,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:52:28,059.059 INFO    ] No existing commands found in stream
[2026-06-13 02:52:33,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:33,067.067 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 02:52:34,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:52:34,749.749 INFO    ] Checking for system updates...
[2026-06-13 02:52:34,770.770 INFO    ] 200
[2026-06-13 02:52:34,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:34,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:34,808.808 INFO    ] No update needed
[2026-06-13 02:52:34,809.809 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:34,829.829 INFO    ] 200
[2026-06-13 02:52:34,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:34,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:34,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:52:34,895.895 INFO    ] No camera update needed
[2026-06-13 02:52:34,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:34,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:34,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:34,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:52:36,943.943 INFO    ] ================================================
[2026-06-13 02:52:36,958.958 INFO    ] Launching Daemon at Sat Jun 13 02:52:36 IST 2026
[2026-06-13 02:52:36,969.969 INFO    ] ================================================
[2026-06-13 02:52:37,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:52:37
[2026-06-13 02:52:37,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:52:37,786.786 INFO    ] Initializing speech engine...
[2026-06-13 02:52:37,794.794 INFO    ] 2026-06-13 02:52:37
[2026-06-13 02:52:38,001.001 INFO    ] 2026-06-13 02:52:37
[2026-06-13 02:52:38,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:52:38,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:52:38,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:52:38,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:52:38,400.400 INFO    ] time= 13/06/2026 02:52:38
[2026-06-13 02:52:38,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:52:38,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:52:38,514.514 INFO    ] No existing commands found in stream
[2026-06-13 02:52:43,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:43,526.526 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 02:52:46,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:52:46,601.601 INFO    ] Checking for system updates...
[2026-06-13 02:52:46,622.622 INFO    ] 200
[2026-06-13 02:52:46,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:46,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:46,660.660 INFO    ] No update needed
[2026-06-13 02:52:46,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:46,680.680 INFO    ] 200
[2026-06-13 02:52:46,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:46,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:46,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:46,761.761 INFO    ] No camera update needed
[2026-06-13 02:52:46,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:46,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:46,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:46,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:52:48,811.811 INFO    ] ================================================
[2026-06-13 02:52:48,827.827 INFO    ] Launching Daemon at Sat Jun 13 02:52:48 IST 2026
[2026-06-13 02:52:48,838.838 INFO    ] ================================================
[2026-06-13 02:52:49,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:52:49
[2026-06-13 02:52:49,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:52:50,077.077 INFO    ] Initializing speech engine...
[2026-06-13 02:52:50,083.083 INFO    ] 2026-06-13 02:52:50
[2026-06-13 02:52:50,289.289 INFO    ] 2026-06-13 02:52:50
[2026-06-13 02:52:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:52:50,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:52:50,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:52:50,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:52:50,690.690 INFO    ] time= 13/06/2026 02:52:50
[2026-06-13 02:52:50,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:52:50,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:52:50,805.805 INFO    ] No existing commands found in stream
[2026-06-13 02:52:55,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:52:55,818.818 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 02:52:59,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:52:59,650.650 INFO    ] Checking for system updates...
[2026-06-13 02:52:59,672.672 INFO    ] 200
[2026-06-13 02:52:59,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:59,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:59,710.710 INFO    ] No update needed
[2026-06-13 02:52:59,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 02:52:59,735.735 INFO    ] 200
[2026-06-13 02:52:59,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:52:59,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:52:59,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:52:59,805.805 INFO    ] No camera update needed
[2026-06-13 02:52:59,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:52:59,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:52:59,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:52:59,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:53:01,851.851 INFO    ] ================================================
[2026-06-13 02:53:01,866.866 INFO    ] Launching Daemon at Sat Jun 13 02:53:01 IST 2026
[2026-06-13 02:53:01,877.877 INFO    ] ================================================
[2026-06-13 02:53:02,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:53:02
[2026-06-13 02:53:02,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:53:02,767.767 INFO    ] Initializing speech engine...
[2026-06-13 02:53:02,778.778 INFO    ] 2026-06-13 02:53:02
[2026-06-13 02:53:02,987.987 INFO    ] 2026-06-13 02:53:02
[2026-06-13 02:53:03,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:53:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:53:03,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:53:03,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:53:03,323.323 INFO    ] time= 13/06/2026 02:53:03
[2026-06-13 02:53:03,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:53:03,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:53:03,507.507 INFO    ] No existing commands found in stream
[2026-06-13 02:53:08,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:53:08,520.520 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 02:53:12,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:53:12,761.761 INFO    ] Checking for system updates...
[2026-06-13 02:53:12,781.781 INFO    ] 200
[2026-06-13 02:53:12,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:12,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:12,816.816 INFO    ] No update needed
[2026-06-13 02:53:12,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 02:53:12,839.839 INFO    ] 200
[2026-06-13 02:53:12,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:12,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:53:12,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:12,906.906 INFO    ] No camera update needed
[2026-06-13 02:53:12,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:53:12,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:53:12,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:53:12,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:53:14,953.953 INFO    ] ================================================
[2026-06-13 02:53:14,969.969 INFO    ] Launching Daemon at Sat Jun 13 02:53:14 IST 2026
[2026-06-13 02:53:14,980.980 INFO    ] ================================================
[2026-06-13 02:53:15,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:53:15
[2026-06-13 02:53:15,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:53:15,820.820 INFO    ] Initializing speech engine...
[2026-06-13 02:53:15,826.826 INFO    ] 2026-06-13 02:53:15
[2026-06-13 02:53:16,034.034 INFO    ] 2026-06-13 02:53:16
[2026-06-13 02:53:16,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:53:16,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:53:16,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:53:16,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:53:16,450.450 INFO    ] time= 13/06/2026 02:53:16
[2026-06-13 02:53:16,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:53:16,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:53:16,549.549 INFO    ] No existing commands found in stream
[2026-06-13 02:53:21,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:53:21,562.562 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 02:53:25,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:53:25,477.477 INFO    ] Checking for system updates...
[2026-06-13 02:53:25,499.499 INFO    ] 200
[2026-06-13 02:53:25,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:25,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:25,533.533 INFO    ] No update needed
[2026-06-13 02:53:25,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 02:53:25,554.554 INFO    ] 200
[2026-06-13 02:53:25,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:25,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:53:25,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:25,622.622 INFO    ] No camera update needed
[2026-06-13 02:53:25,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:53:25,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:53:25,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:53:25,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:53:27,672.672 INFO    ] ================================================
[2026-06-13 02:53:27,687.687 INFO    ] Launching Daemon at Sat Jun 13 02:53:27 IST 2026
[2026-06-13 02:53:27,699.699 INFO    ] ================================================
[2026-06-13 02:53:28,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:53:28
[2026-06-13 02:53:28,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:53:28,481.481 INFO    ] Initializing speech engine...
[2026-06-13 02:53:28,486.486 INFO    ] 2026-06-13 02:53:28
[2026-06-13 02:53:28,689.689 INFO    ] 2026-06-13 02:53:28
[2026-06-13 02:53:28,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:53:28,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:53:28,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:53:29,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:53:29,081.081 INFO    ] time= 13/06/2026 02:53:29
[2026-06-13 02:53:29,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:53:29,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:53:29,200.200 INFO    ] No existing commands found in stream
[2026-06-13 02:53:34,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:53:34,213.213 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 02:53:38,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:53:38,431.431 INFO    ] Checking for system updates...
[2026-06-13 02:53:38,452.452 INFO    ] 200
[2026-06-13 02:53:38,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:38,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:38,487.487 INFO    ] No update needed
[2026-06-13 02:53:38,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 02:53:38,512.512 INFO    ] 200
[2026-06-13 02:53:38,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:38,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:53:38,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:53:38,583.583 INFO    ] No camera update needed
[2026-06-13 02:53:38,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:53:38,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:53:38,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:53:38,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:53:40,636.636 INFO    ] ================================================
[2026-06-13 02:53:40,652.652 INFO    ] Launching Daemon at Sat Jun 13 02:53:40 IST 2026
[2026-06-13 02:53:40,662.662 INFO    ] ================================================
[2026-06-13 02:53:41,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:53:41
[2026-06-13 02:53:41,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:53:41,915.915 INFO    ] Initializing speech engine...
[2026-06-13 02:53:41,922.922 INFO    ] 2026-06-13 02:53:41
[2026-06-13 02:53:42,135.135 INFO    ] 2026-06-13 02:53:42
[2026-06-13 02:53:42,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:53:42,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:53:42,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:53:42,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:53:42,570.570 INFO    ] time= 13/06/2026 02:53:42
[2026-06-13 02:53:42,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:53:42,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:53:42,687.687 INFO    ] No existing commands found in stream
[2026-06-13 02:53:47,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:53:47,700.700 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 02:53:51,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:53:51,785.785 INFO    ] Checking for system updates...
[2026-06-13 02:53:51,805.805 INFO    ] 200
[2026-06-13 02:53:51,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:51,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:53:51,839.839 INFO    ] No update needed
[2026-06-13 02:53:51,840.840 INFO    ] Checking for camera pi updates...
[2026-06-13 02:53:51,860.860 INFO    ] 200
[2026-06-13 02:53:51,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:53:51,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:53:51,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:53:51,924.924 INFO    ] No camera update needed
[2026-06-13 02:53:51,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:53:51,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:53:51,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:53:51,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:53:53,976.976 INFO    ] ================================================
[2026-06-13 02:53:53,991.991 INFO    ] Launching Daemon at Sat Jun 13 02:53:53 IST 2026
[2026-06-13 02:53:54,002.002 INFO    ] ================================================
[2026-06-13 02:53:54,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:53:54
[2026-06-13 02:53:54,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:53:54,860.860 INFO    ] Initializing speech engine...
[2026-06-13 02:53:54,865.865 INFO    ] 2026-06-13 02:53:54
[2026-06-13 02:53:55,072.072 INFO    ] 2026-06-13 02:53:55
[2026-06-13 02:53:55,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:53:55,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:53:55,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:53:55,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:53:55,491.491 INFO    ] time= 13/06/2026 02:53:55
[2026-06-13 02:53:55,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:53:55,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:53:55,587.587 INFO    ] No existing commands found in stream
[2026-06-13 02:54:00,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:54:00,602.602 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 02:54:03,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:54:03,633.633 INFO    ] Checking for system updates...
[2026-06-13 02:54:03,656.656 INFO    ] 200
[2026-06-13 02:54:03,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:03,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:03,694.694 INFO    ] No update needed
[2026-06-13 02:54:03,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 02:54:03,718.718 INFO    ] 200
[2026-06-13 02:54:03,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:03,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:54:03,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:03,785.785 INFO    ] No camera update needed
[2026-06-13 02:54:03,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:54:03,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:54:03,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:54:03,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:54:05,834.834 INFO    ] ================================================
[2026-06-13 02:54:05,850.850 INFO    ] Launching Daemon at Sat Jun 13 02:54:05 IST 2026
[2026-06-13 02:54:05,860.860 INFO    ] ================================================
[2026-06-13 02:54:06,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:54:06
[2026-06-13 02:54:06,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:54:06,666.666 INFO    ] Initializing speech engine...
[2026-06-13 02:54:06,671.671 INFO    ] 2026-06-13 02:54:06
[2026-06-13 02:54:06,899.899 INFO    ] 2026-06-13 02:54:06
[2026-06-13 02:54:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:54:07,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:54:07,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:54:07,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:54:07,320.320 INFO    ] time= 13/06/2026 02:54:07
[2026-06-13 02:54:07,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:54:07,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:54:07,450.450 INFO    ] No existing commands found in stream
[2026-06-13 02:54:12,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:54:12,463.463 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 02:54:16,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:54:16,014.014 INFO    ] Checking for system updates...
[2026-06-13 02:54:16,035.035 INFO    ] 200
[2026-06-13 02:54:16,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:16,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:16,070.070 INFO    ] No update needed
[2026-06-13 02:54:16,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 02:54:16,091.091 INFO    ] 200
[2026-06-13 02:54:16,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:16,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:54:16,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:16,157.157 INFO    ] No camera update needed
[2026-06-13 02:54:16,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:54:16,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:54:16,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:54:16,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:54:18,203.203 INFO    ] ================================================
[2026-06-13 02:54:18,217.217 INFO    ] Launching Daemon at Sat Jun 13 02:54:18 IST 2026
[2026-06-13 02:54:18,228.228 INFO    ] ================================================
[2026-06-13 02:54:18,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:54:18
[2026-06-13 02:54:18,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:54:19,072.072 INFO    ] Initializing speech engine...
[2026-06-13 02:54:19,081.081 INFO    ] 2026-06-13 02:54:19
[2026-06-13 02:54:19,291.291 INFO    ] 2026-06-13 02:54:19
[2026-06-13 02:54:19,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:54:19,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:54:19,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:54:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:54:19,707.707 INFO    ] time= 13/06/2026 02:54:19
[2026-06-13 02:54:19,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:54:19,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:54:19,806.806 INFO    ] No existing commands found in stream
[2026-06-13 02:54:24,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:54:24,820.820 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 02:54:28,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:54:28,772.772 INFO    ] Checking for system updates...
[2026-06-13 02:54:28,793.793 INFO    ] 200
[2026-06-13 02:54:28,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:28,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:28,828.828 INFO    ] No update needed
[2026-06-13 02:54:28,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 02:54:28,849.849 INFO    ] 200
[2026-06-13 02:54:28,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:28,874.874 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:54:29,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:54:29,016.016 INFO    ] No camera update needed
[2026-06-13 02:54:29,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:54:29,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:54:29,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:54:29,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:54:31,064.064 INFO    ] ================================================
[2026-06-13 02:54:31,079.079 INFO    ] Launching Daemon at Sat Jun 13 02:54:31 IST 2026
[2026-06-13 02:54:31,090.090 INFO    ] ================================================
[2026-06-13 02:54:31,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:54:31
[2026-06-13 02:54:31,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:54:31,922.922 INFO    ] Initializing speech engine...
[2026-06-13 02:54:31,926.926 INFO    ] 2026-06-13 02:54:31
[2026-06-13 02:54:32,137.137 INFO    ] 2026-06-13 02:54:32
[2026-06-13 02:54:32,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:54:32,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:54:32,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:54:32,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:54:32,422.422 INFO    ] time= 13/06/2026 02:54:32
[2026-06-13 02:54:32,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:54:32,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:54:32,534.534 INFO    ] No existing commands found in stream
[2026-06-13 02:54:37,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:54:37,567.567 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 02:54:41,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:54:41,251.251 INFO    ] Checking for system updates...
[2026-06-13 02:54:41,271.271 INFO    ] 200
[2026-06-13 02:54:41,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:41,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:41,306.306 INFO    ] No update needed
[2026-06-13 02:54:41,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 02:54:41,328.328 INFO    ] 200
[2026-06-13 02:54:41,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:41,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:54:41,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:41,393.393 INFO    ] No camera update needed
[2026-06-13 02:54:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:54:41,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:54:41,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:54:41,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:54:43,440.440 INFO    ] ================================================
[2026-06-13 02:54:43,455.455 INFO    ] Launching Daemon at Sat Jun 13 02:54:43 IST 2026
[2026-06-13 02:54:43,465.465 INFO    ] ================================================
[2026-06-13 02:54:43,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:54:43
[2026-06-13 02:54:44,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:54:44,261.261 INFO    ] Initializing speech engine...
[2026-06-13 02:54:44,264.264 INFO    ] 2026-06-13 02:54:44
[2026-06-13 02:54:44,479.479 INFO    ] 2026-06-13 02:54:44
[2026-06-13 02:54:44,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:54:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:54:44,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:54:44,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:54:44,866.866 INFO    ] time= 13/06/2026 02:54:44
[2026-06-13 02:54:44,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:54:44,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:54:44,992.992 INFO    ] No existing commands found in stream
[2026-06-13 02:54:50,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:54:50,031.031 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 02:54:52,186.186 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:54:52,187.187 INFO    ] Checking for system updates...
[2026-06-13 02:54:52,208.208 INFO    ] 200
[2026-06-13 02:54:52,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:52,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:52,242.242 INFO    ] No update needed
[2026-06-13 02:54:52,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 02:54:52,263.263 INFO    ] 200
[2026-06-13 02:54:52,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:54:52,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:54:52,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:54:52,327.327 INFO    ] No camera update needed
[2026-06-13 02:54:52,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:54:52,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:54:52,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:54:52,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:54:54,376.376 INFO    ] ================================================
[2026-06-13 02:54:54,391.391 INFO    ] Launching Daemon at Sat Jun 13 02:54:54 IST 2026
[2026-06-13 02:54:54,402.402 INFO    ] ================================================
[2026-06-13 02:54:54,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:54:54
[2026-06-13 02:54:55,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:54:55,198.198 INFO    ] Initializing speech engine...
[2026-06-13 02:54:55,203.203 INFO    ] 2026-06-13 02:54:55
[2026-06-13 02:54:55,405.405 INFO    ] 2026-06-13 02:54:55
[2026-06-13 02:54:55,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:54:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:54:55,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:54:55,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:54:55,817.817 INFO    ] time= 13/06/2026 02:54:55
[2026-06-13 02:54:55,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:54:55,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:54:55,991.991 INFO    ] No existing commands found in stream
[2026-06-13 02:55:00,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:01,003.003 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 02:55:02,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:55:02,101.101 INFO    ] Checking for system updates...
[2026-06-13 02:55:02,160.160 INFO    ] 200
[2026-06-13 02:55:02,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:02,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:55:02,235.235 INFO    ] No update needed
[2026-06-13 02:55:02,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:02,270.270 INFO    ] 200
[2026-06-13 02:55:02,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:02,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:02,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:55:02,338.338 INFO    ] No camera update needed
[2026-06-13 02:55:02,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:02,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:02,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:02,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:55:04,393.393 INFO    ] ================================================
[2026-06-13 02:55:04,409.409 INFO    ] Launching Daemon at Sat Jun 13 02:55:04 IST 2026
[2026-06-13 02:55:04,419.419 INFO    ] ================================================
[2026-06-13 02:55:04,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:55:04
[2026-06-13 02:55:05,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:55:05,225.225 INFO    ] Initializing speech engine...
[2026-06-13 02:55:05,233.233 INFO    ] 2026-06-13 02:55:05
[2026-06-13 02:55:05,441.441 INFO    ] 2026-06-13 02:55:05
[2026-06-13 02:55:05,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:55:05,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:55:05,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:55:05,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:55:05,841.841 INFO    ] time= 13/06/2026 02:55:05
[2026-06-13 02:55:05,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:55:05,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:55:05,963.963 INFO    ] No existing commands found in stream
[2026-06-13 02:55:10,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:10,976.976 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 02:55:14,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:55:14,675.675 INFO    ] Checking for system updates...
[2026-06-13 02:55:14,696.696 INFO    ] 200
[2026-06-13 02:55:14,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:14,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:14,731.731 INFO    ] No update needed
[2026-06-13 02:55:14,732.732 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:14,752.752 INFO    ] 200
[2026-06-13 02:55:14,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:14,776.776 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:14,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:14,814.814 INFO    ] No camera update needed
[2026-06-13 02:55:14,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:14,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:14,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:14,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:55:16,862.862 INFO    ] ================================================
[2026-06-13 02:55:16,877.877 INFO    ] Launching Daemon at Sat Jun 13 02:55:16 IST 2026
[2026-06-13 02:55:16,887.887 INFO    ] ================================================
[2026-06-13 02:55:17,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:55:17
[2026-06-13 02:55:17,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:55:17,725.725 INFO    ] Initializing speech engine...
[2026-06-13 02:55:17,731.731 INFO    ] 2026-06-13 02:55:17
[2026-06-13 02:55:17,940.940 INFO    ] 2026-06-13 02:55:17
[2026-06-13 02:55:17,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:55:18,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:55:18,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:55:18,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:55:18,374.374 INFO    ] time= 13/06/2026 02:55:18
[2026-06-13 02:55:18,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:55:18,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:55:18,473.473 INFO    ] No existing commands found in stream
[2026-06-13 02:55:23,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:23,487.487 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 02:55:23,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:55:23,868.868 INFO    ] Checking for system updates...
[2026-06-13 02:55:23,891.891 INFO    ] 200
[2026-06-13 02:55:23,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:23,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:23,924.924 INFO    ] No update needed
[2026-06-13 02:55:23,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:23,947.947 INFO    ] 200
[2026-06-13 02:55:23,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:23,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:24,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:24,011.011 INFO    ] No camera update needed
[2026-06-13 02:55:24,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:24,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:24,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:24,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:55:26,060.060 INFO    ] ================================================
[2026-06-13 02:55:26,076.076 INFO    ] Launching Daemon at Sat Jun 13 02:55:26 IST 2026
[2026-06-13 02:55:26,087.087 INFO    ] ================================================
[2026-06-13 02:55:26,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:55:26
[2026-06-13 02:55:26,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:55:26,901.901 INFO    ] Initializing speech engine...
[2026-06-13 02:55:26,905.905 INFO    ] 2026-06-13 02:55:26
[2026-06-13 02:55:27,112.112 INFO    ] 2026-06-13 02:55:27
[2026-06-13 02:55:27,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:55:27,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:55:27,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:55:27,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:55:27,513.513 INFO    ] time= 13/06/2026 02:55:27
[2026-06-13 02:55:27,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:55:27,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:55:27,629.629 INFO    ] No existing commands found in stream
[2026-06-13 02:55:32,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:32,639.639 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 02:55:34,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:55:34,909.909 INFO    ] Checking for system updates...
[2026-06-13 02:55:34,952.952 INFO    ] 200
[2026-06-13 02:55:34,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:34,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:34,987.987 INFO    ] No update needed
[2026-06-13 02:55:34,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:35,008.008 INFO    ] 200
[2026-06-13 02:55:35,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:35,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:35,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:35,081.081 INFO    ] No camera update needed
[2026-06-13 02:55:35,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:35,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:35,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:35,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:55:37,131.131 INFO    ] ================================================
[2026-06-13 02:55:37,147.147 INFO    ] Launching Daemon at Sat Jun 13 02:55:37 IST 2026
[2026-06-13 02:55:37,157.157 INFO    ] ================================================
[2026-06-13 02:55:37,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:55:37
[2026-06-13 02:55:37,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:55:37,995.995 INFO    ] Initializing speech engine...
[2026-06-13 02:55:38,000.000 INFO    ] 2026-06-13 02:55:37
[2026-06-13 02:55:38,209.209 INFO    ] 2026-06-13 02:55:38
[2026-06-13 02:55:38,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:55:38,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:55:38,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:55:38,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:55:38,624.624 INFO    ] time= 13/06/2026 02:55:38
[2026-06-13 02:55:38,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:55:38,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:55:38,722.722 INFO    ] No existing commands found in stream
[2026-06-13 02:55:43,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:43,736.736 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 02:55:46,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:55:46,347.347 INFO    ] Checking for system updates...
[2026-06-13 02:55:46,370.370 INFO    ] 200
[2026-06-13 02:55:46,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:46,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:46,405.405 INFO    ] No update needed
[2026-06-13 02:55:46,406.406 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:46,427.427 INFO    ] 200
[2026-06-13 02:55:46,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:46,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:46,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:55:46,492.492 INFO    ] No camera update needed
[2026-06-13 02:55:46,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:46,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:46,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:46,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:55:48,540.540 INFO    ] ================================================
[2026-06-13 02:55:48,556.556 INFO    ] Launching Daemon at Sat Jun 13 02:55:48 IST 2026
[2026-06-13 02:55:48,566.566 INFO    ] ================================================
[2026-06-13 02:55:48,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:55:48
[2026-06-13 02:55:49,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:55:49,363.363 INFO    ] Initializing speech engine...
[2026-06-13 02:55:49,368.368 INFO    ] 2026-06-13 02:55:49
[2026-06-13 02:55:49,571.571 INFO    ] 2026-06-13 02:55:49
[2026-06-13 02:55:49,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:55:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:55:49,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:55:49,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:55:49,981.981 INFO    ] time= 13/06/2026 02:55:49
[2026-06-13 02:55:50,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:55:50,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:55:50,086.086 INFO    ] No existing commands found in stream
[2026-06-13 02:55:55,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:55:55,103.103 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 02:55:57,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:55:57,842.842 INFO    ] Checking for system updates...
[2026-06-13 02:55:57,865.865 INFO    ] 200
[2026-06-13 02:55:57,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:57,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:55:57,898.898 INFO    ] No update needed
[2026-06-13 02:55:57,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 02:55:57,919.919 INFO    ] 200
[2026-06-13 02:55:57,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:55:57,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:55:57,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:55:57,989.989 INFO    ] No camera update needed
[2026-06-13 02:55:57,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:55:57,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:55:57,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:55:57,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:00,037.037 INFO    ] ================================================
[2026-06-13 02:56:00,053.053 INFO    ] Launching Daemon at Sat Jun 13 02:56:00 IST 2026
[2026-06-13 02:56:00,064.064 INFO    ] ================================================
[2026-06-13 02:56:00,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:00
[2026-06-13 02:56:00,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:00,885.885 INFO    ] Initializing speech engine...
[2026-06-13 02:56:00,897.897 INFO    ] 2026-06-13 02:56:00
[2026-06-13 02:56:01,096.096 INFO    ] 2026-06-13 02:56:01
[2026-06-13 02:56:01,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:01,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:01,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:01,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:01,440.440 INFO    ] time= 13/06/2026 02:56:01
[2026-06-13 02:56:01,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:01,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:01,486.486 INFO    ] No existing commands found in stream
[2026-06-13 02:56:06,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:56:06,498.498 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 02:56:08,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:56:08,871.871 INFO    ] Checking for system updates...
[2026-06-13 02:56:08,891.891 INFO    ] 200
[2026-06-13 02:56:08,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:08,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:56:08,924.924 INFO    ] No update needed
[2026-06-13 02:56:08,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 02:56:08,945.945 INFO    ] 200
[2026-06-13 02:56:08,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:08,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:56:09,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:56:09,014.014 INFO    ] No camera update needed
[2026-06-13 02:56:09,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:56:09,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:56:09,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:56:09,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:11,062.062 INFO    ] ================================================
[2026-06-13 02:56:11,077.077 INFO    ] Launching Daemon at Sat Jun 13 02:56:11 IST 2026
[2026-06-13 02:56:11,088.088 INFO    ] ================================================
[2026-06-13 02:56:11,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:11
[2026-06-13 02:56:11,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:11,910.910 INFO    ] Initializing speech engine...
[2026-06-13 02:56:11,916.916 INFO    ] 2026-06-13 02:56:11
[2026-06-13 02:56:12,122.122 INFO    ] 2026-06-13 02:56:12
[2026-06-13 02:56:12,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:12,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:12,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:12,529.529 INFO    ] time= 13/06/2026 02:56:12
[2026-06-13 02:56:12,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:12,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:12,640.640 INFO    ] No existing commands found in stream
[2026-06-13 02:56:17,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:56:17,657.657 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 02:56:18,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:56:18,998.998 INFO    ] Checking for system updates...
[2026-06-13 02:56:19,019.019 INFO    ] 200
[2026-06-13 02:56:19,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:19,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:19,052.052 INFO    ] No update needed
[2026-06-13 02:56:19,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 02:56:19,073.073 INFO    ] 200
[2026-06-13 02:56:19,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:19,098.098 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:56:19,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:19,145.145 INFO    ] No camera update needed
[2026-06-13 02:56:19,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:56:19,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:56:19,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:56:19,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:21,194.194 INFO    ] ================================================
[2026-06-13 02:56:21,209.209 INFO    ] Launching Daemon at Sat Jun 13 02:56:21 IST 2026
[2026-06-13 02:56:21,219.219 INFO    ] ================================================
[2026-06-13 02:56:21,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:21
[2026-06-13 02:56:21,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:22,027.027 INFO    ] Initializing speech engine...
[2026-06-13 02:56:22,033.033 INFO    ] 2026-06-13 02:56:22
[2026-06-13 02:56:22,238.238 INFO    ] 2026-06-13 02:56:22
[2026-06-13 02:56:22,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:22,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:22,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:22,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:22,648.648 INFO    ] time= 13/06/2026 02:56:22
[2026-06-13 02:56:22,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:22,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:22,760.760 INFO    ] No existing commands found in stream
[2026-06-13 02:56:27,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:56:27,772.772 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 02:56:29,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:56:29,451.451 INFO    ] Checking for system updates...
[2026-06-13 02:56:29,471.471 INFO    ] 200
[2026-06-13 02:56:29,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:29,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:29,504.504 INFO    ] No update needed
[2026-06-13 02:56:29,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 02:56:29,525.525 INFO    ] 200
[2026-06-13 02:56:29,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:29,550.550 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:56:29,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:56:29,692.692 INFO    ] No camera update needed
[2026-06-13 02:56:29,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:56:29,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:56:29,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:56:29,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:31,733.733 INFO    ] ================================================
[2026-06-13 02:56:31,743.743 INFO    ] Launching Daemon at Sat Jun 13 02:56:31 IST 2026
[2026-06-13 02:56:31,749.749 INFO    ] ================================================
[2026-06-13 02:56:32,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:32
[2026-06-13 02:56:32,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:32,587.587 INFO    ] Initializing speech engine...
[2026-06-13 02:56:32,592.592 INFO    ] 2026-06-13 02:56:32
[2026-06-13 02:56:32,794.794 INFO    ] 2026-06-13 02:56:32
[2026-06-13 02:56:32,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:32,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:33,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:33,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:33,200.200 INFO    ] time= 13/06/2026 02:56:33
[2026-06-13 02:56:33,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:33,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:33,310.310 INFO    ] No existing commands found in stream
[2026-06-13 02:56:38,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:56:38,323.323 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 02:56:41,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:56:41,716.716 INFO    ] Checking for system updates...
[2026-06-13 02:56:41,736.736 INFO    ] 200
[2026-06-13 02:56:41,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:41,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:41,770.770 INFO    ] No update needed
[2026-06-13 02:56:41,771.771 INFO    ] Checking for camera pi updates...
[2026-06-13 02:56:41,790.790 INFO    ] 200
[2026-06-13 02:56:41,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:41,814.814 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:56:41,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:41,850.850 INFO    ] No camera update needed
[2026-06-13 02:56:41,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:56:41,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:56:41,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:56:41,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:43,898.898 INFO    ] ================================================
[2026-06-13 02:56:43,913.913 INFO    ] Launching Daemon at Sat Jun 13 02:56:43 IST 2026
[2026-06-13 02:56:43,924.924 INFO    ] ================================================
[2026-06-13 02:56:44,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:44
[2026-06-13 02:56:44,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:44,712.712 INFO    ] Initializing speech engine...
[2026-06-13 02:56:44,717.717 INFO    ] 2026-06-13 02:56:44
[2026-06-13 02:56:44,928.928 INFO    ] 2026-06-13 02:56:44
[2026-06-13 02:56:44,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:45,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:45,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:45,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:45,359.359 INFO    ] time= 13/06/2026 02:56:45
[2026-06-13 02:56:45,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:45,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:45,471.471 INFO    ] No existing commands found in stream
[2026-06-13 02:56:50,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:56:50,484.484 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 02:56:51,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:56:51,227.227 INFO    ] Checking for system updates...
[2026-06-13 02:56:51,254.254 INFO    ] 200
[2026-06-13 02:56:51,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:51,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:51,287.287 INFO    ] No update needed
[2026-06-13 02:56:51,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 02:56:51,308.308 INFO    ] 200
[2026-06-13 02:56:51,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:56:51,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:56:51,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:56:51,375.375 INFO    ] No camera update needed
[2026-06-13 02:56:51,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:56:51,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:56:51,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:56:51,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:56:53,422.422 INFO    ] ================================================
[2026-06-13 02:56:53,437.437 INFO    ] Launching Daemon at Sat Jun 13 02:56:53 IST 2026
[2026-06-13 02:56:53,447.447 INFO    ] ================================================
[2026-06-13 02:56:54,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:56:54
[2026-06-13 02:56:54,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:56:54,885.885 INFO    ] Initializing speech engine...
[2026-06-13 02:56:54,895.895 INFO    ] 2026-06-13 02:56:54
[2026-06-13 02:56:55,144.144 INFO    ] 2026-06-13 02:56:55
[2026-06-13 02:56:55,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:56:55,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:56:55,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:56:55,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:56:55,486.486 INFO    ] time= 13/06/2026 02:56:55
[2026-06-13 02:56:55,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:56:55,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:56:55,599.599 INFO    ] No existing commands found in stream
[2026-06-13 02:57:00,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:00,614.614 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 02:57:01,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:57:01,497.497 INFO    ] Checking for system updates...
[2026-06-13 02:57:01,518.518 INFO    ] 200
[2026-06-13 02:57:01,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:01,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:01,551.551 INFO    ] No update needed
[2026-06-13 02:57:01,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:01,571.571 INFO    ] 200
[2026-06-13 02:57:01,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:01,596.596 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:01,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:01,620.620 INFO    ] No camera update needed
[2026-06-13 02:57:01,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:01,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:01,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:01,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:57:03,662.662 INFO    ] ================================================
[2026-06-13 02:57:03,671.671 INFO    ] Launching Daemon at Sat Jun 13 02:57:03 IST 2026
[2026-06-13 02:57:03,678.678 INFO    ] ================================================
[2026-06-13 02:57:04,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:57:04
[2026-06-13 02:57:04,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:57:04,499.499 INFO    ] Initializing speech engine...
[2026-06-13 02:57:04,504.504 INFO    ] 2026-06-13 02:57:04
[2026-06-13 02:57:04,709.709 INFO    ] 2026-06-13 02:57:04
[2026-06-13 02:57:04,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:57:04,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:57:04,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:57:05,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:57:05,056.056 INFO    ] time= 13/06/2026 02:57:05
[2026-06-13 02:57:05,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:57:05,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:57:05,181.181 INFO    ] No existing commands found in stream
[2026-06-13 02:57:10,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:10,210.210 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 02:57:12,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:57:12,102.102 INFO    ] Checking for system updates...
[2026-06-13 02:57:12,123.123 INFO    ] 200
[2026-06-13 02:57:12,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:12,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:12,157.157 INFO    ] No update needed
[2026-06-13 02:57:12,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:12,180.180 INFO    ] 200
[2026-06-13 02:57:12,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:12,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:12,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:12,247.247 INFO    ] No camera update needed
[2026-06-13 02:57:12,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:12,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:12,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:12,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:57:14,294.294 INFO    ] ================================================
[2026-06-13 02:57:14,310.310 INFO    ] Launching Daemon at Sat Jun 13 02:57:14 IST 2026
[2026-06-13 02:57:14,320.320 INFO    ] ================================================
[2026-06-13 02:57:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:57:14
[2026-06-13 02:57:14,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:57:15,096.096 INFO    ] Initializing speech engine...
[2026-06-13 02:57:15,102.102 INFO    ] 2026-06-13 02:57:15
[2026-06-13 02:57:15,307.307 INFO    ] 2026-06-13 02:57:15
[2026-06-13 02:57:15,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:57:15,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:57:15,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:57:15,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:57:15,704.704 INFO    ] time= 13/06/2026 02:57:15
[2026-06-13 02:57:15,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:57:15,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:57:15,827.827 INFO    ] No existing commands found in stream
[2026-06-13 02:57:20,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:20,839.839 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 02:57:23,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:57:23,741.741 INFO    ] Checking for system updates...
[2026-06-13 02:57:23,761.761 INFO    ] 200
[2026-06-13 02:57:23,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:23,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:23,794.794 INFO    ] No update needed
[2026-06-13 02:57:23,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:23,814.814 INFO    ] 200
[2026-06-13 02:57:23,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:23,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:23,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:23,880.880 INFO    ] No camera update needed
[2026-06-13 02:57:23,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:23,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:23,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:23,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:57:25,927.927 INFO    ] ================================================
[2026-06-13 02:57:25,943.943 INFO    ] Launching Daemon at Sat Jun 13 02:57:25 IST 2026
[2026-06-13 02:57:25,953.953 INFO    ] ================================================
[2026-06-13 02:57:26,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:57:26
[2026-06-13 02:57:26,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:57:26,799.799 INFO    ] Initializing speech engine...
[2026-06-13 02:57:26,804.804 INFO    ] 2026-06-13 02:57:26
[2026-06-13 02:57:27,019.019 INFO    ] 2026-06-13 02:57:26
[2026-06-13 02:57:27,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:57:27,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:57:27,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:57:27,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:57:27,410.410 INFO    ] time= 13/06/2026 02:57:27
[2026-06-13 02:57:27,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:57:27,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:57:27,572.572 INFO    ] No existing commands found in stream
[2026-06-13 02:57:32,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:32,585.585 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 02:57:33,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:57:33,756.756 INFO    ] Checking for system updates...
[2026-06-13 02:57:33,777.777 INFO    ] 200
[2026-06-13 02:57:33,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:33,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:57:33,819.819 INFO    ] No update needed
[2026-06-13 02:57:33,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:33,856.856 INFO    ] 200
[2026-06-13 02:57:33,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:33,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:33,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:57:33,949.949 INFO    ] No camera update needed
[2026-06-13 02:57:33,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:33,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:33,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:57:36,996.996 INFO    ] ================================================
[2026-06-13 02:57:36,011.011 INFO    ] Launching Daemon at Sat Jun 13 02:57:36 IST 2026
[2026-06-13 02:57:36,022.022 INFO    ] ================================================
[2026-06-13 02:57:36,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:57:36
[2026-06-13 02:57:36,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:57:36,827.827 INFO    ] Initializing speech engine...
[2026-06-13 02:57:36,832.832 INFO    ] 2026-06-13 02:57:36
[2026-06-13 02:57:37,039.039 INFO    ] 2026-06-13 02:57:37
[2026-06-13 02:57:37,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:57:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:57:37,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:57:37,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:57:37,439.439 INFO    ] time= 13/06/2026 02:57:37
[2026-06-13 02:57:37,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:57:37,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:57:37,552.552 INFO    ] No existing commands found in stream
[2026-06-13 02:57:42,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:42,565.565 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 02:57:46,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:57:46,253.253 INFO    ] Checking for system updates...
[2026-06-13 02:57:46,273.273 INFO    ] 200
[2026-06-13 02:57:46,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:46,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:57:46,306.306 INFO    ] No update needed
[2026-06-13 02:57:46,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:46,328.328 INFO    ] 200
[2026-06-13 02:57:46,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:46,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:46,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:57:46,392.392 INFO    ] No camera update needed
[2026-06-13 02:57:46,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:46,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:46,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:57:48,438.438 INFO    ] ================================================
[2026-06-13 02:57:48,454.454 INFO    ] Launching Daemon at Sat Jun 13 02:57:48 IST 2026
[2026-06-13 02:57:48,465.465 INFO    ] ================================================
[2026-06-13 02:57:48,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:57:48
[2026-06-13 02:57:49,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:57:49,253.253 INFO    ] Initializing speech engine...
[2026-06-13 02:57:49,258.258 INFO    ] 2026-06-13 02:57:49
[2026-06-13 02:57:49,461.461 INFO    ] 2026-06-13 02:57:49
[2026-06-13 02:57:49,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:57:49,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:57:49,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:57:49,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:57:49,860.860 INFO    ] time= 13/06/2026 02:57:49
[2026-06-13 02:57:49,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:57:49,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:57:49,974.974 INFO    ] No existing commands found in stream
[2026-06-13 02:57:54,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:57:54,987.987 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 02:57:58,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 02:57:58,748.748 INFO    ] Checking for system updates...
[2026-06-13 02:57:58,784.784 INFO    ] 200
[2026-06-13 02:57:58,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:58,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:58,838.838 INFO    ] No update needed
[2026-06-13 02:57:58,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 02:57:58,859.859 INFO    ] 200
[2026-06-13 02:57:58,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:57:58,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:57:58,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:57:58,921.921 INFO    ] No camera update needed
[2026-06-13 02:57:58,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:57:58,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:57:58,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:57:58,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:00,967.967 INFO    ] ================================================
[2026-06-13 02:58:00,982.982 INFO    ] Launching Daemon at Sat Jun 13 02:58:00 IST 2026
[2026-06-13 02:58:01,994.994 INFO    ] ================================================
[2026-06-13 02:58:01,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:01
[2026-06-13 02:58:01,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:01,838.838 INFO    ] Initializing speech engine...
[2026-06-13 02:58:01,842.842 INFO    ] 2026-06-13 02:58:01
[2026-06-13 02:58:02,047.047 INFO    ] 2026-06-13 02:58:02
[2026-06-13 02:58:02,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:02,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:02,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:02,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:02,457.457 INFO    ] time= 13/06/2026 02:58:02
[2026-06-13 02:58:02,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:02,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:02,589.589 INFO    ] No existing commands found in stream
[2026-06-13 02:58:07,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:07,620.620 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 02:58:11,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 02:58:11,165.165 INFO    ] Checking for system updates...
[2026-06-13 02:58:11,185.185 INFO    ] 200
[2026-06-13 02:58:11,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:11,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:11,221.221 INFO    ] No update needed
[2026-06-13 02:58:11,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 02:58:11,242.242 INFO    ] 200
[2026-06-13 02:58:11,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:11,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:58:11,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:11,311.311 INFO    ] No camera update needed
[2026-06-13 02:58:11,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:58:11,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:58:11,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:58:11,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:13,359.359 INFO    ] ================================================
[2026-06-13 02:58:13,374.374 INFO    ] Launching Daemon at Sat Jun 13 02:58:13 IST 2026
[2026-06-13 02:58:13,385.385 INFO    ] ================================================
[2026-06-13 02:58:13,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:13
[2026-06-13 02:58:14,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:14,172.172 INFO    ] Initializing speech engine...
[2026-06-13 02:58:14,176.176 INFO    ] 2026-06-13 02:58:14
[2026-06-13 02:58:14,402.402 INFO    ] 2026-06-13 02:58:14
[2026-06-13 02:58:14,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:14,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:14,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:14,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:14,818.818 INFO    ] time= 13/06/2026 02:58:14
[2026-06-13 02:58:14,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:14,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:14,946.946 INFO    ] No existing commands found in stream
[2026-06-13 02:58:19,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:19,959.959 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 02:58:20,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:58:20,917.917 INFO    ] Checking for system updates...
[2026-06-13 02:58:20,938.938 INFO    ] 200
[2026-06-13 02:58:20,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:20,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:58:20,973.973 INFO    ] No update needed
[2026-06-13 02:58:20,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 02:58:20,994.994 INFO    ] 200
[2026-06-13 02:58:20,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:21,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:58:21,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:21,044.044 INFO    ] No camera update needed
[2026-06-13 02:58:21,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:58:21,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:58:21,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:58:21,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:23,091.091 INFO    ] ================================================
[2026-06-13 02:58:23,111.111 INFO    ] Launching Daemon at Sat Jun 13 02:58:23 IST 2026
[2026-06-13 02:58:23,122.122 INFO    ] ================================================
[2026-06-13 02:58:23,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:23
[2026-06-13 02:58:23,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:23,949.949 INFO    ] Initializing speech engine...
[2026-06-13 02:58:23,953.953 INFO    ] 2026-06-13 02:58:23
[2026-06-13 02:58:24,158.158 INFO    ] 2026-06-13 02:58:24
[2026-06-13 02:58:24,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:24,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:24,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:24,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:24,577.577 INFO    ] time= 13/06/2026 02:58:24
[2026-06-13 02:58:24,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:24,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:24,674.674 INFO    ] No existing commands found in stream
[2026-06-13 02:58:29,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:29,702.702 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 02:58:30,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:58:30,817.817 INFO    ] Checking for system updates...
[2026-06-13 02:58:30,838.838 INFO    ] 200
[2026-06-13 02:58:30,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:30,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:30,871.871 INFO    ] No update needed
[2026-06-13 02:58:30,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 02:58:30,892.892 INFO    ] 200
[2026-06-13 02:58:30,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:30,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:58:31,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:31,058.058 INFO    ] No camera update needed
[2026-06-13 02:58:31,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:58:31,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:58:31,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:58:31,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:33,109.109 INFO    ] ================================================
[2026-06-13 02:58:33,124.124 INFO    ] Launching Daemon at Sat Jun 13 02:58:33 IST 2026
[2026-06-13 02:58:33,135.135 INFO    ] ================================================
[2026-06-13 02:58:33,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:33
[2026-06-13 02:58:33,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:33,911.911 INFO    ] Initializing speech engine...
[2026-06-13 02:58:33,923.923 INFO    ] 2026-06-13 02:58:33
[2026-06-13 02:58:34,131.131 INFO    ] 2026-06-13 02:58:34
[2026-06-13 02:58:34,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:34,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:34,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:34,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:34,539.539 INFO    ] time= 13/06/2026 02:58:34
[2026-06-13 02:58:34,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:34,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:34,657.657 INFO    ] No existing commands found in stream
[2026-06-13 02:58:39,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:39,670.670 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 02:58:40,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:58:40,080.080 INFO    ] Checking for system updates...
[2026-06-13 02:58:40,100.100 INFO    ] 200
[2026-06-13 02:58:40,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:40,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:40,134.134 INFO    ] No update needed
[2026-06-13 02:58:40,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 02:58:40,155.155 INFO    ] 200
[2026-06-13 02:58:40,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:40,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:58:40,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:40,226.226 INFO    ] No camera update needed
[2026-06-13 02:58:40,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:58:40,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:58:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:58:40,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:42,273.273 INFO    ] ================================================
[2026-06-13 02:58:42,289.289 INFO    ] Launching Daemon at Sat Jun 13 02:58:42 IST 2026
[2026-06-13 02:58:42,300.300 INFO    ] ================================================
[2026-06-13 02:58:42,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:42
[2026-06-13 02:58:42,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:43,098.098 INFO    ] Initializing speech engine...
[2026-06-13 02:58:43,111.111 INFO    ] 2026-06-13 02:58:43
[2026-06-13 02:58:43,319.319 INFO    ] 2026-06-13 02:58:43
[2026-06-13 02:58:43,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:43,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:43,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:43,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:43,727.727 INFO    ] time= 13/06/2026 02:58:43
[2026-06-13 02:58:43,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:43,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:43,838.838 INFO    ] No existing commands found in stream
[2026-06-13 02:58:48,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:48,851.851 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 02:58:50,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:58:50,401.401 INFO    ] Checking for system updates...
[2026-06-13 02:58:50,423.423 INFO    ] 200
[2026-06-13 02:58:50,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:50,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:58:50,456.456 INFO    ] No update needed
[2026-06-13 02:58:50,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 02:58:50,478.478 INFO    ] 200
[2026-06-13 02:58:50,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:58:50,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:58:50,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:58:50,547.547 INFO    ] No camera update needed
[2026-06-13 02:58:50,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:58:50,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:58:50,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:58:50,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:58:52,599.599 INFO    ] ================================================
[2026-06-13 02:58:52,614.614 INFO    ] Launching Daemon at Sat Jun 13 02:58:52 IST 2026
[2026-06-13 02:58:52,625.625 INFO    ] ================================================
[2026-06-13 02:58:52,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:58:52
[2026-06-13 02:58:53,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:58:53,413.413 INFO    ] Initializing speech engine...
[2026-06-13 02:58:53,422.422 INFO    ] 2026-06-13 02:58:53
[2026-06-13 02:58:53,643.643 INFO    ] 2026-06-13 02:58:53
[2026-06-13 02:58:53,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:58:53,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:58:53,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:58:54,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:58:54,071.071 INFO    ] time= 13/06/2026 02:58:54
[2026-06-13 02:58:54,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:58:54,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:58:54,196.196 INFO    ] No existing commands found in stream
[2026-06-13 02:58:59,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:58:59,210.210 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 02:59:02,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 02:59:02,539.539 INFO    ] Checking for system updates...
[2026-06-13 02:59:02,560.560 INFO    ] 200
[2026-06-13 02:59:02,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:02,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:02,594.594 INFO    ] No update needed
[2026-06-13 02:59:02,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:02,615.615 INFO    ] 200
[2026-06-13 02:59:02,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:02,640.640 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:02,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:02,689.689 INFO    ] No camera update needed
[2026-06-13 02:59:02,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:02,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:02,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:02,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:59:04,745.745 INFO    ] ================================================
[2026-06-13 02:59:04,764.764 INFO    ] Launching Daemon at Sat Jun 13 02:59:04 IST 2026
[2026-06-13 02:59:04,776.776 INFO    ] ================================================
[2026-06-13 02:59:05,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:59:05
[2026-06-13 02:59:05,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:59:06,026.026 INFO    ] Initializing speech engine...
[2026-06-13 02:59:06,030.030 INFO    ] 2026-06-13 02:59:06
[2026-06-13 02:59:06,248.248 INFO    ] 2026-06-13 02:59:06
[2026-06-13 02:59:06,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:59:06,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:59:06,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:59:06,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:59:06,669.669 INFO    ] time= 13/06/2026 02:59:06
[2026-06-13 02:59:06,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:59:06,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:59:06,770.770 INFO    ] No existing commands found in stream
[2026-06-13 02:59:11,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:59:11,782.782 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 02:59:12,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:59:12,590.590 INFO    ] Checking for system updates...
[2026-06-13 02:59:12,613.613 INFO    ] 200
[2026-06-13 02:59:12,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:12,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:12,646.646 INFO    ] No update needed
[2026-06-13 02:59:12,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:12,668.668 INFO    ] 200
[2026-06-13 02:59:12,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:12,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:12,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:12,744.744 INFO    ] No camera update needed
[2026-06-13 02:59:12,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:12,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:12,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:12,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:59:14,794.794 INFO    ] ================================================
[2026-06-13 02:59:14,810.810 INFO    ] Launching Daemon at Sat Jun 13 02:59:14 IST 2026
[2026-06-13 02:59:14,821.821 INFO    ] ================================================
[2026-06-13 02:59:15,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:59:15
[2026-06-13 02:59:15,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:59:15,659.659 INFO    ] Initializing speech engine...
[2026-06-13 02:59:15,662.662 INFO    ] 2026-06-13 02:59:15
[2026-06-13 02:59:15,870.870 INFO    ] 2026-06-13 02:59:15
[2026-06-13 02:59:15,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:59:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:59:16,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:59:16,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:59:16,261.261 INFO    ] time= 13/06/2026 02:59:16
[2026-06-13 02:59:16,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:59:16,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:59:16,387.387 INFO    ] No existing commands found in stream
[2026-06-13 02:59:21,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:59:21,405.405 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 02:59:24,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:59:24,488.488 INFO    ] Checking for system updates...
[2026-06-13 02:59:24,509.509 INFO    ] 200
[2026-06-13 02:59:24,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:24,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:24,545.545 INFO    ] No update needed
[2026-06-13 02:59:24,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:24,566.566 INFO    ] 200
[2026-06-13 02:59:24,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:24,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:24,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:24,638.638 INFO    ] No camera update needed
[2026-06-13 02:59:24,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:24,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:24,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:24,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:59:26,685.685 INFO    ] ================================================
[2026-06-13 02:59:26,701.701 INFO    ] Launching Daemon at Sat Jun 13 02:59:26 IST 2026
[2026-06-13 02:59:26,713.713 INFO    ] ================================================
[2026-06-13 02:59:27,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:59:27
[2026-06-13 02:59:27,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:59:27,546.546 INFO    ] Initializing speech engine...
[2026-06-13 02:59:27,556.556 INFO    ] 2026-06-13 02:59:27
[2026-06-13 02:59:27,773.773 INFO    ] 2026-06-13 02:59:27
[2026-06-13 02:59:27,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:59:27,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:59:28,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:59:28,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:59:28,172.172 INFO    ] time= 13/06/2026 02:59:28
[2026-06-13 02:59:28,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:59:28,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:59:28,328.328 INFO    ] No existing commands found in stream
[2026-06-13 02:59:33,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:59:33,342.342 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 02:59:37,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 02:59:37,222.222 INFO    ] Checking for system updates...
[2026-06-13 02:59:37,244.244 INFO    ] 200
[2026-06-13 02:59:37,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:37,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:37,280.280 INFO    ] No update needed
[2026-06-13 02:59:37,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:37,301.301 INFO    ] 200
[2026-06-13 02:59:37,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:37,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:37,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:37,364.364 INFO    ] No camera update needed
[2026-06-13 02:59:37,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:37,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:37,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:37,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:59:39,413.413 INFO    ] ================================================
[2026-06-13 02:59:39,428.428 INFO    ] Launching Daemon at Sat Jun 13 02:59:39 IST 2026
[2026-06-13 02:59:39,440.440 INFO    ] ================================================
[2026-06-13 02:59:39,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:59:39
[2026-06-13 02:59:40,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:59:40,243.243 INFO    ] Initializing speech engine...
[2026-06-13 02:59:40,249.249 INFO    ] 2026-06-13 02:59:40
[2026-06-13 02:59:40,464.464 INFO    ] 2026-06-13 02:59:40
[2026-06-13 02:59:40,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:59:40,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:59:40,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:59:40,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:59:40,839.839 INFO    ] time= 13/06/2026 02:59:40
[2026-06-13 02:59:40,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:59:40,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:59:41,021.021 INFO    ] No existing commands found in stream
[2026-06-13 02:59:46,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:59:46,033.033 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 02:59:47,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 02:59:47,027.027 INFO    ] Checking for system updates...
[2026-06-13 02:59:47,048.048 INFO    ] 200
[2026-06-13 02:59:47,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:47,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:47,081.081 INFO    ] No update needed
[2026-06-13 02:59:47,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:47,102.102 INFO    ] 200
[2026-06-13 02:59:47,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:47,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:47,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:47,165.165 INFO    ] No camera update needed
[2026-06-13 02:59:47,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:47,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:47,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:47,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 02:59:49,213.213 INFO    ] ================================================
[2026-06-13 02:59:49,228.228 INFO    ] Launching Daemon at Sat Jun 13 02:59:49 IST 2026
[2026-06-13 02:59:49,239.239 INFO    ] ================================================
[2026-06-13 02:59:49,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 02:59:49
[2026-06-13 02:59:49,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 02:59:50,107.107 INFO    ] Initializing speech engine...
[2026-06-13 02:59:50,113.113 INFO    ] 2026-06-13 02:59:50
[2026-06-13 02:59:50,319.319 INFO    ] 2026-06-13 02:59:50
[2026-06-13 02:59:50,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 02:59:50,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 02:59:50,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 02:59:50,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 02:59:50,738.738 INFO    ] time= 13/06/2026 02:59:50
[2026-06-13 02:59:50,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 02:59:50,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 02:59:50,835.835 INFO    ] No existing commands found in stream
[2026-06-13 02:59:55,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 02:59:55,853.853 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 02:59:58,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 02:59:58,583.583 INFO    ] Checking for system updates...
[2026-06-13 02:59:58,604.604 INFO    ] 200
[2026-06-13 02:59:58,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:58,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 02:59:58,638.638 INFO    ] No update needed
[2026-06-13 02:59:58,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 02:59:58,660.660 INFO    ] 200
[2026-06-13 02:59:58,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 02:59:58,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 02:59:58,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 02:59:58,727.727 INFO    ] No camera update needed
[2026-06-13 02:59:58,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 02:59:58,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 02:59:58,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 02:59:58,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:00,779.779 INFO    ] ================================================
[2026-06-13 03:00:00,794.794 INFO    ] Launching Daemon at Sat Jun 13 03:00:00 IST 2026
[2026-06-13 03:00:00,806.806 INFO    ] ================================================
[2026-06-13 03:00:01,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:00:01
[2026-06-13 03:00:01,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:00:02,259.259 INFO    ] Initializing speech engine...
[2026-06-13 03:00:02,262.262 INFO    ] 2026-06-13 03:00:02
[2026-06-13 03:00:02,861.861 INFO    ] 2026-06-13 03:00:02
[2026-06-13 03:00:03,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:00:03,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:00:03,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:00:03,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:00:03,875.875 INFO    ] time= 13/06/2026 03:00:03
[2026-06-13 03:00:03,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:00:03,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:00:04,034.034 INFO    ] No existing commands found in stream
[2026-06-13 03:00:09,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:00:09,047.047 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 03:00:11,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:00:11,950.950 INFO    ] Checking for system updates...
[2026-06-13 03:00:11,973.973 INFO    ] 200
[2026-06-13 03:00:11,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:12,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:12,006.006 INFO    ] No update needed
[2026-06-13 03:00:12,008.008 INFO    ] Checking for camera pi updates...
[2026-06-13 03:00:12,027.027 INFO    ] 200
[2026-06-13 03:00:12,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:12,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:00:12,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:12,088.088 INFO    ] No camera update needed
[2026-06-13 03:00:12,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:00:12,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:00:12,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:00:12,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:14,135.135 INFO    ] ================================================
[2026-06-13 03:00:14,151.151 INFO    ] Launching Daemon at Sat Jun 13 03:00:14 IST 2026
[2026-06-13 03:00:14,162.162 INFO    ] ================================================
[2026-06-13 03:00:14,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:00:14
[2026-06-13 03:00:14,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:00:14,933.933 INFO    ] Initializing speech engine...
[2026-06-13 03:00:14,945.945 INFO    ] 2026-06-13 03:00:14
[2026-06-13 03:00:15,151.151 INFO    ] 2026-06-13 03:00:15
[2026-06-13 03:00:15,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:00:15,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:00:15,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:00:15,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:00:15,565.565 INFO    ] time= 13/06/2026 03:00:15
[2026-06-13 03:00:15,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:00:15,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:00:15,677.677 INFO    ] No existing commands found in stream
[2026-06-13 03:00:20,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:00:20,692.692 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 03:00:23,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:00:23,628.628 INFO    ] Checking for system updates...
[2026-06-13 03:00:23,650.650 INFO    ] 200
[2026-06-13 03:00:23,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:23,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:23,688.688 INFO    ] No update needed
[2026-06-13 03:00:23,689.689 INFO    ] Checking for camera pi updates...
[2026-06-13 03:00:23,714.714 INFO    ] 200
[2026-06-13 03:00:23,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:23,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:00:23,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:00:23,763.763 INFO    ] No camera update needed
[2026-06-13 03:00:23,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:00:23,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:00:23,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:00:23,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:25,812.812 INFO    ] ================================================
[2026-06-13 03:00:25,827.827 INFO    ] Launching Daemon at Sat Jun 13 03:00:25 IST 2026
[2026-06-13 03:00:25,838.838 INFO    ] ================================================
[2026-06-13 03:00:26,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:00:26
[2026-06-13 03:00:26,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:00:26,632.632 INFO    ] Initializing speech engine...
[2026-06-13 03:00:26,644.644 INFO    ] 2026-06-13 03:00:26
[2026-06-13 03:00:26,851.851 INFO    ] 2026-06-13 03:00:26
[2026-06-13 03:00:26,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:00:27,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:00:27,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:00:27,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:00:27,272.272 INFO    ] time= 13/06/2026 03:00:27
[2026-06-13 03:00:27,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:00:27,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:00:27,374.374 INFO    ] No existing commands found in stream
[2026-06-13 03:00:32,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:00:32,389.389 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 03:00:35,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:00:35,315.315 INFO    ] Checking for system updates...
[2026-06-13 03:00:35,336.336 INFO    ] 200
[2026-06-13 03:00:35,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:35,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:00:35,371.371 INFO    ] No update needed
[2026-06-13 03:00:35,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 03:00:35,392.392 INFO    ] 200
[2026-06-13 03:00:35,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:35,417.417 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:00:35,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:00:35,460.460 INFO    ] No camera update needed
[2026-06-13 03:00:35,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:00:35,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:00:35,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:00:35,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:37,501.501 INFO    ] ================================================
[2026-06-13 03:00:37,516.516 INFO    ] Launching Daemon at Sat Jun 13 03:00:37 IST 2026
[2026-06-13 03:00:37,527.527 INFO    ] ================================================
[2026-06-13 03:00:37,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:00:37
[2026-06-13 03:00:38,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:00:38,321.321 INFO    ] Initializing speech engine...
[2026-06-13 03:00:38,326.326 INFO    ] 2026-06-13 03:00:38
[2026-06-13 03:00:38,533.533 INFO    ] 2026-06-13 03:00:38
[2026-06-13 03:00:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:00:38,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:00:38,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:00:38,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:00:38,938.938 INFO    ] time= 13/06/2026 03:00:38
[2026-06-13 03:00:38,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:00:39,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:00:39,072.072 INFO    ] No existing commands found in stream
[2026-06-13 03:00:44,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:00:44,086.086 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 03:00:46,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:00:46,396.396 INFO    ] Checking for system updates...
[2026-06-13 03:00:46,419.419 INFO    ] 200
[2026-06-13 03:00:46,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:46,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:46,465.465 INFO    ] No update needed
[2026-06-13 03:00:46,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 03:00:46,487.487 INFO    ] 200
[2026-06-13 03:00:46,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:46,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:00:46,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:46,558.558 INFO    ] No camera update needed
[2026-06-13 03:00:46,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:00:46,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:00:46,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:00:46,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:48,599.599 INFO    ] ================================================
[2026-06-13 03:00:48,615.615 INFO    ] Launching Daemon at Sat Jun 13 03:00:48 IST 2026
[2026-06-13 03:00:48,626.626 INFO    ] ================================================
[2026-06-13 03:00:48,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:00:48
[2026-06-13 03:00:49,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:00:49,492.492 INFO    ] Initializing speech engine...
[2026-06-13 03:00:49,498.498 INFO    ] 2026-06-13 03:00:49
[2026-06-13 03:00:49,725.725 INFO    ] 2026-06-13 03:00:49
[2026-06-13 03:00:49,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:00:49,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:00:49,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:00:50,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:00:50,075.075 INFO    ] time= 13/06/2026 03:00:50
[2026-06-13 03:00:50,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:00:50,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:00:50,238.238 INFO    ] No existing commands found in stream
[2026-06-13 03:00:55,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:00:55,264.264 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 03:00:57,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:00:57,683.683 INFO    ] Checking for system updates...
[2026-06-13 03:00:57,705.705 INFO    ] 200
[2026-06-13 03:00:57,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:57,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:00:57,741.741 INFO    ] No update needed
[2026-06-13 03:00:57,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 03:00:57,763.763 INFO    ] 200
[2026-06-13 03:00:57,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:00:57,790.790 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:00:57,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:00:57,828.828 INFO    ] No camera update needed
[2026-06-13 03:00:57,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:00:57,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:00:57,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:00:57,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:00:59,874.874 INFO    ] ================================================
[2026-06-13 03:00:59,889.889 INFO    ] Launching Daemon at Sat Jun 13 03:00:59 IST 2026
[2026-06-13 03:00:59,900.900 INFO    ] ================================================
[2026-06-13 03:01:00,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:00
[2026-06-13 03:01:00,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:00,711.711 INFO    ] Initializing speech engine...
[2026-06-13 03:01:00,724.724 INFO    ] 2026-06-13 03:01:00
[2026-06-13 03:01:00,951.951 INFO    ] 2026-06-13 03:01:00
[2026-06-13 03:01:00,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:01,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:01,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:01,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:01,378.378 INFO    ] time= 13/06/2026 03:01:01
[2026-06-13 03:01:01,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:01,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:01,477.477 INFO    ] No existing commands found in stream
[2026-06-13 03:01:06,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:06,493.493 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 03:01:07,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:01:07,043.043 INFO    ] Checking for system updates...
[2026-06-13 03:01:07,064.064 INFO    ] 200
[2026-06-13 03:01:07,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:07,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:07,098.098 INFO    ] No update needed
[2026-06-13 03:01:07,100.100 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:07,120.120 INFO    ] 200
[2026-06-13 03:01:07,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:07,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:07,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:07,180.180 INFO    ] No camera update needed
[2026-06-13 03:01:07,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:07,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:07,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:07,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:01:09,223.223 INFO    ] ================================================
[2026-06-13 03:01:09,231.231 INFO    ] Launching Daemon at Sat Jun 13 03:01:09 IST 2026
[2026-06-13 03:01:09,239.239 INFO    ] ================================================
[2026-06-13 03:01:09,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:09
[2026-06-13 03:01:09,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:10,004.004 INFO    ] Initializing speech engine...
[2026-06-13 03:01:10,009.009 INFO    ] 2026-06-13 03:01:10
[2026-06-13 03:01:10,216.216 INFO    ] 2026-06-13 03:01:10
[2026-06-13 03:01:10,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:10,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:10,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:10,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:10,610.610 INFO    ] time= 13/06/2026 03:01:10
[2026-06-13 03:01:10,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:10,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:10,737.737 INFO    ] No existing commands found in stream
[2026-06-13 03:01:15,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:15,750.750 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 03:01:16,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:01:16,740.740 INFO    ] Checking for system updates...
[2026-06-13 03:01:16,760.760 INFO    ] 200
[2026-06-13 03:01:16,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:16,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:01:16,796.796 INFO    ] No update needed
[2026-06-13 03:01:16,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:16,817.817 INFO    ] 200
[2026-06-13 03:01:16,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:16,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:16,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:01:16,870.870 INFO    ] No camera update needed
[2026-06-13 03:01:16,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:16,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:16,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:01:18,918.918 INFO    ] ================================================
[2026-06-13 03:01:18,934.934 INFO    ] Launching Daemon at Sat Jun 13 03:01:18 IST 2026
[2026-06-13 03:01:18,944.944 INFO    ] ================================================
[2026-06-13 03:01:19,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:19
[2026-06-13 03:01:19,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:19,731.731 INFO    ] Initializing speech engine...
[2026-06-13 03:01:19,746.746 INFO    ] 2026-06-13 03:01:19
[2026-06-13 03:01:19,958.958 INFO    ] 2026-06-13 03:01:19
[2026-06-13 03:01:19,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:20,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:20,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:20,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:20,230.230 INFO    ] time= 13/06/2026 03:01:20
[2026-06-13 03:01:20,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:20,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:20,412.412 INFO    ] No existing commands found in stream
[2026-06-13 03:01:25,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:25,428.428 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 03:01:27,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:01:27,720.720 INFO    ] Checking for system updates...
[2026-06-13 03:01:27,742.742 INFO    ] 200
[2026-06-13 03:01:27,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:27,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:27,775.775 INFO    ] No update needed
[2026-06-13 03:01:27,776.776 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:27,795.795 INFO    ] 200
[2026-06-13 03:01:27,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:27,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:27,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:27,858.858 INFO    ] No camera update needed
[2026-06-13 03:01:27,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:27,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:27,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:27,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:01:29,907.907 INFO    ] ================================================
[2026-06-13 03:01:29,922.922 INFO    ] Launching Daemon at Sat Jun 13 03:01:29 IST 2026
[2026-06-13 03:01:29,933.933 INFO    ] ================================================
[2026-06-13 03:01:30,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:30
[2026-06-13 03:01:30,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:30,803.803 INFO    ] Initializing speech engine...
[2026-06-13 03:01:30,814.814 INFO    ] 2026-06-13 03:01:30
[2026-06-13 03:01:31,034.034 INFO    ] 2026-06-13 03:01:31
[2026-06-13 03:01:31,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:31,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:31,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:31,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:31,444.444 INFO    ] time= 13/06/2026 03:01:31
[2026-06-13 03:01:31,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:31,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:31,583.583 INFO    ] No existing commands found in stream
[2026-06-13 03:01:36,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:36,597.597 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 03:01:37,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:01:37,223.223 INFO    ] Checking for system updates...
[2026-06-13 03:01:37,244.244 INFO    ] 200
[2026-06-13 03:01:37,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:37,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:37,280.280 INFO    ] No update needed
[2026-06-13 03:01:37,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:37,301.301 INFO    ] 200
[2026-06-13 03:01:37,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:37,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:37,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:37,374.374 INFO    ] No camera update needed
[2026-06-13 03:01:37,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:37,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:37,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:37,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:01:39,421.421 INFO    ] ================================================
[2026-06-13 03:01:39,437.437 INFO    ] Launching Daemon at Sat Jun 13 03:01:39 IST 2026
[2026-06-13 03:01:39,448.448 INFO    ] ================================================
[2026-06-13 03:01:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:39
[2026-06-13 03:01:40,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:40,238.238 INFO    ] Initializing speech engine...
[2026-06-13 03:01:40,243.243 INFO    ] 2026-06-13 03:01:40
[2026-06-13 03:01:40,456.456 INFO    ] 2026-06-13 03:01:40
[2026-06-13 03:01:40,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:40,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:40,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:40,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:40,902.902 INFO    ] time= 13/06/2026 03:01:40
[2026-06-13 03:01:40,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:40,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:41,042.042 INFO    ] No existing commands found in stream
[2026-06-13 03:01:46,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:46,053.053 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 03:01:48,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:01:48,328.328 INFO    ] Checking for system updates...
[2026-06-13 03:01:48,350.350 INFO    ] 200
[2026-06-13 03:01:48,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:48,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:48,383.383 INFO    ] No update needed
[2026-06-13 03:01:48,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:48,404.404 INFO    ] 200
[2026-06-13 03:01:48,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:48,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:48,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:48,470.470 INFO    ] No camera update needed
[2026-06-13 03:01:48,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:48,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:48,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:48,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:01:50,518.518 INFO    ] ================================================
[2026-06-13 03:01:50,534.534 INFO    ] Launching Daemon at Sat Jun 13 03:01:50 IST 2026
[2026-06-13 03:01:50,544.544 INFO    ] ================================================
[2026-06-13 03:01:50,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:01:50
[2026-06-13 03:01:51,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:01:51,355.355 INFO    ] Initializing speech engine...
[2026-06-13 03:01:51,365.365 INFO    ] 2026-06-13 03:01:51
[2026-06-13 03:01:51,557.557 INFO    ] 2026-06-13 03:01:51
[2026-06-13 03:01:51,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:01:51,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:01:51,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:01:51,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:01:51,847.847 INFO    ] time= 13/06/2026 03:01:51
[2026-06-13 03:01:51,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:01:51,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:01:51,932.932 INFO    ] No existing commands found in stream
[2026-06-13 03:01:56,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:01:56,963.963 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 03:01:59,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:01:59,153.153 INFO    ] Checking for system updates...
[2026-06-13 03:01:59,175.175 INFO    ] 200
[2026-06-13 03:01:59,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:59,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:01:59,208.208 INFO    ] No update needed
[2026-06-13 03:01:59,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 03:01:59,229.229 INFO    ] 200
[2026-06-13 03:01:59,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:01:59,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:01:59,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:01:59,293.293 INFO    ] No camera update needed
[2026-06-13 03:01:59,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:01:59,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:01:59,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:01:59,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:01,341.341 INFO    ] ================================================
[2026-06-13 03:02:01,356.356 INFO    ] Launching Daemon at Sat Jun 13 03:02:01 IST 2026
[2026-06-13 03:02:01,368.368 INFO    ] ================================================
[2026-06-13 03:02:01,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:01
[2026-06-13 03:02:02,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:02:02,459.459 INFO    ] Initializing speech engine...
[2026-06-13 03:02:02,475.475 INFO    ] 2026-06-13 03:02:02
[2026-06-13 03:02:02,811.811 INFO    ] 2026-06-13 03:02:02
[2026-06-13 03:02:02,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:02:03,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:02:03,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:02:03,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:02:03,196.196 INFO    ] time= 13/06/2026 03:02:03
[2026-06-13 03:02:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:02:03,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:02:03,274.274 INFO    ] No existing commands found in stream
[2026-06-13 03:02:08,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:02:08,288.288 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 03:02:12,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:02:12,494.494 INFO    ] Checking for system updates...
[2026-06-13 03:02:12,514.514 INFO    ] 200
[2026-06-13 03:02:12,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:12,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:02:12,548.548 INFO    ] No update needed
[2026-06-13 03:02:12,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 03:02:12,570.570 INFO    ] 200
[2026-06-13 03:02:12,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:12,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:02:12,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:02:12,637.637 INFO    ] No camera update needed
[2026-06-13 03:02:12,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:02:12,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:02:12,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:02:12,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:14,686.686 INFO    ] ================================================
[2026-06-13 03:02:14,702.702 INFO    ] Launching Daemon at Sat Jun 13 03:02:14 IST 2026
[2026-06-13 03:02:14,713.713 INFO    ] ================================================
[2026-06-13 03:02:15,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:15
[2026-06-13 03:02:15,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:02:15,564.564 INFO    ] Initializing speech engine...
[2026-06-13 03:02:15,570.570 INFO    ] 2026-06-13 03:02:15
[2026-06-13 03:02:15,786.786 INFO    ] 2026-06-13 03:02:15
[2026-06-13 03:02:15,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:02:15,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:02:16,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:02:16,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:02:16,215.215 INFO    ] time= 13/06/2026 03:02:16
[2026-06-13 03:02:16,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:02:16,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:02:16,343.343 INFO    ] No existing commands found in stream
[2026-06-13 03:02:21,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:02:21,357.357 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 03:02:24,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:02:24,103.103 INFO    ] Checking for system updates...
[2026-06-13 03:02:24,124.124 INFO    ] 200
[2026-06-13 03:02:24,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:24,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:24,158.158 INFO    ] No update needed
[2026-06-13 03:02:24,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 03:02:24,179.179 INFO    ] 200
[2026-06-13 03:02:24,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:24,205.205 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:02:24,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:24,240.240 INFO    ] No camera update needed
[2026-06-13 03:02:24,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:02:24,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:02:24,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:02:24,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:26,289.289 INFO    ] ================================================
[2026-06-13 03:02:26,305.305 INFO    ] Launching Daemon at Sat Jun 13 03:02:26 IST 2026
[2026-06-13 03:02:26,316.316 INFO    ] ================================================
[2026-06-13 03:02:26,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:26
[2026-06-13 03:02:26,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:02:27,121.121 INFO    ] Initializing speech engine...
[2026-06-13 03:02:27,135.135 INFO    ] 2026-06-13 03:02:27
[2026-06-13 03:02:27,354.354 INFO    ] 2026-06-13 03:02:27
[2026-06-13 03:02:27,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:02:27,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:02:27,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:02:27,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:02:27,675.675 INFO    ] time= 13/06/2026 03:02:27
[2026-06-13 03:02:27,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:02:27,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:02:27,836.836 INFO    ] No existing commands found in stream
[2026-06-13 03:02:32,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:02:32,846.846 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 03:02:34,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:02:34,567.567 INFO    ] Checking for system updates...
[2026-06-13 03:02:34,587.587 INFO    ] 200
[2026-06-13 03:02:34,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:34,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:34,621.621 INFO    ] No update needed
[2026-06-13 03:02:34,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 03:02:34,642.642 INFO    ] 200
[2026-06-13 03:02:34,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:34,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:02:34,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:34,792.792 INFO    ] No camera update needed
[2026-06-13 03:02:34,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:02:34,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:02:34,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:02:34,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:36,840.840 INFO    ] ================================================
[2026-06-13 03:02:36,862.862 INFO    ] Launching Daemon at Sat Jun 13 03:02:36 IST 2026
[2026-06-13 03:02:36,873.873 INFO    ] ================================================
[2026-06-13 03:02:37,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:37
[2026-06-13 03:02:37,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:02:37,664.664 INFO    ] Initializing speech engine...
[2026-06-13 03:02:37,672.672 INFO    ] 2026-06-13 03:02:37
[2026-06-13 03:02:37,864.864 INFO    ] 2026-06-13 03:02:37
[2026-06-13 03:02:37,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:02:38,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:02:38,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:02:38,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:02:38,141.141 INFO    ] time= 13/06/2026 03:02:38
[2026-06-13 03:02:38,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:02:38,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:02:38,240.240 INFO    ] No existing commands found in stream
[2026-06-13 03:02:43,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:02:43,277.277 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 03:02:46,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:02:46,757.757 INFO    ] Checking for system updates...
[2026-06-13 03:02:46,778.778 INFO    ] 200
[2026-06-13 03:02:46,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:46,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:46,811.811 INFO    ] No update needed
[2026-06-13 03:02:46,812.812 INFO    ] Checking for camera pi updates...
[2026-06-13 03:02:46,832.832 INFO    ] 200
[2026-06-13 03:02:46,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:46,859.859 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:02:46,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:46,896.896 INFO    ] No camera update needed
[2026-06-13 03:02:46,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:02:46,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:02:46,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:02:46,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:48,936.936 INFO    ] ================================================
[2026-06-13 03:02:48,949.949 INFO    ] Launching Daemon at Sat Jun 13 03:02:48 IST 2026
[2026-06-13 03:02:48,955.955 INFO    ] ================================================
[2026-06-13 03:02:49,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:49
[2026-06-13 03:02:49,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:02:49,769.769 INFO    ] Initializing speech engine...
[2026-06-13 03:02:49,782.782 INFO    ] 2026-06-13 03:02:49
[2026-06-13 03:02:49,999.999 INFO    ] 2026-06-13 03:02:49
[2026-06-13 03:02:50,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:02:50,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:02:50,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:02:50,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:02:50,431.431 INFO    ] time= 13/06/2026 03:02:50
[2026-06-13 03:02:50,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:02:50,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:02:50,552.552 INFO    ] No existing commands found in stream
[2026-06-13 03:02:55,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:02:55,565.565 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 03:02:57,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:02:57,303.303 INFO    ] Checking for system updates...
[2026-06-13 03:02:57,324.324 INFO    ] 200
[2026-06-13 03:02:57,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:57,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:57,357.357 INFO    ] No update needed
[2026-06-13 03:02:57,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 03:02:57,379.379 INFO    ] 200
[2026-06-13 03:02:57,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:02:57,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:02:57,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:02:57,450.450 INFO    ] No camera update needed
[2026-06-13 03:02:57,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:02:57,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:02:57,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:02:57,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:02:59,501.501 INFO    ] ================================================
[2026-06-13 03:02:59,518.518 INFO    ] Launching Daemon at Sat Jun 13 03:02:59 IST 2026
[2026-06-13 03:02:59,529.529 INFO    ] ================================================
[2026-06-13 03:02:59,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:02:59
[2026-06-13 03:03:00,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:03:00,352.352 INFO    ] Initializing speech engine...
[2026-06-13 03:03:00,360.360 INFO    ] 2026-06-13 03:03:00
[2026-06-13 03:03:00,575.575 INFO    ] 2026-06-13 03:03:00
[2026-06-13 03:03:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:03:00,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:03:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:03:00,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:03:00,929.929 INFO    ] time= 13/06/2026 03:03:00
[2026-06-13 03:03:00,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:03:01,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:03:01,099.099 INFO    ] No existing commands found in stream
[2026-06-13 03:03:06,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:03:06,112.112 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 03:03:08,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:03:08,410.410 INFO    ] Checking for system updates...
[2026-06-13 03:03:08,431.431 INFO    ] 200
[2026-06-13 03:03:08,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:08,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:03:08,464.464 INFO    ] No update needed
[2026-06-13 03:03:08,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 03:03:08,486.486 INFO    ] 200
[2026-06-13 03:03:08,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:08,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:03:08,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:03:08,551.551 INFO    ] No camera update needed
[2026-06-13 03:03:08,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:03:08,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:03:08,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:03:08,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:03:10,601.601 INFO    ] ================================================
[2026-06-13 03:03:10,617.617 INFO    ] Launching Daemon at Sat Jun 13 03:03:10 IST 2026
[2026-06-13 03:03:10,628.628 INFO    ] ================================================
[2026-06-13 03:03:10,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:03:10
[2026-06-13 03:03:11,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:03:11,481.481 INFO    ] Initializing speech engine...
[2026-06-13 03:03:11,486.486 INFO    ] 2026-06-13 03:03:11
[2026-06-13 03:03:11,697.697 INFO    ] 2026-06-13 03:03:11
[2026-06-13 03:03:11,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:03:11,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:03:11,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:03:12,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:03:12,052.052 INFO    ] time= 13/06/2026 03:03:12
[2026-06-13 03:03:12,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:03:12,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:03:12,214.214 INFO    ] No existing commands found in stream
[2026-06-13 03:03:17,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:03:17,228.228 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 03:03:22,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:03:22,034.034 INFO    ] Checking for system updates...
[2026-06-13 03:03:22,055.055 INFO    ] 200
[2026-06-13 03:03:22,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:22,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:03:22,089.089 INFO    ] No update needed
[2026-06-13 03:03:22,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 03:03:22,111.111 INFO    ] 200
[2026-06-13 03:03:22,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:22,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:03:22,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:03:22,178.178 INFO    ] No camera update needed
[2026-06-13 03:03:22,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:03:22,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:03:22,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:03:22,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:03:24,225.225 INFO    ] ================================================
[2026-06-13 03:03:24,241.241 INFO    ] Launching Daemon at Sat Jun 13 03:03:24 IST 2026
[2026-06-13 03:03:24,251.251 INFO    ] ================================================
[2026-06-13 03:03:24,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:03:24
[2026-06-13 03:03:24,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:03:25,053.053 INFO    ] Initializing speech engine...
[2026-06-13 03:03:25,058.058 INFO    ] 2026-06-13 03:03:25
[2026-06-13 03:03:25,262.262 INFO    ] 2026-06-13 03:03:25
[2026-06-13 03:03:25,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:03:25,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:03:25,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:03:25,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:03:25,670.670 INFO    ] time= 13/06/2026 03:03:25
[2026-06-13 03:03:25,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:03:25,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:03:25,776.776 INFO    ] No existing commands found in stream
[2026-06-13 03:03:30,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:03:30,790.790 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 03:03:33,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:03:33,322.322 INFO    ] Checking for system updates...
[2026-06-13 03:03:33,359.359 INFO    ] 200
[2026-06-13 03:03:33,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:33,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:33,423.423 INFO    ] No update needed
[2026-06-13 03:03:33,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 03:03:33,461.461 INFO    ] 200
[2026-06-13 03:03:33,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:33,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:03:33,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:33,552.552 INFO    ] No camera update needed
[2026-06-13 03:03:33,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:03:33,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:03:33,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:03:33,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:03:35,612.612 INFO    ] ================================================
[2026-06-13 03:03:35,627.627 INFO    ] Launching Daemon at Sat Jun 13 03:03:35 IST 2026
[2026-06-13 03:03:35,637.637 INFO    ] ================================================
[2026-06-13 03:03:35,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:03:35
[2026-06-13 03:03:36,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:03:36,425.425 INFO    ] Initializing speech engine...
[2026-06-13 03:03:36,429.429 INFO    ] 2026-06-13 03:03:36
[2026-06-13 03:03:36,626.626 INFO    ] 2026-06-13 03:03:36
[2026-06-13 03:03:36,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:03:36,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:03:36,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:03:37,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:03:37,067.067 INFO    ] time= 13/06/2026 03:03:37
[2026-06-13 03:03:37,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:03:37,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:03:37,213.213 INFO    ] No existing commands found in stream
[2026-06-13 03:03:42,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:03:42,226.226 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 03:03:45,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:03:45,307.307 INFO    ] Checking for system updates...
[2026-06-13 03:03:45,328.328 INFO    ] 200
[2026-06-13 03:03:45,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:45,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:45,361.361 INFO    ] No update needed
[2026-06-13 03:03:45,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 03:03:45,382.382 INFO    ] 200
[2026-06-13 03:03:45,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:45,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:03:45,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:45,445.445 INFO    ] No camera update needed
[2026-06-13 03:03:45,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:03:45,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:03:45,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:03:45,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:03:47,484.484 INFO    ] ================================================
[2026-06-13 03:03:47,500.500 INFO    ] Launching Daemon at Sat Jun 13 03:03:47 IST 2026
[2026-06-13 03:03:47,511.511 INFO    ] ================================================
[2026-06-13 03:03:47,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:03:47
[2026-06-13 03:03:48,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:03:48,327.327 INFO    ] Initializing speech engine...
[2026-06-13 03:03:48,332.332 INFO    ] 2026-06-13 03:03:48
[2026-06-13 03:03:48,537.537 INFO    ] 2026-06-13 03:03:48
[2026-06-13 03:03:48,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:03:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:03:48,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:03:48,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:03:48,948.948 INFO    ] time= 13/06/2026 03:03:48
[2026-06-13 03:03:49,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:03:49,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:03:49,146.146 INFO    ] No existing commands found in stream
[2026-06-13 03:03:54,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:03:54,167.167 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 03:03:57,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:03:57,172.172 INFO    ] Checking for system updates...
[2026-06-13 03:03:57,199.199 INFO    ] 200
[2026-06-13 03:03:57,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:57,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:57,246.246 INFO    ] No update needed
[2026-06-13 03:03:57,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 03:03:57,270.270 INFO    ] 200
[2026-06-13 03:03:57,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:03:57,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:03:57,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:03:57,333.333 INFO    ] No camera update needed
[2026-06-13 03:03:57,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:03:57,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:03:57,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:03:57,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:03:59,383.383 INFO    ] ================================================
[2026-06-13 03:03:59,399.399 INFO    ] Launching Daemon at Sat Jun 13 03:03:59 IST 2026
[2026-06-13 03:03:59,410.410 INFO    ] ================================================
[2026-06-13 03:03:59,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:03:59
[2026-06-13 03:04:00,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:00,284.284 INFO    ] Initializing speech engine...
[2026-06-13 03:04:00,294.294 INFO    ] 2026-06-13 03:04:00
[2026-06-13 03:04:00,558.558 INFO    ] 2026-06-13 03:04:00
[2026-06-13 03:04:00,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:00,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:00,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:00,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:00,984.984 INFO    ] time= 13/06/2026 03:04:00
[2026-06-13 03:04:01,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:01,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:01,197.197 INFO    ] No existing commands found in stream
[2026-06-13 03:04:06,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:04:06,237.237 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 03:04:10,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:04:10,029.029 INFO    ] Checking for system updates...
[2026-06-13 03:04:10,051.051 INFO    ] 200
[2026-06-13 03:04:10,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:10,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:10,084.084 INFO    ] No update needed
[2026-06-13 03:04:10,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 03:04:10,105.105 INFO    ] 200
[2026-06-13 03:04:10,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:10,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:04:10,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:10,168.168 INFO    ] No camera update needed
[2026-06-13 03:04:10,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:04:10,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:04:10,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:04:10,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:04:12,214.214 INFO    ] ================================================
[2026-06-13 03:04:12,229.229 INFO    ] Launching Daemon at Sat Jun 13 03:04:12 IST 2026
[2026-06-13 03:04:12,240.240 INFO    ] ================================================
[2026-06-13 03:04:12,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:04:12
[2026-06-13 03:04:12,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:13,031.031 INFO    ] Initializing speech engine...
[2026-06-13 03:04:13,035.035 INFO    ] 2026-06-13 03:04:13
[2026-06-13 03:04:13,264.264 INFO    ] 2026-06-13 03:04:13
[2026-06-13 03:04:13,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:13,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:13,691.691 INFO    ] time= 13/06/2026 03:04:13
[2026-06-13 03:04:13,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:13,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:13,816.816 INFO    ] No existing commands found in stream
[2026-06-13 03:04:18,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:04:18,830.830 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 03:04:21,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:04:21,856.856 INFO    ] Checking for system updates...
[2026-06-13 03:04:21,877.877 INFO    ] 200
[2026-06-13 03:04:21,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:21,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:21,910.910 INFO    ] No update needed
[2026-06-13 03:04:21,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 03:04:21,932.932 INFO    ] 200
[2026-06-13 03:04:21,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:21,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:04:21,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:21,998.998 INFO    ] No camera update needed
[2026-06-13 03:04:21,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:04:22,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:04:22,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:04:22,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:04:24,045.045 INFO    ] ================================================
[2026-06-13 03:04:24,060.060 INFO    ] Launching Daemon at Sat Jun 13 03:04:24 IST 2026
[2026-06-13 03:04:24,071.071 INFO    ] ================================================
[2026-06-13 03:04:24,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:04:24
[2026-06-13 03:04:24,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:24,933.933 INFO    ] Initializing speech engine...
[2026-06-13 03:04:24,937.937 INFO    ] 2026-06-13 03:04:24
[2026-06-13 03:04:25,155.155 INFO    ] 2026-06-13 03:04:25
[2026-06-13 03:04:25,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:25,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:25,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:25,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:25,557.557 INFO    ] time= 13/06/2026 03:04:25
[2026-06-13 03:04:25,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:25,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:25,674.674 INFO    ] No existing commands found in stream
[2026-06-13 03:04:30,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:04:30,684.684 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 03:04:31,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:04:31,956.956 INFO    ] Checking for system updates...
[2026-06-13 03:04:31,986.986 INFO    ] 200
[2026-06-13 03:04:31,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:32,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:32,025.025 INFO    ] No update needed
[2026-06-13 03:04:32,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 03:04:32,049.049 INFO    ] 200
[2026-06-13 03:04:32,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:32,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:04:32,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:04:32,109.109 INFO    ] No camera update needed
[2026-06-13 03:04:32,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:04:32,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:04:32,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:04:32,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:04:34,153.153 INFO    ] ================================================
[2026-06-13 03:04:34,168.168 INFO    ] Launching Daemon at Sat Jun 13 03:04:34 IST 2026
[2026-06-13 03:04:34,179.179 INFO    ] ================================================
[2026-06-13 03:04:34,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:04:34
[2026-06-13 03:04:34,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:35,057.057 INFO    ] Initializing speech engine...
[2026-06-13 03:04:35,062.062 INFO    ] 2026-06-13 03:04:35
[2026-06-13 03:04:35,273.273 INFO    ] 2026-06-13 03:04:35
[2026-06-13 03:04:35,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:35,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:35,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:35,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:35,687.687 INFO    ] time= 13/06/2026 03:04:35
[2026-06-13 03:04:35,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:35,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:35,799.799 INFO    ] No existing commands found in stream
[2026-06-13 03:04:40,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:04:40,813.813 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 03:04:42,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:04:42,066.066 INFO    ] Checking for system updates...
[2026-06-13 03:04:42,089.089 INFO    ] 200
[2026-06-13 03:04:42,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:42,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:42,125.125 INFO    ] No update needed
[2026-06-13 03:04:42,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 03:04:42,145.145 INFO    ] 200
[2026-06-13 03:04:42,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:42,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:04:42,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:42,320.320 INFO    ] No camera update needed
[2026-06-13 03:04:42,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:04:42,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:04:42,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:04:42,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:04:44,367.367 INFO    ] ================================================
[2026-06-13 03:04:44,382.382 INFO    ] Launching Daemon at Sat Jun 13 03:04:44 IST 2026
[2026-06-13 03:04:44,393.393 INFO    ] ================================================
[2026-06-13 03:04:44,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:04:44
[2026-06-13 03:04:45,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:45,348.348 INFO    ] Initializing speech engine...
[2026-06-13 03:04:45,353.353 INFO    ] 2026-06-13 03:04:45
[2026-06-13 03:04:45,617.617 INFO    ] 2026-06-13 03:04:45
[2026-06-13 03:04:45,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:45,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:45,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:46,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:46,052.052 INFO    ] time= 13/06/2026 03:04:46
[2026-06-13 03:04:46,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:46,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:46,228.228 INFO    ] No existing commands found in stream
[2026-06-13 03:04:51,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:04:51,251.251 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 03:04:55,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:04:55,055.055 INFO    ] Checking for system updates...
[2026-06-13 03:04:55,076.076 INFO    ] 200
[2026-06-13 03:04:55,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:55,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:55,113.113 INFO    ] No update needed
[2026-06-13 03:04:55,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 03:04:55,134.134 INFO    ] 200
[2026-06-13 03:04:55,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:04:55,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:04:55,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:04:55,206.206 INFO    ] No camera update needed
[2026-06-13 03:04:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:04:55,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:04:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:04:55,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:04:57,248.248 INFO    ] ================================================
[2026-06-13 03:04:57,258.258 INFO    ] Launching Daemon at Sat Jun 13 03:04:57 IST 2026
[2026-06-13 03:04:57,265.265 INFO    ] ================================================
[2026-06-13 03:04:57,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:04:57
[2026-06-13 03:04:57,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:04:58,050.050 INFO    ] Initializing speech engine...
[2026-06-13 03:04:58,053.053 INFO    ] 2026-06-13 03:04:58
[2026-06-13 03:04:58,272.272 INFO    ] 2026-06-13 03:04:58
[2026-06-13 03:04:58,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:04:58,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:04:58,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:04:58,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:04:58,687.687 INFO    ] time= 13/06/2026 03:04:58
[2026-06-13 03:04:58,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:04:58,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:04:58,803.803 INFO    ] No existing commands found in stream
[2026-06-13 03:05:03,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:05:03,813.813 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 03:05:06,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:05:06,871.871 INFO    ] Checking for system updates...
[2026-06-13 03:05:06,891.891 INFO    ] 200
[2026-06-13 03:05:06,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:06,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:06,924.924 INFO    ] No update needed
[2026-06-13 03:05:06,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 03:05:06,945.945 INFO    ] 200
[2026-06-13 03:05:06,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:06,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:05:07,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:07,010.010 INFO    ] No camera update needed
[2026-06-13 03:05:07,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:05:07,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:05:07,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:05:07,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:05:09,059.059 INFO    ] ================================================
[2026-06-13 03:05:09,075.075 INFO    ] Launching Daemon at Sat Jun 13 03:05:09 IST 2026
[2026-06-13 03:05:09,086.086 INFO    ] ================================================
[2026-06-13 03:05:09,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:05:09
[2026-06-13 03:05:09,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:05:09,862.862 INFO    ] Initializing speech engine...
[2026-06-13 03:05:09,873.873 INFO    ] 2026-06-13 03:05:09
[2026-06-13 03:05:10,078.078 INFO    ] 2026-06-13 03:05:10
[2026-06-13 03:05:10,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:05:10,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:05:10,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:05:10,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:05:10,490.490 INFO    ] time= 13/06/2026 03:05:10
[2026-06-13 03:05:10,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:05:10,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:05:10,589.589 INFO    ] No existing commands found in stream
[2026-06-13 03:05:15,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:05:15,601.601 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 03:05:18,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:05:18,781.781 INFO    ] Checking for system updates...
[2026-06-13 03:05:18,801.801 INFO    ] 200
[2026-06-13 03:05:18,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:18,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:18,839.839 INFO    ] No update needed
[2026-06-13 03:05:18,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 03:05:18,862.862 INFO    ] 200
[2026-06-13 03:05:18,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:18,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:05:18,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:18,929.929 INFO    ] No camera update needed
[2026-06-13 03:05:18,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:05:18,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:05:18,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:05:18,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:05:20,979.979 INFO    ] ================================================
[2026-06-13 03:05:21,994.994 INFO    ] Launching Daemon at Sat Jun 13 03:05:20 IST 2026
[2026-06-13 03:05:21,005.005 INFO    ] ================================================
[2026-06-13 03:05:21,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:05:21
[2026-06-13 03:05:21,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:05:21,826.826 INFO    ] Initializing speech engine...
[2026-06-13 03:05:21,831.831 INFO    ] 2026-06-13 03:05:21
[2026-06-13 03:05:22,034.034 INFO    ] 2026-06-13 03:05:22
[2026-06-13 03:05:22,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:05:22,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:05:22,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:05:22,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:05:22,451.451 INFO    ] time= 13/06/2026 03:05:22
[2026-06-13 03:05:22,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:05:22,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:05:22,548.548 INFO    ] No existing commands found in stream
[2026-06-13 03:05:27,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:05:27,560.560 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 03:05:31,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:05:31,675.675 INFO    ] Checking for system updates...
[2026-06-13 03:05:31,700.700 INFO    ] 200
[2026-06-13 03:05:31,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:31,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:05:31,742.742 INFO    ] No update needed
[2026-06-13 03:05:31,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 03:05:31,765.765 INFO    ] 200
[2026-06-13 03:05:31,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:31,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:05:31,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:05:31,821.821 INFO    ] No camera update needed
[2026-06-13 03:05:31,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:05:31,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:05:31,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:05:31,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:05:33,864.864 INFO    ] ================================================
[2026-06-13 03:05:33,880.880 INFO    ] Launching Daemon at Sat Jun 13 03:05:33 IST 2026
[2026-06-13 03:05:33,891.891 INFO    ] ================================================
[2026-06-13 03:05:34,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:05:34
[2026-06-13 03:05:34,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:05:34,708.708 INFO    ] Initializing speech engine...
[2026-06-13 03:05:34,713.713 INFO    ] 2026-06-13 03:05:34
[2026-06-13 03:05:34,918.918 INFO    ] 2026-06-13 03:05:34
[2026-06-13 03:05:34,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:05:35,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:05:35,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:05:35,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:05:35,321.321 INFO    ] time= 13/06/2026 03:05:35
[2026-06-13 03:05:35,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:05:35,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:05:35,438.438 INFO    ] No existing commands found in stream
[2026-06-13 03:05:40,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:05:40,450.450 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 03:05:43,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:05:43,163.163 INFO    ] Checking for system updates...
[2026-06-13 03:05:43,184.184 INFO    ] 200
[2026-06-13 03:05:43,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:43,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:43,217.217 INFO    ] No update needed
[2026-06-13 03:05:43,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 03:05:43,239.239 INFO    ] 200
[2026-06-13 03:05:43,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:43,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:05:43,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:05:43,297.297 INFO    ] No camera update needed
[2026-06-13 03:05:43,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:05:43,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:05:43,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:05:43,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:05:45,345.345 INFO    ] ================================================
[2026-06-13 03:05:45,361.361 INFO    ] Launching Daemon at Sat Jun 13 03:05:45 IST 2026
[2026-06-13 03:05:45,371.371 INFO    ] ================================================
[2026-06-13 03:05:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:05:45
[2026-06-13 03:05:46,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:05:46,163.163 INFO    ] Initializing speech engine...
[2026-06-13 03:05:46,168.168 INFO    ] 2026-06-13 03:05:46
[2026-06-13 03:05:46,371.371 INFO    ] 2026-06-13 03:05:46
[2026-06-13 03:05:46,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:05:46,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:05:46,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:05:46,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:05:46,764.764 INFO    ] time= 13/06/2026 03:05:46
[2026-06-13 03:05:46,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:05:46,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:05:46,927.927 INFO    ] No existing commands found in stream
[2026-06-13 03:05:51,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:05:51,941.941 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 03:05:53,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:05:53,019.019 INFO    ] Checking for system updates...
[2026-06-13 03:05:53,041.041 INFO    ] 200
[2026-06-13 03:05:53,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:53,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:05:53,076.076 INFO    ] No update needed
[2026-06-13 03:05:53,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 03:05:53,097.097 INFO    ] 200
[2026-06-13 03:05:53,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:05:53,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:05:53,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:05:53,173.173 INFO    ] No camera update needed
[2026-06-13 03:05:53,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:05:53,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:05:53,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:05:53,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:05:55,219.219 INFO    ] ================================================
[2026-06-13 03:05:55,235.235 INFO    ] Launching Daemon at Sat Jun 13 03:05:55 IST 2026
[2026-06-13 03:05:55,246.246 INFO    ] ================================================
[2026-06-13 03:05:55,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:05:55
[2026-06-13 03:05:55,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:05:56,052.052 INFO    ] Initializing speech engine...
[2026-06-13 03:05:56,060.060 INFO    ] 2026-06-13 03:05:56
[2026-06-13 03:05:56,272.272 INFO    ] 2026-06-13 03:05:56
[2026-06-13 03:05:56,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:05:56,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:05:56,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:05:56,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:05:56,683.683 INFO    ] time= 13/06/2026 03:05:56
[2026-06-13 03:05:56,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:05:56,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:05:56,795.795 INFO    ] No existing commands found in stream
[2026-06-13 03:06:01,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:01,802.802 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 03:06:05,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:06:05,305.305 INFO    ] Checking for system updates...
[2026-06-13 03:06:05,327.327 INFO    ] 200
[2026-06-13 03:06:05,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:05,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:06:05,362.362 INFO    ] No update needed
[2026-06-13 03:06:05,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:05,388.388 INFO    ] 200
[2026-06-13 03:06:05,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:05,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:05,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:05,466.466 INFO    ] No camera update needed
[2026-06-13 03:06:05,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:05,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:05,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:05,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:06:07,516.516 INFO    ] ================================================
[2026-06-13 03:06:07,531.531 INFO    ] Launching Daemon at Sat Jun 13 03:06:07 IST 2026
[2026-06-13 03:06:07,543.543 INFO    ] ================================================
[2026-06-13 03:06:07,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:06:07
[2026-06-13 03:06:08,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:06:08,329.329 INFO    ] Initializing speech engine...
[2026-06-13 03:06:08,341.341 INFO    ] 2026-06-13 03:06:08
[2026-06-13 03:06:08,550.550 INFO    ] 2026-06-13 03:06:08
[2026-06-13 03:06:08,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:06:08,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:06:08,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:06:08,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:06:08,956.956 INFO    ] time= 13/06/2026 03:06:08
[2026-06-13 03:06:09,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:06:09,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:06:09,072.072 INFO    ] No existing commands found in stream
[2026-06-13 03:06:14,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:14,085.085 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 03:06:14,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:06:14,943.943 INFO    ] Checking for system updates...
[2026-06-13 03:06:14,964.964 INFO    ] 200
[2026-06-13 03:06:14,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:14,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:06:14,999.999 INFO    ] No update needed
[2026-06-13 03:06:15,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:15,022.022 INFO    ] 200
[2026-06-13 03:06:15,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:15,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:15,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:06:15,089.089 INFO    ] No camera update needed
[2026-06-13 03:06:15,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:15,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:15,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:15,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:06:17,140.140 INFO    ] ================================================
[2026-06-13 03:06:17,156.156 INFO    ] Launching Daemon at Sat Jun 13 03:06:17 IST 2026
[2026-06-13 03:06:17,166.166 INFO    ] ================================================
[2026-06-13 03:06:17,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:06:17
[2026-06-13 03:06:17,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:06:18,049.049 INFO    ] Initializing speech engine...
[2026-06-13 03:06:18,055.055 INFO    ] 2026-06-13 03:06:18
[2026-06-13 03:06:18,265.265 INFO    ] 2026-06-13 03:06:18
[2026-06-13 03:06:18,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:06:18,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:06:18,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:06:18,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:06:18,674.674 INFO    ] time= 13/06/2026 03:06:18
[2026-06-13 03:06:18,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:06:18,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:06:18,786.786 INFO    ] No existing commands found in stream
[2026-06-13 03:06:23,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:23,804.804 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 03:06:24,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:06:24,912.912 INFO    ] Checking for system updates...
[2026-06-13 03:06:24,935.935 INFO    ] 200
[2026-06-13 03:06:24,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:24,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:24,970.970 INFO    ] No update needed
[2026-06-13 03:06:24,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:24,991.991 INFO    ] 200
[2026-06-13 03:06:24,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:25,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:25,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:25,060.060 INFO    ] No camera update needed
[2026-06-13 03:06:25,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:25,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:25,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:25,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:06:27,110.110 INFO    ] ================================================
[2026-06-13 03:06:27,125.125 INFO    ] Launching Daemon at Sat Jun 13 03:06:27 IST 2026
[2026-06-13 03:06:27,136.136 INFO    ] ================================================
[2026-06-13 03:06:27,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:06:27
[2026-06-13 03:06:27,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:06:27,951.951 INFO    ] Initializing speech engine...
[2026-06-13 03:06:27,953.953 INFO    ] 2026-06-13 03:06:27
[2026-06-13 03:06:28,154.154 INFO    ] 2026-06-13 03:06:28
[2026-06-13 03:06:28,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:06:28,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:06:28,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:06:28,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:06:28,630.630 INFO    ] time= 13/06/2026 03:06:28
[2026-06-13 03:06:28,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:06:28,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:06:28,777.777 INFO    ] No existing commands found in stream
[2026-06-13 03:06:33,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:33,795.795 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 03:06:35,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:06:35,938.938 INFO    ] Checking for system updates...
[2026-06-13 03:06:35,959.959 INFO    ] 200
[2026-06-13 03:06:35,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:35,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:35,994.994 INFO    ] No update needed
[2026-06-13 03:06:35,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:36,015.015 INFO    ] 200
[2026-06-13 03:06:36,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:36,040.040 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:36,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:06:36,077.077 INFO    ] No camera update needed
[2026-06-13 03:06:36,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:36,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:36,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:36,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:06:38,125.125 INFO    ] ================================================
[2026-06-13 03:06:38,140.140 INFO    ] Launching Daemon at Sat Jun 13 03:06:38 IST 2026
[2026-06-13 03:06:38,151.151 INFO    ] ================================================
[2026-06-13 03:06:38,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:06:38
[2026-06-13 03:06:38,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:06:38,944.944 INFO    ] Initializing speech engine...
[2026-06-13 03:06:38,954.954 INFO    ] 2026-06-13 03:06:38
[2026-06-13 03:06:39,172.172 INFO    ] 2026-06-13 03:06:39
[2026-06-13 03:06:39,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:06:39,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:06:39,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:06:39,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:06:39,558.558 INFO    ] time= 13/06/2026 03:06:39
[2026-06-13 03:06:39,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:06:39,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:06:39,732.732 INFO    ] No existing commands found in stream
[2026-06-13 03:06:44,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:44,743.743 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 03:06:47,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:06:47,011.011 INFO    ] Checking for system updates...
[2026-06-13 03:06:47,032.032 INFO    ] 200
[2026-06-13 03:06:47,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:47,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:47,066.066 INFO    ] No update needed
[2026-06-13 03:06:47,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:47,087.087 INFO    ] 200
[2026-06-13 03:06:47,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:47,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:47,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:47,255.255 INFO    ] No camera update needed
[2026-06-13 03:06:47,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:47,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:47,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:47,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:06:49,303.303 INFO    ] ================================================
[2026-06-13 03:06:49,318.318 INFO    ] Launching Daemon at Sat Jun 13 03:06:49 IST 2026
[2026-06-13 03:06:49,330.330 INFO    ] ================================================
[2026-06-13 03:06:49,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:06:49
[2026-06-13 03:06:50,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:06:50,200.200 INFO    ] Initializing speech engine...
[2026-06-13 03:06:50,206.206 INFO    ] 2026-06-13 03:06:50
[2026-06-13 03:06:50,418.418 INFO    ] 2026-06-13 03:06:50
[2026-06-13 03:06:50,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:06:50,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:06:50,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:06:50,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:06:50,830.830 INFO    ] time= 13/06/2026 03:06:50
[2026-06-13 03:06:50,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:06:50,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:06:50,942.942 INFO    ] No existing commands found in stream
[2026-06-13 03:06:55,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:06:55,960.960 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 03:06:58,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:06:58,798.798 INFO    ] Checking for system updates...
[2026-06-13 03:06:58,821.821 INFO    ] 200
[2026-06-13 03:06:58,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:58,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:58,854.854 INFO    ] No update needed
[2026-06-13 03:06:58,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 03:06:58,875.875 INFO    ] 200
[2026-06-13 03:06:58,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:06:58,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:06:58,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:06:58,941.941 INFO    ] No camera update needed
[2026-06-13 03:06:58,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:06:58,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:06:58,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:06:58,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:00,990.990 INFO    ] ================================================
[2026-06-13 03:07:01,005.005 INFO    ] Launching Daemon at Sat Jun 13 03:07:01 IST 2026
[2026-06-13 03:07:01,017.017 INFO    ] ================================================
[2026-06-13 03:07:01,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:01
[2026-06-13 03:07:01,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:01,971.971 INFO    ] Initializing speech engine...
[2026-06-13 03:07:01,978.978 INFO    ] 2026-06-13 03:07:01
[2026-06-13 03:07:02,213.213 INFO    ] 2026-06-13 03:07:02
[2026-06-13 03:07:02,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:02,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:02,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:02,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:02,690.690 INFO    ] time= 13/06/2026 03:07:02
[2026-06-13 03:07:02,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:02,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:02,778.778 INFO    ] No existing commands found in stream
[2026-06-13 03:07:07,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:07:07,793.793 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 03:07:08,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:07:08,323.323 INFO    ] Checking for system updates...
[2026-06-13 03:07:08,344.344 INFO    ] 200
[2026-06-13 03:07:08,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:08,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:08,377.377 INFO    ] No update needed
[2026-06-13 03:07:08,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 03:07:08,399.399 INFO    ] 200
[2026-06-13 03:07:08,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:08,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:07:08,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:08,466.466 INFO    ] No camera update needed
[2026-06-13 03:07:08,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:07:08,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:07:08,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:07:08,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:10,516.516 INFO    ] ================================================
[2026-06-13 03:07:10,532.532 INFO    ] Launching Daemon at Sat Jun 13 03:07:10 IST 2026
[2026-06-13 03:07:10,544.544 INFO    ] ================================================
[2026-06-13 03:07:10,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:10
[2026-06-13 03:07:11,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:11,700.700 INFO    ] Initializing speech engine...
[2026-06-13 03:07:11,710.710 INFO    ] 2026-06-13 03:07:11
[2026-06-13 03:07:11,974.974 INFO    ] 2026-06-13 03:07:11
[2026-06-13 03:07:12,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:12,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:12,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:12,358.358 INFO    ] time= 13/06/2026 03:07:12
[2026-06-13 03:07:12,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:12,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:12,478.478 INFO    ] No existing commands found in stream
[2026-06-13 03:07:17,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:07:17,497.497 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 03:07:19,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:07:19,281.281 INFO    ] Checking for system updates...
[2026-06-13 03:07:19,302.302 INFO    ] 200
[2026-06-13 03:07:19,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:19,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:19,335.335 INFO    ] No update needed
[2026-06-13 03:07:19,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 03:07:19,356.356 INFO    ] 200
[2026-06-13 03:07:19,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:19,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:07:19,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:19,423.423 INFO    ] No camera update needed
[2026-06-13 03:07:19,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:07:19,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:07:19,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:07:19,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:21,471.471 INFO    ] ================================================
[2026-06-13 03:07:21,487.487 INFO    ] Launching Daemon at Sat Jun 13 03:07:21 IST 2026
[2026-06-13 03:07:21,498.498 INFO    ] ================================================
[2026-06-13 03:07:21,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:21
[2026-06-13 03:07:22,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:22,312.312 INFO    ] Initializing speech engine...
[2026-06-13 03:07:22,322.322 INFO    ] 2026-06-13 03:07:22
[2026-06-13 03:07:22,517.517 INFO    ] 2026-06-13 03:07:22
[2026-06-13 03:07:22,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:22,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:22,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:22,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:22,851.851 INFO    ] time= 13/06/2026 03:07:22
[2026-06-13 03:07:22,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:22,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:22,905.905 INFO    ] No existing commands found in stream
[2026-06-13 03:07:27,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:07:27,919.919 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 03:07:30,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:07:30,991.991 INFO    ] Checking for system updates...
[2026-06-13 03:07:31,012.012 INFO    ] 200
[2026-06-13 03:07:31,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:31,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:31,046.046 INFO    ] No update needed
[2026-06-13 03:07:31,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 03:07:31,066.066 INFO    ] 200
[2026-06-13 03:07:31,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:31,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:07:31,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:31,132.132 INFO    ] No camera update needed
[2026-06-13 03:07:31,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:07:31,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:07:31,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:07:31,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:33,174.174 INFO    ] ================================================
[2026-06-13 03:07:33,190.190 INFO    ] Launching Daemon at Sat Jun 13 03:07:33 IST 2026
[2026-06-13 03:07:33,201.201 INFO    ] ================================================
[2026-06-13 03:07:33,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:33
[2026-06-13 03:07:34,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:34,363.363 INFO    ] Initializing speech engine...
[2026-06-13 03:07:34,375.375 INFO    ] 2026-06-13 03:07:34
[2026-06-13 03:07:34,622.622 INFO    ] 2026-06-13 03:07:34
[2026-06-13 03:07:34,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:34,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:34,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:34,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:34,954.954 INFO    ] time= 13/06/2026 03:07:34
[2026-06-13 03:07:34,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:34,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:35,063.063 INFO    ] No existing commands found in stream
[2026-06-13 03:07:40,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:07:40,077.077 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 03:07:43,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:07:43,140.140 INFO    ] Checking for system updates...
[2026-06-13 03:07:43,163.163 INFO    ] 200
[2026-06-13 03:07:43,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:43,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:43,197.197 INFO    ] No update needed
[2026-06-13 03:07:43,198.198 INFO    ] Checking for camera pi updates...
[2026-06-13 03:07:43,218.218 INFO    ] 200
[2026-06-13 03:07:43,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:43,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:07:43,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:07:43,278.278 INFO    ] No camera update needed
[2026-06-13 03:07:43,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:07:43,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:07:43,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:07:43,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:45,328.328 INFO    ] ================================================
[2026-06-13 03:07:45,344.344 INFO    ] Launching Daemon at Sat Jun 13 03:07:45 IST 2026
[2026-06-13 03:07:45,356.356 INFO    ] ================================================
[2026-06-13 03:07:45,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:45
[2026-06-13 03:07:46,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:46,165.165 INFO    ] Initializing speech engine...
[2026-06-13 03:07:46,169.169 INFO    ] 2026-06-13 03:07:46
[2026-06-13 03:07:46,392.392 INFO    ] 2026-06-13 03:07:46
[2026-06-13 03:07:46,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:46,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:46,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:46,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:46,782.782 INFO    ] time= 13/06/2026 03:07:46
[2026-06-13 03:07:46,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:46,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:46,967.967 INFO    ] No existing commands found in stream
[2026-06-13 03:07:51,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:07:51,981.981 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 03:07:52,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:07:52,843.843 INFO    ] Checking for system updates...
[2026-06-13 03:07:52,864.864 INFO    ] 200
[2026-06-13 03:07:52,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:52,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:07:52,897.897 INFO    ] No update needed
[2026-06-13 03:07:52,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 03:07:52,921.921 INFO    ] 200
[2026-06-13 03:07:52,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:07:52,947.947 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:07:52,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:07:52,994.994 INFO    ] No camera update needed
[2026-06-13 03:07:52,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:07:52,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:07:52,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:07:53,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:07:55,041.041 INFO    ] ================================================
[2026-06-13 03:07:55,056.056 INFO    ] Launching Daemon at Sat Jun 13 03:07:55 IST 2026
[2026-06-13 03:07:55,067.067 INFO    ] ================================================
[2026-06-13 03:07:55,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:07:55
[2026-06-13 03:07:55,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:07:55,937.937 INFO    ] Initializing speech engine...
[2026-06-13 03:07:55,942.942 INFO    ] 2026-06-13 03:07:55
[2026-06-13 03:07:56,164.164 INFO    ] 2026-06-13 03:07:56
[2026-06-13 03:07:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:07:56,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:07:56,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:07:56,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:07:56,612.612 INFO    ] time= 13/06/2026 03:07:56
[2026-06-13 03:07:56,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:07:56,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:07:56,831.831 INFO    ] No existing commands found in stream
[2026-06-13 03:08:01,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:01,854.854 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 03:08:03,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:08:03,425.425 INFO    ] Checking for system updates...
[2026-06-13 03:08:03,462.462 INFO    ] 200
[2026-06-13 03:08:03,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:03,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:03,532.532 INFO    ] No update needed
[2026-06-13 03:08:03,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:03,568.568 INFO    ] 200
[2026-06-13 03:08:03,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:03,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:03,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:03,673.673 INFO    ] No camera update needed
[2026-06-13 03:08:03,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:03,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:03,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:08:05,730.730 INFO    ] ================================================
[2026-06-13 03:08:05,746.746 INFO    ] Launching Daemon at Sat Jun 13 03:08:05 IST 2026
[2026-06-13 03:08:05,757.757 INFO    ] ================================================
[2026-06-13 03:08:06,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:08:06
[2026-06-13 03:08:06,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:08:06,583.583 INFO    ] Initializing speech engine...
[2026-06-13 03:08:06,592.592 INFO    ] 2026-06-13 03:08:06
[2026-06-13 03:08:06,796.796 INFO    ] 2026-06-13 03:08:06
[2026-06-13 03:08:06,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:08:07,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:08:07,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:08:07,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:08:07,206.206 INFO    ] time= 13/06/2026 03:08:07
[2026-06-13 03:08:07,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:08:07,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:08:07,315.315 INFO    ] No existing commands found in stream
[2026-06-13 03:08:12,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:12,328.328 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 03:08:14,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:08:14,757.757 INFO    ] Checking for system updates...
[2026-06-13 03:08:14,778.778 INFO    ] 200
[2026-06-13 03:08:14,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:14,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:14,811.811 INFO    ] No update needed
[2026-06-13 03:08:14,812.812 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:14,833.833 INFO    ] 200
[2026-06-13 03:08:14,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:14,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:14,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:14,911.911 INFO    ] No camera update needed
[2026-06-13 03:08:14,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:14,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:14,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:14,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:08:16,959.959 INFO    ] ================================================
[2026-06-13 03:08:16,974.974 INFO    ] Launching Daemon at Sat Jun 13 03:08:16 IST 2026
[2026-06-13 03:08:16,985.985 INFO    ] ================================================
[2026-06-13 03:08:17,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:08:17
[2026-06-13 03:08:17,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:08:17,785.785 INFO    ] Initializing speech engine...
[2026-06-13 03:08:17,795.795 INFO    ] 2026-06-13 03:08:17
[2026-06-13 03:08:17,999.999 INFO    ] 2026-06-13 03:08:17
[2026-06-13 03:08:18,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:08:18,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:08:18,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:08:18,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:08:18,410.410 INFO    ] time= 13/06/2026 03:08:18
[2026-06-13 03:08:18,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:08:18,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:08:18,517.517 INFO    ] No existing commands found in stream
[2026-06-13 03:08:23,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:23,529.529 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 03:08:25,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:08:25,955.955 INFO    ] Checking for system updates...
[2026-06-13 03:08:25,976.976 INFO    ] 200
[2026-06-13 03:08:25,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:26,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:26,009.009 INFO    ] No update needed
[2026-06-13 03:08:26,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:26,030.030 INFO    ] 200
[2026-06-13 03:08:26,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:26,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:26,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:26,096.096 INFO    ] No camera update needed
[2026-06-13 03:08:26,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:26,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:26,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:26,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:08:28,145.145 INFO    ] ================================================
[2026-06-13 03:08:28,160.160 INFO    ] Launching Daemon at Sat Jun 13 03:08:28 IST 2026
[2026-06-13 03:08:28,170.170 INFO    ] ================================================
[2026-06-13 03:08:28,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:08:28
[2026-06-13 03:08:28,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:08:28,958.958 INFO    ] Initializing speech engine...
[2026-06-13 03:08:28,961.961 INFO    ] 2026-06-13 03:08:28
[2026-06-13 03:08:29,192.192 INFO    ] 2026-06-13 03:08:29
[2026-06-13 03:08:29,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:08:29,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:08:29,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:08:29,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:08:29,611.611 INFO    ] time= 13/06/2026 03:08:29
[2026-06-13 03:08:29,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:08:29,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:08:29,783.783 INFO    ] No existing commands found in stream
[2026-06-13 03:08:34,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:34,805.805 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 03:08:37,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:08:37,791.791 INFO    ] Checking for system updates...
[2026-06-13 03:08:37,812.812 INFO    ] 200
[2026-06-13 03:08:37,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:37,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:37,847.847 INFO    ] No update needed
[2026-06-13 03:08:37,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:37,868.868 INFO    ] 200
[2026-06-13 03:08:37,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:37,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:37,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:37,931.931 INFO    ] No camera update needed
[2026-06-13 03:08:37,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:37,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:37,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:37,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:08:39,979.979 INFO    ] ================================================
[2026-06-13 03:08:39,994.994 INFO    ] Launching Daemon at Sat Jun 13 03:08:39 IST 2026
[2026-06-13 03:08:40,005.005 INFO    ] ================================================
[2026-06-13 03:08:40,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:08:40
[2026-06-13 03:08:40,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:08:40,806.806 INFO    ] Initializing speech engine...
[2026-06-13 03:08:40,811.811 INFO    ] 2026-06-13 03:08:40
[2026-06-13 03:08:41,045.045 INFO    ] 2026-06-13 03:08:41
[2026-06-13 03:08:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:08:41,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:08:41,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:08:41,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:08:41,477.477 INFO    ] time= 13/06/2026 03:08:41
[2026-06-13 03:08:41,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:08:41,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:08:41,581.581 INFO    ] No existing commands found in stream
[2026-06-13 03:08:46,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:46,614.614 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 03:08:47,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:08:47,999.999 INFO    ] Checking for system updates...
[2026-06-13 03:08:48,021.021 INFO    ] 200
[2026-06-13 03:08:48,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:48,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:48,055.055 INFO    ] No update needed
[2026-06-13 03:08:48,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:48,078.078 INFO    ] 200
[2026-06-13 03:08:48,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:48,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:48,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:08:48,145.145 INFO    ] No camera update needed
[2026-06-13 03:08:48,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:48,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:48,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:48,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:08:50,192.192 INFO    ] ================================================
[2026-06-13 03:08:50,208.208 INFO    ] Launching Daemon at Sat Jun 13 03:08:50 IST 2026
[2026-06-13 03:08:50,219.219 INFO    ] ================================================
[2026-06-13 03:08:50,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:08:50
[2026-06-13 03:08:50,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:08:51,060.060 INFO    ] Initializing speech engine...
[2026-06-13 03:08:51,072.072 INFO    ] 2026-06-13 03:08:51
[2026-06-13 03:08:51,280.280 INFO    ] 2026-06-13 03:08:51
[2026-06-13 03:08:51,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:08:51,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:08:51,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:08:51,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:08:51,688.688 INFO    ] time= 13/06/2026 03:08:51
[2026-06-13 03:08:51,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:08:51,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:08:51,799.799 INFO    ] No existing commands found in stream
[2026-06-13 03:08:56,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:08:56,813.813 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 03:08:59,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:08:59,043.043 INFO    ] Checking for system updates...
[2026-06-13 03:08:59,064.064 INFO    ] 200
[2026-06-13 03:08:59,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:59,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:08:59,097.097 INFO    ] No update needed
[2026-06-13 03:08:59,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 03:08:59,118.118 INFO    ] 200
[2026-06-13 03:08:59,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:08:59,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:08:59,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:08:59,282.282 INFO    ] No camera update needed
[2026-06-13 03:08:59,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:08:59,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:08:59,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:08:59,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:09:01,330.330 INFO    ] ================================================
[2026-06-13 03:09:01,347.347 INFO    ] Launching Daemon at Sat Jun 13 03:09:01 IST 2026
[2026-06-13 03:09:01,358.358 INFO    ] ================================================
[2026-06-13 03:09:01,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:09:01
[2026-06-13 03:09:02,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:09:02,324.324 INFO    ] Initializing speech engine...
[2026-06-13 03:09:02,329.329 INFO    ] 2026-06-13 03:09:02
[2026-06-13 03:09:02,552.552 INFO    ] 2026-06-13 03:09:02
[2026-06-13 03:09:02,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:09:02,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:09:02,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:09:02,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:09:02,859.859 INFO    ] time= 13/06/2026 03:09:02
[2026-06-13 03:09:02,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:09:02,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:09:02,947.947 INFO    ] No existing commands found in stream
[2026-06-13 03:09:07,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:09:07,981.981 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 03:09:10,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:09:10,523.523 INFO    ] Checking for system updates...
[2026-06-13 03:09:10,559.559 INFO    ] 200
[2026-06-13 03:09:10,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:10,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:09:10,621.621 INFO    ] No update needed
[2026-06-13 03:09:10,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 03:09:10,645.645 INFO    ] 200
[2026-06-13 03:09:10,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:10,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:09:10,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:09:10,711.711 INFO    ] No camera update needed
[2026-06-13 03:09:10,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:09:10,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:09:10,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:09:10,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:09:12,758.758 INFO    ] ================================================
[2026-06-13 03:09:12,773.773 INFO    ] Launching Daemon at Sat Jun 13 03:09:12 IST 2026
[2026-06-13 03:09:12,784.784 INFO    ] ================================================
[2026-06-13 03:09:13,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:09:13
[2026-06-13 03:09:13,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:09:13,607.607 INFO    ] Initializing speech engine...
[2026-06-13 03:09:13,612.612 INFO    ] 2026-06-13 03:09:13
[2026-06-13 03:09:13,816.816 INFO    ] 2026-06-13 03:09:13
[2026-06-13 03:09:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:09:13,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:09:14,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:09:14,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:09:14,202.202 INFO    ] time= 13/06/2026 03:09:14
[2026-06-13 03:09:14,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:09:14,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:09:14,330.330 INFO    ] No existing commands found in stream
[2026-06-13 03:09:19,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:09:19,344.344 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 03:09:21,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:09:21,006.006 INFO    ] Checking for system updates...
[2026-06-13 03:09:21,031.031 INFO    ] 200
[2026-06-13 03:09:21,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:21,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:09:21,076.076 INFO    ] No update needed
[2026-06-13 03:09:21,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 03:09:21,101.101 INFO    ] 200
[2026-06-13 03:09:21,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:21,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:09:21,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:09:21,164.164 INFO    ] No camera update needed
[2026-06-13 03:09:21,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:09:21,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:09:21,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:09:21,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:09:23,219.219 INFO    ] ================================================
[2026-06-13 03:09:23,234.234 INFO    ] Launching Daemon at Sat Jun 13 03:09:23 IST 2026
[2026-06-13 03:09:23,245.245 INFO    ] ================================================
[2026-06-13 03:09:23,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:09:23
[2026-06-13 03:09:23,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:09:24,034.034 INFO    ] Initializing speech engine...
[2026-06-13 03:09:24,039.039 INFO    ] 2026-06-13 03:09:24
[2026-06-13 03:09:24,263.263 INFO    ] 2026-06-13 03:09:24
[2026-06-13 03:09:24,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:09:24,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:09:24,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:09:24,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:09:24,668.668 INFO    ] time= 13/06/2026 03:09:24
[2026-06-13 03:09:24,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:09:24,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:09:24,783.783 INFO    ] No existing commands found in stream
[2026-06-13 03:09:29,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:09:29,796.796 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 03:09:33,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:09:33,071.071 INFO    ] Checking for system updates...
[2026-06-13 03:09:33,109.109 INFO    ] 200
[2026-06-13 03:09:33,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:33,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:09:33,170.170 INFO    ] No update needed
[2026-06-13 03:09:33,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 03:09:33,207.207 INFO    ] 200
[2026-06-13 03:09:33,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:33,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:09:33,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:09:33,288.288 INFO    ] No camera update needed
[2026-06-13 03:09:33,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:09:33,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:09:33,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:09:33,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:09:35,344.344 INFO    ] ================================================
[2026-06-13 03:09:35,359.359 INFO    ] Launching Daemon at Sat Jun 13 03:09:35 IST 2026
[2026-06-13 03:09:35,369.369 INFO    ] ================================================
[2026-06-13 03:09:35,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:09:35
[2026-06-13 03:09:36,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:09:36,190.190 INFO    ] Initializing speech engine...
[2026-06-13 03:09:36,194.194 INFO    ] 2026-06-13 03:09:36
[2026-06-13 03:09:36,403.403 INFO    ] 2026-06-13 03:09:36
[2026-06-13 03:09:36,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:09:36,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:09:36,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:09:36,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:09:36,830.830 INFO    ] time= 13/06/2026 03:09:36
[2026-06-13 03:09:36,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:09:36,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:09:37,019.019 INFO    ] No existing commands found in stream
[2026-06-13 03:09:42,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:09:42,032.032 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 03:09:45,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:09:45,921.921 INFO    ] Checking for system updates...
[2026-06-13 03:09:45,941.941 INFO    ] 200
[2026-06-13 03:09:45,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:45,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:09:45,974.974 INFO    ] No update needed
[2026-06-13 03:09:45,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 03:09:45,995.995 INFO    ] 200
[2026-06-13 03:09:45,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:46,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:09:46,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:09:46,069.069 INFO    ] No camera update needed
[2026-06-13 03:09:46,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:09:46,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:09:46,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:09:46,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:09:48,117.117 INFO    ] ================================================
[2026-06-13 03:09:48,132.132 INFO    ] Launching Daemon at Sat Jun 13 03:09:48 IST 2026
[2026-06-13 03:09:48,143.143 INFO    ] ================================================
[2026-06-13 03:09:48,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:09:48
[2026-06-13 03:09:49,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:09:49,431.431 INFO    ] Initializing speech engine...
[2026-06-13 03:09:49,443.443 INFO    ] 2026-06-13 03:09:49
[2026-06-13 03:09:49,706.706 INFO    ] 2026-06-13 03:09:49
[2026-06-13 03:09:49,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:09:49,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:09:49,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:09:50,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:09:50,050.050 INFO    ] time= 13/06/2026 03:09:50
[2026-06-13 03:09:50,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:09:50,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:09:50,162.162 INFO    ] No existing commands found in stream
[2026-06-13 03:09:55,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:09:55,175.175 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 03:09:59,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:09:59,219.219 INFO    ] Checking for system updates...
[2026-06-13 03:09:59,240.240 INFO    ] 200
[2026-06-13 03:09:59,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:59,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:09:59,273.273 INFO    ] No update needed
[2026-06-13 03:09:59,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 03:09:59,294.294 INFO    ] 200
[2026-06-13 03:09:59,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:09:59,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:09:59,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:09:59,358.358 INFO    ] No camera update needed
[2026-06-13 03:09:59,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:09:59,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:09:59,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:09:59,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:01,406.406 INFO    ] ================================================
[2026-06-13 03:10:01,421.421 INFO    ] Launching Daemon at Sat Jun 13 03:10:01 IST 2026
[2026-06-13 03:10:01,432.432 INFO    ] ================================================
[2026-06-13 03:10:01,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:01
[2026-06-13 03:10:02,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:02,576.576 INFO    ] Initializing speech engine...
[2026-06-13 03:10:02,593.593 INFO    ] 2026-06-13 03:10:02
[2026-06-13 03:10:02,857.857 INFO    ] 2026-06-13 03:10:02
[2026-06-13 03:10:02,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:03,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:03,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:03,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:03,105.105 INFO    ] time= 13/06/2026 03:10:03
[2026-06-13 03:10:03,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:03,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:03,187.187 INFO    ] No existing commands found in stream
[2026-06-13 03:10:08,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:10:08,215.215 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 03:10:09,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:10:09,431.431 INFO    ] Checking for system updates...
[2026-06-13 03:10:09,452.452 INFO    ] 200
[2026-06-13 03:10:09,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:09,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:10:09,485.485 INFO    ] No update needed
[2026-06-13 03:10:09,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 03:10:09,509.509 INFO    ] 200
[2026-06-13 03:10:09,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:09,534.534 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:10:09,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:10:09,568.568 INFO    ] No camera update needed
[2026-06-13 03:10:09,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:10:09,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:10:09,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:10:09,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:11,616.616 INFO    ] ================================================
[2026-06-13 03:10:11,631.631 INFO    ] Launching Daemon at Sat Jun 13 03:10:11 IST 2026
[2026-06-13 03:10:11,641.641 INFO    ] ================================================
[2026-06-13 03:10:11,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:11
[2026-06-13 03:10:12,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:12,430.430 INFO    ] Initializing speech engine...
[2026-06-13 03:10:12,433.433 INFO    ] 2026-06-13 03:10:12
[2026-06-13 03:10:12,642.642 INFO    ] 2026-06-13 03:10:12
[2026-06-13 03:10:12,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:12,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:12,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:13,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:13,084.084 INFO    ] time= 13/06/2026 03:10:13
[2026-06-13 03:10:13,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:13,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:13,222.222 INFO    ] No existing commands found in stream
[2026-06-13 03:10:18,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:10:18,234.234 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 03:10:20,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:10:20,879.879 INFO    ] Checking for system updates...
[2026-06-13 03:10:20,899.899 INFO    ] 200
[2026-06-13 03:10:20,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:20,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:10:20,933.933 INFO    ] No update needed
[2026-06-13 03:10:20,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 03:10:20,957.957 INFO    ] 200
[2026-06-13 03:10:20,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:20,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:10:21,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:10:21,022.022 INFO    ] No camera update needed
[2026-06-13 03:10:21,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:10:21,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:10:21,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:10:21,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:23,069.069 INFO    ] ================================================
[2026-06-13 03:10:23,084.084 INFO    ] Launching Daemon at Sat Jun 13 03:10:23 IST 2026
[2026-06-13 03:10:23,094.094 INFO    ] ================================================
[2026-06-13 03:10:23,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:23
[2026-06-13 03:10:23,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:23,903.903 INFO    ] Initializing speech engine...
[2026-06-13 03:10:23,909.909 INFO    ] 2026-06-13 03:10:23
[2026-06-13 03:10:24,110.110 INFO    ] 2026-06-13 03:10:24
[2026-06-13 03:10:24,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:24,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:24,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:24,513.513 INFO    ] time= 13/06/2026 03:10:24
[2026-06-13 03:10:24,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:24,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:24,623.623 INFO    ] No existing commands found in stream
[2026-06-13 03:10:29,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:10:29,642.642 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 03:10:32,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:10:32,096.096 INFO    ] Checking for system updates...
[2026-06-13 03:10:32,121.121 INFO    ] 200
[2026-06-13 03:10:32,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:32,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:10:32,158.158 INFO    ] No update needed
[2026-06-13 03:10:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 03:10:32,181.181 INFO    ] 200
[2026-06-13 03:10:32,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:32,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:10:32,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:10:32,244.244 INFO    ] No camera update needed
[2026-06-13 03:10:32,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:10:32,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:10:32,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:10:32,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:34,289.289 INFO    ] ================================================
[2026-06-13 03:10:34,304.304 INFO    ] Launching Daemon at Sat Jun 13 03:10:34 IST 2026
[2026-06-13 03:10:34,315.315 INFO    ] ================================================
[2026-06-13 03:10:34,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:34
[2026-06-13 03:10:34,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:35,130.130 INFO    ] Initializing speech engine...
[2026-06-13 03:10:35,143.143 INFO    ] 2026-06-13 03:10:35
[2026-06-13 03:10:35,364.364 INFO    ] 2026-06-13 03:10:35
[2026-06-13 03:10:35,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:35,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:35,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:35,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:35,794.794 INFO    ] time= 13/06/2026 03:10:35
[2026-06-13 03:10:35,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:35,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:35,921.921 INFO    ] No existing commands found in stream
[2026-06-13 03:10:40,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:10:40,931.931 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 03:10:43,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:10:43,555.555 INFO    ] Checking for system updates...
[2026-06-13 03:10:43,576.576 INFO    ] 200
[2026-06-13 03:10:43,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:43,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:10:43,612.612 INFO    ] No update needed
[2026-06-13 03:10:43,614.614 INFO    ] Checking for camera pi updates...
[2026-06-13 03:10:43,635.635 INFO    ] 200
[2026-06-13 03:10:43,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:43,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:10:43,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:10:43,705.705 INFO    ] No camera update needed
[2026-06-13 03:10:43,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:10:43,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:10:43,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:10:43,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:45,752.752 INFO    ] ================================================
[2026-06-13 03:10:45,767.767 INFO    ] Launching Daemon at Sat Jun 13 03:10:45 IST 2026
[2026-06-13 03:10:45,777.777 INFO    ] ================================================
[2026-06-13 03:10:46,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:46
[2026-06-13 03:10:46,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:46,573.573 INFO    ] Initializing speech engine...
[2026-06-13 03:10:46,579.579 INFO    ] 2026-06-13 03:10:46
[2026-06-13 03:10:46,783.783 INFO    ] 2026-06-13 03:10:46
[2026-06-13 03:10:46,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:46,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:47,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:47,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:47,182.182 INFO    ] time= 13/06/2026 03:10:47
[2026-06-13 03:10:47,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:47,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:47,297.297 INFO    ] No existing commands found in stream
[2026-06-13 03:10:52,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:10:52,311.311 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 03:10:53,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:10:53,494.494 INFO    ] Checking for system updates...
[2026-06-13 03:10:53,515.515 INFO    ] 200
[2026-06-13 03:10:53,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:53,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:10:53,550.550 INFO    ] No update needed
[2026-06-13 03:10:53,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 03:10:53,571.571 INFO    ] 200
[2026-06-13 03:10:53,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:10:53,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:10:53,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:10:53,645.645 INFO    ] No camera update needed
[2026-06-13 03:10:53,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:10:53,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:10:53,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:10:53,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:10:55,693.693 INFO    ] ================================================
[2026-06-13 03:10:55,708.708 INFO    ] Launching Daemon at Sat Jun 13 03:10:55 IST 2026
[2026-06-13 03:10:55,719.719 INFO    ] ================================================
[2026-06-13 03:10:56,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:10:56
[2026-06-13 03:10:56,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:10:56,516.516 INFO    ] Initializing speech engine...
[2026-06-13 03:10:56,521.521 INFO    ] 2026-06-13 03:10:56
[2026-06-13 03:10:56,724.724 INFO    ] 2026-06-13 03:10:56
[2026-06-13 03:10:56,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:10:56,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:10:56,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:10:57,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:10:57,129.129 INFO    ] time= 13/06/2026 03:10:57
[2026-06-13 03:10:57,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:10:57,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:10:57,238.238 INFO    ] No existing commands found in stream
[2026-06-13 03:11:02,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:02,252.252 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 03:11:02,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:11:02,635.635 INFO    ] Checking for system updates...
[2026-06-13 03:11:02,679.679 INFO    ] 200
[2026-06-13 03:11:02,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:02,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:02,756.756 INFO    ] No update needed
[2026-06-13 03:11:02,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:02,799.799 INFO    ] 200
[2026-06-13 03:11:02,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:02,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:02,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:02,885.885 INFO    ] No camera update needed
[2026-06-13 03:11:02,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:02,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:02,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:02,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:11:04,942.942 INFO    ] ================================================
[2026-06-13 03:11:04,957.957 INFO    ] Launching Daemon at Sat Jun 13 03:11:04 IST 2026
[2026-06-13 03:11:04,968.968 INFO    ] ================================================
[2026-06-13 03:11:05,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:11:05
[2026-06-13 03:11:05,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:11:05,781.781 INFO    ] Initializing speech engine...
[2026-06-13 03:11:05,786.786 INFO    ] 2026-06-13 03:11:05
[2026-06-13 03:11:05,996.996 INFO    ] 2026-06-13 03:11:05
[2026-06-13 03:11:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:11:06,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:11:06,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:11:06,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:11:06,405.405 INFO    ] time= 13/06/2026 03:11:06
[2026-06-13 03:11:06,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:11:06,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:11:06,520.520 INFO    ] No existing commands found in stream
[2026-06-13 03:11:11,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:11,534.534 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 03:11:13,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:11:13,403.403 INFO    ] Checking for system updates...
[2026-06-13 03:11:13,425.425 INFO    ] 200
[2026-06-13 03:11:13,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:13,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:13,461.461 INFO    ] No update needed
[2026-06-13 03:11:13,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:13,483.483 INFO    ] 200
[2026-06-13 03:11:13,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:13,507.507 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:13,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:13,546.546 INFO    ] No camera update needed
[2026-06-13 03:11:13,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:13,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:13,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:13,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:11:15,594.594 INFO    ] ================================================
[2026-06-13 03:11:15,610.610 INFO    ] Launching Daemon at Sat Jun 13 03:11:15 IST 2026
[2026-06-13 03:11:15,620.620 INFO    ] ================================================
[2026-06-13 03:11:15,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:11:15
[2026-06-13 03:11:16,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:11:16,458.458 INFO    ] Initializing speech engine...
[2026-06-13 03:11:16,464.464 INFO    ] 2026-06-13 03:11:16
[2026-06-13 03:11:16,672.672 INFO    ] 2026-06-13 03:11:16
[2026-06-13 03:11:16,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:11:16,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:11:16,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:11:17,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:11:17,081.081 INFO    ] time= 13/06/2026 03:11:17
[2026-06-13 03:11:17,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:11:17,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:11:17,192.192 INFO    ] No existing commands found in stream
[2026-06-13 03:11:22,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:22,205.205 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 03:11:25,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:11:25,524.524 INFO    ] Checking for system updates...
[2026-06-13 03:11:25,545.545 INFO    ] 200
[2026-06-13 03:11:25,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:25,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:25,578.578 INFO    ] No update needed
[2026-06-13 03:11:25,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:25,600.600 INFO    ] 200
[2026-06-13 03:11:25,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:25,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:25,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:11:25,666.666 INFO    ] No camera update needed
[2026-06-13 03:11:25,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:25,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:25,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:25,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:11:27,722.722 INFO    ] ================================================
[2026-06-13 03:11:27,738.738 INFO    ] Launching Daemon at Sat Jun 13 03:11:27 IST 2026
[2026-06-13 03:11:27,748.748 INFO    ] ================================================
[2026-06-13 03:11:28,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:11:28
[2026-06-13 03:11:28,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:11:28,586.586 INFO    ] Initializing speech engine...
[2026-06-13 03:11:28,593.593 INFO    ] 2026-06-13 03:11:28
[2026-06-13 03:11:28,800.800 INFO    ] 2026-06-13 03:11:28
[2026-06-13 03:11:28,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:11:28,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:11:29,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:11:29,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:11:29,222.222 INFO    ] time= 13/06/2026 03:11:29
[2026-06-13 03:11:29,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:11:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:11:29,321.321 INFO    ] No existing commands found in stream
[2026-06-13 03:11:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:34,336.336 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 03:11:36,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:11:36,877.877 INFO    ] Checking for system updates...
[2026-06-13 03:11:36,899.899 INFO    ] 200
[2026-06-13 03:11:36,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:36,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:36,934.934 INFO    ] No update needed
[2026-06-13 03:11:36,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:36,955.955 INFO    ] 200
[2026-06-13 03:11:36,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:36,981.981 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:37,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:37,018.018 INFO    ] No camera update needed
[2026-06-13 03:11:37,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:37,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:37,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:37,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:11:39,067.067 INFO    ] ================================================
[2026-06-13 03:11:39,082.082 INFO    ] Launching Daemon at Sat Jun 13 03:11:39 IST 2026
[2026-06-13 03:11:39,093.093 INFO    ] ================================================
[2026-06-13 03:11:39,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:11:39
[2026-06-13 03:11:39,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:11:39,937.937 INFO    ] Initializing speech engine...
[2026-06-13 03:11:39,948.948 INFO    ] 2026-06-13 03:11:39
[2026-06-13 03:11:40,159.159 INFO    ] 2026-06-13 03:11:40
[2026-06-13 03:11:40,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:11:40,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:11:40,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:11:40,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:11:40,562.562 INFO    ] time= 13/06/2026 03:11:40
[2026-06-13 03:11:40,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:11:40,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:11:40,686.686 INFO    ] No existing commands found in stream
[2026-06-13 03:11:45,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:45,704.704 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 03:11:48,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:11:48,875.875 INFO    ] Checking for system updates...
[2026-06-13 03:11:48,896.896 INFO    ] 200
[2026-06-13 03:11:48,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:48,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:11:48,931.931 INFO    ] No update needed
[2026-06-13 03:11:48,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:48,954.954 INFO    ] 200
[2026-06-13 03:11:48,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:48,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:49,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:11:49,016.016 INFO    ] No camera update needed
[2026-06-13 03:11:49,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:49,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:49,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:49,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:11:51,063.063 INFO    ] ================================================
[2026-06-13 03:11:51,078.078 INFO    ] Launching Daemon at Sat Jun 13 03:11:51 IST 2026
[2026-06-13 03:11:51,088.088 INFO    ] ================================================
[2026-06-13 03:11:51,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:11:51
[2026-06-13 03:11:51,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:11:51,908.908 INFO    ] Initializing speech engine...
[2026-06-13 03:11:51,914.914 INFO    ] 2026-06-13 03:11:51
[2026-06-13 03:11:52,133.133 INFO    ] 2026-06-13 03:11:52
[2026-06-13 03:11:52,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:11:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:11:52,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:11:52,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:11:52,575.575 INFO    ] time= 13/06/2026 03:11:52
[2026-06-13 03:11:52,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:11:52,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:11:52,847.847 INFO    ] No existing commands found in stream
[2026-06-13 03:11:57,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:11:57,864.864 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 03:11:58,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:11:58,861.861 INFO    ] Checking for system updates...
[2026-06-13 03:11:58,902.902 INFO    ] 200
[2026-06-13 03:11:58,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:58,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:58,973.973 INFO    ] No update needed
[2026-06-13 03:11:58,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 03:11:59,004.004 INFO    ] 200
[2026-06-13 03:11:59,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:11:59,029.029 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:11:59,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:11:59,067.067 INFO    ] No camera update needed
[2026-06-13 03:11:59,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:11:59,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:11:59,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:11:59,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:01,124.124 INFO    ] ================================================
[2026-06-13 03:12:01,151.151 INFO    ] Launching Daemon at Sat Jun 13 03:12:01 IST 2026
[2026-06-13 03:12:01,163.163 INFO    ] ================================================
[2026-06-13 03:12:01,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:01
[2026-06-13 03:12:01,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:02,157.157 INFO    ] Initializing speech engine...
[2026-06-13 03:12:02,162.162 INFO    ] 2026-06-13 03:12:02
[2026-06-13 03:12:02,376.376 INFO    ] 2026-06-13 03:12:02
[2026-06-13 03:12:02,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:02,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:02,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:02,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:02,676.676 INFO    ] time= 13/06/2026 03:12:02
[2026-06-13 03:12:02,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:02,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:02,832.832 INFO    ] No existing commands found in stream
[2026-06-13 03:12:07,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:12:07,844.844 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 03:12:12,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:12:12,017.017 INFO    ] Checking for system updates...
[2026-06-13 03:12:12,041.041 INFO    ] 200
[2026-06-13 03:12:12,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:12,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:12:12,074.074 INFO    ] No update needed
[2026-06-13 03:12:12,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 03:12:12,098.098 INFO    ] 200
[2026-06-13 03:12:12,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:12,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:12:12,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:12:12,164.164 INFO    ] No camera update needed
[2026-06-13 03:12:12,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:12:12,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:12:12,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:12:12,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:14,214.214 INFO    ] ================================================
[2026-06-13 03:12:14,229.229 INFO    ] Launching Daemon at Sat Jun 13 03:12:14 IST 2026
[2026-06-13 03:12:14,239.239 INFO    ] ================================================
[2026-06-13 03:12:14,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:14
[2026-06-13 03:12:14,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:15,031.031 INFO    ] Initializing speech engine...
[2026-06-13 03:12:15,043.043 INFO    ] 2026-06-13 03:12:15
[2026-06-13 03:12:15,251.251 INFO    ] 2026-06-13 03:12:15
[2026-06-13 03:12:15,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:15,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:15,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:15,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:15,654.654 INFO    ] time= 13/06/2026 03:12:15
[2026-06-13 03:12:15,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:15,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:15,782.782 INFO    ] No existing commands found in stream
[2026-06-13 03:12:20,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:12:20,810.810 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 03:12:23,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:12:23,158.158 INFO    ] Checking for system updates...
[2026-06-13 03:12:23,180.180 INFO    ] 200
[2026-06-13 03:12:23,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:23,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:12:23,215.215 INFO    ] No update needed
[2026-06-13 03:12:23,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 03:12:23,236.236 INFO    ] 200
[2026-06-13 03:12:23,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:23,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:12:23,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:12:23,300.300 INFO    ] No camera update needed
[2026-06-13 03:12:23,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:12:23,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:12:23,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:12:23,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:25,347.347 INFO    ] ================================================
[2026-06-13 03:12:25,363.363 INFO    ] Launching Daemon at Sat Jun 13 03:12:25 IST 2026
[2026-06-13 03:12:25,373.373 INFO    ] ================================================
[2026-06-13 03:12:25,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:25
[2026-06-13 03:12:26,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:26,241.241 INFO    ] Initializing speech engine...
[2026-06-13 03:12:26,246.246 INFO    ] 2026-06-13 03:12:26
[2026-06-13 03:12:26,452.452 INFO    ] 2026-06-13 03:12:26
[2026-06-13 03:12:26,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:26,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:26,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:26,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:26,848.848 INFO    ] time= 13/06/2026 03:12:26
[2026-06-13 03:12:26,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:26,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:26,969.969 INFO    ] No existing commands found in stream
[2026-06-13 03:12:31,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:12:31,983.983 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 03:12:33,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:12:33,097.097 INFO    ] Checking for system updates...
[2026-06-13 03:12:33,136.136 INFO    ] 200
[2026-06-13 03:12:33,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:33,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:12:33,193.193 INFO    ] No update needed
[2026-06-13 03:12:33,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 03:12:33,229.229 INFO    ] 200
[2026-06-13 03:12:33,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:33,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:12:33,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:12:33,316.316 INFO    ] No camera update needed
[2026-06-13 03:12:33,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:12:33,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:12:33,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:12:33,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:35,371.371 INFO    ] ================================================
[2026-06-13 03:12:35,386.386 INFO    ] Launching Daemon at Sat Jun 13 03:12:35 IST 2026
[2026-06-13 03:12:35,397.397 INFO    ] ================================================
[2026-06-13 03:12:35,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:35
[2026-06-13 03:12:36,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:36,188.188 INFO    ] Initializing speech engine...
[2026-06-13 03:12:36,193.193 INFO    ] 2026-06-13 03:12:36
[2026-06-13 03:12:36,420.420 INFO    ] 2026-06-13 03:12:36
[2026-06-13 03:12:36,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:36,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:36,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:36,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:36,837.837 INFO    ] time= 13/06/2026 03:12:36
[2026-06-13 03:12:36,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:36,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:36,974.974 INFO    ] No existing commands found in stream
[2026-06-13 03:12:41,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:12:41,988.988 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 03:12:43,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:12:43,582.582 INFO    ] Checking for system updates...
[2026-06-13 03:12:43,603.603 INFO    ] 200
[2026-06-13 03:12:43,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:43,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:12:43,636.636 INFO    ] No update needed
[2026-06-13 03:12:43,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 03:12:43,657.657 INFO    ] 200
[2026-06-13 03:12:43,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:43,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:12:43,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:12:43,717.717 INFO    ] No camera update needed
[2026-06-13 03:12:43,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:12:43,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:12:43,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:12:43,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:45,764.764 INFO    ] ================================================
[2026-06-13 03:12:45,779.779 INFO    ] Launching Daemon at Sat Jun 13 03:12:45 IST 2026
[2026-06-13 03:12:45,791.791 INFO    ] ================================================
[2026-06-13 03:12:46,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:46
[2026-06-13 03:12:46,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:46,613.613 INFO    ] Initializing speech engine...
[2026-06-13 03:12:46,619.619 INFO    ] 2026-06-13 03:12:46
[2026-06-13 03:12:46,833.833 INFO    ] 2026-06-13 03:12:46
[2026-06-13 03:12:46,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:47,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:47,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:47,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:47,259.259 INFO    ] time= 13/06/2026 03:12:47
[2026-06-13 03:12:47,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:47,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:47,384.384 INFO    ] No existing commands found in stream
[2026-06-13 03:12:52,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:12:52,398.398 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 03:12:53,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:12:53,742.742 INFO    ] Checking for system updates...
[2026-06-13 03:12:53,762.762 INFO    ] 200
[2026-06-13 03:12:53,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:53,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:12:53,799.799 INFO    ] No update needed
[2026-06-13 03:12:53,800.800 INFO    ] Checking for camera pi updates...
[2026-06-13 03:12:53,821.821 INFO    ] 200
[2026-06-13 03:12:53,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:12:53,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:12:53,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:12:53,884.884 INFO    ] No camera update needed
[2026-06-13 03:12:53,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:12:53,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:12:53,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:12:53,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:12:55,932.932 INFO    ] ================================================
[2026-06-13 03:12:55,946.946 INFO    ] Launching Daemon at Sat Jun 13 03:12:55 IST 2026
[2026-06-13 03:12:55,957.957 INFO    ] ================================================
[2026-06-13 03:12:56,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:12:56
[2026-06-13 03:12:56,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:12:56,753.753 INFO    ] Initializing speech engine...
[2026-06-13 03:12:56,763.763 INFO    ] 2026-06-13 03:12:56
[2026-06-13 03:12:56,987.987 INFO    ] 2026-06-13 03:12:56
[2026-06-13 03:12:57,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:12:57,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:12:57,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:12:57,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:12:57,407.407 INFO    ] time= 13/06/2026 03:12:57
[2026-06-13 03:12:57,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:12:57,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:12:57,537.537 INFO    ] No existing commands found in stream
[2026-06-13 03:13:02,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:02,548.548 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 03:13:05,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:13:05,338.338 INFO    ] Checking for system updates...
[2026-06-13 03:13:05,359.359 INFO    ] 200
[2026-06-13 03:13:05,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:05,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:05,392.392 INFO    ] No update needed
[2026-06-13 03:13:05,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:05,414.414 INFO    ] 200
[2026-06-13 03:13:05,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:05,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:05,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:05,596.596 INFO    ] No camera update needed
[2026-06-13 03:13:05,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:05,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:05,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:05,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:13:07,643.643 INFO    ] ================================================
[2026-06-13 03:13:07,659.659 INFO    ] Launching Daemon at Sat Jun 13 03:13:07 IST 2026
[2026-06-13 03:13:07,670.670 INFO    ] ================================================
[2026-06-13 03:13:08,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:13:08
[2026-06-13 03:13:08,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:13:08,500.500 INFO    ] Initializing speech engine...
[2026-06-13 03:13:08,511.511 INFO    ] 2026-06-13 03:13:08
[2026-06-13 03:13:08,718.718 INFO    ] 2026-06-13 03:13:08
[2026-06-13 03:13:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:13:08,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:13:08,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:13:09,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:13:09,127.127 INFO    ] time= 13/06/2026 03:13:09
[2026-06-13 03:13:09,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:13:09,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:13:09,233.233 INFO    ] No existing commands found in stream
[2026-06-13 03:13:14,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:14,246.246 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 03:13:15,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:13:15,054.054 INFO    ] Checking for system updates...
[2026-06-13 03:13:15,076.076 INFO    ] 200
[2026-06-13 03:13:15,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:15,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:15,110.110 INFO    ] No update needed
[2026-06-13 03:13:15,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:15,131.131 INFO    ] 200
[2026-06-13 03:13:15,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:15,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:15,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:15,193.193 INFO    ] No camera update needed
[2026-06-13 03:13:15,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:15,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:15,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:15,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:13:17,234.234 INFO    ] ================================================
[2026-06-13 03:13:17,249.249 INFO    ] Launching Daemon at Sat Jun 13 03:13:17 IST 2026
[2026-06-13 03:13:17,260.260 INFO    ] ================================================
[2026-06-13 03:13:17,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:13:17
[2026-06-13 03:13:17,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:13:18,032.032 INFO    ] Initializing speech engine...
[2026-06-13 03:13:18,037.037 INFO    ] 2026-06-13 03:13:18
[2026-06-13 03:13:18,257.257 INFO    ] 2026-06-13 03:13:18
[2026-06-13 03:13:18,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:13:18,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:13:18,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:13:18,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:13:18,657.657 INFO    ] time= 13/06/2026 03:13:18
[2026-06-13 03:13:18,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:13:18,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:13:18,780.780 INFO    ] No existing commands found in stream
[2026-06-13 03:13:23,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:23,793.793 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 03:13:26,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:13:26,474.474 INFO    ] Checking for system updates...
[2026-06-13 03:13:26,498.498 INFO    ] 200
[2026-06-13 03:13:26,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:26,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:26,533.533 INFO    ] No update needed
[2026-06-13 03:13:26,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:26,555.555 INFO    ] 200
[2026-06-13 03:13:26,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:26,581.581 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:26,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:26,618.618 INFO    ] No camera update needed
[2026-06-13 03:13:26,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:26,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:26,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:26,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:13:28,668.668 INFO    ] ================================================
[2026-06-13 03:13:28,684.684 INFO    ] Launching Daemon at Sat Jun 13 03:13:28 IST 2026
[2026-06-13 03:13:28,695.695 INFO    ] ================================================
[2026-06-13 03:13:29,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:13:29
[2026-06-13 03:13:29,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:13:29,534.534 INFO    ] Initializing speech engine...
[2026-06-13 03:13:29,539.539 INFO    ] 2026-06-13 03:13:29
[2026-06-13 03:13:29,747.747 INFO    ] 2026-06-13 03:13:29
[2026-06-13 03:13:29,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:13:29,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:13:29,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:13:30,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:13:30,162.162 INFO    ] time= 13/06/2026 03:13:30
[2026-06-13 03:13:30,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:13:30,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:13:30,260.260 INFO    ] No existing commands found in stream
[2026-06-13 03:13:35,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:35,275.275 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 03:13:36,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:13:36,908.908 INFO    ] Checking for system updates...
[2026-06-13 03:13:36,931.931 INFO    ] 200
[2026-06-13 03:13:36,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:36,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:36,965.965 INFO    ] No update needed
[2026-06-13 03:13:36,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:36,986.986 INFO    ] 200
[2026-06-13 03:13:36,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:37,011.011 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:37,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:37,046.046 INFO    ] No camera update needed
[2026-06-13 03:13:37,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:37,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:37,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:37,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:13:39,089.089 INFO    ] ================================================
[2026-06-13 03:13:39,104.104 INFO    ] Launching Daemon at Sat Jun 13 03:13:39 IST 2026
[2026-06-13 03:13:39,116.116 INFO    ] ================================================
[2026-06-13 03:13:39,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:13:39
[2026-06-13 03:13:39,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:13:39,893.893 INFO    ] Initializing speech engine...
[2026-06-13 03:13:39,897.897 INFO    ] 2026-06-13 03:13:39
[2026-06-13 03:13:40,126.126 INFO    ] 2026-06-13 03:13:40
[2026-06-13 03:13:40,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:13:40,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:13:40,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:13:40,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:13:40,510.510 INFO    ] time= 13/06/2026 03:13:40
[2026-06-13 03:13:40,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:13:40,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:13:40,683.683 INFO    ] No existing commands found in stream
[2026-06-13 03:13:45,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:45,697.697 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 03:13:47,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:13:47,582.582 INFO    ] Checking for system updates...
[2026-06-13 03:13:47,603.603 INFO    ] 200
[2026-06-13 03:13:47,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:47,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:47,637.637 INFO    ] No update needed
[2026-06-13 03:13:47,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:47,658.658 INFO    ] 200
[2026-06-13 03:13:47,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:47,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:47,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:13:47,724.724 INFO    ] No camera update needed
[2026-06-13 03:13:47,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:47,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:47,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:47,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:13:49,764.764 INFO    ] ================================================
[2026-06-13 03:13:49,781.781 INFO    ] Launching Daemon at Sat Jun 13 03:13:49 IST 2026
[2026-06-13 03:13:49,792.792 INFO    ] ================================================
[2026-06-13 03:13:50,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:13:50
[2026-06-13 03:13:50,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:13:50,579.579 INFO    ] Initializing speech engine...
[2026-06-13 03:13:50,588.588 INFO    ] 2026-06-13 03:13:50
[2026-06-13 03:13:50,800.800 INFO    ] 2026-06-13 03:13:50
[2026-06-13 03:13:50,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:13:51,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:13:51,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:13:51,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:13:51,209.209 INFO    ] time= 13/06/2026 03:13:51
[2026-06-13 03:13:51,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:13:51,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:13:51,313.313 INFO    ] No existing commands found in stream
[2026-06-13 03:13:56,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:13:56,326.326 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 03:13:59,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:13:59,584.584 INFO    ] Checking for system updates...
[2026-06-13 03:13:59,604.604 INFO    ] 200
[2026-06-13 03:13:59,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:59,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:59,640.640 INFO    ] No update needed
[2026-06-13 03:13:59,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 03:13:59,662.662 INFO    ] 200
[2026-06-13 03:13:59,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:13:59,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:13:59,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:13:59,725.725 INFO    ] No camera update needed
[2026-06-13 03:13:59,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:13:59,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:13:59,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:13:59,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:01,773.773 INFO    ] ================================================
[2026-06-13 03:14:01,795.795 INFO    ] Launching Daemon at Sat Jun 13 03:14:01 IST 2026
[2026-06-13 03:14:01,812.812 INFO    ] ================================================
[2026-06-13 03:14:02,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:02
[2026-06-13 03:14:02,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:02,747.747 INFO    ] Initializing speech engine...
[2026-06-13 03:14:02,752.752 INFO    ] 2026-06-13 03:14:02
[2026-06-13 03:14:02,959.959 INFO    ] 2026-06-13 03:14:02
[2026-06-13 03:14:02,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:03,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:03,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:03,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:03,190.190 INFO    ] time= 13/06/2026 03:14:03
[2026-06-13 03:14:03,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:03,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:03,288.288 INFO    ] No existing commands found in stream
[2026-06-13 03:14:08,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:14:08,325.325 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 03:14:12,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:14:12,171.171 INFO    ] Checking for system updates...
[2026-06-13 03:14:12,196.196 INFO    ] 200
[2026-06-13 03:14:12,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:12,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:14:12,229.229 INFO    ] No update needed
[2026-06-13 03:14:12,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 03:14:12,253.253 INFO    ] 200
[2026-06-13 03:14:12,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:12,285.285 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:14:12,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:14:12,323.323 INFO    ] No camera update needed
[2026-06-13 03:14:12,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:14:12,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:14:12,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:14:12,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:14,371.371 INFO    ] ================================================
[2026-06-13 03:14:14,387.387 INFO    ] Launching Daemon at Sat Jun 13 03:14:14 IST 2026
[2026-06-13 03:14:14,398.398 INFO    ] ================================================
[2026-06-13 03:14:14,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:14
[2026-06-13 03:14:15,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:15,276.276 INFO    ] Initializing speech engine...
[2026-06-13 03:14:15,281.281 INFO    ] 2026-06-13 03:14:15
[2026-06-13 03:14:15,488.488 INFO    ] 2026-06-13 03:14:15
[2026-06-13 03:14:15,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:15,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:15,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:15,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:15,907.907 INFO    ] time= 13/06/2026 03:14:15
[2026-06-13 03:14:15,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:15,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:16,001.001 INFO    ] No existing commands found in stream
[2026-06-13 03:14:21,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:14:21,019.019 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 03:14:24,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:14:24,219.219 INFO    ] Checking for system updates...
[2026-06-13 03:14:24,240.240 INFO    ] 200
[2026-06-13 03:14:24,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:24,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:14:24,274.274 INFO    ] No update needed
[2026-06-13 03:14:24,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 03:14:24,295.295 INFO    ] 200
[2026-06-13 03:14:24,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:24,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:14:24,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:14:24,359.359 INFO    ] No camera update needed
[2026-06-13 03:14:24,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:14:24,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:14:24,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:14:24,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:26,409.409 INFO    ] ================================================
[2026-06-13 03:14:26,424.424 INFO    ] Launching Daemon at Sat Jun 13 03:14:26 IST 2026
[2026-06-13 03:14:26,435.435 INFO    ] ================================================
[2026-06-13 03:14:26,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:26
[2026-06-13 03:14:27,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:27,306.306 INFO    ] Initializing speech engine...
[2026-06-13 03:14:27,312.312 INFO    ] 2026-06-13 03:14:27
[2026-06-13 03:14:27,521.521 INFO    ] 2026-06-13 03:14:27
[2026-06-13 03:14:27,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:27,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:27,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:27,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:27,932.932 INFO    ] time= 13/06/2026 03:14:27
[2026-06-13 03:14:27,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:27,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:28,035.035 INFO    ] No existing commands found in stream
[2026-06-13 03:14:33,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:14:33,049.049 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 03:14:35,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:14:35,028.028 INFO    ] Checking for system updates...
[2026-06-13 03:14:35,051.051 INFO    ] 200
[2026-06-13 03:14:35,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:35,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:14:35,089.089 INFO    ] No update needed
[2026-06-13 03:14:35,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 03:14:35,110.110 INFO    ] 200
[2026-06-13 03:14:35,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:35,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:14:35,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:14:35,177.177 INFO    ] No camera update needed
[2026-06-13 03:14:35,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:14:35,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:14:35,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:14:35,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:37,225.225 INFO    ] ================================================
[2026-06-13 03:14:37,241.241 INFO    ] Launching Daemon at Sat Jun 13 03:14:37 IST 2026
[2026-06-13 03:14:37,251.251 INFO    ] ================================================
[2026-06-13 03:14:37,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:37
[2026-06-13 03:14:37,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:38,052.052 INFO    ] Initializing speech engine...
[2026-06-13 03:14:38,056.056 INFO    ] 2026-06-13 03:14:38
[2026-06-13 03:14:38,285.285 INFO    ] 2026-06-13 03:14:38
[2026-06-13 03:14:38,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:38,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:38,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:38,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:38,660.660 INFO    ] time= 13/06/2026 03:14:38
[2026-06-13 03:14:38,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:38,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:38,842.842 INFO    ] No existing commands found in stream
[2026-06-13 03:14:43,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:14:43,854.854 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 03:14:44,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:14:44,609.609 INFO    ] Checking for system updates...
[2026-06-13 03:14:44,631.631 INFO    ] 200
[2026-06-13 03:14:44,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:44,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:14:44,663.663 INFO    ] No update needed
[2026-06-13 03:14:44,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 03:14:44,684.684 INFO    ] 200
[2026-06-13 03:14:44,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:44,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:14:44,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:14:44,746.746 INFO    ] No camera update needed
[2026-06-13 03:14:44,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:14:44,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:14:44,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:14:44,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:46,793.793 INFO    ] ================================================
[2026-06-13 03:14:46,810.810 INFO    ] Launching Daemon at Sat Jun 13 03:14:46 IST 2026
[2026-06-13 03:14:46,820.820 INFO    ] ================================================
[2026-06-13 03:14:47,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:47
[2026-06-13 03:14:47,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:47,664.664 INFO    ] Initializing speech engine...
[2026-06-13 03:14:47,669.669 INFO    ] 2026-06-13 03:14:47
[2026-06-13 03:14:47,876.876 INFO    ] 2026-06-13 03:14:47
[2026-06-13 03:14:47,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:48,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:48,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:48,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:48,295.295 INFO    ] time= 13/06/2026 03:14:48
[2026-06-13 03:14:48,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:48,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:48,390.390 INFO    ] No existing commands found in stream
[2026-06-13 03:14:53,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:14:53,404.404 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 03:14:54,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:14:54,016.016 INFO    ] Checking for system updates...
[2026-06-13 03:14:54,038.038 INFO    ] 200
[2026-06-13 03:14:54,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:54,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:14:54,071.071 INFO    ] No update needed
[2026-06-13 03:14:54,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 03:14:54,093.093 INFO    ] 200
[2026-06-13 03:14:54,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:14:54,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:14:54,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:14:54,157.157 INFO    ] No camera update needed
[2026-06-13 03:14:54,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:14:54,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:14:54,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:14:54,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:14:56,207.207 INFO    ] ================================================
[2026-06-13 03:14:56,222.222 INFO    ] Launching Daemon at Sat Jun 13 03:14:56 IST 2026
[2026-06-13 03:14:56,234.234 INFO    ] ================================================
[2026-06-13 03:14:56,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:14:56
[2026-06-13 03:14:56,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:14:57,002.002 INFO    ] Initializing speech engine...
[2026-06-13 03:14:57,007.007 INFO    ] 2026-06-13 03:14:57
[2026-06-13 03:14:57,209.209 INFO    ] 2026-06-13 03:14:57
[2026-06-13 03:14:57,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:14:57,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:14:57,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:14:57,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:14:57,603.603 INFO    ] time= 13/06/2026 03:14:57
[2026-06-13 03:14:57,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:14:57,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:14:57,691.691 INFO    ] No existing commands found in stream
[2026-06-13 03:15:02,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:15:02,701.701 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 03:15:06,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:15:06,558.558 INFO    ] Checking for system updates...
[2026-06-13 03:15:06,578.578 INFO    ] 200
[2026-06-13 03:15:06,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:06,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:15:06,615.615 INFO    ] No update needed
[2026-06-13 03:15:06,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 03:15:06,640.640 INFO    ] 200
[2026-06-13 03:15:06,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:06,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:15:06,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:15:06,706.706 INFO    ] No camera update needed
[2026-06-13 03:15:06,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:15:06,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:15:06,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:15:06,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:15:08,754.754 INFO    ] ================================================
[2026-06-13 03:15:08,771.771 INFO    ] Launching Daemon at Sat Jun 13 03:15:08 IST 2026
[2026-06-13 03:15:08,782.782 INFO    ] ================================================
[2026-06-13 03:15:09,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:15:09
[2026-06-13 03:15:09,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:15:09,573.573 INFO    ] Initializing speech engine...
[2026-06-13 03:15:09,577.577 INFO    ] 2026-06-13 03:15:09
[2026-06-13 03:15:09,807.807 INFO    ] 2026-06-13 03:15:09
[2026-06-13 03:15:09,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:15:09,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:15:10,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:15:10,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:15:10,214.214 INFO    ] time= 13/06/2026 03:15:10
[2026-06-13 03:15:10,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:15:10,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:15:10,360.360 INFO    ] No existing commands found in stream
[2026-06-13 03:15:15,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:15:15,373.373 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 03:15:19,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:15:19,431.431 INFO    ] Checking for system updates...
[2026-06-13 03:15:19,452.452 INFO    ] 200
[2026-06-13 03:15:19,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:19,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:19,486.486 INFO    ] No update needed
[2026-06-13 03:15:19,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 03:15:19,507.507 INFO    ] 200
[2026-06-13 03:15:19,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:19,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:15:19,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:19,672.672 INFO    ] No camera update needed
[2026-06-13 03:15:19,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:15:19,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:15:19,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:15:19,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:15:21,720.720 INFO    ] ================================================
[2026-06-13 03:15:21,736.736 INFO    ] Launching Daemon at Sat Jun 13 03:15:21 IST 2026
[2026-06-13 03:15:21,747.747 INFO    ] ================================================
[2026-06-13 03:15:22,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:15:22
[2026-06-13 03:15:22,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:15:22,570.570 INFO    ] Initializing speech engine...
[2026-06-13 03:15:22,576.576 INFO    ] 2026-06-13 03:15:22
[2026-06-13 03:15:22,780.780 INFO    ] 2026-06-13 03:15:22
[2026-06-13 03:15:22,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:15:22,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:15:22,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:15:23,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:15:23,184.184 INFO    ] time= 13/06/2026 03:15:23
[2026-06-13 03:15:23,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:15:23,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:15:23,299.299 INFO    ] No existing commands found in stream
[2026-06-13 03:15:28,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:15:28,313.313 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 03:15:29,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:15:29,116.116 INFO    ] Checking for system updates...
[2026-06-13 03:15:29,137.137 INFO    ] 200
[2026-06-13 03:15:29,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:29,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:29,174.174 INFO    ] No update needed
[2026-06-13 03:15:29,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 03:15:29,195.195 INFO    ] 200
[2026-06-13 03:15:29,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:29,237.237 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:15:29,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:29,284.284 INFO    ] No camera update needed
[2026-06-13 03:15:29,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:15:29,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:15:29,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:15:29,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:15:31,340.340 INFO    ] ================================================
[2026-06-13 03:15:31,356.356 INFO    ] Launching Daemon at Sat Jun 13 03:15:31 IST 2026
[2026-06-13 03:15:31,367.367 INFO    ] ================================================
[2026-06-13 03:15:31,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:15:31
[2026-06-13 03:15:32,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:15:32,225.225 INFO    ] Initializing speech engine...
[2026-06-13 03:15:32,230.230 INFO    ] 2026-06-13 03:15:32
[2026-06-13 03:15:32,461.461 INFO    ] 2026-06-13 03:15:32
[2026-06-13 03:15:32,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:15:32,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:15:32,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:15:32,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:15:32,742.742 INFO    ] time= 13/06/2026 03:15:32
[2026-06-13 03:15:32,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:15:32,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:15:32,877.877 INFO    ] No existing commands found in stream
[2026-06-13 03:15:37,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:15:37,915.915 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 03:15:38,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:15:38,252.252 INFO    ] Checking for system updates...
[2026-06-13 03:15:38,274.274 INFO    ] 200
[2026-06-13 03:15:38,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:38,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:38,307.307 INFO    ] No update needed
[2026-06-13 03:15:38,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 03:15:38,329.329 INFO    ] 200
[2026-06-13 03:15:38,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:38,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:15:38,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:15:38,392.392 INFO    ] No camera update needed
[2026-06-13 03:15:38,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:15:38,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:15:38,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:15:38,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:15:40,440.440 INFO    ] ================================================
[2026-06-13 03:15:40,456.456 INFO    ] Launching Daemon at Sat Jun 13 03:15:40 IST 2026
[2026-06-13 03:15:40,467.467 INFO    ] ================================================
[2026-06-13 03:15:40,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:15:40
[2026-06-13 03:15:41,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:15:41,303.303 INFO    ] Initializing speech engine...
[2026-06-13 03:15:41,311.311 INFO    ] 2026-06-13 03:15:41
[2026-06-13 03:15:41,527.527 INFO    ] 2026-06-13 03:15:41
[2026-06-13 03:15:41,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:15:41,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:15:41,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:15:41,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:15:41,927.927 INFO    ] time= 13/06/2026 03:15:41
[2026-06-13 03:15:41,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:15:42,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:15:42,116.116 INFO    ] No existing commands found in stream
[2026-06-13 03:15:47,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:15:47,150.150 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 03:15:51,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:15:51,328.328 INFO    ] Checking for system updates...
[2026-06-13 03:15:51,364.364 INFO    ] 200
[2026-06-13 03:15:51,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:51,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:15:51,422.422 INFO    ] No update needed
[2026-06-13 03:15:51,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 03:15:51,446.446 INFO    ] 200
[2026-06-13 03:15:51,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:15:51,472.472 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:15:51,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:15:51,510.510 INFO    ] No camera update needed
[2026-06-13 03:15:51,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:15:51,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:15:51,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:15:51,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:15:53,559.559 INFO    ] ================================================
[2026-06-13 03:15:53,575.575 INFO    ] Launching Daemon at Sat Jun 13 03:15:53 IST 2026
[2026-06-13 03:15:53,586.586 INFO    ] ================================================
[2026-06-13 03:15:53,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:15:53
[2026-06-13 03:15:54,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:15:54,396.396 INFO    ] Initializing speech engine...
[2026-06-13 03:15:54,400.400 INFO    ] 2026-06-13 03:15:54
[2026-06-13 03:15:54,617.617 INFO    ] 2026-06-13 03:15:54
[2026-06-13 03:15:54,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:15:54,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:15:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:15:54,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:15:55,024.024 INFO    ] time= 13/06/2026 03:15:54
[2026-06-13 03:15:55,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:15:55,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:15:55,121.121 INFO    ] No existing commands found in stream
[2026-06-13 03:16:00,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:00,133.133 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 03:16:00,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:16:00,873.873 INFO    ] Checking for system updates...
[2026-06-13 03:16:00,895.895 INFO    ] 200
[2026-06-13 03:16:00,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:00,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:16:00,928.928 INFO    ] No update needed
[2026-06-13 03:16:00,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:00,950.950 INFO    ] 200
[2026-06-13 03:16:00,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:00,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:01,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:16:01,015.015 INFO    ] No camera update needed
[2026-06-13 03:16:01,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:01,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:01,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:01,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:16:03,058.058 INFO    ] ================================================
[2026-06-13 03:16:03,073.073 INFO    ] Launching Daemon at Sat Jun 13 03:16:03 IST 2026
[2026-06-13 03:16:03,084.084 INFO    ] ================================================
[2026-06-13 03:16:03,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:16:03
[2026-06-13 03:16:03,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:16:03,891.891 INFO    ] Initializing speech engine...
[2026-06-13 03:16:03,895.895 INFO    ] 2026-06-13 03:16:03
[2026-06-13 03:16:04,116.116 INFO    ] 2026-06-13 03:16:04
[2026-06-13 03:16:04,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:16:04,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:16:04,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:16:04,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:16:04,525.525 INFO    ] time= 13/06/2026 03:16:04
[2026-06-13 03:16:04,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:16:04,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:16:04,728.728 INFO    ] No existing commands found in stream
[2026-06-13 03:16:09,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:09,741.741 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 03:16:12,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:16:12,747.747 INFO    ] Checking for system updates...
[2026-06-13 03:16:12,770.770 INFO    ] 200
[2026-06-13 03:16:12,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:12,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:12,803.803 INFO    ] No update needed
[2026-06-13 03:16:12,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:12,825.825 INFO    ] 200
[2026-06-13 03:16:12,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:12,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:12,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:12,889.889 INFO    ] No camera update needed
[2026-06-13 03:16:12,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:12,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:12,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:12,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:16:14,932.932 INFO    ] ================================================
[2026-06-13 03:16:14,948.948 INFO    ] Launching Daemon at Sat Jun 13 03:16:14 IST 2026
[2026-06-13 03:16:14,961.961 INFO    ] ================================================
[2026-06-13 03:16:15,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:16:15
[2026-06-13 03:16:15,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:16:15,779.779 INFO    ] Initializing speech engine...
[2026-06-13 03:16:15,788.788 INFO    ] 2026-06-13 03:16:15
[2026-06-13 03:16:16,016.016 INFO    ] 2026-06-13 03:16:15
[2026-06-13 03:16:16,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:16:16,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:16:16,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:16:16,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:16:16,406.406 INFO    ] time= 13/06/2026 03:16:16
[2026-06-13 03:16:16,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:16:16,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:16:16,579.579 INFO    ] No existing commands found in stream
[2026-06-13 03:16:21,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:21,593.593 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 03:16:22,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:16:22,066.066 INFO    ] Checking for system updates...
[2026-06-13 03:16:22,088.088 INFO    ] 200
[2026-06-13 03:16:22,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:22,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:16:22,124.124 INFO    ] No update needed
[2026-06-13 03:16:22,125.125 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:22,146.146 INFO    ] 200
[2026-06-13 03:16:22,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:22,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:22,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:16:22,210.210 INFO    ] No camera update needed
[2026-06-13 03:16:22,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:22,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:22,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:22,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:16:24,259.259 INFO    ] ================================================
[2026-06-13 03:16:24,275.275 INFO    ] Launching Daemon at Sat Jun 13 03:16:24 IST 2026
[2026-06-13 03:16:24,286.286 INFO    ] ================================================
[2026-06-13 03:16:24,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:16:24
[2026-06-13 03:16:24,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:16:25,097.097 INFO    ] Initializing speech engine...
[2026-06-13 03:16:25,105.105 INFO    ] 2026-06-13 03:16:25
[2026-06-13 03:16:25,330.330 INFO    ] 2026-06-13 03:16:25
[2026-06-13 03:16:25,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:16:25,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:16:25,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:16:25,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:16:25,576.576 INFO    ] time= 13/06/2026 03:16:25
[2026-06-13 03:16:25,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:16:25,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:16:25,692.692 INFO    ] No existing commands found in stream
[2026-06-13 03:16:30,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:30,730.730 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 03:16:34,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:16:34,936.936 INFO    ] Checking for system updates...
[2026-06-13 03:16:34,973.973 INFO    ] 200
[2026-06-13 03:16:34,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:35,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:35,031.031 INFO    ] No update needed
[2026-06-13 03:16:35,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:35,066.066 INFO    ] 200
[2026-06-13 03:16:35,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:35,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:35,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:35,153.153 INFO    ] No camera update needed
[2026-06-13 03:16:35,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:35,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:35,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:35,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:16:37,203.203 INFO    ] ================================================
[2026-06-13 03:16:37,218.218 INFO    ] Launching Daemon at Sat Jun 13 03:16:37 IST 2026
[2026-06-13 03:16:37,230.230 INFO    ] ================================================
[2026-06-13 03:16:37,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:16:37
[2026-06-13 03:16:37,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:16:38,039.039 INFO    ] Initializing speech engine...
[2026-06-13 03:16:38,046.046 INFO    ] 2026-06-13 03:16:38
[2026-06-13 03:16:38,258.258 INFO    ] 2026-06-13 03:16:38
[2026-06-13 03:16:38,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:16:38,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:16:38,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:16:38,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:16:38,684.684 INFO    ] time= 13/06/2026 03:16:38
[2026-06-13 03:16:38,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:16:38,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:16:38,785.785 INFO    ] No existing commands found in stream
[2026-06-13 03:16:43,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:43,800.800 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 03:16:47,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:16:47,796.796 INFO    ] Checking for system updates...
[2026-06-13 03:16:47,818.818 INFO    ] 200
[2026-06-13 03:16:47,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:47,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:47,851.851 INFO    ] No update needed
[2026-06-13 03:16:47,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:47,932.932 INFO    ] 200
[2026-06-13 03:16:47,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:47,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:48,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:48,003.003 INFO    ] No camera update needed
[2026-06-13 03:16:48,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:48,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:48,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:48,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:16:50,055.055 INFO    ] ================================================
[2026-06-13 03:16:50,070.070 INFO    ] Launching Daemon at Sat Jun 13 03:16:50 IST 2026
[2026-06-13 03:16:50,081.081 INFO    ] ================================================
[2026-06-13 03:16:50,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:16:50
[2026-06-13 03:16:50,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:16:50,876.876 INFO    ] Initializing speech engine...
[2026-06-13 03:16:50,881.881 INFO    ] 2026-06-13 03:16:50
[2026-06-13 03:16:51,085.085 INFO    ] 2026-06-13 03:16:51
[2026-06-13 03:16:51,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:16:51,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:16:51,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:16:51,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:16:51,486.486 INFO    ] time= 13/06/2026 03:16:51
[2026-06-13 03:16:51,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:16:51,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:16:51,601.601 INFO    ] No existing commands found in stream
[2026-06-13 03:16:56,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:16:56,614.614 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 03:16:58,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:16:58,889.889 INFO    ] Checking for system updates...
[2026-06-13 03:16:58,910.910 INFO    ] 200
[2026-06-13 03:16:58,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:58,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:58,945.945 INFO    ] No update needed
[2026-06-13 03:16:58,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 03:16:58,969.969 INFO    ] 200
[2026-06-13 03:16:58,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:16:58,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:16:59,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:16:59,037.037 INFO    ] No camera update needed
[2026-06-13 03:16:59,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:16:59,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:16:59,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:16:59,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:01,087.087 INFO    ] ================================================
[2026-06-13 03:17:01,104.104 INFO    ] Launching Daemon at Sat Jun 13 03:17:01 IST 2026
[2026-06-13 03:17:01,115.115 INFO    ] ================================================
[2026-06-13 03:17:01,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:01
[2026-06-13 03:17:01,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:17:02,173.173 INFO    ] Initializing speech engine...
[2026-06-13 03:17:02,182.182 INFO    ] 2026-06-13 03:17:02
[2026-06-13 03:17:02,417.417 INFO    ] 2026-06-13 03:17:02
[2026-06-13 03:17:02,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:17:02,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:17:02,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:17:02,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:17:02,721.721 INFO    ] time= 13/06/2026 03:17:02
[2026-06-13 03:17:02,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:17:02,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:17:02,810.810 INFO    ] No existing commands found in stream
[2026-06-13 03:17:07,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:17:07,847.847 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 03:17:09,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:17:09,681.681 INFO    ] Checking for system updates...
[2026-06-13 03:17:09,701.701 INFO    ] 200
[2026-06-13 03:17:09,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:09,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:17:09,750.750 INFO    ] No update needed
[2026-06-13 03:17:09,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 03:17:09,791.791 INFO    ] 200
[2026-06-13 03:17:09,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:09,828.828 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:17:09,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:17:09,866.866 INFO    ] No camera update needed
[2026-06-13 03:17:09,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:17:09,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:17:09,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:17:09,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:11,915.915 INFO    ] ================================================
[2026-06-13 03:17:11,930.930 INFO    ] Launching Daemon at Sat Jun 13 03:17:11 IST 2026
[2026-06-13 03:17:11,940.940 INFO    ] ================================================
[2026-06-13 03:17:12,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:12
[2026-06-13 03:17:12,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:17:12,743.743 INFO    ] Initializing speech engine...
[2026-06-13 03:17:12,752.752 INFO    ] 2026-06-13 03:17:12
[2026-06-13 03:17:12,978.978 INFO    ] 2026-06-13 03:17:12
[2026-06-13 03:17:13,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:17:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:17:13,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:17:13,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:17:13,387.387 INFO    ] time= 13/06/2026 03:17:13
[2026-06-13 03:17:13,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:17:13,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:17:13,540.540 INFO    ] No existing commands found in stream
[2026-06-13 03:17:18,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:17:18,553.553 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 03:17:22,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:17:22,882.882 INFO    ] Checking for system updates...
[2026-06-13 03:17:22,904.904 INFO    ] 200
[2026-06-13 03:17:22,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:22,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:17:22,941.941 INFO    ] No update needed
[2026-06-13 03:17:22,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 03:17:22,962.962 INFO    ] 200
[2026-06-13 03:17:22,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:22,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:17:23,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:17:23,134.134 INFO    ] No camera update needed
[2026-06-13 03:17:23,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:17:23,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:17:23,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:17:23,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:25,192.192 INFO    ] ================================================
[2026-06-13 03:17:25,207.207 INFO    ] Launching Daemon at Sat Jun 13 03:17:25 IST 2026
[2026-06-13 03:17:25,218.218 INFO    ] ================================================
[2026-06-13 03:17:25,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:25
[2026-06-13 03:17:26,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:17:26,453.453 INFO    ] Initializing speech engine...
[2026-06-13 03:17:26,459.459 INFO    ] 2026-06-13 03:17:26
[2026-06-13 03:17:26,666.666 INFO    ] 2026-06-13 03:17:26
[2026-06-13 03:17:26,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:17:26,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:17:26,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:17:27,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:17:27,089.089 INFO    ] time= 13/06/2026 03:17:27
[2026-06-13 03:17:27,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:17:27,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:17:27,189.189 INFO    ] No existing commands found in stream
[2026-06-13 03:17:32,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:17:32,201.201 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 03:17:34,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:17:34,420.420 INFO    ] Checking for system updates...
[2026-06-13 03:17:34,442.442 INFO    ] 200
[2026-06-13 03:17:34,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:34,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:17:34,477.477 INFO    ] No update needed
[2026-06-13 03:17:34,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 03:17:34,499.499 INFO    ] 200
[2026-06-13 03:17:34,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:34,523.523 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:17:34,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:17:34,562.562 INFO    ] No camera update needed
[2026-06-13 03:17:34,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:17:34,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:17:34,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:17:34,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:36,610.610 INFO    ] ================================================
[2026-06-13 03:17:36,626.626 INFO    ] Launching Daemon at Sat Jun 13 03:17:36 IST 2026
[2026-06-13 03:17:36,637.637 INFO    ] ================================================
[2026-06-13 03:17:36,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:36
[2026-06-13 03:17:37,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:17:37,435.435 INFO    ] Initializing speech engine...
[2026-06-13 03:17:37,445.445 INFO    ] 2026-06-13 03:17:37
[2026-06-13 03:17:37,662.662 INFO    ] 2026-06-13 03:17:37
[2026-06-13 03:17:37,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:17:37,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:17:37,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:17:38,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:17:38,082.082 INFO    ] time= 13/06/2026 03:17:38
[2026-06-13 03:17:38,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:17:38,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:17:38,247.247 INFO    ] No existing commands found in stream
[2026-06-13 03:17:43,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:17:43,259.259 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 03:17:44,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:17:44,810.810 INFO    ] Checking for system updates...
[2026-06-13 03:17:44,831.831 INFO    ] 200
[2026-06-13 03:17:44,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:44,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:17:44,867.867 INFO    ] No update needed
[2026-06-13 03:17:44,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 03:17:44,888.888 INFO    ] 200
[2026-06-13 03:17:44,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:44,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:17:44,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:17:44,954.954 INFO    ] No camera update needed
[2026-06-13 03:17:44,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:17:44,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:17:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:17:44,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:47,004.004 INFO    ] ================================================
[2026-06-13 03:17:47,019.019 INFO    ] Launching Daemon at Sat Jun 13 03:17:47 IST 2026
[2026-06-13 03:17:47,030.030 INFO    ] ================================================
[2026-06-13 03:17:47,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:47
[2026-06-13 03:17:47,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:17:47,839.839 INFO    ] Initializing speech engine...
[2026-06-13 03:17:47,844.844 INFO    ] 2026-06-13 03:17:47
[2026-06-13 03:17:48,074.074 INFO    ] 2026-06-13 03:17:48
[2026-06-13 03:17:48,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:17:48,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:17:48,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:17:48,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:17:48,459.459 INFO    ] time= 13/06/2026 03:17:48
[2026-06-13 03:17:48,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:17:48,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:17:48,633.633 INFO    ] No existing commands found in stream
[2026-06-13 03:17:53,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:17:53,647.647 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 03:17:57,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:17:57,286.286 INFO    ] Checking for system updates...
[2026-06-13 03:17:57,307.307 INFO    ] 200
[2026-06-13 03:17:57,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:57,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:17:57,343.343 INFO    ] No update needed
[2026-06-13 03:17:57,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 03:17:57,365.365 INFO    ] 200
[2026-06-13 03:17:57,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:17:57,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:17:57,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:17:57,427.427 INFO    ] No camera update needed
[2026-06-13 03:17:57,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:17:57,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:17:57,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:17:57,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:17:59,475.475 INFO    ] ================================================
[2026-06-13 03:17:59,491.491 INFO    ] Launching Daemon at Sat Jun 13 03:17:59 IST 2026
[2026-06-13 03:17:59,502.502 INFO    ] ================================================
[2026-06-13 03:17:59,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:17:59
[2026-06-13 03:18:00,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:00,287.287 INFO    ] Initializing speech engine...
[2026-06-13 03:18:00,296.296 INFO    ] 2026-06-13 03:18:00
[2026-06-13 03:18:00,500.500 INFO    ] 2026-06-13 03:18:00
[2026-06-13 03:18:00,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:00,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:00,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:00,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:00,919.919 INFO    ] time= 13/06/2026 03:18:00
[2026-06-13 03:18:00,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:00,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:01,017.017 INFO    ] No existing commands found in stream
[2026-06-13 03:18:06,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:06,030.030 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 03:18:09,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:18:09,214.214 INFO    ] Checking for system updates...
[2026-06-13 03:18:09,235.235 INFO    ] 200
[2026-06-13 03:18:09,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:09,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:18:09,270.270 INFO    ] No update needed
[2026-06-13 03:18:09,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 03:18:09,291.291 INFO    ] 200
[2026-06-13 03:18:09,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:09,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:18:09,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:18:09,354.354 INFO    ] No camera update needed
[2026-06-13 03:18:09,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:18:09,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:18:09,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:18:09,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:18:11,404.404 INFO    ] ================================================
[2026-06-13 03:18:11,421.421 INFO    ] Launching Daemon at Sat Jun 13 03:18:11 IST 2026
[2026-06-13 03:18:11,431.431 INFO    ] ================================================
[2026-06-13 03:18:11,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:18:11
[2026-06-13 03:18:12,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:12,224.224 INFO    ] Initializing speech engine...
[2026-06-13 03:18:12,227.227 INFO    ] 2026-06-13 03:18:12
[2026-06-13 03:18:12,458.458 INFO    ] 2026-06-13 03:18:12
[2026-06-13 03:18:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:12,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:12,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:12,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:12,863.863 INFO    ] time= 13/06/2026 03:18:12
[2026-06-13 03:18:12,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:12,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:13,026.026 INFO    ] No existing commands found in stream
[2026-06-13 03:18:18,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:18,046.046 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 03:18:19,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:18:19,320.320 INFO    ] Checking for system updates...
[2026-06-13 03:18:19,345.345 INFO    ] 200
[2026-06-13 03:18:19,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:19,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:18:19,380.380 INFO    ] No update needed
[2026-06-13 03:18:19,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 03:18:19,400.400 INFO    ] 200
[2026-06-13 03:18:19,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:19,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:18:19,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:18:19,469.469 INFO    ] No camera update needed
[2026-06-13 03:18:19,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:18:19,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:18:19,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:18:19,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:18:21,517.517 INFO    ] ================================================
[2026-06-13 03:18:21,533.533 INFO    ] Launching Daemon at Sat Jun 13 03:18:21 IST 2026
[2026-06-13 03:18:21,544.544 INFO    ] ================================================
[2026-06-13 03:18:21,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:18:21
[2026-06-13 03:18:22,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:22,334.334 INFO    ] Initializing speech engine...
[2026-06-13 03:18:22,343.343 INFO    ] 2026-06-13 03:18:22
[2026-06-13 03:18:22,550.550 INFO    ] 2026-06-13 03:18:22
[2026-06-13 03:18:22,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:22,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:22,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:22,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:22,953.953 INFO    ] time= 13/06/2026 03:18:22
[2026-06-13 03:18:23,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:23,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:23,150.150 INFO    ] No existing commands found in stream
[2026-06-13 03:18:28,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:28,167.167 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 03:18:29,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:18:29,871.871 INFO    ] Checking for system updates...
[2026-06-13 03:18:29,906.906 INFO    ] 200
[2026-06-13 03:18:29,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:29,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:18:29,964.964 INFO    ] No update needed
[2026-06-13 03:18:29,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 03:18:30,001.001 INFO    ] 200
[2026-06-13 03:18:30,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:30,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:18:30,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:18:30,074.074 INFO    ] No camera update needed
[2026-06-13 03:18:30,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:18:30,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:18:30,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:18:30,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:18:32,115.115 INFO    ] ================================================
[2026-06-13 03:18:32,125.125 INFO    ] Launching Daemon at Sat Jun 13 03:18:32 IST 2026
[2026-06-13 03:18:32,133.133 INFO    ] ================================================
[2026-06-13 03:18:32,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:18:32
[2026-06-13 03:18:32,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:32,945.945 INFO    ] Initializing speech engine...
[2026-06-13 03:18:32,949.949 INFO    ] 2026-06-13 03:18:32
[2026-06-13 03:18:33,143.143 INFO    ] 2026-06-13 03:18:33
[2026-06-13 03:18:33,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:33,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:33,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:33,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:33,459.459 INFO    ] time= 13/06/2026 03:18:33
[2026-06-13 03:18:33,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:33,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:33,574.574 INFO    ] No existing commands found in stream
[2026-06-13 03:18:38,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:38,600.600 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 03:18:40,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:18:40,425.425 INFO    ] Checking for system updates...
[2026-06-13 03:18:40,446.446 INFO    ] 200
[2026-06-13 03:18:40,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:40,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:18:40,479.479 INFO    ] No update needed
[2026-06-13 03:18:40,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 03:18:40,500.500 INFO    ] 200
[2026-06-13 03:18:40,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:40,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:18:40,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:18:40,565.565 INFO    ] No camera update needed
[2026-06-13 03:18:40,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:18:40,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:18:40,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:18:40,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:18:42,614.614 INFO    ] ================================================
[2026-06-13 03:18:42,629.629 INFO    ] Launching Daemon at Sat Jun 13 03:18:42 IST 2026
[2026-06-13 03:18:42,641.641 INFO    ] ================================================
[2026-06-13 03:18:42,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:18:42
[2026-06-13 03:18:43,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:43,502.502 INFO    ] Initializing speech engine...
[2026-06-13 03:18:43,507.507 INFO    ] 2026-06-13 03:18:43
[2026-06-13 03:18:43,713.713 INFO    ] 2026-06-13 03:18:43
[2026-06-13 03:18:43,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:43,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:43,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:44,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:44,122.122 INFO    ] time= 13/06/2026 03:18:44
[2026-06-13 03:18:44,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:44,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:44,237.237 INFO    ] No existing commands found in stream
[2026-06-13 03:18:49,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:49,252.252 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 03:18:50,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:18:50,022.022 INFO    ] Checking for system updates...
[2026-06-13 03:18:50,045.045 INFO    ] 200
[2026-06-13 03:18:50,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:50,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:18:50,081.081 INFO    ] No update needed
[2026-06-13 03:18:50,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 03:18:50,103.103 INFO    ] 200
[2026-06-13 03:18:50,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:18:50,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:18:50,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:18:50,171.171 INFO    ] No camera update needed
[2026-06-13 03:18:50,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:18:50,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:18:50,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:18:50,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:18:52,220.220 INFO    ] ================================================
[2026-06-13 03:18:52,235.235 INFO    ] Launching Daemon at Sat Jun 13 03:18:52 IST 2026
[2026-06-13 03:18:52,246.246 INFO    ] ================================================
[2026-06-13 03:18:52,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:18:52
[2026-06-13 03:18:52,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:18:53,044.044 INFO    ] Initializing speech engine...
[2026-06-13 03:18:53,049.049 INFO    ] 2026-06-13 03:18:53
[2026-06-13 03:18:53,256.256 INFO    ] 2026-06-13 03:18:53
[2026-06-13 03:18:53,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:18:53,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:18:53,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:18:53,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:18:53,645.645 INFO    ] time= 13/06/2026 03:18:53
[2026-06-13 03:18:53,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:18:53,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:18:53,801.801 INFO    ] No existing commands found in stream
[2026-06-13 03:18:58,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:18:58,815.815 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 03:19:01,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:19:01,881.881 INFO    ] Checking for system updates...
[2026-06-13 03:19:01,908.908 INFO    ] 200
[2026-06-13 03:19:01,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:01,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:01,953.953 INFO    ] No update needed
[2026-06-13 03:19:01,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:01,983.983 INFO    ] 200
[2026-06-13 03:19:01,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:02,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:02,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:02,047.047 INFO    ] No camera update needed
[2026-06-13 03:19:02,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:02,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:02,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:02,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:19:04,098.098 INFO    ] ================================================
[2026-06-13 03:19:04,113.113 INFO    ] Launching Daemon at Sat Jun 13 03:19:04 IST 2026
[2026-06-13 03:19:04,125.125 INFO    ] ================================================
[2026-06-13 03:19:04,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:19:04
[2026-06-13 03:19:05,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:19:05,337.337 INFO    ] Initializing speech engine...
[2026-06-13 03:19:05,345.345 INFO    ] 2026-06-13 03:19:05
[2026-06-13 03:19:05,632.632 INFO    ] 2026-06-13 03:19:05
[2026-06-13 03:19:05,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:19:05,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:19:05,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:19:05,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:19:05,981.981 INFO    ] time= 13/06/2026 03:19:05
[2026-06-13 03:19:05,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:19:06,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:19:06,079.079 INFO    ] No existing commands found in stream
[2026-06-13 03:19:11,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:19:11,118.118 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 03:19:13,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:19:13,571.571 INFO    ] Checking for system updates...
[2026-06-13 03:19:13,594.594 INFO    ] 200
[2026-06-13 03:19:13,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:13,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:13,632.632 INFO    ] No update needed
[2026-06-13 03:19:13,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:13,659.659 INFO    ] 200
[2026-06-13 03:19:13,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:13,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:13,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:19:13,731.731 INFO    ] No camera update needed
[2026-06-13 03:19:13,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:13,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:13,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:13,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:19:15,777.777 INFO    ] ================================================
[2026-06-13 03:19:15,793.793 INFO    ] Launching Daemon at Sat Jun 13 03:19:15 IST 2026
[2026-06-13 03:19:15,805.805 INFO    ] ================================================
[2026-06-13 03:19:16,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:19:16
[2026-06-13 03:19:16,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:19:17,252.252 INFO    ] Initializing speech engine...
[2026-06-13 03:19:17,259.259 INFO    ] 2026-06-13 03:19:17
[2026-06-13 03:19:17,516.516 INFO    ] 2026-06-13 03:19:17
[2026-06-13 03:19:17,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:19:17,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:19:17,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:19:17,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:19:17,956.956 INFO    ] time= 13/06/2026 03:19:17
[2026-06-13 03:19:18,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:19:18,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:19:18,121.121 INFO    ] No existing commands found in stream
[2026-06-13 03:19:23,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:19:23,131.131 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 03:19:25,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:19:25,052.052 INFO    ] Checking for system updates...
[2026-06-13 03:19:25,073.073 INFO    ] 200
[2026-06-13 03:19:25,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:25,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:25,109.109 INFO    ] No update needed
[2026-06-13 03:19:25,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:25,131.131 INFO    ] 200
[2026-06-13 03:19:25,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:25,156.156 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:25,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:25,302.302 INFO    ] No camera update needed
[2026-06-13 03:19:25,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:25,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:25,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:25,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:19:27,350.350 INFO    ] ================================================
[2026-06-13 03:19:27,366.366 INFO    ] Launching Daemon at Sat Jun 13 03:19:27 IST 2026
[2026-06-13 03:19:27,377.377 INFO    ] ================================================
[2026-06-13 03:19:27,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:19:27
[2026-06-13 03:19:28,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:19:28,174.174 INFO    ] Initializing speech engine...
[2026-06-13 03:19:28,179.179 INFO    ] 2026-06-13 03:19:28
[2026-06-13 03:19:28,396.396 INFO    ] 2026-06-13 03:19:28
[2026-06-13 03:19:28,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:19:28,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:19:28,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:19:28,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:19:28,774.774 INFO    ] time= 13/06/2026 03:19:28
[2026-06-13 03:19:28,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:19:28,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:19:28,957.957 INFO    ] No existing commands found in stream
[2026-06-13 03:19:33,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:19:33,967.967 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 03:19:37,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:19:37,425.425 INFO    ] Checking for system updates...
[2026-06-13 03:19:37,446.446 INFO    ] 200
[2026-06-13 03:19:37,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:37,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:19:37,480.480 INFO    ] No update needed
[2026-06-13 03:19:37,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:37,500.500 INFO    ] 200
[2026-06-13 03:19:37,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:37,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:37,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:37,567.567 INFO    ] No camera update needed
[2026-06-13 03:19:37,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:37,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:37,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:37,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:19:39,614.614 INFO    ] ================================================
[2026-06-13 03:19:39,630.630 INFO    ] Launching Daemon at Sat Jun 13 03:19:39 IST 2026
[2026-06-13 03:19:39,640.640 INFO    ] ================================================
[2026-06-13 03:19:40,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:19:39
[2026-06-13 03:19:40,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:19:40,485.485 INFO    ] Initializing speech engine...
[2026-06-13 03:19:40,495.495 INFO    ] 2026-06-13 03:19:40
[2026-06-13 03:19:40,704.704 INFO    ] 2026-06-13 03:19:40
[2026-06-13 03:19:40,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:19:40,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:19:40,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:19:41,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:19:41,122.122 INFO    ] time= 13/06/2026 03:19:41
[2026-06-13 03:19:41,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:19:41,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:19:41,221.221 INFO    ] No existing commands found in stream
[2026-06-13 03:19:46,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:19:46,235.235 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 03:19:47,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:19:47,345.345 INFO    ] Checking for system updates...
[2026-06-13 03:19:47,366.366 INFO    ] 200
[2026-06-13 03:19:47,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:47,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:47,403.403 INFO    ] No update needed
[2026-06-13 03:19:47,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:47,426.426 INFO    ] 200
[2026-06-13 03:19:47,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:47,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:47,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:47,492.492 INFO    ] No camera update needed
[2026-06-13 03:19:47,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:47,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:47,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:47,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:19:49,540.540 INFO    ] ================================================
[2026-06-13 03:19:49,555.555 INFO    ] Launching Daemon at Sat Jun 13 03:19:49 IST 2026
[2026-06-13 03:19:49,566.566 INFO    ] ================================================
[2026-06-13 03:19:49,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:19:49
[2026-06-13 03:19:50,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:19:50,371.371 INFO    ] Initializing speech engine...
[2026-06-13 03:19:50,376.376 INFO    ] 2026-06-13 03:19:50
[2026-06-13 03:19:50,583.583 INFO    ] 2026-06-13 03:19:50
[2026-06-13 03:19:50,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:19:50,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:19:50,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:19:50,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:19:51,003.003 INFO    ] time= 13/06/2026 03:19:50
[2026-06-13 03:19:51,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:19:51,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:19:51,105.105 INFO    ] No existing commands found in stream
[2026-06-13 03:19:56,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:19:56,117.117 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 03:19:58,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:19:58,229.229 INFO    ] Checking for system updates...
[2026-06-13 03:19:58,250.250 INFO    ] 200
[2026-06-13 03:19:58,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:58,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:58,282.282 INFO    ] No update needed
[2026-06-13 03:19:58,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 03:19:58,303.303 INFO    ] 200
[2026-06-13 03:19:58,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:19:58,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:19:58,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:19:58,364.364 INFO    ] No camera update needed
[2026-06-13 03:19:58,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:19:58,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:19:58,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:19:58,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:00,413.413 INFO    ] ================================================
[2026-06-13 03:20:00,429.429 INFO    ] Launching Daemon at Sat Jun 13 03:20:00 IST 2026
[2026-06-13 03:20:00,440.440 INFO    ] ================================================
[2026-06-13 03:20:00,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:00
[2026-06-13 03:20:01,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:01,296.296 INFO    ] Initializing speech engine...
[2026-06-13 03:20:01,302.302 INFO    ] 2026-06-13 03:20:01
[2026-06-13 03:20:01,513.513 INFO    ] 2026-06-13 03:20:01
[2026-06-13 03:20:01,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:01,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:01,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:01,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:01,908.908 INFO    ] time= 13/06/2026 03:20:01
[2026-06-13 03:20:01,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:01,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:01,963.963 INFO    ] No existing commands found in stream
[2026-06-13 03:20:06,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:20:06,976.976 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 03:20:08,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:20:08,874.874 INFO    ] Checking for system updates...
[2026-06-13 03:20:08,900.900 INFO    ] 200
[2026-06-13 03:20:08,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:08,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:20:08,936.936 INFO    ] No update needed
[2026-06-13 03:20:08,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 03:20:08,957.957 INFO    ] 200
[2026-06-13 03:20:08,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:08,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:20:09,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:20:09,020.020 INFO    ] No camera update needed
[2026-06-13 03:20:09,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:20:09,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:20:09,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:20:09,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:11,068.068 INFO    ] ================================================
[2026-06-13 03:20:11,083.083 INFO    ] Launching Daemon at Sat Jun 13 03:20:11 IST 2026
[2026-06-13 03:20:11,094.094 INFO    ] ================================================
[2026-06-13 03:20:11,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:11
[2026-06-13 03:20:12,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:12,463.463 INFO    ] Initializing speech engine...
[2026-06-13 03:20:12,474.474 INFO    ] 2026-06-13 03:20:12
[2026-06-13 03:20:12,733.733 INFO    ] 2026-06-13 03:20:12
[2026-06-13 03:20:12,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:12,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:12,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:13,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:13,072.072 INFO    ] time= 13/06/2026 03:20:13
[2026-06-13 03:20:13,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:13,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:13,166.166 INFO    ] No existing commands found in stream
[2026-06-13 03:20:18,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:20:18,182.182 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 03:20:20,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:20:20,855.855 INFO    ] Checking for system updates...
[2026-06-13 03:20:20,876.876 INFO    ] 200
[2026-06-13 03:20:20,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:20,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:20:20,911.911 INFO    ] No update needed
[2026-06-13 03:20:20,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 03:20:20,931.931 INFO    ] 200
[2026-06-13 03:20:20,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:20,956.956 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:20:20,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:20:20,992.992 INFO    ] No camera update needed
[2026-06-13 03:20:20,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:20:20,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:20:20,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:20:21,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:23,042.042 INFO    ] ================================================
[2026-06-13 03:20:23,058.058 INFO    ] Launching Daemon at Sat Jun 13 03:20:23 IST 2026
[2026-06-13 03:20:23,069.069 INFO    ] ================================================
[2026-06-13 03:20:23,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:23
[2026-06-13 03:20:23,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:23,863.863 INFO    ] Initializing speech engine...
[2026-06-13 03:20:23,876.876 INFO    ] 2026-06-13 03:20:23
[2026-06-13 03:20:24,098.098 INFO    ] 2026-06-13 03:20:24
[2026-06-13 03:20:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:24,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:24,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:24,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:24,480.480 INFO    ] time= 13/06/2026 03:20:24
[2026-06-13 03:20:24,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:24,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:24,664.664 INFO    ] No existing commands found in stream
[2026-06-13 03:20:29,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:20:29,677.677 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 03:20:31,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:20:31,168.168 INFO    ] Checking for system updates...
[2026-06-13 03:20:31,191.191 INFO    ] 200
[2026-06-13 03:20:31,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:31,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:20:31,225.225 INFO    ] No update needed
[2026-06-13 03:20:31,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 03:20:31,245.245 INFO    ] 200
[2026-06-13 03:20:31,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:31,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:20:31,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:20:31,301.301 INFO    ] No camera update needed
[2026-06-13 03:20:31,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:20:31,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:20:31,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:20:31,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:33,342.342 INFO    ] ================================================
[2026-06-13 03:20:33,357.357 INFO    ] Launching Daemon at Sat Jun 13 03:20:33 IST 2026
[2026-06-13 03:20:33,369.369 INFO    ] ================================================
[2026-06-13 03:20:33,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:33
[2026-06-13 03:20:34,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:34,164.164 INFO    ] Initializing speech engine...
[2026-06-13 03:20:34,178.178 INFO    ] 2026-06-13 03:20:34
[2026-06-13 03:20:34,402.402 INFO    ] 2026-06-13 03:20:34
[2026-06-13 03:20:34,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:34,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:34,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:34,784.784 INFO    ] time= 13/06/2026 03:20:34
[2026-06-13 03:20:34,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:34,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:34,967.967 INFO    ] No existing commands found in stream
[2026-06-13 03:20:39,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:20:39,980.980 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 03:20:43,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:20:43,406.406 INFO    ] Checking for system updates...
[2026-06-13 03:20:43,427.427 INFO    ] 200
[2026-06-13 03:20:43,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:43,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:20:43,463.463 INFO    ] No update needed
[2026-06-13 03:20:43,465.465 INFO    ] Checking for camera pi updates...
[2026-06-13 03:20:43,485.485 INFO    ] 200
[2026-06-13 03:20:43,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:43,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:20:43,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:20:43,551.551 INFO    ] No camera update needed
[2026-06-13 03:20:43,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:20:43,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:20:43,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:20:43,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:45,599.599 INFO    ] ================================================
[2026-06-13 03:20:45,615.615 INFO    ] Launching Daemon at Sat Jun 13 03:20:45 IST 2026
[2026-06-13 03:20:45,626.626 INFO    ] ================================================
[2026-06-13 03:20:45,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:45
[2026-06-13 03:20:46,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:46,433.433 INFO    ] Initializing speech engine...
[2026-06-13 03:20:46,437.437 INFO    ] 2026-06-13 03:20:46
[2026-06-13 03:20:46,643.643 INFO    ] 2026-06-13 03:20:46
[2026-06-13 03:20:46,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:46,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:46,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:46,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:47,049.049 INFO    ] time= 13/06/2026 03:20:47
[2026-06-13 03:20:47,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:47,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:47,241.241 INFO    ] No existing commands found in stream
[2026-06-13 03:20:52,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:20:52,252.252 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 03:20:52,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:20:52,504.504 INFO    ] Checking for system updates...
[2026-06-13 03:20:52,525.525 INFO    ] 200
[2026-06-13 03:20:52,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:52,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:20:52,559.559 INFO    ] No update needed
[2026-06-13 03:20:52,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 03:20:52,580.580 INFO    ] 200
[2026-06-13 03:20:52,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:20:52,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:20:52,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:20:52,643.643 INFO    ] No camera update needed
[2026-06-13 03:20:52,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:20:52,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:20:52,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:20:52,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:20:54,691.691 INFO    ] ================================================
[2026-06-13 03:20:54,706.706 INFO    ] Launching Daemon at Sat Jun 13 03:20:54 IST 2026
[2026-06-13 03:20:54,717.717 INFO    ] ================================================
[2026-06-13 03:20:55,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:20:55
[2026-06-13 03:20:55,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:20:55,510.510 INFO    ] Initializing speech engine...
[2026-06-13 03:20:55,515.515 INFO    ] 2026-06-13 03:20:55
[2026-06-13 03:20:55,737.737 INFO    ] 2026-06-13 03:20:55
[2026-06-13 03:20:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:20:55,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:20:55,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:20:56,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:20:56,126.126 INFO    ] time= 13/06/2026 03:20:56
[2026-06-13 03:20:56,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:20:56,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:20:56,377.377 INFO    ] No existing commands found in stream
[2026-06-13 03:21:01,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:01,402.402 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 03:21:02,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:21:02,655.655 INFO    ] Checking for system updates...
[2026-06-13 03:21:02,691.691 INFO    ] 200
[2026-06-13 03:21:02,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:02,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:21:02,757.757 INFO    ] No update needed
[2026-06-13 03:21:02,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:02,794.794 INFO    ] 200
[2026-06-13 03:21:02,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:02,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:02,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:21:02,872.872 INFO    ] No camera update needed
[2026-06-13 03:21:02,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:02,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:02,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:02,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:21:04,928.928 INFO    ] ================================================
[2026-06-13 03:21:04,944.944 INFO    ] Launching Daemon at Sat Jun 13 03:21:04 IST 2026
[2026-06-13 03:21:04,954.954 INFO    ] ================================================
[2026-06-13 03:21:05,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:21:05
[2026-06-13 03:21:05,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:21:05,791.791 INFO    ] Initializing speech engine...
[2026-06-13 03:21:05,796.796 INFO    ] 2026-06-13 03:21:05
[2026-06-13 03:21:06,001.001 INFO    ] 2026-06-13 03:21:05
[2026-06-13 03:21:06,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:21:06,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:21:06,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:21:06,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:21:06,412.412 INFO    ] time= 13/06/2026 03:21:06
[2026-06-13 03:21:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:21:06,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:21:06,597.597 INFO    ] No existing commands found in stream
[2026-06-13 03:21:11,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:11,611.611 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 03:21:13,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:21:13,953.953 INFO    ] Checking for system updates...
[2026-06-13 03:21:13,986.986 INFO    ] 200
[2026-06-13 03:21:13,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:14,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:14,021.021 INFO    ] No update needed
[2026-06-13 03:21:14,023.023 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:14,042.042 INFO    ] 200
[2026-06-13 03:21:14,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:14,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:14,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:14,106.106 INFO    ] No camera update needed
[2026-06-13 03:21:14,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:14,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:14,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:14,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:21:16,146.146 INFO    ] ================================================
[2026-06-13 03:21:16,162.162 INFO    ] Launching Daemon at Sat Jun 13 03:21:16 IST 2026
[2026-06-13 03:21:16,172.172 INFO    ] ================================================
[2026-06-13 03:21:16,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:21:16
[2026-06-13 03:21:16,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:21:16,953.953 INFO    ] Initializing speech engine...
[2026-06-13 03:21:16,966.966 INFO    ] 2026-06-13 03:21:16
[2026-06-13 03:21:17,186.186 INFO    ] 2026-06-13 03:21:17
[2026-06-13 03:21:17,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:21:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:21:17,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:21:17,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:21:17,621.621 INFO    ] time= 13/06/2026 03:21:17
[2026-06-13 03:21:17,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:21:17,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:21:17,750.750 INFO    ] No existing commands found in stream
[2026-06-13 03:21:22,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:22,764.764 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 03:21:24,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:21:24,969.969 INFO    ] Checking for system updates...
[2026-06-13 03:21:24,989.989 INFO    ] 200
[2026-06-13 03:21:24,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:25,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:25,023.023 INFO    ] No update needed
[2026-06-13 03:21:25,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:25,044.044 INFO    ] 200
[2026-06-13 03:21:25,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:25,073.073 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:25,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:25,115.115 INFO    ] No camera update needed
[2026-06-13 03:21:25,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:25,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:25,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:25,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:21:27,157.157 INFO    ] ================================================
[2026-06-13 03:21:27,173.173 INFO    ] Launching Daemon at Sat Jun 13 03:21:27 IST 2026
[2026-06-13 03:21:27,183.183 INFO    ] ================================================
[2026-06-13 03:21:27,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:21:27
[2026-06-13 03:21:27,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:21:27,979.979 INFO    ] Initializing speech engine...
[2026-06-13 03:21:27,984.984 INFO    ] 2026-06-13 03:21:27
[2026-06-13 03:21:28,190.190 INFO    ] 2026-06-13 03:21:28
[2026-06-13 03:21:28,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:21:28,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:21:28,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:21:28,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:21:28,582.582 INFO    ] time= 13/06/2026 03:21:28
[2026-06-13 03:21:28,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:21:28,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:21:28,707.707 INFO    ] No existing commands found in stream
[2026-06-13 03:21:33,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:33,721.721 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 03:21:35,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:21:35,074.074 INFO    ] Checking for system updates...
[2026-06-13 03:21:35,096.096 INFO    ] 200
[2026-06-13 03:21:35,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:35,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:35,130.130 INFO    ] No update needed
[2026-06-13 03:21:35,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:35,151.151 INFO    ] 200
[2026-06-13 03:21:35,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:35,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:35,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:35,219.219 INFO    ] No camera update needed
[2026-06-13 03:21:35,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:35,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:35,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:35,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:21:37,267.267 INFO    ] ================================================
[2026-06-13 03:21:37,282.282 INFO    ] Launching Daemon at Sat Jun 13 03:21:37 IST 2026
[2026-06-13 03:21:37,293.293 INFO    ] ================================================
[2026-06-13 03:21:37,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:21:37
[2026-06-13 03:21:37,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:21:38,134.134 INFO    ] Initializing speech engine...
[2026-06-13 03:21:38,140.140 INFO    ] 2026-06-13 03:21:38
[2026-06-13 03:21:38,349.349 INFO    ] 2026-06-13 03:21:38
[2026-06-13 03:21:38,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:21:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:21:38,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:21:38,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:21:38,755.755 INFO    ] time= 13/06/2026 03:21:38
[2026-06-13 03:21:38,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:21:38,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:21:38,866.866 INFO    ] No existing commands found in stream
[2026-06-13 03:21:43,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:43,871.871 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 03:21:47,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:21:47,004.004 INFO    ] Checking for system updates...
[2026-06-13 03:21:47,025.025 INFO    ] 200
[2026-06-13 03:21:47,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:47,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:47,060.060 INFO    ] No update needed
[2026-06-13 03:21:47,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:47,081.081 INFO    ] 200
[2026-06-13 03:21:47,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:47,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:47,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:47,144.144 INFO    ] No camera update needed
[2026-06-13 03:21:47,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:47,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:47,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:47,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:21:49,187.187 INFO    ] ================================================
[2026-06-13 03:21:49,202.202 INFO    ] Launching Daemon at Sat Jun 13 03:21:49 IST 2026
[2026-06-13 03:21:49,213.213 INFO    ] ================================================
[2026-06-13 03:21:49,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:21:49
[2026-06-13 03:21:49,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:21:49,991.991 INFO    ] Initializing speech engine...
[2026-06-13 03:21:49,999.999 INFO    ] 2026-06-13 03:21:49
[2026-06-13 03:21:50,219.219 INFO    ] 2026-06-13 03:21:50
[2026-06-13 03:21:50,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:21:50,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:21:50,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:21:50,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:21:50,605.605 INFO    ] time= 13/06/2026 03:21:50
[2026-06-13 03:21:50,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:21:50,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:21:50,779.779 INFO    ] No existing commands found in stream
[2026-06-13 03:21:55,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:21:55,793.793 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 03:21:58,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:21:58,359.359 INFO    ] Checking for system updates...
[2026-06-13 03:21:58,384.384 INFO    ] 200
[2026-06-13 03:21:58,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:58,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:58,417.417 INFO    ] No update needed
[2026-06-13 03:21:58,419.419 INFO    ] Checking for camera pi updates...
[2026-06-13 03:21:58,440.440 INFO    ] 200
[2026-06-13 03:21:58,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:21:58,472.472 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:21:58,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:21:58,510.510 INFO    ] No camera update needed
[2026-06-13 03:21:58,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:21:58,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:21:58,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:21:58,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:00,552.552 INFO    ] ================================================
[2026-06-13 03:22:00,568.568 INFO    ] Launching Daemon at Sat Jun 13 03:22:00 IST 2026
[2026-06-13 03:22:00,579.579 INFO    ] ================================================
[2026-06-13 03:22:00,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:00
[2026-06-13 03:22:01,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:01,440.440 INFO    ] Initializing speech engine...
[2026-06-13 03:22:01,446.446 INFO    ] 2026-06-13 03:22:01
[2026-06-13 03:22:01,816.816 INFO    ] 2026-06-13 03:22:01
[2026-06-13 03:22:01,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:01,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:01,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:02,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:02,101.101 INFO    ] time= 13/06/2026 03:22:02
[2026-06-13 03:22:02,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:02,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:02,216.216 INFO    ] No existing commands found in stream
[2026-06-13 03:22:07,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:22:07,249.249 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 03:22:07,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:22:07,994.994 INFO    ] Checking for system updates...
[2026-06-13 03:22:08,015.015 INFO    ] 200
[2026-06-13 03:22:08,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:08,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:22:08,048.048 INFO    ] No update needed
[2026-06-13 03:22:08,050.050 INFO    ] Checking for camera pi updates...
[2026-06-13 03:22:08,069.069 INFO    ] 200
[2026-06-13 03:22:08,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:08,096.096 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:22:08,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:22:08,134.134 INFO    ] No camera update needed
[2026-06-13 03:22:08,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:22:08,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:22:08,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:22:08,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:10,176.176 INFO    ] ================================================
[2026-06-13 03:22:10,185.185 INFO    ] Launching Daemon at Sat Jun 13 03:22:10 IST 2026
[2026-06-13 03:22:10,191.191 INFO    ] ================================================
[2026-06-13 03:22:10,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:10
[2026-06-13 03:22:10,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:11,010.010 INFO    ] Initializing speech engine...
[2026-06-13 03:22:11,015.015 INFO    ] 2026-06-13 03:22:11
[2026-06-13 03:22:11,220.220 INFO    ] 2026-06-13 03:22:11
[2026-06-13 03:22:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:11,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:11,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:11,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:11,619.619 INFO    ] time= 13/06/2026 03:22:11
[2026-06-13 03:22:11,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:11,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:11,732.732 INFO    ] No existing commands found in stream
[2026-06-13 03:22:16,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:22:16,746.746 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 03:22:18,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:22:18,728.728 INFO    ] Checking for system updates...
[2026-06-13 03:22:18,749.749 INFO    ] 200
[2026-06-13 03:22:18,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:18,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:22:18,783.783 INFO    ] No update needed
[2026-06-13 03:22:18,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 03:22:18,803.803 INFO    ] 200
[2026-06-13 03:22:18,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:18,828.828 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:22:18,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:22:18,872.872 INFO    ] No camera update needed
[2026-06-13 03:22:18,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:22:18,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:22:18,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:22:18,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:20,912.912 INFO    ] ================================================
[2026-06-13 03:22:20,924.924 INFO    ] Launching Daemon at Sat Jun 13 03:22:20 IST 2026
[2026-06-13 03:22:20,930.930 INFO    ] ================================================
[2026-06-13 03:22:21,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:21
[2026-06-13 03:22:21,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:21,751.751 INFO    ] Initializing speech engine...
[2026-06-13 03:22:21,760.760 INFO    ] 2026-06-13 03:22:21
[2026-06-13 03:22:21,984.984 INFO    ] 2026-06-13 03:22:21
[2026-06-13 03:22:22,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:22,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:22,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:22,365.365 INFO    ] time= 13/06/2026 03:22:22
[2026-06-13 03:22:22,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:22,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:22,549.549 INFO    ] No existing commands found in stream
[2026-06-13 03:22:27,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:22:27,563.563 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 03:22:29,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:22:29,122.122 INFO    ] Checking for system updates...
[2026-06-13 03:22:29,144.144 INFO    ] 200
[2026-06-13 03:22:29,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:29,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:22:29,177.177 INFO    ] No update needed
[2026-06-13 03:22:29,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 03:22:29,200.200 INFO    ] 200
[2026-06-13 03:22:29,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:29,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:22:29,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:22:29,305.305 INFO    ] No camera update needed
[2026-06-13 03:22:29,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:22:29,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:22:29,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:22:29,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:31,354.354 INFO    ] ================================================
[2026-06-13 03:22:31,369.369 INFO    ] Launching Daemon at Sat Jun 13 03:22:31 IST 2026
[2026-06-13 03:22:31,380.380 INFO    ] ================================================
[2026-06-13 03:22:31,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:31
[2026-06-13 03:22:32,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:32,799.799 INFO    ] Initializing speech engine...
[2026-06-13 03:22:32,824.824 INFO    ] 2026-06-13 03:22:32
[2026-06-13 03:22:33,099.099 INFO    ] 2026-06-13 03:22:33
[2026-06-13 03:22:33,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:33,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:33,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:33,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:33,482.482 INFO    ] time= 13/06/2026 03:22:33
[2026-06-13 03:22:33,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:33,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:33,608.608 INFO    ] No existing commands found in stream
[2026-06-13 03:22:38,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:22:38,622.622 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 03:22:40,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:22:40,561.561 INFO    ] Checking for system updates...
[2026-06-13 03:22:40,582.582 INFO    ] 200
[2026-06-13 03:22:40,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:40,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:22:40,615.615 INFO    ] No update needed
[2026-06-13 03:22:40,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 03:22:40,636.636 INFO    ] 200
[2026-06-13 03:22:40,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:40,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:22:40,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:22:40,697.697 INFO    ] No camera update needed
[2026-06-13 03:22:40,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:22:40,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:22:40,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:22:40,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:42,744.744 INFO    ] ================================================
[2026-06-13 03:22:42,760.760 INFO    ] Launching Daemon at Sat Jun 13 03:22:42 IST 2026
[2026-06-13 03:22:42,771.771 INFO    ] ================================================
[2026-06-13 03:22:43,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:43
[2026-06-13 03:22:43,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:43,952.952 INFO    ] Initializing speech engine...
[2026-06-13 03:22:43,965.965 INFO    ] 2026-06-13 03:22:43
[2026-06-13 03:22:44,220.220 INFO    ] 2026-06-13 03:22:44
[2026-06-13 03:22:44,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:44,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:44,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:44,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:44,556.556 INFO    ] time= 13/06/2026 03:22:44
[2026-06-13 03:22:44,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:44,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:44,666.666 INFO    ] No existing commands found in stream
[2026-06-13 03:22:49,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:22:49,682.682 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 03:22:52,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:22:52,161.161 INFO    ] Checking for system updates...
[2026-06-13 03:22:52,182.182 INFO    ] 200
[2026-06-13 03:22:52,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:52,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:22:52,215.215 INFO    ] No update needed
[2026-06-13 03:22:52,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 03:22:52,236.236 INFO    ] 200
[2026-06-13 03:22:52,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:22:52,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:22:52,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:22:52,301.301 INFO    ] No camera update needed
[2026-06-13 03:22:52,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:22:52,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:22:52,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:22:52,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:22:54,341.341 INFO    ] ================================================
[2026-06-13 03:22:54,349.349 INFO    ] Launching Daemon at Sat Jun 13 03:22:54 IST 2026
[2026-06-13 03:22:54,355.355 INFO    ] ================================================
[2026-06-13 03:22:54,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:22:54
[2026-06-13 03:22:55,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:22:55,767.767 INFO    ] Initializing speech engine...
[2026-06-13 03:22:55,775.775 INFO    ] 2026-06-13 03:22:55
[2026-06-13 03:22:56,026.026 INFO    ] 2026-06-13 03:22:56
[2026-06-13 03:22:56,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:22:56,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:22:56,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:22:56,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:22:56,483.483 INFO    ] time= 13/06/2026 03:22:56
[2026-06-13 03:22:56,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:22:56,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:22:56,656.656 INFO    ] No existing commands found in stream
[2026-06-13 03:23:01,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:01,677.677 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 03:23:04,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:23:04,550.550 INFO    ] Checking for system updates...
[2026-06-13 03:23:04,571.571 INFO    ] 200
[2026-06-13 03:23:04,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:04,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:04,607.607 INFO    ] No update needed
[2026-06-13 03:23:04,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:04,628.628 INFO    ] 200
[2026-06-13 03:23:04,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:04,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:04,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:04,694.694 INFO    ] No camera update needed
[2026-06-13 03:23:04,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:04,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:04,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:04,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:23:06,743.743 INFO    ] ================================================
[2026-06-13 03:23:06,758.758 INFO    ] Launching Daemon at Sat Jun 13 03:23:06 IST 2026
[2026-06-13 03:23:06,769.769 INFO    ] ================================================
[2026-06-13 03:23:07,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:23:07
[2026-06-13 03:23:07,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:23:08,180.180 INFO    ] Initializing speech engine...
[2026-06-13 03:23:08,189.189 INFO    ] 2026-06-13 03:23:08
[2026-06-13 03:23:08,485.485 INFO    ] 2026-06-13 03:23:08
[2026-06-13 03:23:08,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:23:08,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:23:08,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:23:08,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:23:08,828.828 INFO    ] time= 13/06/2026 03:23:08
[2026-06-13 03:23:08,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:23:08,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:23:08,938.938 INFO    ] No existing commands found in stream
[2026-06-13 03:23:13,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:13,951.951 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 03:23:16,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:23:16,571.571 INFO    ] Checking for system updates...
[2026-06-13 03:23:16,608.608 INFO    ] 200
[2026-06-13 03:23:16,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:16,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:23:16,673.673 INFO    ] No update needed
[2026-06-13 03:23:16,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:16,719.719 INFO    ] 200
[2026-06-13 03:23:16,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:16,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:16,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:23:16,811.811 INFO    ] No camera update needed
[2026-06-13 03:23:16,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:16,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:16,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:16,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:23:18,867.867 INFO    ] ================================================
[2026-06-13 03:23:18,882.882 INFO    ] Launching Daemon at Sat Jun 13 03:23:18 IST 2026
[2026-06-13 03:23:18,892.892 INFO    ] ================================================
[2026-06-13 03:23:19,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:23:19
[2026-06-13 03:23:19,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:23:20,087.087 INFO    ] Initializing speech engine...
[2026-06-13 03:23:20,091.091 INFO    ] 2026-06-13 03:23:20
[2026-06-13 03:23:20,303.303 INFO    ] 2026-06-13 03:23:20
[2026-06-13 03:23:20,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:23:20,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:23:20,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:23:20,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:23:20,714.714 INFO    ] time= 13/06/2026 03:23:20
[2026-06-13 03:23:20,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:23:20,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:23:20,825.825 INFO    ] No existing commands found in stream
[2026-06-13 03:23:25,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:25,840.840 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 03:23:26,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:23:26,261.261 INFO    ] Checking for system updates...
[2026-06-13 03:23:26,282.282 INFO    ] 200
[2026-06-13 03:23:26,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:26,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:26,315.315 INFO    ] No update needed
[2026-06-13 03:23:26,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:26,336.336 INFO    ] 200
[2026-06-13 03:23:26,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:26,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:26,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:26,403.403 INFO    ] No camera update needed
[2026-06-13 03:23:26,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:26,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:26,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:26,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:23:28,450.450 INFO    ] ================================================
[2026-06-13 03:23:28,465.465 INFO    ] Launching Daemon at Sat Jun 13 03:23:28 IST 2026
[2026-06-13 03:23:28,476.476 INFO    ] ================================================
[2026-06-13 03:23:28,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:23:28
[2026-06-13 03:23:29,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:23:29,329.329 INFO    ] Initializing speech engine...
[2026-06-13 03:23:29,339.339 INFO    ] 2026-06-13 03:23:29
[2026-06-13 03:23:29,549.549 INFO    ] 2026-06-13 03:23:29
[2026-06-13 03:23:29,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:23:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:23:29,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:23:29,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:23:29,906.906 INFO    ] time= 13/06/2026 03:23:29
[2026-06-13 03:23:29,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:23:30,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:23:30,130.130 INFO    ] No existing commands found in stream
[2026-06-13 03:23:35,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:35,145.145 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 03:23:37,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:23:37,055.055 INFO    ] Checking for system updates...
[2026-06-13 03:23:37,077.077 INFO    ] 200
[2026-06-13 03:23:37,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:37,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:37,114.114 INFO    ] No update needed
[2026-06-13 03:23:37,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:37,137.137 INFO    ] 200
[2026-06-13 03:23:37,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:37,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:37,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:37,208.208 INFO    ] No camera update needed
[2026-06-13 03:23:37,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:37,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:37,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:37,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:23:39,247.247 INFO    ] ================================================
[2026-06-13 03:23:39,256.256 INFO    ] Launching Daemon at Sat Jun 13 03:23:39 IST 2026
[2026-06-13 03:23:39,262.262 INFO    ] ================================================
[2026-06-13 03:23:39,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:23:39
[2026-06-13 03:23:39,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:23:40,081.081 INFO    ] Initializing speech engine...
[2026-06-13 03:23:40,085.085 INFO    ] 2026-06-13 03:23:40
[2026-06-13 03:23:40,288.288 INFO    ] 2026-06-13 03:23:40
[2026-06-13 03:23:40,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:23:40,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:23:40,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:23:40,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:23:40,677.677 INFO    ] time= 13/06/2026 03:23:40
[2026-06-13 03:23:40,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:23:40,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:23:40,807.807 INFO    ] No existing commands found in stream
[2026-06-13 03:23:45,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:45,820.820 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 03:23:48,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:23:48,388.388 INFO    ] Checking for system updates...
[2026-06-13 03:23:48,409.409 INFO    ] 200
[2026-06-13 03:23:48,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:48,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:48,442.442 INFO    ] No update needed
[2026-06-13 03:23:48,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:48,463.463 INFO    ] 200
[2026-06-13 03:23:48,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:48,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:48,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:23:48,530.530 INFO    ] No camera update needed
[2026-06-13 03:23:48,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:48,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:48,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:48,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:23:50,579.579 INFO    ] ================================================
[2026-06-13 03:23:50,594.594 INFO    ] Launching Daemon at Sat Jun 13 03:23:50 IST 2026
[2026-06-13 03:23:50,604.604 INFO    ] ================================================
[2026-06-13 03:23:50,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:23:50
[2026-06-13 03:23:51,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:23:51,430.430 INFO    ] Initializing speech engine...
[2026-06-13 03:23:51,443.443 INFO    ] 2026-06-13 03:23:51
[2026-06-13 03:23:51,652.652 INFO    ] 2026-06-13 03:23:51
[2026-06-13 03:23:51,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:23:51,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:23:51,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:23:52,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:23:52,053.053 INFO    ] time= 13/06/2026 03:23:52
[2026-06-13 03:23:52,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:23:52,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:23:52,177.177 INFO    ] No existing commands found in stream
[2026-06-13 03:23:57,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:23:57,189.189 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 03:23:59,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:23:59,644.644 INFO    ] Checking for system updates...
[2026-06-13 03:23:59,681.681 INFO    ] 200
[2026-06-13 03:23:59,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:59,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:23:59,719.719 INFO    ] No update needed
[2026-06-13 03:23:59,720.720 INFO    ] Checking for camera pi updates...
[2026-06-13 03:23:59,740.740 INFO    ] 200
[2026-06-13 03:23:59,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:23:59,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:23:59,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:23:59,804.804 INFO    ] No camera update needed
[2026-06-13 03:23:59,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:23:59,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:23:59,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:23:59,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:01,874.874 INFO    ] ================================================
[2026-06-13 03:24:01,895.895 INFO    ] Launching Daemon at Sat Jun 13 03:24:01 IST 2026
[2026-06-13 03:24:01,919.919 INFO    ] ================================================
[2026-06-13 03:24:02,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:02
[2026-06-13 03:24:02,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:02,886.886 INFO    ] Initializing speech engine...
[2026-06-13 03:24:02,893.893 INFO    ] 2026-06-13 03:24:02
[2026-06-13 03:24:03,111.111 INFO    ] 2026-06-13 03:24:03
[2026-06-13 03:24:03,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:03,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:03,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:03,523.523 INFO    ] time= 13/06/2026 03:24:03
[2026-06-13 03:24:03,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:03,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:03,637.637 INFO    ] No existing commands found in stream
[2026-06-13 03:24:08,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:24:08,651.651 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 03:24:11,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:24:11,367.367 INFO    ] Checking for system updates...
[2026-06-13 03:24:11,388.388 INFO    ] 200
[2026-06-13 03:24:11,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:11,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:24:11,424.424 INFO    ] No update needed
[2026-06-13 03:24:11,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 03:24:11,446.446 INFO    ] 200
[2026-06-13 03:24:11,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:11,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:24:11,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:24:11,512.512 INFO    ] No camera update needed
[2026-06-13 03:24:11,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:24:11,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:24:11,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:24:11,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:13,561.561 INFO    ] ================================================
[2026-06-13 03:24:13,577.577 INFO    ] Launching Daemon at Sat Jun 13 03:24:13 IST 2026
[2026-06-13 03:24:13,587.587 INFO    ] ================================================
[2026-06-13 03:24:13,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:13
[2026-06-13 03:24:14,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:14,437.437 INFO    ] Initializing speech engine...
[2026-06-13 03:24:14,440.440 INFO    ] 2026-06-13 03:24:14
[2026-06-13 03:24:14,666.666 INFO    ] 2026-06-13 03:24:14
[2026-06-13 03:24:14,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:14,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:14,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:15,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:15,100.100 INFO    ] time= 13/06/2026 03:24:15
[2026-06-13 03:24:15,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:15,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:15,197.197 INFO    ] No existing commands found in stream
[2026-06-13 03:24:20,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:24:20,211.211 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 03:24:20,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:24:20,593.593 INFO    ] Checking for system updates...
[2026-06-13 03:24:20,614.614 INFO    ] 200
[2026-06-13 03:24:20,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:20,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:24:20,651.651 INFO    ] No update needed
[2026-06-13 03:24:20,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 03:24:20,674.674 INFO    ] 200
[2026-06-13 03:24:20,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:20,701.701 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:24:20,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:24:20,742.742 INFO    ] No camera update needed
[2026-06-13 03:24:20,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:24:20,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:24:20,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:24:20,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:22,792.792 INFO    ] ================================================
[2026-06-13 03:24:22,808.808 INFO    ] Launching Daemon at Sat Jun 13 03:24:22 IST 2026
[2026-06-13 03:24:22,820.820 INFO    ] ================================================
[2026-06-13 03:24:23,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:23
[2026-06-13 03:24:23,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:23,620.620 INFO    ] Initializing speech engine...
[2026-06-13 03:24:23,624.624 INFO    ] 2026-06-13 03:24:23
[2026-06-13 03:24:23,846.846 INFO    ] 2026-06-13 03:24:23
[2026-06-13 03:24:23,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:24,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:24,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:24,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:24,254.254 INFO    ] time= 13/06/2026 03:24:24
[2026-06-13 03:24:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:24,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:24,425.425 INFO    ] No existing commands found in stream
[2026-06-13 03:24:29,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:24:29,439.439 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 03:24:32,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:24:32,779.779 INFO    ] Checking for system updates...
[2026-06-13 03:24:32,816.816 INFO    ] 200
[2026-06-13 03:24:32,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:32,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:24:32,884.884 INFO    ] No update needed
[2026-06-13 03:24:32,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 03:24:32,920.920 INFO    ] 200
[2026-06-13 03:24:32,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:32,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:24:32,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:24:32,970.970 INFO    ] No camera update needed
[2026-06-13 03:24:32,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:24:32,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:24:32,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:24:32,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:35,018.018 INFO    ] ================================================
[2026-06-13 03:24:35,035.035 INFO    ] Launching Daemon at Sat Jun 13 03:24:35 IST 2026
[2026-06-13 03:24:35,046.046 INFO    ] ================================================
[2026-06-13 03:24:35,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:35
[2026-06-13 03:24:36,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:36,288.288 INFO    ] Initializing speech engine...
[2026-06-13 03:24:36,293.293 INFO    ] 2026-06-13 03:24:36
[2026-06-13 03:24:36,600.600 INFO    ] 2026-06-13 03:24:36
[2026-06-13 03:24:36,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:36,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:36,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:36,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:36,968.968 INFO    ] time= 13/06/2026 03:24:36
[2026-06-13 03:24:36,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:36,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:37,051.051 INFO    ] No existing commands found in stream
[2026-06-13 03:24:42,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:24:42,064.064 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 03:24:45,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:24:45,382.382 INFO    ] Checking for system updates...
[2026-06-13 03:24:45,404.404 INFO    ] 200
[2026-06-13 03:24:45,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:45,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:24:45,438.438 INFO    ] No update needed
[2026-06-13 03:24:45,439.439 INFO    ] Checking for camera pi updates...
[2026-06-13 03:24:45,459.459 INFO    ] 200
[2026-06-13 03:24:45,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:45,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:24:45,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:24:45,523.523 INFO    ] No camera update needed
[2026-06-13 03:24:45,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:24:45,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:24:45,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:24:45,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:47,569.569 INFO    ] ================================================
[2026-06-13 03:24:47,584.584 INFO    ] Launching Daemon at Sat Jun 13 03:24:47 IST 2026
[2026-06-13 03:24:47,595.595 INFO    ] ================================================
[2026-06-13 03:24:47,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:47
[2026-06-13 03:24:48,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:48,409.409 INFO    ] Initializing speech engine...
[2026-06-13 03:24:48,418.418 INFO    ] 2026-06-13 03:24:48
[2026-06-13 03:24:48,636.636 INFO    ] 2026-06-13 03:24:48
[2026-06-13 03:24:48,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:48,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:48,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:49,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:49,060.060 INFO    ] time= 13/06/2026 03:24:49
[2026-06-13 03:24:49,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:49,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:49,198.198 INFO    ] No existing commands found in stream
[2026-06-13 03:24:54,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:24:54,211.211 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 03:24:55,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:24:55,845.845 INFO    ] Checking for system updates...
[2026-06-13 03:24:55,866.866 INFO    ] 200
[2026-06-13 03:24:55,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:55,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:24:55,899.899 INFO    ] No update needed
[2026-06-13 03:24:55,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 03:24:55,920.920 INFO    ] 200
[2026-06-13 03:24:55,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:24:55,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:24:55,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:24:55,985.985 INFO    ] No camera update needed
[2026-06-13 03:24:55,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:24:55,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:24:55,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:24:55,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:24:58,032.032 INFO    ] ================================================
[2026-06-13 03:24:58,048.048 INFO    ] Launching Daemon at Sat Jun 13 03:24:58 IST 2026
[2026-06-13 03:24:58,061.061 INFO    ] ================================================
[2026-06-13 03:24:58,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:24:58
[2026-06-13 03:24:58,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:24:58,941.941 INFO    ] Initializing speech engine...
[2026-06-13 03:24:58,947.947 INFO    ] 2026-06-13 03:24:58
[2026-06-13 03:24:59,142.142 INFO    ] 2026-06-13 03:24:59
[2026-06-13 03:24:59,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:24:59,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:24:59,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:24:59,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:24:59,422.422 INFO    ] time= 13/06/2026 03:24:59
[2026-06-13 03:24:59,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:24:59,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:24:59,531.531 INFO    ] No existing commands found in stream
[2026-06-13 03:25:04,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:04,557.557 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 03:25:05,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:25:05,228.228 INFO    ] Checking for system updates...
[2026-06-13 03:25:05,250.250 INFO    ] 200
[2026-06-13 03:25:05,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:05,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:25:05,284.284 INFO    ] No update needed
[2026-06-13 03:25:05,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 03:25:05,306.306 INFO    ] 200
[2026-06-13 03:25:05,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:05,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:25:05,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:25:05,384.384 INFO    ] No camera update needed
[2026-06-13 03:25:05,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:25:05,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:25:05,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:25:05,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:25:07,433.433 INFO    ] ================================================
[2026-06-13 03:25:07,449.449 INFO    ] Launching Daemon at Sat Jun 13 03:25:07 IST 2026
[2026-06-13 03:25:07,459.459 INFO    ] ================================================
[2026-06-13 03:25:07,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:25:07
[2026-06-13 03:25:08,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:25:08,243.243 INFO    ] Initializing speech engine...
[2026-06-13 03:25:08,247.247 INFO    ] 2026-06-13 03:25:08
[2026-06-13 03:25:08,477.477 INFO    ] 2026-06-13 03:25:08
[2026-06-13 03:25:08,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:25:08,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:25:08,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:25:08,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:25:08,918.918 INFO    ] time= 13/06/2026 03:25:08
[2026-06-13 03:25:08,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:25:08,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:25:09,105.105 INFO    ] No existing commands found in stream
[2026-06-13 03:25:14,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:14,122.122 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 03:25:18,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:25:18,118.118 INFO    ] Checking for system updates...
[2026-06-13 03:25:18,138.138 INFO    ] 200
[2026-06-13 03:25:18,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:18,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:25:18,171.171 INFO    ] No update needed
[2026-06-13 03:25:18,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 03:25:18,194.194 INFO    ] 200
[2026-06-13 03:25:18,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:18,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:25:18,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:25:18,267.267 INFO    ] No camera update needed
[2026-06-13 03:25:18,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:25:18,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:25:18,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:25:18,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:25:20,314.314 INFO    ] ================================================
[2026-06-13 03:25:20,331.331 INFO    ] Launching Daemon at Sat Jun 13 03:25:20 IST 2026
[2026-06-13 03:25:20,342.342 INFO    ] ================================================
[2026-06-13 03:25:20,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:25:20
[2026-06-13 03:25:21,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:25:21,161.161 INFO    ] Initializing speech engine...
[2026-06-13 03:25:21,167.167 INFO    ] 2026-06-13 03:25:21
[2026-06-13 03:25:21,389.389 INFO    ] 2026-06-13 03:25:21
[2026-06-13 03:25:21,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:25:21,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:25:21,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:25:21,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:25:21,754.754 INFO    ] time= 13/06/2026 03:25:21
[2026-06-13 03:25:21,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:25:21,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:25:21,958.958 INFO    ] No existing commands found in stream
[2026-06-13 03:25:26,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:26,972.972 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 03:25:27,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:25:27,757.757 INFO    ] Checking for system updates...
[2026-06-13 03:25:27,779.779 INFO    ] 200
[2026-06-13 03:25:27,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:27,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:25:27,815.815 INFO    ] No update needed
[2026-06-13 03:25:27,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 03:25:27,837.837 INFO    ] 200
[2026-06-13 03:25:27,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:27,862.862 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:25:27,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:25:27,898.898 INFO    ] No camera update needed
[2026-06-13 03:25:27,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:25:27,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:25:27,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:25:27,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:25:29,946.946 INFO    ] ================================================
[2026-06-13 03:25:29,961.961 INFO    ] Launching Daemon at Sat Jun 13 03:25:29 IST 2026
[2026-06-13 03:25:29,972.972 INFO    ] ================================================
[2026-06-13 03:25:30,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:25:30
[2026-06-13 03:25:30,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:25:30,772.772 INFO    ] Initializing speech engine...
[2026-06-13 03:25:30,777.777 INFO    ] 2026-06-13 03:25:30
[2026-06-13 03:25:30,980.980 INFO    ] 2026-06-13 03:25:30
[2026-06-13 03:25:31,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:25:31,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:25:31,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:25:31,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:25:31,409.409 INFO    ] time= 13/06/2026 03:25:31
[2026-06-13 03:25:31,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:25:31,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:25:31,614.614 INFO    ] No existing commands found in stream
[2026-06-13 03:25:36,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:36,636.636 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 03:25:40,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:25:40,499.499 INFO    ] Checking for system updates...
[2026-06-13 03:25:40,520.520 INFO    ] 200
[2026-06-13 03:25:40,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:40,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:25:40,553.553 INFO    ] No update needed
[2026-06-13 03:25:40,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 03:25:40,575.575 INFO    ] 200
[2026-06-13 03:25:40,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:40,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:25:40,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:25:40,637.637 INFO    ] No camera update needed
[2026-06-13 03:25:40,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:25:40,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:25:40,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:25:40,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:25:42,686.686 INFO    ] ================================================
[2026-06-13 03:25:42,701.701 INFO    ] Launching Daemon at Sat Jun 13 03:25:42 IST 2026
[2026-06-13 03:25:42,712.712 INFO    ] ================================================
[2026-06-13 03:25:43,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:25:43
[2026-06-13 03:25:43,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:25:43,539.539 INFO    ] Initializing speech engine...
[2026-06-13 03:25:43,544.544 INFO    ] 2026-06-13 03:25:43
[2026-06-13 03:25:43,751.751 INFO    ] 2026-06-13 03:25:43
[2026-06-13 03:25:43,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:25:43,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:25:43,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:25:44,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:25:44,172.172 INFO    ] time= 13/06/2026 03:25:44
[2026-06-13 03:25:44,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:25:44,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:25:44,277.277 INFO    ] No existing commands found in stream
[2026-06-13 03:25:49,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:49,290.290 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 03:25:50,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:25:50,174.174 INFO    ] Checking for system updates...
[2026-06-13 03:25:50,198.198 INFO    ] 200
[2026-06-13 03:25:50,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:50,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:25:50,232.232 INFO    ] No update needed
[2026-06-13 03:25:50,233.233 INFO    ] Checking for camera pi updates...
[2026-06-13 03:25:50,256.256 INFO    ] 200
[2026-06-13 03:25:50,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:25:50,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:25:50,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:25:50,321.321 INFO    ] No camera update needed
[2026-06-13 03:25:50,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:25:50,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:25:50,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:25:50,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:25:52,369.369 INFO    ] ================================================
[2026-06-13 03:25:52,385.385 INFO    ] Launching Daemon at Sat Jun 13 03:25:52 IST 2026
[2026-06-13 03:25:52,396.396 INFO    ] ================================================
[2026-06-13 03:25:52,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:25:52
[2026-06-13 03:25:53,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:25:53,208.208 INFO    ] Initializing speech engine...
[2026-06-13 03:25:53,212.212 INFO    ] 2026-06-13 03:25:53
[2026-06-13 03:25:53,417.417 INFO    ] 2026-06-13 03:25:53
[2026-06-13 03:25:53,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:25:53,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:25:53,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:25:53,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:25:53,817.817 INFO    ] time= 13/06/2026 03:25:53
[2026-06-13 03:25:53,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:25:53,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:25:53,932.932 INFO    ] No existing commands found in stream
[2026-06-13 03:25:58,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:25:58,946.946 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 03:26:00,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:26:00,374.374 INFO    ] Checking for system updates...
[2026-06-13 03:26:00,394.394 INFO    ] 200
[2026-06-13 03:26:00,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:00,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:00,428.428 INFO    ] No update needed
[2026-06-13 03:26:00,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:00,449.449 INFO    ] 200
[2026-06-13 03:26:00,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:00,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:00,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:00,512.512 INFO    ] No camera update needed
[2026-06-13 03:26:00,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:00,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:00,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:00,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:02,558.558 INFO    ] ================================================
[2026-06-13 03:26:02,567.567 INFO    ] Launching Daemon at Sat Jun 13 03:26:02 IST 2026
[2026-06-13 03:26:02,573.573 INFO    ] ================================================
[2026-06-13 03:26:02,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:26:02
[2026-06-13 03:26:03,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:26:03,324.324 INFO    ] Initializing speech engine...
[2026-06-13 03:26:03,334.334 INFO    ] 2026-06-13 03:26:03
[2026-06-13 03:26:03,538.538 INFO    ] 2026-06-13 03:26:03
[2026-06-13 03:26:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:26:03,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:26:03,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:26:03,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:26:03,795.795 INFO    ] time= 13/06/2026 03:26:03
[2026-06-13 03:26:03,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:26:03,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:26:03,916.916 INFO    ] No existing commands found in stream
[2026-06-13 03:26:08,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:26:08,942.942 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 03:26:11,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:26:11,252.252 INFO    ] Checking for system updates...
[2026-06-13 03:26:11,272.272 INFO    ] 200
[2026-06-13 03:26:11,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:11,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:11,313.313 INFO    ] No update needed
[2026-06-13 03:26:11,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:11,333.333 INFO    ] 200
[2026-06-13 03:26:11,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:11,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:11,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:11,397.397 INFO    ] No camera update needed
[2026-06-13 03:26:11,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:11,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:11,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:11,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:13,446.446 INFO    ] ================================================
[2026-06-13 03:26:13,462.462 INFO    ] Launching Daemon at Sat Jun 13 03:26:13 IST 2026
[2026-06-13 03:26:13,473.473 INFO    ] ================================================
[2026-06-13 03:26:13,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:26:13
[2026-06-13 03:26:14,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:26:14,272.272 INFO    ] Initializing speech engine...
[2026-06-13 03:26:14,279.279 INFO    ] 2026-06-13 03:26:14
[2026-06-13 03:26:14,491.491 INFO    ] 2026-06-13 03:26:14
[2026-06-13 03:26:14,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:26:14,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:26:14,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:26:14,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:26:14,891.891 INFO    ] time= 13/06/2026 03:26:14
[2026-06-13 03:26:14,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:26:14,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:26:15,004.004 INFO    ] No existing commands found in stream
[2026-06-13 03:26:20,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:26:20,018.018 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 03:26:21,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:26:21,413.413 INFO    ] Checking for system updates...
[2026-06-13 03:26:21,433.433 INFO    ] 200
[2026-06-13 03:26:21,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:21,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:26:21,471.471 INFO    ] No update needed
[2026-06-13 03:26:21,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:21,492.492 INFO    ] 200
[2026-06-13 03:26:21,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:21,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:21,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:21,566.566 INFO    ] No camera update needed
[2026-06-13 03:26:21,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:21,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:21,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:21,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:23,616.616 INFO    ] ================================================
[2026-06-13 03:26:23,632.632 INFO    ] Launching Daemon at Sat Jun 13 03:26:23 IST 2026
[2026-06-13 03:26:23,642.642 INFO    ] ================================================
[2026-06-13 03:26:23,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:26:23
[2026-06-13 03:26:24,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:26:24,446.446 INFO    ] Initializing speech engine...
[2026-06-13 03:26:24,455.455 INFO    ] 2026-06-13 03:26:24
[2026-06-13 03:26:24,676.676 INFO    ] 2026-06-13 03:26:24
[2026-06-13 03:26:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:26:24,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:26:24,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:26:25,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:26:25,109.109 INFO    ] time= 13/06/2026 03:26:25
[2026-06-13 03:26:25,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:26:25,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:26:25,238.238 INFO    ] No existing commands found in stream
[2026-06-13 03:26:30,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:26:30,252.252 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 03:26:33,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:26:33,599.599 INFO    ] Checking for system updates...
[2026-06-13 03:26:33,620.620 INFO    ] 200
[2026-06-13 03:26:33,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:33,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:26:33,653.653 INFO    ] No update needed
[2026-06-13 03:26:33,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:33,674.674 INFO    ] 200
[2026-06-13 03:26:33,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:33,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:33,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:33,741.741 INFO    ] No camera update needed
[2026-06-13 03:26:33,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:33,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:33,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:33,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:35,790.790 INFO    ] ================================================
[2026-06-13 03:26:35,806.806 INFO    ] Launching Daemon at Sat Jun 13 03:26:35 IST 2026
[2026-06-13 03:26:35,817.817 INFO    ] ================================================
[2026-06-13 03:26:36,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:26:36
[2026-06-13 03:26:36,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:26:36,605.605 INFO    ] Initializing speech engine...
[2026-06-13 03:26:36,610.610 INFO    ] 2026-06-13 03:26:36
[2026-06-13 03:26:36,814.814 INFO    ] 2026-06-13 03:26:36
[2026-06-13 03:26:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:26:36,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:26:37,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:26:37,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:26:37,223.223 INFO    ] time= 13/06/2026 03:26:37
[2026-06-13 03:26:37,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:26:37,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:26:37,329.329 INFO    ] No existing commands found in stream
[2026-06-13 03:26:42,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:26:42,351.351 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 03:26:45,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:26:45,320.320 INFO    ] Checking for system updates...
[2026-06-13 03:26:45,341.341 INFO    ] 200
[2026-06-13 03:26:45,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:45,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:26:45,374.374 INFO    ] No update needed
[2026-06-13 03:26:45,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:45,396.396 INFO    ] 200
[2026-06-13 03:26:45,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:45,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:45,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:26:45,465.465 INFO    ] No camera update needed
[2026-06-13 03:26:45,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:45,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:45,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:45,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:47,512.512 INFO    ] ================================================
[2026-06-13 03:26:47,528.528 INFO    ] Launching Daemon at Sat Jun 13 03:26:47 IST 2026
[2026-06-13 03:26:47,539.539 INFO    ] ================================================
[2026-06-13 03:26:47,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:26:47
[2026-06-13 03:26:48,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:26:48,406.406 INFO    ] Initializing speech engine...
[2026-06-13 03:26:48,411.411 INFO    ] 2026-06-13 03:26:48
[2026-06-13 03:26:48,618.618 INFO    ] 2026-06-13 03:26:48
[2026-06-13 03:26:48,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:26:48,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:26:48,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:26:48,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:26:49,010.010 INFO    ] time= 13/06/2026 03:26:48
[2026-06-13 03:26:49,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:26:49,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:26:49,135.135 INFO    ] No existing commands found in stream
[2026-06-13 03:26:54,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:26:54,150.150 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 03:26:57,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:26:57,604.604 INFO    ] Checking for system updates...
[2026-06-13 03:26:57,625.625 INFO    ] 200
[2026-06-13 03:26:57,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:57,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:57,659.659 INFO    ] No update needed
[2026-06-13 03:26:57,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 03:26:57,682.682 INFO    ] 200
[2026-06-13 03:26:57,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:26:57,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:26:57,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:26:57,751.751 INFO    ] No camera update needed
[2026-06-13 03:26:57,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:26:57,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:26:57,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:26:57,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:26:59,802.802 INFO    ] ================================================
[2026-06-13 03:26:59,816.816 INFO    ] Launching Daemon at Sat Jun 13 03:26:59 IST 2026
[2026-06-13 03:26:59,827.827 INFO    ] ================================================
[2026-06-13 03:27:00,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:00
[2026-06-13 03:27:00,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:00,636.636 INFO    ] Initializing speech engine...
[2026-06-13 03:27:00,647.647 INFO    ] 2026-06-13 03:27:00
[2026-06-13 03:27:00,850.850 INFO    ] 2026-06-13 03:27:00
[2026-06-13 03:27:00,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:27:01,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:27:01,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:27:01,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:27:01,260.260 INFO    ] time= 13/06/2026 03:27:01
[2026-06-13 03:27:01,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:27:01,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:27:01,469.469 INFO    ] No existing commands found in stream
[2026-06-13 03:27:06,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:27:06,486.486 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 03:27:10,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:27:10,607.607 INFO    ] Checking for system updates...
[2026-06-13 03:27:10,629.629 INFO    ] 200
[2026-06-13 03:27:10,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:10,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:27:10,662.662 INFO    ] No update needed
[2026-06-13 03:27:10,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 03:27:10,685.685 INFO    ] 200
[2026-06-13 03:27:10,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:10,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:27:10,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:27:10,751.751 INFO    ] No camera update needed
[2026-06-13 03:27:10,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:27:10,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:27:10,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:27:10,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:27:12,801.801 INFO    ] ================================================
[2026-06-13 03:27:12,816.816 INFO    ] Launching Daemon at Sat Jun 13 03:27:12 IST 2026
[2026-06-13 03:27:12,826.826 INFO    ] ================================================
[2026-06-13 03:27:13,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:13
[2026-06-13 03:27:13,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:13,691.691 INFO    ] Initializing speech engine...
[2026-06-13 03:27:13,697.697 INFO    ] 2026-06-13 03:27:13
[2026-06-13 03:27:13,904.904 INFO    ] 2026-06-13 03:27:13
[2026-06-13 03:27:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:27:14,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:27:14,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:27:14,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:27:14,163.163 INFO    ] time= 13/06/2026 03:27:14
[2026-06-13 03:27:14,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:27:14,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:27:14,341.341 INFO    ] No existing commands found in stream
[2026-06-13 03:27:19,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:27:19,356.356 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 03:27:21,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:27:21,643.643 INFO    ] Checking for system updates...
[2026-06-13 03:27:21,664.664 INFO    ] 200
[2026-06-13 03:27:21,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:21,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:27:21,699.699 INFO    ] No update needed
[2026-06-13 03:27:21,700.700 INFO    ] Checking for camera pi updates...
[2026-06-13 03:27:21,720.720 INFO    ] 200
[2026-06-13 03:27:21,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:21,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:27:21,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:27:21,784.784 INFO    ] No camera update needed
[2026-06-13 03:27:21,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:27:21,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:27:21,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:27:21,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:27:23,833.833 INFO    ] ================================================
[2026-06-13 03:27:23,849.849 INFO    ] Launching Daemon at Sat Jun 13 03:27:23 IST 2026
[2026-06-13 03:27:23,860.860 INFO    ] ================================================
[2026-06-13 03:27:24,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:24
[2026-06-13 03:27:24,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:24,746.746 INFO    ] Initializing speech engine...
[2026-06-13 03:27:24,751.751 INFO    ] 2026-06-13 03:27:24
[2026-06-13 03:27:24,972.972 INFO    ] 2026-06-13 03:27:24
[2026-06-13 03:27:25,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:27:25,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:27:25,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:27:25,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:27:25,392.392 INFO    ] time= 13/06/2026 03:27:25
[2026-06-13 03:27:25,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:27:25,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:27:25,494.494 INFO    ] No existing commands found in stream
[2026-06-13 03:27:30,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:27:30,509.509 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 03:27:33,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:27:33,657.657 INFO    ] Checking for system updates...
[2026-06-13 03:27:33,678.678 INFO    ] 200
[2026-06-13 03:27:33,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:33,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:33,714.714 INFO    ] No update needed
[2026-06-13 03:27:33,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 03:27:33,737.737 INFO    ] 200
[2026-06-13 03:27:33,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:33,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:27:33,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:33,786.786 INFO    ] No camera update needed
[2026-06-13 03:27:33,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:27:33,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:27:33,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:27:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:27:35,827.827 INFO    ] ================================================
[2026-06-13 03:27:35,836.836 INFO    ] Launching Daemon at Sat Jun 13 03:27:35 IST 2026
[2026-06-13 03:27:35,842.842 INFO    ] ================================================
[2026-06-13 03:27:36,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:36
[2026-06-13 03:27:36,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:36,704.704 INFO    ] Initializing speech engine...
[2026-06-13 03:27:36,709.709 INFO    ] 2026-06-13 03:27:36
[2026-06-13 03:27:36,917.917 INFO    ] 2026-06-13 03:27:36
[2026-06-13 03:27:36,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:27:37,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:27:37,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:27:37,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:27:37,323.323 INFO    ] time= 13/06/2026 03:27:37
[2026-06-13 03:27:37,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:27:37,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:27:37,440.440 INFO    ] No existing commands found in stream
[2026-06-13 03:27:42,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:27:42,454.454 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 03:27:44,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:27:44,038.038 INFO    ] Checking for system updates...
[2026-06-13 03:27:44,059.059 INFO    ] 200
[2026-06-13 03:27:44,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:44,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:44,094.094 INFO    ] No update needed
[2026-06-13 03:27:44,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 03:27:44,116.116 INFO    ] 200
[2026-06-13 03:27:44,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:44,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:27:44,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:44,290.290 INFO    ] No camera update needed
[2026-06-13 03:27:44,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:27:44,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:27:44,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:27:44,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:27:46,335.335 INFO    ] ================================================
[2026-06-13 03:27:46,344.344 INFO    ] Launching Daemon at Sat Jun 13 03:27:46 IST 2026
[2026-06-13 03:27:46,353.353 INFO    ] ================================================
[2026-06-13 03:27:46,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:46
[2026-06-13 03:27:47,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:47,776.776 INFO    ] Initializing speech engine...
[2026-06-13 03:27:47,783.783 INFO    ] 2026-06-13 03:27:47
[2026-06-13 03:27:48,078.078 INFO    ] 2026-06-13 03:27:48
[2026-06-13 03:27:48,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:27:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:27:48,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:27:48,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:27:48,427.427 INFO    ] time= 13/06/2026 03:27:48
[2026-06-13 03:27:48,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:27:48,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:27:48,505.505 INFO    ] No existing commands found in stream
[2026-06-13 03:27:53,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:27:53,518.518 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 03:27:56,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:27:56,853.853 INFO    ] Checking for system updates...
[2026-06-13 03:27:56,874.874 INFO    ] 200
[2026-06-13 03:27:56,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:56,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:56,906.906 INFO    ] No update needed
[2026-06-13 03:27:56,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 03:27:56,927.927 INFO    ] 200
[2026-06-13 03:27:56,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:27:56,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:27:56,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:27:56,987.987 INFO    ] No camera update needed
[2026-06-13 03:27:56,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:27:56,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:27:56,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:27:56,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:27:59,026.026 INFO    ] ================================================
[2026-06-13 03:27:59,041.041 INFO    ] Launching Daemon at Sat Jun 13 03:27:59 IST 2026
[2026-06-13 03:27:59,052.052 INFO    ] ================================================
[2026-06-13 03:27:59,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:27:59
[2026-06-13 03:27:59,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:27:59,837.837 INFO    ] Initializing speech engine...
[2026-06-13 03:27:59,842.842 INFO    ] 2026-06-13 03:27:59
[2026-06-13 03:28:00,048.048 INFO    ] 2026-06-13 03:28:00
[2026-06-13 03:28:00,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:00,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:00,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:00,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:00,473.473 INFO    ] time= 13/06/2026 03:28:00
[2026-06-13 03:28:00,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:00,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:00,570.570 INFO    ] No existing commands found in stream
[2026-06-13 03:28:05,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:28:05,583.583 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 03:28:07,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:28:07,209.209 INFO    ] Checking for system updates...
[2026-06-13 03:28:07,231.231 INFO    ] 200
[2026-06-13 03:28:07,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:07,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:07,263.263 INFO    ] No update needed
[2026-06-13 03:28:07,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 03:28:07,284.284 INFO    ] 200
[2026-06-13 03:28:07,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:07,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:28:07,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:07,353.353 INFO    ] No camera update needed
[2026-06-13 03:28:07,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:28:07,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:28:07,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:28:07,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:28:09,402.402 INFO    ] ================================================
[2026-06-13 03:28:09,418.418 INFO    ] Launching Daemon at Sat Jun 13 03:28:09 IST 2026
[2026-06-13 03:28:09,429.429 INFO    ] ================================================
[2026-06-13 03:28:10,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:28:10
[2026-06-13 03:28:10,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:28:10,879.879 INFO    ] Initializing speech engine...
[2026-06-13 03:28:10,889.889 INFO    ] 2026-06-13 03:28:10
[2026-06-13 03:28:11,137.137 INFO    ] 2026-06-13 03:28:11
[2026-06-13 03:28:11,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:11,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:11,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:11,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:11,493.493 INFO    ] time= 13/06/2026 03:28:11
[2026-06-13 03:28:11,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:11,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:11,590.590 INFO    ] No existing commands found in stream
[2026-06-13 03:28:16,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:28:16,605.605 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 03:28:17,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:28:17,578.578 INFO    ] Checking for system updates...
[2026-06-13 03:28:17,601.601 INFO    ] 200
[2026-06-13 03:28:17,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:17,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:17,633.633 INFO    ] No update needed
[2026-06-13 03:28:17,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 03:28:17,654.654 INFO    ] 200
[2026-06-13 03:28:17,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:17,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:28:17,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:17,729.729 INFO    ] No camera update needed
[2026-06-13 03:28:17,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:28:17,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:28:17,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:28:17,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:28:19,775.775 INFO    ] ================================================
[2026-06-13 03:28:19,791.791 INFO    ] Launching Daemon at Sat Jun 13 03:28:19 IST 2026
[2026-06-13 03:28:19,803.803 INFO    ] ================================================
[2026-06-13 03:28:20,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:28:20
[2026-06-13 03:28:20,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:28:20,959.959 INFO    ] Initializing speech engine...
[2026-06-13 03:28:20,982.982 INFO    ] 2026-06-13 03:28:20
[2026-06-13 03:28:21,250.250 INFO    ] 2026-06-13 03:28:21
[2026-06-13 03:28:21,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:21,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:21,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:21,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:21,709.709 INFO    ] time= 13/06/2026 03:28:21
[2026-06-13 03:28:21,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:21,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:21,889.889 INFO    ] No existing commands found in stream
[2026-06-13 03:28:26,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:28:26,906.906 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 03:28:30,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:28:30,484.484 INFO    ] Checking for system updates...
[2026-06-13 03:28:30,505.505 INFO    ] 200
[2026-06-13 03:28:30,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:30,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:28:30,539.539 INFO    ] No update needed
[2026-06-13 03:28:30,540.540 INFO    ] Checking for camera pi updates...
[2026-06-13 03:28:30,560.560 INFO    ] 200
[2026-06-13 03:28:30,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:30,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:28:30,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:28:30,626.626 INFO    ] No camera update needed
[2026-06-13 03:28:30,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:28:30,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:28:30,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:28:30,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:28:32,669.669 INFO    ] ================================================
[2026-06-13 03:28:32,685.685 INFO    ] Launching Daemon at Sat Jun 13 03:28:32 IST 2026
[2026-06-13 03:28:32,696.696 INFO    ] ================================================
[2026-06-13 03:28:33,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:28:33
[2026-06-13 03:28:33,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:28:33,511.511 INFO    ] Initializing speech engine...
[2026-06-13 03:28:33,515.515 INFO    ] 2026-06-13 03:28:33
[2026-06-13 03:28:33,744.744 INFO    ] 2026-06-13 03:28:33
[2026-06-13 03:28:33,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:33,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:33,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:34,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:34,147.147 INFO    ] time= 13/06/2026 03:28:34
[2026-06-13 03:28:34,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:34,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:34,299.299 INFO    ] No existing commands found in stream
[2026-06-13 03:28:39,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:28:39,313.313 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 03:28:41,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:28:41,652.652 INFO    ] Checking for system updates...
[2026-06-13 03:28:41,673.673 INFO    ] 200
[2026-06-13 03:28:41,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:41,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:41,711.711 INFO    ] No update needed
[2026-06-13 03:28:41,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 03:28:41,732.732 INFO    ] 200
[2026-06-13 03:28:41,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:41,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:28:41,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:41,803.803 INFO    ] No camera update needed
[2026-06-13 03:28:41,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:28:41,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:28:41,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:28:41,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:28:43,843.843 INFO    ] ================================================
[2026-06-13 03:28:43,859.859 INFO    ] Launching Daemon at Sat Jun 13 03:28:43 IST 2026
[2026-06-13 03:28:43,870.870 INFO    ] ================================================
[2026-06-13 03:28:44,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:28:44
[2026-06-13 03:28:44,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:28:44,694.694 INFO    ] Initializing speech engine...
[2026-06-13 03:28:44,698.698 INFO    ] 2026-06-13 03:28:44
[2026-06-13 03:28:44,914.914 INFO    ] 2026-06-13 03:28:44
[2026-06-13 03:28:44,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:45,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:45,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:45,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:45,354.354 INFO    ] time= 13/06/2026 03:28:45
[2026-06-13 03:28:45,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:45,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:45,485.485 INFO    ] No existing commands found in stream
[2026-06-13 03:28:50,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:28:50,499.499 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 03:28:51,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:28:51,109.109 INFO    ] Checking for system updates...
[2026-06-13 03:28:51,130.130 INFO    ] 200
[2026-06-13 03:28:51,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:51,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:51,165.165 INFO    ] No update needed
[2026-06-13 03:28:51,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 03:28:51,186.186 INFO    ] 200
[2026-06-13 03:28:51,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:28:51,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:28:51,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:28:51,246.246 INFO    ] No camera update needed
[2026-06-13 03:28:51,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:28:51,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:28:51,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:28:51,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:28:53,287.287 INFO    ] ================================================
[2026-06-13 03:28:53,296.296 INFO    ] Launching Daemon at Sat Jun 13 03:28:53 IST 2026
[2026-06-13 03:28:53,302.302 INFO    ] ================================================
[2026-06-13 03:28:53,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:28:53
[2026-06-13 03:28:54,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:28:54,746.746 INFO    ] Initializing speech engine...
[2026-06-13 03:28:54,764.764 INFO    ] 2026-06-13 03:28:54
[2026-06-13 03:28:55,041.041 INFO    ] 2026-06-13 03:28:55
[2026-06-13 03:28:55,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:28:55,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:28:55,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:28:55,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:28:55,511.511 INFO    ] time= 13/06/2026 03:28:55
[2026-06-13 03:28:55,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:28:55,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:28:55,662.662 INFO    ] No existing commands found in stream
[2026-06-13 03:29:00,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:00,676.676 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 03:29:02,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:29:02,996.996 INFO    ] Checking for system updates...
[2026-06-13 03:29:03,017.017 INFO    ] 200
[2026-06-13 03:29:03,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:03,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:29:03,050.050 INFO    ] No update needed
[2026-06-13 03:29:03,052.052 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:03,073.073 INFO    ] 200
[2026-06-13 03:29:03,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:03,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:03,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:29:03,139.139 INFO    ] No camera update needed
[2026-06-13 03:29:03,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:03,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:03,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:03,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:29:05,186.186 INFO    ] ================================================
[2026-06-13 03:29:05,201.201 INFO    ] Launching Daemon at Sat Jun 13 03:29:05 IST 2026
[2026-06-13 03:29:05,213.213 INFO    ] ================================================
[2026-06-13 03:29:05,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:29:05
[2026-06-13 03:29:05,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:29:06,021.021 INFO    ] Initializing speech engine...
[2026-06-13 03:29:06,026.026 INFO    ] 2026-06-13 03:29:06
[2026-06-13 03:29:06,232.232 INFO    ] 2026-06-13 03:29:06
[2026-06-13 03:29:06,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:29:06,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:29:06,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:29:06,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:29:06,637.637 INFO    ] time= 13/06/2026 03:29:06
[2026-06-13 03:29:06,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:29:06,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:29:06,746.746 INFO    ] No existing commands found in stream
[2026-06-13 03:29:11,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:11,760.760 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 03:29:15,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:29:15,664.664 INFO    ] Checking for system updates...
[2026-06-13 03:29:15,691.691 INFO    ] 200
[2026-06-13 03:29:15,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:15,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:15,729.729 INFO    ] No update needed
[2026-06-13 03:29:15,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:15,750.750 INFO    ] 200
[2026-06-13 03:29:15,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:15,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:15,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:15,822.822 INFO    ] No camera update needed
[2026-06-13 03:29:15,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:15,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:15,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:15,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:29:17,871.871 INFO    ] ================================================
[2026-06-13 03:29:17,886.886 INFO    ] Launching Daemon at Sat Jun 13 03:29:17 IST 2026
[2026-06-13 03:29:17,898.898 INFO    ] ================================================
[2026-06-13 03:29:18,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:29:18
[2026-06-13 03:29:18,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:29:18,702.702 INFO    ] Initializing speech engine...
[2026-06-13 03:29:18,708.708 INFO    ] 2026-06-13 03:29:18
[2026-06-13 03:29:18,924.924 INFO    ] 2026-06-13 03:29:18
[2026-06-13 03:29:18,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:29:19,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:29:19,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:29:19,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:29:19,333.333 INFO    ] time= 13/06/2026 03:29:19
[2026-06-13 03:29:19,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:29:19,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:29:19,472.472 INFO    ] No existing commands found in stream
[2026-06-13 03:29:24,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:24,486.486 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 03:29:26,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:29:26,341.341 INFO    ] Checking for system updates...
[2026-06-13 03:29:26,365.365 INFO    ] 200
[2026-06-13 03:29:26,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:26,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:26,400.400 INFO    ] No update needed
[2026-06-13 03:29:26,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:26,422.422 INFO    ] 200
[2026-06-13 03:29:26,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:26,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:26,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:26,492.492 INFO    ] No camera update needed
[2026-06-13 03:29:26,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:26,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:26,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:26,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:29:28,539.539 INFO    ] ================================================
[2026-06-13 03:29:28,559.559 INFO    ] Launching Daemon at Sat Jun 13 03:29:28 IST 2026
[2026-06-13 03:29:28,569.569 INFO    ] ================================================
[2026-06-13 03:29:28,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:29:28
[2026-06-13 03:29:29,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:29:29,406.406 INFO    ] Initializing speech engine...
[2026-06-13 03:29:29,412.412 INFO    ] 2026-06-13 03:29:29
[2026-06-13 03:29:29,619.619 INFO    ] 2026-06-13 03:29:29
[2026-06-13 03:29:29,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:29:29,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:29:29,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:29:29,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:29:30,035.035 INFO    ] time= 13/06/2026 03:29:29
[2026-06-13 03:29:30,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:29:30,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:29:30,136.136 INFO    ] No existing commands found in stream
[2026-06-13 03:29:35,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:35,164.164 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 03:29:36,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:29:36,496.496 INFO    ] Checking for system updates...
[2026-06-13 03:29:36,518.518 INFO    ] 200
[2026-06-13 03:29:36,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:36,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:36,552.552 INFO    ] No update needed
[2026-06-13 03:29:36,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:36,574.574 INFO    ] 200
[2026-06-13 03:29:36,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:36,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:36,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:36,651.651 INFO    ] No camera update needed
[2026-06-13 03:29:36,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:36,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:36,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:36,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:29:38,691.691 INFO    ] ================================================
[2026-06-13 03:29:38,707.707 INFO    ] Launching Daemon at Sat Jun 13 03:29:38 IST 2026
[2026-06-13 03:29:38,718.718 INFO    ] ================================================
[2026-06-13 03:29:39,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:29:39
[2026-06-13 03:29:39,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:29:39,541.541 INFO    ] Initializing speech engine...
[2026-06-13 03:29:39,550.550 INFO    ] 2026-06-13 03:29:39
[2026-06-13 03:29:39,765.765 INFO    ] 2026-06-13 03:29:39
[2026-06-13 03:29:39,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:29:39,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:29:39,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:29:40,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:29:40,165.165 INFO    ] time= 13/06/2026 03:29:40
[2026-06-13 03:29:40,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:29:40,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:29:40,316.316 INFO    ] No existing commands found in stream
[2026-06-13 03:29:45,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:45,329.329 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 03:29:45,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:29:45,660.660 INFO    ] Checking for system updates...
[2026-06-13 03:29:45,681.681 INFO    ] 200
[2026-06-13 03:29:45,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:45,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:29:45,718.718 INFO    ] No update needed
[2026-06-13 03:29:45,720.720 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:45,739.739 INFO    ] 200
[2026-06-13 03:29:45,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:45,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:45,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:45,803.803 INFO    ] No camera update needed
[2026-06-13 03:29:45,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:45,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:45,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:45,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:29:47,851.851 INFO    ] ================================================
[2026-06-13 03:29:47,867.867 INFO    ] Launching Daemon at Sat Jun 13 03:29:47 IST 2026
[2026-06-13 03:29:47,878.878 INFO    ] ================================================
[2026-06-13 03:29:48,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:29:48
[2026-06-13 03:29:48,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:29:48,714.714 INFO    ] Initializing speech engine...
[2026-06-13 03:29:48,719.719 INFO    ] 2026-06-13 03:29:48
[2026-06-13 03:29:48,924.924 INFO    ] 2026-06-13 03:29:48
[2026-06-13 03:29:48,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:29:49,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:29:49,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:29:49,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:29:49,321.321 INFO    ] time= 13/06/2026 03:29:49
[2026-06-13 03:29:49,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:29:49,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:29:49,447.447 INFO    ] No existing commands found in stream
[2026-06-13 03:29:54,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:29:54,460.460 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 03:29:58,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:29:58,640.640 INFO    ] Checking for system updates...
[2026-06-13 03:29:58,661.661 INFO    ] 200
[2026-06-13 03:29:58,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:58,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:58,694.694 INFO    ] No update needed
[2026-06-13 03:29:58,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 03:29:58,716.716 INFO    ] 200
[2026-06-13 03:29:58,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:29:58,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:29:58,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:29:58,879.879 INFO    ] No camera update needed
[2026-06-13 03:29:58,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:29:58,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:29:58,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:29:58,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:00,920.920 INFO    ] ================================================
[2026-06-13 03:30:00,935.935 INFO    ] Launching Daemon at Sat Jun 13 03:30:00 IST 2026
[2026-06-13 03:30:00,947.947 INFO    ] ================================================
[2026-06-13 03:30:01,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:01
[2026-06-13 03:30:01,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:01,729.729 INFO    ] Initializing speech engine...
[2026-06-13 03:30:01,736.736 INFO    ] 2026-06-13 03:30:01
[2026-06-13 03:30:01,928.928 INFO    ] 2026-06-13 03:30:01
[2026-06-13 03:30:02,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:02,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:02,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:02,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:02,449.449 INFO    ] time= 13/06/2026 03:30:02
[2026-06-13 03:30:02,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:02,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:02,500.500 INFO    ] No existing commands found in stream
[2026-06-13 03:30:07,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:30:07,520.520 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 03:30:09,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:30:09,816.816 INFO    ] Checking for system updates...
[2026-06-13 03:30:09,856.856 INFO    ] 200
[2026-06-13 03:30:09,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:09,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:30:09,921.921 INFO    ] No update needed
[2026-06-13 03:30:09,924.924 INFO    ] Checking for camera pi updates...
[2026-06-13 03:30:09,959.959 INFO    ] 200
[2026-06-13 03:30:09,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:10,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:30:10,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:10,056.056 INFO    ] No camera update needed
[2026-06-13 03:30:10,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:30:10,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:30:10,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:30:10,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:12,105.105 INFO    ] ================================================
[2026-06-13 03:30:12,121.121 INFO    ] Launching Daemon at Sat Jun 13 03:30:12 IST 2026
[2026-06-13 03:30:12,133.133 INFO    ] ================================================
[2026-06-13 03:30:12,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:12
[2026-06-13 03:30:12,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:12,967.967 INFO    ] Initializing speech engine...
[2026-06-13 03:30:12,972.972 INFO    ] 2026-06-13 03:30:12
[2026-06-13 03:30:13,178.178 INFO    ] 2026-06-13 03:30:13
[2026-06-13 03:30:13,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:13,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:13,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:13,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:13,591.591 INFO    ] time= 13/06/2026 03:30:13
[2026-06-13 03:30:13,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:13,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:13,697.697 INFO    ] No existing commands found in stream
[2026-06-13 03:30:18,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:30:18,714.714 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 03:30:20,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:30:20,013.013 INFO    ] Checking for system updates...
[2026-06-13 03:30:20,035.035 INFO    ] 200
[2026-06-13 03:30:20,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:20,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:30:20,068.068 INFO    ] No update needed
[2026-06-13 03:30:20,069.069 INFO    ] Checking for camera pi updates...
[2026-06-13 03:30:20,091.091 INFO    ] 200
[2026-06-13 03:30:20,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:20,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:30:20,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:30:20,154.154 INFO    ] No camera update needed
[2026-06-13 03:30:20,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:30:20,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:30:20,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:30:20,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:22,192.192 INFO    ] ================================================
[2026-06-13 03:30:22,200.200 INFO    ] Launching Daemon at Sat Jun 13 03:30:22 IST 2026
[2026-06-13 03:30:22,207.207 INFO    ] ================================================
[2026-06-13 03:30:22,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:22
[2026-06-13 03:30:22,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:23,017.017 INFO    ] Initializing speech engine...
[2026-06-13 03:30:23,023.023 INFO    ] 2026-06-13 03:30:23
[2026-06-13 03:30:23,227.227 INFO    ] 2026-06-13 03:30:23
[2026-06-13 03:30:23,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:23,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:23,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:23,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:23,634.634 INFO    ] time= 13/06/2026 03:30:23
[2026-06-13 03:30:23,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:23,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:23,751.751 INFO    ] No existing commands found in stream
[2026-06-13 03:30:28,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:30:28,765.765 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 03:30:32,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:30:32,242.242 INFO    ] Checking for system updates...
[2026-06-13 03:30:32,268.268 INFO    ] 200
[2026-06-13 03:30:32,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:32,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:32,309.309 INFO    ] No update needed
[2026-06-13 03:30:32,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 03:30:32,336.336 INFO    ] 200
[2026-06-13 03:30:32,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:32,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:30:32,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:32,401.401 INFO    ] No camera update needed
[2026-06-13 03:30:32,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:30:32,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:30:32,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:30:32,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:34,444.444 INFO    ] ================================================
[2026-06-13 03:30:34,460.460 INFO    ] Launching Daemon at Sat Jun 13 03:30:34 IST 2026
[2026-06-13 03:30:34,471.471 INFO    ] ================================================
[2026-06-13 03:30:34,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:34
[2026-06-13 03:30:35,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:35,692.692 INFO    ] Initializing speech engine...
[2026-06-13 03:30:35,715.715 INFO    ] 2026-06-13 03:30:35
[2026-06-13 03:30:35,970.970 INFO    ] 2026-06-13 03:30:35
[2026-06-13 03:30:36,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:36,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:36,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:36,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:36,311.311 INFO    ] time= 13/06/2026 03:30:36
[2026-06-13 03:30:36,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:36,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:36,425.425 INFO    ] No existing commands found in stream
[2026-06-13 03:30:41,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:30:41,445.445 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 03:30:42,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:30:42,888.888 INFO    ] Checking for system updates...
[2026-06-13 03:30:42,911.911 INFO    ] 200
[2026-06-13 03:30:42,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:42,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:42,945.945 INFO    ] No update needed
[2026-06-13 03:30:42,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 03:30:42,966.966 INFO    ] 200
[2026-06-13 03:30:42,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:42,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:30:43,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:43,025.025 INFO    ] No camera update needed
[2026-06-13 03:30:43,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:30:43,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:30:43,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:30:43,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:45,067.067 INFO    ] ================================================
[2026-06-13 03:30:45,082.082 INFO    ] Launching Daemon at Sat Jun 13 03:30:45 IST 2026
[2026-06-13 03:30:45,092.092 INFO    ] ================================================
[2026-06-13 03:30:45,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:45
[2026-06-13 03:30:45,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:46,003.003 INFO    ] Initializing speech engine...
[2026-06-13 03:30:46,027.027 INFO    ] 2026-06-13 03:30:46
[2026-06-13 03:30:46,303.303 INFO    ] 2026-06-13 03:30:46
[2026-06-13 03:30:46,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:46,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:46,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:46,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:46,678.678 INFO    ] time= 13/06/2026 03:30:46
[2026-06-13 03:30:46,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:46,800.800 INFO    ] No existing commands found in stream
[2026-06-13 03:30:51,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:30:51,814.814 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 03:30:52,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:30:52,928.928 INFO    ] Checking for system updates...
[2026-06-13 03:30:52,949.949 INFO    ] 200
[2026-06-13 03:30:52,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:52,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:52,984.984 INFO    ] No update needed
[2026-06-13 03:30:52,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 03:30:53,005.005 INFO    ] 200
[2026-06-13 03:30:53,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:30:53,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:30:53,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:30:53,077.077 INFO    ] No camera update needed
[2026-06-13 03:30:53,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:30:53,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:30:53,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:30:53,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:30:55,115.115 INFO    ] ================================================
[2026-06-13 03:30:55,124.124 INFO    ] Launching Daemon at Sat Jun 13 03:30:55 IST 2026
[2026-06-13 03:30:55,130.130 INFO    ] ================================================
[2026-06-13 03:30:55,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:30:55
[2026-06-13 03:30:55,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:30:55,955.955 INFO    ] Initializing speech engine...
[2026-06-13 03:30:55,957.957 INFO    ] 2026-06-13 03:30:55
[2026-06-13 03:30:56,162.162 INFO    ] 2026-06-13 03:30:56
[2026-06-13 03:30:56,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:30:56,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:30:56,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:30:56,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:30:56,588.588 INFO    ] time= 13/06/2026 03:30:56
[2026-06-13 03:30:56,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:30:56,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:30:56,682.682 INFO    ] No existing commands found in stream
[2026-06-13 03:31:01,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:01,692.692 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 03:31:03,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:31:03,322.322 INFO    ] Checking for system updates...
[2026-06-13 03:31:03,343.343 INFO    ] 200
[2026-06-13 03:31:03,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:03,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:31:03,376.376 INFO    ] No update needed
[2026-06-13 03:31:03,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 03:31:03,396.396 INFO    ] 200
[2026-06-13 03:31:03,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:03,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:31:03,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:03,459.459 INFO    ] No camera update needed
[2026-06-13 03:31:03,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:31:03,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:31:03,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:31:03,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:31:05,507.507 INFO    ] ================================================
[2026-06-13 03:31:05,522.522 INFO    ] Launching Daemon at Sat Jun 13 03:31:05 IST 2026
[2026-06-13 03:31:05,532.532 INFO    ] ================================================
[2026-06-13 03:31:05,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:31:05
[2026-06-13 03:31:06,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:31:06,340.340 INFO    ] Initializing speech engine...
[2026-06-13 03:31:06,348.348 INFO    ] 2026-06-13 03:31:06
[2026-06-13 03:31:06,562.562 INFO    ] 2026-06-13 03:31:06
[2026-06-13 03:31:06,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:31:06,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:31:06,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:31:06,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:31:06,911.911 INFO    ] time= 13/06/2026 03:31:06
[2026-06-13 03:31:06,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:31:06,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:31:07,090.090 INFO    ] No existing commands found in stream
[2026-06-13 03:31:12,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:12,099.099 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 03:31:14,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:31:14,838.838 INFO    ] Checking for system updates...
[2026-06-13 03:31:14,860.860 INFO    ] 200
[2026-06-13 03:31:14,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:14,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:14,893.893 INFO    ] No update needed
[2026-06-13 03:31:14,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 03:31:14,914.914 INFO    ] 200
[2026-06-13 03:31:14,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:14,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:31:14,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:14,980.980 INFO    ] No camera update needed
[2026-06-13 03:31:14,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:31:14,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:31:14,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:31:14,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:31:17,023.023 INFO    ] ================================================
[2026-06-13 03:31:17,032.032 INFO    ] Launching Daemon at Sat Jun 13 03:31:17 IST 2026
[2026-06-13 03:31:17,038.038 INFO    ] ================================================
[2026-06-13 03:31:17,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:31:17
[2026-06-13 03:31:17,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:31:17,806.806 INFO    ] Initializing speech engine...
[2026-06-13 03:31:17,818.818 INFO    ] 2026-06-13 03:31:17
[2026-06-13 03:31:18,037.037 INFO    ] 2026-06-13 03:31:18
[2026-06-13 03:31:18,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:31:18,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:31:18,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:31:18,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:31:18,405.405 INFO    ] time= 13/06/2026 03:31:18
[2026-06-13 03:31:18,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:31:18,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:31:18,583.583 INFO    ] No existing commands found in stream
[2026-06-13 03:31:23,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:23,595.595 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 03:31:27,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:31:27,266.266 INFO    ] Checking for system updates...
[2026-06-13 03:31:27,289.289 INFO    ] 200
[2026-06-13 03:31:27,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:27,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:31:27,324.324 INFO    ] No update needed
[2026-06-13 03:31:27,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 03:31:27,345.345 INFO    ] 200
[2026-06-13 03:31:27,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:27,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:31:27,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:27,411.411 INFO    ] No camera update needed
[2026-06-13 03:31:27,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:31:27,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:31:27,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:31:27,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:31:29,451.451 INFO    ] ================================================
[2026-06-13 03:31:29,466.466 INFO    ] Launching Daemon at Sat Jun 13 03:31:29 IST 2026
[2026-06-13 03:31:29,477.477 INFO    ] ================================================
[2026-06-13 03:31:29,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:31:29
[2026-06-13 03:31:30,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:31:30,276.276 INFO    ] Initializing speech engine...
[2026-06-13 03:31:30,279.279 INFO    ] 2026-06-13 03:31:30
[2026-06-13 03:31:30,509.509 INFO    ] 2026-06-13 03:31:30
[2026-06-13 03:31:30,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:31:30,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:31:30,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:31:30,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:31:30,878.878 INFO    ] time= 13/06/2026 03:31:30
[2026-06-13 03:31:30,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:31:30,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:31:31,021.021 INFO    ] No existing commands found in stream
[2026-06-13 03:31:36,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:36,054.054 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 03:31:39,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:31:39,906.906 INFO    ] Checking for system updates...
[2026-06-13 03:31:39,926.926 INFO    ] 200
[2026-06-13 03:31:39,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:39,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:39,972.972 INFO    ] No update needed
[2026-06-13 03:31:39,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 03:31:40,009.009 INFO    ] 200
[2026-06-13 03:31:40,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:40,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:31:40,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:31:40,094.094 INFO    ] No camera update needed
[2026-06-13 03:31:40,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:31:40,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:31:40,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:31:40,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:31:42,142.142 INFO    ] ================================================
[2026-06-13 03:31:42,158.158 INFO    ] Launching Daemon at Sat Jun 13 03:31:42 IST 2026
[2026-06-13 03:31:42,168.168 INFO    ] ================================================
[2026-06-13 03:31:42,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:31:42
[2026-06-13 03:31:42,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:31:42,971.971 INFO    ] Initializing speech engine...
[2026-06-13 03:31:42,979.979 INFO    ] 2026-06-13 03:31:42
[2026-06-13 03:31:43,200.200 INFO    ] 2026-06-13 03:31:43
[2026-06-13 03:31:43,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:31:43,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:31:43,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:31:43,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:31:43,622.622 INFO    ] time= 13/06/2026 03:31:43
[2026-06-13 03:31:43,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:31:43,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:31:43,744.744 INFO    ] No existing commands found in stream
[2026-06-13 03:31:48,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:48,757.757 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 03:31:50,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:31:50,400.400 INFO    ] Checking for system updates...
[2026-06-13 03:31:50,425.425 INFO    ] 200
[2026-06-13 03:31:50,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:50,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:31:50,470.470 INFO    ] No update needed
[2026-06-13 03:31:50,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 03:31:50,495.495 INFO    ] 200
[2026-06-13 03:31:50,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:31:50,521.521 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:31:50,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:31:50,558.558 INFO    ] No camera update needed
[2026-06-13 03:31:50,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:31:50,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:31:50,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:31:50,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:31:52,605.605 INFO    ] ================================================
[2026-06-13 03:31:52,621.621 INFO    ] Launching Daemon at Sat Jun 13 03:31:52 IST 2026
[2026-06-13 03:31:52,631.631 INFO    ] ================================================
[2026-06-13 03:31:52,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:31:52
[2026-06-13 03:31:53,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:31:53,420.420 INFO    ] Initializing speech engine...
[2026-06-13 03:31:53,425.425 INFO    ] 2026-06-13 03:31:53
[2026-06-13 03:31:53,631.631 INFO    ] 2026-06-13 03:31:53
[2026-06-13 03:31:53,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:31:53,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:31:53,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:31:53,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:31:54,052.052 INFO    ] time= 13/06/2026 03:31:53
[2026-06-13 03:31:54,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:31:54,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:31:54,152.152 INFO    ] No existing commands found in stream
[2026-06-13 03:31:59,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:31:59,165.165 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 03:32:02,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:32:02,169.169 INFO    ] Checking for system updates...
[2026-06-13 03:32:02,199.199 INFO    ] 200
[2026-06-13 03:32:02,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:02,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:02,243.243 INFO    ] No update needed
[2026-06-13 03:32:02,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:02,271.271 INFO    ] 200
[2026-06-13 03:32:02,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:02,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:02,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:02,443.443 INFO    ] No camera update needed
[2026-06-13 03:32:02,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:02,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:02,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:02,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:04,497.497 INFO    ] ================================================
[2026-06-13 03:32:04,515.515 INFO    ] Launching Daemon at Sat Jun 13 03:32:04 IST 2026
[2026-06-13 03:32:04,526.526 INFO    ] ================================================
[2026-06-13 03:32:04,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:04
[2026-06-13 03:32:05,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:05,387.387 INFO    ] Initializing speech engine...
[2026-06-13 03:32:05,394.394 INFO    ] 2026-06-13 03:32:05
[2026-06-13 03:32:05,603.603 INFO    ] 2026-06-13 03:32:05
[2026-06-13 03:32:05,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:05,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:05,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:32:05,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:32:06,018.018 INFO    ] time= 13/06/2026 03:32:05
[2026-06-13 03:32:06,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:32:06,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:32:06,152.152 INFO    ] No existing commands found in stream
[2026-06-13 03:32:11,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:32:11,164.164 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 03:32:13,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:32:13,518.518 INFO    ] Checking for system updates...
[2026-06-13 03:32:13,540.540 INFO    ] 200
[2026-06-13 03:32:13,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:13,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:13,573.573 INFO    ] No update needed
[2026-06-13 03:32:13,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:13,594.594 INFO    ] 200
[2026-06-13 03:32:13,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:13,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:13,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:13,662.662 INFO    ] No camera update needed
[2026-06-13 03:32:13,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:13,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:13,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:13,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:15,711.711 INFO    ] ================================================
[2026-06-13 03:32:15,730.730 INFO    ] Launching Daemon at Sat Jun 13 03:32:15 IST 2026
[2026-06-13 03:32:15,740.740 INFO    ] ================================================
[2026-06-13 03:32:16,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:16
[2026-06-13 03:32:16,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:16,518.518 INFO    ] Initializing speech engine...
[2026-06-13 03:32:16,532.532 INFO    ] 2026-06-13 03:32:16
[2026-06-13 03:32:16,739.739 INFO    ] 2026-06-13 03:32:16
[2026-06-13 03:32:16,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:16,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:16,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:32:17,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:32:17,151.151 INFO    ] time= 13/06/2026 03:32:17
[2026-06-13 03:32:17,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:32:17,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:32:17,262.262 INFO    ] No existing commands found in stream
[2026-06-13 03:32:22,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:32:22,274.274 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 03:32:23,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:32:23,310.310 INFO    ] Checking for system updates...
[2026-06-13 03:32:23,333.333 INFO    ] 200
[2026-06-13 03:32:23,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:23,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:23,370.370 INFO    ] No update needed
[2026-06-13 03:32:23,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:23,394.394 INFO    ] 200
[2026-06-13 03:32:23,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:23,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:23,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:23,466.466 INFO    ] No camera update needed
[2026-06-13 03:32:23,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:23,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:23,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:23,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:25,522.522 INFO    ] ================================================
[2026-06-13 03:32:25,537.537 INFO    ] Launching Daemon at Sat Jun 13 03:32:25 IST 2026
[2026-06-13 03:32:25,548.548 INFO    ] ================================================
[2026-06-13 03:32:25,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:25
[2026-06-13 03:32:26,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:26,346.346 INFO    ] Initializing speech engine...
[2026-06-13 03:32:26,352.352 INFO    ] 2026-06-13 03:32:26
[2026-06-13 03:32:26,564.564 INFO    ] 2026-06-13 03:32:26
[2026-06-13 03:32:26,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:26,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:26,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:32:26,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:32:26,913.913 INFO    ] time= 13/06/2026 03:32:26
[2026-06-13 03:32:26,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:32:27,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:32:27,118.118 INFO    ] No existing commands found in stream
[2026-06-13 03:32:32,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:32:32,131.131 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 03:32:35,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:32:35,508.508 INFO    ] Checking for system updates...
[2026-06-13 03:32:35,530.530 INFO    ] 200
[2026-06-13 03:32:35,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:35,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:32:35,563.563 INFO    ] No update needed
[2026-06-13 03:32:35,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:35,587.587 INFO    ] 200
[2026-06-13 03:32:35,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:35,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:35,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:35,652.652 INFO    ] No camera update needed
[2026-06-13 03:32:35,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:35,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:35,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:35,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:37,699.699 INFO    ] ================================================
[2026-06-13 03:32:37,715.715 INFO    ] Launching Daemon at Sat Jun 13 03:32:37 IST 2026
[2026-06-13 03:32:37,725.725 INFO    ] ================================================
[2026-06-13 03:32:38,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:38
[2026-06-13 03:32:38,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:38,856.856 INFO    ] Initializing speech engine...
[2026-06-13 03:32:38,879.879 INFO    ] 2026-06-13 03:32:38
[2026-06-13 03:32:39,135.135 INFO    ] 2026-06-13 03:32:39
[2026-06-13 03:32:39,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:39,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:39,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:32:39,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:32:39,474.474 INFO    ] time= 13/06/2026 03:32:39
[2026-06-13 03:32:39,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:32:39,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:32:39,589.589 INFO    ] No existing commands found in stream
[2026-06-13 03:32:44,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:32:44,607.607 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 03:32:45,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:32:45,636.636 INFO    ] Checking for system updates...
[2026-06-13 03:32:45,657.657 INFO    ] 200
[2026-06-13 03:32:45,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:45,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:45,691.691 INFO    ] No update needed
[2026-06-13 03:32:45,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:45,712.712 INFO    ] 200
[2026-06-13 03:32:45,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:45,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:45,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:32:45,780.780 INFO    ] No camera update needed
[2026-06-13 03:32:45,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:45,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:45,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:45,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:47,834.834 INFO    ] ================================================
[2026-06-13 03:32:47,849.849 INFO    ] Launching Daemon at Sat Jun 13 03:32:47 IST 2026
[2026-06-13 03:32:47,860.860 INFO    ] ================================================
[2026-06-13 03:32:48,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:48
[2026-06-13 03:32:48,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:48,659.659 INFO    ] Initializing speech engine...
[2026-06-13 03:32:48,665.665 INFO    ] 2026-06-13 03:32:48
[2026-06-13 03:32:48,867.867 INFO    ] 2026-06-13 03:32:48
[2026-06-13 03:32:48,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:49,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:49,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:32:49,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:32:49,328.328 INFO    ] time= 13/06/2026 03:32:49
[2026-06-13 03:32:49,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:32:49,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:32:49,476.476 INFO    ] No existing commands found in stream
[2026-06-13 03:32:54,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:32:54,493.493 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 03:32:56,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:32:56,494.494 INFO    ] Checking for system updates...
[2026-06-13 03:32:56,516.516 INFO    ] 200
[2026-06-13 03:32:56,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:56,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:32:56,558.558 INFO    ] No update needed
[2026-06-13 03:32:56,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 03:32:56,581.581 INFO    ] 200
[2026-06-13 03:32:56,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:32:56,608.608 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:32:56,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:32:56,647.647 INFO    ] No camera update needed
[2026-06-13 03:32:56,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:32:56,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:32:56,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:32:56,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:32:58,694.694 INFO    ] ================================================
[2026-06-13 03:32:58,709.709 INFO    ] Launching Daemon at Sat Jun 13 03:32:58 IST 2026
[2026-06-13 03:32:58,720.720 INFO    ] ================================================
[2026-06-13 03:32:59,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:32:59
[2026-06-13 03:32:59,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:32:59,530.530 INFO    ] Initializing speech engine...
[2026-06-13 03:32:59,536.536 INFO    ] 2026-06-13 03:32:59
[2026-06-13 03:32:59,738.738 INFO    ] 2026-06-13 03:32:59
[2026-06-13 03:32:59,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:32:59,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:32:59,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:00,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:00,149.149 INFO    ] time= 13/06/2026 03:33:00
[2026-06-13 03:33:00,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:00,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:00,254.254 INFO    ] No existing commands found in stream
[2026-06-13 03:33:05,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:05,266.266 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 03:33:05,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:33:05,773.773 INFO    ] Checking for system updates...
[2026-06-13 03:33:05,794.794 INFO    ] 200
[2026-06-13 03:33:05,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:05,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:05,828.828 INFO    ] No update needed
[2026-06-13 03:33:05,829.829 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:05,852.852 INFO    ] 200
[2026-06-13 03:33:05,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:05,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:33:05,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:05,926.926 INFO    ] No camera update needed
[2026-06-13 03:33:05,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:33:05,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:33:05,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:33:05,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:33:07,965.965 INFO    ] ================================================
[2026-06-13 03:33:07,974.974 INFO    ] Launching Daemon at Sat Jun 13 03:33:07 IST 2026
[2026-06-13 03:33:07,980.980 INFO    ] ================================================
[2026-06-13 03:33:08,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:33:08
[2026-06-13 03:33:08,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:33:08,806.806 INFO    ] Initializing speech engine...
[2026-06-13 03:33:08,811.811 INFO    ] 2026-06-13 03:33:08
[2026-06-13 03:33:09,014.014 INFO    ] 2026-06-13 03:33:08
[2026-06-13 03:33:09,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:33:09,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:33:09,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:09,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:09,413.413 INFO    ] time= 13/06/2026 03:33:09
[2026-06-13 03:33:09,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:09,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:09,528.528 INFO    ] No existing commands found in stream
[2026-06-13 03:33:14,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:14,537.537 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 03:33:15,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:33:15,446.446 INFO    ] Checking for system updates...
[2026-06-13 03:33:15,467.467 INFO    ] 200
[2026-06-13 03:33:15,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:15,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:15,501.501 INFO    ] No update needed
[2026-06-13 03:33:15,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:15,521.521 INFO    ] 200
[2026-06-13 03:33:15,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:15,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:33:15,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:15,585.585 INFO    ] No camera update needed
[2026-06-13 03:33:15,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:33:15,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:33:15,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:33:15,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:33:17,633.633 INFO    ] ================================================
[2026-06-13 03:33:17,650.650 INFO    ] Launching Daemon at Sat Jun 13 03:33:17 IST 2026
[2026-06-13 03:33:17,661.661 INFO    ] ================================================
[2026-06-13 03:33:18,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:33:18
[2026-06-13 03:33:18,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:33:18,461.461 INFO    ] Initializing speech engine...
[2026-06-13 03:33:18,466.466 INFO    ] 2026-06-13 03:33:18
[2026-06-13 03:33:18,691.691 INFO    ] 2026-06-13 03:33:18
[2026-06-13 03:33:18,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:33:18,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:33:18,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:18,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:18,991.991 INFO    ] time= 13/06/2026 03:33:18
[2026-06-13 03:33:19,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:19,170.170 INFO    ] No existing commands found in stream
[2026-06-13 03:33:24,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:24,196.196 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 03:33:24,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:33:24,634.634 INFO    ] Checking for system updates...
[2026-06-13 03:33:24,655.655 INFO    ] 200
[2026-06-13 03:33:24,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:24,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:24,693.693 INFO    ] No update needed
[2026-06-13 03:33:24,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:24,713.713 INFO    ] 200
[2026-06-13 03:33:24,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:24,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:33:24,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:33:24,782.782 INFO    ] No camera update needed
[2026-06-13 03:33:24,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:33:24,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:33:24,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:33:24,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:33:26,829.829 INFO    ] ================================================
[2026-06-13 03:33:26,845.845 INFO    ] Launching Daemon at Sat Jun 13 03:33:26 IST 2026
[2026-06-13 03:33:26,855.855 INFO    ] ================================================
[2026-06-13 03:33:27,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:33:27
[2026-06-13 03:33:27,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:33:27,667.667 INFO    ] Initializing speech engine...
[2026-06-13 03:33:27,672.672 INFO    ] 2026-06-13 03:33:27
[2026-06-13 03:33:27,877.877 INFO    ] 2026-06-13 03:33:27
[2026-06-13 03:33:27,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:33:28,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:33:28,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:28,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:28,297.297 INFO    ] time= 13/06/2026 03:33:28
[2026-06-13 03:33:28,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:28,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:28,394.394 INFO    ] No existing commands found in stream
[2026-06-13 03:33:33,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:33,407.407 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 03:33:37,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:33:37,471.471 INFO    ] Checking for system updates...
[2026-06-13 03:33:37,492.492 INFO    ] 200
[2026-06-13 03:33:37,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:37,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:37,526.526 INFO    ] No update needed
[2026-06-13 03:33:37,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:37,549.549 INFO    ] 200
[2026-06-13 03:33:37,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:37,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:33:37,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:37,622.622 INFO    ] No camera update needed
[2026-06-13 03:33:37,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:33:37,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:33:37,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:33:37,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:33:39,671.671 INFO    ] ================================================
[2026-06-13 03:33:39,686.686 INFO    ] Launching Daemon at Sat Jun 13 03:33:39 IST 2026
[2026-06-13 03:33:39,697.697 INFO    ] ================================================
[2026-06-13 03:33:40,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:33:40
[2026-06-13 03:33:40,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:33:40,525.525 INFO    ] Initializing speech engine...
[2026-06-13 03:33:40,535.535 INFO    ] 2026-06-13 03:33:40
[2026-06-13 03:33:40,723.723 INFO    ] 2026-06-13 03:33:40
[2026-06-13 03:33:40,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:33:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:33:41,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:41,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:41,333.333 INFO    ] time= 13/06/2026 03:33:41
[2026-06-13 03:33:41,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:41,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:41,407.407 INFO    ] No existing commands found in stream
[2026-06-13 03:33:46,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:46,420.420 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 03:33:49,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:33:49,712.712 INFO    ] Checking for system updates...
[2026-06-13 03:33:49,732.732 INFO    ] 200
[2026-06-13 03:33:49,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:49,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:49,766.766 INFO    ] No update needed
[2026-06-13 03:33:49,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:49,786.786 INFO    ] 200
[2026-06-13 03:33:49,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:49,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:33:49,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:33:49,850.850 INFO    ] No camera update needed
[2026-06-13 03:33:49,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:33:49,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:33:49,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:33:49,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:33:51,893.893 INFO    ] ================================================
[2026-06-13 03:33:51,901.901 INFO    ] Launching Daemon at Sat Jun 13 03:33:51 IST 2026
[2026-06-13 03:33:51,907.907 INFO    ] ================================================
[2026-06-13 03:33:52,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:33:52
[2026-06-13 03:33:52,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:33:52,700.700 INFO    ] Initializing speech engine...
[2026-06-13 03:33:52,705.705 INFO    ] 2026-06-13 03:33:52
[2026-06-13 03:33:52,913.913 INFO    ] 2026-06-13 03:33:52
[2026-06-13 03:33:52,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:33:53,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:33:53,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:33:53,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:33:53,333.333 INFO    ] time= 13/06/2026 03:33:53
[2026-06-13 03:33:53,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:33:53,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:33:53,430.430 INFO    ] No existing commands found in stream
[2026-06-13 03:33:58,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:33:58,442.442 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 03:33:59,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:33:59,875.875 INFO    ] Checking for system updates...
[2026-06-13 03:33:59,897.897 INFO    ] 200
[2026-06-13 03:33:59,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:59,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:33:59,930.930 INFO    ] No update needed
[2026-06-13 03:33:59,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 03:33:59,951.951 INFO    ] 200
[2026-06-13 03:33:59,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:33:59,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:00,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:00,017.017 INFO    ] No camera update needed
[2026-06-13 03:34:00,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:00,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:00,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:00,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:02,058.058 INFO    ] ================================================
[2026-06-13 03:34:02,071.071 INFO    ] Launching Daemon at Sat Jun 13 03:34:02 IST 2026
[2026-06-13 03:34:02,081.081 INFO    ] ================================================
[2026-06-13 03:34:02,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:02
[2026-06-13 03:34:03,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:03,744.744 INFO    ] Initializing speech engine...
[2026-06-13 03:34:03,760.760 INFO    ] 2026-06-13 03:34:03
[2026-06-13 03:34:04,038.038 INFO    ] 2026-06-13 03:34:04
[2026-06-13 03:34:04,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:04,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:04,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:04,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:04,384.384 INFO    ] time= 13/06/2026 03:34:04
[2026-06-13 03:34:04,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:04,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:04,458.458 INFO    ] No existing commands found in stream
[2026-06-13 03:34:09,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:34:09,478.478 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 03:34:10,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:34:10,420.420 INFO    ] Checking for system updates...
[2026-06-13 03:34:10,442.442 INFO    ] 200
[2026-06-13 03:34:10,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:10,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:10,477.477 INFO    ] No update needed
[2026-06-13 03:34:10,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 03:34:10,498.498 INFO    ] 200
[2026-06-13 03:34:10,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:10,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:10,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:10,662.662 INFO    ] No camera update needed
[2026-06-13 03:34:10,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:10,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:10,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:10,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:12,709.709 INFO    ] ================================================
[2026-06-13 03:34:12,724.724 INFO    ] Launching Daemon at Sat Jun 13 03:34:12 IST 2026
[2026-06-13 03:34:12,735.735 INFO    ] ================================================
[2026-06-13 03:34:13,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:13
[2026-06-13 03:34:13,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:13,534.534 INFO    ] Initializing speech engine...
[2026-06-13 03:34:13,542.542 INFO    ] 2026-06-13 03:34:13
[2026-06-13 03:34:13,765.765 INFO    ] 2026-06-13 03:34:13
[2026-06-13 03:34:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:13,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:13,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:14,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:14,173.173 INFO    ] time= 13/06/2026 03:34:14
[2026-06-13 03:34:14,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:14,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:14,299.299 INFO    ] No existing commands found in stream
[2026-06-13 03:34:19,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:34:19,312.312 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 03:34:21,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:34:21,199.199 INFO    ] Checking for system updates...
[2026-06-13 03:34:21,220.220 INFO    ] 200
[2026-06-13 03:34:21,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:21,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:21,253.253 INFO    ] No update needed
[2026-06-13 03:34:21,254.254 INFO    ] Checking for camera pi updates...
[2026-06-13 03:34:21,274.274 INFO    ] 200
[2026-06-13 03:34:21,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:21,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:21,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:34:21,341.341 INFO    ] No camera update needed
[2026-06-13 03:34:21,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:21,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:21,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:21,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:23,389.389 INFO    ] ================================================
[2026-06-13 03:34:23,405.405 INFO    ] Launching Daemon at Sat Jun 13 03:34:23 IST 2026
[2026-06-13 03:34:23,416.416 INFO    ] ================================================
[2026-06-13 03:34:23,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:23
[2026-06-13 03:34:24,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:24,218.218 INFO    ] Initializing speech engine...
[2026-06-13 03:34:24,224.224 INFO    ] 2026-06-13 03:34:24
[2026-06-13 03:34:24,439.439 INFO    ] 2026-06-13 03:34:24
[2026-06-13 03:34:24,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:24,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:24,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:24,840.840 INFO    ] time= 13/06/2026 03:34:24
[2026-06-13 03:34:24,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:24,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:24,970.970 INFO    ] No existing commands found in stream
[2026-06-13 03:34:29,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:34:29,992.992 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 03:34:32,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:34:32,029.029 INFO    ] Checking for system updates...
[2026-06-13 03:34:32,051.051 INFO    ] 200
[2026-06-13 03:34:32,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:32,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:32,088.088 INFO    ] No update needed
[2026-06-13 03:34:32,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 03:34:32,111.111 INFO    ] 200
[2026-06-13 03:34:32,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:32,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:32,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:32,184.184 INFO    ] No camera update needed
[2026-06-13 03:34:32,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:32,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:32,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:32,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:34,227.227 INFO    ] ================================================
[2026-06-13 03:34:34,243.243 INFO    ] Launching Daemon at Sat Jun 13 03:34:34 IST 2026
[2026-06-13 03:34:34,253.253 INFO    ] ================================================
[2026-06-13 03:34:34,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:34
[2026-06-13 03:34:34,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:35,043.043 INFO    ] Initializing speech engine...
[2026-06-13 03:34:35,051.051 INFO    ] 2026-06-13 03:34:35
[2026-06-13 03:34:35,269.269 INFO    ] 2026-06-13 03:34:35
[2026-06-13 03:34:35,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:35,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:35,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:35,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:35,683.683 INFO    ] time= 13/06/2026 03:34:35
[2026-06-13 03:34:35,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:35,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:35,884.884 INFO    ] No existing commands found in stream
[2026-06-13 03:34:40,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:34:40,912.912 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 03:34:42,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:34:42,643.643 INFO    ] Checking for system updates...
[2026-06-13 03:34:42,664.664 INFO    ] 200
[2026-06-13 03:34:42,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:42,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:34:42,699.699 INFO    ] No update needed
[2026-06-13 03:34:42,701.701 INFO    ] Checking for camera pi updates...
[2026-06-13 03:34:42,721.721 INFO    ] 200
[2026-06-13 03:34:42,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:42,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:42,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:34:42,787.787 INFO    ] No camera update needed
[2026-06-13 03:34:42,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:42,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:42,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:42,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:44,835.835 INFO    ] ================================================
[2026-06-13 03:34:44,850.850 INFO    ] Launching Daemon at Sat Jun 13 03:34:44 IST 2026
[2026-06-13 03:34:44,863.863 INFO    ] ================================================
[2026-06-13 03:34:45,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:45
[2026-06-13 03:34:45,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:45,717.717 INFO    ] Initializing speech engine...
[2026-06-13 03:34:45,723.723 INFO    ] 2026-06-13 03:34:45
[2026-06-13 03:34:45,930.930 INFO    ] 2026-06-13 03:34:45
[2026-06-13 03:34:45,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:46,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:46,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:46,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:46,332.332 INFO    ] time= 13/06/2026 03:34:46
[2026-06-13 03:34:46,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:46,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:46,449.449 INFO    ] No existing commands found in stream
[2026-06-13 03:34:51,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:34:51,461.461 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 03:34:54,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:34:54,040.040 INFO    ] Checking for system updates...
[2026-06-13 03:34:54,061.061 INFO    ] 200
[2026-06-13 03:34:54,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:54,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:54,191.191 INFO    ] No update needed
[2026-06-13 03:34:54,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 03:34:54,229.229 INFO    ] 200
[2026-06-13 03:34:54,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:34:54,268.268 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:34:54,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:34:54,316.316 INFO    ] No camera update needed
[2026-06-13 03:34:54,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:34:54,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:34:54,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:34:54,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:34:56,350.350 INFO    ] ================================================
[2026-06-13 03:34:56,359.359 INFO    ] Launching Daemon at Sat Jun 13 03:34:56 IST 2026
[2026-06-13 03:34:56,366.366 INFO    ] ================================================
[2026-06-13 03:34:56,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:34:56
[2026-06-13 03:34:56,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:34:57,128.128 INFO    ] Initializing speech engine...
[2026-06-13 03:34:57,137.137 INFO    ] 2026-06-13 03:34:57
[2026-06-13 03:34:57,343.343 INFO    ] 2026-06-13 03:34:57
[2026-06-13 03:34:57,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:34:57,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:34:57,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:34:57,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:34:57,775.775 INFO    ] time= 13/06/2026 03:34:57
[2026-06-13 03:34:57,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:34:57,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:34:57,933.933 INFO    ] No existing commands found in stream
[2026-06-13 03:35:02,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:02,946.946 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 03:35:04,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:35:04,920.920 INFO    ] Checking for system updates...
[2026-06-13 03:35:04,942.942 INFO    ] 200
[2026-06-13 03:35:04,944.944 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:04,945.945 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 03:35:04,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:04,974.974 INFO    ] 200
[2026-06-13 03:35:04,975.975 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:04,977.977 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 03:35:04,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:04,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:04,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:04,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:35:07,018.018 INFO    ] ================================================
[2026-06-13 03:35:07,034.034 INFO    ] Launching Daemon at Sat Jun 13 03:35:07 IST 2026
[2026-06-13 03:35:07,045.045 INFO    ] ================================================
[2026-06-13 03:35:07,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:35:07
[2026-06-13 03:35:07,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:35:07,852.852 INFO    ] Initializing speech engine...
[2026-06-13 03:35:07,860.860 INFO    ] 2026-06-13 03:35:07
[2026-06-13 03:35:08,072.072 INFO    ] 2026-06-13 03:35:08
[2026-06-13 03:35:08,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:35:08,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:35:08,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:35:08,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:35:08,476.476 INFO    ] time= 13/06/2026 03:35:08
[2026-06-13 03:35:08,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:35:08,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:35:08,592.592 INFO    ] No existing commands found in stream
[2026-06-13 03:35:13,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:13,605.605 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 03:35:14,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:35:14,135.135 INFO    ] Checking for system updates...
[2026-06-13 03:35:14,156.156 INFO    ] 200
[2026-06-13 03:35:14,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:14,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:14,207.207 INFO    ] No update needed
[2026-06-13 03:35:14,209.209 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:14,229.229 INFO    ] 200
[2026-06-13 03:35:14,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:14,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:35:14,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:14,293.293 INFO    ] No camera update needed
[2026-06-13 03:35:14,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:14,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:14,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:14,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:35:16,334.334 INFO    ] ================================================
[2026-06-13 03:35:16,343.343 INFO    ] Launching Daemon at Sat Jun 13 03:35:16 IST 2026
[2026-06-13 03:35:16,349.349 INFO    ] ================================================
[2026-06-13 03:35:16,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:35:16
[2026-06-13 03:35:17,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:35:17,722.722 INFO    ] Initializing speech engine...
[2026-06-13 03:35:17,731.731 INFO    ] 2026-06-13 03:35:17
[2026-06-13 03:35:17,981.981 INFO    ] 2026-06-13 03:35:17
[2026-06-13 03:35:18,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:35:18,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:35:18,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:35:18,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:35:18,322.322 INFO    ] time= 13/06/2026 03:35:18
[2026-06-13 03:35:18,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:35:18,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:35:18,437.437 INFO    ] No existing commands found in stream
[2026-06-13 03:35:23,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:23,452.452 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 03:35:26,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:35:26,900.900 INFO    ] Checking for system updates...
[2026-06-13 03:35:26,923.923 INFO    ] 200
[2026-06-13 03:35:26,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:26,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:35:26,957.957 INFO    ] No update needed
[2026-06-13 03:35:26,959.959 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:26,979.979 INFO    ] 200
[2026-06-13 03:35:26,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:27,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:35:27,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:27,043.043 INFO    ] No camera update needed
[2026-06-13 03:35:27,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:27,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:27,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:27,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:35:29,092.092 INFO    ] ================================================
[2026-06-13 03:35:29,107.107 INFO    ] Launching Daemon at Sat Jun 13 03:35:29 IST 2026
[2026-06-13 03:35:29,119.119 INFO    ] ================================================
[2026-06-13 03:35:29,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:35:29
[2026-06-13 03:35:29,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:35:29,995.995 INFO    ] Initializing speech engine...
[2026-06-13 03:35:30,002.002 INFO    ] 2026-06-13 03:35:29
[2026-06-13 03:35:30,212.212 INFO    ] 2026-06-13 03:35:30
[2026-06-13 03:35:30,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:35:30,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:35:30,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:35:30,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:35:30,627.627 INFO    ] time= 13/06/2026 03:35:30
[2026-06-13 03:35:30,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:35:30,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:35:30,732.732 INFO    ] No existing commands found in stream
[2026-06-13 03:35:35,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:35,745.745 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 03:35:37,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:35:37,520.520 INFO    ] Checking for system updates...
[2026-06-13 03:35:37,557.557 INFO    ] 200
[2026-06-13 03:35:37,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:37,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:35:37,617.617 INFO    ] No update needed
[2026-06-13 03:35:37,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:37,640.640 INFO    ] 200
[2026-06-13 03:35:37,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:37,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:35:37,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:35:37,707.707 INFO    ] No camera update needed
[2026-06-13 03:35:37,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:37,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:37,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:37,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:35:39,760.760 INFO    ] ================================================
[2026-06-13 03:35:39,775.775 INFO    ] Launching Daemon at Sat Jun 13 03:35:39 IST 2026
[2026-06-13 03:35:39,786.786 INFO    ] ================================================
[2026-06-13 03:35:40,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:35:40
[2026-06-13 03:35:40,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:35:40,668.668 INFO    ] Initializing speech engine...
[2026-06-13 03:35:40,673.673 INFO    ] 2026-06-13 03:35:40
[2026-06-13 03:35:40,883.883 INFO    ] 2026-06-13 03:35:40
[2026-06-13 03:35:40,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:35:41,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:35:41,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:35:41,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:35:41,301.301 INFO    ] time= 13/06/2026 03:35:41
[2026-06-13 03:35:41,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:35:41,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:35:41,451.451 INFO    ] No existing commands found in stream
[2026-06-13 03:35:46,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:46,465.465 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 03:35:48,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:35:48,886.886 INFO    ] Checking for system updates...
[2026-06-13 03:35:48,909.909 INFO    ] 200
[2026-06-13 03:35:48,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:48,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:48,944.944 INFO    ] No update needed
[2026-06-13 03:35:48,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:48,965.965 INFO    ] 200
[2026-06-13 03:35:48,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:48,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:35:49,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:49,031.031 INFO    ] No camera update needed
[2026-06-13 03:35:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:49,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:49,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:35:51,082.082 INFO    ] ================================================
[2026-06-13 03:35:51,097.097 INFO    ] Launching Daemon at Sat Jun 13 03:35:51 IST 2026
[2026-06-13 03:35:51,108.108 INFO    ] ================================================
[2026-06-13 03:35:51,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:35:51
[2026-06-13 03:35:51,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:35:51,959.959 INFO    ] Initializing speech engine...
[2026-06-13 03:35:51,964.964 INFO    ] 2026-06-13 03:35:51
[2026-06-13 03:35:52,171.171 INFO    ] 2026-06-13 03:35:52
[2026-06-13 03:35:52,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:35:52,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:35:52,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:35:52,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:35:52,584.584 INFO    ] time= 13/06/2026 03:35:52
[2026-06-13 03:35:52,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:35:52,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:35:52,690.690 INFO    ] No existing commands found in stream
[2026-06-13 03:35:57,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:35:57,713.713 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 03:35:58,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:35:58,723.723 INFO    ] Checking for system updates...
[2026-06-13 03:35:58,744.744 INFO    ] 200
[2026-06-13 03:35:58,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:58,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:58,778.778 INFO    ] No update needed
[2026-06-13 03:35:58,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 03:35:58,799.799 INFO    ] 200
[2026-06-13 03:35:58,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:35:58,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:35:58,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:35:58,863.863 INFO    ] No camera update needed
[2026-06-13 03:35:58,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:35:58,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:35:58,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:35:58,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:00,912.912 INFO    ] ================================================
[2026-06-13 03:36:00,927.927 INFO    ] Launching Daemon at Sat Jun 13 03:36:00 IST 2026
[2026-06-13 03:36:00,938.938 INFO    ] ================================================
[2026-06-13 03:36:01,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:01
[2026-06-13 03:36:01,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:01,965.965 INFO    ] Initializing speech engine...
[2026-06-13 03:36:01,973.973 INFO    ] 2026-06-13 03:36:01
[2026-06-13 03:36:02,237.237 INFO    ] 2026-06-13 03:36:02
[2026-06-13 03:36:02,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:02,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:02,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:02,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:02,661.661 INFO    ] time= 13/06/2026 03:36:02
[2026-06-13 03:36:02,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:02,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:02,771.771 INFO    ] No existing commands found in stream
[2026-06-13 03:36:07,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:36:07,784.784 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 03:36:08,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:36:08,331.331 INFO    ] Checking for system updates...
[2026-06-13 03:36:08,351.351 INFO    ] 200
[2026-06-13 03:36:08,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:08,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:36:08,385.385 INFO    ] No update needed
[2026-06-13 03:36:08,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 03:36:08,406.406 INFO    ] 200
[2026-06-13 03:36:08,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:08,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:36:08,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:36:08,482.482 INFO    ] No camera update needed
[2026-06-13 03:36:08,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:36:08,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:36:08,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:36:08,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:10,523.523 INFO    ] ================================================
[2026-06-13 03:36:10,531.531 INFO    ] Launching Daemon at Sat Jun 13 03:36:10 IST 2026
[2026-06-13 03:36:10,537.537 INFO    ] ================================================
[2026-06-13 03:36:10,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:10
[2026-06-13 03:36:11,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:11,303.303 INFO    ] Initializing speech engine...
[2026-06-13 03:36:11,316.316 INFO    ] 2026-06-13 03:36:11
[2026-06-13 03:36:11,542.542 INFO    ] 2026-06-13 03:36:11
[2026-06-13 03:36:11,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:11,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:11,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:11,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:11,913.913 INFO    ] time= 13/06/2026 03:36:11
[2026-06-13 03:36:11,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:11,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:12,053.053 INFO    ] No existing commands found in stream
[2026-06-13 03:36:17,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:36:17,073.073 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 03:36:17,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:36:17,988.988 INFO    ] Checking for system updates...
[2026-06-13 03:36:18,010.010 INFO    ] 200
[2026-06-13 03:36:18,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:18,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:18,046.046 INFO    ] No update needed
[2026-06-13 03:36:18,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 03:36:18,067.067 INFO    ] 200
[2026-06-13 03:36:18,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:18,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:36:18,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:18,231.231 INFO    ] No camera update needed
[2026-06-13 03:36:18,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:36:18,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:36:18,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:36:18,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:20,280.280 INFO    ] ================================================
[2026-06-13 03:36:20,296.296 INFO    ] Launching Daemon at Sat Jun 13 03:36:20 IST 2026
[2026-06-13 03:36:20,306.306 INFO    ] ================================================
[2026-06-13 03:36:20,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:20
[2026-06-13 03:36:20,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:21,086.086 INFO    ] Initializing speech engine...
[2026-06-13 03:36:21,091.091 INFO    ] 2026-06-13 03:36:21
[2026-06-13 03:36:21,296.296 INFO    ] 2026-06-13 03:36:21
[2026-06-13 03:36:21,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:21,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:21,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:21,707.707 INFO    ] time= 13/06/2026 03:36:21
[2026-06-13 03:36:21,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:21,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:21,890.890 INFO    ] No existing commands found in stream
[2026-06-13 03:36:26,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:36:26,904.904 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 03:36:30,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:36:30,724.724 INFO    ] Checking for system updates...
[2026-06-13 03:36:30,744.744 INFO    ] 200
[2026-06-13 03:36:30,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:30,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:30,778.778 INFO    ] No update needed
[2026-06-13 03:36:30,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 03:36:30,801.801 INFO    ] 200
[2026-06-13 03:36:30,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:30,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:36:30,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:30,864.864 INFO    ] No camera update needed
[2026-06-13 03:36:30,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:36:30,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:36:30,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:36:30,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:32,906.906 INFO    ] ================================================
[2026-06-13 03:36:32,923.923 INFO    ] Launching Daemon at Sat Jun 13 03:36:32 IST 2026
[2026-06-13 03:36:32,937.937 INFO    ] ================================================
[2026-06-13 03:36:33,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:33
[2026-06-13 03:36:33,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:33,741.741 INFO    ] Initializing speech engine...
[2026-06-13 03:36:33,746.746 INFO    ] 2026-06-13 03:36:33
[2026-06-13 03:36:33,955.955 INFO    ] 2026-06-13 03:36:33
[2026-06-13 03:36:33,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:34,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:34,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:34,306.306 INFO    ] time= 13/06/2026 03:36:34
[2026-06-13 03:36:34,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:34,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:34,473.473 INFO    ] No existing commands found in stream
[2026-06-13 03:36:39,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:36:39,486.486 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 03:36:43,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:36:43,493.493 INFO    ] Checking for system updates...
[2026-06-13 03:36:43,514.514 INFO    ] 200
[2026-06-13 03:36:43,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:43,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:36:43,549.549 INFO    ] No update needed
[2026-06-13 03:36:43,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 03:36:43,569.569 INFO    ] 200
[2026-06-13 03:36:43,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:43,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:36:43,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:36:43,617.617 INFO    ] No camera update needed
[2026-06-13 03:36:43,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:36:43,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:36:43,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:36:43,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:45,665.665 INFO    ] ================================================
[2026-06-13 03:36:45,680.680 INFO    ] Launching Daemon at Sat Jun 13 03:36:45 IST 2026
[2026-06-13 03:36:45,692.692 INFO    ] ================================================
[2026-06-13 03:36:46,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:46
[2026-06-13 03:36:46,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:46,566.566 INFO    ] Initializing speech engine...
[2026-06-13 03:36:46,572.572 INFO    ] 2026-06-13 03:36:46
[2026-06-13 03:36:46,780.780 INFO    ] 2026-06-13 03:36:46
[2026-06-13 03:36:46,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:46,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:47,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:47,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:47,196.196 INFO    ] time= 13/06/2026 03:36:47
[2026-06-13 03:36:47,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:47,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:47,296.296 INFO    ] No existing commands found in stream
[2026-06-13 03:36:52,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:36:52,309.309 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 03:36:54,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:36:54,043.043 INFO    ] Checking for system updates...
[2026-06-13 03:36:54,064.064 INFO    ] 200
[2026-06-13 03:36:54,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:54,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:54,100.100 INFO    ] No update needed
[2026-06-13 03:36:54,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 03:36:54,123.123 INFO    ] 200
[2026-06-13 03:36:54,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:36:54,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:36:54,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:36:54,194.194 INFO    ] No camera update needed
[2026-06-13 03:36:54,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:36:54,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:36:54,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:36:54,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:36:56,244.244 INFO    ] ================================================
[2026-06-13 03:36:56,260.260 INFO    ] Launching Daemon at Sat Jun 13 03:36:56 IST 2026
[2026-06-13 03:36:56,271.271 INFO    ] ================================================
[2026-06-13 03:36:56,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:36:56
[2026-06-13 03:36:56,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:36:57,076.076 INFO    ] Initializing speech engine...
[2026-06-13 03:36:57,086.086 INFO    ] 2026-06-13 03:36:57
[2026-06-13 03:36:57,292.292 INFO    ] 2026-06-13 03:36:57
[2026-06-13 03:36:57,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:36:57,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:36:57,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:36:57,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:36:57,695.695 INFO    ] time= 13/06/2026 03:36:57
[2026-06-13 03:36:57,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:36:57,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:36:57,804.804 INFO    ] No existing commands found in stream
[2026-06-13 03:37:02,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:37:02,817.817 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 03:37:06,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:37:06,915.915 INFO    ] Checking for system updates...
[2026-06-13 03:37:06,937.937 INFO    ] 200
[2026-06-13 03:37:06,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:06,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:37:06,971.971 INFO    ] No update needed
[2026-06-13 03:37:06,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 03:37:06,992.992 INFO    ] 200
[2026-06-13 03:37:06,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:07,017.017 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:37:07,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:37:07,061.061 INFO    ] No camera update needed
[2026-06-13 03:37:07,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:37:07,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:37:07,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:37:07,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:37:09,111.111 INFO    ] ================================================
[2026-06-13 03:37:09,127.127 INFO    ] Launching Daemon at Sat Jun 13 03:37:09 IST 2026
[2026-06-13 03:37:09,138.138 INFO    ] ================================================
[2026-06-13 03:37:09,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:37:09
[2026-06-13 03:37:09,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:37:09,939.939 INFO    ] Initializing speech engine...
[2026-06-13 03:37:09,942.942 INFO    ] 2026-06-13 03:37:09
[2026-06-13 03:37:10,157.157 INFO    ] 2026-06-13 03:37:10
[2026-06-13 03:37:10,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:37:10,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:37:10,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:37:10,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:37:10,570.570 INFO    ] time= 13/06/2026 03:37:10
[2026-06-13 03:37:10,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:37:10,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:37:10,676.676 INFO    ] No existing commands found in stream
[2026-06-13 03:37:15,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:37:15,688.688 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 03:37:17,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:37:17,053.053 INFO    ] Checking for system updates...
[2026-06-13 03:37:17,075.075 INFO    ] 200
[2026-06-13 03:37:17,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:17,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:37:17,108.108 INFO    ] No update needed
[2026-06-13 03:37:17,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 03:37:17,130.130 INFO    ] 200
[2026-06-13 03:37:17,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:17,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:37:17,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:37:17,201.201 INFO    ] No camera update needed
[2026-06-13 03:37:17,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:37:17,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:37:17,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:37:17,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:37:19,257.257 INFO    ] ================================================
[2026-06-13 03:37:19,274.274 INFO    ] Launching Daemon at Sat Jun 13 03:37:19 IST 2026
[2026-06-13 03:37:19,286.286 INFO    ] ================================================
[2026-06-13 03:37:19,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:37:19
[2026-06-13 03:37:20,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:37:20,953.953 INFO    ] Initializing speech engine...
[2026-06-13 03:37:20,962.962 INFO    ] 2026-06-13 03:37:20
[2026-06-13 03:37:21,241.241 INFO    ] 2026-06-13 03:37:21
[2026-06-13 03:37:21,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:37:21,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:37:21,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:37:21,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:37:21,704.704 INFO    ] time= 13/06/2026 03:37:21
[2026-06-13 03:37:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:37:21,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:37:21,901.901 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 03:37:21,946.946 INFO    ] Checking historical command: ID=1781302041234-0
[2026-06-13 03:37:22,013.013 INFO    ] process_and_cleanup_command: msg_id=1781302041234-0
[2026-06-13 03:37:22,046.046 INFO    ] is_command_expired: timestamp=2026-06-12T22:07:21.572Z, expiry=30s
[2026-06-13 03:37:22,130.130 INFO    ] Command removed from stream: 1781302041234-0. returning for processing...
[2026-06-13 03:37:22,133.133 INFO    ] ***** get_valid_command
[2026-06-13 03:37:22,159.159 INFO    ] {'timeout': '10', 'timestamp': '2026-06-12T22:07:21.572Z', 'source': 'webapp', 'data': '{"request_id":"start-order-1781302041572-dfwy01ufu","orderId":"TM08202203260613033626259","is_vending":false}', 'command': 'start-order'}
[2026-06-13 03:37:22,166.166 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613033626259', 'is_vending': False, 'request_id': 'start-order-1781302041572-dfwy01ufu'}
[2026-06-13 03:37:22,189.189 INFO    ] Handling start order...
[2026-06-13 03:37:22,191.191 INFO    ] handle_start_order_command
[2026-06-13 03:37:22,197.197 INFO    ] _send_start_order_success: request_id=start-order-1781302041572-dfwy01ufu, order_id=TM08202203260613033626259
[2026-06-13 03:37:22,200.200 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:37:22,269.269 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302042220-0
[2026-06-13 03:37:22,273.273 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:37:22,277.277 INFO    ] Checking for system updates...
[2026-06-13 03:37:22,305.305 INFO    ] 200
[2026-06-13 03:37:22,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:22,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:37:22,349.349 INFO    ] No update needed
[2026-06-13 03:37:22,352.352 INFO    ] Checking for camera pi updates...
[2026-06-13 03:37:22,376.376 INFO    ] 200
[2026-06-13 03:37:22,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:22,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:37:22,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:37:22,455.455 INFO    ] No camera update needed
[2026-06-13 03:37:22,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:37:22,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:37:22,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:37:22,553.553 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:37:22,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:37:24,612.612 INFO    ] ================================================
[2026-06-13 03:37:24,629.629 INFO    ] Launching Daemon at Sat Jun 13 03:37:24 IST 2026
[2026-06-13 03:37:24,640.640 INFO    ] ================================================
[2026-06-13 03:37:24,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:37:24
[2026-06-13 03:37:25,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:37:25,441.441 INFO    ] Initializing speech engine...
[2026-06-13 03:37:25,444.444 INFO    ] 2026-06-13 03:37:25
[2026-06-13 03:37:25,649.649 INFO    ] 2026-06-13 03:37:25
[2026-06-13 03:37:25,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:37:25,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:37:25,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:37:25,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:37:26,064.064 INFO    ] time= 13/06/2026 03:37:26
[2026-06-13 03:37:26,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:37:26,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:37:26,167.167 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 03:37:26,170.170 INFO    ] Checking historical command: ID=1781302042220-0
[2026-06-13 03:37:26,172.172 INFO    ] process_and_cleanup_command: msg_id=1781302042220-0
[2026-06-13 03:37:26,197.197 INFO    ] is_command_expired: timestamp=2026-06-12T22:07:22.198411Z, expiry=30s
[2026-06-13 03:37:26,308.308 INFO    ] Command removed from stream: 1781302042220-0. returning for processing...
[2026-06-13 03:37:26,312.312 INFO    ] ***** get_valid_command
[2026-06-13 03:37:26,315.315 INFO    ] {'metadata_order_id': 'TM08202203260613033626259', 'status': 'success', 'imei': 'TM08202203', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781302041572-dfwy01ufu', 'timestamp': '2026-06-12T22:07:22.198411Z', 'message': 'start-order success'}
[2026-06-13 03:37:26,319.319 INFO    ] Checking historical command: ID=1781302044462-0
[2026-06-13 03:37:26,323.323 INFO    ] process_and_cleanup_command: msg_id=1781302044462-0
[2026-06-13 03:37:26,326.326 INFO    ] is_command_expired: timestamp=2026-06-12T22:07:24.828Z, expiry=30s
[2026-06-13 03:37:26,367.367 INFO    ] Command removed from stream: 1781302044462-0. returning for processing...
[2026-06-13 03:37:26,371.371 INFO    ] ***** get_valid_command
[2026-06-13 03:37:26,373.373 INFO    ] {'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-12T22:07:24.828Z', 'data': '{"request_id":"process-order-1781302044828-3k874z2vi","orderId":"TM08202203260613033626259","is_vending":false,"accessCode":"10294212"}'}
[2026-06-13 03:37:26,377.377 INFO    ] ***** Parsed command data: {'accessCode': '10294212', 'request_id': 'process-order-1781302044828-3k874z2vi', 'is_vending': False, 'orderId': 'TM08202203260613033626259'}
[2026-06-13 03:37:26,380.380 INFO    ] Handling process order...
[2026-06-13 03:37:26,383.383 INFO    ] Processing process-order command...
[2026-06-13 03:37:26,387.387 INFO    ] 🔍 Lock file Order ID: TM08202203260613033626259, TS: 2026-06-13 03:37:22
[2026-06-13 03:37:26,395.395 INFO    ] ✅ Order lock valid for TM08202203260613033626259
[2026-06-13 03:37:26,398.398 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 03:37:26,400.400 INFO    ] processing access code 10294212 for order TM08202203260613033626259
[2026-06-13 03:37:26,404.404 INFO    ] 🔍 Lock file Order ID: TM08202203260613033626259, TS: 2026-06-13 03:37:22
[2026-06-13 03:37:26,407.407 INFO    ] ✅ Order lock valid for TM08202203260613033626259
[2026-06-13 03:37:26,410.410 INFO    ] 2026-06-13 03:37:26
[2026-06-13 03:37:26,441.441 INFO    ] 200
[2026-06-13 03:37:26,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:37:26,449.449 INFO    ] 10294212
[2026-06-13 03:37:26,453.453 INFO    ] 2026-06-13 03:37:26
[2026-06-13 03:37:26,457.457 INFO    ] session id :719880668
[2026-06-13 03:37:26,461.461 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=10294212&imei=TM08202203&session_id=719880668
[2026-06-13 03:37:27,408.408 INFO    ] 200
[2026-06-13 03:37:27,422.422 INFO    ] {"data": {"mobile": "8660081695", "order_id": "TM08202203260613033626259", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}], "access_code": "10294212", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 03:37:27,433.433 INFO    ] 40
[2026-06-13 03:37:27,458.458 INFO    ] TM08202203260613033626259
[2026-06-13 03:37:27,484.484 INFO    ] 8660081695
[2026-06-13 03:37:27,539.539 INFO    ] 2026-06-13 03:37:27
[2026-06-13 03:37:27,545.545 INFO    ] Door Opening for user mobile ending with  one six nine five 
[2026-06-13 03:37:27,554.554 INFO    ] Door Opening for user mobile ending with  one six nine five 
[2026-06-13 03:37:27,563.563 INFO    ] f1e445389dfeffae4a05359d50698786
[2026-06-13 03:37:27,609.609 INFO    ] 2026-06-13 03:37:27
[2026-06-13 03:37:27,617.617 INFO    ] playing audio file
[2026-06-13 03:37:27,652.652 INFO    ] 2026-06-13 03:37:27
[2026-06-13 03:37:27,658.658 INFO    ] 2026-06-13 03:37:27
[2026-06-13 03:37:27,670.670 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:27,679.679 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:27,809.809 INFO    ] [publish_status] Message added to stream with ID: 1781302047709-0
[2026-06-13 03:37:27,857.857 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'order-started', 'server_response': '{"status": true, "rstatus": true, "data": {"mobile": "8660081695", "proposed_sku_json": [{"unit_price": 10, "skuid": "4500687", "mrp": "10", "tray_id": "23", "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "sku_total": 10, "offer_id": "", "qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm ", "door_id": "1", "offer_desc": ""}, {"unit_price": 30, "skuid": "186084", "mrp": "30", "tray_id": "40", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30, "offer_id": "", "qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "door_id": "2", "offer_desc": ""}], "order_id": "TM08202203260613033626259", "bill_amount": "40", "invoice_bill": "40", "access_code": "10294212"}, "msg": "Order Data"}', 'timestamp': '2026-06-12T22:07:27.660608Z'} (ID: 1781302047709-0)
[2026-06-13 03:37:28,268.268 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'data': {'mobile': '8660081695', 'proposed_sku_json': [{'unit_price': 10, 'skuid': '4500687', 'mrp': '10', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'door_id': '1', 'offer_desc': ''}, {'unit_price': 30, 'skuid': '186084', 'mrp': '30', 'tray_id': '40', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'offer_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'door_id': '2', 'offer_desc': ''}], 'order_id': 'TM08202203260613033626259', 'bill_amount': '40', 'invoice_bill': '40', 'access_code': '10294212'}, 'msg': 'Order Data'}}
[2026-06-13 03:37:28,271.271 INFO    ] 200
[2026-06-13 03:37:28,273.273 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"order-started","server_response":{"status":true,"rstatus":true,"data":{"mobile":"8660081695","proposed_sku_json":[{"unit_price":10,"skuid":"4500687","mrp":"10","tray_id":"23","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","sku_total":10,"offer_id":"","qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm ","door_id":"1","offer_desc":""},{"unit_price":30,"skuid":"186084","mrp":"30","tray_id":"40","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","sku_total":30,"offer_id":"","qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g","door_id":"2","offer_desc":""}],"order_id":"TM08202203260613033626259","bill_amount":"40","invoice_bill":"40","access_code":"10294212"},"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:37:28,277.277 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'data': {'mobile': '8660081695', 'proposed_sku_json': [{'skuid': '4500687', 'unit_price': 10, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10, 'door_id': '1', 'offer_id': '', 'qty': 1, 'mrp': '10', 'tray_id': '23', 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}, {'skuid': '186084', 'unit_price': 30, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'door_id': '2', 'offer_id': '', 'qty': 1, 'mrp': '30', 'tray_id': '40', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'order_id': 'TM08202203260613033626259', 'bill_amount': '40', 'invoice_bill': '40', 'access_code': '10294212'}, 'msg': 'Order Data'}}}
[2026-06-13 03:37:28,280.280 INFO    ] 2026-06-13 03:37:28
[2026-06-13 03:37:28,336.336 INFO    ] 200
[2026-06-13 03:37:28,340.340 INFO    ] True
[2026-06-13 03:37:28,500.500 INFO    ] 200
[2026-06-13 03:37:28,503.503 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:28,508.508 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 03:37:28,511.511 INFO    ] *** process_order ***
[2026-06-13 03:37:29,742.742 INFO    ] 200
[2026-06-13 03:37:29,744.744 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:37:29,746.746 INFO    ] {'delay': 0, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 03:37:29,747.747 INFO    ] *** process_order ***
[2026-06-13 03:37:29,749.749 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:29,751.751 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:29,800.800 INFO    ] [publish_status] Message added to stream with ID: 1781302049770-0
[2026-06-13 03:37:29,801.801 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'doorOpened', 'server_response': '{"status": "True", "rstatus": true, "voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781302049770-0)
[2026-06-13 03:37:30,844.844 INFO    ] 2026-06-13 03:37:30
[2026-06-13 03:37:30,847.847 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:30,850.850 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:30,923.923 INFO    ] [publish_status] Message added to stream with ID: 1781302050892-0
[2026-06-13 03:37:30,927.927 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'processOrder', 'server_response': '{"delay": 0, "rstatus": true, "status": "True", "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}}', 'timestamp': '2026-06-12T22:07:30.845831Z'} (ID: 1781302050892-0)
[2026-06-13 03:37:31,040.040 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-13 03:37:31,044.044 INFO    ] 200
[2026-06-13 03:37:31,047.047 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"processOrder","server_response":{"delay":0,"rstatus":true,"status":"true","voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:37:31,051.051 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'processOrder', 'server_response': {'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}}}}
[2026-06-13 03:37:31,055.055 INFO    ] 2026-06-13 03:37:31
[2026-06-13 03:37:31,058.058 INFO    ] None
[2026-06-13 03:37:31,061.061 INFO    ] Opening Door now
[2026-06-13 03:37:31,063.063 INFO    ] Opening Door now
[2026-06-13 03:37:31,066.066 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 03:37:31,069.069 INFO    ] 2026-06-13 03:37:31
[2026-06-13 03:37:31,072.072 INFO    ] playing audio file
[2026-06-13 03:37:31,093.093 INFO    ] 2026-06-13 03:37:31
[2026-06-13 03:37:31,096.096 INFO    ] 2026-06-13 03:37:31
[2026-06-13 03:37:34,157.157 INFO    ] 200
[2026-06-13 03:37:34,160.160 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:34,162.162 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:37,320.320 INFO    ] 200
[2026-06-13 03:37:37,324.324 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:37,328.328 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:40,364.364 INFO    ] 200
[2026-06-13 03:37:40,366.366 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:40,367.367 INFO    ] Please close door 1
[2026-06-13 03:37:40,369.369 INFO    ] Please close door 1
[2026-06-13 03:37:40,371.371 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 03:37:40,373.373 INFO    ] 2026-06-13 03:37:40
[2026-06-13 03:37:40,374.374 INFO    ] playing audio file
[2026-06-13 03:37:40,385.385 INFO    ] 2026-06-13 03:37:40
[2026-06-13 03:37:40,387.387 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:40,389.389 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:40,473.473 INFO    ] [publish_status] Message added to stream with ID: 1781302060442-0
[2026-06-13 03:37:40,475.475 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': '{"status": "False", "rstatus": false, "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-12T22:07:40.386426Z'} (ID: 1781302060442-0)
[2026-06-13 03:37:40,795.795 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 03:37:40,796.796 INFO    ] 200
[2026-06-13 03:37:40,798.798 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"OrderStatus","server_response":{"status":"false","rstatus":false,"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:37:40,800.800 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 03:37:40,802.802 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:43,842.842 INFO    ] 200
[2026-06-13 03:37:43,843.843 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:43,845.845 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:46,884.884 INFO    ] 200
[2026-06-13 03:37:46,885.885 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:46,887.887 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:49,919.919 INFO    ] 200
[2026-06-13 03:37:49,920.920 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:49,922.922 INFO    ] Door 1 is closed now
[2026-06-13 03:37:49,923.923 INFO    ] Door 1 is closed now
[2026-06-13 03:37:49,925.925 INFO    ] 79348d1518d22771c2b1ed3008436097
[2026-06-13 03:37:49,928.928 INFO    ] 2026-06-13 03:37:49
[2026-06-13 03:37:49,931.931 INFO    ] playing audio file
[2026-06-13 03:37:49,950.950 INFO    ] 2026-06-13 03:37:49
[2026-06-13 03:37:49,954.954 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:49,957.957 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:50,039.039 INFO    ] [publish_status] Message added to stream with ID: 1781302070008-0
[2026-06-13 03:37:50,042.042 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': '{"delay": 1000, "rstatus": false, "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "voiceNote": "Door 1 is closed now", "SectionSKU": {"skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate", "UI_Header": "DOOR 1\\nIS \\nCLOSED \\nNOW", "Header": "Door 1 is closed now"}, "status": "False", "SectionMain": {"Header": "Door Close"}}', 'timestamp': '2026-06-12T22:07:49.952144Z'} (ID: 1781302070008-0)
[2026-06-13 03:37:50,455.455 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'delay': 1000, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now'}, 'status': 'False', 'SectionMain': {'Header': 'Door Close'}}}
[2026-06-13 03:37:50,458.458 INFO    ] 200
[2026-06-13 03:37:50,461.461 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"OrderStatus","server_response":{"delay":1000,"rstatus":false,"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"voiceNote":"Door 1 is closed now","SectionSKU":{"skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"If any due amount, clear at https:\/\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"DOOR 1\nIS \nCLOSED \nNOW","Header":"Door 1 is closed now"},"status":"false","SectionMain":{"Header":"Door Close"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:37:50,466.466 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'delay': 1000, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': 'Door 1 is closed now', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'false', 'SectionMain': {'Header': 'Door Close'}}}}
[2026-06-13 03:37:50,469.469 INFO    ] {'delay': 1000, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now'}, 'status': 'False', 'SectionMain': {'Header': 'Door Close'}}
[2026-06-13 03:37:53,505.505 INFO    ] 200
[2026-06-13 03:37:53,506.506 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:53,508.508 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:56,570.570 INFO    ] 200
[2026-06-13 03:37:56,572.572 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:56,576.576 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:37:59,606.606 INFO    ] 200
[2026-06-13 03:37:59,608.608 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:37:59,609.609 INFO    ] Please close door 2
[2026-06-13 03:37:59,611.611 INFO    ] Please close door 2
[2026-06-13 03:37:59,612.612 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 03:37:59,613.613 INFO    ] 2026-06-13 03:37:59
[2026-06-13 03:37:59,615.615 INFO    ] playing audio file
[2026-06-13 03:37:59,625.625 INFO    ] 2026-06-13 03:37:59
[2026-06-13 03:37:59,627.627 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:37:59,629.629 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:37:59,693.693 INFO    ] [publish_status] Message added to stream with ID: 1781302079663-0
[2026-06-13 03:37:59,695.695 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': '{"status": "False", "rstatus": false, "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-12T22:07:59.626760Z'} (ID: 1781302079663-0)
[2026-06-13 03:38:00,013.013 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 03:38:00,014.014 INFO    ] 200
[2026-06-13 03:38:00,016.016 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"OrderStatus","server_response":{"status":"false","rstatus":false,"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:38:00,018.018 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'OrderStatus', 'server_response': {'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 03:38:00,020.020 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:38:03,088.088 INFO    ] 200
[2026-06-13 03:38:03,091.091 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:38:03,094.094 INFO    ] {'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:38:06,147.147 INFO    ] 200
[2026-06-13 03:38:06,150.150 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:38:06,153.153 INFO    ] {'delay': 100, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 03:38:06,155.155 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,158.158 INFO    ] Order Completed 
[2026-06-13 03:38:06,161.161 INFO    ] Order Completed 
[2026-06-13 03:38:06,163.163 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 03:38:06,166.166 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,169.169 INFO    ] playing audio file
[2026-06-13 03:38:06,185.185 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,188.188 INFO    ] {'delay': 100, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 03:38:06,191.191 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,577.577 INFO    ] 200
[2026-06-13 03:38:06,580.580 INFO    ] {"res": "True", "orderId": "TM08202203260613033626259", "skus": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 03:38:06,584.584 INFO    ] {'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0, 'skus': [{'skuid': '4500687', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'tray_id': '23', 'mrp': '10'}, {'skuid': '186084', 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30'}], 'orderId': 'TM08202203260613033626259', 'anomaly': 0}
[2026-06-13 03:38:06,587.587 INFO    ] {'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0, 'skus': [{'skuid': '4500687', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'tray_id': '23', 'mrp': '10'}, {'skuid': '186084', 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30'}], 'orderId': 'TM08202203260613033626259', 'anomaly': 0}
[2026-06-13 03:38:06,590.590 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,593.593 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,595.595 INFO    ] 40
[2026-06-13 03:38:06,598.598 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,601.601 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,604.604 INFO    ]  Your Bill Amount is 40
[2026-06-13 03:38:06,606.606 INFO    ]  Your Bill Amount is 40
[2026-06-13 03:38:06,609.609 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 03:38:06,612.612 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,614.614 INFO    ] playing audio file
[2026-06-13 03:38:06,633.633 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,637.637 INFO    ] 2026-06-13 03:38:06
[2026-06-13 03:38:06,641.641 INFO    ] publish_status: order_id=TM08202203260613033626259
[2026-06-13 03:38:06,644.644 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613033626259
[2026-06-13 03:38:06,705.705 INFO    ] [publish_status] Message added to stream with ID: 1781302086673-0
[2026-06-13 03:38:06,708.708 INFO    ] Published to order:TM08202203260613033626259: {'order_id': 'TM08202203260613033626259', 'server_status': 'invoiceOrder', 'server_response': '{"res": "True", "rstatus": true, "logic": "WBL", "total_amount": 40.0, "skus": [{"skuid": "4500687", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "sku_total": 10.0, "door_id": "", "qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "tray_id": "23", "mrp": "10"}, {"skuid": "186084", "unit_price": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30.0, "door_id": "", "qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "tray_id": "40", "mrp": "30"}], "orderId": "TM08202203260613033626259", "anomaly": 0}', 'timestamp': '2026-06-12T22:08:06.639182Z'} (ID: 1781302086673-0)
[2026-06-13 03:38:07,122.122 INFO    ] {'order_id': 'TM08202203260613033626259', 'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 40.0, 'skus': [{'skuid': '4500687', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10.0, 'door_id': '', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'tray_id': '23', 'mrp': '10'}, {'skuid': '186084', 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30'}], 'orderId': 'TM08202203260613033626259', 'anomaly': 0}}
[2026-06-13 03:38:07,125.125 INFO    ] 200
[2026-06-13 03:38:07,128.128 INFO    ] {"data":{"order_id":"TM08202203260613033626259","server_status":"invoiceOrder","server_response":{"res":"true","rstatus":true,"logic":"WBL","total_amount":40,"skus":[{"skuid":"4500687","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","sku_total":10,"door_id":"","qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","tray_id":"23","mrp":"10"},{"skuid":"186084","unit_price":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","sku_total":30,"door_id":"","qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","tray_id":"40","mrp":"30"}],"orderId":"TM08202203260613033626259","anomaly":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:38:07,131.131 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 40, 'skus': [{'skuid': '4500687', 'unit_price': '10', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10, 'mrp': '10', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'door_id': ''}, {'skuid': '186084', 'unit_price': '30', 'tray_id': '40', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'mrp': '30', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM08202203260613033626259'}}}
[2026-06-13 03:38:07,134.134 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613033626259', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 40, 'skus': [{'skuid': '4500687', 'unit_price': '10', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'sku_total': 10, 'mrp': '10', 'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'door_id': ''}, {'skuid': '186084', 'unit_price': '30', 'tray_id': '40', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'mrp': '30', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM08202203260613033626259'}}}
[2026-06-13 03:38:07,137.137 INFO    ] 2026-06-13 03:38:07
[2026-06-13 03:38:08,743.743 INFO    ] 200
[2026-06-13 03:38:08,745.745 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259", "TM08202203260613033626259"], "orders_synced": [], "order_items_synced": ["TM08202203260613033626259_0", "TM08202203260613033626259_1"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 03:38:08,748.748 INFO    ] 2026-06-13 03:38:08
[2026-06-13 03:38:08,912.912 INFO    ] 200
[2026-06-13 03:38:08,916.916 INFO    ] True
[2026-06-13 03:38:08,919.919 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613033626259
[2026-06-13 03:38:08,922.922 INFO    ] start order file deleted
[2026-06-13 03:38:08,925.925 INFO    ] Checking for system updates...
[2026-06-13 03:38:08,959.959 INFO    ] 200
[2026-06-13 03:38:08,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:09,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:09,004.004 INFO    ] No update needed
[2026-06-13 03:38:09,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 03:38:09,047.047 INFO    ] 200
[2026-06-13 03:38:09,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:09,098.098 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:38:09,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:09,169.169 INFO    ] No camera update needed
[2026-06-13 03:38:09,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:38:09,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:38:09,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:38:09,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:38:11,229.229 INFO    ] ================================================
[2026-06-13 03:38:11,244.244 INFO    ] Launching Daemon at Sat Jun 13 03:38:11 IST 2026
[2026-06-13 03:38:11,255.255 INFO    ] ================================================
[2026-06-13 03:38:11,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:38:11
[2026-06-13 03:38:12,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:38:12,391.391 INFO    ] Initializing speech engine...
[2026-06-13 03:38:12,396.396 INFO    ] 2026-06-13 03:38:12
[2026-06-13 03:38:12,601.601 INFO    ] 2026-06-13 03:38:12
[2026-06-13 03:38:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:38:12,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:38:12,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:38:12,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:38:13,010.010 INFO    ] time= 13/06/2026 03:38:12
[2026-06-13 03:38:13,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:38:13,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:38:13,113.113 INFO    ] No existing commands found in stream
[2026-06-13 03:38:18,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:38:18,124.124 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 03:38:20,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:38:20,751.751 INFO    ] Checking for system updates...
[2026-06-13 03:38:20,777.777 INFO    ] 200
[2026-06-13 03:38:20,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:20,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:38:20,811.811 INFO    ] No update needed
[2026-06-13 03:38:20,812.812 INFO    ] Checking for camera pi updates...
[2026-06-13 03:38:20,833.833 INFO    ] 200
[2026-06-13 03:38:20,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:20,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:38:20,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:20,998.998 INFO    ] No camera update needed
[2026-06-13 03:38:20,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:38:21,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:38:21,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:38:21,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:38:23,047.047 INFO    ] ================================================
[2026-06-13 03:38:23,063.063 INFO    ] Launching Daemon at Sat Jun 13 03:38:23 IST 2026
[2026-06-13 03:38:23,074.074 INFO    ] ================================================
[2026-06-13 03:38:23,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:38:23
[2026-06-13 03:38:24,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:38:24,446.446 INFO    ] Initializing speech engine...
[2026-06-13 03:38:24,451.451 INFO    ] 2026-06-13 03:38:24
[2026-06-13 03:38:24,658.658 INFO    ] 2026-06-13 03:38:24
[2026-06-13 03:38:24,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:38:24,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:38:24,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:38:25,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:38:25,076.076 INFO    ] time= 13/06/2026 03:38:25
[2026-06-13 03:38:25,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:38:25,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:38:25,175.175 INFO    ] No existing commands found in stream
[2026-06-13 03:38:30,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:38:30,187.187 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 03:38:31,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:38:31,938.938 INFO    ] Checking for system updates...
[2026-06-13 03:38:31,985.985 INFO    ] 200
[2026-06-13 03:38:31,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:32,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:32,053.053 INFO    ] No update needed
[2026-06-13 03:38:32,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 03:38:32,095.095 INFO    ] 200
[2026-06-13 03:38:32,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:32,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:38:32,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:32,194.194 INFO    ] No camera update needed
[2026-06-13 03:38:32,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:38:32,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:38:32,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:38:32,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:38:34,259.259 INFO    ] ================================================
[2026-06-13 03:38:34,274.274 INFO    ] Launching Daemon at Sat Jun 13 03:38:34 IST 2026
[2026-06-13 03:38:34,285.285 INFO    ] ================================================
[2026-06-13 03:38:34,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:38:34
[2026-06-13 03:38:35,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:38:35,399.399 INFO    ] Initializing speech engine...
[2026-06-13 03:38:35,402.402 INFO    ] 2026-06-13 03:38:35
[2026-06-13 03:38:35,633.633 INFO    ] 2026-06-13 03:38:35
[2026-06-13 03:38:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:38:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:38:35,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:38:35,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:38:36,019.019 INFO    ] time= 13/06/2026 03:38:35
[2026-06-13 03:38:36,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:38:36,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:38:36,193.193 INFO    ] No existing commands found in stream
[2026-06-13 03:38:41,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:38:41,204.204 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 03:38:45,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:38:45,031.031 INFO    ] Checking for system updates...
[2026-06-13 03:38:45,051.051 INFO    ] 200
[2026-06-13 03:38:45,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:45,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:45,084.084 INFO    ] No update needed
[2026-06-13 03:38:45,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 03:38:45,107.107 INFO    ] 200
[2026-06-13 03:38:45,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:45,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:38:45,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:38:45,171.171 INFO    ] No camera update needed
[2026-06-13 03:38:45,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:38:45,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:38:45,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:38:45,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:38:47,220.220 INFO    ] ================================================
[2026-06-13 03:38:47,235.235 INFO    ] Launching Daemon at Sat Jun 13 03:38:47 IST 2026
[2026-06-13 03:38:47,245.245 INFO    ] ================================================
[2026-06-13 03:38:47,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:38:47
[2026-06-13 03:38:47,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:38:48,036.036 INFO    ] Initializing speech engine...
[2026-06-13 03:38:48,041.041 INFO    ] 2026-06-13 03:38:48
[2026-06-13 03:38:48,272.272 INFO    ] 2026-06-13 03:38:48
[2026-06-13 03:38:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:38:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:38:48,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:38:48,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:38:48,653.653 INFO    ] time= 13/06/2026 03:38:48
[2026-06-13 03:38:48,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:38:48,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:38:48,837.837 INFO    ] No existing commands found in stream
[2026-06-13 03:38:53,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:38:53,850.850 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 03:38:54,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:38:54,291.291 INFO    ] Checking for system updates...
[2026-06-13 03:38:54,314.314 INFO    ] 200
[2026-06-13 03:38:54,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:54,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:38:54,347.347 INFO    ] No update needed
[2026-06-13 03:38:54,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 03:38:54,368.368 INFO    ] 200
[2026-06-13 03:38:54,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:38:54,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:38:54,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:38:54,442.442 INFO    ] No camera update needed
[2026-06-13 03:38:54,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:38:54,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:38:54,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:38:54,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:38:56,489.489 INFO    ] ================================================
[2026-06-13 03:38:56,504.504 INFO    ] Launching Daemon at Sat Jun 13 03:38:56 IST 2026
[2026-06-13 03:38:56,515.515 INFO    ] ================================================
[2026-06-13 03:38:56,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:38:56
[2026-06-13 03:38:57,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:38:57,314.314 INFO    ] Initializing speech engine...
[2026-06-13 03:38:57,324.324 INFO    ] 2026-06-13 03:38:57
[2026-06-13 03:38:57,530.530 INFO    ] 2026-06-13 03:38:57
[2026-06-13 03:38:57,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:38:57,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:38:57,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:38:57,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:38:57,934.934 INFO    ] time= 13/06/2026 03:38:57
[2026-06-13 03:38:57,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:38:57,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:38:58,050.050 INFO    ] No existing commands found in stream
[2026-06-13 03:39:03,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:39:03,063.063 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 03:39:05,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:39:05,124.124 INFO    ] Checking for system updates...
[2026-06-13 03:39:05,145.145 INFO    ] 200
[2026-06-13 03:39:05,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:05,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:39:05,179.179 INFO    ] No update needed
[2026-06-13 03:39:05,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 03:39:05,200.200 INFO    ] 200
[2026-06-13 03:39:05,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:05,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:39:05,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:39:05,266.266 INFO    ] No camera update needed
[2026-06-13 03:39:05,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:39:05,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:39:05,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:39:05,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:39:07,313.313 INFO    ] ================================================
[2026-06-13 03:39:07,329.329 INFO    ] Launching Daemon at Sat Jun 13 03:39:07 IST 2026
[2026-06-13 03:39:07,339.339 INFO    ] ================================================
[2026-06-13 03:39:07,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:39:07
[2026-06-13 03:39:08,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:39:08,153.153 INFO    ] Initializing speech engine...
[2026-06-13 03:39:08,166.166 INFO    ] 2026-06-13 03:39:08
[2026-06-13 03:39:08,388.388 INFO    ] 2026-06-13 03:39:08
[2026-06-13 03:39:08,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:39:08,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:39:08,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:39:08,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:39:08,629.629 INFO    ] time= 13/06/2026 03:39:08
[2026-06-13 03:39:08,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:39:08,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:39:08,740.740 INFO    ] No existing commands found in stream
[2026-06-13 03:39:13,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:39:13,771.771 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 03:39:17,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:39:17,177.177 INFO    ] Checking for system updates...
[2026-06-13 03:39:17,198.198 INFO    ] 200
[2026-06-13 03:39:17,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:17,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:17,231.231 INFO    ] No update needed
[2026-06-13 03:39:17,233.233 INFO    ] Checking for camera pi updates...
[2026-06-13 03:39:17,253.253 INFO    ] 200
[2026-06-13 03:39:17,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:17,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:39:17,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:17,318.318 INFO    ] No camera update needed
[2026-06-13 03:39:17,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:39:17,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:39:17,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:39:17,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:39:19,366.366 INFO    ] ================================================
[2026-06-13 03:39:19,381.381 INFO    ] Launching Daemon at Sat Jun 13 03:39:19 IST 2026
[2026-06-13 03:39:19,392.392 INFO    ] ================================================
[2026-06-13 03:39:19,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:39:19
[2026-06-13 03:39:20,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:39:20,239.239 INFO    ] Initializing speech engine...
[2026-06-13 03:39:20,245.245 INFO    ] 2026-06-13 03:39:20
[2026-06-13 03:39:20,453.453 INFO    ] 2026-06-13 03:39:20
[2026-06-13 03:39:20,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:39:20,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:39:20,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:39:20,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:39:20,867.867 INFO    ] time= 13/06/2026 03:39:20
[2026-06-13 03:39:20,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:39:20,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:39:20,973.973 INFO    ] No existing commands found in stream
[2026-06-13 03:39:25,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:39:25,991.991 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 03:39:30,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:39:30,224.224 INFO    ] Checking for system updates...
[2026-06-13 03:39:30,245.245 INFO    ] 200
[2026-06-13 03:39:30,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:30,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:30,279.279 INFO    ] No update needed
[2026-06-13 03:39:30,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 03:39:30,301.301 INFO    ] 200
[2026-06-13 03:39:30,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:30,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:39:30,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:39:30,370.370 INFO    ] No camera update needed
[2026-06-13 03:39:30,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:39:30,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:39:30,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:39:30,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:39:32,411.411 INFO    ] ================================================
[2026-06-13 03:39:32,420.420 INFO    ] Launching Daemon at Sat Jun 13 03:39:32 IST 2026
[2026-06-13 03:39:32,429.429 INFO    ] ================================================
[2026-06-13 03:39:32,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:39:32
[2026-06-13 03:39:33,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:39:33,179.179 INFO    ] Initializing speech engine...
[2026-06-13 03:39:33,183.183 INFO    ] 2026-06-13 03:39:33
[2026-06-13 03:39:33,438.438 INFO    ] 2026-06-13 03:39:33
[2026-06-13 03:39:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:39:33,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:39:33,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:39:33,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:39:33,884.884 INFO    ] time= 13/06/2026 03:39:33
[2026-06-13 03:39:33,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:39:33,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:39:34,035.035 INFO    ] No existing commands found in stream
[2026-06-13 03:39:39,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:39:39,061.061 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 03:39:43,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:39:43,163.163 INFO    ] Checking for system updates...
[2026-06-13 03:39:43,199.199 INFO    ] 200
[2026-06-13 03:39:43,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:43,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:43,257.257 INFO    ] No update needed
[2026-06-13 03:39:43,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 03:39:43,292.292 INFO    ] 200
[2026-06-13 03:39:43,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:43,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:39:43,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:43,369.369 INFO    ] No camera update needed
[2026-06-13 03:39:43,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:39:43,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:39:43,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:39:43,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:39:45,417.417 INFO    ] ================================================
[2026-06-13 03:39:45,432.432 INFO    ] Launching Daemon at Sat Jun 13 03:39:45 IST 2026
[2026-06-13 03:39:45,443.443 INFO    ] ================================================
[2026-06-13 03:39:45,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:39:45
[2026-06-13 03:39:46,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:39:46,317.317 INFO    ] Initializing speech engine...
[2026-06-13 03:39:46,321.321 INFO    ] 2026-06-13 03:39:46
[2026-06-13 03:39:46,532.532 INFO    ] 2026-06-13 03:39:46
[2026-06-13 03:39:46,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:39:46,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:39:46,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:39:46,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:39:46,942.942 INFO    ] time= 13/06/2026 03:39:46
[2026-06-13 03:39:46,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:39:46,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:39:47,065.065 INFO    ] No existing commands found in stream
[2026-06-13 03:39:52,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:39:52,080.080 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 03:39:55,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:39:55,703.703 INFO    ] Checking for system updates...
[2026-06-13 03:39:55,747.747 INFO    ] 200
[2026-06-13 03:39:55,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:55,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:55,817.817 INFO    ] No update needed
[2026-06-13 03:39:55,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 03:39:55,856.856 INFO    ] 200
[2026-06-13 03:39:55,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:39:55,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:39:55,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:39:55,949.949 INFO    ] No camera update needed
[2026-06-13 03:39:55,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:39:55,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:39:55,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:39:55,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:39:58,005.005 INFO    ] ================================================
[2026-06-13 03:39:58,020.020 INFO    ] Launching Daemon at Sat Jun 13 03:39:58 IST 2026
[2026-06-13 03:39:58,031.031 INFO    ] ================================================
[2026-06-13 03:39:58,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:39:58
[2026-06-13 03:39:59,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:39:59,162.162 INFO    ] Initializing speech engine...
[2026-06-13 03:39:59,167.167 INFO    ] 2026-06-13 03:39:59
[2026-06-13 03:39:59,380.380 INFO    ] 2026-06-13 03:39:59
[2026-06-13 03:39:59,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:39:59,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:39:59,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:39:59,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:39:59,776.776 INFO    ] time= 13/06/2026 03:39:59
[2026-06-13 03:39:59,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:39:59,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:39:59,940.940 INFO    ] No existing commands found in stream
[2026-06-13 03:40:04,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:40:04,953.953 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 03:40:08,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:40:08,746.746 INFO    ] Checking for system updates...
[2026-06-13 03:40:08,767.767 INFO    ] 200
[2026-06-13 03:40:08,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:08,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:40:08,800.800 INFO    ] No update needed
[2026-06-13 03:40:08,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 03:40:08,821.821 INFO    ] 200
[2026-06-13 03:40:08,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:08,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:40:08,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:40:08,893.893 INFO    ] No camera update needed
[2026-06-13 03:40:08,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:40:08,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:40:08,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:40:08,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:40:10,938.938 INFO    ] ================================================
[2026-06-13 03:40:10,953.953 INFO    ] Launching Daemon at Sat Jun 13 03:40:10 IST 2026
[2026-06-13 03:40:10,964.964 INFO    ] ================================================
[2026-06-13 03:40:11,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:40:11
[2026-06-13 03:40:11,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:40:11,819.819 INFO    ] Initializing speech engine...
[2026-06-13 03:40:11,824.824 INFO    ] 2026-06-13 03:40:11
[2026-06-13 03:40:12,035.035 INFO    ] 2026-06-13 03:40:12
[2026-06-13 03:40:12,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:40:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:40:12,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:40:12,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:40:12,435.435 INFO    ] time= 13/06/2026 03:40:12
[2026-06-13 03:40:12,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:40:12,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:40:12,559.559 INFO    ] No existing commands found in stream
[2026-06-13 03:40:17,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:40:17,587.587 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 03:40:20,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:40:20,072.072 INFO    ] Checking for system updates...
[2026-06-13 03:40:20,095.095 INFO    ] 200
[2026-06-13 03:40:20,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:20,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:20,133.133 INFO    ] No update needed
[2026-06-13 03:40:20,134.134 INFO    ] Checking for camera pi updates...
[2026-06-13 03:40:20,157.157 INFO    ] 200
[2026-06-13 03:40:20,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:20,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:40:20,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:20,236.236 INFO    ] No camera update needed
[2026-06-13 03:40:20,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:40:20,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:40:20,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:40:20,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:40:22,276.276 INFO    ] ================================================
[2026-06-13 03:40:22,292.292 INFO    ] Launching Daemon at Sat Jun 13 03:40:22 IST 2026
[2026-06-13 03:40:22,303.303 INFO    ] ================================================
[2026-06-13 03:40:22,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:40:22
[2026-06-13 03:40:23,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:40:23,153.153 INFO    ] Initializing speech engine...
[2026-06-13 03:40:23,159.159 INFO    ] 2026-06-13 03:40:23
[2026-06-13 03:40:23,366.366 INFO    ] 2026-06-13 03:40:23
[2026-06-13 03:40:23,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:40:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:40:23,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:40:23,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:40:23,786.786 INFO    ] time= 13/06/2026 03:40:23
[2026-06-13 03:40:23,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:40:23,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:40:23,884.884 INFO    ] No existing commands found in stream
[2026-06-13 03:40:28,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:40:28,899.899 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 03:40:32,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:40:32,121.121 INFO    ] Checking for system updates...
[2026-06-13 03:40:32,177.177 INFO    ] 200
[2026-06-13 03:40:32,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:32,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:32,239.239 INFO    ] No update needed
[2026-06-13 03:40:32,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 03:40:32,262.262 INFO    ] 200
[2026-06-13 03:40:32,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:32,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:40:32,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:32,340.340 INFO    ] No camera update needed
[2026-06-13 03:40:32,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:40:32,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:40:32,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:40:32,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:40:34,389.389 INFO    ] ================================================
[2026-06-13 03:40:34,405.405 INFO    ] Launching Daemon at Sat Jun 13 03:40:34 IST 2026
[2026-06-13 03:40:34,416.416 INFO    ] ================================================
[2026-06-13 03:40:34,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:40:34
[2026-06-13 03:40:35,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:40:35,206.206 INFO    ] Initializing speech engine...
[2026-06-13 03:40:35,219.219 INFO    ] 2026-06-13 03:40:35
[2026-06-13 03:40:35,428.428 INFO    ] 2026-06-13 03:40:35
[2026-06-13 03:40:35,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:40:35,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:40:35,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:40:35,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:40:35,826.826 INFO    ] time= 13/06/2026 03:40:35
[2026-06-13 03:40:35,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:40:35,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:40:35,946.946 INFO    ] No existing commands found in stream
[2026-06-13 03:40:40,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:40:40,960.960 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 03:40:43,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:40:43,011.011 INFO    ] Checking for system updates...
[2026-06-13 03:40:43,035.035 INFO    ] 200
[2026-06-13 03:40:43,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:43,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:40:43,069.069 INFO    ] No update needed
[2026-06-13 03:40:43,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 03:40:43,090.090 INFO    ] 200
[2026-06-13 03:40:43,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:43,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:40:43,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:40:43,153.153 INFO    ] No camera update needed
[2026-06-13 03:40:43,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:40:43,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:40:43,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:40:43,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:40:45,200.200 INFO    ] ================================================
[2026-06-13 03:40:45,215.215 INFO    ] Launching Daemon at Sat Jun 13 03:40:45 IST 2026
[2026-06-13 03:40:45,227.227 INFO    ] ================================================
[2026-06-13 03:40:45,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:40:45
[2026-06-13 03:40:45,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:40:46,033.033 INFO    ] Initializing speech engine...
[2026-06-13 03:40:46,038.038 INFO    ] 2026-06-13 03:40:46
[2026-06-13 03:40:46,231.231 INFO    ] 2026-06-13 03:40:46
[2026-06-13 03:40:46,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:40:46,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:40:46,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:40:46,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:40:46,605.605 INFO    ] time= 13/06/2026 03:40:46
[2026-06-13 03:40:46,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:40:46,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:40:46,725.725 INFO    ] No existing commands found in stream
[2026-06-13 03:40:51,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:40:51,745.745 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 03:40:55,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:40:55,854.854 INFO    ] Checking for system updates...
[2026-06-13 03:40:55,876.876 INFO    ] 200
[2026-06-13 03:40:55,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:55,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:55,909.909 INFO    ] No update needed
[2026-06-13 03:40:55,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 03:40:55,933.933 INFO    ] 200
[2026-06-13 03:40:55,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:40:55,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:40:55,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:40:55,997.997 INFO    ] No camera update needed
[2026-06-13 03:40:55,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:40:56,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:40:56,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:40:56,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:40:58,045.045 INFO    ] ================================================
[2026-06-13 03:40:58,060.060 INFO    ] Launching Daemon at Sat Jun 13 03:40:58 IST 2026
[2026-06-13 03:40:58,071.071 INFO    ] ================================================
[2026-06-13 03:40:58,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:40:58
[2026-06-13 03:40:58,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:40:58,932.932 INFO    ] Initializing speech engine...
[2026-06-13 03:40:58,938.938 INFO    ] 2026-06-13 03:40:58
[2026-06-13 03:40:59,144.144 INFO    ] 2026-06-13 03:40:59
[2026-06-13 03:40:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:40:59,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:40:59,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:40:59,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:40:59,548.548 INFO    ] time= 13/06/2026 03:40:59
[2026-06-13 03:40:59,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:40:59,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:40:59,657.657 INFO    ] No existing commands found in stream
[2026-06-13 03:41:04,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:41:04,668.668 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 03:41:06,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:41:06,481.481 INFO    ] Checking for system updates...
[2026-06-13 03:41:06,502.502 INFO    ] 200
[2026-06-13 03:41:06,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:06,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:41:06,536.536 INFO    ] No update needed
[2026-06-13 03:41:06,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 03:41:06,557.557 INFO    ] 200
[2026-06-13 03:41:06,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:06,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:41:06,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:41:06,621.621 INFO    ] No camera update needed
[2026-06-13 03:41:06,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:41:06,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:41:06,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:41:06,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:41:08,670.670 INFO    ] ================================================
[2026-06-13 03:41:08,685.685 INFO    ] Launching Daemon at Sat Jun 13 03:41:08 IST 2026
[2026-06-13 03:41:08,696.696 INFO    ] ================================================
[2026-06-13 03:41:09,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:41:09
[2026-06-13 03:41:09,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:41:09,570.570 INFO    ] Initializing speech engine...
[2026-06-13 03:41:09,576.576 INFO    ] 2026-06-13 03:41:09
[2026-06-13 03:41:09,784.784 INFO    ] 2026-06-13 03:41:09
[2026-06-13 03:41:09,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:41:09,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:41:10,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:41:10,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:41:10,204.204 INFO    ] time= 13/06/2026 03:41:10
[2026-06-13 03:41:10,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:41:10,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:41:10,303.303 INFO    ] No existing commands found in stream
[2026-06-13 03:41:10,611.611 INFO    ] Received new command: ID=1781302270523-0
[2026-06-13 03:41:10,633.633 INFO    ] process_and_cleanup_command: msg_id=1781302270523-0
[2026-06-13 03:41:10,639.639 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:10.345Z, expiry=30s
[2026-06-13 03:41:10,724.724 INFO    ] Command removed from stream: 1781302270523-0. returning for processing...
[2026-06-13 03:41:10,727.727 INFO    ] ***** get_valid_command
[2026-06-13 03:41:10,731.731 INFO    ] {'timestamp': '2026-06-12T22:11:10.345Z', 'data': '{"request_id":"start-order-1781302270345-nbqp6flft","orderId":"TM08202203260613034023673","is_vending":false}', 'timeout': '10', 'source': 'webapp', 'command': 'start-order'}
[2026-06-13 03:41:10,735.735 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034023673', 'is_vending': False, 'request_id': 'start-order-1781302270345-nbqp6flft'}
[2026-06-13 03:41:10,739.739 INFO    ] Handling start order...
[2026-06-13 03:41:10,742.742 INFO    ] handle_start_order_command
[2026-06-13 03:41:10,749.749 INFO    ] _send_start_order_success: request_id=start-order-1781302270345-nbqp6flft, order_id=TM08202203260613034023673
[2026-06-13 03:41:10,753.753 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:41:10,802.802 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302270765-0
[2026-06-13 03:41:10,805.805 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:41:10,809.809 INFO    ] Checking for system updates...
[2026-06-13 03:41:10,865.865 INFO    ] 200
[2026-06-13 03:41:10,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:10,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:41:10,919.919 INFO    ] No update needed
[2026-06-13 03:41:10,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 03:41:10,946.946 INFO    ] 200
[2026-06-13 03:41:10,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:10,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:41:11,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:41:11,065.065 INFO    ] No camera update needed
[2026-06-13 03:41:11,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:41:11,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:41:11,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:41:11,121.121 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:41:11,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:41:13,213.213 INFO    ] ================================================
[2026-06-13 03:41:13,229.229 INFO    ] Launching Daemon at Sat Jun 13 03:41:13 IST 2026
[2026-06-13 03:41:13,239.239 INFO    ] ================================================
[2026-06-13 03:41:13,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:41:13
[2026-06-13 03:41:13,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:41:14,035.035 INFO    ] Initializing speech engine...
[2026-06-13 03:41:14,046.046 INFO    ] 2026-06-13 03:41:14
[2026-06-13 03:41:14,254.254 INFO    ] 2026-06-13 03:41:14
[2026-06-13 03:41:14,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:41:14,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:41:14,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:41:14,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:41:14,649.649 INFO    ] time= 13/06/2026 03:41:14
[2026-06-13 03:41:14,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:41:14,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:41:14,855.855 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 03:41:14,863.863 INFO    ] Checking historical command: ID=1781302270765-0
[2026-06-13 03:41:14,870.870 INFO    ] process_and_cleanup_command: msg_id=1781302270765-0
[2026-06-13 03:41:14,920.920 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:10.751074Z, expiry=30s
[2026-06-13 03:41:15,091.091 INFO    ] Command removed from stream: 1781302270765-0. returning for processing...
[2026-06-13 03:41:15,124.124 INFO    ] ***** get_valid_command
[2026-06-13 03:41:15,175.175 INFO    ] {'status': 'success', 'message_type': 'command_response', 'imei': 'TM08202203', 'timestamp': '2026-06-12T22:11:10.751074Z', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781302270345-nbqp6flft', 'metadata_order_id': 'TM08202203260613034023673'}
[2026-06-13 03:41:15,230.230 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 03:41:15,888.888 INFO    ] Received new command: ID=1781302275637-0
[2026-06-13 03:41:15,898.898 INFO    ] process_and_cleanup_command: msg_id=1781302275637-0
[2026-06-13 03:41:15,907.907 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:15.353Z, expiry=30s
[2026-06-13 03:41:16,009.009 INFO    ] Command removed from stream: 1781302275637-0. returning for processing...
[2026-06-13 03:41:16,054.054 INFO    ] ***** get_valid_command
[2026-06-13 03:41:16,060.060 INFO    ] {'timestamp': '2026-06-12T22:11:15.353Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781302275353-eyoo1me2s","orderId":"TM08202203260613034023673","is_vending":false,"accessCode":"12808743"}', 'command': 'process-order', 'timeout': '60'}
[2026-06-13 03:41:16,068.068 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781302275353-eyoo1me2s', 'is_vending': False, 'orderId': 'TM08202203260613034023673', 'accessCode': '12808743'}
[2026-06-13 03:41:16,113.113 INFO    ] Handling process order...
[2026-06-13 03:41:16,116.116 INFO    ] Processing process-order command...
[2026-06-13 03:41:16,168.168 INFO    ] 🔍 Lock file Order ID: TM08202203260613034023673, TS: 2026-06-13 03:41:10
[2026-06-13 03:41:16,183.183 INFO    ] ✅ Order lock valid for TM08202203260613034023673
[2026-06-13 03:41:16,187.187 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 03:41:16,192.192 INFO    ] processing access code 12808743 for order TM08202203260613034023673
[2026-06-13 03:41:16,197.197 INFO    ] 🔍 Lock file Order ID: TM08202203260613034023673, TS: 2026-06-13 03:41:10
[2026-06-13 03:41:16,202.202 INFO    ] ✅ Order lock valid for TM08202203260613034023673
[2026-06-13 03:41:16,207.207 INFO    ] 2026-06-13 03:41:16
[2026-06-13 03:41:16,324.324 INFO    ] 200
[2026-06-13 03:41:16,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:16,364.364 INFO    ] 12808743
[2026-06-13 03:41:16,369.369 INFO    ] 2026-06-13 03:41:16
[2026-06-13 03:41:16,379.379 INFO    ] session id :427840100
[2026-06-13 03:41:16,386.386 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=12808743&imei=TM08202203&session_id=427840100
[2026-06-13 03:41:17,450.450 INFO    ] 200
[2026-06-13 03:41:17,465.465 INFO    ] {"data": {"mobile": "8660745596", "order_id": "TM08202203260613034023673", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500693-9518.webp", "skuid": "4500693", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Max protein 7 grain Protein Gochujang 30gm", "tray_id": "26", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "12808743", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 03:41:17,474.474 INFO    ] 20
[2026-06-13 03:41:17,496.496 INFO    ] TM08202203260613034023673
[2026-06-13 03:41:17,501.501 INFO    ] 8660745596
[2026-06-13 03:41:17,506.506 INFO    ] 2026-06-13 03:41:17
[2026-06-13 03:41:17,509.509 INFO    ] Door Opening for user mobile ending with  five five nine six 
[2026-06-13 03:41:17,511.511 INFO    ] Door Opening for user mobile ending with  five five nine six 
[2026-06-13 03:41:17,512.512 INFO    ] 4b030ecaec4b49f06233b7546bfc2bac
[2026-06-13 03:41:17,513.513 INFO    ] 2026-06-13 03:41:17
[2026-06-13 03:41:17,515.515 INFO    ] playing audio file
[2026-06-13 03:41:17,525.525 INFO    ] 2026-06-13 03:41:17
[2026-06-13 03:41:17,527.527 INFO    ] 2026-06-13 03:41:17
[2026-06-13 03:41:17,529.529 INFO    ] publish_status: order_id=TM08202203260613034023673
[2026-06-13 03:41:17,531.531 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034023673
[2026-06-13 03:41:17,575.575 INFO    ] [publish_status] Message added to stream with ID: 1781302277540-0
[2026-06-13 03:41:17,577.577 INFO    ] Published to order:TM08202203260613034023673: {'order_id': 'TM08202203260613034023673', 'server_response': '{"status": true, "data": {"bill_amount": "20", "proposed_sku_json": [{"qty": 1, "sku_total": 20, "offer_id": "", "mrp": "20", "skuid": "4500693", "unit_price": 20, "tray_id": "26", "name": "Max protein 7 grain Protein Gochujang 30gm", "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "door_id": "1", "offer_desc": ""}], "invoice_bill": "20", "access_code": "12808743", "mobile": "8660745596", "order_id": "TM08202203260613034023673"}, "msg": "Order Data", "rstatus": true}', 'server_status': 'order-started', 'timestamp': '2026-06-12T22:11:17.528233Z'} (ID: 1781302277540-0)
[2026-06-13 03:41:17,909.909 INFO    ] {'order_id': 'TM08202203260613034023673', 'server_response': {'status': True, 'data': {'bill_amount': '20', 'proposed_sku_json': [{'qty': 1, 'sku_total': 20, 'offer_id': '', 'mrp': '20', 'skuid': '4500693', 'unit_price': 20, 'tray_id': '26', 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '1', 'offer_desc': ''}], 'invoice_bill': '20', 'access_code': '12808743', 'mobile': '8660745596', 'order_id': 'TM08202203260613034023673'}, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started'}
[2026-06-13 03:41:17,910.910 INFO    ] 200
[2026-06-13 03:41:17,911.911 INFO    ] {"data":{"order_id":"TM08202203260613034023673","server_response":{"status":true,"data":{"bill_amount":"20","proposed_sku_json":[{"qty":1,"sku_total":20,"offer_id":"","mrp":"20","skuid":"4500693","unit_price":20,"tray_id":"26","name":"Max protein 7 grain Protein Gochujang 30gm","image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","door_id":"1","offer_desc":""}],"invoice_bill":"20","access_code":"12808743","mobile":"8660745596","order_id":"TM08202203260613034023673"},"msg":"Order Data","rstatus":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:17,913.913 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034023673', 'server_response': {'rstatus': True, 'data': {'bill_amount': '20', 'proposed_sku_json': [{'qty': 1, 'sku_total': 20, 'mrp': '20', 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'offer_desc': '', 'offer_id': '', 'tray_id': '26', 'door_id': '1', 'unit_price': 20, 'skuid': '4500693', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp'}], 'invoice_bill': '20', 'access_code': '12808743', 'mobile': '8660745596', 'order_id': 'TM08202203260613034023673'}, 'msg': 'Order Data', 'status': True}, 'server_status': 'order-started'}}
[2026-06-13 03:41:17,914.914 INFO    ] 2026-06-13 03:41:17
[2026-06-13 03:41:17,950.950 INFO    ] 200
[2026-06-13 03:41:17,951.951 INFO    ] True
[2026-06-13 03:41:18,038.038 INFO    ] 200
[2026-06-13 03:41:18,039.039 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:18,041.041 INFO    ] {'voiceNote': 'Please Wait', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 03:41:18,043.043 INFO    ] *** process_order ***
[2026-06-13 03:41:19,213.213 INFO    ] 200
[2026-06-13 03:41:19,215.215 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:41:19,216.216 INFO    ] {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'True', 'delay': 0}
[2026-06-13 03:41:19,217.217 INFO    ] *** process_order ***
[2026-06-13 03:41:19,219.219 INFO    ] publish_status: order_id=TM08202203260613034023673
[2026-06-13 03:41:19,220.220 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034023673
[2026-06-13 03:41:19,287.287 INFO    ] [publish_status] Message added to stream with ID: 1781302279252-0
[2026-06-13 03:41:19,289.289 INFO    ] Published to order:TM08202203260613034023673: {'order_id': 'TM08202203260613034023673', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "delay": 0}', 'server_status': 'doorOpened'} (ID: 1781302279252-0)
[2026-06-13 03:41:20,329.329 INFO    ] 2026-06-13 03:41:20
[2026-06-13 03:41:20,333.333 INFO    ] publish_status: order_id=TM08202203260613034023673
[2026-06-13 03:41:20,336.336 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034023673
[2026-06-13 03:41:20,421.421 INFO    ] [publish_status] Message added to stream with ID: 1781302280380-0
[2026-06-13 03:41:20,423.423 INFO    ] Published to order:TM08202203260613034023673: {'order_id': 'TM08202203260613034023673', 'server_response': '{"voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "status": "True", "delay": 0}', 'server_status': 'processOrder', 'timestamp': '2026-06-12T22:11:20.331059Z'} (ID: 1781302280380-0)
[2026-06-13 03:41:20,549.549 INFO    ] {'order_id': 'TM08202203260613034023673', 'server_response': {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'True', 'delay': 0}, 'server_status': 'processOrder'}
[2026-06-13 03:41:20,551.551 INFO    ] 200
[2026-06-13 03:41:20,554.554 INFO    ] {"data":{"order_id":"TM08202203260613034023673","server_response":{"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"status":"true","delay":0},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:20,557.557 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034023673', 'server_response': {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'true', 'delay': 0}, 'server_status': 'processOrder'}}
[2026-06-13 03:41:20,561.561 INFO    ] 2026-06-13 03:41:20
[2026-06-13 03:41:20,563.563 INFO    ] None
[2026-06-13 03:41:20,566.566 INFO    ] Opening Door now
[2026-06-13 03:41:20,569.569 INFO    ] Opening Door now
[2026-06-13 03:41:20,572.572 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 03:41:20,575.575 INFO    ] 2026-06-13 03:41:20
[2026-06-13 03:41:20,577.577 INFO    ] playing audio file
[2026-06-13 03:41:20,595.595 INFO    ] 2026-06-13 03:41:20
[2026-06-13 03:41:20,598.598 INFO    ] 2026-06-13 03:41:20
[2026-06-13 03:41:23,658.658 INFO    ] 200
[2026-06-13 03:41:23,660.660 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:23,662.662 INFO    ] {'voiceNote': 'Door 1 is open now', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:41:26,732.732 INFO    ] 200
[2026-06-13 03:41:26,735.735 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:26,738.738 INFO    ] {'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:41:29,775.775 INFO    ] 200
[2026-06-13 03:41:29,776.776 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:29,778.778 INFO    ] Please close door 1
[2026-06-13 03:41:29,780.780 INFO    ] Please close door 1
[2026-06-13 03:41:29,781.781 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 03:41:29,783.783 INFO    ] 2026-06-13 03:41:29
[2026-06-13 03:41:29,785.785 INFO    ] playing audio file
[2026-06-13 03:41:29,802.802 INFO    ] 2026-06-13 03:41:29
[2026-06-13 03:41:29,806.806 INFO    ] publish_status: order_id=TM08202203260613034023673
[2026-06-13 03:41:29,811.811 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034023673
[2026-06-13 03:41:29,886.886 INFO    ] [publish_status] Message added to stream with ID: 1781302289850-0
[2026-06-13 03:41:29,887.887 INFO    ] Published to order:TM08202203260613034023673: {'order_id': 'TM08202203260613034023673', 'server_response': '{"voiceNote": "Please close door 1", "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "rstatus": false, "SectionSKU": {"skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1"}, "status": "False", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'timestamp': '2026-06-12T22:11:29.804578Z'} (ID: 1781302289850-0)
[2026-06-13 03:41:30,226.226 INFO    ] {'order_id': 'TM08202203260613034023673', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}
[2026-06-13 03:41:30,229.229 INFO    ] 200
[2026-06-13 03:41:30,231.231 INFO    ] {"data":{"order_id":"TM08202203260613034023673","server_response":{"voiceNote":"Please close door 1","error":{"umessage":"In Progress","tmessage":"In Progress","code":20001,"data":[]},"rstatus":false,"SectionSKU":{"skus":[{"qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1"},"status":"false","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:30,234.234 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034023673', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}}
[2026-06-13 03:41:30,237.237 INFO    ] {'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 03:41:33,277.277 INFO    ] 200
[2026-06-13 03:41:33,279.279 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:41:33,281.281 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'status': 'True', 'delay': 100}
[2026-06-13 03:41:33,282.282 INFO    ] 2026-06-13 03:41:33
[2026-06-13 03:41:33,284.284 INFO    ] Order Completed 
[2026-06-13 03:41:33,285.285 INFO    ] Order Completed 
[2026-06-13 03:41:33,287.287 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 03:41:33,289.289 INFO    ] 2026-06-13 03:41:33
[2026-06-13 03:41:33,291.291 INFO    ] playing audio file
[2026-06-13 03:41:33,302.302 INFO    ] 2026-06-13 03:41:33
[2026-06-13 03:41:33,304.304 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'status': 'True', 'delay': 100}
[2026-06-13 03:41:33,306.306 INFO    ] 2026-06-13 03:41:33
[2026-06-13 03:41:34,076.076 INFO    ] 200
[2026-06-13 03:41:34,079.079 INFO    ] {"res": "True", "orderId": "TM08202203260613034023673", "skus": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "", "tray_id": "24", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 03:41:34,082.082 INFO    ] {'total_amount': 20.0, 'orderId': 'TM08202203260613034023673', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'qty': 1, 'sku_total': 20.0, 'mrp': '20', 'skuid': '4500452', 'unit_price': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'door_id': '', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}]}
[2026-06-13 03:41:34,084.084 INFO    ] {'total_amount': 20.0, 'orderId': 'TM08202203260613034023673', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'qty': 1, 'sku_total': 20.0, 'mrp': '20', 'skuid': '4500452', 'unit_price': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'door_id': '', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}]}
[2026-06-13 03:41:34,087.087 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,090.090 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,093.093 INFO    ] 20
[2026-06-13 03:41:34,096.096 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,099.099 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,102.102 INFO    ]  Your Bill Amount is 20
[2026-06-13 03:41:34,105.105 INFO    ]  Your Bill Amount is 20
[2026-06-13 03:41:34,108.108 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 03:41:34,111.111 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,113.113 INFO    ] playing audio file
[2026-06-13 03:41:34,131.131 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,134.134 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:34,138.138 INFO    ] publish_status: order_id=TM08202203260613034023673
[2026-06-13 03:41:34,141.141 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034023673
[2026-06-13 03:41:34,217.217 INFO    ] [publish_status] Message added to stream with ID: 1781302294180-0
[2026-06-13 03:41:34,220.220 INFO    ] Published to order:TM08202203260613034023673: {'order_id': 'TM08202203260613034023673', 'server_response': '{"total_amount": 20.0, "orderId": "TM08202203260613034023673", "rstatus": true, "res": "True", "logic": "WBL", "anomaly": 0, "skus": [{"qty": 1, "sku_total": 20.0, "mrp": "20", "skuid": "4500452", "unit_price": "20", "tray_id": "24", "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "door_id": "", "name": "Bingo Chips Chilli Sprinkled 30gm per peice"}]}', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-12T22:11:34.136311Z'} (ID: 1781302294180-0)
[2026-06-13 03:41:34,339.339 INFO    ] {'order_id': 'TM08202203260613034023673', 'server_response': {'total_amount': 20.0, 'orderId': 'TM08202203260613034023673', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'qty': 1, 'sku_total': 20.0, 'mrp': '20', 'skuid': '4500452', 'unit_price': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'door_id': '', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}]}, 'server_status': 'invoiceOrder'}
[2026-06-13 03:41:34,342.342 INFO    ] 200
[2026-06-13 03:41:34,345.345 INFO    ] {"data":{"order_id":"TM08202203260613034023673","server_response":{"total_amount":20,"orderId":"TM08202203260613034023673","rstatus":true,"res":"true","logic":"WBL","anomaly":0,"skus":[{"qty":1,"sku_total":20,"mrp":"20","skuid":"4500452","unit_price":"20","tray_id":"24","image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","door_id":"","name":"Bingo Chips Chilli Sprinkled 30gm per peice"}]},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:34,348.348 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034023673', 'server_response': {'orderId': 'TM08202203260613034023673', 'rstatus': True, 'res': 'true', 'total_amount': 20, 'logic': 'WBL', 'skus': [{'qty': 1, 'sku_total': 20, 'mrp': '20', 'door_id': '', 'unit_price': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}], 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-06-13 03:41:34,351.351 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034023673', 'server_response': {'orderId': 'TM08202203260613034023673', 'rstatus': True, 'res': 'true', 'total_amount': 20, 'logic': 'WBL', 'skus': [{'qty': 1, 'sku_total': 20, 'mrp': '20', 'door_id': '', 'unit_price': '20', 'tray_id': '24', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice'}], 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-06-13 03:41:34,353.353 INFO    ] 2026-06-13 03:41:34
[2026-06-13 03:41:36,227.227 INFO    ] 200
[2026-06-13 03:41:36,230.230 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673", "TM08202203260613034023673"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 03:41:36,233.233 INFO    ] 2026-06-13 03:41:36
[2026-06-13 03:41:36,359.359 INFO    ] 200
[2026-06-13 03:41:36,362.362 INFO    ] True
[2026-06-13 03:41:36,365.365 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613034023673
[2026-06-13 03:41:36,368.368 INFO    ] start order file deleted
[2026-06-13 03:41:36,371.371 INFO    ] Checking for system updates...
[2026-06-13 03:41:36,408.408 INFO    ] 200
[2026-06-13 03:41:36,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:36,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:41:36,467.467 INFO    ] No update needed
[2026-06-13 03:41:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 03:41:36,507.507 INFO    ] 200
[2026-06-13 03:41:36,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:36,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:41:36,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:41:36,606.606 INFO    ] No camera update needed
[2026-06-13 03:41:36,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:41:36,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:41:36,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:41:36,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:41:38,659.659 INFO    ] ================================================
[2026-06-13 03:41:38,675.675 INFO    ] Launching Daemon at Sat Jun 13 03:41:38 IST 2026
[2026-06-13 03:41:38,686.686 INFO    ] ================================================
[2026-06-13 03:41:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:41:39
[2026-06-13 03:41:39,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:41:39,487.487 INFO    ] Initializing speech engine...
[2026-06-13 03:41:39,493.493 INFO    ] 2026-06-13 03:41:39
[2026-06-13 03:41:39,679.679 INFO    ] 2026-06-13 03:41:39
[2026-06-13 03:41:39,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:41:39,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:41:39,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:41:39,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:41:39,994.994 INFO    ] time= 13/06/2026 03:41:39
[2026-06-13 03:41:40,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:41:40,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:41:40,183.183 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 03:41:40,211.211 INFO    ] Checking historical command: ID=1781302290860-0
[2026-06-13 03:41:40,213.213 INFO    ] process_and_cleanup_command: msg_id=1781302290860-0
[2026-06-13 03:41:40,219.219 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:30.584Z, expiry=30s
[2026-06-13 03:41:40,303.303 INFO    ] Command removed from stream: 1781302290860-0. returning for processing...
[2026-06-13 03:41:40,306.306 INFO    ] ***** get_valid_command
[2026-06-13 03:41:40,323.323 INFO    ] {'data': '{"request_id":"start-order-1781302290584-qtoexdzhk","orderId":"TM08202203260613034031939","is_vending":false}', 'timestamp': '2026-06-12T22:11:30.584Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp'}
[2026-06-13 03:41:40,335.335 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034031939', 'request_id': 'start-order-1781302290584-qtoexdzhk', 'is_vending': False}
[2026-06-13 03:41:40,364.364 INFO    ] Handling start order...
[2026-06-13 03:41:40,367.367 INFO    ] handle_start_order_command
[2026-06-13 03:41:40,373.373 INFO    ] _send_start_order_success: request_id=start-order-1781302290584-qtoexdzhk, order_id=TM08202203260613034031939
[2026-06-13 03:41:40,376.376 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:41:40,449.449 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302300387-0
[2026-06-13 03:41:40,452.452 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:41:40,456.456 INFO    ] Checking for system updates...
[2026-06-13 03:41:40,485.485 INFO    ] 200
[2026-06-13 03:41:40,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:40,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:41:40,528.528 INFO    ] No update needed
[2026-06-13 03:41:40,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 03:41:40,554.554 INFO    ] 200
[2026-06-13 03:41:40,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:40,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:41:40,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:41:40,687.687 INFO    ] No camera update needed
[2026-06-13 03:41:40,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:41:40,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:41:40,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:41:40,748.748 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:41:40,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:41:42,790.790 INFO    ] ================================================
[2026-06-13 03:41:42,807.807 INFO    ] Launching Daemon at Sat Jun 13 03:41:42 IST 2026
[2026-06-13 03:41:42,818.818 INFO    ] ================================================
[2026-06-13 03:41:43,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:41:43
[2026-06-13 03:41:43,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:41:43,620.620 INFO    ] Initializing speech engine...
[2026-06-13 03:41:43,625.625 INFO    ] 2026-06-13 03:41:43
[2026-06-13 03:41:43,831.831 INFO    ] 2026-06-13 03:41:43
[2026-06-13 03:41:43,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:41:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:41:44,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:41:44,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:41:44,234.234 INFO    ] time= 13/06/2026 03:41:44
[2026-06-13 03:41:44,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:41:44,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:41:44,344.344 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 03:41:44,348.348 INFO    ] Checking historical command: ID=1781302300387-0
[2026-06-13 03:41:44,373.373 INFO    ] process_and_cleanup_command: msg_id=1781302300387-0
[2026-06-13 03:41:44,374.374 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:40.374994Z, expiry=30s
[2026-06-13 03:41:44,483.483 INFO    ] Command removed from stream: 1781302300387-0. returning for processing...
[2026-06-13 03:41:44,486.486 INFO    ] ***** get_valid_command
[2026-06-13 03:41:44,489.489 INFO    ] {'metadata_order_id': 'TM08202203260613034031939', 'metadata_request_id': 'start-order-1781302290584-qtoexdzhk', 'timestamp': '2026-06-12T22:11:40.374994Z', 'message_type': 'command_response', 'message': 'start-order success', 'status': 'success', 'imei': 'TM08202203'}
[2026-06-13 03:41:44,494.494 INFO    ] Checking historical command: ID=1781302302361-0
[2026-06-13 03:41:44,498.498 INFO    ] process_and_cleanup_command: msg_id=1781302302361-0
[2026-06-13 03:41:44,501.501 INFO    ] is_command_expired: timestamp=2026-06-12T22:11:42.118Z, expiry=30s
[2026-06-13 03:41:44,544.544 INFO    ] Command removed from stream: 1781302302361-0. returning for processing...
[2026-06-13 03:41:44,547.547 INFO    ] ***** get_valid_command
[2026-06-13 03:41:44,550.550 INFO    ] {'data': '{"request_id":"process-order-1781302302118-zc7th3rp7","orderId":"TM08202203260613034031939","is_vending":false,"accessCode":"83379705"}', 'timestamp': '2026-06-12T22:11:42.118Z', 'command': 'process-order', 'source': 'webapp', 'timeout': '60'}
[2026-06-13 03:41:44,553.553 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034031939', 'accessCode': '83379705', 'is_vending': False, 'request_id': 'process-order-1781302302118-zc7th3rp7'}
[2026-06-13 03:41:44,556.556 INFO    ] Handling process order...
[2026-06-13 03:41:44,559.559 INFO    ] Processing process-order command...
[2026-06-13 03:41:44,562.562 INFO    ] 🔍 Lock file Order ID: TM08202203260613034031939, TS: 2026-06-13 03:41:40
[2026-06-13 03:41:44,571.571 INFO    ] ✅ Order lock valid for TM08202203260613034031939
[2026-06-13 03:41:44,573.573 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 03:41:44,577.577 INFO    ] processing access code 83379705 for order TM08202203260613034031939
[2026-06-13 03:41:44,581.581 INFO    ] 🔍 Lock file Order ID: TM08202203260613034031939, TS: 2026-06-13 03:41:40
[2026-06-13 03:41:44,584.584 INFO    ] ✅ Order lock valid for TM08202203260613034031939
[2026-06-13 03:41:44,588.588 INFO    ] 2026-06-13 03:41:44
[2026-06-13 03:41:44,615.615 INFO    ] 200
[2026-06-13 03:41:44,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:41:44,625.625 INFO    ] 83379705
[2026-06-13 03:41:44,629.629 INFO    ] 2026-06-13 03:41:44
[2026-06-13 03:41:44,633.633 INFO    ] session id :453802679
[2026-06-13 03:41:44,637.637 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=83379705&imei=TM08202203&session_id=453802679
[2026-06-13 03:41:45,472.472 INFO    ] 200
[2026-06-13 03:41:45,484.484 INFO    ] {"data": {"mobile": "8431671302", "order_id": "TM08202203260613034031939", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Bingo Chips Chilli Sprinkled 30gm", "tray_id": "24", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "83379705", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 03:41:45,493.493 INFO    ] 20
[2026-06-13 03:41:45,503.503 INFO    ] TM08202203260613034031939
[2026-06-13 03:41:45,512.512 INFO    ] 8431671302
[2026-06-13 03:41:45,515.515 INFO    ] 2026-06-13 03:41:45
[2026-06-13 03:41:45,517.517 INFO    ] Door Opening for user mobile ending with  one three zero two 
[2026-06-13 03:41:45,520.520 INFO    ] Door Opening for user mobile ending with  one three zero two 
[2026-06-13 03:41:45,522.522 INFO    ] c906c6a3893fd64448d70332e458f5b4
[2026-06-13 03:41:45,525.525 INFO    ] 2026-06-13 03:41:45
[2026-06-13 03:41:45,527.527 INFO    ] playing audio file
[2026-06-13 03:41:45,544.544 INFO    ] 2026-06-13 03:41:45
[2026-06-13 03:41:45,547.547 INFO    ] 2026-06-13 03:41:45
[2026-06-13 03:41:45,550.550 INFO    ] publish_status: order_id=TM08202203260613034031939
[2026-06-13 03:41:45,553.553 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034031939
[2026-06-13 03:41:45,610.610 INFO    ] [publish_status] Message added to stream with ID: 1781302305570-0
[2026-06-13 03:41:45,613.613 INFO    ] Published to order:TM08202203260613034031939: {'server_response': '{"data": {"proposed_sku_json": [{"door_id": "1", "mrp": "20", "offer_desc": "", "qty": 1, "unit_price": 20, "sku_total": 20, "offer_id": "", "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "name": "Bingo Chips Chilli Sprinkled 30gm", "tray_id": "24", "skuid": "4500452"}], "access_code": "83379705", "bill_amount": "20", "order_id": "TM08202203260613034031939", "mobile": "8431671302", "invoice_bill": "20"}, "msg": "Order Data", "status": true, "rstatus": true}', 'order_id': 'TM08202203260613034031939', 'timestamp': '2026-06-12T22:11:45.548834Z', 'server_status': 'order-started'} (ID: 1781302305570-0)
[2026-06-13 03:41:45,997.997 INFO    ] {'server_response': {'data': {'proposed_sku_json': [{'door_id': '1', 'mrp': '20', 'offer_desc': '', 'qty': 1, 'unit_price': 20, 'sku_total': 20, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm', 'tray_id': '24', 'skuid': '4500452'}], 'access_code': '83379705', 'bill_amount': '20', 'order_id': 'TM08202203260613034031939', 'mobile': '8431671302', 'invoice_bill': '20'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'order_id': 'TM08202203260613034031939', 'server_status': 'order-started'}
[2026-06-13 03:41:46,000.000 INFO    ] 200
[2026-06-13 03:41:46,003.003 INFO    ] {"data":{"server_response":{"data":{"proposed_sku_json":[{"door_id":"1","mrp":"20","offer_desc":"","qty":1,"unit_price":20,"sku_total":20,"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","name":"Bingo Chips Chilli Sprinkled 30gm","tray_id":"24","skuid":"4500452"}],"access_code":"83379705","bill_amount":"20","order_id":"TM08202203260613034031939","mobile":"8431671302","invoice_bill":"20"},"msg":"Order Data","status":true,"rstatus":true},"order_id":"TM08202203260613034031939","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:46,006.006 INFO    ] {'data': {'server_response': {'data': {'proposed_sku_json': [{'door_id': '1', 'mrp': '20', 'offer_desc': '', 'tray_id': '24', 'unit_price': 20, 'offer_id': '', 'sku_total': 20, 'name': 'Bingo Chips Chilli Sprinkled 30gm', 'qty': 1, 'skuid': '4500452', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg'}], 'bill_amount': '20', 'access_code': '83379705', 'order_id': 'TM08202203260613034031939', 'mobile': '8431671302', 'invoice_bill': '20'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'order_id': 'TM08202203260613034031939', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 03:41:46,008.008 INFO    ] 2026-06-13 03:41:46
[2026-06-13 03:41:46,056.056 INFO    ] 200
[2026-06-13 03:41:46,059.059 INFO    ] True
[2026-06-13 03:41:46,260.260 INFO    ] 200
[2026-06-13 03:41:46,263.263 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:46,269.269 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-13 03:41:46,271.271 INFO    ] *** process_order ***
[2026-06-13 03:41:47,451.451 INFO    ] 200
[2026-06-13 03:41:47,454.454 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:41:47,456.456 INFO    ] {'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-13 03:41:47,459.459 INFO    ] *** process_order ***
[2026-06-13 03:41:47,461.461 INFO    ] publish_status: order_id=TM08202203260613034031939
[2026-06-13 03:41:47,464.464 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034031939
[2026-06-13 03:41:47,526.526 INFO    ] [publish_status] Message added to stream with ID: 1781302307490-0
[2026-06-13 03:41:47,529.529 INFO    ] Published to order:TM08202203260613034031939: {'server_response': '{"delay": 0, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'order_id': 'TM08202203260613034031939', 'server_status': 'doorOpened'} (ID: 1781302307490-0)
[2026-06-13 03:41:48,574.574 INFO    ] 2026-06-13 03:41:48
[2026-06-13 03:41:48,577.577 INFO    ] publish_status: order_id=TM08202203260613034031939
[2026-06-13 03:41:48,580.580 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034031939
[2026-06-13 03:41:48,657.657 INFO    ] [publish_status] Message added to stream with ID: 1781302308621-0
[2026-06-13 03:41:48,660.660 INFO    ] Published to order:TM08202203260613034031939: {'server_response': '{"voiceNote": "Please Wait", "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'order_id': 'TM08202203260613034031939', 'timestamp': '2026-06-12T22:11:48.576119Z', 'server_status': 'processOrder'} (ID: 1781302308621-0)
[2026-06-13 03:41:48,771.771 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'order_id': 'TM08202203260613034031939', 'server_status': 'processOrder'}
[2026-06-13 03:41:48,773.773 INFO    ] 200
[2026-06-13 03:41:48,775.775 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"status":"true"},"order_id":"TM08202203260613034031939","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:48,776.776 INFO    ] {'data': {'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}, 'order_id': 'TM08202203260613034031939', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 03:41:48,778.778 INFO    ] 2026-06-13 03:41:48
[2026-06-13 03:41:48,779.779 INFO    ] None
[2026-06-13 03:41:48,781.781 INFO    ] Opening Door now
[2026-06-13 03:41:48,782.782 INFO    ] Opening Door now
[2026-06-13 03:41:48,783.783 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 03:41:48,785.785 INFO    ] 2026-06-13 03:41:48
[2026-06-13 03:41:48,786.786 INFO    ] playing audio file
[2026-06-13 03:41:48,809.809 INFO    ] 2026-06-13 03:41:48
[2026-06-13 03:41:48,811.811 INFO    ] 2026-06-13 03:41:48
[2026-06-13 03:41:51,932.932 INFO    ] 200
[2026-06-13 03:41:51,934.934 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:51,936.936 INFO    ] {'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}]}, '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-13 03:41:54,988.988 INFO    ] 200
[2026-06-13 03:41:54,990.990 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:54,992.992 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}]}, '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-13 03:41:58,034.034 INFO    ] 200
[2026-06-13 03:41:58,036.036 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:41:58,038.038 INFO    ] Please close door 1
[2026-06-13 03:41:58,039.039 INFO    ] Please close door 1
[2026-06-13 03:41:58,040.040 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 03:41:58,042.042 INFO    ] 2026-06-13 03:41:58
[2026-06-13 03:41:58,043.043 INFO    ] playing audio file
[2026-06-13 03:41:58,055.055 INFO    ] 2026-06-13 03:41:58
[2026-06-13 03:41:58,058.058 INFO    ] publish_status: order_id=TM08202203260613034031939
[2026-06-13 03:41:58,060.060 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034031939
[2026-06-13 03:41:58,106.106 INFO    ] [publish_status] Message added to stream with ID: 1781302318070-0
[2026-06-13 03:41:58,108.108 INFO    ] Published to order:TM08202203260613034031939: {'server_response': '{"voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Bingo Chips Chilli Sprinkled 30gm"}]}, "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"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "status": "False"}', 'order_id': 'TM08202203260613034031939', 'timestamp': '2026-06-12T22:11:58.056892Z', 'server_status': 'OrderStatus'} (ID: 1781302318070-0)
[2026-06-13 03:41:58,442.442 INFO    ] {'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}]}, '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}, 'order_id': 'TM08202203260613034031939', 'server_status': 'OrderStatus'}
[2026-06-13 03:41:58,444.444 INFO    ] 200
[2026-06-13 03:41:58,445.445 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Bingo Chips Chilli Sprinkled 30gm"}]},"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"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"status":"false"},"order_id":"TM08202203260613034031939","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:41:58,447.447 INFO    ] {'data': {'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'status': 'false'}, 'order_id': 'TM08202203260613034031939', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 03:41:58,449.449 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Bingo Chips Chilli Sprinkled 30gm'}]}, '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'False'}
[2026-06-13 03:42:01,509.509 INFO    ] 200
[2026-06-13 03:42:01,511.511 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:42:01,515.515 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 03:42:01,522.522 INFO    ] 2026-06-13 03:42:01
[2026-06-13 03:42:01,525.525 INFO    ] Order Completed 
[2026-06-13 03:42:01,528.528 INFO    ] Order Completed 
[2026-06-13 03:42:01,531.531 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 03:42:01,534.534 INFO    ] 2026-06-13 03:42:01
[2026-06-13 03:42:01,537.537 INFO    ] playing audio file
[2026-06-13 03:42:01,556.556 INFO    ] 2026-06-13 03:42:01
[2026-06-13 03:42:01,560.560 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 03:42:01,563.563 INFO    ] 2026-06-13 03:42:01
[2026-06-13 03:42:03,477.477 INFO    ] 200
[2026-06-13 03:42:03,478.478 INFO    ] {"res": "True", "orderId": "TM08202203260613034031939", "skus": [{"image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "skuid": "4500452", "door_id": "", "tray_id": "24", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 03:42:03,480.480 INFO    ] {'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613034031939', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'tray_id': '24', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'qty': 1, 'skuid': '4500452'}]}
[2026-06-13 03:42:03,481.481 INFO    ] {'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613034031939', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'tray_id': '24', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'qty': 1, 'skuid': '4500452'}]}
[2026-06-13 03:42:03,483.483 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,484.484 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,485.485 INFO    ] 20
[2026-06-13 03:42:03,486.486 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,490.490 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,492.492 INFO    ]  Your Bill Amount is 20
[2026-06-13 03:42:03,493.493 INFO    ]  Your Bill Amount is 20
[2026-06-13 03:42:03,494.494 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 03:42:03,496.496 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,497.497 INFO    ] playing audio file
[2026-06-13 03:42:03,508.508 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,510.510 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:03,512.512 INFO    ] publish_status: order_id=TM08202203260613034031939
[2026-06-13 03:42:03,514.514 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034031939
[2026-06-13 03:42:03,556.556 INFO    ] [publish_status] Message added to stream with ID: 1781302323520-0
[2026-06-13 03:42:03,558.558 INFO    ] Published to order:TM08202203260613034031939: {'server_response': '{"total_amount": 20.0, "rstatus": true, "anomaly": 0, "logic": "WBL", "orderId": "TM08202203260613034031939", "res": "True", "skus": [{"door_id": "", "mrp": "20", "tray_id": "24", "unit_price": "20", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500452-8664.jpg", "name": "Bingo Chips Chilli Sprinkled 30gm per peice", "qty": 1, "skuid": "4500452"}]}', 'order_id': 'TM08202203260613034031939', 'timestamp': '2026-06-12T22:12:03.511249Z', 'server_status': 'invoiceOrder'} (ID: 1781302323520-0)
[2026-06-13 03:42:03,860.860 INFO    ] {'server_response': {'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613034031939', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'tray_id': '24', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'qty': 1, 'skuid': '4500452'}]}, 'order_id': 'TM08202203260613034031939', 'server_status': 'invoiceOrder'}
[2026-06-13 03:42:03,861.861 INFO    ] 200
[2026-06-13 03:42:03,862.862 INFO    ] {"data":{"server_response":{"total_amount":20,"rstatus":true,"anomaly":0,"logic":"WBL","orderId":"TM08202203260613034031939","res":"true","skus":[{"door_id":"","mrp":"20","tray_id":"24","unit_price":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500452-8664.jpg","name":"Bingo Chips Chilli Sprinkled 30gm per peice","qty":1,"skuid":"4500452"}]},"order_id":"TM08202203260613034031939","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:42:03,864.864 INFO    ] {'data': {'server_response': {'total_amount': 20, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613034031939', 'res': 'true', 'skus': [{'door_id': '', 'mrp': '20', 'tray_id': '24', 'qty': 1, 'unit_price': '20', 'sku_total': 20, 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452'}]}, 'order_id': 'TM08202203260613034031939', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 03:42:03,866.866 INFO    ] {'data': {'server_response': {'total_amount': 20, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613034031939', 'res': 'true', 'skus': [{'door_id': '', 'mrp': '20', 'tray_id': '24', 'qty': 1, 'unit_price': '20', 'sku_total': 20, 'name': 'Bingo Chips Chilli Sprinkled 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500452-8664.jpg', 'skuid': '4500452'}]}, 'order_id': 'TM08202203260613034031939', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 03:42:03,868.868 INFO    ] 2026-06-13 03:42:03
[2026-06-13 03:42:06,045.045 INFO    ] 200
[2026-06-13 03:42:06,048.048 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939", "TM08202203260613034031939"], "orders_synced": [], "order_items_synced": ["TM08202203260613034031939_0"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 03:42:06,051.051 INFO    ] 2026-06-13 03:42:06
[2026-06-13 03:42:06,182.182 INFO    ] 200
[2026-06-13 03:42:06,184.184 INFO    ] True
[2026-06-13 03:42:06,187.187 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613034031939
[2026-06-13 03:42:06,190.190 INFO    ] start order file deleted
[2026-06-13 03:42:06,194.194 INFO    ] Checking for system updates...
[2026-06-13 03:42:06,232.232 INFO    ] 200
[2026-06-13 03:42:06,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:06,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:06,324.324 INFO    ] No update needed
[2026-06-13 03:42:06,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:06,361.361 INFO    ] 200
[2026-06-13 03:42:06,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:06,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:06,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:06,955.955 INFO    ] No camera update needed
[2026-06-13 03:42:06,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:06,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:06,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:06,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:09,011.011 INFO    ] ================================================
[2026-06-13 03:42:09,026.026 INFO    ] Launching Daemon at Sat Jun 13 03:42:09 IST 2026
[2026-06-13 03:42:09,037.037 INFO    ] ================================================
[2026-06-13 03:42:09,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:09
[2026-06-13 03:42:09,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:09,843.843 INFO    ] Initializing speech engine...
[2026-06-13 03:42:09,848.848 INFO    ] 2026-06-13 03:42:09
[2026-06-13 03:42:10,054.054 INFO    ] 2026-06-13 03:42:10
[2026-06-13 03:42:10,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:42:10,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:42:10,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:42:10,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:42:10,915.915 INFO    ] time= 13/06/2026 03:42:10
[2026-06-13 03:42:10,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:42:10,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:42:11,046.046 INFO    ] No existing commands found in stream
[2026-06-13 03:42:16,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:42:16,076.076 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 03:42:16,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:42:16,801.801 INFO    ] Checking for system updates...
[2026-06-13 03:42:16,822.822 INFO    ] 200
[2026-06-13 03:42:16,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:16,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:16,855.855 INFO    ] No update needed
[2026-06-13 03:42:16,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:16,878.878 INFO    ] 200
[2026-06-13 03:42:16,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:16,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:16,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:16,943.943 INFO    ] No camera update needed
[2026-06-13 03:42:16,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:16,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:16,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:16,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:18,991.991 INFO    ] ================================================
[2026-06-13 03:42:19,007.007 INFO    ] Launching Daemon at Sat Jun 13 03:42:19 IST 2026
[2026-06-13 03:42:19,018.018 INFO    ] ================================================
[2026-06-13 03:42:19,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:19
[2026-06-13 03:42:19,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:19,834.834 INFO    ] Initializing speech engine...
[2026-06-13 03:42:19,843.843 INFO    ] 2026-06-13 03:42:19
[2026-06-13 03:42:20,067.067 INFO    ] 2026-06-13 03:42:20
[2026-06-13 03:42:20,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:42:20,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:42:20,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:42:20,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:42:20,450.450 INFO    ] time= 13/06/2026 03:42:20
[2026-06-13 03:42:20,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:42:20,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:42:20,623.623 INFO    ] No existing commands found in stream
[2026-06-13 03:42:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:42:25,635.635 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 03:42:26,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:42:26,124.124 INFO    ] Checking for system updates...
[2026-06-13 03:42:26,147.147 INFO    ] 200
[2026-06-13 03:42:26,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:26,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:26,181.181 INFO    ] No update needed
[2026-06-13 03:42:26,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:26,201.201 INFO    ] 200
[2026-06-13 03:42:26,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:26,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:26,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:26,263.263 INFO    ] No camera update needed
[2026-06-13 03:42:26,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:26,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:26,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:26,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:28,310.310 INFO    ] ================================================
[2026-06-13 03:42:28,325.325 INFO    ] Launching Daemon at Sat Jun 13 03:42:28 IST 2026
[2026-06-13 03:42:28,336.336 INFO    ] ================================================
[2026-06-13 03:42:28,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:28
[2026-06-13 03:42:29,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:29,198.198 INFO    ] Initializing speech engine...
[2026-06-13 03:42:29,204.204 INFO    ] 2026-06-13 03:42:29
[2026-06-13 03:42:29,415.415 INFO    ] 2026-06-13 03:42:29
[2026-06-13 03:42:29,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:42:29,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:42:29,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:42:29,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:42:29,827.827 INFO    ] time= 13/06/2026 03:42:29
[2026-06-13 03:42:29,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:42:29,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:42:29,938.938 INFO    ] No existing commands found in stream
[2026-06-13 03:42:34,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:42:34,953.953 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 03:42:36,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:42:36,115.115 INFO    ] Checking for system updates...
[2026-06-13 03:42:36,136.136 INFO    ] 200
[2026-06-13 03:42:36,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:36,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:42:36,172.172 INFO    ] No update needed
[2026-06-13 03:42:36,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:36,194.194 INFO    ] 200
[2026-06-13 03:42:36,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:36,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:36,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:42:36,364.364 INFO    ] No camera update needed
[2026-06-13 03:42:36,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:36,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:36,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:36,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:38,413.413 INFO    ] ================================================
[2026-06-13 03:42:38,429.429 INFO    ] Launching Daemon at Sat Jun 13 03:42:38 IST 2026
[2026-06-13 03:42:38,440.440 INFO    ] ================================================
[2026-06-13 03:42:38,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:38
[2026-06-13 03:42:39,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:39,274.274 INFO    ] Initializing speech engine...
[2026-06-13 03:42:39,284.284 INFO    ] 2026-06-13 03:42:39
[2026-06-13 03:42:39,490.490 INFO    ] 2026-06-13 03:42:39
[2026-06-13 03:42:39,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:42:39,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:42:39,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:42:39,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:42:39,907.907 INFO    ] time= 13/06/2026 03:42:39
[2026-06-13 03:42:39,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:42:39,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:42:40,005.005 INFO    ] No existing commands found in stream
[2026-06-13 03:42:45,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:42:45,017.017 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 03:42:46,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:42:46,038.038 INFO    ] Checking for system updates...
[2026-06-13 03:42:46,059.059 INFO    ] 200
[2026-06-13 03:42:46,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:46,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:42:46,093.093 INFO    ] No update needed
[2026-06-13 03:42:46,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:46,114.114 INFO    ] 200
[2026-06-13 03:42:46,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:46,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:46,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:42:46,180.180 INFO    ] No camera update needed
[2026-06-13 03:42:46,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:46,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:46,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:46,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:48,221.221 INFO    ] ================================================
[2026-06-13 03:42:48,236.236 INFO    ] Launching Daemon at Sat Jun 13 03:42:48 IST 2026
[2026-06-13 03:42:48,247.247 INFO    ] ================================================
[2026-06-13 03:42:48,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:48
[2026-06-13 03:42:48,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:49,094.094 INFO    ] Initializing speech engine...
[2026-06-13 03:42:49,098.098 INFO    ] 2026-06-13 03:42:49
[2026-06-13 03:42:49,304.304 INFO    ] 2026-06-13 03:42:49
[2026-06-13 03:42:49,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:42:49,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:42:49,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:42:49,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:42:49,720.720 INFO    ] time= 13/06/2026 03:42:49
[2026-06-13 03:42:49,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:42:49,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:42:49,878.878 INFO    ] No existing commands found in stream
[2026-06-13 03:42:54,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:42:54,891.891 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 03:42:56,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:42:56,837.837 INFO    ] Checking for system updates...
[2026-06-13 03:42:56,859.859 INFO    ] 200
[2026-06-13 03:42:56,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:56,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:42:56,895.895 INFO    ] No update needed
[2026-06-13 03:42:56,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 03:42:56,916.916 INFO    ] 200
[2026-06-13 03:42:56,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:42:56,941.941 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:42:56,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:42:56,983.983 INFO    ] No camera update needed
[2026-06-13 03:42:56,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:42:56,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:42:56,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:42:56,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:42:59,024.024 INFO    ] ================================================
[2026-06-13 03:42:59,040.040 INFO    ] Launching Daemon at Sat Jun 13 03:42:59 IST 2026
[2026-06-13 03:42:59,051.051 INFO    ] ================================================
[2026-06-13 03:42:59,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:42:59
[2026-06-13 03:42:59,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:42:59,913.913 INFO    ] Initializing speech engine...
[2026-06-13 03:42:59,919.919 INFO    ] 2026-06-13 03:42:59
[2026-06-13 03:43:00,129.129 INFO    ] 2026-06-13 03:43:00
[2026-06-13 03:43:00,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:00,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:43:00,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:43:00,546.546 INFO    ] time= 13/06/2026 03:43:00
[2026-06-13 03:43:00,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:43:00,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:43:00,645.645 INFO    ] No existing commands found in stream
[2026-06-13 03:43:05,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:43:05,660.660 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 03:43:09,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:43:09,668.668 INFO    ] Checking for system updates...
[2026-06-13 03:43:09,689.689 INFO    ] 200
[2026-06-13 03:43:09,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:09,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:43:09,723.723 INFO    ] No update needed
[2026-06-13 03:43:09,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 03:43:09,744.744 INFO    ] 200
[2026-06-13 03:43:09,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:09,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:43:09,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:43:09,812.812 INFO    ] No camera update needed
[2026-06-13 03:43:09,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:43:09,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:43:09,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:43:09,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:43:11,860.860 INFO    ] ================================================
[2026-06-13 03:43:11,875.875 INFO    ] Launching Daemon at Sat Jun 13 03:43:11 IST 2026
[2026-06-13 03:43:11,886.886 INFO    ] ================================================
[2026-06-13 03:43:12,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:43:12
[2026-06-13 03:43:13,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:43:13,286.286 INFO    ] Initializing speech engine...
[2026-06-13 03:43:13,291.291 INFO    ] 2026-06-13 03:43:13
[2026-06-13 03:43:13,537.537 INFO    ] 2026-06-13 03:43:13
[2026-06-13 03:43:13,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:13,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:13,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:43:13,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:43:14,017.017 INFO    ] time= 13/06/2026 03:43:13
[2026-06-13 03:43:14,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:43:14,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:43:14,238.238 INFO    ] No existing commands found in stream
[2026-06-13 03:43:19,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:43:19,266.266 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 03:43:23,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:43:23,017.017 INFO    ] Checking for system updates...
[2026-06-13 03:43:23,038.038 INFO    ] 200
[2026-06-13 03:43:23,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:23,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:43:23,071.071 INFO    ] No update needed
[2026-06-13 03:43:23,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 03:43:23,092.092 INFO    ] 200
[2026-06-13 03:43:23,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:23,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:43:23,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:43:23,157.157 INFO    ] No camera update needed
[2026-06-13 03:43:23,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:43:23,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:43:23,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:43:23,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:43:25,207.207 INFO    ] ================================================
[2026-06-13 03:43:25,222.222 INFO    ] Launching Daemon at Sat Jun 13 03:43:25 IST 2026
[2026-06-13 03:43:25,232.232 INFO    ] ================================================
[2026-06-13 03:43:25,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:43:25
[2026-06-13 03:43:25,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:43:26,021.021 INFO    ] Initializing speech engine...
[2026-06-13 03:43:26,033.033 INFO    ] 2026-06-13 03:43:26
[2026-06-13 03:43:26,246.246 INFO    ] 2026-06-13 03:43:26
[2026-06-13 03:43:26,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:26,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:26,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:43:26,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:43:26,662.662 INFO    ] time= 13/06/2026 03:43:26
[2026-06-13 03:43:26,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:43:26,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:43:26,785.785 INFO    ] No existing commands found in stream
[2026-06-13 03:43:31,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:43:31,796.796 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 03:43:34,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:43:34,389.389 INFO    ] Checking for system updates...
[2026-06-13 03:43:34,410.410 INFO    ] 200
[2026-06-13 03:43:34,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:34,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:34,444.444 INFO    ] No update needed
[2026-06-13 03:43:34,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 03:43:34,465.465 INFO    ] 200
[2026-06-13 03:43:34,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:34,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:43:34,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:34,527.527 INFO    ] No camera update needed
[2026-06-13 03:43:34,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:43:34,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:43:34,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:43:34,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:43:36,574.574 INFO    ] ================================================
[2026-06-13 03:43:36,590.590 INFO    ] Launching Daemon at Sat Jun 13 03:43:36 IST 2026
[2026-06-13 03:43:36,601.601 INFO    ] ================================================
[2026-06-13 03:43:36,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:43:36
[2026-06-13 03:43:37,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:43:37,410.410 INFO    ] Initializing speech engine...
[2026-06-13 03:43:37,415.415 INFO    ] 2026-06-13 03:43:37
[2026-06-13 03:43:37,619.619 INFO    ] 2026-06-13 03:43:37
[2026-06-13 03:43:37,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:37,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:37,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:43:37,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:43:38,024.024 INFO    ] time= 13/06/2026 03:43:37
[2026-06-13 03:43:38,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:43:38,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:43:38,134.134 INFO    ] No existing commands found in stream
[2026-06-13 03:43:43,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:43:43,147.147 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 03:43:46,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:43:46,325.325 INFO    ] Checking for system updates...
[2026-06-13 03:43:46,362.362 INFO    ] 200
[2026-06-13 03:43:46,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:46,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:46,423.423 INFO    ] No update needed
[2026-06-13 03:43:46,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 03:43:46,460.460 INFO    ] 200
[2026-06-13 03:43:46,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:46,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:43:46,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:46,553.553 INFO    ] No camera update needed
[2026-06-13 03:43:46,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:43:46,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:43:46,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:43:46,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:43:48,608.608 INFO    ] ================================================
[2026-06-13 03:43:48,624.624 INFO    ] Launching Daemon at Sat Jun 13 03:43:48 IST 2026
[2026-06-13 03:43:48,635.635 INFO    ] ================================================
[2026-06-13 03:43:49,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:43:49
[2026-06-13 03:43:49,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:43:49,696.696 INFO    ] Initializing speech engine...
[2026-06-13 03:43:49,700.700 INFO    ] 2026-06-13 03:43:49
[2026-06-13 03:43:49,919.919 INFO    ] 2026-06-13 03:43:49
[2026-06-13 03:43:49,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:50,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:50,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:43:50,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:43:50,324.324 INFO    ] time= 13/06/2026 03:43:50
[2026-06-13 03:43:50,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:43:50,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:43:50,441.441 INFO    ] No existing commands found in stream
[2026-06-13 03:43:55,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:43:55,454.454 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 03:43:56,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:43:56,467.467 INFO    ] Checking for system updates...
[2026-06-13 03:43:56,488.488 INFO    ] 200
[2026-06-13 03:43:56,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:56,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:56,521.521 INFO    ] No update needed
[2026-06-13 03:43:56,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 03:43:56,543.543 INFO    ] 200
[2026-06-13 03:43:56,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:43:56,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:43:56,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:43:56,609.609 INFO    ] No camera update needed
[2026-06-13 03:43:56,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:43:56,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:43:56,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:43:56,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:43:58,656.656 INFO    ] ================================================
[2026-06-13 03:43:58,672.672 INFO    ] Launching Daemon at Sat Jun 13 03:43:58 IST 2026
[2026-06-13 03:43:58,683.683 INFO    ] ================================================
[2026-06-13 03:43:59,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:43:59
[2026-06-13 03:43:59,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:43:59,473.473 INFO    ] Initializing speech engine...
[2026-06-13 03:43:59,478.478 INFO    ] 2026-06-13 03:43:59
[2026-06-13 03:43:59,696.696 INFO    ] 2026-06-13 03:43:59
[2026-06-13 03:43:59,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:43:59,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:43:59,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:00,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:00,106.106 INFO    ] time= 13/06/2026 03:44:00
[2026-06-13 03:44:00,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:00,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:00,219.219 INFO    ] No existing commands found in stream
[2026-06-13 03:44:05,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:05,232.232 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 03:44:06,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:44:06,352.352 INFO    ] Checking for system updates...
[2026-06-13 03:44:06,373.373 INFO    ] 200
[2026-06-13 03:44:06,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:06,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:06,406.406 INFO    ] No update needed
[2026-06-13 03:44:06,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:06,427.427 INFO    ] 200
[2026-06-13 03:44:06,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:06,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:06,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:06,494.494 INFO    ] No camera update needed
[2026-06-13 03:44:06,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:06,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:06,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:06,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:44:08,544.544 INFO    ] ================================================
[2026-06-13 03:44:08,561.561 INFO    ] Launching Daemon at Sat Jun 13 03:44:08 IST 2026
[2026-06-13 03:44:08,573.573 INFO    ] ================================================
[2026-06-13 03:44:08,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:44:08
[2026-06-13 03:44:09,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:44:09,390.390 INFO    ] Initializing speech engine...
[2026-06-13 03:44:09,395.395 INFO    ] 2026-06-13 03:44:09
[2026-06-13 03:44:09,601.601 INFO    ] 2026-06-13 03:44:09
[2026-06-13 03:44:09,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:44:09,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:44:09,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:09,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:10,017.017 INFO    ] time= 13/06/2026 03:44:09
[2026-06-13 03:44:10,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:10,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:10,125.125 INFO    ] No existing commands found in stream
[2026-06-13 03:44:15,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:15,131.131 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 03:44:15,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:44:15,684.684 INFO    ] Checking for system updates...
[2026-06-13 03:44:15,706.706 INFO    ] 200
[2026-06-13 03:44:15,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:15,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:15,741.741 INFO    ] No update needed
[2026-06-13 03:44:15,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:15,762.762 INFO    ] 200
[2026-06-13 03:44:15,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:15,790.790 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:15,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:15,831.831 INFO    ] No camera update needed
[2026-06-13 03:44:15,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:15,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:15,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:15,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:44:17,889.889 INFO    ] ================================================
[2026-06-13 03:44:17,905.905 INFO    ] Launching Daemon at Sat Jun 13 03:44:17 IST 2026
[2026-06-13 03:44:17,917.917 INFO    ] ================================================
[2026-06-13 03:44:18,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:44:18
[2026-06-13 03:44:18,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:44:18,710.710 INFO    ] Initializing speech engine...
[2026-06-13 03:44:18,719.719 INFO    ] 2026-06-13 03:44:18
[2026-06-13 03:44:18,943.943 INFO    ] 2026-06-13 03:44:18
[2026-06-13 03:44:18,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:44:19,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:44:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:19,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:19,360.360 INFO    ] time= 13/06/2026 03:44:19
[2026-06-13 03:44:19,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:19,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:19,507.507 INFO    ] No existing commands found in stream
[2026-06-13 03:44:24,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:24,521.521 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 03:44:25,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:44:25,797.797 INFO    ] Checking for system updates...
[2026-06-13 03:44:25,819.819 INFO    ] 200
[2026-06-13 03:44:25,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:25,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:25,852.852 INFO    ] No update needed
[2026-06-13 03:44:25,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:25,875.875 INFO    ] 200
[2026-06-13 03:44:25,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:25,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:25,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:25,938.938 INFO    ] No camera update needed
[2026-06-13 03:44:25,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:25,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:25,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:25,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:44:27,978.978 INFO    ] ================================================
[2026-06-13 03:44:27,994.994 INFO    ] Launching Daemon at Sat Jun 13 03:44:27 IST 2026
[2026-06-13 03:44:28,005.005 INFO    ] ================================================
[2026-06-13 03:44:28,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:44:28
[2026-06-13 03:44:28,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:44:28,810.810 INFO    ] Initializing speech engine...
[2026-06-13 03:44:28,814.814 INFO    ] 2026-06-13 03:44:28
[2026-06-13 03:44:29,019.019 INFO    ] 2026-06-13 03:44:28
[2026-06-13 03:44:29,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:44:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:44:29,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:29,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:29,433.433 INFO    ] time= 13/06/2026 03:44:29
[2026-06-13 03:44:29,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:29,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:29,539.539 INFO    ] No existing commands found in stream
[2026-06-13 03:44:34,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:34,552.552 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 03:44:36,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:44:36,404.404 INFO    ] Checking for system updates...
[2026-06-13 03:44:36,425.425 INFO    ] 200
[2026-06-13 03:44:36,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:36,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:36,458.458 INFO    ] No update needed
[2026-06-13 03:44:36,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:36,479.479 INFO    ] 200
[2026-06-13 03:44:36,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:36,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:36,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:36,550.550 INFO    ] No camera update needed
[2026-06-13 03:44:36,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:36,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:36,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:36,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:44:38,601.601 INFO    ] ================================================
[2026-06-13 03:44:38,617.617 INFO    ] Launching Daemon at Sat Jun 13 03:44:38 IST 2026
[2026-06-13 03:44:38,627.627 INFO    ] ================================================
[2026-06-13 03:44:38,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:44:38
[2026-06-13 03:44:39,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:44:39,408.408 INFO    ] Initializing speech engine...
[2026-06-13 03:44:39,413.413 INFO    ] 2026-06-13 03:44:39
[2026-06-13 03:44:39,616.616 INFO    ] 2026-06-13 03:44:39
[2026-06-13 03:44:39,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:44:39,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:44:39,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:39,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:40,033.033 INFO    ] time= 13/06/2026 03:44:39
[2026-06-13 03:44:40,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:40,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:40,132.132 INFO    ] No existing commands found in stream
[2026-06-13 03:44:45,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:45,145.145 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 03:44:48,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:44:48,758.758 INFO    ] Checking for system updates...
[2026-06-13 03:44:48,781.781 INFO    ] 200
[2026-06-13 03:44:48,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:48,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:48,816.816 INFO    ] No update needed
[2026-06-13 03:44:48,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:48,838.838 INFO    ] 200
[2026-06-13 03:44:48,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:48,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:49,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:44:49,007.007 INFO    ] No camera update needed
[2026-06-13 03:44:49,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:49,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:49,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:49,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:44:51,056.056 INFO    ] ================================================
[2026-06-13 03:44:51,072.072 INFO    ] Launching Daemon at Sat Jun 13 03:44:51 IST 2026
[2026-06-13 03:44:51,082.082 INFO    ] ================================================
[2026-06-13 03:44:51,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:44:51
[2026-06-13 03:44:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:44:51,900.900 INFO    ] Initializing speech engine...
[2026-06-13 03:44:51,905.905 INFO    ] 2026-06-13 03:44:51
[2026-06-13 03:44:52,121.121 INFO    ] 2026-06-13 03:44:52
[2026-06-13 03:44:52,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:44:52,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:44:52,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:44:52,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:44:52,476.476 INFO    ] time= 13/06/2026 03:44:52
[2026-06-13 03:44:52,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:44:52,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:44:52,646.646 INFO    ] No existing commands found in stream
[2026-06-13 03:44:57,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:44:57,659.659 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 03:44:58,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:44:58,629.629 INFO    ] Checking for system updates...
[2026-06-13 03:44:58,650.650 INFO    ] 200
[2026-06-13 03:44:58,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:58,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:58,684.684 INFO    ] No update needed
[2026-06-13 03:44:58,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 03:44:58,707.707 INFO    ] 200
[2026-06-13 03:44:58,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:44:58,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:44:58,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:44:58,784.784 INFO    ] No camera update needed
[2026-06-13 03:44:58,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:44:58,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:44:58,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:44:58,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:00,831.831 INFO    ] ================================================
[2026-06-13 03:45:00,846.846 INFO    ] Launching Daemon at Sat Jun 13 03:45:00 IST 2026
[2026-06-13 03:45:00,857.857 INFO    ] ================================================
[2026-06-13 03:45:01,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:01
[2026-06-13 03:45:02,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:02,240.240 INFO    ] Initializing speech engine...
[2026-06-13 03:45:02,251.251 INFO    ] 2026-06-13 03:45:02
[2026-06-13 03:45:02,445.445 INFO    ] 2026-06-13 03:45:02
[2026-06-13 03:45:02,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:02,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:02,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:02,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:02,722.722 INFO    ] time= 13/06/2026 03:45:02
[2026-06-13 03:45:02,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:02,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:02,815.815 INFO    ] No existing commands found in stream
[2026-06-13 03:45:07,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:45:07,852.852 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 03:45:09,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:45:09,674.674 INFO    ] Checking for system updates...
[2026-06-13 03:45:09,695.695 INFO    ] 200
[2026-06-13 03:45:09,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:09,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:09,730.730 INFO    ] No update needed
[2026-06-13 03:45:09,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 03:45:09,752.752 INFO    ] 200
[2026-06-13 03:45:09,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:09,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:45:09,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:09,816.816 INFO    ] No camera update needed
[2026-06-13 03:45:09,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:45:09,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:45:09,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:45:09,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:11,869.869 INFO    ] ================================================
[2026-06-13 03:45:11,886.886 INFO    ] Launching Daemon at Sat Jun 13 03:45:11 IST 2026
[2026-06-13 03:45:11,897.897 INFO    ] ================================================
[2026-06-13 03:45:12,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:12
[2026-06-13 03:45:12,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:13,084.084 INFO    ] Initializing speech engine...
[2026-06-13 03:45:13,090.090 INFO    ] 2026-06-13 03:45:13
[2026-06-13 03:45:13,294.294 INFO    ] 2026-06-13 03:45:13
[2026-06-13 03:45:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:13,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:13,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:13,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:13,607.607 INFO    ] time= 13/06/2026 03:45:13
[2026-06-13 03:45:13,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:13,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:13,809.809 INFO    ] No existing commands found in stream
[2026-06-13 03:45:18,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:45:18,822.822 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 03:45:22,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:45:22,372.372 INFO    ] Checking for system updates...
[2026-06-13 03:45:22,396.396 INFO    ] 200
[2026-06-13 03:45:22,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:22,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:22,438.438 INFO    ] No update needed
[2026-06-13 03:45:22,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 03:45:22,461.461 INFO    ] 200
[2026-06-13 03:45:22,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:22,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:45:22,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:22,531.531 INFO    ] No camera update needed
[2026-06-13 03:45:22,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:45:22,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:45:22,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:45:22,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:24,584.584 INFO    ] ================================================
[2026-06-13 03:45:24,599.599 INFO    ] Launching Daemon at Sat Jun 13 03:45:24 IST 2026
[2026-06-13 03:45:24,617.617 INFO    ] ================================================
[2026-06-13 03:45:24,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:24
[2026-06-13 03:45:25,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:25,416.416 INFO    ] Initializing speech engine...
[2026-06-13 03:45:25,428.428 INFO    ] 2026-06-13 03:45:25
[2026-06-13 03:45:25,634.634 INFO    ] 2026-06-13 03:45:25
[2026-06-13 03:45:25,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:25,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:25,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:25,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:26,037.037 INFO    ] time= 13/06/2026 03:45:25
[2026-06-13 03:45:26,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:26,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:26,158.158 INFO    ] No existing commands found in stream
[2026-06-13 03:45:31,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:45:31,172.172 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 03:45:32,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:45:32,013.013 INFO    ] Checking for system updates...
[2026-06-13 03:45:32,036.036 INFO    ] 200
[2026-06-13 03:45:32,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:32,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:45:32,073.073 INFO    ] No update needed
[2026-06-13 03:45:32,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 03:45:32,100.100 INFO    ] 200
[2026-06-13 03:45:32,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:32,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:45:32,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:45:32,160.160 INFO    ] No camera update needed
[2026-06-13 03:45:32,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:45:32,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:45:32,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:45:32,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:34,205.205 INFO    ] ================================================
[2026-06-13 03:45:34,222.222 INFO    ] Launching Daemon at Sat Jun 13 03:45:34 IST 2026
[2026-06-13 03:45:34,234.234 INFO    ] ================================================
[2026-06-13 03:45:34,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:34
[2026-06-13 03:45:34,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:35,012.012 INFO    ] Initializing speech engine...
[2026-06-13 03:45:35,017.017 INFO    ] 2026-06-13 03:45:35
[2026-06-13 03:45:35,220.220 INFO    ] 2026-06-13 03:45:35
[2026-06-13 03:45:35,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:35,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:35,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:35,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:35,624.624 INFO    ] time= 13/06/2026 03:45:35
[2026-06-13 03:45:35,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:35,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:35,733.733 INFO    ] No existing commands found in stream
[2026-06-13 03:45:40,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:45:40,746.746 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 03:45:44,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:45:44,980.980 INFO    ] Checking for system updates...
[2026-06-13 03:45:45,001.001 INFO    ] 200
[2026-06-13 03:45:45,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:45,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:45,035.035 INFO    ] No update needed
[2026-06-13 03:45:45,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 03:45:45,056.056 INFO    ] 200
[2026-06-13 03:45:45,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:45,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:45:45,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:45,128.128 INFO    ] No camera update needed
[2026-06-13 03:45:45,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:45:45,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:45:45,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:45:45,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:47,178.178 INFO    ] ================================================
[2026-06-13 03:45:47,194.194 INFO    ] Launching Daemon at Sat Jun 13 03:45:47 IST 2026
[2026-06-13 03:45:47,207.207 INFO    ] ================================================
[2026-06-13 03:45:47,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:47
[2026-06-13 03:45:47,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:48,033.033 INFO    ] Initializing speech engine...
[2026-06-13 03:45:48,044.044 INFO    ] 2026-06-13 03:45:48
[2026-06-13 03:45:48,247.247 INFO    ] 2026-06-13 03:45:48
[2026-06-13 03:45:48,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:48,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:48,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:48,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:48,649.649 INFO    ] time= 13/06/2026 03:45:48
[2026-06-13 03:45:48,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:48,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:48,763.763 INFO    ] No existing commands found in stream
[2026-06-13 03:45:53,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:45:53,777.777 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 03:45:55,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:45:55,960.960 INFO    ] Checking for system updates...
[2026-06-13 03:45:56,005.005 INFO    ] 200
[2026-06-13 03:45:56,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:56,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:45:56,070.070 INFO    ] No update needed
[2026-06-13 03:45:56,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 03:45:56,095.095 INFO    ] 200
[2026-06-13 03:45:56,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:45:56,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:45:56,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:45:56,162.162 INFO    ] No camera update needed
[2026-06-13 03:45:56,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:45:56,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:45:56,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:45:56,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:45:58,209.209 INFO    ] ================================================
[2026-06-13 03:45:58,225.225 INFO    ] Launching Daemon at Sat Jun 13 03:45:58 IST 2026
[2026-06-13 03:45:58,235.235 INFO    ] ================================================
[2026-06-13 03:45:58,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:45:58
[2026-06-13 03:45:58,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:45:59,016.016 INFO    ] Initializing speech engine...
[2026-06-13 03:45:59,026.026 INFO    ] 2026-06-13 03:45:59
[2026-06-13 03:45:59,231.231 INFO    ] 2026-06-13 03:45:59
[2026-06-13 03:45:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:45:59,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:45:59,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:45:59,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:45:59,627.627 INFO    ] time= 13/06/2026 03:45:59
[2026-06-13 03:45:59,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:45:59,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:45:59,747.747 INFO    ] No existing commands found in stream
[2026-06-13 03:46:04,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:46:04,760.760 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 03:46:05,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:46:05,770.770 INFO    ] Checking for system updates...
[2026-06-13 03:46:05,791.791 INFO    ] 200
[2026-06-13 03:46:05,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:05,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:05,828.828 INFO    ] No update needed
[2026-06-13 03:46:05,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:05,849.849 INFO    ] 200
[2026-06-13 03:46:05,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:05,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:05,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:46:05,917.917 INFO    ] No camera update needed
[2026-06-13 03:46:05,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:05,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:05,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:05,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:46:07,958.958 INFO    ] ================================================
[2026-06-13 03:46:07,973.973 INFO    ] Launching Daemon at Sat Jun 13 03:46:07 IST 2026
[2026-06-13 03:46:07,984.984 INFO    ] ================================================
[2026-06-13 03:46:08,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:46:08
[2026-06-13 03:46:08,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:46:08,799.799 INFO    ] Initializing speech engine...
[2026-06-13 03:46:08,804.804 INFO    ] 2026-06-13 03:46:08
[2026-06-13 03:46:09,008.008 INFO    ] 2026-06-13 03:46:08
[2026-06-13 03:46:09,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:46:09,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:46:09,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:46:09,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:46:09,412.412 INFO    ] time= 13/06/2026 03:46:09
[2026-06-13 03:46:09,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:46:09,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:46:09,526.526 INFO    ] No existing commands found in stream
[2026-06-13 03:46:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:46:14,540.540 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 03:46:18,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:46:18,170.170 INFO    ] Checking for system updates...
[2026-06-13 03:46:18,191.191 INFO    ] 200
[2026-06-13 03:46:18,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:18,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:46:18,224.224 INFO    ] No update needed
[2026-06-13 03:46:18,225.225 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:18,246.246 INFO    ] 200
[2026-06-13 03:46:18,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:18,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:18,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:46:18,312.312 INFO    ] No camera update needed
[2026-06-13 03:46:18,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:18,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:18,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:18,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:46:20,360.360 INFO    ] ================================================
[2026-06-13 03:46:20,375.375 INFO    ] Launching Daemon at Sat Jun 13 03:46:20 IST 2026
[2026-06-13 03:46:20,386.386 INFO    ] ================================================
[2026-06-13 03:46:20,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:46:20
[2026-06-13 03:46:21,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:46:21,244.244 INFO    ] Initializing speech engine...
[2026-06-13 03:46:21,248.248 INFO    ] 2026-06-13 03:46:21
[2026-06-13 03:46:21,455.455 INFO    ] 2026-06-13 03:46:21
[2026-06-13 03:46:21,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:46:21,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:46:21,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:46:21,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:46:21,858.858 INFO    ] time= 13/06/2026 03:46:21
[2026-06-13 03:46:21,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:46:21,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:46:22,024.024 INFO    ] No existing commands found in stream
[2026-06-13 03:46:27,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:46:27,039.039 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 03:46:30,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:46:30,521.521 INFO    ] Checking for system updates...
[2026-06-13 03:46:30,559.559 INFO    ] 200
[2026-06-13 03:46:30,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:30,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:46:30,618.618 INFO    ] No update needed
[2026-06-13 03:46:30,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:30,654.654 INFO    ] 200
[2026-06-13 03:46:30,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:30,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:30,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:46:30,741.741 INFO    ] No camera update needed
[2026-06-13 03:46:30,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:30,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:30,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:30,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:46:32,800.800 INFO    ] ================================================
[2026-06-13 03:46:32,815.815 INFO    ] Launching Daemon at Sat Jun 13 03:46:32 IST 2026
[2026-06-13 03:46:32,826.826 INFO    ] ================================================
[2026-06-13 03:46:33,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:46:33
[2026-06-13 03:46:33,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:46:33,605.605 INFO    ] Initializing speech engine...
[2026-06-13 03:46:33,609.609 INFO    ] 2026-06-13 03:46:33
[2026-06-13 03:46:33,840.840 INFO    ] 2026-06-13 03:46:33
[2026-06-13 03:46:33,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:46:33,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:46:34,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:46:34,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:46:34,114.114 INFO    ] time= 13/06/2026 03:46:34
[2026-06-13 03:46:34,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:46:34,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:46:34,308.308 INFO    ] No existing commands found in stream
[2026-06-13 03:46:39,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:46:39,320.320 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 03:46:43,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:46:43,174.174 INFO    ] Checking for system updates...
[2026-06-13 03:46:43,196.196 INFO    ] 200
[2026-06-13 03:46:43,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:43,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:43,230.230 INFO    ] No update needed
[2026-06-13 03:46:43,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:43,252.252 INFO    ] 200
[2026-06-13 03:46:43,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:43,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:43,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:43,317.317 INFO    ] No camera update needed
[2026-06-13 03:46:43,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:43,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:43,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:43,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:46:45,365.365 INFO    ] ================================================
[2026-06-13 03:46:45,381.381 INFO    ] Launching Daemon at Sat Jun 13 03:46:45 IST 2026
[2026-06-13 03:46:45,392.392 INFO    ] ================================================
[2026-06-13 03:46:45,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:46:45
[2026-06-13 03:46:46,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:46:46,276.276 INFO    ] Initializing speech engine...
[2026-06-13 03:46:46,281.281 INFO    ] 2026-06-13 03:46:46
[2026-06-13 03:46:46,491.491 INFO    ] 2026-06-13 03:46:46
[2026-06-13 03:46:46,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:46:46,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:46:46,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:46:46,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:46:46,900.900 INFO    ] time= 13/06/2026 03:46:46
[2026-06-13 03:46:46,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:46:46,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:46:47,059.059 INFO    ] No existing commands found in stream
[2026-06-13 03:46:52,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:46:52,073.073 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 03:46:53,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:46:53,555.555 INFO    ] Checking for system updates...
[2026-06-13 03:46:53,576.576 INFO    ] 200
[2026-06-13 03:46:53,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:53,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:53,612.612 INFO    ] No update needed
[2026-06-13 03:46:53,614.614 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:53,635.635 INFO    ] 200
[2026-06-13 03:46:53,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:53,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:53,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:53,814.814 INFO    ] No camera update needed
[2026-06-13 03:46:53,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:53,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:53,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:53,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:46:55,863.863 INFO    ] ================================================
[2026-06-13 03:46:55,879.879 INFO    ] Launching Daemon at Sat Jun 13 03:46:55 IST 2026
[2026-06-13 03:46:55,889.889 INFO    ] ================================================
[2026-06-13 03:46:56,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:46:56
[2026-06-13 03:46:56,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:46:56,896.896 INFO    ] Initializing speech engine...
[2026-06-13 03:46:56,903.903 INFO    ] 2026-06-13 03:46:56
[2026-06-13 03:46:57,201.201 INFO    ] 2026-06-13 03:46:57
[2026-06-13 03:46:57,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:46:57,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:46:57,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:46:57,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:46:57,583.583 INFO    ] time= 13/06/2026 03:46:57
[2026-06-13 03:46:57,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:46:57,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:46:57,709.709 INFO    ] No existing commands found in stream
[2026-06-13 03:46:58,925.925 INFO    ] Received new command: ID=1781302618539-0
[2026-06-13 03:46:58,934.934 INFO    ] process_and_cleanup_command: msg_id=1781302618539-0
[2026-06-13 03:46:58,942.942 INFO    ] is_command_expired: timestamp=2026-06-12T22:16:57.990Z, expiry=30s
[2026-06-13 03:46:59,024.024 INFO    ] Command removed from stream: 1781302618539-0. returning for processing...
[2026-06-13 03:46:59,034.034 INFO    ] ***** get_valid_command
[2026-06-13 03:46:59,040.040 INFO    ] {'timestamp': '2026-06-12T22:16:57.990Z', 'source': 'webapp', 'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1781302617989-ljkvwlsls","orderId":"TM08202203260613034552519","is_vending":false}'}
[2026-06-13 03:46:59,051.051 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034552519', 'is_vending': False, 'request_id': 'start-order-1781302617989-ljkvwlsls'}
[2026-06-13 03:46:59,054.054 INFO    ] Handling start order...
[2026-06-13 03:46:59,056.056 INFO    ] handle_start_order_command
[2026-06-13 03:46:59,099.099 INFO    ] _send_start_order_success: request_id=start-order-1781302617989-ljkvwlsls, order_id=TM08202203260613034552519
[2026-06-13 03:46:59,153.153 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:46:59,258.258 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302619170-0
[2026-06-13 03:46:59,263.263 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:46:59,266.266 INFO    ] Checking for system updates...
[2026-06-13 03:46:59,340.340 INFO    ] 200
[2026-06-13 03:46:59,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:59,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:59,496.496 INFO    ] No update needed
[2026-06-13 03:46:59,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 03:46:59,544.544 INFO    ] 200
[2026-06-13 03:46:59,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:46:59,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:46:59,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:46:59,647.647 INFO    ] No camera update needed
[2026-06-13 03:46:59,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:46:59,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:46:59,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:46:59,685.685 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:46:59,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:47:01,734.734 INFO    ] ================================================
[2026-06-13 03:47:01,752.752 INFO    ] Launching Daemon at Sat Jun 13 03:47:01 IST 2026
[2026-06-13 03:47:01,770.770 INFO    ] ================================================
[2026-06-13 03:47:02,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:47:02
[2026-06-13 03:47:03,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:47:03,356.356 INFO    ] Initializing speech engine...
[2026-06-13 03:47:03,364.364 INFO    ] 2026-06-13 03:47:03
[2026-06-13 03:47:03,650.650 INFO    ] 2026-06-13 03:47:03
[2026-06-13 03:47:03,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:47:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:47:03,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:47:03,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:47:04,021.021 INFO    ] time= 13/06/2026 03:47:03
[2026-06-13 03:47:04,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:47:04,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:47:04,106.106 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 03:47:04,175.175 INFO    ] Checking historical command: ID=1781302619170-0
[2026-06-13 03:47:04,239.239 INFO    ] process_and_cleanup_command: msg_id=1781302619170-0
[2026-06-13 03:47:04,258.258 INFO    ] is_command_expired: timestamp=2026-06-12T22:16:59.110839Z, expiry=30s
[2026-06-13 03:47:04,406.406 INFO    ] Command removed from stream: 1781302619170-0. returning for processing...
[2026-06-13 03:47:04,457.457 INFO    ] ***** get_valid_command
[2026-06-13 03:47:04,508.508 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781302617989-ljkvwlsls', 'imei': 'TM08202203', 'status': 'success', 'message': 'start-order success', 'metadata_order_id': 'TM08202203260613034552519', 'timestamp': '2026-06-12T22:16:59.110839Z'}
[2026-06-13 03:47:04,550.550 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 03:47:05,578.578 INFO    ] Received new command: ID=1781302625513-0
[2026-06-13 03:47:05,585.585 INFO    ] process_and_cleanup_command: msg_id=1781302625513-0
[2026-06-13 03:47:05,588.588 INFO    ] is_command_expired: timestamp=2026-06-12T22:17:05.033Z, expiry=30s
[2026-06-13 03:47:05,632.632 INFO    ] Command removed from stream: 1781302625513-0. returning for processing...
[2026-06-13 03:47:05,636.636 INFO    ] ***** get_valid_command
[2026-06-13 03:47:05,639.639 INFO    ] {'data': '{"request_id":"start-order-1781302625033-9482afoxb","orderId":"TM08202203260613034552519","is_vending":false}', 'timeout': '10', 'timestamp': '2026-06-12T22:17:05.033Z', 'command': 'start-order', 'source': 'webapp'}
[2026-06-13 03:47:05,642.642 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034552519', 'is_vending': False, 'request_id': 'start-order-1781302625033-9482afoxb'}
[2026-06-13 03:47:05,646.646 INFO    ] Handling start order...
[2026-06-13 03:47:05,650.650 INFO    ] handle_start_order_command
[2026-06-13 03:47:05,656.656 INFO    ] 🔍 handle_start_order_command: Lock file Order ID: TM08202203260613034552519, TS: 2026-06-13 03:46:59
[2026-06-13 03:47:05,667.667 INFO    ] _send_start_order_success: request_id=start-order-1781302625033-9482afoxb, order_id=TM08202203260613034552519
[2026-06-13 03:47:05,671.671 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:47:05,728.728 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302625680-0
[2026-06-13 03:47:05,733.733 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:47:05,746.746 INFO    ] Checking for system updates...
[2026-06-13 03:47:05,781.781 INFO    ] 200
[2026-06-13 03:47:05,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:05,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:47:05,830.830 INFO    ] No update needed
[2026-06-13 03:47:05,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 03:47:05,897.897 INFO    ] 200
[2026-06-13 03:47:05,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:05,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:47:06,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:47:06,030.030 INFO    ] No camera update needed
[2026-06-13 03:47:06,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:47:06,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:47:06,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:47:06,085.085 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:47:06,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:47:08,144.144 INFO    ] ================================================
[2026-06-13 03:47:08,159.159 INFO    ] Launching Daemon at Sat Jun 13 03:47:08 IST 2026
[2026-06-13 03:47:08,170.170 INFO    ] ================================================
[2026-06-13 03:47:08,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:47:08
[2026-06-13 03:47:08,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:47:08,984.984 INFO    ] Initializing speech engine...
[2026-06-13 03:47:08,988.988 INFO    ] 2026-06-13 03:47:08
[2026-06-13 03:47:09,197.197 INFO    ] 2026-06-13 03:47:09
[2026-06-13 03:47:09,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:47:09,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:47:09,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:47:09,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:47:09,620.620 INFO    ] time= 13/06/2026 03:47:09
[2026-06-13 03:47:09,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:47:09,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:47:09,779.779 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 03:47:09,783.783 INFO    ] Checking historical command: ID=1781302625680-0
[2026-06-13 03:47:09,795.795 INFO    ] process_and_cleanup_command: msg_id=1781302625680-0
[2026-06-13 03:47:09,812.812 INFO    ] is_command_expired: timestamp=2026-06-12T22:17:05.668856Z, expiry=30s
[2026-06-13 03:47:09,929.929 INFO    ] Command removed from stream: 1781302625680-0. returning for processing...
[2026-06-13 03:47:09,933.933 INFO    ] ***** get_valid_command
[2026-06-13 03:47:09,938.938 INFO    ] {'metadata_order_id': 'TM08202203260613034552519', 'metadata_request_id': 'start-order-1781302625033-9482afoxb', 'timestamp': '2026-06-12T22:17:05.668856Z', 'imei': 'TM08202203', 'status': 'success', 'message_type': 'command_response', 'message': 'start-order success'}
[2026-06-13 03:47:09,942.942 INFO    ] Checking historical command: ID=1781302628331-0
[2026-06-13 03:47:09,946.946 INFO    ] process_and_cleanup_command: msg_id=1781302628331-0
[2026-06-13 03:47:09,949.949 INFO    ] is_command_expired: timestamp=2026-06-12T22:17:07.747Z, expiry=30s
[2026-06-13 03:47:09,994.994 INFO    ] Command removed from stream: 1781302628331-0. returning for processing...
[2026-06-13 03:47:09,997.997 INFO    ] ***** get_valid_command
[2026-06-13 03:47:10,000.000 INFO    ] {'data': '{"request_id":"process-order-1781302627747-nq2rfg1h0","orderId":"TM08202203260613034552519","is_vending":false,"accessCode":"26078892"}', 'timestamp': '2026-06-12T22:17:07.747Z', 'command': 'process-order', 'timeout': '60', 'source': 'webapp'}
[2026-06-13 03:47:10,003.003 INFO    ] ***** Parsed command data: {'accessCode': '26078892', 'request_id': 'process-order-1781302627747-nq2rfg1h0', 'is_vending': False, 'orderId': 'TM08202203260613034552519'}
[2026-06-13 03:47:10,006.006 INFO    ] Handling process order...
[2026-06-13 03:47:10,009.009 INFO    ] Processing process-order command...
[2026-06-13 03:47:10,012.012 INFO    ] 🔍 Lock file Order ID: TM08202203260613034552519, TS: 2026-06-13 03:47:05
[2026-06-13 03:47:10,021.021 INFO    ] ✅ Order lock valid for TM08202203260613034552519
[2026-06-13 03:47:10,024.024 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 03:47:10,027.027 INFO    ] processing access code 26078892 for order TM08202203260613034552519
[2026-06-13 03:47:10,030.030 INFO    ] 🔍 Lock file Order ID: TM08202203260613034552519, TS: 2026-06-13 03:47:05
[2026-06-13 03:47:10,034.034 INFO    ] ✅ Order lock valid for TM08202203260613034552519
[2026-06-13 03:47:10,037.037 INFO    ] 2026-06-13 03:47:10
[2026-06-13 03:47:10,066.066 INFO    ] 200
[2026-06-13 03:47:10,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:10,074.074 INFO    ] 26078892
[2026-06-13 03:47:10,077.077 INFO    ] 2026-06-13 03:47:10
[2026-06-13 03:47:10,082.082 INFO    ] session id :456369701
[2026-06-13 03:47:10,085.085 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=26078892&imei=TM08202203&session_id=456369701
[2026-06-13 03:47:11,060.060 INFO    ] 200
[2026-06-13 03:47:11,068.068 INFO    ] {"data": {"mobile": "8257079399", "order_id": "TM08202203260613034552519", "bill_amount": "10", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "26078892", "invoice_bill": "10"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 03:47:11,078.078 INFO    ] 10
[2026-06-13 03:47:11,084.084 INFO    ] TM08202203260613034552519
[2026-06-13 03:47:11,093.093 INFO    ] 8257079399
[2026-06-13 03:47:11,100.100 INFO    ] 2026-06-13 03:47:11
[2026-06-13 03:47:11,133.133 INFO    ] Door Opening for user mobile ending with  nine three nine nine 
[2026-06-13 03:47:11,141.141 INFO    ] Door Opening for user mobile ending with  nine three nine nine 
[2026-06-13 03:47:11,163.163 INFO    ] fa2d831e2632e8e94b4143660b42be9d
[2026-06-13 03:47:11,170.170 INFO    ] 2026-06-13 03:47:11
[2026-06-13 03:47:11,175.175 INFO    ] playing audio file
[2026-06-13 03:47:11,199.199 INFO    ] 2026-06-13 03:47:11
[2026-06-13 03:47:11,205.205 INFO    ] 2026-06-13 03:47:11
[2026-06-13 03:47:11,216.216 INFO    ] publish_status: order_id=TM08202203260613034552519
[2026-06-13 03:47:11,223.223 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034552519
[2026-06-13 03:47:11,349.349 INFO    ] [publish_status] Message added to stream with ID: 1781302631250-0
[2026-06-13 03:47:11,392.392 INFO    ] Published to order:TM08202203260613034552519: {'order_id': 'TM08202203260613034552519', 'server_response': '{"rstatus": true, "data": {"bill_amount": "10", "order_id": "TM08202203260613034552519", "proposed_sku_json": [{"door_id": "1", "sku_total": 10, "name": "Modern Kitchens Potato waffers Spicy 24gm ", "offer_id": "", "unit_price": 10, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "offer_desc": "", "qty": 1, "tray_id": "23"}], "invoice_bill": "10", "mobile": "8257079399", "access_code": "26078892"}, "msg": "Order Data", "status": true}', 'timestamp': '2026-06-12T22:17:11.208636Z', 'server_status': 'order-started'} (ID: 1781302631250-0)
[2026-06-13 03:47:11,796.796 INFO    ] {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': True, 'data': {'bill_amount': '10', 'order_id': 'TM08202203260613034552519', 'proposed_sku_json': [{'door_id': '1', 'sku_total': 10, 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'offer_id': '', 'unit_price': 10, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'skuid': '4500687', 'offer_desc': '', 'qty': 1, 'tray_id': '23'}], 'invoice_bill': '10', 'mobile': '8257079399', 'access_code': '26078892'}, 'msg': 'Order Data', 'status': True}, 'server_status': 'order-started'}
[2026-06-13 03:47:11,798.798 INFO    ] 200
[2026-06-13 03:47:11,801.801 INFO    ] {"data":{"order_id":"TM08202203260613034552519","server_response":{"rstatus":true,"data":{"bill_amount":"10","order_id":"TM08202203260613034552519","proposed_sku_json":[{"door_id":"1","sku_total":10,"name":"Modern Kitchens Potato waffers Spicy 24gm ","offer_id":"","unit_price":10,"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","skuid":"4500687","offer_desc":"","qty":1,"tray_id":"23"}],"invoice_bill":"10","mobile":"8257079399","access_code":"26078892"},"msg":"Order Data","status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:47:11,803.803 INFO    ] {'data': {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': True, 'data': {'order_id': 'TM08202203260613034552519', 'bill_amount': '10', 'proposed_sku_json': [{'door_id': '1', 'sku_total': 10, 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'mrp': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'offer_desc': '', 'skuid': '4500687', 'offer_id': '', 'qty': 1, 'tray_id': '23'}], 'access_code': '26078892', 'mobile': '8257079399', 'invoice_bill': '10'}, 'msg': 'Order Data', 'status': True}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 03:47:11,806.806 INFO    ] 2026-06-13 03:47:11
[2026-06-13 03:47:11,856.856 INFO    ] 200
[2026-06-13 03:47:11,859.859 INFO    ] True
[2026-06-13 03:47:12,036.036 INFO    ] 200
[2026-06-13 03:47:12,040.040 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 03:47:12,043.043 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 03:47:12,047.047 INFO    ] *** process_order ***
[2026-06-13 03:47:13,206.206 INFO    ] 200
[2026-06-13 03:47:13,207.207 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:47:13,209.209 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}}
[2026-06-13 03:47:13,210.210 INFO    ] *** process_order ***
[2026-06-13 03:47:13,212.212 INFO    ] publish_status: order_id=TM08202203260613034552519
[2026-06-13 03:47:13,214.214 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034552519
[2026-06-13 03:47:13,291.291 INFO    ] [publish_status] Message added to stream with ID: 1781302633250-0
[2026-06-13 03:47:13,292.292 INFO    ] Published to order:TM08202203260613034552519: {'order_id': 'TM08202203260613034552519', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "status": "True", "delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}}', 'server_status': 'doorOpened'} (ID: 1781302633250-0)
[2026-06-13 03:47:14,334.334 INFO    ] 2026-06-13 03:47:14
[2026-06-13 03:47:14,337.337 INFO    ] publish_status: order_id=TM08202203260613034552519
[2026-06-13 03:47:14,340.340 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034552519
[2026-06-13 03:47:14,425.425 INFO    ] [publish_status] Message added to stream with ID: 1781302634383-0
[2026-06-13 03:47:14,429.429 INFO    ] Published to order:TM08202203260613034552519: {'order_id': 'TM08202203260613034552519', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "status": "True", "delay": 0, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}}', 'timestamp': '2026-06-12T22:17:14.335567Z', 'server_status': 'processOrder'} (ID: 1781302634383-0)
[2026-06-13 03:47:14,547.547 INFO    ] {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'True', 'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}}, 'server_status': 'processOrder'}
[2026-06-13 03:47:14,549.549 INFO    ] 200
[2026-06-13 03:47:14,550.550 INFO    ] {"data":{"order_id":"TM08202203260613034552519","server_response":{"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","status":"true","delay":0,"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:47:14,552.552 INFO    ] {'data': {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'true', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 03:47:14,554.554 INFO    ] 2026-06-13 03:47:14
[2026-06-13 03:47:14,555.555 INFO    ] None
[2026-06-13 03:47:14,557.557 INFO    ] Opening Door now
[2026-06-13 03:47:14,558.558 INFO    ] Opening Door now
[2026-06-13 03:47:14,560.560 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 03:47:14,561.561 INFO    ] 2026-06-13 03:47:14
[2026-06-13 03:47:14,563.563 INFO    ] playing audio file
[2026-06-13 03:47:14,574.574 INFO    ] 2026-06-13 03:47:14
[2026-06-13 03:47:14,576.576 INFO    ] 2026-06-13 03:47:14
[2026-06-13 03:47:17,658.658 INFO    ] 200
[2026-06-13 03:47:17,661.661 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:47:17,665.665 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is open now', 'status': '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'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 03:47:20,733.733 INFO    ] 200
[2026-06-13 03:47:20,736.736 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:47:20,740.740 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': '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'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 03:47:23,778.778 INFO    ] 200
[2026-06-13 03:47:23,780.780 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:47:23,782.782 INFO    ] Please close door 1
[2026-06-13 03:47:23,784.784 INFO    ] Please close door 1
[2026-06-13 03:47:23,785.785 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 03:47:23,787.787 INFO    ] 2026-06-13 03:47:23
[2026-06-13 03:47:23,789.789 INFO    ] playing audio file
[2026-06-13 03:47:23,800.800 INFO    ] 2026-06-13 03:47:23
[2026-06-13 03:47:23,802.802 INFO    ] publish_status: order_id=TM08202203260613034552519
[2026-06-13 03:47:23,804.804 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034552519
[2026-06-13 03:47:23,857.857 INFO    ] [publish_status] Message added to stream with ID: 1781302643816-0
[2026-06-13 03:47:23,859.859 INFO    ] Published to order:TM08202203260613034552519: {'order_id': 'TM08202203260613034552519', 'server_response': '{"rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "status": "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"}, "error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}}', 'timestamp': '2026-06-12T22:17:23.801105Z', 'server_status': 'OrderStatus'} (ID: 1781302643816-0)
[2026-06-13 03:47:24,183.183 INFO    ] {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': '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'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}, 'server_status': 'OrderStatus'}
[2026-06-13 03:47:24,184.184 INFO    ] 200
[2026-06-13 03:47:24,186.186 INFO    ] {"data":{"order_id":"TM08202203260613034552519","server_response":{"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 1","status":"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"},"error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:47:24,187.187 INFO    ] {'data': {'order_id': 'TM08202203260613034552519', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 03:47:24,189.189 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': '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'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 03:47:27,253.253 INFO    ] 200
[2026-06-13 03:47:27,257.257 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:47:27,261.261 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, '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': ''}}
[2026-06-13 03:47:27,264.264 INFO    ] 2026-06-13 03:47:27
[2026-06-13 03:47:27,267.267 INFO    ] Order Completed 
[2026-06-13 03:47:27,271.271 INFO    ] Order Completed 
[2026-06-13 03:47:27,274.274 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 03:47:27,277.277 INFO    ] 2026-06-13 03:47:27
[2026-06-13 03:47:27,280.280 INFO    ] playing audio file
[2026-06-13 03:47:27,300.300 INFO    ] 2026-06-13 03:47:27
[2026-06-13 03:47:27,304.304 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'delay': 100, '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': ''}}
[2026-06-13 03:47:27,308.308 INFO    ] 2026-06-13 03:47:27
[2026-06-13 03:47:28,616.616 INFO    ] 200
[2026-06-13 03:47:28,620.620 INFO    ] {"res": "True", "orderId": "TM08202203260613034552519", "skus": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 10.0}
[2026-06-13 03:47:28,623.623 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'sku_total': 10.0, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'unit_price': '10', 'skuid': '4500687', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'mrp': '10', 'qty': 1, 'tray_id': '23'}], 'total_amount': 10.0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM08202203260613034552519'}
[2026-06-13 03:47:28,627.627 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'sku_total': 10.0, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'unit_price': '10', 'skuid': '4500687', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'mrp': '10', 'qty': 1, 'tray_id': '23'}], 'total_amount': 10.0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM08202203260613034552519'}
[2026-06-13 03:47:28,631.631 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,634.634 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,637.637 INFO    ] 10
[2026-06-13 03:47:28,640.640 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,643.643 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,645.645 INFO    ]  Your Bill Amount is 10
[2026-06-13 03:47:28,648.648 INFO    ]  Your Bill Amount is 10
[2026-06-13 03:47:28,651.651 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-13 03:47:28,654.654 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,657.657 INFO    ] playing audio file
[2026-06-13 03:47:28,678.678 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,682.682 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:28,686.686 INFO    ] publish_status: order_id=TM08202203260613034552519
[2026-06-13 03:47:28,689.689 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034552519
[2026-06-13 03:47:28,740.740 INFO    ] [publish_status] Message added to stream with ID: 1781302648697-0
[2026-06-13 03:47:28,743.743 INFO    ] Published to order:TM08202203260613034552519: {'order_id': 'TM08202203260613034552519', 'server_response': '{"anomaly": 0, "rstatus": true, "skus": [{"door_id": "", "sku_total": 10.0, "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "skuid": "4500687", "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "mrp": "10", "qty": 1, "tray_id": "23"}], "total_amount": 10.0, "logic": "WBL", "res": "True", "orderId": "TM08202203260613034552519"}', 'timestamp': '2026-06-12T22:17:28.683638Z', 'server_status': 'invoiceOrder'} (ID: 1781302648697-0)
[2026-06-13 03:47:28,866.866 INFO    ] {'order_id': 'TM08202203260613034552519', 'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'sku_total': 10.0, 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'unit_price': '10', 'skuid': '4500687', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'mrp': '10', 'qty': 1, 'tray_id': '23'}], 'total_amount': 10.0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM08202203260613034552519'}, 'server_status': 'invoiceOrder'}
[2026-06-13 03:47:28,869.869 INFO    ] 200
[2026-06-13 03:47:28,873.873 INFO    ] {"data":{"order_id":"TM08202203260613034552519","server_response":{"anomaly":0,"rstatus":true,"skus":[{"door_id":"","sku_total":10,"name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","unit_price":"10","skuid":"4500687","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","mrp":"10","qty":1,"tray_id":"23"}],"total_amount":10,"logic":"WBL","res":"true","orderId":"TM08202203260613034552519"},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:47:28,876.876 INFO    ] {'data': {'order_id': 'TM08202203260613034552519', 'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'skuid': '4500687', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'tray_id': '23'}], 'total_amount': 10, 'logic': 'WBL', 'res': 'true', 'orderId': 'TM08202203260613034552519'}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 03:47:28,880.880 INFO    ] {'data': {'order_id': 'TM08202203260613034552519', 'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [{'door_id': '', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'skuid': '4500687', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'tray_id': '23'}], 'total_amount': 10, 'logic': 'WBL', 'res': 'true', 'orderId': 'TM08202203260613034552519'}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 03:47:28,884.884 INFO    ] 2026-06-13 03:47:28
[2026-06-13 03:47:31,082.082 INFO    ] 200
[2026-06-13 03:47:31,085.085 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519", "TM08202203260613034552519"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 03:47:31,089.089 INFO    ] 2026-06-13 03:47:31
[2026-06-13 03:47:31,198.198 INFO    ] 200
[2026-06-13 03:47:31,200.200 INFO    ] True
[2026-06-13 03:47:31,202.202 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613034552519
[2026-06-13 03:47:31,204.204 INFO    ] start order file deleted
[2026-06-13 03:47:31,206.206 INFO    ] Checking for system updates...
[2026-06-13 03:47:31,227.227 INFO    ] 200
[2026-06-13 03:47:31,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:31,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:47:31,265.265 INFO    ] No update needed
[2026-06-13 03:47:31,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 03:47:31,289.289 INFO    ] 200
[2026-06-13 03:47:31,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:31,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:47:31,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:47:31,395.395 INFO    ] No camera update needed
[2026-06-13 03:47:31,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:47:31,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:47:31,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:47:31,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:47:33,449.449 INFO    ] ================================================
[2026-06-13 03:47:33,465.465 INFO    ] Launching Daemon at Sat Jun 13 03:47:33 IST 2026
[2026-06-13 03:47:33,476.476 INFO    ] ================================================
[2026-06-13 03:47:34,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:47:34
[2026-06-13 03:47:34,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:47:34,809.809 INFO    ] Initializing speech engine...
[2026-06-13 03:47:34,814.814 INFO    ] 2026-06-13 03:47:34
[2026-06-13 03:47:35,018.018 INFO    ] 2026-06-13 03:47:34
[2026-06-13 03:47:35,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:47:35,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:47:35,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:47:35,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:47:35,421.421 INFO    ] time= 13/06/2026 03:47:35
[2026-06-13 03:47:35,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:47:35,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:47:35,537.537 INFO    ] No existing commands found in stream
[2026-06-13 03:47:40,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:47:40,550.550 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 03:47:43,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:47:43,499.499 INFO    ] Checking for system updates...
[2026-06-13 03:47:43,520.520 INFO    ] 200
[2026-06-13 03:47:43,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:43,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:47:43,553.553 INFO    ] No update needed
[2026-06-13 03:47:43,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 03:47:43,574.574 INFO    ] 200
[2026-06-13 03:47:43,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:43,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:47:43,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:47:43,638.638 INFO    ] No camera update needed
[2026-06-13 03:47:43,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:47:43,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:47:43,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:47:43,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:47:45,686.686 INFO    ] ================================================
[2026-06-13 03:47:45,701.701 INFO    ] Launching Daemon at Sat Jun 13 03:47:45 IST 2026
[2026-06-13 03:47:45,712.712 INFO    ] ================================================
[2026-06-13 03:47:46,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:47:46
[2026-06-13 03:47:46,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:47:46,532.532 INFO    ] Initializing speech engine...
[2026-06-13 03:47:46,537.537 INFO    ] 2026-06-13 03:47:46
[2026-06-13 03:47:46,741.741 INFO    ] 2026-06-13 03:47:46
[2026-06-13 03:47:46,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:47:46,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:47:46,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:47:47,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:47:47,127.127 INFO    ] time= 13/06/2026 03:47:47
[2026-06-13 03:47:47,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:47:47,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:47:47,260.260 INFO    ] No existing commands found in stream
[2026-06-13 03:47:52,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:47:52,273.273 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 03:47:54,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:47:54,008.008 INFO    ] Checking for system updates...
[2026-06-13 03:47:54,030.030 INFO    ] 200
[2026-06-13 03:47:54,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:54,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:47:54,063.063 INFO    ] No update needed
[2026-06-13 03:47:54,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 03:47:54,083.083 INFO    ] 200
[2026-06-13 03:47:54,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:47:54,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:47:54,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:47:54,155.155 INFO    ] No camera update needed
[2026-06-13 03:47:54,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:47:54,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:47:54,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:47:54,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:47:56,201.201 INFO    ] ================================================
[2026-06-13 03:47:56,216.216 INFO    ] Launching Daemon at Sat Jun 13 03:47:56 IST 2026
[2026-06-13 03:47:56,227.227 INFO    ] ================================================
[2026-06-13 03:47:56,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:47:56
[2026-06-13 03:47:56,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:47:57,025.025 INFO    ] Initializing speech engine...
[2026-06-13 03:47:57,031.031 INFO    ] 2026-06-13 03:47:57
[2026-06-13 03:47:57,235.235 INFO    ] 2026-06-13 03:47:57
[2026-06-13 03:47:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:47:57,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:47:57,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:47:57,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:47:57,651.651 INFO    ] time= 13/06/2026 03:47:57
[2026-06-13 03:47:57,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:47:57,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:47:57,759.759 INFO    ] No existing commands found in stream
[2026-06-13 03:48:02,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:02,772.772 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 03:48:06,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:48:06,878.878 INFO    ] Checking for system updates...
[2026-06-13 03:48:06,899.899 INFO    ] 200
[2026-06-13 03:48:06,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:06,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:06,932.932 INFO    ] No update needed
[2026-06-13 03:48:06,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 03:48:06,953.953 INFO    ] 200
[2026-06-13 03:48:06,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:06,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:48:07,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:07,018.018 INFO    ] No camera update needed
[2026-06-13 03:48:07,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:48:07,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:48:07,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:48:07,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:48:09,066.066 INFO    ] ================================================
[2026-06-13 03:48:09,081.081 INFO    ] Launching Daemon at Sat Jun 13 03:48:09 IST 2026
[2026-06-13 03:48:09,092.092 INFO    ] ================================================
[2026-06-13 03:48:09,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:48:09
[2026-06-13 03:48:10,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:48:10,375.375 INFO    ] Initializing speech engine...
[2026-06-13 03:48:10,384.384 INFO    ] 2026-06-13 03:48:10
[2026-06-13 03:48:10,637.637 INFO    ] 2026-06-13 03:48:10
[2026-06-13 03:48:10,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:48:10,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:48:10,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:48:10,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:48:10,981.981 INFO    ] time= 13/06/2026 03:48:10
[2026-06-13 03:48:10,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:48:11,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:48:11,095.095 INFO    ] No existing commands found in stream
[2026-06-13 03:48:16,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:16,111.111 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 03:48:18,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:48:18,666.666 INFO    ] Checking for system updates...
[2026-06-13 03:48:18,687.687 INFO    ] 200
[2026-06-13 03:48:18,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:18,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:18,721.721 INFO    ] No update needed
[2026-06-13 03:48:18,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 03:48:18,743.743 INFO    ] 200
[2026-06-13 03:48:18,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:18,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:48:18,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:18,812.812 INFO    ] No camera update needed
[2026-06-13 03:48:18,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:48:18,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:48:18,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:48:18,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:48:20,861.861 INFO    ] ================================================
[2026-06-13 03:48:20,876.876 INFO    ] Launching Daemon at Sat Jun 13 03:48:20 IST 2026
[2026-06-13 03:48:20,888.888 INFO    ] ================================================
[2026-06-13 03:48:21,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:48:21
[2026-06-13 03:48:21,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:48:21,767.767 INFO    ] Initializing speech engine...
[2026-06-13 03:48:21,772.772 INFO    ] 2026-06-13 03:48:21
[2026-06-13 03:48:21,990.990 INFO    ] 2026-06-13 03:48:21
[2026-06-13 03:48:22,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:48:22,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:48:22,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:48:22,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:48:22,419.419 INFO    ] time= 13/06/2026 03:48:22
[2026-06-13 03:48:22,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:48:22,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:48:22,532.532 INFO    ] No existing commands found in stream
[2026-06-13 03:48:27,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:27,545.545 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 03:48:28,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:48:28,958.958 INFO    ] Checking for system updates...
[2026-06-13 03:48:28,980.980 INFO    ] 200
[2026-06-13 03:48:28,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:29,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:29,013.013 INFO    ] No update needed
[2026-06-13 03:48:29,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 03:48:29,037.037 INFO    ] 200
[2026-06-13 03:48:29,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:29,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:48:29,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:29,104.104 INFO    ] No camera update needed
[2026-06-13 03:48:29,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:48:29,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:48:29,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:48:29,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:48:31,152.152 INFO    ] ================================================
[2026-06-13 03:48:31,168.168 INFO    ] Launching Daemon at Sat Jun 13 03:48:31 IST 2026
[2026-06-13 03:48:31,180.180 INFO    ] ================================================
[2026-06-13 03:48:31,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:48:31
[2026-06-13 03:48:31,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:48:32,223.223 INFO    ] Initializing speech engine...
[2026-06-13 03:48:32,231.231 INFO    ] 2026-06-13 03:48:32
[2026-06-13 03:48:32,493.493 INFO    ] 2026-06-13 03:48:32
[2026-06-13 03:48:32,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:48:32,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:48:32,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:48:32,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:48:32,818.818 INFO    ] time= 13/06/2026 03:48:32
[2026-06-13 03:48:32,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:48:32,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:48:32,942.942 INFO    ] No existing commands found in stream
[2026-06-13 03:48:37,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:37,971.971 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 03:48:39,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:48:39,318.318 INFO    ] Checking for system updates...
[2026-06-13 03:48:39,339.339 INFO    ] 200
[2026-06-13 03:48:39,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:39,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:48:39,373.373 INFO    ] No update needed
[2026-06-13 03:48:39,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 03:48:39,393.393 INFO    ] 200
[2026-06-13 03:48:39,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:39,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:48:39,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:48:39,456.456 INFO    ] No camera update needed
[2026-06-13 03:48:39,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:48:39,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:48:39,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:48:39,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:48:41,505.505 INFO    ] ================================================
[2026-06-13 03:48:41,521.521 INFO    ] Launching Daemon at Sat Jun 13 03:48:41 IST 2026
[2026-06-13 03:48:41,532.532 INFO    ] ================================================
[2026-06-13 03:48:41,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:48:41
[2026-06-13 03:48:42,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:48:42,313.313 INFO    ] Initializing speech engine...
[2026-06-13 03:48:42,321.321 INFO    ] 2026-06-13 03:48:42
[2026-06-13 03:48:42,546.546 INFO    ] 2026-06-13 03:48:42
[2026-06-13 03:48:42,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:48:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:48:42,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:48:42,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:48:42,947.947 INFO    ] time= 13/06/2026 03:48:42
[2026-06-13 03:48:43,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:48:43,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:48:43,108.108 INFO    ] No existing commands found in stream
[2026-06-13 03:48:48,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:48,121.121 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 03:48:50,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:48:50,010.010 INFO    ] Checking for system updates...
[2026-06-13 03:48:50,032.032 INFO    ] 200
[2026-06-13 03:48:50,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:50,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:50,067.067 INFO    ] No update needed
[2026-06-13 03:48:50,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 03:48:50,088.088 INFO    ] 200
[2026-06-13 03:48:50,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:48:50,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:48:50,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:48:50,155.155 INFO    ] No camera update needed
[2026-06-13 03:48:50,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:48:50,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:48:50,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:48:50,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:48:52,203.203 INFO    ] ================================================
[2026-06-13 03:48:52,219.219 INFO    ] Launching Daemon at Sat Jun 13 03:48:52 IST 2026
[2026-06-13 03:48:52,229.229 INFO    ] ================================================
[2026-06-13 03:48:52,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:48:52
[2026-06-13 03:48:52,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:48:53,113.113 INFO    ] Initializing speech engine...
[2026-06-13 03:48:53,119.119 INFO    ] 2026-06-13 03:48:53
[2026-06-13 03:48:53,328.328 INFO    ] 2026-06-13 03:48:53
[2026-06-13 03:48:53,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:48:53,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:48:53,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:48:53,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:48:53,741.741 INFO    ] time= 13/06/2026 03:48:53
[2026-06-13 03:48:53,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:48:53,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:48:53,855.855 INFO    ] No existing commands found in stream
[2026-06-13 03:48:58,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:48:58,868.868 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 03:49:00,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:49:00,755.755 INFO    ] Checking for system updates...
[2026-06-13 03:49:00,776.776 INFO    ] 200
[2026-06-13 03:49:00,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:00,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:00,813.813 INFO    ] No update needed
[2026-06-13 03:49:00,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:00,836.836 INFO    ] 200
[2026-06-13 03:49:00,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:00,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:01,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:01,009.009 INFO    ] No camera update needed
[2026-06-13 03:49:01,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:01,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:01,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:01,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:49:03,052.052 INFO    ] ================================================
[2026-06-13 03:49:03,068.068 INFO    ] Launching Daemon at Sat Jun 13 03:49:03 IST 2026
[2026-06-13 03:49:03,079.079 INFO    ] ================================================
[2026-06-13 03:49:03,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:49:03
[2026-06-13 03:49:03,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:49:03,913.913 INFO    ] Initializing speech engine...
[2026-06-13 03:49:03,917.917 INFO    ] 2026-06-13 03:49:03
[2026-06-13 03:49:04,124.124 INFO    ] 2026-06-13 03:49:04
[2026-06-13 03:49:04,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:49:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:49:04,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:49:04,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:49:04,534.534 INFO    ] time= 13/06/2026 03:49:04
[2026-06-13 03:49:04,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:49:04,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:49:04,640.640 INFO    ] No existing commands found in stream
[2026-06-13 03:49:09,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:49:09,658.658 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 03:49:13,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:49:13,748.748 INFO    ] Checking for system updates...
[2026-06-13 03:49:13,769.769 INFO    ] 200
[2026-06-13 03:49:13,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:13,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:13,803.803 INFO    ] No update needed
[2026-06-13 03:49:13,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:13,824.824 INFO    ] 200
[2026-06-13 03:49:13,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:13,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:13,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:13,891.891 INFO    ] No camera update needed
[2026-06-13 03:49:13,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:13,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:13,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:13,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:49:15,938.938 INFO    ] ================================================
[2026-06-13 03:49:15,954.954 INFO    ] Launching Daemon at Sat Jun 13 03:49:15 IST 2026
[2026-06-13 03:49:15,965.965 INFO    ] ================================================
[2026-06-13 03:49:16,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:49:16
[2026-06-13 03:49:16,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:49:16,800.800 INFO    ] Initializing speech engine...
[2026-06-13 03:49:16,813.813 INFO    ] 2026-06-13 03:49:16
[2026-06-13 03:49:17,071.071 INFO    ] 2026-06-13 03:49:17
[2026-06-13 03:49:17,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:49:17,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:49:17,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:49:17,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:49:17,541.541 INFO    ] time= 13/06/2026 03:49:17
[2026-06-13 03:49:17,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:49:17,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:49:17,682.682 INFO    ] No existing commands found in stream
[2026-06-13 03:49:22,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:49:22,695.695 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 03:49:24,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:49:24,396.396 INFO    ] Checking for system updates...
[2026-06-13 03:49:24,418.418 INFO    ] 200
[2026-06-13 03:49:24,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:24,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:24,452.452 INFO    ] No update needed
[2026-06-13 03:49:24,454.454 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:24,474.474 INFO    ] 200
[2026-06-13 03:49:24,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:24,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:24,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:24,549.549 INFO    ] No camera update needed
[2026-06-13 03:49:24,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:24,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:24,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:24,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:49:26,599.599 INFO    ] ================================================
[2026-06-13 03:49:26,616.616 INFO    ] Launching Daemon at Sat Jun 13 03:49:26 IST 2026
[2026-06-13 03:49:26,627.627 INFO    ] ================================================
[2026-06-13 03:49:27,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:49:27
[2026-06-13 03:49:27,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:49:27,465.465 INFO    ] Initializing speech engine...
[2026-06-13 03:49:27,470.470 INFO    ] 2026-06-13 03:49:27
[2026-06-13 03:49:27,674.674 INFO    ] 2026-06-13 03:49:27
[2026-06-13 03:49:27,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:49:27,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:49:27,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:49:28,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:49:28,086.086 INFO    ] time= 13/06/2026 03:49:28
[2026-06-13 03:49:28,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:49:28,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:49:28,321.321 INFO    ] No existing commands found in stream
[2026-06-13 03:49:33,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:49:33,354.354 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 03:49:33,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:49:33,839.839 INFO    ] Checking for system updates...
[2026-06-13 03:49:33,861.861 INFO    ] 200
[2026-06-13 03:49:33,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:33,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:33,895.895 INFO    ] No update needed
[2026-06-13 03:49:33,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:33,917.917 INFO    ] 200
[2026-06-13 03:49:33,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:33,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:33,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:33,981.981 INFO    ] No camera update needed
[2026-06-13 03:49:33,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:33,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:33,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:33,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:49:36,031.031 INFO    ] ================================================
[2026-06-13 03:49:36,047.047 INFO    ] Launching Daemon at Sat Jun 13 03:49:36 IST 2026
[2026-06-13 03:49:36,058.058 INFO    ] ================================================
[2026-06-13 03:49:36,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:49:36
[2026-06-13 03:49:36,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:49:36,899.899 INFO    ] Initializing speech engine...
[2026-06-13 03:49:36,904.904 INFO    ] 2026-06-13 03:49:36
[2026-06-13 03:49:37,112.112 INFO    ] 2026-06-13 03:49:37
[2026-06-13 03:49:37,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:49:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:49:37,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:49:37,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:49:37,528.528 INFO    ] time= 13/06/2026 03:49:37
[2026-06-13 03:49:37,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:49:37,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:49:37,635.635 INFO    ] No existing commands found in stream
[2026-06-13 03:49:42,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:49:42,653.653 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 03:49:46,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:49:46,772.772 INFO    ] Checking for system updates...
[2026-06-13 03:49:46,793.793 INFO    ] 200
[2026-06-13 03:49:46,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:46,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:46,827.827 INFO    ] No update needed
[2026-06-13 03:49:46,828.828 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:46,848.848 INFO    ] 200
[2026-06-13 03:49:46,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:46,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:46,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:49:46,911.911 INFO    ] No camera update needed
[2026-06-13 03:49:46,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:46,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:46,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:46,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:49:48,960.960 INFO    ] ================================================
[2026-06-13 03:49:48,976.976 INFO    ] Launching Daemon at Sat Jun 13 03:49:48 IST 2026
[2026-06-13 03:49:48,987.987 INFO    ] ================================================
[2026-06-13 03:49:49,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:49:49
[2026-06-13 03:49:49,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:49:49,821.821 INFO    ] Initializing speech engine...
[2026-06-13 03:49:49,826.826 INFO    ] 2026-06-13 03:49:49
[2026-06-13 03:49:50,030.030 INFO    ] 2026-06-13 03:49:50
[2026-06-13 03:49:50,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:49:50,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:49:50,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:49:50,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:49:50,426.426 INFO    ] time= 13/06/2026 03:49:50
[2026-06-13 03:49:50,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:49:50,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:49:50,637.637 INFO    ] No existing commands found in stream
[2026-06-13 03:49:55,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:49:55,671.671 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 03:49:59,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:49:59,570.570 INFO    ] Checking for system updates...
[2026-06-13 03:49:59,607.607 INFO    ] 200
[2026-06-13 03:49:59,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:59,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:59,666.666 INFO    ] No update needed
[2026-06-13 03:49:59,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 03:49:59,704.704 INFO    ] 200
[2026-06-13 03:49:59,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:49:59,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:49:59,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:49:59,800.800 INFO    ] No camera update needed
[2026-06-13 03:49:59,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:49:59,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:49:59,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:49:59,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:50:01,892.892 INFO    ] ================================================
[2026-06-13 03:50:01,915.915 INFO    ] Launching Daemon at Sat Jun 13 03:50:01 IST 2026
[2026-06-13 03:50:02,982.982 INFO    ] ================================================
[2026-06-13 03:50:02,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:50:02
[2026-06-13 03:50:03,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:50:03,844.844 INFO    ] Initializing speech engine...
[2026-06-13 03:50:03,853.853 INFO    ] 2026-06-13 03:50:03
[2026-06-13 03:50:04,106.106 INFO    ] 2026-06-13 03:50:04
[2026-06-13 03:50:04,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:50:04,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:50:04,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:50:04,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:50:04,432.432 INFO    ] time= 13/06/2026 03:50:04
[2026-06-13 03:50:04,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:50:04,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:50:04,551.551 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 03:50:04,572.572 INFO    ] Checking historical command: ID=1781302803263-0
[2026-06-13 03:50:04,622.622 INFO    ] process_and_cleanup_command: msg_id=1781302803263-0
[2026-06-13 03:50:04,667.667 INFO    ] is_command_expired: timestamp=2026-06-12T22:20:03.139Z, expiry=30s
[2026-06-13 03:50:04,798.798 INFO    ] Command removed from stream: 1781302803263-0. returning for processing...
[2026-06-13 03:50:04,806.806 INFO    ] ***** get_valid_command
[2026-06-13 03:50:04,815.815 INFO    ] {'timestamp': '2026-06-12T22:20:03.139Z', 'data': '{"request_id":"start-order-1781302803139-366t82krz","orderId":"TM08202203260613034924361","is_vending":false}', 'command': 'start-order', 'timeout': '10', 'source': 'webapp'}
[2026-06-13 03:50:04,866.866 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613034924361', 'request_id': 'start-order-1781302803139-366t82krz'}
[2026-06-13 03:50:04,906.906 INFO    ] Handling start order...
[2026-06-13 03:50:04,943.943 INFO    ] handle_start_order_command
[2026-06-13 03:50:05,038.038 INFO    ] _send_start_order_success: request_id=start-order-1781302803139-366t82krz, order_id=TM08202203260613034924361
[2026-06-13 03:50:05,072.072 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 03:50:05,148.148 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781302805095-0
[2026-06-13 03:50:05,153.153 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 03:50:05,155.155 INFO    ] Checking for system updates...
[2026-06-13 03:50:05,234.234 INFO    ] 200
[2026-06-13 03:50:05,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:05,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:05,300.300 INFO    ] No update needed
[2026-06-13 03:50:05,303.303 INFO    ] Checking for camera pi updates...
[2026-06-13 03:50:05,326.326 INFO    ] 200
[2026-06-13 03:50:05,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:05,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:50:05,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:05,440.440 INFO    ] No camera update needed
[2026-06-13 03:50:05,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:50:05,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:50:05,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:50:05,460.460 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 03:50:05,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:50:07,501.501 INFO    ] ================================================
[2026-06-13 03:50:07,516.516 INFO    ] Launching Daemon at Sat Jun 13 03:50:07 IST 2026
[2026-06-13 03:50:07,527.527 INFO    ] ================================================
[2026-06-13 03:50:07,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:50:07
[2026-06-13 03:50:08,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:50:08,341.341 INFO    ] Initializing speech engine...
[2026-06-13 03:50:08,352.352 INFO    ] 2026-06-13 03:50:08
[2026-06-13 03:50:08,566.566 INFO    ] 2026-06-13 03:50:08
[2026-06-13 03:50:08,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:50:08,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:50:08,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:50:08,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:50:08,993.993 INFO    ] time= 13/06/2026 03:50:08
[2026-06-13 03:50:09,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:50:09,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:50:09,120.120 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 03:50:09,124.124 INFO    ] Checking historical command: ID=1781302805095-0
[2026-06-13 03:50:09,151.151 INFO    ] process_and_cleanup_command: msg_id=1781302805095-0
[2026-06-13 03:50:09,153.153 INFO    ] is_command_expired: timestamp=2026-06-12T22:20:05.042387Z, expiry=30s
[2026-06-13 03:50:09,270.270 INFO    ] Command removed from stream: 1781302805095-0. returning for processing...
[2026-06-13 03:50:09,273.273 INFO    ] ***** get_valid_command
[2026-06-13 03:50:09,276.276 INFO    ] {'metadata_order_id': 'TM08202203260613034924361', 'message_type': 'command_response', 'imei': 'TM08202203', 'timestamp': '2026-06-12T22:20:05.042387Z', 'metadata_request_id': 'start-order-1781302803139-366t82krz', 'message': 'start-order success', 'status': 'success'}
[2026-06-13 03:50:09,282.282 INFO    ] Checking historical command: ID=1781302808620-0
[2026-06-13 03:50:09,286.286 INFO    ] process_and_cleanup_command: msg_id=1781302808620-0
[2026-06-13 03:50:09,289.289 INFO    ] is_command_expired: timestamp=2026-06-12T22:20:08.474Z, expiry=30s
[2026-06-13 03:50:09,334.334 INFO    ] Command removed from stream: 1781302808620-0. returning for processing...
[2026-06-13 03:50:09,337.337 INFO    ] ***** get_valid_command
[2026-06-13 03:50:09,340.340 INFO    ] {'timestamp': '2026-06-12T22:20:08.474Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781302808474-nmdwwsmzo","orderId":"TM08202203260613034924361","is_vending":false,"accessCode":"17303584"}', 'command': 'process-order', 'timeout': '60'}
[2026-06-13 03:50:09,343.343 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613034924361', 'request_id': 'process-order-1781302808474-nmdwwsmzo', 'accessCode': '17303584', 'is_vending': False}
[2026-06-13 03:50:09,346.346 INFO    ] Handling process order...
[2026-06-13 03:50:09,349.349 INFO    ] Processing process-order command...
[2026-06-13 03:50:09,353.353 INFO    ] 🔍 Lock file Order ID: TM08202203260613034924361, TS: 2026-06-13 03:50:04
[2026-06-13 03:50:09,362.362 INFO    ] ✅ Order lock valid for TM08202203260613034924361
[2026-06-13 03:50:09,365.365 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 03:50:09,367.367 INFO    ] processing access code 17303584 for order TM08202203260613034924361
[2026-06-13 03:50:09,371.371 INFO    ] 🔍 Lock file Order ID: TM08202203260613034924361, TS: 2026-06-13 03:50:04
[2026-06-13 03:50:09,374.374 INFO    ] ✅ Order lock valid for TM08202203260613034924361
[2026-06-13 03:50:09,377.377 INFO    ] 2026-06-13 03:50:09
[2026-06-13 03:50:09,407.407 INFO    ] 200
[2026-06-13 03:50:09,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:09,414.414 INFO    ] 17303584
[2026-06-13 03:50:09,419.419 INFO    ] 2026-06-13 03:50:09
[2026-06-13 03:50:09,423.423 INFO    ] session id :567592116
[2026-06-13 03:50:09,427.427 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=17303584&imei=TM08202203&session_id=567592116
[2026-06-13 03:50:10,159.159 INFO    ] 200
[2026-06-13 03:50:10,165.165 INFO    ] {"data": {"mobile": "9279588501", "order_id": "TM08202203260613034924361", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "skuid": "4500680", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "McVities Coconut Cookies 66gm", "tray_id": "20", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Roasted Channa 32g", "tray_id": "15", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "17303584", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 03:50:10,174.174 INFO    ] 40
[2026-06-13 03:50:10,177.177 INFO    ] TM08202203260613034924361
[2026-06-13 03:50:10,183.183 INFO    ] 9279588501
[2026-06-13 03:50:10,189.189 INFO    ] 2026-06-13 03:50:10
[2026-06-13 03:50:10,190.190 INFO    ] Door Opening for user mobile ending with  eight five zero one 
[2026-06-13 03:50:10,192.192 INFO    ] Door Opening for user mobile ending with  eight five zero one 
[2026-06-13 03:50:10,193.193 INFO    ] f08b99e13a6bfecff58d23478232fcd3
[2026-06-13 03:50:10,194.194 INFO    ] 2026-06-13 03:50:10
[2026-06-13 03:50:10,196.196 INFO    ] playing audio file
[2026-06-13 03:50:10,206.206 INFO    ] 2026-06-13 03:50:10
[2026-06-13 03:50:10,207.207 INFO    ] 2026-06-13 03:50:10
[2026-06-13 03:50:10,210.210 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:10,211.211 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:10,271.271 INFO    ] [publish_status] Message added to stream with ID: 1781302810229-0
[2026-06-13 03:50:10,272.272 INFO    ] Published to order:TM08202203260613034924361: {'timestamp': '2026-06-12T22:20:10.208979Z', 'order_id': 'TM08202203260613034924361', 'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"invoice_bill": "40", "mobile": "9279588501", "access_code": "17303584", "bill_amount": "40", "order_id": "TM08202203260613034924361", "proposed_sku_json": [{"qty": 1, "offer_id": "", "offer_desc": "", "sku_total": 10, "tray_id": "20", "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "name": "McVities Coconut Cookies 66gm", "unit_price": 10, "mrp": "10", "skuid": "4500680", "door_id": "1"}, {"qty": 1, "offer_id": "", "offer_desc": "", "sku_total": 20, "tray_id": "43", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "unit_price": 20, "mrp": "20", "skuid": "185993", "door_id": "2"}, {"qty": 1, "offer_id": "", "offer_desc": "", "sku_total": 10, "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "name": "Modern kitchens Roasted Channa 32g", "unit_price": 10, "mrp": "10", "skuid": "4500647", "door_id": "1"}]}, "status": true}', 'server_status': 'order-started'} (ID: 1781302810229-0)
[2026-06-13 03:50:10,577.577 INFO    ] {'order_id': 'TM08202203260613034924361', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'invoice_bill': '40', 'mobile': '9279588501', 'access_code': '17303584', 'bill_amount': '40', 'order_id': 'TM08202203260613034924361', 'proposed_sku_json': [{'qty': 1, 'offer_id': '', 'offer_desc': '', 'sku_total': 10, 'tray_id': '20', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'name': 'McVities Coconut Cookies 66gm', 'unit_price': 10, 'mrp': '10', 'skuid': '4500680', 'door_id': '1'}, {'qty': 1, 'offer_id': '', 'offer_desc': '', 'sku_total': 20, 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'mrp': '20', 'skuid': '185993', 'door_id': '2'}, {'qty': 1, 'offer_id': '', 'offer_desc': '', 'sku_total': 10, 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'name': 'Modern kitchens Roasted Channa 32g', 'unit_price': 10, 'mrp': '10', 'skuid': '4500647', 'door_id': '1'}]}, 'status': True}, 'server_status': 'order-started'}
[2026-06-13 03:50:10,578.578 INFO    ] 200
[2026-06-13 03:50:10,579.579 INFO    ] {"data":{"order_id":"TM08202203260613034924361","server_response":{"msg":"Order Data","rstatus":true,"data":{"invoice_bill":"40","mobile":"9279588501","access_code":"17303584","bill_amount":"40","order_id":"TM08202203260613034924361","proposed_sku_json":[{"qty":1,"offer_id":"","offer_desc":"","sku_total":10,"tray_id":"20","image_url":"https:\/\/images.tinymart.in\/product\/4500680-2380.jpg","name":"McVities Coconut Cookies 66gm","unit_price":10,"mrp":"10","skuid":"4500680","door_id":"1"},{"qty":1,"offer_id":"","offer_desc":"","sku_total":20,"tray_id":"43","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","unit_price":20,"mrp":"20","skuid":"185993","door_id":"2"},{"qty":1,"offer_id":"","offer_desc":"","sku_total":10,"tray_id":"15","image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","name":"Modern kitchens Roasted Channa 32g","unit_price":10,"mrp":"10","skuid":"4500647","door_id":"1"}]},"status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:50:10,581.581 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'invoice_bill': '40', 'mobile': '9279588501', 'access_code': '17303584', 'bill_amount': '40', 'order_id': 'TM08202203260613034924361', 'proposed_sku_json': [{'qty': 1, 'offer_desc': '', 'unit_price': 10, 'tray_id': '20', 'mrp': '10', 'offer_id': '', 'name': 'McVities Coconut Cookies 66gm', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'door_id': '1'}, {'qty': 1, 'offer_desc': '', 'unit_price': 20, 'tray_id': '43', 'mrp': '20', 'offer_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'door_id': '2'}, {'qty': 1, 'offer_desc': '', 'unit_price': 10, 'tray_id': '15', 'mrp': '10', 'offer_id': '', 'name': 'Modern kitchens Roasted Channa 32g', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'door_id': '1'}]}, 'status': True}, 'server_status': 'order-started'}}
[2026-06-13 03:50:10,583.583 INFO    ] 2026-06-13 03:50:10
[2026-06-13 03:50:10,610.610 INFO    ] 200
[2026-06-13 03:50:10,612.612 INFO    ] True
[2026-06-13 03:50:10,696.696 INFO    ] 200
[2026-06-13 03:50:10,697.697 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:10,700.700 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please Wait', 'status': 'False'}
[2026-06-13 03:50:10,701.701 INFO    ] *** process_order ***
[2026-06-13 03:50:11,913.913 INFO    ] 200
[2026-06-13 03:50:11,916.916 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:50:11,918.918 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'status': 'True'}
[2026-06-13 03:50:11,921.921 INFO    ] *** process_order ***
[2026-06-13 03:50:11,923.923 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:11,926.926 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:11,996.996 INFO    ] [publish_status] Message added to stream with ID: 1781302811952-0
[2026-06-13 03:50:11,998.998 INFO    ] Published to order:TM08202203260613034924361: {'order_id': 'TM08202203260613034924361', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Door is open...", "rstatus": true, "delay": 0, "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781302811952-0)
[2026-06-13 03:50:13,045.045 INFO    ] 2026-06-13 03:50:13
[2026-06-13 03:50:13,048.048 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:13,051.051 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:13,134.134 INFO    ] [publish_status] Message added to stream with ID: 1781302813090-0
[2026-06-13 03:50:13,137.137 INFO    ] Published to order:TM08202203260613034924361: {'timestamp': '2026-06-12T22:20:13.046727Z', 'order_id': 'TM08202203260613034924361', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "voiceNote": "Please Wait", "rstatus": true, "delay": 0, "status": "True"}', 'server_status': 'processOrder'} (ID: 1781302813090-0)
[2026-06-13 03:50:13,249.249 INFO    ] {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-13 03:50:13,252.252 INFO    ] 200
[2026-06-13 03:50:13,255.255 INFO    ] {"data":{"order_id":"TM08202203260613034924361","server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","UI_Header":"","Header":" Your order is under process  "},"voiceNote":"Please Wait","rstatus":true,"delay":0,"status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:50:13,258.258 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'rstatus': True, 'delay': 0, 'voiceNote': 'Please Wait', 'status': 'true'}, 'server_status': 'processOrder'}}
[2026-06-13 03:50:13,261.261 INFO    ] 2026-06-13 03:50:13
[2026-06-13 03:50:13,264.264 INFO    ] None
[2026-06-13 03:50:13,267.267 INFO    ] Opening Door now
[2026-06-13 03:50:13,270.270 INFO    ] Opening Door now
[2026-06-13 03:50:13,272.272 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 03:50:13,275.275 INFO    ] 2026-06-13 03:50:13
[2026-06-13 03:50:13,278.278 INFO    ] playing audio file
[2026-06-13 03:50:13,296.296 INFO    ] 2026-06-13 03:50:13
[2026-06-13 03:50:13,299.299 INFO    ] 2026-06-13 03:50:13
[2026-06-13 03:50:16,341.341 INFO    ] 200
[2026-06-13 03:50:16,342.342 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:16,344.344 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Door 1 is open now', 'status': 'False'}
[2026-06-13 03:50:19,380.380 INFO    ] 200
[2026-06-13 03:50:19,381.381 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:19,383.383 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False'}
[2026-06-13 03:50:22,414.414 INFO    ] 200
[2026-06-13 03:50:22,415.415 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:22,417.417 INFO    ] Please close door 1
[2026-06-13 03:50:22,418.418 INFO    ] Please close door 1
[2026-06-13 03:50:22,419.419 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 03:50:22,421.421 INFO    ] 2026-06-13 03:50:22
[2026-06-13 03:50:22,422.422 INFO    ] playing audio file
[2026-06-13 03:50:22,433.433 INFO    ] 2026-06-13 03:50:22
[2026-06-13 03:50:22,435.435 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:22,436.436 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:22,523.523 INFO    ] [publish_status] Message added to stream with ID: 1781302822478-0
[2026-06-13 03:50:22,524.524 INFO    ] Published to order:TM08202203260613034924361: {'timestamp': '2026-06-12T22:20:22.434081Z', 'order_id': 'TM08202203260613034924361', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "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"}, "rstatus": false, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 1", "status": "False"}', 'server_status': 'OrderStatus'} (ID: 1781302822478-0)
[2026-06-13 03:50:22,846.846 INFO    ] {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False'}, 'server_status': 'OrderStatus'}
[2026-06-13 03:50:22,847.847 INFO    ] 200
[2026-06-13 03:50:22,848.848 INFO    ] {"data":{"order_id":"TM08202203260613034924361","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"McVities Coconut Cookies 66gm"},{"qty":1,"name":"Modern kitchens Roasted Channa 32g"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"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"},"rstatus":false,"error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"voiceNote":"Please close door 1","status":"false"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:50:22,850.850 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'false'}, 'server_status': 'OrderStatus'}}
[2026-06-13 03:50:22,852.852 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False'}
[2026-06-13 03:50:25,926.926 INFO    ] 200
[2026-06-13 03:50:25,929.929 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:25,932.932 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Coconut Cookies 66gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Close'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now'}, 'voiceNote': 'Door 1 is closed now', 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'delay': 1000, 'status': 'False'}
[2026-06-13 03:50:28,977.977 INFO    ] 200
[2026-06-13 03:50:28,980.980 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:28,983.983 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Door 2 is open now', 'status': 'False'}
[2026-06-13 03:50:32,026.026 INFO    ] 200
[2026-06-13 03:50:32,028.028 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:32,030.030 INFO    ] Please close door 2
[2026-06-13 03:50:32,032.032 INFO    ] Please close door 2
[2026-06-13 03:50:32,034.034 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 03:50:32,036.036 INFO    ] 2026-06-13 03:50:32
[2026-06-13 03:50:32,038.038 INFO    ] playing audio file
[2026-06-13 03:50:32,050.050 INFO    ] 2026-06-13 03:50:32
[2026-06-13 03:50:32,052.052 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:32,054.054 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:32,128.128 INFO    ] [publish_status] Message added to stream with ID: 1781302832085-0
[2026-06-13 03:50:32,129.129 INFO    ] Published to order:TM08202203260613034924361: {'timestamp': '2026-06-12T22:20:32.051703Z', 'order_id': 'TM08202203260613034924361', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2"}, "rstatus": false, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 2", "status": "False"}', 'server_status': 'OrderStatus'} (ID: 1781302832085-0)
[2026-06-13 03:50:32,466.466 INFO    ] {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'status': 'False'}, 'server_status': 'OrderStatus'}
[2026-06-13 03:50:32,467.467 INFO    ] 200
[2026-06-13 03:50:32,469.469 INFO    ] {"data":{"order_id":"TM08202203260613034924361","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2"},"rstatus":false,"error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"voiceNote":"Please close door 2","status":"false"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:50:32,470.470 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'status': 'false'}, 'server_status': 'OrderStatus'}}
[2026-06-13 03:50:32,472.472 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'status': 'False'}
[2026-06-13 03:50:35,514.514 INFO    ] 200
[2026-06-13 03:50:35,516.516 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 03:50:35,518.518 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'status': 'False'}
[2026-06-13 03:50:38,571.571 INFO    ] 200
[2026-06-13 03:50:38,574.574 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 03:50:38,577.577 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, '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 '}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'status': 'True'}
[2026-06-13 03:50:38,580.580 INFO    ] 2026-06-13 03:50:38
[2026-06-13 03:50:38,583.583 INFO    ] Order Completed 
[2026-06-13 03:50:38,585.585 INFO    ] Order Completed 
[2026-06-13 03:50:38,588.588 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 03:50:38,591.591 INFO    ] 2026-06-13 03:50:38
[2026-06-13 03:50:38,594.594 INFO    ] playing audio file
[2026-06-13 03:50:38,612.612 INFO    ] 2026-06-13 03:50:38
[2026-06-13 03:50:38,616.616 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, '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 '}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'status': 'True'}
[2026-06-13 03:50:38,619.619 INFO    ] 2026-06-13 03:50:38
[2026-06-13 03:50:40,303.303 INFO    ] 200
[2026-06-13 03:50:40,306.306 INFO    ] {"res": "True", "orderId": "TM08202203260613034924361", "skus": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "", "tray_id": "15", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "skuid": "4500680", "door_id": "", "tray_id": "20", "name": "McVities Coconut Cookies 66gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 03:50:40,309.309 INFO    ] {'skus': [{'qty': 1, 'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'door_id': ''}, {'qty': 1, 'sku_total': 10.0, 'tray_id': '20', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'door_id': ''}, {'qty': 1, 'sku_total': 20.0, 'tray_id': '43', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'door_id': ''}], 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM08202203260613034924361', 'rstatus': True}
[2026-06-13 03:50:40,312.312 INFO    ] {'skus': [{'qty': 1, 'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'door_id': ''}, {'qty': 1, 'sku_total': 10.0, 'tray_id': '20', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'door_id': ''}, {'qty': 1, 'sku_total': 20.0, 'tray_id': '43', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'door_id': ''}], 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM08202203260613034924361', 'rstatus': True}
[2026-06-13 03:50:40,314.314 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,317.317 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,319.319 INFO    ] 40
[2026-06-13 03:50:40,322.322 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,324.324 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,327.327 INFO    ]  Your Bill Amount is 40
[2026-06-13 03:50:40,330.330 INFO    ]  Your Bill Amount is 40
[2026-06-13 03:50:40,332.332 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 03:50:40,335.335 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,337.337 INFO    ] playing audio file
[2026-06-13 03:50:40,355.355 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,358.358 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:40,362.362 INFO    ] publish_status: order_id=TM08202203260613034924361
[2026-06-13 03:50:40,365.365 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613034924361
[2026-06-13 03:50:40,428.428 INFO    ] [publish_status] Message added to stream with ID: 1781302840378-0
[2026-06-13 03:50:40,431.431 INFO    ] Published to order:TM08202203260613034924361: {'timestamp': '2026-06-12T22:20:40.360130Z', 'order_id': 'TM08202203260613034924361', 'server_response': '{"skus": [{"qty": 1, "sku_total": 10.0, "tray_id": "15", "mrp": "10", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": ""}, {"qty": 1, "sku_total": 10.0, "tray_id": "20", "mrp": "10", "name": "McVities Coconut Cookies 66gm per peice", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "skuid": "4500680", "door_id": ""}, {"qty": 1, "sku_total": 20.0, "tray_id": "43", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": ""}], "res": "True", "total_amount": 40.0, "logic": "WBL", "anomaly": 0, "orderId": "TM08202203260613034924361", "rstatus": true}', 'server_status': 'invoiceOrder'} (ID: 1781302840378-0)
[2026-06-13 03:50:40,863.863 INFO    ] {'order_id': 'TM08202203260613034924361', 'server_response': {'skus': [{'qty': 1, 'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'door_id': ''}, {'qty': 1, 'sku_total': 10.0, 'tray_id': '20', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'skuid': '4500680', 'door_id': ''}, {'qty': 1, 'sku_total': 20.0, 'tray_id': '43', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'door_id': ''}], 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM08202203260613034924361', 'rstatus': True}, 'server_status': 'invoiceOrder'}
[2026-06-13 03:50:40,866.866 INFO    ] 200
[2026-06-13 03:50:40,868.868 INFO    ] {"data":{"order_id":"TM08202203260613034924361","server_response":{"skus":[{"qty":1,"sku_total":10,"tray_id":"15","mrp":"10","name":"Modern kitchens Roasted Channa 32g per peice","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","skuid":"4500647","door_id":""},{"qty":1,"sku_total":10,"tray_id":"20","mrp":"10","name":"McVities Coconut Cookies 66gm per peice","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500680-2380.jpg","skuid":"4500680","door_id":""},{"qty":1,"sku_total":20,"tray_id":"43","mrp":"20","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","skuid":"185993","door_id":""}],"res":"true","total_amount":40,"logic":"WBL","anomaly":0,"orderId":"TM08202203260613034924361","rstatus":true},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 03:50:40,872.872 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'orderId': 'TM08202203260613034924361', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'skus': [{'qty': 1, 'unit_price': '10', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'mrp': '10', 'skuid': '4500647', 'door_id': ''}, {'qty': 1, 'unit_price': '10', 'tray_id': '20', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'name': 'McVities Coconut Cookies 66gm per peice', 'sku_total': 10, 'mrp': '10', 'skuid': '4500680', 'door_id': ''}, {'qty': 1, 'unit_price': '20', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'mrp': '20', 'skuid': '185993', 'door_id': ''}], 'total_amount': 40}, 'server_status': 'invoiceOrder'}}
[2026-06-13 03:50:40,875.875 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613034924361', 'server_response': {'orderId': 'TM08202203260613034924361', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'skus': [{'qty': 1, 'unit_price': '10', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'mrp': '10', 'skuid': '4500647', 'door_id': ''}, {'qty': 1, 'unit_price': '10', 'tray_id': '20', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'name': 'McVities Coconut Cookies 66gm per peice', 'sku_total': 10, 'mrp': '10', 'skuid': '4500680', 'door_id': ''}, {'qty': 1, 'unit_price': '20', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'mrp': '20', 'skuid': '185993', 'door_id': ''}], 'total_amount': 40}, 'server_status': 'invoiceOrder'}}
[2026-06-13 03:50:40,878.878 INFO    ] 2026-06-13 03:50:40
[2026-06-13 03:50:43,518.518 INFO    ] 200
[2026-06-13 03:50:43,520.520 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361", "TM08202203260613034924361"], "orders_synced": [], "order_items_synced": ["TM08202203260613034924361_0"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 03:50:43,522.522 INFO    ] 2026-06-13 03:50:43
[2026-06-13 03:50:43,629.629 INFO    ] 200
[2026-06-13 03:50:43,631.631 INFO    ] True
[2026-06-13 03:50:43,632.632 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613034924361
[2026-06-13 03:50:43,634.634 INFO    ] start order file deleted
[2026-06-13 03:50:43,636.636 INFO    ] Checking for system updates...
[2026-06-13 03:50:43,663.663 INFO    ] 200
[2026-06-13 03:50:43,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:43,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:43,706.706 INFO    ] No update needed
[2026-06-13 03:50:43,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 03:50:43,736.736 INFO    ] 200
[2026-06-13 03:50:43,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:43,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:50:43,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:43,880.880 INFO    ] No camera update needed
[2026-06-13 03:50:43,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:50:43,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:50:43,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:50:43,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:50:45,940.940 INFO    ] ================================================
[2026-06-13 03:50:45,957.957 INFO    ] Launching Daemon at Sat Jun 13 03:50:45 IST 2026
[2026-06-13 03:50:45,968.968 INFO    ] ================================================
[2026-06-13 03:50:46,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:50:46
[2026-06-13 03:50:47,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:50:47,370.370 INFO    ] Initializing speech engine...
[2026-06-13 03:50:47,379.379 INFO    ] 2026-06-13 03:50:47
[2026-06-13 03:50:47,643.643 INFO    ] 2026-06-13 03:50:47
[2026-06-13 03:50:47,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:50:47,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:50:47,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:50:48,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:50:48,010.010 INFO    ] time= 13/06/2026 03:50:48
[2026-06-13 03:50:48,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:50:48,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:50:48,180.180 INFO    ] No existing commands found in stream
[2026-06-13 03:50:53,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:50:53,219.219 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 03:50:54,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:50:54,494.494 INFO    ] Checking for system updates...
[2026-06-13 03:50:54,516.516 INFO    ] 200
[2026-06-13 03:50:54,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:54,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:54,550.550 INFO    ] No update needed
[2026-06-13 03:50:54,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 03:50:54,571.571 INFO    ] 200
[2026-06-13 03:50:54,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:50:54,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:50:54,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:50:54,641.641 INFO    ] No camera update needed
[2026-06-13 03:50:54,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:50:54,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:50:54,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:50:54,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:50:56,689.689 INFO    ] ================================================
[2026-06-13 03:50:56,704.704 INFO    ] Launching Daemon at Sat Jun 13 03:50:56 IST 2026
[2026-06-13 03:50:56,715.715 INFO    ] ================================================
[2026-06-13 03:50:57,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:50:57
[2026-06-13 03:50:57,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:50:57,532.532 INFO    ] Initializing speech engine...
[2026-06-13 03:50:57,536.536 INFO    ] 2026-06-13 03:50:57
[2026-06-13 03:50:57,787.787 INFO    ] 2026-06-13 03:50:57
[2026-06-13 03:50:57,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:50:58,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:50:58,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:50:58,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:50:58,223.223 INFO    ] time= 13/06/2026 03:50:58
[2026-06-13 03:50:58,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:50:58,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:50:58,359.359 INFO    ] No existing commands found in stream
[2026-06-13 03:51:03,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:51:03,389.389 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 03:51:05,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:51:05,233.233 INFO    ] Checking for system updates...
[2026-06-13 03:51:05,255.255 INFO    ] 200
[2026-06-13 03:51:05,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:05,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:05,290.290 INFO    ] No update needed
[2026-06-13 03:51:05,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 03:51:05,311.311 INFO    ] 200
[2026-06-13 03:51:05,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:05,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:51:05,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:05,477.477 INFO    ] No camera update needed
[2026-06-13 03:51:05,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:51:05,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:51:05,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:51:05,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:51:07,526.526 INFO    ] ================================================
[2026-06-13 03:51:07,541.541 INFO    ] Launching Daemon at Sat Jun 13 03:51:07 IST 2026
[2026-06-13 03:51:07,559.559 INFO    ] ================================================
[2026-06-13 03:51:07,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:51:07
[2026-06-13 03:51:08,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:51:08,431.431 INFO    ] Initializing speech engine...
[2026-06-13 03:51:08,434.434 INFO    ] 2026-06-13 03:51:08
[2026-06-13 03:51:08,643.643 INFO    ] 2026-06-13 03:51:08
[2026-06-13 03:51:08,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:51:08,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:51:08,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:51:08,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:51:09,052.052 INFO    ] time= 13/06/2026 03:51:09
[2026-06-13 03:51:09,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:51:09,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:51:09,271.271 INFO    ] No existing commands found in stream
[2026-06-13 03:51:14,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:51:14,292.292 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 03:51:17,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:51:17,070.070 INFO    ] Checking for system updates...
[2026-06-13 03:51:17,091.091 INFO    ] 200
[2026-06-13 03:51:17,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:17,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:17,125.125 INFO    ] No update needed
[2026-06-13 03:51:17,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 03:51:17,147.147 INFO    ] 200
[2026-06-13 03:51:17,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:17,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:51:17,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:17,218.218 INFO    ] No camera update needed
[2026-06-13 03:51:17,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:51:17,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:51:17,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:51:17,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:51:19,265.265 INFO    ] ================================================
[2026-06-13 03:51:19,281.281 INFO    ] Launching Daemon at Sat Jun 13 03:51:19 IST 2026
[2026-06-13 03:51:19,291.291 INFO    ] ================================================
[2026-06-13 03:51:19,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:51:19
[2026-06-13 03:51:19,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:51:20,153.153 INFO    ] Initializing speech engine...
[2026-06-13 03:51:20,158.158 INFO    ] 2026-06-13 03:51:20
[2026-06-13 03:51:20,396.396 INFO    ] 2026-06-13 03:51:20
[2026-06-13 03:51:20,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:51:20,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:51:20,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:51:20,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:51:20,783.783 INFO    ] time= 13/06/2026 03:51:20
[2026-06-13 03:51:20,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:51:20,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:51:20,879.879 INFO    ] No existing commands found in stream
[2026-06-13 03:51:25,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:51:25,894.894 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 03:51:26,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:51:26,785.785 INFO    ] Checking for system updates...
[2026-06-13 03:51:26,806.806 INFO    ] 200
[2026-06-13 03:51:26,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:26,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:26,843.843 INFO    ] No update needed
[2026-06-13 03:51:26,844.844 INFO    ] Checking for camera pi updates...
[2026-06-13 03:51:26,863.863 INFO    ] 200
[2026-06-13 03:51:26,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:26,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:51:26,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:26,931.931 INFO    ] No camera update needed
[2026-06-13 03:51:26,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:51:26,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:51:26,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:51:26,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:51:28,977.977 INFO    ] ================================================
[2026-06-13 03:51:28,992.992 INFO    ] Launching Daemon at Sat Jun 13 03:51:28 IST 2026
[2026-06-13 03:51:29,004.004 INFO    ] ================================================
[2026-06-13 03:51:29,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:51:29
[2026-06-13 03:51:29,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:51:29,793.793 INFO    ] Initializing speech engine...
[2026-06-13 03:51:29,806.806 INFO    ] 2026-06-13 03:51:29
[2026-06-13 03:51:30,014.014 INFO    ] 2026-06-13 03:51:29
[2026-06-13 03:51:30,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:51:30,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:51:30,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:51:30,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:51:30,412.412 INFO    ] time= 13/06/2026 03:51:30
[2026-06-13 03:51:30,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:51:30,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:51:30,534.534 INFO    ] No existing commands found in stream
[2026-06-13 03:51:35,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:51:35,547.547 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 03:51:39,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:51:39,833.833 INFO    ] Checking for system updates...
[2026-06-13 03:51:39,856.856 INFO    ] 200
[2026-06-13 03:51:39,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:39,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:39,889.889 INFO    ] No update needed
[2026-06-13 03:51:39,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 03:51:39,913.913 INFO    ] 200
[2026-06-13 03:51:39,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:39,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:51:39,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:51:39,979.979 INFO    ] No camera update needed
[2026-06-13 03:51:39,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:51:39,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:51:39,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:51:39,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:51:42,025.025 INFO    ] ================================================
[2026-06-13 03:51:42,045.045 INFO    ] Launching Daemon at Sat Jun 13 03:51:42 IST 2026
[2026-06-13 03:51:42,056.056 INFO    ] ================================================
[2026-06-13 03:51:42,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:51:42
[2026-06-13 03:51:42,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:51:43,011.011 INFO    ] Initializing speech engine...
[2026-06-13 03:51:43,021.021 INFO    ] 2026-06-13 03:51:43
[2026-06-13 03:51:43,269.269 INFO    ] 2026-06-13 03:51:43
[2026-06-13 03:51:43,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:51:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:51:43,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:51:43,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:51:43,706.706 INFO    ] time= 13/06/2026 03:51:43
[2026-06-13 03:51:43,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:51:43,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:51:43,980.980 INFO    ] No existing commands found in stream
[2026-06-13 03:51:49,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:51:49,004.004 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 03:51:56,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:51:56,134.134 INFO    ] Checking for system updates...
[2026-06-13 03:51:56,172.172 INFO    ] 200
[2026-06-13 03:51:56,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:56,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:51:56,205.205 INFO    ] No update needed
[2026-06-13 03:51:56,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 03:51:56,231.231 INFO    ] 200
[2026-06-13 03:51:56,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:51:56,260.260 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:51:56,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:51:56,299.299 INFO    ] No camera update needed
[2026-06-13 03:51:56,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:51:56,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:51:56,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:51:56,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:51:58,348.348 INFO    ] ================================================
[2026-06-13 03:51:58,364.364 INFO    ] Launching Daemon at Sat Jun 13 03:51:58 IST 2026
[2026-06-13 03:51:58,374.374 INFO    ] ================================================
[2026-06-13 03:51:58,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:51:58
[2026-06-13 03:51:59,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:51:59,202.202 INFO    ] Initializing speech engine...
[2026-06-13 03:51:59,210.210 INFO    ] 2026-06-13 03:51:59
[2026-06-13 03:51:59,415.415 INFO    ] 2026-06-13 03:51:59
[2026-06-13 03:51:59,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:51:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:51:59,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:51:59,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:51:59,877.877 INFO    ] time= 13/06/2026 03:51:59
[2026-06-13 03:51:59,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:51:59,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:00,078.078 INFO    ] No existing commands found in stream
[2026-06-13 03:52:05,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:52:05,112.112 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 03:52:06,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:52:06,203.203 INFO    ] Checking for system updates...
[2026-06-13 03:52:06,225.225 INFO    ] 200
[2026-06-13 03:52:06,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:06,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:52:06,260.260 INFO    ] No update needed
[2026-06-13 03:52:06,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 03:52:06,286.286 INFO    ] 200
[2026-06-13 03:52:06,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:06,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:52:06,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:52:06,376.376 INFO    ] No camera update needed
[2026-06-13 03:52:06,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:52:06,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:52:06,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:52:06,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:52:08,416.416 INFO    ] ================================================
[2026-06-13 03:52:08,431.431 INFO    ] Launching Daemon at Sat Jun 13 03:52:08 IST 2026
[2026-06-13 03:52:08,442.442 INFO    ] ================================================
[2026-06-13 03:52:08,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:52:08
[2026-06-13 03:52:09,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:52:09,236.236 INFO    ] Initializing speech engine...
[2026-06-13 03:52:09,242.242 INFO    ] 2026-06-13 03:52:09
[2026-06-13 03:52:09,448.448 INFO    ] 2026-06-13 03:52:09
[2026-06-13 03:52:09,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:52:09,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:52:09,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:52:09,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:52:09,841.841 INFO    ] time= 13/06/2026 03:52:09
[2026-06-13 03:52:09,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:52:09,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:09,968.968 INFO    ] No existing commands found in stream
[2026-06-13 03:52:14,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:52:14,980.980 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 03:52:18,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:52:18,576.576 INFO    ] Checking for system updates...
[2026-06-13 03:52:18,615.615 INFO    ] 200
[2026-06-13 03:52:18,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:18,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:52:18,696.696 INFO    ] No update needed
[2026-06-13 03:52:18,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 03:52:18,737.737 INFO    ] 200
[2026-06-13 03:52:18,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:18,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:52:18,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:52:18,840.840 INFO    ] No camera update needed
[2026-06-13 03:52:18,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:52:18,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:52:18,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:52:18,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:52:20,895.895 INFO    ] ================================================
[2026-06-13 03:52:20,904.904 INFO    ] Launching Daemon at Sat Jun 13 03:52:20 IST 2026
[2026-06-13 03:52:20,910.910 INFO    ] ================================================
[2026-06-13 03:52:21,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:52:21
[2026-06-13 03:52:21,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:52:21,681.681 INFO    ] Initializing speech engine...
[2026-06-13 03:52:21,687.687 INFO    ] 2026-06-13 03:52:21
[2026-06-13 03:52:21,894.894 INFO    ] 2026-06-13 03:52:21
[2026-06-13 03:52:21,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:52:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:52:22,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:52:22,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:52:22,279.279 INFO    ] time= 13/06/2026 03:52:22
[2026-06-13 03:52:22,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:52:22,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:22,404.404 INFO    ] No existing commands found in stream
[2026-06-13 03:52:27,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:52:27,429.429 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 03:52:30,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:52:30,083.083 INFO    ] Checking for system updates...
[2026-06-13 03:52:30,104.104 INFO    ] 200
[2026-06-13 03:52:30,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:30,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:52:30,142.142 INFO    ] No update needed
[2026-06-13 03:52:30,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 03:52:30,163.163 INFO    ] 200
[2026-06-13 03:52:30,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:30,190.190 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:52:30,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:52:30,233.233 INFO    ] No camera update needed
[2026-06-13 03:52:30,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:52:30,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:52:30,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:52:30,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:52:32,285.285 INFO    ] ================================================
[2026-06-13 03:52:32,295.295 INFO    ] Launching Daemon at Sat Jun 13 03:52:32 IST 2026
[2026-06-13 03:52:32,302.302 INFO    ] ================================================
[2026-06-13 03:52:32,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:52:32
[2026-06-13 03:52:33,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:52:33,156.156 INFO    ] Initializing speech engine...
[2026-06-13 03:52:33,170.170 INFO    ] 2026-06-13 03:52:33
[2026-06-13 03:52:33,420.420 INFO    ] 2026-06-13 03:52:33
[2026-06-13 03:52:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:52:33,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:52:33,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:52:33,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:52:33,792.792 INFO    ] time= 13/06/2026 03:52:33
[2026-06-13 03:52:33,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:52:33,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:33,866.866 INFO    ] No existing commands found in stream
[2026-06-13 03:52:38,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:52:38,884.884 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 03:52:41,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:52:41,126.126 INFO    ] Checking for system updates...
[2026-06-13 03:52:41,153.153 INFO    ] 200
[2026-06-13 03:52:41,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:41,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:52:41,187.187 INFO    ] No update needed
[2026-06-13 03:52:41,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 03:52:41,209.209 INFO    ] 200
[2026-06-13 03:52:41,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:41,236.236 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:52:41,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:52:41,271.271 INFO    ] No camera update needed
[2026-06-13 03:52:41,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:52:41,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:52:41,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:52:41,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:52:43,318.318 INFO    ] ================================================
[2026-06-13 03:52:43,334.334 INFO    ] Launching Daemon at Sat Jun 13 03:52:43 IST 2026
[2026-06-13 03:52:43,345.345 INFO    ] ================================================
[2026-06-13 03:52:43,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:52:43
[2026-06-13 03:52:43,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:52:44,144.144 INFO    ] Initializing speech engine...
[2026-06-13 03:52:44,150.150 INFO    ] 2026-06-13 03:52:44
[2026-06-13 03:52:44,361.361 INFO    ] 2026-06-13 03:52:44
[2026-06-13 03:52:44,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:52:44,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:52:44,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:52:44,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:52:44,742.742 INFO    ] time= 13/06/2026 03:52:44
[2026-06-13 03:52:44,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:52:44,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:44,866.866 INFO    ] No existing commands found in stream
[2026-06-13 03:52:49,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:52:49,898.898 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 03:52:51,693.693 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:52:51,695.695 INFO    ] Checking for system updates...
[2026-06-13 03:52:51,717.717 INFO    ] 200
[2026-06-13 03:52:51,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:51,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:52:51,752.752 INFO    ] No update needed
[2026-06-13 03:52:51,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 03:52:51,780.780 INFO    ] 200
[2026-06-13 03:52:51,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:52:51,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:52:51,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:52:51,849.849 INFO    ] No camera update needed
[2026-06-13 03:52:51,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:52:51,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:52:51,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:52:51,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:52:53,896.896 INFO    ] ================================================
[2026-06-13 03:52:53,912.912 INFO    ] Launching Daemon at Sat Jun 13 03:52:53 IST 2026
[2026-06-13 03:52:53,923.923 INFO    ] ================================================
[2026-06-13 03:52:54,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:52:54
[2026-06-13 03:52:54,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:52:54,722.722 INFO    ] Initializing speech engine...
[2026-06-13 03:52:54,727.727 INFO    ] 2026-06-13 03:52:54
[2026-06-13 03:52:54,932.932 INFO    ] 2026-06-13 03:52:54
[2026-06-13 03:52:54,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:52:55,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:52:55,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:52:55,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:52:55,337.337 INFO    ] time= 13/06/2026 03:52:55
[2026-06-13 03:52:55,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:52:55,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:52:55,446.446 INFO    ] No existing commands found in stream
[2026-06-13 03:53:00,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:00,460.460 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 03:53:04,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:53:04,461.461 INFO    ] Checking for system updates...
[2026-06-13 03:53:04,500.500 INFO    ] 200
[2026-06-13 03:53:04,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:04,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:53:04,564.564 INFO    ] No update needed
[2026-06-13 03:53:04,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:04,598.598 INFO    ] 200
[2026-06-13 03:53:04,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:04,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:04,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:53:04,671.671 INFO    ] No camera update needed
[2026-06-13 03:53:04,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:04,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:04,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:04,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:53:06,720.720 INFO    ] ================================================
[2026-06-13 03:53:06,734.734 INFO    ] Launching Daemon at Sat Jun 13 03:53:06 IST 2026
[2026-06-13 03:53:06,745.745 INFO    ] ================================================
[2026-06-13 03:53:07,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:53:07
[2026-06-13 03:53:07,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:53:07,550.550 INFO    ] Initializing speech engine...
[2026-06-13 03:53:07,556.556 INFO    ] 2026-06-13 03:53:07
[2026-06-13 03:53:07,770.770 INFO    ] 2026-06-13 03:53:07
[2026-06-13 03:53:07,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:53:07,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:53:07,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:53:08,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:53:08,025.025 INFO    ] time= 13/06/2026 03:53:08
[2026-06-13 03:53:08,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:53:08,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:53:08,160.160 INFO    ] No existing commands found in stream
[2026-06-13 03:53:13,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:13,197.197 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 03:53:13,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:53:13,629.629 INFO    ] Checking for system updates...
[2026-06-13 03:53:13,651.651 INFO    ] 200
[2026-06-13 03:53:13,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:13,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:53:13,683.683 INFO    ] No update needed
[2026-06-13 03:53:13,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:13,704.704 INFO    ] 200
[2026-06-13 03:53:13,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:13,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:13,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:13,872.872 INFO    ] No camera update needed
[2026-06-13 03:53:13,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:13,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:13,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:13,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:53:15,913.913 INFO    ] ================================================
[2026-06-13 03:53:15,928.928 INFO    ] Launching Daemon at Sat Jun 13 03:53:15 IST 2026
[2026-06-13 03:53:15,939.939 INFO    ] ================================================
[2026-06-13 03:53:16,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:53:16
[2026-06-13 03:53:16,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:53:16,721.721 INFO    ] Initializing speech engine...
[2026-06-13 03:53:16,735.735 INFO    ] 2026-06-13 03:53:16
[2026-06-13 03:53:16,952.952 INFO    ] 2026-06-13 03:53:16
[2026-06-13 03:53:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:53:17,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:53:17,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:53:17,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:53:17,351.351 INFO    ] time= 13/06/2026 03:53:17
[2026-06-13 03:53:17,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:53:17,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:53:17,509.509 INFO    ] No existing commands found in stream
[2026-06-13 03:53:22,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:22,523.523 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 03:53:23,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:53:23,263.263 INFO    ] Checking for system updates...
[2026-06-13 03:53:23,283.283 INFO    ] 200
[2026-06-13 03:53:23,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:23,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:23,316.316 INFO    ] No update needed
[2026-06-13 03:53:23,318.318 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:23,337.337 INFO    ] 200
[2026-06-13 03:53:23,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:23,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:23,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:23,411.411 INFO    ] No camera update needed
[2026-06-13 03:53:23,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:23,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:23,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:23,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:53:25,449.449 INFO    ] ================================================
[2026-06-13 03:53:25,458.458 INFO    ] Launching Daemon at Sat Jun 13 03:53:25 IST 2026
[2026-06-13 03:53:25,464.464 INFO    ] ================================================
[2026-06-13 03:53:25,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:53:25
[2026-06-13 03:53:26,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:53:26,267.267 INFO    ] Initializing speech engine...
[2026-06-13 03:53:26,275.275 INFO    ] 2026-06-13 03:53:26
[2026-06-13 03:53:26,492.492 INFO    ] 2026-06-13 03:53:26
[2026-06-13 03:53:26,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:53:26,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:53:26,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:53:26,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:53:26,924.924 INFO    ] time= 13/06/2026 03:53:26
[2026-06-13 03:53:26,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:53:26,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:53:27,019.019 INFO    ] No existing commands found in stream
[2026-06-13 03:53:32,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:32,030.030 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 03:53:35,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:53:35,005.005 INFO    ] Checking for system updates...
[2026-06-13 03:53:35,025.025 INFO    ] 200
[2026-06-13 03:53:35,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:35,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:35,061.061 INFO    ] No update needed
[2026-06-13 03:53:35,063.063 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:35,084.084 INFO    ] 200
[2026-06-13 03:53:35,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:35,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:35,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:35,162.162 INFO    ] No camera update needed
[2026-06-13 03:53:35,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:35,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:35,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:35,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:53:37,202.202 INFO    ] ================================================
[2026-06-13 03:53:37,216.216 INFO    ] Launching Daemon at Sat Jun 13 03:53:37 IST 2026
[2026-06-13 03:53:37,227.227 INFO    ] ================================================
[2026-06-13 03:53:37,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:53:37
[2026-06-13 03:53:37,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:53:37,995.995 INFO    ] Initializing speech engine...
[2026-06-13 03:53:38,000.000 INFO    ] 2026-06-13 03:53:37
[2026-06-13 03:53:38,227.227 INFO    ] 2026-06-13 03:53:38
[2026-06-13 03:53:38,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:53:38,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:53:38,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:53:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:53:38,599.599 INFO    ] time= 13/06/2026 03:53:38
[2026-06-13 03:53:38,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:53:38,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:53:38,778.778 INFO    ] No existing commands found in stream
[2026-06-13 03:53:43,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:43,791.791 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 03:53:47,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:53:47,478.478 INFO    ] Checking for system updates...
[2026-06-13 03:53:47,500.500 INFO    ] 200
[2026-06-13 03:53:47,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:47,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:53:47,536.536 INFO    ] No update needed
[2026-06-13 03:53:47,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:47,557.557 INFO    ] 200
[2026-06-13 03:53:47,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:47,582.582 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:47,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:53:47,624.624 INFO    ] No camera update needed
[2026-06-13 03:53:47,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:47,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:47,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:47,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:53:49,670.670 INFO    ] ================================================
[2026-06-13 03:53:49,685.685 INFO    ] Launching Daemon at Sat Jun 13 03:53:49 IST 2026
[2026-06-13 03:53:49,696.696 INFO    ] ================================================
[2026-06-13 03:53:50,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:53:50
[2026-06-13 03:53:50,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:53:50,545.545 INFO    ] Initializing speech engine...
[2026-06-13 03:53:50,550.550 INFO    ] 2026-06-13 03:53:50
[2026-06-13 03:53:50,759.759 INFO    ] 2026-06-13 03:53:50
[2026-06-13 03:53:50,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:53:50,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:53:50,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:53:51,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:53:51,168.168 INFO    ] time= 13/06/2026 03:53:51
[2026-06-13 03:53:51,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:53:51,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:53:51,272.272 INFO    ] No existing commands found in stream
[2026-06-13 03:53:56,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:53:56,286.286 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 03:53:58,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:53:58,967.967 INFO    ] Checking for system updates...
[2026-06-13 03:53:59,004.004 INFO    ] 200
[2026-06-13 03:53:59,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:59,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:59,065.065 INFO    ] No update needed
[2026-06-13 03:53:59,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 03:53:59,103.103 INFO    ] 200
[2026-06-13 03:53:59,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:53:59,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:53:59,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:53:59,169.169 INFO    ] No camera update needed
[2026-06-13 03:53:59,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:53:59,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:53:59,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:53:59,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:01,255.255 INFO    ] ================================================
[2026-06-13 03:54:01,277.277 INFO    ] Launching Daemon at Sat Jun 13 03:54:01 IST 2026
[2026-06-13 03:54:01,310.310 INFO    ] ================================================
[2026-06-13 03:54:01,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:01
[2026-06-13 03:54:02,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:02,238.238 INFO    ] Initializing speech engine...
[2026-06-13 03:54:02,250.250 INFO    ] 2026-06-13 03:54:02
[2026-06-13 03:54:02,466.466 INFO    ] 2026-06-13 03:54:02
[2026-06-13 03:54:02,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:02,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:02,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:02,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:02,714.714 INFO    ] time= 13/06/2026 03:54:02
[2026-06-13 03:54:02,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:02,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:02,855.855 INFO    ] No existing commands found in stream
[2026-06-13 03:54:07,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:54:07,893.893 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 03:54:12,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:54:12,044.044 INFO    ] Checking for system updates...
[2026-06-13 03:54:12,066.066 INFO    ] 200
[2026-06-13 03:54:12,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:12,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:12,102.102 INFO    ] No update needed
[2026-06-13 03:54:12,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 03:54:12,126.126 INFO    ] 200
[2026-06-13 03:54:12,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:12,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:54:12,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:12,193.193 INFO    ] No camera update needed
[2026-06-13 03:54:12,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:54:12,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:54:12,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:54:12,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:14,241.241 INFO    ] ================================================
[2026-06-13 03:54:14,256.256 INFO    ] Launching Daemon at Sat Jun 13 03:54:14 IST 2026
[2026-06-13 03:54:14,266.266 INFO    ] ================================================
[2026-06-13 03:54:14,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:14
[2026-06-13 03:54:14,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:15,095.095 INFO    ] Initializing speech engine...
[2026-06-13 03:54:15,101.101 INFO    ] 2026-06-13 03:54:15
[2026-06-13 03:54:15,305.305 INFO    ] 2026-06-13 03:54:15
[2026-06-13 03:54:15,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:15,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:15,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:15,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:15,700.700 INFO    ] time= 13/06/2026 03:54:15
[2026-06-13 03:54:15,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:15,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:15,820.820 INFO    ] No existing commands found in stream
[2026-06-13 03:54:20,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:54:20,832.832 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 03:54:23,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:54:23,316.316 INFO    ] Checking for system updates...
[2026-06-13 03:54:23,337.337 INFO    ] 200
[2026-06-13 03:54:23,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:23,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:54:23,371.371 INFO    ] No update needed
[2026-06-13 03:54:23,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 03:54:23,392.392 INFO    ] 200
[2026-06-13 03:54:23,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:23,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:54:23,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:54:23,466.466 INFO    ] No camera update needed
[2026-06-13 03:54:23,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:54:23,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:54:23,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:54:23,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:25,515.515 INFO    ] ================================================
[2026-06-13 03:54:25,531.531 INFO    ] Launching Daemon at Sat Jun 13 03:54:25 IST 2026
[2026-06-13 03:54:25,541.541 INFO    ] ================================================
[2026-06-13 03:54:25,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:25
[2026-06-13 03:54:26,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:26,353.353 INFO    ] Initializing speech engine...
[2026-06-13 03:54:26,363.363 INFO    ] 2026-06-13 03:54:26
[2026-06-13 03:54:26,567.567 INFO    ] 2026-06-13 03:54:26
[2026-06-13 03:54:26,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:26,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:26,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:26,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:26,972.972 INFO    ] time= 13/06/2026 03:54:26
[2026-06-13 03:54:27,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:27,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:27,079.079 INFO    ] No existing commands found in stream
[2026-06-13 03:54:32,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:54:32,094.094 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 03:54:33,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:54:33,969.969 INFO    ] Checking for system updates...
[2026-06-13 03:54:34,006.006 INFO    ] 200
[2026-06-13 03:54:34,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:34,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:34,065.065 INFO    ] No update needed
[2026-06-13 03:54:34,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 03:54:34,101.101 INFO    ] 200
[2026-06-13 03:54:34,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:34,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:54:34,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:34,187.187 INFO    ] No camera update needed
[2026-06-13 03:54:34,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:54:34,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:54:34,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:54:34,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:36,244.244 INFO    ] ================================================
[2026-06-13 03:54:36,260.260 INFO    ] Launching Daemon at Sat Jun 13 03:54:36 IST 2026
[2026-06-13 03:54:36,271.271 INFO    ] ================================================
[2026-06-13 03:54:36,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:36
[2026-06-13 03:54:36,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:37,113.113 INFO    ] Initializing speech engine...
[2026-06-13 03:54:37,118.118 INFO    ] 2026-06-13 03:54:37
[2026-06-13 03:54:37,327.327 INFO    ] 2026-06-13 03:54:37
[2026-06-13 03:54:37,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:37,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:37,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:37,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:37,744.744 INFO    ] time= 13/06/2026 03:54:37
[2026-06-13 03:54:37,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:37,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:37,845.845 INFO    ] No existing commands found in stream
[2026-06-13 03:54:42,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:54:42,854.854 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 03:54:43,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:54:43,986.986 INFO    ] Checking for system updates...
[2026-06-13 03:54:44,007.007 INFO    ] 200
[2026-06-13 03:54:44,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:44,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:44,041.041 INFO    ] No update needed
[2026-06-13 03:54:44,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 03:54:44,063.063 INFO    ] 200
[2026-06-13 03:54:44,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:44,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:54:44,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:54:44,142.142 INFO    ] No camera update needed
[2026-06-13 03:54:44,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:54:44,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:54:44,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:54:44,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:46,190.190 INFO    ] ================================================
[2026-06-13 03:54:46,205.205 INFO    ] Launching Daemon at Sat Jun 13 03:54:46 IST 2026
[2026-06-13 03:54:46,216.216 INFO    ] ================================================
[2026-06-13 03:54:46,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:46
[2026-06-13 03:54:46,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:47,016.016 INFO    ] Initializing speech engine...
[2026-06-13 03:54:47,021.021 INFO    ] 2026-06-13 03:54:47
[2026-06-13 03:54:47,223.223 INFO    ] 2026-06-13 03:54:47
[2026-06-13 03:54:47,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:47,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:47,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:47,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:47,569.569 INFO    ] time= 13/06/2026 03:54:47
[2026-06-13 03:54:47,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:47,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:47,738.738 INFO    ] No existing commands found in stream
[2026-06-13 03:54:52,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:54:52,752.752 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 03:54:56,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:54:56,264.264 INFO    ] Checking for system updates...
[2026-06-13 03:54:56,284.284 INFO    ] 200
[2026-06-13 03:54:56,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:56,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:54:56,317.317 INFO    ] No update needed
[2026-06-13 03:54:56,319.319 INFO    ] Checking for camera pi updates...
[2026-06-13 03:54:56,340.340 INFO    ] 200
[2026-06-13 03:54:56,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:54:56,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:54:56,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:54:56,405.405 INFO    ] No camera update needed
[2026-06-13 03:54:56,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:54:56,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:54:56,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:54:56,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:54:58,452.452 INFO    ] ================================================
[2026-06-13 03:54:58,467.467 INFO    ] Launching Daemon at Sat Jun 13 03:54:58 IST 2026
[2026-06-13 03:54:58,478.478 INFO    ] ================================================
[2026-06-13 03:54:58,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:54:58
[2026-06-13 03:54:59,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:54:59,270.270 INFO    ] Initializing speech engine...
[2026-06-13 03:54:59,282.282 INFO    ] 2026-06-13 03:54:59
[2026-06-13 03:54:59,534.534 INFO    ] 2026-06-13 03:54:59
[2026-06-13 03:54:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:54:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:54:59,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:54:59,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:54:59,871.871 INFO    ] time= 13/06/2026 03:54:59
[2026-06-13 03:54:59,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:54:59,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:54:59,951.951 INFO    ] No existing commands found in stream
[2026-06-13 03:55:04,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:04,965.965 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 03:55:07,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:55:07,212.212 INFO    ] Checking for system updates...
[2026-06-13 03:55:07,234.234 INFO    ] 200
[2026-06-13 03:55:07,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:07,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:55:07,266.266 INFO    ] No update needed
[2026-06-13 03:55:07,268.268 INFO    ] Checking for camera pi updates...
[2026-06-13 03:55:07,288.288 INFO    ] 200
[2026-06-13 03:55:07,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:07,314.314 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:55:07,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:55:07,350.350 INFO    ] No camera update needed
[2026-06-13 03:55:07,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:55:07,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:55:07,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:55:07,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:55:09,399.399 INFO    ] ================================================
[2026-06-13 03:55:09,414.414 INFO    ] Launching Daemon at Sat Jun 13 03:55:09 IST 2026
[2026-06-13 03:55:09,425.425 INFO    ] ================================================
[2026-06-13 03:55:09,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:55:09
[2026-06-13 03:55:10,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:55:10,218.218 INFO    ] Initializing speech engine...
[2026-06-13 03:55:10,223.223 INFO    ] 2026-06-13 03:55:10
[2026-06-13 03:55:10,428.428 INFO    ] 2026-06-13 03:55:10
[2026-06-13 03:55:10,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:55:10,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:55:10,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:55:10,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:55:10,771.771 INFO    ] time= 13/06/2026 03:55:10
[2026-06-13 03:55:10,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:55:10,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:55:10,947.947 INFO    ] No existing commands found in stream
[2026-06-13 03:55:15,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:15,961.961 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 03:55:17,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:55:17,077.077 INFO    ] Checking for system updates...
[2026-06-13 03:55:17,098.098 INFO    ] 200
[2026-06-13 03:55:17,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:17,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:17,131.131 INFO    ] No update needed
[2026-06-13 03:55:17,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 03:55:17,152.152 INFO    ] 200
[2026-06-13 03:55:17,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:17,181.181 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:55:17,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:17,321.321 INFO    ] No camera update needed
[2026-06-13 03:55:17,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:55:17,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:55:17,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:55:17,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:55:19,368.368 INFO    ] ================================================
[2026-06-13 03:55:19,383.383 INFO    ] Launching Daemon at Sat Jun 13 03:55:19 IST 2026
[2026-06-13 03:55:19,394.394 INFO    ] ================================================
[2026-06-13 03:55:19,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:55:19
[2026-06-13 03:55:20,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:55:20,200.200 INFO    ] Initializing speech engine...
[2026-06-13 03:55:20,204.204 INFO    ] 2026-06-13 03:55:20
[2026-06-13 03:55:20,409.409 INFO    ] 2026-06-13 03:55:20
[2026-06-13 03:55:20,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:55:20,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:55:20,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:55:20,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:55:20,814.814 INFO    ] time= 13/06/2026 03:55:20
[2026-06-13 03:55:20,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:55:20,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:55:20,922.922 INFO    ] No existing commands found in stream
[2026-06-13 03:55:25,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:25,935.935 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 03:55:28,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:55:28,295.295 INFO    ] Checking for system updates...
[2026-06-13 03:55:28,315.315 INFO    ] 200
[2026-06-13 03:55:28,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:28,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:28,349.349 INFO    ] No update needed
[2026-06-13 03:55:28,350.350 INFO    ] Checking for camera pi updates...
[2026-06-13 03:55:28,370.370 INFO    ] 200
[2026-06-13 03:55:28,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:28,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:55:28,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:28,440.440 INFO    ] No camera update needed
[2026-06-13 03:55:28,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:55:28,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:55:28,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:55:28,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:55:30,487.487 INFO    ] ================================================
[2026-06-13 03:55:30,502.502 INFO    ] Launching Daemon at Sat Jun 13 03:55:30 IST 2026
[2026-06-13 03:55:30,513.513 INFO    ] ================================================
[2026-06-13 03:55:30,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:55:30
[2026-06-13 03:55:31,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:55:31,357.357 INFO    ] Initializing speech engine...
[2026-06-13 03:55:31,366.366 INFO    ] 2026-06-13 03:55:31
[2026-06-13 03:55:31,575.575 INFO    ] 2026-06-13 03:55:31
[2026-06-13 03:55:31,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:55:31,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:55:31,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:55:31,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:55:31,954.954 INFO    ] time= 13/06/2026 03:55:31
[2026-06-13 03:55:32,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:55:32,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:55:32,131.131 INFO    ] No existing commands found in stream
[2026-06-13 03:55:37,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:37,142.142 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 03:55:41,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:55:41,070.070 INFO    ] Checking for system updates...
[2026-06-13 03:55:41,092.092 INFO    ] 200
[2026-06-13 03:55:41,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:41,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:41,126.126 INFO    ] No update needed
[2026-06-13 03:55:41,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 03:55:41,148.148 INFO    ] 200
[2026-06-13 03:55:41,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:41,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:55:41,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:41,223.223 INFO    ] No camera update needed
[2026-06-13 03:55:41,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:55:41,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:55:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:55:41,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:55:43,270.270 INFO    ] ================================================
[2026-06-13 03:55:43,285.285 INFO    ] Launching Daemon at Sat Jun 13 03:55:43 IST 2026
[2026-06-13 03:55:43,296.296 INFO    ] ================================================
[2026-06-13 03:55:43,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:55:43
[2026-06-13 03:55:44,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:55:44,297.297 INFO    ] Initializing speech engine...
[2026-06-13 03:55:44,306.306 INFO    ] 2026-06-13 03:55:44
[2026-06-13 03:55:44,557.557 INFO    ] 2026-06-13 03:55:44
[2026-06-13 03:55:44,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:55:44,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:55:44,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:55:44,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:55:44,892.892 INFO    ] time= 13/06/2026 03:55:44
[2026-06-13 03:55:44,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:55:44,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:55:45,004.004 INFO    ] No existing commands found in stream
[2026-06-13 03:55:50,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:50,042.042 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 03:55:50,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:55:50,514.514 INFO    ] Checking for system updates...
[2026-06-13 03:55:50,536.536 INFO    ] 200
[2026-06-13 03:55:50,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:50,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:55:50,569.569 INFO    ] No update needed
[2026-06-13 03:55:50,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 03:55:50,592.592 INFO    ] 200
[2026-06-13 03:55:50,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:55:50,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:55:50,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:55:50,660.660 INFO    ] No camera update needed
[2026-06-13 03:55:50,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:55:50,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:55:50,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:55:50,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:55:52,708.708 INFO    ] ================================================
[2026-06-13 03:55:52,723.723 INFO    ] Launching Daemon at Sat Jun 13 03:55:52 IST 2026
[2026-06-13 03:55:52,734.734 INFO    ] ================================================
[2026-06-13 03:55:53,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:55:53
[2026-06-13 03:55:53,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:55:53,559.559 INFO    ] Initializing speech engine...
[2026-06-13 03:55:53,571.571 INFO    ] 2026-06-13 03:55:53
[2026-06-13 03:55:53,778.778 INFO    ] 2026-06-13 03:55:53
[2026-06-13 03:55:53,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:55:53,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:55:53,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:55:54,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:55:54,109.109 INFO    ] time= 13/06/2026 03:55:54
[2026-06-13 03:55:54,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:55:54,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:55:54,310.310 INFO    ] No existing commands found in stream
[2026-06-13 03:55:59,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:55:59,322.322 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 03:56:00,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:56:00,328.328 INFO    ] Checking for system updates...
[2026-06-13 03:56:00,348.348 INFO    ] 200
[2026-06-13 03:56:00,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:00,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:56:00,381.381 INFO    ] No update needed
[2026-06-13 03:56:00,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:00,405.405 INFO    ] 200
[2026-06-13 03:56:00,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:00,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:00,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:56:00,474.474 INFO    ] No camera update needed
[2026-06-13 03:56:00,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:00,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:00,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:00,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:02,516.516 INFO    ] ================================================
[2026-06-13 03:56:02,525.525 INFO    ] Launching Daemon at Sat Jun 13 03:56:02 IST 2026
[2026-06-13 03:56:02,531.531 INFO    ] ================================================
[2026-06-13 03:56:02,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:56:02
[2026-06-13 03:56:03,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:56:03,348.348 INFO    ] Initializing speech engine...
[2026-06-13 03:56:03,352.352 INFO    ] 2026-06-13 03:56:03
[2026-06-13 03:56:03,560.560 INFO    ] 2026-06-13 03:56:03
[2026-06-13 03:56:03,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:56:03,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:56:03,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:56:03,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:56:03,958.958 INFO    ] time= 13/06/2026 03:56:03
[2026-06-13 03:56:04,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:56:04,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:56:04,080.080 INFO    ] No existing commands found in stream
[2026-06-13 03:56:09,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:56:09,097.097 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 03:56:12,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:56:12,909.909 INFO    ] Checking for system updates...
[2026-06-13 03:56:12,930.930 INFO    ] 200
[2026-06-13 03:56:12,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:12,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:12,966.966 INFO    ] No update needed
[2026-06-13 03:56:12,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:12,989.989 INFO    ] 200
[2026-06-13 03:56:12,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:13,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:13,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:13,068.068 INFO    ] No camera update needed
[2026-06-13 03:56:13,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:13,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:13,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:13,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:15,118.118 INFO    ] ================================================
[2026-06-13 03:56:15,133.133 INFO    ] Launching Daemon at Sat Jun 13 03:56:15 IST 2026
[2026-06-13 03:56:15,144.144 INFO    ] ================================================
[2026-06-13 03:56:15,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:56:15
[2026-06-13 03:56:15,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:56:15,962.962 INFO    ] Initializing speech engine...
[2026-06-13 03:56:15,971.971 INFO    ] 2026-06-13 03:56:15
[2026-06-13 03:56:16,196.196 INFO    ] 2026-06-13 03:56:16
[2026-06-13 03:56:16,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:56:16,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:56:16,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:56:16,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:56:16,440.440 INFO    ] time= 13/06/2026 03:56:16
[2026-06-13 03:56:16,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:56:16,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:56:16,541.541 INFO    ] No existing commands found in stream
[2026-06-13 03:56:21,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:56:21,576.576 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 03:56:22,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:56:22,973.973 INFO    ] Checking for system updates...
[2026-06-13 03:56:22,994.994 INFO    ] 200
[2026-06-13 03:56:22,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:23,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:23,030.030 INFO    ] No update needed
[2026-06-13 03:56:23,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:23,055.055 INFO    ] 200
[2026-06-13 03:56:23,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:23,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:23,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:23,120.120 INFO    ] No camera update needed
[2026-06-13 03:56:23,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:23,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:23,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:23,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:25,170.170 INFO    ] ================================================
[2026-06-13 03:56:25,185.185 INFO    ] Launching Daemon at Sat Jun 13 03:56:25 IST 2026
[2026-06-13 03:56:25,196.196 INFO    ] ================================================
[2026-06-13 03:56:25,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:56:25
[2026-06-13 03:56:25,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:56:26,064.064 INFO    ] Initializing speech engine...
[2026-06-13 03:56:26,068.068 INFO    ] 2026-06-13 03:56:26
[2026-06-13 03:56:26,277.277 INFO    ] 2026-06-13 03:56:26
[2026-06-13 03:56:26,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:56:26,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:56:26,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:56:26,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:56:26,526.526 INFO    ] time= 13/06/2026 03:56:26
[2026-06-13 03:56:26,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:56:26,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:56:26,608.608 INFO    ] No existing commands found in stream
[2026-06-13 03:56:31,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:56:31,641.641 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 03:56:34,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:56:34,571.571 INFO    ] Checking for system updates...
[2026-06-13 03:56:34,592.592 INFO    ] 200
[2026-06-13 03:56:34,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:34,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:34,631.631 INFO    ] No update needed
[2026-06-13 03:56:34,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:34,652.652 INFO    ] 200
[2026-06-13 03:56:34,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:34,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:34,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:34,715.715 INFO    ] No camera update needed
[2026-06-13 03:56:34,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:34,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:34,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:34,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:36,762.762 INFO    ] ================================================
[2026-06-13 03:56:36,777.777 INFO    ] Launching Daemon at Sat Jun 13 03:56:36 IST 2026
[2026-06-13 03:56:36,787.787 INFO    ] ================================================
[2026-06-13 03:56:37,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:56:37
[2026-06-13 03:56:37,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:56:37,596.596 INFO    ] Initializing speech engine...
[2026-06-13 03:56:37,606.606 INFO    ] 2026-06-13 03:56:37
[2026-06-13 03:56:37,811.811 INFO    ] 2026-06-13 03:56:37
[2026-06-13 03:56:37,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:56:37,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:56:37,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:56:38,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:56:38,160.160 INFO    ] time= 13/06/2026 03:56:38
[2026-06-13 03:56:38,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:56:38,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:56:38,329.329 INFO    ] No existing commands found in stream
[2026-06-13 03:56:43,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:56:43,340.340 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 03:56:45,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:56:45,923.923 INFO    ] Checking for system updates...
[2026-06-13 03:56:45,946.946 INFO    ] 200
[2026-06-13 03:56:45,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:45,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:56:45,980.980 INFO    ] No update needed
[2026-06-13 03:56:45,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:46,001.001 INFO    ] 200
[2026-06-13 03:56:46,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:46,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:46,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:56:46,074.074 INFO    ] No camera update needed
[2026-06-13 03:56:46,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:46,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:46,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:48,123.123 INFO    ] ================================================
[2026-06-13 03:56:48,139.139 INFO    ] Launching Daemon at Sat Jun 13 03:56:48 IST 2026
[2026-06-13 03:56:48,150.150 INFO    ] ================================================
[2026-06-13 03:56:48,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:56:48
[2026-06-13 03:56:48,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:56:48,943.943 INFO    ] Initializing speech engine...
[2026-06-13 03:56:48,952.952 INFO    ] 2026-06-13 03:56:48
[2026-06-13 03:56:49,156.156 INFO    ] 2026-06-13 03:56:49
[2026-06-13 03:56:49,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:56:49,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:56:49,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:56:49,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:56:49,551.551 INFO    ] time= 13/06/2026 03:56:49
[2026-06-13 03:56:49,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:56:49,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:56:49,669.669 INFO    ] No existing commands found in stream
[2026-06-13 03:56:54,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:56:54,680.680 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 03:56:57,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:56:57,454.454 INFO    ] Checking for system updates...
[2026-06-13 03:56:57,475.475 INFO    ] 200
[2026-06-13 03:56:57,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:57,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:56:57,508.508 INFO    ] No update needed
[2026-06-13 03:56:57,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 03:56:57,531.531 INFO    ] 200
[2026-06-13 03:56:57,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:56:57,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:56:57,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:56:57,587.587 INFO    ] No camera update needed
[2026-06-13 03:56:57,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:56:57,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:56:57,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:56:57,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:56:59,636.636 INFO    ] ================================================
[2026-06-13 03:56:59,651.651 INFO    ] Launching Daemon at Sat Jun 13 03:56:59 IST 2026
[2026-06-13 03:56:59,662.662 INFO    ] ================================================
[2026-06-13 03:57:00,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:00
[2026-06-13 03:57:00,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:00,513.513 INFO    ] Initializing speech engine...
[2026-06-13 03:57:00,519.519 INFO    ] 2026-06-13 03:57:00
[2026-06-13 03:57:00,729.729 INFO    ] 2026-06-13 03:57:00
[2026-06-13 03:57:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:00,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:00,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:00,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:00,966.966 INFO    ] time= 13/06/2026 03:57:00
[2026-06-13 03:57:00,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:00,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:01,084.084 INFO    ] No existing commands found in stream
[2026-06-13 03:57:06,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:57:06,110.110 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 03:57:09,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:57:09,965.965 INFO    ] Checking for system updates...
[2026-06-13 03:57:09,988.988 INFO    ] 200
[2026-06-13 03:57:09,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:10,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:10,024.024 INFO    ] No update needed
[2026-06-13 03:57:10,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 03:57:10,046.046 INFO    ] 200
[2026-06-13 03:57:10,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:10,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:57:10,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:10,118.118 INFO    ] No camera update needed
[2026-06-13 03:57:10,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:57:10,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:57:10,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:57:10,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:57:12,170.170 INFO    ] ================================================
[2026-06-13 03:57:12,186.186 INFO    ] Launching Daemon at Sat Jun 13 03:57:12 IST 2026
[2026-06-13 03:57:12,197.197 INFO    ] ================================================
[2026-06-13 03:57:12,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:12
[2026-06-13 03:57:12,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:13,076.076 INFO    ] Initializing speech engine...
[2026-06-13 03:57:13,080.080 INFO    ] 2026-06-13 03:57:13
[2026-06-13 03:57:13,288.288 INFO    ] 2026-06-13 03:57:13
[2026-06-13 03:57:13,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:13,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:13,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:13,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:13,712.712 INFO    ] time= 13/06/2026 03:57:13
[2026-06-13 03:57:13,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:13,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:13,961.961 INFO    ] No existing commands found in stream
[2026-06-13 03:57:18,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:57:18,971.971 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 03:57:21,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:57:21,270.270 INFO    ] Checking for system updates...
[2026-06-13 03:57:21,291.291 INFO    ] 200
[2026-06-13 03:57:21,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:21,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:21,325.325 INFO    ] No update needed
[2026-06-13 03:57:21,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 03:57:21,347.347 INFO    ] 200
[2026-06-13 03:57:21,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:21,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:57:21,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:21,510.510 INFO    ] No camera update needed
[2026-06-13 03:57:21,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:57:21,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:57:21,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:57:21,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:57:23,558.558 INFO    ] ================================================
[2026-06-13 03:57:23,574.574 INFO    ] Launching Daemon at Sat Jun 13 03:57:23 IST 2026
[2026-06-13 03:57:23,585.585 INFO    ] ================================================
[2026-06-13 03:57:23,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:23
[2026-06-13 03:57:24,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:24,422.422 INFO    ] Initializing speech engine...
[2026-06-13 03:57:24,432.432 INFO    ] 2026-06-13 03:57:24
[2026-06-13 03:57:24,635.635 INFO    ] 2026-06-13 03:57:24
[2026-06-13 03:57:24,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:24,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:24,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:24,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:25,039.039 INFO    ] time= 13/06/2026 03:57:24
[2026-06-13 03:57:25,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:25,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:25,153.153 INFO    ] No existing commands found in stream
[2026-06-13 03:57:30,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:57:30,164.164 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 03:57:31,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:57:31,970.970 INFO    ] Checking for system updates...
[2026-06-13 03:57:31,996.996 INFO    ] 200
[2026-06-13 03:57:31,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:32,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:32,035.035 INFO    ] No update needed
[2026-06-13 03:57:32,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 03:57:32,061.061 INFO    ] 200
[2026-06-13 03:57:32,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:32,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:57:32,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:32,125.125 INFO    ] No camera update needed
[2026-06-13 03:57:32,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:57:32,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:57:32,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:57:32,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:57:34,169.169 INFO    ] ================================================
[2026-06-13 03:57:34,185.185 INFO    ] Launching Daemon at Sat Jun 13 03:57:34 IST 2026
[2026-06-13 03:57:34,196.196 INFO    ] ================================================
[2026-06-13 03:57:34,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:34
[2026-06-13 03:57:34,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:35,031.031 INFO    ] Initializing speech engine...
[2026-06-13 03:57:35,036.036 INFO    ] 2026-06-13 03:57:35
[2026-06-13 03:57:35,241.241 INFO    ] 2026-06-13 03:57:35
[2026-06-13 03:57:35,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:35,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:35,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:35,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:35,638.638 INFO    ] time= 13/06/2026 03:57:35
[2026-06-13 03:57:35,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:35,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:35,753.753 INFO    ] No existing commands found in stream
[2026-06-13 03:57:40,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:57:40,762.762 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 03:57:43,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:57:43,876.876 INFO    ] Checking for system updates...
[2026-06-13 03:57:43,896.896 INFO    ] 200
[2026-06-13 03:57:43,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:43,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:43,932.932 INFO    ] No update needed
[2026-06-13 03:57:43,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 03:57:43,953.953 INFO    ] 200
[2026-06-13 03:57:43,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:43,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:57:44,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:44,019.019 INFO    ] No camera update needed
[2026-06-13 03:57:44,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:57:44,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:57:44,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:57:44,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:57:46,066.066 INFO    ] ================================================
[2026-06-13 03:57:46,082.082 INFO    ] Launching Daemon at Sat Jun 13 03:57:46 IST 2026
[2026-06-13 03:57:46,093.093 INFO    ] ================================================
[2026-06-13 03:57:46,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:46
[2026-06-13 03:57:46,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:46,893.893 INFO    ] Initializing speech engine...
[2026-06-13 03:57:46,898.898 INFO    ] 2026-06-13 03:57:46
[2026-06-13 03:57:47,116.116 INFO    ] 2026-06-13 03:57:47
[2026-06-13 03:57:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:47,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:47,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:47,460.460 INFO    ] time= 13/06/2026 03:57:47
[2026-06-13 03:57:47,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:47,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:47,658.658 INFO    ] No existing commands found in stream
[2026-06-13 03:57:52,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:57:52,692.692 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 03:57:55,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:57:55,790.790 INFO    ] Checking for system updates...
[2026-06-13 03:57:55,812.812 INFO    ] 200
[2026-06-13 03:57:55,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:55,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:55,845.845 INFO    ] No update needed
[2026-06-13 03:57:55,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 03:57:55,868.868 INFO    ] 200
[2026-06-13 03:57:55,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:57:55,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:57:55,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:57:55,931.931 INFO    ] No camera update needed
[2026-06-13 03:57:55,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:57:55,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:57:55,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:57:55,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:57:57,979.979 INFO    ] ================================================
[2026-06-13 03:57:57,994.994 INFO    ] Launching Daemon at Sat Jun 13 03:57:57 IST 2026
[2026-06-13 03:57:58,005.005 INFO    ] ================================================
[2026-06-13 03:57:58,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:57:58
[2026-06-13 03:57:58,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:57:58,855.855 INFO    ] Initializing speech engine...
[2026-06-13 03:57:58,861.861 INFO    ] 2026-06-13 03:57:58
[2026-06-13 03:57:59,071.071 INFO    ] 2026-06-13 03:57:59
[2026-06-13 03:57:59,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:57:59,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:57:59,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:57:59,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:57:59,474.474 INFO    ] time= 13/06/2026 03:57:59
[2026-06-13 03:57:59,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:57:59,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:57:59,588.588 INFO    ] No existing commands found in stream
[2026-06-13 03:58:04,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:04,603.603 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 03:58:08,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:58:08,832.832 INFO    ] Checking for system updates...
[2026-06-13 03:58:08,853.853 INFO    ] 200
[2026-06-13 03:58:08,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:08,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:08,890.890 INFO    ] No update needed
[2026-06-13 03:58:08,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:08,914.914 INFO    ] 200
[2026-06-13 03:58:08,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:08,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:58:08,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:08,987.987 INFO    ] No camera update needed
[2026-06-13 03:58:08,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:58:08,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:58:08,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:58:08,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:58:11,037.037 INFO    ] ================================================
[2026-06-13 03:58:11,052.052 INFO    ] Launching Daemon at Sat Jun 13 03:58:11 IST 2026
[2026-06-13 03:58:11,063.063 INFO    ] ================================================
[2026-06-13 03:58:11,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:58:11
[2026-06-13 03:58:11,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:58:11,846.846 INFO    ] Initializing speech engine...
[2026-06-13 03:58:11,850.850 INFO    ] 2026-06-13 03:58:11
[2026-06-13 03:58:12,054.054 INFO    ] 2026-06-13 03:58:12
[2026-06-13 03:58:12,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:58:12,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:58:12,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:58:12,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:58:12,458.458 INFO    ] time= 13/06/2026 03:58:12
[2026-06-13 03:58:12,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:58:12,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:58:12,567.567 INFO    ] No existing commands found in stream
[2026-06-13 03:58:17,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:17,579.579 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 03:58:19,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 03:58:19,256.256 INFO    ] Checking for system updates...
[2026-06-13 03:58:19,278.278 INFO    ] 200
[2026-06-13 03:58:19,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:19,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:58:19,311.311 INFO    ] No update needed
[2026-06-13 03:58:19,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:19,333.333 INFO    ] 200
[2026-06-13 03:58:19,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:19,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:58:19,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:58:19,402.402 INFO    ] No camera update needed
[2026-06-13 03:58:19,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:58:19,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:58:19,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:58:19,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:58:21,451.451 INFO    ] ================================================
[2026-06-13 03:58:21,467.467 INFO    ] Launching Daemon at Sat Jun 13 03:58:21 IST 2026
[2026-06-13 03:58:21,478.478 INFO    ] ================================================
[2026-06-13 03:58:21,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:58:21
[2026-06-13 03:58:22,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:58:22,357.357 INFO    ] Initializing speech engine...
[2026-06-13 03:58:22,367.367 INFO    ] 2026-06-13 03:58:22
[2026-06-13 03:58:22,579.579 INFO    ] 2026-06-13 03:58:22
[2026-06-13 03:58:22,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:58:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:58:22,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:58:22,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:58:22,996.996 INFO    ] time= 13/06/2026 03:58:22
[2026-06-13 03:58:23,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:58:23,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:58:23,103.103 INFO    ] No existing commands found in stream
[2026-06-13 03:58:28,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:28,117.117 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 03:58:30,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 03:58:30,392.392 INFO    ] Checking for system updates...
[2026-06-13 03:58:30,419.419 INFO    ] 200
[2026-06-13 03:58:30,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:30,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:58:30,462.462 INFO    ] No update needed
[2026-06-13 03:58:30,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:30,484.484 INFO    ] 200
[2026-06-13 03:58:30,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:30,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:58:30,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:58:30,539.539 INFO    ] No camera update needed
[2026-06-13 03:58:30,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:58:30,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:58:30,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:58:30,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:58:32,577.577 INFO    ] ================================================
[2026-06-13 03:58:32,591.591 INFO    ] Launching Daemon at Sat Jun 13 03:58:32 IST 2026
[2026-06-13 03:58:32,602.602 INFO    ] ================================================
[2026-06-13 03:58:33,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:58:33
[2026-06-13 03:58:33,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:58:34,027.027 INFO    ] Initializing speech engine...
[2026-06-13 03:58:34,034.034 INFO    ] 2026-06-13 03:58:34
[2026-06-13 03:58:34,291.291 INFO    ] 2026-06-13 03:58:34
[2026-06-13 03:58:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:58:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:58:34,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:58:34,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:58:34,714.714 INFO    ] time= 13/06/2026 03:58:34
[2026-06-13 03:58:34,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:58:34,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:58:34,891.891 INFO    ] No existing commands found in stream
[2026-06-13 03:58:39,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:39,905.905 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 03:58:40,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:58:40,644.644 INFO    ] Checking for system updates...
[2026-06-13 03:58:40,669.669 INFO    ] 200
[2026-06-13 03:58:40,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:40,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:40,702.702 INFO    ] No update needed
[2026-06-13 03:58:40,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:40,723.723 INFO    ] 200
[2026-06-13 03:58:40,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:40,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:58:40,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:40,787.787 INFO    ] No camera update needed
[2026-06-13 03:58:40,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:58:40,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:58:40,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:58:40,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:58:42,835.835 INFO    ] ================================================
[2026-06-13 03:58:42,850.850 INFO    ] Launching Daemon at Sat Jun 13 03:58:42 IST 2026
[2026-06-13 03:58:42,861.861 INFO    ] ================================================
[2026-06-13 03:58:43,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:58:43
[2026-06-13 03:58:43,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:58:43,639.639 INFO    ] Initializing speech engine...
[2026-06-13 03:58:43,644.644 INFO    ] 2026-06-13 03:58:43
[2026-06-13 03:58:43,848.848 INFO    ] 2026-06-13 03:58:43
[2026-06-13 03:58:43,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:58:44,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:58:44,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:58:44,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:58:44,246.246 INFO    ] time= 13/06/2026 03:58:44
[2026-06-13 03:58:44,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:58:44,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:58:44,367.367 INFO    ] No existing commands found in stream
[2026-06-13 03:58:49,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:49,378.378 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 03:58:49,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:58:49,716.716 INFO    ] Checking for system updates...
[2026-06-13 03:58:49,737.737 INFO    ] 200
[2026-06-13 03:58:49,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:49,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:49,773.773 INFO    ] No update needed
[2026-06-13 03:58:49,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:49,795.795 INFO    ] 200
[2026-06-13 03:58:49,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:49,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:58:49,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:58:49,865.865 INFO    ] No camera update needed
[2026-06-13 03:58:49,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:58:49,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:58:49,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:58:49,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:58:51,914.914 INFO    ] ================================================
[2026-06-13 03:58:51,930.930 INFO    ] Launching Daemon at Sat Jun 13 03:58:51 IST 2026
[2026-06-13 03:58:51,942.942 INFO    ] ================================================
[2026-06-13 03:58:52,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:58:52
[2026-06-13 03:58:52,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:58:52,730.730 INFO    ] Initializing speech engine...
[2026-06-13 03:58:52,738.738 INFO    ] 2026-06-13 03:58:52
[2026-06-13 03:58:52,951.951 INFO    ] 2026-06-13 03:58:52
[2026-06-13 03:58:52,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:58:53,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:58:53,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:58:53,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:58:53,356.356 INFO    ] time= 13/06/2026 03:58:53
[2026-06-13 03:58:53,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:58:53,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:58:53,473.473 INFO    ] No existing commands found in stream
[2026-06-13 03:58:58,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:58:58,486.486 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 03:58:59,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 03:58:59,854.854 INFO    ] Checking for system updates...
[2026-06-13 03:58:59,875.875 INFO    ] 200
[2026-06-13 03:58:59,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:59,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:58:59,909.909 INFO    ] No update needed
[2026-06-13 03:58:59,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 03:58:59,932.932 INFO    ] 200
[2026-06-13 03:58:59,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:58:59,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:00,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:00,003.003 INFO    ] No camera update needed
[2026-06-13 03:59:00,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:00,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:00,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:00,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:02,046.046 INFO    ] ================================================
[2026-06-13 03:59:02,062.062 INFO    ] Launching Daemon at Sat Jun 13 03:59:02 IST 2026
[2026-06-13 03:59:02,078.078 INFO    ] ================================================
[2026-06-13 03:59:02,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:02
[2026-06-13 03:59:02,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:03,007.007 INFO    ] Initializing speech engine...
[2026-06-13 03:59:03,012.012 INFO    ] 2026-06-13 03:59:03
[2026-06-13 03:59:03,237.237 INFO    ] 2026-06-13 03:59:03
[2026-06-13 03:59:03,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:03,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:03,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:03,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:03,469.469 INFO    ] time= 13/06/2026 03:59:03
[2026-06-13 03:59:03,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:03,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:03,559.559 INFO    ] No existing commands found in stream
[2026-06-13 03:59:08,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:59:08,596.596 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 03:59:10,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:59:10,234.234 INFO    ] Checking for system updates...
[2026-06-13 03:59:10,255.255 INFO    ] 200
[2026-06-13 03:59:10,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:10,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:59:10,287.287 INFO    ] No update needed
[2026-06-13 03:59:10,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 03:59:10,309.309 INFO    ] 200
[2026-06-13 03:59:10,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:10,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:10,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:59:10,373.373 INFO    ] No camera update needed
[2026-06-13 03:59:10,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:10,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:10,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:10,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:12,421.421 INFO    ] ================================================
[2026-06-13 03:59:12,436.436 INFO    ] Launching Daemon at Sat Jun 13 03:59:12 IST 2026
[2026-06-13 03:59:12,447.447 INFO    ] ================================================
[2026-06-13 03:59:12,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:12
[2026-06-13 03:59:13,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:13,257.257 INFO    ] Initializing speech engine...
[2026-06-13 03:59:13,263.263 INFO    ] 2026-06-13 03:59:13
[2026-06-13 03:59:13,468.468 INFO    ] 2026-06-13 03:59:13
[2026-06-13 03:59:13,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:13,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:13,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:13,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:13,869.869 INFO    ] time= 13/06/2026 03:59:13
[2026-06-13 03:59:13,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:13,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:13,992.992 INFO    ] No existing commands found in stream
[2026-06-13 03:59:19,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:59:19,005.005 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 03:59:21,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 03:59:21,211.211 INFO    ] Checking for system updates...
[2026-06-13 03:59:21,231.231 INFO    ] 200
[2026-06-13 03:59:21,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:21,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:59:21,266.266 INFO    ] No update needed
[2026-06-13 03:59:21,268.268 INFO    ] Checking for camera pi updates...
[2026-06-13 03:59:21,288.288 INFO    ] 200
[2026-06-13 03:59:21,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:21,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:21,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:59:21,352.352 INFO    ] No camera update needed
[2026-06-13 03:59:21,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:21,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:21,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:21,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:23,400.400 INFO    ] ================================================
[2026-06-13 03:59:23,415.415 INFO    ] Launching Daemon at Sat Jun 13 03:59:23 IST 2026
[2026-06-13 03:59:23,427.427 INFO    ] ================================================
[2026-06-13 03:59:23,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:23
[2026-06-13 03:59:24,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:24,236.236 INFO    ] Initializing speech engine...
[2026-06-13 03:59:24,242.242 INFO    ] 2026-06-13 03:59:24
[2026-06-13 03:59:24,445.445 INFO    ] 2026-06-13 03:59:24
[2026-06-13 03:59:24,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:24,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:24,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:24,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:24,838.838 INFO    ] time= 13/06/2026 03:59:24
[2026-06-13 03:59:24,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:24,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:24,957.957 INFO    ] No existing commands found in stream
[2026-06-13 03:59:29,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:59:29,970.970 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 03:59:33,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:59:33,665.665 INFO    ] Checking for system updates...
[2026-06-13 03:59:33,686.686 INFO    ] 200
[2026-06-13 03:59:33,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:33,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 03:59:33,721.721 INFO    ] No update needed
[2026-06-13 03:59:33,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 03:59:33,743.743 INFO    ] 200
[2026-06-13 03:59:33,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:33,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:33,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:33,816.816 INFO    ] No camera update needed
[2026-06-13 03:59:33,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:33,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:33,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:33,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:35,862.862 INFO    ] ================================================
[2026-06-13 03:59:35,878.878 INFO    ] Launching Daemon at Sat Jun 13 03:59:35 IST 2026
[2026-06-13 03:59:35,890.890 INFO    ] ================================================
[2026-06-13 03:59:36,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:36
[2026-06-13 03:59:36,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:36,684.684 INFO    ] Initializing speech engine...
[2026-06-13 03:59:36,690.690 INFO    ] 2026-06-13 03:59:36
[2026-06-13 03:59:36,890.890 INFO    ] 2026-06-13 03:59:36
[2026-06-13 03:59:36,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:37,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:37,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:37,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:37,297.297 INFO    ] time= 13/06/2026 03:59:37
[2026-06-13 03:59:37,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:37,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:37,406.406 INFO    ] No existing commands found in stream
[2026-06-13 03:59:42,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:59:42,411.411 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 03:59:45,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 03:59:45,875.875 INFO    ] Checking for system updates...
[2026-06-13 03:59:45,897.897 INFO    ] 200
[2026-06-13 03:59:45,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:45,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:45,930.930 INFO    ] No update needed
[2026-06-13 03:59:45,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 03:59:45,951.951 INFO    ] 200
[2026-06-13 03:59:45,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:45,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:46,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:46,026.026 INFO    ] No camera update needed
[2026-06-13 03:59:46,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:46,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:46,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:46,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:48,076.076 INFO    ] ================================================
[2026-06-13 03:59:48,092.092 INFO    ] Launching Daemon at Sat Jun 13 03:59:48 IST 2026
[2026-06-13 03:59:48,103.103 INFO    ] ================================================
[2026-06-13 03:59:48,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:48
[2026-06-13 03:59:48,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:48,931.931 INFO    ] Initializing speech engine...
[2026-06-13 03:59:48,936.936 INFO    ] 2026-06-13 03:59:48
[2026-06-13 03:59:49,139.139 INFO    ] 2026-06-13 03:59:49
[2026-06-13 03:59:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:49,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:49,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:49,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:49,540.540 INFO    ] time= 13/06/2026 03:59:49
[2026-06-13 03:59:49,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:49,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:49,656.656 INFO    ] No existing commands found in stream
[2026-06-13 03:59:54,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 03:59:54,670.670 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 03:59:55,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 03:59:55,063.063 INFO    ] Checking for system updates...
[2026-06-13 03:59:55,084.084 INFO    ] 200
[2026-06-13 03:59:55,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:55,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:55,120.120 INFO    ] No update needed
[2026-06-13 03:59:55,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 03:59:55,141.141 INFO    ] 200
[2026-06-13 03:59:55,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 03:59:55,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 03:59:55,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 03:59:55,207.207 INFO    ] No camera update needed
[2026-06-13 03:59:55,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 03:59:55,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 03:59:55,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 03:59:55,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 03:59:57,254.254 INFO    ] ================================================
[2026-06-13 03:59:57,270.270 INFO    ] Launching Daemon at Sat Jun 13 03:59:57 IST 2026
[2026-06-13 03:59:57,282.282 INFO    ] ================================================
[2026-06-13 03:59:57,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 03:59:57
[2026-06-13 03:59:57,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 03:59:58,096.096 INFO    ] Initializing speech engine...
[2026-06-13 03:59:58,101.101 INFO    ] 2026-06-13 03:59:58
[2026-06-13 03:59:58,304.304 INFO    ] 2026-06-13 03:59:58
[2026-06-13 03:59:58,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 03:59:58,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 03:59:58,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 03:59:58,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 03:59:58,717.717 INFO    ] time= 13/06/2026 03:59:58
[2026-06-13 03:59:58,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 03:59:58,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 03:59:58,816.816 INFO    ] No existing commands found in stream
[2026-06-13 04:00:03,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:00:03,834.834 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 04:00:08,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:00:08,148.148 INFO    ] Checking for system updates...
[2026-06-13 04:00:08,190.190 INFO    ] 200
[2026-06-13 04:00:08,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:08,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:00:08,249.249 INFO    ] No update needed
[2026-06-13 04:00:08,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 04:00:08,290.290 INFO    ] 200
[2026-06-13 04:00:08,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:08,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:00:08,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:00:08,374.374 INFO    ] No camera update needed
[2026-06-13 04:00:08,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:00:08,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:00:08,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:00:08,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:00:10,424.424 INFO    ] ================================================
[2026-06-13 04:00:10,439.439 INFO    ] Launching Daemon at Sat Jun 13 04:00:10 IST 2026
[2026-06-13 04:00:10,450.450 INFO    ] ================================================
[2026-06-13 04:00:10,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:00:10
[2026-06-13 04:00:11,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:00:11,267.267 INFO    ] Initializing speech engine...
[2026-06-13 04:00:11,272.272 INFO    ] 2026-06-13 04:00:11
[2026-06-13 04:00:11,476.476 INFO    ] 2026-06-13 04:00:11
[2026-06-13 04:00:11,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:00:11,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:00:11,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:00:11,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:00:11,889.889 INFO    ] time= 13/06/2026 04:00:11
[2026-06-13 04:00:11,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:00:11,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:00:11,988.988 INFO    ] No existing commands found in stream
[2026-06-13 04:00:16,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:00:17,001.001 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 04:00:17,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:00:17,955.955 INFO    ] Checking for system updates...
[2026-06-13 04:00:17,977.977 INFO    ] 200
[2026-06-13 04:00:17,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:18,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:00:18,013.013 INFO    ] No update needed
[2026-06-13 04:00:18,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 04:00:18,035.035 INFO    ] 200
[2026-06-13 04:00:18,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:18,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:00:18,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:00:18,103.103 INFO    ] No camera update needed
[2026-06-13 04:00:18,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:00:18,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:00:18,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:00:18,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:00:20,152.152 INFO    ] ================================================
[2026-06-13 04:00:20,168.168 INFO    ] Launching Daemon at Sat Jun 13 04:00:20 IST 2026
[2026-06-13 04:00:20,179.179 INFO    ] ================================================
[2026-06-13 04:00:20,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:00:20
[2026-06-13 04:00:20,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:00:21,072.072 INFO    ] Initializing speech engine...
[2026-06-13 04:00:21,079.079 INFO    ] 2026-06-13 04:00:21
[2026-06-13 04:00:21,282.282 INFO    ] 2026-06-13 04:00:21
[2026-06-13 04:00:21,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:00:21,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:00:21,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:00:21,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:00:21,684.684 INFO    ] time= 13/06/2026 04:00:21
[2026-06-13 04:00:21,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:00:21,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:00:21,799.799 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 04:00:21,803.803 INFO    ] Checking historical command: ID=1781303419119-0
[2026-06-13 04:00:21,828.828 INFO    ] process_and_cleanup_command: msg_id=1781303419119-0
[2026-06-13 04:00:21,830.830 INFO    ] is_command_expired: timestamp=2026-06-12T22:30:18.946Z, expiry=30s
[2026-06-13 04:00:21,940.940 INFO    ] Command removed from stream: 1781303419119-0. returning for processing...
[2026-06-13 04:00:21,944.944 INFO    ] ***** get_valid_command
[2026-06-13 04:00:21,949.949 INFO    ] {'data': '{"request_id":"start-order-1781303418945-uewpq9mo2","orderId":"TM08202203260613035929585","is_vending":false}', 'command': 'start-order', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-12T22:30:18.946Z'}
[2026-06-13 04:00:21,954.954 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613035929585', 'request_id': 'start-order-1781303418945-uewpq9mo2', 'is_vending': False}
[2026-06-13 04:00:21,957.957 INFO    ] Handling start order...
[2026-06-13 04:00:21,961.961 INFO    ] handle_start_order_command
[2026-06-13 04:00:21,969.969 INFO    ] _send_start_order_success: request_id=start-order-1781303418945-uewpq9mo2, order_id=TM08202203260613035929585
[2026-06-13 04:00:21,972.972 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 04:00:22,031.031 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781303421975-0
[2026-06-13 04:00:22,036.036 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 04:00:22,040.040 INFO    ] Checking for system updates...
[2026-06-13 04:00:22,074.074 INFO    ] 200
[2026-06-13 04:00:22,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:22,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:00:22,153.153 INFO    ] No update needed
[2026-06-13 04:00:22,178.178 INFO    ] Checking for camera pi updates...
[2026-06-13 04:00:22,208.208 INFO    ] 200
[2026-06-13 04:00:22,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:22,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:00:22,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:00:22,330.330 INFO    ] No camera update needed
[2026-06-13 04:00:22,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:00:22,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:00:22,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:00:22,352.352 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 04:00:22,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:00:24,395.395 INFO    ] ================================================
[2026-06-13 04:00:24,411.411 INFO    ] Launching Daemon at Sat Jun 13 04:00:24 IST 2026
[2026-06-13 04:00:24,422.422 INFO    ] ================================================
[2026-06-13 04:00:24,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:00:24
[2026-06-13 04:00:25,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:00:25,252.252 INFO    ] Initializing speech engine...
[2026-06-13 04:00:25,257.257 INFO    ] 2026-06-13 04:00:25
[2026-06-13 04:00:25,463.463 INFO    ] 2026-06-13 04:00:25
[2026-06-13 04:00:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:00:25,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:00:25,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:00:25,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:00:25,873.873 INFO    ] time= 13/06/2026 04:00:25
[2026-06-13 04:00:25,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:00:25,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:00:25,980.980 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 04:00:25,982.982 INFO    ] Checking historical command: ID=1781303421975-0
[2026-06-13 04:00:26,007.007 INFO    ] process_and_cleanup_command: msg_id=1781303421975-0
[2026-06-13 04:00:26,009.009 INFO    ] is_command_expired: timestamp=2026-06-12T22:30:21.970540Z, expiry=30s
[2026-06-13 04:00:26,117.117 INFO    ] Command removed from stream: 1781303421975-0. returning for processing...
[2026-06-13 04:00:26,120.120 INFO    ] ***** get_valid_command
[2026-06-13 04:00:26,123.123 INFO    ] {'message_type': 'command_response', 'status': 'success', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781303418945-uewpq9mo2', 'timestamp': '2026-06-12T22:30:21.970540Z', 'imei': 'TM08202203', 'metadata_order_id': 'TM08202203260613035929585'}
[2026-06-13 04:00:26,127.127 INFO    ] Checking historical command: ID=1781303424254-0
[2026-06-13 04:00:26,132.132 INFO    ] process_and_cleanup_command: msg_id=1781303424254-0
[2026-06-13 04:00:26,135.135 INFO    ] is_command_expired: timestamp=2026-06-12T22:30:24.050Z, expiry=30s
[2026-06-13 04:00:26,180.180 INFO    ] Command removed from stream: 1781303424254-0. returning for processing...
[2026-06-13 04:00:26,183.183 INFO    ] ***** get_valid_command
[2026-06-13 04:00:26,186.186 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1781303424050-qhwpl4roi","orderId":"TM08202203260613035929585","is_vending":false,"accessCode":"63495186"}', 'timestamp': '2026-06-12T22:30:24.050Z', 'command': 'process-order', 'source': 'webapp'}
[2026-06-13 04:00:26,189.189 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781303424050-qhwpl4roi', 'orderId': 'TM08202203260613035929585', 'is_vending': False, 'accessCode': '63495186'}
[2026-06-13 04:00:26,192.192 INFO    ] Handling process order...
[2026-06-13 04:00:26,195.195 INFO    ] Processing process-order command...
[2026-06-13 04:00:26,199.199 INFO    ] 🔍 Lock file Order ID: TM08202203260613035929585, TS: 2026-06-13 04:00:21
[2026-06-13 04:00:26,208.208 INFO    ] ✅ Order lock valid for TM08202203260613035929585
[2026-06-13 04:00:26,212.212 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 04:00:26,214.214 INFO    ] processing access code 63495186 for order TM08202203260613035929585
[2026-06-13 04:00:26,218.218 INFO    ] 🔍 Lock file Order ID: TM08202203260613035929585, TS: 2026-06-13 04:00:21
[2026-06-13 04:00:26,221.221 INFO    ] ✅ Order lock valid for TM08202203260613035929585
[2026-06-13 04:00:26,225.225 INFO    ] 2026-06-13 04:00:26
[2026-06-13 04:00:26,254.254 INFO    ] 200
[2026-06-13 04:00:26,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:26,262.262 INFO    ] 63495186
[2026-06-13 04:00:26,265.265 INFO    ] 2026-06-13 04:00:26
[2026-06-13 04:00:26,269.269 INFO    ] session id :857223468
[2026-06-13 04:00:26,273.273 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=63495186&imei=TM08202203&session_id=857223468
[2026-06-13 04:00:27,048.048 INFO    ] 200
[2026-06-13 04:00:27,050.050 INFO    ] {"data": {"mobile": "7760264151", "order_id": "TM08202203260613035929585", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "63495186", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 04:00:27,051.051 INFO    ] 20
[2026-06-13 04:00:27,052.052 INFO    ] TM08202203260613035929585
[2026-06-13 04:00:27,054.054 INFO    ] 7760264151
[2026-06-13 04:00:27,055.055 INFO    ] 2026-06-13 04:00:27
[2026-06-13 04:00:27,056.056 INFO    ] Door Opening for user mobile ending with  four one five one 
[2026-06-13 04:00:27,057.057 INFO    ] Door Opening for user mobile ending with  four one five one 
[2026-06-13 04:00:27,059.059 INFO    ] 1c5c47ff0ed7f4030f02289fb1405c6e
[2026-06-13 04:00:27,060.060 INFO    ] 2026-06-13 04:00:27
[2026-06-13 04:00:27,062.062 INFO    ] playing audio file
[2026-06-13 04:00:27,071.071 INFO    ] 2026-06-13 04:00:27
[2026-06-13 04:00:27,073.073 INFO    ] 2026-06-13 04:00:27
[2026-06-13 04:00:27,075.075 INFO    ] publish_status: order_id=TM08202203260613035929585
[2026-06-13 04:00:27,077.077 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035929585
[2026-06-13 04:00:27,155.155 INFO    ] [publish_status] Message added to stream with ID: 1781303427108-0
[2026-06-13 04:00:27,156.156 INFO    ] Published to order:TM08202203260613035929585: {'order_id': 'TM08202203260613035929585', 'server_response': '{"msg": "Order Data", "data": {"order_id": "TM08202203260613035929585", "proposed_sku_json": [{"sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "qty": 1, "tray_id": "43", "unit_price": 20, "offer_desc": "", "door_id": "2", "mrp": "20", "skuid": "185993", "offer_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "bill_amount": "20", "invoice_bill": "20", "mobile": "7760264151", "access_code": "63495186"}, "rstatus": true, "status": true}', 'timestamp': '2026-06-12T22:30:27.074605Z', 'server_status': 'order-started'} (ID: 1781303427108-0)
[2026-06-13 04:00:27,451.451 INFO    ] {'order_id': 'TM08202203260613035929585', 'server_response': {'msg': 'Order Data', 'data': {'order_id': 'TM08202203260613035929585', 'proposed_sku_json': [{'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43', 'unit_price': 20, 'offer_desc': '', 'door_id': '2', 'mrp': '20', 'skuid': '185993', 'offer_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'bill_amount': '20', 'invoice_bill': '20', 'mobile': '7760264151', 'access_code': '63495186'}, 'rstatus': True, 'status': True}, 'server_status': 'order-started'}
[2026-06-13 04:00:27,454.454 INFO    ] 200
[2026-06-13 04:00:27,456.456 INFO    ] {"data":{"order_id":"TM08202203260613035929585","server_response":{"msg":"Order Data","data":{"order_id":"TM08202203260613035929585","proposed_sku_json":[{"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","qty":1,"tray_id":"43","unit_price":20,"offer_desc":"","door_id":"2","mrp":"20","skuid":"185993","offer_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"bill_amount":"20","invoice_bill":"20","mobile":"7760264151","access_code":"63495186"},"rstatus":true,"status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:00:27,459.459 INFO    ] {'data': {'order_id': 'TM08202203260613035929585', 'server_response': {'msg': 'Order Data', 'data': {'order_id': 'TM08202203260613035929585', 'proposed_sku_json': [{'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'offer_desc': '', 'door_id': '2', 'mrp': '20', 'skuid': '185993', 'offer_id': '', 'tray_id': '43'}], 'bill_amount': '20', 'invoice_bill': '20', 'mobile': '7760264151', 'access_code': '63495186'}, 'rstatus': True, 'status': True}, 'server_status': 'order-started'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 04:00:27,462.462 INFO    ] 2026-06-13 04:00:27
[2026-06-13 04:00:27,506.506 INFO    ] 200
[2026-06-13 04:00:27,509.509 INFO    ] True
[2026-06-13 04:00:27,681.681 INFO    ] 200
[2026-06-13 04:00:27,683.683 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 04:00:27,685.685 INFO    ] {'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': False, 'voiceNote': 'Please Wait'}
[2026-06-13 04:00:27,686.686 INFO    ] *** process_order ***
[2026-06-13 04:00:28,804.804 INFO    ] 200
[2026-06-13 04:00:28,805.805 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:00:28,807.807 INFO    ] {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait'}
[2026-06-13 04:00:28,808.808 INFO    ] *** process_order ***
[2026-06-13 04:00:28,810.810 INFO    ] publish_status: order_id=TM08202203260613035929585
[2026-06-13 04:00:28,811.811 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035929585
[2026-06-13 04:00:28,856.856 INFO    ] [publish_status] Message added to stream with ID: 1781303428810-0
[2026-06-13 04:00:28,857.857 INFO    ] Published to order:TM08202203260613035929585: {'order_id': 'TM08202203260613035929585', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "rstatus": true, "voiceNote": "Door is open..."}', 'server_status': 'doorOpened'} (ID: 1781303428810-0)
[2026-06-13 04:00:29,899.899 INFO    ] 2026-06-13 04:00:29
[2026-06-13 04:00:29,901.901 INFO    ] publish_status: order_id=TM08202203260613035929585
[2026-06-13 04:00:29,902.902 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035929585
[2026-06-13 04:00:29,943.943 INFO    ] [publish_status] Message added to stream with ID: 1781303429897-0
[2026-06-13 04:00:29,944.944 INFO    ] Published to order:TM08202203260613035929585: {'order_id': 'TM08202203260613035929585', 'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "rstatus": true, "voiceNote": "Please Wait"}', 'timestamp': '2026-06-12T22:30:29.900193Z', 'server_status': 'processOrder'} (ID: 1781303429897-0)
[2026-06-13 04:00:30,043.043 INFO    ] {'order_id': 'TM08202203260613035929585', 'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder'}
[2026-06-13 04:00:30,046.046 INFO    ] 200
[2026-06-13 04:00:30,048.048 INFO    ] {"data":{"order_id":"TM08202203260613035929585","server_response":{"delay":0,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"rstatus":true,"voiceNote":"Please Wait"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:00:30,052.052 INFO    ] {'data': {'order_id': 'TM08202203260613035929585', 'server_response': {'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 04:00:30,055.055 INFO    ] 2026-06-13 04:00:30
[2026-06-13 04:00:30,058.058 INFO    ] None
[2026-06-13 04:00:30,061.061 INFO    ] Opening Door now
[2026-06-13 04:00:30,066.066 INFO    ] Opening Door now
[2026-06-13 04:00:30,070.070 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 04:00:30,075.075 INFO    ] 2026-06-13 04:00:30
[2026-06-13 04:00:30,078.078 INFO    ] playing audio file
[2026-06-13 04:00:30,098.098 INFO    ] 2026-06-13 04:00:30
[2026-06-13 04:00:30,102.102 INFO    ] 2026-06-13 04:00:30
[2026-06-13 04:00:33,235.235 INFO    ] 200
[2026-06-13 04:00:33,237.237 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:00:33,239.239 INFO    ] {'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 04:00:36,296.296 INFO    ] 200
[2026-06-13 04:00:36,298.298 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:00:36,300.300 INFO    ] {'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-13 04:00:39,338.338 INFO    ] 200
[2026-06-13 04:00:39,340.340 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:00:39,341.341 INFO    ] Please close door 2
[2026-06-13 04:00:39,343.343 INFO    ] Please close door 2
[2026-06-13 04:00:39,344.344 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 04:00:39,346.346 INFO    ] 2026-06-13 04:00:39
[2026-06-13 04:00:39,347.347 INFO    ] playing audio file
[2026-06-13 04:00:39,357.357 INFO    ] 2026-06-13 04:00:39
[2026-06-13 04:00:39,360.360 INFO    ] publish_status: order_id=TM08202203260613035929585
[2026-06-13 04:00:39,361.361 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035929585
[2026-06-13 04:00:39,425.425 INFO    ] [publish_status] Message added to stream with ID: 1781303439372-0
[2026-06-13 04:00:39,427.427 INFO    ] Published to order:TM08202203260613035929585: {'order_id': 'TM08202203260613035929585', 'server_response': '{"error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2"}', 'timestamp': '2026-06-12T22:30:39.359112Z', 'server_status': 'OrderStatus'} (ID: 1781303439372-0)
[2026-06-13 04:00:39,749.749 INFO    ] {'order_id': 'TM08202203260613035929585', 'server_response': {'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}
[2026-06-13 04:00:39,752.752 INFO    ] 200
[2026-06-13 04:00:39,753.753 INFO    ] {"data":{"order_id":"TM08202203260613035929585","server_response":{"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:00:39,755.755 INFO    ] {'data': {'order_id': 'TM08202203260613035929585', 'server_response': {'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'false', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 04:00:39,757.757 INFO    ] {'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-13 04:00:42,814.814 INFO    ] 200
[2026-06-13 04:00:42,817.817 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:00:42,820.820 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed'}
[2026-06-13 04:00:42,823.823 INFO    ] 2026-06-13 04:00:42
[2026-06-13 04:00:42,826.826 INFO    ] Order Completed 
[2026-06-13 04:00:42,828.828 INFO    ] Order Completed 
[2026-06-13 04:00:42,831.831 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 04:00:42,834.834 INFO    ] 2026-06-13 04:00:42
[2026-06-13 04:00:42,837.837 INFO    ] playing audio file
[2026-06-13 04:00:42,857.857 INFO    ] 2026-06-13 04:00:42
[2026-06-13 04:00:42,860.860 INFO    ] {'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed'}
[2026-06-13 04:00:42,863.863 INFO    ] 2026-06-13 04:00:42
[2026-06-13 04:00:44,315.315 INFO    ] 200
[2026-06-13 04:00:44,317.317 INFO    ] {"res": "True", "orderId": "TM08202203260613035929585", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 04:00:44,320.320 INFO    ] {'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM08202203260613035929585', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}
[2026-06-13 04:00:44,323.323 INFO    ] {'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM08202203260613035929585', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}
[2026-06-13 04:00:44,325.325 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,327.327 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,330.330 INFO    ] 20
[2026-06-13 04:00:44,332.332 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,335.335 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,337.337 INFO    ]  Your Bill Amount is 20
[2026-06-13 04:00:44,340.340 INFO    ]  Your Bill Amount is 20
[2026-06-13 04:00:44,343.343 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 04:00:44,345.345 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,347.347 INFO    ] playing audio file
[2026-06-13 04:00:44,365.365 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,368.368 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:44,372.372 INFO    ] publish_status: order_id=TM08202203260613035929585
[2026-06-13 04:00:44,374.374 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035929585
[2026-06-13 04:00:44,423.423 INFO    ] [publish_status] Message added to stream with ID: 1781303444375-0
[2026-06-13 04:00:44,426.426 INFO    ] Published to order:TM08202203260613035929585: {'order_id': 'TM08202203260613035929585', 'server_response': '{"anomaly": 0, "res": "True", "logic": "WBL", "orderId": "TM08202203260613035929585", "rstatus": true, "total_amount": 20.0, "skus": [{"sku_total": 20.0, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "qty": 1, "tray_id": "43", "unit_price": "20", "skuid": "185993", "door_id": "", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}]}', 'timestamp': '2026-06-12T22:30:44.369796Z', 'server_status': 'invoiceOrder'} (ID: 1781303444375-0)
[2026-06-13 04:00:44,545.545 INFO    ] {'order_id': 'TM08202203260613035929585', 'server_response': {'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'orderId': 'TM08202203260613035929585', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}, 'server_status': 'invoiceOrder'}
[2026-06-13 04:00:44,548.548 INFO    ] 200
[2026-06-13 04:00:44,551.551 INFO    ] {"data":{"order_id":"TM08202203260613035929585","server_response":{"anomaly":0,"res":"true","logic":"WBL","orderId":"TM08202203260613035929585","rstatus":true,"total_amount":20,"skus":[{"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","qty":1,"tray_id":"43","unit_price":"20","skuid":"185993","door_id":"","mrp":"20","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}]},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:00:44,555.555 INFO    ] {'data': {'order_id': 'TM08202203260613035929585', 'server_response': {'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM08202203260613035929585', 'rstatus': True, 'total_amount': 20, 'skus': [{'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'tray_id': '43'}]}, 'server_status': 'invoiceOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 04:00:44,557.557 INFO    ] {'data': {'order_id': 'TM08202203260613035929585', 'server_response': {'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM08202203260613035929585', 'rstatus': True, 'total_amount': 20, 'skus': [{'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'tray_id': '43'}]}, 'server_status': 'invoiceOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 04:00:44,560.560 INFO    ] 2026-06-13 04:00:44
[2026-06-13 04:00:46,527.527 INFO    ] 200
[2026-06-13 04:00:46,530.530 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585", "TM08202203260613035929585"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 04:00:46,533.533 INFO    ] 2026-06-13 04:00:46
[2026-06-13 04:00:46,637.637 INFO    ] 200
[2026-06-13 04:00:46,639.639 INFO    ] True
[2026-06-13 04:00:46,641.641 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613035929585
[2026-06-13 04:00:46,643.643 INFO    ] start order file deleted
[2026-06-13 04:00:46,645.645 INFO    ] Checking for system updates...
[2026-06-13 04:00:46,665.665 INFO    ] 200
[2026-06-13 04:00:46,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:46,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:00:46,701.701 INFO    ] No update needed
[2026-06-13 04:00:46,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 04:00:46,724.724 INFO    ] 200
[2026-06-13 04:00:46,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:46,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:00:46,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:00:46,795.795 INFO    ] No camera update needed
[2026-06-13 04:00:46,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:00:46,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:00:46,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:00:46,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:00:48,844.844 INFO    ] ================================================
[2026-06-13 04:00:48,860.860 INFO    ] Launching Daemon at Sat Jun 13 04:00:48 IST 2026
[2026-06-13 04:00:48,872.872 INFO    ] ================================================
[2026-06-13 04:00:49,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:00:49
[2026-06-13 04:00:49,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:00:49,656.656 INFO    ] Initializing speech engine...
[2026-06-13 04:00:49,662.662 INFO    ] 2026-06-13 04:00:49
[2026-06-13 04:00:49,867.867 INFO    ] 2026-06-13 04:00:49
[2026-06-13 04:00:49,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:00:50,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:00:50,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:00:50,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:00:50,274.274 INFO    ] time= 13/06/2026 04:00:50
[2026-06-13 04:00:50,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:00:50,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:00:50,391.391 INFO    ] No existing commands found in stream
[2026-06-13 04:00:55,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:00:55,405.405 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 04:00:58,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:00:58,603.603 INFO    ] Checking for system updates...
[2026-06-13 04:00:58,623.623 INFO    ] 200
[2026-06-13 04:00:58,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:58,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:00:58,657.657 INFO    ] No update needed
[2026-06-13 04:00:58,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 04:00:58,681.681 INFO    ] 200
[2026-06-13 04:00:58,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:00:58,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:00:58,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:00:58,749.749 INFO    ] No camera update needed
[2026-06-13 04:00:58,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:00:58,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:00:58,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:00:58,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:01:00,798.798 INFO    ] ================================================
[2026-06-13 04:01:00,814.814 INFO    ] Launching Daemon at Sat Jun 13 04:01:00 IST 2026
[2026-06-13 04:01:00,826.826 INFO    ] ================================================
[2026-06-13 04:01:01,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:01:01
[2026-06-13 04:01:01,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:01:01,855.855 INFO    ] Initializing speech engine...
[2026-06-13 04:01:01,864.864 INFO    ] 2026-06-13 04:01:01
[2026-06-13 04:01:02,190.190 INFO    ] 2026-06-13 04:01:02
[2026-06-13 04:01:02,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:01:02,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:01:02,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:01:02,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:01:02,583.583 INFO    ] time= 13/06/2026 04:01:02
[2026-06-13 04:01:02,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:01:02,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:01:02,758.758 INFO    ] No existing commands found in stream
[2026-06-13 04:01:07,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:01:07,775.775 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 04:01:10,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:01:10,718.718 INFO    ] Checking for system updates...
[2026-06-13 04:01:10,739.739 INFO    ] 200
[2026-06-13 04:01:10,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:10,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:01:10,775.775 INFO    ] No update needed
[2026-06-13 04:01:10,776.776 INFO    ] Checking for camera pi updates...
[2026-06-13 04:01:10,796.796 INFO    ] 200
[2026-06-13 04:01:10,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:10,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:01:10,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:01:10,868.868 INFO    ] No camera update needed
[2026-06-13 04:01:10,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:01:10,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:01:10,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:01:10,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:01:12,916.916 INFO    ] ================================================
[2026-06-13 04:01:12,925.925 INFO    ] Launching Daemon at Sat Jun 13 04:01:12 IST 2026
[2026-06-13 04:01:12,932.932 INFO    ] ================================================
[2026-06-13 04:01:13,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:01:13
[2026-06-13 04:01:13,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:01:13,707.707 INFO    ] Initializing speech engine...
[2026-06-13 04:01:13,719.719 INFO    ] 2026-06-13 04:01:13
[2026-06-13 04:01:13,931.931 INFO    ] 2026-06-13 04:01:13
[2026-06-13 04:01:13,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:01:14,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:01:14,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:01:14,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:01:14,337.337 INFO    ] time= 13/06/2026 04:01:14
[2026-06-13 04:01:14,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:01:14,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:01:14,449.449 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 04:01:14,451.451 INFO    ] Checking historical command: ID=1781303467770-0
[2026-06-13 04:01:14,476.476 INFO    ] process_and_cleanup_command: msg_id=1781303467770-0
[2026-06-13 04:01:14,483.483 INFO    ] is_command_expired: timestamp=2026-06-12T22:31:07.546Z, expiry=30s
[2026-06-13 04:01:14,587.587 INFO    ] Command removed from stream: 1781303467770-0. returning for processing...
[2026-06-13 04:01:14,591.591 INFO    ] ***** get_valid_command
[2026-06-13 04:01:14,595.595 INFO    ] {'timeout': '10', 'source': 'webapp', 'timestamp': '2026-06-12T22:31:07.546Z', 'data': '{"request_id":"start-order-1781303467546-gknallxdm","orderId":"TM08202203260613035952502","is_vending":false}', 'command': 'start-order'}
[2026-06-13 04:01:14,599.599 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613035952502', 'request_id': 'start-order-1781303467546-gknallxdm', 'is_vending': False}
[2026-06-13 04:01:14,603.603 INFO    ] Handling start order...
[2026-06-13 04:01:14,607.607 INFO    ] handle_start_order_command
[2026-06-13 04:01:14,614.614 INFO    ] _send_start_order_success: request_id=start-order-1781303467546-gknallxdm, order_id=TM08202203260613035952502
[2026-06-13 04:01:14,617.617 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 04:01:14,663.663 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781303474615-0
[2026-06-13 04:01:14,667.667 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 04:01:14,670.670 INFO    ] Checking for system updates...
[2026-06-13 04:01:14,698.698 INFO    ] 200
[2026-06-13 04:01:14,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:14,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:01:14,741.741 INFO    ] No update needed
[2026-06-13 04:01:14,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 04:01:14,768.768 INFO    ] 200
[2026-06-13 04:01:14,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:14,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:01:14,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:01:14,906.906 INFO    ] No camera update needed
[2026-06-13 04:01:14,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:01:14,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:01:14,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:01:14,923.923 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 04:01:14,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:01:16,965.965 INFO    ] ================================================
[2026-06-13 04:01:16,982.982 INFO    ] Launching Daemon at Sat Jun 13 04:01:16 IST 2026
[2026-06-13 04:01:16,993.993 INFO    ] ================================================
[2026-06-13 04:01:17,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:01:17
[2026-06-13 04:01:18,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:01:18,431.431 INFO    ] Initializing speech engine...
[2026-06-13 04:01:18,441.441 INFO    ] 2026-06-13 04:01:18
[2026-06-13 04:01:18,645.645 INFO    ] 2026-06-13 04:01:18
[2026-06-13 04:01:18,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:01:18,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:01:18,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:01:18,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:01:19,048.048 INFO    ] time= 13/06/2026 04:01:18
[2026-06-13 04:01:19,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:01:19,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:01:19,159.159 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 04:01:19,161.161 INFO    ] Checking historical command: ID=1781303474615-0
[2026-06-13 04:01:19,186.186 INFO    ] process_and_cleanup_command: msg_id=1781303474615-0
[2026-06-13 04:01:19,188.188 INFO    ] is_command_expired: timestamp=2026-06-12T22:31:14.615098Z, expiry=30s
[2026-06-13 04:01:19,297.297 INFO    ] Command removed from stream: 1781303474615-0. returning for processing...
[2026-06-13 04:01:19,301.301 INFO    ] ***** get_valid_command
[2026-06-13 04:01:19,305.305 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-06-12T22:31:14.615098Z', 'metadata_request_id': 'start-order-1781303467546-gknallxdm', 'metadata_order_id': 'TM08202203260613035952502', 'status': 'success', 'imei': 'TM08202203'}
[2026-06-13 04:01:19,308.308 INFO    ] Checking historical command: ID=1781303476678-0
[2026-06-13 04:01:19,312.312 INFO    ] process_and_cleanup_command: msg_id=1781303476678-0
[2026-06-13 04:01:19,315.315 INFO    ] is_command_expired: timestamp=2026-06-12T22:31:16.446Z, expiry=30s
[2026-06-13 04:01:19,361.361 INFO    ] Command removed from stream: 1781303476678-0. returning for processing...
[2026-06-13 04:01:19,363.363 INFO    ] ***** get_valid_command
[2026-06-13 04:01:19,366.366 INFO    ] {'timestamp': '2026-06-12T22:31:16.446Z', 'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1781303476445-gwag73vgt","orderId":"TM08202203260613035952502","is_vending":false,"accessCode":"43822611"}'}
[2026-06-13 04:01:19,369.369 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613035952502', 'is_vending': False, 'request_id': 'process-order-1781303476445-gwag73vgt', 'accessCode': '43822611'}
[2026-06-13 04:01:19,372.372 INFO    ] Handling process order...
[2026-06-13 04:01:19,376.376 INFO    ] Processing process-order command...
[2026-06-13 04:01:19,380.380 INFO    ] 🔍 Lock file Order ID: TM08202203260613035952502, TS: 2026-06-13 04:01:14
[2026-06-13 04:01:19,389.389 INFO    ] ✅ Order lock valid for TM08202203260613035952502
[2026-06-13 04:01:19,391.391 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 04:01:19,394.394 INFO    ] processing access code 43822611 for order TM08202203260613035952502
[2026-06-13 04:01:19,398.398 INFO    ] 🔍 Lock file Order ID: TM08202203260613035952502, TS: 2026-06-13 04:01:14
[2026-06-13 04:01:19,401.401 INFO    ] ✅ Order lock valid for TM08202203260613035952502
[2026-06-13 04:01:19,404.404 INFO    ] 2026-06-13 04:01:19
[2026-06-13 04:01:19,434.434 INFO    ] 200
[2026-06-13 04:01:19,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:19,441.441 INFO    ] 43822611
[2026-06-13 04:01:19,445.445 INFO    ] 2026-06-13 04:01:19
[2026-06-13 04:01:19,450.450 INFO    ] session id :246444901
[2026-06-13 04:01:19,455.455 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=43822611&imei=TM08202203&session_id=246444901
[2026-06-13 04:01:20,491.491 INFO    ] 200
[2026-06-13 04:01:20,501.501 INFO    ] {"data": {"mobile": "8327077656", "order_id": "TM08202203260613035952502", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "43822611", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 04:01:20,509.509 INFO    ] 20
[2026-06-13 04:01:20,514.514 INFO    ] TM08202203260613035952502
[2026-06-13 04:01:20,524.524 INFO    ] 8327077656
[2026-06-13 04:01:20,531.531 INFO    ] 2026-06-13 04:01:20
[2026-06-13 04:01:20,558.558 INFO    ] Door Opening for user mobile ending with  seven six five six 
[2026-06-13 04:01:20,569.569 INFO    ] Door Opening for user mobile ending with  seven six five six 
[2026-06-13 04:01:20,611.611 INFO    ] e5d4d962ab5f4d809f1f7135037d8f9e
[2026-06-13 04:01:20,667.667 INFO    ] 2026-06-13 04:01:20
[2026-06-13 04:01:20,724.724 INFO    ] creating audio file
[2026-06-13 04:01:20,847.847 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 04:01:21,723.723 INFO    ] gTTS API call completed successfully
[2026-06-13 04:01:22,790.790 INFO    ] 2026-06-13 04:01:22
[2026-06-13 04:01:22,791.791 INFO    ] playing audio file
[2026-06-13 04:01:22,801.801 INFO    ] 2026-06-13 04:01:22
[2026-06-13 04:01:22,803.803 INFO    ] 2026-06-13 04:01:22
[2026-06-13 04:01:22,805.805 INFO    ] publish_status: order_id=TM08202203260613035952502
[2026-06-13 04:01:22,807.807 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035952502
[2026-06-13 04:01:22,897.897 INFO    ] [publish_status] Message added to stream with ID: 1781303482850-0
[2026-06-13 04:01:22,899.899 INFO    ] Published to order:TM08202203260613035952502: {'order_id': 'TM08202203260613035952502', 'server_response': '{"msg": "Order Data", "status": true, "rstatus": true, "data": {"bill_amount": "20", "mobile": "8327077656", "access_code": "43822611", "order_id": "TM08202203260613035952502", "invoice_bill": "20", "proposed_sku_json": [{"tray_id": "43", "sku_total": 20, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "2", "offer_id": "", "unit_price": 20, "qty": 1, "skuid": "185993", "mrp": "20", "offer_desc": ""}]}}', 'timestamp': '2026-06-12T22:31:22.804485Z', 'server_status': 'order-started'} (ID: 1781303482850-0)
[2026-06-13 04:01:23,203.203 INFO    ] {'order_id': 'TM08202203260613035952502', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'bill_amount': '20', 'mobile': '8327077656', 'access_code': '43822611', 'order_id': 'TM08202203260613035952502', 'invoice_bill': '20', 'proposed_sku_json': [{'tray_id': '43', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'offer_id': '', 'unit_price': 20, 'qty': 1, 'skuid': '185993', 'mrp': '20', 'offer_desc': ''}]}}, 'server_status': 'order-started'}
[2026-06-13 04:01:23,204.204 INFO    ] 200
[2026-06-13 04:01:23,206.206 INFO    ] {"data":{"order_id":"TM08202203260613035952502","server_response":{"msg":"Order Data","status":true,"rstatus":true,"data":{"bill_amount":"20","mobile":"8327077656","access_code":"43822611","order_id":"TM08202203260613035952502","invoice_bill":"20","proposed_sku_json":[{"tray_id":"43","sku_total":20,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"2","offer_id":"","unit_price":20,"qty":1,"skuid":"185993","mrp":"20","offer_desc":""}]}},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:01:23,207.207 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613035952502', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'order_id': 'TM08202203260613035952502', 'invoice_bill': '20', 'access_code': '43822611', 'bill_amount': '20', 'mobile': '8327077656', 'proposed_sku_json': [{'tray_id': '43', 'unit_price': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'sku_total': 20, 'mrp': '20', 'offer_desc': '', 'skuid': '185993', 'door_id': '2', 'offer_id': ''}]}}, 'server_status': 'order-started'}}
[2026-06-13 04:01:23,209.209 INFO    ] 2026-06-13 04:01:23
[2026-06-13 04:01:23,235.235 INFO    ] 200
[2026-06-13 04:01:23,237.237 INFO    ] True
[2026-06-13 04:01:23,382.382 INFO    ] 200
[2026-06-13 04:01:23,384.384 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 04:01:23,386.386 INFO    ] {'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 04:01:23,387.387 INFO    ] *** process_order ***
[2026-06-13 04:01:24,501.501 INFO    ] 200
[2026-06-13 04:01:24,502.502 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:01:24,504.504 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'True'}
[2026-06-13 04:01:24,505.505 INFO    ] *** process_order ***
[2026-06-13 04:01:24,507.507 INFO    ] publish_status: order_id=TM08202203260613035952502
[2026-06-13 04:01:24,508.508 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035952502
[2026-06-13 04:01:24,559.559 INFO    ] [publish_status] Message added to stream with ID: 1781303484513-0
[2026-06-13 04:01:24,561.561 INFO    ] Published to order:TM08202203260613035952502: {'order_id': 'TM08202203260613035952502', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Door is open...", "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781303484513-0)
[2026-06-13 04:01:25,600.600 INFO    ] 2026-06-13 04:01:25
[2026-06-13 04:01:25,603.603 INFO    ] publish_status: order_id=TM08202203260613035952502
[2026-06-13 04:01:25,605.605 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035952502
[2026-06-13 04:01:25,675.675 INFO    ] [publish_status] Message added to stream with ID: 1781303485627-0
[2026-06-13 04:01:25,677.677 INFO    ] Published to order:TM08202203260613035952502: {'order_id': 'TM08202203260613035952502', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "status": "True"}', 'timestamp': '2026-06-12T22:31:25.601632Z', 'server_status': 'processOrder'} (ID: 1781303485627-0)
[2026-06-13 04:01:25,785.785 INFO    ] {'order_id': 'TM08202203260613035952502', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-13 04:01:25,786.786 INFO    ] 200
[2026-06-13 04:01:25,787.787 INFO    ] {"data":{"order_id":"TM08202203260613035952502","server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:01:25,789.789 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613035952502', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'true'}, 'server_status': 'processOrder'}}
[2026-06-13 04:01:25,791.791 INFO    ] 2026-06-13 04:01:25
[2026-06-13 04:01:25,792.792 INFO    ] None
[2026-06-13 04:01:25,793.793 INFO    ] Opening Door now
[2026-06-13 04:01:25,795.795 INFO    ] Opening Door now
[2026-06-13 04:01:25,796.796 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 04:01:25,798.798 INFO    ] 2026-06-13 04:01:25
[2026-06-13 04:01:25,800.800 INFO    ] playing audio file
[2026-06-13 04:01:25,810.810 INFO    ] 2026-06-13 04:01:25
[2026-06-13 04:01:25,812.812 INFO    ] 2026-06-13 04:01:25
[2026-06-13 04:01:28,901.901 INFO    ] 200
[2026-06-13 04:01:28,903.903 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:01:28,907.907 INFO    ] {'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 04:01:31,951.951 INFO    ] 200
[2026-06-13 04:01:31,953.953 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:01:31,955.955 INFO    ] {'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 04:01:35,003.003 INFO    ] 200
[2026-06-13 04:01:35,004.004 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:01:35,006.006 INFO    ] Please close door 2
[2026-06-13 04:01:35,007.007 INFO    ] Please close door 2
[2026-06-13 04:01:35,020.020 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 04:01:35,022.022 INFO    ] 2026-06-13 04:01:35
[2026-06-13 04:01:35,023.023 INFO    ] playing audio file
[2026-06-13 04:01:35,035.035 INFO    ] 2026-06-13 04:01:35
[2026-06-13 04:01:35,037.037 INFO    ] publish_status: order_id=TM08202203260613035952502
[2026-06-13 04:01:35,039.039 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035952502
[2026-06-13 04:01:35,107.107 INFO    ] [publish_status] Message added to stream with ID: 1781303495060-0
[2026-06-13 04:01:35,109.109 INFO    ] Published to order:TM08202203260613035952502: {'order_id': 'TM08202203260613035952502', 'server_response': '{"error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "voiceNote": "Please close door 2", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "status": "False", "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-12T22:31:35.036943Z', 'server_status': 'OrderStatus'} (ID: 1781303495060-0)
[2026-06-13 04:01:35,452.452 INFO    ] {'order_id': 'TM08202203260613035952502', 'server_response': {'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}
[2026-06-13 04:01:35,453.453 INFO    ] 200
[2026-06-13 04:01:35,454.454 INFO    ] {"data":{"order_id":"TM08202203260613035952502","server_response":{"error":{"umessage":"In Progress","tmessage":"In Progress","code":20001,"data":[]},"voiceNote":"Please close door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}]},"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"status":"false","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:01:35,456.456 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613035952502', 'server_response': {'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}}
[2026-06-13 04:01:35,457.457 INFO    ] {'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 04:01:38,495.495 INFO    ] 200
[2026-06-13 04:01:38,496.496 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:01:38,499.499 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'status': 'True'}
[2026-06-13 04:01:38,500.500 INFO    ] 2026-06-13 04:01:38
[2026-06-13 04:01:38,502.502 INFO    ] Order Completed 
[2026-06-13 04:01:38,503.503 INFO    ] Order Completed 
[2026-06-13 04:01:38,505.505 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 04:01:38,506.506 INFO    ] 2026-06-13 04:01:38
[2026-06-13 04:01:38,508.508 INFO    ] playing audio file
[2026-06-13 04:01:38,522.522 INFO    ] 2026-06-13 04:01:38
[2026-06-13 04:01:38,524.524 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'status': 'True'}
[2026-06-13 04:01:38,526.526 INFO    ] 2026-06-13 04:01:38
[2026-06-13 04:01:39,230.230 INFO    ] 200
[2026-06-13 04:01:39,233.233 INFO    ] {"res": "True", "orderId": "TM08202203260613035952502", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 04:01:39,237.237 INFO    ] {'skus': [{'tray_id': '43', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613035952502', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0}
[2026-06-13 04:01:39,240.240 INFO    ] {'skus': [{'tray_id': '43', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613035952502', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0}
[2026-06-13 04:01:39,242.242 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,245.245 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,248.248 INFO    ] 20
[2026-06-13 04:01:39,251.251 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,254.254 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,256.256 INFO    ]  Your Bill Amount is 20
[2026-06-13 04:01:39,261.261 INFO    ]  Your Bill Amount is 20
[2026-06-13 04:01:39,264.264 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 04:01:39,267.267 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,271.271 INFO    ] playing audio file
[2026-06-13 04:01:39,291.291 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,294.294 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:39,298.298 INFO    ] publish_status: order_id=TM08202203260613035952502
[2026-06-13 04:01:39,301.301 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613035952502
[2026-06-13 04:01:39,378.378 INFO    ] [publish_status] Message added to stream with ID: 1781303499330-0
[2026-06-13 04:01:39,381.381 INFO    ] Published to order:TM08202203260613035952502: {'order_id': 'TM08202203260613035952502', 'server_response': '{"skus": [{"tray_id": "43", "sku_total": 20.0, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "mrp": "20", "unit_price": "20", "skuid": "185993", "door_id": "", "qty": 1}], "rstatus": true, "orderId": "TM08202203260613035952502", "logic": "WBL", "res": "True", "total_amount": 20.0, "anomaly": 0}', 'timestamp': '2026-06-12T22:31:39.296178Z', 'server_status': 'invoiceOrder'} (ID: 1781303499330-0)
[2026-06-13 04:01:39,489.489 INFO    ] {'order_id': 'TM08202203260613035952502', 'server_response': {'skus': [{'tray_id': '43', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613035952502', 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0, 'anomaly': 0}, 'server_status': 'invoiceOrder'}
[2026-06-13 04:01:39,492.492 INFO    ] 200
[2026-06-13 04:01:39,495.495 INFO    ] {"data":{"order_id":"TM08202203260613035952502","server_response":{"skus":[{"tray_id":"43","sku_total":20,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","mrp":"20","unit_price":"20","skuid":"185993","door_id":"","qty":1}],"rstatus":true,"orderId":"TM08202203260613035952502","logic":"WBL","res":"true","total_amount":20,"anomaly":0},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:01:39,498.498 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613035952502', 'server_response': {'skus': [{'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'sku_total': 20, 'skuid': '185993', 'mrp': '20', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613035952502', 'logic': 'WBL', 'res': 'true', 'total_amount': 20, 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-06-13 04:01:39,501.501 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613035952502', 'server_response': {'skus': [{'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'sku_total': 20, 'skuid': '185993', 'mrp': '20', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613035952502', 'logic': 'WBL', 'res': 'true', 'total_amount': 20, 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-06-13 04:01:39,503.503 INFO    ] 2026-06-13 04:01:39
[2026-06-13 04:01:41,477.477 INFO    ] 200
[2026-06-13 04:01:41,480.480 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502", "TM08202203260613035952502"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 04:01:41,483.483 INFO    ] 2026-06-13 04:01:41
[2026-06-13 04:01:41,600.600 INFO    ] 200
[2026-06-13 04:01:41,603.603 INFO    ] True
[2026-06-13 04:01:41,606.606 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613035952502
[2026-06-13 04:01:41,610.610 INFO    ] start order file deleted
[2026-06-13 04:01:41,613.613 INFO    ] Checking for system updates...
[2026-06-13 04:01:41,650.650 INFO    ] 200
[2026-06-13 04:01:41,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:41,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:01:41,721.721 INFO    ] No update needed
[2026-06-13 04:01:41,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 04:01:41,765.765 INFO    ] 200
[2026-06-13 04:01:41,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:41,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:01:41,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:01:41,865.865 INFO    ] No camera update needed
[2026-06-13 04:01:41,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:01:41,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:01:41,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:01:41,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:01:43,923.923 INFO    ] ================================================
[2026-06-13 04:01:43,939.939 INFO    ] Launching Daemon at Sat Jun 13 04:01:43 IST 2026
[2026-06-13 04:01:43,950.950 INFO    ] ================================================
[2026-06-13 04:01:44,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:01:44
[2026-06-13 04:01:45,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:01:45,396.396 INFO    ] Initializing speech engine...
[2026-06-13 04:01:45,403.403 INFO    ] 2026-06-13 04:01:45
[2026-06-13 04:01:45,661.661 INFO    ] 2026-06-13 04:01:45
[2026-06-13 04:01:45,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:01:45,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:01:45,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:01:46,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:01:46,093.093 INFO    ] time= 13/06/2026 04:01:46
[2026-06-13 04:01:46,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:01:46,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:01:46,194.194 INFO    ] No existing commands found in stream
[2026-06-13 04:01:51,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:01:51,211.211 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 04:01:55,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:01:55,521.521 INFO    ] Checking for system updates...
[2026-06-13 04:01:55,543.543 INFO    ] 200
[2026-06-13 04:01:55,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:55,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:01:55,576.576 INFO    ] No update needed
[2026-06-13 04:01:55,577.577 INFO    ] Checking for camera pi updates...
[2026-06-13 04:01:55,597.597 INFO    ] 200
[2026-06-13 04:01:55,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:01:55,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:01:55,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:01:55,651.651 INFO    ] No camera update needed
[2026-06-13 04:01:55,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:01:55,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:01:55,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:01:55,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:01:57,690.690 INFO    ] ================================================
[2026-06-13 04:01:57,698.698 INFO    ] Launching Daemon at Sat Jun 13 04:01:57 IST 2026
[2026-06-13 04:01:57,704.704 INFO    ] ================================================
[2026-06-13 04:01:58,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:01:58
[2026-06-13 04:01:58,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:01:58,511.511 INFO    ] Initializing speech engine...
[2026-06-13 04:01:58,515.515 INFO    ] 2026-06-13 04:01:58
[2026-06-13 04:01:58,707.707 INFO    ] 2026-06-13 04:01:58
[2026-06-13 04:01:58,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:01:58,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:01:58,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:01:59,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:01:59,041.041 INFO    ] time= 13/06/2026 04:01:59
[2026-06-13 04:01:59,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:01:59,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:01:59,146.146 INFO    ] No existing commands found in stream
[2026-06-13 04:02:04,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:02:04,179.179 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 04:02:06,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:02:06,416.416 INFO    ] Checking for system updates...
[2026-06-13 04:02:06,445.445 INFO    ] 200
[2026-06-13 04:02:06,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:06,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:06,482.482 INFO    ] No update needed
[2026-06-13 04:02:06,483.483 INFO    ] Checking for camera pi updates...
[2026-06-13 04:02:06,503.503 INFO    ] 200
[2026-06-13 04:02:06,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:06,528.528 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:02:06,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:06,566.566 INFO    ] No camera update needed
[2026-06-13 04:02:06,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:02:06,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:02:06,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:02:06,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:02:08,605.605 INFO    ] ================================================
[2026-06-13 04:02:08,613.613 INFO    ] Launching Daemon at Sat Jun 13 04:02:08 IST 2026
[2026-06-13 04:02:08,620.620 INFO    ] ================================================
[2026-06-13 04:02:08,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:02:08
[2026-06-13 04:02:09,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:02:09,369.369 INFO    ] Initializing speech engine...
[2026-06-13 04:02:09,373.373 INFO    ] 2026-06-13 04:02:09
[2026-06-13 04:02:09,599.599 INFO    ] 2026-06-13 04:02:09
[2026-06-13 04:02:09,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:02:09,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:02:09,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:02:09,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:02:10,001.001 INFO    ] time= 13/06/2026 04:02:09
[2026-06-13 04:02:10,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:02:10,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:02:10,146.146 INFO    ] No existing commands found in stream
[2026-06-13 04:02:15,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:02:15,160.160 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 04:02:16,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:02:16,412.412 INFO    ] Checking for system updates...
[2026-06-13 04:02:16,433.433 INFO    ] 200
[2026-06-13 04:02:16,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:16,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:16,468.468 INFO    ] No update needed
[2026-06-13 04:02:16,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 04:02:16,490.490 INFO    ] 200
[2026-06-13 04:02:16,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:16,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:02:16,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:16,553.553 INFO    ] No camera update needed
[2026-06-13 04:02:16,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:02:16,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:02:16,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:02:16,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:02:18,602.602 INFO    ] ================================================
[2026-06-13 04:02:18,618.618 INFO    ] Launching Daemon at Sat Jun 13 04:02:18 IST 2026
[2026-06-13 04:02:18,629.629 INFO    ] ================================================
[2026-06-13 04:02:19,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:02:18
[2026-06-13 04:02:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:02:19,454.454 INFO    ] Initializing speech engine...
[2026-06-13 04:02:19,459.459 INFO    ] 2026-06-13 04:02:19
[2026-06-13 04:02:19,690.690 INFO    ] 2026-06-13 04:02:19
[2026-06-13 04:02:19,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:02:19,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:02:19,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:02:20,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:02:20,090.090 INFO    ] time= 13/06/2026 04:02:20
[2026-06-13 04:02:20,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:02:20,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:02:20,204.204 INFO    ] No existing commands found in stream
[2026-06-13 04:02:25,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:02:25,218.218 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 04:02:28,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:02:28,007.007 INFO    ] Checking for system updates...
[2026-06-13 04:02:28,031.031 INFO    ] 200
[2026-06-13 04:02:28,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:28,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:28,069.069 INFO    ] No update needed
[2026-06-13 04:02:28,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 04:02:28,091.091 INFO    ] 200
[2026-06-13 04:02:28,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:28,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:02:28,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:02:28,154.154 INFO    ] No camera update needed
[2026-06-13 04:02:28,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:02:28,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:02:28,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:02:28,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:02:30,204.204 INFO    ] ================================================
[2026-06-13 04:02:30,223.223 INFO    ] Launching Daemon at Sat Jun 13 04:02:30 IST 2026
[2026-06-13 04:02:30,235.235 INFO    ] ================================================
[2026-06-13 04:02:30,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:02:30
[2026-06-13 04:02:30,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:02:31,119.119 INFO    ] Initializing speech engine...
[2026-06-13 04:02:31,125.125 INFO    ] 2026-06-13 04:02:31
[2026-06-13 04:02:31,341.341 INFO    ] 2026-06-13 04:02:31
[2026-06-13 04:02:31,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:02:31,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:02:31,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:02:31,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:02:31,750.750 INFO    ] time= 13/06/2026 04:02:31
[2026-06-13 04:02:31,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:02:31,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:02:31,869.869 INFO    ] No existing commands found in stream
[2026-06-13 04:02:36,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:02:36,882.882 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 04:02:40,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:02:40,946.946 INFO    ] Checking for system updates...
[2026-06-13 04:02:40,967.967 INFO    ] 200
[2026-06-13 04:02:40,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:41,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:41,002.002 INFO    ] No update needed
[2026-06-13 04:02:41,003.003 INFO    ] Checking for camera pi updates...
[2026-06-13 04:02:41,024.024 INFO    ] 200
[2026-06-13 04:02:41,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:41,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:02:41,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:02:41,093.093 INFO    ] No camera update needed
[2026-06-13 04:02:41,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:02:41,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:02:41,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:02:41,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:02:43,134.134 INFO    ] ================================================
[2026-06-13 04:02:43,150.150 INFO    ] Launching Daemon at Sat Jun 13 04:02:43 IST 2026
[2026-06-13 04:02:43,161.161 INFO    ] ================================================
[2026-06-13 04:02:43,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:02:43
[2026-06-13 04:02:43,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:02:43,999.999 INFO    ] Initializing speech engine...
[2026-06-13 04:02:44,004.004 INFO    ] 2026-06-13 04:02:44
[2026-06-13 04:02:44,215.215 INFO    ] 2026-06-13 04:02:44
[2026-06-13 04:02:44,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:02:44,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:02:44,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:02:44,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:02:44,628.628 INFO    ] time= 13/06/2026 04:02:44
[2026-06-13 04:02:44,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:02:44,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:02:44,739.739 INFO    ] No existing commands found in stream
[2026-06-13 04:02:49,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:02:49,753.753 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 04:02:52,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:02:52,611.611 INFO    ] Checking for system updates...
[2026-06-13 04:02:52,635.635 INFO    ] 200
[2026-06-13 04:02:52,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:52,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:02:52,677.677 INFO    ] No update needed
[2026-06-13 04:02:52,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 04:02:52,703.703 INFO    ] 200
[2026-06-13 04:02:52,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:02:52,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:02:52,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:02:52,776.776 INFO    ] No camera update needed
[2026-06-13 04:02:52,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:02:52,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:02:52,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:02:52,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:02:54,826.826 INFO    ] ================================================
[2026-06-13 04:02:54,841.841 INFO    ] Launching Daemon at Sat Jun 13 04:02:54 IST 2026
[2026-06-13 04:02:54,852.852 INFO    ] ================================================
[2026-06-13 04:02:55,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:02:55
[2026-06-13 04:02:55,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:02:55,684.684 INFO    ] Initializing speech engine...
[2026-06-13 04:02:55,689.689 INFO    ] 2026-06-13 04:02:55
[2026-06-13 04:02:55,893.893 INFO    ] 2026-06-13 04:02:55
[2026-06-13 04:02:55,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:02:56,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:02:56,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:02:56,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:02:56,301.301 INFO    ] time= 13/06/2026 04:02:56
[2026-06-13 04:02:56,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:02:56,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:02:56,463.463 INFO    ] No existing commands found in stream
[2026-06-13 04:03:01,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:01,494.494 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 04:03:02,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:03:02,543.543 INFO    ] Checking for system updates...
[2026-06-13 04:03:02,592.592 INFO    ] 200
[2026-06-13 04:03:02,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:02,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:02,669.669 INFO    ] No update needed
[2026-06-13 04:03:02,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:02,713.713 INFO    ] 200
[2026-06-13 04:03:02,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:02,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:02,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:02,809.809 INFO    ] No camera update needed
[2026-06-13 04:03:02,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:02,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:02,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:02,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:04,869.869 INFO    ] ================================================
[2026-06-13 04:03:04,878.878 INFO    ] Launching Daemon at Sat Jun 13 04:03:04 IST 2026
[2026-06-13 04:03:04,885.885 INFO    ] ================================================
[2026-06-13 04:03:05,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:05
[2026-06-13 04:03:05,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:05,644.644 INFO    ] Initializing speech engine...
[2026-06-13 04:03:05,652.652 INFO    ] 2026-06-13 04:03:05
[2026-06-13 04:03:05,867.867 INFO    ] 2026-06-13 04:03:05
[2026-06-13 04:03:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:06,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:06,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:06,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:06,260.260 INFO    ] time= 13/06/2026 04:03:06
[2026-06-13 04:03:06,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:06,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:06,429.429 INFO    ] No existing commands found in stream
[2026-06-13 04:03:11,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:11,443.443 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 04:03:14,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:03:14,637.637 INFO    ] Checking for system updates...
[2026-06-13 04:03:14,658.658 INFO    ] 200
[2026-06-13 04:03:14,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:14,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:14,693.693 INFO    ] No update needed
[2026-06-13 04:03:14,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:14,714.714 INFO    ] 200
[2026-06-13 04:03:14,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:14,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:14,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:14,778.778 INFO    ] No camera update needed
[2026-06-13 04:03:14,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:14,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:14,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:14,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:16,819.819 INFO    ] ================================================
[2026-06-13 04:03:16,834.834 INFO    ] Launching Daemon at Sat Jun 13 04:03:16 IST 2026
[2026-06-13 04:03:16,845.845 INFO    ] ================================================
[2026-06-13 04:03:17,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:17
[2026-06-13 04:03:17,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:17,633.633 INFO    ] Initializing speech engine...
[2026-06-13 04:03:17,637.637 INFO    ] 2026-06-13 04:03:17
[2026-06-13 04:03:17,864.864 INFO    ] 2026-06-13 04:03:17
[2026-06-13 04:03:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:18,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:18,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:18,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:18,289.289 INFO    ] time= 13/06/2026 04:03:18
[2026-06-13 04:03:18,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:18,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:18,415.415 INFO    ] No existing commands found in stream
[2026-06-13 04:03:23,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:23,429.429 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 04:03:23,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:03:23,801.801 INFO    ] Checking for system updates...
[2026-06-13 04:03:23,823.823 INFO    ] 200
[2026-06-13 04:03:23,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:23,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:23,856.856 INFO    ] No update needed
[2026-06-13 04:03:23,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:23,877.877 INFO    ] 200
[2026-06-13 04:03:23,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:23,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:23,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:23,939.939 INFO    ] No camera update needed
[2026-06-13 04:03:23,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:23,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:23,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:23,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:25,987.987 INFO    ] ================================================
[2026-06-13 04:03:26,003.003 INFO    ] Launching Daemon at Sat Jun 13 04:03:25 IST 2026
[2026-06-13 04:03:26,015.015 INFO    ] ================================================
[2026-06-13 04:03:26,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:26
[2026-06-13 04:03:26,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:26,809.809 INFO    ] Initializing speech engine...
[2026-06-13 04:03:26,818.818 INFO    ] 2026-06-13 04:03:26
[2026-06-13 04:03:27,045.045 INFO    ] 2026-06-13 04:03:27
[2026-06-13 04:03:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:27,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:27,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:27,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:27,405.405 INFO    ] time= 13/06/2026 04:03:27
[2026-06-13 04:03:27,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:27,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:27,590.590 INFO    ] No existing commands found in stream
[2026-06-13 04:03:32,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:32,603.603 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 04:03:36,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:03:36,108.108 INFO    ] Checking for system updates...
[2026-06-13 04:03:36,129.129 INFO    ] 200
[2026-06-13 04:03:36,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:36,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:36,162.162 INFO    ] No update needed
[2026-06-13 04:03:36,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:36,184.184 INFO    ] 200
[2026-06-13 04:03:36,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:36,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:36,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:03:36,253.253 INFO    ] No camera update needed
[2026-06-13 04:03:36,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:36,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:36,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:36,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:38,293.293 INFO    ] ================================================
[2026-06-13 04:03:38,302.302 INFO    ] Launching Daemon at Sat Jun 13 04:03:38 IST 2026
[2026-06-13 04:03:38,308.308 INFO    ] ================================================
[2026-06-13 04:03:38,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:38
[2026-06-13 04:03:38,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:39,124.124 INFO    ] Initializing speech engine...
[2026-06-13 04:03:39,134.134 INFO    ] 2026-06-13 04:03:39
[2026-06-13 04:03:39,338.338 INFO    ] 2026-06-13 04:03:39
[2026-06-13 04:03:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:39,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:39,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:39,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:39,742.742 INFO    ] time= 13/06/2026 04:03:39
[2026-06-13 04:03:39,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:39,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:39,851.851 INFO    ] No existing commands found in stream
[2026-06-13 04:03:44,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:44,868.868 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 04:03:46,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:03:46,040.040 INFO    ] Checking for system updates...
[2026-06-13 04:03:46,062.062 INFO    ] 200
[2026-06-13 04:03:46,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:46,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:03:46,095.095 INFO    ] No update needed
[2026-06-13 04:03:46,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:46,116.116 INFO    ] 200
[2026-06-13 04:03:46,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:46,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:46,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:03:46,280.280 INFO    ] No camera update needed
[2026-06-13 04:03:46,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:46,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:46,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:46,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:48,326.326 INFO    ] ================================================
[2026-06-13 04:03:48,341.341 INFO    ] Launching Daemon at Sat Jun 13 04:03:48 IST 2026
[2026-06-13 04:03:48,352.352 INFO    ] ================================================
[2026-06-13 04:03:48,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:48
[2026-06-13 04:03:49,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:49,168.168 INFO    ] Initializing speech engine...
[2026-06-13 04:03:49,173.173 INFO    ] 2026-06-13 04:03:49
[2026-06-13 04:03:49,376.376 INFO    ] 2026-06-13 04:03:49
[2026-06-13 04:03:49,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:49,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:49,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:49,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:49,654.654 INFO    ] time= 13/06/2026 04:03:49
[2026-06-13 04:03:49,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:49,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:49,753.753 INFO    ] No existing commands found in stream
[2026-06-13 04:03:54,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:03:54,788.788 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 04:03:56,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:03:56,073.073 INFO    ] Checking for system updates...
[2026-06-13 04:03:56,094.094 INFO    ] 200
[2026-06-13 04:03:56,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:56,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:03:56,130.130 INFO    ] No update needed
[2026-06-13 04:03:56,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 04:03:56,151.151 INFO    ] 200
[2026-06-13 04:03:56,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:03:56,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:03:56,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:03:56,217.217 INFO    ] No camera update needed
[2026-06-13 04:03:56,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:03:56,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:03:56,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:03:56,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:03:58,266.266 INFO    ] ================================================
[2026-06-13 04:03:58,282.282 INFO    ] Launching Daemon at Sat Jun 13 04:03:58 IST 2026
[2026-06-13 04:03:58,292.292 INFO    ] ================================================
[2026-06-13 04:03:58,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:03:58
[2026-06-13 04:03:58,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:03:59,127.127 INFO    ] Initializing speech engine...
[2026-06-13 04:03:59,133.133 INFO    ] 2026-06-13 04:03:59
[2026-06-13 04:03:59,336.336 INFO    ] 2026-06-13 04:03:59
[2026-06-13 04:03:59,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:03:59,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:03:59,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:03:59,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:03:59,738.738 INFO    ] time= 13/06/2026 04:03:59
[2026-06-13 04:03:59,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:03:59,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:03:59,860.860 INFO    ] No existing commands found in stream
[2026-06-13 04:04:04,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:04:04,873.873 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 04:04:08,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:04:08,926.926 INFO    ] Checking for system updates...
[2026-06-13 04:04:08,949.949 INFO    ] 200
[2026-06-13 04:04:08,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:08,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:04:08,986.986 INFO    ] No update needed
[2026-06-13 04:04:08,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 04:04:09,009.009 INFO    ] 200
[2026-06-13 04:04:09,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:09,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:04:09,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:04:09,076.076 INFO    ] No camera update needed
[2026-06-13 04:04:09,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:04:09,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:04:09,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:04:09,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:04:11,117.117 INFO    ] ================================================
[2026-06-13 04:04:11,125.125 INFO    ] Launching Daemon at Sat Jun 13 04:04:11 IST 2026
[2026-06-13 04:04:11,131.131 INFO    ] ================================================
[2026-06-13 04:04:11,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:04:11
[2026-06-13 04:04:11,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:04:11,958.958 INFO    ] Initializing speech engine...
[2026-06-13 04:04:11,969.969 INFO    ] 2026-06-13 04:04:11
[2026-06-13 04:04:12,185.185 INFO    ] 2026-06-13 04:04:12
[2026-06-13 04:04:12,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:04:12,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:04:12,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:04:12,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:04:12,609.609 INFO    ] time= 13/06/2026 04:04:12
[2026-06-13 04:04:12,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:04:12,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:04:12,743.743 INFO    ] No existing commands found in stream
[2026-06-13 04:04:17,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:04:17,755.755 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 04:04:21,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:04:21,153.153 INFO    ] Checking for system updates...
[2026-06-13 04:04:21,174.174 INFO    ] 200
[2026-06-13 04:04:21,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:21,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:04:21,210.210 INFO    ] No update needed
[2026-06-13 04:04:21,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 04:04:21,232.232 INFO    ] 200
[2026-06-13 04:04:21,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:21,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:04:21,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:04:21,301.301 INFO    ] No camera update needed
[2026-06-13 04:04:21,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:04:21,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:04:21,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:04:21,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:04:23,341.341 INFO    ] ================================================
[2026-06-13 04:04:23,356.356 INFO    ] Launching Daemon at Sat Jun 13 04:04:23 IST 2026
[2026-06-13 04:04:23,367.367 INFO    ] ================================================
[2026-06-13 04:04:23,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:04:23
[2026-06-13 04:04:24,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:04:24,219.219 INFO    ] Initializing speech engine...
[2026-06-13 04:04:24,222.222 INFO    ] 2026-06-13 04:04:24
[2026-06-13 04:04:24,429.429 INFO    ] 2026-06-13 04:04:24
[2026-06-13 04:04:24,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:04:24,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:04:24,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:04:24,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:04:24,836.836 INFO    ] time= 13/06/2026 04:04:24
[2026-06-13 04:04:24,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:04:24,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:04:24,946.946 INFO    ] No existing commands found in stream
[2026-06-13 04:04:29,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:04:29,961.961 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 04:04:34,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:04:34,053.053 INFO    ] Checking for system updates...
[2026-06-13 04:04:34,090.090 INFO    ] 200
[2026-06-13 04:04:34,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:34,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:04:34,149.149 INFO    ] No update needed
[2026-06-13 04:04:34,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 04:04:34,186.186 INFO    ] 200
[2026-06-13 04:04:34,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:34,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:04:34,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:04:34,276.276 INFO    ] No camera update needed
[2026-06-13 04:04:34,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:04:34,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:04:34,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:04:34,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:04:36,335.335 INFO    ] ================================================
[2026-06-13 04:04:36,351.351 INFO    ] Launching Daemon at Sat Jun 13 04:04:36 IST 2026
[2026-06-13 04:04:36,362.362 INFO    ] ================================================
[2026-06-13 04:04:36,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:04:36
[2026-06-13 04:04:37,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:04:37,382.382 INFO    ] Initializing speech engine...
[2026-06-13 04:04:37,395.395 INFO    ] 2026-06-13 04:04:37
[2026-06-13 04:04:37,683.683 INFO    ] 2026-06-13 04:04:37
[2026-06-13 04:04:37,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:04:37,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:04:37,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:04:38,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:04:38,134.134 INFO    ] time= 13/06/2026 04:04:38
[2026-06-13 04:04:38,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:04:38,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:04:38,273.273 INFO    ] No existing commands found in stream
[2026-06-13 04:04:43,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:04:43,289.289 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 04:04:46,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:04:46,492.492 INFO    ] Checking for system updates...
[2026-06-13 04:04:46,513.513 INFO    ] 200
[2026-06-13 04:04:46,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:46,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:04:46,549.549 INFO    ] No update needed
[2026-06-13 04:04:46,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 04:04:46,570.570 INFO    ] 200
[2026-06-13 04:04:46,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:46,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:04:46,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:04:46,638.638 INFO    ] No camera update needed
[2026-06-13 04:04:46,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:04:46,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:04:46,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:04:46,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:04:48,687.687 INFO    ] ================================================
[2026-06-13 04:04:48,702.702 INFO    ] Launching Daemon at Sat Jun 13 04:04:48 IST 2026
[2026-06-13 04:04:48,714.714 INFO    ] ================================================
[2026-06-13 04:04:49,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:04:49
[2026-06-13 04:04:49,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:04:49,491.491 INFO    ] Initializing speech engine...
[2026-06-13 04:04:49,504.504 INFO    ] 2026-06-13 04:04:49
[2026-06-13 04:04:49,719.719 INFO    ] 2026-06-13 04:04:49
[2026-06-13 04:04:49,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:04:49,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:04:49,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:04:49,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:04:49,957.957 INFO    ] time= 13/06/2026 04:04:49
[2026-06-13 04:04:49,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:04:49,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:04:50,049.049 INFO    ] No existing commands found in stream
[2026-06-13 04:04:55,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:04:55,081.081 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 04:04:58,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:04:58,422.422 INFO    ] Checking for system updates...
[2026-06-13 04:04:58,443.443 INFO    ] 200
[2026-06-13 04:04:58,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:58,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:04:58,478.478 INFO    ] No update needed
[2026-06-13 04:04:58,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 04:04:58,500.500 INFO    ] 200
[2026-06-13 04:04:58,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:04:58,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:04:58,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:04:58,566.566 INFO    ] No camera update needed
[2026-06-13 04:04:58,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:04:58,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:04:58,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:04:58,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:00,612.612 INFO    ] ================================================
[2026-06-13 04:05:00,627.627 INFO    ] Launching Daemon at Sat Jun 13 04:05:00 IST 2026
[2026-06-13 04:05:00,638.638 INFO    ] ================================================
[2026-06-13 04:05:00,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:00
[2026-06-13 04:05:01,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:01,454.454 INFO    ] Initializing speech engine...
[2026-06-13 04:05:01,464.464 INFO    ] 2026-06-13 04:05:01
[2026-06-13 04:05:01,663.663 INFO    ] 2026-06-13 04:05:01
[2026-06-13 04:05:01,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:05:01,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:05:01,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:05:02,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:05:02,048.048 INFO    ] time= 13/06/2026 04:05:02
[2026-06-13 04:05:02,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:05:02,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:05:02,100.100 INFO    ] No existing commands found in stream
[2026-06-13 04:05:07,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:05:07,135.135 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 04:05:10,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:05:10,208.208 INFO    ] Checking for system updates...
[2026-06-13 04:05:10,229.229 INFO    ] 200
[2026-06-13 04:05:10,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:10,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:05:10,263.263 INFO    ] No update needed
[2026-06-13 04:05:10,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 04:05:10,284.284 INFO    ] 200
[2026-06-13 04:05:10,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:10,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:05:10,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:05:10,357.357 INFO    ] No camera update needed
[2026-06-13 04:05:10,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:05:10,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:05:10,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:05:10,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:12,406.406 INFO    ] ================================================
[2026-06-13 04:05:12,421.421 INFO    ] Launching Daemon at Sat Jun 13 04:05:12 IST 2026
[2026-06-13 04:05:12,432.432 INFO    ] ================================================
[2026-06-13 04:05:12,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:12
[2026-06-13 04:05:13,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:13,238.238 INFO    ] Initializing speech engine...
[2026-06-13 04:05:13,243.243 INFO    ] 2026-06-13 04:05:13
[2026-06-13 04:05:13,446.446 INFO    ] 2026-06-13 04:05:13
[2026-06-13 04:05:13,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:05:13,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:05:13,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:05:13,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:05:13,861.861 INFO    ] time= 13/06/2026 04:05:13
[2026-06-13 04:05:13,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:05:13,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:05:13,960.960 INFO    ] No existing commands found in stream
[2026-06-13 04:05:18,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:05:18,977.977 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 04:05:22,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:05:22,097.097 INFO    ] Checking for system updates...
[2026-06-13 04:05:22,118.118 INFO    ] 200
[2026-06-13 04:05:22,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:22,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:05:22,152.152 INFO    ] No update needed
[2026-06-13 04:05:22,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 04:05:22,172.172 INFO    ] 200
[2026-06-13 04:05:22,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:22,199.199 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:05:22,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:05:22,238.238 INFO    ] No camera update needed
[2026-06-13 04:05:22,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:05:22,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:05:22,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:05:22,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:24,285.285 INFO    ] ================================================
[2026-06-13 04:05:24,300.300 INFO    ] Launching Daemon at Sat Jun 13 04:05:24 IST 2026
[2026-06-13 04:05:24,311.311 INFO    ] ================================================
[2026-06-13 04:05:24,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:24
[2026-06-13 04:05:24,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:25,119.119 INFO    ] Initializing speech engine...
[2026-06-13 04:05:25,124.124 INFO    ] 2026-06-13 04:05:25
[2026-06-13 04:05:25,327.327 INFO    ] 2026-06-13 04:05:25
[2026-06-13 04:05:25,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:05:25,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:05:25,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:05:25,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:05:25,730.730 INFO    ] time= 13/06/2026 04:05:25
[2026-06-13 04:05:25,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:05:25,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:05:25,839.839 INFO    ] No existing commands found in stream
[2026-06-13 04:05:30,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:05:30,852.852 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 04:05:33,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:05:33,325.325 INFO    ] Checking for system updates...
[2026-06-13 04:05:33,346.346 INFO    ] 200
[2026-06-13 04:05:33,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:33,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:05:33,382.382 INFO    ] No update needed
[2026-06-13 04:05:33,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 04:05:33,403.403 INFO    ] 200
[2026-06-13 04:05:33,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:33,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:05:33,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:05:33,467.467 INFO    ] No camera update needed
[2026-06-13 04:05:33,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:05:33,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:05:33,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:05:33,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:35,516.516 INFO    ] ================================================
[2026-06-13 04:05:35,531.531 INFO    ] Launching Daemon at Sat Jun 13 04:05:35 IST 2026
[2026-06-13 04:05:35,541.541 INFO    ] ================================================
[2026-06-13 04:05:35,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:35
[2026-06-13 04:05:36,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:36,356.356 INFO    ] Initializing speech engine...
[2026-06-13 04:05:36,361.361 INFO    ] 2026-06-13 04:05:36
[2026-06-13 04:05:36,563.563 INFO    ] 2026-06-13 04:05:36
[2026-06-13 04:05:36,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:05:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:05:36,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:05:36,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:05:36,910.910 INFO    ] time= 13/06/2026 04:05:36
[2026-06-13 04:05:36,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:05:36,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:05:37,078.078 INFO    ] No existing commands found in stream
[2026-06-13 04:05:42,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:05:42,091.091 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 04:05:45,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:05:45,940.940 INFO    ] Checking for system updates...
[2026-06-13 04:05:45,961.961 INFO    ] 200
[2026-06-13 04:05:45,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:45,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:05:45,993.993 INFO    ] No update needed
[2026-06-13 04:05:45,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 04:05:46,014.014 INFO    ] 200
[2026-06-13 04:05:46,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:46,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:05:46,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:05:46,074.074 INFO    ] No camera update needed
[2026-06-13 04:05:46,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:05:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:05:46,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:05:46,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:48,121.121 INFO    ] ================================================
[2026-06-13 04:05:48,137.137 INFO    ] Launching Daemon at Sat Jun 13 04:05:48 IST 2026
[2026-06-13 04:05:48,147.147 INFO    ] ================================================
[2026-06-13 04:05:48,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:48
[2026-06-13 04:05:48,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:49,008.008 INFO    ] Initializing speech engine...
[2026-06-13 04:05:49,013.013 INFO    ] 2026-06-13 04:05:49
[2026-06-13 04:05:49,218.218 INFO    ] 2026-06-13 04:05:49
[2026-06-13 04:05:49,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:05:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:05:49,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:05:49,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:05:49,615.615 INFO    ] time= 13/06/2026 04:05:49
[2026-06-13 04:05:49,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:05:49,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:05:49,734.734 INFO    ] No existing commands found in stream
[2026-06-13 04:05:54,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:05:54,748.748 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 04:05:56,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:05:56,583.583 INFO    ] Checking for system updates...
[2026-06-13 04:05:56,605.605 INFO    ] 200
[2026-06-13 04:05:56,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:56,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:05:56,644.644 INFO    ] No update needed
[2026-06-13 04:05:56,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 04:05:56,667.667 INFO    ] 200
[2026-06-13 04:05:56,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:05:56,693.693 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:05:56,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:05:56,831.831 INFO    ] No camera update needed
[2026-06-13 04:05:56,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:05:56,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:05:56,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:05:56,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:05:58,881.881 INFO    ] ================================================
[2026-06-13 04:05:58,896.896 INFO    ] Launching Daemon at Sat Jun 13 04:05:58 IST 2026
[2026-06-13 04:05:58,907.907 INFO    ] ================================================
[2026-06-13 04:05:59,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:05:59
[2026-06-13 04:05:59,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:05:59,715.715 INFO    ] Initializing speech engine...
[2026-06-13 04:05:59,720.720 INFO    ] 2026-06-13 04:05:59
[2026-06-13 04:05:59,925.925 INFO    ] 2026-06-13 04:05:59
[2026-06-13 04:05:59,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:00,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:00,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:00,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:00,340.340 INFO    ] time= 13/06/2026 04:06:00
[2026-06-13 04:06:00,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:00,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:00,441.441 INFO    ] No existing commands found in stream
[2026-06-13 04:06:05,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:06:05,453.453 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 04:06:07,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:06:07,192.192 INFO    ] Checking for system updates...
[2026-06-13 04:06:07,214.214 INFO    ] 200
[2026-06-13 04:06:07,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:07,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:07,247.247 INFO    ] No update needed
[2026-06-13 04:06:07,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 04:06:07,268.268 INFO    ] 200
[2026-06-13 04:06:07,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:07,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:06:07,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:07,332.332 INFO    ] No camera update needed
[2026-06-13 04:06:07,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:06:07,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:06:07,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:06:07,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:06:09,389.389 INFO    ] ================================================
[2026-06-13 04:06:09,404.404 INFO    ] Launching Daemon at Sat Jun 13 04:06:09 IST 2026
[2026-06-13 04:06:09,415.415 INFO    ] ================================================
[2026-06-13 04:06:09,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:06:09
[2026-06-13 04:06:10,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:06:10,654.654 INFO    ] Initializing speech engine...
[2026-06-13 04:06:10,665.665 INFO    ] 2026-06-13 04:06:10
[2026-06-13 04:06:10,880.880 INFO    ] 2026-06-13 04:06:10
[2026-06-13 04:06:10,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:11,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:11,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:11,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:11,275.275 INFO    ] time= 13/06/2026 04:06:11
[2026-06-13 04:06:11,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:11,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:11,432.432 INFO    ] No existing commands found in stream
[2026-06-13 04:06:16,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:06:16,445.445 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 04:06:18,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:06:18,039.039 INFO    ] Checking for system updates...
[2026-06-13 04:06:18,061.061 INFO    ] 200
[2026-06-13 04:06:18,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:18,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:06:18,095.095 INFO    ] No update needed
[2026-06-13 04:06:18,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 04:06:18,117.117 INFO    ] 200
[2026-06-13 04:06:18,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:18,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:06:18,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:06:18,182.182 INFO    ] No camera update needed
[2026-06-13 04:06:18,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:06:18,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:06:18,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:06:18,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:06:20,230.230 INFO    ] ================================================
[2026-06-13 04:06:20,245.245 INFO    ] Launching Daemon at Sat Jun 13 04:06:20 IST 2026
[2026-06-13 04:06:20,256.256 INFO    ] ================================================
[2026-06-13 04:06:20,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:06:20
[2026-06-13 04:06:20,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:06:21,068.068 INFO    ] Initializing speech engine...
[2026-06-13 04:06:21,074.074 INFO    ] 2026-06-13 04:06:21
[2026-06-13 04:06:21,278.278 INFO    ] 2026-06-13 04:06:21
[2026-06-13 04:06:21,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:21,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:21,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:21,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:21,686.686 INFO    ] time= 13/06/2026 04:06:21
[2026-06-13 04:06:21,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:21,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:21,798.798 INFO    ] No existing commands found in stream
[2026-06-13 04:06:26,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:06:26,812.812 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 04:06:29,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:06:29,636.636 INFO    ] Checking for system updates...
[2026-06-13 04:06:29,658.658 INFO    ] 200
[2026-06-13 04:06:29,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:29,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:29,691.691 INFO    ] No update needed
[2026-06-13 04:06:29,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 04:06:29,713.713 INFO    ] 200
[2026-06-13 04:06:29,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:29,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:06:29,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:29,790.790 INFO    ] No camera update needed
[2026-06-13 04:06:29,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:06:29,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:06:29,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:06:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:06:31,833.833 INFO    ] ================================================
[2026-06-13 04:06:31,843.843 INFO    ] Launching Daemon at Sat Jun 13 04:06:31 IST 2026
[2026-06-13 04:06:31,850.850 INFO    ] ================================================
[2026-06-13 04:06:32,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:06:32
[2026-06-13 04:06:32,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:06:32,686.686 INFO    ] Initializing speech engine...
[2026-06-13 04:06:32,691.691 INFO    ] 2026-06-13 04:06:32
[2026-06-13 04:06:32,899.899 INFO    ] 2026-06-13 04:06:32
[2026-06-13 04:06:32,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:33,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:33,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:33,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:33,319.319 INFO    ] time= 13/06/2026 04:06:33
[2026-06-13 04:06:33,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:33,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:33,417.417 INFO    ] No existing commands found in stream
[2026-06-13 04:06:38,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:06:38,432.432 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 04:06:40,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:06:40,483.483 INFO    ] Checking for system updates...
[2026-06-13 04:06:40,521.521 INFO    ] 200
[2026-06-13 04:06:40,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:40,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:40,583.583 INFO    ] No update needed
[2026-06-13 04:06:40,586.586 INFO    ] Checking for camera pi updates...
[2026-06-13 04:06:40,629.629 INFO    ] 200
[2026-06-13 04:06:40,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:40,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:06:40,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:06:40,721.721 INFO    ] No camera update needed
[2026-06-13 04:06:40,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:06:40,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:06:40,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:06:40,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:06:42,780.780 INFO    ] ================================================
[2026-06-13 04:06:42,796.796 INFO    ] Launching Daemon at Sat Jun 13 04:06:42 IST 2026
[2026-06-13 04:06:42,808.808 INFO    ] ================================================
[2026-06-13 04:06:43,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:06:43
[2026-06-13 04:06:43,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:06:43,963.963 INFO    ] Initializing speech engine...
[2026-06-13 04:06:43,968.968 INFO    ] 2026-06-13 04:06:43
[2026-06-13 04:06:44,179.179 INFO    ] 2026-06-13 04:06:44
[2026-06-13 04:06:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:44,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:44,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:44,577.577 INFO    ] time= 13/06/2026 04:06:44
[2026-06-13 04:06:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:44,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:44,705.705 INFO    ] No existing commands found in stream
[2026-06-13 04:06:49,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:06:49,720.720 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 04:06:52,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:06:52,342.342 INFO    ] Checking for system updates...
[2026-06-13 04:06:52,363.363 INFO    ] 200
[2026-06-13 04:06:52,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:52,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:06:52,399.399 INFO    ] No update needed
[2026-06-13 04:06:52,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 04:06:52,420.420 INFO    ] 200
[2026-06-13 04:06:52,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:06:52,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:06:52,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:06:52,488.488 INFO    ] No camera update needed
[2026-06-13 04:06:52,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:06:52,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:06:52,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:06:52,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:06:54,535.535 INFO    ] ================================================
[2026-06-13 04:06:54,551.551 INFO    ] Launching Daemon at Sat Jun 13 04:06:54 IST 2026
[2026-06-13 04:06:54,562.562 INFO    ] ================================================
[2026-06-13 04:06:54,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:06:54
[2026-06-13 04:06:55,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:06:55,365.365 INFO    ] Initializing speech engine...
[2026-06-13 04:06:55,376.376 INFO    ] 2026-06-13 04:06:55
[2026-06-13 04:06:55,581.581 INFO    ] 2026-06-13 04:06:55
[2026-06-13 04:06:55,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:06:55,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:06:55,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:06:55,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:06:55,991.991 INFO    ] time= 13/06/2026 04:06:55
[2026-06-13 04:06:56,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:06:56,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:06:56,102.102 INFO    ] No existing commands found in stream
[2026-06-13 04:07:01,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:01,115.115 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 04:07:02,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:07:02,044.044 INFO    ] Checking for system updates...
[2026-06-13 04:07:02,064.064 INFO    ] 200
[2026-06-13 04:07:02,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:02,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:07:02,111.111 INFO    ] No update needed
[2026-06-13 04:07:02,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:02,132.132 INFO    ] 200
[2026-06-13 04:07:02,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:02,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:02,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:07:02,183.183 INFO    ] No camera update needed
[2026-06-13 04:07:02,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:02,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:02,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:02,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:04,231.231 INFO    ] ================================================
[2026-06-13 04:07:04,246.246 INFO    ] Launching Daemon at Sat Jun 13 04:07:04 IST 2026
[2026-06-13 04:07:04,257.257 INFO    ] ================================================
[2026-06-13 04:07:04,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:04
[2026-06-13 04:07:04,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:05,081.081 INFO    ] Initializing speech engine...
[2026-06-13 04:07:05,086.086 INFO    ] 2026-06-13 04:07:05
[2026-06-13 04:07:05,302.302 INFO    ] 2026-06-13 04:07:05
[2026-06-13 04:07:05,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:07:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:07:05,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:07:05,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:07:05,700.700 INFO    ] time= 13/06/2026 04:07:05
[2026-06-13 04:07:05,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:07:05,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:07:05,814.814 INFO    ] No existing commands found in stream
[2026-06-13 04:07:10,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:10,826.826 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 04:07:12,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:07:12,531.531 INFO    ] Checking for system updates...
[2026-06-13 04:07:12,552.552 INFO    ] 200
[2026-06-13 04:07:12,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:12,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:12,585.585 INFO    ] No update needed
[2026-06-13 04:07:12,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:12,607.607 INFO    ] 200
[2026-06-13 04:07:12,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:12,638.638 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:12,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:12,676.676 INFO    ] No camera update needed
[2026-06-13 04:07:12,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:12,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:12,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:12,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:14,723.723 INFO    ] ================================================
[2026-06-13 04:07:14,738.738 INFO    ] Launching Daemon at Sat Jun 13 04:07:14 IST 2026
[2026-06-13 04:07:14,749.749 INFO    ] ================================================
[2026-06-13 04:07:15,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:15
[2026-06-13 04:07:15,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:15,619.619 INFO    ] Initializing speech engine...
[2026-06-13 04:07:15,625.625 INFO    ] 2026-06-13 04:07:15
[2026-06-13 04:07:15,830.830 INFO    ] 2026-06-13 04:07:15
[2026-06-13 04:07:15,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:07:16,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:07:16,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:07:16,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:07:16,255.255 INFO    ] time= 13/06/2026 04:07:16
[2026-06-13 04:07:16,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:07:16,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:07:16,354.354 INFO    ] No existing commands found in stream
[2026-06-13 04:07:21,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:21,372.372 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 04:07:22,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:07:22,159.159 INFO    ] Checking for system updates...
[2026-06-13 04:07:22,201.201 INFO    ] 200
[2026-06-13 04:07:22,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:22,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:07:22,271.271 INFO    ] No update needed
[2026-06-13 04:07:22,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:22,315.315 INFO    ] 200
[2026-06-13 04:07:22,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:22,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:22,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:07:22,405.405 INFO    ] No camera update needed
[2026-06-13 04:07:22,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:22,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:22,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:22,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:24,451.451 INFO    ] ================================================
[2026-06-13 04:07:24,460.460 INFO    ] Launching Daemon at Sat Jun 13 04:07:24 IST 2026
[2026-06-13 04:07:24,466.466 INFO    ] ================================================
[2026-06-13 04:07:24,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:24
[2026-06-13 04:07:25,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:25,276.276 INFO    ] Initializing speech engine...
[2026-06-13 04:07:25,285.285 INFO    ] 2026-06-13 04:07:25
[2026-06-13 04:07:25,550.550 INFO    ] 2026-06-13 04:07:25
[2026-06-13 04:07:25,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:07:25,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:07:25,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:07:25,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:07:25,936.936 INFO    ] time= 13/06/2026 04:07:25
[2026-06-13 04:07:25,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:07:25,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:07:26,038.038 INFO    ] No existing commands found in stream
[2026-06-13 04:07:31,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:31,072.072 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 04:07:33,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:07:33,338.338 INFO    ] Checking for system updates...
[2026-06-13 04:07:33,375.375 INFO    ] 200
[2026-06-13 04:07:33,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:33,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:33,434.434 INFO    ] No update needed
[2026-06-13 04:07:33,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:33,472.472 INFO    ] 200
[2026-06-13 04:07:33,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:33,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:33,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:33,564.564 INFO    ] No camera update needed
[2026-06-13 04:07:33,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:33,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:33,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:33,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:35,623.623 INFO    ] ================================================
[2026-06-13 04:07:35,639.639 INFO    ] Launching Daemon at Sat Jun 13 04:07:35 IST 2026
[2026-06-13 04:07:35,651.651 INFO    ] ================================================
[2026-06-13 04:07:36,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:36
[2026-06-13 04:07:36,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:36,665.665 INFO    ] Initializing speech engine...
[2026-06-13 04:07:36,677.677 INFO    ] 2026-06-13 04:07:36
[2026-06-13 04:07:36,991.991 INFO    ] 2026-06-13 04:07:36
[2026-06-13 04:07:37,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:07:37,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:07:37,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:07:37,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:07:37,465.465 INFO    ] time= 13/06/2026 04:07:37
[2026-06-13 04:07:37,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:07:37,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:07:37,657.657 INFO    ] No existing commands found in stream
[2026-06-13 04:07:42,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:42,680.680 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 04:07:45,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:07:45,254.254 INFO    ] Checking for system updates...
[2026-06-13 04:07:45,275.275 INFO    ] 200
[2026-06-13 04:07:45,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:45,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:45,308.308 INFO    ] No update needed
[2026-06-13 04:07:45,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:45,329.329 INFO    ] 200
[2026-06-13 04:07:45,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:45,355.355 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:45,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:45,400.400 INFO    ] No camera update needed
[2026-06-13 04:07:45,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:45,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:45,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:45,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:47,449.449 INFO    ] ================================================
[2026-06-13 04:07:47,466.466 INFO    ] Launching Daemon at Sat Jun 13 04:07:47 IST 2026
[2026-06-13 04:07:47,477.477 INFO    ] ================================================
[2026-06-13 04:07:47,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:47
[2026-06-13 04:07:48,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:48,753.753 INFO    ] Initializing speech engine...
[2026-06-13 04:07:48,762.762 INFO    ] 2026-06-13 04:07:48
[2026-06-13 04:07:49,010.010 INFO    ] 2026-06-13 04:07:49
[2026-06-13 04:07:49,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:07:49,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:07:49,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:07:49,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:07:49,351.351 INFO    ] time= 13/06/2026 04:07:49
[2026-06-13 04:07:49,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:07:49,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:07:49,464.464 INFO    ] No existing commands found in stream
[2026-06-13 04:07:54,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:07:54,479.479 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 04:07:56,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:07:56,466.466 INFO    ] Checking for system updates...
[2026-06-13 04:07:56,487.487 INFO    ] 200
[2026-06-13 04:07:56,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:56,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:56,525.525 INFO    ] No update needed
[2026-06-13 04:07:56,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 04:07:56,545.545 INFO    ] 200
[2026-06-13 04:07:56,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:07:56,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:07:56,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:07:56,610.610 INFO    ] No camera update needed
[2026-06-13 04:07:56,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:07:56,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:07:56,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:07:56,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:07:58,653.653 INFO    ] ================================================
[2026-06-13 04:07:58,664.664 INFO    ] Launching Daemon at Sat Jun 13 04:07:58 IST 2026
[2026-06-13 04:07:58,673.673 INFO    ] ================================================
[2026-06-13 04:07:58,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:07:58
[2026-06-13 04:07:59,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:07:59,779.779 INFO    ] Initializing speech engine...
[2026-06-13 04:07:59,786.786 INFO    ] 2026-06-13 04:07:59
[2026-06-13 04:08:00,087.087 INFO    ] 2026-06-13 04:08:00
[2026-06-13 04:08:00,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:00,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:00,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:00,436.436 INFO    ] time= 13/06/2026 04:08:00
[2026-06-13 04:08:00,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:00,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:00,570.570 INFO    ] No existing commands found in stream
[2026-06-13 04:08:05,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:05,583.583 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 04:08:08,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:08:08,095.095 INFO    ] Checking for system updates...
[2026-06-13 04:08:08,116.116 INFO    ] 200
[2026-06-13 04:08:08,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:08,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:08,150.150 INFO    ] No update needed
[2026-06-13 04:08:08,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 04:08:08,171.171 INFO    ] 200
[2026-06-13 04:08:08,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:08,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:08:08,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:08,236.236 INFO    ] No camera update needed
[2026-06-13 04:08:08,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:08:08,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:08:08,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:08:08,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:08:10,285.285 INFO    ] ================================================
[2026-06-13 04:08:10,301.301 INFO    ] Launching Daemon at Sat Jun 13 04:08:10 IST 2026
[2026-06-13 04:08:10,312.312 INFO    ] ================================================
[2026-06-13 04:08:10,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:08:10
[2026-06-13 04:08:11,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:08:11,160.160 INFO    ] Initializing speech engine...
[2026-06-13 04:08:11,166.166 INFO    ] 2026-06-13 04:08:11
[2026-06-13 04:08:11,371.371 INFO    ] 2026-06-13 04:08:11
[2026-06-13 04:08:11,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:11,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:11,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:11,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:11,768.768 INFO    ] time= 13/06/2026 04:08:11
[2026-06-13 04:08:11,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:11,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:11,888.888 INFO    ] No existing commands found in stream
[2026-06-13 04:08:16,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:16,899.899 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 04:08:17,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:08:17,523.523 INFO    ] Checking for system updates...
[2026-06-13 04:08:17,543.543 INFO    ] 200
[2026-06-13 04:08:17,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:17,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:17,579.579 INFO    ] No update needed
[2026-06-13 04:08:17,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 04:08:17,603.603 INFO    ] 200
[2026-06-13 04:08:17,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:17,629.629 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:08:17,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:17,667.667 INFO    ] No camera update needed
[2026-06-13 04:08:17,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:08:17,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:08:17,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:08:17,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:08:19,715.715 INFO    ] ================================================
[2026-06-13 04:08:19,731.731 INFO    ] Launching Daemon at Sat Jun 13 04:08:19 IST 2026
[2026-06-13 04:08:19,741.741 INFO    ] ================================================
[2026-06-13 04:08:20,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:08:20
[2026-06-13 04:08:20,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:08:20,560.560 INFO    ] Initializing speech engine...
[2026-06-13 04:08:20,565.565 INFO    ] 2026-06-13 04:08:20
[2026-06-13 04:08:20,771.771 INFO    ] 2026-06-13 04:08:20
[2026-06-13 04:08:20,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:20,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:20,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:21,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:21,190.190 INFO    ] time= 13/06/2026 04:08:21
[2026-06-13 04:08:21,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:21,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:21,290.290 INFO    ] No existing commands found in stream
[2026-06-13 04:08:26,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:26,304.304 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 04:08:27,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:08:27,645.645 INFO    ] Checking for system updates...
[2026-06-13 04:08:27,669.669 INFO    ] 200
[2026-06-13 04:08:27,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:27,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:08:27,702.702 INFO    ] No update needed
[2026-06-13 04:08:27,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 04:08:27,723.723 INFO    ] 200
[2026-06-13 04:08:27,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:27,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:08:27,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:08:27,787.787 INFO    ] No camera update needed
[2026-06-13 04:08:27,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:08:27,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:08:27,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:08:27,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:08:29,835.835 INFO    ] ================================================
[2026-06-13 04:08:29,851.851 INFO    ] Launching Daemon at Sat Jun 13 04:08:29 IST 2026
[2026-06-13 04:08:29,862.862 INFO    ] ================================================
[2026-06-13 04:08:30,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:08:30
[2026-06-13 04:08:30,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:08:30,694.694 INFO    ] Initializing speech engine...
[2026-06-13 04:08:30,700.700 INFO    ] 2026-06-13 04:08:30
[2026-06-13 04:08:30,909.909 INFO    ] 2026-06-13 04:08:30
[2026-06-13 04:08:30,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:31,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:31,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:31,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:31,310.310 INFO    ] time= 13/06/2026 04:08:31
[2026-06-13 04:08:31,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:31,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:31,425.425 INFO    ] No existing commands found in stream
[2026-06-13 04:08:36,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:36,438.438 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 04:08:37,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:08:37,739.739 INFO    ] Checking for system updates...
[2026-06-13 04:08:37,760.760 INFO    ] 200
[2026-06-13 04:08:37,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:37,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:37,793.793 INFO    ] No update needed
[2026-06-13 04:08:37,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 04:08:37,814.814 INFO    ] 200
[2026-06-13 04:08:37,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:37,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:08:37,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:08:37,888.888 INFO    ] No camera update needed
[2026-06-13 04:08:37,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:08:37,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:08:37,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:08:37,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:08:39,936.936 INFO    ] ================================================
[2026-06-13 04:08:39,951.951 INFO    ] Launching Daemon at Sat Jun 13 04:08:39 IST 2026
[2026-06-13 04:08:39,963.963 INFO    ] ================================================
[2026-06-13 04:08:40,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:08:40
[2026-06-13 04:08:41,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:08:41,385.385 INFO    ] Initializing speech engine...
[2026-06-13 04:08:41,394.394 INFO    ] 2026-06-13 04:08:41
[2026-06-13 04:08:41,644.644 INFO    ] 2026-06-13 04:08:41
[2026-06-13 04:08:41,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:41,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:41,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:41,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:41,983.983 INFO    ] time= 13/06/2026 04:08:41
[2026-06-13 04:08:41,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:42,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:42,086.086 INFO    ] No existing commands found in stream
[2026-06-13 04:08:47,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:47,118.118 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 04:08:47,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:08:47,673.673 INFO    ] Checking for system updates...
[2026-06-13 04:08:47,693.693 INFO    ] 200
[2026-06-13 04:08:47,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:47,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:08:47,726.726 INFO    ] No update needed
[2026-06-13 04:08:47,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 04:08:47,750.750 INFO    ] 200
[2026-06-13 04:08:47,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:08:47,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:08:47,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:08:47,818.818 INFO    ] No camera update needed
[2026-06-13 04:08:47,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:08:47,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:08:47,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:08:47,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:08:49,858.858 INFO    ] ================================================
[2026-06-13 04:08:49,867.867 INFO    ] Launching Daemon at Sat Jun 13 04:08:49 IST 2026
[2026-06-13 04:08:49,873.873 INFO    ] ================================================
[2026-06-13 04:08:50,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:08:50
[2026-06-13 04:08:51,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:08:51,266.266 INFO    ] Initializing speech engine...
[2026-06-13 04:08:51,275.275 INFO    ] 2026-06-13 04:08:51
[2026-06-13 04:08:51,548.548 INFO    ] 2026-06-13 04:08:51
[2026-06-13 04:08:51,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:08:51,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:08:51,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:08:51,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:08:51,887.887 INFO    ] time= 13/06/2026 04:08:51
[2026-06-13 04:08:51,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:08:51,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:08:52,000.000 INFO    ] No existing commands found in stream
[2026-06-13 04:08:57,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:08:57,015.015 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 04:08:59,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:08:59,965.965 INFO    ] Checking for system updates...
[2026-06-13 04:08:59,985.985 INFO    ] 200
[2026-06-13 04:08:59,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:00,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:00,019.019 INFO    ] No update needed
[2026-06-13 04:09:00,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:00,042.042 INFO    ] 200
[2026-06-13 04:09:00,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:00,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:00,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:00,109.109 INFO    ] No camera update needed
[2026-06-13 04:09:00,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:00,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:00,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:00,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:02,148.148 INFO    ] ================================================
[2026-06-13 04:09:02,164.164 INFO    ] Launching Daemon at Sat Jun 13 04:09:02 IST 2026
[2026-06-13 04:09:02,178.178 INFO    ] ================================================
[2026-06-13 04:09:02,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:02
[2026-06-13 04:09:02,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:03,056.056 INFO    ] Initializing speech engine...
[2026-06-13 04:09:03,067.067 INFO    ] 2026-06-13 04:09:03
[2026-06-13 04:09:03,275.275 INFO    ] 2026-06-13 04:09:03
[2026-06-13 04:09:03,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:03,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:03,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:03,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:03,624.624 INFO    ] time= 13/06/2026 04:09:03
[2026-06-13 04:09:03,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:03,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:03,794.794 INFO    ] No existing commands found in stream
[2026-06-13 04:09:08,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:09:08,807.807 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 04:09:11,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:09:11,544.544 INFO    ] Checking for system updates...
[2026-06-13 04:09:11,565.565 INFO    ] 200
[2026-06-13 04:09:11,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:11,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:11,599.599 INFO    ] No update needed
[2026-06-13 04:09:11,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:11,622.622 INFO    ] 200
[2026-06-13 04:09:11,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:11,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:11,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:11,690.690 INFO    ] No camera update needed
[2026-06-13 04:09:11,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:11,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:11,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:11,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:13,741.741 INFO    ] ================================================
[2026-06-13 04:09:13,756.756 INFO    ] Launching Daemon at Sat Jun 13 04:09:13 IST 2026
[2026-06-13 04:09:13,768.768 INFO    ] ================================================
[2026-06-13 04:09:14,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:14
[2026-06-13 04:09:14,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:14,546.546 INFO    ] Initializing speech engine...
[2026-06-13 04:09:14,550.550 INFO    ] 2026-06-13 04:09:14
[2026-06-13 04:09:14,758.758 INFO    ] 2026-06-13 04:09:14
[2026-06-13 04:09:14,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:14,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:14,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:15,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:15,159.159 INFO    ] time= 13/06/2026 04:09:15
[2026-06-13 04:09:15,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:15,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:15,275.275 INFO    ] No existing commands found in stream
[2026-06-13 04:09:20,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:09:20,286.286 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 04:09:21,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:09:21,585.585 INFO    ] Checking for system updates...
[2026-06-13 04:09:21,605.605 INFO    ] 200
[2026-06-13 04:09:21,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:21,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:21,638.638 INFO    ] No update needed
[2026-06-13 04:09:21,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:21,660.660 INFO    ] 200
[2026-06-13 04:09:21,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:21,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:21,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:21,721.721 INFO    ] No camera update needed
[2026-06-13 04:09:21,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:21,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:21,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:21,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:23,762.762 INFO    ] ================================================
[2026-06-13 04:09:23,777.777 INFO    ] Launching Daemon at Sat Jun 13 04:09:23 IST 2026
[2026-06-13 04:09:23,788.788 INFO    ] ================================================
[2026-06-13 04:09:24,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:24
[2026-06-13 04:09:25,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:25,389.389 INFO    ] Initializing speech engine...
[2026-06-13 04:09:25,407.407 INFO    ] 2026-06-13 04:09:25
[2026-06-13 04:09:25,686.686 INFO    ] 2026-06-13 04:09:25
[2026-06-13 04:09:25,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:25,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:25,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:26,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:26,124.124 INFO    ] time= 13/06/2026 04:09:26
[2026-06-13 04:09:26,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:26,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:26,290.290 INFO    ] No existing commands found in stream
[2026-06-13 04:09:31,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:09:31,326.326 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 04:09:33,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:09:33,079.079 INFO    ] Checking for system updates...
[2026-06-13 04:09:33,100.100 INFO    ] 200
[2026-06-13 04:09:33,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:33,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:33,133.133 INFO    ] No update needed
[2026-06-13 04:09:33,134.134 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:33,154.154 INFO    ] 200
[2026-06-13 04:09:33,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:33,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:33,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:33,224.224 INFO    ] No camera update needed
[2026-06-13 04:09:33,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:33,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:33,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:33,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:35,264.264 INFO    ] ================================================
[2026-06-13 04:09:35,281.281 INFO    ] Launching Daemon at Sat Jun 13 04:09:35 IST 2026
[2026-06-13 04:09:35,292.292 INFO    ] ================================================
[2026-06-13 04:09:35,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:35
[2026-06-13 04:09:35,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:36,089.089 INFO    ] Initializing speech engine...
[2026-06-13 04:09:36,094.094 INFO    ] 2026-06-13 04:09:36
[2026-06-13 04:09:36,300.300 INFO    ] 2026-06-13 04:09:36
[2026-06-13 04:09:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:36,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:36,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:36,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:36,617.617 INFO    ] time= 13/06/2026 04:09:36
[2026-06-13 04:09:36,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:36,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:36,749.749 INFO    ] No existing commands found in stream
[2026-06-13 04:09:41,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:09:41,761.761 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 04:09:42,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:09:42,220.220 INFO    ] Checking for system updates...
[2026-06-13 04:09:42,241.241 INFO    ] 200
[2026-06-13 04:09:42,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:42,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:42,275.275 INFO    ] No update needed
[2026-06-13 04:09:42,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:42,296.296 INFO    ] 200
[2026-06-13 04:09:42,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:42,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:42,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:09:42,360.360 INFO    ] No camera update needed
[2026-06-13 04:09:42,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:42,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:42,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:42,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:44,410.410 INFO    ] ================================================
[2026-06-13 04:09:44,425.425 INFO    ] Launching Daemon at Sat Jun 13 04:09:44 IST 2026
[2026-06-13 04:09:44,437.437 INFO    ] ================================================
[2026-06-13 04:09:44,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:44
[2026-06-13 04:09:45,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:45,265.265 INFO    ] Initializing speech engine...
[2026-06-13 04:09:45,275.275 INFO    ] 2026-06-13 04:09:45
[2026-06-13 04:09:45,509.509 INFO    ] 2026-06-13 04:09:45
[2026-06-13 04:09:45,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:45,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:45,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:45,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:45,833.833 INFO    ] time= 13/06/2026 04:09:45
[2026-06-13 04:09:45,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:45,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:45,964.964 INFO    ] No existing commands found in stream
[2026-06-13 04:09:50,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:09:50,978.978 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 04:09:51,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:09:51,738.738 INFO    ] Checking for system updates...
[2026-06-13 04:09:51,762.762 INFO    ] 200
[2026-06-13 04:09:51,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:51,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:51,795.795 INFO    ] No update needed
[2026-06-13 04:09:51,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 04:09:51,818.818 INFO    ] 200
[2026-06-13 04:09:51,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:09:51,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:09:51,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:09:51,896.896 INFO    ] No camera update needed
[2026-06-13 04:09:51,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:09:51,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:09:51,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:09:51,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:09:53,943.943 INFO    ] ================================================
[2026-06-13 04:09:53,960.960 INFO    ] Launching Daemon at Sat Jun 13 04:09:53 IST 2026
[2026-06-13 04:09:53,971.971 INFO    ] ================================================
[2026-06-13 04:09:54,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:09:54
[2026-06-13 04:09:54,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:09:54,774.774 INFO    ] Initializing speech engine...
[2026-06-13 04:09:54,782.782 INFO    ] 2026-06-13 04:09:54
[2026-06-13 04:09:54,995.995 INFO    ] 2026-06-13 04:09:54
[2026-06-13 04:09:55,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:09:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:09:55,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:09:55,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:09:55,404.404 INFO    ] time= 13/06/2026 04:09:55
[2026-06-13 04:09:55,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:09:55,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:09:55,510.510 INFO    ] No existing commands found in stream
[2026-06-13 04:10:00,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:10:00,536.536 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 04:10:08,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:10:08,782.782 INFO    ] Checking for system updates...
[2026-06-13 04:10:08,819.819 INFO    ] 200
[2026-06-13 04:10:08,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:08,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:08,880.880 INFO    ] No update needed
[2026-06-13 04:10:08,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 04:10:08,909.909 INFO    ] 200
[2026-06-13 04:10:08,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:08,934.934 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:10:09,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:09,083.083 INFO    ] No camera update needed
[2026-06-13 04:10:09,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:10:09,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:10:09,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:10:09,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:10:11,123.123 INFO    ] ================================================
[2026-06-13 04:10:11,139.139 INFO    ] Launching Daemon at Sat Jun 13 04:10:11 IST 2026
[2026-06-13 04:10:11,150.150 INFO    ] ================================================
[2026-06-13 04:10:11,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:10:11
[2026-06-13 04:10:11,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:10:11,968.968 INFO    ] Initializing speech engine...
[2026-06-13 04:10:11,973.973 INFO    ] 2026-06-13 04:10:11
[2026-06-13 04:10:12,177.177 INFO    ] 2026-06-13 04:10:12
[2026-06-13 04:10:12,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:10:12,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:10:12,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:10:12,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:10:12,565.565 INFO    ] time= 13/06/2026 04:10:12
[2026-06-13 04:10:12,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:10:12,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:10:12,691.691 INFO    ] No existing commands found in stream
[2026-06-13 04:10:17,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:10:17,703.703 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 04:10:20,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:10:20,653.653 INFO    ] Checking for system updates...
[2026-06-13 04:10:20,674.674 INFO    ] 200
[2026-06-13 04:10:20,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:20,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:20,708.708 INFO    ] No update needed
[2026-06-13 04:10:20,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 04:10:20,731.731 INFO    ] 200
[2026-06-13 04:10:20,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:20,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:10:20,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:20,796.796 INFO    ] No camera update needed
[2026-06-13 04:10:20,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:10:20,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:10:20,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:10:20,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:10:22,848.848 INFO    ] ================================================
[2026-06-13 04:10:22,864.864 INFO    ] Launching Daemon at Sat Jun 13 04:10:22 IST 2026
[2026-06-13 04:10:22,875.875 INFO    ] ================================================
[2026-06-13 04:10:23,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:10:23
[2026-06-13 04:10:23,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:10:23,731.731 INFO    ] Initializing speech engine...
[2026-06-13 04:10:23,735.735 INFO    ] 2026-06-13 04:10:23
[2026-06-13 04:10:23,931.931 INFO    ] 2026-06-13 04:10:23
[2026-06-13 04:10:23,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:10:24,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:10:24,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:10:24,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:10:24,344.344 INFO    ] time= 13/06/2026 04:10:24
[2026-06-13 04:10:24,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:10:24,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:10:24,526.526 INFO    ] No existing commands found in stream
[2026-06-13 04:10:29,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:10:29,540.540 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 04:10:31,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:10:31,934.934 INFO    ] Checking for system updates...
[2026-06-13 04:10:31,959.959 INFO    ] 200
[2026-06-13 04:10:31,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:31,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:31,996.996 INFO    ] No update needed
[2026-06-13 04:10:31,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 04:10:32,021.021 INFO    ] 200
[2026-06-13 04:10:32,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:32,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:10:32,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:32,090.090 INFO    ] No camera update needed
[2026-06-13 04:10:32,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:10:32,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:10:32,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:10:32,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:10:34,141.141 INFO    ] ================================================
[2026-06-13 04:10:34,156.156 INFO    ] Launching Daemon at Sat Jun 13 04:10:34 IST 2026
[2026-06-13 04:10:34,167.167 INFO    ] ================================================
[2026-06-13 04:10:34,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:10:34
[2026-06-13 04:10:34,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:10:34,979.979 INFO    ] Initializing speech engine...
[2026-06-13 04:10:34,992.992 INFO    ] 2026-06-13 04:10:34
[2026-06-13 04:10:35,205.205 INFO    ] 2026-06-13 04:10:35
[2026-06-13 04:10:35,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:10:35,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:10:35,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:10:35,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:10:35,603.603 INFO    ] time= 13/06/2026 04:10:35
[2026-06-13 04:10:35,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:10:35,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:10:35,717.717 INFO    ] No existing commands found in stream
[2026-06-13 04:10:40,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:10:40,731.731 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 04:10:44,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:10:44,450.450 INFO    ] Checking for system updates...
[2026-06-13 04:10:44,471.471 INFO    ] 200
[2026-06-13 04:10:44,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:44,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:44,506.506 INFO    ] No update needed
[2026-06-13 04:10:44,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 04:10:44,527.527 INFO    ] 200
[2026-06-13 04:10:44,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:44,552.552 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:10:44,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:44,595.595 INFO    ] No camera update needed
[2026-06-13 04:10:44,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:10:44,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:10:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:10:44,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:10:46,643.643 INFO    ] ================================================
[2026-06-13 04:10:46,659.659 INFO    ] Launching Daemon at Sat Jun 13 04:10:46 IST 2026
[2026-06-13 04:10:46,670.670 INFO    ] ================================================
[2026-06-13 04:10:46,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:10:46
[2026-06-13 04:10:47,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:10:47,450.450 INFO    ] Initializing speech engine...
[2026-06-13 04:10:47,459.459 INFO    ] 2026-06-13 04:10:47
[2026-06-13 04:10:47,667.667 INFO    ] 2026-06-13 04:10:47
[2026-06-13 04:10:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:10:47,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:10:47,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:10:48,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:10:48,053.053 INFO    ] time= 13/06/2026 04:10:48
[2026-06-13 04:10:48,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:10:48,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:10:48,187.187 INFO    ] No existing commands found in stream
[2026-06-13 04:10:53,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:10:53,216.216 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 04:10:54,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:10:54,760.760 INFO    ] Checking for system updates...
[2026-06-13 04:10:54,781.781 INFO    ] 200
[2026-06-13 04:10:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:54,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:54,818.818 INFO    ] No update needed
[2026-06-13 04:10:54,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 04:10:54,839.839 INFO    ] 200
[2026-06-13 04:10:54,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:10:54,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:10:54,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:10:54,906.906 INFO    ] No camera update needed
[2026-06-13 04:10:54,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:10:54,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:10:54,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:10:54,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:10:56,955.955 INFO    ] ================================================
[2026-06-13 04:10:56,970.970 INFO    ] Launching Daemon at Sat Jun 13 04:10:56 IST 2026
[2026-06-13 04:10:56,981.981 INFO    ] ================================================
[2026-06-13 04:10:57,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:10:57
[2026-06-13 04:10:57,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:10:57,862.862 INFO    ] Initializing speech engine...
[2026-06-13 04:10:57,868.868 INFO    ] 2026-06-13 04:10:57
[2026-06-13 04:10:58,079.079 INFO    ] 2026-06-13 04:10:58
[2026-06-13 04:10:58,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:10:58,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:10:58,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:10:58,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:10:58,500.500 INFO    ] time= 13/06/2026 04:10:58
[2026-06-13 04:10:58,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:10:58,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:10:58,606.606 INFO    ] No existing commands found in stream
[2026-06-13 04:11:03,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:11:03,620.620 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 04:11:06,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:11:06,661.661 INFO    ] Checking for system updates...
[2026-06-13 04:11:06,682.682 INFO    ] 200
[2026-06-13 04:11:06,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:06,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:11:06,715.715 INFO    ] No update needed
[2026-06-13 04:11:06,716.716 INFO    ] Checking for camera pi updates...
[2026-06-13 04:11:06,735.735 INFO    ] 200
[2026-06-13 04:11:06,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:06,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:11:06,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:11:06,802.802 INFO    ] No camera update needed
[2026-06-13 04:11:06,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:11:06,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:11:06,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:11:06,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:11:08,850.850 INFO    ] ================================================
[2026-06-13 04:11:08,865.865 INFO    ] Launching Daemon at Sat Jun 13 04:11:08 IST 2026
[2026-06-13 04:11:08,876.876 INFO    ] ================================================
[2026-06-13 04:11:09,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:11:09
[2026-06-13 04:11:09,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:11:09,741.741 INFO    ] Initializing speech engine...
[2026-06-13 04:11:09,746.746 INFO    ] 2026-06-13 04:11:09
[2026-06-13 04:11:09,958.958 INFO    ] 2026-06-13 04:11:09
[2026-06-13 04:11:09,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:11:10,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:11:10,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:11:10,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:11:10,370.370 INFO    ] time= 13/06/2026 04:11:10
[2026-06-13 04:11:10,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:11:10,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:11:10,490.490 INFO    ] No existing commands found in stream
[2026-06-13 04:11:15,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:11:15,507.507 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 04:11:18,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:11:18,670.670 INFO    ] Checking for system updates...
[2026-06-13 04:11:18,691.691 INFO    ] 200
[2026-06-13 04:11:18,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:18,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:11:18,725.725 INFO    ] No update needed
[2026-06-13 04:11:18,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 04:11:18,748.748 INFO    ] 200
[2026-06-13 04:11:18,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:18,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:11:18,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:11:18,815.815 INFO    ] No camera update needed
[2026-06-13 04:11:18,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:11:18,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:11:18,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:11:18,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:11:20,865.865 INFO    ] ================================================
[2026-06-13 04:11:20,880.880 INFO    ] Launching Daemon at Sat Jun 13 04:11:20 IST 2026
[2026-06-13 04:11:20,891.891 INFO    ] ================================================
[2026-06-13 04:11:21,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:11:21
[2026-06-13 04:11:21,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:11:21,766.766 INFO    ] Initializing speech engine...
[2026-06-13 04:11:21,772.772 INFO    ] 2026-06-13 04:11:21
[2026-06-13 04:11:21,980.980 INFO    ] 2026-06-13 04:11:21
[2026-06-13 04:11:22,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:11:22,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:11:22,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:11:22,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:11:22,397.397 INFO    ] time= 13/06/2026 04:11:22
[2026-06-13 04:11:22,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:11:22,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:11:22,499.499 INFO    ] No existing commands found in stream
[2026-06-13 04:11:25,160.160 INFO    ] Received new command: ID=1781304084790-0
[2026-06-13 04:11:25,162.162 INFO    ] process_and_cleanup_command: msg_id=1781304084790-0
[2026-06-13 04:11:25,165.165 INFO    ] is_command_expired: timestamp=2026-06-12T22:41:24.745Z, expiry=30s
[2026-06-13 04:11:25,234.234 INFO    ] Command removed from stream: 1781304084790-0. returning for processing...
[2026-06-13 04:11:25,237.237 INFO    ] ***** get_valid_command
[2026-06-13 04:11:25,240.240 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781304084745-zb3y79xah","orderId":"TM08202203260613041006366","is_vending":false}', 'timeout': '10', 'timestamp': '2026-06-12T22:41:24.745Z', 'source': 'webapp'}
[2026-06-13 04:11:25,242.242 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613041006366', 'is_vending': False, 'request_id': 'start-order-1781304084745-zb3y79xah'}
[2026-06-13 04:11:25,245.245 INFO    ] Handling start order...
[2026-06-13 04:11:25,248.248 INFO    ] handle_start_order_command
[2026-06-13 04:11:25,255.255 INFO    ] _send_start_order_success: request_id=start-order-1781304084745-zb3y79xah, order_id=TM08202203260613041006366
[2026-06-13 04:11:25,257.257 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 04:11:25,306.306 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781304085265-0
[2026-06-13 04:11:25,309.309 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 04:11:25,312.312 INFO    ] Checking for system updates...
[2026-06-13 04:11:25,360.360 INFO    ] 200
[2026-06-13 04:11:25,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:25,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:11:25,415.415 INFO    ] No update needed
[2026-06-13 04:11:25,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 04:11:25,437.437 INFO    ] 200
[2026-06-13 04:11:25,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:25,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:11:25,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:11:25,514.514 INFO    ] No camera update needed
[2026-06-13 04:11:25,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:11:25,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:11:25,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:11:25,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:11:27,565.565 INFO    ] ================================================
[2026-06-13 04:11:27,575.575 INFO    ] Launching Daemon at Sat Jun 13 04:11:27 IST 2026
[2026-06-13 04:11:27,581.581 INFO    ] ================================================
[2026-06-13 04:11:27,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:11:27
[2026-06-13 04:11:28,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:11:28,458.458 INFO    ] Initializing speech engine...
[2026-06-13 04:11:28,466.466 INFO    ] 2026-06-13 04:11:28
[2026-06-13 04:11:28,692.692 INFO    ] 2026-06-13 04:11:28
[2026-06-13 04:11:28,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:11:28,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:11:28,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:11:29,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:11:29,088.088 INFO    ] time= 13/06/2026 04:11:29
[2026-06-13 04:11:29,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:11:29,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:11:29,259.259 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 04:11:29,260.260 INFO    ] Checking historical command: ID=1781304085265-0
[2026-06-13 04:11:29,288.288 INFO    ] process_and_cleanup_command: msg_id=1781304085265-0
[2026-06-13 04:11:29,290.290 INFO    ] is_command_expired: timestamp=2026-06-12T22:41:25.256052Z, expiry=30s
[2026-06-13 04:11:29,399.399 INFO    ] Command removed from stream: 1781304085265-0. returning for processing...
[2026-06-13 04:11:29,403.403 INFO    ] ***** get_valid_command
[2026-06-13 04:11:29,407.407 INFO    ] {'metadata_request_id': 'start-order-1781304084745-zb3y79xah', 'metadata_order_id': 'TM08202203260613041006366', 'status': 'success', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM08202203', 'timestamp': '2026-06-12T22:41:25.256052Z'}
[2026-06-13 04:11:29,411.411 INFO    ] Checking historical command: ID=1781304087444-0
[2026-06-13 04:11:29,415.415 INFO    ] process_and_cleanup_command: msg_id=1781304087444-0
[2026-06-13 04:11:29,419.419 INFO    ] is_command_expired: timestamp=2026-06-12T22:41:27.279Z, expiry=30s
[2026-06-13 04:11:29,464.464 INFO    ] Command removed from stream: 1781304087444-0. returning for processing...
[2026-06-13 04:11:29,467.467 INFO    ] ***** get_valid_command
[2026-06-13 04:11:29,471.471 INFO    ] {'timeout': '60', 'command': 'process-order', 'data': '{"request_id":"process-order-1781304087278-uo1rjgn8h","orderId":"TM08202203260613041006366","is_vending":false,"accessCode":"85609603"}', 'source': 'webapp', 'timestamp': '2026-06-12T22:41:27.279Z'}
[2026-06-13 04:11:29,474.474 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '85609603', 'request_id': 'process-order-1781304087278-uo1rjgn8h', 'orderId': 'TM08202203260613041006366'}
[2026-06-13 04:11:29,476.476 INFO    ] Handling process order...
[2026-06-13 04:11:29,479.479 INFO    ] Processing process-order command...
[2026-06-13 04:11:29,483.483 INFO    ] 🔍 Lock file Order ID: TM08202203260613041006366, TS: 2026-06-13 04:11:25
[2026-06-13 04:11:29,492.492 INFO    ] ✅ Order lock valid for TM08202203260613041006366
[2026-06-13 04:11:29,494.494 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 04:11:29,498.498 INFO    ] processing access code 85609603 for order TM08202203260613041006366
[2026-06-13 04:11:29,501.501 INFO    ] 🔍 Lock file Order ID: TM08202203260613041006366, TS: 2026-06-13 04:11:25
[2026-06-13 04:11:29,504.504 INFO    ] ✅ Order lock valid for TM08202203260613041006366
[2026-06-13 04:11:29,507.507 INFO    ] 2026-06-13 04:11:29
[2026-06-13 04:11:29,535.535 INFO    ] 200
[2026-06-13 04:11:29,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:11:29,542.542 INFO    ] 85609603
[2026-06-13 04:11:29,546.546 INFO    ] 2026-06-13 04:11:29
[2026-06-13 04:11:29,550.550 INFO    ] session id :802611733
[2026-06-13 04:11:29,554.554 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=85609603&imei=TM08202203&session_id=802611733
[2026-06-13 04:11:30,285.285 INFO    ] 200
[2026-06-13 04:11:30,287.287 INFO    ] {"data": {"mobile": "7637837765", "order_id": "TM08202203260613041006366", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500672-7226.webp", "skuid": "4500672", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Garlic Mixture 26gm", "tray_id": "12", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "85609603", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 04:11:30,288.288 INFO    ] 40
[2026-06-13 04:11:30,290.290 INFO    ] TM08202203260613041006366
[2026-06-13 04:11:30,291.291 INFO    ] 7637837765
[2026-06-13 04:11:30,292.292 INFO    ] 2026-06-13 04:11:30
[2026-06-13 04:11:30,293.293 INFO    ] Door Opening for user mobile ending with  seven seven six five 
[2026-06-13 04:11:30,295.295 INFO    ] Door Opening for user mobile ending with  seven seven six five 
[2026-06-13 04:11:30,296.296 INFO    ] 13e030ce9501eceec83b11e6fd88233f
[2026-06-13 04:11:30,297.297 INFO    ] 2026-06-13 04:11:30
[2026-06-13 04:11:30,299.299 INFO    ] playing audio file
[2026-06-13 04:11:30,309.309 INFO    ] 2026-06-13 04:11:30
[2026-06-13 04:11:30,311.311 INFO    ] 2026-06-13 04:11:30
[2026-06-13 04:11:30,313.313 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:11:30,314.314 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:11:30,367.367 INFO    ] [publish_status] Message added to stream with ID: 1781304090326-0
[2026-06-13 04:11:30,369.369 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"status": true, "data": {"order_id": "TM08202203260613041006366", "mobile": "7637837765", "invoice_bill": "40", "bill_amount": "40", "access_code": "85609603", "proposed_sku_json": [{"offer_desc": "", "tray_id": "43", "unit_price": 20, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "skuid": "185993", "qty": 1, "offer_id": "", "sku_total": 20, "mrp": "20", "door_id": "2", "image_url": "https://images.tinymart.in/product/185993-3509.webp"}, {"offer_desc": "", "tray_id": "12", "unit_price": 10, "name": "Modern kitchens Garlic Mixture 26gm", "skuid": "4500672", "qty": 1, "offer_id": "", "sku_total": 10, "mrp": "10", "door_id": "1", "image_url": "https://images.tinymart.in/product/4500672-7226.webp"}, {"offer_desc": "", "tray_id": "23", "unit_price": 10, "name": "Modern Kitchens Potato waffers Spicy 24gm ", "skuid": "4500687", "qty": 1, "offer_id": "", "sku_total": 10, "mrp": "10", "door_id": "1", "image_url": "https://images.tinymart.in/product/4500687-5964.webp"}]}, "rstatus": true, "msg": "Order Data"}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:41:30.312077Z', 'server_status': 'order-started'} (ID: 1781304090326-0)
[2026-06-13 04:11:30,668.668 INFO    ] {'server_response': {'status': True, 'data': {'order_id': 'TM08202203260613041006366', 'mobile': '7637837765', 'invoice_bill': '40', 'bill_amount': '40', 'access_code': '85609603', 'proposed_sku_json': [{'offer_desc': '', 'tray_id': '43', 'unit_price': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'skuid': '185993', 'qty': 1, 'offer_id': '', 'sku_total': 20, 'mrp': '20', 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}, {'offer_desc': '', 'tray_id': '12', 'unit_price': 10, 'name': 'Modern kitchens Garlic Mixture 26gm', 'skuid': '4500672', 'qty': 1, 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp'}, {'offer_desc': '', 'tray_id': '23', 'unit_price': 10, 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'skuid': '4500687', 'qty': 1, 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}]}, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613041006366', 'server_status': 'order-started'}
[2026-06-13 04:11:30,670.670 INFO    ] 200
[2026-06-13 04:11:30,671.671 INFO    ] {"data":{"server_response":{"status":true,"data":{"order_id":"TM08202203260613041006366","mobile":"7637837765","invoice_bill":"40","bill_amount":"40","access_code":"85609603","proposed_sku_json":[{"offer_desc":"","tray_id":"43","unit_price":20,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","skuid":"185993","qty":1,"offer_id":"","sku_total":20,"mrp":"20","door_id":"2","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp"},{"offer_desc":"","tray_id":"12","unit_price":10,"name":"Modern kitchens Garlic Mixture 26gm","skuid":"4500672","qty":1,"offer_id":"","sku_total":10,"mrp":"10","door_id":"1","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp"},{"offer_desc":"","tray_id":"23","unit_price":10,"name":"Modern Kitchens Potato waffers Spicy 24gm ","skuid":"4500687","qty":1,"offer_id":"","sku_total":10,"mrp":"10","door_id":"1","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp"}]},"rstatus":true,"msg":"Order Data"},"order_id":"TM08202203260613041006366","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:11:30,673.673 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'msg': 'Order Data', 'data': {'order_id': 'TM08202203260613041006366', 'mobile': '7637837765', 'invoice_bill': '40', 'bill_amount': '40', 'access_code': '85609603', 'proposed_sku_json': [{'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'unit_price': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1, 'offer_id': '', 'sku_total': 20, 'skuid': '185993', 'door_id': '2', 'mrp': '20'}, {'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'tray_id': '12', 'unit_price': 10, 'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1, 'offer_id': '', 'sku_total': 10, 'skuid': '4500672', 'door_id': '1', 'mrp': '10'}, {'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'tray_id': '23', 'unit_price': 10, 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'qty': 1, 'offer_id': '', 'sku_total': 10, 'skuid': '4500687', 'door_id': '1', 'mrp': '10'}]}, 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'order-started'}}
[2026-06-13 04:11:30,674.674 INFO    ] 2026-06-13 04:11:30
[2026-06-13 04:11:30,700.700 INFO    ] 200
[2026-06-13 04:11:30,701.701 INFO    ] True
[2026-06-13 04:11:30,783.783 INFO    ] 200
[2026-06-13 04:11:30,784.784 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:30,786.786 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': False}
[2026-06-13 04:11:30,788.788 INFO    ] *** process_order ***
[2026-06-13 04:11:32,017.017 INFO    ] 200
[2026-06-13 04:11:32,020.020 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:11:32,022.022 INFO    ] {'status': 'True', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': True}
[2026-06-13 04:11:32,025.025 INFO    ] *** process_order ***
[2026-06-13 04:11:32,028.028 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:11:32,031.031 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:11:32,094.094 INFO    ] [publish_status] Message added to stream with ID: 1781304092052-0
[2026-06-13 04:11:32,097.097 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"delay": 0, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "status": "True", "rstatus": true}', 'order_id': 'TM08202203260613041006366', 'server_status': 'doorOpened'} (ID: 1781304092052-0)
[2026-06-13 04:11:33,140.140 INFO    ] 2026-06-13 04:11:33
[2026-06-13 04:11:33,142.142 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:11:33,145.145 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:11:33,222.222 INFO    ] [publish_status] Message added to stream with ID: 1781304093180-0
[2026-06-13 04:11:33,225.225 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"status": "True", "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": "", "Note": ""}, "voiceNote": "Please Wait", "rstatus": true}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:41:33.141380Z', 'server_status': 'processOrder'} (ID: 1781304093180-0)
[2026-06-13 04:11:33,335.335 INFO    ] {'server_response': {'status': 'True', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'processOrder'}
[2026-06-13 04:11:33,338.338 INFO    ] 200
[2026-06-13 04:11:33,341.341 INFO    ] {"data":{"server_response":{"status":"true","delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":"","Note":""},"voiceNote":"Please Wait","rstatus":true},"order_id":"TM08202203260613041006366","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:11:33,344.344 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'true', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'processOrder'}}
[2026-06-13 04:11:33,347.347 INFO    ] 2026-06-13 04:11:33
[2026-06-13 04:11:33,350.350 INFO    ] None
[2026-06-13 04:11:33,352.352 INFO    ] Opening Door now
[2026-06-13 04:11:33,355.355 INFO    ] Opening Door now
[2026-06-13 04:11:33,358.358 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 04:11:33,360.360 INFO    ] 2026-06-13 04:11:33
[2026-06-13 04:11:33,363.363 INFO    ] playing audio file
[2026-06-13 04:11:33,380.380 INFO    ] 2026-06-13 04:11:33
[2026-06-13 04:11:33,384.384 INFO    ] 2026-06-13 04:11:33
[2026-06-13 04:11:36,417.417 INFO    ] 200
[2026-06-13 04:11:36,419.419 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:36,421.421 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'rstatus': False}
[2026-06-13 04:11:39,549.549 INFO    ] 200
[2026-06-13 04:11:39,552.552 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:39,555.555 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-13 04:11:42,614.614 INFO    ] 200
[2026-06-13 04:11:42,615.615 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:42,617.617 INFO    ] Please close door 1
[2026-06-13 04:11:42,619.619 INFO    ] Please close door 1
[2026-06-13 04:11:42,621.621 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 04:11:42,625.625 INFO    ] 2026-06-13 04:11:42
[2026-06-13 04:11:42,627.627 INFO    ] playing audio file
[2026-06-13 04:11:42,639.639 INFO    ] 2026-06-13 04:11:42
[2026-06-13 04:11:42,641.641 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:11:42,644.644 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:11:42,758.758 INFO    ] [publish_status] Message added to stream with ID: 1781304102688-0
[2026-06-13 04:11:42,760.760 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"status": "False", "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:41:42.640486Z', 'server_status': 'OrderStatus'} (ID: 1781304102688-0)
[2026-06-13 04:11:43,095.095 INFO    ] {'server_response': {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}
[2026-06-13 04:11:43,097.097 INFO    ] 200
[2026-06-13 04:11:43,099.099 INFO    ] {"data":{"server_response":{"status":"false","error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern kitchens Garlic Mixture 26gm"},{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","rstatus":false},"order_id":"TM08202203260613041006366","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:11:43,101.101 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'false', 'rstatus': False}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}}
[2026-06-13 04:11:43,103.103 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-13 04:11:46,166.166 INFO    ] 200
[2026-06-13 04:11:46,169.169 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:46,172.172 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-13 04:11:49,274.274 INFO    ] 200
[2026-06-13 04:11:49,277.277 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Opening Door 2", "Note": "Please wait for door to open", "SubHeader": "Please Pick products after opening"}, "voiceNote": "Opening Door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:49,280.280 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick products after opening', 'Header': 'Opening Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please wait for door to open'}, 'voiceNote': 'Opening Door 2', 'rstatus': False}
[2026-06-13 04:11:52,391.391 INFO    ] 200
[2026-06-13 04:11:52,394.394 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:52,397.397 INFO    ] Door 2 is open now
[2026-06-13 04:11:52,400.400 INFO    ] Door 2 is open now
[2026-06-13 04:11:52,403.403 INFO    ] c0b0c0995d30574d97edd3ece08dfc12
[2026-06-13 04:11:52,406.406 INFO    ] 2026-06-13 04:11:52
[2026-06-13 04:11:52,409.409 INFO    ] playing audio file
[2026-06-13 04:11:52,434.434 INFO    ] 2026-06-13 04:11:52
[2026-06-13 04:11:52,438.438 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:11:52,441.441 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:11:52,533.533 INFO    ] [publish_status] Message added to stream with ID: 1781304112491-0
[2026-06-13 04:11:52,534.534 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"status": "False", "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products"}, "voiceNote": "Door 2 is open now", "rstatus": false}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:41:52.436632Z', 'server_status': 'OrderStatus'} (ID: 1781304112491-0)
[2026-06-13 04:11:52,850.850 INFO    ] {'server_response': {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}
[2026-06-13 04:11:52,851.851 INFO    ] 200
[2026-06-13 04:11:52,853.853 INFO    ] {"data":{"server_response":{"status":"false","error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products"},"voiceNote":"Door 2 is open now","rstatus":false},"order_id":"TM08202203260613041006366","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:11:52,855.855 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'false', 'rstatus': False}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}}
[2026-06-13 04:11:52,856.856 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False}
[2026-06-13 04:11:55,922.922 INFO    ] 200
[2026-06-13 04:11:55,925.925 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:55,928.928 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-13 04:11:58,966.966 INFO    ] 200
[2026-06-13 04:11:58,968.968 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 04:11:58,970.970 INFO    ] {'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-13 04:12:02,119.119 INFO    ] 200
[2026-06-13 04:12:02,123.123 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 04:12:02,137.137 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:12:02,141.141 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:12:02,231.231 INFO    ] [publish_status] Message added to stream with ID: 1781304122188-0
[2026-06-13 04:12:02,234.234 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"status": "True", "delay": 100, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Header": " Order is complete ", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in"}, "voiceNote": "Transaction Completed", "rstatus": true}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:42:02.135010Z', 'server_status': 'OrderStatus'} (ID: 1781304122188-0)
[2026-06-13 04:12:02,645.645 INFO    ] {'server_response': {'status': 'True', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}
[2026-06-13 04:12:02,647.647 INFO    ] 200
[2026-06-13 04:12:02,650.650 INFO    ] {"data":{"server_response":{"status":"true","delay":100,"SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"SectionMain":{"Header":"Door Closed"},"SectionStatus":{"SubHeader":"Please wait for invoice to generate","Header":" Order is complete ","UI_Header":"","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"voiceNote":"Transaction Completed","rstatus":true},"order_id":"TM08202203260613041006366","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:12:02,652.652 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'status': 'true', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'OrderStatus'}}
[2026-06-13 04:12:02,654.654 INFO    ] {'status': 'True', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-13 04:12:02,656.656 INFO    ] 2026-06-13 04:12:02
[2026-06-13 04:12:02,669.669 INFO    ] Order Completed 
[2026-06-13 04:12:02,671.671 INFO    ] Order Completed 
[2026-06-13 04:12:02,673.673 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 04:12:02,675.675 INFO    ] 2026-06-13 04:12:02
[2026-06-13 04:12:02,677.677 INFO    ] playing audio file
[2026-06-13 04:12:02,695.695 INFO    ] 2026-06-13 04:12:02
[2026-06-13 04:12:02,698.698 INFO    ] {'status': 'True', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-13 04:12:02,701.701 INFO    ] 2026-06-13 04:12:02
[2026-06-13 04:12:03,880.880 INFO    ] 200
[2026-06-13 04:12:03,883.883 INFO    ] {"res": "True", "orderId": "TM08202203260613041006366", "skus": [{"image_url": "https://images.tinymart.in/product/4500672-7226.webp", "skuid": "4500672", "door_id": "", "tray_id": "12", "name": "Modern kitchens Garlic Mixture 26gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 04:12:03,887.887 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [{'tray_id': '12', 'unit_price': '10', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'skuid': '4500672'}, {'tray_id': '23', 'unit_price': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'door_id': '', 'skuid': '4500687'}, {'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'qty': 1, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'skuid': '185993'}], 'logic': 'WBL', 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613041006366'}
[2026-06-13 04:12:03,891.891 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [{'tray_id': '12', 'unit_price': '10', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'skuid': '4500672'}, {'tray_id': '23', 'unit_price': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'door_id': '', 'skuid': '4500687'}, {'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'qty': 1, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'skuid': '185993'}], 'logic': 'WBL', 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613041006366'}
[2026-06-13 04:12:03,894.894 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,896.896 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,899.899 INFO    ] 40
[2026-06-13 04:12:03,902.902 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,905.905 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,908.908 INFO    ]  Your Bill Amount is 40
[2026-06-13 04:12:03,912.912 INFO    ]  Your Bill Amount is 40
[2026-06-13 04:12:03,915.915 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 04:12:03,918.918 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,921.921 INFO    ] playing audio file
[2026-06-13 04:12:03,941.941 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,944.944 INFO    ] 2026-06-13 04:12:03
[2026-06-13 04:12:03,949.949 INFO    ] publish_status: order_id=TM08202203260613041006366
[2026-06-13 04:12:03,952.952 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041006366
[2026-06-13 04:12:04,008.008 INFO    ] [publish_status] Message added to stream with ID: 1781304123966-0
[2026-06-13 04:12:04,011.011 INFO    ] Published to order:TM08202203260613041006366: {'server_response': '{"anomaly": 0, "rstatus": true, "skus": [{"tray_id": "12", "unit_price": "10", "name": "Modern kitchens Garlic Mixture 26gm per peice", "mrp": "10", "qty": 1, "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "door_id": "", "skuid": "4500672"}, {"tray_id": "23", "unit_price": "10", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "mrp": "10", "qty": 1, "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500687-5964.webp", "door_id": "", "skuid": "4500687"}, {"tray_id": "43", "unit_price": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "mrp": "20", "qty": 1, "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "", "skuid": "185993"}], "logic": "WBL", "total_amount": 40.0, "res": "True", "orderId": "TM08202203260613041006366"}', 'order_id': 'TM08202203260613041006366', 'timestamp': '2026-06-12T22:42:03.946567Z', 'server_status': 'invoiceOrder'} (ID: 1781304123966-0)
[2026-06-13 04:12:04,129.129 INFO    ] {'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [{'tray_id': '12', 'unit_price': '10', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'skuid': '4500672'}, {'tray_id': '23', 'unit_price': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'door_id': '', 'skuid': '4500687'}, {'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'qty': 1, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'skuid': '185993'}], 'logic': 'WBL', 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613041006366'}, 'order_id': 'TM08202203260613041006366', 'server_status': 'invoiceOrder'}
[2026-06-13 04:12:04,133.133 INFO    ] 200
[2026-06-13 04:12:04,136.136 INFO    ] {"data":{"server_response":{"anomaly":0,"rstatus":true,"skus":[{"tray_id":"12","unit_price":"10","name":"Modern kitchens Garlic Mixture 26gm per peice","mrp":"10","qty":1,"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","door_id":"","skuid":"4500672"},{"tray_id":"23","unit_price":"10","name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","mrp":"10","qty":1,"sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp","door_id":"","skuid":"4500687"},{"tray_id":"43","unit_price":"20","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","mrp":"20","qty":1,"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"","skuid":"185993"}],"logic":"WBL","total_amount":40,"res":"true","orderId":"TM08202203260613041006366"},"order_id":"TM08202203260613041006366","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:12:04,140.140 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'tray_id': '12', 'unit_price': '10', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'skuid': '4500672', 'qty': 1, 'sku_total': 10, 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp'}, {'tray_id': '23', 'unit_price': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'skuid': '4500687', 'qty': 1, 'sku_total': 10, 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'skuid': '185993', 'qty': 1, 'sku_total': 20, 'mrp': '20', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}], 'total_amount': 40, 'orderId': 'TM08202203260613041006366', 'logic': 'WBL', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'invoiceOrder'}}
[2026-06-13 04:12:04,143.143 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'tray_id': '12', 'unit_price': '10', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'skuid': '4500672', 'qty': 1, 'sku_total': 10, 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp'}, {'tray_id': '23', 'unit_price': '10', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'skuid': '4500687', 'qty': 1, 'sku_total': 10, 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'tray_id': '43', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'skuid': '185993', 'qty': 1, 'sku_total': 20, 'mrp': '20', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}], 'total_amount': 40, 'orderId': 'TM08202203260613041006366', 'logic': 'WBL', 'rstatus': True}, 'order_id': 'TM08202203260613041006366', 'server_status': 'invoiceOrder'}}
[2026-06-13 04:12:04,146.146 INFO    ] 2026-06-13 04:12:04
[2026-06-13 04:12:06,109.109 INFO    ] 200
[2026-06-13 04:12:06,112.112 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366", "TM08202203260613041006366"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 04:12:06,117.117 INFO    ] 2026-06-13 04:12:06
[2026-06-13 04:12:06,274.274 INFO    ] 200
[2026-06-13 04:12:06,281.281 INFO    ] True
[2026-06-13 04:12:06,284.284 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613041006366
[2026-06-13 04:12:06,288.288 INFO    ] start order file deleted
[2026-06-13 04:12:06,291.291 INFO    ] Checking for system updates...
[2026-06-13 04:12:06,331.331 INFO    ] 200
[2026-06-13 04:12:06,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:06,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:12:06,414.414 INFO    ] No update needed
[2026-06-13 04:12:06,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:06,496.496 INFO    ] 200
[2026-06-13 04:12:06,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:06,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:06,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:06,605.605 INFO    ] No camera update needed
[2026-06-13 04:12:06,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:06,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:06,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:06,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:12:08,653.653 INFO    ] ================================================
[2026-06-13 04:12:08,669.669 INFO    ] Launching Daemon at Sat Jun 13 04:12:08 IST 2026
[2026-06-13 04:12:08,680.680 INFO    ] ================================================
[2026-06-13 04:12:09,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:12:09
[2026-06-13 04:12:10,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:12:10,232.232 INFO    ] Initializing speech engine...
[2026-06-13 04:12:10,237.237 INFO    ] 2026-06-13 04:12:10
[2026-06-13 04:12:10,446.446 INFO    ] 2026-06-13 04:12:10
[2026-06-13 04:12:10,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:12:10,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:12:10,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:12:10,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:12:10,853.853 INFO    ] time= 13/06/2026 04:12:10
[2026-06-13 04:12:10,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:12:10,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:12:10,963.963 INFO    ] No existing commands found in stream
[2026-06-13 04:12:15,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:12:15,986.986 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 04:12:17,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:12:17,897.897 INFO    ] Checking for system updates...
[2026-06-13 04:12:17,919.919 INFO    ] 200
[2026-06-13 04:12:17,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:17,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:17,952.952 INFO    ] No update needed
[2026-06-13 04:12:17,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:17,974.974 INFO    ] 200
[2026-06-13 04:12:17,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:17,999.999 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:18,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:18,140.140 INFO    ] No camera update needed
[2026-06-13 04:12:18,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:18,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:18,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:18,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:12:20,187.187 INFO    ] ================================================
[2026-06-13 04:12:20,203.203 INFO    ] Launching Daemon at Sat Jun 13 04:12:20 IST 2026
[2026-06-13 04:12:20,215.215 INFO    ] ================================================
[2026-06-13 04:12:20,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:12:20
[2026-06-13 04:12:20,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:12:21,020.020 INFO    ] Initializing speech engine...
[2026-06-13 04:12:21,026.026 INFO    ] 2026-06-13 04:12:21
[2026-06-13 04:12:21,230.230 INFO    ] 2026-06-13 04:12:21
[2026-06-13 04:12:21,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:12:21,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:12:21,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:12:21,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:12:21,618.618 INFO    ] time= 13/06/2026 04:12:21
[2026-06-13 04:12:21,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:12:21,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:12:21,805.805 INFO    ] No existing commands found in stream
[2026-06-13 04:12:26,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:12:26,838.838 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 04:12:28,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:12:28,425.425 INFO    ] Checking for system updates...
[2026-06-13 04:12:28,447.447 INFO    ] 200
[2026-06-13 04:12:28,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:28,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:28,481.481 INFO    ] No update needed
[2026-06-13 04:12:28,482.482 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:28,501.501 INFO    ] 200
[2026-06-13 04:12:28,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:28,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:28,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:12:28,566.566 INFO    ] No camera update needed
[2026-06-13 04:12:28,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:28,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:28,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:28,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:12:30,612.612 INFO    ] ================================================
[2026-06-13 04:12:30,630.630 INFO    ] Launching Daemon at Sat Jun 13 04:12:30 IST 2026
[2026-06-13 04:12:30,641.641 INFO    ] ================================================
[2026-06-13 04:12:30,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:12:30
[2026-06-13 04:12:31,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:12:31,432.432 INFO    ] Initializing speech engine...
[2026-06-13 04:12:31,437.437 INFO    ] 2026-06-13 04:12:31
[2026-06-13 04:12:31,638.638 INFO    ] 2026-06-13 04:12:31
[2026-06-13 04:12:31,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:12:31,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:12:31,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:12:31,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:12:32,036.036 INFO    ] time= 13/06/2026 04:12:31
[2026-06-13 04:12:32,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:12:32,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:12:32,168.168 INFO    ] No existing commands found in stream
[2026-06-13 04:12:37,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:12:37,182.182 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 04:12:38,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:12:38,207.207 INFO    ] Checking for system updates...
[2026-06-13 04:12:38,229.229 INFO    ] 200
[2026-06-13 04:12:38,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:38,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:38,263.263 INFO    ] No update needed
[2026-06-13 04:12:38,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:38,286.286 INFO    ] 200
[2026-06-13 04:12:38,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:38,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:38,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:12:38,351.351 INFO    ] No camera update needed
[2026-06-13 04:12:38,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:38,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:38,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:38,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:12:40,398.398 INFO    ] ================================================
[2026-06-13 04:12:40,414.414 INFO    ] Launching Daemon at Sat Jun 13 04:12:40 IST 2026
[2026-06-13 04:12:40,425.425 INFO    ] ================================================
[2026-06-13 04:12:40,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:12:40
[2026-06-13 04:12:41,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:12:41,228.228 INFO    ] Initializing speech engine...
[2026-06-13 04:12:41,233.233 INFO    ] 2026-06-13 04:12:41
[2026-06-13 04:12:41,438.438 INFO    ] 2026-06-13 04:12:41
[2026-06-13 04:12:41,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:12:41,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:12:41,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:12:41,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:12:41,852.852 INFO    ] time= 13/06/2026 04:12:41
[2026-06-13 04:12:41,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:12:41,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:12:41,959.959 INFO    ] No existing commands found in stream
[2026-06-13 04:12:46,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:12:46,972.972 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 04:12:49,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:12:49,005.005 INFO    ] Checking for system updates...
[2026-06-13 04:12:49,025.025 INFO    ] 200
[2026-06-13 04:12:49,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:49,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:49,058.058 INFO    ] No update needed
[2026-06-13 04:12:49,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:49,080.080 INFO    ] 200
[2026-06-13 04:12:49,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:49,105.105 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:49,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:49,144.144 INFO    ] No camera update needed
[2026-06-13 04:12:49,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:49,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:49,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:49,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:12:51,193.193 INFO    ] ================================================
[2026-06-13 04:12:51,210.210 INFO    ] Launching Daemon at Sat Jun 13 04:12:51 IST 2026
[2026-06-13 04:12:51,221.221 INFO    ] ================================================
[2026-06-13 04:12:51,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:12:51
[2026-06-13 04:12:51,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:12:52,008.008 INFO    ] Initializing speech engine...
[2026-06-13 04:12:52,016.016 INFO    ] 2026-06-13 04:12:52
[2026-06-13 04:12:52,243.243 INFO    ] 2026-06-13 04:12:52
[2026-06-13 04:12:52,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:12:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:12:52,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:12:52,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:12:52,662.662 INFO    ] time= 13/06/2026 04:12:52
[2026-06-13 04:12:52,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:12:52,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:12:52,762.762 INFO    ] No existing commands found in stream
[2026-06-13 04:12:57,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:12:57,775.775 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 04:12:59,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:12:59,024.024 INFO    ] Checking for system updates...
[2026-06-13 04:12:59,047.047 INFO    ] 200
[2026-06-13 04:12:59,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:59,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:59,080.080 INFO    ] No update needed
[2026-06-13 04:12:59,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 04:12:59,100.100 INFO    ] 200
[2026-06-13 04:12:59,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:12:59,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:12:59,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:12:59,163.163 INFO    ] No camera update needed
[2026-06-13 04:12:59,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:12:59,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:12:59,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:12:59,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:01,210.210 INFO    ] ================================================
[2026-06-13 04:13:01,225.225 INFO    ] Launching Daemon at Sat Jun 13 04:13:01 IST 2026
[2026-06-13 04:13:01,237.237 INFO    ] ================================================
[2026-06-13 04:13:01,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:01
[2026-06-13 04:13:02,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:02,368.368 INFO    ] Initializing speech engine...
[2026-06-13 04:13:02,393.393 INFO    ] 2026-06-13 04:13:02
[2026-06-13 04:13:02,696.696 INFO    ] 2026-06-13 04:13:02
[2026-06-13 04:13:02,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:02,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:03,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:03,062.062 INFO    ] time= 13/06/2026 04:13:03
[2026-06-13 04:13:03,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:03,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:03,152.152 INFO    ] No existing commands found in stream
[2026-06-13 04:13:08,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:13:08,169.169 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 04:13:08,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:13:08,810.810 INFO    ] Checking for system updates...
[2026-06-13 04:13:08,831.831 INFO    ] 200
[2026-06-13 04:13:08,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:08,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:08,867.867 INFO    ] No update needed
[2026-06-13 04:13:08,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 04:13:08,889.889 INFO    ] 200
[2026-06-13 04:13:08,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:08,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:13:08,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:08,961.961 INFO    ] No camera update needed
[2026-06-13 04:13:08,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:13:08,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:13:08,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:13:08,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:11,008.008 INFO    ] ================================================
[2026-06-13 04:13:11,024.024 INFO    ] Launching Daemon at Sat Jun 13 04:13:11 IST 2026
[2026-06-13 04:13:11,036.036 INFO    ] ================================================
[2026-06-13 04:13:11,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:11
[2026-06-13 04:13:11,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:11,850.850 INFO    ] Initializing speech engine...
[2026-06-13 04:13:11,854.854 INFO    ] 2026-06-13 04:13:11
[2026-06-13 04:13:12,056.056 INFO    ] 2026-06-13 04:13:12
[2026-06-13 04:13:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:12,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:12,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:12,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:12,470.470 INFO    ] time= 13/06/2026 04:13:12
[2026-06-13 04:13:12,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:12,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:12,570.570 INFO    ] No existing commands found in stream
[2026-06-13 04:13:17,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:13:17,582.582 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 04:13:19,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:13:19,478.478 INFO    ] Checking for system updates...
[2026-06-13 04:13:19,498.498 INFO    ] 200
[2026-06-13 04:13:19,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:19,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:13:19,532.532 INFO    ] No update needed
[2026-06-13 04:13:19,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 04:13:19,554.554 INFO    ] 200
[2026-06-13 04:13:19,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:19,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:13:19,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:19,623.623 INFO    ] No camera update needed
[2026-06-13 04:13:19,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:13:19,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:13:19,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:13:19,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:21,671.671 INFO    ] ================================================
[2026-06-13 04:13:21,686.686 INFO    ] Launching Daemon at Sat Jun 13 04:13:21 IST 2026
[2026-06-13 04:13:21,698.698 INFO    ] ================================================
[2026-06-13 04:13:22,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:22
[2026-06-13 04:13:22,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:22,488.488 INFO    ] Initializing speech engine...
[2026-06-13 04:13:22,494.494 INFO    ] 2026-06-13 04:13:22
[2026-06-13 04:13:22,697.697 INFO    ] 2026-06-13 04:13:22
[2026-06-13 04:13:22,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:22,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:22,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:23,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:23,113.113 INFO    ] time= 13/06/2026 04:13:23
[2026-06-13 04:13:23,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:23,211.211 INFO    ] No existing commands found in stream
[2026-06-13 04:13:28,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:13:28,225.225 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 04:13:31,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:13:31,470.470 INFO    ] Checking for system updates...
[2026-06-13 04:13:31,491.491 INFO    ] 200
[2026-06-13 04:13:31,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:31,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:31,524.524 INFO    ] No update needed
[2026-06-13 04:13:31,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 04:13:31,546.546 INFO    ] 200
[2026-06-13 04:13:31,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:31,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:13:31,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:31,630.630 INFO    ] No camera update needed
[2026-06-13 04:13:31,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:13:31,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:13:31,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:13:31,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:33,674.674 INFO    ] ================================================
[2026-06-13 04:13:33,690.690 INFO    ] Launching Daemon at Sat Jun 13 04:13:33 IST 2026
[2026-06-13 04:13:33,701.701 INFO    ] ================================================
[2026-06-13 04:13:34,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:34
[2026-06-13 04:13:34,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:34,591.591 INFO    ] Initializing speech engine...
[2026-06-13 04:13:34,596.596 INFO    ] 2026-06-13 04:13:34
[2026-06-13 04:13:34,804.804 INFO    ] 2026-06-13 04:13:34
[2026-06-13 04:13:34,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:34,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:35,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:35,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:35,204.204 INFO    ] time= 13/06/2026 04:13:35
[2026-06-13 04:13:35,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:35,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:35,326.326 INFO    ] No existing commands found in stream
[2026-06-13 04:13:40,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:13:40,340.340 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 04:13:44,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:13:44,047.047 INFO    ] Checking for system updates...
[2026-06-13 04:13:44,070.070 INFO    ] 200
[2026-06-13 04:13:44,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:44,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:44,106.106 INFO    ] No update needed
[2026-06-13 04:13:44,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 04:13:44,129.129 INFO    ] 200
[2026-06-13 04:13:44,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:44,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:13:44,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:13:44,203.203 INFO    ] No camera update needed
[2026-06-13 04:13:44,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:13:44,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:13:44,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:13:44,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:46,255.255 INFO    ] ================================================
[2026-06-13 04:13:46,270.270 INFO    ] Launching Daemon at Sat Jun 13 04:13:46 IST 2026
[2026-06-13 04:13:46,281.281 INFO    ] ================================================
[2026-06-13 04:13:46,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:46
[2026-06-13 04:13:46,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:47,162.162 INFO    ] Initializing speech engine...
[2026-06-13 04:13:47,184.184 INFO    ] 2026-06-13 04:13:47
[2026-06-13 04:13:47,445.445 INFO    ] 2026-06-13 04:13:47
[2026-06-13 04:13:47,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:47,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:47,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:47,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:47,889.889 INFO    ] time= 13/06/2026 04:13:47
[2026-06-13 04:13:47,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:47,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:48,070.070 INFO    ] No existing commands found in stream
[2026-06-13 04:13:53,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:13:53,083.083 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 04:13:55,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:13:55,356.356 INFO    ] Checking for system updates...
[2026-06-13 04:13:55,377.377 INFO    ] 200
[2026-06-13 04:13:55,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:55,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:13:55,413.413 INFO    ] No update needed
[2026-06-13 04:13:55,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 04:13:55,437.437 INFO    ] 200
[2026-06-13 04:13:55,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:13:55,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:13:55,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:13:55,525.525 INFO    ] No camera update needed
[2026-06-13 04:13:55,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:13:55,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:13:55,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:13:55,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:13:57,574.574 INFO    ] ================================================
[2026-06-13 04:13:57,590.590 INFO    ] Launching Daemon at Sat Jun 13 04:13:57 IST 2026
[2026-06-13 04:13:57,602.602 INFO    ] ================================================
[2026-06-13 04:13:57,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:13:57
[2026-06-13 04:13:58,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:13:58,519.519 INFO    ] Initializing speech engine...
[2026-06-13 04:13:58,526.526 INFO    ] 2026-06-13 04:13:58
[2026-06-13 04:13:58,789.789 INFO    ] 2026-06-13 04:13:58
[2026-06-13 04:13:58,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:13:59,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:13:59,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:13:59,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:13:59,268.268 INFO    ] time= 13/06/2026 04:13:59
[2026-06-13 04:13:59,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:13:59,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:13:59,488.488 INFO    ] No existing commands found in stream
[2026-06-13 04:14:04,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:04,516.516 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 04:14:06,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:14:06,044.044 INFO    ] Checking for system updates...
[2026-06-13 04:14:06,071.071 INFO    ] 200
[2026-06-13 04:14:06,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:06,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:06,104.104 INFO    ] No update needed
[2026-06-13 04:14:06,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:06,127.127 INFO    ] 200
[2026-06-13 04:14:06,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:06,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:06,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:06,193.193 INFO    ] No camera update needed
[2026-06-13 04:14:06,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:06,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:06,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:06,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:14:08,240.240 INFO    ] ================================================
[2026-06-13 04:14:08,256.256 INFO    ] Launching Daemon at Sat Jun 13 04:14:08 IST 2026
[2026-06-13 04:14:08,267.267 INFO    ] ================================================
[2026-06-13 04:14:08,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:14:08
[2026-06-13 04:14:08,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:14:09,132.132 INFO    ] Initializing speech engine...
[2026-06-13 04:14:09,136.136 INFO    ] 2026-06-13 04:14:09
[2026-06-13 04:14:09,352.352 INFO    ] 2026-06-13 04:14:09
[2026-06-13 04:14:09,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:14:09,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:14:09,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:14:09,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:14:09,796.796 INFO    ] time= 13/06/2026 04:14:09
[2026-06-13 04:14:09,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:14:09,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:14:09,954.954 INFO    ] No existing commands found in stream
[2026-06-13 04:14:14,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:14,974.974 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 04:14:16,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:14:16,379.379 INFO    ] Checking for system updates...
[2026-06-13 04:14:16,402.402 INFO    ] 200
[2026-06-13 04:14:16,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:16,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:16,436.436 INFO    ] No update needed
[2026-06-13 04:14:16,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:16,457.457 INFO    ] 200
[2026-06-13 04:14:16,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:16,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:16,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:14:16,523.523 INFO    ] No camera update needed
[2026-06-13 04:14:16,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:16,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:16,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:16,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:14:18,572.572 INFO    ] ================================================
[2026-06-13 04:14:18,587.587 INFO    ] Launching Daemon at Sat Jun 13 04:14:18 IST 2026
[2026-06-13 04:14:18,598.598 INFO    ] ================================================
[2026-06-13 04:14:18,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:14:18
[2026-06-13 04:14:19,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:14:19,406.406 INFO    ] Initializing speech engine...
[2026-06-13 04:14:19,411.411 INFO    ] 2026-06-13 04:14:19
[2026-06-13 04:14:19,616.616 INFO    ] 2026-06-13 04:14:19
[2026-06-13 04:14:19,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:14:19,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:14:19,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:14:19,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:14:19,995.995 INFO    ] time= 13/06/2026 04:14:19
[2026-06-13 04:14:20,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:14:20,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:14:20,137.137 INFO    ] No existing commands found in stream
[2026-06-13 04:14:25,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:25,153.153 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 04:14:26,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:14:26,724.724 INFO    ] Checking for system updates...
[2026-06-13 04:14:26,752.752 INFO    ] 200
[2026-06-13 04:14:26,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:26,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:26,786.786 INFO    ] No update needed
[2026-06-13 04:14:26,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:26,811.811 INFO    ] 200
[2026-06-13 04:14:26,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:26,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:26,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:14:26,975.975 INFO    ] No camera update needed
[2026-06-13 04:14:26,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:26,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:26,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:26,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:14:29,021.021 INFO    ] ================================================
[2026-06-13 04:14:29,037.037 INFO    ] Launching Daemon at Sat Jun 13 04:14:29 IST 2026
[2026-06-13 04:14:29,048.048 INFO    ] ================================================
[2026-06-13 04:14:29,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:14:29
[2026-06-13 04:14:29,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:14:29,827.827 INFO    ] Initializing speech engine...
[2026-06-13 04:14:29,837.837 INFO    ] 2026-06-13 04:14:29
[2026-06-13 04:14:30,041.041 INFO    ] 2026-06-13 04:14:30
[2026-06-13 04:14:30,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:14:30,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:14:30,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:14:30,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:14:30,447.447 INFO    ] time= 13/06/2026 04:14:30
[2026-06-13 04:14:30,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:14:30,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:14:30,559.559 INFO    ] No existing commands found in stream
[2026-06-13 04:14:35,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:35,577.577 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 04:14:36,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:14:36,953.953 INFO    ] Checking for system updates...
[2026-06-13 04:14:36,974.974 INFO    ] 200
[2026-06-13 04:14:36,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:37,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:37,011.011 INFO    ] No update needed
[2026-06-13 04:14:37,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:37,032.032 INFO    ] 200
[2026-06-13 04:14:37,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:37,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:37,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:37,109.109 INFO    ] No camera update needed
[2026-06-13 04:14:37,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:37,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:37,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:37,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:14:39,159.159 INFO    ] ================================================
[2026-06-13 04:14:39,175.175 INFO    ] Launching Daemon at Sat Jun 13 04:14:39 IST 2026
[2026-06-13 04:14:39,187.187 INFO    ] ================================================
[2026-06-13 04:14:39,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:14:39
[2026-06-13 04:14:39,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:14:40,023.023 INFO    ] Initializing speech engine...
[2026-06-13 04:14:40,029.029 INFO    ] 2026-06-13 04:14:40
[2026-06-13 04:14:40,237.237 INFO    ] 2026-06-13 04:14:40
[2026-06-13 04:14:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:14:40,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:14:40,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:14:40,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:14:40,656.656 INFO    ] time= 13/06/2026 04:14:40
[2026-06-13 04:14:40,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:14:40,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:14:40,755.755 INFO    ] No existing commands found in stream
[2026-06-13 04:14:45,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:45,773.773 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 04:14:49,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:14:49,101.101 INFO    ] Checking for system updates...
[2026-06-13 04:14:49,125.125 INFO    ] 200
[2026-06-13 04:14:49,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:49,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:14:49,159.159 INFO    ] No update needed
[2026-06-13 04:14:49,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:49,181.181 INFO    ] 200
[2026-06-13 04:14:49,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:49,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:49,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:14:49,244.244 INFO    ] No camera update needed
[2026-06-13 04:14:49,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:49,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:49,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:49,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:14:51,293.293 INFO    ] ================================================
[2026-06-13 04:14:51,309.309 INFO    ] Launching Daemon at Sat Jun 13 04:14:51 IST 2026
[2026-06-13 04:14:51,320.320 INFO    ] ================================================
[2026-06-13 04:14:51,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:14:51
[2026-06-13 04:14:52,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:14:52,167.167 INFO    ] Initializing speech engine...
[2026-06-13 04:14:52,171.171 INFO    ] 2026-06-13 04:14:52
[2026-06-13 04:14:52,379.379 INFO    ] 2026-06-13 04:14:52
[2026-06-13 04:14:52,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:14:52,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:14:52,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:14:52,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:14:52,786.786 INFO    ] time= 13/06/2026 04:14:52
[2026-06-13 04:14:52,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:14:52,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:14:52,896.896 INFO    ] No existing commands found in stream
[2026-06-13 04:14:57,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:14:57,911.911 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 04:14:58,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:14:58,982.982 INFO    ] Checking for system updates...
[2026-06-13 04:14:59,004.004 INFO    ] 200
[2026-06-13 04:14:59,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:59,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:59,041.041 INFO    ] No update needed
[2026-06-13 04:14:59,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 04:14:59,064.064 INFO    ] 200
[2026-06-13 04:14:59,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:14:59,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:14:59,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:14:59,130.130 INFO    ] No camera update needed
[2026-06-13 04:14:59,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:14:59,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:14:59,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:14:59,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:01,179.179 INFO    ] ================================================
[2026-06-13 04:15:01,194.194 INFO    ] Launching Daemon at Sat Jun 13 04:15:01 IST 2026
[2026-06-13 04:15:01,205.205 INFO    ] ================================================
[2026-06-13 04:15:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:01
[2026-06-13 04:15:02,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:02,489.489 INFO    ] Initializing speech engine...
[2026-06-13 04:15:02,496.496 INFO    ] 2026-06-13 04:15:02
[2026-06-13 04:15:02,750.750 INFO    ] 2026-06-13 04:15:02
[2026-06-13 04:15:02,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:02,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:02,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:03,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:03,127.127 INFO    ] time= 13/06/2026 04:15:03
[2026-06-13 04:15:03,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:03,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:03,296.296 INFO    ] No existing commands found in stream
[2026-06-13 04:15:08,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:15:08,310.310 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 04:15:11,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:15:11,453.453 INFO    ] Checking for system updates...
[2026-06-13 04:15:11,475.475 INFO    ] 200
[2026-06-13 04:15:11,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:11,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:15:11,509.509 INFO    ] No update needed
[2026-06-13 04:15:11,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 04:15:11,531.531 INFO    ] 200
[2026-06-13 04:15:11,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:11,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:15:11,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:15:11,594.594 INFO    ] No camera update needed
[2026-06-13 04:15:11,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:15:11,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:15:11,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:15:11,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:13,642.642 INFO    ] ================================================
[2026-06-13 04:15:13,659.659 INFO    ] Launching Daemon at Sat Jun 13 04:15:13 IST 2026
[2026-06-13 04:15:13,670.670 INFO    ] ================================================
[2026-06-13 04:15:14,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:14
[2026-06-13 04:15:14,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:14,533.533 INFO    ] Initializing speech engine...
[2026-06-13 04:15:14,538.538 INFO    ] 2026-06-13 04:15:14
[2026-06-13 04:15:14,749.749 INFO    ] 2026-06-13 04:15:14
[2026-06-13 04:15:14,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:14,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:14,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:15,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:15,149.149 INFO    ] time= 13/06/2026 04:15:15
[2026-06-13 04:15:15,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:15,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:15,271.271 INFO    ] No existing commands found in stream
[2026-06-13 04:15:20,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:15:20,285.285 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 04:15:22,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:15:22,168.168 INFO    ] Checking for system updates...
[2026-06-13 04:15:22,189.189 INFO    ] 200
[2026-06-13 04:15:22,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:22,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:15:22,223.223 INFO    ] No update needed
[2026-06-13 04:15:22,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 04:15:22,244.244 INFO    ] 200
[2026-06-13 04:15:22,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:22,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:15:22,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:15:22,311.311 INFO    ] No camera update needed
[2026-06-13 04:15:22,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:15:22,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:15:22,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:15:22,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:24,360.360 INFO    ] ================================================
[2026-06-13 04:15:24,377.377 INFO    ] Launching Daemon at Sat Jun 13 04:15:24 IST 2026
[2026-06-13 04:15:24,389.389 INFO    ] ================================================
[2026-06-13 04:15:24,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:24
[2026-06-13 04:15:25,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:25,202.202 INFO    ] Initializing speech engine...
[2026-06-13 04:15:25,208.208 INFO    ] 2026-06-13 04:15:25
[2026-06-13 04:15:25,410.410 INFO    ] 2026-06-13 04:15:25
[2026-06-13 04:15:25,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:25,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:25,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:25,816.816 INFO    ] time= 13/06/2026 04:15:25
[2026-06-13 04:15:25,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:25,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:26,042.042 INFO    ] No existing commands found in stream
[2026-06-13 04:15:31,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:15:31,055.055 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 04:15:32,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:15:32,202.202 INFO    ] Checking for system updates...
[2026-06-13 04:15:32,228.228 INFO    ] 200
[2026-06-13 04:15:32,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:32,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:32,266.266 INFO    ] No update needed
[2026-06-13 04:15:32,268.268 INFO    ] Checking for camera pi updates...
[2026-06-13 04:15:32,291.291 INFO    ] 200
[2026-06-13 04:15:32,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:32,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:15:32,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:32,343.343 INFO    ] No camera update needed
[2026-06-13 04:15:32,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:15:32,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:15:32,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:15:32,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:34,395.395 INFO    ] ================================================
[2026-06-13 04:15:34,411.411 INFO    ] Launching Daemon at Sat Jun 13 04:15:34 IST 2026
[2026-06-13 04:15:34,422.422 INFO    ] ================================================
[2026-06-13 04:15:34,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:34
[2026-06-13 04:15:35,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:35,274.274 INFO    ] Initializing speech engine...
[2026-06-13 04:15:35,279.279 INFO    ] 2026-06-13 04:15:35
[2026-06-13 04:15:35,487.487 INFO    ] 2026-06-13 04:15:35
[2026-06-13 04:15:35,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:35,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:35,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:35,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:35,892.892 INFO    ] time= 13/06/2026 04:15:35
[2026-06-13 04:15:35,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:35,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:36,003.003 INFO    ] No existing commands found in stream
[2026-06-13 04:15:41,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:15:41,016.016 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 04:15:42,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:15:42,014.014 INFO    ] Checking for system updates...
[2026-06-13 04:15:42,035.035 INFO    ] 200
[2026-06-13 04:15:42,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:42,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:42,071.071 INFO    ] No update needed
[2026-06-13 04:15:42,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 04:15:42,095.095 INFO    ] 200
[2026-06-13 04:15:42,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:42,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:15:42,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:42,159.159 INFO    ] No camera update needed
[2026-06-13 04:15:42,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:15:42,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:15:42,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:15:42,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:44,208.208 INFO    ] ================================================
[2026-06-13 04:15:44,224.224 INFO    ] Launching Daemon at Sat Jun 13 04:15:44 IST 2026
[2026-06-13 04:15:44,235.235 INFO    ] ================================================
[2026-06-13 04:15:44,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:44
[2026-06-13 04:15:45,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:45,495.495 INFO    ] Initializing speech engine...
[2026-06-13 04:15:45,504.504 INFO    ] 2026-06-13 04:15:45
[2026-06-13 04:15:45,752.752 INFO    ] 2026-06-13 04:15:45
[2026-06-13 04:15:45,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:45,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:45,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:46,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:46,093.093 INFO    ] time= 13/06/2026 04:15:46
[2026-06-13 04:15:46,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:46,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:46,207.207 INFO    ] No existing commands found in stream
[2026-06-13 04:15:51,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:15:51,222.222 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 04:15:54,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:15:54,126.126 INFO    ] Checking for system updates...
[2026-06-13 04:15:54,147.147 INFO    ] 200
[2026-06-13 04:15:54,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:54,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:54,180.180 INFO    ] No update needed
[2026-06-13 04:15:54,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 04:15:54,201.201 INFO    ] 200
[2026-06-13 04:15:54,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:15:54,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:15:54,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:15:54,272.272 INFO    ] No camera update needed
[2026-06-13 04:15:54,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:15:54,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:15:54,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:15:54,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:15:56,322.322 INFO    ] ================================================
[2026-06-13 04:15:56,342.342 INFO    ] Launching Daemon at Sat Jun 13 04:15:56 IST 2026
[2026-06-13 04:15:56,353.353 INFO    ] ================================================
[2026-06-13 04:15:56,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:15:56
[2026-06-13 04:15:57,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:15:57,151.151 INFO    ] Initializing speech engine...
[2026-06-13 04:15:57,155.155 INFO    ] 2026-06-13 04:15:57
[2026-06-13 04:15:57,360.360 INFO    ] 2026-06-13 04:15:57
[2026-06-13 04:15:57,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:15:57,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:15:57,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:15:57,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:15:57,767.767 INFO    ] time= 13/06/2026 04:15:57
[2026-06-13 04:15:57,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:15:57,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:15:57,914.914 INFO    ] No existing commands found in stream
[2026-06-13 04:16:02,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:02,935.935 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 04:16:06,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:16:06,012.012 INFO    ] Checking for system updates...
[2026-06-13 04:16:06,033.033 INFO    ] 200
[2026-06-13 04:16:06,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:06,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:06,066.066 INFO    ] No update needed
[2026-06-13 04:16:06,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:06,087.087 INFO    ] 200
[2026-06-13 04:16:06,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:06,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:06,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:06,152.152 INFO    ] No camera update needed
[2026-06-13 04:16:06,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:06,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:06,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:06,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:16:08,203.203 INFO    ] ================================================
[2026-06-13 04:16:08,220.220 INFO    ] Launching Daemon at Sat Jun 13 04:16:08 IST 2026
[2026-06-13 04:16:08,230.230 INFO    ] ================================================
[2026-06-13 04:16:08,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:16:08
[2026-06-13 04:16:08,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:16:09,003.003 INFO    ] Initializing speech engine...
[2026-06-13 04:16:09,015.015 INFO    ] 2026-06-13 04:16:09
[2026-06-13 04:16:09,224.224 INFO    ] 2026-06-13 04:16:09
[2026-06-13 04:16:09,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:16:09,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:16:09,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:16:09,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:16:09,631.631 INFO    ] time= 13/06/2026 04:16:09
[2026-06-13 04:16:09,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:16:09,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:16:09,742.742 INFO    ] No existing commands found in stream
[2026-06-13 04:16:14,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:14,755.755 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 04:16:17,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:16:17,282.282 INFO    ] Checking for system updates...
[2026-06-13 04:16:17,305.305 INFO    ] 200
[2026-06-13 04:16:17,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:17,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:17,338.338 INFO    ] No update needed
[2026-06-13 04:16:17,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:17,359.359 INFO    ] 200
[2026-06-13 04:16:17,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:17,384.384 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:17,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:17,413.413 INFO    ] No camera update needed
[2026-06-13 04:16:17,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:17,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:17,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:17,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:16:19,462.462 INFO    ] ================================================
[2026-06-13 04:16:19,478.478 INFO    ] Launching Daemon at Sat Jun 13 04:16:19 IST 2026
[2026-06-13 04:16:19,490.490 INFO    ] ================================================
[2026-06-13 04:16:19,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:16:19
[2026-06-13 04:16:20,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:16:20,296.296 INFO    ] Initializing speech engine...
[2026-06-13 04:16:20,300.300 INFO    ] 2026-06-13 04:16:20
[2026-06-13 04:16:20,506.506 INFO    ] 2026-06-13 04:16:20
[2026-06-13 04:16:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:16:20,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:16:20,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:16:20,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:16:20,927.927 INFO    ] time= 13/06/2026 04:16:20
[2026-06-13 04:16:20,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:16:20,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:16:21,021.021 INFO    ] No existing commands found in stream
[2026-06-13 04:16:26,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:26,035.035 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 04:16:27,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:16:27,470.470 INFO    ] Checking for system updates...
[2026-06-13 04:16:27,490.490 INFO    ] 200
[2026-06-13 04:16:27,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:27,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:27,524.524 INFO    ] No update needed
[2026-06-13 04:16:27,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:27,544.544 INFO    ] 200
[2026-06-13 04:16:27,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:27,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:27,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:27,711.711 INFO    ] No camera update needed
[2026-06-13 04:16:27,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:27,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:27,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:27,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:16:29,761.761 INFO    ] ================================================
[2026-06-13 04:16:29,777.777 INFO    ] Launching Daemon at Sat Jun 13 04:16:29 IST 2026
[2026-06-13 04:16:29,789.789 INFO    ] ================================================
[2026-06-13 04:16:30,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:16:30
[2026-06-13 04:16:30,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:16:30,691.691 INFO    ] Initializing speech engine...
[2026-06-13 04:16:30,698.698 INFO    ] 2026-06-13 04:16:30
[2026-06-13 04:16:30,908.908 INFO    ] 2026-06-13 04:16:30
[2026-06-13 04:16:30,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:16:31,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:16:31,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:16:31,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:16:31,371.371 INFO    ] time= 13/06/2026 04:16:31
[2026-06-13 04:16:31,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:16:31,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:16:31,450.450 INFO    ] No existing commands found in stream
[2026-06-13 04:16:36,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:36,465.465 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 04:16:39,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:16:39,537.537 INFO    ] Checking for system updates...
[2026-06-13 04:16:39,560.560 INFO    ] 200
[2026-06-13 04:16:39,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:39,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:39,594.594 INFO    ] No update needed
[2026-06-13 04:16:39,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:39,616.616 INFO    ] 200
[2026-06-13 04:16:39,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:39,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:39,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:39,687.687 INFO    ] No camera update needed
[2026-06-13 04:16:39,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:39,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:39,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:39,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:16:41,738.738 INFO    ] ================================================
[2026-06-13 04:16:41,754.754 INFO    ] Launching Daemon at Sat Jun 13 04:16:41 IST 2026
[2026-06-13 04:16:41,766.766 INFO    ] ================================================
[2026-06-13 04:16:42,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:16:42
[2026-06-13 04:16:42,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:16:42,553.553 INFO    ] Initializing speech engine...
[2026-06-13 04:16:42,557.557 INFO    ] 2026-06-13 04:16:42
[2026-06-13 04:16:42,775.775 INFO    ] 2026-06-13 04:16:42
[2026-06-13 04:16:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:16:42,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:16:42,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:16:43,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:16:43,191.191 INFO    ] time= 13/06/2026 04:16:43
[2026-06-13 04:16:43,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:16:43,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:16:43,293.293 INFO    ] No existing commands found in stream
[2026-06-13 04:16:48,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:48,306.306 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 04:16:48,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:16:48,741.741 INFO    ] Checking for system updates...
[2026-06-13 04:16:48,762.762 INFO    ] 200
[2026-06-13 04:16:48,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:48,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:48,798.798 INFO    ] No update needed
[2026-06-13 04:16:48,800.800 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:48,820.820 INFO    ] 200
[2026-06-13 04:16:48,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:48,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:48,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:16:48,883.883 INFO    ] No camera update needed
[2026-06-13 04:16:48,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:48,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:48,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:48,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:16:50,931.931 INFO    ] ================================================
[2026-06-13 04:16:50,947.947 INFO    ] Launching Daemon at Sat Jun 13 04:16:50 IST 2026
[2026-06-13 04:16:50,958.958 INFO    ] ================================================
[2026-06-13 04:16:51,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:16:51
[2026-06-13 04:16:51,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:16:51,764.764 INFO    ] Initializing speech engine...
[2026-06-13 04:16:51,767.767 INFO    ] 2026-06-13 04:16:51
[2026-06-13 04:16:51,972.972 INFO    ] 2026-06-13 04:16:51
[2026-06-13 04:16:52,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:16:52,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:16:52,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:16:52,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:16:52,418.418 INFO    ] time= 13/06/2026 04:16:52
[2026-06-13 04:16:52,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:16:52,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:16:52,621.621 INFO    ] No existing commands found in stream
[2026-06-13 04:16:57,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:16:57,655.655 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 04:16:58,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:16:58,404.404 INFO    ] Checking for system updates...
[2026-06-13 04:16:58,427.427 INFO    ] 200
[2026-06-13 04:16:58,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:58,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:58,461.461 INFO    ] No update needed
[2026-06-13 04:16:58,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 04:16:58,482.482 INFO    ] 200
[2026-06-13 04:16:58,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:16:58,507.507 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:16:58,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:16:58,545.545 INFO    ] No camera update needed
[2026-06-13 04:16:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:16:58,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:16:58,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:16:58,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:00,593.593 INFO    ] ================================================
[2026-06-13 04:17:00,609.609 INFO    ] Launching Daemon at Sat Jun 13 04:17:00 IST 2026
[2026-06-13 04:17:00,620.620 INFO    ] ================================================
[2026-06-13 04:17:00,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:00
[2026-06-13 04:17:01,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:01,415.415 INFO    ] Initializing speech engine...
[2026-06-13 04:17:01,423.423 INFO    ] 2026-06-13 04:17:01
[2026-06-13 04:17:01,637.637 INFO    ] 2026-06-13 04:17:01
[2026-06-13 04:17:01,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:01,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:01,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:01,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:01,872.872 INFO    ] time= 13/06/2026 04:17:01
[2026-06-13 04:17:01,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:01,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:01,989.989 INFO    ] No existing commands found in stream
[2026-06-13 04:17:06,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:17:07,002.002 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 04:17:07,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:17:07,797.797 INFO    ] Checking for system updates...
[2026-06-13 04:17:07,818.818 INFO    ] 200
[2026-06-13 04:17:07,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:07,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:07,851.851 INFO    ] No update needed
[2026-06-13 04:17:07,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 04:17:07,873.873 INFO    ] 200
[2026-06-13 04:17:07,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:07,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:17:07,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:07,935.935 INFO    ] No camera update needed
[2026-06-13 04:17:07,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:17:07,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:17:07,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:17:07,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:09,984.984 INFO    ] ================================================
[2026-06-13 04:17:10,001.001 INFO    ] Launching Daemon at Sat Jun 13 04:17:09 IST 2026
[2026-06-13 04:17:10,012.012 INFO    ] ================================================
[2026-06-13 04:17:10,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:10
[2026-06-13 04:17:10,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:10,835.835 INFO    ] Initializing speech engine...
[2026-06-13 04:17:10,844.844 INFO    ] 2026-06-13 04:17:10
[2026-06-13 04:17:11,065.065 INFO    ] 2026-06-13 04:17:11
[2026-06-13 04:17:11,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:11,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:11,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:11,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:11,307.307 INFO    ] time= 13/06/2026 04:17:11
[2026-06-13 04:17:11,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:11,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:11,399.399 INFO    ] No existing commands found in stream
[2026-06-13 04:17:16,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:17:16,429.429 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 04:17:19,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:17:19,406.406 INFO    ] Checking for system updates...
[2026-06-13 04:17:19,427.427 INFO    ] 200
[2026-06-13 04:17:19,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:19,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:19,461.461 INFO    ] No update needed
[2026-06-13 04:17:19,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 04:17:19,481.481 INFO    ] 200
[2026-06-13 04:17:19,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:19,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:17:19,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:19,535.535 INFO    ] No camera update needed
[2026-06-13 04:17:19,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:17:19,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:17:19,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:17:19,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:21,584.584 INFO    ] ================================================
[2026-06-13 04:17:21,600.600 INFO    ] Launching Daemon at Sat Jun 13 04:17:21 IST 2026
[2026-06-13 04:17:21,612.612 INFO    ] ================================================
[2026-06-13 04:17:21,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:21
[2026-06-13 04:17:22,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:22,385.385 INFO    ] Initializing speech engine...
[2026-06-13 04:17:22,393.393 INFO    ] 2026-06-13 04:17:22
[2026-06-13 04:17:22,608.608 INFO    ] 2026-06-13 04:17:22
[2026-06-13 04:17:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:22,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:22,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:22,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:23,013.013 INFO    ] time= 13/06/2026 04:17:22
[2026-06-13 04:17:23,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:23,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:23,130.130 INFO    ] No existing commands found in stream
[2026-06-13 04:17:28,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:17:28,143.143 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 04:17:28,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:17:28,481.481 INFO    ] Checking for system updates...
[2026-06-13 04:17:28,502.502 INFO    ] 200
[2026-06-13 04:17:28,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:28,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:17:28,535.535 INFO    ] No update needed
[2026-06-13 04:17:28,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 04:17:28,558.558 INFO    ] 200
[2026-06-13 04:17:28,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:28,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:17:28,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:17:28,627.627 INFO    ] No camera update needed
[2026-06-13 04:17:28,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:17:28,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:17:28,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:17:28,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:30,676.676 INFO    ] ================================================
[2026-06-13 04:17:30,692.692 INFO    ] Launching Daemon at Sat Jun 13 04:17:30 IST 2026
[2026-06-13 04:17:30,703.703 INFO    ] ================================================
[2026-06-13 04:17:31,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:31
[2026-06-13 04:17:31,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:31,555.555 INFO    ] Initializing speech engine...
[2026-06-13 04:17:31,559.559 INFO    ] 2026-06-13 04:17:31
[2026-06-13 04:17:31,780.780 INFO    ] 2026-06-13 04:17:31
[2026-06-13 04:17:31,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:31,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:31,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:32,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:32,230.230 INFO    ] time= 13/06/2026 04:17:32
[2026-06-13 04:17:32,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:32,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:32,335.335 INFO    ] No existing commands found in stream
[2026-06-13 04:17:37,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:17:37,349.349 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 04:17:41,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:17:41,296.296 INFO    ] Checking for system updates...
[2026-06-13 04:17:41,319.319 INFO    ] 200
[2026-06-13 04:17:41,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:41,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:41,355.355 INFO    ] No update needed
[2026-06-13 04:17:41,356.356 INFO    ] Checking for camera pi updates...
[2026-06-13 04:17:41,377.377 INFO    ] 200
[2026-06-13 04:17:41,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:41,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:17:41,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:41,449.449 INFO    ] No camera update needed
[2026-06-13 04:17:41,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:17:41,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:17:41,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:17:41,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:43,495.495 INFO    ] ================================================
[2026-06-13 04:17:43,511.511 INFO    ] Launching Daemon at Sat Jun 13 04:17:43 IST 2026
[2026-06-13 04:17:43,523.523 INFO    ] ================================================
[2026-06-13 04:17:43,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:43
[2026-06-13 04:17:44,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:44,337.337 INFO    ] Initializing speech engine...
[2026-06-13 04:17:44,348.348 INFO    ] 2026-06-13 04:17:44
[2026-06-13 04:17:44,552.552 INFO    ] 2026-06-13 04:17:44
[2026-06-13 04:17:44,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:44,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:44,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:44,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:44,952.952 INFO    ] time= 13/06/2026 04:17:44
[2026-06-13 04:17:44,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:44,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:45,068.068 INFO    ] No existing commands found in stream
[2026-06-13 04:17:50,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:17:50,079.079 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 04:17:52,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:17:52,331.331 INFO    ] Checking for system updates...
[2026-06-13 04:17:52,352.352 INFO    ] 200
[2026-06-13 04:17:52,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:52,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:52,386.386 INFO    ] No update needed
[2026-06-13 04:17:52,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 04:17:52,407.407 INFO    ] 200
[2026-06-13 04:17:52,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:17:52,431.431 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:17:52,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:17:52,471.471 INFO    ] No camera update needed
[2026-06-13 04:17:52,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:17:52,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:17:52,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:17:52,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:17:54,520.520 INFO    ] ================================================
[2026-06-13 04:17:54,536.536 INFO    ] Launching Daemon at Sat Jun 13 04:17:54 IST 2026
[2026-06-13 04:17:54,547.547 INFO    ] ================================================
[2026-06-13 04:17:54,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:17:54
[2026-06-13 04:17:55,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:17:55,440.440 INFO    ] Initializing speech engine...
[2026-06-13 04:17:55,445.445 INFO    ] 2026-06-13 04:17:55
[2026-06-13 04:17:55,656.656 INFO    ] 2026-06-13 04:17:55
[2026-06-13 04:17:55,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:17:55,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:17:55,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:17:56,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:17:56,069.069 INFO    ] time= 13/06/2026 04:17:56
[2026-06-13 04:17:56,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:17:56,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:17:56,180.180 INFO    ] No existing commands found in stream
[2026-06-13 04:18:01,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:01,197.197 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 04:18:04,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:18:04,532.532 INFO    ] Checking for system updates...
[2026-06-13 04:18:04,555.555 INFO    ] 200
[2026-06-13 04:18:04,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:04,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:04,593.593 INFO    ] No update needed
[2026-06-13 04:18:04,594.594 INFO    ] Checking for camera pi updates...
[2026-06-13 04:18:04,615.615 INFO    ] 200
[2026-06-13 04:18:04,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:04,640.640 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:18:04,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:04,677.677 INFO    ] No camera update needed
[2026-06-13 04:18:04,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:18:04,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:18:04,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:18:04,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:18:06,726.726 INFO    ] ================================================
[2026-06-13 04:18:06,742.742 INFO    ] Launching Daemon at Sat Jun 13 04:18:06 IST 2026
[2026-06-13 04:18:06,753.753 INFO    ] ================================================
[2026-06-13 04:18:07,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:18:07
[2026-06-13 04:18:07,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:18:07,538.538 INFO    ] Initializing speech engine...
[2026-06-13 04:18:07,543.543 INFO    ] 2026-06-13 04:18:07
[2026-06-13 04:18:07,750.750 INFO    ] 2026-06-13 04:18:07
[2026-06-13 04:18:07,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:18:07,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:18:07,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:18:08,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:18:08,158.158 INFO    ] time= 13/06/2026 04:18:08
[2026-06-13 04:18:08,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:18:08,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:18:08,276.276 INFO    ] No existing commands found in stream
[2026-06-13 04:18:13,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:13,290.290 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 04:18:13,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:18:13,969.969 INFO    ] Checking for system updates...
[2026-06-13 04:18:13,990.990 INFO    ] 200
[2026-06-13 04:18:13,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:14,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:18:14,024.024 INFO    ] No update needed
[2026-06-13 04:18:14,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 04:18:14,044.044 INFO    ] 200
[2026-06-13 04:18:14,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:14,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:18:14,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:18:14,111.111 INFO    ] No camera update needed
[2026-06-13 04:18:14,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:18:14,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:18:14,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:18:14,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:18:16,159.159 INFO    ] ================================================
[2026-06-13 04:18:16,175.175 INFO    ] Launching Daemon at Sat Jun 13 04:18:16 IST 2026
[2026-06-13 04:18:16,187.187 INFO    ] ================================================
[2026-06-13 04:18:16,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:18:16
[2026-06-13 04:18:16,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:18:17,029.029 INFO    ] Initializing speech engine...
[2026-06-13 04:18:17,033.033 INFO    ] 2026-06-13 04:18:17
[2026-06-13 04:18:17,259.259 INFO    ] 2026-06-13 04:18:17
[2026-06-13 04:18:17,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:18:17,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:18:17,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:18:17,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:18:17,684.684 INFO    ] time= 13/06/2026 04:18:17
[2026-06-13 04:18:17,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:18:17,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:18:17,786.786 INFO    ] No existing commands found in stream
[2026-06-13 04:18:22,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:22,801.801 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 04:18:26,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:18:26,700.700 INFO    ] Checking for system updates...
[2026-06-13 04:18:26,721.721 INFO    ] 200
[2026-06-13 04:18:26,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:26,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:18:26,756.756 INFO    ] No update needed
[2026-06-13 04:18:26,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 04:18:26,777.777 INFO    ] 200
[2026-06-13 04:18:26,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:26,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:18:26,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:18:26,847.847 INFO    ] No camera update needed
[2026-06-13 04:18:26,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:18:26,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:18:26,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:18:26,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:18:28,895.895 INFO    ] ================================================
[2026-06-13 04:18:28,911.911 INFO    ] Launching Daemon at Sat Jun 13 04:18:28 IST 2026
[2026-06-13 04:18:28,922.922 INFO    ] ================================================
[2026-06-13 04:18:29,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:18:29
[2026-06-13 04:18:29,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:18:29,747.747 INFO    ] Initializing speech engine...
[2026-06-13 04:18:29,752.752 INFO    ] 2026-06-13 04:18:29
[2026-06-13 04:18:29,955.955 INFO    ] 2026-06-13 04:18:29
[2026-06-13 04:18:29,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:18:30,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:18:30,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:18:30,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:18:30,360.360 INFO    ] time= 13/06/2026 04:18:30
[2026-06-13 04:18:30,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:18:30,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:18:30,469.469 INFO    ] No existing commands found in stream
[2026-06-13 04:18:35,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:35,482.482 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 04:18:36,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:18:36,733.733 INFO    ] Checking for system updates...
[2026-06-13 04:18:36,753.753 INFO    ] 200
[2026-06-13 04:18:36,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:36,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:36,790.790 INFO    ] No update needed
[2026-06-13 04:18:36,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 04:18:36,812.812 INFO    ] 200
[2026-06-13 04:18:36,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:36,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:18:36,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:36,886.886 INFO    ] No camera update needed
[2026-06-13 04:18:36,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:18:36,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:18:36,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:18:36,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:18:38,935.935 INFO    ] ================================================
[2026-06-13 04:18:38,951.951 INFO    ] Launching Daemon at Sat Jun 13 04:18:38 IST 2026
[2026-06-13 04:18:38,962.962 INFO    ] ================================================
[2026-06-13 04:18:39,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:18:39
[2026-06-13 04:18:39,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:18:39,773.773 INFO    ] Initializing speech engine...
[2026-06-13 04:18:39,777.777 INFO    ] 2026-06-13 04:18:39
[2026-06-13 04:18:39,996.996 INFO    ] 2026-06-13 04:18:39
[2026-06-13 04:18:40,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:18:40,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:18:40,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:18:40,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:18:40,407.407 INFO    ] time= 13/06/2026 04:18:40
[2026-06-13 04:18:40,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:18:40,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:18:40,519.519 INFO    ] No existing commands found in stream
[2026-06-13 04:18:45,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:45,533.533 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 04:18:49,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:18:49,086.086 INFO    ] Checking for system updates...
[2026-06-13 04:18:49,127.127 INFO    ] 200
[2026-06-13 04:18:49,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:49,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:49,187.187 INFO    ] No update needed
[2026-06-13 04:18:49,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 04:18:49,215.215 INFO    ] 200
[2026-06-13 04:18:49,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:18:49,240.240 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:18:49,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:18:49,280.280 INFO    ] No camera update needed
[2026-06-13 04:18:49,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:18:49,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:18:49,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:18:49,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:18:51,326.326 INFO    ] ================================================
[2026-06-13 04:18:51,341.341 INFO    ] Launching Daemon at Sat Jun 13 04:18:51 IST 2026
[2026-06-13 04:18:51,352.352 INFO    ] ================================================
[2026-06-13 04:18:51,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:18:51
[2026-06-13 04:18:52,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:18:52,147.147 INFO    ] Initializing speech engine...
[2026-06-13 04:18:52,153.153 INFO    ] 2026-06-13 04:18:52
[2026-06-13 04:18:52,358.358 INFO    ] 2026-06-13 04:18:52
[2026-06-13 04:18:52,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:18:52,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:18:52,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:18:52,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:18:52,785.785 INFO    ] time= 13/06/2026 04:18:52
[2026-06-13 04:18:52,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:18:52,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:18:52,884.884 INFO    ] No existing commands found in stream
[2026-06-13 04:18:57,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:18:57,895.895 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 04:19:01,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:19:01,224.224 INFO    ] Checking for system updates...
[2026-06-13 04:19:01,261.261 INFO    ] 200
[2026-06-13 04:19:01,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:01,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:19:01,350.350 INFO    ] No update needed
[2026-06-13 04:19:01,369.369 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:01,460.460 INFO    ] 200
[2026-06-13 04:19:01,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:01,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:19:01,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:19:01,616.616 INFO    ] No camera update needed
[2026-06-13 04:19:01,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:01,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:01,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:01,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:03,686.686 INFO    ] ================================================
[2026-06-13 04:19:03,702.702 INFO    ] Launching Daemon at Sat Jun 13 04:19:03 IST 2026
[2026-06-13 04:19:03,714.714 INFO    ] ================================================
[2026-06-13 04:19:04,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:04
[2026-06-13 04:19:04,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:05,050.050 INFO    ] Initializing speech engine...
[2026-06-13 04:19:05,066.066 INFO    ] 2026-06-13 04:19:05
[2026-06-13 04:19:05,286.286 INFO    ] 2026-06-13 04:19:05
[2026-06-13 04:19:05,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:05,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:05,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:05,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:05,700.700 INFO    ] time= 13/06/2026 04:19:05
[2026-06-13 04:19:05,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:05,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:05,844.844 INFO    ] No existing commands found in stream
[2026-06-13 04:19:10,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:19:10,857.857 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 04:19:13,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:19:13,796.796 INFO    ] Checking for system updates...
[2026-06-13 04:19:13,819.819 INFO    ] 200
[2026-06-13 04:19:13,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:13,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:19:13,853.853 INFO    ] No update needed
[2026-06-13 04:19:13,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:13,877.877 INFO    ] 200
[2026-06-13 04:19:13,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:13,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:19:13,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:19:13,943.943 INFO    ] No camera update needed
[2026-06-13 04:19:13,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:13,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:13,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:13,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:15,992.992 INFO    ] ================================================
[2026-06-13 04:19:16,011.011 INFO    ] Launching Daemon at Sat Jun 13 04:19:16 IST 2026
[2026-06-13 04:19:16,023.023 INFO    ] ================================================
[2026-06-13 04:19:16,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:16
[2026-06-13 04:19:16,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:16,813.813 INFO    ] Initializing speech engine...
[2026-06-13 04:19:16,823.823 INFO    ] 2026-06-13 04:19:16
[2026-06-13 04:19:17,027.027 INFO    ] 2026-06-13 04:19:17
[2026-06-13 04:19:17,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:17,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:17,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:17,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:17,429.429 INFO    ] time= 13/06/2026 04:19:17
[2026-06-13 04:19:17,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:17,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:17,543.543 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 04:19:17,546.546 INFO    ] Checking historical command: ID=1781304551762-0
[2026-06-13 04:19:17,563.563 INFO    ] process_and_cleanup_command: msg_id=1781304551762-0
[2026-06-13 04:19:17,573.573 INFO    ] is_command_expired: timestamp=2026-06-12T22:49:12.582Z, expiry=30s
[2026-06-13 04:19:17,685.685 INFO    ] Command removed from stream: 1781304551762-0. returning for processing...
[2026-06-13 04:19:17,688.688 INFO    ] ***** get_valid_command
[2026-06-13 04:19:17,691.691 INFO    ] {'timestamp': '2026-06-12T22:49:12.582Z', 'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1781304552582-pnm4l4dvv","orderId":"TM08202203260613041755024","is_vending":false}', 'command': 'start-order'}
[2026-06-13 04:19:17,695.695 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781304552582-pnm4l4dvv', 'orderId': 'TM08202203260613041755024'}
[2026-06-13 04:19:17,700.700 INFO    ] Handling start order...
[2026-06-13 04:19:17,703.703 INFO    ] handle_start_order_command
[2026-06-13 04:19:17,716.716 INFO    ] _send_start_order_success: request_id=start-order-1781304552582-pnm4l4dvv, order_id=TM08202203260613041755024
[2026-06-13 04:19:17,719.719 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 04:19:17,772.772 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781304557735-0
[2026-06-13 04:19:17,777.777 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 04:19:17,780.780 INFO    ] Checking for system updates...
[2026-06-13 04:19:17,809.809 INFO    ] 200
[2026-06-13 04:19:17,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:17,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:19:17,922.922 INFO    ] No update needed
[2026-06-13 04:19:17,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:18,033.033 INFO    ] 200
[2026-06-13 04:19:18,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:18,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:19:18,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:19:18,219.219 INFO    ] No camera update needed
[2026-06-13 04:19:18,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:18,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:18,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:18,253.253 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 04:19:18,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:20,307.307 INFO    ] ================================================
[2026-06-13 04:19:20,323.323 INFO    ] Launching Daemon at Sat Jun 13 04:19:20 IST 2026
[2026-06-13 04:19:20,334.334 INFO    ] ================================================
[2026-06-13 04:19:20,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:20
[2026-06-13 04:19:21,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:21,414.414 INFO    ] Initializing speech engine...
[2026-06-13 04:19:21,428.428 INFO    ] 2026-06-13 04:19:21
[2026-06-13 04:19:21,633.633 INFO    ] 2026-06-13 04:19:21
[2026-06-13 04:19:21,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:21,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:21,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:21,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:22,035.035 INFO    ] time= 13/06/2026 04:19:21
[2026-06-13 04:19:22,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:22,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:22,153.153 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 04:19:22,159.159 INFO    ] Checking historical command: ID=1781304557735-0
[2026-06-13 04:19:22,179.179 INFO    ] process_and_cleanup_command: msg_id=1781304557735-0
[2026-06-13 04:19:22,196.196 INFO    ] is_command_expired: timestamp=2026-06-12T22:49:17.717526Z, expiry=30s
[2026-06-13 04:19:22,290.290 INFO    ] Command removed from stream: 1781304557735-0. returning for processing...
[2026-06-13 04:19:22,294.294 INFO    ] ***** get_valid_command
[2026-06-13 04:19:22,296.296 INFO    ] {'message_type': 'command_response', 'timestamp': '2026-06-12T22:49:17.717526Z', 'imei': 'TM08202203', 'status': 'success', 'metadata_order_id': 'TM08202203260613041755024', 'metadata_request_id': 'start-order-1781304552582-pnm4l4dvv', 'message': 'start-order success'}
[2026-06-13 04:19:22,302.302 INFO    ] Checking historical command: ID=1781304560116-0
[2026-06-13 04:19:22,306.306 INFO    ] process_and_cleanup_command: msg_id=1781304560116-0
[2026-06-13 04:19:22,308.308 INFO    ] is_command_expired: timestamp=2026-06-12T22:49:21.069Z, expiry=30s
[2026-06-13 04:19:22,350.350 INFO    ] Command removed from stream: 1781304560116-0. returning for processing...
[2026-06-13 04:19:22,352.352 INFO    ] ***** get_valid_command
[2026-06-13 04:19:22,355.355 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-12T22:49:21.069Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1781304561069-rur76h0nw","orderId":"TM08202203260613041755024","is_vending":false,"accessCode":"62646455"}', 'timeout': '60'}
[2026-06-13 04:19:22,358.358 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613041755024', 'is_vending': False, 'accessCode': '62646455', 'request_id': 'process-order-1781304561069-rur76h0nw'}
[2026-06-13 04:19:22,361.361 INFO    ] Handling process order...
[2026-06-13 04:19:22,363.363 INFO    ] Processing process-order command...
[2026-06-13 04:19:22,367.367 INFO    ] 🔍 Lock file Order ID: TM08202203260613041755024, TS: 2026-06-13 04:19:17
[2026-06-13 04:19:22,376.376 INFO    ] ✅ Order lock valid for TM08202203260613041755024
[2026-06-13 04:19:22,379.379 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 04:19:22,382.382 INFO    ] processing access code 62646455 for order TM08202203260613041755024
[2026-06-13 04:19:22,385.385 INFO    ] 🔍 Lock file Order ID: TM08202203260613041755024, TS: 2026-06-13 04:19:17
[2026-06-13 04:19:22,388.388 INFO    ] ✅ Order lock valid for TM08202203260613041755024
[2026-06-13 04:19:22,392.392 INFO    ] 2026-06-13 04:19:22
[2026-06-13 04:19:22,422.422 INFO    ] 200
[2026-06-13 04:19:22,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:22,431.431 INFO    ] 62646455
[2026-06-13 04:19:22,435.435 INFO    ] 2026-06-13 04:19:22
[2026-06-13 04:19:22,440.440 INFO    ] session id :511721542
[2026-06-13 04:19:22,443.443 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=62646455&imei=TM08202203&session_id=511721542
[2026-06-13 04:19:23,134.134 INFO    ] 200
[2026-06-13 04:19:23,158.158 INFO    ] {"data": {}, "error": {"data": {}, "code": 30004, "umessage": "Invalid Access code", "tmessage": "Access Code does not exists"}, "rstatus": false, "status": false}
[2026-06-13 04:19:23,168.168 INFO    ] init_order error: Invalid Access code
[2026-06-13 04:19:23,172.172 INFO    ] Cancelling order TM08202203260613041755024 - Error 30004: Invalid Access code
[2026-06-13 04:19:23,176.176 INFO    ] publish_status: order_id=TM08202203260613041755024
[2026-06-13 04:19:23,183.183 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613041755024
[2026-06-13 04:19:23,230.230 INFO    ] [publish_status] Message added to stream with ID: 1781304563195-0
[2026-06-13 04:19:23,232.232 INFO    ] Published to order:TM08202203260613041755024: {'ttl': '5', 'timestamp': '2026-06-12T22:49:23.172981Z', 'server_status': 'Cancelled', 'server_response': '{"SectionStatus": {"SubHeader": "[30004] Invalid Access code", "Header": "Order Failed", "Note": ""}, "error_code": 30004, "error_message": "Invalid Access code"}', 'order_id': 'TM08202203260613041755024'} (ID: 1781304563195-0)
[2026-06-13 04:19:23,512.512 INFO    ] {'server_status': 'Cancelled', 'server_response': {'SectionStatus': {'SubHeader': '[30004] Invalid Access code', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 30004, 'error_message': 'Invalid Access code'}, 'order_id': 'TM08202203260613041755024'}
[2026-06-13 04:19:23,513.513 INFO    ] 200
[2026-06-13 04:19:23,514.514 INFO    ] {"data":{"server_status":"Cancelled","server_response":{"SectionStatus":{"SubHeader":"[30004] Invalid Access code","Header":"Order Failed","Note":""},"error_code":30004,"error_message":"Invalid Access code"},"order_id":"TM08202203260613041755024"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:19:23,516.516 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'Cancelled', 'server_response': {'SectionStatus': {'SubHeader': '[30004] Invalid Access code', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 30004, 'error_message': 'Invalid Access code'}, 'order_id': 'TM08202203260613041755024'}}
[2026-06-13 04:19:23,517.517 INFO    ] Checking for system updates...
[2026-06-13 04:19:23,539.539 INFO    ] 200
[2026-06-13 04:19:23,541.541 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:23,542.542 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:19:23,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:23,563.563 INFO    ] 200
[2026-06-13 04:19:23,565.565 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:23,566.566 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:19:23,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:23,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:23,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:23,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:25,613.613 INFO    ] ================================================
[2026-06-13 04:19:25,628.628 INFO    ] Launching Daemon at Sat Jun 13 04:19:25 IST 2026
[2026-06-13 04:19:25,641.641 INFO    ] ================================================
[2026-06-13 04:19:25,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:25
[2026-06-13 04:19:26,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:26,423.423 INFO    ] Initializing speech engine...
[2026-06-13 04:19:26,431.431 INFO    ] 2026-06-13 04:19:26
[2026-06-13 04:19:26,639.639 INFO    ] 2026-06-13 04:19:26
[2026-06-13 04:19:26,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:26,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:26,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:26,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:27,050.050 INFO    ] time= 13/06/2026 04:19:26
[2026-06-13 04:19:27,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:27,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:27,164.164 INFO    ] No existing commands found in stream
[2026-06-13 04:19:32,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:19:32,171.171 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 04:19:34,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:19:34,924.924 INFO    ] Checking for system updates...
[2026-06-13 04:19:34,946.946 INFO    ] 200
[2026-06-13 04:19:34,948.948 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:34,949.949 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:19:34,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:34,973.973 INFO    ] 200
[2026-06-13 04:19:34,974.974 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:34,976.976 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:19:34,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:34,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:34,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:34,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:37,024.024 INFO    ] ================================================
[2026-06-13 04:19:37,040.040 INFO    ] Launching Daemon at Sat Jun 13 04:19:37 IST 2026
[2026-06-13 04:19:37,050.050 INFO    ] ================================================
[2026-06-13 04:19:37,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:37
[2026-06-13 04:19:37,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:37,860.860 INFO    ] Initializing speech engine...
[2026-06-13 04:19:37,865.865 INFO    ] 2026-06-13 04:19:37
[2026-06-13 04:19:38,070.070 INFO    ] 2026-06-13 04:19:38
[2026-06-13 04:19:38,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:38,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:38,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:38,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:38,474.474 INFO    ] time= 13/06/2026 04:19:38
[2026-06-13 04:19:38,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:38,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:38,583.583 INFO    ] No existing commands found in stream
[2026-06-13 04:19:43,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:19:43,596.596 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 04:19:45,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:19:45,470.470 INFO    ] Checking for system updates...
[2026-06-13 04:19:45,491.491 INFO    ] 200
[2026-06-13 04:19:45,492.492 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:45,494.494 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:19:45,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:45,517.517 INFO    ] 200
[2026-06-13 04:19:45,519.519 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:45,520.520 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:19:45,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:45,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:45,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:45,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:47,570.570 INFO    ] ================================================
[2026-06-13 04:19:47,586.586 INFO    ] Launching Daemon at Sat Jun 13 04:19:47 IST 2026
[2026-06-13 04:19:47,597.597 INFO    ] ================================================
[2026-06-13 04:19:47,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:47
[2026-06-13 04:19:48,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:48,411.411 INFO    ] Initializing speech engine...
[2026-06-13 04:19:48,417.417 INFO    ] 2026-06-13 04:19:48
[2026-06-13 04:19:48,621.621 INFO    ] 2026-06-13 04:19:48
[2026-06-13 04:19:48,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:48,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:48,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:48,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:49,026.026 INFO    ] time= 13/06/2026 04:19:48
[2026-06-13 04:19:49,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:49,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:49,137.137 INFO    ] No existing commands found in stream
[2026-06-13 04:19:54,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:19:54,149.149 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 04:19:54,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:19:54,842.842 INFO    ] Checking for system updates...
[2026-06-13 04:19:54,862.862 INFO    ] 200
[2026-06-13 04:19:54,864.864 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:54,865.865 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:19:54,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 04:19:54,886.886 INFO    ] 200
[2026-06-13 04:19:54,887.887 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:19:54,889.889 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:19:54,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:19:54,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:19:54,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:19:54,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:19:56,939.939 INFO    ] ================================================
[2026-06-13 04:19:56,954.954 INFO    ] Launching Daemon at Sat Jun 13 04:19:56 IST 2026
[2026-06-13 04:19:56,966.966 INFO    ] ================================================
[2026-06-13 04:19:57,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:19:57
[2026-06-13 04:19:58,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:19:58,277.277 INFO    ] Initializing speech engine...
[2026-06-13 04:19:58,303.303 INFO    ] 2026-06-13 04:19:58
[2026-06-13 04:19:58,578.578 INFO    ] 2026-06-13 04:19:58
[2026-06-13 04:19:58,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:19:58,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:19:58,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:19:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:19:58,958.958 INFO    ] time= 13/06/2026 04:19:58
[2026-06-13 04:19:58,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:19:58,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:19:59,017.017 INFO    ] No existing commands found in stream
[2026-06-13 04:20:04,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:20:04,030.030 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 04:20:09,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:20:09,166.166 INFO    ] Lock file expired, elapsed: 52s, order: TM08202203260613041755024
[2026-06-13 04:20:09,169.169 INFO    ] Cancelling order TM08202203260613041755024 - Error 20101: Order timed out. Please try again.
[2026-06-13 04:20:09,239.239 INFO    ] {'order_id': 'TM08202203260613041755024', 'server_status': 'Cancelled', 'server_response': {'error_message': 'Order timed out. Please try again.', 'SectionStatus': {'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.', 'Note': ''}, 'error_code': 20101}}
[2026-06-13 04:20:09,241.241 INFO    ] 200
[2026-06-13 04:20:09,244.244 INFO    ] {"data":{"order_id":"TM08202203260613041755024","server_status":"Cancelled","server_response":{"error_message":"Order timed out. Please try again.","SectionStatus":{"Header":"Order Failed","SubHeader":"[20101] Order timed out. Please try again.","Note":""},"error_code":20101}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 04:20:09,246.246 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613041755024', 'server_status': 'Cancelled', 'server_response': {'error_code': 20101, 'SectionStatus': {'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.', 'Note': ''}, 'error_message': 'Order timed out. Please try again.'}}}
[2026-06-13 04:20:09,249.249 INFO    ] Expired start-order file deleted, server response code: ORDER_EXISTS
[2026-06-13 04:20:09,252.252 INFO    ] Checking for system updates...
[2026-06-13 04:20:09,287.287 INFO    ] 200
[2026-06-13 04:20:09,290.290 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:09,293.293 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:20:09,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 04:20:09,334.334 INFO    ] 200
[2026-06-13 04:20:09,337.337 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:09,340.340 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:20:09,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:20:09,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:20:09,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:20:09,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:20:11,397.397 INFO    ] ================================================
[2026-06-13 04:20:11,413.413 INFO    ] Launching Daemon at Sat Jun 13 04:20:11 IST 2026
[2026-06-13 04:20:11,424.424 INFO    ] ================================================
[2026-06-13 04:20:11,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:20:11
[2026-06-13 04:20:12,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:20:12,190.190 INFO    ] Initializing speech engine...
[2026-06-13 04:20:12,203.203 INFO    ] 2026-06-13 04:20:12
[2026-06-13 04:20:12,416.416 INFO    ] 2026-06-13 04:20:12
[2026-06-13 04:20:12,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:20:12,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:20:12,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:20:12,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:20:12,817.817 INFO    ] time= 13/06/2026 04:20:12
[2026-06-13 04:20:12,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:20:12,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:20:12,964.964 INFO    ] No existing commands found in stream
[2026-06-13 04:20:17,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:20:17,976.976 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 04:20:20,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:20:20,673.673 INFO    ] Checking for system updates...
[2026-06-13 04:20:20,694.694 INFO    ] 200
[2026-06-13 04:20:20,695.695 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:20,696.696 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:20:20,698.698 INFO    ] Checking for camera pi updates...
[2026-06-13 04:20:20,719.719 INFO    ] 200
[2026-06-13 04:20:20,720.720 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:20,722.722 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:20:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:20:20,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:20:20,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:20:20,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:20:22,770.770 INFO    ] ================================================
[2026-06-13 04:20:22,786.786 INFO    ] Launching Daemon at Sat Jun 13 04:20:22 IST 2026
[2026-06-13 04:20:22,797.797 INFO    ] ================================================
[2026-06-13 04:20:23,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:20:23
[2026-06-13 04:20:23,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:20:23,644.644 INFO    ] Initializing speech engine...
[2026-06-13 04:20:23,650.650 INFO    ] 2026-06-13 04:20:23
[2026-06-13 04:20:23,857.857 INFO    ] 2026-06-13 04:20:23
[2026-06-13 04:20:23,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:20:24,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:20:24,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:20:24,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:20:24,253.253 INFO    ] time= 13/06/2026 04:20:24
[2026-06-13 04:20:24,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:20:24,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:20:24,373.373 INFO    ] No existing commands found in stream
[2026-06-13 04:20:29,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:20:29,387.387 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 04:20:30,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:20:30,236.236 INFO    ] Checking for system updates...
[2026-06-13 04:20:30,257.257 INFO    ] 200
[2026-06-13 04:20:30,259.259 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:30,260.260 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:20:30,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 04:20:30,282.282 INFO    ] 200
[2026-06-13 04:20:30,283.283 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:30,285.285 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:20:30,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:20:30,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:20:30,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:20:30,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:20:32,341.341 INFO    ] ================================================
[2026-06-13 04:20:32,359.359 INFO    ] Launching Daemon at Sat Jun 13 04:20:32 IST 2026
[2026-06-13 04:20:32,370.370 INFO    ] ================================================
[2026-06-13 04:20:32,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:20:32
[2026-06-13 04:20:33,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:20:33,189.189 INFO    ] Initializing speech engine...
[2026-06-13 04:20:33,194.194 INFO    ] 2026-06-13 04:20:33
[2026-06-13 04:20:33,425.425 INFO    ] 2026-06-13 04:20:33
[2026-06-13 04:20:33,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:20:33,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:20:33,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:20:33,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:20:33,805.805 INFO    ] time= 13/06/2026 04:20:33
[2026-06-13 04:20:33,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:20:33,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:20:34,015.015 INFO    ] No existing commands found in stream
[2026-06-13 04:20:39,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:20:39,026.026 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 04:20:42,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:20:42,265.265 INFO    ] Checking for system updates...
[2026-06-13 04:20:42,286.286 INFO    ] 200
[2026-06-13 04:20:42,287.287 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:42,289.289 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:20:42,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 04:20:42,312.312 INFO    ] 200
[2026-06-13 04:20:42,313.313 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:42,314.314 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:20:42,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:20:42,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:20:42,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:20:42,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:20:44,363.363 INFO    ] ================================================
[2026-06-13 04:20:44,377.377 INFO    ] Launching Daemon at Sat Jun 13 04:20:44 IST 2026
[2026-06-13 04:20:44,388.388 INFO    ] ================================================
[2026-06-13 04:20:44,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:20:44
[2026-06-13 04:20:45,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:20:45,193.193 INFO    ] Initializing speech engine...
[2026-06-13 04:20:45,205.205 INFO    ] 2026-06-13 04:20:45
[2026-06-13 04:20:45,427.427 INFO    ] 2026-06-13 04:20:45
[2026-06-13 04:20:45,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:20:45,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:20:45,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:20:45,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:20:45,830.830 INFO    ] time= 13/06/2026 04:20:45
[2026-06-13 04:20:45,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:20:45,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:20:45,990.990 INFO    ] No existing commands found in stream
[2026-06-13 04:20:51,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:20:51,004.004 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 04:20:54,099.099 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:20:54,100.100 INFO    ] Checking for system updates...
[2026-06-13 04:20:54,122.122 INFO    ] 200
[2026-06-13 04:20:54,124.124 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:54,125.125 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:20:54,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 04:20:54,146.146 INFO    ] 200
[2026-06-13 04:20:54,147.147 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:20:54,149.149 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:20:54,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:20:54,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:20:54,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:20:54,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:20:56,197.197 INFO    ] ================================================
[2026-06-13 04:20:56,212.212 INFO    ] Launching Daemon at Sat Jun 13 04:20:56 IST 2026
[2026-06-13 04:20:56,223.223 INFO    ] ================================================
[2026-06-13 04:20:56,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:20:56
[2026-06-13 04:20:56,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:20:57,042.042 INFO    ] Initializing speech engine...
[2026-06-13 04:20:57,049.049 INFO    ] 2026-06-13 04:20:57
[2026-06-13 04:20:57,253.253 INFO    ] 2026-06-13 04:20:57
[2026-06-13 04:20:57,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:20:57,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:20:57,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:20:57,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:20:57,662.662 INFO    ] time= 13/06/2026 04:20:57
[2026-06-13 04:20:57,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:20:57,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:20:57,789.789 INFO    ] No existing commands found in stream
[2026-06-13 04:21:02,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:02,804.804 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 04:21:05,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:21:05,250.250 INFO    ] Checking for system updates...
[2026-06-13 04:21:05,273.273 INFO    ] 200
[2026-06-13 04:21:05,274.274 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:05,275.275 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:05,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:05,298.298 INFO    ] 200
[2026-06-13 04:21:05,299.299 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:05,301.301 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:05,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:05,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:05,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:05,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:07,350.350 INFO    ] ================================================
[2026-06-13 04:21:07,365.365 INFO    ] Launching Daemon at Sat Jun 13 04:21:07 IST 2026
[2026-06-13 04:21:07,376.376 INFO    ] ================================================
[2026-06-13 04:21:07,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:21:07
[2026-06-13 04:21:08,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:21:08,244.244 INFO    ] Initializing speech engine...
[2026-06-13 04:21:08,249.249 INFO    ] 2026-06-13 04:21:08
[2026-06-13 04:21:08,461.461 INFO    ] 2026-06-13 04:21:08
[2026-06-13 04:21:08,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:21:08,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:21:08,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:21:08,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:21:08,912.912 INFO    ] time= 13/06/2026 04:21:08
[2026-06-13 04:21:08,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:21:08,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:21:08,983.983 INFO    ] No existing commands found in stream
[2026-06-13 04:21:13,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:14,001.001 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 04:21:17,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:21:17,182.182 INFO    ] Checking for system updates...
[2026-06-13 04:21:17,205.205 INFO    ] 200
[2026-06-13 04:21:17,206.206 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:17,208.208 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:17,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:17,231.231 INFO    ] 200
[2026-06-13 04:21:17,233.233 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:17,234.234 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:17,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:17,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:17,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:17,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:19,286.286 INFO    ] ================================================
[2026-06-13 04:21:19,301.301 INFO    ] Launching Daemon at Sat Jun 13 04:21:19 IST 2026
[2026-06-13 04:21:19,312.312 INFO    ] ================================================
[2026-06-13 04:21:19,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:21:19
[2026-06-13 04:21:19,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:21:20,092.092 INFO    ] Initializing speech engine...
[2026-06-13 04:21:20,097.097 INFO    ] 2026-06-13 04:21:20
[2026-06-13 04:21:20,296.296 INFO    ] 2026-06-13 04:21:20
[2026-06-13 04:21:20,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:21:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:21:20,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:21:20,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:21:20,745.745 INFO    ] time= 13/06/2026 04:21:20
[2026-06-13 04:21:20,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:21:20,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:21:20,896.896 INFO    ] No existing commands found in stream
[2026-06-13 04:21:25,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:25,905.905 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 04:21:27,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:21:27,295.295 INFO    ] Checking for system updates...
[2026-06-13 04:21:27,317.317 INFO    ] 200
[2026-06-13 04:21:27,318.318 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:27,320.320 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:27,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:27,340.340 INFO    ] 200
[2026-06-13 04:21:27,342.342 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:27,343.343 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:27,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:27,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:27,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:27,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:29,390.390 INFO    ] ================================================
[2026-06-13 04:21:29,406.406 INFO    ] Launching Daemon at Sat Jun 13 04:21:29 IST 2026
[2026-06-13 04:21:29,417.417 INFO    ] ================================================
[2026-06-13 04:21:29,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:21:29
[2026-06-13 04:21:30,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:21:30,209.209 INFO    ] Initializing speech engine...
[2026-06-13 04:21:30,213.213 INFO    ] 2026-06-13 04:21:30
[2026-06-13 04:21:30,405.405 INFO    ] 2026-06-13 04:21:30
[2026-06-13 04:21:30,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:21:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:21:30,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:21:30,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:21:30,691.691 INFO    ] time= 13/06/2026 04:21:30
[2026-06-13 04:21:30,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:21:30,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:21:30,804.804 INFO    ] No existing commands found in stream
[2026-06-13 04:21:35,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:35,836.836 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 04:21:36,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:21:36,790.790 INFO    ] Checking for system updates...
[2026-06-13 04:21:36,811.811 INFO    ] 200
[2026-06-13 04:21:36,812.812 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:36,813.813 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:36,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:36,834.834 INFO    ] 200
[2026-06-13 04:21:36,835.835 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:36,837.837 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:36,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:36,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:36,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:36,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:38,886.886 INFO    ] ================================================
[2026-06-13 04:21:38,901.901 INFO    ] Launching Daemon at Sat Jun 13 04:21:38 IST 2026
[2026-06-13 04:21:38,912.912 INFO    ] ================================================
[2026-06-13 04:21:39,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:21:39
[2026-06-13 04:21:39,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:21:39,746.746 INFO    ] Initializing speech engine...
[2026-06-13 04:21:39,751.751 INFO    ] 2026-06-13 04:21:39
[2026-06-13 04:21:39,955.955 INFO    ] 2026-06-13 04:21:39
[2026-06-13 04:21:39,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:21:40,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:21:40,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:21:40,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:21:40,369.369 INFO    ] time= 13/06/2026 04:21:40
[2026-06-13 04:21:40,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:21:40,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:21:40,469.469 INFO    ] No existing commands found in stream
[2026-06-13 04:21:45,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:45,481.481 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 04:21:46,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:21:46,485.485 INFO    ] Checking for system updates...
[2026-06-13 04:21:46,505.505 INFO    ] 200
[2026-06-13 04:21:46,507.507 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:46,508.508 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:46,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:46,531.531 INFO    ] 200
[2026-06-13 04:21:46,532.532 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:46,534.534 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:46,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:46,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:46,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:46,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:48,589.589 INFO    ] ================================================
[2026-06-13 04:21:48,604.604 INFO    ] Launching Daemon at Sat Jun 13 04:21:48 IST 2026
[2026-06-13 04:21:48,616.616 INFO    ] ================================================
[2026-06-13 04:21:48,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:21:48
[2026-06-13 04:21:49,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:21:49,424.424 INFO    ] Initializing speech engine...
[2026-06-13 04:21:49,432.432 INFO    ] 2026-06-13 04:21:49
[2026-06-13 04:21:49,661.661 INFO    ] 2026-06-13 04:21:49
[2026-06-13 04:21:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:21:49,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:21:49,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:21:50,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:21:50,094.094 INFO    ] time= 13/06/2026 04:21:50
[2026-06-13 04:21:50,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:21:50,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:21:50,257.257 INFO    ] No existing commands found in stream
[2026-06-13 04:21:55,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:21:55,283.283 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 04:21:57,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:21:57,614.614 INFO    ] Checking for system updates...
[2026-06-13 04:21:57,639.639 INFO    ] 200
[2026-06-13 04:21:57,641.641 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:57,643.643 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:21:57,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 04:21:57,665.665 INFO    ] 200
[2026-06-13 04:21:57,666.666 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:21:57,667.667 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:21:57,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:21:57,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:21:57,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:21:57,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:21:59,716.716 INFO    ] ================================================
[2026-06-13 04:21:59,731.731 INFO    ] Launching Daemon at Sat Jun 13 04:21:59 IST 2026
[2026-06-13 04:21:59,742.742 INFO    ] ================================================
[2026-06-13 04:22:00,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:00
[2026-06-13 04:22:00,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:00,557.557 INFO    ] Initializing speech engine...
[2026-06-13 04:22:00,567.567 INFO    ] 2026-06-13 04:22:00
[2026-06-13 04:22:00,773.773 INFO    ] 2026-06-13 04:22:00
[2026-06-13 04:22:00,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:00,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:01,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:01,184.184 INFO    ] time= 13/06/2026 04:22:01
[2026-06-13 04:22:01,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:01,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:01,294.294 INFO    ] No existing commands found in stream
[2026-06-13 04:22:06,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:06,307.307 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 04:22:10,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:22:10,233.233 INFO    ] Checking for system updates...
[2026-06-13 04:22:10,254.254 INFO    ] 200
[2026-06-13 04:22:10,256.256 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:10,257.257 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:22:10,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 04:22:10,279.279 INFO    ] 200
[2026-06-13 04:22:10,280.280 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:10,281.281 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:22:10,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:22:10,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:22:10,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:22:10,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:22:12,330.330 INFO    ] ================================================
[2026-06-13 04:22:12,345.345 INFO    ] Launching Daemon at Sat Jun 13 04:22:12 IST 2026
[2026-06-13 04:22:12,357.357 INFO    ] ================================================
[2026-06-13 04:22:12,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:12
[2026-06-13 04:22:13,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:13,173.173 INFO    ] Initializing speech engine...
[2026-06-13 04:22:13,181.181 INFO    ] 2026-06-13 04:22:13
[2026-06-13 04:22:13,395.395 INFO    ] 2026-06-13 04:22:13
[2026-06-13 04:22:13,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:13,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:13,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:13,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:13,801.801 INFO    ] time= 13/06/2026 04:22:13
[2026-06-13 04:22:13,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:13,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:13,916.916 INFO    ] No existing commands found in stream
[2026-06-13 04:22:18,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:18,930.930 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 04:22:19,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:22:19,904.904 INFO    ] Checking for system updates...
[2026-06-13 04:22:19,925.925 INFO    ] 200
[2026-06-13 04:22:19,926.926 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:19,928.928 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:22:19,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 04:22:19,949.949 INFO    ] 200
[2026-06-13 04:22:19,950.950 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:19,952.952 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:22:19,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:22:19,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:22:19,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:22:19,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:22:22,000.000 INFO    ] ================================================
[2026-06-13 04:22:22,016.016 INFO    ] Launching Daemon at Sat Jun 13 04:22:22 IST 2026
[2026-06-13 04:22:22,027.027 INFO    ] ================================================
[2026-06-13 04:22:22,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:22
[2026-06-13 04:22:22,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:22,841.841 INFO    ] Initializing speech engine...
[2026-06-13 04:22:22,847.847 INFO    ] 2026-06-13 04:22:22
[2026-06-13 04:22:23,051.051 INFO    ] 2026-06-13 04:22:23
[2026-06-13 04:22:23,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:23,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:23,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:23,440.440 INFO    ] time= 13/06/2026 04:22:23
[2026-06-13 04:22:23,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:23,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:23,622.622 INFO    ] No existing commands found in stream
[2026-06-13 04:22:28,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:28,650.650 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 04:22:29,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:22:29,992.992 INFO    ] Checking for system updates...
[2026-06-13 04:22:30,014.014 INFO    ] 200
[2026-06-13 04:22:30,015.015 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:30,017.017 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:22:30,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 04:22:30,041.041 INFO    ] 200
[2026-06-13 04:22:30,043.043 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:30,044.044 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:22:30,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:22:30,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:22:30,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:22:30,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:22:32,084.084 INFO    ] ================================================
[2026-06-13 04:22:32,093.093 INFO    ] Launching Daemon at Sat Jun 13 04:22:32 IST 2026
[2026-06-13 04:22:32,100.100 INFO    ] ================================================
[2026-06-13 04:22:32,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:32
[2026-06-13 04:22:32,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:32,895.895 INFO    ] Initializing speech engine...
[2026-06-13 04:22:32,900.900 INFO    ] 2026-06-13 04:22:32
[2026-06-13 04:22:33,132.132 INFO    ] 2026-06-13 04:22:33
[2026-06-13 04:22:33,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:33,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:33,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:33,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:33,512.512 INFO    ] time= 13/06/2026 04:22:33
[2026-06-13 04:22:33,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:33,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:33,693.693 INFO    ] No existing commands found in stream
[2026-06-13 04:22:38,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:38,706.706 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 04:22:41,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:22:41,110.110 INFO    ] Checking for system updates...
[2026-06-13 04:22:41,151.151 INFO    ] 200
[2026-06-13 04:22:41,153.153 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:41,156.156 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:22:41,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 04:22:41,193.193 INFO    ] 200
[2026-06-13 04:22:41,195.195 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:41,198.198 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:22:41,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:22:41,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:22:41,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:22:41,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:22:43,253.253 INFO    ] ================================================
[2026-06-13 04:22:43,268.268 INFO    ] Launching Daemon at Sat Jun 13 04:22:43 IST 2026
[2026-06-13 04:22:43,279.279 INFO    ] ================================================
[2026-06-13 04:22:43,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:43
[2026-06-13 04:22:43,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:44,072.072 INFO    ] Initializing speech engine...
[2026-06-13 04:22:44,081.081 INFO    ] 2026-06-13 04:22:44
[2026-06-13 04:22:44,300.300 INFO    ] 2026-06-13 04:22:44
[2026-06-13 04:22:44,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:44,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:44,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:44,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:44,737.737 INFO    ] time= 13/06/2026 04:22:44
[2026-06-13 04:22:44,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:44,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:44,858.858 INFO    ] No existing commands found in stream
[2026-06-13 04:22:49,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:49,872.872 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 04:22:51,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:22:51,276.276 INFO    ] Checking for system updates...
[2026-06-13 04:22:51,297.297 INFO    ] 200
[2026-06-13 04:22:51,298.298 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:51,300.300 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:22:51,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 04:22:51,323.323 INFO    ] 200
[2026-06-13 04:22:51,324.324 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:22:51,326.326 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:22:51,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:22:51,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:22:51,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:22:51,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:22:53,374.374 INFO    ] ================================================
[2026-06-13 04:22:53,389.389 INFO    ] Launching Daemon at Sat Jun 13 04:22:53 IST 2026
[2026-06-13 04:22:53,400.400 INFO    ] ================================================
[2026-06-13 04:22:53,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:22:53
[2026-06-13 04:22:54,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:22:54,193.193 INFO    ] Initializing speech engine...
[2026-06-13 04:22:54,203.203 INFO    ] 2026-06-13 04:22:54
[2026-06-13 04:22:54,420.420 INFO    ] 2026-06-13 04:22:54
[2026-06-13 04:22:54,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:22:54,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:22:54,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:22:54,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:22:54,825.825 INFO    ] time= 13/06/2026 04:22:54
[2026-06-13 04:22:54,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:22:54,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:22:54,978.978 INFO    ] No existing commands found in stream
[2026-06-13 04:22:59,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:22:59,992.992 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 04:23:04,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:23:04,305.305 INFO    ] Checking for system updates...
[2026-06-13 04:23:04,347.347 INFO    ] 200
[2026-06-13 04:23:04,349.349 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:04,352.352 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:04,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:04,389.389 INFO    ] 200
[2026-06-13 04:23:04,392.392 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:04,394.394 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:04,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:04,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:04,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:04,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:06,451.451 INFO    ] ================================================
[2026-06-13 04:23:06,466.466 INFO    ] Launching Daemon at Sat Jun 13 04:23:06 IST 2026
[2026-06-13 04:23:06,477.477 INFO    ] ================================================
[2026-06-13 04:23:06,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:06
[2026-06-13 04:23:07,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:07,311.311 INFO    ] Initializing speech engine...
[2026-06-13 04:23:07,316.316 INFO    ] 2026-06-13 04:23:07
[2026-06-13 04:23:07,523.523 INFO    ] 2026-06-13 04:23:07
[2026-06-13 04:23:07,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:07,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:07,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:07,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:07,921.921 INFO    ] time= 13/06/2026 04:23:07
[2026-06-13 04:23:07,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:07,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:08,045.045 INFO    ] No existing commands found in stream
[2026-06-13 04:23:13,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:23:13,059.059 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 04:23:15,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:23:15,150.150 INFO    ] Checking for system updates...
[2026-06-13 04:23:15,170.170 INFO    ] 200
[2026-06-13 04:23:15,172.172 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:15,173.173 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:15,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:15,195.195 INFO    ] 200
[2026-06-13 04:23:15,197.197 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:15,198.198 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:15,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:15,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:15,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:15,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:17,246.246 INFO    ] ================================================
[2026-06-13 04:23:17,261.261 INFO    ] Launching Daemon at Sat Jun 13 04:23:17 IST 2026
[2026-06-13 04:23:17,271.271 INFO    ] ================================================
[2026-06-13 04:23:17,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:17
[2026-06-13 04:23:17,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:18,079.079 INFO    ] Initializing speech engine...
[2026-06-13 04:23:18,084.084 INFO    ] 2026-06-13 04:23:18
[2026-06-13 04:23:18,288.288 INFO    ] 2026-06-13 04:23:18
[2026-06-13 04:23:18,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:18,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:18,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:18,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:18,688.688 INFO    ] time= 13/06/2026 04:23:18
[2026-06-13 04:23:18,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:18,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:18,809.809 INFO    ] No existing commands found in stream
[2026-06-13 04:23:23,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:23:23,823.823 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 04:23:24,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:23:24,656.656 INFO    ] Checking for system updates...
[2026-06-13 04:23:24,678.678 INFO    ] 200
[2026-06-13 04:23:24,679.679 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:24,681.681 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:24,682.682 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:24,701.701 INFO    ] 200
[2026-06-13 04:23:24,703.703 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:24,704.704 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:24,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:24,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:24,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:24,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:26,752.752 INFO    ] ================================================
[2026-06-13 04:23:26,768.768 INFO    ] Launching Daemon at Sat Jun 13 04:23:26 IST 2026
[2026-06-13 04:23:26,779.779 INFO    ] ================================================
[2026-06-13 04:23:27,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:27
[2026-06-13 04:23:27,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:27,632.632 INFO    ] Initializing speech engine...
[2026-06-13 04:23:27,638.638 INFO    ] 2026-06-13 04:23:27
[2026-06-13 04:23:27,848.848 INFO    ] 2026-06-13 04:23:27
[2026-06-13 04:23:27,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:28,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:28,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:28,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:28,265.265 INFO    ] time= 13/06/2026 04:23:28
[2026-06-13 04:23:28,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:28,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:28,373.373 INFO    ] No existing commands found in stream
[2026-06-13 04:23:33,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:23:33,383.383 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 04:23:35,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:23:35,335.335 INFO    ] Checking for system updates...
[2026-06-13 04:23:35,356.356 INFO    ] 200
[2026-06-13 04:23:35,357.357 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:35,359.359 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:35,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:35,380.380 INFO    ] 200
[2026-06-13 04:23:35,382.382 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:35,383.383 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:35,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:35,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:35,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:35,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:37,433.433 INFO    ] ================================================
[2026-06-13 04:23:37,448.448 INFO    ] Launching Daemon at Sat Jun 13 04:23:37 IST 2026
[2026-06-13 04:23:37,459.459 INFO    ] ================================================
[2026-06-13 04:23:37,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:37
[2026-06-13 04:23:38,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:38,270.270 INFO    ] Initializing speech engine...
[2026-06-13 04:23:38,275.275 INFO    ] 2026-06-13 04:23:38
[2026-06-13 04:23:38,479.479 INFO    ] 2026-06-13 04:23:38
[2026-06-13 04:23:38,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:38,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:38,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:38,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:38,882.882 INFO    ] time= 13/06/2026 04:23:38
[2026-06-13 04:23:38,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:38,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:39,000.000 INFO    ] No existing commands found in stream
[2026-06-13 04:23:44,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:23:44,012.012 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 04:23:44,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:23:44,929.929 INFO    ] Checking for system updates...
[2026-06-13 04:23:44,951.951 INFO    ] 200
[2026-06-13 04:23:44,952.952 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:44,953.953 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:44,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:44,974.974 INFO    ] 200
[2026-06-13 04:23:44,975.975 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:44,976.976 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:44,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:44,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:44,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:44,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:47,025.025 INFO    ] ================================================
[2026-06-13 04:23:47,041.041 INFO    ] Launching Daemon at Sat Jun 13 04:23:47 IST 2026
[2026-06-13 04:23:47,052.052 INFO    ] ================================================
[2026-06-13 04:23:47,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:47
[2026-06-13 04:23:47,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:47,930.930 INFO    ] Initializing speech engine...
[2026-06-13 04:23:47,935.935 INFO    ] 2026-06-13 04:23:47
[2026-06-13 04:23:48,145.145 INFO    ] 2026-06-13 04:23:48
[2026-06-13 04:23:48,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:48,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:48,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:48,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:48,546.546 INFO    ] time= 13/06/2026 04:23:48
[2026-06-13 04:23:48,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:48,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:48,667.667 INFO    ] No existing commands found in stream
[2026-06-13 04:23:53,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:23:53,682.682 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 04:23:54,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:23:54,940.940 INFO    ] Checking for system updates...
[2026-06-13 04:23:54,961.961 INFO    ] 200
[2026-06-13 04:23:54,963.963 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:54,964.964 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:23:54,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 04:23:54,987.987 INFO    ] 200
[2026-06-13 04:23:54,988.988 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:23:54,990.990 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:23:54,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:23:54,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:23:54,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:23:55,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:23:57,041.041 INFO    ] ================================================
[2026-06-13 04:23:57,056.056 INFO    ] Launching Daemon at Sat Jun 13 04:23:57 IST 2026
[2026-06-13 04:23:57,067.067 INFO    ] ================================================
[2026-06-13 04:23:57,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:23:57
[2026-06-13 04:23:57,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:23:57,920.920 INFO    ] Initializing speech engine...
[2026-06-13 04:23:57,925.925 INFO    ] 2026-06-13 04:23:57
[2026-06-13 04:23:58,130.130 INFO    ] 2026-06-13 04:23:58
[2026-06-13 04:23:58,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:23:58,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:23:58,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:23:58,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:23:58,599.599 INFO    ] time= 13/06/2026 04:23:58
[2026-06-13 04:23:58,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:23:58,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:23:58,831.831 INFO    ] No existing commands found in stream
[2026-06-13 04:24:03,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:03,849.849 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 04:24:05,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:24:05,669.669 INFO    ] Checking for system updates...
[2026-06-13 04:24:05,691.691 INFO    ] 200
[2026-06-13 04:24:05,692.692 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:05,694.694 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:05,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:05,714.714 INFO    ] 200
[2026-06-13 04:24:05,716.716 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:05,717.717 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:05,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:05,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:05,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:05,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:07,768.768 INFO    ] ================================================
[2026-06-13 04:24:07,783.783 INFO    ] Launching Daemon at Sat Jun 13 04:24:07 IST 2026
[2026-06-13 04:24:07,794.794 INFO    ] ================================================
[2026-06-13 04:24:08,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:24:08
[2026-06-13 04:24:08,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:24:08,600.600 INFO    ] Initializing speech engine...
[2026-06-13 04:24:08,608.608 INFO    ] 2026-06-13 04:24:08
[2026-06-13 04:24:08,834.834 INFO    ] 2026-06-13 04:24:08
[2026-06-13 04:24:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:24:09,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:24:09,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:24:09,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:24:09,257.257 INFO    ] time= 13/06/2026 04:24:09
[2026-06-13 04:24:09,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:24:09,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:24:09,388.388 INFO    ] No existing commands found in stream
[2026-06-13 04:24:14,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:14,398.398 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 04:24:15,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:24:15,139.139 INFO    ] Checking for system updates...
[2026-06-13 04:24:15,160.160 INFO    ] 200
[2026-06-13 04:24:15,161.161 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:15,162.162 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:15,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:15,184.184 INFO    ] 200
[2026-06-13 04:24:15,186.186 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:15,187.187 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:15,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:15,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:15,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:15,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:17,234.234 INFO    ] ================================================
[2026-06-13 04:24:17,250.250 INFO    ] Launching Daemon at Sat Jun 13 04:24:17 IST 2026
[2026-06-13 04:24:17,260.260 INFO    ] ================================================
[2026-06-13 04:24:17,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:24:17
[2026-06-13 04:24:17,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:24:18,065.065 INFO    ] Initializing speech engine...
[2026-06-13 04:24:18,069.069 INFO    ] 2026-06-13 04:24:18
[2026-06-13 04:24:18,300.300 INFO    ] 2026-06-13 04:24:18
[2026-06-13 04:24:18,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:24:18,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:24:18,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:24:18,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:24:18,737.737 INFO    ] time= 13/06/2026 04:24:18
[2026-06-13 04:24:18,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:24:18,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:24:18,859.859 INFO    ] No existing commands found in stream
[2026-06-13 04:24:23,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:23,872.872 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 04:24:26,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:24:26,030.030 INFO    ] Checking for system updates...
[2026-06-13 04:24:26,052.052 INFO    ] 200
[2026-06-13 04:24:26,053.053 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:26,054.054 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:26,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:26,075.075 INFO    ] 200
[2026-06-13 04:24:26,076.076 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:26,078.078 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:26,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:26,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:26,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:26,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:28,125.125 INFO    ] ================================================
[2026-06-13 04:24:28,141.141 INFO    ] Launching Daemon at Sat Jun 13 04:24:28 IST 2026
[2026-06-13 04:24:28,152.152 INFO    ] ================================================
[2026-06-13 04:24:28,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:24:28
[2026-06-13 04:24:28,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:24:28,943.943 INFO    ] Initializing speech engine...
[2026-06-13 04:24:28,956.956 INFO    ] 2026-06-13 04:24:28
[2026-06-13 04:24:29,165.165 INFO    ] 2026-06-13 04:24:29
[2026-06-13 04:24:29,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:24:29,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:24:29,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:24:29,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:24:29,580.580 INFO    ] time= 13/06/2026 04:24:29
[2026-06-13 04:24:29,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:24:29,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:24:29,687.687 INFO    ] No existing commands found in stream
[2026-06-13 04:24:34,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:34,699.699 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 04:24:36,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:24:36,497.497 INFO    ] Checking for system updates...
[2026-06-13 04:24:36,518.518 INFO    ] 200
[2026-06-13 04:24:36,520.520 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:36,521.521 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:36,522.522 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:36,543.543 INFO    ] 200
[2026-06-13 04:24:36,544.544 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:36,546.546 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:36,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:36,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:36,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:36,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:38,593.593 INFO    ] ================================================
[2026-06-13 04:24:38,609.609 INFO    ] Launching Daemon at Sat Jun 13 04:24:38 IST 2026
[2026-06-13 04:24:38,620.620 INFO    ] ================================================
[2026-06-13 04:24:38,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:24:38
[2026-06-13 04:24:39,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:24:39,441.441 INFO    ] Initializing speech engine...
[2026-06-13 04:24:39,447.447 INFO    ] 2026-06-13 04:24:39
[2026-06-13 04:24:39,701.701 INFO    ] 2026-06-13 04:24:39
[2026-06-13 04:24:39,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:24:39,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:24:39,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:24:40,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:24:40,116.116 INFO    ] time= 13/06/2026 04:24:40
[2026-06-13 04:24:40,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:24:40,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:24:40,222.222 INFO    ] No existing commands found in stream
[2026-06-13 04:24:45,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:45,231.231 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 04:24:46,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:24:46,225.225 INFO    ] Checking for system updates...
[2026-06-13 04:24:46,245.245 INFO    ] 200
[2026-06-13 04:24:46,247.247 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:46,248.248 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:46,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:46,269.269 INFO    ] 200
[2026-06-13 04:24:46,271.271 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:46,272.272 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:46,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:46,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:46,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:46,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:48,320.320 INFO    ] ================================================
[2026-06-13 04:24:48,346.346 INFO    ] Launching Daemon at Sat Jun 13 04:24:48 IST 2026
[2026-06-13 04:24:48,357.357 INFO    ] ================================================
[2026-06-13 04:24:48,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:24:48
[2026-06-13 04:24:49,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:24:49,146.146 INFO    ] Initializing speech engine...
[2026-06-13 04:24:49,155.155 INFO    ] 2026-06-13 04:24:49
[2026-06-13 04:24:49,364.364 INFO    ] 2026-06-13 04:24:49
[2026-06-13 04:24:49,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:24:49,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:24:49,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:24:49,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:24:49,717.717 INFO    ] time= 13/06/2026 04:24:49
[2026-06-13 04:24:49,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:24:49,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:24:49,881.881 INFO    ] No existing commands found in stream
[2026-06-13 04:24:54,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:24:54,909.909 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 04:24:57,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:24:57,554.554 INFO    ] Checking for system updates...
[2026-06-13 04:24:57,575.575 INFO    ] 200
[2026-06-13 04:24:57,576.576 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:57,578.578 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:24:57,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 04:24:57,601.601 INFO    ] 200
[2026-06-13 04:24:57,603.603 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:24:57,604.604 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:24:57,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:24:57,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:24:57,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:24:57,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:24:59,651.651 INFO    ] ================================================
[2026-06-13 04:24:59,666.666 INFO    ] Launching Daemon at Sat Jun 13 04:24:59 IST 2026
[2026-06-13 04:24:59,677.677 INFO    ] ================================================
[2026-06-13 04:25:00,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:00
[2026-06-13 04:25:00,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:00,780.780 INFO    ] Initializing speech engine...
[2026-06-13 04:25:00,787.787 INFO    ] 2026-06-13 04:25:00
[2026-06-13 04:25:01,039.039 INFO    ] 2026-06-13 04:25:01
[2026-06-13 04:25:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:01,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:01,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:01,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:01,395.395 INFO    ] time= 13/06/2026 04:25:01
[2026-06-13 04:25:01,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:01,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:01,496.496 INFO    ] No existing commands found in stream
[2026-06-13 04:25:06,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:25:06,513.513 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 04:25:10,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:25:10,854.854 INFO    ] Checking for system updates...
[2026-06-13 04:25:10,876.876 INFO    ] 200
[2026-06-13 04:25:10,877.877 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:10,878.878 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:25:10,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 04:25:10,901.901 INFO    ] 200
[2026-06-13 04:25:10,902.902 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:10,903.903 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:25:10,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:25:10,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:25:10,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:25:10,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:25:12,951.951 INFO    ] ================================================
[2026-06-13 04:25:12,966.966 INFO    ] Launching Daemon at Sat Jun 13 04:25:12 IST 2026
[2026-06-13 04:25:12,977.977 INFO    ] ================================================
[2026-06-13 04:25:13,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:13
[2026-06-13 04:25:13,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:13,769.769 INFO    ] Initializing speech engine...
[2026-06-13 04:25:13,782.782 INFO    ] 2026-06-13 04:25:13
[2026-06-13 04:25:14,001.001 INFO    ] 2026-06-13 04:25:13
[2026-06-13 04:25:14,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:14,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:14,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:14,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:14,394.394 INFO    ] time= 13/06/2026 04:25:14
[2026-06-13 04:25:14,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:14,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:14,558.558 INFO    ] No existing commands found in stream
[2026-06-13 04:25:19,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:25:19,570.570 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 04:25:22,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:25:22,885.885 INFO    ] Checking for system updates...
[2026-06-13 04:25:22,906.906 INFO    ] 200
[2026-06-13 04:25:22,907.907 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:22,909.909 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:25:22,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 04:25:22,930.930 INFO    ] 200
[2026-06-13 04:25:22,931.931 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:22,933.933 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:25:22,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:25:22,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:25:22,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:25:22,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:25:24,981.981 INFO    ] ================================================
[2026-06-13 04:25:25,996.996 INFO    ] Launching Daemon at Sat Jun 13 04:25:24 IST 2026
[2026-06-13 04:25:25,007.007 INFO    ] ================================================
[2026-06-13 04:25:25,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:25
[2026-06-13 04:25:25,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:25,782.782 INFO    ] Initializing speech engine...
[2026-06-13 04:25:25,786.786 INFO    ] 2026-06-13 04:25:25
[2026-06-13 04:25:26,016.016 INFO    ] 2026-06-13 04:25:25
[2026-06-13 04:25:26,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:26,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:26,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:26,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:26,399.399 INFO    ] time= 13/06/2026 04:25:26
[2026-06-13 04:25:26,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:26,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:26,572.572 INFO    ] No existing commands found in stream
[2026-06-13 04:25:31,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:25:31,585.585 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 04:25:34,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:25:34,658.658 INFO    ] Checking for system updates...
[2026-06-13 04:25:34,680.680 INFO    ] 200
[2026-06-13 04:25:34,681.681 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:34,682.682 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:25:34,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 04:25:34,703.703 INFO    ] 200
[2026-06-13 04:25:34,704.704 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:34,706.706 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:25:34,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:25:34,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:25:34,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:25:34,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:25:36,755.755 INFO    ] ================================================
[2026-06-13 04:25:36,771.771 INFO    ] Launching Daemon at Sat Jun 13 04:25:36 IST 2026
[2026-06-13 04:25:36,782.782 INFO    ] ================================================
[2026-06-13 04:25:37,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:37
[2026-06-13 04:25:37,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:37,595.595 INFO    ] Initializing speech engine...
[2026-06-13 04:25:37,609.609 INFO    ] 2026-06-13 04:25:37
[2026-06-13 04:25:37,827.827 INFO    ] 2026-06-13 04:25:37
[2026-06-13 04:25:37,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:37,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:38,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:38,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:38,203.203 INFO    ] time= 13/06/2026 04:25:38
[2026-06-13 04:25:38,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:38,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:38,384.384 INFO    ] No existing commands found in stream
[2026-06-13 04:25:43,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:25:43,397.397 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 04:25:44,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:25:44,494.494 INFO    ] Checking for system updates...
[2026-06-13 04:25:44,515.515 INFO    ] 200
[2026-06-13 04:25:44,517.517 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:44,518.518 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:25:44,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 04:25:44,539.539 INFO    ] 200
[2026-06-13 04:25:44,540.540 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:44,542.542 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:25:44,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:25:44,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:25:44,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:25:44,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:25:46,589.589 INFO    ] ================================================
[2026-06-13 04:25:46,604.604 INFO    ] Launching Daemon at Sat Jun 13 04:25:46 IST 2026
[2026-06-13 04:25:46,616.616 INFO    ] ================================================
[2026-06-13 04:25:46,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:46
[2026-06-13 04:25:47,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:47,469.469 INFO    ] Initializing speech engine...
[2026-06-13 04:25:47,475.475 INFO    ] 2026-06-13 04:25:47
[2026-06-13 04:25:47,684.684 INFO    ] 2026-06-13 04:25:47
[2026-06-13 04:25:47,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:47,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:48,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:48,105.105 INFO    ] time= 13/06/2026 04:25:48
[2026-06-13 04:25:48,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:48,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:48,199.199 INFO    ] No existing commands found in stream
[2026-06-13 04:25:53,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:25:53,212.212 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 04:25:54,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:25:54,733.733 INFO    ] Checking for system updates...
[2026-06-13 04:25:54,754.754 INFO    ] 200
[2026-06-13 04:25:54,756.756 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:54,757.757 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:25:54,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 04:25:54,779.779 INFO    ] 200
[2026-06-13 04:25:54,780.780 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:25:54,782.782 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:25:54,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:25:54,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:25:54,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:25:54,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:25:56,832.832 INFO    ] ================================================
[2026-06-13 04:25:56,847.847 INFO    ] Launching Daemon at Sat Jun 13 04:25:56 IST 2026
[2026-06-13 04:25:56,860.860 INFO    ] ================================================
[2026-06-13 04:25:57,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:25:57
[2026-06-13 04:25:57,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:25:57,646.646 INFO    ] Initializing speech engine...
[2026-06-13 04:25:57,657.657 INFO    ] 2026-06-13 04:25:57
[2026-06-13 04:25:57,874.874 INFO    ] 2026-06-13 04:25:57
[2026-06-13 04:25:57,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:25:58,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:25:58,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:25:58,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:25:58,269.269 INFO    ] time= 13/06/2026 04:25:58
[2026-06-13 04:25:58,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:25:58,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:25:58,431.431 INFO    ] No existing commands found in stream
[2026-06-13 04:26:03,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:03,443.443 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 04:26:07,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:26:07,381.381 INFO    ] Checking for system updates...
[2026-06-13 04:26:07,402.402 INFO    ] 200
[2026-06-13 04:26:07,403.403 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:07,405.405 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:26:07,406.406 INFO    ] Checking for camera pi updates...
[2026-06-13 04:26:07,427.427 INFO    ] 200
[2026-06-13 04:26:07,429.429 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:07,430.430 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:26:07,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:26:07,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:26:07,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:26:07,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:26:09,480.480 INFO    ] ================================================
[2026-06-13 04:26:09,496.496 INFO    ] Launching Daemon at Sat Jun 13 04:26:09 IST 2026
[2026-06-13 04:26:09,508.508 INFO    ] ================================================
[2026-06-13 04:26:09,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:26:09
[2026-06-13 04:26:10,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:26:10,276.276 INFO    ] Initializing speech engine...
[2026-06-13 04:26:10,288.288 INFO    ] 2026-06-13 04:26:10
[2026-06-13 04:26:10,496.496 INFO    ] 2026-06-13 04:26:10
[2026-06-13 04:26:10,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:26:10,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:26:10,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:26:10,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:26:10,895.895 INFO    ] time= 13/06/2026 04:26:10
[2026-06-13 04:26:10,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:26:10,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:26:11,017.017 INFO    ] No existing commands found in stream
[2026-06-13 04:26:16,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:16,030.030 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 04:26:19,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:26:19,718.718 INFO    ] Checking for system updates...
[2026-06-13 04:26:19,760.760 INFO    ] 200
[2026-06-13 04:26:19,763.763 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:19,766.766 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:26:19,768.768 INFO    ] Checking for camera pi updates...
[2026-06-13 04:26:19,804.804 INFO    ] 200
[2026-06-13 04:26:19,807.807 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:19,810.810 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:26:19,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:26:19,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:26:19,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:26:19,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:26:21,870.870 INFO    ] ================================================
[2026-06-13 04:26:21,886.886 INFO    ] Launching Daemon at Sat Jun 13 04:26:21 IST 2026
[2026-06-13 04:26:21,897.897 INFO    ] ================================================
[2026-06-13 04:26:22,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:26:22
[2026-06-13 04:26:22,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:26:22,703.703 INFO    ] Initializing speech engine...
[2026-06-13 04:26:22,709.709 INFO    ] 2026-06-13 04:26:22
[2026-06-13 04:26:22,912.912 INFO    ] 2026-06-13 04:26:22
[2026-06-13 04:26:22,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:26:23,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:26:23,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:26:23,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:26:23,320.320 INFO    ] time= 13/06/2026 04:26:23
[2026-06-13 04:26:23,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:26:23,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:26:23,426.426 INFO    ] No existing commands found in stream
[2026-06-13 04:26:28,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:28,438.438 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 04:26:31,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:26:31,073.073 INFO    ] Checking for system updates...
[2026-06-13 04:26:31,093.093 INFO    ] 200
[2026-06-13 04:26:31,095.095 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:31,096.096 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:26:31,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 04:26:31,118.118 INFO    ] 200
[2026-06-13 04:26:31,120.120 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:31,121.121 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:26:31,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:26:31,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:26:31,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:26:31,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:26:33,154.154 INFO    ] ================================================
[2026-06-13 04:26:33,162.162 INFO    ] Launching Daemon at Sat Jun 13 04:26:33 IST 2026
[2026-06-13 04:26:33,169.169 INFO    ] ================================================
[2026-06-13 04:26:33,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:26:33
[2026-06-13 04:26:33,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:26:33,981.981 INFO    ] Initializing speech engine...
[2026-06-13 04:26:33,986.986 INFO    ] 2026-06-13 04:26:33
[2026-06-13 04:26:34,196.196 INFO    ] 2026-06-13 04:26:34
[2026-06-13 04:26:34,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:26:34,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:26:34,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:26:34,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:26:34,608.608 INFO    ] time= 13/06/2026 04:26:34
[2026-06-13 04:26:34,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:26:34,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:26:34,722.722 INFO    ] No existing commands found in stream
[2026-06-13 04:26:39,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:39,734.734 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 04:26:41,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:26:41,084.084 INFO    ] Checking for system updates...
[2026-06-13 04:26:41,106.106 INFO    ] 200
[2026-06-13 04:26:41,107.107 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:41,109.109 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:26:41,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 04:26:41,134.134 INFO    ] 200
[2026-06-13 04:26:41,136.136 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:41,137.137 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:26:41,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:26:41,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:26:41,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:26:41,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:26:43,191.191 INFO    ] ================================================
[2026-06-13 04:26:43,206.206 INFO    ] Launching Daemon at Sat Jun 13 04:26:43 IST 2026
[2026-06-13 04:26:43,218.218 INFO    ] ================================================
[2026-06-13 04:26:43,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:26:43
[2026-06-13 04:26:43,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:26:44,000.000 INFO    ] Initializing speech engine...
[2026-06-13 04:26:44,005.005 INFO    ] 2026-06-13 04:26:44
[2026-06-13 04:26:44,209.209 INFO    ] 2026-06-13 04:26:44
[2026-06-13 04:26:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:26:44,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:26:44,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:26:44,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:26:44,617.617 INFO    ] time= 13/06/2026 04:26:44
[2026-06-13 04:26:44,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:26:44,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:26:44,729.729 INFO    ] No existing commands found in stream
[2026-06-13 04:26:49,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:49,741.741 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 04:26:51,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:26:51,133.133 INFO    ] Checking for system updates...
[2026-06-13 04:26:51,156.156 INFO    ] 200
[2026-06-13 04:26:51,157.157 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:51,159.159 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:26:51,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 04:26:51,179.179 INFO    ] 200
[2026-06-13 04:26:51,181.181 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:26:51,182.182 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:26:51,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:26:51,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:26:51,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:26:51,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:26:53,231.231 INFO    ] ================================================
[2026-06-13 04:26:53,247.247 INFO    ] Launching Daemon at Sat Jun 13 04:26:53 IST 2026
[2026-06-13 04:26:53,259.259 INFO    ] ================================================
[2026-06-13 04:26:53,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:26:53
[2026-06-13 04:26:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:26:54,072.072 INFO    ] Initializing speech engine...
[2026-06-13 04:26:54,077.077 INFO    ] 2026-06-13 04:26:54
[2026-06-13 04:26:54,280.280 INFO    ] 2026-06-13 04:26:54
[2026-06-13 04:26:54,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:26:54,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:26:54,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:26:54,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:26:54,697.697 INFO    ] time= 13/06/2026 04:26:54
[2026-06-13 04:26:54,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:26:54,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:26:54,793.793 INFO    ] No existing commands found in stream
[2026-06-13 04:26:59,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:26:59,803.803 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 04:27:00,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:27:00,624.624 INFO    ] Checking for system updates...
[2026-06-13 04:27:00,645.645 INFO    ] 200
[2026-06-13 04:27:00,646.646 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:00,647.647 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:00,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:00,668.668 INFO    ] 200
[2026-06-13 04:27:00,670.670 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:00,671.671 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:00,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:00,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:00,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:00,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:02,727.727 INFO    ] ================================================
[2026-06-13 04:27:02,735.735 INFO    ] Launching Daemon at Sat Jun 13 04:27:02 IST 2026
[2026-06-13 04:27:02,742.742 INFO    ] ================================================
[2026-06-13 04:27:03,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:03
[2026-06-13 04:27:03,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:03,499.499 INFO    ] Initializing speech engine...
[2026-06-13 04:27:03,507.507 INFO    ] 2026-06-13 04:27:03
[2026-06-13 04:27:03,705.705 INFO    ] 2026-06-13 04:27:03
[2026-06-13 04:27:03,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:03,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:03,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:04,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:04,148.148 INFO    ] time= 13/06/2026 04:27:04
[2026-06-13 04:27:04,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:04,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:04,300.300 INFO    ] No existing commands found in stream
[2026-06-13 04:27:09,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:27:09,313.313 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 04:27:10,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:27:10,180.180 INFO    ] Checking for system updates...
[2026-06-13 04:27:10,203.203 INFO    ] 200
[2026-06-13 04:27:10,204.204 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:10,206.206 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:10,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:10,226.226 INFO    ] 200
[2026-06-13 04:27:10,228.228 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:10,230.230 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:10,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:10,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:10,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:10,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:12,276.276 INFO    ] ================================================
[2026-06-13 04:27:12,292.292 INFO    ] Launching Daemon at Sat Jun 13 04:27:12 IST 2026
[2026-06-13 04:27:12,303.303 INFO    ] ================================================
[2026-06-13 04:27:12,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:12
[2026-06-13 04:27:12,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:13,080.080 INFO    ] Initializing speech engine...
[2026-06-13 04:27:13,088.088 INFO    ] 2026-06-13 04:27:13
[2026-06-13 04:27:13,293.293 INFO    ] 2026-06-13 04:27:13
[2026-06-13 04:27:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:13,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:13,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:13,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:13,692.692 INFO    ] time= 13/06/2026 04:27:13
[2026-06-13 04:27:13,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:13,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:13,805.805 INFO    ] No existing commands found in stream
[2026-06-13 04:27:18,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:27:18,819.819 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 04:27:19,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:27:19,478.478 INFO    ] Checking for system updates...
[2026-06-13 04:27:19,500.500 INFO    ] 200
[2026-06-13 04:27:19,501.501 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:19,503.503 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:19,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:19,525.525 INFO    ] 200
[2026-06-13 04:27:19,526.526 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:19,527.527 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:19,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:19,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:19,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:19,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:21,576.576 INFO    ] ================================================
[2026-06-13 04:27:21,591.591 INFO    ] Launching Daemon at Sat Jun 13 04:27:21 IST 2026
[2026-06-13 04:27:21,602.602 INFO    ] ================================================
[2026-06-13 04:27:21,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:21
[2026-06-13 04:27:22,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:22,421.421 INFO    ] Initializing speech engine...
[2026-06-13 04:27:22,427.427 INFO    ] 2026-06-13 04:27:22
[2026-06-13 04:27:22,630.630 INFO    ] 2026-06-13 04:27:22
[2026-06-13 04:27:22,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:22,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:22,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:22,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:23,030.030 INFO    ] time= 13/06/2026 04:27:22
[2026-06-13 04:27:23,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:23,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:23,145.145 INFO    ] No existing commands found in stream
[2026-06-13 04:27:28,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:27:28,162.162 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 04:27:32,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:27:32,003.003 INFO    ] Checking for system updates...
[2026-06-13 04:27:32,047.047 INFO    ] 200
[2026-06-13 04:27:32,050.050 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:32,053.053 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:32,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:32,094.094 INFO    ] 200
[2026-06-13 04:27:32,097.097 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:32,101.101 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:32,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:32,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:32,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:32,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:34,166.166 INFO    ] ================================================
[2026-06-13 04:27:34,182.182 INFO    ] Launching Daemon at Sat Jun 13 04:27:34 IST 2026
[2026-06-13 04:27:34,193.193 INFO    ] ================================================
[2026-06-13 04:27:34,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:34
[2026-06-13 04:27:35,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:35,332.332 INFO    ] Initializing speech engine...
[2026-06-13 04:27:35,335.335 INFO    ] 2026-06-13 04:27:35
[2026-06-13 04:27:35,552.552 INFO    ] 2026-06-13 04:27:35
[2026-06-13 04:27:35,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:35,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:35,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:35,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:35,962.962 INFO    ] time= 13/06/2026 04:27:35
[2026-06-13 04:27:35,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:36,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:36,075.075 INFO    ] No existing commands found in stream
[2026-06-13 04:27:41,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:27:41,087.087 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 04:27:42,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:27:43,001.001 INFO    ] Checking for system updates...
[2026-06-13 04:27:43,037.037 INFO    ] 200
[2026-06-13 04:27:43,039.039 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:43,042.042 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:43,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:43,079.079 INFO    ] 200
[2026-06-13 04:27:43,081.081 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:43,084.084 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:43,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:43,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:43,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:43,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:45,140.140 INFO    ] ================================================
[2026-06-13 04:27:45,156.156 INFO    ] Launching Daemon at Sat Jun 13 04:27:45 IST 2026
[2026-06-13 04:27:45,167.167 INFO    ] ================================================
[2026-06-13 04:27:45,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:45
[2026-06-13 04:27:46,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:46,409.409 INFO    ] Initializing speech engine...
[2026-06-13 04:27:46,412.412 INFO    ] 2026-06-13 04:27:46
[2026-06-13 04:27:46,621.621 INFO    ] 2026-06-13 04:27:46
[2026-06-13 04:27:46,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:46,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:46,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:46,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:47,043.043 INFO    ] time= 13/06/2026 04:27:46
[2026-06-13 04:27:47,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:47,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:47,145.145 INFO    ] No existing commands found in stream
[2026-06-13 04:27:52,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:27:52,160.160 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 04:27:53,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:27:53,325.325 INFO    ] Checking for system updates...
[2026-06-13 04:27:53,346.346 INFO    ] 200
[2026-06-13 04:27:53,348.348 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:53,350.350 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:27:53,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 04:27:53,372.372 INFO    ] 200
[2026-06-13 04:27:53,374.374 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:27:53,375.375 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:27:53,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:27:53,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:27:53,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:27:53,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:27:55,426.426 INFO    ] ================================================
[2026-06-13 04:27:55,442.442 INFO    ] Launching Daemon at Sat Jun 13 04:27:55 IST 2026
[2026-06-13 04:27:55,452.452 INFO    ] ================================================
[2026-06-13 04:27:55,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:27:55
[2026-06-13 04:27:56,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:27:56,242.242 INFO    ] Initializing speech engine...
[2026-06-13 04:27:56,256.256 INFO    ] 2026-06-13 04:27:56
[2026-06-13 04:27:56,476.476 INFO    ] 2026-06-13 04:27:56
[2026-06-13 04:27:56,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:27:56,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:27:56,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:27:56,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:27:56,854.854 INFO    ] time= 13/06/2026 04:27:56
[2026-06-13 04:27:56,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:27:56,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:27:57,035.035 INFO    ] No existing commands found in stream
[2026-06-13 04:28:02,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:02,048.048 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 04:28:03,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:28:03,947.947 INFO    ] Checking for system updates...
[2026-06-13 04:28:03,969.969 INFO    ] 200
[2026-06-13 04:28:03,970.970 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:03,972.972 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:03,973.973 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:03,993.993 INFO    ] 200
[2026-06-13 04:28:03,995.995 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:03,996.996 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:03,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:03,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:04,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:04,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:28:06,053.053 INFO    ] ================================================
[2026-06-13 04:28:06,069.069 INFO    ] Launching Daemon at Sat Jun 13 04:28:06 IST 2026
[2026-06-13 04:28:06,081.081 INFO    ] ================================================
[2026-06-13 04:28:06,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:28:06
[2026-06-13 04:28:06,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:28:06,897.897 INFO    ] Initializing speech engine...
[2026-06-13 04:28:06,902.902 INFO    ] 2026-06-13 04:28:06
[2026-06-13 04:28:07,131.131 INFO    ] 2026-06-13 04:28:07
[2026-06-13 04:28:07,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:28:07,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:28:07,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:28:07,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:28:07,561.561 INFO    ] time= 13/06/2026 04:28:07
[2026-06-13 04:28:07,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:28:07,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:28:07,681.681 INFO    ] No existing commands found in stream
[2026-06-13 04:28:12,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:12,693.693 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 04:28:14,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:28:14,883.883 INFO    ] Checking for system updates...
[2026-06-13 04:28:14,905.905 INFO    ] 200
[2026-06-13 04:28:14,906.906 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:14,908.908 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:14,909.909 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:14,928.928 INFO    ] 200
[2026-06-13 04:28:14,930.930 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:14,931.931 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:14,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:14,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:14,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:14,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:28:16,980.980 INFO    ] ================================================
[2026-06-13 04:28:17,995.995 INFO    ] Launching Daemon at Sat Jun 13 04:28:16 IST 2026
[2026-06-13 04:28:17,006.006 INFO    ] ================================================
[2026-06-13 04:28:17,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:28:17
[2026-06-13 04:28:17,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:28:17,789.789 INFO    ] Initializing speech engine...
[2026-06-13 04:28:17,803.803 INFO    ] 2026-06-13 04:28:17
[2026-06-13 04:28:18,020.020 INFO    ] 2026-06-13 04:28:17
[2026-06-13 04:28:18,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:28:18,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:28:18,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:28:18,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:28:18,413.413 INFO    ] time= 13/06/2026 04:28:18
[2026-06-13 04:28:18,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:28:18,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:28:18,573.573 INFO    ] No existing commands found in stream
[2026-06-13 04:28:23,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:23,586.586 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 04:28:25,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:28:25,772.772 INFO    ] Checking for system updates...
[2026-06-13 04:28:25,792.792 INFO    ] 200
[2026-06-13 04:28:25,793.793 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:25,795.795 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:25,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:25,818.818 INFO    ] 200
[2026-06-13 04:28:25,819.819 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:25,821.821 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:25,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:25,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:25,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:25,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:28:27,868.868 INFO    ] ================================================
[2026-06-13 04:28:27,883.883 INFO    ] Launching Daemon at Sat Jun 13 04:28:27 IST 2026
[2026-06-13 04:28:27,894.894 INFO    ] ================================================
[2026-06-13 04:28:28,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:28:28
[2026-06-13 04:28:28,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:28:28,704.704 INFO    ] Initializing speech engine...
[2026-06-13 04:28:28,709.709 INFO    ] 2026-06-13 04:28:28
[2026-06-13 04:28:28,937.937 INFO    ] 2026-06-13 04:28:28
[2026-06-13 04:28:28,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:28:29,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:28:29,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:28:29,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:28:29,354.354 INFO    ] time= 13/06/2026 04:28:29
[2026-06-13 04:28:29,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:28:29,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:28:29,489.489 INFO    ] No existing commands found in stream
[2026-06-13 04:28:34,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:34,503.503 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 04:28:36,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:28:36,743.743 INFO    ] Checking for system updates...
[2026-06-13 04:28:36,764.764 INFO    ] 200
[2026-06-13 04:28:36,765.765 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:36,767.767 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:36,768.768 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:36,789.789 INFO    ] 200
[2026-06-13 04:28:36,790.790 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:36,791.791 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:36,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:36,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:36,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:36,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:28:38,841.841 INFO    ] ================================================
[2026-06-13 04:28:38,856.856 INFO    ] Launching Daemon at Sat Jun 13 04:28:38 IST 2026
[2026-06-13 04:28:38,867.867 INFO    ] ================================================
[2026-06-13 04:28:39,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:28:39
[2026-06-13 04:28:39,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:28:40,216.216 INFO    ] Initializing speech engine...
[2026-06-13 04:28:40,230.230 INFO    ] 2026-06-13 04:28:40
[2026-06-13 04:28:40,492.492 INFO    ] 2026-06-13 04:28:40
[2026-06-13 04:28:40,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:28:40,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:28:40,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:28:40,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:28:40,828.828 INFO    ] time= 13/06/2026 04:28:40
[2026-06-13 04:28:40,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:28:40,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:28:40,937.937 INFO    ] No existing commands found in stream
[2026-06-13 04:28:45,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:45,952.952 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 04:28:46,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:28:46,549.549 INFO    ] Checking for system updates...
[2026-06-13 04:28:46,571.571 INFO    ] 200
[2026-06-13 04:28:46,573.573 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:46,574.574 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:46,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:46,596.596 INFO    ] 200
[2026-06-13 04:28:46,597.597 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:46,599.599 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:46,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:46,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:46,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:46,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:28:48,648.648 INFO    ] ================================================
[2026-06-13 04:28:48,665.665 INFO    ] Launching Daemon at Sat Jun 13 04:28:48 IST 2026
[2026-06-13 04:28:48,676.676 INFO    ] ================================================
[2026-06-13 04:28:49,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:28:49
[2026-06-13 04:28:49,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:28:49,485.485 INFO    ] Initializing speech engine...
[2026-06-13 04:28:49,493.493 INFO    ] 2026-06-13 04:28:49
[2026-06-13 04:28:49,704.704 INFO    ] 2026-06-13 04:28:49
[2026-06-13 04:28:49,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:28:49,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:28:49,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:28:50,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:28:50,102.102 INFO    ] time= 13/06/2026 04:28:50
[2026-06-13 04:28:50,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:28:50,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:28:50,192.192 INFO    ] No existing commands found in stream
[2026-06-13 04:28:55,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:28:55,203.203 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 04:28:58,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:28:58,493.493 INFO    ] Checking for system updates...
[2026-06-13 04:28:58,514.514 INFO    ] 200
[2026-06-13 04:28:58,515.515 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:58,516.516 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:28:58,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 04:28:58,539.539 INFO    ] 200
[2026-06-13 04:28:58,540.540 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:28:58,542.542 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:28:58,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:28:58,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:28:58,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:28:58,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:00,581.581 INFO    ] ================================================
[2026-06-13 04:29:00,590.590 INFO    ] Launching Daemon at Sat Jun 13 04:29:00 IST 2026
[2026-06-13 04:29:00,596.596 INFO    ] ================================================
[2026-06-13 04:29:00,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:00
[2026-06-13 04:29:01,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:01,616.616 INFO    ] Initializing speech engine...
[2026-06-13 04:29:01,625.625 INFO    ] 2026-06-13 04:29:01
[2026-06-13 04:29:01,957.957 INFO    ] 2026-06-13 04:29:01
[2026-06-13 04:29:02,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:02,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:02,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:02,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:02,418.418 INFO    ] time= 13/06/2026 04:29:02
[2026-06-13 04:29:02,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:02,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:02,582.582 INFO    ] No existing commands found in stream
[2026-06-13 04:29:07,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:29:07,603.603 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 04:29:10,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:29:10,977.977 INFO    ] Checking for system updates...
[2026-06-13 04:29:10,998.998 INFO    ] 200
[2026-06-13 04:29:10,999.999 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:11,001.001 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:29:11,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 04:29:11,021.021 INFO    ] 200
[2026-06-13 04:29:11,023.023 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:11,024.024 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:29:11,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:29:11,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:29:11,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:29:11,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:13,072.072 INFO    ] ================================================
[2026-06-13 04:29:13,089.089 INFO    ] Launching Daemon at Sat Jun 13 04:29:13 IST 2026
[2026-06-13 04:29:13,101.101 INFO    ] ================================================
[2026-06-13 04:29:13,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:13
[2026-06-13 04:29:13,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:13,905.905 INFO    ] Initializing speech engine...
[2026-06-13 04:29:13,909.909 INFO    ] 2026-06-13 04:29:13
[2026-06-13 04:29:14,139.139 INFO    ] 2026-06-13 04:29:14
[2026-06-13 04:29:14,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:14,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:14,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:14,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:14,576.576 INFO    ] time= 13/06/2026 04:29:14
[2026-06-13 04:29:14,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:14,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:14,681.681 INFO    ] No existing commands found in stream
[2026-06-13 04:29:19,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:29:19,692.692 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 04:29:20,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:29:20,560.560 INFO    ] Checking for system updates...
[2026-06-13 04:29:20,582.582 INFO    ] 200
[2026-06-13 04:29:20,583.583 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:20,584.584 INFO    ] Machine not idle (state: STATE_PREORDER), skipping update check
[2026-06-13 04:29:20,586.586 INFO    ] Checking for camera pi updates...
[2026-06-13 04:29:20,606.606 INFO    ] 200
[2026-06-13 04:29:20,608.608 INFO    ] {"state": "STATE_PREORDER", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:20,609.609 INFO    ] Machine not idle (state: STATE_PREORDER), skipping camera update check
[2026-06-13 04:29:20,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:29:20,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:29:20,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:29:20,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:22,656.656 INFO    ] ================================================
[2026-06-13 04:29:22,673.673 INFO    ] Launching Daemon at Sat Jun 13 04:29:22 IST 2026
[2026-06-13 04:29:22,684.684 INFO    ] ================================================
[2026-06-13 04:29:23,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:23
[2026-06-13 04:29:23,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:24,017.017 INFO    ] Initializing speech engine...
[2026-06-13 04:29:24,026.026 INFO    ] 2026-06-13 04:29:24
[2026-06-13 04:29:24,235.235 INFO    ] 2026-06-13 04:29:24
[2026-06-13 04:29:24,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:24,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:24,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:24,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:24,648.648 INFO    ] time= 13/06/2026 04:29:24
[2026-06-13 04:29:24,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:24,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:24,761.761 INFO    ] No existing commands found in stream
[2026-06-13 04:29:29,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:29:29,771.771 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 04:29:32,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:29:32,585.585 INFO    ] Checking for system updates...
[2026-06-13 04:29:32,605.605 INFO    ] 200
[2026-06-13 04:29:32,607.607 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:32,608.608 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 04:29:32,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 04:29:32,629.629 INFO    ] 200
[2026-06-13 04:29:32,631.631 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:32,632.632 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 04:29:32,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:29:32,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:29:32,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:29:32,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:34,687.687 INFO    ] ================================================
[2026-06-13 04:29:34,703.703 INFO    ] Launching Daemon at Sat Jun 13 04:29:34 IST 2026
[2026-06-13 04:29:34,715.715 INFO    ] ================================================
[2026-06-13 04:29:35,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:35
[2026-06-13 04:29:35,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:35,549.549 INFO    ] Initializing speech engine...
[2026-06-13 04:29:35,554.554 INFO    ] 2026-06-13 04:29:35
[2026-06-13 04:29:35,762.762 INFO    ] 2026-06-13 04:29:35
[2026-06-13 04:29:35,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:36,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:36,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:36,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:36,205.205 INFO    ] time= 13/06/2026 04:29:36
[2026-06-13 04:29:36,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:36,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:36,394.394 INFO    ] No existing commands found in stream
[2026-06-13 04:29:41,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:29:41,419.419 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 04:29:43,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:29:43,485.485 INFO    ] Checking for system updates...
[2026-06-13 04:29:43,505.505 INFO    ] 200
[2026-06-13 04:29:43,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:43,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:29:43,537.537 INFO    ] No update needed
[2026-06-13 04:29:43,539.539 INFO    ] Checking for camera pi updates...
[2026-06-13 04:29:43,560.560 INFO    ] 200
[2026-06-13 04:29:43,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:43,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:29:43,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:29:43,634.634 INFO    ] No camera update needed
[2026-06-13 04:29:43,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:29:43,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:29:43,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:29:43,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:45,682.682 INFO    ] ================================================
[2026-06-13 04:29:45,697.697 INFO    ] Launching Daemon at Sat Jun 13 04:29:45 IST 2026
[2026-06-13 04:29:45,708.708 INFO    ] ================================================
[2026-06-13 04:29:46,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:46
[2026-06-13 04:29:46,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:46,491.491 INFO    ] Initializing speech engine...
[2026-06-13 04:29:46,496.496 INFO    ] 2026-06-13 04:29:46
[2026-06-13 04:29:46,704.704 INFO    ] 2026-06-13 04:29:46
[2026-06-13 04:29:46,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:46,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:46,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:47,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:47,108.108 INFO    ] time= 13/06/2026 04:29:47
[2026-06-13 04:29:47,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:47,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:47,224.224 INFO    ] No existing commands found in stream
[2026-06-13 04:29:52,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:29:52,237.237 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 04:29:53,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:29:53,533.533 INFO    ] Checking for system updates...
[2026-06-13 04:29:53,555.555 INFO    ] 200
[2026-06-13 04:29:53,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:53,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:29:53,590.590 INFO    ] No update needed
[2026-06-13 04:29:53,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 04:29:53,611.611 INFO    ] 200
[2026-06-13 04:29:53,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:29:53,638.638 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:29:53,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:29:53,681.681 INFO    ] No camera update needed
[2026-06-13 04:29:53,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:29:53,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:29:53,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:29:53,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:29:55,727.727 INFO    ] ================================================
[2026-06-13 04:29:55,743.743 INFO    ] Launching Daemon at Sat Jun 13 04:29:55 IST 2026
[2026-06-13 04:29:55,754.754 INFO    ] ================================================
[2026-06-13 04:29:56,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:29:56
[2026-06-13 04:29:56,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:29:56,648.648 INFO    ] Initializing speech engine...
[2026-06-13 04:29:56,654.654 INFO    ] 2026-06-13 04:29:56
[2026-06-13 04:29:56,864.864 INFO    ] 2026-06-13 04:29:56
[2026-06-13 04:29:56,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:29:57,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:29:57,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:29:57,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:29:57,282.282 INFO    ] time= 13/06/2026 04:29:57
[2026-06-13 04:29:57,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:29:57,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:29:57,390.390 INFO    ] No existing commands found in stream
[2026-06-13 04:30:02,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:30:02,404.404 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 04:30:09,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:30:09,161.161 INFO    ] Checking for system updates...
[2026-06-13 04:30:09,182.182 INFO    ] 200
[2026-06-13 04:30:09,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:09,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:09,218.218 INFO    ] No update needed
[2026-06-13 04:30:09,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 04:30:09,240.240 INFO    ] 200
[2026-06-13 04:30:09,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:09,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:30:09,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:30:09,303.303 INFO    ] No camera update needed
[2026-06-13 04:30:09,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:30:09,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:30:09,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:30:09,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:30:11,357.357 INFO    ] ================================================
[2026-06-13 04:30:11,372.372 INFO    ] Launching Daemon at Sat Jun 13 04:30:11 IST 2026
[2026-06-13 04:30:11,383.383 INFO    ] ================================================
[2026-06-13 04:30:11,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:30:11
[2026-06-13 04:30:12,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:30:12,184.184 INFO    ] Initializing speech engine...
[2026-06-13 04:30:12,188.188 INFO    ] 2026-06-13 04:30:12
[2026-06-13 04:30:12,391.391 INFO    ] 2026-06-13 04:30:12
[2026-06-13 04:30:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:30:12,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:30:12,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:30:12,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:30:12,683.683 INFO    ] time= 13/06/2026 04:30:12
[2026-06-13 04:30:12,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:30:12,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:30:12,773.773 INFO    ] No existing commands found in stream
[2026-06-13 04:30:17,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:30:17,790.790 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 04:30:18,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:30:18,488.488 INFO    ] Checking for system updates...
[2026-06-13 04:30:18,510.510 INFO    ] 200
[2026-06-13 04:30:18,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:18,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:18,546.546 INFO    ] No update needed
[2026-06-13 04:30:18,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 04:30:18,566.566 INFO    ] 200
[2026-06-13 04:30:18,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:18,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:30:18,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:18,630.630 INFO    ] No camera update needed
[2026-06-13 04:30:18,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:30:18,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:30:18,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:30:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:30:20,677.677 INFO    ] ================================================
[2026-06-13 04:30:20,692.692 INFO    ] Launching Daemon at Sat Jun 13 04:30:20 IST 2026
[2026-06-13 04:30:20,704.704 INFO    ] ================================================
[2026-06-13 04:30:21,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:30:21
[2026-06-13 04:30:21,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:30:21,576.576 INFO    ] Initializing speech engine...
[2026-06-13 04:30:21,584.584 INFO    ] 2026-06-13 04:30:21
[2026-06-13 04:30:21,798.798 INFO    ] 2026-06-13 04:30:21
[2026-06-13 04:30:21,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:30:22,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:30:22,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:30:22,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:30:22,209.209 INFO    ] time= 13/06/2026 04:30:22
[2026-06-13 04:30:22,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:30:22,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:30:22,321.321 INFO    ] No existing commands found in stream
[2026-06-13 04:30:27,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:30:27,335.335 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 04:30:29,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:30:29,534.534 INFO    ] Checking for system updates...
[2026-06-13 04:30:29,555.555 INFO    ] 200
[2026-06-13 04:30:29,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:29,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:29,591.591 INFO    ] No update needed
[2026-06-13 04:30:29,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 04:30:29,611.611 INFO    ] 200
[2026-06-13 04:30:29,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:29,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:30:29,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:29,678.678 INFO    ] No camera update needed
[2026-06-13 04:30:29,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:30:29,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:30:29,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:30:29,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:30:31,726.726 INFO    ] ================================================
[2026-06-13 04:30:31,741.741 INFO    ] Launching Daemon at Sat Jun 13 04:30:31 IST 2026
[2026-06-13 04:30:31,753.753 INFO    ] ================================================
[2026-06-13 04:30:32,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:30:32
[2026-06-13 04:30:32,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:30:32,587.587 INFO    ] Initializing speech engine...
[2026-06-13 04:30:32,598.598 INFO    ] 2026-06-13 04:30:32
[2026-06-13 04:30:32,806.806 INFO    ] 2026-06-13 04:30:32
[2026-06-13 04:30:32,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:30:33,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:30:33,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:30:33,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:30:33,265.265 INFO    ] time= 13/06/2026 04:30:33
[2026-06-13 04:30:33,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:30:33,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:30:33,401.401 INFO    ] No existing commands found in stream
[2026-06-13 04:30:38,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:30:38,413.413 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 04:30:40,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:30:40,507.507 INFO    ] Checking for system updates...
[2026-06-13 04:30:40,527.527 INFO    ] 200
[2026-06-13 04:30:40,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:40,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:40,560.560 INFO    ] No update needed
[2026-06-13 04:30:40,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 04:30:40,581.581 INFO    ] 200
[2026-06-13 04:30:40,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:40,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:30:40,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:40,748.748 INFO    ] No camera update needed
[2026-06-13 04:30:40,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:30:40,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:30:40,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:30:40,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:30:42,795.795 INFO    ] ================================================
[2026-06-13 04:30:42,815.815 INFO    ] Launching Daemon at Sat Jun 13 04:30:42 IST 2026
[2026-06-13 04:30:42,825.825 INFO    ] ================================================
[2026-06-13 04:30:43,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:30:43
[2026-06-13 04:30:43,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:30:43,688.688 INFO    ] Initializing speech engine...
[2026-06-13 04:30:43,694.694 INFO    ] 2026-06-13 04:30:43
[2026-06-13 04:30:43,903.903 INFO    ] 2026-06-13 04:30:43
[2026-06-13 04:30:43,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:30:44,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:30:44,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:30:44,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:30:44,305.305 INFO    ] time= 13/06/2026 04:30:44
[2026-06-13 04:30:44,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:30:44,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:30:44,427.427 INFO    ] No existing commands found in stream
[2026-06-13 04:30:49,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:30:49,440.440 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 04:30:51,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:30:51,373.373 INFO    ] Checking for system updates...
[2026-06-13 04:30:51,395.395 INFO    ] 200
[2026-06-13 04:30:51,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:51,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:51,430.430 INFO    ] No update needed
[2026-06-13 04:30:51,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 04:30:51,451.451 INFO    ] 200
[2026-06-13 04:30:51,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:30:51,478.478 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:30:51,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:30:51,504.504 INFO    ] No camera update needed
[2026-06-13 04:30:51,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:30:51,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:30:51,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:30:51,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:30:53,553.553 INFO    ] ================================================
[2026-06-13 04:30:53,569.569 INFO    ] Launching Daemon at Sat Jun 13 04:30:53 IST 2026
[2026-06-13 04:30:53,580.580 INFO    ] ================================================
[2026-06-13 04:30:53,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:30:53
[2026-06-13 04:30:54,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:30:54,408.408 INFO    ] Initializing speech engine...
[2026-06-13 04:30:54,413.413 INFO    ] 2026-06-13 04:30:54
[2026-06-13 04:30:54,633.633 INFO    ] 2026-06-13 04:30:54
[2026-06-13 04:30:54,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:30:54,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:30:54,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:30:54,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:30:55,028.028 INFO    ] time= 13/06/2026 04:30:54
[2026-06-13 04:30:55,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:30:55,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:30:55,155.155 INFO    ] No existing commands found in stream
[2026-06-13 04:31:00,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:00,163.163 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 04:31:00,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:31:00,974.974 INFO    ] Checking for system updates...
[2026-06-13 04:31:01,009.009 INFO    ] 200
[2026-06-13 04:31:01,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:01,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:31:01,069.069 INFO    ] No update needed
[2026-06-13 04:31:01,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:01,111.111 INFO    ] 200
[2026-06-13 04:31:01,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:01,156.156 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:01,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:31:01,201.201 INFO    ] No camera update needed
[2026-06-13 04:31:01,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:01,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:01,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:01,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:03,246.246 INFO    ] ================================================
[2026-06-13 04:31:03,264.264 INFO    ] Launching Daemon at Sat Jun 13 04:31:03 IST 2026
[2026-06-13 04:31:03,275.275 INFO    ] ================================================
[2026-06-13 04:31:03,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:03
[2026-06-13 04:31:03,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:04,057.057 INFO    ] Initializing speech engine...
[2026-06-13 04:31:04,063.063 INFO    ] 2026-06-13 04:31:04
[2026-06-13 04:31:04,264.264 INFO    ] 2026-06-13 04:31:04
[2026-06-13 04:31:04,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:04,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:04,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:04,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:04,628.628 INFO    ] time= 13/06/2026 04:31:04
[2026-06-13 04:31:04,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:04,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:04,849.849 INFO    ] No existing commands found in stream
[2026-06-13 04:31:09,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:09,874.874 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 04:31:12,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:31:12,227.227 INFO    ] Checking for system updates...
[2026-06-13 04:31:12,247.247 INFO    ] 200
[2026-06-13 04:31:12,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:12,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:12,281.281 INFO    ] No update needed
[2026-06-13 04:31:12,282.282 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:12,301.301 INFO    ] 200
[2026-06-13 04:31:12,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:12,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:12,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:12,352.352 INFO    ] No camera update needed
[2026-06-13 04:31:12,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:12,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:12,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:12,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:14,401.401 INFO    ] ================================================
[2026-06-13 04:31:14,416.416 INFO    ] Launching Daemon at Sat Jun 13 04:31:14 IST 2026
[2026-06-13 04:31:14,427.427 INFO    ] ================================================
[2026-06-13 04:31:14,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:14
[2026-06-13 04:31:15,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:15,257.257 INFO    ] Initializing speech engine...
[2026-06-13 04:31:15,267.267 INFO    ] 2026-06-13 04:31:15
[2026-06-13 04:31:15,480.480 INFO    ] 2026-06-13 04:31:15
[2026-06-13 04:31:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:15,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:15,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:15,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:15,897.897 INFO    ] time= 13/06/2026 04:31:15
[2026-06-13 04:31:15,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:15,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:16,004.004 INFO    ] No existing commands found in stream
[2026-06-13 04:31:21,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:21,022.022 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 04:31:24,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:31:24,095.095 INFO    ] Checking for system updates...
[2026-06-13 04:31:24,117.117 INFO    ] 200
[2026-06-13 04:31:24,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:24,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:24,153.153 INFO    ] No update needed
[2026-06-13 04:31:24,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:24,174.174 INFO    ] 200
[2026-06-13 04:31:24,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:24,199.199 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:24,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:24,239.239 INFO    ] No camera update needed
[2026-06-13 04:31:24,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:24,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:24,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:24,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:26,288.288 INFO    ] ================================================
[2026-06-13 04:31:26,304.304 INFO    ] Launching Daemon at Sat Jun 13 04:31:26 IST 2026
[2026-06-13 04:31:26,315.315 INFO    ] ================================================
[2026-06-13 04:31:26,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:26
[2026-06-13 04:31:26,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:27,095.095 INFO    ] Initializing speech engine...
[2026-06-13 04:31:27,106.106 INFO    ] 2026-06-13 04:31:27
[2026-06-13 04:31:27,311.311 INFO    ] 2026-06-13 04:31:27
[2026-06-13 04:31:27,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:27,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:27,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:27,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:27,714.714 INFO    ] time= 13/06/2026 04:31:27
[2026-06-13 04:31:27,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:27,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:27,952.952 INFO    ] No existing commands found in stream
[2026-06-13 04:31:32,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:32,969.969 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 04:31:33,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:31:33,842.842 INFO    ] Checking for system updates...
[2026-06-13 04:31:33,863.863 INFO    ] 200
[2026-06-13 04:31:33,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:33,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:31:33,896.896 INFO    ] No update needed
[2026-06-13 04:31:33,897.897 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:33,917.917 INFO    ] 200
[2026-06-13 04:31:33,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:33,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:33,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:33,983.983 INFO    ] No camera update needed
[2026-06-13 04:31:33,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:33,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:33,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:33,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:36,031.031 INFO    ] ================================================
[2026-06-13 04:31:36,046.046 INFO    ] Launching Daemon at Sat Jun 13 04:31:36 IST 2026
[2026-06-13 04:31:36,057.057 INFO    ] ================================================
[2026-06-13 04:31:36,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:36
[2026-06-13 04:31:36,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:36,902.902 INFO    ] Initializing speech engine...
[2026-06-13 04:31:36,908.908 INFO    ] 2026-06-13 04:31:36
[2026-06-13 04:31:37,115.115 INFO    ] 2026-06-13 04:31:37
[2026-06-13 04:31:37,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:37,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:37,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:37,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:37,535.535 INFO    ] time= 13/06/2026 04:31:37
[2026-06-13 04:31:37,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:37,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:37,631.631 INFO    ] No existing commands found in stream
[2026-06-13 04:31:42,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:42,645.645 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 04:31:43,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:31:43,810.810 INFO    ] Checking for system updates...
[2026-06-13 04:31:43,832.832 INFO    ] 200
[2026-06-13 04:31:43,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:43,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:43,869.869 INFO    ] No update needed
[2026-06-13 04:31:43,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:43,890.890 INFO    ] 200
[2026-06-13 04:31:43,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:43,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:43,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:43,954.954 INFO    ] No camera update needed
[2026-06-13 04:31:43,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:43,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:43,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:43,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:46,001.001 INFO    ] ================================================
[2026-06-13 04:31:46,017.017 INFO    ] Launching Daemon at Sat Jun 13 04:31:46 IST 2026
[2026-06-13 04:31:46,028.028 INFO    ] ================================================
[2026-06-13 04:31:46,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:46
[2026-06-13 04:31:46,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:46,847.847 INFO    ] Initializing speech engine...
[2026-06-13 04:31:46,856.856 INFO    ] 2026-06-13 04:31:46
[2026-06-13 04:31:47,068.068 INFO    ] 2026-06-13 04:31:47
[2026-06-13 04:31:47,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:47,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:47,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:47,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:47,484.484 INFO    ] time= 13/06/2026 04:31:47
[2026-06-13 04:31:47,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:47,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:47,591.591 INFO    ] No existing commands found in stream
[2026-06-13 04:31:52,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:31:52,605.605 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 04:31:54,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:31:54,002.002 INFO    ] Checking for system updates...
[2026-06-13 04:31:54,024.024 INFO    ] 200
[2026-06-13 04:31:54,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:54,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:54,062.062 INFO    ] No update needed
[2026-06-13 04:31:54,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 04:31:54,083.083 INFO    ] 200
[2026-06-13 04:31:54,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:31:54,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:31:54,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:31:54,147.147 INFO    ] No camera update needed
[2026-06-13 04:31:54,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:31:54,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:31:54,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:31:54,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:31:56,197.197 INFO    ] ================================================
[2026-06-13 04:31:56,212.212 INFO    ] Launching Daemon at Sat Jun 13 04:31:56 IST 2026
[2026-06-13 04:31:56,223.223 INFO    ] ================================================
[2026-06-13 04:31:56,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:31:56
[2026-06-13 04:31:56,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:31:57,005.005 INFO    ] Initializing speech engine...
[2026-06-13 04:31:57,013.013 INFO    ] 2026-06-13 04:31:57
[2026-06-13 04:31:57,234.234 INFO    ] 2026-06-13 04:31:57
[2026-06-13 04:31:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:31:57,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:31:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:31:57,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:31:57,608.608 INFO    ] time= 13/06/2026 04:31:57
[2026-06-13 04:31:57,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:31:57,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:31:57,789.789 INFO    ] No existing commands found in stream
[2026-06-13 04:32:02,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:32:02,800.800 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 04:32:05,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:32:05,552.552 INFO    ] Checking for system updates...
[2026-06-13 04:32:05,573.573 INFO    ] 200
[2026-06-13 04:32:05,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:05,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:32:05,606.606 INFO    ] No update needed
[2026-06-13 04:32:05,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 04:32:05,628.628 INFO    ] 200
[2026-06-13 04:32:05,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:05,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:32:05,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:32:05,695.695 INFO    ] No camera update needed
[2026-06-13 04:32:05,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:32:05,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:32:05,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:32:05,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:32:07,748.748 INFO    ] ================================================
[2026-06-13 04:32:07,763.763 INFO    ] Launching Daemon at Sat Jun 13 04:32:07 IST 2026
[2026-06-13 04:32:07,775.775 INFO    ] ================================================
[2026-06-13 04:32:08,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:32:08
[2026-06-13 04:32:08,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:32:08,599.599 INFO    ] Initializing speech engine...
[2026-06-13 04:32:08,604.604 INFO    ] 2026-06-13 04:32:08
[2026-06-13 04:32:08,805.805 INFO    ] 2026-06-13 04:32:08
[2026-06-13 04:32:08,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:32:08,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:32:09,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:32:09,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:32:09,224.224 INFO    ] time= 13/06/2026 04:32:09
[2026-06-13 04:32:09,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:32:09,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:32:09,318.318 INFO    ] No existing commands found in stream
[2026-06-13 04:32:14,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:32:14,332.332 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 04:32:17,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:32:17,045.045 INFO    ] Checking for system updates...
[2026-06-13 04:32:17,066.066 INFO    ] 200
[2026-06-13 04:32:17,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:17,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:17,099.099 INFO    ] No update needed
[2026-06-13 04:32:17,100.100 INFO    ] Checking for camera pi updates...
[2026-06-13 04:32:17,122.122 INFO    ] 200
[2026-06-13 04:32:17,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:17,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:32:17,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:17,189.189 INFO    ] No camera update needed
[2026-06-13 04:32:17,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:32:17,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:32:17,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:32:17,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:32:19,239.239 INFO    ] ================================================
[2026-06-13 04:32:19,254.254 INFO    ] Launching Daemon at Sat Jun 13 04:32:19 IST 2026
[2026-06-13 04:32:19,265.265 INFO    ] ================================================
[2026-06-13 04:32:19,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:32:19
[2026-06-13 04:32:19,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:32:20,071.071 INFO    ] Initializing speech engine...
[2026-06-13 04:32:20,084.084 INFO    ] 2026-06-13 04:32:20
[2026-06-13 04:32:20,303.303 INFO    ] 2026-06-13 04:32:20
[2026-06-13 04:32:20,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:32:20,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:32:20,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:32:20,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:32:20,728.728 INFO    ] time= 13/06/2026 04:32:20
[2026-06-13 04:32:20,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:32:20,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:32:20,860.860 INFO    ] No existing commands found in stream
[2026-06-13 04:32:25,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:32:25,874.874 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 04:32:29,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:32:29,504.504 INFO    ] Checking for system updates...
[2026-06-13 04:32:29,524.524 INFO    ] 200
[2026-06-13 04:32:29,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:29,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:32:29,558.558 INFO    ] No update needed
[2026-06-13 04:32:29,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 04:32:29,582.582 INFO    ] 200
[2026-06-13 04:32:29,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:29,607.607 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:32:29,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:32:29,644.644 INFO    ] No camera update needed
[2026-06-13 04:32:29,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:32:29,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:32:29,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:32:29,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:32:31,692.692 INFO    ] ================================================
[2026-06-13 04:32:31,709.709 INFO    ] Launching Daemon at Sat Jun 13 04:32:31 IST 2026
[2026-06-13 04:32:31,721.721 INFO    ] ================================================
[2026-06-13 04:32:32,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:32:32
[2026-06-13 04:32:32,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:32:32,599.599 INFO    ] Initializing speech engine...
[2026-06-13 04:32:32,603.603 INFO    ] 2026-06-13 04:32:32
[2026-06-13 04:32:32,832.832 INFO    ] 2026-06-13 04:32:32
[2026-06-13 04:32:32,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:32:33,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:32:33,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:32:33,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:32:33,294.294 INFO    ] time= 13/06/2026 04:32:33
[2026-06-13 04:32:33,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:32:33,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:32:33,408.408 INFO    ] No existing commands found in stream
[2026-06-13 04:32:38,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:32:38,421.421 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 04:32:39,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:32:39,938.938 INFO    ] Checking for system updates...
[2026-06-13 04:32:39,959.959 INFO    ] 200
[2026-06-13 04:32:39,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:39,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:39,993.993 INFO    ] No update needed
[2026-06-13 04:32:39,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 04:32:40,014.014 INFO    ] 200
[2026-06-13 04:32:40,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:40,039.039 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:32:40,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:40,084.084 INFO    ] No camera update needed
[2026-06-13 04:32:40,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:32:40,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:32:40,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:32:40,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:32:42,132.132 INFO    ] ================================================
[2026-06-13 04:32:42,147.147 INFO    ] Launching Daemon at Sat Jun 13 04:32:42 IST 2026
[2026-06-13 04:32:42,158.158 INFO    ] ================================================
[2026-06-13 04:32:42,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:32:42
[2026-06-13 04:32:43,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:32:43,565.565 INFO    ] Initializing speech engine...
[2026-06-13 04:32:43,575.575 INFO    ] 2026-06-13 04:32:43
[2026-06-13 04:32:43,783.783 INFO    ] 2026-06-13 04:32:43
[2026-06-13 04:32:43,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:32:43,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:32:44,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:32:44,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:32:44,186.186 INFO    ] time= 13/06/2026 04:32:44
[2026-06-13 04:32:44,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:32:44,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:32:44,305.305 INFO    ] No existing commands found in stream
[2026-06-13 04:32:49,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:32:49,318.318 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 04:32:51,552.552 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:32:51,554.554 INFO    ] Checking for system updates...
[2026-06-13 04:32:51,576.576 INFO    ] 200
[2026-06-13 04:32:51,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:51,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:51,611.611 INFO    ] No update needed
[2026-06-13 04:32:51,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 04:32:51,633.633 INFO    ] 200
[2026-06-13 04:32:51,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:32:51,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:32:51,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:32:51,800.800 INFO    ] No camera update needed
[2026-06-13 04:32:51,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:32:51,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:32:51,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:32:51,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:32:53,848.848 INFO    ] ================================================
[2026-06-13 04:32:53,863.863 INFO    ] Launching Daemon at Sat Jun 13 04:32:53 IST 2026
[2026-06-13 04:32:53,874.874 INFO    ] ================================================
[2026-06-13 04:32:54,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:32:54
[2026-06-13 04:32:54,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:32:54,680.680 INFO    ] Initializing speech engine...
[2026-06-13 04:32:54,686.686 INFO    ] 2026-06-13 04:32:54
[2026-06-13 04:32:54,889.889 INFO    ] 2026-06-13 04:32:54
[2026-06-13 04:32:54,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:32:55,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:32:55,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:32:55,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:32:55,299.299 INFO    ] time= 13/06/2026 04:32:55
[2026-06-13 04:32:55,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:32:55,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:32:55,432.432 INFO    ] No existing commands found in stream
[2026-06-13 04:33:00,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:00,452.452 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 04:33:01,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:33:01,498.498 INFO    ] Checking for system updates...
[2026-06-13 04:33:01,523.523 INFO    ] 200
[2026-06-13 04:33:01,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:01,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:01,557.557 INFO    ] No update needed
[2026-06-13 04:33:01,558.558 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:01,578.578 INFO    ] 200
[2026-06-13 04:33:01,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:01,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:01,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:01,646.646 INFO    ] No camera update needed
[2026-06-13 04:33:01,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:01,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:01,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:01,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:33:03,686.686 INFO    ] ================================================
[2026-06-13 04:33:03,702.702 INFO    ] Launching Daemon at Sat Jun 13 04:33:03 IST 2026
[2026-06-13 04:33:03,713.713 INFO    ] ================================================
[2026-06-13 04:33:04,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:33:04
[2026-06-13 04:33:04,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:33:04,580.580 INFO    ] Initializing speech engine...
[2026-06-13 04:33:04,585.585 INFO    ] 2026-06-13 04:33:04
[2026-06-13 04:33:04,795.795 INFO    ] 2026-06-13 04:33:04
[2026-06-13 04:33:04,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:33:04,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:33:04,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:33:05,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:33:05,157.157 INFO    ] time= 13/06/2026 04:33:05
[2026-06-13 04:33:05,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:33:05,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:33:05,323.323 INFO    ] No existing commands found in stream
[2026-06-13 04:33:10,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:10,341.341 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 04:33:14,680.680 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:33:14,683.683 INFO    ] Checking for system updates...
[2026-06-13 04:33:14,720.720 INFO    ] 200
[2026-06-13 04:33:14,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:14,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:33:14,780.780 INFO    ] No update needed
[2026-06-13 04:33:14,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:14,810.810 INFO    ] 200
[2026-06-13 04:33:14,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:14,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:14,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:33:14,876.876 INFO    ] No camera update needed
[2026-06-13 04:33:14,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:14,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:14,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:14,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:33:16,925.925 INFO    ] ================================================
[2026-06-13 04:33:16,941.941 INFO    ] Launching Daemon at Sat Jun 13 04:33:16 IST 2026
[2026-06-13 04:33:16,952.952 INFO    ] ================================================
[2026-06-13 04:33:17,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:33:17
[2026-06-13 04:33:17,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:33:17,773.773 INFO    ] Initializing speech engine...
[2026-06-13 04:33:17,783.783 INFO    ] 2026-06-13 04:33:17
[2026-06-13 04:33:17,995.995 INFO    ] 2026-06-13 04:33:17
[2026-06-13 04:33:18,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:33:18,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:33:18,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:33:18,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:33:18,409.409 INFO    ] time= 13/06/2026 04:33:18
[2026-06-13 04:33:18,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:33:18,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:33:18,521.521 INFO    ] No existing commands found in stream
[2026-06-13 04:33:23,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:23,536.536 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 04:33:23,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:33:23,847.847 INFO    ] Checking for system updates...
[2026-06-13 04:33:23,868.868 INFO    ] 200
[2026-06-13 04:33:23,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:23,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:33:23,902.902 INFO    ] No update needed
[2026-06-13 04:33:23,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:23,923.923 INFO    ] 200
[2026-06-13 04:33:23,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:23,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:23,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:23,992.992 INFO    ] No camera update needed
[2026-06-13 04:33:23,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:23,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:23,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:24,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:33:26,039.039 INFO    ] ================================================
[2026-06-13 04:33:26,054.054 INFO    ] Launching Daemon at Sat Jun 13 04:33:26 IST 2026
[2026-06-13 04:33:26,065.065 INFO    ] ================================================
[2026-06-13 04:33:26,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:33:26
[2026-06-13 04:33:26,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:33:26,918.918 INFO    ] Initializing speech engine...
[2026-06-13 04:33:26,923.923 INFO    ] 2026-06-13 04:33:26
[2026-06-13 04:33:27,132.132 INFO    ] 2026-06-13 04:33:27
[2026-06-13 04:33:27,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:33:27,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:33:27,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:33:27,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:33:27,538.538 INFO    ] time= 13/06/2026 04:33:27
[2026-06-13 04:33:27,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:33:27,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:33:27,654.654 INFO    ] No existing commands found in stream
[2026-06-13 04:33:32,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:32,661.661 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 04:33:35,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:33:35,045.045 INFO    ] Checking for system updates...
[2026-06-13 04:33:35,066.066 INFO    ] 200
[2026-06-13 04:33:35,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:35,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:35,099.099 INFO    ] No update needed
[2026-06-13 04:33:35,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:35,121.121 INFO    ] 200
[2026-06-13 04:33:35,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:35,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:35,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:35,187.187 INFO    ] No camera update needed
[2026-06-13 04:33:35,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:35,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:35,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:35,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:33:37,236.236 INFO    ] ================================================
[2026-06-13 04:33:37,251.251 INFO    ] Launching Daemon at Sat Jun 13 04:33:37 IST 2026
[2026-06-13 04:33:37,262.262 INFO    ] ================================================
[2026-06-13 04:33:37,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:33:37
[2026-06-13 04:33:37,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:33:38,074.074 INFO    ] Initializing speech engine...
[2026-06-13 04:33:38,079.079 INFO    ] 2026-06-13 04:33:38
[2026-06-13 04:33:38,289.289 INFO    ] 2026-06-13 04:33:38
[2026-06-13 04:33:38,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:33:38,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:33:38,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:33:38,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:33:38,701.701 INFO    ] time= 13/06/2026 04:33:38
[2026-06-13 04:33:38,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:33:38,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:33:38,813.813 INFO    ] No existing commands found in stream
[2026-06-13 04:33:43,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:43,826.826 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 04:33:47,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:33:47,265.265 INFO    ] Checking for system updates...
[2026-06-13 04:33:47,285.285 INFO    ] 200
[2026-06-13 04:33:47,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:47,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:47,319.319 INFO    ] No update needed
[2026-06-13 04:33:47,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:47,340.340 INFO    ] 200
[2026-06-13 04:33:47,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:47,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:47,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:33:47,408.408 INFO    ] No camera update needed
[2026-06-13 04:33:47,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:47,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:47,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:47,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:33:49,457.457 INFO    ] ================================================
[2026-06-13 04:33:49,472.472 INFO    ] Launching Daemon at Sat Jun 13 04:33:49 IST 2026
[2026-06-13 04:33:49,483.483 INFO    ] ================================================
[2026-06-13 04:33:49,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:33:49
[2026-06-13 04:33:50,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:33:50,349.349 INFO    ] Initializing speech engine...
[2026-06-13 04:33:50,355.355 INFO    ] 2026-06-13 04:33:50
[2026-06-13 04:33:50,564.564 INFO    ] 2026-06-13 04:33:50
[2026-06-13 04:33:50,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:33:51,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:33:51,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:33:51,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:33:51,131.131 INFO    ] time= 13/06/2026 04:33:51
[2026-06-13 04:33:51,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:33:51,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:33:51,206.206 INFO    ] No existing commands found in stream
[2026-06-13 04:33:56,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:33:56,220.220 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 04:33:58,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:33:58,159.159 INFO    ] Checking for system updates...
[2026-06-13 04:33:58,196.196 INFO    ] 200
[2026-06-13 04:33:58,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:58,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:33:58,230.230 INFO    ] No update needed
[2026-06-13 04:33:58,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 04:33:58,252.252 INFO    ] 200
[2026-06-13 04:33:58,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:33:58,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:33:58,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:33:58,318.318 INFO    ] No camera update needed
[2026-06-13 04:33:58,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:33:58,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:33:58,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:33:58,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:00,369.369 INFO    ] ================================================
[2026-06-13 04:34:00,385.385 INFO    ] Launching Daemon at Sat Jun 13 04:34:00 IST 2026
[2026-06-13 04:34:00,396.396 INFO    ] ================================================
[2026-06-13 04:34:00,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:00
[2026-06-13 04:34:01,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:01,234.234 INFO    ] Initializing speech engine...
[2026-06-13 04:34:01,244.244 INFO    ] 2026-06-13 04:34:01
[2026-06-13 04:34:01,449.449 INFO    ] 2026-06-13 04:34:01
[2026-06-13 04:34:01,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:01,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:01,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:01,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:01,839.839 INFO    ] time= 13/06/2026 04:34:01
[2026-06-13 04:34:01,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:01,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:01,987.987 INFO    ] No existing commands found in stream
[2026-06-13 04:34:07,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:34:07,004.004 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 04:34:09,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:34:09,336.336 INFO    ] Checking for system updates...
[2026-06-13 04:34:09,357.357 INFO    ] 200
[2026-06-13 04:34:09,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:09,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:34:09,390.390 INFO    ] No update needed
[2026-06-13 04:34:09,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 04:34:09,411.411 INFO    ] 200
[2026-06-13 04:34:09,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:09,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:34:09,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:34:09,478.478 INFO    ] No camera update needed
[2026-06-13 04:34:09,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:34:09,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:34:09,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:34:09,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:11,527.527 INFO    ] ================================================
[2026-06-13 04:34:11,542.542 INFO    ] Launching Daemon at Sat Jun 13 04:34:11 IST 2026
[2026-06-13 04:34:11,553.553 INFO    ] ================================================
[2026-06-13 04:34:11,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:11
[2026-06-13 04:34:12,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:12,333.333 INFO    ] Initializing speech engine...
[2026-06-13 04:34:12,346.346 INFO    ] 2026-06-13 04:34:12
[2026-06-13 04:34:12,565.565 INFO    ] 2026-06-13 04:34:12
[2026-06-13 04:34:12,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:12,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:12,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:12,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:12,965.965 INFO    ] time= 13/06/2026 04:34:12
[2026-06-13 04:34:13,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:13,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:13,123.123 INFO    ] No existing commands found in stream
[2026-06-13 04:34:18,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:34:18,137.137 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 04:34:19,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:34:19,392.392 INFO    ] Checking for system updates...
[2026-06-13 04:34:19,413.413 INFO    ] 200
[2026-06-13 04:34:19,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:19,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:34:19,449.449 INFO    ] No update needed
[2026-06-13 04:34:19,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 04:34:19,473.473 INFO    ] 200
[2026-06-13 04:34:19,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:19,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:34:19,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:34:19,538.538 INFO    ] No camera update needed
[2026-06-13 04:34:19,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:34:19,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:34:19,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:34:19,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:21,587.587 INFO    ] ================================================
[2026-06-13 04:34:21,603.603 INFO    ] Launching Daemon at Sat Jun 13 04:34:21 IST 2026
[2026-06-13 04:34:21,614.614 INFO    ] ================================================
[2026-06-13 04:34:21,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:21
[2026-06-13 04:34:22,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:22,407.407 INFO    ] Initializing speech engine...
[2026-06-13 04:34:22,412.412 INFO    ] 2026-06-13 04:34:22
[2026-06-13 04:34:22,616.616 INFO    ] 2026-06-13 04:34:22
[2026-06-13 04:34:22,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:22,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:22,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:22,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:23,025.025 INFO    ] time= 13/06/2026 04:34:22
[2026-06-13 04:34:23,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:23,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:23,135.135 INFO    ] No existing commands found in stream
[2026-06-13 04:34:28,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:34:28,149.149 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 04:34:29,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:34:29,808.808 INFO    ] Checking for system updates...
[2026-06-13 04:34:29,829.829 INFO    ] 200
[2026-06-13 04:34:29,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:29,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:34:29,863.863 INFO    ] No update needed
[2026-06-13 04:34:29,864.864 INFO    ] Checking for camera pi updates...
[2026-06-13 04:34:29,886.886 INFO    ] 200
[2026-06-13 04:34:29,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:29,912.912 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:34:29,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:34:29,953.953 INFO    ] No camera update needed
[2026-06-13 04:34:29,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:34:29,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:34:29,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:34:29,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:32,003.003 INFO    ] ================================================
[2026-06-13 04:34:32,021.021 INFO    ] Launching Daemon at Sat Jun 13 04:34:32 IST 2026
[2026-06-13 04:34:32,037.037 INFO    ] ================================================
[2026-06-13 04:34:32,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:32
[2026-06-13 04:34:33,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:33,338.338 INFO    ] Initializing speech engine...
[2026-06-13 04:34:33,345.345 INFO    ] 2026-06-13 04:34:33
[2026-06-13 04:34:33,646.646 INFO    ] 2026-06-13 04:34:33
[2026-06-13 04:34:33,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:33,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:33,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:34,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:34,010.010 INFO    ] time= 13/06/2026 04:34:34
[2026-06-13 04:34:34,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:34,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:34,092.092 INFO    ] No existing commands found in stream
[2026-06-13 04:34:39,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:34:39,105.105 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 04:34:40,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:34:40,501.501 INFO    ] Checking for system updates...
[2026-06-13 04:34:40,522.522 INFO    ] 200
[2026-06-13 04:34:40,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:40,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:34:40,555.555 INFO    ] No update needed
[2026-06-13 04:34:40,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 04:34:40,576.576 INFO    ] 200
[2026-06-13 04:34:40,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:40,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:34:40,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:34:40,651.651 INFO    ] No camera update needed
[2026-06-13 04:34:40,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:34:40,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:34:40,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:34:40,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:42,699.699 INFO    ] ================================================
[2026-06-13 04:34:42,716.716 INFO    ] Launching Daemon at Sat Jun 13 04:34:42 IST 2026
[2026-06-13 04:34:42,726.726 INFO    ] ================================================
[2026-06-13 04:34:43,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:43
[2026-06-13 04:34:43,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:43,524.524 INFO    ] Initializing speech engine...
[2026-06-13 04:34:43,531.531 INFO    ] 2026-06-13 04:34:43
[2026-06-13 04:34:43,745.745 INFO    ] 2026-06-13 04:34:43
[2026-06-13 04:34:43,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:43,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:43,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:44,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:44,175.175 INFO    ] time= 13/06/2026 04:34:44
[2026-06-13 04:34:44,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:44,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:44,370.370 INFO    ] No existing commands found in stream
[2026-06-13 04:34:49,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:34:49,404.404 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 04:34:51,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:34:51,283.283 INFO    ] Checking for system updates...
[2026-06-13 04:34:51,304.304 INFO    ] 200
[2026-06-13 04:34:51,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:51,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:34:51,337.337 INFO    ] No update needed
[2026-06-13 04:34:51,339.339 INFO    ] Checking for camera pi updates...
[2026-06-13 04:34:51,358.358 INFO    ] 200
[2026-06-13 04:34:51,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:34:51,383.383 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:34:51,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:34:51,420.420 INFO    ] No camera update needed
[2026-06-13 04:34:51,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:34:51,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:34:51,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:34:51,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:34:53,468.468 INFO    ] ================================================
[2026-06-13 04:34:53,483.483 INFO    ] Launching Daemon at Sat Jun 13 04:34:53 IST 2026
[2026-06-13 04:34:53,495.495 INFO    ] ================================================
[2026-06-13 04:34:53,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:34:53
[2026-06-13 04:34:54,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:34:54,323.323 INFO    ] Initializing speech engine...
[2026-06-13 04:34:54,328.328 INFO    ] 2026-06-13 04:34:54
[2026-06-13 04:34:54,532.532 INFO    ] 2026-06-13 04:34:54
[2026-06-13 04:34:54,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:34:54,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:34:54,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:34:54,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:34:54,926.926 INFO    ] time= 13/06/2026 04:34:54
[2026-06-13 04:34:54,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:34:54,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:34:55,047.047 INFO    ] No existing commands found in stream
[2026-06-13 04:35:00,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:00,060.060 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 04:35:01,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:35:01,689.689 INFO    ] Checking for system updates...
[2026-06-13 04:35:01,716.716 INFO    ] 200
[2026-06-13 04:35:01,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:01,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:01,764.764 INFO    ] No update needed
[2026-06-13 04:35:01,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:01,799.799 INFO    ] 200
[2026-06-13 04:35:01,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:01,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:01,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:01,975.975 INFO    ] No camera update needed
[2026-06-13 04:35:01,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:01,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:01,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:01,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:04,026.026 INFO    ] ================================================
[2026-06-13 04:35:04,042.042 INFO    ] Launching Daemon at Sat Jun 13 04:35:04 IST 2026
[2026-06-13 04:35:04,053.053 INFO    ] ================================================
[2026-06-13 04:35:04,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:35:04
[2026-06-13 04:35:04,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:35:04,838.838 INFO    ] Initializing speech engine...
[2026-06-13 04:35:04,843.843 INFO    ] 2026-06-13 04:35:04
[2026-06-13 04:35:05,034.034 INFO    ] 2026-06-13 04:35:05
[2026-06-13 04:35:05,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:35:05,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:35:05,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:35:05,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:35:05,450.450 INFO    ] time= 13/06/2026 04:35:05
[2026-06-13 04:35:05,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:35:05,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:35:05,563.563 INFO    ] No existing commands found in stream
[2026-06-13 04:35:10,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:10,575.575 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 04:35:14,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:35:14,442.442 INFO    ] Checking for system updates...
[2026-06-13 04:35:14,463.463 INFO    ] 200
[2026-06-13 04:35:14,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:14,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:14,497.497 INFO    ] No update needed
[2026-06-13 04:35:14,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:14,518.518 INFO    ] 200
[2026-06-13 04:35:14,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:14,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:14,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:14,592.592 INFO    ] No camera update needed
[2026-06-13 04:35:14,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:14,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:14,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:14,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:16,639.639 INFO    ] ================================================
[2026-06-13 04:35:16,690.690 INFO    ] Launching Daemon at Sat Jun 13 04:35:16 IST 2026
[2026-06-13 04:35:16,702.702 INFO    ] ================================================
[2026-06-13 04:35:17,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:35:17
[2026-06-13 04:35:17,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:35:17,774.774 INFO    ] Initializing speech engine...
[2026-06-13 04:35:17,787.787 INFO    ] 2026-06-13 04:35:17
[2026-06-13 04:35:18,085.085 INFO    ] 2026-06-13 04:35:18
[2026-06-13 04:35:18,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:35:18,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:35:18,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:35:18,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:35:18,540.540 INFO    ] time= 13/06/2026 04:35:18
[2026-06-13 04:35:18,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:35:18,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:35:18,717.717 INFO    ] No existing commands found in stream
[2026-06-13 04:35:23,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:23,732.732 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 04:35:24,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:35:24,950.950 INFO    ] Checking for system updates...
[2026-06-13 04:35:24,987.987 INFO    ] 200
[2026-06-13 04:35:24,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:25,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:25,046.046 INFO    ] No update needed
[2026-06-13 04:35:25,049.049 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:25,083.083 INFO    ] 200
[2026-06-13 04:35:25,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:25,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:25,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:25,187.187 INFO    ] No camera update needed
[2026-06-13 04:35:25,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:25,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:25,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:25,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:27,235.235 INFO    ] ================================================
[2026-06-13 04:35:28,071.071 INFO    ] Launching Daemon at Sat Jun 13 04:35:28 IST 2026
[2026-06-13 04:35:28,081.081 INFO    ] ================================================
[2026-06-13 04:35:28,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:35:28
[2026-06-13 04:35:28,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:35:28,871.871 INFO    ] Initializing speech engine...
[2026-06-13 04:35:28,876.876 INFO    ] 2026-06-13 04:35:28
[2026-06-13 04:35:29,093.093 INFO    ] 2026-06-13 04:35:29
[2026-06-13 04:35:29,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:35:29,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:35:29,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:35:29,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:35:29,486.486 INFO    ] time= 13/06/2026 04:35:29
[2026-06-13 04:35:29,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:35:29,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:35:29,625.625 INFO    ] No existing commands found in stream
[2026-06-13 04:35:34,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:34,657.657 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 04:35:35,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:35:35,263.263 INFO    ] Checking for system updates...
[2026-06-13 04:35:35,284.284 INFO    ] 200
[2026-06-13 04:35:35,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:35,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:35:35,321.321 INFO    ] No update needed
[2026-06-13 04:35:35,322.322 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:35,342.342 INFO    ] 200
[2026-06-13 04:35:35,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:35,369.369 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:35,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:35:35,411.411 INFO    ] No camera update needed
[2026-06-13 04:35:35,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:35,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:35,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:35,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:37,459.459 INFO    ] ================================================
[2026-06-13 04:35:37,476.476 INFO    ] Launching Daemon at Sat Jun 13 04:35:37 IST 2026
[2026-06-13 04:35:37,488.488 INFO    ] ================================================
[2026-06-13 04:35:37,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:35:37
[2026-06-13 04:35:38,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:35:38,272.272 INFO    ] Initializing speech engine...
[2026-06-13 04:35:38,285.285 INFO    ] 2026-06-13 04:35:38
[2026-06-13 04:35:38,505.505 INFO    ] 2026-06-13 04:35:38
[2026-06-13 04:35:38,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:35:38,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:35:38,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:35:38,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:35:38,926.926 INFO    ] time= 13/06/2026 04:35:38
[2026-06-13 04:35:38,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:35:38,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:35:39,064.064 INFO    ] No existing commands found in stream
[2026-06-13 04:35:44,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:44,077.077 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 04:35:47,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:35:47,784.784 INFO    ] Checking for system updates...
[2026-06-13 04:35:47,804.804 INFO    ] 200
[2026-06-13 04:35:47,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:47,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:47,837.837 INFO    ] No update needed
[2026-06-13 04:35:47,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:47,858.858 INFO    ] 200
[2026-06-13 04:35:47,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:47,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:47,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:47,921.921 INFO    ] No camera update needed
[2026-06-13 04:35:47,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:47,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:47,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:47,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:49,968.968 INFO    ] ================================================
[2026-06-13 04:35:49,985.985 INFO    ] Launching Daemon at Sat Jun 13 04:35:49 IST 2026
[2026-06-13 04:35:50,995.995 INFO    ] ================================================
[2026-06-13 04:35:50,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:35:50
[2026-06-13 04:35:50,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:35:50,771.771 INFO    ] Initializing speech engine...
[2026-06-13 04:35:50,783.783 INFO    ] 2026-06-13 04:35:50
[2026-06-13 04:35:50,992.992 INFO    ] 2026-06-13 04:35:50
[2026-06-13 04:35:51,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:35:51,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:35:51,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:35:51,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:35:51,373.373 INFO    ] time= 13/06/2026 04:35:51
[2026-06-13 04:35:51,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:35:51,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:35:51,507.507 INFO    ] No existing commands found in stream
[2026-06-13 04:35:56,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:35:56,527.527 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 04:35:57,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:35:57,764.764 INFO    ] Checking for system updates...
[2026-06-13 04:35:57,785.785 INFO    ] 200
[2026-06-13 04:35:57,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:57,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:57,819.819 INFO    ] No update needed
[2026-06-13 04:35:57,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 04:35:57,842.842 INFO    ] 200
[2026-06-13 04:35:57,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:35:57,866.866 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:35:57,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:35:57,914.914 INFO    ] No camera update needed
[2026-06-13 04:35:57,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:35:57,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:35:57,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:35:57,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:35:59,963.963 INFO    ] ================================================
[2026-06-13 04:35:59,979.979 INFO    ] Launching Daemon at Sat Jun 13 04:35:59 IST 2026
[2026-06-13 04:35:59,991.991 INFO    ] ================================================
[2026-06-13 04:36:00,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:00
[2026-06-13 04:36:00,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:00,812.812 INFO    ] Initializing speech engine...
[2026-06-13 04:36:00,817.817 INFO    ] 2026-06-13 04:36:00
[2026-06-13 04:36:01,021.021 INFO    ] 2026-06-13 04:36:01
[2026-06-13 04:36:01,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:01,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:01,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:01,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:01,426.426 INFO    ] time= 13/06/2026 04:36:01
[2026-06-13 04:36:01,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:01,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:01,542.542 INFO    ] No existing commands found in stream
[2026-06-13 04:36:06,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:36:06,568.568 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 04:36:10,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:36:10,063.063 INFO    ] Checking for system updates...
[2026-06-13 04:36:10,085.085 INFO    ] 200
[2026-06-13 04:36:10,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:10,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:10,118.118 INFO    ] No update needed
[2026-06-13 04:36:10,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 04:36:10,140.140 INFO    ] 200
[2026-06-13 04:36:10,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:10,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:36:10,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:10,216.216 INFO    ] No camera update needed
[2026-06-13 04:36:10,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:36:10,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:36:10,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:36:10,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:36:12,265.265 INFO    ] ================================================
[2026-06-13 04:36:12,280.280 INFO    ] Launching Daemon at Sat Jun 13 04:36:12 IST 2026
[2026-06-13 04:36:12,292.292 INFO    ] ================================================
[2026-06-13 04:36:12,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:12
[2026-06-13 04:36:12,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:13,064.064 INFO    ] Initializing speech engine...
[2026-06-13 04:36:13,069.069 INFO    ] 2026-06-13 04:36:13
[2026-06-13 04:36:13,297.297 INFO    ] 2026-06-13 04:36:13
[2026-06-13 04:36:13,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:13,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:13,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:13,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:13,622.622 INFO    ] time= 13/06/2026 04:36:13
[2026-06-13 04:36:13,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:13,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:13,772.772 INFO    ] No existing commands found in stream
[2026-06-13 04:36:18,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:36:18,808.808 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 04:36:22,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:36:22,333.333 INFO    ] Checking for system updates...
[2026-06-13 04:36:22,354.354 INFO    ] 200
[2026-06-13 04:36:22,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:22,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:22,391.391 INFO    ] No update needed
[2026-06-13 04:36:22,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 04:36:22,411.411 INFO    ] 200
[2026-06-13 04:36:22,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:22,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:36:22,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:22,483.483 INFO    ] No camera update needed
[2026-06-13 04:36:22,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:36:22,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:36:22,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:36:22,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:36:24,530.530 INFO    ] ================================================
[2026-06-13 04:36:24,546.546 INFO    ] Launching Daemon at Sat Jun 13 04:36:24 IST 2026
[2026-06-13 04:36:24,557.557 INFO    ] ================================================
[2026-06-13 04:36:24,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:24
[2026-06-13 04:36:25,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:25,387.387 INFO    ] Initializing speech engine...
[2026-06-13 04:36:25,391.391 INFO    ] 2026-06-13 04:36:25
[2026-06-13 04:36:25,620.620 INFO    ] 2026-06-13 04:36:25
[2026-06-13 04:36:25,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:25,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:25,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:25,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:26,045.045 INFO    ] time= 13/06/2026 04:36:25
[2026-06-13 04:36:26,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:26,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:26,169.169 INFO    ] No existing commands found in stream
[2026-06-13 04:36:31,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:36:31,181.181 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 04:36:32,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:36:32,377.377 INFO    ] Checking for system updates...
[2026-06-13 04:36:32,398.398 INFO    ] 200
[2026-06-13 04:36:32,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:32,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:32,441.441 INFO    ] No update needed
[2026-06-13 04:36:32,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 04:36:32,463.463 INFO    ] 200
[2026-06-13 04:36:32,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:32,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:36:32,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:32,538.538 INFO    ] No camera update needed
[2026-06-13 04:36:32,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:36:32,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:36:32,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:36:32,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:36:34,598.598 INFO    ] ================================================
[2026-06-13 04:36:34,614.614 INFO    ] Launching Daemon at Sat Jun 13 04:36:34 IST 2026
[2026-06-13 04:36:34,624.624 INFO    ] ================================================
[2026-06-13 04:36:35,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:35
[2026-06-13 04:36:35,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:35,491.491 INFO    ] Initializing speech engine...
[2026-06-13 04:36:35,496.496 INFO    ] 2026-06-13 04:36:35
[2026-06-13 04:36:35,704.704 INFO    ] 2026-06-13 04:36:35
[2026-06-13 04:36:35,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:35,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:35,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:36,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:36,122.122 INFO    ] time= 13/06/2026 04:36:36
[2026-06-13 04:36:36,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:36,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:36,326.326 INFO    ] No existing commands found in stream
[2026-06-13 04:36:41,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:36:41,360.360 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 04:36:44,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:36:44,523.523 INFO    ] Checking for system updates...
[2026-06-13 04:36:44,544.544 INFO    ] 200
[2026-06-13 04:36:44,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:44,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:36:44,580.580 INFO    ] No update needed
[2026-06-13 04:36:44,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 04:36:44,601.601 INFO    ] 200
[2026-06-13 04:36:44,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:44,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:36:44,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:44,671.671 INFO    ] No camera update needed
[2026-06-13 04:36:44,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:36:44,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:36:44,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:36:44,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:36:46,718.718 INFO    ] ================================================
[2026-06-13 04:36:46,734.734 INFO    ] Launching Daemon at Sat Jun 13 04:36:46 IST 2026
[2026-06-13 04:36:46,745.745 INFO    ] ================================================
[2026-06-13 04:36:47,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:47
[2026-06-13 04:36:47,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:47,614.614 INFO    ] Initializing speech engine...
[2026-06-13 04:36:47,629.629 INFO    ] 2026-06-13 04:36:47
[2026-06-13 04:36:47,833.833 INFO    ] 2026-06-13 04:36:47
[2026-06-13 04:36:47,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:48,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:48,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:48,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:48,251.251 INFO    ] time= 13/06/2026 04:36:48
[2026-06-13 04:36:48,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:48,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:48,347.347 INFO    ] No existing commands found in stream
[2026-06-13 04:36:53,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:36:53,361.361 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 04:36:56,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:36:56,086.086 INFO    ] Checking for system updates...
[2026-06-13 04:36:56,107.107 INFO    ] 200
[2026-06-13 04:36:56,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:56,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:56,141.141 INFO    ] No update needed
[2026-06-13 04:36:56,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 04:36:56,162.162 INFO    ] 200
[2026-06-13 04:36:56,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:36:56,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:36:56,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:36:56,237.237 INFO    ] No camera update needed
[2026-06-13 04:36:56,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:36:56,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:36:56,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:36:56,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:36:58,285.285 INFO    ] ================================================
[2026-06-13 04:36:58,302.302 INFO    ] Launching Daemon at Sat Jun 13 04:36:58 IST 2026
[2026-06-13 04:36:58,313.313 INFO    ] ================================================
[2026-06-13 04:36:58,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:36:58
[2026-06-13 04:36:58,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:36:59,127.127 INFO    ] Initializing speech engine...
[2026-06-13 04:36:59,132.132 INFO    ] 2026-06-13 04:36:59
[2026-06-13 04:36:59,352.352 INFO    ] 2026-06-13 04:36:59
[2026-06-13 04:36:59,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:36:59,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:36:59,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:36:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:36:59,726.726 INFO    ] time= 13/06/2026 04:36:59
[2026-06-13 04:36:59,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:36:59,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:36:59,872.872 INFO    ] No existing commands found in stream
[2026-06-13 04:37:04,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:37:04,885.885 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 04:37:07,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:37:07,617.617 INFO    ] Checking for system updates...
[2026-06-13 04:37:07,638.638 INFO    ] 200
[2026-06-13 04:37:07,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:07,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:37:07,671.671 INFO    ] No update needed
[2026-06-13 04:37:07,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 04:37:07,695.695 INFO    ] 200
[2026-06-13 04:37:07,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:07,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:37:07,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:37:07,753.753 INFO    ] No camera update needed
[2026-06-13 04:37:07,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:37:07,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:37:07,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:37:07,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:37:09,801.801 INFO    ] ================================================
[2026-06-13 04:37:09,817.817 INFO    ] Launching Daemon at Sat Jun 13 04:37:09 IST 2026
[2026-06-13 04:37:09,827.827 INFO    ] ================================================
[2026-06-13 04:37:10,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:37:10
[2026-06-13 04:37:10,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:37:10,610.610 INFO    ] Initializing speech engine...
[2026-06-13 04:37:10,620.620 INFO    ] 2026-06-13 04:37:10
[2026-06-13 04:37:10,822.822 INFO    ] 2026-06-13 04:37:10
[2026-06-13 04:37:10,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:37:11,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:37:11,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:37:11,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:37:11,226.226 INFO    ] time= 13/06/2026 04:37:11
[2026-06-13 04:37:11,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:37:11,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:37:11,336.336 INFO    ] No existing commands found in stream
[2026-06-13 04:37:16,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:37:16,348.348 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 04:37:20,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:37:20,276.276 INFO    ] Checking for system updates...
[2026-06-13 04:37:20,297.297 INFO    ] 200
[2026-06-13 04:37:20,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:20,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:20,332.332 INFO    ] No update needed
[2026-06-13 04:37:20,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 04:37:20,353.353 INFO    ] 200
[2026-06-13 04:37:20,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:20,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:37:20,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:20,422.422 INFO    ] No camera update needed
[2026-06-13 04:37:20,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:37:20,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:37:20,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:37:20,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:37:22,461.461 INFO    ] ================================================
[2026-06-13 04:37:22,470.470 INFO    ] Launching Daemon at Sat Jun 13 04:37:22 IST 2026
[2026-06-13 04:37:22,475.475 INFO    ] ================================================
[2026-06-13 04:37:22,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:37:22
[2026-06-13 04:37:23,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:37:23,239.239 INFO    ] Initializing speech engine...
[2026-06-13 04:37:23,244.244 INFO    ] 2026-06-13 04:37:23
[2026-06-13 04:37:23,449.449 INFO    ] 2026-06-13 04:37:23
[2026-06-13 04:37:23,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:37:23,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:37:23,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:37:23,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:37:23,847.847 INFO    ] time= 13/06/2026 04:37:23
[2026-06-13 04:37:23,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:37:23,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:37:23,966.966 INFO    ] No existing commands found in stream
[2026-06-13 04:37:28,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:37:28,980.980 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 04:37:31,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:37:31,580.580 INFO    ] Checking for system updates...
[2026-06-13 04:37:31,603.603 INFO    ] 200
[2026-06-13 04:37:31,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:31,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:31,641.641 INFO    ] No update needed
[2026-06-13 04:37:31,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 04:37:31,664.664 INFO    ] 200
[2026-06-13 04:37:31,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:31,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:37:31,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:31,724.724 INFO    ] No camera update needed
[2026-06-13 04:37:31,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:37:31,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:37:31,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:37:31,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:37:33,774.774 INFO    ] ================================================
[2026-06-13 04:37:33,790.790 INFO    ] Launching Daemon at Sat Jun 13 04:37:33 IST 2026
[2026-06-13 04:37:33,801.801 INFO    ] ================================================
[2026-06-13 04:37:34,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:37:34
[2026-06-13 04:37:34,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:37:34,646.646 INFO    ] Initializing speech engine...
[2026-06-13 04:37:34,653.653 INFO    ] 2026-06-13 04:37:34
[2026-06-13 04:37:34,860.860 INFO    ] 2026-06-13 04:37:34
[2026-06-13 04:37:34,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:37:35,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:37:35,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:37:35,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:37:35,269.269 INFO    ] time= 13/06/2026 04:37:35
[2026-06-13 04:37:35,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:37:35,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:37:35,382.382 INFO    ] No existing commands found in stream
[2026-06-13 04:37:40,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:37:40,395.395 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 04:37:41,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:37:41,153.153 INFO    ] Checking for system updates...
[2026-06-13 04:37:41,174.174 INFO    ] 200
[2026-06-13 04:37:41,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:41,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:41,208.208 INFO    ] No update needed
[2026-06-13 04:37:41,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 04:37:41,230.230 INFO    ] 200
[2026-06-13 04:37:41,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:41,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:37:41,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:37:41,298.298 INFO    ] No camera update needed
[2026-06-13 04:37:41,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:37:41,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:37:41,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:37:41,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:37:43,347.347 INFO    ] ================================================
[2026-06-13 04:37:43,363.363 INFO    ] Launching Daemon at Sat Jun 13 04:37:43 IST 2026
[2026-06-13 04:37:43,374.374 INFO    ] ================================================
[2026-06-13 04:37:43,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:37:43
[2026-06-13 04:37:44,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:37:44,159.159 INFO    ] Initializing speech engine...
[2026-06-13 04:37:44,172.172 INFO    ] 2026-06-13 04:37:44
[2026-06-13 04:37:44,390.390 INFO    ] 2026-06-13 04:37:44
[2026-06-13 04:37:44,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:37:44,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:37:44,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:37:44,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:37:44,822.822 INFO    ] time= 13/06/2026 04:37:44
[2026-06-13 04:37:44,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:37:44,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:37:44,941.941 INFO    ] No existing commands found in stream
[2026-06-13 04:37:49,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:37:49,954.954 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 04:37:53,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:37:53,579.579 INFO    ] Checking for system updates...
[2026-06-13 04:37:53,601.601 INFO    ] 200
[2026-06-13 04:37:53,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:53,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:37:53,634.634 INFO    ] No update needed
[2026-06-13 04:37:53,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 04:37:53,654.654 INFO    ] 200
[2026-06-13 04:37:53,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:37:53,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:37:53,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:37:53,726.726 INFO    ] No camera update needed
[2026-06-13 04:37:53,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:37:53,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:37:53,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:37:53,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:37:55,773.773 INFO    ] ================================================
[2026-06-13 04:37:55,792.792 INFO    ] Launching Daemon at Sat Jun 13 04:37:55 IST 2026
[2026-06-13 04:37:55,802.802 INFO    ] ================================================
[2026-06-13 04:37:56,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:37:56
[2026-06-13 04:37:56,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:37:56,641.641 INFO    ] Initializing speech engine...
[2026-06-13 04:37:56,647.647 INFO    ] 2026-06-13 04:37:56
[2026-06-13 04:37:56,856.856 INFO    ] 2026-06-13 04:37:56
[2026-06-13 04:37:56,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:37:57,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:37:57,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:37:57,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:37:57,277.277 INFO    ] time= 13/06/2026 04:37:57
[2026-06-13 04:37:57,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:37:57,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:37:57,380.380 INFO    ] No existing commands found in stream
[2026-06-13 04:38:02,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:02,390.390 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 04:38:06,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:38:06,148.148 INFO    ] Checking for system updates...
[2026-06-13 04:38:06,169.169 INFO    ] 200
[2026-06-13 04:38:06,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:06,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:06,203.203 INFO    ] No update needed
[2026-06-13 04:38:06,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 04:38:06,229.229 INFO    ] 200
[2026-06-13 04:38:06,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:06,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:38:06,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:06,295.295 INFO    ] No camera update needed
[2026-06-13 04:38:06,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:38:06,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:38:06,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:38:06,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:38:08,344.344 INFO    ] ================================================
[2026-06-13 04:38:08,359.359 INFO    ] Launching Daemon at Sat Jun 13 04:38:08 IST 2026
[2026-06-13 04:38:08,370.370 INFO    ] ================================================
[2026-06-13 04:38:08,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:38:08
[2026-06-13 04:38:09,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:38:09,153.153 INFO    ] Initializing speech engine...
[2026-06-13 04:38:09,159.159 INFO    ] 2026-06-13 04:38:09
[2026-06-13 04:38:09,362.362 INFO    ] 2026-06-13 04:38:09
[2026-06-13 04:38:09,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:38:09,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:38:09,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:38:09,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:38:09,750.750 INFO    ] time= 13/06/2026 04:38:09
[2026-06-13 04:38:09,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:38:09,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:38:09,874.874 INFO    ] No existing commands found in stream
[2026-06-13 04:38:14,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:14,887.887 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 04:38:18,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:38:18,758.758 INFO    ] Checking for system updates...
[2026-06-13 04:38:18,779.779 INFO    ] 200
[2026-06-13 04:38:18,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:18,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:18,813.813 INFO    ] No update needed
[2026-06-13 04:38:18,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 04:38:18,836.836 INFO    ] 200
[2026-06-13 04:38:18,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:18,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:38:18,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:18,905.905 INFO    ] No camera update needed
[2026-06-13 04:38:18,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:38:18,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:38:18,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:38:18,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:38:20,956.956 INFO    ] ================================================
[2026-06-13 04:38:20,971.971 INFO    ] Launching Daemon at Sat Jun 13 04:38:20 IST 2026
[2026-06-13 04:38:20,983.983 INFO    ] ================================================
[2026-06-13 04:38:21,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:38:21
[2026-06-13 04:38:21,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:38:21,769.769 INFO    ] Initializing speech engine...
[2026-06-13 04:38:21,780.780 INFO    ] 2026-06-13 04:38:21
[2026-06-13 04:38:21,982.982 INFO    ] 2026-06-13 04:38:21
[2026-06-13 04:38:22,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:38:22,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:38:22,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:38:22,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:38:22,395.395 INFO    ] time= 13/06/2026 04:38:22
[2026-06-13 04:38:22,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:38:22,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:38:22,495.495 INFO    ] No existing commands found in stream
[2026-06-13 04:38:27,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:27,508.508 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 04:38:27,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:38:27,837.837 INFO    ] Checking for system updates...
[2026-06-13 04:38:27,858.858 INFO    ] 200
[2026-06-13 04:38:27,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:27,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:27,891.891 INFO    ] No update needed
[2026-06-13 04:38:27,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 04:38:27,912.912 INFO    ] 200
[2026-06-13 04:38:27,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:27,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:38:27,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:38:27,980.980 INFO    ] No camera update needed
[2026-06-13 04:38:27,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:38:27,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:38:27,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:38:27,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:38:30,029.029 INFO    ] ================================================
[2026-06-13 04:38:30,045.045 INFO    ] Launching Daemon at Sat Jun 13 04:38:30 IST 2026
[2026-06-13 04:38:30,056.056 INFO    ] ================================================
[2026-06-13 04:38:30,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:38:30
[2026-06-13 04:38:30,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:38:30,846.846 INFO    ] Initializing speech engine...
[2026-06-13 04:38:30,851.851 INFO    ] 2026-06-13 04:38:30
[2026-06-13 04:38:31,054.054 INFO    ] 2026-06-13 04:38:31
[2026-06-13 04:38:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:38:31,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:38:31,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:38:31,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:38:31,493.493 INFO    ] time= 13/06/2026 04:38:31
[2026-06-13 04:38:31,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:38:31,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:38:31,604.604 INFO    ] No existing commands found in stream
[2026-06-13 04:38:36,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:36,637.637 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 04:38:39,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:38:39,417.417 INFO    ] Checking for system updates...
[2026-06-13 04:38:39,438.438 INFO    ] 200
[2026-06-13 04:38:39,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:39,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:38:39,472.472 INFO    ] No update needed
[2026-06-13 04:38:39,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 04:38:39,494.494 INFO    ] 200
[2026-06-13 04:38:39,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:39,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:38:39,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:38:39,560.560 INFO    ] No camera update needed
[2026-06-13 04:38:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:38:39,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:38:39,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:38:39,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:38:41,609.609 INFO    ] ================================================
[2026-06-13 04:38:41,625.625 INFO    ] Launching Daemon at Sat Jun 13 04:38:41 IST 2026
[2026-06-13 04:38:41,636.636 INFO    ] ================================================
[2026-06-13 04:38:41,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:38:41
[2026-06-13 04:38:42,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:38:42,421.421 INFO    ] Initializing speech engine...
[2026-06-13 04:38:42,427.427 INFO    ] 2026-06-13 04:38:42
[2026-06-13 04:38:42,629.629 INFO    ] 2026-06-13 04:38:42
[2026-06-13 04:38:42,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:38:42,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:38:42,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:38:43,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:38:43,034.034 INFO    ] time= 13/06/2026 04:38:43
[2026-06-13 04:38:43,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:38:43,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:38:43,219.219 INFO    ] No existing commands found in stream
[2026-06-13 04:38:48,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:48,231.231 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 04:38:50,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:38:50,548.548 INFO    ] Checking for system updates...
[2026-06-13 04:38:50,569.569 INFO    ] 200
[2026-06-13 04:38:50,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:50,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:50,602.602 INFO    ] No update needed
[2026-06-13 04:38:50,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 04:38:50,625.625 INFO    ] 200
[2026-06-13 04:38:50,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:38:50,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:38:50,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:38:50,696.696 INFO    ] No camera update needed
[2026-06-13 04:38:50,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:38:50,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:38:50,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:38:50,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:38:52,744.744 INFO    ] ================================================
[2026-06-13 04:38:52,761.761 INFO    ] Launching Daemon at Sat Jun 13 04:38:52 IST 2026
[2026-06-13 04:38:52,772.772 INFO    ] ================================================
[2026-06-13 04:38:53,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:38:53
[2026-06-13 04:38:53,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:38:53,622.622 INFO    ] Initializing speech engine...
[2026-06-13 04:38:53,632.632 INFO    ] 2026-06-13 04:38:53
[2026-06-13 04:38:53,841.841 INFO    ] 2026-06-13 04:38:53
[2026-06-13 04:38:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:38:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:38:54,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:38:54,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:38:54,252.252 INFO    ] time= 13/06/2026 04:38:54
[2026-06-13 04:38:54,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:38:54,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:38:54,358.358 INFO    ] No existing commands found in stream
[2026-06-13 04:38:59,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:38:59,371.371 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 04:39:03,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:39:03,312.312 INFO    ] Checking for system updates...
[2026-06-13 04:39:03,350.350 INFO    ] 200
[2026-06-13 04:39:03,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:03,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:03,412.412 INFO    ] No update needed
[2026-06-13 04:39:03,415.415 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:03,449.449 INFO    ] 200
[2026-06-13 04:39:03,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:03,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:03,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:03,542.542 INFO    ] No camera update needed
[2026-06-13 04:39:03,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:03,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:03,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:03,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:05,599.599 INFO    ] ================================================
[2026-06-13 04:39:05,614.614 INFO    ] Launching Daemon at Sat Jun 13 04:39:05 IST 2026
[2026-06-13 04:39:05,625.625 INFO    ] ================================================
[2026-06-13 04:39:05,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:05
[2026-06-13 04:39:06,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:39:06,487.487 INFO    ] Initializing speech engine...
[2026-06-13 04:39:06,493.493 INFO    ] 2026-06-13 04:39:06
[2026-06-13 04:39:06,698.698 INFO    ] 2026-06-13 04:39:06
[2026-06-13 04:39:06,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:39:06,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:39:06,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:39:07,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:39:07,105.105 INFO    ] time= 13/06/2026 04:39:07
[2026-06-13 04:39:07,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:39:07,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:39:07,216.216 INFO    ] No existing commands found in stream
[2026-06-13 04:39:12,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:39:12,234.234 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 04:39:14,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:39:14,092.092 INFO    ] Checking for system updates...
[2026-06-13 04:39:14,113.113 INFO    ] 200
[2026-06-13 04:39:14,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:14,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:14,147.147 INFO    ] No update needed
[2026-06-13 04:39:14,149.149 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:14,170.170 INFO    ] 200
[2026-06-13 04:39:14,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:14,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:14,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:14,343.343 INFO    ] No camera update needed
[2026-06-13 04:39:14,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:14,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:14,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:14,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:16,390.390 INFO    ] ================================================
[2026-06-13 04:39:16,406.406 INFO    ] Launching Daemon at Sat Jun 13 04:39:16 IST 2026
[2026-06-13 04:39:16,417.417 INFO    ] ================================================
[2026-06-13 04:39:16,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:16
[2026-06-13 04:39:17,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:39:17,288.288 INFO    ] Initializing speech engine...
[2026-06-13 04:39:17,294.294 INFO    ] 2026-06-13 04:39:17
[2026-06-13 04:39:17,500.500 INFO    ] 2026-06-13 04:39:17
[2026-06-13 04:39:17,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:39:17,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:39:17,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:39:17,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:39:17,914.914 INFO    ] time= 13/06/2026 04:39:17
[2026-06-13 04:39:17,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:39:17,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:39:18,020.020 INFO    ] No existing commands found in stream
[2026-06-13 04:39:23,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:39:23,033.033 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 04:39:27,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:39:27,219.219 INFO    ] Checking for system updates...
[2026-06-13 04:39:27,240.240 INFO    ] 200
[2026-06-13 04:39:27,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:27,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:27,273.273 INFO    ] No update needed
[2026-06-13 04:39:27,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:27,296.296 INFO    ] 200
[2026-06-13 04:39:27,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:27,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:27,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:27,359.359 INFO    ] No camera update needed
[2026-06-13 04:39:27,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:27,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:27,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:27,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:29,406.406 INFO    ] ================================================
[2026-06-13 04:39:29,421.421 INFO    ] Launching Daemon at Sat Jun 13 04:39:29 IST 2026
[2026-06-13 04:39:29,432.432 INFO    ] ================================================
[2026-06-13 04:39:29,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:29
[2026-06-13 04:39:30,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:39:30,846.846 INFO    ] Initializing speech engine...
[2026-06-13 04:39:30,855.855 INFO    ] 2026-06-13 04:39:30
[2026-06-13 04:39:31,184.184 INFO    ] 2026-06-13 04:39:31
[2026-06-13 04:39:31,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:39:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:39:31,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:39:31,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:39:31,705.705 INFO    ] time= 13/06/2026 04:39:31
[2026-06-13 04:39:31,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:39:31,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:39:31,865.865 INFO    ] No existing commands found in stream
[2026-06-13 04:39:36,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:39:36,900.900 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 04:39:37,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:39:37,363.363 INFO    ] Checking for system updates...
[2026-06-13 04:39:37,384.384 INFO    ] 200
[2026-06-13 04:39:37,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:37,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:37,419.419 INFO    ] No update needed
[2026-06-13 04:39:37,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:37,440.440 INFO    ] 200
[2026-06-13 04:39:37,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:37,465.465 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:37,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:39:37,503.503 INFO    ] No camera update needed
[2026-06-13 04:39:37,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:37,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:37,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:37,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:39,554.554 INFO    ] ================================================
[2026-06-13 04:39:39,569.569 INFO    ] Launching Daemon at Sat Jun 13 04:39:39 IST 2026
[2026-06-13 04:39:39,579.579 INFO    ] ================================================
[2026-06-13 04:39:39,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:39
[2026-06-13 04:39:40,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:39:40,378.378 INFO    ] Initializing speech engine...
[2026-06-13 04:39:40,384.384 INFO    ] 2026-06-13 04:39:40
[2026-06-13 04:39:40,588.588 INFO    ] 2026-06-13 04:39:40
[2026-06-13 04:39:40,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:39:40,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:39:40,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:39:40,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:39:41,003.003 INFO    ] time= 13/06/2026 04:39:40
[2026-06-13 04:39:41,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:39:41,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:39:41,199.199 INFO    ] No existing commands found in stream
[2026-06-13 04:39:46,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:39:46,217.217 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 04:39:46,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:39:46,818.818 INFO    ] Checking for system updates...
[2026-06-13 04:39:46,839.839 INFO    ] 200
[2026-06-13 04:39:46,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:46,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:46,875.875 INFO    ] No update needed
[2026-06-13 04:39:46,876.876 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:46,896.896 INFO    ] 200
[2026-06-13 04:39:46,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:46,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:46,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:46,962.962 INFO    ] No camera update needed
[2026-06-13 04:39:46,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:46,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:46,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:46,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:49,009.009 INFO    ] ================================================
[2026-06-13 04:39:49,024.024 INFO    ] Launching Daemon at Sat Jun 13 04:39:49 IST 2026
[2026-06-13 04:39:49,035.035 INFO    ] ================================================
[2026-06-13 04:39:49,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:49
[2026-06-13 04:39:49,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:39:49,887.887 INFO    ] Initializing speech engine...
[2026-06-13 04:39:49,896.896 INFO    ] 2026-06-13 04:39:49
[2026-06-13 04:39:50,109.109 INFO    ] 2026-06-13 04:39:50
[2026-06-13 04:39:50,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:39:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:39:50,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:39:50,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:39:50,531.531 INFO    ] time= 13/06/2026 04:39:50
[2026-06-13 04:39:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:39:50,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:39:50,633.633 INFO    ] No existing commands found in stream
[2026-06-13 04:39:55,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:39:55,651.651 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 04:39:57,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:39:57,283.283 INFO    ] Checking for system updates...
[2026-06-13 04:39:57,304.304 INFO    ] 200
[2026-06-13 04:39:57,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:57,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:57,338.338 INFO    ] No update needed
[2026-06-13 04:39:57,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 04:39:57,360.360 INFO    ] 200
[2026-06-13 04:39:57,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:39:57,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:39:57,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:39:57,437.437 INFO    ] No camera update needed
[2026-06-13 04:39:57,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:39:57,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:39:57,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:39:57,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:39:59,486.486 INFO    ] ================================================
[2026-06-13 04:39:59,502.502 INFO    ] Launching Daemon at Sat Jun 13 04:39:59 IST 2026
[2026-06-13 04:39:59,513.513 INFO    ] ================================================
[2026-06-13 04:39:59,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:39:59
[2026-06-13 04:40:00,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:40:00,322.322 INFO    ] Initializing speech engine...
[2026-06-13 04:40:00,330.330 INFO    ] 2026-06-13 04:40:00
[2026-06-13 04:40:00,544.544 INFO    ] 2026-06-13 04:40:00
[2026-06-13 04:40:00,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:40:00,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:40:00,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:40:00,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:40:00,958.958 INFO    ] time= 13/06/2026 04:40:00
[2026-06-13 04:40:00,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:40:00,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:40:01,064.064 INFO    ] No existing commands found in stream
[2026-06-13 04:40:06,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:40:06,076.076 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 04:40:09,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:40:09,053.053 INFO    ] Checking for system updates...
[2026-06-13 04:40:09,098.098 INFO    ] 200
[2026-06-13 04:40:09,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:09,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:09,156.156 INFO    ] No update needed
[2026-06-13 04:40:09,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 04:40:09,193.193 INFO    ] 200
[2026-06-13 04:40:09,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:09,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:40:09,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:09,260.260 INFO    ] No camera update needed
[2026-06-13 04:40:09,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:40:09,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:40:09,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:40:09,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:40:11,308.308 INFO    ] ================================================
[2026-06-13 04:40:11,323.323 INFO    ] Launching Daemon at Sat Jun 13 04:40:11 IST 2026
[2026-06-13 04:40:11,334.334 INFO    ] ================================================
[2026-06-13 04:40:11,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:40:11
[2026-06-13 04:40:12,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:40:12,172.172 INFO    ] Initializing speech engine...
[2026-06-13 04:40:12,178.178 INFO    ] 2026-06-13 04:40:12
[2026-06-13 04:40:12,385.385 INFO    ] 2026-06-13 04:40:12
[2026-06-13 04:40:12,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:40:12,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:40:12,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:40:12,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:40:12,788.788 INFO    ] time= 13/06/2026 04:40:12
[2026-06-13 04:40:12,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:40:12,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:40:12,907.907 INFO    ] No existing commands found in stream
[2026-06-13 04:40:17,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:40:17,925.925 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 04:40:22,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:40:22,565.565 INFO    ] Checking for system updates...
[2026-06-13 04:40:22,603.603 INFO    ] 200
[2026-06-13 04:40:22,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:22,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:22,664.664 INFO    ] No update needed
[2026-06-13 04:40:22,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 04:40:22,702.702 INFO    ] 200
[2026-06-13 04:40:22,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:22,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:40:22,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:22,793.793 INFO    ] No camera update needed
[2026-06-13 04:40:22,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:40:22,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:40:22,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:40:22,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:40:24,852.852 INFO    ] ================================================
[2026-06-13 04:40:24,867.867 INFO    ] Launching Daemon at Sat Jun 13 04:40:24 IST 2026
[2026-06-13 04:40:24,877.877 INFO    ] ================================================
[2026-06-13 04:40:25,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:40:25
[2026-06-13 04:40:25,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:40:25,659.659 INFO    ] Initializing speech engine...
[2026-06-13 04:40:25,662.662 INFO    ] 2026-06-13 04:40:25
[2026-06-13 04:40:25,881.881 INFO    ] 2026-06-13 04:40:25
[2026-06-13 04:40:25,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:40:26,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:40:26,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:40:26,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:40:26,241.241 INFO    ] time= 13/06/2026 04:40:26
[2026-06-13 04:40:26,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:40:26,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:40:26,384.384 INFO    ] No existing commands found in stream
[2026-06-13 04:40:31,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:40:31,399.399 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 04:40:34,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:40:34,429.429 INFO    ] Checking for system updates...
[2026-06-13 04:40:34,450.450 INFO    ] 200
[2026-06-13 04:40:34,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:34,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:34,483.483 INFO    ] No update needed
[2026-06-13 04:40:34,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 04:40:34,504.504 INFO    ] 200
[2026-06-13 04:40:34,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:34,529.529 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:40:34,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:34,566.566 INFO    ] No camera update needed
[2026-06-13 04:40:34,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:40:34,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:40:34,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:40:34,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:40:36,616.616 INFO    ] ================================================
[2026-06-13 04:40:36,631.631 INFO    ] Launching Daemon at Sat Jun 13 04:40:36 IST 2026
[2026-06-13 04:40:36,642.642 INFO    ] ================================================
[2026-06-13 04:40:37,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:40:37
[2026-06-13 04:40:37,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:40:37,521.521 INFO    ] Initializing speech engine...
[2026-06-13 04:40:37,526.526 INFO    ] 2026-06-13 04:40:37
[2026-06-13 04:40:37,724.724 INFO    ] 2026-06-13 04:40:37
[2026-06-13 04:40:37,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:40:37,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:40:37,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:40:38,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:40:38,145.145 INFO    ] time= 13/06/2026 04:40:38
[2026-06-13 04:40:38,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:40:38,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:40:38,305.305 INFO    ] No existing commands found in stream
[2026-06-13 04:40:43,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:40:43,322.322 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 04:40:45,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:40:45,003.003 INFO    ] Checking for system updates...
[2026-06-13 04:40:45,024.024 INFO    ] 200
[2026-06-13 04:40:45,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:45,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:40:45,059.059 INFO    ] No update needed
[2026-06-13 04:40:45,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 04:40:45,079.079 INFO    ] 200
[2026-06-13 04:40:45,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:45,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:40:45,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:40:45,145.145 INFO    ] No camera update needed
[2026-06-13 04:40:45,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:40:45,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:40:45,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:40:45,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:40:47,192.192 INFO    ] ================================================
[2026-06-13 04:40:47,207.207 INFO    ] Launching Daemon at Sat Jun 13 04:40:47 IST 2026
[2026-06-13 04:40:47,218.218 INFO    ] ================================================
[2026-06-13 04:40:47,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:40:47
[2026-06-13 04:40:47,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:40:48,049.049 INFO    ] Initializing speech engine...
[2026-06-13 04:40:48,056.056 INFO    ] 2026-06-13 04:40:48
[2026-06-13 04:40:48,265.265 INFO    ] 2026-06-13 04:40:48
[2026-06-13 04:40:48,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:40:48,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:40:48,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:40:48,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:40:48,661.661 INFO    ] time= 13/06/2026 04:40:48
[2026-06-13 04:40:48,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:40:48,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:40:48,789.789 INFO    ] No existing commands found in stream
[2026-06-13 04:40:53,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:40:53,802.802 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 04:40:57,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:40:57,459.459 INFO    ] Checking for system updates...
[2026-06-13 04:40:57,479.479 INFO    ] 200
[2026-06-13 04:40:57,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:57,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:57,513.513 INFO    ] No update needed
[2026-06-13 04:40:57,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 04:40:57,536.536 INFO    ] 200
[2026-06-13 04:40:57,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:40:57,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:40:57,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:40:57,608.608 INFO    ] No camera update needed
[2026-06-13 04:40:57,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:40:57,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:40:57,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:40:57,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:40:59,657.657 INFO    ] ================================================
[2026-06-13 04:40:59,673.673 INFO    ] Launching Daemon at Sat Jun 13 04:40:59 IST 2026
[2026-06-13 04:40:59,684.684 INFO    ] ================================================
[2026-06-13 04:41:00,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:00
[2026-06-13 04:41:00,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:00,569.569 INFO    ] Initializing speech engine...
[2026-06-13 04:41:00,574.574 INFO    ] 2026-06-13 04:41:00
[2026-06-13 04:41:00,783.783 INFO    ] 2026-06-13 04:41:00
[2026-06-13 04:41:00,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:00,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:01,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:01,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:01,208.208 INFO    ] time= 13/06/2026 04:41:01
[2026-06-13 04:41:01,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:01,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:01,307.307 INFO    ] No existing commands found in stream
[2026-06-13 04:41:06,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:41:06,323.323 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 04:41:07,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:41:07,039.039 INFO    ] Checking for system updates...
[2026-06-13 04:41:07,060.060 INFO    ] 200
[2026-06-13 04:41:07,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:07,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:41:07,094.094 INFO    ] No update needed
[2026-06-13 04:41:07,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 04:41:07,115.115 INFO    ] 200
[2026-06-13 04:41:07,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:07,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:41:07,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:07,187.187 INFO    ] No camera update needed
[2026-06-13 04:41:07,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:41:07,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:41:07,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:41:07,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:41:09,235.235 INFO    ] ================================================
[2026-06-13 04:41:09,250.250 INFO    ] Launching Daemon at Sat Jun 13 04:41:09 IST 2026
[2026-06-13 04:41:09,261.261 INFO    ] ================================================
[2026-06-13 04:41:09,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:09
[2026-06-13 04:41:09,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:10,041.041 INFO    ] Initializing speech engine...
[2026-06-13 04:41:10,045.045 INFO    ] 2026-06-13 04:41:10
[2026-06-13 04:41:10,236.236 INFO    ] 2026-06-13 04:41:10
[2026-06-13 04:41:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:10,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:10,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:10,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:10,654.654 INFO    ] time= 13/06/2026 04:41:10
[2026-06-13 04:41:10,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:10,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:10,839.839 INFO    ] No existing commands found in stream
[2026-06-13 04:41:15,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:41:15,852.852 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 04:41:18,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:41:18,699.699 INFO    ] Checking for system updates...
[2026-06-13 04:41:18,720.720 INFO    ] 200
[2026-06-13 04:41:18,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:18,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:18,755.755 INFO    ] No update needed
[2026-06-13 04:41:18,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 04:41:18,777.777 INFO    ] 200
[2026-06-13 04:41:18,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:18,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:41:18,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:18,942.942 INFO    ] No camera update needed
[2026-06-13 04:41:18,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:41:18,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:41:18,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:41:18,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:41:20,991.991 INFO    ] ================================================
[2026-06-13 04:41:21,006.006 INFO    ] Launching Daemon at Sat Jun 13 04:41:21 IST 2026
[2026-06-13 04:41:21,017.017 INFO    ] ================================================
[2026-06-13 04:41:21,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:21
[2026-06-13 04:41:21,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:21,824.824 INFO    ] Initializing speech engine...
[2026-06-13 04:41:21,829.829 INFO    ] 2026-06-13 04:41:21
[2026-06-13 04:41:22,065.065 INFO    ] 2026-06-13 04:41:22
[2026-06-13 04:41:22,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:22,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:22,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:22,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:22,518.518 INFO    ] time= 13/06/2026 04:41:22
[2026-06-13 04:41:22,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:22,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:22,667.667 INFO    ] No existing commands found in stream
[2026-06-13 04:41:27,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:41:27,695.695 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 04:41:28,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:41:28,883.883 INFO    ] Checking for system updates...
[2026-06-13 04:41:28,903.903 INFO    ] 200
[2026-06-13 04:41:28,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:28,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:41:28,937.937 INFO    ] No update needed
[2026-06-13 04:41:28,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 04:41:28,960.960 INFO    ] 200
[2026-06-13 04:41:28,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:28,985.985 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:41:29,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:41:29,021.021 INFO    ] No camera update needed
[2026-06-13 04:41:29,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:41:29,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:41:29,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:41:29,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:41:31,070.070 INFO    ] ================================================
[2026-06-13 04:41:31,086.086 INFO    ] Launching Daemon at Sat Jun 13 04:41:31 IST 2026
[2026-06-13 04:41:31,098.098 INFO    ] ================================================
[2026-06-13 04:41:31,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:31
[2026-06-13 04:41:31,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:32,026.026 INFO    ] Initializing speech engine...
[2026-06-13 04:41:32,033.033 INFO    ] 2026-06-13 04:41:32
[2026-06-13 04:41:32,251.251 INFO    ] 2026-06-13 04:41:32
[2026-06-13 04:41:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:32,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:32,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:32,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:32,671.671 INFO    ] time= 13/06/2026 04:41:32
[2026-06-13 04:41:32,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:32,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:32,769.769 INFO    ] No existing commands found in stream
[2026-06-13 04:41:37,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:41:37,783.783 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 04:41:41,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:41:41,763.763 INFO    ] Checking for system updates...
[2026-06-13 04:41:41,784.784 INFO    ] 200
[2026-06-13 04:41:41,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:41,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:41,817.817 INFO    ] No update needed
[2026-06-13 04:41:41,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 04:41:41,839.839 INFO    ] 200
[2026-06-13 04:41:41,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:41,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:41:41,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:41:41,905.905 INFO    ] No camera update needed
[2026-06-13 04:41:41,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:41:41,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:41:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:41:41,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:41:43,954.954 INFO    ] ================================================
[2026-06-13 04:41:43,970.970 INFO    ] Launching Daemon at Sat Jun 13 04:41:43 IST 2026
[2026-06-13 04:41:43,981.981 INFO    ] ================================================
[2026-06-13 04:41:44,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:44
[2026-06-13 04:41:44,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:44,858.858 INFO    ] Initializing speech engine...
[2026-06-13 04:41:44,864.864 INFO    ] 2026-06-13 04:41:44
[2026-06-13 04:41:45,074.074 INFO    ] 2026-06-13 04:41:45
[2026-06-13 04:41:45,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:45,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:45,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:45,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:45,493.493 INFO    ] time= 13/06/2026 04:41:45
[2026-06-13 04:41:45,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:45,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:45,594.594 INFO    ] No existing commands found in stream
[2026-06-13 04:41:50,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:41:50,613.613 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 04:41:54,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:41:54,504.504 INFO    ] Checking for system updates...
[2026-06-13 04:41:54,525.525 INFO    ] 200
[2026-06-13 04:41:54,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:54,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:54,560.560 INFO    ] No update needed
[2026-06-13 04:41:54,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 04:41:54,584.584 INFO    ] 200
[2026-06-13 04:41:54,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:41:54,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:41:54,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:41:54,653.653 INFO    ] No camera update needed
[2026-06-13 04:41:54,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:41:54,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:41:54,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:41:54,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:41:56,702.702 INFO    ] ================================================
[2026-06-13 04:41:56,719.719 INFO    ] Launching Daemon at Sat Jun 13 04:41:56 IST 2026
[2026-06-13 04:41:56,729.729 INFO    ] ================================================
[2026-06-13 04:41:57,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:41:57
[2026-06-13 04:41:57,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:41:57,615.615 INFO    ] Initializing speech engine...
[2026-06-13 04:41:57,622.622 INFO    ] 2026-06-13 04:41:57
[2026-06-13 04:41:57,831.831 INFO    ] 2026-06-13 04:41:57
[2026-06-13 04:41:57,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:41:58,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:41:58,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:41:58,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:41:58,254.254 INFO    ] time= 13/06/2026 04:41:58
[2026-06-13 04:41:58,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:41:58,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:41:58,356.356 INFO    ] No existing commands found in stream
[2026-06-13 04:42:03,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:03,370.370 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 04:42:05,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:42:05,933.933 INFO    ] Checking for system updates...
[2026-06-13 04:42:05,954.954 INFO    ] 200
[2026-06-13 04:42:05,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:05,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:42:05,988.988 INFO    ] No update needed
[2026-06-13 04:42:05,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:06,010.010 INFO    ] 200
[2026-06-13 04:42:06,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:06,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:06,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:06,070.070 INFO    ] No camera update needed
[2026-06-13 04:42:06,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:06,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:06,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:06,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:42:08,119.119 INFO    ] ================================================
[2026-06-13 04:42:08,134.134 INFO    ] Launching Daemon at Sat Jun 13 04:42:08 IST 2026
[2026-06-13 04:42:08,146.146 INFO    ] ================================================
[2026-06-13 04:42:08,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:42:08
[2026-06-13 04:42:08,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:42:08,958.958 INFO    ] Initializing speech engine...
[2026-06-13 04:42:08,963.963 INFO    ] 2026-06-13 04:42:08
[2026-06-13 04:42:09,169.169 INFO    ] 2026-06-13 04:42:09
[2026-06-13 04:42:09,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:42:09,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:42:09,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:42:09,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:42:09,578.578 INFO    ] time= 13/06/2026 04:42:09
[2026-06-13 04:42:09,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:42:09,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:42:09,687.687 INFO    ] No existing commands found in stream
[2026-06-13 04:42:14,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:14,700.700 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 04:42:16,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:42:16,629.629 INFO    ] Checking for system updates...
[2026-06-13 04:42:16,649.649 INFO    ] 200
[2026-06-13 04:42:16,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:16,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:16,684.684 INFO    ] No update needed
[2026-06-13 04:42:16,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:16,705.705 INFO    ] 200
[2026-06-13 04:42:16,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:16,730.730 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:16,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:16,772.772 INFO    ] No camera update needed
[2026-06-13 04:42:16,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:16,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:16,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:16,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:42:18,820.820 INFO    ] ================================================
[2026-06-13 04:42:18,836.836 INFO    ] Launching Daemon at Sat Jun 13 04:42:18 IST 2026
[2026-06-13 04:42:18,847.847 INFO    ] ================================================
[2026-06-13 04:42:19,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:42:19
[2026-06-13 04:42:19,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:42:19,627.627 INFO    ] Initializing speech engine...
[2026-06-13 04:42:19,634.634 INFO    ] 2026-06-13 04:42:19
[2026-06-13 04:42:19,859.859 INFO    ] 2026-06-13 04:42:19
[2026-06-13 04:42:19,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:42:20,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:42:20,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:42:20,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:42:20,279.279 INFO    ] time= 13/06/2026 04:42:20
[2026-06-13 04:42:20,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:42:20,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:42:20,416.416 INFO    ] No existing commands found in stream
[2026-06-13 04:42:25,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:25,429.429 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 04:42:26,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:42:26,670.670 INFO    ] Checking for system updates...
[2026-06-13 04:42:26,691.691 INFO    ] 200
[2026-06-13 04:42:26,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:26,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:26,726.726 INFO    ] No update needed
[2026-06-13 04:42:26,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:26,748.748 INFO    ] 200
[2026-06-13 04:42:26,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:26,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:26,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:26,819.819 INFO    ] No camera update needed
[2026-06-13 04:42:26,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:26,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:26,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:26,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:42:28,866.866 INFO    ] ================================================
[2026-06-13 04:42:28,881.881 INFO    ] Launching Daemon at Sat Jun 13 04:42:28 IST 2026
[2026-06-13 04:42:28,892.892 INFO    ] ================================================
[2026-06-13 04:42:29,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:42:29
[2026-06-13 04:42:29,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:42:29,994.994 INFO    ] Initializing speech engine...
[2026-06-13 04:42:30,005.005 INFO    ] 2026-06-13 04:42:29
[2026-06-13 04:42:30,254.254 INFO    ] 2026-06-13 04:42:30
[2026-06-13 04:42:30,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:42:30,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:42:30,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:42:30,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:42:30,597.597 INFO    ] time= 13/06/2026 04:42:30
[2026-06-13 04:42:30,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:42:30,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:42:30,710.710 INFO    ] No existing commands found in stream
[2026-06-13 04:42:35,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:35,725.725 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 04:42:36,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:42:36,095.095 INFO    ] Checking for system updates...
[2026-06-13 04:42:36,115.115 INFO    ] 200
[2026-06-13 04:42:36,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:36,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:42:36,148.148 INFO    ] No update needed
[2026-06-13 04:42:36,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:36,169.169 INFO    ] 200
[2026-06-13 04:42:36,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:36,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:36,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:42:36,233.233 INFO    ] No camera update needed
[2026-06-13 04:42:36,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:36,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:36,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:36,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:42:38,281.281 INFO    ] ================================================
[2026-06-13 04:42:38,297.297 INFO    ] Launching Daemon at Sat Jun 13 04:42:38 IST 2026
[2026-06-13 04:42:38,308.308 INFO    ] ================================================
[2026-06-13 04:42:38,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:42:38
[2026-06-13 04:42:38,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:42:39,114.114 INFO    ] Initializing speech engine...
[2026-06-13 04:42:39,123.123 INFO    ] 2026-06-13 04:42:39
[2026-06-13 04:42:39,346.346 INFO    ] 2026-06-13 04:42:39
[2026-06-13 04:42:39,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:42:39,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:42:39,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:42:39,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:42:39,747.747 INFO    ] time= 13/06/2026 04:42:39
[2026-06-13 04:42:39,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:42:39,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:42:39,905.905 INFO    ] No existing commands found in stream
[2026-06-13 04:42:44,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:44,919.919 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 04:42:46,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:42:46,947.947 INFO    ] Checking for system updates...
[2026-06-13 04:42:46,968.968 INFO    ] 200
[2026-06-13 04:42:46,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:47,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:47,001.001 INFO    ] No update needed
[2026-06-13 04:42:47,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:47,023.023 INFO    ] 200
[2026-06-13 04:42:47,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:47,048.048 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:47,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:47,086.086 INFO    ] No camera update needed
[2026-06-13 04:42:47,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:47,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:47,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:47,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:42:49,133.133 INFO    ] ================================================
[2026-06-13 04:42:49,149.149 INFO    ] Launching Daemon at Sat Jun 13 04:42:49 IST 2026
[2026-06-13 04:42:49,159.159 INFO    ] ================================================
[2026-06-13 04:42:49,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:42:49
[2026-06-13 04:42:49,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:42:49,976.976 INFO    ] Initializing speech engine...
[2026-06-13 04:42:49,984.984 INFO    ] 2026-06-13 04:42:49
[2026-06-13 04:42:50,202.202 INFO    ] 2026-06-13 04:42:50
[2026-06-13 04:42:50,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:42:50,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:42:50,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:42:50,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:42:50,614.614 INFO    ] time= 13/06/2026 04:42:50
[2026-06-13 04:42:50,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:42:50,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:42:50,756.756 INFO    ] No existing commands found in stream
[2026-06-13 04:42:55,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:42:55,770.770 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 04:42:57,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:42:57,819.819 INFO    ] Checking for system updates...
[2026-06-13 04:42:57,841.841 INFO    ] 200
[2026-06-13 04:42:57,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:57,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:57,875.875 INFO    ] No update needed
[2026-06-13 04:42:57,877.877 INFO    ] Checking for camera pi updates...
[2026-06-13 04:42:57,898.898 INFO    ] 200
[2026-06-13 04:42:57,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:42:57,925.925 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:42:57,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:42:57,973.973 INFO    ] No camera update needed
[2026-06-13 04:42:57,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:42:57,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:42:57,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:42:57,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:00,021.021 INFO    ] ================================================
[2026-06-13 04:43:00,036.036 INFO    ] Launching Daemon at Sat Jun 13 04:43:00 IST 2026
[2026-06-13 04:43:00,047.047 INFO    ] ================================================
[2026-06-13 04:43:00,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:00
[2026-06-13 04:43:00,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:00,861.861 INFO    ] Initializing speech engine...
[2026-06-13 04:43:00,866.866 INFO    ] 2026-06-13 04:43:00
[2026-06-13 04:43:01,070.070 INFO    ] 2026-06-13 04:43:01
[2026-06-13 04:43:01,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:01,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:01,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:01,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:01,423.423 INFO    ] time= 13/06/2026 04:43:01
[2026-06-13 04:43:01,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:01,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:01,478.478 INFO    ] No existing commands found in stream
[2026-06-13 04:43:06,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:43:06,490.490 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 04:43:09,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:43:09,136.136 INFO    ] Checking for system updates...
[2026-06-13 04:43:09,157.157 INFO    ] 200
[2026-06-13 04:43:09,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:09,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:43:09,193.193 INFO    ] No update needed
[2026-06-13 04:43:09,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 04:43:09,214.214 INFO    ] 200
[2026-06-13 04:43:09,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:09,241.241 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:43:09,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:43:09,278.278 INFO    ] No camera update needed
[2026-06-13 04:43:09,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:43:09,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:43:09,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:43:09,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:11,330.330 INFO    ] ================================================
[2026-06-13 04:43:11,345.345 INFO    ] Launching Daemon at Sat Jun 13 04:43:11 IST 2026
[2026-06-13 04:43:11,355.355 INFO    ] ================================================
[2026-06-13 04:43:11,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:11
[2026-06-13 04:43:12,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:12,152.152 INFO    ] Initializing speech engine...
[2026-06-13 04:43:12,156.156 INFO    ] 2026-06-13 04:43:12
[2026-06-13 04:43:12,347.347 INFO    ] 2026-06-13 04:43:12
[2026-06-13 04:43:12,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:12,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:12,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:12,790.790 INFO    ] time= 13/06/2026 04:43:12
[2026-06-13 04:43:12,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:12,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:12,948.948 INFO    ] No existing commands found in stream
[2026-06-13 04:43:17,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:43:17,962.962 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 04:43:19,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:43:19,760.760 INFO    ] Checking for system updates...
[2026-06-13 04:43:19,781.781 INFO    ] 200
[2026-06-13 04:43:19,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:19,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:43:19,817.817 INFO    ] No update needed
[2026-06-13 04:43:19,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 04:43:19,839.839 INFO    ] 200
[2026-06-13 04:43:19,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:19,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:43:19,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:43:19,905.905 INFO    ] No camera update needed
[2026-06-13 04:43:19,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:43:19,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:43:19,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:43:19,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:21,954.954 INFO    ] ================================================
[2026-06-13 04:43:21,969.969 INFO    ] Launching Daemon at Sat Jun 13 04:43:21 IST 2026
[2026-06-13 04:43:21,979.979 INFO    ] ================================================
[2026-06-13 04:43:22,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:22
[2026-06-13 04:43:22,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:22,787.787 INFO    ] Initializing speech engine...
[2026-06-13 04:43:22,797.797 INFO    ] 2026-06-13 04:43:22
[2026-06-13 04:43:23,001.001 INFO    ] 2026-06-13 04:43:22
[2026-06-13 04:43:23,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:23,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:23,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:23,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:23,408.408 INFO    ] time= 13/06/2026 04:43:23
[2026-06-13 04:43:23,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:23,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:23,517.517 INFO    ] No existing commands found in stream
[2026-06-13 04:43:28,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:43:28,530.530 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 04:43:29,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:43:29,045.045 INFO    ] Checking for system updates...
[2026-06-13 04:43:29,065.065 INFO    ] 200
[2026-06-13 04:43:29,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:29,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:43:29,101.101 INFO    ] No update needed
[2026-06-13 04:43:29,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 04:43:29,123.123 INFO    ] 200
[2026-06-13 04:43:29,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:29,148.148 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:43:29,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:43:29,288.288 INFO    ] No camera update needed
[2026-06-13 04:43:29,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:43:29,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:43:29,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:43:29,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:31,337.337 INFO    ] ================================================
[2026-06-13 04:43:31,352.352 INFO    ] Launching Daemon at Sat Jun 13 04:43:31 IST 2026
[2026-06-13 04:43:31,363.363 INFO    ] ================================================
[2026-06-13 04:43:31,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:31
[2026-06-13 04:43:32,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:32,821.821 INFO    ] Initializing speech engine...
[2026-06-13 04:43:32,834.834 INFO    ] 2026-06-13 04:43:32
[2026-06-13 04:43:33,106.106 INFO    ] 2026-06-13 04:43:33
[2026-06-13 04:43:33,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:33,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:33,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:33,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:33,463.463 INFO    ] time= 13/06/2026 04:43:33
[2026-06-13 04:43:33,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:33,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:33,565.565 INFO    ] No existing commands found in stream
[2026-06-13 04:43:38,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:43:38,581.581 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 04:43:38,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:43:38,969.969 INFO    ] Checking for system updates...
[2026-06-13 04:43:38,990.990 INFO    ] 200
[2026-06-13 04:43:38,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:39,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:43:39,024.024 INFO    ] No update needed
[2026-06-13 04:43:39,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 04:43:39,044.044 INFO    ] 200
[2026-06-13 04:43:39,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:39,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:43:39,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:43:39,116.116 INFO    ] No camera update needed
[2026-06-13 04:43:39,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:43:39,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:43:39,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:43:39,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:41,164.164 INFO    ] ================================================
[2026-06-13 04:43:41,179.179 INFO    ] Launching Daemon at Sat Jun 13 04:43:41 IST 2026
[2026-06-13 04:43:41,190.190 INFO    ] ================================================
[2026-06-13 04:43:41,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:41
[2026-06-13 04:43:41,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:42,065.065 INFO    ] Initializing speech engine...
[2026-06-13 04:43:42,071.071 INFO    ] 2026-06-13 04:43:42
[2026-06-13 04:43:42,280.280 INFO    ] 2026-06-13 04:43:42
[2026-06-13 04:43:42,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:42,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:42,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:42,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:42,704.704 INFO    ] time= 13/06/2026 04:43:42
[2026-06-13 04:43:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:42,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:42,801.801 INFO    ] No existing commands found in stream
[2026-06-13 04:43:47,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:43:47,816.816 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 04:43:52,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:43:52,130.130 INFO    ] Checking for system updates...
[2026-06-13 04:43:52,151.151 INFO    ] 200
[2026-06-13 04:43:52,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:52,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:43:52,185.185 INFO    ] No update needed
[2026-06-13 04:43:52,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 04:43:52,207.207 INFO    ] 200
[2026-06-13 04:43:52,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:43:52,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:43:52,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:43:52,276.276 INFO    ] No camera update needed
[2026-06-13 04:43:52,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:43:52,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:43:52,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:43:52,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:43:54,325.325 INFO    ] ================================================
[2026-06-13 04:43:54,341.341 INFO    ] Launching Daemon at Sat Jun 13 04:43:54 IST 2026
[2026-06-13 04:43:54,351.351 INFO    ] ================================================
[2026-06-13 04:43:54,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:43:54
[2026-06-13 04:43:55,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:43:55,176.176 INFO    ] Initializing speech engine...
[2026-06-13 04:43:55,185.185 INFO    ] 2026-06-13 04:43:55
[2026-06-13 04:43:55,455.455 INFO    ] 2026-06-13 04:43:55
[2026-06-13 04:43:55,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:43:55,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:43:55,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:43:55,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:43:55,833.833 INFO    ] time= 13/06/2026 04:43:55
[2026-06-13 04:43:55,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:43:55,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:43:56,016.016 INFO    ] No existing commands found in stream
[2026-06-13 04:44:01,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:01,029.029 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 04:44:02,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:44:02,945.945 INFO    ] Checking for system updates...
[2026-06-13 04:44:02,967.967 INFO    ] 200
[2026-06-13 04:44:02,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:03,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:03,003.003 INFO    ] No update needed
[2026-06-13 04:44:03,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 04:44:03,024.024 INFO    ] 200
[2026-06-13 04:44:03,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:03,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:44:03,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:03,092.092 INFO    ] No camera update needed
[2026-06-13 04:44:03,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:44:03,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:44:03,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:44:03,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:44:05,147.147 INFO    ] ================================================
[2026-06-13 04:44:05,163.163 INFO    ] Launching Daemon at Sat Jun 13 04:44:05 IST 2026
[2026-06-13 04:44:05,175.175 INFO    ] ================================================
[2026-06-13 04:44:05,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:44:05
[2026-06-13 04:44:05,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:44:06,057.057 INFO    ] Initializing speech engine...
[2026-06-13 04:44:06,061.061 INFO    ] 2026-06-13 04:44:06
[2026-06-13 04:44:06,272.272 INFO    ] 2026-06-13 04:44:06
[2026-06-13 04:44:06,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:44:06,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:44:06,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:44:06,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:44:06,668.668 INFO    ] time= 13/06/2026 04:44:06
[2026-06-13 04:44:06,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:44:06,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:44:06,789.789 INFO    ] No existing commands found in stream
[2026-06-13 04:44:11,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:11,818.818 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 04:44:13,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:44:13,264.264 INFO    ] Checking for system updates...
[2026-06-13 04:44:13,285.285 INFO    ] 200
[2026-06-13 04:44:13,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:13,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:44:13,318.318 INFO    ] No update needed
[2026-06-13 04:44:13,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 04:44:13,340.340 INFO    ] 200
[2026-06-13 04:44:13,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:13,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:44:13,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:13,401.401 INFO    ] No camera update needed
[2026-06-13 04:44:13,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:44:13,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:44:13,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:44:13,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:44:15,448.448 INFO    ] ================================================
[2026-06-13 04:44:15,463.463 INFO    ] Launching Daemon at Sat Jun 13 04:44:15 IST 2026
[2026-06-13 04:44:15,473.473 INFO    ] ================================================
[2026-06-13 04:44:15,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:44:15
[2026-06-13 04:44:16,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:44:16,561.561 INFO    ] Initializing speech engine...
[2026-06-13 04:44:16,568.568 INFO    ] 2026-06-13 04:44:16
[2026-06-13 04:44:16,847.847 INFO    ] 2026-06-13 04:44:16
[2026-06-13 04:44:16,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:44:17,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:44:17,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:44:17,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:44:17,196.196 INFO    ] time= 13/06/2026 04:44:17
[2026-06-13 04:44:17,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:44:17,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:44:17,308.308 INFO    ] No existing commands found in stream
[2026-06-13 04:44:22,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:22,324.324 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 04:44:26,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:44:26,174.174 INFO    ] Checking for system updates...
[2026-06-13 04:44:26,195.195 INFO    ] 200
[2026-06-13 04:44:26,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:26,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:26,228.228 INFO    ] No update needed
[2026-06-13 04:44:26,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 04:44:26,250.250 INFO    ] 200
[2026-06-13 04:44:26,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:26,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:44:26,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:26,317.317 INFO    ] No camera update needed
[2026-06-13 04:44:26,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:44:26,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:44:26,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:44:26,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:44:28,363.363 INFO    ] ================================================
[2026-06-13 04:44:28,378.378 INFO    ] Launching Daemon at Sat Jun 13 04:44:28 IST 2026
[2026-06-13 04:44:28,388.388 INFO    ] ================================================
[2026-06-13 04:44:28,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:44:28
[2026-06-13 04:44:29,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:44:29,167.167 INFO    ] Initializing speech engine...
[2026-06-13 04:44:29,177.177 INFO    ] 2026-06-13 04:44:29
[2026-06-13 04:44:29,380.380 INFO    ] 2026-06-13 04:44:29
[2026-06-13 04:44:29,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:44:29,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:44:29,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:44:29,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:44:29,790.790 INFO    ] time= 13/06/2026 04:44:29
[2026-06-13 04:44:29,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:44:29,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:44:29,896.896 INFO    ] No existing commands found in stream
[2026-06-13 04:44:34,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:34,913.913 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 04:44:38,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:44:38,511.511 INFO    ] Checking for system updates...
[2026-06-13 04:44:38,531.531 INFO    ] 200
[2026-06-13 04:44:38,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:38,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:44:38,565.565 INFO    ] No update needed
[2026-06-13 04:44:38,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 04:44:38,590.590 INFO    ] 200
[2026-06-13 04:44:38,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:38,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:44:38,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:44:38,672.672 INFO    ] No camera update needed
[2026-06-13 04:44:38,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:44:38,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:44:38,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:44:38,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:44:40,719.719 INFO    ] ================================================
[2026-06-13 04:44:40,734.734 INFO    ] Launching Daemon at Sat Jun 13 04:44:40 IST 2026
[2026-06-13 04:44:40,745.745 INFO    ] ================================================
[2026-06-13 04:44:41,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:44:41
[2026-06-13 04:44:41,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:44:41,603.603 INFO    ] Initializing speech engine...
[2026-06-13 04:44:41,607.607 INFO    ] 2026-06-13 04:44:41
[2026-06-13 04:44:41,814.814 INFO    ] 2026-06-13 04:44:41
[2026-06-13 04:44:41,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:44:41,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:44:42,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:44:42,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:44:42,228.228 INFO    ] time= 13/06/2026 04:44:42
[2026-06-13 04:44:42,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:44:42,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:44:42,336.336 INFO    ] No existing commands found in stream
[2026-06-13 04:44:47,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:47,354.354 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 04:44:49,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:44:49,976.976 INFO    ] Checking for system updates...
[2026-06-13 04:44:49,997.997 INFO    ] 200
[2026-06-13 04:44:49,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:50,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:50,032.032 INFO    ] No update needed
[2026-06-13 04:44:50,034.034 INFO    ] Checking for camera pi updates...
[2026-06-13 04:44:50,054.054 INFO    ] 200
[2026-06-13 04:44:50,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:44:50,088.088 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:44:50,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:44:50,127.127 INFO    ] No camera update needed
[2026-06-13 04:44:50,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:44:50,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:44:50,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:44:50,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:44:52,175.175 INFO    ] ================================================
[2026-06-13 04:44:52,191.191 INFO    ] Launching Daemon at Sat Jun 13 04:44:52 IST 2026
[2026-06-13 04:44:52,201.201 INFO    ] ================================================
[2026-06-13 04:44:52,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:44:52
[2026-06-13 04:44:52,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:44:53,002.002 INFO    ] Initializing speech engine...
[2026-06-13 04:44:53,010.010 INFO    ] 2026-06-13 04:44:53
[2026-06-13 04:44:53,221.221 INFO    ] 2026-06-13 04:44:53
[2026-06-13 04:44:53,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:44:53,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:44:53,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:44:53,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:44:53,631.631 INFO    ] time= 13/06/2026 04:44:53
[2026-06-13 04:44:53,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:44:53,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:44:53,735.735 INFO    ] No existing commands found in stream
[2026-06-13 04:44:58,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:44:58,748.748 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 04:45:02,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:45:02,130.130 INFO    ] Checking for system updates...
[2026-06-13 04:45:02,170.170 INFO    ] 200
[2026-06-13 04:45:02,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:02,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:02,253.253 INFO    ] No update needed
[2026-06-13 04:45:02,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:02,315.315 INFO    ] 200
[2026-06-13 04:45:02,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:02,347.347 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:02,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:02,378.378 INFO    ] No camera update needed
[2026-06-13 04:45:02,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:02,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:02,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:02,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:45:04,422.422 INFO    ] ================================================
[2026-06-13 04:45:04,437.437 INFO    ] Launching Daemon at Sat Jun 13 04:45:04 IST 2026
[2026-06-13 04:45:04,448.448 INFO    ] ================================================
[2026-06-13 04:45:04,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:45:04
[2026-06-13 04:45:05,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:45:05,236.236 INFO    ] Initializing speech engine...
[2026-06-13 04:45:05,239.239 INFO    ] 2026-06-13 04:45:05
[2026-06-13 04:45:05,459.459 INFO    ] 2026-06-13 04:45:05
[2026-06-13 04:45:05,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:45:05,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:45:05,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:45:05,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:45:05,811.811 INFO    ] time= 13/06/2026 04:45:05
[2026-06-13 04:45:05,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:45:05,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:45:06,003.003 INFO    ] No existing commands found in stream
[2026-06-13 04:45:11,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:45:11,015.015 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 04:45:14,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:45:14,255.255 INFO    ] Checking for system updates...
[2026-06-13 04:45:14,276.276 INFO    ] 200
[2026-06-13 04:45:14,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:14,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:14,310.310 INFO    ] No update needed
[2026-06-13 04:45:14,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:14,331.331 INFO    ] 200
[2026-06-13 04:45:14,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:14,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:14,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:14,397.397 INFO    ] No camera update needed
[2026-06-13 04:45:14,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:14,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:14,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:14,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:45:16,445.445 INFO    ] ================================================
[2026-06-13 04:45:16,461.461 INFO    ] Launching Daemon at Sat Jun 13 04:45:16 IST 2026
[2026-06-13 04:45:16,472.472 INFO    ] ================================================
[2026-06-13 04:45:16,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:45:16
[2026-06-13 04:45:17,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:45:17,282.282 INFO    ] Initializing speech engine...
[2026-06-13 04:45:17,287.287 INFO    ] 2026-06-13 04:45:17
[2026-06-13 04:45:17,515.515 INFO    ] 2026-06-13 04:45:17
[2026-06-13 04:45:17,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:45:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:45:17,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:45:17,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:45:17,918.918 INFO    ] time= 13/06/2026 04:45:17
[2026-06-13 04:45:17,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:45:18,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:45:18,124.124 INFO    ] No existing commands found in stream
[2026-06-13 04:45:23,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:45:23,157.157 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 04:45:24,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:45:25,001.001 INFO    ] Checking for system updates...
[2026-06-13 04:45:25,022.022 INFO    ] 200
[2026-06-13 04:45:25,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:25,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:25,056.056 INFO    ] No update needed
[2026-06-13 04:45:25,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:25,078.078 INFO    ] 200
[2026-06-13 04:45:25,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:25,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:25,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:25,146.146 INFO    ] No camera update needed
[2026-06-13 04:45:25,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:25,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:25,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:25,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:45:27,195.195 INFO    ] ================================================
[2026-06-13 04:45:27,212.212 INFO    ] Launching Daemon at Sat Jun 13 04:45:27 IST 2026
[2026-06-13 04:45:27,222.222 INFO    ] ================================================
[2026-06-13 04:45:27,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:45:27
[2026-06-13 04:45:27,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:45:28,029.029 INFO    ] Initializing speech engine...
[2026-06-13 04:45:28,033.033 INFO    ] 2026-06-13 04:45:28
[2026-06-13 04:45:28,254.254 INFO    ] 2026-06-13 04:45:28
[2026-06-13 04:45:28,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:45:28,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:45:28,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:45:28,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:45:28,674.674 INFO    ] time= 13/06/2026 04:45:28
[2026-06-13 04:45:28,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:45:28,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:45:28,772.772 INFO    ] No existing commands found in stream
[2026-06-13 04:45:33,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:45:33,790.790 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 04:45:37,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:45:37,220.220 INFO    ] Checking for system updates...
[2026-06-13 04:45:37,258.258 INFO    ] 200
[2026-06-13 04:45:37,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:37,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:37,325.325 INFO    ] No update needed
[2026-06-13 04:45:37,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:37,364.364 INFO    ] 200
[2026-06-13 04:45:37,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:37,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:37,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:37,456.456 INFO    ] No camera update needed
[2026-06-13 04:45:37,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:37,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:37,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:37,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:45:39,514.514 INFO    ] ================================================
[2026-06-13 04:45:39,530.530 INFO    ] Launching Daemon at Sat Jun 13 04:45:39 IST 2026
[2026-06-13 04:45:39,540.540 INFO    ] ================================================
[2026-06-13 04:45:39,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:45:39
[2026-06-13 04:45:40,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:45:40,430.430 INFO    ] Initializing speech engine...
[2026-06-13 04:45:40,434.434 INFO    ] 2026-06-13 04:45:40
[2026-06-13 04:45:40,646.646 INFO    ] 2026-06-13 04:45:40
[2026-06-13 04:45:40,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:45:40,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:45:40,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:45:40,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:45:41,049.049 INFO    ] time= 13/06/2026 04:45:40
[2026-06-13 04:45:41,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:45:41,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:45:41,165.165 INFO    ] No existing commands found in stream
[2026-06-13 04:45:46,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:45:46,178.178 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 04:45:47,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:45:47,694.694 INFO    ] Checking for system updates...
[2026-06-13 04:45:47,716.716 INFO    ] 200
[2026-06-13 04:45:47,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:47,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:47,751.751 INFO    ] No update needed
[2026-06-13 04:45:47,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:47,772.772 INFO    ] 200
[2026-06-13 04:45:47,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:47,798.798 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:47,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:45:47,821.821 INFO    ] No camera update needed
[2026-06-13 04:45:47,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:47,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:47,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:47,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:45:49,870.870 INFO    ] ================================================
[2026-06-13 04:45:49,885.885 INFO    ] Launching Daemon at Sat Jun 13 04:45:49 IST 2026
[2026-06-13 04:45:49,896.896 INFO    ] ================================================
[2026-06-13 04:45:50,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:45:50
[2026-06-13 04:45:50,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:45:50,770.770 INFO    ] Initializing speech engine...
[2026-06-13 04:45:50,795.795 INFO    ] 2026-06-13 04:45:50
[2026-06-13 04:45:51,001.001 INFO    ] 2026-06-13 04:45:50
[2026-06-13 04:45:51,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:45:51,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:45:51,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:45:51,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:45:51,411.411 INFO    ] time= 13/06/2026 04:45:51
[2026-06-13 04:45:51,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:45:51,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:45:51,672.672 INFO    ] No existing commands found in stream
[2026-06-13 04:45:56,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:45:56,705.705 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 04:45:58,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:45:58,840.840 INFO    ] Checking for system updates...
[2026-06-13 04:45:58,861.861 INFO    ] 200
[2026-06-13 04:45:58,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:58,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:58,895.895 INFO    ] No update needed
[2026-06-13 04:45:58,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 04:45:58,918.918 INFO    ] 200
[2026-06-13 04:45:58,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:45:58,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:45:58,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:45:58,981.981 INFO    ] No camera update needed
[2026-06-13 04:45:58,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:45:58,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:45:58,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:45:58,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:01,028.028 INFO    ] ================================================
[2026-06-13 04:46:01,043.043 INFO    ] Launching Daemon at Sat Jun 13 04:46:01 IST 2026
[2026-06-13 04:46:01,054.054 INFO    ] ================================================
[2026-06-13 04:46:01,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:01
[2026-06-13 04:46:01,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:02,032.032 INFO    ] Initializing speech engine...
[2026-06-13 04:46:02,054.054 INFO    ] 2026-06-13 04:46:02
[2026-06-13 04:46:02,273.273 INFO    ] 2026-06-13 04:46:02
[2026-06-13 04:46:02,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:02,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:02,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:02,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:02,557.557 INFO    ] time= 13/06/2026 04:46:02
[2026-06-13 04:46:02,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:02,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:02,651.651 INFO    ] No existing commands found in stream
[2026-06-13 04:46:07,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:46:07,689.689 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 04:46:10,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:46:10,907.907 INFO    ] Checking for system updates...
[2026-06-13 04:46:10,928.928 INFO    ] 200
[2026-06-13 04:46:10,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:10,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:10,962.962 INFO    ] No update needed
[2026-06-13 04:46:10,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 04:46:10,983.983 INFO    ] 200
[2026-06-13 04:46:10,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:11,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:46:11,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:11,054.054 INFO    ] No camera update needed
[2026-06-13 04:46:11,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:46:11,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:46:11,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:46:11,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:13,102.102 INFO    ] ================================================
[2026-06-13 04:46:13,117.117 INFO    ] Launching Daemon at Sat Jun 13 04:46:13 IST 2026
[2026-06-13 04:46:13,128.128 INFO    ] ================================================
[2026-06-13 04:46:13,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:13
[2026-06-13 04:46:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:14,005.005 INFO    ] Initializing speech engine...
[2026-06-13 04:46:14,016.016 INFO    ] 2026-06-13 04:46:14
[2026-06-13 04:46:14,230.230 INFO    ] 2026-06-13 04:46:14
[2026-06-13 04:46:14,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:14,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:14,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:14,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:14,640.640 INFO    ] time= 13/06/2026 04:46:14
[2026-06-13 04:46:14,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:14,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:14,751.751 INFO    ] No existing commands found in stream
[2026-06-13 04:46:19,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:46:19,764.764 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 04:46:20,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:46:20,573.573 INFO    ] Checking for system updates...
[2026-06-13 04:46:20,594.594 INFO    ] 200
[2026-06-13 04:46:20,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:20,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:20,627.627 INFO    ] No update needed
[2026-06-13 04:46:20,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 04:46:20,648.648 INFO    ] 200
[2026-06-13 04:46:20,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:20,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:46:20,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:20,714.714 INFO    ] No camera update needed
[2026-06-13 04:46:20,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:46:20,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:46:20,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:46:20,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:22,760.760 INFO    ] ================================================
[2026-06-13 04:46:22,775.775 INFO    ] Launching Daemon at Sat Jun 13 04:46:22 IST 2026
[2026-06-13 04:46:22,786.786 INFO    ] ================================================
[2026-06-13 04:46:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:23
[2026-06-13 04:46:23,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:23,572.572 INFO    ] Initializing speech engine...
[2026-06-13 04:46:23,576.576 INFO    ] 2026-06-13 04:46:23
[2026-06-13 04:46:23,780.780 INFO    ] 2026-06-13 04:46:23
[2026-06-13 04:46:23,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:23,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:23,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:24,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:24,189.189 INFO    ] time= 13/06/2026 04:46:24
[2026-06-13 04:46:24,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:24,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:24,293.293 INFO    ] No existing commands found in stream
[2026-06-13 04:46:29,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:46:29,305.305 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 04:46:29,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:46:29,837.837 INFO    ] Checking for system updates...
[2026-06-13 04:46:29,859.859 INFO    ] 200
[2026-06-13 04:46:29,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:29,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:46:29,892.892 INFO    ] No update needed
[2026-06-13 04:46:29,893.893 INFO    ] Checking for camera pi updates...
[2026-06-13 04:46:29,913.913 INFO    ] 200
[2026-06-13 04:46:29,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:29,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:46:29,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:46:29,975.975 INFO    ] No camera update needed
[2026-06-13 04:46:29,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:46:29,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:46:29,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:46:29,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:32,014.014 INFO    ] ================================================
[2026-06-13 04:46:32,022.022 INFO    ] Launching Daemon at Sat Jun 13 04:46:32 IST 2026
[2026-06-13 04:46:32,028.028 INFO    ] ================================================
[2026-06-13 04:46:32,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:32
[2026-06-13 04:46:32,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:32,789.789 INFO    ] Initializing speech engine...
[2026-06-13 04:46:32,802.802 INFO    ] 2026-06-13 04:46:32
[2026-06-13 04:46:33,009.009 INFO    ] 2026-06-13 04:46:32
[2026-06-13 04:46:33,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:33,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:33,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:33,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:33,400.400 INFO    ] time= 13/06/2026 04:46:33
[2026-06-13 04:46:33,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:33,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:33,526.526 INFO    ] No existing commands found in stream
[2026-06-13 04:46:38,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:46:38,540.540 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 04:46:41,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:46:41,426.426 INFO    ] Checking for system updates...
[2026-06-13 04:46:41,447.447 INFO    ] 200
[2026-06-13 04:46:41,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:41,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:41,481.481 INFO    ] No update needed
[2026-06-13 04:46:41,482.482 INFO    ] Checking for camera pi updates...
[2026-06-13 04:46:41,502.502 INFO    ] 200
[2026-06-13 04:46:41,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:41,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:46:41,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:41,580.580 INFO    ] No camera update needed
[2026-06-13 04:46:41,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:46:41,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:46:41,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:46:41,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:43,627.627 INFO    ] ================================================
[2026-06-13 04:46:43,642.642 INFO    ] Launching Daemon at Sat Jun 13 04:46:43 IST 2026
[2026-06-13 04:46:43,653.653 INFO    ] ================================================
[2026-06-13 04:46:43,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:43
[2026-06-13 04:46:44,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:44,421.421 INFO    ] Initializing speech engine...
[2026-06-13 04:46:44,428.428 INFO    ] 2026-06-13 04:46:44
[2026-06-13 04:46:44,641.641 INFO    ] 2026-06-13 04:46:44
[2026-06-13 04:46:44,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:44,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:44,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:44,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:44,998.998 INFO    ] time= 13/06/2026 04:46:44
[2026-06-13 04:46:45,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:45,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:45,175.175 INFO    ] No existing commands found in stream
[2026-06-13 04:46:50,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:46:50,189.189 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 04:46:52,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:46:52,274.274 INFO    ] Checking for system updates...
[2026-06-13 04:46:52,294.294 INFO    ] 200
[2026-06-13 04:46:52,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:52,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:52,328.328 INFO    ] No update needed
[2026-06-13 04:46:52,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 04:46:52,349.349 INFO    ] 200
[2026-06-13 04:46:52,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:46:52,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:46:52,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:46:52,422.422 INFO    ] No camera update needed
[2026-06-13 04:46:52,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:46:52,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:46:52,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:46:52,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:46:54,470.470 INFO    ] ================================================
[2026-06-13 04:46:54,485.485 INFO    ] Launching Daemon at Sat Jun 13 04:46:54 IST 2026
[2026-06-13 04:46:54,496.496 INFO    ] ================================================
[2026-06-13 04:46:54,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:46:54
[2026-06-13 04:46:55,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:46:55,347.347 INFO    ] Initializing speech engine...
[2026-06-13 04:46:55,356.356 INFO    ] 2026-06-13 04:46:55
[2026-06-13 04:46:55,566.566 INFO    ] 2026-06-13 04:46:55
[2026-06-13 04:46:55,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:46:55,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:46:55,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:46:55,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:46:55,975.975 INFO    ] time= 13/06/2026 04:46:55
[2026-06-13 04:46:56,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:46:56,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:46:56,091.091 INFO    ] No existing commands found in stream
[2026-06-13 04:47:01,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:01,105.105 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 04:47:05,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:47:05,116.116 INFO    ] Checking for system updates...
[2026-06-13 04:47:05,138.138 INFO    ] 200
[2026-06-13 04:47:05,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:05,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:05,173.173 INFO    ] No update needed
[2026-06-13 04:47:05,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:05,197.197 INFO    ] 200
[2026-06-13 04:47:05,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:05,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:05,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:05,265.265 INFO    ] No camera update needed
[2026-06-13 04:47:05,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:05,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:05,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:05,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:47:07,314.314 INFO    ] ================================================
[2026-06-13 04:47:07,330.330 INFO    ] Launching Daemon at Sat Jun 13 04:47:07 IST 2026
[2026-06-13 04:47:07,340.340 INFO    ] ================================================
[2026-06-13 04:47:07,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:47:07
[2026-06-13 04:47:07,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:47:08,126.126 INFO    ] Initializing speech engine...
[2026-06-13 04:47:08,131.131 INFO    ] 2026-06-13 04:47:08
[2026-06-13 04:47:08,346.346 INFO    ] 2026-06-13 04:47:08
[2026-06-13 04:47:08,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:47:08,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:47:08,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:47:08,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:47:08,776.776 INFO    ] time= 13/06/2026 04:47:08
[2026-06-13 04:47:08,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:47:08,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:47:08,896.896 INFO    ] No existing commands found in stream
[2026-06-13 04:47:13,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:13,910.910 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 04:47:14,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:47:14,297.297 INFO    ] Checking for system updates...
[2026-06-13 04:47:14,319.319 INFO    ] 200
[2026-06-13 04:47:14,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:14,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:47:14,352.352 INFO    ] No update needed
[2026-06-13 04:47:14,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:14,375.375 INFO    ] 200
[2026-06-13 04:47:14,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:14,401.401 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:14,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:47:14,450.450 INFO    ] No camera update needed
[2026-06-13 04:47:14,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:14,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:14,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:14,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:47:16,497.497 INFO    ] ================================================
[2026-06-13 04:47:16,512.512 INFO    ] Launching Daemon at Sat Jun 13 04:47:16 IST 2026
[2026-06-13 04:47:16,523.523 INFO    ] ================================================
[2026-06-13 04:47:16,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:47:16
[2026-06-13 04:47:17,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:47:17,319.319 INFO    ] Initializing speech engine...
[2026-06-13 04:47:17,327.327 INFO    ] 2026-06-13 04:47:17
[2026-06-13 04:47:17,550.550 INFO    ] 2026-06-13 04:47:17
[2026-06-13 04:47:17,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:47:17,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:47:17,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:47:17,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:47:17,992.992 INFO    ] time= 13/06/2026 04:47:17
[2026-06-13 04:47:18,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:47:18,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:47:18,102.102 INFO    ] No existing commands found in stream
[2026-06-13 04:47:23,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:23,115.115 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 04:47:24,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:47:24,953.953 INFO    ] Checking for system updates...
[2026-06-13 04:47:24,973.973 INFO    ] 200
[2026-06-13 04:47:24,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:25,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:25,006.006 INFO    ] No update needed
[2026-06-13 04:47:25,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:25,028.028 INFO    ] 200
[2026-06-13 04:47:25,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:25,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:25,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:25,078.078 INFO    ] No camera update needed
[2026-06-13 04:47:25,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:25,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:25,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:25,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:47:27,126.126 INFO    ] ================================================
[2026-06-13 04:47:27,141.141 INFO    ] Launching Daemon at Sat Jun 13 04:47:27 IST 2026
[2026-06-13 04:47:27,153.153 INFO    ] ================================================
[2026-06-13 04:47:27,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:47:27
[2026-06-13 04:47:27,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:47:27,983.983 INFO    ] Initializing speech engine...
[2026-06-13 04:47:27,988.988 INFO    ] 2026-06-13 04:47:27
[2026-06-13 04:47:28,217.217 INFO    ] 2026-06-13 04:47:28
[2026-06-13 04:47:28,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:47:28,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:47:28,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:47:28,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:47:28,652.652 INFO    ] time= 13/06/2026 04:47:28
[2026-06-13 04:47:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:47:28,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:47:28,773.773 INFO    ] No existing commands found in stream
[2026-06-13 04:47:33,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:33,781.781 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 04:47:37,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:47:37,468.468 INFO    ] Checking for system updates...
[2026-06-13 04:47:37,489.489 INFO    ] 200
[2026-06-13 04:47:37,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:37,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:37,530.530 INFO    ] No update needed
[2026-06-13 04:47:37,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:37,571.571 INFO    ] 200
[2026-06-13 04:47:37,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:37,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:37,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:37,762.762 INFO    ] No camera update needed
[2026-06-13 04:47:37,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:37,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:37,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:37,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:47:39,819.819 INFO    ] ================================================
[2026-06-13 04:47:39,834.834 INFO    ] Launching Daemon at Sat Jun 13 04:47:39 IST 2026
[2026-06-13 04:47:39,845.845 INFO    ] ================================================
[2026-06-13 04:47:40,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:47:40
[2026-06-13 04:47:40,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:47:40,672.672 INFO    ] Initializing speech engine...
[2026-06-13 04:47:40,678.678 INFO    ] 2026-06-13 04:47:40
[2026-06-13 04:47:40,893.893 INFO    ] 2026-06-13 04:47:40
[2026-06-13 04:47:40,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:47:41,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:47:41,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:47:41,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:47:41,296.296 INFO    ] time= 13/06/2026 04:47:41
[2026-06-13 04:47:41,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:47:41,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:47:41,448.448 INFO    ] No existing commands found in stream
[2026-06-13 04:47:46,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:46,462.462 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 04:47:46,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:47:46,798.798 INFO    ] Checking for system updates...
[2026-06-13 04:47:46,818.818 INFO    ] 200
[2026-06-13 04:47:46,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:46,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:46,854.854 INFO    ] No update needed
[2026-06-13 04:47:46,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:46,874.874 INFO    ] 200
[2026-06-13 04:47:46,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:46,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:46,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:47:46,951.951 INFO    ] No camera update needed
[2026-06-13 04:47:46,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:46,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:46,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:46,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:47:49,999.999 INFO    ] ================================================
[2026-06-13 04:47:49,015.015 INFO    ] Launching Daemon at Sat Jun 13 04:47:49 IST 2026
[2026-06-13 04:47:49,025.025 INFO    ] ================================================
[2026-06-13 04:47:49,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:47:49
[2026-06-13 04:47:50,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:47:50,449.449 INFO    ] Initializing speech engine...
[2026-06-13 04:47:50,459.459 INFO    ] 2026-06-13 04:47:50
[2026-06-13 04:47:50,717.717 INFO    ] 2026-06-13 04:47:50
[2026-06-13 04:47:50,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:47:50,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:47:51,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:47:51,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:47:51,183.183 INFO    ] time= 13/06/2026 04:47:51
[2026-06-13 04:47:51,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:47:51,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:47:51,403.403 INFO    ] No existing commands found in stream
[2026-06-13 04:47:56,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:47:56,430.430 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 04:47:58,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:47:58,147.147 INFO    ] Checking for system updates...
[2026-06-13 04:47:58,168.168 INFO    ] 200
[2026-06-13 04:47:58,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:58,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:47:58,202.202 INFO    ] No update needed
[2026-06-13 04:47:58,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 04:47:58,223.223 INFO    ] 200
[2026-06-13 04:47:58,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:47:58,251.251 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:47:58,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:47:58,292.292 INFO    ] No camera update needed
[2026-06-13 04:47:58,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:47:58,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:47:58,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:47:58,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:00,342.342 INFO    ] ================================================
[2026-06-13 04:48:00,357.357 INFO    ] Launching Daemon at Sat Jun 13 04:48:00 IST 2026
[2026-06-13 04:48:00,368.368 INFO    ] ================================================
[2026-06-13 04:48:00,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:00
[2026-06-13 04:48:01,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:48:01,220.220 INFO    ] Initializing speech engine...
[2026-06-13 04:48:01,234.234 INFO    ] 2026-06-13 04:48:01
[2026-06-13 04:48:01,440.440 INFO    ] 2026-06-13 04:48:01
[2026-06-13 04:48:01,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:48:01,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:48:01,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:48:01,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:48:01,791.791 INFO    ] time= 13/06/2026 04:48:01
[2026-06-13 04:48:01,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:48:01,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:48:01,862.862 INFO    ] No existing commands found in stream
[2026-06-13 04:48:06,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:48:06,874.874 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 04:48:10,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:48:10,433.433 INFO    ] Checking for system updates...
[2026-06-13 04:48:10,457.457 INFO    ] 200
[2026-06-13 04:48:10,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:10,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:48:10,496.496 INFO    ] No update needed
[2026-06-13 04:48:10,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 04:48:10,519.519 INFO    ] 200
[2026-06-13 04:48:10,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:10,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:48:10,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:48:10,593.593 INFO    ] No camera update needed
[2026-06-13 04:48:10,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:48:10,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:48:10,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:48:10,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:12,642.642 INFO    ] ================================================
[2026-06-13 04:48:12,658.658 INFO    ] Launching Daemon at Sat Jun 13 04:48:12 IST 2026
[2026-06-13 04:48:12,669.669 INFO    ] ================================================
[2026-06-13 04:48:13,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:13
[2026-06-13 04:48:13,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:48:13,517.517 INFO    ] Initializing speech engine...
[2026-06-13 04:48:13,522.522 INFO    ] 2026-06-13 04:48:13
[2026-06-13 04:48:13,728.728 INFO    ] 2026-06-13 04:48:13
[2026-06-13 04:48:13,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:48:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:48:13,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:48:14,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:48:14,146.146 INFO    ] time= 13/06/2026 04:48:14
[2026-06-13 04:48:14,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:48:14,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:48:14,243.243 INFO    ] No existing commands found in stream
[2026-06-13 04:48:19,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:48:19,261.261 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 04:48:21,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:48:21,943.943 INFO    ] Checking for system updates...
[2026-06-13 04:48:21,964.964 INFO    ] 200
[2026-06-13 04:48:21,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:21,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:21,998.998 INFO    ] No update needed
[2026-06-13 04:48:21,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 04:48:22,019.019 INFO    ] 200
[2026-06-13 04:48:22,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:22,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:48:22,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:22,083.083 INFO    ] No camera update needed
[2026-06-13 04:48:22,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:48:22,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:48:22,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:48:22,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:24,132.132 INFO    ] ================================================
[2026-06-13 04:48:24,147.147 INFO    ] Launching Daemon at Sat Jun 13 04:48:24 IST 2026
[2026-06-13 04:48:24,158.158 INFO    ] ================================================
[2026-06-13 04:48:24,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:24
[2026-06-13 04:48:24,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:48:24,950.950 INFO    ] Initializing speech engine...
[2026-06-13 04:48:24,960.960 INFO    ] 2026-06-13 04:48:24
[2026-06-13 04:48:25,165.165 INFO    ] 2026-06-13 04:48:25
[2026-06-13 04:48:25,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:48:25,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:48:25,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:48:25,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:48:25,559.559 INFO    ] time= 13/06/2026 04:48:25
[2026-06-13 04:48:25,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:48:25,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:48:25,680.680 INFO    ] No existing commands found in stream
[2026-06-13 04:48:30,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:48:30,692.692 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 04:48:33,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:48:33,608.608 INFO    ] Checking for system updates...
[2026-06-13 04:48:33,629.629 INFO    ] 200
[2026-06-13 04:48:33,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:33,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:48:33,662.662 INFO    ] No update needed
[2026-06-13 04:48:33,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 04:48:33,683.683 INFO    ] 200
[2026-06-13 04:48:33,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:33,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:48:33,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:48:33,754.754 INFO    ] No camera update needed
[2026-06-13 04:48:33,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:48:33,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:48:33,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:48:33,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:35,804.804 INFO    ] ================================================
[2026-06-13 04:48:35,820.820 INFO    ] Launching Daemon at Sat Jun 13 04:48:35 IST 2026
[2026-06-13 04:48:35,830.830 INFO    ] ================================================
[2026-06-13 04:48:36,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:36
[2026-06-13 04:48:36,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:48:36,686.686 INFO    ] Initializing speech engine...
[2026-06-13 04:48:36,692.692 INFO    ] 2026-06-13 04:48:36
[2026-06-13 04:48:36,900.900 INFO    ] 2026-06-13 04:48:36
[2026-06-13 04:48:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:48:37,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:48:37,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:48:37,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:48:37,326.326 INFO    ] time= 13/06/2026 04:48:37
[2026-06-13 04:48:37,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:48:37,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:48:37,425.425 INFO    ] No existing commands found in stream
[2026-06-13 04:48:42,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:48:42,437.437 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 04:48:44,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:48:44,267.267 INFO    ] Checking for system updates...
[2026-06-13 04:48:44,289.289 INFO    ] 200
[2026-06-13 04:48:44,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:44,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:44,325.325 INFO    ] No update needed
[2026-06-13 04:48:44,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 04:48:44,345.345 INFO    ] 200
[2026-06-13 04:48:44,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:44,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:48:44,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:44,409.409 INFO    ] No camera update needed
[2026-06-13 04:48:44,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:48:44,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:48:44,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:48:44,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:46,457.457 INFO    ] ================================================
[2026-06-13 04:48:46,472.472 INFO    ] Launching Daemon at Sat Jun 13 04:48:46 IST 2026
[2026-06-13 04:48:46,483.483 INFO    ] ================================================
[2026-06-13 04:48:46,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:46
[2026-06-13 04:48:47,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:48:47,266.266 INFO    ] Initializing speech engine...
[2026-06-13 04:48:47,269.269 INFO    ] 2026-06-13 04:48:47
[2026-06-13 04:48:47,498.498 INFO    ] 2026-06-13 04:48:47
[2026-06-13 04:48:47,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:48:47,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:48:47,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:48:47,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:48:47,873.873 INFO    ] time= 13/06/2026 04:48:47
[2026-06-13 04:48:47,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:48:47,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:48:48,053.053 INFO    ] No existing commands found in stream
[2026-06-13 04:48:53,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:48:53,065.065 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 04:48:57,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:48:57,202.202 INFO    ] Checking for system updates...
[2026-06-13 04:48:57,223.223 INFO    ] 200
[2026-06-13 04:48:57,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:57,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:57,256.256 INFO    ] No update needed
[2026-06-13 04:48:57,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 04:48:57,277.277 INFO    ] 200
[2026-06-13 04:48:57,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:48:57,302.302 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:48:57,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:48:57,354.354 INFO    ] No camera update needed
[2026-06-13 04:48:57,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:48:57,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:48:57,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:48:57,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:48:59,401.401 INFO    ] ================================================
[2026-06-13 04:48:59,416.416 INFO    ] Launching Daemon at Sat Jun 13 04:48:59 IST 2026
[2026-06-13 04:48:59,427.427 INFO    ] ================================================
[2026-06-13 04:48:59,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:48:59
[2026-06-13 04:49:00,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:00,231.231 INFO    ] Initializing speech engine...
[2026-06-13 04:49:00,235.235 INFO    ] 2026-06-13 04:49:00
[2026-06-13 04:49:00,425.425 INFO    ] 2026-06-13 04:49:00
[2026-06-13 04:49:00,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:00,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:00,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:00,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:00,714.714 INFO    ] time= 13/06/2026 04:49:00
[2026-06-13 04:49:00,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:00,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:00,821.821 INFO    ] No existing commands found in stream
[2026-06-13 04:49:05,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:49:05,857.857 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 04:49:09,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:49:09,449.449 INFO    ] Checking for system updates...
[2026-06-13 04:49:09,469.469 INFO    ] 200
[2026-06-13 04:49:09,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:09,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:49:09,502.502 INFO    ] No update needed
[2026-06-13 04:49:09,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 04:49:09,525.525 INFO    ] 200
[2026-06-13 04:49:09,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:09,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:49:09,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:09,588.588 INFO    ] No camera update needed
[2026-06-13 04:49:09,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:49:09,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:49:09,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:49:09,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:49:11,636.636 INFO    ] ================================================
[2026-06-13 04:49:11,651.651 INFO    ] Launching Daemon at Sat Jun 13 04:49:11 IST 2026
[2026-06-13 04:49:11,661.661 INFO    ] ================================================
[2026-06-13 04:49:12,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:49:12
[2026-06-13 04:49:12,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:12,475.475 INFO    ] Initializing speech engine...
[2026-06-13 04:49:12,480.480 INFO    ] 2026-06-13 04:49:12
[2026-06-13 04:49:12,685.685 INFO    ] 2026-06-13 04:49:12
[2026-06-13 04:49:12,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:12,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:12,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:13,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:13,101.101 INFO    ] time= 13/06/2026 04:49:13
[2026-06-13 04:49:13,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:13,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:13,208.208 INFO    ] No existing commands found in stream
[2026-06-13 04:49:18,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:49:18,220.220 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 04:49:18,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:49:18,576.576 INFO    ] Checking for system updates...
[2026-06-13 04:49:18,597.597 INFO    ] 200
[2026-06-13 04:49:18,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:18,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:18,632.632 INFO    ] No update needed
[2026-06-13 04:49:18,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 04:49:18,653.653 INFO    ] 200
[2026-06-13 04:49:18,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:18,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:49:18,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:49:18,723.723 INFO    ] No camera update needed
[2026-06-13 04:49:18,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:49:18,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:49:18,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:49:18,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:49:20,771.771 INFO    ] ================================================
[2026-06-13 04:49:20,786.786 INFO    ] Launching Daemon at Sat Jun 13 04:49:20 IST 2026
[2026-06-13 04:49:20,797.797 INFO    ] ================================================
[2026-06-13 04:49:21,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:49:21
[2026-06-13 04:49:21,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:21,591.591 INFO    ] Initializing speech engine...
[2026-06-13 04:49:21,596.596 INFO    ] 2026-06-13 04:49:21
[2026-06-13 04:49:21,802.802 INFO    ] 2026-06-13 04:49:21
[2026-06-13 04:49:21,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:21,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:22,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:22,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:22,201.201 INFO    ] time= 13/06/2026 04:49:22
[2026-06-13 04:49:22,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:22,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:22,315.315 INFO    ] No existing commands found in stream
[2026-06-13 04:49:27,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:49:27,329.329 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 04:49:29,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:49:29,834.834 INFO    ] Checking for system updates...
[2026-06-13 04:49:29,855.855 INFO    ] 200
[2026-06-13 04:49:29,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:29,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:49:29,889.889 INFO    ] No update needed
[2026-06-13 04:49:29,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 04:49:29,910.910 INFO    ] 200
[2026-06-13 04:49:29,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:29,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:49:29,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:49:29,973.973 INFO    ] No camera update needed
[2026-06-13 04:49:29,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:49:29,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:49:29,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:49:29,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:49:32,014.014 INFO    ] ================================================
[2026-06-13 04:49:32,030.030 INFO    ] Launching Daemon at Sat Jun 13 04:49:32 IST 2026
[2026-06-13 04:49:32,039.039 INFO    ] ================================================
[2026-06-13 04:49:32,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:49:32
[2026-06-13 04:49:32,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:32,863.863 INFO    ] Initializing speech engine...
[2026-06-13 04:49:32,868.868 INFO    ] 2026-06-13 04:49:32
[2026-06-13 04:49:33,073.073 INFO    ] 2026-06-13 04:49:33
[2026-06-13 04:49:33,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:33,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:33,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:33,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:33,473.473 INFO    ] time= 13/06/2026 04:49:33
[2026-06-13 04:49:33,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:33,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:33,590.590 INFO    ] No existing commands found in stream
[2026-06-13 04:49:38,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:49:38,602.602 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 04:49:42,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:49:42,220.220 INFO    ] Checking for system updates...
[2026-06-13 04:49:42,241.241 INFO    ] 200
[2026-06-13 04:49:42,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:42,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:42,278.278 INFO    ] No update needed
[2026-06-13 04:49:42,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 04:49:42,300.300 INFO    ] 200
[2026-06-13 04:49:42,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:42,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:49:42,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:42,463.463 INFO    ] No camera update needed
[2026-06-13 04:49:42,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:49:42,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:49:42,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:49:42,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:49:44,512.512 INFO    ] ================================================
[2026-06-13 04:49:44,527.527 INFO    ] Launching Daemon at Sat Jun 13 04:49:44 IST 2026
[2026-06-13 04:49:44,538.538 INFO    ] ================================================
[2026-06-13 04:49:44,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:49:44
[2026-06-13 04:49:45,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:45,340.340 INFO    ] Initializing speech engine...
[2026-06-13 04:49:45,345.345 INFO    ] 2026-06-13 04:49:45
[2026-06-13 04:49:45,549.549 INFO    ] 2026-06-13 04:49:45
[2026-06-13 04:49:45,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:45,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:45,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:45,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:45,941.941 INFO    ] time= 13/06/2026 04:49:45
[2026-06-13 04:49:45,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:45,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:46,067.067 INFO    ] No existing commands found in stream
[2026-06-13 04:49:51,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:49:51,080.080 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 04:49:53,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:49:53,557.557 INFO    ] Checking for system updates...
[2026-06-13 04:49:53,579.579 INFO    ] 200
[2026-06-13 04:49:53,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:53,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:53,612.612 INFO    ] No update needed
[2026-06-13 04:49:53,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 04:49:53,632.632 INFO    ] 200
[2026-06-13 04:49:53,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:49:53,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:49:53,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:49:53,697.697 INFO    ] No camera update needed
[2026-06-13 04:49:53,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:49:53,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:49:53,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:49:53,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:49:55,744.744 INFO    ] ================================================
[2026-06-13 04:49:55,759.759 INFO    ] Launching Daemon at Sat Jun 13 04:49:55 IST 2026
[2026-06-13 04:49:55,769.769 INFO    ] ================================================
[2026-06-13 04:49:56,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:49:56
[2026-06-13 04:49:56,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:49:56,588.588 INFO    ] Initializing speech engine...
[2026-06-13 04:49:56,598.598 INFO    ] 2026-06-13 04:49:56
[2026-06-13 04:49:56,803.803 INFO    ] 2026-06-13 04:49:56
[2026-06-13 04:49:56,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:49:57,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:49:57,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:49:57,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:49:57,204.204 INFO    ] time= 13/06/2026 04:49:57
[2026-06-13 04:49:57,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:49:57,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:49:57,313.313 INFO    ] No existing commands found in stream
[2026-06-13 04:50:02,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:50:02,322.322 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 04:50:09,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:50:09,716.716 INFO    ] Checking for system updates...
[2026-06-13 04:50:09,756.756 INFO    ] 200
[2026-06-13 04:50:09,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:09,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:50:09,822.822 INFO    ] No update needed
[2026-06-13 04:50:09,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 04:50:09,846.846 INFO    ] 200
[2026-06-13 04:50:09,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:09,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:50:09,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:50:09,924.924 INFO    ] No camera update needed
[2026-06-13 04:50:09,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:50:09,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:50:09,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:50:09,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:50:11,972.972 INFO    ] ================================================
[2026-06-13 04:50:11,987.987 INFO    ] Launching Daemon at Sat Jun 13 04:50:11 IST 2026
[2026-06-13 04:50:12,997.997 INFO    ] ================================================
[2026-06-13 04:50:12,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:50:12
[2026-06-13 04:50:12,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:50:12,810.810 INFO    ] Initializing speech engine...
[2026-06-13 04:50:12,816.816 INFO    ] 2026-06-13 04:50:12
[2026-06-13 04:50:13,032.032 INFO    ] 2026-06-13 04:50:13
[2026-06-13 04:50:13,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:50:13,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:50:13,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:50:13,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:50:13,464.464 INFO    ] time= 13/06/2026 04:50:13
[2026-06-13 04:50:13,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:50:13,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:50:13,585.585 INFO    ] No existing commands found in stream
[2026-06-13 04:50:18,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:50:18,598.598 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 04:50:22,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:50:22,738.738 INFO    ] Checking for system updates...
[2026-06-13 04:50:22,760.760 INFO    ] 200
[2026-06-13 04:50:22,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:22,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:50:22,795.795 INFO    ] No update needed
[2026-06-13 04:50:22,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 04:50:22,817.817 INFO    ] 200
[2026-06-13 04:50:22,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:22,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:50:22,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:50:22,890.890 INFO    ] No camera update needed
[2026-06-13 04:50:22,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:50:22,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:50:22,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:50:22,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:50:24,937.937 INFO    ] ================================================
[2026-06-13 04:50:24,953.953 INFO    ] Launching Daemon at Sat Jun 13 04:50:24 IST 2026
[2026-06-13 04:50:24,963.963 INFO    ] ================================================
[2026-06-13 04:50:25,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:50:25
[2026-06-13 04:50:25,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:50:25,749.749 INFO    ] Initializing speech engine...
[2026-06-13 04:50:25,754.754 INFO    ] 2026-06-13 04:50:25
[2026-06-13 04:50:25,960.960 INFO    ] 2026-06-13 04:50:25
[2026-06-13 04:50:25,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:50:26,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:50:26,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:50:26,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:50:26,378.378 INFO    ] time= 13/06/2026 04:50:26
[2026-06-13 04:50:26,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:50:26,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:50:26,484.484 INFO    ] No existing commands found in stream
[2026-06-13 04:50:31,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:50:31,498.498 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 04:50:33,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:50:33,966.966 INFO    ] Checking for system updates...
[2026-06-13 04:50:33,989.989 INFO    ] 200
[2026-06-13 04:50:33,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:34,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:50:34,022.022 INFO    ] No update needed
[2026-06-13 04:50:34,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 04:50:34,044.044 INFO    ] 200
[2026-06-13 04:50:34,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:34,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:50:34,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:50:34,106.106 INFO    ] No camera update needed
[2026-06-13 04:50:34,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:50:34,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:50:34,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:50:34,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:50:36,156.156 INFO    ] ================================================
[2026-06-13 04:50:36,172.172 INFO    ] Launching Daemon at Sat Jun 13 04:50:36 IST 2026
[2026-06-13 04:50:36,182.182 INFO    ] ================================================
[2026-06-13 04:50:36,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:50:36
[2026-06-13 04:50:36,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:50:36,985.985 INFO    ] Initializing speech engine...
[2026-06-13 04:50:36,996.996 INFO    ] 2026-06-13 04:50:36
[2026-06-13 04:50:37,204.204 INFO    ] 2026-06-13 04:50:37
[2026-06-13 04:50:37,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:50:37,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:50:37,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:50:37,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:50:37,624.624 INFO    ] time= 13/06/2026 04:50:37
[2026-06-13 04:50:37,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:50:37,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:50:37,824.824 INFO    ] No existing commands found in stream
[2026-06-13 04:50:42,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:50:42,845.845 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 04:50:43,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:50:43,400.400 INFO    ] Checking for system updates...
[2026-06-13 04:50:43,421.421 INFO    ] 200
[2026-06-13 04:50:43,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:43,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:50:43,458.458 INFO    ] No update needed
[2026-06-13 04:50:43,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 04:50:43,481.481 INFO    ] 200
[2026-06-13 04:50:43,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:43,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:50:43,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:50:43,543.543 INFO    ] No camera update needed
[2026-06-13 04:50:43,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:50:43,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:50:43,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:50:43,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:50:45,586.586 INFO    ] ================================================
[2026-06-13 04:50:45,602.602 INFO    ] Launching Daemon at Sat Jun 13 04:50:45 IST 2026
[2026-06-13 04:50:45,616.616 INFO    ] ================================================
[2026-06-13 04:50:45,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:50:45
[2026-06-13 04:50:46,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:50:46,460.460 INFO    ] Initializing speech engine...
[2026-06-13 04:50:46,466.466 INFO    ] 2026-06-13 04:50:46
[2026-06-13 04:50:46,673.673 INFO    ] 2026-06-13 04:50:46
[2026-06-13 04:50:46,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:50:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:50:46,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:50:47,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:50:47,089.089 INFO    ] time= 13/06/2026 04:50:47
[2026-06-13 04:50:47,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:50:47,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:50:47,189.189 INFO    ] No existing commands found in stream
[2026-06-13 04:50:52,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:50:52,207.207 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 04:50:55,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:50:55,499.499 INFO    ] Checking for system updates...
[2026-06-13 04:50:55,521.521 INFO    ] 200
[2026-06-13 04:50:55,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:55,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:50:55,557.557 INFO    ] No update needed
[2026-06-13 04:50:55,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 04:50:55,579.579 INFO    ] 200
[2026-06-13 04:50:55,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:50:55,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:50:55,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:50:55,653.653 INFO    ] No camera update needed
[2026-06-13 04:50:55,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:50:55,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:50:55,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:50:55,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:50:57,703.703 INFO    ] ================================================
[2026-06-13 04:50:57,719.719 INFO    ] Launching Daemon at Sat Jun 13 04:50:57 IST 2026
[2026-06-13 04:50:57,730.730 INFO    ] ================================================
[2026-06-13 04:50:58,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:50:58
[2026-06-13 04:50:58,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:50:58,552.552 INFO    ] Initializing speech engine...
[2026-06-13 04:50:58,564.564 INFO    ] 2026-06-13 04:50:58
[2026-06-13 04:50:58,774.774 INFO    ] 2026-06-13 04:50:58
[2026-06-13 04:50:58,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:50:58,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:50:58,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:50:59,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:50:59,186.186 INFO    ] time= 13/06/2026 04:50:59
[2026-06-13 04:50:59,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:50:59,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:50:59,290.290 INFO    ] No existing commands found in stream
[2026-06-13 04:51:04,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:51:04,304.304 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 04:51:08,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:51:08,618.618 INFO    ] Checking for system updates...
[2026-06-13 04:51:08,639.639 INFO    ] 200
[2026-06-13 04:51:08,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:08,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:08,674.674 INFO    ] No update needed
[2026-06-13 04:51:08,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 04:51:08,698.698 INFO    ] 200
[2026-06-13 04:51:08,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:08,723.723 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:51:08,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:08,768.768 INFO    ] No camera update needed
[2026-06-13 04:51:08,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:51:08,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:51:08,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:51:08,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:51:10,816.816 INFO    ] ================================================
[2026-06-13 04:51:10,832.832 INFO    ] Launching Daemon at Sat Jun 13 04:51:10 IST 2026
[2026-06-13 04:51:10,844.844 INFO    ] ================================================
[2026-06-13 04:51:11,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:51:11
[2026-06-13 04:51:11,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:51:11,636.636 INFO    ] Initializing speech engine...
[2026-06-13 04:51:11,644.644 INFO    ] 2026-06-13 04:51:11
[2026-06-13 04:51:11,867.867 INFO    ] 2026-06-13 04:51:11
[2026-06-13 04:51:11,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:51:12,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:51:12,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:51:12,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:51:12,283.283 INFO    ] time= 13/06/2026 04:51:12
[2026-06-13 04:51:12,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:51:12,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:51:12,420.420 INFO    ] No existing commands found in stream
[2026-06-13 04:51:17,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:51:17,433.433 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 04:51:19,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:51:19,273.273 INFO    ] Checking for system updates...
[2026-06-13 04:51:19,294.294 INFO    ] 200
[2026-06-13 04:51:19,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:19,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:51:19,327.327 INFO    ] No update needed
[2026-06-13 04:51:19,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 04:51:19,348.348 INFO    ] 200
[2026-06-13 04:51:19,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:19,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:51:19,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:51:19,415.415 INFO    ] No camera update needed
[2026-06-13 04:51:19,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:51:19,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:51:19,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:51:19,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:51:21,464.464 INFO    ] ================================================
[2026-06-13 04:51:21,480.480 INFO    ] Launching Daemon at Sat Jun 13 04:51:21 IST 2026
[2026-06-13 04:51:21,492.492 INFO    ] ================================================
[2026-06-13 04:51:21,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:51:21
[2026-06-13 04:51:22,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:51:22,280.280 INFO    ] Initializing speech engine...
[2026-06-13 04:51:22,293.293 INFO    ] 2026-06-13 04:51:22
[2026-06-13 04:51:22,515.515 INFO    ] 2026-06-13 04:51:22
[2026-06-13 04:51:22,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:51:22,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:51:22,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:51:22,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:51:22,936.936 INFO    ] time= 13/06/2026 04:51:22
[2026-06-13 04:51:22,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:51:23,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:51:23,079.079 INFO    ] No existing commands found in stream
[2026-06-13 04:51:28,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:51:28,093.093 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 04:51:31,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:51:31,074.074 INFO    ] Checking for system updates...
[2026-06-13 04:51:31,095.095 INFO    ] 200
[2026-06-13 04:51:31,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:31,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:31,129.129 INFO    ] No update needed
[2026-06-13 04:51:31,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 04:51:31,151.151 INFO    ] 200
[2026-06-13 04:51:31,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:31,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:51:31,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:31,218.218 INFO    ] No camera update needed
[2026-06-13 04:51:31,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:51:31,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:51:31,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:51:31,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:51:33,251.251 INFO    ] ================================================
[2026-06-13 04:51:33,260.260 INFO    ] Launching Daemon at Sat Jun 13 04:51:33 IST 2026
[2026-06-13 04:51:33,266.266 INFO    ] ================================================
[2026-06-13 04:51:33,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:51:33
[2026-06-13 04:51:33,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:51:34,066.066 INFO    ] Initializing speech engine...
[2026-06-13 04:51:34,076.076 INFO    ] 2026-06-13 04:51:34
[2026-06-13 04:51:34,283.283 INFO    ] 2026-06-13 04:51:34
[2026-06-13 04:51:34,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:51:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:51:34,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:51:34,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:51:34,674.674 INFO    ] time= 13/06/2026 04:51:34
[2026-06-13 04:51:34,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:51:34,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:51:34,799.799 INFO    ] No existing commands found in stream
[2026-06-13 04:51:39,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:51:39,813.813 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 04:51:41,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:51:41,051.051 INFO    ] Checking for system updates...
[2026-06-13 04:51:41,071.071 INFO    ] 200
[2026-06-13 04:51:41,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:41,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:51:41,104.104 INFO    ] No update needed
[2026-06-13 04:51:41,105.105 INFO    ] Checking for camera pi updates...
[2026-06-13 04:51:41,126.126 INFO    ] 200
[2026-06-13 04:51:41,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:41,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:51:41,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:41,197.197 INFO    ] No camera update needed
[2026-06-13 04:51:41,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:51:41,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:51:41,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:51:41,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:51:43,245.245 INFO    ] ================================================
[2026-06-13 04:51:43,260.260 INFO    ] Launching Daemon at Sat Jun 13 04:51:43 IST 2026
[2026-06-13 04:51:43,271.271 INFO    ] ================================================
[2026-06-13 04:51:43,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:51:43
[2026-06-13 04:51:43,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:51:44,084.084 INFO    ] Initializing speech engine...
[2026-06-13 04:51:44,095.095 INFO    ] 2026-06-13 04:51:44
[2026-06-13 04:51:44,311.311 INFO    ] 2026-06-13 04:51:44
[2026-06-13 04:51:44,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:51:44,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:51:44,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:51:44,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:51:44,741.741 INFO    ] time= 13/06/2026 04:51:44
[2026-06-13 04:51:44,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:51:44,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:51:44,870.870 INFO    ] No existing commands found in stream
[2026-06-13 04:51:49,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:51:49,884.884 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 04:51:53,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:51:54,000.000 INFO    ] Checking for system updates...
[2026-06-13 04:51:54,021.021 INFO    ] 200
[2026-06-13 04:51:54,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:54,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:54,054.054 INFO    ] No update needed
[2026-06-13 04:51:54,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 04:51:54,074.074 INFO    ] 200
[2026-06-13 04:51:54,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:51:54,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:51:54,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:51:54,241.241 INFO    ] No camera update needed
[2026-06-13 04:51:54,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:51:54,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:51:54,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:51:54,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:51:56,289.289 INFO    ] ================================================
[2026-06-13 04:51:56,305.305 INFO    ] Launching Daemon at Sat Jun 13 04:51:56 IST 2026
[2026-06-13 04:51:56,317.317 INFO    ] ================================================
[2026-06-13 04:51:56,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:51:56
[2026-06-13 04:51:56,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:51:57,109.109 INFO    ] Initializing speech engine...
[2026-06-13 04:51:57,122.122 INFO    ] 2026-06-13 04:51:57
[2026-06-13 04:51:57,330.330 INFO    ] 2026-06-13 04:51:57
[2026-06-13 04:51:57,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:51:57,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:51:57,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:51:57,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:51:57,749.749 INFO    ] time= 13/06/2026 04:51:57
[2026-06-13 04:51:57,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:51:57,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:51:57,852.852 INFO    ] No existing commands found in stream
[2026-06-13 04:52:02,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:02,864.864 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 04:52:03,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:52:03,310.310 INFO    ] Checking for system updates...
[2026-06-13 04:52:03,833.833 INFO    ] 200
[2026-06-13 04:52:03,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:03,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:03,892.892 INFO    ] No update needed
[2026-06-13 04:52:03,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:03,929.929 INFO    ] 200
[2026-06-13 04:52:03,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:03,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:04,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:04,022.022 INFO    ] No camera update needed
[2026-06-13 04:52:04,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:04,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:04,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:04,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:06,079.079 INFO    ] ================================================
[2026-06-13 04:52:06,095.095 INFO    ] Launching Daemon at Sat Jun 13 04:52:06 IST 2026
[2026-06-13 04:52:06,107.107 INFO    ] ================================================
[2026-06-13 04:52:06,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:52:06
[2026-06-13 04:52:06,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:52:06,932.932 INFO    ] Initializing speech engine...
[2026-06-13 04:52:06,938.938 INFO    ] 2026-06-13 04:52:06
[2026-06-13 04:52:07,142.142 INFO    ] 2026-06-13 04:52:07
[2026-06-13 04:52:07,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:52:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:52:07,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:52:07,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:52:07,533.533 INFO    ] time= 13/06/2026 04:52:07
[2026-06-13 04:52:07,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:52:07,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:52:07,754.754 INFO    ] No existing commands found in stream
[2026-06-13 04:52:12,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:12,770.770 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 04:52:16,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:52:16,813.813 INFO    ] Checking for system updates...
[2026-06-13 04:52:16,834.834 INFO    ] 200
[2026-06-13 04:52:16,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:16,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:16,867.867 INFO    ] No update needed
[2026-06-13 04:52:16,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:16,890.890 INFO    ] 200
[2026-06-13 04:52:16,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:16,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:16,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:16,953.953 INFO    ] No camera update needed
[2026-06-13 04:52:16,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:16,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:16,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:16,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:19,010.010 INFO    ] ================================================
[2026-06-13 04:52:19,026.026 INFO    ] Launching Daemon at Sat Jun 13 04:52:19 IST 2026
[2026-06-13 04:52:19,037.037 INFO    ] ================================================
[2026-06-13 04:52:19,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:52:19
[2026-06-13 04:52:19,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:52:19,812.812 INFO    ] Initializing speech engine...
[2026-06-13 04:52:19,815.815 INFO    ] 2026-06-13 04:52:19
[2026-06-13 04:52:20,033.033 INFO    ] 2026-06-13 04:52:20
[2026-06-13 04:52:20,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:52:20,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:52:20,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:52:20,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:52:20,441.441 INFO    ] time= 13/06/2026 04:52:20
[2026-06-13 04:52:20,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:52:20,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:52:20,553.553 INFO    ] No existing commands found in stream
[2026-06-13 04:52:25,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:25,566.566 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 04:52:26,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:52:26,063.063 INFO    ] Checking for system updates...
[2026-06-13 04:52:26,097.097 INFO    ] 200
[2026-06-13 04:52:26,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:26,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:26,131.131 INFO    ] No update needed
[2026-06-13 04:52:26,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:26,151.151 INFO    ] 200
[2026-06-13 04:52:26,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:26,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:26,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:26,226.226 INFO    ] No camera update needed
[2026-06-13 04:52:26,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:26,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:26,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:26,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:28,272.272 INFO    ] ================================================
[2026-06-13 04:52:28,287.287 INFO    ] Launching Daemon at Sat Jun 13 04:52:28 IST 2026
[2026-06-13 04:52:28,297.297 INFO    ] ================================================
[2026-06-13 04:52:28,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:52:28
[2026-06-13 04:52:28,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:52:29,103.103 INFO    ] Initializing speech engine...
[2026-06-13 04:52:29,107.107 INFO    ] 2026-06-13 04:52:29
[2026-06-13 04:52:29,324.324 INFO    ] 2026-06-13 04:52:29
[2026-06-13 04:52:29,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:52:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:52:29,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:52:29,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:52:29,733.733 INFO    ] time= 13/06/2026 04:52:29
[2026-06-13 04:52:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:52:29,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:52:29,849.849 INFO    ] No existing commands found in stream
[2026-06-13 04:52:34,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:34,863.863 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 04:52:35,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:52:35,790.790 INFO    ] Checking for system updates...
[2026-06-13 04:52:35,811.811 INFO    ] 200
[2026-06-13 04:52:35,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:35,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:35,848.848 INFO    ] No update needed
[2026-06-13 04:52:35,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:35,871.871 INFO    ] 200
[2026-06-13 04:52:35,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:35,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:35,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:35,952.952 INFO    ] No camera update needed
[2026-06-13 04:52:35,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:35,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:35,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:35,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:38,999.999 INFO    ] ================================================
[2026-06-13 04:52:38,015.015 INFO    ] Launching Daemon at Sat Jun 13 04:52:38 IST 2026
[2026-06-13 04:52:38,026.026 INFO    ] ================================================
[2026-06-13 04:52:38,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:52:38
[2026-06-13 04:52:38,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:52:38,826.826 INFO    ] Initializing speech engine...
[2026-06-13 04:52:38,837.837 INFO    ] 2026-06-13 04:52:38
[2026-06-13 04:52:39,043.043 INFO    ] 2026-06-13 04:52:39
[2026-06-13 04:52:39,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:52:39,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:52:39,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:52:39,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:52:39,453.453 INFO    ] time= 13/06/2026 04:52:39
[2026-06-13 04:52:39,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:52:39,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:52:39,566.566 INFO    ] No existing commands found in stream
[2026-06-13 04:52:44,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:44,579.579 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 04:52:45,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:52:45,939.939 INFO    ] Checking for system updates...
[2026-06-13 04:52:45,960.960 INFO    ] 200
[2026-06-13 04:52:45,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:45,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:45,996.996 INFO    ] No update needed
[2026-06-13 04:52:45,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:46,019.019 INFO    ] 200
[2026-06-13 04:52:46,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:46,043.043 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:46,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:52:46,080.080 INFO    ] No camera update needed
[2026-06-13 04:52:46,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:46,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:46,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:46,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:48,135.135 INFO    ] ================================================
[2026-06-13 04:52:48,151.151 INFO    ] Launching Daemon at Sat Jun 13 04:52:48 IST 2026
[2026-06-13 04:52:48,161.161 INFO    ] ================================================
[2026-06-13 04:52:48,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:52:48
[2026-06-13 04:52:48,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:52:48,977.977 INFO    ] Initializing speech engine...
[2026-06-13 04:52:48,982.982 INFO    ] 2026-06-13 04:52:48
[2026-06-13 04:52:49,188.188 INFO    ] 2026-06-13 04:52:49
[2026-06-13 04:52:49,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:52:49,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:52:49,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:52:49,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:52:49,588.588 INFO    ] time= 13/06/2026 04:52:49
[2026-06-13 04:52:49,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:52:49,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:52:49,702.702 INFO    ] No existing commands found in stream
[2026-06-13 04:52:54,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:52:54,714.714 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 04:52:57,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:52:57,549.549 INFO    ] Checking for system updates...
[2026-06-13 04:52:57,570.570 INFO    ] 200
[2026-06-13 04:52:57,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:57,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:57,606.606 INFO    ] No update needed
[2026-06-13 04:52:57,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 04:52:57,626.626 INFO    ] 200
[2026-06-13 04:52:57,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:52:57,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:52:57,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:52:57,699.699 INFO    ] No camera update needed
[2026-06-13 04:52:57,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:52:57,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:52:57,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:52:57,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:52:59,746.746 INFO    ] ================================================
[2026-06-13 04:52:59,762.762 INFO    ] Launching Daemon at Sat Jun 13 04:52:59 IST 2026
[2026-06-13 04:52:59,773.773 INFO    ] ================================================
[2026-06-13 04:53:00,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:00
[2026-06-13 04:53:00,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:00,672.672 INFO    ] Initializing speech engine...
[2026-06-13 04:53:00,677.677 INFO    ] 2026-06-13 04:53:00
[2026-06-13 04:53:00,887.887 INFO    ] 2026-06-13 04:53:00
[2026-06-13 04:53:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:01,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:01,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:01,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:01,310.310 INFO    ] time= 13/06/2026 04:53:01
[2026-06-13 04:53:01,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:01,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:01,412.412 INFO    ] No existing commands found in stream
[2026-06-13 04:53:06,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:06,425.425 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 04:53:06,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:53:06,759.759 INFO    ] Checking for system updates...
[2026-06-13 04:53:06,782.782 INFO    ] 200
[2026-06-13 04:53:06,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:06,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:06,815.815 INFO    ] No update needed
[2026-06-13 04:53:06,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:06,835.835 INFO    ] 200
[2026-06-13 04:53:06,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:06,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:06,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:06,903.903 INFO    ] No camera update needed
[2026-06-13 04:53:06,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:06,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:06,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:53:08,951.951 INFO    ] ================================================
[2026-06-13 04:53:08,966.966 INFO    ] Launching Daemon at Sat Jun 13 04:53:08 IST 2026
[2026-06-13 04:53:08,979.979 INFO    ] ================================================
[2026-06-13 04:53:09,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:09
[2026-06-13 04:53:09,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:09,802.802 INFO    ] Initializing speech engine...
[2026-06-13 04:53:09,806.806 INFO    ] 2026-06-13 04:53:09
[2026-06-13 04:53:09,998.998 INFO    ] 2026-06-13 04:53:09
[2026-06-13 04:53:10,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:10,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:10,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:10,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:10,421.421 INFO    ] time= 13/06/2026 04:53:10
[2026-06-13 04:53:10,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:10,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:10,605.605 INFO    ] No existing commands found in stream
[2026-06-13 04:53:15,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:15,619.619 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 04:53:18,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:53:18,603.603 INFO    ] Checking for system updates...
[2026-06-13 04:53:18,624.624 INFO    ] 200
[2026-06-13 04:53:18,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:18,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:18,657.657 INFO    ] No update needed
[2026-06-13 04:53:18,659.659 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:18,678.678 INFO    ] 200
[2026-06-13 04:53:18,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:18,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:18,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:18,752.752 INFO    ] No camera update needed
[2026-06-13 04:53:18,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:18,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:18,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:18,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:53:20,803.803 INFO    ] ================================================
[2026-06-13 04:53:20,818.818 INFO    ] Launching Daemon at Sat Jun 13 04:53:20 IST 2026
[2026-06-13 04:53:20,831.831 INFO    ] ================================================
[2026-06-13 04:53:21,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:21
[2026-06-13 04:53:21,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:21,665.665 INFO    ] Initializing speech engine...
[2026-06-13 04:53:21,670.670 INFO    ] 2026-06-13 04:53:21
[2026-06-13 04:53:21,876.876 INFO    ] 2026-06-13 04:53:21
[2026-06-13 04:53:21,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:22,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:22,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:22,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:22,272.272 INFO    ] time= 13/06/2026 04:53:22
[2026-06-13 04:53:22,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:22,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:22,396.396 INFO    ] No existing commands found in stream
[2026-06-13 04:53:27,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:27,402.402 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 04:53:27,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:53:27,740.740 INFO    ] Checking for system updates...
[2026-06-13 04:53:27,762.762 INFO    ] 200
[2026-06-13 04:53:27,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:27,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:27,798.798 INFO    ] No update needed
[2026-06-13 04:53:27,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:27,821.821 INFO    ] 200
[2026-06-13 04:53:27,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:27,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:27,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:27,887.887 INFO    ] No camera update needed
[2026-06-13 04:53:27,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:27,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:27,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:27,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:53:29,936.936 INFO    ] ================================================
[2026-06-13 04:53:29,952.952 INFO    ] Launching Daemon at Sat Jun 13 04:53:29 IST 2026
[2026-06-13 04:53:29,963.963 INFO    ] ================================================
[2026-06-13 04:53:30,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:30
[2026-06-13 04:53:30,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:30,855.855 INFO    ] Initializing speech engine...
[2026-06-13 04:53:30,860.860 INFO    ] 2026-06-13 04:53:30
[2026-06-13 04:53:31,072.072 INFO    ] 2026-06-13 04:53:31
[2026-06-13 04:53:31,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:31,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:31,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:31,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:31,500.500 INFO    ] time= 13/06/2026 04:53:31
[2026-06-13 04:53:31,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:31,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:31,594.594 INFO    ] No existing commands found in stream
[2026-06-13 04:53:36,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:36,607.607 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 04:53:37,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:53:37,075.075 INFO    ] Checking for system updates...
[2026-06-13 04:53:37,098.098 INFO    ] 200
[2026-06-13 04:53:37,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:37,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:37,132.132 INFO    ] No update needed
[2026-06-13 04:53:37,134.134 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:37,153.153 INFO    ] 200
[2026-06-13 04:53:37,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:37,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:37,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:53:37,219.219 INFO    ] No camera update needed
[2026-06-13 04:53:37,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:37,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:37,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:37,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:53:39,267.267 INFO    ] ================================================
[2026-06-13 04:53:39,282.282 INFO    ] Launching Daemon at Sat Jun 13 04:53:39 IST 2026
[2026-06-13 04:53:39,293.293 INFO    ] ================================================
[2026-06-13 04:53:39,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:39
[2026-06-13 04:53:39,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:40,137.137 INFO    ] Initializing speech engine...
[2026-06-13 04:53:40,142.142 INFO    ] 2026-06-13 04:53:40
[2026-06-13 04:53:40,352.352 INFO    ] 2026-06-13 04:53:40
[2026-06-13 04:53:40,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:40,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:40,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:40,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:40,773.773 INFO    ] time= 13/06/2026 04:53:40
[2026-06-13 04:53:40,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:40,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:40,871.871 INFO    ] No existing commands found in stream
[2026-06-13 04:53:45,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:45,884.884 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 04:53:48,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:53:48,115.115 INFO    ] Checking for system updates...
[2026-06-13 04:53:48,136.136 INFO    ] 200
[2026-06-13 04:53:48,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:48,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:48,171.171 INFO    ] No update needed
[2026-06-13 04:53:48,172.172 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:48,193.193 INFO    ] 200
[2026-06-13 04:53:48,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:48,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:48,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:48,257.257 INFO    ] No camera update needed
[2026-06-13 04:53:48,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:48,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:48,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:48,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:53:50,309.309 INFO    ] ================================================
[2026-06-13 04:53:50,325.325 INFO    ] Launching Daemon at Sat Jun 13 04:53:50 IST 2026
[2026-06-13 04:53:50,336.336 INFO    ] ================================================
[2026-06-13 04:53:50,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:53:50
[2026-06-13 04:53:51,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:53:51,167.167 INFO    ] Initializing speech engine...
[2026-06-13 04:53:51,175.175 INFO    ] 2026-06-13 04:53:51
[2026-06-13 04:53:51,398.398 INFO    ] 2026-06-13 04:53:51
[2026-06-13 04:53:51,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:53:51,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:53:51,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:53:51,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:53:51,828.828 INFO    ] time= 13/06/2026 04:53:51
[2026-06-13 04:53:51,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:53:51,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:53:51,962.962 INFO    ] No existing commands found in stream
[2026-06-13 04:53:56,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:53:56,975.975 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 04:53:59,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:53:59,511.511 INFO    ] Checking for system updates...
[2026-06-13 04:53:59,531.531 INFO    ] 200
[2026-06-13 04:53:59,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:59,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:59,565.565 INFO    ] No update needed
[2026-06-13 04:53:59,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 04:53:59,585.585 INFO    ] 200
[2026-06-13 04:53:59,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:53:59,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:53:59,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:53:59,753.753 INFO    ] No camera update needed
[2026-06-13 04:53:59,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:53:59,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:53:59,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:53:59,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:54:01,821.821 INFO    ] ================================================
[2026-06-13 04:54:01,861.861 INFO    ] Launching Daemon at Sat Jun 13 04:54:01 IST 2026
[2026-06-13 04:54:01,907.907 INFO    ] ================================================
[2026-06-13 04:54:02,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:54:02
[2026-06-13 04:54:03,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:54:03,191.191 INFO    ] Initializing speech engine...
[2026-06-13 04:54:03,196.196 INFO    ] 2026-06-13 04:54:03
[2026-06-13 04:54:03,402.402 INFO    ] 2026-06-13 04:54:03
[2026-06-13 04:54:03,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:54:03,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:54:03,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:54:03,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:54:03,672.672 INFO    ] time= 13/06/2026 04:54:03
[2026-06-13 04:54:03,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:54:03,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:54:03,776.776 INFO    ] No existing commands found in stream
[2026-06-13 04:54:08,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:54:08,811.811 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 04:54:11,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:54:11,700.700 INFO    ] Checking for system updates...
[2026-06-13 04:54:11,722.722 INFO    ] 200
[2026-06-13 04:54:11,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:11,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:11,759.759 INFO    ] No update needed
[2026-06-13 04:54:11,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 04:54:11,781.781 INFO    ] 200
[2026-06-13 04:54:11,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:11,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:54:11,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:11,844.844 INFO    ] No camera update needed
[2026-06-13 04:54:11,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:54:11,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:54:11,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:54:11,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:54:13,893.893 INFO    ] ================================================
[2026-06-13 04:54:13,907.907 INFO    ] Launching Daemon at Sat Jun 13 04:54:13 IST 2026
[2026-06-13 04:54:13,918.918 INFO    ] ================================================
[2026-06-13 04:54:14,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:54:14
[2026-06-13 04:54:14,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:54:14,693.693 INFO    ] Initializing speech engine...
[2026-06-13 04:54:14,702.702 INFO    ] 2026-06-13 04:54:14
[2026-06-13 04:54:14,906.906 INFO    ] 2026-06-13 04:54:14
[2026-06-13 04:54:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:54:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:54:15,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:54:15,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:54:15,310.310 INFO    ] time= 13/06/2026 04:54:15
[2026-06-13 04:54:15,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:54:15,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:54:15,421.421 INFO    ] No existing commands found in stream
[2026-06-13 04:54:20,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:54:20,432.432 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 04:54:24,259.259 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:54:24,260.260 INFO    ] Checking for system updates...
[2026-06-13 04:54:24,281.281 INFO    ] 200
[2026-06-13 04:54:24,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:24,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:54:24,317.317 INFO    ] No update needed
[2026-06-13 04:54:24,319.319 INFO    ] Checking for camera pi updates...
[2026-06-13 04:54:24,340.340 INFO    ] 200
[2026-06-13 04:54:24,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:24,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:54:24,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:54:24,416.416 INFO    ] No camera update needed
[2026-06-13 04:54:24,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:54:24,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:54:24,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:54:24,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:54:26,464.464 INFO    ] ================================================
[2026-06-13 04:54:26,479.479 INFO    ] Launching Daemon at Sat Jun 13 04:54:26 IST 2026
[2026-06-13 04:54:26,490.490 INFO    ] ================================================
[2026-06-13 04:54:26,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:54:26
[2026-06-13 04:54:27,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:54:27,345.345 INFO    ] Initializing speech engine...
[2026-06-13 04:54:27,354.354 INFO    ] 2026-06-13 04:54:27
[2026-06-13 04:54:27,562.562 INFO    ] 2026-06-13 04:54:27
[2026-06-13 04:54:27,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:54:27,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:54:27,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:54:27,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:54:27,988.988 INFO    ] time= 13/06/2026 04:54:27
[2026-06-13 04:54:28,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:54:28,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:54:28,134.134 INFO    ] No existing commands found in stream
[2026-06-13 04:54:33,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:54:33,151.151 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 04:54:36,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:54:36,177.177 INFO    ] Checking for system updates...
[2026-06-13 04:54:36,199.199 INFO    ] 200
[2026-06-13 04:54:36,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:36,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:36,232.232 INFO    ] No update needed
[2026-06-13 04:54:36,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 04:54:36,254.254 INFO    ] 200
[2026-06-13 04:54:36,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:36,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:54:36,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:36,316.316 INFO    ] No camera update needed
[2026-06-13 04:54:36,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:54:36,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:54:36,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:54:36,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:54:38,365.365 INFO    ] ================================================
[2026-06-13 04:54:38,381.381 INFO    ] Launching Daemon at Sat Jun 13 04:54:38 IST 2026
[2026-06-13 04:54:38,392.392 INFO    ] ================================================
[2026-06-13 04:54:38,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:54:38
[2026-06-13 04:54:39,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:54:39,280.280 INFO    ] Initializing speech engine...
[2026-06-13 04:54:39,284.284 INFO    ] 2026-06-13 04:54:39
[2026-06-13 04:54:39,605.605 INFO    ] 2026-06-13 04:54:39
[2026-06-13 04:54:39,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:54:39,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:54:39,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:54:40,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:54:40,116.116 INFO    ] time= 13/06/2026 04:54:40
[2026-06-13 04:54:40,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:54:40,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:54:40,269.269 INFO    ] No existing commands found in stream
[2026-06-13 04:54:45,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:54:45,295.295 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 04:54:46,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:54:46,091.091 INFO    ] Checking for system updates...
[2026-06-13 04:54:46,112.112 INFO    ] 200
[2026-06-13 04:54:46,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:46,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:46,146.146 INFO    ] No update needed
[2026-06-13 04:54:46,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 04:54:46,168.168 INFO    ] 200
[2026-06-13 04:54:46,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:46,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:54:46,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:54:46,233.233 INFO    ] No camera update needed
[2026-06-13 04:54:46,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:54:46,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:54:46,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:54:46,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:54:48,281.281 INFO    ] ================================================
[2026-06-13 04:54:48,297.297 INFO    ] Launching Daemon at Sat Jun 13 04:54:48 IST 2026
[2026-06-13 04:54:48,308.308 INFO    ] ================================================
[2026-06-13 04:54:48,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:54:48
[2026-06-13 04:54:49,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:54:49,163.163 INFO    ] Initializing speech engine...
[2026-06-13 04:54:49,169.169 INFO    ] 2026-06-13 04:54:49
[2026-06-13 04:54:49,380.380 INFO    ] 2026-06-13 04:54:49
[2026-06-13 04:54:49,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:54:49,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:54:49,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:54:49,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:54:49,800.800 INFO    ] time= 13/06/2026 04:54:49
[2026-06-13 04:54:49,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:54:49,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:54:49,904.904 INFO    ] No existing commands found in stream
[2026-06-13 04:54:54,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:54:54,918.918 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 04:54:57,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:54:57,857.857 INFO    ] Checking for system updates...
[2026-06-13 04:54:57,880.880 INFO    ] 200
[2026-06-13 04:54:57,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:57,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:54:57,917.917 INFO    ] No update needed
[2026-06-13 04:54:57,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 04:54:57,942.942 INFO    ] 200
[2026-06-13 04:54:57,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:54:57,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:54:58,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:54:58,008.008 INFO    ] No camera update needed
[2026-06-13 04:54:58,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:54:58,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:54:58,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:54:58,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:00,056.056 INFO    ] ================================================
[2026-06-13 04:55:00,071.071 INFO    ] Launching Daemon at Sat Jun 13 04:55:00 IST 2026
[2026-06-13 04:55:00,082.082 INFO    ] ================================================
[2026-06-13 04:55:00,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:00
[2026-06-13 04:55:00,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:00,901.901 INFO    ] Initializing speech engine...
[2026-06-13 04:55:00,905.905 INFO    ] 2026-06-13 04:55:00
[2026-06-13 04:55:01,112.112 INFO    ] 2026-06-13 04:55:01
[2026-06-13 04:55:01,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:01,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:01,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:01,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:01,480.480 INFO    ] time= 13/06/2026 04:55:01
[2026-06-13 04:55:01,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:01,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:01,610.610 INFO    ] No existing commands found in stream
[2026-06-13 04:55:06,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:06,624.624 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 04:55:07,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:55:07,775.775 INFO    ] Checking for system updates...
[2026-06-13 04:55:07,796.796 INFO    ] 200
[2026-06-13 04:55:07,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:07,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:07,830.830 INFO    ] No update needed
[2026-06-13 04:55:07,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 04:55:07,852.852 INFO    ] 200
[2026-06-13 04:55:07,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:07,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:55:07,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:07,914.914 INFO    ] No camera update needed
[2026-06-13 04:55:07,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:55:07,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:55:07,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:55:07,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:09,961.961 INFO    ] ================================================
[2026-06-13 04:55:09,976.976 INFO    ] Launching Daemon at Sat Jun 13 04:55:09 IST 2026
[2026-06-13 04:55:09,987.987 INFO    ] ================================================
[2026-06-13 04:55:10,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:10
[2026-06-13 04:55:10,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:10,885.885 INFO    ] Initializing speech engine...
[2026-06-13 04:55:10,891.891 INFO    ] 2026-06-13 04:55:10
[2026-06-13 04:55:11,096.096 INFO    ] 2026-06-13 04:55:11
[2026-06-13 04:55:11,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:11,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:11,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:11,507.507 INFO    ] time= 13/06/2026 04:55:11
[2026-06-13 04:55:11,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:11,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:11,610.610 INFO    ] No existing commands found in stream
[2026-06-13 04:55:16,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:16,625.625 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 04:55:19,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:55:19,496.496 INFO    ] Checking for system updates...
[2026-06-13 04:55:19,517.517 INFO    ] 200
[2026-06-13 04:55:19,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:19,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:19,554.554 INFO    ] No update needed
[2026-06-13 04:55:19,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 04:55:19,577.577 INFO    ] 200
[2026-06-13 04:55:19,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:19,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:55:19,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:19,642.642 INFO    ] No camera update needed
[2026-06-13 04:55:19,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:55:19,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:55:19,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:55:19,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:21,691.691 INFO    ] ================================================
[2026-06-13 04:55:21,706.706 INFO    ] Launching Daemon at Sat Jun 13 04:55:21 IST 2026
[2026-06-13 04:55:21,716.716 INFO    ] ================================================
[2026-06-13 04:55:22,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:22
[2026-06-13 04:55:22,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:22,571.571 INFO    ] Initializing speech engine...
[2026-06-13 04:55:22,575.575 INFO    ] 2026-06-13 04:55:22
[2026-06-13 04:55:22,787.787 INFO    ] 2026-06-13 04:55:22
[2026-06-13 04:55:22,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:23,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:23,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:23,210.210 INFO    ] time= 13/06/2026 04:55:23
[2026-06-13 04:55:23,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:23,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:23,312.312 INFO    ] No existing commands found in stream
[2026-06-13 04:55:28,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:28,326.326 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 04:55:29,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:55:29,532.532 INFO    ] Checking for system updates...
[2026-06-13 04:55:29,555.555 INFO    ] 200
[2026-06-13 04:55:29,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:29,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:55:29,591.591 INFO    ] No update needed
[2026-06-13 04:55:29,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 04:55:29,613.613 INFO    ] 200
[2026-06-13 04:55:29,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:29,638.638 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:55:29,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:29,676.676 INFO    ] No camera update needed
[2026-06-13 04:55:29,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:55:29,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:55:29,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:55:29,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:31,727.727 INFO    ] ================================================
[2026-06-13 04:55:31,745.745 INFO    ] Launching Daemon at Sat Jun 13 04:55:31 IST 2026
[2026-06-13 04:55:31,756.756 INFO    ] ================================================
[2026-06-13 04:55:32,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:32
[2026-06-13 04:55:32,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:32,639.639 INFO    ] Initializing speech engine...
[2026-06-13 04:55:32,644.644 INFO    ] 2026-06-13 04:55:32
[2026-06-13 04:55:32,847.847 INFO    ] 2026-06-13 04:55:32
[2026-06-13 04:55:32,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:33,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:33,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:33,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:33,267.267 INFO    ] time= 13/06/2026 04:55:33
[2026-06-13 04:55:33,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:33,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:33,364.364 INFO    ] No existing commands found in stream
[2026-06-13 04:55:38,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:38,375.375 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 04:55:40,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:55:40,005.005 INFO    ] Checking for system updates...
[2026-06-13 04:55:40,028.028 INFO    ] 200
[2026-06-13 04:55:40,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:40,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:55:40,062.062 INFO    ] No update needed
[2026-06-13 04:55:40,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 04:55:40,083.083 INFO    ] 200
[2026-06-13 04:55:40,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:40,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:55:40,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:55:40,163.163 INFO    ] No camera update needed
[2026-06-13 04:55:40,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:55:40,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:55:40,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:55:40,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:42,213.213 INFO    ] ================================================
[2026-06-13 04:55:42,229.229 INFO    ] Launching Daemon at Sat Jun 13 04:55:42 IST 2026
[2026-06-13 04:55:42,240.240 INFO    ] ================================================
[2026-06-13 04:55:42,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:42
[2026-06-13 04:55:42,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:43,012.012 INFO    ] Initializing speech engine...
[2026-06-13 04:55:43,017.017 INFO    ] 2026-06-13 04:55:43
[2026-06-13 04:55:43,212.212 INFO    ] 2026-06-13 04:55:43
[2026-06-13 04:55:43,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:43,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:43,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:43,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:43,669.669 INFO    ] time= 13/06/2026 04:55:43
[2026-06-13 04:55:43,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:43,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:43,821.821 INFO    ] No existing commands found in stream
[2026-06-13 04:55:48,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:48,834.834 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 04:55:50,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:55:50,866.866 INFO    ] Checking for system updates...
[2026-06-13 04:55:50,887.887 INFO    ] 200
[2026-06-13 04:55:50,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:50,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:50,922.922 INFO    ] No update needed
[2026-06-13 04:55:50,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 04:55:50,943.943 INFO    ] 200
[2026-06-13 04:55:50,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:55:50,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:55:51,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:55:51,010.010 INFO    ] No camera update needed
[2026-06-13 04:55:51,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:55:51,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:55:51,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:55:51,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:55:53,061.061 INFO    ] ================================================
[2026-06-13 04:55:53,077.077 INFO    ] Launching Daemon at Sat Jun 13 04:55:53 IST 2026
[2026-06-13 04:55:53,087.087 INFO    ] ================================================
[2026-06-13 04:55:53,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:55:53
[2026-06-13 04:55:53,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:55:53,880.880 INFO    ] Initializing speech engine...
[2026-06-13 04:55:53,885.885 INFO    ] 2026-06-13 04:55:53
[2026-06-13 04:55:54,091.091 INFO    ] 2026-06-13 04:55:54
[2026-06-13 04:55:54,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:55:54,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:55:54,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:55:54,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:55:54,495.495 INFO    ] time= 13/06/2026 04:55:54
[2026-06-13 04:55:54,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:55:54,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:55:54,605.605 INFO    ] No existing commands found in stream
[2026-06-13 04:55:59,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:55:59,617.617 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 04:56:03,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:56:03,735.735 INFO    ] Checking for system updates...
[2026-06-13 04:56:03,756.756 INFO    ] 200
[2026-06-13 04:56:03,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:03,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:03,789.789 INFO    ] No update needed
[2026-06-13 04:56:03,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:03,810.810 INFO    ] 200
[2026-06-13 04:56:03,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:03,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:03,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:03,876.876 INFO    ] No camera update needed
[2026-06-13 04:56:03,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:03,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:03,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:03,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:05,925.925 INFO    ] ================================================
[2026-06-13 04:56:05,940.940 INFO    ] Launching Daemon at Sat Jun 13 04:56:05 IST 2026
[2026-06-13 04:56:05,952.952 INFO    ] ================================================
[2026-06-13 04:56:06,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:06
[2026-06-13 04:56:06,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:56:06,726.726 INFO    ] Initializing speech engine...
[2026-06-13 04:56:06,736.736 INFO    ] 2026-06-13 04:56:06
[2026-06-13 04:56:06,941.941 INFO    ] 2026-06-13 04:56:06
[2026-06-13 04:56:06,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:56:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:56:07,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:56:07,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:56:07,343.343 INFO    ] time= 13/06/2026 04:56:07
[2026-06-13 04:56:07,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:56:07,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:56:07,452.452 INFO    ] No existing commands found in stream
[2026-06-13 04:56:12,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:56:12,465.465 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 04:56:13,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:56:13,930.930 INFO    ] Checking for system updates...
[2026-06-13 04:56:13,951.951 INFO    ] 200
[2026-06-13 04:56:13,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:13,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:13,984.984 INFO    ] No update needed
[2026-06-13 04:56:13,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:14,005.005 INFO    ] 200
[2026-06-13 04:56:14,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:14,029.029 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:14,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:14,070.070 INFO    ] No camera update needed
[2026-06-13 04:56:14,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:14,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:14,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:14,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:16,118.118 INFO    ] ================================================
[2026-06-13 04:56:16,134.134 INFO    ] Launching Daemon at Sat Jun 13 04:56:16 IST 2026
[2026-06-13 04:56:16,145.145 INFO    ] ================================================
[2026-06-13 04:56:16,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:16
[2026-06-13 04:56:16,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:56:17,014.014 INFO    ] Initializing speech engine...
[2026-06-13 04:56:17,018.018 INFO    ] 2026-06-13 04:56:17
[2026-06-13 04:56:17,227.227 INFO    ] 2026-06-13 04:56:17
[2026-06-13 04:56:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:56:17,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:56:17,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:56:17,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:56:17,653.653 INFO    ] time= 13/06/2026 04:56:17
[2026-06-13 04:56:17,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:56:17,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:56:17,751.751 INFO    ] No existing commands found in stream
[2026-06-13 04:56:22,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:56:22,764.764 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 04:56:23,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:56:23,575.575 INFO    ] Checking for system updates...
[2026-06-13 04:56:23,596.596 INFO    ] 200
[2026-06-13 04:56:23,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:23,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:56:23,635.635 INFO    ] No update needed
[2026-06-13 04:56:23,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:23,659.659 INFO    ] 200
[2026-06-13 04:56:23,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:23,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:23,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:23,725.725 INFO    ] No camera update needed
[2026-06-13 04:56:23,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:23,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:23,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:23,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:25,775.775 INFO    ] ================================================
[2026-06-13 04:56:25,791.791 INFO    ] Launching Daemon at Sat Jun 13 04:56:25 IST 2026
[2026-06-13 04:56:25,804.804 INFO    ] ================================================
[2026-06-13 04:56:26,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:26
[2026-06-13 04:56:26,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:56:26,582.582 INFO    ] Initializing speech engine...
[2026-06-13 04:56:26,586.586 INFO    ] 2026-06-13 04:56:26
[2026-06-13 04:56:26,805.805 INFO    ] 2026-06-13 04:56:26
[2026-06-13 04:56:26,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:56:26,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:56:27,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:56:27,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:56:27,205.205 INFO    ] time= 13/06/2026 04:56:27
[2026-06-13 04:56:27,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:56:27,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:56:27,336.336 INFO    ] No existing commands found in stream
[2026-06-13 04:56:32,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:56:32,351.351 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 04:56:33,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:56:33,162.162 INFO    ] Checking for system updates...
[2026-06-13 04:56:33,184.184 INFO    ] 200
[2026-06-13 04:56:33,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:33,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:56:33,221.221 INFO    ] No update needed
[2026-06-13 04:56:33,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:33,243.243 INFO    ] 200
[2026-06-13 04:56:33,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:33,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:33,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:33,296.296 INFO    ] No camera update needed
[2026-06-13 04:56:33,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:33,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:33,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:33,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:35,343.343 INFO    ] ================================================
[2026-06-13 04:56:35,359.359 INFO    ] Launching Daemon at Sat Jun 13 04:56:35 IST 2026
[2026-06-13 04:56:35,370.370 INFO    ] ================================================
[2026-06-13 04:56:35,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:35
[2026-06-13 04:56:36,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:56:36,253.253 INFO    ] Initializing speech engine...
[2026-06-13 04:56:36,258.258 INFO    ] 2026-06-13 04:56:36
[2026-06-13 04:56:36,471.471 INFO    ] 2026-06-13 04:56:36
[2026-06-13 04:56:36,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:56:36,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:56:36,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:56:36,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:56:36,950.950 INFO    ] time= 13/06/2026 04:56:36
[2026-06-13 04:56:37,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:56:37,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:56:37,178.178 INFO    ] No existing commands found in stream
[2026-06-13 04:56:42,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:56:42,196.196 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 04:56:46,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:56:46,496.496 INFO    ] Checking for system updates...
[2026-06-13 04:56:46,517.517 INFO    ] 200
[2026-06-13 04:56:46,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:46,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:46,552.552 INFO    ] No update needed
[2026-06-13 04:56:46,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:46,573.573 INFO    ] 200
[2026-06-13 04:56:46,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:46,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:46,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:46,650.650 INFO    ] No camera update needed
[2026-06-13 04:56:46,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:46,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:46,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:46,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:48,698.698 INFO    ] ================================================
[2026-06-13 04:56:48,714.714 INFO    ] Launching Daemon at Sat Jun 13 04:56:48 IST 2026
[2026-06-13 04:56:48,726.726 INFO    ] ================================================
[2026-06-13 04:56:49,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:49
[2026-06-13 04:56:49,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:56:49,566.566 INFO    ] Initializing speech engine...
[2026-06-13 04:56:49,572.572 INFO    ] 2026-06-13 04:56:49
[2026-06-13 04:56:49,781.781 INFO    ] 2026-06-13 04:56:49
[2026-06-13 04:56:49,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:56:49,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:56:49,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:56:50,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:56:50,201.201 INFO    ] time= 13/06/2026 04:56:50
[2026-06-13 04:56:50,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:56:50,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:56:50,297.297 INFO    ] No existing commands found in stream
[2026-06-13 04:56:55,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:56:55,312.312 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 04:56:57,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:56:57,376.376 INFO    ] Checking for system updates...
[2026-06-13 04:56:57,398.398 INFO    ] 200
[2026-06-13 04:56:57,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:57,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:57,432.432 INFO    ] No update needed
[2026-06-13 04:56:57,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 04:56:57,454.454 INFO    ] 200
[2026-06-13 04:56:57,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:56:57,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:56:57,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:56:57,525.525 INFO    ] No camera update needed
[2026-06-13 04:56:57,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:56:57,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:56:57,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:56:57,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:56:59,573.573 INFO    ] ================================================
[2026-06-13 04:56:59,591.591 INFO    ] Launching Daemon at Sat Jun 13 04:56:59 IST 2026
[2026-06-13 04:56:59,603.603 INFO    ] ================================================
[2026-06-13 04:56:59,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:56:59
[2026-06-13 04:57:00,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:00,419.419 INFO    ] Initializing speech engine...
[2026-06-13 04:57:00,429.429 INFO    ] 2026-06-13 04:57:00
[2026-06-13 04:57:00,633.633 INFO    ] 2026-06-13 04:57:00
[2026-06-13 04:57:00,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:00,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:00,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:01,032.032 INFO    ] time= 13/06/2026 04:57:00
[2026-06-13 04:57:01,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:01,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:01,145.145 INFO    ] No existing commands found in stream
[2026-06-13 04:57:06,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:57:06,159.159 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 04:57:09,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:57:09,777.777 INFO    ] Checking for system updates...
[2026-06-13 04:57:09,798.798 INFO    ] 200
[2026-06-13 04:57:09,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:09,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:57:09,832.832 INFO    ] No update needed
[2026-06-13 04:57:09,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 04:57:09,853.853 INFO    ] 200
[2026-06-13 04:57:09,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:09,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:57:09,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:57:09,917.917 INFO    ] No camera update needed
[2026-06-13 04:57:09,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:57:09,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:57:09,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:57:09,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:57:11,970.970 INFO    ] ================================================
[2026-06-13 04:57:11,986.986 INFO    ] Launching Daemon at Sat Jun 13 04:57:11 IST 2026
[2026-06-13 04:57:12,997.997 INFO    ] ================================================
[2026-06-13 04:57:12,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:57:12
[2026-06-13 04:57:12,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:12,798.798 INFO    ] Initializing speech engine...
[2026-06-13 04:57:12,803.803 INFO    ] 2026-06-13 04:57:12
[2026-06-13 04:57:13,008.008 INFO    ] 2026-06-13 04:57:12
[2026-06-13 04:57:13,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:13,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:13,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:13,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:13,392.392 INFO    ] time= 13/06/2026 04:57:13
[2026-06-13 04:57:13,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:13,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:13,511.511 INFO    ] No existing commands found in stream
[2026-06-13 04:57:18,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:57:18,522.522 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 04:57:20,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:57:20,851.851 INFO    ] Checking for system updates...
[2026-06-13 04:57:20,872.872 INFO    ] 200
[2026-06-13 04:57:20,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:20,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:57:20,905.905 INFO    ] No update needed
[2026-06-13 04:57:20,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 04:57:20,926.926 INFO    ] 200
[2026-06-13 04:57:20,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:20,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:57:20,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:57:20,987.987 INFO    ] No camera update needed
[2026-06-13 04:57:20,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:57:20,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:57:20,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:57:20,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:57:23,036.036 INFO    ] ================================================
[2026-06-13 04:57:23,052.052 INFO    ] Launching Daemon at Sat Jun 13 04:57:23 IST 2026
[2026-06-13 04:57:23,063.063 INFO    ] ================================================
[2026-06-13 04:57:23,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:57:23
[2026-06-13 04:57:23,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:23,878.878 INFO    ] Initializing speech engine...
[2026-06-13 04:57:23,882.882 INFO    ] 2026-06-13 04:57:23
[2026-06-13 04:57:24,074.074 INFO    ] 2026-06-13 04:57:24
[2026-06-13 04:57:24,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:24,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:24,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:24,370.370 INFO    ] time= 13/06/2026 04:57:24
[2026-06-13 04:57:24,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:24,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:24,459.459 INFO    ] No existing commands found in stream
[2026-06-13 04:57:29,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:57:29,479.479 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 04:57:31,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:57:31,932.932 INFO    ] Checking for system updates...
[2026-06-13 04:57:31,952.952 INFO    ] 200
[2026-06-13 04:57:31,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:31,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:57:31,994.994 INFO    ] No update needed
[2026-06-13 04:57:31,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 04:57:32,023.023 INFO    ] 200
[2026-06-13 04:57:32,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:32,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:57:32,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:57:32,093.093 INFO    ] No camera update needed
[2026-06-13 04:57:32,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:57:32,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:57:32,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:57:32,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:57:34,135.135 INFO    ] ================================================
[2026-06-13 04:57:34,150.150 INFO    ] Launching Daemon at Sat Jun 13 04:57:34 IST 2026
[2026-06-13 04:57:34,161.161 INFO    ] ================================================
[2026-06-13 04:57:34,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:57:34
[2026-06-13 04:57:34,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:35,052.052 INFO    ] Initializing speech engine...
[2026-06-13 04:57:35,059.059 INFO    ] 2026-06-13 04:57:35
[2026-06-13 04:57:35,269.269 INFO    ] 2026-06-13 04:57:35
[2026-06-13 04:57:35,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:35,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:35,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:35,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:35,667.667 INFO    ] time= 13/06/2026 04:57:35
[2026-06-13 04:57:35,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:35,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:35,787.787 INFO    ] No existing commands found in stream
[2026-06-13 04:57:40,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:57:40,802.802 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 04:57:41,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:57:41,391.391 INFO    ] Checking for system updates...
[2026-06-13 04:57:41,411.411 INFO    ] 200
[2026-06-13 04:57:41,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:41,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:57:41,446.446 INFO    ] No update needed
[2026-06-13 04:57:41,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 04:57:41,468.468 INFO    ] 200
[2026-06-13 04:57:41,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:41,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:57:41,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:57:41,532.532 INFO    ] No camera update needed
[2026-06-13 04:57:41,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:57:41,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:57:41,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:57:41,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:57:43,579.579 INFO    ] ================================================
[2026-06-13 04:57:43,594.594 INFO    ] Launching Daemon at Sat Jun 13 04:57:43 IST 2026
[2026-06-13 04:57:43,604.604 INFO    ] ================================================
[2026-06-13 04:57:43,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:57:43
[2026-06-13 04:57:44,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:44,781.781 INFO    ] Initializing speech engine...
[2026-06-13 04:57:44,789.789 INFO    ] 2026-06-13 04:57:44
[2026-06-13 04:57:45,089.089 INFO    ] 2026-06-13 04:57:45
[2026-06-13 04:57:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:45,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:45,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:45,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:45,450.450 INFO    ] time= 13/06/2026 04:57:45
[2026-06-13 04:57:45,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:45,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:45,536.536 INFO    ] No existing commands found in stream
[2026-06-13 04:57:50,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:57:50,551.551 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 04:57:54,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:57:54,813.813 INFO    ] Checking for system updates...
[2026-06-13 04:57:54,833.833 INFO    ] 200
[2026-06-13 04:57:54,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:54,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:57:54,866.866 INFO    ] No update needed
[2026-06-13 04:57:54,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 04:57:54,887.887 INFO    ] 200
[2026-06-13 04:57:54,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:57:54,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:57:54,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:57:54,955.955 INFO    ] No camera update needed
[2026-06-13 04:57:54,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:57:54,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:57:54,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:57:54,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:57:57,003.003 INFO    ] ================================================
[2026-06-13 04:57:57,018.018 INFO    ] Launching Daemon at Sat Jun 13 04:57:57 IST 2026
[2026-06-13 04:57:57,029.029 INFO    ] ================================================
[2026-06-13 04:57:57,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:57:57
[2026-06-13 04:57:57,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:57:57,854.854 INFO    ] Initializing speech engine...
[2026-06-13 04:57:57,859.859 INFO    ] 2026-06-13 04:57:57
[2026-06-13 04:57:58,066.066 INFO    ] 2026-06-13 04:57:58
[2026-06-13 04:57:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:57:58,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:57:58,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:57:58,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:57:58,417.417 INFO    ] time= 13/06/2026 04:57:58
[2026-06-13 04:57:58,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:57:58,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:57:58,588.588 INFO    ] No existing commands found in stream
[2026-06-13 04:58:03,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:03,601.601 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 04:58:04,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:58:04,370.370 INFO    ] Checking for system updates...
[2026-06-13 04:58:04,391.391 INFO    ] 200
[2026-06-13 04:58:04,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:04,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:04,424.424 INFO    ] No update needed
[2026-06-13 04:58:04,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:04,446.446 INFO    ] 200
[2026-06-13 04:58:04,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:04,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:04,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:04,621.621 INFO    ] No camera update needed
[2026-06-13 04:58:04,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:04,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:04,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:04,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:58:06,669.669 INFO    ] ================================================
[2026-06-13 04:58:06,684.684 INFO    ] Launching Daemon at Sat Jun 13 04:58:06 IST 2026
[2026-06-13 04:58:06,695.695 INFO    ] ================================================
[2026-06-13 04:58:07,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:58:07
[2026-06-13 04:58:07,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:58:07,480.480 INFO    ] Initializing speech engine...
[2026-06-13 04:58:07,491.491 INFO    ] 2026-06-13 04:58:07
[2026-06-13 04:58:07,708.708 INFO    ] 2026-06-13 04:58:07
[2026-06-13 04:58:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:58:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:58:07,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:58:08,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:58:08,125.125 INFO    ] time= 13/06/2026 04:58:08
[2026-06-13 04:58:08,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:58:08,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:58:08,270.270 INFO    ] No existing commands found in stream
[2026-06-13 04:58:13,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:13,283.283 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 04:58:16,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:58:16,088.088 INFO    ] Checking for system updates...
[2026-06-13 04:58:16,110.110 INFO    ] 200
[2026-06-13 04:58:16,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:16,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:16,145.145 INFO    ] No update needed
[2026-06-13 04:58:16,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:16,166.166 INFO    ] 200
[2026-06-13 04:58:16,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:16,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:16,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:16,232.232 INFO    ] No camera update needed
[2026-06-13 04:58:16,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:16,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:16,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:16,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:58:18,279.279 INFO    ] ================================================
[2026-06-13 04:58:18,295.295 INFO    ] Launching Daemon at Sat Jun 13 04:58:18 IST 2026
[2026-06-13 04:58:18,309.309 INFO    ] ================================================
[2026-06-13 04:58:18,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:58:18
[2026-06-13 04:58:18,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:58:19,102.102 INFO    ] Initializing speech engine...
[2026-06-13 04:58:19,116.116 INFO    ] 2026-06-13 04:58:19
[2026-06-13 04:58:19,323.323 INFO    ] 2026-06-13 04:58:19
[2026-06-13 04:58:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:58:19,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:58:19,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:58:19,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:58:19,676.676 INFO    ] time= 13/06/2026 04:58:19
[2026-06-13 04:58:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:58:19,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:58:19,848.848 INFO    ] No existing commands found in stream
[2026-06-13 04:58:24,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:24,860.860 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 04:58:25,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:58:25,886.886 INFO    ] Checking for system updates...
[2026-06-13 04:58:25,907.907 INFO    ] 200
[2026-06-13 04:58:25,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:25,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:25,940.940 INFO    ] No update needed
[2026-06-13 04:58:25,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:25,962.962 INFO    ] 200
[2026-06-13 04:58:25,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:25,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:26,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:26,028.028 INFO    ] No camera update needed
[2026-06-13 04:58:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:26,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:26,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:26,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:58:28,076.076 INFO    ] ================================================
[2026-06-13 04:58:28,091.091 INFO    ] Launching Daemon at Sat Jun 13 04:58:28 IST 2026
[2026-06-13 04:58:28,101.101 INFO    ] ================================================
[2026-06-13 04:58:28,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:58:28
[2026-06-13 04:58:28,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:58:28,898.898 INFO    ] Initializing speech engine...
[2026-06-13 04:58:28,904.904 INFO    ] 2026-06-13 04:58:28
[2026-06-13 04:58:29,111.111 INFO    ] 2026-06-13 04:58:29
[2026-06-13 04:58:29,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:58:29,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:58:29,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:58:29,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:58:29,522.522 INFO    ] time= 13/06/2026 04:58:29
[2026-06-13 04:58:29,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:58:29,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:58:29,634.634 INFO    ] No existing commands found in stream
[2026-06-13 04:58:34,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:34,651.651 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 04:58:36,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 04:58:36,241.241 INFO    ] Checking for system updates...
[2026-06-13 04:58:36,262.262 INFO    ] 200
[2026-06-13 04:58:36,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:36,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:36,297.297 INFO    ] No update needed
[2026-06-13 04:58:36,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:36,319.319 INFO    ] 200
[2026-06-13 04:58:36,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:36,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:36,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:58:36,384.384 INFO    ] No camera update needed
[2026-06-13 04:58:36,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:36,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:36,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:36,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:58:38,435.435 INFO    ] ================================================
[2026-06-13 04:58:38,450.450 INFO    ] Launching Daemon at Sat Jun 13 04:58:38 IST 2026
[2026-06-13 04:58:38,460.460 INFO    ] ================================================
[2026-06-13 04:58:38,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:58:38
[2026-06-13 04:58:39,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:58:39,260.260 INFO    ] Initializing speech engine...
[2026-06-13 04:58:39,264.264 INFO    ] 2026-06-13 04:58:39
[2026-06-13 04:58:39,468.468 INFO    ] 2026-06-13 04:58:39
[2026-06-13 04:58:39,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:58:39,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:58:39,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:58:39,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:58:39,872.872 INFO    ] time= 13/06/2026 04:58:39
[2026-06-13 04:58:39,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:58:39,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:58:39,982.982 INFO    ] No existing commands found in stream
[2026-06-13 04:58:44,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:44,994.994 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 04:58:48,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:58:48,056.056 INFO    ] Checking for system updates...
[2026-06-13 04:58:48,078.078 INFO    ] 200
[2026-06-13 04:58:48,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:48,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:58:48,113.113 INFO    ] No update needed
[2026-06-13 04:58:48,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:48,135.135 INFO    ] 200
[2026-06-13 04:58:48,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:48,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:48,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:58:48,185.185 INFO    ] No camera update needed
[2026-06-13 04:58:48,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:48,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:48,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:48,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:58:50,233.233 INFO    ] ================================================
[2026-06-13 04:58:50,248.248 INFO    ] Launching Daemon at Sat Jun 13 04:58:50 IST 2026
[2026-06-13 04:58:50,258.258 INFO    ] ================================================
[2026-06-13 04:58:50,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:58:50
[2026-06-13 04:58:50,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:58:51,036.036 INFO    ] Initializing speech engine...
[2026-06-13 04:58:51,044.044 INFO    ] 2026-06-13 04:58:51
[2026-06-13 04:58:51,259.259 INFO    ] 2026-06-13 04:58:51
[2026-06-13 04:58:51,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:58:51,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:58:51,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:58:51,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:58:51,641.641 INFO    ] time= 13/06/2026 04:58:51
[2026-06-13 04:58:51,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:58:51,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:58:51,769.769 INFO    ] No existing commands found in stream
[2026-06-13 04:58:56,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:58:56,802.802 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 04:58:58,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:58:58,573.573 INFO    ] Checking for system updates...
[2026-06-13 04:58:58,593.593 INFO    ] 200
[2026-06-13 04:58:58,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:58,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:58:58,629.629 INFO    ] No update needed
[2026-06-13 04:58:58,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 04:58:58,650.650 INFO    ] 200
[2026-06-13 04:58:58,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:58:58,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:58:58,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:58:58,702.702 INFO    ] No camera update needed
[2026-06-13 04:58:58,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:58:58,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:58:58,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:58:58,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:00,749.749 INFO    ] ================================================
[2026-06-13 04:59:00,764.764 INFO    ] Launching Daemon at Sat Jun 13 04:59:00 IST 2026
[2026-06-13 04:59:00,775.775 INFO    ] ================================================
[2026-06-13 04:59:01,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:01
[2026-06-13 04:59:01,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:01,568.568 INFO    ] Initializing speech engine...
[2026-06-13 04:59:01,573.573 INFO    ] 2026-06-13 04:59:01
[2026-06-13 04:59:01,778.778 INFO    ] 2026-06-13 04:59:01
[2026-06-13 04:59:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:59:01,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:59:02,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:59:02,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:59:02,137.137 INFO    ] time= 13/06/2026 04:59:02
[2026-06-13 04:59:02,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:59:02,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:59:02,381.381 INFO    ] No existing commands found in stream
[2026-06-13 04:59:07,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:59:07,421.421 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 04:59:08,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 04:59:08,197.197 INFO    ] Checking for system updates...
[2026-06-13 04:59:08,218.218 INFO    ] 200
[2026-06-13 04:59:08,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:08,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:08,253.253 INFO    ] No update needed
[2026-06-13 04:59:08,254.254 INFO    ] Checking for camera pi updates...
[2026-06-13 04:59:08,274.274 INFO    ] 200
[2026-06-13 04:59:08,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:08,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:59:08,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:08,340.340 INFO    ] No camera update needed
[2026-06-13 04:59:08,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:59:08,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:59:08,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:59:08,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:10,390.390 INFO    ] ================================================
[2026-06-13 04:59:10,405.405 INFO    ] Launching Daemon at Sat Jun 13 04:59:10 IST 2026
[2026-06-13 04:59:10,416.416 INFO    ] ================================================
[2026-06-13 04:59:10,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:10
[2026-06-13 04:59:11,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:11,304.304 INFO    ] Initializing speech engine...
[2026-06-13 04:59:11,310.310 INFO    ] 2026-06-13 04:59:11
[2026-06-13 04:59:11,519.519 INFO    ] 2026-06-13 04:59:11
[2026-06-13 04:59:11,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:59:11,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:59:11,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:59:11,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:59:11,921.921 INFO    ] time= 13/06/2026 04:59:11
[2026-06-13 04:59:11,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:59:11,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:59:12,038.038 INFO    ] No existing commands found in stream
[2026-06-13 04:59:17,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:59:17,052.052 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 04:59:20,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 04:59:20,466.466 INFO    ] Checking for system updates...
[2026-06-13 04:59:20,488.488 INFO    ] 200
[2026-06-13 04:59:20,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:20,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:20,524.524 INFO    ] No update needed
[2026-06-13 04:59:20,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 04:59:20,545.545 INFO    ] 200
[2026-06-13 04:59:20,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:20,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:59:20,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:20,617.617 INFO    ] No camera update needed
[2026-06-13 04:59:20,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:59:20,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:59:20,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:59:20,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:22,665.665 INFO    ] ================================================
[2026-06-13 04:59:22,680.680 INFO    ] Launching Daemon at Sat Jun 13 04:59:22 IST 2026
[2026-06-13 04:59:22,690.690 INFO    ] ================================================
[2026-06-13 04:59:23,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:23
[2026-06-13 04:59:23,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:23,550.550 INFO    ] Initializing speech engine...
[2026-06-13 04:59:23,555.555 INFO    ] 2026-06-13 04:59:23
[2026-06-13 04:59:23,765.765 INFO    ] 2026-06-13 04:59:23
[2026-06-13 04:59:23,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:59:23,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:59:23,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:59:24,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:59:24,185.185 INFO    ] time= 13/06/2026 04:59:24
[2026-06-13 04:59:24,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:59:24,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:59:24,292.292 INFO    ] No existing commands found in stream
[2026-06-13 04:59:29,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:59:29,304.304 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 04:59:31,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 04:59:31,737.737 INFO    ] Checking for system updates...
[2026-06-13 04:59:31,759.759 INFO    ] 200
[2026-06-13 04:59:31,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:31,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:31,793.793 INFO    ] No update needed
[2026-06-13 04:59:31,794.794 INFO    ] Checking for camera pi updates...
[2026-06-13 04:59:31,815.815 INFO    ] 200
[2026-06-13 04:59:31,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:31,841.841 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:59:31,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:31,870.870 INFO    ] No camera update needed
[2026-06-13 04:59:31,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:59:31,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:59:31,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:59:31,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:33,912.912 INFO    ] ================================================
[2026-06-13 04:59:33,932.932 INFO    ] Launching Daemon at Sat Jun 13 04:59:33 IST 2026
[2026-06-13 04:59:33,943.943 INFO    ] ================================================
[2026-06-13 04:59:34,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:34
[2026-06-13 04:59:34,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:34,764.764 INFO    ] Initializing speech engine...
[2026-06-13 04:59:34,769.769 INFO    ] 2026-06-13 04:59:34
[2026-06-13 04:59:34,995.995 INFO    ] 2026-06-13 04:59:34
[2026-06-13 04:59:35,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:59:35,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:59:35,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:59:35,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:59:35,398.398 INFO    ] time= 13/06/2026 04:59:35
[2026-06-13 04:59:35,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:59:35,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:59:35,512.512 INFO    ] No existing commands found in stream
[2026-06-13 04:59:40,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:59:40,526.526 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 04:59:44,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 04:59:44,786.786 INFO    ] Checking for system updates...
[2026-06-13 04:59:44,807.807 INFO    ] 200
[2026-06-13 04:59:44,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:44,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:44,840.840 INFO    ] No update needed
[2026-06-13 04:59:44,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 04:59:44,861.861 INFO    ] 200
[2026-06-13 04:59:44,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:44,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:59:44,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 04:59:44,937.937 INFO    ] No camera update needed
[2026-06-13 04:59:44,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:59:44,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:59:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:59:44,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:46,985.985 INFO    ] ================================================
[2026-06-13 04:59:47,000.000 INFO    ] Launching Daemon at Sat Jun 13 04:59:46 IST 2026
[2026-06-13 04:59:47,010.010 INFO    ] ================================================
[2026-06-13 04:59:47,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:47
[2026-06-13 04:59:47,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:47,825.825 INFO    ] Initializing speech engine...
[2026-06-13 04:59:47,836.836 INFO    ] 2026-06-13 04:59:47
[2026-06-13 04:59:48,042.042 INFO    ] 2026-06-13 04:59:48
[2026-06-13 04:59:48,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 04:59:48,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 04:59:48,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 04:59:48,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 04:59:48,449.449 INFO    ] time= 13/06/2026 04:59:48
[2026-06-13 04:59:48,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 04:59:48,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 04:59:48,558.558 INFO    ] No existing commands found in stream
[2026-06-13 04:59:53,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 04:59:53,572.572 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 04:59:56,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 04:59:56,977.977 INFO    ] Checking for system updates...
[2026-06-13 04:59:56,999.999 INFO    ] 200
[2026-06-13 04:59:57,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:57,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:59:57,034.034 INFO    ] No update needed
[2026-06-13 04:59:57,035.035 INFO    ] Checking for camera pi updates...
[2026-06-13 04:59:57,056.056 INFO    ] 200
[2026-06-13 04:59:57,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 04:59:57,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 04:59:57,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 04:59:57,121.121 INFO    ] No camera update needed
[2026-06-13 04:59:57,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 04:59:57,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 04:59:57,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 04:59:57,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 04:59:59,168.168 INFO    ] ================================================
[2026-06-13 04:59:59,183.183 INFO    ] Launching Daemon at Sat Jun 13 04:59:59 IST 2026
[2026-06-13 04:59:59,194.194 INFO    ] ================================================
[2026-06-13 04:59:59,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 04:59:59
[2026-06-13 04:59:59,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 04:59:59,988.988 INFO    ] Initializing speech engine...
[2026-06-13 04:59:59,994.994 INFO    ] 2026-06-13 04:59:59
[2026-06-13 05:00:00,199.199 INFO    ] 2026-06-13 05:00:00
[2026-06-13 05:00:00,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:00,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:00,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:00,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:00,614.614 INFO    ] time= 13/06/2026 05:00:00
[2026-06-13 05:00:00,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:00,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:00,719.719 INFO    ] No existing commands found in stream
[2026-06-13 05:00:05,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:00:05,732.732 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 05:00:08,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:00:08,617.617 INFO    ] Checking for system updates...
[2026-06-13 05:00:08,638.638 INFO    ] 200
[2026-06-13 05:00:08,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:08,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:08,672.672 INFO    ] No update needed
[2026-06-13 05:00:08,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 05:00:08,693.693 INFO    ] 200
[2026-06-13 05:00:08,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:08,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:00:08,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:08,860.860 INFO    ] No camera update needed
[2026-06-13 05:00:08,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:00:08,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:00:08,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:00:08,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:00:10,909.909 INFO    ] ================================================
[2026-06-13 05:00:10,925.925 INFO    ] Launching Daemon at Sat Jun 13 05:00:10 IST 2026
[2026-06-13 05:00:10,935.935 INFO    ] ================================================
[2026-06-13 05:00:11,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:00:11
[2026-06-13 05:00:11,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:00:11,737.737 INFO    ] Initializing speech engine...
[2026-06-13 05:00:11,750.750 INFO    ] 2026-06-13 05:00:11
[2026-06-13 05:00:11,956.956 INFO    ] 2026-06-13 05:00:11
[2026-06-13 05:00:11,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:12,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:12,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:12,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:12,361.361 INFO    ] time= 13/06/2026 05:00:12
[2026-06-13 05:00:12,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:12,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:12,477.477 INFO    ] No existing commands found in stream
[2026-06-13 05:00:17,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:00:17,491.491 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 05:00:21,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:00:21,017.017 INFO    ] Checking for system updates...
[2026-06-13 05:00:21,039.039 INFO    ] 200
[2026-06-13 05:00:21,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:21,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:00:21,073.073 INFO    ] No update needed
[2026-06-13 05:00:21,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 05:00:21,098.098 INFO    ] 200
[2026-06-13 05:00:21,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:21,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:00:21,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:21,165.165 INFO    ] No camera update needed
[2026-06-13 05:00:21,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:00:21,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:00:21,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:00:21,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:00:23,212.212 INFO    ] ================================================
[2026-06-13 05:00:23,227.227 INFO    ] Launching Daemon at Sat Jun 13 05:00:23 IST 2026
[2026-06-13 05:00:23,239.239 INFO    ] ================================================
[2026-06-13 05:00:23,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:00:23
[2026-06-13 05:00:23,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:00:24,033.033 INFO    ] Initializing speech engine...
[2026-06-13 05:00:24,038.038 INFO    ] 2026-06-13 05:00:24
[2026-06-13 05:00:24,242.242 INFO    ] 2026-06-13 05:00:24
[2026-06-13 05:00:24,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:24,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:24,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:24,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:24,637.637 INFO    ] time= 13/06/2026 05:00:24
[2026-06-13 05:00:24,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:24,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:24,757.757 INFO    ] No existing commands found in stream
[2026-06-13 05:00:29,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:00:29,769.769 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 05:00:33,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:00:33,102.102 INFO    ] Checking for system updates...
[2026-06-13 05:00:33,122.122 INFO    ] 200
[2026-06-13 05:00:33,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:33,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:33,155.155 INFO    ] No update needed
[2026-06-13 05:00:33,157.157 INFO    ] Checking for camera pi updates...
[2026-06-13 05:00:33,176.176 INFO    ] 200
[2026-06-13 05:00:33,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:33,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:00:33,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:33,228.228 INFO    ] No camera update needed
[2026-06-13 05:00:33,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:00:33,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:00:33,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:00:33,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:00:35,277.277 INFO    ] ================================================
[2026-06-13 05:00:35,292.292 INFO    ] Launching Daemon at Sat Jun 13 05:00:35 IST 2026
[2026-06-13 05:00:35,303.303 INFO    ] ================================================
[2026-06-13 05:00:35,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:00:35
[2026-06-13 05:00:35,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:00:36,120.120 INFO    ] Initializing speech engine...
[2026-06-13 05:00:36,124.124 INFO    ] 2026-06-13 05:00:36
[2026-06-13 05:00:36,332.332 INFO    ] 2026-06-13 05:00:36
[2026-06-13 05:00:36,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:36,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:36,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:36,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:36,747.747 INFO    ] time= 13/06/2026 05:00:36
[2026-06-13 05:00:36,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:36,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:36,851.851 INFO    ] No existing commands found in stream
[2026-06-13 05:00:41,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:00:41,863.863 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 05:00:43,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:00:43,278.278 INFO    ] Checking for system updates...
[2026-06-13 05:00:43,299.299 INFO    ] 200
[2026-06-13 05:00:43,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:43,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:43,333.333 INFO    ] No update needed
[2026-06-13 05:00:43,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 05:00:43,355.355 INFO    ] 200
[2026-06-13 05:00:43,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:43,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:00:43,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:43,421.421 INFO    ] No camera update needed
[2026-06-13 05:00:43,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:00:43,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:00:43,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:00:43,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:00:45,461.461 INFO    ] ================================================
[2026-06-13 05:00:45,470.470 INFO    ] Launching Daemon at Sat Jun 13 05:00:45 IST 2026
[2026-06-13 05:00:45,475.475 INFO    ] ================================================
[2026-06-13 05:00:45,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:00:45
[2026-06-13 05:00:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:00:46,290.290 INFO    ] Initializing speech engine...
[2026-06-13 05:00:46,295.295 INFO    ] 2026-06-13 05:00:46
[2026-06-13 05:00:46,502.502 INFO    ] 2026-06-13 05:00:46
[2026-06-13 05:00:46,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:46,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:46,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:46,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:46,901.901 INFO    ] time= 13/06/2026 05:00:46
[2026-06-13 05:00:46,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:46,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:47,016.016 INFO    ] No existing commands found in stream
[2026-06-13 05:00:52,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:00:52,030.030 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 05:00:52,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:00:52,849.849 INFO    ] Checking for system updates...
[2026-06-13 05:00:52,870.870 INFO    ] 200
[2026-06-13 05:00:52,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:52,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:00:52,906.906 INFO    ] No update needed
[2026-06-13 05:00:52,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 05:00:52,929.929 INFO    ] 200
[2026-06-13 05:00:52,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:00:52,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:00:53,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:00:53,003.003 INFO    ] No camera update needed
[2026-06-13 05:00:53,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:00:53,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:00:53,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:00:53,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:00:55,054.054 INFO    ] ================================================
[2026-06-13 05:00:55,071.071 INFO    ] Launching Daemon at Sat Jun 13 05:00:55 IST 2026
[2026-06-13 05:00:55,082.082 INFO    ] ================================================
[2026-06-13 05:00:55,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:00:55
[2026-06-13 05:00:55,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:00:55,897.897 INFO    ] Initializing speech engine...
[2026-06-13 05:00:55,903.903 INFO    ] 2026-06-13 05:00:55
[2026-06-13 05:00:56,106.106 INFO    ] 2026-06-13 05:00:56
[2026-06-13 05:00:56,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:00:56,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:00:56,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:00:56,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:00:56,515.515 INFO    ] time= 13/06/2026 05:00:56
[2026-06-13 05:00:56,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:00:56,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:00:56,619.619 INFO    ] No existing commands found in stream
[2026-06-13 05:01:01,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:01,633.633 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 05:01:04,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:01:04,077.077 INFO    ] Checking for system updates...
[2026-06-13 05:01:04,099.099 INFO    ] 200
[2026-06-13 05:01:04,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:04,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:01:04,133.133 INFO    ] No update needed
[2026-06-13 05:01:04,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:04,155.155 INFO    ] 200
[2026-06-13 05:01:04,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:04,180.180 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:04,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:01:04,221.221 INFO    ] No camera update needed
[2026-06-13 05:01:04,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:04,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:04,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:04,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:06,272.272 INFO    ] ================================================
[2026-06-13 05:01:06,288.288 INFO    ] Launching Daemon at Sat Jun 13 05:01:06 IST 2026
[2026-06-13 05:01:06,303.303 INFO    ] ================================================
[2026-06-13 05:01:06,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:06
[2026-06-13 05:01:06,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:07,107.107 INFO    ] Initializing speech engine...
[2026-06-13 05:01:07,119.119 INFO    ] 2026-06-13 05:01:07
[2026-06-13 05:01:07,327.327 INFO    ] 2026-06-13 05:01:07
[2026-06-13 05:01:07,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:01:07,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:01:07,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:01:07,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:01:07,691.691 INFO    ] time= 13/06/2026 05:01:07
[2026-06-13 05:01:07,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:01:07,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:01:07,886.886 INFO    ] No existing commands found in stream
[2026-06-13 05:01:12,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:12,914.914 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 05:01:15,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:01:15,280.280 INFO    ] Checking for system updates...
[2026-06-13 05:01:15,301.301 INFO    ] 200
[2026-06-13 05:01:15,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:15,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:01:15,335.335 INFO    ] No update needed
[2026-06-13 05:01:15,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:15,357.357 INFO    ] 200
[2026-06-13 05:01:15,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:15,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:15,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:01:15,406.406 INFO    ] No camera update needed
[2026-06-13 05:01:15,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:15,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:15,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:15,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:17,456.456 INFO    ] ================================================
[2026-06-13 05:01:17,472.472 INFO    ] Launching Daemon at Sat Jun 13 05:01:17 IST 2026
[2026-06-13 05:01:17,482.482 INFO    ] ================================================
[2026-06-13 05:01:17,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:17
[2026-06-13 05:01:18,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:18,325.325 INFO    ] Initializing speech engine...
[2026-06-13 05:01:18,330.330 INFO    ] 2026-06-13 05:01:18
[2026-06-13 05:01:18,536.536 INFO    ] 2026-06-13 05:01:18
[2026-06-13 05:01:18,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:01:18,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:01:18,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:01:18,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:01:18,942.942 INFO    ] time= 13/06/2026 05:01:18
[2026-06-13 05:01:18,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:01:18,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:01:19,053.053 INFO    ] No existing commands found in stream
[2026-06-13 05:01:24,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:24,065.065 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 05:01:25,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:01:25,047.047 INFO    ] Checking for system updates...
[2026-06-13 05:01:25,069.069 INFO    ] 200
[2026-06-13 05:01:25,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:25,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:25,106.106 INFO    ] No update needed
[2026-06-13 05:01:25,107.107 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:25,130.130 INFO    ] 200
[2026-06-13 05:01:25,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:25,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:25,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:25,201.201 INFO    ] No camera update needed
[2026-06-13 05:01:25,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:25,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:25,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:25,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:27,251.251 INFO    ] ================================================
[2026-06-13 05:01:27,266.266 INFO    ] Launching Daemon at Sat Jun 13 05:01:27 IST 2026
[2026-06-13 05:01:27,277.277 INFO    ] ================================================
[2026-06-13 05:01:27,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:27
[2026-06-13 05:01:28,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:28,173.173 INFO    ] Initializing speech engine...
[2026-06-13 05:01:28,177.177 INFO    ] 2026-06-13 05:01:28
[2026-06-13 05:01:28,397.397 INFO    ] 2026-06-13 05:01:28
[2026-06-13 05:01:28,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:01:28,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:01:28,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:01:28,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:01:28,825.825 INFO    ] time= 13/06/2026 05:01:28
[2026-06-13 05:01:28,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:01:28,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:01:28,982.982 INFO    ] No existing commands found in stream
[2026-06-13 05:01:33,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:34,000.000 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 05:01:37,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:01:37,027.027 INFO    ] Checking for system updates...
[2026-06-13 05:01:37,051.051 INFO    ] 200
[2026-06-13 05:01:37,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:37,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:37,085.085 INFO    ] No update needed
[2026-06-13 05:01:37,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:37,105.105 INFO    ] 200
[2026-06-13 05:01:37,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:37,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:37,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:37,178.178 INFO    ] No camera update needed
[2026-06-13 05:01:37,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:37,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:37,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:37,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:39,225.225 INFO    ] ================================================
[2026-06-13 05:01:39,240.240 INFO    ] Launching Daemon at Sat Jun 13 05:01:39 IST 2026
[2026-06-13 05:01:39,251.251 INFO    ] ================================================
[2026-06-13 05:01:39,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:39
[2026-06-13 05:01:40,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:40,429.429 INFO    ] Initializing speech engine...
[2026-06-13 05:01:40,438.438 INFO    ] 2026-06-13 05:01:40
[2026-06-13 05:01:40,699.699 INFO    ] 2026-06-13 05:01:40
[2026-06-13 05:01:40,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:01:40,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:01:40,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:01:41,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:01:41,141.141 INFO    ] time= 13/06/2026 05:01:41
[2026-06-13 05:01:41,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:01:41,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:01:41,380.380 INFO    ] No existing commands found in stream
[2026-06-13 05:01:46,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:46,413.413 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 05:01:46,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:01:46,989.989 INFO    ] Checking for system updates...
[2026-06-13 05:01:47,011.011 INFO    ] 200
[2026-06-13 05:01:47,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:47,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:47,044.044 INFO    ] No update needed
[2026-06-13 05:01:47,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:47,064.064 INFO    ] 200
[2026-06-13 05:01:47,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:47,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:47,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:47,134.134 INFO    ] No camera update needed
[2026-06-13 05:01:47,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:47,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:47,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:47,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:49,174.174 INFO    ] ================================================
[2026-06-13 05:01:49,183.183 INFO    ] Launching Daemon at Sat Jun 13 05:01:49 IST 2026
[2026-06-13 05:01:49,190.190 INFO    ] ================================================
[2026-06-13 05:01:49,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:49
[2026-06-13 05:01:49,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:50,023.023 INFO    ] Initializing speech engine...
[2026-06-13 05:01:50,027.027 INFO    ] 2026-06-13 05:01:50
[2026-06-13 05:01:50,219.219 INFO    ] 2026-06-13 05:01:50
[2026-06-13 05:01:50,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:01:50,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:01:50,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:01:50,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:01:50,504.504 INFO    ] time= 13/06/2026 05:01:50
[2026-06-13 05:01:50,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:01:50,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:01:50,606.606 INFO    ] No existing commands found in stream
[2026-06-13 05:01:55,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:01:55,643.643 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 05:01:56,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:01:56,663.663 INFO    ] Checking for system updates...
[2026-06-13 05:01:56,686.686 INFO    ] 200
[2026-06-13 05:01:56,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:56,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:56,719.719 INFO    ] No update needed
[2026-06-13 05:01:56,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 05:01:56,740.740 INFO    ] 200
[2026-06-13 05:01:56,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:01:56,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:01:56,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:01:56,802.802 INFO    ] No camera update needed
[2026-06-13 05:01:56,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:01:56,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:01:56,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:01:56,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:01:58,851.851 INFO    ] ================================================
[2026-06-13 05:01:58,866.866 INFO    ] Launching Daemon at Sat Jun 13 05:01:58 IST 2026
[2026-06-13 05:01:58,877.877 INFO    ] ================================================
[2026-06-13 05:01:59,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:01:59
[2026-06-13 05:01:59,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:01:59,660.660 INFO    ] Initializing speech engine...
[2026-06-13 05:01:59,665.665 INFO    ] 2026-06-13 05:01:59
[2026-06-13 05:01:59,899.899 INFO    ] 2026-06-13 05:01:59
[2026-06-13 05:01:59,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:00,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:00,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:00,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:00,303.303 INFO    ] time= 13/06/2026 05:02:00
[2026-06-13 05:02:00,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:00,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:00,464.464 INFO    ] No existing commands found in stream
[2026-06-13 05:02:05,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:02:05,477.477 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 05:02:07,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:02:07,807.807 INFO    ] Checking for system updates...
[2026-06-13 05:02:07,830.830 INFO    ] 200
[2026-06-13 05:02:07,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:07,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:02:07,865.865 INFO    ] No update needed
[2026-06-13 05:02:07,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 05:02:07,887.887 INFO    ] 200
[2026-06-13 05:02:07,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:07,912.912 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:02:07,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:02:07,952.952 INFO    ] No camera update needed
[2026-06-13 05:02:07,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:02:07,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:02:07,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:02:07,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:02:10,999.999 INFO    ] ================================================
[2026-06-13 05:02:10,014.014 INFO    ] Launching Daemon at Sat Jun 13 05:02:10 IST 2026
[2026-06-13 05:02:10,025.025 INFO    ] ================================================
[2026-06-13 05:02:10,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:02:10
[2026-06-13 05:02:10,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:02:10,869.869 INFO    ] Initializing speech engine...
[2026-06-13 05:02:10,876.876 INFO    ] 2026-06-13 05:02:10
[2026-06-13 05:02:11,084.084 INFO    ] 2026-06-13 05:02:11
[2026-06-13 05:02:11,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:11,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:11,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:11,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:11,496.496 INFO    ] time= 13/06/2026 05:02:11
[2026-06-13 05:02:11,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:11,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:11,602.602 INFO    ] No existing commands found in stream
[2026-06-13 05:02:16,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:02:16,631.631 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 05:02:18,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:02:18,498.498 INFO    ] Checking for system updates...
[2026-06-13 05:02:18,519.519 INFO    ] 200
[2026-06-13 05:02:18,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:18,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:18,553.553 INFO    ] No update needed
[2026-06-13 05:02:18,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 05:02:18,575.575 INFO    ] 200
[2026-06-13 05:02:18,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:18,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:02:18,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:18,741.741 INFO    ] No camera update needed
[2026-06-13 05:02:18,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:02:18,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:02:18,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:02:18,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:02:20,792.792 INFO    ] ================================================
[2026-06-13 05:02:20,807.807 INFO    ] Launching Daemon at Sat Jun 13 05:02:20 IST 2026
[2026-06-13 05:02:20,817.817 INFO    ] ================================================
[2026-06-13 05:02:21,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:02:21
[2026-06-13 05:02:21,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:02:21,648.648 INFO    ] Initializing speech engine...
[2026-06-13 05:02:21,653.653 INFO    ] 2026-06-13 05:02:21
[2026-06-13 05:02:21,905.905 INFO    ] 2026-06-13 05:02:21
[2026-06-13 05:02:21,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:22,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:22,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:22,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:22,324.324 INFO    ] time= 13/06/2026 05:02:22
[2026-06-13 05:02:22,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:22,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:22,426.426 INFO    ] No existing commands found in stream
[2026-06-13 05:02:27,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:02:27,437.437 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 05:02:29,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:02:29,607.607 INFO    ] Checking for system updates...
[2026-06-13 05:02:29,632.632 INFO    ] 200
[2026-06-13 05:02:29,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:29,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:29,671.671 INFO    ] No update needed
[2026-06-13 05:02:29,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 05:02:29,693.693 INFO    ] 200
[2026-06-13 05:02:29,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:29,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:02:29,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:29,760.760 INFO    ] No camera update needed
[2026-06-13 05:02:29,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:02:29,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:02:29,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:02:29,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:02:31,810.810 INFO    ] ================================================
[2026-06-13 05:02:31,826.826 INFO    ] Launching Daemon at Sat Jun 13 05:02:31 IST 2026
[2026-06-13 05:02:31,844.844 INFO    ] ================================================
[2026-06-13 05:02:32,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:02:32
[2026-06-13 05:02:32,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:02:32,619.619 INFO    ] Initializing speech engine...
[2026-06-13 05:02:32,629.629 INFO    ] 2026-06-13 05:02:32
[2026-06-13 05:02:32,833.833 INFO    ] 2026-06-13 05:02:32
[2026-06-13 05:02:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:33,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:33,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:33,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:33,240.240 INFO    ] time= 13/06/2026 05:02:33
[2026-06-13 05:02:33,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:33,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:33,349.349 INFO    ] No existing commands found in stream
[2026-06-13 05:02:38,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:02:38,363.363 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 05:02:40,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:02:40,526.526 INFO    ] Checking for system updates...
[2026-06-13 05:02:40,547.547 INFO    ] 200
[2026-06-13 05:02:40,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:40,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:02:40,583.583 INFO    ] No update needed
[2026-06-13 05:02:40,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 05:02:40,604.604 INFO    ] 200
[2026-06-13 05:02:40,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:40,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:02:40,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:02:40,676.676 INFO    ] No camera update needed
[2026-06-13 05:02:40,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:02:40,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:02:40,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:02:40,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:02:42,716.716 INFO    ] ================================================
[2026-06-13 05:02:42,725.725 INFO    ] Launching Daemon at Sat Jun 13 05:02:42 IST 2026
[2026-06-13 05:02:42,732.732 INFO    ] ================================================
[2026-06-13 05:02:43,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:02:43
[2026-06-13 05:02:43,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:02:43,579.579 INFO    ] Initializing speech engine...
[2026-06-13 05:02:43,584.584 INFO    ] 2026-06-13 05:02:43
[2026-06-13 05:02:43,792.792 INFO    ] 2026-06-13 05:02:43
[2026-06-13 05:02:43,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:43,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:44,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:44,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:44,206.206 INFO    ] time= 13/06/2026 05:02:44
[2026-06-13 05:02:44,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:44,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:44,407.407 INFO    ] No existing commands found in stream
[2026-06-13 05:02:49,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:02:49,420.420 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 05:02:53,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:02:53,288.288 INFO    ] Checking for system updates...
[2026-06-13 05:02:53,310.310 INFO    ] 200
[2026-06-13 05:02:53,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:53,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:53,343.343 INFO    ] No update needed
[2026-06-13 05:02:53,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 05:02:53,366.366 INFO    ] 200
[2026-06-13 05:02:53,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:02:53,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:02:53,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:02:53,432.432 INFO    ] No camera update needed
[2026-06-13 05:02:53,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:02:53,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:02:53,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:02:53,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:02:55,482.482 INFO    ] ================================================
[2026-06-13 05:02:55,498.498 INFO    ] Launching Daemon at Sat Jun 13 05:02:55 IST 2026
[2026-06-13 05:02:55,509.509 INFO    ] ================================================
[2026-06-13 05:02:55,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:02:55
[2026-06-13 05:02:56,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:02:56,365.365 INFO    ] Initializing speech engine...
[2026-06-13 05:02:56,371.371 INFO    ] 2026-06-13 05:02:56
[2026-06-13 05:02:56,583.583 INFO    ] 2026-06-13 05:02:56
[2026-06-13 05:02:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:02:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:02:56,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:02:56,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:02:57,001.001 INFO    ] time= 13/06/2026 05:02:56
[2026-06-13 05:02:57,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:02:57,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:02:57,110.110 INFO    ] No existing commands found in stream
[2026-06-13 05:03:02,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:02,122.122 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 05:03:06,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:03:06,062.062 INFO    ] Checking for system updates...
[2026-06-13 05:03:06,083.083 INFO    ] 200
[2026-06-13 05:03:06,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:06,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:06,116.116 INFO    ] No update needed
[2026-06-13 05:03:06,118.118 INFO    ] Checking for camera pi updates...
[2026-06-13 05:03:06,138.138 INFO    ] 200
[2026-06-13 05:03:06,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:06,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:03:06,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:06,204.204 INFO    ] No camera update needed
[2026-06-13 05:03:06,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:03:06,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:03:06,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:03:06,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:03:08,255.255 INFO    ] ================================================
[2026-06-13 05:03:08,271.271 INFO    ] Launching Daemon at Sat Jun 13 05:03:08 IST 2026
[2026-06-13 05:03:08,282.282 INFO    ] ================================================
[2026-06-13 05:03:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:03:08
[2026-06-13 05:03:08,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:03:09,070.070 INFO    ] Initializing speech engine...
[2026-06-13 05:03:09,083.083 INFO    ] 2026-06-13 05:03:09
[2026-06-13 05:03:09,302.302 INFO    ] 2026-06-13 05:03:09
[2026-06-13 05:03:09,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:03:09,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:03:09,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:03:09,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:03:09,707.707 INFO    ] time= 13/06/2026 05:03:09
[2026-06-13 05:03:09,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:03:09,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:03:09,800.800 INFO    ] No existing commands found in stream
[2026-06-13 05:03:14,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:14,818.818 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 05:03:17,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:03:17,677.677 INFO    ] Checking for system updates...
[2026-06-13 05:03:17,700.700 INFO    ] 200
[2026-06-13 05:03:17,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:17,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:17,734.734 INFO    ] No update needed
[2026-06-13 05:03:17,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 05:03:17,755.755 INFO    ] 200
[2026-06-13 05:03:17,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:17,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:03:17,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:17,820.820 INFO    ] No camera update needed
[2026-06-13 05:03:17,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:03:17,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:03:17,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:03:17,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:03:19,870.870 INFO    ] ================================================
[2026-06-13 05:03:19,885.885 INFO    ] Launching Daemon at Sat Jun 13 05:03:19 IST 2026
[2026-06-13 05:03:19,897.897 INFO    ] ================================================
[2026-06-13 05:03:20,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:03:20
[2026-06-13 05:03:20,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:03:20,698.698 INFO    ] Initializing speech engine...
[2026-06-13 05:03:20,704.704 INFO    ] 2026-06-13 05:03:20
[2026-06-13 05:03:20,910.910 INFO    ] 2026-06-13 05:03:20
[2026-06-13 05:03:20,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:03:21,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:03:21,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:03:21,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:03:21,216.216 INFO    ] time= 13/06/2026 05:03:21
[2026-06-13 05:03:21,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:03:21,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:03:21,381.381 INFO    ] No existing commands found in stream
[2026-06-13 05:03:26,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:26,400.400 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 05:03:26,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:03:26,943.943 INFO    ] Checking for system updates...
[2026-06-13 05:03:26,964.964 INFO    ] 200
[2026-06-13 05:03:26,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:26,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:26,998.998 INFO    ] No update needed
[2026-06-13 05:03:26,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 05:03:27,019.019 INFO    ] 200
[2026-06-13 05:03:27,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:27,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:03:27,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:03:27,084.084 INFO    ] No camera update needed
[2026-06-13 05:03:27,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:03:27,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:03:27,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:03:27,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:03:29,133.133 INFO    ] ================================================
[2026-06-13 05:03:29,148.148 INFO    ] Launching Daemon at Sat Jun 13 05:03:29 IST 2026
[2026-06-13 05:03:29,159.159 INFO    ] ================================================
[2026-06-13 05:03:29,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:03:29
[2026-06-13 05:03:29,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:03:29,961.961 INFO    ] Initializing speech engine...
[2026-06-13 05:03:29,970.970 INFO    ] 2026-06-13 05:03:29
[2026-06-13 05:03:30,187.187 INFO    ] 2026-06-13 05:03:30
[2026-06-13 05:03:30,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:03:30,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:03:30,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:03:30,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:03:30,585.585 INFO    ] time= 13/06/2026 05:03:30
[2026-06-13 05:03:30,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:03:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:03:30,693.693 INFO    ] No existing commands found in stream
[2026-06-13 05:03:35,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:35,705.705 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 05:03:37,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:03:37,674.674 INFO    ] Checking for system updates...
[2026-06-13 05:03:37,695.695 INFO    ] 200
[2026-06-13 05:03:37,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:37,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:03:37,730.730 INFO    ] No update needed
[2026-06-13 05:03:37,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 05:03:37,751.751 INFO    ] 200
[2026-06-13 05:03:37,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:37,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:03:37,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:03:37,820.820 INFO    ] No camera update needed
[2026-06-13 05:03:37,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:03:37,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:03:37,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:03:37,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:03:39,867.867 INFO    ] ================================================
[2026-06-13 05:03:39,882.882 INFO    ] Launching Daemon at Sat Jun 13 05:03:39 IST 2026
[2026-06-13 05:03:39,894.894 INFO    ] ================================================
[2026-06-13 05:03:40,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:03:40
[2026-06-13 05:03:40,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:03:40,691.691 INFO    ] Initializing speech engine...
[2026-06-13 05:03:40,696.696 INFO    ] 2026-06-13 05:03:40
[2026-06-13 05:03:40,911.911 INFO    ] 2026-06-13 05:03:40
[2026-06-13 05:03:40,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:03:41,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:03:41,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:03:41,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:03:41,334.334 INFO    ] time= 13/06/2026 05:03:41
[2026-06-13 05:03:41,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:03:41,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:03:41,487.487 INFO    ] No existing commands found in stream
[2026-06-13 05:03:46,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:46,500.500 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 05:03:50,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:03:50,124.124 INFO    ] Checking for system updates...
[2026-06-13 05:03:50,145.145 INFO    ] 200
[2026-06-13 05:03:50,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:50,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:50,183.183 INFO    ] No update needed
[2026-06-13 05:03:50,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 05:03:50,205.205 INFO    ] 200
[2026-06-13 05:03:50,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:03:50,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:03:50,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:03:50,273.273 INFO    ] No camera update needed
[2026-06-13 05:03:50,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:03:50,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:03:50,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:03:50,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:03:52,324.324 INFO    ] ================================================
[2026-06-13 05:03:52,339.339 INFO    ] Launching Daemon at Sat Jun 13 05:03:52 IST 2026
[2026-06-13 05:03:52,349.349 INFO    ] ================================================
[2026-06-13 05:03:52,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:03:52
[2026-06-13 05:03:53,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:03:53,179.179 INFO    ] Initializing speech engine...
[2026-06-13 05:03:53,184.184 INFO    ] 2026-06-13 05:03:53
[2026-06-13 05:03:53,390.390 INFO    ] 2026-06-13 05:03:53
[2026-06-13 05:03:53,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:03:53,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:03:53,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:03:53,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:03:53,791.791 INFO    ] time= 13/06/2026 05:03:53
[2026-06-13 05:03:53,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:03:53,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:03:53,906.906 INFO    ] No existing commands found in stream
[2026-06-13 05:03:58,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:03:58,920.920 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 05:04:02,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:04:02,059.059 INFO    ] Checking for system updates...
[2026-06-13 05:04:02,084.084 INFO    ] 200
[2026-06-13 05:04:02,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:02,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:02,126.126 INFO    ] No update needed
[2026-06-13 05:04:02,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:02,152.152 INFO    ] 200
[2026-06-13 05:04:02,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:02,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:02,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:02,241.241 INFO    ] No camera update needed
[2026-06-13 05:04:02,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:02,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:02,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:02,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:04:04,293.293 INFO    ] ================================================
[2026-06-13 05:04:04,309.309 INFO    ] Launching Daemon at Sat Jun 13 05:04:04 IST 2026
[2026-06-13 05:04:04,320.320 INFO    ] ================================================
[2026-06-13 05:04:04,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:04:04
[2026-06-13 05:04:04,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:04:05,126.126 INFO    ] Initializing speech engine...
[2026-06-13 05:04:05,132.132 INFO    ] 2026-06-13 05:04:05
[2026-06-13 05:04:05,340.340 INFO    ] 2026-06-13 05:04:05
[2026-06-13 05:04:05,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:04:05,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:04:05,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:04:05,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:04:05,764.764 INFO    ] time= 13/06/2026 05:04:05
[2026-06-13 05:04:05,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:04:05,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:04:05,896.896 INFO    ] No existing commands found in stream
[2026-06-13 05:04:10,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:04:10,913.913 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 05:04:13,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:04:13,996.996 INFO    ] Checking for system updates...
[2026-06-13 05:04:14,017.017 INFO    ] 200
[2026-06-13 05:04:14,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:14,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:14,050.050 INFO    ] No update needed
[2026-06-13 05:04:14,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:14,073.073 INFO    ] 200
[2026-06-13 05:04:14,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:14,102.102 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:14,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:14,140.140 INFO    ] No camera update needed
[2026-06-13 05:04:14,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:14,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:14,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:14,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:04:16,190.190 INFO    ] ================================================
[2026-06-13 05:04:16,205.205 INFO    ] Launching Daemon at Sat Jun 13 05:04:16 IST 2026
[2026-06-13 05:04:16,215.215 INFO    ] ================================================
[2026-06-13 05:04:16,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:04:16
[2026-06-13 05:04:16,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:04:17,129.129 INFO    ] Initializing speech engine...
[2026-06-13 05:04:17,144.144 INFO    ] 2026-06-13 05:04:17
[2026-06-13 05:04:17,412.412 INFO    ] 2026-06-13 05:04:17
[2026-06-13 05:04:17,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:04:17,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:04:17,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:04:17,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:04:17,754.754 INFO    ] time= 13/06/2026 05:04:17
[2026-06-13 05:04:17,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:04:17,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:04:17,867.867 INFO    ] No existing commands found in stream
[2026-06-13 05:04:22,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:04:22,882.882 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 05:04:26,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:04:26,737.737 INFO    ] Checking for system updates...
[2026-06-13 05:04:26,758.758 INFO    ] 200
[2026-06-13 05:04:26,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:26,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:04:26,792.792 INFO    ] No update needed
[2026-06-13 05:04:26,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:26,813.813 INFO    ] 200
[2026-06-13 05:04:26,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:26,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:26,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:04:26,983.983 INFO    ] No camera update needed
[2026-06-13 05:04:26,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:26,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:26,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:26,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:04:29,031.031 INFO    ] ================================================
[2026-06-13 05:04:29,046.046 INFO    ] Launching Daemon at Sat Jun 13 05:04:29 IST 2026
[2026-06-13 05:04:29,057.057 INFO    ] ================================================
[2026-06-13 05:04:29,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:04:29
[2026-06-13 05:04:29,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:04:29,852.852 INFO    ] Initializing speech engine...
[2026-06-13 05:04:29,860.860 INFO    ] 2026-06-13 05:04:29
[2026-06-13 05:04:30,068.068 INFO    ] 2026-06-13 05:04:30
[2026-06-13 05:04:30,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:04:30,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:04:30,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:04:30,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:04:30,480.480 INFO    ] time= 13/06/2026 05:04:30
[2026-06-13 05:04:30,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:04:30,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:04:30,584.584 INFO    ] No existing commands found in stream
[2026-06-13 05:04:35,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:04:35,596.596 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 05:04:37,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:04:37,647.647 INFO    ] Checking for system updates...
[2026-06-13 05:04:37,669.669 INFO    ] 200
[2026-06-13 05:04:37,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:37,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:04:37,702.702 INFO    ] No update needed
[2026-06-13 05:04:37,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:37,722.722 INFO    ] 200
[2026-06-13 05:04:37,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:37,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:37,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:37,789.789 INFO    ] No camera update needed
[2026-06-13 05:04:37,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:37,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:37,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:37,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:04:39,838.838 INFO    ] ================================================
[2026-06-13 05:04:39,854.854 INFO    ] Launching Daemon at Sat Jun 13 05:04:39 IST 2026
[2026-06-13 05:04:39,864.864 INFO    ] ================================================
[2026-06-13 05:04:40,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:04:40
[2026-06-13 05:04:40,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:04:40,640.640 INFO    ] Initializing speech engine...
[2026-06-13 05:04:40,653.653 INFO    ] 2026-06-13 05:04:40
[2026-06-13 05:04:40,861.861 INFO    ] 2026-06-13 05:04:40
[2026-06-13 05:04:40,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:04:41,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:04:41,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:04:41,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:04:41,260.260 INFO    ] time= 13/06/2026 05:04:41
[2026-06-13 05:04:41,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:04:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:04:41,374.374 INFO    ] No existing commands found in stream
[2026-06-13 05:04:46,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:04:46,387.387 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 05:04:46,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:04:46,730.730 INFO    ] Checking for system updates...
[2026-06-13 05:04:46,750.750 INFO    ] 200
[2026-06-13 05:04:46,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:46,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:46,783.783 INFO    ] No update needed
[2026-06-13 05:04:46,785.785 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:46,806.806 INFO    ] 200
[2026-06-13 05:04:46,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:46,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:46,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:04:46,854.854 INFO    ] No camera update needed
[2026-06-13 05:04:46,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:46,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:46,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:46,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:04:48,905.905 INFO    ] ================================================
[2026-06-13 05:04:48,921.921 INFO    ] Launching Daemon at Sat Jun 13 05:04:48 IST 2026
[2026-06-13 05:04:48,931.931 INFO    ] ================================================
[2026-06-13 05:04:49,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:04:49
[2026-06-13 05:04:49,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:04:49,777.777 INFO    ] Initializing speech engine...
[2026-06-13 05:04:49,783.783 INFO    ] 2026-06-13 05:04:49
[2026-06-13 05:04:49,992.992 INFO    ] 2026-06-13 05:04:49
[2026-06-13 05:04:50,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:04:50,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:04:50,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:04:50,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:04:50,413.413 INFO    ] time= 13/06/2026 05:04:50
[2026-06-13 05:04:50,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:04:50,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:04:50,521.521 INFO    ] No existing commands found in stream
[2026-06-13 05:04:55,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:04:55,534.534 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 05:04:59,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:04:59,779.779 INFO    ] Checking for system updates...
[2026-06-13 05:04:59,817.817 INFO    ] 200
[2026-06-13 05:04:59,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:59,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:04:59,878.878 INFO    ] No update needed
[2026-06-13 05:04:59,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 05:04:59,917.917 INFO    ] 200
[2026-06-13 05:04:59,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:04:59,941.941 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:04:59,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:04:59,984.984 INFO    ] No camera update needed
[2026-06-13 05:04:59,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:04:59,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:04:59,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:04:59,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:02,073.073 INFO    ] ================================================
[2026-06-13 05:05:02,131.131 INFO    ] Launching Daemon at Sat Jun 13 05:05:02 IST 2026
[2026-06-13 05:05:02,190.190 INFO    ] ================================================
[2026-06-13 05:05:03,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:03
[2026-06-13 05:05:03,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:04,113.113 INFO    ] Initializing speech engine...
[2026-06-13 05:05:04,124.124 INFO    ] 2026-06-13 05:05:04
[2026-06-13 05:05:04,414.414 INFO    ] 2026-06-13 05:05:04
[2026-06-13 05:05:04,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:05:04,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:05:04,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:05:04,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:05:04,842.842 INFO    ] time= 13/06/2026 05:05:04
[2026-06-13 05:05:04,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:05:04,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:05:05,027.027 INFO    ] No existing commands found in stream
[2026-06-13 05:05:10,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:05:10,043.043 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 05:05:10,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:05:10,998.998 INFO    ] Checking for system updates...
[2026-06-13 05:05:11,019.019 INFO    ] 200
[2026-06-13 05:05:11,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:11,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:05:11,052.052 INFO    ] No update needed
[2026-06-13 05:05:11,054.054 INFO    ] Checking for camera pi updates...
[2026-06-13 05:05:11,074.074 INFO    ] 200
[2026-06-13 05:05:11,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:11,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:05:11,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:11,139.139 INFO    ] No camera update needed
[2026-06-13 05:05:11,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:05:11,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:05:11,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:05:11,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:13,186.186 INFO    ] ================================================
[2026-06-13 05:05:13,201.201 INFO    ] Launching Daemon at Sat Jun 13 05:05:13 IST 2026
[2026-06-13 05:05:13,212.212 INFO    ] ================================================
[2026-06-13 05:05:13,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:13
[2026-06-13 05:05:14,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:14,593.593 INFO    ] Initializing speech engine...
[2026-06-13 05:05:14,601.601 INFO    ] 2026-06-13 05:05:14
[2026-06-13 05:05:14,851.851 INFO    ] 2026-06-13 05:05:14
[2026-06-13 05:05:14,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:05:15,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:05:15,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:05:15,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:05:15,361.361 INFO    ] time= 13/06/2026 05:05:15
[2026-06-13 05:05:15,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:05:15,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:05:15,562.562 INFO    ] No existing commands found in stream
[2026-06-13 05:05:20,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:05:20,581.581 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 05:05:23,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:05:23,287.287 INFO    ] Checking for system updates...
[2026-06-13 05:05:23,311.311 INFO    ] 200
[2026-06-13 05:05:23,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:23,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:05:23,344.344 INFO    ] No update needed
[2026-06-13 05:05:23,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 05:05:23,366.366 INFO    ] 200
[2026-06-13 05:05:23,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:23,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:05:23,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:05:23,430.430 INFO    ] No camera update needed
[2026-06-13 05:05:23,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:05:23,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:05:23,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:05:23,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:25,479.479 INFO    ] ================================================
[2026-06-13 05:05:25,494.494 INFO    ] Launching Daemon at Sat Jun 13 05:05:25 IST 2026
[2026-06-13 05:05:25,505.505 INFO    ] ================================================
[2026-06-13 05:05:25,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:25
[2026-06-13 05:05:26,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:26,320.320 INFO    ] Initializing speech engine...
[2026-06-13 05:05:26,332.332 INFO    ] 2026-06-13 05:05:26
[2026-06-13 05:05:26,538.538 INFO    ] 2026-06-13 05:05:26
[2026-06-13 05:05:26,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:05:26,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:05:26,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:05:26,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:05:26,942.942 INFO    ] time= 13/06/2026 05:05:26
[2026-06-13 05:05:26,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:05:26,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:05:27,051.051 INFO    ] No existing commands found in stream
[2026-06-13 05:05:32,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:05:32,062.062 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 05:05:34,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:05:34,352.352 INFO    ] Checking for system updates...
[2026-06-13 05:05:34,373.373 INFO    ] 200
[2026-06-13 05:05:34,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:34,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:34,409.409 INFO    ] No update needed
[2026-06-13 05:05:34,410.410 INFO    ] Checking for camera pi updates...
[2026-06-13 05:05:34,430.430 INFO    ] 200
[2026-06-13 05:05:34,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:34,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:05:34,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:34,495.495 INFO    ] No camera update needed
[2026-06-13 05:05:34,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:05:34,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:05:34,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:05:34,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:36,545.545 INFO    ] ================================================
[2026-06-13 05:05:36,560.560 INFO    ] Launching Daemon at Sat Jun 13 05:05:36 IST 2026
[2026-06-13 05:05:36,570.570 INFO    ] ================================================
[2026-06-13 05:05:36,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:36
[2026-06-13 05:05:37,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:37,395.395 INFO    ] Initializing speech engine...
[2026-06-13 05:05:37,400.400 INFO    ] 2026-06-13 05:05:37
[2026-06-13 05:05:37,629.629 INFO    ] 2026-06-13 05:05:37
[2026-06-13 05:05:37,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:05:37,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:05:37,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:05:38,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:05:38,059.059 INFO    ] time= 13/06/2026 05:05:38
[2026-06-13 05:05:38,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:05:38,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:05:38,187.187 INFO    ] No existing commands found in stream
[2026-06-13 05:05:43,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:05:43,201.201 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 05:05:44,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:05:44,694.694 INFO    ] Checking for system updates...
[2026-06-13 05:05:44,715.715 INFO    ] 200
[2026-06-13 05:05:44,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:44,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:44,751.751 INFO    ] No update needed
[2026-06-13 05:05:44,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 05:05:44,773.773 INFO    ] 200
[2026-06-13 05:05:44,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:44,798.798 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:05:44,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:44,837.837 INFO    ] No camera update needed
[2026-06-13 05:05:44,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:05:44,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:05:44,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:05:44,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:46,887.887 INFO    ] ================================================
[2026-06-13 05:05:46,902.902 INFO    ] Launching Daemon at Sat Jun 13 05:05:46 IST 2026
[2026-06-13 05:05:46,913.913 INFO    ] ================================================
[2026-06-13 05:05:47,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:47
[2026-06-13 05:05:47,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:47,738.738 INFO    ] Initializing speech engine...
[2026-06-13 05:05:47,745.745 INFO    ] 2026-06-13 05:05:47
[2026-06-13 05:05:47,949.949 INFO    ] 2026-06-13 05:05:47
[2026-06-13 05:05:47,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:05:48,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:05:48,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:05:48,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:05:48,354.354 INFO    ] time= 13/06/2026 05:05:48
[2026-06-13 05:05:48,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:05:48,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:05:48,464.464 INFO    ] No existing commands found in stream
[2026-06-13 05:05:53,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:05:53,476.476 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 05:05:56,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:05:56,857.857 INFO    ] Checking for system updates...
[2026-06-13 05:05:56,880.880 INFO    ] 200
[2026-06-13 05:05:56,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:56,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:56,915.915 INFO    ] No update needed
[2026-06-13 05:05:56,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 05:05:56,936.936 INFO    ] 200
[2026-06-13 05:05:56,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:05:56,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:05:57,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:05:57,012.012 INFO    ] No camera update needed
[2026-06-13 05:05:57,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:05:57,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:05:57,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:05:57,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:05:59,061.061 INFO    ] ================================================
[2026-06-13 05:05:59,076.076 INFO    ] Launching Daemon at Sat Jun 13 05:05:59 IST 2026
[2026-06-13 05:05:59,087.087 INFO    ] ================================================
[2026-06-13 05:05:59,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:05:59
[2026-06-13 05:05:59,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:05:59,874.874 INFO    ] Initializing speech engine...
[2026-06-13 05:05:59,878.878 INFO    ] 2026-06-13 05:05:59
[2026-06-13 05:06:00,110.110 INFO    ] 2026-06-13 05:06:00
[2026-06-13 05:06:00,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:06:00,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:06:00,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:06:00,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:06:00,555.555 INFO    ] time= 13/06/2026 05:06:00
[2026-06-13 05:06:00,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:06:00,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:06:00,667.667 INFO    ] No existing commands found in stream
[2026-06-13 05:06:05,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:06:05,681.681 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 05:06:09,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:06:09,921.921 INFO    ] Checking for system updates...
[2026-06-13 05:06:09,942.942 INFO    ] 200
[2026-06-13 05:06:09,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:09,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:09,975.975 INFO    ] No update needed
[2026-06-13 05:06:09,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 05:06:09,997.997 INFO    ] 200
[2026-06-13 05:06:09,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:10,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:06:10,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:10,057.057 INFO    ] No camera update needed
[2026-06-13 05:06:10,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:06:10,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:06:10,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:06:10,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:06:12,105.105 INFO    ] ================================================
[2026-06-13 05:06:12,121.121 INFO    ] Launching Daemon at Sat Jun 13 05:06:12 IST 2026
[2026-06-13 05:06:12,132.132 INFO    ] ================================================
[2026-06-13 05:06:12,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:06:12
[2026-06-13 05:06:12,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:06:12,974.974 INFO    ] Initializing speech engine...
[2026-06-13 05:06:12,980.980 INFO    ] 2026-06-13 05:06:12
[2026-06-13 05:06:13,189.189 INFO    ] 2026-06-13 05:06:13
[2026-06-13 05:06:13,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:06:13,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:06:13,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:06:13,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:06:13,588.588 INFO    ] time= 13/06/2026 05:06:13
[2026-06-13 05:06:13,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:06:13,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:06:13,710.710 INFO    ] No existing commands found in stream
[2026-06-13 05:06:18,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:06:18,728.728 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 05:06:20,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:06:20,627.627 INFO    ] Checking for system updates...
[2026-06-13 05:06:20,648.648 INFO    ] 200
[2026-06-13 05:06:20,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:20,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:06:20,682.682 INFO    ] No update needed
[2026-06-13 05:06:20,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 05:06:20,705.705 INFO    ] 200
[2026-06-13 05:06:20,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:20,734.734 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:06:20,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:06:20,767.767 INFO    ] No camera update needed
[2026-06-13 05:06:20,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:06:20,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:06:20,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:06:20,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:06:22,816.816 INFO    ] ================================================
[2026-06-13 05:06:22,831.831 INFO    ] Launching Daemon at Sat Jun 13 05:06:22 IST 2026
[2026-06-13 05:06:22,842.842 INFO    ] ================================================
[2026-06-13 05:06:23,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:06:23
[2026-06-13 05:06:23,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:06:23,635.635 INFO    ] Initializing speech engine...
[2026-06-13 05:06:23,638.638 INFO    ] 2026-06-13 05:06:23
[2026-06-13 05:06:23,866.866 INFO    ] 2026-06-13 05:06:23
[2026-06-13 05:06:23,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:06:24,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:06:24,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:06:24,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:06:24,269.269 INFO    ] time= 13/06/2026 05:06:24
[2026-06-13 05:06:24,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:06:24,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:06:24,378.378 INFO    ] No existing commands found in stream
[2026-06-13 05:06:29,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:06:29,392.392 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 05:06:32,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:06:32,653.653 INFO    ] Checking for system updates...
[2026-06-13 05:06:32,674.674 INFO    ] 200
[2026-06-13 05:06:32,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:32,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:06:32,719.719 INFO    ] No update needed
[2026-06-13 05:06:32,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 05:06:32,741.741 INFO    ] 200
[2026-06-13 05:06:32,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:32,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:06:32,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:06:32,795.795 INFO    ] No camera update needed
[2026-06-13 05:06:32,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:06:32,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:06:32,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:06:32,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:06:34,842.842 INFO    ] ================================================
[2026-06-13 05:06:34,857.857 INFO    ] Launching Daemon at Sat Jun 13 05:06:34 IST 2026
[2026-06-13 05:06:34,868.868 INFO    ] ================================================
[2026-06-13 05:06:35,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:06:35
[2026-06-13 05:06:35,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:06:35,661.661 INFO    ] Initializing speech engine...
[2026-06-13 05:06:35,666.666 INFO    ] 2026-06-13 05:06:35
[2026-06-13 05:06:35,873.873 INFO    ] 2026-06-13 05:06:35
[2026-06-13 05:06:35,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:06:36,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:06:36,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:06:36,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:06:36,275.275 INFO    ] time= 13/06/2026 05:06:36
[2026-06-13 05:06:36,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:06:36,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:06:36,383.383 INFO    ] No existing commands found in stream
[2026-06-13 05:06:41,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:06:41,396.396 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 05:06:44,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:06:44,982.982 INFO    ] Checking for system updates...
[2026-06-13 05:06:45,002.002 INFO    ] 200
[2026-06-13 05:06:45,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:45,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:45,037.037 INFO    ] No update needed
[2026-06-13 05:06:45,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 05:06:45,058.058 INFO    ] 200
[2026-06-13 05:06:45,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:45,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:06:45,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:45,119.119 INFO    ] No camera update needed
[2026-06-13 05:06:45,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:06:45,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:06:45,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:06:45,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:06:47,160.160 INFO    ] ================================================
[2026-06-13 05:06:47,176.176 INFO    ] Launching Daemon at Sat Jun 13 05:06:47 IST 2026
[2026-06-13 05:06:47,187.187 INFO    ] ================================================
[2026-06-13 05:06:47,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:06:47
[2026-06-13 05:06:47,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:06:47,963.963 INFO    ] Initializing speech engine...
[2026-06-13 05:06:47,967.967 INFO    ] 2026-06-13 05:06:47
[2026-06-13 05:06:48,182.182 INFO    ] 2026-06-13 05:06:48
[2026-06-13 05:06:48,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:06:48,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:06:48,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:06:48,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:06:48,579.579 INFO    ] time= 13/06/2026 05:06:48
[2026-06-13 05:06:48,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:06:48,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:06:48,791.791 INFO    ] No existing commands found in stream
[2026-06-13 05:06:53,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:06:53,824.824 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 05:06:57,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:06:57,167.167 INFO    ] Checking for system updates...
[2026-06-13 05:06:57,188.188 INFO    ] 200
[2026-06-13 05:06:57,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:57,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:57,221.221 INFO    ] No update needed
[2026-06-13 05:06:57,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 05:06:57,242.242 INFO    ] 200
[2026-06-13 05:06:57,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:06:57,268.268 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:06:57,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:06:57,306.306 INFO    ] No camera update needed
[2026-06-13 05:06:57,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:06:57,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:06:57,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:06:57,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:06:59,353.353 INFO    ] ================================================
[2026-06-13 05:06:59,369.369 INFO    ] Launching Daemon at Sat Jun 13 05:06:59 IST 2026
[2026-06-13 05:06:59,380.380 INFO    ] ================================================
[2026-06-13 05:06:59,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:06:59
[2026-06-13 05:07:00,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:00,237.237 INFO    ] Initializing speech engine...
[2026-06-13 05:07:00,248.248 INFO    ] 2026-06-13 05:07:00
[2026-06-13 05:07:00,459.459 INFO    ] 2026-06-13 05:07:00
[2026-06-13 05:07:00,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:00,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:00,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:00,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:00,871.871 INFO    ] time= 13/06/2026 05:07:00
[2026-06-13 05:07:00,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:00,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:00,975.975 INFO    ] No existing commands found in stream
[2026-06-13 05:07:05,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:07:05,989.989 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 05:07:07,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:07:07,654.654 INFO    ] Checking for system updates...
[2026-06-13 05:07:07,676.676 INFO    ] 200
[2026-06-13 05:07:07,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:07,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:07,709.709 INFO    ] No update needed
[2026-06-13 05:07:07,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 05:07:07,730.730 INFO    ] 200
[2026-06-13 05:07:07,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:07,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:07:07,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:07,796.796 INFO    ] No camera update needed
[2026-06-13 05:07:07,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:07:07,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:07:07,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:07:07,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:07:09,843.843 INFO    ] ================================================
[2026-06-13 05:07:09,859.859 INFO    ] Launching Daemon at Sat Jun 13 05:07:09 IST 2026
[2026-06-13 05:07:09,870.870 INFO    ] ================================================
[2026-06-13 05:07:10,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:07:10
[2026-06-13 05:07:10,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:10,675.675 INFO    ] Initializing speech engine...
[2026-06-13 05:07:10,679.679 INFO    ] 2026-06-13 05:07:10
[2026-06-13 05:07:10,874.874 INFO    ] 2026-06-13 05:07:10
[2026-06-13 05:07:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:11,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:11,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:11,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:11,184.184 INFO    ] time= 13/06/2026 05:07:11
[2026-06-13 05:07:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:11,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:11,358.358 INFO    ] No existing commands found in stream
[2026-06-13 05:07:16,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:07:16,380.380 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 05:07:19,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:07:19,505.505 INFO    ] Checking for system updates...
[2026-06-13 05:07:19,542.542 INFO    ] 200
[2026-06-13 05:07:19,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:19,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:07:19,606.606 INFO    ] No update needed
[2026-06-13 05:07:19,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 05:07:19,629.629 INFO    ] 200
[2026-06-13 05:07:19,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:19,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:07:19,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:07:19,703.703 INFO    ] No camera update needed
[2026-06-13 05:07:19,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:07:19,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:07:19,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:07:19,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:07:21,751.751 INFO    ] ================================================
[2026-06-13 05:07:21,766.766 INFO    ] Launching Daemon at Sat Jun 13 05:07:21 IST 2026
[2026-06-13 05:07:21,777.777 INFO    ] ================================================
[2026-06-13 05:07:22,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:07:22
[2026-06-13 05:07:22,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:23,143.143 INFO    ] Initializing speech engine...
[2026-06-13 05:07:23,152.152 INFO    ] 2026-06-13 05:07:23
[2026-06-13 05:07:23,402.402 INFO    ] 2026-06-13 05:07:23
[2026-06-13 05:07:23,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:23,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:23,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:23,746.746 INFO    ] time= 13/06/2026 05:07:23
[2026-06-13 05:07:23,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:23,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:23,861.861 INFO    ] No existing commands found in stream
[2026-06-13 05:07:28,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:07:28,876.876 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 05:07:31,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:07:31,472.472 INFO    ] Checking for system updates...
[2026-06-13 05:07:31,494.494 INFO    ] 200
[2026-06-13 05:07:31,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:31,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:31,530.530 INFO    ] No update needed
[2026-06-13 05:07:31,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 05:07:31,552.552 INFO    ] 200
[2026-06-13 05:07:31,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:31,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:07:31,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:31,602.602 INFO    ] No camera update needed
[2026-06-13 05:07:31,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:07:31,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:07:31,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:07:31,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:07:33,645.645 INFO    ] ================================================
[2026-06-13 05:07:33,661.661 INFO    ] Launching Daemon at Sat Jun 13 05:07:33 IST 2026
[2026-06-13 05:07:33,672.672 INFO    ] ================================================
[2026-06-13 05:07:34,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:07:34
[2026-06-13 05:07:34,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:34,464.464 INFO    ] Initializing speech engine...
[2026-06-13 05:07:34,473.473 INFO    ] 2026-06-13 05:07:34
[2026-06-13 05:07:34,693.693 INFO    ] 2026-06-13 05:07:34
[2026-06-13 05:07:34,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:34,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:34,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:34,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:34,944.944 INFO    ] time= 13/06/2026 05:07:34
[2026-06-13 05:07:34,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:34,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:35,033.033 INFO    ] No existing commands found in stream
[2026-06-13 05:07:40,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:07:40,070.070 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 05:07:41,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:07:41,720.720 INFO    ] Checking for system updates...
[2026-06-13 05:07:41,741.741 INFO    ] 200
[2026-06-13 05:07:41,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:41,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:07:41,774.774 INFO    ] No update needed
[2026-06-13 05:07:41,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 05:07:41,796.796 INFO    ] 200
[2026-06-13 05:07:41,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:41,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:07:41,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:07:41,860.860 INFO    ] No camera update needed
[2026-06-13 05:07:41,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:07:41,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:07:41,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:07:41,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:07:43,908.908 INFO    ] ================================================
[2026-06-13 05:07:43,924.924 INFO    ] Launching Daemon at Sat Jun 13 05:07:43 IST 2026
[2026-06-13 05:07:43,935.935 INFO    ] ================================================
[2026-06-13 05:07:44,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:07:44
[2026-06-13 05:07:44,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:44,989.989 INFO    ] Initializing speech engine...
[2026-06-13 05:07:44,997.997 INFO    ] 2026-06-13 05:07:44
[2026-06-13 05:07:45,300.300 INFO    ] 2026-06-13 05:07:45
[2026-06-13 05:07:45,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:45,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:45,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:45,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:45,657.657 INFO    ] time= 13/06/2026 05:07:45
[2026-06-13 05:07:45,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:45,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:45,732.732 INFO    ] No existing commands found in stream
[2026-06-13 05:07:50,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:07:50,774.774 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 05:07:53,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:07:53,655.655 INFO    ] Checking for system updates...
[2026-06-13 05:07:53,692.692 INFO    ] 200
[2026-06-13 05:07:53,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:53,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:53,748.748 INFO    ] No update needed
[2026-06-13 05:07:53,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 05:07:53,773.773 INFO    ] 200
[2026-06-13 05:07:53,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:07:53,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:07:53,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:07:53,841.841 INFO    ] No camera update needed
[2026-06-13 05:07:53,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:07:53,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:07:53,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:07:53,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:07:55,888.888 INFO    ] ================================================
[2026-06-13 05:07:55,904.904 INFO    ] Launching Daemon at Sat Jun 13 05:07:55 IST 2026
[2026-06-13 05:07:55,917.917 INFO    ] ================================================
[2026-06-13 05:07:56,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:07:56
[2026-06-13 05:07:56,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:07:56,765.765 INFO    ] Initializing speech engine...
[2026-06-13 05:07:56,770.770 INFO    ] 2026-06-13 05:07:56
[2026-06-13 05:07:56,974.974 INFO    ] 2026-06-13 05:07:56
[2026-06-13 05:07:57,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:07:57,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:07:57,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:07:57,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:07:57,362.362 INFO    ] time= 13/06/2026 05:07:57
[2026-06-13 05:07:57,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:07:57,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:07:57,487.487 INFO    ] No existing commands found in stream
[2026-06-13 05:08:02,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:08:02,499.499 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 05:08:03,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:08:03,630.630 INFO    ] Checking for system updates...
[2026-06-13 05:08:03,666.666 INFO    ] 200
[2026-06-13 05:08:03,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:03,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:08:03,733.733 INFO    ] No update needed
[2026-06-13 05:08:03,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 05:08:03,770.770 INFO    ] 200
[2026-06-13 05:08:03,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:03,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:08:03,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:08:03,860.860 INFO    ] No camera update needed
[2026-06-13 05:08:03,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:08:03,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:08:03,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:08:03,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:08:05,919.919 INFO    ] ================================================
[2026-06-13 05:08:05,935.935 INFO    ] Launching Daemon at Sat Jun 13 05:08:05 IST 2026
[2026-06-13 05:08:05,946.946 INFO    ] ================================================
[2026-06-13 05:08:06,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:08:06
[2026-06-13 05:08:06,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:08:06,727.727 INFO    ] Initializing speech engine...
[2026-06-13 05:08:06,732.732 INFO    ] 2026-06-13 05:08:06
[2026-06-13 05:08:06,949.949 INFO    ] 2026-06-13 05:08:06
[2026-06-13 05:08:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:08:07,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:08:07,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:08:07,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:08:07,355.355 INFO    ] time= 13/06/2026 05:08:07
[2026-06-13 05:08:07,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:08:07,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:08:07,496.496 INFO    ] No existing commands found in stream
[2026-06-13 05:08:12,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:08:12,524.524 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 05:08:15,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:08:15,870.870 INFO    ] Checking for system updates...
[2026-06-13 05:08:15,890.890 INFO    ] 200
[2026-06-13 05:08:15,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:15,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:08:15,923.923 INFO    ] No update needed
[2026-06-13 05:08:15,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 05:08:15,947.947 INFO    ] 200
[2026-06-13 05:08:15,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:15,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:08:16,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:08:16,019.019 INFO    ] No camera update needed
[2026-06-13 05:08:16,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:08:16,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:08:16,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:08:16,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:08:18,067.067 INFO    ] ================================================
[2026-06-13 05:08:18,082.082 INFO    ] Launching Daemon at Sat Jun 13 05:08:18 IST 2026
[2026-06-13 05:08:18,093.093 INFO    ] ================================================
[2026-06-13 05:08:18,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:08:18
[2026-06-13 05:08:18,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:08:18,987.987 INFO    ] Initializing speech engine...
[2026-06-13 05:08:18,993.993 INFO    ] 2026-06-13 05:08:18
[2026-06-13 05:08:19,201.201 INFO    ] 2026-06-13 05:08:19
[2026-06-13 05:08:19,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:08:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:08:19,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:08:19,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:08:19,596.596 INFO    ] time= 13/06/2026 05:08:19
[2026-06-13 05:08:19,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:08:19,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:08:19,717.717 INFO    ] No existing commands found in stream
[2026-06-13 05:08:24,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:08:24,750.750 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 05:08:25,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:08:25,310.310 INFO    ] Checking for system updates...
[2026-06-13 05:08:25,335.335 INFO    ] 200
[2026-06-13 05:08:25,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:25,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:25,371.371 INFO    ] No update needed
[2026-06-13 05:08:25,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 05:08:25,393.393 INFO    ] 200
[2026-06-13 05:08:25,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:25,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:08:25,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:25,456.456 INFO    ] No camera update needed
[2026-06-13 05:08:25,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:08:25,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:08:25,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:08:25,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:08:27,504.504 INFO    ] ================================================
[2026-06-13 05:08:27,519.519 INFO    ] Launching Daemon at Sat Jun 13 05:08:27 IST 2026
[2026-06-13 05:08:27,530.530 INFO    ] ================================================
[2026-06-13 05:08:27,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:08:27
[2026-06-13 05:08:28,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:08:28,410.410 INFO    ] Initializing speech engine...
[2026-06-13 05:08:28,415.415 INFO    ] 2026-06-13 05:08:28
[2026-06-13 05:08:28,622.622 INFO    ] 2026-06-13 05:08:28
[2026-06-13 05:08:28,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:08:28,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:08:28,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:08:28,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:08:29,032.032 INFO    ] time= 13/06/2026 05:08:28
[2026-06-13 05:08:29,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:08:29,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:08:29,137.137 INFO    ] No existing commands found in stream
[2026-06-13 05:08:34,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:08:34,151.151 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 05:08:38,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:08:38,478.478 INFO    ] Checking for system updates...
[2026-06-13 05:08:38,501.501 INFO    ] 200
[2026-06-13 05:08:38,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:38,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:38,534.534 INFO    ] No update needed
[2026-06-13 05:08:38,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 05:08:38,559.559 INFO    ] 200
[2026-06-13 05:08:38,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:38,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:08:38,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:38,734.734 INFO    ] No camera update needed
[2026-06-13 05:08:38,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:08:38,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:08:38,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:08:38,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:08:40,781.781 INFO    ] ================================================
[2026-06-13 05:08:40,797.797 INFO    ] Launching Daemon at Sat Jun 13 05:08:40 IST 2026
[2026-06-13 05:08:40,809.809 INFO    ] ================================================
[2026-06-13 05:08:41,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:08:41
[2026-06-13 05:08:41,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:08:41,627.627 INFO    ] Initializing speech engine...
[2026-06-13 05:08:41,636.636 INFO    ] 2026-06-13 05:08:41
[2026-06-13 05:08:41,857.857 INFO    ] 2026-06-13 05:08:41
[2026-06-13 05:08:41,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:08:42,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:08:42,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:08:42,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:08:42,274.274 INFO    ] time= 13/06/2026 05:08:42
[2026-06-13 05:08:42,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:08:42,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:08:42,417.417 INFO    ] No existing commands found in stream
[2026-06-13 05:08:47,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:08:47,430.430 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 05:08:51,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:08:51,474.474 INFO    ] Checking for system updates...
[2026-06-13 05:08:51,495.495 INFO    ] 200
[2026-06-13 05:08:51,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:51,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:51,528.528 INFO    ] No update needed
[2026-06-13 05:08:51,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 05:08:51,550.550 INFO    ] 200
[2026-06-13 05:08:51,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:08:51,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:08:51,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:08:51,616.616 INFO    ] No camera update needed
[2026-06-13 05:08:51,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:08:51,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:08:51,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:08:51,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:08:53,664.664 INFO    ] ================================================
[2026-06-13 05:08:53,679.679 INFO    ] Launching Daemon at Sat Jun 13 05:08:53 IST 2026
[2026-06-13 05:08:53,690.690 INFO    ] ================================================
[2026-06-13 05:08:54,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:08:54
[2026-06-13 05:08:54,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:08:54,495.495 INFO    ] Initializing speech engine...
[2026-06-13 05:08:54,500.500 INFO    ] 2026-06-13 05:08:54
[2026-06-13 05:08:54,705.705 INFO    ] 2026-06-13 05:08:54
[2026-06-13 05:08:54,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:08:54,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:08:54,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:08:55,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:08:55,023.023 INFO    ] time= 13/06/2026 05:08:55
[2026-06-13 05:08:55,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:08:55,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:08:55,148.148 INFO    ] No existing commands found in stream
[2026-06-13 05:09:00,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:00,178.178 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 05:09:02,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:09:02,436.436 INFO    ] Checking for system updates...
[2026-06-13 05:09:02,469.469 INFO    ] 200
[2026-06-13 05:09:02,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:02,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:09:02,512.512 INFO    ] No update needed
[2026-06-13 05:09:02,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:02,540.540 INFO    ] 200
[2026-06-13 05:09:02,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:02,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:02,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:09:02,595.595 INFO    ] No camera update needed
[2026-06-13 05:09:02,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:02,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:02,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:02,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:04,647.647 INFO    ] ================================================
[2026-06-13 05:09:04,663.663 INFO    ] Launching Daemon at Sat Jun 13 05:09:04 IST 2026
[2026-06-13 05:09:04,673.673 INFO    ] ================================================
[2026-06-13 05:09:05,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:05
[2026-06-13 05:09:05,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:06,139.139 INFO    ] Initializing speech engine...
[2026-06-13 05:09:06,164.164 INFO    ] 2026-06-13 05:09:06
[2026-06-13 05:09:06,386.386 INFO    ] 2026-06-13 05:09:06
[2026-06-13 05:09:06,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:06,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:06,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:06,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:06,753.753 INFO    ] time= 13/06/2026 05:09:06
[2026-06-13 05:09:06,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:06,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:06,860.860 INFO    ] No existing commands found in stream
[2026-06-13 05:09:11,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:11,888.888 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 05:09:12,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:09:12,284.284 INFO    ] Checking for system updates...
[2026-06-13 05:09:12,306.306 INFO    ] 200
[2026-06-13 05:09:12,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:12,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:09:12,341.341 INFO    ] No update needed
[2026-06-13 05:09:12,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:12,362.362 INFO    ] 200
[2026-06-13 05:09:12,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:12,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:12,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:09:12,429.429 INFO    ] No camera update needed
[2026-06-13 05:09:12,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:12,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:12,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:12,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:14,479.479 INFO    ] ================================================
[2026-06-13 05:09:14,495.495 INFO    ] Launching Daemon at Sat Jun 13 05:09:14 IST 2026
[2026-06-13 05:09:14,507.507 INFO    ] ================================================
[2026-06-13 05:09:14,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:14
[2026-06-13 05:09:15,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:15,316.316 INFO    ] Initializing speech engine...
[2026-06-13 05:09:15,324.324 INFO    ] 2026-06-13 05:09:15
[2026-06-13 05:09:15,548.548 INFO    ] 2026-06-13 05:09:15
[2026-06-13 05:09:15,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:15,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:15,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:15,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:15,978.978 INFO    ] time= 13/06/2026 05:09:15
[2026-06-13 05:09:16,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:16,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:16,106.106 INFO    ] No existing commands found in stream
[2026-06-13 05:09:21,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:21,113.113 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 05:09:21,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:09:21,976.976 INFO    ] Checking for system updates...
[2026-06-13 05:09:21,996.996 INFO    ] 200
[2026-06-13 05:09:21,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:22,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:22,030.030 INFO    ] No update needed
[2026-06-13 05:09:22,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:22,054.054 INFO    ] 200
[2026-06-13 05:09:22,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:22,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:22,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:22,124.124 INFO    ] No camera update needed
[2026-06-13 05:09:22,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:22,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:22,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:22,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:24,172.172 INFO    ] ================================================
[2026-06-13 05:09:24,188.188 INFO    ] Launching Daemon at Sat Jun 13 05:09:24 IST 2026
[2026-06-13 05:09:24,198.198 INFO    ] ================================================
[2026-06-13 05:09:24,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:24
[2026-06-13 05:09:24,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:25,077.077 INFO    ] Initializing speech engine...
[2026-06-13 05:09:25,087.087 INFO    ] 2026-06-13 05:09:25
[2026-06-13 05:09:25,296.296 INFO    ] 2026-06-13 05:09:25
[2026-06-13 05:09:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:25,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:25,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:25,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:25,706.706 INFO    ] time= 13/06/2026 05:09:25
[2026-06-13 05:09:25,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:25,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:25,817.817 INFO    ] No existing commands found in stream
[2026-06-13 05:09:30,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:30,834.834 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 05:09:32,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:09:32,597.597 INFO    ] Checking for system updates...
[2026-06-13 05:09:32,625.625 INFO    ] 200
[2026-06-13 05:09:32,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:32,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:32,667.667 INFO    ] No update needed
[2026-06-13 05:09:32,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:32,694.694 INFO    ] 200
[2026-06-13 05:09:32,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:32,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:32,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:32,747.747 INFO    ] No camera update needed
[2026-06-13 05:09:32,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:32,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:32,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:32,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:34,794.794 INFO    ] ================================================
[2026-06-13 05:09:34,809.809 INFO    ] Launching Daemon at Sat Jun 13 05:09:34 IST 2026
[2026-06-13 05:09:34,820.820 INFO    ] ================================================
[2026-06-13 05:09:35,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:35
[2026-06-13 05:09:35,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:35,633.633 INFO    ] Initializing speech engine...
[2026-06-13 05:09:35,646.646 INFO    ] 2026-06-13 05:09:35
[2026-06-13 05:09:35,864.864 INFO    ] 2026-06-13 05:09:35
[2026-06-13 05:09:35,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:36,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:36,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:36,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:36,293.293 INFO    ] time= 13/06/2026 05:09:36
[2026-06-13 05:09:36,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:36,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:36,423.423 INFO    ] No existing commands found in stream
[2026-06-13 05:09:41,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:41,435.435 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 05:09:42,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:09:42,310.310 INFO    ] Checking for system updates...
[2026-06-13 05:09:42,332.332 INFO    ] 200
[2026-06-13 05:09:42,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:42,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:42,369.369 INFO    ] No update needed
[2026-06-13 05:09:42,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:42,392.392 INFO    ] 200
[2026-06-13 05:09:42,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:42,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:42,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:09:42,458.458 INFO    ] No camera update needed
[2026-06-13 05:09:42,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:42,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:42,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:42,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:44,506.506 INFO    ] ================================================
[2026-06-13 05:09:44,521.521 INFO    ] Launching Daemon at Sat Jun 13 05:09:44 IST 2026
[2026-06-13 05:09:44,532.532 INFO    ] ================================================
[2026-06-13 05:09:44,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:44
[2026-06-13 05:09:45,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:45,334.334 INFO    ] Initializing speech engine...
[2026-06-13 05:09:45,347.347 INFO    ] 2026-06-13 05:09:45
[2026-06-13 05:09:45,567.567 INFO    ] 2026-06-13 05:09:45
[2026-06-13 05:09:45,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:45,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:45,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:45,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:45,940.940 INFO    ] time= 13/06/2026 05:09:45
[2026-06-13 05:09:45,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:46,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:46,129.129 INFO    ] No existing commands found in stream
[2026-06-13 05:09:51,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:09:51,143.143 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 05:09:54,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:09:54,169.169 INFO    ] Checking for system updates...
[2026-06-13 05:09:54,190.190 INFO    ] 200
[2026-06-13 05:09:54,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:54,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:54,223.223 INFO    ] No update needed
[2026-06-13 05:09:54,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 05:09:54,244.244 INFO    ] 200
[2026-06-13 05:09:54,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:09:54,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:09:54,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:09:54,312.312 INFO    ] No camera update needed
[2026-06-13 05:09:54,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:09:54,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:09:54,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:09:54,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:09:56,360.360 INFO    ] ================================================
[2026-06-13 05:09:56,376.376 INFO    ] Launching Daemon at Sat Jun 13 05:09:56 IST 2026
[2026-06-13 05:09:56,387.387 INFO    ] ================================================
[2026-06-13 05:09:56,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:09:56
[2026-06-13 05:09:57,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:09:57,202.202 INFO    ] Initializing speech engine...
[2026-06-13 05:09:57,213.213 INFO    ] 2026-06-13 05:09:57
[2026-06-13 05:09:57,429.429 INFO    ] 2026-06-13 05:09:57
[2026-06-13 05:09:57,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:09:57,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:09:57,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:09:57,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:09:57,839.839 INFO    ] time= 13/06/2026 05:09:57
[2026-06-13 05:09:57,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:09:57,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:09:57,988.988 INFO    ] No existing commands found in stream
[2026-06-13 05:10:02,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:10:03,002.002 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 05:10:08,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:10:08,848.848 INFO    ] Checking for system updates...
[2026-06-13 05:10:08,885.885 INFO    ] 200
[2026-06-13 05:10:08,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:08,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:10:08,943.943 INFO    ] No update needed
[2026-06-13 05:10:08,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 05:10:08,979.979 INFO    ] 200
[2026-06-13 05:10:08,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:09,017.017 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:10:09,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:10:09,057.057 INFO    ] No camera update needed
[2026-06-13 05:10:09,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:10:09,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:10:09,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:10:09,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:10:11,104.104 INFO    ] ================================================
[2026-06-13 05:10:11,120.120 INFO    ] Launching Daemon at Sat Jun 13 05:10:11 IST 2026
[2026-06-13 05:10:11,131.131 INFO    ] ================================================
[2026-06-13 05:10:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:10:11
[2026-06-13 05:10:11,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:10:11,943.943 INFO    ] Initializing speech engine...
[2026-06-13 05:10:11,947.947 INFO    ] 2026-06-13 05:10:11
[2026-06-13 05:10:12,149.149 INFO    ] 2026-06-13 05:10:12
[2026-06-13 05:10:12,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:10:12,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:10:12,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:10:12,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:10:12,564.564 INFO    ] time= 13/06/2026 05:10:12
[2026-06-13 05:10:12,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:10:12,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:10:12,662.662 INFO    ] No existing commands found in stream
[2026-06-13 05:10:17,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:10:17,675.675 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 05:10:20,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:10:20,098.098 INFO    ] Checking for system updates...
[2026-06-13 05:10:20,119.119 INFO    ] 200
[2026-06-13 05:10:20,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:20,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:10:20,154.154 INFO    ] No update needed
[2026-06-13 05:10:20,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 05:10:20,178.178 INFO    ] 200
[2026-06-13 05:10:20,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:20,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:10:20,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:10:20,247.247 INFO    ] No camera update needed
[2026-06-13 05:10:20,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:10:20,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:10:20,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:10:20,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:10:22,295.295 INFO    ] ================================================
[2026-06-13 05:10:22,311.311 INFO    ] Launching Daemon at Sat Jun 13 05:10:22 IST 2026
[2026-06-13 05:10:22,322.322 INFO    ] ================================================
[2026-06-13 05:10:22,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:10:22
[2026-06-13 05:10:22,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:10:23,137.137 INFO    ] Initializing speech engine...
[2026-06-13 05:10:23,142.142 INFO    ] 2026-06-13 05:10:23
[2026-06-13 05:10:23,348.348 INFO    ] 2026-06-13 05:10:23
[2026-06-13 05:10:23,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:10:23,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:10:23,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:10:23,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:10:23,752.752 INFO    ] time= 13/06/2026 05:10:23
[2026-06-13 05:10:23,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:10:23,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:10:23,860.860 INFO    ] No existing commands found in stream
[2026-06-13 05:10:28,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:10:28,874.874 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 05:10:30,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:10:30,858.858 INFO    ] Checking for system updates...
[2026-06-13 05:10:30,880.880 INFO    ] 200
[2026-06-13 05:10:30,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:30,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:10:30,914.914 INFO    ] No update needed
[2026-06-13 05:10:30,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 05:10:30,934.934 INFO    ] 200
[2026-06-13 05:10:30,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:30,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:10:30,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:10:30,999.999 INFO    ] No camera update needed
[2026-06-13 05:10:31,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:10:31,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:10:31,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:10:31,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:10:33,041.041 INFO    ] ================================================
[2026-06-13 05:10:33,057.057 INFO    ] Launching Daemon at Sat Jun 13 05:10:33 IST 2026
[2026-06-13 05:10:33,068.068 INFO    ] ================================================
[2026-06-13 05:10:33,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:10:33
[2026-06-13 05:10:33,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:10:33,884.884 INFO    ] Initializing speech engine...
[2026-06-13 05:10:33,889.889 INFO    ] 2026-06-13 05:10:33
[2026-06-13 05:10:34,091.091 INFO    ] 2026-06-13 05:10:34
[2026-06-13 05:10:34,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:10:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:10:34,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:10:34,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:10:34,509.509 INFO    ] time= 13/06/2026 05:10:34
[2026-06-13 05:10:34,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:10:34,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:10:34,605.605 INFO    ] No existing commands found in stream
[2026-06-13 05:10:39,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:10:39,617.617 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 05:10:43,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:10:43,939.939 INFO    ] Checking for system updates...
[2026-06-13 05:10:43,961.961 INFO    ] 200
[2026-06-13 05:10:43,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:43,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:10:43,995.995 INFO    ] No update needed
[2026-06-13 05:10:43,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 05:10:44,017.017 INFO    ] 200
[2026-06-13 05:10:44,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:44,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:10:44,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:10:44,195.195 INFO    ] No camera update needed
[2026-06-13 05:10:44,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:10:44,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:10:44,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:10:44,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:10:46,244.244 INFO    ] ================================================
[2026-06-13 05:10:46,260.260 INFO    ] Launching Daemon at Sat Jun 13 05:10:46 IST 2026
[2026-06-13 05:10:46,271.271 INFO    ] ================================================
[2026-06-13 05:10:46,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:10:46
[2026-06-13 05:10:46,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:10:47,067.067 INFO    ] Initializing speech engine...
[2026-06-13 05:10:47,073.073 INFO    ] 2026-06-13 05:10:47
[2026-06-13 05:10:47,277.277 INFO    ] 2026-06-13 05:10:47
[2026-06-13 05:10:47,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:10:47,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:10:47,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:10:47,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:10:47,685.685 INFO    ] time= 13/06/2026 05:10:47
[2026-06-13 05:10:47,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:10:47,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:10:47,790.790 INFO    ] No existing commands found in stream
[2026-06-13 05:10:52,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:10:52,802.802 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 05:10:54,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:10:54,012.012 INFO    ] Checking for system updates...
[2026-06-13 05:10:54,033.033 INFO    ] 200
[2026-06-13 05:10:54,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:54,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:10:54,067.067 INFO    ] No update needed
[2026-06-13 05:10:54,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 05:10:54,088.088 INFO    ] 200
[2026-06-13 05:10:54,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:10:54,114.114 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:10:54,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:10:54,155.155 INFO    ] No camera update needed
[2026-06-13 05:10:54,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:10:54,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:10:54,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:10:54,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:10:56,206.206 INFO    ] ================================================
[2026-06-13 05:10:56,221.221 INFO    ] Launching Daemon at Sat Jun 13 05:10:56 IST 2026
[2026-06-13 05:10:56,232.232 INFO    ] ================================================
[2026-06-13 05:10:56,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:10:56
[2026-06-13 05:10:56,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:10:57,038.038 INFO    ] Initializing speech engine...
[2026-06-13 05:10:57,044.044 INFO    ] 2026-06-13 05:10:57
[2026-06-13 05:10:57,252.252 INFO    ] 2026-06-13 05:10:57
[2026-06-13 05:10:57,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:10:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:10:57,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:10:57,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:10:57,657.657 INFO    ] time= 13/06/2026 05:10:57
[2026-06-13 05:10:57,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:10:57,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:10:57,765.765 INFO    ] No existing commands found in stream
[2026-06-13 05:11:02,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:02,776.776 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 05:11:04,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:11:04,016.016 INFO    ] Checking for system updates...
[2026-06-13 05:11:04,036.036 INFO    ] 200
[2026-06-13 05:11:04,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:04,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:04,070.070 INFO    ] No update needed
[2026-06-13 05:11:04,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:04,092.092 INFO    ] 200
[2026-06-13 05:11:04,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:04,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:04,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:04,159.159 INFO    ] No camera update needed
[2026-06-13 05:11:04,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:04,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:04,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:04,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:11:06,207.207 INFO    ] ================================================
[2026-06-13 05:11:06,223.223 INFO    ] Launching Daemon at Sat Jun 13 05:11:06 IST 2026
[2026-06-13 05:11:06,234.234 INFO    ] ================================================
[2026-06-13 05:11:06,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:11:06
[2026-06-13 05:11:07,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:11:07,507.507 INFO    ] Initializing speech engine...
[2026-06-13 05:11:07,516.516 INFO    ] 2026-06-13 05:11:07
[2026-06-13 05:11:07,811.811 INFO    ] 2026-06-13 05:11:07
[2026-06-13 05:11:07,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:11:08,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:11:08,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:11:08,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:11:08,191.191 INFO    ] time= 13/06/2026 05:11:08
[2026-06-13 05:11:08,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:11:08,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:11:08,315.315 INFO    ] No existing commands found in stream
[2026-06-13 05:11:13,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:13,331.331 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 05:11:15,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:11:15,964.964 INFO    ] Checking for system updates...
[2026-06-13 05:11:15,984.984 INFO    ] 200
[2026-06-13 05:11:15,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:16,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:16,018.018 INFO    ] No update needed
[2026-06-13 05:11:16,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:16,040.040 INFO    ] 200
[2026-06-13 05:11:16,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:16,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:16,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:16,106.106 INFO    ] No camera update needed
[2026-06-13 05:11:16,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:16,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:16,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:16,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:11:18,154.154 INFO    ] ================================================
[2026-06-13 05:11:18,169.169 INFO    ] Launching Daemon at Sat Jun 13 05:11:18 IST 2026
[2026-06-13 05:11:18,180.180 INFO    ] ================================================
[2026-06-13 05:11:18,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:11:18
[2026-06-13 05:11:18,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:11:19,046.046 INFO    ] Initializing speech engine...
[2026-06-13 05:11:19,056.056 INFO    ] 2026-06-13 05:11:19
[2026-06-13 05:11:19,268.268 INFO    ] 2026-06-13 05:11:19
[2026-06-13 05:11:19,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:11:19,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:11:19,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:11:19,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:11:19,678.678 INFO    ] time= 13/06/2026 05:11:19
[2026-06-13 05:11:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:11:19,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:11:19,796.796 INFO    ] No existing commands found in stream
[2026-06-13 05:11:24,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:24,811.811 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 05:11:27,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:11:27,250.250 INFO    ] Checking for system updates...
[2026-06-13 05:11:27,270.270 INFO    ] 200
[2026-06-13 05:11:27,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:27,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:27,303.303 INFO    ] No update needed
[2026-06-13 05:11:27,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:27,324.324 INFO    ] 200
[2026-06-13 05:11:27,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:27,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:27,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:27,392.392 INFO    ] No camera update needed
[2026-06-13 05:11:27,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:27,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:27,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:27,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:11:29,441.441 INFO    ] ================================================
[2026-06-13 05:11:29,456.456 INFO    ] Launching Daemon at Sat Jun 13 05:11:29 IST 2026
[2026-06-13 05:11:29,468.468 INFO    ] ================================================
[2026-06-13 05:11:29,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:11:29
[2026-06-13 05:11:30,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:11:30,324.324 INFO    ] Initializing speech engine...
[2026-06-13 05:11:30,334.334 INFO    ] 2026-06-13 05:11:30
[2026-06-13 05:11:30,544.544 INFO    ] 2026-06-13 05:11:30
[2026-06-13 05:11:30,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:11:30,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:11:30,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:11:30,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:11:30,964.964 INFO    ] time= 13/06/2026 05:11:30
[2026-06-13 05:11:30,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:11:31,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:11:31,071.071 INFO    ] No existing commands found in stream
[2026-06-13 05:11:36,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:36,086.086 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 05:11:37,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:11:37,979.979 INFO    ] Checking for system updates...
[2026-06-13 05:11:38,001.001 INFO    ] 200
[2026-06-13 05:11:38,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:38,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:11:38,038.038 INFO    ] No update needed
[2026-06-13 05:11:38,039.039 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:38,059.059 INFO    ] 200
[2026-06-13 05:11:38,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:38,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:38,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:11:38,120.120 INFO    ] No camera update needed
[2026-06-13 05:11:38,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:38,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:38,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:38,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:11:40,169.169 INFO    ] ================================================
[2026-06-13 05:11:40,185.185 INFO    ] Launching Daemon at Sat Jun 13 05:11:40 IST 2026
[2026-06-13 05:11:40,195.195 INFO    ] ================================================
[2026-06-13 05:11:40,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:11:40
[2026-06-13 05:11:40,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:11:41,010.010 INFO    ] Initializing speech engine...
[2026-06-13 05:11:41,013.013 INFO    ] 2026-06-13 05:11:41
[2026-06-13 05:11:41,232.232 INFO    ] 2026-06-13 05:11:41
[2026-06-13 05:11:41,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:11:41,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:11:41,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:11:41,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:11:41,644.644 INFO    ] time= 13/06/2026 05:11:41
[2026-06-13 05:11:41,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:11:41,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:11:41,750.750 INFO    ] No existing commands found in stream
[2026-06-13 05:11:46,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:46,762.762 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 05:11:49,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:11:49,288.288 INFO    ] Checking for system updates...
[2026-06-13 05:11:49,309.309 INFO    ] 200
[2026-06-13 05:11:49,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:49,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:49,342.342 INFO    ] No update needed
[2026-06-13 05:11:49,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:49,362.362 INFO    ] 200
[2026-06-13 05:11:49,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:49,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:49,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:49,431.431 INFO    ] No camera update needed
[2026-06-13 05:11:49,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:49,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:49,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:49,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:11:51,479.479 INFO    ] ================================================
[2026-06-13 05:11:51,494.494 INFO    ] Launching Daemon at Sat Jun 13 05:11:51 IST 2026
[2026-06-13 05:11:51,505.505 INFO    ] ================================================
[2026-06-13 05:11:51,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:11:51
[2026-06-13 05:11:52,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:11:52,319.319 INFO    ] Initializing speech engine...
[2026-06-13 05:11:52,332.332 INFO    ] 2026-06-13 05:11:52
[2026-06-13 05:11:52,539.539 INFO    ] 2026-06-13 05:11:52
[2026-06-13 05:11:52,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:11:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:11:52,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:11:52,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:11:52,873.873 INFO    ] time= 13/06/2026 05:11:52
[2026-06-13 05:11:52,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:11:52,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:11:53,060.060 INFO    ] No existing commands found in stream
[2026-06-13 05:11:58,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:11:58,073.073 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 05:11:59,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:11:59,510.510 INFO    ] Checking for system updates...
[2026-06-13 05:11:59,530.530 INFO    ] 200
[2026-06-13 05:11:59,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:59,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:59,563.563 INFO    ] No update needed
[2026-06-13 05:11:59,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 05:11:59,584.584 INFO    ] 200
[2026-06-13 05:11:59,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:11:59,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:11:59,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:11:59,657.657 INFO    ] No camera update needed
[2026-06-13 05:11:59,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:11:59,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:11:59,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:11:59,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:12:01,704.704 INFO    ] ================================================
[2026-06-13 05:12:01,719.719 INFO    ] Launching Daemon at Sat Jun 13 05:12:01 IST 2026
[2026-06-13 05:12:01,730.730 INFO    ] ================================================
[2026-06-13 05:12:02,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:12:02
[2026-06-13 05:12:02,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:12:03,076.076 INFO    ] Initializing speech engine...
[2026-06-13 05:12:03,087.087 INFO    ] 2026-06-13 05:12:03
[2026-06-13 05:12:03,386.386 INFO    ] 2026-06-13 05:12:03
[2026-06-13 05:12:03,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:12:03,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:12:03,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:12:03,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:12:03,772.772 INFO    ] time= 13/06/2026 05:12:03
[2026-06-13 05:12:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:12:03,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:12:03,845.845 INFO    ] No existing commands found in stream
[2026-06-13 05:12:08,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:12:08,861.861 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 05:12:12,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:12:12,283.283 INFO    ] Checking for system updates...
[2026-06-13 05:12:12,304.304 INFO    ] 200
[2026-06-13 05:12:12,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:12,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:12:12,337.337 INFO    ] No update needed
[2026-06-13 05:12:12,338.338 INFO    ] Checking for camera pi updates...
[2026-06-13 05:12:12,358.358 INFO    ] 200
[2026-06-13 05:12:12,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:12,383.383 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:12:12,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:12:12,425.425 INFO    ] No camera update needed
[2026-06-13 05:12:12,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:12:12,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:12:12,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:12:12,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:12:14,472.472 INFO    ] ================================================
[2026-06-13 05:12:14,487.487 INFO    ] Launching Daemon at Sat Jun 13 05:12:14 IST 2026
[2026-06-13 05:12:14,498.498 INFO    ] ================================================
[2026-06-13 05:12:14,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:12:14
[2026-06-13 05:12:15,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:12:15,265.265 INFO    ] Initializing speech engine...
[2026-06-13 05:12:15,268.268 INFO    ] 2026-06-13 05:12:15
[2026-06-13 05:12:15,487.487 INFO    ] 2026-06-13 05:12:15
[2026-06-13 05:12:15,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:12:15,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:12:15,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:12:15,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:12:15,892.892 INFO    ] time= 13/06/2026 05:12:15
[2026-06-13 05:12:15,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:12:15,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:12:16,009.009 INFO    ] No existing commands found in stream
[2026-06-13 05:12:21,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:12:21,021.021 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 05:12:22,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:12:22,729.729 INFO    ] Checking for system updates...
[2026-06-13 05:12:22,749.749 INFO    ] 200
[2026-06-13 05:12:22,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:22,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:22,784.784 INFO    ] No update needed
[2026-06-13 05:12:22,785.785 INFO    ] Checking for camera pi updates...
[2026-06-13 05:12:22,805.805 INFO    ] 200
[2026-06-13 05:12:22,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:22,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:12:22,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:22,865.865 INFO    ] No camera update needed
[2026-06-13 05:12:22,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:12:22,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:12:22,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:12:22,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:12:24,914.914 INFO    ] ================================================
[2026-06-13 05:12:24,929.929 INFO    ] Launching Daemon at Sat Jun 13 05:12:24 IST 2026
[2026-06-13 05:12:24,939.939 INFO    ] ================================================
[2026-06-13 05:12:25,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:12:25
[2026-06-13 05:12:26,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:12:26,511.511 INFO    ] Initializing speech engine...
[2026-06-13 05:12:26,520.520 INFO    ] 2026-06-13 05:12:26
[2026-06-13 05:12:26,800.800 INFO    ] 2026-06-13 05:12:26
[2026-06-13 05:12:26,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:12:27,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:12:27,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:12:27,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:12:27,254.254 INFO    ] time= 13/06/2026 05:12:27
[2026-06-13 05:12:27,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:12:27,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:12:27,480.480 INFO    ] No existing commands found in stream
[2026-06-13 05:12:32,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:12:32,508.508 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 05:12:34,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:12:34,491.491 INFO    ] Checking for system updates...
[2026-06-13 05:12:34,512.512 INFO    ] 200
[2026-06-13 05:12:34,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:34,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:12:34,547.547 INFO    ] No update needed
[2026-06-13 05:12:34,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 05:12:34,569.569 INFO    ] 200
[2026-06-13 05:12:34,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:34,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:12:34,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:12:34,633.633 INFO    ] No camera update needed
[2026-06-13 05:12:34,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:12:34,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:12:34,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:12:34,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:12:36,680.680 INFO    ] ================================================
[2026-06-13 05:12:36,695.695 INFO    ] Launching Daemon at Sat Jun 13 05:12:36 IST 2026
[2026-06-13 05:12:36,706.706 INFO    ] ================================================
[2026-06-13 05:12:37,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:12:37
[2026-06-13 05:12:37,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:12:37,547.547 INFO    ] Initializing speech engine...
[2026-06-13 05:12:37,567.567 INFO    ] 2026-06-13 05:12:37
[2026-06-13 05:12:37,782.782 INFO    ] 2026-06-13 05:12:37
[2026-06-13 05:12:37,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:12:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:12:38,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:12:38,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:12:38,195.195 INFO    ] time= 13/06/2026 05:12:38
[2026-06-13 05:12:38,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:12:38,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:12:38,336.336 INFO    ] No existing commands found in stream
[2026-06-13 05:12:43,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:12:43,354.354 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 05:12:47,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:12:47,404.404 INFO    ] Checking for system updates...
[2026-06-13 05:12:47,425.425 INFO    ] 200
[2026-06-13 05:12:47,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:47,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:47,459.459 INFO    ] No update needed
[2026-06-13 05:12:47,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 05:12:47,481.481 INFO    ] 200
[2026-06-13 05:12:47,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:47,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:12:47,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:47,648.648 INFO    ] No camera update needed
[2026-06-13 05:12:47,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:12:47,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:12:47,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:12:47,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:12:49,695.695 INFO    ] ================================================
[2026-06-13 05:12:49,710.710 INFO    ] Launching Daemon at Sat Jun 13 05:12:49 IST 2026
[2026-06-13 05:12:49,721.721 INFO    ] ================================================
[2026-06-13 05:12:50,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:12:50
[2026-06-13 05:12:50,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:12:50,507.507 INFO    ] Initializing speech engine...
[2026-06-13 05:12:50,512.512 INFO    ] 2026-06-13 05:12:50
[2026-06-13 05:12:50,716.716 INFO    ] 2026-06-13 05:12:50
[2026-06-13 05:12:50,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:12:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:12:50,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:12:51,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:12:51,127.127 INFO    ] time= 13/06/2026 05:12:51
[2026-06-13 05:12:51,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:12:51,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:12:51,232.232 INFO    ] No existing commands found in stream
[2026-06-13 05:12:56,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:12:56,245.245 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 05:12:58,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:12:58,234.234 INFO    ] Checking for system updates...
[2026-06-13 05:12:58,255.255 INFO    ] 200
[2026-06-13 05:12:58,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:58,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:58,287.287 INFO    ] No update needed
[2026-06-13 05:12:58,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 05:12:58,311.311 INFO    ] 200
[2026-06-13 05:12:58,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:12:58,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:12:58,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:12:58,374.374 INFO    ] No camera update needed
[2026-06-13 05:12:58,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:12:58,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:12:58,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:12:58,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:00,421.421 INFO    ] ================================================
[2026-06-13 05:13:00,436.436 INFO    ] Launching Daemon at Sat Jun 13 05:13:00 IST 2026
[2026-06-13 05:13:00,447.447 INFO    ] ================================================
[2026-06-13 05:13:00,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:00
[2026-06-13 05:13:01,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:01,263.263 INFO    ] Initializing speech engine...
[2026-06-13 05:13:01,267.267 INFO    ] 2026-06-13 05:13:01
[2026-06-13 05:13:01,624.624 INFO    ] 2026-06-13 05:13:01
[2026-06-13 05:13:01,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:01,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:01,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:02,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:02,104.104 INFO    ] time= 13/06/2026 05:13:02
[2026-06-13 05:13:02,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:02,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:02,271.271 INFO    ] No existing commands found in stream
[2026-06-13 05:13:07,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:13:07,283.283 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 05:13:08,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:13:08,712.712 INFO    ] Checking for system updates...
[2026-06-13 05:13:08,732.732 INFO    ] 200
[2026-06-13 05:13:08,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:08,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:13:08,765.765 INFO    ] No update needed
[2026-06-13 05:13:08,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 05:13:08,788.788 INFO    ] 200
[2026-06-13 05:13:08,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:08,815.815 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:13:08,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:08,853.853 INFO    ] No camera update needed
[2026-06-13 05:13:08,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:13:08,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:13:08,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:13:08,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:10,900.900 INFO    ] ================================================
[2026-06-13 05:13:10,915.915 INFO    ] Launching Daemon at Sat Jun 13 05:13:10 IST 2026
[2026-06-13 05:13:10,926.926 INFO    ] ================================================
[2026-06-13 05:13:11,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:11
[2026-06-13 05:13:11,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:11,720.720 INFO    ] Initializing speech engine...
[2026-06-13 05:13:11,724.724 INFO    ] 2026-06-13 05:13:11
[2026-06-13 05:13:11,926.926 INFO    ] 2026-06-13 05:13:11
[2026-06-13 05:13:11,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:12,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:12,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:12,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:12,200.200 INFO    ] time= 13/06/2026 05:13:12
[2026-06-13 05:13:12,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:12,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:12,332.332 INFO    ] No existing commands found in stream
[2026-06-13 05:13:17,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:13:17,343.343 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 05:13:19,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:13:19,179.179 INFO    ] Checking for system updates...
[2026-06-13 05:13:19,201.201 INFO    ] 200
[2026-06-13 05:13:19,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:19,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:19,234.234 INFO    ] No update needed
[2026-06-13 05:13:19,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 05:13:19,256.256 INFO    ] 200
[2026-06-13 05:13:19,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:19,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:13:19,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:19,323.323 INFO    ] No camera update needed
[2026-06-13 05:13:19,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:13:19,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:13:19,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:13:19,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:21,373.373 INFO    ] ================================================
[2026-06-13 05:13:21,389.389 INFO    ] Launching Daemon at Sat Jun 13 05:13:21 IST 2026
[2026-06-13 05:13:21,399.399 INFO    ] ================================================
[2026-06-13 05:13:21,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:21
[2026-06-13 05:13:22,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:22,210.210 INFO    ] Initializing speech engine...
[2026-06-13 05:13:22,215.215 INFO    ] 2026-06-13 05:13:22
[2026-06-13 05:13:22,403.403 INFO    ] 2026-06-13 05:13:22
[2026-06-13 05:13:22,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:22,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:22,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:22,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:22,866.866 INFO    ] time= 13/06/2026 05:13:22
[2026-06-13 05:13:22,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:22,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:22,976.976 INFO    ] No existing commands found in stream
[2026-06-13 05:13:27,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:13:27,989.989 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 05:13:31,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:13:31,295.295 INFO    ] Checking for system updates...
[2026-06-13 05:13:31,315.315 INFO    ] 200
[2026-06-13 05:13:31,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:31,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:31,357.357 INFO    ] No update needed
[2026-06-13 05:13:31,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 05:13:31,383.383 INFO    ] 200
[2026-06-13 05:13:31,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:31,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:13:31,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:31,439.439 INFO    ] No camera update needed
[2026-06-13 05:13:31,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:13:31,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:13:31,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:13:31,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:33,488.488 INFO    ] ================================================
[2026-06-13 05:13:33,503.503 INFO    ] Launching Daemon at Sat Jun 13 05:13:33 IST 2026
[2026-06-13 05:13:33,514.514 INFO    ] ================================================
[2026-06-13 05:13:34,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:34
[2026-06-13 05:13:34,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:34,970.970 INFO    ] Initializing speech engine...
[2026-06-13 05:13:34,981.981 INFO    ] 2026-06-13 05:13:34
[2026-06-13 05:13:35,242.242 INFO    ] 2026-06-13 05:13:35
[2026-06-13 05:13:35,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:35,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:35,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:35,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:35,660.660 INFO    ] time= 13/06/2026 05:13:35
[2026-06-13 05:13:35,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:35,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:35,762.762 INFO    ] No existing commands found in stream
[2026-06-13 05:13:40,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:13:40,795.795 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 05:13:41,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:13:41,389.389 INFO    ] Checking for system updates...
[2026-06-13 05:13:41,409.409 INFO    ] 200
[2026-06-13 05:13:41,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:41,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:13:41,442.442 INFO    ] No update needed
[2026-06-13 05:13:41,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 05:13:41,463.463 INFO    ] 200
[2026-06-13 05:13:41,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:41,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:13:41,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:13:41,524.524 INFO    ] No camera update needed
[2026-06-13 05:13:41,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:13:41,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:13:41,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:13:41,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:43,572.572 INFO    ] ================================================
[2026-06-13 05:13:43,586.586 INFO    ] Launching Daemon at Sat Jun 13 05:13:43 IST 2026
[2026-06-13 05:13:43,597.597 INFO    ] ================================================
[2026-06-13 05:13:44,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:44
[2026-06-13 05:13:44,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:44,995.995 INFO    ] Initializing speech engine...
[2026-06-13 05:13:45,016.016 INFO    ] 2026-06-13 05:13:44
[2026-06-13 05:13:45,272.272 INFO    ] 2026-06-13 05:13:45
[2026-06-13 05:13:45,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:45,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:45,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:45,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:45,637.637 INFO    ] time= 13/06/2026 05:13:45
[2026-06-13 05:13:45,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:45,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:45,715.715 INFO    ] No existing commands found in stream
[2026-06-13 05:13:50,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:13:50,743.743 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 05:13:53,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:13:53,829.829 INFO    ] Checking for system updates...
[2026-06-13 05:13:53,850.850 INFO    ] 200
[2026-06-13 05:13:53,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:53,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:13:53,882.882 INFO    ] No update needed
[2026-06-13 05:13:53,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 05:13:53,905.905 INFO    ] 200
[2026-06-13 05:13:53,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:13:53,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:13:53,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:13:53,980.980 INFO    ] No camera update needed
[2026-06-13 05:13:53,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:13:53,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:13:53,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:13:53,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:13:56,028.028 INFO    ] ================================================
[2026-06-13 05:13:56,043.043 INFO    ] Launching Daemon at Sat Jun 13 05:13:56 IST 2026
[2026-06-13 05:13:56,053.053 INFO    ] ================================================
[2026-06-13 05:13:56,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:13:56
[2026-06-13 05:13:56,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:13:56,863.863 INFO    ] Initializing speech engine...
[2026-06-13 05:13:56,868.868 INFO    ] 2026-06-13 05:13:56
[2026-06-13 05:13:57,071.071 INFO    ] 2026-06-13 05:13:57
[2026-06-13 05:13:57,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:13:57,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:13:57,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:13:57,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:13:57,461.461 INFO    ] time= 13/06/2026 05:13:57
[2026-06-13 05:13:57,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:13:57,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:13:57,584.584 INFO    ] No existing commands found in stream
[2026-06-13 05:14:02,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:02,591.591 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 05:14:06,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:14:06,835.835 INFO    ] Checking for system updates...
[2026-06-13 05:14:06,856.856 INFO    ] 200
[2026-06-13 05:14:06,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:06,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:06,889.889 INFO    ] No update needed
[2026-06-13 05:14:06,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 05:14:06,912.912 INFO    ] 200
[2026-06-13 05:14:06,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:06,941.941 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:14:06,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:06,982.982 INFO    ] No camera update needed
[2026-06-13 05:14:06,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:14:06,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:14:06,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:14:06,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:14:09,030.030 INFO    ] ================================================
[2026-06-13 05:14:09,045.045 INFO    ] Launching Daemon at Sat Jun 13 05:14:09 IST 2026
[2026-06-13 05:14:09,055.055 INFO    ] ================================================
[2026-06-13 05:14:09,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:14:09
[2026-06-13 05:14:09,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:14:09,886.886 INFO    ] Initializing speech engine...
[2026-06-13 05:14:09,891.891 INFO    ] 2026-06-13 05:14:09
[2026-06-13 05:14:10,098.098 INFO    ] 2026-06-13 05:14:10
[2026-06-13 05:14:10,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:14:10,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:14:10,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:14:10,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:14:10,515.515 INFO    ] time= 13/06/2026 05:14:10
[2026-06-13 05:14:10,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:14:10,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:14:10,612.612 INFO    ] No existing commands found in stream
[2026-06-13 05:14:15,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:15,630.630 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 05:14:15,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:14:15,968.968 INFO    ] Checking for system updates...
[2026-06-13 05:14:15,989.989 INFO    ] 200
[2026-06-13 05:14:15,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:16,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:16,023.023 INFO    ] No update needed
[2026-06-13 05:14:16,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 05:14:16,044.044 INFO    ] 200
[2026-06-13 05:14:16,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:16,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:14:16,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:16,108.108 INFO    ] No camera update needed
[2026-06-13 05:14:16,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:14:16,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:14:16,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:14:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:14:18,157.157 INFO    ] ================================================
[2026-06-13 05:14:18,172.172 INFO    ] Launching Daemon at Sat Jun 13 05:14:18 IST 2026
[2026-06-13 05:14:18,182.182 INFO    ] ================================================
[2026-06-13 05:14:18,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:14:18
[2026-06-13 05:14:18,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:14:18,989.989 INFO    ] Initializing speech engine...
[2026-06-13 05:14:18,994.994 INFO    ] 2026-06-13 05:14:18
[2026-06-13 05:14:19,198.198 INFO    ] 2026-06-13 05:14:19
[2026-06-13 05:14:19,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:14:19,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:14:19,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:14:19,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:14:19,595.595 INFO    ] time= 13/06/2026 05:14:19
[2026-06-13 05:14:19,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:14:19,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:14:19,710.710 INFO    ] No existing commands found in stream
[2026-06-13 05:14:24,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:24,722.722 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 05:14:27,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:14:28,001.001 INFO    ] Checking for system updates...
[2026-06-13 05:14:28,022.022 INFO    ] 200
[2026-06-13 05:14:28,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:28,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:28,055.055 INFO    ] No update needed
[2026-06-13 05:14:28,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 05:14:28,077.077 INFO    ] 200
[2026-06-13 05:14:28,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:28,102.102 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:14:28,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:28,142.142 INFO    ] No camera update needed
[2026-06-13 05:14:28,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:14:28,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:14:28,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:14:28,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:14:30,190.190 INFO    ] ================================================
[2026-06-13 05:14:30,204.204 INFO    ] Launching Daemon at Sat Jun 13 05:14:30 IST 2026
[2026-06-13 05:14:30,215.215 INFO    ] ================================================
[2026-06-13 05:14:30,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:14:30
[2026-06-13 05:14:30,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:14:31,042.042 INFO    ] Initializing speech engine...
[2026-06-13 05:14:31,049.049 INFO    ] 2026-06-13 05:14:31
[2026-06-13 05:14:31,256.256 INFO    ] 2026-06-13 05:14:31
[2026-06-13 05:14:31,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:14:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:14:31,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:14:31,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:14:31,698.698 INFO    ] time= 13/06/2026 05:14:31
[2026-06-13 05:14:31,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:14:31,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:14:31,800.800 INFO    ] No existing commands found in stream
[2026-06-13 05:14:36,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:36,815.815 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 05:14:37,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:14:37,729.729 INFO    ] Checking for system updates...
[2026-06-13 05:14:37,749.749 INFO    ] 200
[2026-06-13 05:14:37,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:37,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:37,782.782 INFO    ] No update needed
[2026-06-13 05:14:37,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 05:14:37,803.803 INFO    ] 200
[2026-06-13 05:14:37,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:37,828.828 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:14:37,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:37,866.866 INFO    ] No camera update needed
[2026-06-13 05:14:37,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:14:37,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:14:37,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:14:37,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:14:39,912.912 INFO    ] ================================================
[2026-06-13 05:14:39,929.929 INFO    ] Launching Daemon at Sat Jun 13 05:14:39 IST 2026
[2026-06-13 05:14:39,940.940 INFO    ] ================================================
[2026-06-13 05:14:40,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:14:40
[2026-06-13 05:14:40,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:14:40,714.714 INFO    ] Initializing speech engine...
[2026-06-13 05:14:40,717.717 INFO    ] 2026-06-13 05:14:40
[2026-06-13 05:14:40,936.936 INFO    ] 2026-06-13 05:14:40
[2026-06-13 05:14:40,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:14:41,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:14:41,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:14:41,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:14:41,336.336 INFO    ] time= 13/06/2026 05:14:41
[2026-06-13 05:14:41,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:14:41,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:14:41,458.458 INFO    ] No existing commands found in stream
[2026-06-13 05:14:46,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:46,471.471 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 05:14:50,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:14:50,513.513 INFO    ] Checking for system updates...
[2026-06-13 05:14:50,534.534 INFO    ] 200
[2026-06-13 05:14:50,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:50,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:50,569.569 INFO    ] No update needed
[2026-06-13 05:14:50,570.570 INFO    ] Checking for camera pi updates...
[2026-06-13 05:14:50,592.592 INFO    ] 200
[2026-06-13 05:14:50,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:14:50,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:14:50,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:14:50,762.762 INFO    ] No camera update needed
[2026-06-13 05:14:50,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:14:50,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:14:50,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:14:50,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:14:52,812.812 INFO    ] ================================================
[2026-06-13 05:14:52,827.827 INFO    ] Launching Daemon at Sat Jun 13 05:14:52 IST 2026
[2026-06-13 05:14:52,837.837 INFO    ] ================================================
[2026-06-13 05:14:53,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:14:53
[2026-06-13 05:14:53,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:14:53,654.654 INFO    ] Initializing speech engine...
[2026-06-13 05:14:53,659.659 INFO    ] 2026-06-13 05:14:53
[2026-06-13 05:14:53,862.862 INFO    ] 2026-06-13 05:14:53
[2026-06-13 05:14:53,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:14:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:14:54,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:14:54,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:14:54,262.262 INFO    ] time= 13/06/2026 05:14:54
[2026-06-13 05:14:54,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:14:54,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:14:54,383.383 INFO    ] No existing commands found in stream
[2026-06-13 05:14:59,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:14:59,396.396 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 05:15:01,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:15:01,390.390 INFO    ] Checking for system updates...
[2026-06-13 05:15:01,411.411 INFO    ] 200
[2026-06-13 05:15:01,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:01,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:01,448.448 INFO    ] No update needed
[2026-06-13 05:15:01,449.449 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:01,469.469 INFO    ] 200
[2026-06-13 05:15:01,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:01,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:01,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:01,533.533 INFO    ] No camera update needed
[2026-06-13 05:15:01,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:01,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:01,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:01,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:03,585.585 INFO    ] ================================================
[2026-06-13 05:15:03,600.600 INFO    ] Launching Daemon at Sat Jun 13 05:15:03 IST 2026
[2026-06-13 05:15:03,611.611 INFO    ] ================================================
[2026-06-13 05:15:04,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:04
[2026-06-13 05:15:04,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:05,076.076 INFO    ] Initializing speech engine...
[2026-06-13 05:15:05,084.084 INFO    ] 2026-06-13 05:15:05
[2026-06-13 05:15:05,334.334 INFO    ] 2026-06-13 05:15:05
[2026-06-13 05:15:05,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:05,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:05,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:05,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:05,713.713 INFO    ] time= 13/06/2026 05:15:05
[2026-06-13 05:15:05,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:05,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:05,817.817 INFO    ] No existing commands found in stream
[2026-06-13 05:15:10,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:15:10,855.855 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 05:15:11,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:15:11,614.614 INFO    ] Checking for system updates...
[2026-06-13 05:15:11,635.635 INFO    ] 200
[2026-06-13 05:15:11,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:11,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:11,668.668 INFO    ] No update needed
[2026-06-13 05:15:11,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:11,691.691 INFO    ] 200
[2026-06-13 05:15:11,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:11,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:11,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:11,761.761 INFO    ] No camera update needed
[2026-06-13 05:15:11,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:11,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:11,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:11,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:13,810.810 INFO    ] ================================================
[2026-06-13 05:15:13,825.825 INFO    ] Launching Daemon at Sat Jun 13 05:15:13 IST 2026
[2026-06-13 05:15:13,836.836 INFO    ] ================================================
[2026-06-13 05:15:14,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:14
[2026-06-13 05:15:14,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:14,630.630 INFO    ] Initializing speech engine...
[2026-06-13 05:15:14,635.635 INFO    ] 2026-06-13 05:15:14
[2026-06-13 05:15:14,855.855 INFO    ] 2026-06-13 05:15:14
[2026-06-13 05:15:14,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:15,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:15,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:15,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:15,260.260 INFO    ] time= 13/06/2026 05:15:15
[2026-06-13 05:15:15,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:15,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:15,377.377 INFO    ] No existing commands found in stream
[2026-06-13 05:15:20,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:15:20,391.391 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 05:15:21,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:15:21,933.933 INFO    ] Checking for system updates...
[2026-06-13 05:15:21,954.954 INFO    ] 200
[2026-06-13 05:15:21,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:21,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:21,989.989 INFO    ] No update needed
[2026-06-13 05:15:21,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:22,011.011 INFO    ] 200
[2026-06-13 05:15:22,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:22,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:22,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:22,076.076 INFO    ] No camera update needed
[2026-06-13 05:15:22,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:22,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:22,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:22,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:24,126.126 INFO    ] ================================================
[2026-06-13 05:15:24,141.141 INFO    ] Launching Daemon at Sat Jun 13 05:15:24 IST 2026
[2026-06-13 05:15:24,152.152 INFO    ] ================================================
[2026-06-13 05:15:24,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:24
[2026-06-13 05:15:24,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:24,968.968 INFO    ] Initializing speech engine...
[2026-06-13 05:15:24,977.977 INFO    ] 2026-06-13 05:15:24
[2026-06-13 05:15:25,186.186 INFO    ] 2026-06-13 05:15:25
[2026-06-13 05:15:25,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:25,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:25,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:25,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:25,575.575 INFO    ] time= 13/06/2026 05:15:25
[2026-06-13 05:15:25,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:25,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:25,699.699 INFO    ] No existing commands found in stream
[2026-06-13 05:15:30,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:15:30,712.712 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 05:15:31,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:15:31,403.403 INFO    ] Checking for system updates...
[2026-06-13 05:15:31,425.425 INFO    ] 200
[2026-06-13 05:15:31,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:31,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:31,458.458 INFO    ] No update needed
[2026-06-13 05:15:31,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:31,479.479 INFO    ] 200
[2026-06-13 05:15:31,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:31,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:31,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:15:31,545.545 INFO    ] No camera update needed
[2026-06-13 05:15:31,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:31,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:31,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:31,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:33,585.585 INFO    ] ================================================
[2026-06-13 05:15:33,600.600 INFO    ] Launching Daemon at Sat Jun 13 05:15:33 IST 2026
[2026-06-13 05:15:33,611.611 INFO    ] ================================================
[2026-06-13 05:15:33,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:33
[2026-06-13 05:15:34,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:34,460.460 INFO    ] Initializing speech engine...
[2026-06-13 05:15:34,466.466 INFO    ] 2026-06-13 05:15:34
[2026-06-13 05:15:34,671.671 INFO    ] 2026-06-13 05:15:34
[2026-06-13 05:15:34,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:34,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:34,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:35,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:35,075.075 INFO    ] time= 13/06/2026 05:15:35
[2026-06-13 05:15:35,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:35,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:35,192.192 INFO    ] No existing commands found in stream
[2026-06-13 05:15:40,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:15:40,206.206 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 05:15:41,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:15:41,234.234 INFO    ] Checking for system updates...
[2026-06-13 05:15:41,255.255 INFO    ] 200
[2026-06-13 05:15:41,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:41,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:41,288.288 INFO    ] No update needed
[2026-06-13 05:15:41,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:41,309.309 INFO    ] 200
[2026-06-13 05:15:41,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:41,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:41,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:41,373.373 INFO    ] No camera update needed
[2026-06-13 05:15:41,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:41,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:41,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:41,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:43,422.422 INFO    ] ================================================
[2026-06-13 05:15:43,437.437 INFO    ] Launching Daemon at Sat Jun 13 05:15:43 IST 2026
[2026-06-13 05:15:43,448.448 INFO    ] ================================================
[2026-06-13 05:15:43,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:43
[2026-06-13 05:15:44,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:44,262.262 INFO    ] Initializing speech engine...
[2026-06-13 05:15:44,273.273 INFO    ] 2026-06-13 05:15:44
[2026-06-13 05:15:44,483.483 INFO    ] 2026-06-13 05:15:44
[2026-06-13 05:15:44,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:44,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:44,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:44,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:44,857.857 INFO    ] time= 13/06/2026 05:15:44
[2026-06-13 05:15:44,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:44,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:45,003.003 INFO    ] No existing commands found in stream
[2026-06-13 05:15:50,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:15:50,016.016 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 05:15:52,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:15:52,412.412 INFO    ] Checking for system updates...
[2026-06-13 05:15:52,434.434 INFO    ] 200
[2026-06-13 05:15:52,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:52,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:52,468.468 INFO    ] No update needed
[2026-06-13 05:15:52,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 05:15:52,490.490 INFO    ] 200
[2026-06-13 05:15:52,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:15:52,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:15:52,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:15:52,553.553 INFO    ] No camera update needed
[2026-06-13 05:15:52,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:15:52,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:15:52,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:15:52,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:15:54,591.591 INFO    ] ================================================
[2026-06-13 05:15:54,599.599 INFO    ] Launching Daemon at Sat Jun 13 05:15:54 IST 2026
[2026-06-13 05:15:54,605.605 INFO    ] ================================================
[2026-06-13 05:15:54,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:15:54
[2026-06-13 05:15:55,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:15:55,400.400 INFO    ] Initializing speech engine...
[2026-06-13 05:15:55,412.412 INFO    ] 2026-06-13 05:15:55
[2026-06-13 05:15:55,617.617 INFO    ] 2026-06-13 05:15:55
[2026-06-13 05:15:55,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:15:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:15:55,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:15:55,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:15:56,014.014 INFO    ] time= 13/06/2026 05:15:55
[2026-06-13 05:15:56,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:15:56,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:15:56,129.129 INFO    ] No existing commands found in stream
[2026-06-13 05:16:01,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:16:01,141.141 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 05:16:05,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:16:05,161.161 INFO    ] Checking for system updates...
[2026-06-13 05:16:05,182.182 INFO    ] 200
[2026-06-13 05:16:05,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:05,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:05,220.220 INFO    ] No update needed
[2026-06-13 05:16:05,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 05:16:05,240.240 INFO    ] 200
[2026-06-13 05:16:05,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:05,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:16:05,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:05,297.297 INFO    ] No camera update needed
[2026-06-13 05:16:05,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:16:05,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:16:05,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:16:05,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:16:07,345.345 INFO    ] ================================================
[2026-06-13 05:16:07,361.361 INFO    ] Launching Daemon at Sat Jun 13 05:16:07 IST 2026
[2026-06-13 05:16:07,371.371 INFO    ] ================================================
[2026-06-13 05:16:07,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:16:07
[2026-06-13 05:16:08,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:16:08,182.182 INFO    ] Initializing speech engine...
[2026-06-13 05:16:08,193.193 INFO    ] 2026-06-13 05:16:08
[2026-06-13 05:16:08,396.396 INFO    ] 2026-06-13 05:16:08
[2026-06-13 05:16:08,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:16:08,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:16:08,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:16:08,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:16:08,789.789 INFO    ] time= 13/06/2026 05:16:08
[2026-06-13 05:16:08,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:16:08,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:16:08,910.910 INFO    ] No existing commands found in stream
[2026-06-13 05:16:13,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:16:13,927.927 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 05:16:18,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:16:18,208.208 INFO    ] Checking for system updates...
[2026-06-13 05:16:18,230.230 INFO    ] 200
[2026-06-13 05:16:18,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:18,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:18,265.265 INFO    ] No update needed
[2026-06-13 05:16:18,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 05:16:18,287.287 INFO    ] 200
[2026-06-13 05:16:18,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:18,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:16:18,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:18,361.361 INFO    ] No camera update needed
[2026-06-13 05:16:18,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:16:18,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:16:18,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:16:18,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:16:20,410.410 INFO    ] ================================================
[2026-06-13 05:16:20,425.425 INFO    ] Launching Daemon at Sat Jun 13 05:16:20 IST 2026
[2026-06-13 05:16:20,437.437 INFO    ] ================================================
[2026-06-13 05:16:20,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:16:20
[2026-06-13 05:16:21,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:16:21,264.264 INFO    ] Initializing speech engine...
[2026-06-13 05:16:21,269.269 INFO    ] 2026-06-13 05:16:21
[2026-06-13 05:16:21,484.484 INFO    ] 2026-06-13 05:16:21
[2026-06-13 05:16:21,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:16:21,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:16:21,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:16:21,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:16:21,899.899 INFO    ] time= 13/06/2026 05:16:21
[2026-06-13 05:16:21,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:16:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:16:22,035.035 INFO    ] No existing commands found in stream
[2026-06-13 05:16:27,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:16:27,048.048 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 05:16:29,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:16:29,026.026 INFO    ] Checking for system updates...
[2026-06-13 05:16:29,047.047 INFO    ] 200
[2026-06-13 05:16:29,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:29,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:29,080.080 INFO    ] No update needed
[2026-06-13 05:16:29,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 05:16:29,102.102 INFO    ] 200
[2026-06-13 05:16:29,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:29,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:16:29,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:16:29,168.168 INFO    ] No camera update needed
[2026-06-13 05:16:29,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:16:29,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:16:29,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:16:29,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:16:31,209.209 INFO    ] ================================================
[2026-06-13 05:16:31,217.217 INFO    ] Launching Daemon at Sat Jun 13 05:16:31 IST 2026
[2026-06-13 05:16:31,224.224 INFO    ] ================================================
[2026-06-13 05:16:31,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:16:31
[2026-06-13 05:16:31,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:16:32,156.156 INFO    ] Initializing speech engine...
[2026-06-13 05:16:32,169.169 INFO    ] 2026-06-13 05:16:32
[2026-06-13 05:16:32,470.470 INFO    ] 2026-06-13 05:16:32
[2026-06-13 05:16:32,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:16:32,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:16:32,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:16:32,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:16:32,867.867 INFO    ] time= 13/06/2026 05:16:32
[2026-06-13 05:16:32,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:16:32,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:16:32,978.978 INFO    ] No existing commands found in stream
[2026-06-13 05:16:38,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:16:38,012.012 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 05:16:38,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:16:38,892.892 INFO    ] Checking for system updates...
[2026-06-13 05:16:38,913.913 INFO    ] 200
[2026-06-13 05:16:38,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:38,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:16:38,946.946 INFO    ] No update needed
[2026-06-13 05:16:38,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 05:16:38,967.967 INFO    ] 200
[2026-06-13 05:16:38,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:38,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:16:39,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:16:39,033.033 INFO    ] No camera update needed
[2026-06-13 05:16:39,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:16:39,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:16:39,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:16:39,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:16:41,082.082 INFO    ] ================================================
[2026-06-13 05:16:41,097.097 INFO    ] Launching Daemon at Sat Jun 13 05:16:41 IST 2026
[2026-06-13 05:16:41,109.109 INFO    ] ================================================
[2026-06-13 05:16:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:16:41
[2026-06-13 05:16:41,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:16:41,929.929 INFO    ] Initializing speech engine...
[2026-06-13 05:16:41,934.934 INFO    ] 2026-06-13 05:16:41
[2026-06-13 05:16:42,120.120 INFO    ] 2026-06-13 05:16:42
[2026-06-13 05:16:42,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:16:42,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:16:42,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:16:42,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:16:42,557.557 INFO    ] time= 13/06/2026 05:16:42
[2026-06-13 05:16:42,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:16:42,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:16:42,672.672 INFO    ] No existing commands found in stream
[2026-06-13 05:16:47,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:16:47,685.685 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 05:16:51,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:16:51,501.501 INFO    ] Checking for system updates...
[2026-06-13 05:16:51,523.523 INFO    ] 200
[2026-06-13 05:16:51,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:51,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:16:51,560.560 INFO    ] No update needed
[2026-06-13 05:16:51,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 05:16:51,582.582 INFO    ] 200
[2026-06-13 05:16:51,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:16:51,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:16:51,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:16:51,654.654 INFO    ] No camera update needed
[2026-06-13 05:16:51,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:16:51,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:16:51,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:16:51,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:16:53,702.702 INFO    ] ================================================
[2026-06-13 05:16:53,718.718 INFO    ] Launching Daemon at Sat Jun 13 05:16:53 IST 2026
[2026-06-13 05:16:53,729.729 INFO    ] ================================================
[2026-06-13 05:16:54,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:16:54
[2026-06-13 05:16:54,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:16:54,628.628 INFO    ] Initializing speech engine...
[2026-06-13 05:16:54,643.643 INFO    ] 2026-06-13 05:16:54
[2026-06-13 05:16:54,917.917 INFO    ] 2026-06-13 05:16:54
[2026-06-13 05:16:54,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:16:55,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:16:55,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:16:55,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:16:55,313.313 INFO    ] time= 13/06/2026 05:16:55
[2026-06-13 05:16:55,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:16:55,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:16:55,484.484 INFO    ] No existing commands found in stream
[2026-06-13 05:17:00,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:00,515.515 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 05:17:04,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:17:04,086.086 INFO    ] Checking for system updates...
[2026-06-13 05:17:04,106.106 INFO    ] 200
[2026-06-13 05:17:04,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:04,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:17:04,143.143 INFO    ] No update needed
[2026-06-13 05:17:04,144.144 INFO    ] Checking for camera pi updates...
[2026-06-13 05:17:04,165.165 INFO    ] 200
[2026-06-13 05:17:04,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:04,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:17:04,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:17:04,231.231 INFO    ] No camera update needed
[2026-06-13 05:17:04,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:17:04,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:17:04,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:17:04,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:17:06,280.280 INFO    ] ================================================
[2026-06-13 05:17:06,295.295 INFO    ] Launching Daemon at Sat Jun 13 05:17:06 IST 2026
[2026-06-13 05:17:06,307.307 INFO    ] ================================================
[2026-06-13 05:17:06,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:17:06
[2026-06-13 05:17:06,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:17:07,091.091 INFO    ] Initializing speech engine...
[2026-06-13 05:17:07,100.100 INFO    ] 2026-06-13 05:17:07
[2026-06-13 05:17:07,305.305 INFO    ] 2026-06-13 05:17:07
[2026-06-13 05:17:07,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:17:07,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:17:07,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:17:07,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:17:07,707.707 INFO    ] time= 13/06/2026 05:17:07
[2026-06-13 05:17:07,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:17:07,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:17:07,822.822 INFO    ] No existing commands found in stream
[2026-06-13 05:17:12,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:12,835.835 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 05:17:16,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:17:16,602.602 INFO    ] Checking for system updates...
[2026-06-13 05:17:16,623.623 INFO    ] 200
[2026-06-13 05:17:16,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:16,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:16,656.656 INFO    ] No update needed
[2026-06-13 05:17:16,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 05:17:16,677.677 INFO    ] 200
[2026-06-13 05:17:16,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:16,706.706 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:17:16,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:16,750.750 INFO    ] No camera update needed
[2026-06-13 05:17:16,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:17:16,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:17:16,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:17:16,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:17:18,797.797 INFO    ] ================================================
[2026-06-13 05:17:18,812.812 INFO    ] Launching Daemon at Sat Jun 13 05:17:18 IST 2026
[2026-06-13 05:17:18,823.823 INFO    ] ================================================
[2026-06-13 05:17:19,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:17:19
[2026-06-13 05:17:19,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:17:19,651.651 INFO    ] Initializing speech engine...
[2026-06-13 05:17:19,657.657 INFO    ] 2026-06-13 05:17:19
[2026-06-13 05:17:19,861.861 INFO    ] 2026-06-13 05:17:19
[2026-06-13 05:17:19,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:17:20,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:17:20,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:17:20,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:17:20,267.267 INFO    ] time= 13/06/2026 05:17:20
[2026-06-13 05:17:20,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:17:20,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:17:20,375.375 INFO    ] No existing commands found in stream
[2026-06-13 05:17:25,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:25,389.389 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 05:17:25,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:17:25,702.702 INFO    ] Checking for system updates...
[2026-06-13 05:17:25,723.723 INFO    ] 200
[2026-06-13 05:17:25,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:25,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:25,757.757 INFO    ] No update needed
[2026-06-13 05:17:25,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 05:17:25,780.780 INFO    ] 200
[2026-06-13 05:17:25,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:25,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:17:25,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:25,843.843 INFO    ] No camera update needed
[2026-06-13 05:17:25,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:17:25,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:17:25,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:17:25,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:17:27,889.889 INFO    ] ================================================
[2026-06-13 05:17:27,904.904 INFO    ] Launching Daemon at Sat Jun 13 05:17:27 IST 2026
[2026-06-13 05:17:27,915.915 INFO    ] ================================================
[2026-06-13 05:17:28,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:17:28
[2026-06-13 05:17:28,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:17:28,752.752 INFO    ] Initializing speech engine...
[2026-06-13 05:17:28,757.757 INFO    ] 2026-06-13 05:17:28
[2026-06-13 05:17:28,971.971 INFO    ] 2026-06-13 05:17:28
[2026-06-13 05:17:29,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:17:29,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:17:29,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:17:29,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:17:29,391.391 INFO    ] time= 13/06/2026 05:17:29
[2026-06-13 05:17:29,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:17:29,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:17:29,520.520 INFO    ] No existing commands found in stream
[2026-06-13 05:17:34,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:34,531.531 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 05:17:37,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:17:37,122.122 INFO    ] Checking for system updates...
[2026-06-13 05:17:37,146.146 INFO    ] 200
[2026-06-13 05:17:37,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:37,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:37,181.181 INFO    ] No update needed
[2026-06-13 05:17:37,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 05:17:37,202.202 INFO    ] 200
[2026-06-13 05:17:37,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:37,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:17:37,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:37,294.294 INFO    ] No camera update needed
[2026-06-13 05:17:37,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:17:37,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:17:37,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:17:37,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:17:39,341.341 INFO    ] ================================================
[2026-06-13 05:17:39,356.356 INFO    ] Launching Daemon at Sat Jun 13 05:17:39 IST 2026
[2026-06-13 05:17:39,368.368 INFO    ] ================================================
[2026-06-13 05:17:39,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:17:39
[2026-06-13 05:17:40,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:17:40,157.157 INFO    ] Initializing speech engine...
[2026-06-13 05:17:40,162.162 INFO    ] 2026-06-13 05:17:40
[2026-06-13 05:17:40,381.381 INFO    ] 2026-06-13 05:17:40
[2026-06-13 05:17:40,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:17:40,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:17:40,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:17:40,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:17:40,781.781 INFO    ] time= 13/06/2026 05:17:40
[2026-06-13 05:17:40,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:17:40,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:17:40,904.904 INFO    ] No existing commands found in stream
[2026-06-13 05:17:45,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:45,913.913 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 05:17:48,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:17:48,231.231 INFO    ] Checking for system updates...
[2026-06-13 05:17:48,253.253 INFO    ] 200
[2026-06-13 05:17:48,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:48,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:17:48,286.286 INFO    ] No update needed
[2026-06-13 05:17:48,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 05:17:48,307.307 INFO    ] 200
[2026-06-13 05:17:48,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:17:48,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:17:48,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:17:48,360.360 INFO    ] No camera update needed
[2026-06-13 05:17:48,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:17:48,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:17:48,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:17:48,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:17:50,410.410 INFO    ] ================================================
[2026-06-13 05:17:50,425.425 INFO    ] Launching Daemon at Sat Jun 13 05:17:50 IST 2026
[2026-06-13 05:17:50,436.436 INFO    ] ================================================
[2026-06-13 05:17:50,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:17:50
[2026-06-13 05:17:51,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:17:51,241.241 INFO    ] Initializing speech engine...
[2026-06-13 05:17:51,246.246 INFO    ] 2026-06-13 05:17:51
[2026-06-13 05:17:51,452.452 INFO    ] 2026-06-13 05:17:51
[2026-06-13 05:17:51,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:17:51,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:17:51,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:17:51,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:17:51,861.861 INFO    ] time= 13/06/2026 05:17:51
[2026-06-13 05:17:51,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:17:51,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:17:51,973.973 INFO    ] No existing commands found in stream
[2026-06-13 05:17:56,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:17:56,984.984 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 05:18:03,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:18:03,359.359 INFO    ] Checking for system updates...
[2026-06-13 05:18:03,413.413 INFO    ] 200
[2026-06-13 05:18:03,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:03,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:18:03,491.491 INFO    ] No update needed
[2026-06-13 05:18:03,494.494 INFO    ] Checking for camera pi updates...
[2026-06-13 05:18:03,536.536 INFO    ] 200
[2026-06-13 05:18:03,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:03,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:18:03,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:18:03,647.647 INFO    ] No camera update needed
[2026-06-13 05:18:03,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:18:03,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:18:03,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:18:03,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:18:05,703.703 INFO    ] ================================================
[2026-06-13 05:18:05,718.718 INFO    ] Launching Daemon at Sat Jun 13 05:18:05 IST 2026
[2026-06-13 05:18:05,729.729 INFO    ] ================================================
[2026-06-13 05:18:06,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:18:06
[2026-06-13 05:18:06,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:18:06,501.501 INFO    ] Initializing speech engine...
[2026-06-13 05:18:06,509.509 INFO    ] 2026-06-13 05:18:06
[2026-06-13 05:18:06,696.696 INFO    ] 2026-06-13 05:18:06
[2026-06-13 05:18:06,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:18:06,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:18:06,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:18:07,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:18:07,142.142 INFO    ] time= 13/06/2026 05:18:07
[2026-06-13 05:18:07,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:18:07,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:18:07,258.258 INFO    ] No existing commands found in stream
[2026-06-13 05:18:12,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:18:12,272.272 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 05:18:14,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:18:14,860.860 INFO    ] Checking for system updates...
[2026-06-13 05:18:14,883.883 INFO    ] 200
[2026-06-13 05:18:14,885.885 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:14,887.887 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 05:18:14,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 05:18:14,913.913 INFO    ] 200
[2026-06-13 05:18:14,915.915 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:14,917.917 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 05:18:14,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:18:14,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:18:14,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:18:14,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:18:16,952.952 INFO    ] ================================================
[2026-06-13 05:18:16,960.960 INFO    ] Launching Daemon at Sat Jun 13 05:18:16 IST 2026
[2026-06-13 05:18:16,966.966 INFO    ] ================================================
[2026-06-13 05:18:17,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:18:17
[2026-06-13 05:18:17,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:18:17,775.775 INFO    ] Initializing speech engine...
[2026-06-13 05:18:17,779.779 INFO    ] 2026-06-13 05:18:17
[2026-06-13 05:18:18,011.011 INFO    ] 2026-06-13 05:18:17
[2026-06-13 05:18:18,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:18:18,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:18:18,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:18:18,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:18:18,431.431 INFO    ] time= 13/06/2026 05:18:18
[2026-06-13 05:18:18,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:18:18,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:18:18,571.571 INFO    ] No existing commands found in stream
[2026-06-13 05:18:23,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:18:23,611.611 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 05:18:25,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:18:25,667.667 INFO    ] Checking for system updates...
[2026-06-13 05:18:25,688.688 INFO    ] 200
[2026-06-13 05:18:25,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:25,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:18:25,724.724 INFO    ] No update needed
[2026-06-13 05:18:25,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 05:18:25,744.744 INFO    ] 200
[2026-06-13 05:18:25,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:25,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:18:25,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:18:25,812.812 INFO    ] No camera update needed
[2026-06-13 05:18:25,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:18:25,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:18:25,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:18:25,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:18:27,858.858 INFO    ] ================================================
[2026-06-13 05:18:27,873.873 INFO    ] Launching Daemon at Sat Jun 13 05:18:27 IST 2026
[2026-06-13 05:18:27,884.884 INFO    ] ================================================
[2026-06-13 05:18:28,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:18:28
[2026-06-13 05:18:28,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:18:28,744.744 INFO    ] Initializing speech engine...
[2026-06-13 05:18:28,750.750 INFO    ] 2026-06-13 05:18:28
[2026-06-13 05:18:28,956.956 INFO    ] 2026-06-13 05:18:28
[2026-06-13 05:18:28,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:18:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:18:29,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:18:29,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:18:29,372.372 INFO    ] time= 13/06/2026 05:18:29
[2026-06-13 05:18:29,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:18:29,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:18:29,471.471 INFO    ] No existing commands found in stream
[2026-06-13 05:18:34,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:18:34,483.483 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 05:18:38,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:18:38,572.572 INFO    ] Checking for system updates...
[2026-06-13 05:18:38,593.593 INFO    ] 200
[2026-06-13 05:18:38,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:38,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:18:38,627.627 INFO    ] No update needed
[2026-06-13 05:18:38,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 05:18:38,656.656 INFO    ] 200
[2026-06-13 05:18:38,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:38,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:18:38,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:18:38,723.723 INFO    ] No camera update needed
[2026-06-13 05:18:38,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:18:38,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:18:38,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:18:38,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:18:40,770.770 INFO    ] ================================================
[2026-06-13 05:18:40,786.786 INFO    ] Launching Daemon at Sat Jun 13 05:18:40 IST 2026
[2026-06-13 05:18:40,797.797 INFO    ] ================================================
[2026-06-13 05:18:41,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:18:41
[2026-06-13 05:18:42,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:18:42,418.418 INFO    ] Initializing speech engine...
[2026-06-13 05:18:42,424.424 INFO    ] 2026-06-13 05:18:42
[2026-06-13 05:18:42,705.705 INFO    ] 2026-06-13 05:18:42
[2026-06-13 05:18:42,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:18:42,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:18:42,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:18:43,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:18:43,177.177 INFO    ] time= 13/06/2026 05:18:43
[2026-06-13 05:18:43,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:18:43,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:18:43,405.405 INFO    ] No existing commands found in stream
[2026-06-13 05:18:48,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:18:48,436.436 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 05:18:50,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:18:50,141.141 INFO    ] Checking for system updates...
[2026-06-13 05:18:50,161.161 INFO    ] 200
[2026-06-13 05:18:50,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:50,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:18:50,194.194 INFO    ] No update needed
[2026-06-13 05:18:50,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 05:18:50,218.218 INFO    ] 200
[2026-06-13 05:18:50,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:18:50,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:18:50,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:18:50,282.282 INFO    ] No camera update needed
[2026-06-13 05:18:50,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:18:50,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:18:50,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:18:50,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:18:52,330.330 INFO    ] ================================================
[2026-06-13 05:18:52,346.346 INFO    ] Launching Daemon at Sat Jun 13 05:18:52 IST 2026
[2026-06-13 05:18:52,357.357 INFO    ] ================================================
[2026-06-13 05:18:52,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:18:52
[2026-06-13 05:18:53,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:18:53,144.144 INFO    ] Initializing speech engine...
[2026-06-13 05:18:53,148.148 INFO    ] 2026-06-13 05:18:53
[2026-06-13 05:18:53,371.371 INFO    ] 2026-06-13 05:18:53
[2026-06-13 05:18:53,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:18:53,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:18:53,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:18:53,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:18:53,816.816 INFO    ] time= 13/06/2026 05:18:53
[2026-06-13 05:18:53,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:18:53,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:18:53,932.932 INFO    ] No existing commands found in stream
[2026-06-13 05:18:58,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:18:58,948.948 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 05:19:01,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:19:01,727.727 INFO    ] Checking for system updates...
[2026-06-13 05:19:01,773.773 INFO    ] 200
[2026-06-13 05:19:01,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:01,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:01,831.831 INFO    ] No update needed
[2026-06-13 05:19:01,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:01,875.875 INFO    ] 200
[2026-06-13 05:19:01,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:01,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:01,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:01,952.952 INFO    ] No camera update needed
[2026-06-13 05:19:01,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:01,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:01,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:01,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:04,003.003 INFO    ] ================================================
[2026-06-13 05:19:04,019.019 INFO    ] Launching Daemon at Sat Jun 13 05:19:04 IST 2026
[2026-06-13 05:19:04,031.031 INFO    ] ================================================
[2026-06-13 05:19:04,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:04
[2026-06-13 05:19:04,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:04,913.913 INFO    ] Initializing speech engine...
[2026-06-13 05:19:04,919.919 INFO    ] 2026-06-13 05:19:04
[2026-06-13 05:19:05,130.130 INFO    ] 2026-06-13 05:19:05
[2026-06-13 05:19:05,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:05,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:05,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:05,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:05,555.555 INFO    ] time= 13/06/2026 05:19:05
[2026-06-13 05:19:05,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:05,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:05,657.657 INFO    ] No existing commands found in stream
[2026-06-13 05:19:10,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:19:10,672.672 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 05:19:14,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:19:14,491.491 INFO    ] Checking for system updates...
[2026-06-13 05:19:14,512.512 INFO    ] 200
[2026-06-13 05:19:14,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:14,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:14,545.545 INFO    ] No update needed
[2026-06-13 05:19:14,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:14,567.567 INFO    ] 200
[2026-06-13 05:19:14,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:14,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:14,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:19:14,735.735 INFO    ] No camera update needed
[2026-06-13 05:19:14,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:14,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:14,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:14,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:16,784.784 INFO    ] ================================================
[2026-06-13 05:19:16,800.800 INFO    ] Launching Daemon at Sat Jun 13 05:19:16 IST 2026
[2026-06-13 05:19:16,810.810 INFO    ] ================================================
[2026-06-13 05:19:17,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:17
[2026-06-13 05:19:17,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:17,622.622 INFO    ] Initializing speech engine...
[2026-06-13 05:19:17,632.632 INFO    ] 2026-06-13 05:19:17
[2026-06-13 05:19:17,834.834 INFO    ] 2026-06-13 05:19:17
[2026-06-13 05:19:17,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:18,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:18,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:18,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:18,228.228 INFO    ] time= 13/06/2026 05:19:18
[2026-06-13 05:19:18,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:18,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:18,348.348 INFO    ] No existing commands found in stream
[2026-06-13 05:19:23,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:19:23,362.362 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 05:19:25,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:19:25,539.539 INFO    ] Checking for system updates...
[2026-06-13 05:19:25,560.560 INFO    ] 200
[2026-06-13 05:19:25,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:25,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:19:25,593.593 INFO    ] No update needed
[2026-06-13 05:19:25,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:25,616.616 INFO    ] 200
[2026-06-13 05:19:25,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:25,641.641 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:25,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:19:25,680.680 INFO    ] No camera update needed
[2026-06-13 05:19:25,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:25,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:25,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:25,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:27,729.729 INFO    ] ================================================
[2026-06-13 05:19:27,744.744 INFO    ] Launching Daemon at Sat Jun 13 05:19:27 IST 2026
[2026-06-13 05:19:27,755.755 INFO    ] ================================================
[2026-06-13 05:19:28,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:28
[2026-06-13 05:19:28,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:28,541.541 INFO    ] Initializing speech engine...
[2026-06-13 05:19:28,549.549 INFO    ] 2026-06-13 05:19:28
[2026-06-13 05:19:28,774.774 INFO    ] 2026-06-13 05:19:28
[2026-06-13 05:19:28,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:28,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:28,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:29,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:29,186.186 INFO    ] time= 13/06/2026 05:19:29
[2026-06-13 05:19:29,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:29,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:29,338.338 INFO    ] No existing commands found in stream
[2026-06-13 05:19:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:19:34,363.363 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 05:19:34,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:19:34,995.995 INFO    ] Checking for system updates...
[2026-06-13 05:19:35,016.016 INFO    ] 200
[2026-06-13 05:19:35,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:35,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:19:35,051.051 INFO    ] No update needed
[2026-06-13 05:19:35,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:35,072.072 INFO    ] 200
[2026-06-13 05:19:35,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:35,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:35,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:19:35,121.121 INFO    ] No camera update needed
[2026-06-13 05:19:35,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:35,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:35,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:35,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:37,168.168 INFO    ] ================================================
[2026-06-13 05:19:37,183.183 INFO    ] Launching Daemon at Sat Jun 13 05:19:37 IST 2026
[2026-06-13 05:19:37,195.195 INFO    ] ================================================
[2026-06-13 05:19:37,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:37
[2026-06-13 05:19:37,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:37,979.979 INFO    ] Initializing speech engine...
[2026-06-13 05:19:37,993.993 INFO    ] 2026-06-13 05:19:37
[2026-06-13 05:19:38,197.197 INFO    ] 2026-06-13 05:19:38
[2026-06-13 05:19:38,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:38,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:38,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:38,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:38,611.611 INFO    ] time= 13/06/2026 05:19:38
[2026-06-13 05:19:38,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:38,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:38,708.708 INFO    ] No existing commands found in stream
[2026-06-13 05:19:43,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:19:43,722.722 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 05:19:44,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:19:44,710.710 INFO    ] Checking for system updates...
[2026-06-13 05:19:44,731.731 INFO    ] 200
[2026-06-13 05:19:44,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:44,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:44,764.764 INFO    ] No update needed
[2026-06-13 05:19:44,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:44,787.787 INFO    ] 200
[2026-06-13 05:19:44,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:44,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:44,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:44,849.849 INFO    ] No camera update needed
[2026-06-13 05:19:44,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:44,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:44,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:44,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:46,897.897 INFO    ] ================================================
[2026-06-13 05:19:46,913.913 INFO    ] Launching Daemon at Sat Jun 13 05:19:46 IST 2026
[2026-06-13 05:19:46,923.923 INFO    ] ================================================
[2026-06-13 05:19:47,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:47
[2026-06-13 05:19:47,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:47,726.726 INFO    ] Initializing speech engine...
[2026-06-13 05:19:47,735.735 INFO    ] 2026-06-13 05:19:47
[2026-06-13 05:19:47,962.962 INFO    ] 2026-06-13 05:19:47
[2026-06-13 05:19:47,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:48,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:48,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:48,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:48,366.366 INFO    ] time= 13/06/2026 05:19:48
[2026-06-13 05:19:48,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:48,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:48,532.532 INFO    ] No existing commands found in stream
[2026-06-13 05:19:53,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:19:53,544.544 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 05:19:53,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:19:53,977.977 INFO    ] Checking for system updates...
[2026-06-13 05:19:54,026.026 INFO    ] 200
[2026-06-13 05:19:54,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:54,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:54,085.085 INFO    ] No update needed
[2026-06-13 05:19:54,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 05:19:54,128.128 INFO    ] 200
[2026-06-13 05:19:54,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:19:54,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:19:54,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:19:54,223.223 INFO    ] No camera update needed
[2026-06-13 05:19:54,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:19:54,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:19:54,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:19:54,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:19:56,279.279 INFO    ] ================================================
[2026-06-13 05:19:56,294.294 INFO    ] Launching Daemon at Sat Jun 13 05:19:56 IST 2026
[2026-06-13 05:19:56,305.305 INFO    ] ================================================
[2026-06-13 05:19:56,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:19:56
[2026-06-13 05:19:57,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:19:57,419.419 INFO    ] Initializing speech engine...
[2026-06-13 05:19:57,424.424 INFO    ] 2026-06-13 05:19:57
[2026-06-13 05:19:57,628.628 INFO    ] 2026-06-13 05:19:57
[2026-06-13 05:19:57,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:19:57,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:19:57,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:19:57,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:19:58,036.036 INFO    ] time= 13/06/2026 05:19:57
[2026-06-13 05:19:58,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:19:58,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:19:58,139.139 INFO    ] No existing commands found in stream
[2026-06-13 05:20:03,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:20:03,151.151 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 05:20:08,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:20:08,186.186 INFO    ] Checking for system updates...
[2026-06-13 05:20:08,222.222 INFO    ] 200
[2026-06-13 05:20:08,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:08,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:08,282.282 INFO    ] No update needed
[2026-06-13 05:20:08,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 05:20:08,304.304 INFO    ] 200
[2026-06-13 05:20:08,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:08,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:20:08,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:08,367.367 INFO    ] No camera update needed
[2026-06-13 05:20:08,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:20:08,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:20:08,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:20:08,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:20:10,417.417 INFO    ] ================================================
[2026-06-13 05:20:10,431.431 INFO    ] Launching Daemon at Sat Jun 13 05:20:10 IST 2026
[2026-06-13 05:20:10,442.442 INFO    ] ================================================
[2026-06-13 05:20:10,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:20:10
[2026-06-13 05:20:11,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:20:11,237.237 INFO    ] Initializing speech engine...
[2026-06-13 05:20:11,240.240 INFO    ] 2026-06-13 05:20:11
[2026-06-13 05:20:11,470.470 INFO    ] 2026-06-13 05:20:11
[2026-06-13 05:20:11,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:20:11,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:20:11,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:20:11,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:20:11,899.899 INFO    ] time= 13/06/2026 05:20:11
[2026-06-13 05:20:11,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:20:11,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:20:12,018.018 INFO    ] No existing commands found in stream
[2026-06-13 05:20:17,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:20:17,032.032 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 05:20:17,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:20:17,544.544 INFO    ] Checking for system updates...
[2026-06-13 05:20:17,564.564 INFO    ] 200
[2026-06-13 05:20:17,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:17,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:17,597.597 INFO    ] No update needed
[2026-06-13 05:20:17,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 05:20:17,618.618 INFO    ] 200
[2026-06-13 05:20:17,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:17,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:20:17,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:17,680.680 INFO    ] No camera update needed
[2026-06-13 05:20:17,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:20:17,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:20:17,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:20:17,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:20:19,728.728 INFO    ] ================================================
[2026-06-13 05:20:19,743.743 INFO    ] Launching Daemon at Sat Jun 13 05:20:19 IST 2026
[2026-06-13 05:20:19,753.753 INFO    ] ================================================
[2026-06-13 05:20:20,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:20:20
[2026-06-13 05:20:20,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:20:20,552.552 INFO    ] Initializing speech engine...
[2026-06-13 05:20:20,560.560 INFO    ] 2026-06-13 05:20:20
[2026-06-13 05:20:20,784.784 INFO    ] 2026-06-13 05:20:20
[2026-06-13 05:20:20,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:20:20,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:20:21,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:20:21,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:20:21,193.193 INFO    ] time= 13/06/2026 05:20:21
[2026-06-13 05:20:21,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:20:21,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:20:21,339.339 INFO    ] No existing commands found in stream
[2026-06-13 05:20:26,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:20:26,353.353 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 05:20:28,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:20:28,785.785 INFO    ] Checking for system updates...
[2026-06-13 05:20:28,807.807 INFO    ] 200
[2026-06-13 05:20:28,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:28,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:28,841.841 INFO    ] No update needed
[2026-06-13 05:20:28,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 05:20:28,862.862 INFO    ] 200
[2026-06-13 05:20:28,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:28,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:20:28,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:20:28,932.932 INFO    ] No camera update needed
[2026-06-13 05:20:28,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:20:28,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:20:28,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:20:28,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:20:30,980.980 INFO    ] ================================================
[2026-06-13 05:20:31,996.996 INFO    ] Launching Daemon at Sat Jun 13 05:20:30 IST 2026
[2026-06-13 05:20:31,007.007 INFO    ] ================================================
[2026-06-13 05:20:31,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:20:31
[2026-06-13 05:20:31,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:20:31,821.821 INFO    ] Initializing speech engine...
[2026-06-13 05:20:31,831.831 INFO    ] 2026-06-13 05:20:31
[2026-06-13 05:20:32,021.021 INFO    ] 2026-06-13 05:20:32
[2026-06-13 05:20:32,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:20:32,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:20:32,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:20:32,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:20:32,311.311 INFO    ] time= 13/06/2026 05:20:32
[2026-06-13 05:20:32,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:20:32,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:20:32,397.397 INFO    ] No existing commands found in stream
[2026-06-13 05:20:37,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:20:37,432.432 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 05:20:40,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:20:40,769.769 INFO    ] Checking for system updates...
[2026-06-13 05:20:40,790.790 INFO    ] 200
[2026-06-13 05:20:40,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:40,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:20:40,825.825 INFO    ] No update needed
[2026-06-13 05:20:40,826.826 INFO    ] Checking for camera pi updates...
[2026-06-13 05:20:40,846.846 INFO    ] 200
[2026-06-13 05:20:40,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:40,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:20:40,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:20:40,911.911 INFO    ] No camera update needed
[2026-06-13 05:20:40,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:20:40,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:20:40,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:20:40,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:20:42,963.963 INFO    ] ================================================
[2026-06-13 05:20:42,980.980 INFO    ] Launching Daemon at Sat Jun 13 05:20:42 IST 2026
[2026-06-13 05:20:42,992.992 INFO    ] ================================================
[2026-06-13 05:20:43,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:20:43
[2026-06-13 05:20:43,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:20:43,765.765 INFO    ] Initializing speech engine...
[2026-06-13 05:20:43,774.774 INFO    ] 2026-06-13 05:20:43
[2026-06-13 05:20:44,001.001 INFO    ] 2026-06-13 05:20:43
[2026-06-13 05:20:44,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:20:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:20:44,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:20:44,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:20:44,296.296 INFO    ] time= 13/06/2026 05:20:44
[2026-06-13 05:20:44,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:20:44,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:20:44,464.464 INFO    ] No existing commands found in stream
[2026-06-13 05:20:49,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:20:49,485.485 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 05:20:52,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:20:52,168.168 INFO    ] Checking for system updates...
[2026-06-13 05:20:52,189.189 INFO    ] 200
[2026-06-13 05:20:52,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:52,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:20:52,222.222 INFO    ] No update needed
[2026-06-13 05:20:52,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 05:20:52,243.243 INFO    ] 200
[2026-06-13 05:20:52,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:20:52,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:20:52,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:20:52,308.308 INFO    ] No camera update needed
[2026-06-13 05:20:52,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:20:52,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:20:52,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:20:52,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:20:54,355.355 INFO    ] ================================================
[2026-06-13 05:20:54,370.370 INFO    ] Launching Daemon at Sat Jun 13 05:20:54 IST 2026
[2026-06-13 05:20:54,380.380 INFO    ] ================================================
[2026-06-13 05:20:54,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:20:54
[2026-06-13 05:20:55,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:20:55,199.199 INFO    ] Initializing speech engine...
[2026-06-13 05:20:55,207.207 INFO    ] 2026-06-13 05:20:55
[2026-06-13 05:20:55,430.430 INFO    ] 2026-06-13 05:20:55
[2026-06-13 05:20:55,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:20:55,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:20:55,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:20:55,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:20:55,911.911 INFO    ] time= 13/06/2026 05:20:55
[2026-06-13 05:20:55,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:20:56,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:20:56,137.137 INFO    ] No existing commands found in stream
[2026-06-13 05:21:01,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:01,171.171 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 05:21:05,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:21:05,082.082 INFO    ] Checking for system updates...
[2026-06-13 05:21:05,103.103 INFO    ] 200
[2026-06-13 05:21:05,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:05,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:21:05,137.137 INFO    ] No update needed
[2026-06-13 05:21:05,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:05,158.158 INFO    ] 200
[2026-06-13 05:21:05,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:05,186.186 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:05,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:21:05,221.221 INFO    ] No camera update needed
[2026-06-13 05:21:05,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:05,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:05,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:05,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:07,270.270 INFO    ] ================================================
[2026-06-13 05:21:07,286.286 INFO    ] Launching Daemon at Sat Jun 13 05:21:07 IST 2026
[2026-06-13 05:21:07,296.296 INFO    ] ================================================
[2026-06-13 05:21:07,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:07
[2026-06-13 05:21:07,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:08,094.094 INFO    ] Initializing speech engine...
[2026-06-13 05:21:08,099.099 INFO    ] 2026-06-13 05:21:08
[2026-06-13 05:21:08,301.301 INFO    ] 2026-06-13 05:21:08
[2026-06-13 05:21:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:08,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:08,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:08,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:21:08,706.706 INFO    ] time= 13/06/2026 05:21:08
[2026-06-13 05:21:08,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:21:08,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:21:08,815.815 INFO    ] No existing commands found in stream
[2026-06-13 05:21:13,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:13,828.828 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 05:21:14,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:21:14,164.164 INFO    ] Checking for system updates...
[2026-06-13 05:21:14,186.186 INFO    ] 200
[2026-06-13 05:21:14,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:14,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:14,218.218 INFO    ] No update needed
[2026-06-13 05:21:14,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:14,239.239 INFO    ] 200
[2026-06-13 05:21:14,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:14,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:14,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:14,301.301 INFO    ] No camera update needed
[2026-06-13 05:21:14,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:14,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:14,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:16,354.354 INFO    ] ================================================
[2026-06-13 05:21:16,370.370 INFO    ] Launching Daemon at Sat Jun 13 05:21:16 IST 2026
[2026-06-13 05:21:16,380.380 INFO    ] ================================================
[2026-06-13 05:21:16,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:16
[2026-06-13 05:21:17,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:17,182.182 INFO    ] Initializing speech engine...
[2026-06-13 05:21:17,187.187 INFO    ] 2026-06-13 05:21:17
[2026-06-13 05:21:17,411.411 INFO    ] 2026-06-13 05:21:17
[2026-06-13 05:21:17,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:17,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:17,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:17,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:21:17,831.831 INFO    ] time= 13/06/2026 05:21:17
[2026-06-13 05:21:17,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:21:17,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:21:17,955.955 INFO    ] No existing commands found in stream
[2026-06-13 05:21:22,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:22,969.969 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 05:21:25,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:21:25,209.209 INFO    ] Checking for system updates...
[2026-06-13 05:21:25,230.230 INFO    ] 200
[2026-06-13 05:21:25,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:25,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:25,262.262 INFO    ] No update needed
[2026-06-13 05:21:25,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:25,283.283 INFO    ] 200
[2026-06-13 05:21:25,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:25,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:25,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:25,452.452 INFO    ] No camera update needed
[2026-06-13 05:21:25,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:25,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:25,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:25,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:27,498.498 INFO    ] ================================================
[2026-06-13 05:21:27,513.513 INFO    ] Launching Daemon at Sat Jun 13 05:21:27 IST 2026
[2026-06-13 05:21:27,524.524 INFO    ] ================================================
[2026-06-13 05:21:27,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:27
[2026-06-13 05:21:28,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:28,339.339 INFO    ] Initializing speech engine...
[2026-06-13 05:21:28,350.350 INFO    ] 2026-06-13 05:21:28
[2026-06-13 05:21:28,559.559 INFO    ] 2026-06-13 05:21:28
[2026-06-13 05:21:28,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:28,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:28,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:28,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:21:28,959.959 INFO    ] time= 13/06/2026 05:21:28
[2026-06-13 05:21:29,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:21:29,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:21:29,080.080 INFO    ] No existing commands found in stream
[2026-06-13 05:21:34,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:34,094.094 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 05:21:35,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:21:35,299.299 INFO    ] Checking for system updates...
[2026-06-13 05:21:35,321.321 INFO    ] 200
[2026-06-13 05:21:35,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:35,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:35,357.357 INFO    ] No update needed
[2026-06-13 05:21:35,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:35,379.379 INFO    ] 200
[2026-06-13 05:21:35,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:35,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:35,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:35,455.455 INFO    ] No camera update needed
[2026-06-13 05:21:35,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:35,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:35,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:35,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:37,504.504 INFO    ] ================================================
[2026-06-13 05:21:37,519.519 INFO    ] Launching Daemon at Sat Jun 13 05:21:37 IST 2026
[2026-06-13 05:21:37,529.529 INFO    ] ================================================
[2026-06-13 05:21:37,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:37
[2026-06-13 05:21:38,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:38,303.303 INFO    ] Initializing speech engine...
[2026-06-13 05:21:38,307.307 INFO    ] 2026-06-13 05:21:38
[2026-06-13 05:21:38,532.532 INFO    ] 2026-06-13 05:21:38
[2026-06-13 05:21:38,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:38,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:38,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:38,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:21:38,959.959 INFO    ] time= 13/06/2026 05:21:38
[2026-06-13 05:21:38,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:21:39,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:21:39,076.076 INFO    ] No existing commands found in stream
[2026-06-13 05:21:44,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:44,090.090 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 05:21:45,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:21:45,326.326 INFO    ] Checking for system updates...
[2026-06-13 05:21:45,346.346 INFO    ] 200
[2026-06-13 05:21:45,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:45,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:21:45,380.380 INFO    ] No update needed
[2026-06-13 05:21:45,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:45,403.403 INFO    ] 200
[2026-06-13 05:21:45,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:45,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:45,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:21:45,454.454 INFO    ] No camera update needed
[2026-06-13 05:21:45,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:45,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:45,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:45,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:47,501.501 INFO    ] ================================================
[2026-06-13 05:21:47,516.516 INFO    ] Launching Daemon at Sat Jun 13 05:21:47 IST 2026
[2026-06-13 05:21:47,527.527 INFO    ] ================================================
[2026-06-13 05:21:47,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:47
[2026-06-13 05:21:48,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:48,333.333 INFO    ] Initializing speech engine...
[2026-06-13 05:21:48,341.341 INFO    ] 2026-06-13 05:21:48
[2026-06-13 05:21:48,549.549 INFO    ] 2026-06-13 05:21:48
[2026-06-13 05:21:48,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:48,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:48,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:48,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:21:48,974.974 INFO    ] time= 13/06/2026 05:21:48
[2026-06-13 05:21:48,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:21:49,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:21:49,071.071 INFO    ] No existing commands found in stream
[2026-06-13 05:21:54,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:21:54,084.084 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 05:21:56,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:21:56,353.353 INFO    ] Checking for system updates...
[2026-06-13 05:21:56,373.373 INFO    ] 200
[2026-06-13 05:21:56,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:56,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:56,408.408 INFO    ] No update needed
[2026-06-13 05:21:56,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 05:21:56,430.430 INFO    ] 200
[2026-06-13 05:21:56,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:21:56,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:21:56,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:21:56,493.493 INFO    ] No camera update needed
[2026-06-13 05:21:56,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:21:56,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:21:56,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:21:56,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:21:58,540.540 INFO    ] ================================================
[2026-06-13 05:21:58,555.555 INFO    ] Launching Daemon at Sat Jun 13 05:21:58 IST 2026
[2026-06-13 05:21:58,566.566 INFO    ] ================================================
[2026-06-13 05:21:58,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:21:58
[2026-06-13 05:21:59,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:21:59,422.422 INFO    ] Initializing speech engine...
[2026-06-13 05:21:59,426.426 INFO    ] 2026-06-13 05:21:59
[2026-06-13 05:21:59,637.637 INFO    ] 2026-06-13 05:21:59
[2026-06-13 05:21:59,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:21:59,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:21:59,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:21:59,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:00,062.062 INFO    ] time= 13/06/2026 05:22:00
[2026-06-13 05:22:00,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:00,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:00,161.161 INFO    ] No existing commands found in stream
[2026-06-13 05:22:05,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:22:05,173.173 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 05:22:08,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:22:08,084.084 INFO    ] Checking for system updates...
[2026-06-13 05:22:08,105.105 INFO    ] 200
[2026-06-13 05:22:08,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:08,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:22:08,139.139 INFO    ] No update needed
[2026-06-13 05:22:08,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 05:22:08,161.161 INFO    ] 200
[2026-06-13 05:22:08,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:08,190.190 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:22:08,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:22:08,229.229 INFO    ] No camera update needed
[2026-06-13 05:22:08,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:22:08,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:22:08,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:22:08,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:22:10,278.278 INFO    ] ================================================
[2026-06-13 05:22:10,293.293 INFO    ] Launching Daemon at Sat Jun 13 05:22:10 IST 2026
[2026-06-13 05:22:10,304.304 INFO    ] ================================================
[2026-06-13 05:22:10,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:22:10
[2026-06-13 05:22:10,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:22:11,110.110 INFO    ] Initializing speech engine...
[2026-06-13 05:22:11,118.118 INFO    ] 2026-06-13 05:22:11
[2026-06-13 05:22:11,333.333 INFO    ] 2026-06-13 05:22:11
[2026-06-13 05:22:11,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:22:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:22:11,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:22:11,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:11,740.740 INFO    ] time= 13/06/2026 05:22:11
[2026-06-13 05:22:11,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:11,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:11,880.880 INFO    ] No existing commands found in stream
[2026-06-13 05:22:16,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:22:16,892.892 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 05:22:19,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:22:19,934.934 INFO    ] Checking for system updates...
[2026-06-13 05:22:19,955.955 INFO    ] 200
[2026-06-13 05:22:19,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:19,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:19,990.990 INFO    ] No update needed
[2026-06-13 05:22:19,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 05:22:20,013.013 INFO    ] 200
[2026-06-13 05:22:20,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:20,039.039 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:22:20,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:20,074.074 INFO    ] No camera update needed
[2026-06-13 05:22:20,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:22:20,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:22:20,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:22:20,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:22:22,121.121 INFO    ] ================================================
[2026-06-13 05:22:22,136.136 INFO    ] Launching Daemon at Sat Jun 13 05:22:22 IST 2026
[2026-06-13 05:22:22,146.146 INFO    ] ================================================
[2026-06-13 05:22:22,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:22:22
[2026-06-13 05:22:23,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:22:23,488.488 INFO    ] Initializing speech engine...
[2026-06-13 05:22:23,493.493 INFO    ] 2026-06-13 05:22:23
[2026-06-13 05:22:23,700.700 INFO    ] 2026-06-13 05:22:23
[2026-06-13 05:22:23,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:22:23,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:22:23,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:22:24,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:24,100.100 INFO    ] time= 13/06/2026 05:22:24
[2026-06-13 05:22:24,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:24,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:24,214.214 INFO    ] No existing commands found in stream
[2026-06-13 05:22:29,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:22:29,222.222 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 05:22:32,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:22:32,168.168 INFO    ] Checking for system updates...
[2026-06-13 05:22:32,189.189 INFO    ] 200
[2026-06-13 05:22:32,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:32,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:32,222.222 INFO    ] No update needed
[2026-06-13 05:22:32,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 05:22:32,244.244 INFO    ] 200
[2026-06-13 05:22:32,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:32,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:22:32,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:32,293.293 INFO    ] No camera update needed
[2026-06-13 05:22:32,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:22:32,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:22:32,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:22:32,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:22:34,340.340 INFO    ] ================================================
[2026-06-13 05:22:34,355.355 INFO    ] Launching Daemon at Sat Jun 13 05:22:34 IST 2026
[2026-06-13 05:22:34,366.366 INFO    ] ================================================
[2026-06-13 05:22:34,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:22:34
[2026-06-13 05:22:35,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:22:35,149.149 INFO    ] Initializing speech engine...
[2026-06-13 05:22:35,159.159 INFO    ] 2026-06-13 05:22:35
[2026-06-13 05:22:35,364.364 INFO    ] 2026-06-13 05:22:35
[2026-06-13 05:22:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:22:35,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:22:35,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:22:35,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:35,758.758 INFO    ] time= 13/06/2026 05:22:35
[2026-06-13 05:22:35,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:35,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:35,884.884 INFO    ] No existing commands found in stream
[2026-06-13 05:22:40,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:22:40,897.897 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 05:22:42,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:22:42,448.448 INFO    ] Checking for system updates...
[2026-06-13 05:22:42,469.469 INFO    ] 200
[2026-06-13 05:22:42,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:42,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:22:42,502.502 INFO    ] No update needed
[2026-06-13 05:22:42,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 05:22:42,523.523 INFO    ] 200
[2026-06-13 05:22:42,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:42,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:22:42,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:22:42,585.585 INFO    ] No camera update needed
[2026-06-13 05:22:42,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:22:42,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:22:42,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:22:42,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:22:44,633.633 INFO    ] ================================================
[2026-06-13 05:22:44,648.648 INFO    ] Launching Daemon at Sat Jun 13 05:22:44 IST 2026
[2026-06-13 05:22:44,659.659 INFO    ] ================================================
[2026-06-13 05:22:44,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:22:44
[2026-06-13 05:22:45,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:22:45,418.418 INFO    ] Initializing speech engine...
[2026-06-13 05:22:45,430.430 INFO    ] 2026-06-13 05:22:45
[2026-06-13 05:22:45,639.639 INFO    ] 2026-06-13 05:22:45
[2026-06-13 05:22:45,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:22:45,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:22:45,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:22:45,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:46,051.051 INFO    ] time= 13/06/2026 05:22:45
[2026-06-13 05:22:46,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:46,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:46,157.157 INFO    ] No existing commands found in stream
[2026-06-13 05:22:51,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:22:51,171.171 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 05:22:54,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:22:54,094.094 INFO    ] Checking for system updates...
[2026-06-13 05:22:54,115.115 INFO    ] 200
[2026-06-13 05:22:54,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:54,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:54,149.149 INFO    ] No update needed
[2026-06-13 05:22:54,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 05:22:54,170.170 INFO    ] 200
[2026-06-13 05:22:54,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:22:54,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:22:54,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:22:54,246.246 INFO    ] No camera update needed
[2026-06-13 05:22:54,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:22:54,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:22:54,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:22:54,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:22:56,296.296 INFO    ] ================================================
[2026-06-13 05:22:56,311.311 INFO    ] Launching Daemon at Sat Jun 13 05:22:56 IST 2026
[2026-06-13 05:22:56,322.322 INFO    ] ================================================
[2026-06-13 05:22:56,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:22:56
[2026-06-13 05:22:56,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:22:57,118.118 INFO    ] Initializing speech engine...
[2026-06-13 05:22:57,123.123 INFO    ] 2026-06-13 05:22:57
[2026-06-13 05:22:57,337.337 INFO    ] 2026-06-13 05:22:57
[2026-06-13 05:22:57,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:22:57,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:22:57,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:22:57,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:22:57,750.750 INFO    ] time= 13/06/2026 05:22:57
[2026-06-13 05:22:57,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:22:57,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:22:57,885.885 INFO    ] No existing commands found in stream
[2026-06-13 05:23:02,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:02,898.898 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 05:23:03,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:23:03,464.464 INFO    ] Checking for system updates...
[2026-06-13 05:23:03,485.485 INFO    ] 200
[2026-06-13 05:23:03,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:03,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:03,518.518 INFO    ] No update needed
[2026-06-13 05:23:03,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:03,540.540 INFO    ] 200
[2026-06-13 05:23:03,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:03,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:03,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:03,605.605 INFO    ] No camera update needed
[2026-06-13 05:23:03,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:03,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:03,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:03,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:23:05,653.653 INFO    ] ================================================
[2026-06-13 05:23:05,669.669 INFO    ] Launching Daemon at Sat Jun 13 05:23:05 IST 2026
[2026-06-13 05:23:05,680.680 INFO    ] ================================================
[2026-06-13 05:23:06,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:23:06
[2026-06-13 05:23:06,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:23:06,542.542 INFO    ] Initializing speech engine...
[2026-06-13 05:23:06,548.548 INFO    ] 2026-06-13 05:23:06
[2026-06-13 05:23:06,757.757 INFO    ] 2026-06-13 05:23:06
[2026-06-13 05:23:06,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:23:06,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:23:06,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:23:07,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:23:07,173.173 INFO    ] time= 13/06/2026 05:23:07
[2026-06-13 05:23:07,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:23:07,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:23:07,281.281 INFO    ] No existing commands found in stream
[2026-06-13 05:23:12,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:12,299.299 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 05:23:15,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:23:15,489.489 INFO    ] Checking for system updates...
[2026-06-13 05:23:15,511.511 INFO    ] 200
[2026-06-13 05:23:15,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:15,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:15,547.547 INFO    ] No update needed
[2026-06-13 05:23:15,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:15,569.569 INFO    ] 200
[2026-06-13 05:23:15,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:15,596.596 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:15,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:15,634.634 INFO    ] No camera update needed
[2026-06-13 05:23:15,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:15,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:15,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:15,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:23:17,681.681 INFO    ] ================================================
[2026-06-13 05:23:17,696.696 INFO    ] Launching Daemon at Sat Jun 13 05:23:17 IST 2026
[2026-06-13 05:23:17,707.707 INFO    ] ================================================
[2026-06-13 05:23:18,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:23:18
[2026-06-13 05:23:18,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:23:18,569.569 INFO    ] Initializing speech engine...
[2026-06-13 05:23:18,575.575 INFO    ] 2026-06-13 05:23:18
[2026-06-13 05:23:18,780.780 INFO    ] 2026-06-13 05:23:18
[2026-06-13 05:23:18,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:23:18,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:23:19,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:23:19,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:23:19,174.174 INFO    ] time= 13/06/2026 05:23:19
[2026-06-13 05:23:19,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:23:19,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:23:19,293.293 INFO    ] No existing commands found in stream
[2026-06-13 05:23:24,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:24,307.307 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 05:23:27,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:23:27,542.542 INFO    ] Checking for system updates...
[2026-06-13 05:23:27,579.579 INFO    ] 200
[2026-06-13 05:23:27,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:27,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:27,640.640 INFO    ] No update needed
[2026-06-13 05:23:27,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:27,668.668 INFO    ] 200
[2026-06-13 05:23:27,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:27,693.693 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:27,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:27,831.831 INFO    ] No camera update needed
[2026-06-13 05:23:27,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:27,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:27,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:27,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:23:29,880.880 INFO    ] ================================================
[2026-06-13 05:23:29,895.895 INFO    ] Launching Daemon at Sat Jun 13 05:23:29 IST 2026
[2026-06-13 05:23:29,906.906 INFO    ] ================================================
[2026-06-13 05:23:30,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:23:30
[2026-06-13 05:23:30,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:23:30,683.683 INFO    ] Initializing speech engine...
[2026-06-13 05:23:30,691.691 INFO    ] 2026-06-13 05:23:30
[2026-06-13 05:23:30,906.906 INFO    ] 2026-06-13 05:23:30
[2026-06-13 05:23:30,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:23:31,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:23:31,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:23:31,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:23:31,321.321 INFO    ] time= 13/06/2026 05:23:31
[2026-06-13 05:23:31,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:23:31,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:23:31,460.460 INFO    ] No existing commands found in stream
[2026-06-13 05:23:36,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:36,473.473 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 05:23:37,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:23:37,585.585 INFO    ] Checking for system updates...
[2026-06-13 05:23:37,605.605 INFO    ] 200
[2026-06-13 05:23:37,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:37,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:37,639.639 INFO    ] No update needed
[2026-06-13 05:23:37,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:37,660.660 INFO    ] 200
[2026-06-13 05:23:37,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:37,686.686 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:37,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:37,722.722 INFO    ] No camera update needed
[2026-06-13 05:23:37,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:37,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:37,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:37,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:23:39,770.770 INFO    ] ================================================
[2026-06-13 05:23:39,786.786 INFO    ] Launching Daemon at Sat Jun 13 05:23:39 IST 2026
[2026-06-13 05:23:39,796.796 INFO    ] ================================================
[2026-06-13 05:23:40,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:23:40
[2026-06-13 05:23:40,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:23:40,601.601 INFO    ] Initializing speech engine...
[2026-06-13 05:23:40,606.606 INFO    ] 2026-06-13 05:23:40
[2026-06-13 05:23:40,811.811 INFO    ] 2026-06-13 05:23:40
[2026-06-13 05:23:40,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:23:41,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:23:41,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:23:41,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:23:41,211.211 INFO    ] time= 13/06/2026 05:23:41
[2026-06-13 05:23:41,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:23:41,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:23:41,325.325 INFO    ] No existing commands found in stream
[2026-06-13 05:23:46,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:46,337.337 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 05:23:46,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:23:46,954.954 INFO    ] Checking for system updates...
[2026-06-13 05:23:46,975.975 INFO    ] 200
[2026-06-13 05:23:46,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:47,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:47,011.011 INFO    ] No update needed
[2026-06-13 05:23:47,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:47,034.034 INFO    ] 200
[2026-06-13 05:23:47,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:47,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:47,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:23:47,100.100 INFO    ] No camera update needed
[2026-06-13 05:23:47,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:47,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:47,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:47,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:23:49,147.147 INFO    ] ================================================
[2026-06-13 05:23:49,163.163 INFO    ] Launching Daemon at Sat Jun 13 05:23:49 IST 2026
[2026-06-13 05:23:49,173.173 INFO    ] ================================================
[2026-06-13 05:23:49,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:23:49
[2026-06-13 05:23:49,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:23:49,986.986 INFO    ] Initializing speech engine...
[2026-06-13 05:23:49,994.994 INFO    ] 2026-06-13 05:23:49
[2026-06-13 05:23:50,202.202 INFO    ] 2026-06-13 05:23:50
[2026-06-13 05:23:50,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:23:50,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:23:50,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:23:50,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:23:50,603.603 INFO    ] time= 13/06/2026 05:23:50
[2026-06-13 05:23:50,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:23:50,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:23:50,719.719 INFO    ] No existing commands found in stream
[2026-06-13 05:23:55,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:23:55,731.731 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 05:23:57,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:23:57,979.979 INFO    ] Checking for system updates...
[2026-06-13 05:23:58,000.000 INFO    ] 200
[2026-06-13 05:23:58,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:58,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:58,035.035 INFO    ] No update needed
[2026-06-13 05:23:58,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 05:23:58,056.056 INFO    ] 200
[2026-06-13 05:23:58,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:23:58,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:23:58,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:23:58,123.123 INFO    ] No camera update needed
[2026-06-13 05:23:58,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:23:58,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:23:58,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:23:58,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:00,170.170 INFO    ] ================================================
[2026-06-13 05:24:00,185.185 INFO    ] Launching Daemon at Sat Jun 13 05:24:00 IST 2026
[2026-06-13 05:24:00,196.196 INFO    ] ================================================
[2026-06-13 05:24:00,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:00
[2026-06-13 05:24:00,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:00,991.991 INFO    ] Initializing speech engine...
[2026-06-13 05:24:00,997.997 INFO    ] 2026-06-13 05:24:00
[2026-06-13 05:24:01,204.204 INFO    ] 2026-06-13 05:24:01
[2026-06-13 05:24:01,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:01,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:01,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:01,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:01,582.582 INFO    ] time= 13/06/2026 05:24:01
[2026-06-13 05:24:01,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:01,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:01,649.649 INFO    ] No existing commands found in stream
[2026-06-13 05:24:06,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:24:06,684.684 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 05:24:08,753.753 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:24:08,754.754 INFO    ] Checking for system updates...
[2026-06-13 05:24:08,775.775 INFO    ] 200
[2026-06-13 05:24:08,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:08,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:08,810.810 INFO    ] No update needed
[2026-06-13 05:24:08,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 05:24:08,832.832 INFO    ] 200
[2026-06-13 05:24:08,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:08,858.858 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:24:08,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:08,893.893 INFO    ] No camera update needed
[2026-06-13 05:24:08,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:24:08,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:24:08,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:24:08,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:10,940.940 INFO    ] ================================================
[2026-06-13 05:24:10,955.955 INFO    ] Launching Daemon at Sat Jun 13 05:24:10 IST 2026
[2026-06-13 05:24:10,965.965 INFO    ] ================================================
[2026-06-13 05:24:11,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:11
[2026-06-13 05:24:11,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:11,748.748 INFO    ] Initializing speech engine...
[2026-06-13 05:24:11,756.756 INFO    ] 2026-06-13 05:24:11
[2026-06-13 05:24:11,967.967 INFO    ] 2026-06-13 05:24:11
[2026-06-13 05:24:12,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:12,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:12,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:12,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:12,392.392 INFO    ] time= 13/06/2026 05:24:12
[2026-06-13 05:24:12,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:12,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:12,521.521 INFO    ] No existing commands found in stream
[2026-06-13 05:24:17,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:24:17,551.551 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 05:24:18,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:24:18,365.365 INFO    ] Checking for system updates...
[2026-06-13 05:24:18,385.385 INFO    ] 200
[2026-06-13 05:24:18,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:18,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:24:18,419.419 INFO    ] No update needed
[2026-06-13 05:24:18,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 05:24:18,440.440 INFO    ] 200
[2026-06-13 05:24:18,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:18,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:24:18,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:24:18,506.506 INFO    ] No camera update needed
[2026-06-13 05:24:18,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:24:18,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:24:18,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:24:18,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:20,554.554 INFO    ] ================================================
[2026-06-13 05:24:20,570.570 INFO    ] Launching Daemon at Sat Jun 13 05:24:20 IST 2026
[2026-06-13 05:24:20,580.580 INFO    ] ================================================
[2026-06-13 05:24:20,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:20
[2026-06-13 05:24:21,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:21,410.410 INFO    ] Initializing speech engine...
[2026-06-13 05:24:21,425.425 INFO    ] 2026-06-13 05:24:21
[2026-06-13 05:24:21,638.638 INFO    ] 2026-06-13 05:24:21
[2026-06-13 05:24:21,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:21,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:21,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:22,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:22,066.066 INFO    ] time= 13/06/2026 05:24:22
[2026-06-13 05:24:22,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:22,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:22,165.165 INFO    ] No existing commands found in stream
[2026-06-13 05:24:27,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:24:27,183.183 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 05:24:31,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:24:31,302.302 INFO    ] Checking for system updates...
[2026-06-13 05:24:31,324.324 INFO    ] 200
[2026-06-13 05:24:31,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:31,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:24:31,357.357 INFO    ] No update needed
[2026-06-13 05:24:31,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 05:24:31,378.378 INFO    ] 200
[2026-06-13 05:24:31,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:31,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:24:31,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:24:31,441.441 INFO    ] No camera update needed
[2026-06-13 05:24:31,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:24:31,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:24:31,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:24:31,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:33,481.481 INFO    ] ================================================
[2026-06-13 05:24:33,496.496 INFO    ] Launching Daemon at Sat Jun 13 05:24:33 IST 2026
[2026-06-13 05:24:33,508.508 INFO    ] ================================================
[2026-06-13 05:24:33,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:33
[2026-06-13 05:24:34,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:34,314.314 INFO    ] Initializing speech engine...
[2026-06-13 05:24:34,319.319 INFO    ] 2026-06-13 05:24:34
[2026-06-13 05:24:34,525.525 INFO    ] 2026-06-13 05:24:34
[2026-06-13 05:24:34,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:34,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:34,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:34,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:34,935.935 INFO    ] time= 13/06/2026 05:24:34
[2026-06-13 05:24:34,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:34,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:35,054.054 INFO    ] No existing commands found in stream
[2026-06-13 05:24:40,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:24:40,067.067 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 05:24:42,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:24:42,047.047 INFO    ] Checking for system updates...
[2026-06-13 05:24:42,068.068 INFO    ] 200
[2026-06-13 05:24:42,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:42,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:42,101.101 INFO    ] No update needed
[2026-06-13 05:24:42,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 05:24:42,123.123 INFO    ] 200
[2026-06-13 05:24:42,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:42,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:24:42,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:42,190.190 INFO    ] No camera update needed
[2026-06-13 05:24:42,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:24:42,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:24:42,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:24:42,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:44,238.238 INFO    ] ================================================
[2026-06-13 05:24:44,254.254 INFO    ] Launching Daemon at Sat Jun 13 05:24:44 IST 2026
[2026-06-13 05:24:44,265.265 INFO    ] ================================================
[2026-06-13 05:24:44,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:44
[2026-06-13 05:24:44,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:45,102.102 INFO    ] Initializing speech engine...
[2026-06-13 05:24:45,106.106 INFO    ] 2026-06-13 05:24:45
[2026-06-13 05:24:45,324.324 INFO    ] 2026-06-13 05:24:45
[2026-06-13 05:24:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:45,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:45,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:45,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:45,731.731 INFO    ] time= 13/06/2026 05:24:45
[2026-06-13 05:24:45,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:45,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:45,885.885 INFO    ] No existing commands found in stream
[2026-06-13 05:24:50,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:24:50,899.899 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 05:24:55,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:24:55,129.129 INFO    ] Checking for system updates...
[2026-06-13 05:24:55,150.150 INFO    ] 200
[2026-06-13 05:24:55,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:55,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:55,184.184 INFO    ] No update needed
[2026-06-13 05:24:55,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 05:24:55,206.206 INFO    ] 200
[2026-06-13 05:24:55,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:24:55,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:24:55,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:24:55,270.270 INFO    ] No camera update needed
[2026-06-13 05:24:55,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:24:55,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:24:55,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:24:55,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:24:57,323.323 INFO    ] ================================================
[2026-06-13 05:24:57,338.338 INFO    ] Launching Daemon at Sat Jun 13 05:24:57 IST 2026
[2026-06-13 05:24:57,350.350 INFO    ] ================================================
[2026-06-13 05:24:57,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:24:57
[2026-06-13 05:24:58,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:24:58,226.226 INFO    ] Initializing speech engine...
[2026-06-13 05:24:58,230.230 INFO    ] 2026-06-13 05:24:58
[2026-06-13 05:24:58,435.435 INFO    ] 2026-06-13 05:24:58
[2026-06-13 05:24:58,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:24:58,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:24:58,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:24:58,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:24:58,826.826 INFO    ] time= 13/06/2026 05:24:58
[2026-06-13 05:24:58,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:24:58,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:24:58,952.952 INFO    ] No existing commands found in stream
[2026-06-13 05:25:03,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:03,964.964 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 05:25:05,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:25:05,799.799 INFO    ] Checking for system updates...
[2026-06-13 05:25:05,820.820 INFO    ] 200
[2026-06-13 05:25:05,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:05,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:25:05,855.855 INFO    ] No update needed
[2026-06-13 05:25:05,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 05:25:05,877.877 INFO    ] 200
[2026-06-13 05:25:05,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:05,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:25:05,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:05,947.947 INFO    ] No camera update needed
[2026-06-13 05:25:05,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:25:05,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:25:05,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:25:05,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:25:08,995.995 INFO    ] ================================================
[2026-06-13 05:25:08,011.011 INFO    ] Launching Daemon at Sat Jun 13 05:25:08 IST 2026
[2026-06-13 05:25:08,023.023 INFO    ] ================================================
[2026-06-13 05:25:08,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:25:08
[2026-06-13 05:25:09,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:25:09,435.435 INFO    ] Initializing speech engine...
[2026-06-13 05:25:09,444.444 INFO    ] 2026-06-13 05:25:09
[2026-06-13 05:25:09,703.703 INFO    ] 2026-06-13 05:25:09
[2026-06-13 05:25:09,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:25:09,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:25:09,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:25:10,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:25:10,040.040 INFO    ] time= 13/06/2026 05:25:10
[2026-06-13 05:25:10,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:25:10,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:25:10,134.134 INFO    ] No existing commands found in stream
[2026-06-13 05:25:15,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:15,150.150 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 05:25:17,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:25:17,637.637 INFO    ] Checking for system updates...
[2026-06-13 05:25:17,657.657 INFO    ] 200
[2026-06-13 05:25:17,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:17,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:17,691.691 INFO    ] No update needed
[2026-06-13 05:25:17,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 05:25:17,714.714 INFO    ] 200
[2026-06-13 05:25:17,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:17,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:25:17,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:17,788.788 INFO    ] No camera update needed
[2026-06-13 05:25:17,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:25:17,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:25:17,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:25:17,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:25:19,836.836 INFO    ] ================================================
[2026-06-13 05:25:19,851.851 INFO    ] Launching Daemon at Sat Jun 13 05:25:19 IST 2026
[2026-06-13 05:25:19,863.863 INFO    ] ================================================
[2026-06-13 05:25:20,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:25:20
[2026-06-13 05:25:20,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:25:20,726.726 INFO    ] Initializing speech engine...
[2026-06-13 05:25:20,730.730 INFO    ] 2026-06-13 05:25:20
[2026-06-13 05:25:20,940.940 INFO    ] 2026-06-13 05:25:20
[2026-06-13 05:25:20,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:25:21,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:25:21,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:25:21,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:25:21,351.351 INFO    ] time= 13/06/2026 05:25:21
[2026-06-13 05:25:21,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:25:21,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:25:21,465.465 INFO    ] No existing commands found in stream
[2026-06-13 05:25:26,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:26,476.476 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 05:25:27,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:25:27,248.248 INFO    ] Checking for system updates...
[2026-06-13 05:25:27,271.271 INFO    ] 200
[2026-06-13 05:25:27,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:27,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:27,306.306 INFO    ] No update needed
[2026-06-13 05:25:27,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 05:25:27,327.327 INFO    ] 200
[2026-06-13 05:25:27,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:27,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:25:27,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:27,387.387 INFO    ] No camera update needed
[2026-06-13 05:25:27,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:25:27,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:25:27,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:25:27,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:25:29,435.435 INFO    ] ================================================
[2026-06-13 05:25:29,450.450 INFO    ] Launching Daemon at Sat Jun 13 05:25:29 IST 2026
[2026-06-13 05:25:29,461.461 INFO    ] ================================================
[2026-06-13 05:25:29,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:25:29
[2026-06-13 05:25:30,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:25:30,260.260 INFO    ] Initializing speech engine...
[2026-06-13 05:25:30,264.264 INFO    ] 2026-06-13 05:25:30
[2026-06-13 05:25:30,467.467 INFO    ] 2026-06-13 05:25:30
[2026-06-13 05:25:30,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:25:30,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:25:30,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:25:30,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:25:30,892.892 INFO    ] time= 13/06/2026 05:25:30
[2026-06-13 05:25:30,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:25:30,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:25:31,019.019 INFO    ] No existing commands found in stream
[2026-06-13 05:25:36,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:36,031.031 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 05:25:37,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:25:37,808.808 INFO    ] Checking for system updates...
[2026-06-13 05:25:37,830.830 INFO    ] 200
[2026-06-13 05:25:37,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:37,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:25:37,863.863 INFO    ] No update needed
[2026-06-13 05:25:37,864.864 INFO    ] Checking for camera pi updates...
[2026-06-13 05:25:37,886.886 INFO    ] 200
[2026-06-13 05:25:37,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:37,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:25:37,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:25:37,950.950 INFO    ] No camera update needed
[2026-06-13 05:25:37,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:25:37,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:25:37,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:25:37,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:25:40,996.996 INFO    ] ================================================
[2026-06-13 05:25:40,012.012 INFO    ] Launching Daemon at Sat Jun 13 05:25:40 IST 2026
[2026-06-13 05:25:40,022.022 INFO    ] ================================================
[2026-06-13 05:25:40,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:25:40
[2026-06-13 05:25:40,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:25:40,822.822 INFO    ] Initializing speech engine...
[2026-06-13 05:25:40,832.832 INFO    ] 2026-06-13 05:25:40
[2026-06-13 05:25:41,035.035 INFO    ] 2026-06-13 05:25:41
[2026-06-13 05:25:41,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:25:41,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:25:41,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:25:41,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:25:41,438.438 INFO    ] time= 13/06/2026 05:25:41
[2026-06-13 05:25:41,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:25:41,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:25:41,546.546 INFO    ] No existing commands found in stream
[2026-06-13 05:25:46,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:46,559.559 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 05:25:50,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:25:50,097.097 INFO    ] Checking for system updates...
[2026-06-13 05:25:50,119.119 INFO    ] 200
[2026-06-13 05:25:50,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:50,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:50,155.155 INFO    ] No update needed
[2026-06-13 05:25:50,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 05:25:50,176.176 INFO    ] 200
[2026-06-13 05:25:50,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:25:50,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:25:50,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:25:50,238.238 INFO    ] No camera update needed
[2026-06-13 05:25:50,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:25:50,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:25:50,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:25:50,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:25:52,286.286 INFO    ] ================================================
[2026-06-13 05:25:52,301.301 INFO    ] Launching Daemon at Sat Jun 13 05:25:52 IST 2026
[2026-06-13 05:25:52,313.313 INFO    ] ================================================
[2026-06-13 05:25:52,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:25:52
[2026-06-13 05:25:52,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:25:53,134.134 INFO    ] Initializing speech engine...
[2026-06-13 05:25:53,143.143 INFO    ] 2026-06-13 05:25:53
[2026-06-13 05:25:53,396.396 INFO    ] 2026-06-13 05:25:53
[2026-06-13 05:25:53,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:25:53,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:25:53,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:25:53,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:25:53,736.736 INFO    ] time= 13/06/2026 05:25:53
[2026-06-13 05:25:53,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:25:53,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:25:53,849.849 INFO    ] No existing commands found in stream
[2026-06-13 05:25:58,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:25:58,864.864 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 05:26:02,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:26:02,433.433 INFO    ] Checking for system updates...
[2026-06-13 05:26:02,460.460 INFO    ] 200
[2026-06-13 05:26:02,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:02,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:02,505.505 INFO    ] No update needed
[2026-06-13 05:26:02,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 05:26:02,540.540 INFO    ] 200
[2026-06-13 05:26:02,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:02,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:26:02,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:02,612.612 INFO    ] No camera update needed
[2026-06-13 05:26:02,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:26:02,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:26:02,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:26:02,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:26:04,661.661 INFO    ] ================================================
[2026-06-13 05:26:04,676.676 INFO    ] Launching Daemon at Sat Jun 13 05:26:04 IST 2026
[2026-06-13 05:26:04,686.686 INFO    ] ================================================
[2026-06-13 05:26:05,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:26:05
[2026-06-13 05:26:05,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:26:05,533.533 INFO    ] Initializing speech engine...
[2026-06-13 05:26:05,541.541 INFO    ] 2026-06-13 05:26:05
[2026-06-13 05:26:05,755.755 INFO    ] 2026-06-13 05:26:05
[2026-06-13 05:26:05,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:26:05,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:26:05,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:26:06,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:26:06,179.179 INFO    ] time= 13/06/2026 05:26:06
[2026-06-13 05:26:06,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:26:06,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:26:06,290.290 INFO    ] No existing commands found in stream
[2026-06-13 05:26:11,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:26:11,303.303 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 05:26:15,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:26:15,446.446 INFO    ] Checking for system updates...
[2026-06-13 05:26:15,467.467 INFO    ] 200
[2026-06-13 05:26:15,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:15,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:26:15,503.503 INFO    ] No update needed
[2026-06-13 05:26:15,505.505 INFO    ] Checking for camera pi updates...
[2026-06-13 05:26:15,525.525 INFO    ] 200
[2026-06-13 05:26:15,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:15,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:26:15,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:26:15,602.602 INFO    ] No camera update needed
[2026-06-13 05:26:15,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:26:15,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:26:15,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:26:15,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:26:17,657.657 INFO    ] ================================================
[2026-06-13 05:26:17,672.672 INFO    ] Launching Daemon at Sat Jun 13 05:26:17 IST 2026
[2026-06-13 05:26:17,683.683 INFO    ] ================================================
[2026-06-13 05:26:18,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:26:18
[2026-06-13 05:26:18,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:26:19,023.023 INFO    ] Initializing speech engine...
[2026-06-13 05:26:19,029.029 INFO    ] 2026-06-13 05:26:19
[2026-06-13 05:26:19,238.238 INFO    ] 2026-06-13 05:26:19
[2026-06-13 05:26:19,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:26:19,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:26:19,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:26:19,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:26:19,666.666 INFO    ] time= 13/06/2026 05:26:19
[2026-06-13 05:26:19,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:26:19,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:26:19,764.764 INFO    ] No existing commands found in stream
[2026-06-13 05:26:24,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:26:24,778.778 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 05:26:28,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:26:28,557.557 INFO    ] Checking for system updates...
[2026-06-13 05:26:28,580.580 INFO    ] 200
[2026-06-13 05:26:28,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:28,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:26:28,616.616 INFO    ] No update needed
[2026-06-13 05:26:28,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 05:26:28,638.638 INFO    ] 200
[2026-06-13 05:26:28,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:28,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:26:28,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:26:28,714.714 INFO    ] No camera update needed
[2026-06-13 05:26:28,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:26:28,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:26:28,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:26:28,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:26:30,761.761 INFO    ] ================================================
[2026-06-13 05:26:30,776.776 INFO    ] Launching Daemon at Sat Jun 13 05:26:30 IST 2026
[2026-06-13 05:26:30,786.786 INFO    ] ================================================
[2026-06-13 05:26:31,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:26:31
[2026-06-13 05:26:31,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:26:31,618.618 INFO    ] Initializing speech engine...
[2026-06-13 05:26:31,623.623 INFO    ] 2026-06-13 05:26:31
[2026-06-13 05:26:31,837.837 INFO    ] 2026-06-13 05:26:31
[2026-06-13 05:26:31,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:26:32,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:26:32,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:26:32,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:26:32,270.270 INFO    ] time= 13/06/2026 05:26:32
[2026-06-13 05:26:32,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:26:32,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:26:32,404.404 INFO    ] No existing commands found in stream
[2026-06-13 05:26:37,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:26:37,413.413 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 05:26:40,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:26:40,522.522 INFO    ] Checking for system updates...
[2026-06-13 05:26:40,544.544 INFO    ] 200
[2026-06-13 05:26:40,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:40,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:40,579.579 INFO    ] No update needed
[2026-06-13 05:26:40,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 05:26:40,600.600 INFO    ] 200
[2026-06-13 05:26:40,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:40,626.626 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:26:40,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:40,660.660 INFO    ] No camera update needed
[2026-06-13 05:26:40,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:26:40,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:26:40,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:26:40,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:26:42,708.708 INFO    ] ================================================
[2026-06-13 05:26:42,724.724 INFO    ] Launching Daemon at Sat Jun 13 05:26:42 IST 2026
[2026-06-13 05:26:42,734.734 INFO    ] ================================================
[2026-06-13 05:26:43,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:26:43
[2026-06-13 05:26:43,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:26:43,570.570 INFO    ] Initializing speech engine...
[2026-06-13 05:26:43,575.575 INFO    ] 2026-06-13 05:26:43
[2026-06-13 05:26:43,788.788 INFO    ] 2026-06-13 05:26:43
[2026-06-13 05:26:43,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:26:44,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:26:44,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:26:44,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:26:44,130.130 INFO    ] time= 13/06/2026 05:26:44
[2026-06-13 05:26:44,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:26:44,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:26:44,247.247 INFO    ] No existing commands found in stream
[2026-06-13 05:26:49,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:26:49,265.265 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 05:26:50,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:26:50,615.615 INFO    ] Checking for system updates...
[2026-06-13 05:26:50,638.638 INFO    ] 200
[2026-06-13 05:26:50,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:50,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:50,675.675 INFO    ] No update needed
[2026-06-13 05:26:50,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 05:26:50,701.701 INFO    ] 200
[2026-06-13 05:26:50,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:26:50,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:26:50,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:26:50,778.778 INFO    ] No camera update needed
[2026-06-13 05:26:50,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:26:50,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:26:50,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:26:50,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:26:52,825.825 INFO    ] ================================================
[2026-06-13 05:26:52,840.840 INFO    ] Launching Daemon at Sat Jun 13 05:26:52 IST 2026
[2026-06-13 05:26:52,851.851 INFO    ] ================================================
[2026-06-13 05:26:53,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:26:53
[2026-06-13 05:26:53,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:26:53,693.693 INFO    ] Initializing speech engine...
[2026-06-13 05:26:53,698.698 INFO    ] 2026-06-13 05:26:53
[2026-06-13 05:26:53,908.908 INFO    ] 2026-06-13 05:26:53
[2026-06-13 05:26:53,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:26:54,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:26:54,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:26:54,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:26:54,313.313 INFO    ] time= 13/06/2026 05:26:54
[2026-06-13 05:26:54,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:26:54,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:26:54,436.436 INFO    ] No existing commands found in stream
[2026-06-13 05:26:59,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:26:59,450.450 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 05:27:02,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:27:02,879.879 INFO    ] Checking for system updates...
[2026-06-13 05:27:02,903.903 INFO    ] 200
[2026-06-13 05:27:02,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:02,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:02,941.941 INFO    ] No update needed
[2026-06-13 05:27:02,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 05:27:02,962.962 INFO    ] 200
[2026-06-13 05:27:02,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:02,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:27:03,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:03,016.016 INFO    ] No camera update needed
[2026-06-13 05:27:03,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:27:03,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:27:03,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:27:03,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:27:05,064.064 INFO    ] ================================================
[2026-06-13 05:27:05,080.080 INFO    ] Launching Daemon at Sat Jun 13 05:27:05 IST 2026
[2026-06-13 05:27:05,091.091 INFO    ] ================================================
[2026-06-13 05:27:05,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:27:05
[2026-06-13 05:27:05,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:27:05,900.900 INFO    ] Initializing speech engine...
[2026-06-13 05:27:05,903.903 INFO    ] 2026-06-13 05:27:05
[2026-06-13 05:27:06,102.102 INFO    ] 2026-06-13 05:27:06
[2026-06-13 05:27:06,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:27:06,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:27:06,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:27:06,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:27:06,555.555 INFO    ] time= 13/06/2026 05:27:06
[2026-06-13 05:27:06,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:27:06,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:27:06,668.668 INFO    ] No existing commands found in stream
[2026-06-13 05:27:11,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:27:11,677.677 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 05:27:13,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:27:13,538.538 INFO    ] Checking for system updates...
[2026-06-13 05:27:13,564.564 INFO    ] 200
[2026-06-13 05:27:13,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:13,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:13,597.597 INFO    ] No update needed
[2026-06-13 05:27:13,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 05:27:13,619.619 INFO    ] 200
[2026-06-13 05:27:13,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:13,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:27:13,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:13,685.685 INFO    ] No camera update needed
[2026-06-13 05:27:13,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:27:13,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:27:13,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:27:13,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:27:15,733.733 INFO    ] ================================================
[2026-06-13 05:27:15,749.749 INFO    ] Launching Daemon at Sat Jun 13 05:27:15 IST 2026
[2026-06-13 05:27:15,761.761 INFO    ] ================================================
[2026-06-13 05:27:16,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:27:16
[2026-06-13 05:27:16,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:27:16,540.540 INFO    ] Initializing speech engine...
[2026-06-13 05:27:16,548.548 INFO    ] 2026-06-13 05:27:16
[2026-06-13 05:27:16,760.760 INFO    ] 2026-06-13 05:27:16
[2026-06-13 05:27:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:27:16,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:27:16,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:27:17,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:27:17,158.158 INFO    ] time= 13/06/2026 05:27:17
[2026-06-13 05:27:17,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:27:17,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:27:17,280.280 INFO    ] No existing commands found in stream
[2026-06-13 05:27:22,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:27:22,292.292 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 05:27:25,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:27:25,658.658 INFO    ] Checking for system updates...
[2026-06-13 05:27:25,679.679 INFO    ] 200
[2026-06-13 05:27:25,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:25,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:27:25,715.715 INFO    ] No update needed
[2026-06-13 05:27:25,716.716 INFO    ] Checking for camera pi updates...
[2026-06-13 05:27:25,739.739 INFO    ] 200
[2026-06-13 05:27:25,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:25,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:27:25,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:27:25,803.803 INFO    ] No camera update needed
[2026-06-13 05:27:25,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:27:25,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:27:25,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:27:25,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:27:27,854.854 INFO    ] ================================================
[2026-06-13 05:27:27,870.870 INFO    ] Launching Daemon at Sat Jun 13 05:27:27 IST 2026
[2026-06-13 05:27:27,881.881 INFO    ] ================================================
[2026-06-13 05:27:28,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:27:28
[2026-06-13 05:27:28,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:27:28,920.920 INFO    ] Initializing speech engine...
[2026-06-13 05:27:28,928.928 INFO    ] 2026-06-13 05:27:28
[2026-06-13 05:27:29,221.221 INFO    ] 2026-06-13 05:27:29
[2026-06-13 05:27:29,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:27:29,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:27:29,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:27:29,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:27:29,684.684 INFO    ] time= 13/06/2026 05:27:29
[2026-06-13 05:27:29,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:27:29,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:27:29,912.912 INFO    ] No existing commands found in stream
[2026-06-13 05:27:34,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:27:34,944.944 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 05:27:39,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:27:39,042.042 INFO    ] Checking for system updates...
[2026-06-13 05:27:39,064.064 INFO    ] 200
[2026-06-13 05:27:39,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:39,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:39,099.099 INFO    ] No update needed
[2026-06-13 05:27:39,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 05:27:39,120.120 INFO    ] 200
[2026-06-13 05:27:39,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:39,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:27:39,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:27:39,284.284 INFO    ] No camera update needed
[2026-06-13 05:27:39,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:27:39,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:27:39,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:27:39,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:27:41,332.332 INFO    ] ================================================
[2026-06-13 05:27:41,347.347 INFO    ] Launching Daemon at Sat Jun 13 05:27:41 IST 2026
[2026-06-13 05:27:41,359.359 INFO    ] ================================================
[2026-06-13 05:27:41,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:27:41
[2026-06-13 05:27:42,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:27:42,165.165 INFO    ] Initializing speech engine...
[2026-06-13 05:27:42,170.170 INFO    ] 2026-06-13 05:27:42
[2026-06-13 05:27:42,373.373 INFO    ] 2026-06-13 05:27:42
[2026-06-13 05:27:42,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:27:42,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:27:42,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:27:42,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:27:42,768.768 INFO    ] time= 13/06/2026 05:27:42
[2026-06-13 05:27:42,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:27:42,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:27:42,889.889 INFO    ] No existing commands found in stream
[2026-06-13 05:27:47,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:27:47,901.901 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 05:27:48,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:27:48,276.276 INFO    ] Checking for system updates...
[2026-06-13 05:27:48,298.298 INFO    ] 200
[2026-06-13 05:27:48,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:48,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:27:48,335.335 INFO    ] No update needed
[2026-06-13 05:27:48,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 05:27:48,356.356 INFO    ] 200
[2026-06-13 05:27:48,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:27:48,383.383 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:27:48,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:27:48,430.430 INFO    ] No camera update needed
[2026-06-13 05:27:48,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:27:48,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:27:48,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:27:48,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:27:50,481.481 INFO    ] ================================================
[2026-06-13 05:27:50,497.497 INFO    ] Launching Daemon at Sat Jun 13 05:27:50 IST 2026
[2026-06-13 05:27:50,508.508 INFO    ] ================================================
[2026-06-13 05:27:50,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:27:50
[2026-06-13 05:27:51,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:27:51,371.371 INFO    ] Initializing speech engine...
[2026-06-13 05:27:51,377.377 INFO    ] 2026-06-13 05:27:51
[2026-06-13 05:27:51,591.591 INFO    ] 2026-06-13 05:27:51
[2026-06-13 05:27:51,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:27:51,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:27:51,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:27:51,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:27:52,011.011 INFO    ] time= 13/06/2026 05:27:51
[2026-06-13 05:27:52,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:27:52,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:27:52,110.110 INFO    ] No existing commands found in stream
[2026-06-13 05:27:57,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:27:57,124.124 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 05:28:00,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:28:00,747.747 INFO    ] Checking for system updates...
[2026-06-13 05:28:00,768.768 INFO    ] 200
[2026-06-13 05:28:00,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:00,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:00,803.803 INFO    ] No update needed
[2026-06-13 05:28:00,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:00,824.824 INFO    ] 200
[2026-06-13 05:28:00,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:00,849.849 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:00,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:00,886.886 INFO    ] No camera update needed
[2026-06-13 05:28:00,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:00,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:00,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:00,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:28:02,928.928 INFO    ] ================================================
[2026-06-13 05:28:02,943.943 INFO    ] Launching Daemon at Sat Jun 13 05:28:02 IST 2026
[2026-06-13 05:28:02,954.954 INFO    ] ================================================
[2026-06-13 05:28:03,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:28:03
[2026-06-13 05:28:03,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:28:03,730.730 INFO    ] Initializing speech engine...
[2026-06-13 05:28:03,734.734 INFO    ] 2026-06-13 05:28:03
[2026-06-13 05:28:03,964.964 INFO    ] 2026-06-13 05:28:03
[2026-06-13 05:28:03,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:28:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:28:04,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:28:04,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:28:04,342.342 INFO    ] time= 13/06/2026 05:28:04
[2026-06-13 05:28:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:28:04,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:28:04,524.524 INFO    ] No existing commands found in stream
[2026-06-13 05:28:09,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:28:09,536.536 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 05:28:10,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:28:10,316.316 INFO    ] Checking for system updates...
[2026-06-13 05:28:10,354.354 INFO    ] 200
[2026-06-13 05:28:10,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:10,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:28:10,415.415 INFO    ] No update needed
[2026-06-13 05:28:10,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:10,451.451 INFO    ] 200
[2026-06-13 05:28:10,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:10,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:10,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:10,515.515 INFO    ] No camera update needed
[2026-06-13 05:28:10,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:10,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:10,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:10,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:28:12,566.566 INFO    ] ================================================
[2026-06-13 05:28:12,581.581 INFO    ] Launching Daemon at Sat Jun 13 05:28:12 IST 2026
[2026-06-13 05:28:12,593.593 INFO    ] ================================================
[2026-06-13 05:28:12,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:28:12
[2026-06-13 05:28:13,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:28:13,419.419 INFO    ] Initializing speech engine...
[2026-06-13 05:28:13,424.424 INFO    ] 2026-06-13 05:28:13
[2026-06-13 05:28:13,636.636 INFO    ] 2026-06-13 05:28:13
[2026-06-13 05:28:13,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:28:13,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:28:13,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:28:14,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:28:14,066.066 INFO    ] time= 13/06/2026 05:28:14
[2026-06-13 05:28:14,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:28:14,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:28:14,292.292 INFO    ] No existing commands found in stream
[2026-06-13 05:28:19,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:28:19,316.316 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 05:28:21,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:28:21,267.267 INFO    ] Checking for system updates...
[2026-06-13 05:28:21,288.288 INFO    ] 200
[2026-06-13 05:28:21,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:21,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:28:21,322.322 INFO    ] No update needed
[2026-06-13 05:28:21,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:21,346.346 INFO    ] 200
[2026-06-13 05:28:21,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:21,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:21,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:28:21,408.408 INFO    ] No camera update needed
[2026-06-13 05:28:21,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:21,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:21,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:21,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:28:23,457.457 INFO    ] ================================================
[2026-06-13 05:28:23,472.472 INFO    ] Launching Daemon at Sat Jun 13 05:28:23 IST 2026
[2026-06-13 05:28:23,483.483 INFO    ] ================================================
[2026-06-13 05:28:23,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:28:23
[2026-06-13 05:28:24,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:28:24,342.342 INFO    ] Initializing speech engine...
[2026-06-13 05:28:24,347.347 INFO    ] 2026-06-13 05:28:24
[2026-06-13 05:28:24,555.555 INFO    ] 2026-06-13 05:28:24
[2026-06-13 05:28:24,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:28:24,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:28:24,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:28:24,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:28:24,982.982 INFO    ] time= 13/06/2026 05:28:24
[2026-06-13 05:28:25,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:28:25,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:28:25,080.080 INFO    ] No existing commands found in stream
[2026-06-13 05:28:30,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:28:30,098.098 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 05:28:33,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:28:33,453.453 INFO    ] Checking for system updates...
[2026-06-13 05:28:33,474.474 INFO    ] 200
[2026-06-13 05:28:33,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:33,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:33,507.507 INFO    ] No update needed
[2026-06-13 05:28:33,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:33,527.527 INFO    ] 200
[2026-06-13 05:28:33,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:33,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:33,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:33,595.595 INFO    ] No camera update needed
[2026-06-13 05:28:33,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:33,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:33,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:33,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:28:35,641.641 INFO    ] ================================================
[2026-06-13 05:28:35,656.656 INFO    ] Launching Daemon at Sat Jun 13 05:28:35 IST 2026
[2026-06-13 05:28:35,667.667 INFO    ] ================================================
[2026-06-13 05:28:36,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:28:36
[2026-06-13 05:28:36,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:28:36,964.964 INFO    ] Initializing speech engine...
[2026-06-13 05:28:36,978.978 INFO    ] 2026-06-13 05:28:36
[2026-06-13 05:28:37,262.262 INFO    ] 2026-06-13 05:28:37
[2026-06-13 05:28:37,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:28:37,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:28:37,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:28:37,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:28:37,722.722 INFO    ] time= 13/06/2026 05:28:37
[2026-06-13 05:28:37,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:28:37,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:28:37,928.928 INFO    ] No existing commands found in stream
[2026-06-13 05:28:42,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:28:42,957.957 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 05:28:49,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:28:49,478.478 INFO    ] Checking for system updates...
[2026-06-13 05:28:49,514.514 INFO    ] 200
[2026-06-13 05:28:49,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:49,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:49,573.573 INFO    ] No update needed
[2026-06-13 05:28:49,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:49,610.610 INFO    ] 200
[2026-06-13 05:28:49,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:49,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:49,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:28:49,686.686 INFO    ] No camera update needed
[2026-06-13 05:28:49,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:49,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:49,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:49,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:28:51,733.733 INFO    ] ================================================
[2026-06-13 05:28:51,748.748 INFO    ] Launching Daemon at Sat Jun 13 05:28:51 IST 2026
[2026-06-13 05:28:51,759.759 INFO    ] ================================================
[2026-06-13 05:28:52,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:28:52
[2026-06-13 05:28:52,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:28:52,570.570 INFO    ] Initializing speech engine...
[2026-06-13 05:28:52,581.581 INFO    ] 2026-06-13 05:28:52
[2026-06-13 05:28:52,796.796 INFO    ] 2026-06-13 05:28:52
[2026-06-13 05:28:52,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:28:52,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:28:53,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:28:53,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:28:53,221.221 INFO    ] time= 13/06/2026 05:28:53
[2026-06-13 05:28:53,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:28:53,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:28:53,350.350 INFO    ] No existing commands found in stream
[2026-06-13 05:28:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:28:58,363.363 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 05:28:59,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:28:59,377.377 INFO    ] Checking for system updates...
[2026-06-13 05:28:59,399.399 INFO    ] 200
[2026-06-13 05:28:59,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:59,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:28:59,432.432 INFO    ] No update needed
[2026-06-13 05:28:59,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 05:28:59,453.453 INFO    ] 200
[2026-06-13 05:28:59,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:28:59,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:28:59,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:28:59,526.526 INFO    ] No camera update needed
[2026-06-13 05:28:59,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:28:59,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:28:59,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:28:59,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:01,568.568 INFO    ] ================================================
[2026-06-13 05:29:01,579.579 INFO    ] Launching Daemon at Sat Jun 13 05:29:01 IST 2026
[2026-06-13 05:29:01,589.589 INFO    ] ================================================
[2026-06-13 05:29:01,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:01
[2026-06-13 05:29:02,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:02,468.468 INFO    ] Initializing speech engine...
[2026-06-13 05:29:02,478.478 INFO    ] 2026-06-13 05:29:02
[2026-06-13 05:29:02,682.682 INFO    ] 2026-06-13 05:29:02
[2026-06-13 05:29:02,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:02,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:02,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:02,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:02,932.932 INFO    ] time= 13/06/2026 05:29:02
[2026-06-13 05:29:02,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:02,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:03,106.106 INFO    ] No existing commands found in stream
[2026-06-13 05:29:08,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:29:08,123.123 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 05:29:11,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:29:11,052.052 INFO    ] Checking for system updates...
[2026-06-13 05:29:11,072.072 INFO    ] 200
[2026-06-13 05:29:11,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:11,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:29:11,105.105 INFO    ] No update needed
[2026-06-13 05:29:11,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 05:29:11,127.127 INFO    ] 200
[2026-06-13 05:29:11,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:11,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:29:11,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:29:11,191.191 INFO    ] No camera update needed
[2026-06-13 05:29:11,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:29:11,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:29:11,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:29:11,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:13,238.238 INFO    ] ================================================
[2026-06-13 05:29:13,254.254 INFO    ] Launching Daemon at Sat Jun 13 05:29:13 IST 2026
[2026-06-13 05:29:13,264.264 INFO    ] ================================================
[2026-06-13 05:29:13,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:13
[2026-06-13 05:29:13,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:14,034.034 INFO    ] Initializing speech engine...
[2026-06-13 05:29:14,043.043 INFO    ] 2026-06-13 05:29:14
[2026-06-13 05:29:14,247.247 INFO    ] 2026-06-13 05:29:14
[2026-06-13 05:29:14,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:14,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:14,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:14,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:14,655.655 INFO    ] time= 13/06/2026 05:29:14
[2026-06-13 05:29:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:14,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:14,759.759 INFO    ] No existing commands found in stream
[2026-06-13 05:29:19,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:29:19,772.772 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 05:29:22,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:29:22,273.273 INFO    ] Checking for system updates...
[2026-06-13 05:29:22,293.293 INFO    ] 200
[2026-06-13 05:29:22,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:22,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:29:22,326.326 INFO    ] No update needed
[2026-06-13 05:29:22,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 05:29:22,346.346 INFO    ] 200
[2026-06-13 05:29:22,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:22,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:29:22,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:29:22,409.409 INFO    ] No camera update needed
[2026-06-13 05:29:22,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:29:22,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:29:22,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:29:22,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:24,457.457 INFO    ] ================================================
[2026-06-13 05:29:24,472.472 INFO    ] Launching Daemon at Sat Jun 13 05:29:24 IST 2026
[2026-06-13 05:29:24,482.482 INFO    ] ================================================
[2026-06-13 05:29:24,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:24
[2026-06-13 05:29:25,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:25,353.353 INFO    ] Initializing speech engine...
[2026-06-13 05:29:25,358.358 INFO    ] 2026-06-13 05:29:25
[2026-06-13 05:29:25,567.567 INFO    ] 2026-06-13 05:29:25
[2026-06-13 05:29:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:25,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:25,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:25,979.979 INFO    ] time= 13/06/2026 05:29:25
[2026-06-13 05:29:26,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:26,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:26,089.089 INFO    ] No existing commands found in stream
[2026-06-13 05:29:31,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:29:31,103.103 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 05:29:32,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:29:32,505.505 INFO    ] Checking for system updates...
[2026-06-13 05:29:32,526.526 INFO    ] 200
[2026-06-13 05:29:32,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:32,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:29:32,563.563 INFO    ] No update needed
[2026-06-13 05:29:32,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 05:29:32,585.585 INFO    ] 200
[2026-06-13 05:29:32,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:32,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:29:32,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:29:32,640.640 INFO    ] No camera update needed
[2026-06-13 05:29:32,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:29:32,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:29:32,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:29:32,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:34,690.690 INFO    ] ================================================
[2026-06-13 05:29:34,706.706 INFO    ] Launching Daemon at Sat Jun 13 05:29:34 IST 2026
[2026-06-13 05:29:34,718.718 INFO    ] ================================================
[2026-06-13 05:29:35,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:35
[2026-06-13 05:29:35,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:35,533.533 INFO    ] Initializing speech engine...
[2026-06-13 05:29:35,542.542 INFO    ] 2026-06-13 05:29:35
[2026-06-13 05:29:35,758.758 INFO    ] 2026-06-13 05:29:35
[2026-06-13 05:29:35,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:35,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:35,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:36,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:36,189.189 INFO    ] time= 13/06/2026 05:29:36
[2026-06-13 05:29:36,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:36,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:36,309.309 INFO    ] No existing commands found in stream
[2026-06-13 05:29:41,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:29:41,321.321 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 05:29:42,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:29:42,512.512 INFO    ] Checking for system updates...
[2026-06-13 05:29:42,534.534 INFO    ] 200
[2026-06-13 05:29:42,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:42,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:29:42,566.566 INFO    ] No update needed
[2026-06-13 05:29:42,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 05:29:42,587.587 INFO    ] 200
[2026-06-13 05:29:42,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:42,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:29:42,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:29:42,752.752 INFO    ] No camera update needed
[2026-06-13 05:29:42,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:29:42,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:29:42,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:29:42,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:44,800.800 INFO    ] ================================================
[2026-06-13 05:29:44,816.816 INFO    ] Launching Daemon at Sat Jun 13 05:29:44 IST 2026
[2026-06-13 05:29:44,827.827 INFO    ] ================================================
[2026-06-13 05:29:45,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:45
[2026-06-13 05:29:45,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:45,693.693 INFO    ] Initializing speech engine...
[2026-06-13 05:29:45,703.703 INFO    ] 2026-06-13 05:29:45
[2026-06-13 05:29:45,910.910 INFO    ] 2026-06-13 05:29:45
[2026-06-13 05:29:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:46,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:46,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:46,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:46,316.316 INFO    ] time= 13/06/2026 05:29:46
[2026-06-13 05:29:46,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:46,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:46,425.425 INFO    ] No existing commands found in stream
[2026-06-13 05:29:51,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:29:51,463.463 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 05:29:55,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:29:55,284.284 INFO    ] Checking for system updates...
[2026-06-13 05:29:55,305.305 INFO    ] 200
[2026-06-13 05:29:55,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:55,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:29:55,338.338 INFO    ] No update needed
[2026-06-13 05:29:55,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 05:29:55,360.360 INFO    ] 200
[2026-06-13 05:29:55,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:29:55,384.384 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:29:55,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:29:55,435.435 INFO    ] No camera update needed
[2026-06-13 05:29:55,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:29:55,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:29:55,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:29:55,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:29:57,483.483 INFO    ] ================================================
[2026-06-13 05:29:57,499.499 INFO    ] Launching Daemon at Sat Jun 13 05:29:57 IST 2026
[2026-06-13 05:29:57,510.510 INFO    ] ================================================
[2026-06-13 05:29:57,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:29:57
[2026-06-13 05:29:58,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:29:58,281.281 INFO    ] Initializing speech engine...
[2026-06-13 05:29:58,294.294 INFO    ] 2026-06-13 05:29:58
[2026-06-13 05:29:58,509.509 INFO    ] 2026-06-13 05:29:58
[2026-06-13 05:29:58,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:29:58,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:29:58,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:29:58,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:29:58,927.927 INFO    ] time= 13/06/2026 05:29:58
[2026-06-13 05:29:58,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:29:58,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:29:59,055.055 INFO    ] No existing commands found in stream
[2026-06-13 05:30:04,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:30:04,068.068 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 05:30:08,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:30:08,778.778 INFO    ] Checking for system updates...
[2026-06-13 05:30:08,814.814 INFO    ] 200
[2026-06-13 05:30:08,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:08,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:30:08,873.873 INFO    ] No update needed
[2026-06-13 05:30:08,876.876 INFO    ] Checking for camera pi updates...
[2026-06-13 05:30:08,906.906 INFO    ] 200
[2026-06-13 05:30:08,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:08,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:30:08,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:30:08,975.975 INFO    ] No camera update needed
[2026-06-13 05:30:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:30:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:30:08,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:30:08,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:30:11,022.022 INFO    ] ================================================
[2026-06-13 05:30:11,037.037 INFO    ] Launching Daemon at Sat Jun 13 05:30:11 IST 2026
[2026-06-13 05:30:11,048.048 INFO    ] ================================================
[2026-06-13 05:30:11,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:30:11
[2026-06-13 05:30:11,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:30:11,870.870 INFO    ] Initializing speech engine...
[2026-06-13 05:30:11,881.881 INFO    ] 2026-06-13 05:30:11
[2026-06-13 05:30:12,086.086 INFO    ] 2026-06-13 05:30:12
[2026-06-13 05:30:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:30:12,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:30:12,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:30:12,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:30:12,496.496 INFO    ] time= 13/06/2026 05:30:12
[2026-06-13 05:30:12,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:30:12,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:30:12,600.600 INFO    ] No existing commands found in stream
[2026-06-13 05:30:17,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:30:17,612.612 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 05:30:21,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:30:21,175.175 INFO    ] Checking for system updates...
[2026-06-13 05:30:21,202.202 INFO    ] 200
[2026-06-13 05:30:21,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:21,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:21,240.240 INFO    ] No update needed
[2026-06-13 05:30:21,241.241 INFO    ] Checking for camera pi updates...
[2026-06-13 05:30:21,263.263 INFO    ] 200
[2026-06-13 05:30:21,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:21,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:30:21,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:21,337.337 INFO    ] No camera update needed
[2026-06-13 05:30:21,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:30:21,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:30:21,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:30:21,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:30:23,388.388 INFO    ] ================================================
[2026-06-13 05:30:23,404.404 INFO    ] Launching Daemon at Sat Jun 13 05:30:23 IST 2026
[2026-06-13 05:30:23,415.415 INFO    ] ================================================
[2026-06-13 05:30:23,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:30:23
[2026-06-13 05:30:24,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:30:24,239.239 INFO    ] Initializing speech engine...
[2026-06-13 05:30:24,245.245 INFO    ] 2026-06-13 05:30:24
[2026-06-13 05:30:24,455.455 INFO    ] 2026-06-13 05:30:24
[2026-06-13 05:30:24,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:30:24,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:30:24,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:30:24,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:30:24,864.864 INFO    ] time= 13/06/2026 05:30:24
[2026-06-13 05:30:24,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:30:24,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:30:24,982.982 INFO    ] No existing commands found in stream
[2026-06-13 05:30:29,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:30:29,995.995 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 05:30:34,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:30:34,118.118 INFO    ] Checking for system updates...
[2026-06-13 05:30:34,139.139 INFO    ] 200
[2026-06-13 05:30:34,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:34,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:34,173.173 INFO    ] No update needed
[2026-06-13 05:30:34,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 05:30:34,195.195 INFO    ] 200
[2026-06-13 05:30:34,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:34,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:30:34,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:34,263.263 INFO    ] No camera update needed
[2026-06-13 05:30:34,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:30:34,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:30:34,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:30:34,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:30:36,311.311 INFO    ] ================================================
[2026-06-13 05:30:36,327.327 INFO    ] Launching Daemon at Sat Jun 13 05:30:36 IST 2026
[2026-06-13 05:30:36,338.338 INFO    ] ================================================
[2026-06-13 05:30:36,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:30:36
[2026-06-13 05:30:36,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:30:37,118.118 INFO    ] Initializing speech engine...
[2026-06-13 05:30:37,131.131 INFO    ] 2026-06-13 05:30:37
[2026-06-13 05:30:37,341.341 INFO    ] 2026-06-13 05:30:37
[2026-06-13 05:30:37,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:30:37,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:30:37,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:30:37,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:30:37,748.748 INFO    ] time= 13/06/2026 05:30:37
[2026-06-13 05:30:37,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:30:37,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:30:37,864.864 INFO    ] No existing commands found in stream
[2026-06-13 05:30:42,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:30:42,878.878 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 05:30:44,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:30:44,557.557 INFO    ] Checking for system updates...
[2026-06-13 05:30:44,579.579 INFO    ] 200
[2026-06-13 05:30:44,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:44,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:30:44,612.612 INFO    ] No update needed
[2026-06-13 05:30:44,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 05:30:44,634.634 INFO    ] 200
[2026-06-13 05:30:44,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:44,658.658 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:30:44,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:44,700.700 INFO    ] No camera update needed
[2026-06-13 05:30:44,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:30:44,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:30:44,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:30:44,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:30:46,747.747 INFO    ] ================================================
[2026-06-13 05:30:46,762.762 INFO    ] Launching Daemon at Sat Jun 13 05:30:46 IST 2026
[2026-06-13 05:30:46,774.774 INFO    ] ================================================
[2026-06-13 05:30:47,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:30:47
[2026-06-13 05:30:47,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:30:47,548.548 INFO    ] Initializing speech engine...
[2026-06-13 05:30:47,552.552 INFO    ] 2026-06-13 05:30:47
[2026-06-13 05:30:47,780.780 INFO    ] 2026-06-13 05:30:47
[2026-06-13 05:30:47,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:30:47,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:30:47,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:30:48,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:30:48,154.154 INFO    ] time= 13/06/2026 05:30:48
[2026-06-13 05:30:48,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:30:48,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:30:48,327.327 INFO    ] No existing commands found in stream
[2026-06-13 05:30:53,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:30:53,341.341 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 05:30:55,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:30:55,178.178 INFO    ] Checking for system updates...
[2026-06-13 05:30:55,201.201 INFO    ] 200
[2026-06-13 05:30:55,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:55,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:55,233.233 INFO    ] No update needed
[2026-06-13 05:30:55,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 05:30:55,256.256 INFO    ] 200
[2026-06-13 05:30:55,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:30:55,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:30:55,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:30:55,318.318 INFO    ] No camera update needed
[2026-06-13 05:30:55,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:30:55,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:30:55,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:30:55,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:30:57,366.366 INFO    ] ================================================
[2026-06-13 05:30:57,382.382 INFO    ] Launching Daemon at Sat Jun 13 05:30:57 IST 2026
[2026-06-13 05:30:57,394.394 INFO    ] ================================================
[2026-06-13 05:30:57,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:30:57
[2026-06-13 05:30:58,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:30:58,247.247 INFO    ] Initializing speech engine...
[2026-06-13 05:30:58,252.252 INFO    ] 2026-06-13 05:30:58
[2026-06-13 05:30:58,459.459 INFO    ] 2026-06-13 05:30:58
[2026-06-13 05:30:58,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:30:58,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:30:58,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:30:58,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:30:58,873.873 INFO    ] time= 13/06/2026 05:30:58
[2026-06-13 05:30:58,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:30:58,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:30:58,979.979 INFO    ] No existing commands found in stream
[2026-06-13 05:31:03,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:31:03,994.994 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 05:31:06,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:31:06,894.894 INFO    ] Checking for system updates...
[2026-06-13 05:31:06,915.915 INFO    ] 200
[2026-06-13 05:31:06,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:06,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:06,949.949 INFO    ] No update needed
[2026-06-13 05:31:06,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 05:31:06,971.971 INFO    ] 200
[2026-06-13 05:31:06,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:06,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:31:07,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:07,034.034 INFO    ] No camera update needed
[2026-06-13 05:31:07,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:31:07,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:31:07,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:31:07,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:31:09,082.082 INFO    ] ================================================
[2026-06-13 05:31:09,099.099 INFO    ] Launching Daemon at Sat Jun 13 05:31:09 IST 2026
[2026-06-13 05:31:09,109.109 INFO    ] ================================================
[2026-06-13 05:31:09,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:31:09
[2026-06-13 05:31:09,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:31:09,969.969 INFO    ] Initializing speech engine...
[2026-06-13 05:31:09,974.974 INFO    ] 2026-06-13 05:31:09
[2026-06-13 05:31:10,184.184 INFO    ] 2026-06-13 05:31:10
[2026-06-13 05:31:10,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:31:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:31:10,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:31:10,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:31:10,598.598 INFO    ] time= 13/06/2026 05:31:10
[2026-06-13 05:31:10,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:31:10,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:31:10,710.710 INFO    ] No existing commands found in stream
[2026-06-13 05:31:15,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:31:15,724.724 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 05:31:18,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:31:18,189.189 INFO    ] Checking for system updates...
[2026-06-13 05:31:18,211.211 INFO    ] 200
[2026-06-13 05:31:18,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:18,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:18,245.245 INFO    ] No update needed
[2026-06-13 05:31:18,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 05:31:18,266.266 INFO    ] 200
[2026-06-13 05:31:18,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:18,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:31:18,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:18,331.331 INFO    ] No camera update needed
[2026-06-13 05:31:18,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:31:18,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:31:18,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:31:18,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:31:20,381.381 INFO    ] ================================================
[2026-06-13 05:31:20,397.397 INFO    ] Launching Daemon at Sat Jun 13 05:31:20 IST 2026
[2026-06-13 05:31:20,409.409 INFO    ] ================================================
[2026-06-13 05:31:20,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:31:20
[2026-06-13 05:31:21,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:31:21,211.211 INFO    ] Initializing speech engine...
[2026-06-13 05:31:21,216.216 INFO    ] 2026-06-13 05:31:21
[2026-06-13 05:31:21,422.422 INFO    ] 2026-06-13 05:31:21
[2026-06-13 05:31:21,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:31:21,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:31:21,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:31:21,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:31:21,826.826 INFO    ] time= 13/06/2026 05:31:21
[2026-06-13 05:31:21,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:31:21,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:31:21,917.917 INFO    ] No existing commands found in stream
[2026-06-13 05:31:26,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:31:26,939.939 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 05:31:29,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:31:29,505.505 INFO    ] Checking for system updates...
[2026-06-13 05:31:29,526.526 INFO    ] 200
[2026-06-13 05:31:29,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:29,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:29,560.560 INFO    ] No update needed
[2026-06-13 05:31:29,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 05:31:29,581.581 INFO    ] 200
[2026-06-13 05:31:29,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:29,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:31:29,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:31:29,642.642 INFO    ] No camera update needed
[2026-06-13 05:31:29,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:31:29,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:31:29,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:31:29,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:31:31,683.683 INFO    ] ================================================
[2026-06-13 05:31:31,693.693 INFO    ] Launching Daemon at Sat Jun 13 05:31:31 IST 2026
[2026-06-13 05:31:31,700.700 INFO    ] ================================================
[2026-06-13 05:31:32,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:31:32
[2026-06-13 05:31:32,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:31:32,542.542 INFO    ] Initializing speech engine...
[2026-06-13 05:31:32,551.551 INFO    ] 2026-06-13 05:31:32
[2026-06-13 05:31:32,756.756 INFO    ] 2026-06-13 05:31:32
[2026-06-13 05:31:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:31:32,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:31:32,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:31:33,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:31:33,158.158 INFO    ] time= 13/06/2026 05:31:33
[2026-06-13 05:31:33,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:31:33,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:31:33,274.274 INFO    ] No existing commands found in stream
[2026-06-13 05:31:38,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:31:38,286.286 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 05:31:42,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:31:42,377.377 INFO    ] Checking for system updates...
[2026-06-13 05:31:42,398.398 INFO    ] 200
[2026-06-13 05:31:42,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:42,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:31:42,433.433 INFO    ] No update needed
[2026-06-13 05:31:42,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 05:31:42,454.454 INFO    ] 200
[2026-06-13 05:31:42,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:42,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:31:42,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:31:42,526.526 INFO    ] No camera update needed
[2026-06-13 05:31:42,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:31:42,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:31:42,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:31:42,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:31:44,576.576 INFO    ] ================================================
[2026-06-13 05:31:44,592.592 INFO    ] Launching Daemon at Sat Jun 13 05:31:44 IST 2026
[2026-06-13 05:31:44,603.603 INFO    ] ================================================
[2026-06-13 05:31:44,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:31:44
[2026-06-13 05:31:45,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:31:45,392.392 INFO    ] Initializing speech engine...
[2026-06-13 05:31:45,402.402 INFO    ] 2026-06-13 05:31:45
[2026-06-13 05:31:45,605.605 INFO    ] 2026-06-13 05:31:45
[2026-06-13 05:31:45,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:31:45,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:31:45,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:31:45,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:31:46,013.013 INFO    ] time= 13/06/2026 05:31:45
[2026-06-13 05:31:46,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:31:46,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:31:46,118.118 INFO    ] No existing commands found in stream
[2026-06-13 05:31:51,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:31:51,130.130 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 05:31:53,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:31:53,664.664 INFO    ] Checking for system updates...
[2026-06-13 05:31:53,685.685 INFO    ] 200
[2026-06-13 05:31:53,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:53,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:31:53,720.720 INFO    ] No update needed
[2026-06-13 05:31:53,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 05:31:53,740.740 INFO    ] 200
[2026-06-13 05:31:53,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:31:53,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:31:53,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:31:53,906.906 INFO    ] No camera update needed
[2026-06-13 05:31:53,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:31:53,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:31:53,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:31:53,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:31:55,954.954 INFO    ] ================================================
[2026-06-13 05:31:55,970.970 INFO    ] Launching Daemon at Sat Jun 13 05:31:55 IST 2026
[2026-06-13 05:31:55,981.981 INFO    ] ================================================
[2026-06-13 05:31:56,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:31:56
[2026-06-13 05:31:56,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:31:56,807.807 INFO    ] Initializing speech engine...
[2026-06-13 05:31:56,813.813 INFO    ] 2026-06-13 05:31:56
[2026-06-13 05:31:57,017.017 INFO    ] 2026-06-13 05:31:56
[2026-06-13 05:31:57,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:31:57,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:31:57,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:31:57,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:31:57,418.418 INFO    ] time= 13/06/2026 05:31:57
[2026-06-13 05:31:57,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:31:57,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:31:57,533.533 INFO    ] No existing commands found in stream
[2026-06-13 05:32:02,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:02,543.543 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 05:32:03,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:32:03,444.444 INFO    ] Checking for system updates...
[2026-06-13 05:32:03,465.465 INFO    ] 200
[2026-06-13 05:32:03,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:03,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:32:03,501.501 INFO    ] No update needed
[2026-06-13 05:32:03,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:03,521.521 INFO    ] 200
[2026-06-13 05:32:03,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:03,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:03,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:32:03,584.584 INFO    ] No camera update needed
[2026-06-13 05:32:03,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:03,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:03,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:03,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:32:05,633.633 INFO    ] ================================================
[2026-06-13 05:32:05,648.648 INFO    ] Launching Daemon at Sat Jun 13 05:32:05 IST 2026
[2026-06-13 05:32:05,659.659 INFO    ] ================================================
[2026-06-13 05:32:06,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:32:06
[2026-06-13 05:32:06,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:32:06,496.496 INFO    ] Initializing speech engine...
[2026-06-13 05:32:06,507.507 INFO    ] 2026-06-13 05:32:06
[2026-06-13 05:32:06,716.716 INFO    ] 2026-06-13 05:32:06
[2026-06-13 05:32:06,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:32:06,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:32:06,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:32:07,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:32:07,122.122 INFO    ] time= 13/06/2026 05:32:07
[2026-06-13 05:32:07,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:32:07,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:32:07,239.239 INFO    ] No existing commands found in stream
[2026-06-13 05:32:12,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:12,253.253 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 05:32:13,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:32:13,719.719 INFO    ] Checking for system updates...
[2026-06-13 05:32:13,739.739 INFO    ] 200
[2026-06-13 05:32:13,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:13,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:32:13,772.772 INFO    ] No update needed
[2026-06-13 05:32:13,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:13,793.793 INFO    ] 200
[2026-06-13 05:32:13,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:13,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:13,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:32:13,859.859 INFO    ] No camera update needed
[2026-06-13 05:32:13,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:13,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:13,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:13,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:32:15,906.906 INFO    ] ================================================
[2026-06-13 05:32:15,921.921 INFO    ] Launching Daemon at Sat Jun 13 05:32:15 IST 2026
[2026-06-13 05:32:15,932.932 INFO    ] ================================================
[2026-06-13 05:32:16,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:32:16
[2026-06-13 05:32:16,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:32:16,727.727 INFO    ] Initializing speech engine...
[2026-06-13 05:32:16,732.732 INFO    ] 2026-06-13 05:32:16
[2026-06-13 05:32:16,944.944 INFO    ] 2026-06-13 05:32:16
[2026-06-13 05:32:16,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:32:17,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:32:17,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:32:17,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:32:17,374.374 INFO    ] time= 13/06/2026 05:32:17
[2026-06-13 05:32:17,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:32:17,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:32:17,521.521 INFO    ] No existing commands found in stream
[2026-06-13 05:32:22,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:22,533.533 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 05:32:25,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:32:25,616.616 INFO    ] Checking for system updates...
[2026-06-13 05:32:25,639.639 INFO    ] 200
[2026-06-13 05:32:25,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:25,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:25,672.672 INFO    ] No update needed
[2026-06-13 05:32:25,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:25,694.694 INFO    ] 200
[2026-06-13 05:32:25,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:25,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:25,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:25,742.742 INFO    ] No camera update needed
[2026-06-13 05:32:25,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:25,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:25,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:25,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:32:27,773.773 INFO    ] ================================================
[2026-06-13 05:32:27,781.781 INFO    ] Launching Daemon at Sat Jun 13 05:32:27 IST 2026
[2026-06-13 05:32:27,788.788 INFO    ] ================================================
[2026-06-13 05:32:28,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:32:28
[2026-06-13 05:32:28,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:32:28,709.709 INFO    ] Initializing speech engine...
[2026-06-13 05:32:28,714.714 INFO    ] 2026-06-13 05:32:28
[2026-06-13 05:32:28,939.939 INFO    ] 2026-06-13 05:32:28
[2026-06-13 05:32:28,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:32:29,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:32:29,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:32:29,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:32:29,193.193 INFO    ] time= 13/06/2026 05:32:29
[2026-06-13 05:32:29,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:32:29,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:32:29,333.333 INFO    ] No existing commands found in stream
[2026-06-13 05:32:34,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:34,355.355 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 05:32:37,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:32:37,717.717 INFO    ] Checking for system updates...
[2026-06-13 05:32:37,739.739 INFO    ] 200
[2026-06-13 05:32:37,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:37,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:37,775.775 INFO    ] No update needed
[2026-06-13 05:32:37,776.776 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:37,799.799 INFO    ] 200
[2026-06-13 05:32:37,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:37,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:37,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:37,853.853 INFO    ] No camera update needed
[2026-06-13 05:32:37,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:37,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:37,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:37,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:32:39,901.901 INFO    ] ================================================
[2026-06-13 05:32:39,917.917 INFO    ] Launching Daemon at Sat Jun 13 05:32:39 IST 2026
[2026-06-13 05:32:39,928.928 INFO    ] ================================================
[2026-06-13 05:32:40,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:32:40
[2026-06-13 05:32:40,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:32:40,745.745 INFO    ] Initializing speech engine...
[2026-06-13 05:32:40,751.751 INFO    ] 2026-06-13 05:32:40
[2026-06-13 05:32:40,957.957 INFO    ] 2026-06-13 05:32:40
[2026-06-13 05:32:40,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:32:41,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:32:41,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:32:41,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:32:41,377.377 INFO    ] time= 13/06/2026 05:32:41
[2026-06-13 05:32:41,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:32:41,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:32:41,471.471 INFO    ] No existing commands found in stream
[2026-06-13 05:32:46,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:46,485.485 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 05:32:49,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:32:49,106.106 INFO    ] Checking for system updates...
[2026-06-13 05:32:49,128.128 INFO    ] 200
[2026-06-13 05:32:49,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:49,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:49,162.162 INFO    ] No update needed
[2026-06-13 05:32:49,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:49,183.183 INFO    ] 200
[2026-06-13 05:32:49,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:49,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:49,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:49,249.249 INFO    ] No camera update needed
[2026-06-13 05:32:49,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:49,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:49,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:49,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:32:51,296.296 INFO    ] ================================================
[2026-06-13 05:32:51,311.311 INFO    ] Launching Daemon at Sat Jun 13 05:32:51 IST 2026
[2026-06-13 05:32:51,322.322 INFO    ] ================================================
[2026-06-13 05:32:51,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:32:51
[2026-06-13 05:32:51,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:32:52,091.091 INFO    ] Initializing speech engine...
[2026-06-13 05:32:52,103.103 INFO    ] 2026-06-13 05:32:52
[2026-06-13 05:32:52,313.313 INFO    ] 2026-06-13 05:32:52
[2026-06-13 05:32:52,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:32:52,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:32:52,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:32:52,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:32:52,721.721 INFO    ] time= 13/06/2026 05:32:52
[2026-06-13 05:32:52,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:32:52,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:32:52,832.832 INFO    ] No existing commands found in stream
[2026-06-13 05:32:57,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:32:57,845.845 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 05:32:58,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:32:58,363.363 INFO    ] Checking for system updates...
[2026-06-13 05:32:58,384.384 INFO    ] 200
[2026-06-13 05:32:58,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:58,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:32:58,417.417 INFO    ] No update needed
[2026-06-13 05:32:58,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 05:32:58,440.440 INFO    ] 200
[2026-06-13 05:32:58,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:32:58,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:32:58,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:32:58,509.509 INFO    ] No camera update needed
[2026-06-13 05:32:58,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:32:58,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:32:58,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:32:58,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:33:00,554.554 INFO    ] ================================================
[2026-06-13 05:33:00,569.569 INFO    ] Launching Daemon at Sat Jun 13 05:33:00 IST 2026
[2026-06-13 05:33:00,580.580 INFO    ] ================================================
[2026-06-13 05:33:00,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:33:00
[2026-06-13 05:33:01,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:33:01,409.409 INFO    ] Initializing speech engine...
[2026-06-13 05:33:01,414.414 INFO    ] 2026-06-13 05:33:01
[2026-06-13 05:33:01,602.602 INFO    ] 2026-06-13 05:33:01
[2026-06-13 05:33:01,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:33:01,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:33:01,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:33:01,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:33:02,011.011 INFO    ] time= 13/06/2026 05:33:01
[2026-06-13 05:33:02,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:33:02,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:33:02,167.167 INFO    ] No existing commands found in stream
[2026-06-13 05:33:07,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:33:07,184.184 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 05:33:11,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:33:11,043.043 INFO    ] Checking for system updates...
[2026-06-13 05:33:11,064.064 INFO    ] 200
[2026-06-13 05:33:11,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:11,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:11,097.097 INFO    ] No update needed
[2026-06-13 05:33:11,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 05:33:11,117.117 INFO    ] 200
[2026-06-13 05:33:11,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:11,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:33:11,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:11,184.184 INFO    ] No camera update needed
[2026-06-13 05:33:11,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:33:11,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:33:11,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:33:11,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:33:13,231.231 INFO    ] ================================================
[2026-06-13 05:33:13,247.247 INFO    ] Launching Daemon at Sat Jun 13 05:33:13 IST 2026
[2026-06-13 05:33:13,257.257 INFO    ] ================================================
[2026-06-13 05:33:13,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:33:13
[2026-06-13 05:33:13,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:33:14,069.069 INFO    ] Initializing speech engine...
[2026-06-13 05:33:14,073.073 INFO    ] 2026-06-13 05:33:14
[2026-06-13 05:33:14,282.282 INFO    ] 2026-06-13 05:33:14
[2026-06-13 05:33:14,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:33:14,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:33:14,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:33:14,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:33:14,697.697 INFO    ] time= 13/06/2026 05:33:14
[2026-06-13 05:33:14,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:33:14,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:33:14,804.804 INFO    ] No existing commands found in stream
[2026-06-13 05:33:19,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:33:19,822.822 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 05:33:24,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:33:24,008.008 INFO    ] Checking for system updates...
[2026-06-13 05:33:24,029.029 INFO    ] 200
[2026-06-13 05:33:24,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:24,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:24,064.064 INFO    ] No update needed
[2026-06-13 05:33:24,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 05:33:24,087.087 INFO    ] 200
[2026-06-13 05:33:24,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:24,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:33:24,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:24,165.165 INFO    ] No camera update needed
[2026-06-13 05:33:24,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:33:24,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:33:24,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:33:24,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:33:26,214.214 INFO    ] ================================================
[2026-06-13 05:33:26,229.229 INFO    ] Launching Daemon at Sat Jun 13 05:33:26 IST 2026
[2026-06-13 05:33:26,240.240 INFO    ] ================================================
[2026-06-13 05:33:26,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:33:26
[2026-06-13 05:33:26,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:33:27,052.052 INFO    ] Initializing speech engine...
[2026-06-13 05:33:27,064.064 INFO    ] 2026-06-13 05:33:27
[2026-06-13 05:33:27,279.279 INFO    ] 2026-06-13 05:33:27
[2026-06-13 05:33:27,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:33:27,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:33:27,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:33:27,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:33:27,701.701 INFO    ] time= 13/06/2026 05:33:27
[2026-06-13 05:33:27,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:33:27,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:33:27,868.868 INFO    ] No existing commands found in stream
[2026-06-13 05:33:32,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:33:32,901.901 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 05:33:35,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:33:35,906.906 INFO    ] Checking for system updates...
[2026-06-13 05:33:35,927.927 INFO    ] 200
[2026-06-13 05:33:35,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:35,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:33:35,960.960 INFO    ] No update needed
[2026-06-13 05:33:35,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 05:33:35,982.982 INFO    ] 200
[2026-06-13 05:33:35,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:36,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:33:36,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:33:36,049.049 INFO    ] No camera update needed
[2026-06-13 05:33:36,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:33:36,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:33:36,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:33:36,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:33:38,096.096 INFO    ] ================================================
[2026-06-13 05:33:38,111.111 INFO    ] Launching Daemon at Sat Jun 13 05:33:38 IST 2026
[2026-06-13 05:33:38,122.122 INFO    ] ================================================
[2026-06-13 05:33:38,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:33:38
[2026-06-13 05:33:38,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:33:38,906.906 INFO    ] Initializing speech engine...
[2026-06-13 05:33:38,912.912 INFO    ] 2026-06-13 05:33:38
[2026-06-13 05:33:39,102.102 INFO    ] 2026-06-13 05:33:39
[2026-06-13 05:33:39,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:33:39,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:33:39,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:33:39,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:33:39,550.550 INFO    ] time= 13/06/2026 05:33:39
[2026-06-13 05:33:39,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:33:39,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:33:39,743.743 INFO    ] No existing commands found in stream
[2026-06-13 05:33:44,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:33:44,776.776 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 05:33:48,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:33:48,993.993 INFO    ] Checking for system updates...
[2026-06-13 05:33:49,013.013 INFO    ] 200
[2026-06-13 05:33:49,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:49,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:49,047.047 INFO    ] No update needed
[2026-06-13 05:33:49,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 05:33:49,068.068 INFO    ] 200
[2026-06-13 05:33:49,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:33:49,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:33:49,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:33:49,131.131 INFO    ] No camera update needed
[2026-06-13 05:33:49,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:33:49,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:33:49,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:33:49,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:33:51,180.180 INFO    ] ================================================
[2026-06-13 05:33:51,195.195 INFO    ] Launching Daemon at Sat Jun 13 05:33:51 IST 2026
[2026-06-13 05:33:51,206.206 INFO    ] ================================================
[2026-06-13 05:33:51,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:33:51
[2026-06-13 05:33:51,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:33:52,032.032 INFO    ] Initializing speech engine...
[2026-06-13 05:33:52,045.045 INFO    ] 2026-06-13 05:33:52
[2026-06-13 05:33:52,253.253 INFO    ] 2026-06-13 05:33:52
[2026-06-13 05:33:52,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:33:52,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:33:52,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:33:52,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:33:52,750.750 INFO    ] time= 13/06/2026 05:33:52
[2026-06-13 05:33:52,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:33:52,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:33:52,793.793 INFO    ] No existing commands found in stream
[2026-06-13 05:33:57,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:33:57,805.805 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 05:34:01,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:34:01,636.636 INFO    ] Checking for system updates...
[2026-06-13 05:34:01,658.658 INFO    ] 200
[2026-06-13 05:34:01,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:01,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:01,693.693 INFO    ] No update needed
[2026-06-13 05:34:01,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:01,715.715 INFO    ] 200
[2026-06-13 05:34:01,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:01,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:01,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:01,895.895 INFO    ] No camera update needed
[2026-06-13 05:34:01,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:01,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:01,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:04,994.994 INFO    ] ================================================
[2026-06-13 05:34:04,010.010 INFO    ] Launching Daemon at Sat Jun 13 05:34:04 IST 2026
[2026-06-13 05:34:04,020.020 INFO    ] ================================================
[2026-06-13 05:34:04,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:04
[2026-06-13 05:34:05,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:34:05,245.245 INFO    ] Initializing speech engine...
[2026-06-13 05:34:05,251.251 INFO    ] 2026-06-13 05:34:05
[2026-06-13 05:34:05,456.456 INFO    ] 2026-06-13 05:34:05
[2026-06-13 05:34:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:34:05,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:34:05,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:34:05,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:34:05,853.853 INFO    ] time= 13/06/2026 05:34:05
[2026-06-13 05:34:05,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:34:05,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:34:05,968.968 INFO    ] No existing commands found in stream
[2026-06-13 05:34:10,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:34:10,981.981 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 05:34:13,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:34:13,557.557 INFO    ] Checking for system updates...
[2026-06-13 05:34:13,579.579 INFO    ] 200
[2026-06-13 05:34:13,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:13,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:13,614.614 INFO    ] No update needed
[2026-06-13 05:34:13,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:13,647.647 INFO    ] 200
[2026-06-13 05:34:13,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:13,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:13,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:13,739.739 INFO    ] No camera update needed
[2026-06-13 05:34:13,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:13,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:13,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:13,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:15,799.799 INFO    ] ================================================
[2026-06-13 05:34:15,814.814 INFO    ] Launching Daemon at Sat Jun 13 05:34:15 IST 2026
[2026-06-13 05:34:15,825.825 INFO    ] ================================================
[2026-06-13 05:34:16,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:16
[2026-06-13 05:34:16,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:34:16,609.609 INFO    ] Initializing speech engine...
[2026-06-13 05:34:16,614.614 INFO    ] 2026-06-13 05:34:16
[2026-06-13 05:34:16,832.832 INFO    ] 2026-06-13 05:34:16
[2026-06-13 05:34:16,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:34:17,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:34:17,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:34:17,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:34:17,253.253 INFO    ] time= 13/06/2026 05:34:17
[2026-06-13 05:34:17,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:34:17,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:34:17,353.353 INFO    ] No existing commands found in stream
[2026-06-13 05:34:22,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:34:22,366.366 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 05:34:24,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:34:24,290.290 INFO    ] Checking for system updates...
[2026-06-13 05:34:24,312.312 INFO    ] 200
[2026-06-13 05:34:24,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:24,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:24,345.345 INFO    ] No update needed
[2026-06-13 05:34:24,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:24,366.366 INFO    ] 200
[2026-06-13 05:34:24,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:24,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:24,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:24,432.432 INFO    ] No camera update needed
[2026-06-13 05:34:24,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:24,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:24,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:24,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:26,481.481 INFO    ] ================================================
[2026-06-13 05:34:26,496.496 INFO    ] Launching Daemon at Sat Jun 13 05:34:26 IST 2026
[2026-06-13 05:34:26,507.507 INFO    ] ================================================
[2026-06-13 05:34:26,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:26
[2026-06-13 05:34:27,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:34:27,290.290 INFO    ] Initializing speech engine...
[2026-06-13 05:34:27,300.300 INFO    ] 2026-06-13 05:34:27
[2026-06-13 05:34:27,503.503 INFO    ] 2026-06-13 05:34:27
[2026-06-13 05:34:27,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:34:27,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:34:27,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:34:27,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:34:27,919.919 INFO    ] time= 13/06/2026 05:34:27
[2026-06-13 05:34:27,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:34:27,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:34:28,059.059 INFO    ] No existing commands found in stream
[2026-06-13 05:34:33,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:34:33,075.075 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 05:34:34,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:34:34,411.411 INFO    ] Checking for system updates...
[2026-06-13 05:34:34,432.432 INFO    ] 200
[2026-06-13 05:34:34,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:34,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:34,466.466 INFO    ] No update needed
[2026-06-13 05:34:34,468.468 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:34,490.490 INFO    ] 200
[2026-06-13 05:34:34,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:34,518.518 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:34,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:34:34,566.566 INFO    ] No camera update needed
[2026-06-13 05:34:34,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:34,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:34,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:34,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:36,615.615 INFO    ] ================================================
[2026-06-13 05:34:36,630.630 INFO    ] Launching Daemon at Sat Jun 13 05:34:36 IST 2026
[2026-06-13 05:34:36,641.641 INFO    ] ================================================
[2026-06-13 05:34:36,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:36
[2026-06-13 05:34:37,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:34:37,415.415 INFO    ] Initializing speech engine...
[2026-06-13 05:34:37,424.424 INFO    ] 2026-06-13 05:34:37
[2026-06-13 05:34:37,647.647 INFO    ] 2026-06-13 05:34:37
[2026-06-13 05:34:37,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:34:37,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:34:37,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:34:38,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:34:38,075.075 INFO    ] time= 13/06/2026 05:34:38
[2026-06-13 05:34:38,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:34:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:34:38,201.201 INFO    ] No existing commands found in stream
[2026-06-13 05:34:43,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:34:43,214.214 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 05:34:47,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:34:47,141.141 INFO    ] Checking for system updates...
[2026-06-13 05:34:47,163.163 INFO    ] 200
[2026-06-13 05:34:47,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:47,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:34:47,197.197 INFO    ] No update needed
[2026-06-13 05:34:47,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:47,219.219 INFO    ] 200
[2026-06-13 05:34:47,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:47,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:47,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:34:47,285.285 INFO    ] No camera update needed
[2026-06-13 05:34:47,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:47,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:47,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:47,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:49,334.334 INFO    ] ================================================
[2026-06-13 05:34:49,349.349 INFO    ] Launching Daemon at Sat Jun 13 05:34:49 IST 2026
[2026-06-13 05:34:49,360.360 INFO    ] ================================================
[2026-06-13 05:34:49,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:49
[2026-06-13 05:34:50,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:34:50,214.214 INFO    ] Initializing speech engine...
[2026-06-13 05:34:50,220.220 INFO    ] 2026-06-13 05:34:50
[2026-06-13 05:34:50,430.430 INFO    ] 2026-06-13 05:34:50
[2026-06-13 05:34:50,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:34:50,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:34:50,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:34:50,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:34:50,854.854 INFO    ] time= 13/06/2026 05:34:50
[2026-06-13 05:34:50,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:34:50,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:34:50,951.951 INFO    ] No existing commands found in stream
[2026-06-13 05:34:55,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:34:55,965.965 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 05:34:57,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:34:57,237.237 INFO    ] Checking for system updates...
[2026-06-13 05:34:57,258.258 INFO    ] 200
[2026-06-13 05:34:57,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:57,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:34:57,294.294 INFO    ] No update needed
[2026-06-13 05:34:57,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 05:34:57,317.317 INFO    ] 200
[2026-06-13 05:34:57,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:34:57,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:34:57,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:34:57,387.387 INFO    ] No camera update needed
[2026-06-13 05:34:57,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:34:57,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:34:57,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:34:57,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:34:59,435.435 INFO    ] ================================================
[2026-06-13 05:34:59,451.451 INFO    ] Launching Daemon at Sat Jun 13 05:34:59 IST 2026
[2026-06-13 05:34:59,462.462 INFO    ] ================================================
[2026-06-13 05:34:59,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:34:59
[2026-06-13 05:35:00,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:00,251.251 INFO    ] Initializing speech engine...
[2026-06-13 05:35:00,255.255 INFO    ] 2026-06-13 05:35:00
[2026-06-13 05:35:00,485.485 INFO    ] 2026-06-13 05:35:00
[2026-06-13 05:35:00,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:00,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:00,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:00,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:00,899.899 INFO    ] time= 13/06/2026 05:35:00
[2026-06-13 05:35:00,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:00,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:01,042.042 INFO    ] No existing commands found in stream
[2026-06-13 05:35:06,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:06,053.053 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 05:35:07,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:35:07,229.229 INFO    ] Checking for system updates...
[2026-06-13 05:35:07,250.250 INFO    ] 200
[2026-06-13 05:35:07,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:07,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:35:07,283.283 INFO    ] No update needed
[2026-06-13 05:35:07,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:07,304.304 INFO    ] 200
[2026-06-13 05:35:07,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:07,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:07,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:07,377.377 INFO    ] No camera update needed
[2026-06-13 05:35:07,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:07,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:07,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:07,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:35:09,426.426 INFO    ] ================================================
[2026-06-13 05:35:09,441.441 INFO    ] Launching Daemon at Sat Jun 13 05:35:09 IST 2026
[2026-06-13 05:35:09,452.452 INFO    ] ================================================
[2026-06-13 05:35:09,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:35:09
[2026-06-13 05:35:10,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:10,250.250 INFO    ] Initializing speech engine...
[2026-06-13 05:35:10,253.253 INFO    ] 2026-06-13 05:35:10
[2026-06-13 05:35:10,470.470 INFO    ] 2026-06-13 05:35:10
[2026-06-13 05:35:10,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:10,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:10,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:10,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:10,874.874 INFO    ] time= 13/06/2026 05:35:10
[2026-06-13 05:35:10,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:10,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:10,984.984 INFO    ] No existing commands found in stream
[2026-06-13 05:35:15,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:15,996.996 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 05:35:18,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:35:18,336.336 INFO    ] Checking for system updates...
[2026-06-13 05:35:18,357.357 INFO    ] 200
[2026-06-13 05:35:18,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:18,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:18,390.390 INFO    ] No update needed
[2026-06-13 05:35:18,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:18,411.411 INFO    ] 200
[2026-06-13 05:35:18,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:18,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:18,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:18,472.472 INFO    ] No camera update needed
[2026-06-13 05:35:18,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:18,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:18,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:18,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:35:20,522.522 INFO    ] ================================================
[2026-06-13 05:35:20,537.537 INFO    ] Launching Daemon at Sat Jun 13 05:35:20 IST 2026
[2026-06-13 05:35:20,549.549 INFO    ] ================================================
[2026-06-13 05:35:20,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:35:20
[2026-06-13 05:35:21,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:21,386.386 INFO    ] Initializing speech engine...
[2026-06-13 05:35:21,393.393 INFO    ] 2026-06-13 05:35:21
[2026-06-13 05:35:21,600.600 INFO    ] 2026-06-13 05:35:21
[2026-06-13 05:35:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:21,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:21,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:21,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:22,016.016 INFO    ] time= 13/06/2026 05:35:21
[2026-06-13 05:35:22,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:22,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:22,117.117 INFO    ] No existing commands found in stream
[2026-06-13 05:35:27,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:27,130.130 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 05:35:28,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:35:28,871.871 INFO    ] Checking for system updates...
[2026-06-13 05:35:28,892.892 INFO    ] 200
[2026-06-13 05:35:28,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:28,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:35:28,924.924 INFO    ] No update needed
[2026-06-13 05:35:28,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:28,945.945 INFO    ] 200
[2026-06-13 05:35:28,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:28,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:29,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:29,017.017 INFO    ] No camera update needed
[2026-06-13 05:35:29,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:29,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:29,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:29,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:35:31,065.065 INFO    ] ================================================
[2026-06-13 05:35:31,081.081 INFO    ] Launching Daemon at Sat Jun 13 05:35:31 IST 2026
[2026-06-13 05:35:31,092.092 INFO    ] ================================================
[2026-06-13 05:35:31,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:35:31
[2026-06-13 05:35:32,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:32,489.489 INFO    ] Initializing speech engine...
[2026-06-13 05:35:32,512.512 INFO    ] 2026-06-13 05:35:32
[2026-06-13 05:35:32,782.782 INFO    ] 2026-06-13 05:35:32
[2026-06-13 05:35:32,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:32,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:33,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:33,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:33,122.122 INFO    ] time= 13/06/2026 05:35:33
[2026-06-13 05:35:33,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:33,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:33,195.195 INFO    ] No existing commands found in stream
[2026-06-13 05:35:38,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:38,208.208 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 05:35:38,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:35:38,626.626 INFO    ] Checking for system updates...
[2026-06-13 05:35:38,646.646 INFO    ] 200
[2026-06-13 05:35:38,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:38,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:35:38,680.680 INFO    ] No update needed
[2026-06-13 05:35:38,681.681 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:38,700.700 INFO    ] 200
[2026-06-13 05:35:38,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:38,726.726 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:38,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:35:38,755.755 INFO    ] No camera update needed
[2026-06-13 05:35:38,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:38,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:38,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:38,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:35:40,802.802 INFO    ] ================================================
[2026-06-13 05:35:40,818.818 INFO    ] Launching Daemon at Sat Jun 13 05:35:40 IST 2026
[2026-06-13 05:35:40,828.828 INFO    ] ================================================
[2026-06-13 05:35:41,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:35:41
[2026-06-13 05:35:41,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:41,758.758 INFO    ] Initializing speech engine...
[2026-06-13 05:35:41,763.763 INFO    ] 2026-06-13 05:35:41
[2026-06-13 05:35:41,979.979 INFO    ] 2026-06-13 05:35:41
[2026-06-13 05:35:42,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:42,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:42,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:42,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:42,372.372 INFO    ] time= 13/06/2026 05:35:42
[2026-06-13 05:35:42,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:42,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:42,605.605 INFO    ] No existing commands found in stream
[2026-06-13 05:35:47,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:47,620.620 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 05:35:50,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:35:50,072.072 INFO    ] Checking for system updates...
[2026-06-13 05:35:50,093.093 INFO    ] 200
[2026-06-13 05:35:50,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:50,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:50,126.126 INFO    ] No update needed
[2026-06-13 05:35:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:50,147.147 INFO    ] 200
[2026-06-13 05:35:50,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:50,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:50,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:50,217.217 INFO    ] No camera update needed
[2026-06-13 05:35:50,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:50,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:50,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:50,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:35:52,266.266 INFO    ] ================================================
[2026-06-13 05:35:52,281.281 INFO    ] Launching Daemon at Sat Jun 13 05:35:52 IST 2026
[2026-06-13 05:35:52,291.291 INFO    ] ================================================
[2026-06-13 05:35:52,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:35:52
[2026-06-13 05:35:52,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:35:53,069.069 INFO    ] Initializing speech engine...
[2026-06-13 05:35:53,074.074 INFO    ] 2026-06-13 05:35:53
[2026-06-13 05:35:53,304.304 INFO    ] 2026-06-13 05:35:53
[2026-06-13 05:35:53,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:35:53,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:35:53,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:35:53,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:35:53,715.715 INFO    ] time= 13/06/2026 05:35:53
[2026-06-13 05:35:53,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:35:53,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:35:53,862.862 INFO    ] No existing commands found in stream
[2026-06-13 05:35:58,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:35:58,876.876 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 05:35:59,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:35:59,477.477 INFO    ] Checking for system updates...
[2026-06-13 05:35:59,501.501 INFO    ] 200
[2026-06-13 05:35:59,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:59,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:35:59,538.538 INFO    ] No update needed
[2026-06-13 05:35:59,539.539 INFO    ] Checking for camera pi updates...
[2026-06-13 05:35:59,560.560 INFO    ] 200
[2026-06-13 05:35:59,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:35:59,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:35:59,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:35:59,622.622 INFO    ] No camera update needed
[2026-06-13 05:35:59,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:35:59,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:35:59,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:35:59,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:01,664.664 INFO    ] ================================================
[2026-06-13 05:36:01,676.676 INFO    ] Launching Daemon at Sat Jun 13 05:36:01 IST 2026
[2026-06-13 05:36:01,685.685 INFO    ] ================================================
[2026-06-13 05:36:02,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:02
[2026-06-13 05:36:02,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:02,500.500 INFO    ] Initializing speech engine...
[2026-06-13 05:36:02,508.508 INFO    ] 2026-06-13 05:36:02
[2026-06-13 05:36:02,715.715 INFO    ] 2026-06-13 05:36:02
[2026-06-13 05:36:02,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:02,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:02,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:02,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:02,968.968 INFO    ] time= 13/06/2026 05:36:02
[2026-06-13 05:36:02,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:03,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:03,103.103 INFO    ] No existing commands found in stream
[2026-06-13 05:36:08,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:36:08,140.140 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 05:36:10,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:36:10,062.062 INFO    ] Checking for system updates...
[2026-06-13 05:36:10,082.082 INFO    ] 200
[2026-06-13 05:36:10,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:10,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:36:10,115.115 INFO    ] No update needed
[2026-06-13 05:36:10,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 05:36:10,138.138 INFO    ] 200
[2026-06-13 05:36:10,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:10,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:36:10,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:36:10,302.302 INFO    ] No camera update needed
[2026-06-13 05:36:10,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:36:10,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:36:10,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:36:10,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:12,351.351 INFO    ] ================================================
[2026-06-13 05:36:12,366.366 INFO    ] Launching Daemon at Sat Jun 13 05:36:12 IST 2026
[2026-06-13 05:36:12,376.376 INFO    ] ================================================
[2026-06-13 05:36:12,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:12
[2026-06-13 05:36:13,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:13,216.216 INFO    ] Initializing speech engine...
[2026-06-13 05:36:13,224.224 INFO    ] 2026-06-13 05:36:13
[2026-06-13 05:36:13,428.428 INFO    ] 2026-06-13 05:36:13
[2026-06-13 05:36:13,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:13,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:13,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:13,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:13,835.835 INFO    ] time= 13/06/2026 05:36:13
[2026-06-13 05:36:13,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:13,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:13,952.952 INFO    ] No existing commands found in stream
[2026-06-13 05:36:18,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:36:18,965.965 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 05:36:21,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:36:21,541.541 INFO    ] Checking for system updates...
[2026-06-13 05:36:21,562.562 INFO    ] 200
[2026-06-13 05:36:21,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:21,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:21,595.595 INFO    ] No update needed
[2026-06-13 05:36:21,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 05:36:21,617.617 INFO    ] 200
[2026-06-13 05:36:21,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:21,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:36:21,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:21,685.685 INFO    ] No camera update needed
[2026-06-13 05:36:21,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:36:21,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:36:21,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:36:21,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:23,734.734 INFO    ] ================================================
[2026-06-13 05:36:23,750.750 INFO    ] Launching Daemon at Sat Jun 13 05:36:23 IST 2026
[2026-06-13 05:36:23,761.761 INFO    ] ================================================
[2026-06-13 05:36:24,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:24
[2026-06-13 05:36:24,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:24,582.582 INFO    ] Initializing speech engine...
[2026-06-13 05:36:24,587.587 INFO    ] 2026-06-13 05:36:24
[2026-06-13 05:36:24,791.791 INFO    ] 2026-06-13 05:36:24
[2026-06-13 05:36:24,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:25,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:25,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:25,188.188 INFO    ] time= 13/06/2026 05:36:25
[2026-06-13 05:36:25,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:25,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:25,309.309 INFO    ] No existing commands found in stream
[2026-06-13 05:36:30,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:36:30,321.321 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 05:36:31,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:36:31,106.106 INFO    ] Checking for system updates...
[2026-06-13 05:36:31,135.135 INFO    ] 200
[2026-06-13 05:36:31,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:31,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:31,177.177 INFO    ] No update needed
[2026-06-13 05:36:31,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 05:36:31,202.202 INFO    ] 200
[2026-06-13 05:36:31,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:31,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:36:31,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:31,274.274 INFO    ] No camera update needed
[2026-06-13 05:36:31,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:36:31,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:36:31,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:36:31,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:33,317.317 INFO    ] ================================================
[2026-06-13 05:36:33,333.333 INFO    ] Launching Daemon at Sat Jun 13 05:36:33 IST 2026
[2026-06-13 05:36:33,345.345 INFO    ] ================================================
[2026-06-13 05:36:33,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:33
[2026-06-13 05:36:34,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:34,164.164 INFO    ] Initializing speech engine...
[2026-06-13 05:36:34,168.168 INFO    ] 2026-06-13 05:36:34
[2026-06-13 05:36:34,398.398 INFO    ] 2026-06-13 05:36:34
[2026-06-13 05:36:34,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:34,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:34,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:34,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:34,775.775 INFO    ] time= 13/06/2026 05:36:34
[2026-06-13 05:36:34,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:34,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:34,984.984 INFO    ] No existing commands found in stream
[2026-06-13 05:36:39,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:36:39,996.996 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 05:36:43,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:36:43,153.153 INFO    ] Checking for system updates...
[2026-06-13 05:36:43,174.174 INFO    ] 200
[2026-06-13 05:36:43,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:43,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:43,217.217 INFO    ] No update needed
[2026-06-13 05:36:43,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 05:36:43,239.239 INFO    ] 200
[2026-06-13 05:36:43,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:43,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:36:43,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:36:43,306.306 INFO    ] No camera update needed
[2026-06-13 05:36:43,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:36:43,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:36:43,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:36:43,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:45,353.353 INFO    ] ================================================
[2026-06-13 05:36:45,368.368 INFO    ] Launching Daemon at Sat Jun 13 05:36:45 IST 2026
[2026-06-13 05:36:45,379.379 INFO    ] ================================================
[2026-06-13 05:36:45,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:45
[2026-06-13 05:36:46,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:46,187.187 INFO    ] Initializing speech engine...
[2026-06-13 05:36:46,192.192 INFO    ] 2026-06-13 05:36:46
[2026-06-13 05:36:46,396.396 INFO    ] 2026-06-13 05:36:46
[2026-06-13 05:36:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:46,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:46,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:46,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:46,812.812 INFO    ] time= 13/06/2026 05:36:46
[2026-06-13 05:36:46,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:46,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:46,920.920 INFO    ] No existing commands found in stream
[2026-06-13 05:36:51,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:36:51,932.932 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 05:36:55,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:36:55,396.396 INFO    ] Checking for system updates...
[2026-06-13 05:36:55,416.416 INFO    ] 200
[2026-06-13 05:36:55,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:55,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:36:55,450.450 INFO    ] No update needed
[2026-06-13 05:36:55,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 05:36:55,470.470 INFO    ] 200
[2026-06-13 05:36:55,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:36:55,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:36:55,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:36:55,531.531 INFO    ] No camera update needed
[2026-06-13 05:36:55,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:36:55,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:36:55,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:36:55,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:36:57,578.578 INFO    ] ================================================
[2026-06-13 05:36:57,594.594 INFO    ] Launching Daemon at Sat Jun 13 05:36:57 IST 2026
[2026-06-13 05:36:57,604.604 INFO    ] ================================================
[2026-06-13 05:36:57,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:36:57
[2026-06-13 05:36:58,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:36:58,400.400 INFO    ] Initializing speech engine...
[2026-06-13 05:36:58,405.405 INFO    ] 2026-06-13 05:36:58
[2026-06-13 05:36:58,624.624 INFO    ] 2026-06-13 05:36:58
[2026-06-13 05:36:58,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:36:58,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:36:58,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:36:58,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:36:59,028.028 INFO    ] time= 13/06/2026 05:36:58
[2026-06-13 05:36:59,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:36:59,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:36:59,145.145 INFO    ] No existing commands found in stream
[2026-06-13 05:37:04,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:37:04,158.158 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 05:37:06,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:37:06,680.680 INFO    ] Checking for system updates...
[2026-06-13 05:37:06,717.717 INFO    ] 200
[2026-06-13 05:37:06,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:06,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:06,776.776 INFO    ] No update needed
[2026-06-13 05:37:06,778.778 INFO    ] Checking for camera pi updates...
[2026-06-13 05:37:06,813.813 INFO    ] 200
[2026-06-13 05:37:06,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:06,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:37:06,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:06,886.886 INFO    ] No camera update needed
[2026-06-13 05:37:06,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:37:06,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:37:06,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:37:06,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:37:08,943.943 INFO    ] ================================================
[2026-06-13 05:37:08,959.959 INFO    ] Launching Daemon at Sat Jun 13 05:37:08 IST 2026
[2026-06-13 05:37:08,970.970 INFO    ] ================================================
[2026-06-13 05:37:09,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:37:09
[2026-06-13 05:37:10,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:37:10,170.170 INFO    ] Initializing speech engine...
[2026-06-13 05:37:10,175.175 INFO    ] 2026-06-13 05:37:10
[2026-06-13 05:37:10,385.385 INFO    ] 2026-06-13 05:37:10
[2026-06-13 05:37:10,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:37:10,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:37:10,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:37:10,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:37:10,791.791 INFO    ] time= 13/06/2026 05:37:10
[2026-06-13 05:37:10,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:37:10,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:37:10,908.908 INFO    ] No existing commands found in stream
[2026-06-13 05:37:15,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:37:15,921.921 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 05:37:16,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:37:16,636.636 INFO    ] Checking for system updates...
[2026-06-13 05:37:16,657.657 INFO    ] 200
[2026-06-13 05:37:16,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:16,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:16,693.693 INFO    ] No update needed
[2026-06-13 05:37:16,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 05:37:16,719.719 INFO    ] 200
[2026-06-13 05:37:16,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:16,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:37:16,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:16,786.786 INFO    ] No camera update needed
[2026-06-13 05:37:16,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:37:16,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:37:16,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:37:16,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:37:18,834.834 INFO    ] ================================================
[2026-06-13 05:37:18,850.850 INFO    ] Launching Daemon at Sat Jun 13 05:37:18 IST 2026
[2026-06-13 05:37:18,862.862 INFO    ] ================================================
[2026-06-13 05:37:19,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:37:19
[2026-06-13 05:37:19,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:37:19,670.670 INFO    ] Initializing speech engine...
[2026-06-13 05:37:19,675.675 INFO    ] 2026-06-13 05:37:19
[2026-06-13 05:37:19,892.892 INFO    ] 2026-06-13 05:37:19
[2026-06-13 05:37:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:37:20,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:37:20,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:37:20,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:37:20,330.330 INFO    ] time= 13/06/2026 05:37:20
[2026-06-13 05:37:20,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:37:20,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:37:20,452.452 INFO    ] No existing commands found in stream
[2026-06-13 05:37:25,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:37:25,465.465 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 05:37:27,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:37:27,526.526 INFO    ] Checking for system updates...
[2026-06-13 05:37:27,546.546 INFO    ] 200
[2026-06-13 05:37:27,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:27,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:37:27,580.580 INFO    ] No update needed
[2026-06-13 05:37:27,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 05:37:27,600.600 INFO    ] 200
[2026-06-13 05:37:27,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:27,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:37:27,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:37:27,662.662 INFO    ] No camera update needed
[2026-06-13 05:37:27,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:37:27,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:37:27,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:37:27,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:37:29,710.710 INFO    ] ================================================
[2026-06-13 05:37:29,725.725 INFO    ] Launching Daemon at Sat Jun 13 05:37:29 IST 2026
[2026-06-13 05:37:29,737.737 INFO    ] ================================================
[2026-06-13 05:37:30,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:37:30
[2026-06-13 05:37:30,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:37:30,543.543 INFO    ] Initializing speech engine...
[2026-06-13 05:37:30,547.547 INFO    ] 2026-06-13 05:37:30
[2026-06-13 05:37:30,751.751 INFO    ] 2026-06-13 05:37:30
[2026-06-13 05:37:30,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:37:30,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:37:30,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:37:31,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:37:31,148.148 INFO    ] time= 13/06/2026 05:37:31
[2026-06-13 05:37:31,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:37:31,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:37:31,263.263 INFO    ] No existing commands found in stream
[2026-06-13 05:37:36,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:37:36,280.280 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 05:37:39,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:37:39,242.242 INFO    ] Checking for system updates...
[2026-06-13 05:37:39,263.263 INFO    ] 200
[2026-06-13 05:37:39,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:39,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:39,296.296 INFO    ] No update needed
[2026-06-13 05:37:39,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 05:37:39,317.317 INFO    ] 200
[2026-06-13 05:37:39,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:39,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:37:39,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:37:39,384.384 INFO    ] No camera update needed
[2026-06-13 05:37:39,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:37:39,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:37:39,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:37:39,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:37:41,435.435 INFO    ] ================================================
[2026-06-13 05:37:41,451.451 INFO    ] Launching Daemon at Sat Jun 13 05:37:41 IST 2026
[2026-06-13 05:37:41,463.463 INFO    ] ================================================
[2026-06-13 05:37:41,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:37:41
[2026-06-13 05:37:42,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:37:42,242.242 INFO    ] Initializing speech engine...
[2026-06-13 05:37:42,252.252 INFO    ] 2026-06-13 05:37:42
[2026-06-13 05:37:42,457.457 INFO    ] 2026-06-13 05:37:42
[2026-06-13 05:37:42,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:37:42,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:37:42,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:37:42,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:37:42,860.860 INFO    ] time= 13/06/2026 05:37:42
[2026-06-13 05:37:42,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:37:42,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:37:42,978.978 INFO    ] No existing commands found in stream
[2026-06-13 05:37:47,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:37:47,990.990 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 05:37:52,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:37:52,111.111 INFO    ] Checking for system updates...
[2026-06-13 05:37:52,131.131 INFO    ] 200
[2026-06-13 05:37:52,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:52,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:37:52,165.165 INFO    ] No update needed
[2026-06-13 05:37:52,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 05:37:52,187.187 INFO    ] 200
[2026-06-13 05:37:52,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:37:52,212.212 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:37:52,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:37:52,257.257 INFO    ] No camera update needed
[2026-06-13 05:37:52,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:37:52,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:37:52,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:37:52,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:37:54,303.303 INFO    ] ================================================
[2026-06-13 05:37:54,320.320 INFO    ] Launching Daemon at Sat Jun 13 05:37:54 IST 2026
[2026-06-13 05:37:54,331.331 INFO    ] ================================================
[2026-06-13 05:37:54,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:37:54
[2026-06-13 05:37:54,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:37:55,119.119 INFO    ] Initializing speech engine...
[2026-06-13 05:37:55,124.124 INFO    ] 2026-06-13 05:37:55
[2026-06-13 05:37:55,326.326 INFO    ] 2026-06-13 05:37:55
[2026-06-13 05:37:55,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:37:55,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:37:55,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:37:55,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:37:55,742.742 INFO    ] time= 13/06/2026 05:37:55
[2026-06-13 05:37:55,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:37:55,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:37:55,839.839 INFO    ] No existing commands found in stream
[2026-06-13 05:38:00,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:00,851.851 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 05:38:04,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:38:04,243.243 INFO    ] Checking for system updates...
[2026-06-13 05:38:04,263.263 INFO    ] 200
[2026-06-13 05:38:04,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:04,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:04,296.296 INFO    ] No update needed
[2026-06-13 05:38:04,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:04,319.319 INFO    ] 200
[2026-06-13 05:38:04,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:04,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:04,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:04,382.382 INFO    ] No camera update needed
[2026-06-13 05:38:04,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:04,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:04,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:04,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:38:06,431.431 INFO    ] ================================================
[2026-06-13 05:38:06,446.446 INFO    ] Launching Daemon at Sat Jun 13 05:38:06 IST 2026
[2026-06-13 05:38:06,457.457 INFO    ] ================================================
[2026-06-13 05:38:06,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:38:06
[2026-06-13 05:38:07,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:38:07,249.249 INFO    ] Initializing speech engine...
[2026-06-13 05:38:07,254.254 INFO    ] 2026-06-13 05:38:07
[2026-06-13 05:38:07,458.458 INFO    ] 2026-06-13 05:38:07
[2026-06-13 05:38:07,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:38:07,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:38:07,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:38:07,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:38:07,850.850 INFO    ] time= 13/06/2026 05:38:07
[2026-06-13 05:38:07,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:38:07,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:38:07,968.968 INFO    ] No existing commands found in stream
[2026-06-13 05:38:12,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:12,982.982 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 05:38:13,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:38:13,436.436 INFO    ] Checking for system updates...
[2026-06-13 05:38:13,456.456 INFO    ] 200
[2026-06-13 05:38:13,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:13,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:13,490.490 INFO    ] No update needed
[2026-06-13 05:38:13,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:13,512.512 INFO    ] 200
[2026-06-13 05:38:13,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:13,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:13,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:13,682.682 INFO    ] No camera update needed
[2026-06-13 05:38:13,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:13,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:13,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:13,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:38:15,729.729 INFO    ] ================================================
[2026-06-13 05:38:15,744.744 INFO    ] Launching Daemon at Sat Jun 13 05:38:15 IST 2026
[2026-06-13 05:38:15,755.755 INFO    ] ================================================
[2026-06-13 05:38:16,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:38:16
[2026-06-13 05:38:16,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:38:16,587.587 INFO    ] Initializing speech engine...
[2026-06-13 05:38:16,593.593 INFO    ] 2026-06-13 05:38:16
[2026-06-13 05:38:16,796.796 INFO    ] 2026-06-13 05:38:16
[2026-06-13 05:38:16,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:38:16,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:38:17,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:38:17,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:38:17,203.203 INFO    ] time= 13/06/2026 05:38:17
[2026-06-13 05:38:17,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:38:17,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:38:17,315.315 INFO    ] No existing commands found in stream
[2026-06-13 05:38:22,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:22,327.327 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 05:38:25,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:38:25,161.161 INFO    ] Checking for system updates...
[2026-06-13 05:38:25,181.181 INFO    ] 200
[2026-06-13 05:38:25,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:25,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:25,215.215 INFO    ] No update needed
[2026-06-13 05:38:25,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:25,236.236 INFO    ] 200
[2026-06-13 05:38:25,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:25,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:25,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:25,303.303 INFO    ] No camera update needed
[2026-06-13 05:38:25,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:25,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:25,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:25,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:38:27,349.349 INFO    ] ================================================
[2026-06-13 05:38:27,364.364 INFO    ] Launching Daemon at Sat Jun 13 05:38:27 IST 2026
[2026-06-13 05:38:27,375.375 INFO    ] ================================================
[2026-06-13 05:38:27,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:38:27
[2026-06-13 05:38:28,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:38:28,160.160 INFO    ] Initializing speech engine...
[2026-06-13 05:38:28,165.165 INFO    ] 2026-06-13 05:38:28
[2026-06-13 05:38:28,369.369 INFO    ] 2026-06-13 05:38:28
[2026-06-13 05:38:28,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:38:28,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:38:28,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:38:28,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:38:28,786.786 INFO    ] time= 13/06/2026 05:38:28
[2026-06-13 05:38:28,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:38:28,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:38:28,883.883 INFO    ] No existing commands found in stream
[2026-06-13 05:38:33,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:33,894.894 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 05:38:36,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:38:36,745.745 INFO    ] Checking for system updates...
[2026-06-13 05:38:36,766.766 INFO    ] 200
[2026-06-13 05:38:36,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:36,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:36,800.800 INFO    ] No update needed
[2026-06-13 05:38:36,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:36,821.821 INFO    ] 200
[2026-06-13 05:38:36,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:36,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:36,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:36,882.882 INFO    ] No camera update needed
[2026-06-13 05:38:36,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:36,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:36,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:36,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:38:38,931.931 INFO    ] ================================================
[2026-06-13 05:38:38,946.946 INFO    ] Launching Daemon at Sat Jun 13 05:38:38 IST 2026
[2026-06-13 05:38:38,957.957 INFO    ] ================================================
[2026-06-13 05:38:39,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:38:39
[2026-06-13 05:38:39,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:38:39,744.744 INFO    ] Initializing speech engine...
[2026-06-13 05:38:39,749.749 INFO    ] 2026-06-13 05:38:39
[2026-06-13 05:38:39,968.968 INFO    ] 2026-06-13 05:38:39
[2026-06-13 05:38:39,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:38:40,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:38:40,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:38:40,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:38:40,387.387 INFO    ] time= 13/06/2026 05:38:40
[2026-06-13 05:38:40,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:38:40,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:38:40,488.488 INFO    ] No existing commands found in stream
[2026-06-13 05:38:45,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:45,501.501 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 05:38:48,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:38:48,384.384 INFO    ] Checking for system updates...
[2026-06-13 05:38:48,406.406 INFO    ] 200
[2026-06-13 05:38:48,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:48,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:48,442.442 INFO    ] No update needed
[2026-06-13 05:38:48,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:48,464.464 INFO    ] 200
[2026-06-13 05:38:48,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:48,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:48,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:38:48,526.526 INFO    ] No camera update needed
[2026-06-13 05:38:48,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:48,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:48,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:48,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:38:50,574.574 INFO    ] ================================================
[2026-06-13 05:38:50,589.589 INFO    ] Launching Daemon at Sat Jun 13 05:38:50 IST 2026
[2026-06-13 05:38:50,600.600 INFO    ] ================================================
[2026-06-13 05:38:50,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:38:50
[2026-06-13 05:38:51,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:38:51,391.391 INFO    ] Initializing speech engine...
[2026-06-13 05:38:51,403.403 INFO    ] 2026-06-13 05:38:51
[2026-06-13 05:38:51,613.613 INFO    ] 2026-06-13 05:38:51
[2026-06-13 05:38:51,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:38:51,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:38:51,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:38:51,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:38:52,028.028 INFO    ] time= 13/06/2026 05:38:51
[2026-06-13 05:38:52,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:38:52,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:38:52,134.134 INFO    ] No existing commands found in stream
[2026-06-13 05:38:57,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:38:57,148.148 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 05:38:57,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:38:57,930.930 INFO    ] Checking for system updates...
[2026-06-13 05:38:57,951.951 INFO    ] 200
[2026-06-13 05:38:57,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:57,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:57,987.987 INFO    ] No update needed
[2026-06-13 05:38:57,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 05:38:58,008.008 INFO    ] 200
[2026-06-13 05:38:58,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:38:58,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:38:58,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:38:58,073.073 INFO    ] No camera update needed
[2026-06-13 05:38:58,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:38:58,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:38:58,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:38:58,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:00,121.121 INFO    ] ================================================
[2026-06-13 05:39:00,137.137 INFO    ] Launching Daemon at Sat Jun 13 05:39:00 IST 2026
[2026-06-13 05:39:00,149.149 INFO    ] ================================================
[2026-06-13 05:39:00,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:00
[2026-06-13 05:39:00,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:39:00,962.962 INFO    ] Initializing speech engine...
[2026-06-13 05:39:00,967.967 INFO    ] 2026-06-13 05:39:00
[2026-06-13 05:39:01,172.172 INFO    ] 2026-06-13 05:39:01
[2026-06-13 05:39:01,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:39:01,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:39:01,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:39:01,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:39:01,528.528 INFO    ] time= 13/06/2026 05:39:01
[2026-06-13 05:39:01,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:39:01,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:39:01,583.583 INFO    ] No existing commands found in stream
[2026-06-13 05:39:06,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:39:06,596.596 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 05:39:09,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:39:09,192.192 INFO    ] Checking for system updates...
[2026-06-13 05:39:09,214.214 INFO    ] 200
[2026-06-13 05:39:09,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:09,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:09,248.248 INFO    ] No update needed
[2026-06-13 05:39:09,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 05:39:09,270.270 INFO    ] 200
[2026-06-13 05:39:09,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:09,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:39:09,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:09,336.336 INFO    ] No camera update needed
[2026-06-13 05:39:09,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:39:09,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:39:09,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:39:09,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:11,387.387 INFO    ] ================================================
[2026-06-13 05:39:11,402.402 INFO    ] Launching Daemon at Sat Jun 13 05:39:11 IST 2026
[2026-06-13 05:39:11,413.413 INFO    ] ================================================
[2026-06-13 05:39:11,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:11
[2026-06-13 05:39:12,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:39:12,197.197 INFO    ] Initializing speech engine...
[2026-06-13 05:39:12,202.202 INFO    ] 2026-06-13 05:39:12
[2026-06-13 05:39:12,406.406 INFO    ] 2026-06-13 05:39:12
[2026-06-13 05:39:12,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:39:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:39:12,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:39:12,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:39:12,841.841 INFO    ] time= 13/06/2026 05:39:12
[2026-06-13 05:39:12,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:39:12,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:39:12,994.994 INFO    ] No existing commands found in stream
[2026-06-13 05:39:18,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:39:18,007.007 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 05:39:21,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:39:21,390.390 INFO    ] Checking for system updates...
[2026-06-13 05:39:21,413.413 INFO    ] 200
[2026-06-13 05:39:21,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:21,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:21,450.450 INFO    ] No update needed
[2026-06-13 05:39:21,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 05:39:21,472.472 INFO    ] 200
[2026-06-13 05:39:21,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:21,496.496 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:39:21,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:21,537.537 INFO    ] No camera update needed
[2026-06-13 05:39:21,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:39:21,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:39:21,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:39:21,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:23,586.586 INFO    ] ================================================
[2026-06-13 05:39:23,602.602 INFO    ] Launching Daemon at Sat Jun 13 05:39:23 IST 2026
[2026-06-13 05:39:23,613.613 INFO    ] ================================================
[2026-06-13 05:39:23,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:23
[2026-06-13 05:39:24,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:39:24,450.450 INFO    ] Initializing speech engine...
[2026-06-13 05:39:24,460.460 INFO    ] 2026-06-13 05:39:24
[2026-06-13 05:39:24,665.665 INFO    ] 2026-06-13 05:39:24
[2026-06-13 05:39:24,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:39:24,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:39:24,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:39:25,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:39:25,065.065 INFO    ] time= 13/06/2026 05:39:25
[2026-06-13 05:39:25,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:39:25,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:39:25,179.179 INFO    ] No existing commands found in stream
[2026-06-13 05:39:30,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:39:30,193.193 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 05:39:34,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:39:34,954.954 INFO    ] Checking for system updates...
[2026-06-13 05:39:34,994.994 INFO    ] 200
[2026-06-13 05:39:34,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:35,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:39:35,052.052 INFO    ] No update needed
[2026-06-13 05:39:35,054.054 INFO    ] Checking for camera pi updates...
[2026-06-13 05:39:35,088.088 INFO    ] 200
[2026-06-13 05:39:35,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:35,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:39:35,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:39:35,177.177 INFO    ] No camera update needed
[2026-06-13 05:39:35,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:39:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:39:35,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:39:35,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:37,232.232 INFO    ] ================================================
[2026-06-13 05:39:37,249.249 INFO    ] Launching Daemon at Sat Jun 13 05:39:37 IST 2026
[2026-06-13 05:39:37,261.261 INFO    ] ================================================
[2026-06-13 05:39:37,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:37
[2026-06-13 05:39:37,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:39:38,046.046 INFO    ] Initializing speech engine...
[2026-06-13 05:39:38,052.052 INFO    ] 2026-06-13 05:39:38
[2026-06-13 05:39:38,260.260 INFO    ] 2026-06-13 05:39:38
[2026-06-13 05:39:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:39:38,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:39:38,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:39:38,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:39:38,610.610 INFO    ] time= 13/06/2026 05:39:38
[2026-06-13 05:39:38,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:39:38,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:39:38,720.720 INFO    ] No existing commands found in stream
[2026-06-13 05:39:43,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:39:43,735.735 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 05:39:47,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:39:47,856.856 INFO    ] Checking for system updates...
[2026-06-13 05:39:47,877.877 INFO    ] 200
[2026-06-13 05:39:47,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:47,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:47,911.911 INFO    ] No update needed
[2026-06-13 05:39:47,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 05:39:47,932.932 INFO    ] 200
[2026-06-13 05:39:47,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:47,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:39:47,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:39:47,994.994 INFO    ] No camera update needed
[2026-06-13 05:39:47,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:39:47,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:39:48,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:39:48,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:50,045.045 INFO    ] ================================================
[2026-06-13 05:39:50,061.061 INFO    ] Launching Daemon at Sat Jun 13 05:39:50 IST 2026
[2026-06-13 05:39:50,071.071 INFO    ] ================================================
[2026-06-13 05:39:50,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:50
[2026-06-13 05:39:50,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:39:50,953.953 INFO    ] Initializing speech engine...
[2026-06-13 05:39:50,959.959 INFO    ] 2026-06-13 05:39:50
[2026-06-13 05:39:51,170.170 INFO    ] 2026-06-13 05:39:51
[2026-06-13 05:39:51,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:39:51,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:39:51,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:39:51,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:39:51,589.589 INFO    ] time= 13/06/2026 05:39:51
[2026-06-13 05:39:51,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:39:51,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:39:51,697.697 INFO    ] No existing commands found in stream
[2026-06-13 05:39:56,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:39:56,710.710 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 05:39:57,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:39:57,163.163 INFO    ] Checking for system updates...
[2026-06-13 05:39:57,185.185 INFO    ] 200
[2026-06-13 05:39:57,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:57,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:39:57,220.220 INFO    ] No update needed
[2026-06-13 05:39:57,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 05:39:57,242.242 INFO    ] 200
[2026-06-13 05:39:57,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:39:57,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:39:57,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:39:57,311.311 INFO    ] No camera update needed
[2026-06-13 05:39:57,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:39:57,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:39:57,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:39:57,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:39:59,357.357 INFO    ] ================================================
[2026-06-13 05:39:59,371.371 INFO    ] Launching Daemon at Sat Jun 13 05:39:59 IST 2026
[2026-06-13 05:39:59,382.382 INFO    ] ================================================
[2026-06-13 05:39:59,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:39:59
[2026-06-13 05:40:00,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:00,169.169 INFO    ] Initializing speech engine...
[2026-06-13 05:40:00,175.175 INFO    ] 2026-06-13 05:40:00
[2026-06-13 05:40:00,392.392 INFO    ] 2026-06-13 05:40:00
[2026-06-13 05:40:00,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:00,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:00,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:00,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:00,771.771 INFO    ] time= 13/06/2026 05:40:00
[2026-06-13 05:40:00,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:00,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:00,872.872 INFO    ] No existing commands found in stream
[2026-06-13 05:40:05,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:40:05,910.910 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 05:40:10,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:40:10,100.100 INFO    ] Checking for system updates...
[2026-06-13 05:40:10,121.121 INFO    ] 200
[2026-06-13 05:40:10,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:10,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:10,154.154 INFO    ] No update needed
[2026-06-13 05:40:10,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 05:40:10,176.176 INFO    ] 200
[2026-06-13 05:40:10,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:10,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:40:10,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:10,241.241 INFO    ] No camera update needed
[2026-06-13 05:40:10,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:40:10,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:40:10,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:40:10,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:40:12,289.289 INFO    ] ================================================
[2026-06-13 05:40:12,305.305 INFO    ] Launching Daemon at Sat Jun 13 05:40:12 IST 2026
[2026-06-13 05:40:12,315.315 INFO    ] ================================================
[2026-06-13 05:40:12,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:40:12
[2026-06-13 05:40:13,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:13,174.174 INFO    ] Initializing speech engine...
[2026-06-13 05:40:13,180.180 INFO    ] 2026-06-13 05:40:13
[2026-06-13 05:40:13,388.388 INFO    ] 2026-06-13 05:40:13
[2026-06-13 05:40:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:13,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:13,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:13,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:13,800.800 INFO    ] time= 13/06/2026 05:40:13
[2026-06-13 05:40:13,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:13,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:13,904.904 INFO    ] No existing commands found in stream
[2026-06-13 05:40:18,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:40:18,918.918 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 05:40:21,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:40:21,317.317 INFO    ] Checking for system updates...
[2026-06-13 05:40:21,338.338 INFO    ] 200
[2026-06-13 05:40:21,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:21,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:40:21,375.375 INFO    ] No update needed
[2026-06-13 05:40:21,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 05:40:21,398.398 INFO    ] 200
[2026-06-13 05:40:21,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:21,425.425 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:40:21,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:40:21,570.570 INFO    ] No camera update needed
[2026-06-13 05:40:21,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:40:21,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:40:21,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:40:21,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:40:23,619.619 INFO    ] ================================================
[2026-06-13 05:40:23,634.634 INFO    ] Launching Daemon at Sat Jun 13 05:40:23 IST 2026
[2026-06-13 05:40:23,645.645 INFO    ] ================================================
[2026-06-13 05:40:23,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:40:23
[2026-06-13 05:40:24,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:24,481.481 INFO    ] Initializing speech engine...
[2026-06-13 05:40:24,484.484 INFO    ] 2026-06-13 05:40:24
[2026-06-13 05:40:24,692.692 INFO    ] 2026-06-13 05:40:24
[2026-06-13 05:40:24,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:24,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:24,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:25,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:25,100.100 INFO    ] time= 13/06/2026 05:40:25
[2026-06-13 05:40:25,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:25,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:25,210.210 INFO    ] No existing commands found in stream
[2026-06-13 05:40:30,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:40:30,223.223 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 05:40:32,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:40:32,472.472 INFO    ] Checking for system updates...
[2026-06-13 05:40:32,497.497 INFO    ] 200
[2026-06-13 05:40:32,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:32,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:32,542.542 INFO    ] No update needed
[2026-06-13 05:40:32,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 05:40:32,567.567 INFO    ] 200
[2026-06-13 05:40:32,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:32,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:40:32,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:32,631.631 INFO    ] No camera update needed
[2026-06-13 05:40:32,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:40:32,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:40:32,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:40:32,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:40:34,678.678 INFO    ] ================================================
[2026-06-13 05:40:34,694.694 INFO    ] Launching Daemon at Sat Jun 13 05:40:34 IST 2026
[2026-06-13 05:40:34,705.705 INFO    ] ================================================
[2026-06-13 05:40:35,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:40:35
[2026-06-13 05:40:35,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:35,506.506 INFO    ] Initializing speech engine...
[2026-06-13 05:40:35,511.511 INFO    ] 2026-06-13 05:40:35
[2026-06-13 05:40:35,714.714 INFO    ] 2026-06-13 05:40:35
[2026-06-13 05:40:35,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:35,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:35,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:36,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:36,131.131 INFO    ] time= 13/06/2026 05:40:36
[2026-06-13 05:40:36,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:36,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:36,230.230 INFO    ] No existing commands found in stream
[2026-06-13 05:40:41,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:40:41,243.243 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 05:40:43,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:40:43,980.980 INFO    ] Checking for system updates...
[2026-06-13 05:40:44,001.001 INFO    ] 200
[2026-06-13 05:40:44,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:44,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:44,036.036 INFO    ] No update needed
[2026-06-13 05:40:44,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 05:40:44,057.057 INFO    ] 200
[2026-06-13 05:40:44,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:44,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:40:44,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:40:44,130.130 INFO    ] No camera update needed
[2026-06-13 05:40:44,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:40:44,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:40:44,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:40:44,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:40:46,181.181 INFO    ] ================================================
[2026-06-13 05:40:46,197.197 INFO    ] Launching Daemon at Sat Jun 13 05:40:46 IST 2026
[2026-06-13 05:40:46,207.207 INFO    ] ================================================
[2026-06-13 05:40:46,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:40:46
[2026-06-13 05:40:46,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:46,993.993 INFO    ] Initializing speech engine...
[2026-06-13 05:40:46,998.998 INFO    ] 2026-06-13 05:40:46
[2026-06-13 05:40:47,203.203 INFO    ] 2026-06-13 05:40:47
[2026-06-13 05:40:47,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:47,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:47,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:47,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:47,591.591 INFO    ] time= 13/06/2026 05:40:47
[2026-06-13 05:40:47,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:47,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:47,717.717 INFO    ] No existing commands found in stream
[2026-06-13 05:40:52,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:40:52,729.729 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 05:40:55,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:40:55,856.856 INFO    ] Checking for system updates...
[2026-06-13 05:40:55,877.877 INFO    ] 200
[2026-06-13 05:40:55,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:55,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:55,911.911 INFO    ] No update needed
[2026-06-13 05:40:55,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 05:40:55,932.932 INFO    ] 200
[2026-06-13 05:40:55,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:40:55,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:40:55,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:40:55,999.999 INFO    ] No camera update needed
[2026-06-13 05:40:56,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:40:56,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:40:56,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:40:56,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:40:58,046.046 INFO    ] ================================================
[2026-06-13 05:40:58,062.062 INFO    ] Launching Daemon at Sat Jun 13 05:40:58 IST 2026
[2026-06-13 05:40:58,073.073 INFO    ] ================================================
[2026-06-13 05:40:58,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:40:58
[2026-06-13 05:40:58,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:40:58,875.875 INFO    ] Initializing speech engine...
[2026-06-13 05:40:58,885.885 INFO    ] 2026-06-13 05:40:58
[2026-06-13 05:40:59,090.090 INFO    ] 2026-06-13 05:40:59
[2026-06-13 05:40:59,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:40:59,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:40:59,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:40:59,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:40:59,511.511 INFO    ] time= 13/06/2026 05:40:59
[2026-06-13 05:40:59,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:40:59,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:40:59,643.643 INFO    ] No existing commands found in stream
[2026-06-13 05:41:04,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:04,656.656 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 05:41:05,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:41:05,661.661 INFO    ] Checking for system updates...
[2026-06-13 05:41:05,682.682 INFO    ] 200
[2026-06-13 05:41:05,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:05,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:05,718.718 INFO    ] No update needed
[2026-06-13 05:41:05,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 05:41:05,740.740 INFO    ] 200
[2026-06-13 05:41:05,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:05,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:41:05,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:05,807.807 INFO    ] No camera update needed
[2026-06-13 05:41:05,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:41:05,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:41:05,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:41:05,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:41:07,855.855 INFO    ] ================================================
[2026-06-13 05:41:07,871.871 INFO    ] Launching Daemon at Sat Jun 13 05:41:07 IST 2026
[2026-06-13 05:41:07,883.883 INFO    ] ================================================
[2026-06-13 05:41:08,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:41:08
[2026-06-13 05:41:08,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:41:08,674.674 INFO    ] Initializing speech engine...
[2026-06-13 05:41:08,687.687 INFO    ] 2026-06-13 05:41:08
[2026-06-13 05:41:08,908.908 INFO    ] 2026-06-13 05:41:08
[2026-06-13 05:41:08,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:41:09,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:41:09,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:41:09,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:41:09,289.289 INFO    ] time= 13/06/2026 05:41:09
[2026-06-13 05:41:09,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:41:09,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:41:09,472.472 INFO    ] No existing commands found in stream
[2026-06-13 05:41:14,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:14,486.486 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 05:41:17,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:41:17,296.296 INFO    ] Checking for system updates...
[2026-06-13 05:41:17,317.317 INFO    ] 200
[2026-06-13 05:41:17,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:17,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:17,350.350 INFO    ] No update needed
[2026-06-13 05:41:17,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 05:41:17,372.372 INFO    ] 200
[2026-06-13 05:41:17,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:17,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:41:17,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:17,438.438 INFO    ] No camera update needed
[2026-06-13 05:41:17,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:41:17,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:41:17,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:41:17,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:41:19,489.489 INFO    ] ================================================
[2026-06-13 05:41:19,509.509 INFO    ] Launching Daemon at Sat Jun 13 05:41:19 IST 2026
[2026-06-13 05:41:19,520.520 INFO    ] ================================================
[2026-06-13 05:41:19,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:41:19
[2026-06-13 05:41:20,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:41:20,377.377 INFO    ] Initializing speech engine...
[2026-06-13 05:41:20,382.382 INFO    ] 2026-06-13 05:41:20
[2026-06-13 05:41:20,587.587 INFO    ] 2026-06-13 05:41:20
[2026-06-13 05:41:20,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:41:20,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:41:20,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:41:20,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:41:20,997.997 INFO    ] time= 13/06/2026 05:41:20
[2026-06-13 05:41:21,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:41:21,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:41:21,102.102 INFO    ] No existing commands found in stream
[2026-06-13 05:41:26,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:26,114.114 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 05:41:28,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:41:28,422.422 INFO    ] Checking for system updates...
[2026-06-13 05:41:28,444.444 INFO    ] 200
[2026-06-13 05:41:28,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:28,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:41:28,478.478 INFO    ] No update needed
[2026-06-13 05:41:28,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 05:41:28,500.500 INFO    ] 200
[2026-06-13 05:41:28,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:28,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:41:28,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:41:28,570.570 INFO    ] No camera update needed
[2026-06-13 05:41:28,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:41:28,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:41:28,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:41:28,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:41:30,619.619 INFO    ] ================================================
[2026-06-13 05:41:30,635.635 INFO    ] Launching Daemon at Sat Jun 13 05:41:30 IST 2026
[2026-06-13 05:41:30,646.646 INFO    ] ================================================
[2026-06-13 05:41:30,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:41:30
[2026-06-13 05:41:31,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:41:31,442.442 INFO    ] Initializing speech engine...
[2026-06-13 05:41:31,447.447 INFO    ] 2026-06-13 05:41:31
[2026-06-13 05:41:31,676.676 INFO    ] 2026-06-13 05:41:31
[2026-06-13 05:41:31,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:41:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:41:31,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:41:32,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:41:32,117.117 INFO    ] time= 13/06/2026 05:41:32
[2026-06-13 05:41:32,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:41:32,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:41:32,235.235 INFO    ] No existing commands found in stream
[2026-06-13 05:41:37,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:37,246.246 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 05:41:39,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:41:39,412.412 INFO    ] Checking for system updates...
[2026-06-13 05:41:39,433.433 INFO    ] 200
[2026-06-13 05:41:39,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:39,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:39,468.468 INFO    ] No update needed
[2026-06-13 05:41:39,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 05:41:39,489.489 INFO    ] 200
[2026-06-13 05:41:39,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:39,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:41:39,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:39,560.560 INFO    ] No camera update needed
[2026-06-13 05:41:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:41:39,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:41:39,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:41:39,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:41:41,609.609 INFO    ] ================================================
[2026-06-13 05:41:41,624.624 INFO    ] Launching Daemon at Sat Jun 13 05:41:41 IST 2026
[2026-06-13 05:41:41,635.635 INFO    ] ================================================
[2026-06-13 05:41:41,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:41:41
[2026-06-13 05:41:42,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:41:42,428.428 INFO    ] Initializing speech engine...
[2026-06-13 05:41:42,440.440 INFO    ] 2026-06-13 05:41:42
[2026-06-13 05:41:42,651.651 INFO    ] 2026-06-13 05:41:42
[2026-06-13 05:41:42,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:41:42,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:41:42,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:41:43,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:41:43,074.074 INFO    ] time= 13/06/2026 05:41:43
[2026-06-13 05:41:43,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:41:43,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:41:43,177.177 INFO    ] No existing commands found in stream
[2026-06-13 05:41:48,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:48,191.191 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 05:41:50,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:41:50,256.256 INFO    ] Checking for system updates...
[2026-06-13 05:41:50,277.277 INFO    ] 200
[2026-06-13 05:41:50,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:50,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:50,310.310 INFO    ] No update needed
[2026-06-13 05:41:50,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 05:41:50,331.331 INFO    ] 200
[2026-06-13 05:41:50,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:41:50,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:41:50,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:41:50,405.405 INFO    ] No camera update needed
[2026-06-13 05:41:50,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:41:50,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:41:50,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:41:50,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:41:52,454.454 INFO    ] ================================================
[2026-06-13 05:41:52,469.469 INFO    ] Launching Daemon at Sat Jun 13 05:41:52 IST 2026
[2026-06-13 05:41:52,480.480 INFO    ] ================================================
[2026-06-13 05:41:53,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:41:53
[2026-06-13 05:41:53,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:41:53,873.873 INFO    ] Initializing speech engine...
[2026-06-13 05:41:53,899.899 INFO    ] 2026-06-13 05:41:53
[2026-06-13 05:41:54,153.153 INFO    ] 2026-06-13 05:41:54
[2026-06-13 05:41:54,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:41:54,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:41:54,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:41:54,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:41:54,490.490 INFO    ] time= 13/06/2026 05:41:54
[2026-06-13 05:41:54,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:41:54,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:41:54,547.547 INFO    ] No existing commands found in stream
[2026-06-13 05:41:59,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:41:59,589.589 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 05:42:03,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:42:03,833.833 INFO    ] Checking for system updates...
[2026-06-13 05:42:03,853.853 INFO    ] 200
[2026-06-13 05:42:03,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:03,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:03,889.889 INFO    ] No update needed
[2026-06-13 05:42:03,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:03,910.910 INFO    ] 200
[2026-06-13 05:42:03,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:03,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:03,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:03,974.974 INFO    ] No camera update needed
[2026-06-13 05:42:03,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:03,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:03,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:03,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:42:06,031.031 INFO    ] ================================================
[2026-06-13 05:42:06,046.046 INFO    ] Launching Daemon at Sat Jun 13 05:42:06 IST 2026
[2026-06-13 05:42:06,057.057 INFO    ] ================================================
[2026-06-13 05:42:06,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:42:06
[2026-06-13 05:42:07,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:42:07,273.273 INFO    ] Initializing speech engine...
[2026-06-13 05:42:07,285.285 INFO    ] 2026-06-13 05:42:07
[2026-06-13 05:42:07,491.491 INFO    ] 2026-06-13 05:42:07
[2026-06-13 05:42:07,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:42:07,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:42:07,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:42:07,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:42:07,903.903 INFO    ] time= 13/06/2026 05:42:07
[2026-06-13 05:42:07,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:42:07,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:42:08,005.005 INFO    ] No existing commands found in stream
[2026-06-13 05:42:13,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:42:13,019.019 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 05:42:13,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:42:13,553.553 INFO    ] Checking for system updates...
[2026-06-13 05:42:13,574.574 INFO    ] 200
[2026-06-13 05:42:13,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:13,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:13,608.608 INFO    ] No update needed
[2026-06-13 05:42:13,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:13,629.629 INFO    ] 200
[2026-06-13 05:42:13,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:13,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:13,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:13,696.696 INFO    ] No camera update needed
[2026-06-13 05:42:13,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:13,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:13,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:13,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:42:15,746.746 INFO    ] ================================================
[2026-06-13 05:42:15,762.762 INFO    ] Launching Daemon at Sat Jun 13 05:42:15 IST 2026
[2026-06-13 05:42:15,773.773 INFO    ] ================================================
[2026-06-13 05:42:16,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:42:16
[2026-06-13 05:42:16,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:42:16,651.651 INFO    ] Initializing speech engine...
[2026-06-13 05:42:16,662.662 INFO    ] 2026-06-13 05:42:16
[2026-06-13 05:42:16,871.871 INFO    ] 2026-06-13 05:42:16
[2026-06-13 05:42:16,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:42:17,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:42:17,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:42:17,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:42:17,288.288 INFO    ] time= 13/06/2026 05:42:17
[2026-06-13 05:42:17,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:42:17,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:42:17,390.390 INFO    ] No existing commands found in stream
[2026-06-13 05:42:22,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:42:22,408.408 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 05:42:23,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:42:23,751.751 INFO    ] Checking for system updates...
[2026-06-13 05:42:23,774.774 INFO    ] 200
[2026-06-13 05:42:23,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:23,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:23,810.810 INFO    ] No update needed
[2026-06-13 05:42:23,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:23,833.833 INFO    ] 200
[2026-06-13 05:42:23,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:23,861.861 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:24,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:24,007.007 INFO    ] No camera update needed
[2026-06-13 05:42:24,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:24,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:24,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:24,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:42:26,056.056 INFO    ] ================================================
[2026-06-13 05:42:26,072.072 INFO    ] Launching Daemon at Sat Jun 13 05:42:26 IST 2026
[2026-06-13 05:42:26,083.083 INFO    ] ================================================
[2026-06-13 05:42:26,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:42:26
[2026-06-13 05:42:26,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:42:26,939.939 INFO    ] Initializing speech engine...
[2026-06-13 05:42:26,944.944 INFO    ] 2026-06-13 05:42:26
[2026-06-13 05:42:27,153.153 INFO    ] 2026-06-13 05:42:27
[2026-06-13 05:42:27,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:42:27,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:42:27,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:42:27,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:42:27,559.559 INFO    ] time= 13/06/2026 05:42:27
[2026-06-13 05:42:27,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:42:27,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:42:27,674.674 INFO    ] No existing commands found in stream
[2026-06-13 05:42:32,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:42:32,684.684 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 05:42:34,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:42:34,730.730 INFO    ] Checking for system updates...
[2026-06-13 05:42:34,767.767 INFO    ] 200
[2026-06-13 05:42:34,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:34,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:42:34,829.829 INFO    ] No update needed
[2026-06-13 05:42:34,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:34,871.871 INFO    ] 200
[2026-06-13 05:42:34,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:34,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:34,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:42:34,971.971 INFO    ] No camera update needed
[2026-06-13 05:42:34,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:34,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:34,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:34,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:42:37,023.023 INFO    ] ================================================
[2026-06-13 05:42:37,039.039 INFO    ] Launching Daemon at Sat Jun 13 05:42:37 IST 2026
[2026-06-13 05:42:37,049.049 INFO    ] ================================================
[2026-06-13 05:42:37,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:42:37
[2026-06-13 05:42:37,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:42:38,019.019 INFO    ] Initializing speech engine...
[2026-06-13 05:42:38,026.026 INFO    ] 2026-06-13 05:42:38
[2026-06-13 05:42:38,327.327 INFO    ] 2026-06-13 05:42:38
[2026-06-13 05:42:38,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:42:38,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:42:38,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:42:38,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:42:38,709.709 INFO    ] time= 13/06/2026 05:42:38
[2026-06-13 05:42:38,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:42:38,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:42:38,773.773 INFO    ] No existing commands found in stream
[2026-06-13 05:42:43,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:42:43,788.788 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 05:42:45,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:42:45,470.470 INFO    ] Checking for system updates...
[2026-06-13 05:42:45,492.492 INFO    ] 200
[2026-06-13 05:42:45,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:45,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:45,528.528 INFO    ] No update needed
[2026-06-13 05:42:45,529.529 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:45,549.549 INFO    ] 200
[2026-06-13 05:42:45,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:45,573.573 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:45,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:45,610.610 INFO    ] No camera update needed
[2026-06-13 05:42:45,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:45,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:45,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:45,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:42:47,659.659 INFO    ] ================================================
[2026-06-13 05:42:47,674.674 INFO    ] Launching Daemon at Sat Jun 13 05:42:47 IST 2026
[2026-06-13 05:42:47,685.685 INFO    ] ================================================
[2026-06-13 05:42:48,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:42:48
[2026-06-13 05:42:48,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:42:48,489.489 INFO    ] Initializing speech engine...
[2026-06-13 05:42:48,494.494 INFO    ] 2026-06-13 05:42:48
[2026-06-13 05:42:48,712.712 INFO    ] 2026-06-13 05:42:48
[2026-06-13 05:42:48,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:42:48,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:42:48,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:42:49,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:42:49,135.135 INFO    ] time= 13/06/2026 05:42:49
[2026-06-13 05:42:49,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:42:49,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:42:49,294.294 INFO    ] No existing commands found in stream
[2026-06-13 05:42:54,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:42:54,307.307 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 05:42:58,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:42:58,301.301 INFO    ] Checking for system updates...
[2026-06-13 05:42:58,322.322 INFO    ] 200
[2026-06-13 05:42:58,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:58,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:58,359.359 INFO    ] No update needed
[2026-06-13 05:42:58,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 05:42:58,382.382 INFO    ] 200
[2026-06-13 05:42:58,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:42:58,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:42:58,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:42:58,446.446 INFO    ] No camera update needed
[2026-06-13 05:42:58,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:42:58,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:42:58,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:42:58,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:00,495.495 INFO    ] ================================================
[2026-06-13 05:43:00,511.511 INFO    ] Launching Daemon at Sat Jun 13 05:43:00 IST 2026
[2026-06-13 05:43:00,522.522 INFO    ] ================================================
[2026-06-13 05:43:00,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:00
[2026-06-13 05:43:01,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:01,316.316 INFO    ] Initializing speech engine...
[2026-06-13 05:43:01,326.326 INFO    ] 2026-06-13 05:43:01
[2026-06-13 05:43:01,545.545 INFO    ] 2026-06-13 05:43:01
[2026-06-13 05:43:01,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:01,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:43:01,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:43:01,893.893 INFO    ] time= 13/06/2026 05:43:01
[2026-06-13 05:43:01,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:43:01,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:43:01,938.938 INFO    ] No existing commands found in stream
[2026-06-13 05:43:06,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:43:06,950.950 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 05:43:09,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:43:09,101.101 INFO    ] Checking for system updates...
[2026-06-13 05:43:09,122.122 INFO    ] 200
[2026-06-13 05:43:09,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:09,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:09,155.155 INFO    ] No update needed
[2026-06-13 05:43:09,157.157 INFO    ] Checking for camera pi updates...
[2026-06-13 05:43:09,176.176 INFO    ] 200
[2026-06-13 05:43:09,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:09,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:43:09,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:09,245.245 INFO    ] No camera update needed
[2026-06-13 05:43:09,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:43:09,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:43:09,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:43:09,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:11,294.294 INFO    ] ================================================
[2026-06-13 05:43:11,310.310 INFO    ] Launching Daemon at Sat Jun 13 05:43:11 IST 2026
[2026-06-13 05:43:11,321.321 INFO    ] ================================================
[2026-06-13 05:43:11,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:11
[2026-06-13 05:43:12,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:12,142.142 INFO    ] Initializing speech engine...
[2026-06-13 05:43:12,155.155 INFO    ] 2026-06-13 05:43:12
[2026-06-13 05:43:12,375.375 INFO    ] 2026-06-13 05:43:12
[2026-06-13 05:43:12,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:12,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:12,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:43:12,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:43:12,790.790 INFO    ] time= 13/06/2026 05:43:12
[2026-06-13 05:43:12,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:43:12,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:43:12,932.932 INFO    ] No existing commands found in stream
[2026-06-13 05:43:17,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:43:17,945.945 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 05:43:19,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:43:19,495.495 INFO    ] Checking for system updates...
[2026-06-13 05:43:19,517.517 INFO    ] 200
[2026-06-13 05:43:19,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:19,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:19,550.550 INFO    ] No update needed
[2026-06-13 05:43:19,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 05:43:19,571.571 INFO    ] 200
[2026-06-13 05:43:19,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:19,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:43:19,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:19,639.639 INFO    ] No camera update needed
[2026-06-13 05:43:19,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:43:19,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:43:19,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:43:19,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:21,686.686 INFO    ] ================================================
[2026-06-13 05:43:21,701.701 INFO    ] Launching Daemon at Sat Jun 13 05:43:21 IST 2026
[2026-06-13 05:43:21,712.712 INFO    ] ================================================
[2026-06-13 05:43:22,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:22
[2026-06-13 05:43:22,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:22,658.658 INFO    ] Initializing speech engine...
[2026-06-13 05:43:22,665.665 INFO    ] 2026-06-13 05:43:22
[2026-06-13 05:43:22,927.927 INFO    ] 2026-06-13 05:43:22
[2026-06-13 05:43:22,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:23,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:23,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:43:23,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:43:23,292.292 INFO    ] time= 13/06/2026 05:43:23
[2026-06-13 05:43:23,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:43:23,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:43:23,473.473 INFO    ] No existing commands found in stream
[2026-06-13 05:43:28,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:43:28,506.506 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 05:43:32,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:43:32,011.011 INFO    ] Checking for system updates...
[2026-06-13 05:43:32,034.034 INFO    ] 200
[2026-06-13 05:43:32,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:32,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:32,072.072 INFO    ] No update needed
[2026-06-13 05:43:32,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 05:43:32,098.098 INFO    ] 200
[2026-06-13 05:43:32,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:32,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:43:32,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:32,151.151 INFO    ] No camera update needed
[2026-06-13 05:43:32,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:43:32,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:43:32,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:43:32,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:34,193.193 INFO    ] ================================================
[2026-06-13 05:43:34,209.209 INFO    ] Launching Daemon at Sat Jun 13 05:43:34 IST 2026
[2026-06-13 05:43:34,221.221 INFO    ] ================================================
[2026-06-13 05:43:34,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:34
[2026-06-13 05:43:34,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:35,048.048 INFO    ] Initializing speech engine...
[2026-06-13 05:43:35,060.060 INFO    ] 2026-06-13 05:43:35
[2026-06-13 05:43:35,268.268 INFO    ] 2026-06-13 05:43:35
[2026-06-13 05:43:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:35,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:35,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:43:35,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:43:35,670.670 INFO    ] time= 13/06/2026 05:43:35
[2026-06-13 05:43:35,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:43:35,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:43:35,786.786 INFO    ] No existing commands found in stream
[2026-06-13 05:43:40,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:43:40,798.798 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 05:43:42,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:43:42,155.155 INFO    ] Checking for system updates...
[2026-06-13 05:43:42,177.177 INFO    ] 200
[2026-06-13 05:43:42,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:42,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:42,211.211 INFO    ] No update needed
[2026-06-13 05:43:42,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 05:43:42,232.232 INFO    ] 200
[2026-06-13 05:43:42,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:42,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:43:42,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:43:42,301.301 INFO    ] No camera update needed
[2026-06-13 05:43:42,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:43:42,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:43:42,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:43:42,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:44,351.351 INFO    ] ================================================
[2026-06-13 05:43:44,367.367 INFO    ] Launching Daemon at Sat Jun 13 05:43:44 IST 2026
[2026-06-13 05:43:44,378.378 INFO    ] ================================================
[2026-06-13 05:43:44,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:44
[2026-06-13 05:43:45,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:45,446.446 INFO    ] Initializing speech engine...
[2026-06-13 05:43:45,459.459 INFO    ] 2026-06-13 05:43:45
[2026-06-13 05:43:45,737.737 INFO    ] 2026-06-13 05:43:45
[2026-06-13 05:43:45,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:46,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:46,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:43:46,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:43:46,185.185 INFO    ] time= 13/06/2026 05:43:46
[2026-06-13 05:43:46,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:43:46,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:43:46,346.346 INFO    ] No existing commands found in stream
[2026-06-13 05:43:51,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:43:51,374.374 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 05:43:55,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:43:55,575.575 INFO    ] Checking for system updates...
[2026-06-13 05:43:55,596.596 INFO    ] 200
[2026-06-13 05:43:55,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:55,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:55,632.632 INFO    ] No update needed
[2026-06-13 05:43:55,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 05:43:55,653.653 INFO    ] 200
[2026-06-13 05:43:55,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:43:55,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:43:55,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:43:55,722.722 INFO    ] No camera update needed
[2026-06-13 05:43:55,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:43:55,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:43:55,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:43:55,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:43:57,777.777 INFO    ] ================================================
[2026-06-13 05:43:57,793.793 INFO    ] Launching Daemon at Sat Jun 13 05:43:57 IST 2026
[2026-06-13 05:43:57,804.804 INFO    ] ================================================
[2026-06-13 05:43:58,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:43:58
[2026-06-13 05:43:59,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:43:59,455.455 INFO    ] Initializing speech engine...
[2026-06-13 05:43:59,465.465 INFO    ] 2026-06-13 05:43:59
[2026-06-13 05:43:59,745.745 INFO    ] 2026-06-13 05:43:59
[2026-06-13 05:43:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:43:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:43:59,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:44:00,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:44:00,165.165 INFO    ] time= 13/06/2026 05:44:00
[2026-06-13 05:44:00,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:44:00,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:44:00,273.273 INFO    ] No existing commands found in stream
[2026-06-13 05:44:05,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:44:05,292.292 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 05:44:08,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:44:08,016.016 INFO    ] Checking for system updates...
[2026-06-13 05:44:08,037.037 INFO    ] 200
[2026-06-13 05:44:08,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:08,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:08,071.071 INFO    ] No update needed
[2026-06-13 05:44:08,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 05:44:08,092.092 INFO    ] 200
[2026-06-13 05:44:08,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:08,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:44:08,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:08,157.157 INFO    ] No camera update needed
[2026-06-13 05:44:08,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:44:08,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:44:08,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:44:08,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:44:10,206.206 INFO    ] ================================================
[2026-06-13 05:44:10,221.221 INFO    ] Launching Daemon at Sat Jun 13 05:44:10 IST 2026
[2026-06-13 05:44:10,232.232 INFO    ] ================================================
[2026-06-13 05:44:10,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:44:10
[2026-06-13 05:44:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:44:11,041.041 INFO    ] Initializing speech engine...
[2026-06-13 05:44:11,051.051 INFO    ] 2026-06-13 05:44:11
[2026-06-13 05:44:11,256.256 INFO    ] 2026-06-13 05:44:11
[2026-06-13 05:44:11,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:44:11,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:44:11,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:44:11,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:44:11,555.555 INFO    ] time= 13/06/2026 05:44:11
[2026-06-13 05:44:11,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:44:11,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:44:11,638.638 INFO    ] No existing commands found in stream
[2026-06-13 05:44:16,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:44:16,675.675 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 05:44:19,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:44:19,747.747 INFO    ] Checking for system updates...
[2026-06-13 05:44:19,768.768 INFO    ] 200
[2026-06-13 05:44:19,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:19,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:19,802.802 INFO    ] No update needed
[2026-06-13 05:44:19,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 05:44:19,823.823 INFO    ] 200
[2026-06-13 05:44:19,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:19,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:44:19,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:19,879.879 INFO    ] No camera update needed
[2026-06-13 05:44:19,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:44:19,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:44:19,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:44:19,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:44:21,928.928 INFO    ] ================================================
[2026-06-13 05:44:21,947.947 INFO    ] Launching Daemon at Sat Jun 13 05:44:21 IST 2026
[2026-06-13 05:44:21,958.958 INFO    ] ================================================
[2026-06-13 05:44:22,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:44:22
[2026-06-13 05:44:22,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:44:22,757.757 INFO    ] Initializing speech engine...
[2026-06-13 05:44:22,762.762 INFO    ] 2026-06-13 05:44:22
[2026-06-13 05:44:22,965.965 INFO    ] 2026-06-13 05:44:22
[2026-06-13 05:44:22,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:44:23,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:44:23,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:44:23,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:44:23,372.372 INFO    ] time= 13/06/2026 05:44:23
[2026-06-13 05:44:23,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:44:23,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:44:23,482.482 INFO    ] No existing commands found in stream
[2026-06-13 05:44:28,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:44:28,494.494 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 05:44:31,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:44:31,567.567 INFO    ] Checking for system updates...
[2026-06-13 05:44:31,590.590 INFO    ] 200
[2026-06-13 05:44:31,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:31,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:44:31,634.634 INFO    ] No update needed
[2026-06-13 05:44:31,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 05:44:31,658.658 INFO    ] 200
[2026-06-13 05:44:31,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:31,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:44:31,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:44:31,820.820 INFO    ] No camera update needed
[2026-06-13 05:44:31,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:44:31,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:44:31,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:44:31,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:44:33,870.870 INFO    ] ================================================
[2026-06-13 05:44:33,885.885 INFO    ] Launching Daemon at Sat Jun 13 05:44:33 IST 2026
[2026-06-13 05:44:33,895.895 INFO    ] ================================================
[2026-06-13 05:44:34,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:44:34
[2026-06-13 05:44:34,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:44:34,691.691 INFO    ] Initializing speech engine...
[2026-06-13 05:44:34,697.697 INFO    ] 2026-06-13 05:44:34
[2026-06-13 05:44:34,899.899 INFO    ] 2026-06-13 05:44:34
[2026-06-13 05:44:34,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:44:35,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:44:35,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:44:35,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:44:35,300.300 INFO    ] time= 13/06/2026 05:44:35
[2026-06-13 05:44:35,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:44:35,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:44:35,414.414 INFO    ] No existing commands found in stream
[2026-06-13 05:44:40,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:44:40,427.427 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 05:44:43,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:44:43,850.850 INFO    ] Checking for system updates...
[2026-06-13 05:44:43,871.871 INFO    ] 200
[2026-06-13 05:44:43,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:43,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:43,904.904 INFO    ] No update needed
[2026-06-13 05:44:43,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 05:44:43,925.925 INFO    ] 200
[2026-06-13 05:44:43,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:43,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:44:43,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:43,996.996 INFO    ] No camera update needed
[2026-06-13 05:44:43,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:44:43,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:44:44,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:44:44,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:44:46,047.047 INFO    ] ================================================
[2026-06-13 05:44:46,062.062 INFO    ] Launching Daemon at Sat Jun 13 05:44:46 IST 2026
[2026-06-13 05:44:46,073.073 INFO    ] ================================================
[2026-06-13 05:44:46,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:44:46
[2026-06-13 05:44:46,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:44:47,108.108 INFO    ] Initializing speech engine...
[2026-06-13 05:44:47,114.114 INFO    ] 2026-06-13 05:44:47
[2026-06-13 05:44:47,440.440 INFO    ] 2026-06-13 05:44:47
[2026-06-13 05:44:47,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:44:47,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:44:47,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:44:47,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:44:47,890.890 INFO    ] time= 13/06/2026 05:44:47
[2026-06-13 05:44:47,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:44:47,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:44:48,076.076 INFO    ] No existing commands found in stream
[2026-06-13 05:44:53,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:44:53,107.107 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 05:44:56,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:44:56,852.852 INFO    ] Checking for system updates...
[2026-06-13 05:44:56,892.892 INFO    ] 200
[2026-06-13 05:44:56,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:56,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:44:56,931.931 INFO    ] No update needed
[2026-06-13 05:44:56,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 05:44:56,951.951 INFO    ] 200
[2026-06-13 05:44:56,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:44:56,978.978 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:44:57,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:44:57,019.019 INFO    ] No camera update needed
[2026-06-13 05:44:57,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:44:57,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:44:57,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:44:57,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:44:59,066.066 INFO    ] ================================================
[2026-06-13 05:44:59,081.081 INFO    ] Launching Daemon at Sat Jun 13 05:44:59 IST 2026
[2026-06-13 05:44:59,092.092 INFO    ] ================================================
[2026-06-13 05:44:59,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:44:59
[2026-06-13 05:44:59,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:44:59,864.864 INFO    ] Initializing speech engine...
[2026-06-13 05:44:59,872.872 INFO    ] 2026-06-13 05:44:59
[2026-06-13 05:45:00,085.085 INFO    ] 2026-06-13 05:45:00
[2026-06-13 05:45:00,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:00,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:00,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:00,485.485 INFO    ] time= 13/06/2026 05:45:00
[2026-06-13 05:45:00,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:00,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:00,607.607 INFO    ] No existing commands found in stream
[2026-06-13 05:45:05,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:45:05,620.620 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 05:45:09,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:45:09,341.341 INFO    ] Checking for system updates...
[2026-06-13 05:45:09,363.363 INFO    ] 200
[2026-06-13 05:45:09,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:09,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:09,398.398 INFO    ] No update needed
[2026-06-13 05:45:09,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 05:45:09,420.420 INFO    ] 200
[2026-06-13 05:45:09,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:09,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:45:09,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:09,491.491 INFO    ] No camera update needed
[2026-06-13 05:45:09,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:45:09,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:45:09,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:45:09,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:45:11,546.546 INFO    ] ================================================
[2026-06-13 05:45:11,561.561 INFO    ] Launching Daemon at Sat Jun 13 05:45:11 IST 2026
[2026-06-13 05:45:11,572.572 INFO    ] ================================================
[2026-06-13 05:45:12,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:45:12
[2026-06-13 05:45:12,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:45:12,799.799 INFO    ] Initializing speech engine...
[2026-06-13 05:45:12,803.803 INFO    ] 2026-06-13 05:45:12
[2026-06-13 05:45:13,031.031 INFO    ] 2026-06-13 05:45:12
[2026-06-13 05:45:13,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:13,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:13,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:13,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:13,416.416 INFO    ] time= 13/06/2026 05:45:13
[2026-06-13 05:45:13,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:13,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:13,583.583 INFO    ] No existing commands found in stream
[2026-06-13 05:45:18,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:45:18,596.596 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 05:45:18,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:45:18,966.966 INFO    ] Checking for system updates...
[2026-06-13 05:45:18,988.988 INFO    ] 200
[2026-06-13 05:45:18,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:19,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:19,023.023 INFO    ] No update needed
[2026-06-13 05:45:19,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 05:45:19,044.044 INFO    ] 200
[2026-06-13 05:45:19,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:19,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:45:19,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:19,116.116 INFO    ] No camera update needed
[2026-06-13 05:45:19,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:45:19,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:45:19,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:45:19,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:45:21,164.164 INFO    ] ================================================
[2026-06-13 05:45:21,180.180 INFO    ] Launching Daemon at Sat Jun 13 05:45:21 IST 2026
[2026-06-13 05:45:21,191.191 INFO    ] ================================================
[2026-06-13 05:45:21,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:45:21
[2026-06-13 05:45:21,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:45:22,052.052 INFO    ] Initializing speech engine...
[2026-06-13 05:45:22,055.055 INFO    ] 2026-06-13 05:45:22
[2026-06-13 05:45:22,261.261 INFO    ] 2026-06-13 05:45:22
[2026-06-13 05:45:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:22,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:22,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:22,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:22,674.674 INFO    ] time= 13/06/2026 05:45:22
[2026-06-13 05:45:22,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:22,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:22,779.779 INFO    ] No existing commands found in stream
[2026-06-13 05:45:27,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:45:27,793.793 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 05:45:28,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:45:28,905.905 INFO    ] Checking for system updates...
[2026-06-13 05:45:28,926.926 INFO    ] 200
[2026-06-13 05:45:28,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:28,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:45:28,960.960 INFO    ] No update needed
[2026-06-13 05:45:28,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 05:45:28,982.982 INFO    ] 200
[2026-06-13 05:45:28,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:29,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:45:29,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:29,045.045 INFO    ] No camera update needed
[2026-06-13 05:45:29,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:45:29,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:45:29,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:45:29,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:45:31,092.092 INFO    ] ================================================
[2026-06-13 05:45:31,106.106 INFO    ] Launching Daemon at Sat Jun 13 05:45:31 IST 2026
[2026-06-13 05:45:31,117.117 INFO    ] ================================================
[2026-06-13 05:45:31,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:45:31
[2026-06-13 05:45:32,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:45:32,388.388 INFO    ] Initializing speech engine...
[2026-06-13 05:45:32,400.400 INFO    ] 2026-06-13 05:45:32
[2026-06-13 05:45:32,669.669 INFO    ] 2026-06-13 05:45:32
[2026-06-13 05:45:32,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:32,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:32,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:33,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:33,048.048 INFO    ] time= 13/06/2026 05:45:33
[2026-06-13 05:45:33,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:33,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:33,218.218 INFO    ] No existing commands found in stream
[2026-06-13 05:45:38,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:45:38,246.246 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 05:45:42,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:45:42,040.040 INFO    ] Checking for system updates...
[2026-06-13 05:45:42,063.063 INFO    ] 200
[2026-06-13 05:45:42,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:42,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:42,096.096 INFO    ] No update needed
[2026-06-13 05:45:42,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 05:45:42,118.118 INFO    ] 200
[2026-06-13 05:45:42,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:42,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:45:42,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:45:42,192.192 INFO    ] No camera update needed
[2026-06-13 05:45:42,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:45:42,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:45:42,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:45:42,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:45:44,239.239 INFO    ] ================================================
[2026-06-13 05:45:44,255.255 INFO    ] Launching Daemon at Sat Jun 13 05:45:44 IST 2026
[2026-06-13 05:45:44,267.267 INFO    ] ================================================
[2026-06-13 05:45:44,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:45:44
[2026-06-13 05:45:44,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:45:45,108.108 INFO    ] Initializing speech engine...
[2026-06-13 05:45:45,113.113 INFO    ] 2026-06-13 05:45:45
[2026-06-13 05:45:45,325.325 INFO    ] 2026-06-13 05:45:45
[2026-06-13 05:45:45,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:45,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:45,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:45,737.737 INFO    ] time= 13/06/2026 05:45:45
[2026-06-13 05:45:45,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:45,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:45,847.847 INFO    ] No existing commands found in stream
[2026-06-13 05:45:50,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:45:50,862.862 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 05:45:53,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:45:53,322.322 INFO    ] Checking for system updates...
[2026-06-13 05:45:53,345.345 INFO    ] 200
[2026-06-13 05:45:53,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:53,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:45:53,381.381 INFO    ] No update needed
[2026-06-13 05:45:53,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 05:45:53,402.402 INFO    ] 200
[2026-06-13 05:45:53,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:45:53,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:45:53,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:45:53,471.471 INFO    ] No camera update needed
[2026-06-13 05:45:53,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:45:53,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:45:53,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:45:53,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:45:55,520.520 INFO    ] ================================================
[2026-06-13 05:45:55,535.535 INFO    ] Launching Daemon at Sat Jun 13 05:45:55 IST 2026
[2026-06-13 05:45:55,546.546 INFO    ] ================================================
[2026-06-13 05:45:55,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:45:55
[2026-06-13 05:45:56,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:45:56,379.379 INFO    ] Initializing speech engine...
[2026-06-13 05:45:56,384.384 INFO    ] 2026-06-13 05:45:56
[2026-06-13 05:45:56,593.593 INFO    ] 2026-06-13 05:45:56
[2026-06-13 05:45:56,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:45:56,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:45:56,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:45:56,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:45:57,015.015 INFO    ] time= 13/06/2026 05:45:56
[2026-06-13 05:45:57,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:45:57,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:45:57,117.117 INFO    ] No existing commands found in stream
[2026-06-13 05:46:02,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:02,132.132 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 05:46:06,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:46:06,182.182 INFO    ] Checking for system updates...
[2026-06-13 05:46:06,205.205 INFO    ] 200
[2026-06-13 05:46:06,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:06,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:46:06,240.240 INFO    ] No update needed
[2026-06-13 05:46:06,241.241 INFO    ] Checking for camera pi updates...
[2026-06-13 05:46:06,261.261 INFO    ] 200
[2026-06-13 05:46:06,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:06,285.285 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:46:06,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:06,330.330 INFO    ] No camera update needed
[2026-06-13 05:46:06,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:46:06,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:46:06,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:46:06,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:46:08,377.377 INFO    ] ================================================
[2026-06-13 05:46:08,392.392 INFO    ] Launching Daemon at Sat Jun 13 05:46:08 IST 2026
[2026-06-13 05:46:08,404.404 INFO    ] ================================================
[2026-06-13 05:46:08,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:46:08
[2026-06-13 05:46:09,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:46:09,172.172 INFO    ] Initializing speech engine...
[2026-06-13 05:46:09,180.180 INFO    ] 2026-06-13 05:46:09
[2026-06-13 05:46:09,391.391 INFO    ] 2026-06-13 05:46:09
[2026-06-13 05:46:09,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:46:09,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:46:09,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:46:09,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:46:09,791.791 INFO    ] time= 13/06/2026 05:46:09
[2026-06-13 05:46:09,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:46:09,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:46:09,906.906 INFO    ] No existing commands found in stream
[2026-06-13 05:46:14,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:14,919.919 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 05:46:16,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:46:16,144.144 INFO    ] Checking for system updates...
[2026-06-13 05:46:16,165.165 INFO    ] 200
[2026-06-13 05:46:16,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:16,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:46:16,202.202 INFO    ] No update needed
[2026-06-13 05:46:16,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 05:46:16,226.226 INFO    ] 200
[2026-06-13 05:46:16,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:16,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:46:16,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:46:16,301.301 INFO    ] No camera update needed
[2026-06-13 05:46:16,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:46:16,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:46:16,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:46:16,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:46:18,350.350 INFO    ] ================================================
[2026-06-13 05:46:18,365.365 INFO    ] Launching Daemon at Sat Jun 13 05:46:18 IST 2026
[2026-06-13 05:46:18,376.376 INFO    ] ================================================
[2026-06-13 05:46:18,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:46:18
[2026-06-13 05:46:19,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:46:19,242.242 INFO    ] Initializing speech engine...
[2026-06-13 05:46:19,247.247 INFO    ] 2026-06-13 05:46:19
[2026-06-13 05:46:19,454.454 INFO    ] 2026-06-13 05:46:19
[2026-06-13 05:46:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:46:19,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:46:19,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:46:19,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:46:19,856.856 INFO    ] time= 13/06/2026 05:46:19
[2026-06-13 05:46:19,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:46:19,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:46:19,970.970 INFO    ] No existing commands found in stream
[2026-06-13 05:46:24,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:24,984.984 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 05:46:26,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:46:26,567.567 INFO    ] Checking for system updates...
[2026-06-13 05:46:26,588.588 INFO    ] 200
[2026-06-13 05:46:26,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:26,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:26,622.622 INFO    ] No update needed
[2026-06-13 05:46:26,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 05:46:26,643.643 INFO    ] 200
[2026-06-13 05:46:26,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:26,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:46:26,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:26,709.709 INFO    ] No camera update needed
[2026-06-13 05:46:26,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:46:26,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:46:26,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:46:26,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:46:28,757.757 INFO    ] ================================================
[2026-06-13 05:46:28,773.773 INFO    ] Launching Daemon at Sat Jun 13 05:46:28 IST 2026
[2026-06-13 05:46:28,785.785 INFO    ] ================================================
[2026-06-13 05:46:29,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:46:29
[2026-06-13 05:46:29,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:46:29,635.635 INFO    ] Initializing speech engine...
[2026-06-13 05:46:29,640.640 INFO    ] 2026-06-13 05:46:29
[2026-06-13 05:46:29,849.849 INFO    ] 2026-06-13 05:46:29
[2026-06-13 05:46:29,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:46:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:46:30,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:46:30,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:46:30,271.271 INFO    ] time= 13/06/2026 05:46:30
[2026-06-13 05:46:30,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:46:30,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:46:30,373.373 INFO    ] No existing commands found in stream
[2026-06-13 05:46:35,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:35,387.387 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 05:46:37,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:46:37,237.237 INFO    ] Checking for system updates...
[2026-06-13 05:46:37,259.259 INFO    ] 200
[2026-06-13 05:46:37,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:37,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:37,292.292 INFO    ] No update needed
[2026-06-13 05:46:37,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 05:46:37,314.314 INFO    ] 200
[2026-06-13 05:46:37,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:37,339.339 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:46:37,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:37,487.487 INFO    ] No camera update needed
[2026-06-13 05:46:37,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:46:37,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:46:37,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:46:37,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:46:39,535.535 INFO    ] ================================================
[2026-06-13 05:46:39,551.551 INFO    ] Launching Daemon at Sat Jun 13 05:46:39 IST 2026
[2026-06-13 05:46:39,561.561 INFO    ] ================================================
[2026-06-13 05:46:39,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:46:39
[2026-06-13 05:46:40,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:46:40,361.361 INFO    ] Initializing speech engine...
[2026-06-13 05:46:40,367.367 INFO    ] 2026-06-13 05:46:40
[2026-06-13 05:46:40,570.570 INFO    ] 2026-06-13 05:46:40
[2026-06-13 05:46:40,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:46:40,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:46:40,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:46:40,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:46:40,967.967 INFO    ] time= 13/06/2026 05:46:40
[2026-06-13 05:46:41,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:46:41,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:46:41,122.122 INFO    ] No existing commands found in stream
[2026-06-13 05:46:46,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:46,135.135 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 05:46:50,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:46:50,355.355 INFO    ] Checking for system updates...
[2026-06-13 05:46:50,376.376 INFO    ] 200
[2026-06-13 05:46:50,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:50,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:50,410.410 INFO    ] No update needed
[2026-06-13 05:46:50,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 05:46:50,430.430 INFO    ] 200
[2026-06-13 05:46:50,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:46:50,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:46:50,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:46:50,497.497 INFO    ] No camera update needed
[2026-06-13 05:46:50,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:46:50,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:46:50,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:46:50,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:46:52,545.545 INFO    ] ================================================
[2026-06-13 05:46:52,560.560 INFO    ] Launching Daemon at Sat Jun 13 05:46:52 IST 2026
[2026-06-13 05:46:52,571.571 INFO    ] ================================================
[2026-06-13 05:46:52,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:46:52
[2026-06-13 05:46:53,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:46:53,371.371 INFO    ] Initializing speech engine...
[2026-06-13 05:46:53,382.382 INFO    ] 2026-06-13 05:46:53
[2026-06-13 05:46:53,597.597 INFO    ] 2026-06-13 05:46:53
[2026-06-13 05:46:53,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:46:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:46:53,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:46:53,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:46:53,994.994 INFO    ] time= 13/06/2026 05:46:53
[2026-06-13 05:46:54,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:46:54,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:46:54,152.152 INFO    ] No existing commands found in stream
[2026-06-13 05:46:59,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:46:59,164.164 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 05:46:59,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:46:59,991.991 INFO    ] Checking for system updates...
[2026-06-13 05:47:00,012.012 INFO    ] 200
[2026-06-13 05:47:00,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:00,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:47:00,045.045 INFO    ] No update needed
[2026-06-13 05:47:00,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:00,067.067 INFO    ] 200
[2026-06-13 05:47:00,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:00,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:00,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:47:00,131.131 INFO    ] No camera update needed
[2026-06-13 05:47:00,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:00,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:00,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:00,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:47:02,183.183 INFO    ] ================================================
[2026-06-13 05:47:02,214.214 INFO    ] Launching Daemon at Sat Jun 13 05:47:02 IST 2026
[2026-06-13 05:47:02,230.230 INFO    ] ================================================
[2026-06-13 05:47:02,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:47:02
[2026-06-13 05:47:03,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:47:03,891.891 INFO    ] Initializing speech engine...
[2026-06-13 05:47:03,900.900 INFO    ] 2026-06-13 05:47:03
[2026-06-13 05:47:04,183.183 INFO    ] 2026-06-13 05:47:04
[2026-06-13 05:47:04,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:47:04,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:47:04,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:47:04,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:47:04,618.618 INFO    ] time= 13/06/2026 05:47:04
[2026-06-13 05:47:04,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:47:04,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:47:04,784.784 INFO    ] No existing commands found in stream
[2026-06-13 05:47:09,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:47:09,800.800 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 05:47:12,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:47:12,579.579 INFO    ] Checking for system updates...
[2026-06-13 05:47:12,600.600 INFO    ] 200
[2026-06-13 05:47:12,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:12,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:12,634.634 INFO    ] No update needed
[2026-06-13 05:47:12,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:12,655.655 INFO    ] 200
[2026-06-13 05:47:12,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:12,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:12,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:12,724.724 INFO    ] No camera update needed
[2026-06-13 05:47:12,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:12,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:12,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:12,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:47:14,771.771 INFO    ] ================================================
[2026-06-13 05:47:14,786.786 INFO    ] Launching Daemon at Sat Jun 13 05:47:14 IST 2026
[2026-06-13 05:47:14,797.797 INFO    ] ================================================
[2026-06-13 05:47:15,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:47:15
[2026-06-13 05:47:15,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:47:15,602.602 INFO    ] Initializing speech engine...
[2026-06-13 05:47:15,606.606 INFO    ] 2026-06-13 05:47:15
[2026-06-13 05:47:15,835.835 INFO    ] 2026-06-13 05:47:15
[2026-06-13 05:47:15,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:47:15,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:47:16,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:47:16,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:47:16,254.254 INFO    ] time= 13/06/2026 05:47:16
[2026-06-13 05:47:16,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:47:16,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:47:16,387.387 INFO    ] No existing commands found in stream
[2026-06-13 05:47:21,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:47:21,401.401 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 05:47:24,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:47:24,406.406 INFO    ] Checking for system updates...
[2026-06-13 05:47:24,430.430 INFO    ] 200
[2026-06-13 05:47:24,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:24,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:47:24,466.466 INFO    ] No update needed
[2026-06-13 05:47:24,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:24,488.488 INFO    ] 200
[2026-06-13 05:47:24,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:24,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:24,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:47:24,565.565 INFO    ] No camera update needed
[2026-06-13 05:47:24,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:24,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:24,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:24,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:47:26,615.615 INFO    ] ================================================
[2026-06-13 05:47:26,630.630 INFO    ] Launching Daemon at Sat Jun 13 05:47:26 IST 2026
[2026-06-13 05:47:26,640.640 INFO    ] ================================================
[2026-06-13 05:47:27,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:47:27
[2026-06-13 05:47:27,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:47:27,500.500 INFO    ] Initializing speech engine...
[2026-06-13 05:47:27,506.506 INFO    ] 2026-06-13 05:47:27
[2026-06-13 05:47:27,713.713 INFO    ] 2026-06-13 05:47:27
[2026-06-13 05:47:27,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:47:27,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:47:27,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:47:28,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:47:28,126.126 INFO    ] time= 13/06/2026 05:47:28
[2026-06-13 05:47:28,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:47:28,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:47:28,241.241 INFO    ] No existing commands found in stream
[2026-06-13 05:47:33,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:47:33,256.256 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 05:47:37,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:47:37,531.531 INFO    ] Checking for system updates...
[2026-06-13 05:47:37,551.551 INFO    ] 200
[2026-06-13 05:47:37,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:37,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:37,585.585 INFO    ] No update needed
[2026-06-13 05:47:37,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:37,606.606 INFO    ] 200
[2026-06-13 05:47:37,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:37,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:37,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:37,672.672 INFO    ] No camera update needed
[2026-06-13 05:47:37,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:37,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:37,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:37,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:47:39,720.720 INFO    ] ================================================
[2026-06-13 05:47:39,735.735 INFO    ] Launching Daemon at Sat Jun 13 05:47:39 IST 2026
[2026-06-13 05:47:39,745.745 INFO    ] ================================================
[2026-06-13 05:47:40,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:47:40
[2026-06-13 05:47:40,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:47:40,534.534 INFO    ] Initializing speech engine...
[2026-06-13 05:47:40,541.541 INFO    ] 2026-06-13 05:47:40
[2026-06-13 05:47:40,770.770 INFO    ] 2026-06-13 05:47:40
[2026-06-13 05:47:40,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:47:40,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:47:41,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:47:41,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:47:41,226.226 INFO    ] time= 13/06/2026 05:47:41
[2026-06-13 05:47:41,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:47:41,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:47:41,457.457 INFO    ] No existing commands found in stream
[2026-06-13 05:47:46,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:47:46,480.480 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 05:47:48,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:47:48,999.999 INFO    ] Checking for system updates...
[2026-06-13 05:47:49,020.020 INFO    ] 200
[2026-06-13 05:47:49,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:49,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:49,054.054 INFO    ] No update needed
[2026-06-13 05:47:49,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:49,077.077 INFO    ] 200
[2026-06-13 05:47:49,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:49,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:49,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:49,149.149 INFO    ] No camera update needed
[2026-06-13 05:47:49,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:49,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:49,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:49,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:47:51,197.197 INFO    ] ================================================
[2026-06-13 05:47:51,219.219 INFO    ] Launching Daemon at Sat Jun 13 05:47:51 IST 2026
[2026-06-13 05:47:51,230.230 INFO    ] ================================================
[2026-06-13 05:47:51,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:47:51
[2026-06-13 05:47:51,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:47:52,035.035 INFO    ] Initializing speech engine...
[2026-06-13 05:47:52,045.045 INFO    ] 2026-06-13 05:47:52
[2026-06-13 05:47:52,259.259 INFO    ] 2026-06-13 05:47:52
[2026-06-13 05:47:52,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:47:52,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:47:52,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:47:52,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:47:52,654.654 INFO    ] time= 13/06/2026 05:47:52
[2026-06-13 05:47:52,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:47:52,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:47:52,817.817 INFO    ] No existing commands found in stream
[2026-06-13 05:47:57,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:47:57,847.847 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 05:47:59,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:47:59,831.831 INFO    ] Checking for system updates...
[2026-06-13 05:47:59,852.852 INFO    ] 200
[2026-06-13 05:47:59,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:59,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:59,889.889 INFO    ] No update needed
[2026-06-13 05:47:59,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 05:47:59,910.910 INFO    ] 200
[2026-06-13 05:47:59,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:47:59,934.934 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:47:59,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:47:59,977.977 INFO    ] No camera update needed
[2026-06-13 05:47:59,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:47:59,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:47:59,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:47:59,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:02,029.029 INFO    ] ================================================
[2026-06-13 05:48:02,060.060 INFO    ] Launching Daemon at Sat Jun 13 05:48:02 IST 2026
[2026-06-13 05:48:02,071.071 INFO    ] ================================================
[2026-06-13 05:48:02,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:02
[2026-06-13 05:48:02,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:02,983.983 INFO    ] Initializing speech engine...
[2026-06-13 05:48:02,995.995 INFO    ] 2026-06-13 05:48:02
[2026-06-13 05:48:03,208.208 INFO    ] 2026-06-13 05:48:03
[2026-06-13 05:48:03,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:03,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:03,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:03,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:03,455.455 INFO    ] time= 13/06/2026 05:48:03
[2026-06-13 05:48:03,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:03,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:03,558.558 INFO    ] No existing commands found in stream
[2026-06-13 05:48:08,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:48:08,577.577 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 05:48:09,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:48:09,970.970 INFO    ] Checking for system updates...
[2026-06-13 05:48:09,991.991 INFO    ] 200
[2026-06-13 05:48:09,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:10,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:48:10,024.024 INFO    ] No update needed
[2026-06-13 05:48:10,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 05:48:10,046.046 INFO    ] 200
[2026-06-13 05:48:10,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:10,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:48:10,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:48:10,119.119 INFO    ] No camera update needed
[2026-06-13 05:48:10,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:48:10,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:48:10,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:48:10,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:12,166.166 INFO    ] ================================================
[2026-06-13 05:48:12,181.181 INFO    ] Launching Daemon at Sat Jun 13 05:48:12 IST 2026
[2026-06-13 05:48:12,191.191 INFO    ] ================================================
[2026-06-13 05:48:12,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:12
[2026-06-13 05:48:12,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:13,003.003 INFO    ] Initializing speech engine...
[2026-06-13 05:48:13,013.013 INFO    ] 2026-06-13 05:48:13
[2026-06-13 05:48:13,216.216 INFO    ] 2026-06-13 05:48:13
[2026-06-13 05:48:13,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:13,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:13,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:13,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:13,615.615 INFO    ] time= 13/06/2026 05:48:13
[2026-06-13 05:48:13,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:13,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:13,730.730 INFO    ] No existing commands found in stream
[2026-06-13 05:48:18,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:48:18,742.742 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 05:48:20,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:48:20,302.302 INFO    ] Checking for system updates...
[2026-06-13 05:48:20,324.324 INFO    ] 200
[2026-06-13 05:48:20,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:20,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:48:20,357.357 INFO    ] No update needed
[2026-06-13 05:48:20,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 05:48:20,381.381 INFO    ] 200
[2026-06-13 05:48:20,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:20,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:48:20,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:48:20,447.447 INFO    ] No camera update needed
[2026-06-13 05:48:20,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:48:20,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:48:20,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:48:20,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:22,495.495 INFO    ] ================================================
[2026-06-13 05:48:22,511.511 INFO    ] Launching Daemon at Sat Jun 13 05:48:22 IST 2026
[2026-06-13 05:48:22,521.521 INFO    ] ================================================
[2026-06-13 05:48:22,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:22
[2026-06-13 05:48:23,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:23,337.337 INFO    ] Initializing speech engine...
[2026-06-13 05:48:23,349.349 INFO    ] 2026-06-13 05:48:23
[2026-06-13 05:48:23,564.564 INFO    ] 2026-06-13 05:48:23
[2026-06-13 05:48:23,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:23,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:23,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:23,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:23,981.981 INFO    ] time= 13/06/2026 05:48:23
[2026-06-13 05:48:24,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:24,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:24,110.110 INFO    ] No existing commands found in stream
[2026-06-13 05:48:29,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:48:29,123.123 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 05:48:31,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:48:31,676.676 INFO    ] Checking for system updates...
[2026-06-13 05:48:31,698.698 INFO    ] 200
[2026-06-13 05:48:31,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:31,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:48:31,733.733 INFO    ] No update needed
[2026-06-13 05:48:31,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 05:48:31,753.753 INFO    ] 200
[2026-06-13 05:48:31,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:31,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:48:31,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:48:31,823.823 INFO    ] No camera update needed
[2026-06-13 05:48:31,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:48:31,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:48:31,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:48:31,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:33,863.863 INFO    ] ================================================
[2026-06-13 05:48:33,878.878 INFO    ] Launching Daemon at Sat Jun 13 05:48:33 IST 2026
[2026-06-13 05:48:33,888.888 INFO    ] ================================================
[2026-06-13 05:48:34,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:34
[2026-06-13 05:48:34,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:34,707.707 INFO    ] Initializing speech engine...
[2026-06-13 05:48:34,712.712 INFO    ] 2026-06-13 05:48:34
[2026-06-13 05:48:34,919.919 INFO    ] 2026-06-13 05:48:34
[2026-06-13 05:48:34,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:35,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:35,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:35,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:35,329.329 INFO    ] time= 13/06/2026 05:48:35
[2026-06-13 05:48:35,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:35,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:35,433.433 INFO    ] No existing commands found in stream
[2026-06-13 05:48:40,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:48:40,447.447 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 05:48:43,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:48:43,131.131 INFO    ] Checking for system updates...
[2026-06-13 05:48:43,152.152 INFO    ] 200
[2026-06-13 05:48:43,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:43,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:48:43,185.185 INFO    ] No update needed
[2026-06-13 05:48:43,187.187 INFO    ] Checking for camera pi updates...
[2026-06-13 05:48:43,206.206 INFO    ] 200
[2026-06-13 05:48:43,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:43,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:48:43,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:48:43,374.374 INFO    ] No camera update needed
[2026-06-13 05:48:43,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:48:43,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:48:43,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:48:43,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:45,421.421 INFO    ] ================================================
[2026-06-13 05:48:45,436.436 INFO    ] Launching Daemon at Sat Jun 13 05:48:45 IST 2026
[2026-06-13 05:48:45,447.447 INFO    ] ================================================
[2026-06-13 05:48:45,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:45
[2026-06-13 05:48:46,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:46,313.313 INFO    ] Initializing speech engine...
[2026-06-13 05:48:46,324.324 INFO    ] 2026-06-13 05:48:46
[2026-06-13 05:48:46,535.535 INFO    ] 2026-06-13 05:48:46
[2026-06-13 05:48:46,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:46,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:46,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:46,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:46,946.946 INFO    ] time= 13/06/2026 05:48:46
[2026-06-13 05:48:46,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:46,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:47,067.067 INFO    ] No existing commands found in stream
[2026-06-13 05:48:52,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:48:52,077.077 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 05:48:53,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:48:53,580.580 INFO    ] Checking for system updates...
[2026-06-13 05:48:53,602.602 INFO    ] 200
[2026-06-13 05:48:53,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:53,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:48:53,638.638 INFO    ] No update needed
[2026-06-13 05:48:53,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 05:48:53,660.660 INFO    ] 200
[2026-06-13 05:48:53,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:48:53,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:48:53,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:48:53,722.722 INFO    ] No camera update needed
[2026-06-13 05:48:53,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:48:53,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:48:53,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:48:53,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:48:55,771.771 INFO    ] ================================================
[2026-06-13 05:48:55,786.786 INFO    ] Launching Daemon at Sat Jun 13 05:48:55 IST 2026
[2026-06-13 05:48:55,797.797 INFO    ] ================================================
[2026-06-13 05:48:56,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:48:56
[2026-06-13 05:48:56,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:48:56,600.600 INFO    ] Initializing speech engine...
[2026-06-13 05:48:56,609.609 INFO    ] 2026-06-13 05:48:56
[2026-06-13 05:48:56,832.832 INFO    ] 2026-06-13 05:48:56
[2026-06-13 05:48:56,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:48:57,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:48:57,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:48:57,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:48:57,251.251 INFO    ] time= 13/06/2026 05:48:57
[2026-06-13 05:48:57,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:48:57,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:48:57,381.381 INFO    ] No existing commands found in stream
[2026-06-13 05:49:02,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:02,392.392 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 05:49:03,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:49:03,066.066 INFO    ] Checking for system updates...
[2026-06-13 05:49:03,088.088 INFO    ] 200
[2026-06-13 05:49:03,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:03,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:03,121.121 INFO    ] No update needed
[2026-06-13 05:49:03,123.123 INFO    ] Checking for camera pi updates...
[2026-06-13 05:49:03,144.144 INFO    ] 200
[2026-06-13 05:49:03,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:03,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:49:03,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:03,199.199 INFO    ] No camera update needed
[2026-06-13 05:49:03,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:49:03,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:49:03,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:49:03,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:49:05,247.247 INFO    ] ================================================
[2026-06-13 05:49:05,262.262 INFO    ] Launching Daemon at Sat Jun 13 05:49:05 IST 2026
[2026-06-13 05:49:05,278.278 INFO    ] ================================================
[2026-06-13 05:49:05,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:49:05
[2026-06-13 05:49:05,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:49:06,120.120 INFO    ] Initializing speech engine...
[2026-06-13 05:49:06,126.126 INFO    ] 2026-06-13 05:49:06
[2026-06-13 05:49:06,313.313 INFO    ] 2026-06-13 05:49:06
[2026-06-13 05:49:06,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:49:06,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:49:06,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:49:06,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:49:06,778.778 INFO    ] time= 13/06/2026 05:49:06
[2026-06-13 05:49:06,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:49:06,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:49:06,911.911 INFO    ] No existing commands found in stream
[2026-06-13 05:49:11,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:11,925.925 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 05:49:14,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:49:14,329.329 INFO    ] Checking for system updates...
[2026-06-13 05:49:14,351.351 INFO    ] 200
[2026-06-13 05:49:14,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:14,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:49:14,385.385 INFO    ] No update needed
[2026-06-13 05:49:14,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 05:49:14,409.409 INFO    ] 200
[2026-06-13 05:49:14,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:14,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:49:14,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:49:14,471.471 INFO    ] No camera update needed
[2026-06-13 05:49:14,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:49:14,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:49:14,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:49:14,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:49:16,518.518 INFO    ] ================================================
[2026-06-13 05:49:16,534.534 INFO    ] Launching Daemon at Sat Jun 13 05:49:16 IST 2026
[2026-06-13 05:49:16,544.544 INFO    ] ================================================
[2026-06-13 05:49:16,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:49:16
[2026-06-13 05:49:17,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:49:17,355.355 INFO    ] Initializing speech engine...
[2026-06-13 05:49:17,365.365 INFO    ] 2026-06-13 05:49:17
[2026-06-13 05:49:17,570.570 INFO    ] 2026-06-13 05:49:17
[2026-06-13 05:49:17,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:49:17,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:49:17,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:49:17,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:49:17,989.989 INFO    ] time= 13/06/2026 05:49:17
[2026-06-13 05:49:18,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:49:18,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:49:18,096.096 INFO    ] No existing commands found in stream
[2026-06-13 05:49:23,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:23,108.108 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 05:49:26,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:49:26,653.653 INFO    ] Checking for system updates...
[2026-06-13 05:49:26,674.674 INFO    ] 200
[2026-06-13 05:49:26,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:26,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:49:26,707.707 INFO    ] No update needed
[2026-06-13 05:49:26,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 05:49:26,728.728 INFO    ] 200
[2026-06-13 05:49:26,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:26,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:49:26,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:49:26,791.791 INFO    ] No camera update needed
[2026-06-13 05:49:26,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:49:26,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:49:26,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:49:26,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:49:28,837.837 INFO    ] ================================================
[2026-06-13 05:49:28,852.852 INFO    ] Launching Daemon at Sat Jun 13 05:49:28 IST 2026
[2026-06-13 05:49:28,863.863 INFO    ] ================================================
[2026-06-13 05:49:29,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:49:29
[2026-06-13 05:49:29,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:49:29,653.653 INFO    ] Initializing speech engine...
[2026-06-13 05:49:29,663.663 INFO    ] 2026-06-13 05:49:29
[2026-06-13 05:49:29,867.867 INFO    ] 2026-06-13 05:49:29
[2026-06-13 05:49:29,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:49:30,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:49:30,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:49:30,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:49:30,266.266 INFO    ] time= 13/06/2026 05:49:30
[2026-06-13 05:49:30,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:49:30,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:49:30,380.380 INFO    ] No existing commands found in stream
[2026-06-13 05:49:35,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:35,392.392 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 05:49:37,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:49:37,110.110 INFO    ] Checking for system updates...
[2026-06-13 05:49:37,132.132 INFO    ] 200
[2026-06-13 05:49:37,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:37,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:37,167.167 INFO    ] No update needed
[2026-06-13 05:49:37,168.168 INFO    ] Checking for camera pi updates...
[2026-06-13 05:49:37,188.188 INFO    ] 200
[2026-06-13 05:49:37,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:37,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:49:37,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:37,261.261 INFO    ] No camera update needed
[2026-06-13 05:49:37,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:49:37,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:49:37,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:49:37,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:49:39,311.311 INFO    ] ================================================
[2026-06-13 05:49:39,327.327 INFO    ] Launching Daemon at Sat Jun 13 05:49:39 IST 2026
[2026-06-13 05:49:39,338.338 INFO    ] ================================================
[2026-06-13 05:49:39,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:49:39
[2026-06-13 05:49:40,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:49:40,169.169 INFO    ] Initializing speech engine...
[2026-06-13 05:49:40,175.175 INFO    ] 2026-06-13 05:49:40
[2026-06-13 05:49:40,383.383 INFO    ] 2026-06-13 05:49:40
[2026-06-13 05:49:40,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:49:40,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:49:40,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:49:40,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:49:40,790.790 INFO    ] time= 13/06/2026 05:49:40
[2026-06-13 05:49:40,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:49:40,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:49:40,906.906 INFO    ] No existing commands found in stream
[2026-06-13 05:49:45,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:45,934.934 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 05:49:49,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:49:49,293.293 INFO    ] Checking for system updates...
[2026-06-13 05:49:49,314.314 INFO    ] 200
[2026-06-13 05:49:49,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:49,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:49,350.350 INFO    ] No update needed
[2026-06-13 05:49:49,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 05:49:49,373.373 INFO    ] 200
[2026-06-13 05:49:49,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:49:49,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:49:49,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:49:49,440.440 INFO    ] No camera update needed
[2026-06-13 05:49:49,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:49:49,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:49:49,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:49:49,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:49:51,491.491 INFO    ] ================================================
[2026-06-13 05:49:51,507.507 INFO    ] Launching Daemon at Sat Jun 13 05:49:51 IST 2026
[2026-06-13 05:49:51,517.517 INFO    ] ================================================
[2026-06-13 05:49:51,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:49:51
[2026-06-13 05:49:52,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:49:52,377.377 INFO    ] Initializing speech engine...
[2026-06-13 05:49:52,382.382 INFO    ] 2026-06-13 05:49:52
[2026-06-13 05:49:52,587.587 INFO    ] 2026-06-13 05:49:52
[2026-06-13 05:49:52,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:49:52,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:49:52,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:49:52,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:49:52,998.998 INFO    ] time= 13/06/2026 05:49:52
[2026-06-13 05:49:53,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:49:53,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:49:53,102.102 INFO    ] No existing commands found in stream
[2026-06-13 05:49:58,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:49:58,116.116 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 05:50:00,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:50:00,679.679 INFO    ] Checking for system updates...
[2026-06-13 05:50:00,701.701 INFO    ] 200
[2026-06-13 05:50:00,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:00,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:00,734.734 INFO    ] No update needed
[2026-06-13 05:50:00,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:00,755.755 INFO    ] 200
[2026-06-13 05:50:00,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:00,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:00,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:00,822.822 INFO    ] No camera update needed
[2026-06-13 05:50:00,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:00,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:00,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:00,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:02,886.886 INFO    ] ================================================
[2026-06-13 05:50:02,909.909 INFO    ] Launching Daemon at Sat Jun 13 05:50:02 IST 2026
[2026-06-13 05:50:02,927.927 INFO    ] ================================================
[2026-06-13 05:50:03,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:03
[2026-06-13 05:50:04,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:04,437.437 INFO    ] Initializing speech engine...
[2026-06-13 05:50:04,451.451 INFO    ] 2026-06-13 05:50:04
[2026-06-13 05:50:04,706.706 INFO    ] 2026-06-13 05:50:04
[2026-06-13 05:50:04,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:04,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:05,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:05,078.078 INFO    ] time= 13/06/2026 05:50:05
[2026-06-13 05:50:05,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:05,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:05,194.194 INFO    ] No existing commands found in stream
[2026-06-13 05:50:10,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:50:10,232.232 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 05:50:11,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:50:11,200.200 INFO    ] Checking for system updates...
[2026-06-13 05:50:11,221.221 INFO    ] 200
[2026-06-13 05:50:11,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:11,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:11,256.256 INFO    ] No update needed
[2026-06-13 05:50:11,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:11,278.278 INFO    ] 200
[2026-06-13 05:50:11,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:11,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:11,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:11,333.333 INFO    ] No camera update needed
[2026-06-13 05:50:11,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:11,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:11,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:11,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:13,380.380 INFO    ] ================================================
[2026-06-13 05:50:13,395.395 INFO    ] Launching Daemon at Sat Jun 13 05:50:13 IST 2026
[2026-06-13 05:50:13,406.406 INFO    ] ================================================
[2026-06-13 05:50:13,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:13
[2026-06-13 05:50:14,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:14,229.229 INFO    ] Initializing speech engine...
[2026-06-13 05:50:14,242.242 INFO    ] 2026-06-13 05:50:14
[2026-06-13 05:50:14,457.457 INFO    ] 2026-06-13 05:50:14
[2026-06-13 05:50:14,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:14,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:14,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:14,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:14,888.888 INFO    ] time= 13/06/2026 05:50:14
[2026-06-13 05:50:14,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:14,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:15,001.001 INFO    ] No existing commands found in stream
[2026-06-13 05:50:20,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:50:20,013.013 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 05:50:21,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:50:21,240.240 INFO    ] Checking for system updates...
[2026-06-13 05:50:21,276.276 INFO    ] 200
[2026-06-13 05:50:21,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:21,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:21,315.315 INFO    ] No update needed
[2026-06-13 05:50:21,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:21,337.337 INFO    ] 200
[2026-06-13 05:50:21,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:21,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:21,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:21,402.402 INFO    ] No camera update needed
[2026-06-13 05:50:21,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:21,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:21,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:21,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:23,449.449 INFO    ] ================================================
[2026-06-13 05:50:23,465.465 INFO    ] Launching Daemon at Sat Jun 13 05:50:23 IST 2026
[2026-06-13 05:50:23,475.475 INFO    ] ================================================
[2026-06-13 05:50:23,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:23
[2026-06-13 05:50:24,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:24,261.261 INFO    ] Initializing speech engine...
[2026-06-13 05:50:24,270.270 INFO    ] 2026-06-13 05:50:24
[2026-06-13 05:50:24,492.492 INFO    ] 2026-06-13 05:50:24
[2026-06-13 05:50:24,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:24,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:24,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:24,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:24,911.911 INFO    ] time= 13/06/2026 05:50:24
[2026-06-13 05:50:24,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:24,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:25,034.034 INFO    ] No existing commands found in stream
[2026-06-13 05:50:30,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:50:30,048.048 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 05:50:32,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:50:32,055.055 INFO    ] Checking for system updates...
[2026-06-13 05:50:32,087.087 INFO    ] 200
[2026-06-13 05:50:32,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:32,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:32,126.126 INFO    ] No update needed
[2026-06-13 05:50:32,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:32,153.153 INFO    ] 200
[2026-06-13 05:50:32,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:32,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:32,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:32,212.212 INFO    ] No camera update needed
[2026-06-13 05:50:32,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:32,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:32,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:32,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:34,262.262 INFO    ] ================================================
[2026-06-13 05:50:34,277.277 INFO    ] Launching Daemon at Sat Jun 13 05:50:34 IST 2026
[2026-06-13 05:50:34,288.288 INFO    ] ================================================
[2026-06-13 05:50:34,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:34
[2026-06-13 05:50:34,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:35,205.205 INFO    ] Initializing speech engine...
[2026-06-13 05:50:35,214.214 INFO    ] 2026-06-13 05:50:35
[2026-06-13 05:50:35,466.466 INFO    ] 2026-06-13 05:50:35
[2026-06-13 05:50:35,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:35,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:35,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:35,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:35,807.807 INFO    ] time= 13/06/2026 05:50:35
[2026-06-13 05:50:35,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:35,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:35,920.920 INFO    ] No existing commands found in stream
[2026-06-13 05:50:40,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:50:40,941.941 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 05:50:44,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:50:44,264.264 INFO    ] Checking for system updates...
[2026-06-13 05:50:44,300.300 INFO    ] 200
[2026-06-13 05:50:44,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:44,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:44,357.357 INFO    ] No update needed
[2026-06-13 05:50:44,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:44,393.393 INFO    ] 200
[2026-06-13 05:50:44,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:44,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:44,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:50:44,475.475 INFO    ] No camera update needed
[2026-06-13 05:50:44,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:44,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:44,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:44,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:46,523.523 INFO    ] ================================================
[2026-06-13 05:50:46,538.538 INFO    ] Launching Daemon at Sat Jun 13 05:50:46 IST 2026
[2026-06-13 05:50:46,549.549 INFO    ] ================================================
[2026-06-13 05:50:46,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:46
[2026-06-13 05:50:47,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:47,383.383 INFO    ] Initializing speech engine...
[2026-06-13 05:50:47,388.388 INFO    ] 2026-06-13 05:50:47
[2026-06-13 05:50:47,597.597 INFO    ] 2026-06-13 05:50:47
[2026-06-13 05:50:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:47,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:47,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:47,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:48,019.019 INFO    ] time= 13/06/2026 05:50:47
[2026-06-13 05:50:48,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:48,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:48,121.121 INFO    ] No existing commands found in stream
[2026-06-13 05:50:53,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:50:53,135.135 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 05:50:53,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:50:53,543.543 INFO    ] Checking for system updates...
[2026-06-13 05:50:53,563.563 INFO    ] 200
[2026-06-13 05:50:53,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:53,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:53,596.596 INFO    ] No update needed
[2026-06-13 05:50:53,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 05:50:53,617.617 INFO    ] 200
[2026-06-13 05:50:53,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:50:53,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:50:53,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:50:53,794.794 INFO    ] No camera update needed
[2026-06-13 05:50:53,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:50:53,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:50:53,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:50:53,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:50:55,841.841 INFO    ] ================================================
[2026-06-13 05:50:55,856.856 INFO    ] Launching Daemon at Sat Jun 13 05:50:55 IST 2026
[2026-06-13 05:50:55,867.867 INFO    ] ================================================
[2026-06-13 05:50:56,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:50:56
[2026-06-13 05:50:56,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:50:56,671.671 INFO    ] Initializing speech engine...
[2026-06-13 05:50:56,687.687 INFO    ] 2026-06-13 05:50:56
[2026-06-13 05:50:56,905.905 INFO    ] 2026-06-13 05:50:56
[2026-06-13 05:50:56,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:50:57,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:50:57,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:50:57,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:50:57,279.279 INFO    ] time= 13/06/2026 05:50:57
[2026-06-13 05:50:57,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:50:57,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:50:57,484.484 INFO    ] No existing commands found in stream
[2026-06-13 05:51:02,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:02,507.507 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 05:51:05,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:51:05,480.480 INFO    ] Checking for system updates...
[2026-06-13 05:51:05,502.502 INFO    ] 200
[2026-06-13 05:51:05,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:05,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:51:05,539.539 INFO    ] No update needed
[2026-06-13 05:51:05,540.540 INFO    ] Checking for camera pi updates...
[2026-06-13 05:51:05,561.561 INFO    ] 200
[2026-06-13 05:51:05,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:05,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:51:05,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:51:05,630.630 INFO    ] No camera update needed
[2026-06-13 05:51:05,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:51:05,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:51:05,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:51:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:51:07,682.682 INFO    ] ================================================
[2026-06-13 05:51:07,698.698 INFO    ] Launching Daemon at Sat Jun 13 05:51:07 IST 2026
[2026-06-13 05:51:07,709.709 INFO    ] ================================================
[2026-06-13 05:51:08,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:51:08
[2026-06-13 05:51:08,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:51:08,521.521 INFO    ] Initializing speech engine...
[2026-06-13 05:51:08,526.526 INFO    ] 2026-06-13 05:51:08
[2026-06-13 05:51:08,712.712 INFO    ] 2026-06-13 05:51:08
[2026-06-13 05:51:08,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:51:08,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:51:08,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:51:09,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:51:09,078.078 INFO    ] time= 13/06/2026 05:51:09
[2026-06-13 05:51:09,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:51:09,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:51:09,197.197 INFO    ] No existing commands found in stream
[2026-06-13 05:51:14,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:14,212.212 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 05:51:17,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:51:17,778.778 INFO    ] Checking for system updates...
[2026-06-13 05:51:17,799.799 INFO    ] 200
[2026-06-13 05:51:17,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:17,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:51:17,832.832 INFO    ] No update needed
[2026-06-13 05:51:17,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 05:51:17,854.854 INFO    ] 200
[2026-06-13 05:51:17,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:17,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:51:17,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:51:17,924.924 INFO    ] No camera update needed
[2026-06-13 05:51:17,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:51:17,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:51:17,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:51:17,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:51:19,972.972 INFO    ] ================================================
[2026-06-13 05:51:19,987.987 INFO    ] Launching Daemon at Sat Jun 13 05:51:19 IST 2026
[2026-06-13 05:51:20,999.999 INFO    ] ================================================
[2026-06-13 05:51:20,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:51:20
[2026-06-13 05:51:20,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:51:20,821.821 INFO    ] Initializing speech engine...
[2026-06-13 05:51:20,826.826 INFO    ] 2026-06-13 05:51:20
[2026-06-13 05:51:21,031.031 INFO    ] 2026-06-13 05:51:21
[2026-06-13 05:51:21,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:51:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:51:21,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:51:21,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:51:21,447.447 INFO    ] time= 13/06/2026 05:51:21
[2026-06-13 05:51:21,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:51:21,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:51:21,543.543 INFO    ] No existing commands found in stream
[2026-06-13 05:51:26,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:26,555.555 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 05:51:28,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:51:28,479.479 INFO    ] Checking for system updates...
[2026-06-13 05:51:28,502.502 INFO    ] 200
[2026-06-13 05:51:28,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:28,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:51:28,536.536 INFO    ] No update needed
[2026-06-13 05:51:28,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 05:51:28,560.560 INFO    ] 200
[2026-06-13 05:51:28,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:28,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:51:28,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:51:28,636.636 INFO    ] No camera update needed
[2026-06-13 05:51:28,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:51:28,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:51:28,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:51:28,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:51:30,685.685 INFO    ] ================================================
[2026-06-13 05:51:30,700.700 INFO    ] Launching Daemon at Sat Jun 13 05:51:30 IST 2026
[2026-06-13 05:51:30,711.711 INFO    ] ================================================
[2026-06-13 05:51:31,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:51:31
[2026-06-13 05:51:31,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:51:31,540.540 INFO    ] Initializing speech engine...
[2026-06-13 05:51:31,545.545 INFO    ] 2026-06-13 05:51:31
[2026-06-13 05:51:31,736.736 INFO    ] 2026-06-13 05:51:31
[2026-06-13 05:51:31,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:51:31,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:51:31,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:51:32,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:51:32,168.168 INFO    ] time= 13/06/2026 05:51:32
[2026-06-13 05:51:32,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:51:32,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:51:32,326.326 INFO    ] No existing commands found in stream
[2026-06-13 05:51:37,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:37,338.338 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 05:51:38,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:51:38,487.487 INFO    ] Checking for system updates...
[2026-06-13 05:51:38,509.509 INFO    ] 200
[2026-06-13 05:51:38,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:38,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:51:38,546.546 INFO    ] No update needed
[2026-06-13 05:51:38,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 05:51:38,567.567 INFO    ] 200
[2026-06-13 05:51:38,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:38,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:51:38,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:51:38,638.638 INFO    ] No camera update needed
[2026-06-13 05:51:38,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:51:38,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:51:38,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:51:38,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:51:40,685.685 INFO    ] ================================================
[2026-06-13 05:51:40,701.701 INFO    ] Launching Daemon at Sat Jun 13 05:51:40 IST 2026
[2026-06-13 05:51:40,713.713 INFO    ] ================================================
[2026-06-13 05:51:41,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:51:41
[2026-06-13 05:51:41,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:51:41,517.517 INFO    ] Initializing speech engine...
[2026-06-13 05:51:41,530.530 INFO    ] 2026-06-13 05:51:41
[2026-06-13 05:51:41,737.737 INFO    ] 2026-06-13 05:51:41
[2026-06-13 05:51:41,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:51:41,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:51:41,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:51:42,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:51:42,151.151 INFO    ] time= 13/06/2026 05:51:42
[2026-06-13 05:51:42,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:51:42,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:51:42,265.265 INFO    ] No existing commands found in stream
[2026-06-13 05:51:47,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:47,277.277 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 05:51:50,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:51:50,205.205 INFO    ] Checking for system updates...
[2026-06-13 05:51:50,227.227 INFO    ] 200
[2026-06-13 05:51:50,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:50,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:51:50,260.260 INFO    ] No update needed
[2026-06-13 05:51:50,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 05:51:50,281.281 INFO    ] 200
[2026-06-13 05:51:50,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:51:50,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:51:50,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:51:50,343.343 INFO    ] No camera update needed
[2026-06-13 05:51:50,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:51:50,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:51:50,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:51:50,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:51:52,391.391 INFO    ] ================================================
[2026-06-13 05:51:52,407.407 INFO    ] Launching Daemon at Sat Jun 13 05:51:52 IST 2026
[2026-06-13 05:51:52,418.418 INFO    ] ================================================
[2026-06-13 05:51:52,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:51:52
[2026-06-13 05:51:53,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:51:53,213.213 INFO    ] Initializing speech engine...
[2026-06-13 05:51:53,217.217 INFO    ] 2026-06-13 05:51:53
[2026-06-13 05:51:53,447.447 INFO    ] 2026-06-13 05:51:53
[2026-06-13 05:51:53,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:51:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:51:53,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:51:53,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:51:53,886.886 INFO    ] time= 13/06/2026 05:51:53
[2026-06-13 05:51:53,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:51:53,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:51:54,003.003 INFO    ] No existing commands found in stream
[2026-06-13 05:51:59,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:51:59,017.017 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 05:52:02,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:52:02,091.091 INFO    ] Checking for system updates...
[2026-06-13 05:52:02,115.115 INFO    ] 200
[2026-06-13 05:52:02,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:02,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:02,159.159 INFO    ] No update needed
[2026-06-13 05:52:02,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:02,195.195 INFO    ] 200
[2026-06-13 05:52:02,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:02,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:02,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:02,276.276 INFO    ] No camera update needed
[2026-06-13 05:52:02,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:02,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:02,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:02,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:04,330.330 INFO    ] ================================================
[2026-06-13 05:52:04,346.346 INFO    ] Launching Daemon at Sat Jun 13 05:52:04 IST 2026
[2026-06-13 05:52:04,357.357 INFO    ] ================================================
[2026-06-13 05:52:04,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:04
[2026-06-13 05:52:05,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:05,141.141 INFO    ] Initializing speech engine...
[2026-06-13 05:52:05,154.154 INFO    ] 2026-06-13 05:52:05
[2026-06-13 05:52:05,418.418 INFO    ] 2026-06-13 05:52:05
[2026-06-13 05:52:05,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:05,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:05,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:05,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:05,796.796 INFO    ] time= 13/06/2026 05:52:05
[2026-06-13 05:52:05,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:05,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:05,861.861 INFO    ] No existing commands found in stream
[2026-06-13 05:52:10,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:52:10,875.875 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 05:52:13,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:52:13,135.135 INFO    ] Checking for system updates...
[2026-06-13 05:52:13,155.155 INFO    ] 200
[2026-06-13 05:52:13,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:13,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:52:13,191.191 INFO    ] No update needed
[2026-06-13 05:52:13,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:13,215.215 INFO    ] 200
[2026-06-13 05:52:13,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:13,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:13,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:52:13,278.278 INFO    ] No camera update needed
[2026-06-13 05:52:13,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:13,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:13,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:13,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:15,317.317 INFO    ] ================================================
[2026-06-13 05:52:15,326.326 INFO    ] Launching Daemon at Sat Jun 13 05:52:15 IST 2026
[2026-06-13 05:52:15,332.332 INFO    ] ================================================
[2026-06-13 05:52:15,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:15
[2026-06-13 05:52:15,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:16,221.221 INFO    ] Initializing speech engine...
[2026-06-13 05:52:16,236.236 INFO    ] 2026-06-13 05:52:16
[2026-06-13 05:52:16,518.518 INFO    ] 2026-06-13 05:52:16
[2026-06-13 05:52:16,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:16,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:16,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:16,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:16,866.866 INFO    ] time= 13/06/2026 05:52:16
[2026-06-13 05:52:16,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:16,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:16,943.943 INFO    ] No existing commands found in stream
[2026-06-13 05:52:21,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:52:21,954.954 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 05:52:23,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:52:23,434.434 INFO    ] Checking for system updates...
[2026-06-13 05:52:23,455.455 INFO    ] 200
[2026-06-13 05:52:23,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:23,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:23,488.488 INFO    ] No update needed
[2026-06-13 05:52:23,490.490 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:23,509.509 INFO    ] 200
[2026-06-13 05:52:23,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:23,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:23,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:52:23,581.581 INFO    ] No camera update needed
[2026-06-13 05:52:23,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:23,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:23,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:23,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:25,631.631 INFO    ] ================================================
[2026-06-13 05:52:25,647.647 INFO    ] Launching Daemon at Sat Jun 13 05:52:25 IST 2026
[2026-06-13 05:52:25,659.659 INFO    ] ================================================
[2026-06-13 05:52:25,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:25
[2026-06-13 05:52:26,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:26,428.428 INFO    ] Initializing speech engine...
[2026-06-13 05:52:26,442.442 INFO    ] 2026-06-13 05:52:26
[2026-06-13 05:52:26,646.646 INFO    ] 2026-06-13 05:52:26
[2026-06-13 05:52:26,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:26,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:26,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:26,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:27,069.069 INFO    ] time= 13/06/2026 05:52:27
[2026-06-13 05:52:27,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:27,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:27,167.167 INFO    ] No existing commands found in stream
[2026-06-13 05:52:32,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:52:32,177.177 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 05:52:33,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:52:33,360.360 INFO    ] Checking for system updates...
[2026-06-13 05:52:33,396.396 INFO    ] 200
[2026-06-13 05:52:33,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:33,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:33,457.457 INFO    ] No update needed
[2026-06-13 05:52:33,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:33,487.487 INFO    ] 200
[2026-06-13 05:52:33,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:33,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:33,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:33,552.552 INFO    ] No camera update needed
[2026-06-13 05:52:33,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:33,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:33,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:33,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:35,600.600 INFO    ] ================================================
[2026-06-13 05:52:35,616.616 INFO    ] Launching Daemon at Sat Jun 13 05:52:35 IST 2026
[2026-06-13 05:52:35,627.627 INFO    ] ================================================
[2026-06-13 05:52:35,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:35
[2026-06-13 05:52:36,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:36,433.433 INFO    ] Initializing speech engine...
[2026-06-13 05:52:36,439.439 INFO    ] 2026-06-13 05:52:36
[2026-06-13 05:52:36,652.652 INFO    ] 2026-06-13 05:52:36
[2026-06-13 05:52:36,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:36,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:36,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:37,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:37,044.044 INFO    ] time= 13/06/2026 05:52:37
[2026-06-13 05:52:37,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:37,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:37,206.206 INFO    ] No existing commands found in stream
[2026-06-13 05:52:42,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:52:42,219.219 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 05:52:44,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:52:44,543.543 INFO    ] Checking for system updates...
[2026-06-13 05:52:44,568.568 INFO    ] 200
[2026-06-13 05:52:44,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:44,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:44,609.609 INFO    ] No update needed
[2026-06-13 05:52:44,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:44,631.631 INFO    ] 200
[2026-06-13 05:52:44,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:44,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:44,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:44,689.689 INFO    ] No camera update needed
[2026-06-13 05:52:44,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:44,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:44,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:44,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:46,739.739 INFO    ] ================================================
[2026-06-13 05:52:46,755.755 INFO    ] Launching Daemon at Sat Jun 13 05:52:46 IST 2026
[2026-06-13 05:52:46,766.766 INFO    ] ================================================
[2026-06-13 05:52:47,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:47
[2026-06-13 05:52:47,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:47,610.610 INFO    ] Initializing speech engine...
[2026-06-13 05:52:47,616.616 INFO    ] 2026-06-13 05:52:47
[2026-06-13 05:52:47,822.822 INFO    ] 2026-06-13 05:52:47
[2026-06-13 05:52:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:47,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:48,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:48,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:48,240.240 INFO    ] time= 13/06/2026 05:52:48
[2026-06-13 05:52:48,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:48,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:48,339.339 INFO    ] No existing commands found in stream
[2026-06-13 05:52:53,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:52:53,353.353 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 05:52:55,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:52:55,560.560 INFO    ] Checking for system updates...
[2026-06-13 05:52:55,583.583 INFO    ] 200
[2026-06-13 05:52:55,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:55,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:55,624.624 INFO    ] No update needed
[2026-06-13 05:52:55,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 05:52:55,646.646 INFO    ] 200
[2026-06-13 05:52:55,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:52:55,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:52:55,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:52:55,812.812 INFO    ] No camera update needed
[2026-06-13 05:52:55,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:52:55,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:52:55,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:52:55,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:52:57,862.862 INFO    ] ================================================
[2026-06-13 05:52:57,877.877 INFO    ] Launching Daemon at Sat Jun 13 05:52:57 IST 2026
[2026-06-13 05:52:57,888.888 INFO    ] ================================================
[2026-06-13 05:52:58,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:52:58
[2026-06-13 05:52:58,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:52:58,685.685 INFO    ] Initializing speech engine...
[2026-06-13 05:52:58,697.697 INFO    ] 2026-06-13 05:52:58
[2026-06-13 05:52:58,903.903 INFO    ] 2026-06-13 05:52:58
[2026-06-13 05:52:58,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:52:59,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:52:59,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:52:59,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:52:59,310.310 INFO    ] time= 13/06/2026 05:52:59
[2026-06-13 05:52:59,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:52:59,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:52:59,421.421 INFO    ] No existing commands found in stream
[2026-06-13 05:53:04,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:53:04,431.431 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 05:53:05,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:53:05,819.819 INFO    ] Checking for system updates...
[2026-06-13 05:53:05,840.840 INFO    ] 200
[2026-06-13 05:53:05,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:05,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:05,876.876 INFO    ] No update needed
[2026-06-13 05:53:05,877.877 INFO    ] Checking for camera pi updates...
[2026-06-13 05:53:05,897.897 INFO    ] 200
[2026-06-13 05:53:05,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:05,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:53:05,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:05,960.960 INFO    ] No camera update needed
[2026-06-13 05:53:05,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:53:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:53:05,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:53:05,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:53:08,012.012 INFO    ] ================================================
[2026-06-13 05:53:08,028.028 INFO    ] Launching Daemon at Sat Jun 13 05:53:08 IST 2026
[2026-06-13 05:53:08,039.039 INFO    ] ================================================
[2026-06-13 05:53:08,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:53:08
[2026-06-13 05:53:08,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:53:08,847.847 INFO    ] Initializing speech engine...
[2026-06-13 05:53:08,852.852 INFO    ] 2026-06-13 05:53:08
[2026-06-13 05:53:09,058.058 INFO    ] 2026-06-13 05:53:09
[2026-06-13 05:53:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:53:09,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:53:09,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:53:09,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:53:09,472.472 INFO    ] time= 13/06/2026 05:53:09
[2026-06-13 05:53:09,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:53:09,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:53:09,577.577 INFO    ] No existing commands found in stream
[2026-06-13 05:53:14,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:53:14,589.589 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 05:53:18,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:53:18,762.762 INFO    ] Checking for system updates...
[2026-06-13 05:53:18,782.782 INFO    ] 200
[2026-06-13 05:53:18,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:18,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:53:18,815.815 INFO    ] No update needed
[2026-06-13 05:53:18,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 05:53:18,838.838 INFO    ] 200
[2026-06-13 05:53:18,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:18,862.862 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:53:18,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:18,909.909 INFO    ] No camera update needed
[2026-06-13 05:53:18,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:53:18,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:53:18,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:53:18,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:53:20,958.958 INFO    ] ================================================
[2026-06-13 05:53:20,973.973 INFO    ] Launching Daemon at Sat Jun 13 05:53:20 IST 2026
[2026-06-13 05:53:20,984.984 INFO    ] ================================================
[2026-06-13 05:53:21,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:53:21
[2026-06-13 05:53:21,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:53:21,774.774 INFO    ] Initializing speech engine...
[2026-06-13 05:53:21,778.778 INFO    ] 2026-06-13 05:53:21
[2026-06-13 05:53:21,997.997 INFO    ] 2026-06-13 05:53:21
[2026-06-13 05:53:22,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:53:22,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:53:22,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:53:22,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:53:22,409.409 INFO    ] time= 13/06/2026 05:53:22
[2026-06-13 05:53:22,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:53:22,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:53:22,518.518 INFO    ] No existing commands found in stream
[2026-06-13 05:53:27,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:53:27,531.531 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 05:53:31,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:53:31,469.469 INFO    ] Checking for system updates...
[2026-06-13 05:53:31,490.490 INFO    ] 200
[2026-06-13 05:53:31,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:31,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:31,523.523 INFO    ] No update needed
[2026-06-13 05:53:31,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 05:53:31,543.543 INFO    ] 200
[2026-06-13 05:53:31,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:31,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:53:31,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:31,605.605 INFO    ] No camera update needed
[2026-06-13 05:53:31,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:53:31,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:53:31,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:53:31,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:53:33,648.648 INFO    ] ================================================
[2026-06-13 05:53:33,663.663 INFO    ] Launching Daemon at Sat Jun 13 05:53:33 IST 2026
[2026-06-13 05:53:33,674.674 INFO    ] ================================================
[2026-06-13 05:53:34,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:53:34
[2026-06-13 05:53:34,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:53:34,617.617 INFO    ] Initializing speech engine...
[2026-06-13 05:53:34,631.631 INFO    ] 2026-06-13 05:53:34
[2026-06-13 05:53:34,917.917 INFO    ] 2026-06-13 05:53:34
[2026-06-13 05:53:34,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:53:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:53:35,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:53:35,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:53:35,406.406 INFO    ] time= 13/06/2026 05:53:35
[2026-06-13 05:53:35,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:53:35,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:53:35,558.558 INFO    ] No existing commands found in stream
[2026-06-13 05:53:40,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:53:40,575.575 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 05:53:44,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:53:44,528.528 INFO    ] Checking for system updates...
[2026-06-13 05:53:44,551.551 INFO    ] 200
[2026-06-13 05:53:44,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:44,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:53:44,584.584 INFO    ] No update needed
[2026-06-13 05:53:44,586.586 INFO    ] Checking for camera pi updates...
[2026-06-13 05:53:44,605.605 INFO    ] 200
[2026-06-13 05:53:44,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:44,632.632 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:53:44,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:53:44,671.671 INFO    ] No camera update needed
[2026-06-13 05:53:44,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:53:44,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:53:44,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:53:44,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:53:46,719.719 INFO    ] ================================================
[2026-06-13 05:53:46,735.735 INFO    ] Launching Daemon at Sat Jun 13 05:53:46 IST 2026
[2026-06-13 05:53:46,747.747 INFO    ] ================================================
[2026-06-13 05:53:47,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:53:47
[2026-06-13 05:53:47,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:53:47,597.597 INFO    ] Initializing speech engine...
[2026-06-13 05:53:47,603.603 INFO    ] 2026-06-13 05:53:47
[2026-06-13 05:53:47,808.808 INFO    ] 2026-06-13 05:53:47
[2026-06-13 05:53:47,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:53:48,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:53:48,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:53:48,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:53:48,217.217 INFO    ] time= 13/06/2026 05:53:48
[2026-06-13 05:53:48,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:53:48,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:53:48,322.322 INFO    ] No existing commands found in stream
[2026-06-13 05:53:53,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:53:53,334.334 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 05:53:54,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:53:54,082.082 INFO    ] Checking for system updates...
[2026-06-13 05:53:54,103.103 INFO    ] 200
[2026-06-13 05:53:54,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:54,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:53:54,137.137 INFO    ] No update needed
[2026-06-13 05:53:54,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 05:53:54,159.159 INFO    ] 200
[2026-06-13 05:53:54,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:53:54,186.186 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:53:54,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:53:54,226.226 INFO    ] No camera update needed
[2026-06-13 05:53:54,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:53:54,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:53:54,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:53:54,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:53:56,275.275 INFO    ] ================================================
[2026-06-13 05:53:56,291.291 INFO    ] Launching Daemon at Sat Jun 13 05:53:56 IST 2026
[2026-06-13 05:53:56,302.302 INFO    ] ================================================
[2026-06-13 05:53:56,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:53:56
[2026-06-13 05:53:56,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:53:57,271.271 INFO    ] Initializing speech engine...
[2026-06-13 05:53:57,276.276 INFO    ] 2026-06-13 05:53:57
[2026-06-13 05:53:57,559.559 INFO    ] 2026-06-13 05:53:57
[2026-06-13 05:53:57,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:53:57,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:53:57,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:53:57,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:53:57,977.977 INFO    ] time= 13/06/2026 05:53:57
[2026-06-13 05:53:58,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:53:58,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:53:58,159.159 INFO    ] No existing commands found in stream
[2026-06-13 05:54:03,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:54:03,174.174 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 05:54:07,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:54:07,188.188 INFO    ] Checking for system updates...
[2026-06-13 05:54:07,209.209 INFO    ] 200
[2026-06-13 05:54:07,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:07,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:07,242.242 INFO    ] No update needed
[2026-06-13 05:54:07,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 05:54:07,262.262 INFO    ] 200
[2026-06-13 05:54:07,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:07,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:54:07,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:07,327.327 INFO    ] No camera update needed
[2026-06-13 05:54:07,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:54:07,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:54:07,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:54:07,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:54:09,378.378 INFO    ] ================================================
[2026-06-13 05:54:09,393.393 INFO    ] Launching Daemon at Sat Jun 13 05:54:09 IST 2026
[2026-06-13 05:54:09,404.404 INFO    ] ================================================
[2026-06-13 05:54:09,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:54:09
[2026-06-13 05:54:10,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:54:10,207.207 INFO    ] Initializing speech engine...
[2026-06-13 05:54:10,216.216 INFO    ] 2026-06-13 05:54:10
[2026-06-13 05:54:10,440.440 INFO    ] 2026-06-13 05:54:10
[2026-06-13 05:54:10,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:54:10,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:54:10,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:54:10,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:54:10,846.846 INFO    ] time= 13/06/2026 05:54:10
[2026-06-13 05:54:10,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:54:10,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:54:10,961.961 INFO    ] No existing commands found in stream
[2026-06-13 05:54:15,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:54:15,973.973 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 05:54:20,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:54:20,053.053 INFO    ] Checking for system updates...
[2026-06-13 05:54:20,079.079 INFO    ] 200
[2026-06-13 05:54:20,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:20,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:20,118.118 INFO    ] No update needed
[2026-06-13 05:54:20,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 05:54:20,141.141 INFO    ] 200
[2026-06-13 05:54:20,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:20,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:54:20,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:20,206.206 INFO    ] No camera update needed
[2026-06-13 05:54:20,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:54:20,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:54:20,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:54:20,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:54:22,255.255 INFO    ] ================================================
[2026-06-13 05:54:22,270.270 INFO    ] Launching Daemon at Sat Jun 13 05:54:22 IST 2026
[2026-06-13 05:54:22,281.281 INFO    ] ================================================
[2026-06-13 05:54:22,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:54:22
[2026-06-13 05:54:23,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:54:23,155.155 INFO    ] Initializing speech engine...
[2026-06-13 05:54:23,160.160 INFO    ] 2026-06-13 05:54:23
[2026-06-13 05:54:23,369.369 INFO    ] 2026-06-13 05:54:23
[2026-06-13 05:54:23,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:54:23,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:54:23,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:54:23,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:54:23,770.770 INFO    ] time= 13/06/2026 05:54:23
[2026-06-13 05:54:23,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:54:23,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:54:23,886.886 INFO    ] No existing commands found in stream
[2026-06-13 05:54:28,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:54:28,899.899 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 05:54:30,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:54:30,729.729 INFO    ] Checking for system updates...
[2026-06-13 05:54:30,750.750 INFO    ] 200
[2026-06-13 05:54:30,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:30,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:30,787.787 INFO    ] No update needed
[2026-06-13 05:54:30,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 05:54:30,808.808 INFO    ] 200
[2026-06-13 05:54:30,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:30,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:54:30,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:30,875.875 INFO    ] No camera update needed
[2026-06-13 05:54:30,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:54:30,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:54:30,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:54:30,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:54:32,915.915 INFO    ] ================================================
[2026-06-13 05:54:32,930.930 INFO    ] Launching Daemon at Sat Jun 13 05:54:32 IST 2026
[2026-06-13 05:54:32,947.947 INFO    ] ================================================
[2026-06-13 05:54:33,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:54:33
[2026-06-13 05:54:33,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:54:33,743.743 INFO    ] Initializing speech engine...
[2026-06-13 05:54:33,747.747 INFO    ] 2026-06-13 05:54:33
[2026-06-13 05:54:33,977.977 INFO    ] 2026-06-13 05:54:33
[2026-06-13 05:54:34,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:54:34,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:54:34,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:54:34,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:54:34,401.401 INFO    ] time= 13/06/2026 05:54:34
[2026-06-13 05:54:34,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:54:34,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:54:34,536.536 INFO    ] No existing commands found in stream
[2026-06-13 05:54:39,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:54:39,547.547 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 05:54:42,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:54:42,127.127 INFO    ] Checking for system updates...
[2026-06-13 05:54:42,148.148 INFO    ] 200
[2026-06-13 05:54:42,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:42,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:42,181.181 INFO    ] No update needed
[2026-06-13 05:54:42,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 05:54:42,203.203 INFO    ] 200
[2026-06-13 05:54:42,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:42,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:54:42,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:54:42,271.271 INFO    ] No camera update needed
[2026-06-13 05:54:42,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:54:42,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:54:42,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:54:42,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:54:44,319.319 INFO    ] ================================================
[2026-06-13 05:54:44,334.334 INFO    ] Launching Daemon at Sat Jun 13 05:54:44 IST 2026
[2026-06-13 05:54:44,345.345 INFO    ] ================================================
[2026-06-13 05:54:44,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:54:44
[2026-06-13 05:54:44,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:54:45,140.140 INFO    ] Initializing speech engine...
[2026-06-13 05:54:45,145.145 INFO    ] 2026-06-13 05:54:45
[2026-06-13 05:54:45,348.348 INFO    ] 2026-06-13 05:54:45
[2026-06-13 05:54:45,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:54:45,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:54:45,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:54:45,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:54:45,750.750 INFO    ] time= 13/06/2026 05:54:45
[2026-06-13 05:54:45,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:54:45,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:54:45,864.864 INFO    ] No existing commands found in stream
[2026-06-13 05:54:50,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:54:50,877.877 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 05:54:51,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:54:51,716.716 INFO    ] Checking for system updates...
[2026-06-13 05:54:51,739.739 INFO    ] 200
[2026-06-13 05:54:51,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:51,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:54:51,772.772 INFO    ] No update needed
[2026-06-13 05:54:51,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 05:54:51,793.793 INFO    ] 200
[2026-06-13 05:54:51,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:54:51,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:54:51,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:54:51,872.872 INFO    ] No camera update needed
[2026-06-13 05:54:51,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:54:51,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:54:51,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:54:51,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:54:53,919.919 INFO    ] ================================================
[2026-06-13 05:54:53,934.934 INFO    ] Launching Daemon at Sat Jun 13 05:54:53 IST 2026
[2026-06-13 05:54:53,944.944 INFO    ] ================================================
[2026-06-13 05:54:54,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:54:54
[2026-06-13 05:54:54,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:54:54,747.747 INFO    ] Initializing speech engine...
[2026-06-13 05:54:54,752.752 INFO    ] 2026-06-13 05:54:54
[2026-06-13 05:54:54,955.955 INFO    ] 2026-06-13 05:54:54
[2026-06-13 05:54:54,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:54:55,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:54:55,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:54:55,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:54:55,371.371 INFO    ] time= 13/06/2026 05:54:55
[2026-06-13 05:54:55,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:54:55,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:54:55,467.467 INFO    ] No existing commands found in stream
[2026-06-13 05:55:00,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:55:00,479.479 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 05:55:01,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:55:01,763.763 INFO    ] Checking for system updates...
[2026-06-13 05:55:01,808.808 INFO    ] 200
[2026-06-13 05:55:01,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:01,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:01,854.854 INFO    ] No update needed
[2026-06-13 05:55:01,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 05:55:01,882.882 INFO    ] 200
[2026-06-13 05:55:01,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:01,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:55:02,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:02,114.114 INFO    ] No camera update needed
[2026-06-13 05:55:02,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:55:02,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:55:02,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:55:02,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:55:04,169.169 INFO    ] ================================================
[2026-06-13 05:55:04,184.184 INFO    ] Launching Daemon at Sat Jun 13 05:55:04 IST 2026
[2026-06-13 05:55:04,195.195 INFO    ] ================================================
[2026-06-13 05:55:04,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:55:04
[2026-06-13 05:55:05,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:55:05,666.666 INFO    ] Initializing speech engine...
[2026-06-13 05:55:05,678.678 INFO    ] 2026-06-13 05:55:05
[2026-06-13 05:55:05,951.951 INFO    ] 2026-06-13 05:55:05
[2026-06-13 05:55:05,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:55:06,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:55:06,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:55:06,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:55:06,331.331 INFO    ] time= 13/06/2026 05:55:06
[2026-06-13 05:55:06,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:55:06,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:55:06,458.458 INFO    ] No existing commands found in stream
[2026-06-13 05:55:11,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:55:11,472.472 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 05:55:14,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:55:14,022.022 INFO    ] Checking for system updates...
[2026-06-13 05:55:14,042.042 INFO    ] 200
[2026-06-13 05:55:14,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:14,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:55:14,078.078 INFO    ] No update needed
[2026-06-13 05:55:14,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 05:55:14,100.100 INFO    ] 200
[2026-06-13 05:55:14,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:14,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:55:14,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:55:14,167.167 INFO    ] No camera update needed
[2026-06-13 05:55:14,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:55:14,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:55:14,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:55:14,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:55:16,215.215 INFO    ] ================================================
[2026-06-13 05:55:16,230.230 INFO    ] Launching Daemon at Sat Jun 13 05:55:16 IST 2026
[2026-06-13 05:55:16,242.242 INFO    ] ================================================
[2026-06-13 05:55:16,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:55:16
[2026-06-13 05:55:16,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:55:17,042.042 INFO    ] Initializing speech engine...
[2026-06-13 05:55:17,047.047 INFO    ] 2026-06-13 05:55:17
[2026-06-13 05:55:17,252.252 INFO    ] 2026-06-13 05:55:17
[2026-06-13 05:55:17,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:55:17,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:55:17,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:55:17,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:55:17,653.653 INFO    ] time= 13/06/2026 05:55:17
[2026-06-13 05:55:17,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:55:17,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:55:17,770.770 INFO    ] No existing commands found in stream
[2026-06-13 05:55:22,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:55:22,783.783 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 05:55:26,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:55:26,452.452 INFO    ] Checking for system updates...
[2026-06-13 05:55:26,473.473 INFO    ] 200
[2026-06-13 05:55:26,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:26,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:26,507.507 INFO    ] No update needed
[2026-06-13 05:55:26,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 05:55:26,530.530 INFO    ] 200
[2026-06-13 05:55:26,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:26,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:55:26,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:26,594.594 INFO    ] No camera update needed
[2026-06-13 05:55:26,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:55:26,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:55:26,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:55:26,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:55:28,644.644 INFO    ] ================================================
[2026-06-13 05:55:28,659.659 INFO    ] Launching Daemon at Sat Jun 13 05:55:28 IST 2026
[2026-06-13 05:55:28,671.671 INFO    ] ================================================
[2026-06-13 05:55:29,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:55:29
[2026-06-13 05:55:29,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:55:29,452.452 INFO    ] Initializing speech engine...
[2026-06-13 05:55:29,457.457 INFO    ] 2026-06-13 05:55:29
[2026-06-13 05:55:29,688.688 INFO    ] 2026-06-13 05:55:29
[2026-06-13 05:55:29,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:55:29,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:55:29,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:55:30,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:55:30,088.088 INFO    ] time= 13/06/2026 05:55:30
[2026-06-13 05:55:30,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:55:30,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:55:30,245.245 INFO    ] No existing commands found in stream
[2026-06-13 05:55:35,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:55:35,259.259 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 05:55:39,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:55:39,566.566 INFO    ] Checking for system updates...
[2026-06-13 05:55:39,603.603 INFO    ] 200
[2026-06-13 05:55:39,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:39,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:39,647.647 INFO    ] No update needed
[2026-06-13 05:55:39,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 05:55:39,668.668 INFO    ] 200
[2026-06-13 05:55:39,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:39,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:55:39,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:55:39,732.732 INFO    ] No camera update needed
[2026-06-13 05:55:39,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:55:39,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:55:39,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:55:39,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:55:41,779.779 INFO    ] ================================================
[2026-06-13 05:55:41,794.794 INFO    ] Launching Daemon at Sat Jun 13 05:55:41 IST 2026
[2026-06-13 05:55:41,805.805 INFO    ] ================================================
[2026-06-13 05:55:42,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:55:42
[2026-06-13 05:55:42,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:55:42,593.593 INFO    ] Initializing speech engine...
[2026-06-13 05:55:42,597.597 INFO    ] 2026-06-13 05:55:42
[2026-06-13 05:55:42,818.818 INFO    ] 2026-06-13 05:55:42
[2026-06-13 05:55:42,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:55:43,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:55:43,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:55:43,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:55:43,222.222 INFO    ] time= 13/06/2026 05:55:43
[2026-06-13 05:55:43,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:55:43,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:55:43,338.338 INFO    ] No existing commands found in stream
[2026-06-13 05:55:48,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:55:48,350.350 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 05:55:52,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:55:52,222.222 INFO    ] Checking for system updates...
[2026-06-13 05:55:52,243.243 INFO    ] 200
[2026-06-13 05:55:52,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:52,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:55:52,278.278 INFO    ] No update needed
[2026-06-13 05:55:52,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 05:55:52,300.300 INFO    ] 200
[2026-06-13 05:55:52,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:55:52,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:55:52,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:55:52,364.364 INFO    ] No camera update needed
[2026-06-13 05:55:52,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:55:52,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:55:52,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:55:52,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:55:54,410.410 INFO    ] ================================================
[2026-06-13 05:55:54,425.425 INFO    ] Launching Daemon at Sat Jun 13 05:55:54 IST 2026
[2026-06-13 05:55:54,436.436 INFO    ] ================================================
[2026-06-13 05:55:54,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:55:54
[2026-06-13 05:55:55,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:55:55,628.628 INFO    ] Initializing speech engine...
[2026-06-13 05:55:55,636.636 INFO    ] 2026-06-13 05:55:55
[2026-06-13 05:55:55,935.935 INFO    ] 2026-06-13 05:55:55
[2026-06-13 05:55:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:55:56,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:55:56,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:55:56,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:55:56,315.315 INFO    ] time= 13/06/2026 05:55:56
[2026-06-13 05:55:56,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:55:56,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:55:56,445.445 INFO    ] No existing commands found in stream
[2026-06-13 05:56:01,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:01,460.460 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 05:56:01,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:56:01,792.792 INFO    ] Checking for system updates...
[2026-06-13 05:56:01,835.835 INFO    ] 200
[2026-06-13 05:56:01,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:01,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:01,884.884 INFO    ] No update needed
[2026-06-13 05:56:01,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:01,938.938 INFO    ] 200
[2026-06-13 05:56:01,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:01,994.994 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:02,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:02,027.027 INFO    ] No camera update needed
[2026-06-13 05:56:02,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:02,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:02,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:02,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:04,073.073 INFO    ] ================================================
[2026-06-13 05:56:04,088.088 INFO    ] Launching Daemon at Sat Jun 13 05:56:04 IST 2026
[2026-06-13 05:56:04,098.098 INFO    ] ================================================
[2026-06-13 05:56:04,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:04
[2026-06-13 05:56:04,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:04,949.949 INFO    ] Initializing speech engine...
[2026-06-13 05:56:04,954.954 INFO    ] 2026-06-13 05:56:04
[2026-06-13 05:56:05,162.162 INFO    ] 2026-06-13 05:56:05
[2026-06-13 05:56:05,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:05,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:05,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:05,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:05,567.567 INFO    ] time= 13/06/2026 05:56:05
[2026-06-13 05:56:05,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:05,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:05,677.677 INFO    ] No existing commands found in stream
[2026-06-13 05:56:10,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:10,690.690 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 05:56:11,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:56:11,179.179 INFO    ] Checking for system updates...
[2026-06-13 05:56:11,201.201 INFO    ] 200
[2026-06-13 05:56:11,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:11,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:11,234.234 INFO    ] No update needed
[2026-06-13 05:56:11,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:11,255.255 INFO    ] 200
[2026-06-13 05:56:11,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:11,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:11,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:11,320.320 INFO    ] No camera update needed
[2026-06-13 05:56:11,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:11,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:11,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:11,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:13,369.369 INFO    ] ================================================
[2026-06-13 05:56:13,384.384 INFO    ] Launching Daemon at Sat Jun 13 05:56:13 IST 2026
[2026-06-13 05:56:13,395.395 INFO    ] ================================================
[2026-06-13 05:56:13,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:13
[2026-06-13 05:56:14,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:14,177.177 INFO    ] Initializing speech engine...
[2026-06-13 05:56:14,190.190 INFO    ] 2026-06-13 05:56:14
[2026-06-13 05:56:14,397.397 INFO    ] 2026-06-13 05:56:14
[2026-06-13 05:56:14,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:14,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:14,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:14,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:14,806.806 INFO    ] time= 13/06/2026 05:56:14
[2026-06-13 05:56:14,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:14,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:14,917.917 INFO    ] No existing commands found in stream
[2026-06-13 05:56:19,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:19,930.930 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 05:56:21,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:56:21,810.810 INFO    ] Checking for system updates...
[2026-06-13 05:56:21,831.831 INFO    ] 200
[2026-06-13 05:56:21,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:21,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:21,866.866 INFO    ] No update needed
[2026-06-13 05:56:21,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:21,888.888 INFO    ] 200
[2026-06-13 05:56:21,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:21,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:21,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:21,955.955 INFO    ] No camera update needed
[2026-06-13 05:56:21,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:21,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:21,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:21,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:24,003.003 INFO    ] ================================================
[2026-06-13 05:56:24,018.018 INFO    ] Launching Daemon at Sat Jun 13 05:56:24 IST 2026
[2026-06-13 05:56:24,029.029 INFO    ] ================================================
[2026-06-13 05:56:24,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:24
[2026-06-13 05:56:24,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:24,829.829 INFO    ] Initializing speech engine...
[2026-06-13 05:56:24,834.834 INFO    ] 2026-06-13 05:56:24
[2026-06-13 05:56:25,037.037 INFO    ] 2026-06-13 05:56:25
[2026-06-13 05:56:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:25,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:25,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:25,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:25,439.439 INFO    ] time= 13/06/2026 05:56:25
[2026-06-13 05:56:25,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:25,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:25,547.547 INFO    ] No existing commands found in stream
[2026-06-13 05:56:30,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:30,561.561 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 05:56:32,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:56:32,196.196 INFO    ] Checking for system updates...
[2026-06-13 05:56:32,221.221 INFO    ] 200
[2026-06-13 05:56:32,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:32,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:32,260.260 INFO    ] No update needed
[2026-06-13 05:56:32,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:32,284.284 INFO    ] 200
[2026-06-13 05:56:32,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:32,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:32,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:56:32,341.341 INFO    ] No camera update needed
[2026-06-13 05:56:32,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:32,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:32,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:32,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:34,390.390 INFO    ] ================================================
[2026-06-13 05:56:34,406.406 INFO    ] Launching Daemon at Sat Jun 13 05:56:34 IST 2026
[2026-06-13 05:56:34,419.419 INFO    ] ================================================
[2026-06-13 05:56:34,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:34
[2026-06-13 05:56:35,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:35,256.256 INFO    ] Initializing speech engine...
[2026-06-13 05:56:35,260.260 INFO    ] 2026-06-13 05:56:35
[2026-06-13 05:56:35,467.467 INFO    ] 2026-06-13 05:56:35
[2026-06-13 05:56:35,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:35,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:35,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:35,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:35,881.881 INFO    ] time= 13/06/2026 05:56:35
[2026-06-13 05:56:35,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:35,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:35,994.994 INFO    ] No existing commands found in stream
[2026-06-13 05:56:41,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:41,011.011 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 05:56:42,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 05:56:42,742.742 INFO    ] Checking for system updates...
[2026-06-13 05:56:42,763.763 INFO    ] 200
[2026-06-13 05:56:42,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:42,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:42,797.797 INFO    ] No update needed
[2026-06-13 05:56:42,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:42,818.818 INFO    ] 200
[2026-06-13 05:56:42,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:42,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:42,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:42,881.881 INFO    ] No camera update needed
[2026-06-13 05:56:42,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:42,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:42,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:42,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:44,930.930 INFO    ] ================================================
[2026-06-13 05:56:44,945.945 INFO    ] Launching Daemon at Sat Jun 13 05:56:44 IST 2026
[2026-06-13 05:56:44,955.955 INFO    ] ================================================
[2026-06-13 05:56:45,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:45
[2026-06-13 05:56:45,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:45,750.750 INFO    ] Initializing speech engine...
[2026-06-13 05:56:45,755.755 INFO    ] 2026-06-13 05:56:45
[2026-06-13 05:56:45,961.961 INFO    ] 2026-06-13 05:56:45
[2026-06-13 05:56:45,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:46,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:46,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:46,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:46,358.358 INFO    ] time= 13/06/2026 05:56:46
[2026-06-13 05:56:46,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:46,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:46,479.479 INFO    ] No existing commands found in stream
[2026-06-13 05:56:51,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:56:51,492.492 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 05:56:55,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:56:55,255.255 INFO    ] Checking for system updates...
[2026-06-13 05:56:55,277.277 INFO    ] 200
[2026-06-13 05:56:55,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:55,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:55,311.311 INFO    ] No update needed
[2026-06-13 05:56:55,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 05:56:55,333.333 INFO    ] 200
[2026-06-13 05:56:55,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:56:55,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:56:55,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:56:55,399.399 INFO    ] No camera update needed
[2026-06-13 05:56:55,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:56:55,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:56:55,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:56:55,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:56:57,447.447 INFO    ] ================================================
[2026-06-13 05:56:57,463.463 INFO    ] Launching Daemon at Sat Jun 13 05:56:57 IST 2026
[2026-06-13 05:56:57,473.473 INFO    ] ================================================
[2026-06-13 05:56:57,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:56:57
[2026-06-13 05:56:58,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:56:58,272.272 INFO    ] Initializing speech engine...
[2026-06-13 05:56:58,276.276 INFO    ] 2026-06-13 05:56:58
[2026-06-13 05:56:58,506.506 INFO    ] 2026-06-13 05:56:58
[2026-06-13 05:56:58,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:56:58,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:56:58,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:56:58,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:56:58,903.903 INFO    ] time= 13/06/2026 05:56:58
[2026-06-13 05:56:58,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:56:58,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:56:59,071.071 INFO    ] No existing commands found in stream
[2026-06-13 05:57:04,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:57:04,093.093 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 05:57:05,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:57:05,081.081 INFO    ] Checking for system updates...
[2026-06-13 05:57:05,119.119 INFO    ] 200
[2026-06-13 05:57:05,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:05,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:57:05,177.177 INFO    ] No update needed
[2026-06-13 05:57:05,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 05:57:05,218.218 INFO    ] 200
[2026-06-13 05:57:05,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:05,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:57:05,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:57:05,392.392 INFO    ] No camera update needed
[2026-06-13 05:57:05,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:57:05,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:57:05,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:57:05,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:57:07,440.440 INFO    ] ================================================
[2026-06-13 05:57:07,454.454 INFO    ] Launching Daemon at Sat Jun 13 05:57:07 IST 2026
[2026-06-13 05:57:07,465.465 INFO    ] ================================================
[2026-06-13 05:57:07,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:57:07
[2026-06-13 05:57:08,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:57:08,300.300 INFO    ] Initializing speech engine...
[2026-06-13 05:57:08,305.305 INFO    ] 2026-06-13 05:57:08
[2026-06-13 05:57:08,511.511 INFO    ] 2026-06-13 05:57:08
[2026-06-13 05:57:08,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:57:08,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:57:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:57:08,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:57:08,930.930 INFO    ] time= 13/06/2026 05:57:08
[2026-06-13 05:57:08,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:57:08,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:57:09,029.029 INFO    ] No existing commands found in stream
[2026-06-13 05:57:14,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:57:14,042.042 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 05:57:17,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:57:17,384.384 INFO    ] Checking for system updates...
[2026-06-13 05:57:17,405.405 INFO    ] 200
[2026-06-13 05:57:17,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:17,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:57:17,438.438 INFO    ] No update needed
[2026-06-13 05:57:17,439.439 INFO    ] Checking for camera pi updates...
[2026-06-13 05:57:17,458.458 INFO    ] 200
[2026-06-13 05:57:17,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:17,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:57:17,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:57:17,520.520 INFO    ] No camera update needed
[2026-06-13 05:57:17,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:57:17,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:57:17,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:57:17,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:57:19,567.567 INFO    ] ================================================
[2026-06-13 05:57:19,582.582 INFO    ] Launching Daemon at Sat Jun 13 05:57:19 IST 2026
[2026-06-13 05:57:19,593.593 INFO    ] ================================================
[2026-06-13 05:57:19,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:57:19
[2026-06-13 05:57:20,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:57:20,436.436 INFO    ] Initializing speech engine...
[2026-06-13 05:57:20,442.442 INFO    ] 2026-06-13 05:57:20
[2026-06-13 05:57:20,652.652 INFO    ] 2026-06-13 05:57:20
[2026-06-13 05:57:20,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:57:20,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:57:20,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:57:21,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:57:21,065.065 INFO    ] time= 13/06/2026 05:57:21
[2026-06-13 05:57:21,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:57:21,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:57:21,179.179 INFO    ] No existing commands found in stream
[2026-06-13 05:57:26,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:57:26,192.192 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 05:57:29,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:57:29,060.060 INFO    ] Checking for system updates...
[2026-06-13 05:57:29,080.080 INFO    ] 200
[2026-06-13 05:57:29,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:29,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:57:29,113.113 INFO    ] No update needed
[2026-06-13 05:57:29,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 05:57:29,138.138 INFO    ] 200
[2026-06-13 05:57:29,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:29,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:57:29,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:57:29,201.201 INFO    ] No camera update needed
[2026-06-13 05:57:29,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:57:29,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:57:29,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:57:29,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:57:31,247.247 INFO    ] ================================================
[2026-06-13 05:57:31,263.263 INFO    ] Launching Daemon at Sat Jun 13 05:57:31 IST 2026
[2026-06-13 05:57:31,274.274 INFO    ] ================================================
[2026-06-13 05:57:31,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:57:31
[2026-06-13 05:57:31,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:57:32,152.152 INFO    ] Initializing speech engine...
[2026-06-13 05:57:32,159.159 INFO    ] 2026-06-13 05:57:32
[2026-06-13 05:57:32,393.393 INFO    ] 2026-06-13 05:57:32
[2026-06-13 05:57:32,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:57:32,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:57:32,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:57:32,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:57:32,821.821 INFO    ] time= 13/06/2026 05:57:32
[2026-06-13 05:57:32,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:57:32,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:57:32,929.929 INFO    ] No existing commands found in stream
[2026-06-13 05:57:37,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:57:37,942.942 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 05:57:41,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:57:41,695.695 INFO    ] Checking for system updates...
[2026-06-13 05:57:41,718.718 INFO    ] 200
[2026-06-13 05:57:41,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:41,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:57:41,755.755 INFO    ] No update needed
[2026-06-13 05:57:41,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 05:57:41,776.776 INFO    ] 200
[2026-06-13 05:57:41,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:41,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:57:41,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:57:41,841.841 INFO    ] No camera update needed
[2026-06-13 05:57:41,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:57:41,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:57:41,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:57:41,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:57:43,890.890 INFO    ] ================================================
[2026-06-13 05:57:43,905.905 INFO    ] Launching Daemon at Sat Jun 13 05:57:43 IST 2026
[2026-06-13 05:57:43,915.915 INFO    ] ================================================
[2026-06-13 05:57:44,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:57:44
[2026-06-13 05:57:44,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:57:44,700.700 INFO    ] Initializing speech engine...
[2026-06-13 05:57:44,711.711 INFO    ] 2026-06-13 05:57:44
[2026-06-13 05:57:44,914.914 INFO    ] 2026-06-13 05:57:44
[2026-06-13 05:57:44,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:57:45,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:57:45,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:57:45,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:57:45,314.314 INFO    ] time= 13/06/2026 05:57:45
[2026-06-13 05:57:45,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:57:45,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:57:45,427.427 INFO    ] No existing commands found in stream
[2026-06-13 05:57:50,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:57:50,441.441 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 05:57:52,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:57:52,050.050 INFO    ] Checking for system updates...
[2026-06-13 05:57:52,071.071 INFO    ] 200
[2026-06-13 05:57:52,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:52,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:57:52,104.104 INFO    ] No update needed
[2026-06-13 05:57:52,105.105 INFO    ] Checking for camera pi updates...
[2026-06-13 05:57:52,125.125 INFO    ] 200
[2026-06-13 05:57:52,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:57:52,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:57:52,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:57:52,190.190 INFO    ] No camera update needed
[2026-06-13 05:57:52,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:57:52,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:57:52,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:57:52,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:57:54,238.238 INFO    ] ================================================
[2026-06-13 05:57:54,253.253 INFO    ] Launching Daemon at Sat Jun 13 05:57:54 IST 2026
[2026-06-13 05:57:54,264.264 INFO    ] ================================================
[2026-06-13 05:57:54,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:57:54
[2026-06-13 05:57:54,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:57:55,062.062 INFO    ] Initializing speech engine...
[2026-06-13 05:57:55,070.070 INFO    ] 2026-06-13 05:57:55
[2026-06-13 05:57:55,294.294 INFO    ] 2026-06-13 05:57:55
[2026-06-13 05:57:55,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:57:55,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:57:55,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:57:55,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:57:55,715.715 INFO    ] time= 13/06/2026 05:57:55
[2026-06-13 05:57:55,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:57:55,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:57:55,851.851 INFO    ] No existing commands found in stream
[2026-06-13 05:58:00,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:00,864.864 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 05:58:04,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:58:04,165.165 INFO    ] Checking for system updates...
[2026-06-13 05:58:04,186.186 INFO    ] 200
[2026-06-13 05:58:04,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:04,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:04,224.224 INFO    ] No update needed
[2026-06-13 05:58:04,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:04,249.249 INFO    ] 200
[2026-06-13 05:58:04,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:04,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:04,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:04,318.318 INFO    ] No camera update needed
[2026-06-13 05:58:04,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:04,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:04,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:04,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:58:06,366.366 INFO    ] ================================================
[2026-06-13 05:58:06,381.381 INFO    ] Launching Daemon at Sat Jun 13 05:58:06 IST 2026
[2026-06-13 05:58:06,392.392 INFO    ] ================================================
[2026-06-13 05:58:06,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:58:06
[2026-06-13 05:58:07,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:58:07,252.252 INFO    ] Initializing speech engine...
[2026-06-13 05:58:07,261.261 INFO    ] 2026-06-13 05:58:07
[2026-06-13 05:58:07,469.469 INFO    ] 2026-06-13 05:58:07
[2026-06-13 05:58:07,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:58:07,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:58:07,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:58:07,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:58:07,871.871 INFO    ] time= 13/06/2026 05:58:07
[2026-06-13 05:58:07,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:58:07,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:58:07,984.984 INFO    ] No existing commands found in stream
[2026-06-13 05:58:12,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:12,999.999 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 05:58:16,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:58:16,354.354 INFO    ] Checking for system updates...
[2026-06-13 05:58:16,376.376 INFO    ] 200
[2026-06-13 05:58:16,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:16,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:58:16,409.409 INFO    ] No update needed
[2026-06-13 05:58:16,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:16,430.430 INFO    ] 200
[2026-06-13 05:58:16,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:16,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:16,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:58:16,492.492 INFO    ] No camera update needed
[2026-06-13 05:58:16,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:16,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:16,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:16,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:58:18,540.540 INFO    ] ================================================
[2026-06-13 05:58:18,555.555 INFO    ] Launching Daemon at Sat Jun 13 05:58:18 IST 2026
[2026-06-13 05:58:18,566.566 INFO    ] ================================================
[2026-06-13 05:58:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:58:18
[2026-06-13 05:58:19,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:58:19,351.351 INFO    ] Initializing speech engine...
[2026-06-13 05:58:19,357.357 INFO    ] 2026-06-13 05:58:19
[2026-06-13 05:58:19,569.569 INFO    ] 2026-06-13 05:58:19
[2026-06-13 05:58:19,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:58:19,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:58:19,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:58:19,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:58:19,995.995 INFO    ] time= 13/06/2026 05:58:19
[2026-06-13 05:58:20,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:58:20,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:58:20,129.129 INFO    ] No existing commands found in stream
[2026-06-13 05:58:25,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:25,141.141 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 05:58:27,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:58:27,253.253 INFO    ] Checking for system updates...
[2026-06-13 05:58:27,274.274 INFO    ] 200
[2026-06-13 05:58:27,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:27,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:58:27,307.307 INFO    ] No update needed
[2026-06-13 05:58:27,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:27,328.328 INFO    ] 200
[2026-06-13 05:58:27,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:27,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:27,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:58:27,389.389 INFO    ] No camera update needed
[2026-06-13 05:58:27,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:27,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:27,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:27,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:58:29,437.437 INFO    ] ================================================
[2026-06-13 05:58:29,452.452 INFO    ] Launching Daemon at Sat Jun 13 05:58:29 IST 2026
[2026-06-13 05:58:29,464.464 INFO    ] ================================================
[2026-06-13 05:58:29,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:58:29
[2026-06-13 05:58:30,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:58:30,240.240 INFO    ] Initializing speech engine...
[2026-06-13 05:58:30,248.248 INFO    ] 2026-06-13 05:58:30
[2026-06-13 05:58:30,465.465 INFO    ] 2026-06-13 05:58:30
[2026-06-13 05:58:30,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:58:30,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:58:30,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:58:30,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:58:30,856.856 INFO    ] time= 13/06/2026 05:58:30
[2026-06-13 05:58:30,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:58:30,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:58:30,990.990 INFO    ] No existing commands found in stream
[2026-06-13 05:58:36,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:36,003.003 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 05:58:36,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:58:36,908.908 INFO    ] Checking for system updates...
[2026-06-13 05:58:36,929.929 INFO    ] 200
[2026-06-13 05:58:36,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:36,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:36,962.962 INFO    ] No update needed
[2026-06-13 05:58:36,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:36,984.984 INFO    ] 200
[2026-06-13 05:58:36,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:37,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:37,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:37,047.047 INFO    ] No camera update needed
[2026-06-13 05:58:37,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:37,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:37,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:37,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:58:39,094.094 INFO    ] ================================================
[2026-06-13 05:58:39,112.112 INFO    ] Launching Daemon at Sat Jun 13 05:58:39 IST 2026
[2026-06-13 05:58:39,124.124 INFO    ] ================================================
[2026-06-13 05:58:39,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:58:39
[2026-06-13 05:58:39,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:58:39,938.938 INFO    ] Initializing speech engine...
[2026-06-13 05:58:39,951.951 INFO    ] 2026-06-13 05:58:39
[2026-06-13 05:58:40,172.172 INFO    ] 2026-06-13 05:58:40
[2026-06-13 05:58:40,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:58:40,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:58:40,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:58:40,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:58:40,420.420 INFO    ] time= 13/06/2026 05:58:40
[2026-06-13 05:58:40,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:58:40,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:58:40,540.540 INFO    ] No existing commands found in stream
[2026-06-13 05:58:45,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:45,568.568 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 05:58:47,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:58:47,023.023 INFO    ] Checking for system updates...
[2026-06-13 05:58:47,046.046 INFO    ] 200
[2026-06-13 05:58:47,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:47,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:47,081.081 INFO    ] No update needed
[2026-06-13 05:58:47,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:47,103.103 INFO    ] 200
[2026-06-13 05:58:47,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:47,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:47,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:47,167.167 INFO    ] No camera update needed
[2026-06-13 05:58:47,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:47,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:47,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:47,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:58:49,216.216 INFO    ] ================================================
[2026-06-13 05:58:49,231.231 INFO    ] Launching Daemon at Sat Jun 13 05:58:49 IST 2026
[2026-06-13 05:58:49,242.242 INFO    ] ================================================
[2026-06-13 05:58:49,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:58:49
[2026-06-13 05:58:49,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:58:50,077.077 INFO    ] Initializing speech engine...
[2026-06-13 05:58:50,088.088 INFO    ] 2026-06-13 05:58:50
[2026-06-13 05:58:50,298.298 INFO    ] 2026-06-13 05:58:50
[2026-06-13 05:58:50,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:58:50,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:58:50,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:58:50,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:58:50,716.716 INFO    ] time= 13/06/2026 05:58:50
[2026-06-13 05:58:50,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:58:50,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:58:50,874.874 INFO    ] No existing commands found in stream
[2026-06-13 05:58:55,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:58:55,884.884 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 05:58:58,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 05:58:58,336.336 INFO    ] Checking for system updates...
[2026-06-13 05:58:58,357.357 INFO    ] 200
[2026-06-13 05:58:58,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:58,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:58,391.391 INFO    ] No update needed
[2026-06-13 05:58:58,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 05:58:58,412.412 INFO    ] 200
[2026-06-13 05:58:58,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:58:58,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:58:58,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:58:58,480.480 INFO    ] No camera update needed
[2026-06-13 05:58:58,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:58:58,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:58:58,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:58:58,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:00,529.529 INFO    ] ================================================
[2026-06-13 05:59:00,544.544 INFO    ] Launching Daemon at Sat Jun 13 05:59:00 IST 2026
[2026-06-13 05:59:00,555.555 INFO    ] ================================================
[2026-06-13 05:59:00,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:00
[2026-06-13 05:59:01,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:01,351.351 INFO    ] Initializing speech engine...
[2026-06-13 05:59:01,356.356 INFO    ] 2026-06-13 05:59:01
[2026-06-13 05:59:01,560.560 INFO    ] 2026-06-13 05:59:01
[2026-06-13 05:59:01,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:01,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:01,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:01,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:01,891.891 INFO    ] time= 13/06/2026 05:59:01
[2026-06-13 05:59:01,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:01,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:02,102.102 INFO    ] No existing commands found in stream
[2026-06-13 05:59:07,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:59:07,138.138 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 05:59:07,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 05:59:07,784.784 INFO    ] Checking for system updates...
[2026-06-13 05:59:07,807.807 INFO    ] 200
[2026-06-13 05:59:07,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:07,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:07,843.843 INFO    ] No update needed
[2026-06-13 05:59:07,844.844 INFO    ] Checking for camera pi updates...
[2026-06-13 05:59:07,868.868 INFO    ] 200
[2026-06-13 05:59:07,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:07,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:59:08,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:08,043.043 INFO    ] No camera update needed
[2026-06-13 05:59:08,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:59:08,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:59:08,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:59:08,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:10,094.094 INFO    ] ================================================
[2026-06-13 05:59:10,109.109 INFO    ] Launching Daemon at Sat Jun 13 05:59:10 IST 2026
[2026-06-13 05:59:10,119.119 INFO    ] ================================================
[2026-06-13 05:59:10,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:10
[2026-06-13 05:59:10,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:10,940.940 INFO    ] Initializing speech engine...
[2026-06-13 05:59:10,945.945 INFO    ] 2026-06-13 05:59:10
[2026-06-13 05:59:11,151.151 INFO    ] 2026-06-13 05:59:11
[2026-06-13 05:59:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:11,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:11,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:11,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:11,563.563 INFO    ] time= 13/06/2026 05:59:11
[2026-06-13 05:59:11,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:11,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:11,667.667 INFO    ] No existing commands found in stream
[2026-06-13 05:59:16,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:59:16,681.681 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 05:59:18,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:59:18,970.970 INFO    ] Checking for system updates...
[2026-06-13 05:59:18,990.990 INFO    ] 200
[2026-06-13 05:59:18,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:19,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:59:19,026.026 INFO    ] No update needed
[2026-06-13 05:59:19,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 05:59:19,047.047 INFO    ] 200
[2026-06-13 05:59:19,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:19,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:59:19,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:19,113.113 INFO    ] No camera update needed
[2026-06-13 05:59:19,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:59:19,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:59:19,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:59:19,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:21,161.161 INFO    ] ================================================
[2026-06-13 05:59:21,176.176 INFO    ] Launching Daemon at Sat Jun 13 05:59:21 IST 2026
[2026-06-13 05:59:21,187.187 INFO    ] ================================================
[2026-06-13 05:59:21,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:21
[2026-06-13 05:59:21,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:21,979.979 INFO    ] Initializing speech engine...
[2026-06-13 05:59:21,988.988 INFO    ] 2026-06-13 05:59:21
[2026-06-13 05:59:22,214.214 INFO    ] 2026-06-13 05:59:22
[2026-06-13 05:59:22,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:22,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:22,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:22,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:22,663.663 INFO    ] time= 13/06/2026 05:59:22
[2026-06-13 05:59:22,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:22,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:22,789.789 INFO    ] No existing commands found in stream
[2026-06-13 05:59:27,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:59:27,802.802 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 05:59:29,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 05:59:29,783.783 INFO    ] Checking for system updates...
[2026-06-13 05:59:29,804.804 INFO    ] 200
[2026-06-13 05:59:29,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:29,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:29,839.839 INFO    ] No update needed
[2026-06-13 05:59:29,840.840 INFO    ] Checking for camera pi updates...
[2026-06-13 05:59:29,859.859 INFO    ] 200
[2026-06-13 05:59:29,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:29,884.884 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:59:29,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:29,924.924 INFO    ] No camera update needed
[2026-06-13 05:59:29,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:59:29,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:59:29,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:59:29,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:31,965.965 INFO    ] ================================================
[2026-06-13 05:59:31,975.975 INFO    ] Launching Daemon at Sat Jun 13 05:59:31 IST 2026
[2026-06-13 05:59:31,981.981 INFO    ] ================================================
[2026-06-13 05:59:32,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:32
[2026-06-13 05:59:32,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:32,781.781 INFO    ] Initializing speech engine...
[2026-06-13 05:59:32,791.791 INFO    ] 2026-06-13 05:59:32
[2026-06-13 05:59:32,996.996 INFO    ] 2026-06-13 05:59:32
[2026-06-13 05:59:33,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:33,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:33,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:33,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:33,401.401 INFO    ] time= 13/06/2026 05:59:33
[2026-06-13 05:59:33,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:33,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:33,512.512 INFO    ] No existing commands found in stream
[2026-06-13 05:59:38,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:59:38,524.524 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 05:59:42,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 05:59:42,138.138 INFO    ] Checking for system updates...
[2026-06-13 05:59:42,158.158 INFO    ] 200
[2026-06-13 05:59:42,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:42,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:42,192.192 INFO    ] No update needed
[2026-06-13 05:59:42,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 05:59:42,214.214 INFO    ] 200
[2026-06-13 05:59:42,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:42,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:59:42,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 05:59:42,279.279 INFO    ] No camera update needed
[2026-06-13 05:59:42,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:59:42,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:59:42,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:59:42,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:44,326.326 INFO    ] ================================================
[2026-06-13 05:59:44,343.343 INFO    ] Launching Daemon at Sat Jun 13 05:59:44 IST 2026
[2026-06-13 05:59:44,359.359 INFO    ] ================================================
[2026-06-13 05:59:44,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:44
[2026-06-13 05:59:45,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:45,247.247 INFO    ] Initializing speech engine...
[2026-06-13 05:59:45,256.256 INFO    ] 2026-06-13 05:59:45
[2026-06-13 05:59:45,470.470 INFO    ] 2026-06-13 05:59:45
[2026-06-13 05:59:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:45,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:45,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:45,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:45,886.886 INFO    ] time= 13/06/2026 05:59:45
[2026-06-13 05:59:45,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:45,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:45,986.986 INFO    ] No existing commands found in stream
[2026-06-13 05:59:51,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 05:59:51,003.003 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 05:59:54,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 05:59:54,400.400 INFO    ] Checking for system updates...
[2026-06-13 05:59:54,421.421 INFO    ] 200
[2026-06-13 05:59:54,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:54,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:59:54,454.454 INFO    ] No update needed
[2026-06-13 05:59:54,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 05:59:54,476.476 INFO    ] 200
[2026-06-13 05:59:54,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 05:59:54,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 05:59:54,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 05:59:54,541.541 INFO    ] No camera update needed
[2026-06-13 05:59:54,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 05:59:54,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 05:59:54,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 05:59:54,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 05:59:56,589.589 INFO    ] ================================================
[2026-06-13 05:59:56,604.604 INFO    ] Launching Daemon at Sat Jun 13 05:59:56 IST 2026
[2026-06-13 05:59:56,615.615 INFO    ] ================================================
[2026-06-13 05:59:56,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 05:59:56
[2026-06-13 05:59:57,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 05:59:57,390.390 INFO    ] Initializing speech engine...
[2026-06-13 05:59:57,394.394 INFO    ] 2026-06-13 05:59:57
[2026-06-13 05:59:57,611.611 INFO    ] 2026-06-13 05:59:57
[2026-06-13 05:59:57,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 05:59:57,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 05:59:57,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 05:59:57,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 05:59:58,024.024 INFO    ] time= 13/06/2026 05:59:57
[2026-06-13 05:59:58,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 05:59:58,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 05:59:58,162.162 INFO    ] No existing commands found in stream
[2026-06-13 06:00:03,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:00:03,175.175 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 06:00:06,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:00:06,098.098 INFO    ] Checking for system updates...
[2026-06-13 06:00:06,129.129 INFO    ] 200
[2026-06-13 06:00:06,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:06,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:06,168.168 INFO    ] No update needed
[2026-06-13 06:00:06,170.170 INFO    ] Checking for camera pi updates...
[2026-06-13 06:00:06,191.191 INFO    ] 200
[2026-06-13 06:00:06,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:06,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:00:06,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:06,256.256 INFO    ] No camera update needed
[2026-06-13 06:00:06,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:00:06,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:00:06,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:00:06,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:00:08,303.303 INFO    ] ================================================
[2026-06-13 06:00:08,318.318 INFO    ] Launching Daemon at Sat Jun 13 06:00:08 IST 2026
[2026-06-13 06:00:08,329.329 INFO    ] ================================================
[2026-06-13 06:00:08,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:00:08
[2026-06-13 06:00:09,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:00:09,147.147 INFO    ] Initializing speech engine...
[2026-06-13 06:00:09,156.156 INFO    ] 2026-06-13 06:00:09
[2026-06-13 06:00:09,375.375 INFO    ] 2026-06-13 06:00:09
[2026-06-13 06:00:09,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:00:09,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:00:09,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:00:09,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:00:09,787.787 INFO    ] time= 13/06/2026 06:00:09
[2026-06-13 06:00:09,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:00:09,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:00:09,900.900 INFO    ] No existing commands found in stream
[2026-06-13 06:00:14,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:00:14,913.913 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 06:00:15,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:00:15,549.549 INFO    ] Checking for system updates...
[2026-06-13 06:00:15,570.570 INFO    ] 200
[2026-06-13 06:00:15,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:15,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:15,603.603 INFO    ] No update needed
[2026-06-13 06:00:15,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 06:00:15,625.625 INFO    ] 200
[2026-06-13 06:00:15,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:15,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:00:15,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:15,691.691 INFO    ] No camera update needed
[2026-06-13 06:00:15,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:00:15,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:00:15,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:00:15,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:00:17,740.740 INFO    ] ================================================
[2026-06-13 06:00:17,756.756 INFO    ] Launching Daemon at Sat Jun 13 06:00:17 IST 2026
[2026-06-13 06:00:17,766.766 INFO    ] ================================================
[2026-06-13 06:00:18,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:00:18
[2026-06-13 06:00:18,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:00:18,783.783 INFO    ] Initializing speech engine...
[2026-06-13 06:00:18,802.802 INFO    ] 2026-06-13 06:00:18
[2026-06-13 06:00:19,065.065 INFO    ] 2026-06-13 06:00:19
[2026-06-13 06:00:19,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:00:19,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:00:19,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:00:19,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:00:19,504.504 INFO    ] time= 13/06/2026 06:00:19
[2026-06-13 06:00:19,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:00:19,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:00:19,654.654 INFO    ] No existing commands found in stream
[2026-06-13 06:00:24,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:00:24,669.669 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 06:00:28,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:00:28,454.454 INFO    ] Checking for system updates...
[2026-06-13 06:00:28,475.475 INFO    ] 200
[2026-06-13 06:00:28,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:28,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:28,509.509 INFO    ] No update needed
[2026-06-13 06:00:28,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 06:00:28,530.530 INFO    ] 200
[2026-06-13 06:00:28,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:28,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:00:28,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:00:28,599.599 INFO    ] No camera update needed
[2026-06-13 06:00:28,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:00:28,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:00:28,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:00:28,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:00:30,649.649 INFO    ] ================================================
[2026-06-13 06:00:30,665.665 INFO    ] Launching Daemon at Sat Jun 13 06:00:30 IST 2026
[2026-06-13 06:00:30,675.675 INFO    ] ================================================
[2026-06-13 06:00:31,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:00:31
[2026-06-13 06:00:31,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:00:31,465.465 INFO    ] Initializing speech engine...
[2026-06-13 06:00:31,471.471 INFO    ] 2026-06-13 06:00:31
[2026-06-13 06:00:31,686.686 INFO    ] 2026-06-13 06:00:31
[2026-06-13 06:00:31,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:00:31,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:00:31,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:00:32,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:00:32,121.121 INFO    ] time= 13/06/2026 06:00:32
[2026-06-13 06:00:32,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:00:32,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:00:32,242.242 INFO    ] No existing commands found in stream
[2026-06-13 06:00:37,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:00:37,255.255 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 06:00:40,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:00:40,457.457 INFO    ] Checking for system updates...
[2026-06-13 06:00:40,478.478 INFO    ] 200
[2026-06-13 06:00:40,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:40,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:00:40,514.514 INFO    ] No update needed
[2026-06-13 06:00:40,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 06:00:40,535.535 INFO    ] 200
[2026-06-13 06:00:40,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:40,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:00:40,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:00:40,599.599 INFO    ] No camera update needed
[2026-06-13 06:00:40,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:00:40,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:00:40,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:00:40,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:00:42,647.647 INFO    ] ================================================
[2026-06-13 06:00:42,662.662 INFO    ] Launching Daemon at Sat Jun 13 06:00:42 IST 2026
[2026-06-13 06:00:42,673.673 INFO    ] ================================================
[2026-06-13 06:00:43,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:00:43
[2026-06-13 06:00:43,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:00:43,547.547 INFO    ] Initializing speech engine...
[2026-06-13 06:00:43,551.551 INFO    ] 2026-06-13 06:00:43
[2026-06-13 06:00:43,761.761 INFO    ] 2026-06-13 06:00:43
[2026-06-13 06:00:43,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:00:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:00:43,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:00:44,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:00:44,166.166 INFO    ] time= 13/06/2026 06:00:44
[2026-06-13 06:00:44,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:00:44,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:00:44,314.314 INFO    ] No existing commands found in stream
[2026-06-13 06:00:49,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:00:49,326.326 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 06:00:51,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:00:51,759.759 INFO    ] Checking for system updates...
[2026-06-13 06:00:51,781.781 INFO    ] 200
[2026-06-13 06:00:51,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:51,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:00:51,818.818 INFO    ] No update needed
[2026-06-13 06:00:51,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 06:00:51,840.840 INFO    ] 200
[2026-06-13 06:00:51,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:00:51,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:00:51,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:00:51,906.906 INFO    ] No camera update needed
[2026-06-13 06:00:51,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:00:51,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:00:51,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:00:51,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:00:53,954.954 INFO    ] ================================================
[2026-06-13 06:00:53,970.970 INFO    ] Launching Daemon at Sat Jun 13 06:00:53 IST 2026
[2026-06-13 06:00:53,980.980 INFO    ] ================================================
[2026-06-13 06:00:54,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:00:54
[2026-06-13 06:00:54,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:00:54,777.777 INFO    ] Initializing speech engine...
[2026-06-13 06:00:54,785.785 INFO    ] 2026-06-13 06:00:54
[2026-06-13 06:00:55,004.004 INFO    ] 2026-06-13 06:00:54
[2026-06-13 06:00:55,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:00:55,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:00:55,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:00:55,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:00:55,402.402 INFO    ] time= 13/06/2026 06:00:55
[2026-06-13 06:00:55,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:00:55,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:00:55,559.559 INFO    ] No existing commands found in stream
[2026-06-13 06:01:00,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:00,573.573 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 06:01:04,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:01:04,798.798 INFO    ] Checking for system updates...
[2026-06-13 06:01:04,835.835 INFO    ] 200
[2026-06-13 06:01:04,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:04,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:01:04,895.895 INFO    ] No update needed
[2026-06-13 06:01:04,897.897 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:04,926.926 INFO    ] 200
[2026-06-13 06:01:04,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:04,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:04,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:01:04,995.995 INFO    ] No camera update needed
[2026-06-13 06:01:04,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:04,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:05,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:05,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:01:07,043.043 INFO    ] ================================================
[2026-06-13 06:01:07,058.058 INFO    ] Launching Daemon at Sat Jun 13 06:01:07 IST 2026
[2026-06-13 06:01:07,068.068 INFO    ] ================================================
[2026-06-13 06:01:07,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:01:07
[2026-06-13 06:01:07,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:01:07,874.874 INFO    ] Initializing speech engine...
[2026-06-13 06:01:07,883.883 INFO    ] 2026-06-13 06:01:07
[2026-06-13 06:01:08,103.103 INFO    ] 2026-06-13 06:01:08
[2026-06-13 06:01:08,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:01:08,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:01:08,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:01:08,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:01:08,502.502 INFO    ] time= 13/06/2026 06:01:08
[2026-06-13 06:01:08,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:01:08,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:01:08,660.660 INFO    ] No existing commands found in stream
[2026-06-13 06:01:13,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:13,673.673 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 06:01:15,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:01:15,467.467 INFO    ] Checking for system updates...
[2026-06-13 06:01:15,489.489 INFO    ] 200
[2026-06-13 06:01:15,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:15,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:15,522.522 INFO    ] No update needed
[2026-06-13 06:01:15,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:15,543.543 INFO    ] 200
[2026-06-13 06:01:15,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:15,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:15,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:15,708.708 INFO    ] No camera update needed
[2026-06-13 06:01:15,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:15,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:15,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:15,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:01:17,756.756 INFO    ] ================================================
[2026-06-13 06:01:17,771.771 INFO    ] Launching Daemon at Sat Jun 13 06:01:17 IST 2026
[2026-06-13 06:01:17,782.782 INFO    ] ================================================
[2026-06-13 06:01:18,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:01:18
[2026-06-13 06:01:18,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:01:18,583.583 INFO    ] Initializing speech engine...
[2026-06-13 06:01:18,587.587 INFO    ] 2026-06-13 06:01:18
[2026-06-13 06:01:18,792.792 INFO    ] 2026-06-13 06:01:18
[2026-06-13 06:01:18,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:01:19,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:01:19,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:01:19,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:01:19,191.191 INFO    ] time= 13/06/2026 06:01:19
[2026-06-13 06:01:19,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:01:19,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:01:19,305.305 INFO    ] No existing commands found in stream
[2026-06-13 06:01:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:24,316.316 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 06:01:26,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:01:26,220.220 INFO    ] Checking for system updates...
[2026-06-13 06:01:26,257.257 INFO    ] 200
[2026-06-13 06:01:26,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:26,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:26,319.319 INFO    ] No update needed
[2026-06-13 06:01:26,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:26,362.362 INFO    ] 200
[2026-06-13 06:01:26,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:26,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:26,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:01:26,456.456 INFO    ] No camera update needed
[2026-06-13 06:01:26,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:26,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:26,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:26,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:01:28,519.519 INFO    ] ================================================
[2026-06-13 06:01:28,536.536 INFO    ] Launching Daemon at Sat Jun 13 06:01:28 IST 2026
[2026-06-13 06:01:28,548.548 INFO    ] ================================================
[2026-06-13 06:01:29,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:01:29
[2026-06-13 06:01:29,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:01:29,516.516 INFO    ] Initializing speech engine...
[2026-06-13 06:01:29,525.525 INFO    ] 2026-06-13 06:01:29
[2026-06-13 06:01:29,744.744 INFO    ] 2026-06-13 06:01:29
[2026-06-13 06:01:29,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:01:29,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:01:29,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:01:30,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:01:30,055.055 INFO    ] time= 13/06/2026 06:01:30
[2026-06-13 06:01:30,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:01:30,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:01:30,135.135 INFO    ] No existing commands found in stream
[2026-06-13 06:01:35,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:35,161.161 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 06:01:38,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:01:38,713.713 INFO    ] Checking for system updates...
[2026-06-13 06:01:38,734.734 INFO    ] 200
[2026-06-13 06:01:38,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:38,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:38,770.770 INFO    ] No update needed
[2026-06-13 06:01:38,771.771 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:38,791.791 INFO    ] 200
[2026-06-13 06:01:38,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:38,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:38,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:38,839.839 INFO    ] No camera update needed
[2026-06-13 06:01:38,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:38,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:38,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:38,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:01:40,887.887 INFO    ] ================================================
[2026-06-13 06:01:40,902.902 INFO    ] Launching Daemon at Sat Jun 13 06:01:40 IST 2026
[2026-06-13 06:01:40,913.913 INFO    ] ================================================
[2026-06-13 06:01:41,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:01:41
[2026-06-13 06:01:41,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:01:41,708.708 INFO    ] Initializing speech engine...
[2026-06-13 06:01:41,713.713 INFO    ] 2026-06-13 06:01:41
[2026-06-13 06:01:41,917.917 INFO    ] 2026-06-13 06:01:41
[2026-06-13 06:01:41,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:01:42,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:01:42,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:01:42,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:01:42,323.323 INFO    ] time= 13/06/2026 06:01:42
[2026-06-13 06:01:42,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:01:42,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:01:42,435.435 INFO    ] No existing commands found in stream
[2026-06-13 06:01:47,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:47,447.447 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 06:01:49,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:01:49,818.818 INFO    ] Checking for system updates...
[2026-06-13 06:01:49,839.839 INFO    ] 200
[2026-06-13 06:01:49,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:49,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:01:49,871.871 INFO    ] No update needed
[2026-06-13 06:01:49,873.873 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:49,893.893 INFO    ] 200
[2026-06-13 06:01:49,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:49,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:49,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:01:49,963.963 INFO    ] No camera update needed
[2026-06-13 06:01:49,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:49,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:49,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:49,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:01:52,011.011 INFO    ] ================================================
[2026-06-13 06:01:52,026.026 INFO    ] Launching Daemon at Sat Jun 13 06:01:52 IST 2026
[2026-06-13 06:01:52,037.037 INFO    ] ================================================
[2026-06-13 06:01:52,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:01:52
[2026-06-13 06:01:52,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:01:52,881.881 INFO    ] Initializing speech engine...
[2026-06-13 06:01:52,891.891 INFO    ] 2026-06-13 06:01:52
[2026-06-13 06:01:53,094.094 INFO    ] 2026-06-13 06:01:53
[2026-06-13 06:01:53,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:01:53,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:01:53,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:01:53,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:01:53,494.494 INFO    ] time= 13/06/2026 06:01:53
[2026-06-13 06:01:53,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:01:53,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:01:53,616.616 INFO    ] No existing commands found in stream
[2026-06-13 06:01:58,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:01:58,630.630 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 06:01:59,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:01:59,381.381 INFO    ] Checking for system updates...
[2026-06-13 06:01:59,404.404 INFO    ] 200
[2026-06-13 06:01:59,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:59,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:59,441.441 INFO    ] No update needed
[2026-06-13 06:01:59,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 06:01:59,462.462 INFO    ] 200
[2026-06-13 06:01:59,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:01:59,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:01:59,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:01:59,549.549 INFO    ] No camera update needed
[2026-06-13 06:01:59,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:01:59,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:01:59,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:01:59,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:01,621.621 INFO    ] ================================================
[2026-06-13 06:02:01,648.648 INFO    ] Launching Daemon at Sat Jun 13 06:02:01 IST 2026
[2026-06-13 06:02:01,671.671 INFO    ] ================================================
[2026-06-13 06:02:02,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:02
[2026-06-13 06:02:02,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:02:02,963.963 INFO    ] Initializing speech engine...
[2026-06-13 06:02:02,968.968 INFO    ] 2026-06-13 06:02:02
[2026-06-13 06:02:03,192.192 INFO    ] 2026-06-13 06:02:03
[2026-06-13 06:02:03,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:02:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:02:03,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:02:03,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:02:03,527.527 INFO    ] time= 13/06/2026 06:02:03
[2026-06-13 06:02:03,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:02:03,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:02:03,714.714 INFO    ] No existing commands found in stream
[2026-06-13 06:02:08,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:02:08,727.727 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 06:02:10,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:02:10,232.232 INFO    ] Checking for system updates...
[2026-06-13 06:02:10,252.252 INFO    ] 200
[2026-06-13 06:02:10,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:10,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:02:10,285.285 INFO    ] No update needed
[2026-06-13 06:02:10,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 06:02:10,306.306 INFO    ] 200
[2026-06-13 06:02:10,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:10,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:02:10,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:10,378.378 INFO    ] No camera update needed
[2026-06-13 06:02:10,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:02:10,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:02:10,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:02:10,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:12,426.426 INFO    ] ================================================
[2026-06-13 06:02:12,442.442 INFO    ] Launching Daemon at Sat Jun 13 06:02:12 IST 2026
[2026-06-13 06:02:12,457.457 INFO    ] ================================================
[2026-06-13 06:02:12,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:12
[2026-06-13 06:02:13,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:02:13,247.247 INFO    ] Initializing speech engine...
[2026-06-13 06:02:13,257.257 INFO    ] 2026-06-13 06:02:13
[2026-06-13 06:02:13,460.460 INFO    ] 2026-06-13 06:02:13
[2026-06-13 06:02:13,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:02:13,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:02:13,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:02:13,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:02:13,859.859 INFO    ] time= 13/06/2026 06:02:13
[2026-06-13 06:02:13,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:02:13,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:02:13,974.974 INFO    ] No existing commands found in stream
[2026-06-13 06:02:18,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:02:18,986.986 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 06:02:23,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:02:23,186.186 INFO    ] Checking for system updates...
[2026-06-13 06:02:23,207.207 INFO    ] 200
[2026-06-13 06:02:23,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:23,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:23,243.243 INFO    ] No update needed
[2026-06-13 06:02:23,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 06:02:23,264.264 INFO    ] 200
[2026-06-13 06:02:23,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:23,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:02:23,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:23,329.329 INFO    ] No camera update needed
[2026-06-13 06:02:23,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:02:23,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:02:23,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:02:23,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:25,377.377 INFO    ] ================================================
[2026-06-13 06:02:25,393.393 INFO    ] Launching Daemon at Sat Jun 13 06:02:25 IST 2026
[2026-06-13 06:02:25,404.404 INFO    ] ================================================
[2026-06-13 06:02:25,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:25
[2026-06-13 06:02:26,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:02:26,220.220 INFO    ] Initializing speech engine...
[2026-06-13 06:02:26,226.226 INFO    ] 2026-06-13 06:02:26
[2026-06-13 06:02:26,428.428 INFO    ] 2026-06-13 06:02:26
[2026-06-13 06:02:26,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:02:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:02:26,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:02:26,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:02:26,832.832 INFO    ] time= 13/06/2026 06:02:26
[2026-06-13 06:02:26,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:02:26,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:02:26,940.940 INFO    ] No existing commands found in stream
[2026-06-13 06:02:31,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:02:31,952.952 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 06:02:32,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:02:32,786.786 INFO    ] Checking for system updates...
[2026-06-13 06:02:32,809.809 INFO    ] 200
[2026-06-13 06:02:32,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:32,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:32,844.844 INFO    ] No update needed
[2026-06-13 06:02:32,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 06:02:32,865.865 INFO    ] 200
[2026-06-13 06:02:32,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:32,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:02:32,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:32,942.942 INFO    ] No camera update needed
[2026-06-13 06:02:32,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:02:32,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:02:32,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:02:32,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:34,984.984 INFO    ] ================================================
[2026-06-13 06:02:34,993.993 INFO    ] Launching Daemon at Sat Jun 13 06:02:34 IST 2026
[2026-06-13 06:02:35,999.999 INFO    ] ================================================
[2026-06-13 06:02:35,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:35
[2026-06-13 06:02:35,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:02:35,839.839 INFO    ] Initializing speech engine...
[2026-06-13 06:02:35,841.841 INFO    ] 2026-06-13 06:02:35
[2026-06-13 06:02:36,044.044 INFO    ] 2026-06-13 06:02:36
[2026-06-13 06:02:36,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:02:36,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:02:36,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:02:36,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:02:36,339.339 INFO    ] time= 13/06/2026 06:02:36
[2026-06-13 06:02:36,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:02:36,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:02:36,421.421 INFO    ] No existing commands found in stream
[2026-06-13 06:02:41,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:02:41,442.442 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 06:02:44,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:02:44,421.421 INFO    ] Checking for system updates...
[2026-06-13 06:02:44,442.442 INFO    ] 200
[2026-06-13 06:02:44,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:44,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:44,476.476 INFO    ] No update needed
[2026-06-13 06:02:44,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 06:02:44,499.499 INFO    ] 200
[2026-06-13 06:02:44,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:44,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:02:44,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:02:44,562.562 INFO    ] No camera update needed
[2026-06-13 06:02:44,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:02:44,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:02:44,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:02:44,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:46,610.610 INFO    ] ================================================
[2026-06-13 06:02:46,626.626 INFO    ] Launching Daemon at Sat Jun 13 06:02:46 IST 2026
[2026-06-13 06:02:46,637.637 INFO    ] ================================================
[2026-06-13 06:02:46,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:46
[2026-06-13 06:02:47,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:02:47,485.485 INFO    ] Initializing speech engine...
[2026-06-13 06:02:47,495.495 INFO    ] 2026-06-13 06:02:47
[2026-06-13 06:02:47,703.703 INFO    ] 2026-06-13 06:02:47
[2026-06-13 06:02:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:02:47,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:02:47,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:02:48,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:02:48,124.124 INFO    ] time= 13/06/2026 06:02:48
[2026-06-13 06:02:48,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:02:48,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:02:48,220.220 INFO    ] No existing commands found in stream
[2026-06-13 06:02:53,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:02:53,235.235 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 06:02:56,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:02:56,963.963 INFO    ] Checking for system updates...
[2026-06-13 06:02:56,984.984 INFO    ] 200
[2026-06-13 06:02:56,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:57,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:02:57,017.017 INFO    ] No update needed
[2026-06-13 06:02:57,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 06:02:57,040.040 INFO    ] 200
[2026-06-13 06:02:57,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:02:57,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:02:57,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:02:57,113.113 INFO    ] No camera update needed
[2026-06-13 06:02:57,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:02:57,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:02:57,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:02:57,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:02:59,162.162 INFO    ] ================================================
[2026-06-13 06:02:59,177.177 INFO    ] Launching Daemon at Sat Jun 13 06:02:59 IST 2026
[2026-06-13 06:02:59,189.189 INFO    ] ================================================
[2026-06-13 06:02:59,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:02:59
[2026-06-13 06:02:59,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:00,051.051 INFO    ] Initializing speech engine...
[2026-06-13 06:03:00,054.054 INFO    ] 2026-06-13 06:03:00
[2026-06-13 06:03:00,263.263 INFO    ] 2026-06-13 06:03:00
[2026-06-13 06:03:00,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:00,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:00,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:00,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:00,661.661 INFO    ] time= 13/06/2026 06:03:00
[2026-06-13 06:03:00,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:00,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:00,780.780 INFO    ] No existing commands found in stream
[2026-06-13 06:03:05,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:03:05,794.794 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 06:03:08,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:03:08,688.688 INFO    ] Checking for system updates...
[2026-06-13 06:03:08,709.709 INFO    ] 200
[2026-06-13 06:03:08,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:08,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:08,742.742 INFO    ] No update needed
[2026-06-13 06:03:08,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 06:03:08,765.765 INFO    ] 200
[2026-06-13 06:03:08,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:08,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:03:08,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:08,830.830 INFO    ] No camera update needed
[2026-06-13 06:03:08,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:03:08,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:03:08,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:03:08,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:03:10,880.880 INFO    ] ================================================
[2026-06-13 06:03:10,896.896 INFO    ] Launching Daemon at Sat Jun 13 06:03:10 IST 2026
[2026-06-13 06:03:10,907.907 INFO    ] ================================================
[2026-06-13 06:03:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:03:11
[2026-06-13 06:03:11,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:11,727.727 INFO    ] Initializing speech engine...
[2026-06-13 06:03:11,732.732 INFO    ] 2026-06-13 06:03:11
[2026-06-13 06:03:11,936.936 INFO    ] 2026-06-13 06:03:11
[2026-06-13 06:03:11,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:12,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:12,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:12,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:12,340.340 INFO    ] time= 13/06/2026 06:03:12
[2026-06-13 06:03:12,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:12,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:12,529.529 INFO    ] No existing commands found in stream
[2026-06-13 06:03:17,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:03:17,549.549 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 06:03:18,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:03:18,401.401 INFO    ] Checking for system updates...
[2026-06-13 06:03:18,422.422 INFO    ] 200
[2026-06-13 06:03:18,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:18,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:18,458.458 INFO    ] No update needed
[2026-06-13 06:03:18,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 06:03:18,480.480 INFO    ] 200
[2026-06-13 06:03:18,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:18,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:03:18,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:18,659.659 INFO    ] No camera update needed
[2026-06-13 06:03:18,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:03:18,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:03:18,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:03:18,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:03:20,716.716 INFO    ] ================================================
[2026-06-13 06:03:20,732.732 INFO    ] Launching Daemon at Sat Jun 13 06:03:20 IST 2026
[2026-06-13 06:03:20,743.743 INFO    ] ================================================
[2026-06-13 06:03:21,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:03:21
[2026-06-13 06:03:21,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:21,863.863 INFO    ] Initializing speech engine...
[2026-06-13 06:03:21,867.867 INFO    ] 2026-06-13 06:03:21
[2026-06-13 06:03:22,095.095 INFO    ] 2026-06-13 06:03:22
[2026-06-13 06:03:22,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:22,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:22,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:22,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:22,540.540 INFO    ] time= 13/06/2026 06:03:22
[2026-06-13 06:03:22,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:22,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:22,652.652 INFO    ] No existing commands found in stream
[2026-06-13 06:03:27,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:03:27,665.665 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 06:03:30,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:03:30,201.201 INFO    ] Checking for system updates...
[2026-06-13 06:03:30,222.222 INFO    ] 200
[2026-06-13 06:03:30,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:30,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:30,257.257 INFO    ] No update needed
[2026-06-13 06:03:30,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 06:03:30,278.278 INFO    ] 200
[2026-06-13 06:03:30,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:30,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:03:30,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:03:30,341.341 INFO    ] No camera update needed
[2026-06-13 06:03:30,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:03:30,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:03:30,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:03:30,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:03:32,390.390 INFO    ] ================================================
[2026-06-13 06:03:32,406.406 INFO    ] Launching Daemon at Sat Jun 13 06:03:32 IST 2026
[2026-06-13 06:03:32,417.417 INFO    ] ================================================
[2026-06-13 06:03:32,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:03:32
[2026-06-13 06:03:33,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:33,265.265 INFO    ] Initializing speech engine...
[2026-06-13 06:03:33,275.275 INFO    ] 2026-06-13 06:03:33
[2026-06-13 06:03:33,484.484 INFO    ] 2026-06-13 06:03:33
[2026-06-13 06:03:33,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:33,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:33,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:33,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:33,905.905 INFO    ] time= 13/06/2026 06:03:33
[2026-06-13 06:03:33,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:33,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:34,001.001 INFO    ] No existing commands found in stream
[2026-06-13 06:03:39,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:03:39,019.019 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 06:03:41,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:03:41,442.442 INFO    ] Checking for system updates...
[2026-06-13 06:03:41,463.463 INFO    ] 200
[2026-06-13 06:03:41,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:41,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:03:41,497.497 INFO    ] No update needed
[2026-06-13 06:03:41,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 06:03:41,518.518 INFO    ] 200
[2026-06-13 06:03:41,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:41,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:03:41,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:03:41,587.587 INFO    ] No camera update needed
[2026-06-13 06:03:41,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:03:41,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:03:41,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:03:41,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:03:43,634.634 INFO    ] ================================================
[2026-06-13 06:03:43,650.650 INFO    ] Launching Daemon at Sat Jun 13 06:03:43 IST 2026
[2026-06-13 06:03:43,661.661 INFO    ] ================================================
[2026-06-13 06:03:44,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:03:44
[2026-06-13 06:03:44,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:44,527.527 INFO    ] Initializing speech engine...
[2026-06-13 06:03:44,531.531 INFO    ] 2026-06-13 06:03:44
[2026-06-13 06:03:44,737.737 INFO    ] 2026-06-13 06:03:44
[2026-06-13 06:03:44,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:44,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:44,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:45,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:45,155.155 INFO    ] time= 13/06/2026 06:03:45
[2026-06-13 06:03:45,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:45,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:45,252.252 INFO    ] No existing commands found in stream
[2026-06-13 06:03:50,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:03:50,270.270 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 06:03:53,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:03:53,351.351 INFO    ] Checking for system updates...
[2026-06-13 06:03:53,372.372 INFO    ] 200
[2026-06-13 06:03:53,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:53,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:03:53,406.406 INFO    ] No update needed
[2026-06-13 06:03:53,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 06:03:53,428.428 INFO    ] 200
[2026-06-13 06:03:53,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:03:53,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:03:53,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:03:53,495.495 INFO    ] No camera update needed
[2026-06-13 06:03:53,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:03:53,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:03:53,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:03:53,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:03:55,542.542 INFO    ] ================================================
[2026-06-13 06:03:55,558.558 INFO    ] Launching Daemon at Sat Jun 13 06:03:55 IST 2026
[2026-06-13 06:03:55,570.570 INFO    ] ================================================
[2026-06-13 06:03:55,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:03:55
[2026-06-13 06:03:56,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:03:56,376.376 INFO    ] Initializing speech engine...
[2026-06-13 06:03:56,390.390 INFO    ] 2026-06-13 06:03:56
[2026-06-13 06:03:56,608.608 INFO    ] 2026-06-13 06:03:56
[2026-06-13 06:03:56,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:03:56,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:03:56,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:03:56,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:03:57,025.025 INFO    ] time= 13/06/2026 06:03:56
[2026-06-13 06:03:57,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:03:57,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:03:57,162.162 INFO    ] No existing commands found in stream
[2026-06-13 06:04:02,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:02,172.172 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 06:04:04,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:04:04,563.563 INFO    ] Checking for system updates...
[2026-06-13 06:04:04,603.603 INFO    ] 200
[2026-06-13 06:04:04,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:04,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:04,661.661 INFO    ] No update needed
[2026-06-13 06:04:04,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:04,697.697 INFO    ] 200
[2026-06-13 06:04:04,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:04,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:04,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:04,791.791 INFO    ] No camera update needed
[2026-06-13 06:04:04,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:04,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:04,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:04,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:06,847.847 INFO    ] ================================================
[2026-06-13 06:04:06,862.862 INFO    ] Launching Daemon at Sat Jun 13 06:04:06 IST 2026
[2026-06-13 06:04:06,873.873 INFO    ] ================================================
[2026-06-13 06:04:07,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:07
[2026-06-13 06:04:07,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:04:07,661.661 INFO    ] Initializing speech engine...
[2026-06-13 06:04:07,674.674 INFO    ] 2026-06-13 06:04:07
[2026-06-13 06:04:07,891.891 INFO    ] 2026-06-13 06:04:07
[2026-06-13 06:04:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:04:08,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:04:08,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:04:08,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:04:08,267.267 INFO    ] time= 13/06/2026 06:04:08
[2026-06-13 06:04:08,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:04:08,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:04:08,450.450 INFO    ] No existing commands found in stream
[2026-06-13 06:04:13,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:13,463.463 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 06:04:14,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:04:14,330.330 INFO    ] Checking for system updates...
[2026-06-13 06:04:14,351.351 INFO    ] 200
[2026-06-13 06:04:14,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:14,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:14,384.384 INFO    ] No update needed
[2026-06-13 06:04:14,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:14,409.409 INFO    ] 200
[2026-06-13 06:04:14,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:14,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:14,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:14,484.484 INFO    ] No camera update needed
[2026-06-13 06:04:14,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:14,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:14,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:14,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:16,532.532 INFO    ] ================================================
[2026-06-13 06:04:16,548.548 INFO    ] Launching Daemon at Sat Jun 13 06:04:16 IST 2026
[2026-06-13 06:04:16,559.559 INFO    ] ================================================
[2026-06-13 06:04:16,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:16
[2026-06-13 06:04:17,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:04:17,388.388 INFO    ] Initializing speech engine...
[2026-06-13 06:04:17,398.398 INFO    ] 2026-06-13 06:04:17
[2026-06-13 06:04:17,606.606 INFO    ] 2026-06-13 06:04:17
[2026-06-13 06:04:17,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:04:17,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:04:17,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:04:17,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:04:18,013.013 INFO    ] time= 13/06/2026 06:04:17
[2026-06-13 06:04:18,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:04:18,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:04:18,122.122 INFO    ] No existing commands found in stream
[2026-06-13 06:04:23,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:23,136.136 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 06:04:24,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:04:24,014.014 INFO    ] Checking for system updates...
[2026-06-13 06:04:24,035.035 INFO    ] 200
[2026-06-13 06:04:24,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:24,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:24,072.072 INFO    ] No update needed
[2026-06-13 06:04:24,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:24,093.093 INFO    ] 200
[2026-06-13 06:04:24,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:24,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:24,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:24,161.161 INFO    ] No camera update needed
[2026-06-13 06:04:24,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:24,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:24,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:24,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:26,210.210 INFO    ] ================================================
[2026-06-13 06:04:26,225.225 INFO    ] Launching Daemon at Sat Jun 13 06:04:26 IST 2026
[2026-06-13 06:04:26,236.236 INFO    ] ================================================
[2026-06-13 06:04:26,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:26
[2026-06-13 06:04:26,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:04:27,009.009 INFO    ] Initializing speech engine...
[2026-06-13 06:04:27,012.012 INFO    ] 2026-06-13 06:04:27
[2026-06-13 06:04:27,230.230 INFO    ] 2026-06-13 06:04:27
[2026-06-13 06:04:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:04:27,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:04:27,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:04:27,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:04:27,638.638 INFO    ] time= 13/06/2026 06:04:27
[2026-06-13 06:04:27,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:04:27,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:04:27,754.754 INFO    ] No existing commands found in stream
[2026-06-13 06:04:32,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:32,762.762 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 06:04:35,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:04:35,131.131 INFO    ] Checking for system updates...
[2026-06-13 06:04:35,151.151 INFO    ] 200
[2026-06-13 06:04:35,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:35,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:35,186.186 INFO    ] No update needed
[2026-06-13 06:04:35,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:35,207.207 INFO    ] 200
[2026-06-13 06:04:35,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:35,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:35,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:35,281.281 INFO    ] No camera update needed
[2026-06-13 06:04:35,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:35,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:35,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:35,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:37,329.329 INFO    ] ================================================
[2026-06-13 06:04:37,345.345 INFO    ] Launching Daemon at Sat Jun 13 06:04:37 IST 2026
[2026-06-13 06:04:37,355.355 INFO    ] ================================================
[2026-06-13 06:04:37,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:37
[2026-06-13 06:04:38,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:04:38,153.153 INFO    ] Initializing speech engine...
[2026-06-13 06:04:38,158.158 INFO    ] 2026-06-13 06:04:38
[2026-06-13 06:04:38,363.363 INFO    ] 2026-06-13 06:04:38
[2026-06-13 06:04:38,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:04:38,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:04:38,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:04:38,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:04:38,774.774 INFO    ] time= 13/06/2026 06:04:38
[2026-06-13 06:04:38,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:04:38,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:04:38,878.878 INFO    ] No existing commands found in stream
[2026-06-13 06:04:43,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:43,892.892 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 06:04:45,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:04:45,212.212 INFO    ] Checking for system updates...
[2026-06-13 06:04:45,232.232 INFO    ] 200
[2026-06-13 06:04:45,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:45,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:45,265.265 INFO    ] No update needed
[2026-06-13 06:04:45,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:45,286.286 INFO    ] 200
[2026-06-13 06:04:45,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:45,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:45,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:04:45,351.351 INFO    ] No camera update needed
[2026-06-13 06:04:45,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:45,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:45,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:45,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:47,399.399 INFO    ] ================================================
[2026-06-13 06:04:47,414.414 INFO    ] Launching Daemon at Sat Jun 13 06:04:47 IST 2026
[2026-06-13 06:04:47,426.426 INFO    ] ================================================
[2026-06-13 06:04:47,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:47
[2026-06-13 06:04:48,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:04:48,243.243 INFO    ] Initializing speech engine...
[2026-06-13 06:04:48,249.249 INFO    ] 2026-06-13 06:04:48
[2026-06-13 06:04:48,454.454 INFO    ] 2026-06-13 06:04:48
[2026-06-13 06:04:48,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:04:48,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:04:48,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:04:48,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:04:48,873.873 INFO    ] time= 13/06/2026 06:04:48
[2026-06-13 06:04:48,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:04:48,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:04:48,968.968 INFO    ] No existing commands found in stream
[2026-06-13 06:04:53,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:04:53,986.986 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 06:04:56,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:04:56,526.526 INFO    ] Checking for system updates...
[2026-06-13 06:04:56,548.548 INFO    ] 200
[2026-06-13 06:04:56,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:56,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:56,582.582 INFO    ] No update needed
[2026-06-13 06:04:56,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 06:04:56,603.603 INFO    ] 200
[2026-06-13 06:04:56,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:04:56,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:04:56,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:04:56,670.670 INFO    ] No camera update needed
[2026-06-13 06:04:56,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:04:56,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:04:56,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:04:56,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:04:58,719.719 INFO    ] ================================================
[2026-06-13 06:04:58,735.735 INFO    ] Launching Daemon at Sat Jun 13 06:04:58 IST 2026
[2026-06-13 06:04:58,747.747 INFO    ] ================================================
[2026-06-13 06:04:59,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:04:59
[2026-06-13 06:04:59,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:00,178.178 INFO    ] Initializing speech engine...
[2026-06-13 06:05:00,192.192 INFO    ] 2026-06-13 06:05:00
[2026-06-13 06:05:00,481.481 INFO    ] 2026-06-13 06:05:00
[2026-06-13 06:05:00,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:00,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:00,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:00,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:01,012.012 INFO    ] time= 13/06/2026 06:05:00
[2026-06-13 06:05:01,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:01,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:01,160.160 INFO    ] No existing commands found in stream
[2026-06-13 06:05:06,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:05:06,191.191 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 06:05:09,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:05:09,385.385 INFO    ] Checking for system updates...
[2026-06-13 06:05:09,406.406 INFO    ] 200
[2026-06-13 06:05:09,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:09,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:09,440.440 INFO    ] No update needed
[2026-06-13 06:05:09,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 06:05:09,461.461 INFO    ] 200
[2026-06-13 06:05:09,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:09,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:05:09,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:09,524.524 INFO    ] No camera update needed
[2026-06-13 06:05:09,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:05:09,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:05:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:05:09,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:05:11,571.571 INFO    ] ================================================
[2026-06-13 06:05:11,587.587 INFO    ] Launching Daemon at Sat Jun 13 06:05:11 IST 2026
[2026-06-13 06:05:11,598.598 INFO    ] ================================================
[2026-06-13 06:05:11,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:05:11
[2026-06-13 06:05:12,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:12,402.402 INFO    ] Initializing speech engine...
[2026-06-13 06:05:12,407.407 INFO    ] 2026-06-13 06:05:12
[2026-06-13 06:05:12,609.609 INFO    ] 2026-06-13 06:05:12
[2026-06-13 06:05:12,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:12,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:12,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:12,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:13,009.009 INFO    ] time= 13/06/2026 06:05:12
[2026-06-13 06:05:13,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:13,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:13,122.122 INFO    ] No existing commands found in stream
[2026-06-13 06:05:18,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:05:18,136.136 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 06:05:21,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:05:21,693.693 INFO    ] Checking for system updates...
[2026-06-13 06:05:21,714.714 INFO    ] 200
[2026-06-13 06:05:21,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:21,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:05:21,750.750 INFO    ] No update needed
[2026-06-13 06:05:21,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 06:05:21,771.771 INFO    ] 200
[2026-06-13 06:05:21,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:21,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:05:21,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:05:21,939.939 INFO    ] No camera update needed
[2026-06-13 06:05:21,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:05:21,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:05:21,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:05:21,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:05:23,988.988 INFO    ] ================================================
[2026-06-13 06:05:24,004.004 INFO    ] Launching Daemon at Sat Jun 13 06:05:23 IST 2026
[2026-06-13 06:05:24,015.015 INFO    ] ================================================
[2026-06-13 06:05:24,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:05:24
[2026-06-13 06:05:24,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:24,819.819 INFO    ] Initializing speech engine...
[2026-06-13 06:05:24,825.825 INFO    ] 2026-06-13 06:05:24
[2026-06-13 06:05:25,039.039 INFO    ] 2026-06-13 06:05:25
[2026-06-13 06:05:25,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:25,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:25,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:25,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:25,458.458 INFO    ] time= 13/06/2026 06:05:25
[2026-06-13 06:05:25,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:25,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:25,594.594 INFO    ] No existing commands found in stream
[2026-06-13 06:05:30,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:05:30,607.607 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 06:05:31,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:05:31,036.036 INFO    ] Checking for system updates...
[2026-06-13 06:05:31,058.058 INFO    ] 200
[2026-06-13 06:05:31,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:31,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:31,091.091 INFO    ] No update needed
[2026-06-13 06:05:31,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 06:05:31,112.112 INFO    ] 200
[2026-06-13 06:05:31,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:31,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:05:31,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:31,182.182 INFO    ] No camera update needed
[2026-06-13 06:05:31,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:05:31,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:05:31,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:05:31,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:05:33,223.223 INFO    ] ================================================
[2026-06-13 06:05:33,238.238 INFO    ] Launching Daemon at Sat Jun 13 06:05:33 IST 2026
[2026-06-13 06:05:33,250.250 INFO    ] ================================================
[2026-06-13 06:05:33,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:05:33
[2026-06-13 06:05:33,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:34,071.071 INFO    ] Initializing speech engine...
[2026-06-13 06:05:34,077.077 INFO    ] 2026-06-13 06:05:34
[2026-06-13 06:05:34,306.306 INFO    ] 2026-06-13 06:05:34
[2026-06-13 06:05:34,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:34,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:34,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:34,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:34,696.696 INFO    ] time= 13/06/2026 06:05:34
[2026-06-13 06:05:34,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:34,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:34,856.856 INFO    ] No existing commands found in stream
[2026-06-13 06:05:39,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:05:39,870.870 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 06:05:41,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:05:41,251.251 INFO    ] Checking for system updates...
[2026-06-13 06:05:41,271.271 INFO    ] 200
[2026-06-13 06:05:41,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:41,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:41,304.304 INFO    ] No update needed
[2026-06-13 06:05:41,306.306 INFO    ] Checking for camera pi updates...
[2026-06-13 06:05:41,325.325 INFO    ] 200
[2026-06-13 06:05:41,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:41,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:05:41,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:41,393.393 INFO    ] No camera update needed
[2026-06-13 06:05:41,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:05:41,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:05:41,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:05:41,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:05:43,440.440 INFO    ] ================================================
[2026-06-13 06:05:43,455.455 INFO    ] Launching Daemon at Sat Jun 13 06:05:43 IST 2026
[2026-06-13 06:05:43,466.466 INFO    ] ================================================
[2026-06-13 06:05:43,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:05:43
[2026-06-13 06:05:44,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:44,622.622 INFO    ] Initializing speech engine...
[2026-06-13 06:05:44,631.631 INFO    ] 2026-06-13 06:05:44
[2026-06-13 06:05:44,880.880 INFO    ] 2026-06-13 06:05:44
[2026-06-13 06:05:44,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:45,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:45,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:45,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:45,314.314 INFO    ] time= 13/06/2026 06:05:45
[2026-06-13 06:05:45,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:45,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:45,567.567 INFO    ] No existing commands found in stream
[2026-06-13 06:05:50,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:05:50,600.600 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 06:05:51,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:05:51,510.510 INFO    ] Checking for system updates...
[2026-06-13 06:05:51,531.531 INFO    ] 200
[2026-06-13 06:05:51,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:51,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:51,566.566 INFO    ] No update needed
[2026-06-13 06:05:51,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 06:05:51,587.587 INFO    ] 200
[2026-06-13 06:05:51,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:05:51,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:05:51,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:05:51,660.660 INFO    ] No camera update needed
[2026-06-13 06:05:51,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:05:51,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:05:51,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:05:51,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:05:53,709.709 INFO    ] ================================================
[2026-06-13 06:05:53,725.725 INFO    ] Launching Daemon at Sat Jun 13 06:05:53 IST 2026
[2026-06-13 06:05:53,737.737 INFO    ] ================================================
[2026-06-13 06:05:54,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:05:54
[2026-06-13 06:05:54,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:05:54,551.551 INFO    ] Initializing speech engine...
[2026-06-13 06:05:54,556.556 INFO    ] 2026-06-13 06:05:54
[2026-06-13 06:05:54,760.760 INFO    ] 2026-06-13 06:05:54
[2026-06-13 06:05:54,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:05:54,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:05:54,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:05:55,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:05:55,158.158 INFO    ] time= 13/06/2026 06:05:55
[2026-06-13 06:05:55,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:05:55,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:05:55,399.399 INFO    ] No existing commands found in stream
[2026-06-13 06:06:00,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:00,415.415 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 06:06:02,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:06:02,366.366 INFO    ] Checking for system updates...
[2026-06-13 06:06:02,425.425 INFO    ] 200
[2026-06-13 06:06:02,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:02,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:02,513.513 INFO    ] No update needed
[2026-06-13 06:06:02,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:02,561.561 INFO    ] 200
[2026-06-13 06:06:02,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:02,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:02,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:02,644.644 INFO    ] No camera update needed
[2026-06-13 06:06:02,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:02,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:02,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:02,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:06:04,701.701 INFO    ] ================================================
[2026-06-13 06:06:04,716.716 INFO    ] Launching Daemon at Sat Jun 13 06:06:04 IST 2026
[2026-06-13 06:06:04,727.727 INFO    ] ================================================
[2026-06-13 06:06:05,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:06:05
[2026-06-13 06:06:05,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:06:05,536.536 INFO    ] Initializing speech engine...
[2026-06-13 06:06:05,543.543 INFO    ] 2026-06-13 06:06:05
[2026-06-13 06:06:05,777.777 INFO    ] 2026-06-13 06:06:05
[2026-06-13 06:06:05,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:06:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:06:06,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:06:06,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:06:06,230.230 INFO    ] time= 13/06/2026 06:06:06
[2026-06-13 06:06:06,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:06:06,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:06:06,335.335 INFO    ] No existing commands found in stream
[2026-06-13 06:06:11,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:11,349.349 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 06:06:13,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:06:13,170.170 INFO    ] Checking for system updates...
[2026-06-13 06:06:13,190.190 INFO    ] 200
[2026-06-13 06:06:13,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:13,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:06:13,223.223 INFO    ] No update needed
[2026-06-13 06:06:13,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:13,244.244 INFO    ] 200
[2026-06-13 06:06:13,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:13,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:13,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:06:13,292.292 INFO    ] No camera update needed
[2026-06-13 06:06:13,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:13,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:13,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:13,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:06:15,341.341 INFO    ] ================================================
[2026-06-13 06:06:15,356.356 INFO    ] Launching Daemon at Sat Jun 13 06:06:15 IST 2026
[2026-06-13 06:06:15,367.367 INFO    ] ================================================
[2026-06-13 06:06:15,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:06:15
[2026-06-13 06:06:16,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:06:16,177.177 INFO    ] Initializing speech engine...
[2026-06-13 06:06:16,197.197 INFO    ] 2026-06-13 06:06:16
[2026-06-13 06:06:16,413.413 INFO    ] 2026-06-13 06:06:16
[2026-06-13 06:06:16,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:06:16,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:06:16,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:06:16,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:06:16,830.830 INFO    ] time= 13/06/2026 06:06:16
[2026-06-13 06:06:16,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:06:16,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:06:16,965.965 INFO    ] No existing commands found in stream
[2026-06-13 06:06:21,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:21,979.979 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 06:06:27,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:06:27,650.650 INFO    ] Checking for system updates...
[2026-06-13 06:06:27,689.689 INFO    ] 200
[2026-06-13 06:06:27,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:27,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:27,747.747 INFO    ] No update needed
[2026-06-13 06:06:27,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:27,785.785 INFO    ] 200
[2026-06-13 06:06:27,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:27,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:27,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:27,877.877 INFO    ] No camera update needed
[2026-06-13 06:06:27,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:27,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:27,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:27,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:06:29,934.934 INFO    ] ================================================
[2026-06-13 06:06:29,949.949 INFO    ] Launching Daemon at Sat Jun 13 06:06:29 IST 2026
[2026-06-13 06:06:29,960.960 INFO    ] ================================================
[2026-06-13 06:06:30,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:06:30
[2026-06-13 06:06:30,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:06:30,735.735 INFO    ] Initializing speech engine...
[2026-06-13 06:06:30,740.740 INFO    ] 2026-06-13 06:06:30
[2026-06-13 06:06:30,958.958 INFO    ] 2026-06-13 06:06:30
[2026-06-13 06:06:30,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:06:31,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:06:31,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:06:31,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:06:31,403.403 INFO    ] time= 13/06/2026 06:06:31
[2026-06-13 06:06:31,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:06:31,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:06:31,571.571 INFO    ] No existing commands found in stream
[2026-06-13 06:06:36,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:36,583.583 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 06:06:38,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:06:38,010.010 INFO    ] Checking for system updates...
[2026-06-13 06:06:38,031.031 INFO    ] 200
[2026-06-13 06:06:38,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:38,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:38,064.064 INFO    ] No update needed
[2026-06-13 06:06:38,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:38,084.084 INFO    ] 200
[2026-06-13 06:06:38,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:38,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:38,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:38,148.148 INFO    ] No camera update needed
[2026-06-13 06:06:38,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:38,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:38,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:38,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:06:40,193.193 INFO    ] ================================================
[2026-06-13 06:06:40,208.208 INFO    ] Launching Daemon at Sat Jun 13 06:06:40 IST 2026
[2026-06-13 06:06:40,220.220 INFO    ] ================================================
[2026-06-13 06:06:40,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:06:40
[2026-06-13 06:06:40,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:06:40,997.997 INFO    ] Initializing speech engine...
[2026-06-13 06:06:41,005.005 INFO    ] 2026-06-13 06:06:40
[2026-06-13 06:06:41,228.228 INFO    ] 2026-06-13 06:06:41
[2026-06-13 06:06:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:06:41,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:06:41,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:06:41,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:06:41,651.651 INFO    ] time= 13/06/2026 06:06:41
[2026-06-13 06:06:41,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:06:41,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:06:41,781.781 INFO    ] No existing commands found in stream
[2026-06-13 06:06:46,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:46,792.792 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 06:06:47,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:06:47,691.691 INFO    ] Checking for system updates...
[2026-06-13 06:06:47,712.712 INFO    ] 200
[2026-06-13 06:06:47,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:47,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:47,744.744 INFO    ] No update needed
[2026-06-13 06:06:47,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:47,766.766 INFO    ] 200
[2026-06-13 06:06:47,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:47,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:47,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:47,844.844 INFO    ] No camera update needed
[2026-06-13 06:06:47,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:47,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:47,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:47,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:06:49,891.891 INFO    ] ================================================
[2026-06-13 06:06:49,907.907 INFO    ] Launching Daemon at Sat Jun 13 06:06:49 IST 2026
[2026-06-13 06:06:49,918.918 INFO    ] ================================================
[2026-06-13 06:06:50,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:06:50
[2026-06-13 06:06:50,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:06:50,721.721 INFO    ] Initializing speech engine...
[2026-06-13 06:06:50,725.725 INFO    ] 2026-06-13 06:06:50
[2026-06-13 06:06:50,925.925 INFO    ] 2026-06-13 06:06:50
[2026-06-13 06:06:50,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:06:51,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:06:51,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:06:51,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:06:51,325.325 INFO    ] time= 13/06/2026 06:06:51
[2026-06-13 06:06:51,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:06:51,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:06:51,565.565 INFO    ] No existing commands found in stream
[2026-06-13 06:06:56,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:06:56,577.577 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 06:06:58,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:06:58,234.234 INFO    ] Checking for system updates...
[2026-06-13 06:06:58,255.255 INFO    ] 200
[2026-06-13 06:06:58,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:58,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:58,290.290 INFO    ] No update needed
[2026-06-13 06:06:58,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 06:06:58,311.311 INFO    ] 200
[2026-06-13 06:06:58,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:06:58,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:06:58,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:06:58,383.383 INFO    ] No camera update needed
[2026-06-13 06:06:58,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:06:58,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:06:58,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:06:58,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:00,430.430 INFO    ] ================================================
[2026-06-13 06:07:00,446.446 INFO    ] Launching Daemon at Sat Jun 13 06:07:00 IST 2026
[2026-06-13 06:07:00,457.457 INFO    ] ================================================
[2026-06-13 06:07:00,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:00
[2026-06-13 06:07:01,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:01,242.242 INFO    ] Initializing speech engine...
[2026-06-13 06:07:01,245.245 INFO    ] 2026-06-13 06:07:01
[2026-06-13 06:07:01,465.465 INFO    ] 2026-06-13 06:07:01
[2026-06-13 06:07:01,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:07:01,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:07:01,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:07:01,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:07:01,859.859 INFO    ] time= 13/06/2026 06:07:01
[2026-06-13 06:07:01,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:07:01,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:07:01,942.942 INFO    ] No existing commands found in stream
[2026-06-13 06:07:06,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:07:06,954.954 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 06:07:10,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:07:10,790.790 INFO    ] Checking for system updates...
[2026-06-13 06:07:10,811.811 INFO    ] 200
[2026-06-13 06:07:10,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:10,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:07:10,847.847 INFO    ] No update needed
[2026-06-13 06:07:10,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 06:07:10,869.869 INFO    ] 200
[2026-06-13 06:07:10,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:10,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:07:10,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:10,938.938 INFO    ] No camera update needed
[2026-06-13 06:07:10,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:07:10,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:07:10,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:07:10,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:12,988.988 INFO    ] ================================================
[2026-06-13 06:07:13,004.004 INFO    ] Launching Daemon at Sat Jun 13 06:07:12 IST 2026
[2026-06-13 06:07:13,015.015 INFO    ] ================================================
[2026-06-13 06:07:13,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:13
[2026-06-13 06:07:13,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:13,795.795 INFO    ] Initializing speech engine...
[2026-06-13 06:07:13,803.803 INFO    ] 2026-06-13 06:07:13
[2026-06-13 06:07:14,084.084 INFO    ] 2026-06-13 06:07:14
[2026-06-13 06:07:14,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:07:14,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:07:14,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:07:14,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:07:14,465.465 INFO    ] time= 13/06/2026 06:07:14
[2026-06-13 06:07:14,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:07:14,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:07:14,544.544 INFO    ] No existing commands found in stream
[2026-06-13 06:07:19,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:07:19,564.564 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 06:07:20,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:07:20,740.740 INFO    ] Checking for system updates...
[2026-06-13 06:07:20,780.780 INFO    ] 200
[2026-06-13 06:07:20,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:20,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:20,840.840 INFO    ] No update needed
[2026-06-13 06:07:20,843.843 INFO    ] Checking for camera pi updates...
[2026-06-13 06:07:20,878.878 INFO    ] 200
[2026-06-13 06:07:20,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:20,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:07:20,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:20,967.967 INFO    ] No camera update needed
[2026-06-13 06:07:20,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:07:20,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:07:20,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:07:20,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:23,022.022 INFO    ] ================================================
[2026-06-13 06:07:23,039.039 INFO    ] Launching Daemon at Sat Jun 13 06:07:23 IST 2026
[2026-06-13 06:07:23,050.050 INFO    ] ================================================
[2026-06-13 06:07:23,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:23
[2026-06-13 06:07:23,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:23,843.843 INFO    ] Initializing speech engine...
[2026-06-13 06:07:23,846.846 INFO    ] 2026-06-13 06:07:23
[2026-06-13 06:07:24,074.074 INFO    ] 2026-06-13 06:07:24
[2026-06-13 06:07:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:07:24,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:07:24,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:07:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:07:24,494.494 INFO    ] time= 13/06/2026 06:07:24
[2026-06-13 06:07:24,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:07:24,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:07:24,624.624 INFO    ] No existing commands found in stream
[2026-06-13 06:07:29,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:07:29,638.638 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 06:07:31,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:07:31,450.450 INFO    ] Checking for system updates...
[2026-06-13 06:07:31,471.471 INFO    ] 200
[2026-06-13 06:07:31,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:31,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:31,515.515 INFO    ] No update needed
[2026-06-13 06:07:31,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 06:07:31,536.536 INFO    ] 200
[2026-06-13 06:07:31,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:31,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:07:31,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:31,700.700 INFO    ] No camera update needed
[2026-06-13 06:07:31,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:07:31,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:07:31,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:07:31,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:33,740.740 INFO    ] ================================================
[2026-06-13 06:07:33,756.756 INFO    ] Launching Daemon at Sat Jun 13 06:07:33 IST 2026
[2026-06-13 06:07:33,767.767 INFO    ] ================================================
[2026-06-13 06:07:34,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:34
[2026-06-13 06:07:34,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:34,593.593 INFO    ] Initializing speech engine...
[2026-06-13 06:07:34,598.598 INFO    ] 2026-06-13 06:07:34
[2026-06-13 06:07:34,801.801 INFO    ] 2026-06-13 06:07:34
[2026-06-13 06:07:34,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:07:35,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:07:35,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:07:35,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:07:35,205.205 INFO    ] time= 13/06/2026 06:07:35
[2026-06-13 06:07:35,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:07:35,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:07:35,313.313 INFO    ] No existing commands found in stream
[2026-06-13 06:07:40,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:07:40,326.326 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 06:07:43,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:07:43,504.504 INFO    ] Checking for system updates...
[2026-06-13 06:07:43,525.525 INFO    ] 200
[2026-06-13 06:07:43,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:43,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:43,558.558 INFO    ] No update needed
[2026-06-13 06:07:43,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 06:07:43,579.579 INFO    ] 200
[2026-06-13 06:07:43,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:43,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:07:43,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:07:43,647.647 INFO    ] No camera update needed
[2026-06-13 06:07:43,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:07:43,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:07:43,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:07:43,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:45,694.694 INFO    ] ================================================
[2026-06-13 06:07:45,710.710 INFO    ] Launching Daemon at Sat Jun 13 06:07:45 IST 2026
[2026-06-13 06:07:45,720.720 INFO    ] ================================================
[2026-06-13 06:07:46,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:46
[2026-06-13 06:07:46,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:46,573.573 INFO    ] Initializing speech engine...
[2026-06-13 06:07:46,578.578 INFO    ] 2026-06-13 06:07:46
[2026-06-13 06:07:46,783.783 INFO    ] 2026-06-13 06:07:46
[2026-06-13 06:07:46,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:07:46,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:07:46,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:07:47,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:07:47,191.191 INFO    ] time= 13/06/2026 06:07:47
[2026-06-13 06:07:47,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:07:47,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:07:47,301.301 INFO    ] No existing commands found in stream
[2026-06-13 06:07:52,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:07:52,314.314 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 06:07:56,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:07:56,646.646 INFO    ] Checking for system updates...
[2026-06-13 06:07:56,669.669 INFO    ] 200
[2026-06-13 06:07:56,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:56,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:07:56,702.702 INFO    ] No update needed
[2026-06-13 06:07:56,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 06:07:56,722.722 INFO    ] 200
[2026-06-13 06:07:56,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:07:56,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:07:56,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:07:56,787.787 INFO    ] No camera update needed
[2026-06-13 06:07:56,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:07:56,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:07:56,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:07:56,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:07:58,834.834 INFO    ] ================================================
[2026-06-13 06:07:58,851.851 INFO    ] Launching Daemon at Sat Jun 13 06:07:58 IST 2026
[2026-06-13 06:07:58,862.862 INFO    ] ================================================
[2026-06-13 06:07:59,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:07:59
[2026-06-13 06:07:59,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:07:59,691.691 INFO    ] Initializing speech engine...
[2026-06-13 06:07:59,696.696 INFO    ] 2026-06-13 06:07:59
[2026-06-13 06:07:59,900.900 INFO    ] 2026-06-13 06:07:59
[2026-06-13 06:07:59,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:00,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:00,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:00,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:00,295.295 INFO    ] time= 13/06/2026 06:08:00
[2026-06-13 06:08:00,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:00,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:00,415.415 INFO    ] No existing commands found in stream
[2026-06-13 06:08:05,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:05,428.428 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 06:08:06,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:08:06,006.006 INFO    ] Checking for system updates...
[2026-06-13 06:08:06,027.027 INFO    ] 200
[2026-06-13 06:08:06,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:06,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:06,061.061 INFO    ] No update needed
[2026-06-13 06:08:06,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:06,082.082 INFO    ] 200
[2026-06-13 06:08:06,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:06,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:06,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:06,154.154 INFO    ] No camera update needed
[2026-06-13 06:08:06,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:06,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:06,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:06,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:08:08,200.200 INFO    ] ================================================
[2026-06-13 06:08:08,216.216 INFO    ] Launching Daemon at Sat Jun 13 06:08:08 IST 2026
[2026-06-13 06:08:08,227.227 INFO    ] ================================================
[2026-06-13 06:08:08,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:08:08
[2026-06-13 06:08:08,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:08:09,073.073 INFO    ] Initializing speech engine...
[2026-06-13 06:08:09,079.079 INFO    ] 2026-06-13 06:08:09
[2026-06-13 06:08:09,288.288 INFO    ] 2026-06-13 06:08:09
[2026-06-13 06:08:09,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:09,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:09,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:09,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:09,710.710 INFO    ] time= 13/06/2026 06:08:09
[2026-06-13 06:08:09,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:09,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:09,812.812 INFO    ] No existing commands found in stream
[2026-06-13 06:08:14,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:14,830.830 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 06:08:16,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:08:16,881.881 INFO    ] Checking for system updates...
[2026-06-13 06:08:16,904.904 INFO    ] 200
[2026-06-13 06:08:16,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:16,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:16,941.941 INFO    ] No update needed
[2026-06-13 06:08:16,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:16,964.964 INFO    ] 200
[2026-06-13 06:08:16,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:16,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:17,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:17,039.039 INFO    ] No camera update needed
[2026-06-13 06:08:17,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:17,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:17,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:17,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:08:19,087.087 INFO    ] ================================================
[2026-06-13 06:08:19,103.103 INFO    ] Launching Daemon at Sat Jun 13 06:08:19 IST 2026
[2026-06-13 06:08:19,115.115 INFO    ] ================================================
[2026-06-13 06:08:19,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:08:19
[2026-06-13 06:08:19,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:08:19,903.903 INFO    ] Initializing speech engine...
[2026-06-13 06:08:19,914.914 INFO    ] 2026-06-13 06:08:19
[2026-06-13 06:08:20,118.118 INFO    ] 2026-06-13 06:08:20
[2026-06-13 06:08:20,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:20,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:20,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:20,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:20,512.512 INFO    ] time= 13/06/2026 06:08:20
[2026-06-13 06:08:20,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:20,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:20,637.637 INFO    ] No existing commands found in stream
[2026-06-13 06:08:25,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:25,651.651 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 06:08:27,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:08:27,320.320 INFO    ] Checking for system updates...
[2026-06-13 06:08:27,340.340 INFO    ] 200
[2026-06-13 06:08:27,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:27,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:27,376.376 INFO    ] No update needed
[2026-06-13 06:08:27,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:27,397.397 INFO    ] 200
[2026-06-13 06:08:27,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:27,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:27,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:27,462.462 INFO    ] No camera update needed
[2026-06-13 06:08:27,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:27,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:27,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:27,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:08:29,508.508 INFO    ] ================================================
[2026-06-13 06:08:29,524.524 INFO    ] Launching Daemon at Sat Jun 13 06:08:29 IST 2026
[2026-06-13 06:08:29,535.535 INFO    ] ================================================
[2026-06-13 06:08:29,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:08:29
[2026-06-13 06:08:30,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:08:30,318.318 INFO    ] Initializing speech engine...
[2026-06-13 06:08:30,322.322 INFO    ] 2026-06-13 06:08:30
[2026-06-13 06:08:30,515.515 INFO    ] 2026-06-13 06:08:30
[2026-06-13 06:08:30,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:30,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:30,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:30,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:30,804.804 INFO    ] time= 13/06/2026 06:08:30
[2026-06-13 06:08:30,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:30,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:30,890.890 INFO    ] No existing commands found in stream
[2026-06-13 06:08:35,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:35,925.925 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 06:08:36,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:08:36,824.824 INFO    ] Checking for system updates...
[2026-06-13 06:08:36,845.845 INFO    ] 200
[2026-06-13 06:08:36,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:36,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:36,879.879 INFO    ] No update needed
[2026-06-13 06:08:36,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:36,899.899 INFO    ] 200
[2026-06-13 06:08:36,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:36,924.924 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:36,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:36,959.959 INFO    ] No camera update needed
[2026-06-13 06:08:36,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:36,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:36,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:36,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:08:39,006.006 INFO    ] ================================================
[2026-06-13 06:08:39,021.021 INFO    ] Launching Daemon at Sat Jun 13 06:08:39 IST 2026
[2026-06-13 06:08:39,032.032 INFO    ] ================================================
[2026-06-13 06:08:39,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:08:39
[2026-06-13 06:08:39,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:08:39,834.834 INFO    ] Initializing speech engine...
[2026-06-13 06:08:39,840.840 INFO    ] 2026-06-13 06:08:39
[2026-06-13 06:08:40,044.044 INFO    ] 2026-06-13 06:08:40
[2026-06-13 06:08:40,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:40,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:40,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:40,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:40,440.440 INFO    ] time= 13/06/2026 06:08:40
[2026-06-13 06:08:40,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:40,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:40,560.560 INFO    ] No existing commands found in stream
[2026-06-13 06:08:45,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:45,573.573 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 06:08:47,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:08:47,530.530 INFO    ] Checking for system updates...
[2026-06-13 06:08:47,550.550 INFO    ] 200
[2026-06-13 06:08:47,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:47,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:47,586.586 INFO    ] No update needed
[2026-06-13 06:08:47,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:47,609.609 INFO    ] 200
[2026-06-13 06:08:47,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:47,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:47,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:08:47,683.683 INFO    ] No camera update needed
[2026-06-13 06:08:47,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:47,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:47,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:47,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:08:49,733.733 INFO    ] ================================================
[2026-06-13 06:08:49,750.750 INFO    ] Launching Daemon at Sat Jun 13 06:08:49 IST 2026
[2026-06-13 06:08:49,763.763 INFO    ] ================================================
[2026-06-13 06:08:50,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:08:50
[2026-06-13 06:08:50,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:08:50,558.558 INFO    ] Initializing speech engine...
[2026-06-13 06:08:50,569.569 INFO    ] 2026-06-13 06:08:50
[2026-06-13 06:08:50,775.775 INFO    ] 2026-06-13 06:08:50
[2026-06-13 06:08:50,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:08:50,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:08:50,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:08:51,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:08:51,182.182 INFO    ] time= 13/06/2026 06:08:51
[2026-06-13 06:08:51,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:08:51,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:08:51,300.300 INFO    ] No existing commands found in stream
[2026-06-13 06:08:56,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:08:56,312.312 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 06:08:58,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:08:58,810.810 INFO    ] Checking for system updates...
[2026-06-13 06:08:58,832.832 INFO    ] 200
[2026-06-13 06:08:58,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:58,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:58,868.868 INFO    ] No update needed
[2026-06-13 06:08:58,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 06:08:58,890.890 INFO    ] 200
[2026-06-13 06:08:58,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:08:58,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:08:58,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:08:58,953.953 INFO    ] No camera update needed
[2026-06-13 06:08:58,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:08:58,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:08:58,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:08:58,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:01,002.002 INFO    ] ================================================
[2026-06-13 06:09:01,017.017 INFO    ] Launching Daemon at Sat Jun 13 06:09:01 IST 2026
[2026-06-13 06:09:01,028.028 INFO    ] ================================================
[2026-06-13 06:09:01,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:09:01
[2026-06-13 06:09:01,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:09:02,077.077 INFO    ] Initializing speech engine...
[2026-06-13 06:09:02,092.092 INFO    ] 2026-06-13 06:09:02
[2026-06-13 06:09:02,311.311 INFO    ] 2026-06-13 06:09:02
[2026-06-13 06:09:02,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:09:02,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:09:02,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:09:02,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:09:02,599.599 INFO    ] time= 13/06/2026 06:09:02
[2026-06-13 06:09:02,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:09:02,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:09:02,695.695 INFO    ] No existing commands found in stream
[2026-06-13 06:09:07,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:09:07,727.727 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 06:09:10,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:09:10,062.062 INFO    ] Checking for system updates...
[2026-06-13 06:09:10,082.082 INFO    ] 200
[2026-06-13 06:09:10,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:10,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:10,116.116 INFO    ] No update needed
[2026-06-13 06:09:10,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 06:09:10,137.137 INFO    ] 200
[2026-06-13 06:09:10,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:10,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:09:10,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:10,211.211 INFO    ] No camera update needed
[2026-06-13 06:09:10,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:09:10,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:09:10,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:09:10,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:12,259.259 INFO    ] ================================================
[2026-06-13 06:09:12,275.275 INFO    ] Launching Daemon at Sat Jun 13 06:09:12 IST 2026
[2026-06-13 06:09:12,286.286 INFO    ] ================================================
[2026-06-13 06:09:12,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:09:12
[2026-06-13 06:09:12,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:09:13,067.067 INFO    ] Initializing speech engine...
[2026-06-13 06:09:13,080.080 INFO    ] 2026-06-13 06:09:13
[2026-06-13 06:09:13,289.289 INFO    ] 2026-06-13 06:09:13
[2026-06-13 06:09:13,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:09:13,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:09:13,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:09:13,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:09:13,706.706 INFO    ] time= 13/06/2026 06:09:13
[2026-06-13 06:09:13,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:09:13,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:09:13,814.814 INFO    ] No existing commands found in stream
[2026-06-13 06:09:18,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:09:18,827.827 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 06:09:20,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:09:20,652.652 INFO    ] Checking for system updates...
[2026-06-13 06:09:20,673.673 INFO    ] 200
[2026-06-13 06:09:20,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:20,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:09:20,706.706 INFO    ] No update needed
[2026-06-13 06:09:20,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 06:09:20,727.727 INFO    ] 200
[2026-06-13 06:09:20,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:20,754.754 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:09:20,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:20,801.801 INFO    ] No camera update needed
[2026-06-13 06:09:20,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:09:20,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:09:20,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:09:20,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:22,849.849 INFO    ] ================================================
[2026-06-13 06:09:22,864.864 INFO    ] Launching Daemon at Sat Jun 13 06:09:22 IST 2026
[2026-06-13 06:09:22,875.875 INFO    ] ================================================
[2026-06-13 06:09:23,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:09:23
[2026-06-13 06:09:23,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:09:23,681.681 INFO    ] Initializing speech engine...
[2026-06-13 06:09:23,685.685 INFO    ] 2026-06-13 06:09:23
[2026-06-13 06:09:23,881.881 INFO    ] 2026-06-13 06:09:23
[2026-06-13 06:09:23,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:09:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:09:24,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:09:24,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:09:24,340.340 INFO    ] time= 13/06/2026 06:09:24
[2026-06-13 06:09:24,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:09:24,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:09:24,471.471 INFO    ] No existing commands found in stream
[2026-06-13 06:09:29,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:09:29,485.485 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 06:09:31,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:09:31,484.484 INFO    ] Checking for system updates...
[2026-06-13 06:09:31,508.508 INFO    ] 200
[2026-06-13 06:09:31,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:31,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:31,546.546 INFO    ] No update needed
[2026-06-13 06:09:31,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 06:09:31,574.574 INFO    ] 200
[2026-06-13 06:09:31,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:31,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:09:31,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:31,665.665 INFO    ] No camera update needed
[2026-06-13 06:09:31,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:09:31,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:09:31,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:09:31,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:33,709.709 INFO    ] ================================================
[2026-06-13 06:09:33,725.725 INFO    ] Launching Daemon at Sat Jun 13 06:09:33 IST 2026
[2026-06-13 06:09:33,735.735 INFO    ] ================================================
[2026-06-13 06:09:34,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:09:34
[2026-06-13 06:09:34,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:09:34,618.618 INFO    ] Initializing speech engine...
[2026-06-13 06:09:34,624.624 INFO    ] 2026-06-13 06:09:34
[2026-06-13 06:09:34,833.833 INFO    ] 2026-06-13 06:09:34
[2026-06-13 06:09:34,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:09:35,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:09:35,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:09:35,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:09:35,225.225 INFO    ] time= 13/06/2026 06:09:35
[2026-06-13 06:09:35,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:09:35,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:09:35,351.351 INFO    ] No existing commands found in stream
[2026-06-13 06:09:40,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:09:40,374.374 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 06:09:44,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:09:44,288.288 INFO    ] Checking for system updates...
[2026-06-13 06:09:44,310.310 INFO    ] 200
[2026-06-13 06:09:44,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:44,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:44,347.347 INFO    ] No update needed
[2026-06-13 06:09:44,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 06:09:44,370.370 INFO    ] 200
[2026-06-13 06:09:44,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:44,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:09:44,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:44,545.545 INFO    ] No camera update needed
[2026-06-13 06:09:44,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:09:44,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:09:44,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:09:44,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:46,592.592 INFO    ] ================================================
[2026-06-13 06:09:46,607.607 INFO    ] Launching Daemon at Sat Jun 13 06:09:46 IST 2026
[2026-06-13 06:09:46,617.617 INFO    ] ================================================
[2026-06-13 06:09:46,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:09:46
[2026-06-13 06:09:47,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:09:47,476.476 INFO    ] Initializing speech engine...
[2026-06-13 06:09:47,488.488 INFO    ] 2026-06-13 06:09:47
[2026-06-13 06:09:47,705.705 INFO    ] 2026-06-13 06:09:47
[2026-06-13 06:09:47,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:09:47,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:09:47,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:09:48,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:09:48,107.107 INFO    ] time= 13/06/2026 06:09:48
[2026-06-13 06:09:48,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:09:48,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:09:48,223.223 INFO    ] No existing commands found in stream
[2026-06-13 06:09:53,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:09:53,236.236 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 06:09:57,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:09:57,461.461 INFO    ] Checking for system updates...
[2026-06-13 06:09:57,483.483 INFO    ] 200
[2026-06-13 06:09:57,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:57,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:09:57,519.519 INFO    ] No update needed
[2026-06-13 06:09:57,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 06:09:57,540.540 INFO    ] 200
[2026-06-13 06:09:57,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:09:57,566.566 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:09:57,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:09:57,605.605 INFO    ] No camera update needed
[2026-06-13 06:09:57,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:09:57,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:09:57,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:09:57,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:09:59,653.653 INFO    ] ================================================
[2026-06-13 06:09:59,669.669 INFO    ] Launching Daemon at Sat Jun 13 06:09:59 IST 2026
[2026-06-13 06:09:59,679.679 INFO    ] ================================================
[2026-06-13 06:10:00,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:00
[2026-06-13 06:10:00,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:00,483.483 INFO    ] Initializing speech engine...
[2026-06-13 06:10:00,489.489 INFO    ] 2026-06-13 06:10:00
[2026-06-13 06:10:00,693.693 INFO    ] 2026-06-13 06:10:00
[2026-06-13 06:10:00,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:00,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:00,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:00,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:00,943.943 INFO    ] time= 13/06/2026 06:10:00
[2026-06-13 06:10:00,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:01,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:01,120.120 INFO    ] No existing commands found in stream
[2026-06-13 06:10:06,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:10:06,139.139 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 06:10:09,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:10:09,442.442 INFO    ] Checking for system updates...
[2026-06-13 06:10:09,483.483 INFO    ] 200
[2026-06-13 06:10:09,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:09,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:09,542.542 INFO    ] No update needed
[2026-06-13 06:10:09,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 06:10:09,579.579 INFO    ] 200
[2026-06-13 06:10:09,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:09,608.608 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:10:09,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:09,650.650 INFO    ] No camera update needed
[2026-06-13 06:10:09,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:10:09,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:10:09,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:10:09,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:10:11,697.697 INFO    ] ================================================
[2026-06-13 06:10:11,713.713 INFO    ] Launching Daemon at Sat Jun 13 06:10:11 IST 2026
[2026-06-13 06:10:11,723.723 INFO    ] ================================================
[2026-06-13 06:10:12,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:12
[2026-06-13 06:10:12,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:12,617.617 INFO    ] Initializing speech engine...
[2026-06-13 06:10:12,623.623 INFO    ] 2026-06-13 06:10:12
[2026-06-13 06:10:12,832.832 INFO    ] 2026-06-13 06:10:12
[2026-06-13 06:10:12,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:13,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:13,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:13,243.243 INFO    ] time= 13/06/2026 06:10:13
[2026-06-13 06:10:13,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:13,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:13,348.348 INFO    ] No existing commands found in stream
[2026-06-13 06:10:18,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:10:18,362.362 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 06:10:20,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:10:20,886.886 INFO    ] Checking for system updates...
[2026-06-13 06:10:20,909.909 INFO    ] 200
[2026-06-13 06:10:20,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:20,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:20,943.943 INFO    ] No update needed
[2026-06-13 06:10:20,944.944 INFO    ] Checking for camera pi updates...
[2026-06-13 06:10:20,965.965 INFO    ] 200
[2026-06-13 06:10:20,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:20,990.990 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:10:21,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:10:21,037.037 INFO    ] No camera update needed
[2026-06-13 06:10:21,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:10:21,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:10:21,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:10:21,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:10:23,083.083 INFO    ] ================================================
[2026-06-13 06:10:23,098.098 INFO    ] Launching Daemon at Sat Jun 13 06:10:23 IST 2026
[2026-06-13 06:10:23,108.108 INFO    ] ================================================
[2026-06-13 06:10:23,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:23
[2026-06-13 06:10:23,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:23,911.911 INFO    ] Initializing speech engine...
[2026-06-13 06:10:23,916.916 INFO    ] 2026-06-13 06:10:23
[2026-06-13 06:10:24,118.118 INFO    ] 2026-06-13 06:10:24
[2026-06-13 06:10:24,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:24,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:24,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:24,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:24,522.522 INFO    ] time= 13/06/2026 06:10:24
[2026-06-13 06:10:24,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:24,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:24,632.632 INFO    ] No existing commands found in stream
[2026-06-13 06:10:29,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:10:29,642.642 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 06:10:31,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:10:31,780.780 INFO    ] Checking for system updates...
[2026-06-13 06:10:31,808.808 INFO    ] 200
[2026-06-13 06:10:31,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:31,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:31,853.853 INFO    ] No update needed
[2026-06-13 06:10:31,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 06:10:31,876.876 INFO    ] 200
[2026-06-13 06:10:31,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:31,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:10:31,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:31,941.941 INFO    ] No camera update needed
[2026-06-13 06:10:31,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:10:31,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:10:31,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:10:31,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:10:33,985.985 INFO    ] ================================================
[2026-06-13 06:10:34,001.001 INFO    ] Launching Daemon at Sat Jun 13 06:10:33 IST 2026
[2026-06-13 06:10:34,013.013 INFO    ] ================================================
[2026-06-13 06:10:34,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:34
[2026-06-13 06:10:34,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:34,780.780 INFO    ] Initializing speech engine...
[2026-06-13 06:10:34,789.789 INFO    ] 2026-06-13 06:10:34
[2026-06-13 06:10:35,000.000 INFO    ] 2026-06-13 06:10:34
[2026-06-13 06:10:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:35,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:35,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:35,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:35,408.408 INFO    ] time= 13/06/2026 06:10:35
[2026-06-13 06:10:35,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:35,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:35,518.518 INFO    ] No existing commands found in stream
[2026-06-13 06:10:40,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:10:40,531.531 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 06:10:41,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:10:41,315.315 INFO    ] Checking for system updates...
[2026-06-13 06:10:41,337.337 INFO    ] 200
[2026-06-13 06:10:41,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:41,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:41,372.372 INFO    ] No update needed
[2026-06-13 06:10:41,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 06:10:41,393.393 INFO    ] 200
[2026-06-13 06:10:41,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:41,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:10:41,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:41,469.469 INFO    ] No camera update needed
[2026-06-13 06:10:41,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:10:41,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:10:41,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:10:41,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:10:43,517.517 INFO    ] ================================================
[2026-06-13 06:10:43,533.533 INFO    ] Launching Daemon at Sat Jun 13 06:10:43 IST 2026
[2026-06-13 06:10:43,543.543 INFO    ] ================================================
[2026-06-13 06:10:43,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:43
[2026-06-13 06:10:44,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:44,341.341 INFO    ] Initializing speech engine...
[2026-06-13 06:10:44,346.346 INFO    ] 2026-06-13 06:10:44
[2026-06-13 06:10:44,577.577 INFO    ] 2026-06-13 06:10:44
[2026-06-13 06:10:44,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:44,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:44,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:44,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:44,966.966 INFO    ] time= 13/06/2026 06:10:44
[2026-06-13 06:10:45,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:45,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:45,141.141 INFO    ] No existing commands found in stream
[2026-06-13 06:10:50,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:10:50,155.155 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 06:10:53,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:10:53,079.079 INFO    ] Checking for system updates...
[2026-06-13 06:10:53,101.101 INFO    ] 200
[2026-06-13 06:10:53,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:53,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:53,138.138 INFO    ] No update needed
[2026-06-13 06:10:53,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 06:10:53,161.161 INFO    ] 200
[2026-06-13 06:10:53,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:10:53,186.186 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:10:53,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:10:53,227.227 INFO    ] No camera update needed
[2026-06-13 06:10:53,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:10:53,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:10:53,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:10:53,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:10:55,276.276 INFO    ] ================================================
[2026-06-13 06:10:55,291.291 INFO    ] Launching Daemon at Sat Jun 13 06:10:55 IST 2026
[2026-06-13 06:10:55,301.301 INFO    ] ================================================
[2026-06-13 06:10:55,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:10:55
[2026-06-13 06:10:55,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:10:56,130.130 INFO    ] Initializing speech engine...
[2026-06-13 06:10:56,135.135 INFO    ] 2026-06-13 06:10:56
[2026-06-13 06:10:56,339.339 INFO    ] 2026-06-13 06:10:56
[2026-06-13 06:10:56,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:10:56,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:10:56,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:10:56,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:10:56,747.747 INFO    ] time= 13/06/2026 06:10:56
[2026-06-13 06:10:56,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:10:56,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:10:56,849.849 INFO    ] No existing commands found in stream
[2026-06-13 06:11:01,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:01,872.872 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 06:11:02,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:11:02,223.223 INFO    ] Checking for system updates...
[2026-06-13 06:11:02,249.249 INFO    ] 200
[2026-06-13 06:11:02,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:02,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:11:02,290.290 INFO    ] No update needed
[2026-06-13 06:11:02,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:02,320.320 INFO    ] 200
[2026-06-13 06:11:02,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:02,369.369 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:02,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:11:02,412.412 INFO    ] No camera update needed
[2026-06-13 06:11:02,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:02,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:02,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:02,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:04,465.465 INFO    ] ================================================
[2026-06-13 06:11:04,481.481 INFO    ] Launching Daemon at Sat Jun 13 06:11:04 IST 2026
[2026-06-13 06:11:04,494.494 INFO    ] ================================================
[2026-06-13 06:11:04,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:04
[2026-06-13 06:11:05,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:05,317.317 INFO    ] Initializing speech engine...
[2026-06-13 06:11:05,322.322 INFO    ] 2026-06-13 06:11:05
[2026-06-13 06:11:05,525.525 INFO    ] 2026-06-13 06:11:05
[2026-06-13 06:11:05,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:05,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:05,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:05,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:05,933.933 INFO    ] time= 13/06/2026 06:11:05
[2026-06-13 06:11:05,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:05,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:06,044.044 INFO    ] No existing commands found in stream
[2026-06-13 06:11:11,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:11,058.058 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 06:11:12,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:11:12,138.138 INFO    ] Checking for system updates...
[2026-06-13 06:11:12,160.160 INFO    ] 200
[2026-06-13 06:11:12,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:12,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:12,194.194 INFO    ] No update needed
[2026-06-13 06:11:12,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:12,216.216 INFO    ] 200
[2026-06-13 06:11:12,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:12,240.240 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:12,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:12,293.293 INFO    ] No camera update needed
[2026-06-13 06:11:12,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:12,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:12,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:12,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:14,339.339 INFO    ] ================================================
[2026-06-13 06:11:14,354.354 INFO    ] Launching Daemon at Sat Jun 13 06:11:14 IST 2026
[2026-06-13 06:11:14,365.365 INFO    ] ================================================
[2026-06-13 06:11:14,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:14
[2026-06-13 06:11:15,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:15,151.151 INFO    ] Initializing speech engine...
[2026-06-13 06:11:15,156.156 INFO    ] 2026-06-13 06:11:15
[2026-06-13 06:11:15,397.397 INFO    ] 2026-06-13 06:11:15
[2026-06-13 06:11:15,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:15,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:15,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:15,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:15,823.823 INFO    ] time= 13/06/2026 06:11:15
[2026-06-13 06:11:15,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:15,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:15,963.963 INFO    ] No existing commands found in stream
[2026-06-13 06:11:20,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:20,991.991 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 06:11:21,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:11:21,568.568 INFO    ] Checking for system updates...
[2026-06-13 06:11:21,589.589 INFO    ] 200
[2026-06-13 06:11:21,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:21,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:21,621.621 INFO    ] No update needed
[2026-06-13 06:11:21,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:21,643.643 INFO    ] 200
[2026-06-13 06:11:21,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:21,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:21,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:21,710.710 INFO    ] No camera update needed
[2026-06-13 06:11:21,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:21,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:21,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:21,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:23,749.749 INFO    ] ================================================
[2026-06-13 06:11:23,764.764 INFO    ] Launching Daemon at Sat Jun 13 06:11:23 IST 2026
[2026-06-13 06:11:23,775.775 INFO    ] ================================================
[2026-06-13 06:11:24,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:24
[2026-06-13 06:11:24,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:24,570.570 INFO    ] Initializing speech engine...
[2026-06-13 06:11:24,573.573 INFO    ] 2026-06-13 06:11:24
[2026-06-13 06:11:24,774.774 INFO    ] 2026-06-13 06:11:24
[2026-06-13 06:11:24,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:24,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:25,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:25,181.181 INFO    ] time= 13/06/2026 06:11:25
[2026-06-13 06:11:25,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:25,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:25,290.290 INFO    ] No existing commands found in stream
[2026-06-13 06:11:30,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:30,303.303 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 06:11:33,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:11:33,611.611 INFO    ] Checking for system updates...
[2026-06-13 06:11:33,646.646 INFO    ] 200
[2026-06-13 06:11:33,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:33,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:11:33,711.711 INFO    ] No update needed
[2026-06-13 06:11:33,714.714 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:33,735.735 INFO    ] 200
[2026-06-13 06:11:33,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:33,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:33,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:11:33,803.803 INFO    ] No camera update needed
[2026-06-13 06:11:33,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:33,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:33,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:33,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:35,850.850 INFO    ] ================================================
[2026-06-13 06:11:35,865.865 INFO    ] Launching Daemon at Sat Jun 13 06:11:35 IST 2026
[2026-06-13 06:11:35,876.876 INFO    ] ================================================
[2026-06-13 06:11:36,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:36
[2026-06-13 06:11:36,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:36,767.767 INFO    ] Initializing speech engine...
[2026-06-13 06:11:36,773.773 INFO    ] 2026-06-13 06:11:36
[2026-06-13 06:11:36,984.984 INFO    ] 2026-06-13 06:11:36
[2026-06-13 06:11:37,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:37,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:37,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:37,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:37,391.391 INFO    ] time= 13/06/2026 06:11:37
[2026-06-13 06:11:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:37,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:37,510.510 INFO    ] No existing commands found in stream
[2026-06-13 06:11:42,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:42,523.523 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 06:11:43,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:11:43,229.229 INFO    ] Checking for system updates...
[2026-06-13 06:11:43,250.250 INFO    ] 200
[2026-06-13 06:11:43,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:43,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:43,285.285 INFO    ] No update needed
[2026-06-13 06:11:43,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:43,306.306 INFO    ] 200
[2026-06-13 06:11:43,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:43,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:43,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:43,371.371 INFO    ] No camera update needed
[2026-06-13 06:11:43,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:43,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:43,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:43,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:45,417.417 INFO    ] ================================================
[2026-06-13 06:11:45,432.432 INFO    ] Launching Daemon at Sat Jun 13 06:11:45 IST 2026
[2026-06-13 06:11:45,443.443 INFO    ] ================================================
[2026-06-13 06:11:45,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:45
[2026-06-13 06:11:46,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:46,244.244 INFO    ] Initializing speech engine...
[2026-06-13 06:11:46,249.249 INFO    ] 2026-06-13 06:11:46
[2026-06-13 06:11:46,452.452 INFO    ] 2026-06-13 06:11:46
[2026-06-13 06:11:46,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:46,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:46,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:46,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:46,861.861 INFO    ] time= 13/06/2026 06:11:46
[2026-06-13 06:11:46,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:46,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:46,965.965 INFO    ] No existing commands found in stream
[2026-06-13 06:11:51,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:11:51,978.978 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 06:11:53,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:11:53,893.893 INFO    ] Checking for system updates...
[2026-06-13 06:11:53,914.914 INFO    ] 200
[2026-06-13 06:11:53,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:53,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:53,947.947 INFO    ] No update needed
[2026-06-13 06:11:53,949.949 INFO    ] Checking for camera pi updates...
[2026-06-13 06:11:53,971.971 INFO    ] 200
[2026-06-13 06:11:53,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:11:53,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:11:54,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:11:54,142.142 INFO    ] No camera update needed
[2026-06-13 06:11:54,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:11:54,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:11:54,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:11:54,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:11:56,190.190 INFO    ] ================================================
[2026-06-13 06:11:56,206.206 INFO    ] Launching Daemon at Sat Jun 13 06:11:56 IST 2026
[2026-06-13 06:11:56,216.216 INFO    ] ================================================
[2026-06-13 06:11:56,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:11:56
[2026-06-13 06:11:56,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:11:56,996.996 INFO    ] Initializing speech engine...
[2026-06-13 06:11:57,001.001 INFO    ] 2026-06-13 06:11:56
[2026-06-13 06:11:57,205.205 INFO    ] 2026-06-13 06:11:57
[2026-06-13 06:11:57,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:11:57,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:11:57,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:11:57,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:11:57,614.614 INFO    ] time= 13/06/2026 06:11:57
[2026-06-13 06:11:57,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:11:57,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:11:57,726.726 INFO    ] No existing commands found in stream
[2026-06-13 06:12:02,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:02,740.740 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 06:12:03,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:12:03,719.719 INFO    ] Checking for system updates...
[2026-06-13 06:12:03,741.741 INFO    ] 200
[2026-06-13 06:12:03,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:03,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:03,774.774 INFO    ] No update needed
[2026-06-13 06:12:03,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:03,795.795 INFO    ] 200
[2026-06-13 06:12:03,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:03,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:03,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:03,857.857 INFO    ] No camera update needed
[2026-06-13 06:12:03,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:03,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:03,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:03,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:12:05,902.902 INFO    ] ================================================
[2026-06-13 06:12:05,918.918 INFO    ] Launching Daemon at Sat Jun 13 06:12:05 IST 2026
[2026-06-13 06:12:05,929.929 INFO    ] ================================================
[2026-06-13 06:12:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:12:06
[2026-06-13 06:12:06,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:12:06,770.770 INFO    ] Initializing speech engine...
[2026-06-13 06:12:06,775.775 INFO    ] 2026-06-13 06:12:06
[2026-06-13 06:12:06,977.977 INFO    ] 2026-06-13 06:12:06
[2026-06-13 06:12:07,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:12:07,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:12:07,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:12:07,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:12:07,386.386 INFO    ] time= 13/06/2026 06:12:07
[2026-06-13 06:12:07,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:12:07,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:12:07,489.489 INFO    ] No existing commands found in stream
[2026-06-13 06:12:12,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:12,502.502 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 06:12:15,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:12:15,598.598 INFO    ] Checking for system updates...
[2026-06-13 06:12:15,620.620 INFO    ] 200
[2026-06-13 06:12:15,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:15,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:15,652.652 INFO    ] No update needed
[2026-06-13 06:12:15,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:15,673.673 INFO    ] 200
[2026-06-13 06:12:15,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:15,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:15,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:12:15,745.745 INFO    ] No camera update needed
[2026-06-13 06:12:15,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:15,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:15,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:15,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:12:17,792.792 INFO    ] ================================================
[2026-06-13 06:12:17,807.807 INFO    ] Launching Daemon at Sat Jun 13 06:12:17 IST 2026
[2026-06-13 06:12:17,818.818 INFO    ] ================================================
[2026-06-13 06:12:18,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:12:18
[2026-06-13 06:12:18,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:12:18,671.671 INFO    ] Initializing speech engine...
[2026-06-13 06:12:18,675.675 INFO    ] 2026-06-13 06:12:18
[2026-06-13 06:12:18,882.882 INFO    ] 2026-06-13 06:12:18
[2026-06-13 06:12:18,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:12:19,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:12:19,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:12:19,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:12:19,298.298 INFO    ] time= 13/06/2026 06:12:19
[2026-06-13 06:12:19,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:12:19,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:12:19,396.396 INFO    ] No existing commands found in stream
[2026-06-13 06:12:24,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:24,413.413 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 06:12:25,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:12:25,041.041 INFO    ] Checking for system updates...
[2026-06-13 06:12:25,062.062 INFO    ] 200
[2026-06-13 06:12:25,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:25,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:12:25,097.097 INFO    ] No update needed
[2026-06-13 06:12:25,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:25,119.119 INFO    ] 200
[2026-06-13 06:12:25,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:25,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:25,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:12:25,187.187 INFO    ] No camera update needed
[2026-06-13 06:12:25,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:25,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:25,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:25,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:12:27,234.234 INFO    ] ================================================
[2026-06-13 06:12:27,249.249 INFO    ] Launching Daemon at Sat Jun 13 06:12:27 IST 2026
[2026-06-13 06:12:27,260.260 INFO    ] ================================================
[2026-06-13 06:12:27,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:12:27
[2026-06-13 06:12:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:12:28,053.053 INFO    ] Initializing speech engine...
[2026-06-13 06:12:28,057.057 INFO    ] 2026-06-13 06:12:28
[2026-06-13 06:12:28,262.262 INFO    ] 2026-06-13 06:12:28
[2026-06-13 06:12:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:12:28,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:12:28,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:12:28,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:12:28,662.662 INFO    ] time= 13/06/2026 06:12:28
[2026-06-13 06:12:28,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:12:28,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:12:28,776.776 INFO    ] No existing commands found in stream
[2026-06-13 06:12:33,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:33,790.790 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 06:12:36,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:12:36,623.623 INFO    ] Checking for system updates...
[2026-06-13 06:12:36,645.645 INFO    ] 200
[2026-06-13 06:12:36,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:36,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:12:36,681.681 INFO    ] No update needed
[2026-06-13 06:12:36,682.682 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:36,702.702 INFO    ] 200
[2026-06-13 06:12:36,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:36,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:36,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:12:36,766.766 INFO    ] No camera update needed
[2026-06-13 06:12:36,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:36,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:36,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:36,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:12:38,812.812 INFO    ] ================================================
[2026-06-13 06:12:38,827.827 INFO    ] Launching Daemon at Sat Jun 13 06:12:38 IST 2026
[2026-06-13 06:12:38,838.838 INFO    ] ================================================
[2026-06-13 06:12:39,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:12:39
[2026-06-13 06:12:39,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:12:39,742.742 INFO    ] Initializing speech engine...
[2026-06-13 06:12:39,751.751 INFO    ] 2026-06-13 06:12:39
[2026-06-13 06:12:40,016.016 INFO    ] 2026-06-13 06:12:40
[2026-06-13 06:12:40,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:12:40,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:12:40,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:12:40,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:12:40,475.475 INFO    ] time= 13/06/2026 06:12:40
[2026-06-13 06:12:40,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:12:40,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:12:40,694.694 INFO    ] No existing commands found in stream
[2026-06-13 06:12:45,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:45,727.727 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 06:12:48,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:12:48,358.358 INFO    ] Checking for system updates...
[2026-06-13 06:12:48,379.379 INFO    ] 200
[2026-06-13 06:12:48,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:48,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:48,415.415 INFO    ] No update needed
[2026-06-13 06:12:48,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:48,435.435 INFO    ] 200
[2026-06-13 06:12:48,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:48,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:48,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:48,499.499 INFO    ] No camera update needed
[2026-06-13 06:12:48,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:48,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:48,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:48,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:12:50,548.548 INFO    ] ================================================
[2026-06-13 06:12:50,563.563 INFO    ] Launching Daemon at Sat Jun 13 06:12:50 IST 2026
[2026-06-13 06:12:50,574.574 INFO    ] ================================================
[2026-06-13 06:12:50,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:12:50
[2026-06-13 06:12:51,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:12:51,403.403 INFO    ] Initializing speech engine...
[2026-06-13 06:12:51,409.409 INFO    ] 2026-06-13 06:12:51
[2026-06-13 06:12:51,617.617 INFO    ] 2026-06-13 06:12:51
[2026-06-13 06:12:51,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:12:51,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:12:51,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:12:51,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:12:52,022.022 INFO    ] time= 13/06/2026 06:12:51
[2026-06-13 06:12:52,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:12:52,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:12:52,133.133 INFO    ] No existing commands found in stream
[2026-06-13 06:12:57,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:12:57,146.146 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 06:12:59,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:12:59,487.487 INFO    ] Checking for system updates...
[2026-06-13 06:12:59,510.510 INFO    ] 200
[2026-06-13 06:12:59,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:59,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:59,544.544 INFO    ] No update needed
[2026-06-13 06:12:59,545.545 INFO    ] Checking for camera pi updates...
[2026-06-13 06:12:59,567.567 INFO    ] 200
[2026-06-13 06:12:59,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:12:59,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:12:59,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:12:59,628.628 INFO    ] No camera update needed
[2026-06-13 06:12:59,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:12:59,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:12:59,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:12:59,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:01,670.670 INFO    ] ================================================
[2026-06-13 06:13:01,683.683 INFO    ] Launching Daemon at Sat Jun 13 06:13:01 IST 2026
[2026-06-13 06:13:01,694.694 INFO    ] ================================================
[2026-06-13 06:13:02,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:02
[2026-06-13 06:13:02,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:03,271.271 INFO    ] Initializing speech engine...
[2026-06-13 06:13:03,282.282 INFO    ] 2026-06-13 06:13:03
[2026-06-13 06:13:03,529.529 INFO    ] 2026-06-13 06:13:03
[2026-06-13 06:13:03,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:03,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:03,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:03,883.883 INFO    ] time= 13/06/2026 06:13:03
[2026-06-13 06:13:03,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:03,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:03,979.979 INFO    ] No existing commands found in stream
[2026-06-13 06:13:08,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:13:08,999.999 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 06:13:10,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:13:10,213.213 INFO    ] Checking for system updates...
[2026-06-13 06:13:10,235.235 INFO    ] 200
[2026-06-13 06:13:10,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:10,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:10,268.268 INFO    ] No update needed
[2026-06-13 06:13:10,269.269 INFO    ] Checking for camera pi updates...
[2026-06-13 06:13:10,290.290 INFO    ] 200
[2026-06-13 06:13:10,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:10,317.317 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:13:10,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:10,354.354 INFO    ] No camera update needed
[2026-06-13 06:13:10,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:13:10,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:13:10,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:13:10,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:12,401.401 INFO    ] ================================================
[2026-06-13 06:13:12,416.416 INFO    ] Launching Daemon at Sat Jun 13 06:13:12 IST 2026
[2026-06-13 06:13:12,427.427 INFO    ] ================================================
[2026-06-13 06:13:12,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:12
[2026-06-13 06:13:13,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:13,300.300 INFO    ] Initializing speech engine...
[2026-06-13 06:13:13,309.309 INFO    ] 2026-06-13 06:13:13
[2026-06-13 06:13:13,573.573 INFO    ] 2026-06-13 06:13:13
[2026-06-13 06:13:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:13,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:13,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:14,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:14,047.047 INFO    ] time= 13/06/2026 06:13:14
[2026-06-13 06:13:14,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:14,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:14,263.263 INFO    ] No existing commands found in stream
[2026-06-13 06:13:19,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:13:19,297.297 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 06:13:21,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:13:21,078.078 INFO    ] Checking for system updates...
[2026-06-13 06:13:21,100.100 INFO    ] 200
[2026-06-13 06:13:21,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:21,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:21,134.134 INFO    ] No update needed
[2026-06-13 06:13:21,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 06:13:21,156.156 INFO    ] 200
[2026-06-13 06:13:21,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:21,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:13:21,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:21,225.225 INFO    ] No camera update needed
[2026-06-13 06:13:21,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:13:21,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:13:21,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:13:21,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:23,276.276 INFO    ] ================================================
[2026-06-13 06:13:23,293.293 INFO    ] Launching Daemon at Sat Jun 13 06:13:23 IST 2026
[2026-06-13 06:13:23,304.304 INFO    ] ================================================
[2026-06-13 06:13:23,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:23
[2026-06-13 06:13:23,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:24,081.081 INFO    ] Initializing speech engine...
[2026-06-13 06:13:24,084.084 INFO    ] 2026-06-13 06:13:24
[2026-06-13 06:13:24,301.301 INFO    ] 2026-06-13 06:13:24
[2026-06-13 06:13:24,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:24,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:24,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:24,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:24,682.682 INFO    ] time= 13/06/2026 06:13:24
[2026-06-13 06:13:24,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:24,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:24,805.805 INFO    ] No existing commands found in stream
[2026-06-13 06:13:29,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:13:29,818.818 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 06:13:32,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:13:32,402.402 INFO    ] Checking for system updates...
[2026-06-13 06:13:32,423.423 INFO    ] 200
[2026-06-13 06:13:32,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:32,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:32,457.457 INFO    ] No update needed
[2026-06-13 06:13:32,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 06:13:32,478.478 INFO    ] 200
[2026-06-13 06:13:32,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:32,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:13:32,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:13:32,535.535 INFO    ] No camera update needed
[2026-06-13 06:13:32,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:13:32,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:13:32,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:13:32,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:34,585.585 INFO    ] ================================================
[2026-06-13 06:13:34,601.601 INFO    ] Launching Daemon at Sat Jun 13 06:13:34 IST 2026
[2026-06-13 06:13:34,612.612 INFO    ] ================================================
[2026-06-13 06:13:34,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:34
[2026-06-13 06:13:35,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:35,459.459 INFO    ] Initializing speech engine...
[2026-06-13 06:13:35,465.465 INFO    ] 2026-06-13 06:13:35
[2026-06-13 06:13:35,668.668 INFO    ] 2026-06-13 06:13:35
[2026-06-13 06:13:35,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:35,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:36,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:36,157.157 INFO    ] time= 13/06/2026 06:13:36
[2026-06-13 06:13:36,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:36,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:36,301.301 INFO    ] No existing commands found in stream
[2026-06-13 06:13:41,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:13:41,315.315 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 06:13:45,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:13:45,192.192 INFO    ] Checking for system updates...
[2026-06-13 06:13:45,214.214 INFO    ] 200
[2026-06-13 06:13:45,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:45,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:13:45,250.250 INFO    ] No update needed
[2026-06-13 06:13:45,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 06:13:45,271.271 INFO    ] 200
[2026-06-13 06:13:45,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:45,298.298 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:13:45,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:13:45,335.335 INFO    ] No camera update needed
[2026-06-13 06:13:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:13:45,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:13:45,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:13:45,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:47,383.383 INFO    ] ================================================
[2026-06-13 06:13:47,399.399 INFO    ] Launching Daemon at Sat Jun 13 06:13:47 IST 2026
[2026-06-13 06:13:47,411.411 INFO    ] ================================================
[2026-06-13 06:13:47,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:47
[2026-06-13 06:13:48,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:48,300.300 INFO    ] Initializing speech engine...
[2026-06-13 06:13:48,307.307 INFO    ] 2026-06-13 06:13:48
[2026-06-13 06:13:48,512.512 INFO    ] 2026-06-13 06:13:48
[2026-06-13 06:13:48,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:48,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:48,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:48,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:48,927.927 INFO    ] time= 13/06/2026 06:13:48
[2026-06-13 06:13:48,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:48,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:49,040.040 INFO    ] No existing commands found in stream
[2026-06-13 06:13:54,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:13:54,054.054 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 06:13:55,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:13:55,574.574 INFO    ] Checking for system updates...
[2026-06-13 06:13:55,595.595 INFO    ] 200
[2026-06-13 06:13:55,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:55,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:13:55,629.629 INFO    ] No update needed
[2026-06-13 06:13:55,631.631 INFO    ] Checking for camera pi updates...
[2026-06-13 06:13:55,651.651 INFO    ] 200
[2026-06-13 06:13:55,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:13:55,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:13:55,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:13:55,821.821 INFO    ] No camera update needed
[2026-06-13 06:13:55,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:13:55,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:13:55,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:13:55,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:13:57,870.870 INFO    ] ================================================
[2026-06-13 06:13:57,885.885 INFO    ] Launching Daemon at Sat Jun 13 06:13:57 IST 2026
[2026-06-13 06:13:57,896.896 INFO    ] ================================================
[2026-06-13 06:13:58,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:13:58
[2026-06-13 06:13:58,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:13:58,706.706 INFO    ] Initializing speech engine...
[2026-06-13 06:13:58,710.710 INFO    ] 2026-06-13 06:13:58
[2026-06-13 06:13:58,903.903 INFO    ] 2026-06-13 06:13:58
[2026-06-13 06:13:58,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:13:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:13:59,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:13:59,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:13:59,194.194 INFO    ] time= 13/06/2026 06:13:59
[2026-06-13 06:13:59,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:13:59,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:13:59,277.277 INFO    ] No existing commands found in stream
[2026-06-13 06:14:04,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:04,307.307 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 06:14:07,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:14:07,992.992 INFO    ] Checking for system updates...
[2026-06-13 06:14:08,013.013 INFO    ] 200
[2026-06-13 06:14:08,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:08,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:14:08,046.046 INFO    ] No update needed
[2026-06-13 06:14:08,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:08,068.068 INFO    ] 200
[2026-06-13 06:14:08,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:08,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:08,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:08,137.137 INFO    ] No camera update needed
[2026-06-13 06:14:08,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:08,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:08,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:08,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:14:10,186.186 INFO    ] ================================================
[2026-06-13 06:14:10,201.201 INFO    ] Launching Daemon at Sat Jun 13 06:14:10 IST 2026
[2026-06-13 06:14:10,212.212 INFO    ] ================================================
[2026-06-13 06:14:10,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:14:10
[2026-06-13 06:14:10,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:14:11,044.044 INFO    ] Initializing speech engine...
[2026-06-13 06:14:11,052.052 INFO    ] 2026-06-13 06:14:11
[2026-06-13 06:14:11,278.278 INFO    ] 2026-06-13 06:14:11
[2026-06-13 06:14:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:14:11,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:14:11,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:14:11,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:14:11,707.707 INFO    ] time= 13/06/2026 06:14:11
[2026-06-13 06:14:11,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:14:11,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:14:11,827.827 INFO    ] No existing commands found in stream
[2026-06-13 06:14:16,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:16,840.840 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 06:14:19,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:14:19,202.202 INFO    ] Checking for system updates...
[2026-06-13 06:14:19,224.224 INFO    ] 200
[2026-06-13 06:14:19,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:19,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:14:19,256.256 INFO    ] No update needed
[2026-06-13 06:14:19,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:19,279.279 INFO    ] 200
[2026-06-13 06:14:19,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:19,305.305 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:19,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:14:19,341.341 INFO    ] No camera update needed
[2026-06-13 06:14:19,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:19,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:19,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:19,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:14:21,389.389 INFO    ] ================================================
[2026-06-13 06:14:21,405.405 INFO    ] Launching Daemon at Sat Jun 13 06:14:21 IST 2026
[2026-06-13 06:14:21,416.416 INFO    ] ================================================
[2026-06-13 06:14:21,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:14:21
[2026-06-13 06:14:22,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:14:22,266.266 INFO    ] Initializing speech engine...
[2026-06-13 06:14:22,272.272 INFO    ] 2026-06-13 06:14:22
[2026-06-13 06:14:22,479.479 INFO    ] 2026-06-13 06:14:22
[2026-06-13 06:14:22,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:14:22,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:14:22,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:14:22,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:14:22,898.898 INFO    ] time= 13/06/2026 06:14:22
[2026-06-13 06:14:22,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:14:22,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:14:22,993.993 INFO    ] No existing commands found in stream
[2026-06-13 06:14:28,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:28,007.007 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 06:14:28,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:14:28,481.481 INFO    ] Checking for system updates...
[2026-06-13 06:14:28,503.503 INFO    ] 200
[2026-06-13 06:14:28,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:28,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:28,536.536 INFO    ] No update needed
[2026-06-13 06:14:28,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:28,558.558 INFO    ] 200
[2026-06-13 06:14:28,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:28,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:28,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:28,617.617 INFO    ] No camera update needed
[2026-06-13 06:14:28,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:28,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:28,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:28,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:14:30,664.664 INFO    ] ================================================
[2026-06-13 06:14:30,679.679 INFO    ] Launching Daemon at Sat Jun 13 06:14:30 IST 2026
[2026-06-13 06:14:30,689.689 INFO    ] ================================================
[2026-06-13 06:14:31,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:14:31
[2026-06-13 06:14:31,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:14:31,502.502 INFO    ] Initializing speech engine...
[2026-06-13 06:14:31,515.515 INFO    ] 2026-06-13 06:14:31
[2026-06-13 06:14:31,737.737 INFO    ] 2026-06-13 06:14:31
[2026-06-13 06:14:31,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:14:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:14:31,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:14:32,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:14:32,180.180 INFO    ] time= 13/06/2026 06:14:32
[2026-06-13 06:14:32,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:14:32,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:14:32,340.340 INFO    ] No existing commands found in stream
[2026-06-13 06:14:37,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:37,366.366 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 06:14:39,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:14:39,268.268 INFO    ] Checking for system updates...
[2026-06-13 06:14:39,289.289 INFO    ] 200
[2026-06-13 06:14:39,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:39,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:39,322.322 INFO    ] No update needed
[2026-06-13 06:14:39,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:39,343.343 INFO    ] 200
[2026-06-13 06:14:39,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:39,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:39,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:39,407.407 INFO    ] No camera update needed
[2026-06-13 06:14:39,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:39,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:39,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:39,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:14:41,453.453 INFO    ] ================================================
[2026-06-13 06:14:41,469.469 INFO    ] Launching Daemon at Sat Jun 13 06:14:41 IST 2026
[2026-06-13 06:14:41,479.479 INFO    ] ================================================
[2026-06-13 06:14:41,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:14:41
[2026-06-13 06:14:42,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:14:42,293.293 INFO    ] Initializing speech engine...
[2026-06-13 06:14:42,298.298 INFO    ] 2026-06-13 06:14:42
[2026-06-13 06:14:42,504.504 INFO    ] 2026-06-13 06:14:42
[2026-06-13 06:14:42,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:14:42,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:14:42,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:14:42,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:14:42,916.916 INFO    ] time= 13/06/2026 06:14:42
[2026-06-13 06:14:42,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:14:43,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:14:43,141.141 INFO    ] No existing commands found in stream
[2026-06-13 06:14:48,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:48,165.165 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 06:14:48,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:14:48,652.652 INFO    ] Checking for system updates...
[2026-06-13 06:14:48,674.674 INFO    ] 200
[2026-06-13 06:14:48,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:48,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:14:48,710.710 INFO    ] No update needed
[2026-06-13 06:14:48,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:48,732.732 INFO    ] 200
[2026-06-13 06:14:48,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:48,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:48,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:14:48,807.807 INFO    ] No camera update needed
[2026-06-13 06:14:48,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:48,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:48,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:14:50,856.856 INFO    ] ================================================
[2026-06-13 06:14:50,872.872 INFO    ] Launching Daemon at Sat Jun 13 06:14:50 IST 2026
[2026-06-13 06:14:50,883.883 INFO    ] ================================================
[2026-06-13 06:14:51,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:14:51
[2026-06-13 06:14:51,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:14:51,756.756 INFO    ] Initializing speech engine...
[2026-06-13 06:14:51,762.762 INFO    ] 2026-06-13 06:14:51
[2026-06-13 06:14:51,970.970 INFO    ] 2026-06-13 06:14:51
[2026-06-13 06:14:51,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:14:52,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:14:52,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:14:52,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:14:52,376.376 INFO    ] time= 13/06/2026 06:14:52
[2026-06-13 06:14:52,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:14:52,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:14:52,487.487 INFO    ] No existing commands found in stream
[2026-06-13 06:14:57,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:14:57,505.505 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 06:14:59,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:14:59,174.174 INFO    ] Checking for system updates...
[2026-06-13 06:14:59,195.195 INFO    ] 200
[2026-06-13 06:14:59,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:59,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:59,231.231 INFO    ] No update needed
[2026-06-13 06:14:59,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 06:14:59,251.251 INFO    ] 200
[2026-06-13 06:14:59,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:14:59,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:14:59,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:14:59,314.314 INFO    ] No camera update needed
[2026-06-13 06:14:59,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:14:59,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:14:59,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:14:59,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:01,361.361 INFO    ] ================================================
[2026-06-13 06:15:01,376.376 INFO    ] Launching Daemon at Sat Jun 13 06:15:01 IST 2026
[2026-06-13 06:15:01,387.387 INFO    ] ================================================
[2026-06-13 06:15:01,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:01
[2026-06-13 06:15:02,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:15:02,635.635 INFO    ] Initializing speech engine...
[2026-06-13 06:15:02,637.637 INFO    ] 2026-06-13 06:15:02
[2026-06-13 06:15:02,884.884 INFO    ] 2026-06-13 06:15:02
[2026-06-13 06:15:02,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:15:03,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:15:03,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:15:03,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:15:03,266.266 INFO    ] time= 13/06/2026 06:15:03
[2026-06-13 06:15:03,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:15:03,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:15:03,411.411 INFO    ] No existing commands found in stream
[2026-06-13 06:15:08,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:15:08,424.424 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 06:15:11,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:15:11,591.591 INFO    ] Checking for system updates...
[2026-06-13 06:15:11,614.614 INFO    ] 200
[2026-06-13 06:15:11,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:11,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:15:11,648.648 INFO    ] No update needed
[2026-06-13 06:15:11,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 06:15:11,671.671 INFO    ] 200
[2026-06-13 06:15:11,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:11,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:15:11,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:15:11,738.738 INFO    ] No camera update needed
[2026-06-13 06:15:11,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:15:11,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:15:11,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:15:11,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:13,770.770 INFO    ] ================================================
[2026-06-13 06:15:13,779.779 INFO    ] Launching Daemon at Sat Jun 13 06:15:13 IST 2026
[2026-06-13 06:15:13,785.785 INFO    ] ================================================
[2026-06-13 06:15:14,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:14
[2026-06-13 06:15:14,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:15:14,596.596 INFO    ] Initializing speech engine...
[2026-06-13 06:15:14,601.601 INFO    ] 2026-06-13 06:15:14
[2026-06-13 06:15:14,793.793 INFO    ] 2026-06-13 06:15:14
[2026-06-13 06:15:14,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:15:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:15:15,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:15:15,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:15:15,249.249 INFO    ] time= 13/06/2026 06:15:15
[2026-06-13 06:15:15,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:15:15,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:15:15,405.405 INFO    ] No existing commands found in stream
[2026-06-13 06:15:20,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:15:20,419.419 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 06:15:23,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:15:23,577.577 INFO    ] Checking for system updates...
[2026-06-13 06:15:23,600.600 INFO    ] 200
[2026-06-13 06:15:23,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:23,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:15:23,636.636 INFO    ] No update needed
[2026-06-13 06:15:23,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 06:15:23,658.658 INFO    ] 200
[2026-06-13 06:15:23,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:23,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:15:23,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:15:23,720.720 INFO    ] No camera update needed
[2026-06-13 06:15:23,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:15:23,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:15:23,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:15:23,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:25,767.767 INFO    ] ================================================
[2026-06-13 06:15:25,787.787 INFO    ] Launching Daemon at Sat Jun 13 06:15:25 IST 2026
[2026-06-13 06:15:25,797.797 INFO    ] ================================================
[2026-06-13 06:15:26,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:26
[2026-06-13 06:15:26,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:15:26,610.610 INFO    ] Initializing speech engine...
[2026-06-13 06:15:26,614.614 INFO    ] 2026-06-13 06:15:26
[2026-06-13 06:15:26,818.818 INFO    ] 2026-06-13 06:15:26
[2026-06-13 06:15:26,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:15:27,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:15:27,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:15:27,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:15:27,231.231 INFO    ] time= 13/06/2026 06:15:27
[2026-06-13 06:15:27,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:15:27,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:15:27,415.415 INFO    ] No existing commands found in stream
[2026-06-13 06:15:32,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:15:32,427.427 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 06:15:35,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:15:35,113.113 INFO    ] Checking for system updates...
[2026-06-13 06:15:35,139.139 INFO    ] 200
[2026-06-13 06:15:35,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:35,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:15:35,178.178 INFO    ] No update needed
[2026-06-13 06:15:35,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 06:15:35,202.202 INFO    ] 200
[2026-06-13 06:15:35,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:35,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:15:35,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:15:35,270.270 INFO    ] No camera update needed
[2026-06-13 06:15:35,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:15:35,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:15:35,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:15:35,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:37,305.305 INFO    ] ================================================
[2026-06-13 06:15:37,313.313 INFO    ] Launching Daemon at Sat Jun 13 06:15:37 IST 2026
[2026-06-13 06:15:37,319.319 INFO    ] ================================================
[2026-06-13 06:15:37,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:37
[2026-06-13 06:15:37,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:15:38,063.063 INFO    ] Initializing speech engine...
[2026-06-13 06:15:38,065.065 INFO    ] 2026-06-13 06:15:38
[2026-06-13 06:15:38,269.269 INFO    ] 2026-06-13 06:15:38
[2026-06-13 06:15:38,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:15:38,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:15:38,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:15:38,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:15:38,662.662 INFO    ] time= 13/06/2026 06:15:38
[2026-06-13 06:15:38,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:15:38,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:15:38,830.830 INFO    ] No existing commands found in stream
[2026-06-13 06:15:43,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:15:43,843.843 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 06:15:47,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:15:47,369.369 INFO    ] Checking for system updates...
[2026-06-13 06:15:47,390.390 INFO    ] 200
[2026-06-13 06:15:47,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:47,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:15:47,425.425 INFO    ] No update needed
[2026-06-13 06:15:47,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 06:15:47,447.447 INFO    ] 200
[2026-06-13 06:15:47,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:47,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:15:47,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:15:47,511.511 INFO    ] No camera update needed
[2026-06-13 06:15:47,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:15:47,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:15:47,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:15:47,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:49,559.559 INFO    ] ================================================
[2026-06-13 06:15:49,574.574 INFO    ] Launching Daemon at Sat Jun 13 06:15:49 IST 2026
[2026-06-13 06:15:49,585.585 INFO    ] ================================================
[2026-06-13 06:15:49,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:49
[2026-06-13 06:15:50,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:15:50,456.456 INFO    ] Initializing speech engine...
[2026-06-13 06:15:50,460.460 INFO    ] 2026-06-13 06:15:50
[2026-06-13 06:15:50,709.709 INFO    ] 2026-06-13 06:15:50
[2026-06-13 06:15:50,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:15:50,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:15:50,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:15:51,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:15:51,146.146 INFO    ] time= 13/06/2026 06:15:51
[2026-06-13 06:15:51,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:15:51,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:15:51,298.298 INFO    ] No existing commands found in stream
[2026-06-13 06:15:56,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:15:56,319.319 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 06:15:57,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:15:57,027.027 INFO    ] Checking for system updates...
[2026-06-13 06:15:57,048.048 INFO    ] 200
[2026-06-13 06:15:57,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:57,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:15:57,084.084 INFO    ] No update needed
[2026-06-13 06:15:57,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 06:15:57,106.106 INFO    ] 200
[2026-06-13 06:15:57,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:15:57,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:15:57,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:15:57,195.195 INFO    ] No camera update needed
[2026-06-13 06:15:57,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:15:57,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:15:57,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:15:57,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:15:59,242.242 INFO    ] ================================================
[2026-06-13 06:15:59,257.257 INFO    ] Launching Daemon at Sat Jun 13 06:15:59 IST 2026
[2026-06-13 06:15:59,269.269 INFO    ] ================================================
[2026-06-13 06:15:59,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:15:59
[2026-06-13 06:15:59,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:00,094.094 INFO    ] Initializing speech engine...
[2026-06-13 06:16:00,109.109 INFO    ] 2026-06-13 06:16:00
[2026-06-13 06:16:00,331.331 INFO    ] 2026-06-13 06:16:00
[2026-06-13 06:16:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:00,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:00,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:00,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:00,674.674 INFO    ] time= 13/06/2026 06:16:00
[2026-06-13 06:16:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:00,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:00,826.826 INFO    ] No existing commands found in stream
[2026-06-13 06:16:05,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:16:05,838.838 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 06:16:09,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:16:09,208.208 INFO    ] Checking for system updates...
[2026-06-13 06:16:09,231.231 INFO    ] 200
[2026-06-13 06:16:09,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:09,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:16:09,284.284 INFO    ] No update needed
[2026-06-13 06:16:09,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 06:16:09,319.319 INFO    ] 200
[2026-06-13 06:16:09,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:09,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:16:09,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:16:09,386.386 INFO    ] No camera update needed
[2026-06-13 06:16:09,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:16:09,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:16:09,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:16:09,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:16:11,432.432 INFO    ] ================================================
[2026-06-13 06:16:11,440.440 INFO    ] Launching Daemon at Sat Jun 13 06:16:11 IST 2026
[2026-06-13 06:16:11,446.446 INFO    ] ================================================
[2026-06-13 06:16:11,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:16:11
[2026-06-13 06:16:12,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:12,211.211 INFO    ] Initializing speech engine...
[2026-06-13 06:16:12,217.217 INFO    ] 2026-06-13 06:16:12
[2026-06-13 06:16:12,421.421 INFO    ] 2026-06-13 06:16:12
[2026-06-13 06:16:12,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:12,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:12,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:12,861.861 INFO    ] time= 13/06/2026 06:16:12
[2026-06-13 06:16:12,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:12,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:13,069.069 INFO    ] No existing commands found in stream
[2026-06-13 06:16:18,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:16:18,086.086 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 06:16:20,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:16:20,857.857 INFO    ] Checking for system updates...
[2026-06-13 06:16:20,880.880 INFO    ] 200
[2026-06-13 06:16:20,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:20,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:16:20,915.915 INFO    ] No update needed
[2026-06-13 06:16:20,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 06:16:20,937.937 INFO    ] 200
[2026-06-13 06:16:20,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:20,964.964 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:16:21,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:16:21,009.009 INFO    ] No camera update needed
[2026-06-13 06:16:21,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:16:21,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:16:21,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:16:21,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:16:23,057.057 INFO    ] ================================================
[2026-06-13 06:16:23,072.072 INFO    ] Launching Daemon at Sat Jun 13 06:16:23 IST 2026
[2026-06-13 06:16:23,082.082 INFO    ] ================================================
[2026-06-13 06:16:23,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:16:23
[2026-06-13 06:16:23,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:23,933.933 INFO    ] Initializing speech engine...
[2026-06-13 06:16:23,943.943 INFO    ] 2026-06-13 06:16:23
[2026-06-13 06:16:24,151.151 INFO    ] 2026-06-13 06:16:24
[2026-06-13 06:16:24,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:24,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:24,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:24,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:24,567.567 INFO    ] time= 13/06/2026 06:16:24
[2026-06-13 06:16:24,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:24,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:24,666.666 INFO    ] No existing commands found in stream
[2026-06-13 06:16:29,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:16:29,679.679 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 06:16:30,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:16:30,842.842 INFO    ] Checking for system updates...
[2026-06-13 06:16:30,863.863 INFO    ] 200
[2026-06-13 06:16:30,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:30,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:16:30,899.899 INFO    ] No update needed
[2026-06-13 06:16:30,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 06:16:30,920.920 INFO    ] 200
[2026-06-13 06:16:30,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:30,945.945 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:16:30,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:16:30,983.983 INFO    ] No camera update needed
[2026-06-13 06:16:30,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:16:30,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:16:30,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:16:30,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:16:33,016.016 INFO    ] ================================================
[2026-06-13 06:16:33,025.025 INFO    ] Launching Daemon at Sat Jun 13 06:16:33 IST 2026
[2026-06-13 06:16:33,031.031 INFO    ] ================================================
[2026-06-13 06:16:33,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:16:33
[2026-06-13 06:16:33,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:33,828.828 INFO    ] Initializing speech engine...
[2026-06-13 06:16:33,836.836 INFO    ] 2026-06-13 06:16:33
[2026-06-13 06:16:34,051.051 INFO    ] 2026-06-13 06:16:34
[2026-06-13 06:16:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:34,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:34,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:34,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:34,443.443 INFO    ] time= 13/06/2026 06:16:34
[2026-06-13 06:16:34,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:34,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:34,569.569 INFO    ] No existing commands found in stream
[2026-06-13 06:16:39,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:16:39,582.582 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 06:16:43,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:16:43,301.301 INFO    ] Checking for system updates...
[2026-06-13 06:16:43,322.322 INFO    ] 200
[2026-06-13 06:16:43,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:43,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:16:43,355.355 INFO    ] No update needed
[2026-06-13 06:16:43,356.356 INFO    ] Checking for camera pi updates...
[2026-06-13 06:16:43,377.377 INFO    ] 200
[2026-06-13 06:16:43,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:43,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:16:43,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:16:43,441.441 INFO    ] No camera update needed
[2026-06-13 06:16:43,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:16:43,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:16:43,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:16:43,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:16:45,489.489 INFO    ] ================================================
[2026-06-13 06:16:45,504.504 INFO    ] Launching Daemon at Sat Jun 13 06:16:45 IST 2026
[2026-06-13 06:16:45,515.515 INFO    ] ================================================
[2026-06-13 06:16:45,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:16:45
[2026-06-13 06:16:46,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:46,442.442 INFO    ] Initializing speech engine...
[2026-06-13 06:16:46,455.455 INFO    ] 2026-06-13 06:16:46
[2026-06-13 06:16:46,775.775 INFO    ] 2026-06-13 06:16:46
[2026-06-13 06:16:46,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:47,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:47,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:47,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:47,227.227 INFO    ] time= 13/06/2026 06:16:47
[2026-06-13 06:16:47,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:47,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:47,441.441 INFO    ] No existing commands found in stream
[2026-06-13 06:16:52,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:16:52,471.471 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 06:16:54,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:16:54,006.006 INFO    ] Checking for system updates...
[2026-06-13 06:16:54,028.028 INFO    ] 200
[2026-06-13 06:16:54,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:54,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:16:54,061.061 INFO    ] No update needed
[2026-06-13 06:16:54,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 06:16:54,084.084 INFO    ] 200
[2026-06-13 06:16:54,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:16:54,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:16:54,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:16:54,156.156 INFO    ] No camera update needed
[2026-06-13 06:16:54,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:16:54,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:16:54,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:16:54,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:16:56,204.204 INFO    ] ================================================
[2026-06-13 06:16:56,220.220 INFO    ] Launching Daemon at Sat Jun 13 06:16:56 IST 2026
[2026-06-13 06:16:56,230.230 INFO    ] ================================================
[2026-06-13 06:16:56,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:16:56
[2026-06-13 06:16:56,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:16:57,052.052 INFO    ] Initializing speech engine...
[2026-06-13 06:16:57,055.055 INFO    ] 2026-06-13 06:16:57
[2026-06-13 06:16:57,247.247 INFO    ] 2026-06-13 06:16:57
[2026-06-13 06:16:57,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:16:57,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:16:57,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:16:57,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:16:57,538.538 INFO    ] time= 13/06/2026 06:16:57
[2026-06-13 06:16:57,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:16:57,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:16:57,645.645 INFO    ] No existing commands found in stream
[2026-06-13 06:17:02,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:17:02,670.670 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 06:17:06,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:17:06,513.513 INFO    ] Checking for system updates...
[2026-06-13 06:17:06,538.538 INFO    ] 200
[2026-06-13 06:17:06,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:06,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:06,573.573 INFO    ] No update needed
[2026-06-13 06:17:06,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 06:17:06,594.594 INFO    ] 200
[2026-06-13 06:17:06,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:06,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:17:06,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:06,662.662 INFO    ] No camera update needed
[2026-06-13 06:17:06,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:17:06,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:17:06,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:17:06,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:17:08,712.712 INFO    ] ================================================
[2026-06-13 06:17:08,728.728 INFO    ] Launching Daemon at Sat Jun 13 06:17:08 IST 2026
[2026-06-13 06:17:08,739.739 INFO    ] ================================================
[2026-06-13 06:17:09,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:17:09
[2026-06-13 06:17:09,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:17:10,095.095 INFO    ] Initializing speech engine...
[2026-06-13 06:17:10,118.118 INFO    ] 2026-06-13 06:17:10
[2026-06-13 06:17:10,376.376 INFO    ] 2026-06-13 06:17:10
[2026-06-13 06:17:10,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:17:10,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:17:10,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:17:10,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:17:10,822.822 INFO    ] time= 13/06/2026 06:17:10
[2026-06-13 06:17:10,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:17:10,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:17:11,005.005 INFO    ] No existing commands found in stream
[2026-06-13 06:17:16,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:17:16,020.020 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 06:17:19,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:17:19,605.605 INFO    ] Checking for system updates...
[2026-06-13 06:17:19,626.626 INFO    ] 200
[2026-06-13 06:17:19,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:19,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:19,662.662 INFO    ] No update needed
[2026-06-13 06:17:19,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 06:17:19,684.684 INFO    ] 200
[2026-06-13 06:17:19,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:19,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:17:19,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:17:19,747.747 INFO    ] No camera update needed
[2026-06-13 06:17:19,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:17:19,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:17:19,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:17:19,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:17:21,795.795 INFO    ] ================================================
[2026-06-13 06:17:21,811.811 INFO    ] Launching Daemon at Sat Jun 13 06:17:21 IST 2026
[2026-06-13 06:17:21,821.821 INFO    ] ================================================
[2026-06-13 06:17:22,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:17:22
[2026-06-13 06:17:22,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:17:22,670.670 INFO    ] Initializing speech engine...
[2026-06-13 06:17:22,675.675 INFO    ] 2026-06-13 06:17:22
[2026-06-13 06:17:22,885.885 INFO    ] 2026-06-13 06:17:22
[2026-06-13 06:17:22,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:17:23,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:17:23,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:17:23,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:17:23,288.288 INFO    ] time= 13/06/2026 06:17:23
[2026-06-13 06:17:23,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:17:23,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:17:23,404.404 INFO    ] No existing commands found in stream
[2026-06-13 06:17:28,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:17:28,419.419 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 06:17:31,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:17:31,363.363 INFO    ] Checking for system updates...
[2026-06-13 06:17:31,386.386 INFO    ] 200
[2026-06-13 06:17:31,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:31,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:17:31,424.424 INFO    ] No update needed
[2026-06-13 06:17:31,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 06:17:31,447.447 INFO    ] 200
[2026-06-13 06:17:31,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:31,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:17:31,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:17:31,503.503 INFO    ] No camera update needed
[2026-06-13 06:17:31,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:17:31,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:17:31,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:17:31,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:17:33,545.545 INFO    ] ================================================
[2026-06-13 06:17:33,561.561 INFO    ] Launching Daemon at Sat Jun 13 06:17:33 IST 2026
[2026-06-13 06:17:33,572.572 INFO    ] ================================================
[2026-06-13 06:17:33,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:17:33
[2026-06-13 06:17:34,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:17:34,414.414 INFO    ] Initializing speech engine...
[2026-06-13 06:17:34,419.419 INFO    ] 2026-06-13 06:17:34
[2026-06-13 06:17:34,631.631 INFO    ] 2026-06-13 06:17:34
[2026-06-13 06:17:34,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:17:34,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:17:34,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:17:34,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:17:35,058.058 INFO    ] time= 13/06/2026 06:17:35
[2026-06-13 06:17:35,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:17:35,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:17:35,155.155 INFO    ] No existing commands found in stream
[2026-06-13 06:17:40,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:17:40,170.170 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 06:17:42,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:17:42,252.252 INFO    ] Checking for system updates...
[2026-06-13 06:17:42,274.274 INFO    ] 200
[2026-06-13 06:17:42,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:42,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:42,308.308 INFO    ] No update needed
[2026-06-13 06:17:42,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 06:17:42,329.329 INFO    ] 200
[2026-06-13 06:17:42,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:42,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:17:42,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:42,395.395 INFO    ] No camera update needed
[2026-06-13 06:17:42,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:17:42,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:17:42,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:17:42,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:17:44,438.438 INFO    ] ================================================
[2026-06-13 06:17:44,453.453 INFO    ] Launching Daemon at Sat Jun 13 06:17:44 IST 2026
[2026-06-13 06:17:44,464.464 INFO    ] ================================================
[2026-06-13 06:17:44,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:17:44
[2026-06-13 06:17:45,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:17:45,236.236 INFO    ] Initializing speech engine...
[2026-06-13 06:17:45,241.241 INFO    ] 2026-06-13 06:17:45
[2026-06-13 06:17:45,472.472 INFO    ] 2026-06-13 06:17:45
[2026-06-13 06:17:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:17:45,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:17:45,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:17:45,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:17:45,853.853 INFO    ] time= 13/06/2026 06:17:45
[2026-06-13 06:17:45,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:17:45,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:17:46,037.037 INFO    ] No existing commands found in stream
[2026-06-13 06:17:51,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:17:51,049.049 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 06:17:54,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:17:54,495.495 INFO    ] Checking for system updates...
[2026-06-13 06:17:54,516.516 INFO    ] 200
[2026-06-13 06:17:54,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:54,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:54,549.549 INFO    ] No update needed
[2026-06-13 06:17:54,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 06:17:54,570.570 INFO    ] 200
[2026-06-13 06:17:54,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:17:54,596.596 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:17:54,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:17:54,634.634 INFO    ] No camera update needed
[2026-06-13 06:17:54,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:17:54,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:17:54,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:17:54,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:17:56,682.682 INFO    ] ================================================
[2026-06-13 06:17:56,697.697 INFO    ] Launching Daemon at Sat Jun 13 06:17:56 IST 2026
[2026-06-13 06:17:56,708.708 INFO    ] ================================================
[2026-06-13 06:17:57,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:17:57
[2026-06-13 06:17:57,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:17:57,502.502 INFO    ] Initializing speech engine...
[2026-06-13 06:17:57,507.507 INFO    ] 2026-06-13 06:17:57
[2026-06-13 06:17:57,711.711 INFO    ] 2026-06-13 06:17:57
[2026-06-13 06:17:57,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:17:57,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:17:57,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:17:58,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:17:58,076.076 INFO    ] time= 13/06/2026 06:17:58
[2026-06-13 06:17:58,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:17:58,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:17:58,297.297 INFO    ] No existing commands found in stream
[2026-06-13 06:18:03,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:18:03,321.321 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 06:18:04,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:18:04,395.395 INFO    ] Checking for system updates...
[2026-06-13 06:18:04,416.416 INFO    ] 200
[2026-06-13 06:18:04,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:04,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:04,451.451 INFO    ] No update needed
[2026-06-13 06:18:04,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 06:18:04,472.472 INFO    ] 200
[2026-06-13 06:18:04,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:04,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:18:04,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:04,642.642 INFO    ] No camera update needed
[2026-06-13 06:18:04,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:18:04,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:18:04,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:18:04,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:18:06,691.691 INFO    ] ================================================
[2026-06-13 06:18:06,707.707 INFO    ] Launching Daemon at Sat Jun 13 06:18:06 IST 2026
[2026-06-13 06:18:06,718.718 INFO    ] ================================================
[2026-06-13 06:18:07,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:18:07
[2026-06-13 06:18:07,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:18:07,523.523 INFO    ] Initializing speech engine...
[2026-06-13 06:18:07,526.526 INFO    ] 2026-06-13 06:18:07
[2026-06-13 06:18:07,745.745 INFO    ] 2026-06-13 06:18:07
[2026-06-13 06:18:07,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:18:07,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:18:07,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:18:08,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:18:08,149.149 INFO    ] time= 13/06/2026 06:18:08
[2026-06-13 06:18:08,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:18:08,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:18:08,266.266 INFO    ] No existing commands found in stream
[2026-06-13 06:18:13,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:18:13,278.278 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 06:18:17,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:18:17,126.126 INFO    ] Checking for system updates...
[2026-06-13 06:18:17,147.147 INFO    ] 200
[2026-06-13 06:18:17,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:17,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:18:17,180.180 INFO    ] No update needed
[2026-06-13 06:18:17,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 06:18:17,201.201 INFO    ] 200
[2026-06-13 06:18:17,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:17,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:18:17,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:18:17,272.272 INFO    ] No camera update needed
[2026-06-13 06:18:17,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:18:17,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:18:17,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:18:17,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:18:19,323.323 INFO    ] ================================================
[2026-06-13 06:18:19,339.339 INFO    ] Launching Daemon at Sat Jun 13 06:18:19 IST 2026
[2026-06-13 06:18:19,350.350 INFO    ] ================================================
[2026-06-13 06:18:19,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:18:19
[2026-06-13 06:18:20,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:18:20,149.149 INFO    ] Initializing speech engine...
[2026-06-13 06:18:20,162.162 INFO    ] 2026-06-13 06:18:20
[2026-06-13 06:18:20,382.382 INFO    ] 2026-06-13 06:18:20
[2026-06-13 06:18:20,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:18:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:18:20,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:18:20,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:18:20,764.764 INFO    ] time= 13/06/2026 06:18:20
[2026-06-13 06:18:20,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:18:20,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:18:20,940.940 INFO    ] No existing commands found in stream
[2026-06-13 06:18:25,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:18:25,951.951 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 06:18:29,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:18:29,941.941 INFO    ] Checking for system updates...
[2026-06-13 06:18:29,962.962 INFO    ] 200
[2026-06-13 06:18:29,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:29,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:18:29,994.994 INFO    ] No update needed
[2026-06-13 06:18:29,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 06:18:30,017.017 INFO    ] 200
[2026-06-13 06:18:30,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:30,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:18:30,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:18:30,083.083 INFO    ] No camera update needed
[2026-06-13 06:18:30,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:18:30,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:18:30,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:18:30,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:18:32,123.123 INFO    ] ================================================
[2026-06-13 06:18:32,132.132 INFO    ] Launching Daemon at Sat Jun 13 06:18:32 IST 2026
[2026-06-13 06:18:32,139.139 INFO    ] ================================================
[2026-06-13 06:18:32,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:18:32
[2026-06-13 06:18:32,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:18:32,974.974 INFO    ] Initializing speech engine...
[2026-06-13 06:18:32,980.980 INFO    ] 2026-06-13 06:18:32
[2026-06-13 06:18:33,291.291 INFO    ] 2026-06-13 06:18:33
[2026-06-13 06:18:33,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:18:33,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:18:33,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:18:33,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:18:33,683.683 INFO    ] time= 13/06/2026 06:18:33
[2026-06-13 06:18:33,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:18:33,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:18:33,814.814 INFO    ] No existing commands found in stream
[2026-06-13 06:18:38,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:18:38,827.827 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 06:18:40,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:18:40,886.886 INFO    ] Checking for system updates...
[2026-06-13 06:18:40,907.907 INFO    ] 200
[2026-06-13 06:18:40,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:40,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:40,940.940 INFO    ] No update needed
[2026-06-13 06:18:40,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 06:18:40,961.961 INFO    ] 200
[2026-06-13 06:18:40,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:40,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:18:41,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:41,025.025 INFO    ] No camera update needed
[2026-06-13 06:18:41,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:18:41,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:18:41,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:18:41,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:18:43,074.074 INFO    ] ================================================
[2026-06-13 06:18:43,090.090 INFO    ] Launching Daemon at Sat Jun 13 06:18:43 IST 2026
[2026-06-13 06:18:43,101.101 INFO    ] ================================================
[2026-06-13 06:18:43,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:18:43
[2026-06-13 06:18:43,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:18:43,943.943 INFO    ] Initializing speech engine...
[2026-06-13 06:18:43,948.948 INFO    ] 2026-06-13 06:18:43
[2026-06-13 06:18:44,195.195 INFO    ] 2026-06-13 06:18:44
[2026-06-13 06:18:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:18:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:18:44,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:18:44,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:18:44,616.616 INFO    ] time= 13/06/2026 06:18:44
[2026-06-13 06:18:44,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:18:44,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:18:44,763.763 INFO    ] No existing commands found in stream
[2026-06-13 06:18:49,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:18:49,777.777 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 06:18:52,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:18:52,897.897 INFO    ] Checking for system updates...
[2026-06-13 06:18:52,919.919 INFO    ] 200
[2026-06-13 06:18:52,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:52,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:52,952.952 INFO    ] No update needed
[2026-06-13 06:18:52,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 06:18:52,975.975 INFO    ] 200
[2026-06-13 06:18:52,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:18:53,002.002 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:18:53,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:18:53,044.044 INFO    ] No camera update needed
[2026-06-13 06:18:53,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:18:53,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:18:53,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:18:53,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:18:55,092.092 INFO    ] ================================================
[2026-06-13 06:18:55,108.108 INFO    ] Launching Daemon at Sat Jun 13 06:18:55 IST 2026
[2026-06-13 06:18:55,119.119 INFO    ] ================================================
[2026-06-13 06:18:55,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:18:55
[2026-06-13 06:18:55,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:18:55,928.928 INFO    ] Initializing speech engine...
[2026-06-13 06:18:55,936.936 INFO    ] 2026-06-13 06:18:55
[2026-06-13 06:18:56,145.145 INFO    ] 2026-06-13 06:18:56
[2026-06-13 06:18:56,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:18:56,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:18:56,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:18:56,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:18:56,551.551 INFO    ] time= 13/06/2026 06:18:56
[2026-06-13 06:18:56,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:18:56,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:18:56,661.661 INFO    ] No existing commands found in stream
[2026-06-13 06:19:01,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:01,673.673 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 06:19:04,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:19:04,937.937 INFO    ] Checking for system updates...
[2026-06-13 06:19:04,957.957 INFO    ] 200
[2026-06-13 06:19:04,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:04,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:04,993.993 INFO    ] No update needed
[2026-06-13 06:19:04,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 06:19:05,013.013 INFO    ] 200
[2026-06-13 06:19:05,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:05,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:19:05,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:05,083.083 INFO    ] No camera update needed
[2026-06-13 06:19:05,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:19:05,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:19:05,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:19:05,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:19:07,131.131 INFO    ] ================================================
[2026-06-13 06:19:07,147.147 INFO    ] Launching Daemon at Sat Jun 13 06:19:07 IST 2026
[2026-06-13 06:19:07,157.157 INFO    ] ================================================
[2026-06-13 06:19:07,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:19:07
[2026-06-13 06:19:07,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:19:07,946.946 INFO    ] Initializing speech engine...
[2026-06-13 06:19:07,951.951 INFO    ] 2026-06-13 06:19:07
[2026-06-13 06:19:08,157.157 INFO    ] 2026-06-13 06:19:08
[2026-06-13 06:19:08,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:19:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:19:08,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:19:08,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:19:08,566.566 INFO    ] time= 13/06/2026 06:19:08
[2026-06-13 06:19:08,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:19:08,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:19:08,679.679 INFO    ] No existing commands found in stream
[2026-06-13 06:19:13,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:13,706.706 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 06:19:16,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:19:16,285.285 INFO    ] Checking for system updates...
[2026-06-13 06:19:16,307.307 INFO    ] 200
[2026-06-13 06:19:16,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:16,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:16,342.342 INFO    ] No update needed
[2026-06-13 06:19:16,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 06:19:16,363.363 INFO    ] 200
[2026-06-13 06:19:16,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:16,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:19:16,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:16,431.431 INFO    ] No camera update needed
[2026-06-13 06:19:16,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:19:16,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:19:16,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:19:16,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:19:18,480.480 INFO    ] ================================================
[2026-06-13 06:19:18,496.496 INFO    ] Launching Daemon at Sat Jun 13 06:19:18 IST 2026
[2026-06-13 06:19:18,507.507 INFO    ] ================================================
[2026-06-13 06:19:18,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:19:18
[2026-06-13 06:19:19,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:19:19,301.301 INFO    ] Initializing speech engine...
[2026-06-13 06:19:19,310.310 INFO    ] 2026-06-13 06:19:19
[2026-06-13 06:19:19,493.493 INFO    ] 2026-06-13 06:19:19
[2026-06-13 06:19:19,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:19:19,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:19:19,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:19:19,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:19:19,938.938 INFO    ] time= 13/06/2026 06:19:19
[2026-06-13 06:19:19,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:19:19,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:19:20,036.036 INFO    ] No existing commands found in stream
[2026-06-13 06:19:25,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:25,049.049 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 06:19:29,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:19:29,208.208 INFO    ] Checking for system updates...
[2026-06-13 06:19:29,268.268 INFO    ] 200
[2026-06-13 06:19:29,272.272 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:29,275.275 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 06:19:29,278.278 INFO    ] Checking for camera pi updates...
[2026-06-13 06:19:29,324.324 INFO    ] 200
[2026-06-13 06:19:29,326.326 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:29,329.329 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 06:19:29,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:19:29,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:19:29,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:19:29,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:19:31,399.399 INFO    ] ================================================
[2026-06-13 06:19:31,416.416 INFO    ] Launching Daemon at Sat Jun 13 06:19:31 IST 2026
[2026-06-13 06:19:31,435.435 INFO    ] ================================================
[2026-06-13 06:19:32,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:19:32
[2026-06-13 06:19:32,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:19:32,665.665 INFO    ] Initializing speech engine...
[2026-06-13 06:19:32,677.677 INFO    ] 2026-06-13 06:19:32
[2026-06-13 06:19:32,886.886 INFO    ] 2026-06-13 06:19:32
[2026-06-13 06:19:32,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:19:33,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:19:33,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:19:33,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:19:33,274.274 INFO    ] time= 13/06/2026 06:19:33
[2026-06-13 06:19:33,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:19:33,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:19:33,399.399 INFO    ] No existing commands found in stream
[2026-06-13 06:19:38,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:38,413.413 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 06:19:40,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:19:40,582.582 INFO    ] Checking for system updates...
[2026-06-13 06:19:40,603.603 INFO    ] 200
[2026-06-13 06:19:40,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:40,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:19:40,638.638 INFO    ] No update needed
[2026-06-13 06:19:40,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 06:19:40,659.659 INFO    ] 200
[2026-06-13 06:19:40,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:40,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:19:40,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:19:40,729.729 INFO    ] No camera update needed
[2026-06-13 06:19:40,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:19:40,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:19:40,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:19:40,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:19:42,779.779 INFO    ] ================================================
[2026-06-13 06:19:42,795.795 INFO    ] Launching Daemon at Sat Jun 13 06:19:42 IST 2026
[2026-06-13 06:19:42,806.806 INFO    ] ================================================
[2026-06-13 06:19:43,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:19:43
[2026-06-13 06:19:43,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:19:43,683.683 INFO    ] Initializing speech engine...
[2026-06-13 06:19:43,687.687 INFO    ] 2026-06-13 06:19:43
[2026-06-13 06:19:43,894.894 INFO    ] 2026-06-13 06:19:43
[2026-06-13 06:19:43,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:19:44,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:19:44,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:19:44,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:19:44,304.304 INFO    ] time= 13/06/2026 06:19:44
[2026-06-13 06:19:44,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:19:44,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:19:44,416.416 INFO    ] No existing commands found in stream
[2026-06-13 06:19:49,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:49,433.433 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 06:19:51,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:19:51,108.108 INFO    ] Checking for system updates...
[2026-06-13 06:19:51,130.130 INFO    ] 200
[2026-06-13 06:19:51,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:51,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:51,166.166 INFO    ] No update needed
[2026-06-13 06:19:51,167.167 INFO    ] Checking for camera pi updates...
[2026-06-13 06:19:51,187.187 INFO    ] 200
[2026-06-13 06:19:51,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:19:51,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:19:51,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:19:51,249.249 INFO    ] No camera update needed
[2026-06-13 06:19:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:19:51,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:19:51,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:19:51,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:19:53,298.298 INFO    ] ================================================
[2026-06-13 06:19:53,314.314 INFO    ] Launching Daemon at Sat Jun 13 06:19:53 IST 2026
[2026-06-13 06:19:53,325.325 INFO    ] ================================================
[2026-06-13 06:19:53,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:19:53
[2026-06-13 06:19:54,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:19:54,134.134 INFO    ] Initializing speech engine...
[2026-06-13 06:19:54,142.142 INFO    ] 2026-06-13 06:19:54
[2026-06-13 06:19:54,356.356 INFO    ] 2026-06-13 06:19:54
[2026-06-13 06:19:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:19:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:19:54,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:19:54,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:19:54,752.752 INFO    ] time= 13/06/2026 06:19:54
[2026-06-13 06:19:54,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:19:54,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:19:54,907.907 INFO    ] No existing commands found in stream
[2026-06-13 06:19:59,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:19:59,920.920 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 06:20:05,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:20:05,364.364 INFO    ] Checking for system updates...
[2026-06-13 06:20:05,400.400 INFO    ] 200
[2026-06-13 06:20:05,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:05,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:20:05,459.459 INFO    ] No update needed
[2026-06-13 06:20:05,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 06:20:05,497.497 INFO    ] 200
[2026-06-13 06:20:05,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:05,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:20:05,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:20:05,689.689 INFO    ] No camera update needed
[2026-06-13 06:20:05,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:20:05,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:20:05,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:20:05,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:20:07,748.748 INFO    ] ================================================
[2026-06-13 06:20:07,763.763 INFO    ] Launching Daemon at Sat Jun 13 06:20:07 IST 2026
[2026-06-13 06:20:07,775.775 INFO    ] ================================================
[2026-06-13 06:20:08,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:20:08
[2026-06-13 06:20:08,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:20:08,582.582 INFO    ] Initializing speech engine...
[2026-06-13 06:20:08,591.591 INFO    ] 2026-06-13 06:20:08
[2026-06-13 06:20:08,799.799 INFO    ] 2026-06-13 06:20:08
[2026-06-13 06:20:08,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:20:09,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:20:09,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:20:09,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:20:09,218.218 INFO    ] time= 13/06/2026 06:20:09
[2026-06-13 06:20:09,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:20:09,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:20:09,370.370 INFO    ] No existing commands found in stream
[2026-06-13 06:20:14,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:20:14,388.388 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 06:20:17,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:20:17,745.745 INFO    ] Checking for system updates...
[2026-06-13 06:20:17,767.767 INFO    ] 200
[2026-06-13 06:20:17,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:17,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:20:17,802.802 INFO    ] No update needed
[2026-06-13 06:20:17,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 06:20:17,823.823 INFO    ] 200
[2026-06-13 06:20:17,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:17,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:20:17,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:20:17,887.887 INFO    ] No camera update needed
[2026-06-13 06:20:17,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:20:17,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:20:17,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:20:17,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:20:19,935.935 INFO    ] ================================================
[2026-06-13 06:20:19,950.950 INFO    ] Launching Daemon at Sat Jun 13 06:20:19 IST 2026
[2026-06-13 06:20:19,961.961 INFO    ] ================================================
[2026-06-13 06:20:20,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:20:20
[2026-06-13 06:20:20,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:20:20,815.815 INFO    ] Initializing speech engine...
[2026-06-13 06:20:20,821.821 INFO    ] 2026-06-13 06:20:20
[2026-06-13 06:20:21,027.027 INFO    ] 2026-06-13 06:20:21
[2026-06-13 06:20:21,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:20:21,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:20:21,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:20:21,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:20:21,432.432 INFO    ] time= 13/06/2026 06:20:21
[2026-06-13 06:20:21,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:20:21,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:20:21,542.542 INFO    ] No existing commands found in stream
[2026-06-13 06:20:26,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:20:26,554.554 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 06:20:27,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:20:27,593.593 INFO    ] Checking for system updates...
[2026-06-13 06:20:27,613.613 INFO    ] 200
[2026-06-13 06:20:27,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:27,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:20:27,649.649 INFO    ] No update needed
[2026-06-13 06:20:27,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 06:20:27,673.673 INFO    ] 200
[2026-06-13 06:20:27,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:27,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:20:27,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:20:27,740.740 INFO    ] No camera update needed
[2026-06-13 06:20:27,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:20:27,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:20:27,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:20:27,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:20:29,789.789 INFO    ] ================================================
[2026-06-13 06:20:29,805.805 INFO    ] Launching Daemon at Sat Jun 13 06:20:29 IST 2026
[2026-06-13 06:20:29,816.816 INFO    ] ================================================
[2026-06-13 06:20:30,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:20:30
[2026-06-13 06:20:30,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:20:30,662.662 INFO    ] Initializing speech engine...
[2026-06-13 06:20:30,670.670 INFO    ] 2026-06-13 06:20:30
[2026-06-13 06:20:31,008.008 INFO    ] 2026-06-13 06:20:30
[2026-06-13 06:20:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:20:31,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:20:31,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:20:31,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:20:31,424.424 INFO    ] time= 13/06/2026 06:20:31
[2026-06-13 06:20:31,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:20:31,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:20:31,609.609 INFO    ] No existing commands found in stream
[2026-06-13 06:20:36,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:20:36,623.623 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 06:20:39,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:20:39,731.731 INFO    ] Checking for system updates...
[2026-06-13 06:20:39,753.753 INFO    ] 200
[2026-06-13 06:20:39,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:39,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:20:39,798.798 INFO    ] No update needed
[2026-06-13 06:20:39,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 06:20:39,820.820 INFO    ] 200
[2026-06-13 06:20:39,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:39,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:20:39,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:20:39,897.897 INFO    ] No camera update needed
[2026-06-13 06:20:39,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:20:39,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:20:39,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:20:39,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:20:41,945.945 INFO    ] ================================================
[2026-06-13 06:20:41,961.961 INFO    ] Launching Daemon at Sat Jun 13 06:20:41 IST 2026
[2026-06-13 06:20:41,971.971 INFO    ] ================================================
[2026-06-13 06:20:42,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:20:42
[2026-06-13 06:20:42,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:20:42,777.777 INFO    ] Initializing speech engine...
[2026-06-13 06:20:42,784.784 INFO    ] 2026-06-13 06:20:42
[2026-06-13 06:20:42,999.999 INFO    ] 2026-06-13 06:20:42
[2026-06-13 06:20:43,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:20:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:20:43,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:20:43,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:20:43,407.407 INFO    ] time= 13/06/2026 06:20:43
[2026-06-13 06:20:43,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:20:43,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:20:43,553.553 INFO    ] No existing commands found in stream
[2026-06-13 06:20:48,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:20:48,567.567 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 06:20:50,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:20:50,153.153 INFO    ] Checking for system updates...
[2026-06-13 06:20:50,175.175 INFO    ] 200
[2026-06-13 06:20:50,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:50,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:20:50,209.209 INFO    ] No update needed
[2026-06-13 06:20:50,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 06:20:50,231.231 INFO    ] 200
[2026-06-13 06:20:50,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:20:50,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:20:50,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:20:50,301.301 INFO    ] No camera update needed
[2026-06-13 06:20:50,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:20:50,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:20:50,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:20:50,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:20:52,349.349 INFO    ] ================================================
[2026-06-13 06:20:52,364.364 INFO    ] Launching Daemon at Sat Jun 13 06:20:52 IST 2026
[2026-06-13 06:20:52,375.375 INFO    ] ================================================
[2026-06-13 06:20:52,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:20:52
[2026-06-13 06:20:53,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:20:53,202.202 INFO    ] Initializing speech engine...
[2026-06-13 06:20:53,215.215 INFO    ] 2026-06-13 06:20:53
[2026-06-13 06:20:53,426.426 INFO    ] 2026-06-13 06:20:53
[2026-06-13 06:20:53,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:20:53,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:20:53,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:20:53,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:20:53,836.836 INFO    ] time= 13/06/2026 06:20:53
[2026-06-13 06:20:53,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:20:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:20:54,086.086 INFO    ] No existing commands found in stream
[2026-06-13 06:20:59,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:20:59,120.120 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 06:21:00,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:21:00,364.364 INFO    ] Checking for system updates...
[2026-06-13 06:21:00,385.385 INFO    ] 200
[2026-06-13 06:21:00,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:00,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:21:00,419.419 INFO    ] No update needed
[2026-06-13 06:21:00,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:00,442.442 INFO    ] 200
[2026-06-13 06:21:00,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:00,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:00,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:00,517.517 INFO    ] No camera update needed
[2026-06-13 06:21:00,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:00,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:00,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:00,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:02,560.560 INFO    ] ================================================
[2026-06-13 06:21:02,573.573 INFO    ] Launching Daemon at Sat Jun 13 06:21:02 IST 2026
[2026-06-13 06:21:02,583.583 INFO    ] ================================================
[2026-06-13 06:21:02,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:02
[2026-06-13 06:21:03,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:03,346.346 INFO    ] Initializing speech engine...
[2026-06-13 06:21:03,350.350 INFO    ] 2026-06-13 06:21:03
[2026-06-13 06:21:03,576.576 INFO    ] 2026-06-13 06:21:03
[2026-06-13 06:21:03,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:03,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:03,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:03,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:03,920.920 INFO    ] time= 13/06/2026 06:21:03
[2026-06-13 06:21:03,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:04,121.121 INFO    ] No existing commands found in stream
[2026-06-13 06:21:09,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:21:09,135.135 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 06:21:12,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:21:12,486.486 INFO    ] Checking for system updates...
[2026-06-13 06:21:12,507.507 INFO    ] 200
[2026-06-13 06:21:12,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:12,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:12,540.540 INFO    ] No update needed
[2026-06-13 06:21:12,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:12,561.561 INFO    ] 200
[2026-06-13 06:21:12,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:12,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:12,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:12,624.624 INFO    ] No camera update needed
[2026-06-13 06:21:12,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:12,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:12,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:12,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:14,672.672 INFO    ] ================================================
[2026-06-13 06:21:14,687.687 INFO    ] Launching Daemon at Sat Jun 13 06:21:14 IST 2026
[2026-06-13 06:21:14,698.698 INFO    ] ================================================
[2026-06-13 06:21:15,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:15
[2026-06-13 06:21:15,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:15,493.493 INFO    ] Initializing speech engine...
[2026-06-13 06:21:15,499.499 INFO    ] 2026-06-13 06:21:15
[2026-06-13 06:21:15,711.711 INFO    ] 2026-06-13 06:21:15
[2026-06-13 06:21:15,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:15,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:15,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:16,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:16,080.080 INFO    ] time= 13/06/2026 06:21:16
[2026-06-13 06:21:16,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:16,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:16,256.256 INFO    ] No existing commands found in stream
[2026-06-13 06:21:21,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:21:21,284.284 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 06:21:25,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:21:25,175.175 INFO    ] Checking for system updates...
[2026-06-13 06:21:25,196.196 INFO    ] 200
[2026-06-13 06:21:25,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:25,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:21:25,231.231 INFO    ] No update needed
[2026-06-13 06:21:25,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:25,254.254 INFO    ] 200
[2026-06-13 06:21:25,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:25,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:25,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:21:25,317.317 INFO    ] No camera update needed
[2026-06-13 06:21:25,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:25,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:25,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:25,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:27,364.364 INFO    ] ================================================
[2026-06-13 06:21:27,380.380 INFO    ] Launching Daemon at Sat Jun 13 06:21:27 IST 2026
[2026-06-13 06:21:27,391.391 INFO    ] ================================================
[2026-06-13 06:21:27,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:27
[2026-06-13 06:21:28,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:28,203.203 INFO    ] Initializing speech engine...
[2026-06-13 06:21:28,209.209 INFO    ] 2026-06-13 06:21:28
[2026-06-13 06:21:28,416.416 INFO    ] 2026-06-13 06:21:28
[2026-06-13 06:21:28,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:28,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:28,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:28,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:28,819.819 INFO    ] time= 13/06/2026 06:21:28
[2026-06-13 06:21:28,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:28,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:28,936.936 INFO    ] No existing commands found in stream
[2026-06-13 06:21:33,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:21:33,948.948 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 06:21:34,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:21:34,467.467 INFO    ] Checking for system updates...
[2026-06-13 06:21:34,488.488 INFO    ] 200
[2026-06-13 06:21:34,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:34,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:34,524.524 INFO    ] No update needed
[2026-06-13 06:21:34,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:34,547.547 INFO    ] 200
[2026-06-13 06:21:34,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:34,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:34,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:34,603.603 INFO    ] No camera update needed
[2026-06-13 06:21:34,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:34,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:34,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:34,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:36,653.653 INFO    ] ================================================
[2026-06-13 06:21:36,669.669 INFO    ] Launching Daemon at Sat Jun 13 06:21:36 IST 2026
[2026-06-13 06:21:36,680.680 INFO    ] ================================================
[2026-06-13 06:21:37,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:37
[2026-06-13 06:21:37,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:37,546.546 INFO    ] Initializing speech engine...
[2026-06-13 06:21:37,552.552 INFO    ] 2026-06-13 06:21:37
[2026-06-13 06:21:37,759.759 INFO    ] 2026-06-13 06:21:37
[2026-06-13 06:21:37,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:37,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:38,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:38,173.173 INFO    ] time= 13/06/2026 06:21:38
[2026-06-13 06:21:38,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:38,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:38,279.279 INFO    ] No existing commands found in stream
[2026-06-13 06:21:43,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:21:43,294.294 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 06:21:43,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:21:43,687.687 INFO    ] Checking for system updates...
[2026-06-13 06:21:43,707.707 INFO    ] 200
[2026-06-13 06:21:43,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:43,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:21:43,743.743 INFO    ] No update needed
[2026-06-13 06:21:43,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:43,768.768 INFO    ] 200
[2026-06-13 06:21:43,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:43,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:43,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:21:43,838.838 INFO    ] No camera update needed
[2026-06-13 06:21:43,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:43,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:43,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:43,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:45,887.887 INFO    ] ================================================
[2026-06-13 06:21:45,903.903 INFO    ] Launching Daemon at Sat Jun 13 06:21:45 IST 2026
[2026-06-13 06:21:45,914.914 INFO    ] ================================================
[2026-06-13 06:21:46,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:46
[2026-06-13 06:21:46,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:46,719.719 INFO    ] Initializing speech engine...
[2026-06-13 06:21:46,724.724 INFO    ] 2026-06-13 06:21:46
[2026-06-13 06:21:46,926.926 INFO    ] 2026-06-13 06:21:46
[2026-06-13 06:21:46,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:47,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:47,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:47,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:47,328.328 INFO    ] time= 13/06/2026 06:21:47
[2026-06-13 06:21:47,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:47,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:47,443.443 INFO    ] No existing commands found in stream
[2026-06-13 06:21:52,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:21:52,454.454 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 06:21:53,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:21:53,354.354 INFO    ] Checking for system updates...
[2026-06-13 06:21:53,375.375 INFO    ] 200
[2026-06-13 06:21:53,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:53,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:53,410.410 INFO    ] No update needed
[2026-06-13 06:21:53,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 06:21:53,431.431 INFO    ] 200
[2026-06-13 06:21:53,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:21:53,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:21:53,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:21:53,503.503 INFO    ] No camera update needed
[2026-06-13 06:21:53,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:21:53,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:21:53,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:21:53,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:21:55,551.551 INFO    ] ================================================
[2026-06-13 06:21:55,566.566 INFO    ] Launching Daemon at Sat Jun 13 06:21:55 IST 2026
[2026-06-13 06:21:55,577.577 INFO    ] ================================================
[2026-06-13 06:21:55,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:21:55
[2026-06-13 06:21:56,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:21:56,355.355 INFO    ] Initializing speech engine...
[2026-06-13 06:21:56,365.365 INFO    ] 2026-06-13 06:21:56
[2026-06-13 06:21:56,569.569 INFO    ] 2026-06-13 06:21:56
[2026-06-13 06:21:56,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:21:56,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:21:56,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:21:56,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:21:56,976.976 INFO    ] time= 13/06/2026 06:21:56
[2026-06-13 06:21:57,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:21:57,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:21:57,081.081 INFO    ] No existing commands found in stream
[2026-06-13 06:22:02,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:02,092.092 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 06:22:05,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:22:05,800.800 INFO    ] Checking for system updates...
[2026-06-13 06:22:05,822.822 INFO    ] 200
[2026-06-13 06:22:05,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:05,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:05,863.863 INFO    ] No update needed
[2026-06-13 06:22:05,864.864 INFO    ] Checking for camera pi updates...
[2026-06-13 06:22:05,886.886 INFO    ] 200
[2026-06-13 06:22:05,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:05,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:22:05,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:22:05,957.957 INFO    ] No camera update needed
[2026-06-13 06:22:05,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:22:05,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:22:05,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:22:05,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:22:08,004.004 INFO    ] ================================================
[2026-06-13 06:22:08,023.023 INFO    ] Launching Daemon at Sat Jun 13 06:22:08 IST 2026
[2026-06-13 06:22:08,034.034 INFO    ] ================================================
[2026-06-13 06:22:08,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:22:08
[2026-06-13 06:22:08,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:22:08,828.828 INFO    ] Initializing speech engine...
[2026-06-13 06:22:08,837.837 INFO    ] 2026-06-13 06:22:08
[2026-06-13 06:22:09,058.058 INFO    ] 2026-06-13 06:22:09
[2026-06-13 06:22:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:22:09,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:22:09,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:22:09,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:22:09,323.323 INFO    ] time= 13/06/2026 06:22:09
[2026-06-13 06:22:09,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:22:09,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:22:09,459.459 INFO    ] No existing commands found in stream
[2026-06-13 06:22:14,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:14,491.491 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 06:22:16,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:22:16,705.705 INFO    ] Checking for system updates...
[2026-06-13 06:22:16,726.726 INFO    ] 200
[2026-06-13 06:22:16,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:16,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:16,760.760 INFO    ] No update needed
[2026-06-13 06:22:16,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 06:22:16,781.781 INFO    ] 200
[2026-06-13 06:22:16,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:16,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:22:16,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:16,948.948 INFO    ] No camera update needed
[2026-06-13 06:22:16,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:22:16,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:22:16,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:22:16,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:22:19,995.995 INFO    ] ================================================
[2026-06-13 06:22:19,010.010 INFO    ] Launching Daemon at Sat Jun 13 06:22:19 IST 2026
[2026-06-13 06:22:19,021.021 INFO    ] ================================================
[2026-06-13 06:22:19,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:22:19
[2026-06-13 06:22:19,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:22:19,878.878 INFO    ] Initializing speech engine...
[2026-06-13 06:22:19,888.888 INFO    ] 2026-06-13 06:22:19
[2026-06-13 06:22:20,096.096 INFO    ] 2026-06-13 06:22:20
[2026-06-13 06:22:20,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:22:20,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:22:20,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:22:20,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:22:20,514.514 INFO    ] time= 13/06/2026 06:22:20
[2026-06-13 06:22:20,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:22:20,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:22:20,613.613 INFO    ] No existing commands found in stream
[2026-06-13 06:22:25,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:25,627.627 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 06:22:29,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:22:29,886.886 INFO    ] Checking for system updates...
[2026-06-13 06:22:29,907.907 INFO    ] 200
[2026-06-13 06:22:29,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:29,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:29,940.940 INFO    ] No update needed
[2026-06-13 06:22:29,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 06:22:29,962.962 INFO    ] 200
[2026-06-13 06:22:29,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:29,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:22:30,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:30,011.011 INFO    ] No camera update needed
[2026-06-13 06:22:30,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:22:30,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:22:30,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:22:30,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:22:32,060.060 INFO    ] ================================================
[2026-06-13 06:22:32,077.077 INFO    ] Launching Daemon at Sat Jun 13 06:22:32 IST 2026
[2026-06-13 06:22:32,091.091 INFO    ] ================================================
[2026-06-13 06:22:32,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:22:32
[2026-06-13 06:22:32,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:22:32,925.925 INFO    ] Initializing speech engine...
[2026-06-13 06:22:32,937.937 INFO    ] 2026-06-13 06:22:32
[2026-06-13 06:22:33,142.142 INFO    ] 2026-06-13 06:22:33
[2026-06-13 06:22:33,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:22:33,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:22:33,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:22:33,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:22:33,547.547 INFO    ] time= 13/06/2026 06:22:33
[2026-06-13 06:22:33,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:22:33,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:22:33,657.657 INFO    ] No existing commands found in stream
[2026-06-13 06:22:38,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:38,670.670 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 06:22:40,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:22:40,580.580 INFO    ] Checking for system updates...
[2026-06-13 06:22:40,600.600 INFO    ] 200
[2026-06-13 06:22:40,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:40,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:22:40,636.636 INFO    ] No update needed
[2026-06-13 06:22:40,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 06:22:40,656.656 INFO    ] 200
[2026-06-13 06:22:40,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:40,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:22:40,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:22:40,729.729 INFO    ] No camera update needed
[2026-06-13 06:22:40,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:22:40,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:22:40,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:22:40,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:22:42,778.778 INFO    ] ================================================
[2026-06-13 06:22:42,794.794 INFO    ] Launching Daemon at Sat Jun 13 06:22:42 IST 2026
[2026-06-13 06:22:42,805.805 INFO    ] ================================================
[2026-06-13 06:22:43,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:22:43
[2026-06-13 06:22:43,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:22:43,600.600 INFO    ] Initializing speech engine...
[2026-06-13 06:22:43,608.608 INFO    ] 2026-06-13 06:22:43
[2026-06-13 06:22:43,829.829 INFO    ] 2026-06-13 06:22:43
[2026-06-13 06:22:43,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:22:43,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:22:43,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:22:44,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:22:44,091.091 INFO    ] time= 13/06/2026 06:22:44
[2026-06-13 06:22:44,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:22:44,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:22:44,205.205 INFO    ] No existing commands found in stream
[2026-06-13 06:22:49,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:49,221.221 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 06:22:50,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:22:50,699.699 INFO    ] Checking for system updates...
[2026-06-13 06:22:50,719.719 INFO    ] 200
[2026-06-13 06:22:50,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:50,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:22:50,754.754 INFO    ] No update needed
[2026-06-13 06:22:50,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 06:22:50,775.775 INFO    ] 200
[2026-06-13 06:22:50,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:22:50,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:22:50,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:22:50,840.840 INFO    ] No camera update needed
[2026-06-13 06:22:50,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:22:50,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:22:50,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:22:50,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:22:52,887.887 INFO    ] ================================================
[2026-06-13 06:22:52,903.903 INFO    ] Launching Daemon at Sat Jun 13 06:22:52 IST 2026
[2026-06-13 06:22:52,916.916 INFO    ] ================================================
[2026-06-13 06:22:53,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:22:53
[2026-06-13 06:22:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:22:53,715.715 INFO    ] Initializing speech engine...
[2026-06-13 06:22:53,727.727 INFO    ] 2026-06-13 06:22:53
[2026-06-13 06:22:53,936.936 INFO    ] 2026-06-13 06:22:53
[2026-06-13 06:22:53,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:22:54,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:22:54,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:22:54,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:22:54,360.360 INFO    ] time= 13/06/2026 06:22:54
[2026-06-13 06:22:54,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:22:54,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:22:54,508.508 INFO    ] No existing commands found in stream
[2026-06-13 06:22:59,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:22:59,530.530 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 06:23:01,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:23:01,437.437 INFO    ] Checking for system updates...
[2026-06-13 06:23:01,462.462 INFO    ] 200
[2026-06-13 06:23:01,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:01,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:01,505.505 INFO    ] No update needed
[2026-06-13 06:23:01,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:01,531.531 INFO    ] 200
[2026-06-13 06:23:01,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:01,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:01,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:01,628.628 INFO    ] No camera update needed
[2026-06-13 06:23:01,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:01,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:01,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:01,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:03,680.680 INFO    ] ================================================
[2026-06-13 06:23:03,696.696 INFO    ] Launching Daemon at Sat Jun 13 06:23:03 IST 2026
[2026-06-13 06:23:03,707.707 INFO    ] ================================================
[2026-06-13 06:23:04,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:23:04
[2026-06-13 06:23:04,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:23:04,479.479 INFO    ] Initializing speech engine...
[2026-06-13 06:23:04,483.483 INFO    ] 2026-06-13 06:23:04
[2026-06-13 06:23:04,710.710 INFO    ] 2026-06-13 06:23:04
[2026-06-13 06:23:04,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:23:04,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:23:04,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:23:05,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:23:05,148.148 INFO    ] time= 13/06/2026 06:23:05
[2026-06-13 06:23:05,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:23:05,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:23:05,256.256 INFO    ] No existing commands found in stream
[2026-06-13 06:23:10,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:23:10,270.270 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 06:23:12,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:23:12,619.619 INFO    ] Checking for system updates...
[2026-06-13 06:23:12,641.641 INFO    ] 200
[2026-06-13 06:23:12,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:12,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:12,674.674 INFO    ] No update needed
[2026-06-13 06:23:12,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:12,696.696 INFO    ] 200
[2026-06-13 06:23:12,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:12,724.724 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:12,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:23:12,767.767 INFO    ] No camera update needed
[2026-06-13 06:23:12,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:12,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:12,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:12,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:14,815.815 INFO    ] ================================================
[2026-06-13 06:23:14,831.831 INFO    ] Launching Daemon at Sat Jun 13 06:23:14 IST 2026
[2026-06-13 06:23:14,842.842 INFO    ] ================================================
[2026-06-13 06:23:15,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:23:15
[2026-06-13 06:23:15,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:23:15,659.659 INFO    ] Initializing speech engine...
[2026-06-13 06:23:15,664.664 INFO    ] 2026-06-13 06:23:15
[2026-06-13 06:23:15,869.869 INFO    ] 2026-06-13 06:23:15
[2026-06-13 06:23:15,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:23:16,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:23:16,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:23:16,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:23:16,283.283 INFO    ] time= 13/06/2026 06:23:16
[2026-06-13 06:23:16,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:23:16,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:23:16,382.382 INFO    ] No existing commands found in stream
[2026-06-13 06:23:21,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:23:21,392.392 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 06:23:24,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:23:24,267.267 INFO    ] Checking for system updates...
[2026-06-13 06:23:24,291.291 INFO    ] 200
[2026-06-13 06:23:24,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:24,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:24,330.330 INFO    ] No update needed
[2026-06-13 06:23:24,332.332 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:24,358.358 INFO    ] 200
[2026-06-13 06:23:24,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:24,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:24,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:24,432.432 INFO    ] No camera update needed
[2026-06-13 06:23:24,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:24,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:24,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:24,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:26,476.476 INFO    ] ================================================
[2026-06-13 06:23:26,492.492 INFO    ] Launching Daemon at Sat Jun 13 06:23:26 IST 2026
[2026-06-13 06:23:26,503.503 INFO    ] ================================================
[2026-06-13 06:23:26,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:23:26
[2026-06-13 06:23:27,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:23:27,281.281 INFO    ] Initializing speech engine...
[2026-06-13 06:23:27,286.286 INFO    ] 2026-06-13 06:23:27
[2026-06-13 06:23:27,487.487 INFO    ] 2026-06-13 06:23:27
[2026-06-13 06:23:27,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:23:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:23:27,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:23:27,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:23:27,900.900 INFO    ] time= 13/06/2026 06:23:27
[2026-06-13 06:23:27,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:23:27,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:23:27,999.999 INFO    ] No existing commands found in stream
[2026-06-13 06:23:33,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:23:33,011.011 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 06:23:35,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:23:35,352.352 INFO    ] Checking for system updates...
[2026-06-13 06:23:35,374.374 INFO    ] 200
[2026-06-13 06:23:35,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:35,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:35,407.407 INFO    ] No update needed
[2026-06-13 06:23:35,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:35,431.431 INFO    ] 200
[2026-06-13 06:23:35,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:35,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:35,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:35,495.495 INFO    ] No camera update needed
[2026-06-13 06:23:35,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:35,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:35,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:35,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:37,544.544 INFO    ] ================================================
[2026-06-13 06:23:37,560.560 INFO    ] Launching Daemon at Sat Jun 13 06:23:37 IST 2026
[2026-06-13 06:23:37,571.571 INFO    ] ================================================
[2026-06-13 06:23:37,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:23:37
[2026-06-13 06:23:38,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:23:38,400.400 INFO    ] Initializing speech engine...
[2026-06-13 06:23:38,406.406 INFO    ] 2026-06-13 06:23:38
[2026-06-13 06:23:38,612.612 INFO    ] 2026-06-13 06:23:38
[2026-06-13 06:23:38,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:23:38,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:23:38,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:23:38,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:23:39,030.030 INFO    ] time= 13/06/2026 06:23:38
[2026-06-13 06:23:39,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:23:39,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:23:39,131.131 INFO    ] No existing commands found in stream
[2026-06-13 06:23:44,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:23:44,149.149 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 06:23:44,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:23:44,532.532 INFO    ] Checking for system updates...
[2026-06-13 06:23:44,554.554 INFO    ] 200
[2026-06-13 06:23:44,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:44,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:44,588.588 INFO    ] No update needed
[2026-06-13 06:23:44,589.589 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:44,609.609 INFO    ] 200
[2026-06-13 06:23:44,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:44,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:44,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:44,677.677 INFO    ] No camera update needed
[2026-06-13 06:23:44,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:44,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:44,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:44,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:46,724.724 INFO    ] ================================================
[2026-06-13 06:23:46,740.740 INFO    ] Launching Daemon at Sat Jun 13 06:23:46 IST 2026
[2026-06-13 06:23:46,751.751 INFO    ] ================================================
[2026-06-13 06:23:47,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:23:47
[2026-06-13 06:23:47,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:23:48,171.171 INFO    ] Initializing speech engine...
[2026-06-13 06:23:48,178.178 INFO    ] 2026-06-13 06:23:48
[2026-06-13 06:23:48,462.462 INFO    ] 2026-06-13 06:23:48
[2026-06-13 06:23:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:23:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:23:48,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:23:48,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:23:48,901.901 INFO    ] time= 13/06/2026 06:23:48
[2026-06-13 06:23:48,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:23:49,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:23:49,134.134 INFO    ] No existing commands found in stream
[2026-06-13 06:23:54,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:23:54,169.169 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 06:23:57,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:23:57,653.653 INFO    ] Checking for system updates...
[2026-06-13 06:23:57,675.675 INFO    ] 200
[2026-06-13 06:23:57,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:57,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:23:57,712.712 INFO    ] No update needed
[2026-06-13 06:23:57,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 06:23:57,734.734 INFO    ] 200
[2026-06-13 06:23:57,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:23:57,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:23:57,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:23:57,800.800 INFO    ] No camera update needed
[2026-06-13 06:23:57,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:23:57,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:23:57,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:23:57,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:23:59,847.847 INFO    ] ================================================
[2026-06-13 06:23:59,864.864 INFO    ] Launching Daemon at Sat Jun 13 06:23:59 IST 2026
[2026-06-13 06:23:59,879.879 INFO    ] ================================================
[2026-06-13 06:24:00,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:00
[2026-06-13 06:24:00,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:00,684.684 INFO    ] Initializing speech engine...
[2026-06-13 06:24:00,689.689 INFO    ] 2026-06-13 06:24:00
[2026-06-13 06:24:00,891.891 INFO    ] 2026-06-13 06:24:00
[2026-06-13 06:24:00,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:01,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:01,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:01,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:01,292.292 INFO    ] time= 13/06/2026 06:24:01
[2026-06-13 06:24:01,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:01,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:01,412.412 INFO    ] No existing commands found in stream
[2026-06-13 06:24:06,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:24:06,424.424 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 06:24:09,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:24:09,750.750 INFO    ] Checking for system updates...
[2026-06-13 06:24:09,771.771 INFO    ] 200
[2026-06-13 06:24:09,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:09,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:09,806.806 INFO    ] No update needed
[2026-06-13 06:24:09,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 06:24:09,827.827 INFO    ] 200
[2026-06-13 06:24:09,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:09,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:24:09,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:09,900.900 INFO    ] No camera update needed
[2026-06-13 06:24:09,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:24:09,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:24:09,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:24:09,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:24:11,949.949 INFO    ] ================================================
[2026-06-13 06:24:11,964.964 INFO    ] Launching Daemon at Sat Jun 13 06:24:11 IST 2026
[2026-06-13 06:24:11,976.976 INFO    ] ================================================
[2026-06-13 06:24:12,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:12
[2026-06-13 06:24:12,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:12,793.793 INFO    ] Initializing speech engine...
[2026-06-13 06:24:12,803.803 INFO    ] 2026-06-13 06:24:12
[2026-06-13 06:24:13,010.010 INFO    ] 2026-06-13 06:24:12
[2026-06-13 06:24:13,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:13,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:13,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:13,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:13,414.414 INFO    ] time= 13/06/2026 06:24:13
[2026-06-13 06:24:13,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:13,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:13,524.524 INFO    ] No existing commands found in stream
[2026-06-13 06:24:18,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:24:18,542.542 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 06:24:18,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:24:18,969.969 INFO    ] Checking for system updates...
[2026-06-13 06:24:18,990.990 INFO    ] 200
[2026-06-13 06:24:18,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:19,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:19,023.023 INFO    ] No update needed
[2026-06-13 06:24:19,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 06:24:19,045.045 INFO    ] 200
[2026-06-13 06:24:19,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:19,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:24:19,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:19,221.221 INFO    ] No camera update needed
[2026-06-13 06:24:19,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:24:19,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:24:19,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:24:19,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:24:21,270.270 INFO    ] ================================================
[2026-06-13 06:24:21,288.288 INFO    ] Launching Daemon at Sat Jun 13 06:24:21 IST 2026
[2026-06-13 06:24:21,298.298 INFO    ] ================================================
[2026-06-13 06:24:21,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:21
[2026-06-13 06:24:21,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:22,105.105 INFO    ] Initializing speech engine...
[2026-06-13 06:24:22,110.110 INFO    ] 2026-06-13 06:24:22
[2026-06-13 06:24:22,315.315 INFO    ] 2026-06-13 06:24:22
[2026-06-13 06:24:22,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:22,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:22,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:22,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:22,720.720 INFO    ] time= 13/06/2026 06:24:22
[2026-06-13 06:24:22,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:22,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:22,829.829 INFO    ] No existing commands found in stream
[2026-06-13 06:24:27,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:24:27,840.840 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 06:24:29,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:24:29,880.880 INFO    ] Checking for system updates...
[2026-06-13 06:24:29,916.916 INFO    ] 200
[2026-06-13 06:24:29,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:29,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:29,980.980 INFO    ] No update needed
[2026-06-13 06:24:29,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 06:24:30,020.020 INFO    ] 200
[2026-06-13 06:24:30,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:30,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:24:30,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:30,102.102 INFO    ] No camera update needed
[2026-06-13 06:24:30,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:24:30,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:24:30,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:24:30,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:24:32,143.143 INFO    ] ================================================
[2026-06-13 06:24:32,153.153 INFO    ] Launching Daemon at Sat Jun 13 06:24:32 IST 2026
[2026-06-13 06:24:32,160.160 INFO    ] ================================================
[2026-06-13 06:24:32,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:32
[2026-06-13 06:24:33,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:33,727.727 INFO    ] Initializing speech engine...
[2026-06-13 06:24:33,736.736 INFO    ] 2026-06-13 06:24:33
[2026-06-13 06:24:34,010.010 INFO    ] 2026-06-13 06:24:34
[2026-06-13 06:24:34,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:34,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:34,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:34,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:34,480.480 INFO    ] time= 13/06/2026 06:24:34
[2026-06-13 06:24:34,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:34,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:34,645.645 INFO    ] No existing commands found in stream
[2026-06-13 06:24:39,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:24:39,685.685 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 06:24:40,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:24:40,801.801 INFO    ] Checking for system updates...
[2026-06-13 06:24:40,824.824 INFO    ] 200
[2026-06-13 06:24:40,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:40,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:24:40,861.861 INFO    ] No update needed
[2026-06-13 06:24:40,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 06:24:40,882.882 INFO    ] 200
[2026-06-13 06:24:40,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:40,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:24:40,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:24:40,956.956 INFO    ] No camera update needed
[2026-06-13 06:24:40,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:24:40,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:24:40,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:24:40,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:24:43,003.003 INFO    ] ================================================
[2026-06-13 06:24:43,019.019 INFO    ] Launching Daemon at Sat Jun 13 06:24:43 IST 2026
[2026-06-13 06:24:43,030.030 INFO    ] ================================================
[2026-06-13 06:24:43,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:43
[2026-06-13 06:24:43,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:43,833.833 INFO    ] Initializing speech engine...
[2026-06-13 06:24:43,837.837 INFO    ] 2026-06-13 06:24:43
[2026-06-13 06:24:44,064.064 INFO    ] 2026-06-13 06:24:44
[2026-06-13 06:24:44,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:44,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:44,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:44,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:44,415.415 INFO    ] time= 13/06/2026 06:24:44
[2026-06-13 06:24:44,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:44,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:44,614.614 INFO    ] No existing commands found in stream
[2026-06-13 06:24:49,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:24:49,627.627 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 06:24:51,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:24:51,190.190 INFO    ] Checking for system updates...
[2026-06-13 06:24:51,211.211 INFO    ] 200
[2026-06-13 06:24:51,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:51,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:24:51,248.248 INFO    ] No update needed
[2026-06-13 06:24:51,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 06:24:51,269.269 INFO    ] 200
[2026-06-13 06:24:51,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:24:51,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:24:51,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:24:51,338.338 INFO    ] No camera update needed
[2026-06-13 06:24:51,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:24:51,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:24:51,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:24:51,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:24:53,386.386 INFO    ] ================================================
[2026-06-13 06:24:53,401.401 INFO    ] Launching Daemon at Sat Jun 13 06:24:53 IST 2026
[2026-06-13 06:24:53,412.412 INFO    ] ================================================
[2026-06-13 06:24:53,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:24:53
[2026-06-13 06:24:54,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:24:54,274.274 INFO    ] Initializing speech engine...
[2026-06-13 06:24:54,279.279 INFO    ] 2026-06-13 06:24:54
[2026-06-13 06:24:54,487.487 INFO    ] 2026-06-13 06:24:54
[2026-06-13 06:24:54,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:24:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:24:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:24:54,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:24:54,887.887 INFO    ] time= 13/06/2026 06:24:54
[2026-06-13 06:24:54,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:24:54,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:24:55,091.091 INFO    ] No existing commands found in stream
[2026-06-13 06:25:00,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:00,111.111 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 06:25:03,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:25:03,494.494 INFO    ] Checking for system updates...
[2026-06-13 06:25:03,559.559 INFO    ] 200
[2026-06-13 06:25:03,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:03,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:03,619.619 INFO    ] No update needed
[2026-06-13 06:25:03,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 06:25:03,661.661 INFO    ] 200
[2026-06-13 06:25:03,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:03,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:25:03,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:03,757.757 INFO    ] No camera update needed
[2026-06-13 06:25:03,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:25:03,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:25:03,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:25:03,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:25:05,818.818 INFO    ] ================================================
[2026-06-13 06:25:05,834.834 INFO    ] Launching Daemon at Sat Jun 13 06:25:05 IST 2026
[2026-06-13 06:25:05,845.845 INFO    ] ================================================
[2026-06-13 06:25:06,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:25:06
[2026-06-13 06:25:06,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:25:06,675.675 INFO    ] Initializing speech engine...
[2026-06-13 06:25:06,679.679 INFO    ] 2026-06-13 06:25:06
[2026-06-13 06:25:06,880.880 INFO    ] 2026-06-13 06:25:06
[2026-06-13 06:25:06,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:25:07,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:25:07,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:25:07,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:25:07,286.286 INFO    ] time= 13/06/2026 06:25:07
[2026-06-13 06:25:07,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:25:07,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:25:07,395.395 INFO    ] No existing commands found in stream
[2026-06-13 06:25:12,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:12,409.409 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 06:25:15,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:25:15,141.141 INFO    ] Checking for system updates...
[2026-06-13 06:25:15,162.162 INFO    ] 200
[2026-06-13 06:25:15,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:15,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:25:15,195.195 INFO    ] No update needed
[2026-06-13 06:25:15,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 06:25:15,216.216 INFO    ] 200
[2026-06-13 06:25:15,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:15,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:25:15,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:25:15,293.293 INFO    ] No camera update needed
[2026-06-13 06:25:15,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:25:15,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:25:15,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:25:15,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:25:17,342.342 INFO    ] ================================================
[2026-06-13 06:25:17,358.358 INFO    ] Launching Daemon at Sat Jun 13 06:25:17 IST 2026
[2026-06-13 06:25:17,372.372 INFO    ] ================================================
[2026-06-13 06:25:17,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:25:17
[2026-06-13 06:25:18,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:25:18,207.207 INFO    ] Initializing speech engine...
[2026-06-13 06:25:18,213.213 INFO    ] 2026-06-13 06:25:18
[2026-06-13 06:25:18,419.419 INFO    ] 2026-06-13 06:25:18
[2026-06-13 06:25:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:25:18,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:25:18,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:25:18,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:25:18,818.818 INFO    ] time= 13/06/2026 06:25:18
[2026-06-13 06:25:18,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:25:18,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:25:18,932.932 INFO    ] No existing commands found in stream
[2026-06-13 06:25:23,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:23,946.946 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 06:25:26,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:25:26,180.180 INFO    ] Checking for system updates...
[2026-06-13 06:25:26,201.201 INFO    ] 200
[2026-06-13 06:25:26,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:26,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:25:26,235.235 INFO    ] No update needed
[2026-06-13 06:25:26,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 06:25:26,256.256 INFO    ] 200
[2026-06-13 06:25:26,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:26,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:25:26,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:25:26,335.335 INFO    ] No camera update needed
[2026-06-13 06:25:26,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:25:26,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:25:26,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:25:26,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:25:28,384.384 INFO    ] ================================================
[2026-06-13 06:25:28,400.400 INFO    ] Launching Daemon at Sat Jun 13 06:25:28 IST 2026
[2026-06-13 06:25:28,410.410 INFO    ] ================================================
[2026-06-13 06:25:28,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:25:28
[2026-06-13 06:25:29,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:25:29,215.215 INFO    ] Initializing speech engine...
[2026-06-13 06:25:29,220.220 INFO    ] 2026-06-13 06:25:29
[2026-06-13 06:25:29,422.422 INFO    ] 2026-06-13 06:25:29
[2026-06-13 06:25:29,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:25:29,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:25:29,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:25:29,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:25:29,817.817 INFO    ] time= 13/06/2026 06:25:29
[2026-06-13 06:25:29,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:25:29,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:25:29,939.939 INFO    ] No existing commands found in stream
[2026-06-13 06:25:34,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:34,951.951 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 06:25:40,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:25:40,321.321 INFO    ] Checking for system updates...
[2026-06-13 06:25:40,358.358 INFO    ] 200
[2026-06-13 06:25:40,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:40,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:40,422.422 INFO    ] No update needed
[2026-06-13 06:25:40,424.424 INFO    ] Checking for camera pi updates...
[2026-06-13 06:25:40,458.458 INFO    ] 200
[2026-06-13 06:25:40,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:40,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:25:40,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:40,538.538 INFO    ] No camera update needed
[2026-06-13 06:25:40,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:25:40,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:25:40,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:25:40,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:25:42,586.586 INFO    ] ================================================
[2026-06-13 06:25:42,601.601 INFO    ] Launching Daemon at Sat Jun 13 06:25:42 IST 2026
[2026-06-13 06:25:42,612.612 INFO    ] ================================================
[2026-06-13 06:25:42,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:25:42
[2026-06-13 06:25:43,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:25:43,424.424 INFO    ] Initializing speech engine...
[2026-06-13 06:25:43,430.430 INFO    ] 2026-06-13 06:25:43
[2026-06-13 06:25:43,633.633 INFO    ] 2026-06-13 06:25:43
[2026-06-13 06:25:43,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:25:43,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:25:43,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:25:43,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:25:44,026.026 INFO    ] time= 13/06/2026 06:25:43
[2026-06-13 06:25:44,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:25:44,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:25:44,147.147 INFO    ] No existing commands found in stream
[2026-06-13 06:25:49,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:49,159.159 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 06:25:50,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:25:50,775.775 INFO    ] Checking for system updates...
[2026-06-13 06:25:50,796.796 INFO    ] 200
[2026-06-13 06:25:50,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:50,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:50,833.833 INFO    ] No update needed
[2026-06-13 06:25:50,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 06:25:50,854.854 INFO    ] 200
[2026-06-13 06:25:50,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:25:50,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:25:50,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:25:50,917.917 INFO    ] No camera update needed
[2026-06-13 06:25:50,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:25:50,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:25:50,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:25:50,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:25:52,967.967 INFO    ] ================================================
[2026-06-13 06:25:52,982.982 INFO    ] Launching Daemon at Sat Jun 13 06:25:52 IST 2026
[2026-06-13 06:25:52,993.993 INFO    ] ================================================
[2026-06-13 06:25:53,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:25:53
[2026-06-13 06:25:53,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:25:53,837.837 INFO    ] Initializing speech engine...
[2026-06-13 06:25:53,843.843 INFO    ] 2026-06-13 06:25:53
[2026-06-13 06:25:54,049.049 INFO    ] 2026-06-13 06:25:54
[2026-06-13 06:25:54,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:25:54,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:25:54,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:25:54,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:25:54,469.469 INFO    ] time= 13/06/2026 06:25:54
[2026-06-13 06:25:54,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:25:54,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:25:54,566.566 INFO    ] No existing commands found in stream
[2026-06-13 06:25:59,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:25:59,584.584 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 06:26:03,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:26:03,630.630 INFO    ] Checking for system updates...
[2026-06-13 06:26:03,667.667 INFO    ] 200
[2026-06-13 06:26:03,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:03,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:03,727.727 INFO    ] No update needed
[2026-06-13 06:26:03,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 06:26:03,766.766 INFO    ] 200
[2026-06-13 06:26:03,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:03,815.815 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:26:03,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:03,861.861 INFO    ] No camera update needed
[2026-06-13 06:26:03,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:26:03,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:26:03,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:26:03,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:26:05,919.919 INFO    ] ================================================
[2026-06-13 06:26:05,934.934 INFO    ] Launching Daemon at Sat Jun 13 06:26:05 IST 2026
[2026-06-13 06:26:05,944.944 INFO    ] ================================================
[2026-06-13 06:26:06,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:26:06
[2026-06-13 06:26:06,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:26:06,771.771 INFO    ] Initializing speech engine...
[2026-06-13 06:26:06,776.776 INFO    ] 2026-06-13 06:26:06
[2026-06-13 06:26:06,980.980 INFO    ] 2026-06-13 06:26:06
[2026-06-13 06:26:07,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:26:07,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:26:07,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:26:07,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:26:07,389.389 INFO    ] time= 13/06/2026 06:26:07
[2026-06-13 06:26:07,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:26:07,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:26:07,600.600 INFO    ] No existing commands found in stream
[2026-06-13 06:26:12,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:26:12,624.624 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 06:26:16,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:26:16,476.476 INFO    ] Checking for system updates...
[2026-06-13 06:26:16,498.498 INFO    ] 200
[2026-06-13 06:26:16,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:16,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:16,531.531 INFO    ] No update needed
[2026-06-13 06:26:16,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 06:26:16,553.553 INFO    ] 200
[2026-06-13 06:26:16,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:16,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:26:16,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:16,619.619 INFO    ] No camera update needed
[2026-06-13 06:26:16,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:26:16,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:26:16,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:26:16,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:26:18,666.666 INFO    ] ================================================
[2026-06-13 06:26:18,681.681 INFO    ] Launching Daemon at Sat Jun 13 06:26:18 IST 2026
[2026-06-13 06:26:18,692.692 INFO    ] ================================================
[2026-06-13 06:26:19,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:26:19
[2026-06-13 06:26:19,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:26:19,476.476 INFO    ] Initializing speech engine...
[2026-06-13 06:26:19,481.481 INFO    ] 2026-06-13 06:26:19
[2026-06-13 06:26:19,684.684 INFO    ] 2026-06-13 06:26:19
[2026-06-13 06:26:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:26:19,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:26:19,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:26:20,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:26:20,086.086 INFO    ] time= 13/06/2026 06:26:20
[2026-06-13 06:26:20,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:26:20,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:26:20,194.194 INFO    ] No existing commands found in stream
[2026-06-13 06:26:25,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:26:25,208.208 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 06:26:29,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:26:29,063.063 INFO    ] Checking for system updates...
[2026-06-13 06:26:29,085.085 INFO    ] 200
[2026-06-13 06:26:29,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:29,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:26:29,120.120 INFO    ] No update needed
[2026-06-13 06:26:29,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 06:26:29,141.141 INFO    ] 200
[2026-06-13 06:26:29,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:29,168.168 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:26:29,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:26:29,317.317 INFO    ] No camera update needed
[2026-06-13 06:26:29,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:26:29,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:26:29,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:26:29,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:26:31,368.368 INFO    ] ================================================
[2026-06-13 06:26:31,384.384 INFO    ] Launching Daemon at Sat Jun 13 06:26:31 IST 2026
[2026-06-13 06:26:31,395.395 INFO    ] ================================================
[2026-06-13 06:26:31,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:26:31
[2026-06-13 06:26:32,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:26:32,267.267 INFO    ] Initializing speech engine...
[2026-06-13 06:26:32,278.278 INFO    ] 2026-06-13 06:26:32
[2026-06-13 06:26:32,487.487 INFO    ] 2026-06-13 06:26:32
[2026-06-13 06:26:32,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:26:32,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:26:32,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:26:32,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:26:32,938.938 INFO    ] time= 13/06/2026 06:26:32
[2026-06-13 06:26:32,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:26:32,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:26:33,069.069 INFO    ] No existing commands found in stream
[2026-06-13 06:26:38,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:26:38,082.082 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 06:26:39,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:26:39,796.796 INFO    ] Checking for system updates...
[2026-06-13 06:26:39,816.816 INFO    ] 200
[2026-06-13 06:26:39,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:39,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:39,850.850 INFO    ] No update needed
[2026-06-13 06:26:39,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 06:26:39,871.871 INFO    ] 200
[2026-06-13 06:26:39,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:39,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:26:39,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:26:39,946.946 INFO    ] No camera update needed
[2026-06-13 06:26:39,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:26:39,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:26:39,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:26:39,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:26:42,995.995 INFO    ] ================================================
[2026-06-13 06:26:42,014.014 INFO    ] Launching Daemon at Sat Jun 13 06:26:42 IST 2026
[2026-06-13 06:26:42,025.025 INFO    ] ================================================
[2026-06-13 06:26:42,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:26:42
[2026-06-13 06:26:42,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:26:42,803.803 INFO    ] Initializing speech engine...
[2026-06-13 06:26:42,813.813 INFO    ] 2026-06-13 06:26:42
[2026-06-13 06:26:43,036.036 INFO    ] 2026-06-13 06:26:43
[2026-06-13 06:26:43,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:26:43,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:26:43,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:26:43,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:26:43,460.460 INFO    ] time= 13/06/2026 06:26:43
[2026-06-13 06:26:43,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:26:43,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:26:43,592.592 INFO    ] No existing commands found in stream
[2026-06-13 06:26:48,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:26:48,606.606 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 06:26:52,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:26:52,537.537 INFO    ] Checking for system updates...
[2026-06-13 06:26:52,558.558 INFO    ] 200
[2026-06-13 06:26:52,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:52,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:26:52,594.594 INFO    ] No update needed
[2026-06-13 06:26:52,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 06:26:52,614.614 INFO    ] 200
[2026-06-13 06:26:52,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:26:52,641.641 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:26:52,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:26:52,679.679 INFO    ] No camera update needed
[2026-06-13 06:26:52,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:26:52,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:26:52,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:26:52,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:26:54,727.727 INFO    ] ================================================
[2026-06-13 06:26:54,742.742 INFO    ] Launching Daemon at Sat Jun 13 06:26:54 IST 2026
[2026-06-13 06:26:54,754.754 INFO    ] ================================================
[2026-06-13 06:26:55,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:26:55
[2026-06-13 06:26:55,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:26:55,542.542 INFO    ] Initializing speech engine...
[2026-06-13 06:26:55,555.555 INFO    ] 2026-06-13 06:26:55
[2026-06-13 06:26:55,773.773 INFO    ] 2026-06-13 06:26:55
[2026-06-13 06:26:55,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:26:55,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:26:56,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:26:56,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:26:56,152.152 INFO    ] time= 13/06/2026 06:26:56
[2026-06-13 06:26:56,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:26:56,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:26:56,334.334 INFO    ] No existing commands found in stream
[2026-06-13 06:27:01,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:01,347.347 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 06:27:01,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:27:01,889.889 INFO    ] Checking for system updates...
[2026-06-13 06:27:01,919.919 INFO    ] 200
[2026-06-13 06:27:01,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:01,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:01,967.967 INFO    ] No update needed
[2026-06-13 06:27:01,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:01,994.994 INFO    ] 200
[2026-06-13 06:27:01,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:02,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:02,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:02,065.065 INFO    ] No camera update needed
[2026-06-13 06:27:02,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:02,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:02,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:02,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:04,116.116 INFO    ] ================================================
[2026-06-13 06:27:04,131.131 INFO    ] Launching Daemon at Sat Jun 13 06:27:04 IST 2026
[2026-06-13 06:27:04,142.142 INFO    ] ================================================
[2026-06-13 06:27:04,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:04
[2026-06-13 06:27:04,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:04,967.967 INFO    ] Initializing speech engine...
[2026-06-13 06:27:04,977.977 INFO    ] 2026-06-13 06:27:04
[2026-06-13 06:27:05,185.185 INFO    ] 2026-06-13 06:27:05
[2026-06-13 06:27:05,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:05,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:05,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:05,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:05,589.589 INFO    ] time= 13/06/2026 06:27:05
[2026-06-13 06:27:05,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:05,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:05,722.722 INFO    ] No existing commands found in stream
[2026-06-13 06:27:10,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:10,736.736 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 06:27:11,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:27:11,347.347 INFO    ] Checking for system updates...
[2026-06-13 06:27:11,368.368 INFO    ] 200
[2026-06-13 06:27:11,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:11,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:11,401.401 INFO    ] No update needed
[2026-06-13 06:27:11,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:11,426.426 INFO    ] 200
[2026-06-13 06:27:11,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:11,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:11,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:11,489.489 INFO    ] No camera update needed
[2026-06-13 06:27:11,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:11,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:11,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:11,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:13,537.537 INFO    ] ================================================
[2026-06-13 06:27:13,553.553 INFO    ] Launching Daemon at Sat Jun 13 06:27:13 IST 2026
[2026-06-13 06:27:13,564.564 INFO    ] ================================================
[2026-06-13 06:27:13,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:13
[2026-06-13 06:27:14,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:14,357.357 INFO    ] Initializing speech engine...
[2026-06-13 06:27:14,362.362 INFO    ] 2026-06-13 06:27:14
[2026-06-13 06:27:14,566.566 INFO    ] 2026-06-13 06:27:14
[2026-06-13 06:27:14,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:14,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:14,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:14,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:14,919.919 INFO    ] time= 13/06/2026 06:27:14
[2026-06-13 06:27:14,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:14,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:15,039.039 INFO    ] No existing commands found in stream
[2026-06-13 06:27:20,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:20,058.058 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 06:27:21,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:27:21,689.689 INFO    ] Checking for system updates...
[2026-06-13 06:27:21,711.711 INFO    ] 200
[2026-06-13 06:27:21,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:21,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:27:21,747.747 INFO    ] No update needed
[2026-06-13 06:27:21,748.748 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:21,769.769 INFO    ] 200
[2026-06-13 06:27:21,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:21,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:21,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:27:21,840.840 INFO    ] No camera update needed
[2026-06-13 06:27:21,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:21,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:21,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:21,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:23,889.889 INFO    ] ================================================
[2026-06-13 06:27:23,904.904 INFO    ] Launching Daemon at Sat Jun 13 06:27:23 IST 2026
[2026-06-13 06:27:23,915.915 INFO    ] ================================================
[2026-06-13 06:27:24,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:24
[2026-06-13 06:27:24,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:24,747.747 INFO    ] Initializing speech engine...
[2026-06-13 06:27:24,757.757 INFO    ] 2026-06-13 06:27:24
[2026-06-13 06:27:24,961.961 INFO    ] 2026-06-13 06:27:24
[2026-06-13 06:27:24,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:25,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:25,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:25,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:25,361.361 INFO    ] time= 13/06/2026 06:27:25
[2026-06-13 06:27:25,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:25,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:25,474.474 INFO    ] No existing commands found in stream
[2026-06-13 06:27:30,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:30,488.488 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 06:27:33,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:27:33,056.056 INFO    ] Checking for system updates...
[2026-06-13 06:27:33,077.077 INFO    ] 200
[2026-06-13 06:27:33,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:33,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:33,110.110 INFO    ] No update needed
[2026-06-13 06:27:33,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:33,133.133 INFO    ] 200
[2026-06-13 06:27:33,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:33,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:33,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:33,181.181 INFO    ] No camera update needed
[2026-06-13 06:27:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:33,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:33,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:33,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:35,229.229 INFO    ] ================================================
[2026-06-13 06:27:35,245.245 INFO    ] Launching Daemon at Sat Jun 13 06:27:35 IST 2026
[2026-06-13 06:27:35,256.256 INFO    ] ================================================
[2026-06-13 06:27:35,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:35
[2026-06-13 06:27:35,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:36,091.091 INFO    ] Initializing speech engine...
[2026-06-13 06:27:36,096.096 INFO    ] 2026-06-13 06:27:36
[2026-06-13 06:27:36,300.300 INFO    ] 2026-06-13 06:27:36
[2026-06-13 06:27:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:36,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:36,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:36,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:36,701.701 INFO    ] time= 13/06/2026 06:27:36
[2026-06-13 06:27:36,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:36,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:36,815.815 INFO    ] No existing commands found in stream
[2026-06-13 06:27:41,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:41,829.829 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 06:27:45,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:27:45,695.695 INFO    ] Checking for system updates...
[2026-06-13 06:27:45,715.715 INFO    ] 200
[2026-06-13 06:27:45,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:45,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:27:45,749.749 INFO    ] No update needed
[2026-06-13 06:27:45,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:45,770.770 INFO    ] 200
[2026-06-13 06:27:45,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:45,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:45,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:45,842.842 INFO    ] No camera update needed
[2026-06-13 06:27:45,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:45,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:45,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:45,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:47,888.888 INFO    ] ================================================
[2026-06-13 06:27:47,903.903 INFO    ] Launching Daemon at Sat Jun 13 06:27:47 IST 2026
[2026-06-13 06:27:47,914.914 INFO    ] ================================================
[2026-06-13 06:27:48,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:48
[2026-06-13 06:27:48,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:49,136.136 INFO    ] Initializing speech engine...
[2026-06-13 06:27:49,142.142 INFO    ] 2026-06-13 06:27:49
[2026-06-13 06:27:49,402.402 INFO    ] 2026-06-13 06:27:49
[2026-06-13 06:27:49,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:49,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:49,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:49,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:49,836.836 INFO    ] time= 13/06/2026 06:27:49
[2026-06-13 06:27:49,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:49,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:50,010.010 INFO    ] No existing commands found in stream
[2026-06-13 06:27:55,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:27:55,024.024 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 06:27:56,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:27:56,151.151 INFO    ] Checking for system updates...
[2026-06-13 06:27:56,172.172 INFO    ] 200
[2026-06-13 06:27:56,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:56,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:27:56,208.208 INFO    ] No update needed
[2026-06-13 06:27:56,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 06:27:56,229.229 INFO    ] 200
[2026-06-13 06:27:56,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:27:56,256.256 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:27:56,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:27:56,303.303 INFO    ] No camera update needed
[2026-06-13 06:27:56,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:27:56,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:27:56,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:27:56,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:27:58,350.350 INFO    ] ================================================
[2026-06-13 06:27:58,365.365 INFO    ] Launching Daemon at Sat Jun 13 06:27:58 IST 2026
[2026-06-13 06:27:58,376.376 INFO    ] ================================================
[2026-06-13 06:27:58,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:27:58
[2026-06-13 06:27:59,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:27:59,157.157 INFO    ] Initializing speech engine...
[2026-06-13 06:27:59,170.170 INFO    ] 2026-06-13 06:27:59
[2026-06-13 06:27:59,389.389 INFO    ] 2026-06-13 06:27:59
[2026-06-13 06:27:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:27:59,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:27:59,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:27:59,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:27:59,778.778 INFO    ] time= 13/06/2026 06:27:59
[2026-06-13 06:27:59,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:27:59,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:27:59,955.955 INFO    ] No existing commands found in stream
[2026-06-13 06:28:04,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:04,969.969 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 06:28:08,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:28:08,912.912 INFO    ] Checking for system updates...
[2026-06-13 06:28:08,932.932 INFO    ] 200
[2026-06-13 06:28:08,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:08,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:28:08,967.967 INFO    ] No update needed
[2026-06-13 06:28:08,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:08,989.989 INFO    ] 200
[2026-06-13 06:28:08,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:09,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:09,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:28:09,056.056 INFO    ] No camera update needed
[2026-06-13 06:28:09,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:09,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:09,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:09,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:11,104.104 INFO    ] ================================================
[2026-06-13 06:28:11,119.119 INFO    ] Launching Daemon at Sat Jun 13 06:28:11 IST 2026
[2026-06-13 06:28:11,130.130 INFO    ] ================================================
[2026-06-13 06:28:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:28:11
[2026-06-13 06:28:11,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:28:11,932.932 INFO    ] Initializing speech engine...
[2026-06-13 06:28:11,940.940 INFO    ] 2026-06-13 06:28:11
[2026-06-13 06:28:12,148.148 INFO    ] 2026-06-13 06:28:12
[2026-06-13 06:28:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:28:12,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:28:12,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:28:12,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:28:12,565.565 INFO    ] time= 13/06/2026 06:28:12
[2026-06-13 06:28:12,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:28:12,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:28:12,670.670 INFO    ] No existing commands found in stream
[2026-06-13 06:28:17,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:17,684.684 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 06:28:18,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:28:18,094.094 INFO    ] Checking for system updates...
[2026-06-13 06:28:18,114.114 INFO    ] 200
[2026-06-13 06:28:18,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:18,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:18,150.150 INFO    ] No update needed
[2026-06-13 06:28:18,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:18,172.172 INFO    ] 200
[2026-06-13 06:28:18,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:18,197.197 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:18,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:18,233.233 INFO    ] No camera update needed
[2026-06-13 06:28:18,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:18,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:18,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:18,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:20,279.279 INFO    ] ================================================
[2026-06-13 06:28:20,295.295 INFO    ] Launching Daemon at Sat Jun 13 06:28:20 IST 2026
[2026-06-13 06:28:20,305.305 INFO    ] ================================================
[2026-06-13 06:28:20,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:28:20
[2026-06-13 06:28:20,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:28:21,092.092 INFO    ] Initializing speech engine...
[2026-06-13 06:28:21,096.096 INFO    ] 2026-06-13 06:28:21
[2026-06-13 06:28:21,313.313 INFO    ] 2026-06-13 06:28:21
[2026-06-13 06:28:21,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:28:21,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:28:21,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:28:21,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:28:21,718.718 INFO    ] time= 13/06/2026 06:28:21
[2026-06-13 06:28:21,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:28:21,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:28:21,835.835 INFO    ] No existing commands found in stream
[2026-06-13 06:28:26,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:26,847.847 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 06:28:29,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:28:29,023.023 INFO    ] Checking for system updates...
[2026-06-13 06:28:29,045.045 INFO    ] 200
[2026-06-13 06:28:29,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:29,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:29,078.078 INFO    ] No update needed
[2026-06-13 06:28:29,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:29,100.100 INFO    ] 200
[2026-06-13 06:28:29,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:29,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:29,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:28:29,160.160 INFO    ] No camera update needed
[2026-06-13 06:28:29,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:29,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:29,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:29,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:31,210.210 INFO    ] ================================================
[2026-06-13 06:28:31,226.226 INFO    ] Launching Daemon at Sat Jun 13 06:28:31 IST 2026
[2026-06-13 06:28:31,237.237 INFO    ] ================================================
[2026-06-13 06:28:31,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:28:31
[2026-06-13 06:28:31,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:28:32,066.066 INFO    ] Initializing speech engine...
[2026-06-13 06:28:32,080.080 INFO    ] 2026-06-13 06:28:32
[2026-06-13 06:28:32,310.310 INFO    ] 2026-06-13 06:28:32
[2026-06-13 06:28:32,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:28:32,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:28:32,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:28:32,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:28:32,582.582 INFO    ] time= 13/06/2026 06:28:32
[2026-06-13 06:28:32,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:28:32,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:28:32,761.761 INFO    ] No existing commands found in stream
[2026-06-13 06:28:37,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:37,780.780 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 06:28:38,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:28:38,087.087 INFO    ] Checking for system updates...
[2026-06-13 06:28:38,107.107 INFO    ] 200
[2026-06-13 06:28:38,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:38,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:38,141.141 INFO    ] No update needed
[2026-06-13 06:28:38,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:38,164.164 INFO    ] 200
[2026-06-13 06:28:38,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:38,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:38,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:38,229.229 INFO    ] No camera update needed
[2026-06-13 06:28:38,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:38,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:38,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:38,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:40,278.278 INFO    ] ================================================
[2026-06-13 06:28:40,295.295 INFO    ] Launching Daemon at Sat Jun 13 06:28:40 IST 2026
[2026-06-13 06:28:40,306.306 INFO    ] ================================================
[2026-06-13 06:28:40,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:28:40
[2026-06-13 06:28:40,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:28:41,092.092 INFO    ] Initializing speech engine...
[2026-06-13 06:28:41,105.105 INFO    ] 2026-06-13 06:28:41
[2026-06-13 06:28:41,322.322 INFO    ] 2026-06-13 06:28:41
[2026-06-13 06:28:41,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:28:41,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:28:41,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:28:41,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:28:41,731.731 INFO    ] time= 13/06/2026 06:28:41
[2026-06-13 06:28:41,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:28:41,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:28:41,855.855 INFO    ] No existing commands found in stream
[2026-06-13 06:28:46,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:46,868.868 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 06:28:48,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:28:48,270.270 INFO    ] Checking for system updates...
[2026-06-13 06:28:48,291.291 INFO    ] 200
[2026-06-13 06:28:48,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:48,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:48,325.325 INFO    ] No update needed
[2026-06-13 06:28:48,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:48,347.347 INFO    ] 200
[2026-06-13 06:28:48,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:48,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:48,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:28:48,417.417 INFO    ] No camera update needed
[2026-06-13 06:28:48,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:48,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:48,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:48,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:50,465.465 INFO    ] ================================================
[2026-06-13 06:28:50,481.481 INFO    ] Launching Daemon at Sat Jun 13 06:28:50 IST 2026
[2026-06-13 06:28:50,492.492 INFO    ] ================================================
[2026-06-13 06:28:50,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:28:50
[2026-06-13 06:28:51,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:28:51,315.315 INFO    ] Initializing speech engine...
[2026-06-13 06:28:51,319.319 INFO    ] 2026-06-13 06:28:51
[2026-06-13 06:28:51,551.551 INFO    ] 2026-06-13 06:28:51
[2026-06-13 06:28:51,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:28:51,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:28:51,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:28:51,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:28:51,985.985 INFO    ] time= 13/06/2026 06:28:51
[2026-06-13 06:28:52,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:28:52,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:28:52,113.113 INFO    ] No existing commands found in stream
[2026-06-13 06:28:57,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:28:57,127.127 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 06:28:57,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:28:57,439.439 INFO    ] Checking for system updates...
[2026-06-13 06:28:57,459.459 INFO    ] 200
[2026-06-13 06:28:57,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:57,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:28:57,505.505 INFO    ] No update needed
[2026-06-13 06:28:57,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 06:28:57,526.526 INFO    ] 200
[2026-06-13 06:28:57,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:28:57,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:28:57,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:28:57,597.597 INFO    ] No camera update needed
[2026-06-13 06:28:57,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:28:57,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:28:57,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:28:57,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:28:59,645.645 INFO    ] ================================================
[2026-06-13 06:28:59,661.661 INFO    ] Launching Daemon at Sat Jun 13 06:28:59 IST 2026
[2026-06-13 06:28:59,672.672 INFO    ] ================================================
[2026-06-13 06:29:00,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:00
[2026-06-13 06:29:00,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:00,458.458 INFO    ] Initializing speech engine...
[2026-06-13 06:29:00,463.463 INFO    ] 2026-06-13 06:29:00
[2026-06-13 06:29:00,668.668 INFO    ] 2026-06-13 06:29:00
[2026-06-13 06:29:00,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:00,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:00,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:01,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:01,090.090 INFO    ] time= 13/06/2026 06:29:01
[2026-06-13 06:29:01,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:01,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:01,201.201 INFO    ] No existing commands found in stream
[2026-06-13 06:29:06,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:29:06,214.214 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 06:29:10,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:29:10,531.531 INFO    ] Checking for system updates...
[2026-06-13 06:29:10,552.552 INFO    ] 200
[2026-06-13 06:29:10,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:10,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:10,585.585 INFO    ] No update needed
[2026-06-13 06:29:10,586.586 INFO    ] Checking for camera pi updates...
[2026-06-13 06:29:10,607.607 INFO    ] 200
[2026-06-13 06:29:10,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:10,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:29:10,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:10,672.672 INFO    ] No camera update needed
[2026-06-13 06:29:10,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:29:10,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:29:10,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:29:10,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:29:12,721.721 INFO    ] ================================================
[2026-06-13 06:29:12,738.738 INFO    ] Launching Daemon at Sat Jun 13 06:29:12 IST 2026
[2026-06-13 06:29:12,749.749 INFO    ] ================================================
[2026-06-13 06:29:13,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:13
[2026-06-13 06:29:13,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:13,580.580 INFO    ] Initializing speech engine...
[2026-06-13 06:29:13,585.585 INFO    ] 2026-06-13 06:29:13
[2026-06-13 06:29:13,796.796 INFO    ] 2026-06-13 06:29:13
[2026-06-13 06:29:13,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:14,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:14,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:14,205.205 INFO    ] time= 13/06/2026 06:29:14
[2026-06-13 06:29:14,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:14,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:14,319.319 INFO    ] No existing commands found in stream
[2026-06-13 06:29:19,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:29:19,332.332 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 06:29:23,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:29:23,226.226 INFO    ] Checking for system updates...
[2026-06-13 06:29:23,249.249 INFO    ] 200
[2026-06-13 06:29:23,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:23,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:23,282.282 INFO    ] No update needed
[2026-06-13 06:29:23,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 06:29:23,304.304 INFO    ] 200
[2026-06-13 06:29:23,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:23,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:29:23,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:29:23,380.380 INFO    ] No camera update needed
[2026-06-13 06:29:23,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:29:23,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:29:23,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:29:23,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:29:25,430.430 INFO    ] ================================================
[2026-06-13 06:29:25,445.445 INFO    ] Launching Daemon at Sat Jun 13 06:29:25 IST 2026
[2026-06-13 06:29:25,456.456 INFO    ] ================================================
[2026-06-13 06:29:25,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:25
[2026-06-13 06:29:26,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:26,242.242 INFO    ] Initializing speech engine...
[2026-06-13 06:29:26,253.253 INFO    ] 2026-06-13 06:29:26
[2026-06-13 06:29:26,458.458 INFO    ] 2026-06-13 06:29:26
[2026-06-13 06:29:26,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:26,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:26,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:26,860.860 INFO    ] time= 13/06/2026 06:29:26
[2026-06-13 06:29:26,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:26,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:26,976.976 INFO    ] No existing commands found in stream
[2026-06-13 06:29:31,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:29:31,990.990 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 06:29:32,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:29:32,536.536 INFO    ] Checking for system updates...
[2026-06-13 06:29:32,561.561 INFO    ] 200
[2026-06-13 06:29:32,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:32,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:29:32,604.604 INFO    ] No update needed
[2026-06-13 06:29:32,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 06:29:32,638.638 INFO    ] 200
[2026-06-13 06:29:32,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:32,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:29:32,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:29:32,695.695 INFO    ] No camera update needed
[2026-06-13 06:29:32,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:29:32,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:29:32,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:29:32,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:29:34,750.750 INFO    ] ================================================
[2026-06-13 06:29:34,767.767 INFO    ] Launching Daemon at Sat Jun 13 06:29:34 IST 2026
[2026-06-13 06:29:34,778.778 INFO    ] ================================================
[2026-06-13 06:29:35,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:35
[2026-06-13 06:29:35,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:35,650.650 INFO    ] Initializing speech engine...
[2026-06-13 06:29:35,663.663 INFO    ] 2026-06-13 06:29:35
[2026-06-13 06:29:35,869.869 INFO    ] 2026-06-13 06:29:35
[2026-06-13 06:29:35,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:36,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:36,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:36,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:36,278.278 INFO    ] time= 13/06/2026 06:29:36
[2026-06-13 06:29:36,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:36,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:36,381.381 INFO    ] No existing commands found in stream
[2026-06-13 06:29:41,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:29:41,394.394 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 06:29:43,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:29:43,442.442 INFO    ] Checking for system updates...
[2026-06-13 06:29:43,464.464 INFO    ] 200
[2026-06-13 06:29:43,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:43,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:43,497.497 INFO    ] No update needed
[2026-06-13 06:29:43,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 06:29:43,518.518 INFO    ] 200
[2026-06-13 06:29:43,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:43,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:29:43,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:43,583.583 INFO    ] No camera update needed
[2026-06-13 06:29:43,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:29:43,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:29:43,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:29:43,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:29:45,629.629 INFO    ] ================================================
[2026-06-13 06:29:45,645.645 INFO    ] Launching Daemon at Sat Jun 13 06:29:45 IST 2026
[2026-06-13 06:29:45,656.656 INFO    ] ================================================
[2026-06-13 06:29:46,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:45
[2026-06-13 06:29:46,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:46,576.576 INFO    ] Initializing speech engine...
[2026-06-13 06:29:46,585.585 INFO    ] 2026-06-13 06:29:46
[2026-06-13 06:29:46,835.835 INFO    ] 2026-06-13 06:29:46
[2026-06-13 06:29:46,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:47,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:47,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:47,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:47,291.291 INFO    ] time= 13/06/2026 06:29:47
[2026-06-13 06:29:47,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:47,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:47,482.482 INFO    ] No existing commands found in stream
[2026-06-13 06:29:52,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:29:52,521.521 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 06:29:53,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:29:53,739.739 INFO    ] Checking for system updates...
[2026-06-13 06:29:53,760.760 INFO    ] 200
[2026-06-13 06:29:53,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:53,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:53,794.794 INFO    ] No update needed
[2026-06-13 06:29:53,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 06:29:53,815.815 INFO    ] 200
[2026-06-13 06:29:53,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:29:53,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:29:53,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:29:53,880.880 INFO    ] No camera update needed
[2026-06-13 06:29:53,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:29:53,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:29:53,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:29:53,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:29:55,927.927 INFO    ] ================================================
[2026-06-13 06:29:55,943.943 INFO    ] Launching Daemon at Sat Jun 13 06:29:55 IST 2026
[2026-06-13 06:29:55,954.954 INFO    ] ================================================
[2026-06-13 06:29:56,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:29:56
[2026-06-13 06:29:56,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:29:56,754.754 INFO    ] Initializing speech engine...
[2026-06-13 06:29:56,759.759 INFO    ] 2026-06-13 06:29:56
[2026-06-13 06:29:56,962.962 INFO    ] 2026-06-13 06:29:56
[2026-06-13 06:29:56,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:29:57,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:29:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:29:57,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:29:57,368.368 INFO    ] time= 13/06/2026 06:29:57
[2026-06-13 06:29:57,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:29:57,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:29:57,480.480 INFO    ] No existing commands found in stream
[2026-06-13 06:30:02,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:30:02,494.494 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 06:30:06,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:30:06,882.882 INFO    ] Checking for system updates...
[2026-06-13 06:30:06,919.919 INFO    ] 200
[2026-06-13 06:30:06,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:06,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:06,960.960 INFO    ] No update needed
[2026-06-13 06:30:06,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 06:30:06,983.983 INFO    ] 200
[2026-06-13 06:30:06,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:07,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:30:07,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:07,049.049 INFO    ] No camera update needed
[2026-06-13 06:30:07,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:30:07,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:30:07,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:30:07,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:30:09,098.098 INFO    ] ================================================
[2026-06-13 06:30:09,114.114 INFO    ] Launching Daemon at Sat Jun 13 06:30:09 IST 2026
[2026-06-13 06:30:09,125.125 INFO    ] ================================================
[2026-06-13 06:30:09,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:30:09
[2026-06-13 06:30:09,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:30:09,917.917 INFO    ] Initializing speech engine...
[2026-06-13 06:30:09,922.922 INFO    ] 2026-06-13 06:30:09
[2026-06-13 06:30:10,124.124 INFO    ] 2026-06-13 06:30:10
[2026-06-13 06:30:10,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:30:10,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:30:10,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:30:10,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:30:10,526.526 INFO    ] time= 13/06/2026 06:30:10
[2026-06-13 06:30:10,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:30:10,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:30:10,640.640 INFO    ] No existing commands found in stream
[2026-06-13 06:30:15,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:30:15,653.653 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 06:30:18,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:30:18,320.320 INFO    ] Checking for system updates...
[2026-06-13 06:30:18,362.362 INFO    ] 200
[2026-06-13 06:30:18,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:18,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:18,421.421 INFO    ] No update needed
[2026-06-13 06:30:18,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 06:30:18,457.457 INFO    ] 200
[2026-06-13 06:30:18,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:18,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:30:18,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:18,533.533 INFO    ] No camera update needed
[2026-06-13 06:30:18,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:30:18,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:30:18,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:30:18,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:30:20,582.582 INFO    ] ================================================
[2026-06-13 06:30:20,598.598 INFO    ] Launching Daemon at Sat Jun 13 06:30:20 IST 2026
[2026-06-13 06:30:20,609.609 INFO    ] ================================================
[2026-06-13 06:30:20,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:30:20
[2026-06-13 06:30:21,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:30:21,495.495 INFO    ] Initializing speech engine...
[2026-06-13 06:30:21,501.501 INFO    ] 2026-06-13 06:30:21
[2026-06-13 06:30:21,711.711 INFO    ] 2026-06-13 06:30:21
[2026-06-13 06:30:21,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:30:21,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:30:21,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:30:22,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:30:22,128.128 INFO    ] time= 13/06/2026 06:30:22
[2026-06-13 06:30:22,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:30:22,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:30:22,229.229 INFO    ] No existing commands found in stream
[2026-06-13 06:30:27,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:30:27,247.247 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 06:30:30,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:30:30,446.446 INFO    ] Checking for system updates...
[2026-06-13 06:30:30,467.467 INFO    ] 200
[2026-06-13 06:30:30,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:30,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:30:30,504.504 INFO    ] No update needed
[2026-06-13 06:30:30,505.505 INFO    ] Checking for camera pi updates...
[2026-06-13 06:30:30,525.525 INFO    ] 200
[2026-06-13 06:30:30,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:30,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:30:30,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:30:30,591.591 INFO    ] No camera update needed
[2026-06-13 06:30:30,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:30:30,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:30:30,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:30:30,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:30:32,633.633 INFO    ] ================================================
[2026-06-13 06:30:32,642.642 INFO    ] Launching Daemon at Sat Jun 13 06:30:32 IST 2026
[2026-06-13 06:30:32,652.652 INFO    ] ================================================
[2026-06-13 06:30:32,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:30:32
[2026-06-13 06:30:33,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:30:33,496.496 INFO    ] Initializing speech engine...
[2026-06-13 06:30:33,504.504 INFO    ] 2026-06-13 06:30:33
[2026-06-13 06:30:33,708.708 INFO    ] 2026-06-13 06:30:33
[2026-06-13 06:30:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:30:33,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:30:33,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:30:34,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:30:34,126.126 INFO    ] time= 13/06/2026 06:30:34
[2026-06-13 06:30:34,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:30:34,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:30:34,226.226 INFO    ] No existing commands found in stream
[2026-06-13 06:30:39,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:30:39,239.239 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 06:30:42,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:30:42,369.369 INFO    ] Checking for system updates...
[2026-06-13 06:30:42,391.391 INFO    ] 200
[2026-06-13 06:30:42,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:42,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:42,429.429 INFO    ] No update needed
[2026-06-13 06:30:42,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 06:30:42,450.450 INFO    ] 200
[2026-06-13 06:30:42,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:42,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:30:42,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:42,627.627 INFO    ] No camera update needed
[2026-06-13 06:30:42,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:30:42,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:30:42,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:30:42,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:30:44,674.674 INFO    ] ================================================
[2026-06-13 06:30:44,690.690 INFO    ] Launching Daemon at Sat Jun 13 06:30:44 IST 2026
[2026-06-13 06:30:44,701.701 INFO    ] ================================================
[2026-06-13 06:30:45,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:30:45
[2026-06-13 06:30:45,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:30:45,496.496 INFO    ] Initializing speech engine...
[2026-06-13 06:30:45,504.504 INFO    ] 2026-06-13 06:30:45
[2026-06-13 06:30:45,727.727 INFO    ] 2026-06-13 06:30:45
[2026-06-13 06:30:45,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:30:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:30:45,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:30:46,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:30:46,169.169 INFO    ] time= 13/06/2026 06:30:46
[2026-06-13 06:30:46,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:30:46,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:30:46,294.294 INFO    ] No existing commands found in stream
[2026-06-13 06:30:51,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:30:51,307.307 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 06:30:53,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:30:53,547.547 INFO    ] Checking for system updates...
[2026-06-13 06:30:53,570.570 INFO    ] 200
[2026-06-13 06:30:53,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:53,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:53,607.607 INFO    ] No update needed
[2026-06-13 06:30:53,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 06:30:53,630.630 INFO    ] 200
[2026-06-13 06:30:53,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:30:53,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:30:53,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:30:53,701.701 INFO    ] No camera update needed
[2026-06-13 06:30:53,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:30:53,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:30:53,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:30:53,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:30:55,748.748 INFO    ] ================================================
[2026-06-13 06:30:55,763.763 INFO    ] Launching Daemon at Sat Jun 13 06:30:55 IST 2026
[2026-06-13 06:30:55,775.775 INFO    ] ================================================
[2026-06-13 06:30:56,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:30:56
[2026-06-13 06:30:56,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:30:56,555.555 INFO    ] Initializing speech engine...
[2026-06-13 06:30:56,559.559 INFO    ] 2026-06-13 06:30:56
[2026-06-13 06:30:56,778.778 INFO    ] 2026-06-13 06:30:56
[2026-06-13 06:30:56,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:30:56,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:30:56,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:30:57,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:30:57,183.183 INFO    ] time= 13/06/2026 06:30:57
[2026-06-13 06:30:57,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:30:57,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:30:57,299.299 INFO    ] No existing commands found in stream
[2026-06-13 06:31:02,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:02,312.312 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 06:31:05,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:31:05,521.521 INFO    ] Checking for system updates...
[2026-06-13 06:31:05,543.543 INFO    ] 200
[2026-06-13 06:31:05,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:05,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:31:05,583.583 INFO    ] No update needed
[2026-06-13 06:31:05,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 06:31:05,614.614 INFO    ] 200
[2026-06-13 06:31:05,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:05,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:31:05,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:31:05,682.682 INFO    ] No camera update needed
[2026-06-13 06:31:05,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:31:05,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:31:05,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:31:05,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:31:07,731.731 INFO    ] ================================================
[2026-06-13 06:31:07,746.746 INFO    ] Launching Daemon at Sat Jun 13 06:31:07 IST 2026
[2026-06-13 06:31:07,758.758 INFO    ] ================================================
[2026-06-13 06:31:08,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:31:08
[2026-06-13 06:31:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:31:08,530.530 INFO    ] Initializing speech engine...
[2026-06-13 06:31:08,538.538 INFO    ] 2026-06-13 06:31:08
[2026-06-13 06:31:08,749.749 INFO    ] 2026-06-13 06:31:08
[2026-06-13 06:31:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:31:08,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:31:08,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:31:09,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:31:09,142.142 INFO    ] time= 13/06/2026 06:31:09
[2026-06-13 06:31:09,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:31:09,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:31:09,261.261 INFO    ] No existing commands found in stream
[2026-06-13 06:31:14,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:14,278.278 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 06:31:16,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:31:16,710.710 INFO    ] Checking for system updates...
[2026-06-13 06:31:16,733.733 INFO    ] 200
[2026-06-13 06:31:16,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:16,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:16,769.769 INFO    ] No update needed
[2026-06-13 06:31:16,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 06:31:16,791.791 INFO    ] 200
[2026-06-13 06:31:16,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:16,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:31:16,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:16,856.856 INFO    ] No camera update needed
[2026-06-13 06:31:16,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:31:16,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:31:16,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:31:16,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:31:18,903.903 INFO    ] ================================================
[2026-06-13 06:31:18,919.919 INFO    ] Launching Daemon at Sat Jun 13 06:31:18 IST 2026
[2026-06-13 06:31:18,930.930 INFO    ] ================================================
[2026-06-13 06:31:19,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:31:19
[2026-06-13 06:31:19,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:31:19,744.744 INFO    ] Initializing speech engine...
[2026-06-13 06:31:19,750.750 INFO    ] 2026-06-13 06:31:19
[2026-06-13 06:31:19,951.951 INFO    ] 2026-06-13 06:31:19
[2026-06-13 06:31:19,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:31:20,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:31:20,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:31:20,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:31:20,360.360 INFO    ] time= 13/06/2026 06:31:20
[2026-06-13 06:31:20,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:31:20,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:31:20,463.463 INFO    ] No existing commands found in stream
[2026-06-13 06:31:25,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:25,476.476 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 06:31:27,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:31:27,292.292 INFO    ] Checking for system updates...
[2026-06-13 06:31:27,315.315 INFO    ] 200
[2026-06-13 06:31:27,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:27,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:27,359.359 INFO    ] No update needed
[2026-06-13 06:31:27,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 06:31:27,383.383 INFO    ] 200
[2026-06-13 06:31:27,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:27,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:31:27,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:27,456.456 INFO    ] No camera update needed
[2026-06-13 06:31:27,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:31:27,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:31:27,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:31:27,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:31:29,505.505 INFO    ] ================================================
[2026-06-13 06:31:29,521.521 INFO    ] Launching Daemon at Sat Jun 13 06:31:29 IST 2026
[2026-06-13 06:31:29,532.532 INFO    ] ================================================
[2026-06-13 06:31:29,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:31:29
[2026-06-13 06:31:30,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:31:30,312.312 INFO    ] Initializing speech engine...
[2026-06-13 06:31:30,325.325 INFO    ] 2026-06-13 06:31:30
[2026-06-13 06:31:30,533.533 INFO    ] 2026-06-13 06:31:30
[2026-06-13 06:31:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:31:30,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:31:30,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:31:30,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:31:30,934.934 INFO    ] time= 13/06/2026 06:31:30
[2026-06-13 06:31:30,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:31:30,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:31:31,050.050 INFO    ] No existing commands found in stream
[2026-06-13 06:31:36,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:36,062.062 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 06:31:39,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:31:39,176.176 INFO    ] Checking for system updates...
[2026-06-13 06:31:39,197.197 INFO    ] 200
[2026-06-13 06:31:39,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:39,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:39,233.233 INFO    ] No update needed
[2026-06-13 06:31:39,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 06:31:39,255.255 INFO    ] 200
[2026-06-13 06:31:39,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:39,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:31:39,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:39,323.323 INFO    ] No camera update needed
[2026-06-13 06:31:39,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:31:39,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:31:39,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:31:39,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:31:41,371.371 INFO    ] ================================================
[2026-06-13 06:31:41,386.386 INFO    ] Launching Daemon at Sat Jun 13 06:31:41 IST 2026
[2026-06-13 06:31:41,396.396 INFO    ] ================================================
[2026-06-13 06:31:41,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:31:41
[2026-06-13 06:31:42,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:31:42,218.218 INFO    ] Initializing speech engine...
[2026-06-13 06:31:42,223.223 INFO    ] 2026-06-13 06:31:42
[2026-06-13 06:31:42,427.427 INFO    ] 2026-06-13 06:31:42
[2026-06-13 06:31:42,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:31:42,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:31:42,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:31:42,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:31:42,816.816 INFO    ] time= 13/06/2026 06:31:42
[2026-06-13 06:31:42,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:31:42,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:31:42,948.948 INFO    ] No existing commands found in stream
[2026-06-13 06:31:47,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:47,961.961 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 06:31:50,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:31:50,656.656 INFO    ] Checking for system updates...
[2026-06-13 06:31:50,676.676 INFO    ] 200
[2026-06-13 06:31:50,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:50,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:31:50,712.712 INFO    ] No update needed
[2026-06-13 06:31:50,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 06:31:50,734.734 INFO    ] 200
[2026-06-13 06:31:50,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:31:50,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:31:50,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:31:50,805.805 INFO    ] No camera update needed
[2026-06-13 06:31:50,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:31:50,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:31:50,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:31:50,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:31:52,852.852 INFO    ] ================================================
[2026-06-13 06:31:52,868.868 INFO    ] Launching Daemon at Sat Jun 13 06:31:52 IST 2026
[2026-06-13 06:31:52,879.879 INFO    ] ================================================
[2026-06-13 06:31:53,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:31:53
[2026-06-13 06:31:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:31:53,735.735 INFO    ] Initializing speech engine...
[2026-06-13 06:31:53,739.739 INFO    ] 2026-06-13 06:31:53
[2026-06-13 06:31:53,948.948 INFO    ] 2026-06-13 06:31:53
[2026-06-13 06:31:53,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:31:54,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:31:54,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:31:54,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:31:54,353.353 INFO    ] time= 13/06/2026 06:31:54
[2026-06-13 06:31:54,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:31:54,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:31:54,463.463 INFO    ] No existing commands found in stream
[2026-06-13 06:31:59,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:31:59,476.476 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 06:32:02,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:32:02,215.215 INFO    ] Checking for system updates...
[2026-06-13 06:32:02,247.247 INFO    ] 200
[2026-06-13 06:32:02,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:02,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:02,289.289 INFO    ] No update needed
[2026-06-13 06:32:02,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:02,317.317 INFO    ] 200
[2026-06-13 06:32:02,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:02,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:02,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:02,381.381 INFO    ] No camera update needed
[2026-06-13 06:32:02,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:02,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:02,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:02,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:04,433.433 INFO    ] ================================================
[2026-06-13 06:32:04,449.449 INFO    ] Launching Daemon at Sat Jun 13 06:32:04 IST 2026
[2026-06-13 06:32:04,460.460 INFO    ] ================================================
[2026-06-13 06:32:04,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:04
[2026-06-13 06:32:05,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:05,249.249 INFO    ] Initializing speech engine...
[2026-06-13 06:32:05,253.253 INFO    ] 2026-06-13 06:32:05
[2026-06-13 06:32:05,456.456 INFO    ] 2026-06-13 06:32:05
[2026-06-13 06:32:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:05,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:05,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:05,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:05,815.815 INFO    ] time= 13/06/2026 06:32:05
[2026-06-13 06:32:05,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:05,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:05,986.986 INFO    ] No existing commands found in stream
[2026-06-13 06:32:10,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:32:10,999.999 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 06:32:13,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:32:13,373.373 INFO    ] Checking for system updates...
[2026-06-13 06:32:13,398.398 INFO    ] 200
[2026-06-13 06:32:13,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:13,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:32:13,434.434 INFO    ] No update needed
[2026-06-13 06:32:13,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:13,456.456 INFO    ] 200
[2026-06-13 06:32:13,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:13,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:13,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:32:13,522.522 INFO    ] No camera update needed
[2026-06-13 06:32:13,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:13,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:13,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:13,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:15,568.568 INFO    ] ================================================
[2026-06-13 06:32:15,583.583 INFO    ] Launching Daemon at Sat Jun 13 06:32:15 IST 2026
[2026-06-13 06:32:15,594.594 INFO    ] ================================================
[2026-06-13 06:32:15,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:15
[2026-06-13 06:32:16,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:16,439.439 INFO    ] Initializing speech engine...
[2026-06-13 06:32:16,444.444 INFO    ] 2026-06-13 06:32:16
[2026-06-13 06:32:16,652.652 INFO    ] 2026-06-13 06:32:16
[2026-06-13 06:32:16,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:16,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:16,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:17,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:17,067.067 INFO    ] time= 13/06/2026 06:32:17
[2026-06-13 06:32:17,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:17,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:17,175.175 INFO    ] No existing commands found in stream
[2026-06-13 06:32:22,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:32:22,193.193 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 06:32:22,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:32:22,819.819 INFO    ] Checking for system updates...
[2026-06-13 06:32:22,842.842 INFO    ] 200
[2026-06-13 06:32:22,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:22,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:32:22,878.878 INFO    ] No update needed
[2026-06-13 06:32:22,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:22,901.901 INFO    ] 200
[2026-06-13 06:32:22,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:22,926.926 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:22,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:32:22,973.973 INFO    ] No camera update needed
[2026-06-13 06:32:22,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:22,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:22,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:22,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:25,020.020 INFO    ] ================================================
[2026-06-13 06:32:25,036.036 INFO    ] Launching Daemon at Sat Jun 13 06:32:25 IST 2026
[2026-06-13 06:32:25,047.047 INFO    ] ================================================
[2026-06-13 06:32:25,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:25
[2026-06-13 06:32:25,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:25,843.843 INFO    ] Initializing speech engine...
[2026-06-13 06:32:25,852.852 INFO    ] 2026-06-13 06:32:25
[2026-06-13 06:32:26,062.062 INFO    ] 2026-06-13 06:32:26
[2026-06-13 06:32:26,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:26,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:26,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:26,473.473 INFO    ] time= 13/06/2026 06:32:26
[2026-06-13 06:32:26,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:26,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:26,583.583 INFO    ] No existing commands found in stream
[2026-06-13 06:32:31,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:32:31,596.596 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 06:32:33,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:32:33,334.334 INFO    ] Checking for system updates...
[2026-06-13 06:32:33,356.356 INFO    ] 200
[2026-06-13 06:32:33,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:33,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:33,392.392 INFO    ] No update needed
[2026-06-13 06:32:33,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:33,413.413 INFO    ] 200
[2026-06-13 06:32:33,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:33,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:33,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:33,485.485 INFO    ] No camera update needed
[2026-06-13 06:32:33,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:33,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:33,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:33,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:35,524.524 INFO    ] ================================================
[2026-06-13 06:32:35,540.540 INFO    ] Launching Daemon at Sat Jun 13 06:32:35 IST 2026
[2026-06-13 06:32:35,550.550 INFO    ] ================================================
[2026-06-13 06:32:35,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:35
[2026-06-13 06:32:36,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:36,341.341 INFO    ] Initializing speech engine...
[2026-06-13 06:32:36,351.351 INFO    ] 2026-06-13 06:32:36
[2026-06-13 06:32:36,555.555 INFO    ] 2026-06-13 06:32:36
[2026-06-13 06:32:36,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:36,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:36,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:36,959.959 INFO    ] time= 13/06/2026 06:32:36
[2026-06-13 06:32:36,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:37,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:37,075.075 INFO    ] No existing commands found in stream
[2026-06-13 06:32:42,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:32:42,089.089 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 06:32:43,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:32:43,725.725 INFO    ] Checking for system updates...
[2026-06-13 06:32:43,747.747 INFO    ] 200
[2026-06-13 06:32:43,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:43,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:43,782.782 INFO    ] No update needed
[2026-06-13 06:32:43,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:43,804.804 INFO    ] 200
[2026-06-13 06:32:43,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:43,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:43,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:43,869.869 INFO    ] No camera update needed
[2026-06-13 06:32:43,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:43,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:43,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:43,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:45,917.917 INFO    ] ================================================
[2026-06-13 06:32:45,932.932 INFO    ] Launching Daemon at Sat Jun 13 06:32:45 IST 2026
[2026-06-13 06:32:45,944.944 INFO    ] ================================================
[2026-06-13 06:32:46,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:46
[2026-06-13 06:32:46,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:46,742.742 INFO    ] Initializing speech engine...
[2026-06-13 06:32:46,746.746 INFO    ] 2026-06-13 06:32:46
[2026-06-13 06:32:46,964.964 INFO    ] 2026-06-13 06:32:46
[2026-06-13 06:32:46,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:47,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:47,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:47,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:47,361.361 INFO    ] time= 13/06/2026 06:32:47
[2026-06-13 06:32:47,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:47,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:47,503.503 INFO    ] No existing commands found in stream
[2026-06-13 06:32:52,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:32:52,519.519 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 06:32:53,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:32:53,513.513 INFO    ] Checking for system updates...
[2026-06-13 06:32:53,544.544 INFO    ] 200
[2026-06-13 06:32:53,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:53,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:53,579.579 INFO    ] No update needed
[2026-06-13 06:32:53,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 06:32:53,601.601 INFO    ] 200
[2026-06-13 06:32:53,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:32:53,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:32:53,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:32:53,768.768 INFO    ] No camera update needed
[2026-06-13 06:32:53,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:32:53,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:32:53,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:32:53,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:32:55,813.813 INFO    ] ================================================
[2026-06-13 06:32:55,829.829 INFO    ] Launching Daemon at Sat Jun 13 06:32:55 IST 2026
[2026-06-13 06:32:55,839.839 INFO    ] ================================================
[2026-06-13 06:32:56,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:32:56
[2026-06-13 06:32:56,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:32:56,632.632 INFO    ] Initializing speech engine...
[2026-06-13 06:32:56,641.641 INFO    ] 2026-06-13 06:32:56
[2026-06-13 06:32:56,845.845 INFO    ] 2026-06-13 06:32:56
[2026-06-13 06:32:56,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:32:57,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:32:57,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:32:57,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:32:57,250.250 INFO    ] time= 13/06/2026 06:32:57
[2026-06-13 06:32:57,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:32:57,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:32:57,440.440 INFO    ] No existing commands found in stream
[2026-06-13 06:33:02,433.433 INFO    ] Received new command: ID=1781312582272-0
[2026-06-13 06:33:02,435.435 INFO    ] process_and_cleanup_command: msg_id=1781312582272-0
[2026-06-13 06:33:02,437.437 INFO    ] is_command_expired: timestamp=2026-06-13T01:03:01.017Z, expiry=30s
[2026-06-13 06:33:02,494.494 INFO    ] Command removed from stream: 1781312582272-0. returning for processing...
[2026-06-13 06:33:02,496.496 INFO    ] ***** get_valid_command
[2026-06-13 06:33:02,497.497 INFO    ] {'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781312581017-ucwwi6y5k","orderId":"TM08202203260613063213561","is_vending":false}', 'timestamp': '2026-06-13T01:03:01.017Z', 'source': 'webapp'}
[2026-06-13 06:33:02,499.499 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781312581017-ucwwi6y5k', 'orderId': 'TM08202203260613063213561'}
[2026-06-13 06:33:02,501.501 INFO    ] Handling start order...
[2026-06-13 06:33:02,503.503 INFO    ] handle_start_order_command
[2026-06-13 06:33:02,507.507 INFO    ] _send_start_order_success: request_id=start-order-1781312581017-ucwwi6y5k, order_id=TM08202203260613063213561
[2026-06-13 06:33:02,509.509 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 06:33:02,552.552 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781312582525-0
[2026-06-13 06:33:02,554.554 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 06:33:02,556.556 INFO    ] Checking for system updates...
[2026-06-13 06:33:02,590.590 INFO    ] 200
[2026-06-13 06:33:02,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:02,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:33:02,650.650 INFO    ] No update needed
[2026-06-13 06:33:02,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 06:33:02,696.696 INFO    ] 200
[2026-06-13 06:33:02,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:02,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:33:02,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:33:02,819.819 INFO    ] No camera update needed
[2026-06-13 06:33:02,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:33:02,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:33:02,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:33:02,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:33:04,884.884 INFO    ] ================================================
[2026-06-13 06:33:04,899.899 INFO    ] Launching Daemon at Sat Jun 13 06:33:04 IST 2026
[2026-06-13 06:33:04,910.910 INFO    ] ================================================
[2026-06-13 06:33:05,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:33:05
[2026-06-13 06:33:05,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:33:06,123.123 INFO    ] Initializing speech engine...
[2026-06-13 06:33:06,130.130 INFO    ] 2026-06-13 06:33:06
[2026-06-13 06:33:06,348.348 INFO    ] 2026-06-13 06:33:06
[2026-06-13 06:33:06,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:33:06,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:33:06,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:33:06,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:33:06,731.731 INFO    ] time= 13/06/2026 06:33:06
[2026-06-13 06:33:06,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:33:06,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:33:06,916.916 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 06:33:06,920.920 INFO    ] Checking historical command: ID=1781312582525-0
[2026-06-13 06:33:06,922.922 INFO    ] process_and_cleanup_command: msg_id=1781312582525-0
[2026-06-13 06:33:06,949.949 INFO    ] is_command_expired: timestamp=2026-06-13T01:03:02.507966Z, expiry=30s
[2026-06-13 06:33:07,005.005 INFO    ] Command removed from stream: 1781312582525-0. returning for processing...
[2026-06-13 06:33:07,008.008 INFO    ] ***** get_valid_command
[2026-06-13 06:33:07,011.011 INFO    ] {'imei': 'TM08202203', 'timestamp': '2026-06-13T01:03:02.507966Z', 'status': 'success', 'metadata_request_id': 'start-order-1781312581017-ucwwi6y5k', 'message': 'start-order success', 'metadata_order_id': 'TM08202203260613063213561', 'message_type': 'command_response'}
[2026-06-13 06:33:07,013.013 INFO    ] Checking historical command: ID=1781312584673-0
[2026-06-13 06:33:07,014.014 INFO    ] process_and_cleanup_command: msg_id=1781312584673-0
[2026-06-13 06:33:07,016.016 INFO    ] is_command_expired: timestamp=2026-06-13T01:03:03.359Z, expiry=30s
[2026-06-13 06:33:07,078.078 INFO    ] Command removed from stream: 1781312584673-0. returning for processing...
[2026-06-13 06:33:07,082.082 INFO    ] ***** get_valid_command
[2026-06-13 06:33:07,084.084 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-13T01:03:03.359Z', 'data': '{"request_id":"process-order-1781312583358-axt1sp7ue","orderId":"TM08202203260613063213561","is_vending":false,"accessCode":"86884285"}', 'command': 'process-order', 'timeout': '60'}
[2026-06-13 06:33:07,090.090 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781312583358-axt1sp7ue', 'orderId': 'TM08202203260613063213561', 'accessCode': '86884285', 'is_vending': False}
[2026-06-13 06:33:07,093.093 INFO    ] Handling process order...
[2026-06-13 06:33:07,096.096 INFO    ] Processing process-order command...
[2026-06-13 06:33:07,101.101 INFO    ] 🔍 Lock file Order ID: TM08202203260613063213561, TS: 2026-06-13 06:33:02
[2026-06-13 06:33:07,110.110 INFO    ] ✅ Order lock valid for TM08202203260613063213561
[2026-06-13 06:33:07,113.113 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 06:33:07,116.116 INFO    ] processing access code 86884285 for order TM08202203260613063213561
[2026-06-13 06:33:07,119.119 INFO    ] 🔍 Lock file Order ID: TM08202203260613063213561, TS: 2026-06-13 06:33:02
[2026-06-13 06:33:07,123.123 INFO    ] ✅ Order lock valid for TM08202203260613063213561
[2026-06-13 06:33:07,127.127 INFO    ] 2026-06-13 06:33:07
[2026-06-13 06:33:07,155.155 INFO    ] 200
[2026-06-13 06:33:07,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:07,161.161 INFO    ] 86884285
[2026-06-13 06:33:07,164.164 INFO    ] 2026-06-13 06:33:07
[2026-06-13 06:33:07,167.167 INFO    ] session id :825174201
[2026-06-13 06:33:07,170.170 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=86884285&imei=TM08202203&session_id=825174201
[2026-06-13 06:33:08,099.099 INFO    ] 200
[2026-06-13 06:33:08,121.121 INFO    ] {"data": {"mobile": "9182166337", "order_id": "TM08202203260613063213561", "bill_amount": "10", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "86884285", "invoice_bill": "10"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 06:33:08,185.185 INFO    ] 10
[2026-06-13 06:33:08,195.195 INFO    ] TM08202203260613063213561
[2026-06-13 06:33:08,213.213 INFO    ] 9182166337
[2026-06-13 06:33:08,221.221 INFO    ] 2026-06-13 06:33:08
[2026-06-13 06:33:08,226.226 INFO    ] Door Opening for user mobile ending with  six three three seven 
[2026-06-13 06:33:08,232.232 INFO    ] Door Opening for user mobile ending with  six three three seven 
[2026-06-13 06:33:08,240.240 INFO    ] 9e47d11ebd6baaeb0d0d953ab7ffe735
[2026-06-13 06:33:08,252.252 INFO    ] 2026-06-13 06:33:08
[2026-06-13 06:33:08,263.263 INFO    ] playing audio file
[2026-06-13 06:33:08,284.284 INFO    ] 2026-06-13 06:33:08
[2026-06-13 06:33:08,287.287 INFO    ] 2026-06-13 06:33:08
[2026-06-13 06:33:08,290.290 INFO    ] publish_status: order_id=TM08202203260613063213561
[2026-06-13 06:33:08,293.293 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063213561
[2026-06-13 06:33:08,382.382 INFO    ] [publish_status] Message added to stream with ID: 1781312588353-0
[2026-06-13 06:33:08,385.385 INFO    ] Published to order:TM08202203260613063213561: {'server_status': 'order-started', 'server_response': '{"msg": "Order Data", "status": true, "data": {"invoice_bill": "10", "order_id": "TM08202203260613063213561", "bill_amount": "10", "mobile": "9182166337", "proposed_sku_json": [{"sku_total": 10, "door_id": "1", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "qty": 1, "offer_id": "", "unit_price": 10, "skuid": "4500687", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500687-5964.webp"}], "access_code": "86884285"}, "rstatus": true}', 'timestamp': '2026-06-13T01:03:08.288862Z', 'order_id': 'TM08202203260613063213561'} (ID: 1781312588353-0)
[2026-06-13 06:33:08,770.770 INFO    ] {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'invoice_bill': '10', 'order_id': 'TM08202203260613063213561', 'bill_amount': '10', 'mobile': '9182166337', 'proposed_sku_json': [{'sku_total': 10, 'door_id': '1', 'offer_desc': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'tray_id': '23', 'qty': 1, 'offer_id': '', 'unit_price': 10, 'skuid': '4500687', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}], 'access_code': '86884285'}, 'rstatus': True}, 'order_id': 'TM08202203260613063213561'}
[2026-06-13 06:33:08,773.773 INFO    ] 200
[2026-06-13 06:33:08,776.776 INFO    ] {"data":{"server_status":"order-started","server_response":{"msg":"Order Data","status":true,"data":{"invoice_bill":"10","order_id":"TM08202203260613063213561","bill_amount":"10","mobile":"9182166337","proposed_sku_json":[{"sku_total":10,"door_id":"1","offer_desc":"","name":"Modern Kitchens Potato waffers Spicy 24gm ","tray_id":"23","qty":1,"offer_id":"","unit_price":10,"skuid":"4500687","mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp"}],"access_code":"86884285"},"rstatus":true},"order_id":"TM08202203260613063213561"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:33:08,780.780 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'invoice_bill': '10', 'order_id': 'TM08202203260613063213561', 'bill_amount': '10', 'mobile': '9182166337', 'proposed_sku_json': [{'sku_total': 10, 'tray_id': '23', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'mrp': '10', 'skuid': '4500687', 'offer_id': '', 'qty': 1, 'door_id': '1', 'unit_price': 10}], 'access_code': '86884285'}, 'rstatus': True}, 'order_id': 'TM08202203260613063213561'}}
[2026-06-13 06:33:08,783.783 INFO    ] 2026-06-13 06:33:08
[2026-06-13 06:33:08,830.830 INFO    ] 200
[2026-06-13 06:33:08,840.840 INFO    ] True
[2026-06-13 06:33:09,026.026 INFO    ] 200
[2026-06-13 06:33:09,030.030 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 06:33:09,034.034 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False}
[2026-06-13 06:33:09,037.037 INFO    ] *** process_order ***
[2026-06-13 06:33:10,244.244 INFO    ] 200
[2026-06-13 06:33:10,248.248 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:33:10,251.251 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}
[2026-06-13 06:33:10,254.254 INFO    ] *** process_order ***
[2026-06-13 06:33:10,257.257 INFO    ] publish_status: order_id=TM08202203260613063213561
[2026-06-13 06:33:10,260.260 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063213561
[2026-06-13 06:33:10,333.333 INFO    ] [publish_status] Message added to stream with ID: 1781312590305-0
[2026-06-13 06:33:10,336.336 INFO    ] Published to order:TM08202203260613063213561: {'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'order_id': 'TM08202203260613063213561'} (ID: 1781312590305-0)
[2026-06-13 06:33:11,381.381 INFO    ] 2026-06-13 06:33:11
[2026-06-13 06:33:11,385.385 INFO    ] publish_status: order_id=TM08202203260613063213561
[2026-06-13 06:33:11,388.388 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063213561
[2026-06-13 06:33:11,468.468 INFO    ] [publish_status] Message added to stream with ID: 1781312591440-0
[2026-06-13 06:33:11,470.470 INFO    ] Published to order:TM08202203260613063213561: {'server_status': 'processOrder', 'server_response': '{"SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'timestamp': '2026-06-13T01:03:11.383218Z', 'order_id': 'TM08202203260613063213561'} (ID: 1781312591440-0)
[2026-06-13 06:33:11,575.575 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'order_id': 'TM08202203260613063213561'}
[2026-06-13 06:33:11,577.577 INFO    ] 200
[2026-06-13 06:33:11,578.578 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""},"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","delay":0,"SectionMain":{"Header":"Processing Order"},"rstatus":true},"order_id":"TM08202203260613063213561"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:33:11,580.580 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'order_id': 'TM08202203260613063213561'}}
[2026-06-13 06:33:11,581.581 INFO    ] 2026-06-13 06:33:11
[2026-06-13 06:33:11,583.583 INFO    ] None
[2026-06-13 06:33:11,584.584 INFO    ] Opening Door now
[2026-06-13 06:33:11,586.586 INFO    ] Opening Door now
[2026-06-13 06:33:11,588.588 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 06:33:11,590.590 INFO    ] 2026-06-13 06:33:11
[2026-06-13 06:33:11,591.591 INFO    ] playing audio file
[2026-06-13 06:33:11,602.602 INFO    ] 2026-06-13 06:33:11
[2026-06-13 06:33:11,604.604 INFO    ] 2026-06-13 06:33:11
[2026-06-13 06:33:14,668.668 INFO    ] 200
[2026-06-13 06:33:14,671.671 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:33:14,674.674 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 06:33:17,709.709 INFO    ] 200
[2026-06-13 06:33:17,711.711 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:33:17,712.712 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 06:33:20,780.780 INFO    ] 200
[2026-06-13 06:33:20,783.783 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:33:20,786.786 INFO    ] Please close door 1
[2026-06-13 06:33:20,789.789 INFO    ] Please close door 1
[2026-06-13 06:33:20,791.791 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 06:33:20,794.794 INFO    ] 2026-06-13 06:33:20
[2026-06-13 06:33:20,796.796 INFO    ] playing audio file
[2026-06-13 06:33:20,809.809 INFO    ] 2026-06-13 06:33:20
[2026-06-13 06:33:20,811.811 INFO    ] publish_status: order_id=TM08202203260613063213561
[2026-06-13 06:33:20,813.813 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063213561
[2026-06-13 06:33:20,887.887 INFO    ] [publish_status] Message added to stream with ID: 1781312600860-0
[2026-06-13 06:33:20,889.889 INFO    ] Published to order:TM08202203260613063213561: {'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Modern Kitchens Potato waffers Spicy 24gm "}], "Header": "Pick the below items from the door"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "rstatus": false}', 'timestamp': '2026-06-13T01:03:20.810408Z', 'order_id': 'TM08202203260613063213561'} (ID: 1781312600860-0)
[2026-06-13 06:33:22,400.400 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'order_id': 'TM08202203260613063213561'}
[2026-06-13 06:33:22,402.402 INFO    ] 200
[2026-06-13 06:33:22,403.403 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"SectionSKU":{"skus":[{"qty":1,"name":"Modern Kitchens Potato waffers Spicy 24gm "}],"Header":"Pick the below items from the door"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"rstatus":false},"order_id":"TM08202203260613063213561"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:33:22,405.405 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'order_id': 'TM08202203260613063213561'}}
[2026-06-13 06:33:22,406.406 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 06:33:25,438.438 INFO    ] 200
[2026-06-13 06:33:25,440.440 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:33:25,441.441 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-13 06:33:25,442.442 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,444.444 INFO    ] Order Completed 
[2026-06-13 06:33:25,445.445 INFO    ] Order Completed 
[2026-06-13 06:33:25,446.446 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 06:33:25,448.448 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,449.449 INFO    ] playing audio file
[2026-06-13 06:33:25,459.459 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,461.461 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-13 06:33:25,463.463 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,813.813 INFO    ] 200
[2026-06-13 06:33:25,815.815 INFO    ] {"res": "True", "orderId": "TM08202203260613063213561", "skus": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 10.0}
[2026-06-13 06:33:25,816.816 INFO    ] {'rstatus': True, 'orderId': 'TM08202203260613063213561', 'skus': [{'sku_total': 10.0, 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'unit_price': '10', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}], 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 06:33:25,818.818 INFO    ] {'rstatus': True, 'orderId': 'TM08202203260613063213561', 'skus': [{'sku_total': 10.0, 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'unit_price': '10', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}], 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 06:33:25,819.819 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,821.821 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,822.822 INFO    ] 10
[2026-06-13 06:33:25,823.823 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,824.824 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,825.825 INFO    ]  Your Bill Amount is 10
[2026-06-13 06:33:25,827.827 INFO    ]  Your Bill Amount is 10
[2026-06-13 06:33:25,828.828 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-13 06:33:25,829.829 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,831.831 INFO    ] playing audio file
[2026-06-13 06:33:25,841.841 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,843.843 INFO    ] 2026-06-13 06:33:25
[2026-06-13 06:33:25,845.845 INFO    ] publish_status: order_id=TM08202203260613063213561
[2026-06-13 06:33:25,847.847 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063213561
[2026-06-13 06:33:25,893.893 INFO    ] [publish_status] Message added to stream with ID: 1781312605865-0
[2026-06-13 06:33:25,896.896 INFO    ] Published to order:TM08202203260613063213561: {'server_status': 'invoiceOrder', 'server_response': '{"rstatus": true, "orderId": "TM08202203260613063213561", "skus": [{"sku_total": 10.0, "door_id": "", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "mrp": "10", "qty": 1, "unit_price": "10", "skuid": "4500687", "tray_id": "23", "image_url": "https://images.tinymart.in/product/4500687-5964.webp"}], "res": "True", "total_amount": 10.0, "anomaly": 0, "logic": "WBL"}', 'timestamp': '2026-06-13T01:03:25.843906Z', 'order_id': 'TM08202203260613063213561'} (ID: 1781312605865-0)
[2026-06-13 06:33:26,015.015 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'orderId': 'TM08202203260613063213561', 'skus': [{'sku_total': 10.0, 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'mrp': '10', 'qty': 1, 'unit_price': '10', 'skuid': '4500687', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}], 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'logic': 'WBL'}, 'order_id': 'TM08202203260613063213561'}
[2026-06-13 06:33:26,016.016 INFO    ] 200
[2026-06-13 06:33:26,018.018 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"rstatus":true,"orderId":"TM08202203260613063213561","skus":[{"sku_total":10,"door_id":"","name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","mrp":"10","qty":1,"unit_price":"10","skuid":"4500687","tray_id":"23","image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp"}],"res":"true","total_amount":10,"anomaly":0,"logic":"WBL"},"order_id":"TM08202203260613063213561"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:33:26,019.019 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202203260613063213561', 'res': 'true', 'skus': [{'sku_total': 10, 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'tray_id': '23', 'skuid': '4500687', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'qty': 1, 'mrp': '10', 'unit_price': '10'}], 'total_amount': 10, 'rstatus': True, 'logic': 'WBL', 'anomaly': 0}, 'order_id': 'TM08202203260613063213561'}}
[2026-06-13 06:33:26,021.021 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202203260613063213561', 'res': 'true', 'skus': [{'sku_total': 10, 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'tray_id': '23', 'skuid': '4500687', 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp', 'qty': 1, 'mrp': '10', 'unit_price': '10'}], 'total_amount': 10, 'rstatus': True, 'logic': 'WBL', 'anomaly': 0}, 'order_id': 'TM08202203260613063213561'}}
[2026-06-13 06:33:26,022.022 INFO    ] 2026-06-13 06:33:26
[2026-06-13 06:33:28,030.030 INFO    ] 200
[2026-06-13 06:33:28,032.032 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561", "TM08202203260613063213561"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 06:33:28,040.040 INFO    ] 2026-06-13 06:33:28
[2026-06-13 06:33:28,159.159 INFO    ] 200
[2026-06-13 06:33:28,162.162 INFO    ] True
[2026-06-13 06:33:28,165.165 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613063213561
[2026-06-13 06:33:28,168.168 INFO    ] start order file deleted
[2026-06-13 06:33:28,171.171 INFO    ] Checking for system updates...
[2026-06-13 06:33:28,209.209 INFO    ] 200
[2026-06-13 06:33:28,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:28,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:33:28,274.274 INFO    ] No update needed
[2026-06-13 06:33:28,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 06:33:28,324.324 INFO    ] 200
[2026-06-13 06:33:28,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:28,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:33:28,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:33:28,466.466 INFO    ] No camera update needed
[2026-06-13 06:33:28,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:33:28,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:33:28,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:33:28,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:33:30,531.531 INFO    ] ================================================
[2026-06-13 06:33:30,547.547 INFO    ] Launching Daemon at Sat Jun 13 06:33:30 IST 2026
[2026-06-13 06:33:30,557.557 INFO    ] ================================================
[2026-06-13 06:33:31,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:33:31
[2026-06-13 06:33:31,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:33:31,978.978 INFO    ] Initializing speech engine...
[2026-06-13 06:33:31,995.995 INFO    ] 2026-06-13 06:33:31
[2026-06-13 06:33:32,284.284 INFO    ] 2026-06-13 06:33:32
[2026-06-13 06:33:32,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:33:32,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:33:32,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:33:32,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:33:32,755.755 INFO    ] time= 13/06/2026 06:33:32
[2026-06-13 06:33:32,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:33:32,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:33:32,973.973 INFO    ] No existing commands found in stream
[2026-06-13 06:33:38,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:33:38,006.006 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 06:33:39,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:33:39,619.619 INFO    ] Checking for system updates...
[2026-06-13 06:33:39,640.640 INFO    ] 200
[2026-06-13 06:33:39,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:39,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:33:39,675.675 INFO    ] No update needed
[2026-06-13 06:33:39,677.677 INFO    ] Checking for camera pi updates...
[2026-06-13 06:33:39,698.698 INFO    ] 200
[2026-06-13 06:33:39,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:39,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:33:39,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:33:39,761.761 INFO    ] No camera update needed
[2026-06-13 06:33:39,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:33:39,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:33:39,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:33:39,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:33:41,810.810 INFO    ] ================================================
[2026-06-13 06:33:41,825.825 INFO    ] Launching Daemon at Sat Jun 13 06:33:41 IST 2026
[2026-06-13 06:33:41,836.836 INFO    ] ================================================
[2026-06-13 06:33:42,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:33:42
[2026-06-13 06:33:42,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:33:42,712.712 INFO    ] Initializing speech engine...
[2026-06-13 06:33:42,716.716 INFO    ] 2026-06-13 06:33:42
[2026-06-13 06:33:42,922.922 INFO    ] 2026-06-13 06:33:42
[2026-06-13 06:33:42,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:33:43,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:33:43,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:33:43,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:33:43,338.338 INFO    ] time= 13/06/2026 06:33:43
[2026-06-13 06:33:43,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:33:43,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:33:43,439.439 INFO    ] No existing commands found in stream
[2026-06-13 06:33:48,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:33:48,452.452 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 06:33:50,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:33:50,528.528 INFO    ] Checking for system updates...
[2026-06-13 06:33:50,549.549 INFO    ] 200
[2026-06-13 06:33:50,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:50,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:33:50,586.586 INFO    ] No update needed
[2026-06-13 06:33:50,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 06:33:50,609.609 INFO    ] 200
[2026-06-13 06:33:50,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:33:50,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:33:50,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:33:50,678.678 INFO    ] No camera update needed
[2026-06-13 06:33:50,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:33:50,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:33:50,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:33:50,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:33:52,731.731 INFO    ] ================================================
[2026-06-13 06:33:52,746.746 INFO    ] Launching Daemon at Sat Jun 13 06:33:52 IST 2026
[2026-06-13 06:33:52,757.757 INFO    ] ================================================
[2026-06-13 06:33:53,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:33:53
[2026-06-13 06:33:53,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:33:53,555.555 INFO    ] Initializing speech engine...
[2026-06-13 06:33:53,569.569 INFO    ] 2026-06-13 06:33:53
[2026-06-13 06:33:53,777.777 INFO    ] 2026-06-13 06:33:53
[2026-06-13 06:33:53,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:33:54,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:33:54,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:33:54,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:33:54,308.308 INFO    ] time= 13/06/2026 06:33:54
[2026-06-13 06:33:54,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:33:54,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:33:54,407.407 INFO    ] No existing commands found in stream
[2026-06-13 06:33:59,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:33:59,421.421 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 06:34:00,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:34:00,240.240 INFO    ] Checking for system updates...
[2026-06-13 06:34:00,261.261 INFO    ] 200
[2026-06-13 06:34:00,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:00,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:00,297.297 INFO    ] No update needed
[2026-06-13 06:34:00,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:00,319.319 INFO    ] 200
[2026-06-13 06:34:00,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:00,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:00,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:00,390.390 INFO    ] No camera update needed
[2026-06-13 06:34:00,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:00,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:00,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:00,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:02,423.423 INFO    ] ================================================
[2026-06-13 06:34:02,431.431 INFO    ] Launching Daemon at Sat Jun 13 06:34:02 IST 2026
[2026-06-13 06:34:02,437.437 INFO    ] ================================================
[2026-06-13 06:34:02,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:02
[2026-06-13 06:34:03,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:03,227.227 INFO    ] Initializing speech engine...
[2026-06-13 06:34:03,231.231 INFO    ] 2026-06-13 06:34:03
[2026-06-13 06:34:03,449.449 INFO    ] 2026-06-13 06:34:03
[2026-06-13 06:34:03,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:03,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:03,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:03,800.800 INFO    ] time= 13/06/2026 06:34:03
[2026-06-13 06:34:03,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:03,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:03,971.971 INFO    ] No existing commands found in stream
[2026-06-13 06:34:08,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:34:08,982.982 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 06:34:10,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:34:10,603.603 INFO    ] Checking for system updates...
[2026-06-13 06:34:10,625.625 INFO    ] 200
[2026-06-13 06:34:10,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:10,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:10,660.660 INFO    ] No update needed
[2026-06-13 06:34:10,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:10,680.680 INFO    ] 200
[2026-06-13 06:34:10,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:10,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:10,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:10,744.744 INFO    ] No camera update needed
[2026-06-13 06:34:10,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:10,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:10,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:10,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:12,783.783 INFO    ] ================================================
[2026-06-13 06:34:12,792.792 INFO    ] Launching Daemon at Sat Jun 13 06:34:12 IST 2026
[2026-06-13 06:34:12,798.798 INFO    ] ================================================
[2026-06-13 06:34:13,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:13
[2026-06-13 06:34:13,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:13,604.604 INFO    ] Initializing speech engine...
[2026-06-13 06:34:13,616.616 INFO    ] 2026-06-13 06:34:13
[2026-06-13 06:34:13,838.838 INFO    ] 2026-06-13 06:34:13
[2026-06-13 06:34:13,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:14,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:14,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:14,213.213 INFO    ] time= 13/06/2026 06:34:14
[2026-06-13 06:34:14,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:14,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:14,377.377 INFO    ] No existing commands found in stream
[2026-06-13 06:34:19,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:34:19,392.392 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 06:34:21,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:34:21,963.963 INFO    ] Checking for system updates...
[2026-06-13 06:34:21,984.984 INFO    ] 200
[2026-06-13 06:34:21,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:22,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:34:22,019.019 INFO    ] No update needed
[2026-06-13 06:34:22,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:22,041.041 INFO    ] 200
[2026-06-13 06:34:22,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:22,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:22,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:34:22,113.113 INFO    ] No camera update needed
[2026-06-13 06:34:22,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:22,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:22,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:22,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:24,162.162 INFO    ] ================================================
[2026-06-13 06:34:24,184.184 INFO    ] Launching Daemon at Sat Jun 13 06:34:24 IST 2026
[2026-06-13 06:34:24,195.195 INFO    ] ================================================
[2026-06-13 06:34:24,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:24
[2026-06-13 06:34:24,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:25,006.006 INFO    ] Initializing speech engine...
[2026-06-13 06:34:25,010.010 INFO    ] 2026-06-13 06:34:25
[2026-06-13 06:34:25,217.217 INFO    ] 2026-06-13 06:34:25
[2026-06-13 06:34:25,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:25,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:25,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:25,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:25,632.632 INFO    ] time= 13/06/2026 06:34:25
[2026-06-13 06:34:25,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:25,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:25,745.745 INFO    ] No existing commands found in stream
[2026-06-13 06:34:30,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:34:30,758.758 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 06:34:32,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:34:32,369.369 INFO    ] Checking for system updates...
[2026-06-13 06:34:32,389.389 INFO    ] 200
[2026-06-13 06:34:32,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:32,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:32,422.422 INFO    ] No update needed
[2026-06-13 06:34:32,424.424 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:32,445.445 INFO    ] 200
[2026-06-13 06:34:32,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:32,472.472 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:32,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:34:32,509.509 INFO    ] No camera update needed
[2026-06-13 06:34:32,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:32,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:32,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:32,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:34,567.567 INFO    ] ================================================
[2026-06-13 06:34:34,582.582 INFO    ] Launching Daemon at Sat Jun 13 06:34:34 IST 2026
[2026-06-13 06:34:34,593.593 INFO    ] ================================================
[2026-06-13 06:34:35,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:35
[2026-06-13 06:34:35,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:35,821.821 INFO    ] Initializing speech engine...
[2026-06-13 06:34:35,826.826 INFO    ] 2026-06-13 06:34:35
[2026-06-13 06:34:36,033.033 INFO    ] 2026-06-13 06:34:36
[2026-06-13 06:34:36,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:36,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:36,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:36,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:36,450.450 INFO    ] time= 13/06/2026 06:34:36
[2026-06-13 06:34:36,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:36,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:36,549.549 INFO    ] No existing commands found in stream
[2026-06-13 06:34:41,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:34:41,563.563 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 06:34:42,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:34:42,602.602 INFO    ] Checking for system updates...
[2026-06-13 06:34:42,624.624 INFO    ] 200
[2026-06-13 06:34:42,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:42,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:42,657.657 INFO    ] No update needed
[2026-06-13 06:34:42,659.659 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:42,679.679 INFO    ] 200
[2026-06-13 06:34:42,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:42,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:42,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:34:42,750.750 INFO    ] No camera update needed
[2026-06-13 06:34:42,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:42,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:42,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:42,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:44,799.799 INFO    ] ================================================
[2026-06-13 06:34:44,815.815 INFO    ] Launching Daemon at Sat Jun 13 06:34:44 IST 2026
[2026-06-13 06:34:44,825.825 INFO    ] ================================================
[2026-06-13 06:34:45,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:45
[2026-06-13 06:34:45,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:45,610.610 INFO    ] Initializing speech engine...
[2026-06-13 06:34:45,618.618 INFO    ] 2026-06-13 06:34:45
[2026-06-13 06:34:45,825.825 INFO    ] 2026-06-13 06:34:45
[2026-06-13 06:34:45,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:45,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:46,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:46,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:46,227.227 INFO    ] time= 13/06/2026 06:34:46
[2026-06-13 06:34:46,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:46,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:46,342.342 INFO    ] No existing commands found in stream
[2026-06-13 06:34:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:34:51,355.355 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 06:34:54,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:34:54,828.828 INFO    ] Checking for system updates...
[2026-06-13 06:34:54,849.849 INFO    ] 200
[2026-06-13 06:34:54,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:54,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:34:54,884.884 INFO    ] No update needed
[2026-06-13 06:34:54,887.887 INFO    ] Checking for camera pi updates...
[2026-06-13 06:34:54,926.926 INFO    ] 200
[2026-06-13 06:34:54,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:34:54,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:34:55,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:34:55,117.117 INFO    ] No camera update needed
[2026-06-13 06:34:55,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:34:55,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:34:55,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:34:55,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:34:57,175.175 INFO    ] ================================================
[2026-06-13 06:34:57,191.191 INFO    ] Launching Daemon at Sat Jun 13 06:34:57 IST 2026
[2026-06-13 06:34:57,202.202 INFO    ] ================================================
[2026-06-13 06:34:57,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:34:57
[2026-06-13 06:34:58,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:34:58,411.411 INFO    ] Initializing speech engine...
[2026-06-13 06:34:58,416.416 INFO    ] 2026-06-13 06:34:58
[2026-06-13 06:34:58,624.624 INFO    ] 2026-06-13 06:34:58
[2026-06-13 06:34:58,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:34:58,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:34:58,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:34:58,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:34:59,030.030 INFO    ] time= 13/06/2026 06:34:58
[2026-06-13 06:34:59,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:34:59,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:34:59,139.139 INFO    ] No existing commands found in stream
[2026-06-13 06:35:04,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:04,153.153 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 06:35:06,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:35:06,189.189 INFO    ] Checking for system updates...
[2026-06-13 06:35:06,212.212 INFO    ] 200
[2026-06-13 06:35:06,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:06,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:35:06,245.245 INFO    ] No update needed
[2026-06-13 06:35:06,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:06,267.267 INFO    ] 200
[2026-06-13 06:35:06,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:06,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:06,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:35:06,332.332 INFO    ] No camera update needed
[2026-06-13 06:35:06,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:06,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:06,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:06,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:35:08,382.382 INFO    ] ================================================
[2026-06-13 06:35:08,398.398 INFO    ] Launching Daemon at Sat Jun 13 06:35:08 IST 2026
[2026-06-13 06:35:08,409.409 INFO    ] ================================================
[2026-06-13 06:35:08,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:35:08
[2026-06-13 06:35:09,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:35:09,242.242 INFO    ] Initializing speech engine...
[2026-06-13 06:35:09,248.248 INFO    ] 2026-06-13 06:35:09
[2026-06-13 06:35:09,456.456 INFO    ] 2026-06-13 06:35:09
[2026-06-13 06:35:09,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:35:09,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:35:09,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:35:09,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:35:09,873.873 INFO    ] time= 13/06/2026 06:35:09
[2026-06-13 06:35:09,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:35:09,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:35:09,973.973 INFO    ] No existing commands found in stream
[2026-06-13 06:35:14,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:14,987.987 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 06:35:17,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:35:17,267.267 INFO    ] Checking for system updates...
[2026-06-13 06:35:17,289.289 INFO    ] 200
[2026-06-13 06:35:17,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:17,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:17,326.326 INFO    ] No update needed
[2026-06-13 06:35:17,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:17,351.351 INFO    ] 200
[2026-06-13 06:35:17,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:17,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:17,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:17,443.443 INFO    ] No camera update needed
[2026-06-13 06:35:17,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:17,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:17,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:17,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:35:19,504.504 INFO    ] ================================================
[2026-06-13 06:35:19,520.520 INFO    ] Launching Daemon at Sat Jun 13 06:35:19 IST 2026
[2026-06-13 06:35:19,531.531 INFO    ] ================================================
[2026-06-13 06:35:20,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:35:20
[2026-06-13 06:35:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:35:20,730.730 INFO    ] Initializing speech engine...
[2026-06-13 06:35:20,740.740 INFO    ] 2026-06-13 06:35:20
[2026-06-13 06:35:20,941.941 INFO    ] 2026-06-13 06:35:20
[2026-06-13 06:35:20,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:35:21,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:35:21,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:35:21,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:35:21,325.325 INFO    ] time= 13/06/2026 06:35:21
[2026-06-13 06:35:21,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:35:21,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:35:21,453.453 INFO    ] No existing commands found in stream
[2026-06-13 06:35:26,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:26,466.466 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 06:35:27,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:35:27,898.898 INFO    ] Checking for system updates...
[2026-06-13 06:35:27,920.920 INFO    ] 200
[2026-06-13 06:35:27,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:27,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:27,956.956 INFO    ] No update needed
[2026-06-13 06:35:27,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:27,979.979 INFO    ] 200
[2026-06-13 06:35:27,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:28,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:28,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:28,047.047 INFO    ] No camera update needed
[2026-06-13 06:35:28,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:28,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:28,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:28,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:35:30,086.086 INFO    ] ================================================
[2026-06-13 06:35:30,102.102 INFO    ] Launching Daemon at Sat Jun 13 06:35:30 IST 2026
[2026-06-13 06:35:30,113.113 INFO    ] ================================================
[2026-06-13 06:35:30,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:35:30
[2026-06-13 06:35:30,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:35:30,910.910 INFO    ] Initializing speech engine...
[2026-06-13 06:35:30,915.915 INFO    ] 2026-06-13 06:35:30
[2026-06-13 06:35:31,117.117 INFO    ] 2026-06-13 06:35:31
[2026-06-13 06:35:31,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:35:31,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:35:31,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:35:31,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:35:31,536.536 INFO    ] time= 13/06/2026 06:35:31
[2026-06-13 06:35:31,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:35:31,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:35:31,651.651 INFO    ] No existing commands found in stream
[2026-06-13 06:35:36,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:36,665.665 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 06:35:37,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:35:37,038.038 INFO    ] Checking for system updates...
[2026-06-13 06:35:37,058.058 INFO    ] 200
[2026-06-13 06:35:37,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:37,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:35:37,092.092 INFO    ] No update needed
[2026-06-13 06:35:37,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:37,112.112 INFO    ] 200
[2026-06-13 06:35:37,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:37,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:37,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:37,187.187 INFO    ] No camera update needed
[2026-06-13 06:35:37,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:37,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:37,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:37,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:35:39,235.235 INFO    ] ================================================
[2026-06-13 06:35:39,251.251 INFO    ] Launching Daemon at Sat Jun 13 06:35:39 IST 2026
[2026-06-13 06:35:39,263.263 INFO    ] ================================================
[2026-06-13 06:35:39,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:35:39
[2026-06-13 06:35:39,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:35:40,128.128 INFO    ] Initializing speech engine...
[2026-06-13 06:35:40,144.144 INFO    ] 2026-06-13 06:35:40
[2026-06-13 06:35:40,438.438 INFO    ] 2026-06-13 06:35:40
[2026-06-13 06:35:40,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:35:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:35:40,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:35:40,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:35:40,788.788 INFO    ] time= 13/06/2026 06:35:40
[2026-06-13 06:35:40,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:35:40,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:35:40,866.866 INFO    ] No existing commands found in stream
[2026-06-13 06:35:45,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:45,880.880 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 06:35:46,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:35:46,283.283 INFO    ] Checking for system updates...
[2026-06-13 06:35:46,304.304 INFO    ] 200
[2026-06-13 06:35:46,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:46,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:46,341.341 INFO    ] No update needed
[2026-06-13 06:35:46,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:46,363.363 INFO    ] 200
[2026-06-13 06:35:46,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:46,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:46,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:46,435.435 INFO    ] No camera update needed
[2026-06-13 06:35:46,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:46,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:46,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:46,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:35:48,481.481 INFO    ] ================================================
[2026-06-13 06:35:48,497.497 INFO    ] Launching Daemon at Sat Jun 13 06:35:48 IST 2026
[2026-06-13 06:35:48,508.508 INFO    ] ================================================
[2026-06-13 06:35:48,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:35:48
[2026-06-13 06:35:49,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:35:49,283.283 INFO    ] Initializing speech engine...
[2026-06-13 06:35:49,289.289 INFO    ] 2026-06-13 06:35:49
[2026-06-13 06:35:49,492.492 INFO    ] 2026-06-13 06:35:49
[2026-06-13 06:35:49,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:35:49,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:35:49,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:35:49,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:35:49,907.907 INFO    ] time= 13/06/2026 06:35:49
[2026-06-13 06:35:49,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:35:49,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:35:50,007.007 INFO    ] No existing commands found in stream
[2026-06-13 06:35:55,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:35:55,019.019 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 06:35:59,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:35:59,064.064 INFO    ] Checking for system updates...
[2026-06-13 06:35:59,085.085 INFO    ] 200
[2026-06-13 06:35:59,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:59,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:59,118.118 INFO    ] No update needed
[2026-06-13 06:35:59,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 06:35:59,140.140 INFO    ] 200
[2026-06-13 06:35:59,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:35:59,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:35:59,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:35:59,212.212 INFO    ] No camera update needed
[2026-06-13 06:35:59,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:35:59,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:35:59,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:35:59,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:01,260.260 INFO    ] ================================================
[2026-06-13 06:36:01,276.276 INFO    ] Launching Daemon at Sat Jun 13 06:36:01 IST 2026
[2026-06-13 06:36:01,287.287 INFO    ] ================================================
[2026-06-13 06:36:01,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:01
[2026-06-13 06:36:02,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:02,318.318 INFO    ] Initializing speech engine...
[2026-06-13 06:36:02,330.330 INFO    ] 2026-06-13 06:36:02
[2026-06-13 06:36:02,679.679 INFO    ] 2026-06-13 06:36:02
[2026-06-13 06:36:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:02,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:02,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:03,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:03,071.071 INFO    ] time= 13/06/2026 06:36:03
[2026-06-13 06:36:03,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:03,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:03,178.178 INFO    ] No existing commands found in stream
[2026-06-13 06:36:08,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:36:08,199.199 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 06:36:11,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:36:11,924.924 INFO    ] Checking for system updates...
[2026-06-13 06:36:11,959.959 INFO    ] 200
[2026-06-13 06:36:11,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:12,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:36:12,024.024 INFO    ] No update needed
[2026-06-13 06:36:12,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 06:36:12,064.064 INFO    ] 200
[2026-06-13 06:36:12,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:12,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:36:12,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:36:12,156.156 INFO    ] No camera update needed
[2026-06-13 06:36:12,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:36:12,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:36:12,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:36:12,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:14,212.212 INFO    ] ================================================
[2026-06-13 06:36:14,228.228 INFO    ] Launching Daemon at Sat Jun 13 06:36:14 IST 2026
[2026-06-13 06:36:14,240.240 INFO    ] ================================================
[2026-06-13 06:36:14,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:14
[2026-06-13 06:36:14,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:15,036.036 INFO    ] Initializing speech engine...
[2026-06-13 06:36:15,041.041 INFO    ] 2026-06-13 06:36:15
[2026-06-13 06:36:15,246.246 INFO    ] 2026-06-13 06:36:15
[2026-06-13 06:36:15,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:15,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:15,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:15,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:15,663.663 INFO    ] time= 13/06/2026 06:36:15
[2026-06-13 06:36:15,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:15,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:15,763.763 INFO    ] No existing commands found in stream
[2026-06-13 06:36:20,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:36:20,776.776 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 06:36:21,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:36:21,909.909 INFO    ] Checking for system updates...
[2026-06-13 06:36:21,930.930 INFO    ] 200
[2026-06-13 06:36:21,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:21,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:36:21,963.963 INFO    ] No update needed
[2026-06-13 06:36:21,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 06:36:21,985.985 INFO    ] 200
[2026-06-13 06:36:21,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:22,011.011 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:36:22,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:36:22,053.053 INFO    ] No camera update needed
[2026-06-13 06:36:22,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:36:22,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:36:22,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:36:22,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:24,101.101 INFO    ] ================================================
[2026-06-13 06:36:24,117.117 INFO    ] Launching Daemon at Sat Jun 13 06:36:24 IST 2026
[2026-06-13 06:36:24,128.128 INFO    ] ================================================
[2026-06-13 06:36:24,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:24
[2026-06-13 06:36:24,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:24,964.964 INFO    ] Initializing speech engine...
[2026-06-13 06:36:24,972.972 INFO    ] 2026-06-13 06:36:24
[2026-06-13 06:36:25,187.187 INFO    ] 2026-06-13 06:36:25
[2026-06-13 06:36:25,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:25,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:25,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:25,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:25,612.612 INFO    ] time= 13/06/2026 06:36:25
[2026-06-13 06:36:25,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:25,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:25,764.764 INFO    ] No existing commands found in stream
[2026-06-13 06:36:30,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:36:30,778.778 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 06:36:34,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:36:34,229.229 INFO    ] Checking for system updates...
[2026-06-13 06:36:34,251.251 INFO    ] 200
[2026-06-13 06:36:34,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:34,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:36:34,284.284 INFO    ] No update needed
[2026-06-13 06:36:34,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 06:36:34,305.305 INFO    ] 200
[2026-06-13 06:36:34,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:34,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:36:34,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:36:34,370.370 INFO    ] No camera update needed
[2026-06-13 06:36:34,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:36:34,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:36:34,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:36:34,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:36,419.419 INFO    ] ================================================
[2026-06-13 06:36:36,436.436 INFO    ] Launching Daemon at Sat Jun 13 06:36:36 IST 2026
[2026-06-13 06:36:36,449.449 INFO    ] ================================================
[2026-06-13 06:36:36,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:36
[2026-06-13 06:36:37,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:37,247.247 INFO    ] Initializing speech engine...
[2026-06-13 06:36:37,252.252 INFO    ] 2026-06-13 06:36:37
[2026-06-13 06:36:37,457.457 INFO    ] 2026-06-13 06:36:37
[2026-06-13 06:36:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:37,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:37,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:37,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:37,772.772 INFO    ] time= 13/06/2026 06:36:37
[2026-06-13 06:36:37,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:37,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:37,819.819 INFO    ] No existing commands found in stream
[2026-06-13 06:36:42,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:36:42,831.831 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 06:36:46,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:36:46,067.067 INFO    ] Checking for system updates...
[2026-06-13 06:36:46,089.089 INFO    ] 200
[2026-06-13 06:36:46,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:46,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:36:46,125.125 INFO    ] No update needed
[2026-06-13 06:36:46,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 06:36:46,147.147 INFO    ] 200
[2026-06-13 06:36:46,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:46,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:36:46,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:36:46,217.217 INFO    ] No camera update needed
[2026-06-13 06:36:46,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:36:46,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:36:46,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:36:46,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:48,268.268 INFO    ] ================================================
[2026-06-13 06:36:48,284.284 INFO    ] Launching Daemon at Sat Jun 13 06:36:48 IST 2026
[2026-06-13 06:36:48,296.296 INFO    ] ================================================
[2026-06-13 06:36:48,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:48
[2026-06-13 06:36:49,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:49,164.164 INFO    ] Initializing speech engine...
[2026-06-13 06:36:49,174.174 INFO    ] 2026-06-13 06:36:49
[2026-06-13 06:36:49,386.386 INFO    ] 2026-06-13 06:36:49
[2026-06-13 06:36:49,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:49,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:49,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:49,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:49,799.799 INFO    ] time= 13/06/2026 06:36:49
[2026-06-13 06:36:49,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:49,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:49,911.911 INFO    ] No existing commands found in stream
[2026-06-13 06:36:54,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:36:54,926.926 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 06:36:55,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:36:55,853.853 INFO    ] Checking for system updates...
[2026-06-13 06:36:55,875.875 INFO    ] 200
[2026-06-13 06:36:55,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:55,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:36:55,911.911 INFO    ] No update needed
[2026-06-13 06:36:55,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 06:36:55,933.933 INFO    ] 200
[2026-06-13 06:36:55,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:36:55,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:36:56,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:36:56,104.104 INFO    ] No camera update needed
[2026-06-13 06:36:56,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:36:56,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:36:56,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:36:56,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:36:58,154.154 INFO    ] ================================================
[2026-06-13 06:36:58,170.170 INFO    ] Launching Daemon at Sat Jun 13 06:36:58 IST 2026
[2026-06-13 06:36:58,181.181 INFO    ] ================================================
[2026-06-13 06:36:58,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:36:58
[2026-06-13 06:36:58,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:36:59,092.092 INFO    ] Initializing speech engine...
[2026-06-13 06:36:59,101.101 INFO    ] 2026-06-13 06:36:59
[2026-06-13 06:36:59,362.362 INFO    ] 2026-06-13 06:36:59
[2026-06-13 06:36:59,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:36:59,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:36:59,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:36:59,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:36:59,725.725 INFO    ] time= 13/06/2026 06:36:59
[2026-06-13 06:36:59,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:36:59,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:36:59,855.855 INFO    ] No existing commands found in stream
[2026-06-13 06:37:04,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:37:04,868.868 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 06:37:08,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:37:08,105.105 INFO    ] Checking for system updates...
[2026-06-13 06:37:08,125.125 INFO    ] 200
[2026-06-13 06:37:08,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:08,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:08,162.162 INFO    ] No update needed
[2026-06-13 06:37:08,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 06:37:08,183.183 INFO    ] 200
[2026-06-13 06:37:08,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:08,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:37:08,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:08,253.253 INFO    ] No camera update needed
[2026-06-13 06:37:08,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:37:08,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:37:08,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:37:08,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:37:10,301.301 INFO    ] ================================================
[2026-06-13 06:37:10,317.317 INFO    ] Launching Daemon at Sat Jun 13 06:37:10 IST 2026
[2026-06-13 06:37:10,327.327 INFO    ] ================================================
[2026-06-13 06:37:10,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:37:10
[2026-06-13 06:37:10,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:37:11,123.123 INFO    ] Initializing speech engine...
[2026-06-13 06:37:11,126.126 INFO    ] 2026-06-13 06:37:11
[2026-06-13 06:37:11,344.344 INFO    ] 2026-06-13 06:37:11
[2026-06-13 06:37:11,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:37:11,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:37:11,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:37:11,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:37:11,750.750 INFO    ] time= 13/06/2026 06:37:11
[2026-06-13 06:37:11,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:37:11,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:37:11,868.868 INFO    ] No existing commands found in stream
[2026-06-13 06:37:16,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:37:16,880.880 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 06:37:18,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:37:18,019.019 INFO    ] Checking for system updates...
[2026-06-13 06:37:18,040.040 INFO    ] 200
[2026-06-13 06:37:18,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:18,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:18,074.074 INFO    ] No update needed
[2026-06-13 06:37:18,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 06:37:18,095.095 INFO    ] 200
[2026-06-13 06:37:18,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:18,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:37:18,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:18,158.158 INFO    ] No camera update needed
[2026-06-13 06:37:18,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:37:18,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:37:18,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:37:18,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:37:20,208.208 INFO    ] ================================================
[2026-06-13 06:37:20,224.224 INFO    ] Launching Daemon at Sat Jun 13 06:37:20 IST 2026
[2026-06-13 06:37:20,235.235 INFO    ] ================================================
[2026-06-13 06:37:20,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:37:20
[2026-06-13 06:37:20,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:37:21,053.053 INFO    ] Initializing speech engine...
[2026-06-13 06:37:21,061.061 INFO    ] 2026-06-13 06:37:21
[2026-06-13 06:37:21,270.270 INFO    ] 2026-06-13 06:37:21
[2026-06-13 06:37:21,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:37:21,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:37:21,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:37:21,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:37:21,687.687 INFO    ] time= 13/06/2026 06:37:21
[2026-06-13 06:37:21,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:37:21,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:37:21,792.792 INFO    ] No existing commands found in stream
[2026-06-13 06:37:26,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:37:26,805.805 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 06:37:27,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:37:27,585.585 INFO    ] Checking for system updates...
[2026-06-13 06:37:27,606.606 INFO    ] 200
[2026-06-13 06:37:27,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:27,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:27,642.642 INFO    ] No update needed
[2026-06-13 06:37:27,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 06:37:27,664.664 INFO    ] 200
[2026-06-13 06:37:27,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:27,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:37:27,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:27,747.747 INFO    ] No camera update needed
[2026-06-13 06:37:27,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:37:27,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:37:27,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:37:27,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:37:29,794.794 INFO    ] ================================================
[2026-06-13 06:37:29,812.812 INFO    ] Launching Daemon at Sat Jun 13 06:37:29 IST 2026
[2026-06-13 06:37:29,823.823 INFO    ] ================================================
[2026-06-13 06:37:30,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:37:30
[2026-06-13 06:37:30,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:37:30,627.627 INFO    ] Initializing speech engine...
[2026-06-13 06:37:30,632.632 INFO    ] 2026-06-13 06:37:30
[2026-06-13 06:37:30,835.835 INFO    ] 2026-06-13 06:37:30
[2026-06-13 06:37:30,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:37:30,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:37:31,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:37:31,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:37:31,234.234 INFO    ] time= 13/06/2026 06:37:31
[2026-06-13 06:37:31,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:37:31,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:37:31,368.368 INFO    ] No existing commands found in stream
[2026-06-13 06:37:36,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:37:36,380.380 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 06:37:39,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:37:39,635.635 INFO    ] Checking for system updates...
[2026-06-13 06:37:39,658.658 INFO    ] 200
[2026-06-13 06:37:39,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:39,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:39,691.691 INFO    ] No update needed
[2026-06-13 06:37:39,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 06:37:39,713.713 INFO    ] 200
[2026-06-13 06:37:39,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:39,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:37:39,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:37:39,777.777 INFO    ] No camera update needed
[2026-06-13 06:37:39,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:37:39,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:37:39,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:37:39,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:37:41,825.825 INFO    ] ================================================
[2026-06-13 06:37:41,844.844 INFO    ] Launching Daemon at Sat Jun 13 06:37:41 IST 2026
[2026-06-13 06:37:41,855.855 INFO    ] ================================================
[2026-06-13 06:37:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:37:42
[2026-06-13 06:37:42,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:37:42,622.622 INFO    ] Initializing speech engine...
[2026-06-13 06:37:42,631.631 INFO    ] 2026-06-13 06:37:42
[2026-06-13 06:37:42,855.855 INFO    ] 2026-06-13 06:37:42
[2026-06-13 06:37:42,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:37:43,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:37:43,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:37:43,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:37:43,275.275 INFO    ] time= 13/06/2026 06:37:43
[2026-06-13 06:37:43,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:37:43,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:37:43,472.472 INFO    ] No existing commands found in stream
[2026-06-13 06:37:48,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:37:48,484.484 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 06:37:51,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:37:51,297.297 INFO    ] Checking for system updates...
[2026-06-13 06:37:51,319.319 INFO    ] 200
[2026-06-13 06:37:51,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:51,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:37:51,354.354 INFO    ] No update needed
[2026-06-13 06:37:51,355.355 INFO    ] Checking for camera pi updates...
[2026-06-13 06:37:51,375.375 INFO    ] 200
[2026-06-13 06:37:51,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:37:51,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:37:51,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:37:51,442.442 INFO    ] No camera update needed
[2026-06-13 06:37:51,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:37:51,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:37:51,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:37:51,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:37:53,490.490 INFO    ] ================================================
[2026-06-13 06:37:53,505.505 INFO    ] Launching Daemon at Sat Jun 13 06:37:53 IST 2026
[2026-06-13 06:37:53,515.515 INFO    ] ================================================
[2026-06-13 06:37:53,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:37:53
[2026-06-13 06:37:54,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:37:54,303.303 INFO    ] Initializing speech engine...
[2026-06-13 06:37:54,313.313 INFO    ] 2026-06-13 06:37:54
[2026-06-13 06:37:54,524.524 INFO    ] 2026-06-13 06:37:54
[2026-06-13 06:37:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:37:54,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:37:54,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:37:54,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:37:54,941.941 INFO    ] time= 13/06/2026 06:37:54
[2026-06-13 06:37:54,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:37:55,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:37:55,072.072 INFO    ] No existing commands found in stream
[2026-06-13 06:38:00,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:00,084.084 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 06:38:03,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:38:03,973.973 INFO    ] Checking for system updates...
[2026-06-13 06:38:03,995.995 INFO    ] 200
[2026-06-13 06:38:03,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:04,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:38:04,030.030 INFO    ] No update needed
[2026-06-13 06:38:04,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:04,051.051 INFO    ] 200
[2026-06-13 06:38:04,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:04,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:04,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:38:04,128.128 INFO    ] No camera update needed
[2026-06-13 06:38:04,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:04,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:04,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:04,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:38:06,176.176 INFO    ] ================================================
[2026-06-13 06:38:06,192.192 INFO    ] Launching Daemon at Sat Jun 13 06:38:06 IST 2026
[2026-06-13 06:38:06,203.203 INFO    ] ================================================
[2026-06-13 06:38:06,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:38:06
[2026-06-13 06:38:06,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:38:06,998.998 INFO    ] Initializing speech engine...
[2026-06-13 06:38:07,002.002 INFO    ] 2026-06-13 06:38:06
[2026-06-13 06:38:07,223.223 INFO    ] 2026-06-13 06:38:07
[2026-06-13 06:38:07,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:38:07,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:38:07,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:38:07,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:38:07,623.623 INFO    ] time= 13/06/2026 06:38:07
[2026-06-13 06:38:07,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:38:07,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:38:07,737.737 INFO    ] No existing commands found in stream
[2026-06-13 06:38:12,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:12,751.751 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 06:38:14,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:38:14,335.335 INFO    ] Checking for system updates...
[2026-06-13 06:38:14,356.356 INFO    ] 200
[2026-06-13 06:38:14,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:14,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:14,391.391 INFO    ] No update needed
[2026-06-13 06:38:14,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:14,412.412 INFO    ] 200
[2026-06-13 06:38:14,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:14,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:14,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:14,476.476 INFO    ] No camera update needed
[2026-06-13 06:38:14,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:14,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:14,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:14,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:38:16,525.525 INFO    ] ================================================
[2026-06-13 06:38:16,547.547 INFO    ] Launching Daemon at Sat Jun 13 06:38:16 IST 2026
[2026-06-13 06:38:16,558.558 INFO    ] ================================================
[2026-06-13 06:38:16,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:38:16
[2026-06-13 06:38:17,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:38:17,363.363 INFO    ] Initializing speech engine...
[2026-06-13 06:38:17,369.369 INFO    ] 2026-06-13 06:38:17
[2026-06-13 06:38:17,588.588 INFO    ] 2026-06-13 06:38:17
[2026-06-13 06:38:17,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:38:17,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:38:17,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:38:17,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:38:17,960.960 INFO    ] time= 13/06/2026 06:38:17
[2026-06-13 06:38:18,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:38:18,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:38:18,140.140 INFO    ] No existing commands found in stream
[2026-06-13 06:38:23,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:23,153.153 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 06:38:24,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:38:24,129.129 INFO    ] Checking for system updates...
[2026-06-13 06:38:24,151.151 INFO    ] 200
[2026-06-13 06:38:24,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:24,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:24,185.185 INFO    ] No update needed
[2026-06-13 06:38:24,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:24,209.209 INFO    ] 200
[2026-06-13 06:38:24,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:24,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:24,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:24,278.278 INFO    ] No camera update needed
[2026-06-13 06:38:24,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:24,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:24,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:24,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:38:26,327.327 INFO    ] ================================================
[2026-06-13 06:38:26,342.342 INFO    ] Launching Daemon at Sat Jun 13 06:38:26 IST 2026
[2026-06-13 06:38:26,353.353 INFO    ] ================================================
[2026-06-13 06:38:26,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:38:26
[2026-06-13 06:38:27,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:38:27,146.146 INFO    ] Initializing speech engine...
[2026-06-13 06:38:27,150.150 INFO    ] 2026-06-13 06:38:27
[2026-06-13 06:38:27,357.357 INFO    ] 2026-06-13 06:38:27
[2026-06-13 06:38:27,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:38:27,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:38:27,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:38:27,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:38:27,761.761 INFO    ] time= 13/06/2026 06:38:27
[2026-06-13 06:38:27,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:38:27,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:38:27,877.877 INFO    ] No existing commands found in stream
[2026-06-13 06:38:32,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:32,891.891 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 06:38:36,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:38:36,333.333 INFO    ] Checking for system updates...
[2026-06-13 06:38:36,355.355 INFO    ] 200
[2026-06-13 06:38:36,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:36,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:38:36,390.390 INFO    ] No update needed
[2026-06-13 06:38:36,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:36,412.412 INFO    ] 200
[2026-06-13 06:38:36,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:36,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:36,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:38:36,475.475 INFO    ] No camera update needed
[2026-06-13 06:38:36,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:36,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:36,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:36,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:38:38,524.524 INFO    ] ================================================
[2026-06-13 06:38:38,539.539 INFO    ] Launching Daemon at Sat Jun 13 06:38:38 IST 2026
[2026-06-13 06:38:38,550.550 INFO    ] ================================================
[2026-06-13 06:38:38,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:38:38
[2026-06-13 06:38:39,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:38:39,345.345 INFO    ] Initializing speech engine...
[2026-06-13 06:38:39,350.350 INFO    ] 2026-06-13 06:38:39
[2026-06-13 06:38:39,577.577 INFO    ] 2026-06-13 06:38:39
[2026-06-13 06:38:39,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:38:39,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:38:39,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:38:39,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:38:39,920.920 INFO    ] time= 13/06/2026 06:38:39
[2026-06-13 06:38:39,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:38:39,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:38:40,033.033 INFO    ] No existing commands found in stream
[2026-06-13 06:38:45,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:45,047.047 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 06:38:48,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:38:48,134.134 INFO    ] Checking for system updates...
[2026-06-13 06:38:48,171.171 INFO    ] 200
[2026-06-13 06:38:48,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:48,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:48,227.227 INFO    ] No update needed
[2026-06-13 06:38:48,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:48,249.249 INFO    ] 200
[2026-06-13 06:38:48,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:48,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:48,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:48,312.312 INFO    ] No camera update needed
[2026-06-13 06:38:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:48,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:48,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:48,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:38:50,359.359 INFO    ] ================================================
[2026-06-13 06:38:50,373.373 INFO    ] Launching Daemon at Sat Jun 13 06:38:50 IST 2026
[2026-06-13 06:38:50,384.384 INFO    ] ================================================
[2026-06-13 06:38:50,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:38:50
[2026-06-13 06:38:51,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:38:51,233.233 INFO    ] Initializing speech engine...
[2026-06-13 06:38:51,238.238 INFO    ] 2026-06-13 06:38:51
[2026-06-13 06:38:51,444.444 INFO    ] 2026-06-13 06:38:51
[2026-06-13 06:38:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:38:51,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:38:51,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:38:51,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:38:51,863.863 INFO    ] time= 13/06/2026 06:38:51
[2026-06-13 06:38:51,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:38:51,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:38:51,963.963 INFO    ] No existing commands found in stream
[2026-06-13 06:38:56,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:38:56,974.974 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 06:38:59,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:38:59,637.637 INFO    ] Checking for system updates...
[2026-06-13 06:38:59,660.660 INFO    ] 200
[2026-06-13 06:38:59,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:59,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:59,695.695 INFO    ] No update needed
[2026-06-13 06:38:59,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 06:38:59,716.716 INFO    ] 200
[2026-06-13 06:38:59,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:38:59,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:38:59,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:38:59,882.882 INFO    ] No camera update needed
[2026-06-13 06:38:59,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:38:59,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:38:59,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:38:59,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:39:01,939.939 INFO    ] ================================================
[2026-06-13 06:39:02,977.977 INFO    ] Launching Daemon at Sat Jun 13 06:39:01 IST 2026
[2026-06-13 06:39:02,010.010 INFO    ] ================================================
[2026-06-13 06:39:02,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:39:02
[2026-06-13 06:39:03,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:39:03,683.683 INFO    ] Initializing speech engine...
[2026-06-13 06:39:03,691.691 INFO    ] 2026-06-13 06:39:03
[2026-06-13 06:39:03,959.959 INFO    ] 2026-06-13 06:39:03
[2026-06-13 06:39:04,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:39:04,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:39:04,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:39:04,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:39:04,397.397 INFO    ] time= 13/06/2026 06:39:04
[2026-06-13 06:39:04,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:39:04,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:39:04,563.563 INFO    ] No existing commands found in stream
[2026-06-13 06:39:09,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:39:09,581.581 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 06:39:12,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:39:12,166.166 INFO    ] Checking for system updates...
[2026-06-13 06:39:12,190.190 INFO    ] 200
[2026-06-13 06:39:12,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:12,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:39:12,226.226 INFO    ] No update needed
[2026-06-13 06:39:12,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 06:39:12,247.247 INFO    ] 200
[2026-06-13 06:39:12,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:12,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:39:12,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:39:12,313.313 INFO    ] No camera update needed
[2026-06-13 06:39:12,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:39:12,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:39:12,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:39:12,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:39:14,360.360 INFO    ] ================================================
[2026-06-13 06:39:14,375.375 INFO    ] Launching Daemon at Sat Jun 13 06:39:14 IST 2026
[2026-06-13 06:39:14,386.386 INFO    ] ================================================
[2026-06-13 06:39:14,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:39:14
[2026-06-13 06:39:15,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:39:15,241.241 INFO    ] Initializing speech engine...
[2026-06-13 06:39:15,245.245 INFO    ] 2026-06-13 06:39:15
[2026-06-13 06:39:15,456.456 INFO    ] 2026-06-13 06:39:15
[2026-06-13 06:39:15,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:39:15,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:39:15,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:39:15,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:39:15,880.880 INFO    ] time= 13/06/2026 06:39:15
[2026-06-13 06:39:15,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:39:15,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:39:15,983.983 INFO    ] No existing commands found in stream
[2026-06-13 06:39:21,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:39:21,005.005 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 06:39:23,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:39:23,680.680 INFO    ] Checking for system updates...
[2026-06-13 06:39:23,704.704 INFO    ] 200
[2026-06-13 06:39:23,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:23,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:39:23,743.743 INFO    ] No update needed
[2026-06-13 06:39:23,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 06:39:23,768.768 INFO    ] 200
[2026-06-13 06:39:23,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:23,798.798 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:39:23,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:39:23,841.841 INFO    ] No camera update needed
[2026-06-13 06:39:23,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:39:23,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:39:23,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:39:23,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:39:25,892.892 INFO    ] ================================================
[2026-06-13 06:39:25,907.907 INFO    ] Launching Daemon at Sat Jun 13 06:39:25 IST 2026
[2026-06-13 06:39:25,917.917 INFO    ] ================================================
[2026-06-13 06:39:26,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:39:26
[2026-06-13 06:39:26,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:39:26,777.777 INFO    ] Initializing speech engine...
[2026-06-13 06:39:26,783.783 INFO    ] 2026-06-13 06:39:26
[2026-06-13 06:39:26,991.991 INFO    ] 2026-06-13 06:39:26
[2026-06-13 06:39:27,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:39:27,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:39:27,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:39:27,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:39:27,412.412 INFO    ] time= 13/06/2026 06:39:27
[2026-06-13 06:39:27,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:39:27,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:39:27,510.510 INFO    ] No existing commands found in stream
[2026-06-13 06:39:32,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:39:32,531.531 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 06:39:34,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:39:34,346.346 INFO    ] Checking for system updates...
[2026-06-13 06:39:34,366.366 INFO    ] 200
[2026-06-13 06:39:34,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:34,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:39:34,402.402 INFO    ] No update needed
[2026-06-13 06:39:34,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 06:39:34,424.424 INFO    ] 200
[2026-06-13 06:39:34,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:34,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:39:34,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:39:34,492.492 INFO    ] No camera update needed
[2026-06-13 06:39:34,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:39:34,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:39:34,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:39:34,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:39:36,541.541 INFO    ] ================================================
[2026-06-13 06:39:36,556.556 INFO    ] Launching Daemon at Sat Jun 13 06:39:36 IST 2026
[2026-06-13 06:39:36,567.567 INFO    ] ================================================
[2026-06-13 06:39:36,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:39:36
[2026-06-13 06:39:37,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:39:37,429.429 INFO    ] Initializing speech engine...
[2026-06-13 06:39:37,436.436 INFO    ] 2026-06-13 06:39:37
[2026-06-13 06:39:37,652.652 INFO    ] 2026-06-13 06:39:37
[2026-06-13 06:39:37,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:39:37,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:39:37,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:39:38,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:39:38,070.070 INFO    ] time= 13/06/2026 06:39:38
[2026-06-13 06:39:38,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:39:38,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:39:38,169.169 INFO    ] No existing commands found in stream
[2026-06-13 06:39:43,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:39:43,185.185 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 06:39:46,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:39:46,551.551 INFO    ] Checking for system updates...
[2026-06-13 06:39:46,575.575 INFO    ] 200
[2026-06-13 06:39:46,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:46,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:39:46,612.612 INFO    ] No update needed
[2026-06-13 06:39:46,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 06:39:46,635.635 INFO    ] 200
[2026-06-13 06:39:46,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:46,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:39:46,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:39:46,700.700 INFO    ] No camera update needed
[2026-06-13 06:39:46,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:39:46,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:39:46,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:39:46,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:39:48,751.751 INFO    ] ================================================
[2026-06-13 06:39:48,767.767 INFO    ] Launching Daemon at Sat Jun 13 06:39:48 IST 2026
[2026-06-13 06:39:48,777.777 INFO    ] ================================================
[2026-06-13 06:39:49,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:39:49
[2026-06-13 06:39:49,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:39:49,994.994 INFO    ] Initializing speech engine...
[2026-06-13 06:39:50,004.004 INFO    ] 2026-06-13 06:39:50
[2026-06-13 06:39:50,210.210 INFO    ] 2026-06-13 06:39:50
[2026-06-13 06:39:50,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:39:50,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:39:50,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:39:50,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:39:50,602.602 INFO    ] time= 13/06/2026 06:39:50
[2026-06-13 06:39:50,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:39:50,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:39:50,734.734 INFO    ] No existing commands found in stream
[2026-06-13 06:39:55,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:39:55,747.747 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 06:39:58,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:39:58,306.306 INFO    ] Checking for system updates...
[2026-06-13 06:39:58,329.329 INFO    ] 200
[2026-06-13 06:39:58,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:58,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:39:58,362.362 INFO    ] No update needed
[2026-06-13 06:39:58,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 06:39:58,385.385 INFO    ] 200
[2026-06-13 06:39:58,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:39:58,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:39:58,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:39:58,458.458 INFO    ] No camera update needed
[2026-06-13 06:39:58,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:39:58,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:39:58,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:39:58,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:40:00,507.507 INFO    ] ================================================
[2026-06-13 06:40:00,523.523 INFO    ] Launching Daemon at Sat Jun 13 06:40:00 IST 2026
[2026-06-13 06:40:00,533.533 INFO    ] ================================================
[2026-06-13 06:40:00,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:40:00
[2026-06-13 06:40:01,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:40:01,385.385 INFO    ] Initializing speech engine...
[2026-06-13 06:40:01,389.389 INFO    ] 2026-06-13 06:40:01
[2026-06-13 06:40:01,593.593 INFO    ] 2026-06-13 06:40:01
[2026-06-13 06:40:01,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:40:01,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:40:01,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:40:01,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:40:01,903.903 INFO    ] time= 13/06/2026 06:40:01
[2026-06-13 06:40:01,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:40:01,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:40:01,966.966 INFO    ] No existing commands found in stream
[2026-06-13 06:40:06,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:40:06,982.982 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 06:40:08,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:40:08,348.348 INFO    ] Checking for system updates...
[2026-06-13 06:40:08,391.391 INFO    ] 200
[2026-06-13 06:40:08,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:08,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:40:08,442.442 INFO    ] No update needed
[2026-06-13 06:40:08,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 06:40:08,465.465 INFO    ] 200
[2026-06-13 06:40:08,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:08,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:40:08,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:40:08,528.528 INFO    ] No camera update needed
[2026-06-13 06:40:08,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:40:08,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:40:08,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:40:08,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:40:10,577.577 INFO    ] ================================================
[2026-06-13 06:40:10,593.593 INFO    ] Launching Daemon at Sat Jun 13 06:40:10 IST 2026
[2026-06-13 06:40:10,603.603 INFO    ] ================================================
[2026-06-13 06:40:10,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:40:10
[2026-06-13 06:40:11,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:40:11,383.383 INFO    ] Initializing speech engine...
[2026-06-13 06:40:11,388.388 INFO    ] 2026-06-13 06:40:11
[2026-06-13 06:40:11,591.591 INFO    ] 2026-06-13 06:40:11
[2026-06-13 06:40:11,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:40:11,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:40:11,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:40:11,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:40:11,988.988 INFO    ] time= 13/06/2026 06:40:11
[2026-06-13 06:40:12,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:40:12,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:40:12,102.102 INFO    ] No existing commands found in stream
[2026-06-13 06:40:17,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:40:17,114.114 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 06:40:19,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:40:19,903.903 INFO    ] Checking for system updates...
[2026-06-13 06:40:19,923.923 INFO    ] 200
[2026-06-13 06:40:19,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:19,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:19,960.960 INFO    ] No update needed
[2026-06-13 06:40:19,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 06:40:19,982.982 INFO    ] 200
[2026-06-13 06:40:19,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:20,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:40:20,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:20,045.045 INFO    ] No camera update needed
[2026-06-13 06:40:20,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:40:20,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:40:20,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:40:20,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:40:22,096.096 INFO    ] ================================================
[2026-06-13 06:40:22,112.112 INFO    ] Launching Daemon at Sat Jun 13 06:40:22 IST 2026
[2026-06-13 06:40:22,123.123 INFO    ] ================================================
[2026-06-13 06:40:22,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:40:22
[2026-06-13 06:40:22,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:40:22,996.996 INFO    ] Initializing speech engine...
[2026-06-13 06:40:23,005.005 INFO    ] 2026-06-13 06:40:22
[2026-06-13 06:40:23,204.204 INFO    ] 2026-06-13 06:40:23
[2026-06-13 06:40:23,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:40:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:40:23,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:40:23,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:40:23,600.600 INFO    ] time= 13/06/2026 06:40:23
[2026-06-13 06:40:23,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:40:23,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:40:23,721.721 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 06:40:23,725.725 INFO    ] Checking historical command: ID=1781313018361-0
[2026-06-13 06:40:23,731.731 INFO    ] process_and_cleanup_command: msg_id=1781313018361-0
[2026-06-13 06:40:23,752.752 INFO    ] is_command_expired: timestamp=2026-06-13T01:10:17.035Z, expiry=30s
[2026-06-13 06:40:23,863.863 INFO    ] Command removed from stream: 1781313018361-0. returning for processing...
[2026-06-13 06:40:23,866.866 INFO    ] ***** get_valid_command
[2026-06-13 06:40:23,869.869 INFO    ] {'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1781313017034-pj50hu6q7","orderId":"TM08202203260613063937349","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-13T01:10:17.035Z'}
[2026-06-13 06:40:23,873.873 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613063937349', 'request_id': 'start-order-1781313017034-pj50hu6q7'}
[2026-06-13 06:40:23,878.878 INFO    ] Handling start order...
[2026-06-13 06:40:23,881.881 INFO    ] handle_start_order_command
[2026-06-13 06:40:23,888.888 INFO    ] _send_start_order_success: request_id=start-order-1781313017034-pj50hu6q7, order_id=TM08202203260613063937349
[2026-06-13 06:40:23,891.891 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 06:40:23,941.941 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781313023910-0
[2026-06-13 06:40:23,945.945 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 06:40:23,948.948 INFO    ] Checking for system updates...
[2026-06-13 06:40:23,985.985 INFO    ] 200
[2026-06-13 06:40:23,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:24,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:24,088.088 INFO    ] No update needed
[2026-06-13 06:40:24,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 06:40:24,147.147 INFO    ] 200
[2026-06-13 06:40:24,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:24,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:40:24,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:24,274.274 INFO    ] No camera update needed
[2026-06-13 06:40:24,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:40:24,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:40:24,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:40:24,291.291 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 06:40:24,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:40:26,331.331 INFO    ] ================================================
[2026-06-13 06:40:26,348.348 INFO    ] Launching Daemon at Sat Jun 13 06:40:26 IST 2026
[2026-06-13 06:40:26,360.360 INFO    ] ================================================
[2026-06-13 06:40:26,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:40:26
[2026-06-13 06:40:27,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:40:27,171.171 INFO    ] Initializing speech engine...
[2026-06-13 06:40:27,177.177 INFO    ] 2026-06-13 06:40:27
[2026-06-13 06:40:27,381.381 INFO    ] 2026-06-13 06:40:27
[2026-06-13 06:40:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:40:27,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:40:27,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:40:27,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:40:27,785.785 INFO    ] time= 13/06/2026 06:40:27
[2026-06-13 06:40:27,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:40:27,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:40:27,921.921 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 06:40:27,923.923 INFO    ] Checking historical command: ID=1781313023910-0
[2026-06-13 06:40:27,949.949 INFO    ] process_and_cleanup_command: msg_id=1781313023910-0
[2026-06-13 06:40:27,952.952 INFO    ] is_command_expired: timestamp=2026-06-13T01:10:23.889588Z, expiry=30s
[2026-06-13 06:40:28,036.036 INFO    ] Command removed from stream: 1781313023910-0. returning for processing...
[2026-06-13 06:40:28,040.040 INFO    ] ***** get_valid_command
[2026-06-13 06:40:28,044.044 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781313017034-pj50hu6q7', 'timestamp': '2026-06-13T01:10:23.889588Z', 'imei': 'TM08202203', 'message': 'start-order success', 'status': 'success', 'metadata_order_id': 'TM08202203260613063937349'}
[2026-06-13 06:40:28,048.048 INFO    ] Checking historical command: ID=1781313025712-0
[2026-06-13 06:40:28,052.052 INFO    ] process_and_cleanup_command: msg_id=1781313025712-0
[2026-06-13 06:40:28,054.054 INFO    ] is_command_expired: timestamp=2026-06-13T01:10:24.451Z, expiry=30s
[2026-06-13 06:40:28,098.098 INFO    ] Command removed from stream: 1781313025712-0. returning for processing...
[2026-06-13 06:40:28,101.101 INFO    ] ***** get_valid_command
[2026-06-13 06:40:28,105.105 INFO    ] {'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1781313024451-mn488d3eb","orderId":"TM08202203260613063937349","is_vending":false,"accessCode":"11096392"}', 'command': 'process-order', 'timestamp': '2026-06-13T01:10:24.451Z'}
[2026-06-13 06:40:28,108.108 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613063937349', 'accessCode': '11096392', 'request_id': 'process-order-1781313024451-mn488d3eb', 'is_vending': False}
[2026-06-13 06:40:28,111.111 INFO    ] Handling process order...
[2026-06-13 06:40:28,115.115 INFO    ] Processing process-order command...
[2026-06-13 06:40:28,119.119 INFO    ] 🔍 Lock file Order ID: TM08202203260613063937349, TS: 2026-06-13 06:40:23
[2026-06-13 06:40:28,127.127 INFO    ] ✅ Order lock valid for TM08202203260613063937349
[2026-06-13 06:40:28,130.130 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 06:40:28,133.133 INFO    ] processing access code 11096392 for order TM08202203260613063937349
[2026-06-13 06:40:28,137.137 INFO    ] 🔍 Lock file Order ID: TM08202203260613063937349, TS: 2026-06-13 06:40:23
[2026-06-13 06:40:28,140.140 INFO    ] ✅ Order lock valid for TM08202203260613063937349
[2026-06-13 06:40:28,143.143 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,173.173 INFO    ] 200
[2026-06-13 06:40:28,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:28,181.181 INFO    ] 11096392
[2026-06-13 06:40:28,185.185 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,190.190 INFO    ] session id :711539154
[2026-06-13 06:40:28,196.196 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=11096392&imei=TM08202203&session_id=711539154
[2026-06-13 06:40:28,893.893 INFO    ] 200
[2026-06-13 06:40:28,896.896 INFO    ] {"data": {"mobile": "9182166337", "order_id": "TM08202203260613063937349", "bill_amount": "25", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186078-2883.png", "skuid": "186078", "door_id": "2", "mrp": "25", "offer_desc": "", "name": "Paper boat Aam Panna 150ml", "tray_id": "32", "unit_price": 25, "qty": 1, "sku_total": 25, "offer_id": ""}], "access_code": "11096392", "invoice_bill": "25"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 06:40:28,905.905 INFO    ] 25
[2026-06-13 06:40:28,911.911 INFO    ] TM08202203260613063937349
[2026-06-13 06:40:28,915.915 INFO    ] 9182166337
[2026-06-13 06:40:28,917.917 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,918.918 INFO    ] Door Opening for user mobile ending with  six three three seven 
[2026-06-13 06:40:28,920.920 INFO    ] Door Opening for user mobile ending with  six three three seven 
[2026-06-13 06:40:28,921.921 INFO    ] 9e47d11ebd6baaeb0d0d953ab7ffe735
[2026-06-13 06:40:28,922.922 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,923.923 INFO    ] playing audio file
[2026-06-13 06:40:28,933.933 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,935.935 INFO    ] 2026-06-13 06:40:28
[2026-06-13 06:40:28,937.937 INFO    ] publish_status: order_id=TM08202203260613063937349
[2026-06-13 06:40:28,939.939 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063937349
[2026-06-13 06:40:28,990.990 INFO    ] [publish_status] Message added to stream with ID: 1781313028960-0
[2026-06-13 06:40:28,991.991 INFO    ] Published to order:TM08202203260613063937349: {'server_response': '{"status": true, "rstatus": true, "data": {"mobile": "9182166337", "invoice_bill": "25", "bill_amount": "25", "proposed_sku_json": [{"offer_id": "", "mrp": "25", "tray_id": "32", "offer_desc": "", "image_url": "https://images.tinymart.in/product/186078-2883.png", "name": "Paper boat Aam Panna 150ml", "skuid": "186078", "door_id": "2", "sku_total": 25, "unit_price": 25, "qty": 1}], "order_id": "TM08202203260613063937349", "access_code": "11096392"}, "msg": "Order Data"}', 'order_id': 'TM08202203260613063937349', 'timestamp': '2026-06-13T01:10:28.936484Z', 'server_status': 'order-started'} (ID: 1781313028960-0)
[2026-06-13 06:40:29,294.294 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'data': {'mobile': '9182166337', 'invoice_bill': '25', 'bill_amount': '25', 'proposed_sku_json': [{'offer_id': '', 'mrp': '25', 'tray_id': '32', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'name': 'Paper boat Aam Panna 150ml', 'skuid': '186078', 'door_id': '2', 'sku_total': 25, 'unit_price': 25, 'qty': 1}], 'order_id': 'TM08202203260613063937349', 'access_code': '11096392'}, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613063937349', 'server_status': 'order-started'}
[2026-06-13 06:40:29,295.295 INFO    ] 200
[2026-06-13 06:40:29,296.296 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"data":{"mobile":"9182166337","invoice_bill":"25","bill_amount":"25","proposed_sku_json":[{"offer_id":"","mrp":"25","tray_id":"32","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/186078-2883.png","name":"Paper boat Aam Panna 150ml","skuid":"186078","door_id":"2","sku_total":25,"unit_price":25,"qty":1}],"order_id":"TM08202203260613063937349","access_code":"11096392"},"msg":"Order Data"},"order_id":"TM08202203260613063937349","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:40:29,298.298 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613063937349', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'mobile': '9182166337', 'invoice_bill': '25', 'bill_amount': '25', 'proposed_sku_json': [{'offer_id': '', 'name': 'Paper boat Aam Panna 150ml', 'tray_id': '32', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'door_id': '2', 'skuid': '186078', 'mrp': '25', 'sku_total': 25, 'unit_price': 25, 'qty': 1}], 'order_id': 'TM08202203260613063937349', 'access_code': '11096392'}, 'status': True}, 'server_status': 'order-started'}}
[2026-06-13 06:40:29,300.300 INFO    ] 2026-06-13 06:40:29
[2026-06-13 06:40:29,327.327 INFO    ] 200
[2026-06-13 06:40:29,328.328 INFO    ] True
[2026-06-13 06:40:29,410.410 INFO    ] 200
[2026-06-13 06:40:29,412.412 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 06:40:29,414.414 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please Wait'}
[2026-06-13 06:40:29,416.416 INFO    ] *** process_order ***
[2026-06-13 06:40:30,570.570 INFO    ] 200
[2026-06-13 06:40:30,572.572 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:40:30,573.573 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-13 06:40:30,574.574 INFO    ] *** process_order ***
[2026-06-13 06:40:30,576.576 INFO    ] publish_status: order_id=TM08202203260613063937349
[2026-06-13 06:40:30,577.577 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063937349
[2026-06-13 06:40:30,643.643 INFO    ] [publish_status] Message added to stream with ID: 1781313030612-0
[2026-06-13 06:40:30,644.644 INFO    ] Published to order:TM08202203260613063937349: {'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "delay": 0, "voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}}', 'order_id': 'TM08202203260613063937349', 'server_status': 'doorOpened'} (ID: 1781313030612-0)
[2026-06-13 06:40:31,689.689 INFO    ] 2026-06-13 06:40:31
[2026-06-13 06:40:31,692.692 INFO    ] publish_status: order_id=TM08202203260613063937349
[2026-06-13 06:40:31,694.694 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063937349
[2026-06-13 06:40:31,754.754 INFO    ] [publish_status] Message added to stream with ID: 1781313031723-0
[2026-06-13 06:40:31,757.757 INFO    ] Published to order:TM08202203260613063937349: {'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}', 'order_id': 'TM08202203260613063937349', 'timestamp': '2026-06-13T01:10:31.690413Z', 'server_status': 'processOrder'} (ID: 1781313031723-0)
[2026-06-13 06:40:31,863.863 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM08202203260613063937349', 'server_status': 'processOrder'}
[2026-06-13 06:40:31,865.865 INFO    ] 200
[2026-06-13 06:40:31,867.867 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"delay":0,"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"status":"true","SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"},"order_id":"TM08202203260613063937349","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:40:31,871.871 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613063937349', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'delay': 0, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}}, 'server_status': 'processOrder'}}
[2026-06-13 06:40:31,874.874 INFO    ] 2026-06-13 06:40:31
[2026-06-13 06:40:31,877.877 INFO    ] None
[2026-06-13 06:40:31,879.879 INFO    ] Opening Door now
[2026-06-13 06:40:31,882.882 INFO    ] Opening Door now
[2026-06-13 06:40:31,885.885 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 06:40:31,888.888 INFO    ] 2026-06-13 06:40:31
[2026-06-13 06:40:31,891.891 INFO    ] playing audio file
[2026-06-13 06:40:31,909.909 INFO    ] 2026-06-13 06:40:31
[2026-06-13 06:40:31,912.912 INFO    ] 2026-06-13 06:40:31
[2026-06-13 06:40:34,950.950 INFO    ] 200
[2026-06-13 06:40:34,952.952 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper boat Aam Panna 150ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:40:34,954.954 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper boat Aam Panna 150ml', 'qty': 1}]}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 06:40:38,005.005 INFO    ] 200
[2026-06-13 06:40:38,007.007 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper boat Aam Panna 150ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:40:38,011.011 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper boat Aam Panna 150ml', 'qty': 1}]}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 06:40:41,059.059 INFO    ] 200
[2026-06-13 06:40:41,062.062 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper boat Aam Panna 150ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:40:41,065.065 INFO    ] Please close door 2
[2026-06-13 06:40:41,067.067 INFO    ] Please close door 2
[2026-06-13 06:40:41,070.070 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 06:40:41,072.072 INFO    ] 2026-06-13 06:40:41
[2026-06-13 06:40:41,074.074 INFO    ] playing audio file
[2026-06-13 06:40:41,091.091 INFO    ] 2026-06-13 06:40:41
[2026-06-13 06:40:41,095.095 INFO    ] publish_status: order_id=TM08202203260613063937349
[2026-06-13 06:40:41,097.097 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063937349
[2026-06-13 06:40:41,172.172 INFO    ] [publish_status] Message added to stream with ID: 1781313041140-0
[2026-06-13 06:40:41,175.175 INFO    ] Published to order:TM08202203260613063937349: {'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Paper boat Aam Panna 150ml", "qty": 1}]}, "rstatus": false, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "umessage": "In Progress", "data": {}, "tmessage": "In Progress"}, "voiceNote": "Please close door 2"}', 'order_id': 'TM08202203260613063937349', 'timestamp': '2026-06-13T01:10:41.093355Z', 'server_status': 'OrderStatus'} (ID: 1781313041140-0)
[2026-06-13 06:40:41,484.484 INFO    ] {'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper boat Aam Panna 150ml', 'qty': 1}]}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202203260613063937349', 'server_status': 'OrderStatus'}
[2026-06-13 06:40:41,486.486 INFO    ] 200
[2026-06-13 06:40:41,487.487 INFO    ] {"data":{"server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Paper boat Aam Panna 150ml","qty":1}]},"rstatus":false,"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"status":"false","SectionMain":{"Header":"Door Open"},"error":{"code":20001,"umessage":"In Progress","data":[],"tmessage":"In Progress"},"voiceNote":"Please close door 2"},"order_id":"TM08202203260613063937349","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:40:41,489.489 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613063937349', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Paper boat Aam Panna 150ml'}]}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus'}}
[2026-06-13 06:40:41,491.491 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Paper boat Aam Panna 150ml', 'qty': 1}]}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2'}
[2026-06-13 06:40:44,566.566 INFO    ] 200
[2026-06-13 06:40:44,569.569 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:40:44,573.573 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 06:40:44,576.576 INFO    ] 2026-06-13 06:40:44
[2026-06-13 06:40:44,579.579 INFO    ] Order Completed 
[2026-06-13 06:40:44,582.582 INFO    ] Order Completed 
[2026-06-13 06:40:44,585.585 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 06:40:44,588.588 INFO    ] 2026-06-13 06:40:44
[2026-06-13 06:40:44,591.591 INFO    ] playing audio file
[2026-06-13 06:40:44,611.611 INFO    ] 2026-06-13 06:40:44
[2026-06-13 06:40:44,614.614 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 06:40:44,618.618 INFO    ] 2026-06-13 06:40:44
[2026-06-13 06:40:46,358.358 INFO    ] 200
[2026-06-13 06:40:46,361.361 INFO    ] {"res": "True", "orderId": "TM08202203260613063937349", "skus": [{"image_url": "https://images.tinymart.in/product/186078-2883.png", "skuid": "186078", "door_id": "", "tray_id": "32", "name": "Paper boat Aam Panna 150ml per peice", "unit_price": "25", "mrp": "25", "qty": 1, "sku_total": 25.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 25.0}
[2026-06-13 06:40:46,364.364 INFO    ] {'res': 'True', 'anomaly': 0, 'rstatus': True, 'skus': [{'qty': 1, 'door_id': '', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'skuid': '186078', 'name': 'Paper boat Aam Panna 150ml per peice', 'sku_total': 25.0, 'unit_price': '25', 'mrp': '25'}], 'total_amount': 25.0, 'orderId': 'TM08202203260613063937349', 'logic': 'WBL'}
[2026-06-13 06:40:46,367.367 INFO    ] {'res': 'True', 'anomaly': 0, 'rstatus': True, 'skus': [{'qty': 1, 'door_id': '', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'skuid': '186078', 'name': 'Paper boat Aam Panna 150ml per peice', 'sku_total': 25.0, 'unit_price': '25', 'mrp': '25'}], 'total_amount': 25.0, 'orderId': 'TM08202203260613063937349', 'logic': 'WBL'}
[2026-06-13 06:40:46,370.370 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,373.373 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,376.376 INFO    ] 25
[2026-06-13 06:40:46,379.379 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,382.382 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,385.385 INFO    ]  Your Bill Amount is 25
[2026-06-13 06:40:46,387.387 INFO    ]  Your Bill Amount is 25
[2026-06-13 06:40:46,390.390 INFO    ] da20fb15704d31a40267abf7bb69dedc
[2026-06-13 06:40:46,393.393 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,396.396 INFO    ] playing audio file
[2026-06-13 06:40:46,413.413 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,416.416 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:46,421.421 INFO    ] publish_status: order_id=TM08202203260613063937349
[2026-06-13 06:40:46,424.424 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613063937349
[2026-06-13 06:40:46,506.506 INFO    ] [publish_status] Message added to stream with ID: 1781313046475-0
[2026-06-13 06:40:46,509.509 INFO    ] Published to order:TM08202203260613063937349: {'server_response': '{"res": "True", "anomaly": 0, "rstatus": true, "skus": [{"qty": 1, "door_id": "", "tray_id": "32", "image_url": "https://images.tinymart.in/product/186078-2883.png", "skuid": "186078", "name": "Paper boat Aam Panna 150ml per peice", "sku_total": 25.0, "unit_price": "25", "mrp": "25"}], "total_amount": 25.0, "orderId": "TM08202203260613063937349", "logic": "WBL"}', 'order_id': 'TM08202203260613063937349', 'timestamp': '2026-06-13T01:10:46.418716Z', 'server_status': 'invoiceOrder'} (ID: 1781313046475-0)
[2026-06-13 06:40:46,845.845 INFO    ] {'server_response': {'res': 'True', 'anomaly': 0, 'rstatus': True, 'skus': [{'qty': 1, 'door_id': '', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'skuid': '186078', 'name': 'Paper boat Aam Panna 150ml per peice', 'sku_total': 25.0, 'unit_price': '25', 'mrp': '25'}], 'total_amount': 25.0, 'orderId': 'TM08202203260613063937349', 'logic': 'WBL'}, 'order_id': 'TM08202203260613063937349', 'server_status': 'invoiceOrder'}
[2026-06-13 06:40:46,847.847 INFO    ] 200
[2026-06-13 06:40:46,848.848 INFO    ] {"data":{"server_response":{"res":"true","anomaly":0,"rstatus":true,"skus":[{"qty":1,"door_id":"","tray_id":"32","image_url":"https:\/\/images.tinymart.in\/product\/186078-2883.png","skuid":"186078","name":"Paper boat Aam Panna 150ml per peice","sku_total":25,"unit_price":"25","mrp":"25"}],"total_amount":25,"orderId":"TM08202203260613063937349","logic":"WBL"},"order_id":"TM08202203260613063937349","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:40:46,850.850 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613063937349', 'server_response': {'res': 'true', 'rstatus': True, 'anomaly': 0, 'total_amount': 25, 'orderId': 'TM08202203260613063937349', 'logic': 'WBL', 'skus': [{'qty': 1, 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'name': 'Paper boat Aam Panna 150ml per peice', 'skuid': '186078', 'door_id': '', 'sku_total': 25, 'unit_price': '25', 'mrp': '25'}]}, 'server_status': 'invoiceOrder'}}
[2026-06-13 06:40:46,851.851 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True}, 'data': {'order_id': 'TM08202203260613063937349', 'server_response': {'res': 'true', 'rstatus': True, 'anomaly': 0, 'total_amount': 25, 'orderId': 'TM08202203260613063937349', 'logic': 'WBL', 'skus': [{'qty': 1, 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/186078-2883.png', 'name': 'Paper boat Aam Panna 150ml per peice', 'skuid': '186078', 'door_id': '', 'sku_total': 25, 'unit_price': '25', 'mrp': '25'}]}, 'server_status': 'invoiceOrder'}}
[2026-06-13 06:40:46,852.852 INFO    ] 2026-06-13 06:40:46
[2026-06-13 06:40:48,506.506 INFO    ] 200
[2026-06-13 06:40:48,509.509 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349", "TM08202203260613063937349"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 06:40:48,512.512 INFO    ] 2026-06-13 06:40:48
[2026-06-13 06:40:48,650.650 INFO    ] 200
[2026-06-13 06:40:48,653.653 INFO    ] True
[2026-06-13 06:40:48,656.656 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613063937349
[2026-06-13 06:40:48,659.659 INFO    ] start order file deleted
[2026-06-13 06:40:48,663.663 INFO    ] Checking for system updates...
[2026-06-13 06:40:48,709.709 INFO    ] 200
[2026-06-13 06:40:48,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:48,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:48,780.780 INFO    ] No update needed
[2026-06-13 06:40:48,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 06:40:48,823.823 INFO    ] 200
[2026-06-13 06:40:48,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:40:48,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:40:48,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:40:48,942.942 INFO    ] No camera update needed
[2026-06-13 06:40:48,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:40:48,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:40:48,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:40:48,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:40:51,002.002 INFO    ] ================================================
[2026-06-13 06:40:51,071.071 INFO    ] Launching Daemon at Sat Jun 13 06:40:51 IST 2026
[2026-06-13 06:40:51,083.083 INFO    ] ================================================
[2026-06-13 06:40:51,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:40:51
[2026-06-13 06:40:51,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:40:51,868.868 INFO    ] Initializing speech engine...
[2026-06-13 06:40:51,884.884 INFO    ] 2026-06-13 06:40:51
[2026-06-13 06:40:52,089.089 INFO    ] 2026-06-13 06:40:52
[2026-06-13 06:40:52,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:40:52,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:40:52,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:40:52,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:40:52,497.497 INFO    ] time= 13/06/2026 06:40:52
[2026-06-13 06:40:52,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:40:52,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:40:52,600.600 INFO    ] No existing commands found in stream
[2026-06-13 06:40:57,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:40:57,614.614 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 06:41:01,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:41:01,637.637 INFO    ] Checking for system updates...
[2026-06-13 06:41:01,695.695 INFO    ] 200
[2026-06-13 06:41:01,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:01,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:41:01,760.760 INFO    ] No update needed
[2026-06-13 06:41:01,762.762 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:01,786.786 INFO    ] 200
[2026-06-13 06:41:01,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:01,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:01,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:41:01,953.953 INFO    ] No camera update needed
[2026-06-13 06:41:01,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:01,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:01,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:01,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:04,007.007 INFO    ] ================================================
[2026-06-13 06:41:04,023.023 INFO    ] Launching Daemon at Sat Jun 13 06:41:04 IST 2026
[2026-06-13 06:41:04,034.034 INFO    ] ================================================
[2026-06-13 06:41:04,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:04
[2026-06-13 06:41:04,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:04,813.813 INFO    ] Initializing speech engine...
[2026-06-13 06:41:04,818.818 INFO    ] 2026-06-13 06:41:04
[2026-06-13 06:41:05,049.049 INFO    ] 2026-06-13 06:41:05
[2026-06-13 06:41:05,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:05,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:05,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:05,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:05,439.439 INFO    ] time= 13/06/2026 06:41:05
[2026-06-13 06:41:05,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:05,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:05,614.614 INFO    ] No existing commands found in stream
[2026-06-13 06:41:10,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:41:10,643.643 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 06:41:14,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:41:14,666.666 INFO    ] Checking for system updates...
[2026-06-13 06:41:14,688.688 INFO    ] 200
[2026-06-13 06:41:14,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:14,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:14,721.721 INFO    ] No update needed
[2026-06-13 06:41:14,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:14,742.742 INFO    ] 200
[2026-06-13 06:41:14,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:14,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:14,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:14,816.816 INFO    ] No camera update needed
[2026-06-13 06:41:14,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:14,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:14,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:14,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:16,866.866 INFO    ] ================================================
[2026-06-13 06:41:16,883.883 INFO    ] Launching Daemon at Sat Jun 13 06:41:16 IST 2026
[2026-06-13 06:41:16,894.894 INFO    ] ================================================
[2026-06-13 06:41:17,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:17
[2026-06-13 06:41:17,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:17,679.679 INFO    ] Initializing speech engine...
[2026-06-13 06:41:17,683.683 INFO    ] 2026-06-13 06:41:17
[2026-06-13 06:41:17,904.904 INFO    ] 2026-06-13 06:41:17
[2026-06-13 06:41:17,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:18,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:18,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:18,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:18,336.336 INFO    ] time= 13/06/2026 06:41:18
[2026-06-13 06:41:18,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:18,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:18,473.473 INFO    ] No existing commands found in stream
[2026-06-13 06:41:23,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:41:23,486.486 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 06:41:23,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:41:23,936.936 INFO    ] Checking for system updates...
[2026-06-13 06:41:23,957.957 INFO    ] 200
[2026-06-13 06:41:23,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:23,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:23,990.990 INFO    ] No update needed
[2026-06-13 06:41:23,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:24,011.011 INFO    ] 200
[2026-06-13 06:41:24,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:24,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:24,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:24,076.076 INFO    ] No camera update needed
[2026-06-13 06:41:24,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:24,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:24,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:24,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:26,124.124 INFO    ] ================================================
[2026-06-13 06:41:26,140.140 INFO    ] Launching Daemon at Sat Jun 13 06:41:26 IST 2026
[2026-06-13 06:41:26,151.151 INFO    ] ================================================
[2026-06-13 06:41:26,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:26
[2026-06-13 06:41:26,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:26,958.958 INFO    ] Initializing speech engine...
[2026-06-13 06:41:26,968.968 INFO    ] 2026-06-13 06:41:26
[2026-06-13 06:41:27,184.184 INFO    ] 2026-06-13 06:41:27
[2026-06-13 06:41:27,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:27,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:27,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:27,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:27,538.538 INFO    ] time= 13/06/2026 06:41:27
[2026-06-13 06:41:27,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:27,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:27,740.740 INFO    ] No existing commands found in stream
[2026-06-13 06:41:32,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:41:32,753.753 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 06:41:33,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:41:33,365.365 INFO    ] Checking for system updates...
[2026-06-13 06:41:33,386.386 INFO    ] 200
[2026-06-13 06:41:33,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:33,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:33,419.419 INFO    ] No update needed
[2026-06-13 06:41:33,421.421 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:33,441.441 INFO    ] 200
[2026-06-13 06:41:33,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:33,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:33,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:33,513.513 INFO    ] No camera update needed
[2026-06-13 06:41:33,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:33,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:33,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:33,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:35,560.560 INFO    ] ================================================
[2026-06-13 06:41:35,576.576 INFO    ] Launching Daemon at Sat Jun 13 06:41:35 IST 2026
[2026-06-13 06:41:35,587.587 INFO    ] ================================================
[2026-06-13 06:41:35,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:35
[2026-06-13 06:41:36,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:36,354.354 INFO    ] Initializing speech engine...
[2026-06-13 06:41:36,359.359 INFO    ] 2026-06-13 06:41:36
[2026-06-13 06:41:36,589.589 INFO    ] 2026-06-13 06:41:36
[2026-06-13 06:41:36,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:36,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:36,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:36,988.988 INFO    ] time= 13/06/2026 06:41:36
[2026-06-13 06:41:37,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:37,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:37,138.138 INFO    ] No existing commands found in stream
[2026-06-13 06:41:42,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:41:42,152.152 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 06:41:44,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:41:44,214.214 INFO    ] Checking for system updates...
[2026-06-13 06:41:44,235.235 INFO    ] 200
[2026-06-13 06:41:44,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:44,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:41:44,270.270 INFO    ] No update needed
[2026-06-13 06:41:44,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:44,290.290 INFO    ] 200
[2026-06-13 06:41:44,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:44,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:44,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:41:44,364.364 INFO    ] No camera update needed
[2026-06-13 06:41:44,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:44,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:44,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:44,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:46,411.411 INFO    ] ================================================
[2026-06-13 06:41:46,427.427 INFO    ] Launching Daemon at Sat Jun 13 06:41:46 IST 2026
[2026-06-13 06:41:46,438.438 INFO    ] ================================================
[2026-06-13 06:41:46,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:46
[2026-06-13 06:41:47,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:47,207.207 INFO    ] Initializing speech engine...
[2026-06-13 06:41:47,212.212 INFO    ] 2026-06-13 06:41:47
[2026-06-13 06:41:47,432.432 INFO    ] 2026-06-13 06:41:47
[2026-06-13 06:41:47,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:47,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:47,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:47,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:47,855.855 INFO    ] time= 13/06/2026 06:41:47
[2026-06-13 06:41:47,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:47,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:47,964.964 INFO    ] No existing commands found in stream
[2026-06-13 06:41:52,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:41:52,977.977 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 06:41:54,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:41:54,110.110 INFO    ] Checking for system updates...
[2026-06-13 06:41:54,131.131 INFO    ] 200
[2026-06-13 06:41:54,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:54,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:54,168.168 INFO    ] No update needed
[2026-06-13 06:41:54,170.170 INFO    ] Checking for camera pi updates...
[2026-06-13 06:41:54,189.189 INFO    ] 200
[2026-06-13 06:41:54,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:41:54,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:41:54,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:41:54,258.258 INFO    ] No camera update needed
[2026-06-13 06:41:54,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:41:54,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:41:54,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:41:54,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:41:56,307.307 INFO    ] ================================================
[2026-06-13 06:41:56,323.323 INFO    ] Launching Daemon at Sat Jun 13 06:41:56 IST 2026
[2026-06-13 06:41:56,334.334 INFO    ] ================================================
[2026-06-13 06:41:56,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:41:56
[2026-06-13 06:41:57,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:41:57,155.155 INFO    ] Initializing speech engine...
[2026-06-13 06:41:57,161.161 INFO    ] 2026-06-13 06:41:57
[2026-06-13 06:41:57,365.365 INFO    ] 2026-06-13 06:41:57
[2026-06-13 06:41:57,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:41:57,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:41:57,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:41:57,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:41:57,773.773 INFO    ] time= 13/06/2026 06:41:57
[2026-06-13 06:41:57,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:41:57,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:41:57,883.883 INFO    ] No existing commands found in stream
[2026-06-13 06:42:02,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:02,894.894 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 06:42:04,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:42:04,763.763 INFO    ] Checking for system updates...
[2026-06-13 06:42:04,799.799 INFO    ] 200
[2026-06-13 06:42:04,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:04,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:42:04,864.864 INFO    ] No update needed
[2026-06-13 06:42:04,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:04,900.900 INFO    ] 200
[2026-06-13 06:42:04,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:04,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:04,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:42:04,982.982 INFO    ] No camera update needed
[2026-06-13 06:42:04,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:04,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:04,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:04,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:07,031.031 INFO    ] ================================================
[2026-06-13 06:42:07,046.046 INFO    ] Launching Daemon at Sat Jun 13 06:42:07 IST 2026
[2026-06-13 06:42:07,058.058 INFO    ] ================================================
[2026-06-13 06:42:07,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:07
[2026-06-13 06:42:07,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:07,908.908 INFO    ] Initializing speech engine...
[2026-06-13 06:42:07,914.914 INFO    ] 2026-06-13 06:42:07
[2026-06-13 06:42:08,122.122 INFO    ] 2026-06-13 06:42:08
[2026-06-13 06:42:08,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:08,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:08,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:08,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:08,377.377 INFO    ] time= 13/06/2026 06:42:08
[2026-06-13 06:42:08,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:08,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:08,567.567 INFO    ] No existing commands found in stream
[2026-06-13 06:42:13,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:13,589.589 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 06:42:14,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:42:14,066.066 INFO    ] Checking for system updates...
[2026-06-13 06:42:14,087.087 INFO    ] 200
[2026-06-13 06:42:14,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:14,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:14,123.123 INFO    ] No update needed
[2026-06-13 06:42:14,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:14,144.144 INFO    ] 200
[2026-06-13 06:42:14,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:14,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:14,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:14,208.208 INFO    ] No camera update needed
[2026-06-13 06:42:14,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:14,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:14,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:14,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:16,259.259 INFO    ] ================================================
[2026-06-13 06:42:16,274.274 INFO    ] Launching Daemon at Sat Jun 13 06:42:16 IST 2026
[2026-06-13 06:42:16,285.285 INFO    ] ================================================
[2026-06-13 06:42:16,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:16
[2026-06-13 06:42:16,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:17,070.070 INFO    ] Initializing speech engine...
[2026-06-13 06:42:17,080.080 INFO    ] 2026-06-13 06:42:17
[2026-06-13 06:42:17,283.283 INFO    ] 2026-06-13 06:42:17
[2026-06-13 06:42:17,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:17,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:17,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:17,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:17,682.682 INFO    ] time= 13/06/2026 06:42:17
[2026-06-13 06:42:17,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:17,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:17,797.797 INFO    ] No existing commands found in stream
[2026-06-13 06:42:22,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:22,809.809 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 06:42:24,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:42:24,894.894 INFO    ] Checking for system updates...
[2026-06-13 06:42:24,916.916 INFO    ] 200
[2026-06-13 06:42:24,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:24,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:24,952.952 INFO    ] No update needed
[2026-06-13 06:42:24,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:24,973.973 INFO    ] 200
[2026-06-13 06:42:24,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:24,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:25,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:25,040.040 INFO    ] No camera update needed
[2026-06-13 06:42:25,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:25,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:25,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:25,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:27,082.082 INFO    ] ================================================
[2026-06-13 06:42:27,097.097 INFO    ] Launching Daemon at Sat Jun 13 06:42:27 IST 2026
[2026-06-13 06:42:27,108.108 INFO    ] ================================================
[2026-06-13 06:42:27,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:27
[2026-06-13 06:42:27,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:27,946.946 INFO    ] Initializing speech engine...
[2026-06-13 06:42:27,952.952 INFO    ] 2026-06-13 06:42:27
[2026-06-13 06:42:28,156.156 INFO    ] 2026-06-13 06:42:28
[2026-06-13 06:42:28,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:28,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:28,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:28,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:28,570.570 INFO    ] time= 13/06/2026 06:42:28
[2026-06-13 06:42:28,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:28,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:28,669.669 INFO    ] No existing commands found in stream
[2026-06-13 06:42:33,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:33,682.682 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 06:42:35,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:42:35,127.127 INFO    ] Checking for system updates...
[2026-06-13 06:42:35,149.149 INFO    ] 200
[2026-06-13 06:42:35,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:35,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:35,182.182 INFO    ] No update needed
[2026-06-13 06:42:35,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:35,206.206 INFO    ] 200
[2026-06-13 06:42:35,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:35,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:35,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:35,267.267 INFO    ] No camera update needed
[2026-06-13 06:42:35,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:35,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:35,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:35,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:37,309.309 INFO    ] ================================================
[2026-06-13 06:42:37,324.324 INFO    ] Launching Daemon at Sat Jun 13 06:42:37 IST 2026
[2026-06-13 06:42:37,335.335 INFO    ] ================================================
[2026-06-13 06:42:37,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:37
[2026-06-13 06:42:38,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:38,171.171 INFO    ] Initializing speech engine...
[2026-06-13 06:42:38,177.177 INFO    ] 2026-06-13 06:42:38
[2026-06-13 06:42:38,387.387 INFO    ] 2026-06-13 06:42:38
[2026-06-13 06:42:38,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:38,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:38,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:38,797.797 INFO    ] time= 13/06/2026 06:42:38
[2026-06-13 06:42:38,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:38,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:38,914.914 INFO    ] No existing commands found in stream
[2026-06-13 06:42:43,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:43,928.928 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 06:42:44,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:42:44,957.957 INFO    ] Checking for system updates...
[2026-06-13 06:42:44,978.978 INFO    ] 200
[2026-06-13 06:42:44,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:45,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:45,011.011 INFO    ] No update needed
[2026-06-13 06:42:45,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:45,032.032 INFO    ] 200
[2026-06-13 06:42:45,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:45,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:45,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:42:45,094.094 INFO    ] No camera update needed
[2026-06-13 06:42:45,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:45,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:45,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:45,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:47,142.142 INFO    ] ================================================
[2026-06-13 06:42:47,157.157 INFO    ] Launching Daemon at Sat Jun 13 06:42:47 IST 2026
[2026-06-13 06:42:47,168.168 INFO    ] ================================================
[2026-06-13 06:42:47,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:47
[2026-06-13 06:42:47,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:47,961.961 INFO    ] Initializing speech engine...
[2026-06-13 06:42:47,965.965 INFO    ] 2026-06-13 06:42:47
[2026-06-13 06:42:48,193.193 INFO    ] 2026-06-13 06:42:48
[2026-06-13 06:42:48,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:48,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:48,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:48,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:48,582.582 INFO    ] time= 13/06/2026 06:42:48
[2026-06-13 06:42:48,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:48,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:48,742.742 INFO    ] No existing commands found in stream
[2026-06-13 06:42:53,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:42:53,756.756 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 06:42:55,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:42:55,106.106 INFO    ] Checking for system updates...
[2026-06-13 06:42:55,127.127 INFO    ] 200
[2026-06-13 06:42:55,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:55,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:42:55,162.162 INFO    ] No update needed
[2026-06-13 06:42:55,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 06:42:55,182.182 INFO    ] 200
[2026-06-13 06:42:55,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:42:55,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:42:55,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:42:55,253.253 INFO    ] No camera update needed
[2026-06-13 06:42:55,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:42:55,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:42:55,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:42:55,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:42:57,300.300 INFO    ] ================================================
[2026-06-13 06:42:57,315.315 INFO    ] Launching Daemon at Sat Jun 13 06:42:57 IST 2026
[2026-06-13 06:42:57,325.325 INFO    ] ================================================
[2026-06-13 06:42:57,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:42:57
[2026-06-13 06:42:58,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:42:58,885.885 INFO    ] Initializing speech engine...
[2026-06-13 06:42:58,895.895 INFO    ] 2026-06-13 06:42:58
[2026-06-13 06:42:59,164.164 INFO    ] 2026-06-13 06:42:59
[2026-06-13 06:42:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:42:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:42:59,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:42:59,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:42:59,643.643 INFO    ] time= 13/06/2026 06:42:59
[2026-06-13 06:42:59,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:42:59,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:42:59,880.880 INFO    ] No existing commands found in stream
[2026-06-13 06:43:04,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:04,900.900 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 06:43:05,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:43:05,317.317 INFO    ] Checking for system updates...
[2026-06-13 06:43:05,338.338 INFO    ] 200
[2026-06-13 06:43:05,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:05,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:05,377.377 INFO    ] No update needed
[2026-06-13 06:43:05,378.378 INFO    ] Checking for camera pi updates...
[2026-06-13 06:43:05,401.401 INFO    ] 200
[2026-06-13 06:43:05,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:05,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:43:05,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:05,569.569 INFO    ] No camera update needed
[2026-06-13 06:43:05,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:43:05,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:43:05,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:43:05,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:43:07,617.617 INFO    ] ================================================
[2026-06-13 06:43:07,632.632 INFO    ] Launching Daemon at Sat Jun 13 06:43:07 IST 2026
[2026-06-13 06:43:07,643.643 INFO    ] ================================================
[2026-06-13 06:43:07,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:43:07
[2026-06-13 06:43:08,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:43:08,479.479 INFO    ] Initializing speech engine...
[2026-06-13 06:43:08,483.483 INFO    ] 2026-06-13 06:43:08
[2026-06-13 06:43:08,684.684 INFO    ] 2026-06-13 06:43:08
[2026-06-13 06:43:08,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:43:08,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:43:08,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:43:09,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:43:09,179.179 INFO    ] time= 13/06/2026 06:43:09
[2026-06-13 06:43:09,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:43:09,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:43:09,340.340 INFO    ] No existing commands found in stream
[2026-06-13 06:43:14,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:14,362.362 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 06:43:17,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:43:17,991.991 INFO    ] Checking for system updates...
[2026-06-13 06:43:18,012.012 INFO    ] 200
[2026-06-13 06:43:18,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:18,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:18,045.045 INFO    ] No update needed
[2026-06-13 06:43:18,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 06:43:18,066.066 INFO    ] 200
[2026-06-13 06:43:18,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:18,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:43:18,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:18,130.130 INFO    ] No camera update needed
[2026-06-13 06:43:18,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:43:18,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:43:18,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:43:18,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:43:20,179.179 INFO    ] ================================================
[2026-06-13 06:43:20,194.194 INFO    ] Launching Daemon at Sat Jun 13 06:43:20 IST 2026
[2026-06-13 06:43:20,204.204 INFO    ] ================================================
[2026-06-13 06:43:20,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:43:20
[2026-06-13 06:43:20,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:43:21,008.008 INFO    ] Initializing speech engine...
[2026-06-13 06:43:21,013.013 INFO    ] 2026-06-13 06:43:21
[2026-06-13 06:43:21,217.217 INFO    ] 2026-06-13 06:43:21
[2026-06-13 06:43:21,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:43:21,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:43:21,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:43:21,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:43:21,625.625 INFO    ] time= 13/06/2026 06:43:21
[2026-06-13 06:43:21,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:43:21,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:43:21,753.753 INFO    ] No existing commands found in stream
[2026-06-13 06:43:26,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:26,770.770 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 06:43:29,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:43:29,865.865 INFO    ] Checking for system updates...
[2026-06-13 06:43:29,887.887 INFO    ] 200
[2026-06-13 06:43:29,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:29,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:43:29,920.920 INFO    ] No update needed
[2026-06-13 06:43:29,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 06:43:29,941.941 INFO    ] 200
[2026-06-13 06:43:29,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:29,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:43:30,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:43:30,002.002 INFO    ] No camera update needed
[2026-06-13 06:43:30,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:43:30,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:43:30,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:43:30,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:43:32,043.043 INFO    ] ================================================
[2026-06-13 06:43:32,052.052 INFO    ] Launching Daemon at Sat Jun 13 06:43:32 IST 2026
[2026-06-13 06:43:32,059.059 INFO    ] ================================================
[2026-06-13 06:43:32,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:43:32
[2026-06-13 06:43:32,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:43:32,831.831 INFO    ] Initializing speech engine...
[2026-06-13 06:43:32,837.837 INFO    ] 2026-06-13 06:43:32
[2026-06-13 06:43:33,040.040 INFO    ] 2026-06-13 06:43:33
[2026-06-13 06:43:33,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:43:33,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:43:33,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:43:33,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:43:33,440.440 INFO    ] time= 13/06/2026 06:43:33
[2026-06-13 06:43:33,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:43:33,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:43:33,561.561 INFO    ] No existing commands found in stream
[2026-06-13 06:43:38,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:38,574.574 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 06:43:39,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:43:39,242.242 INFO    ] Checking for system updates...
[2026-06-13 06:43:39,263.263 INFO    ] 200
[2026-06-13 06:43:39,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:39,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:43:39,296.296 INFO    ] No update needed
[2026-06-13 06:43:39,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 06:43:39,318.318 INFO    ] 200
[2026-06-13 06:43:39,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:39,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:43:39,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:43:39,397.397 INFO    ] No camera update needed
[2026-06-13 06:43:39,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:43:39,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:43:39,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:43:39,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:43:41,443.443 INFO    ] ================================================
[2026-06-13 06:43:41,457.457 INFO    ] Launching Daemon at Sat Jun 13 06:43:41 IST 2026
[2026-06-13 06:43:41,468.468 INFO    ] ================================================
[2026-06-13 06:43:41,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:43:41
[2026-06-13 06:43:42,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:43:42,247.247 INFO    ] Initializing speech engine...
[2026-06-13 06:43:42,252.252 INFO    ] 2026-06-13 06:43:42
[2026-06-13 06:43:42,501.501 INFO    ] 2026-06-13 06:43:42
[2026-06-13 06:43:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:43:42,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:43:42,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:43:42,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:43:42,932.932 INFO    ] time= 13/06/2026 06:43:42
[2026-06-13 06:43:42,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:43:42,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:43:43,066.066 INFO    ] No existing commands found in stream
[2026-06-13 06:43:48,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:48,096.096 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 06:43:49,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:43:49,246.246 INFO    ] Checking for system updates...
[2026-06-13 06:43:49,266.266 INFO    ] 200
[2026-06-13 06:43:49,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:49,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:49,299.299 INFO    ] No update needed
[2026-06-13 06:43:49,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 06:43:49,322.322 INFO    ] 200
[2026-06-13 06:43:49,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:43:49,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:43:49,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:43:49,390.390 INFO    ] No camera update needed
[2026-06-13 06:43:49,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:43:49,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:43:49,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:43:49,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:43:51,438.438 INFO    ] ================================================
[2026-06-13 06:43:51,453.453 INFO    ] Launching Daemon at Sat Jun 13 06:43:51 IST 2026
[2026-06-13 06:43:51,463.463 INFO    ] ================================================
[2026-06-13 06:43:51,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:43:51
[2026-06-13 06:43:52,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:43:52,309.309 INFO    ] Initializing speech engine...
[2026-06-13 06:43:52,314.314 INFO    ] 2026-06-13 06:43:52
[2026-06-13 06:43:52,522.522 INFO    ] 2026-06-13 06:43:52
[2026-06-13 06:43:52,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:43:52,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:43:52,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:43:52,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:43:52,923.923 INFO    ] time= 13/06/2026 06:43:52
[2026-06-13 06:43:52,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:43:52,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:43:53,039.039 INFO    ] No existing commands found in stream
[2026-06-13 06:43:58,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:43:58,052.052 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 06:44:02,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:44:02,214.214 INFO    ] Checking for system updates...
[2026-06-13 06:44:02,241.241 INFO    ] 200
[2026-06-13 06:44:02,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:02,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:02,282.282 INFO    ] No update needed
[2026-06-13 06:44:02,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 06:44:02,309.309 INFO    ] 200
[2026-06-13 06:44:02,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:02,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:44:02,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:02,375.375 INFO    ] No camera update needed
[2026-06-13 06:44:02,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:44:02,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:44:02,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:44:02,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:44:04,428.428 INFO    ] ================================================
[2026-06-13 06:44:04,444.444 INFO    ] Launching Daemon at Sat Jun 13 06:44:04 IST 2026
[2026-06-13 06:44:04,454.454 INFO    ] ================================================
[2026-06-13 06:44:04,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:44:04
[2026-06-13 06:44:05,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:44:05,304.304 INFO    ] Initializing speech engine...
[2026-06-13 06:44:05,308.308 INFO    ] 2026-06-13 06:44:05
[2026-06-13 06:44:05,515.515 INFO    ] 2026-06-13 06:44:05
[2026-06-13 06:44:05,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:44:05,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:44:05,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:44:05,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:44:05,918.918 INFO    ] time= 13/06/2026 06:44:05
[2026-06-13 06:44:05,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:44:05,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:44:06,071.071 INFO    ] No existing commands found in stream
[2026-06-13 06:44:11,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:44:11,084.084 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 06:44:12,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:44:12,410.410 INFO    ] Checking for system updates...
[2026-06-13 06:44:12,432.432 INFO    ] 200
[2026-06-13 06:44:12,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:12,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:44:12,467.467 INFO    ] No update needed
[2026-06-13 06:44:12,468.468 INFO    ] Checking for camera pi updates...
[2026-06-13 06:44:12,489.489 INFO    ] 200
[2026-06-13 06:44:12,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:12,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:44:12,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:44:12,555.555 INFO    ] No camera update needed
[2026-06-13 06:44:12,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:44:12,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:44:12,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:44:12,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:44:14,604.604 INFO    ] ================================================
[2026-06-13 06:44:14,619.619 INFO    ] Launching Daemon at Sat Jun 13 06:44:14 IST 2026
[2026-06-13 06:44:14,630.630 INFO    ] ================================================
[2026-06-13 06:44:15,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:44:15
[2026-06-13 06:44:15,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:44:15,461.461 INFO    ] Initializing speech engine...
[2026-06-13 06:44:15,466.466 INFO    ] 2026-06-13 06:44:15
[2026-06-13 06:44:15,681.681 INFO    ] 2026-06-13 06:44:15
[2026-06-13 06:44:15,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:44:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:44:15,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:44:16,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:44:16,093.093 INFO    ] time= 13/06/2026 06:44:16
[2026-06-13 06:44:16,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:44:16,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:44:16,312.312 INFO    ] No existing commands found in stream
[2026-06-13 06:44:21,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:44:21,338.338 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 06:44:25,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:44:25,298.298 INFO    ] Checking for system updates...
[2026-06-13 06:44:25,319.319 INFO    ] 200
[2026-06-13 06:44:25,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:25,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:25,352.352 INFO    ] No update needed
[2026-06-13 06:44:25,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 06:44:25,374.374 INFO    ] 200
[2026-06-13 06:44:25,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:25,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:44:25,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:25,436.436 INFO    ] No camera update needed
[2026-06-13 06:44:25,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:44:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:44:25,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:44:25,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:44:27,484.484 INFO    ] ================================================
[2026-06-13 06:44:27,500.500 INFO    ] Launching Daemon at Sat Jun 13 06:44:27 IST 2026
[2026-06-13 06:44:27,510.510 INFO    ] ================================================
[2026-06-13 06:44:27,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:44:27
[2026-06-13 06:44:28,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:44:28,306.306 INFO    ] Initializing speech engine...
[2026-06-13 06:44:28,311.311 INFO    ] 2026-06-13 06:44:28
[2026-06-13 06:44:28,542.542 INFO    ] 2026-06-13 06:44:28
[2026-06-13 06:44:28,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:44:28,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:44:28,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:44:28,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:44:28,936.936 INFO    ] time= 13/06/2026 06:44:28
[2026-06-13 06:44:28,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:44:29,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:44:29,092.092 INFO    ] No existing commands found in stream
[2026-06-13 06:44:34,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:44:34,105.105 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 06:44:35,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:44:35,901.901 INFO    ] Checking for system updates...
[2026-06-13 06:44:35,922.922 INFO    ] 200
[2026-06-13 06:44:35,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:35,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:35,955.955 INFO    ] No update needed
[2026-06-13 06:44:35,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 06:44:35,979.979 INFO    ] 200
[2026-06-13 06:44:35,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:36,003.003 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:44:36,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:36,045.045 INFO    ] No camera update needed
[2026-06-13 06:44:36,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:44:36,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:44:36,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:44:36,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:44:38,093.093 INFO    ] ================================================
[2026-06-13 06:44:38,107.107 INFO    ] Launching Daemon at Sat Jun 13 06:44:38 IST 2026
[2026-06-13 06:44:38,118.118 INFO    ] ================================================
[2026-06-13 06:44:38,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:44:38
[2026-06-13 06:44:39,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:44:39,380.380 INFO    ] Initializing speech engine...
[2026-06-13 06:44:39,389.389 INFO    ] 2026-06-13 06:44:39
[2026-06-13 06:44:39,641.641 INFO    ] 2026-06-13 06:44:39
[2026-06-13 06:44:39,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:44:39,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:44:39,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:44:40,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:44:40,109.109 INFO    ] time= 13/06/2026 06:44:40
[2026-06-13 06:44:40,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:44:40,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:44:40,252.252 INFO    ] No existing commands found in stream
[2026-06-13 06:44:45,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:44:45,267.267 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 06:44:48,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:44:48,736.736 INFO    ] Checking for system updates...
[2026-06-13 06:44:48,758.758 INFO    ] 200
[2026-06-13 06:44:48,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:48,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:48,794.794 INFO    ] No update needed
[2026-06-13 06:44:48,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 06:44:48,815.815 INFO    ] 200
[2026-06-13 06:44:48,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:44:48,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:44:48,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:44:48,886.886 INFO    ] No camera update needed
[2026-06-13 06:44:48,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:44:48,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:44:48,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:44:48,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:44:50,937.937 INFO    ] ================================================
[2026-06-13 06:44:50,952.952 INFO    ] Launching Daemon at Sat Jun 13 06:44:50 IST 2026
[2026-06-13 06:44:50,963.963 INFO    ] ================================================
[2026-06-13 06:44:51,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:44:51
[2026-06-13 06:44:51,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:44:51,749.749 INFO    ] Initializing speech engine...
[2026-06-13 06:44:51,754.754 INFO    ] 2026-06-13 06:44:51
[2026-06-13 06:44:51,969.969 INFO    ] 2026-06-13 06:44:51
[2026-06-13 06:44:52,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:44:52,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:44:52,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:44:52,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:44:52,346.346 INFO    ] time= 13/06/2026 06:44:52
[2026-06-13 06:44:52,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:44:52,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:44:52,554.554 INFO    ] No existing commands found in stream
[2026-06-13 06:44:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:44:57,566.566 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 06:45:01,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:45:01,253.253 INFO    ] Checking for system updates...
[2026-06-13 06:45:01,275.275 INFO    ] 200
[2026-06-13 06:45:01,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:01,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:45:01,308.308 INFO    ] No update needed
[2026-06-13 06:45:01,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:01,331.331 INFO    ] 200
[2026-06-13 06:45:01,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:01,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:01,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:01,393.393 INFO    ] No camera update needed
[2026-06-13 06:45:01,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:01,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:01,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:01,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:45:03,434.434 INFO    ] ================================================
[2026-06-13 06:45:03,449.449 INFO    ] Launching Daemon at Sat Jun 13 06:45:03 IST 2026
[2026-06-13 06:45:03,460.460 INFO    ] ================================================
[2026-06-13 06:45:03,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:45:03
[2026-06-13 06:45:04,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:45:04,255.255 INFO    ] Initializing speech engine...
[2026-06-13 06:45:04,261.261 INFO    ] 2026-06-13 06:45:04
[2026-06-13 06:45:04,465.465 INFO    ] 2026-06-13 06:45:04
[2026-06-13 06:45:04,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:45:04,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:45:04,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:45:04,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:45:04,814.814 INFO    ] time= 13/06/2026 06:45:04
[2026-06-13 06:45:04,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:45:04,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:45:04,981.981 INFO    ] No existing commands found in stream
[2026-06-13 06:45:09,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:45:09,994.994 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 06:45:11,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:45:11,127.127 INFO    ] Checking for system updates...
[2026-06-13 06:45:11,148.148 INFO    ] 200
[2026-06-13 06:45:11,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:11,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:11,181.181 INFO    ] No update needed
[2026-06-13 06:45:11,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:11,206.206 INFO    ] 200
[2026-06-13 06:45:11,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:11,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:11,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:11,377.377 INFO    ] No camera update needed
[2026-06-13 06:45:11,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:11,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:11,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:11,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:45:13,427.427 INFO    ] ================================================
[2026-06-13 06:45:13,443.443 INFO    ] Launching Daemon at Sat Jun 13 06:45:13 IST 2026
[2026-06-13 06:45:13,453.453 INFO    ] ================================================
[2026-06-13 06:45:13,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:45:13
[2026-06-13 06:45:14,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:45:14,291.291 INFO    ] Initializing speech engine...
[2026-06-13 06:45:14,295.295 INFO    ] 2026-06-13 06:45:14
[2026-06-13 06:45:14,503.503 INFO    ] 2026-06-13 06:45:14
[2026-06-13 06:45:14,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:45:14,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:45:14,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:45:14,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:45:14,902.902 INFO    ] time= 13/06/2026 06:45:14
[2026-06-13 06:45:14,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:45:14,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:45:15,023.023 INFO    ] No existing commands found in stream
[2026-06-13 06:45:20,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:45:20,037.037 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 06:45:22,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:45:22,272.272 INFO    ] Checking for system updates...
[2026-06-13 06:45:22,294.294 INFO    ] 200
[2026-06-13 06:45:22,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:22,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:45:22,327.327 INFO    ] No update needed
[2026-06-13 06:45:22,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:22,349.349 INFO    ] 200
[2026-06-13 06:45:22,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:22,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:22,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:45:22,413.413 INFO    ] No camera update needed
[2026-06-13 06:45:22,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:22,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:22,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:22,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:45:24,459.459 INFO    ] ================================================
[2026-06-13 06:45:24,474.474 INFO    ] Launching Daemon at Sat Jun 13 06:45:24 IST 2026
[2026-06-13 06:45:24,485.485 INFO    ] ================================================
[2026-06-13 06:45:24,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:45:24
[2026-06-13 06:45:25,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:45:25,284.284 INFO    ] Initializing speech engine...
[2026-06-13 06:45:25,297.297 INFO    ] 2026-06-13 06:45:25
[2026-06-13 06:45:25,517.517 INFO    ] 2026-06-13 06:45:25
[2026-06-13 06:45:25,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:45:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:45:25,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:45:25,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:45:25,918.918 INFO    ] time= 13/06/2026 06:45:25
[2026-06-13 06:45:25,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:45:26,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:45:26,075.075 INFO    ] No existing commands found in stream
[2026-06-13 06:45:31,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:45:31,088.088 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 06:45:35,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:45:35,100.100 INFO    ] Checking for system updates...
[2026-06-13 06:45:35,124.124 INFO    ] 200
[2026-06-13 06:45:35,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:35,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:35,158.158 INFO    ] No update needed
[2026-06-13 06:45:35,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:35,179.179 INFO    ] 200
[2026-06-13 06:45:35,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:35,205.205 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:35,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:35,244.244 INFO    ] No camera update needed
[2026-06-13 06:45:35,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:35,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:35,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:35,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:45:37,292.292 INFO    ] ================================================
[2026-06-13 06:45:37,307.307 INFO    ] Launching Daemon at Sat Jun 13 06:45:37 IST 2026
[2026-06-13 06:45:37,318.318 INFO    ] ================================================
[2026-06-13 06:45:37,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:45:37
[2026-06-13 06:45:37,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:45:38,123.123 INFO    ] Initializing speech engine...
[2026-06-13 06:45:38,127.127 INFO    ] 2026-06-13 06:45:38
[2026-06-13 06:45:38,372.372 INFO    ] 2026-06-13 06:45:38
[2026-06-13 06:45:38,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:45:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:45:38,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:45:38,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:45:38,831.831 INFO    ] time= 13/06/2026 06:45:38
[2026-06-13 06:45:38,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:45:38,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:45:38,962.962 INFO    ] No existing commands found in stream
[2026-06-13 06:45:43,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:45:43,976.976 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 06:45:47,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:45:47,849.849 INFO    ] Checking for system updates...
[2026-06-13 06:45:47,871.871 INFO    ] 200
[2026-06-13 06:45:47,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:47,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:47,904.904 INFO    ] No update needed
[2026-06-13 06:45:47,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:47,925.925 INFO    ] 200
[2026-06-13 06:45:47,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:47,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:47,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:45:47,992.992 INFO    ] No camera update needed
[2026-06-13 06:45:47,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:47,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:47,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:48,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:45:50,034.034 INFO    ] ================================================
[2026-06-13 06:45:50,042.042 INFO    ] Launching Daemon at Sat Jun 13 06:45:50 IST 2026
[2026-06-13 06:45:50,048.048 INFO    ] ================================================
[2026-06-13 06:45:50,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:45:50
[2026-06-13 06:45:50,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:45:50,806.806 INFO    ] Initializing speech engine...
[2026-06-13 06:45:50,816.816 INFO    ] 2026-06-13 06:45:50
[2026-06-13 06:45:51,033.033 INFO    ] 2026-06-13 06:45:51
[2026-06-13 06:45:51,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:45:51,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:45:51,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:45:51,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:45:51,465.465 INFO    ] time= 13/06/2026 06:45:51
[2026-06-13 06:45:51,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:45:51,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:45:51,593.593 INFO    ] No existing commands found in stream
[2026-06-13 06:45:56,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:45:56,606.606 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 06:45:58,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:45:58,455.455 INFO    ] Checking for system updates...
[2026-06-13 06:45:58,475.475 INFO    ] 200
[2026-06-13 06:45:58,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:58,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:45:58,508.508 INFO    ] No update needed
[2026-06-13 06:45:58,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 06:45:58,530.530 INFO    ] 200
[2026-06-13 06:45:58,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:45:58,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:45:58,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:45:58,597.597 INFO    ] No camera update needed
[2026-06-13 06:45:58,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:45:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:45:58,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:45:58,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:00,645.645 INFO    ] ================================================
[2026-06-13 06:46:00,661.661 INFO    ] Launching Daemon at Sat Jun 13 06:46:00 IST 2026
[2026-06-13 06:46:00,672.672 INFO    ] ================================================
[2026-06-13 06:46:00,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:00
[2026-06-13 06:46:01,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:01,607.607 INFO    ] Initializing speech engine...
[2026-06-13 06:46:01,620.620 INFO    ] 2026-06-13 06:46:01
[2026-06-13 06:46:01,841.841 INFO    ] 2026-06-13 06:46:01
[2026-06-13 06:46:01,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:02,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:02,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:02,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:02,306.306 INFO    ] time= 13/06/2026 06:46:02
[2026-06-13 06:46:02,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:02,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:02,478.478 INFO    ] No existing commands found in stream
[2026-06-13 06:46:07,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:46:07,492.492 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 06:46:10,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:46:10,741.741 INFO    ] Checking for system updates...
[2026-06-13 06:46:10,763.763 INFO    ] 200
[2026-06-13 06:46:10,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:10,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:10,796.796 INFO    ] No update needed
[2026-06-13 06:46:10,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 06:46:10,817.817 INFO    ] 200
[2026-06-13 06:46:10,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:10,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:46:10,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:10,880.880 INFO    ] No camera update needed
[2026-06-13 06:46:10,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:46:10,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:46:10,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:46:10,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:12,927.927 INFO    ] ================================================
[2026-06-13 06:46:12,943.943 INFO    ] Launching Daemon at Sat Jun 13 06:46:12 IST 2026
[2026-06-13 06:46:12,954.954 INFO    ] ================================================
[2026-06-13 06:46:13,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:13
[2026-06-13 06:46:13,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:13,722.722 INFO    ] Initializing speech engine...
[2026-06-13 06:46:13,725.725 INFO    ] 2026-06-13 06:46:13
[2026-06-13 06:46:13,973.973 INFO    ] 2026-06-13 06:46:13
[2026-06-13 06:46:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:14,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:14,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:14,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:14,397.397 INFO    ] time= 13/06/2026 06:46:14
[2026-06-13 06:46:14,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:14,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:14,520.520 INFO    ] No existing commands found in stream
[2026-06-13 06:46:19,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:46:19,550.550 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 06:46:22,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:46:22,616.616 INFO    ] Checking for system updates...
[2026-06-13 06:46:22,637.637 INFO    ] 200
[2026-06-13 06:46:22,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:22,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:22,671.671 INFO    ] No update needed
[2026-06-13 06:46:22,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 06:46:22,692.692 INFO    ] 200
[2026-06-13 06:46:22,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:22,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:46:22,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:22,762.762 INFO    ] No camera update needed
[2026-06-13 06:46:22,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:46:22,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:46:22,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:46:22,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:24,810.810 INFO    ] ================================================
[2026-06-13 06:46:24,825.825 INFO    ] Launching Daemon at Sat Jun 13 06:46:24 IST 2026
[2026-06-13 06:46:24,836.836 INFO    ] ================================================
[2026-06-13 06:46:25,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:25
[2026-06-13 06:46:25,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:25,669.669 INFO    ] Initializing speech engine...
[2026-06-13 06:46:25,674.674 INFO    ] 2026-06-13 06:46:25
[2026-06-13 06:46:25,877.877 INFO    ] 2026-06-13 06:46:25
[2026-06-13 06:46:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:26,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:26,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:26,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:26,272.272 INFO    ] time= 13/06/2026 06:46:26
[2026-06-13 06:46:26,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:26,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:26,392.392 INFO    ] No existing commands found in stream
[2026-06-13 06:46:31,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:46:31,406.406 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 06:46:33,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:46:33,515.515 INFO    ] Checking for system updates...
[2026-06-13 06:46:33,536.536 INFO    ] 200
[2026-06-13 06:46:33,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:33,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:33,572.572 INFO    ] No update needed
[2026-06-13 06:46:33,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 06:46:33,593.593 INFO    ] 200
[2026-06-13 06:46:33,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:33,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:46:33,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:33,660.660 INFO    ] No camera update needed
[2026-06-13 06:46:33,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:46:33,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:46:33,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:46:33,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:35,714.714 INFO    ] ================================================
[2026-06-13 06:46:35,730.730 INFO    ] Launching Daemon at Sat Jun 13 06:46:35 IST 2026
[2026-06-13 06:46:35,741.741 INFO    ] ================================================
[2026-06-13 06:46:36,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:36
[2026-06-13 06:46:36,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:36,519.519 INFO    ] Initializing speech engine...
[2026-06-13 06:46:36,529.529 INFO    ] 2026-06-13 06:46:36
[2026-06-13 06:46:36,714.714 INFO    ] 2026-06-13 06:46:36
[2026-06-13 06:46:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:36,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:36,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:37,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:37,152.152 INFO    ] time= 13/06/2026 06:46:37
[2026-06-13 06:46:37,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:37,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:37,257.257 INFO    ] No existing commands found in stream
[2026-06-13 06:46:42,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:46:42,269.269 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 06:46:43,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:46:43,635.635 INFO    ] Checking for system updates...
[2026-06-13 06:46:43,671.671 INFO    ] 200
[2026-06-13 06:46:43,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:43,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:46:43,720.720 INFO    ] No update needed
[2026-06-13 06:46:43,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 06:46:43,741.741 INFO    ] 200
[2026-06-13 06:46:43,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:43,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:46:43,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:46:43,809.809 INFO    ] No camera update needed
[2026-06-13 06:46:43,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:46:43,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:46:43,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:46:43,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:45,857.857 INFO    ] ================================================
[2026-06-13 06:46:45,873.873 INFO    ] Launching Daemon at Sat Jun 13 06:46:45 IST 2026
[2026-06-13 06:46:45,884.884 INFO    ] ================================================
[2026-06-13 06:46:46,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:46
[2026-06-13 06:46:46,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:46,693.693 INFO    ] Initializing speech engine...
[2026-06-13 06:46:46,698.698 INFO    ] 2026-06-13 06:46:46
[2026-06-13 06:46:46,901.901 INFO    ] 2026-06-13 06:46:46
[2026-06-13 06:46:46,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:47,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:47,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:47,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:47,298.298 INFO    ] time= 13/06/2026 06:46:47
[2026-06-13 06:46:47,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:47,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:47,418.418 INFO    ] No existing commands found in stream
[2026-06-13 06:46:52,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:46:52,431.431 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 06:46:54,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:46:54,521.521 INFO    ] Checking for system updates...
[2026-06-13 06:46:54,557.557 INFO    ] 200
[2026-06-13 06:46:54,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:54,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:46:54,617.617 INFO    ] No update needed
[2026-06-13 06:46:54,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 06:46:54,653.653 INFO    ] 200
[2026-06-13 06:46:54,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:46:54,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:46:54,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:46:54,736.736 INFO    ] No camera update needed
[2026-06-13 06:46:54,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:46:54,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:46:54,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:46:54,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:46:56,786.786 INFO    ] ================================================
[2026-06-13 06:46:56,801.801 INFO    ] Launching Daemon at Sat Jun 13 06:46:56 IST 2026
[2026-06-13 06:46:56,812.812 INFO    ] ================================================
[2026-06-13 06:46:57,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:46:57
[2026-06-13 06:46:57,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:46:57,606.606 INFO    ] Initializing speech engine...
[2026-06-13 06:46:57,612.612 INFO    ] 2026-06-13 06:46:57
[2026-06-13 06:46:57,814.814 INFO    ] 2026-06-13 06:46:57
[2026-06-13 06:46:57,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:46:57,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:46:58,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:46:58,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:46:58,214.214 INFO    ] time= 13/06/2026 06:46:58
[2026-06-13 06:46:58,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:46:58,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:46:58,328.328 INFO    ] No existing commands found in stream
[2026-06-13 06:47:03,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:03,342.342 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 06:47:06,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:47:06,610.610 INFO    ] Checking for system updates...
[2026-06-13 06:47:06,632.632 INFO    ] 200
[2026-06-13 06:47:06,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:06,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:47:06,666.666 INFO    ] No update needed
[2026-06-13 06:47:06,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 06:47:06,686.686 INFO    ] 200
[2026-06-13 06:47:06,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:06,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:47:06,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:47:06,750.750 INFO    ] No camera update needed
[2026-06-13 06:47:06,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:47:06,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:47:06,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:47:06,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:47:08,801.801 INFO    ] ================================================
[2026-06-13 06:47:08,816.816 INFO    ] Launching Daemon at Sat Jun 13 06:47:08 IST 2026
[2026-06-13 06:47:08,827.827 INFO    ] ================================================
[2026-06-13 06:47:09,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:47:09
[2026-06-13 06:47:09,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:47:09,660.660 INFO    ] Initializing speech engine...
[2026-06-13 06:47:09,666.666 INFO    ] 2026-06-13 06:47:09
[2026-06-13 06:47:09,868.868 INFO    ] 2026-06-13 06:47:09
[2026-06-13 06:47:09,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:47:10,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:47:10,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:47:10,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:47:10,264.264 INFO    ] time= 13/06/2026 06:47:10
[2026-06-13 06:47:10,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:47:10,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:47:10,469.469 INFO    ] No existing commands found in stream
[2026-06-13 06:47:15,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:15,482.482 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 06:47:18,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:47:18,021.021 INFO    ] Checking for system updates...
[2026-06-13 06:47:18,042.042 INFO    ] 200
[2026-06-13 06:47:18,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:18,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:47:18,075.075 INFO    ] No update needed
[2026-06-13 06:47:18,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 06:47:18,096.096 INFO    ] 200
[2026-06-13 06:47:18,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:18,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:47:18,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:18,266.266 INFO    ] No camera update needed
[2026-06-13 06:47:18,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:47:18,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:47:18,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:47:18,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:47:20,314.314 INFO    ] ================================================
[2026-06-13 06:47:20,330.330 INFO    ] Launching Daemon at Sat Jun 13 06:47:20 IST 2026
[2026-06-13 06:47:20,341.341 INFO    ] ================================================
[2026-06-13 06:47:20,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:47:20
[2026-06-13 06:47:20,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:47:21,112.112 INFO    ] Initializing speech engine...
[2026-06-13 06:47:21,122.122 INFO    ] 2026-06-13 06:47:21
[2026-06-13 06:47:21,327.327 INFO    ] 2026-06-13 06:47:21
[2026-06-13 06:47:21,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:47:21,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:47:21,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:47:21,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:47:21,744.744 INFO    ] time= 13/06/2026 06:47:21
[2026-06-13 06:47:21,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:47:21,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:47:21,842.842 INFO    ] No existing commands found in stream
[2026-06-13 06:47:26,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:26,856.856 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 06:47:27,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:47:27,373.373 INFO    ] Checking for system updates...
[2026-06-13 06:47:27,393.393 INFO    ] 200
[2026-06-13 06:47:27,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:27,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:27,426.426 INFO    ] No update needed
[2026-06-13 06:47:27,428.428 INFO    ] Checking for camera pi updates...
[2026-06-13 06:47:27,448.448 INFO    ] 200
[2026-06-13 06:47:27,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:27,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:47:27,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:27,519.519 INFO    ] No camera update needed
[2026-06-13 06:47:27,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:47:27,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:47:27,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:47:27,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:47:29,567.567 INFO    ] ================================================
[2026-06-13 06:47:29,582.582 INFO    ] Launching Daemon at Sat Jun 13 06:47:29 IST 2026
[2026-06-13 06:47:29,594.594 INFO    ] ================================================
[2026-06-13 06:47:29,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:47:29
[2026-06-13 06:47:30,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:47:30,399.399 INFO    ] Initializing speech engine...
[2026-06-13 06:47:30,408.408 INFO    ] 2026-06-13 06:47:30
[2026-06-13 06:47:30,611.611 INFO    ] 2026-06-13 06:47:30
[2026-06-13 06:47:30,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:47:30,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:47:30,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:47:30,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:47:31,027.027 INFO    ] time= 13/06/2026 06:47:30
[2026-06-13 06:47:31,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:47:31,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:47:31,124.124 INFO    ] No existing commands found in stream
[2026-06-13 06:47:36,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:36,136.136 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 06:47:36,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:47:36,477.477 INFO    ] Checking for system updates...
[2026-06-13 06:47:36,499.499 INFO    ] 200
[2026-06-13 06:47:36,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:36,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:36,532.532 INFO    ] No update needed
[2026-06-13 06:47:36,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 06:47:36,554.554 INFO    ] 200
[2026-06-13 06:47:36,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:36,582.582 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:47:36,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:36,621.621 INFO    ] No camera update needed
[2026-06-13 06:47:36,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:47:36,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:47:36,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:47:36,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:47:38,671.671 INFO    ] ================================================
[2026-06-13 06:47:38,686.686 INFO    ] Launching Daemon at Sat Jun 13 06:47:38 IST 2026
[2026-06-13 06:47:38,697.697 INFO    ] ================================================
[2026-06-13 06:47:39,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:47:39
[2026-06-13 06:47:39,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:47:39,559.559 INFO    ] Initializing speech engine...
[2026-06-13 06:47:39,567.567 INFO    ] 2026-06-13 06:47:39
[2026-06-13 06:47:39,784.784 INFO    ] 2026-06-13 06:47:39
[2026-06-13 06:47:39,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:47:39,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:47:40,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:47:40,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:47:40,196.196 INFO    ] time= 13/06/2026 06:47:40
[2026-06-13 06:47:40,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:47:40,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:47:40,301.301 INFO    ] No existing commands found in stream
[2026-06-13 06:47:45,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:45,319.319 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 06:47:48,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:47:48,582.582 INFO    ] Checking for system updates...
[2026-06-13 06:47:48,604.604 INFO    ] 200
[2026-06-13 06:47:48,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:48,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:48,640.640 INFO    ] No update needed
[2026-06-13 06:47:48,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 06:47:48,662.662 INFO    ] 200
[2026-06-13 06:47:48,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:47:48,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:47:48,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:47:48,729.729 INFO    ] No camera update needed
[2026-06-13 06:47:48,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:47:48,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:47:48,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:47:48,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:47:50,776.776 INFO    ] ================================================
[2026-06-13 06:47:50,791.791 INFO    ] Launching Daemon at Sat Jun 13 06:47:50 IST 2026
[2026-06-13 06:47:50,803.803 INFO    ] ================================================
[2026-06-13 06:47:51,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:47:51
[2026-06-13 06:47:51,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:47:51,569.569 INFO    ] Initializing speech engine...
[2026-06-13 06:47:51,573.573 INFO    ] 2026-06-13 06:47:51
[2026-06-13 06:47:51,777.777 INFO    ] 2026-06-13 06:47:51
[2026-06-13 06:47:51,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:47:51,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:47:52,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:47:52,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:47:52,179.179 INFO    ] time= 13/06/2026 06:47:52
[2026-06-13 06:47:52,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:47:52,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:47:52,361.361 INFO    ] No existing commands found in stream
[2026-06-13 06:47:57,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:47:57,373.373 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 06:48:01,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:48:01,347.347 INFO    ] Checking for system updates...
[2026-06-13 06:48:01,369.369 INFO    ] 200
[2026-06-13 06:48:01,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:01,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:01,404.404 INFO    ] No update needed
[2026-06-13 06:48:01,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:01,425.425 INFO    ] 200
[2026-06-13 06:48:01,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:01,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:01,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:01,495.495 INFO    ] No camera update needed
[2026-06-13 06:48:01,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:01,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:01,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:01,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:03,535.535 INFO    ] ================================================
[2026-06-13 06:48:03,550.550 INFO    ] Launching Daemon at Sat Jun 13 06:48:03 IST 2026
[2026-06-13 06:48:03,561.561 INFO    ] ================================================
[2026-06-13 06:48:03,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:03
[2026-06-13 06:48:04,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:04,345.345 INFO    ] Initializing speech engine...
[2026-06-13 06:48:04,350.350 INFO    ] 2026-06-13 06:48:04
[2026-06-13 06:48:04,553.553 INFO    ] 2026-06-13 06:48:04
[2026-06-13 06:48:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:04,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:04,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:04,953.953 INFO    ] time= 13/06/2026 06:48:04
[2026-06-13 06:48:04,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:04,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:48:05,066.066 INFO    ] No existing commands found in stream
[2026-06-13 06:48:10,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:48:10,079.079 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 06:48:11,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:48:11,557.557 INFO    ] Checking for system updates...
[2026-06-13 06:48:11,578.578 INFO    ] 200
[2026-06-13 06:48:11,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:11,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:11,614.614 INFO    ] No update needed
[2026-06-13 06:48:11,615.615 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:11,635.635 INFO    ] 200
[2026-06-13 06:48:11,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:11,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:11,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:11,715.715 INFO    ] No camera update needed
[2026-06-13 06:48:11,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:11,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:11,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:11,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:13,774.774 INFO    ] ================================================
[2026-06-13 06:48:13,789.789 INFO    ] Launching Daemon at Sat Jun 13 06:48:13 IST 2026
[2026-06-13 06:48:13,801.801 INFO    ] ================================================
[2026-06-13 06:48:14,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:14
[2026-06-13 06:48:14,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:15,021.021 INFO    ] Initializing speech engine...
[2026-06-13 06:48:15,029.029 INFO    ] 2026-06-13 06:48:15
[2026-06-13 06:48:15,242.242 INFO    ] 2026-06-13 06:48:15
[2026-06-13 06:48:15,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:15,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:15,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:15,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:15,650.650 INFO    ] time= 13/06/2026 06:48:15
[2026-06-13 06:48:15,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:15,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:48:15,773.773 INFO    ] No existing commands found in stream
[2026-06-13 06:48:20,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:48:20,785.785 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 06:48:22,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:48:22,184.184 INFO    ] Checking for system updates...
[2026-06-13 06:48:22,204.204 INFO    ] 200
[2026-06-13 06:48:22,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:22,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:22,237.237 INFO    ] No update needed
[2026-06-13 06:48:22,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:22,258.258 INFO    ] 200
[2026-06-13 06:48:22,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:22,283.283 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:22,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:22,324.324 INFO    ] No camera update needed
[2026-06-13 06:48:22,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:22,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:22,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:22,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:24,372.372 INFO    ] ================================================
[2026-06-13 06:48:24,388.388 INFO    ] Launching Daemon at Sat Jun 13 06:48:24 IST 2026
[2026-06-13 06:48:24,398.398 INFO    ] ================================================
[2026-06-13 06:48:24,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:24
[2026-06-13 06:48:25,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:25,236.236 INFO    ] Initializing speech engine...
[2026-06-13 06:48:25,241.241 INFO    ] 2026-06-13 06:48:25
[2026-06-13 06:48:25,447.447 INFO    ] 2026-06-13 06:48:25
[2026-06-13 06:48:25,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:25,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:25,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:25,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:25,867.867 INFO    ] time= 13/06/2026 06:48:25
[2026-06-13 06:48:25,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:25,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:48:25,965.965 INFO    ] No existing commands found in stream
[2026-06-13 06:48:30,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:48:30,978.978 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 06:48:33,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:48:33,108.108 INFO    ] Checking for system updates...
[2026-06-13 06:48:33,130.130 INFO    ] 200
[2026-06-13 06:48:33,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:33,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:33,167.167 INFO    ] No update needed
[2026-06-13 06:48:33,168.168 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:33,190.190 INFO    ] 200
[2026-06-13 06:48:33,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:33,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:33,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:33,244.244 INFO    ] No camera update needed
[2026-06-13 06:48:33,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:33,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:33,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:33,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:35,293.293 INFO    ] ================================================
[2026-06-13 06:48:35,308.308 INFO    ] Launching Daemon at Sat Jun 13 06:48:35 IST 2026
[2026-06-13 06:48:35,319.319 INFO    ] ================================================
[2026-06-13 06:48:35,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:35
[2026-06-13 06:48:35,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:36,107.107 INFO    ] Initializing speech engine...
[2026-06-13 06:48:36,111.111 INFO    ] 2026-06-13 06:48:36
[2026-06-13 06:48:36,315.315 INFO    ] 2026-06-13 06:48:36
[2026-06-13 06:48:36,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:36,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:36,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:36,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:36,730.730 INFO    ] time= 13/06/2026 06:48:36
[2026-06-13 06:48:36,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:36,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:48:36,828.828 INFO    ] No existing commands found in stream
[2026-06-13 06:48:41,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:48:41,842.842 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 06:48:43,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:48:43,799.799 INFO    ] Checking for system updates...
[2026-06-13 06:48:43,821.821 INFO    ] 200
[2026-06-13 06:48:43,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:43,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:43,854.854 INFO    ] No update needed
[2026-06-13 06:48:43,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:43,877.877 INFO    ] 200
[2026-06-13 06:48:43,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:43,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:43,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:43,942.942 INFO    ] No camera update needed
[2026-06-13 06:48:43,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:43,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:43,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:43,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:45,991.991 INFO    ] ================================================
[2026-06-13 06:48:46,007.007 INFO    ] Launching Daemon at Sat Jun 13 06:48:46 IST 2026
[2026-06-13 06:48:46,017.017 INFO    ] ================================================
[2026-06-13 06:48:46,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:46
[2026-06-13 06:48:46,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:46,816.816 INFO    ] Initializing speech engine...
[2026-06-13 06:48:46,829.829 INFO    ] 2026-06-13 06:48:46
[2026-06-13 06:48:47,036.036 INFO    ] 2026-06-13 06:48:47
[2026-06-13 06:48:47,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:47,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:47,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:47,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:47,440.440 INFO    ] time= 13/06/2026 06:48:47
[2026-06-13 06:48:47,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:47,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:48:47,550.550 INFO    ] No existing commands found in stream
[2026-06-13 06:48:52,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:48:52,562.562 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 06:48:56,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:48:56,207.207 INFO    ] Checking for system updates...
[2026-06-13 06:48:56,230.230 INFO    ] 200
[2026-06-13 06:48:56,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:56,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:48:56,263.263 INFO    ] No update needed
[2026-06-13 06:48:56,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 06:48:56,284.284 INFO    ] 200
[2026-06-13 06:48:56,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:48:56,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:48:56,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:48:56,349.349 INFO    ] No camera update needed
[2026-06-13 06:48:56,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:48:56,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:48:56,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:48:56,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:48:58,397.397 INFO    ] ================================================
[2026-06-13 06:48:58,412.412 INFO    ] Launching Daemon at Sat Jun 13 06:48:58 IST 2026
[2026-06-13 06:48:58,423.423 INFO    ] ================================================
[2026-06-13 06:48:58,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:48:58
[2026-06-13 06:48:59,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:48:59,236.236 INFO    ] Initializing speech engine...
[2026-06-13 06:48:59,241.241 INFO    ] 2026-06-13 06:48:59
[2026-06-13 06:48:59,450.450 INFO    ] 2026-06-13 06:48:59
[2026-06-13 06:48:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:48:59,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:48:59,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:48:59,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:48:59,910.910 INFO    ] time= 13/06/2026 06:48:59
[2026-06-13 06:48:59,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:48:59,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:49:00,032.032 INFO    ] No existing commands found in stream
[2026-06-13 06:49:05,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:49:05,045.045 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 06:49:08,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:49:08,966.966 INFO    ] Checking for system updates...
[2026-06-13 06:49:08,986.986 INFO    ] 200
[2026-06-13 06:49:08,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:09,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:09,021.021 INFO    ] No update needed
[2026-06-13 06:49:09,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 06:49:09,042.042 INFO    ] 200
[2026-06-13 06:49:09,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:09,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:49:09,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:09,111.111 INFO    ] No camera update needed
[2026-06-13 06:49:09,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:49:09,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:49:09,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:49:09,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:49:11,157.157 INFO    ] ================================================
[2026-06-13 06:49:11,173.173 INFO    ] Launching Daemon at Sat Jun 13 06:49:11 IST 2026
[2026-06-13 06:49:11,184.184 INFO    ] ================================================
[2026-06-13 06:49:11,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:49:11
[2026-06-13 06:49:11,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:49:11,966.966 INFO    ] Initializing speech engine...
[2026-06-13 06:49:11,970.970 INFO    ] 2026-06-13 06:49:11
[2026-06-13 06:49:12,194.194 INFO    ] 2026-06-13 06:49:12
[2026-06-13 06:49:12,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:49:12,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:49:12,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:49:12,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:49:12,627.627 INFO    ] time= 13/06/2026 06:49:12
[2026-06-13 06:49:12,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:49:12,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:49:12,739.739 INFO    ] No existing commands found in stream
[2026-06-13 06:49:17,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:49:17,752.752 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 06:49:21,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:49:21,429.429 INFO    ] Checking for system updates...
[2026-06-13 06:49:21,450.450 INFO    ] 200
[2026-06-13 06:49:21,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:21,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:21,485.485 INFO    ] No update needed
[2026-06-13 06:49:21,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 06:49:21,508.508 INFO    ] 200
[2026-06-13 06:49:21,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:21,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:49:21,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:21,677.677 INFO    ] No camera update needed
[2026-06-13 06:49:21,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:49:21,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:49:21,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:49:21,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:49:23,725.725 INFO    ] ================================================
[2026-06-13 06:49:23,741.741 INFO    ] Launching Daemon at Sat Jun 13 06:49:23 IST 2026
[2026-06-13 06:49:23,752.752 INFO    ] ================================================
[2026-06-13 06:49:24,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:49:24
[2026-06-13 06:49:24,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:49:24,552.552 INFO    ] Initializing speech engine...
[2026-06-13 06:49:24,561.561 INFO    ] 2026-06-13 06:49:24
[2026-06-13 06:49:24,759.759 INFO    ] 2026-06-13 06:49:24
[2026-06-13 06:49:24,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:49:24,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:49:25,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:49:25,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:49:25,131.131 INFO    ] time= 13/06/2026 06:49:25
[2026-06-13 06:49:25,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:49:25,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:49:25,257.257 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 06:49:25,261.261 INFO    ] Checking historical command: ID=1781313563293-0
[2026-06-13 06:49:25,304.304 INFO    ] process_and_cleanup_command: msg_id=1781313563293-0
[2026-06-13 06:49:25,358.358 INFO    ] is_command_expired: timestamp=2026-06-13T01:19:22.125Z, expiry=30s
[2026-06-13 06:49:25,483.483 INFO    ] Command removed from stream: 1781313563293-0. returning for processing...
[2026-06-13 06:49:25,491.491 INFO    ] ***** get_valid_command
[2026-06-13 06:49:25,499.499 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781313562125-c6buuhrg9","orderId":"TM08202203260613064839855","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-13T01:19:22.125Z', 'timeout': '10'}
[2026-06-13 06:49:25,525.525 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781313562125-c6buuhrg9', 'is_vending': False, 'orderId': 'TM08202203260613064839855'}
[2026-06-13 06:49:25,572.572 INFO    ] Handling start order...
[2026-06-13 06:49:25,623.623 INFO    ] handle_start_order_command
[2026-06-13 06:49:25,696.696 INFO    ] _send_start_order_success: request_id=start-order-1781313562125-c6buuhrg9, order_id=TM08202203260613064839855
[2026-06-13 06:49:25,732.732 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 06:49:25,820.820 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781313565747-0
[2026-06-13 06:49:25,874.874 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 06:49:25,912.912 INFO    ] Checking for system updates...
[2026-06-13 06:49:25,984.984 INFO    ] 200
[2026-06-13 06:49:25,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:26,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:26,122.122 INFO    ] No update needed
[2026-06-13 06:49:26,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 06:49:26,181.181 INFO    ] 200
[2026-06-13 06:49:26,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:26,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:49:26,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:26,392.392 INFO    ] No camera update needed
[2026-06-13 06:49:26,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:49:26,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:49:26,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:49:26,429.429 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 06:49:26,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:49:28,489.489 INFO    ] ================================================
[2026-06-13 06:49:28,505.505 INFO    ] Launching Daemon at Sat Jun 13 06:49:28 IST 2026
[2026-06-13 06:49:28,516.516 INFO    ] ================================================
[2026-06-13 06:49:28,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:49:28
[2026-06-13 06:49:29,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:49:29,319.319 INFO    ] Initializing speech engine...
[2026-06-13 06:49:29,323.323 INFO    ] 2026-06-13 06:49:29
[2026-06-13 06:49:29,549.549 INFO    ] 2026-06-13 06:49:29
[2026-06-13 06:49:29,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:49:29,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:49:29,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:49:29,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:49:29,918.918 INFO    ] time= 13/06/2026 06:49:29
[2026-06-13 06:49:29,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:49:30,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:49:30,097.097 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 06:49:30,100.100 INFO    ] Checking historical command: ID=1781313565747-0
[2026-06-13 06:49:30,102.102 INFO    ] process_and_cleanup_command: msg_id=1781313565747-0
[2026-06-13 06:49:30,129.129 INFO    ] is_command_expired: timestamp=2026-06-13T01:19:25.703093Z, expiry=30s
[2026-06-13 06:49:30,184.184 INFO    ] Command removed from stream: 1781313565747-0. returning for processing...
[2026-06-13 06:49:30,186.186 INFO    ] ***** get_valid_command
[2026-06-13 06:49:30,189.189 INFO    ] {'metadata_order_id': 'TM08202203260613064839855', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781313562125-c6buuhrg9', 'message': 'start-order success', 'imei': 'TM08202203', 'status': 'success', 'timestamp': '2026-06-13T01:19:25.703093Z'}
[2026-06-13 06:49:30,191.191 INFO    ] Checking historical command: ID=1781313568781-0
[2026-06-13 06:49:30,193.193 INFO    ] process_and_cleanup_command: msg_id=1781313568781-0
[2026-06-13 06:49:30,194.194 INFO    ] is_command_expired: timestamp=2026-06-13T01:19:27.553Z, expiry=30s
[2026-06-13 06:49:30,257.257 INFO    ] Command removed from stream: 1781313568781-0. returning for processing...
[2026-06-13 06:49:30,260.260 INFO    ] ***** get_valid_command
[2026-06-13 06:49:30,263.263 INFO    ] {'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1781313567553-y44s0ppqe","orderId":"TM08202203260613064839855","is_vending":false,"accessCode":"41298576"}', 'command': 'process-order', 'timestamp': '2026-06-13T01:19:27.553Z'}
[2026-06-13 06:49:30,267.267 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613064839855', 'accessCode': '41298576', 'request_id': 'process-order-1781313567553-y44s0ppqe'}
[2026-06-13 06:49:30,271.271 INFO    ] Handling process order...
[2026-06-13 06:49:30,274.274 INFO    ] Processing process-order command...
[2026-06-13 06:49:30,279.279 INFO    ] 🔍 Lock file Order ID: TM08202203260613064839855, TS: 2026-06-13 06:49:25
[2026-06-13 06:49:30,287.287 INFO    ] ✅ Order lock valid for TM08202203260613064839855
[2026-06-13 06:49:30,291.291 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 06:49:30,295.295 INFO    ] processing access code 41298576 for order TM08202203260613064839855
[2026-06-13 06:49:30,299.299 INFO    ] 🔍 Lock file Order ID: TM08202203260613064839855, TS: 2026-06-13 06:49:25
[2026-06-13 06:49:30,303.303 INFO    ] ✅ Order lock valid for TM08202203260613064839855
[2026-06-13 06:49:30,306.306 INFO    ] 2026-06-13 06:49:30
[2026-06-13 06:49:30,335.335 INFO    ] 200
[2026-06-13 06:49:30,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:30,341.341 INFO    ] 41298576
[2026-06-13 06:49:30,344.344 INFO    ] 2026-06-13 06:49:30
[2026-06-13 06:49:30,347.347 INFO    ] session id :140541872
[2026-06-13 06:49:30,350.350 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=41298576&imei=TM08202203&session_id=140541872
[2026-06-13 06:49:33,115.115 INFO    ] 200
[2026-06-13 06:49:33,118.118 INFO    ] {"data": {"mobile": "9906177211", "order_id": "TM08202203260613064839855", "bill_amount": "10", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Roasted Channa 32g", "tray_id": "15", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "41298576", "invoice_bill": "10"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 06:49:33,121.121 INFO    ] 10
[2026-06-13 06:49:33,123.123 INFO    ] TM08202203260613064839855
[2026-06-13 06:49:33,125.125 INFO    ] 9906177211
[2026-06-13 06:49:33,128.128 INFO    ] 2026-06-13 06:49:33
[2026-06-13 06:49:33,130.130 INFO    ] Door Opening for user mobile ending with  seven two one one 
[2026-06-13 06:49:33,132.132 INFO    ] Door Opening for user mobile ending with  seven two one one 
[2026-06-13 06:49:33,135.135 INFO    ] bb44f27f68b7220c7171574f205c652e
[2026-06-13 06:49:33,137.137 INFO    ] 2026-06-13 06:49:33
[2026-06-13 06:49:33,139.139 INFO    ] playing audio file
[2026-06-13 06:49:33,157.157 INFO    ] 2026-06-13 06:49:33
[2026-06-13 06:49:33,160.160 INFO    ] 2026-06-13 06:49:33
[2026-06-13 06:49:33,163.163 INFO    ] publish_status: order_id=TM08202203260613064839855
[2026-06-13 06:49:33,166.166 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613064839855
[2026-06-13 06:49:33,211.211 INFO    ] [publish_status] Message added to stream with ID: 1781313573178-0
[2026-06-13 06:49:33,216.216 INFO    ] Published to order:TM08202203260613064839855: {'order_id': 'TM08202203260613064839855', 'server_response': '{"rstatus": true, "data": {"access_code": "41298576", "bill_amount": "10", "order_id": "TM08202203260613064839855", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "door_id": "1", "offer_id": "", "unit_price": 10, "mrp": "10", "tray_id": "15", "qty": 1, "sku_total": 10, "skuid": "4500647", "name": "Modern kitchens Roasted Channa 32g", "image_url": "https://images.tinymart.in/product/4500647-5070.webp"}], "mobile": "9906177211"}, "msg": "Order Data", "status": true}', 'timestamp': '2026-06-13T01:19:33.162030Z', 'server_status': 'order-started'} (ID: 1781313573178-0)
[2026-06-13 06:49:33,670.670 INFO    ] {'order_id': 'TM08202203260613064839855', 'server_response': {'rstatus': True, 'data': {'access_code': '41298576', 'bill_amount': '10', 'order_id': 'TM08202203260613064839855', 'invoice_bill': '10', 'proposed_sku_json': [{'offer_desc': '', 'door_id': '1', 'offer_id': '', 'unit_price': 10, 'mrp': '10', 'tray_id': '15', 'qty': 1, 'sku_total': 10, 'skuid': '4500647', 'name': 'Modern kitchens Roasted Channa 32g', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp'}], 'mobile': '9906177211'}, 'msg': 'Order Data', 'status': True}, 'server_status': 'order-started'}
[2026-06-13 06:49:33,672.672 INFO    ] 200
[2026-06-13 06:49:33,673.673 INFO    ] {"data":{"order_id":"TM08202203260613064839855","server_response":{"rstatus":true,"data":{"access_code":"41298576","bill_amount":"10","order_id":"TM08202203260613064839855","invoice_bill":"10","proposed_sku_json":[{"offer_desc":"","door_id":"1","offer_id":"","unit_price":10,"mrp":"10","tray_id":"15","qty":1,"sku_total":10,"skuid":"4500647","name":"Modern kitchens Roasted Channa 32g","image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp"}],"mobile":"9906177211"},"msg":"Order Data","status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:49:33,674.674 INFO    ] {'data': {'order_id': 'TM08202203260613064839855', 'server_response': {'status': True, 'data': {'access_code': '41298576', 'bill_amount': '10', 'invoice_bill': '10', 'mobile': '9906177211', 'proposed_sku_json': [{'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '1', 'tray_id': '15', 'mrp': '10', 'unit_price': 10, 'qty': 1, 'sku_total': 10, 'offer_id': '', 'name': 'Modern kitchens Roasted Channa 32g', 'skuid': '4500647'}], 'order_id': 'TM08202203260613064839855'}, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 06:49:33,676.676 INFO    ] 2026-06-13 06:49:33
[2026-06-13 06:49:33,703.703 INFO    ] 200
[2026-06-13 06:49:33,704.704 INFO    ] True
[2026-06-13 06:49:33,837.837 INFO    ] 200
[2026-06-13 06:49:33,839.839 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 06:49:33,841.841 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-06-13 06:49:33,843.843 INFO    ] *** process_order ***
[2026-06-13 06:49:34,997.997 INFO    ] 200
[2026-06-13 06:49:34,999.999 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:49:35,001.001 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'status': 'True'}
[2026-06-13 06:49:35,002.002 INFO    ] *** process_order ***
[2026-06-13 06:49:35,004.004 INFO    ] publish_status: order_id=TM08202203260613064839855
[2026-06-13 06:49:35,005.005 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613064839855
[2026-06-13 06:49:35,046.046 INFO    ] [publish_status] Message added to stream with ID: 1781313575015-0
[2026-06-13 06:49:35,047.047 INFO    ] Published to order:TM08202203260613064839855: {'order_id': 'TM08202203260613064839855', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "delay": 0}', 'server_status': 'doorOpened'} (ID: 1781313575015-0)
[2026-06-13 06:49:36,090.090 INFO    ] 2026-06-13 06:49:36
[2026-06-13 06:49:36,093.093 INFO    ] publish_status: order_id=TM08202203260613064839855
[2026-06-13 06:49:36,096.096 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613064839855
[2026-06-13 06:49:36,142.142 INFO    ] [publish_status] Message added to stream with ID: 1781313576110-0
[2026-06-13 06:49:36,144.144 INFO    ] Published to order:TM08202203260613064839855: {'order_id': 'TM08202203260613064839855', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "voiceNote": "Please Wait", "status": "True"}', 'timestamp': '2026-06-13T01:19:36.092255Z', 'server_status': 'processOrder'} (ID: 1781313576110-0)
[2026-06-13 06:49:36,278.278 INFO    ] {'order_id': 'TM08202203260613064839855', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-13 06:49:36,281.281 INFO    ] 200
[2026-06-13 06:49:36,284.284 INFO    ] {"data":{"order_id":"TM08202203260613064839855","server_response":{"SectionMain":{"Header":"Processing Order"},"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""},"voiceNote":"Please Wait","status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:49:36,288.288 INFO    ] {'data': {'order_id': 'TM08202203260613064839855', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'status': 'true'}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 06:49:36,291.291 INFO    ] 2026-06-13 06:49:36
[2026-06-13 06:49:36,294.294 INFO    ] None
[2026-06-13 06:49:36,297.297 INFO    ] Opening Door now
[2026-06-13 06:49:36,299.299 INFO    ] Opening Door now
[2026-06-13 06:49:36,302.302 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 06:49:36,305.305 INFO    ] 2026-06-13 06:49:36
[2026-06-13 06:49:36,309.309 INFO    ] playing audio file
[2026-06-13 06:49:36,332.332 INFO    ] 2026-06-13 06:49:36
[2026-06-13 06:49:36,336.336 INFO    ] 2026-06-13 06:49:36
[2026-06-13 06:49:39,372.372 INFO    ] 200
[2026-06-13 06:49:39,374.374 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:49:39,375.375 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-06-13 06:49:42,427.427 INFO    ] 200
[2026-06-13 06:49:42,429.429 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:49:42,433.433 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-06-13 06:49:45,482.482 INFO    ] 200
[2026-06-13 06:49:45,483.483 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:49:45,485.485 INFO    ] Please close door 1
[2026-06-13 06:49:45,486.486 INFO    ] Please close door 1
[2026-06-13 06:49:45,487.487 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 06:49:45,489.489 INFO    ] 2026-06-13 06:49:45
[2026-06-13 06:49:45,490.490 INFO    ] playing audio file
[2026-06-13 06:49:45,501.501 INFO    ] 2026-06-13 06:49:45
[2026-06-13 06:49:45,503.503 INFO    ] publish_status: order_id=TM08202203260613064839855
[2026-06-13 06:49:45,505.505 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613064839855
[2026-06-13 06:49:45,548.548 INFO    ] [publish_status] Message added to stream with ID: 1781313585517-0
[2026-06-13 06:49:45,550.550 INFO    ] Published to order:TM08202203260613064839855: {'order_id': 'TM08202203260613064839855', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "status": "False", "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}}', 'timestamp': '2026-06-13T01:19:45.502495Z', 'server_status': 'OrderStatus'} (ID: 1781313585517-0)
[2026-06-13 06:49:45,879.879 INFO    ] {'order_id': 'TM08202203260613064839855', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}}, 'server_status': 'OrderStatus'}
[2026-06-13 06:49:45,882.882 INFO    ] 200
[2026-06-13 06:49:45,885.885 INFO    ] {"data":{"order_id":"TM08202203260613064839855","server_response":{"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"qty":1,"name":"Modern kitchens Roasted Channa 32g"}],"Header":"Pick the below items from the door"},"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","status":"false","error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:49:45,888.888 INFO    ] {'data': {'order_id': 'TM08202203260613064839855', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 06:49:45,891.891 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-06-13 06:49:48,931.931 INFO    ] 200
[2026-06-13 06:49:48,933.933 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:49:48,935.935 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'status': 'True'}
[2026-06-13 06:49:48,936.936 INFO    ] 2026-06-13 06:49:48
[2026-06-13 06:49:48,938.938 INFO    ] Order Completed 
[2026-06-13 06:49:48,939.939 INFO    ] Order Completed 
[2026-06-13 06:49:48,941.941 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 06:49:48,943.943 INFO    ] 2026-06-13 06:49:48
[2026-06-13 06:49:48,944.944 INFO    ] playing audio file
[2026-06-13 06:49:48,955.955 INFO    ] 2026-06-13 06:49:48
[2026-06-13 06:49:48,957.957 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'status': 'True'}
[2026-06-13 06:49:48,959.959 INFO    ] 2026-06-13 06:49:48
[2026-06-13 06:49:49,311.311 INFO    ] 200
[2026-06-13 06:49:49,313.313 INFO    ] {"res": "True", "orderId": "TM08202203260613064839855", "skus": [], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 0}
[2026-06-13 06:49:49,314.314 INFO    ] {'skus': [], 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM08202203260613064839855', 'logic': 'WBL', 'total_amount': 0}
[2026-06-13 06:49:49,316.316 INFO    ] {'skus': [], 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM08202203260613064839855', 'logic': 'WBL', 'total_amount': 0}
[2026-06-13 06:49:49,317.317 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,319.319 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,320.320 INFO    ] 10
[2026-06-13 06:49:49,321.321 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,322.322 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,324.324 INFO    ]  Your Bill Amount is 0
[2026-06-13 06:49:49,325.325 INFO    ]  Your Bill Amount is 0
[2026-06-13 06:49:49,326.326 INFO    ] b7d9e26c3a450f82ce44338986aec566
[2026-06-13 06:49:49,328.328 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,329.329 INFO    ] playing audio file
[2026-06-13 06:49:49,339.339 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,341.341 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:49,343.343 INFO    ] publish_status: order_id=TM08202203260613064839855
[2026-06-13 06:49:49,345.345 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613064839855
[2026-06-13 06:49:49,387.387 INFO    ] [publish_status] Message added to stream with ID: 1781313589354-0
[2026-06-13 06:49:49,389.389 INFO    ] Published to order:TM08202203260613064839855: {'order_id': 'TM08202203260613064839855', 'server_response': '{"skus": [], "res": "True", "rstatus": true, "anomaly": 0, "orderId": "TM08202203260613064839855", "logic": "WBL", "total_amount": 0}', 'timestamp': '2026-06-13T01:19:49.342434Z', 'server_status': 'invoiceOrder'} (ID: 1781313589354-0)
[2026-06-13 06:49:49,482.482 INFO    ] {'order_id': 'TM08202203260613064839855', 'server_response': {'skus': [], 'res': 'True', 'rstatus': True, 'anomaly': 0, 'orderId': 'TM08202203260613064839855', 'logic': 'WBL', 'total_amount': 0}, 'server_status': 'invoiceOrder'}
[2026-06-13 06:49:49,484.484 INFO    ] 200
[2026-06-13 06:49:49,485.485 INFO    ] {"data":{"order_id":"TM08202203260613064839855","server_response":{"skus":[],"res":"true","rstatus":true,"anomaly":0,"orderId":"TM08202203260613064839855","logic":"WBL","total_amount":0},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:49:49,486.486 INFO    ] {'data': {'order_id': 'TM08202203260613064839855', 'server_response': {'skus': [], 'orderId': 'TM08202203260613064839855', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'total_amount': 0}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 06:49:49,488.488 INFO    ] {'data': {'order_id': 'TM08202203260613064839855', 'server_response': {'skus': [], 'orderId': 'TM08202203260613064839855', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'total_amount': 0}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 06:49:49,489.489 INFO    ] 2026-06-13 06:49:49
[2026-06-13 06:49:51,023.023 INFO    ] 200
[2026-06-13 06:49:51,025.025 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855", "TM08202203260613064839855"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 06:49:51,027.027 INFO    ] 2026-06-13 06:49:51
[2026-06-13 06:49:51,100.100 INFO    ] 200
[2026-06-13 06:49:51,101.101 INFO    ] True
[2026-06-13 06:49:51,103.103 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613064839855
[2026-06-13 06:49:51,104.104 INFO    ] start order file deleted
[2026-06-13 06:49:51,106.106 INFO    ] Checking for system updates...
[2026-06-13 06:49:51,132.132 INFO    ] 200
[2026-06-13 06:49:51,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:51,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:51,174.174 INFO    ] No update needed
[2026-06-13 06:49:51,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 06:49:51,199.199 INFO    ] 200
[2026-06-13 06:49:51,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:49:51,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:49:51,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:49:51,257.257 INFO    ] No camera update needed
[2026-06-13 06:49:51,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:49:51,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:49:51,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:49:51,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:49:53,308.308 INFO    ] ================================================
[2026-06-13 06:49:53,324.324 INFO    ] Launching Daemon at Sat Jun 13 06:49:53 IST 2026
[2026-06-13 06:49:53,335.335 INFO    ] ================================================
[2026-06-13 06:49:53,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:49:53
[2026-06-13 06:49:54,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:49:54,556.556 INFO    ] Initializing speech engine...
[2026-06-13 06:49:54,562.562 INFO    ] 2026-06-13 06:49:54
[2026-06-13 06:49:54,775.775 INFO    ] 2026-06-13 06:49:54
[2026-06-13 06:49:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:49:54,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:49:55,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:49:55,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:49:55,180.180 INFO    ] time= 13/06/2026 06:49:55
[2026-06-13 06:49:55,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:49:55,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:49:55,332.332 INFO    ] No existing commands found in stream
[2026-06-13 06:50:00,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:50:00,345.345 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 06:50:08,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:50:08,120.120 INFO    ] Checking for system updates...
[2026-06-13 06:50:08,156.156 INFO    ] 200
[2026-06-13 06:50:08,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:08,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:08,222.222 INFO    ] No update needed
[2026-06-13 06:50:08,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 06:50:08,247.247 INFO    ] 200
[2026-06-13 06:50:08,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:08,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:50:08,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:50:08,311.311 INFO    ] No camera update needed
[2026-06-13 06:50:08,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:50:08,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:50:08,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:50:08,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:50:10,359.359 INFO    ] ================================================
[2026-06-13 06:50:10,375.375 INFO    ] Launching Daemon at Sat Jun 13 06:50:10 IST 2026
[2026-06-13 06:50:10,386.386 INFO    ] ================================================
[2026-06-13 06:50:10,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:50:10
[2026-06-13 06:50:11,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:50:11,183.183 INFO    ] Initializing speech engine...
[2026-06-13 06:50:11,188.188 INFO    ] 2026-06-13 06:50:11
[2026-06-13 06:50:11,381.381 INFO    ] 2026-06-13 06:50:11
[2026-06-13 06:50:11,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:50:11,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:50:11,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:50:11,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:50:11,862.862 INFO    ] time= 13/06/2026 06:50:11
[2026-06-13 06:50:11,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:50:11,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:50:11,986.986 INFO    ] No existing commands found in stream
[2026-06-13 06:50:16,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:50:16,997.997 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 06:50:19,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:50:19,029.029 INFO    ] Checking for system updates...
[2026-06-13 06:50:19,052.052 INFO    ] 200
[2026-06-13 06:50:19,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:19,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:19,085.085 INFO    ] No update needed
[2026-06-13 06:50:19,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 06:50:19,106.106 INFO    ] 200
[2026-06-13 06:50:19,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:19,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:50:19,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:19,169.169 INFO    ] No camera update needed
[2026-06-13 06:50:19,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:50:19,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:50:19,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:50:19,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:50:21,217.217 INFO    ] ================================================
[2026-06-13 06:50:21,233.233 INFO    ] Launching Daemon at Sat Jun 13 06:50:21 IST 2026
[2026-06-13 06:50:21,244.244 INFO    ] ================================================
[2026-06-13 06:50:21,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:50:21
[2026-06-13 06:50:21,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:50:22,058.058 INFO    ] Initializing speech engine...
[2026-06-13 06:50:22,061.061 INFO    ] 2026-06-13 06:50:22
[2026-06-13 06:50:22,260.260 INFO    ] 2026-06-13 06:50:22
[2026-06-13 06:50:22,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:50:22,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:50:22,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:50:22,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:50:22,701.701 INFO    ] time= 13/06/2026 06:50:22
[2026-06-13 06:50:22,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:50:22,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:50:22,854.854 INFO    ] No existing commands found in stream
[2026-06-13 06:50:23,167.167 INFO    ] Received new command: ID=1781313623078-0
[2026-06-13 06:50:23,171.171 INFO    ] process_and_cleanup_command: msg_id=1781313623078-0
[2026-06-13 06:50:23,198.198 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:21.934Z, expiry=30s
[2026-06-13 06:50:23,315.315 INFO    ] Command removed from stream: 1781313623078-0. returning for processing...
[2026-06-13 06:50:23,319.319 INFO    ] ***** get_valid_command
[2026-06-13 06:50:23,324.324 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781313621934-4t0odd0hd","orderId":"TM08202203260613065015400","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-13T01:20:21.934Z'}
[2026-06-13 06:50:23,327.327 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781313621934-4t0odd0hd', 'orderId': 'TM08202203260613065015400', 'is_vending': False}
[2026-06-13 06:50:23,330.330 INFO    ] Handling start order...
[2026-06-13 06:50:23,334.334 INFO    ] handle_start_order_command
[2026-06-13 06:50:23,341.341 INFO    ] _send_start_order_success: request_id=start-order-1781313621934-4t0odd0hd, order_id=TM08202203260613065015400
[2026-06-13 06:50:23,344.344 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 06:50:23,404.404 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781313623370-0
[2026-06-13 06:50:23,408.408 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 06:50:23,411.411 INFO    ] Checking for system updates...
[2026-06-13 06:50:23,460.460 INFO    ] 200
[2026-06-13 06:50:23,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:23,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:23,514.514 INFO    ] No update needed
[2026-06-13 06:50:23,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 06:50:23,565.565 INFO    ] 200
[2026-06-13 06:50:23,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:23,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:50:23,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:23,671.671 INFO    ] No camera update needed
[2026-06-13 06:50:23,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:50:23,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:50:23,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:50:23,743.743 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 06:50:23,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:50:25,818.818 INFO    ] ================================================
[2026-06-13 06:50:25,833.833 INFO    ] Launching Daemon at Sat Jun 13 06:50:25 IST 2026
[2026-06-13 06:50:25,844.844 INFO    ] ================================================
[2026-06-13 06:50:26,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:50:26
[2026-06-13 06:50:26,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:50:27,004.004 INFO    ] Initializing speech engine...
[2026-06-13 06:50:27,013.013 INFO    ] 2026-06-13 06:50:27
[2026-06-13 06:50:27,264.264 INFO    ] 2026-06-13 06:50:27
[2026-06-13 06:50:27,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:50:27,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:50:27,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:50:27,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:50:27,605.605 INFO    ] time= 13/06/2026 06:50:27
[2026-06-13 06:50:27,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:50:27,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:50:27,721.721 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 06:50:27,763.763 INFO    ] Checking historical command: ID=1781313623370-0
[2026-06-13 06:50:27,822.822 INFO    ] process_and_cleanup_command: msg_id=1781313623370-0
[2026-06-13 06:50:27,857.857 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:23.341823Z, expiry=30s
[2026-06-13 06:50:28,018.018 INFO    ] Command removed from stream: 1781313623370-0. returning for processing...
[2026-06-13 06:50:28,060.060 INFO    ] ***** get_valid_command
[2026-06-13 06:50:28,115.115 INFO    ] {'metadata_order_id': 'TM08202203260613065015400', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781313621934-4t0odd0hd', 'status': 'success', 'message': 'start-order success', 'timestamp': '2026-06-13T01:20:23.341823Z', 'message_type': 'command_response'}
[2026-06-13 06:50:28,150.150 INFO    ] Checking historical command: ID=1781313625718-0
[2026-06-13 06:50:28,194.194 INFO    ] process_and_cleanup_command: msg_id=1781313625718-0
[2026-06-13 06:50:28,248.248 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:24.593Z, expiry=30s
[2026-06-13 06:50:28,355.355 INFO    ] Command removed from stream: 1781313625718-0. returning for processing...
[2026-06-13 06:50:28,362.362 INFO    ] ***** get_valid_command
[2026-06-13 06:50:28,365.365 INFO    ] {'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'timestamp': '2026-06-13T01:20:24.593Z', 'data': '{"request_id":"process-order-1781313624592-0t0gugpqd","orderId":"TM08202203260613065015400","is_vending":false,"accessCode":"67458488"}'}
[2026-06-13 06:50:28,368.368 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781313624592-0t0gugpqd', 'accessCode': '67458488', 'is_vending': False, 'orderId': 'TM08202203260613065015400'}
[2026-06-13 06:50:28,371.371 INFO    ] Handling process order...
[2026-06-13 06:50:28,420.420 INFO    ] Processing process-order command...
[2026-06-13 06:50:28,503.503 INFO    ] 🔍 Lock file Order ID: TM08202203260613065015400, TS: 2026-06-13 06:50:23
[2026-06-13 06:50:28,520.520 INFO    ] ✅ Order lock valid for TM08202203260613065015400
[2026-06-13 06:50:28,524.524 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 06:50:28,569.569 INFO    ] processing access code 67458488 for order TM08202203260613065015400
[2026-06-13 06:50:28,589.589 INFO    ] 🔍 Lock file Order ID: TM08202203260613065015400, TS: 2026-06-13 06:50:23
[2026-06-13 06:50:28,592.592 INFO    ] ✅ Order lock valid for TM08202203260613065015400
[2026-06-13 06:50:28,596.596 INFO    ] 2026-06-13 06:50:28
[2026-06-13 06:50:28,664.664 INFO    ] 200
[2026-06-13 06:50:28,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:28,672.672 INFO    ] 67458488
[2026-06-13 06:50:28,677.677 INFO    ] 2026-06-13 06:50:28
[2026-06-13 06:50:28,682.682 INFO    ] session id :343973285
[2026-06-13 06:50:28,687.687 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=67458488&imei=TM08202203&session_id=343973285
[2026-06-13 06:50:29,725.725 INFO    ] 200
[2026-06-13 06:50:29,730.730 INFO    ] {"data": {"mobile": "9906177211", "order_id": "TM08202203260613065015400", "bill_amount": "10", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "67458488", "invoice_bill": "10"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 06:50:29,737.737 INFO    ] 10
[2026-06-13 06:50:29,743.743 INFO    ] TM08202203260613065015400
[2026-06-13 06:50:29,749.749 INFO    ] 9906177211
[2026-06-13 06:50:29,754.754 INFO    ] 2026-06-13 06:50:29
[2026-06-13 06:50:29,763.763 INFO    ] Door Opening for user mobile ending with  seven two one one 
[2026-06-13 06:50:29,771.771 INFO    ] Door Opening for user mobile ending with  seven two one one 
[2026-06-13 06:50:29,786.786 INFO    ] bb44f27f68b7220c7171574f205c652e
[2026-06-13 06:50:29,791.791 INFO    ] 2026-06-13 06:50:29
[2026-06-13 06:50:29,801.801 INFO    ] playing audio file
[2026-06-13 06:50:29,848.848 INFO    ] 2026-06-13 06:50:29
[2026-06-13 06:50:29,852.852 INFO    ] 2026-06-13 06:50:29
[2026-06-13 06:50:29,860.860 INFO    ] publish_status: order_id=TM08202203260613065015400
[2026-06-13 06:50:29,865.865 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065015400
[2026-06-13 06:50:29,949.949 INFO    ] [publish_status] Message added to stream with ID: 1781313629910-0
[2026-06-13 06:50:29,973.973 INFO    ] Published to order:TM08202203260613065015400: {'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9906177211", "access_code": "67458488", "order_id": "TM08202203260613065015400", "proposed_sku_json": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "unit_price": 10, "name": "Modern kitchens Banana Chips 21gm", "mrp": "10", "tray_id": "11", "offer_desc": "", "offer_id": "", "skuid": "4500648", "door_id": "1", "sku_total": 10}], "invoice_bill": "10", "bill_amount": "10"}}', 'timestamp': '2026-06-13T01:20:29.853494Z', 'order_id': 'TM08202203260613065015400'} (ID: 1781313629910-0)
[2026-06-13 06:50:30,351.351 INFO    ] {'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'mobile': '9906177211', 'access_code': '67458488', 'order_id': 'TM08202203260613065015400', 'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'mrp': '10', 'tray_id': '11', 'offer_desc': '', 'offer_id': '', 'skuid': '4500648', 'door_id': '1', 'sku_total': 10}], 'invoice_bill': '10', 'bill_amount': '10'}}, 'order_id': 'TM08202203260613065015400'}
[2026-06-13 06:50:30,353.353 INFO    ] 200
[2026-06-13 06:50:30,354.354 INFO    ] {"data":{"server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"mobile":"9906177211","access_code":"67458488","order_id":"TM08202203260613065015400","proposed_sku_json":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","unit_price":10,"name":"Modern kitchens Banana Chips 21gm","mrp":"10","tray_id":"11","offer_desc":"","offer_id":"","skuid":"4500648","door_id":"1","sku_total":10}],"invoice_bill":"10","bill_amount":"10"}},"order_id":"TM08202203260613065015400"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:50:30,356.356 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'data': {'mobile': '9906177211', 'access_code': '67458488', 'order_id': 'TM08202203260613065015400', 'proposed_sku_json': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm', 'mrp': '10', 'unit_price': 10, 'offer_desc': '', 'offer_id': '', 'tray_id': '11', 'skuid': '4500648', 'door_id': '1'}], 'invoice_bill': '10', 'bill_amount': '10'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613065015400'}}
[2026-06-13 06:50:30,357.357 INFO    ] 2026-06-13 06:50:30
[2026-06-13 06:50:30,383.383 INFO    ] 200
[2026-06-13 06:50:30,385.385 INFO    ] True
[2026-06-13 06:50:30,482.482 INFO    ] 200
[2026-06-13 06:50:30,484.484 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 06:50:30,486.486 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please Wait', 'rstatus': False, 'status': 'False'}
[2026-06-13 06:50:30,487.487 INFO    ] *** process_order ***
[2026-06-13 06:50:31,688.688 INFO    ] 200
[2026-06-13 06:50:31,698.698 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:50:31,702.702 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'delay': 0}
[2026-06-13 06:50:31,705.705 INFO    ] *** process_order ***
[2026-06-13 06:50:31,709.709 INFO    ] publish_status: order_id=TM08202203260613065015400
[2026-06-13 06:50:31,712.712 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065015400
[2026-06-13 06:50:31,793.793 INFO    ] [publish_status] Message added to stream with ID: 1781313631760-0
[2026-06-13 06:50:31,796.796 INFO    ] Published to order:TM08202203260613065015400: {'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Door is open...", "rstatus": true, "status": "True", "delay": 0}', 'order_id': 'TM08202203260613065015400'} (ID: 1781313631760-0)
[2026-06-13 06:50:32,842.842 INFO    ] 2026-06-13 06:50:32
[2026-06-13 06:50:32,845.845 INFO    ] publish_status: order_id=TM08202203260613065015400
[2026-06-13 06:50:32,848.848 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065015400
[2026-06-13 06:50:32,923.923 INFO    ] [publish_status] Message added to stream with ID: 1781313632890-0
[2026-06-13 06:50:32,927.927 INFO    ] Published to order:TM08202203260613065015400: {'server_status': 'processOrder', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "rstatus": true, "status": "True", "delay": 0}', 'timestamp': '2026-06-13T01:20:32.843456Z', 'order_id': 'TM08202203260613065015400'} (ID: 1781313632890-0)
[2026-06-13 06:50:33,030.030 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'delay': 0}, 'order_id': 'TM08202203260613065015400'}
[2026-06-13 06:50:33,033.033 INFO    ] 200
[2026-06-13 06:50:33,036.036 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"voiceNote":"Please Wait","rstatus":true,"status":"true","delay":0},"order_id":"TM08202203260613065015400"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:50:33,039.039 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'true', 'delay': 0}, 'order_id': 'TM08202203260613065015400'}}
[2026-06-13 06:50:33,042.042 INFO    ] 2026-06-13 06:50:33
[2026-06-13 06:50:33,044.044 INFO    ] None
[2026-06-13 06:50:33,046.046 INFO    ] Opening Door now
[2026-06-13 06:50:33,048.048 INFO    ] Opening Door now
[2026-06-13 06:50:33,051.051 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 06:50:33,054.054 INFO    ] 2026-06-13 06:50:33
[2026-06-13 06:50:33,056.056 INFO    ] playing audio file
[2026-06-13 06:50:33,073.073 INFO    ] 2026-06-13 06:50:33
[2026-06-13 06:50:33,076.076 INFO    ] 2026-06-13 06:50:33
[2026-06-13 06:50:36,146.146 INFO    ] 200
[2026-06-13 06:50:36,149.149 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:50:36,153.153 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Door 1 is open now', 'rstatus': False, 'status': 'False'}
[2026-06-13 06:50:39,200.200 INFO    ] 200
[2026-06-13 06:50:39,201.201 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:50:39,203.203 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False'}
[2026-06-13 06:50:42,263.263 INFO    ] 200
[2026-06-13 06:50:42,265.265 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:50:42,267.267 INFO    ] Please close door 1
[2026-06-13 06:50:42,269.269 INFO    ] Please close door 1
[2026-06-13 06:50:42,270.270 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 06:50:42,272.272 INFO    ] 2026-06-13 06:50:42
[2026-06-13 06:50:42,274.274 INFO    ] playing audio file
[2026-06-13 06:50:42,285.285 INFO    ] 2026-06-13 06:50:42
[2026-06-13 06:50:42,287.287 INFO    ] publish_status: order_id=TM08202203260613065015400
[2026-06-13 06:50:42,289.289 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065015400
[2026-06-13 06:50:42,375.375 INFO    ] [publish_status] Message added to stream with ID: 1781313642343-0
[2026-06-13 06:50:42,377.377 INFO    ] Published to order:TM08202203260613065015400: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "voiceNote": "Please close door 1", "rstatus": false, "status": "False"}', 'timestamp': '2026-06-13T01:20:42.286398Z', 'order_id': 'TM08202203260613065015400'} (ID: 1781313642343-0)
[2026-06-13 06:50:42,691.691 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202203260613065015400'}
[2026-06-13 06:50:42,694.694 INFO    ] 200
[2026-06-13 06:50:42,696.696 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern kitchens Banana Chips 21gm"}]},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"voiceNote":"Please close door 1","rstatus":false,"status":"false"},"order_id":"TM08202203260613065015400"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:50:42,699.699 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'false'}, 'order_id': 'TM08202203260613065015400'}}
[2026-06-13 06:50:42,702.702 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False'}
[2026-06-13 06:50:45,759.759 INFO    ] 200
[2026-06-13 06:50:45,762.762 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:50:45,765.765 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-13 06:50:45,768.768 INFO    ] 2026-06-13 06:50:45
[2026-06-13 06:50:45,771.771 INFO    ] Order Completed 
[2026-06-13 06:50:45,780.780 INFO    ] Order Completed 
[2026-06-13 06:50:45,783.783 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 06:50:45,786.786 INFO    ] 2026-06-13 06:50:45
[2026-06-13 06:50:45,788.788 INFO    ] playing audio file
[2026-06-13 06:50:45,806.806 INFO    ] 2026-06-13 06:50:45
[2026-06-13 06:50:45,810.810 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-13 06:50:45,813.813 INFO    ] 2026-06-13 06:50:45
[2026-06-13 06:50:47,143.143 INFO    ] 200
[2026-06-13 06:50:47,146.146 INFO    ] {"res": "True", "orderId": "TM08202203260613065015400", "skus": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "", "tray_id": "15", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 10.0}
[2026-06-13 06:50:47,149.149 INFO    ] {'logic': 'WBL', 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'unit_price': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '15', 'skuid': '4500647', 'door_id': '', 'sku_total': 10.0}], 'rstatus': True, 'orderId': 'TM08202203260613065015400'}
[2026-06-13 06:50:47,152.152 INFO    ] {'logic': 'WBL', 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'unit_price': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '15', 'skuid': '4500647', 'door_id': '', 'sku_total': 10.0}], 'rstatus': True, 'orderId': 'TM08202203260613065015400'}
[2026-06-13 06:50:47,155.155 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,158.158 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,161.161 INFO    ] 10
[2026-06-13 06:50:47,163.163 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,166.166 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,169.169 INFO    ]  Your Bill Amount is 10
[2026-06-13 06:50:47,172.172 INFO    ]  Your Bill Amount is 10
[2026-06-13 06:50:47,175.175 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-13 06:50:47,177.177 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,181.181 INFO    ] playing audio file
[2026-06-13 06:50:47,200.200 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,203.203 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:47,207.207 INFO    ] publish_status: order_id=TM08202203260613065015400
[2026-06-13 06:50:47,210.210 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065015400
[2026-06-13 06:50:47,288.288 INFO    ] [publish_status] Message added to stream with ID: 1781313647255-0
[2026-06-13 06:50:47,291.291 INFO    ] Published to order:TM08202203260613065015400: {'server_status': 'invoiceOrder', 'server_response': '{"logic": "WBL", "res": "True", "total_amount": 10.0, "anomaly": 0, "skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "unit_price": "10", "name": "Modern kitchens Roasted Channa 32g per peice", "mrp": "10", "tray_id": "15", "skuid": "4500647", "door_id": "", "sku_total": 10.0}], "rstatus": true, "orderId": "TM08202203260613065015400"}', 'timestamp': '2026-06-13T01:20:47.205048Z', 'order_id': 'TM08202203260613065015400'} (ID: 1781313647255-0)
[2026-06-13 06:50:47,407.407 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'unit_price': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'tray_id': '15', 'skuid': '4500647', 'door_id': '', 'sku_total': 10.0}], 'rstatus': True, 'orderId': 'TM08202203260613065015400'}, 'order_id': 'TM08202203260613065015400'}
[2026-06-13 06:50:47,410.410 INFO    ] 200
[2026-06-13 06:50:47,413.413 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"logic":"WBL","res":"true","total_amount":10,"anomaly":0,"skus":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","unit_price":"10","name":"Modern kitchens Roasted Channa 32g per peice","mrp":"10","tray_id":"15","skuid":"4500647","door_id":"","sku_total":10}],"rstatus":true,"orderId":"TM08202203260613065015400"},"order_id":"TM08202203260613065015400"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:50:47,415.415 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'res': 'true', 'total_amount': 10, 'skus': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'unit_price': '10', 'tray_id': '15', 'skuid': '4500647', 'door_id': ''}], 'anomaly': 0, 'rstatus': True, 'orderId': 'TM08202203260613065015400'}, 'order_id': 'TM08202203260613065015400'}}
[2026-06-13 06:50:47,418.418 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'res': 'true', 'total_amount': 10, 'skus': [{'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'unit_price': '10', 'tray_id': '15', 'skuid': '4500647', 'door_id': ''}], 'anomaly': 0, 'rstatus': True, 'orderId': 'TM08202203260613065015400'}, 'order_id': 'TM08202203260613065015400'}}
[2026-06-13 06:50:47,421.421 INFO    ] 2026-06-13 06:50:47
[2026-06-13 06:50:49,689.689 INFO    ] 200
[2026-06-13 06:50:49,692.692 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400", "TM08202203260613065015400"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 06:50:49,695.695 INFO    ] 2026-06-13 06:50:49
[2026-06-13 06:50:49,830.830 INFO    ] 200
[2026-06-13 06:50:49,833.833 INFO    ] True
[2026-06-13 06:50:49,835.835 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613065015400
[2026-06-13 06:50:49,839.839 INFO    ] start order file deleted
[2026-06-13 06:50:49,842.842 INFO    ] Checking for system updates...
[2026-06-13 06:50:49,882.882 INFO    ] 200
[2026-06-13 06:50:49,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:49,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:50:49,955.955 INFO    ] No update needed
[2026-06-13 06:50:49,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 06:50:50,010.010 INFO    ] 200
[2026-06-13 06:50:50,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:50,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:50:50,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:50:50,157.157 INFO    ] No camera update needed
[2026-06-13 06:50:50,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:50:50,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:50:50,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:50:50,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:50:52,219.219 INFO    ] ================================================
[2026-06-13 06:50:52,234.234 INFO    ] Launching Daemon at Sat Jun 13 06:50:52 IST 2026
[2026-06-13 06:50:52,245.245 INFO    ] ================================================
[2026-06-13 06:50:52,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:50:52
[2026-06-13 06:50:52,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:50:53,033.033 INFO    ] Initializing speech engine...
[2026-06-13 06:50:53,046.046 INFO    ] 2026-06-13 06:50:53
[2026-06-13 06:50:53,266.266 INFO    ] 2026-06-13 06:50:53
[2026-06-13 06:50:53,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:50:53,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:50:53,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:50:53,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:50:53,642.642 INFO    ] time= 13/06/2026 06:50:53
[2026-06-13 06:50:53,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:50:53,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:50:53,824.824 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 06:50:53,828.828 INFO    ] Checking historical command: ID=1781313649377-0
[2026-06-13 06:50:53,845.845 INFO    ] process_and_cleanup_command: msg_id=1781313649377-0
[2026-06-13 06:50:53,857.857 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:48.719Z, expiry=30s
[2026-06-13 06:50:53,974.974 INFO    ] Command removed from stream: 1781313649377-0. returning for processing...
[2026-06-13 06:50:53,978.978 INFO    ] ***** get_valid_command
[2026-06-13 06:50:53,981.981 INFO    ] {'data': '{"request_id":"start-order-1781313648719-hbqpq5osh","orderId":"TM08202203260613065003645","is_vending":false}', 'command': 'start-order', 'source': 'webapp', 'timestamp': '2026-06-13T01:20:48.719Z', 'timeout': '10'}
[2026-06-13 06:50:53,985.985 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613065003645', 'request_id': 'start-order-1781313648719-hbqpq5osh', 'is_vending': False}
[2026-06-13 06:50:53,990.990 INFO    ] Handling start order...
[2026-06-13 06:50:53,994.994 INFO    ] handle_start_order_command
[2026-06-13 06:50:54,007.007 INFO    ] _send_start_order_success: request_id=start-order-1781313648719-hbqpq5osh, order_id=TM08202203260613065003645
[2026-06-13 06:50:54,010.010 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 06:50:54,062.062 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781313654030-0
[2026-06-13 06:50:54,066.066 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 06:50:54,069.069 INFO    ] Checking for system updates...
[2026-06-13 06:50:54,098.098 INFO    ] 200
[2026-06-13 06:50:54,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:54,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:54,144.144 INFO    ] No update needed
[2026-06-13 06:50:54,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 06:50:54,217.217 INFO    ] 200
[2026-06-13 06:50:54,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:54,250.250 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:50:54,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:50:54,359.359 INFO    ] No camera update needed
[2026-06-13 06:50:54,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:50:54,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:50:54,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:50:54,380.380 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 06:50:54,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:50:56,420.420 INFO    ] ================================================
[2026-06-13 06:50:56,436.436 INFO    ] Launching Daemon at Sat Jun 13 06:50:56 IST 2026
[2026-06-13 06:50:56,447.447 INFO    ] ================================================
[2026-06-13 06:50:56,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:50:56
[2026-06-13 06:50:57,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:50:57,741.741 INFO    ] Initializing speech engine...
[2026-06-13 06:50:57,754.754 INFO    ] 2026-06-13 06:50:57
[2026-06-13 06:50:58,002.002 INFO    ] 2026-06-13 06:50:57
[2026-06-13 06:50:58,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:50:58,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:50:58,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:50:58,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:50:58,369.369 INFO    ] time= 13/06/2026 06:50:58
[2026-06-13 06:50:58,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:50:58,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:50:58,492.492 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 06:50:58,507.507 INFO    ] Checking historical command: ID=1781313654030-0
[2026-06-13 06:50:58,572.572 INFO    ] process_and_cleanup_command: msg_id=1781313654030-0
[2026-06-13 06:50:58,632.632 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:54.008380Z, expiry=30s
[2026-06-13 06:50:58,739.739 INFO    ] Command removed from stream: 1781313654030-0. returning for processing...
[2026-06-13 06:50:58,747.747 INFO    ] ***** get_valid_command
[2026-06-13 06:50:58,773.773 INFO    ] {'message': 'start-order success', 'timestamp': '2026-06-13T01:20:54.008380Z', 'status': 'success', 'imei': 'TM08202203', 'metadata_order_id': 'TM08202203260613065003645', 'metadata_request_id': 'start-order-1781313648719-hbqpq5osh', 'message_type': 'command_response'}
[2026-06-13 06:50:58,847.847 INFO    ] Checking historical command: ID=1781313656059-0
[2026-06-13 06:50:58,880.880 INFO    ] process_and_cleanup_command: msg_id=1781313656059-0
[2026-06-13 06:50:58,930.930 INFO    ] is_command_expired: timestamp=2026-06-13T01:20:55.406Z, expiry=30s
[2026-06-13 06:50:59,072.072 INFO    ] Command removed from stream: 1781313656059-0. returning for processing...
[2026-06-13 06:50:59,111.111 INFO    ] ***** get_valid_command
[2026-06-13 06:50:59,165.165 INFO    ] {'data': '{"request_id":"process-order-1781313655406-i4ku65k2a","orderId":"TM08202203260613065003645","is_vending":false,"accessCode":"37689019"}', 'timestamp': '2026-06-13T01:20:55.406Z', 'command': 'process-order', 'source': 'webapp', 'timeout': '60'}
[2026-06-13 06:50:59,200.200 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781313655406-i4ku65k2a', 'orderId': 'TM08202203260613065003645', 'is_vending': False, 'accessCode': '37689019'}
[2026-06-13 06:50:59,222.222 INFO    ] Handling process order...
[2026-06-13 06:50:59,225.225 INFO    ] Processing process-order command...
[2026-06-13 06:50:59,238.238 INFO    ] 🔍 Lock file Order ID: TM08202203260613065003645, TS: 2026-06-13 06:50:53
[2026-06-13 06:50:59,251.251 INFO    ] ✅ Order lock valid for TM08202203260613065003645
[2026-06-13 06:50:59,254.254 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 06:50:59,257.257 INFO    ] processing access code 37689019 for order TM08202203260613065003645
[2026-06-13 06:50:59,261.261 INFO    ] 🔍 Lock file Order ID: TM08202203260613065003645, TS: 2026-06-13 06:50:53
[2026-06-13 06:50:59,316.316 INFO    ] ✅ Order lock valid for TM08202203260613065003645
[2026-06-13 06:50:59,370.370 INFO    ] 2026-06-13 06:50:59
[2026-06-13 06:50:59,430.430 INFO    ] 200
[2026-06-13 06:50:59,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:50:59,472.472 INFO    ] 37689019
[2026-06-13 06:50:59,494.494 INFO    ] 2026-06-13 06:50:59
[2026-06-13 06:50:59,498.498 INFO    ] session id :977590993
[2026-06-13 06:50:59,501.501 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=37689019&imei=TM08202203&session_id=977590993
[2026-06-13 06:51:00,065.065 INFO    ] 200
[2026-06-13 06:51:00,071.071 INFO    ] {"data": {"mobile": "8768026072", "order_id": "TM08202203260613065003645", "bill_amount": "90.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Rite Bite Sports Bar 40gm", "tray_id": "36", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "37689019", "invoice_bill": "90.0"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 06:51:00,074.074 INFO    ] 90
[2026-06-13 06:51:00,124.124 INFO    ] TM08202203260613065003645
[2026-06-13 06:51:00,127.127 INFO    ] 8768026072
[2026-06-13 06:51:00,156.156 INFO    ] 2026-06-13 06:51:00
[2026-06-13 06:51:00,184.184 INFO    ] Door Opening for user mobile ending with  six zero seven two 
[2026-06-13 06:51:00,189.189 INFO    ] Door Opening for user mobile ending with  six zero seven two 
[2026-06-13 06:51:00,195.195 INFO    ] 050e5f33f8ebbc38b209c8d8e85845b4
[2026-06-13 06:51:00,201.201 INFO    ] 2026-06-13 06:51:00
[2026-06-13 06:51:00,206.206 INFO    ] playing audio file
[2026-06-13 06:51:00,230.230 INFO    ] 2026-06-13 06:51:00
[2026-06-13 06:51:00,238.238 INFO    ] 2026-06-13 06:51:00
[2026-06-13 06:51:00,257.257 INFO    ] publish_status: order_id=TM08202203260613065003645
[2026-06-13 06:51:00,262.262 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065003645
[2026-06-13 06:51:00,384.384 INFO    ] [publish_status] Message added to stream with ID: 1781313660313-0
[2026-06-13 06:51:00,396.396 INFO    ] Published to order:TM08202203260613065003645: {'order_id': 'TM08202203260613065003645', 'timestamp': '2026-06-13T01:21:00.241342Z', 'server_status': 'order-started', 'server_response': '{"msg": "Order Data", "rstatus": true, "status": true, "data": {"mobile": "8768026072", "proposed_sku_json": [{"qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "offer_desc": "", "offer_id": "", "sku_total": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "mrp": "30", "door_id": "2", "unit_price": 30}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "offer_desc": "", "offer_id": "", "sku_total": 20, "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "mrp": "20", "door_id": "2", "unit_price": 20}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "offer_desc": "", "offer_id": "", "sku_total": 40, "name": "Rite Bite Sports Bar 40gm", "tray_id": "36", "mrp": "40", "door_id": "2", "unit_price": 40}], "bill_amount": "90.0", "order_id": "TM08202203260613065003645", "access_code": "37689019", "invoice_bill": "90.0"}}'} (ID: 1781313660313-0)
[2026-06-13 06:51:00,821.821 INFO    ] {'order_id': 'TM08202203260613065003645', 'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'mobile': '8768026072', 'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_desc': '', 'offer_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '40', 'mrp': '30', 'door_id': '2', 'unit_price': 30}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_desc': '', 'offer_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'tray_id': '39', 'mrp': '20', 'door_id': '2', 'unit_price': 20}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_desc': '', 'offer_id': '', 'sku_total': 40, 'name': 'Rite Bite Sports Bar 40gm', 'tray_id': '36', 'mrp': '40', 'door_id': '2', 'unit_price': 40}], 'bill_amount': '90.0', 'order_id': 'TM08202203260613065003645', 'access_code': '37689019', 'invoice_bill': '90.0'}}}
[2026-06-13 06:51:00,831.831 INFO    ] 200
[2026-06-13 06:51:00,836.836 INFO    ] {"data":{"order_id":"TM08202203260613065003645","server_status":"order-started","server_response":{"msg":"Order Data","rstatus":true,"status":true,"data":{"mobile":"8768026072","proposed_sku_json":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","skuid":"186084","offer_desc":"","offer_id":"","sku_total":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"40","mrp":"30","door_id":"2","unit_price":30},{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","skuid":"4500541","offer_desc":"","offer_id":"","sku_total":20,"name":"Cad bury Dairy Milk Chocolate 18gm","tray_id":"39","mrp":"20","door_id":"2","unit_price":20},{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","skuid":"4500669","offer_desc":"","offer_id":"","sku_total":40,"name":"Rite Bite Sports Bar 40gm","tray_id":"36","mrp":"40","door_id":"2","unit_price":40}],"bill_amount":"90.0","order_id":"TM08202203260613065003645","access_code":"37689019","invoice_bill":"90.0"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:51:00,842.842 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613065003645', 'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'mobile': '8768026072', 'proposed_sku_json': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_desc': '', 'offer_id': '', 'sku_total': 30, 'tray_id': '40', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'mrp': '30', 'door_id': '2', 'unit_price': 30}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_desc': '', 'offer_id': '', 'sku_total': 20, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'mrp': '20', 'door_id': '2', 'unit_price': 20}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_desc': '', 'offer_id': '', 'sku_total': 40, 'tray_id': '36', 'name': 'Rite Bite Sports Bar 40gm', 'mrp': '40', 'door_id': '2', 'unit_price': 40}], 'bill_amount': '90.0', 'order_id': 'TM08202203260613065003645', 'access_code': '37689019', 'invoice_bill': '90.0'}}}}
[2026-06-13 06:51:00,848.848 INFO    ] 2026-06-13 06:51:00
[2026-06-13 06:51:00,903.903 INFO    ] 200
[2026-06-13 06:51:00,926.926 INFO    ] True
[2026-06-13 06:51:01,097.097 INFO    ] 200
[2026-06-13 06:51:01,124.124 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 06:51:01,131.131 INFO    ] {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}
[2026-06-13 06:51:01,137.137 INFO    ] *** process_order ***
[2026-06-13 06:51:02,463.463 INFO    ] 200
[2026-06-13 06:51:02,466.466 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:51:02,470.470 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}
[2026-06-13 06:51:02,473.473 INFO    ] *** process_order ***
[2026-06-13 06:51:02,476.476 INFO    ] publish_status: order_id=TM08202203260613065003645
[2026-06-13 06:51:02,479.479 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065003645
[2026-06-13 06:51:02,558.558 INFO    ] [publish_status] Message added to stream with ID: 1781313662525-0
[2026-06-13 06:51:02,561.561 INFO    ] Published to order:TM08202203260613065003645: {'order_id': 'TM08202203260613065003645', 'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open...", "SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}}'} (ID: 1781313662525-0)
[2026-06-13 06:51:03,607.607 INFO    ] 2026-06-13 06:51:03
[2026-06-13 06:51:03,613.613 INFO    ] publish_status: order_id=TM08202203260613065003645
[2026-06-13 06:51:03,616.616 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065003645
[2026-06-13 06:51:03,661.661 INFO    ] [publish_status] Message added to stream with ID: 1781313663628-0
[2026-06-13 06:51:03,664.664 INFO    ] Published to order:TM08202203260613065003645: {'order_id': 'TM08202203260613065003645', 'timestamp': '2026-06-13T01:21:03.608991Z', 'server_status': 'processOrder', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait", "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}}'} (ID: 1781313663628-0)
[2026-06-13 06:51:03,765.765 INFO    ] {'order_id': 'TM08202203260613065003645', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}}
[2026-06-13 06:51:03,768.768 INFO    ] 200
[2026-06-13 06:51:03,770.770 INFO    ] {"data":{"order_id":"TM08202203260613065003645","server_status":"processOrder","server_response":{"rstatus":true,"SectionMain":{"Header":"Processing Order"},"delay":0,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"voiceNote":"Please Wait","SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:51:03,774.774 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613065003645', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}}}
[2026-06-13 06:51:03,776.776 INFO    ] 2026-06-13 06:51:03
[2026-06-13 06:51:03,779.779 INFO    ] None
[2026-06-13 06:51:03,782.782 INFO    ] Opening Door now
[2026-06-13 06:51:03,785.785 INFO    ] Opening Door now
[2026-06-13 06:51:03,787.787 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 06:51:03,790.790 INFO    ] 2026-06-13 06:51:03
[2026-06-13 06:51:03,793.793 INFO    ] playing audio file
[2026-06-13 06:51:03,811.811 INFO    ] 2026-06-13 06:51:03
[2026-06-13 06:51:03,822.822 INFO    ] 2026-06-13 06:51:03
[2026-06-13 06:51:06,880.880 INFO    ] 200
[2026-06-13 06:51:06,882.882 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:51:06,884.884 INFO    ] {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-13 06:51:09,916.916 INFO    ] 200
[2026-06-13 06:51:09,918.918 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:51:09,919.919 INFO    ] {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-13 06:51:12,965.965 INFO    ] 200
[2026-06-13 06:51:12,967.967 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:51:12,969.969 INFO    ] Please close door 2
[2026-06-13 06:51:12,970.970 INFO    ] Please close door 2
[2026-06-13 06:51:12,972.972 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 06:51:12,974.974 INFO    ] 2026-06-13 06:51:12
[2026-06-13 06:51:12,975.975 INFO    ] playing audio file
[2026-06-13 06:51:12,989.989 INFO    ] 2026-06-13 06:51:12
[2026-06-13 06:51:12,992.992 INFO    ] publish_status: order_id=TM08202203260613065003645
[2026-06-13 06:51:12,994.994 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065003645
[2026-06-13 06:51:13,074.074 INFO    ] [publish_status] Message added to stream with ID: 1781313673040-0
[2026-06-13 06:51:13,078.078 INFO    ] Published to order:TM08202203260613065003645: {'order_id': 'TM08202203260613065003645', 'timestamp': '2026-06-13T01:21:12.990986Z', 'server_status': 'OrderStatus', 'server_response': '{"rstatus": false, "status": "False", "SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "voiceNote": "Please close door 2", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}}'} (ID: 1781313673040-0)
[2026-06-13 06:51:13,411.411 INFO    ] {'order_id': 'TM08202203260613065003645', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}}
[2026-06-13 06:51:13,413.413 INFO    ] 200
[2026-06-13 06:51:13,414.414 INFO    ] {"data":{"order_id":"TM08202203260613065003645","server_status":"OrderStatus","server_response":{"rstatus":false,"status":"false","SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"Rite Bite Sports Bar 40gm"}]},"voiceNote":"Please close door 2","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:51:13,416.416 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613065003645', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}}}
[2026-06-13 06:51:13,418.418 INFO    ] {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-13 06:51:16,489.489 INFO    ] 200
[2026-06-13 06:51:16,493.493 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 06:51:16,496.496 INFO    ] {'rstatus': False, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-13 06:51:19,576.576 INFO    ] 200
[2026-06-13 06:51:19,580.580 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 06:51:19,583.583 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}}
[2026-06-13 06:51:19,587.587 INFO    ] 2026-06-13 06:51:19
[2026-06-13 06:51:19,590.590 INFO    ] Order Completed 
[2026-06-13 06:51:19,593.593 INFO    ] Order Completed 
[2026-06-13 06:51:19,597.597 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 06:51:19,600.600 INFO    ] 2026-06-13 06:51:19
[2026-06-13 06:51:19,603.603 INFO    ] playing audio file
[2026-06-13 06:51:19,623.623 INFO    ] 2026-06-13 06:51:19
[2026-06-13 06:51:19,627.627 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}}
[2026-06-13 06:51:19,631.631 INFO    ] 2026-06-13 06:51:19
[2026-06-13 06:51:20,126.126 INFO    ] 200
[2026-06-13 06:51:20,130.130 INFO    ] {"res": true, "bill_amount": 90, "orderId": "TM08202203260613065003645", "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": "40", "door_id": "", "mrp": "40", "name": "Rite Bite Sports Bar 40gm per peice", "skuid": "4500669", "tray_id": "36", "sku_total": 40, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": "20", "door_id": "", "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "skuid": "4500541", "tray_id": "39", "sku_total": 20, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "door_id": "", "mrp": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "tray_id": "40", "sku_total": 30, "qty": 1, "offer_id": ""}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 90, "order_status": "", "userId": "8768026072", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 06:51:20,134.134 INFO    ] {'anomaly': 0, 'userId': '8768026072', 'orderId': 'TM08202203260613065003645', 'total_amount': 90, 'bill_amount': 90, 'imei': 'TM08202203', 'rstatus': True, 'cart_offer_desc': '', 'res': True, 'order_status': '', 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_id': '', 'sku_total': 40, 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'mrp': '40', 'door_id': '', 'unit_price': '40'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '39', 'mrp': '20', 'door_id': '', 'unit_price': '20'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30', 'door_id': '', 'unit_price': '30'}]}
[2026-06-13 06:51:20,138.138 INFO    ] {'anomaly': 0, 'userId': '8768026072', 'orderId': 'TM08202203260613065003645', 'total_amount': 90, 'bill_amount': 90, 'imei': 'TM08202203', 'rstatus': True, 'cart_offer_desc': '', 'res': True, 'order_status': '', 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_id': '', 'sku_total': 40, 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'mrp': '40', 'door_id': '', 'unit_price': '40'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '39', 'mrp': '20', 'door_id': '', 'unit_price': '20'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30', 'door_id': '', 'unit_price': '30'}]}
[2026-06-13 06:51:20,142.142 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,145.145 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,148.148 INFO    ] 90
[2026-06-13 06:51:20,152.152 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,156.156 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,159.159 INFO    ]  Your Bill Amount is 90
[2026-06-13 06:51:20,163.163 INFO    ]  Your Bill Amount is 90
[2026-06-13 06:51:20,166.166 INFO    ] 10d8868d37637f765a92eeedfa25be6d
[2026-06-13 06:51:20,171.171 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,174.174 INFO    ] playing audio file
[2026-06-13 06:51:20,202.202 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,206.206 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:20,210.210 INFO    ] publish_status: order_id=TM08202203260613065003645
[2026-06-13 06:51:20,214.214 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613065003645
[2026-06-13 06:51:20,297.297 INFO    ] [publish_status] Message added to stream with ID: 1781313680263-0
[2026-06-13 06:51:20,300.300 INFO    ] Published to order:TM08202203260613065003645: {'order_id': 'TM08202203260613065003645', 'timestamp': '2026-06-13T01:21:20.208502Z', 'server_status': 'invoiceOrder', 'server_response': '{"anomaly": 0, "userId": "8768026072", "orderId": "TM08202203260613065003645", "total_amount": 90, "bill_amount": 90, "imei": "TM08202203", "rstatus": true, "cart_offer_desc": "", "res": true, "order_status": "", "skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "offer_id": "", "sku_total": 40, "name": "Rite Bite Sports Bar 40gm per peice", "tray_id": "36", "mrp": "40", "door_id": "", "unit_price": "40"}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "offer_id": "", "sku_total": 20, "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "tray_id": "39", "mrp": "20", "door_id": "", "unit_price": "20"}, {"qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "offer_id": "", "sku_total": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "tray_id": "40", "mrp": "30", "door_id": "", "unit_price": "30"}]}'} (ID: 1781313680263-0)
[2026-06-13 06:51:20,644.644 INFO    ] {'order_id': 'TM08202203260613065003645', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'userId': '8768026072', 'orderId': 'TM08202203260613065003645', 'total_amount': 90, 'bill_amount': 90, 'imei': 'TM08202203', 'rstatus': True, 'cart_offer_desc': '', 'res': True, 'order_status': '', 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_id': '', 'sku_total': 40, 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'mrp': '40', 'door_id': '', 'unit_price': '40'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_id': '', 'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '39', 'mrp': '20', 'door_id': '', 'unit_price': '20'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_id': '', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'mrp': '30', 'door_id': '', 'unit_price': '30'}]}}
[2026-06-13 06:51:20,645.645 INFO    ] 200
[2026-06-13 06:51:20,647.647 INFO    ] {"data":{"order_id":"TM08202203260613065003645","server_status":"invoiceOrder","server_response":{"anomaly":0,"userId":"8768026072","orderId":"TM08202203260613065003645","total_amount":90,"bill_amount":90,"imei":"TM08202203","rstatus":true,"cart_offer_desc":"","res":true,"order_status":"","skus":[{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","skuid":"4500669","offer_id":"","sku_total":40,"name":"Rite Bite Sports Bar 40gm per peice","tray_id":"36","mrp":"40","door_id":"","unit_price":"40"},{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","skuid":"4500541","offer_id":"","sku_total":20,"name":"Cad bury Dairy Milk Chocolate 18gm per peice","tray_id":"39","mrp":"20","door_id":"","unit_price":"20"},{"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","skuid":"186084","offer_id":"","sku_total":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","tray_id":"40","mrp":"30","door_id":"","unit_price":"30"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 06:51:20,649.649 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613065003645', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'userId': '8768026072', 'orderId': 'TM08202203260613065003645', 'res': True, 'bill_amount': 90, 'imei': 'TM08202203', 'order_status': '', 'cart_offer_desc': '', 'total_amount': 90, 'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_id': '', 'sku_total': 40, 'tray_id': '36', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40', 'door_id': '', 'unit_price': '40'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_id': '', 'sku_total': 20, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'mrp': '20', 'door_id': '', 'unit_price': '20'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_id': '', 'sku_total': 30, 'tray_id': '40', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30', 'door_id': '', 'unit_price': '30'}]}}}
[2026-06-13 06:51:20,651.651 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613065003645', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'userId': '8768026072', 'orderId': 'TM08202203260613065003645', 'res': True, 'bill_amount': 90, 'imei': 'TM08202203', 'order_status': '', 'cart_offer_desc': '', 'total_amount': 90, 'rstatus': True, 'skus': [{'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'skuid': '4500669', 'offer_id': '', 'sku_total': 40, 'tray_id': '36', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40', 'door_id': '', 'unit_price': '40'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'skuid': '4500541', 'offer_id': '', 'sku_total': 20, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'mrp': '20', 'door_id': '', 'unit_price': '20'}, {'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'offer_id': '', 'sku_total': 30, 'tray_id': '40', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30', 'door_id': '', 'unit_price': '30'}]}}}
[2026-06-13 06:51:20,652.652 INFO    ] 2026-06-13 06:51:20
[2026-06-13 06:51:23,640.640 INFO    ] 200
[2026-06-13 06:51:23,642.642 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645", "TM08202203260613065003645"], "orders_synced": [], "order_items_synced": ["TM08202203260613065003645_0", "TM08202203260613065003645_1", "TM08202203260613065003645_2"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 06:51:23,645.645 INFO    ] 2026-06-13 06:51:23
[2026-06-13 06:51:23,858.858 INFO    ] 200
[2026-06-13 06:51:23,860.860 INFO    ] True
[2026-06-13 06:51:23,863.863 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613065003645
[2026-06-13 06:51:23,866.866 INFO    ] start order file deleted
[2026-06-13 06:51:23,869.869 INFO    ] Checking for system updates...
[2026-06-13 06:51:23,905.905 INFO    ] 200
[2026-06-13 06:51:23,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:23,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:51:23,976.976 INFO    ] No update needed
[2026-06-13 06:51:23,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 06:51:24,013.013 INFO    ] 200
[2026-06-13 06:51:24,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:24,058.058 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:51:24,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:51:24,090.090 INFO    ] No camera update needed
[2026-06-13 06:51:24,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:51:24,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:51:24,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:51:24,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:51:26,147.147 INFO    ] ================================================
[2026-06-13 06:51:26,162.162 INFO    ] Launching Daemon at Sat Jun 13 06:51:26 IST 2026
[2026-06-13 06:51:26,173.173 INFO    ] ================================================
[2026-06-13 06:51:26,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:51:26
[2026-06-13 06:51:26,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:51:26,994.994 INFO    ] Initializing speech engine...
[2026-06-13 06:51:26,999.999 INFO    ] 2026-06-13 06:51:26
[2026-06-13 06:51:27,229.229 INFO    ] 2026-06-13 06:51:27
[2026-06-13 06:51:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:51:27,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:51:27,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:51:27,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:51:27,623.623 INFO    ] time= 13/06/2026 06:51:27
[2026-06-13 06:51:27,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:51:27,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:51:27,779.779 INFO    ] No existing commands found in stream
[2026-06-13 06:51:32,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:51:32,791.791 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 06:51:33,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:51:33,336.336 INFO    ] Checking for system updates...
[2026-06-13 06:51:33,356.356 INFO    ] 200
[2026-06-13 06:51:33,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:33,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:51:33,392.392 INFO    ] No update needed
[2026-06-13 06:51:33,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 06:51:33,430.430 INFO    ] 200
[2026-06-13 06:51:33,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:33,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:51:33,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:51:33,507.507 INFO    ] No camera update needed
[2026-06-13 06:51:33,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:51:33,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:51:33,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:51:33,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:51:35,555.555 INFO    ] ================================================
[2026-06-13 06:51:35,571.571 INFO    ] Launching Daemon at Sat Jun 13 06:51:35 IST 2026
[2026-06-13 06:51:35,582.582 INFO    ] ================================================
[2026-06-13 06:51:35,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:51:35
[2026-06-13 06:51:36,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:51:36,374.374 INFO    ] Initializing speech engine...
[2026-06-13 06:51:36,384.384 INFO    ] 2026-06-13 06:51:36
[2026-06-13 06:51:36,602.602 INFO    ] 2026-06-13 06:51:36
[2026-06-13 06:51:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:51:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:51:36,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:51:36,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:51:36,981.981 INFO    ] time= 13/06/2026 06:51:36
[2026-06-13 06:51:36,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:51:37,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:51:37,163.163 INFO    ] No existing commands found in stream
[2026-06-13 06:51:42,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:51:42,175.175 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 06:51:43,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:51:43,002.002 INFO    ] Checking for system updates...
[2026-06-13 06:51:43,023.023 INFO    ] 200
[2026-06-13 06:51:43,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:43,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:51:43,057.057 INFO    ] No update needed
[2026-06-13 06:51:43,059.059 INFO    ] Checking for camera pi updates...
[2026-06-13 06:51:43,080.080 INFO    ] 200
[2026-06-13 06:51:43,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:43,107.107 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:51:43,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:51:43,155.155 INFO    ] No camera update needed
[2026-06-13 06:51:43,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:51:43,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:51:43,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:51:43,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:51:45,205.205 INFO    ] ================================================
[2026-06-13 06:51:45,220.220 INFO    ] Launching Daemon at Sat Jun 13 06:51:45 IST 2026
[2026-06-13 06:51:45,231.231 INFO    ] ================================================
[2026-06-13 06:51:45,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:51:45
[2026-06-13 06:51:46,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:51:46,610.610 INFO    ] Initializing speech engine...
[2026-06-13 06:51:46,616.616 INFO    ] 2026-06-13 06:51:46
[2026-06-13 06:51:46,909.909 INFO    ] 2026-06-13 06:51:46
[2026-06-13 06:51:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:51:47,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:51:47,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:51:47,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:51:47,263.263 INFO    ] time= 13/06/2026 06:51:47
[2026-06-13 06:51:47,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:51:47,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:51:47,343.343 INFO    ] No existing commands found in stream
[2026-06-13 06:51:52,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:51:52,356.356 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 06:51:53,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:51:53,598.598 INFO    ] Checking for system updates...
[2026-06-13 06:51:53,620.620 INFO    ] 200
[2026-06-13 06:51:53,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:53,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:51:53,655.655 INFO    ] No update needed
[2026-06-13 06:51:53,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 06:51:53,676.676 INFO    ] 200
[2026-06-13 06:51:53,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:51:53,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:51:53,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:51:53,743.743 INFO    ] No camera update needed
[2026-06-13 06:51:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:51:53,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:51:53,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:51:53,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:51:55,791.791 INFO    ] ================================================
[2026-06-13 06:51:55,806.806 INFO    ] Launching Daemon at Sat Jun 13 06:51:55 IST 2026
[2026-06-13 06:51:55,817.817 INFO    ] ================================================
[2026-06-13 06:51:56,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:51:56
[2026-06-13 06:51:56,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:51:56,630.630 INFO    ] Initializing speech engine...
[2026-06-13 06:51:56,644.644 INFO    ] 2026-06-13 06:51:56
[2026-06-13 06:51:56,853.853 INFO    ] 2026-06-13 06:51:56
[2026-06-13 06:51:56,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:51:57,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:51:57,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:51:57,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:51:57,250.250 INFO    ] time= 13/06/2026 06:51:57
[2026-06-13 06:51:57,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:51:57,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:51:57,378.378 INFO    ] No existing commands found in stream
[2026-06-13 06:52:02,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:02,391.391 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 06:52:03,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:52:03,961.961 INFO    ] Checking for system updates...
[2026-06-13 06:52:04,002.002 INFO    ] 200
[2026-06-13 06:52:04,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:04,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:04,069.069 INFO    ] No update needed
[2026-06-13 06:52:04,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:04,116.116 INFO    ] 200
[2026-06-13 06:52:04,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:04,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:04,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:04,221.221 INFO    ] No camera update needed
[2026-06-13 06:52:04,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:04,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:04,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:04,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:52:06,277.277 INFO    ] ================================================
[2026-06-13 06:52:06,293.293 INFO    ] Launching Daemon at Sat Jun 13 06:52:06 IST 2026
[2026-06-13 06:52:06,304.304 INFO    ] ================================================
[2026-06-13 06:52:06,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:52:06
[2026-06-13 06:52:06,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:52:07,104.104 INFO    ] Initializing speech engine...
[2026-06-13 06:52:07,111.111 INFO    ] 2026-06-13 06:52:07
[2026-06-13 06:52:07,310.310 INFO    ] 2026-06-13 06:52:07
[2026-06-13 06:52:07,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:52:07,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:52:07,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:52:07,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:52:07,611.611 INFO    ] time= 13/06/2026 06:52:07
[2026-06-13 06:52:07,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:52:07,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:52:07,787.787 INFO    ] No existing commands found in stream
[2026-06-13 06:52:12,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:12,815.815 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 06:52:13,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:52:13,368.368 INFO    ] Checking for system updates...
[2026-06-13 06:52:13,390.390 INFO    ] 200
[2026-06-13 06:52:13,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:13,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:52:13,424.424 INFO    ] No update needed
[2026-06-13 06:52:13,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:13,444.444 INFO    ] 200
[2026-06-13 06:52:13,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:13,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:13,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:52:13,510.510 INFO    ] No camera update needed
[2026-06-13 06:52:13,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:13,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:13,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:13,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:52:15,560.560 INFO    ] ================================================
[2026-06-13 06:52:15,575.575 INFO    ] Launching Daemon at Sat Jun 13 06:52:15 IST 2026
[2026-06-13 06:52:15,586.586 INFO    ] ================================================
[2026-06-13 06:52:15,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:52:15
[2026-06-13 06:52:16,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:52:16,375.375 INFO    ] Initializing speech engine...
[2026-06-13 06:52:16,379.379 INFO    ] 2026-06-13 06:52:16
[2026-06-13 06:52:16,597.597 INFO    ] 2026-06-13 06:52:16
[2026-06-13 06:52:16,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:52:16,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:52:16,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:52:16,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:52:16,996.996 INFO    ] time= 13/06/2026 06:52:16
[2026-06-13 06:52:17,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:52:17,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:52:17,117.117 INFO    ] No existing commands found in stream
[2026-06-13 06:52:22,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:22,131.131 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 06:52:23,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:52:23,030.030 INFO    ] Checking for system updates...
[2026-06-13 06:52:23,052.052 INFO    ] 200
[2026-06-13 06:52:23,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:23,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:23,085.085 INFO    ] No update needed
[2026-06-13 06:52:23,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:23,111.111 INFO    ] 200
[2026-06-13 06:52:23,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:23,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:23,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:23,184.184 INFO    ] No camera update needed
[2026-06-13 06:52:23,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:23,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:23,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:23,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:52:25,232.232 INFO    ] ================================================
[2026-06-13 06:52:25,247.247 INFO    ] Launching Daemon at Sat Jun 13 06:52:25 IST 2026
[2026-06-13 06:52:25,259.259 INFO    ] ================================================
[2026-06-13 06:52:25,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:52:25
[2026-06-13 06:52:25,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:52:26,103.103 INFO    ] Initializing speech engine...
[2026-06-13 06:52:26,109.109 INFO    ] 2026-06-13 06:52:26
[2026-06-13 06:52:26,319.319 INFO    ] 2026-06-13 06:52:26
[2026-06-13 06:52:26,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:52:26,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:52:26,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:52:26,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:52:26,737.737 INFO    ] time= 13/06/2026 06:52:26
[2026-06-13 06:52:26,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:52:26,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:52:26,843.843 INFO    ] No existing commands found in stream
[2026-06-13 06:52:31,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:31,855.855 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 06:52:35,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:52:35,941.941 INFO    ] Checking for system updates...
[2026-06-13 06:52:35,963.963 INFO    ] 200
[2026-06-13 06:52:35,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:35,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:52:35,999.999 INFO    ] No update needed
[2026-06-13 06:52:36,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:36,022.022 INFO    ] 200
[2026-06-13 06:52:36,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:36,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:36,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:52:36,088.088 INFO    ] No camera update needed
[2026-06-13 06:52:36,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:36,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:36,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:36,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:52:38,139.139 INFO    ] ================================================
[2026-06-13 06:52:38,154.154 INFO    ] Launching Daemon at Sat Jun 13 06:52:38 IST 2026
[2026-06-13 06:52:38,165.165 INFO    ] ================================================
[2026-06-13 06:52:38,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:52:38
[2026-06-13 06:52:38,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:52:38,974.974 INFO    ] Initializing speech engine...
[2026-06-13 06:52:38,987.987 INFO    ] 2026-06-13 06:52:38
[2026-06-13 06:52:39,206.206 INFO    ] 2026-06-13 06:52:39
[2026-06-13 06:52:39,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:52:39,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:52:39,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:52:39,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:52:39,613.613 INFO    ] time= 13/06/2026 06:52:39
[2026-06-13 06:52:39,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:52:39,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:52:39,723.723 INFO    ] No existing commands found in stream
[2026-06-13 06:52:44,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:44,734.734 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 06:52:47,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:52:47,537.537 INFO    ] Checking for system updates...
[2026-06-13 06:52:47,559.559 INFO    ] 200
[2026-06-13 06:52:47,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:47,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:47,592.592 INFO    ] No update needed
[2026-06-13 06:52:47,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:47,612.612 INFO    ] 200
[2026-06-13 06:52:47,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:47,638.638 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:47,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:47,681.681 INFO    ] No camera update needed
[2026-06-13 06:52:47,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:47,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:47,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:47,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:52:49,729.729 INFO    ] ================================================
[2026-06-13 06:52:49,744.744 INFO    ] Launching Daemon at Sat Jun 13 06:52:49 IST 2026
[2026-06-13 06:52:49,755.755 INFO    ] ================================================
[2026-06-13 06:52:50,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:52:50
[2026-06-13 06:52:50,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:52:50,576.576 INFO    ] Initializing speech engine...
[2026-06-13 06:52:50,580.580 INFO    ] 2026-06-13 06:52:50
[2026-06-13 06:52:50,786.786 INFO    ] 2026-06-13 06:52:50
[2026-06-13 06:52:50,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:52:50,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:52:51,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:52:51,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:52:51,197.197 INFO    ] time= 13/06/2026 06:52:51
[2026-06-13 06:52:51,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:52:51,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:52:51,307.307 INFO    ] No existing commands found in stream
[2026-06-13 06:52:56,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:52:56,320.320 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 06:52:58,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:52:58,369.369 INFO    ] Checking for system updates...
[2026-06-13 06:52:58,395.395 INFO    ] 200
[2026-06-13 06:52:58,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:58,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:58,429.429 INFO    ] No update needed
[2026-06-13 06:52:58,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 06:52:58,450.450 INFO    ] 200
[2026-06-13 06:52:58,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:52:58,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:52:58,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:52:58,514.514 INFO    ] No camera update needed
[2026-06-13 06:52:58,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:52:58,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:52:58,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:52:58,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:53:00,561.561 INFO    ] ================================================
[2026-06-13 06:53:00,577.577 INFO    ] Launching Daemon at Sat Jun 13 06:53:00 IST 2026
[2026-06-13 06:53:00,588.588 INFO    ] ================================================
[2026-06-13 06:53:00,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:53:00
[2026-06-13 06:53:01,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:53:01,467.467 INFO    ] Initializing speech engine...
[2026-06-13 06:53:01,473.473 INFO    ] 2026-06-13 06:53:01
[2026-06-13 06:53:01,683.683 INFO    ] 2026-06-13 06:53:01
[2026-06-13 06:53:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:53:01,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:53:01,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:53:01,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:53:02,025.025 INFO    ] time= 13/06/2026 06:53:01
[2026-06-13 06:53:02,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:53:02,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:53:02,205.205 INFO    ] No existing commands found in stream
[2026-06-13 06:53:07,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:53:07,238.238 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 06:53:11,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:53:11,497.497 INFO    ] Checking for system updates...
[2026-06-13 06:53:11,518.518 INFO    ] 200
[2026-06-13 06:53:11,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:11,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:11,552.552 INFO    ] No update needed
[2026-06-13 06:53:11,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 06:53:11,572.572 INFO    ] 200
[2026-06-13 06:53:11,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:11,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:53:11,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:11,641.641 INFO    ] No camera update needed
[2026-06-13 06:53:11,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:53:11,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:53:11,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:53:11,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:53:13,688.688 INFO    ] ================================================
[2026-06-13 06:53:13,703.703 INFO    ] Launching Daemon at Sat Jun 13 06:53:13 IST 2026
[2026-06-13 06:53:13,715.715 INFO    ] ================================================
[2026-06-13 06:53:14,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:53:14
[2026-06-13 06:53:14,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:53:14,510.510 INFO    ] Initializing speech engine...
[2026-06-13 06:53:14,513.513 INFO    ] 2026-06-13 06:53:14
[2026-06-13 06:53:14,746.746 INFO    ] 2026-06-13 06:53:14
[2026-06-13 06:53:14,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:53:14,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:53:14,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:53:15,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:53:15,189.189 INFO    ] time= 13/06/2026 06:53:15
[2026-06-13 06:53:15,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:53:15,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:53:15,317.317 INFO    ] No existing commands found in stream
[2026-06-13 06:53:20,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:53:20,327.327 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 06:53:23,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:53:23,838.838 INFO    ] Checking for system updates...
[2026-06-13 06:53:23,860.860 INFO    ] 200
[2026-06-13 06:53:23,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:23,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:23,893.893 INFO    ] No update needed
[2026-06-13 06:53:23,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 06:53:23,914.914 INFO    ] 200
[2026-06-13 06:53:23,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:23,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:53:23,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:23,977.977 INFO    ] No camera update needed
[2026-06-13 06:53:23,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:53:23,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:53:23,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:53:23,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:53:26,024.024 INFO    ] ================================================
[2026-06-13 06:53:26,042.042 INFO    ] Launching Daemon at Sat Jun 13 06:53:26 IST 2026
[2026-06-13 06:53:26,053.053 INFO    ] ================================================
[2026-06-13 06:53:26,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:53:26
[2026-06-13 06:53:26,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:53:26,851.851 INFO    ] Initializing speech engine...
[2026-06-13 06:53:26,865.865 INFO    ] 2026-06-13 06:53:26
[2026-06-13 06:53:27,083.083 INFO    ] 2026-06-13 06:53:27
[2026-06-13 06:53:27,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:53:27,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:53:27,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:53:27,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:53:27,510.510 INFO    ] time= 13/06/2026 06:53:27
[2026-06-13 06:53:27,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:53:27,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:53:27,643.643 INFO    ] No existing commands found in stream
[2026-06-13 06:53:32,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:53:32,654.654 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 06:53:34,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:53:34,456.456 INFO    ] Checking for system updates...
[2026-06-13 06:53:34,485.485 INFO    ] 200
[2026-06-13 06:53:34,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:34,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:53:34,518.518 INFO    ] No update needed
[2026-06-13 06:53:34,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 06:53:34,539.539 INFO    ] 200
[2026-06-13 06:53:34,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:34,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:53:34,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:34,602.602 INFO    ] No camera update needed
[2026-06-13 06:53:34,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:53:34,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:53:34,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:53:34,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:53:36,650.650 INFO    ] ================================================
[2026-06-13 06:53:36,666.666 INFO    ] Launching Daemon at Sat Jun 13 06:53:36 IST 2026
[2026-06-13 06:53:36,677.677 INFO    ] ================================================
[2026-06-13 06:53:37,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:53:37
[2026-06-13 06:53:37,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:53:37,956.956 INFO    ] Initializing speech engine...
[2026-06-13 06:53:37,963.963 INFO    ] 2026-06-13 06:53:37
[2026-06-13 06:53:38,239.239 INFO    ] 2026-06-13 06:53:38
[2026-06-13 06:53:38,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:53:38,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:53:38,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:53:38,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:53:38,730.730 INFO    ] time= 13/06/2026 06:53:38
[2026-06-13 06:53:38,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:53:38,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:53:38,943.943 INFO    ] No existing commands found in stream
[2026-06-13 06:53:43,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:53:43,972.972 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 06:53:48,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:53:48,271.271 INFO    ] Checking for system updates...
[2026-06-13 06:53:48,309.309 INFO    ] 200
[2026-06-13 06:53:48,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:48,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:48,378.378 INFO    ] No update needed
[2026-06-13 06:53:48,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 06:53:48,412.412 INFO    ] 200
[2026-06-13 06:53:48,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:48,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:53:48,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:48,485.485 INFO    ] No camera update needed
[2026-06-13 06:53:48,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:53:48,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:53:48,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:53:48,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:53:50,533.533 INFO    ] ================================================
[2026-06-13 06:53:50,550.550 INFO    ] Launching Daemon at Sat Jun 13 06:53:50 IST 2026
[2026-06-13 06:53:50,561.561 INFO    ] ================================================
[2026-06-13 06:53:50,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:53:50
[2026-06-13 06:53:51,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:53:51,370.370 INFO    ] Initializing speech engine...
[2026-06-13 06:53:51,375.375 INFO    ] 2026-06-13 06:53:51
[2026-06-13 06:53:51,597.597 INFO    ] 2026-06-13 06:53:51
[2026-06-13 06:53:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:53:51,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:53:51,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:53:51,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:53:52,007.007 INFO    ] time= 13/06/2026 06:53:51
[2026-06-13 06:53:52,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:53:52,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:53:52,120.120 INFO    ] No existing commands found in stream
[2026-06-13 06:53:57,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:53:57,132.132 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 06:53:58,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:53:58,285.285 INFO    ] Checking for system updates...
[2026-06-13 06:53:58,307.307 INFO    ] 200
[2026-06-13 06:53:58,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:58,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:58,342.342 INFO    ] No update needed
[2026-06-13 06:53:58,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 06:53:58,364.364 INFO    ] 200
[2026-06-13 06:53:58,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:53:58,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:53:58,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:53:58,432.432 INFO    ] No camera update needed
[2026-06-13 06:53:58,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:53:58,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:53:58,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:53:58,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:00,481.481 INFO    ] ================================================
[2026-06-13 06:54:00,496.496 INFO    ] Launching Daemon at Sat Jun 13 06:54:00 IST 2026
[2026-06-13 06:54:00,506.506 INFO    ] ================================================
[2026-06-13 06:54:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:00
[2026-06-13 06:54:01,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:01,353.353 INFO    ] Initializing speech engine...
[2026-06-13 06:54:01,357.357 INFO    ] 2026-06-13 06:54:01
[2026-06-13 06:54:01,577.577 INFO    ] 2026-06-13 06:54:01
[2026-06-13 06:54:01,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:54:01,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:54:01,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:54:01,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:54:01,899.899 INFO    ] time= 13/06/2026 06:54:01
[2026-06-13 06:54:01,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:54:01,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:54:01,950.950 INFO    ] No existing commands found in stream
[2026-06-13 06:54:06,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:54:06,963.963 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 06:54:10,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:54:10,783.783 INFO    ] Checking for system updates...
[2026-06-13 06:54:10,806.806 INFO    ] 200
[2026-06-13 06:54:10,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:10,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:10,871.871 INFO    ] No update needed
[2026-06-13 06:54:10,874.874 INFO    ] Checking for camera pi updates...
[2026-06-13 06:54:10,906.906 INFO    ] 200
[2026-06-13 06:54:10,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:10,933.933 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:54:10,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:10,971.971 INFO    ] No camera update needed
[2026-06-13 06:54:10,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:54:10,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:54:10,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:54:10,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:13,013.013 INFO    ] ================================================
[2026-06-13 06:54:13,021.021 INFO    ] Launching Daemon at Sat Jun 13 06:54:13 IST 2026
[2026-06-13 06:54:13,027.027 INFO    ] ================================================
[2026-06-13 06:54:13,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:13
[2026-06-13 06:54:13,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:13,907.907 INFO    ] Initializing speech engine...
[2026-06-13 06:54:13,913.913 INFO    ] 2026-06-13 06:54:13
[2026-06-13 06:54:14,122.122 INFO    ] 2026-06-13 06:54:14
[2026-06-13 06:54:14,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:54:14,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:54:14,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:54:14,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:54:14,528.528 INFO    ] time= 13/06/2026 06:54:14
[2026-06-13 06:54:14,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:54:14,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:54:14,646.646 INFO    ] No existing commands found in stream
[2026-06-13 06:54:19,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:54:19,677.677 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 06:54:21,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:54:21,933.933 INFO    ] Checking for system updates...
[2026-06-13 06:54:21,954.954 INFO    ] 200
[2026-06-13 06:54:21,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:21,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:21,992.992 INFO    ] No update needed
[2026-06-13 06:54:21,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 06:54:22,015.015 INFO    ] 200
[2026-06-13 06:54:22,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:22,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:54:22,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:22,079.079 INFO    ] No camera update needed
[2026-06-13 06:54:22,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:54:22,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:54:22,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:54:22,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:24,128.128 INFO    ] ================================================
[2026-06-13 06:54:24,144.144 INFO    ] Launching Daemon at Sat Jun 13 06:54:24 IST 2026
[2026-06-13 06:54:24,155.155 INFO    ] ================================================
[2026-06-13 06:54:24,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:24
[2026-06-13 06:54:24,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:24,948.948 INFO    ] Initializing speech engine...
[2026-06-13 06:54:24,958.958 INFO    ] 2026-06-13 06:54:24
[2026-06-13 06:54:25,164.164 INFO    ] 2026-06-13 06:54:25
[2026-06-13 06:54:25,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:54:25,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:54:25,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:54:25,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:54:25,567.567 INFO    ] time= 13/06/2026 06:54:25
[2026-06-13 06:54:25,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:54:25,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:54:25,676.676 INFO    ] No existing commands found in stream
[2026-06-13 06:54:30,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:54:30,690.690 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 06:54:34,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:54:34,387.387 INFO    ] Checking for system updates...
[2026-06-13 06:54:34,410.410 INFO    ] 200
[2026-06-13 06:54:34,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:34,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:54:34,444.444 INFO    ] No update needed
[2026-06-13 06:54:34,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 06:54:34,464.464 INFO    ] 200
[2026-06-13 06:54:34,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:34,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:54:34,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:54:34,530.530 INFO    ] No camera update needed
[2026-06-13 06:54:34,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:54:34,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:54:34,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:54:34,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:36,576.576 INFO    ] ================================================
[2026-06-13 06:54:36,591.591 INFO    ] Launching Daemon at Sat Jun 13 06:54:36 IST 2026
[2026-06-13 06:54:36,602.602 INFO    ] ================================================
[2026-06-13 06:54:36,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:36
[2026-06-13 06:54:37,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:37,372.372 INFO    ] Initializing speech engine...
[2026-06-13 06:54:37,377.377 INFO    ] 2026-06-13 06:54:37
[2026-06-13 06:54:37,595.595 INFO    ] 2026-06-13 06:54:37
[2026-06-13 06:54:37,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:54:37,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:54:37,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:54:37,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:54:37,920.920 INFO    ] time= 13/06/2026 06:54:37
[2026-06-13 06:54:37,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:54:38,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:54:38,117.117 INFO    ] No existing commands found in stream
[2026-06-13 06:54:43,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:54:43,130.130 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 06:54:45,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:54:45,328.328 INFO    ] Checking for system updates...
[2026-06-13 06:54:45,350.350 INFO    ] 200
[2026-06-13 06:54:45,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:45,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:45,384.384 INFO    ] No update needed
[2026-06-13 06:54:45,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 06:54:45,406.406 INFO    ] 200
[2026-06-13 06:54:45,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:45,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:54:45,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:45,474.474 INFO    ] No camera update needed
[2026-06-13 06:54:45,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:54:45,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:54:45,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:54:45,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:47,521.521 INFO    ] ================================================
[2026-06-13 06:54:47,535.535 INFO    ] Launching Daemon at Sat Jun 13 06:54:47 IST 2026
[2026-06-13 06:54:47,546.546 INFO    ] ================================================
[2026-06-13 06:54:47,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:47
[2026-06-13 06:54:48,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:48,327.327 INFO    ] Initializing speech engine...
[2026-06-13 06:54:48,337.337 INFO    ] 2026-06-13 06:54:48
[2026-06-13 06:54:48,539.539 INFO    ] 2026-06-13 06:54:48
[2026-06-13 06:54:48,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:54:48,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:54:48,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:54:48,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:54:48,953.953 INFO    ] time= 13/06/2026 06:54:48
[2026-06-13 06:54:48,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:54:48,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:54:49,052.052 INFO    ] No existing commands found in stream
[2026-06-13 06:54:54,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:54:54,069.069 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 06:54:56,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:54:56,791.791 INFO    ] Checking for system updates...
[2026-06-13 06:54:56,826.826 INFO    ] 200
[2026-06-13 06:54:56,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:56,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:56,865.865 INFO    ] No update needed
[2026-06-13 06:54:56,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 06:54:56,885.885 INFO    ] 200
[2026-06-13 06:54:56,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:54:56,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:54:56,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:54:56,952.952 INFO    ] No camera update needed
[2026-06-13 06:54:56,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:54:56,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:54:56,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:54:56,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:54:59,999.999 INFO    ] ================================================
[2026-06-13 06:54:59,013.013 INFO    ] Launching Daemon at Sat Jun 13 06:54:59 IST 2026
[2026-06-13 06:54:59,024.024 INFO    ] ================================================
[2026-06-13 06:54:59,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:54:59
[2026-06-13 06:54:59,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:54:59,800.800 INFO    ] Initializing speech engine...
[2026-06-13 06:54:59,808.808 INFO    ] 2026-06-13 06:54:59
[2026-06-13 06:55:00,014.014 INFO    ] 2026-06-13 06:54:59
[2026-06-13 06:55:00,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:00,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:00,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:00,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:00,433.433 INFO    ] time= 13/06/2026 06:55:00
[2026-06-13 06:55:00,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:00,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:00,528.528 INFO    ] No existing commands found in stream
[2026-06-13 06:55:05,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:55:05,542.542 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 06:55:06,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:55:06,729.729 INFO    ] Checking for system updates...
[2026-06-13 06:55:06,750.750 INFO    ] 200
[2026-06-13 06:55:06,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:06,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:55:06,783.783 INFO    ] No update needed
[2026-06-13 06:55:06,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 06:55:06,805.805 INFO    ] 200
[2026-06-13 06:55:06,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:06,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:55:06,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:55:06,865.865 INFO    ] No camera update needed
[2026-06-13 06:55:06,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:55:06,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:55:06,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:55:06,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:55:08,912.912 INFO    ] ================================================
[2026-06-13 06:55:08,927.927 INFO    ] Launching Daemon at Sat Jun 13 06:55:08 IST 2026
[2026-06-13 06:55:08,938.938 INFO    ] ================================================
[2026-06-13 06:55:09,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:55:09
[2026-06-13 06:55:10,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:55:10,324.324 INFO    ] Initializing speech engine...
[2026-06-13 06:55:10,328.328 INFO    ] 2026-06-13 06:55:10
[2026-06-13 06:55:10,530.530 INFO    ] 2026-06-13 06:55:10
[2026-06-13 06:55:10,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:10,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:10,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:10,935.935 INFO    ] time= 13/06/2026 06:55:10
[2026-06-13 06:55:10,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:10,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:11,044.044 INFO    ] No existing commands found in stream
[2026-06-13 06:55:16,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:55:16,057.057 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 06:55:18,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:55:18,209.209 INFO    ] Checking for system updates...
[2026-06-13 06:55:18,251.251 INFO    ] 200
[2026-06-13 06:55:18,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:18,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:55:18,311.311 INFO    ] No update needed
[2026-06-13 06:55:18,313.313 INFO    ] Checking for camera pi updates...
[2026-06-13 06:55:18,355.355 INFO    ] 200
[2026-06-13 06:55:18,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:18,400.400 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:55:18,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:55:18,442.442 INFO    ] No camera update needed
[2026-06-13 06:55:18,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:55:18,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:55:18,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:55:18,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:55:20,498.498 INFO    ] ================================================
[2026-06-13 06:55:20,513.513 INFO    ] Launching Daemon at Sat Jun 13 06:55:20 IST 2026
[2026-06-13 06:55:20,524.524 INFO    ] ================================================
[2026-06-13 06:55:21,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:55:21
[2026-06-13 06:55:21,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:55:21,642.642 INFO    ] Initializing speech engine...
[2026-06-13 06:55:21,654.654 INFO    ] 2026-06-13 06:55:21
[2026-06-13 06:55:21,860.860 INFO    ] 2026-06-13 06:55:21
[2026-06-13 06:55:21,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:22,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:22,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:22,275.275 INFO    ] time= 13/06/2026 06:55:22
[2026-06-13 06:55:22,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:22,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:22,373.373 INFO    ] No existing commands found in stream
[2026-06-13 06:55:27,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:55:27,386.386 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 06:55:29,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:55:29,253.253 INFO    ] Checking for system updates...
[2026-06-13 06:55:29,275.275 INFO    ] 200
[2026-06-13 06:55:29,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:29,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:55:29,311.311 INFO    ] No update needed
[2026-06-13 06:55:29,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 06:55:29,333.333 INFO    ] 200
[2026-06-13 06:55:29,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:29,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:55:29,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:55:29,400.400 INFO    ] No camera update needed
[2026-06-13 06:55:29,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:55:29,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:55:29,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:55:29,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:55:31,457.457 INFO    ] ================================================
[2026-06-13 06:55:31,473.473 INFO    ] Launching Daemon at Sat Jun 13 06:55:31 IST 2026
[2026-06-13 06:55:31,485.485 INFO    ] ================================================
[2026-06-13 06:55:32,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:55:32
[2026-06-13 06:55:32,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:55:32,857.857 INFO    ] Initializing speech engine...
[2026-06-13 06:55:32,862.862 INFO    ] 2026-06-13 06:55:32
[2026-06-13 06:55:33,070.070 INFO    ] 2026-06-13 06:55:33
[2026-06-13 06:55:33,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:33,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:33,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:33,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:33,480.480 INFO    ] time= 13/06/2026 06:55:33
[2026-06-13 06:55:33,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:33,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:33,593.593 INFO    ] No existing commands found in stream
[2026-06-13 06:55:38,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:55:38,607.607 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 06:55:42,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:55:42,206.206 INFO    ] Checking for system updates...
[2026-06-13 06:55:42,227.227 INFO    ] 200
[2026-06-13 06:55:42,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:42,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:55:42,261.261 INFO    ] No update needed
[2026-06-13 06:55:42,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 06:55:42,283.283 INFO    ] 200
[2026-06-13 06:55:42,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:42,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:55:42,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:55:42,447.447 INFO    ] No camera update needed
[2026-06-13 06:55:42,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:55:42,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:55:42,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:55:42,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:55:44,498.498 INFO    ] ================================================
[2026-06-13 06:55:44,514.514 INFO    ] Launching Daemon at Sat Jun 13 06:55:44 IST 2026
[2026-06-13 06:55:44,524.524 INFO    ] ================================================
[2026-06-13 06:55:44,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:55:44
[2026-06-13 06:55:45,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:55:45,307.307 INFO    ] Initializing speech engine...
[2026-06-13 06:55:45,312.312 INFO    ] 2026-06-13 06:55:45
[2026-06-13 06:55:45,515.515 INFO    ] 2026-06-13 06:55:45
[2026-06-13 06:55:45,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:45,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:45,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:45,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:45,915.915 INFO    ] time= 13/06/2026 06:55:45
[2026-06-13 06:55:45,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:46,029.029 INFO    ] No existing commands found in stream
[2026-06-13 06:55:51,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:55:51,042.042 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 06:55:55,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:55:55,262.262 INFO    ] Checking for system updates...
[2026-06-13 06:55:55,284.284 INFO    ] 200
[2026-06-13 06:55:55,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:55,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:55:55,320.320 INFO    ] No update needed
[2026-06-13 06:55:55,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 06:55:55,341.341 INFO    ] 200
[2026-06-13 06:55:55,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:55:55,367.367 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:55:55,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:55:55,409.409 INFO    ] No camera update needed
[2026-06-13 06:55:55,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:55:55,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:55:55,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:55:55,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:55:57,458.458 INFO    ] ================================================
[2026-06-13 06:55:57,473.473 INFO    ] Launching Daemon at Sat Jun 13 06:55:57 IST 2026
[2026-06-13 06:55:57,484.484 INFO    ] ================================================
[2026-06-13 06:55:57,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:55:57
[2026-06-13 06:55:58,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:55:58,267.267 INFO    ] Initializing speech engine...
[2026-06-13 06:55:58,276.276 INFO    ] 2026-06-13 06:55:58
[2026-06-13 06:55:58,460.460 INFO    ] 2026-06-13 06:55:58
[2026-06-13 06:55:58,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:55:58,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:55:58,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:55:58,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:55:58,808.808 INFO    ] time= 13/06/2026 06:55:58
[2026-06-13 06:55:58,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:55:58,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:55:59,012.012 INFO    ] No existing commands found in stream
[2026-06-13 06:56:04,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:04,023.023 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 06:56:04,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:56:04,512.512 INFO    ] Checking for system updates...
[2026-06-13 06:56:04,534.534 INFO    ] 200
[2026-06-13 06:56:04,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:04,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:04,570.570 INFO    ] No update needed
[2026-06-13 06:56:04,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:04,591.591 INFO    ] 200
[2026-06-13 06:56:04,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:04,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:04,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:04,656.656 INFO    ] No camera update needed
[2026-06-13 06:56:04,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:04,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:04,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:04,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:06,706.706 INFO    ] ================================================
[2026-06-13 06:56:06,721.721 INFO    ] Launching Daemon at Sat Jun 13 06:56:06 IST 2026
[2026-06-13 06:56:06,732.732 INFO    ] ================================================
[2026-06-13 06:56:07,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:07
[2026-06-13 06:56:07,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:07,587.587 INFO    ] Initializing speech engine...
[2026-06-13 06:56:07,593.593 INFO    ] 2026-06-13 06:56:07
[2026-06-13 06:56:07,799.799 INFO    ] 2026-06-13 06:56:07
[2026-06-13 06:56:07,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:08,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:08,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:08,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:08,205.205 INFO    ] time= 13/06/2026 06:56:08
[2026-06-13 06:56:08,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:08,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:08,316.316 INFO    ] No existing commands found in stream
[2026-06-13 06:56:13,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:13,333.333 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 06:56:14,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:56:14,697.697 INFO    ] Checking for system updates...
[2026-06-13 06:56:14,719.719 INFO    ] 200
[2026-06-13 06:56:14,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:14,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:56:14,753.753 INFO    ] No update needed
[2026-06-13 06:56:14,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:14,775.775 INFO    ] 200
[2026-06-13 06:56:14,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:14,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:14,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:14,848.848 INFO    ] No camera update needed
[2026-06-13 06:56:14,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:14,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:14,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:14,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:16,896.896 INFO    ] ================================================
[2026-06-13 06:56:16,910.910 INFO    ] Launching Daemon at Sat Jun 13 06:56:16 IST 2026
[2026-06-13 06:56:16,921.921 INFO    ] ================================================
[2026-06-13 06:56:17,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:17
[2026-06-13 06:56:17,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:17,715.715 INFO    ] Initializing speech engine...
[2026-06-13 06:56:17,720.720 INFO    ] 2026-06-13 06:56:17
[2026-06-13 06:56:17,922.922 INFO    ] 2026-06-13 06:56:17
[2026-06-13 06:56:17,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:18,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:18,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:18,316.316 INFO    ] time= 13/06/2026 06:56:18
[2026-06-13 06:56:18,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:18,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:18,435.435 INFO    ] No existing commands found in stream
[2026-06-13 06:56:23,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:23,448.448 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 06:56:26,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:56:26,630.630 INFO    ] Checking for system updates...
[2026-06-13 06:56:26,651.651 INFO    ] 200
[2026-06-13 06:56:26,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:26,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:26,694.694 INFO    ] No update needed
[2026-06-13 06:56:26,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:26,717.717 INFO    ] 200
[2026-06-13 06:56:26,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:26,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:26,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:26,792.792 INFO    ] No camera update needed
[2026-06-13 06:56:26,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:26,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:26,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:26,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:28,842.842 INFO    ] ================================================
[2026-06-13 06:56:28,856.856 INFO    ] Launching Daemon at Sat Jun 13 06:56:28 IST 2026
[2026-06-13 06:56:28,868.868 INFO    ] ================================================
[2026-06-13 06:56:29,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:29
[2026-06-13 06:56:29,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:29,685.685 INFO    ] Initializing speech engine...
[2026-06-13 06:56:29,694.694 INFO    ] 2026-06-13 06:56:29
[2026-06-13 06:56:29,917.917 INFO    ] 2026-06-13 06:56:29
[2026-06-13 06:56:29,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:30,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:30,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:30,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:30,301.301 INFO    ] time= 13/06/2026 06:56:30
[2026-06-13 06:56:30,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:30,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:30,474.474 INFO    ] No existing commands found in stream
[2026-06-13 06:56:35,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:35,488.488 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 06:56:36,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:56:36,628.628 INFO    ] Checking for system updates...
[2026-06-13 06:56:36,651.651 INFO    ] 200
[2026-06-13 06:56:36,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:36,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:36,686.686 INFO    ] No update needed
[2026-06-13 06:56:36,687.687 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:36,708.708 INFO    ] 200
[2026-06-13 06:56:36,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:36,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:36,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:56:36,781.781 INFO    ] No camera update needed
[2026-06-13 06:56:36,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:36,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:36,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:36,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:38,838.838 INFO    ] ================================================
[2026-06-13 06:56:38,854.854 INFO    ] Launching Daemon at Sat Jun 13 06:56:38 IST 2026
[2026-06-13 06:56:38,865.865 INFO    ] ================================================
[2026-06-13 06:56:39,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:39
[2026-06-13 06:56:39,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:40,074.074 INFO    ] Initializing speech engine...
[2026-06-13 06:56:40,079.079 INFO    ] 2026-06-13 06:56:40
[2026-06-13 06:56:40,283.283 INFO    ] 2026-06-13 06:56:40
[2026-06-13 06:56:40,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:40,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:40,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:40,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:40,739.739 INFO    ] time= 13/06/2026 06:56:40
[2026-06-13 06:56:40,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:40,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:40,873.873 INFO    ] No existing commands found in stream
[2026-06-13 06:56:45,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:45,886.886 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 06:56:46,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:56:46,780.780 INFO    ] Checking for system updates...
[2026-06-13 06:56:46,817.817 INFO    ] 200
[2026-06-13 06:56:46,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:46,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:56:46,876.876 INFO    ] No update needed
[2026-06-13 06:56:46,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:46,914.914 INFO    ] 200
[2026-06-13 06:56:46,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:46,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:46,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:56:46,996.996 INFO    ] No camera update needed
[2026-06-13 06:56:46,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:46,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:47,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:47,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:49,044.044 INFO    ] ================================================
[2026-06-13 06:56:49,060.060 INFO    ] Launching Daemon at Sat Jun 13 06:56:49 IST 2026
[2026-06-13 06:56:49,071.071 INFO    ] ================================================
[2026-06-13 06:56:49,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:49
[2026-06-13 06:56:49,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:49,871.871 INFO    ] Initializing speech engine...
[2026-06-13 06:56:49,875.875 INFO    ] 2026-06-13 06:56:49
[2026-06-13 06:56:50,085.085 INFO    ] 2026-06-13 06:56:50
[2026-06-13 06:56:50,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:50,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:50,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:50,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:50,509.509 INFO    ] time= 13/06/2026 06:56:50
[2026-06-13 06:56:50,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:50,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:50,672.672 INFO    ] No existing commands found in stream
[2026-06-13 06:56:55,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:56:55,685.685 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 06:56:56,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:56:56,143.143 INFO    ] Checking for system updates...
[2026-06-13 06:56:56,164.164 INFO    ] 200
[2026-06-13 06:56:56,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:56,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:56:56,197.197 INFO    ] No update needed
[2026-06-13 06:56:56,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 06:56:56,220.220 INFO    ] 200
[2026-06-13 06:56:56,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:56:56,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:56:56,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:56:56,283.283 INFO    ] No camera update needed
[2026-06-13 06:56:56,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:56:56,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:56:56,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:56:56,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:56:58,331.331 INFO    ] ================================================
[2026-06-13 06:56:58,346.346 INFO    ] Launching Daemon at Sat Jun 13 06:56:58 IST 2026
[2026-06-13 06:56:58,357.357 INFO    ] ================================================
[2026-06-13 06:56:58,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:56:58
[2026-06-13 06:56:59,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:56:59,226.226 INFO    ] Initializing speech engine...
[2026-06-13 06:56:59,245.245 INFO    ] 2026-06-13 06:56:59
[2026-06-13 06:56:59,498.498 INFO    ] 2026-06-13 06:56:59
[2026-06-13 06:56:59,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:56:59,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:56:59,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:56:59,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:56:59,838.838 INFO    ] time= 13/06/2026 06:56:59
[2026-06-13 06:56:59,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:56:59,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:56:59,949.949 INFO    ] No existing commands found in stream
[2026-06-13 06:57:04,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:57:04,965.965 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 06:57:08,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:57:08,482.482 INFO    ] Checking for system updates...
[2026-06-13 06:57:08,503.503 INFO    ] 200
[2026-06-13 06:57:08,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:08,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:08,537.537 INFO    ] No update needed
[2026-06-13 06:57:08,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 06:57:08,558.558 INFO    ] 200
[2026-06-13 06:57:08,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:08,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:57:08,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:08,621.621 INFO    ] No camera update needed
[2026-06-13 06:57:08,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:57:08,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:57:08,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:57:08,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:57:10,669.669 INFO    ] ================================================
[2026-06-13 06:57:10,685.685 INFO    ] Launching Daemon at Sat Jun 13 06:57:10 IST 2026
[2026-06-13 06:57:10,695.695 INFO    ] ================================================
[2026-06-13 06:57:11,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:57:11
[2026-06-13 06:57:11,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:57:11,493.493 INFO    ] Initializing speech engine...
[2026-06-13 06:57:11,507.507 INFO    ] 2026-06-13 06:57:11
[2026-06-13 06:57:11,712.712 INFO    ] 2026-06-13 06:57:11
[2026-06-13 06:57:11,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:57:11,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:57:11,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:57:12,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:57:12,134.134 INFO    ] time= 13/06/2026 06:57:12
[2026-06-13 06:57:12,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:57:12,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:57:12,233.233 INFO    ] No existing commands found in stream
[2026-06-13 06:57:17,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:57:17,245.245 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 06:57:20,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:57:20,662.662 INFO    ] Checking for system updates...
[2026-06-13 06:57:20,683.683 INFO    ] 200
[2026-06-13 06:57:20,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:20,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:20,717.717 INFO    ] No update needed
[2026-06-13 06:57:20,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 06:57:20,739.739 INFO    ] 200
[2026-06-13 06:57:20,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:20,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:57:20,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:20,786.786 INFO    ] No camera update needed
[2026-06-13 06:57:20,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:57:20,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:57:20,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:57:20,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:57:22,835.835 INFO    ] ================================================
[2026-06-13 06:57:22,850.850 INFO    ] Launching Daemon at Sat Jun 13 06:57:22 IST 2026
[2026-06-13 06:57:22,861.861 INFO    ] ================================================
[2026-06-13 06:57:23,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:57:23
[2026-06-13 06:57:23,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:57:23,667.667 INFO    ] Initializing speech engine...
[2026-06-13 06:57:23,673.673 INFO    ] 2026-06-13 06:57:23
[2026-06-13 06:57:23,875.875 INFO    ] 2026-06-13 06:57:23
[2026-06-13 06:57:23,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:57:24,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:57:24,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:57:24,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:57:24,319.319 INFO    ] time= 13/06/2026 06:57:24
[2026-06-13 06:57:24,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:57:24,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:57:24,463.463 INFO    ] No existing commands found in stream
[2026-06-13 06:57:29,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:57:29,477.477 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 06:57:32,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:57:32,480.480 INFO    ] Checking for system updates...
[2026-06-13 06:57:32,514.514 INFO    ] 200
[2026-06-13 06:57:32,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:32,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:57:32,585.585 INFO    ] No update needed
[2026-06-13 06:57:32,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 06:57:32,608.608 INFO    ] 200
[2026-06-13 06:57:32,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:32,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:57:32,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:57:32,663.663 INFO    ] No camera update needed
[2026-06-13 06:57:32,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:57:32,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:57:32,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:57:32,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:57:34,711.711 INFO    ] ================================================
[2026-06-13 06:57:34,726.726 INFO    ] Launching Daemon at Sat Jun 13 06:57:34 IST 2026
[2026-06-13 06:57:34,737.737 INFO    ] ================================================
[2026-06-13 06:57:35,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:57:35
[2026-06-13 06:57:35,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:57:35,539.539 INFO    ] Initializing speech engine...
[2026-06-13 06:57:35,542.542 INFO    ] 2026-06-13 06:57:35
[2026-06-13 06:57:35,735.735 INFO    ] 2026-06-13 06:57:35
[2026-06-13 06:57:35,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:57:35,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:57:35,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:57:36,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:57:36,026.026 INFO    ] time= 13/06/2026 06:57:36
[2026-06-13 06:57:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:57:36,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:57:36,131.131 INFO    ] No existing commands found in stream
[2026-06-13 06:57:41,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:57:41,163.163 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 06:57:42,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:57:42,142.142 INFO    ] Checking for system updates...
[2026-06-13 06:57:42,164.164 INFO    ] 200
[2026-06-13 06:57:42,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:42,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:42,198.198 INFO    ] No update needed
[2026-06-13 06:57:42,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 06:57:42,219.219 INFO    ] 200
[2026-06-13 06:57:42,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:42,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:57:42,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:42,288.288 INFO    ] No camera update needed
[2026-06-13 06:57:42,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:57:42,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:57:42,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:57:42,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:57:44,335.335 INFO    ] ================================================
[2026-06-13 06:57:44,351.351 INFO    ] Launching Daemon at Sat Jun 13 06:57:44 IST 2026
[2026-06-13 06:57:44,362.362 INFO    ] ================================================
[2026-06-13 06:57:44,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:57:44
[2026-06-13 06:57:45,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:57:45,165.165 INFO    ] Initializing speech engine...
[2026-06-13 06:57:45,175.175 INFO    ] 2026-06-13 06:57:45
[2026-06-13 06:57:45,394.394 INFO    ] 2026-06-13 06:57:45
[2026-06-13 06:57:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:57:45,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:57:45,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:57:45,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:57:45,641.641 INFO    ] time= 13/06/2026 06:57:45
[2026-06-13 06:57:45,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:57:45,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:57:45,733.733 INFO    ] No existing commands found in stream
[2026-06-13 06:57:50,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:57:50,765.765 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 06:57:52,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:57:52,933.933 INFO    ] Checking for system updates...
[2026-06-13 06:57:52,953.953 INFO    ] 200
[2026-06-13 06:57:52,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:52,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:52,987.987 INFO    ] No update needed
[2026-06-13 06:57:52,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 06:57:53,008.008 INFO    ] 200
[2026-06-13 06:57:53,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:57:53,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:57:53,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:57:53,175.175 INFO    ] No camera update needed
[2026-06-13 06:57:53,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:57:53,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:57:53,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:57:53,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:57:55,222.222 INFO    ] ================================================
[2026-06-13 06:57:55,238.238 INFO    ] Launching Daemon at Sat Jun 13 06:57:55 IST 2026
[2026-06-13 06:57:55,249.249 INFO    ] ================================================
[2026-06-13 06:57:55,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:57:55
[2026-06-13 06:57:56,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:57:56,695.695 INFO    ] Initializing speech engine...
[2026-06-13 06:57:56,704.704 INFO    ] 2026-06-13 06:57:56
[2026-06-13 06:57:56,949.949 INFO    ] 2026-06-13 06:57:56
[2026-06-13 06:57:56,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:57:57,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:57:57,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:57:57,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:57:57,316.316 INFO    ] time= 13/06/2026 06:57:57
[2026-06-13 06:57:57,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:57:57,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:57:57,391.391 INFO    ] No existing commands found in stream
[2026-06-13 06:58:02,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:02,413.413 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 06:58:06,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 06:58:06,541.541 INFO    ] Checking for system updates...
[2026-06-13 06:58:06,579.579 INFO    ] 200
[2026-06-13 06:58:06,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:06,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:58:06,639.639 INFO    ] No update needed
[2026-06-13 06:58:06,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 06:58:06,677.677 INFO    ] 200
[2026-06-13 06:58:06,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:06,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:58:06,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:58:06,765.765 INFO    ] No camera update needed
[2026-06-13 06:58:06,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:58:06,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:58:06,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:58:06,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:58:08,822.822 INFO    ] ================================================
[2026-06-13 06:58:08,837.837 INFO    ] Launching Daemon at Sat Jun 13 06:58:08 IST 2026
[2026-06-13 06:58:08,849.849 INFO    ] ================================================
[2026-06-13 06:58:09,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:58:09
[2026-06-13 06:58:09,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:58:09,956.956 INFO    ] Initializing speech engine...
[2026-06-13 06:58:09,966.966 INFO    ] 2026-06-13 06:58:09
[2026-06-13 06:58:10,184.184 INFO    ] 2026-06-13 06:58:10
[2026-06-13 06:58:10,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:58:10,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:58:10,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:58:10,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:58:10,627.627 INFO    ] time= 13/06/2026 06:58:10
[2026-06-13 06:58:10,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:58:10,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:58:10,748.748 INFO    ] No existing commands found in stream
[2026-06-13 06:58:15,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:15,761.761 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 06:58:17,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:58:17,289.289 INFO    ] Checking for system updates...
[2026-06-13 06:58:17,310.310 INFO    ] 200
[2026-06-13 06:58:17,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:17,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:58:17,343.343 INFO    ] No update needed
[2026-06-13 06:58:17,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 06:58:17,365.365 INFO    ] 200
[2026-06-13 06:58:17,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:17,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:58:17,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:58:17,428.428 INFO    ] No camera update needed
[2026-06-13 06:58:17,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:58:17,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:58:17,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:58:17,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:58:19,476.476 INFO    ] ================================================
[2026-06-13 06:58:19,491.491 INFO    ] Launching Daemon at Sat Jun 13 06:58:19 IST 2026
[2026-06-13 06:58:19,502.502 INFO    ] ================================================
[2026-06-13 06:58:19,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:58:19
[2026-06-13 06:58:20,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:58:20,344.344 INFO    ] Initializing speech engine...
[2026-06-13 06:58:20,348.348 INFO    ] 2026-06-13 06:58:20
[2026-06-13 06:58:20,556.556 INFO    ] 2026-06-13 06:58:20
[2026-06-13 06:58:20,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:58:20,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:58:20,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:58:20,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:58:20,961.961 INFO    ] time= 13/06/2026 06:58:20
[2026-06-13 06:58:21,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:58:21,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:58:21,078.078 INFO    ] No existing commands found in stream
[2026-06-13 06:58:26,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:26,091.091 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 06:58:29,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:58:29,855.855 INFO    ] Checking for system updates...
[2026-06-13 06:58:29,876.876 INFO    ] 200
[2026-06-13 06:58:29,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:29,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:58:29,911.911 INFO    ] No update needed
[2026-06-13 06:58:29,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 06:58:29,933.933 INFO    ] 200
[2026-06-13 06:58:29,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:29,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:58:29,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:58:30,000.000 INFO    ] No camera update needed
[2026-06-13 06:58:30,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:58:30,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:58:30,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:58:30,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:58:32,042.042 INFO    ] ================================================
[2026-06-13 06:58:32,050.050 INFO    ] Launching Daemon at Sat Jun 13 06:58:32 IST 2026
[2026-06-13 06:58:32,056.056 INFO    ] ================================================
[2026-06-13 06:58:32,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:58:32
[2026-06-13 06:58:32,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:58:32,816.816 INFO    ] Initializing speech engine...
[2026-06-13 06:58:32,820.820 INFO    ] 2026-06-13 06:58:32
[2026-06-13 06:58:33,024.024 INFO    ] 2026-06-13 06:58:33
[2026-06-13 06:58:33,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:58:33,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:58:33,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:58:33,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:58:33,439.439 INFO    ] time= 13/06/2026 06:58:33
[2026-06-13 06:58:33,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:58:33,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:58:33,534.534 INFO    ] No existing commands found in stream
[2026-06-13 06:58:38,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:38,547.547 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 06:58:39,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:58:39,093.093 INFO    ] Checking for system updates...
[2026-06-13 06:58:39,114.114 INFO    ] 200
[2026-06-13 06:58:39,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:39,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:58:39,147.147 INFO    ] No update needed
[2026-06-13 06:58:39,148.148 INFO    ] Checking for camera pi updates...
[2026-06-13 06:58:39,168.168 INFO    ] 200
[2026-06-13 06:58:39,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:39,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:58:39,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:58:39,229.229 INFO    ] No camera update needed
[2026-06-13 06:58:39,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:58:39,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:58:39,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:58:39,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:58:41,278.278 INFO    ] ================================================
[2026-06-13 06:58:41,293.293 INFO    ] Launching Daemon at Sat Jun 13 06:58:41 IST 2026
[2026-06-13 06:58:41,304.304 INFO    ] ================================================
[2026-06-13 06:58:41,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:58:41
[2026-06-13 06:58:42,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:58:42,159.159 INFO    ] Initializing speech engine...
[2026-06-13 06:58:42,168.168 INFO    ] 2026-06-13 06:58:42
[2026-06-13 06:58:42,380.380 INFO    ] 2026-06-13 06:58:42
[2026-06-13 06:58:42,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:58:42,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:58:42,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:58:42,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:58:42,799.799 INFO    ] time= 13/06/2026 06:58:42
[2026-06-13 06:58:42,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:58:42,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:58:42,896.896 INFO    ] No existing commands found in stream
[2026-06-13 06:58:47,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:47,910.910 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 06:58:49,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:58:49,694.694 INFO    ] Checking for system updates...
[2026-06-13 06:58:49,716.716 INFO    ] 200
[2026-06-13 06:58:49,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:49,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:58:49,751.751 INFO    ] No update needed
[2026-06-13 06:58:49,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 06:58:49,772.772 INFO    ] 200
[2026-06-13 06:58:49,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:58:49,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:58:49,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:58:49,839.839 INFO    ] No camera update needed
[2026-06-13 06:58:49,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:58:49,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:58:49,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:58:49,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:58:51,888.888 INFO    ] ================================================
[2026-06-13 06:58:51,907.907 INFO    ] Launching Daemon at Sat Jun 13 06:58:51 IST 2026
[2026-06-13 06:58:51,919.919 INFO    ] ================================================
[2026-06-13 06:58:52,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:58:52
[2026-06-13 06:58:52,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:58:52,701.701 INFO    ] Initializing speech engine...
[2026-06-13 06:58:52,709.709 INFO    ] 2026-06-13 06:58:52
[2026-06-13 06:58:52,901.901 INFO    ] 2026-06-13 06:58:52
[2026-06-13 06:58:52,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:58:53,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:58:53,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:58:53,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:58:53,284.284 INFO    ] time= 13/06/2026 06:58:53
[2026-06-13 06:58:53,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:58:53,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:58:53,486.486 INFO    ] No existing commands found in stream
[2026-06-13 06:58:58,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:58:58,514.514 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 06:59:02,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 06:59:02,315.315 INFO    ] Checking for system updates...
[2026-06-13 06:59:02,336.336 INFO    ] 200
[2026-06-13 06:59:02,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:02,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:59:02,372.372 INFO    ] No update needed
[2026-06-13 06:59:02,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:02,393.393 INFO    ] 200
[2026-06-13 06:59:02,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:02,417.417 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:02,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:59:02,442.442 INFO    ] No camera update needed
[2026-06-13 06:59:02,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:02,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:02,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:02,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:04,490.490 INFO    ] ================================================
[2026-06-13 06:59:04,506.506 INFO    ] Launching Daemon at Sat Jun 13 06:59:04 IST 2026
[2026-06-13 06:59:04,517.517 INFO    ] ================================================
[2026-06-13 06:59:04,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:04
[2026-06-13 06:59:05,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:59:05,307.307 INFO    ] Initializing speech engine...
[2026-06-13 06:59:05,312.312 INFO    ] 2026-06-13 06:59:05
[2026-06-13 06:59:05,529.529 INFO    ] 2026-06-13 06:59:05
[2026-06-13 06:59:05,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:59:05,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:59:05,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:59:05,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:59:05,924.924 INFO    ] time= 13/06/2026 06:59:05
[2026-06-13 06:59:05,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:59:05,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:59:06,043.043 INFO    ] No existing commands found in stream
[2026-06-13 06:59:11,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:59:11,057.057 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 06:59:11,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 06:59:11,674.674 INFO    ] Checking for system updates...
[2026-06-13 06:59:11,695.695 INFO    ] 200
[2026-06-13 06:59:11,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:11,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:59:11,729.729 INFO    ] No update needed
[2026-06-13 06:59:11,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:11,750.750 INFO    ] 200
[2026-06-13 06:59:11,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:11,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:11,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 06:59:11,817.817 INFO    ] No camera update needed
[2026-06-13 06:59:11,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:11,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:11,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:11,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:13,866.866 INFO    ] ================================================
[2026-06-13 06:59:13,882.882 INFO    ] Launching Daemon at Sat Jun 13 06:59:13 IST 2026
[2026-06-13 06:59:13,894.894 INFO    ] ================================================
[2026-06-13 06:59:14,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:14
[2026-06-13 06:59:14,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:59:14,747.747 INFO    ] Initializing speech engine...
[2026-06-13 06:59:14,758.758 INFO    ] 2026-06-13 06:59:14
[2026-06-13 06:59:14,971.971 INFO    ] 2026-06-13 06:59:14
[2026-06-13 06:59:15,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:59:15,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:59:15,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:59:15,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:59:15,372.372 INFO    ] time= 13/06/2026 06:59:15
[2026-06-13 06:59:15,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:59:15,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:59:15,495.495 INFO    ] No existing commands found in stream
[2026-06-13 06:59:20,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:59:20,523.523 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 06:59:24,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:59:24,574.574 INFO    ] Checking for system updates...
[2026-06-13 06:59:24,595.595 INFO    ] 200
[2026-06-13 06:59:24,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:24,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:24,629.629 INFO    ] No update needed
[2026-06-13 06:59:24,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:24,650.650 INFO    ] 200
[2026-06-13 06:59:24,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:24,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:24,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:24,715.715 INFO    ] No camera update needed
[2026-06-13 06:59:24,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:24,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:24,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:24,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:26,762.762 INFO    ] ================================================
[2026-06-13 06:59:26,777.777 INFO    ] Launching Daemon at Sat Jun 13 06:59:26 IST 2026
[2026-06-13 06:59:26,789.789 INFO    ] ================================================
[2026-06-13 06:59:27,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:27
[2026-06-13 06:59:27,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:59:27,614.614 INFO    ] Initializing speech engine...
[2026-06-13 06:59:27,618.618 INFO    ] 2026-06-13 06:59:27
[2026-06-13 06:59:27,854.854 INFO    ] 2026-06-13 06:59:27
[2026-06-13 06:59:27,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:59:28,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:59:28,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:59:28,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:59:28,236.236 INFO    ] time= 13/06/2026 06:59:28
[2026-06-13 06:59:28,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:59:28,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:59:28,420.420 INFO    ] No existing commands found in stream
[2026-06-13 06:59:33,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:59:33,433.433 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 06:59:35,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 06:59:35,944.944 INFO    ] Checking for system updates...
[2026-06-13 06:59:35,964.964 INFO    ] 200
[2026-06-13 06:59:35,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:35,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:35,997.997 INFO    ] No update needed
[2026-06-13 06:59:35,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:36,020.020 INFO    ] 200
[2026-06-13 06:59:36,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:36,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:36,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:36,079.079 INFO    ] No camera update needed
[2026-06-13 06:59:36,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:36,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:36,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:36,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:38,126.126 INFO    ] ================================================
[2026-06-13 06:59:38,142.142 INFO    ] Launching Daemon at Sat Jun 13 06:59:38 IST 2026
[2026-06-13 06:59:38,154.154 INFO    ] ================================================
[2026-06-13 06:59:38,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:38
[2026-06-13 06:59:38,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:59:38,947.947 INFO    ] Initializing speech engine...
[2026-06-13 06:59:38,952.952 INFO    ] 2026-06-13 06:59:38
[2026-06-13 06:59:39,156.156 INFO    ] 2026-06-13 06:59:39
[2026-06-13 06:59:39,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:59:39,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:59:39,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:59:39,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:59:39,561.561 INFO    ] time= 13/06/2026 06:59:39
[2026-06-13 06:59:39,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:59:39,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:59:39,671.671 INFO    ] No existing commands found in stream
[2026-06-13 06:59:44,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:59:44,684.684 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 06:59:47,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 06:59:47,914.914 INFO    ] Checking for system updates...
[2026-06-13 06:59:47,934.934 INFO    ] 200
[2026-06-13 06:59:47,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:47,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:47,968.968 INFO    ] No update needed
[2026-06-13 06:59:47,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:47,990.990 INFO    ] 200
[2026-06-13 06:59:47,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:48,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:48,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:48,053.053 INFO    ] No camera update needed
[2026-06-13 06:59:48,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:48,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:48,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:48,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:50,102.102 INFO    ] ================================================
[2026-06-13 06:59:50,118.118 INFO    ] Launching Daemon at Sat Jun 13 06:59:50 IST 2026
[2026-06-13 06:59:50,129.129 INFO    ] ================================================
[2026-06-13 06:59:50,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:50
[2026-06-13 06:59:50,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 06:59:50,960.960 INFO    ] Initializing speech engine...
[2026-06-13 06:59:50,980.980 INFO    ] 2026-06-13 06:59:50
[2026-06-13 06:59:51,177.177 INFO    ] 2026-06-13 06:59:51
[2026-06-13 06:59:51,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 06:59:51,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 06:59:51,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 06:59:51,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 06:59:51,586.586 INFO    ] time= 13/06/2026 06:59:51
[2026-06-13 06:59:51,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 06:59:51,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 06:59:51,705.705 INFO    ] No existing commands found in stream
[2026-06-13 06:59:56,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 06:59:56,719.719 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 06:59:57,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 06:59:57,180.180 INFO    ] Checking for system updates...
[2026-06-13 06:59:57,201.201 INFO    ] 200
[2026-06-13 06:59:57,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:57,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:57,235.235 INFO    ] No update needed
[2026-06-13 06:59:57,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 06:59:57,257.257 INFO    ] 200
[2026-06-13 06:59:57,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 06:59:57,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 06:59:57,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 06:59:57,424.424 INFO    ] No camera update needed
[2026-06-13 06:59:57,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 06:59:57,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 06:59:57,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 06:59:57,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 06:59:59,472.472 INFO    ] ================================================
[2026-06-13 06:59:59,487.487 INFO    ] Launching Daemon at Sat Jun 13 06:59:59 IST 2026
[2026-06-13 06:59:59,498.498 INFO    ] ================================================
[2026-06-13 06:59:59,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 06:59:59
[2026-06-13 07:00:00,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:00,357.357 INFO    ] Initializing speech engine...
[2026-06-13 07:00:00,364.364 INFO    ] 2026-06-13 07:00:00
[2026-06-13 07:00:00,571.571 INFO    ] 2026-06-13 07:00:00
[2026-06-13 07:00:00,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:00,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:00,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:00,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:00,979.979 INFO    ] time= 13/06/2026 07:00:00
[2026-06-13 07:00:01,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:01,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:01,090.090 INFO    ] No existing commands found in stream
[2026-06-13 07:00:06,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:00:06,108.108 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 07:00:08,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:00:08,945.945 INFO    ] Checking for system updates...
[2026-06-13 07:00:08,967.967 INFO    ] 200
[2026-06-13 07:00:08,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:09,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:00:09,001.001 INFO    ] No update needed
[2026-06-13 07:00:09,003.003 INFO    ] Checking for camera pi updates...
[2026-06-13 07:00:09,022.022 INFO    ] 200
[2026-06-13 07:00:09,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:09,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:00:09,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:00:09,075.075 INFO    ] No camera update needed
[2026-06-13 07:00:09,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:00:09,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:00:09,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:00:09,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:00:11,124.124 INFO    ] ================================================
[2026-06-13 07:00:11,140.140 INFO    ] Launching Daemon at Sat Jun 13 07:00:11 IST 2026
[2026-06-13 07:00:11,152.152 INFO    ] ================================================
[2026-06-13 07:00:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:00:11
[2026-06-13 07:00:11,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:11,937.937 INFO    ] Initializing speech engine...
[2026-06-13 07:00:11,943.943 INFO    ] 2026-06-13 07:00:11
[2026-06-13 07:00:12,151.151 INFO    ] 2026-06-13 07:00:12
[2026-06-13 07:00:12,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:12,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:12,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:12,553.553 INFO    ] time= 13/06/2026 07:00:12
[2026-06-13 07:00:12,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:12,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:12,675.675 INFO    ] No existing commands found in stream
[2026-06-13 07:00:17,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:00:17,689.689 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 07:00:19,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:00:19,862.862 INFO    ] Checking for system updates...
[2026-06-13 07:00:19,899.899 INFO    ] 200
[2026-06-13 07:00:19,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:19,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:00:19,966.966 INFO    ] No update needed
[2026-06-13 07:00:19,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 07:00:20,002.002 INFO    ] 200
[2026-06-13 07:00:20,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:20,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:00:20,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:00:20,069.069 INFO    ] No camera update needed
[2026-06-13 07:00:20,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:00:20,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:00:20,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:00:20,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:00:22,120.120 INFO    ] ================================================
[2026-06-13 07:00:22,136.136 INFO    ] Launching Daemon at Sat Jun 13 07:00:22 IST 2026
[2026-06-13 07:00:22,147.147 INFO    ] ================================================
[2026-06-13 07:00:22,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:00:22
[2026-06-13 07:00:22,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:22,960.960 INFO    ] Initializing speech engine...
[2026-06-13 07:00:22,965.965 INFO    ] 2026-06-13 07:00:22
[2026-06-13 07:00:23,170.170 INFO    ] 2026-06-13 07:00:23
[2026-06-13 07:00:23,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:23,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:23,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:23,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:23,588.588 INFO    ] time= 13/06/2026 07:00:23
[2026-06-13 07:00:23,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:23,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:23,700.700 INFO    ] No existing commands found in stream
[2026-06-13 07:00:28,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:00:28,712.712 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 07:00:30,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:00:30,402.402 INFO    ] Checking for system updates...
[2026-06-13 07:00:30,423.423 INFO    ] 200
[2026-06-13 07:00:30,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:30,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:00:30,457.457 INFO    ] No update needed
[2026-06-13 07:00:30,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 07:00:30,480.480 INFO    ] 200
[2026-06-13 07:00:30,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:30,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:00:30,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:00:30,550.550 INFO    ] No camera update needed
[2026-06-13 07:00:30,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:00:30,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:00:30,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:00:30,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:00:32,602.602 INFO    ] ================================================
[2026-06-13 07:00:32,618.618 INFO    ] Launching Daemon at Sat Jun 13 07:00:32 IST 2026
[2026-06-13 07:00:32,630.630 INFO    ] ================================================
[2026-06-13 07:00:33,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:00:33
[2026-06-13 07:00:33,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:33,464.464 INFO    ] Initializing speech engine...
[2026-06-13 07:00:33,474.474 INFO    ] 2026-06-13 07:00:33
[2026-06-13 07:00:33,679.679 INFO    ] 2026-06-13 07:00:33
[2026-06-13 07:00:33,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:33,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:33,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:34,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:34,090.090 INFO    ] time= 13/06/2026 07:00:34
[2026-06-13 07:00:34,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:34,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:34,195.195 INFO    ] No existing commands found in stream
[2026-06-13 07:00:39,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:00:39,209.209 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 07:00:39,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:00:39,934.934 INFO    ] Checking for system updates...
[2026-06-13 07:00:39,954.954 INFO    ] 200
[2026-06-13 07:00:39,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:39,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:00:39,988.988 INFO    ] No update needed
[2026-06-13 07:00:39,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 07:00:40,010.010 INFO    ] 200
[2026-06-13 07:00:40,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:40,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:00:40,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:00:40,062.062 INFO    ] No camera update needed
[2026-06-13 07:00:40,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:00:40,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:00:40,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:00:40,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:00:42,111.111 INFO    ] ================================================
[2026-06-13 07:00:42,127.127 INFO    ] Launching Daemon at Sat Jun 13 07:00:42 IST 2026
[2026-06-13 07:00:42,138.138 INFO    ] ================================================
[2026-06-13 07:00:42,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:00:42
[2026-06-13 07:00:42,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:42,924.924 INFO    ] Initializing speech engine...
[2026-06-13 07:00:42,930.930 INFO    ] 2026-06-13 07:00:42
[2026-06-13 07:00:43,135.135 INFO    ] 2026-06-13 07:00:43
[2026-06-13 07:00:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:43,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:43,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:43,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:43,543.543 INFO    ] time= 13/06/2026 07:00:43
[2026-06-13 07:00:43,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:43,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:43,736.736 INFO    ] No existing commands found in stream
[2026-06-13 07:00:48,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:00:48,765.765 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 07:00:51,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:00:51,385.385 INFO    ] Checking for system updates...
[2026-06-13 07:00:51,406.406 INFO    ] 200
[2026-06-13 07:00:51,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:51,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:00:51,440.440 INFO    ] No update needed
[2026-06-13 07:00:51,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 07:00:51,461.461 INFO    ] 200
[2026-06-13 07:00:51,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:00:51,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:00:51,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:00:51,528.528 INFO    ] No camera update needed
[2026-06-13 07:00:51,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:00:51,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:00:51,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:00:51,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:00:53,570.570 INFO    ] ================================================
[2026-06-13 07:00:53,585.585 INFO    ] Launching Daemon at Sat Jun 13 07:00:53 IST 2026
[2026-06-13 07:00:53,596.596 INFO    ] ================================================
[2026-06-13 07:00:53,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:00:53
[2026-06-13 07:00:54,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:00:54,427.427 INFO    ] Initializing speech engine...
[2026-06-13 07:00:54,435.435 INFO    ] 2026-06-13 07:00:54
[2026-06-13 07:00:54,642.642 INFO    ] 2026-06-13 07:00:54
[2026-06-13 07:00:54,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:00:54,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:00:54,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:00:54,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:00:55,039.039 INFO    ] time= 13/06/2026 07:00:54
[2026-06-13 07:00:55,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:00:55,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:00:55,166.166 INFO    ] No existing commands found in stream
[2026-06-13 07:01:00,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:00,179.179 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 07:01:00,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:01:00,778.778 INFO    ] Checking for system updates...
[2026-06-13 07:01:00,800.800 INFO    ] 200
[2026-06-13 07:01:00,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:00,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:00,834.834 INFO    ] No update needed
[2026-06-13 07:01:00,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:00,859.859 INFO    ] 200
[2026-06-13 07:01:00,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:00,884.884 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:00,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:00,922.922 INFO    ] No camera update needed
[2026-06-13 07:01:00,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:00,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:00,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:00,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:02,968.968 INFO    ] ================================================
[2026-06-13 07:01:02,985.985 INFO    ] Launching Daemon at Sat Jun 13 07:01:02 IST 2026
[2026-06-13 07:01:03,996.996 INFO    ] ================================================
[2026-06-13 07:01:03,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:03
[2026-06-13 07:01:03,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:01:03,833.833 INFO    ] Initializing speech engine...
[2026-06-13 07:01:03,838.838 INFO    ] 2026-06-13 07:01:03
[2026-06-13 07:01:04,043.043 INFO    ] 2026-06-13 07:01:04
[2026-06-13 07:01:04,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:01:04,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:01:04,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:01:04,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:01:04,453.453 INFO    ] time= 13/06/2026 07:01:04
[2026-06-13 07:01:04,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:01:04,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:01:04,556.556 INFO    ] No existing commands found in stream
[2026-06-13 07:01:09,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:09,570.570 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 07:01:11,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:01:11,942.942 INFO    ] Checking for system updates...
[2026-06-13 07:01:11,963.963 INFO    ] 200
[2026-06-13 07:01:11,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:11,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:11,996.996 INFO    ] No update needed
[2026-06-13 07:01:11,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:12,019.019 INFO    ] 200
[2026-06-13 07:01:12,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:12,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:12,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:12,082.082 INFO    ] No camera update needed
[2026-06-13 07:01:12,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:12,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:12,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:12,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:14,130.130 INFO    ] ================================================
[2026-06-13 07:01:14,147.147 INFO    ] Launching Daemon at Sat Jun 13 07:01:14 IST 2026
[2026-06-13 07:01:14,158.158 INFO    ] ================================================
[2026-06-13 07:01:14,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:14
[2026-06-13 07:01:14,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:01:15,037.037 INFO    ] Initializing speech engine...
[2026-06-13 07:01:15,044.044 INFO    ] 2026-06-13 07:01:15
[2026-06-13 07:01:15,254.254 INFO    ] 2026-06-13 07:01:15
[2026-06-13 07:01:15,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:01:15,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:01:15,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:01:15,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:01:15,668.668 INFO    ] time= 13/06/2026 07:01:15
[2026-06-13 07:01:15,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:01:15,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:01:15,773.773 INFO    ] No existing commands found in stream
[2026-06-13 07:01:20,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:20,787.787 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 07:01:24,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:01:24,674.674 INFO    ] Checking for system updates...
[2026-06-13 07:01:24,718.718 INFO    ] 200
[2026-06-13 07:01:24,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:24,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:24,783.783 INFO    ] No update needed
[2026-06-13 07:01:24,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:24,822.822 INFO    ] 200
[2026-06-13 07:01:24,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:24,870.870 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:24,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:24,932.932 INFO    ] No camera update needed
[2026-06-13 07:01:24,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:24,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:24,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:24,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:26,984.984 INFO    ] ================================================
[2026-06-13 07:01:26,993.993 INFO    ] Launching Daemon at Sat Jun 13 07:01:26 IST 2026
[2026-06-13 07:01:27,000.000 INFO    ] ================================================
[2026-06-13 07:01:27,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:27
[2026-06-13 07:01:27,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:01:27,788.788 INFO    ] Initializing speech engine...
[2026-06-13 07:01:27,792.792 INFO    ] 2026-06-13 07:01:27
[2026-06-13 07:01:27,987.987 INFO    ] 2026-06-13 07:01:27
[2026-06-13 07:01:28,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:01:28,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:01:28,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:01:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:01:28,282.282 INFO    ] time= 13/06/2026 07:01:28
[2026-06-13 07:01:28,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:01:28,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:01:28,386.386 INFO    ] No existing commands found in stream
[2026-06-13 07:01:33,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:33,423.423 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 07:01:34,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:01:34,071.071 INFO    ] Checking for system updates...
[2026-06-13 07:01:34,091.091 INFO    ] 200
[2026-06-13 07:01:34,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:34,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:34,127.127 INFO    ] No update needed
[2026-06-13 07:01:34,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:34,149.149 INFO    ] 200
[2026-06-13 07:01:34,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:34,173.173 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:34,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:34,216.216 INFO    ] No camera update needed
[2026-06-13 07:01:34,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:34,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:34,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:34,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:36,264.264 INFO    ] ================================================
[2026-06-13 07:01:36,280.280 INFO    ] Launching Daemon at Sat Jun 13 07:01:36 IST 2026
[2026-06-13 07:01:36,291.291 INFO    ] ================================================
[2026-06-13 07:01:36,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:36
[2026-06-13 07:01:36,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:01:37,118.118 INFO    ] Initializing speech engine...
[2026-06-13 07:01:37,128.128 INFO    ] 2026-06-13 07:01:37
[2026-06-13 07:01:37,332.332 INFO    ] 2026-06-13 07:01:37
[2026-06-13 07:01:37,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:01:37,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:01:37,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:01:37,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:01:37,739.739 INFO    ] time= 13/06/2026 07:01:37
[2026-06-13 07:01:37,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:01:37,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:01:37,851.851 INFO    ] No existing commands found in stream
[2026-06-13 07:01:42,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:42,869.869 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 07:01:45,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:01:45,311.311 INFO    ] Checking for system updates...
[2026-06-13 07:01:45,332.332 INFO    ] 200
[2026-06-13 07:01:45,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:45,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:45,369.369 INFO    ] No update needed
[2026-06-13 07:01:45,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:45,393.393 INFO    ] 200
[2026-06-13 07:01:45,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:45,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:45,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:45,461.461 INFO    ] No camera update needed
[2026-06-13 07:01:45,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:45,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:45,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:45,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:47,510.510 INFO    ] ================================================
[2026-06-13 07:01:47,526.526 INFO    ] Launching Daemon at Sat Jun 13 07:01:47 IST 2026
[2026-06-13 07:01:47,537.537 INFO    ] ================================================
[2026-06-13 07:01:47,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:47
[2026-06-13 07:01:48,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:01:48,343.343 INFO    ] Initializing speech engine...
[2026-06-13 07:01:48,356.356 INFO    ] 2026-06-13 07:01:48
[2026-06-13 07:01:48,564.564 INFO    ] 2026-06-13 07:01:48
[2026-06-13 07:01:48,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:01:48,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:01:48,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:01:48,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:01:48,966.966 INFO    ] time= 13/06/2026 07:01:48
[2026-06-13 07:01:49,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:01:49,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:01:49,080.080 INFO    ] No existing commands found in stream
[2026-06-13 07:01:54,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:01:54,093.093 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 07:01:56,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:01:56,744.744 INFO    ] Checking for system updates...
[2026-06-13 07:01:56,780.780 INFO    ] 200
[2026-06-13 07:01:56,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:56,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:01:56,842.842 INFO    ] No update needed
[2026-06-13 07:01:56,844.844 INFO    ] Checking for camera pi updates...
[2026-06-13 07:01:56,879.879 INFO    ] 200
[2026-06-13 07:01:56,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:01:56,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:01:56,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:01:56,965.965 INFO    ] No camera update needed
[2026-06-13 07:01:56,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:01:56,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:01:56,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:01:56,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:01:59,022.022 INFO    ] ================================================
[2026-06-13 07:01:59,037.037 INFO    ] Launching Daemon at Sat Jun 13 07:01:59 IST 2026
[2026-06-13 07:01:59,048.048 INFO    ] ================================================
[2026-06-13 07:01:59,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:01:59
[2026-06-13 07:01:59,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:02:00,118.118 INFO    ] Initializing speech engine...
[2026-06-13 07:02:00,123.123 INFO    ] 2026-06-13 07:02:00
[2026-06-13 07:02:00,328.328 INFO    ] 2026-06-13 07:02:00
[2026-06-13 07:02:00,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:02:00,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:02:00,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:02:00,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:02:00,739.739 INFO    ] time= 13/06/2026 07:02:00
[2026-06-13 07:02:00,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:02:00,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:02:00,843.843 INFO    ] No existing commands found in stream
[2026-06-13 07:02:05,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:02:05,857.857 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 07:02:06,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:02:06,177.177 INFO    ] Checking for system updates...
[2026-06-13 07:02:06,199.199 INFO    ] 200
[2026-06-13 07:02:06,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:06,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:06,233.233 INFO    ] No update needed
[2026-06-13 07:02:06,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 07:02:06,253.253 INFO    ] 200
[2026-06-13 07:02:06,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:06,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:02:06,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:06,316.316 INFO    ] No camera update needed
[2026-06-13 07:02:06,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:02:06,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:02:06,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:02:06,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:02:08,358.358 INFO    ] ================================================
[2026-06-13 07:02:08,368.368 INFO    ] Launching Daemon at Sat Jun 13 07:02:08 IST 2026
[2026-06-13 07:02:08,374.374 INFO    ] ================================================
[2026-06-13 07:02:08,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:02:08
[2026-06-13 07:02:09,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:02:09,184.184 INFO    ] Initializing speech engine...
[2026-06-13 07:02:09,187.187 INFO    ] 2026-06-13 07:02:09
[2026-06-13 07:02:09,423.423 INFO    ] 2026-06-13 07:02:09
[2026-06-13 07:02:09,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:02:09,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:02:09,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:02:09,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:02:09,849.849 INFO    ] time= 13/06/2026 07:02:09
[2026-06-13 07:02:09,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:02:09,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:02:09,988.988 INFO    ] No existing commands found in stream
[2026-06-13 07:02:14,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:02:15,002.002 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 07:02:18,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:02:18,973.973 INFO    ] Checking for system updates...
[2026-06-13 07:02:18,995.995 INFO    ] 200
[2026-06-13 07:02:18,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:19,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:02:19,029.029 INFO    ] No update needed
[2026-06-13 07:02:19,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 07:02:19,051.051 INFO    ] 200
[2026-06-13 07:02:19,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:19,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:02:19,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:02:19,100.100 INFO    ] No camera update needed
[2026-06-13 07:02:19,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:02:19,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:02:19,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:02:19,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:02:21,148.148 INFO    ] ================================================
[2026-06-13 07:02:21,163.163 INFO    ] Launching Daemon at Sat Jun 13 07:02:21 IST 2026
[2026-06-13 07:02:21,174.174 INFO    ] ================================================
[2026-06-13 07:02:21,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:02:21
[2026-06-13 07:02:21,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:02:22,034.034 INFO    ] Initializing speech engine...
[2026-06-13 07:02:22,040.040 INFO    ] 2026-06-13 07:02:22
[2026-06-13 07:02:22,249.249 INFO    ] 2026-06-13 07:02:22
[2026-06-13 07:02:22,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:02:22,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:02:22,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:02:22,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:02:22,646.646 INFO    ] time= 13/06/2026 07:02:22
[2026-06-13 07:02:22,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:02:22,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:02:22,766.766 INFO    ] No existing commands found in stream
[2026-06-13 07:02:27,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:02:27,784.784 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 07:02:31,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:02:31,850.850 INFO    ] Checking for system updates...
[2026-06-13 07:02:31,874.874 INFO    ] 200
[2026-06-13 07:02:31,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:31,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:31,912.912 INFO    ] No update needed
[2026-06-13 07:02:31,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 07:02:31,938.938 INFO    ] 200
[2026-06-13 07:02:31,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:31,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:02:32,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:32,012.012 INFO    ] No camera update needed
[2026-06-13 07:02:32,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:02:32,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:02:32,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:02:32,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:02:34,068.068 INFO    ] ================================================
[2026-06-13 07:02:34,084.084 INFO    ] Launching Daemon at Sat Jun 13 07:02:34 IST 2026
[2026-06-13 07:02:34,095.095 INFO    ] ================================================
[2026-06-13 07:02:34,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:02:34
[2026-06-13 07:02:34,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:02:34,973.973 INFO    ] Initializing speech engine...
[2026-06-13 07:02:34,977.977 INFO    ] 2026-06-13 07:02:34
[2026-06-13 07:02:35,182.182 INFO    ] 2026-06-13 07:02:35
[2026-06-13 07:02:35,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:02:35,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:02:35,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:02:35,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:02:35,601.601 INFO    ] time= 13/06/2026 07:02:35
[2026-06-13 07:02:35,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:02:35,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:02:35,699.699 INFO    ] No existing commands found in stream
[2026-06-13 07:02:40,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:02:40,713.713 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 07:02:44,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:02:44,648.648 INFO    ] Checking for system updates...
[2026-06-13 07:02:44,691.691 INFO    ] 200
[2026-06-13 07:02:44,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:44,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:44,754.754 INFO    ] No update needed
[2026-06-13 07:02:44,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 07:02:44,792.792 INFO    ] 200
[2026-06-13 07:02:44,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:44,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:02:44,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:44,883.883 INFO    ] No camera update needed
[2026-06-13 07:02:44,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:02:44,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:02:44,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:02:44,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:02:46,945.945 INFO    ] ================================================
[2026-06-13 07:02:46,961.961 INFO    ] Launching Daemon at Sat Jun 13 07:02:46 IST 2026
[2026-06-13 07:02:46,972.972 INFO    ] ================================================
[2026-06-13 07:02:47,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:02:47
[2026-06-13 07:02:47,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:02:48,058.058 INFO    ] Initializing speech engine...
[2026-06-13 07:02:48,062.062 INFO    ] 2026-06-13 07:02:48
[2026-06-13 07:02:48,257.257 INFO    ] 2026-06-13 07:02:48
[2026-06-13 07:02:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:02:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:02:48,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:02:48,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:02:48,551.551 INFO    ] time= 13/06/2026 07:02:48
[2026-06-13 07:02:48,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:02:48,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:02:48,663.663 INFO    ] No existing commands found in stream
[2026-06-13 07:02:53,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:02:53,701.701 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 07:02:57,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:02:57,232.232 INFO    ] Checking for system updates...
[2026-06-13 07:02:57,252.252 INFO    ] 200
[2026-06-13 07:02:57,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:57,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:57,285.285 INFO    ] No update needed
[2026-06-13 07:02:57,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 07:02:57,306.306 INFO    ] 200
[2026-06-13 07:02:57,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:02:57,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:02:57,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:02:57,366.366 INFO    ] No camera update needed
[2026-06-13 07:02:57,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:02:57,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:02:57,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:02:57,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:02:59,415.415 INFO    ] ================================================
[2026-06-13 07:02:59,431.431 INFO    ] Launching Daemon at Sat Jun 13 07:02:59 IST 2026
[2026-06-13 07:02:59,443.443 INFO    ] ================================================
[2026-06-13 07:02:59,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:02:59
[2026-06-13 07:03:00,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:00,254.254 INFO    ] Initializing speech engine...
[2026-06-13 07:03:00,258.258 INFO    ] 2026-06-13 07:03:00
[2026-06-13 07:03:00,462.462 INFO    ] 2026-06-13 07:03:00
[2026-06-13 07:03:00,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:00,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:00,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:00,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:00,809.809 INFO    ] time= 13/06/2026 07:03:00
[2026-06-13 07:03:00,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:00,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:00,945.945 INFO    ] No existing commands found in stream
[2026-06-13 07:03:05,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:05,953.953 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 07:03:07,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:03:07,265.265 INFO    ] Checking for system updates...
[2026-06-13 07:03:07,286.286 INFO    ] 200
[2026-06-13 07:03:07,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:07,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:03:07,322.322 INFO    ] No update needed
[2026-06-13 07:03:07,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 07:03:07,343.343 INFO    ] 200
[2026-06-13 07:03:07,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:07,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:03:07,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:03:07,440.440 INFO    ] No camera update needed
[2026-06-13 07:03:07,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:03:07,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:03:07,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:03:07,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:03:09,507.507 INFO    ] ================================================
[2026-06-13 07:03:09,522.522 INFO    ] Launching Daemon at Sat Jun 13 07:03:09 IST 2026
[2026-06-13 07:03:09,533.533 INFO    ] ================================================
[2026-06-13 07:03:10,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:03:10
[2026-06-13 07:03:10,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:10,907.907 INFO    ] Initializing speech engine...
[2026-06-13 07:03:10,920.920 INFO    ] 2026-06-13 07:03:10
[2026-06-13 07:03:11,190.190 INFO    ] 2026-06-13 07:03:11
[2026-06-13 07:03:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:11,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:11,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:11,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:11,558.558 INFO    ] time= 13/06/2026 07:03:11
[2026-06-13 07:03:11,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:11,641.641 INFO    ] No existing commands found in stream
[2026-06-13 07:03:16,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:16,654.654 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 07:03:19,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:03:19,693.693 INFO    ] Checking for system updates...
[2026-06-13 07:03:19,713.713 INFO    ] 200
[2026-06-13 07:03:19,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:19,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:19,749.749 INFO    ] No update needed
[2026-06-13 07:03:19,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 07:03:19,770.770 INFO    ] 200
[2026-06-13 07:03:19,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:19,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:03:19,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:19,833.833 INFO    ] No camera update needed
[2026-06-13 07:03:19,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:03:19,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:03:19,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:03:19,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:03:21,882.882 INFO    ] ================================================
[2026-06-13 07:03:21,898.898 INFO    ] Launching Daemon at Sat Jun 13 07:03:21 IST 2026
[2026-06-13 07:03:21,909.909 INFO    ] ================================================
[2026-06-13 07:03:22,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:03:22
[2026-06-13 07:03:22,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:22,683.683 INFO    ] Initializing speech engine...
[2026-06-13 07:03:22,691.691 INFO    ] 2026-06-13 07:03:22
[2026-06-13 07:03:22,902.902 INFO    ] 2026-06-13 07:03:22
[2026-06-13 07:03:22,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:23,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:23,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:23,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:23,305.305 INFO    ] time= 13/06/2026 07:03:23
[2026-06-13 07:03:23,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:23,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:23,415.415 INFO    ] No existing commands found in stream
[2026-06-13 07:03:28,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:28,432.432 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 07:03:30,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:03:30,038.038 INFO    ] Checking for system updates...
[2026-06-13 07:03:30,058.058 INFO    ] 200
[2026-06-13 07:03:30,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:30,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:30,095.095 INFO    ] No update needed
[2026-06-13 07:03:30,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 07:03:30,115.115 INFO    ] 200
[2026-06-13 07:03:30,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:30,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:03:30,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:30,178.178 INFO    ] No camera update needed
[2026-06-13 07:03:30,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:03:30,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:03:30,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:03:30,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:03:32,228.228 INFO    ] ================================================
[2026-06-13 07:03:32,246.246 INFO    ] Launching Daemon at Sat Jun 13 07:03:32 IST 2026
[2026-06-13 07:03:32,259.259 INFO    ] ================================================
[2026-06-13 07:03:32,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:03:32
[2026-06-13 07:03:33,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:33,851.851 INFO    ] Initializing speech engine...
[2026-06-13 07:03:33,866.866 INFO    ] 2026-06-13 07:03:33
[2026-06-13 07:03:34,134.134 INFO    ] 2026-06-13 07:03:34
[2026-06-13 07:03:34,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:34,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:34,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:34,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:34,481.481 INFO    ] time= 13/06/2026 07:03:34
[2026-06-13 07:03:34,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:34,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:34,594.594 INFO    ] No existing commands found in stream
[2026-06-13 07:03:39,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:39,609.609 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 07:03:40,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:03:40,127.127 INFO    ] Checking for system updates...
[2026-06-13 07:03:40,148.148 INFO    ] 200
[2026-06-13 07:03:40,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:40,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:40,182.182 INFO    ] No update needed
[2026-06-13 07:03:40,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 07:03:40,202.202 INFO    ] 200
[2026-06-13 07:03:40,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:40,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:03:40,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:03:40,267.267 INFO    ] No camera update needed
[2026-06-13 07:03:40,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:03:40,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:03:40,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:03:40,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:03:42,317.317 INFO    ] ================================================
[2026-06-13 07:03:42,332.332 INFO    ] Launching Daemon at Sat Jun 13 07:03:42 IST 2026
[2026-06-13 07:03:42,344.344 INFO    ] ================================================
[2026-06-13 07:03:42,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:03:42
[2026-06-13 07:03:43,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:43,220.220 INFO    ] Initializing speech engine...
[2026-06-13 07:03:43,234.234 INFO    ] 2026-06-13 07:03:43
[2026-06-13 07:03:43,532.532 INFO    ] 2026-06-13 07:03:43
[2026-06-13 07:03:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:43,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:43,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:43,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:43,935.935 INFO    ] time= 13/06/2026 07:03:43
[2026-06-13 07:03:43,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:43,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:44,057.057 INFO    ] No existing commands found in stream
[2026-06-13 07:03:49,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:49,080.080 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 07:03:49,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:03:49,789.789 INFO    ] Checking for system updates...
[2026-06-13 07:03:49,811.811 INFO    ] 200
[2026-06-13 07:03:49,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:49,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:49,844.844 INFO    ] No update needed
[2026-06-13 07:03:49,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 07:03:49,867.867 INFO    ] 200
[2026-06-13 07:03:49,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:03:49,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:03:49,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:03:49,937.937 INFO    ] No camera update needed
[2026-06-13 07:03:49,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:03:49,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:03:49,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:03:49,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:03:51,985.985 INFO    ] ================================================
[2026-06-13 07:03:52,001.001 INFO    ] Launching Daemon at Sat Jun 13 07:03:51 IST 2026
[2026-06-13 07:03:52,012.012 INFO    ] ================================================
[2026-06-13 07:03:52,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:03:52
[2026-06-13 07:03:52,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:03:52,817.817 INFO    ] Initializing speech engine...
[2026-06-13 07:03:52,827.827 INFO    ] 2026-06-13 07:03:52
[2026-06-13 07:03:53,029.029 INFO    ] 2026-06-13 07:03:53
[2026-06-13 07:03:53,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:03:53,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:03:53,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:03:53,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:03:53,430.430 INFO    ] time= 13/06/2026 07:03:53
[2026-06-13 07:03:53,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:03:53,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:03:53,545.545 INFO    ] No existing commands found in stream
[2026-06-13 07:03:58,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:03:58,557.557 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 07:04:01,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:04:01,410.410 INFO    ] Checking for system updates...
[2026-06-13 07:04:01,431.431 INFO    ] 200
[2026-06-13 07:04:01,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:01,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:04:01,464.464 INFO    ] No update needed
[2026-06-13 07:04:01,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:01,487.487 INFO    ] 200
[2026-06-13 07:04:01,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:01,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:01,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:04:01,548.548 INFO    ] No camera update needed
[2026-06-13 07:04:01,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:01,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:01,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:01,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:04:03,591.591 INFO    ] ================================================
[2026-06-13 07:04:03,607.607 INFO    ] Launching Daemon at Sat Jun 13 07:04:03 IST 2026
[2026-06-13 07:04:03,618.618 INFO    ] ================================================
[2026-06-13 07:04:03,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:04:03
[2026-06-13 07:04:04,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:04:04,469.469 INFO    ] Initializing speech engine...
[2026-06-13 07:04:04,475.475 INFO    ] 2026-06-13 07:04:04
[2026-06-13 07:04:04,684.684 INFO    ] 2026-06-13 07:04:04
[2026-06-13 07:04:04,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:04:04,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:04:04,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:04:05,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:04:05,087.087 INFO    ] time= 13/06/2026 07:04:05
[2026-06-13 07:04:05,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:04:05,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:04:05,202.202 INFO    ] No existing commands found in stream
[2026-06-13 07:04:10,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:04:10,220.220 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 07:04:12,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:04:12,411.411 INFO    ] Checking for system updates...
[2026-06-13 07:04:12,433.433 INFO    ] 200
[2026-06-13 07:04:12,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:12,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:12,467.467 INFO    ] No update needed
[2026-06-13 07:04:12,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:12,489.489 INFO    ] 200
[2026-06-13 07:04:12,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:12,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:12,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:12,658.658 INFO    ] No camera update needed
[2026-06-13 07:04:12,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:12,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:12,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:12,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:04:14,710.710 INFO    ] ================================================
[2026-06-13 07:04:14,726.726 INFO    ] Launching Daemon at Sat Jun 13 07:04:14 IST 2026
[2026-06-13 07:04:14,737.737 INFO    ] ================================================
[2026-06-13 07:04:15,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:04:15
[2026-06-13 07:04:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:04:15,591.591 INFO    ] Initializing speech engine...
[2026-06-13 07:04:15,602.602 INFO    ] 2026-06-13 07:04:15
[2026-06-13 07:04:15,814.814 INFO    ] 2026-06-13 07:04:15
[2026-06-13 07:04:15,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:04:16,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:04:16,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:04:16,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:04:16,222.222 INFO    ] time= 13/06/2026 07:04:16
[2026-06-13 07:04:16,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:04:16,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:04:16,341.341 INFO    ] No existing commands found in stream
[2026-06-13 07:04:21,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:04:21,354.354 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 07:04:23,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:04:23,976.976 INFO    ] Checking for system updates...
[2026-06-13 07:04:23,997.997 INFO    ] 200
[2026-06-13 07:04:23,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:24,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:24,031.031 INFO    ] No update needed
[2026-06-13 07:04:24,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:24,052.052 INFO    ] 200
[2026-06-13 07:04:24,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:24,079.079 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:24,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:24,119.119 INFO    ] No camera update needed
[2026-06-13 07:04:24,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:24,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:24,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:24,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:04:26,161.161 INFO    ] ================================================
[2026-06-13 07:04:26,170.170 INFO    ] Launching Daemon at Sat Jun 13 07:04:26 IST 2026
[2026-06-13 07:04:26,177.177 INFO    ] ================================================
[2026-06-13 07:04:26,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:04:26
[2026-06-13 07:04:26,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:04:27,009.009 INFO    ] Initializing speech engine...
[2026-06-13 07:04:27,019.019 INFO    ] 2026-06-13 07:04:27
[2026-06-13 07:04:27,230.230 INFO    ] 2026-06-13 07:04:27
[2026-06-13 07:04:27,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:04:27,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:04:27,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:04:27,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:04:27,552.552 INFO    ] time= 13/06/2026 07:04:27
[2026-06-13 07:04:27,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:04:27,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:04:27,682.682 INFO    ] No existing commands found in stream
[2026-06-13 07:04:32,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:04:32,712.712 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 07:04:34,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:04:34,275.275 INFO    ] Checking for system updates...
[2026-06-13 07:04:34,297.297 INFO    ] 200
[2026-06-13 07:04:34,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:34,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:34,331.331 INFO    ] No update needed
[2026-06-13 07:04:34,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:34,352.352 INFO    ] 200
[2026-06-13 07:04:34,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:34,377.377 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:34,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:34,416.416 INFO    ] No camera update needed
[2026-06-13 07:04:34,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:34,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:34,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:34,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:04:36,465.465 INFO    ] ================================================
[2026-06-13 07:04:36,484.484 INFO    ] Launching Daemon at Sat Jun 13 07:04:36 IST 2026
[2026-06-13 07:04:36,496.496 INFO    ] ================================================
[2026-06-13 07:04:36,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:04:36
[2026-06-13 07:04:37,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:04:37,300.300 INFO    ] Initializing speech engine...
[2026-06-13 07:04:37,310.310 INFO    ] 2026-06-13 07:04:37
[2026-06-13 07:04:37,517.517 INFO    ] 2026-06-13 07:04:37
[2026-06-13 07:04:37,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:04:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:04:37,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:04:37,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:04:37,920.920 INFO    ] time= 13/06/2026 07:04:37
[2026-06-13 07:04:37,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:04:37,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:04:38,038.038 INFO    ] No existing commands found in stream
[2026-06-13 07:04:43,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:04:43,050.050 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 07:04:45,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:04:45,937.937 INFO    ] Checking for system updates...
[2026-06-13 07:04:45,958.958 INFO    ] 200
[2026-06-13 07:04:45,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:45,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:45,994.994 INFO    ] No update needed
[2026-06-13 07:04:45,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:46,015.015 INFO    ] 200
[2026-06-13 07:04:46,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:46,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:46,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:46,082.082 INFO    ] No camera update needed
[2026-06-13 07:04:46,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:46,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:46,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:46,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:04:48,132.132 INFO    ] ================================================
[2026-06-13 07:04:48,147.147 INFO    ] Launching Daemon at Sat Jun 13 07:04:48 IST 2026
[2026-06-13 07:04:48,158.158 INFO    ] ================================================
[2026-06-13 07:04:48,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:04:48
[2026-06-13 07:04:48,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:04:49,013.013 INFO    ] Initializing speech engine...
[2026-06-13 07:04:49,019.019 INFO    ] 2026-06-13 07:04:49
[2026-06-13 07:04:49,229.229 INFO    ] 2026-06-13 07:04:49
[2026-06-13 07:04:49,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:04:49,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:04:49,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:04:49,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:04:49,648.648 INFO    ] time= 13/06/2026 07:04:49
[2026-06-13 07:04:49,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:04:49,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:04:49,746.746 INFO    ] No existing commands found in stream
[2026-06-13 07:04:54,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:04:54,764.764 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 07:04:57,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:04:57,826.826 INFO    ] Checking for system updates...
[2026-06-13 07:04:57,847.847 INFO    ] 200
[2026-06-13 07:04:57,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:57,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:57,882.882 INFO    ] No update needed
[2026-06-13 07:04:57,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 07:04:57,903.903 INFO    ] 200
[2026-06-13 07:04:57,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:04:57,930.930 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:04:57,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:04:57,969.969 INFO    ] No camera update needed
[2026-06-13 07:04:57,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:04:57,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:04:57,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:04:57,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:00,016.016 INFO    ] ================================================
[2026-06-13 07:05:00,032.032 INFO    ] Launching Daemon at Sat Jun 13 07:05:00 IST 2026
[2026-06-13 07:05:00,043.043 INFO    ] ================================================
[2026-06-13 07:05:00,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:00
[2026-06-13 07:05:00,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:00,935.935 INFO    ] Initializing speech engine...
[2026-06-13 07:05:00,943.943 INFO    ] 2026-06-13 07:05:00
[2026-06-13 07:05:01,143.143 INFO    ] 2026-06-13 07:05:01
[2026-06-13 07:05:01,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:01,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:01,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:01,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:01,591.591 INFO    ] time= 13/06/2026 07:05:01
[2026-06-13 07:05:01,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:01,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:01,778.778 INFO    ] No existing commands found in stream
[2026-06-13 07:05:06,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:06,793.793 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 07:05:07,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:05:07,190.190 INFO    ] Checking for system updates...
[2026-06-13 07:05:07,211.211 INFO    ] 200
[2026-06-13 07:05:07,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:07,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:05:07,247.247 INFO    ] No update needed
[2026-06-13 07:05:07,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 07:05:07,269.269 INFO    ] 200
[2026-06-13 07:05:07,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:07,302.302 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:05:07,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:05:07,341.341 INFO    ] No camera update needed
[2026-06-13 07:05:07,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:05:07,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:05:07,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:05:07,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:09,389.389 INFO    ] ================================================
[2026-06-13 07:05:09,404.404 INFO    ] Launching Daemon at Sat Jun 13 07:05:09 IST 2026
[2026-06-13 07:05:09,415.415 INFO    ] ================================================
[2026-06-13 07:05:09,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:09
[2026-06-13 07:05:10,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:10,703.703 INFO    ] Initializing speech engine...
[2026-06-13 07:05:10,708.708 INFO    ] 2026-06-13 07:05:10
[2026-06-13 07:05:10,913.913 INFO    ] 2026-06-13 07:05:10
[2026-06-13 07:05:10,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:11,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:11,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:11,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:11,317.317 INFO    ] time= 13/06/2026 07:05:11
[2026-06-13 07:05:11,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:11,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:11,427.427 INFO    ] No existing commands found in stream
[2026-06-13 07:05:16,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:16,439.439 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 07:05:18,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:05:18,549.549 INFO    ] Checking for system updates...
[2026-06-13 07:05:18,571.571 INFO    ] 200
[2026-06-13 07:05:18,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:18,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:18,605.605 INFO    ] No update needed
[2026-06-13 07:05:18,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 07:05:18,627.627 INFO    ] 200
[2026-06-13 07:05:18,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:18,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:05:18,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:18,694.694 INFO    ] No camera update needed
[2026-06-13 07:05:18,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:05:18,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:05:18,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:05:18,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:20,746.746 INFO    ] ================================================
[2026-06-13 07:05:20,762.762 INFO    ] Launching Daemon at Sat Jun 13 07:05:20 IST 2026
[2026-06-13 07:05:20,773.773 INFO    ] ================================================
[2026-06-13 07:05:21,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:21
[2026-06-13 07:05:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:21,561.561 INFO    ] Initializing speech engine...
[2026-06-13 07:05:21,565.565 INFO    ] 2026-06-13 07:05:21
[2026-06-13 07:05:21,758.758 INFO    ] 2026-06-13 07:05:21
[2026-06-13 07:05:21,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:22,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:22,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:22,171.171 INFO    ] time= 13/06/2026 07:05:22
[2026-06-13 07:05:22,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:22,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:22,366.366 INFO    ] No existing commands found in stream
[2026-06-13 07:05:27,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:27,378.378 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 07:05:28,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:05:28,206.206 INFO    ] Checking for system updates...
[2026-06-13 07:05:28,228.228 INFO    ] 200
[2026-06-13 07:05:28,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:28,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:28,262.262 INFO    ] No update needed
[2026-06-13 07:05:28,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 07:05:28,284.284 INFO    ] 200
[2026-06-13 07:05:28,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:28,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:05:28,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:28,348.348 INFO    ] No camera update needed
[2026-06-13 07:05:28,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:05:28,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:05:28,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:05:28,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:30,395.395 INFO    ] ================================================
[2026-06-13 07:05:30,410.410 INFO    ] Launching Daemon at Sat Jun 13 07:05:30 IST 2026
[2026-06-13 07:05:30,421.421 INFO    ] ================================================
[2026-06-13 07:05:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:30
[2026-06-13 07:05:31,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:31,237.237 INFO    ] Initializing speech engine...
[2026-06-13 07:05:31,239.239 INFO    ] 2026-06-13 07:05:31
[2026-06-13 07:05:31,475.475 INFO    ] 2026-06-13 07:05:31
[2026-06-13 07:05:31,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:31,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:31,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:31,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:31,925.925 INFO    ] time= 13/06/2026 07:05:31
[2026-06-13 07:05:31,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:31,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:32,030.030 INFO    ] No existing commands found in stream
[2026-06-13 07:05:37,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:37,044.044 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 07:05:39,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:05:39,696.696 INFO    ] Checking for system updates...
[2026-06-13 07:05:39,717.717 INFO    ] 200
[2026-06-13 07:05:39,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:39,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:39,754.754 INFO    ] No update needed
[2026-06-13 07:05:39,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 07:05:39,777.777 INFO    ] 200
[2026-06-13 07:05:39,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:39,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:05:39,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:39,844.844 INFO    ] No camera update needed
[2026-06-13 07:05:39,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:05:39,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:05:39,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:05:39,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:41,892.892 INFO    ] ================================================
[2026-06-13 07:05:41,907.907 INFO    ] Launching Daemon at Sat Jun 13 07:05:41 IST 2026
[2026-06-13 07:05:41,919.919 INFO    ] ================================================
[2026-06-13 07:05:42,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:42
[2026-06-13 07:05:42,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:42,719.719 INFO    ] Initializing speech engine...
[2026-06-13 07:05:42,722.722 INFO    ] 2026-06-13 07:05:42
[2026-06-13 07:05:42,921.921 INFO    ] 2026-06-13 07:05:42
[2026-06-13 07:05:42,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:43,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:43,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:43,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:43,203.203 INFO    ] time= 13/06/2026 07:05:43
[2026-06-13 07:05:43,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:43,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:43,293.293 INFO    ] No existing commands found in stream
[2026-06-13 07:05:48,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:48,313.313 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 07:05:51,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:05:51,102.102 INFO    ] Checking for system updates...
[2026-06-13 07:05:51,124.124 INFO    ] 200
[2026-06-13 07:05:51,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:51,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:51,157.157 INFO    ] No update needed
[2026-06-13 07:05:51,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 07:05:51,178.178 INFO    ] 200
[2026-06-13 07:05:51,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:05:51,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:05:51,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:05:51,241.241 INFO    ] No camera update needed
[2026-06-13 07:05:51,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:05:51,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:05:51,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:05:51,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:05:53,288.288 INFO    ] ================================================
[2026-06-13 07:05:53,304.304 INFO    ] Launching Daemon at Sat Jun 13 07:05:53 IST 2026
[2026-06-13 07:05:53,314.314 INFO    ] ================================================
[2026-06-13 07:05:53,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:05:53
[2026-06-13 07:05:53,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:05:54,110.110 INFO    ] Initializing speech engine...
[2026-06-13 07:05:54,115.115 INFO    ] 2026-06-13 07:05:54
[2026-06-13 07:05:54,317.317 INFO    ] 2026-06-13 07:05:54
[2026-06-13 07:05:54,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:05:54,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:05:54,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:05:54,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:05:54,728.728 INFO    ] time= 13/06/2026 07:05:54
[2026-06-13 07:05:54,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:05:54,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:05:54,831.831 INFO    ] No existing commands found in stream
[2026-06-13 07:05:59,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:05:59,844.844 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 07:06:00,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:06:00,332.332 INFO    ] Checking for system updates...
[2026-06-13 07:06:00,353.353 INFO    ] 200
[2026-06-13 07:06:00,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:00,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:00,389.389 INFO    ] No update needed
[2026-06-13 07:06:00,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:00,410.410 INFO    ] 200
[2026-06-13 07:06:00,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:00,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:00,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:00,460.460 INFO    ] No camera update needed
[2026-06-13 07:06:00,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:00,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:00,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:00,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:06:02,502.502 INFO    ] ================================================
[2026-06-13 07:06:02,513.513 INFO    ] Launching Daemon at Sat Jun 13 07:06:02 IST 2026
[2026-06-13 07:06:02,520.520 INFO    ] ================================================
[2026-06-13 07:06:02,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:06:02
[2026-06-13 07:06:03,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:06:03,346.346 INFO    ] Initializing speech engine...
[2026-06-13 07:06:03,359.359 INFO    ] 2026-06-13 07:06:03
[2026-06-13 07:06:03,568.568 INFO    ] 2026-06-13 07:06:03
[2026-06-13 07:06:03,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:06:03,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:06:03,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:06:03,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:06:03,900.900 INFO    ] time= 13/06/2026 07:06:03
[2026-06-13 07:06:03,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:06:03,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:06:04,028.028 INFO    ] No existing commands found in stream
[2026-06-13 07:06:09,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:06:09,040.040 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 07:06:11,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:06:11,576.576 INFO    ] Checking for system updates...
[2026-06-13 07:06:11,612.612 INFO    ] 200
[2026-06-13 07:06:11,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:11,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:11,661.661 INFO    ] No update needed
[2026-06-13 07:06:11,662.662 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:11,681.681 INFO    ] 200
[2026-06-13 07:06:11,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:11,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:11,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:11,755.755 INFO    ] No camera update needed
[2026-06-13 07:06:11,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:11,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:11,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:11,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:06:13,804.804 INFO    ] ================================================
[2026-06-13 07:06:13,819.819 INFO    ] Launching Daemon at Sat Jun 13 07:06:13 IST 2026
[2026-06-13 07:06:13,831.831 INFO    ] ================================================
[2026-06-13 07:06:14,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:06:14
[2026-06-13 07:06:14,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:06:14,666.666 INFO    ] Initializing speech engine...
[2026-06-13 07:06:14,672.672 INFO    ] 2026-06-13 07:06:14
[2026-06-13 07:06:14,982.982 INFO    ] 2026-06-13 07:06:14
[2026-06-13 07:06:15,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:06:15,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:06:15,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:06:15,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:06:15,355.355 INFO    ] time= 13/06/2026 07:06:15
[2026-06-13 07:06:15,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:06:15,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:06:15,438.438 INFO    ] No existing commands found in stream
[2026-06-13 07:06:20,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:06:20,453.453 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 07:06:22,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:06:22,882.882 INFO    ] Checking for system updates...
[2026-06-13 07:06:22,927.927 INFO    ] 200
[2026-06-13 07:06:22,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:22,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:22,967.967 INFO    ] No update needed
[2026-06-13 07:06:22,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:22,988.988 INFO    ] 200
[2026-06-13 07:06:22,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:23,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:23,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:23,155.155 INFO    ] No camera update needed
[2026-06-13 07:06:23,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:23,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:23,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:23,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:06:25,202.202 INFO    ] ================================================
[2026-06-13 07:06:25,217.217 INFO    ] Launching Daemon at Sat Jun 13 07:06:25 IST 2026
[2026-06-13 07:06:25,228.228 INFO    ] ================================================
[2026-06-13 07:06:25,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:06:25
[2026-06-13 07:06:25,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:06:26,172.172 INFO    ] Initializing speech engine...
[2026-06-13 07:06:26,180.180 INFO    ] 2026-06-13 07:06:26
[2026-06-13 07:06:26,449.449 INFO    ] 2026-06-13 07:06:26
[2026-06-13 07:06:26,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:06:26,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:06:26,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:06:26,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:06:26,778.778 INFO    ] time= 13/06/2026 07:06:26
[2026-06-13 07:06:26,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:06:26,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:06:26,891.891 INFO    ] No existing commands found in stream
[2026-06-13 07:06:31,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:06:31,909.909 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 07:06:33,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:06:33,811.811 INFO    ] Checking for system updates...
[2026-06-13 07:06:33,834.834 INFO    ] 200
[2026-06-13 07:06:33,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:33,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:33,870.870 INFO    ] No update needed
[2026-06-13 07:06:33,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:33,894.894 INFO    ] 200
[2026-06-13 07:06:33,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:33,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:33,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:33,960.960 INFO    ] No camera update needed
[2026-06-13 07:06:33,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:33,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:33,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:06:36,008.008 INFO    ] ================================================
[2026-06-13 07:06:36,023.023 INFO    ] Launching Daemon at Sat Jun 13 07:06:36 IST 2026
[2026-06-13 07:06:36,034.034 INFO    ] ================================================
[2026-06-13 07:06:36,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:06:36
[2026-06-13 07:06:36,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:06:36,922.922 INFO    ] Initializing speech engine...
[2026-06-13 07:06:36,928.928 INFO    ] 2026-06-13 07:06:36
[2026-06-13 07:06:37,139.139 INFO    ] 2026-06-13 07:06:37
[2026-06-13 07:06:37,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:06:37,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:06:37,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:06:37,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:06:37,555.555 INFO    ] time= 13/06/2026 07:06:37
[2026-06-13 07:06:37,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:06:37,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:06:37,669.669 INFO    ] No existing commands found in stream
[2026-06-13 07:06:42,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:06:42,684.684 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 07:06:46,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:06:46,145.145 INFO    ] Checking for system updates...
[2026-06-13 07:06:46,167.167 INFO    ] 200
[2026-06-13 07:06:46,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:46,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:46,203.203 INFO    ] No update needed
[2026-06-13 07:06:46,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:46,226.226 INFO    ] 200
[2026-06-13 07:06:46,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:46,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:46,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:46,289.289 INFO    ] No camera update needed
[2026-06-13 07:06:46,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:46,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:46,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:46,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:06:48,337.337 INFO    ] ================================================
[2026-06-13 07:06:48,352.352 INFO    ] Launching Daemon at Sat Jun 13 07:06:48 IST 2026
[2026-06-13 07:06:48,362.362 INFO    ] ================================================
[2026-06-13 07:06:48,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:06:48
[2026-06-13 07:06:49,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:06:49,233.233 INFO    ] Initializing speech engine...
[2026-06-13 07:06:49,239.239 INFO    ] 2026-06-13 07:06:49
[2026-06-13 07:06:49,446.446 INFO    ] 2026-06-13 07:06:49
[2026-06-13 07:06:49,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:06:49,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:06:49,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:06:49,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:06:49,868.868 INFO    ] time= 13/06/2026 07:06:49
[2026-06-13 07:06:49,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:06:49,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:06:49,964.964 INFO    ] No existing commands found in stream
[2026-06-13 07:06:54,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:06:54,978.978 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 07:06:57,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:06:57,843.843 INFO    ] Checking for system updates...
[2026-06-13 07:06:57,864.864 INFO    ] 200
[2026-06-13 07:06:57,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:57,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:06:57,898.898 INFO    ] No update needed
[2026-06-13 07:06:57,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 07:06:57,921.921 INFO    ] 200
[2026-06-13 07:06:57,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:06:57,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:06:57,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:06:57,985.985 INFO    ] No camera update needed
[2026-06-13 07:06:57,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:06:57,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:06:57,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:06:57,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:00,033.033 INFO    ] ================================================
[2026-06-13 07:07:00,049.049 INFO    ] Launching Daemon at Sat Jun 13 07:07:00 IST 2026
[2026-06-13 07:07:00,063.063 INFO    ] ================================================
[2026-06-13 07:07:00,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:00
[2026-06-13 07:07:00,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:07:00,861.861 INFO    ] Initializing speech engine...
[2026-06-13 07:07:00,866.866 INFO    ] 2026-06-13 07:07:00
[2026-06-13 07:07:01,070.070 INFO    ] 2026-06-13 07:07:01
[2026-06-13 07:07:01,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:07:01,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:07:01,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:07:01,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:07:01,470.470 INFO    ] time= 13/06/2026 07:07:01
[2026-06-13 07:07:01,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:07:01,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:07:01,615.615 INFO    ] No existing commands found in stream
[2026-06-13 07:07:06,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:07:06,632.632 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 07:07:09,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:07:09,496.496 INFO    ] Checking for system updates...
[2026-06-13 07:07:09,517.517 INFO    ] 200
[2026-06-13 07:07:09,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:09,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:09,551.551 INFO    ] No update needed
[2026-06-13 07:07:09,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 07:07:09,572.572 INFO    ] 200
[2026-06-13 07:07:09,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:09,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:07:09,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:07:09,639.639 INFO    ] No camera update needed
[2026-06-13 07:07:09,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:07:09,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:07:09,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:07:09,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:11,686.686 INFO    ] ================================================
[2026-06-13 07:07:11,702.702 INFO    ] Launching Daemon at Sat Jun 13 07:07:11 IST 2026
[2026-06-13 07:07:11,713.713 INFO    ] ================================================
[2026-06-13 07:07:12,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:12
[2026-06-13 07:07:12,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:07:12,539.539 INFO    ] Initializing speech engine...
[2026-06-13 07:07:12,544.544 INFO    ] 2026-06-13 07:07:12
[2026-06-13 07:07:12,752.752 INFO    ] 2026-06-13 07:07:12
[2026-06-13 07:07:12,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:07:12,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:07:12,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:07:13,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:07:13,174.174 INFO    ] time= 13/06/2026 07:07:13
[2026-06-13 07:07:13,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:07:13,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:07:13,276.276 INFO    ] No existing commands found in stream
[2026-06-13 07:07:18,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:07:18,294.294 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 07:07:20,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:07:20,096.096 INFO    ] Checking for system updates...
[2026-06-13 07:07:20,117.117 INFO    ] 200
[2026-06-13 07:07:20,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:20,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:20,151.151 INFO    ] No update needed
[2026-06-13 07:07:20,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 07:07:20,172.172 INFO    ] 200
[2026-06-13 07:07:20,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:20,200.200 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:07:20,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:20,247.247 INFO    ] No camera update needed
[2026-06-13 07:07:20,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:07:20,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:07:20,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:07:20,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:22,293.293 INFO    ] ================================================
[2026-06-13 07:07:22,308.308 INFO    ] Launching Daemon at Sat Jun 13 07:07:22 IST 2026
[2026-06-13 07:07:22,320.320 INFO    ] ================================================
[2026-06-13 07:07:22,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:22
[2026-06-13 07:07:23,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:07:23,187.187 INFO    ] Initializing speech engine...
[2026-06-13 07:07:23,193.193 INFO    ] 2026-06-13 07:07:23
[2026-06-13 07:07:23,403.403 INFO    ] 2026-06-13 07:07:23
[2026-06-13 07:07:23,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:07:23,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:07:23,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:07:23,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:07:23,801.801 INFO    ] time= 13/06/2026 07:07:23
[2026-06-13 07:07:23,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:07:23,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:07:23,917.917 INFO    ] No existing commands found in stream
[2026-06-13 07:07:28,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:07:28,940.940 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 07:07:31,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:07:31,669.669 INFO    ] Checking for system updates...
[2026-06-13 07:07:31,697.697 INFO    ] 200
[2026-06-13 07:07:31,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:31,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:07:31,741.741 INFO    ] No update needed
[2026-06-13 07:07:31,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 07:07:31,765.765 INFO    ] 200
[2026-06-13 07:07:31,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:31,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:07:31,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:07:31,828.828 INFO    ] No camera update needed
[2026-06-13 07:07:31,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:07:31,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:07:31,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:07:31,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:33,880.880 INFO    ] ================================================
[2026-06-13 07:07:33,896.896 INFO    ] Launching Daemon at Sat Jun 13 07:07:33 IST 2026
[2026-06-13 07:07:33,907.907 INFO    ] ================================================
[2026-06-13 07:07:34,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:34
[2026-06-13 07:07:34,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:07:34,701.701 INFO    ] Initializing speech engine...
[2026-06-13 07:07:34,706.706 INFO    ] 2026-06-13 07:07:34
[2026-06-13 07:07:34,917.917 INFO    ] 2026-06-13 07:07:34
[2026-06-13 07:07:34,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:07:35,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:07:35,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:07:35,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:07:35,325.325 INFO    ] time= 13/06/2026 07:07:35
[2026-06-13 07:07:35,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:07:35,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:07:35,510.510 INFO    ] No existing commands found in stream
[2026-06-13 07:07:40,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:07:40,522.522 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 07:07:44,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:07:44,587.587 INFO    ] Checking for system updates...
[2026-06-13 07:07:44,608.608 INFO    ] 200
[2026-06-13 07:07:44,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:44,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:44,642.642 INFO    ] No update needed
[2026-06-13 07:07:44,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 07:07:44,663.663 INFO    ] 200
[2026-06-13 07:07:44,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:44,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:07:44,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:44,730.730 INFO    ] No camera update needed
[2026-06-13 07:07:44,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:07:44,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:07:44,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:07:44,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:46,779.779 INFO    ] ================================================
[2026-06-13 07:07:46,794.794 INFO    ] Launching Daemon at Sat Jun 13 07:07:46 IST 2026
[2026-06-13 07:07:46,804.804 INFO    ] ================================================
[2026-06-13 07:07:47,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:47
[2026-06-13 07:07:47,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:07:47,578.578 INFO    ] Initializing speech engine...
[2026-06-13 07:07:47,586.586 INFO    ] 2026-06-13 07:07:47
[2026-06-13 07:07:47,798.798 INFO    ] 2026-06-13 07:07:47
[2026-06-13 07:07:47,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:07:47,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:07:48,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:07:48,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:07:48,181.181 INFO    ] time= 13/06/2026 07:07:48
[2026-06-13 07:07:48,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:07:48,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:07:48,317.317 INFO    ] No existing commands found in stream
[2026-06-13 07:07:53,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:07:53,330.330 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 07:07:57,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:07:57,149.149 INFO    ] Checking for system updates...
[2026-06-13 07:07:57,170.170 INFO    ] 200
[2026-06-13 07:07:57,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:57,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:57,204.204 INFO    ] No update needed
[2026-06-13 07:07:57,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 07:07:57,224.224 INFO    ] 200
[2026-06-13 07:07:57,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:07:57,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:07:57,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:07:57,291.291 INFO    ] No camera update needed
[2026-06-13 07:07:57,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:07:57,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:07:57,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:07:57,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:07:59,339.339 INFO    ] ================================================
[2026-06-13 07:07:59,355.355 INFO    ] Launching Daemon at Sat Jun 13 07:07:59 IST 2026
[2026-06-13 07:07:59,366.366 INFO    ] ================================================
[2026-06-13 07:07:59,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:07:59
[2026-06-13 07:08:00,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:08:00,153.153 INFO    ] Initializing speech engine...
[2026-06-13 07:08:00,158.158 INFO    ] 2026-06-13 07:08:00
[2026-06-13 07:08:00,376.376 INFO    ] 2026-06-13 07:08:00
[2026-06-13 07:08:00,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:08:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:08:00,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:08:00,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:08:00,654.654 INFO    ] time= 13/06/2026 07:08:00
[2026-06-13 07:08:00,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:08:00,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:08:00,830.830 INFO    ] No existing commands found in stream
[2026-06-13 07:08:05,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:08:05,842.842 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 07:08:09,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:08:09,815.815 INFO    ] Checking for system updates...
[2026-06-13 07:08:09,837.837 INFO    ] 200
[2026-06-13 07:08:09,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:09,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:08:09,873.873 INFO    ] No update needed
[2026-06-13 07:08:09,874.874 INFO    ] Checking for camera pi updates...
[2026-06-13 07:08:09,894.894 INFO    ] 200
[2026-06-13 07:08:09,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:09,920.920 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:08:09,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:09,961.961 INFO    ] No camera update needed
[2026-06-13 07:08:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:08:09,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:08:09,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:08:09,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:08:12,010.010 INFO    ] ================================================
[2026-06-13 07:08:12,025.025 INFO    ] Launching Daemon at Sat Jun 13 07:08:12 IST 2026
[2026-06-13 07:08:12,036.036 INFO    ] ================================================
[2026-06-13 07:08:12,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:08:12
[2026-06-13 07:08:12,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:08:13,184.184 INFO    ] Initializing speech engine...
[2026-06-13 07:08:13,201.201 INFO    ] 2026-06-13 07:08:13
[2026-06-13 07:08:13,481.481 INFO    ] 2026-06-13 07:08:13
[2026-06-13 07:08:13,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:08:13,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:08:13,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:08:13,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:08:13,841.841 INFO    ] time= 13/06/2026 07:08:13
[2026-06-13 07:08:13,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:08:13,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:08:13,918.918 INFO    ] No existing commands found in stream
[2026-06-13 07:08:18,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:08:18,935.935 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 07:08:22,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:08:22,930.930 INFO    ] Checking for system updates...
[2026-06-13 07:08:22,951.951 INFO    ] 200
[2026-06-13 07:08:22,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:22,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:22,985.985 INFO    ] No update needed
[2026-06-13 07:08:22,987.987 INFO    ] Checking for camera pi updates...
[2026-06-13 07:08:23,007.007 INFO    ] 200
[2026-06-13 07:08:23,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:23,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:08:23,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:23,072.072 INFO    ] No camera update needed
[2026-06-13 07:08:23,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:08:23,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:08:23,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:08:23,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:08:25,121.121 INFO    ] ================================================
[2026-06-13 07:08:25,137.137 INFO    ] Launching Daemon at Sat Jun 13 07:08:25 IST 2026
[2026-06-13 07:08:25,147.147 INFO    ] ================================================
[2026-06-13 07:08:25,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:08:25
[2026-06-13 07:08:25,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:08:26,035.035 INFO    ] Initializing speech engine...
[2026-06-13 07:08:26,041.041 INFO    ] 2026-06-13 07:08:26
[2026-06-13 07:08:26,249.249 INFO    ] 2026-06-13 07:08:26
[2026-06-13 07:08:26,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:08:26,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:08:26,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:08:26,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:08:26,673.673 INFO    ] time= 13/06/2026 07:08:26
[2026-06-13 07:08:26,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:08:26,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:08:26,771.771 INFO    ] No existing commands found in stream
[2026-06-13 07:08:31,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:08:31,781.781 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 07:08:35,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:08:35,481.481 INFO    ] Checking for system updates...
[2026-06-13 07:08:35,502.502 INFO    ] 200
[2026-06-13 07:08:35,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:35,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:35,535.535 INFO    ] No update needed
[2026-06-13 07:08:35,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 07:08:35,557.557 INFO    ] 200
[2026-06-13 07:08:35,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:35,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:08:35,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:35,622.622 INFO    ] No camera update needed
[2026-06-13 07:08:35,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:08:35,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:08:35,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:08:35,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:08:37,671.671 INFO    ] ================================================
[2026-06-13 07:08:37,686.686 INFO    ] Launching Daemon at Sat Jun 13 07:08:37 IST 2026
[2026-06-13 07:08:37,697.697 INFO    ] ================================================
[2026-06-13 07:08:38,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:08:38
[2026-06-13 07:08:38,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:08:38,524.524 INFO    ] Initializing speech engine...
[2026-06-13 07:08:38,528.528 INFO    ] 2026-06-13 07:08:38
[2026-06-13 07:08:38,734.734 INFO    ] 2026-06-13 07:08:38
[2026-06-13 07:08:38,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:08:38,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:08:38,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:08:39,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:08:39,148.148 INFO    ] time= 13/06/2026 07:08:39
[2026-06-13 07:08:39,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:08:39,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:08:39,246.246 INFO    ] No existing commands found in stream
[2026-06-13 07:08:44,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:08:44,260.260 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 07:08:47,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:08:47,101.101 INFO    ] Checking for system updates...
[2026-06-13 07:08:47,122.122 INFO    ] 200
[2026-06-13 07:08:47,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:47,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:47,157.157 INFO    ] No update needed
[2026-06-13 07:08:47,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 07:08:47,180.180 INFO    ] 200
[2026-06-13 07:08:47,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:47,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:08:47,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:47,250.250 INFO    ] No camera update needed
[2026-06-13 07:08:47,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:08:47,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:08:47,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:08:47,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:08:49,299.299 INFO    ] ================================================
[2026-06-13 07:08:49,314.314 INFO    ] Launching Daemon at Sat Jun 13 07:08:49 IST 2026
[2026-06-13 07:08:49,325.325 INFO    ] ================================================
[2026-06-13 07:08:49,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:08:49
[2026-06-13 07:08:49,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:08:50,108.108 INFO    ] Initializing speech engine...
[2026-06-13 07:08:50,118.118 INFO    ] 2026-06-13 07:08:50
[2026-06-13 07:08:50,337.337 INFO    ] 2026-06-13 07:08:50
[2026-06-13 07:08:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:08:50,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:08:50,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:08:50,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:08:50,772.772 INFO    ] time= 13/06/2026 07:08:50
[2026-06-13 07:08:50,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:08:50,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:08:50,901.901 INFO    ] No existing commands found in stream
[2026-06-13 07:08:55,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:08:55,913.913 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 07:08:57,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:08:57,671.671 INFO    ] Checking for system updates...
[2026-06-13 07:08:57,691.691 INFO    ] 200
[2026-06-13 07:08:57,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:57,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:57,725.725 INFO    ] No update needed
[2026-06-13 07:08:57,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 07:08:57,747.747 INFO    ] 200
[2026-06-13 07:08:57,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:08:57,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:08:57,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:08:57,809.809 INFO    ] No camera update needed
[2026-06-13 07:08:57,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:08:57,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:08:57,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:08:57,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:08:59,858.858 INFO    ] ================================================
[2026-06-13 07:08:59,873.873 INFO    ] Launching Daemon at Sat Jun 13 07:08:59 IST 2026
[2026-06-13 07:08:59,885.885 INFO    ] ================================================
[2026-06-13 07:09:00,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:00
[2026-06-13 07:09:00,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:00,708.708 INFO    ] Initializing speech engine...
[2026-06-13 07:09:00,713.713 INFO    ] 2026-06-13 07:09:00
[2026-06-13 07:09:00,916.916 INFO    ] 2026-06-13 07:09:00
[2026-06-13 07:09:00,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:01,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:01,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:01,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:01,318.318 INFO    ] time= 13/06/2026 07:09:01
[2026-06-13 07:09:01,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:01,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:01,437.437 INFO    ] No existing commands found in stream
[2026-06-13 07:09:06,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:06,463.463 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 07:09:08,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:09:08,586.586 INFO    ] Checking for system updates...
[2026-06-13 07:09:08,607.607 INFO    ] 200
[2026-06-13 07:09:08,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:08,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:09:08,641.641 INFO    ] No update needed
[2026-06-13 07:09:08,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 07:09:08,662.662 INFO    ] 200
[2026-06-13 07:09:08,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:08,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:09:08,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:09:08,726.726 INFO    ] No camera update needed
[2026-06-13 07:09:08,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:09:08,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:09:08,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:09:08,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:09:10,775.775 INFO    ] ================================================
[2026-06-13 07:09:10,791.791 INFO    ] Launching Daemon at Sat Jun 13 07:09:10 IST 2026
[2026-06-13 07:09:10,802.802 INFO    ] ================================================
[2026-06-13 07:09:11,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:11
[2026-06-13 07:09:11,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:11,660.660 INFO    ] Initializing speech engine...
[2026-06-13 07:09:11,665.665 INFO    ] 2026-06-13 07:09:11
[2026-06-13 07:09:11,872.872 INFO    ] 2026-06-13 07:09:11
[2026-06-13 07:09:11,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:12,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:12,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:12,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:12,285.285 INFO    ] time= 13/06/2026 07:09:12
[2026-06-13 07:09:12,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:12,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:12,390.390 INFO    ] No existing commands found in stream
[2026-06-13 07:09:17,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:17,404.404 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 07:09:18,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:09:18,671.671 INFO    ] Checking for system updates...
[2026-06-13 07:09:18,693.693 INFO    ] 200
[2026-06-13 07:09:18,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:18,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:18,729.729 INFO    ] No update needed
[2026-06-13 07:09:18,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 07:09:18,750.750 INFO    ] 200
[2026-06-13 07:09:18,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:18,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:09:18,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:18,814.814 INFO    ] No camera update needed
[2026-06-13 07:09:18,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:09:18,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:09:18,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:09:18,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:09:20,862.862 INFO    ] ================================================
[2026-06-13 07:09:20,878.878 INFO    ] Launching Daemon at Sat Jun 13 07:09:20 IST 2026
[2026-06-13 07:09:20,889.889 INFO    ] ================================================
[2026-06-13 07:09:21,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:21
[2026-06-13 07:09:21,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:21,767.767 INFO    ] Initializing speech engine...
[2026-06-13 07:09:21,773.773 INFO    ] 2026-06-13 07:09:21
[2026-06-13 07:09:21,988.988 INFO    ] 2026-06-13 07:09:21
[2026-06-13 07:09:22,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:22,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:22,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:22,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:22,304.304 INFO    ] time= 13/06/2026 07:09:22
[2026-06-13 07:09:22,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:22,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:22,375.375 INFO    ] No existing commands found in stream
[2026-06-13 07:09:27,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:27,413.413 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 07:09:29,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:09:29,177.177 INFO    ] Checking for system updates...
[2026-06-13 07:09:29,198.198 INFO    ] 200
[2026-06-13 07:09:29,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:29,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:29,232.232 INFO    ] No update needed
[2026-06-13 07:09:29,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 07:09:29,254.254 INFO    ] 200
[2026-06-13 07:09:29,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:29,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:09:29,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:29,321.321 INFO    ] No camera update needed
[2026-06-13 07:09:29,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:09:29,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:09:29,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:09:29,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:09:31,372.372 INFO    ] ================================================
[2026-06-13 07:09:31,388.388 INFO    ] Launching Daemon at Sat Jun 13 07:09:31 IST 2026
[2026-06-13 07:09:31,399.399 INFO    ] ================================================
[2026-06-13 07:09:31,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:31
[2026-06-13 07:09:32,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:32,273.273 INFO    ] Initializing speech engine...
[2026-06-13 07:09:32,281.281 INFO    ] 2026-06-13 07:09:32
[2026-06-13 07:09:32,496.496 INFO    ] 2026-06-13 07:09:32
[2026-06-13 07:09:32,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:32,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:32,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:32,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:32,904.904 INFO    ] time= 13/06/2026 07:09:32
[2026-06-13 07:09:32,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:32,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:33,102.102 INFO    ] No existing commands found in stream
[2026-06-13 07:09:38,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:38,116.116 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 07:09:39,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:09:39,181.181 INFO    ] Checking for system updates...
[2026-06-13 07:09:39,202.202 INFO    ] 200
[2026-06-13 07:09:39,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:39,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:39,235.235 INFO    ] No update needed
[2026-06-13 07:09:39,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 07:09:39,255.255 INFO    ] 200
[2026-06-13 07:09:39,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:39,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:09:39,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:39,322.322 INFO    ] No camera update needed
[2026-06-13 07:09:39,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:09:39,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:09:39,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:09:39,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:09:41,370.370 INFO    ] ================================================
[2026-06-13 07:09:41,386.386 INFO    ] Launching Daemon at Sat Jun 13 07:09:41 IST 2026
[2026-06-13 07:09:41,397.397 INFO    ] ================================================
[2026-06-13 07:09:41,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:41
[2026-06-13 07:09:42,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:42,215.215 INFO    ] Initializing speech engine...
[2026-06-13 07:09:42,220.220 INFO    ] 2026-06-13 07:09:42
[2026-06-13 07:09:42,433.433 INFO    ] 2026-06-13 07:09:42
[2026-06-13 07:09:42,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:42,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:42,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:42,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:42,921.921 INFO    ] time= 13/06/2026 07:09:42
[2026-06-13 07:09:42,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:43,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:43,077.077 INFO    ] No existing commands found in stream
[2026-06-13 07:09:48,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:48,091.091 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 07:09:48,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:09:48,656.656 INFO    ] Checking for system updates...
[2026-06-13 07:09:48,678.678 INFO    ] 200
[2026-06-13 07:09:48,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:48,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:48,711.711 INFO    ] No update needed
[2026-06-13 07:09:48,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 07:09:48,734.734 INFO    ] 200
[2026-06-13 07:09:48,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:09:48,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:09:48,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:09:48,805.805 INFO    ] No camera update needed
[2026-06-13 07:09:48,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:09:48,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:09:48,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:09:48,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:09:50,853.853 INFO    ] ================================================
[2026-06-13 07:09:50,869.869 INFO    ] Launching Daemon at Sat Jun 13 07:09:50 IST 2026
[2026-06-13 07:09:50,881.881 INFO    ] ================================================
[2026-06-13 07:09:51,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:09:51
[2026-06-13 07:09:51,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:09:51,674.674 INFO    ] Initializing speech engine...
[2026-06-13 07:09:51,688.688 INFO    ] 2026-06-13 07:09:51
[2026-06-13 07:09:51,911.911 INFO    ] 2026-06-13 07:09:51
[2026-06-13 07:09:51,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:09:52,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:09:52,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:09:52,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:09:52,353.353 INFO    ] time= 13/06/2026 07:09:52
[2026-06-13 07:09:52,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:09:52,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:09:52,479.479 INFO    ] No existing commands found in stream
[2026-06-13 07:09:57,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:09:57,492.492 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 07:10:00,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:10:00,096.096 INFO    ] Checking for system updates...
[2026-06-13 07:10:00,117.117 INFO    ] 200
[2026-06-13 07:10:00,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:00,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:00,150.150 INFO    ] No update needed
[2026-06-13 07:10:00,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:00,171.171 INFO    ] 200
[2026-06-13 07:10:00,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:00,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:00,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:00,253.253 INFO    ] No camera update needed
[2026-06-13 07:10:00,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:00,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:00,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:00,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:02,299.299 INFO    ] ================================================
[2026-06-13 07:10:02,315.315 INFO    ] Launching Daemon at Sat Jun 13 07:10:02 IST 2026
[2026-06-13 07:10:02,327.327 INFO    ] ================================================
[2026-06-13 07:10:02,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:02
[2026-06-13 07:10:03,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:03,656.656 INFO    ] Initializing speech engine...
[2026-06-13 07:10:03,663.663 INFO    ] 2026-06-13 07:10:03
[2026-06-13 07:10:03,964.964 INFO    ] 2026-06-13 07:10:03
[2026-06-13 07:10:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:04,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:04,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:04,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:04,323.323 INFO    ] time= 13/06/2026 07:10:04
[2026-06-13 07:10:04,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:04,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:04,406.406 INFO    ] No existing commands found in stream
[2026-06-13 07:10:09,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:10:09,421.421 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 07:10:10,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:10:10,774.774 INFO    ] Checking for system updates...
[2026-06-13 07:10:10,795.795 INFO    ] 200
[2026-06-13 07:10:10,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:10,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:10,835.835 INFO    ] No update needed
[2026-06-13 07:10:10,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:10,857.857 INFO    ] 200
[2026-06-13 07:10:10,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:10,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:10,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:10,929.929 INFO    ] No camera update needed
[2026-06-13 07:10:10,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:10,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:10,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:10,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:12,977.977 INFO    ] ================================================
[2026-06-13 07:10:12,993.993 INFO    ] Launching Daemon at Sat Jun 13 07:10:12 IST 2026
[2026-06-13 07:10:13,003.003 INFO    ] ================================================
[2026-06-13 07:10:13,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:13
[2026-06-13 07:10:13,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:13,869.869 INFO    ] Initializing speech engine...
[2026-06-13 07:10:13,876.876 INFO    ] 2026-06-13 07:10:13
[2026-06-13 07:10:14,080.080 INFO    ] 2026-06-13 07:10:14
[2026-06-13 07:10:14,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:14,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:14,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:14,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:14,486.486 INFO    ] time= 13/06/2026 07:10:14
[2026-06-13 07:10:14,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:14,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:14,595.595 INFO    ] No existing commands found in stream
[2026-06-13 07:10:19,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:10:19,610.610 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 07:10:21,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:10:21,731.731 INFO    ] Checking for system updates...
[2026-06-13 07:10:21,754.754 INFO    ] 200
[2026-06-13 07:10:21,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:21,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:21,788.788 INFO    ] No update needed
[2026-06-13 07:10:21,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:21,810.810 INFO    ] 200
[2026-06-13 07:10:21,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:21,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:21,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:21,874.874 INFO    ] No camera update needed
[2026-06-13 07:10:21,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:21,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:21,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:21,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:23,923.923 INFO    ] ================================================
[2026-06-13 07:10:23,939.939 INFO    ] Launching Daemon at Sat Jun 13 07:10:23 IST 2026
[2026-06-13 07:10:23,949.949 INFO    ] ================================================
[2026-06-13 07:10:24,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:24
[2026-06-13 07:10:24,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:24,735.735 INFO    ] Initializing speech engine...
[2026-06-13 07:10:24,747.747 INFO    ] 2026-06-13 07:10:24
[2026-06-13 07:10:24,953.953 INFO    ] 2026-06-13 07:10:24
[2026-06-13 07:10:24,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:25,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:25,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:25,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:25,364.364 INFO    ] time= 13/06/2026 07:10:25
[2026-06-13 07:10:25,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:25,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:25,469.469 INFO    ] No existing commands found in stream
[2026-06-13 07:10:30,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:10:30,481.481 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 07:10:31,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:10:31,228.228 INFO    ] Checking for system updates...
[2026-06-13 07:10:31,249.249 INFO    ] 200
[2026-06-13 07:10:31,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:31,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:10:31,284.284 INFO    ] No update needed
[2026-06-13 07:10:31,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:31,307.307 INFO    ] 200
[2026-06-13 07:10:31,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:31,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:31,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:10:31,373.373 INFO    ] No camera update needed
[2026-06-13 07:10:31,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:31,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:31,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:31,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:33,414.414 INFO    ] ================================================
[2026-06-13 07:10:33,429.429 INFO    ] Launching Daemon at Sat Jun 13 07:10:33 IST 2026
[2026-06-13 07:10:33,441.441 INFO    ] ================================================
[2026-06-13 07:10:33,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:33
[2026-06-13 07:10:34,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:34,221.221 INFO    ] Initializing speech engine...
[2026-06-13 07:10:34,230.230 INFO    ] 2026-06-13 07:10:34
[2026-06-13 07:10:34,429.429 INFO    ] 2026-06-13 07:10:34
[2026-06-13 07:10:34,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:34,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:34,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:34,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:34,868.868 INFO    ] time= 13/06/2026 07:10:34
[2026-06-13 07:10:34,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:34,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:35,023.023 INFO    ] No existing commands found in stream
[2026-06-13 07:10:40,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:10:40,037.037 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 07:10:41,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:10:41,202.202 INFO    ] Checking for system updates...
[2026-06-13 07:10:41,223.223 INFO    ] 200
[2026-06-13 07:10:41,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:41,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:41,257.257 INFO    ] No update needed
[2026-06-13 07:10:41,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:41,279.279 INFO    ] 200
[2026-06-13 07:10:41,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:41,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:41,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:10:41,453.453 INFO    ] No camera update needed
[2026-06-13 07:10:41,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:41,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:41,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:41,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:43,501.501 INFO    ] ================================================
[2026-06-13 07:10:43,516.516 INFO    ] Launching Daemon at Sat Jun 13 07:10:43 IST 2026
[2026-06-13 07:10:43,527.527 INFO    ] ================================================
[2026-06-13 07:10:43,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:43
[2026-06-13 07:10:44,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:44,341.341 INFO    ] Initializing speech engine...
[2026-06-13 07:10:44,346.346 INFO    ] 2026-06-13 07:10:44
[2026-06-13 07:10:44,550.550 INFO    ] 2026-06-13 07:10:44
[2026-06-13 07:10:44,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:44,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:44,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:44,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:44,953.953 INFO    ] time= 13/06/2026 07:10:44
[2026-06-13 07:10:44,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:44,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:45,063.063 INFO    ] No existing commands found in stream
[2026-06-13 07:10:50,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:10:50,080.080 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 07:10:53,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:10:53,714.714 INFO    ] Checking for system updates...
[2026-06-13 07:10:53,736.736 INFO    ] 200
[2026-06-13 07:10:53,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:53,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:10:53,770.770 INFO    ] No update needed
[2026-06-13 07:10:53,771.771 INFO    ] Checking for camera pi updates...
[2026-06-13 07:10:53,793.793 INFO    ] 200
[2026-06-13 07:10:53,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:10:53,833.833 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:10:53,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:10:53,871.871 INFO    ] No camera update needed
[2026-06-13 07:10:53,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:10:53,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:10:53,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:10:53,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:10:55,919.919 INFO    ] ================================================
[2026-06-13 07:10:55,934.934 INFO    ] Launching Daemon at Sat Jun 13 07:10:55 IST 2026
[2026-06-13 07:10:55,945.945 INFO    ] ================================================
[2026-06-13 07:10:56,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:10:56
[2026-06-13 07:10:56,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:10:56,839.839 INFO    ] Initializing speech engine...
[2026-06-13 07:10:56,842.842 INFO    ] 2026-06-13 07:10:56
[2026-06-13 07:10:57,052.052 INFO    ] 2026-06-13 07:10:57
[2026-06-13 07:10:57,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:10:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:10:57,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:10:57,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:10:57,453.453 INFO    ] time= 13/06/2026 07:10:57
[2026-06-13 07:10:57,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:10:57,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:10:57,571.571 INFO    ] No existing commands found in stream
[2026-06-13 07:11:02,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:02,591.591 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 07:11:03,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:11:03,258.258 INFO    ] Checking for system updates...
[2026-06-13 07:11:03,280.280 INFO    ] 200
[2026-06-13 07:11:03,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:03,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:03,317.317 INFO    ] No update needed
[2026-06-13 07:11:03,319.319 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:03,339.339 INFO    ] 200
[2026-06-13 07:11:03,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:03,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:03,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:03,414.414 INFO    ] No camera update needed
[2026-06-13 07:11:03,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:03,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:03,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:03,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:05,463.463 INFO    ] ================================================
[2026-06-13 07:11:05,482.482 INFO    ] Launching Daemon at Sat Jun 13 07:11:05 IST 2026
[2026-06-13 07:11:05,494.494 INFO    ] ================================================
[2026-06-13 07:11:05,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:11:05
[2026-06-13 07:11:06,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:11:06,282.282 INFO    ] Initializing speech engine...
[2026-06-13 07:11:06,295.295 INFO    ] 2026-06-13 07:11:06
[2026-06-13 07:11:06,498.498 INFO    ] 2026-06-13 07:11:06
[2026-06-13 07:11:06,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:11:06,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:11:06,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:11:06,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:11:06,779.779 INFO    ] time= 13/06/2026 07:11:06
[2026-06-13 07:11:06,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:11:06,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:11:06,868.868 INFO    ] No existing commands found in stream
[2026-06-13 07:11:11,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:11,901.901 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 07:11:15,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:11:15,329.329 INFO    ] Checking for system updates...
[2026-06-13 07:11:15,350.350 INFO    ] 200
[2026-06-13 07:11:15,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:15,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:15,386.386 INFO    ] No update needed
[2026-06-13 07:11:15,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:15,408.408 INFO    ] 200
[2026-06-13 07:11:15,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:15,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:15,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:15,474.474 INFO    ] No camera update needed
[2026-06-13 07:11:15,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:15,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:15,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:15,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:17,521.521 INFO    ] ================================================
[2026-06-13 07:11:17,536.536 INFO    ] Launching Daemon at Sat Jun 13 07:11:17 IST 2026
[2026-06-13 07:11:17,547.547 INFO    ] ================================================
[2026-06-13 07:11:17,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:11:17
[2026-06-13 07:11:18,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:11:18,452.452 INFO    ] Initializing speech engine...
[2026-06-13 07:11:18,458.458 INFO    ] 2026-06-13 07:11:18
[2026-06-13 07:11:18,668.668 INFO    ] 2026-06-13 07:11:18
[2026-06-13 07:11:18,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:11:18,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:11:18,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:11:19,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:11:19,086.086 INFO    ] time= 13/06/2026 07:11:19
[2026-06-13 07:11:19,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:11:19,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:11:19,186.186 INFO    ] No existing commands found in stream
[2026-06-13 07:11:24,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:24,200.200 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 07:11:27,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:11:27,157.157 INFO    ] Checking for system updates...
[2026-06-13 07:11:27,179.179 INFO    ] 200
[2026-06-13 07:11:27,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:27,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:27,213.213 INFO    ] No update needed
[2026-06-13 07:11:27,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:27,236.236 INFO    ] 200
[2026-06-13 07:11:27,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:27,262.262 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:27,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:11:27,308.308 INFO    ] No camera update needed
[2026-06-13 07:11:27,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:27,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:27,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:27,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:29,359.359 INFO    ] ================================================
[2026-06-13 07:11:29,374.374 INFO    ] Launching Daemon at Sat Jun 13 07:11:29 IST 2026
[2026-06-13 07:11:29,391.391 INFO    ] ================================================
[2026-06-13 07:11:29,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:11:29
[2026-06-13 07:11:30,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:11:30,210.210 INFO    ] Initializing speech engine...
[2026-06-13 07:11:30,215.215 INFO    ] 2026-06-13 07:11:30
[2026-06-13 07:11:30,417.417 INFO    ] 2026-06-13 07:11:30
[2026-06-13 07:11:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:11:30,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:11:30,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:11:30,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:11:30,824.824 INFO    ] time= 13/06/2026 07:11:30
[2026-06-13 07:11:30,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:11:30,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:11:30,932.932 INFO    ] No existing commands found in stream
[2026-06-13 07:11:35,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:35,946.946 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 07:11:36,967.967 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:11:36,969.969 INFO    ] Checking for system updates...
[2026-06-13 07:11:36,990.990 INFO    ] 200
[2026-06-13 07:11:36,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:37,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:11:37,023.023 INFO    ] No update needed
[2026-06-13 07:11:37,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:37,043.043 INFO    ] 200
[2026-06-13 07:11:37,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:37,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:37,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:11:37,106.106 INFO    ] No camera update needed
[2026-06-13 07:11:37,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:37,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:37,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:37,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:39,153.153 INFO    ] ================================================
[2026-06-13 07:11:39,168.168 INFO    ] Launching Daemon at Sat Jun 13 07:11:39 IST 2026
[2026-06-13 07:11:39,178.178 INFO    ] ================================================
[2026-06-13 07:11:39,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:11:39
[2026-06-13 07:11:39,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:11:39,977.977 INFO    ] Initializing speech engine...
[2026-06-13 07:11:39,987.987 INFO    ] 2026-06-13 07:11:39
[2026-06-13 07:11:40,195.195 INFO    ] 2026-06-13 07:11:40
[2026-06-13 07:11:40,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:11:40,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:11:40,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:11:40,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:11:40,587.587 INFO    ] time= 13/06/2026 07:11:40
[2026-06-13 07:11:40,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:11:40,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:11:40,723.723 INFO    ] No existing commands found in stream
[2026-06-13 07:11:45,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:45,734.734 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 07:11:47,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:11:47,925.925 INFO    ] Checking for system updates...
[2026-06-13 07:11:47,946.946 INFO    ] 200
[2026-06-13 07:11:47,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:47,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:47,981.981 INFO    ] No update needed
[2026-06-13 07:11:47,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:48,003.003 INFO    ] 200
[2026-06-13 07:11:48,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:48,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:48,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:48,071.071 INFO    ] No camera update needed
[2026-06-13 07:11:48,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:48,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:48,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:48,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:50,119.119 INFO    ] ================================================
[2026-06-13 07:11:50,135.135 INFO    ] Launching Daemon at Sat Jun 13 07:11:50 IST 2026
[2026-06-13 07:11:50,146.146 INFO    ] ================================================
[2026-06-13 07:11:50,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:11:50
[2026-06-13 07:11:50,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:11:50,972.972 INFO    ] Initializing speech engine...
[2026-06-13 07:11:50,977.977 INFO    ] 2026-06-13 07:11:50
[2026-06-13 07:11:51,182.182 INFO    ] 2026-06-13 07:11:51
[2026-06-13 07:11:51,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:11:51,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:11:51,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:11:51,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:11:51,670.670 INFO    ] time= 13/06/2026 07:11:51
[2026-06-13 07:11:51,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:11:51,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:11:51,881.881 INFO    ] No existing commands found in stream
[2026-06-13 07:11:56,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:11:56,914.914 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 07:11:57,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:11:57,748.748 INFO    ] Checking for system updates...
[2026-06-13 07:11:57,769.769 INFO    ] 200
[2026-06-13 07:11:57,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:57,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:57,805.805 INFO    ] No update needed
[2026-06-13 07:11:57,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 07:11:57,826.826 INFO    ] 200
[2026-06-13 07:11:57,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:11:57,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:11:57,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:11:57,898.898 INFO    ] No camera update needed
[2026-06-13 07:11:57,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:11:57,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:11:57,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:11:57,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:11:59,947.947 INFO    ] ================================================
[2026-06-13 07:11:59,962.962 INFO    ] Launching Daemon at Sat Jun 13 07:11:59 IST 2026
[2026-06-13 07:11:59,973.973 INFO    ] ================================================
[2026-06-13 07:12:00,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:00
[2026-06-13 07:12:00,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:12:00,863.863 INFO    ] Initializing speech engine...
[2026-06-13 07:12:00,868.868 INFO    ] 2026-06-13 07:12:00
[2026-06-13 07:12:01,079.079 INFO    ] 2026-06-13 07:12:01
[2026-06-13 07:12:01,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:12:01,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:12:01,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:12:01,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:12:01,500.500 INFO    ] time= 13/06/2026 07:12:01
[2026-06-13 07:12:01,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:12:01,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:12:01,624.624 INFO    ] No existing commands found in stream
[2026-06-13 07:12:06,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:12:06,638.638 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 07:12:10,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:12:10,503.503 INFO    ] Checking for system updates...
[2026-06-13 07:12:10,525.525 INFO    ] 200
[2026-06-13 07:12:10,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:10,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:10,561.561 INFO    ] No update needed
[2026-06-13 07:12:10,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 07:12:10,584.584 INFO    ] 200
[2026-06-13 07:12:10,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:10,612.612 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:12:10,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:10,653.653 INFO    ] No camera update needed
[2026-06-13 07:12:10,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:12:10,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:12:10,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:12:10,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:12:12,702.702 INFO    ] ================================================
[2026-06-13 07:12:12,717.717 INFO    ] Launching Daemon at Sat Jun 13 07:12:12 IST 2026
[2026-06-13 07:12:12,728.728 INFO    ] ================================================
[2026-06-13 07:12:13,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:13
[2026-06-13 07:12:13,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:12:13,562.562 INFO    ] Initializing speech engine...
[2026-06-13 07:12:13,573.573 INFO    ] 2026-06-13 07:12:13
[2026-06-13 07:12:13,793.793 INFO    ] 2026-06-13 07:12:13
[2026-06-13 07:12:13,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:12:14,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:12:14,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:12:14,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:12:14,206.206 INFO    ] time= 13/06/2026 07:12:14
[2026-06-13 07:12:14,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:12:14,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:12:14,389.389 INFO    ] No existing commands found in stream
[2026-06-13 07:12:19,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:12:19,413.413 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 07:12:21,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:12:21,386.386 INFO    ] Checking for system updates...
[2026-06-13 07:12:21,408.408 INFO    ] 200
[2026-06-13 07:12:21,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:21,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:21,442.442 INFO    ] No update needed
[2026-06-13 07:12:21,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 07:12:21,465.465 INFO    ] 200
[2026-06-13 07:12:21,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:21,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:12:21,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:12:21,536.536 INFO    ] No camera update needed
[2026-06-13 07:12:21,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:12:21,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:12:21,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:12:21,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:12:23,584.584 INFO    ] ================================================
[2026-06-13 07:12:23,599.599 INFO    ] Launching Daemon at Sat Jun 13 07:12:23 IST 2026
[2026-06-13 07:12:23,611.611 INFO    ] ================================================
[2026-06-13 07:12:23,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:23
[2026-06-13 07:12:24,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:12:24,456.456 INFO    ] Initializing speech engine...
[2026-06-13 07:12:24,461.461 INFO    ] 2026-06-13 07:12:24
[2026-06-13 07:12:24,669.669 INFO    ] 2026-06-13 07:12:24
[2026-06-13 07:12:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:12:24,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:12:24,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:12:25,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:12:25,142.142 INFO    ] time= 13/06/2026 07:12:25
[2026-06-13 07:12:25,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:12:25,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:12:25,392.392 INFO    ] No existing commands found in stream
[2026-06-13 07:12:30,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:12:30,416.416 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 07:12:33,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:12:33,400.400 INFO    ] Checking for system updates...
[2026-06-13 07:12:33,422.422 INFO    ] 200
[2026-06-13 07:12:33,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:33,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:33,459.459 INFO    ] No update needed
[2026-06-13 07:12:33,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 07:12:33,482.482 INFO    ] 200
[2026-06-13 07:12:33,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:33,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:12:33,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:33,552.552 INFO    ] No camera update needed
[2026-06-13 07:12:33,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:12:33,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:12:33,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:12:33,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:12:35,594.594 INFO    ] ================================================
[2026-06-13 07:12:35,609.609 INFO    ] Launching Daemon at Sat Jun 13 07:12:35 IST 2026
[2026-06-13 07:12:35,620.620 INFO    ] ================================================
[2026-06-13 07:12:35,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:35
[2026-06-13 07:12:36,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:12:36,639.639 INFO    ] Initializing speech engine...
[2026-06-13 07:12:36,654.654 INFO    ] 2026-06-13 07:12:36
[2026-06-13 07:12:36,916.916 INFO    ] 2026-06-13 07:12:36
[2026-06-13 07:12:36,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:12:37,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:12:37,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:12:37,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:12:37,255.255 INFO    ] time= 13/06/2026 07:12:37
[2026-06-13 07:12:37,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:12:37,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:12:37,366.366 INFO    ] No existing commands found in stream
[2026-06-13 07:12:42,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:12:42,380.380 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 07:12:45,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:12:45,366.366 INFO    ] Checking for system updates...
[2026-06-13 07:12:45,387.387 INFO    ] 200
[2026-06-13 07:12:45,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:45,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:45,425.425 INFO    ] No update needed
[2026-06-13 07:12:45,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 07:12:45,446.446 INFO    ] 200
[2026-06-13 07:12:45,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:45,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:12:45,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:45,601.601 INFO    ] No camera update needed
[2026-06-13 07:12:45,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:12:45,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:12:45,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:12:45,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:12:47,640.640 INFO    ] ================================================
[2026-06-13 07:12:47,649.649 INFO    ] Launching Daemon at Sat Jun 13 07:12:47 IST 2026
[2026-06-13 07:12:47,656.656 INFO    ] ================================================
[2026-06-13 07:12:48,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:48
[2026-06-13 07:12:48,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:12:48,994.994 INFO    ] Initializing speech engine...
[2026-06-13 07:12:49,009.009 INFO    ] 2026-06-13 07:12:48
[2026-06-13 07:12:49,265.265 INFO    ] 2026-06-13 07:12:49
[2026-06-13 07:12:49,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:12:49,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:12:49,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:12:49,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:12:49,622.622 INFO    ] time= 13/06/2026 07:12:49
[2026-06-13 07:12:49,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:12:49,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:12:49,719.719 INFO    ] No existing commands found in stream
[2026-06-13 07:12:54,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:12:54,734.734 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 07:12:57,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:12:57,092.092 INFO    ] Checking for system updates...
[2026-06-13 07:12:57,113.113 INFO    ] 200
[2026-06-13 07:12:57,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:57,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:12:57,146.146 INFO    ] No update needed
[2026-06-13 07:12:57,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 07:12:57,168.168 INFO    ] 200
[2026-06-13 07:12:57,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:12:57,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:12:57,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:12:57,233.233 INFO    ] No camera update needed
[2026-06-13 07:12:57,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:12:57,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:12:57,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:12:57,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:12:59,281.281 INFO    ] ================================================
[2026-06-13 07:12:59,298.298 INFO    ] Launching Daemon at Sat Jun 13 07:12:59 IST 2026
[2026-06-13 07:12:59,309.309 INFO    ] ================================================
[2026-06-13 07:12:59,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:12:59
[2026-06-13 07:13:00,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:00,185.185 INFO    ] Initializing speech engine...
[2026-06-13 07:13:00,189.189 INFO    ] 2026-06-13 07:13:00
[2026-06-13 07:13:00,399.399 INFO    ] 2026-06-13 07:13:00
[2026-06-13 07:13:00,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:00,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:00,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:00,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:00,798.798 INFO    ] time= 13/06/2026 07:13:00
[2026-06-13 07:13:00,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:00,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:00,928.928 INFO    ] No existing commands found in stream
[2026-06-13 07:13:05,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:13:05,941.941 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 07:13:09,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:13:09,697.697 INFO    ] Checking for system updates...
[2026-06-13 07:13:09,720.720 INFO    ] 200
[2026-06-13 07:13:09,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:09,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:13:09,756.756 INFO    ] No update needed
[2026-06-13 07:13:09,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 07:13:09,780.780 INFO    ] 200
[2026-06-13 07:13:09,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:09,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:13:09,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:13:09,855.855 INFO    ] No camera update needed
[2026-06-13 07:13:09,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:13:09,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:13:09,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:13:09,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:13:11,906.906 INFO    ] ================================================
[2026-06-13 07:13:11,922.922 INFO    ] Launching Daemon at Sat Jun 13 07:13:11 IST 2026
[2026-06-13 07:13:11,934.934 INFO    ] ================================================
[2026-06-13 07:13:12,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:13:12
[2026-06-13 07:13:12,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:12,780.780 INFO    ] Initializing speech engine...
[2026-06-13 07:13:12,785.785 INFO    ] 2026-06-13 07:13:12
[2026-06-13 07:13:12,991.991 INFO    ] 2026-06-13 07:13:12
[2026-06-13 07:13:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:13,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:13,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:13,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:13,395.395 INFO    ] time= 13/06/2026 07:13:13
[2026-06-13 07:13:13,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:13,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:13,506.506 INFO    ] No existing commands found in stream
[2026-06-13 07:13:18,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:13:18,523.523 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 07:13:21,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:13:21,105.105 INFO    ] Checking for system updates...
[2026-06-13 07:13:21,127.127 INFO    ] 200
[2026-06-13 07:13:21,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:21,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:13:21,160.160 INFO    ] No update needed
[2026-06-13 07:13:21,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 07:13:21,184.184 INFO    ] 200
[2026-06-13 07:13:21,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:21,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:13:21,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:13:21,255.255 INFO    ] No camera update needed
[2026-06-13 07:13:21,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:13:21,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:13:21,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:13:21,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:13:23,304.304 INFO    ] ================================================
[2026-06-13 07:13:23,319.319 INFO    ] Launching Daemon at Sat Jun 13 07:13:23 IST 2026
[2026-06-13 07:13:23,330.330 INFO    ] ================================================
[2026-06-13 07:13:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:13:23
[2026-06-13 07:13:24,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:24,196.196 INFO    ] Initializing speech engine...
[2026-06-13 07:13:24,205.205 INFO    ] 2026-06-13 07:13:24
[2026-06-13 07:13:24,409.409 INFO    ] 2026-06-13 07:13:24
[2026-06-13 07:13:24,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:24,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:24,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:24,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:24,826.826 INFO    ] time= 13/06/2026 07:13:24
[2026-06-13 07:13:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:24,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:24,932.932 INFO    ] No existing commands found in stream
[2026-06-13 07:13:29,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:13:29,943.943 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 07:13:33,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:13:33,941.941 INFO    ] Checking for system updates...
[2026-06-13 07:13:33,978.978 INFO    ] 200
[2026-06-13 07:13:33,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:34,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:13:34,036.036 INFO    ] No update needed
[2026-06-13 07:13:34,039.039 INFO    ] Checking for camera pi updates...
[2026-06-13 07:13:34,074.074 INFO    ] 200
[2026-06-13 07:13:34,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:34,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:13:34,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:13:34,173.173 INFO    ] No camera update needed
[2026-06-13 07:13:34,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:13:34,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:13:34,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:13:34,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:13:36,229.229 INFO    ] ================================================
[2026-06-13 07:13:36,244.244 INFO    ] Launching Daemon at Sat Jun 13 07:13:36 IST 2026
[2026-06-13 07:13:36,255.255 INFO    ] ================================================
[2026-06-13 07:13:36,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:13:36
[2026-06-13 07:13:36,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:37,107.107 INFO    ] Initializing speech engine...
[2026-06-13 07:13:37,113.113 INFO    ] 2026-06-13 07:13:37
[2026-06-13 07:13:37,320.320 INFO    ] 2026-06-13 07:13:37
[2026-06-13 07:13:37,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:37,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:37,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:37,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:37,722.722 INFO    ] time= 13/06/2026 07:13:37
[2026-06-13 07:13:37,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:37,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:37,839.839 INFO    ] No existing commands found in stream
[2026-06-13 07:13:42,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:13:42,852.852 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 07:13:45,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:13:45,907.907 INFO    ] Checking for system updates...
[2026-06-13 07:13:45,928.928 INFO    ] 200
[2026-06-13 07:13:45,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:45,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:13:45,961.961 INFO    ] No update needed
[2026-06-13 07:13:45,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 07:13:45,984.984 INFO    ] 200
[2026-06-13 07:13:45,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:46,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:13:46,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:13:46,051.051 INFO    ] No camera update needed
[2026-06-13 07:13:46,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:13:46,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:13:46,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:13:46,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:13:48,100.100 INFO    ] ================================================
[2026-06-13 07:13:48,116.116 INFO    ] Launching Daemon at Sat Jun 13 07:13:48 IST 2026
[2026-06-13 07:13:48,127.127 INFO    ] ================================================
[2026-06-13 07:13:48,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:13:48
[2026-06-13 07:13:48,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:48,944.944 INFO    ] Initializing speech engine...
[2026-06-13 07:13:48,950.950 INFO    ] 2026-06-13 07:13:48
[2026-06-13 07:13:49,152.152 INFO    ] 2026-06-13 07:13:49
[2026-06-13 07:13:49,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:49,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:49,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:49,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:49,564.564 INFO    ] time= 13/06/2026 07:13:49
[2026-06-13 07:13:49,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:49,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:49,769.769 INFO    ] No existing commands found in stream
[2026-06-13 07:13:54,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:13:54,798.798 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 07:13:55,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:13:55,226.226 INFO    ] Checking for system updates...
[2026-06-13 07:13:55,247.247 INFO    ] 200
[2026-06-13 07:13:55,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:55,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:13:55,285.285 INFO    ] No update needed
[2026-06-13 07:13:55,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 07:13:55,307.307 INFO    ] 200
[2026-06-13 07:13:55,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:13:55,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:13:55,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:13:55,371.371 INFO    ] No camera update needed
[2026-06-13 07:13:55,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:13:55,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:13:55,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:13:55,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:13:57,420.420 INFO    ] ================================================
[2026-06-13 07:13:57,436.436 INFO    ] Launching Daemon at Sat Jun 13 07:13:57 IST 2026
[2026-06-13 07:13:57,446.446 INFO    ] ================================================
[2026-06-13 07:13:57,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:13:57
[2026-06-13 07:13:58,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:13:58,241.241 INFO    ] Initializing speech engine...
[2026-06-13 07:13:58,251.251 INFO    ] 2026-06-13 07:13:58
[2026-06-13 07:13:58,457.457 INFO    ] 2026-06-13 07:13:58
[2026-06-13 07:13:58,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:13:58,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:13:58,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:13:58,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:13:58,863.863 INFO    ] time= 13/06/2026 07:13:58
[2026-06-13 07:13:58,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:13:58,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:13:58,982.982 INFO    ] No existing commands found in stream
[2026-06-13 07:14:03,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:03,995.995 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 07:14:05,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:14:05,917.917 INFO    ] Checking for system updates...
[2026-06-13 07:14:05,940.940 INFO    ] 200
[2026-06-13 07:14:05,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:05,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:05,973.973 INFO    ] No update needed
[2026-06-13 07:14:05,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 07:14:06,008.008 INFO    ] 200
[2026-06-13 07:14:06,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:06,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:14:06,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:06,096.096 INFO    ] No camera update needed
[2026-06-13 07:14:06,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:14:06,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:14:06,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:14:06,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:14:08,152.152 INFO    ] ================================================
[2026-06-13 07:14:08,168.168 INFO    ] Launching Daemon at Sat Jun 13 07:14:08 IST 2026
[2026-06-13 07:14:08,179.179 INFO    ] ================================================
[2026-06-13 07:14:08,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:14:08
[2026-06-13 07:14:09,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:14:09,371.371 INFO    ] Initializing speech engine...
[2026-06-13 07:14:09,382.382 INFO    ] 2026-06-13 07:14:09
[2026-06-13 07:14:09,596.596 INFO    ] 2026-06-13 07:14:09
[2026-06-13 07:14:09,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:14:09,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:14:09,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:14:09,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:14:10,018.018 INFO    ] time= 13/06/2026 07:14:09
[2026-06-13 07:14:10,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:14:10,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:14:10,148.148 INFO    ] No existing commands found in stream
[2026-06-13 07:14:15,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:15,162.162 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 07:14:18,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:14:18,501.501 INFO    ] Checking for system updates...
[2026-06-13 07:14:18,521.521 INFO    ] 200
[2026-06-13 07:14:18,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:18,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:18,555.555 INFO    ] No update needed
[2026-06-13 07:14:18,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 07:14:18,576.576 INFO    ] 200
[2026-06-13 07:14:18,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:18,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:14:18,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:18,643.643 INFO    ] No camera update needed
[2026-06-13 07:14:18,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:14:18,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:14:18,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:14:18,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:14:20,691.691 INFO    ] ================================================
[2026-06-13 07:14:20,707.707 INFO    ] Launching Daemon at Sat Jun 13 07:14:20 IST 2026
[2026-06-13 07:14:20,718.718 INFO    ] ================================================
[2026-06-13 07:14:21,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:14:21
[2026-06-13 07:14:21,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:14:21,527.527 INFO    ] Initializing speech engine...
[2026-06-13 07:14:21,531.531 INFO    ] 2026-06-13 07:14:21
[2026-06-13 07:14:21,741.741 INFO    ] 2026-06-13 07:14:21
[2026-06-13 07:14:21,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:14:21,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:14:21,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:14:22,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:14:22,162.162 INFO    ] time= 13/06/2026 07:14:22
[2026-06-13 07:14:22,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:14:22,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:14:22,269.269 INFO    ] No existing commands found in stream
[2026-06-13 07:14:27,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:27,283.283 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 07:14:29,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:14:29,393.393 INFO    ] Checking for system updates...
[2026-06-13 07:14:29,415.415 INFO    ] 200
[2026-06-13 07:14:29,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:29,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:29,450.450 INFO    ] No update needed
[2026-06-13 07:14:29,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 07:14:29,472.472 INFO    ] 200
[2026-06-13 07:14:29,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:29,496.496 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:14:29,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:14:29,545.545 INFO    ] No camera update needed
[2026-06-13 07:14:29,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:14:29,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:14:29,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:14:29,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:14:31,585.585 INFO    ] ================================================
[2026-06-13 07:14:31,595.595 INFO    ] Launching Daemon at Sat Jun 13 07:14:31 IST 2026
[2026-06-13 07:14:31,601.601 INFO    ] ================================================
[2026-06-13 07:14:31,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:14:31
[2026-06-13 07:14:32,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:14:32,376.376 INFO    ] Initializing speech engine...
[2026-06-13 07:14:32,384.384 INFO    ] 2026-06-13 07:14:32
[2026-06-13 07:14:32,608.608 INFO    ] 2026-06-13 07:14:32
[2026-06-13 07:14:32,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:14:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:14:32,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:14:32,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:14:33,031.031 INFO    ] time= 13/06/2026 07:14:32
[2026-06-13 07:14:33,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:14:33,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:14:33,162.162 INFO    ] No existing commands found in stream
[2026-06-13 07:14:38,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:38,175.175 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 07:14:39,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:14:39,177.177 INFO    ] Checking for system updates...
[2026-06-13 07:14:39,198.198 INFO    ] 200
[2026-06-13 07:14:39,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:39,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:14:39,231.231 INFO    ] No update needed
[2026-06-13 07:14:39,233.233 INFO    ] Checking for camera pi updates...
[2026-06-13 07:14:39,252.252 INFO    ] 200
[2026-06-13 07:14:39,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:39,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:14:39,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:14:39,315.315 INFO    ] No camera update needed
[2026-06-13 07:14:39,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:14:39,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:14:39,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:14:39,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:14:41,364.364 INFO    ] ================================================
[2026-06-13 07:14:41,380.380 INFO    ] Launching Daemon at Sat Jun 13 07:14:41 IST 2026
[2026-06-13 07:14:41,390.390 INFO    ] ================================================
[2026-06-13 07:14:41,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:14:41
[2026-06-13 07:14:42,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:14:42,183.183 INFO    ] Initializing speech engine...
[2026-06-13 07:14:42,188.188 INFO    ] 2026-06-13 07:14:42
[2026-06-13 07:14:42,380.380 INFO    ] 2026-06-13 07:14:42
[2026-06-13 07:14:42,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:14:42,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:14:42,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:14:42,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:14:42,823.823 INFO    ] time= 13/06/2026 07:14:42
[2026-06-13 07:14:42,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:14:42,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:14:42,977.977 INFO    ] No existing commands found in stream
[2026-06-13 07:14:47,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:47,991.991 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 07:14:48,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:14:48,546.546 INFO    ] Checking for system updates...
[2026-06-13 07:14:48,567.567 INFO    ] 200
[2026-06-13 07:14:48,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:48,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:14:48,600.600 INFO    ] No update needed
[2026-06-13 07:14:48,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 07:14:48,620.620 INFO    ] 200
[2026-06-13 07:14:48,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:14:48,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:14:48,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:14:48,785.785 INFO    ] No camera update needed
[2026-06-13 07:14:48,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:14:48,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:14:48,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:14:48,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:14:50,834.834 INFO    ] ================================================
[2026-06-13 07:14:50,850.850 INFO    ] Launching Daemon at Sat Jun 13 07:14:50 IST 2026
[2026-06-13 07:14:50,862.862 INFO    ] ================================================
[2026-06-13 07:14:51,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:14:51
[2026-06-13 07:14:51,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:14:51,667.667 INFO    ] Initializing speech engine...
[2026-06-13 07:14:51,671.671 INFO    ] 2026-06-13 07:14:51
[2026-06-13 07:14:51,890.890 INFO    ] 2026-06-13 07:14:51
[2026-06-13 07:14:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:14:52,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:14:52,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:14:52,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:14:52,306.306 INFO    ] time= 13/06/2026 07:14:52
[2026-06-13 07:14:52,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:14:52,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:14:52,405.405 INFO    ] No existing commands found in stream
[2026-06-13 07:14:57,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:14:57,418.418 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 07:15:01,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:15:01,036.036 INFO    ] Checking for system updates...
[2026-06-13 07:15:01,061.061 INFO    ] 200
[2026-06-13 07:15:01,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:01,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:15:01,096.096 INFO    ] No update needed
[2026-06-13 07:15:01,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:01,119.119 INFO    ] 200
[2026-06-13 07:15:01,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:01,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:01,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:15:01,186.186 INFO    ] No camera update needed
[2026-06-13 07:15:01,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:01,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:01,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:01,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:03,235.235 INFO    ] ================================================
[2026-06-13 07:15:03,251.251 INFO    ] Launching Daemon at Sat Jun 13 07:15:03 IST 2026
[2026-06-13 07:15:03,262.262 INFO    ] ================================================
[2026-06-13 07:15:03,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:03
[2026-06-13 07:15:04,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:15:04,722.722 INFO    ] Initializing speech engine...
[2026-06-13 07:15:04,727.727 INFO    ] 2026-06-13 07:15:04
[2026-06-13 07:15:04,990.990 INFO    ] 2026-06-13 07:15:04
[2026-06-13 07:15:05,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:15:05,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:15:05,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:15:05,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:15:05,379.379 INFO    ] time= 13/06/2026 07:15:05
[2026-06-13 07:15:05,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:15:05,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:15:05,485.485 INFO    ] No existing commands found in stream
[2026-06-13 07:15:10,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:15:10,522.522 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 07:15:12,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:15:12,507.507 INFO    ] Checking for system updates...
[2026-06-13 07:15:12,529.529 INFO    ] 200
[2026-06-13 07:15:12,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:12,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:12,563.563 INFO    ] No update needed
[2026-06-13 07:15:12,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:12,583.583 INFO    ] 200
[2026-06-13 07:15:12,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:12,607.607 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:12,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:12,650.650 INFO    ] No camera update needed
[2026-06-13 07:15:12,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:12,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:12,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:12,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:14,698.698 INFO    ] ================================================
[2026-06-13 07:15:14,713.713 INFO    ] Launching Daemon at Sat Jun 13 07:15:14 IST 2026
[2026-06-13 07:15:14,725.725 INFO    ] ================================================
[2026-06-13 07:15:15,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:15
[2026-06-13 07:15:15,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:15:15,521.521 INFO    ] Initializing speech engine...
[2026-06-13 07:15:15,526.526 INFO    ] 2026-06-13 07:15:15
[2026-06-13 07:15:15,756.756 INFO    ] 2026-06-13 07:15:15
[2026-06-13 07:15:15,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:15:15,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:15:15,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:15:16,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:15:16,117.117 INFO    ] time= 13/06/2026 07:15:16
[2026-06-13 07:15:16,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:15:16,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:15:16,307.307 INFO    ] No existing commands found in stream
[2026-06-13 07:15:21,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:15:21,335.335 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 07:15:23,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:15:23,887.887 INFO    ] Checking for system updates...
[2026-06-13 07:15:23,908.908 INFO    ] 200
[2026-06-13 07:15:23,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:23,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:23,941.941 INFO    ] No update needed
[2026-06-13 07:15:23,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:23,962.962 INFO    ] 200
[2026-06-13 07:15:23,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:23,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:24,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:15:24,026.026 INFO    ] No camera update needed
[2026-06-13 07:15:24,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:24,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:24,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:24,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:26,074.074 INFO    ] ================================================
[2026-06-13 07:15:26,090.090 INFO    ] Launching Daemon at Sat Jun 13 07:15:26 IST 2026
[2026-06-13 07:15:26,102.102 INFO    ] ================================================
[2026-06-13 07:15:26,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:26
[2026-06-13 07:15:26,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:15:26,981.981 INFO    ] Initializing speech engine...
[2026-06-13 07:15:26,988.988 INFO    ] 2026-06-13 07:15:26
[2026-06-13 07:15:27,196.196 INFO    ] 2026-06-13 07:15:27
[2026-06-13 07:15:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:15:27,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:15:27,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:15:27,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:15:27,622.622 INFO    ] time= 13/06/2026 07:15:27
[2026-06-13 07:15:27,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:15:27,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:15:27,719.719 INFO    ] No existing commands found in stream
[2026-06-13 07:15:32,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:15:32,731.731 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 07:15:35,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:15:35,066.066 INFO    ] Checking for system updates...
[2026-06-13 07:15:35,089.089 INFO    ] 200
[2026-06-13 07:15:35,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:35,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:15:35,210.210 INFO    ] No update needed
[2026-06-13 07:15:35,212.212 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:35,231.231 INFO    ] 200
[2026-06-13 07:15:35,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:35,256.256 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:35,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:15:35,299.299 INFO    ] No camera update needed
[2026-06-13 07:15:35,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:35,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:35,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:35,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:37,349.349 INFO    ] ================================================
[2026-06-13 07:15:37,366.366 INFO    ] Launching Daemon at Sat Jun 13 07:15:37 IST 2026
[2026-06-13 07:15:37,377.377 INFO    ] ================================================
[2026-06-13 07:15:37,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:37
[2026-06-13 07:15:38,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:15:38,233.233 INFO    ] Initializing speech engine...
[2026-06-13 07:15:38,239.239 INFO    ] 2026-06-13 07:15:38
[2026-06-13 07:15:38,446.446 INFO    ] 2026-06-13 07:15:38
[2026-06-13 07:15:38,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:15:38,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:15:38,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:15:38,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:15:38,865.865 INFO    ] time= 13/06/2026 07:15:38
[2026-06-13 07:15:38,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:15:38,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:15:38,962.962 INFO    ] No existing commands found in stream
[2026-06-13 07:15:43,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:15:43,974.974 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 07:15:47,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:15:47,072.072 INFO    ] Checking for system updates...
[2026-06-13 07:15:47,093.093 INFO    ] 200
[2026-06-13 07:15:47,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:47,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:47,128.128 INFO    ] No update needed
[2026-06-13 07:15:47,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:47,150.150 INFO    ] 200
[2026-06-13 07:15:47,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:47,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:47,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:47,215.215 INFO    ] No camera update needed
[2026-06-13 07:15:47,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:47,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:47,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:47,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:49,255.255 INFO    ] ================================================
[2026-06-13 07:15:49,264.264 INFO    ] Launching Daemon at Sat Jun 13 07:15:49 IST 2026
[2026-06-13 07:15:49,270.270 INFO    ] ================================================
[2026-06-13 07:15:49,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:49
[2026-06-13 07:15:49,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:15:50,084.084 INFO    ] Initializing speech engine...
[2026-06-13 07:15:50,089.089 INFO    ] 2026-06-13 07:15:50
[2026-06-13 07:15:50,294.294 INFO    ] 2026-06-13 07:15:50
[2026-06-13 07:15:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:15:50,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:15:50,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:15:50,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:15:50,710.710 INFO    ] time= 13/06/2026 07:15:50
[2026-06-13 07:15:50,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:15:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:15:50,809.809 INFO    ] No existing commands found in stream
[2026-06-13 07:15:55,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:15:55,823.823 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 07:15:57,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:15:57,074.074 INFO    ] Checking for system updates...
[2026-06-13 07:15:57,096.096 INFO    ] 200
[2026-06-13 07:15:57,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:57,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:57,129.129 INFO    ] No update needed
[2026-06-13 07:15:57,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 07:15:57,151.151 INFO    ] 200
[2026-06-13 07:15:57,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:15:57,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:15:57,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:15:57,222.222 INFO    ] No camera update needed
[2026-06-13 07:15:57,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:15:57,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:15:57,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:15:57,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:15:59,273.273 INFO    ] ================================================
[2026-06-13 07:15:59,289.289 INFO    ] Launching Daemon at Sat Jun 13 07:15:59 IST 2026
[2026-06-13 07:15:59,300.300 INFO    ] ================================================
[2026-06-13 07:15:59,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:15:59
[2026-06-13 07:15:59,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:00,104.104 INFO    ] Initializing speech engine...
[2026-06-13 07:16:00,113.113 INFO    ] 2026-06-13 07:16:00
[2026-06-13 07:16:00,302.302 INFO    ] 2026-06-13 07:16:00
[2026-06-13 07:16:00,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:00,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:00,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:00,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:00,723.723 INFO    ] time= 13/06/2026 07:16:00
[2026-06-13 07:16:00,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:00,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:00,897.897 INFO    ] No existing commands found in stream
[2026-06-13 07:16:05,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:05,914.914 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 07:16:08,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:16:08,363.363 INFO    ] Checking for system updates...
[2026-06-13 07:16:08,384.384 INFO    ] 200
[2026-06-13 07:16:08,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:08,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:16:08,419.419 INFO    ] No update needed
[2026-06-13 07:16:08,421.421 INFO    ] Checking for camera pi updates...
[2026-06-13 07:16:08,443.443 INFO    ] 200
[2026-06-13 07:16:08,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:08,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:16:08,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:08,505.505 INFO    ] No camera update needed
[2026-06-13 07:16:08,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:16:08,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:16:08,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:16:08,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:16:10,551.551 INFO    ] ================================================
[2026-06-13 07:16:10,567.567 INFO    ] Launching Daemon at Sat Jun 13 07:16:10 IST 2026
[2026-06-13 07:16:10,578.578 INFO    ] ================================================
[2026-06-13 07:16:10,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:16:10
[2026-06-13 07:16:11,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:11,391.391 INFO    ] Initializing speech engine...
[2026-06-13 07:16:11,396.396 INFO    ] 2026-06-13 07:16:11
[2026-06-13 07:16:11,599.599 INFO    ] 2026-06-13 07:16:11
[2026-06-13 07:16:11,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:11,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:11,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:11,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:12,007.007 INFO    ] time= 13/06/2026 07:16:11
[2026-06-13 07:16:12,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:12,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:12,113.113 INFO    ] No existing commands found in stream
[2026-06-13 07:16:17,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:17,135.135 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 07:16:18,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:16:18,747.747 INFO    ] Checking for system updates...
[2026-06-13 07:16:18,769.769 INFO    ] 200
[2026-06-13 07:16:18,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:18,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:18,803.803 INFO    ] No update needed
[2026-06-13 07:16:18,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 07:16:18,823.823 INFO    ] 200
[2026-06-13 07:16:18,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:18,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:16:18,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:18,886.886 INFO    ] No camera update needed
[2026-06-13 07:16:18,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:16:18,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:16:18,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:16:18,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:16:20,935.935 INFO    ] ================================================
[2026-06-13 07:16:20,950.950 INFO    ] Launching Daemon at Sat Jun 13 07:16:20 IST 2026
[2026-06-13 07:16:20,962.962 INFO    ] ================================================
[2026-06-13 07:16:21,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:16:21
[2026-06-13 07:16:21,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:21,828.828 INFO    ] Initializing speech engine...
[2026-06-13 07:16:21,833.833 INFO    ] 2026-06-13 07:16:21
[2026-06-13 07:16:22,037.037 INFO    ] 2026-06-13 07:16:22
[2026-06-13 07:16:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:22,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:22,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:22,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:22,438.438 INFO    ] time= 13/06/2026 07:16:22
[2026-06-13 07:16:22,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:22,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:22,554.554 INFO    ] No existing commands found in stream
[2026-06-13 07:16:27,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:27,565.565 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 07:16:30,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:16:30,535.535 INFO    ] Checking for system updates...
[2026-06-13 07:16:30,571.571 INFO    ] 200
[2026-06-13 07:16:30,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:30,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:30,638.638 INFO    ] No update needed
[2026-06-13 07:16:30,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 07:16:30,661.661 INFO    ] 200
[2026-06-13 07:16:30,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:30,687.687 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:16:30,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:16:30,725.725 INFO    ] No camera update needed
[2026-06-13 07:16:30,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:16:30,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:16:30,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:16:30,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:16:32,764.764 INFO    ] ================================================
[2026-06-13 07:16:32,774.774 INFO    ] Launching Daemon at Sat Jun 13 07:16:32 IST 2026
[2026-06-13 07:16:32,780.780 INFO    ] ================================================
[2026-06-13 07:16:33,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:16:33
[2026-06-13 07:16:33,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:33,578.578 INFO    ] Initializing speech engine...
[2026-06-13 07:16:33,582.582 INFO    ] 2026-06-13 07:16:33
[2026-06-13 07:16:33,797.797 INFO    ] 2026-06-13 07:16:33
[2026-06-13 07:16:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:33,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:33,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:34,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:34,145.145 INFO    ] time= 13/06/2026 07:16:34
[2026-06-13 07:16:34,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:34,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:34,314.314 INFO    ] No existing commands found in stream
[2026-06-13 07:16:39,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:39,327.327 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 07:16:40,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:16:40,524.524 INFO    ] Checking for system updates...
[2026-06-13 07:16:40,545.545 INFO    ] 200
[2026-06-13 07:16:40,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:40,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:40,579.579 INFO    ] No update needed
[2026-06-13 07:16:40,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 07:16:40,601.601 INFO    ] 200
[2026-06-13 07:16:40,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:40,626.626 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:16:40,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:40,666.666 INFO    ] No camera update needed
[2026-06-13 07:16:40,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:16:40,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:16:40,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:16:40,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:16:42,713.713 INFO    ] ================================================
[2026-06-13 07:16:42,729.729 INFO    ] Launching Daemon at Sat Jun 13 07:16:42 IST 2026
[2026-06-13 07:16:42,741.741 INFO    ] ================================================
[2026-06-13 07:16:43,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:16:43
[2026-06-13 07:16:43,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:43,572.572 INFO    ] Initializing speech engine...
[2026-06-13 07:16:43,577.577 INFO    ] 2026-06-13 07:16:43
[2026-06-13 07:16:43,785.785 INFO    ] 2026-06-13 07:16:43
[2026-06-13 07:16:43,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:44,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:44,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:44,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:44,210.210 INFO    ] time= 13/06/2026 07:16:44
[2026-06-13 07:16:44,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:44,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:44,306.306 INFO    ] No existing commands found in stream
[2026-06-13 07:16:49,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:49,319.319 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 07:16:49,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:16:49,973.973 INFO    ] Checking for system updates...
[2026-06-13 07:16:49,995.995 INFO    ] 200
[2026-06-13 07:16:49,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:50,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:50,031.031 INFO    ] No update needed
[2026-06-13 07:16:50,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 07:16:50,051.051 INFO    ] 200
[2026-06-13 07:16:50,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:16:50,079.079 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:16:50,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:16:50,218.218 INFO    ] No camera update needed
[2026-06-13 07:16:50,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:16:50,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:16:50,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:16:50,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:16:52,265.265 INFO    ] ================================================
[2026-06-13 07:16:52,281.281 INFO    ] Launching Daemon at Sat Jun 13 07:16:52 IST 2026
[2026-06-13 07:16:52,292.292 INFO    ] ================================================
[2026-06-13 07:16:52,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:16:52
[2026-06-13 07:16:52,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:16:53,066.066 INFO    ] Initializing speech engine...
[2026-06-13 07:16:53,078.078 INFO    ] 2026-06-13 07:16:53
[2026-06-13 07:16:53,283.283 INFO    ] 2026-06-13 07:16:53
[2026-06-13 07:16:53,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:16:53,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:16:53,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:16:53,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:16:53,688.688 INFO    ] time= 13/06/2026 07:16:53
[2026-06-13 07:16:53,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:16:53,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:16:53,798.798 INFO    ] No existing commands found in stream
[2026-06-13 07:16:58,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:16:58,810.810 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 07:17:01,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:17:01,859.859 INFO    ] Checking for system updates...
[2026-06-13 07:17:01,887.887 INFO    ] 200
[2026-06-13 07:17:01,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:01,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:01,934.934 INFO    ] No update needed
[2026-06-13 07:17:01,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:01,969.969 INFO    ] 200
[2026-06-13 07:17:01,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:02,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:02,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:02,064.064 INFO    ] No camera update needed
[2026-06-13 07:17:02,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:02,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:02,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:02,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:04,112.112 INFO    ] ================================================
[2026-06-13 07:17:04,127.127 INFO    ] Launching Daemon at Sat Jun 13 07:17:04 IST 2026
[2026-06-13 07:17:04,139.139 INFO    ] ================================================
[2026-06-13 07:17:04,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:04
[2026-06-13 07:17:04,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:04,975.975 INFO    ] Initializing speech engine...
[2026-06-13 07:17:04,980.980 INFO    ] 2026-06-13 07:17:04
[2026-06-13 07:17:05,185.185 INFO    ] 2026-06-13 07:17:05
[2026-06-13 07:17:05,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:05,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:05,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:05,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:05,548.548 INFO    ] time= 13/06/2026 07:17:05
[2026-06-13 07:17:05,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:05,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:05,719.719 INFO    ] No existing commands found in stream
[2026-06-13 07:17:10,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:17:10,736.736 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 07:17:12,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:17:12,817.817 INFO    ] Checking for system updates...
[2026-06-13 07:17:12,838.838 INFO    ] 200
[2026-06-13 07:17:12,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:12,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:17:12,873.873 INFO    ] No update needed
[2026-06-13 07:17:12,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:12,894.894 INFO    ] 200
[2026-06-13 07:17:12,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:12,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:12,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:17:12,957.957 INFO    ] No camera update needed
[2026-06-13 07:17:12,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:12,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:12,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:12,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:15,006.006 INFO    ] ================================================
[2026-06-13 07:17:15,022.022 INFO    ] Launching Daemon at Sat Jun 13 07:17:15 IST 2026
[2026-06-13 07:17:15,033.033 INFO    ] ================================================
[2026-06-13 07:17:15,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:15
[2026-06-13 07:17:15,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:15,806.806 INFO    ] Initializing speech engine...
[2026-06-13 07:17:15,818.818 INFO    ] 2026-06-13 07:17:15
[2026-06-13 07:17:16,025.025 INFO    ] 2026-06-13 07:17:16
[2026-06-13 07:17:16,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:16,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:16,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:16,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:16,436.436 INFO    ] time= 13/06/2026 07:17:16
[2026-06-13 07:17:16,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:16,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:16,539.539 INFO    ] No existing commands found in stream
[2026-06-13 07:17:21,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:17:21,552.552 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 07:17:25,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:17:25,063.063 INFO    ] Checking for system updates...
[2026-06-13 07:17:25,084.084 INFO    ] 200
[2026-06-13 07:17:25,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:25,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:25,119.119 INFO    ] No update needed
[2026-06-13 07:17:25,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:25,140.140 INFO    ] 200
[2026-06-13 07:17:25,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:25,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:25,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:25,215.215 INFO    ] No camera update needed
[2026-06-13 07:17:25,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:25,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:25,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:25,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:27,261.261 INFO    ] ================================================
[2026-06-13 07:17:27,276.276 INFO    ] Launching Daemon at Sat Jun 13 07:17:27 IST 2026
[2026-06-13 07:17:27,288.288 INFO    ] ================================================
[2026-06-13 07:17:27,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:27
[2026-06-13 07:17:27,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:28,085.085 INFO    ] Initializing speech engine...
[2026-06-13 07:17:28,095.095 INFO    ] 2026-06-13 07:17:28
[2026-06-13 07:17:28,301.301 INFO    ] 2026-06-13 07:17:28
[2026-06-13 07:17:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:28,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:28,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:28,711.711 INFO    ] time= 13/06/2026 07:17:28
[2026-06-13 07:17:28,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:28,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:28,819.819 INFO    ] No existing commands found in stream
[2026-06-13 07:17:33,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:17:33,833.833 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 07:17:35,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:17:35,825.825 INFO    ] Checking for system updates...
[2026-06-13 07:17:35,845.845 INFO    ] 200
[2026-06-13 07:17:35,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:35,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:35,882.882 INFO    ] No update needed
[2026-06-13 07:17:35,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:35,903.903 INFO    ] 200
[2026-06-13 07:17:35,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:35,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:35,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:35,963.963 INFO    ] No camera update needed
[2026-06-13 07:17:35,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:35,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:35,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:35,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:38,011.011 INFO    ] ================================================
[2026-06-13 07:17:38,027.027 INFO    ] Launching Daemon at Sat Jun 13 07:17:38 IST 2026
[2026-06-13 07:17:38,038.038 INFO    ] ================================================
[2026-06-13 07:17:38,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:38
[2026-06-13 07:17:38,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:38,914.914 INFO    ] Initializing speech engine...
[2026-06-13 07:17:38,919.919 INFO    ] 2026-06-13 07:17:38
[2026-06-13 07:17:39,128.128 INFO    ] 2026-06-13 07:17:39
[2026-06-13 07:17:39,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:39,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:39,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:39,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:39,519.519 INFO    ] time= 13/06/2026 07:17:39
[2026-06-13 07:17:39,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:39,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:39,666.666 INFO    ] No existing commands found in stream
[2026-06-13 07:17:44,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:17:44,692.692 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 07:17:45,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:17:45,544.544 INFO    ] Checking for system updates...
[2026-06-13 07:17:45,566.566 INFO    ] 200
[2026-06-13 07:17:45,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:45,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:17:45,601.601 INFO    ] No update needed
[2026-06-13 07:17:45,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:45,623.623 INFO    ] 200
[2026-06-13 07:17:45,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:45,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:45,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:17:45,695.695 INFO    ] No camera update needed
[2026-06-13 07:17:45,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:45,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:45,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:45,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:47,744.744 INFO    ] ================================================
[2026-06-13 07:17:47,760.760 INFO    ] Launching Daemon at Sat Jun 13 07:17:47 IST 2026
[2026-06-13 07:17:47,771.771 INFO    ] ================================================
[2026-06-13 07:17:48,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:48
[2026-06-13 07:17:48,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:48,589.589 INFO    ] Initializing speech engine...
[2026-06-13 07:17:48,594.594 INFO    ] 2026-06-13 07:17:48
[2026-06-13 07:17:48,798.798 INFO    ] 2026-06-13 07:17:48
[2026-06-13 07:17:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:49,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:49,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:49,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:49,199.199 INFO    ] time= 13/06/2026 07:17:49
[2026-06-13 07:17:49,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:49,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:49,307.307 INFO    ] No existing commands found in stream
[2026-06-13 07:17:54,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:17:54,321.321 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 07:17:55,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:17:55,043.043 INFO    ] Checking for system updates...
[2026-06-13 07:17:55,064.064 INFO    ] 200
[2026-06-13 07:17:55,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:55,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:55,099.099 INFO    ] No update needed
[2026-06-13 07:17:55,100.100 INFO    ] Checking for camera pi updates...
[2026-06-13 07:17:55,120.120 INFO    ] 200
[2026-06-13 07:17:55,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:17:55,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:17:55,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:17:55,183.183 INFO    ] No camera update needed
[2026-06-13 07:17:55,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:17:55,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:17:55,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:17:55,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:17:57,232.232 INFO    ] ================================================
[2026-06-13 07:17:57,248.248 INFO    ] Launching Daemon at Sat Jun 13 07:17:57 IST 2026
[2026-06-13 07:17:57,259.259 INFO    ] ================================================
[2026-06-13 07:17:57,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:17:57
[2026-06-13 07:17:57,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:17:58,088.088 INFO    ] Initializing speech engine...
[2026-06-13 07:17:58,093.093 INFO    ] 2026-06-13 07:17:58
[2026-06-13 07:17:58,299.299 INFO    ] 2026-06-13 07:17:58
[2026-06-13 07:17:58,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:17:58,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:17:58,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:17:58,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:17:58,716.716 INFO    ] time= 13/06/2026 07:17:58
[2026-06-13 07:17:58,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:17:58,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:17:58,811.811 INFO    ] No existing commands found in stream
[2026-06-13 07:18:03,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:03,825.825 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 07:18:06,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:18:06,907.907 INFO    ] Checking for system updates...
[2026-06-13 07:18:06,929.929 INFO    ] 200
[2026-06-13 07:18:06,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:06,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:06,962.962 INFO    ] No update needed
[2026-06-13 07:18:06,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:06,984.984 INFO    ] 200
[2026-06-13 07:18:06,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:07,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:07,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:07,046.046 INFO    ] No camera update needed
[2026-06-13 07:18:07,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:07,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:07,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:07,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:18:09,092.092 INFO    ] ================================================
[2026-06-13 07:18:09,108.108 INFO    ] Launching Daemon at Sat Jun 13 07:18:09 IST 2026
[2026-06-13 07:18:09,119.119 INFO    ] ================================================
[2026-06-13 07:18:09,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:18:09
[2026-06-13 07:18:09,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:18:09,938.938 INFO    ] Initializing speech engine...
[2026-06-13 07:18:09,944.944 INFO    ] 2026-06-13 07:18:09
[2026-06-13 07:18:10,152.152 INFO    ] 2026-06-13 07:18:10
[2026-06-13 07:18:10,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:18:10,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:18:10,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:18:10,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:18:10,563.563 INFO    ] time= 13/06/2026 07:18:10
[2026-06-13 07:18:10,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:18:10,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:18:10,674.674 INFO    ] No existing commands found in stream
[2026-06-13 07:18:15,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:15,687.687 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 07:18:16,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:18:16,052.052 INFO    ] Checking for system updates...
[2026-06-13 07:18:16,073.073 INFO    ] 200
[2026-06-13 07:18:16,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:16,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:16,111.111 INFO    ] No update needed
[2026-06-13 07:18:16,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:16,132.132 INFO    ] 200
[2026-06-13 07:18:16,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:16,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:16,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:16,197.197 INFO    ] No camera update needed
[2026-06-13 07:18:16,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:16,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:16,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:16,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:18:18,244.244 INFO    ] ================================================
[2026-06-13 07:18:18,260.260 INFO    ] Launching Daemon at Sat Jun 13 07:18:18 IST 2026
[2026-06-13 07:18:18,270.270 INFO    ] ================================================
[2026-06-13 07:18:18,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:18:18
[2026-06-13 07:18:18,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:18:19,105.105 INFO    ] Initializing speech engine...
[2026-06-13 07:18:19,110.110 INFO    ] 2026-06-13 07:18:19
[2026-06-13 07:18:19,317.317 INFO    ] 2026-06-13 07:18:19
[2026-06-13 07:18:19,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:18:19,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:18:19,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:18:19,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:18:19,735.735 INFO    ] time= 13/06/2026 07:18:19
[2026-06-13 07:18:19,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:18:19,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:18:19,837.837 INFO    ] No existing commands found in stream
[2026-06-13 07:18:24,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:24,850.850 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 07:18:28,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:18:28,215.215 INFO    ] Checking for system updates...
[2026-06-13 07:18:28,237.237 INFO    ] 200
[2026-06-13 07:18:28,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:28,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:28,273.273 INFO    ] No update needed
[2026-06-13 07:18:28,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:28,294.294 INFO    ] 200
[2026-06-13 07:18:28,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:28,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:28,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:28,354.354 INFO    ] No camera update needed
[2026-06-13 07:18:28,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:28,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:28,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:28,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:18:30,404.404 INFO    ] ================================================
[2026-06-13 07:18:30,419.419 INFO    ] Launching Daemon at Sat Jun 13 07:18:30 IST 2026
[2026-06-13 07:18:30,430.430 INFO    ] ================================================
[2026-06-13 07:18:30,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:18:30
[2026-06-13 07:18:31,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:18:31,299.299 INFO    ] Initializing speech engine...
[2026-06-13 07:18:31,302.302 INFO    ] 2026-06-13 07:18:31
[2026-06-13 07:18:31,508.508 INFO    ] 2026-06-13 07:18:31
[2026-06-13 07:18:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:18:31,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:18:31,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:18:31,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:18:31,955.955 INFO    ] time= 13/06/2026 07:18:31
[2026-06-13 07:18:32,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:18:32,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:18:32,082.082 INFO    ] No existing commands found in stream
[2026-06-13 07:18:37,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:37,100.100 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 07:18:39,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:18:39,273.273 INFO    ] Checking for system updates...
[2026-06-13 07:18:39,294.294 INFO    ] 200
[2026-06-13 07:18:39,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:39,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:39,329.329 INFO    ] No update needed
[2026-06-13 07:18:39,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:39,350.350 INFO    ] 200
[2026-06-13 07:18:39,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:39,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:39,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:39,423.423 INFO    ] No camera update needed
[2026-06-13 07:18:39,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:39,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:39,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:39,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:18:41,470.470 INFO    ] ================================================
[2026-06-13 07:18:41,484.484 INFO    ] Launching Daemon at Sat Jun 13 07:18:41 IST 2026
[2026-06-13 07:18:41,495.495 INFO    ] ================================================
[2026-06-13 07:18:41,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:18:41
[2026-06-13 07:18:42,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:18:42,312.312 INFO    ] Initializing speech engine...
[2026-06-13 07:18:42,317.317 INFO    ] 2026-06-13 07:18:42
[2026-06-13 07:18:42,520.520 INFO    ] 2026-06-13 07:18:42
[2026-06-13 07:18:42,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:18:42,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:18:42,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:18:42,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:18:42,925.925 INFO    ] time= 13/06/2026 07:18:42
[2026-06-13 07:18:42,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:18:42,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:18:43,035.035 INFO    ] No existing commands found in stream
[2026-06-13 07:18:48,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:48,047.047 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 07:18:50,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:18:50,368.368 INFO    ] Checking for system updates...
[2026-06-13 07:18:50,389.389 INFO    ] 200
[2026-06-13 07:18:50,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:50,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:50,422.422 INFO    ] No update needed
[2026-06-13 07:18:50,424.424 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:50,447.447 INFO    ] 200
[2026-06-13 07:18:50,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:50,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:50,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:18:50,610.610 INFO    ] No camera update needed
[2026-06-13 07:18:50,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:50,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:50,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:50,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:18:52,659.659 INFO    ] ================================================
[2026-06-13 07:18:52,678.678 INFO    ] Launching Daemon at Sat Jun 13 07:18:52 IST 2026
[2026-06-13 07:18:52,689.689 INFO    ] ================================================
[2026-06-13 07:18:53,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:18:53
[2026-06-13 07:18:53,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:18:53,448.448 INFO    ] Initializing speech engine...
[2026-06-13 07:18:53,452.452 INFO    ] 2026-06-13 07:18:53
[2026-06-13 07:18:53,670.670 INFO    ] 2026-06-13 07:18:53
[2026-06-13 07:18:53,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:18:53,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:18:53,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:18:54,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:18:54,079.079 INFO    ] time= 13/06/2026 07:18:54
[2026-06-13 07:18:54,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:18:54,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:18:54,190.190 INFO    ] No existing commands found in stream
[2026-06-13 07:18:59,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:18:59,203.203 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 07:18:59,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:18:59,540.540 INFO    ] Checking for system updates...
[2026-06-13 07:18:59,561.561 INFO    ] 200
[2026-06-13 07:18:59,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:59,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:59,595.595 INFO    ] No update needed
[2026-06-13 07:18:59,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 07:18:59,616.616 INFO    ] 200
[2026-06-13 07:18:59,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:18:59,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:18:59,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:18:59,684.684 INFO    ] No camera update needed
[2026-06-13 07:18:59,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:18:59,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:18:59,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:18:59,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:01,726.726 INFO    ] ================================================
[2026-06-13 07:19:01,737.737 INFO    ] Launching Daemon at Sat Jun 13 07:19:01 IST 2026
[2026-06-13 07:19:01,745.745 INFO    ] ================================================
[2026-06-13 07:19:02,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:02
[2026-06-13 07:19:02,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:02,568.568 INFO    ] Initializing speech engine...
[2026-06-13 07:19:02,575.575 INFO    ] 2026-06-13 07:19:02
[2026-06-13 07:19:02,799.799 INFO    ] 2026-06-13 07:19:02
[2026-06-13 07:19:02,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:19:02,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:19:02,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:19:03,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:19:03,049.049 INFO    ] time= 13/06/2026 07:19:03
[2026-06-13 07:19:03,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:19:03,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:19:03,132.132 INFO    ] No existing commands found in stream
[2026-06-13 07:19:08,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:19:08,164.164 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 07:19:09,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:19:09,221.221 INFO    ] Checking for system updates...
[2026-06-13 07:19:09,243.243 INFO    ] 200
[2026-06-13 07:19:09,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:09,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:19:09,277.277 INFO    ] No update needed
[2026-06-13 07:19:09,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 07:19:09,302.302 INFO    ] 200
[2026-06-13 07:19:09,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:09,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:19:09,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:19:09,366.366 INFO    ] No camera update needed
[2026-06-13 07:19:09,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:19:09,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:19:09,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:19:09,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:11,414.414 INFO    ] ================================================
[2026-06-13 07:19:11,429.429 INFO    ] Launching Daemon at Sat Jun 13 07:19:11 IST 2026
[2026-06-13 07:19:11,440.440 INFO    ] ================================================
[2026-06-13 07:19:11,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:11
[2026-06-13 07:19:12,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:12,241.241 INFO    ] Initializing speech engine...
[2026-06-13 07:19:12,246.246 INFO    ] 2026-06-13 07:19:12
[2026-06-13 07:19:12,473.473 INFO    ] 2026-06-13 07:19:12
[2026-06-13 07:19:12,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:19:12,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:19:12,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:19:12,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:19:12,874.874 INFO    ] time= 13/06/2026 07:19:12
[2026-06-13 07:19:12,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:19:12,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:19:12,997.997 INFO    ] No existing commands found in stream
[2026-06-13 07:19:18,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:19:18,010.010 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 07:19:21,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:19:21,772.772 INFO    ] Checking for system updates...
[2026-06-13 07:19:21,808.808 INFO    ] 200
[2026-06-13 07:19:21,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:21,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:21,867.867 INFO    ] No update needed
[2026-06-13 07:19:21,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 07:19:21,904.904 INFO    ] 200
[2026-06-13 07:19:21,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:21,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:19:21,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:21,995.995 INFO    ] No camera update needed
[2026-06-13 07:19:21,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:19:22,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:19:22,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:19:22,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:24,052.052 INFO    ] ================================================
[2026-06-13 07:19:24,067.067 INFO    ] Launching Daemon at Sat Jun 13 07:19:24 IST 2026
[2026-06-13 07:19:24,079.079 INFO    ] ================================================
[2026-06-13 07:19:24,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:24
[2026-06-13 07:19:24,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:24,859.859 INFO    ] Initializing speech engine...
[2026-06-13 07:19:24,863.863 INFO    ] 2026-06-13 07:19:24
[2026-06-13 07:19:25,082.082 INFO    ] 2026-06-13 07:19:25
[2026-06-13 07:19:25,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:19:25,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:19:25,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:19:25,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:19:25,499.499 INFO    ] time= 13/06/2026 07:19:25
[2026-06-13 07:19:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:19:25,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:19:25,607.607 INFO    ] No existing commands found in stream
[2026-06-13 07:19:30,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:19:30,619.619 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 07:19:33,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:19:33,213.213 INFO    ] Checking for system updates...
[2026-06-13 07:19:33,253.253 INFO    ] 200
[2026-06-13 07:19:33,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:33,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:33,310.310 INFO    ] No update needed
[2026-06-13 07:19:33,313.313 INFO    ] Checking for camera pi updates...
[2026-06-13 07:19:33,351.351 INFO    ] 200
[2026-06-13 07:19:33,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:33,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:19:33,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:33,441.441 INFO    ] No camera update needed
[2026-06-13 07:19:33,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:19:33,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:19:33,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:19:33,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:35,499.499 INFO    ] ================================================
[2026-06-13 07:19:35,515.515 INFO    ] Launching Daemon at Sat Jun 13 07:19:35 IST 2026
[2026-06-13 07:19:35,526.526 INFO    ] ================================================
[2026-06-13 07:19:35,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:35
[2026-06-13 07:19:36,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:36,335.335 INFO    ] Initializing speech engine...
[2026-06-13 07:19:36,339.339 INFO    ] 2026-06-13 07:19:36
[2026-06-13 07:19:36,543.543 INFO    ] 2026-06-13 07:19:36
[2026-06-13 07:19:36,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:19:36,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:19:36,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:19:36,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:19:36,957.957 INFO    ] time= 13/06/2026 07:19:36
[2026-06-13 07:19:36,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:19:37,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:19:37,121.121 INFO    ] No existing commands found in stream
[2026-06-13 07:19:42,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:19:42,137.137 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 07:19:44,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:19:44,522.522 INFO    ] Checking for system updates...
[2026-06-13 07:19:44,543.543 INFO    ] 200
[2026-06-13 07:19:44,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:44,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:44,578.578 INFO    ] No update needed
[2026-06-13 07:19:44,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 07:19:44,603.603 INFO    ] 200
[2026-06-13 07:19:44,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:44,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:19:44,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:19:44,680.680 INFO    ] No camera update needed
[2026-06-13 07:19:44,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:19:44,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:19:44,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:19:44,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:46,728.728 INFO    ] ================================================
[2026-06-13 07:19:46,744.744 INFO    ] Launching Daemon at Sat Jun 13 07:19:46 IST 2026
[2026-06-13 07:19:46,755.755 INFO    ] ================================================
[2026-06-13 07:19:47,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:47
[2026-06-13 07:19:47,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:47,550.550 INFO    ] Initializing speech engine...
[2026-06-13 07:19:47,563.563 INFO    ] 2026-06-13 07:19:47
[2026-06-13 07:19:47,780.780 INFO    ] 2026-06-13 07:19:47
[2026-06-13 07:19:47,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:19:48,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:19:48,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:19:48,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:19:48,195.195 INFO    ] time= 13/06/2026 07:19:48
[2026-06-13 07:19:48,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:19:48,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:19:48,334.334 INFO    ] No existing commands found in stream
[2026-06-13 07:19:53,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:19:53,348.348 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 07:19:56,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:19:56,557.557 INFO    ] Checking for system updates...
[2026-06-13 07:19:56,578.578 INFO    ] 200
[2026-06-13 07:19:56,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:56,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:19:56,612.612 INFO    ] No update needed
[2026-06-13 07:19:56,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 07:19:56,634.634 INFO    ] 200
[2026-06-13 07:19:56,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:19:56,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:19:56,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:19:56,701.701 INFO    ] No camera update needed
[2026-06-13 07:19:56,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:19:56,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:19:56,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:19:56,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:19:58,750.750 INFO    ] ================================================
[2026-06-13 07:19:58,766.766 INFO    ] Launching Daemon at Sat Jun 13 07:19:58 IST 2026
[2026-06-13 07:19:58,777.777 INFO    ] ================================================
[2026-06-13 07:19:59,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:19:59
[2026-06-13 07:19:59,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:19:59,645.645 INFO    ] Initializing speech engine...
[2026-06-13 07:19:59,655.655 INFO    ] 2026-06-13 07:19:59
[2026-06-13 07:19:59,869.869 INFO    ] 2026-06-13 07:19:59
[2026-06-13 07:19:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:00,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:00,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:00,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:00,285.285 INFO    ] time= 13/06/2026 07:20:00
[2026-06-13 07:20:00,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:00,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:00,390.390 INFO    ] No existing commands found in stream
[2026-06-13 07:20:05,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:20:05,403.403 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 07:20:09,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:20:09,038.038 INFO    ] Checking for system updates...
[2026-06-13 07:20:09,059.059 INFO    ] 200
[2026-06-13 07:20:09,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:09,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:09,094.094 INFO    ] No update needed
[2026-06-13 07:20:09,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 07:20:09,118.118 INFO    ] 200
[2026-06-13 07:20:09,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:09,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:20:09,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:09,185.185 INFO    ] No camera update needed
[2026-06-13 07:20:09,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:20:09,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:20:09,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:20:09,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:20:11,233.233 INFO    ] ================================================
[2026-06-13 07:20:11,250.250 INFO    ] Launching Daemon at Sat Jun 13 07:20:11 IST 2026
[2026-06-13 07:20:11,261.261 INFO    ] ================================================
[2026-06-13 07:20:11,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:20:11
[2026-06-13 07:20:11,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:20:12,058.058 INFO    ] Initializing speech engine...
[2026-06-13 07:20:12,062.062 INFO    ] 2026-06-13 07:20:12
[2026-06-13 07:20:12,269.269 INFO    ] 2026-06-13 07:20:12
[2026-06-13 07:20:12,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:12,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:12,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:12,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:12,684.684 INFO    ] time= 13/06/2026 07:20:12
[2026-06-13 07:20:12,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:12,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:12,790.790 INFO    ] No existing commands found in stream
[2026-06-13 07:20:17,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:20:17,804.804 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 07:20:21,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:20:21,349.349 INFO    ] Checking for system updates...
[2026-06-13 07:20:21,370.370 INFO    ] 200
[2026-06-13 07:20:21,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:21,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:21,403.403 INFO    ] No update needed
[2026-06-13 07:20:21,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 07:20:21,424.424 INFO    ] 200
[2026-06-13 07:20:21,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:21,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:20:21,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:21,499.499 INFO    ] No camera update needed
[2026-06-13 07:20:21,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:20:21,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:20:21,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:20:21,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:20:23,546.546 INFO    ] ================================================
[2026-06-13 07:20:23,561.561 INFO    ] Launching Daemon at Sat Jun 13 07:20:23 IST 2026
[2026-06-13 07:20:23,572.572 INFO    ] ================================================
[2026-06-13 07:20:23,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:20:23
[2026-06-13 07:20:24,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:20:24,427.427 INFO    ] Initializing speech engine...
[2026-06-13 07:20:24,437.437 INFO    ] 2026-06-13 07:20:24
[2026-06-13 07:20:24,646.646 INFO    ] 2026-06-13 07:20:24
[2026-06-13 07:20:24,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:24,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:24,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:24,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:25,053.053 INFO    ] time= 13/06/2026 07:20:25
[2026-06-13 07:20:25,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:25,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:25,171.171 INFO    ] No existing commands found in stream
[2026-06-13 07:20:30,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:20:30,185.185 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 07:20:31,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:20:31,683.683 INFO    ] Checking for system updates...
[2026-06-13 07:20:31,706.706 INFO    ] 200
[2026-06-13 07:20:31,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:31,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:20:31,747.747 INFO    ] No update needed
[2026-06-13 07:20:31,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 07:20:31,773.773 INFO    ] 200
[2026-06-13 07:20:31,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:31,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:20:31,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:20:31,835.835 INFO    ] No camera update needed
[2026-06-13 07:20:31,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:20:31,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:20:31,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:20:31,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:20:33,882.882 INFO    ] ================================================
[2026-06-13 07:20:33,897.897 INFO    ] Launching Daemon at Sat Jun 13 07:20:33 IST 2026
[2026-06-13 07:20:33,908.908 INFO    ] ================================================
[2026-06-13 07:20:34,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:20:34
[2026-06-13 07:20:34,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:20:34,719.719 INFO    ] Initializing speech engine...
[2026-06-13 07:20:34,729.729 INFO    ] 2026-06-13 07:20:34
[2026-06-13 07:20:34,934.934 INFO    ] 2026-06-13 07:20:34
[2026-06-13 07:20:34,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:35,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:35,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:35,328.328 INFO    ] time= 13/06/2026 07:20:35
[2026-06-13 07:20:35,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:35,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:35,447.447 INFO    ] No existing commands found in stream
[2026-06-13 07:20:40,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:20:40,461.461 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 07:20:42,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:20:42,515.515 INFO    ] Checking for system updates...
[2026-06-13 07:20:42,536.536 INFO    ] 200
[2026-06-13 07:20:42,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:42,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:20:42,570.570 INFO    ] No update needed
[2026-06-13 07:20:42,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 07:20:42,591.591 INFO    ] 200
[2026-06-13 07:20:42,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:42,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:20:42,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:20:42,664.664 INFO    ] No camera update needed
[2026-06-13 07:20:42,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:20:42,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:20:42,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:20:42,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:20:44,698.698 INFO    ] ================================================
[2026-06-13 07:20:44,707.707 INFO    ] Launching Daemon at Sat Jun 13 07:20:44 IST 2026
[2026-06-13 07:20:44,719.719 INFO    ] ================================================
[2026-06-13 07:20:45,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:20:45
[2026-06-13 07:20:45,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:20:45,494.494 INFO    ] Initializing speech engine...
[2026-06-13 07:20:45,499.499 INFO    ] 2026-06-13 07:20:45
[2026-06-13 07:20:45,727.727 INFO    ] 2026-06-13 07:20:45
[2026-06-13 07:20:45,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:45,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:45,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:46,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:46,157.157 INFO    ] time= 13/06/2026 07:20:46
[2026-06-13 07:20:46,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:46,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:46,277.277 INFO    ] No existing commands found in stream
[2026-06-13 07:20:51,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:20:51,291.291 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 07:20:53,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:20:53,627.627 INFO    ] Checking for system updates...
[2026-06-13 07:20:53,648.648 INFO    ] 200
[2026-06-13 07:20:53,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:53,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:53,683.683 INFO    ] No update needed
[2026-06-13 07:20:53,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 07:20:53,705.705 INFO    ] 200
[2026-06-13 07:20:53,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:20:53,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:20:53,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:20:53,870.870 INFO    ] No camera update needed
[2026-06-13 07:20:53,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:20:53,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:20:53,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:20:53,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:20:55,919.919 INFO    ] ================================================
[2026-06-13 07:20:55,935.935 INFO    ] Launching Daemon at Sat Jun 13 07:20:55 IST 2026
[2026-06-13 07:20:55,947.947 INFO    ] ================================================
[2026-06-13 07:20:56,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:20:56
[2026-06-13 07:20:56,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:20:56,735.735 INFO    ] Initializing speech engine...
[2026-06-13 07:20:56,740.740 INFO    ] 2026-06-13 07:20:56
[2026-06-13 07:20:56,966.966 INFO    ] 2026-06-13 07:20:56
[2026-06-13 07:20:56,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:20:57,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:20:57,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:20:57,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:20:57,406.406 INFO    ] time= 13/06/2026 07:20:57
[2026-06-13 07:20:57,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:20:57,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:20:57,521.521 INFO    ] No existing commands found in stream
[2026-06-13 07:21:02,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:02,533.533 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 07:21:03,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:21:03,188.188 INFO    ] Checking for system updates...
[2026-06-13 07:21:03,210.210 INFO    ] 200
[2026-06-13 07:21:03,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:03,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:21:03,243.243 INFO    ] No update needed
[2026-06-13 07:21:03,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:03,267.267 INFO    ] 200
[2026-06-13 07:21:03,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:03,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:03,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:21:03,343.343 INFO    ] No camera update needed
[2026-06-13 07:21:03,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:03,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:03,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:03,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:21:05,400.400 INFO    ] ================================================
[2026-06-13 07:21:05,415.415 INFO    ] Launching Daemon at Sat Jun 13 07:21:05 IST 2026
[2026-06-13 07:21:05,426.426 INFO    ] ================================================
[2026-06-13 07:21:05,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:21:05
[2026-06-13 07:21:06,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:21:06,240.240 INFO    ] Initializing speech engine...
[2026-06-13 07:21:06,246.246 INFO    ] 2026-06-13 07:21:06
[2026-06-13 07:21:06,450.450 INFO    ] 2026-06-13 07:21:06
[2026-06-13 07:21:06,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:21:06,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:21:06,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:21:06,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:21:06,849.849 INFO    ] time= 13/06/2026 07:21:06
[2026-06-13 07:21:06,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:21:06,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:21:06,970.970 INFO    ] No existing commands found in stream
[2026-06-13 07:21:11,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:11,984.984 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 07:21:12,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:21:12,311.311 INFO    ] Checking for system updates...
[2026-06-13 07:21:12,356.356 INFO    ] 200
[2026-06-13 07:21:12,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:12,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:12,391.391 INFO    ] No update needed
[2026-06-13 07:21:12,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:12,413.413 INFO    ] 200
[2026-06-13 07:21:12,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:12,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:12,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:12,480.480 INFO    ] No camera update needed
[2026-06-13 07:21:12,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:12,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:12,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:12,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:21:14,529.529 INFO    ] ================================================
[2026-06-13 07:21:14,544.544 INFO    ] Launching Daemon at Sat Jun 13 07:21:14 IST 2026
[2026-06-13 07:21:14,555.555 INFO    ] ================================================
[2026-06-13 07:21:14,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:21:14
[2026-06-13 07:21:15,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:21:15,410.410 INFO    ] Initializing speech engine...
[2026-06-13 07:21:15,415.415 INFO    ] 2026-06-13 07:21:15
[2026-06-13 07:21:15,630.630 INFO    ] 2026-06-13 07:21:15
[2026-06-13 07:21:15,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:21:15,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:21:15,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:21:15,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:21:16,038.038 INFO    ] time= 13/06/2026 07:21:15
[2026-06-13 07:21:16,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:21:16,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:21:16,155.155 INFO    ] No existing commands found in stream
[2026-06-13 07:21:21,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:21,170.170 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 07:21:24,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:21:24,292.292 INFO    ] Checking for system updates...
[2026-06-13 07:21:24,315.315 INFO    ] 200
[2026-06-13 07:21:24,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:24,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:24,353.353 INFO    ] No update needed
[2026-06-13 07:21:24,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:24,378.378 INFO    ] 200
[2026-06-13 07:21:24,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:24,405.405 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:24,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:24,443.443 INFO    ] No camera update needed
[2026-06-13 07:21:24,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:24,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:24,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:24,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:21:26,491.491 INFO    ] ================================================
[2026-06-13 07:21:26,506.506 INFO    ] Launching Daemon at Sat Jun 13 07:21:26 IST 2026
[2026-06-13 07:21:26,517.517 INFO    ] ================================================
[2026-06-13 07:21:26,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:21:26
[2026-06-13 07:21:27,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:21:27,392.392 INFO    ] Initializing speech engine...
[2026-06-13 07:21:27,397.397 INFO    ] 2026-06-13 07:21:27
[2026-06-13 07:21:27,609.609 INFO    ] 2026-06-13 07:21:27
[2026-06-13 07:21:27,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:21:27,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:21:27,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:21:27,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:21:28,028.028 INFO    ] time= 13/06/2026 07:21:27
[2026-06-13 07:21:28,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:21:28,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:21:28,136.136 INFO    ] No existing commands found in stream
[2026-06-13 07:21:33,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:33,149.149 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 07:21:34,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:21:34,418.418 INFO    ] Checking for system updates...
[2026-06-13 07:21:34,440.440 INFO    ] 200
[2026-06-13 07:21:34,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:34,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:21:34,473.473 INFO    ] No update needed
[2026-06-13 07:21:34,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:34,494.494 INFO    ] 200
[2026-06-13 07:21:34,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:34,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:34,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:21:34,556.556 INFO    ] No camera update needed
[2026-06-13 07:21:34,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:34,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:34,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:34,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:21:36,605.605 INFO    ] ================================================
[2026-06-13 07:21:36,620.620 INFO    ] Launching Daemon at Sat Jun 13 07:21:36 IST 2026
[2026-06-13 07:21:36,631.631 INFO    ] ================================================
[2026-06-13 07:21:36,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:21:36
[2026-06-13 07:21:37,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:21:37,445.445 INFO    ] Initializing speech engine...
[2026-06-13 07:21:37,454.454 INFO    ] 2026-06-13 07:21:37
[2026-06-13 07:21:37,679.679 INFO    ] 2026-06-13 07:21:37
[2026-06-13 07:21:37,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:21:37,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:21:37,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:21:38,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:21:38,098.098 INFO    ] time= 13/06/2026 07:21:38
[2026-06-13 07:21:38,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:21:38,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:21:38,235.235 INFO    ] No existing commands found in stream
[2026-06-13 07:21:43,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:43,249.249 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 07:21:47,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:21:47,553.553 INFO    ] Checking for system updates...
[2026-06-13 07:21:47,574.574 INFO    ] 200
[2026-06-13 07:21:47,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:47,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:47,607.607 INFO    ] No update needed
[2026-06-13 07:21:47,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:47,629.629 INFO    ] 200
[2026-06-13 07:21:47,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:47,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:47,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:21:47,701.701 INFO    ] No camera update needed
[2026-06-13 07:21:47,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:47,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:47,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:47,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:21:49,748.748 INFO    ] ================================================
[2026-06-13 07:21:49,763.763 INFO    ] Launching Daemon at Sat Jun 13 07:21:49 IST 2026
[2026-06-13 07:21:49,773.773 INFO    ] ================================================
[2026-06-13 07:21:50,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:21:50
[2026-06-13 07:21:50,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:21:50,596.596 INFO    ] Initializing speech engine...
[2026-06-13 07:21:50,605.605 INFO    ] 2026-06-13 07:21:50
[2026-06-13 07:21:50,813.813 INFO    ] 2026-06-13 07:21:50
[2026-06-13 07:21:50,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:21:51,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:21:51,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:21:51,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:21:51,236.236 INFO    ] time= 13/06/2026 07:21:51
[2026-06-13 07:21:51,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:21:51,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:21:51,333.333 INFO    ] No existing commands found in stream
[2026-06-13 07:21:56,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:21:56,345.345 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 07:21:59,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:21:59,204.204 INFO    ] Checking for system updates...
[2026-06-13 07:21:59,225.225 INFO    ] 200
[2026-06-13 07:21:59,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:59,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:59,259.259 INFO    ] No update needed
[2026-06-13 07:21:59,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 07:21:59,279.279 INFO    ] 200
[2026-06-13 07:21:59,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:21:59,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:21:59,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:21:59,349.349 INFO    ] No camera update needed
[2026-06-13 07:21:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:21:59,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:21:59,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:21:59,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:01,397.397 INFO    ] ================================================
[2026-06-13 07:22:01,412.412 INFO    ] Launching Daemon at Sat Jun 13 07:22:01 IST 2026
[2026-06-13 07:22:01,423.423 INFO    ] ================================================
[2026-06-13 07:22:01,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:01
[2026-06-13 07:22:02,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:02,393.393 INFO    ] Initializing speech engine...
[2026-06-13 07:22:02,402.402 INFO    ] 2026-06-13 07:22:02
[2026-06-13 07:22:02,664.664 INFO    ] 2026-06-13 07:22:02
[2026-06-13 07:22:02,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:02,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:02,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:03,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:03,027.027 INFO    ] time= 13/06/2026 07:22:03
[2026-06-13 07:22:03,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:03,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:03,181.181 INFO    ] No existing commands found in stream
[2026-06-13 07:22:08,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:22:08,209.209 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 07:22:09,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:22:09,592.592 INFO    ] Checking for system updates...
[2026-06-13 07:22:09,613.613 INFO    ] 200
[2026-06-13 07:22:09,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:09,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:09,646.646 INFO    ] No update needed
[2026-06-13 07:22:09,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 07:22:09,666.666 INFO    ] 200
[2026-06-13 07:22:09,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:09,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:22:09,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:09,736.736 INFO    ] No camera update needed
[2026-06-13 07:22:09,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:22:09,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:22:09,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:22:09,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:11,784.784 INFO    ] ================================================
[2026-06-13 07:22:11,799.799 INFO    ] Launching Daemon at Sat Jun 13 07:22:11 IST 2026
[2026-06-13 07:22:11,810.810 INFO    ] ================================================
[2026-06-13 07:22:12,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:12
[2026-06-13 07:22:12,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:12,582.582 INFO    ] Initializing speech engine...
[2026-06-13 07:22:12,590.590 INFO    ] 2026-06-13 07:22:12
[2026-06-13 07:22:12,805.805 INFO    ] 2026-06-13 07:22:12
[2026-06-13 07:22:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:13,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:13,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:13,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:13,206.206 INFO    ] time= 13/06/2026 07:22:13
[2026-06-13 07:22:13,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:13,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:13,328.328 INFO    ] No existing commands found in stream
[2026-06-13 07:22:18,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:22:18,342.342 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 07:22:22,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:22:22,031.031 INFO    ] Checking for system updates...
[2026-06-13 07:22:22,051.051 INFO    ] 200
[2026-06-13 07:22:22,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:22,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:22,085.085 INFO    ] No update needed
[2026-06-13 07:22:22,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 07:22:22,105.105 INFO    ] 200
[2026-06-13 07:22:22,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:22,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:22:22,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:22,171.171 INFO    ] No camera update needed
[2026-06-13 07:22:22,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:22:22,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:22:22,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:22:22,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:24,219.219 INFO    ] ================================================
[2026-06-13 07:22:24,234.234 INFO    ] Launching Daemon at Sat Jun 13 07:22:24 IST 2026
[2026-06-13 07:22:24,245.245 INFO    ] ================================================
[2026-06-13 07:22:24,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:24
[2026-06-13 07:22:24,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:25,112.112 INFO    ] Initializing speech engine...
[2026-06-13 07:22:25,117.117 INFO    ] 2026-06-13 07:22:25
[2026-06-13 07:22:25,323.323 INFO    ] 2026-06-13 07:22:25
[2026-06-13 07:22:25,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:25,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:25,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:25,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:25,734.734 INFO    ] time= 13/06/2026 07:22:25
[2026-06-13 07:22:25,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:25,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:25,889.889 INFO    ] No existing commands found in stream
[2026-06-13 07:22:30,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:22:30,909.909 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 07:22:33,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:22:33,015.015 INFO    ] Checking for system updates...
[2026-06-13 07:22:33,053.053 INFO    ] 200
[2026-06-13 07:22:33,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:33,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:22:33,114.114 INFO    ] No update needed
[2026-06-13 07:22:33,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 07:22:33,156.156 INFO    ] 200
[2026-06-13 07:22:33,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:33,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:22:33,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:22:33,231.231 INFO    ] No camera update needed
[2026-06-13 07:22:33,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:22:33,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:22:33,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:22:33,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:35,280.280 INFO    ] ================================================
[2026-06-13 07:22:35,295.295 INFO    ] Launching Daemon at Sat Jun 13 07:22:35 IST 2026
[2026-06-13 07:22:35,306.306 INFO    ] ================================================
[2026-06-13 07:22:35,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:35
[2026-06-13 07:22:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:36,105.105 INFO    ] Initializing speech engine...
[2026-06-13 07:22:36,109.109 INFO    ] 2026-06-13 07:22:36
[2026-06-13 07:22:36,319.319 INFO    ] 2026-06-13 07:22:36
[2026-06-13 07:22:36,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:36,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:36,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:36,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:36,726.726 INFO    ] time= 13/06/2026 07:22:36
[2026-06-13 07:22:36,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:36,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:36,914.914 INFO    ] No existing commands found in stream
[2026-06-13 07:22:41,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:22:41,928.928 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 07:22:42,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:22:42,718.718 INFO    ] Checking for system updates...
[2026-06-13 07:22:42,739.739 INFO    ] 200
[2026-06-13 07:22:42,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:42,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:22:42,772.772 INFO    ] No update needed
[2026-06-13 07:22:42,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 07:22:42,793.793 INFO    ] 200
[2026-06-13 07:22:42,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:42,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:22:42,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:42,856.856 INFO    ] No camera update needed
[2026-06-13 07:22:42,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:22:42,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:22:42,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:22:42,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:44,904.904 INFO    ] ================================================
[2026-06-13 07:22:44,920.920 INFO    ] Launching Daemon at Sat Jun 13 07:22:44 IST 2026
[2026-06-13 07:22:44,931.931 INFO    ] ================================================
[2026-06-13 07:22:45,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:45
[2026-06-13 07:22:45,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:45,705.705 INFO    ] Initializing speech engine...
[2026-06-13 07:22:45,709.709 INFO    ] 2026-06-13 07:22:45
[2026-06-13 07:22:45,902.902 INFO    ] 2026-06-13 07:22:45
[2026-06-13 07:22:45,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:46,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:46,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:46,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:46,193.193 INFO    ] time= 13/06/2026 07:22:46
[2026-06-13 07:22:46,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:46,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:46,291.291 INFO    ] No existing commands found in stream
[2026-06-13 07:22:51,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:22:51,323.323 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 07:22:53,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:22:53,432.432 INFO    ] Checking for system updates...
[2026-06-13 07:22:53,454.454 INFO    ] 200
[2026-06-13 07:22:53,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:53,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:53,490.490 INFO    ] No update needed
[2026-06-13 07:22:53,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 07:22:53,511.511 INFO    ] 200
[2026-06-13 07:22:53,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:22:53,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:22:53,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:22:53,576.576 INFO    ] No camera update needed
[2026-06-13 07:22:53,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:22:53,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:22:53,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:22:53,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:22:55,624.624 INFO    ] ================================================
[2026-06-13 07:22:55,639.639 INFO    ] Launching Daemon at Sat Jun 13 07:22:55 IST 2026
[2026-06-13 07:22:55,650.650 INFO    ] ================================================
[2026-06-13 07:22:56,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:22:56
[2026-06-13 07:22:56,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:22:56,467.467 INFO    ] Initializing speech engine...
[2026-06-13 07:22:56,475.475 INFO    ] 2026-06-13 07:22:56
[2026-06-13 07:22:56,675.675 INFO    ] 2026-06-13 07:22:56
[2026-06-13 07:22:56,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:22:56,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:22:56,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:22:57,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:22:57,087.087 INFO    ] time= 13/06/2026 07:22:57
[2026-06-13 07:22:57,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:22:57,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:22:57,271.271 INFO    ] No existing commands found in stream
[2026-06-13 07:23:02,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:23:02,281.281 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 07:23:06,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:23:06,163.163 INFO    ] Checking for system updates...
[2026-06-13 07:23:06,184.184 INFO    ] 200
[2026-06-13 07:23:06,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:06,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:06,217.217 INFO    ] No update needed
[2026-06-13 07:23:06,218.218 INFO    ] Checking for camera pi updates...
[2026-06-13 07:23:06,239.239 INFO    ] 200
[2026-06-13 07:23:06,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:06,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:23:06,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:06,307.307 INFO    ] No camera update needed
[2026-06-13 07:23:06,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:23:06,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:23:06,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:23:06,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:23:08,352.352 INFO    ] ================================================
[2026-06-13 07:23:08,367.367 INFO    ] Launching Daemon at Sat Jun 13 07:23:08 IST 2026
[2026-06-13 07:23:08,377.377 INFO    ] ================================================
[2026-06-13 07:23:08,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:23:08
[2026-06-13 07:23:09,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:23:09,167.167 INFO    ] Initializing speech engine...
[2026-06-13 07:23:09,171.171 INFO    ] 2026-06-13 07:23:09
[2026-06-13 07:23:09,400.400 INFO    ] 2026-06-13 07:23:09
[2026-06-13 07:23:09,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:23:09,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:23:09,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:23:09,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:23:09,838.838 INFO    ] time= 13/06/2026 07:23:09
[2026-06-13 07:23:09,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:23:09,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:23:09,962.962 INFO    ] No existing commands found in stream
[2026-06-13 07:23:14,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:23:14,975.975 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 07:23:16,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:23:16,578.578 INFO    ] Checking for system updates...
[2026-06-13 07:23:16,599.599 INFO    ] 200
[2026-06-13 07:23:16,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:16,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:23:16,635.635 INFO    ] No update needed
[2026-06-13 07:23:16,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 07:23:16,657.657 INFO    ] 200
[2026-06-13 07:23:16,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:16,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:23:16,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:23:16,716.716 INFO    ] No camera update needed
[2026-06-13 07:23:16,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:23:16,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:23:16,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:23:16,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:23:18,764.764 INFO    ] ================================================
[2026-06-13 07:23:18,779.779 INFO    ] Launching Daemon at Sat Jun 13 07:23:18 IST 2026
[2026-06-13 07:23:18,789.789 INFO    ] ================================================
[2026-06-13 07:23:19,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:23:19
[2026-06-13 07:23:19,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:23:19,591.591 INFO    ] Initializing speech engine...
[2026-06-13 07:23:19,597.597 INFO    ] 2026-06-13 07:23:19
[2026-06-13 07:23:19,801.801 INFO    ] 2026-06-13 07:23:19
[2026-06-13 07:23:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:23:19,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:23:20,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:23:20,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:23:20,202.202 INFO    ] time= 13/06/2026 07:23:20
[2026-06-13 07:23:20,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:23:20,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:23:20,319.319 INFO    ] No existing commands found in stream
[2026-06-13 07:23:25,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:23:25,331.331 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 07:23:28,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:23:28,866.866 INFO    ] Checking for system updates...
[2026-06-13 07:23:28,887.887 INFO    ] 200
[2026-06-13 07:23:28,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:28,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:28,920.920 INFO    ] No update needed
[2026-06-13 07:23:28,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 07:23:28,941.941 INFO    ] 200
[2026-06-13 07:23:28,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:28,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:23:29,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:29,006.006 INFO    ] No camera update needed
[2026-06-13 07:23:29,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:23:29,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:23:29,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:23:29,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:23:31,053.053 INFO    ] ================================================
[2026-06-13 07:23:31,068.068 INFO    ] Launching Daemon at Sat Jun 13 07:23:31 IST 2026
[2026-06-13 07:23:31,079.079 INFO    ] ================================================
[2026-06-13 07:23:31,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:23:31
[2026-06-13 07:23:31,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:23:31,983.983 INFO    ] Initializing speech engine...
[2026-06-13 07:23:31,991.991 INFO    ] 2026-06-13 07:23:31
[2026-06-13 07:23:32,250.250 INFO    ] 2026-06-13 07:23:32
[2026-06-13 07:23:32,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:23:32,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:23:32,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:23:32,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:23:32,533.533 INFO    ] time= 13/06/2026 07:23:32
[2026-06-13 07:23:32,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:23:32,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:23:32,720.720 INFO    ] No existing commands found in stream
[2026-06-13 07:23:37,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:23:37,745.745 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 07:23:41,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:23:41,127.127 INFO    ] Checking for system updates...
[2026-06-13 07:23:41,148.148 INFO    ] 200
[2026-06-13 07:23:41,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:41,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:23:41,182.182 INFO    ] No update needed
[2026-06-13 07:23:41,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 07:23:41,204.204 INFO    ] 200
[2026-06-13 07:23:41,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:41,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:23:41,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:23:41,274.274 INFO    ] No camera update needed
[2026-06-13 07:23:41,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:23:41,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:23:41,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:23:41,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:23:43,321.321 INFO    ] ================================================
[2026-06-13 07:23:43,336.336 INFO    ] Launching Daemon at Sat Jun 13 07:23:43 IST 2026
[2026-06-13 07:23:43,347.347 INFO    ] ================================================
[2026-06-13 07:23:43,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:23:43
[2026-06-13 07:23:44,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:23:44,141.141 INFO    ] Initializing speech engine...
[2026-06-13 07:23:44,144.144 INFO    ] 2026-06-13 07:23:44
[2026-06-13 07:23:44,363.363 INFO    ] 2026-06-13 07:23:44
[2026-06-13 07:23:44,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:23:44,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:23:44,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:23:44,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:23:44,608.608 INFO    ] time= 13/06/2026 07:23:44
[2026-06-13 07:23:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:23:44,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:23:44,700.700 INFO    ] No existing commands found in stream
[2026-06-13 07:23:49,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:23:49,738.738 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 07:23:52,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:23:52,647.647 INFO    ] Checking for system updates...
[2026-06-13 07:23:52,670.670 INFO    ] 200
[2026-06-13 07:23:52,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:52,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:52,704.704 INFO    ] No update needed
[2026-06-13 07:23:52,705.705 INFO    ] Checking for camera pi updates...
[2026-06-13 07:23:52,724.724 INFO    ] 200
[2026-06-13 07:23:52,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:23:52,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:23:52,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:23:52,790.790 INFO    ] No camera update needed
[2026-06-13 07:23:52,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:23:52,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:23:52,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:23:52,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:23:54,836.836 INFO    ] ================================================
[2026-06-13 07:23:54,852.852 INFO    ] Launching Daemon at Sat Jun 13 07:23:54 IST 2026
[2026-06-13 07:23:54,863.863 INFO    ] ================================================
[2026-06-13 07:23:55,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:23:55
[2026-06-13 07:23:55,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:23:56,217.217 INFO    ] Initializing speech engine...
[2026-06-13 07:23:56,225.225 INFO    ] 2026-06-13 07:23:56
[2026-06-13 07:23:56,519.519 INFO    ] 2026-06-13 07:23:56
[2026-06-13 07:23:56,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:23:56,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:23:56,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:23:56,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:23:56,880.880 INFO    ] time= 13/06/2026 07:23:56
[2026-06-13 07:23:56,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:23:56,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:23:56,993.993 INFO    ] No existing commands found in stream
[2026-06-13 07:24:02,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:02,029.029 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 07:24:02,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:24:02,716.716 INFO    ] Checking for system updates...
[2026-06-13 07:24:02,738.738 INFO    ] 200
[2026-06-13 07:24:02,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:02,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:24:02,772.772 INFO    ] No update needed
[2026-06-13 07:24:02,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 07:24:02,793.793 INFO    ] 200
[2026-06-13 07:24:02,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:02,817.817 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:24:02,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:24:02,841.841 INFO    ] No camera update needed
[2026-06-13 07:24:02,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:24:02,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:24:02,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:24:02,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:24:04,889.889 INFO    ] ================================================
[2026-06-13 07:24:04,904.904 INFO    ] Launching Daemon at Sat Jun 13 07:24:04 IST 2026
[2026-06-13 07:24:04,915.915 INFO    ] ================================================
[2026-06-13 07:24:05,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:24:05
[2026-06-13 07:24:05,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:24:05,717.717 INFO    ] Initializing speech engine...
[2026-06-13 07:24:05,725.725 INFO    ] 2026-06-13 07:24:05
[2026-06-13 07:24:05,935.935 INFO    ] 2026-06-13 07:24:05
[2026-06-13 07:24:05,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:24:06,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:24:06,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:24:06,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:24:06,343.343 INFO    ] time= 13/06/2026 07:24:06
[2026-06-13 07:24:06,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:24:06,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:24:06,453.453 INFO    ] No existing commands found in stream
[2026-06-13 07:24:11,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:11,467.467 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 07:24:13,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:24:13,590.590 INFO    ] Checking for system updates...
[2026-06-13 07:24:13,610.610 INFO    ] 200
[2026-06-13 07:24:13,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:13,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:24:13,646.646 INFO    ] No update needed
[2026-06-13 07:24:13,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 07:24:13,668.668 INFO    ] 200
[2026-06-13 07:24:13,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:13,693.693 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:24:13,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:13,736.736 INFO    ] No camera update needed
[2026-06-13 07:24:13,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:24:13,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:24:13,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:24:13,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:24:15,783.783 INFO    ] ================================================
[2026-06-13 07:24:15,797.797 INFO    ] Launching Daemon at Sat Jun 13 07:24:15 IST 2026
[2026-06-13 07:24:15,808.808 INFO    ] ================================================
[2026-06-13 07:24:16,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:24:16
[2026-06-13 07:24:16,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:24:16,593.593 INFO    ] Initializing speech engine...
[2026-06-13 07:24:16,597.597 INFO    ] 2026-06-13 07:24:16
[2026-06-13 07:24:16,817.817 INFO    ] 2026-06-13 07:24:16
[2026-06-13 07:24:16,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:24:16,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:24:17,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:24:17,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:24:17,230.230 INFO    ] time= 13/06/2026 07:24:17
[2026-06-13 07:24:17,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:24:17,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:24:17,337.337 INFO    ] No existing commands found in stream
[2026-06-13 07:24:22,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:22,351.351 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 07:24:28,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:24:28,148.148 INFO    ] Checking for system updates...
[2026-06-13 07:24:28,169.169 INFO    ] 200
[2026-06-13 07:24:28,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:28,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:28,202.202 INFO    ] No update needed
[2026-06-13 07:24:28,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 07:24:28,223.223 INFO    ] 200
[2026-06-13 07:24:28,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:28,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:24:28,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:28,290.290 INFO    ] No camera update needed
[2026-06-13 07:24:28,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:24:28,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:24:28,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:24:28,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:24:30,337.337 INFO    ] ================================================
[2026-06-13 07:24:30,352.352 INFO    ] Launching Daemon at Sat Jun 13 07:24:30 IST 2026
[2026-06-13 07:24:30,362.362 INFO    ] ================================================
[2026-06-13 07:24:30,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:24:30
[2026-06-13 07:24:31,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:24:31,164.164 INFO    ] Initializing speech engine...
[2026-06-13 07:24:31,169.169 INFO    ] 2026-06-13 07:24:31
[2026-06-13 07:24:31,388.388 INFO    ] 2026-06-13 07:24:31
[2026-06-13 07:24:31,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:24:31,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:24:31,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:24:31,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:24:31,717.717 INFO    ] time= 13/06/2026 07:24:31
[2026-06-13 07:24:31,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:24:31,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:24:31,888.888 INFO    ] No existing commands found in stream
[2026-06-13 07:24:36,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:36,897.897 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 07:24:39,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:24:39,634.634 INFO    ] Checking for system updates...
[2026-06-13 07:24:39,655.655 INFO    ] 200
[2026-06-13 07:24:39,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:39,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:39,689.689 INFO    ] No update needed
[2026-06-13 07:24:39,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 07:24:39,712.712 INFO    ] 200
[2026-06-13 07:24:39,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:39,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:24:39,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:39,779.779 INFO    ] No camera update needed
[2026-06-13 07:24:39,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:24:39,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:24:39,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:24:39,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:24:41,827.827 INFO    ] ================================================
[2026-06-13 07:24:41,843.843 INFO    ] Launching Daemon at Sat Jun 13 07:24:41 IST 2026
[2026-06-13 07:24:41,854.854 INFO    ] ================================================
[2026-06-13 07:24:42,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:24:42
[2026-06-13 07:24:42,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:24:42,727.727 INFO    ] Initializing speech engine...
[2026-06-13 07:24:42,732.732 INFO    ] 2026-06-13 07:24:42
[2026-06-13 07:24:42,939.939 INFO    ] 2026-06-13 07:24:42
[2026-06-13 07:24:42,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:24:43,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:24:43,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:24:43,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:24:43,361.361 INFO    ] time= 13/06/2026 07:24:43
[2026-06-13 07:24:43,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:24:43,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:24:43,460.460 INFO    ] No existing commands found in stream
[2026-06-13 07:24:48,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:48,472.472 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 07:24:50,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:24:50,879.879 INFO    ] Checking for system updates...
[2026-06-13 07:24:50,901.901 INFO    ] 200
[2026-06-13 07:24:50,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:50,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:50,935.935 INFO    ] No update needed
[2026-06-13 07:24:50,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 07:24:50,957.957 INFO    ] 200
[2026-06-13 07:24:50,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:24:50,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:24:51,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:24:51,021.021 INFO    ] No camera update needed
[2026-06-13 07:24:51,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:24:51,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:24:51,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:24:51,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:24:53,069.069 INFO    ] ================================================
[2026-06-13 07:24:53,084.084 INFO    ] Launching Daemon at Sat Jun 13 07:24:53 IST 2026
[2026-06-13 07:24:53,095.095 INFO    ] ================================================
[2026-06-13 07:24:53,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:24:53
[2026-06-13 07:24:53,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:24:53,968.968 INFO    ] Initializing speech engine...
[2026-06-13 07:24:53,974.974 INFO    ] 2026-06-13 07:24:53
[2026-06-13 07:24:54,180.180 INFO    ] 2026-06-13 07:24:54
[2026-06-13 07:24:54,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:24:54,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:24:54,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:24:54,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:24:54,586.586 INFO    ] time= 13/06/2026 07:24:54
[2026-06-13 07:24:54,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:24:54,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:24:54,697.697 INFO    ] No existing commands found in stream
[2026-06-13 07:24:59,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:24:59,711.711 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 07:25:01,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:25:01,742.742 INFO    ] Checking for system updates...
[2026-06-13 07:25:01,804.804 INFO    ] 200
[2026-06-13 07:25:01,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:01,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:25:01,861.861 INFO    ] No update needed
[2026-06-13 07:25:01,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:01,914.914 INFO    ] 200
[2026-06-13 07:25:01,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:01,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:02,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:25:02,011.011 INFO    ] No camera update needed
[2026-06-13 07:25:02,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:02,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:02,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:02,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:04,065.065 INFO    ] ================================================
[2026-06-13 07:25:04,081.081 INFO    ] Launching Daemon at Sat Jun 13 07:25:04 IST 2026
[2026-06-13 07:25:04,092.092 INFO    ] ================================================
[2026-06-13 07:25:04,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:04
[2026-06-13 07:25:05,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:05,520.520 INFO    ] Initializing speech engine...
[2026-06-13 07:25:05,527.527 INFO    ] 2026-06-13 07:25:05
[2026-06-13 07:25:05,725.725 INFO    ] 2026-06-13 07:25:05
[2026-06-13 07:25:05,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:05,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:05,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:06,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:06,148.148 INFO    ] time= 13/06/2026 07:25:06
[2026-06-13 07:25:06,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:06,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:06,253.253 INFO    ] No existing commands found in stream
[2026-06-13 07:25:11,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:25:11,271.271 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 07:25:12,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:25:12,854.854 INFO    ] Checking for system updates...
[2026-06-13 07:25:12,877.877 INFO    ] 200
[2026-06-13 07:25:12,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:12,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:12,913.913 INFO    ] No update needed
[2026-06-13 07:25:12,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:12,934.934 INFO    ] 200
[2026-06-13 07:25:12,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:12,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:13,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:13,104.104 INFO    ] No camera update needed
[2026-06-13 07:25:13,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:13,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:13,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:13,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:15,152.152 INFO    ] ================================================
[2026-06-13 07:25:15,167.167 INFO    ] Launching Daemon at Sat Jun 13 07:25:15 IST 2026
[2026-06-13 07:25:15,178.178 INFO    ] ================================================
[2026-06-13 07:25:15,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:15
[2026-06-13 07:25:15,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:15,993.993 INFO    ] Initializing speech engine...
[2026-06-13 07:25:15,998.998 INFO    ] 2026-06-13 07:25:15
[2026-06-13 07:25:16,203.203 INFO    ] 2026-06-13 07:25:16
[2026-06-13 07:25:16,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:16,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:16,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:16,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:16,605.605 INFO    ] time= 13/06/2026 07:25:16
[2026-06-13 07:25:16,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:16,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:16,715.715 INFO    ] No existing commands found in stream
[2026-06-13 07:25:21,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:25:21,727.727 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 07:25:24,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:25:24,565.565 INFO    ] Checking for system updates...
[2026-06-13 07:25:24,586.586 INFO    ] 200
[2026-06-13 07:25:24,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:24,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:24,621.621 INFO    ] No update needed
[2026-06-13 07:25:24,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:24,643.643 INFO    ] 200
[2026-06-13 07:25:24,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:24,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:24,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:25:24,711.711 INFO    ] No camera update needed
[2026-06-13 07:25:24,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:24,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:24,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:24,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:26,759.759 INFO    ] ================================================
[2026-06-13 07:25:26,774.774 INFO    ] Launching Daemon at Sat Jun 13 07:25:26 IST 2026
[2026-06-13 07:25:26,785.785 INFO    ] ================================================
[2026-06-13 07:25:27,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:27
[2026-06-13 07:25:27,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:27,573.573 INFO    ] Initializing speech engine...
[2026-06-13 07:25:27,582.582 INFO    ] 2026-06-13 07:25:27
[2026-06-13 07:25:27,804.804 INFO    ] 2026-06-13 07:25:27
[2026-06-13 07:25:27,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:28,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:28,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:28,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:28,200.200 INFO    ] time= 13/06/2026 07:25:28
[2026-06-13 07:25:28,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:28,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:28,323.323 INFO    ] No existing commands found in stream
[2026-06-13 07:25:33,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:25:33,335.335 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 07:25:34,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:25:34,288.288 INFO    ] Checking for system updates...
[2026-06-13 07:25:34,309.309 INFO    ] 200
[2026-06-13 07:25:34,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:34,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:25:34,345.345 INFO    ] No update needed
[2026-06-13 07:25:34,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:34,366.366 INFO    ] 200
[2026-06-13 07:25:34,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:34,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:34,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:25:34,437.437 INFO    ] No camera update needed
[2026-06-13 07:25:34,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:34,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:34,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:34,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:36,485.485 INFO    ] ================================================
[2026-06-13 07:25:36,501.501 INFO    ] Launching Daemon at Sat Jun 13 07:25:36 IST 2026
[2026-06-13 07:25:36,512.512 INFO    ] ================================================
[2026-06-13 07:25:36,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:36
[2026-06-13 07:25:37,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:37,308.308 INFO    ] Initializing speech engine...
[2026-06-13 07:25:37,313.313 INFO    ] 2026-06-13 07:25:37
[2026-06-13 07:25:37,549.549 INFO    ] 2026-06-13 07:25:37
[2026-06-13 07:25:37,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:37,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:37,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:37,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:37,809.809 INFO    ] time= 13/06/2026 07:25:37
[2026-06-13 07:25:37,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:37,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:37,917.917 INFO    ] No existing commands found in stream
[2026-06-13 07:25:42,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:25:42,942.942 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 07:25:45,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:25:45,127.127 INFO    ] Checking for system updates...
[2026-06-13 07:25:45,148.148 INFO    ] 200
[2026-06-13 07:25:45,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:45,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:45,185.185 INFO    ] No update needed
[2026-06-13 07:25:45,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:45,208.208 INFO    ] 200
[2026-06-13 07:25:45,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:45,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:45,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:45,277.277 INFO    ] No camera update needed
[2026-06-13 07:25:45,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:45,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:45,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:45,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:47,324.324 INFO    ] ================================================
[2026-06-13 07:25:47,339.339 INFO    ] Launching Daemon at Sat Jun 13 07:25:47 IST 2026
[2026-06-13 07:25:47,350.350 INFO    ] ================================================
[2026-06-13 07:25:47,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:47
[2026-06-13 07:25:48,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:48,390.390 INFO    ] Initializing speech engine...
[2026-06-13 07:25:48,399.399 INFO    ] 2026-06-13 07:25:48
[2026-06-13 07:25:48,644.644 INFO    ] 2026-06-13 07:25:48
[2026-06-13 07:25:48,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:48,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:48,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:49,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:49,011.011 INFO    ] time= 13/06/2026 07:25:49
[2026-06-13 07:25:49,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:49,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:49,085.085 INFO    ] No existing commands found in stream
[2026-06-13 07:25:54,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:25:54,101.101 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 07:25:55,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:25:55,495.495 INFO    ] Checking for system updates...
[2026-06-13 07:25:55,516.516 INFO    ] 200
[2026-06-13 07:25:55,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:55,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:55,550.550 INFO    ] No update needed
[2026-06-13 07:25:55,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 07:25:55,571.571 INFO    ] 200
[2026-06-13 07:25:55,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:25:55,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:25:55,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:25:55,640.640 INFO    ] No camera update needed
[2026-06-13 07:25:55,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:25:55,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:25:55,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:25:55,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:25:57,687.687 INFO    ] ================================================
[2026-06-13 07:25:57,703.703 INFO    ] Launching Daemon at Sat Jun 13 07:25:57 IST 2026
[2026-06-13 07:25:57,714.714 INFO    ] ================================================
[2026-06-13 07:25:58,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:25:58
[2026-06-13 07:25:58,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:25:58,590.590 INFO    ] Initializing speech engine...
[2026-06-13 07:25:58,595.595 INFO    ] 2026-06-13 07:25:58
[2026-06-13 07:25:58,803.803 INFO    ] 2026-06-13 07:25:58
[2026-06-13 07:25:58,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:25:58,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:25:59,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:25:59,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:25:59,211.211 INFO    ] time= 13/06/2026 07:25:59
[2026-06-13 07:25:59,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:25:59,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:25:59,320.320 INFO    ] No existing commands found in stream
[2026-06-13 07:26:04,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:04,334.334 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 07:26:08,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:26:08,449.449 INFO    ] Checking for system updates...
[2026-06-13 07:26:08,475.475 INFO    ] 200
[2026-06-13 07:26:08,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:08,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:08,510.510 INFO    ] No update needed
[2026-06-13 07:26:08,512.512 INFO    ] Checking for camera pi updates...
[2026-06-13 07:26:08,531.531 INFO    ] 200
[2026-06-13 07:26:08,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:08,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:26:08,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:08,597.597 INFO    ] No camera update needed
[2026-06-13 07:26:08,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:26:08,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:26:08,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:26:08,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:26:10,643.643 INFO    ] ================================================
[2026-06-13 07:26:10,658.658 INFO    ] Launching Daemon at Sat Jun 13 07:26:10 IST 2026
[2026-06-13 07:26:10,669.669 INFO    ] ================================================
[2026-06-13 07:26:11,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:26:11
[2026-06-13 07:26:11,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:26:11,521.521 INFO    ] Initializing speech engine...
[2026-06-13 07:26:11,526.526 INFO    ] 2026-06-13 07:26:11
[2026-06-13 07:26:11,731.731 INFO    ] 2026-06-13 07:26:11
[2026-06-13 07:26:11,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:26:11,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:26:11,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:26:12,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:26:12,128.128 INFO    ] time= 13/06/2026 07:26:12
[2026-06-13 07:26:12,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:26:12,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:26:12,241.241 INFO    ] No existing commands found in stream
[2026-06-13 07:26:17,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:17,255.255 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 07:26:19,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:26:19,272.272 INFO    ] Checking for system updates...
[2026-06-13 07:26:19,294.294 INFO    ] 200
[2026-06-13 07:26:19,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:19,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:19,329.329 INFO    ] No update needed
[2026-06-13 07:26:19,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 07:26:19,352.352 INFO    ] 200
[2026-06-13 07:26:19,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:19,379.379 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:26:19,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:19,417.417 INFO    ] No camera update needed
[2026-06-13 07:26:19,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:26:19,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:26:19,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:26:19,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:26:21,464.464 INFO    ] ================================================
[2026-06-13 07:26:21,480.480 INFO    ] Launching Daemon at Sat Jun 13 07:26:21 IST 2026
[2026-06-13 07:26:21,490.490 INFO    ] ================================================
[2026-06-13 07:26:21,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:26:21
[2026-06-13 07:26:22,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:26:22,264.264 INFO    ] Initializing speech engine...
[2026-06-13 07:26:22,268.268 INFO    ] 2026-06-13 07:26:22
[2026-06-13 07:26:22,496.496 INFO    ] 2026-06-13 07:26:22
[2026-06-13 07:26:22,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:26:22,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:26:22,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:26:22,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:26:22,901.901 INFO    ] time= 13/06/2026 07:26:22
[2026-06-13 07:26:22,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:26:22,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:26:23,048.048 INFO    ] No existing commands found in stream
[2026-06-13 07:26:28,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:28,062.062 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 07:26:29,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:26:29,604.604 INFO    ] Checking for system updates...
[2026-06-13 07:26:29,624.624 INFO    ] 200
[2026-06-13 07:26:29,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:29,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:29,659.659 INFO    ] No update needed
[2026-06-13 07:26:29,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 07:26:29,682.682 INFO    ] 200
[2026-06-13 07:26:29,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:29,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:26:29,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:26:29,752.752 INFO    ] No camera update needed
[2026-06-13 07:26:29,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:26:29,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:26:29,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:26:29,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:26:31,799.799 INFO    ] ================================================
[2026-06-13 07:26:31,814.814 INFO    ] Launching Daemon at Sat Jun 13 07:26:31 IST 2026
[2026-06-13 07:26:31,825.825 INFO    ] ================================================
[2026-06-13 07:26:32,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:26:32
[2026-06-13 07:26:32,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:26:33,090.090 INFO    ] Initializing speech engine...
[2026-06-13 07:26:33,097.097 INFO    ] 2026-06-13 07:26:33
[2026-06-13 07:26:33,410.410 INFO    ] 2026-06-13 07:26:33
[2026-06-13 07:26:33,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:26:33,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:26:33,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:26:33,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:26:33,780.780 INFO    ] time= 13/06/2026 07:26:33
[2026-06-13 07:26:33,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:26:33,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:26:33,907.907 INFO    ] No existing commands found in stream
[2026-06-13 07:26:38,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:38,928.928 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 07:26:41,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:26:41,791.791 INFO    ] Checking for system updates...
[2026-06-13 07:26:41,812.812 INFO    ] 200
[2026-06-13 07:26:41,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:41,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:26:41,847.847 INFO    ] No update needed
[2026-06-13 07:26:41,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 07:26:41,869.869 INFO    ] 200
[2026-06-13 07:26:41,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:41,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:26:41,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:26:41,932.932 INFO    ] No camera update needed
[2026-06-13 07:26:41,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:26:41,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:26:41,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:26:41,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:26:43,981.981 INFO    ] ================================================
[2026-06-13 07:26:44,997.997 INFO    ] Launching Daemon at Sat Jun 13 07:26:43 IST 2026
[2026-06-13 07:26:44,008.008 INFO    ] ================================================
[2026-06-13 07:26:44,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:26:44
[2026-06-13 07:26:44,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:26:44,856.856 INFO    ] Initializing speech engine...
[2026-06-13 07:26:44,861.861 INFO    ] 2026-06-13 07:26:44
[2026-06-13 07:26:45,068.068 INFO    ] 2026-06-13 07:26:45
[2026-06-13 07:26:45,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:26:45,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:26:45,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:26:45,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:26:45,490.490 INFO    ] time= 13/06/2026 07:26:45
[2026-06-13 07:26:45,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:26:45,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:26:45,585.585 INFO    ] No existing commands found in stream
[2026-06-13 07:26:50,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:50,599.599 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 07:26:51,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:26:51,010.010 INFO    ] Checking for system updates...
[2026-06-13 07:26:51,032.032 INFO    ] 200
[2026-06-13 07:26:51,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:51,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:26:51,065.065 INFO    ] No update needed
[2026-06-13 07:26:51,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 07:26:51,086.086 INFO    ] 200
[2026-06-13 07:26:51,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:26:51,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:26:51,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:26:51,160.160 INFO    ] No camera update needed
[2026-06-13 07:26:51,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:26:51,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:26:51,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:26:51,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:26:53,209.209 INFO    ] ================================================
[2026-06-13 07:26:53,225.225 INFO    ] Launching Daemon at Sat Jun 13 07:26:53 IST 2026
[2026-06-13 07:26:53,236.236 INFO    ] ================================================
[2026-06-13 07:26:53,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:26:53
[2026-06-13 07:26:53,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:26:54,040.040 INFO    ] Initializing speech engine...
[2026-06-13 07:26:54,046.046 INFO    ] 2026-06-13 07:26:54
[2026-06-13 07:26:54,259.259 INFO    ] 2026-06-13 07:26:54
[2026-06-13 07:26:54,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:26:54,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:26:54,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:26:54,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:26:54,679.679 INFO    ] time= 13/06/2026 07:26:54
[2026-06-13 07:26:54,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:26:54,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:26:54,889.889 INFO    ] No existing commands found in stream
[2026-06-13 07:26:59,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:26:59,922.922 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 07:27:03,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:27:03,747.747 INFO    ] Checking for system updates...
[2026-06-13 07:27:03,767.767 INFO    ] 200
[2026-06-13 07:27:03,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:03,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:03,801.801 INFO    ] No update needed
[2026-06-13 07:27:03,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 07:27:03,822.822 INFO    ] 200
[2026-06-13 07:27:03,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:03,849.849 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:27:03,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:03,889.889 INFO    ] No camera update needed
[2026-06-13 07:27:03,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:27:03,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:27:03,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:27:03,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:27:05,936.936 INFO    ] ================================================
[2026-06-13 07:27:05,951.951 INFO    ] Launching Daemon at Sat Jun 13 07:27:05 IST 2026
[2026-06-13 07:27:05,963.963 INFO    ] ================================================
[2026-06-13 07:27:06,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:27:06
[2026-06-13 07:27:06,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:27:06,801.801 INFO    ] Initializing speech engine...
[2026-06-13 07:27:06,810.810 INFO    ] 2026-06-13 07:27:06
[2026-06-13 07:27:07,063.063 INFO    ] 2026-06-13 07:27:07
[2026-06-13 07:27:07,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:27:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:27:07,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:27:07,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:27:07,469.469 INFO    ] time= 13/06/2026 07:27:07
[2026-06-13 07:27:07,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:27:07,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:27:07,623.623 INFO    ] No existing commands found in stream
[2026-06-13 07:27:12,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:27:12,637.637 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 07:27:17,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:27:17,256.256 INFO    ] Checking for system updates...
[2026-06-13 07:27:17,300.300 INFO    ] 200
[2026-06-13 07:27:17,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:17,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:17,355.355 INFO    ] No update needed
[2026-06-13 07:27:17,356.356 INFO    ] Checking for camera pi updates...
[2026-06-13 07:27:17,376.376 INFO    ] 200
[2026-06-13 07:27:17,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:17,402.402 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:27:17,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:17,547.547 INFO    ] No camera update needed
[2026-06-13 07:27:17,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:27:17,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:27:17,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:27:17,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:27:19,597.597 INFO    ] ================================================
[2026-06-13 07:27:19,613.613 INFO    ] Launching Daemon at Sat Jun 13 07:27:19 IST 2026
[2026-06-13 07:27:19,624.624 INFO    ] ================================================
[2026-06-13 07:27:19,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:27:19
[2026-06-13 07:27:20,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:27:20,422.422 INFO    ] Initializing speech engine...
[2026-06-13 07:27:20,428.428 INFO    ] 2026-06-13 07:27:20
[2026-06-13 07:27:20,633.633 INFO    ] 2026-06-13 07:27:20
[2026-06-13 07:27:20,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:27:20,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:27:20,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:27:20,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:27:21,040.040 INFO    ] time= 13/06/2026 07:27:20
[2026-06-13 07:27:21,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:27:21,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:27:21,150.150 INFO    ] No existing commands found in stream
[2026-06-13 07:27:26,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:27:26,167.167 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 07:27:29,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:27:29,152.152 INFO    ] Checking for system updates...
[2026-06-13 07:27:29,173.173 INFO    ] 200
[2026-06-13 07:27:29,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:29,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:29,206.206 INFO    ] No update needed
[2026-06-13 07:27:29,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 07:27:29,227.227 INFO    ] 200
[2026-06-13 07:27:29,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:29,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:27:29,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:29,287.287 INFO    ] No camera update needed
[2026-06-13 07:27:29,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:27:29,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:27:29,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:27:29,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:27:31,336.336 INFO    ] ================================================
[2026-06-13 07:27:31,354.354 INFO    ] Launching Daemon at Sat Jun 13 07:27:31 IST 2026
[2026-06-13 07:27:31,366.366 INFO    ] ================================================
[2026-06-13 07:27:31,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:27:31
[2026-06-13 07:27:32,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:27:32,247.247 INFO    ] Initializing speech engine...
[2026-06-13 07:27:32,252.252 INFO    ] 2026-06-13 07:27:32
[2026-06-13 07:27:32,459.459 INFO    ] 2026-06-13 07:27:32
[2026-06-13 07:27:32,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:27:32,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:27:32,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:27:32,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:27:32,872.872 INFO    ] time= 13/06/2026 07:27:32
[2026-06-13 07:27:32,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:27:32,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:27:32,985.985 INFO    ] No existing commands found in stream
[2026-06-13 07:27:37,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:27:37,997.997 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 07:27:41,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:27:41,714.714 INFO    ] Checking for system updates...
[2026-06-13 07:27:41,735.735 INFO    ] 200
[2026-06-13 07:27:41,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:41,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:27:41,769.769 INFO    ] No update needed
[2026-06-13 07:27:41,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 07:27:41,790.790 INFO    ] 200
[2026-06-13 07:27:41,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:41,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:27:41,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:27:41,854.854 INFO    ] No camera update needed
[2026-06-13 07:27:41,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:27:41,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:27:41,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:27:41,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:27:43,904.904 INFO    ] ================================================
[2026-06-13 07:27:43,919.919 INFO    ] Launching Daemon at Sat Jun 13 07:27:43 IST 2026
[2026-06-13 07:27:43,930.930 INFO    ] ================================================
[2026-06-13 07:27:44,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:27:44
[2026-06-13 07:27:44,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:27:44,718.718 INFO    ] Initializing speech engine...
[2026-06-13 07:27:44,728.728 INFO    ] 2026-06-13 07:27:44
[2026-06-13 07:27:44,934.934 INFO    ] 2026-06-13 07:27:44
[2026-06-13 07:27:44,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:27:45,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:27:45,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:27:45,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:27:45,385.385 INFO    ] time= 13/06/2026 07:27:45
[2026-06-13 07:27:45,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:27:45,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:27:45,625.625 INFO    ] No existing commands found in stream
[2026-06-13 07:27:50,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:27:50,640.640 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 07:27:53,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:27:53,473.473 INFO    ] Checking for system updates...
[2026-06-13 07:27:53,495.495 INFO    ] 200
[2026-06-13 07:27:53,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:53,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:53,530.530 INFO    ] No update needed
[2026-06-13 07:27:53,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 07:27:53,552.552 INFO    ] 200
[2026-06-13 07:27:53,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:27:53,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:27:53,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:27:53,618.618 INFO    ] No camera update needed
[2026-06-13 07:27:53,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:27:53,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:27:53,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:27:53,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:27:55,666.666 INFO    ] ================================================
[2026-06-13 07:27:55,681.681 INFO    ] Launching Daemon at Sat Jun 13 07:27:55 IST 2026
[2026-06-13 07:27:55,691.691 INFO    ] ================================================
[2026-06-13 07:27:56,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:27:56
[2026-06-13 07:27:56,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:27:56,517.517 INFO    ] Initializing speech engine...
[2026-06-13 07:27:56,522.522 INFO    ] 2026-06-13 07:27:56
[2026-06-13 07:27:56,744.744 INFO    ] 2026-06-13 07:27:56
[2026-06-13 07:27:56,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:27:56,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:27:56,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:27:57,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:27:57,157.157 INFO    ] time= 13/06/2026 07:27:57
[2026-06-13 07:27:57,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:27:57,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:27:57,268.268 INFO    ] No existing commands found in stream
[2026-06-13 07:28:02,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:02,282.282 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 07:28:04,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:28:04,609.609 INFO    ] Checking for system updates...
[2026-06-13 07:28:04,644.644 INFO    ] 200
[2026-06-13 07:28:04,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:04,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:04,704.704 INFO    ] No update needed
[2026-06-13 07:28:04,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:04,742.742 INFO    ] 200
[2026-06-13 07:28:04,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:04,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:04,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:28:04,839.839 INFO    ] No camera update needed
[2026-06-13 07:28:04,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:04,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:04,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:04,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:28:06,899.899 INFO    ] ================================================
[2026-06-13 07:28:06,914.914 INFO    ] Launching Daemon at Sat Jun 13 07:28:06 IST 2026
[2026-06-13 07:28:06,924.924 INFO    ] ================================================
[2026-06-13 07:28:07,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:28:07
[2026-06-13 07:28:07,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:28:07,736.736 INFO    ] Initializing speech engine...
[2026-06-13 07:28:07,740.740 INFO    ] 2026-06-13 07:28:07
[2026-06-13 07:28:07,934.934 INFO    ] 2026-06-13 07:28:07
[2026-06-13 07:28:07,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:28:08,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:28:08,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:28:08,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:28:08,345.345 INFO    ] time= 13/06/2026 07:28:08
[2026-06-13 07:28:08,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:28:08,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:28:08,540.540 INFO    ] No existing commands found in stream
[2026-06-13 07:28:13,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:13,553.553 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 07:28:16,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:28:16,589.589 INFO    ] Checking for system updates...
[2026-06-13 07:28:16,610.610 INFO    ] 200
[2026-06-13 07:28:16,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:16,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:28:16,643.643 INFO    ] No update needed
[2026-06-13 07:28:16,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:16,664.664 INFO    ] 200
[2026-06-13 07:28:16,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:16,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:16,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:16,726.726 INFO    ] No camera update needed
[2026-06-13 07:28:16,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:16,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:16,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:16,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:28:18,775.775 INFO    ] ================================================
[2026-06-13 07:28:18,791.791 INFO    ] Launching Daemon at Sat Jun 13 07:28:18 IST 2026
[2026-06-13 07:28:18,802.802 INFO    ] ================================================
[2026-06-13 07:28:19,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:28:19
[2026-06-13 07:28:19,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:28:19,597.597 INFO    ] Initializing speech engine...
[2026-06-13 07:28:19,602.602 INFO    ] 2026-06-13 07:28:19
[2026-06-13 07:28:19,808.808 INFO    ] 2026-06-13 07:28:19
[2026-06-13 07:28:19,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:28:20,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:28:20,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:28:20,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:28:20,227.227 INFO    ] time= 13/06/2026 07:28:20
[2026-06-13 07:28:20,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:28:20,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:28:20,329.329 INFO    ] No existing commands found in stream
[2026-06-13 07:28:25,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:25,340.340 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 07:28:25,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:28:25,958.958 INFO    ] Checking for system updates...
[2026-06-13 07:28:25,980.980 INFO    ] 200
[2026-06-13 07:28:25,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:26,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:26,015.015 INFO    ] No update needed
[2026-06-13 07:28:26,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:26,035.035 INFO    ] 200
[2026-06-13 07:28:26,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:26,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:26,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:26,101.101 INFO    ] No camera update needed
[2026-06-13 07:28:26,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:26,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:26,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:26,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:28:28,148.148 INFO    ] ================================================
[2026-06-13 07:28:28,163.163 INFO    ] Launching Daemon at Sat Jun 13 07:28:28 IST 2026
[2026-06-13 07:28:28,174.174 INFO    ] ================================================
[2026-06-13 07:28:28,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:28:28
[2026-06-13 07:28:28,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:28:28,956.956 INFO    ] Initializing speech engine...
[2026-06-13 07:28:28,961.961 INFO    ] 2026-06-13 07:28:28
[2026-06-13 07:28:29,166.166 INFO    ] 2026-06-13 07:28:29
[2026-06-13 07:28:29,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:28:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:28:29,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:28:29,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:28:29,576.576 INFO    ] time= 13/06/2026 07:28:29
[2026-06-13 07:28:29,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:28:29,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:28:29,686.686 INFO    ] No existing commands found in stream
[2026-06-13 07:28:34,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:34,700.700 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 07:28:37,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:28:37,274.274 INFO    ] Checking for system updates...
[2026-06-13 07:28:37,294.294 INFO    ] 200
[2026-06-13 07:28:37,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:37,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:28:37,330.330 INFO    ] No update needed
[2026-06-13 07:28:37,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:37,350.350 INFO    ] 200
[2026-06-13 07:28:37,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:37,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:37,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:28:37,416.416 INFO    ] No camera update needed
[2026-06-13 07:28:37,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:37,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:37,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:37,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:28:39,462.462 INFO    ] ================================================
[2026-06-13 07:28:39,477.477 INFO    ] Launching Daemon at Sat Jun 13 07:28:39 IST 2026
[2026-06-13 07:28:39,487.487 INFO    ] ================================================
[2026-06-13 07:28:39,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:28:39
[2026-06-13 07:28:40,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:28:40,316.316 INFO    ] Initializing speech engine...
[2026-06-13 07:28:40,321.321 INFO    ] 2026-06-13 07:28:40
[2026-06-13 07:28:40,524.524 INFO    ] 2026-06-13 07:28:40
[2026-06-13 07:28:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:28:40,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:28:40,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:28:40,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:28:40,918.918 INFO    ] time= 13/06/2026 07:28:40
[2026-06-13 07:28:40,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:28:40,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:28:41,037.037 INFO    ] No existing commands found in stream
[2026-06-13 07:28:46,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:46,051.051 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 07:28:46,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:28:46,743.743 INFO    ] Checking for system updates...
[2026-06-13 07:28:46,763.763 INFO    ] 200
[2026-06-13 07:28:46,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:46,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:46,799.799 INFO    ] No update needed
[2026-06-13 07:28:46,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:46,821.821 INFO    ] 200
[2026-06-13 07:28:46,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:46,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:46,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:46,884.884 INFO    ] No camera update needed
[2026-06-13 07:28:46,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:46,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:46,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:46,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:28:48,932.932 INFO    ] ================================================
[2026-06-13 07:28:48,947.947 INFO    ] Launching Daemon at Sat Jun 13 07:28:48 IST 2026
[2026-06-13 07:28:48,958.958 INFO    ] ================================================
[2026-06-13 07:28:49,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:28:49
[2026-06-13 07:28:50,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:28:50,182.182 INFO    ] Initializing speech engine...
[2026-06-13 07:28:50,192.192 INFO    ] 2026-06-13 07:28:50
[2026-06-13 07:28:50,396.396 INFO    ] 2026-06-13 07:28:50
[2026-06-13 07:28:50,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:28:50,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:28:50,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:28:50,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:28:50,805.805 INFO    ] time= 13/06/2026 07:28:50
[2026-06-13 07:28:50,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:28:50,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:28:50,910.910 INFO    ] No existing commands found in stream
[2026-06-13 07:28:55,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:28:55,922.922 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 07:28:58,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:28:58,433.433 INFO    ] Checking for system updates...
[2026-06-13 07:28:58,455.455 INFO    ] 200
[2026-06-13 07:28:58,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:58,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:58,494.494 INFO    ] No update needed
[2026-06-13 07:28:58,496.496 INFO    ] Checking for camera pi updates...
[2026-06-13 07:28:58,518.518 INFO    ] 200
[2026-06-13 07:28:58,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:28:58,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:28:58,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:28:58,584.584 INFO    ] No camera update needed
[2026-06-13 07:28:58,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:28:58,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:28:58,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:28:58,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:00,633.633 INFO    ] ================================================
[2026-06-13 07:29:00,648.648 INFO    ] Launching Daemon at Sat Jun 13 07:29:00 IST 2026
[2026-06-13 07:29:00,659.659 INFO    ] ================================================
[2026-06-13 07:29:01,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:01
[2026-06-13 07:29:01,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:01,516.516 INFO    ] Initializing speech engine...
[2026-06-13 07:29:01,521.521 INFO    ] 2026-06-13 07:29:01
[2026-06-13 07:29:01,729.729 INFO    ] 2026-06-13 07:29:01
[2026-06-13 07:29:01,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:01,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:02,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:02,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:02,217.217 INFO    ] time= 13/06/2026 07:29:02
[2026-06-13 07:29:02,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:02,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:02,427.427 INFO    ] No existing commands found in stream
[2026-06-13 07:29:07,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:29:07,462.462 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 07:29:10,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:29:10,534.534 INFO    ] Checking for system updates...
[2026-06-13 07:29:10,555.555 INFO    ] 200
[2026-06-13 07:29:10,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:10,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:10,591.591 INFO    ] No update needed
[2026-06-13 07:29:10,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 07:29:10,615.615 INFO    ] 200
[2026-06-13 07:29:10,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:10,640.640 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:29:10,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:10,680.680 INFO    ] No camera update needed
[2026-06-13 07:29:10,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:29:10,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:29:10,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:29:10,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:12,732.732 INFO    ] ================================================
[2026-06-13 07:29:12,746.746 INFO    ] Launching Daemon at Sat Jun 13 07:29:12 IST 2026
[2026-06-13 07:29:12,757.757 INFO    ] ================================================
[2026-06-13 07:29:13,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:13
[2026-06-13 07:29:13,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:13,632.632 INFO    ] Initializing speech engine...
[2026-06-13 07:29:13,636.636 INFO    ] 2026-06-13 07:29:13
[2026-06-13 07:29:13,845.845 INFO    ] 2026-06-13 07:29:13
[2026-06-13 07:29:13,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:14,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:14,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:14,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:14,259.259 INFO    ] time= 13/06/2026 07:29:14
[2026-06-13 07:29:14,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:14,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:14,373.373 INFO    ] No existing commands found in stream
[2026-06-13 07:29:19,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:29:19,391.391 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 07:29:21,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:29:21,439.439 INFO    ] Checking for system updates...
[2026-06-13 07:29:21,460.460 INFO    ] 200
[2026-06-13 07:29:21,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:21,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:29:21,494.494 INFO    ] No update needed
[2026-06-13 07:29:21,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 07:29:21,515.515 INFO    ] 200
[2026-06-13 07:29:21,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:21,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:29:21,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:29:21,693.693 INFO    ] No camera update needed
[2026-06-13 07:29:21,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:29:21,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:29:21,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:29:21,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:23,745.745 INFO    ] ================================================
[2026-06-13 07:29:23,761.761 INFO    ] Launching Daemon at Sat Jun 13 07:29:23 IST 2026
[2026-06-13 07:29:23,772.772 INFO    ] ================================================
[2026-06-13 07:29:24,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:24
[2026-06-13 07:29:24,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:24,584.584 INFO    ] Initializing speech engine...
[2026-06-13 07:29:24,589.589 INFO    ] 2026-06-13 07:29:24
[2026-06-13 07:29:24,801.801 INFO    ] 2026-06-13 07:29:24
[2026-06-13 07:29:24,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:24,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:25,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:25,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:25,196.196 INFO    ] time= 13/06/2026 07:29:25
[2026-06-13 07:29:25,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:25,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:25,365.365 INFO    ] No existing commands found in stream
[2026-06-13 07:29:30,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:29:30,376.376 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 07:29:31,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:29:31,398.398 INFO    ] Checking for system updates...
[2026-06-13 07:29:31,421.421 INFO    ] 200
[2026-06-13 07:29:31,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:31,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:29:31,456.456 INFO    ] No update needed
[2026-06-13 07:29:31,457.457 INFO    ] Checking for camera pi updates...
[2026-06-13 07:29:31,477.477 INFO    ] 200
[2026-06-13 07:29:31,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:31,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:29:31,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:31,537.537 INFO    ] No camera update needed
[2026-06-13 07:29:31,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:29:31,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:29:31,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:29:31,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:33,576.576 INFO    ] ================================================
[2026-06-13 07:29:33,592.592 INFO    ] Launching Daemon at Sat Jun 13 07:29:33 IST 2026
[2026-06-13 07:29:33,603.603 INFO    ] ================================================
[2026-06-13 07:29:33,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:33
[2026-06-13 07:29:34,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:34,410.410 INFO    ] Initializing speech engine...
[2026-06-13 07:29:34,419.419 INFO    ] 2026-06-13 07:29:34
[2026-06-13 07:29:34,647.647 INFO    ] 2026-06-13 07:29:34
[2026-06-13 07:29:34,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:34,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:34,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:35,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:35,049.049 INFO    ] time= 13/06/2026 07:29:35
[2026-06-13 07:29:35,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:35,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:35,208.208 INFO    ] No existing commands found in stream
[2026-06-13 07:29:40,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:29:40,221.221 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 07:29:41,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:29:41,189.189 INFO    ] Checking for system updates...
[2026-06-13 07:29:41,210.210 INFO    ] 200
[2026-06-13 07:29:41,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:41,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:41,243.243 INFO    ] No update needed
[2026-06-13 07:29:41,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 07:29:41,265.265 INFO    ] 200
[2026-06-13 07:29:41,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:41,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:29:41,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:41,325.325 INFO    ] No camera update needed
[2026-06-13 07:29:41,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:29:41,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:29:41,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:29:41,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:43,373.373 INFO    ] ================================================
[2026-06-13 07:29:43,388.388 INFO    ] Launching Daemon at Sat Jun 13 07:29:43 IST 2026
[2026-06-13 07:29:43,399.399 INFO    ] ================================================
[2026-06-13 07:29:43,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:43
[2026-06-13 07:29:44,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:44,230.230 INFO    ] Initializing speech engine...
[2026-06-13 07:29:44,238.238 INFO    ] 2026-06-13 07:29:44
[2026-06-13 07:29:44,440.440 INFO    ] 2026-06-13 07:29:44
[2026-06-13 07:29:44,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:44,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:44,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:44,841.841 INFO    ] time= 13/06/2026 07:29:44
[2026-06-13 07:29:44,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:44,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:44,957.957 INFO    ] No existing commands found in stream
[2026-06-13 07:29:49,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:29:49,970.970 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 07:29:53,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:29:53,006.006 INFO    ] Checking for system updates...
[2026-06-13 07:29:53,026.026 INFO    ] 200
[2026-06-13 07:29:53,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:53,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:29:53,059.059 INFO    ] No update needed
[2026-06-13 07:29:53,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 07:29:53,080.080 INFO    ] 200
[2026-06-13 07:29:53,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:29:53,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:29:53,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:29:53,144.144 INFO    ] No camera update needed
[2026-06-13 07:29:53,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:29:53,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:29:53,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:29:53,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:29:55,191.191 INFO    ] ================================================
[2026-06-13 07:29:55,212.212 INFO    ] Launching Daemon at Sat Jun 13 07:29:55 IST 2026
[2026-06-13 07:29:55,223.223 INFO    ] ================================================
[2026-06-13 07:29:55,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:29:55
[2026-06-13 07:29:55,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:29:56,036.036 INFO    ] Initializing speech engine...
[2026-06-13 07:29:56,040.040 INFO    ] 2026-06-13 07:29:56
[2026-06-13 07:29:56,271.271 INFO    ] 2026-06-13 07:29:56
[2026-06-13 07:29:56,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:29:56,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:29:56,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:29:56,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:29:56,692.692 INFO    ] time= 13/06/2026 07:29:56
[2026-06-13 07:29:56,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:29:56,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:29:56,830.830 INFO    ] No existing commands found in stream
[2026-06-13 07:30:01,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:01,844.844 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 07:30:07,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:30:07,304.304 INFO    ] Checking for system updates...
[2026-06-13 07:30:07,342.342 INFO    ] 200
[2026-06-13 07:30:07,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:07,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:30:07,407.407 INFO    ] No update needed
[2026-06-13 07:30:07,410.410 INFO    ] Checking for camera pi updates...
[2026-06-13 07:30:07,454.454 INFO    ] 200
[2026-06-13 07:30:07,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:07,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:30:07,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:30:07,555.555 INFO    ] No camera update needed
[2026-06-13 07:30:07,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:30:07,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:30:07,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:30:07,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:30:09,606.606 INFO    ] ================================================
[2026-06-13 07:30:09,621.621 INFO    ] Launching Daemon at Sat Jun 13 07:30:09 IST 2026
[2026-06-13 07:30:09,632.632 INFO    ] ================================================
[2026-06-13 07:30:09,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:30:09
[2026-06-13 07:30:10,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:30:10,430.430 INFO    ] Initializing speech engine...
[2026-06-13 07:30:10,434.434 INFO    ] 2026-06-13 07:30:10
[2026-06-13 07:30:10,648.648 INFO    ] 2026-06-13 07:30:10
[2026-06-13 07:30:10,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:30:10,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:30:10,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:30:10,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:30:11,050.050 INFO    ] time= 13/06/2026 07:30:11
[2026-06-13 07:30:11,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:30:11,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:30:11,256.256 INFO    ] No existing commands found in stream
[2026-06-13 07:30:16,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:16,284.284 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 07:30:17,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:30:17,458.458 INFO    ] Checking for system updates...
[2026-06-13 07:30:17,479.479 INFO    ] 200
[2026-06-13 07:30:17,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:17,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:30:17,514.514 INFO    ] No update needed
[2026-06-13 07:30:17,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 07:30:17,536.536 INFO    ] 200
[2026-06-13 07:30:17,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:17,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:30:17,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:30:17,596.596 INFO    ] No camera update needed
[2026-06-13 07:30:17,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:30:17,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:30:17,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:30:17,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:30:19,644.644 INFO    ] ================================================
[2026-06-13 07:30:19,659.659 INFO    ] Launching Daemon at Sat Jun 13 07:30:19 IST 2026
[2026-06-13 07:30:19,670.670 INFO    ] ================================================
[2026-06-13 07:30:20,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:30:20
[2026-06-13 07:30:20,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:30:20,506.506 INFO    ] Initializing speech engine...
[2026-06-13 07:30:20,510.510 INFO    ] 2026-06-13 07:30:20
[2026-06-13 07:30:20,730.730 INFO    ] 2026-06-13 07:30:20
[2026-06-13 07:30:20,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:30:20,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:30:20,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:30:21,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:30:21,127.127 INFO    ] time= 13/06/2026 07:30:21
[2026-06-13 07:30:21,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:30:21,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:30:21,249.249 INFO    ] No existing commands found in stream
[2026-06-13 07:30:26,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:26,266.266 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 07:30:28,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:30:28,854.854 INFO    ] Checking for system updates...
[2026-06-13 07:30:28,875.875 INFO    ] 200
[2026-06-13 07:30:28,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:28,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:30:28,911.911 INFO    ] No update needed
[2026-06-13 07:30:28,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 07:30:28,938.938 INFO    ] 200
[2026-06-13 07:30:28,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:28,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:30:29,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:30:29,005.005 INFO    ] No camera update needed
[2026-06-13 07:30:29,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:30:29,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:30:29,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:30:29,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:30:31,056.056 INFO    ] ================================================
[2026-06-13 07:30:31,071.071 INFO    ] Launching Daemon at Sat Jun 13 07:30:31 IST 2026
[2026-06-13 07:30:31,082.082 INFO    ] ================================================
[2026-06-13 07:30:31,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:30:31
[2026-06-13 07:30:31,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:30:31,890.890 INFO    ] Initializing speech engine...
[2026-06-13 07:30:31,901.901 INFO    ] 2026-06-13 07:30:31
[2026-06-13 07:30:32,129.129 INFO    ] 2026-06-13 07:30:32
[2026-06-13 07:30:32,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:30:32,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:30:32,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:30:32,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:30:32,404.404 INFO    ] time= 13/06/2026 07:30:32
[2026-06-13 07:30:32,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:30:32,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:30:32,600.600 INFO    ] No existing commands found in stream
[2026-06-13 07:30:37,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:37,614.614 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 07:30:38,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:30:38,176.176 INFO    ] Checking for system updates...
[2026-06-13 07:30:38,200.200 INFO    ] 200
[2026-06-13 07:30:38,201.201 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:38,203.203 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 07:30:38,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 07:30:38,232.232 INFO    ] 200
[2026-06-13 07:30:38,233.233 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:38,235.235 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 07:30:38,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:30:38,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:30:38,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:30:38,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:30:40,287.287 INFO    ] ================================================
[2026-06-13 07:30:40,303.303 INFO    ] Launching Daemon at Sat Jun 13 07:30:40 IST 2026
[2026-06-13 07:30:40,314.314 INFO    ] ================================================
[2026-06-13 07:30:40,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:30:40
[2026-06-13 07:30:40,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:30:41,122.122 INFO    ] Initializing speech engine...
[2026-06-13 07:30:41,127.127 INFO    ] 2026-06-13 07:30:41
[2026-06-13 07:30:41,329.329 INFO    ] 2026-06-13 07:30:41
[2026-06-13 07:30:41,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:30:41,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:30:41,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:30:41,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:30:41,751.751 INFO    ] time= 13/06/2026 07:30:41
[2026-06-13 07:30:41,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:30:41,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:30:41,846.846 INFO    ] No existing commands found in stream
[2026-06-13 07:30:46,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:46,859.859 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 07:30:50,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:30:50,939.939 INFO    ] Checking for system updates...
[2026-06-13 07:30:50,960.960 INFO    ] 200
[2026-06-13 07:30:50,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:50,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:30:50,993.993 INFO    ] No update needed
[2026-06-13 07:30:50,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 07:30:51,016.016 INFO    ] 200
[2026-06-13 07:30:51,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:30:51,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:30:51,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:30:51,089.089 INFO    ] No camera update needed
[2026-06-13 07:30:51,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:30:51,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:30:51,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:30:51,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:30:53,137.137 INFO    ] ================================================
[2026-06-13 07:30:53,153.153 INFO    ] Launching Daemon at Sat Jun 13 07:30:53 IST 2026
[2026-06-13 07:30:53,164.164 INFO    ] ================================================
[2026-06-13 07:30:53,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:30:53
[2026-06-13 07:30:53,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:30:53,952.952 INFO    ] Initializing speech engine...
[2026-06-13 07:30:53,956.956 INFO    ] 2026-06-13 07:30:53
[2026-06-13 07:30:54,185.185 INFO    ] 2026-06-13 07:30:54
[2026-06-13 07:30:54,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:30:54,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:30:54,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:30:54,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:30:54,575.575 INFO    ] time= 13/06/2026 07:30:54
[2026-06-13 07:30:54,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:30:54,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:30:54,737.737 INFO    ] No existing commands found in stream
[2026-06-13 07:30:59,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:30:59,751.751 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 07:31:02,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:31:02,139.139 INFO    ] Checking for system updates...
[2026-06-13 07:31:02,193.193 INFO    ] 200
[2026-06-13 07:31:02,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:02,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:02,277.277 INFO    ] No update needed
[2026-06-13 07:31:02,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:02,337.337 INFO    ] 200
[2026-06-13 07:31:02,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:02,384.384 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:02,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:02,432.432 INFO    ] No camera update needed
[2026-06-13 07:31:02,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:02,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:02,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:02,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:04,493.493 INFO    ] ================================================
[2026-06-13 07:31:04,509.509 INFO    ] Launching Daemon at Sat Jun 13 07:31:04 IST 2026
[2026-06-13 07:31:04,519.519 INFO    ] ================================================
[2026-06-13 07:31:04,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:04
[2026-06-13 07:31:05,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:05,359.359 INFO    ] Initializing speech engine...
[2026-06-13 07:31:05,364.364 INFO    ] 2026-06-13 07:31:05
[2026-06-13 07:31:05,571.571 INFO    ] 2026-06-13 07:31:05
[2026-06-13 07:31:05,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:05,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:05,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:05,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:06,015.015 INFO    ] time= 13/06/2026 07:31:05
[2026-06-13 07:31:06,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:06,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:06,122.122 INFO    ] No existing commands found in stream
[2026-06-13 07:31:11,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:31:11,134.134 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 07:31:12,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:31:12,385.385 INFO    ] Checking for system updates...
[2026-06-13 07:31:12,406.406 INFO    ] 200
[2026-06-13 07:31:12,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:12,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:12,440.440 INFO    ] No update needed
[2026-06-13 07:31:12,441.441 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:12,461.461 INFO    ] 200
[2026-06-13 07:31:12,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:12,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:12,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:31:12,523.523 INFO    ] No camera update needed
[2026-06-13 07:31:12,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:12,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:12,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:12,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:14,570.570 INFO    ] ================================================
[2026-06-13 07:31:14,586.586 INFO    ] Launching Daemon at Sat Jun 13 07:31:14 IST 2026
[2026-06-13 07:31:14,597.597 INFO    ] ================================================
[2026-06-13 07:31:14,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:14
[2026-06-13 07:31:15,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:15,387.387 INFO    ] Initializing speech engine...
[2026-06-13 07:31:15,392.392 INFO    ] 2026-06-13 07:31:15
[2026-06-13 07:31:15,594.594 INFO    ] 2026-06-13 07:31:15
[2026-06-13 07:31:15,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:15,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:15,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:15,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:15,997.997 INFO    ] time= 13/06/2026 07:31:15
[2026-06-13 07:31:16,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:16,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:16,105.105 INFO    ] No existing commands found in stream
[2026-06-13 07:31:21,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:31:21,147.147 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 07:31:24,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:31:24,174.174 INFO    ] Checking for system updates...
[2026-06-13 07:31:24,202.202 INFO    ] 200
[2026-06-13 07:31:24,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:24,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:31:24,235.235 INFO    ] No update needed
[2026-06-13 07:31:24,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:24,256.256 INFO    ] 200
[2026-06-13 07:31:24,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:24,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:24,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:31:24,419.419 INFO    ] No camera update needed
[2026-06-13 07:31:24,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:24,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:24,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:24,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:26,467.467 INFO    ] ================================================
[2026-06-13 07:31:26,482.482 INFO    ] Launching Daemon at Sat Jun 13 07:31:26 IST 2026
[2026-06-13 07:31:26,493.493 INFO    ] ================================================
[2026-06-13 07:31:26,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:26
[2026-06-13 07:31:27,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:27,304.304 INFO    ] Initializing speech engine...
[2026-06-13 07:31:27,309.309 INFO    ] 2026-06-13 07:31:27
[2026-06-13 07:31:27,513.513 INFO    ] 2026-06-13 07:31:27
[2026-06-13 07:31:27,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:27,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:27,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:27,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:27,905.905 INFO    ] time= 13/06/2026 07:31:27
[2026-06-13 07:31:27,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:27,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:28,025.025 INFO    ] No existing commands found in stream
[2026-06-13 07:31:33,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:31:33,037.037 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 07:31:35,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:31:35,519.519 INFO    ] Checking for system updates...
[2026-06-13 07:31:35,541.541 INFO    ] 200
[2026-06-13 07:31:35,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:35,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:31:35,574.574 INFO    ] No update needed
[2026-06-13 07:31:35,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:35,600.600 INFO    ] 200
[2026-06-13 07:31:35,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:35,626.626 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:35,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:31:35,665.665 INFO    ] No camera update needed
[2026-06-13 07:31:35,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:35,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:35,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:35,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:37,711.711 INFO    ] ================================================
[2026-06-13 07:31:37,727.727 INFO    ] Launching Daemon at Sat Jun 13 07:31:37 IST 2026
[2026-06-13 07:31:37,737.737 INFO    ] ================================================
[2026-06-13 07:31:38,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:38
[2026-06-13 07:31:38,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:38,554.554 INFO    ] Initializing speech engine...
[2026-06-13 07:31:38,559.559 INFO    ] 2026-06-13 07:31:38
[2026-06-13 07:31:38,764.764 INFO    ] 2026-06-13 07:31:38
[2026-06-13 07:31:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:38,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:38,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:39,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:39,174.174 INFO    ] time= 13/06/2026 07:31:39
[2026-06-13 07:31:39,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:39,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:39,285.285 INFO    ] No existing commands found in stream
[2026-06-13 07:31:44,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:31:44,298.298 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 07:31:45,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:31:45,774.774 INFO    ] Checking for system updates...
[2026-06-13 07:31:45,795.795 INFO    ] 200
[2026-06-13 07:31:45,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:45,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:45,829.829 INFO    ] No update needed
[2026-06-13 07:31:45,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:45,853.853 INFO    ] 200
[2026-06-13 07:31:45,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:45,878.878 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:45,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:45,922.922 INFO    ] No camera update needed
[2026-06-13 07:31:45,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:45,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:45,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:45,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:47,971.971 INFO    ] ================================================
[2026-06-13 07:31:47,986.986 INFO    ] Launching Daemon at Sat Jun 13 07:31:47 IST 2026
[2026-06-13 07:31:48,997.997 INFO    ] ================================================
[2026-06-13 07:31:48,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:48
[2026-06-13 07:31:48,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:48,814.814 INFO    ] Initializing speech engine...
[2026-06-13 07:31:48,824.824 INFO    ] 2026-06-13 07:31:48
[2026-06-13 07:31:49,034.034 INFO    ] 2026-06-13 07:31:49
[2026-06-13 07:31:49,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:49,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:49,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:49,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:49,441.441 INFO    ] time= 13/06/2026 07:31:49
[2026-06-13 07:31:49,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:49,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:49,559.559 INFO    ] No existing commands found in stream
[2026-06-13 07:31:54,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:31:54,577.577 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 07:31:55,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:31:55,228.228 INFO    ] Checking for system updates...
[2026-06-13 07:31:55,249.249 INFO    ] 200
[2026-06-13 07:31:55,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:55,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:55,283.283 INFO    ] No update needed
[2026-06-13 07:31:55,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 07:31:55,304.304 INFO    ] 200
[2026-06-13 07:31:55,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:31:55,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:31:55,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:31:55,373.373 INFO    ] No camera update needed
[2026-06-13 07:31:55,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:31:55,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:31:55,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:31:55,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:31:57,422.422 INFO    ] ================================================
[2026-06-13 07:31:57,437.437 INFO    ] Launching Daemon at Sat Jun 13 07:31:57 IST 2026
[2026-06-13 07:31:57,447.447 INFO    ] ================================================
[2026-06-13 07:31:57,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:31:57
[2026-06-13 07:31:58,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:31:58,386.386 INFO    ] Initializing speech engine...
[2026-06-13 07:31:58,392.392 INFO    ] 2026-06-13 07:31:58
[2026-06-13 07:31:58,654.654 INFO    ] 2026-06-13 07:31:58
[2026-06-13 07:31:58,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:31:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:31:58,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:31:59,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:31:59,088.088 INFO    ] time= 13/06/2026 07:31:59
[2026-06-13 07:31:59,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:31:59,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:31:59,276.276 INFO    ] No existing commands found in stream
[2026-06-13 07:32:04,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:32:04,290.290 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 07:32:06,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:32:06,249.249 INFO    ] Checking for system updates...
[2026-06-13 07:32:06,270.270 INFO    ] 200
[2026-06-13 07:32:06,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:06,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:06,304.304 INFO    ] No update needed
[2026-06-13 07:32:06,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 07:32:06,326.326 INFO    ] 200
[2026-06-13 07:32:06,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:06,351.351 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:32:06,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:06,386.386 INFO    ] No camera update needed
[2026-06-13 07:32:06,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:32:06,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:32:06,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:32:06,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:32:08,434.434 INFO    ] ================================================
[2026-06-13 07:32:08,450.450 INFO    ] Launching Daemon at Sat Jun 13 07:32:08 IST 2026
[2026-06-13 07:32:08,462.462 INFO    ] ================================================
[2026-06-13 07:32:08,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:32:08
[2026-06-13 07:32:09,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:32:09,425.425 INFO    ] Initializing speech engine...
[2026-06-13 07:32:09,439.439 INFO    ] 2026-06-13 07:32:09
[2026-06-13 07:32:09,719.719 INFO    ] 2026-06-13 07:32:09
[2026-06-13 07:32:09,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:32:09,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:32:09,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:32:10,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:32:10,167.167 INFO    ] time= 13/06/2026 07:32:10
[2026-06-13 07:32:10,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:32:10,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:32:10,317.317 INFO    ] No existing commands found in stream
[2026-06-13 07:32:15,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:32:15,333.333 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 07:32:18,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:32:18,074.074 INFO    ] Checking for system updates...
[2026-06-13 07:32:18,095.095 INFO    ] 200
[2026-06-13 07:32:18,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:18,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:18,130.130 INFO    ] No update needed
[2026-06-13 07:32:18,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 07:32:18,151.151 INFO    ] 200
[2026-06-13 07:32:18,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:18,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:32:18,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:32:18,215.215 INFO    ] No camera update needed
[2026-06-13 07:32:18,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:32:18,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:32:18,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:32:18,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:32:20,263.263 INFO    ] ================================================
[2026-06-13 07:32:20,278.278 INFO    ] Launching Daemon at Sat Jun 13 07:32:20 IST 2026
[2026-06-13 07:32:20,290.290 INFO    ] ================================================
[2026-06-13 07:32:20,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:32:20
[2026-06-13 07:32:20,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:32:21,083.083 INFO    ] Initializing speech engine...
[2026-06-13 07:32:21,093.093 INFO    ] 2026-06-13 07:32:21
[2026-06-13 07:32:21,296.296 INFO    ] 2026-06-13 07:32:21
[2026-06-13 07:32:21,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:32:21,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:32:21,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:32:21,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:32:21,687.687 INFO    ] time= 13/06/2026 07:32:21
[2026-06-13 07:32:21,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:32:21,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:32:21,810.810 INFO    ] No existing commands found in stream
[2026-06-13 07:32:26,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:32:26,824.824 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 07:32:30,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:32:30,009.009 INFO    ] Checking for system updates...
[2026-06-13 07:32:30,030.030 INFO    ] 200
[2026-06-13 07:32:30,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:30,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:30,068.068 INFO    ] No update needed
[2026-06-13 07:32:30,070.070 INFO    ] Checking for camera pi updates...
[2026-06-13 07:32:30,095.095 INFO    ] 200
[2026-06-13 07:32:30,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:30,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:32:30,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:30,163.163 INFO    ] No camera update needed
[2026-06-13 07:32:30,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:32:30,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:32:30,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:32:30,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:32:32,206.206 INFO    ] ================================================
[2026-06-13 07:32:32,215.215 INFO    ] Launching Daemon at Sat Jun 13 07:32:32 IST 2026
[2026-06-13 07:32:32,222.222 INFO    ] ================================================
[2026-06-13 07:32:32,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:32:32
[2026-06-13 07:32:32,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:32:33,005.005 INFO    ] Initializing speech engine...
[2026-06-13 07:32:33,010.010 INFO    ] 2026-06-13 07:32:33
[2026-06-13 07:32:33,243.243 INFO    ] 2026-06-13 07:32:33
[2026-06-13 07:32:33,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:32:33,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:32:33,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:32:33,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:32:33,622.622 INFO    ] time= 13/06/2026 07:32:33
[2026-06-13 07:32:33,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:32:33,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:32:33,805.805 INFO    ] No existing commands found in stream
[2026-06-13 07:32:38,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:32:38,818.818 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 07:32:42,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:32:42,905.905 INFO    ] Checking for system updates...
[2026-06-13 07:32:42,926.926 INFO    ] 200
[2026-06-13 07:32:42,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:42,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:42,960.960 INFO    ] No update needed
[2026-06-13 07:32:42,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 07:32:42,983.983 INFO    ] 200
[2026-06-13 07:32:42,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:43,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:32:43,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:32:43,059.059 INFO    ] No camera update needed
[2026-06-13 07:32:43,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:32:43,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:32:43,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:32:43,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:32:45,108.108 INFO    ] ================================================
[2026-06-13 07:32:45,123.123 INFO    ] Launching Daemon at Sat Jun 13 07:32:45 IST 2026
[2026-06-13 07:32:45,134.134 INFO    ] ================================================
[2026-06-13 07:32:45,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:32:45
[2026-06-13 07:32:45,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:32:45,951.951 INFO    ] Initializing speech engine...
[2026-06-13 07:32:45,956.956 INFO    ] 2026-06-13 07:32:45
[2026-06-13 07:32:46,162.162 INFO    ] 2026-06-13 07:32:46
[2026-06-13 07:32:46,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:32:46,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:32:46,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:32:46,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:32:46,586.586 INFO    ] time= 13/06/2026 07:32:46
[2026-06-13 07:32:46,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:32:46,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:32:46,683.683 INFO    ] No existing commands found in stream
[2026-06-13 07:32:51,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:32:51,696.696 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 07:32:55,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:32:55,532.532 INFO    ] Checking for system updates...
[2026-06-13 07:32:55,553.553 INFO    ] 200
[2026-06-13 07:32:55,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:55,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:32:55,586.586 INFO    ] No update needed
[2026-06-13 07:32:55,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 07:32:55,609.609 INFO    ] 200
[2026-06-13 07:32:55,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:32:55,634.634 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:32:55,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:32:55,678.678 INFO    ] No camera update needed
[2026-06-13 07:32:55,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:32:55,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:32:55,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:32:55,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:32:57,726.726 INFO    ] ================================================
[2026-06-13 07:32:57,741.741 INFO    ] Launching Daemon at Sat Jun 13 07:32:57 IST 2026
[2026-06-13 07:32:57,752.752 INFO    ] ================================================
[2026-06-13 07:32:59,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:32:58
[2026-06-13 07:32:59,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:00,055.055 INFO    ] Initializing speech engine...
[2026-06-13 07:33:00,060.060 INFO    ] 2026-06-13 07:33:00
[2026-06-13 07:33:00,278.278 INFO    ] 2026-06-13 07:33:00
[2026-06-13 07:33:00,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:00,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:00,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:00,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:00,690.690 INFO    ] time= 13/06/2026 07:33:00
[2026-06-13 07:33:00,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:00,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:00,801.801 INFO    ] No existing commands found in stream
[2026-06-13 07:33:05,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:33:05,814.814 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 07:33:09,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:33:09,068.068 INFO    ] Checking for system updates...
[2026-06-13 07:33:09,089.089 INFO    ] 200
[2026-06-13 07:33:09,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:09,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:09,124.124 INFO    ] No update needed
[2026-06-13 07:33:09,125.125 INFO    ] Checking for camera pi updates...
[2026-06-13 07:33:09,145.145 INFO    ] 200
[2026-06-13 07:33:09,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:09,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:33:09,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:09,222.222 INFO    ] No camera update needed
[2026-06-13 07:33:09,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:33:09,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:33:09,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:33:09,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:33:11,270.270 INFO    ] ================================================
[2026-06-13 07:33:11,285.285 INFO    ] Launching Daemon at Sat Jun 13 07:33:11 IST 2026
[2026-06-13 07:33:11,296.296 INFO    ] ================================================
[2026-06-13 07:33:11,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:33:11
[2026-06-13 07:33:11,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:12,119.119 INFO    ] Initializing speech engine...
[2026-06-13 07:33:12,124.124 INFO    ] 2026-06-13 07:33:12
[2026-06-13 07:33:12,327.327 INFO    ] 2026-06-13 07:33:12
[2026-06-13 07:33:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:12,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:12,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:12,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:12,740.740 INFO    ] time= 13/06/2026 07:33:12
[2026-06-13 07:33:12,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:12,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:12,840.840 INFO    ] No existing commands found in stream
[2026-06-13 07:33:17,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:33:17,852.852 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 07:33:21,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:33:21,089.089 INFO    ] Checking for system updates...
[2026-06-13 07:33:21,125.125 INFO    ] 200
[2026-06-13 07:33:21,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:21,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:21,190.190 INFO    ] No update needed
[2026-06-13 07:33:21,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 07:33:21,231.231 INFO    ] 200
[2026-06-13 07:33:21,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:21,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:33:21,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:21,304.304 INFO    ] No camera update needed
[2026-06-13 07:33:21,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:33:21,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:33:21,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:33:21,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:33:23,353.353 INFO    ] ================================================
[2026-06-13 07:33:23,368.368 INFO    ] Launching Daemon at Sat Jun 13 07:33:23 IST 2026
[2026-06-13 07:33:23,379.379 INFO    ] ================================================
[2026-06-13 07:33:23,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:33:23
[2026-06-13 07:33:24,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:24,147.147 INFO    ] Initializing speech engine...
[2026-06-13 07:33:24,152.152 INFO    ] 2026-06-13 07:33:24
[2026-06-13 07:33:24,367.367 INFO    ] 2026-06-13 07:33:24
[2026-06-13 07:33:24,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:24,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:24,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:24,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:24,772.772 INFO    ] time= 13/06/2026 07:33:24
[2026-06-13 07:33:24,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:24,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:24,879.879 INFO    ] No existing commands found in stream
[2026-06-13 07:33:29,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:33:29,893.893 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 07:33:30,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:33:30,267.267 INFO    ] Checking for system updates...
[2026-06-13 07:33:30,288.288 INFO    ] 200
[2026-06-13 07:33:30,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:30,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:30,324.324 INFO    ] No update needed
[2026-06-13 07:33:30,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 07:33:30,345.345 INFO    ] 200
[2026-06-13 07:33:30,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:30,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:33:30,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:30,512.512 INFO    ] No camera update needed
[2026-06-13 07:33:30,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:33:30,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:33:30,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:33:30,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:33:32,553.553 INFO    ] ================================================
[2026-06-13 07:33:32,562.562 INFO    ] Launching Daemon at Sat Jun 13 07:33:32 IST 2026
[2026-06-13 07:33:32,569.569 INFO    ] ================================================
[2026-06-13 07:33:32,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:33:32
[2026-06-13 07:33:33,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:33,736.736 INFO    ] Initializing speech engine...
[2026-06-13 07:33:33,754.754 INFO    ] 2026-06-13 07:33:33
[2026-06-13 07:33:34,005.005 INFO    ] 2026-06-13 07:33:33
[2026-06-13 07:33:34,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:34,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:34,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:34,344.344 INFO    ] time= 13/06/2026 07:33:34
[2026-06-13 07:33:34,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:34,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:34,459.459 INFO    ] No existing commands found in stream
[2026-06-13 07:33:39,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:33:39,474.474 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 07:33:41,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:33:41,972.972 INFO    ] Checking for system updates...
[2026-06-13 07:33:41,993.993 INFO    ] 200
[2026-06-13 07:33:41,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:42,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:42,026.026 INFO    ] No update needed
[2026-06-13 07:33:42,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 07:33:42,047.047 INFO    ] 200
[2026-06-13 07:33:42,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:42,073.073 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:33:42,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:33:42,109.109 INFO    ] No camera update needed
[2026-06-13 07:33:42,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:33:42,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:33:42,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:33:42,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:33:44,157.157 INFO    ] ================================================
[2026-06-13 07:33:44,172.172 INFO    ] Launching Daemon at Sat Jun 13 07:33:44 IST 2026
[2026-06-13 07:33:44,183.183 INFO    ] ================================================
[2026-06-13 07:33:44,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:33:44
[2026-06-13 07:33:44,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:44,980.980 INFO    ] Initializing speech engine...
[2026-06-13 07:33:44,984.984 INFO    ] 2026-06-13 07:33:44
[2026-06-13 07:33:45,204.204 INFO    ] 2026-06-13 07:33:45
[2026-06-13 07:33:45,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:45,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:45,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:45,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:45,604.604 INFO    ] time= 13/06/2026 07:33:45
[2026-06-13 07:33:45,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:45,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:45,726.726 INFO    ] No existing commands found in stream
[2026-06-13 07:33:50,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:33:50,738.738 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 07:33:52,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:33:52,752.752 INFO    ] Checking for system updates...
[2026-06-13 07:33:52,773.773 INFO    ] 200
[2026-06-13 07:33:52,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:52,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:33:52,806.806 INFO    ] No update needed
[2026-06-13 07:33:52,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 07:33:52,827.827 INFO    ] 200
[2026-06-13 07:33:52,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:33:52,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:33:52,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:33:52,901.901 INFO    ] No camera update needed
[2026-06-13 07:33:52,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:33:52,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:33:52,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:33:52,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:33:54,947.947 INFO    ] ================================================
[2026-06-13 07:33:54,956.956 INFO    ] Launching Daemon at Sat Jun 13 07:33:54 IST 2026
[2026-06-13 07:33:54,963.963 INFO    ] ================================================
[2026-06-13 07:33:55,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:33:55
[2026-06-13 07:33:55,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:33:56,204.204 INFO    ] Initializing speech engine...
[2026-06-13 07:33:56,211.211 INFO    ] 2026-06-13 07:33:56
[2026-06-13 07:33:56,473.473 INFO    ] 2026-06-13 07:33:56
[2026-06-13 07:33:56,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:33:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:33:57,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:33:57,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:33:57,185.185 INFO    ] time= 13/06/2026 07:33:57
[2026-06-13 07:33:57,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:33:57,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:33:57,415.415 INFO    ] No existing commands found in stream
[2026-06-13 07:34:02,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:34:02,434.434 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 07:34:05,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:34:05,440.440 INFO    ] Checking for system updates...
[2026-06-13 07:34:05,462.462 INFO    ] 200
[2026-06-13 07:34:05,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:05,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:34:05,495.495 INFO    ] No update needed
[2026-06-13 07:34:05,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 07:34:05,516.516 INFO    ] 200
[2026-06-13 07:34:05,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:05,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:34:05,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:34:05,584.584 INFO    ] No camera update needed
[2026-06-13 07:34:05,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:34:05,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:34:05,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:34:05,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:34:07,632.632 INFO    ] ================================================
[2026-06-13 07:34:07,647.647 INFO    ] Launching Daemon at Sat Jun 13 07:34:07 IST 2026
[2026-06-13 07:34:07,658.658 INFO    ] ================================================
[2026-06-13 07:34:08,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:34:08
[2026-06-13 07:34:08,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:34:08,499.499 INFO    ] Initializing speech engine...
[2026-06-13 07:34:08,504.504 INFO    ] 2026-06-13 07:34:08
[2026-06-13 07:34:08,714.714 INFO    ] 2026-06-13 07:34:08
[2026-06-13 07:34:08,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:34:08,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:34:08,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:34:09,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:34:09,115.115 INFO    ] time= 13/06/2026 07:34:09
[2026-06-13 07:34:09,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:34:09,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:34:09,237.237 INFO    ] No existing commands found in stream
[2026-06-13 07:34:14,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:34:14,251.251 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 07:34:17,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:34:17,538.538 INFO    ] Checking for system updates...
[2026-06-13 07:34:17,561.561 INFO    ] 200
[2026-06-13 07:34:17,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:17,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:34:17,596.596 INFO    ] No update needed
[2026-06-13 07:34:17,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 07:34:17,620.620 INFO    ] 200
[2026-06-13 07:34:17,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:17,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:34:17,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:34:17,669.669 INFO    ] No camera update needed
[2026-06-13 07:34:17,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:34:17,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:34:17,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:34:17,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:34:19,716.716 INFO    ] ================================================
[2026-06-13 07:34:19,732.732 INFO    ] Launching Daemon at Sat Jun 13 07:34:19 IST 2026
[2026-06-13 07:34:19,744.744 INFO    ] ================================================
[2026-06-13 07:34:20,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:34:20
[2026-06-13 07:34:20,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:34:20,598.598 INFO    ] Initializing speech engine...
[2026-06-13 07:34:20,609.609 INFO    ] 2026-06-13 07:34:20
[2026-06-13 07:34:20,819.819 INFO    ] 2026-06-13 07:34:20
[2026-06-13 07:34:20,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:34:20,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:34:21,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:34:21,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:34:21,237.237 INFO    ] time= 13/06/2026 07:34:21
[2026-06-13 07:34:21,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:34:21,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:34:21,344.344 INFO    ] No existing commands found in stream
[2026-06-13 07:34:26,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:34:26,358.358 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 07:34:30,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:34:30,518.518 INFO    ] Checking for system updates...
[2026-06-13 07:34:30,540.540 INFO    ] 200
[2026-06-13 07:34:30,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:30,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:34:30,576.576 INFO    ] No update needed
[2026-06-13 07:34:30,577.577 INFO    ] Checking for camera pi updates...
[2026-06-13 07:34:30,597.597 INFO    ] 200
[2026-06-13 07:34:30,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:30,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:34:30,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:34:30,673.673 INFO    ] No camera update needed
[2026-06-13 07:34:30,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:34:30,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:34:30,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:34:30,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:34:32,713.713 INFO    ] ================================================
[2026-06-13 07:34:32,722.722 INFO    ] Launching Daemon at Sat Jun 13 07:34:32 IST 2026
[2026-06-13 07:34:32,729.729 INFO    ] ================================================
[2026-06-13 07:34:33,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:34:33
[2026-06-13 07:34:33,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:34:33,520.520 INFO    ] Initializing speech engine...
[2026-06-13 07:34:33,525.525 INFO    ] 2026-06-13 07:34:33
[2026-06-13 07:34:33,742.742 INFO    ] 2026-06-13 07:34:33
[2026-06-13 07:34:33,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:34:33,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:34:33,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:34:34,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:34:34,117.117 INFO    ] time= 13/06/2026 07:34:34
[2026-06-13 07:34:34,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:34:34,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:34:34,299.299 INFO    ] No existing commands found in stream
[2026-06-13 07:34:39,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:34:39,316.316 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 07:34:40,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:34:40,603.603 INFO    ] Checking for system updates...
[2026-06-13 07:34:40,624.624 INFO    ] 200
[2026-06-13 07:34:40,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:40,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:34:40,660.660 INFO    ] No update needed
[2026-06-13 07:34:40,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 07:34:40,681.681 INFO    ] 200
[2026-06-13 07:34:40,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:40,706.706 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:34:40,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:34:40,757.757 INFO    ] No camera update needed
[2026-06-13 07:34:40,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:34:40,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:34:40,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:34:40,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:34:42,805.805 INFO    ] ================================================
[2026-06-13 07:34:42,821.821 INFO    ] Launching Daemon at Sat Jun 13 07:34:42 IST 2026
[2026-06-13 07:34:42,832.832 INFO    ] ================================================
[2026-06-13 07:34:43,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:34:43
[2026-06-13 07:34:43,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:34:43,611.611 INFO    ] Initializing speech engine...
[2026-06-13 07:34:43,616.616 INFO    ] 2026-06-13 07:34:43
[2026-06-13 07:34:43,843.843 INFO    ] 2026-06-13 07:34:43
[2026-06-13 07:34:43,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:34:44,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:34:44,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:34:44,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:34:44,247.247 INFO    ] time= 13/06/2026 07:34:44
[2026-06-13 07:34:44,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:34:44,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:34:44,392.392 INFO    ] No existing commands found in stream
[2026-06-13 07:34:49,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:34:49,405.405 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 07:34:51,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:34:51,786.786 INFO    ] Checking for system updates...
[2026-06-13 07:34:51,806.806 INFO    ] 200
[2026-06-13 07:34:51,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:51,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:34:51,839.839 INFO    ] No update needed
[2026-06-13 07:34:51,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 07:34:51,864.864 INFO    ] 200
[2026-06-13 07:34:51,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:34:51,890.890 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:34:51,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:34:51,933.933 INFO    ] No camera update needed
[2026-06-13 07:34:51,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:34:51,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:34:51,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:34:51,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:34:53,986.986 INFO    ] ================================================
[2026-06-13 07:34:54,001.001 INFO    ] Launching Daemon at Sat Jun 13 07:34:53 IST 2026
[2026-06-13 07:34:54,012.012 INFO    ] ================================================
[2026-06-13 07:34:54,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:34:54
[2026-06-13 07:34:55,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:34:55,333.333 INFO    ] Initializing speech engine...
[2026-06-13 07:34:55,338.338 INFO    ] 2026-06-13 07:34:55
[2026-06-13 07:34:55,547.547 INFO    ] 2026-06-13 07:34:55
[2026-06-13 07:34:55,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:34:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:34:55,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:34:55,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:34:55,939.939 INFO    ] time= 13/06/2026 07:34:55
[2026-06-13 07:34:55,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:34:55,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:34:56,065.065 INFO    ] No existing commands found in stream
[2026-06-13 07:35:01,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:01,079.079 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 07:35:02,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:35:02,466.466 INFO    ] Checking for system updates...
[2026-06-13 07:35:02,487.487 INFO    ] 200
[2026-06-13 07:35:02,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:02,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:02,522.522 INFO    ] No update needed
[2026-06-13 07:35:02,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 07:35:02,546.546 INFO    ] 200
[2026-06-13 07:35:02,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:02,573.573 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:35:02,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:02,602.602 INFO    ] No camera update needed
[2026-06-13 07:35:02,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:35:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:35:02,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:35:02,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:35:04,650.650 INFO    ] ================================================
[2026-06-13 07:35:04,666.666 INFO    ] Launching Daemon at Sat Jun 13 07:35:04 IST 2026
[2026-06-13 07:35:04,677.677 INFO    ] ================================================
[2026-06-13 07:35:05,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:35:05
[2026-06-13 07:35:05,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:35:05,561.561 INFO    ] Initializing speech engine...
[2026-06-13 07:35:05,566.566 INFO    ] 2026-06-13 07:35:05
[2026-06-13 07:35:05,772.772 INFO    ] 2026-06-13 07:35:05
[2026-06-13 07:35:05,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:35:05,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:35:05,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:35:06,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:35:06,176.176 INFO    ] time= 13/06/2026 07:35:06
[2026-06-13 07:35:06,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:35:06,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:35:06,292.292 INFO    ] No existing commands found in stream
[2026-06-13 07:35:11,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:11,306.306 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 07:35:13,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:35:13,481.481 INFO    ] Checking for system updates...
[2026-06-13 07:35:13,502.502 INFO    ] 200
[2026-06-13 07:35:13,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:13,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:13,536.536 INFO    ] No update needed
[2026-06-13 07:35:13,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 07:35:13,557.557 INFO    ] 200
[2026-06-13 07:35:13,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:13,582.582 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:35:13,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:13,629.629 INFO    ] No camera update needed
[2026-06-13 07:35:13,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:35:13,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:35:13,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:35:13,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:35:15,677.677 INFO    ] ================================================
[2026-06-13 07:35:15,693.693 INFO    ] Launching Daemon at Sat Jun 13 07:35:15 IST 2026
[2026-06-13 07:35:15,704.704 INFO    ] ================================================
[2026-06-13 07:35:16,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:35:16
[2026-06-13 07:35:16,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:35:16,507.507 INFO    ] Initializing speech engine...
[2026-06-13 07:35:16,513.513 INFO    ] 2026-06-13 07:35:16
[2026-06-13 07:35:16,714.714 INFO    ] 2026-06-13 07:35:16
[2026-06-13 07:35:16,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:35:16,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:35:16,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:35:17,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:35:17,127.127 INFO    ] time= 13/06/2026 07:35:17
[2026-06-13 07:35:17,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:35:17,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:35:17,233.233 INFO    ] No existing commands found in stream
[2026-06-13 07:35:22,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:22,244.244 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 07:35:24,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:35:24,247.247 INFO    ] Checking for system updates...
[2026-06-13 07:35:24,269.269 INFO    ] 200
[2026-06-13 07:35:24,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:24,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:35:24,303.303 INFO    ] No update needed
[2026-06-13 07:35:24,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 07:35:24,324.324 INFO    ] 200
[2026-06-13 07:35:24,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:24,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:35:24,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:35:24,391.391 INFO    ] No camera update needed
[2026-06-13 07:35:24,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:35:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:35:24,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:35:24,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:35:26,440.440 INFO    ] ================================================
[2026-06-13 07:35:26,455.455 INFO    ] Launching Daemon at Sat Jun 13 07:35:26 IST 2026
[2026-06-13 07:35:26,467.467 INFO    ] ================================================
[2026-06-13 07:35:26,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:35:26
[2026-06-13 07:35:27,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:35:27,633.633 INFO    ] Initializing speech engine...
[2026-06-13 07:35:27,642.642 INFO    ] 2026-06-13 07:35:27
[2026-06-13 07:35:27,888.888 INFO    ] 2026-06-13 07:35:27
[2026-06-13 07:35:27,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:35:28,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:35:28,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:35:28,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:35:28,338.338 INFO    ] time= 13/06/2026 07:35:28
[2026-06-13 07:35:28,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:35:28,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:35:28,503.503 INFO    ] No existing commands found in stream
[2026-06-13 07:35:33,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:33,518.518 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 07:35:36,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:35:36,948.948 INFO    ] Checking for system updates...
[2026-06-13 07:35:36,970.970 INFO    ] 200
[2026-06-13 07:35:36,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:37,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:37,004.004 INFO    ] No update needed
[2026-06-13 07:35:37,005.005 INFO    ] Checking for camera pi updates...
[2026-06-13 07:35:37,025.025 INFO    ] 200
[2026-06-13 07:35:37,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:37,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:35:37,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:35:37,092.092 INFO    ] No camera update needed
[2026-06-13 07:35:37,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:35:37,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:35:37,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:35:37,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:35:39,142.142 INFO    ] ================================================
[2026-06-13 07:35:39,157.157 INFO    ] Launching Daemon at Sat Jun 13 07:35:39 IST 2026
[2026-06-13 07:35:39,168.168 INFO    ] ================================================
[2026-06-13 07:35:39,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:35:39
[2026-06-13 07:35:39,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:35:39,991.991 INFO    ] Initializing speech engine...
[2026-06-13 07:35:39,999.999 INFO    ] 2026-06-13 07:35:39
[2026-06-13 07:35:40,211.211 INFO    ] 2026-06-13 07:35:40
[2026-06-13 07:35:40,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:35:40,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:35:40,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:35:40,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:35:40,617.617 INFO    ] time= 13/06/2026 07:35:40
[2026-06-13 07:35:40,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:35:40,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:35:40,735.735 INFO    ] No existing commands found in stream
[2026-06-13 07:35:45,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:45,749.749 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 07:35:47,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:35:47,894.894 INFO    ] Checking for system updates...
[2026-06-13 07:35:47,917.917 INFO    ] 200
[2026-06-13 07:35:47,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:47,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:35:47,953.953 INFO    ] No update needed
[2026-06-13 07:35:47,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 07:35:47,974.974 INFO    ] 200
[2026-06-13 07:35:47,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:35:48,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:35:48,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:35:48,041.041 INFO    ] No camera update needed
[2026-06-13 07:35:48,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:35:48,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:35:48,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:35:48,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:35:50,092.092 INFO    ] ================================================
[2026-06-13 07:35:50,108.108 INFO    ] Launching Daemon at Sat Jun 13 07:35:50 IST 2026
[2026-06-13 07:35:50,119.119 INFO    ] ================================================
[2026-06-13 07:35:50,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:35:50
[2026-06-13 07:35:50,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:35:50,957.957 INFO    ] Initializing speech engine...
[2026-06-13 07:35:50,963.963 INFO    ] 2026-06-13 07:35:50
[2026-06-13 07:35:51,169.169 INFO    ] 2026-06-13 07:35:51
[2026-06-13 07:35:51,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:35:51,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:35:51,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:35:51,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:35:51,585.585 INFO    ] time= 13/06/2026 07:35:51
[2026-06-13 07:35:51,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:35:51,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:35:51,684.684 INFO    ] No existing commands found in stream
[2026-06-13 07:35:56,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:35:56,697.697 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 07:36:00,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:36:00,392.392 INFO    ] Checking for system updates...
[2026-06-13 07:36:00,413.413 INFO    ] 200
[2026-06-13 07:36:00,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:00,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:36:00,447.447 INFO    ] No update needed
[2026-06-13 07:36:00,449.449 INFO    ] Checking for camera pi updates...
[2026-06-13 07:36:00,470.470 INFO    ] 200
[2026-06-13 07:36:00,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:00,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:36:00,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:36:00,540.540 INFO    ] No camera update needed
[2026-06-13 07:36:00,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:36:00,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:36:00,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:36:00,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:36:02,584.584 INFO    ] ================================================
[2026-06-13 07:36:02,593.593 INFO    ] Launching Daemon at Sat Jun 13 07:36:02 IST 2026
[2026-06-13 07:36:02,599.599 INFO    ] ================================================
[2026-06-13 07:36:02,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:36:02
[2026-06-13 07:36:03,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:36:03,354.354 INFO    ] Initializing speech engine...
[2026-06-13 07:36:03,363.363 INFO    ] 2026-06-13 07:36:03
[2026-06-13 07:36:03,575.575 INFO    ] 2026-06-13 07:36:03
[2026-06-13 07:36:03,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:36:03,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:36:03,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:36:03,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:36:03,825.825 INFO    ] time= 13/06/2026 07:36:03
[2026-06-13 07:36:03,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:36:03,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:36:04,002.002 INFO    ] No existing commands found in stream
[2026-06-13 07:36:09,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:36:09,034.034 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 07:36:13,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:36:13,314.314 INFO    ] Checking for system updates...
[2026-06-13 07:36:13,334.334 INFO    ] 200
[2026-06-13 07:36:13,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:13,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:13,370.370 INFO    ] No update needed
[2026-06-13 07:36:13,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 07:36:13,390.390 INFO    ] 200
[2026-06-13 07:36:13,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:13,416.416 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:36:13,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:13,453.453 INFO    ] No camera update needed
[2026-06-13 07:36:13,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:36:13,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:36:13,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:36:13,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:36:15,500.500 INFO    ] ================================================
[2026-06-13 07:36:15,515.515 INFO    ] Launching Daemon at Sat Jun 13 07:36:15 IST 2026
[2026-06-13 07:36:15,526.526 INFO    ] ================================================
[2026-06-13 07:36:16,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:36:16
[2026-06-13 07:36:16,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:36:16,867.867 INFO    ] Initializing speech engine...
[2026-06-13 07:36:16,873.873 INFO    ] 2026-06-13 07:36:16
[2026-06-13 07:36:17,156.156 INFO    ] 2026-06-13 07:36:17
[2026-06-13 07:36:17,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:36:17,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:36:17,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:36:17,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:36:17,517.517 INFO    ] time= 13/06/2026 07:36:17
[2026-06-13 07:36:17,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:36:17,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:36:17,615.615 INFO    ] No existing commands found in stream
[2026-06-13 07:36:22,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:36:22,631.631 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 07:36:26,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:36:26,426.426 INFO    ] Checking for system updates...
[2026-06-13 07:36:26,448.448 INFO    ] 200
[2026-06-13 07:36:26,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:26,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:26,482.482 INFO    ] No update needed
[2026-06-13 07:36:26,483.483 INFO    ] Checking for camera pi updates...
[2026-06-13 07:36:26,503.503 INFO    ] 200
[2026-06-13 07:36:26,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:26,528.528 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:36:26,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:26,574.574 INFO    ] No camera update needed
[2026-06-13 07:36:26,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:36:26,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:36:26,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:36:26,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:36:28,623.623 INFO    ] ================================================
[2026-06-13 07:36:28,638.638 INFO    ] Launching Daemon at Sat Jun 13 07:36:28 IST 2026
[2026-06-13 07:36:28,649.649 INFO    ] ================================================
[2026-06-13 07:36:29,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:36:29
[2026-06-13 07:36:29,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:36:29,491.491 INFO    ] Initializing speech engine...
[2026-06-13 07:36:29,497.497 INFO    ] 2026-06-13 07:36:29
[2026-06-13 07:36:29,704.704 INFO    ] 2026-06-13 07:36:29
[2026-06-13 07:36:29,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:36:29,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:36:29,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:36:30,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:36:30,109.109 INFO    ] time= 13/06/2026 07:36:30
[2026-06-13 07:36:30,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:36:30,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:36:30,220.220 INFO    ] No existing commands found in stream
[2026-06-13 07:36:35,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:36:35,233.233 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 07:36:37,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:36:37,350.350 INFO    ] Checking for system updates...
[2026-06-13 07:36:37,386.386 INFO    ] 200
[2026-06-13 07:36:37,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:37,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:37,445.445 INFO    ] No update needed
[2026-06-13 07:36:37,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 07:36:37,481.481 INFO    ] 200
[2026-06-13 07:36:37,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:37,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:36:37,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:36:37,577.577 INFO    ] No camera update needed
[2026-06-13 07:36:37,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:36:37,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:36:37,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:36:37,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:36:39,626.626 INFO    ] ================================================
[2026-06-13 07:36:39,641.641 INFO    ] Launching Daemon at Sat Jun 13 07:36:39 IST 2026
[2026-06-13 07:36:39,652.652 INFO    ] ================================================
[2026-06-13 07:36:39,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:36:39
[2026-06-13 07:36:40,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:36:40,443.443 INFO    ] Initializing speech engine...
[2026-06-13 07:36:40,446.446 INFO    ] 2026-06-13 07:36:40
[2026-06-13 07:36:40,676.676 INFO    ] 2026-06-13 07:36:40
[2026-06-13 07:36:40,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:36:40,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:36:40,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:36:41,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:36:41,094.094 INFO    ] time= 13/06/2026 07:36:41
[2026-06-13 07:36:41,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:36:41,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:36:41,251.251 INFO    ] No existing commands found in stream
[2026-06-13 07:36:46,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:36:46,264.264 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 07:36:49,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:36:49,054.054 INFO    ] Checking for system updates...
[2026-06-13 07:36:49,075.075 INFO    ] 200
[2026-06-13 07:36:49,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:49,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:36:49,108.108 INFO    ] No update needed
[2026-06-13 07:36:49,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 07:36:49,132.132 INFO    ] 200
[2026-06-13 07:36:49,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:36:49,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:36:49,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:36:49,196.196 INFO    ] No camera update needed
[2026-06-13 07:36:49,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:36:49,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:36:49,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:36:49,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:36:51,243.243 INFO    ] ================================================
[2026-06-13 07:36:51,259.259 INFO    ] Launching Daemon at Sat Jun 13 07:36:51 IST 2026
[2026-06-13 07:36:51,270.270 INFO    ] ================================================
[2026-06-13 07:36:51,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:36:51
[2026-06-13 07:36:51,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:36:52,104.104 INFO    ] Initializing speech engine...
[2026-06-13 07:36:52,111.111 INFO    ] 2026-06-13 07:36:52
[2026-06-13 07:36:52,318.318 INFO    ] 2026-06-13 07:36:52
[2026-06-13 07:36:52,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:36:52,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:36:52,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:36:52,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:36:52,729.729 INFO    ] time= 13/06/2026 07:36:52
[2026-06-13 07:36:52,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:36:52,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:36:52,842.842 INFO    ] No existing commands found in stream
[2026-06-13 07:36:57,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:36:57,854.854 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 07:37:02,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:37:02,051.051 INFO    ] Checking for system updates...
[2026-06-13 07:37:02,086.086 INFO    ] 200
[2026-06-13 07:37:02,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:02,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:02,129.129 INFO    ] No update needed
[2026-06-13 07:37:02,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:02,156.156 INFO    ] 200
[2026-06-13 07:37:02,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:02,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:02,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:02,223.223 INFO    ] No camera update needed
[2026-06-13 07:37:02,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:02,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:02,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:02,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:04,274.274 INFO    ] ================================================
[2026-06-13 07:37:04,290.290 INFO    ] Launching Daemon at Sat Jun 13 07:37:04 IST 2026
[2026-06-13 07:37:04,300.300 INFO    ] ================================================
[2026-06-13 07:37:04,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:04
[2026-06-13 07:37:05,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:37:05,158.158 INFO    ] Initializing speech engine...
[2026-06-13 07:37:05,162.162 INFO    ] 2026-06-13 07:37:05
[2026-06-13 07:37:05,369.369 INFO    ] 2026-06-13 07:37:05
[2026-06-13 07:37:05,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:37:05,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:37:05,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:37:05,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:37:05,729.729 INFO    ] time= 13/06/2026 07:37:05
[2026-06-13 07:37:05,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:37:05,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:37:05,901.901 INFO    ] No existing commands found in stream
[2026-06-13 07:37:10,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:37:10,915.915 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 07:37:12,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:37:12,126.126 INFO    ] Checking for system updates...
[2026-06-13 07:37:12,147.147 INFO    ] 200
[2026-06-13 07:37:12,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:12,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:12,182.182 INFO    ] No update needed
[2026-06-13 07:37:12,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:12,202.202 INFO    ] 200
[2026-06-13 07:37:12,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:12,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:12,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:12,276.276 INFO    ] No camera update needed
[2026-06-13 07:37:12,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:12,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:12,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:12,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:14,325.325 INFO    ] ================================================
[2026-06-13 07:37:14,341.341 INFO    ] Launching Daemon at Sat Jun 13 07:37:14 IST 2026
[2026-06-13 07:37:14,351.351 INFO    ] ================================================
[2026-06-13 07:37:14,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:14
[2026-06-13 07:37:15,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:37:15,169.169 INFO    ] Initializing speech engine...
[2026-06-13 07:37:15,183.183 INFO    ] 2026-06-13 07:37:15
[2026-06-13 07:37:15,374.374 INFO    ] 2026-06-13 07:37:15
[2026-06-13 07:37:15,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:37:15,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:37:15,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:37:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:37:15,737.737 INFO    ] time= 13/06/2026 07:37:15
[2026-06-13 07:37:15,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:37:15,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:37:15,863.863 INFO    ] No existing commands found in stream
[2026-06-13 07:37:20,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:37:20,876.876 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 07:37:23,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:37:23,728.728 INFO    ] Checking for system updates...
[2026-06-13 07:37:23,750.750 INFO    ] 200
[2026-06-13 07:37:23,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:23,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:37:23,783.783 INFO    ] No update needed
[2026-06-13 07:37:23,785.785 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:23,804.804 INFO    ] 200
[2026-06-13 07:37:23,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:23,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:23,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:37:23,864.864 INFO    ] No camera update needed
[2026-06-13 07:37:23,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:23,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:23,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:23,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:25,912.912 INFO    ] ================================================
[2026-06-13 07:37:25,928.928 INFO    ] Launching Daemon at Sat Jun 13 07:37:25 IST 2026
[2026-06-13 07:37:25,939.939 INFO    ] ================================================
[2026-06-13 07:37:26,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:26
[2026-06-13 07:37:26,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:37:26,748.748 INFO    ] Initializing speech engine...
[2026-06-13 07:37:26,753.753 INFO    ] 2026-06-13 07:37:26
[2026-06-13 07:37:26,957.957 INFO    ] 2026-06-13 07:37:26
[2026-06-13 07:37:26,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:37:27,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:37:27,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:37:27,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:37:27,368.368 INFO    ] time= 13/06/2026 07:37:27
[2026-06-13 07:37:27,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:37:27,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:37:27,474.474 INFO    ] No existing commands found in stream
[2026-06-13 07:37:32,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:37:32,491.491 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 07:37:36,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:37:36,321.321 INFO    ] Checking for system updates...
[2026-06-13 07:37:36,344.344 INFO    ] 200
[2026-06-13 07:37:36,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:36,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:36,415.415 INFO    ] No update needed
[2026-06-13 07:37:36,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:36,456.456 INFO    ] 200
[2026-06-13 07:37:36,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:36,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:36,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:36,623.623 INFO    ] No camera update needed
[2026-06-13 07:37:36,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:36,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:36,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:36,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:38,660.660 INFO    ] ================================================
[2026-06-13 07:37:38,669.669 INFO    ] Launching Daemon at Sat Jun 13 07:37:38 IST 2026
[2026-06-13 07:37:38,675.675 INFO    ] ================================================
[2026-06-13 07:37:39,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:39
[2026-06-13 07:37:39,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:37:39,479.479 INFO    ] Initializing speech engine...
[2026-06-13 07:37:39,483.483 INFO    ] 2026-06-13 07:37:39
[2026-06-13 07:37:39,693.693 INFO    ] 2026-06-13 07:37:39
[2026-06-13 07:37:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:37:39,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:37:39,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:37:39,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:37:39,988.988 INFO    ] time= 13/06/2026 07:37:39
[2026-06-13 07:37:39,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:37:40,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:37:40,082.082 INFO    ] No existing commands found in stream
[2026-06-13 07:37:45,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:37:45,120.120 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 07:37:46,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:37:46,135.135 INFO    ] Checking for system updates...
[2026-06-13 07:37:46,156.156 INFO    ] 200
[2026-06-13 07:37:46,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:46,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:46,205.205 INFO    ] No update needed
[2026-06-13 07:37:46,206.206 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:46,226.226 INFO    ] 200
[2026-06-13 07:37:46,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:46,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:46,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:37:46,296.296 INFO    ] No camera update needed
[2026-06-13 07:37:46,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:46,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:46,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:46,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:48,343.343 INFO    ] ================================================
[2026-06-13 07:37:48,360.360 INFO    ] Launching Daemon at Sat Jun 13 07:37:48 IST 2026
[2026-06-13 07:37:48,370.370 INFO    ] ================================================
[2026-06-13 07:37:48,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:48
[2026-06-13 07:37:49,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:37:49,173.173 INFO    ] Initializing speech engine...
[2026-06-13 07:37:49,183.183 INFO    ] 2026-06-13 07:37:49
[2026-06-13 07:37:49,386.386 INFO    ] 2026-06-13 07:37:49
[2026-06-13 07:37:49,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:37:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:37:49,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:37:49,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:37:49,791.791 INFO    ] time= 13/06/2026 07:37:49
[2026-06-13 07:37:49,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:37:49,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:37:49,900.900 INFO    ] No existing commands found in stream
[2026-06-13 07:37:54,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:37:54,913.913 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 07:37:57,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:37:57,037.037 INFO    ] Checking for system updates...
[2026-06-13 07:37:57,058.058 INFO    ] 200
[2026-06-13 07:37:57,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:57,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:37:57,094.094 INFO    ] No update needed
[2026-06-13 07:37:57,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 07:37:57,116.116 INFO    ] 200
[2026-06-13 07:37:57,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:37:57,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:37:57,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:37:57,182.182 INFO    ] No camera update needed
[2026-06-13 07:37:57,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:37:57,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:37:57,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:37:57,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:37:59,231.231 INFO    ] ================================================
[2026-06-13 07:37:59,246.246 INFO    ] Launching Daemon at Sat Jun 13 07:37:59 IST 2026
[2026-06-13 07:37:59,257.257 INFO    ] ================================================
[2026-06-13 07:37:59,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:37:59
[2026-06-13 07:37:59,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:00,063.063 INFO    ] Initializing speech engine...
[2026-06-13 07:38:00,073.073 INFO    ] 2026-06-13 07:38:00
[2026-06-13 07:38:00,277.277 INFO    ] 2026-06-13 07:38:00
[2026-06-13 07:38:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:00,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:00,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:00,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:00,690.690 INFO    ] time= 13/06/2026 07:38:00
[2026-06-13 07:38:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:00,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:00,788.788 INFO    ] No existing commands found in stream
[2026-06-13 07:38:05,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:38:05,802.802 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 07:38:09,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:38:09,311.311 INFO    ] Checking for system updates...
[2026-06-13 07:38:09,332.332 INFO    ] 200
[2026-06-13 07:38:09,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:09,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:38:09,365.365 INFO    ] No update needed
[2026-06-13 07:38:09,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 07:38:09,387.387 INFO    ] 200
[2026-06-13 07:38:09,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:09,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:38:09,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:38:09,455.455 INFO    ] No camera update needed
[2026-06-13 07:38:09,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:38:09,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:38:09,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:38:09,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:38:11,503.503 INFO    ] ================================================
[2026-06-13 07:38:11,519.519 INFO    ] Launching Daemon at Sat Jun 13 07:38:11 IST 2026
[2026-06-13 07:38:11,530.530 INFO    ] ================================================
[2026-06-13 07:38:11,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:38:11
[2026-06-13 07:38:12,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:12,357.357 INFO    ] Initializing speech engine...
[2026-06-13 07:38:12,362.362 INFO    ] 2026-06-13 07:38:12
[2026-06-13 07:38:12,566.566 INFO    ] 2026-06-13 07:38:12
[2026-06-13 07:38:12,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:12,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:12,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:12,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:12,961.961 INFO    ] time= 13/06/2026 07:38:12
[2026-06-13 07:38:12,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:13,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:13,080.080 INFO    ] No existing commands found in stream
[2026-06-13 07:38:18,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:38:18,093.093 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 07:38:20,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:38:20,114.114 INFO    ] Checking for system updates...
[2026-06-13 07:38:20,135.135 INFO    ] 200
[2026-06-13 07:38:20,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:20,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:20,168.168 INFO    ] No update needed
[2026-06-13 07:38:20,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 07:38:20,190.190 INFO    ] 200
[2026-06-13 07:38:20,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:20,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:38:20,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:20,255.255 INFO    ] No camera update needed
[2026-06-13 07:38:20,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:38:20,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:38:20,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:38:20,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:38:22,302.302 INFO    ] ================================================
[2026-06-13 07:38:22,317.317 INFO    ] Launching Daemon at Sat Jun 13 07:38:22 IST 2026
[2026-06-13 07:38:22,327.327 INFO    ] ================================================
[2026-06-13 07:38:22,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:38:22
[2026-06-13 07:38:23,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:23,176.176 INFO    ] Initializing speech engine...
[2026-06-13 07:38:23,182.182 INFO    ] 2026-06-13 07:38:23
[2026-06-13 07:38:23,386.386 INFO    ] 2026-06-13 07:38:23
[2026-06-13 07:38:23,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:23,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:23,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:23,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:23,791.791 INFO    ] time= 13/06/2026 07:38:23
[2026-06-13 07:38:23,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:23,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:23,901.901 INFO    ] No existing commands found in stream
[2026-06-13 07:38:28,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:38:28,919.919 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 07:38:29,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:38:29,339.339 INFO    ] Checking for system updates...
[2026-06-13 07:38:29,360.360 INFO    ] 200
[2026-06-13 07:38:29,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:29,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:29,396.396 INFO    ] No update needed
[2026-06-13 07:38:29,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 07:38:29,419.419 INFO    ] 200
[2026-06-13 07:38:29,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:29,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:38:29,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:29,481.481 INFO    ] No camera update needed
[2026-06-13 07:38:29,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:38:29,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:38:29,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:38:29,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:38:31,530.530 INFO    ] ================================================
[2026-06-13 07:38:31,545.545 INFO    ] Launching Daemon at Sat Jun 13 07:38:31 IST 2026
[2026-06-13 07:38:31,555.555 INFO    ] ================================================
[2026-06-13 07:38:31,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:38:31
[2026-06-13 07:38:32,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:32,400.400 INFO    ] Initializing speech engine...
[2026-06-13 07:38:32,406.406 INFO    ] 2026-06-13 07:38:32
[2026-06-13 07:38:32,632.632 INFO    ] 2026-06-13 07:38:32
[2026-06-13 07:38:32,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:32,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:32,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:32,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:33,040.040 INFO    ] time= 13/06/2026 07:38:32
[2026-06-13 07:38:33,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:33,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:33,151.151 INFO    ] No existing commands found in stream
[2026-06-13 07:38:38,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:38:38,163.163 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 07:38:41,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:38:41,507.507 INFO    ] Checking for system updates...
[2026-06-13 07:38:41,546.546 INFO    ] 200
[2026-06-13 07:38:41,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:41,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:41,582.582 INFO    ] No update needed
[2026-06-13 07:38:41,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 07:38:41,603.603 INFO    ] 200
[2026-06-13 07:38:41,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:41,632.632 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:38:41,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:38:41,672.672 INFO    ] No camera update needed
[2026-06-13 07:38:41,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:38:41,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:38:41,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:38:41,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:38:43,722.722 INFO    ] ================================================
[2026-06-13 07:38:43,737.737 INFO    ] Launching Daemon at Sat Jun 13 07:38:43 IST 2026
[2026-06-13 07:38:43,748.748 INFO    ] ================================================
[2026-06-13 07:38:44,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:38:44
[2026-06-13 07:38:44,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:44,529.529 INFO    ] Initializing speech engine...
[2026-06-13 07:38:44,533.533 INFO    ] 2026-06-13 07:38:44
[2026-06-13 07:38:44,761.761 INFO    ] 2026-06-13 07:38:44
[2026-06-13 07:38:44,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:44,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:44,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:45,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:45,191.191 INFO    ] time= 13/06/2026 07:38:45
[2026-06-13 07:38:45,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:45,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:45,310.310 INFO    ] No existing commands found in stream
[2026-06-13 07:38:50,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:38:50,323.323 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 07:38:51,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:38:51,379.379 INFO    ] Checking for system updates...
[2026-06-13 07:38:51,400.400 INFO    ] 200
[2026-06-13 07:38:51,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:51,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:51,433.433 INFO    ] No update needed
[2026-06-13 07:38:51,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 07:38:51,454.454 INFO    ] 200
[2026-06-13 07:38:51,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:38:51,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:38:51,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:38:51,524.524 INFO    ] No camera update needed
[2026-06-13 07:38:51,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:38:51,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:38:51,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:38:51,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:38:53,573.573 INFO    ] ================================================
[2026-06-13 07:38:53,588.588 INFO    ] Launching Daemon at Sat Jun 13 07:38:53 IST 2026
[2026-06-13 07:38:53,598.598 INFO    ] ================================================
[2026-06-13 07:38:53,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:38:53
[2026-06-13 07:38:54,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:38:54,378.378 INFO    ] Initializing speech engine...
[2026-06-13 07:38:54,391.391 INFO    ] 2026-06-13 07:38:54
[2026-06-13 07:38:54,607.607 INFO    ] 2026-06-13 07:38:54
[2026-06-13 07:38:54,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:38:54,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:38:54,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:38:54,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:38:55,016.016 INFO    ] time= 13/06/2026 07:38:54
[2026-06-13 07:38:55,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:38:55,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:38:55,157.157 INFO    ] No existing commands found in stream
[2026-06-13 07:39:00,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:00,169.169 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 07:39:04,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:39:04,399.399 INFO    ] Checking for system updates...
[2026-06-13 07:39:04,422.422 INFO    ] 200
[2026-06-13 07:39:04,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:04,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:39:04,457.457 INFO    ] No update needed
[2026-06-13 07:39:04,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 07:39:04,479.479 INFO    ] 200
[2026-06-13 07:39:04,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:04,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:39:04,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:39:04,542.542 INFO    ] No camera update needed
[2026-06-13 07:39:04,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:39:04,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:39:04,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:39:04,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:39:06,589.589 INFO    ] ================================================
[2026-06-13 07:39:06,604.604 INFO    ] Launching Daemon at Sat Jun 13 07:39:06 IST 2026
[2026-06-13 07:39:06,615.615 INFO    ] ================================================
[2026-06-13 07:39:06,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:39:06
[2026-06-13 07:39:07,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:39:07,445.445 INFO    ] Initializing speech engine...
[2026-06-13 07:39:07,450.450 INFO    ] 2026-06-13 07:39:07
[2026-06-13 07:39:07,655.655 INFO    ] 2026-06-13 07:39:07
[2026-06-13 07:39:07,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:39:07,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:39:07,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:39:08,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:39:08,077.077 INFO    ] time= 13/06/2026 07:39:08
[2026-06-13 07:39:08,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:39:08,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:39:08,186.186 INFO    ] No existing commands found in stream
[2026-06-13 07:39:13,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:13,200.200 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 07:39:16,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:39:16,098.098 INFO    ] Checking for system updates...
[2026-06-13 07:39:16,119.119 INFO    ] 200
[2026-06-13 07:39:16,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:16,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:16,153.153 INFO    ] No update needed
[2026-06-13 07:39:16,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 07:39:16,175.175 INFO    ] 200
[2026-06-13 07:39:16,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:16,199.199 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:39:16,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:16,237.237 INFO    ] No camera update needed
[2026-06-13 07:39:16,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:39:16,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:39:16,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:39:16,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:39:18,283.283 INFO    ] ================================================
[2026-06-13 07:39:18,298.298 INFO    ] Launching Daemon at Sat Jun 13 07:39:18 IST 2026
[2026-06-13 07:39:18,309.309 INFO    ] ================================================
[2026-06-13 07:39:18,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:39:18
[2026-06-13 07:39:18,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:39:19,100.100 INFO    ] Initializing speech engine...
[2026-06-13 07:39:19,105.105 INFO    ] 2026-06-13 07:39:19
[2026-06-13 07:39:19,309.309 INFO    ] 2026-06-13 07:39:19
[2026-06-13 07:39:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:39:19,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:39:19,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:39:19,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:39:19,730.730 INFO    ] time= 13/06/2026 07:39:19
[2026-06-13 07:39:19,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:39:19,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:39:19,826.826 INFO    ] No existing commands found in stream
[2026-06-13 07:39:24,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:24,838.838 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 07:39:26,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:39:26,946.946 INFO    ] Checking for system updates...
[2026-06-13 07:39:26,969.969 INFO    ] 200
[2026-06-13 07:39:26,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:27,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:39:27,009.009 INFO    ] No update needed
[2026-06-13 07:39:27,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 07:39:27,029.029 INFO    ] 200
[2026-06-13 07:39:27,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:27,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:39:27,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:39:27,094.094 INFO    ] No camera update needed
[2026-06-13 07:39:27,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:39:27,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:39:27,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:39:27,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:39:29,146.146 INFO    ] ================================================
[2026-06-13 07:39:29,161.161 INFO    ] Launching Daemon at Sat Jun 13 07:39:29 IST 2026
[2026-06-13 07:39:29,171.171 INFO    ] ================================================
[2026-06-13 07:39:29,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:39:29
[2026-06-13 07:39:29,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:39:29,972.972 INFO    ] Initializing speech engine...
[2026-06-13 07:39:29,984.984 INFO    ] 2026-06-13 07:39:29
[2026-06-13 07:39:30,202.202 INFO    ] 2026-06-13 07:39:30
[2026-06-13 07:39:30,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:39:30,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:39:30,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:39:30,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:39:30,626.626 INFO    ] time= 13/06/2026 07:39:30
[2026-06-13 07:39:30,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:39:30,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:39:30,751.751 INFO    ] No existing commands found in stream
[2026-06-13 07:39:35,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:35,764.764 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 07:39:38,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:39:38,251.251 INFO    ] Checking for system updates...
[2026-06-13 07:39:38,272.272 INFO    ] 200
[2026-06-13 07:39:38,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:38,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:38,306.306 INFO    ] No update needed
[2026-06-13 07:39:38,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 07:39:38,327.327 INFO    ] 200
[2026-06-13 07:39:38,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:38,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:39:38,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:38,491.491 INFO    ] No camera update needed
[2026-06-13 07:39:38,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:39:38,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:39:38,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:39:38,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:39:40,539.539 INFO    ] ================================================
[2026-06-13 07:39:40,555.555 INFO    ] Launching Daemon at Sat Jun 13 07:39:40 IST 2026
[2026-06-13 07:39:40,566.566 INFO    ] ================================================
[2026-06-13 07:39:40,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:39:40
[2026-06-13 07:39:41,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:39:41,400.400 INFO    ] Initializing speech engine...
[2026-06-13 07:39:41,406.406 INFO    ] 2026-06-13 07:39:41
[2026-06-13 07:39:41,613.613 INFO    ] 2026-06-13 07:39:41
[2026-06-13 07:39:41,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:39:41,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:39:41,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:39:41,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:39:42,018.018 INFO    ] time= 13/06/2026 07:39:41
[2026-06-13 07:39:42,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:39:42,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:39:42,157.157 INFO    ] No existing commands found in stream
[2026-06-13 07:39:47,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:47,195.195 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 07:39:50,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:39:50,442.442 INFO    ] Checking for system updates...
[2026-06-13 07:39:50,463.463 INFO    ] 200
[2026-06-13 07:39:50,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:50,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:50,497.497 INFO    ] No update needed
[2026-06-13 07:39:50,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 07:39:50,518.518 INFO    ] 200
[2026-06-13 07:39:50,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:39:50,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:39:50,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:39:50,589.589 INFO    ] No camera update needed
[2026-06-13 07:39:50,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:39:50,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:39:50,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:39:50,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:39:52,638.638 INFO    ] ================================================
[2026-06-13 07:39:52,653.653 INFO    ] Launching Daemon at Sat Jun 13 07:39:52 IST 2026
[2026-06-13 07:39:52,664.664 INFO    ] ================================================
[2026-06-13 07:39:52,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:39:52
[2026-06-13 07:39:53,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:39:53,451.451 INFO    ] Initializing speech engine...
[2026-06-13 07:39:53,459.459 INFO    ] 2026-06-13 07:39:53
[2026-06-13 07:39:53,683.683 INFO    ] 2026-06-13 07:39:53
[2026-06-13 07:39:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:39:53,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:39:53,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:39:54,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:39:54,086.086 INFO    ] time= 13/06/2026 07:39:54
[2026-06-13 07:39:54,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:39:54,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:39:54,241.241 INFO    ] No existing commands found in stream
[2026-06-13 07:39:59,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:39:59,255.255 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 07:40:01,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:40:01,509.509 INFO    ] Checking for system updates...
[2026-06-13 07:40:01,588.588 INFO    ] 200
[2026-06-13 07:40:01,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:01,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:01,761.761 INFO    ] No update needed
[2026-06-13 07:40:01,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:01,805.805 INFO    ] 200
[2026-06-13 07:40:01,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:01,877.877 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:01,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:01,954.954 INFO    ] No camera update needed
[2026-06-13 07:40:01,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:01,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:01,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:01,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:04,005.005 INFO    ] ================================================
[2026-06-13 07:40:04,020.020 INFO    ] Launching Daemon at Sat Jun 13 07:40:04 IST 2026
[2026-06-13 07:40:04,031.031 INFO    ] ================================================
[2026-06-13 07:40:04,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:04
[2026-06-13 07:40:04,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:04,819.819 INFO    ] Initializing speech engine...
[2026-06-13 07:40:04,825.825 INFO    ] 2026-06-13 07:40:04
[2026-06-13 07:40:05,029.029 INFO    ] 2026-06-13 07:40:05
[2026-06-13 07:40:05,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:05,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:05,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:05,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:05,445.445 INFO    ] time= 13/06/2026 07:40:05
[2026-06-13 07:40:05,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:05,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:05,543.543 INFO    ] No existing commands found in stream
[2026-06-13 07:40:10,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:40:10,557.557 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 07:40:11,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:40:11,347.347 INFO    ] Checking for system updates...
[2026-06-13 07:40:11,368.368 INFO    ] 200
[2026-06-13 07:40:11,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:11,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:11,403.403 INFO    ] No update needed
[2026-06-13 07:40:11,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:11,424.424 INFO    ] 200
[2026-06-13 07:40:11,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:11,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:11,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:11,500.500 INFO    ] No camera update needed
[2026-06-13 07:40:11,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:11,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:11,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:11,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:13,548.548 INFO    ] ================================================
[2026-06-13 07:40:13,563.563 INFO    ] Launching Daemon at Sat Jun 13 07:40:13 IST 2026
[2026-06-13 07:40:13,574.574 INFO    ] ================================================
[2026-06-13 07:40:13,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:13
[2026-06-13 07:40:14,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:14,416.416 INFO    ] Initializing speech engine...
[2026-06-13 07:40:14,421.421 INFO    ] 2026-06-13 07:40:14
[2026-06-13 07:40:14,629.629 INFO    ] 2026-06-13 07:40:14
[2026-06-13 07:40:14,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:14,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:14,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:14,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:15,053.053 INFO    ] time= 13/06/2026 07:40:15
[2026-06-13 07:40:15,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:15,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:15,147.147 INFO    ] No existing commands found in stream
[2026-06-13 07:40:20,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:40:20,161.161 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 07:40:24,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:40:24,345.345 INFO    ] Checking for system updates...
[2026-06-13 07:40:24,366.366 INFO    ] 200
[2026-06-13 07:40:24,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:24,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:24,402.402 INFO    ] No update needed
[2026-06-13 07:40:24,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:24,425.425 INFO    ] 200
[2026-06-13 07:40:24,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:24,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:24,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:24,492.492 INFO    ] No camera update needed
[2026-06-13 07:40:24,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:24,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:24,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:24,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:26,540.540 INFO    ] ================================================
[2026-06-13 07:40:26,555.555 INFO    ] Launching Daemon at Sat Jun 13 07:40:26 IST 2026
[2026-06-13 07:40:26,566.566 INFO    ] ================================================
[2026-06-13 07:40:26,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:26
[2026-06-13 07:40:27,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:27,406.406 INFO    ] Initializing speech engine...
[2026-06-13 07:40:27,410.410 INFO    ] 2026-06-13 07:40:27
[2026-06-13 07:40:27,616.616 INFO    ] 2026-06-13 07:40:27
[2026-06-13 07:40:27,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:27,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:27,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:27,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:28,036.036 INFO    ] time= 13/06/2026 07:40:27
[2026-06-13 07:40:28,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:28,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:28,132.132 INFO    ] No existing commands found in stream
[2026-06-13 07:40:33,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:40:33,143.143 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 07:40:34,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:40:34,517.517 INFO    ] Checking for system updates...
[2026-06-13 07:40:34,540.540 INFO    ] 200
[2026-06-13 07:40:34,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:34,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:34,573.573 INFO    ] No update needed
[2026-06-13 07:40:34,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:34,594.594 INFO    ] 200
[2026-06-13 07:40:34,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:34,621.621 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:34,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:40:34,659.659 INFO    ] No camera update needed
[2026-06-13 07:40:34,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:34,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:34,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:34,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:36,710.710 INFO    ] ================================================
[2026-06-13 07:40:36,730.730 INFO    ] Launching Daemon at Sat Jun 13 07:40:36 IST 2026
[2026-06-13 07:40:36,741.741 INFO    ] ================================================
[2026-06-13 07:40:37,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:37
[2026-06-13 07:40:37,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:37,569.569 INFO    ] Initializing speech engine...
[2026-06-13 07:40:37,574.574 INFO    ] 2026-06-13 07:40:37
[2026-06-13 07:40:37,782.782 INFO    ] 2026-06-13 07:40:37
[2026-06-13 07:40:37,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:37,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:38,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:38,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:38,184.184 INFO    ] time= 13/06/2026 07:40:38
[2026-06-13 07:40:38,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:38,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:38,300.300 INFO    ] No existing commands found in stream
[2026-06-13 07:40:43,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:40:43,314.314 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 07:40:45,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:40:45,274.274 INFO    ] Checking for system updates...
[2026-06-13 07:40:45,295.295 INFO    ] 200
[2026-06-13 07:40:45,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:45,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:45,329.329 INFO    ] No update needed
[2026-06-13 07:40:45,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:45,351.351 INFO    ] 200
[2026-06-13 07:40:45,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:45,378.378 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:45,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:45,420.420 INFO    ] No camera update needed
[2026-06-13 07:40:45,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:45,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:45,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:45,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:47,470.470 INFO    ] ================================================
[2026-06-13 07:40:47,485.485 INFO    ] Launching Daemon at Sat Jun 13 07:40:47 IST 2026
[2026-06-13 07:40:47,495.495 INFO    ] ================================================
[2026-06-13 07:40:47,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:47
[2026-06-13 07:40:48,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:48,288.288 INFO    ] Initializing speech engine...
[2026-06-13 07:40:48,294.294 INFO    ] 2026-06-13 07:40:48
[2026-06-13 07:40:48,498.498 INFO    ] 2026-06-13 07:40:48
[2026-06-13 07:40:48,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:48,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:48,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:48,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:48,898.898 INFO    ] time= 13/06/2026 07:40:48
[2026-06-13 07:40:48,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:48,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:49,012.012 INFO    ] No existing commands found in stream
[2026-06-13 07:40:54,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:40:54,025.025 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 07:40:56,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:40:56,181.181 INFO    ] Checking for system updates...
[2026-06-13 07:40:56,216.216 INFO    ] 200
[2026-06-13 07:40:56,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:56,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:56,251.251 INFO    ] No update needed
[2026-06-13 07:40:56,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 07:40:56,271.271 INFO    ] 200
[2026-06-13 07:40:56,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:40:56,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:40:56,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:40:56,338.338 INFO    ] No camera update needed
[2026-06-13 07:40:56,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:40:56,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:40:56,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:40:56,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:40:58,387.387 INFO    ] ================================================
[2026-06-13 07:40:58,403.403 INFO    ] Launching Daemon at Sat Jun 13 07:40:58 IST 2026
[2026-06-13 07:40:58,414.414 INFO    ] ================================================
[2026-06-13 07:40:58,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:40:58
[2026-06-13 07:40:59,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:40:59,223.223 INFO    ] Initializing speech engine...
[2026-06-13 07:40:59,231.231 INFO    ] 2026-06-13 07:40:59
[2026-06-13 07:40:59,441.441 INFO    ] 2026-06-13 07:40:59
[2026-06-13 07:40:59,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:40:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:40:59,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:40:59,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:40:59,833.833 INFO    ] time= 13/06/2026 07:40:59
[2026-06-13 07:40:59,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:40:59,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:40:59,951.951 INFO    ] No existing commands found in stream
[2026-06-13 07:41:04,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:41:04,965.965 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 07:41:06,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:41:06,109.109 INFO    ] Checking for system updates...
[2026-06-13 07:41:06,133.133 INFO    ] 200
[2026-06-13 07:41:06,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:06,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:41:06,166.166 INFO    ] No update needed
[2026-06-13 07:41:06,168.168 INFO    ] Checking for camera pi updates...
[2026-06-13 07:41:06,191.191 INFO    ] 200
[2026-06-13 07:41:06,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:06,217.217 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:41:06,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:41:06,260.260 INFO    ] No camera update needed
[2026-06-13 07:41:06,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:41:06,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:41:06,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:41:06,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:41:08,308.308 INFO    ] ================================================
[2026-06-13 07:41:08,324.324 INFO    ] Launching Daemon at Sat Jun 13 07:41:08 IST 2026
[2026-06-13 07:41:08,334.334 INFO    ] ================================================
[2026-06-13 07:41:08,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:41:08
[2026-06-13 07:41:08,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:41:09,131.131 INFO    ] Initializing speech engine...
[2026-06-13 07:41:09,139.139 INFO    ] 2026-06-13 07:41:09
[2026-06-13 07:41:09,364.364 INFO    ] 2026-06-13 07:41:09
[2026-06-13 07:41:09,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:41:09,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:41:09,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:41:09,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:41:09,762.762 INFO    ] time= 13/06/2026 07:41:09
[2026-06-13 07:41:09,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:41:09,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:41:09,921.921 INFO    ] No existing commands found in stream
[2026-06-13 07:41:14,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:41:14,934.934 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 07:41:17,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:41:17,927.927 INFO    ] Checking for system updates...
[2026-06-13 07:41:17,948.948 INFO    ] 200
[2026-06-13 07:41:17,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:17,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:41:17,983.983 INFO    ] No update needed
[2026-06-13 07:41:17,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 07:41:18,006.006 INFO    ] 200
[2026-06-13 07:41:18,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:18,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:41:18,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:41:18,071.071 INFO    ] No camera update needed
[2026-06-13 07:41:18,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:41:18,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:41:18,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:41:18,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:41:20,120.120 INFO    ] ================================================
[2026-06-13 07:41:20,136.136 INFO    ] Launching Daemon at Sat Jun 13 07:41:20 IST 2026
[2026-06-13 07:41:20,147.147 INFO    ] ================================================
[2026-06-13 07:41:20,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:41:20
[2026-06-13 07:41:20,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:41:20,981.981 INFO    ] Initializing speech engine...
[2026-06-13 07:41:20,991.991 INFO    ] 2026-06-13 07:41:20
[2026-06-13 07:41:21,201.201 INFO    ] 2026-06-13 07:41:21
[2026-06-13 07:41:21,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:41:21,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:41:21,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:41:21,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:41:21,621.621 INFO    ] time= 13/06/2026 07:41:21
[2026-06-13 07:41:21,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:41:21,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:41:21,720.720 INFO    ] No existing commands found in stream
[2026-06-13 07:41:26,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:41:26,748.748 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 07:41:28,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:41:28,595.595 INFO    ] Checking for system updates...
[2026-06-13 07:41:28,615.615 INFO    ] 200
[2026-06-13 07:41:28,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:28,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:41:28,649.649 INFO    ] No update needed
[2026-06-13 07:41:28,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 07:41:28,669.669 INFO    ] 200
[2026-06-13 07:41:28,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:28,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:41:28,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:41:28,744.744 INFO    ] No camera update needed
[2026-06-13 07:41:28,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:41:28,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:41:28,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:41:28,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:41:30,792.792 INFO    ] ================================================
[2026-06-13 07:41:30,807.807 INFO    ] Launching Daemon at Sat Jun 13 07:41:30 IST 2026
[2026-06-13 07:41:30,818.818 INFO    ] ================================================
[2026-06-13 07:41:31,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:41:31
[2026-06-13 07:41:31,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:41:31,680.680 INFO    ] Initializing speech engine...
[2026-06-13 07:41:31,685.685 INFO    ] 2026-06-13 07:41:31
[2026-06-13 07:41:31,891.891 INFO    ] 2026-06-13 07:41:31
[2026-06-13 07:41:31,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:41:32,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:41:32,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:41:32,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:41:32,347.347 INFO    ] time= 13/06/2026 07:41:32
[2026-06-13 07:41:32,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:41:32,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:41:32,450.450 INFO    ] No existing commands found in stream
[2026-06-13 07:41:37,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:41:37,464.464 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 07:41:41,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:41:41,572.572 INFO    ] Checking for system updates...
[2026-06-13 07:41:41,593.593 INFO    ] 200
[2026-06-13 07:41:41,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:41,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:41:41,627.627 INFO    ] No update needed
[2026-06-13 07:41:41,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 07:41:41,649.649 INFO    ] 200
[2026-06-13 07:41:41,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:41,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:41:41,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:41:41,823.823 INFO    ] No camera update needed
[2026-06-13 07:41:41,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:41:41,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:41:41,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:41:41,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:41:43,869.869 INFO    ] ================================================
[2026-06-13 07:41:43,885.885 INFO    ] Launching Daemon at Sat Jun 13 07:41:43 IST 2026
[2026-06-13 07:41:43,895.895 INFO    ] ================================================
[2026-06-13 07:41:44,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:41:44
[2026-06-13 07:41:44,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:41:44,712.712 INFO    ] Initializing speech engine...
[2026-06-13 07:41:44,717.717 INFO    ] 2026-06-13 07:41:44
[2026-06-13 07:41:44,921.921 INFO    ] 2026-06-13 07:41:44
[2026-06-13 07:41:44,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:41:45,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:41:45,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:41:45,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:41:45,329.329 INFO    ] time= 13/06/2026 07:41:45
[2026-06-13 07:41:45,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:41:45,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:41:45,434.434 INFO    ] No existing commands found in stream
[2026-06-13 07:41:50,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:41:50,446.446 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 07:41:54,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:41:54,678.678 INFO    ] Checking for system updates...
[2026-06-13 07:41:54,699.699 INFO    ] 200
[2026-06-13 07:41:54,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:54,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:41:54,732.732 INFO    ] No update needed
[2026-06-13 07:41:54,733.733 INFO    ] Checking for camera pi updates...
[2026-06-13 07:41:54,753.753 INFO    ] 200
[2026-06-13 07:41:54,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:41:54,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:41:54,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:41:54,814.814 INFO    ] No camera update needed
[2026-06-13 07:41:54,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:41:54,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:41:54,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:41:54,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:41:56,862.862 INFO    ] ================================================
[2026-06-13 07:41:56,879.879 INFO    ] Launching Daemon at Sat Jun 13 07:41:56 IST 2026
[2026-06-13 07:41:56,890.890 INFO    ] ================================================
[2026-06-13 07:41:57,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:41:57
[2026-06-13 07:41:57,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:41:57,749.749 INFO    ] Initializing speech engine...
[2026-06-13 07:41:57,759.759 INFO    ] 2026-06-13 07:41:57
[2026-06-13 07:41:57,991.991 INFO    ] 2026-06-13 07:41:57
[2026-06-13 07:41:58,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:41:58,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:41:58,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:41:58,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:41:58,420.420 INFO    ] time= 13/06/2026 07:41:58
[2026-06-13 07:41:58,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:41:58,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:41:58,557.557 INFO    ] No existing commands found in stream
[2026-06-13 07:42:03,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:42:03,591.591 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 07:42:04,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:42:04,897.897 INFO    ] Checking for system updates...
[2026-06-13 07:42:04,920.920 INFO    ] 200
[2026-06-13 07:42:04,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:04,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:42:04,953.953 INFO    ] No update needed
[2026-06-13 07:42:04,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 07:42:04,975.975 INFO    ] 200
[2026-06-13 07:42:04,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:05,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:42:05,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:42:05,035.035 INFO    ] No camera update needed
[2026-06-13 07:42:05,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:42:05,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:42:05,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:42:05,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:42:07,086.086 INFO    ] ================================================
[2026-06-13 07:42:07,101.101 INFO    ] Launching Daemon at Sat Jun 13 07:42:07 IST 2026
[2026-06-13 07:42:07,112.112 INFO    ] ================================================
[2026-06-13 07:42:07,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:42:07
[2026-06-13 07:42:07,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:42:07,931.931 INFO    ] Initializing speech engine...
[2026-06-13 07:42:07,936.936 INFO    ] 2026-06-13 07:42:07
[2026-06-13 07:42:08,140.140 INFO    ] 2026-06-13 07:42:08
[2026-06-13 07:42:08,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:42:08,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:42:08,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:42:08,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:42:08,542.542 INFO    ] time= 13/06/2026 07:42:08
[2026-06-13 07:42:08,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:42:08,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:42:08,656.656 INFO    ] No existing commands found in stream
[2026-06-13 07:42:13,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:42:13,670.670 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 07:42:17,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:42:17,646.646 INFO    ] Checking for system updates...
[2026-06-13 07:42:17,666.666 INFO    ] 200
[2026-06-13 07:42:17,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:17,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:42:17,699.699 INFO    ] No update needed
[2026-06-13 07:42:17,701.701 INFO    ] Checking for camera pi updates...
[2026-06-13 07:42:17,726.726 INFO    ] 200
[2026-06-13 07:42:17,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:17,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:42:17,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:42:17,799.799 INFO    ] No camera update needed
[2026-06-13 07:42:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:42:17,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:42:17,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:42:17,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:42:19,849.849 INFO    ] ================================================
[2026-06-13 07:42:19,865.865 INFO    ] Launching Daemon at Sat Jun 13 07:42:19 IST 2026
[2026-06-13 07:42:19,876.876 INFO    ] ================================================
[2026-06-13 07:42:20,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:42:20
[2026-06-13 07:42:20,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:42:20,892.892 INFO    ] Initializing speech engine...
[2026-06-13 07:42:20,901.901 INFO    ] 2026-06-13 07:42:20
[2026-06-13 07:42:21,163.163 INFO    ] 2026-06-13 07:42:21
[2026-06-13 07:42:21,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:42:21,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:42:21,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:42:21,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:42:21,625.625 INFO    ] time= 13/06/2026 07:42:21
[2026-06-13 07:42:21,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:42:21,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:42:21,781.781 INFO    ] No existing commands found in stream
[2026-06-13 07:42:26,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:42:26,820.820 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 07:42:29,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:42:29,552.552 INFO    ] Checking for system updates...
[2026-06-13 07:42:29,573.573 INFO    ] 200
[2026-06-13 07:42:29,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:29,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:42:29,606.606 INFO    ] No update needed
[2026-06-13 07:42:29,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 07:42:29,630.630 INFO    ] 200
[2026-06-13 07:42:29,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:29,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:42:29,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:42:29,693.693 INFO    ] No camera update needed
[2026-06-13 07:42:29,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:42:29,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:42:29,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:42:29,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:42:31,742.742 INFO    ] ================================================
[2026-06-13 07:42:31,760.760 INFO    ] Launching Daemon at Sat Jun 13 07:42:31 IST 2026
[2026-06-13 07:42:31,772.772 INFO    ] ================================================
[2026-06-13 07:42:32,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:42:32
[2026-06-13 07:42:32,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:42:33,167.167 INFO    ] Initializing speech engine...
[2026-06-13 07:42:33,173.173 INFO    ] 2026-06-13 07:42:33
[2026-06-13 07:42:33,466.466 INFO    ] 2026-06-13 07:42:33
[2026-06-13 07:42:33,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:42:33,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:42:33,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:42:33,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:42:33,819.819 INFO    ] time= 13/06/2026 07:42:33
[2026-06-13 07:42:33,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:42:33,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:42:33,897.897 INFO    ] No existing commands found in stream
[2026-06-13 07:42:38,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:42:38,912.912 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 07:42:42,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:42:42,189.189 INFO    ] Checking for system updates...
[2026-06-13 07:42:42,210.210 INFO    ] 200
[2026-06-13 07:42:42,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:42,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:42:42,243.243 INFO    ] No update needed
[2026-06-13 07:42:42,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 07:42:42,263.263 INFO    ] 200
[2026-06-13 07:42:42,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:42,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:42:42,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:42:42,329.329 INFO    ] No camera update needed
[2026-06-13 07:42:42,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:42:42,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:42:42,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:42:42,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:42:44,376.376 INFO    ] ================================================
[2026-06-13 07:42:44,391.391 INFO    ] Launching Daemon at Sat Jun 13 07:42:44 IST 2026
[2026-06-13 07:42:44,402.402 INFO    ] ================================================
[2026-06-13 07:42:44,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:42:44
[2026-06-13 07:42:45,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:42:45,195.195 INFO    ] Initializing speech engine...
[2026-06-13 07:42:45,203.203 INFO    ] 2026-06-13 07:42:45
[2026-06-13 07:42:45,425.425 INFO    ] 2026-06-13 07:42:45
[2026-06-13 07:42:45,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:42:45,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:42:45,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:42:45,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:42:45,856.856 INFO    ] time= 13/06/2026 07:42:45
[2026-06-13 07:42:45,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:42:45,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:42:45,975.975 INFO    ] No existing commands found in stream
[2026-06-13 07:42:50,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:42:50,989.989 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 07:42:54,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:42:54,407.407 INFO    ] Checking for system updates...
[2026-06-13 07:42:54,428.428 INFO    ] 200
[2026-06-13 07:42:54,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:54,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:42:54,462.462 INFO    ] No update needed
[2026-06-13 07:42:54,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 07:42:54,484.484 INFO    ] 200
[2026-06-13 07:42:54,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:42:54,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:42:54,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:42:54,563.563 INFO    ] No camera update needed
[2026-06-13 07:42:54,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:42:54,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:42:54,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:42:54,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:42:56,611.611 INFO    ] ================================================
[2026-06-13 07:42:56,627.627 INFO    ] Launching Daemon at Sat Jun 13 07:42:56 IST 2026
[2026-06-13 07:42:56,638.638 INFO    ] ================================================
[2026-06-13 07:42:56,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:42:56
[2026-06-13 07:42:57,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:42:57,402.402 INFO    ] Initializing speech engine...
[2026-06-13 07:42:57,411.411 INFO    ] 2026-06-13 07:42:57
[2026-06-13 07:42:57,632.632 INFO    ] 2026-06-13 07:42:57
[2026-06-13 07:42:57,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:42:57,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:42:57,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:42:58,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:42:58,053.053 INFO    ] time= 13/06/2026 07:42:58
[2026-06-13 07:42:58,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:42:58,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:42:58,182.182 INFO    ] No existing commands found in stream
[2026-06-13 07:43:03,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:43:03,193.193 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 07:43:06,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:43:06,076.076 INFO    ] Checking for system updates...
[2026-06-13 07:43:06,097.097 INFO    ] 200
[2026-06-13 07:43:06,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:06,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:06,132.132 INFO    ] No update needed
[2026-06-13 07:43:06,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 07:43:06,152.152 INFO    ] 200
[2026-06-13 07:43:06,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:06,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:43:06,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:06,225.225 INFO    ] No camera update needed
[2026-06-13 07:43:06,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:43:06,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:43:06,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:43:06,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:43:08,273.273 INFO    ] ================================================
[2026-06-13 07:43:08,288.288 INFO    ] Launching Daemon at Sat Jun 13 07:43:08 IST 2026
[2026-06-13 07:43:08,299.299 INFO    ] ================================================
[2026-06-13 07:43:08,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:43:08
[2026-06-13 07:43:08,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:43:09,074.074 INFO    ] Initializing speech engine...
[2026-06-13 07:43:09,079.079 INFO    ] 2026-06-13 07:43:09
[2026-06-13 07:43:09,306.306 INFO    ] 2026-06-13 07:43:09
[2026-06-13 07:43:09,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:43:09,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:43:09,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:43:09,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:43:09,554.554 INFO    ] time= 13/06/2026 07:43:09
[2026-06-13 07:43:09,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:43:09,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:43:09,650.650 INFO    ] No existing commands found in stream
[2026-06-13 07:43:14,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:43:14,683.683 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 07:43:15,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:43:15,606.606 INFO    ] Checking for system updates...
[2026-06-13 07:43:15,627.627 INFO    ] 200
[2026-06-13 07:43:15,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:15,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:43:15,660.660 INFO    ] No update needed
[2026-06-13 07:43:15,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 07:43:15,681.681 INFO    ] 200
[2026-06-13 07:43:15,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:15,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:43:15,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:43:15,742.742 INFO    ] No camera update needed
[2026-06-13 07:43:15,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:43:15,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:43:15,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:43:15,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:43:17,789.789 INFO    ] ================================================
[2026-06-13 07:43:17,804.804 INFO    ] Launching Daemon at Sat Jun 13 07:43:17 IST 2026
[2026-06-13 07:43:17,815.815 INFO    ] ================================================
[2026-06-13 07:43:18,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:43:18
[2026-06-13 07:43:18,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:43:18,636.636 INFO    ] Initializing speech engine...
[2026-06-13 07:43:18,645.645 INFO    ] 2026-06-13 07:43:18
[2026-06-13 07:43:18,859.859 INFO    ] 2026-06-13 07:43:18
[2026-06-13 07:43:18,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:43:19,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:43:19,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:43:19,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:43:19,282.282 INFO    ] time= 13/06/2026 07:43:19
[2026-06-13 07:43:19,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:43:19,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:43:19,384.384 INFO    ] No existing commands found in stream
[2026-06-13 07:43:24,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:43:24,398.398 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 07:43:27,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:43:27,927.927 INFO    ] Checking for system updates...
[2026-06-13 07:43:27,950.950 INFO    ] 200
[2026-06-13 07:43:27,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:27,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:27,984.984 INFO    ] No update needed
[2026-06-13 07:43:27,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 07:43:28,008.008 INFO    ] 200
[2026-06-13 07:43:28,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:28,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:43:28,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:28,083.083 INFO    ] No camera update needed
[2026-06-13 07:43:28,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:43:28,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:43:28,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:43:28,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:43:30,132.132 INFO    ] ================================================
[2026-06-13 07:43:30,147.147 INFO    ] Launching Daemon at Sat Jun 13 07:43:30 IST 2026
[2026-06-13 07:43:30,158.158 INFO    ] ================================================
[2026-06-13 07:43:30,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:43:30
[2026-06-13 07:43:30,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:43:30,970.970 INFO    ] Initializing speech engine...
[2026-06-13 07:43:30,978.978 INFO    ] 2026-06-13 07:43:30
[2026-06-13 07:43:31,201.201 INFO    ] 2026-06-13 07:43:31
[2026-06-13 07:43:31,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:43:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:43:31,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:43:31,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:43:31,616.616 INFO    ] time= 13/06/2026 07:43:31
[2026-06-13 07:43:31,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:43:31,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:43:31,751.751 INFO    ] No existing commands found in stream
[2026-06-13 07:43:36,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:43:36,764.764 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 07:43:39,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:43:39,887.887 INFO    ] Checking for system updates...
[2026-06-13 07:43:39,908.908 INFO    ] 200
[2026-06-13 07:43:39,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:39,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:43:39,942.942 INFO    ] No update needed
[2026-06-13 07:43:39,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 07:43:39,964.964 INFO    ] 200
[2026-06-13 07:43:39,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:39,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:43:40,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:43:40,033.033 INFO    ] No camera update needed
[2026-06-13 07:43:40,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:43:40,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:43:40,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:43:40,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:43:42,081.081 INFO    ] ================================================
[2026-06-13 07:43:42,096.096 INFO    ] Launching Daemon at Sat Jun 13 07:43:42 IST 2026
[2026-06-13 07:43:42,106.106 INFO    ] ================================================
[2026-06-13 07:43:42,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:43:42
[2026-06-13 07:43:42,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:43:42,892.892 INFO    ] Initializing speech engine...
[2026-06-13 07:43:42,896.896 INFO    ] 2026-06-13 07:43:42
[2026-06-13 07:43:43,127.127 INFO    ] 2026-06-13 07:43:43
[2026-06-13 07:43:43,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:43:43,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:43:43,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:43:43,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:43:43,562.562 INFO    ] time= 13/06/2026 07:43:43
[2026-06-13 07:43:43,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:43:43,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:43:43,679.679 INFO    ] No existing commands found in stream
[2026-06-13 07:43:48,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:43:48,691.691 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 07:43:52,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:43:52,378.378 INFO    ] Checking for system updates...
[2026-06-13 07:43:52,399.399 INFO    ] 200
[2026-06-13 07:43:52,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:52,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:52,432.432 INFO    ] No update needed
[2026-06-13 07:43:52,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 07:43:52,453.453 INFO    ] 200
[2026-06-13 07:43:52,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:43:52,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:43:52,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:43:52,619.619 INFO    ] No camera update needed
[2026-06-13 07:43:52,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:43:52,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:43:52,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:43:52,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:43:54,665.665 INFO    ] ================================================
[2026-06-13 07:43:54,681.681 INFO    ] Launching Daemon at Sat Jun 13 07:43:54 IST 2026
[2026-06-13 07:43:54,691.691 INFO    ] ================================================
[2026-06-13 07:43:55,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:43:55
[2026-06-13 07:43:55,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:43:55,501.501 INFO    ] Initializing speech engine...
[2026-06-13 07:43:55,506.506 INFO    ] 2026-06-13 07:43:55
[2026-06-13 07:43:55,709.709 INFO    ] 2026-06-13 07:43:55
[2026-06-13 07:43:55,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:43:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:43:55,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:43:56,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:43:56,102.102 INFO    ] time= 13/06/2026 07:43:56
[2026-06-13 07:43:56,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:43:56,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:43:56,244.244 INFO    ] No existing commands found in stream
[2026-06-13 07:44:01,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:44:01,264.264 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 07:44:04,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:44:04,991.991 INFO    ] Checking for system updates...
[2026-06-13 07:44:05,011.011 INFO    ] 200
[2026-06-13 07:44:05,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:05,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:44:05,045.045 INFO    ] No update needed
[2026-06-13 07:44:05,046.046 INFO    ] Checking for camera pi updates...
[2026-06-13 07:44:05,067.067 INFO    ] 200
[2026-06-13 07:44:05,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:05,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:44:05,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:44:05,140.140 INFO    ] No camera update needed
[2026-06-13 07:44:05,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:44:05,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:44:05,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:44:05,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:44:07,188.188 INFO    ] ================================================
[2026-06-13 07:44:07,203.203 INFO    ] Launching Daemon at Sat Jun 13 07:44:07 IST 2026
[2026-06-13 07:44:07,215.215 INFO    ] ================================================
[2026-06-13 07:44:07,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:44:07
[2026-06-13 07:44:07,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:44:08,064.064 INFO    ] Initializing speech engine...
[2026-06-13 07:44:08,068.068 INFO    ] 2026-06-13 07:44:08
[2026-06-13 07:44:08,276.276 INFO    ] 2026-06-13 07:44:08
[2026-06-13 07:44:08,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:44:08,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:44:08,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:44:08,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:44:08,696.696 INFO    ] time= 13/06/2026 07:44:08
[2026-06-13 07:44:08,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:44:08,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:44:08,789.789 INFO    ] No existing commands found in stream
[2026-06-13 07:44:13,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:44:13,801.801 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 07:44:17,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:44:17,267.267 INFO    ] Checking for system updates...
[2026-06-13 07:44:17,288.288 INFO    ] 200
[2026-06-13 07:44:17,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:17,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:17,324.324 INFO    ] No update needed
[2026-06-13 07:44:17,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 07:44:17,348.348 INFO    ] 200
[2026-06-13 07:44:17,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:17,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:44:17,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:17,415.415 INFO    ] No camera update needed
[2026-06-13 07:44:17,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:44:17,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:44:17,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:44:17,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:44:19,465.465 INFO    ] ================================================
[2026-06-13 07:44:19,481.481 INFO    ] Launching Daemon at Sat Jun 13 07:44:19 IST 2026
[2026-06-13 07:44:19,491.491 INFO    ] ================================================
[2026-06-13 07:44:19,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:44:19
[2026-06-13 07:44:20,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:44:20,367.367 INFO    ] Initializing speech engine...
[2026-06-13 07:44:20,373.373 INFO    ] 2026-06-13 07:44:20
[2026-06-13 07:44:20,578.578 INFO    ] 2026-06-13 07:44:20
[2026-06-13 07:44:20,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:44:20,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:44:20,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:44:20,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:44:20,984.984 INFO    ] time= 13/06/2026 07:44:20
[2026-06-13 07:44:21,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:44:21,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:44:21,093.093 INFO    ] No existing commands found in stream
[2026-06-13 07:44:26,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:44:26,108.108 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 07:44:28,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:44:28,301.301 INFO    ] Checking for system updates...
[2026-06-13 07:44:28,322.322 INFO    ] 200
[2026-06-13 07:44:28,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:28,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:28,356.356 INFO    ] No update needed
[2026-06-13 07:44:28,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 07:44:28,377.377 INFO    ] 200
[2026-06-13 07:44:28,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:28,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:44:28,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:28,444.444 INFO    ] No camera update needed
[2026-06-13 07:44:28,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:44:28,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:44:28,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:44:28,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:44:30,492.492 INFO    ] ================================================
[2026-06-13 07:44:30,507.507 INFO    ] Launching Daemon at Sat Jun 13 07:44:30 IST 2026
[2026-06-13 07:44:30,518.518 INFO    ] ================================================
[2026-06-13 07:44:30,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:44:30
[2026-06-13 07:44:31,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:44:31,362.362 INFO    ] Initializing speech engine...
[2026-06-13 07:44:31,368.368 INFO    ] 2026-06-13 07:44:31
[2026-06-13 07:44:31,579.579 INFO    ] 2026-06-13 07:44:31
[2026-06-13 07:44:31,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:44:31,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:44:31,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:44:31,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:44:31,991.991 INFO    ] time= 13/06/2026 07:44:31
[2026-06-13 07:44:32,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:44:32,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:44:32,116.116 INFO    ] No existing commands found in stream
[2026-06-13 07:44:37,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:44:37,130.130 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 07:44:39,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:44:39,232.232 INFO    ] Checking for system updates...
[2026-06-13 07:44:39,256.256 INFO    ] 200
[2026-06-13 07:44:39,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:39,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:39,290.290 INFO    ] No update needed
[2026-06-13 07:44:39,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 07:44:39,311.311 INFO    ] 200
[2026-06-13 07:44:39,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:39,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:44:39,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:44:39,374.374 INFO    ] No camera update needed
[2026-06-13 07:44:39,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:44:39,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:44:39,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:44:39,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:44:41,421.421 INFO    ] ================================================
[2026-06-13 07:44:41,436.436 INFO    ] Launching Daemon at Sat Jun 13 07:44:41 IST 2026
[2026-06-13 07:44:41,447.447 INFO    ] ================================================
[2026-06-13 07:44:41,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:44:41
[2026-06-13 07:44:42,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:44:42,225.225 INFO    ] Initializing speech engine...
[2026-06-13 07:44:42,233.233 INFO    ] 2026-06-13 07:44:42
[2026-06-13 07:44:42,452.452 INFO    ] 2026-06-13 07:44:42
[2026-06-13 07:44:42,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:44:42,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:44:42,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:44:42,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:44:42,871.871 INFO    ] time= 13/06/2026 07:44:42
[2026-06-13 07:44:42,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:44:42,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:44:43,008.008 INFO    ] No existing commands found in stream
[2026-06-13 07:44:48,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:44:48,026.026 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 07:44:52,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:44:52,306.306 INFO    ] Checking for system updates...
[2026-06-13 07:44:52,328.328 INFO    ] 200
[2026-06-13 07:44:52,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:52,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:44:52,364.364 INFO    ] No update needed
[2026-06-13 07:44:52,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 07:44:52,387.387 INFO    ] 200
[2026-06-13 07:44:52,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:44:52,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:44:52,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:44:52,458.458 INFO    ] No camera update needed
[2026-06-13 07:44:52,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:44:52,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:44:52,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:44:52,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:44:54,507.507 INFO    ] ================================================
[2026-06-13 07:44:54,523.523 INFO    ] Launching Daemon at Sat Jun 13 07:44:54 IST 2026
[2026-06-13 07:44:54,534.534 INFO    ] ================================================
[2026-06-13 07:44:54,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:44:54
[2026-06-13 07:44:55,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:44:55,342.342 INFO    ] Initializing speech engine...
[2026-06-13 07:44:55,346.346 INFO    ] 2026-06-13 07:44:55
[2026-06-13 07:44:55,577.577 INFO    ] 2026-06-13 07:44:55
[2026-06-13 07:44:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:44:55,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:44:55,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:44:55,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:44:55,952.952 INFO    ] time= 13/06/2026 07:44:55
[2026-06-13 07:44:55,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:44:56,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:44:56,133.133 INFO    ] No existing commands found in stream
[2026-06-13 07:45:01,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:01,146.146 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 07:45:01,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:45:01,986.986 INFO    ] Checking for system updates...
[2026-06-13 07:45:02,014.014 INFO    ] 200
[2026-06-13 07:45:02,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:02,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:02,056.056 INFO    ] No update needed
[2026-06-13 07:45:02,057.057 INFO    ] Checking for camera pi updates...
[2026-06-13 07:45:02,091.091 INFO    ] 200
[2026-06-13 07:45:02,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:02,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:45:02,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:02,159.159 INFO    ] No camera update needed
[2026-06-13 07:45:02,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:45:02,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:45:02,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:45:02,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:45:04,204.204 INFO    ] ================================================
[2026-06-13 07:45:04,220.220 INFO    ] Launching Daemon at Sat Jun 13 07:45:04 IST 2026
[2026-06-13 07:45:04,231.231 INFO    ] ================================================
[2026-06-13 07:45:04,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:45:04
[2026-06-13 07:45:04,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:45:05,055.055 INFO    ] Initializing speech engine...
[2026-06-13 07:45:05,060.060 INFO    ] 2026-06-13 07:45:05
[2026-06-13 07:45:05,265.265 INFO    ] 2026-06-13 07:45:05
[2026-06-13 07:45:05,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:45:05,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:45:05,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:45:05,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:45:05,704.704 INFO    ] time= 13/06/2026 07:45:05
[2026-06-13 07:45:05,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:45:05,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:45:05,803.803 INFO    ] No existing commands found in stream
[2026-06-13 07:45:10,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:10,815.815 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 07:45:11,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:45:11,983.983 INFO    ] Checking for system updates...
[2026-06-13 07:45:12,005.005 INFO    ] 200
[2026-06-13 07:45:12,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:12,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:12,042.042 INFO    ] No update needed
[2026-06-13 07:45:12,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 07:45:12,063.063 INFO    ] 200
[2026-06-13 07:45:12,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:12,088.088 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:45:12,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:12,133.133 INFO    ] No camera update needed
[2026-06-13 07:45:12,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:45:12,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:45:12,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:45:12,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:45:14,182.182 INFO    ] ================================================
[2026-06-13 07:45:14,197.197 INFO    ] Launching Daemon at Sat Jun 13 07:45:14 IST 2026
[2026-06-13 07:45:14,208.208 INFO    ] ================================================
[2026-06-13 07:45:14,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:45:14
[2026-06-13 07:45:15,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:45:15,758.758 INFO    ] Initializing speech engine...
[2026-06-13 07:45:15,771.771 INFO    ] 2026-06-13 07:45:15
[2026-06-13 07:45:16,092.092 INFO    ] 2026-06-13 07:45:16
[2026-06-13 07:45:16,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:45:16,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:45:16,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:45:16,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:45:16,608.608 INFO    ] time= 13/06/2026 07:45:16
[2026-06-13 07:45:16,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:45:16,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:45:16,776.776 INFO    ] No existing commands found in stream
[2026-06-13 07:45:21,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:21,799.799 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 07:45:25,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:45:25,284.284 INFO    ] Checking for system updates...
[2026-06-13 07:45:25,305.305 INFO    ] 200
[2026-06-13 07:45:25,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:25,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:45:25,341.341 INFO    ] No update needed
[2026-06-13 07:45:25,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 07:45:25,362.362 INFO    ] 200
[2026-06-13 07:45:25,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:25,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:45:25,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:45:25,426.426 INFO    ] No camera update needed
[2026-06-13 07:45:25,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:45:25,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:45:25,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:45:25,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:45:27,474.474 INFO    ] ================================================
[2026-06-13 07:45:27,490.490 INFO    ] Launching Daemon at Sat Jun 13 07:45:27 IST 2026
[2026-06-13 07:45:27,501.501 INFO    ] ================================================
[2026-06-13 07:45:27,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:45:27
[2026-06-13 07:45:28,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:45:28,367.367 INFO    ] Initializing speech engine...
[2026-06-13 07:45:28,373.373 INFO    ] 2026-06-13 07:45:28
[2026-06-13 07:45:28,585.585 INFO    ] 2026-06-13 07:45:28
[2026-06-13 07:45:28,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:45:28,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:45:28,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:45:28,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:45:28,997.997 INFO    ] time= 13/06/2026 07:45:28
[2026-06-13 07:45:29,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:45:29,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:45:29,109.109 INFO    ] No existing commands found in stream
[2026-06-13 07:45:34,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:34,124.124 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 07:45:37,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:45:37,645.645 INFO    ] Checking for system updates...
[2026-06-13 07:45:37,666.666 INFO    ] 200
[2026-06-13 07:45:37,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:37,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:37,703.703 INFO    ] No update needed
[2026-06-13 07:45:37,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 07:45:37,726.726 INFO    ] 200
[2026-06-13 07:45:37,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:37,752.752 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:45:37,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:45:37,790.790 INFO    ] No camera update needed
[2026-06-13 07:45:37,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:45:37,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:45:37,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:45:37,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:45:39,837.837 INFO    ] ================================================
[2026-06-13 07:45:39,854.854 INFO    ] Launching Daemon at Sat Jun 13 07:45:39 IST 2026
[2026-06-13 07:45:39,865.865 INFO    ] ================================================
[2026-06-13 07:45:40,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:45:40
[2026-06-13 07:45:40,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:45:40,658.658 INFO    ] Initializing speech engine...
[2026-06-13 07:45:40,663.663 INFO    ] 2026-06-13 07:45:40
[2026-06-13 07:45:40,867.867 INFO    ] 2026-06-13 07:45:40
[2026-06-13 07:45:40,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:45:41,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:45:41,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:45:41,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:45:41,281.281 INFO    ] time= 13/06/2026 07:45:41
[2026-06-13 07:45:41,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:45:41,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:45:41,389.389 INFO    ] No existing commands found in stream
[2026-06-13 07:45:46,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:46,406.406 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 07:45:50,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:45:50,012.012 INFO    ] Checking for system updates...
[2026-06-13 07:45:50,032.032 INFO    ] 200
[2026-06-13 07:45:50,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:50,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:45:50,065.065 INFO    ] No update needed
[2026-06-13 07:45:50,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 07:45:50,086.086 INFO    ] 200
[2026-06-13 07:45:50,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:45:50,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:45:50,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:45:50,150.150 INFO    ] No camera update needed
[2026-06-13 07:45:50,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:45:50,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:45:50,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:45:50,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:45:52,199.199 INFO    ] ================================================
[2026-06-13 07:45:52,218.218 INFO    ] Launching Daemon at Sat Jun 13 07:45:52 IST 2026
[2026-06-13 07:45:52,232.232 INFO    ] ================================================
[2026-06-13 07:45:52,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:45:52
[2026-06-13 07:45:52,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:45:53,034.034 INFO    ] Initializing speech engine...
[2026-06-13 07:45:53,041.041 INFO    ] 2026-06-13 07:45:53
[2026-06-13 07:45:53,255.255 INFO    ] 2026-06-13 07:45:53
[2026-06-13 07:45:53,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:45:53,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:45:53,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:45:53,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:45:53,679.679 INFO    ] time= 13/06/2026 07:45:53
[2026-06-13 07:45:53,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:45:53,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:45:53,815.815 INFO    ] No existing commands found in stream
[2026-06-13 07:45:58,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:45:58,825.825 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 07:45:59,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:45:59,957.957 INFO    ] Checking for system updates...
[2026-06-13 07:45:59,978.978 INFO    ] 200
[2026-06-13 07:45:59,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:00,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:00,012.012 INFO    ] No update needed
[2026-06-13 07:46:00,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:00,033.033 INFO    ] 200
[2026-06-13 07:46:00,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:00,058.058 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:00,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:00,202.202 INFO    ] No camera update needed
[2026-06-13 07:46:00,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:00,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:00,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:00,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:46:02,245.245 INFO    ] ================================================
[2026-06-13 07:46:02,258.258 INFO    ] Launching Daemon at Sat Jun 13 07:46:02 IST 2026
[2026-06-13 07:46:02,269.269 INFO    ] ================================================
[2026-06-13 07:46:02,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:46:02
[2026-06-13 07:46:02,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:46:03,072.072 INFO    ] Initializing speech engine...
[2026-06-13 07:46:03,077.077 INFO    ] 2026-06-13 07:46:03
[2026-06-13 07:46:03,306.306 INFO    ] 2026-06-13 07:46:03
[2026-06-13 07:46:03,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:46:03,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:46:03,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:46:03,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:46:03,556.556 INFO    ] time= 13/06/2026 07:46:03
[2026-06-13 07:46:03,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:46:03,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:46:03,647.647 INFO    ] No existing commands found in stream
[2026-06-13 07:46:08,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:46:08,679.679 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 07:46:10,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:46:10,931.931 INFO    ] Checking for system updates...
[2026-06-13 07:46:10,953.953 INFO    ] 200
[2026-06-13 07:46:10,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:10,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:10,986.986 INFO    ] No update needed
[2026-06-13 07:46:10,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:11,009.009 INFO    ] 200
[2026-06-13 07:46:11,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:11,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:11,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:46:11,084.084 INFO    ] No camera update needed
[2026-06-13 07:46:11,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:11,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:11,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:11,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:46:13,132.132 INFO    ] ================================================
[2026-06-13 07:46:13,148.148 INFO    ] Launching Daemon at Sat Jun 13 07:46:13 IST 2026
[2026-06-13 07:46:13,160.160 INFO    ] ================================================
[2026-06-13 07:46:13,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:46:13
[2026-06-13 07:46:13,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:46:13,980.980 INFO    ] Initializing speech engine...
[2026-06-13 07:46:13,985.985 INFO    ] 2026-06-13 07:46:13
[2026-06-13 07:46:14,191.191 INFO    ] 2026-06-13 07:46:14
[2026-06-13 07:46:14,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:46:14,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:46:14,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:46:14,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:46:14,601.601 INFO    ] time= 13/06/2026 07:46:14
[2026-06-13 07:46:14,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:46:14,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:46:14,712.712 INFO    ] No existing commands found in stream
[2026-06-13 07:46:19,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:46:19,725.725 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 07:46:23,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:46:23,747.747 INFO    ] Checking for system updates...
[2026-06-13 07:46:23,768.768 INFO    ] 200
[2026-06-13 07:46:23,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:23,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:23,801.801 INFO    ] No update needed
[2026-06-13 07:46:23,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:23,823.823 INFO    ] 200
[2026-06-13 07:46:23,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:23,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:23,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:23,889.889 INFO    ] No camera update needed
[2026-06-13 07:46:23,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:23,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:23,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:23,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:46:25,936.936 INFO    ] ================================================
[2026-06-13 07:46:25,952.952 INFO    ] Launching Daemon at Sat Jun 13 07:46:25 IST 2026
[2026-06-13 07:46:25,963.963 INFO    ] ================================================
[2026-06-13 07:46:26,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:46:26
[2026-06-13 07:46:26,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:46:26,775.775 INFO    ] Initializing speech engine...
[2026-06-13 07:46:26,785.785 INFO    ] 2026-06-13 07:46:26
[2026-06-13 07:46:26,999.999 INFO    ] 2026-06-13 07:46:26
[2026-06-13 07:46:27,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:46:27,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:46:27,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:46:27,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:46:27,381.381 INFO    ] time= 13/06/2026 07:46:27
[2026-06-13 07:46:27,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:46:27,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:46:27,589.589 INFO    ] No existing commands found in stream
[2026-06-13 07:46:32,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:46:32,610.610 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 07:46:36,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:46:36,453.453 INFO    ] Checking for system updates...
[2026-06-13 07:46:36,474.474 INFO    ] 200
[2026-06-13 07:46:36,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:36,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:46:36,507.507 INFO    ] No update needed
[2026-06-13 07:46:36,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:36,528.528 INFO    ] 200
[2026-06-13 07:46:36,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:36,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:36,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:46:36,595.595 INFO    ] No camera update needed
[2026-06-13 07:46:36,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:36,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:36,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:36,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:46:38,642.642 INFO    ] ================================================
[2026-06-13 07:46:38,657.657 INFO    ] Launching Daemon at Sat Jun 13 07:46:38 IST 2026
[2026-06-13 07:46:38,668.668 INFO    ] ================================================
[2026-06-13 07:46:39,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:46:38
[2026-06-13 07:46:39,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:46:39,447.447 INFO    ] Initializing speech engine...
[2026-06-13 07:46:39,451.451 INFO    ] 2026-06-13 07:46:39
[2026-06-13 07:46:39,670.670 INFO    ] 2026-06-13 07:46:39
[2026-06-13 07:46:39,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:46:39,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:46:39,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:46:40,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:46:40,077.077 INFO    ] time= 13/06/2026 07:46:40
[2026-06-13 07:46:40,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:46:40,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:46:40,194.194 INFO    ] No existing commands found in stream
[2026-06-13 07:46:45,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:46:45,207.207 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 07:46:46,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:46:46,857.857 INFO    ] Checking for system updates...
[2026-06-13 07:46:46,878.878 INFO    ] 200
[2026-06-13 07:46:46,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:46,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:46,914.914 INFO    ] No update needed
[2026-06-13 07:46:46,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:46,938.938 INFO    ] 200
[2026-06-13 07:46:46,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:46,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:46,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:47,001.001 INFO    ] No camera update needed
[2026-06-13 07:46:47,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:47,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:47,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:47,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:46:49,049.049 INFO    ] ================================================
[2026-06-13 07:46:49,064.064 INFO    ] Launching Daemon at Sat Jun 13 07:46:49 IST 2026
[2026-06-13 07:46:49,075.075 INFO    ] ================================================
[2026-06-13 07:46:49,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:46:49
[2026-06-13 07:46:49,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:46:49,923.923 INFO    ] Initializing speech engine...
[2026-06-13 07:46:49,929.929 INFO    ] 2026-06-13 07:46:49
[2026-06-13 07:46:50,131.131 INFO    ] 2026-06-13 07:46:50
[2026-06-13 07:46:50,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:46:50,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:46:50,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:46:50,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:46:50,549.549 INFO    ] time= 13/06/2026 07:46:50
[2026-06-13 07:46:50,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:46:50,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:46:50,693.693 INFO    ] No existing commands found in stream
[2026-06-13 07:46:55,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:46:55,707.707 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 07:46:58,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:46:58,538.538 INFO    ] Checking for system updates...
[2026-06-13 07:46:58,559.559 INFO    ] 200
[2026-06-13 07:46:58,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:58,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:58,592.592 INFO    ] No update needed
[2026-06-13 07:46:58,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 07:46:58,613.613 INFO    ] 200
[2026-06-13 07:46:58,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:46:58,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:46:58,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:46:58,674.674 INFO    ] No camera update needed
[2026-06-13 07:46:58,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:46:58,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:46:58,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:46:58,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:00,721.721 INFO    ] ================================================
[2026-06-13 07:47:00,737.737 INFO    ] Launching Daemon at Sat Jun 13 07:47:00 IST 2026
[2026-06-13 07:47:00,748.748 INFO    ] ================================================
[2026-06-13 07:47:01,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:01
[2026-06-13 07:47:01,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:01,541.541 INFO    ] Initializing speech engine...
[2026-06-13 07:47:01,550.550 INFO    ] 2026-06-13 07:47:01
[2026-06-13 07:47:01,750.750 INFO    ] 2026-06-13 07:47:01
[2026-06-13 07:47:01,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:01,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:01,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:02,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:02,110.110 INFO    ] time= 13/06/2026 07:47:02
[2026-06-13 07:47:02,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:02,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:02,255.255 INFO    ] No existing commands found in stream
[2026-06-13 07:47:07,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:47:07,299.299 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 07:47:09,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:47:09,622.622 INFO    ] Checking for system updates...
[2026-06-13 07:47:09,643.643 INFO    ] 200
[2026-06-13 07:47:09,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:09,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:09,676.676 INFO    ] No update needed
[2026-06-13 07:47:09,677.677 INFO    ] Checking for camera pi updates...
[2026-06-13 07:47:09,698.698 INFO    ] 200
[2026-06-13 07:47:09,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:09,724.724 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:47:09,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:09,768.768 INFO    ] No camera update needed
[2026-06-13 07:47:09,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:47:09,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:47:09,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:47:09,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:11,816.816 INFO    ] ================================================
[2026-06-13 07:47:11,831.831 INFO    ] Launching Daemon at Sat Jun 13 07:47:11 IST 2026
[2026-06-13 07:47:11,842.842 INFO    ] ================================================
[2026-06-13 07:47:12,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:12
[2026-06-13 07:47:12,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:12,965.965 INFO    ] Initializing speech engine...
[2026-06-13 07:47:12,982.982 INFO    ] 2026-06-13 07:47:12
[2026-06-13 07:47:13,256.256 INFO    ] 2026-06-13 07:47:13
[2026-06-13 07:47:13,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:13,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:13,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:13,710.710 INFO    ] time= 13/06/2026 07:47:13
[2026-06-13 07:47:13,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:13,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:13,867.867 INFO    ] No existing commands found in stream
[2026-06-13 07:47:18,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:47:18,912.912 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 07:47:19,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:47:19,423.423 INFO    ] Checking for system updates...
[2026-06-13 07:47:19,445.445 INFO    ] 200
[2026-06-13 07:47:19,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:19,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:19,478.478 INFO    ] No update needed
[2026-06-13 07:47:19,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 07:47:19,499.499 INFO    ] 200
[2026-06-13 07:47:19,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:19,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:47:19,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:47:19,573.573 INFO    ] No camera update needed
[2026-06-13 07:47:19,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:47:19,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:47:19,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:47:19,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:21,620.620 INFO    ] ================================================
[2026-06-13 07:47:21,640.640 INFO    ] Launching Daemon at Sat Jun 13 07:47:21 IST 2026
[2026-06-13 07:47:21,651.651 INFO    ] ================================================
[2026-06-13 07:47:22,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:21
[2026-06-13 07:47:22,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:22,472.472 INFO    ] Initializing speech engine...
[2026-06-13 07:47:22,478.478 INFO    ] 2026-06-13 07:47:22
[2026-06-13 07:47:22,693.693 INFO    ] 2026-06-13 07:47:22
[2026-06-13 07:47:22,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:22,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:22,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:23,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:23,091.091 INFO    ] time= 13/06/2026 07:47:23
[2026-06-13 07:47:23,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:23,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:23,249.249 INFO    ] No existing commands found in stream
[2026-06-13 07:47:28,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:47:28,261.261 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 07:47:32,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:47:32,269.269 INFO    ] Checking for system updates...
[2026-06-13 07:47:32,293.293 INFO    ] 200
[2026-06-13 07:47:32,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:32,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:32,332.332 INFO    ] No update needed
[2026-06-13 07:47:32,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 07:47:32,357.357 INFO    ] 200
[2026-06-13 07:47:32,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:32,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:47:32,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:32,419.419 INFO    ] No camera update needed
[2026-06-13 07:47:32,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:47:32,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:47:32,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:47:32,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:34,471.471 INFO    ] ================================================
[2026-06-13 07:47:34,486.486 INFO    ] Launching Daemon at Sat Jun 13 07:47:34 IST 2026
[2026-06-13 07:47:34,498.498 INFO    ] ================================================
[2026-06-13 07:47:34,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:34
[2026-06-13 07:47:35,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:35,972.972 INFO    ] Initializing speech engine...
[2026-06-13 07:47:35,984.984 INFO    ] 2026-06-13 07:47:35
[2026-06-13 07:47:36,272.272 INFO    ] 2026-06-13 07:47:36
[2026-06-13 07:47:36,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:36,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:36,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:36,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:36,727.727 INFO    ] time= 13/06/2026 07:47:36
[2026-06-13 07:47:36,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:36,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:36,906.906 INFO    ] No existing commands found in stream
[2026-06-13 07:47:41,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:47:41,941.941 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 07:47:44,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:47:44,059.059 INFO    ] Checking for system updates...
[2026-06-13 07:47:44,080.080 INFO    ] 200
[2026-06-13 07:47:44,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:44,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:47:44,116.116 INFO    ] No update needed
[2026-06-13 07:47:44,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 07:47:44,139.139 INFO    ] 200
[2026-06-13 07:47:44,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:44,164.164 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:47:44,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:47:44,206.206 INFO    ] No camera update needed
[2026-06-13 07:47:44,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:47:44,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:47:44,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:47:44,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:46,254.254 INFO    ] ================================================
[2026-06-13 07:47:46,270.270 INFO    ] Launching Daemon at Sat Jun 13 07:47:46 IST 2026
[2026-06-13 07:47:46,281.281 INFO    ] ================================================
[2026-06-13 07:47:46,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:46
[2026-06-13 07:47:46,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:47,098.098 INFO    ] Initializing speech engine...
[2026-06-13 07:47:47,103.103 INFO    ] 2026-06-13 07:47:47
[2026-06-13 07:47:47,307.307 INFO    ] 2026-06-13 07:47:47
[2026-06-13 07:47:47,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:47,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:47,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:47,724.724 INFO    ] time= 13/06/2026 07:47:47
[2026-06-13 07:47:47,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:47,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:47,820.820 INFO    ] No existing commands found in stream
[2026-06-13 07:47:52,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:47:52,837.837 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 07:47:54,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:47:54,967.967 INFO    ] Checking for system updates...
[2026-06-13 07:47:54,989.989 INFO    ] 200
[2026-06-13 07:47:54,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:55,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:55,022.022 INFO    ] No update needed
[2026-06-13 07:47:55,023.023 INFO    ] Checking for camera pi updates...
[2026-06-13 07:47:55,043.043 INFO    ] 200
[2026-06-13 07:47:55,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:47:55,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:47:55,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:47:55,106.106 INFO    ] No camera update needed
[2026-06-13 07:47:55,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:47:55,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:47:55,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:47:55,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:47:57,157.157 INFO    ] ================================================
[2026-06-13 07:47:57,173.173 INFO    ] Launching Daemon at Sat Jun 13 07:47:57 IST 2026
[2026-06-13 07:47:57,183.183 INFO    ] ================================================
[2026-06-13 07:47:57,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:47:57
[2026-06-13 07:47:57,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:47:57,972.972 INFO    ] Initializing speech engine...
[2026-06-13 07:47:57,981.981 INFO    ] 2026-06-13 07:47:57
[2026-06-13 07:47:58,184.184 INFO    ] 2026-06-13 07:47:58
[2026-06-13 07:47:58,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:47:58,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:47:58,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:47:58,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:47:58,584.584 INFO    ] time= 13/06/2026 07:47:58
[2026-06-13 07:47:58,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:47:58,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:47:58,697.697 INFO    ] No existing commands found in stream
[2026-06-13 07:48:03,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:48:03,711.711 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 07:48:05,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:48:05,869.869 INFO    ] Checking for system updates...
[2026-06-13 07:48:05,890.890 INFO    ] 200
[2026-06-13 07:48:05,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:05,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:48:05,925.925 INFO    ] No update needed
[2026-06-13 07:48:05,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 07:48:05,945.945 INFO    ] 200
[2026-06-13 07:48:05,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:05,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:48:06,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:48:06,108.108 INFO    ] No camera update needed
[2026-06-13 07:48:06,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:48:06,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:48:06,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:48:06,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:48:08,162.162 INFO    ] ================================================
[2026-06-13 07:48:08,177.177 INFO    ] Launching Daemon at Sat Jun 13 07:48:08 IST 2026
[2026-06-13 07:48:08,189.189 INFO    ] ================================================
[2026-06-13 07:48:08,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:48:08
[2026-06-13 07:48:09,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:48:09,591.591 INFO    ] Initializing speech engine...
[2026-06-13 07:48:09,609.609 INFO    ] 2026-06-13 07:48:09
[2026-06-13 07:48:09,862.862 INFO    ] 2026-06-13 07:48:09
[2026-06-13 07:48:09,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:48:10,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:48:10,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:48:10,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:48:10,219.219 INFO    ] time= 13/06/2026 07:48:10
[2026-06-13 07:48:10,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:48:10,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:48:10,316.316 INFO    ] No existing commands found in stream
[2026-06-13 07:48:15,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:48:15,331.331 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 07:48:19,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:48:19,481.481 INFO    ] Checking for system updates...
[2026-06-13 07:48:19,502.502 INFO    ] 200
[2026-06-13 07:48:19,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:19,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:19,535.535 INFO    ] No update needed
[2026-06-13 07:48:19,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 07:48:19,556.556 INFO    ] 200
[2026-06-13 07:48:19,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:19,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:48:19,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:19,630.630 INFO    ] No camera update needed
[2026-06-13 07:48:19,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:48:19,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:48:19,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:48:19,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:48:21,680.680 INFO    ] ================================================
[2026-06-13 07:48:21,696.696 INFO    ] Launching Daemon at Sat Jun 13 07:48:21 IST 2026
[2026-06-13 07:48:21,707.707 INFO    ] ================================================
[2026-06-13 07:48:22,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:48:22
[2026-06-13 07:48:22,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:48:22,502.502 INFO    ] Initializing speech engine...
[2026-06-13 07:48:22,510.510 INFO    ] 2026-06-13 07:48:22
[2026-06-13 07:48:22,723.723 INFO    ] 2026-06-13 07:48:22
[2026-06-13 07:48:22,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:48:22,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:48:22,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:48:23,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:48:23,121.121 INFO    ] time= 13/06/2026 07:48:23
[2026-06-13 07:48:23,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:48:23,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:48:23,242.242 INFO    ] No existing commands found in stream
[2026-06-13 07:48:28,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:48:28,255.255 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 07:48:29,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:48:29,562.562 INFO    ] Checking for system updates...
[2026-06-13 07:48:29,582.582 INFO    ] 200
[2026-06-13 07:48:29,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:29,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:29,617.617 INFO    ] No update needed
[2026-06-13 07:48:29,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 07:48:29,638.638 INFO    ] 200
[2026-06-13 07:48:29,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:29,665.665 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:48:29,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:29,701.701 INFO    ] No camera update needed
[2026-06-13 07:48:29,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:48:29,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:48:29,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:48:29,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:48:31,742.742 INFO    ] ================================================
[2026-06-13 07:48:31,752.752 INFO    ] Launching Daemon at Sat Jun 13 07:48:31 IST 2026
[2026-06-13 07:48:31,758.758 INFO    ] ================================================
[2026-06-13 07:48:32,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:48:32
[2026-06-13 07:48:32,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:48:32,520.520 INFO    ] Initializing speech engine...
[2026-06-13 07:48:32,524.524 INFO    ] 2026-06-13 07:48:32
[2026-06-13 07:48:32,727.727 INFO    ] 2026-06-13 07:48:32
[2026-06-13 07:48:32,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:48:32,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:48:32,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:48:33,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:48:33,132.132 INFO    ] time= 13/06/2026 07:48:33
[2026-06-13 07:48:33,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:48:33,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:48:33,314.314 INFO    ] No existing commands found in stream
[2026-06-13 07:48:38,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:48:38,328.328 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 07:48:40,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:48:40,207.207 INFO    ] Checking for system updates...
[2026-06-13 07:48:40,229.229 INFO    ] 200
[2026-06-13 07:48:40,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:40,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:40,262.262 INFO    ] No update needed
[2026-06-13 07:48:40,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 07:48:40,284.284 INFO    ] 200
[2026-06-13 07:48:40,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:40,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:48:40,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:48:40,350.350 INFO    ] No camera update needed
[2026-06-13 07:48:40,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:48:40,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:48:40,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:48:40,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:48:42,398.398 INFO    ] ================================================
[2026-06-13 07:48:42,413.413 INFO    ] Launching Daemon at Sat Jun 13 07:48:42 IST 2026
[2026-06-13 07:48:42,424.424 INFO    ] ================================================
[2026-06-13 07:48:42,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:48:42
[2026-06-13 07:48:43,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:48:43,318.318 INFO    ] Initializing speech engine...
[2026-06-13 07:48:43,321.321 INFO    ] 2026-06-13 07:48:43
[2026-06-13 07:48:43,533.533 INFO    ] 2026-06-13 07:48:43
[2026-06-13 07:48:43,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:48:43,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:48:43,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:48:43,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:48:43,934.934 INFO    ] time= 13/06/2026 07:48:43
[2026-06-13 07:48:43,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:48:43,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:48:44,058.058 INFO    ] No existing commands found in stream
[2026-06-13 07:48:49,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:48:49,076.076 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 07:48:51,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:48:51,361.361 INFO    ] Checking for system updates...
[2026-06-13 07:48:51,382.382 INFO    ] 200
[2026-06-13 07:48:51,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:51,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:48:51,416.416 INFO    ] No update needed
[2026-06-13 07:48:51,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 07:48:51,439.439 INFO    ] 200
[2026-06-13 07:48:51,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:48:51,465.465 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:48:51,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:48:51,506.506 INFO    ] No camera update needed
[2026-06-13 07:48:51,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:48:51,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:48:51,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:48:51,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:48:53,556.556 INFO    ] ================================================
[2026-06-13 07:48:53,571.571 INFO    ] Launching Daemon at Sat Jun 13 07:48:53 IST 2026
[2026-06-13 07:48:53,582.582 INFO    ] ================================================
[2026-06-13 07:48:53,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:48:53
[2026-06-13 07:48:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:48:54,414.414 INFO    ] Initializing speech engine...
[2026-06-13 07:48:54,420.420 INFO    ] 2026-06-13 07:48:54
[2026-06-13 07:48:54,624.624 INFO    ] 2026-06-13 07:48:54
[2026-06-13 07:48:54,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:48:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:48:54,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:48:54,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:48:55,041.041 INFO    ] time= 13/06/2026 07:48:54
[2026-06-13 07:48:55,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:48:55,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:48:55,147.147 INFO    ] No existing commands found in stream
[2026-06-13 07:49:00,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:00,161.161 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 07:49:01,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:49:01,133.133 INFO    ] Checking for system updates...
[2026-06-13 07:49:01,154.154 INFO    ] 200
[2026-06-13 07:49:01,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:01,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:49:01,189.189 INFO    ] No update needed
[2026-06-13 07:49:01,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 07:49:01,226.226 INFO    ] 200
[2026-06-13 07:49:01,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:01,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:49:01,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:01,365.365 INFO    ] No camera update needed
[2026-06-13 07:49:01,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:49:01,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:49:01,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:49:01,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:49:03,412.412 INFO    ] ================================================
[2026-06-13 07:49:03,428.428 INFO    ] Launching Daemon at Sat Jun 13 07:49:03 IST 2026
[2026-06-13 07:49:03,439.439 INFO    ] ================================================
[2026-06-13 07:49:03,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:49:03
[2026-06-13 07:49:04,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:49:04,221.221 INFO    ] Initializing speech engine...
[2026-06-13 07:49:04,229.229 INFO    ] 2026-06-13 07:49:04
[2026-06-13 07:49:04,455.455 INFO    ] 2026-06-13 07:49:04
[2026-06-13 07:49:04,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:49:04,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:49:04,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:49:04,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:49:04,837.837 INFO    ] time= 13/06/2026 07:49:04
[2026-06-13 07:49:04,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:49:04,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:49:04,951.951 INFO    ] No existing commands found in stream
[2026-06-13 07:49:09,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:09,966.966 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 07:49:12,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:49:12,851.851 INFO    ] Checking for system updates...
[2026-06-13 07:49:12,871.871 INFO    ] 200
[2026-06-13 07:49:12,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:12,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:12,904.904 INFO    ] No update needed
[2026-06-13 07:49:12,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 07:49:12,925.925 INFO    ] 200
[2026-06-13 07:49:12,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:12,951.951 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:49:12,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:49:12,988.988 INFO    ] No camera update needed
[2026-06-13 07:49:12,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:49:12,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:49:12,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:49:12,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:49:15,038.038 INFO    ] ================================================
[2026-06-13 07:49:15,487.487 INFO    ] Launching Daemon at Sat Jun 13 07:49:15 IST 2026
[2026-06-13 07:49:15,501.501 INFO    ] ================================================
[2026-06-13 07:49:15,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:49:15
[2026-06-13 07:49:16,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:49:16,515.515 INFO    ] Initializing speech engine...
[2026-06-13 07:49:16,522.522 INFO    ] 2026-06-13 07:49:16
[2026-06-13 07:49:16,782.782 INFO    ] 2026-06-13 07:49:16
[2026-06-13 07:49:16,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:49:16,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:49:17,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:49:17,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:49:17,133.133 INFO    ] time= 13/06/2026 07:49:17
[2026-06-13 07:49:17,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:49:17,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:49:17,231.231 INFO    ] No existing commands found in stream
[2026-06-13 07:49:22,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:22,246.246 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 07:49:24,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:49:24,572.572 INFO    ] Checking for system updates...
[2026-06-13 07:49:24,592.592 INFO    ] 200
[2026-06-13 07:49:24,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:24,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:24,627.627 INFO    ] No update needed
[2026-06-13 07:49:24,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 07:49:24,648.648 INFO    ] 200
[2026-06-13 07:49:24,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:24,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:49:24,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:24,717.717 INFO    ] No camera update needed
[2026-06-13 07:49:24,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:49:24,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:49:24,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:49:24,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:49:26,766.766 INFO    ] ================================================
[2026-06-13 07:49:26,781.781 INFO    ] Launching Daemon at Sat Jun 13 07:49:26 IST 2026
[2026-06-13 07:49:26,792.792 INFO    ] ================================================
[2026-06-13 07:49:27,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:49:27
[2026-06-13 07:49:27,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:49:27,673.673 INFO    ] Initializing speech engine...
[2026-06-13 07:49:27,677.677 INFO    ] 2026-06-13 07:49:27
[2026-06-13 07:49:27,879.879 INFO    ] 2026-06-13 07:49:27
[2026-06-13 07:49:27,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:49:28,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:49:28,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:49:28,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:49:28,291.291 INFO    ] time= 13/06/2026 07:49:28
[2026-06-13 07:49:28,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:49:28,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:49:28,394.394 INFO    ] No existing commands found in stream
[2026-06-13 07:49:33,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:33,408.408 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 07:49:37,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:49:37,507.507 INFO    ] Checking for system updates...
[2026-06-13 07:49:37,528.528 INFO    ] 200
[2026-06-13 07:49:37,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:37,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:37,565.565 INFO    ] No update needed
[2026-06-13 07:49:37,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 07:49:37,585.585 INFO    ] 200
[2026-06-13 07:49:37,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:37,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:49:37,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:49:37,656.656 INFO    ] No camera update needed
[2026-06-13 07:49:37,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:49:37,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:49:37,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:49:37,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:49:39,705.705 INFO    ] ================================================
[2026-06-13 07:49:39,720.720 INFO    ] Launching Daemon at Sat Jun 13 07:49:39 IST 2026
[2026-06-13 07:49:39,731.731 INFO    ] ================================================
[2026-06-13 07:49:40,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:49:40
[2026-06-13 07:49:40,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:49:40,515.515 INFO    ] Initializing speech engine...
[2026-06-13 07:49:40,525.525 INFO    ] 2026-06-13 07:49:40
[2026-06-13 07:49:40,733.733 INFO    ] 2026-06-13 07:49:40
[2026-06-13 07:49:40,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:49:40,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:49:40,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:49:41,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:49:41,143.143 INFO    ] time= 13/06/2026 07:49:41
[2026-06-13 07:49:41,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:49:41,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:49:41,201.201 INFO    ] No existing commands found in stream
[2026-06-13 07:49:46,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:46,213.213 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 07:49:50,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:49:50,517.517 INFO    ] Checking for system updates...
[2026-06-13 07:49:50,539.539 INFO    ] 200
[2026-06-13 07:49:50,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:50,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:49:50,572.572 INFO    ] No update needed
[2026-06-13 07:49:50,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 07:49:50,598.598 INFO    ] 200
[2026-06-13 07:49:50,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:49:50,630.630 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:49:50,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:49:50,669.669 INFO    ] No camera update needed
[2026-06-13 07:49:50,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:49:50,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:49:50,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:49:50,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:49:52,717.717 INFO    ] ================================================
[2026-06-13 07:49:52,733.733 INFO    ] Launching Daemon at Sat Jun 13 07:49:52 IST 2026
[2026-06-13 07:49:52,744.744 INFO    ] ================================================
[2026-06-13 07:49:53,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:49:53
[2026-06-13 07:49:53,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:49:53,601.601 INFO    ] Initializing speech engine...
[2026-06-13 07:49:53,605.605 INFO    ] 2026-06-13 07:49:53
[2026-06-13 07:49:53,812.812 INFO    ] 2026-06-13 07:49:53
[2026-06-13 07:49:53,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:49:53,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:49:54,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:49:54,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:49:54,224.224 INFO    ] time= 13/06/2026 07:49:54
[2026-06-13 07:49:54,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:49:54,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:49:54,329.329 INFO    ] No existing commands found in stream
[2026-06-13 07:49:59,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:49:59,347.347 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 07:50:01,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:50:01,768.768 INFO    ] Checking for system updates...
[2026-06-13 07:50:01,865.865 INFO    ] 200
[2026-06-13 07:50:01,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:01,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:50:01,974.974 INFO    ] No update needed
[2026-06-13 07:50:01,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:02,009.009 INFO    ] 200
[2026-06-13 07:50:02,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:02,053.053 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:02,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:02,110.110 INFO    ] No camera update needed
[2026-06-13 07:50:02,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:02,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:02,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:02,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:50:04,174.174 INFO    ] ================================================
[2026-06-13 07:50:04,189.189 INFO    ] Launching Daemon at Sat Jun 13 07:50:04 IST 2026
[2026-06-13 07:50:04,200.200 INFO    ] ================================================
[2026-06-13 07:50:04,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:50:04
[2026-06-13 07:50:04,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:50:05,014.014 INFO    ] Initializing speech engine...
[2026-06-13 07:50:05,022.022 INFO    ] 2026-06-13 07:50:05
[2026-06-13 07:50:05,245.245 INFO    ] 2026-06-13 07:50:05
[2026-06-13 07:50:05,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:50:05,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:50:05,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:50:05,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:50:05,616.616 INFO    ] time= 13/06/2026 07:50:05
[2026-06-13 07:50:05,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:50:05,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:50:05,804.804 INFO    ] No existing commands found in stream
[2026-06-13 07:50:10,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:50:10,817.817 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 07:50:11,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:50:11,502.502 INFO    ] Checking for system updates...
[2026-06-13 07:50:11,527.527 INFO    ] 200
[2026-06-13 07:50:11,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:11,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:11,565.565 INFO    ] No update needed
[2026-06-13 07:50:11,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:11,589.589 INFO    ] 200
[2026-06-13 07:50:11,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:11,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:11,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:11,757.757 INFO    ] No camera update needed
[2026-06-13 07:50:11,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:11,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:11,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:11,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:50:13,807.807 INFO    ] ================================================
[2026-06-13 07:50:13,822.822 INFO    ] Launching Daemon at Sat Jun 13 07:50:13 IST 2026
[2026-06-13 07:50:13,833.833 INFO    ] ================================================
[2026-06-13 07:50:14,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:50:14
[2026-06-13 07:50:15,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:50:15,154.154 INFO    ] Initializing speech engine...
[2026-06-13 07:50:15,159.159 INFO    ] 2026-06-13 07:50:15
[2026-06-13 07:50:15,361.361 INFO    ] 2026-06-13 07:50:15
[2026-06-13 07:50:15,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:50:15,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:50:15,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:50:15,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:50:15,773.773 INFO    ] time= 13/06/2026 07:50:15
[2026-06-13 07:50:15,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:50:15,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:50:15,880.880 INFO    ] No existing commands found in stream
[2026-06-13 07:50:20,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:50:20,896.896 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 07:50:22,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:50:22,758.758 INFO    ] Checking for system updates...
[2026-06-13 07:50:22,780.780 INFO    ] 200
[2026-06-13 07:50:22,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:22,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:22,813.813 INFO    ] No update needed
[2026-06-13 07:50:22,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:22,835.835 INFO    ] 200
[2026-06-13 07:50:22,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:22,861.861 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:22,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:50:22,902.902 INFO    ] No camera update needed
[2026-06-13 07:50:22,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:22,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:22,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:22,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:50:24,950.950 INFO    ] ================================================
[2026-06-13 07:50:24,966.966 INFO    ] Launching Daemon at Sat Jun 13 07:50:24 IST 2026
[2026-06-13 07:50:24,977.977 INFO    ] ================================================
[2026-06-13 07:50:25,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:50:25
[2026-06-13 07:50:25,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:50:25,793.793 INFO    ] Initializing speech engine...
[2026-06-13 07:50:25,800.800 INFO    ] 2026-06-13 07:50:25
[2026-06-13 07:50:26,013.013 INFO    ] 2026-06-13 07:50:25
[2026-06-13 07:50:26,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:50:26,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:50:26,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:50:26,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:50:26,422.422 INFO    ] time= 13/06/2026 07:50:26
[2026-06-13 07:50:26,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:50:26,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:50:26,551.551 INFO    ] No existing commands found in stream
[2026-06-13 07:50:31,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:50:31,563.563 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 07:50:33,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:50:33,437.437 INFO    ] Checking for system updates...
[2026-06-13 07:50:33,457.457 INFO    ] 200
[2026-06-13 07:50:33,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:33,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:33,491.491 INFO    ] No update needed
[2026-06-13 07:50:33,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:33,511.511 INFO    ] 200
[2026-06-13 07:50:33,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:33,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:33,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:33,575.575 INFO    ] No camera update needed
[2026-06-13 07:50:33,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:33,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:33,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:33,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:50:35,623.623 INFO    ] ================================================
[2026-06-13 07:50:35,638.638 INFO    ] Launching Daemon at Sat Jun 13 07:50:35 IST 2026
[2026-06-13 07:50:35,649.649 INFO    ] ================================================
[2026-06-13 07:50:36,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:50:36
[2026-06-13 07:50:36,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:50:36,506.506 INFO    ] Initializing speech engine...
[2026-06-13 07:50:36,512.512 INFO    ] 2026-06-13 07:50:36
[2026-06-13 07:50:36,722.722 INFO    ] 2026-06-13 07:50:36
[2026-06-13 07:50:36,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:50:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:50:36,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:50:37,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:50:37,117.117 INFO    ] time= 13/06/2026 07:50:37
[2026-06-13 07:50:37,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:50:37,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:50:37,244.244 INFO    ] No existing commands found in stream
[2026-06-13 07:50:42,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:50:42,258.258 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 07:50:45,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:50:45,594.594 INFO    ] Checking for system updates...
[2026-06-13 07:50:45,616.616 INFO    ] 200
[2026-06-13 07:50:45,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:45,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:45,650.650 INFO    ] No update needed
[2026-06-13 07:50:45,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:45,672.672 INFO    ] 200
[2026-06-13 07:50:45,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:45,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:45,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:50:45,741.741 INFO    ] No camera update needed
[2026-06-13 07:50:45,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:45,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:45,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:45,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:50:47,782.782 INFO    ] ================================================
[2026-06-13 07:50:47,790.790 INFO    ] Launching Daemon at Sat Jun 13 07:50:47 IST 2026
[2026-06-13 07:50:47,796.796 INFO    ] ================================================
[2026-06-13 07:50:48,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:50:48
[2026-06-13 07:50:48,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:50:48,547.547 INFO    ] Initializing speech engine...
[2026-06-13 07:50:48,552.552 INFO    ] 2026-06-13 07:50:48
[2026-06-13 07:50:48,780.780 INFO    ] 2026-06-13 07:50:48
[2026-06-13 07:50:48,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:50:48,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:50:48,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:50:49,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:50:49,130.130 INFO    ] time= 13/06/2026 07:50:49
[2026-06-13 07:50:49,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:50:49,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:50:49,305.305 INFO    ] No existing commands found in stream
[2026-06-13 07:50:54,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:50:54,328.328 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 07:50:58,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:50:58,174.174 INFO    ] Checking for system updates...
[2026-06-13 07:50:58,195.195 INFO    ] 200
[2026-06-13 07:50:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:58,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:50:58,230.230 INFO    ] No update needed
[2026-06-13 07:50:58,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 07:50:58,252.252 INFO    ] 200
[2026-06-13 07:50:58,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:50:58,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:50:58,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:50:58,314.314 INFO    ] No camera update needed
[2026-06-13 07:50:58,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:50:58,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:50:58,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:50:58,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:00,362.362 INFO    ] ================================================
[2026-06-13 07:51:00,377.377 INFO    ] Launching Daemon at Sat Jun 13 07:51:00 IST 2026
[2026-06-13 07:51:00,387.387 INFO    ] ================================================
[2026-06-13 07:51:00,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:00
[2026-06-13 07:51:01,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:01,210.210 INFO    ] Initializing speech engine...
[2026-06-13 07:51:01,215.215 INFO    ] 2026-06-13 07:51:01
[2026-06-13 07:51:01,422.422 INFO    ] 2026-06-13 07:51:01
[2026-06-13 07:51:01,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:01,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:01,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:01,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:01,815.815 INFO    ] time= 13/06/2026 07:51:01
[2026-06-13 07:51:01,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:01,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:02,013.013 INFO    ] No existing commands found in stream
[2026-06-13 07:51:07,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:51:07,027.027 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 07:51:10,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:51:10,254.254 INFO    ] Checking for system updates...
[2026-06-13 07:51:10,275.275 INFO    ] 200
[2026-06-13 07:51:10,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:10,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:51:10,311.311 INFO    ] No update needed
[2026-06-13 07:51:10,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 07:51:10,331.331 INFO    ] 200
[2026-06-13 07:51:10,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:10,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:51:10,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:51:10,397.397 INFO    ] No camera update needed
[2026-06-13 07:51:10,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:51:10,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:51:10,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:51:10,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:12,447.447 INFO    ] ================================================
[2026-06-13 07:51:12,462.462 INFO    ] Launching Daemon at Sat Jun 13 07:51:12 IST 2026
[2026-06-13 07:51:12,473.473 INFO    ] ================================================
[2026-06-13 07:51:12,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:12
[2026-06-13 07:51:13,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:13,332.332 INFO    ] Initializing speech engine...
[2026-06-13 07:51:13,343.343 INFO    ] 2026-06-13 07:51:13
[2026-06-13 07:51:13,553.553 INFO    ] 2026-06-13 07:51:13
[2026-06-13 07:51:13,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:13,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:13,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:13,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:13,979.979 INFO    ] time= 13/06/2026 07:51:13
[2026-06-13 07:51:14,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:14,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:14,148.148 INFO    ] No existing commands found in stream
[2026-06-13 07:51:19,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:51:19,172.172 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 07:51:19,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:51:19,553.553 INFO    ] Checking for system updates...
[2026-06-13 07:51:19,575.575 INFO    ] 200
[2026-06-13 07:51:19,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:19,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:19,611.611 INFO    ] No update needed
[2026-06-13 07:51:19,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 07:51:19,634.634 INFO    ] 200
[2026-06-13 07:51:19,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:19,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:51:19,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:19,701.701 INFO    ] No camera update needed
[2026-06-13 07:51:19,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:51:19,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:51:19,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:51:19,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:21,744.744 INFO    ] ================================================
[2026-06-13 07:51:21,753.753 INFO    ] Launching Daemon at Sat Jun 13 07:51:21 IST 2026
[2026-06-13 07:51:21,759.759 INFO    ] ================================================
[2026-06-13 07:51:22,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:22
[2026-06-13 07:51:22,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:22,571.571 INFO    ] Initializing speech engine...
[2026-06-13 07:51:22,576.576 INFO    ] 2026-06-13 07:51:22
[2026-06-13 07:51:22,805.805 INFO    ] 2026-06-13 07:51:22
[2026-06-13 07:51:22,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:22,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:22,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:23,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:23,246.246 INFO    ] time= 13/06/2026 07:51:23
[2026-06-13 07:51:23,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:23,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:23,372.372 INFO    ] No existing commands found in stream
[2026-06-13 07:51:28,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:51:28,387.387 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 07:51:31,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:51:31,274.274 INFO    ] Checking for system updates...
[2026-06-13 07:51:31,295.295 INFO    ] 200
[2026-06-13 07:51:31,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:31,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:51:31,328.328 INFO    ] No update needed
[2026-06-13 07:51:31,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 07:51:31,349.349 INFO    ] 200
[2026-06-13 07:51:31,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:31,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:51:31,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:51:31,418.418 INFO    ] No camera update needed
[2026-06-13 07:51:31,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:51:31,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:51:31,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:51:31,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:33,458.458 INFO    ] ================================================
[2026-06-13 07:51:33,474.474 INFO    ] Launching Daemon at Sat Jun 13 07:51:33 IST 2026
[2026-06-13 07:51:33,485.485 INFO    ] ================================================
[2026-06-13 07:51:33,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:33
[2026-06-13 07:51:34,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:34,335.335 INFO    ] Initializing speech engine...
[2026-06-13 07:51:34,340.340 INFO    ] 2026-06-13 07:51:34
[2026-06-13 07:51:34,547.547 INFO    ] 2026-06-13 07:51:34
[2026-06-13 07:51:34,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:34,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:34,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:34,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:34,970.970 INFO    ] time= 13/06/2026 07:51:34
[2026-06-13 07:51:34,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:34,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:35,063.063 INFO    ] No existing commands found in stream
[2026-06-13 07:51:40,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:51:40,072.072 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 07:51:41,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:51:41,888.888 INFO    ] Checking for system updates...
[2026-06-13 07:51:41,910.910 INFO    ] 200
[2026-06-13 07:51:41,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:41,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:41,943.943 INFO    ] No update needed
[2026-06-13 07:51:41,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 07:51:41,964.964 INFO    ] 200
[2026-06-13 07:51:41,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:41,990.990 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:51:42,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:42,036.036 INFO    ] No camera update needed
[2026-06-13 07:51:42,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:51:42,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:51:42,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:51:42,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:44,085.085 INFO    ] ================================================
[2026-06-13 07:51:44,101.101 INFO    ] Launching Daemon at Sat Jun 13 07:51:44 IST 2026
[2026-06-13 07:51:44,112.112 INFO    ] ================================================
[2026-06-13 07:51:44,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:44
[2026-06-13 07:51:44,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:44,946.946 INFO    ] Initializing speech engine...
[2026-06-13 07:51:44,951.951 INFO    ] 2026-06-13 07:51:44
[2026-06-13 07:51:45,155.155 INFO    ] 2026-06-13 07:51:45
[2026-06-13 07:51:45,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:45,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:45,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:45,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:45,566.566 INFO    ] time= 13/06/2026 07:51:45
[2026-06-13 07:51:45,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:45,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:45,671.671 INFO    ] No existing commands found in stream
[2026-06-13 07:51:50,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:51:50,684.684 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 07:51:53,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:51:53,623.623 INFO    ] Checking for system updates...
[2026-06-13 07:51:53,644.644 INFO    ] 200
[2026-06-13 07:51:53,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:53,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:53,677.677 INFO    ] No update needed
[2026-06-13 07:51:53,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 07:51:53,700.700 INFO    ] 200
[2026-06-13 07:51:53,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:51:53,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:51:53,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:51:53,766.766 INFO    ] No camera update needed
[2026-06-13 07:51:53,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:51:53,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:51:53,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:51:53,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:51:55,814.814 INFO    ] ================================================
[2026-06-13 07:51:55,830.830 INFO    ] Launching Daemon at Sat Jun 13 07:51:55 IST 2026
[2026-06-13 07:51:55,841.841 INFO    ] ================================================
[2026-06-13 07:51:56,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:51:56
[2026-06-13 07:51:56,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:51:56,617.617 INFO    ] Initializing speech engine...
[2026-06-13 07:51:56,620.620 INFO    ] 2026-06-13 07:51:56
[2026-06-13 07:51:56,839.839 INFO    ] 2026-06-13 07:51:56
[2026-06-13 07:51:56,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:51:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:51:57,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:51:57,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:51:57,249.249 INFO    ] time= 13/06/2026 07:51:57
[2026-06-13 07:51:57,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:51:57,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:51:57,362.362 INFO    ] No existing commands found in stream
[2026-06-13 07:52:02,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:52:02,371.371 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 07:52:05,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:52:05,315.315 INFO    ] Checking for system updates...
[2026-06-13 07:52:05,351.351 INFO    ] 200
[2026-06-13 07:52:05,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:05,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:52:05,408.408 INFO    ] No update needed
[2026-06-13 07:52:05,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 07:52:05,445.445 INFO    ] 200
[2026-06-13 07:52:05,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:05,489.489 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:52:05,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:52:05,536.536 INFO    ] No camera update needed
[2026-06-13 07:52:05,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:52:05,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:52:05,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:52:05,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:52:07,594.594 INFO    ] ================================================
[2026-06-13 07:52:07,610.610 INFO    ] Launching Daemon at Sat Jun 13 07:52:07 IST 2026
[2026-06-13 07:52:07,621.621 INFO    ] ================================================
[2026-06-13 07:52:07,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:52:07
[2026-06-13 07:52:08,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:52:08,440.440 INFO    ] Initializing speech engine...
[2026-06-13 07:52:08,445.445 INFO    ] 2026-06-13 07:52:08
[2026-06-13 07:52:08,649.649 INFO    ] 2026-06-13 07:52:08
[2026-06-13 07:52:08,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:52:08,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:52:08,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:52:08,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:52:09,059.059 INFO    ] time= 13/06/2026 07:52:09
[2026-06-13 07:52:09,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:52:09,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:52:09,175.175 INFO    ] No existing commands found in stream
[2026-06-13 07:52:14,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:52:14,189.189 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 07:52:16,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:52:16,085.085 INFO    ] Checking for system updates...
[2026-06-13 07:52:16,121.121 INFO    ] 200
[2026-06-13 07:52:16,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:16,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:16,182.182 INFO    ] No update needed
[2026-06-13 07:52:16,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 07:52:16,236.236 INFO    ] 200
[2026-06-13 07:52:16,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:16,285.285 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:52:16,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:16,429.429 INFO    ] No camera update needed
[2026-06-13 07:52:16,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:52:16,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:52:16,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:52:16,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:52:18,487.487 INFO    ] ================================================
[2026-06-13 07:52:18,504.504 INFO    ] Launching Daemon at Sat Jun 13 07:52:18 IST 2026
[2026-06-13 07:52:18,515.515 INFO    ] ================================================
[2026-06-13 07:52:18,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:52:18
[2026-06-13 07:52:19,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:52:19,292.292 INFO    ] Initializing speech engine...
[2026-06-13 07:52:19,302.302 INFO    ] 2026-06-13 07:52:19
[2026-06-13 07:52:19,505.505 INFO    ] 2026-06-13 07:52:19
[2026-06-13 07:52:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:52:19,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:52:19,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:52:19,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:52:19,890.890 INFO    ] time= 13/06/2026 07:52:19
[2026-06-13 07:52:19,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:52:19,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:52:20,077.077 INFO    ] No existing commands found in stream
[2026-06-13 07:52:25,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:52:25,091.091 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 07:52:27,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:52:27,851.851 INFO    ] Checking for system updates...
[2026-06-13 07:52:27,871.871 INFO    ] 200
[2026-06-13 07:52:27,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:27,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:27,907.907 INFO    ] No update needed
[2026-06-13 07:52:27,909.909 INFO    ] Checking for camera pi updates...
[2026-06-13 07:52:27,929.929 INFO    ] 200
[2026-06-13 07:52:27,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:27,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:52:27,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:28,000.000 INFO    ] No camera update needed
[2026-06-13 07:52:28,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:52:28,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:52:28,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:52:28,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:52:30,049.049 INFO    ] ================================================
[2026-06-13 07:52:30,065.065 INFO    ] Launching Daemon at Sat Jun 13 07:52:30 IST 2026
[2026-06-13 07:52:30,076.076 INFO    ] ================================================
[2026-06-13 07:52:30,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:52:30
[2026-06-13 07:52:30,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:52:30,940.940 INFO    ] Initializing speech engine...
[2026-06-13 07:52:30,947.947 INFO    ] 2026-06-13 07:52:30
[2026-06-13 07:52:31,152.152 INFO    ] 2026-06-13 07:52:31
[2026-06-13 07:52:31,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:52:31,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:52:31,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:52:31,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:52:31,551.551 INFO    ] time= 13/06/2026 07:52:31
[2026-06-13 07:52:31,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:52:31,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:52:31,710.710 INFO    ] No existing commands found in stream
[2026-06-13 07:52:36,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:52:36,739.739 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 07:52:40,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:52:40,799.799 INFO    ] Checking for system updates...
[2026-06-13 07:52:40,820.820 INFO    ] 200
[2026-06-13 07:52:40,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:40,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:52:40,854.854 INFO    ] No update needed
[2026-06-13 07:52:40,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 07:52:40,875.875 INFO    ] 200
[2026-06-13 07:52:40,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:40,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:52:40,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:52:40,941.941 INFO    ] No camera update needed
[2026-06-13 07:52:40,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:52:40,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:52:40,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:52:40,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:52:42,990.990 INFO    ] ================================================
[2026-06-13 07:52:43,005.005 INFO    ] Launching Daemon at Sat Jun 13 07:52:43 IST 2026
[2026-06-13 07:52:43,017.017 INFO    ] ================================================
[2026-06-13 07:52:43,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:52:43
[2026-06-13 07:52:43,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:52:44,166.166 INFO    ] Initializing speech engine...
[2026-06-13 07:52:44,174.174 INFO    ] 2026-06-13 07:52:44
[2026-06-13 07:52:44,481.481 INFO    ] 2026-06-13 07:52:44
[2026-06-13 07:52:44,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:52:44,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:52:44,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:52:44,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:52:44,846.846 INFO    ] time= 13/06/2026 07:52:44
[2026-06-13 07:52:44,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:52:44,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:52:44,927.927 INFO    ] No existing commands found in stream
[2026-06-13 07:52:49,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:52:49,941.941 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 07:52:54,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:52:54,017.017 INFO    ] Checking for system updates...
[2026-06-13 07:52:54,037.037 INFO    ] 200
[2026-06-13 07:52:54,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:54,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:54,071.071 INFO    ] No update needed
[2026-06-13 07:52:54,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 07:52:54,091.091 INFO    ] 200
[2026-06-13 07:52:54,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:52:54,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:52:54,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:52:54,161.161 INFO    ] No camera update needed
[2026-06-13 07:52:54,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:52:54,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:52:54,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:52:54,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:52:56,208.208 INFO    ] ================================================
[2026-06-13 07:52:56,224.224 INFO    ] Launching Daemon at Sat Jun 13 07:52:56 IST 2026
[2026-06-13 07:52:56,235.235 INFO    ] ================================================
[2026-06-13 07:52:56,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:52:56
[2026-06-13 07:52:56,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:52:57,016.016 INFO    ] Initializing speech engine...
[2026-06-13 07:52:57,020.020 INFO    ] 2026-06-13 07:52:57
[2026-06-13 07:52:57,225.225 INFO    ] 2026-06-13 07:52:57
[2026-06-13 07:52:57,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:52:57,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:52:57,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:52:57,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:52:57,525.525 INFO    ] time= 13/06/2026 07:52:57
[2026-06-13 07:52:57,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:52:57,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:52:57,665.665 INFO    ] No existing commands found in stream
[2026-06-13 07:53:02,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:53:02,701.701 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 07:53:05,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:53:05,992.992 INFO    ] Checking for system updates...
[2026-06-13 07:53:06,015.015 INFO    ] 200
[2026-06-13 07:53:06,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:06,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:53:06,051.051 INFO    ] No update needed
[2026-06-13 07:53:06,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 07:53:06,073.073 INFO    ] 200
[2026-06-13 07:53:06,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:06,098.098 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:53:06,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:53:06,146.146 INFO    ] No camera update needed
[2026-06-13 07:53:06,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:53:06,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:53:06,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:53:06,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:53:08,197.197 INFO    ] ================================================
[2026-06-13 07:53:08,213.213 INFO    ] Launching Daemon at Sat Jun 13 07:53:08 IST 2026
[2026-06-13 07:53:08,225.225 INFO    ] ================================================
[2026-06-13 07:53:08,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:53:08
[2026-06-13 07:53:08,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:53:09,031.031 INFO    ] Initializing speech engine...
[2026-06-13 07:53:09,036.036 INFO    ] 2026-06-13 07:53:09
[2026-06-13 07:53:09,243.243 INFO    ] 2026-06-13 07:53:09
[2026-06-13 07:53:09,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:53:09,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:53:09,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:53:09,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:53:09,652.652 INFO    ] time= 13/06/2026 07:53:09
[2026-06-13 07:53:09,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:53:09,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:53:09,757.757 INFO    ] No existing commands found in stream
[2026-06-13 07:53:14,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:53:14,769.769 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 07:53:16,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:53:16,003.003 INFO    ] Checking for system updates...
[2026-06-13 07:53:16,024.024 INFO    ] 200
[2026-06-13 07:53:16,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:16,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:16,060.060 INFO    ] No update needed
[2026-06-13 07:53:16,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 07:53:16,081.081 INFO    ] 200
[2026-06-13 07:53:16,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:16,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:53:16,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:16,147.147 INFO    ] No camera update needed
[2026-06-13 07:53:16,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:53:16,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:53:16,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:53:16,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:53:18,195.195 INFO    ] ================================================
[2026-06-13 07:53:18,211.211 INFO    ] Launching Daemon at Sat Jun 13 07:53:18 IST 2026
[2026-06-13 07:53:18,223.223 INFO    ] ================================================
[2026-06-13 07:53:18,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:53:18
[2026-06-13 07:53:18,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:53:19,094.094 INFO    ] Initializing speech engine...
[2026-06-13 07:53:19,098.098 INFO    ] 2026-06-13 07:53:19
[2026-06-13 07:53:19,305.305 INFO    ] 2026-06-13 07:53:19
[2026-06-13 07:53:19,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:53:19,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:53:19,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:53:19,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:53:19,724.724 INFO    ] time= 13/06/2026 07:53:19
[2026-06-13 07:53:19,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:53:19,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:53:19,819.819 INFO    ] No existing commands found in stream
[2026-06-13 07:53:24,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:53:24,834.834 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 07:53:26,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:53:26,568.568 INFO    ] Checking for system updates...
[2026-06-13 07:53:26,590.590 INFO    ] 200
[2026-06-13 07:53:26,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:26,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:26,625.625 INFO    ] No update needed
[2026-06-13 07:53:26,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 07:53:26,646.646 INFO    ] 200
[2026-06-13 07:53:26,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:26,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:53:26,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:26,712.712 INFO    ] No camera update needed
[2026-06-13 07:53:26,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:53:26,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:53:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:53:26,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:53:28,760.760 INFO    ] ================================================
[2026-06-13 07:53:28,779.779 INFO    ] Launching Daemon at Sat Jun 13 07:53:28 IST 2026
[2026-06-13 07:53:28,790.790 INFO    ] ================================================
[2026-06-13 07:53:29,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:53:29
[2026-06-13 07:53:29,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:53:29,581.581 INFO    ] Initializing speech engine...
[2026-06-13 07:53:29,591.591 INFO    ] 2026-06-13 07:53:29
[2026-06-13 07:53:29,809.809 INFO    ] 2026-06-13 07:53:29
[2026-06-13 07:53:29,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:53:29,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:53:30,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:53:30,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:53:30,225.225 INFO    ] time= 13/06/2026 07:53:30
[2026-06-13 07:53:30,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:53:30,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:53:30,379.379 INFO    ] No existing commands found in stream
[2026-06-13 07:53:35,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:53:35,393.393 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 07:53:39,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:53:39,557.557 INFO    ] Checking for system updates...
[2026-06-13 07:53:39,578.578 INFO    ] 200
[2026-06-13 07:53:39,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:39,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:53:39,612.612 INFO    ] No update needed
[2026-06-13 07:53:39,614.614 INFO    ] Checking for camera pi updates...
[2026-06-13 07:53:39,634.634 INFO    ] 200
[2026-06-13 07:53:39,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:39,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:53:39,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:53:39,699.699 INFO    ] No camera update needed
[2026-06-13 07:53:39,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:53:39,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:53:39,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:53:39,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:53:41,749.749 INFO    ] ================================================
[2026-06-13 07:53:41,765.765 INFO    ] Launching Daemon at Sat Jun 13 07:53:41 IST 2026
[2026-06-13 07:53:41,776.776 INFO    ] ================================================
[2026-06-13 07:53:42,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:53:42
[2026-06-13 07:53:42,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:53:42,567.567 INFO    ] Initializing speech engine...
[2026-06-13 07:53:42,573.573 INFO    ] 2026-06-13 07:53:42
[2026-06-13 07:53:42,774.774 INFO    ] 2026-06-13 07:53:42
[2026-06-13 07:53:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:53:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:53:42,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:53:43,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:53:43,179.179 INFO    ] time= 13/06/2026 07:53:43
[2026-06-13 07:53:43,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:53:43,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:53:43,289.289 INFO    ] No existing commands found in stream
[2026-06-13 07:53:48,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:53:48,301.301 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 07:53:52,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:53:52,361.361 INFO    ] Checking for system updates...
[2026-06-13 07:53:52,399.399 INFO    ] 200
[2026-06-13 07:53:52,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:52,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:52,460.460 INFO    ] No update needed
[2026-06-13 07:53:52,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 07:53:52,499.499 INFO    ] 200
[2026-06-13 07:53:52,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:53:52,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:53:52,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:53:52,595.595 INFO    ] No camera update needed
[2026-06-13 07:53:52,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:53:52,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:53:52,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:53:52,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:53:54,656.656 INFO    ] ================================================
[2026-06-13 07:53:54,672.672 INFO    ] Launching Daemon at Sat Jun 13 07:53:54 IST 2026
[2026-06-13 07:53:54,683.683 INFO    ] ================================================
[2026-06-13 07:53:55,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:53:55
[2026-06-13 07:53:55,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:53:55,502.502 INFO    ] Initializing speech engine...
[2026-06-13 07:53:55,512.512 INFO    ] 2026-06-13 07:53:55
[2026-06-13 07:53:55,714.714 INFO    ] 2026-06-13 07:53:55
[2026-06-13 07:53:55,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:53:55,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:53:55,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:53:56,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:53:56,126.126 INFO    ] time= 13/06/2026 07:53:56
[2026-06-13 07:53:56,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:53:56,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:53:56,233.233 INFO    ] No existing commands found in stream
[2026-06-13 07:54:01,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:01,246.246 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 07:54:05,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:54:05,572.572 INFO    ] Checking for system updates...
[2026-06-13 07:54:05,613.613 INFO    ] 200
[2026-06-13 07:54:05,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:05,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:05,671.671 INFO    ] No update needed
[2026-06-13 07:54:05,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 07:54:05,709.709 INFO    ] 200
[2026-06-13 07:54:05,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:05,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:54:05,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:05,814.814 INFO    ] No camera update needed
[2026-06-13 07:54:05,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:54:05,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:54:05,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:54:05,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:54:07,871.871 INFO    ] ================================================
[2026-06-13 07:54:07,887.887 INFO    ] Launching Daemon at Sat Jun 13 07:54:07 IST 2026
[2026-06-13 07:54:07,897.897 INFO    ] ================================================
[2026-06-13 07:54:08,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:54:08
[2026-06-13 07:54:09,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:54:09,458.458 INFO    ] Initializing speech engine...
[2026-06-13 07:54:09,465.465 INFO    ] 2026-06-13 07:54:09
[2026-06-13 07:54:09,739.739 INFO    ] 2026-06-13 07:54:09
[2026-06-13 07:54:09,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:54:10,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:54:10,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:54:10,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:54:10,229.229 INFO    ] time= 13/06/2026 07:54:10
[2026-06-13 07:54:10,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:54:10,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:54:10,476.476 INFO    ] No existing commands found in stream
[2026-06-13 07:54:15,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:15,501.501 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 07:54:19,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:54:19,096.096 INFO    ] Checking for system updates...
[2026-06-13 07:54:19,117.117 INFO    ] 200
[2026-06-13 07:54:19,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:19,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:54:19,155.155 INFO    ] No update needed
[2026-06-13 07:54:19,157.157 INFO    ] Checking for camera pi updates...
[2026-06-13 07:54:19,177.177 INFO    ] 200
[2026-06-13 07:54:19,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:19,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:54:19,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:54:19,352.352 INFO    ] No camera update needed
[2026-06-13 07:54:19,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:54:19,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:54:19,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:54:19,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:54:21,401.401 INFO    ] ================================================
[2026-06-13 07:54:21,417.417 INFO    ] Launching Daemon at Sat Jun 13 07:54:21 IST 2026
[2026-06-13 07:54:21,428.428 INFO    ] ================================================
[2026-06-13 07:54:21,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:54:21
[2026-06-13 07:54:22,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:54:22,232.232 INFO    ] Initializing speech engine...
[2026-06-13 07:54:22,240.240 INFO    ] 2026-06-13 07:54:22
[2026-06-13 07:54:22,444.444 INFO    ] 2026-06-13 07:54:22
[2026-06-13 07:54:22,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:54:22,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:54:22,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:54:22,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:54:22,716.716 INFO    ] time= 13/06/2026 07:54:22
[2026-06-13 07:54:22,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:54:22,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:54:22,826.826 INFO    ] No existing commands found in stream
[2026-06-13 07:54:27,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:27,858.858 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 07:54:28,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:54:28,752.752 INFO    ] Checking for system updates...
[2026-06-13 07:54:28,773.773 INFO    ] 200
[2026-06-13 07:54:28,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:28,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:54:28,806.806 INFO    ] No update needed
[2026-06-13 07:54:28,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 07:54:28,827.827 INFO    ] 200
[2026-06-13 07:54:28,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:28,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:54:28,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:54:28,891.891 INFO    ] No camera update needed
[2026-06-13 07:54:28,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:54:28,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:54:28,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:54:28,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:54:30,938.938 INFO    ] ================================================
[2026-06-13 07:54:30,953.953 INFO    ] Launching Daemon at Sat Jun 13 07:54:30 IST 2026
[2026-06-13 07:54:30,963.963 INFO    ] ================================================
[2026-06-13 07:54:31,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:54:31
[2026-06-13 07:54:31,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:54:31,752.752 INFO    ] Initializing speech engine...
[2026-06-13 07:54:31,789.789 INFO    ] 2026-06-13 07:54:31
[2026-06-13 07:54:32,028.028 INFO    ] 2026-06-13 07:54:32
[2026-06-13 07:54:32,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:54:32,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:54:32,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:54:32,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:54:32,397.397 INFO    ] time= 13/06/2026 07:54:32
[2026-06-13 07:54:32,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:54:32,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:54:32,518.518 INFO    ] No existing commands found in stream
[2026-06-13 07:54:37,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:37,535.535 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 07:54:37,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:54:37,925.925 INFO    ] Checking for system updates...
[2026-06-13 07:54:37,947.947 INFO    ] 200
[2026-06-13 07:54:37,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:37,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:37,983.983 INFO    ] No update needed
[2026-06-13 07:54:37,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 07:54:38,004.004 INFO    ] 200
[2026-06-13 07:54:38,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:38,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:54:38,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:38,070.070 INFO    ] No camera update needed
[2026-06-13 07:54:38,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:54:38,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:54:38,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:54:38,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:54:40,119.119 INFO    ] ================================================
[2026-06-13 07:54:40,135.135 INFO    ] Launching Daemon at Sat Jun 13 07:54:40 IST 2026
[2026-06-13 07:54:40,146.146 INFO    ] ================================================
[2026-06-13 07:54:40,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:54:40
[2026-06-13 07:54:40,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:54:40,934.934 INFO    ] Initializing speech engine...
[2026-06-13 07:54:40,947.947 INFO    ] 2026-06-13 07:54:40
[2026-06-13 07:54:41,204.204 INFO    ] 2026-06-13 07:54:41
[2026-06-13 07:54:41,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:54:41,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:54:41,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:54:41,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:54:41,702.702 INFO    ] time= 13/06/2026 07:54:41
[2026-06-13 07:54:41,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:54:41,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:54:41,795.795 INFO    ] No existing commands found in stream
[2026-06-13 07:54:46,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:46,809.809 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 07:54:48,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:54:48,918.918 INFO    ] Checking for system updates...
[2026-06-13 07:54:48,939.939 INFO    ] 200
[2026-06-13 07:54:48,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:48,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:48,973.973 INFO    ] No update needed
[2026-06-13 07:54:48,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 07:54:48,994.994 INFO    ] 200
[2026-06-13 07:54:48,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:54:49,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:54:49,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:54:49,057.057 INFO    ] No camera update needed
[2026-06-13 07:54:49,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:54:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:54:49,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:54:49,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:54:51,105.105 INFO    ] ================================================
[2026-06-13 07:54:51,121.121 INFO    ] Launching Daemon at Sat Jun 13 07:54:51 IST 2026
[2026-06-13 07:54:51,132.132 INFO    ] ================================================
[2026-06-13 07:54:51,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:54:51
[2026-06-13 07:54:51,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:54:51,925.925 INFO    ] Initializing speech engine...
[2026-06-13 07:54:51,930.930 INFO    ] 2026-06-13 07:54:51
[2026-06-13 07:54:52,133.133 INFO    ] 2026-06-13 07:54:52
[2026-06-13 07:54:52,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:54:52,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:54:52,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:54:52,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:54:52,554.554 INFO    ] time= 13/06/2026 07:54:52
[2026-06-13 07:54:52,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:54:52,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:54:52,655.655 INFO    ] No existing commands found in stream
[2026-06-13 07:54:57,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:54:57,668.668 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 07:55:00,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:55:00,752.752 INFO    ] Checking for system updates...
[2026-06-13 07:55:00,773.773 INFO    ] 200
[2026-06-13 07:55:00,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:00,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:00,806.806 INFO    ] No update needed
[2026-06-13 07:55:00,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:00,827.827 INFO    ] 200
[2026-06-13 07:55:00,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:00,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:00,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:00,893.893 INFO    ] No camera update needed
[2026-06-13 07:55:00,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:00,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:00,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:00,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:02,942.942 INFO    ] ================================================
[2026-06-13 07:55:02,950.950 INFO    ] Launching Daemon at Sat Jun 13 07:55:02 IST 2026
[2026-06-13 07:55:02,956.956 INFO    ] ================================================
[2026-06-13 07:55:03,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:03
[2026-06-13 07:55:03,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:55:04,036.036 INFO    ] Initializing speech engine...
[2026-06-13 07:55:04,048.048 INFO    ] 2026-06-13 07:55:04
[2026-06-13 07:55:04,363.363 INFO    ] 2026-06-13 07:55:04
[2026-06-13 07:55:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:55:04,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:55:04,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:55:04,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:55:04,796.796 INFO    ] time= 13/06/2026 07:55:04
[2026-06-13 07:55:04,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:55:04,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:55:05,030.030 INFO    ] No existing commands found in stream
[2026-06-13 07:55:10,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:55:10,056.056 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 07:55:13,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:55:13,529.529 INFO    ] Checking for system updates...
[2026-06-13 07:55:13,550.550 INFO    ] 200
[2026-06-13 07:55:13,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:13,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:13,585.585 INFO    ] No update needed
[2026-06-13 07:55:13,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:13,607.607 INFO    ] 200
[2026-06-13 07:55:13,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:13,632.632 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:13,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:13,672.672 INFO    ] No camera update needed
[2026-06-13 07:55:13,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:13,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:13,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:13,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:15,720.720 INFO    ] ================================================
[2026-06-13 07:55:15,736.736 INFO    ] Launching Daemon at Sat Jun 13 07:55:15 IST 2026
[2026-06-13 07:55:15,746.746 INFO    ] ================================================
[2026-06-13 07:55:16,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:16
[2026-06-13 07:55:16,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:55:16,539.539 INFO    ] Initializing speech engine...
[2026-06-13 07:55:16,552.552 INFO    ] 2026-06-13 07:55:16
[2026-06-13 07:55:16,761.761 INFO    ] 2026-06-13 07:55:16
[2026-06-13 07:55:16,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:55:16,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:55:16,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:55:17,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:55:17,164.164 INFO    ] time= 13/06/2026 07:55:17
[2026-06-13 07:55:17,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:55:17,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:55:17,274.274 INFO    ] No existing commands found in stream
[2026-06-13 07:55:22,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:55:22,286.286 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 07:55:23,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:55:23,737.737 INFO    ] Checking for system updates...
[2026-06-13 07:55:23,758.758 INFO    ] 200
[2026-06-13 07:55:23,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:23,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:23,791.791 INFO    ] No update needed
[2026-06-13 07:55:23,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:23,811.811 INFO    ] 200
[2026-06-13 07:55:23,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:23,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:23,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:23,871.871 INFO    ] No camera update needed
[2026-06-13 07:55:23,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:23,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:23,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:23,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:25,919.919 INFO    ] ================================================
[2026-06-13 07:55:25,934.934 INFO    ] Launching Daemon at Sat Jun 13 07:55:25 IST 2026
[2026-06-13 07:55:25,945.945 INFO    ] ================================================
[2026-06-13 07:55:26,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:26
[2026-06-13 07:55:26,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:55:26,829.829 INFO    ] Initializing speech engine...
[2026-06-13 07:55:26,836.836 INFO    ] 2026-06-13 07:55:26
[2026-06-13 07:55:27,045.045 INFO    ] 2026-06-13 07:55:27
[2026-06-13 07:55:27,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:55:27,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:55:27,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:55:27,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:55:27,458.458 INFO    ] time= 13/06/2026 07:55:27
[2026-06-13 07:55:27,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:55:27,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:55:27,566.566 INFO    ] No existing commands found in stream
[2026-06-13 07:55:32,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:55:32,581.581 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 07:55:34,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:55:34,979.979 INFO    ] Checking for system updates...
[2026-06-13 07:55:34,999.999 INFO    ] 200
[2026-06-13 07:55:35,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:35,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:35,035.035 INFO    ] No update needed
[2026-06-13 07:55:35,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:35,055.055 INFO    ] 200
[2026-06-13 07:55:35,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:35,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:35,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:55:35,127.127 INFO    ] No camera update needed
[2026-06-13 07:55:35,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:35,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:35,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:35,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:37,176.176 INFO    ] ================================================
[2026-06-13 07:55:37,192.192 INFO    ] Launching Daemon at Sat Jun 13 07:55:37 IST 2026
[2026-06-13 07:55:37,203.203 INFO    ] ================================================
[2026-06-13 07:55:37,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:37
[2026-06-13 07:55:37,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:55:37,993.993 INFO    ] Initializing speech engine...
[2026-06-13 07:55:37,998.998 INFO    ] 2026-06-13 07:55:37
[2026-06-13 07:55:38,226.226 INFO    ] 2026-06-13 07:55:38
[2026-06-13 07:55:38,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:55:38,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:55:38,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:55:38,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:55:38,588.588 INFO    ] time= 13/06/2026 07:55:38
[2026-06-13 07:55:38,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:55:38,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:55:38,810.810 INFO    ] No existing commands found in stream
[2026-06-13 07:55:43,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:55:43,823.823 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 07:55:47,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:55:47,293.293 INFO    ] Checking for system updates...
[2026-06-13 07:55:47,314.314 INFO    ] 200
[2026-06-13 07:55:47,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:47,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:47,347.347 INFO    ] No update needed
[2026-06-13 07:55:47,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:47,369.369 INFO    ] 200
[2026-06-13 07:55:47,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:47,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:47,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:47,431.431 INFO    ] No camera update needed
[2026-06-13 07:55:47,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:47,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:47,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:47,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:49,477.477 INFO    ] ================================================
[2026-06-13 07:55:49,492.492 INFO    ] Launching Daemon at Sat Jun 13 07:55:49 IST 2026
[2026-06-13 07:55:49,502.502 INFO    ] ================================================
[2026-06-13 07:55:49,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:49
[2026-06-13 07:55:50,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:55:50,315.315 INFO    ] Initializing speech engine...
[2026-06-13 07:55:50,323.323 INFO    ] 2026-06-13 07:55:50
[2026-06-13 07:55:50,547.547 INFO    ] 2026-06-13 07:55:50
[2026-06-13 07:55:50,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:55:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:55:50,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:55:50,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:55:50,962.962 INFO    ] time= 13/06/2026 07:55:50
[2026-06-13 07:55:51,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:55:51,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:55:51,106.106 INFO    ] No existing commands found in stream
[2026-06-13 07:55:56,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:55:56,119.119 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 07:55:57,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:55:57,063.063 INFO    ] Checking for system updates...
[2026-06-13 07:55:57,084.084 INFO    ] 200
[2026-06-13 07:55:57,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:57,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:57,126.126 INFO    ] No update needed
[2026-06-13 07:55:57,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 07:55:57,147.147 INFO    ] 200
[2026-06-13 07:55:57,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:55:57,172.172 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:55:57,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:55:57,213.213 INFO    ] No camera update needed
[2026-06-13 07:55:57,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:55:57,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:55:57,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:55:57,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:55:59,260.260 INFO    ] ================================================
[2026-06-13 07:55:59,275.275 INFO    ] Launching Daemon at Sat Jun 13 07:55:59 IST 2026
[2026-06-13 07:55:59,286.286 INFO    ] ================================================
[2026-06-13 07:55:59,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:55:59
[2026-06-13 07:55:59,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:00,151.151 INFO    ] Initializing speech engine...
[2026-06-13 07:56:00,156.156 INFO    ] 2026-06-13 07:56:00
[2026-06-13 07:56:00,367.367 INFO    ] 2026-06-13 07:56:00
[2026-06-13 07:56:00,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:00,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:00,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:00,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:00,790.790 INFO    ] time= 13/06/2026 07:56:00
[2026-06-13 07:56:00,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:00,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:00,888.888 INFO    ] No existing commands found in stream
[2026-06-13 07:56:05,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:05,901.901 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 07:56:06,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:56:06,374.374 INFO    ] Checking for system updates...
[2026-06-13 07:56:06,396.396 INFO    ] 200
[2026-06-13 07:56:06,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:06,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:06,430.430 INFO    ] No update needed
[2026-06-13 07:56:06,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:06,451.451 INFO    ] 200
[2026-06-13 07:56:06,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:06,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:06,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:56:06,519.519 INFO    ] No camera update needed
[2026-06-13 07:56:06,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:06,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:06,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:06,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:56:08,568.568 INFO    ] ================================================
[2026-06-13 07:56:08,583.583 INFO    ] Launching Daemon at Sat Jun 13 07:56:08 IST 2026
[2026-06-13 07:56:08,594.594 INFO    ] ================================================
[2026-06-13 07:56:08,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:56:08
[2026-06-13 07:56:09,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:09,407.407 INFO    ] Initializing speech engine...
[2026-06-13 07:56:09,410.410 INFO    ] 2026-06-13 07:56:09
[2026-06-13 07:56:09,638.638 INFO    ] 2026-06-13 07:56:09
[2026-06-13 07:56:09,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:09,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:09,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:10,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:10,055.055 INFO    ] time= 13/06/2026 07:56:10
[2026-06-13 07:56:10,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:10,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:10,190.190 INFO    ] No existing commands found in stream
[2026-06-13 07:56:15,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:15,203.203 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 07:56:16,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:56:16,598.598 INFO    ] Checking for system updates...
[2026-06-13 07:56:16,619.619 INFO    ] 200
[2026-06-13 07:56:16,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:16,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:56:16,652.652 INFO    ] No update needed
[2026-06-13 07:56:16,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:16,673.673 INFO    ] 200
[2026-06-13 07:56:16,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:16,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:16,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:56:16,743.743 INFO    ] No camera update needed
[2026-06-13 07:56:16,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:16,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:16,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:16,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:56:18,791.791 INFO    ] ================================================
[2026-06-13 07:56:18,806.806 INFO    ] Launching Daemon at Sat Jun 13 07:56:18 IST 2026
[2026-06-13 07:56:18,817.817 INFO    ] ================================================
[2026-06-13 07:56:19,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:56:19
[2026-06-13 07:56:19,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:19,597.597 INFO    ] Initializing speech engine...
[2026-06-13 07:56:19,602.602 INFO    ] 2026-06-13 07:56:19
[2026-06-13 07:56:19,815.815 INFO    ] 2026-06-13 07:56:19
[2026-06-13 07:56:19,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:19,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:20,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:20,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:20,210.210 INFO    ] time= 13/06/2026 07:56:20
[2026-06-13 07:56:20,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:20,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:20,365.365 INFO    ] No existing commands found in stream
[2026-06-13 07:56:25,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:25,379.379 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 07:56:28,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:56:28,242.242 INFO    ] Checking for system updates...
[2026-06-13 07:56:28,264.264 INFO    ] 200
[2026-06-13 07:56:28,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:28,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:28,300.300 INFO    ] No update needed
[2026-06-13 07:56:28,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:28,321.321 INFO    ] 200
[2026-06-13 07:56:28,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:28,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:28,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:28,489.489 INFO    ] No camera update needed
[2026-06-13 07:56:28,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:28,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:28,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:28,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:56:30,538.538 INFO    ] ================================================
[2026-06-13 07:56:30,553.553 INFO    ] Launching Daemon at Sat Jun 13 07:56:30 IST 2026
[2026-06-13 07:56:30,563.563 INFO    ] ================================================
[2026-06-13 07:56:30,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:56:30
[2026-06-13 07:56:31,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:31,353.353 INFO    ] Initializing speech engine...
[2026-06-13 07:56:31,357.357 INFO    ] 2026-06-13 07:56:31
[2026-06-13 07:56:31,586.586 INFO    ] 2026-06-13 07:56:31
[2026-06-13 07:56:31,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:31,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:31,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:31,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:31,958.958 INFO    ] time= 13/06/2026 07:56:31
[2026-06-13 07:56:31,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:32,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:32,155.155 INFO    ] No existing commands found in stream
[2026-06-13 07:56:37,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:37,169.169 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 07:56:37,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:56:37,946.946 INFO    ] Checking for system updates...
[2026-06-13 07:56:37,969.969 INFO    ] 200
[2026-06-13 07:56:37,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:38,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:38,002.002 INFO    ] No update needed
[2026-06-13 07:56:38,003.003 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:38,022.022 INFO    ] 200
[2026-06-13 07:56:38,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:38,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:38,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:56:38,089.089 INFO    ] No camera update needed
[2026-06-13 07:56:38,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:38,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:38,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:38,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:56:40,136.136 INFO    ] ================================================
[2026-06-13 07:56:40,151.151 INFO    ] Launching Daemon at Sat Jun 13 07:56:40 IST 2026
[2026-06-13 07:56:40,162.162 INFO    ] ================================================
[2026-06-13 07:56:40,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:56:40
[2026-06-13 07:56:40,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:40,971.971 INFO    ] Initializing speech engine...
[2026-06-13 07:56:40,979.979 INFO    ] 2026-06-13 07:56:40
[2026-06-13 07:56:41,189.189 INFO    ] 2026-06-13 07:56:41
[2026-06-13 07:56:41,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:41,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:41,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:41,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:41,594.594 INFO    ] time= 13/06/2026 07:56:41
[2026-06-13 07:56:41,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:41,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:41,704.704 INFO    ] No existing commands found in stream
[2026-06-13 07:56:46,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:46,721.721 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 07:56:47,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:56:47,177.177 INFO    ] Checking for system updates...
[2026-06-13 07:56:47,198.198 INFO    ] 200
[2026-06-13 07:56:47,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:47,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:47,230.230 INFO    ] No update needed
[2026-06-13 07:56:47,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:47,251.251 INFO    ] 200
[2026-06-13 07:56:47,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:47,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:47,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:56:47,323.323 INFO    ] No camera update needed
[2026-06-13 07:56:47,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:47,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:47,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:47,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:56:49,372.372 INFO    ] ================================================
[2026-06-13 07:56:49,387.387 INFO    ] Launching Daemon at Sat Jun 13 07:56:49 IST 2026
[2026-06-13 07:56:49,398.398 INFO    ] ================================================
[2026-06-13 07:56:49,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:56:49
[2026-06-13 07:56:50,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:56:50,204.204 INFO    ] Initializing speech engine...
[2026-06-13 07:56:50,214.214 INFO    ] 2026-06-13 07:56:50
[2026-06-13 07:56:50,423.423 INFO    ] 2026-06-13 07:56:50
[2026-06-13 07:56:50,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:56:50,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:56:50,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:56:50,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:56:50,837.837 INFO    ] time= 13/06/2026 07:56:50
[2026-06-13 07:56:50,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:56:50,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:56:50,950.950 INFO    ] No existing commands found in stream
[2026-06-13 07:56:55,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:56:55,963.963 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 07:56:59,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:56:59,442.442 INFO    ] Checking for system updates...
[2026-06-13 07:56:59,462.462 INFO    ] 200
[2026-06-13 07:56:59,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:59,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:59,496.496 INFO    ] No update needed
[2026-06-13 07:56:59,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 07:56:59,518.518 INFO    ] 200
[2026-06-13 07:56:59,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:56:59,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:56:59,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:56:59,583.583 INFO    ] No camera update needed
[2026-06-13 07:56:59,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:56:59,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:56:59,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:56:59,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:57:01,634.634 INFO    ] ================================================
[2026-06-13 07:57:01,659.659 INFO    ] Launching Daemon at Sat Jun 13 07:57:01 IST 2026
[2026-06-13 07:57:01,684.684 INFO    ] ================================================
[2026-06-13 07:57:02,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:57:02
[2026-06-13 07:57:03,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:57:03,365.365 INFO    ] Initializing speech engine...
[2026-06-13 07:57:03,375.375 INFO    ] 2026-06-13 07:57:03
[2026-06-13 07:57:03,646.646 INFO    ] 2026-06-13 07:57:03
[2026-06-13 07:57:03,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:57:03,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:57:03,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:57:04,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:57:04,114.114 INFO    ] time= 13/06/2026 07:57:04
[2026-06-13 07:57:04,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:57:04,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:57:04,258.258 INFO    ] No existing commands found in stream
[2026-06-13 07:57:09,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:57:09,274.274 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 07:57:12,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:57:12,532.532 INFO    ] Checking for system updates...
[2026-06-13 07:57:12,553.553 INFO    ] 200
[2026-06-13 07:57:12,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:12,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:12,586.586 INFO    ] No update needed
[2026-06-13 07:57:12,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 07:57:12,608.608 INFO    ] 200
[2026-06-13 07:57:12,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:12,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:57:12,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:12,674.674 INFO    ] No camera update needed
[2026-06-13 07:57:12,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:57:12,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:57:12,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:57:12,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:57:14,733.733 INFO    ] ================================================
[2026-06-13 07:57:14,748.748 INFO    ] Launching Daemon at Sat Jun 13 07:57:14 IST 2026
[2026-06-13 07:57:14,759.759 INFO    ] ================================================
[2026-06-13 07:57:15,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:57:15
[2026-06-13 07:57:15,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:57:16,006.006 INFO    ] Initializing speech engine...
[2026-06-13 07:57:16,009.009 INFO    ] 2026-06-13 07:57:16
[2026-06-13 07:57:16,238.238 INFO    ] 2026-06-13 07:57:16
[2026-06-13 07:57:16,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:57:16,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:57:16,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:57:16,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:57:16,669.669 INFO    ] time= 13/06/2026 07:57:16
[2026-06-13 07:57:16,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:57:16,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:57:16,789.789 INFO    ] No existing commands found in stream
[2026-06-13 07:57:21,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:57:21,802.802 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 07:57:25,762.762 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:57:25,764.764 INFO    ] Checking for system updates...
[2026-06-13 07:57:25,784.784 INFO    ] 200
[2026-06-13 07:57:25,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:25,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:25,818.818 INFO    ] No update needed
[2026-06-13 07:57:25,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 07:57:25,841.841 INFO    ] 200
[2026-06-13 07:57:25,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:25,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:57:25,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:25,903.903 INFO    ] No camera update needed
[2026-06-13 07:57:25,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:57:25,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:57:25,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:57:25,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:57:27,951.951 INFO    ] ================================================
[2026-06-13 07:57:27,966.966 INFO    ] Launching Daemon at Sat Jun 13 07:57:27 IST 2026
[2026-06-13 07:57:27,977.977 INFO    ] ================================================
[2026-06-13 07:57:28,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:57:28
[2026-06-13 07:57:28,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:57:28,761.761 INFO    ] Initializing speech engine...
[2026-06-13 07:57:28,766.766 INFO    ] 2026-06-13 07:57:28
[2026-06-13 07:57:28,969.969 INFO    ] 2026-06-13 07:57:28
[2026-06-13 07:57:28,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:57:29,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:57:29,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:57:29,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:57:29,381.381 INFO    ] time= 13/06/2026 07:57:29
[2026-06-13 07:57:29,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:57:29,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:57:29,486.486 INFO    ] No existing commands found in stream
[2026-06-13 07:57:34,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:57:34,500.500 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 07:57:37,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:57:37,524.524 INFO    ] Checking for system updates...
[2026-06-13 07:57:37,547.547 INFO    ] 200
[2026-06-13 07:57:37,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:37,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:37,580.580 INFO    ] No update needed
[2026-06-13 07:57:37,582.582 INFO    ] Checking for camera pi updates...
[2026-06-13 07:57:37,603.603 INFO    ] 200
[2026-06-13 07:57:37,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:37,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:57:37,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:37,670.670 INFO    ] No camera update needed
[2026-06-13 07:57:37,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:57:37,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:57:37,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:57:37,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:57:39,716.716 INFO    ] ================================================
[2026-06-13 07:57:39,731.731 INFO    ] Launching Daemon at Sat Jun 13 07:57:39 IST 2026
[2026-06-13 07:57:39,742.742 INFO    ] ================================================
[2026-06-13 07:57:40,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:57:40
[2026-06-13 07:57:40,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:57:40,601.601 INFO    ] Initializing speech engine...
[2026-06-13 07:57:40,606.606 INFO    ] 2026-06-13 07:57:40
[2026-06-13 07:57:40,806.806 INFO    ] 2026-06-13 07:57:40
[2026-06-13 07:57:40,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:57:41,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:57:41,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:57:41,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:57:41,146.146 INFO    ] time= 13/06/2026 07:57:41
[2026-06-13 07:57:41,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:57:41,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:57:41,259.259 INFO    ] No existing commands found in stream
[2026-06-13 07:57:46,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:57:46,275.275 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 07:57:48,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 07:57:48,278.278 INFO    ] Checking for system updates...
[2026-06-13 07:57:48,299.299 INFO    ] 200
[2026-06-13 07:57:48,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:48,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:48,334.334 INFO    ] No update needed
[2026-06-13 07:57:48,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 07:57:48,357.357 INFO    ] 200
[2026-06-13 07:57:48,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:57:48,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:57:48,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:57:48,423.423 INFO    ] No camera update needed
[2026-06-13 07:57:48,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:57:48,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:57:48,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:57:48,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:57:50,470.470 INFO    ] ================================================
[2026-06-13 07:57:50,485.485 INFO    ] Launching Daemon at Sat Jun 13 07:57:50 IST 2026
[2026-06-13 07:57:50,496.496 INFO    ] ================================================
[2026-06-13 07:57:50,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:57:50
[2026-06-13 07:57:51,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:57:51,286.286 INFO    ] Initializing speech engine...
[2026-06-13 07:57:51,297.297 INFO    ] 2026-06-13 07:57:51
[2026-06-13 07:57:51,511.511 INFO    ] 2026-06-13 07:57:51
[2026-06-13 07:57:51,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:57:51,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:57:51,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:57:51,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:57:51,942.942 INFO    ] time= 13/06/2026 07:57:51
[2026-06-13 07:57:51,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:57:52,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:57:52,106.106 INFO    ] No existing commands found in stream
[2026-06-13 07:57:57,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:57:57,145.145 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 07:58:01,060.060 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:58:01,062.062 INFO    ] Checking for system updates...
[2026-06-13 07:58:01,083.083 INFO    ] 200
[2026-06-13 07:58:01,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:01,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:01,121.121 INFO    ] No update needed
[2026-06-13 07:58:01,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:01,142.142 INFO    ] 200
[2026-06-13 07:58:01,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:01,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:01,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:01,210.210 INFO    ] No camera update needed
[2026-06-13 07:58:01,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:01,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:01,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:01,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:58:03,243.243 INFO    ] ================================================
[2026-06-13 07:58:03,251.251 INFO    ] Launching Daemon at Sat Jun 13 07:58:03 IST 2026
[2026-06-13 07:58:03,257.257 INFO    ] ================================================
[2026-06-13 07:58:03,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:58:03
[2026-06-13 07:58:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:58:04,086.086 INFO    ] Initializing speech engine...
[2026-06-13 07:58:04,092.092 INFO    ] 2026-06-13 07:58:04
[2026-06-13 07:58:04,295.295 INFO    ] 2026-06-13 07:58:04
[2026-06-13 07:58:04,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:58:04,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:58:04,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:58:04,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:58:04,575.575 INFO    ] time= 13/06/2026 07:58:04
[2026-06-13 07:58:04,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:58:04,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:58:04,730.730 INFO    ] No existing commands found in stream
[2026-06-13 07:58:09,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:58:09,756.756 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 07:58:11,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:58:11,158.158 INFO    ] Checking for system updates...
[2026-06-13 07:58:11,179.179 INFO    ] 200
[2026-06-13 07:58:11,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:11,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:11,212.212 INFO    ] No update needed
[2026-06-13 07:58:11,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:11,232.232 INFO    ] 200
[2026-06-13 07:58:11,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:11,257.257 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:11,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:11,297.297 INFO    ] No camera update needed
[2026-06-13 07:58:11,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:11,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:11,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:11,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:58:13,343.343 INFO    ] ================================================
[2026-06-13 07:58:13,358.358 INFO    ] Launching Daemon at Sat Jun 13 07:58:13 IST 2026
[2026-06-13 07:58:13,369.369 INFO    ] ================================================
[2026-06-13 07:58:13,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:58:13
[2026-06-13 07:58:14,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:58:14,185.185 INFO    ] Initializing speech engine...
[2026-06-13 07:58:14,193.193 INFO    ] 2026-06-13 07:58:14
[2026-06-13 07:58:14,414.414 INFO    ] 2026-06-13 07:58:14
[2026-06-13 07:58:14,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:58:14,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:58:14,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:58:14,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:58:14,790.790 INFO    ] time= 13/06/2026 07:58:14
[2026-06-13 07:58:14,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:58:14,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:58:14,971.971 INFO    ] No existing commands found in stream
[2026-06-13 07:58:19,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:58:19,985.985 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 07:58:22,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:58:22,117.117 INFO    ] Checking for system updates...
[2026-06-13 07:58:22,138.138 INFO    ] 200
[2026-06-13 07:58:22,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:22,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:22,171.171 INFO    ] No update needed
[2026-06-13 07:58:22,172.172 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:22,192.192 INFO    ] 200
[2026-06-13 07:58:22,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:22,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:22,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:22,255.255 INFO    ] No camera update needed
[2026-06-13 07:58:22,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:22,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:22,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:22,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:58:24,302.302 INFO    ] ================================================
[2026-06-13 07:58:24,317.317 INFO    ] Launching Daemon at Sat Jun 13 07:58:24 IST 2026
[2026-06-13 07:58:24,327.327 INFO    ] ================================================
[2026-06-13 07:58:24,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:58:24
[2026-06-13 07:58:25,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:58:25,154.154 INFO    ] Initializing speech engine...
[2026-06-13 07:58:25,160.160 INFO    ] 2026-06-13 07:58:25
[2026-06-13 07:58:25,365.365 INFO    ] 2026-06-13 07:58:25
[2026-06-13 07:58:25,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:58:25,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:58:25,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:58:25,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:58:25,813.813 INFO    ] time= 13/06/2026 07:58:25
[2026-06-13 07:58:25,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:58:25,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:58:26,035.035 INFO    ] No existing commands found in stream
[2026-06-13 07:58:31,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:58:31,053.053 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 07:58:33,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:58:33,801.801 INFO    ] Checking for system updates...
[2026-06-13 07:58:33,822.822 INFO    ] 200
[2026-06-13 07:58:33,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:33,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:33,855.855 INFO    ] No update needed
[2026-06-13 07:58:33,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:33,878.878 INFO    ] 200
[2026-06-13 07:58:33,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:33,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:33,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:33,940.940 INFO    ] No camera update needed
[2026-06-13 07:58:33,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:33,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:33,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:33,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:58:35,989.989 INFO    ] ================================================
[2026-06-13 07:58:36,007.007 INFO    ] Launching Daemon at Sat Jun 13 07:58:36 IST 2026
[2026-06-13 07:58:36,018.018 INFO    ] ================================================
[2026-06-13 07:58:36,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:58:36
[2026-06-13 07:58:36,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:58:36,805.805 INFO    ] Initializing speech engine...
[2026-06-13 07:58:36,819.819 INFO    ] 2026-06-13 07:58:36
[2026-06-13 07:58:37,027.027 INFO    ] 2026-06-13 07:58:37
[2026-06-13 07:58:37,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:58:37,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:58:37,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:58:37,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:58:37,441.441 INFO    ] time= 13/06/2026 07:58:37
[2026-06-13 07:58:37,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:58:37,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:58:37,544.544 INFO    ] No existing commands found in stream
[2026-06-13 07:58:42,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:58:42,557.557 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 07:58:46,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:58:46,517.517 INFO    ] Checking for system updates...
[2026-06-13 07:58:46,538.538 INFO    ] 200
[2026-06-13 07:58:46,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:46,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:46,571.571 INFO    ] No update needed
[2026-06-13 07:58:46,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:46,592.592 INFO    ] 200
[2026-06-13 07:58:46,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:46,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:46,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:58:46,660.660 INFO    ] No camera update needed
[2026-06-13 07:58:46,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:46,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:46,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:46,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:58:48,708.708 INFO    ] ================================================
[2026-06-13 07:58:48,723.723 INFO    ] Launching Daemon at Sat Jun 13 07:58:48 IST 2026
[2026-06-13 07:58:48,734.734 INFO    ] ================================================
[2026-06-13 07:58:49,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:58:49
[2026-06-13 07:58:49,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:58:49,554.554 INFO    ] Initializing speech engine...
[2026-06-13 07:58:49,560.560 INFO    ] 2026-06-13 07:58:49
[2026-06-13 07:58:49,773.773 INFO    ] 2026-06-13 07:58:49
[2026-06-13 07:58:49,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:58:49,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:58:49,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:58:50,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:58:50,197.197 INFO    ] time= 13/06/2026 07:58:50
[2026-06-13 07:58:50,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:58:50,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:58:50,321.321 INFO    ] No existing commands found in stream
[2026-06-13 07:58:55,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:58:55,334.334 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 07:58:58,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 07:58:58,087.087 INFO    ] Checking for system updates...
[2026-06-13 07:58:58,110.110 INFO    ] 200
[2026-06-13 07:58:58,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:58,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:58,143.143 INFO    ] No update needed
[2026-06-13 07:58:58,144.144 INFO    ] Checking for camera pi updates...
[2026-06-13 07:58:58,166.166 INFO    ] 200
[2026-06-13 07:58:58,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:58:58,190.190 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:58:58,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:58:58,227.227 INFO    ] No camera update needed
[2026-06-13 07:58:58,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:58:58,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:58:58,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:58:58,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:00,274.274 INFO    ] ================================================
[2026-06-13 07:59:00,290.290 INFO    ] Launching Daemon at Sat Jun 13 07:59:00 IST 2026
[2026-06-13 07:59:00,301.301 INFO    ] ================================================
[2026-06-13 07:59:00,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:00
[2026-06-13 07:59:00,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:01,325.325 INFO    ] Initializing speech engine...
[2026-06-13 07:59:01,351.351 INFO    ] 2026-06-13 07:59:01
[2026-06-13 07:59:01,616.616 INFO    ] 2026-06-13 07:59:01
[2026-06-13 07:59:01,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:01,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:01,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:01,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:01,974.974 INFO    ] time= 13/06/2026 07:59:01
[2026-06-13 07:59:02,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:02,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:02,157.157 INFO    ] No existing commands found in stream
[2026-06-13 07:59:07,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:59:07,170.170 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 07:59:08,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 07:59:08,494.494 INFO    ] Checking for system updates...
[2026-06-13 07:59:08,514.514 INFO    ] 200
[2026-06-13 07:59:08,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:08,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:08,547.547 INFO    ] No update needed
[2026-06-13 07:59:08,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 07:59:08,568.568 INFO    ] 200
[2026-06-13 07:59:08,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:08,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:59:08,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:08,631.631 INFO    ] No camera update needed
[2026-06-13 07:59:08,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:59:08,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:59:08,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:59:08,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:10,682.682 INFO    ] ================================================
[2026-06-13 07:59:10,697.697 INFO    ] Launching Daemon at Sat Jun 13 07:59:10 IST 2026
[2026-06-13 07:59:10,708.708 INFO    ] ================================================
[2026-06-13 07:59:11,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:11
[2026-06-13 07:59:11,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:11,558.558 INFO    ] Initializing speech engine...
[2026-06-13 07:59:11,569.569 INFO    ] 2026-06-13 07:59:11
[2026-06-13 07:59:11,778.778 INFO    ] 2026-06-13 07:59:11
[2026-06-13 07:59:11,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:11,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:11,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:12,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:12,193.193 INFO    ] time= 13/06/2026 07:59:12
[2026-06-13 07:59:12,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:12,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:12,301.301 INFO    ] No existing commands found in stream
[2026-06-13 07:59:17,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:59:17,314.314 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 07:59:20,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:59:20,508.508 INFO    ] Checking for system updates...
[2026-06-13 07:59:20,531.531 INFO    ] 200
[2026-06-13 07:59:20,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:20,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:59:20,563.563 INFO    ] No update needed
[2026-06-13 07:59:20,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 07:59:20,584.584 INFO    ] 200
[2026-06-13 07:59:20,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:20,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:59:20,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:59:20,653.653 INFO    ] No camera update needed
[2026-06-13 07:59:20,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:59:20,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:59:20,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:59:20,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:22,700.700 INFO    ] ================================================
[2026-06-13 07:59:22,715.715 INFO    ] Launching Daemon at Sat Jun 13 07:59:22 IST 2026
[2026-06-13 07:59:22,726.726 INFO    ] ================================================
[2026-06-13 07:59:23,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:23
[2026-06-13 07:59:23,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:23,499.499 INFO    ] Initializing speech engine...
[2026-06-13 07:59:23,504.504 INFO    ] 2026-06-13 07:59:23
[2026-06-13 07:59:23,722.722 INFO    ] 2026-06-13 07:59:23
[2026-06-13 07:59:23,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:23,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:23,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:24,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:24,124.124 INFO    ] time= 13/06/2026 07:59:24
[2026-06-13 07:59:24,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:24,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:24,241.241 INFO    ] No existing commands found in stream
[2026-06-13 07:59:29,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:59:29,254.254 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 07:59:32,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 07:59:32,573.573 INFO    ] Checking for system updates...
[2026-06-13 07:59:32,593.593 INFO    ] 200
[2026-06-13 07:59:32,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:32,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:32,628.628 INFO    ] No update needed
[2026-06-13 07:59:32,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 07:59:32,649.649 INFO    ] 200
[2026-06-13 07:59:32,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:32,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:59:32,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:32,699.699 INFO    ] No camera update needed
[2026-06-13 07:59:32,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:59:32,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:59:32,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:59:32,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:34,747.747 INFO    ] ================================================
[2026-06-13 07:59:34,761.761 INFO    ] Launching Daemon at Sat Jun 13 07:59:34 IST 2026
[2026-06-13 07:59:34,772.772 INFO    ] ================================================
[2026-06-13 07:59:35,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:35
[2026-06-13 07:59:35,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:35,599.599 INFO    ] Initializing speech engine...
[2026-06-13 07:59:35,609.609 INFO    ] 2026-06-13 07:59:35
[2026-06-13 07:59:35,816.816 INFO    ] 2026-06-13 07:59:35
[2026-06-13 07:59:35,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:36,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:36,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:36,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:36,221.221 INFO    ] time= 13/06/2026 07:59:36
[2026-06-13 07:59:36,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:36,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:36,330.330 INFO    ] No existing commands found in stream
[2026-06-13 07:59:41,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:59:41,344.344 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 07:59:42,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 07:59:42,549.549 INFO    ] Checking for system updates...
[2026-06-13 07:59:42,572.572 INFO    ] 200
[2026-06-13 07:59:42,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:42,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:59:42,608.608 INFO    ] No update needed
[2026-06-13 07:59:42,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 07:59:42,630.630 INFO    ] 200
[2026-06-13 07:59:42,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:42,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:59:42,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 07:59:42,692.692 INFO    ] No camera update needed
[2026-06-13 07:59:42,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:59:42,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:59:42,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:59:42,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:44,739.739 INFO    ] ================================================
[2026-06-13 07:59:44,755.755 INFO    ] Launching Daemon at Sat Jun 13 07:59:44 IST 2026
[2026-06-13 07:59:44,765.765 INFO    ] ================================================
[2026-06-13 07:59:45,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:45
[2026-06-13 07:59:45,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:45,579.579 INFO    ] Initializing speech engine...
[2026-06-13 07:59:45,584.584 INFO    ] 2026-06-13 07:59:45
[2026-06-13 07:59:45,789.789 INFO    ] 2026-06-13 07:59:45
[2026-06-13 07:59:45,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:46,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:46,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:46,198.198 INFO    ] time= 13/06/2026 07:59:46
[2026-06-13 07:59:46,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:46,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:46,309.309 INFO    ] No existing commands found in stream
[2026-06-13 07:59:51,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 07:59:51,318.318 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 07:59:54,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 07:59:54,259.259 INFO    ] Checking for system updates...
[2026-06-13 07:59:54,298.298 INFO    ] 200
[2026-06-13 07:59:54,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:54,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:54,356.356 INFO    ] No update needed
[2026-06-13 07:59:54,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 07:59:54,392.392 INFO    ] 200
[2026-06-13 07:59:54,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 07:59:54,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 07:59:54,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 07:59:54,472.472 INFO    ] No camera update needed
[2026-06-13 07:59:54,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 07:59:54,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 07:59:54,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 07:59:54,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 07:59:56,518.518 INFO    ] ================================================
[2026-06-13 07:59:56,533.533 INFO    ] Launching Daemon at Sat Jun 13 07:59:56 IST 2026
[2026-06-13 07:59:56,544.544 INFO    ] ================================================
[2026-06-13 07:59:56,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 07:59:56
[2026-06-13 07:59:57,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 07:59:57,310.310 INFO    ] Initializing speech engine...
[2026-06-13 07:59:57,318.318 INFO    ] 2026-06-13 07:59:57
[2026-06-13 07:59:57,529.529 INFO    ] 2026-06-13 07:59:57
[2026-06-13 07:59:57,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 07:59:57,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 07:59:57,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 07:59:57,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 07:59:57,913.913 INFO    ] time= 13/06/2026 07:59:57
[2026-06-13 07:59:57,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 07:59:57,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 07:59:58,049.049 INFO    ] No existing commands found in stream
[2026-06-13 08:00:03,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:03,063.063 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 08:00:09,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:00:09,721.721 INFO    ] Checking for system updates...
[2026-06-13 08:00:09,757.757 INFO    ] 200
[2026-06-13 08:00:09,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:09,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:00:09,822.822 INFO    ] No update needed
[2026-06-13 08:00:09,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 08:00:09,862.862 INFO    ] 200
[2026-06-13 08:00:09,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:09,907.907 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:00:09,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:00:09,947.947 INFO    ] No camera update needed
[2026-06-13 08:00:09,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:00:09,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:00:09,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:00:09,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:00:12,002.002 INFO    ] ================================================
[2026-06-13 08:00:12,017.017 INFO    ] Launching Daemon at Sat Jun 13 08:00:12 IST 2026
[2026-06-13 08:00:12,028.028 INFO    ] ================================================
[2026-06-13 08:00:12,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:00:12
[2026-06-13 08:00:12,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:00:12,990.990 INFO    ] Initializing speech engine...
[2026-06-13 08:00:13,003.003 INFO    ] 2026-06-13 08:00:12
[2026-06-13 08:00:13,287.287 INFO    ] 2026-06-13 08:00:13
[2026-06-13 08:00:13,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:00:13,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:00:13,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:00:13,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:00:13,656.656 INFO    ] time= 13/06/2026 08:00:13
[2026-06-13 08:00:13,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:00:13,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:00:13,783.783 INFO    ] No existing commands found in stream
[2026-06-13 08:00:18,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:18,798.798 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 08:00:19,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:00:19,848.848 INFO    ] Checking for system updates...
[2026-06-13 08:00:19,869.869 INFO    ] 200
[2026-06-13 08:00:19,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:19,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:19,904.904 INFO    ] No update needed
[2026-06-13 08:00:19,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 08:00:19,927.927 INFO    ] 200
[2026-06-13 08:00:19,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:19,951.951 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:00:19,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:19,990.990 INFO    ] No camera update needed
[2026-06-13 08:00:19,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:00:19,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:00:19,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:00:19,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:00:22,036.036 INFO    ] ================================================
[2026-06-13 08:00:22,052.052 INFO    ] Launching Daemon at Sat Jun 13 08:00:22 IST 2026
[2026-06-13 08:00:22,062.062 INFO    ] ================================================
[2026-06-13 08:00:22,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:00:22
[2026-06-13 08:00:22,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:00:22,882.882 INFO    ] Initializing speech engine...
[2026-06-13 08:00:22,892.892 INFO    ] 2026-06-13 08:00:22
[2026-06-13 08:00:23,098.098 INFO    ] 2026-06-13 08:00:23
[2026-06-13 08:00:23,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:00:23,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:00:23,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:00:23,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:00:23,497.497 INFO    ] time= 13/06/2026 08:00:23
[2026-06-13 08:00:23,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:00:23,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:00:23,696.696 INFO    ] No existing commands found in stream
[2026-06-13 08:00:28,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:28,724.724 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 08:00:30,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:00:30,229.229 INFO    ] Checking for system updates...
[2026-06-13 08:00:30,250.250 INFO    ] 200
[2026-06-13 08:00:30,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:30,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:00:30,283.283 INFO    ] No update needed
[2026-06-13 08:00:30,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 08:00:30,305.305 INFO    ] 200
[2026-06-13 08:00:30,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:30,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:00:30,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:00:30,370.370 INFO    ] No camera update needed
[2026-06-13 08:00:30,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:00:30,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:00:30,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:00:30,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:00:32,412.412 INFO    ] ================================================
[2026-06-13 08:00:32,422.422 INFO    ] Launching Daemon at Sat Jun 13 08:00:32 IST 2026
[2026-06-13 08:00:32,429.429 INFO    ] ================================================
[2026-06-13 08:00:32,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:00:32
[2026-06-13 08:00:33,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:00:33,289.289 INFO    ] Initializing speech engine...
[2026-06-13 08:00:33,301.301 INFO    ] 2026-06-13 08:00:33
[2026-06-13 08:00:33,512.512 INFO    ] 2026-06-13 08:00:33
[2026-06-13 08:00:33,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:00:33,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:00:33,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:00:33,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:00:33,905.905 INFO    ] time= 13/06/2026 08:00:33
[2026-06-13 08:00:33,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:00:33,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:00:34,030.030 INFO    ] No existing commands found in stream
[2026-06-13 08:00:39,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:39,044.044 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 08:00:40,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:00:40,739.739 INFO    ] Checking for system updates...
[2026-06-13 08:00:40,761.761 INFO    ] 200
[2026-06-13 08:00:40,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:40,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:40,799.799 INFO    ] No update needed
[2026-06-13 08:00:40,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 08:00:40,821.821 INFO    ] 200
[2026-06-13 08:00:40,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:40,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:00:40,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:40,996.996 INFO    ] No camera update needed
[2026-06-13 08:00:40,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:00:40,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:00:41,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:00:41,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:00:43,044.044 INFO    ] ================================================
[2026-06-13 08:00:43,060.060 INFO    ] Launching Daemon at Sat Jun 13 08:00:43 IST 2026
[2026-06-13 08:00:43,071.071 INFO    ] ================================================
[2026-06-13 08:00:43,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:00:43
[2026-06-13 08:00:43,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:00:43,866.866 INFO    ] Initializing speech engine...
[2026-06-13 08:00:43,871.871 INFO    ] 2026-06-13 08:00:43
[2026-06-13 08:00:44,075.075 INFO    ] 2026-06-13 08:00:44
[2026-06-13 08:00:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:00:44,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:00:44,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:00:44,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:00:44,480.480 INFO    ] time= 13/06/2026 08:00:44
[2026-06-13 08:00:44,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:00:44,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:00:44,597.597 INFO    ] No existing commands found in stream
[2026-06-13 08:00:49,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:49,610.610 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 08:00:50,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:00:50,542.542 INFO    ] Checking for system updates...
[2026-06-13 08:00:50,563.563 INFO    ] 200
[2026-06-13 08:00:50,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:50,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:50,601.601 INFO    ] No update needed
[2026-06-13 08:00:50,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 08:00:50,621.621 INFO    ] 200
[2026-06-13 08:00:50,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:00:50,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:00:50,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:00:50,693.693 INFO    ] No camera update needed
[2026-06-13 08:00:50,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:00:50,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:00:50,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:00:50,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:00:52,743.743 INFO    ] ================================================
[2026-06-13 08:00:52,758.758 INFO    ] Launching Daemon at Sat Jun 13 08:00:52 IST 2026
[2026-06-13 08:00:52,769.769 INFO    ] ================================================
[2026-06-13 08:00:53,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:00:53
[2026-06-13 08:00:53,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:00:53,646.646 INFO    ] Initializing speech engine...
[2026-06-13 08:00:53,651.651 INFO    ] 2026-06-13 08:00:53
[2026-06-13 08:00:53,861.861 INFO    ] 2026-06-13 08:00:53
[2026-06-13 08:00:53,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:00:54,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:00:54,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:00:54,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:00:54,253.253 INFO    ] time= 13/06/2026 08:00:54
[2026-06-13 08:00:54,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:00:54,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:00:54,380.380 INFO    ] No existing commands found in stream
[2026-06-13 08:00:59,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:00:59,394.394 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 08:01:00,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:01:00,019.019 INFO    ] Checking for system updates...
[2026-06-13 08:01:00,041.041 INFO    ] 200
[2026-06-13 08:01:00,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:00,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:00,075.075 INFO    ] No update needed
[2026-06-13 08:01:00,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:00,095.095 INFO    ] 200
[2026-06-13 08:01:00,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:00,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:00,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:00,164.164 INFO    ] No camera update needed
[2026-06-13 08:01:00,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:00,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:00,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:00,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:01:02,204.204 INFO    ] ================================================
[2026-06-13 08:01:02,216.216 INFO    ] Launching Daemon at Sat Jun 13 08:01:02 IST 2026
[2026-06-13 08:01:02,227.227 INFO    ] ================================================
[2026-06-13 08:01:02,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:01:02
[2026-06-13 08:01:03,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:01:03,364.364 INFO    ] Initializing speech engine...
[2026-06-13 08:01:03,372.372 INFO    ] 2026-06-13 08:01:03
[2026-06-13 08:01:03,669.669 INFO    ] 2026-06-13 08:01:03
[2026-06-13 08:01:03,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:01:03,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:01:03,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:01:04,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:01:04,018.018 INFO    ] time= 13/06/2026 08:01:04
[2026-06-13 08:01:04,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:01:04,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:01:04,093.093 INFO    ] No existing commands found in stream
[2026-06-13 08:01:09,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:01:09,108.108 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 08:01:11,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:01:11,543.543 INFO    ] Checking for system updates...
[2026-06-13 08:01:11,563.563 INFO    ] 200
[2026-06-13 08:01:11,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:11,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:11,597.597 INFO    ] No update needed
[2026-06-13 08:01:11,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:11,619.619 INFO    ] 200
[2026-06-13 08:01:11,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:11,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:11,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:01:11,685.685 INFO    ] No camera update needed
[2026-06-13 08:01:11,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:11,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:11,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:11,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:01:13,733.733 INFO    ] ================================================
[2026-06-13 08:01:13,748.748 INFO    ] Launching Daemon at Sat Jun 13 08:01:13 IST 2026
[2026-06-13 08:01:13,758.758 INFO    ] ================================================
[2026-06-13 08:01:14,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:01:14
[2026-06-13 08:01:14,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:01:14,576.576 INFO    ] Initializing speech engine...
[2026-06-13 08:01:14,585.585 INFO    ] 2026-06-13 08:01:14
[2026-06-13 08:01:14,790.790 INFO    ] 2026-06-13 08:01:14
[2026-06-13 08:01:14,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:01:14,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:01:15,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:01:15,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:01:15,192.192 INFO    ] time= 13/06/2026 08:01:15
[2026-06-13 08:01:15,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:01:15,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:01:15,306.306 INFO    ] No existing commands found in stream
[2026-06-13 08:01:20,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:01:20,319.319 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 08:01:22,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:01:22,182.182 INFO    ] Checking for system updates...
[2026-06-13 08:01:22,204.204 INFO    ] 200
[2026-06-13 08:01:22,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:22,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:22,237.237 INFO    ] No update needed
[2026-06-13 08:01:22,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:22,258.258 INFO    ] 200
[2026-06-13 08:01:22,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:22,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:22,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:22,324.324 INFO    ] No camera update needed
[2026-06-13 08:01:22,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:22,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:22,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:22,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:01:24,380.380 INFO    ] ================================================
[2026-06-13 08:01:24,395.395 INFO    ] Launching Daemon at Sat Jun 13 08:01:24 IST 2026
[2026-06-13 08:01:24,406.406 INFO    ] ================================================
[2026-06-13 08:01:24,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:01:24
[2026-06-13 08:01:25,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:01:25,265.265 INFO    ] Initializing speech engine...
[2026-06-13 08:01:25,288.288 INFO    ] 2026-06-13 08:01:25
[2026-06-13 08:01:25,547.547 INFO    ] 2026-06-13 08:01:25
[2026-06-13 08:01:25,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:01:25,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:01:25,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:01:25,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:01:25,902.902 INFO    ] time= 13/06/2026 08:01:25
[2026-06-13 08:01:25,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:01:25,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:01:25,998.998 INFO    ] No existing commands found in stream
[2026-06-13 08:01:31,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:01:31,013.013 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 08:01:33,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:01:33,988.988 INFO    ] Checking for system updates...
[2026-06-13 08:01:34,009.009 INFO    ] 200
[2026-06-13 08:01:34,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:34,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:34,045.045 INFO    ] No update needed
[2026-06-13 08:01:34,046.046 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:34,065.065 INFO    ] 200
[2026-06-13 08:01:34,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:34,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:34,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:01:34,129.129 INFO    ] No camera update needed
[2026-06-13 08:01:34,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:34,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:34,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:34,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:01:36,172.172 INFO    ] ================================================
[2026-06-13 08:01:36,182.182 INFO    ] Launching Daemon at Sat Jun 13 08:01:36 IST 2026
[2026-06-13 08:01:36,189.189 INFO    ] ================================================
[2026-06-13 08:01:36,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:01:36
[2026-06-13 08:01:37,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:01:37,468.468 INFO    ] Initializing speech engine...
[2026-06-13 08:01:37,477.477 INFO    ] 2026-06-13 08:01:37
[2026-06-13 08:01:37,724.724 INFO    ] 2026-06-13 08:01:37
[2026-06-13 08:01:37,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:01:37,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:01:37,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:01:38,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:01:38,072.072 INFO    ] time= 13/06/2026 08:01:38
[2026-06-13 08:01:38,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:01:38,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:01:38,167.167 INFO    ] No existing commands found in stream
[2026-06-13 08:01:43,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:01:43,183.183 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 08:01:46,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:01:46,909.909 INFO    ] Checking for system updates...
[2026-06-13 08:01:46,950.950 INFO    ] 200
[2026-06-13 08:01:46,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:47,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:01:47,009.009 INFO    ] No update needed
[2026-06-13 08:01:47,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:47,050.050 INFO    ] 200
[2026-06-13 08:01:47,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:47,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:47,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:01:47,136.136 INFO    ] No camera update needed
[2026-06-13 08:01:47,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:47,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:47,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:47,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:01:49,191.191 INFO    ] ================================================
[2026-06-13 08:01:49,206.206 INFO    ] Launching Daemon at Sat Jun 13 08:01:49 IST 2026
[2026-06-13 08:01:49,216.216 INFO    ] ================================================
[2026-06-13 08:01:49,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:01:49
[2026-06-13 08:01:49,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:01:50,019.019 INFO    ] Initializing speech engine...
[2026-06-13 08:01:50,024.024 INFO    ] 2026-06-13 08:01:50
[2026-06-13 08:01:50,228.228 INFO    ] 2026-06-13 08:01:50
[2026-06-13 08:01:50,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:01:50,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:01:50,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:01:50,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:01:50,634.634 INFO    ] time= 13/06/2026 08:01:50
[2026-06-13 08:01:50,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:01:50,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:01:50,744.744 INFO    ] No existing commands found in stream
[2026-06-13 08:01:55,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:01:55,757.757 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 08:01:59,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:01:59,052.052 INFO    ] Checking for system updates...
[2026-06-13 08:01:59,073.073 INFO    ] 200
[2026-06-13 08:01:59,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:59,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:59,106.106 INFO    ] No update needed
[2026-06-13 08:01:59,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 08:01:59,131.131 INFO    ] 200
[2026-06-13 08:01:59,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:01:59,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:01:59,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:01:59,207.207 INFO    ] No camera update needed
[2026-06-13 08:01:59,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:01:59,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:01:59,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:01:59,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:01,257.257 INFO    ] ================================================
[2026-06-13 08:02:01,272.272 INFO    ] Launching Daemon at Sat Jun 13 08:02:01 IST 2026
[2026-06-13 08:02:01,284.284 INFO    ] ================================================
[2026-06-13 08:02:01,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:01
[2026-06-13 08:02:02,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:02,217.217 INFO    ] Initializing speech engine...
[2026-06-13 08:02:02,222.222 INFO    ] 2026-06-13 08:02:02
[2026-06-13 08:02:02,449.449 INFO    ] 2026-06-13 08:02:02
[2026-06-13 08:02:02,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:02,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:02,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:02,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:02,764.764 INFO    ] time= 13/06/2026 08:02:02
[2026-06-13 08:02:02,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:02,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:02,869.869 INFO    ] No existing commands found in stream
[2026-06-13 08:02:07,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:02:07,906.906 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 08:02:09,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:02:09,631.631 INFO    ] Checking for system updates...
[2026-06-13 08:02:09,654.654 INFO    ] 200
[2026-06-13 08:02:09,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:09,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:09,689.689 INFO    ] No update needed
[2026-06-13 08:02:09,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 08:02:09,710.710 INFO    ] 200
[2026-06-13 08:02:09,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:09,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:02:09,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:09,777.777 INFO    ] No camera update needed
[2026-06-13 08:02:09,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:02:09,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:02:09,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:02:09,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:11,827.827 INFO    ] ================================================
[2026-06-13 08:02:11,843.843 INFO    ] Launching Daemon at Sat Jun 13 08:02:11 IST 2026
[2026-06-13 08:02:11,855.855 INFO    ] ================================================
[2026-06-13 08:02:12,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:12
[2026-06-13 08:02:12,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:12,700.700 INFO    ] Initializing speech engine...
[2026-06-13 08:02:12,709.709 INFO    ] 2026-06-13 08:02:12
[2026-06-13 08:02:12,918.918 INFO    ] 2026-06-13 08:02:12
[2026-06-13 08:02:12,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:13,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:13,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:13,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:13,319.319 INFO    ] time= 13/06/2026 08:02:13
[2026-06-13 08:02:13,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:13,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:13,499.499 INFO    ] No existing commands found in stream
[2026-06-13 08:02:18,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:02:18,534.534 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 08:02:19,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:02:19,914.914 INFO    ] Checking for system updates...
[2026-06-13 08:02:19,934.934 INFO    ] 200
[2026-06-13 08:02:19,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:19,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:19,972.972 INFO    ] No update needed
[2026-06-13 08:02:19,973.973 INFO    ] Checking for camera pi updates...
[2026-06-13 08:02:19,993.993 INFO    ] 200
[2026-06-13 08:02:19,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:20,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:02:20,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:20,062.062 INFO    ] No camera update needed
[2026-06-13 08:02:20,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:02:20,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:02:20,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:02:20,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:22,116.116 INFO    ] ================================================
[2026-06-13 08:02:22,132.132 INFO    ] Launching Daemon at Sat Jun 13 08:02:22 IST 2026
[2026-06-13 08:02:22,142.142 INFO    ] ================================================
[2026-06-13 08:02:22,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:22
[2026-06-13 08:02:22,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:22,942.942 INFO    ] Initializing speech engine...
[2026-06-13 08:02:22,950.950 INFO    ] 2026-06-13 08:02:22
[2026-06-13 08:02:23,159.159 INFO    ] 2026-06-13 08:02:23
[2026-06-13 08:02:23,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:23,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:23,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:23,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:23,574.574 INFO    ] time= 13/06/2026 08:02:23
[2026-06-13 08:02:23,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:23,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:23,671.671 INFO    ] No existing commands found in stream
[2026-06-13 08:02:28,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:02:28,685.685 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 08:02:32,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:02:32,657.657 INFO    ] Checking for system updates...
[2026-06-13 08:02:32,693.693 INFO    ] 200
[2026-06-13 08:02:32,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:32,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:02:32,758.758 INFO    ] No update needed
[2026-06-13 08:02:32,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 08:02:32,799.799 INFO    ] 200
[2026-06-13 08:02:32,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:32,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:02:32,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:02:32,893.893 INFO    ] No camera update needed
[2026-06-13 08:02:32,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:02:32,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:02:32,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:02:32,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:34,951.951 INFO    ] ================================================
[2026-06-13 08:02:34,966.966 INFO    ] Launching Daemon at Sat Jun 13 08:02:34 IST 2026
[2026-06-13 08:02:34,977.977 INFO    ] ================================================
[2026-06-13 08:02:35,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:35
[2026-06-13 08:02:35,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:36,013.013 INFO    ] Initializing speech engine...
[2026-06-13 08:02:36,022.022 INFO    ] 2026-06-13 08:02:36
[2026-06-13 08:02:36,225.225 INFO    ] 2026-06-13 08:02:36
[2026-06-13 08:02:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:36,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:36,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:36,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:36,660.660 INFO    ] time= 13/06/2026 08:02:36
[2026-06-13 08:02:36,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:36,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:36,756.756 INFO    ] No existing commands found in stream
[2026-06-13 08:02:41,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:02:41,768.768 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 08:02:42,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:02:42,782.782 INFO    ] Checking for system updates...
[2026-06-13 08:02:42,804.804 INFO    ] 200
[2026-06-13 08:02:42,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:42,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:42,837.837 INFO    ] No update needed
[2026-06-13 08:02:42,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 08:02:42,861.861 INFO    ] 200
[2026-06-13 08:02:42,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:42,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:02:43,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:43,030.030 INFO    ] No camera update needed
[2026-06-13 08:02:43,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:02:43,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:02:43,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:02:43,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:45,079.079 INFO    ] ================================================
[2026-06-13 08:02:45,094.094 INFO    ] Launching Daemon at Sat Jun 13 08:02:45 IST 2026
[2026-06-13 08:02:45,106.106 INFO    ] ================================================
[2026-06-13 08:02:45,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:45
[2026-06-13 08:02:45,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:45,898.898 INFO    ] Initializing speech engine...
[2026-06-13 08:02:45,902.902 INFO    ] 2026-06-13 08:02:45
[2026-06-13 08:02:46,097.097 INFO    ] 2026-06-13 08:02:46
[2026-06-13 08:02:46,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:46,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:46,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:46,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:46,534.534 INFO    ] time= 13/06/2026 08:02:46
[2026-06-13 08:02:46,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:46,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:46,677.677 INFO    ] No existing commands found in stream
[2026-06-13 08:02:51,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:02:51,691.691 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 08:02:54,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:02:54,146.146 INFO    ] Checking for system updates...
[2026-06-13 08:02:54,168.168 INFO    ] 200
[2026-06-13 08:02:54,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:54,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:54,201.201 INFO    ] No update needed
[2026-06-13 08:02:54,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 08:02:54,225.225 INFO    ] 200
[2026-06-13 08:02:54,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:02:54,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:02:54,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:02:54,292.292 INFO    ] No camera update needed
[2026-06-13 08:02:54,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:02:54,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:02:54,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:02:54,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:02:56,339.339 INFO    ] ================================================
[2026-06-13 08:02:56,355.355 INFO    ] Launching Daemon at Sat Jun 13 08:02:56 IST 2026
[2026-06-13 08:02:56,366.366 INFO    ] ================================================
[2026-06-13 08:02:56,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:02:56
[2026-06-13 08:02:57,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:02:57,190.190 INFO    ] Initializing speech engine...
[2026-06-13 08:02:57,202.202 INFO    ] 2026-06-13 08:02:57
[2026-06-13 08:02:57,410.410 INFO    ] 2026-06-13 08:02:57
[2026-06-13 08:02:57,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:02:57,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:02:57,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:02:57,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:02:57,811.811 INFO    ] time= 13/06/2026 08:02:57
[2026-06-13 08:02:57,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:02:57,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:02:57,932.932 INFO    ] No existing commands found in stream
[2026-06-13 08:03:02,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:02,945.945 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 08:03:05,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:03:05,231.231 INFO    ] Checking for system updates...
[2026-06-13 08:03:05,252.252 INFO    ] 200
[2026-06-13 08:03:05,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:05,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:05,285.285 INFO    ] No update needed
[2026-06-13 08:03:05,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 08:03:05,307.307 INFO    ] 200
[2026-06-13 08:03:05,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:05,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:03:05,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:05,384.384 INFO    ] No camera update needed
[2026-06-13 08:03:05,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:03:05,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:03:05,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:03:05,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:03:07,426.426 INFO    ] ================================================
[2026-06-13 08:03:07,434.434 INFO    ] Launching Daemon at Sat Jun 13 08:03:07 IST 2026
[2026-06-13 08:03:07,441.441 INFO    ] ================================================
[2026-06-13 08:03:07,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:03:07
[2026-06-13 08:03:08,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:03:08,771.771 INFO    ] Initializing speech engine...
[2026-06-13 08:03:08,781.781 INFO    ] 2026-06-13 08:03:08
[2026-06-13 08:03:09,043.043 INFO    ] 2026-06-13 08:03:09
[2026-06-13 08:03:09,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:03:09,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:03:09,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:03:09,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:03:09,363.363 INFO    ] time= 13/06/2026 08:03:09
[2026-06-13 08:03:09,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:03:09,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:03:09,473.473 INFO    ] No existing commands found in stream
[2026-06-13 08:03:14,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:14,489.489 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 08:03:16,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:03:16,234.234 INFO    ] Checking for system updates...
[2026-06-13 08:03:16,258.258 INFO    ] 200
[2026-06-13 08:03:16,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:16,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:03:16,290.290 INFO    ] No update needed
[2026-06-13 08:03:16,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 08:03:16,312.312 INFO    ] 200
[2026-06-13 08:03:16,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:16,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:03:16,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:03:16,379.379 INFO    ] No camera update needed
[2026-06-13 08:03:16,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:03:16,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:03:16,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:03:16,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:03:18,427.427 INFO    ] ================================================
[2026-06-13 08:03:18,442.442 INFO    ] Launching Daemon at Sat Jun 13 08:03:18 IST 2026
[2026-06-13 08:03:18,452.452 INFO    ] ================================================
[2026-06-13 08:03:18,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:03:18
[2026-06-13 08:03:19,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:03:19,258.258 INFO    ] Initializing speech engine...
[2026-06-13 08:03:19,263.263 INFO    ] 2026-06-13 08:03:19
[2026-06-13 08:03:19,466.466 INFO    ] 2026-06-13 08:03:19
[2026-06-13 08:03:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:03:19,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:03:19,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:03:19,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:03:19,870.870 INFO    ] time= 13/06/2026 08:03:19
[2026-06-13 08:03:19,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:03:19,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:03:19,979.979 INFO    ] No existing commands found in stream
[2026-06-13 08:03:24,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:24,992.992 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 08:03:28,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:03:28,908.908 INFO    ] Checking for system updates...
[2026-06-13 08:03:28,930.930 INFO    ] 200
[2026-06-13 08:03:28,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:28,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:28,966.966 INFO    ] No update needed
[2026-06-13 08:03:28,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 08:03:29,002.002 INFO    ] 200
[2026-06-13 08:03:29,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:29,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:03:29,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:29,080.080 INFO    ] No camera update needed
[2026-06-13 08:03:29,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:03:29,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:03:29,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:03:29,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:03:31,130.130 INFO    ] ================================================
[2026-06-13 08:03:31,146.146 INFO    ] Launching Daemon at Sat Jun 13 08:03:31 IST 2026
[2026-06-13 08:03:31,160.160 INFO    ] ================================================
[2026-06-13 08:03:31,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:03:31
[2026-06-13 08:03:31,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:03:32,029.029 INFO    ] Initializing speech engine...
[2026-06-13 08:03:32,038.038 INFO    ] 2026-06-13 08:03:32
[2026-06-13 08:03:32,247.247 INFO    ] 2026-06-13 08:03:32
[2026-06-13 08:03:32,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:03:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:03:32,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:03:32,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:03:32,660.660 INFO    ] time= 13/06/2026 08:03:32
[2026-06-13 08:03:32,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:03:32,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:03:32,764.764 INFO    ] No existing commands found in stream
[2026-06-13 08:03:37,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:37,778.778 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 08:03:38,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:03:38,950.950 INFO    ] Checking for system updates...
[2026-06-13 08:03:38,971.971 INFO    ] 200
[2026-06-13 08:03:38,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:39,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:39,010.010 INFO    ] No update needed
[2026-06-13 08:03:39,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 08:03:39,034.034 INFO    ] 200
[2026-06-13 08:03:39,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:39,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:03:39,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:39,108.108 INFO    ] No camera update needed
[2026-06-13 08:03:39,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:03:39,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:03:39,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:03:39,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:03:41,156.156 INFO    ] ================================================
[2026-06-13 08:03:41,171.171 INFO    ] Launching Daemon at Sat Jun 13 08:03:41 IST 2026
[2026-06-13 08:03:41,182.182 INFO    ] ================================================
[2026-06-13 08:03:41,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:03:41
[2026-06-13 08:03:41,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:03:41,955.955 INFO    ] Initializing speech engine...
[2026-06-13 08:03:41,963.963 INFO    ] 2026-06-13 08:03:41
[2026-06-13 08:03:42,177.177 INFO    ] 2026-06-13 08:03:42
[2026-06-13 08:03:42,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:03:42,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:03:42,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:03:42,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:03:42,586.586 INFO    ] time= 13/06/2026 08:03:42
[2026-06-13 08:03:42,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:03:42,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:03:42,700.700 INFO    ] No existing commands found in stream
[2026-06-13 08:03:47,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:47,712.712 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 08:03:49,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:03:49,765.765 INFO    ] Checking for system updates...
[2026-06-13 08:03:49,787.787 INFO    ] 200
[2026-06-13 08:03:49,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:49,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:03:49,823.823 INFO    ] No update needed
[2026-06-13 08:03:49,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 08:03:49,844.844 INFO    ] 200
[2026-06-13 08:03:49,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:03:49,870.870 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:03:49,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:03:49,910.910 INFO    ] No camera update needed
[2026-06-13 08:03:49,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:03:49,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:03:49,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:03:49,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:03:51,960.960 INFO    ] ================================================
[2026-06-13 08:03:51,975.975 INFO    ] Launching Daemon at Sat Jun 13 08:03:51 IST 2026
[2026-06-13 08:03:51,986.986 INFO    ] ================================================
[2026-06-13 08:03:52,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:03:52
[2026-06-13 08:03:52,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:03:52,777.777 INFO    ] Initializing speech engine...
[2026-06-13 08:03:52,785.785 INFO    ] 2026-06-13 08:03:52
[2026-06-13 08:03:53,010.010 INFO    ] 2026-06-13 08:03:52
[2026-06-13 08:03:53,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:03:53,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:03:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:03:53,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:03:53,442.442 INFO    ] time= 13/06/2026 08:03:53
[2026-06-13 08:03:53,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:03:53,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:03:53,570.570 INFO    ] No existing commands found in stream
[2026-06-13 08:03:58,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:03:58,583.583 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 08:03:59,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:03:59,962.962 INFO    ] Checking for system updates...
[2026-06-13 08:03:59,985.985 INFO    ] 200
[2026-06-13 08:03:59,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:00,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:00,020.020 INFO    ] No update needed
[2026-06-13 08:04:00,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 08:04:00,042.042 INFO    ] 200
[2026-06-13 08:04:00,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:00,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:04:00,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:04:00,119.119 INFO    ] No camera update needed
[2026-06-13 08:04:00,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:04:00,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:04:00,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:04:00,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:04:02,162.162 INFO    ] ================================================
[2026-06-13 08:04:02,171.171 INFO    ] Launching Daemon at Sat Jun 13 08:04:02 IST 2026
[2026-06-13 08:04:02,176.176 INFO    ] ================================================
[2026-06-13 08:04:02,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:04:02
[2026-06-13 08:04:03,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:04:03,606.606 INFO    ] Initializing speech engine...
[2026-06-13 08:04:03,613.613 INFO    ] 2026-06-13 08:04:03
[2026-06-13 08:04:03,873.873 INFO    ] 2026-06-13 08:04:03
[2026-06-13 08:04:03,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:04:04,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:04:04,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:04:04,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:04:04,225.225 INFO    ] time= 13/06/2026 08:04:04
[2026-06-13 08:04:04,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:04:04,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:04:04,323.323 INFO    ] No existing commands found in stream
[2026-06-13 08:04:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:04:09,339.339 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 08:04:10,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:04:10,008.008 INFO    ] Checking for system updates...
[2026-06-13 08:04:10,030.030 INFO    ] 200
[2026-06-13 08:04:10,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:10,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:10,063.063 INFO    ] No update needed
[2026-06-13 08:04:10,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 08:04:10,085.085 INFO    ] 200
[2026-06-13 08:04:10,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:10,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:04:10,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:10,166.166 INFO    ] No camera update needed
[2026-06-13 08:04:10,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:04:10,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:04:10,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:04:10,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:04:12,214.214 INFO    ] ================================================
[2026-06-13 08:04:12,230.230 INFO    ] Launching Daemon at Sat Jun 13 08:04:12 IST 2026
[2026-06-13 08:04:12,240.240 INFO    ] ================================================
[2026-06-13 08:04:12,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:04:12
[2026-06-13 08:04:12,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:04:13,078.078 INFO    ] Initializing speech engine...
[2026-06-13 08:04:13,081.081 INFO    ] 2026-06-13 08:04:13
[2026-06-13 08:04:13,299.299 INFO    ] 2026-06-13 08:04:13
[2026-06-13 08:04:13,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:04:13,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:04:13,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:04:13,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:04:13,699.699 INFO    ] time= 13/06/2026 08:04:13
[2026-06-13 08:04:13,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:04:13,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:04:13,940.940 INFO    ] No existing commands found in stream
[2026-06-13 08:04:18,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:04:18,956.956 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 08:04:20,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:04:20,798.798 INFO    ] Checking for system updates...
[2026-06-13 08:04:20,820.820 INFO    ] 200
[2026-06-13 08:04:20,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:20,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:20,854.854 INFO    ] No update needed
[2026-06-13 08:04:20,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 08:04:20,877.877 INFO    ] 200
[2026-06-13 08:04:20,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:20,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:04:20,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:20,949.949 INFO    ] No camera update needed
[2026-06-13 08:04:20,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:04:20,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:04:20,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:04:20,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:04:23,999.999 INFO    ] ================================================
[2026-06-13 08:04:23,015.015 INFO    ] Launching Daemon at Sat Jun 13 08:04:23 IST 2026
[2026-06-13 08:04:23,025.025 INFO    ] ================================================
[2026-06-13 08:04:23,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:04:23
[2026-06-13 08:04:23,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:04:23,796.796 INFO    ] Initializing speech engine...
[2026-06-13 08:04:23,804.804 INFO    ] 2026-06-13 08:04:23
[2026-06-13 08:04:24,017.017 INFO    ] 2026-06-13 08:04:23
[2026-06-13 08:04:24,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:04:24,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:04:24,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:04:24,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:04:24,444.444 INFO    ] time= 13/06/2026 08:04:24
[2026-06-13 08:04:24,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:04:24,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:04:24,576.576 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 08:04:24,580.580 INFO    ] Checking historical command: ID=1781318059583-0
[2026-06-13 08:04:24,602.602 INFO    ] process_and_cleanup_command: msg_id=1781318059583-0
[2026-06-13 08:04:24,609.609 INFO    ] is_command_expired: timestamp=2026-06-13T02:34:18.957Z, expiry=30s
[2026-06-13 08:04:24,728.728 INFO    ] Command removed from stream: 1781318059583-0. returning for processing...
[2026-06-13 08:04:24,732.732 INFO    ] ***** get_valid_command
[2026-06-13 08:04:24,734.734 INFO    ] {'data': '{"request_id":"start-order-1781318058957-lrdps0ig9","orderId":"TM08202203260613080335058","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-13T02:34:18.957Z', 'command': 'start-order'}
[2026-06-13 08:04:24,739.739 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781318058957-lrdps0ig9', 'orderId': 'TM08202203260613080335058', 'is_vending': False}
[2026-06-13 08:04:24,744.744 INFO    ] Handling start order...
[2026-06-13 08:04:24,748.748 INFO    ] handle_start_order_command
[2026-06-13 08:04:24,755.755 INFO    ] _send_start_order_success: request_id=start-order-1781318058957-lrdps0ig9, order_id=TM08202203260613080335058
[2026-06-13 08:04:24,757.757 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:04:24,809.809 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781318064770-0
[2026-06-13 08:04:24,812.812 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:04:24,815.815 INFO    ] Checking for system updates...
[2026-06-13 08:04:24,847.847 INFO    ] 200
[2026-06-13 08:04:24,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:24,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:24,893.893 INFO    ] No update needed
[2026-06-13 08:04:24,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 08:04:24,923.923 INFO    ] 200
[2026-06-13 08:04:24,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:24,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:04:25,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:04:25,006.006 INFO    ] No camera update needed
[2026-06-13 08:04:25,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:04:25,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:04:25,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:04:25,056.056 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 08:04:25,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:04:27,096.096 INFO    ] ================================================
[2026-06-13 08:04:27,112.112 INFO    ] Launching Daemon at Sat Jun 13 08:04:27 IST 2026
[2026-06-13 08:04:27,123.123 INFO    ] ================================================
[2026-06-13 08:04:27,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:04:27
[2026-06-13 08:04:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:04:27,941.941 INFO    ] Initializing speech engine...
[2026-06-13 08:04:27,946.946 INFO    ] 2026-06-13 08:04:27
[2026-06-13 08:04:28,152.152 INFO    ] 2026-06-13 08:04:28
[2026-06-13 08:04:28,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:04:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:04:28,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:04:28,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:04:28,526.526 INFO    ] time= 13/06/2026 08:04:28
[2026-06-13 08:04:28,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:04:28,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:04:28,674.674 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 08:04:28,678.678 INFO    ] Checking historical command: ID=1781318064770-0
[2026-06-13 08:04:28,695.695 INFO    ] process_and_cleanup_command: msg_id=1781318064770-0
[2026-06-13 08:04:28,705.705 INFO    ] is_command_expired: timestamp=2026-06-13T02:34:24.756174Z, expiry=30s
[2026-06-13 08:04:28,817.817 INFO    ] Command removed from stream: 1781318064770-0. returning for processing...
[2026-06-13 08:04:28,820.820 INFO    ] ***** get_valid_command
[2026-06-13 08:04:28,823.823 INFO    ] {'status': 'success', 'imei': 'TM08202203', 'message': 'start-order success', 'timestamp': '2026-06-13T02:34:24.756174Z', 'metadata_request_id': 'start-order-1781318058957-lrdps0ig9', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613080335058'}
[2026-06-13 08:04:28,828.828 INFO    ] Checking historical command: ID=1781318067338-0
[2026-06-13 08:04:28,832.832 INFO    ] process_and_cleanup_command: msg_id=1781318067338-0
[2026-06-13 08:04:28,835.835 INFO    ] is_command_expired: timestamp=2026-06-13T02:34:26.736Z, expiry=30s
[2026-06-13 08:04:28,883.883 INFO    ] Command removed from stream: 1781318067338-0. returning for processing...
[2026-06-13 08:04:28,886.886 INFO    ] ***** get_valid_command
[2026-06-13 08:04:28,889.889 INFO    ] {'timestamp': '2026-06-13T02:34:26.736Z', 'data': '{"request_id":"process-order-1781318066736-8zxyl5j2n","orderId":"TM08202203260613080335058","is_vending":false,"accessCode":"64783657"}', 'timeout': '60', 'source': 'webapp', 'command': 'process-order'}
[2026-06-13 08:04:28,892.892 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613080335058', 'is_vending': False, 'request_id': 'process-order-1781318066736-8zxyl5j2n', 'accessCode': '64783657'}
[2026-06-13 08:04:28,895.895 INFO    ] Handling process order...
[2026-06-13 08:04:28,898.898 INFO    ] Processing process-order command...
[2026-06-13 08:04:28,902.902 INFO    ] 🔍 Lock file Order ID: TM08202203260613080335058, TS: 2026-06-13 08:04:24
[2026-06-13 08:04:28,911.911 INFO    ] ✅ Order lock valid for TM08202203260613080335058
[2026-06-13 08:04:28,913.913 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:04:28,916.916 INFO    ] processing access code 64783657 for order TM08202203260613080335058
[2026-06-13 08:04:28,919.919 INFO    ] 🔍 Lock file Order ID: TM08202203260613080335058, TS: 2026-06-13 08:04:24
[2026-06-13 08:04:28,922.922 INFO    ] ✅ Order lock valid for TM08202203260613080335058
[2026-06-13 08:04:28,925.925 INFO    ] 2026-06-13 08:04:28
[2026-06-13 08:04:28,954.954 INFO    ] 200
[2026-06-13 08:04:28,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:28,963.963 INFO    ] 64783657
[2026-06-13 08:04:28,967.967 INFO    ] 2026-06-13 08:04:28
[2026-06-13 08:04:28,972.972 INFO    ] session id :386842466
[2026-06-13 08:04:28,976.976 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=64783657&imei=TM08202203&session_id=386842466
[2026-06-13 08:04:29,679.679 INFO    ] 200
[2026-06-13 08:04:29,688.688 INFO    ] {"data": {"mobile": "7094033532", "order_id": "TM08202203260613080335058", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Rite Bite Sports Bar 40gm", "tray_id": "36", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "64783657", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:04:29,693.693 INFO    ] 40
[2026-06-13 08:04:29,701.701 INFO    ] TM08202203260613080335058
[2026-06-13 08:04:29,704.704 INFO    ] 7094033532
[2026-06-13 08:04:29,710.710 INFO    ] 2026-06-13 08:04:29
[2026-06-13 08:04:29,715.715 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 08:04:29,716.716 INFO    ] Door Opening for user mobile ending with  three five three two 
[2026-06-13 08:04:29,718.718 INFO    ] baf9e0f52a6dacc8cc372b7eeef1b6f7
[2026-06-13 08:04:29,719.719 INFO    ] 2026-06-13 08:04:29
[2026-06-13 08:04:29,720.720 INFO    ] playing audio file
[2026-06-13 08:04:29,730.730 INFO    ] 2026-06-13 08:04:29
[2026-06-13 08:04:29,732.732 INFO    ] 2026-06-13 08:04:29
[2026-06-13 08:04:29,734.734 INFO    ] publish_status: order_id=TM08202203260613080335058
[2026-06-13 08:04:29,736.736 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613080335058
[2026-06-13 08:04:29,808.808 INFO    ] [publish_status] Message added to stream with ID: 1781318069770-0
[2026-06-13 08:04:29,810.810 INFO    ] Published to order:TM08202203260613080335058: {'server_status': 'order-started', 'server_response': '{"data": {"mobile": "7094033532", "access_code": "64783657", "bill_amount": "40", "proposed_sku_json": [{"name": "Rite Bite Sports Bar 40gm", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "qty": 1, "mrp": "40", "offer_desc": "", "skuid": "4500669", "tray_id": "36", "sku_total": 40, "door_id": "2", "offer_id": "", "unit_price": 40}], "invoice_bill": "40", "order_id": "TM08202203260613080335058"}, "status": true, "rstatus": true, "msg": "Order Data"}', 'timestamp': '2026-06-13T02:34:29.733233Z', 'order_id': 'TM08202203260613080335058'} (ID: 1781318069770-0)
[2026-06-13 08:04:30,109.109 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'mobile': '7094033532', 'access_code': '64783657', 'bill_amount': '40', 'proposed_sku_json': [{'name': 'Rite Bite Sports Bar 40gm', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 1, 'mrp': '40', 'offer_desc': '', 'skuid': '4500669', 'tray_id': '36', 'sku_total': 40, 'door_id': '2', 'offer_id': '', 'unit_price': 40}], 'invoice_bill': '40', 'order_id': 'TM08202203260613080335058'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613080335058'}
[2026-06-13 08:04:30,111.111 INFO    ] 200
[2026-06-13 08:04:30,114.114 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"mobile":"7094033532","access_code":"64783657","bill_amount":"40","proposed_sku_json":[{"name":"Rite Bite Sports Bar 40gm","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","qty":1,"mrp":"40","offer_desc":"","skuid":"4500669","tray_id":"36","sku_total":40,"door_id":"2","offer_id":"","unit_price":40}],"invoice_bill":"40","order_id":"TM08202203260613080335058"},"status":true,"rstatus":true,"msg":"Order Data"},"order_id":"TM08202203260613080335058"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:04:30,117.117 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'data': {'mobile': '7094033532', 'access_code': '64783657', 'bill_amount': '40', 'proposed_sku_json': [{'name': 'Rite Bite Sports Bar 40gm', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 1, 'mrp': '40', 'offer_desc': '', 'skuid': '4500669', 'tray_id': '36', 'sku_total': 40, 'door_id': '2', 'offer_id': '', 'unit_price': 40}], 'invoice_bill': '40', 'order_id': 'TM08202203260613080335058'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613080335058'}, 'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:04:30,120.120 INFO    ] 2026-06-13 08:04:30
[2026-06-13 08:04:30,167.167 INFO    ] 200
[2026-06-13 08:04:30,170.170 INFO    ] True
[2026-06-13 08:04:30,307.307 INFO    ] 200
[2026-06-13 08:04:30,309.309 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:04:30,311.311 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}}
[2026-06-13 08:04:30,312.312 INFO    ] *** process_order ***
[2026-06-13 08:04:31,556.556 INFO    ] 200
[2026-06-13 08:04:31,558.558 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:04:31,561.561 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'delay': 0}
[2026-06-13 08:04:31,564.564 INFO    ] *** process_order ***
[2026-06-13 08:04:31,567.567 INFO    ] publish_status: order_id=TM08202203260613080335058
[2026-06-13 08:04:31,570.570 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613080335058
[2026-06-13 08:04:31,631.631 INFO    ] [publish_status] Message added to stream with ID: 1781318071592-0
[2026-06-13 08:04:31,634.634 INFO    ] Published to order:TM08202203260613080335058: {'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "voiceNote": "Door is open...", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "delay": 0}', 'order_id': 'TM08202203260613080335058'} (ID: 1781318071592-0)
[2026-06-13 08:04:32,672.672 INFO    ] 2026-06-13 08:04:32
[2026-06-13 08:04:32,674.674 INFO    ] publish_status: order_id=TM08202203260613080335058
[2026-06-13 08:04:32,677.677 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613080335058
[2026-06-13 08:04:32,754.754 INFO    ] [publish_status] Message added to stream with ID: 1781318072715-0
[2026-06-13 08:04:32,756.756 INFO    ] Published to order:TM08202203260613080335058: {'server_status': 'processOrder', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "delay": 0}', 'timestamp': '2026-06-13T02:34:32.673361Z', 'order_id': 'TM08202203260613080335058'} (ID: 1781318072715-0)
[2026-06-13 08:04:32,865.865 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'delay': 0}, 'order_id': 'TM08202203260613080335058'}
[2026-06-13 08:04:32,868.868 INFO    ] 200
[2026-06-13 08:04:32,871.871 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","rstatus":true,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"delay":0},"order_id":"TM08202203260613080335058"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:04:32,874.874 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'delay': 0}, 'order_id': 'TM08202203260613080335058'}, 'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:04:32,877.877 INFO    ] 2026-06-13 08:04:32
[2026-06-13 08:04:32,879.879 INFO    ] None
[2026-06-13 08:04:32,882.882 INFO    ] Opening Door now
[2026-06-13 08:04:32,885.885 INFO    ] Opening Door now
[2026-06-13 08:04:32,887.887 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:04:32,890.890 INFO    ] 2026-06-13 08:04:32
[2026-06-13 08:04:32,892.892 INFO    ] playing audio file
[2026-06-13 08:04:32,917.917 INFO    ] 2026-06-13 08:04:32
[2026-06-13 08:04:32,921.921 INFO    ] 2026-06-13 08:04:32
[2026-06-13 08:04:35,961.961 INFO    ] 200
[2026-06-13 08:04:35,963.963 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:04:35,965.965 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}}
[2026-06-13 08:04:39,012.012 INFO    ] 200
[2026-06-13 08:04:39,014.014 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:04:39,016.016 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}}
[2026-06-13 08:04:42,061.061 INFO    ] 200
[2026-06-13 08:04:42,063.063 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:04:42,064.064 INFO    ] Please close door 2
[2026-06-13 08:04:42,066.066 INFO    ] Please close door 2
[2026-06-13 08:04:42,068.068 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:04:42,070.070 INFO    ] 2026-06-13 08:04:42
[2026-06-13 08:04:42,071.071 INFO    ] playing audio file
[2026-06-13 08:04:42,085.085 INFO    ] 2026-06-13 08:04:42
[2026-06-13 08:04:42,088.088 INFO    ] publish_status: order_id=TM08202203260613080335058
[2026-06-13 08:04:42,090.090 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613080335058
[2026-06-13 08:04:42,158.158 INFO    ] [publish_status] Message added to stream with ID: 1781318082120-0
[2026-06-13 08:04:42,160.160 INFO    ] Published to order:TM08202203260613080335058: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false, "voiceNote": "Please close door 2", "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2"}}', 'timestamp': '2026-06-13T02:34:42.086889Z', 'order_id': 'TM08202203260613080335058'} (ID: 1781318082120-0)
[2026-06-13 08:04:42,474.474 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}}, 'order_id': 'TM08202203260613080335058'}
[2026-06-13 08:04:42,475.475 INFO    ] 200
[2026-06-13 08:04:42,477.477 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"name":"Rite Bite Sports Bar 40gm","qty":1}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false,"voiceNote":"Please close door 2","error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2"}},"order_id":"TM08202203260613080335058"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:04:42,479.479 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}}, 'order_id': 'TM08202203260613080335058'}, 'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:04:42,481.481 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}}
[2026-06-13 08:04:45,519.519 INFO    ] 200
[2026-06-13 08:04:45,521.521 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:04:45,522.522 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'delay': 100}
[2026-06-13 08:04:45,524.524 INFO    ] 2026-06-13 08:04:45
[2026-06-13 08:04:45,525.525 INFO    ] Order Completed 
[2026-06-13 08:04:45,526.526 INFO    ] Order Completed 
[2026-06-13 08:04:45,527.527 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:04:45,529.529 INFO    ] 2026-06-13 08:04:45
[2026-06-13 08:04:45,531.531 INFO    ] playing audio file
[2026-06-13 08:04:45,542.542 INFO    ] 2026-06-13 08:04:45
[2026-06-13 08:04:45,544.544 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}, 'delay': 100}
[2026-06-13 08:04:45,546.546 INFO    ] 2026-06-13 08:04:45
[2026-06-13 08:04:46,301.301 INFO    ] 200
[2026-06-13 08:04:46,303.303 INFO    ] {"res": "True", "orderId": "TM08202203260613080335058", "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "", "tray_id": "36", "name": "Rite Bite Sports Bar 40gm per peice", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 08:04:46,304.304 INFO    ] {'logic': 'WBL', 'orderId': 'TM08202203260613080335058', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'qty': 1, 'unit_price': '40', 'mrp': '40', 'skuid': '4500669', 'sku_total': 40.0, 'door_id': ''}]}
[2026-06-13 08:04:46,306.306 INFO    ] {'logic': 'WBL', 'orderId': 'TM08202203260613080335058', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'qty': 1, 'unit_price': '40', 'mrp': '40', 'skuid': '4500669', 'sku_total': 40.0, 'door_id': ''}]}
[2026-06-13 08:04:46,307.307 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,308.308 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,310.310 INFO    ] 40
[2026-06-13 08:04:46,311.311 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,312.312 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,314.314 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:04:46,315.315 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:04:46,316.316 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 08:04:46,318.318 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,319.319 INFO    ] playing audio file
[2026-06-13 08:04:46,329.329 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,331.331 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:46,333.333 INFO    ] publish_status: order_id=TM08202203260613080335058
[2026-06-13 08:04:46,335.335 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613080335058
[2026-06-13 08:04:46,393.393 INFO    ] [publish_status] Message added to stream with ID: 1781318086353-0
[2026-06-13 08:04:46,395.395 INFO    ] Published to order:TM08202203260613080335058: {'server_status': 'invoiceOrder', 'server_response': '{"logic": "WBL", "orderId": "TM08202203260613080335058", "anomaly": 0, "rstatus": true, "total_amount": 40.0, "res": "True", "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "name": "Rite Bite Sports Bar 40gm per peice", "tray_id": "36", "qty": 1, "unit_price": "40", "mrp": "40", "skuid": "4500669", "sku_total": 40.0, "door_id": ""}]}', 'timestamp': '2026-06-13T02:34:46.332410Z', 'order_id': 'TM08202203260613080335058'} (ID: 1781318086353-0)
[2026-06-13 08:04:46,506.506 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'orderId': 'TM08202203260613080335058', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'name': 'Rite Bite Sports Bar 40gm per peice', 'tray_id': '36', 'qty': 1, 'unit_price': '40', 'mrp': '40', 'skuid': '4500669', 'sku_total': 40.0, 'door_id': ''}]}, 'order_id': 'TM08202203260613080335058'}
[2026-06-13 08:04:46,508.508 INFO    ] 200
[2026-06-13 08:04:46,509.509 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"logic":"WBL","orderId":"TM08202203260613080335058","anomaly":0,"rstatus":true,"total_amount":40,"res":"true","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","name":"Rite Bite Sports Bar 40gm per peice","tray_id":"36","qty":1,"unit_price":"40","mrp":"40","skuid":"4500669","sku_total":40,"door_id":""}]},"order_id":"TM08202203260613080335058"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:04:46,511.511 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'orderId': 'TM08202203260613080335058', 'anomaly': 0, 'rstatus': True, 'total_amount': 40, 'res': 'true', 'skus': [{'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 1, 'unit_price': '40', 'mrp': '40', 'tray_id': '36', 'sku_total': 40, 'skuid': '4500669', 'door_id': ''}]}, 'order_id': 'TM08202203260613080335058'}, 'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:04:46,513.513 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'orderId': 'TM08202203260613080335058', 'anomaly': 0, 'rstatus': True, 'total_amount': 40, 'res': 'true', 'skus': [{'name': 'Rite Bite Sports Bar 40gm per peice', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 1, 'unit_price': '40', 'mrp': '40', 'tray_id': '36', 'sku_total': 40, 'skuid': '4500669', 'door_id': ''}]}, 'order_id': 'TM08202203260613080335058'}, 'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:04:46,515.515 INFO    ] 2026-06-13 08:04:46
[2026-06-13 08:04:48,139.139 INFO    ] 200
[2026-06-13 08:04:48,142.142 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058", "TM08202203260613080335058"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:04:48,145.145 INFO    ] 2026-06-13 08:04:48
[2026-06-13 08:04:48,256.256 INFO    ] 200
[2026-06-13 08:04:48,259.259 INFO    ] True
[2026-06-13 08:04:48,262.262 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613080335058
[2026-06-13 08:04:48,266.266 INFO    ] start order file deleted
[2026-06-13 08:04:48,269.269 INFO    ] Checking for system updates...
[2026-06-13 08:04:48,312.312 INFO    ] 200
[2026-06-13 08:04:48,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:48,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:04:48,386.386 INFO    ] No update needed
[2026-06-13 08:04:48,389.389 INFO    ] Checking for camera pi updates...
[2026-06-13 08:04:48,426.426 INFO    ] 200
[2026-06-13 08:04:48,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:04:48,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:04:48,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:04:48,538.538 INFO    ] No camera update needed
[2026-06-13 08:04:48,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:04:48,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:04:48,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:04:48,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:04:50,597.597 INFO    ] ================================================
[2026-06-13 08:04:50,612.612 INFO    ] Launching Daemon at Sat Jun 13 08:04:50 IST 2026
[2026-06-13 08:04:50,623.623 INFO    ] ================================================
[2026-06-13 08:04:50,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:04:50
[2026-06-13 08:04:51,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:04:51,418.418 INFO    ] Initializing speech engine...
[2026-06-13 08:04:51,424.424 INFO    ] 2026-06-13 08:04:51
[2026-06-13 08:04:51,633.633 INFO    ] 2026-06-13 08:04:51
[2026-06-13 08:04:51,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:04:51,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:04:51,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:04:51,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:04:52,034.034 INFO    ] time= 13/06/2026 08:04:51
[2026-06-13 08:04:52,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:04:52,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:04:52,156.156 INFO    ] No existing commands found in stream
[2026-06-13 08:04:57,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:04:57,169.169 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 08:05:00,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:05:00,013.013 INFO    ] Checking for system updates...
[2026-06-13 08:05:00,035.035 INFO    ] 200
[2026-06-13 08:05:00,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:00,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:00,070.070 INFO    ] No update needed
[2026-06-13 08:05:00,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:00,093.093 INFO    ] 200
[2026-06-13 08:05:00,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:00,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:00,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:00,160.160 INFO    ] No camera update needed
[2026-06-13 08:05:00,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:00,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:00,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:02,201.201 INFO    ] ================================================
[2026-06-13 08:05:02,214.214 INFO    ] Launching Daemon at Sat Jun 13 08:05:02 IST 2026
[2026-06-13 08:05:02,222.222 INFO    ] ================================================
[2026-06-13 08:05:02,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:02
[2026-06-13 08:05:02,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:03,084.084 INFO    ] Initializing speech engine...
[2026-06-13 08:05:03,090.090 INFO    ] 2026-06-13 08:05:03
[2026-06-13 08:05:03,297.297 INFO    ] 2026-06-13 08:05:03
[2026-06-13 08:05:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:03,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:03,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:03,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:03,650.650 INFO    ] time= 13/06/2026 08:05:03
[2026-06-13 08:05:03,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:05:03,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:05:03,820.820 INFO    ] No existing commands found in stream
[2026-06-13 08:05:08,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:05:08,834.834 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 08:05:12,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:05:12,076.076 INFO    ] Checking for system updates...
[2026-06-13 08:05:12,097.097 INFO    ] 200
[2026-06-13 08:05:12,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:12,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:12,132.132 INFO    ] No update needed
[2026-06-13 08:05:12,134.134 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:12,154.154 INFO    ] 200
[2026-06-13 08:05:12,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:12,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:12,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:12,216.216 INFO    ] No camera update needed
[2026-06-13 08:05:12,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:12,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:12,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:12,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:14,262.262 INFO    ] ================================================
[2026-06-13 08:05:14,277.277 INFO    ] Launching Daemon at Sat Jun 13 08:05:14 IST 2026
[2026-06-13 08:05:14,288.288 INFO    ] ================================================
[2026-06-13 08:05:14,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:14
[2026-06-13 08:05:14,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:15,069.069 INFO    ] Initializing speech engine...
[2026-06-13 08:05:15,072.072 INFO    ] 2026-06-13 08:05:15
[2026-06-13 08:05:15,291.291 INFO    ] 2026-06-13 08:05:15
[2026-06-13 08:05:15,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:15,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:15,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:15,723.723 INFO    ] time= 13/06/2026 08:05:15
[2026-06-13 08:05:15,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:05:15,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:05:15,868.868 INFO    ] No existing commands found in stream
[2026-06-13 08:05:20,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:05:20,894.894 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 08:05:22,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:05:22,601.601 INFO    ] Checking for system updates...
[2026-06-13 08:05:22,623.623 INFO    ] 200
[2026-06-13 08:05:22,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:22,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:22,656.656 INFO    ] No update needed
[2026-06-13 08:05:22,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:22,678.678 INFO    ] 200
[2026-06-13 08:05:22,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:22,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:22,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:22,744.744 INFO    ] No camera update needed
[2026-06-13 08:05:22,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:22,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:22,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:22,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:24,791.791 INFO    ] ================================================
[2026-06-13 08:05:24,806.806 INFO    ] Launching Daemon at Sat Jun 13 08:05:24 IST 2026
[2026-06-13 08:05:24,817.817 INFO    ] ================================================
[2026-06-13 08:05:25,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:25
[2026-06-13 08:05:25,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:25,608.608 INFO    ] Initializing speech engine...
[2026-06-13 08:05:25,618.618 INFO    ] 2026-06-13 08:05:25
[2026-06-13 08:05:25,822.822 INFO    ] 2026-06-13 08:05:25
[2026-06-13 08:05:25,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:25,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:26,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:26,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:26,222.222 INFO    ] time= 13/06/2026 08:05:26
[2026-06-13 08:05:26,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:05:26,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:05:26,338.338 INFO    ] No existing commands found in stream
[2026-06-13 08:05:31,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:05:31,350.350 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 08:05:35,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:05:35,656.656 INFO    ] Checking for system updates...
[2026-06-13 08:05:35,678.678 INFO    ] 200
[2026-06-13 08:05:35,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:35,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:35,711.711 INFO    ] No update needed
[2026-06-13 08:05:35,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:35,732.732 INFO    ] 200
[2026-06-13 08:05:35,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:35,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:35,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:05:35,796.796 INFO    ] No camera update needed
[2026-06-13 08:05:35,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:35,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:35,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:35,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:37,837.837 INFO    ] ================================================
[2026-06-13 08:05:37,852.852 INFO    ] Launching Daemon at Sat Jun 13 08:05:37 IST 2026
[2026-06-13 08:05:37,863.863 INFO    ] ================================================
[2026-06-13 08:05:38,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:38
[2026-06-13 08:05:38,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:38,672.672 INFO    ] Initializing speech engine...
[2026-06-13 08:05:38,682.682 INFO    ] 2026-06-13 08:05:38
[2026-06-13 08:05:38,900.900 INFO    ] 2026-06-13 08:05:38
[2026-06-13 08:05:38,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:39,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:39,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:39,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:39,155.155 INFO    ] time= 13/06/2026 08:05:39
[2026-06-13 08:05:39,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:05:39,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:05:39,253.253 INFO    ] No existing commands found in stream
[2026-06-13 08:05:44,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:05:44,285.285 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 08:05:45,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:05:45,309.309 INFO    ] Checking for system updates...
[2026-06-13 08:05:45,330.330 INFO    ] 200
[2026-06-13 08:05:45,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:45,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:45,365.365 INFO    ] No update needed
[2026-06-13 08:05:45,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:45,388.388 INFO    ] 200
[2026-06-13 08:05:45,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:45,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:45,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:45,455.455 INFO    ] No camera update needed
[2026-06-13 08:05:45,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:45,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:45,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:45,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:47,501.501 INFO    ] ================================================
[2026-06-13 08:05:47,517.517 INFO    ] Launching Daemon at Sat Jun 13 08:05:47 IST 2026
[2026-06-13 08:05:47,527.527 INFO    ] ================================================
[2026-06-13 08:05:47,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:47
[2026-06-13 08:05:48,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:48,390.390 INFO    ] Initializing speech engine...
[2026-06-13 08:05:48,395.395 INFO    ] 2026-06-13 08:05:48
[2026-06-13 08:05:48,603.603 INFO    ] 2026-06-13 08:05:48
[2026-06-13 08:05:48,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:48,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:48,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:48,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:49,017.017 INFO    ] time= 13/06/2026 08:05:48
[2026-06-13 08:05:49,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:05:49,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:05:49,123.123 INFO    ] No existing commands found in stream
[2026-06-13 08:05:54,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:05:54,137.137 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 08:05:56,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:05:56,263.263 INFO    ] Checking for system updates...
[2026-06-13 08:05:56,284.284 INFO    ] 200
[2026-06-13 08:05:56,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:56,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:56,322.322 INFO    ] No update needed
[2026-06-13 08:05:56,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 08:05:56,344.344 INFO    ] 200
[2026-06-13 08:05:56,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:05:56,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:05:56,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:05:56,407.407 INFO    ] No camera update needed
[2026-06-13 08:05:56,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:05:56,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:05:56,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:05:56,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:05:58,453.453 INFO    ] ================================================
[2026-06-13 08:05:58,468.468 INFO    ] Launching Daemon at Sat Jun 13 08:05:58 IST 2026
[2026-06-13 08:05:58,479.479 INFO    ] ================================================
[2026-06-13 08:05:58,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:05:58
[2026-06-13 08:05:59,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:05:59,332.332 INFO    ] Initializing speech engine...
[2026-06-13 08:05:59,337.337 INFO    ] 2026-06-13 08:05:59
[2026-06-13 08:05:59,548.548 INFO    ] 2026-06-13 08:05:59
[2026-06-13 08:05:59,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:05:59,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:05:59,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:05:59,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:05:59,965.965 INFO    ] time= 13/06/2026 08:05:59
[2026-06-13 08:05:59,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:00,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:00,073.073 INFO    ] No existing commands found in stream
[2026-06-13 08:06:05,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:05,086.086 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 08:06:05,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:06:05,753.753 INFO    ] Checking for system updates...
[2026-06-13 08:06:05,777.777 INFO    ] 200
[2026-06-13 08:06:05,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:05,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:05,824.824 INFO    ] No update needed
[2026-06-13 08:06:05,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 08:06:05,864.864 INFO    ] 200
[2026-06-13 08:06:05,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:05,910.910 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:06:05,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:05,957.957 INFO    ] No camera update needed
[2026-06-13 08:06:05,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:06:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:06:05,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:06:05,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:06:08,017.017 INFO    ] ================================================
[2026-06-13 08:06:08,033.033 INFO    ] Launching Daemon at Sat Jun 13 08:06:08 IST 2026
[2026-06-13 08:06:08,043.043 INFO    ] ================================================
[2026-06-13 08:06:08,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:06:08
[2026-06-13 08:06:09,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:06:09,231.231 INFO    ] Initializing speech engine...
[2026-06-13 08:06:09,235.235 INFO    ] 2026-06-13 08:06:09
[2026-06-13 08:06:09,438.438 INFO    ] 2026-06-13 08:06:09
[2026-06-13 08:06:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:06:09,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:06:09,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:06:09,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:06:09,842.842 INFO    ] time= 13/06/2026 08:06:09
[2026-06-13 08:06:09,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:09,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:09,969.969 INFO    ] No existing commands found in stream
[2026-06-13 08:06:14,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:14,982.982 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 08:06:17,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:06:17,258.258 INFO    ] Checking for system updates...
[2026-06-13 08:06:17,301.301 INFO    ] 200
[2026-06-13 08:06:17,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:17,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:06:17,360.360 INFO    ] No update needed
[2026-06-13 08:06:17,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 08:06:17,397.397 INFO    ] 200
[2026-06-13 08:06:17,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:17,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:06:17,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:06:17,464.464 INFO    ] No camera update needed
[2026-06-13 08:06:17,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:06:17,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:06:17,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:06:17,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:06:19,511.511 INFO    ] ================================================
[2026-06-13 08:06:19,527.527 INFO    ] Launching Daemon at Sat Jun 13 08:06:19 IST 2026
[2026-06-13 08:06:19,537.537 INFO    ] ================================================
[2026-06-13 08:06:19,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:06:19
[2026-06-13 08:06:20,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:06:20,408.408 INFO    ] Initializing speech engine...
[2026-06-13 08:06:20,412.412 INFO    ] 2026-06-13 08:06:20
[2026-06-13 08:06:20,618.618 INFO    ] 2026-06-13 08:06:20
[2026-06-13 08:06:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:06:20,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:06:20,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:06:20,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:06:21,029.029 INFO    ] time= 13/06/2026 08:06:20
[2026-06-13 08:06:21,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:21,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:21,133.133 INFO    ] No existing commands found in stream
[2026-06-13 08:06:26,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:26,147.147 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 08:06:26,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:06:26,465.465 INFO    ] Checking for system updates...
[2026-06-13 08:06:26,487.487 INFO    ] 200
[2026-06-13 08:06:26,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:26,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:26,524.524 INFO    ] No update needed
[2026-06-13 08:06:26,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 08:06:26,550.550 INFO    ] 200
[2026-06-13 08:06:26,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:26,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:06:26,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:26,619.619 INFO    ] No camera update needed
[2026-06-13 08:06:26,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:06:26,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:06:26,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:06:26,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:06:28,668.668 INFO    ] ================================================
[2026-06-13 08:06:28,684.684 INFO    ] Launching Daemon at Sat Jun 13 08:06:28 IST 2026
[2026-06-13 08:06:28,696.696 INFO    ] ================================================
[2026-06-13 08:06:29,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:06:29
[2026-06-13 08:06:29,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:06:29,504.504 INFO    ] Initializing speech engine...
[2026-06-13 08:06:29,515.515 INFO    ] 2026-06-13 08:06:29
[2026-06-13 08:06:29,719.719 INFO    ] 2026-06-13 08:06:29
[2026-06-13 08:06:29,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:06:29,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:06:29,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:06:30,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:06:30,136.136 INFO    ] time= 13/06/2026 08:06:30
[2026-06-13 08:06:30,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:30,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:30,241.241 INFO    ] No existing commands found in stream
[2026-06-13 08:06:35,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:35,254.254 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 08:06:38,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:06:38,631.631 INFO    ] Checking for system updates...
[2026-06-13 08:06:38,652.652 INFO    ] 200
[2026-06-13 08:06:38,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:38,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:06:38,685.685 INFO    ] No update needed
[2026-06-13 08:06:38,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 08:06:38,707.707 INFO    ] 200
[2026-06-13 08:06:38,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:38,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:06:38,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:06:38,770.770 INFO    ] No camera update needed
[2026-06-13 08:06:38,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:06:38,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:06:38,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:06:38,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:06:40,817.817 INFO    ] ================================================
[2026-06-13 08:06:40,832.832 INFO    ] Launching Daemon at Sat Jun 13 08:06:40 IST 2026
[2026-06-13 08:06:40,843.843 INFO    ] ================================================
[2026-06-13 08:06:41,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:06:41
[2026-06-13 08:06:41,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:06:41,648.648 INFO    ] Initializing speech engine...
[2026-06-13 08:06:41,659.659 INFO    ] 2026-06-13 08:06:41
[2026-06-13 08:06:41,875.875 INFO    ] 2026-06-13 08:06:41
[2026-06-13 08:06:41,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:06:42,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:06:42,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:06:42,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:06:42,229.229 INFO    ] time= 13/06/2026 08:06:42
[2026-06-13 08:06:42,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:42,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:42,397.397 INFO    ] No existing commands found in stream
[2026-06-13 08:06:47,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:47,411.411 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 08:06:50,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:06:50,277.277 INFO    ] Checking for system updates...
[2026-06-13 08:06:50,298.298 INFO    ] 200
[2026-06-13 08:06:50,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:50,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:50,335.335 INFO    ] No update needed
[2026-06-13 08:06:50,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 08:06:50,356.356 INFO    ] 200
[2026-06-13 08:06:50,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:06:50,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:06:50,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:06:50,527.527 INFO    ] No camera update needed
[2026-06-13 08:06:50,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:06:50,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:06:50,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:06:50,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:06:52,580.580 INFO    ] ================================================
[2026-06-13 08:06:52,596.596 INFO    ] Launching Daemon at Sat Jun 13 08:06:52 IST 2026
[2026-06-13 08:06:52,607.607 INFO    ] ================================================
[2026-06-13 08:06:53,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:06:53
[2026-06-13 08:06:53,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:06:54,156.156 INFO    ] Initializing speech engine...
[2026-06-13 08:06:54,164.164 INFO    ] 2026-06-13 08:06:54
[2026-06-13 08:06:54,433.433 INFO    ] 2026-06-13 08:06:54
[2026-06-13 08:06:54,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:06:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:06:54,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:06:54,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:06:54,677.677 INFO    ] time= 13/06/2026 08:06:54
[2026-06-13 08:06:54,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:06:54,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:06:54,783.783 INFO    ] No existing commands found in stream
[2026-06-13 08:06:59,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:06:59,812.812 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 08:07:02,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:07:02,657.657 INFO    ] Checking for system updates...
[2026-06-13 08:07:02,703.703 INFO    ] 200
[2026-06-13 08:07:02,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:02,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:02,783.783 INFO    ] No update needed
[2026-06-13 08:07:02,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 08:07:02,833.833 INFO    ] 200
[2026-06-13 08:07:02,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:02,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:07:02,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:02,956.956 INFO    ] No camera update needed
[2026-06-13 08:07:02,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:07:02,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:07:02,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:07:02,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:07:05,019.019 INFO    ] ================================================
[2026-06-13 08:07:05,034.034 INFO    ] Launching Daemon at Sat Jun 13 08:07:05 IST 2026
[2026-06-13 08:07:05,045.045 INFO    ] ================================================
[2026-06-13 08:07:05,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:07:05
[2026-06-13 08:07:05,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:07:05,928.928 INFO    ] Initializing speech engine...
[2026-06-13 08:07:05,932.932 INFO    ] 2026-06-13 08:07:05
[2026-06-13 08:07:06,160.160 INFO    ] 2026-06-13 08:07:06
[2026-06-13 08:07:06,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:07:06,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:07:06,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:07:06,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:07:06,581.581 INFO    ] time= 13/06/2026 08:07:06
[2026-06-13 08:07:06,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:07:06,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:07:06,716.716 INFO    ] No existing commands found in stream
[2026-06-13 08:07:11,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:07:11,727.727 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 08:07:14,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:07:14,864.864 INFO    ] Checking for system updates...
[2026-06-13 08:07:14,899.899 INFO    ] 200
[2026-06-13 08:07:14,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:14,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:14,941.941 INFO    ] No update needed
[2026-06-13 08:07:14,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 08:07:14,967.967 INFO    ] 200
[2026-06-13 08:07:14,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:14,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:07:15,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:15,039.039 INFO    ] No camera update needed
[2026-06-13 08:07:15,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:07:15,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:07:15,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:07:15,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:07:17,090.090 INFO    ] ================================================
[2026-06-13 08:07:17,105.105 INFO    ] Launching Daemon at Sat Jun 13 08:07:17 IST 2026
[2026-06-13 08:07:17,115.115 INFO    ] ================================================
[2026-06-13 08:07:17,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:07:17
[2026-06-13 08:07:17,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:07:17,932.932 INFO    ] Initializing speech engine...
[2026-06-13 08:07:17,945.945 INFO    ] 2026-06-13 08:07:17
[2026-06-13 08:07:18,164.164 INFO    ] 2026-06-13 08:07:18
[2026-06-13 08:07:18,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:07:18,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:07:18,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:07:18,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:07:18,588.588 INFO    ] time= 13/06/2026 08:07:18
[2026-06-13 08:07:18,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:07:18,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:07:18,713.713 INFO    ] No existing commands found in stream
[2026-06-13 08:07:23,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:07:23,727.727 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 08:07:26,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:07:26,945.945 INFO    ] Checking for system updates...
[2026-06-13 08:07:26,967.967 INFO    ] 200
[2026-06-13 08:07:26,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:26,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:27,001.001 INFO    ] No update needed
[2026-06-13 08:07:27,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 08:07:27,025.025 INFO    ] 200
[2026-06-13 08:07:27,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:27,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:07:27,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:27,091.091 INFO    ] No camera update needed
[2026-06-13 08:07:27,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:07:27,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:07:27,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:07:27,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:07:29,140.140 INFO    ] ================================================
[2026-06-13 08:07:29,155.155 INFO    ] Launching Daemon at Sat Jun 13 08:07:29 IST 2026
[2026-06-13 08:07:29,166.166 INFO    ] ================================================
[2026-06-13 08:07:29,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:07:29
[2026-06-13 08:07:29,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:07:30,022.022 INFO    ] Initializing speech engine...
[2026-06-13 08:07:30,032.032 INFO    ] 2026-06-13 08:07:30
[2026-06-13 08:07:30,273.273 INFO    ] 2026-06-13 08:07:30
[2026-06-13 08:07:30,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:07:30,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:07:30,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:07:30,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:07:30,715.715 INFO    ] time= 13/06/2026 08:07:30
[2026-06-13 08:07:30,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:07:30,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:07:30,852.852 INFO    ] No existing commands found in stream
[2026-06-13 08:07:35,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:07:35,880.880 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 08:07:38,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:07:38,722.722 INFO    ] Checking for system updates...
[2026-06-13 08:07:38,743.743 INFO    ] 200
[2026-06-13 08:07:38,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:38,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:07:38,777.777 INFO    ] No update needed
[2026-06-13 08:07:38,778.778 INFO    ] Checking for camera pi updates...
[2026-06-13 08:07:38,798.798 INFO    ] 200
[2026-06-13 08:07:38,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:38,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:07:38,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:07:38,863.863 INFO    ] No camera update needed
[2026-06-13 08:07:38,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:07:38,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:07:38,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:07:38,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:07:40,910.910 INFO    ] ================================================
[2026-06-13 08:07:40,926.926 INFO    ] Launching Daemon at Sat Jun 13 08:07:40 IST 2026
[2026-06-13 08:07:40,936.936 INFO    ] ================================================
[2026-06-13 08:07:41,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:07:41
[2026-06-13 08:07:41,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:07:42,050.050 INFO    ] Initializing speech engine...
[2026-06-13 08:07:42,068.068 INFO    ] 2026-06-13 08:07:42
[2026-06-13 08:07:42,335.335 INFO    ] 2026-06-13 08:07:42
[2026-06-13 08:07:42,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:07:42,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:07:42,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:07:42,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:07:42,782.782 INFO    ] time= 13/06/2026 08:07:42
[2026-06-13 08:07:42,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:07:42,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:07:42,965.965 INFO    ] No existing commands found in stream
[2026-06-13 08:07:47,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:07:47,980.980 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 08:07:48,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:07:48,831.831 INFO    ] Checking for system updates...
[2026-06-13 08:07:48,852.852 INFO    ] 200
[2026-06-13 08:07:48,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:48,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:07:48,887.887 INFO    ] No update needed
[2026-06-13 08:07:48,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 08:07:48,908.908 INFO    ] 200
[2026-06-13 08:07:48,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:07:48,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:07:48,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:07:48,973.973 INFO    ] No camera update needed
[2026-06-13 08:07:48,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:07:48,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:07:48,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:07:48,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:07:51,020.020 INFO    ] ================================================
[2026-06-13 08:07:51,035.035 INFO    ] Launching Daemon at Sat Jun 13 08:07:51 IST 2026
[2026-06-13 08:07:51,045.045 INFO    ] ================================================
[2026-06-13 08:07:51,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:07:51
[2026-06-13 08:07:51,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:07:51,845.845 INFO    ] Initializing speech engine...
[2026-06-13 08:07:51,856.856 INFO    ] 2026-06-13 08:07:51
[2026-06-13 08:07:52,060.060 INFO    ] 2026-06-13 08:07:52
[2026-06-13 08:07:52,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:07:52,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:07:52,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:07:52,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:07:52,457.457 INFO    ] time= 13/06/2026 08:07:52
[2026-06-13 08:07:52,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:07:52,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:07:52,570.570 INFO    ] No existing commands found in stream
[2026-06-13 08:07:57,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:07:57,585.585 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 08:08:00,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:08:00,856.856 INFO    ] Checking for system updates...
[2026-06-13 08:08:00,877.877 INFO    ] 200
[2026-06-13 08:08:00,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:00,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:00,912.912 INFO    ] No update needed
[2026-06-13 08:08:00,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:00,933.933 INFO    ] 200
[2026-06-13 08:08:00,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:00,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:01,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:01,003.003 INFO    ] No camera update needed
[2026-06-13 08:08:01,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:01,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:01,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:01,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:08:03,045.045 INFO    ] ================================================
[2026-06-13 08:08:03,061.061 INFO    ] Launching Daemon at Sat Jun 13 08:08:03 IST 2026
[2026-06-13 08:08:03,072.072 INFO    ] ================================================
[2026-06-13 08:08:03,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:08:03
[2026-06-13 08:08:03,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:08:03,935.935 INFO    ] Initializing speech engine...
[2026-06-13 08:08:03,951.951 INFO    ] 2026-06-13 08:08:03
[2026-06-13 08:08:04,233.233 INFO    ] 2026-06-13 08:08:04
[2026-06-13 08:08:04,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:08:04,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:08:04,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:08:04,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:08:04,562.562 INFO    ] time= 13/06/2026 08:08:04
[2026-06-13 08:08:04,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:08:04,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:08:04,635.635 INFO    ] No existing commands found in stream
[2026-06-13 08:08:09,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:08:09,649.649 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 08:08:13,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:08:13,409.409 INFO    ] Checking for system updates...
[2026-06-13 08:08:13,429.429 INFO    ] 200
[2026-06-13 08:08:13,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:13,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:13,462.462 INFO    ] No update needed
[2026-06-13 08:08:13,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:13,483.483 INFO    ] 200
[2026-06-13 08:08:13,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:13,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:13,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:13,558.558 INFO    ] No camera update needed
[2026-06-13 08:08:13,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:13,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:13,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:13,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:08:15,605.605 INFO    ] ================================================
[2026-06-13 08:08:15,621.621 INFO    ] Launching Daemon at Sat Jun 13 08:08:15 IST 2026
[2026-06-13 08:08:15,634.634 INFO    ] ================================================
[2026-06-13 08:08:15,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:08:15
[2026-06-13 08:08:16,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:08:16,431.431 INFO    ] Initializing speech engine...
[2026-06-13 08:08:16,439.439 INFO    ] 2026-06-13 08:08:16
[2026-06-13 08:08:16,654.654 INFO    ] 2026-06-13 08:08:16
[2026-06-13 08:08:16,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:08:16,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:08:16,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:08:17,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:08:17,053.053 INFO    ] time= 13/06/2026 08:08:17
[2026-06-13 08:08:17,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:08:17,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:08:17,196.196 INFO    ] No existing commands found in stream
[2026-06-13 08:08:22,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:08:22,210.210 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 08:08:22,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:08:22,601.601 INFO    ] Checking for system updates...
[2026-06-13 08:08:22,622.622 INFO    ] 200
[2026-06-13 08:08:22,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:22,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:22,655.655 INFO    ] No update needed
[2026-06-13 08:08:22,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:22,676.676 INFO    ] 200
[2026-06-13 08:08:22,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:22,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:22,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:22,752.752 INFO    ] No camera update needed
[2026-06-13 08:08:22,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:22,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:22,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:22,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:08:24,800.800 INFO    ] ================================================
[2026-06-13 08:08:24,815.815 INFO    ] Launching Daemon at Sat Jun 13 08:08:24 IST 2026
[2026-06-13 08:08:24,826.826 INFO    ] ================================================
[2026-06-13 08:08:25,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:08:25
[2026-06-13 08:08:25,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:08:25,654.654 INFO    ] Initializing speech engine...
[2026-06-13 08:08:25,663.663 INFO    ] 2026-06-13 08:08:25
[2026-06-13 08:08:25,867.867 INFO    ] 2026-06-13 08:08:25
[2026-06-13 08:08:25,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:08:26,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:08:26,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:08:26,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:08:26,269.269 INFO    ] time= 13/06/2026 08:08:26
[2026-06-13 08:08:26,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:08:26,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:08:26,424.424 INFO    ] No existing commands found in stream
[2026-06-13 08:08:31,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:08:31,434.434 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 08:08:35,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:08:35,640.640 INFO    ] Checking for system updates...
[2026-06-13 08:08:35,662.662 INFO    ] 200
[2026-06-13 08:08:35,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:35,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:35,695.695 INFO    ] No update needed
[2026-06-13 08:08:35,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:35,717.717 INFO    ] 200
[2026-06-13 08:08:35,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:35,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:35,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:35,780.780 INFO    ] No camera update needed
[2026-06-13 08:08:35,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:35,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:35,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:35,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:08:37,827.827 INFO    ] ================================================
[2026-06-13 08:08:37,842.842 INFO    ] Launching Daemon at Sat Jun 13 08:08:37 IST 2026
[2026-06-13 08:08:37,853.853 INFO    ] ================================================
[2026-06-13 08:08:38,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:08:38
[2026-06-13 08:08:38,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:08:38,699.699 INFO    ] Initializing speech engine...
[2026-06-13 08:08:38,710.710 INFO    ] 2026-06-13 08:08:38
[2026-06-13 08:08:38,916.916 INFO    ] 2026-06-13 08:08:38
[2026-06-13 08:08:38,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:08:39,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:08:39,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:08:39,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:08:39,335.335 INFO    ] time= 13/06/2026 08:08:39
[2026-06-13 08:08:39,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:08:39,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:08:39,432.432 INFO    ] No existing commands found in stream
[2026-06-13 08:08:44,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:08:44,444.444 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 08:08:47,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:08:47,387.387 INFO    ] Checking for system updates...
[2026-06-13 08:08:47,408.408 INFO    ] 200
[2026-06-13 08:08:47,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:47,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:47,443.443 INFO    ] No update needed
[2026-06-13 08:08:47,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:47,464.464 INFO    ] 200
[2026-06-13 08:08:47,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:47,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:47,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:47,535.535 INFO    ] No camera update needed
[2026-06-13 08:08:47,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:47,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:47,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:47,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:08:49,582.582 INFO    ] ================================================
[2026-06-13 08:08:49,597.597 INFO    ] Launching Daemon at Sat Jun 13 08:08:49 IST 2026
[2026-06-13 08:08:49,609.609 INFO    ] ================================================
[2026-06-13 08:08:49,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:08:49
[2026-06-13 08:08:50,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:08:50,403.403 INFO    ] Initializing speech engine...
[2026-06-13 08:08:50,407.407 INFO    ] 2026-06-13 08:08:50
[2026-06-13 08:08:50,621.621 INFO    ] 2026-06-13 08:08:50
[2026-06-13 08:08:50,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:08:50,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:08:50,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:08:50,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:08:51,039.039 INFO    ] time= 13/06/2026 08:08:50
[2026-06-13 08:08:51,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:08:51,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:08:51,155.155 INFO    ] No existing commands found in stream
[2026-06-13 08:08:56,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:08:56,168.168 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 08:08:59,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:08:59,745.745 INFO    ] Checking for system updates...
[2026-06-13 08:08:59,766.766 INFO    ] 200
[2026-06-13 08:08:59,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:59,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:08:59,799.799 INFO    ] No update needed
[2026-06-13 08:08:59,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 08:08:59,821.821 INFO    ] 200
[2026-06-13 08:08:59,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:08:59,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:08:59,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:08:59,983.983 INFO    ] No camera update needed
[2026-06-13 08:08:59,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:08:59,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:08:59,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:08:59,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:02,033.033 INFO    ] ================================================
[2026-06-13 08:09:02,049.049 INFO    ] Launching Daemon at Sat Jun 13 08:09:02 IST 2026
[2026-06-13 08:09:02,065.065 INFO    ] ================================================
[2026-06-13 08:09:02,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:09:02
[2026-06-13 08:09:03,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:09:03,405.405 INFO    ] Initializing speech engine...
[2026-06-13 08:09:03,410.410 INFO    ] 2026-06-13 08:09:03
[2026-06-13 08:09:03,613.613 INFO    ] 2026-06-13 08:09:03
[2026-06-13 08:09:03,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:09:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:09:03,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:09:03,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:09:03,929.929 INFO    ] time= 13/06/2026 08:09:03
[2026-06-13 08:09:03,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:09:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:09:04,129.129 INFO    ] No existing commands found in stream
[2026-06-13 08:09:09,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:09:09,142.142 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 08:09:12,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:09:12,785.785 INFO    ] Checking for system updates...
[2026-06-13 08:09:12,806.806 INFO    ] 200
[2026-06-13 08:09:12,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:12,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:09:12,839.839 INFO    ] No update needed
[2026-06-13 08:09:12,840.840 INFO    ] Checking for camera pi updates...
[2026-06-13 08:09:12,859.859 INFO    ] 200
[2026-06-13 08:09:12,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:12,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:09:12,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:09:12,939.939 INFO    ] No camera update needed
[2026-06-13 08:09:12,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:09:12,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:09:12,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:09:12,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:14,985.985 INFO    ] ================================================
[2026-06-13 08:09:15,000.000 INFO    ] Launching Daemon at Sat Jun 13 08:09:14 IST 2026
[2026-06-13 08:09:15,011.011 INFO    ] ================================================
[2026-06-13 08:09:15,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:09:15
[2026-06-13 08:09:15,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:09:15,834.834 INFO    ] Initializing speech engine...
[2026-06-13 08:09:15,841.841 INFO    ] 2026-06-13 08:09:15
[2026-06-13 08:09:16,055.055 INFO    ] 2026-06-13 08:09:16
[2026-06-13 08:09:16,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:09:16,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:09:16,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:09:16,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:09:16,456.456 INFO    ] time= 13/06/2026 08:09:16
[2026-06-13 08:09:16,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:09:16,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:09:16,572.572 INFO    ] No existing commands found in stream
[2026-06-13 08:09:21,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:09:21,585.585 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 08:09:23,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:09:23,755.755 INFO    ] Checking for system updates...
[2026-06-13 08:09:23,776.776 INFO    ] 200
[2026-06-13 08:09:23,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:23,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:23,810.810 INFO    ] No update needed
[2026-06-13 08:09:23,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 08:09:23,831.831 INFO    ] 200
[2026-06-13 08:09:23,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:23,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:09:23,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:23,906.906 INFO    ] No camera update needed
[2026-06-13 08:09:23,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:09:23,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:09:23,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:09:23,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:25,953.953 INFO    ] ================================================
[2026-06-13 08:09:25,968.968 INFO    ] Launching Daemon at Sat Jun 13 08:09:25 IST 2026
[2026-06-13 08:09:25,979.979 INFO    ] ================================================
[2026-06-13 08:09:26,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:09:26
[2026-06-13 08:09:26,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:09:26,819.819 INFO    ] Initializing speech engine...
[2026-06-13 08:09:26,825.825 INFO    ] 2026-06-13 08:09:26
[2026-06-13 08:09:27,030.030 INFO    ] 2026-06-13 08:09:27
[2026-06-13 08:09:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:09:27,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:09:27,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:09:27,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:09:27,429.429 INFO    ] time= 13/06/2026 08:09:27
[2026-06-13 08:09:27,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:09:27,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:09:27,549.549 INFO    ] No existing commands found in stream
[2026-06-13 08:09:32,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:09:32,562.562 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 08:09:35,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:09:35,578.578 INFO    ] Checking for system updates...
[2026-06-13 08:09:35,599.599 INFO    ] 200
[2026-06-13 08:09:35,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:35,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:35,636.636 INFO    ] No update needed
[2026-06-13 08:09:35,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 08:09:35,657.657 INFO    ] 200
[2026-06-13 08:09:35,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:35,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:09:35,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:35,723.723 INFO    ] No camera update needed
[2026-06-13 08:09:35,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:09:35,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:09:35,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:09:35,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:37,769.769 INFO    ] ================================================
[2026-06-13 08:09:37,784.784 INFO    ] Launching Daemon at Sat Jun 13 08:09:37 IST 2026
[2026-06-13 08:09:37,794.794 INFO    ] ================================================
[2026-06-13 08:09:38,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:09:38
[2026-06-13 08:09:38,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:09:38,632.632 INFO    ] Initializing speech engine...
[2026-06-13 08:09:38,637.637 INFO    ] 2026-06-13 08:09:38
[2026-06-13 08:09:38,844.844 INFO    ] 2026-06-13 08:09:38
[2026-06-13 08:09:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:09:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:09:39,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:09:39,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:09:39,263.263 INFO    ] time= 13/06/2026 08:09:39
[2026-06-13 08:09:39,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:09:39,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:09:39,361.361 INFO    ] No existing commands found in stream
[2026-06-13 08:09:44,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:09:44,373.373 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 08:09:47,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:09:47,057.057 INFO    ] Checking for system updates...
[2026-06-13 08:09:47,079.079 INFO    ] 200
[2026-06-13 08:09:47,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:47,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:47,115.115 INFO    ] No update needed
[2026-06-13 08:09:47,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 08:09:47,137.137 INFO    ] 200
[2026-06-13 08:09:47,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:47,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:09:47,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:47,204.204 INFO    ] No camera update needed
[2026-06-13 08:09:47,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:09:47,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:09:47,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:09:47,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:49,253.253 INFO    ] ================================================
[2026-06-13 08:09:49,268.268 INFO    ] Launching Daemon at Sat Jun 13 08:09:49 IST 2026
[2026-06-13 08:09:49,278.278 INFO    ] ================================================
[2026-06-13 08:09:49,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:09:49
[2026-06-13 08:09:49,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:09:50,067.067 INFO    ] Initializing speech engine...
[2026-06-13 08:09:50,072.072 INFO    ] 2026-06-13 08:09:50
[2026-06-13 08:09:50,276.276 INFO    ] 2026-06-13 08:09:50
[2026-06-13 08:09:50,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:09:50,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:09:50,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:09:50,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:09:50,689.689 INFO    ] time= 13/06/2026 08:09:50
[2026-06-13 08:09:50,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:09:50,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:09:50,794.794 INFO    ] No existing commands found in stream
[2026-06-13 08:09:55,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:09:55,808.808 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 08:09:57,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:09:57,765.765 INFO    ] Checking for system updates...
[2026-06-13 08:09:57,785.785 INFO    ] 200
[2026-06-13 08:09:57,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:57,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:57,821.821 INFO    ] No update needed
[2026-06-13 08:09:57,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 08:09:57,843.843 INFO    ] 200
[2026-06-13 08:09:57,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:09:57,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:09:57,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:09:57,907.907 INFO    ] No camera update needed
[2026-06-13 08:09:57,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:09:57,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:09:57,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:09:57,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:09:59,953.953 INFO    ] ================================================
[2026-06-13 08:09:59,968.968 INFO    ] Launching Daemon at Sat Jun 13 08:09:59 IST 2026
[2026-06-13 08:09:59,979.979 INFO    ] ================================================
[2026-06-13 08:10:00,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:00
[2026-06-13 08:10:00,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:00,807.807 INFO    ] Initializing speech engine...
[2026-06-13 08:10:00,817.817 INFO    ] 2026-06-13 08:10:00
[2026-06-13 08:10:01,022.022 INFO    ] 2026-06-13 08:10:01
[2026-06-13 08:10:01,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:01,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:01,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:01,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:01,366.366 INFO    ] time= 13/06/2026 08:10:01
[2026-06-13 08:10:01,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:01,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:01,425.425 INFO    ] No existing commands found in stream
[2026-06-13 08:10:06,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:10:06,443.443 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 08:10:10,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:10:10,420.420 INFO    ] Checking for system updates...
[2026-06-13 08:10:10,443.443 INFO    ] 200
[2026-06-13 08:10:10,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:10,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:10:10,477.477 INFO    ] No update needed
[2026-06-13 08:10:10,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 08:10:10,499.499 INFO    ] 200
[2026-06-13 08:10:10,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:10,523.523 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:10:10,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:10:10,560.560 INFO    ] No camera update needed
[2026-06-13 08:10:10,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:10:10,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:10:10,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:10:10,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:10:12,606.606 INFO    ] ================================================
[2026-06-13 08:10:12,622.622 INFO    ] Launching Daemon at Sat Jun 13 08:10:12 IST 2026
[2026-06-13 08:10:12,633.633 INFO    ] ================================================
[2026-06-13 08:10:12,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:12
[2026-06-13 08:10:13,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:13,816.816 INFO    ] Initializing speech engine...
[2026-06-13 08:10:13,825.825 INFO    ] 2026-06-13 08:10:13
[2026-06-13 08:10:14,076.076 INFO    ] 2026-06-13 08:10:14
[2026-06-13 08:10:14,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:14,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:14,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:14,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:14,453.453 INFO    ] time= 13/06/2026 08:10:14
[2026-06-13 08:10:14,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:14,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:14,633.633 INFO    ] No existing commands found in stream
[2026-06-13 08:10:19,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:10:19,661.661 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 08:10:21,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:10:21,297.297 INFO    ] Checking for system updates...
[2026-06-13 08:10:21,317.317 INFO    ] 200
[2026-06-13 08:10:21,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:21,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:21,351.351 INFO    ] No update needed
[2026-06-13 08:10:21,352.352 INFO    ] Checking for camera pi updates...
[2026-06-13 08:10:21,371.371 INFO    ] 200
[2026-06-13 08:10:21,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:21,396.396 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:10:21,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:21,446.446 INFO    ] No camera update needed
[2026-06-13 08:10:21,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:10:21,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:10:21,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:10:21,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:10:23,492.492 INFO    ] ================================================
[2026-06-13 08:10:23,507.507 INFO    ] Launching Daemon at Sat Jun 13 08:10:23 IST 2026
[2026-06-13 08:10:23,517.517 INFO    ] ================================================
[2026-06-13 08:10:23,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:23
[2026-06-13 08:10:24,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:24,445.445 INFO    ] Initializing speech engine...
[2026-06-13 08:10:24,455.455 INFO    ] 2026-06-13 08:10:24
[2026-06-13 08:10:24,729.729 INFO    ] 2026-06-13 08:10:24
[2026-06-13 08:10:24,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:24,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:24,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:25,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:25,073.073 INFO    ] time= 13/06/2026 08:10:25
[2026-06-13 08:10:25,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:25,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:25,185.185 INFO    ] No existing commands found in stream
[2026-06-13 08:10:30,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:10:30,201.201 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 08:10:34,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:10:34,160.160 INFO    ] Checking for system updates...
[2026-06-13 08:10:34,181.181 INFO    ] 200
[2026-06-13 08:10:34,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:34,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:34,216.216 INFO    ] No update needed
[2026-06-13 08:10:34,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 08:10:34,236.236 INFO    ] 200
[2026-06-13 08:10:34,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:34,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:10:34,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:34,310.310 INFO    ] No camera update needed
[2026-06-13 08:10:34,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:10:34,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:10:34,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:10:34,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:10:36,356.356 INFO    ] ================================================
[2026-06-13 08:10:36,371.371 INFO    ] Launching Daemon at Sat Jun 13 08:10:36 IST 2026
[2026-06-13 08:10:36,383.383 INFO    ] ================================================
[2026-06-13 08:10:36,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:36
[2026-06-13 08:10:37,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:37,180.180 INFO    ] Initializing speech engine...
[2026-06-13 08:10:37,185.185 INFO    ] 2026-06-13 08:10:37
[2026-06-13 08:10:37,391.391 INFO    ] 2026-06-13 08:10:37
[2026-06-13 08:10:37,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:37,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:37,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:37,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:37,790.790 INFO    ] time= 13/06/2026 08:10:37
[2026-06-13 08:10:37,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:37,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:37,904.904 INFO    ] No existing commands found in stream
[2026-06-13 08:10:42,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:10:42,916.916 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 08:10:43,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:10:43,460.460 INFO    ] Checking for system updates...
[2026-06-13 08:10:43,483.483 INFO    ] 200
[2026-06-13 08:10:43,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:43,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:10:43,516.516 INFO    ] No update needed
[2026-06-13 08:10:43,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 08:10:43,537.537 INFO    ] 200
[2026-06-13 08:10:43,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:43,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:10:43,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:10:43,604.604 INFO    ] No camera update needed
[2026-06-13 08:10:43,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:10:43,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:10:43,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:10:43,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:10:45,653.653 INFO    ] ================================================
[2026-06-13 08:10:45,669.669 INFO    ] Launching Daemon at Sat Jun 13 08:10:45 IST 2026
[2026-06-13 08:10:45,679.679 INFO    ] ================================================
[2026-06-13 08:10:46,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:46
[2026-06-13 08:10:46,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:46,494.494 INFO    ] Initializing speech engine...
[2026-06-13 08:10:46,497.497 INFO    ] 2026-06-13 08:10:46
[2026-06-13 08:10:46,705.705 INFO    ] 2026-06-13 08:10:46
[2026-06-13 08:10:46,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:46,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:46,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:47,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:47,096.096 INFO    ] time= 13/06/2026 08:10:47
[2026-06-13 08:10:47,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:47,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:47,222.222 INFO    ] No existing commands found in stream
[2026-06-13 08:10:52,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:10:52,235.235 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 08:10:52,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:10:52,930.930 INFO    ] Checking for system updates...
[2026-06-13 08:10:52,951.951 INFO    ] 200
[2026-06-13 08:10:52,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:52,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:52,983.983 INFO    ] No update needed
[2026-06-13 08:10:52,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 08:10:53,004.004 INFO    ] 200
[2026-06-13 08:10:53,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:10:53,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:10:53,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:10:53,072.072 INFO    ] No camera update needed
[2026-06-13 08:10:53,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:10:53,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:10:53,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:10:53,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:10:55,121.121 INFO    ] ================================================
[2026-06-13 08:10:55,137.137 INFO    ] Launching Daemon at Sat Jun 13 08:10:55 IST 2026
[2026-06-13 08:10:55,148.148 INFO    ] ================================================
[2026-06-13 08:10:55,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:10:55
[2026-06-13 08:10:55,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:10:55,932.932 INFO    ] Initializing speech engine...
[2026-06-13 08:10:55,938.938 INFO    ] 2026-06-13 08:10:55
[2026-06-13 08:10:56,144.144 INFO    ] 2026-06-13 08:10:56
[2026-06-13 08:10:56,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:10:56,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:10:56,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:10:56,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:10:56,540.540 INFO    ] time= 13/06/2026 08:10:56
[2026-06-13 08:10:56,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:10:56,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:10:56,667.667 INFO    ] No existing commands found in stream
[2026-06-13 08:11:01,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:01,681.681 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 08:11:05,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:11:05,526.526 INFO    ] Checking for system updates...
[2026-06-13 08:11:05,558.558 INFO    ] 200
[2026-06-13 08:11:05,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:05,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:11:05,600.600 INFO    ] No update needed
[2026-06-13 08:11:05,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 08:11:05,623.623 INFO    ] 200
[2026-06-13 08:11:05,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:05,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:11:05,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:11:05,705.705 INFO    ] No camera update needed
[2026-06-13 08:11:05,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:11:05,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:11:05,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:11:05,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:11:07,755.755 INFO    ] ================================================
[2026-06-13 08:11:07,772.772 INFO    ] Launching Daemon at Sat Jun 13 08:11:07 IST 2026
[2026-06-13 08:11:07,783.783 INFO    ] ================================================
[2026-06-13 08:11:08,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:11:08
[2026-06-13 08:11:08,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:11:08,635.635 INFO    ] Initializing speech engine...
[2026-06-13 08:11:08,640.640 INFO    ] 2026-06-13 08:11:08
[2026-06-13 08:11:08,847.847 INFO    ] 2026-06-13 08:11:08
[2026-06-13 08:11:08,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:11:09,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:11:09,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:11:09,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:11:09,243.243 INFO    ] time= 13/06/2026 08:11:09
[2026-06-13 08:11:09,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:11:09,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:11:09,445.445 INFO    ] No existing commands found in stream
[2026-06-13 08:11:14,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:14,467.467 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 08:11:16,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:11:16,445.445 INFO    ] Checking for system updates...
[2026-06-13 08:11:16,467.467 INFO    ] 200
[2026-06-13 08:11:16,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:16,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:11:16,501.501 INFO    ] No update needed
[2026-06-13 08:11:16,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 08:11:16,522.522 INFO    ] 200
[2026-06-13 08:11:16,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:16,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:11:16,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:11:16,588.588 INFO    ] No camera update needed
[2026-06-13 08:11:16,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:11:16,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:11:16,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:11:16,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:11:18,637.637 INFO    ] ================================================
[2026-06-13 08:11:18,653.653 INFO    ] Launching Daemon at Sat Jun 13 08:11:18 IST 2026
[2026-06-13 08:11:18,664.664 INFO    ] ================================================
[2026-06-13 08:11:18,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:11:18
[2026-06-13 08:11:19,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:11:19,443.443 INFO    ] Initializing speech engine...
[2026-06-13 08:11:19,448.448 INFO    ] 2026-06-13 08:11:19
[2026-06-13 08:11:19,654.654 INFO    ] 2026-06-13 08:11:19
[2026-06-13 08:11:19,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:11:19,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:11:19,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:11:20,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:11:20,052.052 INFO    ] time= 13/06/2026 08:11:20
[2026-06-13 08:11:20,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:11:20,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:11:20,173.173 INFO    ] No existing commands found in stream
[2026-06-13 08:11:25,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:25,186.186 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 08:11:28,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:11:28,819.819 INFO    ] Checking for system updates...
[2026-06-13 08:11:28,840.840 INFO    ] 200
[2026-06-13 08:11:28,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:28,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:11:28,873.873 INFO    ] No update needed
[2026-06-13 08:11:28,874.874 INFO    ] Checking for camera pi updates...
[2026-06-13 08:11:28,893.893 INFO    ] 200
[2026-06-13 08:11:28,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:28,920.920 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:11:28,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:11:28,957.957 INFO    ] No camera update needed
[2026-06-13 08:11:28,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:11:28,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:11:28,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:11:28,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:11:31,009.009 INFO    ] ================================================
[2026-06-13 08:11:31,025.025 INFO    ] Launching Daemon at Sat Jun 13 08:11:31 IST 2026
[2026-06-13 08:11:31,036.036 INFO    ] ================================================
[2026-06-13 08:11:31,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:11:31
[2026-06-13 08:11:31,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:11:32,211.211 INFO    ] Initializing speech engine...
[2026-06-13 08:11:32,219.219 INFO    ] 2026-06-13 08:11:32
[2026-06-13 08:11:32,496.496 INFO    ] 2026-06-13 08:11:32
[2026-06-13 08:11:32,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:11:32,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:11:32,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:11:32,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:11:33,013.013 INFO    ] time= 13/06/2026 08:11:32
[2026-06-13 08:11:33,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:11:33,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:11:33,144.144 INFO    ] No existing commands found in stream
[2026-06-13 08:11:38,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:38,159.159 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 08:11:41,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:11:41,701.701 INFO    ] Checking for system updates...
[2026-06-13 08:11:41,722.722 INFO    ] 200
[2026-06-13 08:11:41,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:41,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:11:41,758.758 INFO    ] No update needed
[2026-06-13 08:11:41,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 08:11:41,780.780 INFO    ] 200
[2026-06-13 08:11:41,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:41,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:11:41,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:11:41,851.851 INFO    ] No camera update needed
[2026-06-13 08:11:41,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:11:41,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:11:41,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:11:41,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:11:43,899.899 INFO    ] ================================================
[2026-06-13 08:11:43,916.916 INFO    ] Launching Daemon at Sat Jun 13 08:11:43 IST 2026
[2026-06-13 08:11:43,927.927 INFO    ] ================================================
[2026-06-13 08:11:44,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:11:44
[2026-06-13 08:11:44,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:11:44,738.738 INFO    ] Initializing speech engine...
[2026-06-13 08:11:44,743.743 INFO    ] 2026-06-13 08:11:44
[2026-06-13 08:11:44,945.945 INFO    ] 2026-06-13 08:11:44
[2026-06-13 08:11:44,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:11:45,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:11:45,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:11:45,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:11:45,366.366 INFO    ] time= 13/06/2026 08:11:45
[2026-06-13 08:11:45,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:11:45,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:11:45,499.499 INFO    ] No existing commands found in stream
[2026-06-13 08:11:50,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:50,512.512 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 08:11:50,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:11:50,924.924 INFO    ] Checking for system updates...
[2026-06-13 08:11:50,945.945 INFO    ] 200
[2026-06-13 08:11:50,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:50,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:11:50,980.980 INFO    ] No update needed
[2026-06-13 08:11:50,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 08:11:51,001.001 INFO    ] 200
[2026-06-13 08:11:51,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:11:51,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:11:51,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:11:51,067.067 INFO    ] No camera update needed
[2026-06-13 08:11:51,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:11:51,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:11:51,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:11:51,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:11:53,116.116 INFO    ] ================================================
[2026-06-13 08:11:53,132.132 INFO    ] Launching Daemon at Sat Jun 13 08:11:53 IST 2026
[2026-06-13 08:11:53,143.143 INFO    ] ================================================
[2026-06-13 08:11:53,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:11:53
[2026-06-13 08:11:53,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:11:53,997.997 INFO    ] Initializing speech engine...
[2026-06-13 08:11:54,003.003 INFO    ] 2026-06-13 08:11:53
[2026-06-13 08:11:54,215.215 INFO    ] 2026-06-13 08:11:54
[2026-06-13 08:11:54,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:11:54,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:11:54,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:11:54,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:11:54,630.630 INFO    ] time= 13/06/2026 08:11:54
[2026-06-13 08:11:54,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:11:54,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:11:54,743.743 INFO    ] No existing commands found in stream
[2026-06-13 08:11:59,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:11:59,757.757 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 08:12:01,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:12:02,001.001 INFO    ] Checking for system updates...
[2026-06-13 08:12:02,026.026 INFO    ] 200
[2026-06-13 08:12:02,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:02,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:02,066.066 INFO    ] No update needed
[2026-06-13 08:12:02,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:02,094.094 INFO    ] 200
[2026-06-13 08:12:02,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:02,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:02,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:02,163.163 INFO    ] No camera update needed
[2026-06-13 08:12:02,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:02,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:02,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:02,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:04,219.219 INFO    ] ================================================
[2026-06-13 08:12:04,234.234 INFO    ] Launching Daemon at Sat Jun 13 08:12:04 IST 2026
[2026-06-13 08:12:04,246.246 INFO    ] ================================================
[2026-06-13 08:12:04,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:04
[2026-06-13 08:12:04,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:05,054.054 INFO    ] Initializing speech engine...
[2026-06-13 08:12:05,075.075 INFO    ] 2026-06-13 08:12:05
[2026-06-13 08:12:05,324.324 INFO    ] 2026-06-13 08:12:05
[2026-06-13 08:12:05,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:12:05,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:12:05,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:12:05,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:12:05,712.712 INFO    ] time= 13/06/2026 08:12:05
[2026-06-13 08:12:05,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:12:05,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:12:05,834.834 INFO    ] No existing commands found in stream
[2026-06-13 08:12:10,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:12:10,861.861 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 08:12:11,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:12:11,998.998 INFO    ] Checking for system updates...
[2026-06-13 08:12:12,021.021 INFO    ] 200
[2026-06-13 08:12:12,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:12,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:12,054.054 INFO    ] No update needed
[2026-06-13 08:12:12,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:12,075.075 INFO    ] 200
[2026-06-13 08:12:12,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:12,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:12,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:12:12,144.144 INFO    ] No camera update needed
[2026-06-13 08:12:12,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:12,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:12,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:12,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:14,191.191 INFO    ] ================================================
[2026-06-13 08:12:14,207.207 INFO    ] Launching Daemon at Sat Jun 13 08:12:14 IST 2026
[2026-06-13 08:12:14,219.219 INFO    ] ================================================
[2026-06-13 08:12:14,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:14
[2026-06-13 08:12:14,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:15,020.020 INFO    ] Initializing speech engine...
[2026-06-13 08:12:15,025.025 INFO    ] 2026-06-13 08:12:15
[2026-06-13 08:12:15,256.256 INFO    ] 2026-06-13 08:12:15
[2026-06-13 08:12:15,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:12:15,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:12:15,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:12:15,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:12:15,633.633 INFO    ] time= 13/06/2026 08:12:15
[2026-06-13 08:12:15,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:12:15,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:12:15,815.815 INFO    ] No existing commands found in stream
[2026-06-13 08:12:20,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:12:20,842.842 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 08:12:24,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:12:24,330.330 INFO    ] Checking for system updates...
[2026-06-13 08:12:24,351.351 INFO    ] 200
[2026-06-13 08:12:24,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:24,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:24,384.384 INFO    ] No update needed
[2026-06-13 08:12:24,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:24,405.405 INFO    ] 200
[2026-06-13 08:12:24,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:24,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:24,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:24,488.488 INFO    ] No camera update needed
[2026-06-13 08:12:24,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:24,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:24,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:24,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:26,542.542 INFO    ] ================================================
[2026-06-13 08:12:26,559.559 INFO    ] Launching Daemon at Sat Jun 13 08:12:26 IST 2026
[2026-06-13 08:12:26,570.570 INFO    ] ================================================
[2026-06-13 08:12:26,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:26
[2026-06-13 08:12:27,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:27,376.376 INFO    ] Initializing speech engine...
[2026-06-13 08:12:27,385.385 INFO    ] 2026-06-13 08:12:27
[2026-06-13 08:12:27,601.601 INFO    ] 2026-06-13 08:12:27
[2026-06-13 08:12:27,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:12:27,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:12:27,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:12:27,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:12:28,019.019 INFO    ] time= 13/06/2026 08:12:27
[2026-06-13 08:12:28,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:12:28,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:12:28,125.125 INFO    ] No existing commands found in stream
[2026-06-13 08:12:33,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:12:33,136.136 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 08:12:37,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:12:37,335.335 INFO    ] Checking for system updates...
[2026-06-13 08:12:37,356.356 INFO    ] 200
[2026-06-13 08:12:37,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:37,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:37,392.392 INFO    ] No update needed
[2026-06-13 08:12:37,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:37,413.413 INFO    ] 200
[2026-06-13 08:12:37,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:37,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:37,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:12:37,482.482 INFO    ] No camera update needed
[2026-06-13 08:12:37,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:37,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:37,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:37,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:39,531.531 INFO    ] ================================================
[2026-06-13 08:12:39,547.547 INFO    ] Launching Daemon at Sat Jun 13 08:12:39 IST 2026
[2026-06-13 08:12:39,558.558 INFO    ] ================================================
[2026-06-13 08:12:39,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:39
[2026-06-13 08:12:40,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:40,355.355 INFO    ] Initializing speech engine...
[2026-06-13 08:12:40,364.364 INFO    ] 2026-06-13 08:12:40
[2026-06-13 08:12:40,583.583 INFO    ] 2026-06-13 08:12:40
[2026-06-13 08:12:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:12:40,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:12:40,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:12:40,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:12:40,988.988 INFO    ] time= 13/06/2026 08:12:40
[2026-06-13 08:12:41,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:12:41,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:12:41,140.140 INFO    ] No existing commands found in stream
[2026-06-13 08:12:46,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:12:46,153.153 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 08:12:46,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:12:46,701.701 INFO    ] Checking for system updates...
[2026-06-13 08:12:46,724.724 INFO    ] 200
[2026-06-13 08:12:46,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:46,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:12:46,757.757 INFO    ] No update needed
[2026-06-13 08:12:46,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:46,781.781 INFO    ] 200
[2026-06-13 08:12:46,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:46,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:46,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:12:46,843.843 INFO    ] No camera update needed
[2026-06-13 08:12:46,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:46,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:46,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:46,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:48,890.890 INFO    ] ================================================
[2026-06-13 08:12:48,905.905 INFO    ] Launching Daemon at Sat Jun 13 08:12:48 IST 2026
[2026-06-13 08:12:48,916.916 INFO    ] ================================================
[2026-06-13 08:12:49,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:49
[2026-06-13 08:12:49,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:49,712.712 INFO    ] Initializing speech engine...
[2026-06-13 08:12:49,717.717 INFO    ] 2026-06-13 08:12:49
[2026-06-13 08:12:49,917.917 INFO    ] 2026-06-13 08:12:49
[2026-06-13 08:12:49,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:12:50,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:12:50,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:12:50,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:12:50,305.305 INFO    ] time= 13/06/2026 08:12:50
[2026-06-13 08:12:50,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:12:50,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:12:50,514.514 INFO    ] No existing commands found in stream
[2026-06-13 08:12:55,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:12:55,542.542 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 08:12:56,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:12:56,664.664 INFO    ] Checking for system updates...
[2026-06-13 08:12:56,684.684 INFO    ] 200
[2026-06-13 08:12:56,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:56,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:12:56,718.718 INFO    ] No update needed
[2026-06-13 08:12:56,720.720 INFO    ] Checking for camera pi updates...
[2026-06-13 08:12:56,742.742 INFO    ] 200
[2026-06-13 08:12:56,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:12:56,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:12:56,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:12:56,804.804 INFO    ] No camera update needed
[2026-06-13 08:12:56,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:12:56,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:12:56,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:12:56,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:12:58,850.850 INFO    ] ================================================
[2026-06-13 08:12:58,866.866 INFO    ] Launching Daemon at Sat Jun 13 08:12:58 IST 2026
[2026-06-13 08:12:58,876.876 INFO    ] ================================================
[2026-06-13 08:12:59,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:12:59
[2026-06-13 08:12:59,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:12:59,699.699 INFO    ] Initializing speech engine...
[2026-06-13 08:12:59,705.705 INFO    ] 2026-06-13 08:12:59
[2026-06-13 08:12:59,907.907 INFO    ] 2026-06-13 08:12:59
[2026-06-13 08:12:59,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:00,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:00,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:00,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:00,301.301 INFO    ] time= 13/06/2026 08:13:00
[2026-06-13 08:13:00,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:00,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:00,419.419 INFO    ] No existing commands found in stream
[2026-06-13 08:13:05,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:13:05,433.433 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 08:13:09,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:13:09,057.057 INFO    ] Checking for system updates...
[2026-06-13 08:13:09,078.078 INFO    ] 200
[2026-06-13 08:13:09,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:09,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:09,112.112 INFO    ] No update needed
[2026-06-13 08:13:09,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 08:13:09,135.135 INFO    ] 200
[2026-06-13 08:13:09,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:09,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:13:09,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:09,300.300 INFO    ] No camera update needed
[2026-06-13 08:13:09,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:13:09,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:13:09,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:13:09,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:13:11,347.347 INFO    ] ================================================
[2026-06-13 08:13:11,363.363 INFO    ] Launching Daemon at Sat Jun 13 08:13:11 IST 2026
[2026-06-13 08:13:11,374.374 INFO    ] ================================================
[2026-06-13 08:13:11,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:13:11
[2026-06-13 08:13:12,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:13:12,176.176 INFO    ] Initializing speech engine...
[2026-06-13 08:13:12,189.189 INFO    ] 2026-06-13 08:13:12
[2026-06-13 08:13:12,394.394 INFO    ] 2026-06-13 08:13:12
[2026-06-13 08:13:12,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:12,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:12,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:12,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:12,792.792 INFO    ] time= 13/06/2026 08:13:12
[2026-06-13 08:13:12,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:12,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:12,906.906 INFO    ] No existing commands found in stream
[2026-06-13 08:13:17,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:13:17,920.920 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 08:13:18,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:13:18,513.513 INFO    ] Checking for system updates...
[2026-06-13 08:13:18,536.536 INFO    ] 200
[2026-06-13 08:13:18,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:18,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:13:18,570.570 INFO    ] No update needed
[2026-06-13 08:13:18,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 08:13:18,591.591 INFO    ] 200
[2026-06-13 08:13:18,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:18,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:13:18,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:13:18,665.665 INFO    ] No camera update needed
[2026-06-13 08:13:18,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:13:18,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:13:18,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:13:18,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:13:20,713.713 INFO    ] ================================================
[2026-06-13 08:13:20,728.728 INFO    ] Launching Daemon at Sat Jun 13 08:13:20 IST 2026
[2026-06-13 08:13:20,739.739 INFO    ] ================================================
[2026-06-13 08:13:21,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:13:21
[2026-06-13 08:13:21,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:13:21,526.526 INFO    ] Initializing speech engine...
[2026-06-13 08:13:21,530.530 INFO    ] 2026-06-13 08:13:21
[2026-06-13 08:13:21,724.724 INFO    ] 2026-06-13 08:13:21
[2026-06-13 08:13:21,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:21,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:21,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:22,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:22,139.139 INFO    ] time= 13/06/2026 08:13:22
[2026-06-13 08:13:22,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:22,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:22,313.313 INFO    ] No existing commands found in stream
[2026-06-13 08:13:27,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:13:27,327.327 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 08:13:29,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:13:29,927.927 INFO    ] Checking for system updates...
[2026-06-13 08:13:29,950.950 INFO    ] 200
[2026-06-13 08:13:29,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:29,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:29,984.984 INFO    ] No update needed
[2026-06-13 08:13:29,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 08:13:30,005.005 INFO    ] 200
[2026-06-13 08:13:30,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:30,029.029 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:13:30,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:30,074.074 INFO    ] No camera update needed
[2026-06-13 08:13:30,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:13:30,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:13:30,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:13:30,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:13:32,114.114 INFO    ] ================================================
[2026-06-13 08:13:32,123.123 INFO    ] Launching Daemon at Sat Jun 13 08:13:32 IST 2026
[2026-06-13 08:13:32,130.130 INFO    ] ================================================
[2026-06-13 08:13:32,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:13:32
[2026-06-13 08:13:32,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:13:32,999.999 INFO    ] Initializing speech engine...
[2026-06-13 08:13:33,004.004 INFO    ] 2026-06-13 08:13:33
[2026-06-13 08:13:33,213.213 INFO    ] 2026-06-13 08:13:33
[2026-06-13 08:13:33,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:33,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:33,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:33,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:33,629.629 INFO    ] time= 13/06/2026 08:13:33
[2026-06-13 08:13:33,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:33,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:33,735.735 INFO    ] No existing commands found in stream
[2026-06-13 08:13:38,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:13:38,749.749 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 08:13:40,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:13:40,323.323 INFO    ] Checking for system updates...
[2026-06-13 08:13:40,344.344 INFO    ] 200
[2026-06-13 08:13:40,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:40,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:13:40,379.379 INFO    ] No update needed
[2026-06-13 08:13:40,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 08:13:40,400.400 INFO    ] 200
[2026-06-13 08:13:40,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:40,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:13:40,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:13:40,476.476 INFO    ] No camera update needed
[2026-06-13 08:13:40,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:13:40,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:13:40,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:13:40,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:13:42,523.523 INFO    ] ================================================
[2026-06-13 08:13:42,538.538 INFO    ] Launching Daemon at Sat Jun 13 08:13:42 IST 2026
[2026-06-13 08:13:42,549.549 INFO    ] ================================================
[2026-06-13 08:13:42,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:13:42
[2026-06-13 08:13:43,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:13:43,350.350 INFO    ] Initializing speech engine...
[2026-06-13 08:13:43,355.355 INFO    ] 2026-06-13 08:13:43
[2026-06-13 08:13:43,557.557 INFO    ] 2026-06-13 08:13:43
[2026-06-13 08:13:43,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:43,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:43,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:43,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:43,964.964 INFO    ] time= 13/06/2026 08:13:43
[2026-06-13 08:13:43,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:44,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:44,068.068 INFO    ] No existing commands found in stream
[2026-06-13 08:13:49,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:13:49,085.085 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 08:13:52,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:13:52,669.669 INFO    ] Checking for system updates...
[2026-06-13 08:13:52,691.691 INFO    ] 200
[2026-06-13 08:13:52,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:52,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:52,724.724 INFO    ] No update needed
[2026-06-13 08:13:52,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 08:13:52,746.746 INFO    ] 200
[2026-06-13 08:13:52,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:13:52,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:13:52,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:13:52,807.807 INFO    ] No camera update needed
[2026-06-13 08:13:52,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:13:52,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:13:52,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:13:52,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:13:54,855.855 INFO    ] ================================================
[2026-06-13 08:13:54,870.870 INFO    ] Launching Daemon at Sat Jun 13 08:13:54 IST 2026
[2026-06-13 08:13:54,881.881 INFO    ] ================================================
[2026-06-13 08:13:55,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:13:55
[2026-06-13 08:13:55,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:13:55,689.689 INFO    ] Initializing speech engine...
[2026-06-13 08:13:55,694.694 INFO    ] 2026-06-13 08:13:55
[2026-06-13 08:13:55,897.897 INFO    ] 2026-06-13 08:13:55
[2026-06-13 08:13:55,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:13:56,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:13:56,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:13:56,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:13:56,208.208 INFO    ] time= 13/06/2026 08:13:56
[2026-06-13 08:13:56,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:13:56,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:13:56,415.415 INFO    ] No existing commands found in stream
[2026-06-13 08:14:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:01,429.429 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 08:14:03,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:14:03,596.596 INFO    ] Checking for system updates...
[2026-06-13 08:14:03,633.633 INFO    ] 200
[2026-06-13 08:14:03,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:03,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:03,691.691 INFO    ] No update needed
[2026-06-13 08:14:03,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:03,728.728 INFO    ] 200
[2026-06-13 08:14:03,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:03,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:03,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:03,799.799 INFO    ] No camera update needed
[2026-06-13 08:14:03,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:03,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:03,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:03,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:05,846.846 INFO    ] ================================================
[2026-06-13 08:14:05,862.862 INFO    ] Launching Daemon at Sat Jun 13 08:14:05 IST 2026
[2026-06-13 08:14:05,873.873 INFO    ] ================================================
[2026-06-13 08:14:06,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:06
[2026-06-13 08:14:06,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:14:06,686.686 INFO    ] Initializing speech engine...
[2026-06-13 08:14:06,698.698 INFO    ] 2026-06-13 08:14:06
[2026-06-13 08:14:06,905.905 INFO    ] 2026-06-13 08:14:06
[2026-06-13 08:14:06,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:14:07,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:14:07,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:14:07,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:14:07,309.309 INFO    ] time= 13/06/2026 08:14:07
[2026-06-13 08:14:07,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:14:07,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:14:07,417.417 INFO    ] No existing commands found in stream
[2026-06-13 08:14:12,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:12,431.431 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 08:14:15,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:14:15,795.795 INFO    ] Checking for system updates...
[2026-06-13 08:14:15,816.816 INFO    ] 200
[2026-06-13 08:14:15,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:15,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:14:15,850.850 INFO    ] No update needed
[2026-06-13 08:14:15,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:15,871.871 INFO    ] 200
[2026-06-13 08:14:15,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:15,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:15,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:14:15,934.934 INFO    ] No camera update needed
[2026-06-13 08:14:15,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:15,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:15,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:15,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:17,980.980 INFO    ] ================================================
[2026-06-13 08:14:18,996.996 INFO    ] Launching Daemon at Sat Jun 13 08:14:17 IST 2026
[2026-06-13 08:14:18,006.006 INFO    ] ================================================
[2026-06-13 08:14:18,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:18
[2026-06-13 08:14:18,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:14:18,797.797 INFO    ] Initializing speech engine...
[2026-06-13 08:14:18,802.802 INFO    ] 2026-06-13 08:14:18
[2026-06-13 08:14:19,005.005 INFO    ] 2026-06-13 08:14:18
[2026-06-13 08:14:19,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:14:19,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:14:19,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:14:19,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:14:19,403.403 INFO    ] time= 13/06/2026 08:14:19
[2026-06-13 08:14:19,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:14:19,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:14:19,517.517 INFO    ] No existing commands found in stream
[2026-06-13 08:14:24,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:24,530.530 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 08:14:25,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:14:25,182.182 INFO    ] Checking for system updates...
[2026-06-13 08:14:25,203.203 INFO    ] 200
[2026-06-13 08:14:25,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:25,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:25,237.237 INFO    ] No update needed
[2026-06-13 08:14:25,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:25,258.258 INFO    ] 200
[2026-06-13 08:14:25,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:25,283.283 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:25,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:25,321.321 INFO    ] No camera update needed
[2026-06-13 08:14:25,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:25,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:25,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:25,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:27,370.370 INFO    ] ================================================
[2026-06-13 08:14:27,385.385 INFO    ] Launching Daemon at Sat Jun 13 08:14:27 IST 2026
[2026-06-13 08:14:27,396.396 INFO    ] ================================================
[2026-06-13 08:14:27,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:27
[2026-06-13 08:14:28,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:14:28,171.171 INFO    ] Initializing speech engine...
[2026-06-13 08:14:28,176.176 INFO    ] 2026-06-13 08:14:28
[2026-06-13 08:14:28,384.384 INFO    ] 2026-06-13 08:14:28
[2026-06-13 08:14:28,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:14:28,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:14:28,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:14:28,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:14:28,790.790 INFO    ] time= 13/06/2026 08:14:28
[2026-06-13 08:14:28,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:14:28,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:14:28,905.905 INFO    ] No existing commands found in stream
[2026-06-13 08:14:33,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:33,919.919 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 08:14:34,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:14:34,272.272 INFO    ] Checking for system updates...
[2026-06-13 08:14:34,293.293 INFO    ] 200
[2026-06-13 08:14:34,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:34,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:34,329.329 INFO    ] No update needed
[2026-06-13 08:14:34,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:34,349.349 INFO    ] 200
[2026-06-13 08:14:34,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:34,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:34,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:34,430.430 INFO    ] No camera update needed
[2026-06-13 08:14:34,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:34,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:34,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:34,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:36,479.479 INFO    ] ================================================
[2026-06-13 08:14:36,494.494 INFO    ] Launching Daemon at Sat Jun 13 08:14:36 IST 2026
[2026-06-13 08:14:36,505.505 INFO    ] ================================================
[2026-06-13 08:14:36,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:36
[2026-06-13 08:14:37,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:14:37,340.340 INFO    ] Initializing speech engine...
[2026-06-13 08:14:37,353.353 INFO    ] 2026-06-13 08:14:37
[2026-06-13 08:14:37,561.561 INFO    ] 2026-06-13 08:14:37
[2026-06-13 08:14:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:14:37,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:14:37,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:14:37,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:14:37,970.970 INFO    ] time= 13/06/2026 08:14:37
[2026-06-13 08:14:38,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:14:38,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:14:38,081.081 INFO    ] No existing commands found in stream
[2026-06-13 08:14:43,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:43,094.094 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 08:14:45,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:14:45,058.058 INFO    ] Checking for system updates...
[2026-06-13 08:14:45,079.079 INFO    ] 200
[2026-06-13 08:14:45,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:45,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:14:45,115.115 INFO    ] No update needed
[2026-06-13 08:14:45,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:45,136.136 INFO    ] 200
[2026-06-13 08:14:45,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:45,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:45,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:14:45,198.198 INFO    ] No camera update needed
[2026-06-13 08:14:45,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:45,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:45,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:45,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:47,247.247 INFO    ] ================================================
[2026-06-13 08:14:47,262.262 INFO    ] Launching Daemon at Sat Jun 13 08:14:47 IST 2026
[2026-06-13 08:14:47,273.273 INFO    ] ================================================
[2026-06-13 08:14:47,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:47
[2026-06-13 08:14:47,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:14:48,130.130 INFO    ] Initializing speech engine...
[2026-06-13 08:14:48,135.135 INFO    ] 2026-06-13 08:14:48
[2026-06-13 08:14:48,345.345 INFO    ] 2026-06-13 08:14:48
[2026-06-13 08:14:48,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:14:48,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:14:48,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:14:48,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:14:48,767.767 INFO    ] time= 13/06/2026 08:14:48
[2026-06-13 08:14:48,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:14:48,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:14:48,868.868 INFO    ] No existing commands found in stream
[2026-06-13 08:14:53,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:14:53,882.882 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 08:14:57,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:14:57,323.323 INFO    ] Checking for system updates...
[2026-06-13 08:14:57,345.345 INFO    ] 200
[2026-06-13 08:14:57,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:57,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:14:57,380.380 INFO    ] No update needed
[2026-06-13 08:14:57,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 08:14:57,401.401 INFO    ] 200
[2026-06-13 08:14:57,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:14:57,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:14:57,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:14:57,471.471 INFO    ] No camera update needed
[2026-06-13 08:14:57,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:14:57,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:14:57,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:14:57,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:14:59,520.520 INFO    ] ================================================
[2026-06-13 08:14:59,536.536 INFO    ] Launching Daemon at Sat Jun 13 08:14:59 IST 2026
[2026-06-13 08:14:59,547.547 INFO    ] ================================================
[2026-06-13 08:14:59,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:14:59
[2026-06-13 08:15:00,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:00,376.376 INFO    ] Initializing speech engine...
[2026-06-13 08:15:00,382.382 INFO    ] 2026-06-13 08:15:00
[2026-06-13 08:15:00,586.586 INFO    ] 2026-06-13 08:15:00
[2026-06-13 08:15:00,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:00,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:00,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:00,993.993 INFO    ] time= 13/06/2026 08:15:00
[2026-06-13 08:15:01,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:01,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:01,104.104 INFO    ] No existing commands found in stream
[2026-06-13 08:15:06,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:15:06,117.117 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 08:15:08,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:15:08,664.664 INFO    ] Checking for system updates...
[2026-06-13 08:15:08,685.685 INFO    ] 200
[2026-06-13 08:15:08,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:08,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:08,721.721 INFO    ] No update needed
[2026-06-13 08:15:08,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 08:15:08,742.742 INFO    ] 200
[2026-06-13 08:15:08,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:08,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:15:08,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:15:08,816.816 INFO    ] No camera update needed
[2026-06-13 08:15:08,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:15:08,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:15:08,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:15:08,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:15:10,864.864 INFO    ] ================================================
[2026-06-13 08:15:10,879.879 INFO    ] Launching Daemon at Sat Jun 13 08:15:10 IST 2026
[2026-06-13 08:15:10,889.889 INFO    ] ================================================
[2026-06-13 08:15:11,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:15:11
[2026-06-13 08:15:11,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:11,714.714 INFO    ] Initializing speech engine...
[2026-06-13 08:15:11,720.720 INFO    ] 2026-06-13 08:15:11
[2026-06-13 08:15:11,926.926 INFO    ] 2026-06-13 08:15:11
[2026-06-13 08:15:11,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:12,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:12,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:12,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:12,325.325 INFO    ] time= 13/06/2026 08:15:12
[2026-06-13 08:15:12,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:12,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:12,440.440 INFO    ] No existing commands found in stream
[2026-06-13 08:15:17,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:15:17,452.452 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 08:15:19,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:15:19,630.630 INFO    ] Checking for system updates...
[2026-06-13 08:15:19,651.651 INFO    ] 200
[2026-06-13 08:15:19,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:19,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:19,687.687 INFO    ] No update needed
[2026-06-13 08:15:19,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 08:15:19,708.708 INFO    ] 200
[2026-06-13 08:15:19,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:19,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:15:19,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:19,876.876 INFO    ] No camera update needed
[2026-06-13 08:15:19,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:15:19,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:15:19,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:15:19,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:15:21,923.923 INFO    ] ================================================
[2026-06-13 08:15:21,948.948 INFO    ] Launching Daemon at Sat Jun 13 08:15:21 IST 2026
[2026-06-13 08:15:21,958.958 INFO    ] ================================================
[2026-06-13 08:15:22,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:15:22
[2026-06-13 08:15:22,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:22,775.775 INFO    ] Initializing speech engine...
[2026-06-13 08:15:22,781.781 INFO    ] 2026-06-13 08:15:22
[2026-06-13 08:15:22,984.984 INFO    ] 2026-06-13 08:15:22
[2026-06-13 08:15:23,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:23,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:23,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:23,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:23,400.400 INFO    ] time= 13/06/2026 08:15:23
[2026-06-13 08:15:23,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:23,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:23,537.537 INFO    ] No existing commands found in stream
[2026-06-13 08:15:28,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:15:28,551.551 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 08:15:32,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:15:32,779.779 INFO    ] Checking for system updates...
[2026-06-13 08:15:32,824.824 INFO    ] 200
[2026-06-13 08:15:32,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:32,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:32,858.858 INFO    ] No update needed
[2026-06-13 08:15:32,859.859 INFO    ] Checking for camera pi updates...
[2026-06-13 08:15:32,879.879 INFO    ] 200
[2026-06-13 08:15:32,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:32,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:15:32,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:32,928.928 INFO    ] No camera update needed
[2026-06-13 08:15:32,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:15:32,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:15:32,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:15:32,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:15:34,976.976 INFO    ] ================================================
[2026-06-13 08:15:34,993.993 INFO    ] Launching Daemon at Sat Jun 13 08:15:34 IST 2026
[2026-06-13 08:15:35,004.004 INFO    ] ================================================
[2026-06-13 08:15:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:15:35
[2026-06-13 08:15:35,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:35,792.792 INFO    ] Initializing speech engine...
[2026-06-13 08:15:35,797.797 INFO    ] 2026-06-13 08:15:35
[2026-06-13 08:15:36,001.001 INFO    ] 2026-06-13 08:15:35
[2026-06-13 08:15:36,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:36,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:36,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:36,408.408 INFO    ] time= 13/06/2026 08:15:36
[2026-06-13 08:15:36,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:36,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:36,516.516 INFO    ] No existing commands found in stream
[2026-06-13 08:15:41,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:15:41,530.530 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 08:15:43,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:15:43,526.526 INFO    ] Checking for system updates...
[2026-06-13 08:15:43,547.547 INFO    ] 200
[2026-06-13 08:15:43,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:43,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:15:43,583.583 INFO    ] No update needed
[2026-06-13 08:15:43,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 08:15:43,606.606 INFO    ] 200
[2026-06-13 08:15:43,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:43,630.630 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:15:43,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:15:43,669.669 INFO    ] No camera update needed
[2026-06-13 08:15:43,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:15:43,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:15:43,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:15:43,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:15:45,718.718 INFO    ] ================================================
[2026-06-13 08:15:45,734.734 INFO    ] Launching Daemon at Sat Jun 13 08:15:45 IST 2026
[2026-06-13 08:15:45,745.745 INFO    ] ================================================
[2026-06-13 08:15:46,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:15:46
[2026-06-13 08:15:46,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:46,540.540 INFO    ] Initializing speech engine...
[2026-06-13 08:15:46,550.550 INFO    ] 2026-06-13 08:15:46
[2026-06-13 08:15:46,754.754 INFO    ] 2026-06-13 08:15:46
[2026-06-13 08:15:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:46,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:47,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:47,157.157 INFO    ] time= 13/06/2026 08:15:47
[2026-06-13 08:15:47,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:47,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:47,318.318 INFO    ] No existing commands found in stream
[2026-06-13 08:15:52,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:15:52,332.332 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 08:15:55,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:15:55,465.465 INFO    ] Checking for system updates...
[2026-06-13 08:15:55,487.487 INFO    ] 200
[2026-06-13 08:15:55,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:55,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:15:55,523.523 INFO    ] No update needed
[2026-06-13 08:15:55,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 08:15:55,544.544 INFO    ] 200
[2026-06-13 08:15:55,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:15:55,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:15:55,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:15:55,609.609 INFO    ] No camera update needed
[2026-06-13 08:15:55,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:15:55,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:15:55,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:15:55,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:15:57,660.660 INFO    ] ================================================
[2026-06-13 08:15:57,676.676 INFO    ] Launching Daemon at Sat Jun 13 08:15:57 IST 2026
[2026-06-13 08:15:57,687.687 INFO    ] ================================================
[2026-06-13 08:15:58,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:15:58
[2026-06-13 08:15:58,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:15:58,544.544 INFO    ] Initializing speech engine...
[2026-06-13 08:15:58,549.549 INFO    ] 2026-06-13 08:15:58
[2026-06-13 08:15:58,757.757 INFO    ] 2026-06-13 08:15:58
[2026-06-13 08:15:58,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:15:58,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:15:58,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:15:59,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:15:59,022.022 INFO    ] time= 13/06/2026 08:15:59
[2026-06-13 08:15:59,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:15:59,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:15:59,065.065 INFO    ] No existing commands found in stream
[2026-06-13 08:16:04,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:04,078.078 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 08:16:04,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:16:04,456.456 INFO    ] Checking for system updates...
[2026-06-13 08:16:04,477.477 INFO    ] 200
[2026-06-13 08:16:04,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:04,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:04,511.511 INFO    ] No update needed
[2026-06-13 08:16:04,512.512 INFO    ] Checking for camera pi updates...
[2026-06-13 08:16:04,532.532 INFO    ] 200
[2026-06-13 08:16:04,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:04,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:16:04,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:04,604.604 INFO    ] No camera update needed
[2026-06-13 08:16:04,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:16:04,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:16:04,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:16:04,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:16:06,654.654 INFO    ] ================================================
[2026-06-13 08:16:06,671.671 INFO    ] Launching Daemon at Sat Jun 13 08:16:06 IST 2026
[2026-06-13 08:16:06,681.681 INFO    ] ================================================
[2026-06-13 08:16:07,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:16:07
[2026-06-13 08:16:07,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:16:07,519.519 INFO    ] Initializing speech engine...
[2026-06-13 08:16:07,526.526 INFO    ] 2026-06-13 08:16:07
[2026-06-13 08:16:07,734.734 INFO    ] 2026-06-13 08:16:07
[2026-06-13 08:16:07,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:16:07,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:16:07,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:16:08,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:16:08,133.133 INFO    ] time= 13/06/2026 08:16:08
[2026-06-13 08:16:08,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:16:08,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:16:08,252.252 INFO    ] No existing commands found in stream
[2026-06-13 08:16:13,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:13,266.266 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 08:16:15,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:16:15,727.727 INFO    ] Checking for system updates...
[2026-06-13 08:16:15,748.748 INFO    ] 200
[2026-06-13 08:16:15,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:15,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:15,784.784 INFO    ] No update needed
[2026-06-13 08:16:15,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 08:16:15,806.806 INFO    ] 200
[2026-06-13 08:16:15,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:15,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:16:15,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:15,875.875 INFO    ] No camera update needed
[2026-06-13 08:16:15,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:16:15,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:16:15,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:16:15,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:16:17,925.925 INFO    ] ================================================
[2026-06-13 08:16:17,941.941 INFO    ] Launching Daemon at Sat Jun 13 08:16:17 IST 2026
[2026-06-13 08:16:17,953.953 INFO    ] ================================================
[2026-06-13 08:16:18,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:16:18
[2026-06-13 08:16:18,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:16:18,741.741 INFO    ] Initializing speech engine...
[2026-06-13 08:16:18,747.747 INFO    ] 2026-06-13 08:16:18
[2026-06-13 08:16:18,952.952 INFO    ] 2026-06-13 08:16:18
[2026-06-13 08:16:18,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:16:19,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:16:19,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:16:19,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:16:19,351.351 INFO    ] time= 13/06/2026 08:16:19
[2026-06-13 08:16:19,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:16:19,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:16:19,472.472 INFO    ] No existing commands found in stream
[2026-06-13 08:16:24,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:24,485.485 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 08:16:26,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:16:26,737.737 INFO    ] Checking for system updates...
[2026-06-13 08:16:26,758.758 INFO    ] 200
[2026-06-13 08:16:26,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:26,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:26,791.791 INFO    ] No update needed
[2026-06-13 08:16:26,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 08:16:26,812.812 INFO    ] 200
[2026-06-13 08:16:26,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:26,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:16:26,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:16:26,875.875 INFO    ] No camera update needed
[2026-06-13 08:16:26,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:16:26,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:16:26,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:16:26,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:16:28,927.927 INFO    ] ================================================
[2026-06-13 08:16:28,944.944 INFO    ] Launching Daemon at Sat Jun 13 08:16:28 IST 2026
[2026-06-13 08:16:28,955.955 INFO    ] ================================================
[2026-06-13 08:16:29,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:16:29
[2026-06-13 08:16:29,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:16:29,774.774 INFO    ] Initializing speech engine...
[2026-06-13 08:16:29,784.784 INFO    ] 2026-06-13 08:16:29
[2026-06-13 08:16:29,991.991 INFO    ] 2026-06-13 08:16:29
[2026-06-13 08:16:30,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:16:30,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:16:30,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:16:30,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:16:30,393.393 INFO    ] time= 13/06/2026 08:16:30
[2026-06-13 08:16:30,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:16:30,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:16:30,509.509 INFO    ] No existing commands found in stream
[2026-06-13 08:16:35,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:35,521.521 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 08:16:36,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:16:36,543.543 INFO    ] Checking for system updates...
[2026-06-13 08:16:36,564.564 INFO    ] 200
[2026-06-13 08:16:36,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:36,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:16:36,597.597 INFO    ] No update needed
[2026-06-13 08:16:36,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 08:16:36,618.618 INFO    ] 200
[2026-06-13 08:16:36,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:36,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:16:36,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:16:36,685.685 INFO    ] No camera update needed
[2026-06-13 08:16:36,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:16:36,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:16:36,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:16:36,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:16:38,738.738 INFO    ] ================================================
[2026-06-13 08:16:38,754.754 INFO    ] Launching Daemon at Sat Jun 13 08:16:38 IST 2026
[2026-06-13 08:16:38,765.765 INFO    ] ================================================
[2026-06-13 08:16:39,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:16:39
[2026-06-13 08:16:39,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:16:39,573.573 INFO    ] Initializing speech engine...
[2026-06-13 08:16:39,579.579 INFO    ] 2026-06-13 08:16:39
[2026-06-13 08:16:39,810.810 INFO    ] 2026-06-13 08:16:39
[2026-06-13 08:16:39,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:16:39,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:16:40,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:16:40,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:16:40,221.221 INFO    ] time= 13/06/2026 08:16:40
[2026-06-13 08:16:40,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:16:40,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:16:40,372.372 INFO    ] No existing commands found in stream
[2026-06-13 08:16:45,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:45,386.386 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 08:16:49,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:16:49,145.145 INFO    ] Checking for system updates...
[2026-06-13 08:16:49,165.165 INFO    ] 200
[2026-06-13 08:16:49,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:49,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:16:49,199.199 INFO    ] No update needed
[2026-06-13 08:16:49,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 08:16:49,220.220 INFO    ] 200
[2026-06-13 08:16:49,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:16:49,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:16:49,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:16:49,287.287 INFO    ] No camera update needed
[2026-06-13 08:16:49,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:16:49,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:16:49,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:16:49,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:16:51,335.335 INFO    ] ================================================
[2026-06-13 08:16:51,351.351 INFO    ] Launching Daemon at Sat Jun 13 08:16:51 IST 2026
[2026-06-13 08:16:51,362.362 INFO    ] ================================================
[2026-06-13 08:16:51,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:16:51
[2026-06-13 08:16:52,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:16:52,205.205 INFO    ] Initializing speech engine...
[2026-06-13 08:16:52,210.210 INFO    ] 2026-06-13 08:16:52
[2026-06-13 08:16:52,429.429 INFO    ] 2026-06-13 08:16:52
[2026-06-13 08:16:52,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:16:52,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:16:52,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:16:52,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:16:52,830.830 INFO    ] time= 13/06/2026 08:16:52
[2026-06-13 08:16:52,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:16:52,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:16:52,990.990 INFO    ] No existing commands found in stream
[2026-06-13 08:16:58,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:16:58,003.003 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 08:17:00,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:17:00,376.376 INFO    ] Checking for system updates...
[2026-06-13 08:17:00,399.399 INFO    ] 200
[2026-06-13 08:17:00,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:00,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:00,433.433 INFO    ] No update needed
[2026-06-13 08:17:00,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:00,453.453 INFO    ] 200
[2026-06-13 08:17:00,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:00,478.478 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:00,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:00,519.519 INFO    ] No camera update needed
[2026-06-13 08:17:00,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:00,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:00,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:00,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:02,558.558 INFO    ] ================================================
[2026-06-13 08:17:02,573.573 INFO    ] Launching Daemon at Sat Jun 13 08:17:02 IST 2026
[2026-06-13 08:17:02,584.584 INFO    ] ================================================
[2026-06-13 08:17:02,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:02
[2026-06-13 08:17:03,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:03,390.390 INFO    ] Initializing speech engine...
[2026-06-13 08:17:03,394.394 INFO    ] 2026-06-13 08:17:03
[2026-06-13 08:17:03,597.597 INFO    ] 2026-06-13 08:17:03
[2026-06-13 08:17:03,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:03,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:03,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:03,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:03,950.950 INFO    ] time= 13/06/2026 08:17:03
[2026-06-13 08:17:04,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:04,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:04,120.120 INFO    ] No existing commands found in stream
[2026-06-13 08:17:09,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:09,133.133 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 08:17:09,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:17:09,601.601 INFO    ] Checking for system updates...
[2026-06-13 08:17:09,621.621 INFO    ] 200
[2026-06-13 08:17:09,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:09,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:17:09,654.654 INFO    ] No update needed
[2026-06-13 08:17:09,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:09,675.675 INFO    ] 200
[2026-06-13 08:17:09,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:09,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:09,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:09,725.725 INFO    ] No camera update needed
[2026-06-13 08:17:09,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:09,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:09,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:09,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:11,771.771 INFO    ] ================================================
[2026-06-13 08:17:11,786.786 INFO    ] Launching Daemon at Sat Jun 13 08:17:11 IST 2026
[2026-06-13 08:17:11,797.797 INFO    ] ================================================
[2026-06-13 08:17:12,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:12
[2026-06-13 08:17:12,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:12,607.607 INFO    ] Initializing speech engine...
[2026-06-13 08:17:12,611.611 INFO    ] 2026-06-13 08:17:12
[2026-06-13 08:17:12,814.814 INFO    ] 2026-06-13 08:17:12
[2026-06-13 08:17:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:13,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:13,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:13,272.272 INFO    ] time= 13/06/2026 08:17:13
[2026-06-13 08:17:13,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:13,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:13,401.401 INFO    ] No existing commands found in stream
[2026-06-13 08:17:18,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:18,413.413 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 08:17:18,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:17:18,734.734 INFO    ] Checking for system updates...
[2026-06-13 08:17:18,755.755 INFO    ] 200
[2026-06-13 08:17:18,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:18,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:18,791.791 INFO    ] No update needed
[2026-06-13 08:17:18,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:18,811.811 INFO    ] 200
[2026-06-13 08:17:18,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:18,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:18,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:18,887.887 INFO    ] No camera update needed
[2026-06-13 08:17:18,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:18,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:18,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:18,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:20,935.935 INFO    ] ================================================
[2026-06-13 08:17:20,950.950 INFO    ] Launching Daemon at Sat Jun 13 08:17:20 IST 2026
[2026-06-13 08:17:20,961.961 INFO    ] ================================================
[2026-06-13 08:17:21,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:21
[2026-06-13 08:17:21,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:21,757.757 INFO    ] Initializing speech engine...
[2026-06-13 08:17:21,761.761 INFO    ] 2026-06-13 08:17:21
[2026-06-13 08:17:21,980.980 INFO    ] 2026-06-13 08:17:21
[2026-06-13 08:17:22,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:22,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:22,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:22,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:22,383.383 INFO    ] time= 13/06/2026 08:17:22
[2026-06-13 08:17:22,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:22,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:22,501.501 INFO    ] No existing commands found in stream
[2026-06-13 08:17:27,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:27,516.516 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 08:17:30,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:17:30,034.034 INFO    ] Checking for system updates...
[2026-06-13 08:17:30,055.055 INFO    ] 200
[2026-06-13 08:17:30,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:30,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:30,089.089 INFO    ] No update needed
[2026-06-13 08:17:30,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:30,110.110 INFO    ] 200
[2026-06-13 08:17:30,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:30,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:30,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:30,279.279 INFO    ] No camera update needed
[2026-06-13 08:17:30,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:30,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:30,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:30,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:32,312.312 INFO    ] ================================================
[2026-06-13 08:17:32,320.320 INFO    ] Launching Daemon at Sat Jun 13 08:17:32 IST 2026
[2026-06-13 08:17:32,326.326 INFO    ] ================================================
[2026-06-13 08:17:32,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:32
[2026-06-13 08:17:32,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:33,152.152 INFO    ] Initializing speech engine...
[2026-06-13 08:17:33,157.157 INFO    ] 2026-06-13 08:17:33
[2026-06-13 08:17:33,369.369 INFO    ] 2026-06-13 08:17:33
[2026-06-13 08:17:33,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:33,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:33,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:33,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:33,792.792 INFO    ] time= 13/06/2026 08:17:33
[2026-06-13 08:17:33,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:33,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:33,891.891 INFO    ] No existing commands found in stream
[2026-06-13 08:17:38,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:38,909.909 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 08:17:39,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:17:39,657.657 INFO    ] Checking for system updates...
[2026-06-13 08:17:39,679.679 INFO    ] 200
[2026-06-13 08:17:39,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:39,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:39,713.713 INFO    ] No update needed
[2026-06-13 08:17:39,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:39,735.735 INFO    ] 200
[2026-06-13 08:17:39,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:39,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:39,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:17:39,801.801 INFO    ] No camera update needed
[2026-06-13 08:17:39,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:39,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:39,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:39,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:41,850.850 INFO    ] ================================================
[2026-06-13 08:17:41,865.865 INFO    ] Launching Daemon at Sat Jun 13 08:17:41 IST 2026
[2026-06-13 08:17:41,878.878 INFO    ] ================================================
[2026-06-13 08:17:42,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:42
[2026-06-13 08:17:42,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:42,680.680 INFO    ] Initializing speech engine...
[2026-06-13 08:17:42,684.684 INFO    ] 2026-06-13 08:17:42
[2026-06-13 08:17:42,903.903 INFO    ] 2026-06-13 08:17:42
[2026-06-13 08:17:42,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:43,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:43,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:43,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:43,317.317 INFO    ] time= 13/06/2026 08:17:43
[2026-06-13 08:17:43,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:43,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:43,482.482 INFO    ] No existing commands found in stream
[2026-06-13 08:17:48,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:48,495.495 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 08:17:50,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:17:50,985.985 INFO    ] Checking for system updates...
[2026-06-13 08:17:51,009.009 INFO    ] 200
[2026-06-13 08:17:51,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:51,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:17:51,044.044 INFO    ] No update needed
[2026-06-13 08:17:51,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 08:17:51,065.065 INFO    ] 200
[2026-06-13 08:17:51,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:17:51,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:17:51,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:17:51,134.134 INFO    ] No camera update needed
[2026-06-13 08:17:51,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:17:51,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:17:51,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:17:51,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:17:53,184.184 INFO    ] ================================================
[2026-06-13 08:17:53,199.199 INFO    ] Launching Daemon at Sat Jun 13 08:17:53 IST 2026
[2026-06-13 08:17:53,210.210 INFO    ] ================================================
[2026-06-13 08:17:53,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:17:53
[2026-06-13 08:17:53,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:17:54,068.068 INFO    ] Initializing speech engine...
[2026-06-13 08:17:54,074.074 INFO    ] 2026-06-13 08:17:54
[2026-06-13 08:17:54,284.284 INFO    ] 2026-06-13 08:17:54
[2026-06-13 08:17:54,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:17:54,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:17:54,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:17:54,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:17:54,710.710 INFO    ] time= 13/06/2026 08:17:54
[2026-06-13 08:17:54,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:17:54,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:17:54,805.805 INFO    ] No existing commands found in stream
[2026-06-13 08:17:59,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:17:59,820.820 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 08:18:02,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:18:02,315.315 INFO    ] Checking for system updates...
[2026-06-13 08:18:02,336.336 INFO    ] 200
[2026-06-13 08:18:02,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:02,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:02,370.370 INFO    ] No update needed
[2026-06-13 08:18:02,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:02,392.392 INFO    ] 200
[2026-06-13 08:18:02,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:02,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:02,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:02,466.466 INFO    ] No camera update needed
[2026-06-13 08:18:02,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:02,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:02,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:02,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:18:04,515.515 INFO    ] ================================================
[2026-06-13 08:18:04,530.530 INFO    ] Launching Daemon at Sat Jun 13 08:18:04 IST 2026
[2026-06-13 08:18:04,541.541 INFO    ] ================================================
[2026-06-13 08:18:04,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:18:04
[2026-06-13 08:18:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:18:05,420.420 INFO    ] Initializing speech engine...
[2026-06-13 08:18:05,435.435 INFO    ] 2026-06-13 08:18:05
[2026-06-13 08:18:05,645.645 INFO    ] 2026-06-13 08:18:05
[2026-06-13 08:18:05,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:18:05,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:18:05,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:18:05,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:18:06,063.063 INFO    ] time= 13/06/2026 08:18:05
[2026-06-13 08:18:06,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:18:06,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:18:06,164.164 INFO    ] No existing commands found in stream
[2026-06-13 08:18:11,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:18:11,182.182 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 08:18:12,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:18:12,452.452 INFO    ] Checking for system updates...
[2026-06-13 08:18:12,474.474 INFO    ] 200
[2026-06-13 08:18:12,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:12,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:12,509.509 INFO    ] No update needed
[2026-06-13 08:18:12,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:12,530.530 INFO    ] 200
[2026-06-13 08:18:12,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:12,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:12,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:12,586.586 INFO    ] No camera update needed
[2026-06-13 08:18:12,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:12,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:12,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:12,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:18:14,639.639 INFO    ] ================================================
[2026-06-13 08:18:14,655.655 INFO    ] Launching Daemon at Sat Jun 13 08:18:14 IST 2026
[2026-06-13 08:18:14,665.665 INFO    ] ================================================
[2026-06-13 08:18:15,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:18:15
[2026-06-13 08:18:15,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:18:15,491.491 INFO    ] Initializing speech engine...
[2026-06-13 08:18:15,497.497 INFO    ] 2026-06-13 08:18:15
[2026-06-13 08:18:15,683.683 INFO    ] 2026-06-13 08:18:15
[2026-06-13 08:18:15,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:18:15,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:18:15,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:18:16,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:18:16,183.183 INFO    ] time= 13/06/2026 08:18:16
[2026-06-13 08:18:16,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:18:16,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:18:16,296.296 INFO    ] No existing commands found in stream
[2026-06-13 08:18:21,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:18:21,311.311 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 08:18:24,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:18:24,838.838 INFO    ] Checking for system updates...
[2026-06-13 08:18:24,859.859 INFO    ] 200
[2026-06-13 08:18:24,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:24,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:24,892.892 INFO    ] No update needed
[2026-06-13 08:18:24,893.893 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:24,913.913 INFO    ] 200
[2026-06-13 08:18:24,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:24,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:24,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:24,981.981 INFO    ] No camera update needed
[2026-06-13 08:18:24,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:24,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:24,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:24,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:18:27,029.029 INFO    ] ================================================
[2026-06-13 08:18:27,044.044 INFO    ] Launching Daemon at Sat Jun 13 08:18:27 IST 2026
[2026-06-13 08:18:27,055.055 INFO    ] ================================================
[2026-06-13 08:18:27,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:18:27
[2026-06-13 08:18:27,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:18:27,857.857 INFO    ] Initializing speech engine...
[2026-06-13 08:18:27,862.862 INFO    ] 2026-06-13 08:18:27
[2026-06-13 08:18:28,067.067 INFO    ] 2026-06-13 08:18:28
[2026-06-13 08:18:28,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:18:28,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:18:28,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:18:28,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:18:28,470.470 INFO    ] time= 13/06/2026 08:18:28
[2026-06-13 08:18:28,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:18:28,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:18:28,579.579 INFO    ] No existing commands found in stream
[2026-06-13 08:18:33,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:18:33,591.591 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 08:18:35,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:18:35,043.043 INFO    ] Checking for system updates...
[2026-06-13 08:18:35,065.065 INFO    ] 200
[2026-06-13 08:18:35,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:35,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:18:35,098.098 INFO    ] No update needed
[2026-06-13 08:18:35,100.100 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:35,119.119 INFO    ] 200
[2026-06-13 08:18:35,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:35,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:35,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:18:35,186.186 INFO    ] No camera update needed
[2026-06-13 08:18:35,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:35,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:35,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:18:37,226.226 INFO    ] ================================================
[2026-06-13 08:18:37,237.237 INFO    ] Launching Daemon at Sat Jun 13 08:18:37 IST 2026
[2026-06-13 08:18:37,243.243 INFO    ] ================================================
[2026-06-13 08:18:37,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:18:37
[2026-06-13 08:18:37,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:18:38,074.074 INFO    ] Initializing speech engine...
[2026-06-13 08:18:38,085.085 INFO    ] 2026-06-13 08:18:38
[2026-06-13 08:18:38,360.360 INFO    ] 2026-06-13 08:18:38
[2026-06-13 08:18:38,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:18:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:18:38,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:18:38,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:18:38,703.703 INFO    ] time= 13/06/2026 08:18:38
[2026-06-13 08:18:38,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:18:38,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:18:38,822.822 INFO    ] No existing commands found in stream
[2026-06-13 08:18:43,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:18:43,853.853 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 08:18:47,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:18:47,814.814 INFO    ] Checking for system updates...
[2026-06-13 08:18:47,835.835 INFO    ] 200
[2026-06-13 08:18:47,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:47,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:47,869.869 INFO    ] No update needed
[2026-06-13 08:18:47,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:47,891.891 INFO    ] 200
[2026-06-13 08:18:47,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:47,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:47,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:47,956.956 INFO    ] No camera update needed
[2026-06-13 08:18:47,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:47,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:47,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:47,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:18:50,005.005 INFO    ] ================================================
[2026-06-13 08:18:50,020.020 INFO    ] Launching Daemon at Sat Jun 13 08:18:50 IST 2026
[2026-06-13 08:18:50,031.031 INFO    ] ================================================
[2026-06-13 08:18:50,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:18:50
[2026-06-13 08:18:50,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:18:50,837.837 INFO    ] Initializing speech engine...
[2026-06-13 08:18:50,843.843 INFO    ] 2026-06-13 08:18:50
[2026-06-13 08:18:51,046.046 INFO    ] 2026-06-13 08:18:51
[2026-06-13 08:18:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:18:51,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:18:51,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:18:51,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:18:51,440.440 INFO    ] time= 13/06/2026 08:18:51
[2026-06-13 08:18:51,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:18:51,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:18:51,559.559 INFO    ] No existing commands found in stream
[2026-06-13 08:18:56,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:18:56,573.573 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 08:18:58,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:18:58,663.663 INFO    ] Checking for system updates...
[2026-06-13 08:18:58,684.684 INFO    ] 200
[2026-06-13 08:18:58,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:58,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:58,719.719 INFO    ] No update needed
[2026-06-13 08:18:58,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 08:18:58,740.740 INFO    ] 200
[2026-06-13 08:18:58,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:18:58,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:18:58,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:18:58,810.810 INFO    ] No camera update needed
[2026-06-13 08:18:58,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:18:58,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:18:58,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:18:58,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:00,863.863 INFO    ] ================================================
[2026-06-13 08:19:00,878.878 INFO    ] Launching Daemon at Sat Jun 13 08:19:00 IST 2026
[2026-06-13 08:19:00,889.889 INFO    ] ================================================
[2026-06-13 08:19:01,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:01
[2026-06-13 08:19:01,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:01,854.854 INFO    ] Initializing speech engine...
[2026-06-13 08:19:01,866.866 INFO    ] 2026-06-13 08:19:01
[2026-06-13 08:19:02,106.106 INFO    ] 2026-06-13 08:19:02
[2026-06-13 08:19:02,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:02,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:02,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:02,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:02,458.458 INFO    ] time= 13/06/2026 08:19:02
[2026-06-13 08:19:02,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:02,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:02,619.619 INFO    ] No existing commands found in stream
[2026-06-13 08:19:07,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:19:07,634.634 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 08:19:08,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:19:08,406.406 INFO    ] Checking for system updates...
[2026-06-13 08:19:08,428.428 INFO    ] 200
[2026-06-13 08:19:08,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:08,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:19:08,461.461 INFO    ] No update needed
[2026-06-13 08:19:08,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 08:19:08,485.485 INFO    ] 200
[2026-06-13 08:19:08,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:08,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:19:08,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:19:08,555.555 INFO    ] No camera update needed
[2026-06-13 08:19:08,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:19:08,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:19:08,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:19:08,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:10,602.602 INFO    ] ================================================
[2026-06-13 08:19:10,617.617 INFO    ] Launching Daemon at Sat Jun 13 08:19:10 IST 2026
[2026-06-13 08:19:10,629.629 INFO    ] ================================================
[2026-06-13 08:19:10,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:10
[2026-06-13 08:19:11,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:11,438.438 INFO    ] Initializing speech engine...
[2026-06-13 08:19:11,446.446 INFO    ] 2026-06-13 08:19:11
[2026-06-13 08:19:11,660.660 INFO    ] 2026-06-13 08:19:11
[2026-06-13 08:19:11,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:11,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:11,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:11,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:12,030.030 INFO    ] time= 13/06/2026 08:19:11
[2026-06-13 08:19:12,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:12,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:12,169.169 INFO    ] No existing commands found in stream
[2026-06-13 08:19:17,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:19:17,202.202 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 08:19:19,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:19:19,993.993 INFO    ] Checking for system updates...
[2026-06-13 08:19:20,014.014 INFO    ] 200
[2026-06-13 08:19:20,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:20,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:20,047.047 INFO    ] No update needed
[2026-06-13 08:19:20,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 08:19:20,068.068 INFO    ] 200
[2026-06-13 08:19:20,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:20,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:19:20,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:20,136.136 INFO    ] No camera update needed
[2026-06-13 08:19:20,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:19:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:19:20,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:19:20,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:22,184.184 INFO    ] ================================================
[2026-06-13 08:19:22,200.200 INFO    ] Launching Daemon at Sat Jun 13 08:19:22 IST 2026
[2026-06-13 08:19:22,210.210 INFO    ] ================================================
[2026-06-13 08:19:22,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:22
[2026-06-13 08:19:22,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:23,034.034 INFO    ] Initializing speech engine...
[2026-06-13 08:19:23,039.039 INFO    ] 2026-06-13 08:19:23
[2026-06-13 08:19:23,250.250 INFO    ] 2026-06-13 08:19:23
[2026-06-13 08:19:23,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:23,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:23,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:23,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:23,674.674 INFO    ] time= 13/06/2026 08:19:23
[2026-06-13 08:19:23,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:23,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:23,751.751 INFO    ] No existing commands found in stream
[2026-06-13 08:19:28,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:19:28,770.770 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 08:19:31,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:19:31,934.934 INFO    ] Checking for system updates...
[2026-06-13 08:19:31,956.956 INFO    ] 200
[2026-06-13 08:19:31,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:31,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:19:31,996.996 INFO    ] No update needed
[2026-06-13 08:19:31,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 08:19:32,020.020 INFO    ] 200
[2026-06-13 08:19:32,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:32,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:19:32,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:19:32,180.180 INFO    ] No camera update needed
[2026-06-13 08:19:32,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:19:32,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:19:32,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:19:32,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:34,231.231 INFO    ] ================================================
[2026-06-13 08:19:34,246.246 INFO    ] Launching Daemon at Sat Jun 13 08:19:34 IST 2026
[2026-06-13 08:19:34,257.257 INFO    ] ================================================
[2026-06-13 08:19:34,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:34
[2026-06-13 08:19:34,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:35,039.039 INFO    ] Initializing speech engine...
[2026-06-13 08:19:35,043.043 INFO    ] 2026-06-13 08:19:35
[2026-06-13 08:19:35,261.261 INFO    ] 2026-06-13 08:19:35
[2026-06-13 08:19:35,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:35,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:35,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:35,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:35,679.679 INFO    ] time= 13/06/2026 08:19:35
[2026-06-13 08:19:35,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:35,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:35,786.786 INFO    ] No existing commands found in stream
[2026-06-13 08:19:40,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:19:40,799.799 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 08:19:42,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:19:42,818.818 INFO    ] Checking for system updates...
[2026-06-13 08:19:42,839.839 INFO    ] 200
[2026-06-13 08:19:42,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:42,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:42,874.874 INFO    ] No update needed
[2026-06-13 08:19:42,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 08:19:42,896.896 INFO    ] 200
[2026-06-13 08:19:42,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:42,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:19:42,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:42,961.961 INFO    ] No camera update needed
[2026-06-13 08:19:42,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:19:42,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:19:42,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:19:42,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:45,009.009 INFO    ] ================================================
[2026-06-13 08:19:45,024.024 INFO    ] Launching Daemon at Sat Jun 13 08:19:45 IST 2026
[2026-06-13 08:19:45,034.034 INFO    ] ================================================
[2026-06-13 08:19:45,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:45
[2026-06-13 08:19:45,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:45,928.928 INFO    ] Initializing speech engine...
[2026-06-13 08:19:45,947.947 INFO    ] 2026-06-13 08:19:45
[2026-06-13 08:19:46,210.210 INFO    ] 2026-06-13 08:19:46
[2026-06-13 08:19:46,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:46,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:46,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:46,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:46,552.552 INFO    ] time= 13/06/2026 08:19:46
[2026-06-13 08:19:46,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:46,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:46,668.668 INFO    ] No existing commands found in stream
[2026-06-13 08:19:51,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:19:51,686.686 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 08:19:54,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:19:54,864.864 INFO    ] Checking for system updates...
[2026-06-13 08:19:54,885.885 INFO    ] 200
[2026-06-13 08:19:54,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:54,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:54,918.918 INFO    ] No update needed
[2026-06-13 08:19:54,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 08:19:54,940.940 INFO    ] 200
[2026-06-13 08:19:54,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:19:54,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:19:55,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:19:55,009.009 INFO    ] No camera update needed
[2026-06-13 08:19:55,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:19:55,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:19:55,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:19:55,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:19:57,049.049 INFO    ] ================================================
[2026-06-13 08:19:57,064.064 INFO    ] Launching Daemon at Sat Jun 13 08:19:57 IST 2026
[2026-06-13 08:19:57,075.075 INFO    ] ================================================
[2026-06-13 08:19:57,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:19:57
[2026-06-13 08:19:57,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:19:57,869.869 INFO    ] Initializing speech engine...
[2026-06-13 08:19:57,873.873 INFO    ] 2026-06-13 08:19:57
[2026-06-13 08:19:58,079.079 INFO    ] 2026-06-13 08:19:58
[2026-06-13 08:19:58,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:19:58,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:19:58,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:19:58,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:19:58,495.495 INFO    ] time= 13/06/2026 08:19:58
[2026-06-13 08:19:58,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:19:58,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:19:58,601.601 INFO    ] No existing commands found in stream
[2026-06-13 08:20:03,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:03,615.615 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 08:20:07,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:20:07,550.550 INFO    ] Checking for system updates...
[2026-06-13 08:20:07,586.586 INFO    ] 200
[2026-06-13 08:20:07,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:07,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:20:07,625.625 INFO    ] No update needed
[2026-06-13 08:20:07,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 08:20:07,646.646 INFO    ] 200
[2026-06-13 08:20:07,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:07,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:20:07,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:20:07,694.694 INFO    ] No camera update needed
[2026-06-13 08:20:07,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:20:07,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:20:07,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:20:07,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:20:09,742.742 INFO    ] ================================================
[2026-06-13 08:20:09,757.757 INFO    ] Launching Daemon at Sat Jun 13 08:20:09 IST 2026
[2026-06-13 08:20:09,767.767 INFO    ] ================================================
[2026-06-13 08:20:10,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:20:10
[2026-06-13 08:20:10,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:20:10,581.581 INFO    ] Initializing speech engine...
[2026-06-13 08:20:10,587.587 INFO    ] 2026-06-13 08:20:10
[2026-06-13 08:20:10,791.791 INFO    ] 2026-06-13 08:20:10
[2026-06-13 08:20:10,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:20:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:20:11,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:20:11,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:20:11,192.192 INFO    ] time= 13/06/2026 08:20:11
[2026-06-13 08:20:11,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:20:11,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:20:11,307.307 INFO    ] No existing commands found in stream
[2026-06-13 08:20:16,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:16,321.321 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 08:20:19,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:20:19,004.004 INFO    ] Checking for system updates...
[2026-06-13 08:20:19,026.026 INFO    ] 200
[2026-06-13 08:20:19,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:19,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:19,060.060 INFO    ] No update needed
[2026-06-13 08:20:19,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 08:20:19,081.081 INFO    ] 200
[2026-06-13 08:20:19,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:19,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:20:19,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:19,158.158 INFO    ] No camera update needed
[2026-06-13 08:20:19,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:20:19,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:20:19,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:20:19,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:20:21,207.207 INFO    ] ================================================
[2026-06-13 08:20:21,223.223 INFO    ] Launching Daemon at Sat Jun 13 08:20:21 IST 2026
[2026-06-13 08:20:21,234.234 INFO    ] ================================================
[2026-06-13 08:20:21,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:20:21
[2026-06-13 08:20:21,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:20:22,013.013 INFO    ] Initializing speech engine...
[2026-06-13 08:20:22,026.026 INFO    ] 2026-06-13 08:20:22
[2026-06-13 08:20:22,234.234 INFO    ] 2026-06-13 08:20:22
[2026-06-13 08:20:22,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:20:22,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:20:22,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:20:22,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:20:22,640.640 INFO    ] time= 13/06/2026 08:20:22
[2026-06-13 08:20:22,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:20:22,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:20:22,759.759 INFO    ] No existing commands found in stream
[2026-06-13 08:20:27,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:27,771.771 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 08:20:28,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:20:28,657.657 INFO    ] Checking for system updates...
[2026-06-13 08:20:28,679.679 INFO    ] 200
[2026-06-13 08:20:28,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:28,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:20:28,712.712 INFO    ] No update needed
[2026-06-13 08:20:28,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 08:20:28,733.733 INFO    ] 200
[2026-06-13 08:20:28,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:28,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:20:28,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:20:28,798.798 INFO    ] No camera update needed
[2026-06-13 08:20:28,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:20:28,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:20:28,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:20:28,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:20:30,848.848 INFO    ] ================================================
[2026-06-13 08:20:30,863.863 INFO    ] Launching Daemon at Sat Jun 13 08:20:30 IST 2026
[2026-06-13 08:20:30,875.875 INFO    ] ================================================
[2026-06-13 08:20:31,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:20:31
[2026-06-13 08:20:31,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:20:31,777.777 INFO    ] Initializing speech engine...
[2026-06-13 08:20:31,788.788 INFO    ] 2026-06-13 08:20:31
[2026-06-13 08:20:32,020.020 INFO    ] 2026-06-13 08:20:31
[2026-06-13 08:20:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:20:32,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:20:32,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:20:32,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:20:32,474.474 INFO    ] time= 13/06/2026 08:20:32
[2026-06-13 08:20:32,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:20:32,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:20:32,581.581 INFO    ] No existing commands found in stream
[2026-06-13 08:20:37,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:37,594.594 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 08:20:39,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:20:39,493.493 INFO    ] Checking for system updates...
[2026-06-13 08:20:39,516.516 INFO    ] 200
[2026-06-13 08:20:39,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:39,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:39,551.551 INFO    ] No update needed
[2026-06-13 08:20:39,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 08:20:39,572.572 INFO    ] 200
[2026-06-13 08:20:39,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:39,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:20:39,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:39,634.634 INFO    ] No camera update needed
[2026-06-13 08:20:39,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:20:39,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:20:39,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:20:39,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:20:41,682.682 INFO    ] ================================================
[2026-06-13 08:20:41,697.697 INFO    ] Launching Daemon at Sat Jun 13 08:20:41 IST 2026
[2026-06-13 08:20:41,708.708 INFO    ] ================================================
[2026-06-13 08:20:42,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:20:42
[2026-06-13 08:20:42,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:20:42,524.524 INFO    ] Initializing speech engine...
[2026-06-13 08:20:42,529.529 INFO    ] 2026-06-13 08:20:42
[2026-06-13 08:20:42,736.736 INFO    ] 2026-06-13 08:20:42
[2026-06-13 08:20:42,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:20:42,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:20:42,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:20:43,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:20:43,151.151 INFO    ] time= 13/06/2026 08:20:43
[2026-06-13 08:20:43,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:20:43,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:20:43,260.260 INFO    ] No existing commands found in stream
[2026-06-13 08:20:48,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:48,273.273 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 08:20:49,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:20:49,346.346 INFO    ] Checking for system updates...
[2026-06-13 08:20:49,382.382 INFO    ] 200
[2026-06-13 08:20:49,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:49,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:49,440.440 INFO    ] No update needed
[2026-06-13 08:20:49,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 08:20:49,476.476 INFO    ] 200
[2026-06-13 08:20:49,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:20:49,521.521 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:20:49,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:20:49,565.565 INFO    ] No camera update needed
[2026-06-13 08:20:49,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:20:49,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:20:49,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:20:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:20:51,622.622 INFO    ] ================================================
[2026-06-13 08:20:51,637.637 INFO    ] Launching Daemon at Sat Jun 13 08:20:51 IST 2026
[2026-06-13 08:20:51,647.647 INFO    ] ================================================
[2026-06-13 08:20:52,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:20:51
[2026-06-13 08:20:52,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:20:52,461.461 INFO    ] Initializing speech engine...
[2026-06-13 08:20:52,469.469 INFO    ] 2026-06-13 08:20:52
[2026-06-13 08:20:52,714.714 INFO    ] 2026-06-13 08:20:52
[2026-06-13 08:20:52,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:20:52,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:20:52,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:20:53,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:20:53,154.154 INFO    ] time= 13/06/2026 08:20:53
[2026-06-13 08:20:53,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:20:53,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:20:53,286.286 INFO    ] No existing commands found in stream
[2026-06-13 08:20:58,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:20:58,324.324 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 08:21:02,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:21:02,103.103 INFO    ] Checking for system updates...
[2026-06-13 08:21:02,130.130 INFO    ] 200
[2026-06-13 08:21:02,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:02,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:02,171.171 INFO    ] No update needed
[2026-06-13 08:21:02,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:02,197.197 INFO    ] 200
[2026-06-13 08:21:02,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:02,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:02,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:02,252.252 INFO    ] No camera update needed
[2026-06-13 08:21:02,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:02,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:02,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:02,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:04,305.305 INFO    ] ================================================
[2026-06-13 08:21:04,321.321 INFO    ] Launching Daemon at Sat Jun 13 08:21:04 IST 2026
[2026-06-13 08:21:04,332.332 INFO    ] ================================================
[2026-06-13 08:21:04,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:04
[2026-06-13 08:21:04,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:05,120.120 INFO    ] Initializing speech engine...
[2026-06-13 08:21:05,125.125 INFO    ] 2026-06-13 08:21:05
[2026-06-13 08:21:05,342.342 INFO    ] 2026-06-13 08:21:05
[2026-06-13 08:21:05,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:05,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:05,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:05,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:05,741.741 INFO    ] time= 13/06/2026 08:21:05
[2026-06-13 08:21:05,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:05,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:05,874.874 INFO    ] No existing commands found in stream
[2026-06-13 08:21:10,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:21:10,888.888 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 08:21:11,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:21:11,951.951 INFO    ] Checking for system updates...
[2026-06-13 08:21:11,972.972 INFO    ] 200
[2026-06-13 08:21:11,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:12,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:12,009.009 INFO    ] No update needed
[2026-06-13 08:21:12,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:12,030.030 INFO    ] 200
[2026-06-13 08:21:12,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:12,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:12,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:12,096.096 INFO    ] No camera update needed
[2026-06-13 08:21:12,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:12,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:12,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:12,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:14,143.143 INFO    ] ================================================
[2026-06-13 08:21:14,158.158 INFO    ] Launching Daemon at Sat Jun 13 08:21:14 IST 2026
[2026-06-13 08:21:14,168.168 INFO    ] ================================================
[2026-06-13 08:21:14,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:14
[2026-06-13 08:21:14,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:14,969.969 INFO    ] Initializing speech engine...
[2026-06-13 08:21:14,976.976 INFO    ] 2026-06-13 08:21:14
[2026-06-13 08:21:15,190.190 INFO    ] 2026-06-13 08:21:15
[2026-06-13 08:21:15,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:15,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:15,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:15,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:15,603.603 INFO    ] time= 13/06/2026 08:21:15
[2026-06-13 08:21:15,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:15,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:15,710.710 INFO    ] No existing commands found in stream
[2026-06-13 08:21:20,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:21:20,722.722 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 08:21:22,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:21:22,317.317 INFO    ] Checking for system updates...
[2026-06-13 08:21:22,338.338 INFO    ] 200
[2026-06-13 08:21:22,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:22,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:22,371.371 INFO    ] No update needed
[2026-06-13 08:21:22,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:22,393.393 INFO    ] 200
[2026-06-13 08:21:22,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:22,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:22,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:22,461.461 INFO    ] No camera update needed
[2026-06-13 08:21:22,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:22,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:22,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:22,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:24,507.507 INFO    ] ================================================
[2026-06-13 08:21:24,522.522 INFO    ] Launching Daemon at Sat Jun 13 08:21:24 IST 2026
[2026-06-13 08:21:24,533.533 INFO    ] ================================================
[2026-06-13 08:21:24,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:24
[2026-06-13 08:21:25,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:25,326.326 INFO    ] Initializing speech engine...
[2026-06-13 08:21:25,334.334 INFO    ] 2026-06-13 08:21:25
[2026-06-13 08:21:25,541.541 INFO    ] 2026-06-13 08:21:25
[2026-06-13 08:21:25,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:25,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:25,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:25,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:25,963.963 INFO    ] time= 13/06/2026 08:21:25
[2026-06-13 08:21:25,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:25,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:26,062.062 INFO    ] No existing commands found in stream
[2026-06-13 08:21:31,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:21:31,074.074 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 08:21:35,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:21:35,265.265 INFO    ] Checking for system updates...
[2026-06-13 08:21:35,299.299 INFO    ] 200
[2026-06-13 08:21:35,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:35,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:21:35,332.332 INFO    ] No update needed
[2026-06-13 08:21:35,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:35,353.353 INFO    ] 200
[2026-06-13 08:21:35,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:35,378.378 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:35,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:21:35,525.525 INFO    ] No camera update needed
[2026-06-13 08:21:35,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:35,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:35,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:35,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:37,573.573 INFO    ] ================================================
[2026-06-13 08:21:37,589.589 INFO    ] Launching Daemon at Sat Jun 13 08:21:37 IST 2026
[2026-06-13 08:21:37,599.599 INFO    ] ================================================
[2026-06-13 08:21:37,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:37
[2026-06-13 08:21:38,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:38,416.416 INFO    ] Initializing speech engine...
[2026-06-13 08:21:38,420.420 INFO    ] 2026-06-13 08:21:38
[2026-06-13 08:21:38,647.647 INFO    ] 2026-06-13 08:21:38
[2026-06-13 08:21:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:38,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:38,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:38,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:39,035.035 INFO    ] time= 13/06/2026 08:21:38
[2026-06-13 08:21:39,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:39,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:39,159.159 INFO    ] No existing commands found in stream
[2026-06-13 08:21:44,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:21:44,171.171 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 08:21:44,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:21:44,820.820 INFO    ] Checking for system updates...
[2026-06-13 08:21:44,841.841 INFO    ] 200
[2026-06-13 08:21:44,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:44,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:21:44,874.874 INFO    ] No update needed
[2026-06-13 08:21:44,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:44,894.894 INFO    ] 200
[2026-06-13 08:21:44,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:44,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:44,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:21:44,956.956 INFO    ] No camera update needed
[2026-06-13 08:21:44,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:44,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:44,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:44,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:47,004.004 INFO    ] ================================================
[2026-06-13 08:21:47,019.019 INFO    ] Launching Daemon at Sat Jun 13 08:21:47 IST 2026
[2026-06-13 08:21:47,030.030 INFO    ] ================================================
[2026-06-13 08:21:47,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:47
[2026-06-13 08:21:47,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:47,840.840 INFO    ] Initializing speech engine...
[2026-06-13 08:21:47,853.853 INFO    ] 2026-06-13 08:21:47
[2026-06-13 08:21:48,074.074 INFO    ] 2026-06-13 08:21:48
[2026-06-13 08:21:48,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:48,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:48,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:48,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:48,477.477 INFO    ] time= 13/06/2026 08:21:48
[2026-06-13 08:21:48,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:48,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:48,649.649 INFO    ] No existing commands found in stream
[2026-06-13 08:21:53,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:21:53,667.667 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 08:21:54,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:21:54,031.031 INFO    ] Checking for system updates...
[2026-06-13 08:21:54,052.052 INFO    ] 200
[2026-06-13 08:21:54,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:54,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:21:54,086.086 INFO    ] No update needed
[2026-06-13 08:21:54,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 08:21:54,109.109 INFO    ] 200
[2026-06-13 08:21:54,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:21:54,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:21:54,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:21:54,172.172 INFO    ] No camera update needed
[2026-06-13 08:21:54,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:21:54,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:21:54,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:21:54,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:21:56,221.221 INFO    ] ================================================
[2026-06-13 08:21:56,236.236 INFO    ] Launching Daemon at Sat Jun 13 08:21:56 IST 2026
[2026-06-13 08:21:56,246.246 INFO    ] ================================================
[2026-06-13 08:21:56,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:21:56
[2026-06-13 08:21:56,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:21:57,040.040 INFO    ] Initializing speech engine...
[2026-06-13 08:21:57,044.044 INFO    ] 2026-06-13 08:21:57
[2026-06-13 08:21:57,272.272 INFO    ] 2026-06-13 08:21:57
[2026-06-13 08:21:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:21:57,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:21:57,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:21:57,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:21:57,666.666 INFO    ] time= 13/06/2026 08:21:57
[2026-06-13 08:21:57,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:21:57,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:21:57,830.830 INFO    ] No existing commands found in stream
[2026-06-13 08:22:02,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:02,841.841 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 08:22:03,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:22:03,369.369 INFO    ] Checking for system updates...
[2026-06-13 08:22:03,405.405 INFO    ] 200
[2026-06-13 08:22:03,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:03,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:22:03,463.463 INFO    ] No update needed
[2026-06-13 08:22:03,465.465 INFO    ] Checking for camera pi updates...
[2026-06-13 08:22:03,499.499 INFO    ] 200
[2026-06-13 08:22:03,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:03,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:22:03,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:22:03,588.588 INFO    ] No camera update needed
[2026-06-13 08:22:03,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:22:03,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:22:03,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:22:03,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:22:05,636.636 INFO    ] ================================================
[2026-06-13 08:22:05,652.652 INFO    ] Launching Daemon at Sat Jun 13 08:22:05 IST 2026
[2026-06-13 08:22:05,662.662 INFO    ] ================================================
[2026-06-13 08:22:06,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:22:06
[2026-06-13 08:22:06,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:22:07,034.034 INFO    ] Initializing speech engine...
[2026-06-13 08:22:07,040.040 INFO    ] 2026-06-13 08:22:07
[2026-06-13 08:22:07,301.301 INFO    ] 2026-06-13 08:22:07
[2026-06-13 08:22:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:22:07,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:22:07,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:22:07,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:22:07,740.740 INFO    ] time= 13/06/2026 08:22:07
[2026-06-13 08:22:07,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:22:07,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:22:07,910.910 INFO    ] No existing commands found in stream
[2026-06-13 08:22:12,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:12,925.925 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 08:22:15,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:22:15,494.494 INFO    ] Checking for system updates...
[2026-06-13 08:22:15,515.515 INFO    ] 200
[2026-06-13 08:22:15,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:15,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:15,548.548 INFO    ] No update needed
[2026-06-13 08:22:15,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 08:22:15,569.569 INFO    ] 200
[2026-06-13 08:22:15,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:15,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:22:15,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:15,631.631 INFO    ] No camera update needed
[2026-06-13 08:22:15,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:22:15,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:22:15,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:22:15,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:22:17,680.680 INFO    ] ================================================
[2026-06-13 08:22:17,696.696 INFO    ] Launching Daemon at Sat Jun 13 08:22:17 IST 2026
[2026-06-13 08:22:17,707.707 INFO    ] ================================================
[2026-06-13 08:22:18,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:22:18
[2026-06-13 08:22:18,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:22:18,477.477 INFO    ] Initializing speech engine...
[2026-06-13 08:22:18,489.489 INFO    ] 2026-06-13 08:22:18
[2026-06-13 08:22:18,700.700 INFO    ] 2026-06-13 08:22:18
[2026-06-13 08:22:18,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:22:18,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:22:18,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:22:19,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:22:19,102.102 INFO    ] time= 13/06/2026 08:22:19
[2026-06-13 08:22:19,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:22:19,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:22:19,220.220 INFO    ] No existing commands found in stream
[2026-06-13 08:22:24,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:24,232.232 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 08:22:26,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:22:26,333.333 INFO    ] Checking for system updates...
[2026-06-13 08:22:26,353.353 INFO    ] 200
[2026-06-13 08:22:26,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:26,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:26,388.388 INFO    ] No update needed
[2026-06-13 08:22:26,389.389 INFO    ] Checking for camera pi updates...
[2026-06-13 08:22:26,409.409 INFO    ] 200
[2026-06-13 08:22:26,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:26,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:22:26,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:26,468.468 INFO    ] No camera update needed
[2026-06-13 08:22:26,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:22:26,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:22:26,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:22:26,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:22:28,515.515 INFO    ] ================================================
[2026-06-13 08:22:28,530.530 INFO    ] Launching Daemon at Sat Jun 13 08:22:28 IST 2026
[2026-06-13 08:22:28,542.542 INFO    ] ================================================
[2026-06-13 08:22:28,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:22:28
[2026-06-13 08:22:29,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:22:29,321.321 INFO    ] Initializing speech engine...
[2026-06-13 08:22:29,329.329 INFO    ] 2026-06-13 08:22:29
[2026-06-13 08:22:29,536.536 INFO    ] 2026-06-13 08:22:29
[2026-06-13 08:22:29,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:22:29,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:22:29,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:22:29,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:22:29,932.932 INFO    ] time= 13/06/2026 08:22:29
[2026-06-13 08:22:29,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:22:29,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:22:30,051.051 INFO    ] No existing commands found in stream
[2026-06-13 08:22:35,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:35,064.064 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 08:22:37,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:22:37,957.957 INFO    ] Checking for system updates...
[2026-06-13 08:22:37,978.978 INFO    ] 200
[2026-06-13 08:22:37,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:38,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:38,011.011 INFO    ] No update needed
[2026-06-13 08:22:38,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 08:22:38,032.032 INFO    ] 200
[2026-06-13 08:22:38,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:38,056.056 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:22:38,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:38,095.095 INFO    ] No camera update needed
[2026-06-13 08:22:38,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:22:38,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:22:38,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:22:38,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:22:40,144.144 INFO    ] ================================================
[2026-06-13 08:22:40,160.160 INFO    ] Launching Daemon at Sat Jun 13 08:22:40 IST 2026
[2026-06-13 08:22:40,171.171 INFO    ] ================================================
[2026-06-13 08:22:40,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:22:40
[2026-06-13 08:22:40,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:22:41,012.012 INFO    ] Initializing speech engine...
[2026-06-13 08:22:41,018.018 INFO    ] 2026-06-13 08:22:41
[2026-06-13 08:22:41,226.226 INFO    ] 2026-06-13 08:22:41
[2026-06-13 08:22:41,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:22:41,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:22:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:22:41,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:22:41,640.640 INFO    ] time= 13/06/2026 08:22:41
[2026-06-13 08:22:41,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:22:41,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:22:41,744.744 INFO    ] No existing commands found in stream
[2026-06-13 08:22:46,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:46,772.772 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 08:22:48,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:22:48,837.837 INFO    ] Checking for system updates...
[2026-06-13 08:22:48,858.858 INFO    ] 200
[2026-06-13 08:22:48,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:48,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:22:48,893.893 INFO    ] No update needed
[2026-06-13 08:22:48,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 08:22:48,914.914 INFO    ] 200
[2026-06-13 08:22:48,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:22:48,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:22:48,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:22:48,976.976 INFO    ] No camera update needed
[2026-06-13 08:22:48,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:22:48,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:22:48,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:22:48,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:22:51,023.023 INFO    ] ================================================
[2026-06-13 08:22:51,040.040 INFO    ] Launching Daemon at Sat Jun 13 08:22:51 IST 2026
[2026-06-13 08:22:51,051.051 INFO    ] ================================================
[2026-06-13 08:22:51,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:22:51
[2026-06-13 08:22:51,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:22:51,869.869 INFO    ] Initializing speech engine...
[2026-06-13 08:22:51,874.874 INFO    ] 2026-06-13 08:22:51
[2026-06-13 08:22:52,077.077 INFO    ] 2026-06-13 08:22:52
[2026-06-13 08:22:52,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:22:52,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:22:52,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:22:52,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:22:52,477.477 INFO    ] time= 13/06/2026 08:22:52
[2026-06-13 08:22:52,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:22:52,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:22:52,593.593 INFO    ] No existing commands found in stream
[2026-06-13 08:22:57,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:22:57,610.610 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 08:23:01,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:23:01,874.874 INFO    ] Checking for system updates...
[2026-06-13 08:23:01,895.895 INFO    ] 200
[2026-06-13 08:23:01,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:01,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:23:01,979.979 INFO    ] No update needed
[2026-06-13 08:23:01,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 08:23:02,066.066 INFO    ] 200
[2026-06-13 08:23:02,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:02,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:23:02,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:23:02,202.202 INFO    ] No camera update needed
[2026-06-13 08:23:02,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:23:02,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:23:02,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:23:02,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:23:04,276.276 INFO    ] ================================================
[2026-06-13 08:23:04,291.291 INFO    ] Launching Daemon at Sat Jun 13 08:23:04 IST 2026
[2026-06-13 08:23:04,302.302 INFO    ] ================================================
[2026-06-13 08:23:04,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:23:04
[2026-06-13 08:23:05,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:23:05,446.446 INFO    ] Initializing speech engine...
[2026-06-13 08:23:05,453.453 INFO    ] 2026-06-13 08:23:05
[2026-06-13 08:23:05,676.676 INFO    ] 2026-06-13 08:23:05
[2026-06-13 08:23:05,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:23:05,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:23:05,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:23:06,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:23:06,077.077 INFO    ] time= 13/06/2026 08:23:06
[2026-06-13 08:23:06,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:23:06,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:23:06,228.228 INFO    ] No existing commands found in stream
[2026-06-13 08:23:11,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:23:11,242.242 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 08:23:14,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:23:14,889.889 INFO    ] Checking for system updates...
[2026-06-13 08:23:14,911.911 INFO    ] 200
[2026-06-13 08:23:14,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:14,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:23:14,944.944 INFO    ] No update needed
[2026-06-13 08:23:14,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 08:23:14,965.965 INFO    ] 200
[2026-06-13 08:23:14,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:14,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:23:15,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:23:15,039.039 INFO    ] No camera update needed
[2026-06-13 08:23:15,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:23:15,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:23:15,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:23:15,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:23:17,086.086 INFO    ] ================================================
[2026-06-13 08:23:17,101.101 INFO    ] Launching Daemon at Sat Jun 13 08:23:17 IST 2026
[2026-06-13 08:23:17,113.113 INFO    ] ================================================
[2026-06-13 08:23:17,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:23:17
[2026-06-13 08:23:17,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:23:17,933.933 INFO    ] Initializing speech engine...
[2026-06-13 08:23:17,938.938 INFO    ] 2026-06-13 08:23:17
[2026-06-13 08:23:18,153.153 INFO    ] 2026-06-13 08:23:18
[2026-06-13 08:23:18,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:23:18,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:23:18,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:23:18,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:23:18,573.573 INFO    ] time= 13/06/2026 08:23:18
[2026-06-13 08:23:18,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:23:18,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:23:18,774.774 INFO    ] No existing commands found in stream
[2026-06-13 08:23:23,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:23:23,807.807 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 08:23:27,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:23:27,218.218 INFO    ] Checking for system updates...
[2026-06-13 08:23:27,239.239 INFO    ] 200
[2026-06-13 08:23:27,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:27,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:23:27,272.272 INFO    ] No update needed
[2026-06-13 08:23:27,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 08:23:27,293.293 INFO    ] 200
[2026-06-13 08:23:27,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:27,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:23:27,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:23:27,355.355 INFO    ] No camera update needed
[2026-06-13 08:23:27,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:23:27,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:23:27,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:23:27,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:23:29,403.403 INFO    ] ================================================
[2026-06-13 08:23:29,418.418 INFO    ] Launching Daemon at Sat Jun 13 08:23:29 IST 2026
[2026-06-13 08:23:29,429.429 INFO    ] ================================================
[2026-06-13 08:23:29,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:23:29
[2026-06-13 08:23:30,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:23:30,752.752 INFO    ] Initializing speech engine...
[2026-06-13 08:23:30,765.765 INFO    ] 2026-06-13 08:23:30
[2026-06-13 08:23:31,049.049 INFO    ] 2026-06-13 08:23:31
[2026-06-13 08:23:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:23:31,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:23:31,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:23:31,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:23:31,491.491 INFO    ] time= 13/06/2026 08:23:31
[2026-06-13 08:23:31,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:23:31,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:23:31,721.721 INFO    ] No existing commands found in stream
[2026-06-13 08:23:36,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:23:36,747.747 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 08:23:38,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:23:38,980.980 INFO    ] Checking for system updates...
[2026-06-13 08:23:39,002.002 INFO    ] 200
[2026-06-13 08:23:39,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:39,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:23:39,036.036 INFO    ] No update needed
[2026-06-13 08:23:39,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 08:23:39,057.057 INFO    ] 200
[2026-06-13 08:23:39,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:39,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:23:39,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:23:39,225.225 INFO    ] No camera update needed
[2026-06-13 08:23:39,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:23:39,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:23:39,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:23:39,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:23:41,274.274 INFO    ] ================================================
[2026-06-13 08:23:41,290.290 INFO    ] Launching Daemon at Sat Jun 13 08:23:41 IST 2026
[2026-06-13 08:23:41,301.301 INFO    ] ================================================
[2026-06-13 08:23:41,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:23:41
[2026-06-13 08:23:42,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:23:42,152.152 INFO    ] Initializing speech engine...
[2026-06-13 08:23:42,158.158 INFO    ] 2026-06-13 08:23:42
[2026-06-13 08:23:42,367.367 INFO    ] 2026-06-13 08:23:42
[2026-06-13 08:23:42,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:23:42,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:23:42,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:23:42,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:23:42,780.780 INFO    ] time= 13/06/2026 08:23:42
[2026-06-13 08:23:42,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:23:42,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:23:42,893.893 INFO    ] No existing commands found in stream
[2026-06-13 08:23:47,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:23:47,906.906 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 08:23:50,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:23:50,888.888 INFO    ] Checking for system updates...
[2026-06-13 08:23:50,909.909 INFO    ] 200
[2026-06-13 08:23:50,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:50,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:23:50,942.942 INFO    ] No update needed
[2026-06-13 08:23:50,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 08:23:50,963.963 INFO    ] 200
[2026-06-13 08:23:50,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:23:50,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:23:51,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:23:51,029.029 INFO    ] No camera update needed
[2026-06-13 08:23:51,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:23:51,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:23:51,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:23:51,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:23:53,077.077 INFO    ] ================================================
[2026-06-13 08:23:53,093.093 INFO    ] Launching Daemon at Sat Jun 13 08:23:53 IST 2026
[2026-06-13 08:23:53,104.104 INFO    ] ================================================
[2026-06-13 08:23:53,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:23:53
[2026-06-13 08:23:53,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:23:53,938.938 INFO    ] Initializing speech engine...
[2026-06-13 08:23:53,943.943 INFO    ] 2026-06-13 08:23:53
[2026-06-13 08:23:54,147.147 INFO    ] 2026-06-13 08:23:54
[2026-06-13 08:23:54,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:23:54,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:23:54,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:23:54,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:23:54,549.549 INFO    ] time= 13/06/2026 08:23:54
[2026-06-13 08:23:54,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:23:54,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:23:54,665.665 INFO    ] No existing commands found in stream
[2026-06-13 08:23:59,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:23:59,682.682 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 08:24:00,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:24:00,434.434 INFO    ] Checking for system updates...
[2026-06-13 08:24:00,455.455 INFO    ] 200
[2026-06-13 08:24:00,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:00,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:00,489.489 INFO    ] No update needed
[2026-06-13 08:24:00,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:00,510.510 INFO    ] 200
[2026-06-13 08:24:00,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:00,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:00,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:00,572.572 INFO    ] No camera update needed
[2026-06-13 08:24:00,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:00,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:00,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:00,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:02,612.612 INFO    ] ================================================
[2026-06-13 08:24:02,621.621 INFO    ] Launching Daemon at Sat Jun 13 08:24:02 IST 2026
[2026-06-13 08:24:02,629.629 INFO    ] ================================================
[2026-06-13 08:24:02,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:02
[2026-06-13 08:24:03,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:03,387.387 INFO    ] Initializing speech engine...
[2026-06-13 08:24:03,396.396 INFO    ] 2026-06-13 08:24:03
[2026-06-13 08:24:03,590.590 INFO    ] 2026-06-13 08:24:03
[2026-06-13 08:24:03,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:03,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:03,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:03,934.934 INFO    ] time= 13/06/2026 08:24:03
[2026-06-13 08:24:03,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:03,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:04,013.013 INFO    ] No existing commands found in stream
[2026-06-13 08:24:09,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:24:09,027.027 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 08:24:11,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:24:11,535.535 INFO    ] Checking for system updates...
[2026-06-13 08:24:11,556.556 INFO    ] 200
[2026-06-13 08:24:11,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:11,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:11,589.589 INFO    ] No update needed
[2026-06-13 08:24:11,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:11,610.610 INFO    ] 200
[2026-06-13 08:24:11,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:11,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:11,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:11,684.684 INFO    ] No camera update needed
[2026-06-13 08:24:11,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:11,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:11,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:11,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:13,730.730 INFO    ] ================================================
[2026-06-13 08:24:13,745.745 INFO    ] Launching Daemon at Sat Jun 13 08:24:13 IST 2026
[2026-06-13 08:24:13,756.756 INFO    ] ================================================
[2026-06-13 08:24:14,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:14
[2026-06-13 08:24:14,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:14,555.555 INFO    ] Initializing speech engine...
[2026-06-13 08:24:14,560.560 INFO    ] 2026-06-13 08:24:14
[2026-06-13 08:24:14,780.780 INFO    ] 2026-06-13 08:24:14
[2026-06-13 08:24:14,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:14,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:15,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:15,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:15,197.197 INFO    ] time= 13/06/2026 08:24:15
[2026-06-13 08:24:15,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:15,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:15,302.302 INFO    ] No existing commands found in stream
[2026-06-13 08:24:20,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:24:20,315.315 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 08:24:23,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:24:23,859.859 INFO    ] Checking for system updates...
[2026-06-13 08:24:23,879.879 INFO    ] 200
[2026-06-13 08:24:23,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:23,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:24:23,913.913 INFO    ] No update needed
[2026-06-13 08:24:23,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:23,936.936 INFO    ] 200
[2026-06-13 08:24:23,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:23,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:23,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:24:23,999.999 INFO    ] No camera update needed
[2026-06-13 08:24:24,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:24,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:24,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:24,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:26,047.047 INFO    ] ================================================
[2026-06-13 08:24:26,062.062 INFO    ] Launching Daemon at Sat Jun 13 08:24:26 IST 2026
[2026-06-13 08:24:26,073.073 INFO    ] ================================================
[2026-06-13 08:24:26,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:26
[2026-06-13 08:24:26,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:26,859.859 INFO    ] Initializing speech engine...
[2026-06-13 08:24:26,870.870 INFO    ] 2026-06-13 08:24:26
[2026-06-13 08:24:27,084.084 INFO    ] 2026-06-13 08:24:27
[2026-06-13 08:24:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:27,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:27,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:27,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:27,503.503 INFO    ] time= 13/06/2026 08:24:27
[2026-06-13 08:24:27,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:27,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:27,634.634 INFO    ] No existing commands found in stream
[2026-06-13 08:24:32,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:24:32,648.648 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 08:24:36,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:24:36,052.052 INFO    ] Checking for system updates...
[2026-06-13 08:24:36,074.074 INFO    ] 200
[2026-06-13 08:24:36,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:36,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:36,108.108 INFO    ] No update needed
[2026-06-13 08:24:36,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:36,129.129 INFO    ] 200
[2026-06-13 08:24:36,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:36,154.154 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:36,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:36,180.180 INFO    ] No camera update needed
[2026-06-13 08:24:36,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:36,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:36,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:36,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:38,227.227 INFO    ] ================================================
[2026-06-13 08:24:38,242.242 INFO    ] Launching Daemon at Sat Jun 13 08:24:38 IST 2026
[2026-06-13 08:24:38,253.253 INFO    ] ================================================
[2026-06-13 08:24:38,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:38
[2026-06-13 08:24:38,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:39,109.109 INFO    ] Initializing speech engine...
[2026-06-13 08:24:39,120.120 INFO    ] 2026-06-13 08:24:39
[2026-06-13 08:24:39,327.327 INFO    ] 2026-06-13 08:24:39
[2026-06-13 08:24:39,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:39,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:39,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:39,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:39,747.747 INFO    ] time= 13/06/2026 08:24:39
[2026-06-13 08:24:39,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:39,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:39,847.847 INFO    ] No existing commands found in stream
[2026-06-13 08:24:44,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:24:44,861.861 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 08:24:48,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:24:48,218.218 INFO    ] Checking for system updates...
[2026-06-13 08:24:48,241.241 INFO    ] 200
[2026-06-13 08:24:48,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:48,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:48,274.274 INFO    ] No update needed
[2026-06-13 08:24:48,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:48,296.296 INFO    ] 200
[2026-06-13 08:24:48,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:48,321.321 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:48,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:24:48,359.359 INFO    ] No camera update needed
[2026-06-13 08:24:48,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:48,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:48,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:48,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:50,407.407 INFO    ] ================================================
[2026-06-13 08:24:50,422.422 INFO    ] Launching Daemon at Sat Jun 13 08:24:50 IST 2026
[2026-06-13 08:24:50,433.433 INFO    ] ================================================
[2026-06-13 08:24:50,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:50
[2026-06-13 08:24:51,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:51,274.274 INFO    ] Initializing speech engine...
[2026-06-13 08:24:51,289.289 INFO    ] 2026-06-13 08:24:51
[2026-06-13 08:24:51,527.527 INFO    ] 2026-06-13 08:24:51
[2026-06-13 08:24:51,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:51,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:51,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:51,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:51,939.939 INFO    ] time= 13/06/2026 08:24:51
[2026-06-13 08:24:51,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:51,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:52,041.041 INFO    ] No existing commands found in stream
[2026-06-13 08:24:52,269.269 INFO    ] Received new command: ID=1781319292229-0
[2026-06-13 08:24:52,271.271 INFO    ] process_and_cleanup_command: msg_id=1781319292229-0
[2026-06-13 08:24:52,273.273 INFO    ] is_command_expired: timestamp=2026-06-13T02:54:51.771Z, expiry=30s
[2026-06-13 08:24:52,370.370 INFO    ] Command removed from stream: 1781319292229-0. returning for processing...
[2026-06-13 08:24:52,396.396 INFO    ] ***** get_valid_command
[2026-06-13 08:24:52,399.399 INFO    ] {'data': '{"request_id":"start-order-1781319291771-tg987y1bt","orderId":"TM08202203260613082359717","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-13T02:54:51.771Z', 'command': 'start-order', 'timeout': '10'}
[2026-06-13 08:24:52,402.402 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613082359717', 'request_id': 'start-order-1781319291771-tg987y1bt', 'is_vending': False}
[2026-06-13 08:24:52,406.406 INFO    ] Handling start order...
[2026-06-13 08:24:52,409.409 INFO    ] handle_start_order_command
[2026-06-13 08:24:52,415.415 INFO    ] _send_start_order_success: request_id=start-order-1781319291771-tg987y1bt, order_id=TM08202203260613082359717
[2026-06-13 08:24:52,418.418 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:24:52,482.482 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781319292430-0
[2026-06-13 08:24:52,485.485 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:24:52,490.490 INFO    ] Checking for system updates...
[2026-06-13 08:24:52,522.522 INFO    ] 200
[2026-06-13 08:24:52,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:52,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:24:52,565.565 INFO    ] No update needed
[2026-06-13 08:24:52,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 08:24:52,627.627 INFO    ] 200
[2026-06-13 08:24:52,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:52,667.667 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:24:52,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:24:52,700.700 INFO    ] No camera update needed
[2026-06-13 08:24:52,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:24:52,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:24:52,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:24:52,746.746 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 08:24:52,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:24:54,822.822 INFO    ] ================================================
[2026-06-13 08:24:54,836.836 INFO    ] Launching Daemon at Sat Jun 13 08:24:54 IST 2026
[2026-06-13 08:24:54,847.847 INFO    ] ================================================
[2026-06-13 08:24:55,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:24:55
[2026-06-13 08:24:55,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:24:55,642.642 INFO    ] Initializing speech engine...
[2026-06-13 08:24:55,648.648 INFO    ] 2026-06-13 08:24:55
[2026-06-13 08:24:55,864.864 INFO    ] 2026-06-13 08:24:55
[2026-06-13 08:24:55,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:24:56,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:24:56,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:24:56,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:24:56,290.290 INFO    ] time= 13/06/2026 08:24:56
[2026-06-13 08:24:56,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:24:56,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:24:56,418.418 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 08:24:56,422.422 INFO    ] Checking historical command: ID=1781319292430-0
[2026-06-13 08:24:56,428.428 INFO    ] process_and_cleanup_command: msg_id=1781319292430-0
[2026-06-13 08:24:56,451.451 INFO    ] is_command_expired: timestamp=2026-06-13T02:54:52.416434Z, expiry=30s
[2026-06-13 08:24:56,569.569 INFO    ] Command removed from stream: 1781319292430-0. returning for processing...
[2026-06-13 08:24:56,572.572 INFO    ] ***** get_valid_command
[2026-06-13 08:24:56,575.575 INFO    ] {'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613082359717', 'metadata_request_id': 'start-order-1781319291771-tg987y1bt', 'timestamp': '2026-06-13T02:54:52.416434Z', 'message': 'start-order success', 'status': 'success', 'imei': 'TM08202203'}
[2026-06-13 08:24:56,579.579 INFO    ] Checking historical command: ID=1781319294410-0
[2026-06-13 08:24:56,581.581 INFO    ] process_and_cleanup_command: msg_id=1781319294410-0
[2026-06-13 08:24:56,585.585 INFO    ] is_command_expired: timestamp=2026-06-13T02:54:53.926Z, expiry=30s
[2026-06-13 08:24:56,626.626 INFO    ] Command removed from stream: 1781319294410-0. returning for processing...
[2026-06-13 08:24:56,629.629 INFO    ] ***** get_valid_command
[2026-06-13 08:24:56,632.632 INFO    ] {'data': '{"request_id":"process-order-1781319293925-nslku3y7o","orderId":"TM08202203260613082359717","is_vending":false,"accessCode":"75513432"}', 'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-13T02:54:53.926Z'}
[2026-06-13 08:24:56,635.635 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613082359717', 'accessCode': '75513432', 'is_vending': False, 'request_id': 'process-order-1781319293925-nslku3y7o'}
[2026-06-13 08:24:56,638.638 INFO    ] Handling process order...
[2026-06-13 08:24:56,641.641 INFO    ] Processing process-order command...
[2026-06-13 08:24:56,645.645 INFO    ] 🔍 Lock file Order ID: TM08202203260613082359717, TS: 2026-06-13 08:24:52
[2026-06-13 08:24:56,653.653 INFO    ] ✅ Order lock valid for TM08202203260613082359717
[2026-06-13 08:24:56,656.656 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:24:56,659.659 INFO    ] processing access code 75513432 for order TM08202203260613082359717
[2026-06-13 08:24:56,663.663 INFO    ] 🔍 Lock file Order ID: TM08202203260613082359717, TS: 2026-06-13 08:24:52
[2026-06-13 08:24:56,666.666 INFO    ] ✅ Order lock valid for TM08202203260613082359717
[2026-06-13 08:24:56,670.670 INFO    ] 2026-06-13 08:24:56
[2026-06-13 08:24:56,700.700 INFO    ] 200
[2026-06-13 08:24:56,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:24:56,708.708 INFO    ] 75513432
[2026-06-13 08:24:56,713.713 INFO    ] 2026-06-13 08:24:56
[2026-06-13 08:24:56,716.716 INFO    ] session id :693398194
[2026-06-13 08:24:56,720.720 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=75513432&imei=TM08202203&session_id=693398194
[2026-06-13 08:24:57,442.442 INFO    ] 200
[2026-06-13 08:24:57,448.448 INFO    ] {"data": {"mobile": "6235910826", "order_id": "TM08202203260613082359717", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Rite Bite Sports Bar 40gm", "tray_id": "36", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "75513432", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:24:57,457.457 INFO    ] 40
[2026-06-13 08:24:57,462.462 INFO    ] TM08202203260613082359717
[2026-06-13 08:24:57,469.469 INFO    ] 6235910826
[2026-06-13 08:24:57,473.473 INFO    ] 2026-06-13 08:24:57
[2026-06-13 08:24:57,478.478 INFO    ] Door Opening for user mobile ending with  zero eight two six 
[2026-06-13 08:24:57,482.482 INFO    ] Door Opening for user mobile ending with  zero eight two six 
[2026-06-13 08:24:57,483.483 INFO    ] b6f866e1618f972c856de46df1355534
[2026-06-13 08:24:57,488.488 INFO    ] 2026-06-13 08:24:57
[2026-06-13 08:24:57,490.490 INFO    ] creating audio file
[2026-06-13 08:24:57,525.525 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 08:24:57,965.965 INFO    ] gTTS API call completed successfully
[2026-06-13 08:24:58,583.583 INFO    ] 2026-06-13 08:24:58
[2026-06-13 08:24:58,584.584 INFO    ] playing audio file
[2026-06-13 08:24:58,594.594 INFO    ] 2026-06-13 08:24:58
[2026-06-13 08:24:58,596.596 INFO    ] 2026-06-13 08:24:58
[2026-06-13 08:24:58,598.598 INFO    ] publish_status: order_id=TM08202203260613082359717
[2026-06-13 08:24:58,600.600 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082359717
[2026-06-13 08:24:58,660.660 INFO    ] [publish_status] Message added to stream with ID: 1781319298628-0
[2026-06-13 08:24:58,661.661 INFO    ] Published to order:TM08202203260613082359717: {'server_response': '{"data": {"order_id": "TM08202203260613082359717", "access_code": "75513432", "mobile": "6235910826", "invoice_bill": "40", "proposed_sku_json": [{"tray_id": "36", "qty": 1, "name": "Rite Bite Sports Bar 40gm", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "door_id": "2", "skuid": "4500669", "offer_id": "", "unit_price": 40, "sku_total": 40, "offer_desc": "", "mrp": "40"}], "bill_amount": "40"}, "msg": "Order Data", "rstatus": true, "status": true}', 'timestamp': '2026-06-13T02:54:58.597511Z', 'order_id': 'TM08202203260613082359717', 'server_status': 'order-started'} (ID: 1781319298628-0)
[2026-06-13 08:24:58,966.966 INFO    ] {'server_response': {'data': {'order_id': 'TM08202203260613082359717', 'access_code': '75513432', 'mobile': '6235910826', 'invoice_bill': '40', 'proposed_sku_json': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '2', 'skuid': '4500669', 'offer_id': '', 'unit_price': 40, 'sku_total': 40, 'offer_desc': '', 'mrp': '40'}], 'bill_amount': '40'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613082359717', 'server_status': 'order-started'}
[2026-06-13 08:24:58,968.968 INFO    ] 200
[2026-06-13 08:24:58,969.969 INFO    ] {"data":{"server_response":{"data":{"order_id":"TM08202203260613082359717","access_code":"75513432","mobile":"6235910826","invoice_bill":"40","proposed_sku_json":[{"tray_id":"36","qty":1,"name":"Rite Bite Sports Bar 40gm","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","door_id":"2","skuid":"4500669","offer_id":"","unit_price":40,"sku_total":40,"offer_desc":"","mrp":"40"}],"bill_amount":"40"},"msg":"Order Data","rstatus":true,"status":true},"order_id":"TM08202203260613082359717","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:24:58,971.971 INFO    ] {'data': {'server_response': {'data': {'order_id': 'TM08202203260613082359717', 'proposed_sku_json': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm', 'skuid': '4500669', 'unit_price': 40, 'mrp': '40', 'offer_id': '', 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'offer_desc': '', 'door_id': '2'}], 'mobile': '6235910826', 'access_code': '75513432', 'bill_amount': '40', 'invoice_bill': '40'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613082359717', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 08:24:58,973.973 INFO    ] 2026-06-13 08:24:58
[2026-06-13 08:24:58,998.998 INFO    ] 200
[2026-06-13 08:24:59,000.000 INFO    ] True
[2026-06-13 08:24:59,080.080 INFO    ] 200
[2026-06-13 08:24:59,081.081 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:24:59,083.083 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 08:24:59,084.084 INFO    ] *** process_order ***
[2026-06-13 08:25:00,149.149 INFO    ] 200
[2026-06-13 08:25:00,151.151 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:25:00,152.152 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 08:25:00,154.154 INFO    ] *** process_order ***
[2026-06-13 08:25:01,267.267 INFO    ] 200
[2026-06-13 08:25:01,268.268 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:25:01,270.270 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 08:25:01,271.271 INFO    ] *** process_order ***
[2026-06-13 08:25:01,273.273 INFO    ] publish_status: order_id=TM08202203260613082359717
[2026-06-13 08:25:01,274.274 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082359717
[2026-06-13 08:25:01,345.345 INFO    ] [publish_status] Message added to stream with ID: 1781319301312-0
[2026-06-13 08:25:01,346.346 INFO    ] Published to order:TM08202203260613082359717: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now."}, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "status": "True", "rstatus": true}', 'order_id': 'TM08202203260613082359717', 'server_status': 'doorOpened'} (ID: 1781319301312-0)
[2026-06-13 08:25:02,387.387 INFO    ] 2026-06-13 08:25:02
[2026-06-13 08:25:02,392.392 INFO    ] publish_status: order_id=TM08202203260613082359717
[2026-06-13 08:25:02,395.395 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082359717
[2026-06-13 08:25:02,478.478 INFO    ] [publish_status] Message added to stream with ID: 1781319302445-0
[2026-06-13 08:25:02,482.482 INFO    ] Published to order:TM08202203260613082359717: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}}', 'timestamp': '2026-06-13T02:55:02.389846Z', 'order_id': 'TM08202203260613082359717', 'server_status': 'processOrder'} (ID: 1781319302445-0)
[2026-06-13 08:25:02,600.600 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM08202203260613082359717', 'server_status': 'processOrder'}
[2026-06-13 08:25:02,603.603 INFO    ] 200
[2026-06-13 08:25:02,610.610 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"rstatus":true,"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","delay":0,"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"}},"order_id":"TM08202203260613082359717","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:25:02,613.613 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'status': 'true'}, 'order_id': 'TM08202203260613082359717', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 08:25:02,617.617 INFO    ] 2026-06-13 08:25:02
[2026-06-13 08:25:02,625.625 INFO    ] None
[2026-06-13 08:25:02,629.629 INFO    ] Opening Door now
[2026-06-13 08:25:02,636.636 INFO    ] Opening Door now
[2026-06-13 08:25:02,639.639 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:25:02,650.650 INFO    ] 2026-06-13 08:25:02
[2026-06-13 08:25:02,653.653 INFO    ] playing audio file
[2026-06-13 08:25:02,681.681 INFO    ] 2026-06-13 08:25:02
[2026-06-13 08:25:02,685.685 INFO    ] 2026-06-13 08:25:02
[2026-06-13 08:25:05,727.727 INFO    ] 200
[2026-06-13 08:25:05,729.729 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:25:05,731.731 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 08:25:08,794.794 INFO    ] 200
[2026-06-13 08:25:08,797.797 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:25:08,803.803 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 08:25:11,838.838 INFO    ] 200
[2026-06-13 08:25:11,840.840 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:25:11,841.841 INFO    ] Please close door 2
[2026-06-13 08:25:11,843.843 INFO    ] Please close door 2
[2026-06-13 08:25:11,844.844 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:25:11,846.846 INFO    ] 2026-06-13 08:25:11
[2026-06-13 08:25:11,847.847 INFO    ] playing audio file
[2026-06-13 08:25:11,857.857 INFO    ] 2026-06-13 08:25:11
[2026-06-13 08:25:11,860.860 INFO    ] publish_status: order_id=TM08202203260613082359717
[2026-06-13 08:25:11,862.862 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082359717
[2026-06-13 08:25:11,933.933 INFO    ] [publish_status] Message added to stream with ID: 1781319311900-0
[2026-06-13 08:25:11,935.935 INFO    ] Published to order:TM08202203260613082359717: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "status": "False", "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}}', 'timestamp': '2026-06-13T02:55:11.859063Z', 'order_id': 'TM08202203260613082359717', 'server_status': 'OrderStatus'} (ID: 1781319311900-0)
[2026-06-13 08:25:12,265.265 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613082359717', 'server_status': 'OrderStatus'}
[2026-06-13 08:25:12,267.267 INFO    ] 200
[2026-06-13 08:25:12,268.268 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Rite Bite Sports Bar 40gm"}]},"status":"false","error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613082359717","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:25:12,270.270 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'false'}, 'order_id': 'TM08202203260613082359717', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 08:25:12,271.271 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'status': 'False', 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 08:25:15,307.307 INFO    ] 200
[2026-06-13 08:25:15,309.309 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:25:15,310.310 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 08:25:15,312.312 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,314.314 INFO    ] Order Completed 
[2026-06-13 08:25:15,315.315 INFO    ] Order Completed 
[2026-06-13 08:25:15,317.317 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:25:15,318.318 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,320.320 INFO    ] playing audio file
[2026-06-13 08:25:15,331.331 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,333.333 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 08:25:15,335.335 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,682.682 INFO    ] 200
[2026-06-13 08:25:15,684.684 INFO    ] {"res": "True", "orderId": "TM08202203260613082359717", "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "", "tray_id": "36", "name": "Rite Bite Sports Bar 40gm per peice", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 08:25:15,686.686 INFO    ] {'res': 'True', 'anomaly': 0, 'total_amount': 40.0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'unit_price': '40', 'mrp': '40', 'sku_total': 40.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': ''}], 'orderId': 'TM08202203260613082359717'}
[2026-06-13 08:25:15,687.687 INFO    ] {'res': 'True', 'anomaly': 0, 'total_amount': 40.0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'unit_price': '40', 'mrp': '40', 'sku_total': 40.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': ''}], 'orderId': 'TM08202203260613082359717'}
[2026-06-13 08:25:15,689.689 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,690.690 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,692.692 INFO    ] 40
[2026-06-13 08:25:15,693.693 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,694.694 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,695.695 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:25:15,697.697 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:25:15,698.698 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 08:25:15,699.699 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,701.701 INFO    ] playing audio file
[2026-06-13 08:25:15,711.711 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,713.713 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:15,715.715 INFO    ] publish_status: order_id=TM08202203260613082359717
[2026-06-13 08:25:15,717.717 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082359717
[2026-06-13 08:25:15,765.765 INFO    ] [publish_status] Message added to stream with ID: 1781319315730-0
[2026-06-13 08:25:15,766.766 INFO    ] Published to order:TM08202203260613082359717: {'server_response': '{"res": "True", "anomaly": 0, "total_amount": 40.0, "rstatus": true, "logic": "WBL", "skus": [{"tray_id": "36", "qty": 1, "name": "Rite Bite Sports Bar 40gm per peice", "skuid": "4500669", "unit_price": "40", "mrp": "40", "sku_total": 40.0, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "door_id": ""}], "orderId": "TM08202203260613082359717"}', 'timestamp': '2026-06-13T02:55:15.714498Z', 'order_id': 'TM08202203260613082359717', 'server_status': 'invoiceOrder'} (ID: 1781319315730-0)
[2026-06-13 08:25:15,871.871 INFO    ] {'server_response': {'res': 'True', 'anomaly': 0, 'total_amount': 40.0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'unit_price': '40', 'mrp': '40', 'sku_total': 40.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': ''}], 'orderId': 'TM08202203260613082359717'}, 'order_id': 'TM08202203260613082359717', 'server_status': 'invoiceOrder'}
[2026-06-13 08:25:15,872.872 INFO    ] 200
[2026-06-13 08:25:15,873.873 INFO    ] {"data":{"server_response":{"res":"true","anomaly":0,"total_amount":40,"rstatus":true,"logic":"WBL","skus":[{"tray_id":"36","qty":1,"name":"Rite Bite Sports Bar 40gm per peice","skuid":"4500669","unit_price":"40","mrp":"40","sku_total":40,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","door_id":""}],"orderId":"TM08202203260613082359717"},"order_id":"TM08202203260613082359717","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:25:15,875.875 INFO    ] {'data': {'server_response': {'res': 'true', 'anomaly': 0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'door_id': '', 'unit_price': '40', 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40'}], 'orderId': 'TM08202203260613082359717', 'total_amount': 40}, 'order_id': 'TM08202203260613082359717', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 08:25:15,876.876 INFO    ] {'data': {'server_response': {'res': 'true', 'anomaly': 0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'tray_id': '36', 'qty': 1, 'name': 'Rite Bite Sports Bar 40gm per peice', 'skuid': '4500669', 'door_id': '', 'unit_price': '40', 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40'}], 'orderId': 'TM08202203260613082359717', 'total_amount': 40}, 'order_id': 'TM08202203260613082359717', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 08:25:15,878.878 INFO    ] 2026-06-13 08:25:15
[2026-06-13 08:25:17,480.480 INFO    ] 200
[2026-06-13 08:25:17,483.483 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717", "TM08202203260613082359717"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:25:17,486.486 INFO    ] 2026-06-13 08:25:17
[2026-06-13 08:25:17,591.591 INFO    ] 200
[2026-06-13 08:25:17,594.594 INFO    ] True
[2026-06-13 08:25:17,597.597 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613082359717
[2026-06-13 08:25:17,601.601 INFO    ] start order file deleted
[2026-06-13 08:25:17,605.605 INFO    ] Checking for system updates...
[2026-06-13 08:25:17,645.645 INFO    ] 200
[2026-06-13 08:25:17,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:17,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:25:17,714.714 INFO    ] No update needed
[2026-06-13 08:25:17,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 08:25:17,754.754 INFO    ] 200
[2026-06-13 08:25:17,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:17,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:25:17,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:25:17,852.852 INFO    ] No camera update needed
[2026-06-13 08:25:17,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:25:17,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:25:17,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:25:17,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:25:19,913.913 INFO    ] ================================================
[2026-06-13 08:25:19,927.927 INFO    ] Launching Daemon at Sat Jun 13 08:25:19 IST 2026
[2026-06-13 08:25:19,932.932 INFO    ] ================================================
[2026-06-13 08:25:20,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:25:20
[2026-06-13 08:25:20,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:25:21,167.167 INFO    ] Initializing speech engine...
[2026-06-13 08:25:21,176.176 INFO    ] 2026-06-13 08:25:21
[2026-06-13 08:25:21,447.447 INFO    ] 2026-06-13 08:25:21
[2026-06-13 08:25:21,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:25:21,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:25:21,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:25:21,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:25:21,802.802 INFO    ] time= 13/06/2026 08:25:21
[2026-06-13 08:25:21,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:25:21,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:25:21,881.881 INFO    ] No existing commands found in stream
[2026-06-13 08:25:26,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:25:26,896.896 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 08:25:29,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:25:29,694.694 INFO    ] Checking for system updates...
[2026-06-13 08:25:29,714.714 INFO    ] 200
[2026-06-13 08:25:29,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:29,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:25:29,747.747 INFO    ] No update needed
[2026-06-13 08:25:29,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 08:25:29,770.770 INFO    ] 200
[2026-06-13 08:25:29,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:29,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:25:29,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:25:29,840.840 INFO    ] No camera update needed
[2026-06-13 08:25:29,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:25:29,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:25:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:25:29,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:25:31,889.889 INFO    ] ================================================
[2026-06-13 08:25:31,904.904 INFO    ] Launching Daemon at Sat Jun 13 08:25:31 IST 2026
[2026-06-13 08:25:31,914.914 INFO    ] ================================================
[2026-06-13 08:25:32,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:25:32
[2026-06-13 08:25:32,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:25:32,870.870 INFO    ] Initializing speech engine...
[2026-06-13 08:25:32,875.875 INFO    ] 2026-06-13 08:25:32
[2026-06-13 08:25:33,077.077 INFO    ] 2026-06-13 08:25:33
[2026-06-13 08:25:33,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:25:33,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:25:33,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:25:33,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:25:33,472.472 INFO    ] time= 13/06/2026 08:25:33
[2026-06-13 08:25:33,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:25:33,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:25:33,661.661 INFO    ] No existing commands found in stream
[2026-06-13 08:25:38,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:25:38,690.690 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 08:25:42,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:25:42,083.083 INFO    ] Checking for system updates...
[2026-06-13 08:25:42,103.103 INFO    ] 200
[2026-06-13 08:25:42,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:42,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:25:42,139.139 INFO    ] No update needed
[2026-06-13 08:25:42,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 08:25:42,161.161 INFO    ] 200
[2026-06-13 08:25:42,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:42,186.186 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:25:42,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:25:42,326.326 INFO    ] No camera update needed
[2026-06-13 08:25:42,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:25:42,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:25:42,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:25:42,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:25:44,373.373 INFO    ] ================================================
[2026-06-13 08:25:44,389.389 INFO    ] Launching Daemon at Sat Jun 13 08:25:44 IST 2026
[2026-06-13 08:25:44,400.400 INFO    ] ================================================
[2026-06-13 08:25:44,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:25:44
[2026-06-13 08:25:45,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:25:45,185.185 INFO    ] Initializing speech engine...
[2026-06-13 08:25:45,189.189 INFO    ] 2026-06-13 08:25:45
[2026-06-13 08:25:45,407.407 INFO    ] 2026-06-13 08:25:45
[2026-06-13 08:25:45,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:25:45,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:25:45,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:25:45,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:25:45,816.816 INFO    ] time= 13/06/2026 08:25:45
[2026-06-13 08:25:45,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:25:45,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:25:45,929.929 INFO    ] No existing commands found in stream
[2026-06-13 08:25:50,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:25:50,940.940 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 08:25:52,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:25:52,901.901 INFO    ] Checking for system updates...
[2026-06-13 08:25:52,921.921 INFO    ] 200
[2026-06-13 08:25:52,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:52,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:25:52,954.954 INFO    ] No update needed
[2026-06-13 08:25:52,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 08:25:52,975.975 INFO    ] 200
[2026-06-13 08:25:52,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:25:52,999.999 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:25:53,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:25:53,038.038 INFO    ] No camera update needed
[2026-06-13 08:25:53,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:25:53,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:25:53,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:25:53,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:25:55,087.087 INFO    ] ================================================
[2026-06-13 08:25:55,102.102 INFO    ] Launching Daemon at Sat Jun 13 08:25:55 IST 2026
[2026-06-13 08:25:55,113.113 INFO    ] ================================================
[2026-06-13 08:25:55,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:25:55
[2026-06-13 08:25:55,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:25:55,933.933 INFO    ] Initializing speech engine...
[2026-06-13 08:25:55,940.940 INFO    ] 2026-06-13 08:25:55
[2026-06-13 08:25:56,162.162 INFO    ] 2026-06-13 08:25:56
[2026-06-13 08:25:56,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:25:56,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:25:56,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:25:56,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:25:56,435.435 INFO    ] time= 13/06/2026 08:25:56
[2026-06-13 08:25:56,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:25:56,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:25:56,572.572 INFO    ] No existing commands found in stream
[2026-06-13 08:26:01,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:26:01,609.609 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 08:26:03,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:26:03,533.533 INFO    ] Checking for system updates...
[2026-06-13 08:26:03,568.568 INFO    ] 200
[2026-06-13 08:26:03,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:03,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:26:03,627.627 INFO    ] No update needed
[2026-06-13 08:26:03,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 08:26:03,650.650 INFO    ] 200
[2026-06-13 08:26:03,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:03,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:26:03,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:26:03,713.713 INFO    ] No camera update needed
[2026-06-13 08:26:03,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:26:03,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:26:03,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:26:03,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:26:05,761.761 INFO    ] ================================================
[2026-06-13 08:26:05,777.777 INFO    ] Launching Daemon at Sat Jun 13 08:26:05 IST 2026
[2026-06-13 08:26:05,788.788 INFO    ] ================================================
[2026-06-13 08:26:06,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:26:06
[2026-06-13 08:26:06,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:26:06,598.598 INFO    ] Initializing speech engine...
[2026-06-13 08:26:06,603.603 INFO    ] 2026-06-13 08:26:06
[2026-06-13 08:26:06,832.832 INFO    ] 2026-06-13 08:26:06
[2026-06-13 08:26:06,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:26:07,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:26:07,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:26:07,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:26:07,205.205 INFO    ] time= 13/06/2026 08:26:07
[2026-06-13 08:26:07,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:26:07,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:26:07,332.332 INFO    ] No existing commands found in stream
[2026-06-13 08:26:12,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:26:12,355.355 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 08:26:15,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:26:15,822.822 INFO    ] Checking for system updates...
[2026-06-13 08:26:15,844.844 INFO    ] 200
[2026-06-13 08:26:15,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:15,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:15,880.880 INFO    ] No update needed
[2026-06-13 08:26:15,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 08:26:15,901.901 INFO    ] 200
[2026-06-13 08:26:15,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:15,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:26:15,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:15,968.968 INFO    ] No camera update needed
[2026-06-13 08:26:15,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:26:15,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:26:15,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:26:15,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:26:18,014.014 INFO    ] ================================================
[2026-06-13 08:26:18,030.030 INFO    ] Launching Daemon at Sat Jun 13 08:26:18 IST 2026
[2026-06-13 08:26:18,041.041 INFO    ] ================================================
[2026-06-13 08:26:18,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:26:18
[2026-06-13 08:26:19,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:26:19,355.355 INFO    ] Initializing speech engine...
[2026-06-13 08:26:19,364.364 INFO    ] 2026-06-13 08:26:19
[2026-06-13 08:26:19,614.614 INFO    ] 2026-06-13 08:26:19
[2026-06-13 08:26:19,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:26:19,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:26:19,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:26:19,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:26:19,976.976 INFO    ] time= 13/06/2026 08:26:19
[2026-06-13 08:26:19,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:26:20,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:26:20,071.071 INFO    ] No existing commands found in stream
[2026-06-13 08:26:23,079.079 INFO    ] Received new command: ID=1781319382713-0
[2026-06-13 08:26:23,082.082 INFO    ] process_and_cleanup_command: msg_id=1781319382713-0
[2026-06-13 08:26:23,084.084 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:22.532Z, expiry=30s
[2026-06-13 08:26:23,144.144 INFO    ] Command removed from stream: 1781319382713-0. returning for processing...
[2026-06-13 08:26:23,147.147 INFO    ] ***** get_valid_command
[2026-06-13 08:26:23,149.149 INFO    ] {'timeout': '10', 'timestamp': '2026-06-13T02:56:22.532Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1781319382532-golfm2bik","orderId":"TM08202203260613082544700","is_vending":false}', 'source': 'webapp'}
[2026-06-13 08:26:23,152.152 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781319382532-golfm2bik', 'orderId': 'TM08202203260613082544700', 'is_vending': False}
[2026-06-13 08:26:23,154.154 INFO    ] Handling start order...
[2026-06-13 08:26:23,156.156 INFO    ] handle_start_order_command
[2026-06-13 08:26:23,162.162 INFO    ] _send_start_order_success: request_id=start-order-1781319382532-golfm2bik, order_id=TM08202203260613082544700
[2026-06-13 08:26:23,165.165 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:26:23,221.221 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781319383189-0
[2026-06-13 08:26:23,223.223 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:26:23,226.226 INFO    ] Checking for system updates...
[2026-06-13 08:26:23,267.267 INFO    ] 200
[2026-06-13 08:26:23,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:23,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:23,324.324 INFO    ] No update needed
[2026-06-13 08:26:23,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 08:26:23,344.344 INFO    ] 200
[2026-06-13 08:26:23,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:23,369.369 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:26:23,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:26:23,408.408 INFO    ] No camera update needed
[2026-06-13 08:26:23,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:26:23,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:26:23,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:26:23,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:26:25,456.456 INFO    ] ================================================
[2026-06-13 08:26:25,471.471 INFO    ] Launching Daemon at Sat Jun 13 08:26:25 IST 2026
[2026-06-13 08:26:25,482.482 INFO    ] ================================================
[2026-06-13 08:26:25,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:26:25
[2026-06-13 08:26:26,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:26:26,295.295 INFO    ] Initializing speech engine...
[2026-06-13 08:26:26,300.300 INFO    ] 2026-06-13 08:26:26
[2026-06-13 08:26:26,502.502 INFO    ] 2026-06-13 08:26:26
[2026-06-13 08:26:26,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:26:26,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:26:26,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:26:26,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:26:26,920.920 INFO    ] time= 13/06/2026 08:26:26
[2026-06-13 08:26:26,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:26:26,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:26:27,018.018 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 08:26:27,020.020 INFO    ] Checking historical command: ID=1781319383189-0
[2026-06-13 08:26:27,045.045 INFO    ] process_and_cleanup_command: msg_id=1781319383189-0
[2026-06-13 08:26:27,047.047 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:23.163513Z, expiry=30s
[2026-06-13 08:26:27,157.157 INFO    ] Command removed from stream: 1781319383189-0. returning for processing...
[2026-06-13 08:26:27,160.160 INFO    ] ***** get_valid_command
[2026-06-13 08:26:27,163.163 INFO    ] {'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613082544700', 'imei': 'TM08202203', 'timestamp': '2026-06-13T02:56:23.163513Z', 'metadata_request_id': 'start-order-1781319382532-golfm2bik'}
[2026-06-13 08:26:27,167.167 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 08:26:29,519.519 INFO    ] Received new command: ID=1781319389208-0
[2026-06-13 08:26:29,522.522 INFO    ] process_and_cleanup_command: msg_id=1781319389208-0
[2026-06-13 08:26:29,524.524 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:28.962Z, expiry=30s
[2026-06-13 08:26:29,564.564 INFO    ] Command removed from stream: 1781319389208-0. returning for processing...
[2026-06-13 08:26:29,567.567 INFO    ] ***** get_valid_command
[2026-06-13 08:26:29,569.569 INFO    ] {'data': '{"request_id":"process-order-1781319388961-degmkxjcm","orderId":"TM08202203260613082544700","is_vending":false,"accessCode":"73790502"}', 'source': 'webapp', 'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-13T02:56:28.962Z'}
[2026-06-13 08:26:29,572.572 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1781319388961-degmkxjcm', 'accessCode': '73790502', 'orderId': 'TM08202203260613082544700'}
[2026-06-13 08:26:29,574.574 INFO    ] Handling process order...
[2026-06-13 08:26:29,577.577 INFO    ] Processing process-order command...
[2026-06-13 08:26:29,579.579 INFO    ] 🔍 Lock file Order ID: TM08202203260613082544700, TS: 2026-06-13 08:26:23
[2026-06-13 08:26:29,592.592 INFO    ] ✅ Order lock valid for TM08202203260613082544700
[2026-06-13 08:26:29,594.594 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:26:29,597.597 INFO    ] processing access code 73790502 for order TM08202203260613082544700
[2026-06-13 08:26:29,599.599 INFO    ] 🔍 Lock file Order ID: TM08202203260613082544700, TS: 2026-06-13 08:26:23
[2026-06-13 08:26:29,602.602 INFO    ] ✅ Order lock valid for TM08202203260613082544700
[2026-06-13 08:26:29,605.605 INFO    ] 2026-06-13 08:26:29
[2026-06-13 08:26:29,645.645 INFO    ] 200
[2026-06-13 08:26:29,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:29,651.651 INFO    ] 73790502
[2026-06-13 08:26:29,653.653 INFO    ] 2026-06-13 08:26:29
[2026-06-13 08:26:29,656.656 INFO    ] session id :285372973
[2026-06-13 08:26:29,658.658 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=73790502&imei=TM08202203&session_id=285372973
[2026-06-13 08:26:30,695.695 INFO    ] 200
[2026-06-13 08:26:30,697.697 INFO    ] {"data": {"mobile": "7028584191", "order_id": "TM08202203260613082544700", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Rite Bite Sports Bar 40gm", "tray_id": "36", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "73790502", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:26:30,700.700 INFO    ] 40
[2026-06-13 08:26:30,702.702 INFO    ] TM08202203260613082544700
[2026-06-13 08:26:30,705.705 INFO    ] 7028584191
[2026-06-13 08:26:30,707.707 INFO    ] 2026-06-13 08:26:30
[2026-06-13 08:26:30,710.710 INFO    ] Door Opening for user mobile ending with  four one nine one 
[2026-06-13 08:26:30,713.713 INFO    ] Door Opening for user mobile ending with  four one nine one 
[2026-06-13 08:26:30,716.716 INFO    ] f0bfa962154e3a7907c45585bc136f7b
[2026-06-13 08:26:30,718.718 INFO    ] 2026-06-13 08:26:30
[2026-06-13 08:26:30,720.720 INFO    ] playing audio file
[2026-06-13 08:26:30,737.737 INFO    ] 2026-06-13 08:26:30
[2026-06-13 08:26:30,740.740 INFO    ] 2026-06-13 08:26:30
[2026-06-13 08:26:30,743.743 INFO    ] publish_status: order_id=TM08202203260613082544700
[2026-06-13 08:26:30,746.746 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082544700
[2026-06-13 08:26:30,829.829 INFO    ] [publish_status] Message added to stream with ID: 1781319390795-0
[2026-06-13 08:26:30,832.832 INFO    ] Published to order:TM08202203260613082544700: {'server_response': '{"data": {"invoice_bill": "40", "order_id": "TM08202203260613082544700", "access_code": "73790502", "bill_amount": "40", "mobile": "7028584191", "proposed_sku_json": [{"tray_id": "36", "offer_desc": "", "sku_total": 40, "qty": 1, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "door_id": "2", "skuid": "4500669", "unit_price": 40, "name": "Rite Bite Sports Bar 40gm", "mrp": "40", "offer_id": ""}]}, "status": true, "rstatus": true, "msg": "Order Data"}', 'server_status': 'order-started', 'order_id': 'TM08202203260613082544700', 'timestamp': '2026-06-13T02:56:30.741831Z'} (ID: 1781319390795-0)
[2026-06-13 08:26:31,249.249 INFO    ] {'server_response': {'data': {'invoice_bill': '40', 'order_id': 'TM08202203260613082544700', 'access_code': '73790502', 'bill_amount': '40', 'mobile': '7028584191', 'proposed_sku_json': [{'tray_id': '36', 'offer_desc': '', 'sku_total': 40, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '2', 'skuid': '4500669', 'unit_price': 40, 'name': 'Rite Bite Sports Bar 40gm', 'mrp': '40', 'offer_id': ''}]}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM08202203260613082544700'}
[2026-06-13 08:26:31,251.251 INFO    ] 200
[2026-06-13 08:26:31,254.254 INFO    ] {"data":{"server_response":{"data":{"invoice_bill":"40","order_id":"TM08202203260613082544700","access_code":"73790502","bill_amount":"40","mobile":"7028584191","proposed_sku_json":[{"tray_id":"36","offer_desc":"","sku_total":40,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","door_id":"2","skuid":"4500669","unit_price":40,"name":"Rite Bite Sports Bar 40gm","mrp":"40","offer_id":""}]},"status":true,"rstatus":true,"msg":"Order Data"},"server_status":"order-started","order_id":"TM08202203260613082544700"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:26:31,256.256 INFO    ] {'data': {'server_response': {'data': {'invoice_bill': '40', 'access_code': '73790502', 'bill_amount': '40', 'proposed_sku_json': [{'qty': 1, 'offer_desc': '', 'sku_total': 40, 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'tray_id': '36', 'skuid': '4500669', 'unit_price': 40, 'name': 'Rite Bite Sports Bar 40gm', 'mrp': '40', 'offer_id': ''}], 'order_id': 'TM08202203260613082544700', 'mobile': '7028584191'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM08202203260613082544700'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 08:26:31,259.259 INFO    ] 2026-06-13 08:26:31
[2026-06-13 08:26:31,307.307 INFO    ] 200
[2026-06-13 08:26:31,310.310 INFO    ] True
[2026-06-13 08:26:31,487.487 INFO    ] 200
[2026-06-13 08:26:31,490.490 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:26:31,493.493 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'voiceNote': 'Please Wait'}
[2026-06-13 08:26:31,496.496 INFO    ] *** process_order ***
[2026-06-13 08:26:32,629.629 INFO    ] 200
[2026-06-13 08:26:32,630.630 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:26:32,632.632 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0}
[2026-06-13 08:26:32,633.633 INFO    ] *** process_order ***
[2026-06-13 08:26:32,635.635 INFO    ] publish_status: order_id=TM08202203260613082544700
[2026-06-13 08:26:32,637.637 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082544700
[2026-06-13 08:26:32,713.713 INFO    ] [publish_status] Message added to stream with ID: 1781319392677-0
[2026-06-13 08:26:32,714.714 INFO    ] Published to order:TM08202203260613082544700: {'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "voiceNote": "Door is open...", "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613082544700'} (ID: 1781319392677-0)
[2026-06-13 08:26:33,756.756 INFO    ] 2026-06-13 08:26:33
[2026-06-13 08:26:33,759.759 INFO    ] publish_status: order_id=TM08202203260613082544700
[2026-06-13 08:26:33,762.762 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082544700
[2026-06-13 08:26:33,833.833 INFO    ] [publish_status] Message added to stream with ID: 1781319393800-0
[2026-06-13 08:26:33,836.836 INFO    ] Published to order:TM08202203260613082544700: {'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "voiceNote": "Please Wait", "delay": 0}', 'server_status': 'processOrder', 'order_id': 'TM08202203260613082544700', 'timestamp': '2026-06-13T02:56:33.757913Z'} (ID: 1781319393800-0)
[2026-06-13 08:26:33,974.974 INFO    ] {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613082544700'}
[2026-06-13 08:26:33,977.977 INFO    ] 200
[2026-06-13 08:26:33,980.980 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"status":"true","SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"voiceNote":"Please Wait","delay":0},"server_status":"processOrder","order_id":"TM08202203260613082544700"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:26:33,983.983 INFO    ] {'data': {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613082544700'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 08:26:33,986.986 INFO    ] 2026-06-13 08:26:33
[2026-06-13 08:26:33,989.989 INFO    ] None
[2026-06-13 08:26:33,992.992 INFO    ] Opening Door now
[2026-06-13 08:26:33,994.994 INFO    ] Opening Door now
[2026-06-13 08:26:33,997.997 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:26:34,000.000 INFO    ] 2026-06-13 08:26:33
[2026-06-13 08:26:34,002.002 INFO    ] playing audio file
[2026-06-13 08:26:34,020.020 INFO    ] 2026-06-13 08:26:34
[2026-06-13 08:26:34,022.022 INFO    ] 2026-06-13 08:26:34
[2026-06-13 08:26:37,089.089 INFO    ] 200
[2026-06-13 08:26:37,091.091 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:26:37,095.095 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'rstatus': False, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 08:26:40,155.155 INFO    ] 200
[2026-06-13 08:26:40,159.159 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:26:40,162.162 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-13 08:26:43,200.200 INFO    ] 200
[2026-06-13 08:26:43,202.202 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:26:43,204.204 INFO    ] Please close door 2
[2026-06-13 08:26:43,206.206 INFO    ] Please close door 2
[2026-06-13 08:26:43,208.208 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:26:43,210.210 INFO    ] 2026-06-13 08:26:43
[2026-06-13 08:26:43,211.211 INFO    ] playing audio file
[2026-06-13 08:26:43,222.222 INFO    ] 2026-06-13 08:26:43
[2026-06-13 08:26:43,224.224 INFO    ] publish_status: order_id=TM08202203260613082544700
[2026-06-13 08:26:43,226.226 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082544700
[2026-06-13 08:26:43,310.310 INFO    ] [publish_status] Message added to stream with ID: 1781319403278-0
[2026-06-13 08:26:43,312.312 INFO    ] Published to order:TM08202203260613082544700: {'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "rstatus": false, "voiceNote": "Please close door 2"}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613082544700', 'timestamp': '2026-06-13T02:56:43.223714Z'} (ID: 1781319403278-0)
[2026-06-13 08:26:43,666.666 INFO    ] {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'rstatus': False, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613082544700'}
[2026-06-13 08:26:43,667.667 INFO    ] 200
[2026-06-13 08:26:43,669.669 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"status":"false","SectionMain":{"Header":"Door Open"},"error":{"data":[],"tmessage":"In Progress","code":20001,"umessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Rite Bite Sports Bar 40gm"}]},"rstatus":false,"voiceNote":"Please close door 2"},"server_status":"OrderStatus","order_id":"TM08202203260613082544700"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:26:43,671.671 INFO    ] {'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'rstatus': False, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613082544700'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 08:26:43,672.672 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Rite Bite Sports Bar 40gm'}]}, 'rstatus': False, 'voiceNote': 'Please close door 2'}
[2026-06-13 08:26:46,711.711 INFO    ] 200
[2026-06-13 08:26:46,713.713 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:26:46,714.714 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-06-13 08:26:46,716.716 INFO    ] 2026-06-13 08:26:46
[2026-06-13 08:26:46,719.719 INFO    ] Order Completed 
[2026-06-13 08:26:46,721.721 INFO    ] Order Completed 
[2026-06-13 08:26:46,723.723 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:26:46,726.726 INFO    ] 2026-06-13 08:26:46
[2026-06-13 08:26:46,727.727 INFO    ] playing audio file
[2026-06-13 08:26:46,740.740 INFO    ] 2026-06-13 08:26:46
[2026-06-13 08:26:46,742.742 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-06-13 08:26:46,744.744 INFO    ] 2026-06-13 08:26:46
[2026-06-13 08:26:47,562.562 INFO    ] 200
[2026-06-13 08:26:47,565.565 INFO    ] {"res": "True", "orderId": "TM08202203260613082544700", "skus": [{"image_url": "https://images.tinymart.in/product/4500669-3919.webp", "skuid": "4500669", "door_id": "", "tray_id": "36", "name": "Rite Bite Sports Bar 40gm per peice", "unit_price": "40", "mrp": "40", "qty": 2, "sku_total": 80.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 80.0}
[2026-06-13 08:26:47,568.568 INFO    ] {'rstatus': True, 'total_amount': 80.0, 'orderId': 'TM08202203260613082544700', 'res': 'True', 'skus': [{'qty': 2, 'tray_id': '36', 'sku_total': 80.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '', 'skuid': '4500669', 'unit_price': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40'}], 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 08:26:47,571.571 INFO    ] {'rstatus': True, 'total_amount': 80.0, 'orderId': 'TM08202203260613082544700', 'res': 'True', 'skus': [{'qty': 2, 'tray_id': '36', 'sku_total': 80.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '', 'skuid': '4500669', 'unit_price': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40'}], 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 08:26:47,574.574 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,577.577 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,580.580 INFO    ] 40
[2026-06-13 08:26:47,583.583 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,587.587 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,590.590 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 80
[2026-06-13 08:26:47,593.593 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 80
[2026-06-13 08:26:47,595.595 INFO    ] 0aa6231755ed3a3e83de3e4b043cc777
[2026-06-13 08:26:47,599.599 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,602.602 INFO    ] playing audio file
[2026-06-13 08:26:47,620.620 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,623.623 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:47,628.628 INFO    ] publish_status: order_id=TM08202203260613082544700
[2026-06-13 08:26:47,632.632 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082544700
[2026-06-13 08:26:47,687.687 INFO    ] [publish_status] Message added to stream with ID: 1781319407653-0
[2026-06-13 08:26:47,690.690 INFO    ] Published to order:TM08202203260613082544700: {'server_response': '{"rstatus": true, "total_amount": 80.0, "orderId": "TM08202203260613082544700", "res": "True", "skus": [{"qty": 2, "tray_id": "36", "sku_total": 80.0, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "door_id": "", "skuid": "4500669", "unit_price": "40", "name": "Rite Bite Sports Bar 40gm per peice", "mrp": "40"}], "anomaly": 0, "logic": "WBL"}', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082544700', 'timestamp': '2026-06-13T02:56:47.625655Z'} (ID: 1781319407653-0)
[2026-06-13 08:26:47,817.817 INFO    ] {'server_response': {'rstatus': True, 'total_amount': 80.0, 'orderId': 'TM08202203260613082544700', 'res': 'True', 'skus': [{'qty': 2, 'tray_id': '36', 'sku_total': 80.0, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'door_id': '', 'skuid': '4500669', 'unit_price': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40'}], 'anomaly': 0, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082544700'}
[2026-06-13 08:26:47,821.821 INFO    ] 200
[2026-06-13 08:26:47,824.824 INFO    ] {"data":{"server_response":{"rstatus":true,"total_amount":80,"orderId":"TM08202203260613082544700","res":"true","skus":[{"qty":2,"tray_id":"36","sku_total":80,"image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","door_id":"","skuid":"4500669","unit_price":"40","name":"Rite Bite Sports Bar 40gm per peice","mrp":"40"}],"anomaly":0,"logic":"WBL"},"server_status":"invoiceOrder","order_id":"TM08202203260613082544700"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:26:47,828.828 INFO    ] {'data': {'server_response': {'skus': [{'tray_id': '36', 'sku_total': 80, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 2, 'skuid': '4500669', 'unit_price': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40'}], 'total_amount': 80, 'orderId': 'TM08202203260613082544700', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082544700'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 08:26:47,832.832 INFO    ] {'data': {'server_response': {'skus': [{'tray_id': '36', 'sku_total': 80, 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'qty': 2, 'skuid': '4500669', 'unit_price': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'mrp': '40'}], 'total_amount': 80, 'orderId': 'TM08202203260613082544700', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082544700'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 08:26:47,835.835 INFO    ] 2026-06-13 08:26:47
[2026-06-13 08:26:49,787.787 INFO    ] 200
[2026-06-13 08:26:49,790.790 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700", "TM08202203260613082544700"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:26:49,793.793 INFO    ] 2026-06-13 08:26:49
[2026-06-13 08:26:49,912.912 INFO    ] 200
[2026-06-13 08:26:49,913.913 INFO    ] True
[2026-06-13 08:26:49,914.914 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613082544700
[2026-06-13 08:26:49,916.916 INFO    ] start order file deleted
[2026-06-13 08:26:49,918.918 INFO    ] Checking for system updates...
[2026-06-13 08:26:49,941.941 INFO    ] 200
[2026-06-13 08:26:49,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:49,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:49,982.982 INFO    ] No update needed
[2026-06-13 08:26:49,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 08:26:50,006.006 INFO    ] 200
[2026-06-13 08:26:50,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:50,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:26:50,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:50,091.091 INFO    ] No camera update needed
[2026-06-13 08:26:50,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:26:50,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:26:50,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:26:50,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:26:52,143.143 INFO    ] ================================================
[2026-06-13 08:26:52,158.158 INFO    ] Launching Daemon at Sat Jun 13 08:26:52 IST 2026
[2026-06-13 08:26:52,170.170 INFO    ] ================================================
[2026-06-13 08:26:52,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:26:52
[2026-06-13 08:26:52,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:26:52,972.972 INFO    ] Initializing speech engine...
[2026-06-13 08:26:52,977.977 INFO    ] 2026-06-13 08:26:52
[2026-06-13 08:26:53,207.207 INFO    ] 2026-06-13 08:26:53
[2026-06-13 08:26:53,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:26:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:26:53,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:26:53,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:26:53,626.626 INFO    ] time= 13/06/2026 08:26:53
[2026-06-13 08:26:53,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:26:53,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:26:53,764.764 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 08:26:53,767.767 INFO    ] Checking historical command: ID=1781319411228-0
[2026-06-13 08:26:53,769.769 INFO    ] process_and_cleanup_command: msg_id=1781319411228-0
[2026-06-13 08:26:53,796.796 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:51.029Z, expiry=30s
[2026-06-13 08:26:53,913.913 INFO    ] Command removed from stream: 1781319411228-0. returning for processing...
[2026-06-13 08:26:53,916.916 INFO    ] ***** get_valid_command
[2026-06-13 08:26:53,919.919 INFO    ] {'command': 'start-order', 'timestamp': '2026-06-13T02:56:51.029Z', 'data': '{"request_id":"start-order-1781319411029-6xasisqp6","orderId":"TM08202203260613082602433","is_vending":false}', 'source': 'webapp', 'timeout': '10'}
[2026-06-13 08:26:53,924.924 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781319411029-6xasisqp6', 'orderId': 'TM08202203260613082602433'}
[2026-06-13 08:26:53,928.928 INFO    ] Handling start order...
[2026-06-13 08:26:53,932.932 INFO    ] handle_start_order_command
[2026-06-13 08:26:53,939.939 INFO    ] _send_start_order_success: request_id=start-order-1781319411029-6xasisqp6, order_id=TM08202203260613082602433
[2026-06-13 08:26:53,942.942 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:26:53,992.992 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781319413960-0
[2026-06-13 08:26:53,995.995 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:26:53,998.998 INFO    ] Checking for system updates...
[2026-06-13 08:26:54,026.026 INFO    ] 200
[2026-06-13 08:26:54,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:54,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:26:54,070.070 INFO    ] No update needed
[2026-06-13 08:26:54,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 08:26:54,144.144 INFO    ] 200
[2026-06-13 08:26:54,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:54,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:26:54,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:26:54,279.279 INFO    ] No camera update needed
[2026-06-13 08:26:54,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:26:54,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:26:54,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:26:54,299.299 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 08:26:54,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:26:56,341.341 INFO    ] ================================================
[2026-06-13 08:26:56,356.356 INFO    ] Launching Daemon at Sat Jun 13 08:26:56 IST 2026
[2026-06-13 08:26:56,367.367 INFO    ] ================================================
[2026-06-13 08:26:56,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:26:56
[2026-06-13 08:26:57,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:26:57,604.604 INFO    ] Initializing speech engine...
[2026-06-13 08:26:57,610.610 INFO    ] 2026-06-13 08:26:57
[2026-06-13 08:26:57,858.858 INFO    ] 2026-06-13 08:26:57
[2026-06-13 08:26:57,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:26:58,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:26:58,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:26:58,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:26:58,193.193 INFO    ] time= 13/06/2026 08:26:58
[2026-06-13 08:26:58,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:26:58,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:26:58,306.306 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 08:26:58,322.322 INFO    ] Checking historical command: ID=1781319413960-0
[2026-06-13 08:26:58,386.386 INFO    ] process_and_cleanup_command: msg_id=1781319413960-0
[2026-06-13 08:26:58,438.438 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:53.939902Z, expiry=30s
[2026-06-13 08:26:58,592.592 INFO    ] Command removed from stream: 1781319413960-0. returning for processing...
[2026-06-13 08:26:58,628.628 INFO    ] ***** get_valid_command
[2026-06-13 08:26:58,672.672 INFO    ] {'metadata_order_id': 'TM08202203260613082602433', 'timestamp': '2026-06-13T02:56:53.939902Z', 'message_type': 'command_response', 'status': 'success', 'message': 'start-order success', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781319411029-6xasisqp6'}
[2026-06-13 08:26:58,725.725 INFO    ] Checking historical command: ID=1781319415904-0
[2026-06-13 08:26:58,748.748 INFO    ] process_and_cleanup_command: msg_id=1781319415904-0
[2026-06-13 08:26:58,802.802 INFO    ] is_command_expired: timestamp=2026-06-13T02:56:55.677Z, expiry=30s
[2026-06-13 08:26:58,921.921 INFO    ] Command removed from stream: 1781319415904-0. returning for processing...
[2026-06-13 08:26:58,924.924 INFO    ] ***** get_valid_command
[2026-06-13 08:26:58,935.935 INFO    ] {'command': 'process-order', 'timestamp': '2026-06-13T02:56:55.677Z', 'data': '{"request_id":"process-order-1781319415677-4xwhmfckg","orderId":"TM08202203260613082602433","is_vending":false,"accessCode":"81044323"}', 'source': 'webapp', 'timeout': '60'}
[2026-06-13 08:26:58,939.939 INFO    ] ***** Parsed command data: {'accessCode': '81044323', 'is_vending': False, 'request_id': 'process-order-1781319415677-4xwhmfckg', 'orderId': 'TM08202203260613082602433'}
[2026-06-13 08:26:58,942.942 INFO    ] Handling process order...
[2026-06-13 08:26:58,944.944 INFO    ] Processing process-order command...
[2026-06-13 08:26:58,989.989 INFO    ] 🔍 Lock file Order ID: TM08202203260613082602433, TS: 2026-06-13 08:26:53
[2026-06-13 08:26:59,075.075 INFO    ] ✅ Order lock valid for TM08202203260613082602433
[2026-06-13 08:26:59,087.087 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:26:59,094.094 INFO    ] processing access code 81044323 for order TM08202203260613082602433
[2026-06-13 08:26:59,143.143 INFO    ] 🔍 Lock file Order ID: TM08202203260613082602433, TS: 2026-06-13 08:26:53
[2026-06-13 08:26:59,148.148 INFO    ] ✅ Order lock valid for TM08202203260613082602433
[2026-06-13 08:26:59,151.151 INFO    ] 2026-06-13 08:26:59
[2026-06-13 08:26:59,218.218 INFO    ] 200
[2026-06-13 08:26:59,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:26:59,228.228 INFO    ] 81044323
[2026-06-13 08:26:59,231.231 INFO    ] 2026-06-13 08:26:59
[2026-06-13 08:26:59,235.235 INFO    ] session id :138940361
[2026-06-13 08:26:59,240.240 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=81044323&imei=TM08202203&session_id=138940361
[2026-06-13 08:27:00,126.126 INFO    ] 200
[2026-06-13 08:27:00,130.130 INFO    ] {"data": {"mobile": "8050013111", "order_id": "TM08202203260613082602433", "bill_amount": "35", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500517-9589.jpg", "skuid": "4500517", "door_id": "2", "mrp": "35", "offer_desc": "", "name": "Epigamia Artisanal Misti Doi 80gm", "tray_id": "45", "unit_price": 35, "qty": 1, "sku_total": 35, "offer_id": ""}], "access_code": "81044323", "invoice_bill": "35"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:27:00,136.136 INFO    ] 35
[2026-06-13 08:27:00,141.141 INFO    ] TM08202203260613082602433
[2026-06-13 08:27:00,146.146 INFO    ] 8050013111
[2026-06-13 08:27:00,151.151 INFO    ] 2026-06-13 08:27:00
[2026-06-13 08:27:00,157.157 INFO    ] Door Opening for user mobile ending with  three one one one 
[2026-06-13 08:27:00,166.166 INFO    ] Door Opening for user mobile ending with  three one one one 
[2026-06-13 08:27:00,177.177 INFO    ] a961bd4d81f0e33d8677a32e31604493
[2026-06-13 08:27:00,186.186 INFO    ] 2026-06-13 08:27:00
[2026-06-13 08:27:00,190.190 INFO    ] playing audio file
[2026-06-13 08:27:00,229.229 INFO    ] 2026-06-13 08:27:00
[2026-06-13 08:27:00,238.238 INFO    ] 2026-06-13 08:27:00
[2026-06-13 08:27:00,241.241 INFO    ] publish_status: order_id=TM08202203260613082602433
[2026-06-13 08:27:00,244.244 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082602433
[2026-06-13 08:27:00,363.363 INFO    ] [publish_status] Message added to stream with ID: 1781319420308-0
[2026-06-13 08:27:00,369.369 INFO    ] Published to order:TM08202203260613082602433: {'server_status': 'order-started', 'timestamp': '2026-06-13T02:57:00.239099Z', 'order_id': 'TM08202203260613082602433', 'server_response': '{"data": {"bill_amount": "35", "order_id": "TM08202203260613082602433", "access_code": "81044323", "invoice_bill": "35", "mobile": "8050013111", "proposed_sku_json": [{"tray_id": "45", "image_url": "https://images.tinymart.in/product/4500517-9589.jpg", "mrp": "35", "door_id": "2", "qty": 1, "sku_total": 35, "offer_desc": "", "offer_id": "", "unit_price": 35, "name": "Epigamia Artisanal Misti Doi 80gm", "skuid": "4500517"}]}, "status": true, "rstatus": true, "msg": "Order Data"}'} (ID: 1781319420308-0)
[2026-06-13 08:27:00,692.692 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202203260613082602433', 'server_response': {'data': {'bill_amount': '35', 'order_id': 'TM08202203260613082602433', 'access_code': '81044323', 'invoice_bill': '35', 'mobile': '8050013111', 'proposed_sku_json': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '2', 'qty': 1, 'sku_total': 35, 'offer_desc': '', 'offer_id': '', 'unit_price': 35, 'name': 'Epigamia Artisanal Misti Doi 80gm', 'skuid': '4500517'}]}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}}
[2026-06-13 08:27:00,694.694 INFO    ] 200
[2026-06-13 08:27:00,695.695 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202203260613082602433","server_response":{"data":{"bill_amount":"35","order_id":"TM08202203260613082602433","access_code":"81044323","invoice_bill":"35","mobile":"8050013111","proposed_sku_json":[{"tray_id":"45","image_url":"https:\/\/images.tinymart.in\/product\/4500517-9589.jpg","mrp":"35","door_id":"2","qty":1,"sku_total":35,"offer_desc":"","offer_id":"","unit_price":35,"name":"Epigamia Artisanal Misti Doi 80gm","skuid":"4500517"}]},"status":true,"rstatus":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:27:00,697.697 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'order_id': 'TM08202203260613082602433', 'server_response': {'data': {'bill_amount': '35', 'proposed_sku_json': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '2', 'qty': 1, 'sku_total': 35, 'offer_desc': '', 'offer_id': '', 'unit_price': 35, 'name': 'Epigamia Artisanal Misti Doi 80gm', 'skuid': '4500517'}], 'order_id': 'TM08202203260613082602433', 'access_code': '81044323', 'mobile': '8050013111', 'invoice_bill': '35'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}}}
[2026-06-13 08:27:00,698.698 INFO    ] 2026-06-13 08:27:00
[2026-06-13 08:27:00,724.724 INFO    ] 200
[2026-06-13 08:27:00,725.725 INFO    ] True
[2026-06-13 08:27:00,835.835 INFO    ] 200
[2026-06-13 08:27:00,836.836 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:27:00,838.838 INFO    ] {'voiceNote': 'Please Wait', 'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-13 08:27:00,840.840 INFO    ] *** process_order ***
[2026-06-13 08:27:01,975.975 INFO    ] 200
[2026-06-13 08:27:01,976.976 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:27:01,977.977 INFO    ] {'delay': 0, 'voiceNote': 'Please Wait', 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-13 08:27:01,979.979 INFO    ] *** process_order ***
[2026-06-13 08:27:01,981.981 INFO    ] publish_status: order_id=TM08202203260613082602433
[2026-06-13 08:27:01,983.983 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082602433
[2026-06-13 08:27:02,026.026 INFO    ] [publish_status] Message added to stream with ID: 1781319421995-0
[2026-06-13 08:27:02,027.027 INFO    ] Published to order:TM08202203260613082602433: {'server_status': 'doorOpened', 'order_id': 'TM08202203260613082602433', 'server_response': '{"delay": 0, "voiceNote": "Door is open...", "status": "True", "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": "", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1781319421995-0)
[2026-06-13 08:27:03,065.065 INFO    ] 2026-06-13 08:27:03
[2026-06-13 08:27:03,068.068 INFO    ] publish_status: order_id=TM08202203260613082602433
[2026-06-13 08:27:03,071.071 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082602433
[2026-06-13 08:27:03,110.110 INFO    ] [publish_status] Message added to stream with ID: 1781319423078-0
[2026-06-13 08:27:03,113.113 INFO    ] Published to order:TM08202203260613082602433: {'server_status': 'processOrder', 'timestamp': '2026-06-13T02:57:03.066639Z', 'order_id': 'TM08202203260613082602433', 'server_response': '{"delay": 0, "voiceNote": "Please Wait", "status": "True", "rstatus": true, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1781319423078-0)
[2026-06-13 08:27:03,222.222 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202203260613082602433', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}
[2026-06-13 08:27:03,225.225 INFO    ] 200
[2026-06-13 08:27:03,229.229 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202203260613082602433","server_response":{"delay":0,"voiceNote":"Please Wait","status":"true","rstatus":true,"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:27:03,233.233 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM08202203260613082602433', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'status': 'true', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}}
[2026-06-13 08:27:03,238.238 INFO    ] 2026-06-13 08:27:03
[2026-06-13 08:27:03,241.241 INFO    ] None
[2026-06-13 08:27:03,243.243 INFO    ] Opening Door now
[2026-06-13 08:27:03,247.247 INFO    ] Opening Door now
[2026-06-13 08:27:03,251.251 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:27:03,254.254 INFO    ] 2026-06-13 08:27:03
[2026-06-13 08:27:03,256.256 INFO    ] playing audio file
[2026-06-13 08:27:03,275.275 INFO    ] 2026-06-13 08:27:03
[2026-06-13 08:27:03,280.280 INFO    ] 2026-06-13 08:27:03
[2026-06-13 08:27:06,317.317 INFO    ] 200
[2026-06-13 08:27:06,319.319 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Artisanal Misti Doi 80gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:27:06,321.321 INFO    ] {'voiceNote': 'Door 2 is open now', 'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Artisanal Misti Doi 80gm'}]}}
[2026-06-13 08:27:09,384.384 INFO    ] 200
[2026-06-13 08:27:09,387.387 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Artisanal Misti Doi 80gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:27:09,391.391 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Artisanal Misti Doi 80gm'}]}}
[2026-06-13 08:27:12,429.429 INFO    ] 200
[2026-06-13 08:27:12,430.430 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Artisanal Misti Doi 80gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:27:12,433.433 INFO    ] Please close door 2
[2026-06-13 08:27:12,434.434 INFO    ] Please close door 2
[2026-06-13 08:27:12,436.436 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:27:12,437.437 INFO    ] 2026-06-13 08:27:12
[2026-06-13 08:27:12,439.439 INFO    ] playing audio file
[2026-06-13 08:27:12,449.449 INFO    ] 2026-06-13 08:27:12
[2026-06-13 08:27:12,452.452 INFO    ] publish_status: order_id=TM08202203260613082602433
[2026-06-13 08:27:12,454.454 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082602433
[2026-06-13 08:27:12,545.545 INFO    ] [publish_status] Message added to stream with ID: 1781319432509-0
[2026-06-13 08:27:12,547.547 INFO    ] Published to order:TM08202203260613082602433: {'server_status': 'OrderStatus', 'timestamp': '2026-06-13T02:57:12.451319Z', 'order_id': 'TM08202203260613082602433', 'server_response': '{"voiceNote": "Please close door 2", "status": "False", "rstatus": false, "error": {"code": 20001, "umessage": "In Progress", "data": {}, "tmessage": "In Progress"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Epigamia Artisanal Misti Doi 80gm"}]}}'} (ID: 1781319432509-0)
[2026-06-13 08:27:12,926.926 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613082602433', 'server_response': {'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Artisanal Misti Doi 80gm'}]}}}
[2026-06-13 08:27:12,928.928 INFO    ] 200
[2026-06-13 08:27:12,930.930 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613082602433","server_response":{"voiceNote":"Please close door 2","status":"false","rstatus":false,"error":{"code":20001,"umessage":"In Progress","data":[],"tmessage":"In Progress"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Epigamia Artisanal Misti Doi 80gm"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:27:12,931.931 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613082602433', 'server_response': {'voiceNote': 'Please close door 2', 'status': 'false', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Artisanal Misti Doi 80gm'}]}}}}
[2026-06-13 08:27:12,933.933 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Epigamia Artisanal Misti Doi 80gm'}]}}
[2026-06-13 08:27:15,969.969 INFO    ] 200
[2026-06-13 08:27:15,971.971 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:27:15,973.973 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-13 08:27:15,975.975 INFO    ] 2026-06-13 08:27:15
[2026-06-13 08:27:15,977.977 INFO    ] Order Completed 
[2026-06-13 08:27:15,979.979 INFO    ] Order Completed 
[2026-06-13 08:27:15,981.981 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:27:15,983.983 INFO    ] 2026-06-13 08:27:15
[2026-06-13 08:27:15,984.984 INFO    ] playing audio file
[2026-06-13 08:27:15,996.996 INFO    ] 2026-06-13 08:27:15
[2026-06-13 08:27:15,998.998 INFO    ] {'delay': 100, 'voiceNote': 'Transaction Completed', 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-13 08:27:16,001.001 INFO    ] 2026-06-13 08:27:15
[2026-06-13 08:27:17,298.298 INFO    ] 200
[2026-06-13 08:27:17,301.301 INFO    ] {"res": "True", "orderId": "TM08202203260613082602433", "skus": [{"image_url": "https://images.tinymart.in/product/4500517-9589.jpg", "skuid": "4500517", "door_id": "", "tray_id": "45", "name": "Epigamia Artisanal Misti Doi 80gm per peice", "unit_price": "35", "mrp": "35", "qty": 1, "sku_total": 35.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 35.0}
[2026-06-13 08:27:17,305.305 INFO    ] {'res': 'True', 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '', 'qty': 1, 'sku_total': 35.0, 'name': 'Epigamia Artisanal Misti Doi 80gm per peice', 'unit_price': '35', 'skuid': '4500517'}], 'rstatus': True, 'orderId': 'TM08202203260613082602433', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 35.0}
[2026-06-13 08:27:17,308.308 INFO    ] {'res': 'True', 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '', 'qty': 1, 'sku_total': 35.0, 'name': 'Epigamia Artisanal Misti Doi 80gm per peice', 'unit_price': '35', 'skuid': '4500517'}], 'rstatus': True, 'orderId': 'TM08202203260613082602433', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 35.0}
[2026-06-13 08:27:17,311.311 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,314.314 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,317.317 INFO    ] 35
[2026-06-13 08:27:17,320.320 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,323.323 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,326.326 INFO    ]  Your Bill Amount is 35
[2026-06-13 08:27:17,328.328 INFO    ]  Your Bill Amount is 35
[2026-06-13 08:27:17,331.331 INFO    ] 6a831468b581079554833fba4fd1d5b4
[2026-06-13 08:27:17,334.334 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,337.337 INFO    ] playing audio file
[2026-06-13 08:27:17,356.356 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,360.360 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:17,364.364 INFO    ] publish_status: order_id=TM08202203260613082602433
[2026-06-13 08:27:17,367.367 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613082602433
[2026-06-13 08:27:17,414.414 INFO    ] [publish_status] Message added to stream with ID: 1781319437380-0
[2026-06-13 08:27:17,417.417 INFO    ] Published to order:TM08202203260613082602433: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T02:57:17.362115Z', 'order_id': 'TM08202203260613082602433', 'server_response': '{"res": "True", "skus": [{"tray_id": "45", "image_url": "https://images.tinymart.in/product/4500517-9589.jpg", "mrp": "35", "door_id": "", "qty": 1, "sku_total": 35.0, "name": "Epigamia Artisanal Misti Doi 80gm per peice", "unit_price": "35", "skuid": "4500517"}], "rstatus": true, "orderId": "TM08202203260613082602433", "logic": "WBL", "anomaly": 0, "total_amount": 35.0}'} (ID: 1781319437380-0)
[2026-06-13 08:27:17,524.524 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082602433', 'server_response': {'res': 'True', 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '', 'qty': 1, 'sku_total': 35.0, 'name': 'Epigamia Artisanal Misti Doi 80gm per peice', 'unit_price': '35', 'skuid': '4500517'}], 'rstatus': True, 'orderId': 'TM08202203260613082602433', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 35.0}}
[2026-06-13 08:27:17,527.527 INFO    ] 200
[2026-06-13 08:27:17,530.530 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202203260613082602433","server_response":{"res":"true","skus":[{"tray_id":"45","image_url":"https:\/\/images.tinymart.in\/product\/4500517-9589.jpg","mrp":"35","door_id":"","qty":1,"sku_total":35,"name":"Epigamia Artisanal Misti Doi 80gm per peice","unit_price":"35","skuid":"4500517"}],"rstatus":true,"orderId":"TM08202203260613082602433","logic":"WBL","anomaly":0,"total_amount":35}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:27:17,533.533 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082602433', 'server_response': {'res': 'true', 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '', 'qty': 1, 'sku_total': 35, 'name': 'Epigamia Artisanal Misti Doi 80gm per peice', 'unit_price': '35', 'skuid': '4500517'}], 'rstatus': True, 'orderId': 'TM08202203260613082602433', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 35}}}
[2026-06-13 08:27:17,538.538 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613082602433', 'server_response': {'res': 'true', 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500517-9589.jpg', 'mrp': '35', 'door_id': '', 'qty': 1, 'sku_total': 35, 'name': 'Epigamia Artisanal Misti Doi 80gm per peice', 'unit_price': '35', 'skuid': '4500517'}], 'rstatus': True, 'orderId': 'TM08202203260613082602433', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 35}}}
[2026-06-13 08:27:17,541.541 INFO    ] 2026-06-13 08:27:17
[2026-06-13 08:27:19,531.531 INFO    ] 200
[2026-06-13 08:27:19,535.535 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433", "TM08202203260613082602433"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:27:19,539.539 INFO    ] 2026-06-13 08:27:19
[2026-06-13 08:27:19,654.654 INFO    ] 200
[2026-06-13 08:27:19,658.658 INFO    ] True
[2026-06-13 08:27:19,661.661 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613082602433
[2026-06-13 08:27:19,666.666 INFO    ] start order file deleted
[2026-06-13 08:27:19,670.670 INFO    ] Checking for system updates...
[2026-06-13 08:27:19,711.711 INFO    ] 200
[2026-06-13 08:27:19,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:19,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:19,789.789 INFO    ] No update needed
[2026-06-13 08:27:19,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 08:27:19,838.838 INFO    ] 200
[2026-06-13 08:27:19,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:19,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:27:19,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:19,941.941 INFO    ] No camera update needed
[2026-06-13 08:27:19,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:27:19,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:27:19,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:27:19,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:27:22,004.004 INFO    ] ================================================
[2026-06-13 08:27:22,020.020 INFO    ] Launching Daemon at Sat Jun 13 08:27:22 IST 2026
[2026-06-13 08:27:22,037.037 INFO    ] ================================================
[2026-06-13 08:27:22,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:27:22
[2026-06-13 08:27:23,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:27:23,489.489 INFO    ] Initializing speech engine...
[2026-06-13 08:27:23,494.494 INFO    ] 2026-06-13 08:27:23
[2026-06-13 08:27:23,702.702 INFO    ] 2026-06-13 08:27:23
[2026-06-13 08:27:23,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:27:23,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:27:23,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:27:24,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:27:24,124.124 INFO    ] time= 13/06/2026 08:27:24
[2026-06-13 08:27:24,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:27:24,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:27:24,220.220 INFO    ] No existing commands found in stream
[2026-06-13 08:27:29,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:27:29,234.234 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 08:27:30,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:27:30,202.202 INFO    ] Checking for system updates...
[2026-06-13 08:27:30,223.223 INFO    ] 200
[2026-06-13 08:27:30,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:30,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:27:30,259.259 INFO    ] No update needed
[2026-06-13 08:27:30,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 08:27:30,284.284 INFO    ] 200
[2026-06-13 08:27:30,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:30,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:27:30,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:27:30,360.360 INFO    ] No camera update needed
[2026-06-13 08:27:30,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:27:30,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:27:30,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:27:30,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:27:32,403.403 INFO    ] ================================================
[2026-06-13 08:27:32,419.419 INFO    ] Launching Daemon at Sat Jun 13 08:27:32 IST 2026
[2026-06-13 08:27:32,430.430 INFO    ] ================================================
[2026-06-13 08:27:32,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:27:32
[2026-06-13 08:27:33,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:27:33,216.216 INFO    ] Initializing speech engine...
[2026-06-13 08:27:33,221.221 INFO    ] 2026-06-13 08:27:33
[2026-06-13 08:27:33,424.424 INFO    ] 2026-06-13 08:27:33
[2026-06-13 08:27:33,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:27:33,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:27:33,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:27:33,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:27:33,831.831 INFO    ] time= 13/06/2026 08:27:33
[2026-06-13 08:27:33,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:27:33,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:27:33,936.936 INFO    ] No existing commands found in stream
[2026-06-13 08:27:38,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:27:38,948.948 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 08:27:41,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:27:41,037.037 INFO    ] Checking for system updates...
[2026-06-13 08:27:41,058.058 INFO    ] 200
[2026-06-13 08:27:41,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:41,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:41,091.091 INFO    ] No update needed
[2026-06-13 08:27:41,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 08:27:41,111.111 INFO    ] 200
[2026-06-13 08:27:41,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:41,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:27:41,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:41,175.175 INFO    ] No camera update needed
[2026-06-13 08:27:41,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:27:41,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:27:41,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:27:41,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:27:43,224.224 INFO    ] ================================================
[2026-06-13 08:27:43,239.239 INFO    ] Launching Daemon at Sat Jun 13 08:27:43 IST 2026
[2026-06-13 08:27:43,251.251 INFO    ] ================================================
[2026-06-13 08:27:43,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:27:43
[2026-06-13 08:27:43,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:27:44,033.033 INFO    ] Initializing speech engine...
[2026-06-13 08:27:44,046.046 INFO    ] 2026-06-13 08:27:44
[2026-06-13 08:27:44,269.269 INFO    ] 2026-06-13 08:27:44
[2026-06-13 08:27:44,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:27:44,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:27:44,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:27:44,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:27:44,650.650 INFO    ] time= 13/06/2026 08:27:44
[2026-06-13 08:27:44,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:27:44,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:27:44,835.835 INFO    ] No existing commands found in stream
[2026-06-13 08:27:49,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:27:49,849.849 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 08:27:50,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:27:50,791.791 INFO    ] Checking for system updates...
[2026-06-13 08:27:50,812.812 INFO    ] 200
[2026-06-13 08:27:50,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:50,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:50,845.845 INFO    ] No update needed
[2026-06-13 08:27:50,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 08:27:50,866.866 INFO    ] 200
[2026-06-13 08:27:50,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:27:50,890.890 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:27:51,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:27:51,033.033 INFO    ] No camera update needed
[2026-06-13 08:27:51,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:27:51,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:27:51,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:27:51,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:27:53,081.081 INFO    ] ================================================
[2026-06-13 08:27:53,097.097 INFO    ] Launching Daemon at Sat Jun 13 08:27:53 IST 2026
[2026-06-13 08:27:53,108.108 INFO    ] ================================================
[2026-06-13 08:27:53,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:27:53
[2026-06-13 08:27:53,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:27:54,186.186 INFO    ] Initializing speech engine...
[2026-06-13 08:27:54,201.201 INFO    ] 2026-06-13 08:27:54
[2026-06-13 08:27:54,463.463 INFO    ] 2026-06-13 08:27:54
[2026-06-13 08:27:54,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:27:54,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:27:54,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:27:54,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:27:54,798.798 INFO    ] time= 13/06/2026 08:27:54
[2026-06-13 08:27:54,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:27:54,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:27:54,910.910 INFO    ] No existing commands found in stream
[2026-06-13 08:27:59,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:27:59,927.927 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 08:28:03,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:28:03,058.058 INFO    ] Checking for system updates...
[2026-06-13 08:28:03,080.080 INFO    ] 200
[2026-06-13 08:28:03,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:03,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:03,117.117 INFO    ] No update needed
[2026-06-13 08:28:03,118.118 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:03,137.137 INFO    ] 200
[2026-06-13 08:28:03,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:03,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:03,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:03,186.186 INFO    ] No camera update needed
[2026-06-13 08:28:03,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:03,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:03,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:03,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:28:05,235.235 INFO    ] ================================================
[2026-06-13 08:28:05,251.251 INFO    ] Launching Daemon at Sat Jun 13 08:28:05 IST 2026
[2026-06-13 08:28:05,262.262 INFO    ] ================================================
[2026-06-13 08:28:05,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:28:05
[2026-06-13 08:28:05,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:28:06,145.145 INFO    ] Initializing speech engine...
[2026-06-13 08:28:06,150.150 INFO    ] 2026-06-13 08:28:06
[2026-06-13 08:28:06,355.355 INFO    ] 2026-06-13 08:28:06
[2026-06-13 08:28:06,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:28:06,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:28:06,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:28:06,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:28:06,775.775 INFO    ] time= 13/06/2026 08:28:06
[2026-06-13 08:28:06,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:28:06,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:28:06,871.871 INFO    ] No existing commands found in stream
[2026-06-13 08:28:11,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:28:11,885.885 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 08:28:13,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:28:13,710.710 INFO    ] Checking for system updates...
[2026-06-13 08:28:13,731.731 INFO    ] 200
[2026-06-13 08:28:13,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:13,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:13,767.767 INFO    ] No update needed
[2026-06-13 08:28:13,768.768 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:13,789.789 INFO    ] 200
[2026-06-13 08:28:13,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:13,814.814 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:13,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:13,855.855 INFO    ] No camera update needed
[2026-06-13 08:28:13,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:13,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:13,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:13,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:28:15,905.905 INFO    ] ================================================
[2026-06-13 08:28:15,921.921 INFO    ] Launching Daemon at Sat Jun 13 08:28:15 IST 2026
[2026-06-13 08:28:15,932.932 INFO    ] ================================================
[2026-06-13 08:28:16,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:28:16
[2026-06-13 08:28:16,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:28:17,245.245 INFO    ] Initializing speech engine...
[2026-06-13 08:28:17,260.260 INFO    ] 2026-06-13 08:28:17
[2026-06-13 08:28:17,529.529 INFO    ] 2026-06-13 08:28:17
[2026-06-13 08:28:17,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:28:17,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:28:17,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:28:17,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:28:17,872.872 INFO    ] time= 13/06/2026 08:28:17
[2026-06-13 08:28:17,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:28:17,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:28:17,984.984 INFO    ] No existing commands found in stream
[2026-06-13 08:28:22,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:28:23,002.002 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 08:28:23,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:28:23,687.687 INFO    ] Checking for system updates...
[2026-06-13 08:28:23,708.708 INFO    ] 200
[2026-06-13 08:28:23,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:23,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:28:23,741.741 INFO    ] No update needed
[2026-06-13 08:28:23,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:23,761.761 INFO    ] 200
[2026-06-13 08:28:23,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:23,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:23,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:23,831.831 INFO    ] No camera update needed
[2026-06-13 08:28:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:23,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:23,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:23,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:28:25,880.880 INFO    ] ================================================
[2026-06-13 08:28:25,897.897 INFO    ] Launching Daemon at Sat Jun 13 08:28:25 IST 2026
[2026-06-13 08:28:25,908.908 INFO    ] ================================================
[2026-06-13 08:28:26,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:28:26
[2026-06-13 08:28:26,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:28:26,751.751 INFO    ] Initializing speech engine...
[2026-06-13 08:28:26,764.764 INFO    ] 2026-06-13 08:28:26
[2026-06-13 08:28:26,991.991 INFO    ] 2026-06-13 08:28:26
[2026-06-13 08:28:27,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:28:27,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:28:27,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:28:27,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:28:27,379.379 INFO    ] time= 13/06/2026 08:28:27
[2026-06-13 08:28:27,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:28:27,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:28:27,565.565 INFO    ] No existing commands found in stream
[2026-06-13 08:28:32,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:28:32,579.579 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 08:28:36,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:28:36,577.577 INFO    ] Checking for system updates...
[2026-06-13 08:28:36,601.601 INFO    ] 200
[2026-06-13 08:28:36,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:36,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:36,634.634 INFO    ] No update needed
[2026-06-13 08:28:36,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:36,656.656 INFO    ] 200
[2026-06-13 08:28:36,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:36,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:36,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:36,717.717 INFO    ] No camera update needed
[2026-06-13 08:28:36,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:36,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:36,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:36,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:28:38,765.765 INFO    ] ================================================
[2026-06-13 08:28:38,781.781 INFO    ] Launching Daemon at Sat Jun 13 08:28:38 IST 2026
[2026-06-13 08:28:38,793.793 INFO    ] ================================================
[2026-06-13 08:28:39,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:28:39
[2026-06-13 08:28:39,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:28:39,591.591 INFO    ] Initializing speech engine...
[2026-06-13 08:28:39,601.601 INFO    ] 2026-06-13 08:28:39
[2026-06-13 08:28:39,808.808 INFO    ] 2026-06-13 08:28:39
[2026-06-13 08:28:39,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:28:39,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:28:40,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:28:40,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:28:40,183.183 INFO    ] time= 13/06/2026 08:28:40
[2026-06-13 08:28:40,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:28:40,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:28:40,345.345 INFO    ] No existing commands found in stream
[2026-06-13 08:28:45,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:28:45,367.367 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 08:28:49,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:28:49,130.130 INFO    ] Checking for system updates...
[2026-06-13 08:28:49,151.151 INFO    ] 200
[2026-06-13 08:28:49,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:49,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:49,184.184 INFO    ] No update needed
[2026-06-13 08:28:49,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:49,205.205 INFO    ] 200
[2026-06-13 08:28:49,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:49,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:49,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:28:49,280.280 INFO    ] No camera update needed
[2026-06-13 08:28:49,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:49,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:49,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:49,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:28:51,327.327 INFO    ] ================================================
[2026-06-13 08:28:51,343.343 INFO    ] Launching Daemon at Sat Jun 13 08:28:51 IST 2026
[2026-06-13 08:28:51,354.354 INFO    ] ================================================
[2026-06-13 08:28:51,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:28:51
[2026-06-13 08:28:52,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:28:52,178.178 INFO    ] Initializing speech engine...
[2026-06-13 08:28:52,183.183 INFO    ] 2026-06-13 08:28:52
[2026-06-13 08:28:52,386.386 INFO    ] 2026-06-13 08:28:52
[2026-06-13 08:28:52,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:28:52,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:28:52,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:28:52,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:28:52,803.803 INFO    ] time= 13/06/2026 08:28:52
[2026-06-13 08:28:52,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:28:52,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:28:52,903.903 INFO    ] No existing commands found in stream
[2026-06-13 08:28:57,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:28:57,920.920 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 08:28:58,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:28:58,784.784 INFO    ] Checking for system updates...
[2026-06-13 08:28:58,805.805 INFO    ] 200
[2026-06-13 08:28:58,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:58,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:58,840.840 INFO    ] No update needed
[2026-06-13 08:28:58,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 08:28:58,862.862 INFO    ] 200
[2026-06-13 08:28:58,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:28:58,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:28:58,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:28:58,928.928 INFO    ] No camera update needed
[2026-06-13 08:28:58,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:28:58,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:28:58,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:28:58,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:29:00,979.979 INFO    ] ================================================
[2026-06-13 08:29:01,994.994 INFO    ] Launching Daemon at Sat Jun 13 08:29:00 IST 2026
[2026-06-13 08:29:01,006.006 INFO    ] ================================================
[2026-06-13 08:29:01,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:29:01
[2026-06-13 08:29:01,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:29:01,973.973 INFO    ] Initializing speech engine...
[2026-06-13 08:29:01,976.976 INFO    ] 2026-06-13 08:29:01
[2026-06-13 08:29:02,226.226 INFO    ] 2026-06-13 08:29:02
[2026-06-13 08:29:02,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:29:02,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:29:02,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:29:02,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:29:02,679.679 INFO    ] time= 13/06/2026 08:29:02
[2026-06-13 08:29:02,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:29:02,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:29:02,797.797 INFO    ] No existing commands found in stream
[2026-06-13 08:29:07,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:29:07,811.811 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 08:29:12,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:29:12,041.041 INFO    ] Checking for system updates...
[2026-06-13 08:29:12,062.062 INFO    ] 200
[2026-06-13 08:29:12,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:12,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:29:12,098.098 INFO    ] No update needed
[2026-06-13 08:29:12,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 08:29:12,120.120 INFO    ] 200
[2026-06-13 08:29:12,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:12,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:29:12,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:29:12,192.192 INFO    ] No camera update needed
[2026-06-13 08:29:12,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:29:12,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:29:12,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:29:12,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:29:14,249.249 INFO    ] ================================================
[2026-06-13 08:29:14,265.265 INFO    ] Launching Daemon at Sat Jun 13 08:29:14 IST 2026
[2026-06-13 08:29:14,276.276 INFO    ] ================================================
[2026-06-13 08:29:14,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:29:14
[2026-06-13 08:29:15,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:29:15,524.524 INFO    ] Initializing speech engine...
[2026-06-13 08:29:15,532.532 INFO    ] 2026-06-13 08:29:15
[2026-06-13 08:29:15,738.738 INFO    ] 2026-06-13 08:29:15
[2026-06-13 08:29:15,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:29:15,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:29:15,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:29:16,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:29:16,088.088 INFO    ] time= 13/06/2026 08:29:16
[2026-06-13 08:29:16,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:29:16,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:29:16,257.257 INFO    ] No existing commands found in stream
[2026-06-13 08:29:21,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:29:21,274.274 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 08:29:25,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:29:25,469.469 INFO    ] Checking for system updates...
[2026-06-13 08:29:25,490.490 INFO    ] 200
[2026-06-13 08:29:25,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:25,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:29:25,523.523 INFO    ] No update needed
[2026-06-13 08:29:25,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 08:29:25,544.544 INFO    ] 200
[2026-06-13 08:29:25,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:25,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:29:25,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:29:25,606.606 INFO    ] No camera update needed
[2026-06-13 08:29:25,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:29:25,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:29:25,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:29:25,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:29:27,657.657 INFO    ] ================================================
[2026-06-13 08:29:27,672.672 INFO    ] Launching Daemon at Sat Jun 13 08:29:27 IST 2026
[2026-06-13 08:29:27,683.683 INFO    ] ================================================
[2026-06-13 08:29:28,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:29:28
[2026-06-13 08:29:28,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:29:28,513.513 INFO    ] Initializing speech engine...
[2026-06-13 08:29:28,521.521 INFO    ] 2026-06-13 08:29:28
[2026-06-13 08:29:28,749.749 INFO    ] 2026-06-13 08:29:28
[2026-06-13 08:29:28,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:29:28,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:29:28,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:29:29,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:29:29,152.152 INFO    ] time= 13/06/2026 08:29:29
[2026-06-13 08:29:29,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:29:29,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:29:29,385.385 INFO    ] No existing commands found in stream
[2026-06-13 08:29:34,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:29:34,418.418 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 08:29:36,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:29:36,924.924 INFO    ] Checking for system updates...
[2026-06-13 08:29:36,945.945 INFO    ] 200
[2026-06-13 08:29:36,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:36,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:29:36,981.981 INFO    ] No update needed
[2026-06-13 08:29:36,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 08:29:37,002.002 INFO    ] 200
[2026-06-13 08:29:37,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:37,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:29:37,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:29:37,069.069 INFO    ] No camera update needed
[2026-06-13 08:29:37,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:29:37,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:29:37,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:29:37,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:29:39,116.116 INFO    ] ================================================
[2026-06-13 08:29:39,131.131 INFO    ] Launching Daemon at Sat Jun 13 08:29:39 IST 2026
[2026-06-13 08:29:39,148.148 INFO    ] ================================================
[2026-06-13 08:29:39,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:29:39
[2026-06-13 08:29:39,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:29:40,015.015 INFO    ] Initializing speech engine...
[2026-06-13 08:29:40,021.021 INFO    ] 2026-06-13 08:29:40
[2026-06-13 08:29:40,233.233 INFO    ] 2026-06-13 08:29:40
[2026-06-13 08:29:40,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:29:40,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:29:40,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:29:40,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:29:40,611.611 INFO    ] time= 13/06/2026 08:29:40
[2026-06-13 08:29:40,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:29:40,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:29:40,745.745 INFO    ] No existing commands found in stream
[2026-06-13 08:29:45,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:29:45,774.774 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 08:29:48,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:29:48,276.276 INFO    ] Checking for system updates...
[2026-06-13 08:29:48,299.299 INFO    ] 200
[2026-06-13 08:29:48,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:48,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:29:48,333.333 INFO    ] No update needed
[2026-06-13 08:29:48,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 08:29:48,356.356 INFO    ] 200
[2026-06-13 08:29:48,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:48,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:29:48,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:29:48,427.427 INFO    ] No camera update needed
[2026-06-13 08:29:48,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:29:48,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:29:48,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:29:48,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:29:50,478.478 INFO    ] ================================================
[2026-06-13 08:29:50,494.494 INFO    ] Launching Daemon at Sat Jun 13 08:29:50 IST 2026
[2026-06-13 08:29:50,506.506 INFO    ] ================================================
[2026-06-13 08:29:50,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:29:50
[2026-06-13 08:29:51,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:29:51,354.354 INFO    ] Initializing speech engine...
[2026-06-13 08:29:51,358.358 INFO    ] 2026-06-13 08:29:51
[2026-06-13 08:29:51,568.568 INFO    ] 2026-06-13 08:29:51
[2026-06-13 08:29:51,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:29:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:29:51,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:29:51,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:29:51,968.968 INFO    ] time= 13/06/2026 08:29:51
[2026-06-13 08:29:52,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:29:52,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:29:52,090.090 INFO    ] No existing commands found in stream
[2026-06-13 08:29:57,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:29:57,105.105 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 08:29:58,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:29:58,179.179 INFO    ] Checking for system updates...
[2026-06-13 08:29:58,201.201 INFO    ] 200
[2026-06-13 08:29:58,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:58,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:29:58,237.237 INFO    ] No update needed
[2026-06-13 08:29:58,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 08:29:58,259.259 INFO    ] 200
[2026-06-13 08:29:58,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:29:58,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:29:58,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:29:58,424.424 INFO    ] No camera update needed
[2026-06-13 08:29:58,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:29:58,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:29:58,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:29:58,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:00,472.472 INFO    ] ================================================
[2026-06-13 08:30:00,487.487 INFO    ] Launching Daemon at Sat Jun 13 08:30:00 IST 2026
[2026-06-13 08:30:00,498.498 INFO    ] ================================================
[2026-06-13 08:30:00,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:00
[2026-06-13 08:30:01,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:01,306.306 INFO    ] Initializing speech engine...
[2026-06-13 08:30:01,311.311 INFO    ] 2026-06-13 08:30:01
[2026-06-13 08:30:01,519.519 INFO    ] 2026-06-13 08:30:01
[2026-06-13 08:30:01,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:01,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:01,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:01,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:01,860.860 INFO    ] time= 13/06/2026 08:30:01
[2026-06-13 08:30:01,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:01,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:01,937.937 INFO    ] No existing commands found in stream
[2026-06-13 08:30:06,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:06,951.951 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 08:30:09,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:30:09,079.079 INFO    ] Checking for system updates...
[2026-06-13 08:30:09,118.118 INFO    ] 200
[2026-06-13 08:30:09,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:09,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:09,167.167 INFO    ] No update needed
[2026-06-13 08:30:09,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:09,191.191 INFO    ] 200
[2026-06-13 08:30:09,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:09,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:09,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:09,256.256 INFO    ] No camera update needed
[2026-06-13 08:30:09,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:09,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:09,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:09,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:11,305.305 INFO    ] ================================================
[2026-06-13 08:30:11,321.321 INFO    ] Launching Daemon at Sat Jun 13 08:30:11 IST 2026
[2026-06-13 08:30:11,332.332 INFO    ] ================================================
[2026-06-13 08:30:11,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:11
[2026-06-13 08:30:12,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:12,156.156 INFO    ] Initializing speech engine...
[2026-06-13 08:30:12,159.159 INFO    ] 2026-06-13 08:30:12
[2026-06-13 08:30:12,356.356 INFO    ] 2026-06-13 08:30:12
[2026-06-13 08:30:12,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:12,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:12,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:12,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:12,650.650 INFO    ] time= 13/06/2026 08:30:12
[2026-06-13 08:30:12,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:12,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:12,749.749 INFO    ] No existing commands found in stream
[2026-06-13 08:30:17,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:17,781.781 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 08:30:18,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:30:18,112.112 INFO    ] Checking for system updates...
[2026-06-13 08:30:18,133.133 INFO    ] 200
[2026-06-13 08:30:18,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:18,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:18,166.166 INFO    ] No update needed
[2026-06-13 08:30:18,167.167 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:18,189.189 INFO    ] 200
[2026-06-13 08:30:18,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:18,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:18,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:18,255.255 INFO    ] No camera update needed
[2026-06-13 08:30:18,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:18,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:18,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:18,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:20,303.303 INFO    ] ================================================
[2026-06-13 08:30:20,318.318 INFO    ] Launching Daemon at Sat Jun 13 08:30:20 IST 2026
[2026-06-13 08:30:20,329.329 INFO    ] ================================================
[2026-06-13 08:30:20,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:20
[2026-06-13 08:30:20,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:21,114.114 INFO    ] Initializing speech engine...
[2026-06-13 08:30:21,118.118 INFO    ] 2026-06-13 08:30:21
[2026-06-13 08:30:21,311.311 INFO    ] 2026-06-13 08:30:21
[2026-06-13 08:30:21,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:21,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:21,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:21,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:21,597.597 INFO    ] time= 13/06/2026 08:30:21
[2026-06-13 08:30:21,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:21,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:21,699.699 INFO    ] No existing commands found in stream
[2026-06-13 08:30:26,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:26,736.736 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 08:30:29,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:30:29,052.052 INFO    ] Checking for system updates...
[2026-06-13 08:30:29,073.073 INFO    ] 200
[2026-06-13 08:30:29,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:29,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:29,107.107 INFO    ] No update needed
[2026-06-13 08:30:29,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:29,128.128 INFO    ] 200
[2026-06-13 08:30:29,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:29,153.153 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:29,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:29,200.200 INFO    ] No camera update needed
[2026-06-13 08:30:29,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:29,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:29,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:29,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:31,249.249 INFO    ] ================================================
[2026-06-13 08:30:31,270.270 INFO    ] Launching Daemon at Sat Jun 13 08:30:31 IST 2026
[2026-06-13 08:30:31,282.282 INFO    ] ================================================
[2026-06-13 08:30:31,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:31
[2026-06-13 08:30:31,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:32,127.127 INFO    ] Initializing speech engine...
[2026-06-13 08:30:32,140.140 INFO    ] 2026-06-13 08:30:32
[2026-06-13 08:30:32,370.370 INFO    ] 2026-06-13 08:30:32
[2026-06-13 08:30:32,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:32,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:32,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:32,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:32,754.754 INFO    ] time= 13/06/2026 08:30:32
[2026-06-13 08:30:32,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:32,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:32,919.919 INFO    ] No existing commands found in stream
[2026-06-13 08:30:37,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:37,932.932 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 08:30:38,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:30:38,227.227 INFO    ] Checking for system updates...
[2026-06-13 08:30:38,250.250 INFO    ] 200
[2026-06-13 08:30:38,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:38,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:30:38,283.283 INFO    ] No update needed
[2026-06-13 08:30:38,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:38,308.308 INFO    ] 200
[2026-06-13 08:30:38,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:38,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:38,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:30:38,371.371 INFO    ] No camera update needed
[2026-06-13 08:30:38,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:38,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:38,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:38,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:40,421.421 INFO    ] ================================================
[2026-06-13 08:30:40,436.436 INFO    ] Launching Daemon at Sat Jun 13 08:30:40 IST 2026
[2026-06-13 08:30:40,447.447 INFO    ] ================================================
[2026-06-13 08:30:40,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:40
[2026-06-13 08:30:41,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:41,220.220 INFO    ] Initializing speech engine...
[2026-06-13 08:30:41,229.229 INFO    ] 2026-06-13 08:30:41
[2026-06-13 08:30:41,442.442 INFO    ] 2026-06-13 08:30:41
[2026-06-13 08:30:41,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:41,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:41,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:41,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:41,842.842 INFO    ] time= 13/06/2026 08:30:41
[2026-06-13 08:30:41,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:41,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:42,029.029 INFO    ] No existing commands found in stream
[2026-06-13 08:30:47,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:47,041.041 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 08:30:49,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:30:49,822.822 INFO    ] Checking for system updates...
[2026-06-13 08:30:49,844.844 INFO    ] 200
[2026-06-13 08:30:49,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:49,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:49,878.878 INFO    ] No update needed
[2026-06-13 08:30:49,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:49,899.899 INFO    ] 200
[2026-06-13 08:30:49,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:49,926.926 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:49,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:49,964.964 INFO    ] No camera update needed
[2026-06-13 08:30:49,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:49,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:49,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:49,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:30:52,012.012 INFO    ] ================================================
[2026-06-13 08:30:52,027.027 INFO    ] Launching Daemon at Sat Jun 13 08:30:52 IST 2026
[2026-06-13 08:30:52,037.037 INFO    ] ================================================
[2026-06-13 08:30:52,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:30:52
[2026-06-13 08:30:52,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:30:52,838.838 INFO    ] Initializing speech engine...
[2026-06-13 08:30:52,844.844 INFO    ] 2026-06-13 08:30:52
[2026-06-13 08:30:53,046.046 INFO    ] 2026-06-13 08:30:53
[2026-06-13 08:30:53,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:30:53,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:30:53,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:30:53,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:30:53,402.402 INFO    ] time= 13/06/2026 08:30:53
[2026-06-13 08:30:53,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:30:53,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:30:53,592.592 INFO    ] No existing commands found in stream
[2026-06-13 08:30:58,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:30:58,617.617 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 08:30:59,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:30:59,506.506 INFO    ] Checking for system updates...
[2026-06-13 08:30:59,527.527 INFO    ] 200
[2026-06-13 08:30:59,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:59,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:30:59,560.560 INFO    ] No update needed
[2026-06-13 08:30:59,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 08:30:59,581.581 INFO    ] 200
[2026-06-13 08:30:59,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:30:59,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:30:59,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:30:59,647.647 INFO    ] No camera update needed
[2026-06-13 08:30:59,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:30:59,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:30:59,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:30:59,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:01,695.695 INFO    ] ================================================
[2026-06-13 08:31:01,711.711 INFO    ] Launching Daemon at Sat Jun 13 08:31:01 IST 2026
[2026-06-13 08:31:01,722.722 INFO    ] ================================================
[2026-06-13 08:31:02,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:02
[2026-06-13 08:31:02,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:02,707.707 INFO    ] Initializing speech engine...
[2026-06-13 08:31:02,712.712 INFO    ] 2026-06-13 08:31:02
[2026-06-13 08:31:02,952.952 INFO    ] 2026-06-13 08:31:02
[2026-06-13 08:31:02,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:03,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:03,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:03,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:03,202.202 INFO    ] time= 13/06/2026 08:31:03
[2026-06-13 08:31:03,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:03,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:03,292.292 INFO    ] No existing commands found in stream
[2026-06-13 08:31:08,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:31:08,329.329 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 08:31:08,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:31:08,857.857 INFO    ] Checking for system updates...
[2026-06-13 08:31:08,878.878 INFO    ] 200
[2026-06-13 08:31:08,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:08,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:08,914.914 INFO    ] No update needed
[2026-06-13 08:31:08,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 08:31:08,934.934 INFO    ] 200
[2026-06-13 08:31:08,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:08,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:31:09,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:09,003.003 INFO    ] No camera update needed
[2026-06-13 08:31:09,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:31:09,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:31:09,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:31:09,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:11,052.052 INFO    ] ================================================
[2026-06-13 08:31:11,068.068 INFO    ] Launching Daemon at Sat Jun 13 08:31:11 IST 2026
[2026-06-13 08:31:11,079.079 INFO    ] ================================================
[2026-06-13 08:31:11,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:11
[2026-06-13 08:31:11,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:11,861.861 INFO    ] Initializing speech engine...
[2026-06-13 08:31:11,867.867 INFO    ] 2026-06-13 08:31:11
[2026-06-13 08:31:12,070.070 INFO    ] 2026-06-13 08:31:12
[2026-06-13 08:31:12,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:12,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:12,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:12,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:12,475.475 INFO    ] time= 13/06/2026 08:31:12
[2026-06-13 08:31:12,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:12,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:12,584.584 INFO    ] No existing commands found in stream
[2026-06-13 08:31:17,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:31:17,601.601 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 08:31:20,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:31:20,584.584 INFO    ] Checking for system updates...
[2026-06-13 08:31:20,605.605 INFO    ] 200
[2026-06-13 08:31:20,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:20,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:20,638.638 INFO    ] No update needed
[2026-06-13 08:31:20,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 08:31:20,660.660 INFO    ] 200
[2026-06-13 08:31:20,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:20,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:31:20,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:31:20,735.735 INFO    ] No camera update needed
[2026-06-13 08:31:20,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:31:20,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:31:20,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:31:20,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:22,783.783 INFO    ] ================================================
[2026-06-13 08:31:22,799.799 INFO    ] Launching Daemon at Sat Jun 13 08:31:22 IST 2026
[2026-06-13 08:31:22,809.809 INFO    ] ================================================
[2026-06-13 08:31:23,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:23
[2026-06-13 08:31:23,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:23,593.593 INFO    ] Initializing speech engine...
[2026-06-13 08:31:23,604.604 INFO    ] 2026-06-13 08:31:23
[2026-06-13 08:31:23,812.812 INFO    ] 2026-06-13 08:31:23
[2026-06-13 08:31:23,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:24,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:24,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:24,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:24,242.242 INFO    ] time= 13/06/2026 08:31:24
[2026-06-13 08:31:24,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:24,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:24,369.369 INFO    ] No existing commands found in stream
[2026-06-13 08:31:29,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:31:29,382.382 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 08:31:31,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:31:31,422.422 INFO    ] Checking for system updates...
[2026-06-13 08:31:31,443.443 INFO    ] 200
[2026-06-13 08:31:31,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:31,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:31,482.482 INFO    ] No update needed
[2026-06-13 08:31:31,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 08:31:31,511.511 INFO    ] 200
[2026-06-13 08:31:31,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:31,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:31:31,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:31,577.577 INFO    ] No camera update needed
[2026-06-13 08:31:31,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:31:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:31:31,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:31:31,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:33,619.619 INFO    ] ================================================
[2026-06-13 08:31:33,634.634 INFO    ] Launching Daemon at Sat Jun 13 08:31:33 IST 2026
[2026-06-13 08:31:33,645.645 INFO    ] ================================================
[2026-06-13 08:31:34,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:34
[2026-06-13 08:31:34,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:35,076.076 INFO    ] Initializing speech engine...
[2026-06-13 08:31:35,083.083 INFO    ] 2026-06-13 08:31:35
[2026-06-13 08:31:35,325.325 INFO    ] 2026-06-13 08:31:35
[2026-06-13 08:31:35,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:35,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:35,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:35,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:35,657.657 INFO    ] time= 13/06/2026 08:31:35
[2026-06-13 08:31:35,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:35,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:35,746.746 INFO    ] No existing commands found in stream
[2026-06-13 08:31:40,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:31:40,783.783 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 08:31:44,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:31:44,217.217 INFO    ] Checking for system updates...
[2026-06-13 08:31:44,243.243 INFO    ] 200
[2026-06-13 08:31:44,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:44,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:44,277.277 INFO    ] No update needed
[2026-06-13 08:31:44,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 08:31:44,301.301 INFO    ] 200
[2026-06-13 08:31:44,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:44,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:31:44,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:31:44,375.375 INFO    ] No camera update needed
[2026-06-13 08:31:44,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:31:44,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:31:44,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:31:44,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:46,425.425 INFO    ] ================================================
[2026-06-13 08:31:46,440.440 INFO    ] Launching Daemon at Sat Jun 13 08:31:46 IST 2026
[2026-06-13 08:31:46,451.451 INFO    ] ================================================
[2026-06-13 08:31:46,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:46
[2026-06-13 08:31:47,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:47,255.255 INFO    ] Initializing speech engine...
[2026-06-13 08:31:47,260.260 INFO    ] 2026-06-13 08:31:47
[2026-06-13 08:31:47,463.463 INFO    ] 2026-06-13 08:31:47
[2026-06-13 08:31:47,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:47,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:47,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:47,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:47,851.851 INFO    ] time= 13/06/2026 08:31:47
[2026-06-13 08:31:47,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:47,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:47,977.977 INFO    ] No existing commands found in stream
[2026-06-13 08:31:52,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:31:52,989.989 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 08:31:53,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:31:53,886.886 INFO    ] Checking for system updates...
[2026-06-13 08:31:53,906.906 INFO    ] 200
[2026-06-13 08:31:53,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:53,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:53,942.942 INFO    ] No update needed
[2026-06-13 08:31:53,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 08:31:53,963.963 INFO    ] 200
[2026-06-13 08:31:53,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:31:53,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:31:54,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:31:54,027.027 INFO    ] No camera update needed
[2026-06-13 08:31:54,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:31:54,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:31:54,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:31:54,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:31:56,078.078 INFO    ] ================================================
[2026-06-13 08:31:56,093.093 INFO    ] Launching Daemon at Sat Jun 13 08:31:56 IST 2026
[2026-06-13 08:31:56,104.104 INFO    ] ================================================
[2026-06-13 08:31:56,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:31:56
[2026-06-13 08:31:56,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:31:56,943.943 INFO    ] Initializing speech engine...
[2026-06-13 08:31:56,948.948 INFO    ] 2026-06-13 08:31:56
[2026-06-13 08:31:57,152.152 INFO    ] 2026-06-13 08:31:57
[2026-06-13 08:31:57,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:31:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:31:57,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:31:57,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:31:57,554.554 INFO    ] time= 13/06/2026 08:31:57
[2026-06-13 08:31:57,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:31:57,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:31:57,669.669 INFO    ] No existing commands found in stream
[2026-06-13 08:32:02,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:02,680.680 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 08:32:04,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:32:04,919.919 INFO    ] Checking for system updates...
[2026-06-13 08:32:04,940.940 INFO    ] 200
[2026-06-13 08:32:04,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:04,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:04,973.973 INFO    ] No update needed
[2026-06-13 08:32:04,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 08:32:04,994.994 INFO    ] 200
[2026-06-13 08:32:04,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:05,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:32:05,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:05,069.069 INFO    ] No camera update needed
[2026-06-13 08:32:05,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:32:05,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:32:05,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:32:05,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:32:07,121.121 INFO    ] ================================================
[2026-06-13 08:32:07,136.136 INFO    ] Launching Daemon at Sat Jun 13 08:32:07 IST 2026
[2026-06-13 08:32:07,147.147 INFO    ] ================================================
[2026-06-13 08:32:07,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:32:07
[2026-06-13 08:32:07,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:32:07,919.919 INFO    ] Initializing speech engine...
[2026-06-13 08:32:07,929.929 INFO    ] 2026-06-13 08:32:07
[2026-06-13 08:32:08,132.132 INFO    ] 2026-06-13 08:32:08
[2026-06-13 08:32:08,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:32:08,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:32:08,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:32:08,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:32:08,547.547 INFO    ] time= 13/06/2026 08:32:08
[2026-06-13 08:32:08,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:32:08,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:32:08,645.645 INFO    ] No existing commands found in stream
[2026-06-13 08:32:13,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:13,659.659 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 08:32:17,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:32:17,579.579 INFO    ] Checking for system updates...
[2026-06-13 08:32:17,601.601 INFO    ] 200
[2026-06-13 08:32:17,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:17,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:32:17,635.635 INFO    ] No update needed
[2026-06-13 08:32:17,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 08:32:17,658.658 INFO    ] 200
[2026-06-13 08:32:17,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:17,686.686 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:32:17,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:32:17,734.734 INFO    ] No camera update needed
[2026-06-13 08:32:17,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:32:17,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:32:17,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:32:17,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:32:19,785.785 INFO    ] ================================================
[2026-06-13 08:32:19,801.801 INFO    ] Launching Daemon at Sat Jun 13 08:32:19 IST 2026
[2026-06-13 08:32:19,812.812 INFO    ] ================================================
[2026-06-13 08:32:20,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:32:20
[2026-06-13 08:32:20,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:32:20,606.606 INFO    ] Initializing speech engine...
[2026-06-13 08:32:20,611.611 INFO    ] 2026-06-13 08:32:20
[2026-06-13 08:32:20,813.813 INFO    ] 2026-06-13 08:32:20
[2026-06-13 08:32:20,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:32:21,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:32:21,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:32:21,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:32:21,213.213 INFO    ] time= 13/06/2026 08:32:21
[2026-06-13 08:32:21,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:32:21,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:32:21,329.329 INFO    ] No existing commands found in stream
[2026-06-13 08:32:26,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:26,341.341 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 08:32:29,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:32:29,040.040 INFO    ] Checking for system updates...
[2026-06-13 08:32:29,063.063 INFO    ] 200
[2026-06-13 08:32:29,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:29,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:29,096.096 INFO    ] No update needed
[2026-06-13 08:32:29,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 08:32:29,118.118 INFO    ] 200
[2026-06-13 08:32:29,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:29,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:32:29,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:29,185.185 INFO    ] No camera update needed
[2026-06-13 08:32:29,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:32:29,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:32:29,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:32:29,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:32:31,233.233 INFO    ] ================================================
[2026-06-13 08:32:31,251.251 INFO    ] Launching Daemon at Sat Jun 13 08:32:31 IST 2026
[2026-06-13 08:32:31,263.263 INFO    ] ================================================
[2026-06-13 08:32:31,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:32:31
[2026-06-13 08:32:31,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:32:32,130.130 INFO    ] Initializing speech engine...
[2026-06-13 08:32:32,136.136 INFO    ] 2026-06-13 08:32:32
[2026-06-13 08:32:32,344.344 INFO    ] 2026-06-13 08:32:32
[2026-06-13 08:32:32,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:32:32,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:32:32,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:32:32,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:32:32,738.738 INFO    ] time= 13/06/2026 08:32:32
[2026-06-13 08:32:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:32:32,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:32:32,795.795 INFO    ] No existing commands found in stream
[2026-06-13 08:32:37,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:37,812.812 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 08:32:40,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:32:40,941.941 INFO    ] Checking for system updates...
[2026-06-13 08:32:40,962.962 INFO    ] 200
[2026-06-13 08:32:40,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:40,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:40,998.998 INFO    ] No update needed
[2026-06-13 08:32:40,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 08:32:41,019.019 INFO    ] 200
[2026-06-13 08:32:41,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:41,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:32:41,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:41,084.084 INFO    ] No camera update needed
[2026-06-13 08:32:41,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:32:41,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:32:41,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:32:41,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:32:43,133.133 INFO    ] ================================================
[2026-06-13 08:32:43,148.148 INFO    ] Launching Daemon at Sat Jun 13 08:32:43 IST 2026
[2026-06-13 08:32:43,159.159 INFO    ] ================================================
[2026-06-13 08:32:43,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:32:43
[2026-06-13 08:32:43,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:32:43,980.980 INFO    ] Initializing speech engine...
[2026-06-13 08:32:43,986.986 INFO    ] 2026-06-13 08:32:43
[2026-06-13 08:32:44,202.202 INFO    ] 2026-06-13 08:32:44
[2026-06-13 08:32:44,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:32:44,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:32:44,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:32:44,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:32:44,638.638 INFO    ] time= 13/06/2026 08:32:44
[2026-06-13 08:32:44,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:32:44,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:32:44,760.760 INFO    ] No existing commands found in stream
[2026-06-13 08:32:49,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:49,772.772 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 08:32:51,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:32:51,005.005 INFO    ] Checking for system updates...
[2026-06-13 08:32:51,039.039 INFO    ] 200
[2026-06-13 08:32:51,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:51,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:51,073.073 INFO    ] No update needed
[2026-06-13 08:32:51,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 08:32:51,094.094 INFO    ] 200
[2026-06-13 08:32:51,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:32:51,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:32:51,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:32:51,162.162 INFO    ] No camera update needed
[2026-06-13 08:32:51,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:32:51,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:32:51,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:32:51,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:32:53,212.212 INFO    ] ================================================
[2026-06-13 08:32:53,227.227 INFO    ] Launching Daemon at Sat Jun 13 08:32:53 IST 2026
[2026-06-13 08:32:53,237.237 INFO    ] ================================================
[2026-06-13 08:32:53,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:32:53
[2026-06-13 08:32:53,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:32:54,093.093 INFO    ] Initializing speech engine...
[2026-06-13 08:32:54,103.103 INFO    ] 2026-06-13 08:32:54
[2026-06-13 08:32:54,313.313 INFO    ] 2026-06-13 08:32:54
[2026-06-13 08:32:54,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:32:54,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:32:54,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:32:54,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:32:54,736.736 INFO    ] time= 13/06/2026 08:32:54
[2026-06-13 08:32:54,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:32:54,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:32:54,833.833 INFO    ] No existing commands found in stream
[2026-06-13 08:32:59,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:32:59,848.848 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 08:33:02,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:33:02,675.675 INFO    ] Checking for system updates...
[2026-06-13 08:33:02,714.714 INFO    ] 200
[2026-06-13 08:33:02,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:02,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:02,776.776 INFO    ] No update needed
[2026-06-13 08:33:02,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:02,819.819 INFO    ] 200
[2026-06-13 08:33:02,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:02,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:02,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:02,894.894 INFO    ] No camera update needed
[2026-06-13 08:33:02,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:02,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:02,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:02,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:04,950.950 INFO    ] ================================================
[2026-06-13 08:33:04,965.965 INFO    ] Launching Daemon at Sat Jun 13 08:33:04 IST 2026
[2026-06-13 08:33:04,976.976 INFO    ] ================================================
[2026-06-13 08:33:05,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:33:05
[2026-06-13 08:33:05,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:33:05,957.957 INFO    ] Initializing speech engine...
[2026-06-13 08:33:05,969.969 INFO    ] 2026-06-13 08:33:05
[2026-06-13 08:33:06,158.158 INFO    ] 2026-06-13 08:33:06
[2026-06-13 08:33:06,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:33:06,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:33:06,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:33:06,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:33:06,601.601 INFO    ] time= 13/06/2026 08:33:06
[2026-06-13 08:33:06,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:33:06,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:33:06,804.804 INFO    ] No existing commands found in stream
[2026-06-13 08:33:11,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:33:11,817.817 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 08:33:13,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:33:13,818.818 INFO    ] Checking for system updates...
[2026-06-13 08:33:13,856.856 INFO    ] 200
[2026-06-13 08:33:13,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:13,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:13,918.918 INFO    ] No update needed
[2026-06-13 08:33:13,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:13,956.956 INFO    ] 200
[2026-06-13 08:33:13,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:14,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:14,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:14,049.049 INFO    ] No camera update needed
[2026-06-13 08:33:14,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:14,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:14,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:14,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:16,105.105 INFO    ] ================================================
[2026-06-13 08:33:16,121.121 INFO    ] Launching Daemon at Sat Jun 13 08:33:16 IST 2026
[2026-06-13 08:33:16,133.133 INFO    ] ================================================
[2026-06-13 08:33:16,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:33:16
[2026-06-13 08:33:17,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:33:17,305.305 INFO    ] Initializing speech engine...
[2026-06-13 08:33:17,311.311 INFO    ] 2026-06-13 08:33:17
[2026-06-13 08:33:17,533.533 INFO    ] 2026-06-13 08:33:17
[2026-06-13 08:33:17,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:33:17,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:33:17,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:33:17,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:33:17,968.968 INFO    ] time= 13/06/2026 08:33:17
[2026-06-13 08:33:17,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:33:18,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:33:18,080.080 INFO    ] No existing commands found in stream
[2026-06-13 08:33:23,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:33:23,093.093 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 08:33:24,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:33:24,590.590 INFO    ] Checking for system updates...
[2026-06-13 08:33:24,611.611 INFO    ] 200
[2026-06-13 08:33:24,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:24,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:33:24,644.644 INFO    ] No update needed
[2026-06-13 08:33:24,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:24,665.665 INFO    ] 200
[2026-06-13 08:33:24,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:24,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:24,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:33:24,734.734 INFO    ] No camera update needed
[2026-06-13 08:33:24,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:24,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:24,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:24,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:26,782.782 INFO    ] ================================================
[2026-06-13 08:33:26,798.798 INFO    ] Launching Daemon at Sat Jun 13 08:33:26 IST 2026
[2026-06-13 08:33:26,809.809 INFO    ] ================================================
[2026-06-13 08:33:27,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:33:27
[2026-06-13 08:33:27,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:33:27,596.596 INFO    ] Initializing speech engine...
[2026-06-13 08:33:27,608.608 INFO    ] 2026-06-13 08:33:27
[2026-06-13 08:33:27,817.817 INFO    ] 2026-06-13 08:33:27
[2026-06-13 08:33:27,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:33:28,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:33:28,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:33:28,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:33:28,215.215 INFO    ] time= 13/06/2026 08:33:28
[2026-06-13 08:33:28,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:33:28,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:33:28,337.337 INFO    ] No existing commands found in stream
[2026-06-13 08:33:33,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:33:33,349.349 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 08:33:35,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:33:35,985.985 INFO    ] Checking for system updates...
[2026-06-13 08:33:36,006.006 INFO    ] 200
[2026-06-13 08:33:36,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:36,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:36,041.041 INFO    ] No update needed
[2026-06-13 08:33:36,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:36,061.061 INFO    ] 200
[2026-06-13 08:33:36,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:36,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:36,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:36,133.133 INFO    ] No camera update needed
[2026-06-13 08:33:36,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:36,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:36,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:36,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:38,182.182 INFO    ] ================================================
[2026-06-13 08:33:38,198.198 INFO    ] Launching Daemon at Sat Jun 13 08:33:38 IST 2026
[2026-06-13 08:33:38,210.210 INFO    ] ================================================
[2026-06-13 08:33:38,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:33:38
[2026-06-13 08:33:38,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:33:39,012.012 INFO    ] Initializing speech engine...
[2026-06-13 08:33:39,017.017 INFO    ] 2026-06-13 08:33:39
[2026-06-13 08:33:39,220.220 INFO    ] 2026-06-13 08:33:39
[2026-06-13 08:33:39,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:33:39,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:33:39,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:33:39,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:33:39,613.613 INFO    ] time= 13/06/2026 08:33:39
[2026-06-13 08:33:39,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:33:39,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:33:39,734.734 INFO    ] No existing commands found in stream
[2026-06-13 08:33:44,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:33:44,751.751 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 08:33:47,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:33:47,546.546 INFO    ] Checking for system updates...
[2026-06-13 08:33:47,567.567 INFO    ] 200
[2026-06-13 08:33:47,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:47,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:33:47,604.604 INFO    ] No update needed
[2026-06-13 08:33:47,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:47,627.627 INFO    ] 200
[2026-06-13 08:33:47,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:47,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:47,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:47,687.687 INFO    ] No camera update needed
[2026-06-13 08:33:47,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:47,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:47,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:47,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:49,737.737 INFO    ] ================================================
[2026-06-13 08:33:49,753.753 INFO    ] Launching Daemon at Sat Jun 13 08:33:49 IST 2026
[2026-06-13 08:33:49,764.764 INFO    ] ================================================
[2026-06-13 08:33:50,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:33:50
[2026-06-13 08:33:50,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:33:50,550.550 INFO    ] Initializing speech engine...
[2026-06-13 08:33:50,564.564 INFO    ] 2026-06-13 08:33:50
[2026-06-13 08:33:50,785.785 INFO    ] 2026-06-13 08:33:50
[2026-06-13 08:33:50,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:33:50,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:33:51,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:33:51,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:33:51,222.222 INFO    ] time= 13/06/2026 08:33:51
[2026-06-13 08:33:51,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:33:51,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:33:51,351.351 INFO    ] No existing commands found in stream
[2026-06-13 08:33:56,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:33:56,364.364 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 08:33:57,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:33:57,782.782 INFO    ] Checking for system updates...
[2026-06-13 08:33:57,803.803 INFO    ] 200
[2026-06-13 08:33:57,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:57,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:57,836.836 INFO    ] No update needed
[2026-06-13 08:33:57,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 08:33:57,857.857 INFO    ] 200
[2026-06-13 08:33:57,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:33:57,882.882 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:33:57,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:33:57,925.925 INFO    ] No camera update needed
[2026-06-13 08:33:57,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:33:57,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:33:57,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:33:57,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:33:59,975.975 INFO    ] ================================================
[2026-06-13 08:33:59,991.991 INFO    ] Launching Daemon at Sat Jun 13 08:33:59 IST 2026
[2026-06-13 08:34:00,002.002 INFO    ] ================================================
[2026-06-13 08:34:00,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:34:00
[2026-06-13 08:34:00,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:34:00,784.784 INFO    ] Initializing speech engine...
[2026-06-13 08:34:00,789.789 INFO    ] 2026-06-13 08:34:00
[2026-06-13 08:34:01,020.020 INFO    ] 2026-06-13 08:34:00
[2026-06-13 08:34:01,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:34:01,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:34:01,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:34:01,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:34:01,865.865 INFO    ] time= 13/06/2026 08:34:01
[2026-06-13 08:34:01,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:34:01,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:34:01,913.913 INFO    ] No existing commands found in stream
[2026-06-13 08:34:06,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:34:06,925.925 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 08:34:10,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:34:10,682.682 INFO    ] Checking for system updates...
[2026-06-13 08:34:10,703.703 INFO    ] 200
[2026-06-13 08:34:10,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:10,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:34:10,738.738 INFO    ] No update needed
[2026-06-13 08:34:10,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 08:34:10,759.759 INFO    ] 200
[2026-06-13 08:34:10,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:10,785.785 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:34:10,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:34:10,926.926 INFO    ] No camera update needed
[2026-06-13 08:34:10,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:34:10,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:34:10,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:34:10,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:34:12,974.974 INFO    ] ================================================
[2026-06-13 08:34:12,990.990 INFO    ] Launching Daemon at Sat Jun 13 08:34:12 IST 2026
[2026-06-13 08:34:13,002.002 INFO    ] ================================================
[2026-06-13 08:34:13,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:34:13
[2026-06-13 08:34:13,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:34:13,796.796 INFO    ] Initializing speech engine...
[2026-06-13 08:34:13,806.806 INFO    ] 2026-06-13 08:34:13
[2026-06-13 08:34:14,010.010 INFO    ] 2026-06-13 08:34:13
[2026-06-13 08:34:14,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:34:14,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:34:14,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:34:14,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:34:14,414.414 INFO    ] time= 13/06/2026 08:34:14
[2026-06-13 08:34:14,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:34:14,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:34:14,525.525 INFO    ] No existing commands found in stream
[2026-06-13 08:34:19,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:34:19,542.542 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 08:34:20,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:34:20,859.859 INFO    ] Checking for system updates...
[2026-06-13 08:34:20,880.880 INFO    ] 200
[2026-06-13 08:34:20,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:20,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:34:20,914.914 INFO    ] No update needed
[2026-06-13 08:34:20,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 08:34:20,935.935 INFO    ] 200
[2026-06-13 08:34:20,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:20,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:34:20,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:34:20,999.999 INFO    ] No camera update needed
[2026-06-13 08:34:21,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:34:21,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:34:21,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:34:21,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:34:23,050.050 INFO    ] ================================================
[2026-06-13 08:34:23,066.066 INFO    ] Launching Daemon at Sat Jun 13 08:34:23 IST 2026
[2026-06-13 08:34:23,078.078 INFO    ] ================================================
[2026-06-13 08:34:23,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:34:23
[2026-06-13 08:34:23,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:34:23,973.973 INFO    ] Initializing speech engine...
[2026-06-13 08:34:23,976.976 INFO    ] 2026-06-13 08:34:23
[2026-06-13 08:34:24,188.188 INFO    ] 2026-06-13 08:34:24
[2026-06-13 08:34:24,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:34:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:34:24,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:34:24,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:34:24,596.596 INFO    ] time= 13/06/2026 08:34:24
[2026-06-13 08:34:24,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:34:24,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:34:24,718.718 INFO    ] No existing commands found in stream
[2026-06-13 08:34:29,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:34:29,733.733 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 08:34:33,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:34:33,299.299 INFO    ] Checking for system updates...
[2026-06-13 08:34:33,341.341 INFO    ] 200
[2026-06-13 08:34:33,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:33,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:34:33,407.407 INFO    ] No update needed
[2026-06-13 08:34:33,410.410 INFO    ] Checking for camera pi updates...
[2026-06-13 08:34:33,441.441 INFO    ] 200
[2026-06-13 08:34:33,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:33,467.467 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:34:33,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:34:33,504.504 INFO    ] No camera update needed
[2026-06-13 08:34:33,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:34:33,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:34:33,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:34:33,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:34:35,555.555 INFO    ] ================================================
[2026-06-13 08:34:35,571.571 INFO    ] Launching Daemon at Sat Jun 13 08:34:35 IST 2026
[2026-06-13 08:34:35,583.583 INFO    ] ================================================
[2026-06-13 08:34:35,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:34:35
[2026-06-13 08:34:36,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:34:36,375.375 INFO    ] Initializing speech engine...
[2026-06-13 08:34:36,381.381 INFO    ] 2026-06-13 08:34:36
[2026-06-13 08:34:36,584.584 INFO    ] 2026-06-13 08:34:36
[2026-06-13 08:34:36,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:34:36,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:34:36,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:34:36,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:34:36,994.994 INFO    ] time= 13/06/2026 08:34:36
[2026-06-13 08:34:37,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:34:37,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:34:37,098.098 INFO    ] No existing commands found in stream
[2026-06-13 08:34:42,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:34:42,111.111 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 08:34:45,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:34:45,206.206 INFO    ] Checking for system updates...
[2026-06-13 08:34:45,226.226 INFO    ] 200
[2026-06-13 08:34:45,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:45,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:34:45,260.260 INFO    ] No update needed
[2026-06-13 08:34:45,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 08:34:45,282.282 INFO    ] 200
[2026-06-13 08:34:45,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:45,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:34:45,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:34:45,361.361 INFO    ] No camera update needed
[2026-06-13 08:34:45,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:34:45,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:34:45,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:34:45,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:34:47,411.411 INFO    ] ================================================
[2026-06-13 08:34:47,426.426 INFO    ] Launching Daemon at Sat Jun 13 08:34:47 IST 2026
[2026-06-13 08:34:47,437.437 INFO    ] ================================================
[2026-06-13 08:34:47,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:34:47
[2026-06-13 08:34:48,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:34:48,294.294 INFO    ] Initializing speech engine...
[2026-06-13 08:34:48,300.300 INFO    ] 2026-06-13 08:34:48
[2026-06-13 08:34:48,509.509 INFO    ] 2026-06-13 08:34:48
[2026-06-13 08:34:48,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:34:48,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:34:48,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:34:48,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:34:48,924.924 INFO    ] time= 13/06/2026 08:34:48
[2026-06-13 08:34:48,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:34:49,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:34:49,180.180 INFO    ] No existing commands found in stream
[2026-06-13 08:34:54,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:34:54,213.213 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 08:34:57,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:34:57,470.470 INFO    ] Checking for system updates...
[2026-06-13 08:34:57,491.491 INFO    ] 200
[2026-06-13 08:34:57,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:57,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:34:57,525.525 INFO    ] No update needed
[2026-06-13 08:34:57,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 08:34:57,545.545 INFO    ] 200
[2026-06-13 08:34:57,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:34:57,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:34:57,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:34:57,612.612 INFO    ] No camera update needed
[2026-06-13 08:34:57,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:34:57,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:34:57,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:34:57,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:34:59,660.660 INFO    ] ================================================
[2026-06-13 08:34:59,676.676 INFO    ] Launching Daemon at Sat Jun 13 08:34:59 IST 2026
[2026-06-13 08:34:59,687.687 INFO    ] ================================================
[2026-06-13 08:35:00,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:00
[2026-06-13 08:35:00,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:00,813.813 INFO    ] Initializing speech engine...
[2026-06-13 08:35:00,821.821 INFO    ] 2026-06-13 08:35:00
[2026-06-13 08:35:01,090.090 INFO    ] 2026-06-13 08:35:01
[2026-06-13 08:35:01,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:01,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:01,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:01,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:01,540.540 INFO    ] time= 13/06/2026 08:35:01
[2026-06-13 08:35:01,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:01,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:01,690.690 INFO    ] No existing commands found in stream
[2026-06-13 08:35:06,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:35:06,708.708 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 08:35:10,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:35:10,165.165 INFO    ] Checking for system updates...
[2026-06-13 08:35:10,186.186 INFO    ] 200
[2026-06-13 08:35:10,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:10,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:35:10,219.219 INFO    ] No update needed
[2026-06-13 08:35:10,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 08:35:10,240.240 INFO    ] 200
[2026-06-13 08:35:10,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:10,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:35:10,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:35:10,301.301 INFO    ] No camera update needed
[2026-06-13 08:35:10,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:35:10,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:35:10,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:35:10,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:35:12,352.352 INFO    ] ================================================
[2026-06-13 08:35:12,368.368 INFO    ] Launching Daemon at Sat Jun 13 08:35:12 IST 2026
[2026-06-13 08:35:12,379.379 INFO    ] ================================================
[2026-06-13 08:35:12,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:12
[2026-06-13 08:35:13,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:13,205.205 INFO    ] Initializing speech engine...
[2026-06-13 08:35:13,210.210 INFO    ] 2026-06-13 08:35:13
[2026-06-13 08:35:13,415.415 INFO    ] 2026-06-13 08:35:13
[2026-06-13 08:35:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:13,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:13,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:13,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:13,825.825 INFO    ] time= 13/06/2026 08:35:13
[2026-06-13 08:35:13,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:13,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:13,928.928 INFO    ] No existing commands found in stream
[2026-06-13 08:35:18,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:35:18,942.942 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 08:35:20,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:35:20,946.946 INFO    ] Checking for system updates...
[2026-06-13 08:35:20,967.967 INFO    ] 200
[2026-06-13 08:35:20,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:21,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:21,002.002 INFO    ] No update needed
[2026-06-13 08:35:21,003.003 INFO    ] Checking for camera pi updates...
[2026-06-13 08:35:21,023.023 INFO    ] 200
[2026-06-13 08:35:21,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:21,048.048 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:35:21,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:21,087.087 INFO    ] No camera update needed
[2026-06-13 08:35:21,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:35:21,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:35:21,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:35:21,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:35:23,141.141 INFO    ] ================================================
[2026-06-13 08:35:23,157.157 INFO    ] Launching Daemon at Sat Jun 13 08:35:23 IST 2026
[2026-06-13 08:35:23,169.169 INFO    ] ================================================
[2026-06-13 08:35:23,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:23
[2026-06-13 08:35:23,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:24,024.024 INFO    ] Initializing speech engine...
[2026-06-13 08:35:24,030.030 INFO    ] 2026-06-13 08:35:24
[2026-06-13 08:35:24,240.240 INFO    ] 2026-06-13 08:35:24
[2026-06-13 08:35:24,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:24,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:24,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:24,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:24,658.658 INFO    ] time= 13/06/2026 08:35:24
[2026-06-13 08:35:24,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:24,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:24,760.760 INFO    ] No existing commands found in stream
[2026-06-13 08:35:29,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:35:29,773.773 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 08:35:33,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:35:33,722.722 INFO    ] Checking for system updates...
[2026-06-13 08:35:33,744.744 INFO    ] 200
[2026-06-13 08:35:33,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:33,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:33,779.779 INFO    ] No update needed
[2026-06-13 08:35:33,780.780 INFO    ] Checking for camera pi updates...
[2026-06-13 08:35:33,801.801 INFO    ] 200
[2026-06-13 08:35:33,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:33,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:35:33,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:33,867.867 INFO    ] No camera update needed
[2026-06-13 08:35:33,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:35:33,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:35:33,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:35:33,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:35:35,916.916 INFO    ] ================================================
[2026-06-13 08:35:35,932.932 INFO    ] Launching Daemon at Sat Jun 13 08:35:35 IST 2026
[2026-06-13 08:35:35,944.944 INFO    ] ================================================
[2026-06-13 08:35:36,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:36
[2026-06-13 08:35:36,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:36,808.808 INFO    ] Initializing speech engine...
[2026-06-13 08:35:36,812.812 INFO    ] 2026-06-13 08:35:36
[2026-06-13 08:35:37,018.018 INFO    ] 2026-06-13 08:35:37
[2026-06-13 08:35:37,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:37,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:37,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:37,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:37,436.436 INFO    ] time= 13/06/2026 08:35:37
[2026-06-13 08:35:37,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:37,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:37,537.537 INFO    ] No existing commands found in stream
[2026-06-13 08:35:42,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:35:42,550.550 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 08:35:43,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:35:43,556.556 INFO    ] Checking for system updates...
[2026-06-13 08:35:43,576.576 INFO    ] 200
[2026-06-13 08:35:43,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:43,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:43,610.610 INFO    ] No update needed
[2026-06-13 08:35:43,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 08:35:43,631.631 INFO    ] 200
[2026-06-13 08:35:43,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:43,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:35:43,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:35:43,698.698 INFO    ] No camera update needed
[2026-06-13 08:35:43,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:35:43,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:35:43,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:35:43,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:35:45,747.747 INFO    ] ================================================
[2026-06-13 08:35:45,763.763 INFO    ] Launching Daemon at Sat Jun 13 08:35:45 IST 2026
[2026-06-13 08:35:45,774.774 INFO    ] ================================================
[2026-06-13 08:35:46,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:46
[2026-06-13 08:35:46,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:46,653.653 INFO    ] Initializing speech engine...
[2026-06-13 08:35:46,658.658 INFO    ] 2026-06-13 08:35:46
[2026-06-13 08:35:46,868.868 INFO    ] 2026-06-13 08:35:46
[2026-06-13 08:35:46,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:47,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:47,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:47,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:47,279.279 INFO    ] time= 13/06/2026 08:35:47
[2026-06-13 08:35:47,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:47,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:47,392.392 INFO    ] No existing commands found in stream
[2026-06-13 08:35:52,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:35:52,405.405 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 08:35:54,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:35:54,743.743 INFO    ] Checking for system updates...
[2026-06-13 08:35:54,765.765 INFO    ] 200
[2026-06-13 08:35:54,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:54,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:35:54,800.800 INFO    ] No update needed
[2026-06-13 08:35:54,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 08:35:54,825.825 INFO    ] 200
[2026-06-13 08:35:54,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:35:54,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:35:54,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:35:54,885.885 INFO    ] No camera update needed
[2026-06-13 08:35:54,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:35:54,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:35:54,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:35:54,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:35:56,934.934 INFO    ] ================================================
[2026-06-13 08:35:56,950.950 INFO    ] Launching Daemon at Sat Jun 13 08:35:56 IST 2026
[2026-06-13 08:35:56,962.962 INFO    ] ================================================
[2026-06-13 08:35:57,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:35:57
[2026-06-13 08:35:57,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:35:57,824.824 INFO    ] Initializing speech engine...
[2026-06-13 08:35:57,829.829 INFO    ] 2026-06-13 08:35:57
[2026-06-13 08:35:58,036.036 INFO    ] 2026-06-13 08:35:58
[2026-06-13 08:35:58,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:35:58,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:35:58,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:35:58,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:35:58,456.456 INFO    ] time= 13/06/2026 08:35:58
[2026-06-13 08:35:58,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:35:58,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:35:58,557.557 INFO    ] No existing commands found in stream
[2026-06-13 08:36:03,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:03,572.572 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 08:36:05,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:36:05,853.853 INFO    ] Checking for system updates...
[2026-06-13 08:36:05,874.874 INFO    ] 200
[2026-06-13 08:36:05,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:05,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:05,908.908 INFO    ] No update needed
[2026-06-13 08:36:05,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 08:36:05,930.930 INFO    ] 200
[2026-06-13 08:36:05,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:05,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:36:05,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:05,997.997 INFO    ] No camera update needed
[2026-06-13 08:36:05,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:36:06,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:36:06,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:36:06,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:36:08,048.048 INFO    ] ================================================
[2026-06-13 08:36:08,063.063 INFO    ] Launching Daemon at Sat Jun 13 08:36:08 IST 2026
[2026-06-13 08:36:08,073.073 INFO    ] ================================================
[2026-06-13 08:36:08,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:36:08
[2026-06-13 08:36:08,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:36:08,915.915 INFO    ] Initializing speech engine...
[2026-06-13 08:36:08,926.926 INFO    ] 2026-06-13 08:36:08
[2026-06-13 08:36:09,136.136 INFO    ] 2026-06-13 08:36:09
[2026-06-13 08:36:09,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:36:09,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:36:09,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:36:09,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:36:09,493.493 INFO    ] time= 13/06/2026 08:36:09
[2026-06-13 08:36:09,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:36:09,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:36:09,710.710 INFO    ] No existing commands found in stream
[2026-06-13 08:36:14,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:14,724.724 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 08:36:17,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:36:17,704.704 INFO    ] Checking for system updates...
[2026-06-13 08:36:17,725.725 INFO    ] 200
[2026-06-13 08:36:17,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:17,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:17,759.759 INFO    ] No update needed
[2026-06-13 08:36:17,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 08:36:17,781.781 INFO    ] 200
[2026-06-13 08:36:17,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:17,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:36:17,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:17,959.959 INFO    ] No camera update needed
[2026-06-13 08:36:17,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:36:17,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:36:17,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:36:17,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:36:20,009.009 INFO    ] ================================================
[2026-06-13 08:36:20,025.025 INFO    ] Launching Daemon at Sat Jun 13 08:36:20 IST 2026
[2026-06-13 08:36:20,035.035 INFO    ] ================================================
[2026-06-13 08:36:20,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:36:20
[2026-06-13 08:36:20,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:36:20,803.803 INFO    ] Initializing speech engine...
[2026-06-13 08:36:20,811.811 INFO    ] 2026-06-13 08:36:20
[2026-06-13 08:36:21,024.024 INFO    ] 2026-06-13 08:36:20
[2026-06-13 08:36:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:36:21,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:36:21,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:36:21,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:36:21,438.438 INFO    ] time= 13/06/2026 08:36:21
[2026-06-13 08:36:21,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:36:21,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:36:21,543.543 INFO    ] No existing commands found in stream
[2026-06-13 08:36:26,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:26,555.555 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 08:36:27,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:36:27,560.560 INFO    ] Checking for system updates...
[2026-06-13 08:36:27,581.581 INFO    ] 200
[2026-06-13 08:36:27,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:27,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:27,614.614 INFO    ] No update needed
[2026-06-13 08:36:27,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 08:36:27,635.635 INFO    ] 200
[2026-06-13 08:36:27,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:27,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:36:27,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:27,703.703 INFO    ] No camera update needed
[2026-06-13 08:36:27,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:36:27,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:36:27,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:36:27,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:36:29,753.753 INFO    ] ================================================
[2026-06-13 08:36:29,768.768 INFO    ] Launching Daemon at Sat Jun 13 08:36:29 IST 2026
[2026-06-13 08:36:29,778.778 INFO    ] ================================================
[2026-06-13 08:36:30,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:36:30
[2026-06-13 08:36:30,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:36:30,752.752 INFO    ] Initializing speech engine...
[2026-06-13 08:36:30,758.758 INFO    ] 2026-06-13 08:36:30
[2026-06-13 08:36:31,061.061 INFO    ] 2026-06-13 08:36:31
[2026-06-13 08:36:31,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:36:31,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:36:31,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:36:31,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:36:31,425.425 INFO    ] time= 13/06/2026 08:36:31
[2026-06-13 08:36:31,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:36:31,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:36:31,512.512 INFO    ] No existing commands found in stream
[2026-06-13 08:36:36,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:36,525.525 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 08:36:37,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:36:37,706.706 INFO    ] Checking for system updates...
[2026-06-13 08:36:37,727.727 INFO    ] 200
[2026-06-13 08:36:37,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:37,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:37,761.761 INFO    ] No update needed
[2026-06-13 08:36:37,762.762 INFO    ] Checking for camera pi updates...
[2026-06-13 08:36:37,781.781 INFO    ] 200
[2026-06-13 08:36:37,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:37,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:36:37,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:37,844.844 INFO    ] No camera update needed
[2026-06-13 08:36:37,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:36:37,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:36:37,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:36:37,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:36:39,890.890 INFO    ] ================================================
[2026-06-13 08:36:39,906.906 INFO    ] Launching Daemon at Sat Jun 13 08:36:39 IST 2026
[2026-06-13 08:36:39,917.917 INFO    ] ================================================
[2026-06-13 08:36:40,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:36:40
[2026-06-13 08:36:40,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:36:40,740.740 INFO    ] Initializing speech engine...
[2026-06-13 08:36:40,745.745 INFO    ] 2026-06-13 08:36:40
[2026-06-13 08:36:40,947.947 INFO    ] 2026-06-13 08:36:40
[2026-06-13 08:36:40,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:36:41,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:36:41,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:36:41,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:36:41,332.332 INFO    ] time= 13/06/2026 08:36:41
[2026-06-13 08:36:41,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:36:41,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:36:41,579.579 INFO    ] No existing commands found in stream
[2026-06-13 08:36:47,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:47,599.599 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 08:36:49,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:36:49,441.441 INFO    ] Checking for system updates...
[2026-06-13 08:36:49,462.462 INFO    ] 200
[2026-06-13 08:36:49,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:49,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:36:49,497.497 INFO    ] No update needed
[2026-06-13 08:36:49,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 08:36:49,519.519 INFO    ] 200
[2026-06-13 08:36:49,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:36:49,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:36:49,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:36:49,580.580 INFO    ] No camera update needed
[2026-06-13 08:36:49,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:36:49,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:36:49,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:36:49,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:36:51,626.626 INFO    ] ================================================
[2026-06-13 08:36:51,642.642 INFO    ] Launching Daemon at Sat Jun 13 08:36:51 IST 2026
[2026-06-13 08:36:51,653.653 INFO    ] ================================================
[2026-06-13 08:36:52,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:36:52
[2026-06-13 08:36:52,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:36:52,562.562 INFO    ] Initializing speech engine...
[2026-06-13 08:36:52,571.571 INFO    ] 2026-06-13 08:36:52
[2026-06-13 08:36:52,897.897 INFO    ] 2026-06-13 08:36:52
[2026-06-13 08:36:52,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:36:53,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:36:53,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:36:53,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:36:53,343.343 INFO    ] time= 13/06/2026 08:36:53
[2026-06-13 08:36:53,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:36:53,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:36:53,577.577 INFO    ] No existing commands found in stream
[2026-06-13 08:36:58,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:36:58,600.600 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 08:37:00,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:37:00,709.709 INFO    ] Checking for system updates...
[2026-06-13 08:37:00,730.730 INFO    ] 200
[2026-06-13 08:37:00,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:00,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:00,764.764 INFO    ] No update needed
[2026-06-13 08:37:00,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:00,785.785 INFO    ] 200
[2026-06-13 08:37:00,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:00,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:00,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:00,851.851 INFO    ] No camera update needed
[2026-06-13 08:37:00,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:00,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:00,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:00,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:02,889.889 INFO    ] ================================================
[2026-06-13 08:37:02,898.898 INFO    ] Launching Daemon at Sat Jun 13 08:37:02 IST 2026
[2026-06-13 08:37:02,904.904 INFO    ] ================================================
[2026-06-13 08:37:03,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:03
[2026-06-13 08:37:03,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:03,914.914 INFO    ] Initializing speech engine...
[2026-06-13 08:37:03,922.922 INFO    ] 2026-06-13 08:37:03
[2026-06-13 08:37:04,214.214 INFO    ] 2026-06-13 08:37:04
[2026-06-13 08:37:04,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:04,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:04,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:04,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:04,664.664 INFO    ] time= 13/06/2026 08:37:04
[2026-06-13 08:37:04,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:04,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:04,828.828 INFO    ] No existing commands found in stream
[2026-06-13 08:37:09,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:37:09,870.870 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 08:37:10,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:37:10,977.977 INFO    ] Checking for system updates...
[2026-06-13 08:37:11,000.000 INFO    ] 200
[2026-06-13 08:37:11,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:11,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:11,034.034 INFO    ] No update needed
[2026-06-13 08:37:11,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:11,055.055 INFO    ] 200
[2026-06-13 08:37:11,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:11,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:11,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:11,122.122 INFO    ] No camera update needed
[2026-06-13 08:37:11,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:11,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:11,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:11,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:13,170.170 INFO    ] ================================================
[2026-06-13 08:37:13,185.185 INFO    ] Launching Daemon at Sat Jun 13 08:37:13 IST 2026
[2026-06-13 08:37:13,196.196 INFO    ] ================================================
[2026-06-13 08:37:13,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:13
[2026-06-13 08:37:13,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:13,998.998 INFO    ] Initializing speech engine...
[2026-06-13 08:37:14,007.007 INFO    ] 2026-06-13 08:37:13
[2026-06-13 08:37:14,213.213 INFO    ] 2026-06-13 08:37:14
[2026-06-13 08:37:14,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:14,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:14,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:14,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:14,628.628 INFO    ] time= 13/06/2026 08:37:14
[2026-06-13 08:37:14,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:14,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:14,724.724 INFO    ] No existing commands found in stream
[2026-06-13 08:37:19,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:37:19,736.736 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 08:37:21,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:37:21,283.283 INFO    ] Checking for system updates...
[2026-06-13 08:37:21,305.305 INFO    ] 200
[2026-06-13 08:37:21,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:21,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:21,338.338 INFO    ] No update needed
[2026-06-13 08:37:21,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:21,359.359 INFO    ] 200
[2026-06-13 08:37:21,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:21,384.384 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:21,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:21,423.423 INFO    ] No camera update needed
[2026-06-13 08:37:21,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:21,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:21,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:21,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:23,469.469 INFO    ] ================================================
[2026-06-13 08:37:23,484.484 INFO    ] Launching Daemon at Sat Jun 13 08:37:23 IST 2026
[2026-06-13 08:37:23,495.495 INFO    ] ================================================
[2026-06-13 08:37:23,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:23
[2026-06-13 08:37:24,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:24,305.305 INFO    ] Initializing speech engine...
[2026-06-13 08:37:24,309.309 INFO    ] 2026-06-13 08:37:24
[2026-06-13 08:37:24,503.503 INFO    ] 2026-06-13 08:37:24
[2026-06-13 08:37:24,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:24,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:24,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:24,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:24,949.949 INFO    ] time= 13/06/2026 08:37:24
[2026-06-13 08:37:25,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:25,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:25,107.107 INFO    ] No existing commands found in stream
[2026-06-13 08:37:30,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:37:30,121.121 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 08:37:32,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:37:32,052.052 INFO    ] Checking for system updates...
[2026-06-13 08:37:32,076.076 INFO    ] 200
[2026-06-13 08:37:32,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:32,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:37:32,117.117 INFO    ] No update needed
[2026-06-13 08:37:32,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:32,142.142 INFO    ] 200
[2026-06-13 08:37:32,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:32,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:32,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:37:32,212.212 INFO    ] No camera update needed
[2026-06-13 08:37:32,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:32,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:32,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:32,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:34,265.265 INFO    ] ================================================
[2026-06-13 08:37:34,281.281 INFO    ] Launching Daemon at Sat Jun 13 08:37:34 IST 2026
[2026-06-13 08:37:34,291.291 INFO    ] ================================================
[2026-06-13 08:37:34,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:34
[2026-06-13 08:37:34,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:35,117.117 INFO    ] Initializing speech engine...
[2026-06-13 08:37:35,123.123 INFO    ] 2026-06-13 08:37:35
[2026-06-13 08:37:35,327.327 INFO    ] 2026-06-13 08:37:35
[2026-06-13 08:37:35,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:35,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:35,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:35,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:35,740.740 INFO    ] time= 13/06/2026 08:37:35
[2026-06-13 08:37:35,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:35,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:35,837.837 INFO    ] No existing commands found in stream
[2026-06-13 08:37:40,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:37:40,851.851 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 08:37:41,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:37:41,985.985 INFO    ] Checking for system updates...
[2026-06-13 08:37:42,006.006 INFO    ] 200
[2026-06-13 08:37:42,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:42,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:42,040.040 INFO    ] No update needed
[2026-06-13 08:37:42,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:42,061.061 INFO    ] 200
[2026-06-13 08:37:42,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:42,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:42,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:42,109.109 INFO    ] No camera update needed
[2026-06-13 08:37:42,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:42,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:42,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:42,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:44,160.160 INFO    ] ================================================
[2026-06-13 08:37:44,175.175 INFO    ] Launching Daemon at Sat Jun 13 08:37:44 IST 2026
[2026-06-13 08:37:44,186.186 INFO    ] ================================================
[2026-06-13 08:37:44,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:44
[2026-06-13 08:37:44,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:44,964.964 INFO    ] Initializing speech engine...
[2026-06-13 08:37:44,972.972 INFO    ] 2026-06-13 08:37:44
[2026-06-13 08:37:45,196.196 INFO    ] 2026-06-13 08:37:45
[2026-06-13 08:37:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:45,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:45,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:45,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:45,598.598 INFO    ] time= 13/06/2026 08:37:45
[2026-06-13 08:37:45,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:45,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:45,763.763 INFO    ] No existing commands found in stream
[2026-06-13 08:37:50,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:37:50,777.777 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 08:37:51,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:37:51,411.411 INFO    ] Checking for system updates...
[2026-06-13 08:37:51,432.432 INFO    ] 200
[2026-06-13 08:37:51,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:51,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:51,468.468 INFO    ] No update needed
[2026-06-13 08:37:51,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 08:37:51,489.489 INFO    ] 200
[2026-06-13 08:37:51,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:37:51,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:37:51,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:37:51,555.555 INFO    ] No camera update needed
[2026-06-13 08:37:51,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:37:51,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:37:51,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:37:51,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:37:53,603.603 INFO    ] ================================================
[2026-06-13 08:37:53,618.618 INFO    ] Launching Daemon at Sat Jun 13 08:37:53 IST 2026
[2026-06-13 08:37:53,629.629 INFO    ] ================================================
[2026-06-13 08:37:53,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:37:53
[2026-06-13 08:37:54,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:37:54,741.741 INFO    ] Initializing speech engine...
[2026-06-13 08:37:54,750.750 INFO    ] 2026-06-13 08:37:54
[2026-06-13 08:37:55,012.012 INFO    ] 2026-06-13 08:37:55
[2026-06-13 08:37:55,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:37:55,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:37:55,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:37:55,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:37:55,458.458 INFO    ] time= 13/06/2026 08:37:55
[2026-06-13 08:37:55,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:37:55,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:37:55,642.642 INFO    ] No existing commands found in stream
[2026-06-13 08:38:00,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:38:00,680.680 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 08:38:04,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:38:04,364.364 INFO    ] Checking for system updates...
[2026-06-13 08:38:04,385.385 INFO    ] 200
[2026-06-13 08:38:04,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:04,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:04,418.418 INFO    ] No update needed
[2026-06-13 08:38:04,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 08:38:04,440.440 INFO    ] 200
[2026-06-13 08:38:04,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:04,465.465 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:38:04,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:04,510.510 INFO    ] No camera update needed
[2026-06-13 08:38:04,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:38:04,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:38:04,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:38:04,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:38:06,554.554 INFO    ] ================================================
[2026-06-13 08:38:06,569.569 INFO    ] Launching Daemon at Sat Jun 13 08:38:06 IST 2026
[2026-06-13 08:38:06,580.580 INFO    ] ================================================
[2026-06-13 08:38:06,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:38:06
[2026-06-13 08:38:07,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:38:07,381.381 INFO    ] Initializing speech engine...
[2026-06-13 08:38:07,390.390 INFO    ] 2026-06-13 08:38:07
[2026-06-13 08:38:07,595.595 INFO    ] 2026-06-13 08:38:07
[2026-06-13 08:38:07,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:38:07,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:38:07,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:38:07,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:38:08,007.007 INFO    ] time= 13/06/2026 08:38:07
[2026-06-13 08:38:08,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:38:08,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:38:08,128.128 INFO    ] No existing commands found in stream
[2026-06-13 08:38:13,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:38:13,142.142 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 08:38:17,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:38:17,172.172 INFO    ] Checking for system updates...
[2026-06-13 08:38:17,193.193 INFO    ] 200
[2026-06-13 08:38:17,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:17,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:17,228.228 INFO    ] No update needed
[2026-06-13 08:38:17,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 08:38:17,250.250 INFO    ] 200
[2026-06-13 08:38:17,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:17,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:38:17,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:17,316.316 INFO    ] No camera update needed
[2026-06-13 08:38:17,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:38:17,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:38:17,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:38:17,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:38:19,363.363 INFO    ] ================================================
[2026-06-13 08:38:19,378.378 INFO    ] Launching Daemon at Sat Jun 13 08:38:19 IST 2026
[2026-06-13 08:38:19,389.389 INFO    ] ================================================
[2026-06-13 08:38:19,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:38:19
[2026-06-13 08:38:20,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:38:20,227.227 INFO    ] Initializing speech engine...
[2026-06-13 08:38:20,233.233 INFO    ] 2026-06-13 08:38:20
[2026-06-13 08:38:20,442.442 INFO    ] 2026-06-13 08:38:20
[2026-06-13 08:38:20,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:38:20,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:38:20,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:38:20,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:38:20,867.867 INFO    ] time= 13/06/2026 08:38:20
[2026-06-13 08:38:20,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:38:20,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:38:20,965.965 INFO    ] No existing commands found in stream
[2026-06-13 08:38:25,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:38:25,983.983 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 08:38:30,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:38:30,011.011 INFO    ] Checking for system updates...
[2026-06-13 08:38:30,032.032 INFO    ] 200
[2026-06-13 08:38:30,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:30,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:38:30,069.069 INFO    ] No update needed
[2026-06-13 08:38:30,070.070 INFO    ] Checking for camera pi updates...
[2026-06-13 08:38:30,093.093 INFO    ] 200
[2026-06-13 08:38:30,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:30,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:38:30,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:30,260.260 INFO    ] No camera update needed
[2026-06-13 08:38:30,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:38:30,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:38:30,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:38:30,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:38:32,302.302 INFO    ] ================================================
[2026-06-13 08:38:32,312.312 INFO    ] Launching Daemon at Sat Jun 13 08:38:32 IST 2026
[2026-06-13 08:38:32,318.318 INFO    ] ================================================
[2026-06-13 08:38:32,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:38:32
[2026-06-13 08:38:32,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:38:33,118.118 INFO    ] Initializing speech engine...
[2026-06-13 08:38:33,121.121 INFO    ] 2026-06-13 08:38:33
[2026-06-13 08:38:33,354.354 INFO    ] 2026-06-13 08:38:33
[2026-06-13 08:38:33,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:38:33,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:38:33,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:38:33,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:38:33,734.734 INFO    ] time= 13/06/2026 08:38:33
[2026-06-13 08:38:33,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:38:33,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:38:33,872.872 INFO    ] No existing commands found in stream
[2026-06-13 08:38:38,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:38:38,892.892 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 08:38:39,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:38:39,776.776 INFO    ] Checking for system updates...
[2026-06-13 08:38:39,796.796 INFO    ] 200
[2026-06-13 08:38:39,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:39,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:39,830.830 INFO    ] No update needed
[2026-06-13 08:38:39,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 08:38:39,851.851 INFO    ] 200
[2026-06-13 08:38:39,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:39,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:38:39,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:39,923.923 INFO    ] No camera update needed
[2026-06-13 08:38:39,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:38:39,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:38:39,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:38:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:38:41,971.971 INFO    ] ================================================
[2026-06-13 08:38:41,986.986 INFO    ] Launching Daemon at Sat Jun 13 08:38:41 IST 2026
[2026-06-13 08:38:42,997.997 INFO    ] ================================================
[2026-06-13 08:38:42,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:38:42
[2026-06-13 08:38:42,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:38:42,882.882 INFO    ] Initializing speech engine...
[2026-06-13 08:38:42,889.889 INFO    ] 2026-06-13 08:38:42
[2026-06-13 08:38:43,096.096 INFO    ] 2026-06-13 08:38:43
[2026-06-13 08:38:43,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:38:43,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:38:43,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:38:43,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:38:43,369.369 INFO    ] time= 13/06/2026 08:38:43
[2026-06-13 08:38:43,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:38:43,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:38:43,550.550 INFO    ] No existing commands found in stream
[2026-06-13 08:38:48,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:38:48,563.563 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 08:38:52,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:38:52,447.447 INFO    ] Checking for system updates...
[2026-06-13 08:38:52,468.468 INFO    ] 200
[2026-06-13 08:38:52,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:52,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:52,501.501 INFO    ] No update needed
[2026-06-13 08:38:52,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 08:38:52,522.522 INFO    ] 200
[2026-06-13 08:38:52,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:38:52,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:38:52,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:38:52,593.593 INFO    ] No camera update needed
[2026-06-13 08:38:52,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:38:52,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:38:52,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:38:52,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:38:54,639.639 INFO    ] ================================================
[2026-06-13 08:38:54,654.654 INFO    ] Launching Daemon at Sat Jun 13 08:38:54 IST 2026
[2026-06-13 08:38:54,665.665 INFO    ] ================================================
[2026-06-13 08:38:55,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:38:55
[2026-06-13 08:38:55,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:38:55,534.534 INFO    ] Initializing speech engine...
[2026-06-13 08:38:55,539.539 INFO    ] 2026-06-13 08:38:55
[2026-06-13 08:38:55,749.749 INFO    ] 2026-06-13 08:38:55
[2026-06-13 08:38:55,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:38:55,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:38:55,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:38:55,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:38:56,001.001 INFO    ] time= 13/06/2026 08:38:55
[2026-06-13 08:38:56,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:38:56,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:38:56,114.114 INFO    ] No existing commands found in stream
[2026-06-13 08:39:01,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:01,145.145 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 08:39:03,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:39:03,937.937 INFO    ] Checking for system updates...
[2026-06-13 08:39:03,981.981 INFO    ] 200
[2026-06-13 08:39:03,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:04,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:04,043.043 INFO    ] No update needed
[2026-06-13 08:39:04,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:04,084.084 INFO    ] 200
[2026-06-13 08:39:04,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:04,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:04,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:04,175.175 INFO    ] No camera update needed
[2026-06-13 08:39:04,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:04,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:04,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:04,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:06,230.230 INFO    ] ================================================
[2026-06-13 08:39:06,245.245 INFO    ] Launching Daemon at Sat Jun 13 08:39:06 IST 2026
[2026-06-13 08:39:06,256.256 INFO    ] ================================================
[2026-06-13 08:39:06,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:06
[2026-06-13 08:39:06,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:39:07,057.057 INFO    ] Initializing speech engine...
[2026-06-13 08:39:07,061.061 INFO    ] 2026-06-13 08:39:07
[2026-06-13 08:39:07,314.314 INFO    ] 2026-06-13 08:39:07
[2026-06-13 08:39:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:39:07,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:39:07,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:39:07,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:39:07,678.678 INFO    ] time= 13/06/2026 08:39:07
[2026-06-13 08:39:07,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:39:07,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:39:07,760.760 INFO    ] No existing commands found in stream
[2026-06-13 08:39:12,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:12,773.773 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 08:39:14,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:39:14,735.735 INFO    ] Checking for system updates...
[2026-06-13 08:39:14,756.756 INFO    ] 200
[2026-06-13 08:39:14,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:14,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:14,793.793 INFO    ] No update needed
[2026-06-13 08:39:14,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:14,814.814 INFO    ] 200
[2026-06-13 08:39:14,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:14,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:14,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:14,877.877 INFO    ] No camera update needed
[2026-06-13 08:39:14,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:14,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:14,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:14,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:16,926.926 INFO    ] ================================================
[2026-06-13 08:39:16,942.942 INFO    ] Launching Daemon at Sat Jun 13 08:39:16 IST 2026
[2026-06-13 08:39:16,953.953 INFO    ] ================================================
[2026-06-13 08:39:17,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:17
[2026-06-13 08:39:17,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:39:17,735.735 INFO    ] Initializing speech engine...
[2026-06-13 08:39:17,743.743 INFO    ] 2026-06-13 08:39:17
[2026-06-13 08:39:17,968.968 INFO    ] 2026-06-13 08:39:17
[2026-06-13 08:39:17,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:39:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:39:18,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:39:18,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:39:18,350.350 INFO    ] time= 13/06/2026 08:39:18
[2026-06-13 08:39:18,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:39:18,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:39:18,528.528 INFO    ] No existing commands found in stream
[2026-06-13 08:39:23,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:23,540.540 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 08:39:25,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:39:25,157.157 INFO    ] Checking for system updates...
[2026-06-13 08:39:25,197.197 INFO    ] 200
[2026-06-13 08:39:25,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:25,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:39:25,261.261 INFO    ] No update needed
[2026-06-13 08:39:25,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:25,298.298 INFO    ] 200
[2026-06-13 08:39:25,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:25,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:25,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:39:25,399.399 INFO    ] No camera update needed
[2026-06-13 08:39:25,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:25,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:25,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:25,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:27,457.457 INFO    ] ================================================
[2026-06-13 08:39:27,473.473 INFO    ] Launching Daemon at Sat Jun 13 08:39:27 IST 2026
[2026-06-13 08:39:27,484.484 INFO    ] ================================================
[2026-06-13 08:39:27,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:27
[2026-06-13 08:39:28,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:39:28,265.265 INFO    ] Initializing speech engine...
[2026-06-13 08:39:28,273.273 INFO    ] 2026-06-13 08:39:28
[2026-06-13 08:39:28,486.486 INFO    ] 2026-06-13 08:39:28
[2026-06-13 08:39:28,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:39:28,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:39:28,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:39:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:39:28,905.905 INFO    ] time= 13/06/2026 08:39:28
[2026-06-13 08:39:28,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:39:28,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:39:29,011.011 INFO    ] No existing commands found in stream
[2026-06-13 08:39:34,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:34,025.025 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 08:39:35,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:39:35,200.200 INFO    ] Checking for system updates...
[2026-06-13 08:39:35,221.221 INFO    ] 200
[2026-06-13 08:39:35,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:35,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:35,259.259 INFO    ] No update needed
[2026-06-13 08:39:35,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:35,281.281 INFO    ] 200
[2026-06-13 08:39:35,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:35,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:35,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:35,349.349 INFO    ] No camera update needed
[2026-06-13 08:39:35,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:35,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:35,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:35,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:37,398.398 INFO    ] ================================================
[2026-06-13 08:39:37,414.414 INFO    ] Launching Daemon at Sat Jun 13 08:39:37 IST 2026
[2026-06-13 08:39:37,425.425 INFO    ] ================================================
[2026-06-13 08:39:37,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:37
[2026-06-13 08:39:38,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:39:38,232.232 INFO    ] Initializing speech engine...
[2026-06-13 08:39:38,237.237 INFO    ] 2026-06-13 08:39:38
[2026-06-13 08:39:38,441.441 INFO    ] 2026-06-13 08:39:38
[2026-06-13 08:39:38,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:39:38,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:39:38,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:39:38,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:39:38,690.690 INFO    ] time= 13/06/2026 08:39:38
[2026-06-13 08:39:38,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:39:38,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:39:38,870.870 INFO    ] No existing commands found in stream
[2026-06-13 08:39:43,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:43,901.901 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 08:39:46,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:39:46,490.490 INFO    ] Checking for system updates...
[2026-06-13 08:39:46,515.515 INFO    ] 200
[2026-06-13 08:39:46,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:46,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:46,555.555 INFO    ] No update needed
[2026-06-13 08:39:46,557.557 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:46,599.599 INFO    ] 200
[2026-06-13 08:39:46,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:46,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:46,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:39:46,686.686 INFO    ] No camera update needed
[2026-06-13 08:39:46,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:46,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:46,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:46,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:48,744.744 INFO    ] ================================================
[2026-06-13 08:39:48,762.762 INFO    ] Launching Daemon at Sat Jun 13 08:39:48 IST 2026
[2026-06-13 08:39:48,774.774 INFO    ] ================================================
[2026-06-13 08:39:49,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:49
[2026-06-13 08:39:49,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:39:49,979.979 INFO    ] Initializing speech engine...
[2026-06-13 08:39:49,987.987 INFO    ] 2026-06-13 08:39:49
[2026-06-13 08:39:50,174.174 INFO    ] 2026-06-13 08:39:50
[2026-06-13 08:39:50,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:39:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:39:50,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:39:50,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:39:50,453.453 INFO    ] time= 13/06/2026 08:39:50
[2026-06-13 08:39:50,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:39:50,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:39:50,557.557 INFO    ] No existing commands found in stream
[2026-06-13 08:39:55,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:39:55,594.594 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 08:39:57,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:39:57,231.231 INFO    ] Checking for system updates...
[2026-06-13 08:39:57,252.252 INFO    ] 200
[2026-06-13 08:39:57,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:57,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:39:57,288.288 INFO    ] No update needed
[2026-06-13 08:39:57,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 08:39:57,311.311 INFO    ] 200
[2026-06-13 08:39:57,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:39:57,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:39:57,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:39:57,384.384 INFO    ] No camera update needed
[2026-06-13 08:39:57,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:39:57,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:39:57,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:39:57,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:39:59,426.426 INFO    ] ================================================
[2026-06-13 08:39:59,434.434 INFO    ] Launching Daemon at Sat Jun 13 08:39:59 IST 2026
[2026-06-13 08:39:59,441.441 INFO    ] ================================================
[2026-06-13 08:39:59,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:39:59
[2026-06-13 08:40:00,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:00,197.197 INFO    ] Initializing speech engine...
[2026-06-13 08:40:00,203.203 INFO    ] 2026-06-13 08:40:00
[2026-06-13 08:40:00,409.409 INFO    ] 2026-06-13 08:40:00
[2026-06-13 08:40:00,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:00,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:00,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:00,803.803 INFO    ] time= 13/06/2026 08:40:00
[2026-06-13 08:40:00,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:00,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:00,928.928 INFO    ] No existing commands found in stream
[2026-06-13 08:40:05,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:40:05,941.941 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 08:40:08,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:40:08,742.742 INFO    ] Checking for system updates...
[2026-06-13 08:40:08,799.799 INFO    ] 200
[2026-06-13 08:40:08,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:08,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:08,879.879 INFO    ] No update needed
[2026-06-13 08:40:08,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 08:40:08,918.918 INFO    ] 200
[2026-06-13 08:40:08,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:08,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:40:08,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:08,967.967 INFO    ] No camera update needed
[2026-06-13 08:40:08,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:40:08,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:40:08,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:40:08,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:40:11,013.013 INFO    ] ================================================
[2026-06-13 08:40:11,031.031 INFO    ] Launching Daemon at Sat Jun 13 08:40:11 IST 2026
[2026-06-13 08:40:11,041.041 INFO    ] ================================================
[2026-06-13 08:40:11,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:40:11
[2026-06-13 08:40:11,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:11,870.870 INFO    ] Initializing speech engine...
[2026-06-13 08:40:11,875.875 INFO    ] 2026-06-13 08:40:11
[2026-06-13 08:40:12,078.078 INFO    ] 2026-06-13 08:40:12
[2026-06-13 08:40:12,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:12,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:12,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:12,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:12,427.427 INFO    ] time= 13/06/2026 08:40:12
[2026-06-13 08:40:12,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:12,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:12,596.596 INFO    ] No existing commands found in stream
[2026-06-13 08:40:17,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:40:17,609.609 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 08:40:20,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:40:20,918.918 INFO    ] Checking for system updates...
[2026-06-13 08:40:20,939.939 INFO    ] 200
[2026-06-13 08:40:20,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:20,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:40:20,974.974 INFO    ] No update needed
[2026-06-13 08:40:20,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 08:40:20,994.994 INFO    ] 200
[2026-06-13 08:40:20,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:21,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:40:21,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:21,061.061 INFO    ] No camera update needed
[2026-06-13 08:40:21,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:40:21,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:40:21,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:40:21,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:40:23,108.108 INFO    ] ================================================
[2026-06-13 08:40:23,123.123 INFO    ] Launching Daemon at Sat Jun 13 08:40:23 IST 2026
[2026-06-13 08:40:23,134.134 INFO    ] ================================================
[2026-06-13 08:40:23,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:40:23
[2026-06-13 08:40:23,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:23,971.971 INFO    ] Initializing speech engine...
[2026-06-13 08:40:23,975.975 INFO    ] 2026-06-13 08:40:23
[2026-06-13 08:40:24,176.176 INFO    ] 2026-06-13 08:40:24
[2026-06-13 08:40:24,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:24,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:24,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:24,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:24,570.570 INFO    ] time= 13/06/2026 08:40:24
[2026-06-13 08:40:24,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:24,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:24,689.689 INFO    ] No existing commands found in stream
[2026-06-13 08:40:29,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:40:29,702.702 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 08:40:31,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:40:31,846.846 INFO    ] Checking for system updates...
[2026-06-13 08:40:31,868.868 INFO    ] 200
[2026-06-13 08:40:31,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:31,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:31,902.902 INFO    ] No update needed
[2026-06-13 08:40:31,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 08:40:31,924.924 INFO    ] 200
[2026-06-13 08:40:31,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:31,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:40:32,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:32,112.112 INFO    ] No camera update needed
[2026-06-13 08:40:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:40:32,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:40:32,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:40:32,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:40:34,154.154 INFO    ] ================================================
[2026-06-13 08:40:34,169.169 INFO    ] Launching Daemon at Sat Jun 13 08:40:34 IST 2026
[2026-06-13 08:40:34,180.180 INFO    ] ================================================
[2026-06-13 08:40:34,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:40:34
[2026-06-13 08:40:34,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:34,969.969 INFO    ] Initializing speech engine...
[2026-06-13 08:40:34,977.977 INFO    ] 2026-06-13 08:40:34
[2026-06-13 08:40:35,190.190 INFO    ] 2026-06-13 08:40:35
[2026-06-13 08:40:35,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:35,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:35,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:35,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:35,585.585 INFO    ] time= 13/06/2026 08:40:35
[2026-06-13 08:40:35,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:35,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:35,704.704 INFO    ] No existing commands found in stream
[2026-06-13 08:40:40,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:40:40,717.717 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 08:40:43,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:40:43,678.678 INFO    ] Checking for system updates...
[2026-06-13 08:40:43,699.699 INFO    ] 200
[2026-06-13 08:40:43,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:43,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:40:43,734.734 INFO    ] No update needed
[2026-06-13 08:40:43,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 08:40:43,755.755 INFO    ] 200
[2026-06-13 08:40:43,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:43,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:40:43,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:40:43,819.819 INFO    ] No camera update needed
[2026-06-13 08:40:43,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:40:43,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:40:43,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:40:43,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:40:45,869.869 INFO    ] ================================================
[2026-06-13 08:40:45,883.883 INFO    ] Launching Daemon at Sat Jun 13 08:40:45 IST 2026
[2026-06-13 08:40:45,894.894 INFO    ] ================================================
[2026-06-13 08:40:46,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:40:46
[2026-06-13 08:40:46,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:46,681.681 INFO    ] Initializing speech engine...
[2026-06-13 08:40:46,686.686 INFO    ] 2026-06-13 08:40:46
[2026-06-13 08:40:46,893.893 INFO    ] 2026-06-13 08:40:46
[2026-06-13 08:40:46,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:47,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:47,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:47,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:47,300.300 INFO    ] time= 13/06/2026 08:40:47
[2026-06-13 08:40:47,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:47,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:47,411.411 INFO    ] No existing commands found in stream
[2026-06-13 08:40:52,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:40:52,423.423 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 08:40:55,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:40:55,719.719 INFO    ] Checking for system updates...
[2026-06-13 08:40:55,740.740 INFO    ] 200
[2026-06-13 08:40:55,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:55,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:55,773.773 INFO    ] No update needed
[2026-06-13 08:40:55,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 08:40:55,796.796 INFO    ] 200
[2026-06-13 08:40:55,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:40:55,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:40:55,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:40:55,860.860 INFO    ] No camera update needed
[2026-06-13 08:40:55,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:40:55,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:40:55,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:40:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:40:57,892.892 INFO    ] ================================================
[2026-06-13 08:40:57,900.900 INFO    ] Launching Daemon at Sat Jun 13 08:40:57 IST 2026
[2026-06-13 08:40:57,906.906 INFO    ] ================================================
[2026-06-13 08:40:58,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:40:58
[2026-06-13 08:40:58,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:40:58,710.710 INFO    ] Initializing speech engine...
[2026-06-13 08:40:58,715.715 INFO    ] 2026-06-13 08:40:58
[2026-06-13 08:40:58,922.922 INFO    ] 2026-06-13 08:40:58
[2026-06-13 08:40:58,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:40:59,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:40:59,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:40:59,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:40:59,325.325 INFO    ] time= 13/06/2026 08:40:59
[2026-06-13 08:40:59,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:40:59,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:40:59,441.441 INFO    ] No existing commands found in stream
[2026-06-13 08:41:04,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:41:04,455.455 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 08:41:06,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:41:06,166.166 INFO    ] Checking for system updates...
[2026-06-13 08:41:06,186.186 INFO    ] 200
[2026-06-13 08:41:06,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:06,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:06,221.221 INFO    ] No update needed
[2026-06-13 08:41:06,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 08:41:06,241.241 INFO    ] 200
[2026-06-13 08:41:06,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:06,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:41:06,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:06,314.314 INFO    ] No camera update needed
[2026-06-13 08:41:06,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:41:06,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:41:06,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:41:06,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:41:08,367.367 INFO    ] ================================================
[2026-06-13 08:41:08,383.383 INFO    ] Launching Daemon at Sat Jun 13 08:41:08 IST 2026
[2026-06-13 08:41:08,393.393 INFO    ] ================================================
[2026-06-13 08:41:08,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:41:08
[2026-06-13 08:41:09,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:41:09,181.181 INFO    ] Initializing speech engine...
[2026-06-13 08:41:09,193.193 INFO    ] 2026-06-13 08:41:09
[2026-06-13 08:41:09,401.401 INFO    ] 2026-06-13 08:41:09
[2026-06-13 08:41:09,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:41:09,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:41:09,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:41:09,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:41:09,806.806 INFO    ] time= 13/06/2026 08:41:09
[2026-06-13 08:41:09,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:41:09,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:41:09,922.922 INFO    ] No existing commands found in stream
[2026-06-13 08:41:14,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:41:14,935.935 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 08:41:18,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:41:18,516.516 INFO    ] Checking for system updates...
[2026-06-13 08:41:18,536.536 INFO    ] 200
[2026-06-13 08:41:18,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:18,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:18,572.572 INFO    ] No update needed
[2026-06-13 08:41:18,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 08:41:18,595.595 INFO    ] 200
[2026-06-13 08:41:18,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:18,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:41:18,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:41:18,665.665 INFO    ] No camera update needed
[2026-06-13 08:41:18,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:41:18,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:41:18,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:41:18,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:41:20,712.712 INFO    ] ================================================
[2026-06-13 08:41:20,727.727 INFO    ] Launching Daemon at Sat Jun 13 08:41:20 IST 2026
[2026-06-13 08:41:20,737.737 INFO    ] ================================================
[2026-06-13 08:41:21,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:41:21
[2026-06-13 08:41:21,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:41:21,558.558 INFO    ] Initializing speech engine...
[2026-06-13 08:41:21,563.563 INFO    ] 2026-06-13 08:41:21
[2026-06-13 08:41:21,768.768 INFO    ] 2026-06-13 08:41:21
[2026-06-13 08:41:21,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:41:21,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:41:21,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:41:22,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:41:22,176.176 INFO    ] time= 13/06/2026 08:41:22
[2026-06-13 08:41:22,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:41:22,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:41:22,313.313 INFO    ] No existing commands found in stream
[2026-06-13 08:41:27,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:41:27,345.345 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 08:41:30,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:41:30,236.236 INFO    ] Checking for system updates...
[2026-06-13 08:41:30,256.256 INFO    ] 200
[2026-06-13 08:41:30,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:30,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:30,289.289 INFO    ] No update needed
[2026-06-13 08:41:30,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 08:41:30,310.310 INFO    ] 200
[2026-06-13 08:41:30,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:30,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:41:30,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:41:30,374.374 INFO    ] No camera update needed
[2026-06-13 08:41:30,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:41:30,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:41:30,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:41:30,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:41:32,416.416 INFO    ] ================================================
[2026-06-13 08:41:32,424.424 INFO    ] Launching Daemon at Sat Jun 13 08:41:32 IST 2026
[2026-06-13 08:41:32,430.430 INFO    ] ================================================
[2026-06-13 08:41:32,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:41:32
[2026-06-13 08:41:33,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:41:33,377.377 INFO    ] Initializing speech engine...
[2026-06-13 08:41:33,403.403 INFO    ] 2026-06-13 08:41:33
[2026-06-13 08:41:33,676.676 INFO    ] 2026-06-13 08:41:33
[2026-06-13 08:41:33,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:41:33,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:41:33,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:41:34,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:41:34,041.041 INFO    ] time= 13/06/2026 08:41:34
[2026-06-13 08:41:34,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:41:34,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:41:34,161.161 INFO    ] No existing commands found in stream
[2026-06-13 08:41:39,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:41:39,176.176 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 08:41:41,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:41:41,763.763 INFO    ] Checking for system updates...
[2026-06-13 08:41:41,784.784 INFO    ] 200
[2026-06-13 08:41:41,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:41,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:41,817.817 INFO    ] No update needed
[2026-06-13 08:41:41,818.818 INFO    ] Checking for camera pi updates...
[2026-06-13 08:41:41,839.839 INFO    ] 200
[2026-06-13 08:41:41,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:41,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:41:41,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:41,907.907 INFO    ] No camera update needed
[2026-06-13 08:41:41,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:41:41,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:41:41,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:41:41,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:41:43,954.954 INFO    ] ================================================
[2026-06-13 08:41:43,969.969 INFO    ] Launching Daemon at Sat Jun 13 08:41:43 IST 2026
[2026-06-13 08:41:43,980.980 INFO    ] ================================================
[2026-06-13 08:41:44,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:41:44
[2026-06-13 08:41:44,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:41:44,801.801 INFO    ] Initializing speech engine...
[2026-06-13 08:41:44,810.810 INFO    ] 2026-06-13 08:41:44
[2026-06-13 08:41:45,017.017 INFO    ] 2026-06-13 08:41:44
[2026-06-13 08:41:45,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:41:45,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:41:45,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:41:45,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:41:45,370.370 INFO    ] time= 13/06/2026 08:41:45
[2026-06-13 08:41:45,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:41:45,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:41:45,533.533 INFO    ] No existing commands found in stream
[2026-06-13 08:41:50,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:41:50,545.545 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 08:41:53,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:41:53,678.678 INFO    ] Checking for system updates...
[2026-06-13 08:41:53,699.699 INFO    ] 200
[2026-06-13 08:41:53,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:53,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:53,732.732 INFO    ] No update needed
[2026-06-13 08:41:53,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 08:41:53,753.753 INFO    ] 200
[2026-06-13 08:41:53,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:41:53,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:41:53,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:41:53,813.813 INFO    ] No camera update needed
[2026-06-13 08:41:53,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:41:53,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:41:53,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:41:53,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:41:55,861.861 INFO    ] ================================================
[2026-06-13 08:41:55,876.876 INFO    ] Launching Daemon at Sat Jun 13 08:41:55 IST 2026
[2026-06-13 08:41:55,887.887 INFO    ] ================================================
[2026-06-13 08:41:56,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:41:56
[2026-06-13 08:41:56,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:41:56,672.672 INFO    ] Initializing speech engine...
[2026-06-13 08:41:56,676.676 INFO    ] 2026-06-13 08:41:56
[2026-06-13 08:41:56,903.903 INFO    ] 2026-06-13 08:41:56
[2026-06-13 08:41:56,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:41:57,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:41:57,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:41:57,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:41:57,288.288 INFO    ] time= 13/06/2026 08:41:57
[2026-06-13 08:41:57,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:41:57,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:41:57,449.449 INFO    ] No existing commands found in stream
[2026-06-13 08:42:02,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:02,463.463 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 08:42:03,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:42:03,599.599 INFO    ] Checking for system updates...
[2026-06-13 08:42:03,637.637 INFO    ] 200
[2026-06-13 08:42:03,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:03,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:03,701.701 INFO    ] No update needed
[2026-06-13 08:42:03,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:03,740.740 INFO    ] 200
[2026-06-13 08:42:03,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:03,786.786 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:03,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:03,820.820 INFO    ] No camera update needed
[2026-06-13 08:42:03,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:03,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:03,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:03,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:42:05,879.879 INFO    ] ================================================
[2026-06-13 08:42:05,895.895 INFO    ] Launching Daemon at Sat Jun 13 08:42:05 IST 2026
[2026-06-13 08:42:05,906.906 INFO    ] ================================================
[2026-06-13 08:42:06,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:42:06
[2026-06-13 08:42:06,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:42:06,802.802 INFO    ] Initializing speech engine...
[2026-06-13 08:42:06,827.827 INFO    ] 2026-06-13 08:42:06
[2026-06-13 08:42:07,107.107 INFO    ] 2026-06-13 08:42:07
[2026-06-13 08:42:07,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:42:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:42:07,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:42:07,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:42:07,467.467 INFO    ] time= 13/06/2026 08:42:07
[2026-06-13 08:42:07,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:42:07,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:42:07,546.546 INFO    ] No existing commands found in stream
[2026-06-13 08:42:12,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:12,560.560 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 08:42:14,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:42:14,724.724 INFO    ] Checking for system updates...
[2026-06-13 08:42:14,744.744 INFO    ] 200
[2026-06-13 08:42:14,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:14,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:42:14,780.780 INFO    ] No update needed
[2026-06-13 08:42:14,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:14,800.800 INFO    ] 200
[2026-06-13 08:42:14,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:14,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:14,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:42:14,862.862 INFO    ] No camera update needed
[2026-06-13 08:42:14,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:14,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:14,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:14,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:42:16,912.912 INFO    ] ================================================
[2026-06-13 08:42:16,927.927 INFO    ] Launching Daemon at Sat Jun 13 08:42:16 IST 2026
[2026-06-13 08:42:16,938.938 INFO    ] ================================================
[2026-06-13 08:42:17,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:42:17
[2026-06-13 08:42:17,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:42:17,735.735 INFO    ] Initializing speech engine...
[2026-06-13 08:42:17,743.743 INFO    ] 2026-06-13 08:42:17
[2026-06-13 08:42:17,965.965 INFO    ] 2026-06-13 08:42:17
[2026-06-13 08:42:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:42:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:42:18,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:42:18,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:42:18,368.368 INFO    ] time= 13/06/2026 08:42:18
[2026-06-13 08:42:18,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:42:18,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:42:18,535.535 INFO    ] No existing commands found in stream
[2026-06-13 08:42:23,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:23,548.548 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 08:42:24,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:42:24,345.345 INFO    ] Checking for system updates...
[2026-06-13 08:42:24,365.365 INFO    ] 200
[2026-06-13 08:42:24,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:24,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:24,398.398 INFO    ] No update needed
[2026-06-13 08:42:24,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:24,420.420 INFO    ] 200
[2026-06-13 08:42:24,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:24,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:24,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:42:24,497.497 INFO    ] No camera update needed
[2026-06-13 08:42:24,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:24,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:24,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:24,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:42:26,545.545 INFO    ] ================================================
[2026-06-13 08:42:26,561.561 INFO    ] Launching Daemon at Sat Jun 13 08:42:26 IST 2026
[2026-06-13 08:42:26,572.572 INFO    ] ================================================
[2026-06-13 08:42:26,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:42:26
[2026-06-13 08:42:27,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:42:27,402.402 INFO    ] Initializing speech engine...
[2026-06-13 08:42:27,411.411 INFO    ] 2026-06-13 08:42:27
[2026-06-13 08:42:27,616.616 INFO    ] 2026-06-13 08:42:27
[2026-06-13 08:42:27,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:42:27,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:42:27,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:42:27,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:42:28,010.010 INFO    ] time= 13/06/2026 08:42:27
[2026-06-13 08:42:28,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:42:28,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:42:28,169.169 INFO    ] No existing commands found in stream
[2026-06-13 08:42:33,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:33,183.183 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 08:42:36,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:42:36,960.960 INFO    ] Checking for system updates...
[2026-06-13 08:42:36,996.996 INFO    ] 200
[2026-06-13 08:42:36,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:37,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:42:37,055.055 INFO    ] No update needed
[2026-06-13 08:42:37,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:37,090.090 INFO    ] 200
[2026-06-13 08:42:37,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:37,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:37,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:42:37,242.242 INFO    ] No camera update needed
[2026-06-13 08:42:37,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:37,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:37,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:37,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:42:39,288.288 INFO    ] ================================================
[2026-06-13 08:42:39,303.303 INFO    ] Launching Daemon at Sat Jun 13 08:42:39 IST 2026
[2026-06-13 08:42:39,314.314 INFO    ] ================================================
[2026-06-13 08:42:39,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:42:39
[2026-06-13 08:42:40,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:42:40,196.196 INFO    ] Initializing speech engine...
[2026-06-13 08:42:40,200.200 INFO    ] 2026-06-13 08:42:40
[2026-06-13 08:42:40,418.418 INFO    ] 2026-06-13 08:42:40
[2026-06-13 08:42:40,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:42:40,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:42:40,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:42:40,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:42:40,931.931 INFO    ] time= 13/06/2026 08:42:40
[2026-06-13 08:42:40,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:42:40,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:42:41,070.070 INFO    ] No existing commands found in stream
[2026-06-13 08:42:46,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:46,091.091 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 08:42:48,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:42:48,411.411 INFO    ] Checking for system updates...
[2026-06-13 08:42:48,432.432 INFO    ] 200
[2026-06-13 08:42:48,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:48,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:48,465.465 INFO    ] No update needed
[2026-06-13 08:42:48,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:48,486.486 INFO    ] 200
[2026-06-13 08:42:48,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:48,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:48,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:48,558.558 INFO    ] No camera update needed
[2026-06-13 08:42:48,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:48,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:48,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:48,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:42:50,609.609 INFO    ] ================================================
[2026-06-13 08:42:50,624.624 INFO    ] Launching Daemon at Sat Jun 13 08:42:50 IST 2026
[2026-06-13 08:42:50,635.635 INFO    ] ================================================
[2026-06-13 08:42:50,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:42:50
[2026-06-13 08:42:51,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:42:51,484.484 INFO    ] Initializing speech engine...
[2026-06-13 08:42:51,489.489 INFO    ] 2026-06-13 08:42:51
[2026-06-13 08:42:51,701.701 INFO    ] 2026-06-13 08:42:51
[2026-06-13 08:42:51,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:42:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:42:51,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:42:52,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:42:52,124.124 INFO    ] time= 13/06/2026 08:42:52
[2026-06-13 08:42:52,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:42:52,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:42:52,226.226 INFO    ] No existing commands found in stream
[2026-06-13 08:42:57,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:42:57,241.241 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 08:42:58,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:42:58,797.797 INFO    ] Checking for system updates...
[2026-06-13 08:42:58,819.819 INFO    ] 200
[2026-06-13 08:42:58,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:58,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:58,855.855 INFO    ] No update needed
[2026-06-13 08:42:58,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 08:42:58,875.875 INFO    ] 200
[2026-06-13 08:42:58,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:42:58,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:42:58,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:42:58,938.938 INFO    ] No camera update needed
[2026-06-13 08:42:58,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:42:58,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:42:58,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:42:58,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:00,987.987 INFO    ] ================================================
[2026-06-13 08:43:01,002.002 INFO    ] Launching Daemon at Sat Jun 13 08:43:00 IST 2026
[2026-06-13 08:43:01,014.014 INFO    ] ================================================
[2026-06-13 08:43:01,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:01
[2026-06-13 08:43:01,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:02,041.041 INFO    ] Initializing speech engine...
[2026-06-13 08:43:02,046.046 INFO    ] 2026-06-13 08:43:02
[2026-06-13 08:43:02,237.237 INFO    ] 2026-06-13 08:43:02
[2026-06-13 08:43:02,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:02,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:02,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:02,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:02,509.509 INFO    ] time= 13/06/2026 08:43:02
[2026-06-13 08:43:02,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:02,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:02,607.607 INFO    ] No existing commands found in stream
[2026-06-13 08:43:07,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:43:07,644.644 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 08:43:08,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:43:08,735.735 INFO    ] Checking for system updates...
[2026-06-13 08:43:08,756.756 INFO    ] 200
[2026-06-13 08:43:08,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:08,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:43:08,791.791 INFO    ] No update needed
[2026-06-13 08:43:08,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 08:43:08,812.812 INFO    ] 200
[2026-06-13 08:43:08,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:08,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:43:08,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:43:08,877.877 INFO    ] No camera update needed
[2026-06-13 08:43:08,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:43:08,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:43:08,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:43:08,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:10,923.923 INFO    ] ================================================
[2026-06-13 08:43:10,938.938 INFO    ] Launching Daemon at Sat Jun 13 08:43:10 IST 2026
[2026-06-13 08:43:10,950.950 INFO    ] ================================================
[2026-06-13 08:43:11,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:11
[2026-06-13 08:43:11,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:11,814.814 INFO    ] Initializing speech engine...
[2026-06-13 08:43:11,820.820 INFO    ] 2026-06-13 08:43:11
[2026-06-13 08:43:12,028.028 INFO    ] 2026-06-13 08:43:12
[2026-06-13 08:43:12,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:12,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:12,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:12,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:12,451.451 INFO    ] time= 13/06/2026 08:43:12
[2026-06-13 08:43:12,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:12,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:12,545.545 INFO    ] No existing commands found in stream
[2026-06-13 08:43:17,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:43:17,560.560 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 08:43:19,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:43:19,960.960 INFO    ] Checking for system updates...
[2026-06-13 08:43:19,981.981 INFO    ] 200
[2026-06-13 08:43:19,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:20,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:20,019.019 INFO    ] No update needed
[2026-06-13 08:43:20,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 08:43:20,043.043 INFO    ] 200
[2026-06-13 08:43:20,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:20,073.073 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:43:20,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:20,111.111 INFO    ] No camera update needed
[2026-06-13 08:43:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:43:20,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:43:20,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:43:20,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:22,157.157 INFO    ] ================================================
[2026-06-13 08:43:22,173.173 INFO    ] Launching Daemon at Sat Jun 13 08:43:22 IST 2026
[2026-06-13 08:43:22,184.184 INFO    ] ================================================
[2026-06-13 08:43:22,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:22
[2026-06-13 08:43:22,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:22,990.990 INFO    ] Initializing speech engine...
[2026-06-13 08:43:22,995.995 INFO    ] 2026-06-13 08:43:22
[2026-06-13 08:43:23,199.199 INFO    ] 2026-06-13 08:43:23
[2026-06-13 08:43:23,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:23,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:23,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:23,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:23,593.593 INFO    ] time= 13/06/2026 08:43:23
[2026-06-13 08:43:23,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:23,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:23,711.711 INFO    ] No existing commands found in stream
[2026-06-13 08:43:28,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:43:28,724.724 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 08:43:30,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:43:30,156.156 INFO    ] Checking for system updates...
[2026-06-13 08:43:30,177.177 INFO    ] 200
[2026-06-13 08:43:30,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:30,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:30,210.210 INFO    ] No update needed
[2026-06-13 08:43:30,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 08:43:30,232.232 INFO    ] 200
[2026-06-13 08:43:30,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:30,257.257 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:43:30,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:30,299.299 INFO    ] No camera update needed
[2026-06-13 08:43:30,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:43:30,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:43:30,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:43:30,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:32,347.347 INFO    ] ================================================
[2026-06-13 08:43:32,362.362 INFO    ] Launching Daemon at Sat Jun 13 08:43:32 IST 2026
[2026-06-13 08:43:32,374.374 INFO    ] ================================================
[2026-06-13 08:43:32,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:32
[2026-06-13 08:43:33,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:33,168.168 INFO    ] Initializing speech engine...
[2026-06-13 08:43:33,171.171 INFO    ] 2026-06-13 08:43:33
[2026-06-13 08:43:33,389.389 INFO    ] 2026-06-13 08:43:33
[2026-06-13 08:43:33,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:33,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:33,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:33,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:33,789.789 INFO    ] time= 13/06/2026 08:43:33
[2026-06-13 08:43:33,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:33,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:33,904.904 INFO    ] No existing commands found in stream
[2026-06-13 08:43:38,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:43:38,916.916 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 08:43:41,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:43:41,952.952 INFO    ] Checking for system updates...
[2026-06-13 08:43:41,972.972 INFO    ] 200
[2026-06-13 08:43:41,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:42,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:43:42,007.007 INFO    ] No update needed
[2026-06-13 08:43:42,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 08:43:42,028.028 INFO    ] 200
[2026-06-13 08:43:42,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:42,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:43:42,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:43:42,081.081 INFO    ] No camera update needed
[2026-06-13 08:43:42,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:43:42,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:43:42,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:43:42,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:44,129.129 INFO    ] ================================================
[2026-06-13 08:43:44,143.143 INFO    ] Launching Daemon at Sat Jun 13 08:43:44 IST 2026
[2026-06-13 08:43:44,155.155 INFO    ] ================================================
[2026-06-13 08:43:44,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:44
[2026-06-13 08:43:44,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:44,949.949 INFO    ] Initializing speech engine...
[2026-06-13 08:43:44,960.960 INFO    ] 2026-06-13 08:43:44
[2026-06-13 08:43:45,163.163 INFO    ] 2026-06-13 08:43:45
[2026-06-13 08:43:45,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:45,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:45,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:45,569.569 INFO    ] time= 13/06/2026 08:43:45
[2026-06-13 08:43:45,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:45,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:45,678.678 INFO    ] No existing commands found in stream
[2026-06-13 08:43:50,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:43:50,692.692 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 08:43:54,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:43:54,061.061 INFO    ] Checking for system updates...
[2026-06-13 08:43:54,082.082 INFO    ] 200
[2026-06-13 08:43:54,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:54,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:54,117.117 INFO    ] No update needed
[2026-06-13 08:43:54,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 08:43:54,140.140 INFO    ] 200
[2026-06-13 08:43:54,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:43:54,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:43:54,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:43:54,212.212 INFO    ] No camera update needed
[2026-06-13 08:43:54,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:43:54,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:43:54,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:43:54,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:43:56,261.261 INFO    ] ================================================
[2026-06-13 08:43:56,276.276 INFO    ] Launching Daemon at Sat Jun 13 08:43:56 IST 2026
[2026-06-13 08:43:56,286.286 INFO    ] ================================================
[2026-06-13 08:43:56,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:43:56
[2026-06-13 08:43:56,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:43:57,075.075 INFO    ] Initializing speech engine...
[2026-06-13 08:43:57,080.080 INFO    ] 2026-06-13 08:43:57
[2026-06-13 08:43:57,310.310 INFO    ] 2026-06-13 08:43:57
[2026-06-13 08:43:57,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:43:57,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:43:57,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:43:57,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:43:57,701.701 INFO    ] time= 13/06/2026 08:43:57
[2026-06-13 08:43:57,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:43:57,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:43:57,863.863 INFO    ] No existing commands found in stream
[2026-06-13 08:44:02,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:44:02,876.876 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 08:44:04,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:44:04,170.170 INFO    ] Checking for system updates...
[2026-06-13 08:44:04,191.191 INFO    ] 200
[2026-06-13 08:44:04,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:04,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:04,226.226 INFO    ] No update needed
[2026-06-13 08:44:04,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:04,247.247 INFO    ] 200
[2026-06-13 08:44:04,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:04,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:04,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:04,312.312 INFO    ] No camera update needed
[2026-06-13 08:44:04,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:04,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:04,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:04,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:44:06,365.365 INFO    ] ================================================
[2026-06-13 08:44:06,381.381 INFO    ] Launching Daemon at Sat Jun 13 08:44:06 IST 2026
[2026-06-13 08:44:06,392.392 INFO    ] ================================================
[2026-06-13 08:44:06,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:44:06
[2026-06-13 08:44:07,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:44:07,168.168 INFO    ] Initializing speech engine...
[2026-06-13 08:44:07,181.181 INFO    ] 2026-06-13 08:44:07
[2026-06-13 08:44:07,389.389 INFO    ] 2026-06-13 08:44:07
[2026-06-13 08:44:07,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:44:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:44:07,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:44:07,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:44:07,787.787 INFO    ] time= 13/06/2026 08:44:07
[2026-06-13 08:44:07,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:44:07,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:44:07,909.909 INFO    ] No existing commands found in stream
[2026-06-13 08:44:12,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:44:12,921.921 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 08:44:15,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:44:15,737.737 INFO    ] Checking for system updates...
[2026-06-13 08:44:15,758.758 INFO    ] 200
[2026-06-13 08:44:15,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:15,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:15,791.791 INFO    ] No update needed
[2026-06-13 08:44:15,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:15,813.813 INFO    ] 200
[2026-06-13 08:44:15,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:15,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:15,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:15,887.887 INFO    ] No camera update needed
[2026-06-13 08:44:15,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:15,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:15,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:15,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:44:17,935.935 INFO    ] ================================================
[2026-06-13 08:44:17,951.951 INFO    ] Launching Daemon at Sat Jun 13 08:44:17 IST 2026
[2026-06-13 08:44:17,961.961 INFO    ] ================================================
[2026-06-13 08:44:18,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:44:18
[2026-06-13 08:44:18,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:44:18,750.750 INFO    ] Initializing speech engine...
[2026-06-13 08:44:18,763.763 INFO    ] 2026-06-13 08:44:18
[2026-06-13 08:44:18,981.981 INFO    ] 2026-06-13 08:44:18
[2026-06-13 08:44:19,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:44:19,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:44:19,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:44:19,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:44:19,405.405 INFO    ] time= 13/06/2026 08:44:19
[2026-06-13 08:44:19,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:44:19,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:44:19,530.530 INFO    ] No existing commands found in stream
[2026-06-13 08:44:24,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:44:24,543.543 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 08:44:25,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:44:25,044.044 INFO    ] Checking for system updates...
[2026-06-13 08:44:25,067.067 INFO    ] 200
[2026-06-13 08:44:25,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:25,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:44:25,102.102 INFO    ] No update needed
[2026-06-13 08:44:25,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:25,122.122 INFO    ] 200
[2026-06-13 08:44:25,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:25,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:25,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:44:25,197.197 INFO    ] No camera update needed
[2026-06-13 08:44:25,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:25,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:25,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:25,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:44:27,244.244 INFO    ] ================================================
[2026-06-13 08:44:27,260.260 INFO    ] Launching Daemon at Sat Jun 13 08:44:27 IST 2026
[2026-06-13 08:44:27,271.271 INFO    ] ================================================
[2026-06-13 08:44:27,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:44:27
[2026-06-13 08:44:27,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:44:28,122.122 INFO    ] Initializing speech engine...
[2026-06-13 08:44:28,126.126 INFO    ] 2026-06-13 08:44:28
[2026-06-13 08:44:28,333.333 INFO    ] 2026-06-13 08:44:28
[2026-06-13 08:44:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:44:28,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:44:28,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:44:28,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:44:28,733.733 INFO    ] time= 13/06/2026 08:44:28
[2026-06-13 08:44:28,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:44:28,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:44:28,847.847 INFO    ] No existing commands found in stream
[2026-06-13 08:44:33,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:44:33,862.862 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 08:44:38,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:44:38,007.007 INFO    ] Checking for system updates...
[2026-06-13 08:44:38,029.029 INFO    ] 200
[2026-06-13 08:44:38,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:38,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:44:38,063.063 INFO    ] No update needed
[2026-06-13 08:44:38,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:38,085.085 INFO    ] 200
[2026-06-13 08:44:38,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:38,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:38,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:44:38,135.135 INFO    ] No camera update needed
[2026-06-13 08:44:38,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:38,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:38,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:38,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:44:40,184.184 INFO    ] ================================================
[2026-06-13 08:44:40,200.200 INFO    ] Launching Daemon at Sat Jun 13 08:44:40 IST 2026
[2026-06-13 08:44:40,210.210 INFO    ] ================================================
[2026-06-13 08:44:40,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:44:40
[2026-06-13 08:44:41,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:44:41,476.476 INFO    ] Initializing speech engine...
[2026-06-13 08:44:41,484.484 INFO    ] 2026-06-13 08:44:41
[2026-06-13 08:44:41,708.708 INFO    ] 2026-06-13 08:44:41
[2026-06-13 08:44:41,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:44:41,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:44:41,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:44:42,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:44:42,112.112 INFO    ] time= 13/06/2026 08:44:42
[2026-06-13 08:44:42,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:44:42,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:44:42,265.265 INFO    ] No existing commands found in stream
[2026-06-13 08:44:47,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:44:47,279.279 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 08:44:51,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:44:51,205.205 INFO    ] Checking for system updates...
[2026-06-13 08:44:51,226.226 INFO    ] 200
[2026-06-13 08:44:51,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:51,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:51,261.261 INFO    ] No update needed
[2026-06-13 08:44:51,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:51,281.281 INFO    ] 200
[2026-06-13 08:44:51,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:51,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:51,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:51,447.447 INFO    ] No camera update needed
[2026-06-13 08:44:51,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:51,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:51,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:51,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:44:53,496.496 INFO    ] ================================================
[2026-06-13 08:44:53,512.512 INFO    ] Launching Daemon at Sat Jun 13 08:44:53 IST 2026
[2026-06-13 08:44:53,523.523 INFO    ] ================================================
[2026-06-13 08:44:53,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:44:53
[2026-06-13 08:44:54,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:44:54,366.366 INFO    ] Initializing speech engine...
[2026-06-13 08:44:54,372.372 INFO    ] 2026-06-13 08:44:54
[2026-06-13 08:44:54,582.582 INFO    ] 2026-06-13 08:44:54
[2026-06-13 08:44:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:44:54,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:44:54,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:44:54,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:44:54,992.992 INFO    ] time= 13/06/2026 08:44:54
[2026-06-13 08:44:55,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:44:55,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:44:55,107.107 INFO    ] No existing commands found in stream
[2026-06-13 08:44:58,978.978 INFO    ] Received new command: ID=1781320498826-0
[2026-06-13 08:44:58,981.981 INFO    ] process_and_cleanup_command: msg_id=1781320498826-0
[2026-06-13 08:44:58,983.983 INFO    ] is_command_expired: timestamp=2026-06-13T03:14:58.680Z, expiry=30s
[2026-06-13 08:44:59,054.054 INFO    ] Command removed from stream: 1781320498826-0. returning for processing...
[2026-06-13 08:44:59,057.057 INFO    ] ***** get_valid_command
[2026-06-13 08:44:59,060.060 INFO    ] {'data': '{"request_id":"start-order-1781320498680-vtc2uy0go","orderId":"TM08202203260613084405413","is_vending":false}', 'timestamp': '2026-06-13T03:14:58.680Z', 'source': 'webapp', 'timeout': '10', 'command': 'start-order'}
[2026-06-13 08:44:59,063.063 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613084405413', 'request_id': 'start-order-1781320498680-vtc2uy0go', 'is_vending': False}
[2026-06-13 08:44:59,066.066 INFO    ] Handling start order...
[2026-06-13 08:44:59,068.068 INFO    ] handle_start_order_command
[2026-06-13 08:44:59,075.075 INFO    ] _send_start_order_success: request_id=start-order-1781320498680-vtc2uy0go, order_id=TM08202203260613084405413
[2026-06-13 08:44:59,078.078 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:44:59,126.126 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781320499100-0
[2026-06-13 08:44:59,129.129 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:44:59,131.131 INFO    ] Checking for system updates...
[2026-06-13 08:44:59,175.175 INFO    ] 200
[2026-06-13 08:44:59,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:59,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:59,235.235 INFO    ] No update needed
[2026-06-13 08:44:59,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 08:44:59,276.276 INFO    ] 200
[2026-06-13 08:44:59,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:44:59,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:44:59,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:44:59,363.363 INFO    ] No camera update needed
[2026-06-13 08:44:59,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:44:59,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:44:59,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:44:59,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:45:01,410.410 INFO    ] ================================================
[2026-06-13 08:45:01,426.426 INFO    ] Launching Daemon at Sat Jun 13 08:45:01 IST 2026
[2026-06-13 08:45:01,437.437 INFO    ] ================================================
[2026-06-13 08:45:02,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:45:02
[2026-06-13 08:45:02,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:45:02,665.665 INFO    ] Initializing speech engine...
[2026-06-13 08:45:02,679.679 INFO    ] 2026-06-13 08:45:02
[2026-06-13 08:45:02,938.938 INFO    ] 2026-06-13 08:45:02
[2026-06-13 08:45:02,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:45:03,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:45:03,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:45:03,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:45:03,185.185 INFO    ] time= 13/06/2026 08:45:03
[2026-06-13 08:45:03,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:45:03,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:45:03,283.283 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 08:45:03,315.315 INFO    ] Checking historical command: ID=1781320499100-0
[2026-06-13 08:45:03,371.371 INFO    ] process_and_cleanup_command: msg_id=1781320499100-0
[2026-06-13 08:45:03,411.411 INFO    ] is_command_expired: timestamp=2026-06-13T03:14:59.076248Z, expiry=30s
[2026-06-13 08:45:03,499.499 INFO    ] Command removed from stream: 1781320499100-0. returning for processing...
[2026-06-13 08:45:03,502.502 INFO    ] ***** get_valid_command
[2026-06-13 08:45:03,528.528 INFO    ] {'metadata_order_id': 'TM08202203260613084405413', 'metadata_request_id': 'start-order-1781320498680-vtc2uy0go', 'message_type': 'command_response', 'timestamp': '2026-06-13T03:14:59.076248Z', 'imei': 'TM08202203', 'status': 'success', 'message': 'start-order success'}
[2026-06-13 08:45:03,530.530 INFO    ] Checking historical command: ID=1781320501208-0
[2026-06-13 08:45:03,555.555 INFO    ] process_and_cleanup_command: msg_id=1781320501208-0
[2026-06-13 08:45:03,559.559 INFO    ] is_command_expired: timestamp=2026-06-13T03:15:01.070Z, expiry=30s
[2026-06-13 08:45:03,631.631 INFO    ] Command removed from stream: 1781320501208-0. returning for processing...
[2026-06-13 08:45:03,634.634 INFO    ] ***** get_valid_command
[2026-06-13 08:45:03,636.636 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1781320501070-bieka2ivc","orderId":"TM08202203260613084405413","is_vending":false,"accessCode":"72941710"}', 'timestamp': '2026-06-13T03:15:01.070Z', 'timeout': '60', 'command': 'process-order'}
[2026-06-13 08:45:03,641.641 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781320501070-bieka2ivc', 'is_vending': False, 'orderId': 'TM08202203260613084405413', 'accessCode': '72941710'}
[2026-06-13 08:45:03,644.644 INFO    ] Handling process order...
[2026-06-13 08:45:03,647.647 INFO    ] Processing process-order command...
[2026-06-13 08:45:03,652.652 INFO    ] 🔍 Lock file Order ID: TM08202203260613084405413, TS: 2026-06-13 08:44:59
[2026-06-13 08:45:03,661.661 INFO    ] ✅ Order lock valid for TM08202203260613084405413
[2026-06-13 08:45:03,663.663 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:45:03,667.667 INFO    ] processing access code 72941710 for order TM08202203260613084405413
[2026-06-13 08:45:03,671.671 INFO    ] 🔍 Lock file Order ID: TM08202203260613084405413, TS: 2026-06-13 08:44:59
[2026-06-13 08:45:03,674.674 INFO    ] ✅ Order lock valid for TM08202203260613084405413
[2026-06-13 08:45:03,677.677 INFO    ] 2026-06-13 08:45:03
[2026-06-13 08:45:03,706.706 INFO    ] 200
[2026-06-13 08:45:03,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:03,714.714 INFO    ] 72941710
[2026-06-13 08:45:03,718.718 INFO    ] 2026-06-13 08:45:03
[2026-06-13 08:45:03,722.722 INFO    ] session id :640123196
[2026-06-13 08:45:03,725.725 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=72941710&imei=TM08202203&session_id=640123196
[2026-06-13 08:45:04,427.427 INFO    ] 200
[2026-06-13 08:45:04,437.437 INFO    ] {"data": {"mobile": "7477248999", "order_id": "TM08202203260613084405413", "bill_amount": "100", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Farmely Classic date Bites 20gm", "tray_id": "37", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500656-2520.webp", "skuid": "4500656", "door_id": "2", "mrp": "60", "offer_desc": "", "name": "BRU Cold Coffee Classic 200ml", "tray_id": "46", "unit_price": 60, "qty": 1, "sku_total": 60, "offer_id": ""}], "access_code": "72941710", "invoice_bill": "100"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:45:04,446.446 INFO    ] 100
[2026-06-13 08:45:04,458.458 INFO    ] TM08202203260613084405413
[2026-06-13 08:45:04,465.465 INFO    ] 7477248999
[2026-06-13 08:45:04,499.499 INFO    ] 2026-06-13 08:45:04
[2026-06-13 08:45:04,508.508 INFO    ] Door Opening for user mobile ending with  eight nine nine nine 
[2026-06-13 08:45:04,532.532 INFO    ] Door Opening for user mobile ending with  eight nine nine nine 
[2026-06-13 08:45:04,538.538 INFO    ] 90b608c326791c2ba4e7e5ce66fa4987
[2026-06-13 08:45:04,549.549 INFO    ] 2026-06-13 08:45:04
[2026-06-13 08:45:04,555.555 INFO    ] playing audio file
[2026-06-13 08:45:04,582.582 INFO    ] 2026-06-13 08:45:04
[2026-06-13 08:45:04,613.613 INFO    ] 2026-06-13 08:45:04
[2026-06-13 08:45:04,630.630 INFO    ] publish_status: order_id=TM08202203260613084405413
[2026-06-13 08:45:04,671.671 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613084405413
[2026-06-13 08:45:04,779.779 INFO    ] [publish_status] Message added to stream with ID: 1781320504720-0
[2026-06-13 08:45:04,802.802 INFO    ] Published to order:TM08202203260613084405413: {'timestamp': '2026-06-13T03:15:04.615150Z', 'server_status': 'order-started', 'server_response': '{"data": {"mobile": "7477248999", "bill_amount": "100", "order_id": "TM08202203260613084405413", "proposed_sku_json": [{"qty": 1, "door_id": "2", "offer_id": "", "unit_price": 40, "name": "Farmely Classic date Bites 20gm", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "tray_id": "37", "offer_desc": "", "mrp": "40", "skuid": "4500667", "sku_total": 40}, {"qty": 1, "door_id": "2", "offer_id": "", "unit_price": 60, "name": "BRU Cold Coffee Classic 200ml", "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "tray_id": "46", "offer_desc": "", "mrp": "60", "skuid": "4500656", "sku_total": 60}], "invoice_bill": "100", "access_code": "72941710"}, "msg": "Order Data", "rstatus": true, "status": true}', 'order_id': 'TM08202203260613084405413'} (ID: 1781320504720-0)
[2026-06-13 08:45:05,195.195 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'mobile': '7477248999', 'bill_amount': '100', 'order_id': 'TM08202203260613084405413', 'proposed_sku_json': [{'qty': 1, 'door_id': '2', 'offer_id': '', 'unit_price': 40, 'name': 'Farmely Classic date Bites 20gm', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'tray_id': '37', 'offer_desc': '', 'mrp': '40', 'skuid': '4500667', 'sku_total': 40}, {'qty': 1, 'door_id': '2', 'offer_id': '', 'unit_price': 60, 'name': 'BRU Cold Coffee Classic 200ml', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'tray_id': '46', 'offer_desc': '', 'mrp': '60', 'skuid': '4500656', 'sku_total': 60}], 'invoice_bill': '100', 'access_code': '72941710'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613084405413'}
[2026-06-13 08:45:05,197.197 INFO    ] 200
[2026-06-13 08:45:05,200.200 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"mobile":"7477248999","bill_amount":"100","order_id":"TM08202203260613084405413","proposed_sku_json":[{"qty":1,"door_id":"2","offer_id":"","unit_price":40,"name":"Farmely Classic date Bites 20gm","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","tray_id":"37","offer_desc":"","mrp":"40","skuid":"4500667","sku_total":40},{"qty":1,"door_id":"2","offer_id":"","unit_price":60,"name":"BRU Cold Coffee Classic 200ml","image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","tray_id":"46","offer_desc":"","mrp":"60","skuid":"4500656","sku_total":60}],"invoice_bill":"100","access_code":"72941710"},"msg":"Order Data","rstatus":true,"status":true},"order_id":"TM08202203260613084405413"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:45:05,203.203 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'data': {'mobile': '7477248999', 'bill_amount': '100', 'access_code': '72941710', 'proposed_sku_json': [{'qty': 1, 'offer_desc': '', 'skuid': '4500667', 'unit_price': 40, 'door_id': '2', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm', 'offer_id': '', 'sku_total': 40}, {'qty': 1, 'offer_desc': '', 'skuid': '4500656', 'unit_price': 60, 'door_id': '2', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'name': 'BRU Cold Coffee Classic 200ml', 'offer_id': '', 'sku_total': 60}], 'invoice_bill': '100', 'order_id': 'TM08202203260613084405413'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613084405413'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:45:05,206.206 INFO    ] 2026-06-13 08:45:05
[2026-06-13 08:45:05,249.249 INFO    ] 200
[2026-06-13 08:45:05,252.252 INFO    ] True
[2026-06-13 08:45:05,416.416 INFO    ] 200
[2026-06-13 08:45:05,419.419 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:45:05,422.422 INFO    ] {'voiceNote': 'Please Wait', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-13 08:45:05,425.425 INFO    ] *** process_order ***
[2026-06-13 08:45:06,631.631 INFO    ] 200
[2026-06-13 08:45:06,633.633 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:45:06,636.636 INFO    ] {'voiceNote': 'Please Wait', 'status': 'True', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}
[2026-06-13 08:45:06,639.639 INFO    ] *** process_order ***
[2026-06-13 08:45:06,641.641 INFO    ] publish_status: order_id=TM08202203260613084405413
[2026-06-13 08:45:06,644.644 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613084405413
[2026-06-13 08:45:06,697.697 INFO    ] [publish_status] Message added to stream with ID: 1781320506670-0
[2026-06-13 08:45:06,700.700 INFO    ] Published to order:TM08202203260613084405413: {'server_status': 'doorOpened', 'server_response': '{"voiceNote": "Door is open...", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'order_id': 'TM08202203260613084405413'} (ID: 1781320506670-0)
[2026-06-13 08:45:07,740.740 INFO    ] 2026-06-13 08:45:07
[2026-06-13 08:45:07,743.743 INFO    ] publish_status: order_id=TM08202203260613084405413
[2026-06-13 08:45:07,745.745 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613084405413
[2026-06-13 08:45:07,829.829 INFO    ] [publish_status] Message added to stream with ID: 1781320507802-0
[2026-06-13 08:45:07,832.832 INFO    ] Published to order:TM08202203260613084405413: {'timestamp': '2026-06-13T03:15:07.741553Z', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "status": "True", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'order_id': 'TM08202203260613084405413'} (ID: 1781320507802-0)
[2026-06-13 08:45:07,939.939 INFO    ] {'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'status': 'True', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'order_id': 'TM08202203260613084405413'}
[2026-06-13 08:45:07,940.940 INFO    ] 200
[2026-06-13 08:45:07,941.941 INFO    ] {"data":{"server_status":"processOrder","server_response":{"voiceNote":"Please Wait","status":"true","rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","UI_Header":""},"SectionMain":{"Header":"Processing Order"},"delay":0},"order_id":"TM08202203260613084405413"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:45:07,943.943 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'status': 'true', 'delay': 0}, 'order_id': 'TM08202203260613084405413'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:45:07,944.944 INFO    ] 2026-06-13 08:45:07
[2026-06-13 08:45:07,946.946 INFO    ] None
[2026-06-13 08:45:07,947.947 INFO    ] Opening Door now
[2026-06-13 08:45:07,949.949 INFO    ] Opening Door now
[2026-06-13 08:45:07,950.950 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:45:07,952.952 INFO    ] 2026-06-13 08:45:07
[2026-06-13 08:45:07,953.953 INFO    ] playing audio file
[2026-06-13 08:45:07,964.964 INFO    ] 2026-06-13 08:45:07
[2026-06-13 08:45:07,966.966 INFO    ] 2026-06-13 08:45:07
[2026-06-13 08:45:10,995.995 INFO    ] 200
[2026-06-13 08:45:10,996.996 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:45:10,998.998 INFO    ] {'voiceNote': 'Door 2 is open now', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 08:45:14,079.079 INFO    ] 200
[2026-06-13 08:45:14,082.082 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:45:14,085.085 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 08:45:17,141.141 INFO    ] 200
[2026-06-13 08:45:17,142.142 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:45:17,144.144 INFO    ] Please close door 2
[2026-06-13 08:45:17,146.146 INFO    ] Please close door 2
[2026-06-13 08:45:17,147.147 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:45:17,149.149 INFO    ] 2026-06-13 08:45:17
[2026-06-13 08:45:17,151.151 INFO    ] playing audio file
[2026-06-13 08:45:17,161.161 INFO    ] 2026-06-13 08:45:17
[2026-06-13 08:45:17,163.163 INFO    ] publish_status: order_id=TM08202203260613084405413
[2026-06-13 08:45:17,165.165 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613084405413
[2026-06-13 08:45:17,249.249 INFO    ] [publish_status] Message added to stream with ID: 1781320517223-0
[2026-06-13 08:45:17,250.250 INFO    ] Published to order:TM08202203260613084405413: {'timestamp': '2026-06-13T03:15:17.162765Z', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 2", "error": {"data": {}, "umessage": "In Progress", "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'order_id': 'TM08202203260613084405413'} (ID: 1781320517223-0)
[2026-06-13 08:45:17,595.595 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM08202203260613084405413'}
[2026-06-13 08:45:17,597.597 INFO    ] 200
[2026-06-13 08:45:17,598.598 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 2","error":{"data":[],"umessage":"In Progress","code":20001,"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Classic date Bites 20gm"},{"qty":1,"name":"BRU Cold Coffee Classic 200ml"}]},"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM08202203260613084405413"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:45:17,600.600 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}]}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'status': 'false'}, 'order_id': 'TM08202203260613084405413'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:45:17,601.601 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'BRU Cold Coffee Classic 200ml'}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-13 08:45:20,637.637 INFO    ] 200
[2026-06-13 08:45:20,639.639 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:45:20,641.641 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-13 08:45:20,642.642 INFO    ] 2026-06-13 08:45:20
[2026-06-13 08:45:20,644.644 INFO    ] Order Completed 
[2026-06-13 08:45:20,646.646 INFO    ] Order Completed 
[2026-06-13 08:45:20,647.647 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:45:20,649.649 INFO    ] 2026-06-13 08:45:20
[2026-06-13 08:45:20,651.651 INFO    ] playing audio file
[2026-06-13 08:45:20,662.662 INFO    ] 2026-06-13 08:45:20
[2026-06-13 08:45:20,664.664 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-13 08:45:20,666.666 INFO    ] 2026-06-13 08:45:20
[2026-06-13 08:45:23,262.262 INFO    ] 200
[2026-06-13 08:45:23,267.267 INFO    ] {"res": "True", "orderId": "TM08202203260613084405413", "skus": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "", "tray_id": "37", "name": "Farmely Classic date Bites 20gm per peice", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}, {"image_url": "https://images.tinymart.in/product/4500656-2520.webp", "skuid": "4500656", "door_id": "", "tray_id": "46", "name": "BRU Cold Coffee Classic 200ml per peice", "unit_price": "60", "mrp": "60", "qty": 1, "sku_total": 60.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 100.0}
[2026-06-13 08:45:23,270.270 INFO    ] {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613084405413', 'total_amount': 100.0, 'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'unit_price': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'skuid': '4500667', 'sku_total': 40.0}, {'qty': 1, 'unit_price': '60', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'door_id': '', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'skuid': '4500656', 'sku_total': 60.0}]}
[2026-06-13 08:45:23,273.273 INFO    ] {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613084405413', 'total_amount': 100.0, 'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'unit_price': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'skuid': '4500667', 'sku_total': 40.0}, {'qty': 1, 'unit_price': '60', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'door_id': '', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'skuid': '4500656', 'sku_total': 60.0}]}
[2026-06-13 08:45:23,276.276 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,279.279 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,282.282 INFO    ] 100
[2026-06-13 08:45:23,285.285 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,288.288 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,291.291 INFO    ]  Your Bill Amount is 100
[2026-06-13 08:45:23,294.294 INFO    ]  Your Bill Amount is 100
[2026-06-13 08:45:23,298.298 INFO    ] d403bfb2a3e236c325436991e756dde3
[2026-06-13 08:45:23,301.301 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,304.304 INFO    ] playing audio file
[2026-06-13 08:45:23,321.321 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,325.325 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:23,335.335 INFO    ] publish_status: order_id=TM08202203260613084405413
[2026-06-13 08:45:23,338.338 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613084405413
[2026-06-13 08:45:23,398.398 INFO    ] [publish_status] Message added to stream with ID: 1781320523370-0
[2026-06-13 08:45:23,401.401 INFO    ] Published to order:TM08202203260613084405413: {'timestamp': '2026-06-13T03:15:23.333572Z', 'server_status': 'invoiceOrder', 'server_response': '{"logic": "WBL", "rstatus": true, "orderId": "TM08202203260613084405413", "total_amount": 100.0, "anomaly": 0, "res": "True", "skus": [{"qty": 1, "unit_price": "40", "name": "Farmely Classic date Bites 20gm per peice", "door_id": "", "tray_id": "37", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "skuid": "4500667", "sku_total": 40.0}, {"qty": 1, "unit_price": "60", "name": "BRU Cold Coffee Classic 200ml per peice", "door_id": "", "tray_id": "46", "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "mrp": "60", "skuid": "4500656", "sku_total": 60.0}]}', 'order_id': 'TM08202203260613084405413'} (ID: 1781320523370-0)
[2026-06-13 08:45:23,815.815 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613084405413', 'total_amount': 100.0, 'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'unit_price': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'skuid': '4500667', 'sku_total': 40.0}, {'qty': 1, 'unit_price': '60', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'door_id': '', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'skuid': '4500656', 'sku_total': 60.0}]}, 'order_id': 'TM08202203260613084405413'}
[2026-06-13 08:45:23,816.816 INFO    ] 200
[2026-06-13 08:45:23,818.818 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"logic":"WBL","rstatus":true,"orderId":"TM08202203260613084405413","total_amount":100,"anomaly":0,"res":"true","skus":[{"qty":1,"unit_price":"40","name":"Farmely Classic date Bites 20gm per peice","door_id":"","tray_id":"37","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","mrp":"40","skuid":"4500667","sku_total":40},{"qty":1,"unit_price":"60","name":"BRU Cold Coffee Classic 200ml per peice","door_id":"","tray_id":"46","image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","mrp":"60","skuid":"4500656","sku_total":60}]},"order_id":"TM08202203260613084405413"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:45:23,820.820 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613084405413', 'total_amount': 100, 'anomaly': 0, 'res': 'true', 'skus': [{'qty': 1, 'unit_price': '40', 'door_id': '', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'sku_total': 40}, {'qty': 1, 'unit_price': '60', 'door_id': '', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'skuid': '4500656', 'sku_total': 60}]}, 'order_id': 'TM08202203260613084405413'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:45:23,821.821 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202203260613084405413', 'total_amount': 100, 'anomaly': 0, 'res': 'true', 'skus': [{'qty': 1, 'unit_price': '40', 'door_id': '', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'sku_total': 40}, {'qty': 1, 'unit_price': '60', 'door_id': '', 'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'mrp': '60', 'name': 'BRU Cold Coffee Classic 200ml per peice', 'skuid': '4500656', 'sku_total': 60}]}, 'order_id': 'TM08202203260613084405413'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:45:23,823.823 INFO    ] 2026-06-13 08:45:23
[2026-06-13 08:45:25,641.641 INFO    ] 200
[2026-06-13 08:45:25,644.644 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413", "TM08202203260613084405413"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:45:25,647.647 INFO    ] 2026-06-13 08:45:25
[2026-06-13 08:45:25,765.765 INFO    ] 200
[2026-06-13 08:45:25,768.768 INFO    ] True
[2026-06-13 08:45:25,771.771 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613084405413
[2026-06-13 08:45:25,774.774 INFO    ] start order file deleted
[2026-06-13 08:45:25,777.777 INFO    ] Checking for system updates...
[2026-06-13 08:45:25,815.815 INFO    ] 200
[2026-06-13 08:45:25,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:25,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:45:25,891.891 INFO    ] No update needed
[2026-06-13 08:45:25,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 08:45:25,940.940 INFO    ] 200
[2026-06-13 08:45:25,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:25,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:45:26,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:45:26,075.075 INFO    ] No camera update needed
[2026-06-13 08:45:26,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:45:26,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:45:26,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:45:26,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:45:28,138.138 INFO    ] ================================================
[2026-06-13 08:45:28,158.158 INFO    ] Launching Daemon at Sat Jun 13 08:45:28 IST 2026
[2026-06-13 08:45:28,169.169 INFO    ] ================================================
[2026-06-13 08:45:28,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:45:28
[2026-06-13 08:45:28,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:45:29,124.124 INFO    ] Initializing speech engine...
[2026-06-13 08:45:29,131.131 INFO    ] 2026-06-13 08:45:29
[2026-06-13 08:45:29,394.394 INFO    ] 2026-06-13 08:45:29
[2026-06-13 08:45:29,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:45:29,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:45:29,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:45:29,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:45:29,835.835 INFO    ] time= 13/06/2026 08:45:29
[2026-06-13 08:45:29,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:45:29,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:45:30,001.001 INFO    ] No existing commands found in stream
[2026-06-13 08:45:35,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:45:35,016.016 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 08:45:37,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:45:37,392.392 INFO    ] Checking for system updates...
[2026-06-13 08:45:37,413.413 INFO    ] 200
[2026-06-13 08:45:37,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:37,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:45:37,445.445 INFO    ] No update needed
[2026-06-13 08:45:37,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 08:45:37,466.466 INFO    ] 200
[2026-06-13 08:45:37,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:37,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:45:37,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:45:37,539.539 INFO    ] No camera update needed
[2026-06-13 08:45:37,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:45:37,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:45:37,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:45:37,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:45:39,587.587 INFO    ] ================================================
[2026-06-13 08:45:39,603.603 INFO    ] Launching Daemon at Sat Jun 13 08:45:39 IST 2026
[2026-06-13 08:45:39,614.614 INFO    ] ================================================
[2026-06-13 08:45:39,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:45:39
[2026-06-13 08:45:40,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:45:40,845.845 INFO    ] Initializing speech engine...
[2026-06-13 08:45:40,861.861 INFO    ] 2026-06-13 08:45:40
[2026-06-13 08:45:41,154.154 INFO    ] 2026-06-13 08:45:41
[2026-06-13 08:45:41,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:45:41,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:45:41,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:45:41,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:45:41,513.513 INFO    ] time= 13/06/2026 08:45:41
[2026-06-13 08:45:41,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:45:41,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:45:41,577.577 INFO    ] No existing commands found in stream
[2026-06-13 08:45:46,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:45:46,603.603 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 08:45:48,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:45:48,930.930 INFO    ] Checking for system updates...
[2026-06-13 08:45:48,952.952 INFO    ] 200
[2026-06-13 08:45:48,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:48,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:45:48,989.989 INFO    ] No update needed
[2026-06-13 08:45:48,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 08:45:49,011.011 INFO    ] 200
[2026-06-13 08:45:49,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:45:49,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:45:49,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:45:49,079.079 INFO    ] No camera update needed
[2026-06-13 08:45:49,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:45:49,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:45:49,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:45:49,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:45:51,127.127 INFO    ] ================================================
[2026-06-13 08:45:51,144.144 INFO    ] Launching Daemon at Sat Jun 13 08:45:51 IST 2026
[2026-06-13 08:45:51,155.155 INFO    ] ================================================
[2026-06-13 08:45:51,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:45:51
[2026-06-13 08:45:51,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:45:51,949.949 INFO    ] Initializing speech engine...
[2026-06-13 08:45:51,953.953 INFO    ] 2026-06-13 08:45:51
[2026-06-13 08:45:52,156.156 INFO    ] 2026-06-13 08:45:52
[2026-06-13 08:45:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:45:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:45:52,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:45:52,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:45:52,563.563 INFO    ] time= 13/06/2026 08:45:52
[2026-06-13 08:45:52,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:45:52,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:45:52,675.675 INFO    ] No existing commands found in stream
[2026-06-13 08:45:57,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:45:57,687.687 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 08:46:00,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:46:00,544.544 INFO    ] Checking for system updates...
[2026-06-13 08:46:00,566.566 INFO    ] 200
[2026-06-13 08:46:00,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:00,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:00,599.599 INFO    ] No update needed
[2026-06-13 08:46:00,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:00,624.624 INFO    ] 200
[2026-06-13 08:46:00,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:00,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:00,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:00,689.689 INFO    ] No camera update needed
[2026-06-13 08:46:00,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:00,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:00,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:00,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:02,724.724 INFO    ] ================================================
[2026-06-13 08:46:02,733.733 INFO    ] Launching Daemon at Sat Jun 13 08:46:02 IST 2026
[2026-06-13 08:46:02,739.739 INFO    ] ================================================
[2026-06-13 08:46:03,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:03
[2026-06-13 08:46:03,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:03,557.557 INFO    ] Initializing speech engine...
[2026-06-13 08:46:03,569.569 INFO    ] 2026-06-13 08:46:03
[2026-06-13 08:46:03,776.776 INFO    ] 2026-06-13 08:46:03
[2026-06-13 08:46:03,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:03,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:03,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:04,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:04,176.176 INFO    ] time= 13/06/2026 08:46:04
[2026-06-13 08:46:04,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:04,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:04,292.292 INFO    ] No existing commands found in stream
[2026-06-13 08:46:09,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:46:09,304.304 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 08:46:10,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:46:10,736.736 INFO    ] Checking for system updates...
[2026-06-13 08:46:10,756.756 INFO    ] 200
[2026-06-13 08:46:10,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:10,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:46:10,790.790 INFO    ] No update needed
[2026-06-13 08:46:10,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:10,811.811 INFO    ] 200
[2026-06-13 08:46:10,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:10,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:10,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:46:10,883.883 INFO    ] No camera update needed
[2026-06-13 08:46:10,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:10,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:10,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:10,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:12,934.934 INFO    ] ================================================
[2026-06-13 08:46:12,950.950 INFO    ] Launching Daemon at Sat Jun 13 08:46:12 IST 2026
[2026-06-13 08:46:12,960.960 INFO    ] ================================================
[2026-06-13 08:46:13,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:13
[2026-06-13 08:46:13,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:13,753.753 INFO    ] Initializing speech engine...
[2026-06-13 08:46:13,756.756 INFO    ] 2026-06-13 08:46:13
[2026-06-13 08:46:13,979.979 INFO    ] 2026-06-13 08:46:13
[2026-06-13 08:46:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:14,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:14,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:14,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:14,337.337 INFO    ] time= 13/06/2026 08:46:14
[2026-06-13 08:46:14,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:14,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:14,535.535 INFO    ] No existing commands found in stream
[2026-06-13 08:46:19,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:46:19,546.546 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 08:46:23,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:46:23,119.119 INFO    ] Checking for system updates...
[2026-06-13 08:46:23,141.141 INFO    ] 200
[2026-06-13 08:46:23,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:23,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:46:23,177.177 INFO    ] No update needed
[2026-06-13 08:46:23,178.178 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:23,198.198 INFO    ] 200
[2026-06-13 08:46:23,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:23,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:23,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:23,265.265 INFO    ] No camera update needed
[2026-06-13 08:46:23,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:23,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:23,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:23,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:25,316.316 INFO    ] ================================================
[2026-06-13 08:46:25,332.332 INFO    ] Launching Daemon at Sat Jun 13 08:46:25 IST 2026
[2026-06-13 08:46:25,344.344 INFO    ] ================================================
[2026-06-13 08:46:25,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:25
[2026-06-13 08:46:26,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:26,157.157 INFO    ] Initializing speech engine...
[2026-06-13 08:46:26,162.162 INFO    ] 2026-06-13 08:46:26
[2026-06-13 08:46:26,355.355 INFO    ] 2026-06-13 08:46:26
[2026-06-13 08:46:26,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:26,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:26,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:26,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:26,753.753 INFO    ] time= 13/06/2026 08:46:26
[2026-06-13 08:46:26,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:26,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:26,964.964 INFO    ] No existing commands found in stream
[2026-06-13 08:46:31,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:46:31,976.976 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 08:46:32,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:46:32,768.768 INFO    ] Checking for system updates...
[2026-06-13 08:46:32,789.789 INFO    ] 200
[2026-06-13 08:46:32,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:32,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:32,826.826 INFO    ] No update needed
[2026-06-13 08:46:32,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:32,849.849 INFO    ] 200
[2026-06-13 08:46:32,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:32,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:32,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:32,910.910 INFO    ] No camera update needed
[2026-06-13 08:46:32,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:32,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:32,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:32,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:34,957.957 INFO    ] ================================================
[2026-06-13 08:46:34,972.972 INFO    ] Launching Daemon at Sat Jun 13 08:46:34 IST 2026
[2026-06-13 08:46:34,983.983 INFO    ] ================================================
[2026-06-13 08:46:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:35
[2026-06-13 08:46:35,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:35,795.795 INFO    ] Initializing speech engine...
[2026-06-13 08:46:35,805.805 INFO    ] 2026-06-13 08:46:35
[2026-06-13 08:46:36,011.011 INFO    ] 2026-06-13 08:46:35
[2026-06-13 08:46:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:36,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:36,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:36,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:36,351.351 INFO    ] time= 13/06/2026 08:46:36
[2026-06-13 08:46:36,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:36,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:36,487.487 INFO    ] No existing commands found in stream
[2026-06-13 08:46:41,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:46:41,517.517 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 08:46:42,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:46:42,844.844 INFO    ] Checking for system updates...
[2026-06-13 08:46:42,865.865 INFO    ] 200
[2026-06-13 08:46:42,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:42,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:46:42,898.898 INFO    ] No update needed
[2026-06-13 08:46:42,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:42,919.919 INFO    ] 200
[2026-06-13 08:46:42,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:42,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:42,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:46:42,991.991 INFO    ] No camera update needed
[2026-06-13 08:46:42,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:42,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:42,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:42,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:45,040.040 INFO    ] ================================================
[2026-06-13 08:46:45,055.055 INFO    ] Launching Daemon at Sat Jun 13 08:46:45 IST 2026
[2026-06-13 08:46:45,066.066 INFO    ] ================================================
[2026-06-13 08:46:45,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:45
[2026-06-13 08:46:45,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:45,875.875 INFO    ] Initializing speech engine...
[2026-06-13 08:46:45,881.881 INFO    ] 2026-06-13 08:46:45
[2026-06-13 08:46:46,085.085 INFO    ] 2026-06-13 08:46:46
[2026-06-13 08:46:46,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:46,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:46,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:46,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:46,433.433 INFO    ] time= 13/06/2026 08:46:46
[2026-06-13 08:46:46,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:46,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:46,603.603 INFO    ] No existing commands found in stream
[2026-06-13 08:46:51,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:46:51,625.625 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 08:46:54,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:46:54,343.343 INFO    ] Checking for system updates...
[2026-06-13 08:46:54,366.366 INFO    ] 200
[2026-06-13 08:46:54,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:54,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:54,402.402 INFO    ] No update needed
[2026-06-13 08:46:54,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 08:46:54,422.422 INFO    ] 200
[2026-06-13 08:46:54,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:46:54,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:46:54,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:46:54,607.607 INFO    ] No camera update needed
[2026-06-13 08:46:54,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:46:54,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:46:54,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:46:54,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:46:56,657.657 INFO    ] ================================================
[2026-06-13 08:46:56,673.673 INFO    ] Launching Daemon at Sat Jun 13 08:46:56 IST 2026
[2026-06-13 08:46:56,685.685 INFO    ] ================================================
[2026-06-13 08:46:57,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:46:57
[2026-06-13 08:46:57,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:46:57,507.507 INFO    ] Initializing speech engine...
[2026-06-13 08:46:57,513.513 INFO    ] 2026-06-13 08:46:57
[2026-06-13 08:46:57,718.718 INFO    ] 2026-06-13 08:46:57
[2026-06-13 08:46:57,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:46:57,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:46:57,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:46:58,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:46:58,122.122 INFO    ] time= 13/06/2026 08:46:58
[2026-06-13 08:46:58,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:46:58,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:46:58,232.232 INFO    ] No existing commands found in stream
[2026-06-13 08:47:03,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:03,246.246 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 08:47:07,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:47:07,098.098 INFO    ] Checking for system updates...
[2026-06-13 08:47:07,119.119 INFO    ] 200
[2026-06-13 08:47:07,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:07,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:07,152.152 INFO    ] No update needed
[2026-06-13 08:47:07,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 08:47:07,178.178 INFO    ] 200
[2026-06-13 08:47:07,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:07,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:47:07,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:07,252.252 INFO    ] No camera update needed
[2026-06-13 08:47:07,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:47:07,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:47:07,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:47:07,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:47:09,302.302 INFO    ] ================================================
[2026-06-13 08:47:09,316.316 INFO    ] Launching Daemon at Sat Jun 13 08:47:09 IST 2026
[2026-06-13 08:47:09,327.327 INFO    ] ================================================
[2026-06-13 08:47:09,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:47:09
[2026-06-13 08:47:09,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:47:10,127.127 INFO    ] Initializing speech engine...
[2026-06-13 08:47:10,134.134 INFO    ] 2026-06-13 08:47:10
[2026-06-13 08:47:10,341.341 INFO    ] 2026-06-13 08:47:10
[2026-06-13 08:47:10,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:47:10,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:47:10,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:47:10,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:47:10,751.751 INFO    ] time= 13/06/2026 08:47:10
[2026-06-13 08:47:10,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:47:10,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:47:10,863.863 INFO    ] No existing commands found in stream
[2026-06-13 08:47:15,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:15,876.876 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 08:47:17,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:47:17,698.698 INFO    ] Checking for system updates...
[2026-06-13 08:47:17,718.718 INFO    ] 200
[2026-06-13 08:47:17,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:17,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:17,751.751 INFO    ] No update needed
[2026-06-13 08:47:17,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 08:47:17,773.773 INFO    ] 200
[2026-06-13 08:47:17,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:17,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:47:17,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:17,841.841 INFO    ] No camera update needed
[2026-06-13 08:47:17,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:47:17,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:47:17,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:47:17,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:47:19,889.889 INFO    ] ================================================
[2026-06-13 08:47:19,904.904 INFO    ] Launching Daemon at Sat Jun 13 08:47:19 IST 2026
[2026-06-13 08:47:19,915.915 INFO    ] ================================================
[2026-06-13 08:47:20,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:47:20
[2026-06-13 08:47:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:47:20,737.737 INFO    ] Initializing speech engine...
[2026-06-13 08:47:20,742.742 INFO    ] 2026-06-13 08:47:20
[2026-06-13 08:47:20,947.947 INFO    ] 2026-06-13 08:47:20
[2026-06-13 08:47:20,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:47:21,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:47:21,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:47:21,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:47:21,354.354 INFO    ] time= 13/06/2026 08:47:21
[2026-06-13 08:47:21,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:47:21,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:47:21,527.527 INFO    ] No existing commands found in stream
[2026-06-13 08:47:26,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:26,560.560 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 08:47:29,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:47:29,760.760 INFO    ] Checking for system updates...
[2026-06-13 08:47:29,800.800 INFO    ] 200
[2026-06-13 08:47:29,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:29,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:29,858.858 INFO    ] No update needed
[2026-06-13 08:47:29,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 08:47:29,899.899 INFO    ] 200
[2026-06-13 08:47:29,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:29,947.947 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:47:29,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:29,989.989 INFO    ] No camera update needed
[2026-06-13 08:47:29,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:47:29,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:47:29,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:47:30,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:47:32,039.039 INFO    ] ================================================
[2026-06-13 08:47:32,048.048 INFO    ] Launching Daemon at Sat Jun 13 08:47:32 IST 2026
[2026-06-13 08:47:32,054.054 INFO    ] ================================================
[2026-06-13 08:47:32,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:47:32
[2026-06-13 08:47:33,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:47:33,438.438 INFO    ] Initializing speech engine...
[2026-06-13 08:47:33,457.457 INFO    ] 2026-06-13 08:47:33
[2026-06-13 08:47:33,710.710 INFO    ] 2026-06-13 08:47:33
[2026-06-13 08:47:33,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:47:33,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:47:33,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:47:34,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:47:34,052.052 INFO    ] time= 13/06/2026 08:47:34
[2026-06-13 08:47:34,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:47:34,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:47:34,165.165 INFO    ] No existing commands found in stream
[2026-06-13 08:47:39,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:39,180.180 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 08:47:39,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:47:39,690.690 INFO    ] Checking for system updates...
[2026-06-13 08:47:39,711.711 INFO    ] 200
[2026-06-13 08:47:39,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:39,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:39,749.749 INFO    ] No update needed
[2026-06-13 08:47:39,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 08:47:39,770.770 INFO    ] 200
[2026-06-13 08:47:39,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:39,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:47:39,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:47:39,833.833 INFO    ] No camera update needed
[2026-06-13 08:47:39,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:47:39,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:47:39,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:47:39,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:47:41,873.873 INFO    ] ================================================
[2026-06-13 08:47:41,888.888 INFO    ] Launching Daemon at Sat Jun 13 08:47:41 IST 2026
[2026-06-13 08:47:41,899.899 INFO    ] ================================================
[2026-06-13 08:47:42,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:47:42
[2026-06-13 08:47:42,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:47:42,684.684 INFO    ] Initializing speech engine...
[2026-06-13 08:47:42,694.694 INFO    ] 2026-06-13 08:47:42
[2026-06-13 08:47:42,899.899 INFO    ] 2026-06-13 08:47:42
[2026-06-13 08:47:42,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:47:43,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:47:43,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:47:43,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:47:43,320.320 INFO    ] time= 13/06/2026 08:47:43
[2026-06-13 08:47:43,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:47:43,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:47:43,458.458 INFO    ] No existing commands found in stream
[2026-06-13 08:47:48,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:48,485.485 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 08:47:49,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:47:49,599.599 INFO    ] Checking for system updates...
[2026-06-13 08:47:49,623.623 INFO    ] 200
[2026-06-13 08:47:49,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:49,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:47:49,657.657 INFO    ] No update needed
[2026-06-13 08:47:49,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 08:47:49,680.680 INFO    ] 200
[2026-06-13 08:47:49,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:47:49,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:47:49,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:47:49,757.757 INFO    ] No camera update needed
[2026-06-13 08:47:49,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:47:49,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:47:49,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:47:49,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:47:51,804.804 INFO    ] ================================================
[2026-06-13 08:47:51,820.820 INFO    ] Launching Daemon at Sat Jun 13 08:47:51 IST 2026
[2026-06-13 08:47:51,831.831 INFO    ] ================================================
[2026-06-13 08:47:52,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:47:52
[2026-06-13 08:47:52,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:47:52,719.719 INFO    ] Initializing speech engine...
[2026-06-13 08:47:52,724.724 INFO    ] 2026-06-13 08:47:52
[2026-06-13 08:47:52,933.933 INFO    ] 2026-06-13 08:47:52
[2026-06-13 08:47:52,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:47:53,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:47:53,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:47:53,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:47:53,345.345 INFO    ] time= 13/06/2026 08:47:53
[2026-06-13 08:47:53,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:47:53,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:47:53,449.449 INFO    ] No existing commands found in stream
[2026-06-13 08:47:58,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:47:58,463.463 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 08:48:01,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:48:01,194.194 INFO    ] Checking for system updates...
[2026-06-13 08:48:01,216.216 INFO    ] 200
[2026-06-13 08:48:01,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:01,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:01,249.249 INFO    ] No update needed
[2026-06-13 08:48:01,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:01,271.271 INFO    ] 200
[2026-06-13 08:48:01,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:01,298.298 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:01,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:01,339.339 INFO    ] No camera update needed
[2026-06-13 08:48:01,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:01,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:01,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:01,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:48:03,383.383 INFO    ] ================================================
[2026-06-13 08:48:03,399.399 INFO    ] Launching Daemon at Sat Jun 13 08:48:03 IST 2026
[2026-06-13 08:48:03,411.411 INFO    ] ================================================
[2026-06-13 08:48:03,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:48:03
[2026-06-13 08:48:04,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:48:04,255.255 INFO    ] Initializing speech engine...
[2026-06-13 08:48:04,264.264 INFO    ] 2026-06-13 08:48:04
[2026-06-13 08:48:04,473.473 INFO    ] 2026-06-13 08:48:04
[2026-06-13 08:48:04,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:48:04,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:48:04,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:48:04,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:48:04,887.887 INFO    ] time= 13/06/2026 08:48:04
[2026-06-13 08:48:04,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:48:04,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:48:04,995.995 INFO    ] No existing commands found in stream
[2026-06-13 08:48:10,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:48:10,005.005 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 08:48:12,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:48:12,587.587 INFO    ] Checking for system updates...
[2026-06-13 08:48:12,608.608 INFO    ] 200
[2026-06-13 08:48:12,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:12,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:12,644.644 INFO    ] No update needed
[2026-06-13 08:48:12,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:12,666.666 INFO    ] 200
[2026-06-13 08:48:12,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:12,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:12,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:12,745.745 INFO    ] No camera update needed
[2026-06-13 08:48:12,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:12,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:12,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:12,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:48:14,780.780 INFO    ] ================================================
[2026-06-13 08:48:14,789.789 INFO    ] Launching Daemon at Sat Jun 13 08:48:14 IST 2026
[2026-06-13 08:48:14,795.795 INFO    ] ================================================
[2026-06-13 08:48:15,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:48:15
[2026-06-13 08:48:15,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:48:15,545.545 INFO    ] Initializing speech engine...
[2026-06-13 08:48:15,550.550 INFO    ] 2026-06-13 08:48:15
[2026-06-13 08:48:15,781.781 INFO    ] 2026-06-13 08:48:15
[2026-06-13 08:48:15,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:48:15,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:48:15,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:48:16,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:48:16,030.030 INFO    ] time= 13/06/2026 08:48:16
[2026-06-13 08:48:16,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:48:16,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:48:16,123.123 INFO    ] No existing commands found in stream
[2026-06-13 08:48:21,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:48:21,156.156 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 08:48:22,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:48:22,638.638 INFO    ] Checking for system updates...
[2026-06-13 08:48:22,660.660 INFO    ] 200
[2026-06-13 08:48:22,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:22,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:48:22,696.696 INFO    ] No update needed
[2026-06-13 08:48:22,698.698 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:22,717.717 INFO    ] 200
[2026-06-13 08:48:22,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:22,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:22,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:48:22,787.787 INFO    ] No camera update needed
[2026-06-13 08:48:22,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:22,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:22,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:22,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:48:24,835.835 INFO    ] ================================================
[2026-06-13 08:48:24,851.851 INFO    ] Launching Daemon at Sat Jun 13 08:48:24 IST 2026
[2026-06-13 08:48:24,862.862 INFO    ] ================================================
[2026-06-13 08:48:25,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:48:25
[2026-06-13 08:48:25,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:48:25,727.727 INFO    ] Initializing speech engine...
[2026-06-13 08:48:25,732.732 INFO    ] 2026-06-13 08:48:25
[2026-06-13 08:48:25,941.941 INFO    ] 2026-06-13 08:48:25
[2026-06-13 08:48:25,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:48:26,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:48:26,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:48:26,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:48:26,352.352 INFO    ] time= 13/06/2026 08:48:26
[2026-06-13 08:48:26,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:48:26,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:48:26,464.464 INFO    ] No existing commands found in stream
[2026-06-13 08:48:31,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:48:31,477.477 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 08:48:34,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:48:34,460.460 INFO    ] Checking for system updates...
[2026-06-13 08:48:34,481.481 INFO    ] 200
[2026-06-13 08:48:34,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:34,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:34,516.516 INFO    ] No update needed
[2026-06-13 08:48:34,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:34,538.538 INFO    ] 200
[2026-06-13 08:48:34,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:34,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:34,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:48:34,600.600 INFO    ] No camera update needed
[2026-06-13 08:48:34,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:34,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:34,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:34,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:48:36,648.648 INFO    ] ================================================
[2026-06-13 08:48:36,664.664 INFO    ] Launching Daemon at Sat Jun 13 08:48:36 IST 2026
[2026-06-13 08:48:36,675.675 INFO    ] ================================================
[2026-06-13 08:48:37,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:48:37
[2026-06-13 08:48:37,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:48:37,514.514 INFO    ] Initializing speech engine...
[2026-06-13 08:48:37,520.520 INFO    ] 2026-06-13 08:48:37
[2026-06-13 08:48:37,724.724 INFO    ] 2026-06-13 08:48:37
[2026-06-13 08:48:37,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:48:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:48:37,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:48:38,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:48:38,127.127 INFO    ] time= 13/06/2026 08:48:38
[2026-06-13 08:48:38,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:48:38,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:48:38,288.288 INFO    ] No existing commands found in stream
[2026-06-13 08:48:43,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:48:43,300.300 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 08:48:45,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:48:45,318.318 INFO    ] Checking for system updates...
[2026-06-13 08:48:45,341.341 INFO    ] 200
[2026-06-13 08:48:45,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:45,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:45,375.375 INFO    ] No update needed
[2026-06-13 08:48:45,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:45,396.396 INFO    ] 200
[2026-06-13 08:48:45,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:45,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:45,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:45,468.468 INFO    ] No camera update needed
[2026-06-13 08:48:45,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:45,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:45,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:45,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:48:47,517.517 INFO    ] ================================================
[2026-06-13 08:48:47,534.534 INFO    ] Launching Daemon at Sat Jun 13 08:48:47 IST 2026
[2026-06-13 08:48:47,545.545 INFO    ] ================================================
[2026-06-13 08:48:47,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:48:47
[2026-06-13 08:48:48,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:48:48,362.362 INFO    ] Initializing speech engine...
[2026-06-13 08:48:48,371.371 INFO    ] 2026-06-13 08:48:48
[2026-06-13 08:48:48,595.595 INFO    ] 2026-06-13 08:48:48
[2026-06-13 08:48:48,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:48:48,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:48:48,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:48:48,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:48:49,014.014 INFO    ] time= 13/06/2026 08:48:48
[2026-06-13 08:48:49,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:48:49,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:48:49,150.150 INFO    ] No existing commands found in stream
[2026-06-13 08:48:54,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:48:54,163.163 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 08:48:58,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:48:58,173.173 INFO    ] Checking for system updates...
[2026-06-13 08:48:58,195.195 INFO    ] 200
[2026-06-13 08:48:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:58,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:48:58,231.231 INFO    ] No update needed
[2026-06-13 08:48:58,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 08:48:58,253.253 INFO    ] 200
[2026-06-13 08:48:58,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:48:58,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:48:58,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:48:58,419.419 INFO    ] No camera update needed
[2026-06-13 08:48:58,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:48:58,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:48:58,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:48:58,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:00,468.468 INFO    ] ================================================
[2026-06-13 08:49:00,484.484 INFO    ] Launching Daemon at Sat Jun 13 08:49:00 IST 2026
[2026-06-13 08:49:00,495.495 INFO    ] ================================================
[2026-06-13 08:49:00,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:00
[2026-06-13 08:49:01,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:01,316.316 INFO    ] Initializing speech engine...
[2026-06-13 08:49:01,321.321 INFO    ] 2026-06-13 08:49:01
[2026-06-13 08:49:01,526.526 INFO    ] 2026-06-13 08:49:01
[2026-06-13 08:49:01,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:01,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:01,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:01,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:01,974.974 INFO    ] time= 13/06/2026 08:49:01
[2026-06-13 08:49:02,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:02,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:02,285.285 INFO    ] No existing commands found in stream
[2026-06-13 08:49:07,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:49:07,319.319 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 08:49:08,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:49:08,390.390 INFO    ] Checking for system updates...
[2026-06-13 08:49:08,412.412 INFO    ] 200
[2026-06-13 08:49:08,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:08,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:08,445.445 INFO    ] No update needed
[2026-06-13 08:49:08,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 08:49:08,466.466 INFO    ] 200
[2026-06-13 08:49:08,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:08,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:49:08,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:08,534.534 INFO    ] No camera update needed
[2026-06-13 08:49:08,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:49:08,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:49:08,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:49:08,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:10,583.583 INFO    ] ================================================
[2026-06-13 08:49:10,599.599 INFO    ] Launching Daemon at Sat Jun 13 08:49:10 IST 2026
[2026-06-13 08:49:10,611.611 INFO    ] ================================================
[2026-06-13 08:49:10,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:10
[2026-06-13 08:49:11,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:11,404.404 INFO    ] Initializing speech engine...
[2026-06-13 08:49:11,417.417 INFO    ] 2026-06-13 08:49:11
[2026-06-13 08:49:11,635.635 INFO    ] 2026-06-13 08:49:11
[2026-06-13 08:49:11,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:11,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:11,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:11,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:12,060.060 INFO    ] time= 13/06/2026 08:49:12
[2026-06-13 08:49:12,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:12,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:12,158.158 INFO    ] No existing commands found in stream
[2026-06-13 08:49:17,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:49:17,171.171 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 08:49:21,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:49:21,073.073 INFO    ] Checking for system updates...
[2026-06-13 08:49:21,094.094 INFO    ] 200
[2026-06-13 08:49:21,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:21,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:21,128.128 INFO    ] No update needed
[2026-06-13 08:49:21,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 08:49:21,150.150 INFO    ] 200
[2026-06-13 08:49:21,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:21,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:49:21,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:21,215.215 INFO    ] No camera update needed
[2026-06-13 08:49:21,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:49:21,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:49:21,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:49:21,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:23,261.261 INFO    ] ================================================
[2026-06-13 08:49:23,277.277 INFO    ] Launching Daemon at Sat Jun 13 08:49:23 IST 2026
[2026-06-13 08:49:23,288.288 INFO    ] ================================================
[2026-06-13 08:49:23,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:23
[2026-06-13 08:49:23,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:24,093.093 INFO    ] Initializing speech engine...
[2026-06-13 08:49:24,102.102 INFO    ] 2026-06-13 08:49:24
[2026-06-13 08:49:24,306.306 INFO    ] 2026-06-13 08:49:24
[2026-06-13 08:49:24,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:24,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:24,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:24,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:24,776.776 INFO    ] time= 13/06/2026 08:49:24
[2026-06-13 08:49:24,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:24,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:25,001.001 INFO    ] No existing commands found in stream
[2026-06-13 08:49:30,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:49:30,030.030 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 08:49:31,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:49:31,468.468 INFO    ] Checking for system updates...
[2026-06-13 08:49:31,489.489 INFO    ] 200
[2026-06-13 08:49:31,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:31,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:31,533.533 INFO    ] No update needed
[2026-06-13 08:49:31,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 08:49:31,554.554 INFO    ] 200
[2026-06-13 08:49:31,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:31,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:49:31,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:31,614.614 INFO    ] No camera update needed
[2026-06-13 08:49:31,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:49:31,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:49:31,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:49:31,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:33,654.654 INFO    ] ================================================
[2026-06-13 08:49:33,670.670 INFO    ] Launching Daemon at Sat Jun 13 08:49:33 IST 2026
[2026-06-13 08:49:33,681.681 INFO    ] ================================================
[2026-06-13 08:49:34,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:34
[2026-06-13 08:49:34,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:34,547.547 INFO    ] Initializing speech engine...
[2026-06-13 08:49:34,553.553 INFO    ] 2026-06-13 08:49:34
[2026-06-13 08:49:34,763.763 INFO    ] 2026-06-13 08:49:34
[2026-06-13 08:49:34,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:34,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:34,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:35,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:35,175.175 INFO    ] time= 13/06/2026 08:49:35
[2026-06-13 08:49:35,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:35,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:35,287.287 INFO    ] No existing commands found in stream
[2026-06-13 08:49:40,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:49:40,301.301 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 08:49:42,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:49:42,988.988 INFO    ] Checking for system updates...
[2026-06-13 08:49:43,009.009 INFO    ] 200
[2026-06-13 08:49:43,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:43,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:49:43,043.043 INFO    ] No update needed
[2026-06-13 08:49:43,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 08:49:43,065.065 INFO    ] 200
[2026-06-13 08:49:43,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:43,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:49:43,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:43,140.140 INFO    ] No camera update needed
[2026-06-13 08:49:43,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:49:43,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:49:43,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:49:43,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:45,189.189 INFO    ] ================================================
[2026-06-13 08:49:45,204.204 INFO    ] Launching Daemon at Sat Jun 13 08:49:45 IST 2026
[2026-06-13 08:49:45,216.216 INFO    ] ================================================
[2026-06-13 08:49:45,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:45
[2026-06-13 08:49:45,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:46,015.015 INFO    ] Initializing speech engine...
[2026-06-13 08:49:46,020.020 INFO    ] 2026-06-13 08:49:46
[2026-06-13 08:49:46,224.224 INFO    ] 2026-06-13 08:49:46
[2026-06-13 08:49:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:46,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:46,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:46,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:46,623.623 INFO    ] time= 13/06/2026 08:49:46
[2026-06-13 08:49:46,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:46,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:46,739.739 INFO    ] No existing commands found in stream
[2026-06-13 08:49:51,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:49:51,751.751 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 08:49:52,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:49:52,209.209 INFO    ] Checking for system updates...
[2026-06-13 08:49:52,231.231 INFO    ] 200
[2026-06-13 08:49:52,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:52,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:49:52,264.264 INFO    ] No update needed
[2026-06-13 08:49:52,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 08:49:52,285.285 INFO    ] 200
[2026-06-13 08:49:52,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:49:52,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:49:52,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:49:52,351.351 INFO    ] No camera update needed
[2026-06-13 08:49:52,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:49:52,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:49:52,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:49:52,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:49:54,399.399 INFO    ] ================================================
[2026-06-13 08:49:54,415.415 INFO    ] Launching Daemon at Sat Jun 13 08:49:54 IST 2026
[2026-06-13 08:49:54,426.426 INFO    ] ================================================
[2026-06-13 08:49:54,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:49:54
[2026-06-13 08:49:55,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:49:55,214.214 INFO    ] Initializing speech engine...
[2026-06-13 08:49:55,219.219 INFO    ] 2026-06-13 08:49:55
[2026-06-13 08:49:55,422.422 INFO    ] 2026-06-13 08:49:55
[2026-06-13 08:49:55,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:49:55,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:49:55,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:49:55,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:49:55,838.838 INFO    ] time= 13/06/2026 08:49:55
[2026-06-13 08:49:55,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:49:55,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:49:55,938.938 INFO    ] No existing commands found in stream
[2026-06-13 08:50:00,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:50:00,950.950 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 08:50:08,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:50:08,428.428 INFO    ] Checking for system updates...
[2026-06-13 08:50:08,464.464 INFO    ] 200
[2026-06-13 08:50:08,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:08,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:08,527.527 INFO    ] No update needed
[2026-06-13 08:50:08,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 08:50:08,564.564 INFO    ] 200
[2026-06-13 08:50:08,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:08,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:50:08,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:08,633.633 INFO    ] No camera update needed
[2026-06-13 08:50:08,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:50:08,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:50:08,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:50:08,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:50:10,681.681 INFO    ] ================================================
[2026-06-13 08:50:10,696.696 INFO    ] Launching Daemon at Sat Jun 13 08:50:10 IST 2026
[2026-06-13 08:50:10,707.707 INFO    ] ================================================
[2026-06-13 08:50:11,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:50:11
[2026-06-13 08:50:11,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:50:11,531.531 INFO    ] Initializing speech engine...
[2026-06-13 08:50:11,535.535 INFO    ] 2026-06-13 08:50:11
[2026-06-13 08:50:11,743.743 INFO    ] 2026-06-13 08:50:11
[2026-06-13 08:50:11,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:50:11,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:50:11,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:50:12,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:50:12,140.140 INFO    ] time= 13/06/2026 08:50:12
[2026-06-13 08:50:12,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:50:12,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:50:12,262.262 INFO    ] No existing commands found in stream
[2026-06-13 08:50:17,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:50:17,280.280 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 08:50:17,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:50:17,852.852 INFO    ] Checking for system updates...
[2026-06-13 08:50:17,872.872 INFO    ] 200
[2026-06-13 08:50:17,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:17,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:50:17,906.906 INFO    ] No update needed
[2026-06-13 08:50:17,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 08:50:17,927.927 INFO    ] 200
[2026-06-13 08:50:17,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:17,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:50:18,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:50:18,002.002 INFO    ] No camera update needed
[2026-06-13 08:50:18,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:50:18,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:50:18,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:50:18,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:50:20,044.044 INFO    ] ================================================
[2026-06-13 08:50:20,054.054 INFO    ] Launching Daemon at Sat Jun 13 08:50:20 IST 2026
[2026-06-13 08:50:20,061.061 INFO    ] ================================================
[2026-06-13 08:50:20,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:50:20
[2026-06-13 08:50:20,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:50:21,235.235 INFO    ] Initializing speech engine...
[2026-06-13 08:50:21,243.243 INFO    ] 2026-06-13 08:50:21
[2026-06-13 08:50:21,533.533 INFO    ] 2026-06-13 08:50:21
[2026-06-13 08:50:21,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:50:21,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:50:21,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:50:21,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:50:21,880.880 INFO    ] time= 13/06/2026 08:50:21
[2026-06-13 08:50:21,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:50:21,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:50:21,958.958 INFO    ] No existing commands found in stream
[2026-06-13 08:50:26,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:50:26,972.972 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 08:50:28,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:50:28,313.313 INFO    ] Checking for system updates...
[2026-06-13 08:50:28,335.335 INFO    ] 200
[2026-06-13 08:50:28,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:28,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:28,368.368 INFO    ] No update needed
[2026-06-13 08:50:28,369.369 INFO    ] Checking for camera pi updates...
[2026-06-13 08:50:28,389.389 INFO    ] 200
[2026-06-13 08:50:28,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:28,416.416 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:50:28,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:28,455.455 INFO    ] No camera update needed
[2026-06-13 08:50:28,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:50:28,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:50:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:50:28,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:50:30,502.502 INFO    ] ================================================
[2026-06-13 08:50:30,517.517 INFO    ] Launching Daemon at Sat Jun 13 08:50:30 IST 2026
[2026-06-13 08:50:30,528.528 INFO    ] ================================================
[2026-06-13 08:50:30,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:50:30
[2026-06-13 08:50:31,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:50:31,346.346 INFO    ] Initializing speech engine...
[2026-06-13 08:50:31,356.356 INFO    ] 2026-06-13 08:50:31
[2026-06-13 08:50:31,563.563 INFO    ] 2026-06-13 08:50:31
[2026-06-13 08:50:31,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:50:31,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:50:31,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:50:31,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:50:32,010.010 INFO    ] time= 13/06/2026 08:50:31
[2026-06-13 08:50:32,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:50:32,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:50:32,215.215 INFO    ] No existing commands found in stream
[2026-06-13 08:50:37,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:50:37,249.249 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 08:50:39,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:50:39,083.083 INFO    ] Checking for system updates...
[2026-06-13 08:50:39,105.105 INFO    ] 200
[2026-06-13 08:50:39,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:39,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:39,138.138 INFO    ] No update needed
[2026-06-13 08:50:39,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 08:50:39,159.159 INFO    ] 200
[2026-06-13 08:50:39,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:39,185.185 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:50:39,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:39,230.230 INFO    ] No camera update needed
[2026-06-13 08:50:39,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:50:39,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:50:39,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:50:39,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:50:41,270.270 INFO    ] ================================================
[2026-06-13 08:50:41,287.287 INFO    ] Launching Daemon at Sat Jun 13 08:50:41 IST 2026
[2026-06-13 08:50:41,297.297 INFO    ] ================================================
[2026-06-13 08:50:41,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:50:41
[2026-06-13 08:50:41,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:50:42,136.136 INFO    ] Initializing speech engine...
[2026-06-13 08:50:42,141.141 INFO    ] 2026-06-13 08:50:42
[2026-06-13 08:50:42,349.349 INFO    ] 2026-06-13 08:50:42
[2026-06-13 08:50:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:50:42,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:50:42,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:50:42,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:50:42,761.761 INFO    ] time= 13/06/2026 08:50:42
[2026-06-13 08:50:42,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:50:42,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:50:42,866.866 INFO    ] No existing commands found in stream
[2026-06-13 08:50:47,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:50:47,879.879 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 08:50:51,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:50:51,782.782 INFO    ] Checking for system updates...
[2026-06-13 08:50:51,813.813 INFO    ] 200
[2026-06-13 08:50:51,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:51,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:51,847.847 INFO    ] No update needed
[2026-06-13 08:50:51,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 08:50:51,868.868 INFO    ] 200
[2026-06-13 08:50:51,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:50:51,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:50:51,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:50:51,936.936 INFO    ] No camera update needed
[2026-06-13 08:50:51,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:50:51,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:50:51,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:50:51,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:50:53,987.987 INFO    ] ================================================
[2026-06-13 08:50:54,002.002 INFO    ] Launching Daemon at Sat Jun 13 08:50:53 IST 2026
[2026-06-13 08:50:54,013.013 INFO    ] ================================================
[2026-06-13 08:50:54,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:50:54
[2026-06-13 08:50:54,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:50:54,885.885 INFO    ] Initializing speech engine...
[2026-06-13 08:50:54,894.894 INFO    ] 2026-06-13 08:50:54
[2026-06-13 08:50:55,111.111 INFO    ] 2026-06-13 08:50:55
[2026-06-13 08:50:55,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:50:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:50:55,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:50:55,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:50:55,514.514 INFO    ] time= 13/06/2026 08:50:55
[2026-06-13 08:50:55,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:50:55,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:50:55,681.681 INFO    ] No existing commands found in stream
[2026-06-13 08:51:00,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:00,695.695 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 08:51:02,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:51:02,708.708 INFO    ] Checking for system updates...
[2026-06-13 08:51:02,739.739 INFO    ] 200
[2026-06-13 08:51:02,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:02,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:02,786.786 INFO    ] No update needed
[2026-06-13 08:51:02,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:02,822.822 INFO    ] 200
[2026-06-13 08:51:02,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:02,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:03,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:03,020.020 INFO    ] No camera update needed
[2026-06-13 08:51:03,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:03,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:03,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:03,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:51:05,068.068 INFO    ] ================================================
[2026-06-13 08:51:05,083.083 INFO    ] Launching Daemon at Sat Jun 13 08:51:05 IST 2026
[2026-06-13 08:51:05,094.094 INFO    ] ================================================
[2026-06-13 08:51:05,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:51:05
[2026-06-13 08:51:05,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:51:05,917.917 INFO    ] Initializing speech engine...
[2026-06-13 08:51:05,926.926 INFO    ] 2026-06-13 08:51:05
[2026-06-13 08:51:06,150.150 INFO    ] 2026-06-13 08:51:06
[2026-06-13 08:51:06,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:51:06,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:51:06,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:51:06,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:51:06,557.557 INFO    ] time= 13/06/2026 08:51:06
[2026-06-13 08:51:06,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:51:06,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:51:06,667.667 INFO    ] No existing commands found in stream
[2026-06-13 08:51:11,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:11,680.680 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 08:51:14,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:51:14,492.492 INFO    ] Checking for system updates...
[2026-06-13 08:51:14,514.514 INFO    ] 200
[2026-06-13 08:51:14,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:14,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:14,546.546 INFO    ] No update needed
[2026-06-13 08:51:14,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:14,570.570 INFO    ] 200
[2026-06-13 08:51:14,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:14,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:14,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:14,643.643 INFO    ] No camera update needed
[2026-06-13 08:51:14,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:14,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:14,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:14,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:51:16,690.690 INFO    ] ================================================
[2026-06-13 08:51:16,706.706 INFO    ] Launching Daemon at Sat Jun 13 08:51:16 IST 2026
[2026-06-13 08:51:16,718.718 INFO    ] ================================================
[2026-06-13 08:51:17,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:51:17
[2026-06-13 08:51:17,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:51:18,096.096 INFO    ] Initializing speech engine...
[2026-06-13 08:51:18,103.103 INFO    ] 2026-06-13 08:51:18
[2026-06-13 08:51:18,362.362 INFO    ] 2026-06-13 08:51:18
[2026-06-13 08:51:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:51:18,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:51:18,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:51:18,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:51:18,786.786 INFO    ] time= 13/06/2026 08:51:18
[2026-06-13 08:51:18,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:51:18,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:51:18,969.969 INFO    ] No existing commands found in stream
[2026-06-13 08:51:23,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:23,983.983 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 08:51:26,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:51:26,774.774 INFO    ] Checking for system updates...
[2026-06-13 08:51:26,795.795 INFO    ] 200
[2026-06-13 08:51:26,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:26,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:26,829.829 INFO    ] No update needed
[2026-06-13 08:51:26,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:26,852.852 INFO    ] 200
[2026-06-13 08:51:26,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:26,881.881 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:26,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:26,929.929 INFO    ] No camera update needed
[2026-06-13 08:51:26,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:26,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:26,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:26,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:51:28,981.981 INFO    ] ================================================
[2026-06-13 08:51:29,997.997 INFO    ] Launching Daemon at Sat Jun 13 08:51:28 IST 2026
[2026-06-13 08:51:29,008.008 INFO    ] ================================================
[2026-06-13 08:51:29,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:51:29
[2026-06-13 08:51:29,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:51:29,804.804 INFO    ] Initializing speech engine...
[2026-06-13 08:51:29,809.809 INFO    ] 2026-06-13 08:51:29
[2026-06-13 08:51:30,012.012 INFO    ] 2026-06-13 08:51:29
[2026-06-13 08:51:30,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:51:30,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:51:30,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:51:30,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:51:30,287.287 INFO    ] time= 13/06/2026 08:51:30
[2026-06-13 08:51:30,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:51:30,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:51:30,369.369 INFO    ] No existing commands found in stream
[2026-06-13 08:51:35,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:35,400.400 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 08:51:36,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:51:36,935.935 INFO    ] Checking for system updates...
[2026-06-13 08:51:36,959.959 INFO    ] 200
[2026-06-13 08:51:36,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:36,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:36,997.997 INFO    ] No update needed
[2026-06-13 08:51:36,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:37,019.019 INFO    ] 200
[2026-06-13 08:51:37,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:37,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:37,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:37,096.096 INFO    ] No camera update needed
[2026-06-13 08:51:37,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:37,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:37,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:37,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:51:39,145.145 INFO    ] ================================================
[2026-06-13 08:51:39,161.161 INFO    ] Launching Daemon at Sat Jun 13 08:51:39 IST 2026
[2026-06-13 08:51:39,171.171 INFO    ] ================================================
[2026-06-13 08:51:39,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:51:39
[2026-06-13 08:51:39,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:51:39,982.982 INFO    ] Initializing speech engine...
[2026-06-13 08:51:39,996.996 INFO    ] 2026-06-13 08:51:39
[2026-06-13 08:51:40,215.215 INFO    ] 2026-06-13 08:51:40
[2026-06-13 08:51:40,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:51:40,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:51:40,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:51:40,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:51:40,484.484 INFO    ] time= 13/06/2026 08:51:40
[2026-06-13 08:51:40,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:51:40,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:51:40,599.599 INFO    ] No existing commands found in stream
[2026-06-13 08:51:45,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:45,619.619 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 08:51:49,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:51:49,472.472 INFO    ] Checking for system updates...
[2026-06-13 08:51:49,493.493 INFO    ] 200
[2026-06-13 08:51:49,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:49,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:49,526.526 INFO    ] No update needed
[2026-06-13 08:51:49,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:49,547.547 INFO    ] 200
[2026-06-13 08:51:49,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:49,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:49,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:51:49,614.614 INFO    ] No camera update needed
[2026-06-13 08:51:49,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:49,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:49,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:49,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:51:51,662.662 INFO    ] ================================================
[2026-06-13 08:51:51,678.678 INFO    ] Launching Daemon at Sat Jun 13 08:51:51 IST 2026
[2026-06-13 08:51:51,689.689 INFO    ] ================================================
[2026-06-13 08:51:52,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:51:52
[2026-06-13 08:51:52,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:51:52,483.483 INFO    ] Initializing speech engine...
[2026-06-13 08:51:52,494.494 INFO    ] 2026-06-13 08:51:52
[2026-06-13 08:51:52,711.711 INFO    ] 2026-06-13 08:51:52
[2026-06-13 08:51:52,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:51:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:51:52,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:51:52,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:51:52,977.977 INFO    ] time= 13/06/2026 08:51:52
[2026-06-13 08:51:52,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:51:52,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:51:53,066.066 INFO    ] No existing commands found in stream
[2026-06-13 08:51:58,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:51:58,103.103 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 08:51:58,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:51:58,799.799 INFO    ] Checking for system updates...
[2026-06-13 08:51:58,819.819 INFO    ] 200
[2026-06-13 08:51:58,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:58,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:58,852.852 INFO    ] No update needed
[2026-06-13 08:51:58,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 08:51:58,873.873 INFO    ] 200
[2026-06-13 08:51:58,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:51:58,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:51:58,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:51:58,938.938 INFO    ] No camera update needed
[2026-06-13 08:51:58,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:51:58,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:51:58,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:51:58,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:00,986.986 INFO    ] ================================================
[2026-06-13 08:52:01,001.001 INFO    ] Launching Daemon at Sat Jun 13 08:52:00 IST 2026
[2026-06-13 08:52:01,012.012 INFO    ] ================================================
[2026-06-13 08:52:01,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:01
[2026-06-13 08:52:02,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:02,503.503 INFO    ] Initializing speech engine...
[2026-06-13 08:52:02,514.514 INFO    ] 2026-06-13 08:52:02
[2026-06-13 08:52:02,795.795 INFO    ] 2026-06-13 08:52:02
[2026-06-13 08:52:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:03,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:03,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:03,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:03,134.134 INFO    ] time= 13/06/2026 08:52:03
[2026-06-13 08:52:03,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:03,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:03,248.248 INFO    ] No existing commands found in stream
[2026-06-13 08:52:08,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:52:08,270.270 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 08:52:11,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:52:11,240.240 INFO    ] Checking for system updates...
[2026-06-13 08:52:11,261.261 INFO    ] 200
[2026-06-13 08:52:11,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:11,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:52:11,295.295 INFO    ] No update needed
[2026-06-13 08:52:11,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 08:52:11,317.317 INFO    ] 200
[2026-06-13 08:52:11,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:11,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:52:11,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:52:11,383.383 INFO    ] No camera update needed
[2026-06-13 08:52:11,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:52:11,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:52:11,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:52:11,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:13,433.433 INFO    ] ================================================
[2026-06-13 08:52:13,448.448 INFO    ] Launching Daemon at Sat Jun 13 08:52:13 IST 2026
[2026-06-13 08:52:13,458.458 INFO    ] ================================================
[2026-06-13 08:52:13,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:13
[2026-06-13 08:52:14,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:14,294.294 INFO    ] Initializing speech engine...
[2026-06-13 08:52:14,300.300 INFO    ] 2026-06-13 08:52:14
[2026-06-13 08:52:14,508.508 INFO    ] 2026-06-13 08:52:14
[2026-06-13 08:52:14,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:14,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:14,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:14,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:14,979.979 INFO    ] time= 13/06/2026 08:52:14
[2026-06-13 08:52:15,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:15,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:15,117.117 INFO    ] No existing commands found in stream
[2026-06-13 08:52:20,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:52:20,134.134 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 08:52:20,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:52:20,591.591 INFO    ] Checking for system updates...
[2026-06-13 08:52:20,629.629 INFO    ] 200
[2026-06-13 08:52:20,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:20,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:52:20,696.696 INFO    ] No update needed
[2026-06-13 08:52:20,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 08:52:20,742.742 INFO    ] 200
[2026-06-13 08:52:20,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:20,786.786 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:52:20,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:52:20,831.831 INFO    ] No camera update needed
[2026-06-13 08:52:20,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:52:20,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:52:20,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:52:20,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:22,892.892 INFO    ] ================================================
[2026-06-13 08:52:22,907.907 INFO    ] Launching Daemon at Sat Jun 13 08:52:22 IST 2026
[2026-06-13 08:52:22,917.917 INFO    ] ================================================
[2026-06-13 08:52:23,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:23
[2026-06-13 08:52:23,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:24,010.010 INFO    ] Initializing speech engine...
[2026-06-13 08:52:24,022.022 INFO    ] 2026-06-13 08:52:24
[2026-06-13 08:52:24,274.274 INFO    ] 2026-06-13 08:52:24
[2026-06-13 08:52:24,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:24,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:24,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:24,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:24,717.717 INFO    ] time= 13/06/2026 08:52:24
[2026-06-13 08:52:24,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:24,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:24,909.909 INFO    ] No existing commands found in stream
[2026-06-13 08:52:29,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:52:29,926.926 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 08:52:33,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:52:33,713.713 INFO    ] Checking for system updates...
[2026-06-13 08:52:33,734.734 INFO    ] 200
[2026-06-13 08:52:33,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:33,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:52:33,771.771 INFO    ] No update needed
[2026-06-13 08:52:33,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 08:52:33,792.792 INFO    ] 200
[2026-06-13 08:52:33,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:33,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:52:33,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:52:33,865.865 INFO    ] No camera update needed
[2026-06-13 08:52:33,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:52:33,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:52:33,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:52:33,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:35,913.913 INFO    ] ================================================
[2026-06-13 08:52:35,928.928 INFO    ] Launching Daemon at Sat Jun 13 08:52:35 IST 2026
[2026-06-13 08:52:35,939.939 INFO    ] ================================================
[2026-06-13 08:52:36,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:36
[2026-06-13 08:52:36,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:36,766.766 INFO    ] Initializing speech engine...
[2026-06-13 08:52:36,772.772 INFO    ] 2026-06-13 08:52:36
[2026-06-13 08:52:36,976.976 INFO    ] 2026-06-13 08:52:36
[2026-06-13 08:52:37,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:37,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:37,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:37,395.395 INFO    ] time= 13/06/2026 08:52:37
[2026-06-13 08:52:37,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:37,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:37,491.491 INFO    ] No existing commands found in stream
[2026-06-13 08:52:42,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:52:42,504.504 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 08:52:43,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:52:43,355.355 INFO    ] Checking for system updates...
[2026-06-13 08:52:43,376.376 INFO    ] 200
[2026-06-13 08:52:43,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:43,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:52:43,412.412 INFO    ] No update needed
[2026-06-13 08:52:43,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 08:52:43,432.432 INFO    ] 200
[2026-06-13 08:52:43,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:43,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:52:43,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:52:43,495.495 INFO    ] No camera update needed
[2026-06-13 08:52:43,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:52:43,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:52:43,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:52:43,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:45,544.544 INFO    ] ================================================
[2026-06-13 08:52:45,559.559 INFO    ] Launching Daemon at Sat Jun 13 08:52:45 IST 2026
[2026-06-13 08:52:45,570.570 INFO    ] ================================================
[2026-06-13 08:52:45,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:45
[2026-06-13 08:52:46,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:46,362.362 INFO    ] Initializing speech engine...
[2026-06-13 08:52:46,368.368 INFO    ] 2026-06-13 08:52:46
[2026-06-13 08:52:46,576.576 INFO    ] 2026-06-13 08:52:46
[2026-06-13 08:52:46,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:46,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:46,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:46,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:46,986.986 INFO    ] time= 13/06/2026 08:52:46
[2026-06-13 08:52:47,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:47,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:47,110.110 INFO    ] No existing commands found in stream
[2026-06-13 08:52:52,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:52:52,122.122 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 08:52:55,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:52:55,547.547 INFO    ] Checking for system updates...
[2026-06-13 08:52:55,568.568 INFO    ] 200
[2026-06-13 08:52:55,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:55,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:52:55,603.603 INFO    ] No update needed
[2026-06-13 08:52:55,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 08:52:55,624.624 INFO    ] 200
[2026-06-13 08:52:55,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:52:55,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:52:55,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:52:55,700.700 INFO    ] No camera update needed
[2026-06-13 08:52:55,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:52:55,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:52:55,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:52:55,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:52:57,749.749 INFO    ] ================================================
[2026-06-13 08:52:57,764.764 INFO    ] Launching Daemon at Sat Jun 13 08:52:57 IST 2026
[2026-06-13 08:52:57,776.776 INFO    ] ================================================
[2026-06-13 08:52:58,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:52:58
[2026-06-13 08:52:58,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:52:58,646.646 INFO    ] Initializing speech engine...
[2026-06-13 08:52:58,651.651 INFO    ] 2026-06-13 08:52:58
[2026-06-13 08:52:58,859.859 INFO    ] 2026-06-13 08:52:58
[2026-06-13 08:52:58,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:52:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:52:59,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:52:59,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:52:59,278.278 INFO    ] time= 13/06/2026 08:52:59
[2026-06-13 08:52:59,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:52:59,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:52:59,377.377 INFO    ] No existing commands found in stream
[2026-06-13 08:53:04,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:53:04,394.394 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 08:53:06,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:53:06,573.573 INFO    ] Checking for system updates...
[2026-06-13 08:53:06,595.595 INFO    ] 200
[2026-06-13 08:53:06,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:06,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:53:06,628.628 INFO    ] No update needed
[2026-06-13 08:53:06,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 08:53:06,651.651 INFO    ] 200
[2026-06-13 08:53:06,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:06,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:53:06,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:53:06,817.817 INFO    ] No camera update needed
[2026-06-13 08:53:06,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:53:06,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:53:06,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:53:06,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:53:08,866.866 INFO    ] ================================================
[2026-06-13 08:53:08,882.882 INFO    ] Launching Daemon at Sat Jun 13 08:53:08 IST 2026
[2026-06-13 08:53:08,892.892 INFO    ] ================================================
[2026-06-13 08:53:09,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:53:09
[2026-06-13 08:53:09,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:53:09,698.698 INFO    ] Initializing speech engine...
[2026-06-13 08:53:09,704.704 INFO    ] 2026-06-13 08:53:09
[2026-06-13 08:53:09,907.907 INFO    ] 2026-06-13 08:53:09
[2026-06-13 08:53:09,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:53:10,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:53:10,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:53:10,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:53:10,310.310 INFO    ] time= 13/06/2026 08:53:10
[2026-06-13 08:53:10,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:53:10,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:53:10,423.423 INFO    ] No existing commands found in stream
[2026-06-13 08:53:15,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:53:15,440.440 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 08:53:20,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:53:20,975.975 INFO    ] Checking for system updates...
[2026-06-13 08:53:20,995.995 INFO    ] 200
[2026-06-13 08:53:20,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:21,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:21,028.028 INFO    ] No update needed
[2026-06-13 08:53:21,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 08:53:21,049.049 INFO    ] 200
[2026-06-13 08:53:21,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:21,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:53:21,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:21,119.119 INFO    ] No camera update needed
[2026-06-13 08:53:21,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:53:21,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:53:21,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:53:21,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:53:23,167.167 INFO    ] ================================================
[2026-06-13 08:53:23,182.182 INFO    ] Launching Daemon at Sat Jun 13 08:53:23 IST 2026
[2026-06-13 08:53:23,193.193 INFO    ] ================================================
[2026-06-13 08:53:23,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:53:23
[2026-06-13 08:53:23,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:53:23,978.978 INFO    ] Initializing speech engine...
[2026-06-13 08:53:23,990.990 INFO    ] 2026-06-13 08:53:23
[2026-06-13 08:53:24,198.198 INFO    ] 2026-06-13 08:53:24
[2026-06-13 08:53:24,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:53:24,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:53:24,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:53:24,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:53:24,592.592 INFO    ] time= 13/06/2026 08:53:24
[2026-06-13 08:53:24,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:53:24,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:53:24,710.710 INFO    ] No existing commands found in stream
[2026-06-13 08:53:29,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:53:29,724.724 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 08:53:32,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:53:32,148.148 INFO    ] Checking for system updates...
[2026-06-13 08:53:32,172.172 INFO    ] 200
[2026-06-13 08:53:32,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:32,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:53:32,211.211 INFO    ] No update needed
[2026-06-13 08:53:32,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 08:53:32,237.237 INFO    ] 200
[2026-06-13 08:53:32,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:32,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:53:32,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:53:32,296.296 INFO    ] No camera update needed
[2026-06-13 08:53:32,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:53:32,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:53:32,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:53:32,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:53:34,339.339 INFO    ] ================================================
[2026-06-13 08:53:34,354.354 INFO    ] Launching Daemon at Sat Jun 13 08:53:34 IST 2026
[2026-06-13 08:53:34,365.365 INFO    ] ================================================
[2026-06-13 08:53:34,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:53:34
[2026-06-13 08:53:35,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:53:35,206.206 INFO    ] Initializing speech engine...
[2026-06-13 08:53:35,212.212 INFO    ] 2026-06-13 08:53:35
[2026-06-13 08:53:35,425.425 INFO    ] 2026-06-13 08:53:35
[2026-06-13 08:53:35,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:53:35,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:53:35,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:53:35,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:53:35,842.842 INFO    ] time= 13/06/2026 08:53:35
[2026-06-13 08:53:35,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:53:35,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:53:35,950.950 INFO    ] No existing commands found in stream
[2026-06-13 08:53:40,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:53:40,963.963 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 08:53:44,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:53:44,402.402 INFO    ] Checking for system updates...
[2026-06-13 08:53:44,423.423 INFO    ] 200
[2026-06-13 08:53:44,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:44,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:44,460.460 INFO    ] No update needed
[2026-06-13 08:53:44,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 08:53:44,482.482 INFO    ] 200
[2026-06-13 08:53:44,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:44,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:53:44,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:44,551.551 INFO    ] No camera update needed
[2026-06-13 08:53:44,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:53:44,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:53:44,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:53:44,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:53:46,599.599 INFO    ] ================================================
[2026-06-13 08:53:46,614.614 INFO    ] Launching Daemon at Sat Jun 13 08:53:46 IST 2026
[2026-06-13 08:53:46,624.624 INFO    ] ================================================
[2026-06-13 08:53:46,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:53:46
[2026-06-13 08:53:47,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:53:47,418.418 INFO    ] Initializing speech engine...
[2026-06-13 08:53:47,421.421 INFO    ] 2026-06-13 08:53:47
[2026-06-13 08:53:47,627.627 INFO    ] 2026-06-13 08:53:47
[2026-06-13 08:53:47,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:53:47,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:53:47,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:53:47,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:53:48,049.049 INFO    ] time= 13/06/2026 08:53:47
[2026-06-13 08:53:48,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:53:48,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:53:48,150.150 INFO    ] No existing commands found in stream
[2026-06-13 08:53:53,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:53:53,163.163 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 08:53:56,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:53:56,049.049 INFO    ] Checking for system updates...
[2026-06-13 08:53:56,070.070 INFO    ] 200
[2026-06-13 08:53:56,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:56,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:56,103.103 INFO    ] No update needed
[2026-06-13 08:53:56,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 08:53:56,124.124 INFO    ] 200
[2026-06-13 08:53:56,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:53:56,153.153 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:53:56,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:53:56,189.189 INFO    ] No camera update needed
[2026-06-13 08:53:56,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:53:56,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:53:56,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:53:56,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:53:58,239.239 INFO    ] ================================================
[2026-06-13 08:53:58,254.254 INFO    ] Launching Daemon at Sat Jun 13 08:53:58 IST 2026
[2026-06-13 08:53:58,265.265 INFO    ] ================================================
[2026-06-13 08:53:58,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:53:58
[2026-06-13 08:53:58,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:53:59,125.125 INFO    ] Initializing speech engine...
[2026-06-13 08:53:59,130.130 INFO    ] 2026-06-13 08:53:59
[2026-06-13 08:53:59,337.337 INFO    ] 2026-06-13 08:53:59
[2026-06-13 08:53:59,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:53:59,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:53:59,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:53:59,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:53:59,768.768 INFO    ] time= 13/06/2026 08:53:59
[2026-06-13 08:53:59,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:53:59,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:53:59,927.927 INFO    ] No existing commands found in stream
[2026-06-13 08:54:04,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:04,945.945 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 08:54:07,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:54:07,456.456 INFO    ] Checking for system updates...
[2026-06-13 08:54:07,477.477 INFO    ] 200
[2026-06-13 08:54:07,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:07,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:54:07,513.513 INFO    ] No update needed
[2026-06-13 08:54:07,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:07,537.537 INFO    ] 200
[2026-06-13 08:54:07,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:07,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:07,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:54:07,604.604 INFO    ] No camera update needed
[2026-06-13 08:54:07,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:07,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:07,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:07,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:54:09,656.656 INFO    ] ================================================
[2026-06-13 08:54:09,671.671 INFO    ] Launching Daemon at Sat Jun 13 08:54:09 IST 2026
[2026-06-13 08:54:09,682.682 INFO    ] ================================================
[2026-06-13 08:54:10,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:54:10
[2026-06-13 08:54:10,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:54:10,476.476 INFO    ] Initializing speech engine...
[2026-06-13 08:54:10,482.482 INFO    ] 2026-06-13 08:54:10
[2026-06-13 08:54:10,686.686 INFO    ] 2026-06-13 08:54:10
[2026-06-13 08:54:10,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:54:10,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:54:10,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:54:11,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:54:11,085.085 INFO    ] time= 13/06/2026 08:54:11
[2026-06-13 08:54:11,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:54:11,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:54:11,199.199 INFO    ] No existing commands found in stream
[2026-06-13 08:54:16,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:16,213.213 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 08:54:18,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:54:18,937.937 INFO    ] Checking for system updates...
[2026-06-13 08:54:18,958.958 INFO    ] 200
[2026-06-13 08:54:18,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:18,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:54:18,992.992 INFO    ] No update needed
[2026-06-13 08:54:18,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:19,013.013 INFO    ] 200
[2026-06-13 08:54:19,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:19,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:19,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:19,076.076 INFO    ] No camera update needed
[2026-06-13 08:54:19,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:19,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:19,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:19,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:54:21,123.123 INFO    ] ================================================
[2026-06-13 08:54:21,138.138 INFO    ] Launching Daemon at Sat Jun 13 08:54:21 IST 2026
[2026-06-13 08:54:21,149.149 INFO    ] ================================================
[2026-06-13 08:54:21,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:54:21
[2026-06-13 08:54:21,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:54:21,987.987 INFO    ] Initializing speech engine...
[2026-06-13 08:54:21,995.995 INFO    ] 2026-06-13 08:54:21
[2026-06-13 08:54:22,295.295 INFO    ] 2026-06-13 08:54:22
[2026-06-13 08:54:22,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:54:22,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:54:22,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:54:22,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:54:22,649.649 INFO    ] time= 13/06/2026 08:54:22
[2026-06-13 08:54:22,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:54:22,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:54:22,732.732 INFO    ] No existing commands found in stream
[2026-06-13 08:54:27,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:27,743.743 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 08:54:29,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:54:29,980.980 INFO    ] Checking for system updates...
[2026-06-13 08:54:30,001.001 INFO    ] 200
[2026-06-13 08:54:30,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:30,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:30,035.035 INFO    ] No update needed
[2026-06-13 08:54:30,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:30,055.055 INFO    ] 200
[2026-06-13 08:54:30,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:30,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:30,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:30,116.116 INFO    ] No camera update needed
[2026-06-13 08:54:30,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:30,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:30,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:30,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:54:32,163.163 INFO    ] ================================================
[2026-06-13 08:54:32,178.178 INFO    ] Launching Daemon at Sat Jun 13 08:54:32 IST 2026
[2026-06-13 08:54:32,189.189 INFO    ] ================================================
[2026-06-13 08:54:32,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:54:32
[2026-06-13 08:54:32,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:54:32,976.976 INFO    ] Initializing speech engine...
[2026-06-13 08:54:32,979.979 INFO    ] 2026-06-13 08:54:32
[2026-06-13 08:54:33,187.187 INFO    ] 2026-06-13 08:54:33
[2026-06-13 08:54:33,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:54:33,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:54:33,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:54:33,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:54:33,632.632 INFO    ] time= 13/06/2026 08:54:33
[2026-06-13 08:54:33,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:54:33,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:54:33,791.791 INFO    ] No existing commands found in stream
[2026-06-13 08:54:38,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:38,805.805 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 08:54:39,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:54:39,710.710 INFO    ] Checking for system updates...
[2026-06-13 08:54:39,732.732 INFO    ] 200
[2026-06-13 08:54:39,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:39,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:39,765.765 INFO    ] No update needed
[2026-06-13 08:54:39,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:39,785.785 INFO    ] 200
[2026-06-13 08:54:39,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:39,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:39,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:54:39,854.854 INFO    ] No camera update needed
[2026-06-13 08:54:39,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:39,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:39,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:39,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:54:41,901.901 INFO    ] ================================================
[2026-06-13 08:54:41,917.917 INFO    ] Launching Daemon at Sat Jun 13 08:54:41 IST 2026
[2026-06-13 08:54:41,927.927 INFO    ] ================================================
[2026-06-13 08:54:42,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:54:42
[2026-06-13 08:54:42,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:54:42,741.741 INFO    ] Initializing speech engine...
[2026-06-13 08:54:42,750.750 INFO    ] 2026-06-13 08:54:42
[2026-06-13 08:54:42,972.972 INFO    ] 2026-06-13 08:54:42
[2026-06-13 08:54:43,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:54:43,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:54:43,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:54:43,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:54:43,418.418 INFO    ] time= 13/06/2026 08:54:43
[2026-06-13 08:54:43,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:54:43,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:54:43,531.531 INFO    ] No existing commands found in stream
[2026-06-13 08:54:48,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:48,545.545 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 08:54:48,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:54:48,873.873 INFO    ] Checking for system updates...
[2026-06-13 08:54:48,894.894 INFO    ] 200
[2026-06-13 08:54:48,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:48,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:48,927.927 INFO    ] No update needed
[2026-06-13 08:54:48,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:48,948.948 INFO    ] 200
[2026-06-13 08:54:48,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:48,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:49,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:49,016.016 INFO    ] No camera update needed
[2026-06-13 08:54:49,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:49,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:49,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:49,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:54:51,063.063 INFO    ] ================================================
[2026-06-13 08:54:51,079.079 INFO    ] Launching Daemon at Sat Jun 13 08:54:51 IST 2026
[2026-06-13 08:54:51,090.090 INFO    ] ================================================
[2026-06-13 08:54:51,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:54:51
[2026-06-13 08:54:51,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:54:51,870.870 INFO    ] Initializing speech engine...
[2026-06-13 08:54:51,875.875 INFO    ] 2026-06-13 08:54:51
[2026-06-13 08:54:52,105.105 INFO    ] 2026-06-13 08:54:52
[2026-06-13 08:54:52,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:54:52,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:54:52,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:54:52,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:54:52,507.507 INFO    ] time= 13/06/2026 08:54:52
[2026-06-13 08:54:52,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:54:52,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:54:52,659.659 INFO    ] No existing commands found in stream
[2026-06-13 08:54:57,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:54:57,673.673 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 08:54:58,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:54:58,170.170 INFO    ] Checking for system updates...
[2026-06-13 08:54:58,191.191 INFO    ] 200
[2026-06-13 08:54:58,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:58,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:58,226.226 INFO    ] No update needed
[2026-06-13 08:54:58,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 08:54:58,247.247 INFO    ] 200
[2026-06-13 08:54:58,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:54:58,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:54:58,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:54:58,313.313 INFO    ] No camera update needed
[2026-06-13 08:54:58,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:54:58,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:54:58,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:54:58,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:55:00,360.360 INFO    ] ================================================
[2026-06-13 08:55:00,375.375 INFO    ] Launching Daemon at Sat Jun 13 08:55:00 IST 2026
[2026-06-13 08:55:00,386.386 INFO    ] ================================================
[2026-06-13 08:55:00,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:55:00
[2026-06-13 08:55:01,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:55:01,200.200 INFO    ] Initializing speech engine...
[2026-06-13 08:55:01,205.205 INFO    ] 2026-06-13 08:55:01
[2026-06-13 08:55:01,417.417 INFO    ] 2026-06-13 08:55:01
[2026-06-13 08:55:01,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:55:01,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:55:01,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:55:01,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:55:01,790.790 INFO    ] time= 13/06/2026 08:55:01
[2026-06-13 08:55:01,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:55:01,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:55:01,940.940 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 08:55:01,944.944 INFO    ] Checking historical command: ID=1781321098795-0
[2026-06-13 08:55:01,948.948 INFO    ] process_and_cleanup_command: msg_id=1781321098795-0
[2026-06-13 08:55:01,952.952 INFO    ] is_command_expired: timestamp=2026-06-13T03:24:58.701Z, expiry=30s
[2026-06-13 08:55:02,089.089 INFO    ] Command removed from stream: 1781321098795-0. returning for processing...
[2026-06-13 08:55:02,093.093 INFO    ] ***** get_valid_command
[2026-06-13 08:55:02,097.097 INFO    ] {'timestamp': '2026-06-13T03:24:58.701Z', 'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1781321098700-grlsxild6","orderId":"TM08202203260613085402032","is_vending":false}'}
[2026-06-13 08:55:02,121.121 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613085402032', 'request_id': 'start-order-1781321098700-grlsxild6'}
[2026-06-13 08:55:02,124.124 INFO    ] Handling start order...
[2026-06-13 08:55:02,127.127 INFO    ] handle_start_order_command
[2026-06-13 08:55:02,166.166 INFO    ] _send_start_order_success: request_id=start-order-1781321098700-grlsxild6, order_id=TM08202203260613085402032
[2026-06-13 08:55:02,180.180 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 08:55:02,236.236 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781321102210-0
[2026-06-13 08:55:02,240.240 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 08:55:02,244.244 INFO    ] Checking for system updates...
[2026-06-13 08:55:02,543.543 INFO    ] 200
[2026-06-13 08:55:02,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:02,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:55:02,724.724 INFO    ] No update needed
[2026-06-13 08:55:02,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 08:55:02,879.879 INFO    ] 200
[2026-06-13 08:55:02,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:02,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:55:03,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:55:03,152.152 INFO    ] No camera update needed
[2026-06-13 08:55:03,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:55:03,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:55:03,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:55:03,302.302 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 08:55:03,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:55:05,363.363 INFO    ] ================================================
[2026-06-13 08:55:05,379.379 INFO    ] Launching Daemon at Sat Jun 13 08:55:05 IST 2026
[2026-06-13 08:55:05,389.389 INFO    ] ================================================
[2026-06-13 08:55:05,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:55:05
[2026-06-13 08:55:06,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:55:06,175.175 INFO    ] Initializing speech engine...
[2026-06-13 08:55:06,190.190 INFO    ] 2026-06-13 08:55:06
[2026-06-13 08:55:06,393.393 INFO    ] 2026-06-13 08:55:06
[2026-06-13 08:55:06,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:55:06,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:55:06,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:55:06,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:55:06,788.788 INFO    ] time= 13/06/2026 08:55:06
[2026-06-13 08:55:06,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:55:06,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:55:06,909.909 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 08:55:06,912.912 INFO    ] Checking historical command: ID=1781321102210-0
[2026-06-13 08:55:06,937.937 INFO    ] process_and_cleanup_command: msg_id=1781321102210-0
[2026-06-13 08:55:06,939.939 INFO    ] is_command_expired: timestamp=2026-06-13T03:25:02.167944Z, expiry=30s
[2026-06-13 08:55:07,053.053 INFO    ] Command removed from stream: 1781321102210-0. returning for processing...
[2026-06-13 08:55:07,060.060 INFO    ] ***** get_valid_command
[2026-06-13 08:55:07,072.072 INFO    ] {'metadata_request_id': 'start-order-1781321098700-grlsxild6', 'message': 'start-order success', 'status': 'success', 'message_type': 'command_response', 'imei': 'TM08202203', 'timestamp': '2026-06-13T03:25:02.167944Z', 'metadata_order_id': 'TM08202203260613085402032'}
[2026-06-13 08:55:07,082.082 INFO    ] Checking historical command: ID=1781321104768-0
[2026-06-13 08:55:07,087.087 INFO    ] process_and_cleanup_command: msg_id=1781321104768-0
[2026-06-13 08:55:07,091.091 INFO    ] is_command_expired: timestamp=2026-06-13T03:25:04.828Z, expiry=30s
[2026-06-13 08:55:07,136.136 INFO    ] Command removed from stream: 1781321104768-0. returning for processing...
[2026-06-13 08:55:07,143.143 INFO    ] ***** get_valid_command
[2026-06-13 08:55:07,148.148 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1781321104827-hhw3i7z9p","orderId":"TM08202203260613085402032","is_vending":false,"accessCode":"15832537"}', 'command': 'process-order', 'timestamp': '2026-06-13T03:25:04.828Z', 'source': 'webapp'}
[2026-06-13 08:55:07,153.153 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613085402032', 'request_id': 'process-order-1781321104827-hhw3i7z9p', 'is_vending': False, 'accessCode': '15832537'}
[2026-06-13 08:55:07,158.158 INFO    ] Handling process order...
[2026-06-13 08:55:07,164.164 INFO    ] Processing process-order command...
[2026-06-13 08:55:07,172.172 INFO    ] 🔍 Lock file Order ID: TM08202203260613085402032, TS: 2026-06-13 08:55:02
[2026-06-13 08:55:07,188.188 INFO    ] ✅ Order lock valid for TM08202203260613085402032
[2026-06-13 08:55:07,193.193 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 08:55:07,198.198 INFO    ] processing access code 15832537 for order TM08202203260613085402032
[2026-06-13 08:55:07,204.204 INFO    ] 🔍 Lock file Order ID: TM08202203260613085402032, TS: 2026-06-13 08:55:02
[2026-06-13 08:55:07,210.210 INFO    ] ✅ Order lock valid for TM08202203260613085402032
[2026-06-13 08:55:07,216.216 INFO    ] 2026-06-13 08:55:07
[2026-06-13 08:55:07,263.263 INFO    ] 200
[2026-06-13 08:55:07,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:07,272.272 INFO    ] 15832537
[2026-06-13 08:55:07,277.277 INFO    ] 2026-06-13 08:55:07
[2026-06-13 08:55:07,283.283 INFO    ] session id :541596680
[2026-06-13 08:55:07,296.296 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=15832537&imei=TM08202203&session_id=541596680
[2026-06-13 08:55:08,273.273 INFO    ] 200
[2026-06-13 08:55:08,278.278 INFO    ] {"data": {"mobile": "7889879209", "order_id": "TM08202203260613085402032", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 2, "sku_total": 40, "offer_id": ""}], "access_code": "15832537", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 08:55:08,290.290 INFO    ] 40
[2026-06-13 08:55:08,294.294 INFO    ] TM08202203260613085402032
[2026-06-13 08:55:08,302.302 INFO    ] 7889879209
[2026-06-13 08:55:08,334.334 INFO    ] 2026-06-13 08:55:08
[2026-06-13 08:55:08,346.346 INFO    ] Door Opening for user mobile ending with  nine two zero nine 
[2026-06-13 08:55:08,365.365 INFO    ] Door Opening for user mobile ending with  nine two zero nine 
[2026-06-13 08:55:08,371.371 INFO    ] 6c7013a4bf07e5b104bc3b6332a1b65c
[2026-06-13 08:55:08,379.379 INFO    ] 2026-06-13 08:55:08
[2026-06-13 08:55:08,385.385 INFO    ] creating audio file
[2026-06-13 08:55:08,939.939 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 08:55:09,394.394 INFO    ] gTTS API call completed successfully
[2026-06-13 08:55:10,413.413 INFO    ] 2026-06-13 08:55:10
[2026-06-13 08:55:10,415.415 INFO    ] playing audio file
[2026-06-13 08:55:10,425.425 INFO    ] 2026-06-13 08:55:10
[2026-06-13 08:55:10,426.426 INFO    ] 2026-06-13 08:55:10
[2026-06-13 08:55:10,428.428 INFO    ] publish_status: order_id=TM08202203260613085402032
[2026-06-13 08:55:10,430.430 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613085402032
[2026-06-13 08:55:10,506.506 INFO    ] [publish_status] Message added to stream with ID: 1781321110485-0
[2026-06-13 08:55:10,507.507 INFO    ] Published to order:TM08202203260613085402032: {'timestamp': '2026-06-13T03:25:10.427760Z', 'server_status': 'order-started', 'order_id': 'TM08202203260613085402032', 'server_response': '{"msg": "Order Data", "data": {"bill_amount": "40", "mobile": "7889879209", "invoice_bill": "40", "proposed_sku_json": [{"offer_desc": "", "skuid": "185993", "qty": 2, "mrp": "20", "offer_id": "", "tray_id": "43", "door_id": "2", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40, "unit_price": 20}], "access_code": "15832537", "order_id": "TM08202203260613085402032"}, "rstatus": true, "status": true}'} (ID: 1781321110485-0)
[2026-06-13 08:55:10,804.804 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202203260613085402032', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '40', 'mobile': '7889879209', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_desc': '', 'skuid': '185993', 'qty': 2, 'mrp': '20', 'offer_id': '', 'tray_id': '43', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'unit_price': 20}], 'access_code': '15832537', 'order_id': 'TM08202203260613085402032'}, 'rstatus': True, 'status': True}}
[2026-06-13 08:55:10,805.805 INFO    ] 200
[2026-06-13 08:55:10,807.807 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202203260613085402032","server_response":{"msg":"Order Data","data":{"bill_amount":"40","mobile":"7889879209","invoice_bill":"40","proposed_sku_json":[{"offer_desc":"","skuid":"185993","qty":2,"mrp":"20","offer_id":"","tray_id":"43","door_id":"2","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":40,"unit_price":20}],"access_code":"15832537","order_id":"TM08202203260613085402032"},"rstatus":true,"status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:55:10,808.808 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM08202203260613085402032', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '40', 'mobile': '7889879209', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_desc': '', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2, 'mrp': '20', 'offer_id': '', 'door_id': '2', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'unit_price': 20}], 'access_code': '15832537', 'order_id': 'TM08202203260613085402032'}, 'rstatus': True, 'status': True}}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:55:10,810.810 INFO    ] 2026-06-13 08:55:10
[2026-06-13 08:55:10,836.836 INFO    ] 200
[2026-06-13 08:55:10,838.838 INFO    ] True
[2026-06-13 08:55:10,921.921 INFO    ] 200
[2026-06-13 08:55:10,922.922 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 08:55:10,924.924 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}
[2026-06-13 08:55:10,925.925 INFO    ] *** process_order ***
[2026-06-13 08:55:12,084.084 INFO    ] 200
[2026-06-13 08:55:12,085.085 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:55:12,087.087 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-06-13 08:55:12,088.088 INFO    ] *** process_order ***
[2026-06-13 08:55:12,089.089 INFO    ] publish_status: order_id=TM08202203260613085402032
[2026-06-13 08:55:12,091.091 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613085402032
[2026-06-13 08:55:12,156.156 INFO    ] [publish_status] Message added to stream with ID: 1781321112135-0
[2026-06-13 08:55:12,157.157 INFO    ] Published to order:TM08202203260613085402032: {'server_status': 'doorOpened', 'order_id': 'TM08202203260613085402032', 'server_response': '{"delay": 0, "rstatus": true, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": ""}, "voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1781321112135-0)
[2026-06-13 08:55:13,200.200 INFO    ] 2026-06-13 08:55:13
[2026-06-13 08:55:13,203.203 INFO    ] publish_status: order_id=TM08202203260613085402032
[2026-06-13 08:55:13,205.205 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613085402032
[2026-06-13 08:55:13,273.273 INFO    ] [publish_status] Message added to stream with ID: 1781321113250-0
[2026-06-13 08:55:13,276.276 INFO    ] Published to order:TM08202203260613085402032: {'timestamp': '2026-06-13T03:25:13.201388Z', 'server_status': 'processOrder', 'order_id': 'TM08202203260613085402032', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "rstatus": true, "status": "True", "delay": 0, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1781321113250-0)
[2026-06-13 08:55:13,402.402 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202203260613085402032', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}
[2026-06-13 08:55:13,405.405 INFO    ] 200
[2026-06-13 08:55:13,407.407 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202203260613085402032","server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"rstatus":true,"status":"true","delay":0,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:55:13,411.411 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM08202203260613085402032', 'server_response': {'delay': 0, 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:55:13,413.413 INFO    ] 2026-06-13 08:55:13
[2026-06-13 08:55:13,416.416 INFO    ] None
[2026-06-13 08:55:13,418.418 INFO    ] Opening Door now
[2026-06-13 08:55:13,420.420 INFO    ] Opening Door now
[2026-06-13 08:55:13,423.423 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 08:55:13,426.426 INFO    ] 2026-06-13 08:55:13
[2026-06-13 08:55:13,428.428 INFO    ] playing audio file
[2026-06-13 08:55:13,446.446 INFO    ] 2026-06-13 08:55:13
[2026-06-13 08:55:13,449.449 INFO    ] 2026-06-13 08:55:13
[2026-06-13 08:55:16,494.494 INFO    ] 200
[2026-06-13 08:55:16,496.496 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:55:16,498.498 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}
[2026-06-13 08:55:19,610.610 INFO    ] 200
[2026-06-13 08:55:19,613.613 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:55:19,616.616 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}
[2026-06-13 08:55:22,655.655 INFO    ] 200
[2026-06-13 08:55:22,657.657 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 08:55:22,658.658 INFO    ] Please close door 2
[2026-06-13 08:55:22,660.660 INFO    ] Please close door 2
[2026-06-13 08:55:22,661.661 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 08:55:22,669.669 INFO    ] 2026-06-13 08:55:22
[2026-06-13 08:55:22,671.671 INFO    ] playing audio file
[2026-06-13 08:55:22,682.682 INFO    ] 2026-06-13 08:55:22
[2026-06-13 08:55:22,684.684 INFO    ] publish_status: order_id=TM08202203260613085402032
[2026-06-13 08:55:22,685.685 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613085402032
[2026-06-13 08:55:22,762.762 INFO    ] [publish_status] Message added to stream with ID: 1781321122740-0
[2026-06-13 08:55:22,763.763 INFO    ] Published to order:TM08202203260613085402032: {'timestamp': '2026-06-13T03:25:22.683273Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613085402032', 'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}}'} (ID: 1781321122740-0)
[2026-06-13 08:55:23,099.099 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613085402032', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}}
[2026-06-13 08:55:23,101.101 INFO    ] 200
[2026-06-13 08:55:23,102.102 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613085402032","server_response":{"rstatus":false,"voiceNote":"Please close door 2","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","SectionMain":{"Header":"Door Open"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:55:23,103.103 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613085402032', 'server_response': {'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}}}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:55:23,105.105 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}
[2026-06-13 08:55:26,165.165 INFO    ] 200
[2026-06-13 08:55:26,167.167 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 08:55:26,171.171 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-13 08:55:26,174.174 INFO    ] 2026-06-13 08:55:26
[2026-06-13 08:55:26,176.176 INFO    ] Order Completed 
[2026-06-13 08:55:26,183.183 INFO    ] Order Completed 
[2026-06-13 08:55:26,186.186 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 08:55:26,189.189 INFO    ] 2026-06-13 08:55:26
[2026-06-13 08:55:26,191.191 INFO    ] playing audio file
[2026-06-13 08:55:26,210.210 INFO    ] 2026-06-13 08:55:26
[2026-06-13 08:55:26,213.213 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-06-13 08:55:26,216.216 INFO    ] 2026-06-13 08:55:26
[2026-06-13 08:55:27,858.858 INFO    ] 200
[2026-06-13 08:55:27,860.860 INFO    ] {"res": "True", "orderId": "TM08202203260613085402032", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 2, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 08:55:27,861.861 INFO    ] {'orderId': 'TM08202203260613085402032', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'logic': 'WBL', 'skus': [{'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'door_id': '', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'unit_price': '20'}]}
[2026-06-13 08:55:27,863.863 INFO    ] {'orderId': 'TM08202203260613085402032', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'logic': 'WBL', 'skus': [{'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'door_id': '', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'unit_price': '20'}]}
[2026-06-13 08:55:27,864.864 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,865.865 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,867.867 INFO    ] 40
[2026-06-13 08:55:27,868.868 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,869.869 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,871.871 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:55:27,872.872 INFO    ]  Your Bill Amount is 40
[2026-06-13 08:55:27,874.874 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 08:55:27,876.876 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,877.877 INFO    ] playing audio file
[2026-06-13 08:55:27,888.888 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,890.890 INFO    ] 2026-06-13 08:55:27
[2026-06-13 08:55:27,892.892 INFO    ] publish_status: order_id=TM08202203260613085402032
[2026-06-13 08:55:27,893.893 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613085402032
[2026-06-13 08:55:27,946.946 INFO    ] [publish_status] Message added to stream with ID: 1781321127923-0
[2026-06-13 08:55:27,953.953 INFO    ] Published to order:TM08202203260613085402032: {'timestamp': '2026-06-13T03:25:27.890915Z', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613085402032', 'server_response': '{"orderId": "TM08202203260613085402032", "anomaly": 0, "rstatus": true, "total_amount": 40.0, "res": "True", "logic": "WBL", "skus": [{"skuid": "185993", "qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "mrp": "20", "door_id": "", "tray_id": "43", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40.0, "unit_price": "20"}]}'} (ID: 1781321127923-0)
[2026-06-13 08:55:28,064.064 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613085402032', 'server_response': {'orderId': 'TM08202203260613085402032', 'anomaly': 0, 'rstatus': True, 'total_amount': 40.0, 'res': 'True', 'logic': 'WBL', 'skus': [{'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20', 'door_id': '', 'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'unit_price': '20'}]}}
[2026-06-13 08:55:28,066.066 INFO    ] 200
[2026-06-13 08:55:28,067.067 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202203260613085402032","server_response":{"orderId":"TM08202203260613085402032","anomaly":0,"rstatus":true,"total_amount":40,"res":"true","logic":"WBL","skus":[{"skuid":"185993","qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","mrp":"20","door_id":"","tray_id":"43","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":40,"unit_price":"20"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 08:55:28,069.069 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613085402032', 'server_response': {'orderId': 'TM08202203260613085402032', 'anomaly': 0, 'rstatus': True, 'total_amount': 40, 'res': 'true', 'logic': 'WBL', 'skus': [{'skuid': '185993', 'qty': 2, 'mrp': '20', 'tray_id': '43', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'unit_price': '20'}]}}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:55:28,070.070 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613085402032', 'server_response': {'orderId': 'TM08202203260613085402032', 'anomaly': 0, 'rstatus': True, 'total_amount': 40, 'res': 'true', 'logic': 'WBL', 'skus': [{'skuid': '185993', 'qty': 2, 'mrp': '20', 'tray_id': '43', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'unit_price': '20'}]}}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 08:55:28,072.072 INFO    ] 2026-06-13 08:55:28
[2026-06-13 08:55:29,605.605 INFO    ] 200
[2026-06-13 08:55:29,608.608 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032", "TM08202203260613085402032"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 08:55:29,611.611 INFO    ] 2026-06-13 08:55:29
[2026-06-13 08:55:29,731.731 INFO    ] 200
[2026-06-13 08:55:29,735.735 INFO    ] True
[2026-06-13 08:55:29,739.739 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613085402032
[2026-06-13 08:55:29,743.743 INFO    ] start order file deleted
[2026-06-13 08:55:29,747.747 INFO    ] Checking for system updates...
[2026-06-13 08:55:29,792.792 INFO    ] 200
[2026-06-13 08:55:29,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:29,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:55:29,860.860 INFO    ] No update needed
[2026-06-13 08:55:29,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 08:55:29,901.901 INFO    ] 200
[2026-06-13 08:55:29,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:29,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:55:30,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:55:30,005.005 INFO    ] No camera update needed
[2026-06-13 08:55:30,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:55:30,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:55:30,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:55:30,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:55:32,074.074 INFO    ] ================================================
[2026-06-13 08:55:32,089.089 INFO    ] Launching Daemon at Sat Jun 13 08:55:32 IST 2026
[2026-06-13 08:55:32,100.100 INFO    ] ================================================
[2026-06-13 08:55:32,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:55:32
[2026-06-13 08:55:32,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:55:32,984.984 INFO    ] Initializing speech engine...
[2026-06-13 08:55:33,001.001 INFO    ] 2026-06-13 08:55:32
[2026-06-13 08:55:33,209.209 INFO    ] 2026-06-13 08:55:33
[2026-06-13 08:55:33,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:55:33,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:55:33,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:55:33,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:55:33,634.634 INFO    ] time= 13/06/2026 08:55:33
[2026-06-13 08:55:33,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:55:33,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:55:33,731.731 INFO    ] No existing commands found in stream
[2026-06-13 08:55:38,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:55:38,743.743 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 08:55:42,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:55:42,240.240 INFO    ] Checking for system updates...
[2026-06-13 08:55:42,261.261 INFO    ] 200
[2026-06-13 08:55:42,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:42,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:55:42,294.294 INFO    ] No update needed
[2026-06-13 08:55:42,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 08:55:42,314.314 INFO    ] 200
[2026-06-13 08:55:42,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:42,340.340 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:55:42,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:55:42,378.378 INFO    ] No camera update needed
[2026-06-13 08:55:42,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:55:42,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:55:42,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:55:42,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:55:44,426.426 INFO    ] ================================================
[2026-06-13 08:55:44,442.442 INFO    ] Launching Daemon at Sat Jun 13 08:55:44 IST 2026
[2026-06-13 08:55:44,452.452 INFO    ] ================================================
[2026-06-13 08:55:44,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:55:44
[2026-06-13 08:55:45,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:55:45,260.260 INFO    ] Initializing speech engine...
[2026-06-13 08:55:45,263.263 INFO    ] 2026-06-13 08:55:45
[2026-06-13 08:55:45,482.482 INFO    ] 2026-06-13 08:55:45
[2026-06-13 08:55:45,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:55:45,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:55:45,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:55:45,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:55:45,884.884 INFO    ] time= 13/06/2026 08:55:45
[2026-06-13 08:55:45,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:55:45,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:55:46,007.007 INFO    ] No existing commands found in stream
[2026-06-13 08:55:51,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:55:51,021.021 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 08:55:51,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:55:51,458.458 INFO    ] Checking for system updates...
[2026-06-13 08:55:51,479.479 INFO    ] 200
[2026-06-13 08:55:51,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:51,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:55:51,514.514 INFO    ] No update needed
[2026-06-13 08:55:51,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 08:55:51,535.535 INFO    ] 200
[2026-06-13 08:55:51,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:55:51,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:55:51,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:55:51,595.595 INFO    ] No camera update needed
[2026-06-13 08:55:51,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:55:51,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:55:51,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:55:51,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:55:53,648.648 INFO    ] ================================================
[2026-06-13 08:55:53,663.663 INFO    ] Launching Daemon at Sat Jun 13 08:55:53 IST 2026
[2026-06-13 08:55:53,675.675 INFO    ] ================================================
[2026-06-13 08:55:54,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:55:54
[2026-06-13 08:55:54,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:55:54,471.471 INFO    ] Initializing speech engine...
[2026-06-13 08:55:54,479.479 INFO    ] 2026-06-13 08:55:54
[2026-06-13 08:55:54,692.692 INFO    ] 2026-06-13 08:55:54
[2026-06-13 08:55:54,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:55:54,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:55:54,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:55:55,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:55:55,120.120 INFO    ] time= 13/06/2026 08:55:55
[2026-06-13 08:55:55,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:55:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:55:55,218.218 INFO    ] No existing commands found in stream
[2026-06-13 08:56:00,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:00,230.230 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 08:56:00,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:56:00,665.665 INFO    ] Checking for system updates...
[2026-06-13 08:56:00,688.688 INFO    ] 200
[2026-06-13 08:56:00,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:00,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:00,725.725 INFO    ] No update needed
[2026-06-13 08:56:00,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:00,749.749 INFO    ] 200
[2026-06-13 08:56:00,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:00,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:00,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:00,831.831 INFO    ] No camera update needed
[2026-06-13 08:56:00,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:00,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:00,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:00,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:02,875.875 INFO    ] ================================================
[2026-06-13 08:56:02,890.890 INFO    ] Launching Daemon at Sat Jun 13 08:56:02 IST 2026
[2026-06-13 08:56:02,901.901 INFO    ] ================================================
[2026-06-13 08:56:03,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:03
[2026-06-13 08:56:03,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:03,801.801 INFO    ] Initializing speech engine...
[2026-06-13 08:56:03,805.805 INFO    ] 2026-06-13 08:56:03
[2026-06-13 08:56:04,015.015 INFO    ] 2026-06-13 08:56:03
[2026-06-13 08:56:04,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:04,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:04,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:04,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:04,424.424 INFO    ] time= 13/06/2026 08:56:04
[2026-06-13 08:56:04,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:04,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:04,535.535 INFO    ] No existing commands found in stream
[2026-06-13 08:56:09,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:09,548.548 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 08:56:11,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:56:11,244.244 INFO    ] Checking for system updates...
[2026-06-13 08:56:11,265.265 INFO    ] 200
[2026-06-13 08:56:11,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:11,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:56:11,299.299 INFO    ] No update needed
[2026-06-13 08:56:11,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:11,320.320 INFO    ] 200
[2026-06-13 08:56:11,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:11,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:11,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:56:11,391.391 INFO    ] No camera update needed
[2026-06-13 08:56:11,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:11,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:11,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:11,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:13,441.441 INFO    ] ================================================
[2026-06-13 08:56:13,458.458 INFO    ] Launching Daemon at Sat Jun 13 08:56:13 IST 2026
[2026-06-13 08:56:13,470.470 INFO    ] ================================================
[2026-06-13 08:56:13,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:13
[2026-06-13 08:56:14,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:14,273.273 INFO    ] Initializing speech engine...
[2026-06-13 08:56:14,279.279 INFO    ] 2026-06-13 08:56:14
[2026-06-13 08:56:14,488.488 INFO    ] 2026-06-13 08:56:14
[2026-06-13 08:56:14,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:14,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:14,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:14,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:14,888.888 INFO    ] time= 13/06/2026 08:56:14
[2026-06-13 08:56:14,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:14,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:15,011.011 INFO    ] No existing commands found in stream
[2026-06-13 08:56:20,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:20,022.022 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 08:56:23,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:56:23,067.067 INFO    ] Checking for system updates...
[2026-06-13 08:56:23,088.088 INFO    ] 200
[2026-06-13 08:56:23,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:23,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:23,125.125 INFO    ] No update needed
[2026-06-13 08:56:23,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:23,149.149 INFO    ] 200
[2026-06-13 08:56:23,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:23,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:23,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:23,219.219 INFO    ] No camera update needed
[2026-06-13 08:56:23,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:23,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:23,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:23,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:25,269.269 INFO    ] ================================================
[2026-06-13 08:56:25,290.290 INFO    ] Launching Daemon at Sat Jun 13 08:56:25 IST 2026
[2026-06-13 08:56:25,302.302 INFO    ] ================================================
[2026-06-13 08:56:25,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:25
[2026-06-13 08:56:26,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:26,879.879 INFO    ] Initializing speech engine...
[2026-06-13 08:56:26,890.890 INFO    ] 2026-06-13 08:56:26
[2026-06-13 08:56:27,137.137 INFO    ] 2026-06-13 08:56:27
[2026-06-13 08:56:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:27,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:27,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:27,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:27,492.492 INFO    ] time= 13/06/2026 08:56:27
[2026-06-13 08:56:27,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:27,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:27,693.693 INFO    ] No existing commands found in stream
[2026-06-13 08:56:32,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:32,726.726 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 08:56:34,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:56:34,260.260 INFO    ] Checking for system updates...
[2026-06-13 08:56:34,281.281 INFO    ] 200
[2026-06-13 08:56:34,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:34,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:34,317.317 INFO    ] No update needed
[2026-06-13 08:56:34,318.318 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:34,338.338 INFO    ] 200
[2026-06-13 08:56:34,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:34,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:34,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:34,408.408 INFO    ] No camera update needed
[2026-06-13 08:56:34,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:34,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:34,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:34,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:36,457.457 INFO    ] ================================================
[2026-06-13 08:56:36,473.473 INFO    ] Launching Daemon at Sat Jun 13 08:56:36 IST 2026
[2026-06-13 08:56:36,485.485 INFO    ] ================================================
[2026-06-13 08:56:36,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:36
[2026-06-13 08:56:37,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:37,277.277 INFO    ] Initializing speech engine...
[2026-06-13 08:56:37,283.283 INFO    ] 2026-06-13 08:56:37
[2026-06-13 08:56:37,488.488 INFO    ] 2026-06-13 08:56:37
[2026-06-13 08:56:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:37,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:37,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:37,896.896 INFO    ] time= 13/06/2026 08:56:37
[2026-06-13 08:56:37,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:37,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:38,014.014 INFO    ] No existing commands found in stream
[2026-06-13 08:56:43,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:43,027.027 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 08:56:45,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:56:45,055.055 INFO    ] Checking for system updates...
[2026-06-13 08:56:45,075.075 INFO    ] 200
[2026-06-13 08:56:45,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:45,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:45,109.109 INFO    ] No update needed
[2026-06-13 08:56:45,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:45,129.129 INFO    ] 200
[2026-06-13 08:56:45,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:45,154.154 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:45,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:56:45,196.196 INFO    ] No camera update needed
[2026-06-13 08:56:45,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:45,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:45,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:45,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:47,246.246 INFO    ] ================================================
[2026-06-13 08:56:47,262.262 INFO    ] Launching Daemon at Sat Jun 13 08:56:47 IST 2026
[2026-06-13 08:56:47,273.273 INFO    ] ================================================
[2026-06-13 08:56:47,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:47
[2026-06-13 08:56:47,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:48,056.056 INFO    ] Initializing speech engine...
[2026-06-13 08:56:48,066.066 INFO    ] 2026-06-13 08:56:48
[2026-06-13 08:56:48,262.262 INFO    ] 2026-06-13 08:56:48
[2026-06-13 08:56:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:48,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:48,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:48,543.543 INFO    ] time= 13/06/2026 08:56:48
[2026-06-13 08:56:48,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:48,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:48,640.640 INFO    ] No existing commands found in stream
[2026-06-13 08:56:53,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:56:53,673.673 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 08:56:55,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:56:55,550.550 INFO    ] Checking for system updates...
[2026-06-13 08:56:55,571.571 INFO    ] 200
[2026-06-13 08:56:55,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:55,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:56:55,605.605 INFO    ] No update needed
[2026-06-13 08:56:55,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 08:56:55,627.627 INFO    ] 200
[2026-06-13 08:56:55,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:56:55,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:56:55,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:56:55,694.694 INFO    ] No camera update needed
[2026-06-13 08:56:55,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:56:55,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:56:55,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:56:55,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:56:57,741.741 INFO    ] ================================================
[2026-06-13 08:56:57,760.760 INFO    ] Launching Daemon at Sat Jun 13 08:56:57 IST 2026
[2026-06-13 08:56:57,771.771 INFO    ] ================================================
[2026-06-13 08:56:58,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:56:58
[2026-06-13 08:56:58,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:56:58,663.663 INFO    ] Initializing speech engine...
[2026-06-13 08:56:58,674.674 INFO    ] 2026-06-13 08:56:58
[2026-06-13 08:56:58,888.888 INFO    ] 2026-06-13 08:56:58
[2026-06-13 08:56:58,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:56:59,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:56:59,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:56:59,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:56:59,393.393 INFO    ] time= 13/06/2026 08:56:59
[2026-06-13 08:56:59,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:56:59,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:56:59,635.635 INFO    ] No existing commands found in stream
[2026-06-13 08:57:04,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:04,657.657 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 08:57:06,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:57:06,178.178 INFO    ] Checking for system updates...
[2026-06-13 08:57:06,201.201 INFO    ] 200
[2026-06-13 08:57:06,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:06,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:06,235.235 INFO    ] No update needed
[2026-06-13 08:57:06,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 08:57:06,256.256 INFO    ] 200
[2026-06-13 08:57:06,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:06,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:57:06,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:06,322.322 INFO    ] No camera update needed
[2026-06-13 08:57:06,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:57:06,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:57:06,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:57:06,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:57:08,371.371 INFO    ] ================================================
[2026-06-13 08:57:08,388.388 INFO    ] Launching Daemon at Sat Jun 13 08:57:08 IST 2026
[2026-06-13 08:57:08,403.403 INFO    ] ================================================
[2026-06-13 08:57:08,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:57:08
[2026-06-13 08:57:09,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:57:09,201.201 INFO    ] Initializing speech engine...
[2026-06-13 08:57:09,205.205 INFO    ] 2026-06-13 08:57:09
[2026-06-13 08:57:09,425.425 INFO    ] 2026-06-13 08:57:09
[2026-06-13 08:57:09,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:57:09,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:57:09,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:57:09,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:57:09,842.842 INFO    ] time= 13/06/2026 08:57:09
[2026-06-13 08:57:09,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:57:09,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:57:09,942.942 INFO    ] No existing commands found in stream
[2026-06-13 08:57:14,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:14,953.953 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 08:57:18,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:57:18,611.611 INFO    ] Checking for system updates...
[2026-06-13 08:57:18,632.632 INFO    ] 200
[2026-06-13 08:57:18,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:18,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:18,666.666 INFO    ] No update needed
[2026-06-13 08:57:18,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 08:57:18,688.688 INFO    ] 200
[2026-06-13 08:57:18,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:18,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:57:18,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:18,861.861 INFO    ] No camera update needed
[2026-06-13 08:57:18,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:57:18,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:57:18,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:57:18,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:57:20,910.910 INFO    ] ================================================
[2026-06-13 08:57:20,927.927 INFO    ] Launching Daemon at Sat Jun 13 08:57:20 IST 2026
[2026-06-13 08:57:20,938.938 INFO    ] ================================================
[2026-06-13 08:57:21,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:57:21
[2026-06-13 08:57:21,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:57:21,815.815 INFO    ] Initializing speech engine...
[2026-06-13 08:57:21,824.824 INFO    ] 2026-06-13 08:57:21
[2026-06-13 08:57:22,078.078 INFO    ] 2026-06-13 08:57:22
[2026-06-13 08:57:22,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:57:22,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:57:22,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:57:22,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:57:22,454.454 INFO    ] time= 13/06/2026 08:57:22
[2026-06-13 08:57:22,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:57:22,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:57:22,640.640 INFO    ] No existing commands found in stream
[2026-06-13 08:57:27,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:27,667.667 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 08:57:29,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:57:29,715.715 INFO    ] Checking for system updates...
[2026-06-13 08:57:29,735.735 INFO    ] 200
[2026-06-13 08:57:29,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:29,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:29,773.773 INFO    ] No update needed
[2026-06-13 08:57:29,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 08:57:29,794.794 INFO    ] 200
[2026-06-13 08:57:29,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:29,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:57:29,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:29,868.868 INFO    ] No camera update needed
[2026-06-13 08:57:29,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:57:29,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:57:29,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:57:29,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:57:31,909.909 INFO    ] ================================================
[2026-06-13 08:57:31,919.919 INFO    ] Launching Daemon at Sat Jun 13 08:57:31 IST 2026
[2026-06-13 08:57:31,926.926 INFO    ] ================================================
[2026-06-13 08:57:32,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:57:32
[2026-06-13 08:57:32,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:57:32,814.814 INFO    ] Initializing speech engine...
[2026-06-13 08:57:32,824.824 INFO    ] 2026-06-13 08:57:32
[2026-06-13 08:57:33,087.087 INFO    ] 2026-06-13 08:57:33
[2026-06-13 08:57:33,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:57:33,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:57:33,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:57:33,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:57:33,550.550 INFO    ] time= 13/06/2026 08:57:33
[2026-06-13 08:57:33,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:57:33,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:57:33,796.796 INFO    ] No existing commands found in stream
[2026-06-13 08:57:38,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:38,830.830 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 08:57:40,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:57:40,520.520 INFO    ] Checking for system updates...
[2026-06-13 08:57:40,541.541 INFO    ] 200
[2026-06-13 08:57:40,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:40,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:40,575.575 INFO    ] No update needed
[2026-06-13 08:57:40,576.576 INFO    ] Checking for camera pi updates...
[2026-06-13 08:57:40,598.598 INFO    ] 200
[2026-06-13 08:57:40,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:40,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:57:40,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:40,669.669 INFO    ] No camera update needed
[2026-06-13 08:57:40,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:57:40,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:57:40,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:57:40,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:57:42,718.718 INFO    ] ================================================
[2026-06-13 08:57:42,734.734 INFO    ] Launching Daemon at Sat Jun 13 08:57:42 IST 2026
[2026-06-13 08:57:42,746.746 INFO    ] ================================================
[2026-06-13 08:57:43,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:57:43
[2026-06-13 08:57:43,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:57:43,542.542 INFO    ] Initializing speech engine...
[2026-06-13 08:57:43,546.546 INFO    ] 2026-06-13 08:57:43
[2026-06-13 08:57:43,750.750 INFO    ] 2026-06-13 08:57:43
[2026-06-13 08:57:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:57:43,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:57:43,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:57:44,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:57:44,138.138 INFO    ] time= 13/06/2026 08:57:44
[2026-06-13 08:57:44,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:57:44,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:57:44,330.330 INFO    ] No existing commands found in stream
[2026-06-13 08:57:49,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:49,351.351 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 08:57:51,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:57:51,041.041 INFO    ] Checking for system updates...
[2026-06-13 08:57:51,062.062 INFO    ] 200
[2026-06-13 08:57:51,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:51,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:51,095.095 INFO    ] No update needed
[2026-06-13 08:57:51,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 08:57:51,118.118 INFO    ] 200
[2026-06-13 08:57:51,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:57:51,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:57:51,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:57:51,181.181 INFO    ] No camera update needed
[2026-06-13 08:57:51,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:57:51,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:57:51,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:57:51,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:57:53,227.227 INFO    ] ================================================
[2026-06-13 08:57:53,244.244 INFO    ] Launching Daemon at Sat Jun 13 08:57:53 IST 2026
[2026-06-13 08:57:53,255.255 INFO    ] ================================================
[2026-06-13 08:57:53,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:57:53
[2026-06-13 08:57:53,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:57:54,044.044 INFO    ] Initializing speech engine...
[2026-06-13 08:57:54,056.056 INFO    ] 2026-06-13 08:57:54
[2026-06-13 08:57:54,265.265 INFO    ] 2026-06-13 08:57:54
[2026-06-13 08:57:54,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:57:54,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:57:54,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:57:54,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:57:54,670.670 INFO    ] time= 13/06/2026 08:57:54
[2026-06-13 08:57:54,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:57:54,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:57:54,786.786 INFO    ] No existing commands found in stream
[2026-06-13 08:57:59,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:57:59,800.800 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 08:58:02,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 08:58:02,116.116 INFO    ] Checking for system updates...
[2026-06-13 08:58:02,166.166 INFO    ] 200
[2026-06-13 08:58:02,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:02,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:58:02,238.238 INFO    ] No update needed
[2026-06-13 08:58:02,241.241 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:02,267.267 INFO    ] 200
[2026-06-13 08:58:02,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:02,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:02,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:02,328.328 INFO    ] No camera update needed
[2026-06-13 08:58:02,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:02,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:02,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:02,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:58:04,374.374 INFO    ] ================================================
[2026-06-13 08:58:04,390.390 INFO    ] Launching Daemon at Sat Jun 13 08:58:04 IST 2026
[2026-06-13 08:58:04,401.401 INFO    ] ================================================
[2026-06-13 08:58:04,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:58:04
[2026-06-13 08:58:05,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:58:05,212.212 INFO    ] Initializing speech engine...
[2026-06-13 08:58:05,219.219 INFO    ] 2026-06-13 08:58:05
[2026-06-13 08:58:05,448.448 INFO    ] 2026-06-13 08:58:05
[2026-06-13 08:58:05,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:58:05,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:58:05,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:58:05,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:58:05,880.880 INFO    ] time= 13/06/2026 08:58:05
[2026-06-13 08:58:05,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:58:05,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:58:06,025.025 INFO    ] No existing commands found in stream
[2026-06-13 08:58:11,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:58:11,054.054 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 08:58:13,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:58:13,050.050 INFO    ] Checking for system updates...
[2026-06-13 08:58:13,071.071 INFO    ] 200
[2026-06-13 08:58:13,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:13,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:58:13,107.107 INFO    ] No update needed
[2026-06-13 08:58:13,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:13,131.131 INFO    ] 200
[2026-06-13 08:58:13,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:13,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:13,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:58:13,206.206 INFO    ] No camera update needed
[2026-06-13 08:58:13,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:13,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:13,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:13,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:58:15,254.254 INFO    ] ================================================
[2026-06-13 08:58:15,271.271 INFO    ] Launching Daemon at Sat Jun 13 08:58:15 IST 2026
[2026-06-13 08:58:15,282.282 INFO    ] ================================================
[2026-06-13 08:58:15,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:58:15
[2026-06-13 08:58:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:58:16,120.120 INFO    ] Initializing speech engine...
[2026-06-13 08:58:16,125.125 INFO    ] 2026-06-13 08:58:16
[2026-06-13 08:58:16,332.332 INFO    ] 2026-06-13 08:58:16
[2026-06-13 08:58:16,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:58:16,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:58:16,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:58:16,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:58:16,737.737 INFO    ] time= 13/06/2026 08:58:16
[2026-06-13 08:58:16,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:58:16,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:58:16,848.848 INFO    ] No existing commands found in stream
[2026-06-13 08:58:21,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:58:21,861.861 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 08:58:26,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:58:26,184.184 INFO    ] Checking for system updates...
[2026-06-13 08:58:26,206.206 INFO    ] 200
[2026-06-13 08:58:26,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:26,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:58:26,241.241 INFO    ] No update needed
[2026-06-13 08:58:26,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:26,262.262 INFO    ] 200
[2026-06-13 08:58:26,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:26,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:26,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:26,330.330 INFO    ] No camera update needed
[2026-06-13 08:58:26,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:26,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:26,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:26,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:58:28,379.379 INFO    ] ================================================
[2026-06-13 08:58:28,394.394 INFO    ] Launching Daemon at Sat Jun 13 08:58:28 IST 2026
[2026-06-13 08:58:28,406.406 INFO    ] ================================================
[2026-06-13 08:58:28,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:58:28
[2026-06-13 08:58:29,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:58:29,777.777 INFO    ] Initializing speech engine...
[2026-06-13 08:58:29,789.789 INFO    ] 2026-06-13 08:58:29
[2026-06-13 08:58:30,069.069 INFO    ] 2026-06-13 08:58:30
[2026-06-13 08:58:30,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:58:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:58:30,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:58:30,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:58:30,537.537 INFO    ] time= 13/06/2026 08:58:30
[2026-06-13 08:58:30,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:58:30,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:58:30,760.760 INFO    ] No existing commands found in stream
[2026-06-13 08:58:35,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:58:35,777.777 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 08:58:36,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 08:58:36,305.305 INFO    ] Checking for system updates...
[2026-06-13 08:58:36,328.328 INFO    ] 200
[2026-06-13 08:58:36,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:36,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:36,364.364 INFO    ] No update needed
[2026-06-13 08:58:36,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:36,387.387 INFO    ] 200
[2026-06-13 08:58:36,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:36,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:36,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:36,453.453 INFO    ] No camera update needed
[2026-06-13 08:58:36,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:36,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:36,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:36,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:58:38,503.503 INFO    ] ================================================
[2026-06-13 08:58:38,518.518 INFO    ] Launching Daemon at Sat Jun 13 08:58:38 IST 2026
[2026-06-13 08:58:38,528.528 INFO    ] ================================================
[2026-06-13 08:58:38,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:58:38
[2026-06-13 08:58:39,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:58:39,334.334 INFO    ] Initializing speech engine...
[2026-06-13 08:58:39,338.338 INFO    ] 2026-06-13 08:58:39
[2026-06-13 08:58:39,530.530 INFO    ] 2026-06-13 08:58:39
[2026-06-13 08:58:39,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:58:39,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:58:39,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:58:39,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:58:39,979.979 INFO    ] time= 13/06/2026 08:58:39
[2026-06-13 08:58:40,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:58:40,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:58:40,135.135 INFO    ] No existing commands found in stream
[2026-06-13 08:58:45,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:58:45,149.149 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 08:58:46,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 08:58:46,896.896 INFO    ] Checking for system updates...
[2026-06-13 08:58:46,917.917 INFO    ] 200
[2026-06-13 08:58:46,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:46,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:46,950.950 INFO    ] No update needed
[2026-06-13 08:58:46,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:46,970.970 INFO    ] 200
[2026-06-13 08:58:46,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:46,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:47,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:47,047.047 INFO    ] No camera update needed
[2026-06-13 08:58:47,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:47,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:47,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:47,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:58:49,093.093 INFO    ] ================================================
[2026-06-13 08:58:49,108.108 INFO    ] Launching Daemon at Sat Jun 13 08:58:49 IST 2026
[2026-06-13 08:58:49,119.119 INFO    ] ================================================
[2026-06-13 08:58:49,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:58:49
[2026-06-13 08:58:49,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:58:49,924.924 INFO    ] Initializing speech engine...
[2026-06-13 08:58:49,929.929 INFO    ] 2026-06-13 08:58:49
[2026-06-13 08:58:50,133.133 INFO    ] 2026-06-13 08:58:50
[2026-06-13 08:58:50,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:58:50,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:58:50,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:58:50,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:58:50,534.534 INFO    ] time= 13/06/2026 08:58:50
[2026-06-13 08:58:50,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:58:50,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:58:50,647.647 INFO    ] No existing commands found in stream
[2026-06-13 08:58:55,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:58:55,661.661 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 08:58:58,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:58:58,658.658 INFO    ] Checking for system updates...
[2026-06-13 08:58:58,680.680 INFO    ] 200
[2026-06-13 08:58:58,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:58,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:58,715.715 INFO    ] No update needed
[2026-06-13 08:58:58,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 08:58:58,736.736 INFO    ] 200
[2026-06-13 08:58:58,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:58:58,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:58:58,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:58:58,785.785 INFO    ] No camera update needed
[2026-06-13 08:58:58,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:58:58,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:58:58,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:58:58,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:00,833.833 INFO    ] ================================================
[2026-06-13 08:59:00,848.848 INFO    ] Launching Daemon at Sat Jun 13 08:59:00 IST 2026
[2026-06-13 08:59:00,858.858 INFO    ] ================================================
[2026-06-13 08:59:01,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:01
[2026-06-13 08:59:01,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:01,944.944 INFO    ] Initializing speech engine...
[2026-06-13 08:59:01,948.948 INFO    ] 2026-06-13 08:59:01
[2026-06-13 08:59:02,143.143 INFO    ] 2026-06-13 08:59:02
[2026-06-13 08:59:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:02,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:02,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:02,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:02,439.439 INFO    ] time= 13/06/2026 08:59:02
[2026-06-13 08:59:02,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:02,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:02,529.529 INFO    ] No existing commands found in stream
[2026-06-13 08:59:07,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:59:07,559.559 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 08:59:08,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:59:08,712.712 INFO    ] Checking for system updates...
[2026-06-13 08:59:08,733.733 INFO    ] 200
[2026-06-13 08:59:08,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:08,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:08,766.766 INFO    ] No update needed
[2026-06-13 08:59:08,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 08:59:08,787.787 INFO    ] 200
[2026-06-13 08:59:08,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:08,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:59:08,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:08,850.850 INFO    ] No camera update needed
[2026-06-13 08:59:08,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:59:08,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:59:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:59:08,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:10,904.904 INFO    ] ================================================
[2026-06-13 08:59:10,920.920 INFO    ] Launching Daemon at Sat Jun 13 08:59:10 IST 2026
[2026-06-13 08:59:10,930.930 INFO    ] ================================================
[2026-06-13 08:59:11,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:11
[2026-06-13 08:59:11,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:11,734.734 INFO    ] Initializing speech engine...
[2026-06-13 08:59:11,744.744 INFO    ] 2026-06-13 08:59:11
[2026-06-13 08:59:11,961.961 INFO    ] 2026-06-13 08:59:11
[2026-06-13 08:59:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:12,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:12,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:12,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:12,367.367 INFO    ] time= 13/06/2026 08:59:12
[2026-06-13 08:59:12,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:12,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:12,528.528 INFO    ] No existing commands found in stream
[2026-06-13 08:59:17,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:59:17,541.541 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 08:59:21,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 08:59:21,820.820 INFO    ] Checking for system updates...
[2026-06-13 08:59:21,841.841 INFO    ] 200
[2026-06-13 08:59:21,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:21,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:21,874.874 INFO    ] No update needed
[2026-06-13 08:59:21,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 08:59:21,895.895 INFO    ] 200
[2026-06-13 08:59:21,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:21,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:59:22,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:22,062.062 INFO    ] No camera update needed
[2026-06-13 08:59:22,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:59:22,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:59:22,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:59:22,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:24,109.109 INFO    ] ================================================
[2026-06-13 08:59:24,125.125 INFO    ] Launching Daemon at Sat Jun 13 08:59:24 IST 2026
[2026-06-13 08:59:24,136.136 INFO    ] ================================================
[2026-06-13 08:59:24,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:24
[2026-06-13 08:59:24,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:24,952.952 INFO    ] Initializing speech engine...
[2026-06-13 08:59:24,976.976 INFO    ] 2026-06-13 08:59:24
[2026-06-13 08:59:25,234.234 INFO    ] 2026-06-13 08:59:25
[2026-06-13 08:59:25,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:25,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:25,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:25,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:25,630.630 INFO    ] time= 13/06/2026 08:59:25
[2026-06-13 08:59:25,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:25,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:25,817.817 INFO    ] No existing commands found in stream
[2026-06-13 08:59:30,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:59:30,841.841 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 08:59:32,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:59:32,840.840 INFO    ] Checking for system updates...
[2026-06-13 08:59:32,862.862 INFO    ] 200
[2026-06-13 08:59:32,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:32,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:59:32,896.896 INFO    ] No update needed
[2026-06-13 08:59:32,897.897 INFO    ] Checking for camera pi updates...
[2026-06-13 08:59:32,917.917 INFO    ] 200
[2026-06-13 08:59:32,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:32,942.942 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:59:32,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:32,991.991 INFO    ] No camera update needed
[2026-06-13 08:59:32,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:59:32,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:59:32,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:59:33,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:35,040.040 INFO    ] ================================================
[2026-06-13 08:59:35,055.055 INFO    ] Launching Daemon at Sat Jun 13 08:59:35 IST 2026
[2026-06-13 08:59:35,066.066 INFO    ] ================================================
[2026-06-13 08:59:35,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:35
[2026-06-13 08:59:35,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:35,881.881 INFO    ] Initializing speech engine...
[2026-06-13 08:59:35,890.890 INFO    ] 2026-06-13 08:59:35
[2026-06-13 08:59:36,096.096 INFO    ] 2026-06-13 08:59:36
[2026-06-13 08:59:36,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:36,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:36,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:36,493.493 INFO    ] time= 13/06/2026 08:59:36
[2026-06-13 08:59:36,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:36,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:36,566.566 INFO    ] No existing commands found in stream
[2026-06-13 08:59:41,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:59:41,593.593 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 08:59:43,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 08:59:43,708.708 INFO    ] Checking for system updates...
[2026-06-13 08:59:43,730.730 INFO    ] 200
[2026-06-13 08:59:43,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:43,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:59:43,764.764 INFO    ] No update needed
[2026-06-13 08:59:43,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 08:59:43,784.784 INFO    ] 200
[2026-06-13 08:59:43,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:43,809.809 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:59:43,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 08:59:43,852.852 INFO    ] No camera update needed
[2026-06-13 08:59:43,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:59:43,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:59:43,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:59:43,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:45,901.901 INFO    ] ================================================
[2026-06-13 08:59:45,917.917 INFO    ] Launching Daemon at Sat Jun 13 08:59:45 IST 2026
[2026-06-13 08:59:45,928.928 INFO    ] ================================================
[2026-06-13 08:59:46,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:46
[2026-06-13 08:59:46,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:46,804.804 INFO    ] Initializing speech engine...
[2026-06-13 08:59:46,809.809 INFO    ] 2026-06-13 08:59:46
[2026-06-13 08:59:47,019.019 INFO    ] 2026-06-13 08:59:46
[2026-06-13 08:59:47,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:47,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:47,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:47,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:47,450.450 INFO    ] time= 13/06/2026 08:59:47
[2026-06-13 08:59:47,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:47,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:47,676.676 INFO    ] No existing commands found in stream
[2026-06-13 08:59:52,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 08:59:52,715.715 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 08:59:55,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 08:59:55,192.192 INFO    ] Checking for system updates...
[2026-06-13 08:59:55,213.213 INFO    ] 200
[2026-06-13 08:59:55,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:55,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:59:55,247.247 INFO    ] No update needed
[2026-06-13 08:59:55,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 08:59:55,269.269 INFO    ] 200
[2026-06-13 08:59:55,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 08:59:55,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 08:59:55,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 08:59:55,331.331 INFO    ] No camera update needed
[2026-06-13 08:59:55,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-13 08:59:55,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 08:59:55,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 08:59:55,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 08:59:57,379.379 INFO    ] ================================================
[2026-06-13 08:59:57,395.395 INFO    ] Launching Daemon at Sat Jun 13 08:59:57 IST 2026
[2026-06-13 08:59:57,407.407 INFO    ] ================================================
[2026-06-13 08:59:57,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 08:59:57
[2026-06-13 08:59:58,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 08:59:58,225.225 INFO    ] Initializing speech engine...
[2026-06-13 08:59:58,227.227 INFO    ] 2026-06-13 08:59:58
[2026-06-13 08:59:58,421.421 INFO    ] 2026-06-13 08:59:58
[2026-06-13 08:59:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 08:59:58,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 08:59:58,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 08:59:58,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 08:59:58,714.714 INFO    ] time= 13/06/2026 08:59:58
[2026-06-13 08:59:58,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 08:59:58,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-13 08:59:58,801.801 INFO    ] No existing commands found in stream
[2026-06-13 09:00:03,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:00:03,834.834 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 09:00:09,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:00:09,829.829 INFO    ] Checking for system updates...
[2026-06-13 09:00:09,865.865 INFO    ] 200
[2026-06-13 09:00:09,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:09,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:09,919.919 INFO    ] No update needed
[2026-06-13 09:00:09,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 09:00:09,941.941 INFO    ] 200
[2026-06-13 09:00:09,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:09,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:00:10,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:10,005.005 INFO    ] No camera update needed
[2026-06-13 09:00:10,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:00:10,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:00:10,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:00:10,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:00:12,054.054 INFO    ] ================================================
[2026-06-13 09:00:12,069.069 INFO    ] Launching Daemon at Sat Jun 13 09:00:12 IST 2026
[2026-06-13 09:00:12,080.080 INFO    ] ================================================
[2026-06-13 09:00:12,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:00:12
[2026-06-13 09:00:12,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:00:12,899.899 INFO    ] Initializing speech engine...
[2026-06-13 09:00:12,904.904 INFO    ] 2026-06-13 09:00:12
[2026-06-13 09:00:13,131.131 INFO    ] 2026-06-13 09:00:13
[2026-06-13 09:00:13,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:00:13,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:00:13,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:00:13,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:00:13,556.556 INFO    ] time= 13/06/2026 09:00:13
[2026-06-13 09:00:13,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:00:13,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:00:13,681.681 INFO    ] No existing commands found in stream
[2026-06-13 09:00:18,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:00:18,694.694 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 09:00:20,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:00:20,117.117 INFO    ] Checking for system updates...
[2026-06-13 09:00:20,139.139 INFO    ] 200
[2026-06-13 09:00:20,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:20,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:20,174.174 INFO    ] No update needed
[2026-06-13 09:00:20,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 09:00:20,197.197 INFO    ] 200
[2026-06-13 09:00:20,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:20,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:00:20,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:20,247.247 INFO    ] No camera update needed
[2026-06-13 09:00:20,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:00:20,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:00:20,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:00:20,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:00:22,295.295 INFO    ] ================================================
[2026-06-13 09:00:22,310.310 INFO    ] Launching Daemon at Sat Jun 13 09:00:22 IST 2026
[2026-06-13 09:00:22,321.321 INFO    ] ================================================
[2026-06-13 09:00:22,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:00:22
[2026-06-13 09:00:22,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:00:23,115.115 INFO    ] Initializing speech engine...
[2026-06-13 09:00:23,124.124 INFO    ] 2026-06-13 09:00:23
[2026-06-13 09:00:23,330.330 INFO    ] 2026-06-13 09:00:23
[2026-06-13 09:00:23,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:00:23,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:00:23,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:00:23,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:00:23,746.746 INFO    ] time= 13/06/2026 09:00:23
[2026-06-13 09:00:23,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:00:23,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:00:23,852.852 INFO    ] No existing commands found in stream
[2026-06-13 09:00:28,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:00:28,864.864 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 09:00:30,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:00:30,941.941 INFO    ] Checking for system updates...
[2026-06-13 09:00:30,962.962 INFO    ] 200
[2026-06-13 09:00:30,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:30,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:30,995.995 INFO    ] No update needed
[2026-06-13 09:00:30,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 09:00:31,016.016 INFO    ] 200
[2026-06-13 09:00:31,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:31,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:00:31,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:00:31,078.078 INFO    ] No camera update needed
[2026-06-13 09:00:31,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:00:31,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:00:31,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:00:31,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:00:33,119.119 INFO    ] ================================================
[2026-06-13 09:00:33,134.134 INFO    ] Launching Daemon at Sat Jun 13 09:00:33 IST 2026
[2026-06-13 09:00:33,145.145 INFO    ] ================================================
[2026-06-13 09:00:33,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:00:33
[2026-06-13 09:00:34,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:00:34,700.700 INFO    ] Initializing speech engine...
[2026-06-13 09:00:34,710.710 INFO    ] 2026-06-13 09:00:34
[2026-06-13 09:00:34,958.958 INFO    ] 2026-06-13 09:00:34
[2026-06-13 09:00:34,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:00:35,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:00:35,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:00:35,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:00:35,340.340 INFO    ] time= 13/06/2026 09:00:35
[2026-06-13 09:00:35,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:00:35,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:00:35,466.466 INFO    ] No existing commands found in stream
[2026-06-13 09:00:40,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:00:40,479.479 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 09:00:43,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:00:43,195.195 INFO    ] Checking for system updates...
[2026-06-13 09:00:43,215.215 INFO    ] 200
[2026-06-13 09:00:43,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:43,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:00:43,249.249 INFO    ] No update needed
[2026-06-13 09:00:43,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 09:00:43,272.272 INFO    ] 200
[2026-06-13 09:00:43,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:43,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:00:43,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:00:43,340.340 INFO    ] No camera update needed
[2026-06-13 09:00:43,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:00:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:00:43,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:00:43,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:00:45,389.389 INFO    ] ================================================
[2026-06-13 09:00:45,404.404 INFO    ] Launching Daemon at Sat Jun 13 09:00:45 IST 2026
[2026-06-13 09:00:45,415.415 INFO    ] ================================================
[2026-06-13 09:00:45,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:00:45
[2026-06-13 09:00:46,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:00:46,190.190 INFO    ] Initializing speech engine...
[2026-06-13 09:00:46,195.195 INFO    ] 2026-06-13 09:00:46
[2026-06-13 09:00:46,425.425 INFO    ] 2026-06-13 09:00:46
[2026-06-13 09:00:46,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:00:46,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:00:46,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:00:46,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:00:46,830.830 INFO    ] time= 13/06/2026 09:00:46
[2026-06-13 09:00:46,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:00:46,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:00:46,986.986 INFO    ] No existing commands found in stream
[2026-06-13 09:00:51,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:00:52,000.000 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 09:00:56,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:00:56,130.130 INFO    ] Checking for system updates...
[2026-06-13 09:00:56,150.150 INFO    ] 200
[2026-06-13 09:00:56,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:56,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:00:56,184.184 INFO    ] No update needed
[2026-06-13 09:00:56,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 09:00:56,205.205 INFO    ] 200
[2026-06-13 09:00:56,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:00:56,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:00:56,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:00:56,267.267 INFO    ] No camera update needed
[2026-06-13 09:00:56,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:00:56,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:00:56,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:00:56,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:00:58,315.315 INFO    ] ================================================
[2026-06-13 09:00:58,330.330 INFO    ] Launching Daemon at Sat Jun 13 09:00:58 IST 2026
[2026-06-13 09:00:58,342.342 INFO    ] ================================================
[2026-06-13 09:00:58,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:00:58
[2026-06-13 09:00:59,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:00:59,212.212 INFO    ] Initializing speech engine...
[2026-06-13 09:00:59,227.227 INFO    ] 2026-06-13 09:00:59
[2026-06-13 09:00:59,441.441 INFO    ] 2026-06-13 09:00:59
[2026-06-13 09:00:59,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:00:59,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:00:59,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:00:59,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:00:59,858.858 INFO    ] time= 13/06/2026 09:00:59
[2026-06-13 09:00:59,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:00:59,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:00:59,964.964 INFO    ] No existing commands found in stream
[2026-06-13 09:01:04,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:01:04,979.979 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 09:01:07,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:01:07,751.751 INFO    ] Checking for system updates...
[2026-06-13 09:01:07,772.772 INFO    ] 200
[2026-06-13 09:01:07,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:07,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:01:07,806.806 INFO    ] No update needed
[2026-06-13 09:01:07,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 09:01:07,828.828 INFO    ] 200
[2026-06-13 09:01:07,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:07,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:01:07,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:01:07,891.891 INFO    ] No camera update needed
[2026-06-13 09:01:07,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:01:07,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:01:07,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:01:07,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:01:09,940.940 INFO    ] ================================================
[2026-06-13 09:01:09,956.956 INFO    ] Launching Daemon at Sat Jun 13 09:01:09 IST 2026
[2026-06-13 09:01:09,967.967 INFO    ] ================================================
[2026-06-13 09:01:10,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:01:10
[2026-06-13 09:01:10,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:01:10,755.755 INFO    ] Initializing speech engine...
[2026-06-13 09:01:10,760.760 INFO    ] 2026-06-13 09:01:10
[2026-06-13 09:01:10,963.963 INFO    ] 2026-06-13 09:01:10
[2026-06-13 09:01:10,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:01:11,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:01:11,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:01:11,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:01:11,375.375 INFO    ] time= 13/06/2026 09:01:11
[2026-06-13 09:01:11,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:01:11,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:01:11,482.482 INFO    ] No existing commands found in stream
[2026-06-13 09:01:16,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:01:16,494.494 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 09:01:20,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:01:20,371.371 INFO    ] Checking for system updates...
[2026-06-13 09:01:20,392.392 INFO    ] 200
[2026-06-13 09:01:20,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:20,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:01:20,425.425 INFO    ] No update needed
[2026-06-13 09:01:20,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 09:01:20,446.446 INFO    ] 200
[2026-06-13 09:01:20,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:20,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:01:20,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:01:20,513.513 INFO    ] No camera update needed
[2026-06-13 09:01:20,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:01:20,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:01:20,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:01:20,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:01:22,561.561 INFO    ] ================================================
[2026-06-13 09:01:22,576.576 INFO    ] Launching Daemon at Sat Jun 13 09:01:22 IST 2026
[2026-06-13 09:01:22,587.587 INFO    ] ================================================
[2026-06-13 09:01:23,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:01:23
[2026-06-13 09:01:23,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:01:24,024.024 INFO    ] Initializing speech engine...
[2026-06-13 09:01:24,035.035 INFO    ] 2026-06-13 09:01:24
[2026-06-13 09:01:24,321.321 INFO    ] 2026-06-13 09:01:24
[2026-06-13 09:01:24,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:01:24,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:01:24,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:01:24,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:01:24,772.772 INFO    ] time= 13/06/2026 09:01:24
[2026-06-13 09:01:24,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:01:24,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:01:24,972.972 INFO    ] No existing commands found in stream
[2026-06-13 09:01:30,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:01:30,010.010 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 09:01:31,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:01:31,890.890 INFO    ] Checking for system updates...
[2026-06-13 09:01:31,915.915 INFO    ] 200
[2026-06-13 09:01:31,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:31,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:01:31,954.954 INFO    ] No update needed
[2026-06-13 09:01:31,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 09:01:31,980.980 INFO    ] 200
[2026-06-13 09:01:31,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:32,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:01:32,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:01:32,146.146 INFO    ] No camera update needed
[2026-06-13 09:01:32,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:01:32,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:01:32,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:01:32,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:01:34,192.192 INFO    ] ================================================
[2026-06-13 09:01:34,208.208 INFO    ] Launching Daemon at Sat Jun 13 09:01:34 IST 2026
[2026-06-13 09:01:34,219.219 INFO    ] ================================================
[2026-06-13 09:01:34,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:01:34
[2026-06-13 09:01:34,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:01:35,063.063 INFO    ] Initializing speech engine...
[2026-06-13 09:01:35,068.068 INFO    ] 2026-06-13 09:01:35
[2026-06-13 09:01:35,275.275 INFO    ] 2026-06-13 09:01:35
[2026-06-13 09:01:35,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:01:35,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:01:35,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:01:35,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:01:35,682.682 INFO    ] time= 13/06/2026 09:01:35
[2026-06-13 09:01:35,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:01:35,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:01:35,798.798 INFO    ] No existing commands found in stream
[2026-06-13 09:01:40,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:01:40,811.811 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 09:01:43,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:01:43,864.864 INFO    ] Checking for system updates...
[2026-06-13 09:01:43,885.885 INFO    ] 200
[2026-06-13 09:01:43,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:43,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:01:43,919.919 INFO    ] No update needed
[2026-06-13 09:01:43,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 09:01:43,940.940 INFO    ] 200
[2026-06-13 09:01:43,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:43,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:01:44,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:01:44,006.006 INFO    ] No camera update needed
[2026-06-13 09:01:44,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:01:44,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:01:44,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:01:44,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:01:46,056.056 INFO    ] ================================================
[2026-06-13 09:01:46,071.071 INFO    ] Launching Daemon at Sat Jun 13 09:01:46 IST 2026
[2026-06-13 09:01:46,082.082 INFO    ] ================================================
[2026-06-13 09:01:46,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:01:46
[2026-06-13 09:01:46,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:01:46,910.910 INFO    ] Initializing speech engine...
[2026-06-13 09:01:46,915.915 INFO    ] 2026-06-13 09:01:46
[2026-06-13 09:01:47,120.120 INFO    ] 2026-06-13 09:01:47
[2026-06-13 09:01:47,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:01:47,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:01:47,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:01:47,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:01:47,527.527 INFO    ] time= 13/06/2026 09:01:47
[2026-06-13 09:01:47,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:01:47,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:01:47,636.636 INFO    ] No existing commands found in stream
[2026-06-13 09:01:52,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:01:52,648.648 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 09:01:56,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:01:56,035.035 INFO    ] Checking for system updates...
[2026-06-13 09:01:56,056.056 INFO    ] 200
[2026-06-13 09:01:56,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:56,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:01:56,089.089 INFO    ] No update needed
[2026-06-13 09:01:56,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 09:01:56,110.110 INFO    ] 200
[2026-06-13 09:01:56,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:01:56,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:01:56,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:01:56,174.174 INFO    ] No camera update needed
[2026-06-13 09:01:56,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:01:56,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:01:56,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:01:56,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:01:58,224.224 INFO    ] ================================================
[2026-06-13 09:01:58,240.240 INFO    ] Launching Daemon at Sat Jun 13 09:01:58 IST 2026
[2026-06-13 09:01:58,250.250 INFO    ] ================================================
[2026-06-13 09:01:58,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:01:58
[2026-06-13 09:01:58,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:01:59,066.066 INFO    ] Initializing speech engine...
[2026-06-13 09:01:59,071.071 INFO    ] 2026-06-13 09:01:59
[2026-06-13 09:01:59,281.281 INFO    ] 2026-06-13 09:01:59
[2026-06-13 09:01:59,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:01:59,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:01:59,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:01:59,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:01:59,725.725 INFO    ] time= 13/06/2026 09:01:59
[2026-06-13 09:01:59,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:01:59,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:01:59,821.821 INFO    ] No existing commands found in stream
[2026-06-13 09:02:04,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:04,835.835 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 09:02:07,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:02:07,247.247 INFO    ] Checking for system updates...
[2026-06-13 09:02:07,269.269 INFO    ] 200
[2026-06-13 09:02:07,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:07,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:07,303.303 INFO    ] No update needed
[2026-06-13 09:02:07,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 09:02:07,324.324 INFO    ] 200
[2026-06-13 09:02:07,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:07,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:02:07,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:07,388.388 INFO    ] No camera update needed
[2026-06-13 09:02:07,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:02:07,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:02:07,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:02:07,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:02:09,436.436 INFO    ] ================================================
[2026-06-13 09:02:09,452.452 INFO    ] Launching Daemon at Sat Jun 13 09:02:09 IST 2026
[2026-06-13 09:02:09,463.463 INFO    ] ================================================
[2026-06-13 09:02:09,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:02:09
[2026-06-13 09:02:10,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:02:10,276.276 INFO    ] Initializing speech engine...
[2026-06-13 09:02:10,281.281 INFO    ] 2026-06-13 09:02:10
[2026-06-13 09:02:10,500.500 INFO    ] 2026-06-13 09:02:10
[2026-06-13 09:02:10,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:02:10,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:02:10,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:02:10,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:02:10,914.914 INFO    ] time= 13/06/2026 09:02:10
[2026-06-13 09:02:10,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:02:10,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:02:11,020.020 INFO    ] No existing commands found in stream
[2026-06-13 09:02:16,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:16,033.033 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 09:02:16,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:02:16,813.813 INFO    ] Checking for system updates...
[2026-06-13 09:02:16,834.834 INFO    ] 200
[2026-06-13 09:02:16,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:16,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:16,867.867 INFO    ] No update needed
[2026-06-13 09:02:16,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 09:02:16,888.888 INFO    ] 200
[2026-06-13 09:02:16,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:16,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:02:16,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:16,956.956 INFO    ] No camera update needed
[2026-06-13 09:02:16,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:02:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:02:16,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:02:16,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:02:19,004.004 INFO    ] ================================================
[2026-06-13 09:02:19,021.021 INFO    ] Launching Daemon at Sat Jun 13 09:02:19 IST 2026
[2026-06-13 09:02:19,032.032 INFO    ] ================================================
[2026-06-13 09:02:19,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:02:19
[2026-06-13 09:02:19,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:02:19,899.899 INFO    ] Initializing speech engine...
[2026-06-13 09:02:19,907.907 INFO    ] 2026-06-13 09:02:19
[2026-06-13 09:02:20,129.129 INFO    ] 2026-06-13 09:02:20
[2026-06-13 09:02:20,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:02:20,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:02:20,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:02:20,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:02:20,536.536 INFO    ] time= 13/06/2026 09:02:20
[2026-06-13 09:02:20,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:02:20,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:02:20,654.654 INFO    ] No existing commands found in stream
[2026-06-13 09:02:25,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:25,666.666 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 09:02:29,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:02:29,070.070 INFO    ] Checking for system updates...
[2026-06-13 09:02:29,095.095 INFO    ] 200
[2026-06-13 09:02:29,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:29,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:02:29,128.128 INFO    ] No update needed
[2026-06-13 09:02:29,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 09:02:29,149.149 INFO    ] 200
[2026-06-13 09:02:29,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:29,173.173 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:02:29,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:02:29,208.208 INFO    ] No camera update needed
[2026-06-13 09:02:29,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:02:29,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:02:29,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:02:29,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:02:31,255.255 INFO    ] ================================================
[2026-06-13 09:02:31,271.271 INFO    ] Launching Daemon at Sat Jun 13 09:02:31 IST 2026
[2026-06-13 09:02:31,282.282 INFO    ] ================================================
[2026-06-13 09:02:31,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:02:31
[2026-06-13 09:02:31,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:02:32,171.171 INFO    ] Initializing speech engine...
[2026-06-13 09:02:32,176.176 INFO    ] 2026-06-13 09:02:32
[2026-06-13 09:02:32,416.416 INFO    ] 2026-06-13 09:02:32
[2026-06-13 09:02:32,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:02:32,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:02:32,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:02:32,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:02:32,856.856 INFO    ] time= 13/06/2026 09:02:32
[2026-06-13 09:02:32,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:02:32,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:02:32,979.979 INFO    ] No existing commands found in stream
[2026-06-13 09:02:37,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:37,991.991 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 09:02:38,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:02:38,944.944 INFO    ] Checking for system updates...
[2026-06-13 09:02:38,964.964 INFO    ] 200
[2026-06-13 09:02:38,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:38,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:39,000.000 INFO    ] No update needed
[2026-06-13 09:02:39,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 09:02:39,021.021 INFO    ] 200
[2026-06-13 09:02:39,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:39,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:02:39,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:39,091.091 INFO    ] No camera update needed
[2026-06-13 09:02:39,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:02:39,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:02:39,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:02:39,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:02:41,140.140 INFO    ] ================================================
[2026-06-13 09:02:41,156.156 INFO    ] Launching Daemon at Sat Jun 13 09:02:41 IST 2026
[2026-06-13 09:02:41,167.167 INFO    ] ================================================
[2026-06-13 09:02:41,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:02:41
[2026-06-13 09:02:41,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:02:42,047.047 INFO    ] Initializing speech engine...
[2026-06-13 09:02:42,052.052 INFO    ] 2026-06-13 09:02:42
[2026-06-13 09:02:42,259.259 INFO    ] 2026-06-13 09:02:42
[2026-06-13 09:02:42,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:02:42,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:02:42,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:02:42,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:02:42,656.656 INFO    ] time= 13/06/2026 09:02:42
[2026-06-13 09:02:42,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:02:42,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:02:42,775.775 INFO    ] No existing commands found in stream
[2026-06-13 09:02:47,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:47,790.790 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 09:02:50,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:02:50,072.072 INFO    ] Checking for system updates...
[2026-06-13 09:02:50,093.093 INFO    ] 200
[2026-06-13 09:02:50,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:50,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:50,127.127 INFO    ] No update needed
[2026-06-13 09:02:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 09:02:50,148.148 INFO    ] 200
[2026-06-13 09:02:50,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:02:50,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:02:50,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:02:50,214.214 INFO    ] No camera update needed
[2026-06-13 09:02:50,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:02:50,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:02:50,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:02:50,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:02:52,264.264 INFO    ] ================================================
[2026-06-13 09:02:52,280.280 INFO    ] Launching Daemon at Sat Jun 13 09:02:52 IST 2026
[2026-06-13 09:02:52,292.292 INFO    ] ================================================
[2026-06-13 09:02:52,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:02:52
[2026-06-13 09:02:52,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:02:53,145.145 INFO    ] Initializing speech engine...
[2026-06-13 09:02:53,151.151 INFO    ] 2026-06-13 09:02:53
[2026-06-13 09:02:53,358.358 INFO    ] 2026-06-13 09:02:53
[2026-06-13 09:02:53,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:02:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:02:53,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:02:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:02:53,779.779 INFO    ] time= 13/06/2026 09:02:53
[2026-06-13 09:02:53,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:02:53,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:02:53,876.876 INFO    ] No existing commands found in stream
[2026-06-13 09:02:58,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:02:58,889.889 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 09:03:02,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:03:02,987.987 INFO    ] Checking for system updates...
[2026-06-13 09:03:03,026.026 INFO    ] 200
[2026-06-13 09:03:03,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:03,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:03,087.087 INFO    ] No update needed
[2026-06-13 09:03:03,089.089 INFO    ] Checking for camera pi updates...
[2026-06-13 09:03:03,109.109 INFO    ] 200
[2026-06-13 09:03:03,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:03,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:03:03,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:03,173.173 INFO    ] No camera update needed
[2026-06-13 09:03:03,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:03:03,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:03:03,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:03:03,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:03:05,224.224 INFO    ] ================================================
[2026-06-13 09:03:05,240.240 INFO    ] Launching Daemon at Sat Jun 13 09:03:05 IST 2026
[2026-06-13 09:03:05,251.251 INFO    ] ================================================
[2026-06-13 09:03:05,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:03:05
[2026-06-13 09:03:05,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:03:06,107.107 INFO    ] Initializing speech engine...
[2026-06-13 09:03:06,112.112 INFO    ] 2026-06-13 09:03:06
[2026-06-13 09:03:06,320.320 INFO    ] 2026-06-13 09:03:06
[2026-06-13 09:03:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:03:06,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:03:06,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:03:06,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:03:06,735.735 INFO    ] time= 13/06/2026 09:03:06
[2026-06-13 09:03:06,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:03:06,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:03:06,841.841 INFO    ] No existing commands found in stream
[2026-06-13 09:03:11,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:03:11,854.854 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 09:03:12,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:03:12,486.486 INFO    ] Checking for system updates...
[2026-06-13 09:03:12,509.509 INFO    ] 200
[2026-06-13 09:03:12,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:12,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:12,543.543 INFO    ] No update needed
[2026-06-13 09:03:12,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 09:03:12,564.564 INFO    ] 200
[2026-06-13 09:03:12,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:12,589.589 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:03:12,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:12,632.632 INFO    ] No camera update needed
[2026-06-13 09:03:12,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:03:12,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:03:12,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:03:12,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:03:14,682.682 INFO    ] ================================================
[2026-06-13 09:03:14,698.698 INFO    ] Launching Daemon at Sat Jun 13 09:03:14 IST 2026
[2026-06-13 09:03:14,710.710 INFO    ] ================================================
[2026-06-13 09:03:15,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:03:15
[2026-06-13 09:03:15,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:03:15,518.518 INFO    ] Initializing speech engine...
[2026-06-13 09:03:15,531.531 INFO    ] 2026-06-13 09:03:15
[2026-06-13 09:03:15,739.739 INFO    ] 2026-06-13 09:03:15
[2026-06-13 09:03:15,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:03:15,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:03:15,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:03:16,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:03:16,103.103 INFO    ] time= 13/06/2026 09:03:16
[2026-06-13 09:03:16,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:03:16,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:03:16,253.253 INFO    ] No existing commands found in stream
[2026-06-13 09:03:21,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:03:21,265.265 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 09:03:24,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:03:24,909.909 INFO    ] Checking for system updates...
[2026-06-13 09:03:24,939.939 INFO    ] 200
[2026-06-13 09:03:24,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:24,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:03:24,972.972 INFO    ] No update needed
[2026-06-13 09:03:24,973.973 INFO    ] Checking for camera pi updates...
[2026-06-13 09:03:24,994.994 INFO    ] 200
[2026-06-13 09:03:24,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:25,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:03:25,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:03:25,055.055 INFO    ] No camera update needed
[2026-06-13 09:03:25,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:03:25,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:03:25,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:03:25,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:03:27,102.102 INFO    ] ================================================
[2026-06-13 09:03:27,117.117 INFO    ] Launching Daemon at Sat Jun 13 09:03:27 IST 2026
[2026-06-13 09:03:27,128.128 INFO    ] ================================================
[2026-06-13 09:03:27,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:03:27
[2026-06-13 09:03:27,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:03:27,990.990 INFO    ] Initializing speech engine...
[2026-06-13 09:03:27,996.996 INFO    ] 2026-06-13 09:03:27
[2026-06-13 09:03:28,203.203 INFO    ] 2026-06-13 09:03:28
[2026-06-13 09:03:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:03:28,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:03:28,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:03:28,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:03:28,607.607 INFO    ] time= 13/06/2026 09:03:28
[2026-06-13 09:03:28,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:03:28,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:03:28,730.730 INFO    ] No existing commands found in stream
[2026-06-13 09:03:33,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:03:33,748.748 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 09:03:37,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:03:37,135.135 INFO    ] Checking for system updates...
[2026-06-13 09:03:37,156.156 INFO    ] 200
[2026-06-13 09:03:37,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:37,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:37,190.190 INFO    ] No update needed
[2026-06-13 09:03:37,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 09:03:37,211.211 INFO    ] 200
[2026-06-13 09:03:37,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:37,236.236 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:03:37,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:03:37,285.285 INFO    ] No camera update needed
[2026-06-13 09:03:37,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:03:37,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:03:37,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:03:37,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:03:39,335.335 INFO    ] ================================================
[2026-06-13 09:03:39,350.350 INFO    ] Launching Daemon at Sat Jun 13 09:03:39 IST 2026
[2026-06-13 09:03:39,362.362 INFO    ] ================================================
[2026-06-13 09:03:39,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:03:39
[2026-06-13 09:03:40,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:03:40,177.177 INFO    ] Initializing speech engine...
[2026-06-13 09:03:40,187.187 INFO    ] 2026-06-13 09:03:40
[2026-06-13 09:03:40,396.396 INFO    ] 2026-06-13 09:03:40
[2026-06-13 09:03:40,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:03:40,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:03:40,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:03:40,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:03:40,805.805 INFO    ] time= 13/06/2026 09:03:40
[2026-06-13 09:03:40,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:03:40,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:03:40,913.913 INFO    ] No existing commands found in stream
[2026-06-13 09:03:45,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:03:45,927.927 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 09:03:49,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:03:49,425.425 INFO    ] Checking for system updates...
[2026-06-13 09:03:49,445.445 INFO    ] 200
[2026-06-13 09:03:49,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:49,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:03:49,479.479 INFO    ] No update needed
[2026-06-13 09:03:49,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 09:03:49,499.499 INFO    ] 200
[2026-06-13 09:03:49,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:03:49,526.526 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:03:49,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:03:49,574.574 INFO    ] No camera update needed
[2026-06-13 09:03:49,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:03:49,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:03:49,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:03:49,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:03:51,622.622 INFO    ] ================================================
[2026-06-13 09:03:51,639.639 INFO    ] Launching Daemon at Sat Jun 13 09:03:51 IST 2026
[2026-06-13 09:03:51,650.650 INFO    ] ================================================
[2026-06-13 09:03:52,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:03:52
[2026-06-13 09:03:52,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:03:52,454.454 INFO    ] Initializing speech engine...
[2026-06-13 09:03:52,462.462 INFO    ] 2026-06-13 09:03:52
[2026-06-13 09:03:52,683.683 INFO    ] 2026-06-13 09:03:52
[2026-06-13 09:03:52,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:03:52,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:03:52,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:03:53,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:03:53,102.102 INFO    ] time= 13/06/2026 09:03:53
[2026-06-13 09:03:53,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:03:53,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:03:53,222.222 INFO    ] No existing commands found in stream
[2026-06-13 09:03:58,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:03:58,231.231 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 09:04:00,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:04:00,635.635 INFO    ] Checking for system updates...
[2026-06-13 09:04:00,656.656 INFO    ] 200
[2026-06-13 09:04:00,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:00,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:00,700.700 INFO    ] No update needed
[2026-06-13 09:04:00,701.701 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:00,721.721 INFO    ] 200
[2026-06-13 09:04:00,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:00,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:00,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:00,787.787 INFO    ] No camera update needed
[2026-06-13 09:04:00,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:00,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:00,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:00,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:02,824.824 INFO    ] ================================================
[2026-06-13 09:04:02,833.833 INFO    ] Launching Daemon at Sat Jun 13 09:04:02 IST 2026
[2026-06-13 09:04:02,839.839 INFO    ] ================================================
[2026-06-13 09:04:03,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:03
[2026-06-13 09:04:03,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:03,633.633 INFO    ] Initializing speech engine...
[2026-06-13 09:04:03,638.638 INFO    ] 2026-06-13 09:04:03
[2026-06-13 09:04:03,867.867 INFO    ] 2026-06-13 09:04:03
[2026-06-13 09:04:03,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:03,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:03,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:04,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:04,105.105 INFO    ] time= 13/06/2026 09:04:04
[2026-06-13 09:04:04,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:04,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:04,205.205 INFO    ] No existing commands found in stream
[2026-06-13 09:04:09,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:04:09,243.243 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 09:04:10,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:04:10,248.248 INFO    ] Checking for system updates...
[2026-06-13 09:04:10,269.269 INFO    ] 200
[2026-06-13 09:04:10,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:10,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:10,303.303 INFO    ] No update needed
[2026-06-13 09:04:10,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:10,324.324 INFO    ] 200
[2026-06-13 09:04:10,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:10,351.351 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:10,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:10,391.391 INFO    ] No camera update needed
[2026-06-13 09:04:10,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:10,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:10,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:10,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:12,439.439 INFO    ] ================================================
[2026-06-13 09:04:12,455.455 INFO    ] Launching Daemon at Sat Jun 13 09:04:12 IST 2026
[2026-06-13 09:04:12,467.467 INFO    ] ================================================
[2026-06-13 09:04:12,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:12
[2026-06-13 09:04:13,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:13,313.313 INFO    ] Initializing speech engine...
[2026-06-13 09:04:13,319.319 INFO    ] 2026-06-13 09:04:13
[2026-06-13 09:04:13,525.525 INFO    ] 2026-06-13 09:04:13
[2026-06-13 09:04:13,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:13,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:13,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:13,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:13,930.930 INFO    ] time= 13/06/2026 09:04:13
[2026-06-13 09:04:13,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:13,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:14,040.040 INFO    ] No existing commands found in stream
[2026-06-13 09:04:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:04:19,053.053 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 09:04:20,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:04:20,103.103 INFO    ] Checking for system updates...
[2026-06-13 09:04:20,123.123 INFO    ] 200
[2026-06-13 09:04:20,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:20,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:20,157.157 INFO    ] No update needed
[2026-06-13 09:04:20,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:20,249.249 INFO    ] 200
[2026-06-13 09:04:20,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:20,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:20,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:04:20,320.320 INFO    ] No camera update needed
[2026-06-13 09:04:20,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:20,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:20,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:20,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:22,370.370 INFO    ] ================================================
[2026-06-13 09:04:22,386.386 INFO    ] Launching Daemon at Sat Jun 13 09:04:22 IST 2026
[2026-06-13 09:04:22,398.398 INFO    ] ================================================
[2026-06-13 09:04:22,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:22
[2026-06-13 09:04:23,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:23,187.187 INFO    ] Initializing speech engine...
[2026-06-13 09:04:23,192.192 INFO    ] 2026-06-13 09:04:23
[2026-06-13 09:04:23,394.394 INFO    ] 2026-06-13 09:04:23
[2026-06-13 09:04:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:23,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:23,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:23,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:23,795.795 INFO    ] time= 13/06/2026 09:04:23
[2026-06-13 09:04:23,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:23,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:23,909.909 INFO    ] No existing commands found in stream
[2026-06-13 09:04:28,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:04:28,923.923 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 09:04:30,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:04:30,939.939 INFO    ] Checking for system updates...
[2026-06-13 09:04:30,959.959 INFO    ] 200
[2026-06-13 09:04:30,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:30,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:30,995.995 INFO    ] No update needed
[2026-06-13 09:04:30,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:31,015.015 INFO    ] 200
[2026-06-13 09:04:31,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:31,039.039 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:31,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:31,082.082 INFO    ] No camera update needed
[2026-06-13 09:04:31,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:31,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:31,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:31,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:33,187.187 INFO    ] ================================================
[2026-06-13 09:04:33,209.209 INFO    ] Launching Daemon at Sat Jun 13 09:04:33 IST 2026
[2026-06-13 09:04:33,220.220 INFO    ] ================================================
[2026-06-13 09:04:33,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:33
[2026-06-13 09:04:34,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:34,262.262 INFO    ] Initializing speech engine...
[2026-06-13 09:04:34,275.275 INFO    ] 2026-06-13 09:04:34
[2026-06-13 09:04:34,537.537 INFO    ] 2026-06-13 09:04:34
[2026-06-13 09:04:34,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:34,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:34,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:34,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:35,009.009 INFO    ] time= 13/06/2026 09:04:34
[2026-06-13 09:04:35,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:35,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:35,228.228 INFO    ] No existing commands found in stream
[2026-06-13 09:04:40,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:04:40,259.259 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 09:04:44,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:04:44,241.241 INFO    ] Checking for system updates...
[2026-06-13 09:04:44,261.261 INFO    ] 200
[2026-06-13 09:04:44,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:44,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:44,295.295 INFO    ] No update needed
[2026-06-13 09:04:44,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:44,317.317 INFO    ] 200
[2026-06-13 09:04:44,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:44,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:44,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:44,378.378 INFO    ] No camera update needed
[2026-06-13 09:04:44,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:44,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:44,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:44,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:46,427.427 INFO    ] ================================================
[2026-06-13 09:04:46,445.445 INFO    ] Launching Daemon at Sat Jun 13 09:04:46 IST 2026
[2026-06-13 09:04:46,458.458 INFO    ] ================================================
[2026-06-13 09:04:46,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:46
[2026-06-13 09:04:47,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:47,335.335 INFO    ] Initializing speech engine...
[2026-06-13 09:04:47,339.339 INFO    ] 2026-06-13 09:04:47
[2026-06-13 09:04:47,543.543 INFO    ] 2026-06-13 09:04:47
[2026-06-13 09:04:47,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:47,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:47,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:47,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:47,954.954 INFO    ] time= 13/06/2026 09:04:47
[2026-06-13 09:04:48,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:48,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:48,153.153 INFO    ] No existing commands found in stream
[2026-06-13 09:04:53,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:04:53,801.801 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 09:04:54,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:04:54,446.446 INFO    ] Checking for system updates...
[2026-06-13 09:04:54,467.467 INFO    ] 200
[2026-06-13 09:04:54,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:54,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:54,500.500 INFO    ] No update needed
[2026-06-13 09:04:54,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 09:04:54,520.520 INFO    ] 200
[2026-06-13 09:04:54,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:04:54,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:04:54,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:04:54,593.593 INFO    ] No camera update needed
[2026-06-13 09:04:54,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:04:54,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:04:54,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:04:54,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:04:56,641.641 INFO    ] ================================================
[2026-06-13 09:04:56,656.656 INFO    ] Launching Daemon at Sat Jun 13 09:04:56 IST 2026
[2026-06-13 09:04:56,667.667 INFO    ] ================================================
[2026-06-13 09:04:57,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:04:56
[2026-06-13 09:04:57,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:04:57,453.453 INFO    ] Initializing speech engine...
[2026-06-13 09:04:57,470.470 INFO    ] 2026-06-13 09:04:57
[2026-06-13 09:04:57,689.689 INFO    ] 2026-06-13 09:04:57
[2026-06-13 09:04:57,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:04:57,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:04:57,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:04:58,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:04:58,115.115 INFO    ] time= 13/06/2026 09:04:58
[2026-06-13 09:04:58,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:04:58,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:04:58,248.248 INFO    ] No existing commands found in stream
[2026-06-13 09:05:03,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:05:03,267.267 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 09:05:06,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:05:06,783.783 INFO    ] Checking for system updates...
[2026-06-13 09:05:06,804.804 INFO    ] 200
[2026-06-13 09:05:06,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:06,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:06,837.837 INFO    ] No update needed
[2026-06-13 09:05:06,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 09:05:06,859.859 INFO    ] 200
[2026-06-13 09:05:06,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:06,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:05:06,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:06,923.923 INFO    ] No camera update needed
[2026-06-13 09:05:06,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:05:06,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:05:06,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:05:06,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:05:08,972.972 INFO    ] ================================================
[2026-06-13 09:05:08,988.988 INFO    ] Launching Daemon at Sat Jun 13 09:05:08 IST 2026
[2026-06-13 09:05:09,999.999 INFO    ] ================================================
[2026-06-13 09:05:09,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:05:09
[2026-06-13 09:05:09,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:05:09,849.849 INFO    ] Initializing speech engine...
[2026-06-13 09:05:09,855.855 INFO    ] 2026-06-13 09:05:09
[2026-06-13 09:05:10,062.062 INFO    ] 2026-06-13 09:05:10
[2026-06-13 09:05:10,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:05:10,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:05:10,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:05:10,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:05:10,418.418 INFO    ] time= 13/06/2026 09:05:10
[2026-06-13 09:05:10,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:05:10,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:05:10,590.590 INFO    ] No existing commands found in stream
[2026-06-13 09:05:15,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:05:15,604.604 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 09:05:18,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:05:18,340.340 INFO    ] Checking for system updates...
[2026-06-13 09:05:18,361.361 INFO    ] 200
[2026-06-13 09:05:18,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:18,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:05:18,396.396 INFO    ] No update needed
[2026-06-13 09:05:18,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 09:05:18,417.417 INFO    ] 200
[2026-06-13 09:05:18,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:18,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:05:18,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:05:18,486.486 INFO    ] No camera update needed
[2026-06-13 09:05:18,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:05:18,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:05:18,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:05:18,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:05:20,535.535 INFO    ] ================================================
[2026-06-13 09:05:20,551.551 INFO    ] Launching Daemon at Sat Jun 13 09:05:20 IST 2026
[2026-06-13 09:05:20,562.562 INFO    ] ================================================
[2026-06-13 09:05:20,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:05:20
[2026-06-13 09:05:21,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:05:21,432.432 INFO    ] Initializing speech engine...
[2026-06-13 09:05:21,437.437 INFO    ] 2026-06-13 09:05:21
[2026-06-13 09:05:21,645.645 INFO    ] 2026-06-13 09:05:21
[2026-06-13 09:05:21,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:05:21,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:05:21,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:05:21,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:05:22,041.041 INFO    ] time= 13/06/2026 09:05:21
[2026-06-13 09:05:22,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:05:22,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:05:22,162.162 INFO    ] No existing commands found in stream
[2026-06-13 09:05:27,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:05:27,173.173 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 09:05:30,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:05:30,795.795 INFO    ] Checking for system updates...
[2026-06-13 09:05:30,816.816 INFO    ] 200
[2026-06-13 09:05:30,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:30,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:30,850.850 INFO    ] No update needed
[2026-06-13 09:05:30,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 09:05:30,873.873 INFO    ] 200
[2026-06-13 09:05:30,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:30,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:05:30,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:30,939.939 INFO    ] No camera update needed
[2026-06-13 09:05:30,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:05:30,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:05:30,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:05:30,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:05:32,989.989 INFO    ] ================================================
[2026-06-13 09:05:33,004.004 INFO    ] Launching Daemon at Sat Jun 13 09:05:32 IST 2026
[2026-06-13 09:05:33,016.016 INFO    ] ================================================
[2026-06-13 09:05:33,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:05:33
[2026-06-13 09:05:33,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:05:33,841.841 INFO    ] Initializing speech engine...
[2026-06-13 09:05:33,847.847 INFO    ] 2026-06-13 09:05:33
[2026-06-13 09:05:34,053.053 INFO    ] 2026-06-13 09:05:34
[2026-06-13 09:05:34,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:05:34,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:05:34,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:05:34,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:05:34,453.453 INFO    ] time= 13/06/2026 09:05:34
[2026-06-13 09:05:34,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:05:34,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:05:34,569.569 INFO    ] No existing commands found in stream
[2026-06-13 09:05:39,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:05:39,582.582 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 09:05:43,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:05:43,316.316 INFO    ] Checking for system updates...
[2026-06-13 09:05:43,337.337 INFO    ] 200
[2026-06-13 09:05:43,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:43,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:43,372.372 INFO    ] No update needed
[2026-06-13 09:05:43,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 09:05:43,394.394 INFO    ] 200
[2026-06-13 09:05:43,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:43,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:05:43,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:05:43,559.559 INFO    ] No camera update needed
[2026-06-13 09:05:43,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:05:43,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:05:43,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:05:43,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:05:45,610.610 INFO    ] ================================================
[2026-06-13 09:05:45,626.626 INFO    ] Launching Daemon at Sat Jun 13 09:05:45 IST 2026
[2026-06-13 09:05:45,638.638 INFO    ] ================================================
[2026-06-13 09:05:45,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:05:45
[2026-06-13 09:05:46,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:05:46,430.430 INFO    ] Initializing speech engine...
[2026-06-13 09:05:46,434.434 INFO    ] 2026-06-13 09:05:46
[2026-06-13 09:05:46,622.622 INFO    ] 2026-06-13 09:05:46
[2026-06-13 09:05:46,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:05:46,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:05:46,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:05:46,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:05:46,967.967 INFO    ] time= 13/06/2026 09:05:46
[2026-06-13 09:05:46,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:05:46,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:05:47,067.067 INFO    ] No existing commands found in stream
[2026-06-13 09:05:52,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:05:52,085.085 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 09:05:53,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:05:53,202.202 INFO    ] Checking for system updates...
[2026-06-13 09:05:53,222.222 INFO    ] 200
[2026-06-13 09:05:53,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:53,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:05:53,255.255 INFO    ] No update needed
[2026-06-13 09:05:53,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 09:05:53,276.276 INFO    ] 200
[2026-06-13 09:05:53,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:05:53,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:05:53,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:05:53,348.348 INFO    ] No camera update needed
[2026-06-13 09:05:53,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:05:53,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:05:53,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:05:53,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:05:55,400.400 INFO    ] ================================================
[2026-06-13 09:05:55,415.415 INFO    ] Launching Daemon at Sat Jun 13 09:05:55 IST 2026
[2026-06-13 09:05:55,427.427 INFO    ] ================================================
[2026-06-13 09:05:55,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:05:55
[2026-06-13 09:05:56,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:05:56,209.209 INFO    ] Initializing speech engine...
[2026-06-13 09:05:56,214.214 INFO    ] 2026-06-13 09:05:56
[2026-06-13 09:05:56,420.420 INFO    ] 2026-06-13 09:05:56
[2026-06-13 09:05:56,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:05:56,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:05:56,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:05:56,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:05:56,826.826 INFO    ] time= 13/06/2026 09:05:56
[2026-06-13 09:05:56,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:05:56,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:05:56,943.943 INFO    ] No existing commands found in stream
[2026-06-13 09:06:01,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:01,952.952 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 09:06:04,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:06:04,709.709 INFO    ] Checking for system updates...
[2026-06-13 09:06:04,729.729 INFO    ] 200
[2026-06-13 09:06:04,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:04,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:04,762.762 INFO    ] No update needed
[2026-06-13 09:06:04,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:04,783.783 INFO    ] 200
[2026-06-13 09:06:04,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:04,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:04,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:06:04,853.853 INFO    ] No camera update needed
[2026-06-13 09:06:04,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:04,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:04,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:04,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:06:06,904.904 INFO    ] ================================================
[2026-06-13 09:06:06,920.920 INFO    ] Launching Daemon at Sat Jun 13 09:06:06 IST 2026
[2026-06-13 09:06:06,931.931 INFO    ] ================================================
[2026-06-13 09:06:07,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:06:07
[2026-06-13 09:06:07,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:06:07,721.721 INFO    ] Initializing speech engine...
[2026-06-13 09:06:07,727.727 INFO    ] 2026-06-13 09:06:07
[2026-06-13 09:06:07,932.932 INFO    ] 2026-06-13 09:06:07
[2026-06-13 09:06:07,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:06:08,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:06:08,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:06:08,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:06:08,331.331 INFO    ] time= 13/06/2026 09:06:08
[2026-06-13 09:06:08,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:06:08,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:06:08,452.452 INFO    ] No existing commands found in stream
[2026-06-13 09:06:13,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:13,465.465 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 09:06:17,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:06:17,676.676 INFO    ] Checking for system updates...
[2026-06-13 09:06:17,697.697 INFO    ] 200
[2026-06-13 09:06:17,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:17,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:17,733.733 INFO    ] No update needed
[2026-06-13 09:06:17,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:17,753.753 INFO    ] 200
[2026-06-13 09:06:17,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:17,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:17,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:17,816.816 INFO    ] No camera update needed
[2026-06-13 09:06:17,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:17,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:17,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:17,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:06:19,863.863 INFO    ] ================================================
[2026-06-13 09:06:19,879.879 INFO    ] Launching Daemon at Sat Jun 13 09:06:19 IST 2026
[2026-06-13 09:06:19,889.889 INFO    ] ================================================
[2026-06-13 09:06:20,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:06:20
[2026-06-13 09:06:20,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:06:21,054.054 INFO    ] Initializing speech engine...
[2026-06-13 09:06:21,063.063 INFO    ] 2026-06-13 09:06:21
[2026-06-13 09:06:21,318.318 INFO    ] 2026-06-13 09:06:21
[2026-06-13 09:06:21,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:06:21,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:06:21,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:06:21,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:06:21,762.762 INFO    ] time= 13/06/2026 09:06:21
[2026-06-13 09:06:21,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:06:21,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:06:21,936.936 INFO    ] No existing commands found in stream
[2026-06-13 09:06:26,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:26,968.968 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 09:06:28,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:06:28,275.275 INFO    ] Checking for system updates...
[2026-06-13 09:06:28,296.296 INFO    ] 200
[2026-06-13 09:06:28,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:28,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:28,329.329 INFO    ] No update needed
[2026-06-13 09:06:28,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:28,351.351 INFO    ] 200
[2026-06-13 09:06:28,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:28,378.378 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:28,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:28,421.421 INFO    ] No camera update needed
[2026-06-13 09:06:28,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:28,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:28,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:28,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:06:30,470.470 INFO    ] ================================================
[2026-06-13 09:06:30,485.485 INFO    ] Launching Daemon at Sat Jun 13 09:06:30 IST 2026
[2026-06-13 09:06:30,496.496 INFO    ] ================================================
[2026-06-13 09:06:30,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:06:30
[2026-06-13 09:06:31,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:06:31,367.367 INFO    ] Initializing speech engine...
[2026-06-13 09:06:31,372.372 INFO    ] 2026-06-13 09:06:31
[2026-06-13 09:06:31,585.585 INFO    ] 2026-06-13 09:06:31
[2026-06-13 09:06:31,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:06:31,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:06:31,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:06:31,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:06:32,018.018 INFO    ] time= 13/06/2026 09:06:31
[2026-06-13 09:06:32,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:06:32,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:06:32,231.231 INFO    ] No existing commands found in stream
[2026-06-13 09:06:37,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:37,243.243 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 09:06:38,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:06:38,575.575 INFO    ] Checking for system updates...
[2026-06-13 09:06:38,598.598 INFO    ] 200
[2026-06-13 09:06:38,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:38,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:06:38,632.632 INFO    ] No update needed
[2026-06-13 09:06:38,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:38,653.653 INFO    ] 200
[2026-06-13 09:06:38,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:38,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:38,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:06:38,720.720 INFO    ] No camera update needed
[2026-06-13 09:06:38,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:38,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:38,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:38,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:06:40,768.768 INFO    ] ================================================
[2026-06-13 09:06:40,783.783 INFO    ] Launching Daemon at Sat Jun 13 09:06:40 IST 2026
[2026-06-13 09:06:40,794.794 INFO    ] ================================================
[2026-06-13 09:06:41,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:06:41
[2026-06-13 09:06:41,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:06:41,582.582 INFO    ] Initializing speech engine...
[2026-06-13 09:06:41,586.586 INFO    ] 2026-06-13 09:06:41
[2026-06-13 09:06:41,802.802 INFO    ] 2026-06-13 09:06:41
[2026-06-13 09:06:41,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:06:41,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:06:41,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:06:42,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:06:42,070.070 INFO    ] time= 13/06/2026 09:06:42
[2026-06-13 09:06:42,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:06:42,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:06:42,161.161 INFO    ] No existing commands found in stream
[2026-06-13 09:06:47,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:47,193.193 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 09:06:49,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:06:49,005.005 INFO    ] Checking for system updates...
[2026-06-13 09:06:49,026.026 INFO    ] 200
[2026-06-13 09:06:49,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:49,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:49,061.061 INFO    ] No update needed
[2026-06-13 09:06:49,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:49,084.084 INFO    ] 200
[2026-06-13 09:06:49,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:49,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:49,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:06:49,148.148 INFO    ] No camera update needed
[2026-06-13 09:06:49,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:49,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:49,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:49,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:06:51,195.195 INFO    ] ================================================
[2026-06-13 09:06:51,211.211 INFO    ] Launching Daemon at Sat Jun 13 09:06:51 IST 2026
[2026-06-13 09:06:51,222.222 INFO    ] ================================================
[2026-06-13 09:06:51,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:06:51
[2026-06-13 09:06:51,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:06:52,043.043 INFO    ] Initializing speech engine...
[2026-06-13 09:06:52,046.046 INFO    ] 2026-06-13 09:06:52
[2026-06-13 09:06:52,253.253 INFO    ] 2026-06-13 09:06:52
[2026-06-13 09:06:52,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:06:52,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:06:52,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:06:52,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:06:52,552.552 INFO    ] time= 13/06/2026 09:06:52
[2026-06-13 09:06:52,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:06:52,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:06:52,701.701 INFO    ] No existing commands found in stream
[2026-06-13 09:06:57,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:06:57,733.733 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 09:06:59,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:06:59,268.268 INFO    ] Checking for system updates...
[2026-06-13 09:06:59,289.289 INFO    ] 200
[2026-06-13 09:06:59,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:59,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:06:59,321.321 INFO    ] No update needed
[2026-06-13 09:06:59,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 09:06:59,342.342 INFO    ] 200
[2026-06-13 09:06:59,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:06:59,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:06:59,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:06:59,402.402 INFO    ] No camera update needed
[2026-06-13 09:06:59,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:06:59,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:06:59,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:06:59,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:01,449.449 INFO    ] ================================================
[2026-06-13 09:07:01,465.465 INFO    ] Launching Daemon at Sat Jun 13 09:07:01 IST 2026
[2026-06-13 09:07:01,476.476 INFO    ] ================================================
[2026-06-13 09:07:01,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:01
[2026-06-13 09:07:02,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:02,455.455 INFO    ] Initializing speech engine...
[2026-06-13 09:07:02,457.457 INFO    ] 2026-06-13 09:07:02
[2026-06-13 09:07:02,713.713 INFO    ] 2026-06-13 09:07:02
[2026-06-13 09:07:02,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:02,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:02,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:03,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:03,151.151 INFO    ] time= 13/06/2026 09:07:03
[2026-06-13 09:07:03,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:07:03,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:07:03,324.324 INFO    ] No existing commands found in stream
[2026-06-13 09:07:08,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:07:08,337.337 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 09:07:10,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:07:10,891.891 INFO    ] Checking for system updates...
[2026-06-13 09:07:10,912.912 INFO    ] 200
[2026-06-13 09:07:10,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:10,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:07:10,946.946 INFO    ] No update needed
[2026-06-13 09:07:10,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 09:07:10,967.967 INFO    ] 200
[2026-06-13 09:07:10,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:10,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:07:11,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:07:11,041.041 INFO    ] No camera update needed
[2026-06-13 09:07:11,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:07:11,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:07:11,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:07:11,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:13,089.089 INFO    ] ================================================
[2026-06-13 09:07:13,105.105 INFO    ] Launching Daemon at Sat Jun 13 09:07:13 IST 2026
[2026-06-13 09:07:13,116.116 INFO    ] ================================================
[2026-06-13 09:07:13,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:13
[2026-06-13 09:07:13,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:13,896.896 INFO    ] Initializing speech engine...
[2026-06-13 09:07:13,901.901 INFO    ] 2026-06-13 09:07:13
[2026-06-13 09:07:14,130.130 INFO    ] 2026-06-13 09:07:14
[2026-06-13 09:07:14,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:14,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:14,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:14,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:14,518.518 INFO    ] time= 13/06/2026 09:07:14
[2026-06-13 09:07:14,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:07:14,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:07:14,686.686 INFO    ] No existing commands found in stream
[2026-06-13 09:07:19,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:07:19,700.700 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 09:07:21,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:07:21,203.203 INFO    ] Checking for system updates...
[2026-06-13 09:07:21,224.224 INFO    ] 200
[2026-06-13 09:07:21,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:21,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:21,260.260 INFO    ] No update needed
[2026-06-13 09:07:21,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 09:07:21,280.280 INFO    ] 200
[2026-06-13 09:07:21,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:21,305.305 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:07:21,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:21,344.344 INFO    ] No camera update needed
[2026-06-13 09:07:21,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:07:21,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:07:21,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:07:21,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:23,393.393 INFO    ] ================================================
[2026-06-13 09:07:23,409.409 INFO    ] Launching Daemon at Sat Jun 13 09:07:23 IST 2026
[2026-06-13 09:07:23,421.421 INFO    ] ================================================
[2026-06-13 09:07:23,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:23
[2026-06-13 09:07:24,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:24,243.243 INFO    ] Initializing speech engine...
[2026-06-13 09:07:24,248.248 INFO    ] 2026-06-13 09:07:24
[2026-06-13 09:07:24,451.451 INFO    ] 2026-06-13 09:07:24
[2026-06-13 09:07:24,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:24,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:24,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:24,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:24,854.854 INFO    ] time= 13/06/2026 09:07:24
[2026-06-13 09:07:24,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:07:24,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:07:24,963.963 INFO    ] No existing commands found in stream
[2026-06-13 09:07:29,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:07:29,976.976 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 09:07:33,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:07:33,227.227 INFO    ] Checking for system updates...
[2026-06-13 09:07:33,264.264 INFO    ] 200
[2026-06-13 09:07:33,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:33,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:07:33,328.328 INFO    ] No update needed
[2026-06-13 09:07:33,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 09:07:33,351.351 INFO    ] 200
[2026-06-13 09:07:33,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:33,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:07:33,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:07:33,420.420 INFO    ] No camera update needed
[2026-06-13 09:07:33,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:07:33,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:07:33,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:07:33,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:35,470.470 INFO    ] ================================================
[2026-06-13 09:07:35,485.485 INFO    ] Launching Daemon at Sat Jun 13 09:07:35 IST 2026
[2026-06-13 09:07:35,496.496 INFO    ] ================================================
[2026-06-13 09:07:35,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:35
[2026-06-13 09:07:36,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:36,298.298 INFO    ] Initializing speech engine...
[2026-06-13 09:07:36,311.311 INFO    ] 2026-06-13 09:07:36
[2026-06-13 09:07:36,530.530 INFO    ] 2026-06-13 09:07:36
[2026-06-13 09:07:36,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:36,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:36,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:36,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:36,924.924 INFO    ] time= 13/06/2026 09:07:36
[2026-06-13 09:07:36,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:07:37,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:07:37,087.087 INFO    ] No existing commands found in stream
[2026-06-13 09:07:42,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:07:42,101.101 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 09:07:43,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:07:43,492.492 INFO    ] Checking for system updates...
[2026-06-13 09:07:43,513.513 INFO    ] 200
[2026-06-13 09:07:43,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:43,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:43,546.546 INFO    ] No update needed
[2026-06-13 09:07:43,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 09:07:43,567.567 INFO    ] 200
[2026-06-13 09:07:43,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:43,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:07:43,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:43,633.633 INFO    ] No camera update needed
[2026-06-13 09:07:43,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:07:43,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:07:43,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:07:43,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:45,680.680 INFO    ] ================================================
[2026-06-13 09:07:45,695.695 INFO    ] Launching Daemon at Sat Jun 13 09:07:45 IST 2026
[2026-06-13 09:07:45,706.706 INFO    ] ================================================
[2026-06-13 09:07:46,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:46
[2026-06-13 09:07:46,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:46,532.532 INFO    ] Initializing speech engine...
[2026-06-13 09:07:46,543.543 INFO    ] 2026-06-13 09:07:46
[2026-06-13 09:07:46,752.752 INFO    ] 2026-06-13 09:07:46
[2026-06-13 09:07:46,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:46,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:46,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:47,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:47,160.160 INFO    ] time= 13/06/2026 09:07:47
[2026-06-13 09:07:47,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:07:47,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:07:47,271.271 INFO    ] No existing commands found in stream
[2026-06-13 09:07:52,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:07:52,289.289 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 09:07:56,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:07:56,233.233 INFO    ] Checking for system updates...
[2026-06-13 09:07:56,253.253 INFO    ] 200
[2026-06-13 09:07:56,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:56,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:56,286.286 INFO    ] No update needed
[2026-06-13 09:07:56,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 09:07:56,308.308 INFO    ] 200
[2026-06-13 09:07:56,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:07:56,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:07:56,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:07:56,480.480 INFO    ] No camera update needed
[2026-06-13 09:07:56,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:07:56,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:07:56,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:07:56,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:07:58,527.527 INFO    ] ================================================
[2026-06-13 09:07:58,542.542 INFO    ] Launching Daemon at Sat Jun 13 09:07:58 IST 2026
[2026-06-13 09:07:58,553.553 INFO    ] ================================================
[2026-06-13 09:07:58,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:07:58
[2026-06-13 09:07:59,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:07:59,358.358 INFO    ] Initializing speech engine...
[2026-06-13 09:07:59,362.362 INFO    ] 2026-06-13 09:07:59
[2026-06-13 09:07:59,590.590 INFO    ] 2026-06-13 09:07:59
[2026-06-13 09:07:59,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:07:59,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:07:59,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:07:59,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:07:59,966.966 INFO    ] time= 13/06/2026 09:07:59
[2026-06-13 09:08:00,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:00,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:00,147.147 INFO    ] No existing commands found in stream
[2026-06-13 09:08:05,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:08:05,161.161 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 09:08:07,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:08:07,478.478 INFO    ] Checking for system updates...
[2026-06-13 09:08:07,499.499 INFO    ] 200
[2026-06-13 09:08:07,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:07,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:07,533.533 INFO    ] No update needed
[2026-06-13 09:08:07,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 09:08:07,554.554 INFO    ] 200
[2026-06-13 09:08:07,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:07,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:08:07,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:07,627.627 INFO    ] No camera update needed
[2026-06-13 09:08:07,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:08:07,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:08:07,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:08:07,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:08:09,675.675 INFO    ] ================================================
[2026-06-13 09:08:09,690.690 INFO    ] Launching Daemon at Sat Jun 13 09:08:09 IST 2026
[2026-06-13 09:08:09,700.700 INFO    ] ================================================
[2026-06-13 09:08:10,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:08:10
[2026-06-13 09:08:10,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:08:10,535.535 INFO    ] Initializing speech engine...
[2026-06-13 09:08:10,540.540 INFO    ] 2026-06-13 09:08:10
[2026-06-13 09:08:10,746.746 INFO    ] 2026-06-13 09:08:10
[2026-06-13 09:08:10,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:08:10,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:08:10,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:08:11,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:08:11,145.145 INFO    ] time= 13/06/2026 09:08:11
[2026-06-13 09:08:11,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:11,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:11,260.260 INFO    ] No existing commands found in stream
[2026-06-13 09:08:16,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:08:16,272.272 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 09:08:19,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:08:19,905.905 INFO    ] Checking for system updates...
[2026-06-13 09:08:19,926.926 INFO    ] 200
[2026-06-13 09:08:19,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:19,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:19,960.960 INFO    ] No update needed
[2026-06-13 09:08:19,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 09:08:19,983.983 INFO    ] 200
[2026-06-13 09:08:19,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:20,008.008 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:08:20,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:20,046.046 INFO    ] No camera update needed
[2026-06-13 09:08:20,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:08:20,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:08:20,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:08:20,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:08:22,094.094 INFO    ] ================================================
[2026-06-13 09:08:22,109.109 INFO    ] Launching Daemon at Sat Jun 13 09:08:22 IST 2026
[2026-06-13 09:08:22,119.119 INFO    ] ================================================
[2026-06-13 09:08:22,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:08:22
[2026-06-13 09:08:22,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:08:22,902.902 INFO    ] Initializing speech engine...
[2026-06-13 09:08:22,907.907 INFO    ] 2026-06-13 09:08:22
[2026-06-13 09:08:23,114.114 INFO    ] 2026-06-13 09:08:23
[2026-06-13 09:08:23,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:08:23,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:08:23,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:08:23,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:08:23,529.529 INFO    ] time= 13/06/2026 09:08:23
[2026-06-13 09:08:23,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:23,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:23,636.636 INFO    ] No existing commands found in stream
[2026-06-13 09:08:28,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:08:28,648.648 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 09:08:30,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:08:30,596.596 INFO    ] Checking for system updates...
[2026-06-13 09:08:30,617.617 INFO    ] 200
[2026-06-13 09:08:30,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:30,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:08:30,651.651 INFO    ] No update needed
[2026-06-13 09:08:30,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 09:08:30,674.674 INFO    ] 200
[2026-06-13 09:08:30,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:30,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:08:30,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:08:30,749.749 INFO    ] No camera update needed
[2026-06-13 09:08:30,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:08:30,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:08:30,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:08:30,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:08:32,792.792 INFO    ] ================================================
[2026-06-13 09:08:32,807.807 INFO    ] Launching Daemon at Sat Jun 13 09:08:32 IST 2026
[2026-06-13 09:08:32,818.818 INFO    ] ================================================
[2026-06-13 09:08:33,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:08:33
[2026-06-13 09:08:33,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:08:33,613.613 INFO    ] Initializing speech engine...
[2026-06-13 09:08:33,622.622 INFO    ] 2026-06-13 09:08:33
[2026-06-13 09:08:33,845.845 INFO    ] 2026-06-13 09:08:33
[2026-06-13 09:08:33,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:08:34,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:08:34,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:08:34,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:08:34,251.251 INFO    ] time= 13/06/2026 09:08:34
[2026-06-13 09:08:34,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:34,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:34,397.397 INFO    ] No existing commands found in stream
[2026-06-13 09:08:39,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:08:39,411.411 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 09:08:39,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:08:39,940.940 INFO    ] Checking for system updates...
[2026-06-13 09:08:39,961.961 INFO    ] 200
[2026-06-13 09:08:39,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:39,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:39,994.994 INFO    ] No update needed
[2026-06-13 09:08:39,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 09:08:40,017.017 INFO    ] 200
[2026-06-13 09:08:40,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:40,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:08:40,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:08:40,083.083 INFO    ] No camera update needed
[2026-06-13 09:08:40,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:08:40,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:08:40,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:08:40,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:08:42,129.129 INFO    ] ================================================
[2026-06-13 09:08:42,144.144 INFO    ] Launching Daemon at Sat Jun 13 09:08:42 IST 2026
[2026-06-13 09:08:42,154.154 INFO    ] ================================================
[2026-06-13 09:08:42,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:08:42
[2026-06-13 09:08:42,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:08:43,006.006 INFO    ] Initializing speech engine...
[2026-06-13 09:08:43,011.011 INFO    ] 2026-06-13 09:08:43
[2026-06-13 09:08:43,220.220 INFO    ] 2026-06-13 09:08:43
[2026-06-13 09:08:43,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:08:43,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:08:43,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:08:43,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:08:43,612.612 INFO    ] time= 13/06/2026 09:08:43
[2026-06-13 09:08:43,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:43,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:43,746.746 INFO    ] No existing commands found in stream
[2026-06-13 09:08:48,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:08:48,758.758 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 09:08:52,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:08:52,258.258 INFO    ] Checking for system updates...
[2026-06-13 09:08:52,279.279 INFO    ] 200
[2026-06-13 09:08:52,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:52,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:08:52,313.313 INFO    ] No update needed
[2026-06-13 09:08:52,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 09:08:52,334.334 INFO    ] 200
[2026-06-13 09:08:52,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:08:52,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:08:52,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:08:52,402.402 INFO    ] No camera update needed
[2026-06-13 09:08:52,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:08:52,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:08:52,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:08:52,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:08:54,449.449 INFO    ] ================================================
[2026-06-13 09:08:54,464.464 INFO    ] Launching Daemon at Sat Jun 13 09:08:54 IST 2026
[2026-06-13 09:08:54,475.475 INFO    ] ================================================
[2026-06-13 09:08:54,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:08:54
[2026-06-13 09:08:55,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:08:55,271.271 INFO    ] Initializing speech engine...
[2026-06-13 09:08:55,281.281 INFO    ] 2026-06-13 09:08:55
[2026-06-13 09:08:55,488.488 INFO    ] 2026-06-13 09:08:55
[2026-06-13 09:08:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:08:55,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:08:55,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:08:55,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:08:55,898.898 INFO    ] time= 13/06/2026 09:08:55
[2026-06-13 09:08:55,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:08:55,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:08:56,003.003 INFO    ] No existing commands found in stream
[2026-06-13 09:09:01,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:01,014.014 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 09:09:03,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:09:03,012.012 INFO    ] Checking for system updates...
[2026-06-13 09:09:03,034.034 INFO    ] 200
[2026-06-13 09:09:03,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:03,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:09:03,070.070 INFO    ] No update needed
[2026-06-13 09:09:03,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 09:09:03,091.091 INFO    ] 200
[2026-06-13 09:09:03,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:03,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:09:03,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:09:03,145.145 INFO    ] No camera update needed
[2026-06-13 09:09:03,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:09:03,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:09:03,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:09:03,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:09:05,194.194 INFO    ] ================================================
[2026-06-13 09:09:05,209.209 INFO    ] Launching Daemon at Sat Jun 13 09:09:05 IST 2026
[2026-06-13 09:09:05,220.220 INFO    ] ================================================
[2026-06-13 09:09:05,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:09:05
[2026-06-13 09:09:06,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:09:06,578.578 INFO    ] Initializing speech engine...
[2026-06-13 09:09:06,583.583 INFO    ] 2026-06-13 09:09:06
[2026-06-13 09:09:06,789.789 INFO    ] 2026-06-13 09:09:06
[2026-06-13 09:09:06,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:09:06,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:09:07,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:09:07,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:09:07,185.185 INFO    ] time= 13/06/2026 09:09:07
[2026-06-13 09:09:07,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:09:07,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:09:07,304.304 INFO    ] No existing commands found in stream
[2026-06-13 09:09:12,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:12,314.314 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 09:09:16,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:09:16,358.358 INFO    ] Checking for system updates...
[2026-06-13 09:09:16,393.393 INFO    ] 200
[2026-06-13 09:09:16,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:16,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:16,453.453 INFO    ] No update needed
[2026-06-13 09:09:16,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 09:09:16,481.481 INFO    ] 200
[2026-06-13 09:09:16,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:16,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:09:16,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:16,545.545 INFO    ] No camera update needed
[2026-06-13 09:09:16,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:09:16,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:09:16,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:09:16,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:09:18,592.592 INFO    ] ================================================
[2026-06-13 09:09:18,607.607 INFO    ] Launching Daemon at Sat Jun 13 09:09:18 IST 2026
[2026-06-13 09:09:18,618.618 INFO    ] ================================================
[2026-06-13 09:09:18,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:09:18
[2026-06-13 09:09:19,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:09:19,424.424 INFO    ] Initializing speech engine...
[2026-06-13 09:09:19,434.434 INFO    ] 2026-06-13 09:09:19
[2026-06-13 09:09:19,642.642 INFO    ] 2026-06-13 09:09:19
[2026-06-13 09:09:19,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:09:19,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:09:19,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:09:19,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:09:20,061.061 INFO    ] time= 13/06/2026 09:09:20
[2026-06-13 09:09:20,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:09:20,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:09:20,169.169 INFO    ] No existing commands found in stream
[2026-06-13 09:09:25,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:25,186.186 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 09:09:27,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:09:27,620.620 INFO    ] Checking for system updates...
[2026-06-13 09:09:27,641.641 INFO    ] 200
[2026-06-13 09:09:27,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:27,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:27,675.675 INFO    ] No update needed
[2026-06-13 09:09:27,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 09:09:27,696.696 INFO    ] 200
[2026-06-13 09:09:27,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:27,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:09:27,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:09:27,767.767 INFO    ] No camera update needed
[2026-06-13 09:09:27,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:09:27,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:09:27,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:09:27,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:09:29,814.814 INFO    ] ================================================
[2026-06-13 09:09:29,830.830 INFO    ] Launching Daemon at Sat Jun 13 09:09:29 IST 2026
[2026-06-13 09:09:29,841.841 INFO    ] ================================================
[2026-06-13 09:09:30,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:09:30
[2026-06-13 09:09:30,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:09:30,631.631 INFO    ] Initializing speech engine...
[2026-06-13 09:09:30,637.637 INFO    ] 2026-06-13 09:09:30
[2026-06-13 09:09:30,843.843 INFO    ] 2026-06-13 09:09:30
[2026-06-13 09:09:30,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:09:31,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:09:31,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:09:31,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:09:31,322.322 INFO    ] time= 13/06/2026 09:09:31
[2026-06-13 09:09:31,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:09:31,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:09:31,554.554 INFO    ] No existing commands found in stream
[2026-06-13 09:09:36,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:36,583.583 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 09:09:37,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:09:37,471.471 INFO    ] Checking for system updates...
[2026-06-13 09:09:37,493.493 INFO    ] 200
[2026-06-13 09:09:37,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:37,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:37,531.531 INFO    ] No update needed
[2026-06-13 09:09:37,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 09:09:37,553.553 INFO    ] 200
[2026-06-13 09:09:37,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:37,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:09:37,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:37,616.616 INFO    ] No camera update needed
[2026-06-13 09:09:37,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:09:37,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:09:37,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:09:37,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:09:39,664.664 INFO    ] ================================================
[2026-06-13 09:09:39,679.679 INFO    ] Launching Daemon at Sat Jun 13 09:09:39 IST 2026
[2026-06-13 09:09:39,689.689 INFO    ] ================================================
[2026-06-13 09:09:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:09:40
[2026-06-13 09:09:40,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:09:40,466.466 INFO    ] Initializing speech engine...
[2026-06-13 09:09:40,476.476 INFO    ] 2026-06-13 09:09:40
[2026-06-13 09:09:40,681.681 INFO    ] 2026-06-13 09:09:40
[2026-06-13 09:09:40,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:09:40,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:09:40,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:09:41,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:09:41,040.040 INFO    ] time= 13/06/2026 09:09:41
[2026-06-13 09:09:41,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:09:41,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:09:41,220.220 INFO    ] No existing commands found in stream
[2026-06-13 09:09:46,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:46,233.233 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 09:09:47,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:09:47,500.500 INFO    ] Checking for system updates...
[2026-06-13 09:09:47,522.522 INFO    ] 200
[2026-06-13 09:09:47,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:47,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:47,559.559 INFO    ] No update needed
[2026-06-13 09:09:47,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 09:09:47,582.582 INFO    ] 200
[2026-06-13 09:09:47,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:09:47,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:09:47,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:09:47,635.635 INFO    ] No camera update needed
[2026-06-13 09:09:47,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:09:47,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:09:47,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:09:47,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:09:49,682.682 INFO    ] ================================================
[2026-06-13 09:09:49,698.698 INFO    ] Launching Daemon at Sat Jun 13 09:09:49 IST 2026
[2026-06-13 09:09:49,709.709 INFO    ] ================================================
[2026-06-13 09:09:50,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:09:50
[2026-06-13 09:09:50,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:09:50,496.496 INFO    ] Initializing speech engine...
[2026-06-13 09:09:50,509.509 INFO    ] 2026-06-13 09:09:50
[2026-06-13 09:09:50,729.729 INFO    ] 2026-06-13 09:09:50
[2026-06-13 09:09:50,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:09:50,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:09:50,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:09:51,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:09:51,134.134 INFO    ] time= 13/06/2026 09:09:51
[2026-06-13 09:09:51,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:09:51,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:09:51,286.286 INFO    ] No existing commands found in stream
[2026-06-13 09:09:56,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:09:56,299.299 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 09:10:00,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:10:00,337.337 INFO    ] Checking for system updates...
[2026-06-13 09:10:00,359.359 INFO    ] 200
[2026-06-13 09:10:00,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:00,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:00,392.392 INFO    ] No update needed
[2026-06-13 09:10:00,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:00,413.413 INFO    ] 200
[2026-06-13 09:10:00,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:00,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:00,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:00,575.575 INFO    ] No camera update needed
[2026-06-13 09:10:00,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:00,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:00,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:00,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:02,620.620 INFO    ] ================================================
[2026-06-13 09:10:02,629.629 INFO    ] Launching Daemon at Sat Jun 13 09:10:02 IST 2026
[2026-06-13 09:10:02,635.635 INFO    ] ================================================
[2026-06-13 09:10:02,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:02
[2026-06-13 09:10:03,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:03,452.452 INFO    ] Initializing speech engine...
[2026-06-13 09:10:03,457.457 INFO    ] 2026-06-13 09:10:03
[2026-06-13 09:10:03,660.660 INFO    ] 2026-06-13 09:10:03
[2026-06-13 09:10:03,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:10:03,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:10:03,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:10:04,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:10:04,066.066 INFO    ] time= 13/06/2026 09:10:04
[2026-06-13 09:10:04,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:10:04,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:10:04,176.176 INFO    ] No existing commands found in stream
[2026-06-13 09:10:09,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:10:09,190.190 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 09:10:13,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:10:13,055.055 INFO    ] Checking for system updates...
[2026-06-13 09:10:13,076.076 INFO    ] 200
[2026-06-13 09:10:13,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:13,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:13,109.109 INFO    ] No update needed
[2026-06-13 09:10:13,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:13,132.132 INFO    ] 200
[2026-06-13 09:10:13,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:13,156.156 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:13,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:13,194.194 INFO    ] No camera update needed
[2026-06-13 09:10:13,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:13,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:13,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:13,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:15,240.240 INFO    ] ================================================
[2026-06-13 09:10:15,256.256 INFO    ] Launching Daemon at Sat Jun 13 09:10:15 IST 2026
[2026-06-13 09:10:15,267.267 INFO    ] ================================================
[2026-06-13 09:10:15,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:15
[2026-06-13 09:10:16,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:16,354.354 INFO    ] Initializing speech engine...
[2026-06-13 09:10:16,374.374 INFO    ] 2026-06-13 09:10:16
[2026-06-13 09:10:16,625.625 INFO    ] 2026-06-13 09:10:16
[2026-06-13 09:10:16,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:10:16,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:10:16,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:10:16,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:10:16,980.980 INFO    ] time= 13/06/2026 09:10:16
[2026-06-13 09:10:17,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:10:17,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:10:17,077.077 INFO    ] No existing commands found in stream
[2026-06-13 09:10:22,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:10:22,092.092 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 09:10:26,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:10:26,297.297 INFO    ] Checking for system updates...
[2026-06-13 09:10:26,318.318 INFO    ] 200
[2026-06-13 09:10:26,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:26,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:26,351.351 INFO    ] No update needed
[2026-06-13 09:10:26,352.352 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:26,374.374 INFO    ] 200
[2026-06-13 09:10:26,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:26,402.402 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:26,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:26,442.442 INFO    ] No camera update needed
[2026-06-13 09:10:26,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:26,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:26,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:26,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:28,491.491 INFO    ] ================================================
[2026-06-13 09:10:28,506.506 INFO    ] Launching Daemon at Sat Jun 13 09:10:28 IST 2026
[2026-06-13 09:10:28,517.517 INFO    ] ================================================
[2026-06-13 09:10:28,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:28
[2026-06-13 09:10:29,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:29,313.313 INFO    ] Initializing speech engine...
[2026-06-13 09:10:29,317.317 INFO    ] 2026-06-13 09:10:29
[2026-06-13 09:10:29,518.518 INFO    ] 2026-06-13 09:10:29
[2026-06-13 09:10:29,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:10:29,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:10:29,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:10:29,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:10:29,914.914 INFO    ] time= 13/06/2026 09:10:29
[2026-06-13 09:10:29,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:10:29,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:10:30,035.035 INFO    ] No existing commands found in stream
[2026-06-13 09:10:35,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:10:35,048.048 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 09:10:35,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:10:35,519.519 INFO    ] Checking for system updates...
[2026-06-13 09:10:35,540.540 INFO    ] 200
[2026-06-13 09:10:35,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:35,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:35,573.573 INFO    ] No update needed
[2026-06-13 09:10:35,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:35,594.594 INFO    ] 200
[2026-06-13 09:10:35,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:35,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:35,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:35,660.660 INFO    ] No camera update needed
[2026-06-13 09:10:35,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:35,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:35,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:35,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:37,708.708 INFO    ] ================================================
[2026-06-13 09:10:37,723.723 INFO    ] Launching Daemon at Sat Jun 13 09:10:37 IST 2026
[2026-06-13 09:10:37,734.734 INFO    ] ================================================
[2026-06-13 09:10:38,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:38
[2026-06-13 09:10:38,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:38,615.615 INFO    ] Initializing speech engine...
[2026-06-13 09:10:38,621.621 INFO    ] 2026-06-13 09:10:38
[2026-06-13 09:10:38,886.886 INFO    ] 2026-06-13 09:10:38
[2026-06-13 09:10:38,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:10:39,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:10:39,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:10:39,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:10:39,208.208 INFO    ] time= 13/06/2026 09:10:39
[2026-06-13 09:10:39,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:10:39,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:10:39,320.320 INFO    ] No existing commands found in stream
[2026-06-13 09:10:44,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:10:44,339.339 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 09:10:47,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:10:47,072.072 INFO    ] Checking for system updates...
[2026-06-13 09:10:47,092.092 INFO    ] 200
[2026-06-13 09:10:47,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:47,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:47,128.128 INFO    ] No update needed
[2026-06-13 09:10:47,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:47,149.149 INFO    ] 200
[2026-06-13 09:10:47,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:47,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:47,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:10:47,221.221 INFO    ] No camera update needed
[2026-06-13 09:10:47,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:47,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:47,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:47,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:49,270.270 INFO    ] ================================================
[2026-06-13 09:10:49,285.285 INFO    ] Launching Daemon at Sat Jun 13 09:10:49 IST 2026
[2026-06-13 09:10:49,295.295 INFO    ] ================================================
[2026-06-13 09:10:49,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:49
[2026-06-13 09:10:49,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:50,147.147 INFO    ] Initializing speech engine...
[2026-06-13 09:10:50,153.153 INFO    ] 2026-06-13 09:10:50
[2026-06-13 09:10:50,354.354 INFO    ] 2026-06-13 09:10:50
[2026-06-13 09:10:50,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:10:50,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:10:50,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:10:50,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:10:50,755.755 INFO    ] time= 13/06/2026 09:10:50
[2026-06-13 09:10:50,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:10:50,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:10:50,862.862 INFO    ] No existing commands found in stream
[2026-06-13 09:10:55,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:10:55,876.876 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 09:10:56,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:10:56,918.918 INFO    ] Checking for system updates...
[2026-06-13 09:10:56,939.939 INFO    ] 200
[2026-06-13 09:10:56,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:56,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:56,973.973 INFO    ] No update needed
[2026-06-13 09:10:56,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 09:10:56,996.996 INFO    ] 200
[2026-06-13 09:10:56,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:10:57,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:10:57,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:10:57,060.060 INFO    ] No camera update needed
[2026-06-13 09:10:57,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:10:57,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:10:57,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:10:57,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:10:59,108.108 INFO    ] ================================================
[2026-06-13 09:10:59,123.123 INFO    ] Launching Daemon at Sat Jun 13 09:10:59 IST 2026
[2026-06-13 09:10:59,134.134 INFO    ] ================================================
[2026-06-13 09:10:59,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:10:59
[2026-06-13 09:10:59,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:10:59,925.925 INFO    ] Initializing speech engine...
[2026-06-13 09:10:59,930.930 INFO    ] 2026-06-13 09:10:59
[2026-06-13 09:11:00,158.158 INFO    ] 2026-06-13 09:11:00
[2026-06-13 09:11:00,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:00,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:00,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:00,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:00,559.559 INFO    ] time= 13/06/2026 09:11:00
[2026-06-13 09:11:00,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:00,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:00,712.712 INFO    ] No existing commands found in stream
[2026-06-13 09:11:05,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:11:05,725.725 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 09:11:07,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:11:07,055.055 INFO    ] Checking for system updates...
[2026-06-13 09:11:07,075.075 INFO    ] 200
[2026-06-13 09:11:07,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:07,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:11:07,110.110 INFO    ] No update needed
[2026-06-13 09:11:07,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 09:11:07,131.131 INFO    ] 200
[2026-06-13 09:11:07,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:07,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:11:07,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:11:07,193.193 INFO    ] No camera update needed
[2026-06-13 09:11:07,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:11:07,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:11:07,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:11:07,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:11:09,241.241 INFO    ] ================================================
[2026-06-13 09:11:09,257.257 INFO    ] Launching Daemon at Sat Jun 13 09:11:09 IST 2026
[2026-06-13 09:11:09,267.267 INFO    ] ================================================
[2026-06-13 09:11:09,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:11:09
[2026-06-13 09:11:09,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:11:10,051.051 INFO    ] Initializing speech engine...
[2026-06-13 09:11:10,056.056 INFO    ] 2026-06-13 09:11:10
[2026-06-13 09:11:10,259.259 INFO    ] 2026-06-13 09:11:10
[2026-06-13 09:11:10,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:10,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:10,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:10,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:10,571.571 INFO    ] time= 13/06/2026 09:11:10
[2026-06-13 09:11:10,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:10,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:10,610.610 INFO    ] No existing commands found in stream
[2026-06-13 09:11:15,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:11:15,622.622 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 09:11:17,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:11:17,183.183 INFO    ] Checking for system updates...
[2026-06-13 09:11:17,205.205 INFO    ] 200
[2026-06-13 09:11:17,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:17,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:17,238.238 INFO    ] No update needed
[2026-06-13 09:11:17,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 09:11:17,261.261 INFO    ] 200
[2026-06-13 09:11:17,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:17,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:11:17,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:17,335.335 INFO    ] No camera update needed
[2026-06-13 09:11:17,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:11:17,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:11:17,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:11:17,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:11:19,383.383 INFO    ] ================================================
[2026-06-13 09:11:19,398.398 INFO    ] Launching Daemon at Sat Jun 13 09:11:19 IST 2026
[2026-06-13 09:11:19,409.409 INFO    ] ================================================
[2026-06-13 09:11:19,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:11:19
[2026-06-13 09:11:20,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:11:20,190.190 INFO    ] Initializing speech engine...
[2026-06-13 09:11:20,195.195 INFO    ] 2026-06-13 09:11:20
[2026-06-13 09:11:20,399.399 INFO    ] 2026-06-13 09:11:20
[2026-06-13 09:11:20,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:20,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:20,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:20,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:20,812.812 INFO    ] time= 13/06/2026 09:11:20
[2026-06-13 09:11:20,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:20,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:20,910.910 INFO    ] No existing commands found in stream
[2026-06-13 09:11:25,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:11:25,924.924 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 09:11:29,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:11:29,803.803 INFO    ] Checking for system updates...
[2026-06-13 09:11:29,823.823 INFO    ] 200
[2026-06-13 09:11:29,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:29,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:11:29,857.857 INFO    ] No update needed
[2026-06-13 09:11:29,858.858 INFO    ] Checking for camera pi updates...
[2026-06-13 09:11:29,877.877 INFO    ] 200
[2026-06-13 09:11:29,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:29,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:11:29,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:11:29,942.942 INFO    ] No camera update needed
[2026-06-13 09:11:29,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:11:29,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:11:29,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:11:29,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:11:31,985.985 INFO    ] ================================================
[2026-06-13 09:11:31,995.995 INFO    ] Launching Daemon at Sat Jun 13 09:11:31 IST 2026
[2026-06-13 09:11:32,002.002 INFO    ] ================================================
[2026-06-13 09:11:32,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:11:32
[2026-06-13 09:11:32,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:11:32,858.858 INFO    ] Initializing speech engine...
[2026-06-13 09:11:32,862.862 INFO    ] 2026-06-13 09:11:32
[2026-06-13 09:11:33,067.067 INFO    ] 2026-06-13 09:11:33
[2026-06-13 09:11:33,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:33,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:33,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:33,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:33,517.517 INFO    ] time= 13/06/2026 09:11:33
[2026-06-13 09:11:33,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:33,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:33,633.633 INFO    ] No existing commands found in stream
[2026-06-13 09:11:38,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:11:38,644.644 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 09:11:41,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:11:41,911.911 INFO    ] Checking for system updates...
[2026-06-13 09:11:41,932.932 INFO    ] 200
[2026-06-13 09:11:41,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:41,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:41,965.965 INFO    ] No update needed
[2026-06-13 09:11:41,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 09:11:41,989.989 INFO    ] 200
[2026-06-13 09:11:41,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:42,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:11:42,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:42,057.057 INFO    ] No camera update needed
[2026-06-13 09:11:42,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:11:42,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:11:42,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:11:42,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:11:44,104.104 INFO    ] ================================================
[2026-06-13 09:11:44,119.119 INFO    ] Launching Daemon at Sat Jun 13 09:11:44 IST 2026
[2026-06-13 09:11:44,130.130 INFO    ] ================================================
[2026-06-13 09:11:44,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:11:44
[2026-06-13 09:11:44,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:11:44,974.974 INFO    ] Initializing speech engine...
[2026-06-13 09:11:44,979.979 INFO    ] 2026-06-13 09:11:44
[2026-06-13 09:11:45,189.189 INFO    ] 2026-06-13 09:11:45
[2026-06-13 09:11:45,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:45,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:45,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:45,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:45,600.600 INFO    ] time= 13/06/2026 09:11:45
[2026-06-13 09:11:45,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:45,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:45,807.807 INFO    ] No existing commands found in stream
[2026-06-13 09:11:50,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:11:50,844.844 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 09:11:54,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:11:54,190.190 INFO    ] Checking for system updates...
[2026-06-13 09:11:54,211.211 INFO    ] 200
[2026-06-13 09:11:54,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:54,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:54,247.247 INFO    ] No update needed
[2026-06-13 09:11:54,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 09:11:54,271.271 INFO    ] 200
[2026-06-13 09:11:54,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:11:54,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:11:54,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:11:54,338.338 INFO    ] No camera update needed
[2026-06-13 09:11:54,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:11:54,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:11:54,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:11:54,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:11:56,387.387 INFO    ] ================================================
[2026-06-13 09:11:56,402.402 INFO    ] Launching Daemon at Sat Jun 13 09:11:56 IST 2026
[2026-06-13 09:11:56,413.413 INFO    ] ================================================
[2026-06-13 09:11:56,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:11:56
[2026-06-13 09:11:57,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:11:57,511.511 INFO    ] Initializing speech engine...
[2026-06-13 09:11:57,522.522 INFO    ] 2026-06-13 09:11:57
[2026-06-13 09:11:57,784.784 INFO    ] 2026-06-13 09:11:57
[2026-06-13 09:11:57,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:11:58,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:11:58,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:11:58,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:11:58,208.208 INFO    ] time= 13/06/2026 09:11:58
[2026-06-13 09:11:58,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:11:58,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:11:58,393.393 INFO    ] No existing commands found in stream
[2026-06-13 09:12:03,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:12:03,407.407 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 09:12:05,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:12:05,335.335 INFO    ] Checking for system updates...
[2026-06-13 09:12:05,357.357 INFO    ] 200
[2026-06-13 09:12:05,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:05,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:12:05,390.390 INFO    ] No update needed
[2026-06-13 09:12:05,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 09:12:05,413.413 INFO    ] 200
[2026-06-13 09:12:05,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:05,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:12:05,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:05,477.477 INFO    ] No camera update needed
[2026-06-13 09:12:05,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:12:05,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:12:05,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:12:05,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:12:07,524.524 INFO    ] ================================================
[2026-06-13 09:12:07,539.539 INFO    ] Launching Daemon at Sat Jun 13 09:12:07 IST 2026
[2026-06-13 09:12:07,550.550 INFO    ] ================================================
[2026-06-13 09:12:07,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:12:07
[2026-06-13 09:12:08,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:12:08,313.313 INFO    ] Initializing speech engine...
[2026-06-13 09:12:08,317.317 INFO    ] 2026-06-13 09:12:08
[2026-06-13 09:12:08,511.511 INFO    ] 2026-06-13 09:12:08
[2026-06-13 09:12:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:12:08,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:12:08,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:12:08,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:12:08,805.805 INFO    ] time= 13/06/2026 09:12:08
[2026-06-13 09:12:08,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:12:08,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:12:08,891.891 INFO    ] No existing commands found in stream
[2026-06-13 09:12:13,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:12:13,921.921 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 09:12:17,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:12:17,440.440 INFO    ] Checking for system updates...
[2026-06-13 09:12:17,462.462 INFO    ] 200
[2026-06-13 09:12:17,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:17,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:17,498.498 INFO    ] No update needed
[2026-06-13 09:12:17,499.499 INFO    ] Checking for camera pi updates...
[2026-06-13 09:12:17,519.519 INFO    ] 200
[2026-06-13 09:12:17,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:17,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:12:17,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:17,585.585 INFO    ] No camera update needed
[2026-06-13 09:12:17,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:12:17,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:12:17,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:12:17,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:12:19,634.634 INFO    ] ================================================
[2026-06-13 09:12:19,650.650 INFO    ] Launching Daemon at Sat Jun 13 09:12:19 IST 2026
[2026-06-13 09:12:19,660.660 INFO    ] ================================================
[2026-06-13 09:12:20,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:12:20
[2026-06-13 09:12:20,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:12:20,494.494 INFO    ] Initializing speech engine...
[2026-06-13 09:12:20,500.500 INFO    ] 2026-06-13 09:12:20
[2026-06-13 09:12:20,716.716 INFO    ] 2026-06-13 09:12:20
[2026-06-13 09:12:20,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:12:20,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:12:20,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:12:20,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:12:20,964.964 INFO    ] time= 13/06/2026 09:12:20
[2026-06-13 09:12:20,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:12:20,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:12:21,078.078 INFO    ] No existing commands found in stream
[2026-06-13 09:12:26,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:12:26,110.110 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 09:12:30,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:12:30,451.451 INFO    ] Checking for system updates...
[2026-06-13 09:12:30,491.491 INFO    ] 200
[2026-06-13 09:12:30,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:30,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:30,525.525 INFO    ] No update needed
[2026-06-13 09:12:30,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 09:12:30,546.546 INFO    ] 200
[2026-06-13 09:12:30,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:30,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:12:30,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:30,613.613 INFO    ] No camera update needed
[2026-06-13 09:12:30,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:12:30,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:12:30,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:12:30,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:12:32,662.662 INFO    ] ================================================
[2026-06-13 09:12:32,677.677 INFO    ] Launching Daemon at Sat Jun 13 09:12:32 IST 2026
[2026-06-13 09:12:32,688.688 INFO    ] ================================================
[2026-06-13 09:12:33,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:12:33
[2026-06-13 09:12:33,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:12:33,544.544 INFO    ] Initializing speech engine...
[2026-06-13 09:12:33,551.551 INFO    ] 2026-06-13 09:12:33
[2026-06-13 09:12:33,760.760 INFO    ] 2026-06-13 09:12:33
[2026-06-13 09:12:33,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:12:33,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:12:33,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:12:34,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:12:34,181.181 INFO    ] time= 13/06/2026 09:12:34
[2026-06-13 09:12:34,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:12:34,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:12:34,283.283 INFO    ] No existing commands found in stream
[2026-06-13 09:12:39,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:12:39,296.296 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 09:12:41,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:12:41,306.306 INFO    ] Checking for system updates...
[2026-06-13 09:12:41,327.327 INFO    ] 200
[2026-06-13 09:12:41,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:41,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:41,364.364 INFO    ] No update needed
[2026-06-13 09:12:41,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 09:12:41,387.387 INFO    ] 200
[2026-06-13 09:12:41,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:41,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:12:41,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:41,445.445 INFO    ] No camera update needed
[2026-06-13 09:12:41,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:12:41,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:12:41,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:12:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:12:43,494.494 INFO    ] ================================================
[2026-06-13 09:12:43,509.509 INFO    ] Launching Daemon at Sat Jun 13 09:12:43 IST 2026
[2026-06-13 09:12:43,520.520 INFO    ] ================================================
[2026-06-13 09:12:43,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:12:43
[2026-06-13 09:12:44,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:12:44,290.290 INFO    ] Initializing speech engine...
[2026-06-13 09:12:44,295.295 INFO    ] 2026-06-13 09:12:44
[2026-06-13 09:12:44,513.513 INFO    ] 2026-06-13 09:12:44
[2026-06-13 09:12:44,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:12:44,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:12:44,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:12:44,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:12:44,917.917 INFO    ] time= 13/06/2026 09:12:44
[2026-06-13 09:12:44,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:12:44,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:12:45,033.033 INFO    ] No existing commands found in stream
[2026-06-13 09:12:50,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:12:50,046.046 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 09:12:53,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:12:53,368.368 INFO    ] Checking for system updates...
[2026-06-13 09:12:53,391.391 INFO    ] 200
[2026-06-13 09:12:53,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:53,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:53,425.425 INFO    ] No update needed
[2026-06-13 09:12:53,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 09:12:53,446.446 INFO    ] 200
[2026-06-13 09:12:53,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:12:53,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:12:53,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:12:53,512.512 INFO    ] No camera update needed
[2026-06-13 09:12:53,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:12:53,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:12:53,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:12:53,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:12:55,558.558 INFO    ] ================================================
[2026-06-13 09:12:55,573.573 INFO    ] Launching Daemon at Sat Jun 13 09:12:55 IST 2026
[2026-06-13 09:12:55,584.584 INFO    ] ================================================
[2026-06-13 09:12:55,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:12:55
[2026-06-13 09:12:56,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:12:56,369.369 INFO    ] Initializing speech engine...
[2026-06-13 09:12:56,382.382 INFO    ] 2026-06-13 09:12:56
[2026-06-13 09:12:56,587.587 INFO    ] 2026-06-13 09:12:56
[2026-06-13 09:12:56,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:12:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:12:56,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:12:56,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:12:56,992.992 INFO    ] time= 13/06/2026 09:12:56
[2026-06-13 09:12:57,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:12:57,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:12:57,101.101 INFO    ] No existing commands found in stream
[2026-06-13 09:13:02,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:02,112.112 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 09:13:02,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:13:02,896.896 INFO    ] Checking for system updates...
[2026-06-13 09:13:02,917.917 INFO    ] 200
[2026-06-13 09:13:02,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:02,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:02,950.950 INFO    ] No update needed
[2026-06-13 09:13:02,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 09:13:02,971.971 INFO    ] 200
[2026-06-13 09:13:02,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:02,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:13:03,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:03,030.030 INFO    ] No camera update needed
[2026-06-13 09:13:03,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:13:03,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:13:03,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:13:03,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:13:05,078.078 INFO    ] ================================================
[2026-06-13 09:13:05,093.093 INFO    ] Launching Daemon at Sat Jun 13 09:13:05 IST 2026
[2026-06-13 09:13:05,103.103 INFO    ] ================================================
[2026-06-13 09:13:05,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:13:05
[2026-06-13 09:13:05,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:13:05,951.951 INFO    ] Initializing speech engine...
[2026-06-13 09:13:05,957.957 INFO    ] 2026-06-13 09:13:05
[2026-06-13 09:13:06,162.162 INFO    ] 2026-06-13 09:13:06
[2026-06-13 09:13:06,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:13:06,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:13:06,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:13:06,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:13:06,549.549 INFO    ] time= 13/06/2026 09:13:06
[2026-06-13 09:13:06,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:13:06,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:13:06,674.674 INFO    ] No existing commands found in stream
[2026-06-13 09:13:11,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:11,686.686 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 09:13:14,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:13:14,957.957 INFO    ] Checking for system updates...
[2026-06-13 09:13:14,979.979 INFO    ] 200
[2026-06-13 09:13:14,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:15,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:15,012.012 INFO    ] No update needed
[2026-06-13 09:13:15,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 09:13:15,033.033 INFO    ] 200
[2026-06-13 09:13:15,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:15,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:13:15,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:15,097.097 INFO    ] No camera update needed
[2026-06-13 09:13:15,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:13:15,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:13:15,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:13:15,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:13:17,143.143 INFO    ] ================================================
[2026-06-13 09:13:17,158.158 INFO    ] Launching Daemon at Sat Jun 13 09:13:17 IST 2026
[2026-06-13 09:13:17,169.169 INFO    ] ================================================
[2026-06-13 09:13:17,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:13:17
[2026-06-13 09:13:17,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:13:18,027.027 INFO    ] Initializing speech engine...
[2026-06-13 09:13:18,037.037 INFO    ] 2026-06-13 09:13:18
[2026-06-13 09:13:18,248.248 INFO    ] 2026-06-13 09:13:18
[2026-06-13 09:13:18,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:13:18,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:13:18,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:13:18,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:13:18,674.674 INFO    ] time= 13/06/2026 09:13:18
[2026-06-13 09:13:18,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:13:18,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:13:18,772.772 INFO    ] No existing commands found in stream
[2026-06-13 09:13:23,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:23,790.790 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 09:13:27,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:13:27,162.162 INFO    ] Checking for system updates...
[2026-06-13 09:13:27,183.183 INFO    ] 200
[2026-06-13 09:13:27,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:27,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:27,217.217 INFO    ] No update needed
[2026-06-13 09:13:27,218.218 INFO    ] Checking for camera pi updates...
[2026-06-13 09:13:27,241.241 INFO    ] 200
[2026-06-13 09:13:27,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:27,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:13:27,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:13:27,307.307 INFO    ] No camera update needed
[2026-06-13 09:13:27,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:13:27,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:13:27,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:13:27,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:13:29,355.355 INFO    ] ================================================
[2026-06-13 09:13:29,370.370 INFO    ] Launching Daemon at Sat Jun 13 09:13:29 IST 2026
[2026-06-13 09:13:29,381.381 INFO    ] ================================================
[2026-06-13 09:13:29,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:13:29
[2026-06-13 09:13:30,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:13:30,202.202 INFO    ] Initializing speech engine...
[2026-06-13 09:13:30,207.207 INFO    ] 2026-06-13 09:13:30
[2026-06-13 09:13:30,409.409 INFO    ] 2026-06-13 09:13:30
[2026-06-13 09:13:30,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:13:30,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:13:30,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:13:30,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:13:30,810.810 INFO    ] time= 13/06/2026 09:13:30
[2026-06-13 09:13:30,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:13:30,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:13:30,924.924 INFO    ] No existing commands found in stream
[2026-06-13 09:13:35,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:35,938.938 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 09:13:36,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:13:36,824.824 INFO    ] Checking for system updates...
[2026-06-13 09:13:36,845.845 INFO    ] 200
[2026-06-13 09:13:36,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:36,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:36,884.884 INFO    ] No update needed
[2026-06-13 09:13:36,885.885 INFO    ] Checking for camera pi updates...
[2026-06-13 09:13:36,906.906 INFO    ] 200
[2026-06-13 09:13:36,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:36,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:13:36,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:36,971.971 INFO    ] No camera update needed
[2026-06-13 09:13:36,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:13:36,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:13:36,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:13:36,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:13:39,018.018 INFO    ] ================================================
[2026-06-13 09:13:39,033.033 INFO    ] Launching Daemon at Sat Jun 13 09:13:39 IST 2026
[2026-06-13 09:13:39,044.044 INFO    ] ================================================
[2026-06-13 09:13:39,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:13:39
[2026-06-13 09:13:39,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:13:39,854.854 INFO    ] Initializing speech engine...
[2026-06-13 09:13:39,859.859 INFO    ] 2026-06-13 09:13:39
[2026-06-13 09:13:40,064.064 INFO    ] 2026-06-13 09:13:40
[2026-06-13 09:13:40,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:13:40,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:13:40,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:13:40,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:13:40,458.458 INFO    ] time= 13/06/2026 09:13:40
[2026-06-13 09:13:40,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:13:40,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:13:40,579.579 INFO    ] No existing commands found in stream
[2026-06-13 09:13:45,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:45,591.591 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 09:13:48,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:13:48,845.845 INFO    ] Checking for system updates...
[2026-06-13 09:13:48,865.865 INFO    ] 200
[2026-06-13 09:13:48,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:48,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:48,904.904 INFO    ] No update needed
[2026-06-13 09:13:48,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 09:13:48,925.925 INFO    ] 200
[2026-06-13 09:13:48,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:13:48,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:13:48,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:13:48,987.987 INFO    ] No camera update needed
[2026-06-13 09:13:48,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:13:48,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:13:48,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:13:48,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:13:51,034.034 INFO    ] ================================================
[2026-06-13 09:13:51,049.049 INFO    ] Launching Daemon at Sat Jun 13 09:13:51 IST 2026
[2026-06-13 09:13:51,060.060 INFO    ] ================================================
[2026-06-13 09:13:51,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:13:51
[2026-06-13 09:13:51,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:13:51,897.897 INFO    ] Initializing speech engine...
[2026-06-13 09:13:51,902.902 INFO    ] 2026-06-13 09:13:51
[2026-06-13 09:13:52,106.106 INFO    ] 2026-06-13 09:13:52
[2026-06-13 09:13:52,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:13:52,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:13:52,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:13:52,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:13:52,507.507 INFO    ] time= 13/06/2026 09:13:52
[2026-06-13 09:13:52,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:13:52,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:13:52,622.622 INFO    ] No existing commands found in stream
[2026-06-13 09:13:57,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:13:57,639.639 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 09:14:01,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:14:01,961.961 INFO    ] Checking for system updates...
[2026-06-13 09:14:01,994.994 INFO    ] 200
[2026-06-13 09:14:01,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:02,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:02,072.072 INFO    ] No update needed
[2026-06-13 09:14:02,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:02,111.111 INFO    ] 200
[2026-06-13 09:14:02,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:02,156.156 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:02,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:14:02,189.189 INFO    ] No camera update needed
[2026-06-13 09:14:02,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:02,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:02,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:02,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:04,238.238 INFO    ] ================================================
[2026-06-13 09:14:04,253.253 INFO    ] Launching Daemon at Sat Jun 13 09:14:04 IST 2026
[2026-06-13 09:14:04,264.264 INFO    ] ================================================
[2026-06-13 09:14:04,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:14:04
[2026-06-13 09:14:04,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:14:05,092.092 INFO    ] Initializing speech engine...
[2026-06-13 09:14:05,102.102 INFO    ] 2026-06-13 09:14:05
[2026-06-13 09:14:05,306.306 INFO    ] 2026-06-13 09:14:05
[2026-06-13 09:14:05,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:14:05,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:14:05,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:14:05,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:14:05,703.703 INFO    ] time= 13/06/2026 09:14:05
[2026-06-13 09:14:05,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:14:05,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:14:05,819.819 INFO    ] No existing commands found in stream
[2026-06-13 09:14:10,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:14:10,831.831 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 09:14:11,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:14:11,215.215 INFO    ] Checking for system updates...
[2026-06-13 09:14:11,237.237 INFO    ] 200
[2026-06-13 09:14:11,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:11,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:11,273.273 INFO    ] No update needed
[2026-06-13 09:14:11,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:11,294.294 INFO    ] 200
[2026-06-13 09:14:11,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:11,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:11,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:11,460.460 INFO    ] No camera update needed
[2026-06-13 09:14:11,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:11,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:11,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:11,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:13,510.510 INFO    ] ================================================
[2026-06-13 09:14:13,525.525 INFO    ] Launching Daemon at Sat Jun 13 09:14:13 IST 2026
[2026-06-13 09:14:13,536.536 INFO    ] ================================================
[2026-06-13 09:14:13,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:14:13
[2026-06-13 09:14:14,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:14:14,412.412 INFO    ] Initializing speech engine...
[2026-06-13 09:14:14,417.417 INFO    ] 2026-06-13 09:14:14
[2026-06-13 09:14:14,624.624 INFO    ] 2026-06-13 09:14:14
[2026-06-13 09:14:14,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:14:14,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:14:14,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:14:14,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:14:15,028.028 INFO    ] time= 13/06/2026 09:14:14
[2026-06-13 09:14:15,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:14:15,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:14:15,144.144 INFO    ] No existing commands found in stream
[2026-06-13 09:14:20,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:14:20,161.161 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 09:14:22,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:14:22,297.297 INFO    ] Checking for system updates...
[2026-06-13 09:14:22,323.323 INFO    ] 200
[2026-06-13 09:14:22,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:22,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:14:22,364.364 INFO    ] No update needed
[2026-06-13 09:14:22,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:22,385.385 INFO    ] 200
[2026-06-13 09:14:22,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:22,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:22,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:22,456.456 INFO    ] No camera update needed
[2026-06-13 09:14:22,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:22,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:22,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:22,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:24,505.505 INFO    ] ================================================
[2026-06-13 09:14:24,520.520 INFO    ] Launching Daemon at Sat Jun 13 09:14:24 IST 2026
[2026-06-13 09:14:24,531.531 INFO    ] ================================================
[2026-06-13 09:14:24,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:14:24
[2026-06-13 09:14:25,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:14:25,314.314 INFO    ] Initializing speech engine...
[2026-06-13 09:14:25,322.322 INFO    ] 2026-06-13 09:14:25
[2026-06-13 09:14:25,533.533 INFO    ] 2026-06-13 09:14:25
[2026-06-13 09:14:25,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:14:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:14:25,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:14:25,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:14:25,962.962 INFO    ] time= 13/06/2026 09:14:25
[2026-06-13 09:14:25,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:14:25,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:14:26,059.059 INFO    ] No existing commands found in stream
[2026-06-13 09:14:31,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:14:31,072.072 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 09:14:33,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:14:33,174.174 INFO    ] Checking for system updates...
[2026-06-13 09:14:33,195.195 INFO    ] 200
[2026-06-13 09:14:33,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:33,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:14:33,229.229 INFO    ] No update needed
[2026-06-13 09:14:33,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:33,251.251 INFO    ] 200
[2026-06-13 09:14:33,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:33,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:33,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:14:33,319.319 INFO    ] No camera update needed
[2026-06-13 09:14:33,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:33,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:33,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:33,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:35,370.370 INFO    ] ================================================
[2026-06-13 09:14:35,385.385 INFO    ] Launching Daemon at Sat Jun 13 09:14:35 IST 2026
[2026-06-13 09:14:35,396.396 INFO    ] ================================================
[2026-06-13 09:14:35,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:14:35
[2026-06-13 09:14:36,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:14:36,183.183 INFO    ] Initializing speech engine...
[2026-06-13 09:14:36,189.189 INFO    ] 2026-06-13 09:14:36
[2026-06-13 09:14:36,393.393 INFO    ] 2026-06-13 09:14:36
[2026-06-13 09:14:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:14:36,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:14:36,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:14:36,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:14:36,779.779 INFO    ] time= 13/06/2026 09:14:36
[2026-06-13 09:14:36,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:14:36,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:14:36,904.904 INFO    ] No existing commands found in stream
[2026-06-13 09:14:41,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:14:41,916.916 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 09:14:44,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:14:44,439.439 INFO    ] Checking for system updates...
[2026-06-13 09:14:44,459.459 INFO    ] 200
[2026-06-13 09:14:44,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:44,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:44,497.497 INFO    ] No update needed
[2026-06-13 09:14:44,499.499 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:44,520.520 INFO    ] 200
[2026-06-13 09:14:44,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:44,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:44,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:44,585.585 INFO    ] No camera update needed
[2026-06-13 09:14:44,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:44,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:44,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:44,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:46,632.632 INFO    ] ================================================
[2026-06-13 09:14:46,647.647 INFO    ] Launching Daemon at Sat Jun 13 09:14:46 IST 2026
[2026-06-13 09:14:46,659.659 INFO    ] ================================================
[2026-06-13 09:14:46,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:14:46
[2026-06-13 09:14:47,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:14:47,431.431 INFO    ] Initializing speech engine...
[2026-06-13 09:14:47,438.438 INFO    ] 2026-06-13 09:14:47
[2026-06-13 09:14:47,664.664 INFO    ] 2026-06-13 09:14:47
[2026-06-13 09:14:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:14:47,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:14:47,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:14:47,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:14:48,045.045 INFO    ] time= 13/06/2026 09:14:48
[2026-06-13 09:14:48,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:14:48,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:14:48,230.230 INFO    ] No existing commands found in stream
[2026-06-13 09:14:53,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:14:53,242.242 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 09:14:57,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:14:57,451.451 INFO    ] Checking for system updates...
[2026-06-13 09:14:57,495.495 INFO    ] 200
[2026-06-13 09:14:57,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:57,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:14:57,548.548 INFO    ] No update needed
[2026-06-13 09:14:57,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 09:14:57,569.569 INFO    ] 200
[2026-06-13 09:14:57,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:14:57,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:14:57,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:14:57,620.620 INFO    ] No camera update needed
[2026-06-13 09:14:57,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:14:57,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:14:57,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:14:57,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:14:59,667.667 INFO    ] ================================================
[2026-06-13 09:14:59,683.683 INFO    ] Launching Daemon at Sat Jun 13 09:14:59 IST 2026
[2026-06-13 09:14:59,694.694 INFO    ] ================================================
[2026-06-13 09:15:00,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:00
[2026-06-13 09:15:00,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:00,485.485 INFO    ] Initializing speech engine...
[2026-06-13 09:15:00,489.489 INFO    ] 2026-06-13 09:15:00
[2026-06-13 09:15:00,688.688 INFO    ] 2026-06-13 09:15:00
[2026-06-13 09:15:00,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:00,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:00,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:00,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:00,975.975 INFO    ] time= 13/06/2026 09:15:00
[2026-06-13 09:15:00,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:00,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:01,086.086 INFO    ] No existing commands found in stream
[2026-06-13 09:15:06,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:06,124.124 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 09:15:07,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:15:07,390.390 INFO    ] Checking for system updates...
[2026-06-13 09:15:07,411.411 INFO    ] 200
[2026-06-13 09:15:07,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:07,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:07,454.454 INFO    ] No update needed
[2026-06-13 09:15:07,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 09:15:07,485.485 INFO    ] 200
[2026-06-13 09:15:07,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:07,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:15:07,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:07,559.559 INFO    ] No camera update needed
[2026-06-13 09:15:07,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:15:07,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:15:07,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:15:07,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:15:09,606.606 INFO    ] ================================================
[2026-06-13 09:15:09,622.622 INFO    ] Launching Daemon at Sat Jun 13 09:15:09 IST 2026
[2026-06-13 09:15:09,633.633 INFO    ] ================================================
[2026-06-13 09:15:09,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:09
[2026-06-13 09:15:10,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:10,447.447 INFO    ] Initializing speech engine...
[2026-06-13 09:15:10,457.457 INFO    ] 2026-06-13 09:15:10
[2026-06-13 09:15:10,685.685 INFO    ] 2026-06-13 09:15:10
[2026-06-13 09:15:10,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:10,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:10,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:11,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:11,069.069 INFO    ] time= 13/06/2026 09:15:11
[2026-06-13 09:15:11,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:11,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:11,257.257 INFO    ] No existing commands found in stream
[2026-06-13 09:15:16,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:16,269.269 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 09:15:19,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:15:19,720.720 INFO    ] Checking for system updates...
[2026-06-13 09:15:19,740.740 INFO    ] 200
[2026-06-13 09:15:19,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:19,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:15:19,774.774 INFO    ] No update needed
[2026-06-13 09:15:19,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 09:15:19,796.796 INFO    ] 200
[2026-06-13 09:15:19,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:19,825.825 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:15:19,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:15:19,878.878 INFO    ] No camera update needed
[2026-06-13 09:15:19,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:15:19,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:15:19,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:15:19,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:15:21,926.926 INFO    ] ================================================
[2026-06-13 09:15:21,944.944 INFO    ] Launching Daemon at Sat Jun 13 09:15:21 IST 2026
[2026-06-13 09:15:21,955.955 INFO    ] ================================================
[2026-06-13 09:15:22,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:22
[2026-06-13 09:15:22,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:22,728.728 INFO    ] Initializing speech engine...
[2026-06-13 09:15:22,742.742 INFO    ] 2026-06-13 09:15:22
[2026-06-13 09:15:22,948.948 INFO    ] 2026-06-13 09:15:22
[2026-06-13 09:15:22,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:23,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:23,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:23,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:23,358.358 INFO    ] time= 13/06/2026 09:15:23
[2026-06-13 09:15:23,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:23,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:23,462.462 INFO    ] No existing commands found in stream
[2026-06-13 09:15:28,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:28,474.474 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 09:15:30,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:15:30,683.683 INFO    ] Checking for system updates...
[2026-06-13 09:15:30,703.703 INFO    ] 200
[2026-06-13 09:15:30,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:30,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:30,737.737 INFO    ] No update needed
[2026-06-13 09:15:30,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 09:15:30,758.758 INFO    ] 200
[2026-06-13 09:15:30,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:30,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:15:30,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:30,826.826 INFO    ] No camera update needed
[2026-06-13 09:15:30,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:15:30,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:15:30,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:15:30,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:15:32,868.868 INFO    ] ================================================
[2026-06-13 09:15:32,878.878 INFO    ] Launching Daemon at Sat Jun 13 09:15:32 IST 2026
[2026-06-13 09:15:32,885.885 INFO    ] ================================================
[2026-06-13 09:15:33,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:33
[2026-06-13 09:15:33,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:33,667.667 INFO    ] Initializing speech engine...
[2026-06-13 09:15:33,671.671 INFO    ] 2026-06-13 09:15:33
[2026-06-13 09:15:33,867.867 INFO    ] 2026-06-13 09:15:33
[2026-06-13 09:15:33,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:34,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:34,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:34,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:34,130.130 INFO    ] time= 13/06/2026 09:15:34
[2026-06-13 09:15:34,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:34,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:34,218.218 INFO    ] No existing commands found in stream
[2026-06-13 09:15:39,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:39,247.247 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 09:15:40,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:15:40,331.331 INFO    ] Checking for system updates...
[2026-06-13 09:15:40,352.352 INFO    ] 200
[2026-06-13 09:15:40,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:40,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:40,387.387 INFO    ] No update needed
[2026-06-13 09:15:40,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 09:15:40,412.412 INFO    ] 200
[2026-06-13 09:15:40,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:40,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:15:40,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:15:40,472.472 INFO    ] No camera update needed
[2026-06-13 09:15:40,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:15:40,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:15:40,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:15:40,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:15:42,520.520 INFO    ] ================================================
[2026-06-13 09:15:42,535.535 INFO    ] Launching Daemon at Sat Jun 13 09:15:42 IST 2026
[2026-06-13 09:15:42,546.546 INFO    ] ================================================
[2026-06-13 09:15:42,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:42
[2026-06-13 09:15:43,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:43,357.357 INFO    ] Initializing speech engine...
[2026-06-13 09:15:43,362.362 INFO    ] 2026-06-13 09:15:43
[2026-06-13 09:15:43,565.565 INFO    ] 2026-06-13 09:15:43
[2026-06-13 09:15:43,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:43,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:43,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:43,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:43,983.983 INFO    ] time= 13/06/2026 09:15:43
[2026-06-13 09:15:44,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:44,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:44,080.080 INFO    ] No existing commands found in stream
[2026-06-13 09:15:49,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:49,092.092 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 09:15:51,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:15:51,188.188 INFO    ] Checking for system updates...
[2026-06-13 09:15:51,209.209 INFO    ] 200
[2026-06-13 09:15:51,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:51,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:51,244.244 INFO    ] No update needed
[2026-06-13 09:15:51,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 09:15:51,269.269 INFO    ] 200
[2026-06-13 09:15:51,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:15:51,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:15:51,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:15:51,332.332 INFO    ] No camera update needed
[2026-06-13 09:15:51,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:15:51,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:15:51,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:15:51,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:15:53,380.380 INFO    ] ================================================
[2026-06-13 09:15:53,396.396 INFO    ] Launching Daemon at Sat Jun 13 09:15:53 IST 2026
[2026-06-13 09:15:53,407.407 INFO    ] ================================================
[2026-06-13 09:15:53,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:15:53
[2026-06-13 09:15:54,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:15:54,207.207 INFO    ] Initializing speech engine...
[2026-06-13 09:15:54,215.215 INFO    ] 2026-06-13 09:15:54
[2026-06-13 09:15:54,431.431 INFO    ] 2026-06-13 09:15:54
[2026-06-13 09:15:54,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:15:54,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:15:54,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:15:54,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:15:54,857.857 INFO    ] time= 13/06/2026 09:15:54
[2026-06-13 09:15:54,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:15:54,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:15:54,954.954 INFO    ] No existing commands found in stream
[2026-06-13 09:15:59,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:15:59,968.968 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 09:16:00,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:16:00,764.764 INFO    ] Checking for system updates...
[2026-06-13 09:16:00,785.785 INFO    ] 200
[2026-06-13 09:16:00,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:00,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:00,818.818 INFO    ] No update needed
[2026-06-13 09:16:00,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:00,839.839 INFO    ] 200
[2026-06-13 09:16:00,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:00,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:00,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:00,900.900 INFO    ] No camera update needed
[2026-06-13 09:16:00,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:00,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:00,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:00,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:16:02,934.934 INFO    ] ================================================
[2026-06-13 09:16:02,943.943 INFO    ] Launching Daemon at Sat Jun 13 09:16:02 IST 2026
[2026-06-13 09:16:02,949.949 INFO    ] ================================================
[2026-06-13 09:16:03,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:16:03
[2026-06-13 09:16:03,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:16:03,914.914 INFO    ] Initializing speech engine...
[2026-06-13 09:16:03,929.929 INFO    ] 2026-06-13 09:16:03
[2026-06-13 09:16:04,212.212 INFO    ] 2026-06-13 09:16:04
[2026-06-13 09:16:04,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:16:04,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:16:04,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:16:04,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:16:04,665.665 INFO    ] time= 13/06/2026 09:16:04
[2026-06-13 09:16:04,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:16:04,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:16:04,895.895 INFO    ] No existing commands found in stream
[2026-06-13 09:16:09,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:16:09,926.926 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 09:16:12,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:16:12,611.611 INFO    ] Checking for system updates...
[2026-06-13 09:16:12,632.632 INFO    ] 200
[2026-06-13 09:16:12,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:12,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:16:12,669.669 INFO    ] No update needed
[2026-06-13 09:16:12,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:12,691.691 INFO    ] 200
[2026-06-13 09:16:12,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:12,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:12,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:16:12,870.870 INFO    ] No camera update needed
[2026-06-13 09:16:12,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:12,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:12,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:16:14,918.918 INFO    ] ================================================
[2026-06-13 09:16:14,934.934 INFO    ] Launching Daemon at Sat Jun 13 09:16:14 IST 2026
[2026-06-13 09:16:14,945.945 INFO    ] ================================================
[2026-06-13 09:16:15,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:16:15
[2026-06-13 09:16:15,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:16:15,809.809 INFO    ] Initializing speech engine...
[2026-06-13 09:16:15,815.815 INFO    ] 2026-06-13 09:16:15
[2026-06-13 09:16:16,021.021 INFO    ] 2026-06-13 09:16:16
[2026-06-13 09:16:16,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:16:16,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:16:16,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:16:16,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:16:16,438.438 INFO    ] time= 13/06/2026 09:16:16
[2026-06-13 09:16:16,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:16:16,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:16:16,538.538 INFO    ] No existing commands found in stream
[2026-06-13 09:16:21,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:16:21,554.554 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 09:16:22,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:16:22,584.584 INFO    ] Checking for system updates...
[2026-06-13 09:16:22,651.651 INFO    ] 200
[2026-06-13 09:16:22,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:22,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:22,724.724 INFO    ] No update needed
[2026-06-13 09:16:22,726.726 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:22,761.761 INFO    ] 200
[2026-06-13 09:16:22,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:22,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:22,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:22,851.851 INFO    ] No camera update needed
[2026-06-13 09:16:22,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:22,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:22,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:22,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:16:24,911.911 INFO    ] ================================================
[2026-06-13 09:16:24,927.927 INFO    ] Launching Daemon at Sat Jun 13 09:16:24 IST 2026
[2026-06-13 09:16:24,937.937 INFO    ] ================================================
[2026-06-13 09:16:25,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:16:25
[2026-06-13 09:16:25,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:16:25,756.756 INFO    ] Initializing speech engine...
[2026-06-13 09:16:25,764.764 INFO    ] 2026-06-13 09:16:25
[2026-06-13 09:16:25,973.973 INFO    ] 2026-06-13 09:16:25
[2026-06-13 09:16:26,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:16:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:16:26,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:16:26,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:16:26,393.393 INFO    ] time= 13/06/2026 09:16:26
[2026-06-13 09:16:26,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:16:26,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:16:26,504.504 INFO    ] No existing commands found in stream
[2026-06-13 09:16:31,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:16:31,516.516 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 09:16:35,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:16:35,655.655 INFO    ] Checking for system updates...
[2026-06-13 09:16:35,675.675 INFO    ] 200
[2026-06-13 09:16:35,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:35,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:35,708.708 INFO    ] No update needed
[2026-06-13 09:16:35,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:35,729.729 INFO    ] 200
[2026-06-13 09:16:35,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:35,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:35,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:35,792.792 INFO    ] No camera update needed
[2026-06-13 09:16:35,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:35,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:35,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:35,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:16:37,842.842 INFO    ] ================================================
[2026-06-13 09:16:37,857.857 INFO    ] Launching Daemon at Sat Jun 13 09:16:37 IST 2026
[2026-06-13 09:16:37,868.868 INFO    ] ================================================
[2026-06-13 09:16:38,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:16:38
[2026-06-13 09:16:38,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:16:38,658.658 INFO    ] Initializing speech engine...
[2026-06-13 09:16:38,663.663 INFO    ] 2026-06-13 09:16:38
[2026-06-13 09:16:38,878.878 INFO    ] 2026-06-13 09:16:38
[2026-06-13 09:16:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:16:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:16:39,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:16:39,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:16:39,300.300 INFO    ] time= 13/06/2026 09:16:39
[2026-06-13 09:16:39,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:16:39,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:16:39,453.453 INFO    ] No existing commands found in stream
[2026-06-13 09:16:44,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:16:44,467.467 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 09:16:46,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:16:46,521.521 INFO    ] Checking for system updates...
[2026-06-13 09:16:46,543.543 INFO    ] 200
[2026-06-13 09:16:46,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:46,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:46,578.578 INFO    ] No update needed
[2026-06-13 09:16:46,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:46,599.599 INFO    ] 200
[2026-06-13 09:16:46,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:46,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:46,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:46,662.662 INFO    ] No camera update needed
[2026-06-13 09:16:46,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:46,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:46,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:46,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:16:48,702.702 INFO    ] ================================================
[2026-06-13 09:16:48,712.712 INFO    ] Launching Daemon at Sat Jun 13 09:16:48 IST 2026
[2026-06-13 09:16:48,718.718 INFO    ] ================================================
[2026-06-13 09:16:49,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:16:49
[2026-06-13 09:16:49,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:16:50,150.150 INFO    ] Initializing speech engine...
[2026-06-13 09:16:50,156.156 INFO    ] 2026-06-13 09:16:50
[2026-06-13 09:16:50,416.416 INFO    ] 2026-06-13 09:16:50
[2026-06-13 09:16:50,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:16:50,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:16:50,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:16:50,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:16:50,856.856 INFO    ] time= 13/06/2026 09:16:50
[2026-06-13 09:16:50,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:16:50,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:16:51,087.087 INFO    ] No existing commands found in stream
[2026-06-13 09:16:56,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:16:56,120.120 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 09:16:58,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:16:58,713.713 INFO    ] Checking for system updates...
[2026-06-13 09:16:58,734.734 INFO    ] 200
[2026-06-13 09:16:58,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:58,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:58,770.770 INFO    ] No update needed
[2026-06-13 09:16:58,771.771 INFO    ] Checking for camera pi updates...
[2026-06-13 09:16:58,791.791 INFO    ] 200
[2026-06-13 09:16:58,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:16:58,815.815 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:16:58,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:16:58,859.859 INFO    ] No camera update needed
[2026-06-13 09:16:58,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:16:58,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:16:58,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:16:58,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:00,906.906 INFO    ] ================================================
[2026-06-13 09:17:00,921.921 INFO    ] Launching Daemon at Sat Jun 13 09:17:00 IST 2026
[2026-06-13 09:17:00,932.932 INFO    ] ================================================
[2026-06-13 09:17:01,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:01
[2026-06-13 09:17:01,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:01,960.960 INFO    ] Initializing speech engine...
[2026-06-13 09:17:01,984.984 INFO    ] 2026-06-13 09:17:01
[2026-06-13 09:17:02,277.277 INFO    ] 2026-06-13 09:17:02
[2026-06-13 09:17:02,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:02,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:02,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:02,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:02,750.750 INFO    ] time= 13/06/2026 09:17:02
[2026-06-13 09:17:02,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:02,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:02,831.831 INFO    ] No existing commands found in stream
[2026-06-13 09:17:07,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:17:07,845.845 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 09:17:08,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:17:08,278.278 INFO    ] Checking for system updates...
[2026-06-13 09:17:08,299.299 INFO    ] 200
[2026-06-13 09:17:08,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:08,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:08,332.332 INFO    ] No update needed
[2026-06-13 09:17:08,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 09:17:08,353.353 INFO    ] 200
[2026-06-13 09:17:08,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:08,379.379 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:17:08,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:08,421.421 INFO    ] No camera update needed
[2026-06-13 09:17:08,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:17:08,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:17:08,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:17:08,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:10,470.470 INFO    ] ================================================
[2026-06-13 09:17:10,485.485 INFO    ] Launching Daemon at Sat Jun 13 09:17:10 IST 2026
[2026-06-13 09:17:10,496.496 INFO    ] ================================================
[2026-06-13 09:17:10,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:10
[2026-06-13 09:17:11,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:11,618.618 INFO    ] Initializing speech engine...
[2026-06-13 09:17:11,629.629 INFO    ] 2026-06-13 09:17:11
[2026-06-13 09:17:11,942.942 INFO    ] 2026-06-13 09:17:11
[2026-06-13 09:17:12,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:12,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:12,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:12,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:12,372.372 INFO    ] time= 13/06/2026 09:17:12
[2026-06-13 09:17:12,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:12,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:12,588.588 INFO    ] No existing commands found in stream
[2026-06-13 09:17:17,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:17:17,619.619 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 09:17:21,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:17:21,445.445 INFO    ] Checking for system updates...
[2026-06-13 09:17:21,466.466 INFO    ] 200
[2026-06-13 09:17:21,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:21,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:17:21,499.499 INFO    ] No update needed
[2026-06-13 09:17:21,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 09:17:21,520.520 INFO    ] 200
[2026-06-13 09:17:21,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:21,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:17:21,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:17:21,589.589 INFO    ] No camera update needed
[2026-06-13 09:17:21,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:17:21,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:17:21,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:17:21,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:23,636.636 INFO    ] ================================================
[2026-06-13 09:17:23,652.652 INFO    ] Launching Daemon at Sat Jun 13 09:17:23 IST 2026
[2026-06-13 09:17:23,662.662 INFO    ] ================================================
[2026-06-13 09:17:24,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:24
[2026-06-13 09:17:24,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:24,449.449 INFO    ] Initializing speech engine...
[2026-06-13 09:17:24,462.462 INFO    ] 2026-06-13 09:17:24
[2026-06-13 09:17:24,671.671 INFO    ] 2026-06-13 09:17:24
[2026-06-13 09:17:24,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:24,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:24,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:24,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:24,924.924 INFO    ] time= 13/06/2026 09:17:24
[2026-06-13 09:17:24,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:24,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:25,118.118 INFO    ] No existing commands found in stream
[2026-06-13 09:17:30,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:17:30,139.139 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 09:17:32,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:17:32,029.029 INFO    ] Checking for system updates...
[2026-06-13 09:17:32,057.057 INFO    ] 200
[2026-06-13 09:17:32,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:32,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:32,094.094 INFO    ] No update needed
[2026-06-13 09:17:32,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 09:17:32,120.120 INFO    ] 200
[2026-06-13 09:17:32,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:32,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:17:32,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:32,209.209 INFO    ] No camera update needed
[2026-06-13 09:17:32,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:17:32,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:17:32,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:17:32,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:34,251.251 INFO    ] ================================================
[2026-06-13 09:17:34,267.267 INFO    ] Launching Daemon at Sat Jun 13 09:17:34 IST 2026
[2026-06-13 09:17:34,278.278 INFO    ] ================================================
[2026-06-13 09:17:34,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:34
[2026-06-13 09:17:34,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:35,065.065 INFO    ] Initializing speech engine...
[2026-06-13 09:17:35,070.070 INFO    ] 2026-06-13 09:17:35
[2026-06-13 09:17:35,274.274 INFO    ] 2026-06-13 09:17:35
[2026-06-13 09:17:35,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:35,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:35,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:35,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:35,683.683 INFO    ] time= 13/06/2026 09:17:35
[2026-06-13 09:17:35,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:35,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:35,832.832 INFO    ] No existing commands found in stream
[2026-06-13 09:17:40,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:17:40,853.853 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 09:17:42,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:17:42,872.872 INFO    ] Checking for system updates...
[2026-06-13 09:17:42,893.893 INFO    ] 200
[2026-06-13 09:17:42,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:42,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:17:42,926.926 INFO    ] No update needed
[2026-06-13 09:17:42,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 09:17:42,946.946 INFO    ] 200
[2026-06-13 09:17:42,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:42,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:17:43,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:17:43,011.011 INFO    ] No camera update needed
[2026-06-13 09:17:43,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:17:43,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:17:43,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:17:43,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:45,060.060 INFO    ] ================================================
[2026-06-13 09:17:45,081.081 INFO    ] Launching Daemon at Sat Jun 13 09:17:45 IST 2026
[2026-06-13 09:17:45,092.092 INFO    ] ================================================
[2026-06-13 09:17:45,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:45
[2026-06-13 09:17:45,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:45,923.923 INFO    ] Initializing speech engine...
[2026-06-13 09:17:45,933.933 INFO    ] 2026-06-13 09:17:45
[2026-06-13 09:17:46,139.139 INFO    ] 2026-06-13 09:17:46
[2026-06-13 09:17:46,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:46,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:46,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:46,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:46,534.534 INFO    ] time= 13/06/2026 09:17:46
[2026-06-13 09:17:46,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:46,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:46,655.655 INFO    ] No existing commands found in stream
[2026-06-13 09:17:51,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:17:51,666.666 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 09:17:52,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:17:52,118.118 INFO    ] Checking for system updates...
[2026-06-13 09:17:52,139.139 INFO    ] 200
[2026-06-13 09:17:52,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:52,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:52,172.172 INFO    ] No update needed
[2026-06-13 09:17:52,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 09:17:52,192.192 INFO    ] 200
[2026-06-13 09:17:52,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:17:52,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:17:52,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:17:52,258.258 INFO    ] No camera update needed
[2026-06-13 09:17:52,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:17:52,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:17:52,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:17:52,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:17:54,307.307 INFO    ] ================================================
[2026-06-13 09:17:54,323.323 INFO    ] Launching Daemon at Sat Jun 13 09:17:54 IST 2026
[2026-06-13 09:17:54,334.334 INFO    ] ================================================
[2026-06-13 09:17:54,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:17:54
[2026-06-13 09:17:54,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:17:55,114.114 INFO    ] Initializing speech engine...
[2026-06-13 09:17:55,119.119 INFO    ] 2026-06-13 09:17:55
[2026-06-13 09:17:55,345.345 INFO    ] 2026-06-13 09:17:55
[2026-06-13 09:17:55,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:17:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:17:55,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:17:55,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:17:55,764.764 INFO    ] time= 13/06/2026 09:17:55
[2026-06-13 09:17:55,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:17:55,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:17:55,895.895 INFO    ] No existing commands found in stream
[2026-06-13 09:18:00,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:18:00,912.912 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 09:18:03,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:18:03,258.258 INFO    ] Checking for system updates...
[2026-06-13 09:18:03,308.308 INFO    ] 200
[2026-06-13 09:18:03,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:03,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:03,398.398 INFO    ] No update needed
[2026-06-13 09:18:03,401.401 INFO    ] Checking for camera pi updates...
[2026-06-13 09:18:03,441.441 INFO    ] 200
[2026-06-13 09:18:03,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:03,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:18:03,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:03,551.551 INFO    ] No camera update needed
[2026-06-13 09:18:03,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:18:03,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:18:03,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:18:03,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:18:05,608.608 INFO    ] ================================================
[2026-06-13 09:18:05,623.623 INFO    ] Launching Daemon at Sat Jun 13 09:18:05 IST 2026
[2026-06-13 09:18:05,634.634 INFO    ] ================================================
[2026-06-13 09:18:05,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:18:05
[2026-06-13 09:18:06,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:18:06,451.451 INFO    ] Initializing speech engine...
[2026-06-13 09:18:06,456.456 INFO    ] 2026-06-13 09:18:06
[2026-06-13 09:18:06,665.665 INFO    ] 2026-06-13 09:18:06
[2026-06-13 09:18:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:18:06,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:18:06,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:18:07,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:18:07,074.074 INFO    ] time= 13/06/2026 09:18:07
[2026-06-13 09:18:07,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:18:07,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:18:07,185.185 INFO    ] No existing commands found in stream
[2026-06-13 09:18:12,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:18:12,198.198 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 09:18:15,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:18:15,509.509 INFO    ] Checking for system updates...
[2026-06-13 09:18:15,530.530 INFO    ] 200
[2026-06-13 09:18:15,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:15,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:15,563.563 INFO    ] No update needed
[2026-06-13 09:18:15,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 09:18:15,585.585 INFO    ] 200
[2026-06-13 09:18:15,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:15,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:18:15,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:18:15,757.757 INFO    ] No camera update needed
[2026-06-13 09:18:15,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:18:15,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:18:15,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:18:15,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:18:17,800.800 INFO    ] ================================================
[2026-06-13 09:18:17,815.815 INFO    ] Launching Daemon at Sat Jun 13 09:18:17 IST 2026
[2026-06-13 09:18:17,826.826 INFO    ] ================================================
[2026-06-13 09:18:18,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:18:18
[2026-06-13 09:18:18,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:18:18,826.826 INFO    ] Initializing speech engine...
[2026-06-13 09:18:18,845.845 INFO    ] 2026-06-13 09:18:18
[2026-06-13 09:18:19,100.100 INFO    ] 2026-06-13 09:18:19
[2026-06-13 09:18:19,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:18:19,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:18:19,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:18:19,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:18:19,546.546 INFO    ] time= 13/06/2026 09:18:19
[2026-06-13 09:18:19,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:18:19,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:18:19,729.729 INFO    ] No existing commands found in stream
[2026-06-13 09:18:24,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:18:24,743.743 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 09:18:27,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:18:27,457.457 INFO    ] Checking for system updates...
[2026-06-13 09:18:27,477.477 INFO    ] 200
[2026-06-13 09:18:27,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:27,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:18:27,510.510 INFO    ] No update needed
[2026-06-13 09:18:27,512.512 INFO    ] Checking for camera pi updates...
[2026-06-13 09:18:27,531.531 INFO    ] 200
[2026-06-13 09:18:27,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:27,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:18:27,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:18:27,598.598 INFO    ] No camera update needed
[2026-06-13 09:18:27,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:18:27,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:18:27,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:18:27,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:18:29,643.643 INFO    ] ================================================
[2026-06-13 09:18:29,659.659 INFO    ] Launching Daemon at Sat Jun 13 09:18:29 IST 2026
[2026-06-13 09:18:29,670.670 INFO    ] ================================================
[2026-06-13 09:18:30,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:18:30
[2026-06-13 09:18:30,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:18:30,514.514 INFO    ] Initializing speech engine...
[2026-06-13 09:18:30,519.519 INFO    ] 2026-06-13 09:18:30
[2026-06-13 09:18:30,727.727 INFO    ] 2026-06-13 09:18:30
[2026-06-13 09:18:30,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:18:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:18:30,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:18:31,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:18:31,139.139 INFO    ] time= 13/06/2026 09:18:31
[2026-06-13 09:18:31,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:18:31,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:18:31,245.245 INFO    ] No existing commands found in stream
[2026-06-13 09:18:36,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:18:36,258.258 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 09:18:39,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:18:39,199.199 INFO    ] Checking for system updates...
[2026-06-13 09:18:39,220.220 INFO    ] 200
[2026-06-13 09:18:39,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:39,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:39,255.255 INFO    ] No update needed
[2026-06-13 09:18:39,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 09:18:39,280.280 INFO    ] 200
[2026-06-13 09:18:39,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:39,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:18:39,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:39,349.349 INFO    ] No camera update needed
[2026-06-13 09:18:39,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:18:39,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:18:39,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:18:39,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:18:41,397.397 INFO    ] ================================================
[2026-06-13 09:18:41,413.413 INFO    ] Launching Daemon at Sat Jun 13 09:18:41 IST 2026
[2026-06-13 09:18:41,424.424 INFO    ] ================================================
[2026-06-13 09:18:41,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:18:41
[2026-06-13 09:18:42,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:18:42,233.233 INFO    ] Initializing speech engine...
[2026-06-13 09:18:42,238.238 INFO    ] 2026-06-13 09:18:42
[2026-06-13 09:18:42,446.446 INFO    ] 2026-06-13 09:18:42
[2026-06-13 09:18:42,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:18:42,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:18:42,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:18:42,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:18:42,800.800 INFO    ] time= 13/06/2026 09:18:42
[2026-06-13 09:18:42,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:18:42,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:18:42,972.972 INFO    ] No existing commands found in stream
[2026-06-13 09:18:47,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:18:47,986.986 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 09:18:51,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:18:51,781.781 INFO    ] Checking for system updates...
[2026-06-13 09:18:51,802.802 INFO    ] 200
[2026-06-13 09:18:51,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:51,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:51,835.835 INFO    ] No update needed
[2026-06-13 09:18:51,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 09:18:51,856.856 INFO    ] 200
[2026-06-13 09:18:51,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:18:51,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:18:51,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:18:51,919.919 INFO    ] No camera update needed
[2026-06-13 09:18:51,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:18:51,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:18:51,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:18:51,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:18:53,965.965 INFO    ] ================================================
[2026-06-13 09:18:53,980.980 INFO    ] Launching Daemon at Sat Jun 13 09:18:53 IST 2026
[2026-06-13 09:18:53,991.991 INFO    ] ================================================
[2026-06-13 09:18:54,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:18:54
[2026-06-13 09:18:54,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:18:54,773.773 INFO    ] Initializing speech engine...
[2026-06-13 09:18:54,782.782 INFO    ] 2026-06-13 09:18:54
[2026-06-13 09:18:55,004.004 INFO    ] 2026-06-13 09:18:54
[2026-06-13 09:18:55,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:18:55,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:18:55,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:18:55,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:18:55,376.376 INFO    ] time= 13/06/2026 09:18:55
[2026-06-13 09:18:55,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:18:55,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:18:55,555.555 INFO    ] No existing commands found in stream
[2026-06-13 09:19:00,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:00,569.569 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 09:19:01,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:19:01,972.972 INFO    ] Checking for system updates...
[2026-06-13 09:19:02,011.011 INFO    ] 200
[2026-06-13 09:19:02,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:02,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:02,062.062 INFO    ] No update needed
[2026-06-13 09:19:02,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:02,087.087 INFO    ] 200
[2026-06-13 09:19:02,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:02,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:02,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:02,180.180 INFO    ] No camera update needed
[2026-06-13 09:19:02,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:02,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:02,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:02,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:19:04,232.232 INFO    ] ================================================
[2026-06-13 09:19:04,247.247 INFO    ] Launching Daemon at Sat Jun 13 09:19:04 IST 2026
[2026-06-13 09:19:04,258.258 INFO    ] ================================================
[2026-06-13 09:19:04,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:19:04
[2026-06-13 09:19:04,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:19:05,100.100 INFO    ] Initializing speech engine...
[2026-06-13 09:19:05,112.112 INFO    ] 2026-06-13 09:19:05
[2026-06-13 09:19:05,323.323 INFO    ] 2026-06-13 09:19:05
[2026-06-13 09:19:05,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:19:05,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:19:05,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:19:05,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:19:05,724.724 INFO    ] time= 13/06/2026 09:19:05
[2026-06-13 09:19:05,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:19:05,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:19:05,838.838 INFO    ] No existing commands found in stream
[2026-06-13 09:19:10,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:10,856.856 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 09:19:14,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:19:14,184.184 INFO    ] Checking for system updates...
[2026-06-13 09:19:14,205.205 INFO    ] 200
[2026-06-13 09:19:14,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:14,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:14,238.238 INFO    ] No update needed
[2026-06-13 09:19:14,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:14,260.260 INFO    ] 200
[2026-06-13 09:19:14,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:14,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:14,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:14,326.326 INFO    ] No camera update needed
[2026-06-13 09:19:14,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:14,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:14,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:14,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:19:16,375.375 INFO    ] ================================================
[2026-06-13 09:19:16,391.391 INFO    ] Launching Daemon at Sat Jun 13 09:19:16 IST 2026
[2026-06-13 09:19:16,401.401 INFO    ] ================================================
[2026-06-13 09:19:16,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:19:16
[2026-06-13 09:19:17,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:19:17,192.192 INFO    ] Initializing speech engine...
[2026-06-13 09:19:17,197.197 INFO    ] 2026-06-13 09:19:17
[2026-06-13 09:19:17,400.400 INFO    ] 2026-06-13 09:19:17
[2026-06-13 09:19:17,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:19:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:19:17,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:19:17,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:19:17,809.809 INFO    ] time= 13/06/2026 09:19:17
[2026-06-13 09:19:17,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:19:17,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:19:17,918.918 INFO    ] No existing commands found in stream
[2026-06-13 09:19:22,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:22,932.932 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 09:19:23,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:19:23,326.326 INFO    ] Checking for system updates...
[2026-06-13 09:19:23,347.347 INFO    ] 200
[2026-06-13 09:19:23,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:23,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:19:23,380.380 INFO    ] No update needed
[2026-06-13 09:19:23,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:23,403.403 INFO    ] 200
[2026-06-13 09:19:23,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:23,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:23,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:19:23,466.466 INFO    ] No camera update needed
[2026-06-13 09:19:23,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:23,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:23,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:23,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:19:25,514.514 INFO    ] ================================================
[2026-06-13 09:19:25,530.530 INFO    ] Launching Daemon at Sat Jun 13 09:19:25 IST 2026
[2026-06-13 09:19:25,541.541 INFO    ] ================================================
[2026-06-13 09:19:25,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:19:25
[2026-06-13 09:19:26,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:19:26,373.373 INFO    ] Initializing speech engine...
[2026-06-13 09:19:26,378.378 INFO    ] 2026-06-13 09:19:26
[2026-06-13 09:19:26,584.584 INFO    ] 2026-06-13 09:19:26
[2026-06-13 09:19:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:19:26,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:19:26,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:19:26,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:19:26,984.984 INFO    ] time= 13/06/2026 09:19:26
[2026-06-13 09:19:27,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:19:27,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:19:27,107.107 INFO    ] No existing commands found in stream
[2026-06-13 09:19:32,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:32,117.117 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 09:19:36,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:19:36,399.399 INFO    ] Checking for system updates...
[2026-06-13 09:19:36,435.435 INFO    ] 200
[2026-06-13 09:19:36,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:36,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:19:36,495.495 INFO    ] No update needed
[2026-06-13 09:19:36,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:36,538.538 INFO    ] 200
[2026-06-13 09:19:36,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:36,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:36,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:19:36,616.616 INFO    ] No camera update needed
[2026-06-13 09:19:36,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:36,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:36,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:36,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:19:38,662.662 INFO    ] ================================================
[2026-06-13 09:19:38,677.677 INFO    ] Launching Daemon at Sat Jun 13 09:19:38 IST 2026
[2026-06-13 09:19:38,688.688 INFO    ] ================================================
[2026-06-13 09:19:39,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:19:39
[2026-06-13 09:19:39,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:19:39,478.478 INFO    ] Initializing speech engine...
[2026-06-13 09:19:39,483.483 INFO    ] 2026-06-13 09:19:39
[2026-06-13 09:19:39,687.687 INFO    ] 2026-06-13 09:19:39
[2026-06-13 09:19:39,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:19:39,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:19:39,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:19:40,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:19:40,084.084 INFO    ] time= 13/06/2026 09:19:40
[2026-06-13 09:19:40,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:19:40,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:19:40,200.200 INFO    ] No existing commands found in stream
[2026-06-13 09:19:45,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:45,212.212 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 09:19:47,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:19:47,456.456 INFO    ] Checking for system updates...
[2026-06-13 09:19:47,478.478 INFO    ] 200
[2026-06-13 09:19:47,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:47,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:47,511.511 INFO    ] No update needed
[2026-06-13 09:19:47,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:47,533.533 INFO    ] 200
[2026-06-13 09:19:47,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:47,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:47,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:47,595.595 INFO    ] No camera update needed
[2026-06-13 09:19:47,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:47,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:47,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:47,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:19:49,644.644 INFO    ] ================================================
[2026-06-13 09:19:49,659.659 INFO    ] Launching Daemon at Sat Jun 13 09:19:49 IST 2026
[2026-06-13 09:19:49,671.671 INFO    ] ================================================
[2026-06-13 09:19:50,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:19:50
[2026-06-13 09:19:50,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:19:50,455.455 INFO    ] Initializing speech engine...
[2026-06-13 09:19:50,458.458 INFO    ] 2026-06-13 09:19:50
[2026-06-13 09:19:50,675.675 INFO    ] 2026-06-13 09:19:50
[2026-06-13 09:19:50,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:19:50,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:19:50,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:19:51,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:19:51,089.089 INFO    ] time= 13/06/2026 09:19:51
[2026-06-13 09:19:51,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:19:51,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:19:51,190.190 INFO    ] No existing commands found in stream
[2026-06-13 09:19:56,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:19:56,206.206 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 09:19:59,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:19:59,256.256 INFO    ] Checking for system updates...
[2026-06-13 09:19:59,277.277 INFO    ] 200
[2026-06-13 09:19:59,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:59,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:59,310.310 INFO    ] No update needed
[2026-06-13 09:19:59,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 09:19:59,332.332 INFO    ] 200
[2026-06-13 09:19:59,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:19:59,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:19:59,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:19:59,396.396 INFO    ] No camera update needed
[2026-06-13 09:19:59,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:19:59,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:19:59,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:19:59,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:01,447.447 INFO    ] ================================================
[2026-06-13 09:20:01,462.462 INFO    ] Launching Daemon at Sat Jun 13 09:20:01 IST 2026
[2026-06-13 09:20:01,473.473 INFO    ] ================================================
[2026-06-13 09:20:02,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:02
[2026-06-13 09:20:02,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:03,201.201 INFO    ] Initializing speech engine...
[2026-06-13 09:20:03,206.206 INFO    ] 2026-06-13 09:20:03
[2026-06-13 09:20:03,468.468 INFO    ] 2026-06-13 09:20:03
[2026-06-13 09:20:03,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:03,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:03,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:03,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:03,834.834 INFO    ] time= 13/06/2026 09:20:03
[2026-06-13 09:20:03,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:03,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:04,010.010 INFO    ] No existing commands found in stream
[2026-06-13 09:20:09,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:20:09,023.023 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 09:20:10,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:20:10,910.910 INFO    ] Checking for system updates...
[2026-06-13 09:20:10,931.931 INFO    ] 200
[2026-06-13 09:20:10,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:10,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:20:10,970.970 INFO    ] No update needed
[2026-06-13 09:20:10,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 09:20:10,992.992 INFO    ] 200
[2026-06-13 09:20:10,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:11,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:20:11,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:20:11,083.083 INFO    ] No camera update needed
[2026-06-13 09:20:11,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:20:11,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:20:11,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:20:11,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:13,135.135 INFO    ] ================================================
[2026-06-13 09:20:13,150.150 INFO    ] Launching Daemon at Sat Jun 13 09:20:13 IST 2026
[2026-06-13 09:20:13,162.162 INFO    ] ================================================
[2026-06-13 09:20:13,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:13
[2026-06-13 09:20:14,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:14,462.462 INFO    ] Initializing speech engine...
[2026-06-13 09:20:14,468.468 INFO    ] 2026-06-13 09:20:14
[2026-06-13 09:20:14,695.695 INFO    ] 2026-06-13 09:20:14
[2026-06-13 09:20:14,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:14,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:14,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:15,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:15,107.107 INFO    ] time= 13/06/2026 09:20:15
[2026-06-13 09:20:15,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:15,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:15,258.258 INFO    ] No existing commands found in stream
[2026-06-13 09:20:20,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:20:20,272.272 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 09:20:22,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:20:22,026.026 INFO    ] Checking for system updates...
[2026-06-13 09:20:22,047.047 INFO    ] 200
[2026-06-13 09:20:22,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:22,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:22,081.081 INFO    ] No update needed
[2026-06-13 09:20:22,083.083 INFO    ] Checking for camera pi updates...
[2026-06-13 09:20:22,116.116 INFO    ] 200
[2026-06-13 09:20:22,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:22,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:20:22,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:22,313.313 INFO    ] No camera update needed
[2026-06-13 09:20:22,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:20:22,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:20:22,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:20:22,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:24,370.370 INFO    ] ================================================
[2026-06-13 09:20:24,386.386 INFO    ] Launching Daemon at Sat Jun 13 09:20:24 IST 2026
[2026-06-13 09:20:24,397.397 INFO    ] ================================================
[2026-06-13 09:20:25,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:25
[2026-06-13 09:20:25,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:25,605.605 INFO    ] Initializing speech engine...
[2026-06-13 09:20:25,610.610 INFO    ] 2026-06-13 09:20:25
[2026-06-13 09:20:25,817.817 INFO    ] 2026-06-13 09:20:25
[2026-06-13 09:20:25,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:25,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:26,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:26,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:26,236.236 INFO    ] time= 13/06/2026 09:20:26
[2026-06-13 09:20:26,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:26,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:26,336.336 INFO    ] No existing commands found in stream
[2026-06-13 09:20:31,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:20:31,350.350 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 09:20:34,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:20:34,199.199 INFO    ] Checking for system updates...
[2026-06-13 09:20:34,220.220 INFO    ] 200
[2026-06-13 09:20:34,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:34,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:34,257.257 INFO    ] No update needed
[2026-06-13 09:20:34,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 09:20:34,279.279 INFO    ] 200
[2026-06-13 09:20:34,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:34,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:20:34,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:34,344.344 INFO    ] No camera update needed
[2026-06-13 09:20:34,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:20:34,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:20:34,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:20:34,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:36,392.392 INFO    ] ================================================
[2026-06-13 09:20:36,408.408 INFO    ] Launching Daemon at Sat Jun 13 09:20:36 IST 2026
[2026-06-13 09:20:36,419.419 INFO    ] ================================================
[2026-06-13 09:20:36,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:36
[2026-06-13 09:20:37,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:37,212.212 INFO    ] Initializing speech engine...
[2026-06-13 09:20:37,217.217 INFO    ] 2026-06-13 09:20:37
[2026-06-13 09:20:37,443.443 INFO    ] 2026-06-13 09:20:37
[2026-06-13 09:20:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:37,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:37,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:37,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:37,857.857 INFO    ] time= 13/06/2026 09:20:37
[2026-06-13 09:20:37,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:37,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:37,991.991 INFO    ] No existing commands found in stream
[2026-06-13 09:20:43,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:20:43,005.005 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 09:20:43,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:20:43,690.690 INFO    ] Checking for system updates...
[2026-06-13 09:20:43,711.711 INFO    ] 200
[2026-06-13 09:20:43,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:43,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:43,744.744 INFO    ] No update needed
[2026-06-13 09:20:43,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 09:20:43,764.764 INFO    ] 200
[2026-06-13 09:20:43,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:43,789.789 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:20:43,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:43,825.825 INFO    ] No camera update needed
[2026-06-13 09:20:43,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:20:43,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:20:43,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:20:43,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:45,873.873 INFO    ] ================================================
[2026-06-13 09:20:45,889.889 INFO    ] Launching Daemon at Sat Jun 13 09:20:45 IST 2026
[2026-06-13 09:20:45,901.901 INFO    ] ================================================
[2026-06-13 09:20:46,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:46
[2026-06-13 09:20:46,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:46,719.719 INFO    ] Initializing speech engine...
[2026-06-13 09:20:46,724.724 INFO    ] 2026-06-13 09:20:46
[2026-06-13 09:20:46,936.936 INFO    ] 2026-06-13 09:20:46
[2026-06-13 09:20:46,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:47,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:47,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:47,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:47,360.360 INFO    ] time= 13/06/2026 09:20:47
[2026-06-13 09:20:47,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:47,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:47,483.483 INFO    ] No existing commands found in stream
[2026-06-13 09:20:52,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:20:52,497.497 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 09:20:54,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:20:54,206.206 INFO    ] Checking for system updates...
[2026-06-13 09:20:54,226.226 INFO    ] 200
[2026-06-13 09:20:54,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:54,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:54,260.260 INFO    ] No update needed
[2026-06-13 09:20:54,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 09:20:54,281.281 INFO    ] 200
[2026-06-13 09:20:54,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:20:54,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:20:54,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:20:54,351.351 INFO    ] No camera update needed
[2026-06-13 09:20:54,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:20:54,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:20:54,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:20:54,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:20:56,398.398 INFO    ] ================================================
[2026-06-13 09:20:56,414.414 INFO    ] Launching Daemon at Sat Jun 13 09:20:56 IST 2026
[2026-06-13 09:20:56,424.424 INFO    ] ================================================
[2026-06-13 09:20:56,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:20:56
[2026-06-13 09:20:57,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:20:57,252.252 INFO    ] Initializing speech engine...
[2026-06-13 09:20:57,256.256 INFO    ] 2026-06-13 09:20:57
[2026-06-13 09:20:57,459.459 INFO    ] 2026-06-13 09:20:57
[2026-06-13 09:20:57,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:20:57,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:20:57,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:20:57,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:20:57,847.847 INFO    ] time= 13/06/2026 09:20:57
[2026-06-13 09:20:57,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:20:57,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:20:57,973.973 INFO    ] No existing commands found in stream
[2026-06-13 09:21:02,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:02,987.987 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 09:21:06,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:21:06,190.190 INFO    ] Checking for system updates...
[2026-06-13 09:21:06,211.211 INFO    ] 200
[2026-06-13 09:21:06,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:06,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:06,244.244 INFO    ] No update needed
[2026-06-13 09:21:06,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:06,267.267 INFO    ] 200
[2026-06-13 09:21:06,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:06,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:06,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:06,331.331 INFO    ] No camera update needed
[2026-06-13 09:21:06,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:06,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:06,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:06,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:21:08,380.380 INFO    ] ================================================
[2026-06-13 09:21:08,396.396 INFO    ] Launching Daemon at Sat Jun 13 09:21:08 IST 2026
[2026-06-13 09:21:08,407.407 INFO    ] ================================================
[2026-06-13 09:21:09,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:21:09
[2026-06-13 09:21:09,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:21:09,741.741 INFO    ] Initializing speech engine...
[2026-06-13 09:21:09,751.751 INFO    ] 2026-06-13 09:21:09
[2026-06-13 09:21:09,960.960 INFO    ] 2026-06-13 09:21:09
[2026-06-13 09:21:09,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:21:10,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:21:10,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:21:10,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:21:10,371.371 INFO    ] time= 13/06/2026 09:21:10
[2026-06-13 09:21:10,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:21:10,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:21:10,477.477 INFO    ] No existing commands found in stream
[2026-06-13 09:21:15,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:15,491.491 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 09:21:18,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:21:18,426.426 INFO    ] Checking for system updates...
[2026-06-13 09:21:18,447.447 INFO    ] 200
[2026-06-13 09:21:18,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:18,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:18,483.483 INFO    ] No update needed
[2026-06-13 09:21:18,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:18,504.504 INFO    ] 200
[2026-06-13 09:21:18,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:18,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:18,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:18,579.579 INFO    ] No camera update needed
[2026-06-13 09:21:18,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:18,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:18,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:18,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:21:20,628.628 INFO    ] ================================================
[2026-06-13 09:21:20,644.644 INFO    ] Launching Daemon at Sat Jun 13 09:21:20 IST 2026
[2026-06-13 09:21:20,656.656 INFO    ] ================================================
[2026-06-13 09:21:20,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:21:20
[2026-06-13 09:21:21,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:21:21,453.453 INFO    ] Initializing speech engine...
[2026-06-13 09:21:21,459.459 INFO    ] 2026-06-13 09:21:21
[2026-06-13 09:21:21,662.662 INFO    ] 2026-06-13 09:21:21
[2026-06-13 09:21:21,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:21:21,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:21:21,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:21:22,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:21:22,073.073 INFO    ] time= 13/06/2026 09:21:22
[2026-06-13 09:21:22,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:21:22,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:21:22,177.177 INFO    ] No existing commands found in stream
[2026-06-13 09:21:27,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:27,191.191 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 09:21:27,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:21:27,691.691 INFO    ] Checking for system updates...
[2026-06-13 09:21:27,711.711 INFO    ] 200
[2026-06-13 09:21:27,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:27,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:27,744.744 INFO    ] No update needed
[2026-06-13 09:21:27,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:27,768.768 INFO    ] 200
[2026-06-13 09:21:27,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:27,793.793 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:27,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:27,830.830 INFO    ] No camera update needed
[2026-06-13 09:21:27,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:27,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:27,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:27,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:21:29,877.877 INFO    ] ================================================
[2026-06-13 09:21:29,893.893 INFO    ] Launching Daemon at Sat Jun 13 09:21:29 IST 2026
[2026-06-13 09:21:29,904.904 INFO    ] ================================================
[2026-06-13 09:21:30,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:21:30
[2026-06-13 09:21:30,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:21:30,696.696 INFO    ] Initializing speech engine...
[2026-06-13 09:21:30,709.709 INFO    ] 2026-06-13 09:21:30
[2026-06-13 09:21:30,926.926 INFO    ] 2026-06-13 09:21:30
[2026-06-13 09:21:30,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:21:31,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:21:31,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:21:31,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:21:31,344.344 INFO    ] time= 13/06/2026 09:21:31
[2026-06-13 09:21:31,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:21:31,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:21:31,480.480 INFO    ] No existing commands found in stream
[2026-06-13 09:21:36,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:36,493.493 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 09:21:37,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:21:37,032.032 INFO    ] Checking for system updates...
[2026-06-13 09:21:37,054.054 INFO    ] 200
[2026-06-13 09:21:37,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:37,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:37,087.087 INFO    ] No update needed
[2026-06-13 09:21:37,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:37,108.108 INFO    ] 200
[2026-06-13 09:21:37,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:37,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:37,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:37,176.176 INFO    ] No camera update needed
[2026-06-13 09:21:37,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:37,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:37,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:37,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:21:39,225.225 INFO    ] ================================================
[2026-06-13 09:21:39,240.240 INFO    ] Launching Daemon at Sat Jun 13 09:21:39 IST 2026
[2026-06-13 09:21:39,251.251 INFO    ] ================================================
[2026-06-13 09:21:39,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:21:39
[2026-06-13 09:21:39,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:21:40,041.041 INFO    ] Initializing speech engine...
[2026-06-13 09:21:40,049.049 INFO    ] 2026-06-13 09:21:40
[2026-06-13 09:21:40,267.267 INFO    ] 2026-06-13 09:21:40
[2026-06-13 09:21:40,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:21:40,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:21:40,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:21:40,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:21:40,769.769 INFO    ] time= 13/06/2026 09:21:40
[2026-06-13 09:21:40,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:21:40,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:21:40,988.988 INFO    ] No existing commands found in stream
[2026-06-13 09:21:46,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:46,017.017 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 09:21:48,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:21:48,266.266 INFO    ] Checking for system updates...
[2026-06-13 09:21:48,289.289 INFO    ] 200
[2026-06-13 09:21:48,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:48,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:48,329.329 INFO    ] No update needed
[2026-06-13 09:21:48,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:48,359.359 INFO    ] 200
[2026-06-13 09:21:48,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:48,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:48,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:21:48,430.430 INFO    ] No camera update needed
[2026-06-13 09:21:48,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:48,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:48,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:21:50,471.471 INFO    ] ================================================
[2026-06-13 09:21:50,486.486 INFO    ] Launching Daemon at Sat Jun 13 09:21:50 IST 2026
[2026-06-13 09:21:50,497.497 INFO    ] ================================================
[2026-06-13 09:21:50,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:21:50
[2026-06-13 09:21:51,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:21:51,267.267 INFO    ] Initializing speech engine...
[2026-06-13 09:21:51,280.280 INFO    ] 2026-06-13 09:21:51
[2026-06-13 09:21:51,486.486 INFO    ] 2026-06-13 09:21:51
[2026-06-13 09:21:51,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:21:51,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:21:51,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:21:51,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:21:51,893.893 INFO    ] time= 13/06/2026 09:21:51
[2026-06-13 09:21:51,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:21:51,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:21:52,010.010 INFO    ] No existing commands found in stream
[2026-06-13 09:21:57,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:21:57,023.023 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 09:21:59,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:21:59,380.380 INFO    ] Checking for system updates...
[2026-06-13 09:21:59,411.411 INFO    ] 200
[2026-06-13 09:21:59,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:59,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:59,447.447 INFO    ] No update needed
[2026-06-13 09:21:59,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 09:21:59,467.467 INFO    ] 200
[2026-06-13 09:21:59,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:21:59,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:21:59,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:21:59,536.536 INFO    ] No camera update needed
[2026-06-13 09:21:59,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:21:59,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:21:59,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:21:59,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:01,595.595 INFO    ] ================================================
[2026-06-13 09:22:01,622.622 INFO    ] Launching Daemon at Sat Jun 13 09:22:01 IST 2026
[2026-06-13 09:22:01,647.647 INFO    ] ================================================
[2026-06-13 09:22:02,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:02
[2026-06-13 09:22:02,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:02,669.669 INFO    ] Initializing speech engine...
[2026-06-13 09:22:02,682.682 INFO    ] 2026-06-13 09:22:02
[2026-06-13 09:22:02,875.875 INFO    ] 2026-06-13 09:22:02
[2026-06-13 09:22:02,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:03,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:03,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:03,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:03,313.313 INFO    ] time= 13/06/2026 09:22:03
[2026-06-13 09:22:03,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:03,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:03,498.498 INFO    ] No existing commands found in stream
[2026-06-13 09:22:08,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:22:08,513.513 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 09:22:09,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:22:09,697.697 INFO    ] Checking for system updates...
[2026-06-13 09:22:09,718.718 INFO    ] 200
[2026-06-13 09:22:09,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:09,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:09,751.751 INFO    ] No update needed
[2026-06-13 09:22:09,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 09:22:09,772.772 INFO    ] 200
[2026-06-13 09:22:09,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:09,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:22:09,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:09,837.837 INFO    ] No camera update needed
[2026-06-13 09:22:09,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:22:09,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:22:09,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:22:09,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:11,883.883 INFO    ] ================================================
[2026-06-13 09:22:11,897.897 INFO    ] Launching Daemon at Sat Jun 13 09:22:11 IST 2026
[2026-06-13 09:22:11,908.908 INFO    ] ================================================
[2026-06-13 09:22:12,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:12
[2026-06-13 09:22:12,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:12,726.726 INFO    ] Initializing speech engine...
[2026-06-13 09:22:12,731.731 INFO    ] 2026-06-13 09:22:12
[2026-06-13 09:22:12,917.917 INFO    ] 2026-06-13 09:22:12
[2026-06-13 09:22:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:13,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:13,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:13,323.323 INFO    ] time= 13/06/2026 09:22:13
[2026-06-13 09:22:13,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:13,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:13,502.502 INFO    ] No existing commands found in stream
[2026-06-13 09:22:18,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:22:18,515.515 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 09:22:19,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:22:19,570.570 INFO    ] Checking for system updates...
[2026-06-13 09:22:19,592.592 INFO    ] 200
[2026-06-13 09:22:19,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:19,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:22:19,627.627 INFO    ] No update needed
[2026-06-13 09:22:19,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 09:22:19,650.650 INFO    ] 200
[2026-06-13 09:22:19,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:19,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:22:19,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:22:19,732.732 INFO    ] No camera update needed
[2026-06-13 09:22:19,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:22:19,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:22:19,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:22:19,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:21,781.781 INFO    ] ================================================
[2026-06-13 09:22:21,796.796 INFO    ] Launching Daemon at Sat Jun 13 09:22:21 IST 2026
[2026-06-13 09:22:21,806.806 INFO    ] ================================================
[2026-06-13 09:22:22,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:22
[2026-06-13 09:22:22,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:22,642.642 INFO    ] Initializing speech engine...
[2026-06-13 09:22:22,647.647 INFO    ] 2026-06-13 09:22:22
[2026-06-13 09:22:22,853.853 INFO    ] 2026-06-13 09:22:22
[2026-06-13 09:22:22,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:23,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:23,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:23,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:23,265.265 INFO    ] time= 13/06/2026 09:22:23
[2026-06-13 09:22:23,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:23,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:23,376.376 INFO    ] No existing commands found in stream
[2026-06-13 09:22:28,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:22:28,390.390 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 09:22:32,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:22:32,013.013 INFO    ] Checking for system updates...
[2026-06-13 09:22:32,039.039 INFO    ] 200
[2026-06-13 09:22:32,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:32,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:32,085.085 INFO    ] No update needed
[2026-06-13 09:22:32,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 09:22:32,110.110 INFO    ] 200
[2026-06-13 09:22:32,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:32,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:22:32,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:32,268.268 INFO    ] No camera update needed
[2026-06-13 09:22:32,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:22:32,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:22:32,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:22:32,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:34,309.309 INFO    ] ================================================
[2026-06-13 09:22:34,325.325 INFO    ] Launching Daemon at Sat Jun 13 09:22:34 IST 2026
[2026-06-13 09:22:34,336.336 INFO    ] ================================================
[2026-06-13 09:22:34,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:34
[2026-06-13 09:22:35,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:35,178.178 INFO    ] Initializing speech engine...
[2026-06-13 09:22:35,182.182 INFO    ] 2026-06-13 09:22:35
[2026-06-13 09:22:35,404.404 INFO    ] 2026-06-13 09:22:35
[2026-06-13 09:22:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:35,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:35,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:35,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:35,823.823 INFO    ] time= 13/06/2026 09:22:35
[2026-06-13 09:22:35,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:35,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:35,931.931 INFO    ] No existing commands found in stream
[2026-06-13 09:22:40,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:22:40,945.945 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 09:22:41,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:22:41,918.918 INFO    ] Checking for system updates...
[2026-06-13 09:22:41,940.940 INFO    ] 200
[2026-06-13 09:22:41,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:41,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:41,974.974 INFO    ] No update needed
[2026-06-13 09:22:41,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 09:22:41,995.995 INFO    ] 200
[2026-06-13 09:22:41,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:42,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:22:42,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:22:42,059.059 INFO    ] No camera update needed
[2026-06-13 09:22:42,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:22:42,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:22:42,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:22:42,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:44,110.110 INFO    ] ================================================
[2026-06-13 09:22:44,125.125 INFO    ] Launching Daemon at Sat Jun 13 09:22:44 IST 2026
[2026-06-13 09:22:44,137.137 INFO    ] ================================================
[2026-06-13 09:22:44,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:44
[2026-06-13 09:22:45,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:45,368.368 INFO    ] Initializing speech engine...
[2026-06-13 09:22:45,374.374 INFO    ] 2026-06-13 09:22:45
[2026-06-13 09:22:45,580.580 INFO    ] 2026-06-13 09:22:45
[2026-06-13 09:22:45,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:45,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:45,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:45,985.985 INFO    ] time= 13/06/2026 09:22:45
[2026-06-13 09:22:46,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:46,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:46,096.096 INFO    ] No existing commands found in stream
[2026-06-13 09:22:51,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:22:51,113.113 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 09:22:52,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:22:52,566.566 INFO    ] Checking for system updates...
[2026-06-13 09:22:52,588.588 INFO    ] 200
[2026-06-13 09:22:52,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:52,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:22:52,621.621 INFO    ] No update needed
[2026-06-13 09:22:52,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 09:22:52,643.643 INFO    ] 200
[2026-06-13 09:22:52,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:22:52,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:22:52,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:22:52,709.709 INFO    ] No camera update needed
[2026-06-13 09:22:52,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:22:52,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:22:52,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:22:52,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:22:54,757.757 INFO    ] ================================================
[2026-06-13 09:22:54,773.773 INFO    ] Launching Daemon at Sat Jun 13 09:22:54 IST 2026
[2026-06-13 09:22:54,784.784 INFO    ] ================================================
[2026-06-13 09:22:55,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:22:55
[2026-06-13 09:22:55,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:22:55,577.577 INFO    ] Initializing speech engine...
[2026-06-13 09:22:55,585.585 INFO    ] 2026-06-13 09:22:55
[2026-06-13 09:22:55,808.808 INFO    ] 2026-06-13 09:22:55
[2026-06-13 09:22:55,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:22:55,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:22:56,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:22:56,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:22:56,238.238 INFO    ] time= 13/06/2026 09:22:56
[2026-06-13 09:22:56,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:22:56,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:22:56,357.357 INFO    ] No existing commands found in stream
[2026-06-13 09:23:01,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:01,371.371 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 09:23:03,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:23:03,241.241 INFO    ] Checking for system updates...
[2026-06-13 09:23:03,261.261 INFO    ] 200
[2026-06-13 09:23:03,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:03,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:03,295.295 INFO    ] No update needed
[2026-06-13 09:23:03,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:03,319.319 INFO    ] 200
[2026-06-13 09:23:03,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:03,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:03,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:03,389.389 INFO    ] No camera update needed
[2026-06-13 09:23:03,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:03,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:03,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:03,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:05,437.437 INFO    ] ================================================
[2026-06-13 09:23:05,451.451 INFO    ] Launching Daemon at Sat Jun 13 09:23:05 IST 2026
[2026-06-13 09:23:05,462.462 INFO    ] ================================================
[2026-06-13 09:23:05,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:05
[2026-06-13 09:23:06,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:23:06,268.268 INFO    ] Initializing speech engine...
[2026-06-13 09:23:06,273.273 INFO    ] 2026-06-13 09:23:06
[2026-06-13 09:23:06,478.478 INFO    ] 2026-06-13 09:23:06
[2026-06-13 09:23:06,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:23:06,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:23:06,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:23:06,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:23:06,902.902 INFO    ] time= 13/06/2026 09:23:06
[2026-06-13 09:23:06,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:23:06,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:23:06,999.999 INFO    ] No existing commands found in stream
[2026-06-13 09:23:12,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:12,012.012 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 09:23:13,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:23:13,537.537 INFO    ] Checking for system updates...
[2026-06-13 09:23:13,559.559 INFO    ] 200
[2026-06-13 09:23:13,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:13,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:13,594.594 INFO    ] No update needed
[2026-06-13 09:23:13,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:13,617.617 INFO    ] 200
[2026-06-13 09:23:13,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:13,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:13,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:13,686.686 INFO    ] No camera update needed
[2026-06-13 09:23:13,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:13,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:13,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:13,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:15,735.735 INFO    ] ================================================
[2026-06-13 09:23:15,750.750 INFO    ] Launching Daemon at Sat Jun 13 09:23:15 IST 2026
[2026-06-13 09:23:15,762.762 INFO    ] ================================================
[2026-06-13 09:23:16,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:16
[2026-06-13 09:23:16,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:23:16,574.574 INFO    ] Initializing speech engine...
[2026-06-13 09:23:16,579.579 INFO    ] 2026-06-13 09:23:16
[2026-06-13 09:23:16,782.782 INFO    ] 2026-06-13 09:23:16
[2026-06-13 09:23:16,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:23:16,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:23:16,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:23:17,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:23:17,091.091 INFO    ] time= 13/06/2026 09:23:17
[2026-06-13 09:23:17,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:23:17,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:23:17,135.135 INFO    ] No existing commands found in stream
[2026-06-13 09:23:22,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:22,146.146 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 09:23:22,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:23:22,826.826 INFO    ] Checking for system updates...
[2026-06-13 09:23:22,847.847 INFO    ] 200
[2026-06-13 09:23:22,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:22,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:22,882.882 INFO    ] No update needed
[2026-06-13 09:23:22,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:22,902.902 INFO    ] 200
[2026-06-13 09:23:22,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:22,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:22,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:22,974.974 INFO    ] No camera update needed
[2026-06-13 09:23:22,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:22,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:22,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:22,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:25,022.022 INFO    ] ================================================
[2026-06-13 09:23:25,037.037 INFO    ] Launching Daemon at Sat Jun 13 09:23:25 IST 2026
[2026-06-13 09:23:25,048.048 INFO    ] ================================================
[2026-06-13 09:23:25,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:25
[2026-06-13 09:23:25,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:23:25,899.899 INFO    ] Initializing speech engine...
[2026-06-13 09:23:25,914.914 INFO    ] 2026-06-13 09:23:25
[2026-06-13 09:23:26,123.123 INFO    ] 2026-06-13 09:23:26
[2026-06-13 09:23:26,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:23:26,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:23:26,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:23:26,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:23:26,536.536 INFO    ] time= 13/06/2026 09:23:26
[2026-06-13 09:23:26,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:23:26,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:23:26,641.641 INFO    ] No existing commands found in stream
[2026-06-13 09:23:31,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:31,655.655 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 09:23:33,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:23:33,630.630 INFO    ] Checking for system updates...
[2026-06-13 09:23:33,651.651 INFO    ] 200
[2026-06-13 09:23:33,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:33,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:33,687.687 INFO    ] No update needed
[2026-06-13 09:23:33,689.689 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:33,709.709 INFO    ] 200
[2026-06-13 09:23:33,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:33,735.735 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:33,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:33,772.772 INFO    ] No camera update needed
[2026-06-13 09:23:33,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:33,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:33,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:33,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:35,819.819 INFO    ] ================================================
[2026-06-13 09:23:35,835.835 INFO    ] Launching Daemon at Sat Jun 13 09:23:35 IST 2026
[2026-06-13 09:23:35,846.846 INFO    ] ================================================
[2026-06-13 09:23:36,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:36
[2026-06-13 09:23:36,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:23:36,652.652 INFO    ] Initializing speech engine...
[2026-06-13 09:23:36,657.657 INFO    ] 2026-06-13 09:23:36
[2026-06-13 09:23:36,860.860 INFO    ] 2026-06-13 09:23:36
[2026-06-13 09:23:36,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:23:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:23:37,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:23:37,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:23:37,270.270 INFO    ] time= 13/06/2026 09:23:37
[2026-06-13 09:23:37,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:23:37,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:23:37,381.381 INFO    ] No existing commands found in stream
[2026-06-13 09:23:42,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:42,394.394 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 09:23:44,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:23:44,089.089 INFO    ] Checking for system updates...
[2026-06-13 09:23:44,110.110 INFO    ] 200
[2026-06-13 09:23:44,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:44,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:44,143.143 INFO    ] No update needed
[2026-06-13 09:23:44,145.145 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:44,165.165 INFO    ] 200
[2026-06-13 09:23:44,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:44,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:44,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:23:44,227.227 INFO    ] No camera update needed
[2026-06-13 09:23:44,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:44,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:44,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:44,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:46,277.277 INFO    ] ================================================
[2026-06-13 09:23:46,293.293 INFO    ] Launching Daemon at Sat Jun 13 09:23:46 IST 2026
[2026-06-13 09:23:46,304.304 INFO    ] ================================================
[2026-06-13 09:23:46,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:46
[2026-06-13 09:23:46,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:23:47,142.142 INFO    ] Initializing speech engine...
[2026-06-13 09:23:47,147.147 INFO    ] 2026-06-13 09:23:47
[2026-06-13 09:23:47,359.359 INFO    ] 2026-06-13 09:23:47
[2026-06-13 09:23:47,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:23:47,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:23:47,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:23:47,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:23:47,780.780 INFO    ] time= 13/06/2026 09:23:47
[2026-06-13 09:23:47,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:23:47,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:23:47,902.902 INFO    ] No existing commands found in stream
[2026-06-13 09:23:52,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:23:52,916.916 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 09:23:57,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:23:57,065.065 INFO    ] Checking for system updates...
[2026-06-13 09:23:57,086.086 INFO    ] 200
[2026-06-13 09:23:57,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:57,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:57,120.120 INFO    ] No update needed
[2026-06-13 09:23:57,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 09:23:57,141.141 INFO    ] 200
[2026-06-13 09:23:57,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:23:57,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:23:57,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:23:57,201.201 INFO    ] No camera update needed
[2026-06-13 09:23:57,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:23:57,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:23:57,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:23:57,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:23:59,249.249 INFO    ] ================================================
[2026-06-13 09:23:59,265.265 INFO    ] Launching Daemon at Sat Jun 13 09:23:59 IST 2026
[2026-06-13 09:23:59,276.276 INFO    ] ================================================
[2026-06-13 09:23:59,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:23:59
[2026-06-13 09:23:59,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:00,072.072 INFO    ] Initializing speech engine...
[2026-06-13 09:24:00,080.080 INFO    ] 2026-06-13 09:24:00
[2026-06-13 09:24:00,293.293 INFO    ] 2026-06-13 09:24:00
[2026-06-13 09:24:00,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:00,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:00,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:00,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:00,703.703 INFO    ] time= 13/06/2026 09:24:00
[2026-06-13 09:24:00,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:00,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:00,817.817 INFO    ] No existing commands found in stream
[2026-06-13 09:24:05,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:24:05,829.829 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 09:24:07,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:24:07,602.602 INFO    ] Checking for system updates...
[2026-06-13 09:24:07,624.624 INFO    ] 200
[2026-06-13 09:24:07,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:07,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:07,657.657 INFO    ] No update needed
[2026-06-13 09:24:07,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 09:24:07,677.677 INFO    ] 200
[2026-06-13 09:24:07,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:07,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:24:07,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:07,743.743 INFO    ] No camera update needed
[2026-06-13 09:24:07,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:24:07,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:24:07,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:24:07,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:24:09,782.782 INFO    ] ================================================
[2026-06-13 09:24:09,790.790 INFO    ] Launching Daemon at Sat Jun 13 09:24:09 IST 2026
[2026-06-13 09:24:09,796.796 INFO    ] ================================================
[2026-06-13 09:24:10,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:24:10
[2026-06-13 09:24:10,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:11,083.083 INFO    ] Initializing speech engine...
[2026-06-13 09:24:11,092.092 INFO    ] 2026-06-13 09:24:11
[2026-06-13 09:24:11,354.354 INFO    ] 2026-06-13 09:24:11
[2026-06-13 09:24:11,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:11,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:11,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:11,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:11,714.714 INFO    ] time= 13/06/2026 09:24:11
[2026-06-13 09:24:11,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:11,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:11,877.877 INFO    ] No existing commands found in stream
[2026-06-13 09:24:16,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:24:16,916.916 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 09:24:18,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:24:18,622.622 INFO    ] Checking for system updates...
[2026-06-13 09:24:18,642.642 INFO    ] 200
[2026-06-13 09:24:18,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:18,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:18,675.675 INFO    ] No update needed
[2026-06-13 09:24:18,677.677 INFO    ] Checking for camera pi updates...
[2026-06-13 09:24:18,696.696 INFO    ] 200
[2026-06-13 09:24:18,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:18,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:24:18,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:18,770.770 INFO    ] No camera update needed
[2026-06-13 09:24:18,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:24:18,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:24:18,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:24:18,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:24:20,818.818 INFO    ] ================================================
[2026-06-13 09:24:20,834.834 INFO    ] Launching Daemon at Sat Jun 13 09:24:20 IST 2026
[2026-06-13 09:24:20,844.844 INFO    ] ================================================
[2026-06-13 09:24:21,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:24:21
[2026-06-13 09:24:21,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:21,640.640 INFO    ] Initializing speech engine...
[2026-06-13 09:24:21,654.654 INFO    ] 2026-06-13 09:24:21
[2026-06-13 09:24:21,871.871 INFO    ] 2026-06-13 09:24:21
[2026-06-13 09:24:21,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:22,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:22,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:22,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:22,249.249 INFO    ] time= 13/06/2026 09:24:22
[2026-06-13 09:24:22,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:22,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:22,420.420 INFO    ] No existing commands found in stream
[2026-06-13 09:24:27,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:24:27,434.434 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 09:24:31,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:24:31,243.243 INFO    ] Checking for system updates...
[2026-06-13 09:24:31,266.266 INFO    ] 200
[2026-06-13 09:24:31,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:31,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:31,307.307 INFO    ] No update needed
[2026-06-13 09:24:31,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 09:24:31,330.330 INFO    ] 200
[2026-06-13 09:24:31,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:31,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:24:31,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:24:31,402.402 INFO    ] No camera update needed
[2026-06-13 09:24:31,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:24:31,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:24:31,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:24:31,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:24:33,443.443 INFO    ] ================================================
[2026-06-13 09:24:33,458.458 INFO    ] Launching Daemon at Sat Jun 13 09:24:33 IST 2026
[2026-06-13 09:24:33,469.469 INFO    ] ================================================
[2026-06-13 09:24:33,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:24:33
[2026-06-13 09:24:34,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:34,265.265 INFO    ] Initializing speech engine...
[2026-06-13 09:24:34,274.274 INFO    ] 2026-06-13 09:24:34
[2026-06-13 09:24:34,524.524 INFO    ] 2026-06-13 09:24:34
[2026-06-13 09:24:34,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:34,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:34,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:34,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:34,897.897 INFO    ] time= 13/06/2026 09:24:34
[2026-06-13 09:24:34,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:34,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:34,957.957 INFO    ] No existing commands found in stream
[2026-06-13 09:24:39,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:24:39,973.973 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 09:24:43,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:24:43,532.532 INFO    ] Checking for system updates...
[2026-06-13 09:24:43,554.554 INFO    ] 200
[2026-06-13 09:24:43,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:43,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:43,587.587 INFO    ] No update needed
[2026-06-13 09:24:43,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 09:24:43,608.608 INFO    ] 200
[2026-06-13 09:24:43,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:43,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:24:43,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:43,784.784 INFO    ] No camera update needed
[2026-06-13 09:24:43,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:24:43,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:24:43,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:24:43,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:24:45,832.832 INFO    ] ================================================
[2026-06-13 09:24:45,846.846 INFO    ] Launching Daemon at Sat Jun 13 09:24:45 IST 2026
[2026-06-13 09:24:45,857.857 INFO    ] ================================================
[2026-06-13 09:24:46,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:24:46
[2026-06-13 09:24:46,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:46,664.664 INFO    ] Initializing speech engine...
[2026-06-13 09:24:46,670.670 INFO    ] 2026-06-13 09:24:46
[2026-06-13 09:24:46,876.876 INFO    ] 2026-06-13 09:24:46
[2026-06-13 09:24:46,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:47,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:47,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:47,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:47,244.244 INFO    ] time= 13/06/2026 09:24:47
[2026-06-13 09:24:47,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:47,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:47,295.295 INFO    ] No existing commands found in stream
[2026-06-13 09:24:52,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:24:52,306.306 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 09:24:56,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:24:56,162.162 INFO    ] Checking for system updates...
[2026-06-13 09:24:56,183.183 INFO    ] 200
[2026-06-13 09:24:56,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:56,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:56,216.216 INFO    ] No update needed
[2026-06-13 09:24:56,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 09:24:56,236.236 INFO    ] 200
[2026-06-13 09:24:56,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:24:56,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:24:56,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:24:56,304.304 INFO    ] No camera update needed
[2026-06-13 09:24:56,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:24:56,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:24:56,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:24:56,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:24:58,352.352 INFO    ] ================================================
[2026-06-13 09:24:58,368.368 INFO    ] Launching Daemon at Sat Jun 13 09:24:58 IST 2026
[2026-06-13 09:24:58,378.378 INFO    ] ================================================
[2026-06-13 09:24:58,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:24:58
[2026-06-13 09:24:59,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:24:59,174.174 INFO    ] Initializing speech engine...
[2026-06-13 09:24:59,179.179 INFO    ] 2026-06-13 09:24:59
[2026-06-13 09:24:59,399.399 INFO    ] 2026-06-13 09:24:59
[2026-06-13 09:24:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:24:59,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:24:59,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:24:59,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:24:59,792.792 INFO    ] time= 13/06/2026 09:24:59
[2026-06-13 09:24:59,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:24:59,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:24:59,920.920 INFO    ] No existing commands found in stream
[2026-06-13 09:25:04,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:25:04,932.932 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 09:25:05,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:25:05,571.571 INFO    ] Checking for system updates...
[2026-06-13 09:25:05,592.592 INFO    ] 200
[2026-06-13 09:25:05,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:05,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:25:05,626.626 INFO    ] No update needed
[2026-06-13 09:25:05,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 09:25:05,647.647 INFO    ] 200
[2026-06-13 09:25:05,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:05,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:25:05,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:25:05,713.713 INFO    ] No camera update needed
[2026-06-13 09:25:05,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:25:05,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:25:05,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:25:05,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:25:07,760.760 INFO    ] ================================================
[2026-06-13 09:25:07,775.775 INFO    ] Launching Daemon at Sat Jun 13 09:25:07 IST 2026
[2026-06-13 09:25:07,786.786 INFO    ] ================================================
[2026-06-13 09:25:08,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:25:08
[2026-06-13 09:25:08,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:25:08,623.623 INFO    ] Initializing speech engine...
[2026-06-13 09:25:08,631.631 INFO    ] 2026-06-13 09:25:08
[2026-06-13 09:25:08,836.836 INFO    ] 2026-06-13 09:25:08
[2026-06-13 09:25:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:25:09,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:25:09,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:25:09,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:25:09,244.244 INFO    ] time= 13/06/2026 09:25:09
[2026-06-13 09:25:09,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:25:09,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:25:09,347.347 INFO    ] No existing commands found in stream
[2026-06-13 09:25:14,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:25:14,360.360 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 09:25:17,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:25:17,836.836 INFO    ] Checking for system updates...
[2026-06-13 09:25:17,872.872 INFO    ] 200
[2026-06-13 09:25:17,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:17,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:25:17,929.929 INFO    ] No update needed
[2026-06-13 09:25:17,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 09:25:17,965.965 INFO    ] 200
[2026-06-13 09:25:17,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:18,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:25:18,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:25:18,045.045 INFO    ] No camera update needed
[2026-06-13 09:25:18,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:25:18,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:25:18,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:25:18,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:25:20,092.092 INFO    ] ================================================
[2026-06-13 09:25:20,107.107 INFO    ] Launching Daemon at Sat Jun 13 09:25:20 IST 2026
[2026-06-13 09:25:20,117.117 INFO    ] ================================================
[2026-06-13 09:25:20,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:25:20
[2026-06-13 09:25:20,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:25:20,890.890 INFO    ] Initializing speech engine...
[2026-06-13 09:25:20,894.894 INFO    ] 2026-06-13 09:25:20
[2026-06-13 09:25:21,115.115 INFO    ] 2026-06-13 09:25:21
[2026-06-13 09:25:21,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:25:21,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:25:21,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:25:21,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:25:21,521.521 INFO    ] time= 13/06/2026 09:25:21
[2026-06-13 09:25:21,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:25:21,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:25:21,631.631 INFO    ] No existing commands found in stream
[2026-06-13 09:25:26,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:25:26,649.649 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 09:25:30,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:25:30,841.841 INFO    ] Checking for system updates...
[2026-06-13 09:25:30,863.863 INFO    ] 200
[2026-06-13 09:25:30,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:30,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:25:30,898.898 INFO    ] No update needed
[2026-06-13 09:25:30,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 09:25:30,919.919 INFO    ] 200
[2026-06-13 09:25:30,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:30,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:25:30,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:25:30,983.983 INFO    ] No camera update needed
[2026-06-13 09:25:30,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:25:30,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:25:30,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:25:30,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:25:33,023.023 INFO    ] ================================================
[2026-06-13 09:25:33,031.031 INFO    ] Launching Daemon at Sat Jun 13 09:25:33 IST 2026
[2026-06-13 09:25:33,037.037 INFO    ] ================================================
[2026-06-13 09:25:33,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:25:33
[2026-06-13 09:25:33,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:25:33,802.802 INFO    ] Initializing speech engine...
[2026-06-13 09:25:33,808.808 INFO    ] 2026-06-13 09:25:33
[2026-06-13 09:25:34,007.007 INFO    ] 2026-06-13 09:25:33
[2026-06-13 09:25:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:25:34,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:25:34,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:25:34,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:25:34,430.430 INFO    ] time= 13/06/2026 09:25:34
[2026-06-13 09:25:34,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:25:34,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:25:34,525.525 INFO    ] No existing commands found in stream
[2026-06-13 09:25:39,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:25:39,539.539 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 09:25:44,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:25:44,757.757 INFO    ] Checking for system updates...
[2026-06-13 09:25:44,793.793 INFO    ] 200
[2026-06-13 09:25:44,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:44,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:25:44,852.852 INFO    ] No update needed
[2026-06-13 09:25:44,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 09:25:44,891.891 INFO    ] 200
[2026-06-13 09:25:44,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:44,934.934 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:25:44,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:25:44,982.982 INFO    ] No camera update needed
[2026-06-13 09:25:44,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:25:44,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:25:44,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:25:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:25:47,040.040 INFO    ] ================================================
[2026-06-13 09:25:47,056.056 INFO    ] Launching Daemon at Sat Jun 13 09:25:47 IST 2026
[2026-06-13 09:25:47,067.067 INFO    ] ================================================
[2026-06-13 09:25:47,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:25:47
[2026-06-13 09:25:47,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:25:47,893.893 INFO    ] Initializing speech engine...
[2026-06-13 09:25:47,901.901 INFO    ] 2026-06-13 09:25:47
[2026-06-13 09:25:48,115.115 INFO    ] 2026-06-13 09:25:48
[2026-06-13 09:25:48,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:25:48,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:25:48,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:25:48,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:25:48,513.513 INFO    ] time= 13/06/2026 09:25:48
[2026-06-13 09:25:48,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:25:48,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:25:48,635.635 INFO    ] No existing commands found in stream
[2026-06-13 09:25:53,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:25:53,643.643 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 09:25:57,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:25:57,454.454 INFO    ] Checking for system updates...
[2026-06-13 09:25:57,476.476 INFO    ] 200
[2026-06-13 09:25:57,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:57,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:25:57,510.510 INFO    ] No update needed
[2026-06-13 09:25:57,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 09:25:57,531.531 INFO    ] 200
[2026-06-13 09:25:57,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:25:57,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:25:57,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:25:57,595.595 INFO    ] No camera update needed
[2026-06-13 09:25:57,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:25:57,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:25:57,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:25:57,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:25:59,642.642 INFO    ] ================================================
[2026-06-13 09:25:59,657.657 INFO    ] Launching Daemon at Sat Jun 13 09:25:59 IST 2026
[2026-06-13 09:25:59,667.667 INFO    ] ================================================
[2026-06-13 09:26:00,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:00
[2026-06-13 09:26:00,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:00,529.529 INFO    ] Initializing speech engine...
[2026-06-13 09:26:00,534.534 INFO    ] 2026-06-13 09:26:00
[2026-06-13 09:26:00,742.742 INFO    ] 2026-06-13 09:26:00
[2026-06-13 09:26:00,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:26:00,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:26:00,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:26:01,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:26:01,158.158 INFO    ] time= 13/06/2026 09:26:01
[2026-06-13 09:26:01,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:26:01,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:26:01,255.255 INFO    ] No existing commands found in stream
[2026-06-13 09:26:06,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:26:06,267.267 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 09:26:10,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:26:10,463.463 INFO    ] Checking for system updates...
[2026-06-13 09:26:10,492.492 INFO    ] 200
[2026-06-13 09:26:10,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:10,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:26:10,525.525 INFO    ] No update needed
[2026-06-13 09:26:10,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 09:26:10,546.546 INFO    ] 200
[2026-06-13 09:26:10,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:10,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:26:10,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:26:10,614.614 INFO    ] No camera update needed
[2026-06-13 09:26:10,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:26:10,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:26:10,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:26:10,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:26:12,661.661 INFO    ] ================================================
[2026-06-13 09:26:12,676.676 INFO    ] Launching Daemon at Sat Jun 13 09:26:12 IST 2026
[2026-06-13 09:26:12,687.687 INFO    ] ================================================
[2026-06-13 09:26:13,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:13
[2026-06-13 09:26:13,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:13,472.472 INFO    ] Initializing speech engine...
[2026-06-13 09:26:13,480.480 INFO    ] 2026-06-13 09:26:13
[2026-06-13 09:26:13,693.693 INFO    ] 2026-06-13 09:26:13
[2026-06-13 09:26:13,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:26:13,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:26:13,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:26:14,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:26:14,092.092 INFO    ] time= 13/06/2026 09:26:14
[2026-06-13 09:26:14,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:26:14,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:26:14,215.215 INFO    ] No existing commands found in stream
[2026-06-13 09:26:19,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:26:19,227.227 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 09:26:20,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:26:20,648.648 INFO    ] Checking for system updates...
[2026-06-13 09:26:20,670.670 INFO    ] 200
[2026-06-13 09:26:20,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:20,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:20,704.704 INFO    ] No update needed
[2026-06-13 09:26:20,705.705 INFO    ] Checking for camera pi updates...
[2026-06-13 09:26:20,725.725 INFO    ] 200
[2026-06-13 09:26:20,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:20,749.749 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:26:20,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:20,788.788 INFO    ] No camera update needed
[2026-06-13 09:26:20,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:26:20,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:26:20,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:26:20,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:26:22,836.836 INFO    ] ================================================
[2026-06-13 09:26:22,852.852 INFO    ] Launching Daemon at Sat Jun 13 09:26:22 IST 2026
[2026-06-13 09:26:22,863.863 INFO    ] ================================================
[2026-06-13 09:26:23,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:23
[2026-06-13 09:26:23,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:23,663.663 INFO    ] Initializing speech engine...
[2026-06-13 09:26:23,668.668 INFO    ] 2026-06-13 09:26:23
[2026-06-13 09:26:23,893.893 INFO    ] 2026-06-13 09:26:23
[2026-06-13 09:26:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:26:24,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:26:24,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:26:24,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:26:24,259.259 INFO    ] time= 13/06/2026 09:26:24
[2026-06-13 09:26:24,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:26:24,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:26:24,437.437 INFO    ] No existing commands found in stream
[2026-06-13 09:26:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:26:29,454.454 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 09:26:32,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:26:32,966.966 INFO    ] Checking for system updates...
[2026-06-13 09:26:32,986.986 INFO    ] 200
[2026-06-13 09:26:32,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:33,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:26:33,019.019 INFO    ] No update needed
[2026-06-13 09:26:33,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 09:26:33,040.040 INFO    ] 200
[2026-06-13 09:26:33,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:33,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:26:33,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:26:33,113.113 INFO    ] No camera update needed
[2026-06-13 09:26:33,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:26:33,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:26:33,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:26:33,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:26:35,160.160 INFO    ] ================================================
[2026-06-13 09:26:35,175.175 INFO    ] Launching Daemon at Sat Jun 13 09:26:35 IST 2026
[2026-06-13 09:26:35,186.186 INFO    ] ================================================
[2026-06-13 09:26:35,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:35
[2026-06-13 09:26:35,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:36,034.034 INFO    ] Initializing speech engine...
[2026-06-13 09:26:36,043.043 INFO    ] 2026-06-13 09:26:36
[2026-06-13 09:26:36,250.250 INFO    ] 2026-06-13 09:26:36
[2026-06-13 09:26:36,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:26:36,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:26:36,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:26:36,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:26:36,662.662 INFO    ] time= 13/06/2026 09:26:36
[2026-06-13 09:26:36,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:26:36,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:26:36,765.765 INFO    ] No existing commands found in stream
[2026-06-13 09:26:41,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:26:41,779.779 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 09:26:43,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:26:43,244.244 INFO    ] Checking for system updates...
[2026-06-13 09:26:43,264.264 INFO    ] 200
[2026-06-13 09:26:43,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:43,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:43,297.297 INFO    ] No update needed
[2026-06-13 09:26:43,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 09:26:43,319.319 INFO    ] 200
[2026-06-13 09:26:43,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:43,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:26:43,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:43,396.396 INFO    ] No camera update needed
[2026-06-13 09:26:43,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:26:43,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:26:43,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:26:43,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:26:45,444.444 INFO    ] ================================================
[2026-06-13 09:26:45,460.460 INFO    ] Launching Daemon at Sat Jun 13 09:26:45 IST 2026
[2026-06-13 09:26:45,471.471 INFO    ] ================================================
[2026-06-13 09:26:46,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:46
[2026-06-13 09:26:46,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:46,688.688 INFO    ] Initializing speech engine...
[2026-06-13 09:26:46,693.693 INFO    ] 2026-06-13 09:26:46
[2026-06-13 09:26:46,899.899 INFO    ] 2026-06-13 09:26:46
[2026-06-13 09:26:46,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:26:47,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:26:47,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:26:47,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:26:47,299.299 INFO    ] time= 13/06/2026 09:26:47
[2026-06-13 09:26:47,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:26:47,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:26:47,421.421 INFO    ] No existing commands found in stream
[2026-06-13 09:26:52,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:26:52,434.434 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 09:26:56,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:26:56,491.491 INFO    ] Checking for system updates...
[2026-06-13 09:26:56,512.512 INFO    ] 200
[2026-06-13 09:26:56,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:56,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:56,545.545 INFO    ] No update needed
[2026-06-13 09:26:56,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 09:26:56,567.567 INFO    ] 200
[2026-06-13 09:26:56,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:26:56,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:26:56,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:26:56,734.734 INFO    ] No camera update needed
[2026-06-13 09:26:56,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:26:56,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:26:56,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:26:56,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:26:58,780.780 INFO    ] ================================================
[2026-06-13 09:26:58,796.796 INFO    ] Launching Daemon at Sat Jun 13 09:26:58 IST 2026
[2026-06-13 09:26:58,807.807 INFO    ] ================================================
[2026-06-13 09:26:59,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:26:59
[2026-06-13 09:26:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:26:59,664.664 INFO    ] Initializing speech engine...
[2026-06-13 09:26:59,669.669 INFO    ] 2026-06-13 09:26:59
[2026-06-13 09:26:59,873.873 INFO    ] 2026-06-13 09:26:59
[2026-06-13 09:26:59,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:00,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:00,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:00,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:00,274.274 INFO    ] time= 13/06/2026 09:27:00
[2026-06-13 09:27:00,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:00,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:00,486.486 INFO    ] No existing commands found in stream
[2026-06-13 09:27:05,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:27:05,514.514 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 09:27:07,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:27:07,132.132 INFO    ] Checking for system updates...
[2026-06-13 09:27:07,152.152 INFO    ] 200
[2026-06-13 09:27:07,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:07,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:27:07,185.185 INFO    ] No update needed
[2026-06-13 09:27:07,187.187 INFO    ] Checking for camera pi updates...
[2026-06-13 09:27:07,208.208 INFO    ] 200
[2026-06-13 09:27:07,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:07,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:27:07,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:27:07,274.274 INFO    ] No camera update needed
[2026-06-13 09:27:07,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:27:07,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:27:07,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:27:07,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:27:09,320.320 INFO    ] ================================================
[2026-06-13 09:27:09,336.336 INFO    ] Launching Daemon at Sat Jun 13 09:27:09 IST 2026
[2026-06-13 09:27:09,347.347 INFO    ] ================================================
[2026-06-13 09:27:09,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:27:09
[2026-06-13 09:27:10,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:27:10,212.212 INFO    ] Initializing speech engine...
[2026-06-13 09:27:10,217.217 INFO    ] 2026-06-13 09:27:10
[2026-06-13 09:27:10,427.427 INFO    ] 2026-06-13 09:27:10
[2026-06-13 09:27:10,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:10,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:10,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:10,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:10,841.841 INFO    ] time= 13/06/2026 09:27:10
[2026-06-13 09:27:10,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:10,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:10,948.948 INFO    ] No existing commands found in stream
[2026-06-13 09:27:15,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:27:15,961.961 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 09:27:18,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:27:18,785.785 INFO    ] Checking for system updates...
[2026-06-13 09:27:18,806.806 INFO    ] 200
[2026-06-13 09:27:18,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:18,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:27:18,839.839 INFO    ] No update needed
[2026-06-13 09:27:18,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 09:27:18,860.860 INFO    ] 200
[2026-06-13 09:27:18,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:18,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:27:18,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:27:18,938.938 INFO    ] No camera update needed
[2026-06-13 09:27:18,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:27:18,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:27:18,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:27:18,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:27:20,987.987 INFO    ] ================================================
[2026-06-13 09:27:21,003.003 INFO    ] Launching Daemon at Sat Jun 13 09:27:20 IST 2026
[2026-06-13 09:27:21,015.015 INFO    ] ================================================
[2026-06-13 09:27:21,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:27:21
[2026-06-13 09:27:21,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:27:21,819.819 INFO    ] Initializing speech engine...
[2026-06-13 09:27:21,830.830 INFO    ] 2026-06-13 09:27:21
[2026-06-13 09:27:22,037.037 INFO    ] 2026-06-13 09:27:22
[2026-06-13 09:27:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:22,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:22,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:22,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:22,396.396 INFO    ] time= 13/06/2026 09:27:22
[2026-06-13 09:27:22,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:22,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:22,554.554 INFO    ] No existing commands found in stream
[2026-06-13 09:27:27,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:27:27,567.567 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 09:27:30,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:27:30,955.955 INFO    ] Checking for system updates...
[2026-06-13 09:27:30,976.976 INFO    ] 200
[2026-06-13 09:27:30,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:31,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:31,012.012 INFO    ] No update needed
[2026-06-13 09:27:31,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 09:27:31,032.032 INFO    ] 200
[2026-06-13 09:27:31,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:31,059.059 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:27:31,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:31,103.103 INFO    ] No camera update needed
[2026-06-13 09:27:31,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:27:31,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:27:31,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:27:31,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:27:33,151.151 INFO    ] ================================================
[2026-06-13 09:27:33,167.167 INFO    ] Launching Daemon at Sat Jun 13 09:27:33 IST 2026
[2026-06-13 09:27:33,177.177 INFO    ] ================================================
[2026-06-13 09:27:33,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:27:33
[2026-06-13 09:27:33,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:27:34,101.101 INFO    ] Initializing speech engine...
[2026-06-13 09:27:34,108.108 INFO    ] 2026-06-13 09:27:34
[2026-06-13 09:27:34,355.355 INFO    ] 2026-06-13 09:27:34
[2026-06-13 09:27:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:34,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:34,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:34,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:34,828.828 INFO    ] time= 13/06/2026 09:27:34
[2026-06-13 09:27:34,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:34,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:34,971.971 INFO    ] No existing commands found in stream
[2026-06-13 09:27:39,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:27:39,985.985 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 09:27:41,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:27:41,340.340 INFO    ] Checking for system updates...
[2026-06-13 09:27:41,360.360 INFO    ] 200
[2026-06-13 09:27:41,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:41,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:41,393.393 INFO    ] No update needed
[2026-06-13 09:27:41,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 09:27:41,413.413 INFO    ] 200
[2026-06-13 09:27:41,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:41,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:27:41,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:41,480.480 INFO    ] No camera update needed
[2026-06-13 09:27:41,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:27:41,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:27:41,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:27:41,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:27:43,526.526 INFO    ] ================================================
[2026-06-13 09:27:43,541.541 INFO    ] Launching Daemon at Sat Jun 13 09:27:43 IST 2026
[2026-06-13 09:27:43,552.552 INFO    ] ================================================
[2026-06-13 09:27:43,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:27:43
[2026-06-13 09:27:44,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:27:44,371.371 INFO    ] Initializing speech engine...
[2026-06-13 09:27:44,376.376 INFO    ] 2026-06-13 09:27:44
[2026-06-13 09:27:44,579.579 INFO    ] 2026-06-13 09:27:44
[2026-06-13 09:27:44,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:44,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:44,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:44,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:44,988.988 INFO    ] time= 13/06/2026 09:27:44
[2026-06-13 09:27:45,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:45,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:45,092.092 INFO    ] No existing commands found in stream
[2026-06-13 09:27:50,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:27:50,106.106 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 09:27:52,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:27:52,308.308 INFO    ] Checking for system updates...
[2026-06-13 09:27:52,329.329 INFO    ] 200
[2026-06-13 09:27:52,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:52,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:52,362.362 INFO    ] No update needed
[2026-06-13 09:27:52,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 09:27:52,384.384 INFO    ] 200
[2026-06-13 09:27:52,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:27:52,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:27:52,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:27:52,448.448 INFO    ] No camera update needed
[2026-06-13 09:27:52,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:27:52,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:27:52,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:27:52,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:27:54,495.495 INFO    ] ================================================
[2026-06-13 09:27:54,511.511 INFO    ] Launching Daemon at Sat Jun 13 09:27:54 IST 2026
[2026-06-13 09:27:54,522.522 INFO    ] ================================================
[2026-06-13 09:27:54,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:27:54
[2026-06-13 09:27:55,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:27:55,382.382 INFO    ] Initializing speech engine...
[2026-06-13 09:27:55,392.392 INFO    ] 2026-06-13 09:27:55
[2026-06-13 09:27:55,600.600 INFO    ] 2026-06-13 09:27:55
[2026-06-13 09:27:55,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:27:55,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:27:55,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:27:55,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:27:56,018.018 INFO    ] time= 13/06/2026 09:27:55
[2026-06-13 09:27:56,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:27:56,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:27:56,118.118 INFO    ] No existing commands found in stream
[2026-06-13 09:28:01,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:01,131.131 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 09:28:04,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:28:04,810.810 INFO    ] Checking for system updates...
[2026-06-13 09:28:04,850.850 INFO    ] 200
[2026-06-13 09:28:04,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:04,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:28:04,912.912 INFO    ] No update needed
[2026-06-13 09:28:04,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:04,949.949 INFO    ] 200
[2026-06-13 09:28:04,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:04,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:28:05,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:28:05,028.028 INFO    ] No camera update needed
[2026-06-13 09:28:05,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:28:05,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:28:05,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:28:05,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:28:07,076.076 INFO    ] ================================================
[2026-06-13 09:28:07,092.092 INFO    ] Launching Daemon at Sat Jun 13 09:28:07 IST 2026
[2026-06-13 09:28:07,103.103 INFO    ] ================================================
[2026-06-13 09:28:07,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:28:07
[2026-06-13 09:28:08,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:28:08,275.275 INFO    ] Initializing speech engine...
[2026-06-13 09:28:08,282.282 INFO    ] 2026-06-13 09:28:08
[2026-06-13 09:28:08,530.530 INFO    ] 2026-06-13 09:28:08
[2026-06-13 09:28:08,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:28:08,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:28:08,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:28:08,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:28:09,000.000 INFO    ] time= 13/06/2026 09:28:08
[2026-06-13 09:28:09,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:28:09,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:28:09,146.146 INFO    ] No existing commands found in stream
[2026-06-13 09:28:14,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:14,161.161 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 09:28:17,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:28:17,670.670 INFO    ] Checking for system updates...
[2026-06-13 09:28:17,691.691 INFO    ] 200
[2026-06-13 09:28:17,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:17,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:17,727.727 INFO    ] No update needed
[2026-06-13 09:28:17,728.728 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:17,749.749 INFO    ] 200
[2026-06-13 09:28:17,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:17,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:28:17,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:17,814.814 INFO    ] No camera update needed
[2026-06-13 09:28:17,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:28:17,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:28:17,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:28:17,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:28:19,862.862 INFO    ] ================================================
[2026-06-13 09:28:19,877.877 INFO    ] Launching Daemon at Sat Jun 13 09:28:19 IST 2026
[2026-06-13 09:28:19,889.889 INFO    ] ================================================
[2026-06-13 09:28:20,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:28:20
[2026-06-13 09:28:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:28:20,745.745 INFO    ] Initializing speech engine...
[2026-06-13 09:28:20,748.748 INFO    ] 2026-06-13 09:28:20
[2026-06-13 09:28:20,954.954 INFO    ] 2026-06-13 09:28:20
[2026-06-13 09:28:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:28:21,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:28:21,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:28:21,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:28:21,351.351 INFO    ] time= 13/06/2026 09:28:21
[2026-06-13 09:28:21,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:28:21,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:28:21,470.470 INFO    ] No existing commands found in stream
[2026-06-13 09:28:26,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:26,483.483 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 09:28:27,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:28:27,688.688 INFO    ] Checking for system updates...
[2026-06-13 09:28:27,709.709 INFO    ] 200
[2026-06-13 09:28:27,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:27,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:28:27,742.742 INFO    ] No update needed
[2026-06-13 09:28:27,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:27,764.764 INFO    ] 200
[2026-06-13 09:28:27,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:27,789.789 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:28:27,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:28:27,831.831 INFO    ] No camera update needed
[2026-06-13 09:28:27,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:28:27,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:28:27,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:28:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:28:29,879.879 INFO    ] ================================================
[2026-06-13 09:28:29,894.894 INFO    ] Launching Daemon at Sat Jun 13 09:28:29 IST 2026
[2026-06-13 09:28:29,905.905 INFO    ] ================================================
[2026-06-13 09:28:30,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:28:30
[2026-06-13 09:28:30,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:28:30,726.726 INFO    ] Initializing speech engine...
[2026-06-13 09:28:30,731.731 INFO    ] 2026-06-13 09:28:30
[2026-06-13 09:28:30,933.933 INFO    ] 2026-06-13 09:28:30
[2026-06-13 09:28:30,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:28:31,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:28:31,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:28:31,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:28:31,339.339 INFO    ] time= 13/06/2026 09:28:31
[2026-06-13 09:28:31,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:28:31,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:28:31,449.449 INFO    ] No existing commands found in stream
[2026-06-13 09:28:36,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:36,465.465 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 09:28:39,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:28:39,452.452 INFO    ] Checking for system updates...
[2026-06-13 09:28:39,472.472 INFO    ] 200
[2026-06-13 09:28:39,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:39,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:39,505.505 INFO    ] No update needed
[2026-06-13 09:28:39,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:39,527.527 INFO    ] 200
[2026-06-13 09:28:39,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:39,552.552 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:28:39,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:39,586.586 INFO    ] No camera update needed
[2026-06-13 09:28:39,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:28:39,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:28:39,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:28:39,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:28:41,634.634 INFO    ] ================================================
[2026-06-13 09:28:41,650.650 INFO    ] Launching Daemon at Sat Jun 13 09:28:41 IST 2026
[2026-06-13 09:28:41,661.661 INFO    ] ================================================
[2026-06-13 09:28:41,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:28:41
[2026-06-13 09:28:42,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:28:42,462.462 INFO    ] Initializing speech engine...
[2026-06-13 09:28:42,467.467 INFO    ] 2026-06-13 09:28:42
[2026-06-13 09:28:42,686.686 INFO    ] 2026-06-13 09:28:42
[2026-06-13 09:28:42,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:28:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:28:42,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:28:43,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:28:43,080.080 INFO    ] time= 13/06/2026 09:28:43
[2026-06-13 09:28:43,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:28:43,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:28:43,242.242 INFO    ] No existing commands found in stream
[2026-06-13 09:28:48,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:48,254.254 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 09:28:49,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:28:49,658.658 INFO    ] Checking for system updates...
[2026-06-13 09:28:49,679.679 INFO    ] 200
[2026-06-13 09:28:49,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:49,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:49,714.714 INFO    ] No update needed
[2026-06-13 09:28:49,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:49,736.736 INFO    ] 200
[2026-06-13 09:28:49,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:49,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:28:49,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:28:49,806.806 INFO    ] No camera update needed
[2026-06-13 09:28:49,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:28:49,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:28:49,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:28:49,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:28:51,854.854 INFO    ] ================================================
[2026-06-13 09:28:51,870.870 INFO    ] Launching Daemon at Sat Jun 13 09:28:51 IST 2026
[2026-06-13 09:28:51,880.880 INFO    ] ================================================
[2026-06-13 09:28:52,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:28:52
[2026-06-13 09:28:52,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:28:53,035.035 INFO    ] Initializing speech engine...
[2026-06-13 09:28:53,049.049 INFO    ] 2026-06-13 09:28:53
[2026-06-13 09:28:53,356.356 INFO    ] 2026-06-13 09:28:53
[2026-06-13 09:28:53,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:28:53,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:28:53,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:28:53,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:28:53,863.863 INFO    ] time= 13/06/2026 09:28:53
[2026-06-13 09:28:53,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:28:53,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:28:54,004.004 INFO    ] No existing commands found in stream
[2026-06-13 09:28:59,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:28:59,032.032 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 09:28:59,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:28:59,796.796 INFO    ] Checking for system updates...
[2026-06-13 09:28:59,817.817 INFO    ] 200
[2026-06-13 09:28:59,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:59,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:28:59,855.855 INFO    ] No update needed
[2026-06-13 09:28:59,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 09:28:59,879.879 INFO    ] 200
[2026-06-13 09:28:59,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:28:59,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:00,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:00,049.049 INFO    ] No camera update needed
[2026-06-13 09:29:00,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:00,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:00,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:00,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:02,091.091 INFO    ] ================================================
[2026-06-13 09:29:02,104.104 INFO    ] Launching Daemon at Sat Jun 13 09:29:02 IST 2026
[2026-06-13 09:29:02,112.112 INFO    ] ================================================
[2026-06-13 09:29:02,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:02
[2026-06-13 09:29:02,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:03,010.010 INFO    ] Initializing speech engine...
[2026-06-13 09:29:03,016.016 INFO    ] 2026-06-13 09:29:03
[2026-06-13 09:29:03,224.224 INFO    ] 2026-06-13 09:29:03
[2026-06-13 09:29:03,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:03,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:03,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:03,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:03,565.565 INFO    ] time= 13/06/2026 09:29:03
[2026-06-13 09:29:03,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:03,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:03,752.752 INFO    ] No existing commands found in stream
[2026-06-13 09:29:08,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:29:08,766.766 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 09:29:10,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:29:10,230.230 INFO    ] Checking for system updates...
[2026-06-13 09:29:10,251.251 INFO    ] 200
[2026-06-13 09:29:10,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:10,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:10,287.287 INFO    ] No update needed
[2026-06-13 09:29:10,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 09:29:10,311.311 INFO    ] 200
[2026-06-13 09:29:10,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:10,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:10,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:10,380.380 INFO    ] No camera update needed
[2026-06-13 09:29:10,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:10,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:10,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:10,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:12,428.428 INFO    ] ================================================
[2026-06-13 09:29:12,444.444 INFO    ] Launching Daemon at Sat Jun 13 09:29:12 IST 2026
[2026-06-13 09:29:12,454.454 INFO    ] ================================================
[2026-06-13 09:29:12,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:12
[2026-06-13 09:29:13,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:13,253.253 INFO    ] Initializing speech engine...
[2026-06-13 09:29:13,263.263 INFO    ] 2026-06-13 09:29:13
[2026-06-13 09:29:13,486.486 INFO    ] 2026-06-13 09:29:13
[2026-06-13 09:29:13,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:13,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:13,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:13,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:13,879.879 INFO    ] time= 13/06/2026 09:29:13
[2026-06-13 09:29:13,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:13,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:14,040.040 INFO    ] No existing commands found in stream
[2026-06-13 09:29:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:29:19,053.053 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 09:29:19,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:29:19,884.884 INFO    ] Checking for system updates...
[2026-06-13 09:29:19,906.906 INFO    ] 200
[2026-06-13 09:29:19,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:19,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:19,941.941 INFO    ] No update needed
[2026-06-13 09:29:19,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 09:29:19,963.963 INFO    ] 200
[2026-06-13 09:29:19,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:19,989.989 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:20,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:20,027.027 INFO    ] No camera update needed
[2026-06-13 09:29:20,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:20,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:20,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:20,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:22,074.074 INFO    ] ================================================
[2026-06-13 09:29:22,090.090 INFO    ] Launching Daemon at Sat Jun 13 09:29:22 IST 2026
[2026-06-13 09:29:22,100.100 INFO    ] ================================================
[2026-06-13 09:29:22,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:22
[2026-06-13 09:29:22,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:22,908.908 INFO    ] Initializing speech engine...
[2026-06-13 09:29:22,913.913 INFO    ] 2026-06-13 09:29:22
[2026-06-13 09:29:23,117.117 INFO    ] 2026-06-13 09:29:23
[2026-06-13 09:29:23,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:23,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:23,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:23,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:23,509.509 INFO    ] time= 13/06/2026 09:29:23
[2026-06-13 09:29:23,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:23,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:23,629.629 INFO    ] No existing commands found in stream
[2026-06-13 09:29:28,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:29:28,641.641 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 09:29:29,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:29:29,654.654 INFO    ] Checking for system updates...
[2026-06-13 09:29:29,675.675 INFO    ] 200
[2026-06-13 09:29:29,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:29,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:29:29,710.710 INFO    ] No update needed
[2026-06-13 09:29:29,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 09:29:29,731.731 INFO    ] 200
[2026-06-13 09:29:29,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:29,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:29,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:29:29,792.792 INFO    ] No camera update needed
[2026-06-13 09:29:29,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:29,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:29,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:29,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:31,837.837 INFO    ] ================================================
[2026-06-13 09:29:31,846.846 INFO    ] Launching Daemon at Sat Jun 13 09:29:31 IST 2026
[2026-06-13 09:29:31,853.853 INFO    ] ================================================
[2026-06-13 09:29:32,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:32
[2026-06-13 09:29:33,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:33,498.498 INFO    ] Initializing speech engine...
[2026-06-13 09:29:33,512.512 INFO    ] 2026-06-13 09:29:33
[2026-06-13 09:29:33,764.764 INFO    ] 2026-06-13 09:29:33
[2026-06-13 09:29:33,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:34,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:34,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:34,210.210 INFO    ] time= 13/06/2026 09:29:34
[2026-06-13 09:29:34,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:34,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:34,452.452 INFO    ] No existing commands found in stream
[2026-06-13 09:29:39,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:29:39,480.480 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 09:29:42,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:29:42,720.720 INFO    ] Checking for system updates...
[2026-06-13 09:29:42,741.741 INFO    ] 200
[2026-06-13 09:29:42,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:42,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:42,774.774 INFO    ] No update needed
[2026-06-13 09:29:42,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 09:29:42,796.796 INFO    ] 200
[2026-06-13 09:29:42,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:42,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:42,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:29:42,860.860 INFO    ] No camera update needed
[2026-06-13 09:29:42,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:42,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:42,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:42,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:44,907.907 INFO    ] ================================================
[2026-06-13 09:29:44,923.923 INFO    ] Launching Daemon at Sat Jun 13 09:29:44 IST 2026
[2026-06-13 09:29:44,934.934 INFO    ] ================================================
[2026-06-13 09:29:45,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:45
[2026-06-13 09:29:45,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:45,719.719 INFO    ] Initializing speech engine...
[2026-06-13 09:29:45,723.723 INFO    ] 2026-06-13 09:29:45
[2026-06-13 09:29:45,927.927 INFO    ] 2026-06-13 09:29:45
[2026-06-13 09:29:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:46,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:46,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:46,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:46,342.342 INFO    ] time= 13/06/2026 09:29:46
[2026-06-13 09:29:46,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:46,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:46,449.449 INFO    ] No existing commands found in stream
[2026-06-13 09:29:51,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:29:51,462.462 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 09:29:54,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:29:54,503.503 INFO    ] Checking for system updates...
[2026-06-13 09:29:54,525.525 INFO    ] 200
[2026-06-13 09:29:54,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:54,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:29:54,562.562 INFO    ] No update needed
[2026-06-13 09:29:54,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 09:29:54,586.586 INFO    ] 200
[2026-06-13 09:29:54,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:29:54,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:29:54,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:29:54,655.655 INFO    ] No camera update needed
[2026-06-13 09:29:54,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:29:54,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:29:54,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:29:54,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:29:56,702.702 INFO    ] ================================================
[2026-06-13 09:29:56,717.717 INFO    ] Launching Daemon at Sat Jun 13 09:29:56 IST 2026
[2026-06-13 09:29:56,729.729 INFO    ] ================================================
[2026-06-13 09:29:57,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:29:57
[2026-06-13 09:29:57,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:29:57,543.543 INFO    ] Initializing speech engine...
[2026-06-13 09:29:57,548.548 INFO    ] 2026-06-13 09:29:57
[2026-06-13 09:29:57,752.752 INFO    ] 2026-06-13 09:29:57
[2026-06-13 09:29:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:29:57,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:29:57,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:29:58,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:29:58,151.151 INFO    ] time= 13/06/2026 09:29:58
[2026-06-13 09:29:58,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:29:58,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:29:58,264.264 INFO    ] No existing commands found in stream
[2026-06-13 09:30:03,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:03,271.271 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 09:30:08,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:30:08,503.503 INFO    ] Checking for system updates...
[2026-06-13 09:30:08,543.543 INFO    ] 200
[2026-06-13 09:30:08,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:08,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:08,600.600 INFO    ] No update needed
[2026-06-13 09:30:08,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 09:30:08,640.640 INFO    ] 200
[2026-06-13 09:30:08,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:08,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:30:08,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:08,708.708 INFO    ] No camera update needed
[2026-06-13 09:30:08,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:30:08,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:30:08,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:30:08,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:30:10,755.755 INFO    ] ================================================
[2026-06-13 09:30:10,772.772 INFO    ] Launching Daemon at Sat Jun 13 09:30:10 IST 2026
[2026-06-13 09:30:10,783.783 INFO    ] ================================================
[2026-06-13 09:30:11,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:30:11
[2026-06-13 09:30:11,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:30:11,905.905 INFO    ] Initializing speech engine...
[2026-06-13 09:30:11,913.913 INFO    ] 2026-06-13 09:30:11
[2026-06-13 09:30:12,172.172 INFO    ] 2026-06-13 09:30:12
[2026-06-13 09:30:12,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:30:12,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:30:12,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:30:12,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:30:12,496.496 INFO    ] time= 13/06/2026 09:30:12
[2026-06-13 09:30:12,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:30:12,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:30:12,606.606 INFO    ] No existing commands found in stream
[2026-06-13 09:30:17,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:17,623.623 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 09:30:17,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:30:17,952.952 INFO    ] Checking for system updates...
[2026-06-13 09:30:17,973.973 INFO    ] 200
[2026-06-13 09:30:17,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:18,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:18,007.007 INFO    ] No update needed
[2026-06-13 09:30:18,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 09:30:18,032.032 INFO    ] 200
[2026-06-13 09:30:18,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:18,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:30:18,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:18,101.101 INFO    ] No camera update needed
[2026-06-13 09:30:18,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:30:18,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:30:18,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:30:18,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:30:20,150.150 INFO    ] ================================================
[2026-06-13 09:30:20,166.166 INFO    ] Launching Daemon at Sat Jun 13 09:30:20 IST 2026
[2026-06-13 09:30:20,177.177 INFO    ] ================================================
[2026-06-13 09:30:20,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:30:20
[2026-06-13 09:30:20,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:30:20,967.967 INFO    ] Initializing speech engine...
[2026-06-13 09:30:20,972.972 INFO    ] 2026-06-13 09:30:20
[2026-06-13 09:30:21,176.176 INFO    ] 2026-06-13 09:30:21
[2026-06-13 09:30:21,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:30:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:30:21,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:30:21,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:30:21,527.527 INFO    ] time= 13/06/2026 09:30:21
[2026-06-13 09:30:21,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:30:21,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:30:21,711.711 INFO    ] No existing commands found in stream
[2026-06-13 09:30:26,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:26,724.724 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 09:30:27,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:30:27,671.671 INFO    ] Checking for system updates...
[2026-06-13 09:30:27,693.693 INFO    ] 200
[2026-06-13 09:30:27,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:27,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:30:27,729.729 INFO    ] No update needed
[2026-06-13 09:30:27,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 09:30:27,750.750 INFO    ] 200
[2026-06-13 09:30:27,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:27,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:30:27,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:30:27,802.802 INFO    ] No camera update needed
[2026-06-13 09:30:27,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:30:27,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:30:27,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:30:27,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:30:29,851.851 INFO    ] ================================================
[2026-06-13 09:30:29,867.867 INFO    ] Launching Daemon at Sat Jun 13 09:30:29 IST 2026
[2026-06-13 09:30:29,878.878 INFO    ] ================================================
[2026-06-13 09:30:30,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:30:30
[2026-06-13 09:30:30,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:30:30,683.683 INFO    ] Initializing speech engine...
[2026-06-13 09:30:30,691.691 INFO    ] 2026-06-13 09:30:30
[2026-06-13 09:30:30,904.904 INFO    ] 2026-06-13 09:30:30
[2026-06-13 09:30:30,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:30:31,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:30:31,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:30:31,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:30:31,313.313 INFO    ] time= 13/06/2026 09:30:31
[2026-06-13 09:30:31,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:30:31,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:30:31,418.418 INFO    ] No existing commands found in stream
[2026-06-13 09:30:36,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:36,430.430 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 09:30:37,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:30:37,834.834 INFO    ] Checking for system updates...
[2026-06-13 09:30:37,856.856 INFO    ] 200
[2026-06-13 09:30:37,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:37,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:37,892.892 INFO    ] No update needed
[2026-06-13 09:30:37,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 09:30:37,915.915 INFO    ] 200
[2026-06-13 09:30:37,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:37,941.941 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:30:37,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:30:37,983.983 INFO    ] No camera update needed
[2026-06-13 09:30:37,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:30:37,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:30:37,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:30:37,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:30:40,030.030 INFO    ] ================================================
[2026-06-13 09:30:40,046.046 INFO    ] Launching Daemon at Sat Jun 13 09:30:40 IST 2026
[2026-06-13 09:30:40,057.057 INFO    ] ================================================
[2026-06-13 09:30:40,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:30:40
[2026-06-13 09:30:40,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:30:40,879.879 INFO    ] Initializing speech engine...
[2026-06-13 09:30:40,889.889 INFO    ] 2026-06-13 09:30:40
[2026-06-13 09:30:41,093.093 INFO    ] 2026-06-13 09:30:41
[2026-06-13 09:30:41,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:30:41,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:30:41,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:30:41,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:30:41,479.479 INFO    ] time= 13/06/2026 09:30:41
[2026-06-13 09:30:41,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:30:41,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:30:41,619.619 INFO    ] No existing commands found in stream
[2026-06-13 09:30:46,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:46,633.633 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 09:30:50,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:30:50,746.746 INFO    ] Checking for system updates...
[2026-06-13 09:30:50,767.767 INFO    ] 200
[2026-06-13 09:30:50,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:50,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:30:50,804.804 INFO    ] No update needed
[2026-06-13 09:30:50,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 09:30:50,829.829 INFO    ] 200
[2026-06-13 09:30:50,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:30:50,855.855 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:30:50,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:30:50,896.896 INFO    ] No camera update needed
[2026-06-13 09:30:50,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:30:50,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:30:50,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:30:50,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:30:52,944.944 INFO    ] ================================================
[2026-06-13 09:30:52,961.961 INFO    ] Launching Daemon at Sat Jun 13 09:30:52 IST 2026
[2026-06-13 09:30:52,972.972 INFO    ] ================================================
[2026-06-13 09:30:53,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:30:53
[2026-06-13 09:30:53,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:30:53,777.777 INFO    ] Initializing speech engine...
[2026-06-13 09:30:53,782.782 INFO    ] 2026-06-13 09:30:53
[2026-06-13 09:30:53,987.987 INFO    ] 2026-06-13 09:30:53
[2026-06-13 09:30:54,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:30:54,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:30:54,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:30:54,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:30:54,399.399 INFO    ] time= 13/06/2026 09:30:54
[2026-06-13 09:30:54,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:30:54,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:30:54,512.512 INFO    ] No existing commands found in stream
[2026-06-13 09:30:59,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:30:59,524.524 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 09:31:01,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:31:01,793.793 INFO    ] Checking for system updates...
[2026-06-13 09:31:01,866.866 INFO    ] 200
[2026-06-13 09:31:01,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:01,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:31:01,975.975 INFO    ] No update needed
[2026-06-13 09:31:01,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:02,018.018 INFO    ] 200
[2026-06-13 09:31:02,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:02,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:02,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:31:02,216.216 INFO    ] No camera update needed
[2026-06-13 09:31:02,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:02,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:02,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:02,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:31:04,280.280 INFO    ] ================================================
[2026-06-13 09:31:04,295.295 INFO    ] Launching Daemon at Sat Jun 13 09:31:04 IST 2026
[2026-06-13 09:31:04,306.306 INFO    ] ================================================
[2026-06-13 09:31:04,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:31:04
[2026-06-13 09:31:05,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:31:05,210.210 INFO    ] Initializing speech engine...
[2026-06-13 09:31:05,218.218 INFO    ] 2026-06-13 09:31:05
[2026-06-13 09:31:05,445.445 INFO    ] 2026-06-13 09:31:05
[2026-06-13 09:31:05,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:31:05,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:31:05,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:31:05,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:31:05,858.858 INFO    ] time= 13/06/2026 09:31:05
[2026-06-13 09:31:05,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:31:05,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:31:06,007.007 INFO    ] No existing commands found in stream
[2026-06-13 09:31:11,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:31:11,021.021 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 09:31:14,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:31:14,102.102 INFO    ] Checking for system updates...
[2026-06-13 09:31:14,124.124 INFO    ] 200
[2026-06-13 09:31:14,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:14,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:14,160.160 INFO    ] No update needed
[2026-06-13 09:31:14,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:14,182.182 INFO    ] 200
[2026-06-13 09:31:14,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:14,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:14,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:31:14,251.251 INFO    ] No camera update needed
[2026-06-13 09:31:14,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:14,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:14,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:14,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:31:16,299.299 INFO    ] ================================================
[2026-06-13 09:31:16,315.315 INFO    ] Launching Daemon at Sat Jun 13 09:31:16 IST 2026
[2026-06-13 09:31:16,326.326 INFO    ] ================================================
[2026-06-13 09:31:16,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:31:16
[2026-06-13 09:31:16,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:31:17,097.097 INFO    ] Initializing speech engine...
[2026-06-13 09:31:17,101.101 INFO    ] 2026-06-13 09:31:17
[2026-06-13 09:31:17,299.299 INFO    ] 2026-06-13 09:31:17
[2026-06-13 09:31:17,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:31:17,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:31:17,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:31:17,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:31:17,756.756 INFO    ] time= 13/06/2026 09:31:17
[2026-06-13 09:31:17,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:31:17,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:31:17,895.895 INFO    ] No existing commands found in stream
[2026-06-13 09:31:22,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:31:22,906.906 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 09:31:25,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:31:25,914.914 INFO    ] Checking for system updates...
[2026-06-13 09:31:25,936.936 INFO    ] 200
[2026-06-13 09:31:25,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:25,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:25,971.971 INFO    ] No update needed
[2026-06-13 09:31:25,973.973 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:25,993.993 INFO    ] 200
[2026-06-13 09:31:25,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:26,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:26,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:26,058.058 INFO    ] No camera update needed
[2026-06-13 09:31:26,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:26,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:26,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:26,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:31:28,105.105 INFO    ] ================================================
[2026-06-13 09:31:28,121.121 INFO    ] Launching Daemon at Sat Jun 13 09:31:28 IST 2026
[2026-06-13 09:31:28,131.131 INFO    ] ================================================
[2026-06-13 09:31:28,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:31:28
[2026-06-13 09:31:28,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:31:28,929.929 INFO    ] Initializing speech engine...
[2026-06-13 09:31:28,935.935 INFO    ] 2026-06-13 09:31:28
[2026-06-13 09:31:29,141.141 INFO    ] 2026-06-13 09:31:29
[2026-06-13 09:31:29,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:31:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:31:29,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:31:29,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:31:29,546.546 INFO    ] time= 13/06/2026 09:31:29
[2026-06-13 09:31:29,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:31:29,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:31:29,657.657 INFO    ] No existing commands found in stream
[2026-06-13 09:31:34,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:31:34,671.671 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 09:31:38,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:31:38,199.199 INFO    ] Checking for system updates...
[2026-06-13 09:31:38,223.223 INFO    ] 200
[2026-06-13 09:31:38,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:38,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:31:38,256.256 INFO    ] No update needed
[2026-06-13 09:31:38,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:38,277.277 INFO    ] 200
[2026-06-13 09:31:38,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:38,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:38,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:31:38,349.349 INFO    ] No camera update needed
[2026-06-13 09:31:38,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:38,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:38,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:38,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:31:40,398.398 INFO    ] ================================================
[2026-06-13 09:31:40,413.413 INFO    ] Launching Daemon at Sat Jun 13 09:31:40 IST 2026
[2026-06-13 09:31:40,424.424 INFO    ] ================================================
[2026-06-13 09:31:40,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:31:40
[2026-06-13 09:31:41,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:31:41,286.286 INFO    ] Initializing speech engine...
[2026-06-13 09:31:41,297.297 INFO    ] 2026-06-13 09:31:41
[2026-06-13 09:31:41,501.501 INFO    ] 2026-06-13 09:31:41
[2026-06-13 09:31:41,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:31:41,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:31:41,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:31:41,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:31:41,903.903 INFO    ] time= 13/06/2026 09:31:41
[2026-06-13 09:31:41,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:31:41,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:31:42,018.018 INFO    ] No existing commands found in stream
[2026-06-13 09:31:47,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:31:47,030.030 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 09:31:49,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:31:49,134.134 INFO    ] Checking for system updates...
[2026-06-13 09:31:49,156.156 INFO    ] 200
[2026-06-13 09:31:49,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:49,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:49,192.192 INFO    ] No update needed
[2026-06-13 09:31:49,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:49,213.213 INFO    ] 200
[2026-06-13 09:31:49,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:49,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:49,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:49,279.279 INFO    ] No camera update needed
[2026-06-13 09:31:49,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:49,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:49,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:49,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:31:51,326.326 INFO    ] ================================================
[2026-06-13 09:31:51,341.341 INFO    ] Launching Daemon at Sat Jun 13 09:31:51 IST 2026
[2026-06-13 09:31:51,352.352 INFO    ] ================================================
[2026-06-13 09:31:51,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:31:51
[2026-06-13 09:31:52,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:31:52,278.278 INFO    ] Initializing speech engine...
[2026-06-13 09:31:52,293.293 INFO    ] 2026-06-13 09:31:52
[2026-06-13 09:31:52,562.562 INFO    ] 2026-06-13 09:31:52
[2026-06-13 09:31:52,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:31:52,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:31:52,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:31:52,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:31:52,921.921 INFO    ] time= 13/06/2026 09:31:52
[2026-06-13 09:31:52,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:31:52,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:31:53,018.018 INFO    ] No existing commands found in stream
[2026-06-13 09:31:58,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:31:58,033.033 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 09:31:58,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:31:58,582.582 INFO    ] Checking for system updates...
[2026-06-13 09:31:58,604.604 INFO    ] 200
[2026-06-13 09:31:58,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:58,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:58,640.640 INFO    ] No update needed
[2026-06-13 09:31:58,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 09:31:58,663.663 INFO    ] 200
[2026-06-13 09:31:58,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:31:58,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:31:58,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:31:58,729.729 INFO    ] No camera update needed
[2026-06-13 09:31:58,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:31:58,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:31:58,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:31:58,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:32:00,778.778 INFO    ] ================================================
[2026-06-13 09:32:00,794.794 INFO    ] Launching Daemon at Sat Jun 13 09:32:00 IST 2026
[2026-06-13 09:32:00,804.804 INFO    ] ================================================
[2026-06-13 09:32:01,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:32:01
[2026-06-13 09:32:01,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:32:01,797.797 INFO    ] Initializing speech engine...
[2026-06-13 09:32:01,810.810 INFO    ] 2026-06-13 09:32:01
[2026-06-13 09:32:02,025.025 INFO    ] 2026-06-13 09:32:02
[2026-06-13 09:32:02,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:32:02,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:32:02,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:32:02,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:32:02,373.373 INFO    ] time= 13/06/2026 09:32:02
[2026-06-13 09:32:02,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:32:02,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:32:02,556.556 INFO    ] No existing commands found in stream
[2026-06-13 09:32:07,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:32:07,582.582 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 09:32:11,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:32:11,307.307 INFO    ] Checking for system updates...
[2026-06-13 09:32:11,328.328 INFO    ] 200
[2026-06-13 09:32:11,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:11,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:32:11,365.365 INFO    ] No update needed
[2026-06-13 09:32:11,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 09:32:11,388.388 INFO    ] 200
[2026-06-13 09:32:11,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:11,417.417 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:32:11,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:32:11,459.459 INFO    ] No camera update needed
[2026-06-13 09:32:11,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:32:11,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:32:11,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:32:11,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:32:13,510.510 INFO    ] ================================================
[2026-06-13 09:32:13,526.526 INFO    ] Launching Daemon at Sat Jun 13 09:32:13 IST 2026
[2026-06-13 09:32:13,536.536 INFO    ] ================================================
[2026-06-13 09:32:13,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:32:13
[2026-06-13 09:32:14,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:32:14,343.343 INFO    ] Initializing speech engine...
[2026-06-13 09:32:14,349.349 INFO    ] 2026-06-13 09:32:14
[2026-06-13 09:32:14,541.541 INFO    ] 2026-06-13 09:32:14
[2026-06-13 09:32:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:32:14,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:32:14,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:32:14,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:32:14,947.947 INFO    ] time= 13/06/2026 09:32:14
[2026-06-13 09:32:15,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:32:15,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:32:15,180.180 INFO    ] No existing commands found in stream
[2026-06-13 09:32:20,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:32:20,219.219 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 09:32:24,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:32:24,472.472 INFO    ] Checking for system updates...
[2026-06-13 09:32:24,494.494 INFO    ] 200
[2026-06-13 09:32:24,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:24,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:24,531.531 INFO    ] No update needed
[2026-06-13 09:32:24,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 09:32:24,551.551 INFO    ] 200
[2026-06-13 09:32:24,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:24,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:32:24,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:24,615.615 INFO    ] No camera update needed
[2026-06-13 09:32:24,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:32:24,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:32:24,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:32:24,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:32:26,664.664 INFO    ] ================================================
[2026-06-13 09:32:26,680.680 INFO    ] Launching Daemon at Sat Jun 13 09:32:26 IST 2026
[2026-06-13 09:32:26,690.690 INFO    ] ================================================
[2026-06-13 09:32:27,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:32:27
[2026-06-13 09:32:27,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:32:27,535.535 INFO    ] Initializing speech engine...
[2026-06-13 09:32:27,547.547 INFO    ] 2026-06-13 09:32:27
[2026-06-13 09:32:27,761.761 INFO    ] 2026-06-13 09:32:27
[2026-06-13 09:32:27,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:32:27,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:32:27,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:32:28,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:32:28,168.168 INFO    ] time= 13/06/2026 09:32:28
[2026-06-13 09:32:28,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:32:28,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:32:28,291.291 INFO    ] No existing commands found in stream
[2026-06-13 09:32:33,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:32:33,305.305 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 09:32:37,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:32:37,187.187 INFO    ] Checking for system updates...
[2026-06-13 09:32:37,210.210 INFO    ] 200
[2026-06-13 09:32:37,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:37,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:37,247.247 INFO    ] No update needed
[2026-06-13 09:32:37,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 09:32:37,271.271 INFO    ] 200
[2026-06-13 09:32:37,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:37,298.298 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:32:37,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:37,341.341 INFO    ] No camera update needed
[2026-06-13 09:32:37,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:32:37,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:32:37,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:32:37,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:32:39,392.392 INFO    ] ================================================
[2026-06-13 09:32:39,408.408 INFO    ] Launching Daemon at Sat Jun 13 09:32:39 IST 2026
[2026-06-13 09:32:39,420.420 INFO    ] ================================================
[2026-06-13 09:32:39,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:32:39
[2026-06-13 09:32:40,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:32:40,203.203 INFO    ] Initializing speech engine...
[2026-06-13 09:32:40,208.208 INFO    ] 2026-06-13 09:32:40
[2026-06-13 09:32:40,426.426 INFO    ] 2026-06-13 09:32:40
[2026-06-13 09:32:40,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:32:40,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:32:40,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:32:40,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:32:40,826.826 INFO    ] time= 13/06/2026 09:32:40
[2026-06-13 09:32:40,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:32:40,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:32:40,948.948 INFO    ] No existing commands found in stream
[2026-06-13 09:32:45,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:32:45,961.961 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 09:32:47,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:32:47,804.804 INFO    ] Checking for system updates...
[2026-06-13 09:32:47,827.827 INFO    ] 200
[2026-06-13 09:32:47,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:47,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:47,863.863 INFO    ] No update needed
[2026-06-13 09:32:47,865.865 INFO    ] Checking for camera pi updates...
[2026-06-13 09:32:47,885.885 INFO    ] 200
[2026-06-13 09:32:47,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:47,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:32:47,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:32:47,946.946 INFO    ] No camera update needed
[2026-06-13 09:32:47,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:32:47,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:32:47,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:32:47,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:32:50,996.996 INFO    ] ================================================
[2026-06-13 09:32:50,011.011 INFO    ] Launching Daemon at Sat Jun 13 09:32:50 IST 2026
[2026-06-13 09:32:50,022.022 INFO    ] ================================================
[2026-06-13 09:32:50,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:32:50
[2026-06-13 09:32:50,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:32:50,845.845 INFO    ] Initializing speech engine...
[2026-06-13 09:32:50,850.850 INFO    ] 2026-06-13 09:32:50
[2026-06-13 09:32:51,056.056 INFO    ] 2026-06-13 09:32:51
[2026-06-13 09:32:51,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:32:51,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:32:51,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:32:51,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:32:51,456.456 INFO    ] time= 13/06/2026 09:32:51
[2026-06-13 09:32:51,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:32:51,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:32:51,572.572 INFO    ] No existing commands found in stream
[2026-06-13 09:32:56,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:32:56,594.594 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 09:32:59,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:32:59,059.059 INFO    ] Checking for system updates...
[2026-06-13 09:32:59,085.085 INFO    ] 200
[2026-06-13 09:32:59,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:59,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:59,134.134 INFO    ] No update needed
[2026-06-13 09:32:59,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 09:32:59,160.160 INFO    ] 200
[2026-06-13 09:32:59,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:32:59,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:32:59,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:32:59,233.233 INFO    ] No camera update needed
[2026-06-13 09:32:59,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:32:59,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:32:59,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:32:59,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:01,290.290 INFO    ] ================================================
[2026-06-13 09:33:01,305.305 INFO    ] Launching Daemon at Sat Jun 13 09:33:01 IST 2026
[2026-06-13 09:33:01,316.316 INFO    ] ================================================
[2026-06-13 09:33:02,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:02
[2026-06-13 09:33:02,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:02,858.858 INFO    ] Initializing speech engine...
[2026-06-13 09:33:02,860.860 INFO    ] 2026-06-13 09:33:02
[2026-06-13 09:33:03,069.069 INFO    ] 2026-06-13 09:33:03
[2026-06-13 09:33:03,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:03,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:03,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:03,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:03,449.449 INFO    ] time= 13/06/2026 09:33:03
[2026-06-13 09:33:03,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:03,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:03,624.624 INFO    ] No existing commands found in stream
[2026-06-13 09:33:08,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:33:08,637.637 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 09:33:10,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:33:10,057.057 INFO    ] Checking for system updates...
[2026-06-13 09:33:10,078.078 INFO    ] 200
[2026-06-13 09:33:10,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:10,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:33:10,112.112 INFO    ] No update needed
[2026-06-13 09:33:10,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 09:33:10,135.135 INFO    ] 200
[2026-06-13 09:33:10,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:10,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:33:10,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:33:10,299.299 INFO    ] No camera update needed
[2026-06-13 09:33:10,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:33:10,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:33:10,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:33:10,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:12,348.348 INFO    ] ================================================
[2026-06-13 09:33:12,364.364 INFO    ] Launching Daemon at Sat Jun 13 09:33:12 IST 2026
[2026-06-13 09:33:12,374.374 INFO    ] ================================================
[2026-06-13 09:33:12,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:12
[2026-06-13 09:33:13,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:13,197.197 INFO    ] Initializing speech engine...
[2026-06-13 09:33:13,206.206 INFO    ] 2026-06-13 09:33:13
[2026-06-13 09:33:13,425.425 INFO    ] 2026-06-13 09:33:13
[2026-06-13 09:33:13,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:13,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:13,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:13,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:13,838.838 INFO    ] time= 13/06/2026 09:33:13
[2026-06-13 09:33:13,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:13,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:13,950.950 INFO    ] No existing commands found in stream
[2026-06-13 09:33:18,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:33:18,964.964 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 09:33:22,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:33:22,429.429 INFO    ] Checking for system updates...
[2026-06-13 09:33:22,451.451 INFO    ] 200
[2026-06-13 09:33:22,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:22,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:22,487.487 INFO    ] No update needed
[2026-06-13 09:33:22,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 09:33:22,510.510 INFO    ] 200
[2026-06-13 09:33:22,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:22,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:33:22,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:22,571.571 INFO    ] No camera update needed
[2026-06-13 09:33:22,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:33:22,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:33:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:33:22,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:24,619.619 INFO    ] ================================================
[2026-06-13 09:33:24,634.634 INFO    ] Launching Daemon at Sat Jun 13 09:33:24 IST 2026
[2026-06-13 09:33:24,644.644 INFO    ] ================================================
[2026-06-13 09:33:24,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:24
[2026-06-13 09:33:25,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:25,440.440 INFO    ] Initializing speech engine...
[2026-06-13 09:33:25,451.451 INFO    ] 2026-06-13 09:33:25
[2026-06-13 09:33:25,666.666 INFO    ] 2026-06-13 09:33:25
[2026-06-13 09:33:25,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:25,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:25,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:25,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:26,037.037 INFO    ] time= 13/06/2026 09:33:25
[2026-06-13 09:33:26,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:26,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:26,223.223 INFO    ] No existing commands found in stream
[2026-06-13 09:33:31,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:33:31,237.237 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 09:33:35,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:33:35,227.227 INFO    ] Checking for system updates...
[2026-06-13 09:33:35,248.248 INFO    ] 200
[2026-06-13 09:33:35,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:35,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:35,282.282 INFO    ] No update needed
[2026-06-13 09:33:35,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 09:33:35,306.306 INFO    ] 200
[2026-06-13 09:33:35,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:35,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:33:35,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:35,370.370 INFO    ] No camera update needed
[2026-06-13 09:33:35,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:33:35,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:33:35,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:33:35,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:37,419.419 INFO    ] ================================================
[2026-06-13 09:33:37,434.434 INFO    ] Launching Daemon at Sat Jun 13 09:33:37 IST 2026
[2026-06-13 09:33:37,445.445 INFO    ] ================================================
[2026-06-13 09:33:37,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:37
[2026-06-13 09:33:38,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:38,232.232 INFO    ] Initializing speech engine...
[2026-06-13 09:33:38,237.237 INFO    ] 2026-06-13 09:33:38
[2026-06-13 09:33:38,440.440 INFO    ] 2026-06-13 09:33:38
[2026-06-13 09:33:38,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:38,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:38,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:38,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:38,853.853 INFO    ] time= 13/06/2026 09:33:38
[2026-06-13 09:33:38,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:38,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:39,064.064 INFO    ] No existing commands found in stream
[2026-06-13 09:33:44,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:33:44,085.085 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 09:33:45,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:33:45,652.652 INFO    ] Checking for system updates...
[2026-06-13 09:33:45,673.673 INFO    ] 200
[2026-06-13 09:33:45,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:45,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:45,708.708 INFO    ] No update needed
[2026-06-13 09:33:45,710.710 INFO    ] Checking for camera pi updates...
[2026-06-13 09:33:45,733.733 INFO    ] 200
[2026-06-13 09:33:45,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:45,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:33:45,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:33:45,799.799 INFO    ] No camera update needed
[2026-06-13 09:33:45,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:33:45,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:33:45,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:33:45,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:47,848.848 INFO    ] ================================================
[2026-06-13 09:33:47,863.863 INFO    ] Launching Daemon at Sat Jun 13 09:33:47 IST 2026
[2026-06-13 09:33:47,874.874 INFO    ] ================================================
[2026-06-13 09:33:48,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:48
[2026-06-13 09:33:48,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:48,750.750 INFO    ] Initializing speech engine...
[2026-06-13 09:33:48,755.755 INFO    ] 2026-06-13 09:33:48
[2026-06-13 09:33:48,960.960 INFO    ] 2026-06-13 09:33:48
[2026-06-13 09:33:48,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:49,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:49,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:49,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:49,361.361 INFO    ] time= 13/06/2026 09:33:49
[2026-06-13 09:33:49,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:49,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:49,476.476 INFO    ] No existing commands found in stream
[2026-06-13 09:33:54,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:33:54,494.494 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 09:33:55,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:33:55,192.192 INFO    ] Checking for system updates...
[2026-06-13 09:33:55,214.214 INFO    ] 200
[2026-06-13 09:33:55,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:55,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:33:55,247.247 INFO    ] No update needed
[2026-06-13 09:33:55,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 09:33:55,268.268 INFO    ] 200
[2026-06-13 09:33:55,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:33:55,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:33:55,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:33:55,336.336 INFO    ] No camera update needed
[2026-06-13 09:33:55,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:33:55,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:33:55,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:33:55,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:33:57,386.386 INFO    ] ================================================
[2026-06-13 09:33:57,401.401 INFO    ] Launching Daemon at Sat Jun 13 09:33:57 IST 2026
[2026-06-13 09:33:57,413.413 INFO    ] ================================================
[2026-06-13 09:33:57,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:33:57
[2026-06-13 09:33:58,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:33:58,268.268 INFO    ] Initializing speech engine...
[2026-06-13 09:33:58,274.274 INFO    ] 2026-06-13 09:33:58
[2026-06-13 09:33:58,482.482 INFO    ] 2026-06-13 09:33:58
[2026-06-13 09:33:58,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:33:58,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:33:58,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:33:58,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:33:58,900.900 INFO    ] time= 13/06/2026 09:33:58
[2026-06-13 09:33:58,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:33:58,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:33:58,996.996 INFO    ] No existing commands found in stream
[2026-06-13 09:34:04,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:34:04,014.014 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 09:34:07,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:34:07,577.577 INFO    ] Checking for system updates...
[2026-06-13 09:34:07,599.599 INFO    ] 200
[2026-06-13 09:34:07,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:07,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:34:07,633.633 INFO    ] No update needed
[2026-06-13 09:34:07,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 09:34:07,654.654 INFO    ] 200
[2026-06-13 09:34:07,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:07,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:34:07,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:34:07,716.716 INFO    ] No camera update needed
[2026-06-13 09:34:07,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:34:07,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:34:07,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:34:07,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:34:09,765.765 INFO    ] ================================================
[2026-06-13 09:34:09,780.780 INFO    ] Launching Daemon at Sat Jun 13 09:34:09 IST 2026
[2026-06-13 09:34:09,794.794 INFO    ] ================================================
[2026-06-13 09:34:10,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:34:10
[2026-06-13 09:34:10,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:34:10,593.593 INFO    ] Initializing speech engine...
[2026-06-13 09:34:10,601.601 INFO    ] 2026-06-13 09:34:10
[2026-06-13 09:34:10,809.809 INFO    ] 2026-06-13 09:34:10
[2026-06-13 09:34:10,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:34:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:34:11,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:34:11,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:34:11,446.446 INFO    ] time= 13/06/2026 09:34:11
[2026-06-13 09:34:11,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:34:11,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:34:11,495.495 INFO    ] No existing commands found in stream
[2026-06-13 09:34:16,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:34:16,507.507 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 09:34:20,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:34:20,327.327 INFO    ] Checking for system updates...
[2026-06-13 09:34:20,348.348 INFO    ] 200
[2026-06-13 09:34:20,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:20,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:20,383.383 INFO    ] No update needed
[2026-06-13 09:34:20,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 09:34:20,404.404 INFO    ] 200
[2026-06-13 09:34:20,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:20,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:34:20,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:20,472.472 INFO    ] No camera update needed
[2026-06-13 09:34:20,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:34:20,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:34:20,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:34:20,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:34:22,520.520 INFO    ] ================================================
[2026-06-13 09:34:22,535.535 INFO    ] Launching Daemon at Sat Jun 13 09:34:22 IST 2026
[2026-06-13 09:34:22,545.545 INFO    ] ================================================
[2026-06-13 09:34:22,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:34:22
[2026-06-13 09:34:23,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:34:23,417.417 INFO    ] Initializing speech engine...
[2026-06-13 09:34:23,423.423 INFO    ] 2026-06-13 09:34:23
[2026-06-13 09:34:23,634.634 INFO    ] 2026-06-13 09:34:23
[2026-06-13 09:34:23,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:34:23,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:34:23,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:34:23,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:34:24,064.064 INFO    ] time= 13/06/2026 09:34:24
[2026-06-13 09:34:24,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:34:24,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:34:24,160.160 INFO    ] No existing commands found in stream
[2026-06-13 09:34:29,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:34:29,174.174 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 09:34:30,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:34:30,221.221 INFO    ] Checking for system updates...
[2026-06-13 09:34:30,243.243 INFO    ] 200
[2026-06-13 09:34:30,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:30,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:30,276.276 INFO    ] No update needed
[2026-06-13 09:34:30,278.278 INFO    ] Checking for camera pi updates...
[2026-06-13 09:34:30,298.298 INFO    ] 200
[2026-06-13 09:34:30,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:30,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:34:30,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:30,361.361 INFO    ] No camera update needed
[2026-06-13 09:34:30,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:34:30,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:34:30,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:34:30,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:34:32,410.410 INFO    ] ================================================
[2026-06-13 09:34:32,425.425 INFO    ] Launching Daemon at Sat Jun 13 09:34:32 IST 2026
[2026-06-13 09:34:32,436.436 INFO    ] ================================================
[2026-06-13 09:34:32,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:34:32
[2026-06-13 09:34:33,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:34:33,304.304 INFO    ] Initializing speech engine...
[2026-06-13 09:34:33,309.309 INFO    ] 2026-06-13 09:34:33
[2026-06-13 09:34:33,519.519 INFO    ] 2026-06-13 09:34:33
[2026-06-13 09:34:33,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:34:33,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:34:33,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:34:33,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:34:33,932.932 INFO    ] time= 13/06/2026 09:34:33
[2026-06-13 09:34:33,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:34:33,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:34:34,045.045 INFO    ] No existing commands found in stream
[2026-06-13 09:34:39,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:34:39,063.063 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 09:34:41,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:34:41,363.363 INFO    ] Checking for system updates...
[2026-06-13 09:34:41,383.383 INFO    ] 200
[2026-06-13 09:34:41,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:41,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:41,417.417 INFO    ] No update needed
[2026-06-13 09:34:41,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 09:34:41,438.438 INFO    ] 200
[2026-06-13 09:34:41,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:41,464.464 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:34:41,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:41,501.501 INFO    ] No camera update needed
[2026-06-13 09:34:41,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:34:41,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:34:41,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:34:41,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:34:43,553.553 INFO    ] ================================================
[2026-06-13 09:34:43,568.568 INFO    ] Launching Daemon at Sat Jun 13 09:34:43 IST 2026
[2026-06-13 09:34:43,578.578 INFO    ] ================================================
[2026-06-13 09:34:43,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:34:43
[2026-06-13 09:34:44,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:34:44,386.386 INFO    ] Initializing speech engine...
[2026-06-13 09:34:44,392.392 INFO    ] 2026-06-13 09:34:44
[2026-06-13 09:34:44,595.595 INFO    ] 2026-06-13 09:34:44
[2026-06-13 09:34:44,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:34:44,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:34:44,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:34:44,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:34:45,001.001 INFO    ] time= 13/06/2026 09:34:44
[2026-06-13 09:34:45,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:34:45,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:34:45,114.114 INFO    ] No existing commands found in stream
[2026-06-13 09:34:50,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:34:50,126.126 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 09:34:52,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:34:52,282.282 INFO    ] Checking for system updates...
[2026-06-13 09:34:52,306.306 INFO    ] 200
[2026-06-13 09:34:52,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:52,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:34:52,373.373 INFO    ] No update needed
[2026-06-13 09:34:52,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 09:34:52,395.395 INFO    ] 200
[2026-06-13 09:34:52,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:34:52,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:34:52,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:34:52,460.460 INFO    ] No camera update needed
[2026-06-13 09:34:52,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:34:52,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:34:52,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:34:52,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:34:54,511.511 INFO    ] ================================================
[2026-06-13 09:34:54,526.526 INFO    ] Launching Daemon at Sat Jun 13 09:34:54 IST 2026
[2026-06-13 09:34:54,536.536 INFO    ] ================================================
[2026-06-13 09:34:54,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:34:54
[2026-06-13 09:34:55,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:34:55,307.307 INFO    ] Initializing speech engine...
[2026-06-13 09:34:55,317.317 INFO    ] 2026-06-13 09:34:55
[2026-06-13 09:34:55,541.541 INFO    ] 2026-06-13 09:34:55
[2026-06-13 09:34:55,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:34:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:34:55,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:34:55,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:34:55,944.944 INFO    ] time= 13/06/2026 09:34:55
[2026-06-13 09:34:55,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:34:56,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:34:56,096.096 INFO    ] No existing commands found in stream
[2026-06-13 09:35:01,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:01,110.110 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 09:35:02,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:35:02,818.818 INFO    ] Checking for system updates...
[2026-06-13 09:35:02,855.855 INFO    ] 200
[2026-06-13 09:35:02,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:02,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:02,939.939 INFO    ] No update needed
[2026-06-13 09:35:02,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:02,994.994 INFO    ] 200
[2026-06-13 09:35:02,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:03,053.053 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:03,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:03,088.088 INFO    ] No camera update needed
[2026-06-13 09:35:03,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:03,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:03,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:03,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:05,154.154 INFO    ] ================================================
[2026-06-13 09:35:05,169.169 INFO    ] Launching Daemon at Sat Jun 13 09:35:05 IST 2026
[2026-06-13 09:35:05,180.180 INFO    ] ================================================
[2026-06-13 09:35:05,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:05
[2026-06-13 09:35:06,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:06,263.263 INFO    ] Initializing speech engine...
[2026-06-13 09:35:06,267.267 INFO    ] 2026-06-13 09:35:06
[2026-06-13 09:35:06,469.469 INFO    ] 2026-06-13 09:35:06
[2026-06-13 09:35:06,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:06,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:06,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:06,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:06,912.912 INFO    ] time= 13/06/2026 09:35:06
[2026-06-13 09:35:06,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:06,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:07,021.021 INFO    ] No existing commands found in stream
[2026-06-13 09:35:12,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:12,034.034 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 09:35:12,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:35:12,855.855 INFO    ] Checking for system updates...
[2026-06-13 09:35:12,876.876 INFO    ] 200
[2026-06-13 09:35:12,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:12,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:35:12,910.910 INFO    ] No update needed
[2026-06-13 09:35:12,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:12,931.931 INFO    ] 200
[2026-06-13 09:35:12,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:12,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:13,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:35:13,098.098 INFO    ] No camera update needed
[2026-06-13 09:35:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:13,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:13,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:13,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:15,146.146 INFO    ] ================================================
[2026-06-13 09:35:15,162.162 INFO    ] Launching Daemon at Sat Jun 13 09:35:15 IST 2026
[2026-06-13 09:35:15,173.173 INFO    ] ================================================
[2026-06-13 09:35:15,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:15
[2026-06-13 09:35:15,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:15,993.993 INFO    ] Initializing speech engine...
[2026-06-13 09:35:15,998.998 INFO    ] 2026-06-13 09:35:15
[2026-06-13 09:35:16,207.207 INFO    ] 2026-06-13 09:35:16
[2026-06-13 09:35:16,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:16,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:16,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:16,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:16,484.484 INFO    ] time= 13/06/2026 09:35:16
[2026-06-13 09:35:16,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:16,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:16,577.577 INFO    ] No existing commands found in stream
[2026-06-13 09:35:21,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:21,606.606 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 09:35:22,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:35:22,017.017 INFO    ] Checking for system updates...
[2026-06-13 09:35:22,038.038 INFO    ] 200
[2026-06-13 09:35:22,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:22,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:22,071.071 INFO    ] No update needed
[2026-06-13 09:35:22,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:22,093.093 INFO    ] 200
[2026-06-13 09:35:22,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:22,118.118 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:22,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:22,156.156 INFO    ] No camera update needed
[2026-06-13 09:35:22,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:22,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:22,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:22,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:24,203.203 INFO    ] ================================================
[2026-06-13 09:35:24,219.219 INFO    ] Launching Daemon at Sat Jun 13 09:35:24 IST 2026
[2026-06-13 09:35:24,230.230 INFO    ] ================================================
[2026-06-13 09:35:24,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:24
[2026-06-13 09:35:24,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:25,047.047 INFO    ] Initializing speech engine...
[2026-06-13 09:35:25,052.052 INFO    ] 2026-06-13 09:35:25
[2026-06-13 09:35:25,258.258 INFO    ] 2026-06-13 09:35:25
[2026-06-13 09:35:25,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:25,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:25,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:25,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:25,664.664 INFO    ] time= 13/06/2026 09:35:25
[2026-06-13 09:35:25,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:25,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:25,781.781 INFO    ] No existing commands found in stream
[2026-06-13 09:35:30,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:30,795.795 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 09:35:33,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:35:33,353.353 INFO    ] Checking for system updates...
[2026-06-13 09:35:33,374.374 INFO    ] 200
[2026-06-13 09:35:33,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:33,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:33,407.407 INFO    ] No update needed
[2026-06-13 09:35:33,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:33,428.428 INFO    ] 200
[2026-06-13 09:35:33,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:33,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:33,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:35:33,477.477 INFO    ] No camera update needed
[2026-06-13 09:35:33,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:33,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:33,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:33,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:35,525.525 INFO    ] ================================================
[2026-06-13 09:35:35,540.540 INFO    ] Launching Daemon at Sat Jun 13 09:35:35 IST 2026
[2026-06-13 09:35:35,552.552 INFO    ] ================================================
[2026-06-13 09:35:35,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:35
[2026-06-13 09:35:36,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:36,353.353 INFO    ] Initializing speech engine...
[2026-06-13 09:35:36,358.358 INFO    ] 2026-06-13 09:35:36
[2026-06-13 09:35:36,553.553 INFO    ] 2026-06-13 09:35:36
[2026-06-13 09:35:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:36,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:36,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:36,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:37,049.049 INFO    ] time= 13/06/2026 09:35:37
[2026-06-13 09:35:37,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:37,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:37,174.174 INFO    ] No existing commands found in stream
[2026-06-13 09:35:42,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:42,200.200 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 09:35:44,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:35:44,449.449 INFO    ] Checking for system updates...
[2026-06-13 09:35:44,470.470 INFO    ] 200
[2026-06-13 09:35:44,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:44,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:44,503.503 INFO    ] No update needed
[2026-06-13 09:35:44,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:44,523.523 INFO    ] 200
[2026-06-13 09:35:44,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:44,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:44,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:35:44,590.590 INFO    ] No camera update needed
[2026-06-13 09:35:44,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:44,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:44,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:44,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:46,636.636 INFO    ] ================================================
[2026-06-13 09:35:46,652.652 INFO    ] Launching Daemon at Sat Jun 13 09:35:46 IST 2026
[2026-06-13 09:35:46,663.663 INFO    ] ================================================
[2026-06-13 09:35:47,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:47
[2026-06-13 09:35:47,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:47,485.485 INFO    ] Initializing speech engine...
[2026-06-13 09:35:47,491.491 INFO    ] 2026-06-13 09:35:47
[2026-06-13 09:35:47,700.700 INFO    ] 2026-06-13 09:35:47
[2026-06-13 09:35:47,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:47,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:47,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:48,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:48,133.133 INFO    ] time= 13/06/2026 09:35:48
[2026-06-13 09:35:48,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:48,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:48,270.270 INFO    ] No existing commands found in stream
[2026-06-13 09:35:53,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:35:53,301.301 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 09:35:55,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:35:55,909.909 INFO    ] Checking for system updates...
[2026-06-13 09:35:55,930.930 INFO    ] 200
[2026-06-13 09:35:55,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:55,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:35:55,965.965 INFO    ] No update needed
[2026-06-13 09:35:55,967.967 INFO    ] Checking for camera pi updates...
[2026-06-13 09:35:55,986.986 INFO    ] 200
[2026-06-13 09:35:55,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:35:56,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:35:56,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:35:56,052.052 INFO    ] No camera update needed
[2026-06-13 09:35:56,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:35:56,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:35:56,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:35:56,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:35:58,100.100 INFO    ] ================================================
[2026-06-13 09:35:58,116.116 INFO    ] Launching Daemon at Sat Jun 13 09:35:58 IST 2026
[2026-06-13 09:35:58,127.127 INFO    ] ================================================
[2026-06-13 09:35:58,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:35:58
[2026-06-13 09:35:58,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:35:58,936.936 INFO    ] Initializing speech engine...
[2026-06-13 09:35:58,950.950 INFO    ] 2026-06-13 09:35:58
[2026-06-13 09:35:59,222.222 INFO    ] 2026-06-13 09:35:59
[2026-06-13 09:35:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:35:59,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:35:59,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:35:59,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:35:59,570.570 INFO    ] time= 13/06/2026 09:35:59
[2026-06-13 09:35:59,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:35:59,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:35:59,683.683 INFO    ] No existing commands found in stream
[2026-06-13 09:36:04,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:04,698.698 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 09:36:05,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:36:05,625.625 INFO    ] Checking for system updates...
[2026-06-13 09:36:05,648.648 INFO    ] 200
[2026-06-13 09:36:05,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:05,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:05,682.682 INFO    ] No update needed
[2026-06-13 09:36:05,683.683 INFO    ] Checking for camera pi updates...
[2026-06-13 09:36:05,702.702 INFO    ] 200
[2026-06-13 09:36:05,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:05,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:36:05,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:05,771.771 INFO    ] No camera update needed
[2026-06-13 09:36:05,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:36:05,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:36:05,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:36:05,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:36:07,819.819 INFO    ] ================================================
[2026-06-13 09:36:07,835.835 INFO    ] Launching Daemon at Sat Jun 13 09:36:07 IST 2026
[2026-06-13 09:36:07,847.847 INFO    ] ================================================
[2026-06-13 09:36:08,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:36:08
[2026-06-13 09:36:08,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:36:08,647.647 INFO    ] Initializing speech engine...
[2026-06-13 09:36:08,653.653 INFO    ] 2026-06-13 09:36:08
[2026-06-13 09:36:08,856.856 INFO    ] 2026-06-13 09:36:08
[2026-06-13 09:36:08,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:36:09,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:36:09,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:36:09,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:36:09,257.257 INFO    ] time= 13/06/2026 09:36:09
[2026-06-13 09:36:09,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:36:09,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:36:09,377.377 INFO    ] No existing commands found in stream
[2026-06-13 09:36:14,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:14,389.389 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 09:36:18,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:36:18,271.271 INFO    ] Checking for system updates...
[2026-06-13 09:36:18,292.292 INFO    ] 200
[2026-06-13 09:36:18,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:18,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:36:18,325.325 INFO    ] No update needed
[2026-06-13 09:36:18,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 09:36:18,346.346 INFO    ] 200
[2026-06-13 09:36:18,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:18,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:36:18,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:36:18,419.419 INFO    ] No camera update needed
[2026-06-13 09:36:18,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:36:18,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:36:18,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:36:18,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:36:20,469.469 INFO    ] ================================================
[2026-06-13 09:36:20,485.485 INFO    ] Launching Daemon at Sat Jun 13 09:36:20 IST 2026
[2026-06-13 09:36:20,496.496 INFO    ] ================================================
[2026-06-13 09:36:20,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:36:20
[2026-06-13 09:36:21,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:36:21,316.316 INFO    ] Initializing speech engine...
[2026-06-13 09:36:21,321.321 INFO    ] 2026-06-13 09:36:21
[2026-06-13 09:36:21,526.526 INFO    ] 2026-06-13 09:36:21
[2026-06-13 09:36:21,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:36:21,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:36:21,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:36:21,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:36:21,938.938 INFO    ] time= 13/06/2026 09:36:21
[2026-06-13 09:36:21,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:36:22,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:36:22,174.174 INFO    ] No existing commands found in stream
[2026-06-13 09:36:27,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:27,212.212 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 09:36:30,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:36:30,541.541 INFO    ] Checking for system updates...
[2026-06-13 09:36:30,577.577 INFO    ] 200
[2026-06-13 09:36:30,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:30,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:30,632.632 INFO    ] No update needed
[2026-06-13 09:36:30,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 09:36:30,655.655 INFO    ] 200
[2026-06-13 09:36:30,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:30,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:36:30,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:30,720.720 INFO    ] No camera update needed
[2026-06-13 09:36:30,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:36:30,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:36:30,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:36:30,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:36:32,752.752 INFO    ] ================================================
[2026-06-13 09:36:32,762.762 INFO    ] Launching Daemon at Sat Jun 13 09:36:32 IST 2026
[2026-06-13 09:36:32,768.768 INFO    ] ================================================
[2026-06-13 09:36:33,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:36:33
[2026-06-13 09:36:33,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:36:33,646.646 INFO    ] Initializing speech engine...
[2026-06-13 09:36:33,651.651 INFO    ] 2026-06-13 09:36:33
[2026-06-13 09:36:33,861.861 INFO    ] 2026-06-13 09:36:33
[2026-06-13 09:36:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:36:34,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:36:34,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:36:34,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:36:34,286.286 INFO    ] time= 13/06/2026 09:36:34
[2026-06-13 09:36:34,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:36:34,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:36:34,383.383 INFO    ] No existing commands found in stream
[2026-06-13 09:36:39,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:39,401.401 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 09:36:40,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:36:40,335.335 INFO    ] Checking for system updates...
[2026-06-13 09:36:40,358.358 INFO    ] 200
[2026-06-13 09:36:40,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:40,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:40,392.392 INFO    ] No update needed
[2026-06-13 09:36:40,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 09:36:40,413.413 INFO    ] 200
[2026-06-13 09:36:40,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:40,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:36:40,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:36:40,477.477 INFO    ] No camera update needed
[2026-06-13 09:36:40,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:36:40,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:36:40,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:36:40,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:36:42,527.527 INFO    ] ================================================
[2026-06-13 09:36:42,544.544 INFO    ] Launching Daemon at Sat Jun 13 09:36:42 IST 2026
[2026-06-13 09:36:42,556.556 INFO    ] ================================================
[2026-06-13 09:36:42,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:36:42
[2026-06-13 09:36:43,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:36:43,372.372 INFO    ] Initializing speech engine...
[2026-06-13 09:36:43,385.385 INFO    ] 2026-06-13 09:36:43
[2026-06-13 09:36:43,592.592 INFO    ] 2026-06-13 09:36:43
[2026-06-13 09:36:43,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:36:43,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:36:43,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:36:43,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:36:43,930.930 INFO    ] time= 13/06/2026 09:36:43
[2026-06-13 09:36:43,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:36:43,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:36:44,132.132 INFO    ] No existing commands found in stream
[2026-06-13 09:36:49,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:49,146.146 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 09:36:50,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:36:50,696.696 INFO    ] Checking for system updates...
[2026-06-13 09:36:50,717.717 INFO    ] 200
[2026-06-13 09:36:50,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:50,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:36:50,750.750 INFO    ] No update needed
[2026-06-13 09:36:50,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 09:36:50,773.773 INFO    ] 200
[2026-06-13 09:36:50,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:36:50,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:36:50,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:36:50,837.837 INFO    ] No camera update needed
[2026-06-13 09:36:50,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:36:50,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:36:50,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:36:50,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:36:52,869.869 INFO    ] ================================================
[2026-06-13 09:36:52,877.877 INFO    ] Launching Daemon at Sat Jun 13 09:36:52 IST 2026
[2026-06-13 09:36:52,883.883 INFO    ] ================================================
[2026-06-13 09:36:53,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:36:53
[2026-06-13 09:36:53,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:36:53,758.758 INFO    ] Initializing speech engine...
[2026-06-13 09:36:53,767.767 INFO    ] 2026-06-13 09:36:53
[2026-06-13 09:36:53,975.975 INFO    ] 2026-06-13 09:36:53
[2026-06-13 09:36:54,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:36:54,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:36:54,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:36:54,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:36:54,386.386 INFO    ] time= 13/06/2026 09:36:54
[2026-06-13 09:36:54,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:36:54,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:36:54,490.490 INFO    ] No existing commands found in stream
[2026-06-13 09:36:59,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:36:59,504.504 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 09:37:02,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:37:02,658.658 INFO    ] Checking for system updates...
[2026-06-13 09:37:02,682.682 INFO    ] 200
[2026-06-13 09:37:02,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:02,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:37:02,739.739 INFO    ] No update needed
[2026-06-13 09:37:02,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 09:37:02,782.782 INFO    ] 200
[2026-06-13 09:37:02,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:02,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:37:02,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:37:02,859.859 INFO    ] No camera update needed
[2026-06-13 09:37:02,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:37:02,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:37:02,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:37:02,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:37:04,911.911 INFO    ] ================================================
[2026-06-13 09:37:04,926.926 INFO    ] Launching Daemon at Sat Jun 13 09:37:04 IST 2026
[2026-06-13 09:37:04,937.937 INFO    ] ================================================
[2026-06-13 09:37:05,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:37:05
[2026-06-13 09:37:05,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:37:05,786.786 INFO    ] Initializing speech engine...
[2026-06-13 09:37:05,792.792 INFO    ] 2026-06-13 09:37:05
[2026-06-13 09:37:06,000.000 INFO    ] 2026-06-13 09:37:05
[2026-06-13 09:37:06,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:37:06,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:37:06,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:37:06,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:37:06,403.403 INFO    ] time= 13/06/2026 09:37:06
[2026-06-13 09:37:06,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:37:06,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:37:06,529.529 INFO    ] No existing commands found in stream
[2026-06-13 09:37:11,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:37:11,543.543 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 09:37:14,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:37:14,950.950 INFO    ] Checking for system updates...
[2026-06-13 09:37:14,971.971 INFO    ] 200
[2026-06-13 09:37:14,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:15,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:37:15,008.008 INFO    ] No update needed
[2026-06-13 09:37:15,011.011 INFO    ] Checking for camera pi updates...
[2026-06-13 09:37:15,032.032 INFO    ] 200
[2026-06-13 09:37:15,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:15,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:37:15,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:37:15,198.198 INFO    ] No camera update needed
[2026-06-13 09:37:15,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:37:15,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:37:15,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:37:15,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:37:17,250.250 INFO    ] ================================================
[2026-06-13 09:37:17,266.266 INFO    ] Launching Daemon at Sat Jun 13 09:37:17 IST 2026
[2026-06-13 09:37:17,277.277 INFO    ] ================================================
[2026-06-13 09:37:17,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:37:17
[2026-06-13 09:37:17,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:37:18,148.148 INFO    ] Initializing speech engine...
[2026-06-13 09:37:18,153.153 INFO    ] 2026-06-13 09:37:18
[2026-06-13 09:37:18,366.366 INFO    ] 2026-06-13 09:37:18
[2026-06-13 09:37:18,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:37:18,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:37:18,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:37:18,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:37:18,793.793 INFO    ] time= 13/06/2026 09:37:18
[2026-06-13 09:37:18,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:37:18,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:37:18,891.891 INFO    ] No existing commands found in stream
[2026-06-13 09:37:23,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:37:23,905.905 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 09:37:26,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:37:26,583.583 INFO    ] Checking for system updates...
[2026-06-13 09:37:26,606.606 INFO    ] 200
[2026-06-13 09:37:26,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:26,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:37:26,643.643 INFO    ] No update needed
[2026-06-13 09:37:26,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 09:37:26,664.664 INFO    ] 200
[2026-06-13 09:37:26,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:26,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:37:26,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:37:26,738.738 INFO    ] No camera update needed
[2026-06-13 09:37:26,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:37:26,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:37:26,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:37:26,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:37:28,787.787 INFO    ] ================================================
[2026-06-13 09:37:28,802.802 INFO    ] Launching Daemon at Sat Jun 13 09:37:28 IST 2026
[2026-06-13 09:37:28,814.814 INFO    ] ================================================
[2026-06-13 09:37:29,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:37:29
[2026-06-13 09:37:29,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:37:29,645.645 INFO    ] Initializing speech engine...
[2026-06-13 09:37:29,649.649 INFO    ] 2026-06-13 09:37:29
[2026-06-13 09:37:29,855.855 INFO    ] 2026-06-13 09:37:29
[2026-06-13 09:37:29,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:37:30,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:37:30,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:37:30,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:37:30,244.244 INFO    ] time= 13/06/2026 09:37:30
[2026-06-13 09:37:30,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:37:30,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:37:30,368.368 INFO    ] No existing commands found in stream
[2026-06-13 09:37:35,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:37:35,379.379 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 09:37:38,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:37:38,033.033 INFO    ] Checking for system updates...
[2026-06-13 09:37:38,055.055 INFO    ] 200
[2026-06-13 09:37:38,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:38,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:37:38,088.088 INFO    ] No update needed
[2026-06-13 09:37:38,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 09:37:38,109.109 INFO    ] 200
[2026-06-13 09:37:38,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:38,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:37:38,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:37:38,170.170 INFO    ] No camera update needed
[2026-06-13 09:37:38,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:37:38,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:37:38,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:37:38,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:37:40,217.217 INFO    ] ================================================
[2026-06-13 09:37:40,233.233 INFO    ] Launching Daemon at Sat Jun 13 09:37:40 IST 2026
[2026-06-13 09:37:40,244.244 INFO    ] ================================================
[2026-06-13 09:37:40,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:37:40
[2026-06-13 09:37:40,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:37:41,074.074 INFO    ] Initializing speech engine...
[2026-06-13 09:37:41,079.079 INFO    ] 2026-06-13 09:37:41
[2026-06-13 09:37:41,289.289 INFO    ] 2026-06-13 09:37:41
[2026-06-13 09:37:41,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:37:41,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:37:41,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:37:41,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:37:41,704.704 INFO    ] time= 13/06/2026 09:37:41
[2026-06-13 09:37:41,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:37:41,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:37:41,812.812 INFO    ] No existing commands found in stream
[2026-06-13 09:37:46,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:37:46,825.825 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 09:37:50,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:37:50,893.893 INFO    ] Checking for system updates...
[2026-06-13 09:37:50,913.913 INFO    ] 200
[2026-06-13 09:37:50,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:50,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:37:50,949.949 INFO    ] No update needed
[2026-06-13 09:37:50,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 09:37:50,970.970 INFO    ] 200
[2026-06-13 09:37:50,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:37:50,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:37:51,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:37:51,039.039 INFO    ] No camera update needed
[2026-06-13 09:37:51,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:37:51,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:37:51,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:37:51,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:37:53,087.087 INFO    ] ================================================
[2026-06-13 09:37:53,103.103 INFO    ] Launching Daemon at Sat Jun 13 09:37:53 IST 2026
[2026-06-13 09:37:53,114.114 INFO    ] ================================================
[2026-06-13 09:37:53,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:37:53
[2026-06-13 09:37:53,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:37:53,948.948 INFO    ] Initializing speech engine...
[2026-06-13 09:37:53,953.953 INFO    ] 2026-06-13 09:37:53
[2026-06-13 09:37:54,158.158 INFO    ] 2026-06-13 09:37:54
[2026-06-13 09:37:54,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:37:54,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:37:54,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:37:54,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:37:54,572.572 INFO    ] time= 13/06/2026 09:37:54
[2026-06-13 09:37:54,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:37:54,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:37:54,679.679 INFO    ] No existing commands found in stream
[2026-06-13 09:37:59,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:37:59,691.691 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 09:38:03,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:38:03,034.034 INFO    ] Checking for system updates...
[2026-06-13 09:38:03,055.055 INFO    ] 200
[2026-06-13 09:38:03,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:03,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:38:03,089.089 INFO    ] No update needed
[2026-06-13 09:38:03,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 09:38:03,110.110 INFO    ] 200
[2026-06-13 09:38:03,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:03,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:38:03,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:38:03,174.174 INFO    ] No camera update needed
[2026-06-13 09:38:03,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:38:03,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:38:03,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:38:03,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:38:05,221.221 INFO    ] ================================================
[2026-06-13 09:38:05,236.236 INFO    ] Launching Daemon at Sat Jun 13 09:38:05 IST 2026
[2026-06-13 09:38:05,249.249 INFO    ] ================================================
[2026-06-13 09:38:05,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:38:05
[2026-06-13 09:38:05,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:38:06,055.055 INFO    ] Initializing speech engine...
[2026-06-13 09:38:06,065.065 INFO    ] 2026-06-13 09:38:06
[2026-06-13 09:38:06,271.271 INFO    ] 2026-06-13 09:38:06
[2026-06-13 09:38:06,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:38:06,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:38:06,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:38:06,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:38:06,694.694 INFO    ] time= 13/06/2026 09:38:06
[2026-06-13 09:38:06,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:38:06,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:38:06,797.797 INFO    ] No existing commands found in stream
[2026-06-13 09:38:11,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:38:11,809.809 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 09:38:15,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:38:15,818.818 INFO    ] Checking for system updates...
[2026-06-13 09:38:15,839.839 INFO    ] 200
[2026-06-13 09:38:15,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:15,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:38:15,872.872 INFO    ] No update needed
[2026-06-13 09:38:15,873.873 INFO    ] Checking for camera pi updates...
[2026-06-13 09:38:15,894.894 INFO    ] 200
[2026-06-13 09:38:15,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:15,918.918 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:38:15,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:38:15,963.963 INFO    ] No camera update needed
[2026-06-13 09:38:15,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:38:15,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:38:15,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:38:15,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:38:18,011.011 INFO    ] ================================================
[2026-06-13 09:38:18,027.027 INFO    ] Launching Daemon at Sat Jun 13 09:38:18 IST 2026
[2026-06-13 09:38:18,037.037 INFO    ] ================================================
[2026-06-13 09:38:18,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:38:18
[2026-06-13 09:38:18,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:38:18,868.868 INFO    ] Initializing speech engine...
[2026-06-13 09:38:18,871.871 INFO    ] 2026-06-13 09:38:18
[2026-06-13 09:38:19,089.089 INFO    ] 2026-06-13 09:38:19
[2026-06-13 09:38:19,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:38:19,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:38:19,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:38:19,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:38:19,475.475 INFO    ] time= 13/06/2026 09:38:19
[2026-06-13 09:38:19,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:38:19,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:38:19,587.587 INFO    ] No existing commands found in stream
[2026-06-13 09:38:24,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:38:24,606.606 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 09:38:27,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:38:27,387.387 INFO    ] Checking for system updates...
[2026-06-13 09:38:27,410.410 INFO    ] 200
[2026-06-13 09:38:27,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:27,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:38:27,444.444 INFO    ] No update needed
[2026-06-13 09:38:27,446.446 INFO    ] Checking for camera pi updates...
[2026-06-13 09:38:27,466.466 INFO    ] 200
[2026-06-13 09:38:27,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:27,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:38:27,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:38:27,533.533 INFO    ] No camera update needed
[2026-06-13 09:38:27,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:38:27,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:38:27,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:38:27,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:38:29,582.582 INFO    ] ================================================
[2026-06-13 09:38:29,596.596 INFO    ] Launching Daemon at Sat Jun 13 09:38:29 IST 2026
[2026-06-13 09:38:29,612.612 INFO    ] ================================================
[2026-06-13 09:38:29,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:38:29
[2026-06-13 09:38:30,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:38:30,421.421 INFO    ] Initializing speech engine...
[2026-06-13 09:38:30,434.434 INFO    ] 2026-06-13 09:38:30
[2026-06-13 09:38:30,685.685 INFO    ] 2026-06-13 09:38:30
[2026-06-13 09:38:30,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:38:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:38:30,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:38:31,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:38:31,063.063 INFO    ] time= 13/06/2026 09:38:31
[2026-06-13 09:38:31,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:38:31,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:38:31,235.235 INFO    ] No existing commands found in stream
[2026-06-13 09:38:36,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:38:36,264.264 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 09:38:40,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:38:40,571.571 INFO    ] Checking for system updates...
[2026-06-13 09:38:40,592.592 INFO    ] 200
[2026-06-13 09:38:40,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:40,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:38:40,629.629 INFO    ] No update needed
[2026-06-13 09:38:40,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 09:38:40,650.650 INFO    ] 200
[2026-06-13 09:38:40,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:40,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:38:40,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:38:40,712.712 INFO    ] No camera update needed
[2026-06-13 09:38:40,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:38:40,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:38:40,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:38:40,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:38:42,762.762 INFO    ] ================================================
[2026-06-13 09:38:42,778.778 INFO    ] Launching Daemon at Sat Jun 13 09:38:42 IST 2026
[2026-06-13 09:38:42,788.788 INFO    ] ================================================
[2026-06-13 09:38:43,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:38:43
[2026-06-13 09:38:43,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:38:43,580.580 INFO    ] Initializing speech engine...
[2026-06-13 09:38:43,585.585 INFO    ] 2026-06-13 09:38:43
[2026-06-13 09:38:43,788.788 INFO    ] 2026-06-13 09:38:43
[2026-06-13 09:38:43,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:38:44,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:38:44,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:38:44,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:38:44,206.206 INFO    ] time= 13/06/2026 09:38:44
[2026-06-13 09:38:44,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:38:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:38:44,301.301 INFO    ] No existing commands found in stream
[2026-06-13 09:38:49,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:38:49,315.315 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 09:38:50,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:38:50,083.083 INFO    ] Checking for system updates...
[2026-06-13 09:38:50,105.105 INFO    ] 200
[2026-06-13 09:38:50,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:50,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:38:50,141.141 INFO    ] No update needed
[2026-06-13 09:38:50,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 09:38:50,162.162 INFO    ] 200
[2026-06-13 09:38:50,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:38:50,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:38:50,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:38:50,234.234 INFO    ] No camera update needed
[2026-06-13 09:38:50,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:38:50,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:38:50,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:38:50,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:38:52,288.288 INFO    ] ================================================
[2026-06-13 09:38:52,304.304 INFO    ] Launching Daemon at Sat Jun 13 09:38:52 IST 2026
[2026-06-13 09:38:52,315.315 INFO    ] ================================================
[2026-06-13 09:38:52,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:38:52
[2026-06-13 09:38:52,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:38:53,162.162 INFO    ] Initializing speech engine...
[2026-06-13 09:38:53,172.172 INFO    ] 2026-06-13 09:38:53
[2026-06-13 09:38:53,423.423 INFO    ] 2026-06-13 09:38:53
[2026-06-13 09:38:53,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:38:53,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:38:53,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:38:53,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:38:53,871.871 INFO    ] time= 13/06/2026 09:38:53
[2026-06-13 09:38:53,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:38:53,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:38:54,121.121 INFO    ] No existing commands found in stream
[2026-06-13 09:38:59,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:38:59,149.149 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 09:39:00,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:39:00,788.788 INFO    ] Checking for system updates...
[2026-06-13 09:39:00,810.810 INFO    ] 200
[2026-06-13 09:39:00,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:00,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:00,844.844 INFO    ] No update needed
[2026-06-13 09:39:00,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:00,865.865 INFO    ] 200
[2026-06-13 09:39:00,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:00,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:00,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:00,926.926 INFO    ] No camera update needed
[2026-06-13 09:39:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:00,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:00,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:00,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:02,968.968 INFO    ] ================================================
[2026-06-13 09:39:02,984.984 INFO    ] Launching Daemon at Sat Jun 13 09:39:02 IST 2026
[2026-06-13 09:39:03,995.995 INFO    ] ================================================
[2026-06-13 09:39:03,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:03
[2026-06-13 09:39:03,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:03,869.869 INFO    ] Initializing speech engine...
[2026-06-13 09:39:03,881.881 INFO    ] 2026-06-13 09:39:03
[2026-06-13 09:39:04,122.122 INFO    ] 2026-06-13 09:39:04
[2026-06-13 09:39:04,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:04,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:39:04,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:39:04,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:39:04,605.605 INFO    ] time= 13/06/2026 09:39:04
[2026-06-13 09:39:04,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:39:04,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:39:04,793.793 INFO    ] No existing commands found in stream
[2026-06-13 09:39:09,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:39:09,822.822 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 09:39:11,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:39:11,601.601 INFO    ] Checking for system updates...
[2026-06-13 09:39:11,626.626 INFO    ] 200
[2026-06-13 09:39:11,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:11,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:11,662.662 INFO    ] No update needed
[2026-06-13 09:39:11,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:11,687.687 INFO    ] 200
[2026-06-13 09:39:11,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:11,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:11,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:11,753.753 INFO    ] No camera update needed
[2026-06-13 09:39:11,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:11,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:11,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:11,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:13,802.802 INFO    ] ================================================
[2026-06-13 09:39:13,819.819 INFO    ] Launching Daemon at Sat Jun 13 09:39:13 IST 2026
[2026-06-13 09:39:13,840.840 INFO    ] ================================================
[2026-06-13 09:39:14,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:14
[2026-06-13 09:39:14,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:14,618.618 INFO    ] Initializing speech engine...
[2026-06-13 09:39:14,626.626 INFO    ] 2026-06-13 09:39:14
[2026-06-13 09:39:14,839.839 INFO    ] 2026-06-13 09:39:14
[2026-06-13 09:39:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:15,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:39:15,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:39:15,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:39:15,242.242 INFO    ] time= 13/06/2026 09:39:15
[2026-06-13 09:39:15,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:39:15,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:39:15,437.437 INFO    ] No existing commands found in stream
[2026-06-13 09:39:20,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:39:20,464.464 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 09:39:24,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:39:24,483.483 INFO    ] Checking for system updates...
[2026-06-13 09:39:24,504.504 INFO    ] 200
[2026-06-13 09:39:24,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:24,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:24,537.537 INFO    ] No update needed
[2026-06-13 09:39:24,539.539 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:24,558.558 INFO    ] 200
[2026-06-13 09:39:24,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:24,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:24,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:24,722.722 INFO    ] No camera update needed
[2026-06-13 09:39:24,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:24,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:24,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:24,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:26,770.770 INFO    ] ================================================
[2026-06-13 09:39:26,785.785 INFO    ] Launching Daemon at Sat Jun 13 09:39:26 IST 2026
[2026-06-13 09:39:26,797.797 INFO    ] ================================================
[2026-06-13 09:39:27,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:27
[2026-06-13 09:39:27,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:27,595.595 INFO    ] Initializing speech engine...
[2026-06-13 09:39:27,600.600 INFO    ] 2026-06-13 09:39:27
[2026-06-13 09:39:27,804.804 INFO    ] 2026-06-13 09:39:27
[2026-06-13 09:39:27,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:39:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:39:28,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:39:28,209.209 INFO    ] time= 13/06/2026 09:39:28
[2026-06-13 09:39:28,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:39:28,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:39:28,320.320 INFO    ] No existing commands found in stream
[2026-06-13 09:39:33,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:39:33,327.327 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 09:39:33,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:39:33,709.709 INFO    ] Checking for system updates...
[2026-06-13 09:39:33,746.746 INFO    ] 200
[2026-06-13 09:39:33,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:33,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:33,804.804 INFO    ] No update needed
[2026-06-13 09:39:33,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:33,844.844 INFO    ] 200
[2026-06-13 09:39:33,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:33,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:33,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:33,950.950 INFO    ] No camera update needed
[2026-06-13 09:39:33,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:33,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:33,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:33,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:36,005.005 INFO    ] ================================================
[2026-06-13 09:39:36,020.020 INFO    ] Launching Daemon at Sat Jun 13 09:39:36 IST 2026
[2026-06-13 09:39:36,031.031 INFO    ] ================================================
[2026-06-13 09:39:36,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:36
[2026-06-13 09:39:36,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:36,807.807 INFO    ] Initializing speech engine...
[2026-06-13 09:39:36,812.812 INFO    ] 2026-06-13 09:39:36
[2026-06-13 09:39:37,016.016 INFO    ] 2026-06-13 09:39:36
[2026-06-13 09:39:37,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:37,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:39:37,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:39:37,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:39:37,421.421 INFO    ] time= 13/06/2026 09:39:37
[2026-06-13 09:39:37,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:39:37,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:39:37,529.529 INFO    ] No existing commands found in stream
[2026-06-13 09:39:42,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:39:42,543.543 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 09:39:44,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:39:44,459.459 INFO    ] Checking for system updates...
[2026-06-13 09:39:44,481.481 INFO    ] 200
[2026-06-13 09:39:44,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:44,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:44,513.513 INFO    ] No update needed
[2026-06-13 09:39:44,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:44,535.535 INFO    ] 200
[2026-06-13 09:39:44,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:44,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:44,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:39:44,605.605 INFO    ] No camera update needed
[2026-06-13 09:39:44,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:44,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:44,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:44,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:46,652.652 INFO    ] ================================================
[2026-06-13 09:39:46,667.667 INFO    ] Launching Daemon at Sat Jun 13 09:39:46 IST 2026
[2026-06-13 09:39:46,678.678 INFO    ] ================================================
[2026-06-13 09:39:47,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:47
[2026-06-13 09:39:47,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:47,524.524 INFO    ] Initializing speech engine...
[2026-06-13 09:39:47,529.529 INFO    ] 2026-06-13 09:39:47
[2026-06-13 09:39:47,732.732 INFO    ] 2026-06-13 09:39:47
[2026-06-13 09:39:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:47,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:39:47,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:39:48,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:39:48,141.141 INFO    ] time= 13/06/2026 09:39:48
[2026-06-13 09:39:48,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:39:48,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:39:48,245.245 INFO    ] No existing commands found in stream
[2026-06-13 09:39:53,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:39:53,257.257 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 09:39:56,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:39:56,584.584 INFO    ] Checking for system updates...
[2026-06-13 09:39:56,606.606 INFO    ] 200
[2026-06-13 09:39:56,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:56,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:56,641.641 INFO    ] No update needed
[2026-06-13 09:39:56,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 09:39:56,662.662 INFO    ] 200
[2026-06-13 09:39:56,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:39:56,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:39:56,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:39:56,726.726 INFO    ] No camera update needed
[2026-06-13 09:39:56,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:39:56,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:39:56,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:39:56,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:39:58,773.773 INFO    ] ================================================
[2026-06-13 09:39:58,789.789 INFO    ] Launching Daemon at Sat Jun 13 09:39:58 IST 2026
[2026-06-13 09:39:58,799.799 INFO    ] ================================================
[2026-06-13 09:39:59,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:39:59
[2026-06-13 09:39:59,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:39:59,581.581 INFO    ] Initializing speech engine...
[2026-06-13 09:39:59,586.586 INFO    ] 2026-06-13 09:39:59
[2026-06-13 09:39:59,793.793 INFO    ] 2026-06-13 09:39:59
[2026-06-13 09:39:59,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:39:59,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:00,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:00,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:00,211.211 INFO    ] time= 13/06/2026 09:40:00
[2026-06-13 09:40:00,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:00,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:00,381.381 INFO    ] No existing commands found in stream
[2026-06-13 09:40:05,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:40:05,393.393 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 09:40:08,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:40:08,507.507 INFO    ] Checking for system updates...
[2026-06-13 09:40:08,547.547 INFO    ] 200
[2026-06-13 09:40:08,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:08,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:08,606.606 INFO    ] No update needed
[2026-06-13 09:40:08,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 09:40:08,648.648 INFO    ] 200
[2026-06-13 09:40:08,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:08,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:40:08,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:08,732.732 INFO    ] No camera update needed
[2026-06-13 09:40:08,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:40:08,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:40:08,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:40:08,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:40:10,786.786 INFO    ] ================================================
[2026-06-13 09:40:10,801.801 INFO    ] Launching Daemon at Sat Jun 13 09:40:10 IST 2026
[2026-06-13 09:40:10,812.812 INFO    ] ================================================
[2026-06-13 09:40:11,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:40:11
[2026-06-13 09:40:11,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:40:11,607.607 INFO    ] Initializing speech engine...
[2026-06-13 09:40:11,612.612 INFO    ] 2026-06-13 09:40:11
[2026-06-13 09:40:11,820.820 INFO    ] 2026-06-13 09:40:11
[2026-06-13 09:40:11,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:40:12,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:12,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:12,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:12,180.180 INFO    ] time= 13/06/2026 09:40:12
[2026-06-13 09:40:12,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:12,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:12,315.315 INFO    ] No existing commands found in stream
[2026-06-13 09:40:17,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:40:17,335.335 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 09:40:20,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:40:20,497.497 INFO    ] Checking for system updates...
[2026-06-13 09:40:20,519.519 INFO    ] 200
[2026-06-13 09:40:20,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:20,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:20,555.555 INFO    ] No update needed
[2026-06-13 09:40:20,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 09:40:20,577.577 INFO    ] 200
[2026-06-13 09:40:20,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:20,604.604 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:40:20,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:20,645.645 INFO    ] No camera update needed
[2026-06-13 09:40:20,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:40:20,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:40:20,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:40:20,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:40:22,693.693 INFO    ] ================================================
[2026-06-13 09:40:22,709.709 INFO    ] Launching Daemon at Sat Jun 13 09:40:22 IST 2026
[2026-06-13 09:40:22,720.720 INFO    ] ================================================
[2026-06-13 09:40:23,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:40:23
[2026-06-13 09:40:23,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:40:23,586.586 INFO    ] Initializing speech engine...
[2026-06-13 09:40:23,595.595 INFO    ] 2026-06-13 09:40:23
[2026-06-13 09:40:23,805.805 INFO    ] 2026-06-13 09:40:23
[2026-06-13 09:40:23,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:40:24,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:24,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:24,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:24,222.222 INFO    ] time= 13/06/2026 09:40:24
[2026-06-13 09:40:24,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:24,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:24,323.323 INFO    ] No existing commands found in stream
[2026-06-13 09:40:29,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:40:29,341.341 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 09:40:33,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:40:33,479.479 INFO    ] Checking for system updates...
[2026-06-13 09:40:33,505.505 INFO    ] 200
[2026-06-13 09:40:33,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:33,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:33,544.544 INFO    ] No update needed
[2026-06-13 09:40:33,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 09:40:33,568.568 INFO    ] 200
[2026-06-13 09:40:33,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:33,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:40:33,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:33,632.632 INFO    ] No camera update needed
[2026-06-13 09:40:33,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:40:33,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:40:33,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:40:33,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:40:35,685.685 INFO    ] ================================================
[2026-06-13 09:40:35,700.700 INFO    ] Launching Daemon at Sat Jun 13 09:40:35 IST 2026
[2026-06-13 09:40:35,711.711 INFO    ] ================================================
[2026-06-13 09:40:36,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:40:36
[2026-06-13 09:40:36,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:40:36,526.526 INFO    ] Initializing speech engine...
[2026-06-13 09:40:36,531.531 INFO    ] 2026-06-13 09:40:36
[2026-06-13 09:40:36,735.735 INFO    ] 2026-06-13 09:40:36
[2026-06-13 09:40:36,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:40:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:36,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:37,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:37,137.137 INFO    ] time= 13/06/2026 09:40:37
[2026-06-13 09:40:37,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:37,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:37,246.246 INFO    ] No existing commands found in stream
[2026-06-13 09:40:42,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:40:42,257.257 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 09:40:43,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:40:43,638.638 INFO    ] Checking for system updates...
[2026-06-13 09:40:43,660.660 INFO    ] 200
[2026-06-13 09:40:43,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:43,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:43,696.696 INFO    ] No update needed
[2026-06-13 09:40:43,698.698 INFO    ] Checking for camera pi updates...
[2026-06-13 09:40:43,717.717 INFO    ] 200
[2026-06-13 09:40:43,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:43,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:40:43,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:43,782.782 INFO    ] No camera update needed
[2026-06-13 09:40:43,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:40:43,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:40:43,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:40:43,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:40:45,828.828 INFO    ] ================================================
[2026-06-13 09:40:45,843.843 INFO    ] Launching Daemon at Sat Jun 13 09:40:45 IST 2026
[2026-06-13 09:40:45,854.854 INFO    ] ================================================
[2026-06-13 09:40:46,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:40:46
[2026-06-13 09:40:46,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:40:46,681.681 INFO    ] Initializing speech engine...
[2026-06-13 09:40:46,686.686 INFO    ] 2026-06-13 09:40:46
[2026-06-13 09:40:46,891.891 INFO    ] 2026-06-13 09:40:46
[2026-06-13 09:40:46,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:40:47,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:47,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:47,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:47,307.307 INFO    ] time= 13/06/2026 09:40:47
[2026-06-13 09:40:47,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:47,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:47,405.405 INFO    ] No existing commands found in stream
[2026-06-13 09:40:52,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:40:52,418.418 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 09:40:53,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:40:53,877.877 INFO    ] Checking for system updates...
[2026-06-13 09:40:53,900.900 INFO    ] 200
[2026-06-13 09:40:53,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:53,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:53,936.936 INFO    ] No update needed
[2026-06-13 09:40:53,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 09:40:53,962.962 INFO    ] 200
[2026-06-13 09:40:53,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:40:53,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:40:54,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:40:54,026.026 INFO    ] No camera update needed
[2026-06-13 09:40:54,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:40:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:40:54,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:40:54,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:40:56,073.073 INFO    ] ================================================
[2026-06-13 09:40:56,088.088 INFO    ] Launching Daemon at Sat Jun 13 09:40:56 IST 2026
[2026-06-13 09:40:56,099.099 INFO    ] ================================================
[2026-06-13 09:40:56,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:40:56
[2026-06-13 09:40:56,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:40:56,993.993 INFO    ] Initializing speech engine...
[2026-06-13 09:40:57,005.005 INFO    ] 2026-06-13 09:40:56
[2026-06-13 09:40:57,267.267 INFO    ] 2026-06-13 09:40:57
[2026-06-13 09:40:57,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:40:57,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:40:57,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:40:57,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:40:57,709.709 INFO    ] time= 13/06/2026 09:40:57
[2026-06-13 09:40:57,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:40:57,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:40:57,964.964 INFO    ] No existing commands found in stream
[2026-06-13 09:41:02,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:02,993.993 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 09:41:06,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:41:06,181.181 INFO    ] Checking for system updates...
[2026-06-13 09:41:06,203.203 INFO    ] 200
[2026-06-13 09:41:06,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:06,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:06,236.236 INFO    ] No update needed
[2026-06-13 09:41:06,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 09:41:06,257.257 INFO    ] 200
[2026-06-13 09:41:06,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:06,283.283 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:41:06,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:06,325.325 INFO    ] No camera update needed
[2026-06-13 09:41:06,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:41:06,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:41:06,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:41:06,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:41:08,374.374 INFO    ] ================================================
[2026-06-13 09:41:08,390.390 INFO    ] Launching Daemon at Sat Jun 13 09:41:08 IST 2026
[2026-06-13 09:41:08,401.401 INFO    ] ================================================
[2026-06-13 09:41:08,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:41:08
[2026-06-13 09:41:09,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:41:09,188.188 INFO    ] Initializing speech engine...
[2026-06-13 09:41:09,196.196 INFO    ] 2026-06-13 09:41:09
[2026-06-13 09:41:09,401.401 INFO    ] 2026-06-13 09:41:09
[2026-06-13 09:41:09,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:41:09,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:41:09,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:41:09,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:41:09,773.773 INFO    ] time= 13/06/2026 09:41:09
[2026-06-13 09:41:09,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:41:09,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:41:09,918.918 INFO    ] No existing commands found in stream
[2026-06-13 09:41:14,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:14,930.930 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 09:41:16,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:41:16,823.823 INFO    ] Checking for system updates...
[2026-06-13 09:41:16,845.845 INFO    ] 200
[2026-06-13 09:41:16,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:16,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:16,881.881 INFO    ] No update needed
[2026-06-13 09:41:16,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 09:41:16,902.902 INFO    ] 200
[2026-06-13 09:41:16,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:16,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:41:16,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:16,975.975 INFO    ] No camera update needed
[2026-06-13 09:41:16,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:41:16,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:41:16,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:41:16,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:41:19,024.024 INFO    ] ================================================
[2026-06-13 09:41:19,041.041 INFO    ] Launching Daemon at Sat Jun 13 09:41:19 IST 2026
[2026-06-13 09:41:19,052.052 INFO    ] ================================================
[2026-06-13 09:41:19,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:41:19
[2026-06-13 09:41:19,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:41:19,935.935 INFO    ] Initializing speech engine...
[2026-06-13 09:41:19,939.939 INFO    ] 2026-06-13 09:41:19
[2026-06-13 09:41:20,146.146 INFO    ] 2026-06-13 09:41:20
[2026-06-13 09:41:20,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:41:20,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:41:20,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:41:20,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:41:20,550.550 INFO    ] time= 13/06/2026 09:41:20
[2026-06-13 09:41:20,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:41:20,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:41:20,666.666 INFO    ] No existing commands found in stream
[2026-06-13 09:41:25,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:25,679.679 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 09:41:27,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:41:27,543.543 INFO    ] Checking for system updates...
[2026-06-13 09:41:27,566.566 INFO    ] 200
[2026-06-13 09:41:27,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:27,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:41:27,602.602 INFO    ] No update needed
[2026-06-13 09:41:27,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 09:41:27,625.625 INFO    ] 200
[2026-06-13 09:41:27,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:27,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:41:27,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:41:27,794.794 INFO    ] No camera update needed
[2026-06-13 09:41:27,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:41:27,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:41:27,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:41:27,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:41:29,843.843 INFO    ] ================================================
[2026-06-13 09:41:29,859.859 INFO    ] Launching Daemon at Sat Jun 13 09:41:29 IST 2026
[2026-06-13 09:41:29,870.870 INFO    ] ================================================
[2026-06-13 09:41:30,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:41:30
[2026-06-13 09:41:30,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:41:30,666.666 INFO    ] Initializing speech engine...
[2026-06-13 09:41:30,671.671 INFO    ] 2026-06-13 09:41:30
[2026-06-13 09:41:30,875.875 INFO    ] 2026-06-13 09:41:30
[2026-06-13 09:41:30,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:41:31,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:41:31,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:41:31,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:41:31,279.279 INFO    ] time= 13/06/2026 09:41:31
[2026-06-13 09:41:31,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:41:31,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:41:31,387.387 INFO    ] No existing commands found in stream
[2026-06-13 09:41:36,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:36,401.401 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 09:41:40,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:41:40,384.384 INFO    ] Checking for system updates...
[2026-06-13 09:41:40,421.421 INFO    ] 200
[2026-06-13 09:41:40,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:40,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:40,489.489 INFO    ] No update needed
[2026-06-13 09:41:40,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 09:41:40,527.527 INFO    ] 200
[2026-06-13 09:41:40,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:40,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:41:40,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:40,597.597 INFO    ] No camera update needed
[2026-06-13 09:41:40,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:41:40,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:41:40,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:41:40,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:41:42,648.648 INFO    ] ================================================
[2026-06-13 09:41:42,663.663 INFO    ] Launching Daemon at Sat Jun 13 09:41:42 IST 2026
[2026-06-13 09:41:42,675.675 INFO    ] ================================================
[2026-06-13 09:41:43,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:41:43
[2026-06-13 09:41:43,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:41:43,506.506 INFO    ] Initializing speech engine...
[2026-06-13 09:41:43,512.512 INFO    ] 2026-06-13 09:41:43
[2026-06-13 09:41:43,720.720 INFO    ] 2026-06-13 09:41:43
[2026-06-13 09:41:43,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:41:43,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:41:43,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:41:44,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:41:44,142.142 INFO    ] time= 13/06/2026 09:41:44
[2026-06-13 09:41:44,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:41:44,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:41:44,236.236 INFO    ] No existing commands found in stream
[2026-06-13 09:41:49,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:49,251.251 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 09:41:50,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:41:50,453.453 INFO    ] Checking for system updates...
[2026-06-13 09:41:50,476.476 INFO    ] 200
[2026-06-13 09:41:50,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:50,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:50,514.514 INFO    ] No update needed
[2026-06-13 09:41:50,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 09:41:50,536.536 INFO    ] 200
[2026-06-13 09:41:50,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:41:50,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:41:50,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:41:50,608.608 INFO    ] No camera update needed
[2026-06-13 09:41:50,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:41:50,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:41:50,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:41:50,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:41:52,656.656 INFO    ] ================================================
[2026-06-13 09:41:52,672.672 INFO    ] Launching Daemon at Sat Jun 13 09:41:52 IST 2026
[2026-06-13 09:41:52,682.682 INFO    ] ================================================
[2026-06-13 09:41:53,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:41:53
[2026-06-13 09:41:53,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:41:53,575.575 INFO    ] Initializing speech engine...
[2026-06-13 09:41:53,581.581 INFO    ] 2026-06-13 09:41:53
[2026-06-13 09:41:53,790.790 INFO    ] 2026-06-13 09:41:53
[2026-06-13 09:41:53,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:41:54,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:41:54,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:41:54,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:41:54,202.202 INFO    ] time= 13/06/2026 09:41:54
[2026-06-13 09:41:54,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:41:54,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:41:54,307.307 INFO    ] No existing commands found in stream
[2026-06-13 09:41:59,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:41:59,325.325 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 09:42:00,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:42:00,067.067 INFO    ] Checking for system updates...
[2026-06-13 09:42:00,090.090 INFO    ] 200
[2026-06-13 09:42:00,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:00,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:00,129.129 INFO    ] No update needed
[2026-06-13 09:42:00,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:00,151.151 INFO    ] 200
[2026-06-13 09:42:00,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:00,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:00,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:00,222.222 INFO    ] No camera update needed
[2026-06-13 09:42:00,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:00,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:00,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:00,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:02,266.266 INFO    ] ================================================
[2026-06-13 09:42:02,279.279 INFO    ] Launching Daemon at Sat Jun 13 09:42:02 IST 2026
[2026-06-13 09:42:02,289.289 INFO    ] ================================================
[2026-06-13 09:42:02,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:02
[2026-06-13 09:42:02,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:03,117.117 INFO    ] Initializing speech engine...
[2026-06-13 09:42:03,121.121 INFO    ] 2026-06-13 09:42:03
[2026-06-13 09:42:03,326.326 INFO    ] 2026-06-13 09:42:03
[2026-06-13 09:42:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:03,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:03,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:03,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:03,733.733 INFO    ] time= 13/06/2026 09:42:03
[2026-06-13 09:42:03,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:03,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:03,913.913 INFO    ] No existing commands found in stream
[2026-06-13 09:42:08,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:42:08,929.929 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 09:42:10,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:42:10,417.417 INFO    ] Checking for system updates...
[2026-06-13 09:42:10,439.439 INFO    ] 200
[2026-06-13 09:42:10,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:10,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:10,472.472 INFO    ] No update needed
[2026-06-13 09:42:10,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:10,494.494 INFO    ] 200
[2026-06-13 09:42:10,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:10,521.521 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:10,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:10,560.560 INFO    ] No camera update needed
[2026-06-13 09:42:10,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:10,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:10,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:10,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:12,607.607 INFO    ] ================================================
[2026-06-13 09:42:12,621.621 INFO    ] Launching Daemon at Sat Jun 13 09:42:12 IST 2026
[2026-06-13 09:42:12,632.632 INFO    ] ================================================
[2026-06-13 09:42:12,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:12
[2026-06-13 09:42:13,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:13,426.426 INFO    ] Initializing speech engine...
[2026-06-13 09:42:13,437.437 INFO    ] 2026-06-13 09:42:13
[2026-06-13 09:42:13,641.641 INFO    ] 2026-06-13 09:42:13
[2026-06-13 09:42:13,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:13,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:13,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:14,040.040 INFO    ] time= 13/06/2026 09:42:13
[2026-06-13 09:42:14,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:14,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:14,153.153 INFO    ] No existing commands found in stream
[2026-06-13 09:42:19,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:42:19,166.166 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 09:42:22,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:42:22,175.175 INFO    ] Checking for system updates...
[2026-06-13 09:42:22,196.196 INFO    ] 200
[2026-06-13 09:42:22,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:22,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:22,230.230 INFO    ] No update needed
[2026-06-13 09:42:22,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:22,253.253 INFO    ] 200
[2026-06-13 09:42:22,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:22,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:22,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:22,322.322 INFO    ] No camera update needed
[2026-06-13 09:42:22,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:22,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:22,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:22,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:24,370.370 INFO    ] ================================================
[2026-06-13 09:42:24,385.385 INFO    ] Launching Daemon at Sat Jun 13 09:42:24 IST 2026
[2026-06-13 09:42:24,395.395 INFO    ] ================================================
[2026-06-13 09:42:24,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:24
[2026-06-13 09:42:25,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:25,200.200 INFO    ] Initializing speech engine...
[2026-06-13 09:42:25,206.206 INFO    ] 2026-06-13 09:42:25
[2026-06-13 09:42:25,414.414 INFO    ] 2026-06-13 09:42:25
[2026-06-13 09:42:25,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:25,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:25,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:25,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:25,801.801 INFO    ] time= 13/06/2026 09:42:25
[2026-06-13 09:42:25,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:25,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:25,935.935 INFO    ] No existing commands found in stream
[2026-06-13 09:42:30,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:42:30,949.949 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 09:42:34,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:42:34,319.319 INFO    ] Checking for system updates...
[2026-06-13 09:42:34,340.340 INFO    ] 200
[2026-06-13 09:42:34,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:34,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:34,373.373 INFO    ] No update needed
[2026-06-13 09:42:34,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:34,394.394 INFO    ] 200
[2026-06-13 09:42:34,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:34,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:34,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:34,464.464 INFO    ] No camera update needed
[2026-06-13 09:42:34,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:34,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:34,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:34,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:36,510.510 INFO    ] ================================================
[2026-06-13 09:42:36,525.525 INFO    ] Launching Daemon at Sat Jun 13 09:42:36 IST 2026
[2026-06-13 09:42:36,536.536 INFO    ] ================================================
[2026-06-13 09:42:36,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:36
[2026-06-13 09:42:37,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:37,414.414 INFO    ] Initializing speech engine...
[2026-06-13 09:42:37,424.424 INFO    ] 2026-06-13 09:42:37
[2026-06-13 09:42:37,677.677 INFO    ] 2026-06-13 09:42:37
[2026-06-13 09:42:37,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:37,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:37,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:38,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:38,056.056 INFO    ] time= 13/06/2026 09:42:38
[2026-06-13 09:42:38,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:38,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:38,138.138 INFO    ] No existing commands found in stream
[2026-06-13 09:42:43,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:42:43,156.156 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 09:42:43,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:42:43,443.443 INFO    ] Checking for system updates...
[2026-06-13 09:42:43,464.464 INFO    ] 200
[2026-06-13 09:42:43,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:43,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:42:43,500.500 INFO    ] No update needed
[2026-06-13 09:42:43,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:43,522.522 INFO    ] 200
[2026-06-13 09:42:43,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:43,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:43,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:42:43,584.584 INFO    ] No camera update needed
[2026-06-13 09:42:43,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:43,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:43,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:43,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:45,633.633 INFO    ] ================================================
[2026-06-13 09:42:45,648.648 INFO    ] Launching Daemon at Sat Jun 13 09:42:45 IST 2026
[2026-06-13 09:42:45,659.659 INFO    ] ================================================
[2026-06-13 09:42:45,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:45
[2026-06-13 09:42:46,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:46,452.452 INFO    ] Initializing speech engine...
[2026-06-13 09:42:46,460.460 INFO    ] 2026-06-13 09:42:46
[2026-06-13 09:42:46,687.687 INFO    ] 2026-06-13 09:42:46
[2026-06-13 09:42:46,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:46,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:46,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:47,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:47,082.082 INFO    ] time= 13/06/2026 09:42:47
[2026-06-13 09:42:47,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:47,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:47,246.246 INFO    ] No existing commands found in stream
[2026-06-13 09:42:52,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:42:52,260.260 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 09:42:56,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:42:56,018.018 INFO    ] Checking for system updates...
[2026-06-13 09:42:56,039.039 INFO    ] 200
[2026-06-13 09:42:56,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:56,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:42:56,072.072 INFO    ] No update needed
[2026-06-13 09:42:56,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 09:42:56,092.092 INFO    ] 200
[2026-06-13 09:42:56,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:42:56,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:42:56,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:42:56,160.160 INFO    ] No camera update needed
[2026-06-13 09:42:56,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:42:56,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:42:56,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:42:56,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:42:58,210.210 INFO    ] ================================================
[2026-06-13 09:42:58,225.225 INFO    ] Launching Daemon at Sat Jun 13 09:42:58 IST 2026
[2026-06-13 09:42:58,236.236 INFO    ] ================================================
[2026-06-13 09:42:58,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:42:58
[2026-06-13 09:42:58,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:42:59,024.024 INFO    ] Initializing speech engine...
[2026-06-13 09:42:59,029.029 INFO    ] 2026-06-13 09:42:59
[2026-06-13 09:42:59,259.259 INFO    ] 2026-06-13 09:42:59
[2026-06-13 09:42:59,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:42:59,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:42:59,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:42:59,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:42:59,679.679 INFO    ] time= 13/06/2026 09:42:59
[2026-06-13 09:42:59,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:42:59,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:42:59,818.818 INFO    ] No existing commands found in stream
[2026-06-13 09:43:04,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:43:04,832.832 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 09:43:05,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:43:05,967.967 INFO    ] Checking for system updates...
[2026-06-13 09:43:05,989.989 INFO    ] 200
[2026-06-13 09:43:05,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:06,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:43:06,022.022 INFO    ] No update needed
[2026-06-13 09:43:06,023.023 INFO    ] Checking for camera pi updates...
[2026-06-13 09:43:06,044.044 INFO    ] 200
[2026-06-13 09:43:06,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:06,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:43:06,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:43:06,103.103 INFO    ] No camera update needed
[2026-06-13 09:43:06,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:43:06,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:43:06,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:43:06,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:43:08,144.144 INFO    ] ================================================
[2026-06-13 09:43:08,154.154 INFO    ] Launching Daemon at Sat Jun 13 09:43:08 IST 2026
[2026-06-13 09:43:08,161.161 INFO    ] ================================================
[2026-06-13 09:43:08,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:43:08
[2026-06-13 09:43:08,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:43:09,022.022 INFO    ] Initializing speech engine...
[2026-06-13 09:43:09,030.030 INFO    ] 2026-06-13 09:43:09
[2026-06-13 09:43:09,256.256 INFO    ] 2026-06-13 09:43:09
[2026-06-13 09:43:09,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:43:09,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:43:09,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:43:09,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:43:09,683.683 INFO    ] time= 13/06/2026 09:43:09
[2026-06-13 09:43:09,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:43:09,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:43:09,817.817 INFO    ] No existing commands found in stream
[2026-06-13 09:43:14,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:43:14,830.830 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 09:43:17,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:43:17,294.294 INFO    ] Checking for system updates...
[2026-06-13 09:43:17,314.314 INFO    ] 200
[2026-06-13 09:43:17,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:17,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:17,347.347 INFO    ] No update needed
[2026-06-13 09:43:17,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 09:43:17,369.369 INFO    ] 200
[2026-06-13 09:43:17,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:17,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:43:17,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:17,448.448 INFO    ] No camera update needed
[2026-06-13 09:43:17,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:43:17,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:43:17,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:43:17,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:43:19,499.499 INFO    ] ================================================
[2026-06-13 09:43:19,515.515 INFO    ] Launching Daemon at Sat Jun 13 09:43:19 IST 2026
[2026-06-13 09:43:19,527.527 INFO    ] ================================================
[2026-06-13 09:43:19,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:43:19
[2026-06-13 09:43:20,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:43:20,313.313 INFO    ] Initializing speech engine...
[2026-06-13 09:43:20,318.318 INFO    ] 2026-06-13 09:43:20
[2026-06-13 09:43:20,547.547 INFO    ] 2026-06-13 09:43:20
[2026-06-13 09:43:20,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:43:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:43:20,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:43:20,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:43:20,918.918 INFO    ] time= 13/06/2026 09:43:20
[2026-06-13 09:43:20,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:43:21,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:43:21,104.104 INFO    ] No existing commands found in stream
[2026-06-13 09:43:26,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:43:26,117.117 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 09:43:29,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:43:29,394.394 INFO    ] Checking for system updates...
[2026-06-13 09:43:29,417.417 INFO    ] 200
[2026-06-13 09:43:29,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:29,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:29,450.450 INFO    ] No update needed
[2026-06-13 09:43:29,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 09:43:29,471.471 INFO    ] 200
[2026-06-13 09:43:29,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:29,496.496 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:43:29,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:29,633.633 INFO    ] No camera update needed
[2026-06-13 09:43:29,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:43:29,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:43:29,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:43:29,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:43:31,681.681 INFO    ] ================================================
[2026-06-13 09:43:31,695.695 INFO    ] Launching Daemon at Sat Jun 13 09:43:31 IST 2026
[2026-06-13 09:43:31,707.707 INFO    ] ================================================
[2026-06-13 09:43:32,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:43:32
[2026-06-13 09:43:32,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:43:32,639.639 INFO    ] Initializing speech engine...
[2026-06-13 09:43:32,650.650 INFO    ] 2026-06-13 09:43:32
[2026-06-13 09:43:32,857.857 INFO    ] 2026-06-13 09:43:32
[2026-06-13 09:43:32,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:43:33,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:43:33,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:43:33,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:43:33,277.277 INFO    ] time= 13/06/2026 09:43:33
[2026-06-13 09:43:33,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:43:33,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:43:33,372.372 INFO    ] No existing commands found in stream
[2026-06-13 09:43:38,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:43:38,386.386 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 09:43:42,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:43:42,584.584 INFO    ] Checking for system updates...
[2026-06-13 09:43:42,605.605 INFO    ] 200
[2026-06-13 09:43:42,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:42,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:43:42,641.641 INFO    ] No update needed
[2026-06-13 09:43:42,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 09:43:42,662.662 INFO    ] 200
[2026-06-13 09:43:42,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:42,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:43:42,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:43:42,730.730 INFO    ] No camera update needed
[2026-06-13 09:43:42,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:43:42,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:43:42,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:43:42,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:43:44,780.780 INFO    ] ================================================
[2026-06-13 09:43:44,795.795 INFO    ] Launching Daemon at Sat Jun 13 09:43:44 IST 2026
[2026-06-13 09:43:44,807.807 INFO    ] ================================================
[2026-06-13 09:43:45,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:43:45
[2026-06-13 09:43:45,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:43:46,191.191 INFO    ] Initializing speech engine...
[2026-06-13 09:43:46,197.197 INFO    ] 2026-06-13 09:43:46
[2026-06-13 09:43:46,446.446 INFO    ] 2026-06-13 09:43:46
[2026-06-13 09:43:46,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:43:46,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:43:46,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:43:46,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:43:46,816.816 INFO    ] time= 13/06/2026 09:43:46
[2026-06-13 09:43:46,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:43:46,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:43:46,890.890 INFO    ] No existing commands found in stream
[2026-06-13 09:43:51,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:43:51,905.905 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 09:43:54,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:43:54,252.252 INFO    ] Checking for system updates...
[2026-06-13 09:43:54,274.274 INFO    ] 200
[2026-06-13 09:43:54,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:54,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:54,307.307 INFO    ] No update needed
[2026-06-13 09:43:54,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 09:43:54,328.328 INFO    ] 200
[2026-06-13 09:43:54,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:43:54,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:43:54,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:43:54,399.399 INFO    ] No camera update needed
[2026-06-13 09:43:54,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:43:54,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:43:54,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:43:54,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:43:56,447.447 INFO    ] ================================================
[2026-06-13 09:43:56,462.462 INFO    ] Launching Daemon at Sat Jun 13 09:43:56 IST 2026
[2026-06-13 09:43:56,473.473 INFO    ] ================================================
[2026-06-13 09:43:56,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:43:56
[2026-06-13 09:43:57,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:43:57,318.318 INFO    ] Initializing speech engine...
[2026-06-13 09:43:57,324.324 INFO    ] 2026-06-13 09:43:57
[2026-06-13 09:43:57,532.532 INFO    ] 2026-06-13 09:43:57
[2026-06-13 09:43:57,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:43:57,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:43:57,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:43:57,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:43:57,949.949 INFO    ] time= 13/06/2026 09:43:57
[2026-06-13 09:43:57,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:43:57,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:43:58,049.049 INFO    ] No existing commands found in stream
[2026-06-13 09:44:03,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:03,060.060 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 09:44:05,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:44:05,660.660 INFO    ] Checking for system updates...
[2026-06-13 09:44:05,681.681 INFO    ] 200
[2026-06-13 09:44:05,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:05,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:05,714.714 INFO    ] No update needed
[2026-06-13 09:44:05,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:05,735.735 INFO    ] 200
[2026-06-13 09:44:05,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:05,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:05,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:05,798.798 INFO    ] No camera update needed
[2026-06-13 09:44:05,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:05,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:05,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:05,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:07,847.847 INFO    ] ================================================
[2026-06-13 09:44:07,862.862 INFO    ] Launching Daemon at Sat Jun 13 09:44:07 IST 2026
[2026-06-13 09:44:07,873.873 INFO    ] ================================================
[2026-06-13 09:44:08,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:08
[2026-06-13 09:44:08,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:08,728.728 INFO    ] Initializing speech engine...
[2026-06-13 09:44:08,734.734 INFO    ] 2026-06-13 09:44:08
[2026-06-13 09:44:08,942.942 INFO    ] 2026-06-13 09:44:08
[2026-06-13 09:44:08,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:09,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:09,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:09,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:09,364.364 INFO    ] time= 13/06/2026 09:44:09
[2026-06-13 09:44:09,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:09,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:09,458.458 INFO    ] No existing commands found in stream
[2026-06-13 09:44:14,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:14,473.473 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 09:44:14,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:44:14,930.930 INFO    ] Checking for system updates...
[2026-06-13 09:44:14,951.951 INFO    ] 200
[2026-06-13 09:44:14,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:14,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:44:14,985.985 INFO    ] No update needed
[2026-06-13 09:44:14,987.987 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:15,007.007 INFO    ] 200
[2026-06-13 09:44:15,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:15,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:15,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:44:15,080.080 INFO    ] No camera update needed
[2026-06-13 09:44:15,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:15,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:15,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:15,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:17,128.128 INFO    ] ================================================
[2026-06-13 09:44:17,144.144 INFO    ] Launching Daemon at Sat Jun 13 09:44:17 IST 2026
[2026-06-13 09:44:17,155.155 INFO    ] ================================================
[2026-06-13 09:44:17,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:17
[2026-06-13 09:44:17,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:17,965.965 INFO    ] Initializing speech engine...
[2026-06-13 09:44:17,969.969 INFO    ] 2026-06-13 09:44:17
[2026-06-13 09:44:18,168.168 INFO    ] 2026-06-13 09:44:18
[2026-06-13 09:44:18,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:18,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:18,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:18,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:18,583.583 INFO    ] time= 13/06/2026 09:44:18
[2026-06-13 09:44:18,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:18,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:18,766.766 INFO    ] No existing commands found in stream
[2026-06-13 09:44:23,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:23,780.780 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 09:44:24,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:44:24,470.470 INFO    ] Checking for system updates...
[2026-06-13 09:44:24,491.491 INFO    ] 200
[2026-06-13 09:44:24,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:24,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:24,529.529 INFO    ] No update needed
[2026-06-13 09:44:24,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:24,550.550 INFO    ] 200
[2026-06-13 09:44:24,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:24,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:24,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:24,617.617 INFO    ] No camera update needed
[2026-06-13 09:44:24,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:24,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:24,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:26,667.667 INFO    ] ================================================
[2026-06-13 09:44:26,683.683 INFO    ] Launching Daemon at Sat Jun 13 09:44:26 IST 2026
[2026-06-13 09:44:26,694.694 INFO    ] ================================================
[2026-06-13 09:44:27,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:27
[2026-06-13 09:44:27,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:27,547.547 INFO    ] Initializing speech engine...
[2026-06-13 09:44:27,558.558 INFO    ] 2026-06-13 09:44:27
[2026-06-13 09:44:27,766.766 INFO    ] 2026-06-13 09:44:27
[2026-06-13 09:44:27,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:27,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:27,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:28,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:28,188.188 INFO    ] time= 13/06/2026 09:44:28
[2026-06-13 09:44:28,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:28,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:28,284.284 INFO    ] No existing commands found in stream
[2026-06-13 09:44:33,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:33,295.295 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 09:44:35,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:44:35,310.310 INFO    ] Checking for system updates...
[2026-06-13 09:44:35,331.331 INFO    ] 200
[2026-06-13 09:44:35,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:35,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:35,365.365 INFO    ] No update needed
[2026-06-13 09:44:35,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:35,386.386 INFO    ] 200
[2026-06-13 09:44:35,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:35,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:35,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:35,453.453 INFO    ] No camera update needed
[2026-06-13 09:44:35,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:35,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:35,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:35,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:37,506.506 INFO    ] ================================================
[2026-06-13 09:44:37,521.521 INFO    ] Launching Daemon at Sat Jun 13 09:44:37 IST 2026
[2026-06-13 09:44:37,532.532 INFO    ] ================================================
[2026-06-13 09:44:37,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:37
[2026-06-13 09:44:38,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:38,351.351 INFO    ] Initializing speech engine...
[2026-06-13 09:44:38,361.361 INFO    ] 2026-06-13 09:44:38
[2026-06-13 09:44:38,585.585 INFO    ] 2026-06-13 09:44:38
[2026-06-13 09:44:38,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:38,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:38,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:39,029.029 INFO    ] time= 13/06/2026 09:44:38
[2026-06-13 09:44:39,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:39,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:39,146.146 INFO    ] No existing commands found in stream
[2026-06-13 09:44:44,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:44,161.161 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 09:44:44,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:44:44,614.614 INFO    ] Checking for system updates...
[2026-06-13 09:44:44,635.635 INFO    ] 200
[2026-06-13 09:44:44,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:44,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:44:44,668.668 INFO    ] No update needed
[2026-06-13 09:44:44,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:44,689.689 INFO    ] 200
[2026-06-13 09:44:44,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:44,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:44,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:44:44,749.749 INFO    ] No camera update needed
[2026-06-13 09:44:44,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:44,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:44,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:44,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:46,796.796 INFO    ] ================================================
[2026-06-13 09:44:46,811.811 INFO    ] Launching Daemon at Sat Jun 13 09:44:46 IST 2026
[2026-06-13 09:44:46,821.821 INFO    ] ================================================
[2026-06-13 09:44:47,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:47
[2026-06-13 09:44:47,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:47,619.619 INFO    ] Initializing speech engine...
[2026-06-13 09:44:47,632.632 INFO    ] 2026-06-13 09:44:47
[2026-06-13 09:44:47,852.852 INFO    ] 2026-06-13 09:44:47
[2026-06-13 09:44:47,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:48,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:48,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:48,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:48,257.257 INFO    ] time= 13/06/2026 09:44:48
[2026-06-13 09:44:48,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:48,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:48,410.410 INFO    ] No existing commands found in stream
[2026-06-13 09:44:53,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:44:53,423.423 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 09:44:53,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:44:53,869.869 INFO    ] Checking for system updates...
[2026-06-13 09:44:53,891.891 INFO    ] 200
[2026-06-13 09:44:53,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:53,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:44:53,924.924 INFO    ] No update needed
[2026-06-13 09:44:53,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 09:44:53,945.945 INFO    ] 200
[2026-06-13 09:44:53,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:44:53,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:44:54,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:44:54,008.008 INFO    ] No camera update needed
[2026-06-13 09:44:54,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:44:54,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:44:54,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:44:54,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:44:56,054.054 INFO    ] ================================================
[2026-06-13 09:44:56,070.070 INFO    ] Launching Daemon at Sat Jun 13 09:44:56 IST 2026
[2026-06-13 09:44:56,081.081 INFO    ] ================================================
[2026-06-13 09:44:56,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:44:56
[2026-06-13 09:44:56,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:44:56,874.874 INFO    ] Initializing speech engine...
[2026-06-13 09:44:56,878.878 INFO    ] 2026-06-13 09:44:56
[2026-06-13 09:44:57,108.108 INFO    ] 2026-06-13 09:44:57
[2026-06-13 09:44:57,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:44:57,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:44:57,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:44:57,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:44:57,529.529 INFO    ] time= 13/06/2026 09:44:57
[2026-06-13 09:44:57,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:44:57,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:44:57,668.668 INFO    ] No existing commands found in stream
[2026-06-13 09:45:02,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:02,680.680 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 09:45:04,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:45:04,698.698 INFO    ] Checking for system updates...
[2026-06-13 09:45:04,719.719 INFO    ] 200
[2026-06-13 09:45:04,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:04,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:45:04,754.754 INFO    ] No update needed
[2026-06-13 09:45:04,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 09:45:04,778.778 INFO    ] 200
[2026-06-13 09:45:04,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:04,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:45:04,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:45:04,840.840 INFO    ] No camera update needed
[2026-06-13 09:45:04,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:45:04,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:45:04,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:45:04,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:45:06,886.886 INFO    ] ================================================
[2026-06-13 09:45:06,901.901 INFO    ] Launching Daemon at Sat Jun 13 09:45:06 IST 2026
[2026-06-13 09:45:06,912.912 INFO    ] ================================================
[2026-06-13 09:45:07,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:45:07
[2026-06-13 09:45:07,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:45:07,709.709 INFO    ] Initializing speech engine...
[2026-06-13 09:45:07,714.714 INFO    ] 2026-06-13 09:45:07
[2026-06-13 09:45:07,922.922 INFO    ] 2026-06-13 09:45:07
[2026-06-13 09:45:07,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:45:08,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:45:08,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:45:08,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:45:08,347.347 INFO    ] time= 13/06/2026 09:45:08
[2026-06-13 09:45:08,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:45:08,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:45:08,445.445 INFO    ] No existing commands found in stream
[2026-06-13 09:45:13,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:13,458.458 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 09:45:14,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:45:14,349.349 INFO    ] Checking for system updates...
[2026-06-13 09:45:14,371.371 INFO    ] 200
[2026-06-13 09:45:14,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:14,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:14,407.407 INFO    ] No update needed
[2026-06-13 09:45:14,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 09:45:14,429.429 INFO    ] 200
[2026-06-13 09:45:14,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:14,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:45:14,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:14,492.492 INFO    ] No camera update needed
[2026-06-13 09:45:14,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:45:14,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:45:14,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:45:14,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:45:16,541.541 INFO    ] ================================================
[2026-06-13 09:45:16,556.556 INFO    ] Launching Daemon at Sat Jun 13 09:45:16 IST 2026
[2026-06-13 09:45:16,572.572 INFO    ] ================================================
[2026-06-13 09:45:16,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:45:16
[2026-06-13 09:45:17,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:45:17,359.359 INFO    ] Initializing speech engine...
[2026-06-13 09:45:17,361.361 INFO    ] 2026-06-13 09:45:17
[2026-06-13 09:45:17,567.567 INFO    ] 2026-06-13 09:45:17
[2026-06-13 09:45:17,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:45:17,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:45:17,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:45:17,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:45:17,957.957 INFO    ] time= 13/06/2026 09:45:17
[2026-06-13 09:45:18,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:45:18,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:45:18,152.152 INFO    ] No existing commands found in stream
[2026-06-13 09:45:23,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:23,173.173 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 09:45:24,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:45:24,960.960 INFO    ] Checking for system updates...
[2026-06-13 09:45:24,984.984 INFO    ] 200
[2026-06-13 09:45:24,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:25,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:25,017.017 INFO    ] No update needed
[2026-06-13 09:45:25,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 09:45:25,039.039 INFO    ] 200
[2026-06-13 09:45:25,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:25,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:45:25,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:25,088.088 INFO    ] No camera update needed
[2026-06-13 09:45:25,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:45:25,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:45:25,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:45:25,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:45:27,135.135 INFO    ] ================================================
[2026-06-13 09:45:27,150.150 INFO    ] Launching Daemon at Sat Jun 13 09:45:27 IST 2026
[2026-06-13 09:45:27,161.161 INFO    ] ================================================
[2026-06-13 09:45:27,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:45:27
[2026-06-13 09:45:27,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:45:28,045.045 INFO    ] Initializing speech engine...
[2026-06-13 09:45:28,050.050 INFO    ] 2026-06-13 09:45:28
[2026-06-13 09:45:28,258.258 INFO    ] 2026-06-13 09:45:28
[2026-06-13 09:45:28,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:45:28,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:45:28,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:45:28,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:45:28,681.681 INFO    ] time= 13/06/2026 09:45:28
[2026-06-13 09:45:28,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:45:28,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:45:28,783.783 INFO    ] No existing commands found in stream
[2026-06-13 09:45:33,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:33,798.798 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 09:45:37,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:45:37,116.116 INFO    ] Checking for system updates...
[2026-06-13 09:45:37,140.140 INFO    ] 200
[2026-06-13 09:45:37,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:37,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:37,175.175 INFO    ] No update needed
[2026-06-13 09:45:37,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 09:45:37,197.197 INFO    ] 200
[2026-06-13 09:45:37,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:37,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:45:37,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:37,261.261 INFO    ] No camera update needed
[2026-06-13 09:45:37,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:45:37,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:45:37,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:45:37,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:45:39,312.312 INFO    ] ================================================
[2026-06-13 09:45:39,327.327 INFO    ] Launching Daemon at Sat Jun 13 09:45:39 IST 2026
[2026-06-13 09:45:39,338.338 INFO    ] ================================================
[2026-06-13 09:45:39,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:45:39
[2026-06-13 09:45:40,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:45:40,185.185 INFO    ] Initializing speech engine...
[2026-06-13 09:45:40,191.191 INFO    ] 2026-06-13 09:45:40
[2026-06-13 09:45:40,400.400 INFO    ] 2026-06-13 09:45:40
[2026-06-13 09:45:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:45:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:45:40,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:45:40,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:45:40,803.803 INFO    ] time= 13/06/2026 09:45:40
[2026-06-13 09:45:40,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:45:40,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:45:40,920.920 INFO    ] No existing commands found in stream
[2026-06-13 09:45:45,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:45,933.933 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 09:45:49,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:45:49,234.234 INFO    ] Checking for system updates...
[2026-06-13 09:45:49,255.255 INFO    ] 200
[2026-06-13 09:45:49,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:49,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:49,292.292 INFO    ] No update needed
[2026-06-13 09:45:49,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 09:45:49,313.313 INFO    ] 200
[2026-06-13 09:45:49,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:45:49,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:45:49,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:45:49,380.380 INFO    ] No camera update needed
[2026-06-13 09:45:49,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:45:49,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:45:49,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:45:49,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:45:51,430.430 INFO    ] ================================================
[2026-06-13 09:45:51,453.453 INFO    ] Launching Daemon at Sat Jun 13 09:45:51 IST 2026
[2026-06-13 09:45:51,465.465 INFO    ] ================================================
[2026-06-13 09:45:51,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:45:51
[2026-06-13 09:45:52,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:45:52,285.285 INFO    ] Initializing speech engine...
[2026-06-13 09:45:52,296.296 INFO    ] 2026-06-13 09:45:52
[2026-06-13 09:45:52,499.499 INFO    ] 2026-06-13 09:45:52
[2026-06-13 09:45:52,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:45:52,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:45:52,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:45:52,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:45:52,894.894 INFO    ] time= 13/06/2026 09:45:52
[2026-06-13 09:45:52,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:45:52,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:45:53,013.013 INFO    ] No existing commands found in stream
[2026-06-13 09:45:58,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:45:58,026.026 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 09:46:01,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:46:01,917.917 INFO    ] Checking for system updates...
[2026-06-13 09:46:01,962.962 INFO    ] 200
[2026-06-13 09:46:01,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:02,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:02,031.031 INFO    ] No update needed
[2026-06-13 09:46:02,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 09:46:02,075.075 INFO    ] 200
[2026-06-13 09:46:02,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:02,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:46:02,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:02,183.183 INFO    ] No camera update needed
[2026-06-13 09:46:02,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:46:02,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:46:02,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:46:02,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:46:04,235.235 INFO    ] ================================================
[2026-06-13 09:46:04,251.251 INFO    ] Launching Daemon at Sat Jun 13 09:46:04 IST 2026
[2026-06-13 09:46:04,262.262 INFO    ] ================================================
[2026-06-13 09:46:04,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:46:04
[2026-06-13 09:46:04,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:46:05,075.075 INFO    ] Initializing speech engine...
[2026-06-13 09:46:05,080.080 INFO    ] 2026-06-13 09:46:05
[2026-06-13 09:46:05,296.296 INFO    ] 2026-06-13 09:46:05
[2026-06-13 09:46:05,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:46:05,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:46:05,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:46:05,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:46:05,635.635 INFO    ] time= 13/06/2026 09:46:05
[2026-06-13 09:46:05,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:46:05,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:46:05,719.719 INFO    ] No existing commands found in stream
[2026-06-13 09:46:10,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:46:10,762.762 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 09:46:13,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:46:13,690.690 INFO    ] Checking for system updates...
[2026-06-13 09:46:13,712.712 INFO    ] 200
[2026-06-13 09:46:13,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:13,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:13,746.746 INFO    ] No update needed
[2026-06-13 09:46:13,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 09:46:13,767.767 INFO    ] 200
[2026-06-13 09:46:13,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:13,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:46:13,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:13,829.829 INFO    ] No camera update needed
[2026-06-13 09:46:13,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:46:13,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:46:13,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:46:13,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:46:15,878.878 INFO    ] ================================================
[2026-06-13 09:46:15,894.894 INFO    ] Launching Daemon at Sat Jun 13 09:46:15 IST 2026
[2026-06-13 09:46:15,905.905 INFO    ] ================================================
[2026-06-13 09:46:16,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:46:16
[2026-06-13 09:46:16,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:46:17,020.020 INFO    ] Initializing speech engine...
[2026-06-13 09:46:17,029.029 INFO    ] 2026-06-13 09:46:17
[2026-06-13 09:46:17,284.284 INFO    ] 2026-06-13 09:46:17
[2026-06-13 09:46:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:46:17,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:46:17,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:46:17,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:46:17,757.757 INFO    ] time= 13/06/2026 09:46:17
[2026-06-13 09:46:17,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:46:17,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:46:17,982.982 INFO    ] No existing commands found in stream
[2026-06-13 09:46:23,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:46:23,004.004 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 09:46:23,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:46:23,545.545 INFO    ] Checking for system updates...
[2026-06-13 09:46:23,568.568 INFO    ] 200
[2026-06-13 09:46:23,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:23,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:23,602.602 INFO    ] No update needed
[2026-06-13 09:46:23,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 09:46:23,622.622 INFO    ] 200
[2026-06-13 09:46:23,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:23,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:46:23,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:46:23,683.683 INFO    ] No camera update needed
[2026-06-13 09:46:23,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:46:23,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:46:23,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:46:23,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:46:25,733.733 INFO    ] ================================================
[2026-06-13 09:46:25,749.749 INFO    ] Launching Daemon at Sat Jun 13 09:46:25 IST 2026
[2026-06-13 09:46:25,760.760 INFO    ] ================================================
[2026-06-13 09:46:26,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:46:26
[2026-06-13 09:46:26,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:46:26,619.619 INFO    ] Initializing speech engine...
[2026-06-13 09:46:26,624.624 INFO    ] 2026-06-13 09:46:26
[2026-06-13 09:46:26,837.837 INFO    ] 2026-06-13 09:46:26
[2026-06-13 09:46:26,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:46:27,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:46:27,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:46:27,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:46:27,236.236 INFO    ] time= 13/06/2026 09:46:27
[2026-06-13 09:46:27,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:46:27,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:46:27,366.366 INFO    ] No existing commands found in stream
[2026-06-13 09:46:32,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:46:32,381.381 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 09:46:34,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:46:34,759.759 INFO    ] Checking for system updates...
[2026-06-13 09:46:34,780.780 INFO    ] 200
[2026-06-13 09:46:34,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:34,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:34,816.816 INFO    ] No update needed
[2026-06-13 09:46:34,818.818 INFO    ] Checking for camera pi updates...
[2026-06-13 09:46:34,842.842 INFO    ] 200
[2026-06-13 09:46:34,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:34,870.870 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:46:34,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:46:34,908.908 INFO    ] No camera update needed
[2026-06-13 09:46:34,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:46:34,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:46:34,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:46:34,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:46:36,957.957 INFO    ] ================================================
[2026-06-13 09:46:36,972.972 INFO    ] Launching Daemon at Sat Jun 13 09:46:36 IST 2026
[2026-06-13 09:46:36,983.983 INFO    ] ================================================
[2026-06-13 09:46:37,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:46:37
[2026-06-13 09:46:37,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:46:37,794.794 INFO    ] Initializing speech engine...
[2026-06-13 09:46:37,804.804 INFO    ] 2026-06-13 09:46:37
[2026-06-13 09:46:38,009.009 INFO    ] 2026-06-13 09:46:37
[2026-06-13 09:46:38,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:46:38,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:46:38,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:46:38,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:46:38,409.409 INFO    ] time= 13/06/2026 09:46:38
[2026-06-13 09:46:38,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:46:38,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:46:38,532.532 INFO    ] No existing commands found in stream
[2026-06-13 09:46:43,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:46:43,544.544 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 09:46:47,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:46:47,421.421 INFO    ] Checking for system updates...
[2026-06-13 09:46:47,441.441 INFO    ] 200
[2026-06-13 09:46:47,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:47,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:46:47,475.475 INFO    ] No update needed
[2026-06-13 09:46:47,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 09:46:47,495.495 INFO    ] 200
[2026-06-13 09:46:47,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:46:47,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:46:47,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:46:47,560.560 INFO    ] No camera update needed
[2026-06-13 09:46:47,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:46:47,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:46:47,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:46:47,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:46:49,607.607 INFO    ] ================================================
[2026-06-13 09:46:49,623.623 INFO    ] Launching Daemon at Sat Jun 13 09:46:49 IST 2026
[2026-06-13 09:46:49,634.634 INFO    ] ================================================
[2026-06-13 09:46:50,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:46:50
[2026-06-13 09:46:50,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:46:50,832.832 INFO    ] Initializing speech engine...
[2026-06-13 09:46:50,837.837 INFO    ] 2026-06-13 09:46:50
[2026-06-13 09:46:51,097.097 INFO    ] 2026-06-13 09:46:51
[2026-06-13 09:46:51,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:46:51,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:46:51,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:46:51,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:46:51,455.455 INFO    ] time= 13/06/2026 09:46:51
[2026-06-13 09:46:51,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:46:51,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:46:51,648.648 INFO    ] No existing commands found in stream
[2026-06-13 09:46:56,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:46:56,661.661 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 09:47:00,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:47:00,012.012 INFO    ] Checking for system updates...
[2026-06-13 09:47:00,034.034 INFO    ] 200
[2026-06-13 09:47:00,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:00,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:00,068.068 INFO    ] No update needed
[2026-06-13 09:47:00,070.070 INFO    ] Checking for camera pi updates...
[2026-06-13 09:47:00,090.090 INFO    ] 200
[2026-06-13 09:47:00,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:00,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:47:00,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:00,171.171 INFO    ] No camera update needed
[2026-06-13 09:47:00,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:47:00,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:47:00,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:47:00,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:47:02,231.231 INFO    ] ================================================
[2026-06-13 09:47:02,261.261 INFO    ] Launching Daemon at Sat Jun 13 09:47:02 IST 2026
[2026-06-13 09:47:02,276.276 INFO    ] ================================================
[2026-06-13 09:47:02,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:47:02
[2026-06-13 09:47:03,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:47:03,756.756 INFO    ] Initializing speech engine...
[2026-06-13 09:47:03,765.765 INFO    ] 2026-06-13 09:47:03
[2026-06-13 09:47:04,012.012 INFO    ] 2026-06-13 09:47:04
[2026-06-13 09:47:04,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:47:04,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:47:04,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:47:04,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:47:04,362.362 INFO    ] time= 13/06/2026 09:47:04
[2026-06-13 09:47:04,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:47:04,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:47:04,457.457 INFO    ] No existing commands found in stream
[2026-06-13 09:47:09,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:47:09,472.472 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 09:47:12,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:47:12,195.195 INFO    ] Checking for system updates...
[2026-06-13 09:47:12,216.216 INFO    ] 200
[2026-06-13 09:47:12,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:12,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:47:12,252.252 INFO    ] No update needed
[2026-06-13 09:47:12,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 09:47:12,273.273 INFO    ] 200
[2026-06-13 09:47:12,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:12,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:47:12,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:47:12,338.338 INFO    ] No camera update needed
[2026-06-13 09:47:12,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:47:12,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:47:12,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:47:12,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:47:14,386.386 INFO    ] ================================================
[2026-06-13 09:47:14,401.401 INFO    ] Launching Daemon at Sat Jun 13 09:47:14 IST 2026
[2026-06-13 09:47:14,412.412 INFO    ] ================================================
[2026-06-13 09:47:14,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:47:14
[2026-06-13 09:47:15,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:47:15,295.295 INFO    ] Initializing speech engine...
[2026-06-13 09:47:15,302.302 INFO    ] 2026-06-13 09:47:15
[2026-06-13 09:47:15,524.524 INFO    ] 2026-06-13 09:47:15
[2026-06-13 09:47:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:47:15,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:47:15,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:47:16,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:47:16,907.907 INFO    ] time= 13/06/2026 09:47:16
[2026-06-13 09:47:16,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:47:16,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:47:16,973.973 INFO    ] No existing commands found in stream
[2026-06-13 09:47:21,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:47:21,985.985 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 09:47:23,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:47:23,681.681 INFO    ] Checking for system updates...
[2026-06-13 09:47:23,703.703 INFO    ] 200
[2026-06-13 09:47:23,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:23,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:23,739.739 INFO    ] No update needed
[2026-06-13 09:47:23,741.741 INFO    ] Checking for camera pi updates...
[2026-06-13 09:47:23,761.761 INFO    ] 200
[2026-06-13 09:47:23,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:23,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:47:23,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:23,847.847 INFO    ] No camera update needed
[2026-06-13 09:47:23,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:47:23,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:47:23,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:47:23,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:47:25,912.912 INFO    ] ================================================
[2026-06-13 09:47:25,927.927 INFO    ] Launching Daemon at Sat Jun 13 09:47:25 IST 2026
[2026-06-13 09:47:25,938.938 INFO    ] ================================================
[2026-06-13 09:47:26,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:47:26
[2026-06-13 09:47:27,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:47:27,210.210 INFO    ] Initializing speech engine...
[2026-06-13 09:47:27,214.214 INFO    ] 2026-06-13 09:47:27
[2026-06-13 09:47:27,426.426 INFO    ] 2026-06-13 09:47:27
[2026-06-13 09:47:27,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:47:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:47:27,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:47:27,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:47:27,834.834 INFO    ] time= 13/06/2026 09:47:27
[2026-06-13 09:47:27,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:47:27,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:47:27,952.952 INFO    ] No existing commands found in stream
[2026-06-13 09:47:32,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:47:32,965.965 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 09:47:35,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:47:35,853.853 INFO    ] Checking for system updates...
[2026-06-13 09:47:35,873.873 INFO    ] 200
[2026-06-13 09:47:35,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:35,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:35,906.906 INFO    ] No update needed
[2026-06-13 09:47:35,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 09:47:35,928.928 INFO    ] 200
[2026-06-13 09:47:35,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:35,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:47:36,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:36,103.103 INFO    ] No camera update needed
[2026-06-13 09:47:36,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:47:36,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:47:36,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:47:36,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:47:38,150.150 INFO    ] ================================================
[2026-06-13 09:47:38,165.165 INFO    ] Launching Daemon at Sat Jun 13 09:47:38 IST 2026
[2026-06-13 09:47:38,176.176 INFO    ] ================================================
[2026-06-13 09:47:38,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:47:38
[2026-06-13 09:47:38,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:47:38,969.969 INFO    ] Initializing speech engine...
[2026-06-13 09:47:38,974.974 INFO    ] 2026-06-13 09:47:38
[2026-06-13 09:47:39,177.177 INFO    ] 2026-06-13 09:47:39
[2026-06-13 09:47:39,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:47:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:47:39,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:47:39,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:47:39,585.585 INFO    ] time= 13/06/2026 09:47:39
[2026-06-13 09:47:39,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:47:39,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:47:39,689.689 INFO    ] No existing commands found in stream
[2026-06-13 09:47:44,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:47:44,702.702 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 09:47:48,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:47:48,420.420 INFO    ] Checking for system updates...
[2026-06-13 09:47:48,442.442 INFO    ] 200
[2026-06-13 09:47:48,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:48,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:48,475.475 INFO    ] No update needed
[2026-06-13 09:47:48,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 09:47:48,498.498 INFO    ] 200
[2026-06-13 09:47:48,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:47:48,523.523 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:47:48,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:47:48,565.565 INFO    ] No camera update needed
[2026-06-13 09:47:48,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:47:48,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:47:48,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:47:48,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:47:50,612.612 INFO    ] ================================================
[2026-06-13 09:47:50,628.628 INFO    ] Launching Daemon at Sat Jun 13 09:47:50 IST 2026
[2026-06-13 09:47:50,639.639 INFO    ] ================================================
[2026-06-13 09:47:51,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:47:51
[2026-06-13 09:47:51,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:47:51,479.479 INFO    ] Initializing speech engine...
[2026-06-13 09:47:51,486.486 INFO    ] 2026-06-13 09:47:51
[2026-06-13 09:47:51,697.697 INFO    ] 2026-06-13 09:47:51
[2026-06-13 09:47:51,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:47:51,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:47:51,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:47:52,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:47:52,123.123 INFO    ] time= 13/06/2026 09:47:52
[2026-06-13 09:47:52,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:47:52,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:47:52,339.339 INFO    ] No existing commands found in stream
[2026-06-13 09:47:57,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:47:57,377.377 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 09:48:00,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:48:00,312.312 INFO    ] Checking for system updates...
[2026-06-13 09:48:00,334.334 INFO    ] 200
[2026-06-13 09:48:00,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:00,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:00,367.367 INFO    ] No update needed
[2026-06-13 09:48:00,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:00,388.388 INFO    ] 200
[2026-06-13 09:48:00,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:00,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:00,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:00,454.454 INFO    ] No camera update needed
[2026-06-13 09:48:00,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:00,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:00,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:00,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:02,495.495 INFO    ] ================================================
[2026-06-13 09:48:02,511.511 INFO    ] Launching Daemon at Sat Jun 13 09:48:02 IST 2026
[2026-06-13 09:48:02,524.524 INFO    ] ================================================
[2026-06-13 09:48:02,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:02
[2026-06-13 09:48:03,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:03,609.609 INFO    ] Initializing speech engine...
[2026-06-13 09:48:03,619.619 INFO    ] 2026-06-13 09:48:03
[2026-06-13 09:48:03,870.870 INFO    ] 2026-06-13 09:48:03
[2026-06-13 09:48:03,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:04,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:04,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:04,240.240 INFO    ] time= 13/06/2026 09:48:04
[2026-06-13 09:48:04,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:04,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:04,315.315 INFO    ] No existing commands found in stream
[2026-06-13 09:48:09,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:48:09,331.331 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 09:48:09,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:48:09,805.805 INFO    ] Checking for system updates...
[2026-06-13 09:48:09,826.826 INFO    ] 200
[2026-06-13 09:48:09,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:09,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:09,861.861 INFO    ] No update needed
[2026-06-13 09:48:09,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:09,883.883 INFO    ] 200
[2026-06-13 09:48:09,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:09,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:09,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:09,956.956 INFO    ] No camera update needed
[2026-06-13 09:48:09,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:09,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:09,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:09,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:12,005.005 INFO    ] ================================================
[2026-06-13 09:48:12,020.020 INFO    ] Launching Daemon at Sat Jun 13 09:48:12 IST 2026
[2026-06-13 09:48:12,031.031 INFO    ] ================================================
[2026-06-13 09:48:12,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:12
[2026-06-13 09:48:12,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:12,826.826 INFO    ] Initializing speech engine...
[2026-06-13 09:48:12,830.830 INFO    ] 2026-06-13 09:48:12
[2026-06-13 09:48:13,034.034 INFO    ] 2026-06-13 09:48:13
[2026-06-13 09:48:13,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:13,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:13,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:13,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:13,434.434 INFO    ] time= 13/06/2026 09:48:13
[2026-06-13 09:48:13,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:13,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:13,550.550 INFO    ] No existing commands found in stream
[2026-06-13 09:48:18,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:48:18,562.562 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 09:48:20,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:48:20,204.204 INFO    ] Checking for system updates...
[2026-06-13 09:48:20,226.226 INFO    ] 200
[2026-06-13 09:48:20,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:20,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:20,261.261 INFO    ] No update needed
[2026-06-13 09:48:20,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:20,281.281 INFO    ] 200
[2026-06-13 09:48:20,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:20,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:20,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:48:20,345.345 INFO    ] No camera update needed
[2026-06-13 09:48:20,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:20,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:20,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:20,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:22,390.390 INFO    ] ================================================
[2026-06-13 09:48:22,398.398 INFO    ] Launching Daemon at Sat Jun 13 09:48:22 IST 2026
[2026-06-13 09:48:22,404.404 INFO    ] ================================================
[2026-06-13 09:48:22,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:22
[2026-06-13 09:48:23,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:23,222.222 INFO    ] Initializing speech engine...
[2026-06-13 09:48:23,230.230 INFO    ] 2026-06-13 09:48:23
[2026-06-13 09:48:23,453.453 INFO    ] 2026-06-13 09:48:23
[2026-06-13 09:48:23,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:23,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:23,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:23,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:23,850.850 INFO    ] time= 13/06/2026 09:48:23
[2026-06-13 09:48:23,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:23,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:23,993.993 INFO    ] No existing commands found in stream
[2026-06-13 09:48:29,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:48:29,007.007 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 09:48:29,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:48:29,325.325 INFO    ] Checking for system updates...
[2026-06-13 09:48:29,346.346 INFO    ] 200
[2026-06-13 09:48:29,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:29,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:29,379.379 INFO    ] No update needed
[2026-06-13 09:48:29,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:29,400.400 INFO    ] 200
[2026-06-13 09:48:29,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:29,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:29,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:48:29,463.463 INFO    ] No camera update needed
[2026-06-13 09:48:29,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:29,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:29,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:29,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:31,513.513 INFO    ] ================================================
[2026-06-13 09:48:31,529.529 INFO    ] Launching Daemon at Sat Jun 13 09:48:31 IST 2026
[2026-06-13 09:48:31,540.540 INFO    ] ================================================
[2026-06-13 09:48:31,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:31
[2026-06-13 09:48:32,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:32,382.382 INFO    ] Initializing speech engine...
[2026-06-13 09:48:32,394.394 INFO    ] 2026-06-13 09:48:32
[2026-06-13 09:48:32,582.582 INFO    ] 2026-06-13 09:48:32
[2026-06-13 09:48:32,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:32,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:32,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:32,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:33,034.034 INFO    ] time= 13/06/2026 09:48:32
[2026-06-13 09:48:33,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:33,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:33,132.132 INFO    ] No existing commands found in stream
[2026-06-13 09:48:38,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:48:38,145.145 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 09:48:41,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:48:41,611.611 INFO    ] Checking for system updates...
[2026-06-13 09:48:41,632.632 INFO    ] 200
[2026-06-13 09:48:41,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:41,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:41,668.668 INFO    ] No update needed
[2026-06-13 09:48:41,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:41,689.689 INFO    ] 200
[2026-06-13 09:48:41,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:41,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:41,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:48:41,756.756 INFO    ] No camera update needed
[2026-06-13 09:48:41,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:41,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:41,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:41,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:43,802.802 INFO    ] ================================================
[2026-06-13 09:48:43,817.817 INFO    ] Launching Daemon at Sat Jun 13 09:48:43 IST 2026
[2026-06-13 09:48:43,829.829 INFO    ] ================================================
[2026-06-13 09:48:44,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:44
[2026-06-13 09:48:44,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:44,632.632 INFO    ] Initializing speech engine...
[2026-06-13 09:48:44,637.637 INFO    ] 2026-06-13 09:48:44
[2026-06-13 09:48:44,842.842 INFO    ] 2026-06-13 09:48:44
[2026-06-13 09:48:44,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:44,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:45,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:45,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:45,225.225 INFO    ] time= 13/06/2026 09:48:45
[2026-06-13 09:48:45,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:45,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:45,356.356 INFO    ] No existing commands found in stream
[2026-06-13 09:48:50,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:48:50,370.370 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 09:48:54,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:48:54,011.011 INFO    ] Checking for system updates...
[2026-06-13 09:48:54,032.032 INFO    ] 200
[2026-06-13 09:48:54,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:54,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:54,074.074 INFO    ] No update needed
[2026-06-13 09:48:54,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 09:48:54,095.095 INFO    ] 200
[2026-06-13 09:48:54,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:48:54,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:48:54,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:48:54,164.164 INFO    ] No camera update needed
[2026-06-13 09:48:54,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:48:54,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:48:54,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:48:54,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:48:56,213.213 INFO    ] ================================================
[2026-06-13 09:48:56,229.229 INFO    ] Launching Daemon at Sat Jun 13 09:48:56 IST 2026
[2026-06-13 09:48:56,239.239 INFO    ] ================================================
[2026-06-13 09:48:56,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:48:56
[2026-06-13 09:48:56,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:48:57,035.035 INFO    ] Initializing speech engine...
[2026-06-13 09:48:57,040.040 INFO    ] 2026-06-13 09:48:57
[2026-06-13 09:48:57,243.243 INFO    ] 2026-06-13 09:48:57
[2026-06-13 09:48:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:48:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:48:57,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:48:57,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:48:57,641.641 INFO    ] time= 13/06/2026 09:48:57
[2026-06-13 09:48:57,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:48:57,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:48:57,756.756 INFO    ] No existing commands found in stream
[2026-06-13 09:49:02,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:02,762.762 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 09:49:03,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:49:03,584.584 INFO    ] Checking for system updates...
[2026-06-13 09:49:03,606.606 INFO    ] 200
[2026-06-13 09:49:03,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:03,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:03,641.641 INFO    ] No update needed
[2026-06-13 09:49:03,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 09:49:03,662.662 INFO    ] 200
[2026-06-13 09:49:03,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:03,708.708 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:49:03,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:03,753.753 INFO    ] No camera update needed
[2026-06-13 09:49:03,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:49:03,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:49:03,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:49:03,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:49:05,808.808 INFO    ] ================================================
[2026-06-13 09:49:05,824.824 INFO    ] Launching Daemon at Sat Jun 13 09:49:05 IST 2026
[2026-06-13 09:49:05,835.835 INFO    ] ================================================
[2026-06-13 09:49:06,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:49:06
[2026-06-13 09:49:06,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:49:06,652.652 INFO    ] Initializing speech engine...
[2026-06-13 09:49:06,661.661 INFO    ] 2026-06-13 09:49:06
[2026-06-13 09:49:06,865.865 INFO    ] 2026-06-13 09:49:06
[2026-06-13 09:49:06,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:49:07,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:49:07,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:49:07,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:49:07,239.239 INFO    ] time= 13/06/2026 09:49:07
[2026-06-13 09:49:07,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:49:07,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:49:07,397.397 INFO    ] No existing commands found in stream
[2026-06-13 09:49:12,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:12,411.411 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 09:49:13,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:49:13,302.302 INFO    ] Checking for system updates...
[2026-06-13 09:49:13,323.323 INFO    ] 200
[2026-06-13 09:49:13,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:13,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:13,356.356 INFO    ] No update needed
[2026-06-13 09:49:13,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 09:49:13,377.377 INFO    ] 200
[2026-06-13 09:49:13,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:13,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:49:13,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:13,441.441 INFO    ] No camera update needed
[2026-06-13 09:49:13,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:49:13,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:49:13,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:49:13,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:49:15,490.490 INFO    ] ================================================
[2026-06-13 09:49:15,505.505 INFO    ] Launching Daemon at Sat Jun 13 09:49:15 IST 2026
[2026-06-13 09:49:15,515.515 INFO    ] ================================================
[2026-06-13 09:49:15,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:49:15
[2026-06-13 09:49:16,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:49:16,645.645 INFO    ] Initializing speech engine...
[2026-06-13 09:49:16,652.652 INFO    ] 2026-06-13 09:49:16
[2026-06-13 09:49:16,959.959 INFO    ] 2026-06-13 09:49:16
[2026-06-13 09:49:16,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:49:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:49:17,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:49:17,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:49:17,316.316 INFO    ] time= 13/06/2026 09:49:17
[2026-06-13 09:49:17,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:49:17,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:49:17,403.403 INFO    ] No existing commands found in stream
[2026-06-13 09:49:22,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:22,417.417 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 09:49:23,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:49:23,675.675 INFO    ] Checking for system updates...
[2026-06-13 09:49:23,697.697 INFO    ] 200
[2026-06-13 09:49:23,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:23,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:23,730.730 INFO    ] No update needed
[2026-06-13 09:49:23,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 09:49:23,751.751 INFO    ] 200
[2026-06-13 09:49:23,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:23,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:49:23,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:23,815.815 INFO    ] No camera update needed
[2026-06-13 09:49:23,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:49:23,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:49:23,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:49:23,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:49:25,863.863 INFO    ] ================================================
[2026-06-13 09:49:25,879.879 INFO    ] Launching Daemon at Sat Jun 13 09:49:25 IST 2026
[2026-06-13 09:49:25,890.890 INFO    ] ================================================
[2026-06-13 09:49:26,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:49:26
[2026-06-13 09:49:26,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:49:26,704.704 INFO    ] Initializing speech engine...
[2026-06-13 09:49:26,707.707 INFO    ] 2026-06-13 09:49:26
[2026-06-13 09:49:26,924.924 INFO    ] 2026-06-13 09:49:26
[2026-06-13 09:49:26,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:49:27,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:49:27,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:49:27,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:49:27,314.314 INFO    ] time= 13/06/2026 09:49:27
[2026-06-13 09:49:27,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:49:27,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:49:27,492.492 INFO    ] No existing commands found in stream
[2026-06-13 09:49:32,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:32,501.501 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 09:49:36,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:49:36,036.036 INFO    ] Checking for system updates...
[2026-06-13 09:49:36,056.056 INFO    ] 200
[2026-06-13 09:49:36,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:36,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:36,092.092 INFO    ] No update needed
[2026-06-13 09:49:36,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 09:49:36,114.114 INFO    ] 200
[2026-06-13 09:49:36,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:36,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:49:36,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:49:36,176.176 INFO    ] No camera update needed
[2026-06-13 09:49:36,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:49:36,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:49:36,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:49:36,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:49:38,225.225 INFO    ] ================================================
[2026-06-13 09:49:38,240.240 INFO    ] Launching Daemon at Sat Jun 13 09:49:38 IST 2026
[2026-06-13 09:49:38,251.251 INFO    ] ================================================
[2026-06-13 09:49:38,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:49:38
[2026-06-13 09:49:39,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:49:39,779.779 INFO    ] Initializing speech engine...
[2026-06-13 09:49:39,786.786 INFO    ] 2026-06-13 09:49:39
[2026-06-13 09:49:40,078.078 INFO    ] 2026-06-13 09:49:40
[2026-06-13 09:49:40,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:49:40,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:49:40,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:49:40,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:49:40,532.532 INFO    ] time= 13/06/2026 09:49:40
[2026-06-13 09:49:40,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:49:40,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:49:40,676.676 INFO    ] No existing commands found in stream
[2026-06-13 09:49:45,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:45,694.694 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 09:49:48,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:49:48,041.041 INFO    ] Checking for system updates...
[2026-06-13 09:49:48,062.062 INFO    ] 200
[2026-06-13 09:49:48,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:48,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:48,096.096 INFO    ] No update needed
[2026-06-13 09:49:48,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 09:49:48,118.118 INFO    ] 200
[2026-06-13 09:49:48,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:49:48,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:49:48,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:49:48,287.287 INFO    ] No camera update needed
[2026-06-13 09:49:48,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:49:48,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:49:48,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:49:48,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:49:50,335.335 INFO    ] ================================================
[2026-06-13 09:49:50,351.351 INFO    ] Launching Daemon at Sat Jun 13 09:49:50 IST 2026
[2026-06-13 09:49:50,362.362 INFO    ] ================================================
[2026-06-13 09:49:50,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:49:50
[2026-06-13 09:49:51,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:49:51,146.146 INFO    ] Initializing speech engine...
[2026-06-13 09:49:51,156.156 INFO    ] 2026-06-13 09:49:51
[2026-06-13 09:49:51,360.360 INFO    ] 2026-06-13 09:49:51
[2026-06-13 09:49:51,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:49:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:49:51,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:49:51,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:49:51,806.806 INFO    ] time= 13/06/2026 09:49:51
[2026-06-13 09:49:51,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:49:51,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:49:51,951.951 INFO    ] No existing commands found in stream
[2026-06-13 09:49:56,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:49:56,964.964 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 09:50:00,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:50:00,825.825 INFO    ] Checking for system updates...
[2026-06-13 09:50:00,862.862 INFO    ] 200
[2026-06-13 09:50:00,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:00,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:00,929.929 INFO    ] No update needed
[2026-06-13 09:50:00,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:00,959.959 INFO    ] 200
[2026-06-13 09:50:00,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:00,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:01,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:50:01,027.027 INFO    ] No camera update needed
[2026-06-13 09:50:01,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:01,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:01,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:03,080.080 INFO    ] ================================================
[2026-06-13 09:50:03,095.095 INFO    ] Launching Daemon at Sat Jun 13 09:50:03 IST 2026
[2026-06-13 09:50:03,106.106 INFO    ] ================================================
[2026-06-13 09:50:03,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:03
[2026-06-13 09:50:04,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:04,539.539 INFO    ] Initializing speech engine...
[2026-06-13 09:50:04,552.552 INFO    ] 2026-06-13 09:50:04
[2026-06-13 09:50:04,770.770 INFO    ] 2026-06-13 09:50:04
[2026-06-13 09:50:04,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:04,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:04,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:05,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:05,011.011 INFO    ] time= 13/06/2026 09:50:05
[2026-06-13 09:50:05,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:05,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:05,104.104 INFO    ] No existing commands found in stream
[2026-06-13 09:50:10,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:50:10,138.138 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 09:50:13,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:50:13,677.677 INFO    ] Checking for system updates...
[2026-06-13 09:50:13,699.699 INFO    ] 200
[2026-06-13 09:50:13,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:13,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:50:13,734.734 INFO    ] No update needed
[2026-06-13 09:50:13,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:13,754.754 INFO    ] 200
[2026-06-13 09:50:13,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:13,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:13,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:50:13,823.823 INFO    ] No camera update needed
[2026-06-13 09:50:13,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:13,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:13,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:13,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:15,869.869 INFO    ] ================================================
[2026-06-13 09:50:15,884.884 INFO    ] Launching Daemon at Sat Jun 13 09:50:15 IST 2026
[2026-06-13 09:50:15,895.895 INFO    ] ================================================
[2026-06-13 09:50:16,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:16
[2026-06-13 09:50:16,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:16,676.676 INFO    ] Initializing speech engine...
[2026-06-13 09:50:16,688.688 INFO    ] 2026-06-13 09:50:16
[2026-06-13 09:50:16,894.894 INFO    ] 2026-06-13 09:50:16
[2026-06-13 09:50:16,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:17,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:17,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:17,283.283 INFO    ] time= 13/06/2026 09:50:17
[2026-06-13 09:50:17,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:17,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:17,409.409 INFO    ] No existing commands found in stream
[2026-06-13 09:50:22,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:50:22,421.421 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 09:50:24,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:50:24,633.633 INFO    ] Checking for system updates...
[2026-06-13 09:50:24,655.655 INFO    ] 200
[2026-06-13 09:50:24,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:24,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:24,690.690 INFO    ] No update needed
[2026-06-13 09:50:24,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:24,711.711 INFO    ] 200
[2026-06-13 09:50:24,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:24,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:24,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:24,773.773 INFO    ] No camera update needed
[2026-06-13 09:50:24,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:24,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:24,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:24,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:26,820.820 INFO    ] ================================================
[2026-06-13 09:50:26,835.835 INFO    ] Launching Daemon at Sat Jun 13 09:50:26 IST 2026
[2026-06-13 09:50:26,846.846 INFO    ] ================================================
[2026-06-13 09:50:27,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:27
[2026-06-13 09:50:27,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:27,713.713 INFO    ] Initializing speech engine...
[2026-06-13 09:50:27,718.718 INFO    ] 2026-06-13 09:50:27
[2026-06-13 09:50:27,924.924 INFO    ] 2026-06-13 09:50:27
[2026-06-13 09:50:27,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:28,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:28,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:28,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:28,338.338 INFO    ] time= 13/06/2026 09:50:28
[2026-06-13 09:50:28,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:28,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:28,445.445 INFO    ] No existing commands found in stream
[2026-06-13 09:50:33,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:50:33,457.457 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 09:50:36,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:50:36,108.108 INFO    ] Checking for system updates...
[2026-06-13 09:50:36,132.132 INFO    ] 200
[2026-06-13 09:50:36,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:36,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:36,166.166 INFO    ] No update needed
[2026-06-13 09:50:36,167.167 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:36,187.187 INFO    ] 200
[2026-06-13 09:50:36,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:36,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:36,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:36,255.255 INFO    ] No camera update needed
[2026-06-13 09:50:36,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:36,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:36,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:36,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:38,304.304 INFO    ] ================================================
[2026-06-13 09:50:38,320.320 INFO    ] Launching Daemon at Sat Jun 13 09:50:38 IST 2026
[2026-06-13 09:50:38,330.330 INFO    ] ================================================
[2026-06-13 09:50:38,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:38
[2026-06-13 09:50:38,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:39,137.137 INFO    ] Initializing speech engine...
[2026-06-13 09:50:39,143.143 INFO    ] 2026-06-13 09:50:39
[2026-06-13 09:50:39,344.344 INFO    ] 2026-06-13 09:50:39
[2026-06-13 09:50:39,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:39,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:39,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:39,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:39,757.757 INFO    ] time= 13/06/2026 09:50:39
[2026-06-13 09:50:39,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:39,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:39,854.854 INFO    ] No existing commands found in stream
[2026-06-13 09:50:44,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:50:44,867.867 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 09:50:47,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:50:47,335.335 INFO    ] Checking for system updates...
[2026-06-13 09:50:47,376.376 INFO    ] 200
[2026-06-13 09:50:47,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:47,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:47,435.435 INFO    ] No update needed
[2026-06-13 09:50:47,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:47,459.459 INFO    ] 200
[2026-06-13 09:50:47,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:47,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:47,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:50:47,528.528 INFO    ] No camera update needed
[2026-06-13 09:50:47,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:47,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:47,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:47,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:49,577.577 INFO    ] ================================================
[2026-06-13 09:50:49,592.592 INFO    ] Launching Daemon at Sat Jun 13 09:50:49 IST 2026
[2026-06-13 09:50:49,603.603 INFO    ] ================================================
[2026-06-13 09:50:49,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:49
[2026-06-13 09:50:50,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:50,459.459 INFO    ] Initializing speech engine...
[2026-06-13 09:50:50,465.465 INFO    ] 2026-06-13 09:50:50
[2026-06-13 09:50:50,672.672 INFO    ] 2026-06-13 09:50:50
[2026-06-13 09:50:50,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:50,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:50,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:51,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:51,081.081 INFO    ] time= 13/06/2026 09:50:51
[2026-06-13 09:50:51,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:51,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:51,185.185 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 09:50:51,189.189 INFO    ] Checking historical command: ID=1781324447378-0
[2026-06-13 09:50:51,214.214 INFO    ] process_and_cleanup_command: msg_id=1781324447378-0
[2026-06-13 09:50:51,216.216 INFO    ] is_command_expired: timestamp=2026-06-13T04:20:48.545Z, expiry=30s
[2026-06-13 09:50:51,325.325 INFO    ] Command removed from stream: 1781324447378-0. returning for processing...
[2026-06-13 09:50:51,329.329 INFO    ] ***** get_valid_command
[2026-06-13 09:50:51,332.332 INFO    ] {'timeout': '10', 'timestamp': '2026-06-13T04:20:48.545Z', 'data': '{"request_id":"start-order-1781324448545-y7b5bvvpt","orderId":"TM08202203260613094955822","is_vending":false}', 'source': 'webapp', 'command': 'start-order'}
[2026-06-13 09:50:51,336.336 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613094955822', 'request_id': 'start-order-1781324448545-y7b5bvvpt'}
[2026-06-13 09:50:51,341.341 INFO    ] Handling start order...
[2026-06-13 09:50:51,346.346 INFO    ] handle_start_order_command
[2026-06-13 09:50:51,361.361 INFO    ] _send_start_order_success: request_id=start-order-1781324448545-y7b5bvvpt, order_id=TM08202203260613094955822
[2026-06-13 09:50:51,367.367 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 09:50:51,426.426 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781324451385-0
[2026-06-13 09:50:51,431.431 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 09:50:51,438.438 INFO    ] Checking for system updates...
[2026-06-13 09:50:51,494.494 INFO    ] 200
[2026-06-13 09:50:51,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:51,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:50:51,594.594 INFO    ] No update needed
[2026-06-13 09:50:51,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 09:50:51,712.712 INFO    ] 200
[2026-06-13 09:50:51,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:51,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:50:51,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:50:51,904.904 INFO    ] No camera update needed
[2026-06-13 09:50:51,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:50:51,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:50:52,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:50:52,037.037 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 09:50:52,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:50:54,100.100 INFO    ] ================================================
[2026-06-13 09:50:54,115.115 INFO    ] Launching Daemon at Sat Jun 13 09:50:54 IST 2026
[2026-06-13 09:50:54,126.126 INFO    ] ================================================
[2026-06-13 09:50:54,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:50:54
[2026-06-13 09:50:54,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:50:55,029.029 INFO    ] Initializing speech engine...
[2026-06-13 09:50:55,041.041 INFO    ] 2026-06-13 09:50:55
[2026-06-13 09:50:55,249.249 INFO    ] 2026-06-13 09:50:55
[2026-06-13 09:50:55,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:50:55,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:50:55,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:50:55,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:50:55,669.669 INFO    ] time= 13/06/2026 09:50:55
[2026-06-13 09:50:55,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:50:55,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:50:55,779.779 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 09:50:55,783.783 INFO    ] Checking historical command: ID=1781324451385-0
[2026-06-13 09:50:55,808.808 INFO    ] process_and_cleanup_command: msg_id=1781324451385-0
[2026-06-13 09:50:55,810.810 INFO    ] is_command_expired: timestamp=2026-06-13T04:20:51.362944Z, expiry=30s
[2026-06-13 09:50:55,920.920 INFO    ] Command removed from stream: 1781324451385-0. returning for processing...
[2026-06-13 09:50:55,923.923 INFO    ] ***** get_valid_command
[2026-06-13 09:50:55,927.927 INFO    ] {'metadata_order_id': 'TM08202203260613094955822', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781324448545-y7b5bvvpt', 'message': 'start-order success', 'timestamp': '2026-06-13T04:20:51.362944Z', 'status': 'success', 'message_type': 'command_response'}
[2026-06-13 09:50:55,932.932 INFO    ] Checking historical command: ID=1781324453856-0
[2026-06-13 09:50:55,935.935 INFO    ] process_and_cleanup_command: msg_id=1781324453856-0
[2026-06-13 09:50:55,938.938 INFO    ] is_command_expired: timestamp=2026-06-13T04:20:55.265Z, expiry=30s
[2026-06-13 09:50:55,983.983 INFO    ] Command removed from stream: 1781324453856-0. returning for processing...
[2026-06-13 09:50:55,985.985 INFO    ] ***** get_valid_command
[2026-06-13 09:50:55,989.989 INFO    ] {'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'timestamp': '2026-06-13T04:20:55.265Z', 'data': '{"request_id":"process-order-1781324455265-ozxu9yz6z","orderId":"TM08202203260613094955822","is_vending":false,"accessCode":"58587467"}'}
[2026-06-13 09:50:55,992.992 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1781324455265-ozxu9yz6z', 'orderId': 'TM08202203260613094955822', 'accessCode': '58587467'}
[2026-06-13 09:50:55,995.995 INFO    ] Handling process order...
[2026-06-13 09:50:55,997.997 INFO    ] Processing process-order command...
[2026-06-13 09:50:56,002.002 INFO    ] 🔍 Lock file Order ID: TM08202203260613094955822, TS: 2026-06-13 09:50:51
[2026-06-13 09:50:56,010.010 INFO    ] ✅ Order lock valid for TM08202203260613094955822
[2026-06-13 09:50:56,013.013 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 09:50:56,016.016 INFO    ] processing access code 58587467 for order TM08202203260613094955822
[2026-06-13 09:50:56,020.020 INFO    ] 🔍 Lock file Order ID: TM08202203260613094955822, TS: 2026-06-13 09:50:51
[2026-06-13 09:50:56,024.024 INFO    ] ✅ Order lock valid for TM08202203260613094955822
[2026-06-13 09:50:56,028.028 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,054.054 INFO    ] 200
[2026-06-13 09:50:56,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:50:56,056.056 INFO    ] 58587467
[2026-06-13 09:50:56,058.058 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,061.061 INFO    ] session id :789700184
[2026-06-13 09:50:56,065.065 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=58587467&imei=TM08202203&session_id=789700184
[2026-06-13 09:50:56,788.788 INFO    ] 200
[2026-06-13 09:50:56,793.793 INFO    ] {"data": {"mobile": "8971345272", "order_id": "TM08202203260613094955822", "bill_amount": "65", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500693-9518.webp", "skuid": "4500693", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Max protein 7 grain Protein Gochujang 30gm", "tray_id": "26", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/108676-2689.jpg", "skuid": "108676", "door_id": "2", "mrp": "25", "offer_desc": "", "name": "Paper Boat Orange Pouch - 150Ml", "tray_id": "31", "unit_price": 25, "qty": 1, "sku_total": 25, "offer_id": ""}], "access_code": "58587467", "invoice_bill": "65"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 09:50:56,803.803 INFO    ] 65
[2026-06-13 09:50:56,808.808 INFO    ] TM08202203260613094955822
[2026-06-13 09:50:56,817.817 INFO    ] 8971345272
[2026-06-13 09:50:56,823.823 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,826.826 INFO    ] Door Opening for user mobile ending with  five two seven two 
[2026-06-13 09:50:56,830.830 INFO    ] Door Opening for user mobile ending with  five two seven two 
[2026-06-13 09:50:56,832.832 INFO    ] 48b878f519414e642834ec6891171066
[2026-06-13 09:50:56,833.833 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,834.834 INFO    ] playing audio file
[2026-06-13 09:50:56,844.844 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,846.846 INFO    ] 2026-06-13 09:50:56
[2026-06-13 09:50:56,852.852 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:50:56,853.853 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:50:56,924.924 INFO    ] [publish_status] Message added to stream with ID: 1781324456888-0
[2026-06-13 09:50:56,926.926 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'order-started', 'timestamp': '2026-06-13T04:20:56.850940Z', 'server_response': '{"msg": "Order Data", "status": true, "rstatus": true, "data": {"invoice_bill": "65", "bill_amount": "65", "order_id": "TM08202203260613094955822", "mobile": "8971345272", "access_code": "58587467", "proposed_sku_json": [{"mrp": "20", "tray_id": "39", "offer_desc": "", "qty": 1, "offer_id": "", "skuid": "4500541", "name": "Cad bury Dairy Milk Chocolate 18gm", "unit_price": 20, "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "door_id": "2"}, {"mrp": "20", "tray_id": "26", "offer_desc": "", "qty": 1, "offer_id": "", "skuid": "4500693", "name": "Max protein 7 grain Protein Gochujang 30gm", "unit_price": 20, "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "door_id": "1"}, {"mrp": "25", "tray_id": "31", "offer_desc": "", "qty": 1, "offer_id": "", "skuid": "108676", "name": "Paper Boat Orange Pouch - 150Ml", "unit_price": 25, "sku_total": 25, "image_url": "https://images.tinymart.in/product/108676-2689.jpg", "door_id": "2"}]}}'} (ID: 1781324456888-0)
[2026-06-13 09:50:57,303.303 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'invoice_bill': '65', 'bill_amount': '65', 'order_id': 'TM08202203260613094955822', 'mobile': '8971345272', 'access_code': '58587467', 'proposed_sku_json': [{'mrp': '20', 'tray_id': '39', 'offer_desc': '', 'qty': 1, 'offer_id': '', 'skuid': '4500541', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'unit_price': 20, 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '2'}, {'mrp': '20', 'tray_id': '26', 'offer_desc': '', 'qty': 1, 'offer_id': '', 'skuid': '4500693', 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'unit_price': 20, 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '1'}, {'mrp': '25', 'tray_id': '31', 'offer_desc': '', 'qty': 1, 'offer_id': '', 'skuid': '108676', 'name': 'Paper Boat Orange Pouch - 150Ml', 'unit_price': 25, 'sku_total': 25, 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'door_id': '2'}]}}}
[2026-06-13 09:50:57,306.306 INFO    ] 200
[2026-06-13 09:50:57,308.308 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"order-started","server_response":{"msg":"Order Data","status":true,"rstatus":true,"data":{"invoice_bill":"65","bill_amount":"65","order_id":"TM08202203260613094955822","mobile":"8971345272","access_code":"58587467","proposed_sku_json":[{"mrp":"20","tray_id":"39","offer_desc":"","qty":1,"offer_id":"","skuid":"4500541","name":"Cad bury Dairy Milk Chocolate 18gm","unit_price":20,"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","door_id":"2"},{"mrp":"20","tray_id":"26","offer_desc":"","qty":1,"offer_id":"","skuid":"4500693","name":"Max protein 7 grain Protein Gochujang 30gm","unit_price":20,"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","door_id":"1"},{"mrp":"25","tray_id":"31","offer_desc":"","qty":1,"offer_id":"","skuid":"108676","name":"Paper Boat Orange Pouch - 150Ml","unit_price":25,"sku_total":25,"image_url":"https:\/\/images.tinymart.in\/product\/108676-2689.jpg","door_id":"2"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:50:57,311.311 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'invoice_bill': '65', 'proposed_sku_json': [{'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '2', 'mrp': '20', 'skuid': '4500541', 'tray_id': '39', 'unit_price': 20, 'sku_total': 20, 'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '1', 'mrp': '20', 'skuid': '4500693', 'tray_id': '26', 'unit_price': 20, 'sku_total': 20, 'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}, {'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'door_id': '2', 'mrp': '25', 'skuid': '108676', 'tray_id': '31', 'unit_price': 25, 'sku_total': 25, 'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}], 'order_id': 'TM08202203260613094955822', 'mobile': '8971345272', 'access_code': '58587467', 'bill_amount': '65'}}}}
[2026-06-13 09:50:57,314.314 INFO    ] 2026-06-13 09:50:57
[2026-06-13 09:50:57,360.360 INFO    ] 200
[2026-06-13 09:50:57,362.362 INFO    ] True
[2026-06-13 09:50:57,542.542 INFO    ] 200
[2026-06-13 09:50:57,545.545 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 09:50:57,549.549 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 09:50:57,551.551 INFO    ] *** process_order ***
[2026-06-13 09:50:58,780.780 INFO    ] 200
[2026-06-13 09:50:58,783.783 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 09:50:58,785.785 INFO    ] {'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 09:50:58,787.787 INFO    ] *** process_order ***
[2026-06-13 09:50:58,790.790 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:50:58,792.792 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:50:58,890.890 INFO    ] [publish_status] Message added to stream with ID: 1781324458853-0
[2026-06-13 09:50:58,893.893 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "voiceNote": "Door is open...", "delay": 0, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781324458853-0)
[2026-06-13 09:50:59,937.937 INFO    ] 2026-06-13 09:50:59
[2026-06-13 09:50:59,940.940 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:50:59,943.943 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:00,018.018 INFO    ] [publish_status] Message added to stream with ID: 1781324459980-0
[2026-06-13 09:51:00,021.021 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'processOrder', 'timestamp': '2026-06-13T04:20:59.939138Z', 'server_response': '{"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781324459980-0)
[2026-06-13 09:51:00,129.129 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-13 09:51:00,130.130 INFO    ] 200
[2026-06-13 09:51:00,132.132 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"processOrder","server_response":{"rstatus":true,"voiceNote":"Please Wait","delay":0,"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:00,133.133 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}}}}
[2026-06-13 09:51:00,135.135 INFO    ] 2026-06-13 09:51:00
[2026-06-13 09:51:00,136.136 INFO    ] None
[2026-06-13 09:51:00,137.137 INFO    ] Opening Door now
[2026-06-13 09:51:00,138.138 INFO    ] Opening Door now
[2026-06-13 09:51:00,140.140 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 09:51:00,141.141 INFO    ] 2026-06-13 09:51:00
[2026-06-13 09:51:00,142.142 INFO    ] playing audio file
[2026-06-13 09:51:00,153.153 INFO    ] 2026-06-13 09:51:00
[2026-06-13 09:51:00,155.155 INFO    ] 2026-06-13 09:51:00
[2026-06-13 09:51:03,243.243 INFO    ] 200
[2026-06-13 09:51:03,246.246 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:03,250.250 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:06,290.290 INFO    ] 200
[2026-06-13 09:51:06,291.291 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:06,293.293 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:09,426.426 INFO    ] 200
[2026-06-13 09:51:09,429.429 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:09,432.432 INFO    ] Please close door 1
[2026-06-13 09:51:09,435.435 INFO    ] Please close door 1
[2026-06-13 09:51:09,437.437 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 09:51:09,440.440 INFO    ] 2026-06-13 09:51:09
[2026-06-13 09:51:09,443.443 INFO    ] playing audio file
[2026-06-13 09:51:09,461.461 INFO    ] 2026-06-13 09:51:09
[2026-06-13 09:51:09,465.465 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:09,468.468 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:09,554.554 INFO    ] [publish_status] Message added to stream with ID: 1781324469516-0
[2026-06-13 09:51:09,557.557 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:09.463341Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324469516-0)
[2026-06-13 09:51:09,958.958 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:09,961.961 INFO    ] 200
[2026-06-13 09:51:09,964.964 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:09,967.967 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:09,971.971 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:13,030.030 INFO    ] 200
[2026-06-13 09:51:13,031.031 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:13,033.033 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:16,123.123 INFO    ] 200
[2026-06-13 09:51:16,126.126 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:16,129.129 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:19,171.171 INFO    ] 200
[2026-06-13 09:51:19,173.173 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:19,175.175 INFO    ] Please close door 1
[2026-06-13 09:51:19,176.176 INFO    ] Please close door 1
[2026-06-13 09:51:19,178.178 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 09:51:19,180.180 INFO    ] 2026-06-13 09:51:19
[2026-06-13 09:51:19,181.181 INFO    ] playing audio file
[2026-06-13 09:51:19,191.191 INFO    ] 2026-06-13 09:51:19
[2026-06-13 09:51:19,194.194 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:19,196.196 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:19,283.283 INFO    ] [publish_status] Message added to stream with ID: 1781324479247-0
[2026-06-13 09:51:19,285.285 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:19.192652Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324479247-0)
[2026-06-13 09:51:19,637.637 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:19,640.640 INFO    ] 200
[2026-06-13 09:51:19,642.642 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Max protein 7 grain Protein Gochujang 30gm"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:19,645.645 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:19,648.648 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Max protein 7 grain Protein Gochujang 30gm'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:22,683.683 INFO    ] 200
[2026-06-13 09:51:22,684.684 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:22,686.686 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:25,766.766 INFO    ] 200
[2026-06-13 09:51:25,769.769 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:25,773.773 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:28,809.809 INFO    ] 200
[2026-06-13 09:51:28,811.811 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:28,813.813 INFO    ] Please close door 2
[2026-06-13 09:51:28,814.814 INFO    ] Please close door 2
[2026-06-13 09:51:28,815.815 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 09:51:28,817.817 INFO    ] 2026-06-13 09:51:28
[2026-06-13 09:51:28,818.818 INFO    ] playing audio file
[2026-06-13 09:51:28,829.829 INFO    ] 2026-06-13 09:51:28
[2026-06-13 09:51:28,831.831 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:28,833.833 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:28,904.904 INFO    ] [publish_status] Message added to stream with ID: 1781324488868-0
[2026-06-13 09:51:28,906.906 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:28.830709Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324488868-0)
[2026-06-13 09:51:29,233.233 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:29,235.235 INFO    ] 200
[2026-06-13 09:51:29,237.237 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"Paper Boat Orange Pouch - 150Ml"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:29,239.239 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:29,241.241 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:32,280.280 INFO    ] 200
[2026-06-13 09:51:32,282.282 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:32,284.284 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:35,315.315 INFO    ] 200
[2026-06-13 09:51:35,316.316 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:35,318.318 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:38,349.349 INFO    ] 200
[2026-06-13 09:51:38,351.351 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:38,352.352 INFO    ] Please close door 2
[2026-06-13 09:51:38,354.354 INFO    ] Please close door 2
[2026-06-13 09:51:38,355.355 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 09:51:38,356.356 INFO    ] 2026-06-13 09:51:38
[2026-06-13 09:51:38,358.358 INFO    ] playing audio file
[2026-06-13 09:51:38,369.369 INFO    ] 2026-06-13 09:51:38
[2026-06-13 09:51:38,371.371 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:38,373.373 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:38,450.450 INFO    ] [publish_status] Message added to stream with ID: 1781324498413-0
[2026-06-13 09:51:38,451.451 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:38.370077Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324498413-0)
[2026-06-13 09:51:38,779.779 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:38,781.781 INFO    ] 200
[2026-06-13 09:51:38,782.782 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"Paper Boat Orange Pouch - 150Ml"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:38,784.784 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:38,785.785 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:41,820.820 INFO    ] 200
[2026-06-13 09:51:41,822.822 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:41,823.823 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:44,855.855 INFO    ] 200
[2026-06-13 09:51:44,857.857 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:44,859.859 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:47,931.931 INFO    ] 200
[2026-06-13 09:51:47,933.933 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:47,935.935 INFO    ] Please close door 2
[2026-06-13 09:51:47,936.936 INFO    ] Please close door 2
[2026-06-13 09:51:47,938.938 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 09:51:47,940.940 INFO    ] 2026-06-13 09:51:47
[2026-06-13 09:51:47,941.941 INFO    ] playing audio file
[2026-06-13 09:51:47,956.956 INFO    ] 2026-06-13 09:51:47
[2026-06-13 09:51:47,963.963 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:47,965.965 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:48,060.060 INFO    ] [publish_status] Message added to stream with ID: 1781324508021-0
[2026-06-13 09:51:48,063.063 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:47.957975Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324508021-0)
[2026-06-13 09:51:48,470.470 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:48,473.473 INFO    ] 200
[2026-06-13 09:51:48,476.476 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"Paper Boat Orange Pouch - 150Ml"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:48,479.479 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:48,482.482 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:51,521.521 INFO    ] 200
[2026-06-13 09:51:51,523.523 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:51,525.525 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:54,564.564 INFO    ] 200
[2026-06-13 09:51:54,565.565 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:54,567.567 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:51:57,597.597 INFO    ] 200
[2026-06-13 09:51:57,599.599 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:51:57,600.600 INFO    ] Please close door 2
[2026-06-13 09:51:57,602.602 INFO    ] Please close door 2
[2026-06-13 09:51:57,603.603 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 09:51:57,605.605 INFO    ] 2026-06-13 09:51:57
[2026-06-13 09:51:57,607.607 INFO    ] playing audio file
[2026-06-13 09:51:57,617.617 INFO    ] 2026-06-13 09:51:57
[2026-06-13 09:51:57,623.623 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:51:57,625.625 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:51:57,711.711 INFO    ] [publish_status] Message added to stream with ID: 1781324517671-0
[2026-06-13 09:51:57,715.715 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:21:57.622081Z', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "status": "False", "SectionMain": {"Header": "Door Open"}}'} (ID: 1781324517671-0)
[2026-06-13 09:51:58,070.070 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 09:51:58,071.071 INFO    ] 200
[2026-06-13 09:51:58,073.073 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"Paper Boat Orange Pouch - 150Ml"}]},"status":"false","SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:51:58,074.074 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}}}
[2026-06-13 09:51:58,076.076 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:52:01,113.113 INFO    ] 200
[2026-06-13 09:52:01,115.115 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:52:01,117.117 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:52:04,150.150 INFO    ] 200
[2026-06-13 09:52:04,152.152 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "Paper Boat Orange Pouch - 150Ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 09:52:04,154.154 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'Paper Boat Orange Pouch - 150Ml'}]}, 'status': 'False', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 09:52:07,192.192 INFO    ] 200
[2026-06-13 09:52:07,194.194 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 09:52:07,196.196 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:52:07,197.197 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:52:07,250.250 INFO    ] [publish_status] Message added to stream with ID: 1781324527213-0
[2026-06-13 09:52:07,256.256 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T04:22:07.195187Z', 'server_response': '{"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "SectionMain": {"Header": "Door Closed"}}'} (ID: 1781324527213-0)
[2026-06-13 09:52:07,565.565 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}}}
[2026-06-13 09:52:07,566.566 INFO    ] 200
[2026-06-13 09:52:07,568.568 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"OrderStatus","server_response":{"rstatus":true,"voiceNote":"Transaction Completed","delay":100,"SectionStatus":{"UI_Header":"","SubHeader":"Please wait for invoice to generate","Header":" Order is complete ","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"status":"true","SectionMain":{"Header":"Door Closed"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:52:07,570.570 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'OrderStatus', 'server_response': {'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'true', 'SectionMain': {'Header': 'Door Closed'}}}}
[2026-06-13 09:52:07,572.572 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 09:52:07,573.573 INFO    ] 2026-06-13 09:52:07
[2026-06-13 09:52:07,575.575 INFO    ] Order Completed 
[2026-06-13 09:52:07,576.576 INFO    ] Order Completed 
[2026-06-13 09:52:07,578.578 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 09:52:07,580.580 INFO    ] 2026-06-13 09:52:07
[2026-06-13 09:52:07,581.581 INFO    ] playing audio file
[2026-06-13 09:52:07,592.592 INFO    ] 2026-06-13 09:52:07
[2026-06-13 09:52:07,594.594 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 09:52:07,596.596 INFO    ] 2026-06-13 09:52:07
[2026-06-13 09:52:08,025.025 INFO    ] 200
[2026-06-13 09:52:08,029.029 INFO    ] {"res": "True", "orderId": "TM08202203260613094955822", "skus": [{"image_url": "https://images.tinymart.in/product/4500693-9518.webp", "skuid": "4500693", "door_id": "", "tray_id": "26", "name": "Max protein 7 grain Protein Gochujang 30gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/108676-2689.jpg", "skuid": "108676", "door_id": "", "tray_id": "31", "name": "Paper Boat Orange Pouch - 150Ml per peice", "unit_price": "25", "mrp": "25", "qty": 1, "sku_total": 25.0}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "", "tray_id": "39", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 95.0}
[2026-06-13 09:52:08,032.032 INFO    ] {'rstatus': True, 'total_amount': 95.0, 'skus': [{'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500693', 'tray_id': '26', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice'}, {'mrp': '25', 'qty': 1, 'door_id': '', 'skuid': '108676', 'tray_id': '31', 'unit_price': '25', 'sku_total': 25.0, 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'name': 'Paper Boat Orange Pouch - 150Ml per peice'}, {'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'mrp': '30', 'qty': 1, 'door_id': '', 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}], 'logic': 'WBL', 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613094955822'}
[2026-06-13 09:52:08,036.036 INFO    ] {'rstatus': True, 'total_amount': 95.0, 'skus': [{'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500693', 'tray_id': '26', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice'}, {'mrp': '25', 'qty': 1, 'door_id': '', 'skuid': '108676', 'tray_id': '31', 'unit_price': '25', 'sku_total': 25.0, 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'name': 'Paper Boat Orange Pouch - 150Ml per peice'}, {'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'mrp': '30', 'qty': 1, 'door_id': '', 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}], 'logic': 'WBL', 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613094955822'}
[2026-06-13 09:52:08,038.038 INFO    ] 2026-06-13 09:52:08
[2026-06-13 09:52:08,041.041 INFO    ] 2026-06-13 09:52:08
[2026-06-13 09:52:08,044.044 INFO    ] 65
[2026-06-13 09:52:08,047.047 INFO    ] 2026-06-13 09:52:08
[2026-06-13 09:52:08,050.050 INFO    ] 2026-06-13 09:52:08
[2026-06-13 09:52:08,053.053 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 95
[2026-06-13 09:52:08,056.056 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 95
[2026-06-13 09:52:08,058.058 INFO    ] f650cc59e1a679ba955f41a866c105df
[2026-06-13 09:52:08,062.062 INFO    ] 2026-06-13 09:52:08
[2026-06-13 09:52:08,065.065 INFO    ] creating audio file
[2026-06-13 09:52:08,146.146 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 09:52:09,140.140 INFO    ] gTTS API call completed successfully
[2026-06-13 09:52:10,504.504 INFO    ] 2026-06-13 09:52:10
[2026-06-13 09:52:10,507.507 INFO    ] playing audio file
[2026-06-13 09:52:10,525.525 INFO    ] 2026-06-13 09:52:10
[2026-06-13 09:52:10,529.529 INFO    ] 2026-06-13 09:52:10
[2026-06-13 09:52:10,533.533 INFO    ] publish_status: order_id=TM08202203260613094955822
[2026-06-13 09:52:10,536.536 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613094955822
[2026-06-13 09:52:10,624.624 INFO    ] [publish_status] Message added to stream with ID: 1781324530578-0
[2026-06-13 09:52:10,627.627 INFO    ] Published to order:TM08202203260613094955822: {'order_id': 'TM08202203260613094955822', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T04:22:10.531074Z', 'server_response': '{"rstatus": true, "total_amount": 95.0, "skus": [{"mrp": "20", "qty": 1, "door_id": "", "skuid": "4500693", "tray_id": "26", "unit_price": "20", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500693-9518.webp", "name": "Max protein 7 grain Protein Gochujang 30gm per peice"}, {"mrp": "25", "qty": 1, "door_id": "", "skuid": "108676", "tray_id": "31", "unit_price": "25", "sku_total": 25.0, "image_url": "https://images.tinymart.in/product/108676-2689.jpg", "name": "Paper Boat Orange Pouch - 150Ml per peice"}, {"mrp": "20", "qty": 1, "door_id": "", "skuid": "4500541", "tray_id": "39", "unit_price": "20", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "name": "Cad bury Dairy Milk Chocolate 18gm per peice"}, {"mrp": "30", "qty": 1, "door_id": "", "skuid": "186084", "tray_id": "40", "unit_price": "30", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice"}], "logic": "WBL", "anomaly": 0, "res": "True", "orderId": "TM08202203260613094955822"}'} (ID: 1781324530578-0)
[2026-06-13 09:52:10,742.742 INFO    ] {'order_id': 'TM08202203260613094955822', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'total_amount': 95.0, 'skus': [{'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500693', 'tray_id': '26', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice'}, {'mrp': '25', 'qty': 1, 'door_id': '', 'skuid': '108676', 'tray_id': '31', 'unit_price': '25', 'sku_total': 25.0, 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'name': 'Paper Boat Orange Pouch - 150Ml per peice'}, {'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice'}, {'mrp': '30', 'qty': 1, 'door_id': '', 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}], 'logic': 'WBL', 'anomaly': 0, 'res': 'True', 'orderId': 'TM08202203260613094955822'}}
[2026-06-13 09:52:10,745.745 INFO    ] 200
[2026-06-13 09:52:10,748.748 INFO    ] {"data":{"order_id":"TM08202203260613094955822","server_status":"invoiceOrder","server_response":{"rstatus":true,"total_amount":95,"skus":[{"mrp":"20","qty":1,"door_id":"","skuid":"4500693","tray_id":"26","unit_price":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","name":"Max protein 7 grain Protein Gochujang 30gm per peice"},{"mrp":"25","qty":1,"door_id":"","skuid":"108676","tray_id":"31","unit_price":"25","sku_total":25,"image_url":"https:\/\/images.tinymart.in\/product\/108676-2689.jpg","name":"Paper Boat Orange Pouch - 150Ml per peice"},{"mrp":"20","qty":1,"door_id":"","skuid":"4500541","tray_id":"39","unit_price":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","name":"Cad bury Dairy Milk Chocolate 18gm per peice"},{"mrp":"30","qty":1,"door_id":"","skuid":"186084","tray_id":"40","unit_price":"30","sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice"}],"logic":"WBL","anomaly":0,"res":"true","orderId":"TM08202203260613094955822"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 09:52:10,752.752 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'total_amount': 95, 'skus': [{'skuid': '4500693', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'tray_id': '26', 'unit_price': '20', 'sku_total': 20, 'qty': 1, 'door_id': ''}, {'skuid': '108676', 'name': 'Paper Boat Orange Pouch - 150Ml per peice', 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'mrp': '25', 'tray_id': '31', 'unit_price': '25', 'sku_total': 25, 'qty': 1, 'door_id': ''}, {'skuid': '4500541', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'mrp': '20', 'tray_id': '39', 'unit_price': '20', 'sku_total': 20, 'qty': 1, 'door_id': ''}, {'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '40', 'unit_price': '30', 'sku_total': 30, 'qty': 1, 'door_id': ''}], 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'orderId': 'TM08202203260613094955822'}}}
[2026-06-13 09:52:10,756.756 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613094955822', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'total_amount': 95, 'skus': [{'skuid': '4500693', 'name': 'Max protein 7 grain Protein Gochujang 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'mrp': '20', 'tray_id': '26', 'unit_price': '20', 'sku_total': 20, 'qty': 1, 'door_id': ''}, {'skuid': '108676', 'name': 'Paper Boat Orange Pouch - 150Ml per peice', 'image_url': 'https://images.tinymart.in/product/108676-2689.jpg', 'mrp': '25', 'tray_id': '31', 'unit_price': '25', 'sku_total': 25, 'qty': 1, 'door_id': ''}, {'skuid': '4500541', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'mrp': '20', 'tray_id': '39', 'unit_price': '20', 'sku_total': 20, 'qty': 1, 'door_id': ''}, {'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'tray_id': '40', 'unit_price': '30', 'sku_total': 30, 'qty': 1, 'door_id': ''}], 'logic': 'WBL', 'anomaly': 0, 'res': 'true', 'orderId': 'TM08202203260613094955822'}}}
[2026-06-13 09:52:10,759.759 INFO    ] 2026-06-13 09:52:10
[2026-06-13 09:52:11,923.923 INFO    ] 200
[2026-06-13 09:52:11,925.925 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 09:52:11,928.928 INFO    ] 2026-06-13 09:52:11
[2026-06-13 09:52:12,074.074 INFO    ] 200
[2026-06-13 09:52:12,077.077 INFO    ] True
[2026-06-13 09:52:12,080.080 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613094955822
[2026-06-13 09:52:12,083.083 INFO    ] start order file deleted
[2026-06-13 09:52:12,087.087 INFO    ] Checking for system updates...
[2026-06-13 09:52:12,134.134 INFO    ] 200
[2026-06-13 09:52:12,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:12,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:52:12,194.194 INFO    ] No update needed
[2026-06-13 09:52:12,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 09:52:12,231.231 INFO    ] 200
[2026-06-13 09:52:12,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:12,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:52:12,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:52:12,345.345 INFO    ] No camera update needed
[2026-06-13 09:52:12,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:52:12,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:52:12,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:52:12,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:52:14,405.405 INFO    ] ================================================
[2026-06-13 09:52:14,420.420 INFO    ] Launching Daemon at Sat Jun 13 09:52:14 IST 2026
[2026-06-13 09:52:14,431.431 INFO    ] ================================================
[2026-06-13 09:52:14,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:52:14
[2026-06-13 09:52:15,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:52:15,220.220 INFO    ] Initializing speech engine...
[2026-06-13 09:52:15,232.232 INFO    ] 2026-06-13 09:52:15
[2026-06-13 09:52:15,440.440 INFO    ] 2026-06-13 09:52:15
[2026-06-13 09:52:15,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:52:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:52:15,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:52:15,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:52:15,846.846 INFO    ] time= 13/06/2026 09:52:15
[2026-06-13 09:52:15,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:52:15,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:52:15,961.961 INFO    ] No existing commands found in stream
[2026-06-13 09:52:20,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:52:21,000.000 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 09:52:23,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:52:23,223.223 INFO    ] Checking for system updates...
[2026-06-13 09:52:23,244.244 INFO    ] 200
[2026-06-13 09:52:23,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:23,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:52:23,277.277 INFO    ] No update needed
[2026-06-13 09:52:23,278.278 INFO    ] Checking for camera pi updates...
[2026-06-13 09:52:23,298.298 INFO    ] 200
[2026-06-13 09:52:23,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:23,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:52:23,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:52:23,346.346 INFO    ] No camera update needed
[2026-06-13 09:52:23,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:52:23,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:52:23,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:52:23,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:52:25,392.392 INFO    ] ================================================
[2026-06-13 09:52:25,407.407 INFO    ] Launching Daemon at Sat Jun 13 09:52:25 IST 2026
[2026-06-13 09:52:25,418.418 INFO    ] ================================================
[2026-06-13 09:52:25,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:52:25
[2026-06-13 09:52:26,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:52:26,233.233 INFO    ] Initializing speech engine...
[2026-06-13 09:52:26,243.243 INFO    ] 2026-06-13 09:52:26
[2026-06-13 09:52:26,448.448 INFO    ] 2026-06-13 09:52:26
[2026-06-13 09:52:26,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:52:26,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:52:26,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:52:26,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:52:26,843.843 INFO    ] time= 13/06/2026 09:52:26
[2026-06-13 09:52:26,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:52:26,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:52:26,969.969 INFO    ] No existing commands found in stream
[2026-06-13 09:52:31,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:52:31,981.981 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 09:52:32,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:52:32,339.339 INFO    ] Checking for system updates...
[2026-06-13 09:52:32,362.362 INFO    ] 200
[2026-06-13 09:52:32,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:32,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:32,401.401 INFO    ] No update needed
[2026-06-13 09:52:32,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 09:52:32,426.426 INFO    ] 200
[2026-06-13 09:52:32,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:32,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:52:32,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:32,491.491 INFO    ] No camera update needed
[2026-06-13 09:52:32,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:52:32,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:52:32,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:52:32,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:52:34,541.541 INFO    ] ================================================
[2026-06-13 09:52:34,555.555 INFO    ] Launching Daemon at Sat Jun 13 09:52:34 IST 2026
[2026-06-13 09:52:34,566.566 INFO    ] ================================================
[2026-06-13 09:52:34,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:52:34
[2026-06-13 09:52:35,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:52:35,372.372 INFO    ] Initializing speech engine...
[2026-06-13 09:52:35,383.383 INFO    ] 2026-06-13 09:52:35
[2026-06-13 09:52:35,587.587 INFO    ] 2026-06-13 09:52:35
[2026-06-13 09:52:35,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:52:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:52:35,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:52:35,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:52:35,990.990 INFO    ] time= 13/06/2026 09:52:35
[2026-06-13 09:52:36,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:52:36,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:52:36,100.100 INFO    ] No existing commands found in stream
[2026-06-13 09:52:41,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:52:41,112.112 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 09:52:44,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:52:44,607.607 INFO    ] Checking for system updates...
[2026-06-13 09:52:44,644.644 INFO    ] 200
[2026-06-13 09:52:44,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:44,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:44,710.710 INFO    ] No update needed
[2026-06-13 09:52:44,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 09:52:44,748.748 INFO    ] 200
[2026-06-13 09:52:44,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:44,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:52:44,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:44,846.846 INFO    ] No camera update needed
[2026-06-13 09:52:44,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:52:44,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:52:44,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:52:44,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:52:46,894.894 INFO    ] ================================================
[2026-06-13 09:52:46,909.909 INFO    ] Launching Daemon at Sat Jun 13 09:52:46 IST 2026
[2026-06-13 09:52:46,920.920 INFO    ] ================================================
[2026-06-13 09:52:47,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:52:47
[2026-06-13 09:52:47,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:52:47,716.716 INFO    ] Initializing speech engine...
[2026-06-13 09:52:47,721.721 INFO    ] 2026-06-13 09:52:47
[2026-06-13 09:52:47,926.926 INFO    ] 2026-06-13 09:52:47
[2026-06-13 09:52:47,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:52:48,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:52:48,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:52:48,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:52:48,328.328 INFO    ] time= 13/06/2026 09:52:48
[2026-06-13 09:52:48,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:52:48,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:52:48,437.437 INFO    ] No existing commands found in stream
[2026-06-13 09:52:53,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:52:53,449.449 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 09:52:55,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:52:55,634.634 INFO    ] Checking for system updates...
[2026-06-13 09:52:55,655.655 INFO    ] 200
[2026-06-13 09:52:55,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:55,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:55,688.688 INFO    ] No update needed
[2026-06-13 09:52:55,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 09:52:55,709.709 INFO    ] 200
[2026-06-13 09:52:55,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:52:55,735.735 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:52:55,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:52:55,776.776 INFO    ] No camera update needed
[2026-06-13 09:52:55,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:52:55,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:52:55,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:52:55,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:52:57,824.824 INFO    ] ================================================
[2026-06-13 09:52:57,839.839 INFO    ] Launching Daemon at Sat Jun 13 09:52:57 IST 2026
[2026-06-13 09:52:57,850.850 INFO    ] ================================================
[2026-06-13 09:52:58,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:52:58
[2026-06-13 09:52:58,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:52:58,655.655 INFO    ] Initializing speech engine...
[2026-06-13 09:52:58,663.663 INFO    ] 2026-06-13 09:52:58
[2026-06-13 09:52:58,888.888 INFO    ] 2026-06-13 09:52:58
[2026-06-13 09:52:58,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:52:59,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:52:59,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:52:59,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:52:59,294.294 INFO    ] time= 13/06/2026 09:52:59
[2026-06-13 09:52:59,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:52:59,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:52:59,449.449 INFO    ] No existing commands found in stream
[2026-06-13 09:53:04,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:04,463.463 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 09:53:05,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:53:05,410.410 INFO    ] Checking for system updates...
[2026-06-13 09:53:05,431.431 INFO    ] 200
[2026-06-13 09:53:05,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:05,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:05,464.464 INFO    ] No update needed
[2026-06-13 09:53:05,465.465 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:05,484.484 INFO    ] 200
[2026-06-13 09:53:05,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:05,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:05,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:05,552.552 INFO    ] No camera update needed
[2026-06-13 09:53:05,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:05,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:05,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:05,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:53:07,600.600 INFO    ] ================================================
[2026-06-13 09:53:07,615.615 INFO    ] Launching Daemon at Sat Jun 13 09:53:07 IST 2026
[2026-06-13 09:53:07,625.625 INFO    ] ================================================
[2026-06-13 09:53:07,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:53:07
[2026-06-13 09:53:08,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:53:08,422.422 INFO    ] Initializing speech engine...
[2026-06-13 09:53:08,427.427 INFO    ] 2026-06-13 09:53:08
[2026-06-13 09:53:08,629.629 INFO    ] 2026-06-13 09:53:08
[2026-06-13 09:53:08,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:53:08,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:53:08,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:53:08,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:53:09,019.019 INFO    ] time= 13/06/2026 09:53:08
[2026-06-13 09:53:09,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:53:09,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:53:09,144.144 INFO    ] No existing commands found in stream
[2026-06-13 09:53:14,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:14,156.156 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 09:53:17,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:53:17,416.416 INFO    ] Checking for system updates...
[2026-06-13 09:53:17,439.439 INFO    ] 200
[2026-06-13 09:53:17,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:17,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:17,473.473 INFO    ] No update needed
[2026-06-13 09:53:17,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:17,494.494 INFO    ] 200
[2026-06-13 09:53:17,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:17,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:17,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:17,554.554 INFO    ] No camera update needed
[2026-06-13 09:53:17,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:17,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:17,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:17,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:53:19,603.603 INFO    ] ================================================
[2026-06-13 09:53:19,618.618 INFO    ] Launching Daemon at Sat Jun 13 09:53:19 IST 2026
[2026-06-13 09:53:19,629.629 INFO    ] ================================================
[2026-06-13 09:53:19,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:53:19
[2026-06-13 09:53:20,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:53:20,450.450 INFO    ] Initializing speech engine...
[2026-06-13 09:53:20,455.455 INFO    ] 2026-06-13 09:53:20
[2026-06-13 09:53:20,670.670 INFO    ] 2026-06-13 09:53:20
[2026-06-13 09:53:20,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:53:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:53:20,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:53:21,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:53:21,046.046 INFO    ] time= 13/06/2026 09:53:21
[2026-06-13 09:53:21,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:53:21,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:53:21,227.227 INFO    ] No existing commands found in stream
[2026-06-13 09:53:26,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:26,241.241 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 09:53:26,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:53:26,882.882 INFO    ] Checking for system updates...
[2026-06-13 09:53:26,902.902 INFO    ] 200
[2026-06-13 09:53:26,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:26,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:53:26,940.940 INFO    ] No update needed
[2026-06-13 09:53:26,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:26,960.960 INFO    ] 200
[2026-06-13 09:53:26,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:26,985.985 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:27,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:53:27,022.022 INFO    ] No camera update needed
[2026-06-13 09:53:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:27,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:27,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:27,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:53:29,069.069 INFO    ] ================================================
[2026-06-13 09:53:29,084.084 INFO    ] Launching Daemon at Sat Jun 13 09:53:29 IST 2026
[2026-06-13 09:53:29,095.095 INFO    ] ================================================
[2026-06-13 09:53:29,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:53:29
[2026-06-13 09:53:29,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:53:29,984.984 INFO    ] Initializing speech engine...
[2026-06-13 09:53:29,988.988 INFO    ] 2026-06-13 09:53:29
[2026-06-13 09:53:30,196.196 INFO    ] 2026-06-13 09:53:30
[2026-06-13 09:53:30,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:53:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:53:30,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:53:30,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:53:30,607.607 INFO    ] time= 13/06/2026 09:53:30
[2026-06-13 09:53:30,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:53:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:53:30,709.709 INFO    ] No existing commands found in stream
[2026-06-13 09:53:35,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:35,724.724 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 09:53:37,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:53:37,322.322 INFO    ] Checking for system updates...
[2026-06-13 09:53:37,343.343 INFO    ] 200
[2026-06-13 09:53:37,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:37,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:37,377.377 INFO    ] No update needed
[2026-06-13 09:53:37,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:37,399.399 INFO    ] 200
[2026-06-13 09:53:37,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:37,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:37,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:37,462.462 INFO    ] No camera update needed
[2026-06-13 09:53:37,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:37,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:37,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:37,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:53:39,510.510 INFO    ] ================================================
[2026-06-13 09:53:39,525.525 INFO    ] Launching Daemon at Sat Jun 13 09:53:39 IST 2026
[2026-06-13 09:53:39,536.536 INFO    ] ================================================
[2026-06-13 09:53:39,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:53:39
[2026-06-13 09:53:40,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:53:40,376.376 INFO    ] Initializing speech engine...
[2026-06-13 09:53:40,381.381 INFO    ] 2026-06-13 09:53:40
[2026-06-13 09:53:40,587.587 INFO    ] 2026-06-13 09:53:40
[2026-06-13 09:53:40,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:53:40,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:53:40,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:53:40,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:53:40,997.997 INFO    ] time= 13/06/2026 09:53:40
[2026-06-13 09:53:41,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:53:41,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:53:41,100.100 INFO    ] No existing commands found in stream
[2026-06-13 09:53:46,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:46,114.114 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 09:53:47,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:53:47,908.908 INFO    ] Checking for system updates...
[2026-06-13 09:53:47,929.929 INFO    ] 200
[2026-06-13 09:53:47,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:47,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:47,967.967 INFO    ] No update needed
[2026-06-13 09:53:47,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:47,989.989 INFO    ] 200
[2026-06-13 09:53:47,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:48,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:48,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:48,055.055 INFO    ] No camera update needed
[2026-06-13 09:53:48,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:48,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:48,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:48,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:53:50,103.103 INFO    ] ================================================
[2026-06-13 09:53:50,117.117 INFO    ] Launching Daemon at Sat Jun 13 09:53:50 IST 2026
[2026-06-13 09:53:50,128.128 INFO    ] ================================================
[2026-06-13 09:53:50,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:53:50
[2026-06-13 09:53:50,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:53:50,921.921 INFO    ] Initializing speech engine...
[2026-06-13 09:53:50,924.924 INFO    ] 2026-06-13 09:53:50
[2026-06-13 09:53:51,122.122 INFO    ] 2026-06-13 09:53:51
[2026-06-13 09:53:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:53:51,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:53:51,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:53:51,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:53:51,471.471 INFO    ] time= 13/06/2026 09:53:51
[2026-06-13 09:53:51,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:53:51,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:53:51,600.600 INFO    ] No existing commands found in stream
[2026-06-13 09:53:56,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:53:56,622.622 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 09:53:58,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:53:58,042.042 INFO    ] Checking for system updates...
[2026-06-13 09:53:58,062.062 INFO    ] 200
[2026-06-13 09:53:58,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:58,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:58,096.096 INFO    ] No update needed
[2026-06-13 09:53:58,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 09:53:58,117.117 INFO    ] 200
[2026-06-13 09:53:58,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:53:58,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:53:58,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:53:58,193.193 INFO    ] No camera update needed
[2026-06-13 09:53:58,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:53:58,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:53:58,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:53:58,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:00,245.245 INFO    ] ================================================
[2026-06-13 09:54:00,261.261 INFO    ] Launching Daemon at Sat Jun 13 09:54:00 IST 2026
[2026-06-13 09:54:00,272.272 INFO    ] ================================================
[2026-06-13 09:54:00,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:00
[2026-06-13 09:54:00,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:01,302.302 INFO    ] Initializing speech engine...
[2026-06-13 09:54:01,305.305 INFO    ] 2026-06-13 09:54:01
[2026-06-13 09:54:01,568.568 INFO    ] 2026-06-13 09:54:01
[2026-06-13 09:54:01,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:01,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:01,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:01,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:01,950.950 INFO    ] time= 13/06/2026 09:54:01
[2026-06-13 09:54:02,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:02,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:02,148.148 INFO    ] No existing commands found in stream
[2026-06-13 09:54:07,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:54:07,172.172 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 09:54:08,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:54:08,569.569 INFO    ] Checking for system updates...
[2026-06-13 09:54:08,590.590 INFO    ] 200
[2026-06-13 09:54:08,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:08,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:54:08,623.623 INFO    ] No update needed
[2026-06-13 09:54:08,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 09:54:08,645.645 INFO    ] 200
[2026-06-13 09:54:08,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:08,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:54:08,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:08,815.815 INFO    ] No camera update needed
[2026-06-13 09:54:08,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:54:08,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:54:08,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:54:08,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:10,862.862 INFO    ] ================================================
[2026-06-13 09:54:10,877.877 INFO    ] Launching Daemon at Sat Jun 13 09:54:10 IST 2026
[2026-06-13 09:54:10,888.888 INFO    ] ================================================
[2026-06-13 09:54:11,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:11
[2026-06-13 09:54:11,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:11,736.736 INFO    ] Initializing speech engine...
[2026-06-13 09:54:11,750.750 INFO    ] 2026-06-13 09:54:11
[2026-06-13 09:54:11,961.961 INFO    ] 2026-06-13 09:54:11
[2026-06-13 09:54:11,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:12,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:12,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:12,375.375 INFO    ] time= 13/06/2026 09:54:12
[2026-06-13 09:54:12,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:12,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:12,480.480 INFO    ] No existing commands found in stream
[2026-06-13 09:54:17,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:54:17,495.495 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 09:54:19,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:54:19,881.881 INFO    ] Checking for system updates...
[2026-06-13 09:54:19,902.902 INFO    ] 200
[2026-06-13 09:54:19,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:19,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:19,936.936 INFO    ] No update needed
[2026-06-13 09:54:19,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 09:54:19,958.958 INFO    ] 200
[2026-06-13 09:54:19,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:19,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:54:20,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:20,023.023 INFO    ] No camera update needed
[2026-06-13 09:54:20,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:54:20,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:54:20,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:54:20,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:22,074.074 INFO    ] ================================================
[2026-06-13 09:54:22,089.089 INFO    ] Launching Daemon at Sat Jun 13 09:54:22 IST 2026
[2026-06-13 09:54:22,099.099 INFO    ] ================================================
[2026-06-13 09:54:22,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:22
[2026-06-13 09:54:22,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:22,880.880 INFO    ] Initializing speech engine...
[2026-06-13 09:54:22,884.884 INFO    ] 2026-06-13 09:54:22
[2026-06-13 09:54:23,113.113 INFO    ] 2026-06-13 09:54:23
[2026-06-13 09:54:23,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:23,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:23,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:23,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:23,538.538 INFO    ] time= 13/06/2026 09:54:23
[2026-06-13 09:54:23,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:23,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:23,669.669 INFO    ] No existing commands found in stream
[2026-06-13 09:54:28,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:54:28,683.683 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 09:54:29,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:54:29,891.891 INFO    ] Checking for system updates...
[2026-06-13 09:54:29,912.912 INFO    ] 200
[2026-06-13 09:54:29,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:29,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:29,945.945 INFO    ] No update needed
[2026-06-13 09:54:29,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 09:54:29,966.966 INFO    ] 200
[2026-06-13 09:54:29,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:29,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:54:30,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:30,035.035 INFO    ] No camera update needed
[2026-06-13 09:54:30,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:54:30,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:54:30,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:54:30,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:32,082.082 INFO    ] ================================================
[2026-06-13 09:54:32,096.096 INFO    ] Launching Daemon at Sat Jun 13 09:54:32 IST 2026
[2026-06-13 09:54:32,107.107 INFO    ] ================================================
[2026-06-13 09:54:32,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:32
[2026-06-13 09:54:32,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:32,888.888 INFO    ] Initializing speech engine...
[2026-06-13 09:54:32,896.896 INFO    ] 2026-06-13 09:54:32
[2026-06-13 09:54:33,120.120 INFO    ] 2026-06-13 09:54:33
[2026-06-13 09:54:33,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:33,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:33,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:33,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:33,506.506 INFO    ] time= 13/06/2026 09:54:33
[2026-06-13 09:54:33,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:33,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:33,679.679 INFO    ] No existing commands found in stream
[2026-06-13 09:54:38,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:54:38,693.693 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 09:54:41,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:54:41,946.946 INFO    ] Checking for system updates...
[2026-06-13 09:54:41,969.969 INFO    ] 200
[2026-06-13 09:54:41,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:42,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:42,003.003 INFO    ] No update needed
[2026-06-13 09:54:42,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 09:54:42,025.025 INFO    ] 200
[2026-06-13 09:54:42,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:42,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:54:42,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:54:42,092.092 INFO    ] No camera update needed
[2026-06-13 09:54:42,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:54:42,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:54:42,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:54:42,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:44,139.139 INFO    ] ================================================
[2026-06-13 09:54:44,154.154 INFO    ] Launching Daemon at Sat Jun 13 09:54:44 IST 2026
[2026-06-13 09:54:44,165.165 INFO    ] ================================================
[2026-06-13 09:54:44,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:44
[2026-06-13 09:54:44,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:44,995.995 INFO    ] Initializing speech engine...
[2026-06-13 09:54:45,005.005 INFO    ] 2026-06-13 09:54:44
[2026-06-13 09:54:45,221.221 INFO    ] 2026-06-13 09:54:45
[2026-06-13 09:54:45,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:45,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:45,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:45,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:45,572.572 INFO    ] time= 13/06/2026 09:54:45
[2026-06-13 09:54:45,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:45,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:45,747.747 INFO    ] No existing commands found in stream
[2026-06-13 09:54:50,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:54:50,761.761 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 09:54:54,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:54:54,440.440 INFO    ] Checking for system updates...
[2026-06-13 09:54:54,461.461 INFO    ] 200
[2026-06-13 09:54:54,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:54,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:54:54,495.495 INFO    ] No update needed
[2026-06-13 09:54:54,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 09:54:54,517.517 INFO    ] 200
[2026-06-13 09:54:54,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:54:54,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:54:54,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:54:54,583.583 INFO    ] No camera update needed
[2026-06-13 09:54:54,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:54:54,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:54:54,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:54:54,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:54:56,630.630 INFO    ] ================================================
[2026-06-13 09:54:56,645.645 INFO    ] Launching Daemon at Sat Jun 13 09:54:56 IST 2026
[2026-06-13 09:54:56,656.656 INFO    ] ================================================
[2026-06-13 09:54:56,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:54:56
[2026-06-13 09:54:57,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:54:57,445.445 INFO    ] Initializing speech engine...
[2026-06-13 09:54:57,454.454 INFO    ] 2026-06-13 09:54:57
[2026-06-13 09:54:57,680.680 INFO    ] 2026-06-13 09:54:57
[2026-06-13 09:54:57,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:54:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:54:57,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:54:57,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:54:57,927.927 INFO    ] time= 13/06/2026 09:54:57
[2026-06-13 09:54:57,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:54:57,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:54:58,016.016 INFO    ] No existing commands found in stream
[2026-06-13 09:55:03,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:03,053.053 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 09:55:04,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:55:04,799.799 INFO    ] Checking for system updates...
[2026-06-13 09:55:04,820.820 INFO    ] 200
[2026-06-13 09:55:04,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:04,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:04,855.855 INFO    ] No update needed
[2026-06-13 09:55:04,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:04,878.878 INFO    ] 200
[2026-06-13 09:55:04,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:04,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:04,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:04,940.940 INFO    ] No camera update needed
[2026-06-13 09:55:04,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:04,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:04,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:55:06,987.987 INFO    ] ================================================
[2026-06-13 09:55:07,003.003 INFO    ] Launching Daemon at Sat Jun 13 09:55:06 IST 2026
[2026-06-13 09:55:07,014.014 INFO    ] ================================================
[2026-06-13 09:55:07,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:55:07
[2026-06-13 09:55:07,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:55:07,813.813 INFO    ] Initializing speech engine...
[2026-06-13 09:55:07,819.819 INFO    ] 2026-06-13 09:55:07
[2026-06-13 09:55:08,023.023 INFO    ] 2026-06-13 09:55:08
[2026-06-13 09:55:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:55:08,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:55:08,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:55:08,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:55:08,382.382 INFO    ] time= 13/06/2026 09:55:08
[2026-06-13 09:55:08,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:55:08,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:55:08,538.538 INFO    ] No existing commands found in stream
[2026-06-13 09:55:13,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:13,551.551 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 09:55:14,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:55:14,585.585 INFO    ] Checking for system updates...
[2026-06-13 09:55:14,606.606 INFO    ] 200
[2026-06-13 09:55:14,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:14,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:14,639.639 INFO    ] No update needed
[2026-06-13 09:55:14,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:14,663.663 INFO    ] 200
[2026-06-13 09:55:14,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:14,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:14,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:14,728.728 INFO    ] No camera update needed
[2026-06-13 09:55:14,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:14,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:14,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:14,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:55:16,777.777 INFO    ] ================================================
[2026-06-13 09:55:16,799.799 INFO    ] Launching Daemon at Sat Jun 13 09:55:16 IST 2026
[2026-06-13 09:55:16,810.810 INFO    ] ================================================
[2026-06-13 09:55:17,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:55:17
[2026-06-13 09:55:17,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:55:17,633.633 INFO    ] Initializing speech engine...
[2026-06-13 09:55:17,638.638 INFO    ] 2026-06-13 09:55:17
[2026-06-13 09:55:17,846.846 INFO    ] 2026-06-13 09:55:17
[2026-06-13 09:55:17,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:55:17,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:55:18,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:55:18,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:55:18,264.264 INFO    ] time= 13/06/2026 09:55:18
[2026-06-13 09:55:18,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:55:18,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:55:18,361.361 INFO    ] No existing commands found in stream
[2026-06-13 09:55:23,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:23,375.375 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 09:55:25,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:55:25,488.488 INFO    ] Checking for system updates...
[2026-06-13 09:55:25,509.509 INFO    ] 200
[2026-06-13 09:55:25,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:25,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:25,543.543 INFO    ] No update needed
[2026-06-13 09:55:25,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:25,564.564 INFO    ] 200
[2026-06-13 09:55:25,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:25,589.589 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:25,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:25,627.627 INFO    ] No camera update needed
[2026-06-13 09:55:25,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:25,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:25,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:25,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:55:27,674.674 INFO    ] ================================================
[2026-06-13 09:55:27,689.689 INFO    ] Launching Daemon at Sat Jun 13 09:55:27 IST 2026
[2026-06-13 09:55:27,700.700 INFO    ] ================================================
[2026-06-13 09:55:28,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:55:28
[2026-06-13 09:55:28,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:55:28,486.486 INFO    ] Initializing speech engine...
[2026-06-13 09:55:28,496.496 INFO    ] 2026-06-13 09:55:28
[2026-06-13 09:55:28,702.702 INFO    ] 2026-06-13 09:55:28
[2026-06-13 09:55:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:55:28,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:55:28,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:55:28,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:55:29,047.047 INFO    ] time= 13/06/2026 09:55:28
[2026-06-13 09:55:29,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:55:29,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:55:29,216.216 INFO    ] No existing commands found in stream
[2026-06-13 09:55:34,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:34,230.230 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 09:55:36,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:55:36,263.263 INFO    ] Checking for system updates...
[2026-06-13 09:55:36,300.300 INFO    ] 200
[2026-06-13 09:55:36,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:36,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:55:36,357.357 INFO    ] No update needed
[2026-06-13 09:55:36,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:36,397.397 INFO    ] 200
[2026-06-13 09:55:36,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:36,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:36,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:55:36,446.446 INFO    ] No camera update needed
[2026-06-13 09:55:36,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:36,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:36,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:55:38,494.494 INFO    ] ================================================
[2026-06-13 09:55:38,510.510 INFO    ] Launching Daemon at Sat Jun 13 09:55:38 IST 2026
[2026-06-13 09:55:38,520.520 INFO    ] ================================================
[2026-06-13 09:55:38,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:55:38
[2026-06-13 09:55:39,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:55:39,350.350 INFO    ] Initializing speech engine...
[2026-06-13 09:55:39,360.360 INFO    ] 2026-06-13 09:55:39
[2026-06-13 09:55:39,565.565 INFO    ] 2026-06-13 09:55:39
[2026-06-13 09:55:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:55:39,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:55:39,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:55:39,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:55:39,935.935 INFO    ] time= 13/06/2026 09:55:39
[2026-06-13 09:55:39,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:55:40,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:55:40,078.078 INFO    ] No existing commands found in stream
[2026-06-13 09:55:45,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:45,092.092 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 09:55:48,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:55:48,655.655 INFO    ] Checking for system updates...
[2026-06-13 09:55:48,678.678 INFO    ] 200
[2026-06-13 09:55:48,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:48,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:48,715.715 INFO    ] No update needed
[2026-06-13 09:55:48,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:48,736.736 INFO    ] 200
[2026-06-13 09:55:48,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:48,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:48,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:55:48,810.810 INFO    ] No camera update needed
[2026-06-13 09:55:48,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:48,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:48,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:48,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:55:50,857.857 INFO    ] ================================================
[2026-06-13 09:55:50,872.872 INFO    ] Launching Daemon at Sat Jun 13 09:55:50 IST 2026
[2026-06-13 09:55:50,883.883 INFO    ] ================================================
[2026-06-13 09:55:51,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:55:51
[2026-06-13 09:55:51,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:55:51,681.681 INFO    ] Initializing speech engine...
[2026-06-13 09:55:51,694.694 INFO    ] 2026-06-13 09:55:51
[2026-06-13 09:55:51,913.913 INFO    ] 2026-06-13 09:55:51
[2026-06-13 09:55:51,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:55:52,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:55:52,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:55:52,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:55:52,306.306 INFO    ] time= 13/06/2026 09:55:52
[2026-06-13 09:55:52,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:55:52,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:55:52,478.478 INFO    ] No existing commands found in stream
[2026-06-13 09:55:57,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:55:57,492.492 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 09:55:58,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:55:58,390.390 INFO    ] Checking for system updates...
[2026-06-13 09:55:58,411.411 INFO    ] 200
[2026-06-13 09:55:58,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:58,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:55:58,444.444 INFO    ] No update needed
[2026-06-13 09:55:58,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 09:55:58,464.464 INFO    ] 200
[2026-06-13 09:55:58,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:55:58,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:55:58,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:55:58,531.531 INFO    ] No camera update needed
[2026-06-13 09:55:58,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:55:58,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:55:58,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:55:58,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:00,576.576 INFO    ] ================================================
[2026-06-13 09:56:00,592.592 INFO    ] Launching Daemon at Sat Jun 13 09:56:00 IST 2026
[2026-06-13 09:56:00,603.603 INFO    ] ================================================
[2026-06-13 09:56:00,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:00
[2026-06-13 09:56:01,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:01,449.449 INFO    ] Initializing speech engine...
[2026-06-13 09:56:01,454.454 INFO    ] 2026-06-13 09:56:01
[2026-06-13 09:56:01,646.646 INFO    ] 2026-06-13 09:56:01
[2026-06-13 09:56:01,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:01,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:01,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:01,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:02,008.008 INFO    ] time= 13/06/2026 09:56:01
[2026-06-13 09:56:02,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:02,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:02,127.127 INFO    ] No existing commands found in stream
[2026-06-13 09:56:07,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:56:07,165.165 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 09:56:08,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:56:08,213.213 INFO    ] Checking for system updates...
[2026-06-13 09:56:08,234.234 INFO    ] 200
[2026-06-13 09:56:08,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:08,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:56:08,269.269 INFO    ] No update needed
[2026-06-13 09:56:08,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 09:56:08,291.291 INFO    ] 200
[2026-06-13 09:56:08,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:08,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:56:08,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:56:08,354.354 INFO    ] No camera update needed
[2026-06-13 09:56:08,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:56:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:56:08,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:56:08,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:10,402.402 INFO    ] ================================================
[2026-06-13 09:56:10,417.417 INFO    ] Launching Daemon at Sat Jun 13 09:56:10 IST 2026
[2026-06-13 09:56:10,427.427 INFO    ] ================================================
[2026-06-13 09:56:10,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:10
[2026-06-13 09:56:11,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:11,290.290 INFO    ] Initializing speech engine...
[2026-06-13 09:56:11,298.298 INFO    ] 2026-06-13 09:56:11
[2026-06-13 09:56:11,548.548 INFO    ] 2026-06-13 09:56:11
[2026-06-13 09:56:11,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:11,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:11,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:11,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:11,903.903 INFO    ] time= 13/06/2026 09:56:11
[2026-06-13 09:56:11,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:11,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:12,001.001 INFO    ] No existing commands found in stream
[2026-06-13 09:56:17,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:56:17,034.034 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 09:56:21,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:56:21,175.175 INFO    ] Checking for system updates...
[2026-06-13 09:56:21,197.197 INFO    ] 200
[2026-06-13 09:56:21,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:21,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:21,233.233 INFO    ] No update needed
[2026-06-13 09:56:21,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 09:56:21,254.254 INFO    ] 200
[2026-06-13 09:56:21,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:21,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:56:21,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:21,417.417 INFO    ] No camera update needed
[2026-06-13 09:56:21,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:56:21,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:56:21,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:56:21,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:23,465.465 INFO    ] ================================================
[2026-06-13 09:56:23,480.480 INFO    ] Launching Daemon at Sat Jun 13 09:56:23 IST 2026
[2026-06-13 09:56:23,491.491 INFO    ] ================================================
[2026-06-13 09:56:23,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:23
[2026-06-13 09:56:24,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:24,326.326 INFO    ] Initializing speech engine...
[2026-06-13 09:56:24,339.339 INFO    ] 2026-06-13 09:56:24
[2026-06-13 09:56:24,545.545 INFO    ] 2026-06-13 09:56:24
[2026-06-13 09:56:24,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:24,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:24,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:24,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:24,929.929 INFO    ] time= 13/06/2026 09:56:24
[2026-06-13 09:56:24,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:24,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:25,060.060 INFO    ] No existing commands found in stream
[2026-06-13 09:56:30,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:56:30,073.073 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 09:56:33,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:56:33,405.405 INFO    ] Checking for system updates...
[2026-06-13 09:56:33,426.426 INFO    ] 200
[2026-06-13 09:56:33,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:33,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:56:33,459.459 INFO    ] No update needed
[2026-06-13 09:56:33,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 09:56:33,480.480 INFO    ] 200
[2026-06-13 09:56:33,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:33,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:56:33,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:56:33,527.527 INFO    ] No camera update needed
[2026-06-13 09:56:33,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:56:33,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:56:33,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:56:33,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:35,577.577 INFO    ] ================================================
[2026-06-13 09:56:35,593.593 INFO    ] Launching Daemon at Sat Jun 13 09:56:35 IST 2026
[2026-06-13 09:56:35,603.603 INFO    ] ================================================
[2026-06-13 09:56:35,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:35
[2026-06-13 09:56:36,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:36,476.476 INFO    ] Initializing speech engine...
[2026-06-13 09:56:36,482.482 INFO    ] 2026-06-13 09:56:36
[2026-06-13 09:56:36,690.690 INFO    ] 2026-06-13 09:56:36
[2026-06-13 09:56:36,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:36,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:36,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:37,112.112 INFO    ] time= 13/06/2026 09:56:37
[2026-06-13 09:56:37,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:37,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:37,211.211 INFO    ] No existing commands found in stream
[2026-06-13 09:56:42,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:56:42,229.229 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 09:56:43,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:56:43,259.259 INFO    ] Checking for system updates...
[2026-06-13 09:56:43,281.281 INFO    ] 200
[2026-06-13 09:56:43,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:43,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:43,318.318 INFO    ] No update needed
[2026-06-13 09:56:43,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 09:56:43,340.340 INFO    ] 200
[2026-06-13 09:56:43,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:43,367.367 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:56:43,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:43,406.406 INFO    ] No camera update needed
[2026-06-13 09:56:43,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:56:43,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:56:43,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:56:43,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:45,455.455 INFO    ] ================================================
[2026-06-13 09:56:45,470.470 INFO    ] Launching Daemon at Sat Jun 13 09:56:45 IST 2026
[2026-06-13 09:56:45,481.481 INFO    ] ================================================
[2026-06-13 09:56:45,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:45
[2026-06-13 09:56:46,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:46,248.248 INFO    ] Initializing speech engine...
[2026-06-13 09:56:46,252.252 INFO    ] 2026-06-13 09:56:46
[2026-06-13 09:56:46,471.471 INFO    ] 2026-06-13 09:56:46
[2026-06-13 09:56:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:46,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:46,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:46,857.857 INFO    ] time= 13/06/2026 09:56:46
[2026-06-13 09:56:46,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:46,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:46,989.989 INFO    ] No existing commands found in stream
[2026-06-13 09:56:51,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:56:52,001.001 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 09:56:53,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:56:53,117.117 INFO    ] Checking for system updates...
[2026-06-13 09:56:53,139.139 INFO    ] 200
[2026-06-13 09:56:53,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:53,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:53,172.172 INFO    ] No update needed
[2026-06-13 09:56:53,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 09:56:53,193.193 INFO    ] 200
[2026-06-13 09:56:53,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:56:53,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:56:53,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:56:53,262.262 INFO    ] No camera update needed
[2026-06-13 09:56:53,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:56:53,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:56:53,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:56:53,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:56:55,311.311 INFO    ] ================================================
[2026-06-13 09:56:55,327.327 INFO    ] Launching Daemon at Sat Jun 13 09:56:55 IST 2026
[2026-06-13 09:56:55,338.338 INFO    ] ================================================
[2026-06-13 09:56:55,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:56:55
[2026-06-13 09:56:56,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:56:56,352.352 INFO    ] Initializing speech engine...
[2026-06-13 09:56:56,362.362 INFO    ] 2026-06-13 09:56:56
[2026-06-13 09:56:56,637.637 INFO    ] 2026-06-13 09:56:56
[2026-06-13 09:56:56,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:56:56,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:56:56,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:56:57,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:56:57,096.096 INFO    ] time= 13/06/2026 09:56:57
[2026-06-13 09:56:57,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:56:57,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:56:57,340.340 INFO    ] No existing commands found in stream
[2026-06-13 09:57:02,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:57:02,372.372 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 09:57:06,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:57:06,641.641 INFO    ] Checking for system updates...
[2026-06-13 09:57:06,668.668 INFO    ] 200
[2026-06-13 09:57:06,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:06,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:06,707.707 INFO    ] No update needed
[2026-06-13 09:57:06,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 09:57:06,728.728 INFO    ] 200
[2026-06-13 09:57:06,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:06,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:57:06,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:06,796.796 INFO    ] No camera update needed
[2026-06-13 09:57:06,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:57:06,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:57:06,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:57:06,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:57:08,844.844 INFO    ] ================================================
[2026-06-13 09:57:08,859.859 INFO    ] Launching Daemon at Sat Jun 13 09:57:08 IST 2026
[2026-06-13 09:57:08,870.870 INFO    ] ================================================
[2026-06-13 09:57:09,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:57:09
[2026-06-13 09:57:09,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:57:09,661.661 INFO    ] Initializing speech engine...
[2026-06-13 09:57:09,667.667 INFO    ] 2026-06-13 09:57:09
[2026-06-13 09:57:09,871.871 INFO    ] 2026-06-13 09:57:09
[2026-06-13 09:57:09,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:57:10,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:57:10,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:57:13,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:57:13,289.289 INFO    ] time= 13/06/2026 09:57:13
[2026-06-13 09:57:13,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:57:13,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:57:13,336.336 INFO    ] No existing commands found in stream
[2026-06-13 09:57:18,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:57:18,349.349 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 09:57:20,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:57:20,509.509 INFO    ] Checking for system updates...
[2026-06-13 09:57:20,530.530 INFO    ] 200
[2026-06-13 09:57:20,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:20,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:20,565.565 INFO    ] No update needed
[2026-06-13 09:57:20,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 09:57:20,588.588 INFO    ] 200
[2026-06-13 09:57:20,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:20,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:57:20,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:20,656.656 INFO    ] No camera update needed
[2026-06-13 09:57:20,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:57:20,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:57:20,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:57:20,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:57:22,707.707 INFO    ] ================================================
[2026-06-13 09:57:22,723.723 INFO    ] Launching Daemon at Sat Jun 13 09:57:22 IST 2026
[2026-06-13 09:57:22,735.735 INFO    ] ================================================
[2026-06-13 09:57:23,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:57:23
[2026-06-13 09:57:23,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:57:23,570.570 INFO    ] Initializing speech engine...
[2026-06-13 09:57:23,580.580 INFO    ] 2026-06-13 09:57:23
[2026-06-13 09:57:23,790.790 INFO    ] 2026-06-13 09:57:23
[2026-06-13 09:57:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:57:24,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:57:24,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:57:24,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:57:24,203.203 INFO    ] time= 13/06/2026 09:57:24
[2026-06-13 09:57:24,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:57:24,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:57:24,317.317 INFO    ] No existing commands found in stream
[2026-06-13 09:57:29,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:57:29,332.332 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 09:57:32,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:57:32,355.355 INFO    ] Checking for system updates...
[2026-06-13 09:57:32,380.380 INFO    ] 200
[2026-06-13 09:57:32,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:32,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:32,423.423 INFO    ] No update needed
[2026-06-13 09:57:32,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 09:57:32,448.448 INFO    ] 200
[2026-06-13 09:57:32,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:32,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:57:32,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:32,527.527 INFO    ] No camera update needed
[2026-06-13 09:57:32,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:57:32,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:57:32,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:57:32,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:57:34,578.578 INFO    ] ================================================
[2026-06-13 09:57:34,595.595 INFO    ] Launching Daemon at Sat Jun 13 09:57:34 IST 2026
[2026-06-13 09:57:34,606.606 INFO    ] ================================================
[2026-06-13 09:57:34,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:57:34
[2026-06-13 09:57:35,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:57:35,495.495 INFO    ] Initializing speech engine...
[2026-06-13 09:57:35,500.500 INFO    ] 2026-06-13 09:57:35
[2026-06-13 09:57:35,710.710 INFO    ] 2026-06-13 09:57:35
[2026-06-13 09:57:35,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:57:35,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:57:35,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:57:36,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:57:36,108.108 INFO    ] time= 13/06/2026 09:57:36
[2026-06-13 09:57:36,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:57:36,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:57:36,229.229 INFO    ] No existing commands found in stream
[2026-06-13 09:57:41,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:57:41,246.246 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 09:57:45,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:57:45,570.570 INFO    ] Checking for system updates...
[2026-06-13 09:57:45,591.591 INFO    ] 200
[2026-06-13 09:57:45,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:45,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:45,625.625 INFO    ] No update needed
[2026-06-13 09:57:45,626.626 INFO    ] Checking for camera pi updates...
[2026-06-13 09:57:45,646.646 INFO    ] 200
[2026-06-13 09:57:45,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:45,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:57:45,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:45,711.711 INFO    ] No camera update needed
[2026-06-13 09:57:45,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:57:45,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:57:45,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:57:45,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:57:47,761.761 INFO    ] ================================================
[2026-06-13 09:57:47,776.776 INFO    ] Launching Daemon at Sat Jun 13 09:57:47 IST 2026
[2026-06-13 09:57:47,787.787 INFO    ] ================================================
[2026-06-13 09:57:48,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:57:48
[2026-06-13 09:57:48,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:57:48,584.584 INFO    ] Initializing speech engine...
[2026-06-13 09:57:48,598.598 INFO    ] 2026-06-13 09:57:48
[2026-06-13 09:57:48,819.819 INFO    ] 2026-06-13 09:57:48
[2026-06-13 09:57:48,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:57:48,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:57:49,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:57:49,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:57:49,218.218 INFO    ] time= 13/06/2026 09:57:49
[2026-06-13 09:57:49,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:57:49,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:57:49,368.368 INFO    ] No existing commands found in stream
[2026-06-13 09:57:54,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:57:54,381.381 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 09:57:58,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 09:57:58,201.201 INFO    ] Checking for system updates...
[2026-06-13 09:57:58,222.222 INFO    ] 200
[2026-06-13 09:57:58,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:58,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:58,255.255 INFO    ] No update needed
[2026-06-13 09:57:58,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 09:57:58,276.276 INFO    ] 200
[2026-06-13 09:57:58,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:57:58,305.305 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:57:58,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:57:58,346.346 INFO    ] No camera update needed
[2026-06-13 09:57:58,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:57:58,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:57:58,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:57:58,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:00,393.393 INFO    ] ================================================
[2026-06-13 09:58:00,409.409 INFO    ] Launching Daemon at Sat Jun 13 09:58:00 IST 2026
[2026-06-13 09:58:00,420.420 INFO    ] ================================================
[2026-06-13 09:58:00,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:00
[2026-06-13 09:58:01,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:01,214.214 INFO    ] Initializing speech engine...
[2026-06-13 09:58:01,218.218 INFO    ] 2026-06-13 09:58:01
[2026-06-13 09:58:01,422.422 INFO    ] 2026-06-13 09:58:01
[2026-06-13 09:58:01,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:01,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:01,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:01,793.793 INFO    ] time= 13/06/2026 09:58:01
[2026-06-13 09:58:01,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:01,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:01,909.909 INFO    ] No existing commands found in stream
[2026-06-13 09:58:06,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:06,921.921 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 09:58:08,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:58:08,465.465 INFO    ] Checking for system updates...
[2026-06-13 09:58:08,501.501 INFO    ] 200
[2026-06-13 09:58:08,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:08,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:58:08,540.540 INFO    ] No update needed
[2026-06-13 09:58:08,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 09:58:08,560.560 INFO    ] 200
[2026-06-13 09:58:08,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:08,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:58:08,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:58:08,631.631 INFO    ] No camera update needed
[2026-06-13 09:58:08,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:58:08,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:58:08,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:58:08,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:10,680.680 INFO    ] ================================================
[2026-06-13 09:58:10,695.695 INFO    ] Launching Daemon at Sat Jun 13 09:58:10 IST 2026
[2026-06-13 09:58:10,706.706 INFO    ] ================================================
[2026-06-13 09:58:11,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:11
[2026-06-13 09:58:11,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:11,507.507 INFO    ] Initializing speech engine...
[2026-06-13 09:58:11,513.513 INFO    ] 2026-06-13 09:58:11
[2026-06-13 09:58:11,718.718 INFO    ] 2026-06-13 09:58:11
[2026-06-13 09:58:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:11,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:11,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:12,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:12,113.113 INFO    ] time= 13/06/2026 09:58:12
[2026-06-13 09:58:12,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:12,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:12,235.235 INFO    ] No existing commands found in stream
[2026-06-13 09:58:17,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:17,247.247 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 09:58:20,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 09:58:20,458.458 INFO    ] Checking for system updates...
[2026-06-13 09:58:20,479.479 INFO    ] 200
[2026-06-13 09:58:20,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:20,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:58:20,514.514 INFO    ] No update needed
[2026-06-13 09:58:20,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 09:58:20,551.551 INFO    ] 200
[2026-06-13 09:58:20,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:20,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:58:20,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:58:20,642.642 INFO    ] No camera update needed
[2026-06-13 09:58:20,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:58:20,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:58:20,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:58:20,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:22,698.698 INFO    ] ================================================
[2026-06-13 09:58:22,712.712 INFO    ] Launching Daemon at Sat Jun 13 09:58:22 IST 2026
[2026-06-13 09:58:22,723.723 INFO    ] ================================================
[2026-06-13 09:58:23,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:23
[2026-06-13 09:58:23,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:23,910.910 INFO    ] Initializing speech engine...
[2026-06-13 09:58:23,920.920 INFO    ] 2026-06-13 09:58:23
[2026-06-13 09:58:24,129.129 INFO    ] 2026-06-13 09:58:24
[2026-06-13 09:58:24,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:24,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:24,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:24,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:24,485.485 INFO    ] time= 13/06/2026 09:58:24
[2026-06-13 09:58:24,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:24,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:24,649.649 INFO    ] No existing commands found in stream
[2026-06-13 09:58:29,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:29,661.661 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 09:58:31,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 09:58:31,919.919 INFO    ] Checking for system updates...
[2026-06-13 09:58:31,942.942 INFO    ] 200
[2026-06-13 09:58:31,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:31,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:58:31,982.982 INFO    ] No update needed
[2026-06-13 09:58:31,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 09:58:32,006.006 INFO    ] 200
[2026-06-13 09:58:32,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:32,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:58:32,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:58:32,072.072 INFO    ] No camera update needed
[2026-06-13 09:58:32,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:58:32,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:58:32,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:58:32,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:34,115.115 INFO    ] ================================================
[2026-06-13 09:58:34,131.131 INFO    ] Launching Daemon at Sat Jun 13 09:58:34 IST 2026
[2026-06-13 09:58:34,141.141 INFO    ] ================================================
[2026-06-13 09:58:34,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:34
[2026-06-13 09:58:34,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:34,909.909 INFO    ] Initializing speech engine...
[2026-06-13 09:58:34,921.921 INFO    ] 2026-06-13 09:58:34
[2026-06-13 09:58:35,126.126 INFO    ] 2026-06-13 09:58:35
[2026-06-13 09:58:35,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:35,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:35,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:35,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:35,528.528 INFO    ] time= 13/06/2026 09:58:35
[2026-06-13 09:58:35,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:35,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:35,641.641 INFO    ] No existing commands found in stream
[2026-06-13 09:58:40,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:40,654.654 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 09:58:41,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:58:41,313.313 INFO    ] Checking for system updates...
[2026-06-13 09:58:41,334.334 INFO    ] 200
[2026-06-13 09:58:41,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:41,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:58:41,369.369 INFO    ] No update needed
[2026-06-13 09:58:41,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 09:58:41,390.390 INFO    ] 200
[2026-06-13 09:58:41,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:41,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:58:41,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:58:41,454.454 INFO    ] No camera update needed
[2026-06-13 09:58:41,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:58:41,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:58:41,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:58:41,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:43,502.502 INFO    ] ================================================
[2026-06-13 09:58:43,519.519 INFO    ] Launching Daemon at Sat Jun 13 09:58:43 IST 2026
[2026-06-13 09:58:43,531.531 INFO    ] ================================================
[2026-06-13 09:58:43,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:43
[2026-06-13 09:58:44,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:44,327.327 INFO    ] Initializing speech engine...
[2026-06-13 09:58:44,341.341 INFO    ] 2026-06-13 09:58:44
[2026-06-13 09:58:44,547.547 INFO    ] 2026-06-13 09:58:44
[2026-06-13 09:58:44,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:44,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:44,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:44,966.966 INFO    ] time= 13/06/2026 09:58:44
[2026-06-13 09:58:44,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:44,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:45,061.061 INFO    ] No existing commands found in stream
[2026-06-13 09:58:50,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:50,075.075 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 09:58:50,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:58:50,439.439 INFO    ] Checking for system updates...
[2026-06-13 09:58:50,459.459 INFO    ] 200
[2026-06-13 09:58:50,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:50,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:58:50,493.493 INFO    ] No update needed
[2026-06-13 09:58:50,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 09:58:50,514.514 INFO    ] 200
[2026-06-13 09:58:50,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:58:50,539.539 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:58:50,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:58:50,578.578 INFO    ] No camera update needed
[2026-06-13 09:58:50,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:58:50,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:58:50,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:58:50,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:58:52,627.627 INFO    ] ================================================
[2026-06-13 09:58:52,643.643 INFO    ] Launching Daemon at Sat Jun 13 09:58:52 IST 2026
[2026-06-13 09:58:52,654.654 INFO    ] ================================================
[2026-06-13 09:58:52,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:58:52
[2026-06-13 09:58:53,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:58:53,449.449 INFO    ] Initializing speech engine...
[2026-06-13 09:58:53,461.461 INFO    ] 2026-06-13 09:58:53
[2026-06-13 09:58:53,668.668 INFO    ] 2026-06-13 09:58:53
[2026-06-13 09:58:53,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:58:53,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:58:53,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:58:54,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:58:54,070.070 INFO    ] time= 13/06/2026 09:58:54
[2026-06-13 09:58:54,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:58:54,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:58:54,186.186 INFO    ] No existing commands found in stream
[2026-06-13 09:58:59,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:58:59,197.197 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 09:59:01,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 09:59:01,279.279 INFO    ] Checking for system updates...
[2026-06-13 09:59:01,300.300 INFO    ] 200
[2026-06-13 09:59:01,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:01,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:59:01,333.333 INFO    ] No update needed
[2026-06-13 09:59:01,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 09:59:01,354.354 INFO    ] 200
[2026-06-13 09:59:01,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:01,381.381 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:59:01,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:59:01,414.414 INFO    ] No camera update needed
[2026-06-13 09:59:01,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:59:01,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:59:01,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:59:01,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:59:03,450.450 INFO    ] ================================================
[2026-06-13 09:59:03,465.465 INFO    ] Launching Daemon at Sat Jun 13 09:59:03 IST 2026
[2026-06-13 09:59:03,477.477 INFO    ] ================================================
[2026-06-13 09:59:03,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:59:03
[2026-06-13 09:59:04,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:59:04,264.264 INFO    ] Initializing speech engine...
[2026-06-13 09:59:04,268.268 INFO    ] 2026-06-13 09:59:04
[2026-06-13 09:59:04,501.501 INFO    ] 2026-06-13 09:59:04
[2026-06-13 09:59:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:59:04,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:59:04,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:59:04,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:59:04,915.915 INFO    ] time= 13/06/2026 09:59:04
[2026-06-13 09:59:04,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:59:04,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:59:05,076.076 INFO    ] No existing commands found in stream
[2026-06-13 09:59:10,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:59:10,089.089 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 09:59:14,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:59:14,034.034 INFO    ] Checking for system updates...
[2026-06-13 09:59:14,055.055 INFO    ] 200
[2026-06-13 09:59:14,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:14,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:14,092.092 INFO    ] No update needed
[2026-06-13 09:59:14,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 09:59:14,115.115 INFO    ] 200
[2026-06-13 09:59:14,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:14,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:59:14,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:14,176.176 INFO    ] No camera update needed
[2026-06-13 09:59:14,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:59:14,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:59:14,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:59:14,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:59:16,224.224 INFO    ] ================================================
[2026-06-13 09:59:16,240.240 INFO    ] Launching Daemon at Sat Jun 13 09:59:16 IST 2026
[2026-06-13 09:59:16,251.251 INFO    ] ================================================
[2026-06-13 09:59:16,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:59:16
[2026-06-13 09:59:16,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:59:17,029.029 INFO    ] Initializing speech engine...
[2026-06-13 09:59:17,040.040 INFO    ] 2026-06-13 09:59:17
[2026-06-13 09:59:17,245.245 INFO    ] 2026-06-13 09:59:17
[2026-06-13 09:59:17,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:59:17,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:59:17,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:59:17,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:59:17,652.652 INFO    ] time= 13/06/2026 09:59:17
[2026-06-13 09:59:17,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:59:17,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:59:17,770.770 INFO    ] No existing commands found in stream
[2026-06-13 09:59:22,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:59:22,782.782 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 09:59:24,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 09:59:24,604.604 INFO    ] Checking for system updates...
[2026-06-13 09:59:24,624.624 INFO    ] 200
[2026-06-13 09:59:24,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:24,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:24,660.660 INFO    ] No update needed
[2026-06-13 09:59:24,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 09:59:24,680.680 INFO    ] 200
[2026-06-13 09:59:24,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:24,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:59:24,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:24,747.747 INFO    ] No camera update needed
[2026-06-13 09:59:24,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:59:24,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:59:24,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:59:24,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:59:26,794.794 INFO    ] ================================================
[2026-06-13 09:59:26,810.810 INFO    ] Launching Daemon at Sat Jun 13 09:59:26 IST 2026
[2026-06-13 09:59:26,821.821 INFO    ] ================================================
[2026-06-13 09:59:27,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:59:27
[2026-06-13 09:59:27,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:59:27,686.686 INFO    ] Initializing speech engine...
[2026-06-13 09:59:27,691.691 INFO    ] 2026-06-13 09:59:27
[2026-06-13 09:59:27,902.902 INFO    ] 2026-06-13 09:59:27
[2026-06-13 09:59:27,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:59:28,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:59:28,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:59:28,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:59:28,315.315 INFO    ] time= 13/06/2026 09:59:28
[2026-06-13 09:59:28,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:59:28,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:59:28,425.425 INFO    ] No existing commands found in stream
[2026-06-13 09:59:33,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:59:33,439.439 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 09:59:35,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:59:35,440.440 INFO    ] Checking for system updates...
[2026-06-13 09:59:35,461.461 INFO    ] 200
[2026-06-13 09:59:35,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:35,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:59:35,494.494 INFO    ] No update needed
[2026-06-13 09:59:35,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 09:59:35,517.517 INFO    ] 200
[2026-06-13 09:59:35,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:35,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:59:35,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 09:59:35,582.582 INFO    ] No camera update needed
[2026-06-13 09:59:35,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:59:35,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:59:35,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:59:35,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:59:37,632.632 INFO    ] ================================================
[2026-06-13 09:59:37,648.648 INFO    ] Launching Daemon at Sat Jun 13 09:59:37 IST 2026
[2026-06-13 09:59:37,660.660 INFO    ] ================================================
[2026-06-13 09:59:37,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:59:37
[2026-06-13 09:59:38,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:59:38,435.435 INFO    ] Initializing speech engine...
[2026-06-13 09:59:38,440.440 INFO    ] 2026-06-13 09:59:38
[2026-06-13 09:59:38,631.631 INFO    ] 2026-06-13 09:59:38
[2026-06-13 09:59:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:59:38,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:59:38,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:59:38,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:59:38,990.990 INFO    ] time= 13/06/2026 09:59:38
[2026-06-13 09:59:39,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:59:39,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:59:39,154.154 INFO    ] No existing commands found in stream
[2026-06-13 09:59:44,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:59:44,173.173 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 09:59:47,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 09:59:47,589.589 INFO    ] Checking for system updates...
[2026-06-13 09:59:47,611.611 INFO    ] 200
[2026-06-13 09:59:47,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:47,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:47,644.644 INFO    ] No update needed
[2026-06-13 09:59:47,646.646 INFO    ] Checking for camera pi updates...
[2026-06-13 09:59:47,665.665 INFO    ] 200
[2026-06-13 09:59:47,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 09:59:47,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 09:59:47,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 09:59:47,727.727 INFO    ] No camera update needed
[2026-06-13 09:59:47,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 09:59:47,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 09:59:47,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 09:59:47,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 09:59:49,775.775 INFO    ] ================================================
[2026-06-13 09:59:49,792.792 INFO    ] Launching Daemon at Sat Jun 13 09:59:49 IST 2026
[2026-06-13 09:59:49,803.803 INFO    ] ================================================
[2026-06-13 09:59:50,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 09:59:50
[2026-06-13 09:59:50,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 09:59:51,069.069 INFO    ] Initializing speech engine...
[2026-06-13 09:59:51,078.078 INFO    ] 2026-06-13 09:59:51
[2026-06-13 09:59:51,374.374 INFO    ] 2026-06-13 09:59:51
[2026-06-13 09:59:51,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 09:59:51,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 09:59:51,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 09:59:51,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 09:59:51,731.731 INFO    ] time= 13/06/2026 09:59:51
[2026-06-13 09:59:51,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 09:59:51,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 09:59:51,812.812 INFO    ] No existing commands found in stream
[2026-06-13 09:59:56,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 09:59:56,826.826 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 10:00:00,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:00:00,810.810 INFO    ] Checking for system updates...
[2026-06-13 10:00:00,831.831 INFO    ] 200
[2026-06-13 10:00:00,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:00,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:00,866.866 INFO    ] No update needed
[2026-06-13 10:00:00,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 10:00:00,889.889 INFO    ] 200
[2026-06-13 10:00:00,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:00,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:00:00,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:00,956.956 INFO    ] No camera update needed
[2026-06-13 10:00:00,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:00:00,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:00:00,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:00:00,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:00:03,119.119 INFO    ] ================================================
[2026-06-13 10:00:03,266.266 INFO    ] Launching Daemon at Sat Jun 13 10:00:03 IST 2026
[2026-06-13 10:00:03,346.346 INFO    ] ================================================
[2026-06-13 10:00:04,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:00:04
[2026-06-13 10:00:05,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:00:06,207.207 INFO    ] Initializing speech engine...
[2026-06-13 10:00:06,216.216 INFO    ] 2026-06-13 10:00:06
[2026-06-13 10:00:06,462.462 INFO    ] 2026-06-13 10:00:06
[2026-06-13 10:00:06,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:00:06,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:00:06,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:00:06,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:00:06,798.798 INFO    ] time= 13/06/2026 10:00:06
[2026-06-13 10:00:06,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:00:06,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:00:06,909.909 INFO    ] No existing commands found in stream
[2026-06-13 10:00:11,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:00:11,925.925 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 10:00:15,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:00:15,446.446 INFO    ] Checking for system updates...
[2026-06-13 10:00:15,468.468 INFO    ] 200
[2026-06-13 10:00:15,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:15,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:15,502.502 INFO    ] No update needed
[2026-06-13 10:00:15,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 10:00:15,523.523 INFO    ] 200
[2026-06-13 10:00:15,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:15,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:00:15,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:15,590.590 INFO    ] No camera update needed
[2026-06-13 10:00:15,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:00:15,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:00:15,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:00:15,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:00:17,638.638 INFO    ] ================================================
[2026-06-13 10:00:17,654.654 INFO    ] Launching Daemon at Sat Jun 13 10:00:17 IST 2026
[2026-06-13 10:00:17,666.666 INFO    ] ================================================
[2026-06-13 10:00:18,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:00:18
[2026-06-13 10:00:18,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:00:18,869.869 INFO    ] Initializing speech engine...
[2026-06-13 10:00:18,878.878 INFO    ] 2026-06-13 10:00:18
[2026-06-13 10:00:19,126.126 INFO    ] 2026-06-13 10:00:19
[2026-06-13 10:00:19,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:00:19,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:00:19,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:00:19,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:00:19,497.497 INFO    ] time= 13/06/2026 10:00:19
[2026-06-13 10:00:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:00:19,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:00:19,579.579 INFO    ] No existing commands found in stream
[2026-06-13 10:00:24,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:00:24,598.598 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 10:00:27,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:00:27,330.330 INFO    ] Checking for system updates...
[2026-06-13 10:00:27,352.352 INFO    ] 200
[2026-06-13 10:00:27,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:27,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:00:27,385.385 INFO    ] No update needed
[2026-06-13 10:00:27,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 10:00:27,405.405 INFO    ] 200
[2026-06-13 10:00:27,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:27,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:00:27,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:00:27,470.470 INFO    ] No camera update needed
[2026-06-13 10:00:27,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:00:27,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:00:27,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:00:27,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:00:29,519.519 INFO    ] ================================================
[2026-06-13 10:00:29,534.534 INFO    ] Launching Daemon at Sat Jun 13 10:00:29 IST 2026
[2026-06-13 10:00:29,546.546 INFO    ] ================================================
[2026-06-13 10:00:29,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:00:29
[2026-06-13 10:00:30,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:00:30,336.336 INFO    ] Initializing speech engine...
[2026-06-13 10:00:30,341.341 INFO    ] 2026-06-13 10:00:30
[2026-06-13 10:00:30,548.548 INFO    ] 2026-06-13 10:00:30
[2026-06-13 10:00:30,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:00:30,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:00:30,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:00:30,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:00:30,883.883 INFO    ] time= 13/06/2026 10:00:30
[2026-06-13 10:00:30,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:00:30,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:00:31,068.068 INFO    ] No existing commands found in stream
[2026-06-13 10:00:36,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:00:36,082.082 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 10:00:39,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:00:39,624.624 INFO    ] Checking for system updates...
[2026-06-13 10:00:39,645.645 INFO    ] 200
[2026-06-13 10:00:39,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:39,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:00:39,679.679 INFO    ] No update needed
[2026-06-13 10:00:39,680.680 INFO    ] Checking for camera pi updates...
[2026-06-13 10:00:39,699.699 INFO    ] 200
[2026-06-13 10:00:39,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:39,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:00:39,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:00:39,866.866 INFO    ] No camera update needed
[2026-06-13 10:00:39,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:00:39,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:00:39,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:00:39,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:00:41,915.915 INFO    ] ================================================
[2026-06-13 10:00:41,931.931 INFO    ] Launching Daemon at Sat Jun 13 10:00:41 IST 2026
[2026-06-13 10:00:41,943.943 INFO    ] ================================================
[2026-06-13 10:00:42,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:00:42
[2026-06-13 10:00:42,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:00:42,801.801 INFO    ] Initializing speech engine...
[2026-06-13 10:00:42,811.811 INFO    ] 2026-06-13 10:00:42
[2026-06-13 10:00:43,020.020 INFO    ] 2026-06-13 10:00:43
[2026-06-13 10:00:43,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:00:43,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:00:43,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:00:43,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:00:43,425.425 INFO    ] time= 13/06/2026 10:00:43
[2026-06-13 10:00:43,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:00:43,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:00:43,537.537 INFO    ] No existing commands found in stream
[2026-06-13 10:00:48,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:00:48,552.552 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 10:00:51,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:00:51,802.802 INFO    ] Checking for system updates...
[2026-06-13 10:00:51,824.824 INFO    ] 200
[2026-06-13 10:00:51,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:51,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:51,858.858 INFO    ] No update needed
[2026-06-13 10:00:51,859.859 INFO    ] Checking for camera pi updates...
[2026-06-13 10:00:51,880.880 INFO    ] 200
[2026-06-13 10:00:51,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:00:51,907.907 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:00:51,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:00:51,945.945 INFO    ] No camera update needed
[2026-06-13 10:00:51,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:00:51,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:00:51,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:00:51,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:00:54,996.996 INFO    ] ================================================
[2026-06-13 10:00:54,011.011 INFO    ] Launching Daemon at Sat Jun 13 10:00:54 IST 2026
[2026-06-13 10:00:54,022.022 INFO    ] ================================================
[2026-06-13 10:00:54,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:00:54
[2026-06-13 10:00:54,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:00:54,823.823 INFO    ] Initializing speech engine...
[2026-06-13 10:00:54,834.834 INFO    ] 2026-06-13 10:00:54
[2026-06-13 10:00:55,046.046 INFO    ] 2026-06-13 10:00:55
[2026-06-13 10:00:55,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:00:55,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:00:55,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:00:55,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:00:55,462.462 INFO    ] time= 13/06/2026 10:00:55
[2026-06-13 10:00:55,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:00:55,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:00:55,570.570 INFO    ] No existing commands found in stream
[2026-06-13 10:01:00,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:00,588.588 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 10:01:03,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:01:03,574.574 INFO    ] Checking for system updates...
[2026-06-13 10:01:03,612.612 INFO    ] 200
[2026-06-13 10:01:03,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:03,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:03,672.672 INFO    ] No update needed
[2026-06-13 10:01:03,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:03,711.711 INFO    ] 200
[2026-06-13 10:01:03,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:03,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:03,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:03,801.801 INFO    ] No camera update needed
[2026-06-13 10:01:03,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:03,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:03,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:03,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:05,849.849 INFO    ] ================================================
[2026-06-13 10:01:05,865.865 INFO    ] Launching Daemon at Sat Jun 13 10:01:05 IST 2026
[2026-06-13 10:01:05,876.876 INFO    ] ================================================
[2026-06-13 10:01:06,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:06
[2026-06-13 10:01:06,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:01:06,694.694 INFO    ] Initializing speech engine...
[2026-06-13 10:01:06,698.698 INFO    ] 2026-06-13 10:01:06
[2026-06-13 10:01:06,914.914 INFO    ] 2026-06-13 10:01:06
[2026-06-13 10:01:06,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:01:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:01:07,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:01:07,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:01:07,345.345 INFO    ] time= 13/06/2026 10:01:07
[2026-06-13 10:01:07,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:01:07,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:01:07,494.494 INFO    ] No existing commands found in stream
[2026-06-13 10:01:12,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:12,507.507 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 10:01:15,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:01:15,426.426 INFO    ] Checking for system updates...
[2026-06-13 10:01:15,449.449 INFO    ] 200
[2026-06-13 10:01:15,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:15,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:15,484.484 INFO    ] No update needed
[2026-06-13 10:01:15,485.485 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:15,505.505 INFO    ] 200
[2026-06-13 10:01:15,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:15,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:15,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:15,568.568 INFO    ] No camera update needed
[2026-06-13 10:01:15,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:15,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:15,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:15,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:17,615.615 INFO    ] ================================================
[2026-06-13 10:01:17,632.632 INFO    ] Launching Daemon at Sat Jun 13 10:01:17 IST 2026
[2026-06-13 10:01:17,643.643 INFO    ] ================================================
[2026-06-13 10:01:17,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:17
[2026-06-13 10:01:18,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:01:18,429.429 INFO    ] Initializing speech engine...
[2026-06-13 10:01:18,433.433 INFO    ] 2026-06-13 10:01:18
[2026-06-13 10:01:18,652.652 INFO    ] 2026-06-13 10:01:18
[2026-06-13 10:01:18,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:01:18,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:01:18,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:01:19,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:01:19,064.064 INFO    ] time= 13/06/2026 10:01:19
[2026-06-13 10:01:19,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:01:19,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:01:19,182.182 INFO    ] No existing commands found in stream
[2026-06-13 10:01:24,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:24,195.195 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 10:01:24,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:01:24,630.630 INFO    ] Checking for system updates...
[2026-06-13 10:01:24,651.651 INFO    ] 200
[2026-06-13 10:01:24,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:24,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:24,684.684 INFO    ] No update needed
[2026-06-13 10:01:24,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:24,705.705 INFO    ] 200
[2026-06-13 10:01:24,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:24,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:24,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:24,773.773 INFO    ] No camera update needed
[2026-06-13 10:01:24,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:24,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:24,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:24,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:26,820.820 INFO    ] ================================================
[2026-06-13 10:01:26,836.836 INFO    ] Launching Daemon at Sat Jun 13 10:01:26 IST 2026
[2026-06-13 10:01:26,847.847 INFO    ] ================================================
[2026-06-13 10:01:27,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:27
[2026-06-13 10:01:27,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:01:27,645.645 INFO    ] Initializing speech engine...
[2026-06-13 10:01:27,658.658 INFO    ] 2026-06-13 10:01:27
[2026-06-13 10:01:27,879.879 INFO    ] 2026-06-13 10:01:27
[2026-06-13 10:01:27,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:01:28,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:01:28,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:01:28,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:01:28,280.280 INFO    ] time= 13/06/2026 10:01:28
[2026-06-13 10:01:28,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:01:28,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:01:28,439.439 INFO    ] No existing commands found in stream
[2026-06-13 10:01:33,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:33,453.453 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 10:01:36,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:01:36,453.453 INFO    ] Checking for system updates...
[2026-06-13 10:01:36,477.477 INFO    ] 200
[2026-06-13 10:01:36,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:36,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:01:36,511.511 INFO    ] No update needed
[2026-06-13 10:01:36,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:36,532.532 INFO    ] 200
[2026-06-13 10:01:36,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:36,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:36,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:01:36,600.600 INFO    ] No camera update needed
[2026-06-13 10:01:36,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:36,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:36,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:36,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:38,647.647 INFO    ] ================================================
[2026-06-13 10:01:38,663.663 INFO    ] Launching Daemon at Sat Jun 13 10:01:38 IST 2026
[2026-06-13 10:01:38,673.673 INFO    ] ================================================
[2026-06-13 10:01:39,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:39
[2026-06-13 10:01:39,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:01:39,470.470 INFO    ] Initializing speech engine...
[2026-06-13 10:01:39,474.474 INFO    ] 2026-06-13 10:01:39
[2026-06-13 10:01:39,697.697 INFO    ] 2026-06-13 10:01:39
[2026-06-13 10:01:39,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:01:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:01:39,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:01:40,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:01:40,080.080 INFO    ] time= 13/06/2026 10:01:40
[2026-06-13 10:01:40,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:01:40,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:01:40,271.271 INFO    ] No existing commands found in stream
[2026-06-13 10:01:45,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:45,283.283 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 10:01:47,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:01:47,118.118 INFO    ] Checking for system updates...
[2026-06-13 10:01:47,139.139 INFO    ] 200
[2026-06-13 10:01:47,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:47,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:47,175.175 INFO    ] No update needed
[2026-06-13 10:01:47,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:47,197.197 INFO    ] 200
[2026-06-13 10:01:47,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:47,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:47,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:01:47,263.263 INFO    ] No camera update needed
[2026-06-13 10:01:47,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:47,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:47,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:47,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:49,311.311 INFO    ] ================================================
[2026-06-13 10:01:49,326.326 INFO    ] Launching Daemon at Sat Jun 13 10:01:49 IST 2026
[2026-06-13 10:01:49,337.337 INFO    ] ================================================
[2026-06-13 10:01:49,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:49
[2026-06-13 10:01:50,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:01:50,151.151 INFO    ] Initializing speech engine...
[2026-06-13 10:01:50,163.163 INFO    ] 2026-06-13 10:01:50
[2026-06-13 10:01:50,372.372 INFO    ] 2026-06-13 10:01:50
[2026-06-13 10:01:50,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:01:50,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:01:50,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:01:50,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:01:50,782.782 INFO    ] time= 13/06/2026 10:01:50
[2026-06-13 10:01:50,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:01:50,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:01:50,893.893 INFO    ] No existing commands found in stream
[2026-06-13 10:01:55,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:01:55,906.906 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 10:01:57,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:01:57,205.205 INFO    ] Checking for system updates...
[2026-06-13 10:01:57,225.225 INFO    ] 200
[2026-06-13 10:01:57,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:57,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:01:57,259.259 INFO    ] No update needed
[2026-06-13 10:01:57,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 10:01:57,280.280 INFO    ] 200
[2026-06-13 10:01:57,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:01:57,305.305 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:01:57,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:01:57,339.339 INFO    ] No camera update needed
[2026-06-13 10:01:57,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:01:57,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:01:57,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:01:57,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:01:59,389.389 INFO    ] ================================================
[2026-06-13 10:01:59,404.404 INFO    ] Launching Daemon at Sat Jun 13 10:01:59 IST 2026
[2026-06-13 10:01:59,415.415 INFO    ] ================================================
[2026-06-13 10:01:59,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:01:59
[2026-06-13 10:02:00,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:00,203.203 INFO    ] Initializing speech engine...
[2026-06-13 10:02:00,216.216 INFO    ] 2026-06-13 10:02:00
[2026-06-13 10:02:00,436.436 INFO    ] 2026-06-13 10:02:00
[2026-06-13 10:02:00,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:00,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:00,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:00,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:00,815.815 INFO    ] time= 13/06/2026 10:02:00
[2026-06-13 10:02:00,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:00,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:00,999.999 INFO    ] No existing commands found in stream
[2026-06-13 10:02:06,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:02:06,012.012 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 10:02:06,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:02:06,803.803 INFO    ] Checking for system updates...
[2026-06-13 10:02:06,824.824 INFO    ] 200
[2026-06-13 10:02:06,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:06,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:06,859.859 INFO    ] No update needed
[2026-06-13 10:02:06,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 10:02:06,880.880 INFO    ] 200
[2026-06-13 10:02:06,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:06,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:02:06,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:06,945.945 INFO    ] No camera update needed
[2026-06-13 10:02:06,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:02:06,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:02:06,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:02:06,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:02:08,992.992 INFO    ] ================================================
[2026-06-13 10:02:09,007.007 INFO    ] Launching Daemon at Sat Jun 13 10:02:09 IST 2026
[2026-06-13 10:02:09,017.017 INFO    ] ================================================
[2026-06-13 10:02:09,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:02:09
[2026-06-13 10:02:09,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:09,859.859 INFO    ] Initializing speech engine...
[2026-06-13 10:02:09,873.873 INFO    ] 2026-06-13 10:02:09
[2026-06-13 10:02:10,085.085 INFO    ] 2026-06-13 10:02:10
[2026-06-13 10:02:10,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:10,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:10,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:10,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:10,501.501 INFO    ] time= 13/06/2026 10:02:10
[2026-06-13 10:02:10,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:10,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:10,740.740 INFO    ] No existing commands found in stream
[2026-06-13 10:02:15,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:02:15,774.774 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 10:02:17,034.034 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:02:17,035.035 INFO    ] Checking for system updates...
[2026-06-13 10:02:17,057.057 INFO    ] 200
[2026-06-13 10:02:17,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:17,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:02:17,092.092 INFO    ] No update needed
[2026-06-13 10:02:17,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 10:02:17,113.113 INFO    ] 200
[2026-06-13 10:02:17,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:17,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:02:17,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:02:17,177.177 INFO    ] No camera update needed
[2026-06-13 10:02:17,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:02:17,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:02:17,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:02:17,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:02:19,223.223 INFO    ] ================================================
[2026-06-13 10:02:19,239.239 INFO    ] Launching Daemon at Sat Jun 13 10:02:19 IST 2026
[2026-06-13 10:02:19,250.250 INFO    ] ================================================
[2026-06-13 10:02:19,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:02:19
[2026-06-13 10:02:19,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:20,070.070 INFO    ] Initializing speech engine...
[2026-06-13 10:02:20,079.079 INFO    ] 2026-06-13 10:02:20
[2026-06-13 10:02:20,286.286 INFO    ] 2026-06-13 10:02:20
[2026-06-13 10:02:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:20,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:20,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:20,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:20,675.675 INFO    ] time= 13/06/2026 10:02:20
[2026-06-13 10:02:20,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:20,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:20,799.799 INFO    ] No existing commands found in stream
[2026-06-13 10:02:25,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:02:25,812.812 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 10:02:29,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:02:29,325.325 INFO    ] Checking for system updates...
[2026-06-13 10:02:29,345.345 INFO    ] 200
[2026-06-13 10:02:29,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:29,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:29,381.381 INFO    ] No update needed
[2026-06-13 10:02:29,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 10:02:29,403.403 INFO    ] 200
[2026-06-13 10:02:29,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:29,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:02:29,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:29,468.468 INFO    ] No camera update needed
[2026-06-13 10:02:29,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:02:29,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:02:29,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:02:29,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:02:31,509.509 INFO    ] ================================================
[2026-06-13 10:02:31,519.519 INFO    ] Launching Daemon at Sat Jun 13 10:02:31 IST 2026
[2026-06-13 10:02:31,525.525 INFO    ] ================================================
[2026-06-13 10:02:31,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:02:31
[2026-06-13 10:02:32,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:32,404.404 INFO    ] Initializing speech engine...
[2026-06-13 10:02:32,409.409 INFO    ] 2026-06-13 10:02:32
[2026-06-13 10:02:32,620.620 INFO    ] 2026-06-13 10:02:32
[2026-06-13 10:02:32,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:32,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:32,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:33,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:33,049.049 INFO    ] time= 13/06/2026 10:02:33
[2026-06-13 10:02:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:33,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:33,229.229 INFO    ] No existing commands found in stream
[2026-06-13 10:02:38,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:02:38,243.243 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 10:02:41,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:02:41,651.651 INFO    ] Checking for system updates...
[2026-06-13 10:02:41,672.672 INFO    ] 200
[2026-06-13 10:02:41,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:41,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:41,708.708 INFO    ] No update needed
[2026-06-13 10:02:41,710.710 INFO    ] Checking for camera pi updates...
[2026-06-13 10:02:41,731.731 INFO    ] 200
[2026-06-13 10:02:41,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:41,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:02:41,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:41,896.896 INFO    ] No camera update needed
[2026-06-13 10:02:41,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:02:41,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:02:41,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:02:41,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:02:43,946.946 INFO    ] ================================================
[2026-06-13 10:02:43,962.962 INFO    ] Launching Daemon at Sat Jun 13 10:02:43 IST 2026
[2026-06-13 10:02:43,973.973 INFO    ] ================================================
[2026-06-13 10:02:44,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:02:44
[2026-06-13 10:02:44,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:44,790.790 INFO    ] Initializing speech engine...
[2026-06-13 10:02:44,801.801 INFO    ] 2026-06-13 10:02:44
[2026-06-13 10:02:45,005.005 INFO    ] 2026-06-13 10:02:44
[2026-06-13 10:02:45,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:45,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:45,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:45,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:45,421.421 INFO    ] time= 13/06/2026 10:02:45
[2026-06-13 10:02:45,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:45,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:45,521.521 INFO    ] No existing commands found in stream
[2026-06-13 10:02:50,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:02:50,533.533 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 10:02:53,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:02:53,255.255 INFO    ] Checking for system updates...
[2026-06-13 10:02:53,277.277 INFO    ] 200
[2026-06-13 10:02:53,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:53,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:53,311.311 INFO    ] No update needed
[2026-06-13 10:02:53,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 10:02:53,332.332 INFO    ] 200
[2026-06-13 10:02:53,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:02:53,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:02:53,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:02:53,399.399 INFO    ] No camera update needed
[2026-06-13 10:02:53,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:02:53,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:02:53,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:02:53,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:02:55,448.448 INFO    ] ================================================
[2026-06-13 10:02:55,463.463 INFO    ] Launching Daemon at Sat Jun 13 10:02:55 IST 2026
[2026-06-13 10:02:55,474.474 INFO    ] ================================================
[2026-06-13 10:02:55,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:02:55
[2026-06-13 10:02:56,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:02:56,327.327 INFO    ] Initializing speech engine...
[2026-06-13 10:02:56,349.349 INFO    ] 2026-06-13 10:02:56
[2026-06-13 10:02:56,561.561 INFO    ] 2026-06-13 10:02:56
[2026-06-13 10:02:56,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:02:56,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:02:56,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:02:56,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:02:56,861.861 INFO    ] time= 13/06/2026 10:02:56
[2026-06-13 10:02:56,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:02:56,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:02:56,913.913 INFO    ] No existing commands found in stream
[2026-06-13 10:03:01,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:03:01,921.921 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 10:03:04,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:03:04,434.434 INFO    ] Checking for system updates...
[2026-06-13 10:03:04,455.455 INFO    ] 200
[2026-06-13 10:03:04,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:04,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:04,491.491 INFO    ] No update needed
[2026-06-13 10:03:04,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 10:03:04,511.511 INFO    ] 200
[2026-06-13 10:03:04,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:04,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:03:04,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:03:04,571.571 INFO    ] No camera update needed
[2026-06-13 10:03:04,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:03:04,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:03:04,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:03:04,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:03:06,620.620 INFO    ] ================================================
[2026-06-13 10:03:06,636.636 INFO    ] Launching Daemon at Sat Jun 13 10:03:06 IST 2026
[2026-06-13 10:03:06,647.647 INFO    ] ================================================
[2026-06-13 10:03:06,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:03:06
[2026-06-13 10:03:07,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:03:07,489.489 INFO    ] Initializing speech engine...
[2026-06-13 10:03:07,495.495 INFO    ] 2026-06-13 10:03:07
[2026-06-13 10:03:07,704.704 INFO    ] 2026-06-13 10:03:07
[2026-06-13 10:03:07,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:03:07,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:03:07,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:03:08,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:03:08,110.110 INFO    ] time= 13/06/2026 10:03:08
[2026-06-13 10:03:08,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:03:08,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:03:08,219.219 INFO    ] No existing commands found in stream
[2026-06-13 10:03:13,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:03:13,233.233 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 10:03:17,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:03:17,266.266 INFO    ] Checking for system updates...
[2026-06-13 10:03:17,287.287 INFO    ] 200
[2026-06-13 10:03:17,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:17,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:17,324.324 INFO    ] No update needed
[2026-06-13 10:03:17,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 10:03:17,347.347 INFO    ] 200
[2026-06-13 10:03:17,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:17,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:03:17,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:03:17,409.409 INFO    ] No camera update needed
[2026-06-13 10:03:17,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:03:17,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:03:17,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:03:17,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:03:19,460.460 INFO    ] ================================================
[2026-06-13 10:03:19,475.475 INFO    ] Launching Daemon at Sat Jun 13 10:03:19 IST 2026
[2026-06-13 10:03:19,486.486 INFO    ] ================================================
[2026-06-13 10:03:19,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:03:19
[2026-06-13 10:03:20,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:03:20,296.296 INFO    ] Initializing speech engine...
[2026-06-13 10:03:20,301.301 INFO    ] 2026-06-13 10:03:20
[2026-06-13 10:03:20,507.507 INFO    ] 2026-06-13 10:03:20
[2026-06-13 10:03:20,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:03:20,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:03:20,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:03:20,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:03:20,967.967 INFO    ] time= 13/06/2026 10:03:20
[2026-06-13 10:03:21,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:03:21,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:03:21,094.094 INFO    ] No existing commands found in stream
[2026-06-13 10:03:26,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:03:26,105.105 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 10:03:30,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:03:30,468.468 INFO    ] Checking for system updates...
[2026-06-13 10:03:30,505.505 INFO    ] 200
[2026-06-13 10:03:30,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:30,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:03:30,577.577 INFO    ] No update needed
[2026-06-13 10:03:30,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 10:03:30,614.614 INFO    ] 200
[2026-06-13 10:03:30,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:30,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:03:30,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:30,704.704 INFO    ] No camera update needed
[2026-06-13 10:03:30,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:03:30,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:03:30,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:03:30,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:03:32,736.736 INFO    ] ================================================
[2026-06-13 10:03:32,745.745 INFO    ] Launching Daemon at Sat Jun 13 10:03:32 IST 2026
[2026-06-13 10:03:32,751.751 INFO    ] ================================================
[2026-06-13 10:03:33,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:03:33
[2026-06-13 10:03:33,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:03:33,634.634 INFO    ] Initializing speech engine...
[2026-06-13 10:03:33,637.637 INFO    ] 2026-06-13 10:03:33
[2026-06-13 10:03:33,846.846 INFO    ] 2026-06-13 10:03:33
[2026-06-13 10:03:33,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:03:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:03:34,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:03:34,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:03:34,267.267 INFO    ] time= 13/06/2026 10:03:34
[2026-06-13 10:03:34,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:03:34,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:03:34,362.362 INFO    ] No existing commands found in stream
[2026-06-13 10:03:39,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:03:39,376.376 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 10:03:41,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:03:41,421.421 INFO    ] Checking for system updates...
[2026-06-13 10:03:41,442.442 INFO    ] 200
[2026-06-13 10:03:41,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:41,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:41,476.476 INFO    ] No update needed
[2026-06-13 10:03:41,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 10:03:41,499.499 INFO    ] 200
[2026-06-13 10:03:41,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:41,526.526 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:03:41,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:41,566.566 INFO    ] No camera update needed
[2026-06-13 10:03:41,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:03:41,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:03:41,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:03:41,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:03:43,613.613 INFO    ] ================================================
[2026-06-13 10:03:43,629.629 INFO    ] Launching Daemon at Sat Jun 13 10:03:43 IST 2026
[2026-06-13 10:03:43,640.640 INFO    ] ================================================
[2026-06-13 10:03:44,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:03:44
[2026-06-13 10:03:44,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:03:44,511.511 INFO    ] Initializing speech engine...
[2026-06-13 10:03:44,523.523 INFO    ] 2026-06-13 10:03:44
[2026-06-13 10:03:44,726.726 INFO    ] 2026-06-13 10:03:44
[2026-06-13 10:03:44,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:03:44,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:03:44,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:03:45,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:03:45,137.137 INFO    ] time= 13/06/2026 10:03:45
[2026-06-13 10:03:45,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:03:45,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:03:45,253.253 INFO    ] No existing commands found in stream
[2026-06-13 10:03:50,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:03:50,272.272 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 10:03:53,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:03:53,391.391 INFO    ] Checking for system updates...
[2026-06-13 10:03:53,412.412 INFO    ] 200
[2026-06-13 10:03:53,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:53,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:53,445.445 INFO    ] No update needed
[2026-06-13 10:03:53,446.446 INFO    ] Checking for camera pi updates...
[2026-06-13 10:03:53,466.466 INFO    ] 200
[2026-06-13 10:03:53,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:03:53,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:03:53,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:03:53,529.529 INFO    ] No camera update needed
[2026-06-13 10:03:53,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:03:53,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:03:53,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:03:53,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:03:55,574.574 INFO    ] ================================================
[2026-06-13 10:03:55,597.597 INFO    ] Launching Daemon at Sat Jun 13 10:03:55 IST 2026
[2026-06-13 10:03:55,608.608 INFO    ] ================================================
[2026-06-13 10:03:55,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:03:55
[2026-06-13 10:03:56,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:03:56,484.484 INFO    ] Initializing speech engine...
[2026-06-13 10:03:56,490.490 INFO    ] 2026-06-13 10:03:56
[2026-06-13 10:03:56,700.700 INFO    ] 2026-06-13 10:03:56
[2026-06-13 10:03:56,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:03:56,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:03:56,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:03:57,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:03:57,150.150 INFO    ] time= 13/06/2026 10:03:57
[2026-06-13 10:03:57,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:03:57,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:03:57,254.254 INFO    ] No existing commands found in stream
[2026-06-13 10:04:02,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:02,261.261 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 10:04:03,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:04:03,810.810 INFO    ] Checking for system updates...
[2026-06-13 10:04:03,833.833 INFO    ] 200
[2026-06-13 10:04:03,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:03,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:03,867.867 INFO    ] No update needed
[2026-06-13 10:04:03,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 10:04:03,888.888 INFO    ] 200
[2026-06-13 10:04:03,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:03,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:04:03,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:03,952.952 INFO    ] No camera update needed
[2026-06-13 10:04:03,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:04:03,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:04:03,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:04:03,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:04:06,999.999 INFO    ] ================================================
[2026-06-13 10:04:06,014.014 INFO    ] Launching Daemon at Sat Jun 13 10:04:06 IST 2026
[2026-06-13 10:04:06,029.029 INFO    ] ================================================
[2026-06-13 10:04:06,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:04:06
[2026-06-13 10:04:06,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:04:06,896.896 INFO    ] Initializing speech engine...
[2026-06-13 10:04:06,901.901 INFO    ] 2026-06-13 10:04:06
[2026-06-13 10:04:07,105.105 INFO    ] 2026-06-13 10:04:07
[2026-06-13 10:04:07,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:04:07,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:04:07,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:04:07,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:04:07,520.520 INFO    ] time= 13/06/2026 10:04:07
[2026-06-13 10:04:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:04:07,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:04:07,619.619 INFO    ] No existing commands found in stream
[2026-06-13 10:04:12,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:12,631.631 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 10:04:16,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:04:16,189.189 INFO    ] Checking for system updates...
[2026-06-13 10:04:16,211.211 INFO    ] 200
[2026-06-13 10:04:16,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:16,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:16,244.244 INFO    ] No update needed
[2026-06-13 10:04:16,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 10:04:16,266.266 INFO    ] 200
[2026-06-13 10:04:16,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:16,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:04:16,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:16,329.329 INFO    ] No camera update needed
[2026-06-13 10:04:16,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:04:16,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:04:16,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:04:16,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:04:18,376.376 INFO    ] ================================================
[2026-06-13 10:04:18,391.391 INFO    ] Launching Daemon at Sat Jun 13 10:04:18 IST 2026
[2026-06-13 10:04:18,402.402 INFO    ] ================================================
[2026-06-13 10:04:18,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:04:18
[2026-06-13 10:04:19,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:04:19,219.219 INFO    ] Initializing speech engine...
[2026-06-13 10:04:19,222.222 INFO    ] 2026-06-13 10:04:19
[2026-06-13 10:04:19,479.479 INFO    ] 2026-06-13 10:04:19
[2026-06-13 10:04:19,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:04:19,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:04:19,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:04:19,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:04:19,873.873 INFO    ] time= 13/06/2026 10:04:19
[2026-06-13 10:04:19,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:04:19,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:04:20,001.001 INFO    ] No existing commands found in stream
[2026-06-13 10:04:25,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:25,015.015 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 10:04:28,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:04:28,540.540 INFO    ] Checking for system updates...
[2026-06-13 10:04:28,561.561 INFO    ] 200
[2026-06-13 10:04:28,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:28,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:04:28,595.595 INFO    ] No update needed
[2026-06-13 10:04:28,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 10:04:28,617.617 INFO    ] 200
[2026-06-13 10:04:28,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:28,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:04:28,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:04:28,683.683 INFO    ] No camera update needed
[2026-06-13 10:04:28,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:04:28,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:04:28,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:04:28,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:04:30,731.731 INFO    ] ================================================
[2026-06-13 10:04:30,746.746 INFO    ] Launching Daemon at Sat Jun 13 10:04:30 IST 2026
[2026-06-13 10:04:30,757.757 INFO    ] ================================================
[2026-06-13 10:04:31,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:04:31
[2026-06-13 10:04:31,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:04:31,566.566 INFO    ] Initializing speech engine...
[2026-06-13 10:04:31,577.577 INFO    ] 2026-06-13 10:04:31
[2026-06-13 10:04:31,769.769 INFO    ] 2026-06-13 10:04:31
[2026-06-13 10:04:31,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:04:31,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:04:31,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:04:32,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:04:32,087.087 INFO    ] time= 13/06/2026 10:04:32
[2026-06-13 10:04:32,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:04:32,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:04:32,191.191 INFO    ] No existing commands found in stream
[2026-06-13 10:04:37,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:37,219.219 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 10:04:40,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:04:40,038.038 INFO    ] Checking for system updates...
[2026-06-13 10:04:40,058.058 INFO    ] 200
[2026-06-13 10:04:40,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:40,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:40,092.092 INFO    ] No update needed
[2026-06-13 10:04:40,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 10:04:40,112.112 INFO    ] 200
[2026-06-13 10:04:40,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:40,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:04:40,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:04:40,179.179 INFO    ] No camera update needed
[2026-06-13 10:04:40,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:04:40,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:04:40,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:04:40,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:04:42,228.228 INFO    ] ================================================
[2026-06-13 10:04:42,245.245 INFO    ] Launching Daemon at Sat Jun 13 10:04:42 IST 2026
[2026-06-13 10:04:42,256.256 INFO    ] ================================================
[2026-06-13 10:04:42,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:04:42
[2026-06-13 10:04:42,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:04:43,088.088 INFO    ] Initializing speech engine...
[2026-06-13 10:04:43,101.101 INFO    ] 2026-06-13 10:04:43
[2026-06-13 10:04:43,322.322 INFO    ] 2026-06-13 10:04:43
[2026-06-13 10:04:43,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:04:43,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:04:43,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:04:43,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:04:43,752.752 INFO    ] time= 13/06/2026 10:04:43
[2026-06-13 10:04:43,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:04:43,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:04:43,879.879 INFO    ] No existing commands found in stream
[2026-06-13 10:04:48,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:48,893.893 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 10:04:50,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:04:50,150.150 INFO    ] Checking for system updates...
[2026-06-13 10:04:50,172.172 INFO    ] 200
[2026-06-13 10:04:50,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:50,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:50,205.205 INFO    ] No update needed
[2026-06-13 10:04:50,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 10:04:50,226.226 INFO    ] 200
[2026-06-13 10:04:50,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:04:50,251.251 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:04:50,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:04:50,397.397 INFO    ] No camera update needed
[2026-06-13 10:04:50,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:04:50,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:04:50,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:04:50,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:04:52,445.445 INFO    ] ================================================
[2026-06-13 10:04:52,460.460 INFO    ] Launching Daemon at Sat Jun 13 10:04:52 IST 2026
[2026-06-13 10:04:52,471.471 INFO    ] ================================================
[2026-06-13 10:04:52,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:04:52
[2026-06-13 10:04:53,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:04:53,258.258 INFO    ] Initializing speech engine...
[2026-06-13 10:04:53,264.264 INFO    ] 2026-06-13 10:04:53
[2026-06-13 10:04:53,477.477 INFO    ] 2026-06-13 10:04:53
[2026-06-13 10:04:53,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:04:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:04:53,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:04:53,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:04:53,941.941 INFO    ] time= 13/06/2026 10:04:53
[2026-06-13 10:04:53,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:04:53,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:04:54,069.069 INFO    ] No existing commands found in stream
[2026-06-13 10:04:59,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:04:59,103.103 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 10:05:00,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:05:00,200.200 INFO    ] Checking for system updates...
[2026-06-13 10:05:00,221.221 INFO    ] 200
[2026-06-13 10:05:00,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:00,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:00,257.257 INFO    ] No update needed
[2026-06-13 10:05:00,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:00,278.278 INFO    ] 200
[2026-06-13 10:05:00,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:00,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:00,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:00,340.340 INFO    ] No camera update needed
[2026-06-13 10:05:00,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:00,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:00,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:00,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:05:02,383.383 INFO    ] ================================================
[2026-06-13 10:05:02,394.394 INFO    ] Launching Daemon at Sat Jun 13 10:05:02 IST 2026
[2026-06-13 10:05:02,405.405 INFO    ] ================================================
[2026-06-13 10:05:02,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:05:02
[2026-06-13 10:05:03,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:05:03,270.270 INFO    ] Initializing speech engine...
[2026-06-13 10:05:03,281.281 INFO    ] 2026-06-13 10:05:03
[2026-06-13 10:05:03,487.487 INFO    ] 2026-06-13 10:05:03
[2026-06-13 10:05:03,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:05:03,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:05:03,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:05:03,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:05:03,796.796 INFO    ] time= 13/06/2026 10:05:03
[2026-06-13 10:05:03,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:05:03,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:05:04,001.001 INFO    ] No existing commands found in stream
[2026-06-13 10:05:09,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:05:09,014.014 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 10:05:11,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:05:11,375.375 INFO    ] Checking for system updates...
[2026-06-13 10:05:11,395.395 INFO    ] 200
[2026-06-13 10:05:11,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:11,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:11,428.428 INFO    ] No update needed
[2026-06-13 10:05:11,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:11,449.449 INFO    ] 200
[2026-06-13 10:05:11,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:11,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:11,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:11,526.526 INFO    ] No camera update needed
[2026-06-13 10:05:11,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:11,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:11,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:11,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:05:13,575.575 INFO    ] ================================================
[2026-06-13 10:05:13,590.590 INFO    ] Launching Daemon at Sat Jun 13 10:05:13 IST 2026
[2026-06-13 10:05:13,601.601 INFO    ] ================================================
[2026-06-13 10:05:13,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:05:13
[2026-06-13 10:05:14,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:05:14,402.402 INFO    ] Initializing speech engine...
[2026-06-13 10:05:14,405.405 INFO    ] 2026-06-13 10:05:14
[2026-06-13 10:05:14,614.614 INFO    ] 2026-06-13 10:05:14
[2026-06-13 10:05:14,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:05:14,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:05:14,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:05:15,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:05:15,030.030 INFO    ] time= 13/06/2026 10:05:15
[2026-06-13 10:05:15,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:05:15,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:05:15,192.192 INFO    ] No existing commands found in stream
[2026-06-13 10:05:20,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:05:20,205.205 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 10:05:22,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:05:22,435.435 INFO    ] Checking for system updates...
[2026-06-13 10:05:22,455.455 INFO    ] 200
[2026-06-13 10:05:22,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:22,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:05:22,493.493 INFO    ] No update needed
[2026-06-13 10:05:22,494.494 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:22,514.514 INFO    ] 200
[2026-06-13 10:05:22,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:22,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:22,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:05:22,582.582 INFO    ] No camera update needed
[2026-06-13 10:05:22,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:22,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:22,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:22,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:05:24,629.629 INFO    ] ================================================
[2026-06-13 10:05:24,644.644 INFO    ] Launching Daemon at Sat Jun 13 10:05:24 IST 2026
[2026-06-13 10:05:24,654.654 INFO    ] ================================================
[2026-06-13 10:05:25,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:05:25
[2026-06-13 10:05:25,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:05:25,512.512 INFO    ] Initializing speech engine...
[2026-06-13 10:05:25,517.517 INFO    ] 2026-06-13 10:05:25
[2026-06-13 10:05:25,725.725 INFO    ] 2026-06-13 10:05:25
[2026-06-13 10:05:25,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:05:25,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:05:25,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:05:26,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:05:26,144.144 INFO    ] time= 13/06/2026 10:05:26
[2026-06-13 10:05:26,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:05:26,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:05:26,242.242 INFO    ] No existing commands found in stream
[2026-06-13 10:05:31,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:05:31,260.260 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 10:05:34,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:05:34,460.460 INFO    ] Checking for system updates...
[2026-06-13 10:05:34,498.498 INFO    ] 200
[2026-06-13 10:05:34,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:34,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:34,560.560 INFO    ] No update needed
[2026-06-13 10:05:34,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:34,599.599 INFO    ] 200
[2026-06-13 10:05:34,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:34,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:34,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:34,694.694 INFO    ] No camera update needed
[2026-06-13 10:05:34,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:34,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:34,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:34,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:05:36,750.750 INFO    ] ================================================
[2026-06-13 10:05:36,765.765 INFO    ] Launching Daemon at Sat Jun 13 10:05:36 IST 2026
[2026-06-13 10:05:36,776.776 INFO    ] ================================================
[2026-06-13 10:05:37,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:05:37
[2026-06-13 10:05:37,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:05:37,612.612 INFO    ] Initializing speech engine...
[2026-06-13 10:05:37,617.617 INFO    ] 2026-06-13 10:05:37
[2026-06-13 10:05:37,821.821 INFO    ] 2026-06-13 10:05:37
[2026-06-13 10:05:37,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:05:37,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:05:38,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:05:38,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:05:38,227.227 INFO    ] time= 13/06/2026 10:05:38
[2026-06-13 10:05:38,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:05:38,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:05:38,338.338 INFO    ] No existing commands found in stream
[2026-06-13 10:05:43,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:05:43,350.350 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 10:05:46,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:05:46,429.429 INFO    ] Checking for system updates...
[2026-06-13 10:05:46,450.450 INFO    ] 200
[2026-06-13 10:05:46,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:46,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:05:46,483.483 INFO    ] No update needed
[2026-06-13 10:05:46,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:46,505.505 INFO    ] 200
[2026-06-13 10:05:46,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:46,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:46,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:05:46,569.569 INFO    ] No camera update needed
[2026-06-13 10:05:46,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:46,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:46,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:46,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:05:48,616.616 INFO    ] ================================================
[2026-06-13 10:05:48,631.631 INFO    ] Launching Daemon at Sat Jun 13 10:05:48 IST 2026
[2026-06-13 10:05:48,642.642 INFO    ] ================================================
[2026-06-13 10:05:49,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:05:49
[2026-06-13 10:05:49,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:05:49,692.692 INFO    ] Initializing speech engine...
[2026-06-13 10:05:49,701.701 INFO    ] 2026-06-13 10:05:49
[2026-06-13 10:05:49,950.950 INFO    ] 2026-06-13 10:05:49
[2026-06-13 10:05:49,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:05:50,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:05:50,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:05:50,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:05:50,284.284 INFO    ] time= 13/06/2026 10:05:50
[2026-06-13 10:05:50,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:05:50,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:05:50,395.395 INFO    ] No existing commands found in stream
[2026-06-13 10:05:55,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:05:55,416.416 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 10:05:59,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:05:59,416.416 INFO    ] Checking for system updates...
[2026-06-13 10:05:59,439.439 INFO    ] 200
[2026-06-13 10:05:59,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:59,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:59,473.473 INFO    ] No update needed
[2026-06-13 10:05:59,475.475 INFO    ] Checking for camera pi updates...
[2026-06-13 10:05:59,496.496 INFO    ] 200
[2026-06-13 10:05:59,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:05:59,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:05:59,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:05:59,562.562 INFO    ] No camera update needed
[2026-06-13 10:05:59,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:05:59,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:05:59,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:05:59,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:01,606.606 INFO    ] ================================================
[2026-06-13 10:06:01,617.617 INFO    ] Launching Daemon at Sat Jun 13 10:06:01 IST 2026
[2026-06-13 10:06:01,625.625 INFO    ] ================================================
[2026-06-13 10:06:01,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:01
[2026-06-13 10:06:02,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:02,479.479 INFO    ] Initializing speech engine...
[2026-06-13 10:06:02,484.484 INFO    ] 2026-06-13 10:06:02
[2026-06-13 10:06:02,687.687 INFO    ] 2026-06-13 10:06:02
[2026-06-13 10:06:02,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:02,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:02,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:02,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:02,939.939 INFO    ] time= 13/06/2026 10:06:02
[2026-06-13 10:06:02,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:03,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:03,120.120 INFO    ] No existing commands found in stream
[2026-06-13 10:06:08,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:06:08,146.146 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 10:06:09,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:06:09,140.140 INFO    ] Checking for system updates...
[2026-06-13 10:06:09,163.163 INFO    ] 200
[2026-06-13 10:06:09,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:09,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:06:09,196.196 INFO    ] No update needed
[2026-06-13 10:06:09,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 10:06:09,216.216 INFO    ] 200
[2026-06-13 10:06:09,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:09,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:06:09,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:06:09,281.281 INFO    ] No camera update needed
[2026-06-13 10:06:09,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:06:09,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:06:09,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:06:09,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:11,328.328 INFO    ] ================================================
[2026-06-13 10:06:11,344.344 INFO    ] Launching Daemon at Sat Jun 13 10:06:11 IST 2026
[2026-06-13 10:06:11,355.355 INFO    ] ================================================
[2026-06-13 10:06:11,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:11
[2026-06-13 10:06:12,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:12,806.806 INFO    ] Initializing speech engine...
[2026-06-13 10:06:12,814.814 INFO    ] 2026-06-13 10:06:12
[2026-06-13 10:06:13,076.076 INFO    ] 2026-06-13 10:06:13
[2026-06-13 10:06:13,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:13,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:13,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:13,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:13,531.531 INFO    ] time= 13/06/2026 10:06:13
[2026-06-13 10:06:13,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:13,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:13,697.697 INFO    ] No existing commands found in stream
[2026-06-13 10:06:18,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:06:18,737.737 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 10:06:23,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:06:23,095.095 INFO    ] Checking for system updates...
[2026-06-13 10:06:23,132.132 INFO    ] 200
[2026-06-13 10:06:23,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:23,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:23,192.192 INFO    ] No update needed
[2026-06-13 10:06:23,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 10:06:23,234.234 INFO    ] 200
[2026-06-13 10:06:23,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:23,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:06:23,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:23,338.338 INFO    ] No camera update needed
[2026-06-13 10:06:23,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:06:23,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:06:23,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:06:23,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:25,403.403 INFO    ] ================================================
[2026-06-13 10:06:25,420.420 INFO    ] Launching Daemon at Sat Jun 13 10:06:25 IST 2026
[2026-06-13 10:06:25,431.431 INFO    ] ================================================
[2026-06-13 10:06:25,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:25
[2026-06-13 10:06:26,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:26,448.448 INFO    ] Initializing speech engine...
[2026-06-13 10:06:26,461.461 INFO    ] 2026-06-13 10:06:26
[2026-06-13 10:06:26,668.668 INFO    ] 2026-06-13 10:06:26
[2026-06-13 10:06:26,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:26,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:26,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:27,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:27,088.088 INFO    ] time= 13/06/2026 10:06:27
[2026-06-13 10:06:27,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:27,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:27,193.193 INFO    ] No existing commands found in stream
[2026-06-13 10:06:32,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:06:32,207.207 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 10:06:33,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:06:33,114.114 INFO    ] Checking for system updates...
[2026-06-13 10:06:33,135.135 INFO    ] 200
[2026-06-13 10:06:33,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:33,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:33,168.168 INFO    ] No update needed
[2026-06-13 10:06:33,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 10:06:33,189.189 INFO    ] 200
[2026-06-13 10:06:33,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:33,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:06:33,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:33,254.254 INFO    ] No camera update needed
[2026-06-13 10:06:33,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:06:33,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:06:33,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:06:33,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:35,302.302 INFO    ] ================================================
[2026-06-13 10:06:35,319.319 INFO    ] Launching Daemon at Sat Jun 13 10:06:35 IST 2026
[2026-06-13 10:06:35,330.330 INFO    ] ================================================
[2026-06-13 10:06:35,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:35
[2026-06-13 10:06:35,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:36,140.140 INFO    ] Initializing speech engine...
[2026-06-13 10:06:36,144.144 INFO    ] 2026-06-13 10:06:36
[2026-06-13 10:06:36,353.353 INFO    ] 2026-06-13 10:06:36
[2026-06-13 10:06:36,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:36,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:36,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:36,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:36,770.770 INFO    ] time= 13/06/2026 10:06:36
[2026-06-13 10:06:36,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:36,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:36,868.868 INFO    ] No existing commands found in stream
[2026-06-13 10:06:41,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:06:41,881.881 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 10:06:42,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:06:42,496.496 INFO    ] Checking for system updates...
[2026-06-13 10:06:42,517.517 INFO    ] 200
[2026-06-13 10:06:42,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:42,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:42,550.550 INFO    ] No update needed
[2026-06-13 10:06:42,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 10:06:42,573.573 INFO    ] 200
[2026-06-13 10:06:42,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:42,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:06:42,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:06:42,636.636 INFO    ] No camera update needed
[2026-06-13 10:06:42,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:06:42,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:06:42,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:06:42,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:44,686.686 INFO    ] ================================================
[2026-06-13 10:06:44,701.701 INFO    ] Launching Daemon at Sat Jun 13 10:06:44 IST 2026
[2026-06-13 10:06:44,712.712 INFO    ] ================================================
[2026-06-13 10:06:45,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:45
[2026-06-13 10:06:45,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:45,595.595 INFO    ] Initializing speech engine...
[2026-06-13 10:06:45,615.615 INFO    ] 2026-06-13 10:06:45
[2026-06-13 10:06:45,866.866 INFO    ] 2026-06-13 10:06:45
[2026-06-13 10:06:45,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:46,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:46,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:46,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:46,234.234 INFO    ] time= 13/06/2026 10:06:46
[2026-06-13 10:06:46,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:46,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:46,312.312 INFO    ] No existing commands found in stream
[2026-06-13 10:06:51,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:06:51,330.330 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 10:06:52,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:06:52,915.915 INFO    ] Checking for system updates...
[2026-06-13 10:06:52,936.936 INFO    ] 200
[2026-06-13 10:06:52,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:52,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:06:52,970.970 INFO    ] No update needed
[2026-06-13 10:06:52,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 10:06:52,991.991 INFO    ] 200
[2026-06-13 10:06:52,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:06:53,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:06:53,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:06:53,157.157 INFO    ] No camera update needed
[2026-06-13 10:06:53,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:06:53,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:06:53,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:06:53,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:06:55,207.207 INFO    ] ================================================
[2026-06-13 10:06:55,229.229 INFO    ] Launching Daemon at Sat Jun 13 10:06:55 IST 2026
[2026-06-13 10:06:55,240.240 INFO    ] ================================================
[2026-06-13 10:06:55,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:06:55
[2026-06-13 10:06:55,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:06:56,029.029 INFO    ] Initializing speech engine...
[2026-06-13 10:06:56,033.033 INFO    ] 2026-06-13 10:06:56
[2026-06-13 10:06:56,236.236 INFO    ] 2026-06-13 10:06:56
[2026-06-13 10:06:56,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:06:56,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:06:56,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:06:56,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:06:56,646.646 INFO    ] time= 13/06/2026 10:06:56
[2026-06-13 10:06:56,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:06:56,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:06:56,830.830 INFO    ] No existing commands found in stream
[2026-06-13 10:07:01,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:01,841.841 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 10:07:02,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:07:02,824.824 INFO    ] Checking for system updates...
[2026-06-13 10:07:02,861.861 INFO    ] 200
[2026-06-13 10:07:02,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:02,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:02,926.926 INFO    ] No update needed
[2026-06-13 10:07:02,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:02,962.962 INFO    ] 200
[2026-06-13 10:07:02,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:03,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:03,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:03,066.066 INFO    ] No camera update needed
[2026-06-13 10:07:03,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:03,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:03,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:03,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:05,123.123 INFO    ] ================================================
[2026-06-13 10:07:05,139.139 INFO    ] Launching Daemon at Sat Jun 13 10:07:05 IST 2026
[2026-06-13 10:07:05,150.150 INFO    ] ================================================
[2026-06-13 10:07:05,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:07:05
[2026-06-13 10:07:05,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:07:06,001.001 INFO    ] Initializing speech engine...
[2026-06-13 10:07:06,014.014 INFO    ] 2026-06-13 10:07:06
[2026-06-13 10:07:06,233.233 INFO    ] 2026-06-13 10:07:06
[2026-06-13 10:07:06,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:07:06,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:07:06,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:07:06,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:07:06,629.629 INFO    ] time= 13/06/2026 10:07:06
[2026-06-13 10:07:06,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:07:06,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:07:06,791.791 INFO    ] No existing commands found in stream
[2026-06-13 10:07:11,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:11,805.805 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 10:07:15,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:07:15,060.060 INFO    ] Checking for system updates...
[2026-06-13 10:07:15,081.081 INFO    ] 200
[2026-06-13 10:07:15,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:15,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:15,114.114 INFO    ] No update needed
[2026-06-13 10:07:15,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:15,136.136 INFO    ] 200
[2026-06-13 10:07:15,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:15,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:15,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:15,201.201 INFO    ] No camera update needed
[2026-06-13 10:07:15,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:15,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:15,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:15,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:17,249.249 INFO    ] ================================================
[2026-06-13 10:07:17,265.265 INFO    ] Launching Daemon at Sat Jun 13 10:07:17 IST 2026
[2026-06-13 10:07:17,276.276 INFO    ] ================================================
[2026-06-13 10:07:17,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:07:17
[2026-06-13 10:07:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:07:18,145.145 INFO    ] Initializing speech engine...
[2026-06-13 10:07:18,155.155 INFO    ] 2026-06-13 10:07:18
[2026-06-13 10:07:18,367.367 INFO    ] 2026-06-13 10:07:18
[2026-06-13 10:07:18,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:07:18,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:07:18,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:07:18,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:07:18,794.794 INFO    ] time= 13/06/2026 10:07:18
[2026-06-13 10:07:18,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:07:18,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:07:18,940.940 INFO    ] No existing commands found in stream
[2026-06-13 10:07:23,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:23,954.954 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 10:07:24,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:07:24,375.375 INFO    ] Checking for system updates...
[2026-06-13 10:07:24,395.395 INFO    ] 200
[2026-06-13 10:07:24,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:24,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:07:24,430.430 INFO    ] No update needed
[2026-06-13 10:07:24,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:24,451.451 INFO    ] 200
[2026-06-13 10:07:24,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:24,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:24,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:24,527.527 INFO    ] No camera update needed
[2026-06-13 10:07:24,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:24,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:24,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:24,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:26,578.578 INFO    ] ================================================
[2026-06-13 10:07:26,593.593 INFO    ] Launching Daemon at Sat Jun 13 10:07:26 IST 2026
[2026-06-13 10:07:26,604.604 INFO    ] ================================================
[2026-06-13 10:07:27,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:07:27
[2026-06-13 10:07:27,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:07:27,920.920 INFO    ] Initializing speech engine...
[2026-06-13 10:07:27,925.925 INFO    ] 2026-06-13 10:07:27
[2026-06-13 10:07:28,141.141 INFO    ] 2026-06-13 10:07:28
[2026-06-13 10:07:28,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:07:28,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:07:28,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:07:28,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:07:28,591.591 INFO    ] time= 13/06/2026 10:07:28
[2026-06-13 10:07:28,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:07:28,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:07:28,705.705 INFO    ] No existing commands found in stream
[2026-06-13 10:07:33,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:33,714.714 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 10:07:36,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:07:36,364.364 INFO    ] Checking for system updates...
[2026-06-13 10:07:36,385.385 INFO    ] 200
[2026-06-13 10:07:36,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:36,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:07:36,420.420 INFO    ] No update needed
[2026-06-13 10:07:36,422.422 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:36,441.441 INFO    ] 200
[2026-06-13 10:07:36,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:36,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:36,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:07:36,508.508 INFO    ] No camera update needed
[2026-06-13 10:07:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:36,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:36,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:36,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:38,557.557 INFO    ] ================================================
[2026-06-13 10:07:38,573.573 INFO    ] Launching Daemon at Sat Jun 13 10:07:38 IST 2026
[2026-06-13 10:07:38,584.584 INFO    ] ================================================
[2026-06-13 10:07:38,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:07:38
[2026-06-13 10:07:39,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:07:39,358.358 INFO    ] Initializing speech engine...
[2026-06-13 10:07:39,363.363 INFO    ] 2026-06-13 10:07:39
[2026-06-13 10:07:39,565.565 INFO    ] 2026-06-13 10:07:39
[2026-06-13 10:07:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:07:39,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:07:39,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:07:39,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:07:39,960.960 INFO    ] time= 13/06/2026 10:07:39
[2026-06-13 10:07:39,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:07:40,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:07:40,079.079 INFO    ] No existing commands found in stream
[2026-06-13 10:07:45,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:45,093.093 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 10:07:46,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:07:46,065.065 INFO    ] Checking for system updates...
[2026-06-13 10:07:46,086.086 INFO    ] 200
[2026-06-13 10:07:46,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:46,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:46,119.119 INFO    ] No update needed
[2026-06-13 10:07:46,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:46,142.142 INFO    ] 200
[2026-06-13 10:07:46,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:46,168.168 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:46,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:07:46,216.216 INFO    ] No camera update needed
[2026-06-13 10:07:46,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:46,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:46,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:46,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:48,266.266 INFO    ] ================================================
[2026-06-13 10:07:48,281.281 INFO    ] Launching Daemon at Sat Jun 13 10:07:48 IST 2026
[2026-06-13 10:07:48,292.292 INFO    ] ================================================
[2026-06-13 10:07:48,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:07:48
[2026-06-13 10:07:48,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:07:49,082.082 INFO    ] Initializing speech engine...
[2026-06-13 10:07:49,092.092 INFO    ] 2026-06-13 10:07:49
[2026-06-13 10:07:49,294.294 INFO    ] 2026-06-13 10:07:49
[2026-06-13 10:07:49,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:07:49,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:07:49,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:07:49,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:07:49,712.712 INFO    ] time= 13/06/2026 10:07:49
[2026-06-13 10:07:49,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:07:49,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:07:49,808.808 INFO    ] No existing commands found in stream
[2026-06-13 10:07:54,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:07:54,820.820 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 10:07:57,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:07:57,666.666 INFO    ] Checking for system updates...
[2026-06-13 10:07:57,686.686 INFO    ] 200
[2026-06-13 10:07:57,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:57,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:07:57,720.720 INFO    ] No update needed
[2026-06-13 10:07:57,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 10:07:57,743.743 INFO    ] 200
[2026-06-13 10:07:57,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:07:57,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:07:57,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:07:57,806.806 INFO    ] No camera update needed
[2026-06-13 10:07:57,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:07:57,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:07:57,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:07:57,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:07:59,855.855 INFO    ] ================================================
[2026-06-13 10:07:59,870.870 INFO    ] Launching Daemon at Sat Jun 13 10:07:59 IST 2026
[2026-06-13 10:07:59,881.881 INFO    ] ================================================
[2026-06-13 10:08:00,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:00
[2026-06-13 10:08:01,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:01,319.319 INFO    ] Initializing speech engine...
[2026-06-13 10:08:01,343.343 INFO    ] 2026-06-13 10:08:01
[2026-06-13 10:08:01,626.626 INFO    ] 2026-06-13 10:08:01
[2026-06-13 10:08:01,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:08:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:08:01,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:08:01,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:08:01,966.966 INFO    ] time= 13/06/2026 10:08:01
[2026-06-13 10:08:02,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:08:02,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:08:02,261.261 INFO    ] No existing commands found in stream
[2026-06-13 10:08:07,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:08:07,274.274 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 10:08:10,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:08:10,785.785 INFO    ] Checking for system updates...
[2026-06-13 10:08:10,806.806 INFO    ] 200
[2026-06-13 10:08:10,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:10,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:08:10,841.841 INFO    ] No update needed
[2026-06-13 10:08:10,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 10:08:10,862.862 INFO    ] 200
[2026-06-13 10:08:10,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:10,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:08:10,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:08:10,930.930 INFO    ] No camera update needed
[2026-06-13 10:08:10,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:08:10,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:08:10,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:08:10,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:08:12,978.978 INFO    ] ================================================
[2026-06-13 10:08:12,992.992 INFO    ] Launching Daemon at Sat Jun 13 10:08:12 IST 2026
[2026-06-13 10:08:13,003.003 INFO    ] ================================================
[2026-06-13 10:08:13,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:13
[2026-06-13 10:08:13,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:13,804.804 INFO    ] Initializing speech engine...
[2026-06-13 10:08:13,810.810 INFO    ] 2026-06-13 10:08:13
[2026-06-13 10:08:14,014.014 INFO    ] 2026-06-13 10:08:13
[2026-06-13 10:08:14,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:08:14,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:08:14,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:08:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:08:14,413.413 INFO    ] time= 13/06/2026 10:08:14
[2026-06-13 10:08:14,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:08:14,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:08:14,526.526 INFO    ] No existing commands found in stream
[2026-06-13 10:08:19,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:08:19,540.540 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 10:08:21,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:08:21,238.238 INFO    ] Checking for system updates...
[2026-06-13 10:08:21,259.259 INFO    ] 200
[2026-06-13 10:08:21,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:21,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:21,292.292 INFO    ] No update needed
[2026-06-13 10:08:21,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 10:08:21,313.313 INFO    ] 200
[2026-06-13 10:08:21,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:21,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:08:21,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:21,382.382 INFO    ] No camera update needed
[2026-06-13 10:08:21,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:08:21,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:08:21,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:08:21,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:08:23,432.432 INFO    ] ================================================
[2026-06-13 10:08:23,448.448 INFO    ] Launching Daemon at Sat Jun 13 10:08:23 IST 2026
[2026-06-13 10:08:23,458.458 INFO    ] ================================================
[2026-06-13 10:08:23,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:23
[2026-06-13 10:08:24,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:24,236.236 INFO    ] Initializing speech engine...
[2026-06-13 10:08:24,245.245 INFO    ] 2026-06-13 10:08:24
[2026-06-13 10:08:24,457.457 INFO    ] 2026-06-13 10:08:24
[2026-06-13 10:08:24,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:08:24,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:08:24,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:08:24,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:08:24,871.871 INFO    ] time= 13/06/2026 10:08:24
[2026-06-13 10:08:24,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:08:24,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:08:24,977.977 INFO    ] No existing commands found in stream
[2026-06-13 10:08:29,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:08:29,991.991 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 10:08:33,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:08:33,200.200 INFO    ] Checking for system updates...
[2026-06-13 10:08:33,223.223 INFO    ] 200
[2026-06-13 10:08:33,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:33,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:33,258.258 INFO    ] No update needed
[2026-06-13 10:08:33,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 10:08:33,279.279 INFO    ] 200
[2026-06-13 10:08:33,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:33,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:08:33,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:08:33,351.351 INFO    ] No camera update needed
[2026-06-13 10:08:33,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:08:33,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:08:33,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:08:33,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:08:35,402.402 INFO    ] ================================================
[2026-06-13 10:08:35,417.417 INFO    ] Launching Daemon at Sat Jun 13 10:08:35 IST 2026
[2026-06-13 10:08:35,428.428 INFO    ] ================================================
[2026-06-13 10:08:35,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:35
[2026-06-13 10:08:36,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:36,282.282 INFO    ] Initializing speech engine...
[2026-06-13 10:08:36,292.292 INFO    ] 2026-06-13 10:08:36
[2026-06-13 10:08:36,500.500 INFO    ] 2026-06-13 10:08:36
[2026-06-13 10:08:36,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:08:36,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:08:36,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:08:36,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:08:36,912.912 INFO    ] time= 13/06/2026 10:08:36
[2026-06-13 10:08:36,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:08:36,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:08:37,018.018 INFO    ] No existing commands found in stream
[2026-06-13 10:08:42,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:08:42,035.035 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 10:08:44,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:08:44,276.276 INFO    ] Checking for system updates...
[2026-06-13 10:08:44,297.297 INFO    ] 200
[2026-06-13 10:08:44,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:44,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:44,330.330 INFO    ] No update needed
[2026-06-13 10:08:44,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 10:08:44,352.352 INFO    ] 200
[2026-06-13 10:08:44,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:44,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:08:44,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:44,420.420 INFO    ] No camera update needed
[2026-06-13 10:08:44,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:08:44,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:08:44,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:08:44,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:08:46,467.467 INFO    ] ================================================
[2026-06-13 10:08:46,483.483 INFO    ] Launching Daemon at Sat Jun 13 10:08:46 IST 2026
[2026-06-13 10:08:46,494.494 INFO    ] ================================================
[2026-06-13 10:08:46,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:46
[2026-06-13 10:08:47,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:47,282.282 INFO    ] Initializing speech engine...
[2026-06-13 10:08:47,291.291 INFO    ] 2026-06-13 10:08:47
[2026-06-13 10:08:47,518.518 INFO    ] 2026-06-13 10:08:47
[2026-06-13 10:08:47,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:08:47,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:08:47,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:08:47,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:08:47,970.970 INFO    ] time= 13/06/2026 10:08:47
[2026-06-13 10:08:48,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:08:48,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:08:48,106.106 INFO    ] No existing commands found in stream
[2026-06-13 10:08:53,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:08:53,120.120 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 10:08:56,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:08:56,793.793 INFO    ] Checking for system updates...
[2026-06-13 10:08:56,813.813 INFO    ] 200
[2026-06-13 10:08:56,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:56,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:56,846.846 INFO    ] No update needed
[2026-06-13 10:08:56,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 10:08:56,867.867 INFO    ] 200
[2026-06-13 10:08:56,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:08:56,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:08:57,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:08:57,042.042 INFO    ] No camera update needed
[2026-06-13 10:08:57,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:08:57,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:08:57,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:08:57,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:08:59,089.089 INFO    ] ================================================
[2026-06-13 10:08:59,103.103 INFO    ] Launching Daemon at Sat Jun 13 10:08:59 IST 2026
[2026-06-13 10:08:59,115.115 INFO    ] ================================================
[2026-06-13 10:08:59,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:08:59
[2026-06-13 10:08:59,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:08:59,889.889 INFO    ] Initializing speech engine...
[2026-06-13 10:08:59,893.893 INFO    ] 2026-06-13 10:08:59
[2026-06-13 10:09:00,140.140 INFO    ] 2026-06-13 10:09:00
[2026-06-13 10:09:00,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:00,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:00,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:00,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:00,513.513 INFO    ] time= 13/06/2026 10:09:00
[2026-06-13 10:09:00,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:00,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:00,594.594 INFO    ] No existing commands found in stream
[2026-06-13 10:09:05,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:09:05,608.608 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 10:09:08,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:09:08,372.372 INFO    ] Checking for system updates...
[2026-06-13 10:09:08,394.394 INFO    ] 200
[2026-06-13 10:09:08,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:08,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:08,427.427 INFO    ] No update needed
[2026-06-13 10:09:08,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 10:09:08,448.448 INFO    ] 200
[2026-06-13 10:09:08,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:08,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:09:08,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:08,515.515 INFO    ] No camera update needed
[2026-06-13 10:09:08,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:09:08,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:09:08,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:09:08,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:09:10,563.563 INFO    ] ================================================
[2026-06-13 10:09:10,579.579 INFO    ] Launching Daemon at Sat Jun 13 10:09:10 IST 2026
[2026-06-13 10:09:10,590.590 INFO    ] ================================================
[2026-06-13 10:09:10,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:09:10
[2026-06-13 10:09:11,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:09:11,777.777 INFO    ] Initializing speech engine...
[2026-06-13 10:09:11,802.802 INFO    ] 2026-06-13 10:09:11
[2026-06-13 10:09:12,081.081 INFO    ] 2026-06-13 10:09:12
[2026-06-13 10:09:12,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:12,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:12,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:12,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:12,437.437 INFO    ] time= 13/06/2026 10:09:12
[2026-06-13 10:09:12,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:12,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:12,516.516 INFO    ] No existing commands found in stream
[2026-06-13 10:09:17,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:09:17,530.530 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 10:09:19,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:09:19,040.040 INFO    ] Checking for system updates...
[2026-06-13 10:09:19,061.061 INFO    ] 200
[2026-06-13 10:09:19,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:19,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:09:19,096.096 INFO    ] No update needed
[2026-06-13 10:09:19,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 10:09:19,117.117 INFO    ] 200
[2026-06-13 10:09:19,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:19,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:09:19,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:09:19,179.179 INFO    ] No camera update needed
[2026-06-13 10:09:19,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:09:19,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:09:19,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:09:19,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:09:21,227.227 INFO    ] ================================================
[2026-06-13 10:09:21,243.243 INFO    ] Launching Daemon at Sat Jun 13 10:09:21 IST 2026
[2026-06-13 10:09:21,254.254 INFO    ] ================================================
[2026-06-13 10:09:21,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:09:21
[2026-06-13 10:09:21,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:09:22,071.071 INFO    ] Initializing speech engine...
[2026-06-13 10:09:22,077.077 INFO    ] 2026-06-13 10:09:22
[2026-06-13 10:09:22,279.279 INFO    ] 2026-06-13 10:09:22
[2026-06-13 10:09:22,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:22,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:22,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:22,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:22,730.730 INFO    ] time= 13/06/2026 10:09:22
[2026-06-13 10:09:22,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:22,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:22,950.950 INFO    ] No existing commands found in stream
[2026-06-13 10:09:27,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:09:27,968.968 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 10:09:31,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:09:31,681.681 INFO    ] Checking for system updates...
[2026-06-13 10:09:31,701.701 INFO    ] 200
[2026-06-13 10:09:31,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:31,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:09:31,737.737 INFO    ] No update needed
[2026-06-13 10:09:31,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 10:09:31,759.759 INFO    ] 200
[2026-06-13 10:09:31,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:31,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:09:31,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:09:31,833.833 INFO    ] No camera update needed
[2026-06-13 10:09:31,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:09:31,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:09:31,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:09:31,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:09:33,876.876 INFO    ] ================================================
[2026-06-13 10:09:33,891.891 INFO    ] Launching Daemon at Sat Jun 13 10:09:33 IST 2026
[2026-06-13 10:09:33,902.902 INFO    ] ================================================
[2026-06-13 10:09:34,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:09:34
[2026-06-13 10:09:34,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:09:35,262.262 INFO    ] Initializing speech engine...
[2026-06-13 10:09:35,271.271 INFO    ] 2026-06-13 10:09:35
[2026-06-13 10:09:35,516.516 INFO    ] 2026-06-13 10:09:35
[2026-06-13 10:09:35,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:35,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:35,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:35,873.873 INFO    ] time= 13/06/2026 10:09:35
[2026-06-13 10:09:35,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:35,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:36,025.025 INFO    ] No existing commands found in stream
[2026-06-13 10:09:41,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:09:41,052.052 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 10:09:42,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:09:42,992.992 INFO    ] Checking for system updates...
[2026-06-13 10:09:43,013.013 INFO    ] 200
[2026-06-13 10:09:43,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:43,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:43,046.046 INFO    ] No update needed
[2026-06-13 10:09:43,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 10:09:43,068.068 INFO    ] 200
[2026-06-13 10:09:43,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:43,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:09:43,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:43,143.143 INFO    ] No camera update needed
[2026-06-13 10:09:43,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:09:43,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:09:43,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:09:43,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:09:45,191.191 INFO    ] ================================================
[2026-06-13 10:09:45,207.207 INFO    ] Launching Daemon at Sat Jun 13 10:09:45 IST 2026
[2026-06-13 10:09:45,218.218 INFO    ] ================================================
[2026-06-13 10:09:45,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:09:45
[2026-06-13 10:09:45,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:09:46,051.051 INFO    ] Initializing speech engine...
[2026-06-13 10:09:46,057.057 INFO    ] 2026-06-13 10:09:46
[2026-06-13 10:09:46,260.260 INFO    ] 2026-06-13 10:09:46
[2026-06-13 10:09:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:46,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:46,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:46,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:46,666.666 INFO    ] time= 13/06/2026 10:09:46
[2026-06-13 10:09:46,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:46,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:46,775.775 INFO    ] No existing commands found in stream
[2026-06-13 10:09:51,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:09:51,789.789 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 10:09:55,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:09:55,943.943 INFO    ] Checking for system updates...
[2026-06-13 10:09:55,985.985 INFO    ] 200
[2026-06-13 10:09:55,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:56,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:56,049.049 INFO    ] No update needed
[2026-06-13 10:09:56,052.052 INFO    ] Checking for camera pi updates...
[2026-06-13 10:09:56,088.088 INFO    ] 200
[2026-06-13 10:09:56,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:09:56,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:09:56,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:09:56,180.180 INFO    ] No camera update needed
[2026-06-13 10:09:56,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:09:56,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:09:56,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:09:56,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:09:58,242.242 INFO    ] ================================================
[2026-06-13 10:09:58,258.258 INFO    ] Launching Daemon at Sat Jun 13 10:09:58 IST 2026
[2026-06-13 10:09:58,269.269 INFO    ] ================================================
[2026-06-13 10:09:58,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:09:58
[2026-06-13 10:09:58,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:09:59,122.122 INFO    ] Initializing speech engine...
[2026-06-13 10:09:59,128.128 INFO    ] 2026-06-13 10:09:59
[2026-06-13 10:09:59,336.336 INFO    ] 2026-06-13 10:09:59
[2026-06-13 10:09:59,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:09:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:09:59,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:09:59,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:09:59,741.741 INFO    ] time= 13/06/2026 10:09:59
[2026-06-13 10:09:59,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:09:59,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:09:59,850.850 INFO    ] No existing commands found in stream
[2026-06-13 10:10:04,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:10:04,864.864 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 10:10:08,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:10:08,564.564 INFO    ] Checking for system updates...
[2026-06-13 10:10:08,600.600 INFO    ] 200
[2026-06-13 10:10:08,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:08,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:10:08,664.664 INFO    ] No update needed
[2026-06-13 10:10:08,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 10:10:08,701.701 INFO    ] 200
[2026-06-13 10:10:08,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:08,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:10:08,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:10:08,792.792 INFO    ] No camera update needed
[2026-06-13 10:10:08,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:10:08,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:10:08,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:10:08,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:10:10,849.849 INFO    ] ================================================
[2026-06-13 10:10:10,865.865 INFO    ] Launching Daemon at Sat Jun 13 10:10:10 IST 2026
[2026-06-13 10:10:10,876.876 INFO    ] ================================================
[2026-06-13 10:10:11,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:10:11
[2026-06-13 10:10:11,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:10:11,688.688 INFO    ] Initializing speech engine...
[2026-06-13 10:10:11,693.693 INFO    ] 2026-06-13 10:10:11
[2026-06-13 10:10:11,896.896 INFO    ] 2026-06-13 10:10:11
[2026-06-13 10:10:11,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:10:12,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:10:12,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:10:12,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:10:12,309.309 INFO    ] time= 13/06/2026 10:10:12
[2026-06-13 10:10:12,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:10:12,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:10:12,419.419 INFO    ] No existing commands found in stream
[2026-06-13 10:10:17,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:10:17,431.431 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 10:10:19,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:10:19,322.322 INFO    ] Checking for system updates...
[2026-06-13 10:10:19,343.343 INFO    ] 200
[2026-06-13 10:10:19,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:19,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:19,377.377 INFO    ] No update needed
[2026-06-13 10:10:19,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 10:10:19,398.398 INFO    ] 200
[2026-06-13 10:10:19,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:19,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:10:19,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:10:19,459.459 INFO    ] No camera update needed
[2026-06-13 10:10:19,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:10:19,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:10:19,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:10:19,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:10:21,509.509 INFO    ] ================================================
[2026-06-13 10:10:21,525.525 INFO    ] Launching Daemon at Sat Jun 13 10:10:21 IST 2026
[2026-06-13 10:10:21,536.536 INFO    ] ================================================
[2026-06-13 10:10:21,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:10:21
[2026-06-13 10:10:22,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:10:22,334.334 INFO    ] Initializing speech engine...
[2026-06-13 10:10:22,342.342 INFO    ] 2026-06-13 10:10:22
[2026-06-13 10:10:22,555.555 INFO    ] 2026-06-13 10:10:22
[2026-06-13 10:10:22,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:10:22,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:10:22,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:10:22,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:10:22,970.970 INFO    ] time= 13/06/2026 10:10:22
[2026-06-13 10:10:23,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:10:23,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:10:23,077.077 INFO    ] No existing commands found in stream
[2026-06-13 10:10:28,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:10:28,093.093 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 10:10:29,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:10:29,347.347 INFO    ] Checking for system updates...
[2026-06-13 10:10:29,369.369 INFO    ] 200
[2026-06-13 10:10:29,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:29,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:29,402.402 INFO    ] No update needed
[2026-06-13 10:10:29,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 10:10:29,425.425 INFO    ] 200
[2026-06-13 10:10:29,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:29,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:10:29,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:29,494.494 INFO    ] No camera update needed
[2026-06-13 10:10:29,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:10:29,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:10:29,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:10:29,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:10:31,545.545 INFO    ] ================================================
[2026-06-13 10:10:31,561.561 INFO    ] Launching Daemon at Sat Jun 13 10:10:31 IST 2026
[2026-06-13 10:10:31,572.572 INFO    ] ================================================
[2026-06-13 10:10:31,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:10:31
[2026-06-13 10:10:32,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:10:32,443.443 INFO    ] Initializing speech engine...
[2026-06-13 10:10:32,449.449 INFO    ] 2026-06-13 10:10:32
[2026-06-13 10:10:32,662.662 INFO    ] 2026-06-13 10:10:32
[2026-06-13 10:10:32,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:10:32,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:10:32,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:10:32,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:10:32,951.951 INFO    ] time= 13/06/2026 10:10:32
[2026-06-13 10:10:32,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:10:32,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:10:33,049.049 INFO    ] No existing commands found in stream
[2026-06-13 10:10:38,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:10:38,086.086 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 10:10:41,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:10:41,756.756 INFO    ] Checking for system updates...
[2026-06-13 10:10:41,779.779 INFO    ] 200
[2026-06-13 10:10:41,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:41,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:41,812.812 INFO    ] No update needed
[2026-06-13 10:10:41,813.813 INFO    ] Checking for camera pi updates...
[2026-06-13 10:10:41,834.834 INFO    ] 200
[2026-06-13 10:10:41,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:41,858.858 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:10:41,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:41,899.899 INFO    ] No camera update needed
[2026-06-13 10:10:41,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:10:41,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:10:41,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:10:41,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:10:43,948.948 INFO    ] ================================================
[2026-06-13 10:10:43,964.964 INFO    ] Launching Daemon at Sat Jun 13 10:10:43 IST 2026
[2026-06-13 10:10:43,975.975 INFO    ] ================================================
[2026-06-13 10:10:44,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:10:44
[2026-06-13 10:10:44,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:10:44,796.796 INFO    ] Initializing speech engine...
[2026-06-13 10:10:44,801.801 INFO    ] 2026-06-13 10:10:44
[2026-06-13 10:10:45,006.006 INFO    ] 2026-06-13 10:10:44
[2026-06-13 10:10:45,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:10:45,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:10:45,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:10:45,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:10:45,411.411 INFO    ] time= 13/06/2026 10:10:45
[2026-06-13 10:10:45,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:10:45,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:10:45,521.521 INFO    ] No existing commands found in stream
[2026-06-13 10:10:50,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:10:50,533.533 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 10:10:54,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:10:54,041.041 INFO    ] Checking for system updates...
[2026-06-13 10:10:54,063.063 INFO    ] 200
[2026-06-13 10:10:54,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:54,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:54,096.096 INFO    ] No update needed
[2026-06-13 10:10:54,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 10:10:54,117.117 INFO    ] 200
[2026-06-13 10:10:54,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:10:54,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:10:54,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:10:54,189.189 INFO    ] No camera update needed
[2026-06-13 10:10:54,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:10:54,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:10:54,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:10:54,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:10:56,236.236 INFO    ] ================================================
[2026-06-13 10:10:56,252.252 INFO    ] Launching Daemon at Sat Jun 13 10:10:56 IST 2026
[2026-06-13 10:10:56,263.263 INFO    ] ================================================
[2026-06-13 10:10:56,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:10:56
[2026-06-13 10:10:56,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:10:57,033.033 INFO    ] Initializing speech engine...
[2026-06-13 10:10:57,038.038 INFO    ] 2026-06-13 10:10:57
[2026-06-13 10:10:57,242.242 INFO    ] 2026-06-13 10:10:57
[2026-06-13 10:10:57,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:10:57,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:10:57,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:10:57,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:10:57,604.604 INFO    ] time= 13/06/2026 10:10:57
[2026-06-13 10:10:57,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:10:57,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:10:57,826.826 INFO    ] No existing commands found in stream
[2026-06-13 10:11:02,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:11:02,851.851 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 10:11:05,738.738 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 10:11:05,766.766 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 10:11:05,777.777 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 10:11:05,788.788 INFO    ] None
[2026-06-13 10:11:05,791.791 INFO    ] Checking for system updates...
[2026-06-13 10:11:05,833.833 INFO    ] 200
[2026-06-13 10:11:05,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:05,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:05,883.883 INFO    ] No update needed
[2026-06-13 10:11:05,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 10:11:05,903.903 INFO    ] 200
[2026-06-13 10:11:05,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:05,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:11:10,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:11:10,768.768 INFO    ] No camera update needed
[2026-06-13 10:11:10,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:11:10,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:11:10,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:11:10,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:11:12,828.828 INFO    ] ================================================
[2026-06-13 10:11:12,843.843 INFO    ] Launching Daemon at Sat Jun 13 10:11:12 IST 2026
[2026-06-13 10:11:12,854.854 INFO    ] ================================================
[2026-06-13 10:11:13,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:11:13
[2026-06-13 10:11:13,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:11:13,641.641 INFO    ] Initializing speech engine...
[2026-06-13 10:11:13,646.646 INFO    ] 2026-06-13 10:11:13
[2026-06-13 10:11:13,876.876 INFO    ] 2026-06-13 10:11:13
[2026-06-13 10:11:13,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:11:14,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:11:14,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:11:14,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:11:14,283.283 INFO    ] time= 13/06/2026 10:11:14
[2026-06-13 10:11:14,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:11:14,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:11:14,393.393 INFO    ] No existing commands found in stream
[2026-06-13 10:11:19,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:11:19,406.406 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 10:11:20,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:11:20,030.030 INFO    ] Checking for system updates...
[2026-06-13 10:11:20,052.052 INFO    ] 200
[2026-06-13 10:11:20,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:20,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:20,086.086 INFO    ] No update needed
[2026-06-13 10:11:20,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 10:11:20,108.108 INFO    ] 200
[2026-06-13 10:11:20,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:20,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:11:20,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:20,183.183 INFO    ] No camera update needed
[2026-06-13 10:11:20,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:11:20,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:11:20,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:11:20,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:11:22,233.233 INFO    ] ================================================
[2026-06-13 10:11:22,248.248 INFO    ] Launching Daemon at Sat Jun 13 10:11:22 IST 2026
[2026-06-13 10:11:22,263.263 INFO    ] ================================================
[2026-06-13 10:11:22,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:11:22
[2026-06-13 10:11:22,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:11:23,081.081 INFO    ] Initializing speech engine...
[2026-06-13 10:11:23,085.085 INFO    ] 2026-06-13 10:11:23
[2026-06-13 10:11:23,277.277 INFO    ] 2026-06-13 10:11:23
[2026-06-13 10:11:23,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:11:23,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:11:23,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:11:23,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:11:23,696.696 INFO    ] time= 13/06/2026 10:11:23
[2026-06-13 10:11:23,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:11:23,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:11:23,878.878 INFO    ] No existing commands found in stream
[2026-06-13 10:11:28,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:11:28,892.892 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 10:11:32,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:11:32,936.936 INFO    ] Checking for system updates...
[2026-06-13 10:11:32,976.976 INFO    ] 200
[2026-06-13 10:11:32,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:33,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:33,034.034 INFO    ] No update needed
[2026-06-13 10:11:33,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 10:11:33,063.063 INFO    ] 200
[2026-06-13 10:11:33,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:33,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:11:33,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:33,120.120 INFO    ] No camera update needed
[2026-06-13 10:11:33,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:11:33,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:11:33,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:11:33,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:11:35,168.168 INFO    ] ================================================
[2026-06-13 10:11:35,183.183 INFO    ] Launching Daemon at Sat Jun 13 10:11:35 IST 2026
[2026-06-13 10:11:35,194.194 INFO    ] ================================================
[2026-06-13 10:11:35,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:11:35
[2026-06-13 10:11:35,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:11:36,089.089 INFO    ] Initializing speech engine...
[2026-06-13 10:11:36,102.102 INFO    ] 2026-06-13 10:11:36
[2026-06-13 10:11:36,313.313 INFO    ] 2026-06-13 10:11:36
[2026-06-13 10:11:36,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:11:36,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:11:36,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:11:36,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:11:36,652.652 INFO    ] time= 13/06/2026 10:11:36
[2026-06-13 10:11:36,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:11:36,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:11:36,826.826 INFO    ] No existing commands found in stream
[2026-06-13 10:11:41,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:11:41,840.840 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 10:11:45,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:11:45,782.782 INFO    ] Checking for system updates...
[2026-06-13 10:11:45,803.803 INFO    ] 200
[2026-06-13 10:11:45,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:45,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:11:45,837.837 INFO    ] No update needed
[2026-06-13 10:11:45,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 10:11:45,859.859 INFO    ] 200
[2026-06-13 10:11:45,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:45,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:11:45,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:11:45,930.930 INFO    ] No camera update needed
[2026-06-13 10:11:45,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:11:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:11:45,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:11:45,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:11:47,977.977 INFO    ] ================================================
[2026-06-13 10:11:47,993.993 INFO    ] Launching Daemon at Sat Jun 13 10:11:47 IST 2026
[2026-06-13 10:11:48,004.004 INFO    ] ================================================
[2026-06-13 10:11:48,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:11:48
[2026-06-13 10:11:48,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:11:49,248.248 INFO    ] Initializing speech engine...
[2026-06-13 10:11:49,270.270 INFO    ] 2026-06-13 10:11:49
[2026-06-13 10:11:49,520.520 INFO    ] 2026-06-13 10:11:49
[2026-06-13 10:11:49,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:11:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:11:49,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:11:49,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:11:49,850.850 INFO    ] time= 13/06/2026 10:11:49
[2026-06-13 10:11:49,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:11:49,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:11:49,959.959 INFO    ] No existing commands found in stream
[2026-06-13 10:11:54,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:11:54,974.974 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 10:11:55,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:11:55,682.682 INFO    ] Checking for system updates...
[2026-06-13 10:11:55,703.703 INFO    ] 200
[2026-06-13 10:11:55,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:55,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:11:55,738.738 INFO    ] No update needed
[2026-06-13 10:11:55,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 10:11:55,759.759 INFO    ] 200
[2026-06-13 10:11:55,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:11:55,785.785 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:11:55,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:11:55,827.827 INFO    ] No camera update needed
[2026-06-13 10:11:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:11:55,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:11:55,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:11:55,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:11:57,877.877 INFO    ] ================================================
[2026-06-13 10:11:57,893.893 INFO    ] Launching Daemon at Sat Jun 13 10:11:57 IST 2026
[2026-06-13 10:11:57,904.904 INFO    ] ================================================
[2026-06-13 10:11:58,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:11:58
[2026-06-13 10:11:58,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:11:58,705.705 INFO    ] Initializing speech engine...
[2026-06-13 10:11:58,710.710 INFO    ] 2026-06-13 10:11:58
[2026-06-13 10:11:58,913.913 INFO    ] 2026-06-13 10:11:58
[2026-06-13 10:11:58,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:11:59,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:11:59,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:11:59,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:11:59,307.307 INFO    ] time= 13/06/2026 10:11:59
[2026-06-13 10:11:59,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:11:59,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:11:59,428.428 INFO    ] No existing commands found in stream
[2026-06-13 10:12:04,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:04,440.440 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 10:12:05,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:12:05,696.696 INFO    ] Checking for system updates...
[2026-06-13 10:12:05,716.716 INFO    ] 200
[2026-06-13 10:12:05,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:05,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:05,750.750 INFO    ] No update needed
[2026-06-13 10:12:05,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 10:12:05,771.771 INFO    ] 200
[2026-06-13 10:12:05,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:05,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:12:05,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:05,842.842 INFO    ] No camera update needed
[2026-06-13 10:12:05,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:12:05,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:12:05,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:12:05,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:12:07,890.890 INFO    ] ================================================
[2026-06-13 10:12:07,905.905 INFO    ] Launching Daemon at Sat Jun 13 10:12:07 IST 2026
[2026-06-13 10:12:07,915.915 INFO    ] ================================================
[2026-06-13 10:12:08,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:12:08
[2026-06-13 10:12:08,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:12:08,711.711 INFO    ] Initializing speech engine...
[2026-06-13 10:12:08,716.716 INFO    ] 2026-06-13 10:12:08
[2026-06-13 10:12:08,919.919 INFO    ] 2026-06-13 10:12:08
[2026-06-13 10:12:08,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:12:09,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:12:09,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:12:09,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:12:09,325.325 INFO    ] time= 13/06/2026 10:12:09
[2026-06-13 10:12:09,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:12:09,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:12:09,436.436 INFO    ] No existing commands found in stream
[2026-06-13 10:12:14,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:14,447.447 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 10:12:17,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:12:17,648.648 INFO    ] Checking for system updates...
[2026-06-13 10:12:17,669.669 INFO    ] 200
[2026-06-13 10:12:17,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:17,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:17,705.705 INFO    ] No update needed
[2026-06-13 10:12:17,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 10:12:17,730.730 INFO    ] 200
[2026-06-13 10:12:17,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:17,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:12:17,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:17,818.818 INFO    ] No camera update needed
[2026-06-13 10:12:17,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:12:17,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:12:17,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:12:17,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:12:19,866.866 INFO    ] ================================================
[2026-06-13 10:12:19,881.881 INFO    ] Launching Daemon at Sat Jun 13 10:12:19 IST 2026
[2026-06-13 10:12:19,892.892 INFO    ] ================================================
[2026-06-13 10:12:20,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:12:20
[2026-06-13 10:12:20,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:12:20,687.687 INFO    ] Initializing speech engine...
[2026-06-13 10:12:20,691.691 INFO    ] 2026-06-13 10:12:20
[2026-06-13 10:12:20,910.910 INFO    ] 2026-06-13 10:12:20
[2026-06-13 10:12:20,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:12:21,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:12:21,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:12:21,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:12:21,323.323 INFO    ] time= 13/06/2026 10:12:21
[2026-06-13 10:12:21,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:12:21,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:12:21,461.461 INFO    ] No existing commands found in stream
[2026-06-13 10:12:26,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:26,474.474 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 10:12:29,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:12:29,488.488 INFO    ] Checking for system updates...
[2026-06-13 10:12:29,510.510 INFO    ] 200
[2026-06-13 10:12:29,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:29,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:29,543.543 INFO    ] No update needed
[2026-06-13 10:12:29,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 10:12:29,565.565 INFO    ] 200
[2026-06-13 10:12:29,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:29,590.590 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:12:29,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:29,628.628 INFO    ] No camera update needed
[2026-06-13 10:12:29,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:12:29,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:12:29,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:12:29,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:12:31,668.668 INFO    ] ================================================
[2026-06-13 10:12:31,678.678 INFO    ] Launching Daemon at Sat Jun 13 10:12:31 IST 2026
[2026-06-13 10:12:31,685.685 INFO    ] ================================================
[2026-06-13 10:12:32,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:12:32
[2026-06-13 10:12:32,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:12:32,469.469 INFO    ] Initializing speech engine...
[2026-06-13 10:12:32,474.474 INFO    ] 2026-06-13 10:12:32
[2026-06-13 10:12:32,691.691 INFO    ] 2026-06-13 10:12:32
[2026-06-13 10:12:32,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:12:32,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:12:32,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:12:33,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:12:33,110.110 INFO    ] time= 13/06/2026 10:12:33
[2026-06-13 10:12:33,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:12:33,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:12:33,216.216 INFO    ] No existing commands found in stream
[2026-06-13 10:12:38,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:38,230.230 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 10:12:39,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:12:39,235.235 INFO    ] Checking for system updates...
[2026-06-13 10:12:39,257.257 INFO    ] 200
[2026-06-13 10:12:39,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:39,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:39,293.293 INFO    ] No update needed
[2026-06-13 10:12:39,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 10:12:39,314.314 INFO    ] 200
[2026-06-13 10:12:39,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:39,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:12:39,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:39,386.386 INFO    ] No camera update needed
[2026-06-13 10:12:39,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:12:39,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:12:39,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:12:39,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:12:41,434.434 INFO    ] ================================================
[2026-06-13 10:12:41,450.450 INFO    ] Launching Daemon at Sat Jun 13 10:12:41 IST 2026
[2026-06-13 10:12:41,461.461 INFO    ] ================================================
[2026-06-13 10:12:41,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:12:41
[2026-06-13 10:12:42,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:12:42,337.337 INFO    ] Initializing speech engine...
[2026-06-13 10:12:42,343.343 INFO    ] 2026-06-13 10:12:42
[2026-06-13 10:12:42,546.546 INFO    ] 2026-06-13 10:12:42
[2026-06-13 10:12:42,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:12:42,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:12:42,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:12:42,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:12:42,964.964 INFO    ] time= 13/06/2026 10:12:42
[2026-06-13 10:12:42,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:12:42,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:12:43,064.064 INFO    ] No existing commands found in stream
[2026-06-13 10:12:48,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:48,074.074 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 10:12:49,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:12:49,797.797 INFO    ] Checking for system updates...
[2026-06-13 10:12:49,818.818 INFO    ] 200
[2026-06-13 10:12:49,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:49,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:49,853.853 INFO    ] No update needed
[2026-06-13 10:12:49,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 10:12:49,875.875 INFO    ] 200
[2026-06-13 10:12:49,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:12:49,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:12:49,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:12:49,945.945 INFO    ] No camera update needed
[2026-06-13 10:12:49,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:12:49,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:12:49,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:12:49,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:12:51,991.991 INFO    ] ================================================
[2026-06-13 10:12:52,007.007 INFO    ] Launching Daemon at Sat Jun 13 10:12:52 IST 2026
[2026-06-13 10:12:52,018.018 INFO    ] ================================================
[2026-06-13 10:12:52,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:12:52
[2026-06-13 10:12:52,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:12:52,875.875 INFO    ] Initializing speech engine...
[2026-06-13 10:12:52,891.891 INFO    ] 2026-06-13 10:12:52
[2026-06-13 10:12:53,103.103 INFO    ] 2026-06-13 10:12:53
[2026-06-13 10:12:53,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:12:53,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:12:53,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:12:53,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:12:53,508.508 INFO    ] time= 13/06/2026 10:12:53
[2026-06-13 10:12:53,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:12:53,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:12:53,626.626 INFO    ] No existing commands found in stream
[2026-06-13 10:12:58,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:12:58,639.639 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 10:13:00,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:13:00,676.676 INFO    ] Checking for system updates...
[2026-06-13 10:13:00,698.698 INFO    ] 200
[2026-06-13 10:13:00,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:00,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:00,734.734 INFO    ] No update needed
[2026-06-13 10:13:00,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:00,759.759 INFO    ] 200
[2026-06-13 10:13:00,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:00,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:00,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:00,829.829 INFO    ] No camera update needed
[2026-06-13 10:13:00,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:00,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:00,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:00,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:13:02,884.884 INFO    ] ================================================
[2026-06-13 10:13:02,900.900 INFO    ] Launching Daemon at Sat Jun 13 10:13:02 IST 2026
[2026-06-13 10:13:02,912.912 INFO    ] ================================================
[2026-06-13 10:13:03,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:13:03
[2026-06-13 10:13:04,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:13:04,466.466 INFO    ] Initializing speech engine...
[2026-06-13 10:13:04,470.470 INFO    ] 2026-06-13 10:13:04
[2026-06-13 10:13:04,680.680 INFO    ] 2026-06-13 10:13:04
[2026-06-13 10:13:04,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:13:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:13:04,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:13:05,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:13:05,084.084 INFO    ] time= 13/06/2026 10:13:05
[2026-06-13 10:13:05,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:13:05,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:13:05,202.202 INFO    ] No existing commands found in stream
[2026-06-13 10:13:10,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:13:10,215.215 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 10:13:13,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:13:13,882.882 INFO    ] Checking for system updates...
[2026-06-13 10:13:13,903.903 INFO    ] 200
[2026-06-13 10:13:13,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:13,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:13,937.937 INFO    ] No update needed
[2026-06-13 10:13:13,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:13,958.958 INFO    ] 200
[2026-06-13 10:13:13,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:13,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:14,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:14,127.127 INFO    ] No camera update needed
[2026-06-13 10:13:14,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:14,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:14,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:14,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:13:16,180.180 INFO    ] ================================================
[2026-06-13 10:13:16,195.195 INFO    ] Launching Daemon at Sat Jun 13 10:13:16 IST 2026
[2026-06-13 10:13:16,206.206 INFO    ] ================================================
[2026-06-13 10:13:16,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:13:16
[2026-06-13 10:13:16,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:13:17,037.037 INFO    ] Initializing speech engine...
[2026-06-13 10:13:17,047.047 INFO    ] 2026-06-13 10:13:17
[2026-06-13 10:13:17,264.264 INFO    ] 2026-06-13 10:13:17
[2026-06-13 10:13:17,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:13:17,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:13:17,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:13:17,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:13:17,640.640 INFO    ] time= 13/06/2026 10:13:17
[2026-06-13 10:13:17,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:13:17,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:13:17,841.841 INFO    ] No existing commands found in stream
[2026-06-13 10:13:22,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:13:22,853.853 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 10:13:25,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:13:25,352.352 INFO    ] Checking for system updates...
[2026-06-13 10:13:25,375.375 INFO    ] 200
[2026-06-13 10:13:25,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:25,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:25,412.412 INFO    ] No update needed
[2026-06-13 10:13:25,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:25,433.433 INFO    ] 200
[2026-06-13 10:13:25,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:25,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:25,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:25,506.506 INFO    ] No camera update needed
[2026-06-13 10:13:25,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:25,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:25,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:25,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:13:27,553.553 INFO    ] ================================================
[2026-06-13 10:13:27,568.568 INFO    ] Launching Daemon at Sat Jun 13 10:13:27 IST 2026
[2026-06-13 10:13:27,579.579 INFO    ] ================================================
[2026-06-13 10:13:27,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:13:27
[2026-06-13 10:13:28,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:13:28,430.430 INFO    ] Initializing speech engine...
[2026-06-13 10:13:28,436.436 INFO    ] 2026-06-13 10:13:28
[2026-06-13 10:13:28,645.645 INFO    ] 2026-06-13 10:13:28
[2026-06-13 10:13:28,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:13:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:13:28,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:13:28,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:13:29,053.053 INFO    ] time= 13/06/2026 10:13:29
[2026-06-13 10:13:29,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:13:29,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:13:29,170.170 INFO    ] No existing commands found in stream
[2026-06-13 10:13:34,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:13:34,184.184 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 10:13:37,285.285 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 10:13:37,320.320 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 10:13:37,332.332 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 10:13:37,344.344 INFO    ] None
[2026-06-13 10:13:37,347.347 INFO    ] Checking for system updates...
[2026-06-13 10:13:37,408.408 INFO    ] 200
[2026-06-13 10:13:37,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:37,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:13:37,467.467 INFO    ] No update needed
[2026-06-13 10:13:37,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:37,501.501 INFO    ] 200
[2026-06-13 10:13:37,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:37,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:38,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:38,381.381 INFO    ] No camera update needed
[2026-06-13 10:13:38,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:38,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:38,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:38,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:13:40,447.447 INFO    ] ================================================
[2026-06-13 10:13:40,462.462 INFO    ] Launching Daemon at Sat Jun 13 10:13:40 IST 2026
[2026-06-13 10:13:40,473.473 INFO    ] ================================================
[2026-06-13 10:13:40,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:13:40
[2026-06-13 10:13:41,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:13:41,346.346 INFO    ] Initializing speech engine...
[2026-06-13 10:13:41,356.356 INFO    ] 2026-06-13 10:13:41
[2026-06-13 10:13:41,566.566 INFO    ] 2026-06-13 10:13:41
[2026-06-13 10:13:41,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:13:41,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:13:41,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:13:41,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:13:41,990.990 INFO    ] time= 13/06/2026 10:13:41
[2026-06-13 10:13:42,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:13:42,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:13:42,093.093 INFO    ] No existing commands found in stream
[2026-06-13 10:13:47,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:13:47,111.111 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 10:13:50,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:13:50,093.093 INFO    ] Checking for system updates...
[2026-06-13 10:13:50,114.114 INFO    ] 200
[2026-06-13 10:13:50,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:50,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:13:50,148.148 INFO    ] No update needed
[2026-06-13 10:13:50,149.149 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:50,169.169 INFO    ] 200
[2026-06-13 10:13:50,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:50,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:50,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:13:50,233.233 INFO    ] No camera update needed
[2026-06-13 10:13:50,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:50,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:50,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:50,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:13:52,281.281 INFO    ] ================================================
[2026-06-13 10:13:52,296.296 INFO    ] Launching Daemon at Sat Jun 13 10:13:52 IST 2026
[2026-06-13 10:13:52,307.307 INFO    ] ================================================
[2026-06-13 10:13:52,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:13:52
[2026-06-13 10:13:53,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:13:53,162.162 INFO    ] Initializing speech engine...
[2026-06-13 10:13:53,168.168 INFO    ] 2026-06-13 10:13:53
[2026-06-13 10:13:53,377.377 INFO    ] 2026-06-13 10:13:53
[2026-06-13 10:13:53,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:13:53,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:13:53,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:13:53,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:13:53,777.777 INFO    ] time= 13/06/2026 10:13:53
[2026-06-13 10:13:53,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:13:53,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:13:53,900.900 INFO    ] No existing commands found in stream
[2026-06-13 10:13:58,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:13:58,914.914 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 10:13:59,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:13:59,800.800 INFO    ] Checking for system updates...
[2026-06-13 10:13:59,822.822 INFO    ] 200
[2026-06-13 10:13:59,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:59,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:13:59,858.858 INFO    ] No update needed
[2026-06-13 10:13:59,860.860 INFO    ] Checking for camera pi updates...
[2026-06-13 10:13:59,880.880 INFO    ] 200
[2026-06-13 10:13:59,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:13:59,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:13:59,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:13:59,946.946 INFO    ] No camera update needed
[2026-06-13 10:13:59,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:13:59,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:13:59,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:13:59,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:01,989.989 INFO    ] ================================================
[2026-06-13 10:14:02,002.002 INFO    ] Launching Daemon at Sat Jun 13 10:14:01 IST 2026
[2026-06-13 10:14:02,013.013 INFO    ] ================================================
[2026-06-13 10:14:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:02
[2026-06-13 10:14:02,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:02,952.952 INFO    ] Initializing speech engine...
[2026-06-13 10:14:02,958.958 INFO    ] 2026-06-13 10:14:02
[2026-06-13 10:14:03,171.171 INFO    ] 2026-06-13 10:14:03
[2026-06-13 10:14:03,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:03,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:14:03,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:14:03,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:14:03,428.428 INFO    ] time= 13/06/2026 10:14:03
[2026-06-13 10:14:03,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:14:03,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:14:03,616.616 INFO    ] No existing commands found in stream
[2026-06-13 10:14:08,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:14:08,644.644 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 10:14:09,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:14:09,804.804 INFO    ] Checking for system updates...
[2026-06-13 10:14:09,828.828 INFO    ] 200
[2026-06-13 10:14:09,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:09,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:09,861.861 INFO    ] No update needed
[2026-06-13 10:14:09,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 10:14:09,884.884 INFO    ] 200
[2026-06-13 10:14:09,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:09,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:14:09,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:09,949.949 INFO    ] No camera update needed
[2026-06-13 10:14:09,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:14:09,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:09,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:09,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:12,997.997 INFO    ] ================================================
[2026-06-13 10:14:12,012.012 INFO    ] Launching Daemon at Sat Jun 13 10:14:12 IST 2026
[2026-06-13 10:14:12,023.023 INFO    ] ================================================
[2026-06-13 10:14:12,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:12
[2026-06-13 10:14:12,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:12,805.805 INFO    ] Initializing speech engine...
[2026-06-13 10:14:12,815.815 INFO    ] 2026-06-13 10:14:12
[2026-06-13 10:14:13,017.017 INFO    ] 2026-06-13 10:14:12
[2026-06-13 10:14:13,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:13,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:14:13,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:14:13,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:14:13,427.427 INFO    ] time= 13/06/2026 10:14:13
[2026-06-13 10:14:13,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:14:13,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:14:13,613.613 INFO    ] No existing commands found in stream
[2026-06-13 10:14:18,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:14:18,627.627 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 10:14:19,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:14:19,539.539 INFO    ] Checking for system updates...
[2026-06-13 10:14:19,560.560 INFO    ] 200
[2026-06-13 10:14:19,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:19,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:14:19,593.593 INFO    ] No update needed
[2026-06-13 10:14:19,594.594 INFO    ] Checking for camera pi updates...
[2026-06-13 10:14:19,613.613 INFO    ] 200
[2026-06-13 10:14:19,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:19,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:14:19,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:19,679.679 INFO    ] No camera update needed
[2026-06-13 10:14:19,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:14:19,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:19,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:19,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:21,727.727 INFO    ] ================================================
[2026-06-13 10:14:21,743.743 INFO    ] Launching Daemon at Sat Jun 13 10:14:21 IST 2026
[2026-06-13 10:14:21,754.754 INFO    ] ================================================
[2026-06-13 10:14:22,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:22
[2026-06-13 10:14:22,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:22,558.558 INFO    ] Initializing speech engine...
[2026-06-13 10:14:22,562.562 INFO    ] 2026-06-13 10:14:22
[2026-06-13 10:14:22,769.769 INFO    ] 2026-06-13 10:14:22
[2026-06-13 10:14:22,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:22,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:14:22,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:14:23,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:14:23,161.161 INFO    ] time= 13/06/2026 10:14:23
[2026-06-13 10:14:23,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:14:23,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:14:23,293.293 INFO    ] No existing commands found in stream
[2026-06-13 10:14:28,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:14:28,306.306 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 10:14:31,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:14:31,514.514 INFO    ] Checking for system updates...
[2026-06-13 10:14:31,536.536 INFO    ] 200
[2026-06-13 10:14:31,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:31,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:31,572.572 INFO    ] No update needed
[2026-06-13 10:14:31,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 10:14:31,596.596 INFO    ] 200
[2026-06-13 10:14:31,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:31,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:14:31,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:31,663.663 INFO    ] No camera update needed
[2026-06-13 10:14:31,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:14:31,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:31,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:31,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:33,703.703 INFO    ] ================================================
[2026-06-13 10:14:33,719.719 INFO    ] Launching Daemon at Sat Jun 13 10:14:33 IST 2026
[2026-06-13 10:14:33,730.730 INFO    ] ================================================
[2026-06-13 10:14:34,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:34
[2026-06-13 10:14:34,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:34,532.532 INFO    ] Initializing speech engine...
[2026-06-13 10:14:34,543.543 INFO    ] 2026-06-13 10:14:34
[2026-06-13 10:14:34,752.752 INFO    ] 2026-06-13 10:14:34
[2026-06-13 10:14:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:34,838.838 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 10:14:34,891.891 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 10:14:34,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:34,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:35,006.006 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 10:14:35,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:37,065.065 INFO    ] ================================================
[2026-06-13 10:14:37,081.081 INFO    ] Launching Daemon at Sat Jun 13 10:14:37 IST 2026
[2026-06-13 10:14:37,091.091 INFO    ] ================================================
[2026-06-13 10:14:37,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:37
[2026-06-13 10:14:37,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:37,921.921 INFO    ] Initializing speech engine...
[2026-06-13 10:14:37,929.929 INFO    ] 2026-06-13 10:14:37
[2026-06-13 10:14:38,150.150 INFO    ] 2026-06-13 10:14:38
[2026-06-13 10:14:38,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:38,237.237 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 10:14:38,283.283 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 10:14:38,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:38,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:38,345.345 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 10:14:38,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:40,455.455 INFO    ] ================================================
[2026-06-13 10:14:40,471.471 INFO    ] Launching Daemon at Sat Jun 13 10:14:40 IST 2026
[2026-06-13 10:14:40,481.481 INFO    ] ================================================
[2026-06-13 10:14:40,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:40
[2026-06-13 10:14:41,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:41,323.323 INFO    ] Initializing speech engine...
[2026-06-13 10:14:41,328.328 INFO    ] 2026-06-13 10:14:41
[2026-06-13 10:14:41,536.536 INFO    ] 2026-06-13 10:14:41
[2026-06-13 10:14:41,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:41,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:14:41,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:14:41,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:14:41,936.936 INFO    ] time= 13/06/2026 10:14:41
[2026-06-13 10:14:41,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:14:41,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:14:42,058.058 INFO    ] No existing commands found in stream
[2026-06-13 10:14:47,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:14:47,072.072 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 10:14:47,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:14:47,760.760 INFO    ] Checking for system updates...
[2026-06-13 10:14:47,780.780 INFO    ] 200
[2026-06-13 10:14:47,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:47,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:47,814.814 INFO    ] No update needed
[2026-06-13 10:14:47,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 10:14:47,835.835 INFO    ] 200
[2026-06-13 10:14:47,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:47,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:14:48,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:14:48,013.013 INFO    ] No camera update needed
[2026-06-13 10:14:48,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:14:48,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:48,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:48,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:14:50,061.061 INFO    ] ================================================
[2026-06-13 10:14:50,076.076 INFO    ] Launching Daemon at Sat Jun 13 10:14:50 IST 2026
[2026-06-13 10:14:50,087.087 INFO    ] ================================================
[2026-06-13 10:14:50,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:14:50
[2026-06-13 10:14:50,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:14:50,896.896 INFO    ] Initializing speech engine...
[2026-06-13 10:14:50,901.901 INFO    ] 2026-06-13 10:14:50
[2026-06-13 10:14:51,104.104 INFO    ] 2026-06-13 10:14:51
[2026-06-13 10:14:51,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:14:51,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:14:51,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:14:51,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:14:51,513.513 INFO    ] time= 13/06/2026 10:14:51
[2026-06-13 10:14:51,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:14:51,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:14:51,600.600 INFO    ] No existing commands found in stream
[2026-06-13 10:14:56,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:14:56,612.612 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 10:14:58,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:14:58,272.272 INFO    ] Checking for system updates...
[2026-06-13 10:14:58,293.293 INFO    ] 200
[2026-06-13 10:14:58,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:58,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:14:58,326.326 INFO    ] No update needed
[2026-06-13 10:14:58,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 10:14:58,346.346 INFO    ] 200
[2026-06-13 10:14:58,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:14:58,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:14:58,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:14:58,409.409 INFO    ] No camera update needed
[2026-06-13 10:14:58,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:14:58,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:14:58,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:14:58,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:15:00,457.457 INFO    ] ================================================
[2026-06-13 10:15:00,472.472 INFO    ] Launching Daemon at Sat Jun 13 10:15:00 IST 2026
[2026-06-13 10:15:00,483.483 INFO    ] ================================================
[2026-06-13 10:15:00,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:15:00
[2026-06-13 10:15:01,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:15:01,726.726 INFO    ] Initializing speech engine...
[2026-06-13 10:15:01,730.730 INFO    ] 2026-06-13 10:15:01
[2026-06-13 10:15:02,013.013 INFO    ] 2026-06-13 10:15:01
[2026-06-13 10:15:02,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:15:02,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:15:02,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:15:02,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:15:02,333.333 INFO    ] time= 13/06/2026 10:15:02
[2026-06-13 10:15:02,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:15:02,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:15:02,535.535 INFO    ] No existing commands found in stream
[2026-06-13 10:15:07,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:15:07,549.549 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 10:15:15,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:15:15,812.812 INFO    ] Checking for system updates...
[2026-06-13 10:15:15,832.832 INFO    ] 200
[2026-06-13 10:15:15,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:15,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:15,865.865 INFO    ] No update needed
[2026-06-13 10:15:15,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 10:15:15,886.886 INFO    ] 200
[2026-06-13 10:15:15,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:15,910.910 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:15:15,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:15,946.946 INFO    ] No camera update needed
[2026-06-13 10:15:15,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:15:15,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:15:15,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:15:15,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:15:18,996.996 INFO    ] ================================================
[2026-06-13 10:15:18,011.011 INFO    ] Launching Daemon at Sat Jun 13 10:15:18 IST 2026
[2026-06-13 10:15:18,022.022 INFO    ] ================================================
[2026-06-13 10:15:18,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:15:18
[2026-06-13 10:15:18,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:15:18,857.857 INFO    ] Initializing speech engine...
[2026-06-13 10:15:18,862.862 INFO    ] 2026-06-13 10:15:18
[2026-06-13 10:15:19,068.068 INFO    ] 2026-06-13 10:15:19
[2026-06-13 10:15:19,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:15:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:15:19,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:15:19,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:15:19,488.488 INFO    ] time= 13/06/2026 10:15:19
[2026-06-13 10:15:19,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:15:19,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:15:19,589.589 INFO    ] No existing commands found in stream
[2026-06-13 10:15:24,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:15:24,607.607 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 10:15:25,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:15:25,023.023 INFO    ] Checking for system updates...
[2026-06-13 10:15:25,060.060 INFO    ] 200
[2026-06-13 10:15:25,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:25,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:25,120.120 INFO    ] No update needed
[2026-06-13 10:15:25,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 10:15:25,158.158 INFO    ] 200
[2026-06-13 10:15:25,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:25,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:15:25,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:25,264.264 INFO    ] No camera update needed
[2026-06-13 10:15:25,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:15:25,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:15:25,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:15:25,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:15:27,325.325 INFO    ] ================================================
[2026-06-13 10:15:27,341.341 INFO    ] Launching Daemon at Sat Jun 13 10:15:27 IST 2026
[2026-06-13 10:15:27,352.352 INFO    ] ================================================
[2026-06-13 10:15:27,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:15:27
[2026-06-13 10:15:28,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:15:28,141.141 INFO    ] Initializing speech engine...
[2026-06-13 10:15:28,152.152 INFO    ] 2026-06-13 10:15:28
[2026-06-13 10:15:28,356.356 INFO    ] 2026-06-13 10:15:28
[2026-06-13 10:15:28,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:15:28,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:15:28,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:15:28,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:15:28,776.776 INFO    ] time= 13/06/2026 10:15:28
[2026-06-13 10:15:28,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:15:28,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:15:28,871.871 INFO    ] No existing commands found in stream
[2026-06-13 10:15:33,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:15:33,885.885 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 10:15:38,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:15:38,041.041 INFO    ] Checking for system updates...
[2026-06-13 10:15:38,062.062 INFO    ] 200
[2026-06-13 10:15:38,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:38,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:15:38,095.095 INFO    ] No update needed
[2026-06-13 10:15:38,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 10:15:38,116.116 INFO    ] 200
[2026-06-13 10:15:38,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:38,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:15:38,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:15:38,180.180 INFO    ] No camera update needed
[2026-06-13 10:15:38,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:15:38,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:15:38,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:15:38,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:15:40,228.228 INFO    ] ================================================
[2026-06-13 10:15:40,243.243 INFO    ] Launching Daemon at Sat Jun 13 10:15:40 IST 2026
[2026-06-13 10:15:40,255.255 INFO    ] ================================================
[2026-06-13 10:15:40,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:15:40
[2026-06-13 10:15:40,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:15:41,036.036 INFO    ] Initializing speech engine...
[2026-06-13 10:15:41,041.041 INFO    ] 2026-06-13 10:15:41
[2026-06-13 10:15:41,269.269 INFO    ] 2026-06-13 10:15:41
[2026-06-13 10:15:41,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:15:41,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:15:41,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:15:41,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:15:41,690.690 INFO    ] time= 13/06/2026 10:15:41
[2026-06-13 10:15:41,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:15:41,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:15:41,819.819 INFO    ] No existing commands found in stream
[2026-06-13 10:15:46,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:15:46,832.832 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 10:15:48,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:15:48,490.490 INFO    ] Checking for system updates...
[2026-06-13 10:15:48,511.511 INFO    ] 200
[2026-06-13 10:15:48,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:48,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:48,544.544 INFO    ] No update needed
[2026-06-13 10:15:48,545.545 INFO    ] Checking for camera pi updates...
[2026-06-13 10:15:48,565.565 INFO    ] 200
[2026-06-13 10:15:48,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:48,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:15:48,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:48,645.645 INFO    ] No camera update needed
[2026-06-13 10:15:48,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:15:48,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:15:48,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:15:48,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:15:50,692.692 INFO    ] ================================================
[2026-06-13 10:15:50,707.707 INFO    ] Launching Daemon at Sat Jun 13 10:15:50 IST 2026
[2026-06-13 10:15:50,718.718 INFO    ] ================================================
[2026-06-13 10:15:51,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:15:51
[2026-06-13 10:15:51,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:15:51,552.552 INFO    ] Initializing speech engine...
[2026-06-13 10:15:51,563.563 INFO    ] 2026-06-13 10:15:51
[2026-06-13 10:15:51,771.771 INFO    ] 2026-06-13 10:15:51
[2026-06-13 10:15:51,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:15:51,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:15:51,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:15:52,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:15:52,191.191 INFO    ] time= 13/06/2026 10:15:52
[2026-06-13 10:15:52,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:15:52,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:15:52,288.288 INFO    ] No existing commands found in stream
[2026-06-13 10:15:57,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:15:57,301.301 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 10:15:58,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:15:58,576.576 INFO    ] Checking for system updates...
[2026-06-13 10:15:58,597.597 INFO    ] 200
[2026-06-13 10:15:58,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:58,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:58,635.635 INFO    ] No update needed
[2026-06-13 10:15:58,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 10:15:58,659.659 INFO    ] 200
[2026-06-13 10:15:58,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:15:58,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:15:58,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:15:58,726.726 INFO    ] No camera update needed
[2026-06-13 10:15:58,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:15:58,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:15:58,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:15:58,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:00,773.773 INFO    ] ================================================
[2026-06-13 10:16:00,788.788 INFO    ] Launching Daemon at Sat Jun 13 10:16:00 IST 2026
[2026-06-13 10:16:00,799.799 INFO    ] ================================================
[2026-06-13 10:16:01,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:01
[2026-06-13 10:16:02,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:02,588.588 INFO    ] Initializing speech engine...
[2026-06-13 10:16:02,600.600 INFO    ] 2026-06-13 10:16:02
[2026-06-13 10:16:02,891.891 INFO    ] 2026-06-13 10:16:02
[2026-06-13 10:16:02,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:03,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:16:03,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:16:03,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:16:03,434.434 INFO    ] time= 13/06/2026 10:16:03
[2026-06-13 10:16:03,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:16:03,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:16:03,563.563 INFO    ] No existing commands found in stream
[2026-06-13 10:16:08,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:16:08,580.580 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 10:16:09,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:16:09,580.580 INFO    ] Checking for system updates...
[2026-06-13 10:16:09,617.617 INFO    ] 200
[2026-06-13 10:16:09,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:09,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:09,676.676 INFO    ] No update needed
[2026-06-13 10:16:09,678.678 INFO    ] Checking for camera pi updates...
[2026-06-13 10:16:09,712.712 INFO    ] 200
[2026-06-13 10:16:09,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:09,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:16:09,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:09,779.779 INFO    ] No camera update needed
[2026-06-13 10:16:09,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:16:09,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:09,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:09,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:11,827.827 INFO    ] ================================================
[2026-06-13 10:16:11,842.842 INFO    ] Launching Daemon at Sat Jun 13 10:16:11 IST 2026
[2026-06-13 10:16:11,854.854 INFO    ] ================================================
[2026-06-13 10:16:12,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:12
[2026-06-13 10:16:12,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:12,670.670 INFO    ] Initializing speech engine...
[2026-06-13 10:16:12,674.674 INFO    ] 2026-06-13 10:16:12
[2026-06-13 10:16:12,896.896 INFO    ] 2026-06-13 10:16:12
[2026-06-13 10:16:12,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:16:13,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:16:13,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:16:13,312.312 INFO    ] time= 13/06/2026 10:16:13
[2026-06-13 10:16:13,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:16:13,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:16:13,411.411 INFO    ] No existing commands found in stream
[2026-06-13 10:16:18,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:16:18,428.428 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 10:16:19,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:16:19,289.289 INFO    ] Checking for system updates...
[2026-06-13 10:16:19,310.310 INFO    ] 200
[2026-06-13 10:16:19,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:19,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:16:19,343.343 INFO    ] No update needed
[2026-06-13 10:16:19,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 10:16:19,364.364 INFO    ] 200
[2026-06-13 10:16:19,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:19,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:16:19,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:16:19,426.426 INFO    ] No camera update needed
[2026-06-13 10:16:19,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:16:19,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:19,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:19,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:21,473.473 INFO    ] ================================================
[2026-06-13 10:16:21,488.488 INFO    ] Launching Daemon at Sat Jun 13 10:16:21 IST 2026
[2026-06-13 10:16:21,499.499 INFO    ] ================================================
[2026-06-13 10:16:21,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:21
[2026-06-13 10:16:22,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:22,372.372 INFO    ] Initializing speech engine...
[2026-06-13 10:16:22,379.379 INFO    ] 2026-06-13 10:16:22
[2026-06-13 10:16:22,586.586 INFO    ] 2026-06-13 10:16:22
[2026-06-13 10:16:22,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:22,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:16:22,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:16:22,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:16:23,009.009 INFO    ] time= 13/06/2026 10:16:22
[2026-06-13 10:16:23,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:16:23,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:16:23,103.103 INFO    ] No existing commands found in stream
[2026-06-13 10:16:28,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:16:28,116.116 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 10:16:31,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:16:31,979.979 INFO    ] Checking for system updates...
[2026-06-13 10:16:32,006.006 INFO    ] 200
[2026-06-13 10:16:32,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:32,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:16:32,047.047 INFO    ] No update needed
[2026-06-13 10:16:32,049.049 INFO    ] Checking for camera pi updates...
[2026-06-13 10:16:32,071.071 INFO    ] 200
[2026-06-13 10:16:32,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:32,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:16:32,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:16:32,125.125 INFO    ] No camera update needed
[2026-06-13 10:16:32,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:16:32,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:32,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:32,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:34,168.168 INFO    ] ================================================
[2026-06-13 10:16:34,183.183 INFO    ] Launching Daemon at Sat Jun 13 10:16:34 IST 2026
[2026-06-13 10:16:34,195.195 INFO    ] ================================================
[2026-06-13 10:16:34,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:34
[2026-06-13 10:16:35,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:35,290.290 INFO    ] Initializing speech engine...
[2026-06-13 10:16:35,296.296 INFO    ] 2026-06-13 10:16:35
[2026-06-13 10:16:35,590.590 INFO    ] 2026-06-13 10:16:35
[2026-06-13 10:16:35,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:35,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:16:35,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:16:35,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:16:35,967.967 INFO    ] time= 13/06/2026 10:16:35
[2026-06-13 10:16:35,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:16:36,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:16:36,093.093 INFO    ] No existing commands found in stream
[2026-06-13 10:16:41,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:16:41,108.108 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 10:16:43,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:16:43,254.254 INFO    ] Checking for system updates...
[2026-06-13 10:16:43,275.275 INFO    ] 200
[2026-06-13 10:16:43,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:43,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:43,310.310 INFO    ] No update needed
[2026-06-13 10:16:43,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 10:16:43,331.331 INFO    ] 200
[2026-06-13 10:16:43,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:43,355.355 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:16:43,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:43,382.382 INFO    ] No camera update needed
[2026-06-13 10:16:43,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:16:43,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:43,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:43,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:45,429.429 INFO    ] ================================================
[2026-06-13 10:16:45,445.445 INFO    ] Launching Daemon at Sat Jun 13 10:16:45 IST 2026
[2026-06-13 10:16:45,456.456 INFO    ] ================================================
[2026-06-13 10:16:45,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:45
[2026-06-13 10:16:46,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:46,273.273 INFO    ] Initializing speech engine...
[2026-06-13 10:16:46,286.286 INFO    ] 2026-06-13 10:16:46
[2026-06-13 10:16:46,506.506 INFO    ] 2026-06-13 10:16:46
[2026-06-13 10:16:46,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:46,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:16:46,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:16:46,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:16:46,922.922 INFO    ] time= 13/06/2026 10:16:46
[2026-06-13 10:16:46,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:16:46,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:16:47,057.057 INFO    ] No existing commands found in stream
[2026-06-13 10:16:52,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:16:52,070.070 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 10:16:55,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:16:55,204.204 INFO    ] Checking for system updates...
[2026-06-13 10:16:55,225.225 INFO    ] 200
[2026-06-13 10:16:55,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:55,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:55,258.258 INFO    ] No update needed
[2026-06-13 10:16:55,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 10:16:55,279.279 INFO    ] 200
[2026-06-13 10:16:55,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:16:55,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:16:55,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:16:55,440.440 INFO    ] No camera update needed
[2026-06-13 10:16:55,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:16:55,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:55,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:55,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:16:57,489.489 INFO    ] ================================================
[2026-06-13 10:16:57,512.512 INFO    ] Launching Daemon at Sat Jun 13 10:16:57 IST 2026
[2026-06-13 10:16:57,523.523 INFO    ] ================================================
[2026-06-13 10:16:57,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:16:57
[2026-06-13 10:16:58,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:16:58,334.334 INFO    ] Initializing speech engine...
[2026-06-13 10:16:58,339.339 INFO    ] 2026-06-13 10:16:58
[2026-06-13 10:16:58,551.551 INFO    ] 2026-06-13 10:16:58
[2026-06-13 10:16:58,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:16:58,632.632 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 10:16:58,676.676 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 10:16:58,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:16:58,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:16:58,735.735 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 10:16:58,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:00,838.838 INFO    ] ================================================
[2026-06-13 10:17:00,847.847 INFO    ] Launching Daemon at Sat Jun 13 10:17:00 IST 2026
[2026-06-13 10:17:00,853.853 INFO    ] ================================================
[2026-06-13 10:17:01,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:01
[2026-06-13 10:17:01,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:01,794.794 INFO    ] Initializing speech engine...
[2026-06-13 10:17:01,797.797 INFO    ] 2026-06-13 10:17:01
[2026-06-13 10:17:02,042.042 INFO    ] 2026-06-13 10:17:02
[2026-06-13 10:17:02,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:02,111.111 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 10:17:02,190.190 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 10:17:02,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:02,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:02,233.233 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 10:17:02,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:04,405.405 INFO    ] ================================================
[2026-06-13 10:17:04,421.421 INFO    ] Launching Daemon at Sat Jun 13 10:17:04 IST 2026
[2026-06-13 10:17:04,432.432 INFO    ] ================================================
[2026-06-13 10:17:04,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:04
[2026-06-13 10:17:05,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:05,243.243 INFO    ] Initializing speech engine...
[2026-06-13 10:17:05,247.247 INFO    ] 2026-06-13 10:17:05
[2026-06-13 10:17:05,448.448 INFO    ] 2026-06-13 10:17:05
[2026-06-13 10:17:05,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:05,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:05,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:05,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:05,753.753 INFO    ] time= 13/06/2026 10:17:05
[2026-06-13 10:17:05,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:05,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:05,854.854 INFO    ] No existing commands found in stream
[2026-06-13 10:17:10,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:17:10,891.891 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 10:17:12,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:17:12,964.964 INFO    ] Checking for system updates...
[2026-06-13 10:17:12,985.985 INFO    ] 200
[2026-06-13 10:17:12,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:13,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:13,021.021 INFO    ] No update needed
[2026-06-13 10:17:13,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 10:17:13,043.043 INFO    ] 200
[2026-06-13 10:17:13,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:13,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:17:13,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:13,213.213 INFO    ] No camera update needed
[2026-06-13 10:17:13,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:17:13,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:13,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:13,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:15,259.259 INFO    ] ================================================
[2026-06-13 10:17:15,275.275 INFO    ] Launching Daemon at Sat Jun 13 10:17:15 IST 2026
[2026-06-13 10:17:15,286.286 INFO    ] ================================================
[2026-06-13 10:17:15,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:15
[2026-06-13 10:17:15,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:16,090.090 INFO    ] Initializing speech engine...
[2026-06-13 10:17:16,100.100 INFO    ] 2026-06-13 10:17:16
[2026-06-13 10:17:16,306.306 INFO    ] 2026-06-13 10:17:16
[2026-06-13 10:17:16,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:16,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:16,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:16,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:16,699.699 INFO    ] time= 13/06/2026 10:17:16
[2026-06-13 10:17:16,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:16,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:16,820.820 INFO    ] No existing commands found in stream
[2026-06-13 10:17:21,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:17:21,832.832 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 10:17:23,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:17:23,566.566 INFO    ] Checking for system updates...
[2026-06-13 10:17:23,586.586 INFO    ] 200
[2026-06-13 10:17:23,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:23,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:17:23,620.620 INFO    ] No update needed
[2026-06-13 10:17:23,621.621 INFO    ] Checking for camera pi updates...
[2026-06-13 10:17:23,641.641 INFO    ] 200
[2026-06-13 10:17:23,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:23,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:17:23,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:17:23,707.707 INFO    ] No camera update needed
[2026-06-13 10:17:23,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:17:23,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:23,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:23,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:25,756.756 INFO    ] ================================================
[2026-06-13 10:17:25,772.772 INFO    ] Launching Daemon at Sat Jun 13 10:17:25 IST 2026
[2026-06-13 10:17:25,783.783 INFO    ] ================================================
[2026-06-13 10:17:26,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:26
[2026-06-13 10:17:26,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:26,580.580 INFO    ] Initializing speech engine...
[2026-06-13 10:17:26,584.584 INFO    ] 2026-06-13 10:17:26
[2026-06-13 10:17:26,792.792 INFO    ] 2026-06-13 10:17:26
[2026-06-13 10:17:26,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:27,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:27,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:27,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:27,145.145 INFO    ] time= 13/06/2026 10:17:27
[2026-06-13 10:17:27,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:27,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:27,314.314 INFO    ] No existing commands found in stream
[2026-06-13 10:17:32,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:17:32,321.321 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 10:17:33,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:17:33,098.098 INFO    ] Checking for system updates...
[2026-06-13 10:17:33,118.118 INFO    ] 200
[2026-06-13 10:17:33,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:33,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:33,152.152 INFO    ] No update needed
[2026-06-13 10:17:33,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 10:17:33,174.174 INFO    ] 200
[2026-06-13 10:17:33,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:33,199.199 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:17:33,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:33,222.222 INFO    ] No camera update needed
[2026-06-13 10:17:33,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:17:33,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:33,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:33,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:35,270.270 INFO    ] ================================================
[2026-06-13 10:17:35,286.286 INFO    ] Launching Daemon at Sat Jun 13 10:17:35 IST 2026
[2026-06-13 10:17:35,297.297 INFO    ] ================================================
[2026-06-13 10:17:35,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:35
[2026-06-13 10:17:35,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:36,137.137 INFO    ] Initializing speech engine...
[2026-06-13 10:17:36,141.141 INFO    ] 2026-06-13 10:17:36
[2026-06-13 10:17:36,347.347 INFO    ] 2026-06-13 10:17:36
[2026-06-13 10:17:36,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:36,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:36,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:36,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:36,736.736 INFO    ] time= 13/06/2026 10:17:36
[2026-06-13 10:17:36,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:36,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:36,868.868 INFO    ] No existing commands found in stream
[2026-06-13 10:17:41,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:17:41,900.900 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 10:17:42,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:17:42,752.752 INFO    ] Checking for system updates...
[2026-06-13 10:17:42,773.773 INFO    ] 200
[2026-06-13 10:17:42,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:42,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:42,806.806 INFO    ] No update needed
[2026-06-13 10:17:42,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 10:17:42,830.830 INFO    ] 200
[2026-06-13 10:17:42,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:42,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:17:42,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:42,900.900 INFO    ] No camera update needed
[2026-06-13 10:17:42,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:17:42,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:42,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:42,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:44,951.951 INFO    ] ================================================
[2026-06-13 10:17:44,967.967 INFO    ] Launching Daemon at Sat Jun 13 10:17:44 IST 2026
[2026-06-13 10:17:44,978.978 INFO    ] ================================================
[2026-06-13 10:17:45,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:45
[2026-06-13 10:17:45,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:45,866.866 INFO    ] Initializing speech engine...
[2026-06-13 10:17:45,877.877 INFO    ] 2026-06-13 10:17:45
[2026-06-13 10:17:46,086.086 INFO    ] 2026-06-13 10:17:46
[2026-06-13 10:17:46,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:46,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:46,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:46,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:46,529.529 INFO    ] time= 13/06/2026 10:17:46
[2026-06-13 10:17:46,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:46,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:46,629.629 INFO    ] No existing commands found in stream
[2026-06-13 10:17:51,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:17:51,643.643 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 10:17:55,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:17:55,074.074 INFO    ] Checking for system updates...
[2026-06-13 10:17:55,095.095 INFO    ] 200
[2026-06-13 10:17:55,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:55,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:55,129.129 INFO    ] No update needed
[2026-06-13 10:17:55,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 10:17:55,150.150 INFO    ] 200
[2026-06-13 10:17:55,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:17:55,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:17:55,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:17:55,215.215 INFO    ] No camera update needed
[2026-06-13 10:17:55,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:17:55,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:17:55,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:17:55,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:17:57,264.264 INFO    ] ================================================
[2026-06-13 10:17:57,280.280 INFO    ] Launching Daemon at Sat Jun 13 10:17:57 IST 2026
[2026-06-13 10:17:57,292.292 INFO    ] ================================================
[2026-06-13 10:17:57,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:17:57
[2026-06-13 10:17:57,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:17:58,141.141 INFO    ] Initializing speech engine...
[2026-06-13 10:17:58,147.147 INFO    ] 2026-06-13 10:17:58
[2026-06-13 10:17:58,356.356 INFO    ] 2026-06-13 10:17:58
[2026-06-13 10:17:58,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:17:58,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:17:58,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:17:58,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:17:58,779.779 INFO    ] time= 13/06/2026 10:17:58
[2026-06-13 10:17:58,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:17:58,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:17:58,953.953 INFO    ] No existing commands found in stream
[2026-06-13 10:18:03,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:03,974.974 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 10:18:06,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:18:06,491.491 INFO    ] Checking for system updates...
[2026-06-13 10:18:06,512.512 INFO    ] 200
[2026-06-13 10:18:06,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:06,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:06,545.545 INFO    ] No update needed
[2026-06-13 10:18:06,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 10:18:06,566.566 INFO    ] 200
[2026-06-13 10:18:06,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:06,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:18:06,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:06,634.634 INFO    ] No camera update needed
[2026-06-13 10:18:06,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:18:06,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:18:06,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:18:06,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:18:08,683.683 INFO    ] ================================================
[2026-06-13 10:18:08,700.700 INFO    ] Launching Daemon at Sat Jun 13 10:18:08 IST 2026
[2026-06-13 10:18:08,712.712 INFO    ] ================================================
[2026-06-13 10:18:09,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:18:09
[2026-06-13 10:18:09,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:18:09,534.534 INFO    ] Initializing speech engine...
[2026-06-13 10:18:09,537.537 INFO    ] 2026-06-13 10:18:09
[2026-06-13 10:18:09,737.737 INFO    ] 2026-06-13 10:18:09
[2026-06-13 10:18:09,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:18:09,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:18:09,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:18:10,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:18:10,176.176 INFO    ] time= 13/06/2026 10:18:10
[2026-06-13 10:18:10,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:18:10,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:18:10,371.371 INFO    ] No existing commands found in stream
[2026-06-13 10:18:15,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:15,394.394 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 10:18:16,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:18:16,685.685 INFO    ] Checking for system updates...
[2026-06-13 10:18:16,721.721 INFO    ] 200
[2026-06-13 10:18:16,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:16,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:16,779.779 INFO    ] No update needed
[2026-06-13 10:18:16,782.782 INFO    ] Checking for camera pi updates...
[2026-06-13 10:18:16,813.813 INFO    ] 200
[2026-06-13 10:18:16,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:16,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:18:16,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:16,876.876 INFO    ] No camera update needed
[2026-06-13 10:18:16,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:18:16,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:18:16,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:18:16,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:18:18,924.924 INFO    ] ================================================
[2026-06-13 10:18:18,940.940 INFO    ] Launching Daemon at Sat Jun 13 10:18:18 IST 2026
[2026-06-13 10:18:18,951.951 INFO    ] ================================================
[2026-06-13 10:18:19,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:18:19
[2026-06-13 10:18:19,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:18:19,736.736 INFO    ] Initializing speech engine...
[2026-06-13 10:18:19,741.741 INFO    ] 2026-06-13 10:18:19
[2026-06-13 10:18:19,950.950 INFO    ] 2026-06-13 10:18:19
[2026-06-13 10:18:19,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:18:20,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:18:20,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:18:20,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:18:20,355.355 INFO    ] time= 13/06/2026 10:18:20
[2026-06-13 10:18:20,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:18:20,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:18:20,540.540 INFO    ] No existing commands found in stream
[2026-06-13 10:18:25,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:25,553.553 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 10:18:28,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:18:28,741.741 INFO    ] Checking for system updates...
[2026-06-13 10:18:28,761.761 INFO    ] 200
[2026-06-13 10:18:28,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:28,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:18:28,796.796 INFO    ] No update needed
[2026-06-13 10:18:28,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 10:18:28,817.817 INFO    ] 200
[2026-06-13 10:18:28,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:28,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:18:28,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:18:28,868.868 INFO    ] No camera update needed
[2026-06-13 10:18:28,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:18:28,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:18:28,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:18:28,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:18:30,918.918 INFO    ] ================================================
[2026-06-13 10:18:30,934.934 INFO    ] Launching Daemon at Sat Jun 13 10:18:30 IST 2026
[2026-06-13 10:18:30,946.946 INFO    ] ================================================
[2026-06-13 10:18:31,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:18:31
[2026-06-13 10:18:31,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:18:31,750.750 INFO    ] Initializing speech engine...
[2026-06-13 10:18:31,755.755 INFO    ] 2026-06-13 10:18:31
[2026-06-13 10:18:31,972.972 INFO    ] 2026-06-13 10:18:31
[2026-06-13 10:18:32,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:18:32,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:18:32,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:18:32,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:18:32,408.408 INFO    ] time= 13/06/2026 10:18:32
[2026-06-13 10:18:32,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:18:32,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:18:32,559.559 INFO    ] No existing commands found in stream
[2026-06-13 10:18:37,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:37,580.580 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 10:18:38,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:18:38,920.920 INFO    ] Checking for system updates...
[2026-06-13 10:18:38,941.941 INFO    ] 200
[2026-06-13 10:18:38,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:38,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:38,974.974 INFO    ] No update needed
[2026-06-13 10:18:38,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 10:18:38,997.997 INFO    ] 200
[2026-06-13 10:18:38,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:39,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:18:39,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:39,059.059 INFO    ] No camera update needed
[2026-06-13 10:18:39,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:18:39,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:18:39,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:18:39,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:18:41,109.109 INFO    ] ================================================
[2026-06-13 10:18:41,124.124 INFO    ] Launching Daemon at Sat Jun 13 10:18:41 IST 2026
[2026-06-13 10:18:41,135.135 INFO    ] ================================================
[2026-06-13 10:18:41,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:18:41
[2026-06-13 10:18:41,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:18:41,918.918 INFO    ] Initializing speech engine...
[2026-06-13 10:18:41,922.922 INFO    ] 2026-06-13 10:18:41
[2026-06-13 10:18:42,113.113 INFO    ] 2026-06-13 10:18:42
[2026-06-13 10:18:42,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:18:42,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:18:42,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:18:42,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:18:42,529.529 INFO    ] time= 13/06/2026 10:18:42
[2026-06-13 10:18:42,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:18:42,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:18:42,728.728 INFO    ] No existing commands found in stream
[2026-06-13 10:18:47,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:47,743.743 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 10:18:49,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:18:49,635.635 INFO    ] Checking for system updates...
[2026-06-13 10:18:49,657.657 INFO    ] 200
[2026-06-13 10:18:49,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:49,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:18:49,691.691 INFO    ] No update needed
[2026-06-13 10:18:49,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 10:18:49,712.712 INFO    ] 200
[2026-06-13 10:18:49,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:18:49,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:18:49,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:18:49,880.880 INFO    ] No camera update needed
[2026-06-13 10:18:49,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:18:49,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:18:49,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:18:49,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:18:51,927.927 INFO    ] ================================================
[2026-06-13 10:18:51,942.942 INFO    ] Launching Daemon at Sat Jun 13 10:18:51 IST 2026
[2026-06-13 10:18:51,954.954 INFO    ] ================================================
[2026-06-13 10:18:52,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:18:52
[2026-06-13 10:18:52,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:18:52,757.757 INFO    ] Initializing speech engine...
[2026-06-13 10:18:52,762.762 INFO    ] 2026-06-13 10:18:52
[2026-06-13 10:18:52,966.966 INFO    ] 2026-06-13 10:18:52
[2026-06-13 10:18:52,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:18:53,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:18:53,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:18:53,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:18:53,365.365 INFO    ] time= 13/06/2026 10:18:53
[2026-06-13 10:18:53,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:18:53,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:18:53,482.482 INFO    ] No existing commands found in stream
[2026-06-13 10:18:58,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:18:58,509.509 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 10:19:00,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:19:00,890.890 INFO    ] Checking for system updates...
[2026-06-13 10:19:00,911.911 INFO    ] 200
[2026-06-13 10:19:00,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:00,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:19:00,946.946 INFO    ] No update needed
[2026-06-13 10:19:00,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:00,967.967 INFO    ] 200
[2026-06-13 10:19:00,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:00,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:01,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:19:01,042.042 INFO    ] No camera update needed
[2026-06-13 10:19:01,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:01,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:01,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:01,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:19:03,084.084 INFO    ] ================================================
[2026-06-13 10:19:03,100.100 INFO    ] Launching Daemon at Sat Jun 13 10:19:03 IST 2026
[2026-06-13 10:19:03,111.111 INFO    ] ================================================
[2026-06-13 10:19:03,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:19:03
[2026-06-13 10:19:03,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:19:03,899.899 INFO    ] Initializing speech engine...
[2026-06-13 10:19:03,904.904 INFO    ] 2026-06-13 10:19:03
[2026-06-13 10:19:04,106.106 INFO    ] 2026-06-13 10:19:04
[2026-06-13 10:19:04,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:19:04,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:19:04,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:19:04,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:19:04,461.461 INFO    ] time= 13/06/2026 10:19:04
[2026-06-13 10:19:04,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:19:04,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:19:04,635.635 INFO    ] No existing commands found in stream
[2026-06-13 10:19:09,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:19:09,653.653 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 10:19:10,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:19:10,373.373 INFO    ] Checking for system updates...
[2026-06-13 10:19:10,395.395 INFO    ] 200
[2026-06-13 10:19:10,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:10,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:10,428.428 INFO    ] No update needed
[2026-06-13 10:19:10,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:10,450.450 INFO    ] 200
[2026-06-13 10:19:10,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:10,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:10,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:10,522.522 INFO    ] No camera update needed
[2026-06-13 10:19:10,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:10,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:10,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:10,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:19:12,564.564 INFO    ] ================================================
[2026-06-13 10:19:12,574.574 INFO    ] Launching Daemon at Sat Jun 13 10:19:12 IST 2026
[2026-06-13 10:19:12,582.582 INFO    ] ================================================
[2026-06-13 10:19:12,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:19:12
[2026-06-13 10:19:13,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:19:13,434.434 INFO    ] Initializing speech engine...
[2026-06-13 10:19:13,441.441 INFO    ] 2026-06-13 10:19:13
[2026-06-13 10:19:13,648.648 INFO    ] 2026-06-13 10:19:13
[2026-06-13 10:19:13,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:19:13,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:19:13,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:19:14,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:19:14,067.067 INFO    ] time= 13/06/2026 10:19:14
[2026-06-13 10:19:14,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:19:14,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:19:14,167.167 INFO    ] No existing commands found in stream
[2026-06-13 10:19:19,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:19:19,182.182 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 10:19:22,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:19:22,916.916 INFO    ] Checking for system updates...
[2026-06-13 10:19:22,944.944 INFO    ] 200
[2026-06-13 10:19:22,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:22,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:19:22,981.981 INFO    ] No update needed
[2026-06-13 10:19:22,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:23,003.003 INFO    ] 200
[2026-06-13 10:19:23,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:23,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:23,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:23,066.066 INFO    ] No camera update needed
[2026-06-13 10:19:23,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:23,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:23,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:23,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:19:25,115.115 INFO    ] ================================================
[2026-06-13 10:19:25,130.130 INFO    ] Launching Daemon at Sat Jun 13 10:19:25 IST 2026
[2026-06-13 10:19:25,141.141 INFO    ] ================================================
[2026-06-13 10:19:25,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:19:25
[2026-06-13 10:19:25,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:19:25,990.990 INFO    ] Initializing speech engine...
[2026-06-13 10:19:25,995.995 INFO    ] 2026-06-13 10:19:25
[2026-06-13 10:19:26,193.193 INFO    ] 2026-06-13 10:19:26
[2026-06-13 10:19:26,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:19:26,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:19:26,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:19:26,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:19:26,610.610 INFO    ] time= 13/06/2026 10:19:26
[2026-06-13 10:19:26,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:19:26,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:19:26,793.793 INFO    ] No existing commands found in stream
[2026-06-13 10:19:31,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:19:31,801.801 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 10:19:33,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:19:33,012.012 INFO    ] Checking for system updates...
[2026-06-13 10:19:33,035.035 INFO    ] 200
[2026-06-13 10:19:33,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:33,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:33,071.071 INFO    ] No update needed
[2026-06-13 10:19:33,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:33,091.091 INFO    ] 200
[2026-06-13 10:19:33,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:33,118.118 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:33,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:33,158.158 INFO    ] No camera update needed
[2026-06-13 10:19:33,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:33,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:33,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:33,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:19:35,205.205 INFO    ] ================================================
[2026-06-13 10:19:35,221.221 INFO    ] Launching Daemon at Sat Jun 13 10:19:35 IST 2026
[2026-06-13 10:19:35,231.231 INFO    ] ================================================
[2026-06-13 10:19:35,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:19:35
[2026-06-13 10:19:35,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:19:36,081.081 INFO    ] Initializing speech engine...
[2026-06-13 10:19:36,085.085 INFO    ] 2026-06-13 10:19:36
[2026-06-13 10:19:36,292.292 INFO    ] 2026-06-13 10:19:36
[2026-06-13 10:19:36,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:19:36,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:19:36,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:19:36,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:19:36,711.711 INFO    ] time= 13/06/2026 10:19:36
[2026-06-13 10:19:36,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:19:36,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:19:36,810.810 INFO    ] No existing commands found in stream
[2026-06-13 10:19:41,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:19:41,828.828 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 10:19:46,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:19:46,026.026 INFO    ] Checking for system updates...
[2026-06-13 10:19:46,046.046 INFO    ] 200
[2026-06-13 10:19:46,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:46,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:46,080.080 INFO    ] No update needed
[2026-06-13 10:19:46,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:46,100.100 INFO    ] 200
[2026-06-13 10:19:46,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:46,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:46,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:46,174.174 INFO    ] No camera update needed
[2026-06-13 10:19:46,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:46,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:46,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:46,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:19:48,221.221 INFO    ] ================================================
[2026-06-13 10:19:48,238.238 INFO    ] Launching Daemon at Sat Jun 13 10:19:48 IST 2026
[2026-06-13 10:19:48,249.249 INFO    ] ================================================
[2026-06-13 10:19:48,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:19:48
[2026-06-13 10:19:48,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:19:49,040.040 INFO    ] Initializing speech engine...
[2026-06-13 10:19:49,043.043 INFO    ] 2026-06-13 10:19:49
[2026-06-13 10:19:49,260.260 INFO    ] 2026-06-13 10:19:49
[2026-06-13 10:19:49,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:19:49,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:19:49,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:19:49,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:19:49,679.679 INFO    ] time= 13/06/2026 10:19:49
[2026-06-13 10:19:49,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:19:49,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:19:49,775.775 INFO    ] No existing commands found in stream
[2026-06-13 10:19:54,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:19:54,787.787 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 10:19:58,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:19:58,562.562 INFO    ] Checking for system updates...
[2026-06-13 10:19:58,585.585 INFO    ] 200
[2026-06-13 10:19:58,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:58,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:19:58,621.621 INFO    ] No update needed
[2026-06-13 10:19:58,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 10:19:58,641.641 INFO    ] 200
[2026-06-13 10:19:58,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:19:58,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:19:58,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:19:58,702.702 INFO    ] No camera update needed
[2026-06-13 10:19:58,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:19:58,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:19:58,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:19:58,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:00,752.752 INFO    ] ================================================
[2026-06-13 10:20:00,768.768 INFO    ] Launching Daemon at Sat Jun 13 10:20:00 IST 2026
[2026-06-13 10:20:00,779.779 INFO    ] ================================================
[2026-06-13 10:20:01,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:01
[2026-06-13 10:20:01,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:02,091.091 INFO    ] Initializing speech engine...
[2026-06-13 10:20:02,095.095 INFO    ] 2026-06-13 10:20:02
[2026-06-13 10:20:02,373.373 INFO    ] 2026-06-13 10:20:02
[2026-06-13 10:20:02,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:02,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:02,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:02,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:02,795.795 INFO    ] time= 13/06/2026 10:20:02
[2026-06-13 10:20:02,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:02,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:02,940.940 INFO    ] No existing commands found in stream
[2026-06-13 10:20:07,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:07,980.980 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 10:20:09,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:20:09,419.419 INFO    ] Checking for system updates...
[2026-06-13 10:20:09,440.440 INFO    ] 200
[2026-06-13 10:20:09,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:09,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:09,476.476 INFO    ] No update needed
[2026-06-13 10:20:09,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 10:20:09,498.498 INFO    ] 200
[2026-06-13 10:20:09,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:09,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:20:09,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:09,572.572 INFO    ] No camera update needed
[2026-06-13 10:20:09,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:20:09,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:20:09,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:20:09,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:11,622.622 INFO    ] ================================================
[2026-06-13 10:20:11,638.638 INFO    ] Launching Daemon at Sat Jun 13 10:20:11 IST 2026
[2026-06-13 10:20:11,650.650 INFO    ] ================================================
[2026-06-13 10:20:12,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:11
[2026-06-13 10:20:12,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:12,494.494 INFO    ] Initializing speech engine...
[2026-06-13 10:20:12,500.500 INFO    ] 2026-06-13 10:20:12
[2026-06-13 10:20:12,709.709 INFO    ] 2026-06-13 10:20:12
[2026-06-13 10:20:12,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:12,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:12,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:13,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:13,113.113 INFO    ] time= 13/06/2026 10:20:13
[2026-06-13 10:20:13,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:13,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:13,237.237 INFO    ] No existing commands found in stream
[2026-06-13 10:20:18,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:18,255.255 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 10:20:20,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:20:20,067.067 INFO    ] Checking for system updates...
[2026-06-13 10:20:20,109.109 INFO    ] 200
[2026-06-13 10:20:20,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:20,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:20,145.145 INFO    ] No update needed
[2026-06-13 10:20:20,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 10:20:20,169.169 INFO    ] 200
[2026-06-13 10:20:20,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:20,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:20:20,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:20,236.236 INFO    ] No camera update needed
[2026-06-13 10:20:20,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:20:20,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:20:20,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:20:20,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:22,284.284 INFO    ] ================================================
[2026-06-13 10:20:22,300.300 INFO    ] Launching Daemon at Sat Jun 13 10:20:22 IST 2026
[2026-06-13 10:20:22,310.310 INFO    ] ================================================
[2026-06-13 10:20:22,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:22
[2026-06-13 10:20:23,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:23,173.173 INFO    ] Initializing speech engine...
[2026-06-13 10:20:23,179.179 INFO    ] 2026-06-13 10:20:23
[2026-06-13 10:20:23,386.386 INFO    ] 2026-06-13 10:20:23
[2026-06-13 10:20:23,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:23,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:23,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:23,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:23,787.787 INFO    ] time= 13/06/2026 10:20:23
[2026-06-13 10:20:23,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:23,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:23,901.901 INFO    ] No existing commands found in stream
[2026-06-13 10:20:28,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:28,915.915 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 10:20:30,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:20:30,737.737 INFO    ] Checking for system updates...
[2026-06-13 10:20:30,760.760 INFO    ] 200
[2026-06-13 10:20:30,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:30,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:30,795.795 INFO    ] No update needed
[2026-06-13 10:20:30,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 10:20:30,817.817 INFO    ] 200
[2026-06-13 10:20:30,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:30,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:20:30,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:30,880.880 INFO    ] No camera update needed
[2026-06-13 10:20:30,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:20:30,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:20:30,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:20:30,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:32,913.913 INFO    ] ================================================
[2026-06-13 10:20:32,922.922 INFO    ] Launching Daemon at Sat Jun 13 10:20:32 IST 2026
[2026-06-13 10:20:32,928.928 INFO    ] ================================================
[2026-06-13 10:20:33,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:33
[2026-06-13 10:20:33,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:33,817.817 INFO    ] Initializing speech engine...
[2026-06-13 10:20:33,821.821 INFO    ] 2026-06-13 10:20:33
[2026-06-13 10:20:34,031.031 INFO    ] 2026-06-13 10:20:34
[2026-06-13 10:20:34,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:34,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:34,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:34,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:34,433.433 INFO    ] time= 13/06/2026 10:20:34
[2026-06-13 10:20:34,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:34,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:34,558.558 INFO    ] No existing commands found in stream
[2026-06-13 10:20:39,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:39,572.572 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 10:20:40,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:20:40,403.403 INFO    ] Checking for system updates...
[2026-06-13 10:20:40,423.423 INFO    ] 200
[2026-06-13 10:20:40,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:40,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:20:40,456.456 INFO    ] No update needed
[2026-06-13 10:20:40,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 10:20:40,477.477 INFO    ] 200
[2026-06-13 10:20:40,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:40,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:20:40,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:40,544.544 INFO    ] No camera update needed
[2026-06-13 10:20:40,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:20:40,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:20:40,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:20:40,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:42,593.593 INFO    ] ================================================
[2026-06-13 10:20:42,609.609 INFO    ] Launching Daemon at Sat Jun 13 10:20:42 IST 2026
[2026-06-13 10:20:42,620.620 INFO    ] ================================================
[2026-06-13 10:20:42,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:42
[2026-06-13 10:20:43,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:43,454.454 INFO    ] Initializing speech engine...
[2026-06-13 10:20:43,459.459 INFO    ] 2026-06-13 10:20:43
[2026-06-13 10:20:43,665.665 INFO    ] 2026-06-13 10:20:43
[2026-06-13 10:20:43,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:43,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:43,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:44,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:44,083.083 INFO    ] time= 13/06/2026 10:20:44
[2026-06-13 10:20:44,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:44,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:44,180.180 INFO    ] No existing commands found in stream
[2026-06-13 10:20:49,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:49,198.198 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 10:20:49,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:20:49,982.982 INFO    ] Checking for system updates...
[2026-06-13 10:20:50,004.004 INFO    ] 200
[2026-06-13 10:20:50,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:50,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:50,039.039 INFO    ] No update needed
[2026-06-13 10:20:50,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 10:20:50,060.060 INFO    ] 200
[2026-06-13 10:20:50,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:20:50,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:20:50,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:20:50,125.125 INFO    ] No camera update needed
[2026-06-13 10:20:50,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:20:50,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:20:50,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:20:50,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:20:52,172.172 INFO    ] ================================================
[2026-06-13 10:20:52,188.188 INFO    ] Launching Daemon at Sat Jun 13 10:20:52 IST 2026
[2026-06-13 10:20:52,198.198 INFO    ] ================================================
[2026-06-13 10:20:52,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:20:52
[2026-06-13 10:20:52,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:20:53,249.249 INFO    ] Initializing speech engine...
[2026-06-13 10:20:53,257.257 INFO    ] 2026-06-13 10:20:53
[2026-06-13 10:20:53,517.517 INFO    ] 2026-06-13 10:20:53
[2026-06-13 10:20:53,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:20:53,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:20:53,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:20:53,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:20:53,982.982 INFO    ] time= 13/06/2026 10:20:53
[2026-06-13 10:20:54,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:20:54,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:20:54,125.125 INFO    ] No existing commands found in stream
[2026-06-13 10:20:59,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:20:59,140.140 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 10:21:02,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:21:02,454.454 INFO    ] Checking for system updates...
[2026-06-13 10:21:02,474.474 INFO    ] 200
[2026-06-13 10:21:02,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:02,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:02,507.507 INFO    ] No update needed
[2026-06-13 10:21:02,509.509 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:02,528.528 INFO    ] 200
[2026-06-13 10:21:02,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:02,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:02,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:02,576.576 INFO    ] No camera update needed
[2026-06-13 10:21:02,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:02,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:02,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:02,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:04,624.624 INFO    ] ================================================
[2026-06-13 10:21:04,639.639 INFO    ] Launching Daemon at Sat Jun 13 10:21:04 IST 2026
[2026-06-13 10:21:04,650.650 INFO    ] ================================================
[2026-06-13 10:21:05,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:05
[2026-06-13 10:21:05,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:05,461.461 INFO    ] Initializing speech engine...
[2026-06-13 10:21:05,469.469 INFO    ] 2026-06-13 10:21:05
[2026-06-13 10:21:05,680.680 INFO    ] 2026-06-13 10:21:05
[2026-06-13 10:21:05,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:21:05,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:21:05,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:21:06,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:21:06,098.098 INFO    ] time= 13/06/2026 10:21:06
[2026-06-13 10:21:06,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:21:06,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:21:06,195.195 INFO    ] No existing commands found in stream
[2026-06-13 10:21:11,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:21:11,207.207 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 10:21:14,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:21:14,737.737 INFO    ] Checking for system updates...
[2026-06-13 10:21:14,758.758 INFO    ] 200
[2026-06-13 10:21:14,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:14,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:21:14,791.791 INFO    ] No update needed
[2026-06-13 10:21:14,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:14,814.814 INFO    ] 200
[2026-06-13 10:21:14,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:14,841.841 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:14,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:21:14,893.893 INFO    ] No camera update needed
[2026-06-13 10:21:14,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:14,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:14,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:14,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:16,942.942 INFO    ] ================================================
[2026-06-13 10:21:16,957.957 INFO    ] Launching Daemon at Sat Jun 13 10:21:16 IST 2026
[2026-06-13 10:21:16,968.968 INFO    ] ================================================
[2026-06-13 10:21:17,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:17
[2026-06-13 10:21:17,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:17,761.761 INFO    ] Initializing speech engine...
[2026-06-13 10:21:17,774.774 INFO    ] 2026-06-13 10:21:17
[2026-06-13 10:21:17,991.991 INFO    ] 2026-06-13 10:21:17
[2026-06-13 10:21:18,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:21:18,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:21:18,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:21:18,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:21:18,382.382 INFO    ] time= 13/06/2026 10:21:18
[2026-06-13 10:21:18,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:21:18,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:21:18,542.542 INFO    ] No existing commands found in stream
[2026-06-13 10:21:23,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:21:23,555.555 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 10:21:24,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:21:24,305.305 INFO    ] Checking for system updates...
[2026-06-13 10:21:24,341.341 INFO    ] 200
[2026-06-13 10:21:24,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:24,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:24,399.399 INFO    ] No update needed
[2026-06-13 10:21:24,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:24,436.436 INFO    ] 200
[2026-06-13 10:21:24,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:24,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:24,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:24,518.518 INFO    ] No camera update needed
[2026-06-13 10:21:24,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:24,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:24,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:24,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:26,567.567 INFO    ] ================================================
[2026-06-13 10:21:26,583.583 INFO    ] Launching Daemon at Sat Jun 13 10:21:26 IST 2026
[2026-06-13 10:21:26,594.594 INFO    ] ================================================
[2026-06-13 10:21:26,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:26
[2026-06-13 10:21:27,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:27,412.412 INFO    ] Initializing speech engine...
[2026-06-13 10:21:27,423.423 INFO    ] 2026-06-13 10:21:27
[2026-06-13 10:21:27,627.627 INFO    ] 2026-06-13 10:21:27
[2026-06-13 10:21:27,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:21:27,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:21:27,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:21:27,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:21:28,044.044 INFO    ] time= 13/06/2026 10:21:27
[2026-06-13 10:21:28,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:21:28,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:21:28,142.142 INFO    ] No existing commands found in stream
[2026-06-13 10:21:33,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:21:33,153.153 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 10:21:35,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:21:35,374.374 INFO    ] Checking for system updates...
[2026-06-13 10:21:35,394.394 INFO    ] 200
[2026-06-13 10:21:35,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:35,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:35,430.430 INFO    ] No update needed
[2026-06-13 10:21:35,431.431 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:35,451.451 INFO    ] 200
[2026-06-13 10:21:35,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:35,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:35,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:35,521.521 INFO    ] No camera update needed
[2026-06-13 10:21:35,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:35,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:35,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:35,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:37,569.569 INFO    ] ================================================
[2026-06-13 10:21:37,586.586 INFO    ] Launching Daemon at Sat Jun 13 10:21:37 IST 2026
[2026-06-13 10:21:37,596.596 INFO    ] ================================================
[2026-06-13 10:21:37,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:37
[2026-06-13 10:21:38,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:38,397.397 INFO    ] Initializing speech engine...
[2026-06-13 10:21:38,406.406 INFO    ] 2026-06-13 10:21:38
[2026-06-13 10:21:38,626.626 INFO    ] 2026-06-13 10:21:38
[2026-06-13 10:21:38,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:21:38,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:21:38,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:21:38,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:21:39,051.051 INFO    ] time= 13/06/2026 10:21:38
[2026-06-13 10:21:39,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:21:39,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:21:39,200.200 INFO    ] No existing commands found in stream
[2026-06-13 10:21:44,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:21:44,213.213 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 10:21:45,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:21:45,618.618 INFO    ] Checking for system updates...
[2026-06-13 10:21:45,640.640 INFO    ] 200
[2026-06-13 10:21:45,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:45,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:45,673.673 INFO    ] No update needed
[2026-06-13 10:21:45,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:45,697.697 INFO    ] 200
[2026-06-13 10:21:45,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:45,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:45,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:45,767.767 INFO    ] No camera update needed
[2026-06-13 10:21:45,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:45,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:45,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:45,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:47,813.813 INFO    ] ================================================
[2026-06-13 10:21:47,829.829 INFO    ] Launching Daemon at Sat Jun 13 10:21:47 IST 2026
[2026-06-13 10:21:47,839.839 INFO    ] ================================================
[2026-06-13 10:21:48,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:48
[2026-06-13 10:21:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:48,635.635 INFO    ] Initializing speech engine...
[2026-06-13 10:21:48,645.645 INFO    ] 2026-06-13 10:21:48
[2026-06-13 10:21:48,872.872 INFO    ] 2026-06-13 10:21:48
[2026-06-13 10:21:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:21:49,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:21:49,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:21:49,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:21:49,313.313 INFO    ] time= 13/06/2026 10:21:49
[2026-06-13 10:21:49,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:21:49,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:21:49,453.453 INFO    ] No existing commands found in stream
[2026-06-13 10:21:54,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:21:54,481.481 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 10:21:56,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:21:56,618.618 INFO    ] Checking for system updates...
[2026-06-13 10:21:56,638.638 INFO    ] 200
[2026-06-13 10:21:56,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:56,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:56,672.672 INFO    ] No update needed
[2026-06-13 10:21:56,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 10:21:56,692.692 INFO    ] 200
[2026-06-13 10:21:56,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:21:56,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:21:56,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:21:56,760.760 INFO    ] No camera update needed
[2026-06-13 10:21:56,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:21:56,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:21:56,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:21:56,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:21:58,810.810 INFO    ] ================================================
[2026-06-13 10:21:58,825.825 INFO    ] Launching Daemon at Sat Jun 13 10:21:58 IST 2026
[2026-06-13 10:21:58,836.836 INFO    ] ================================================
[2026-06-13 10:21:59,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:21:59
[2026-06-13 10:21:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:21:59,657.657 INFO    ] Initializing speech engine...
[2026-06-13 10:21:59,662.662 INFO    ] 2026-06-13 10:21:59
[2026-06-13 10:21:59,865.865 INFO    ] 2026-06-13 10:21:59
[2026-06-13 10:21:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:00,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:00,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:00,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:00,263.263 INFO    ] time= 13/06/2026 10:22:00
[2026-06-13 10:22:00,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:00,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:00,384.384 INFO    ] No existing commands found in stream
[2026-06-13 10:22:05,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:22:05,397.397 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 10:22:09,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:22:09,076.076 INFO    ] Checking for system updates...
[2026-06-13 10:22:09,097.097 INFO    ] 200
[2026-06-13 10:22:09,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:09,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:22:09,130.130 INFO    ] No update needed
[2026-06-13 10:22:09,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 10:22:09,152.152 INFO    ] 200
[2026-06-13 10:22:09,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:09,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:22:09,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:22:09,213.213 INFO    ] No camera update needed
[2026-06-13 10:22:09,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:22:09,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:22:09,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:22:09,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:22:11,261.261 INFO    ] ================================================
[2026-06-13 10:22:11,276.276 INFO    ] Launching Daemon at Sat Jun 13 10:22:11 IST 2026
[2026-06-13 10:22:11,287.287 INFO    ] ================================================
[2026-06-13 10:22:11,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:22:11
[2026-06-13 10:22:11,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:22:12,097.097 INFO    ] Initializing speech engine...
[2026-06-13 10:22:12,101.101 INFO    ] 2026-06-13 10:22:12
[2026-06-13 10:22:12,317.317 INFO    ] 2026-06-13 10:22:12
[2026-06-13 10:22:12,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:12,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:12,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:12,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:12,753.753 INFO    ] time= 13/06/2026 10:22:12
[2026-06-13 10:22:12,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:12,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:12,890.890 INFO    ] No existing commands found in stream
[2026-06-13 10:22:17,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:22:17,904.904 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 10:22:18,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:22:18,627.627 INFO    ] Checking for system updates...
[2026-06-13 10:22:18,648.648 INFO    ] 200
[2026-06-13 10:22:18,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:18,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:18,684.684 INFO    ] No update needed
[2026-06-13 10:22:18,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 10:22:18,706.706 INFO    ] 200
[2026-06-13 10:22:18,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:18,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:22:18,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:18,776.776 INFO    ] No camera update needed
[2026-06-13 10:22:18,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:22:18,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:22:18,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:22:18,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:22:20,825.825 INFO    ] ================================================
[2026-06-13 10:22:20,840.840 INFO    ] Launching Daemon at Sat Jun 13 10:22:20 IST 2026
[2026-06-13 10:22:20,852.852 INFO    ] ================================================
[2026-06-13 10:22:21,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:22:21
[2026-06-13 10:22:21,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:22:21,714.714 INFO    ] Initializing speech engine...
[2026-06-13 10:22:21,721.721 INFO    ] 2026-06-13 10:22:21
[2026-06-13 10:22:21,929.929 INFO    ] 2026-06-13 10:22:21
[2026-06-13 10:22:21,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:22,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:22,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:22,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:22,353.353 INFO    ] time= 13/06/2026 10:22:22
[2026-06-13 10:22:22,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:22,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:22,449.449 INFO    ] No existing commands found in stream
[2026-06-13 10:22:27,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:22:27,462.462 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 10:22:29,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:22:29,567.567 INFO    ] Checking for system updates...
[2026-06-13 10:22:29,589.589 INFO    ] 200
[2026-06-13 10:22:29,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:29,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:22:29,623.623 INFO    ] No update needed
[2026-06-13 10:22:29,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 10:22:29,646.646 INFO    ] 200
[2026-06-13 10:22:29,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:29,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:22:29,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:22:29,716.716 INFO    ] No camera update needed
[2026-06-13 10:22:29,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:22:29,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:22:29,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:22:29,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:22:31,759.759 INFO    ] ================================================
[2026-06-13 10:22:31,769.769 INFO    ] Launching Daemon at Sat Jun 13 10:22:31 IST 2026
[2026-06-13 10:22:31,775.775 INFO    ] ================================================
[2026-06-13 10:22:32,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:22:32
[2026-06-13 10:22:32,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:22:32,564.564 INFO    ] Initializing speech engine...
[2026-06-13 10:22:32,574.574 INFO    ] 2026-06-13 10:22:32
[2026-06-13 10:22:32,790.790 INFO    ] 2026-06-13 10:22:32
[2026-06-13 10:22:32,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:32,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:33,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:33,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:33,226.226 INFO    ] time= 13/06/2026 10:22:33
[2026-06-13 10:22:33,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:33,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:33,348.348 INFO    ] No existing commands found in stream
[2026-06-13 10:22:38,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:22:38,362.362 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 10:22:42,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:22:42,539.539 INFO    ] Checking for system updates...
[2026-06-13 10:22:42,561.561 INFO    ] 200
[2026-06-13 10:22:42,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:42,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:42,597.597 INFO    ] No update needed
[2026-06-13 10:22:42,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 10:22:42,621.621 INFO    ] 200
[2026-06-13 10:22:42,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:42,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:22:42,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:42,688.688 INFO    ] No camera update needed
[2026-06-13 10:22:42,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:22:42,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:22:42,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:22:42,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:22:44,736.736 INFO    ] ================================================
[2026-06-13 10:22:44,751.751 INFO    ] Launching Daemon at Sat Jun 13 10:22:44 IST 2026
[2026-06-13 10:22:44,762.762 INFO    ] ================================================
[2026-06-13 10:22:45,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:22:45
[2026-06-13 10:22:45,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:22:46,124.124 INFO    ] Initializing speech engine...
[2026-06-13 10:22:46,131.131 INFO    ] 2026-06-13 10:22:46
[2026-06-13 10:22:46,432.432 INFO    ] 2026-06-13 10:22:46
[2026-06-13 10:22:46,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:46,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:46,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:46,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:46,810.810 INFO    ] time= 13/06/2026 10:22:46
[2026-06-13 10:22:46,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:46,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:46,937.937 INFO    ] No existing commands found in stream
[2026-06-13 10:22:51,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:22:51,951.951 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 10:22:54,725.725 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:22:54,726.726 INFO    ] Checking for system updates...
[2026-06-13 10:22:54,747.747 INFO    ] 200
[2026-06-13 10:22:54,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:54,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:54,780.780 INFO    ] No update needed
[2026-06-13 10:22:54,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 10:22:54,802.802 INFO    ] 200
[2026-06-13 10:22:54,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:22:54,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:22:54,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:22:54,863.863 INFO    ] No camera update needed
[2026-06-13 10:22:54,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:22:54,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:22:54,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:22:54,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:22:56,910.910 INFO    ] ================================================
[2026-06-13 10:22:56,927.927 INFO    ] Launching Daemon at Sat Jun 13 10:22:56 IST 2026
[2026-06-13 10:22:56,938.938 INFO    ] ================================================
[2026-06-13 10:22:57,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:22:57
[2026-06-13 10:22:57,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:22:57,801.801 INFO    ] Initializing speech engine...
[2026-06-13 10:22:57,805.805 INFO    ] 2026-06-13 10:22:57
[2026-06-13 10:22:58,013.013 INFO    ] 2026-06-13 10:22:57
[2026-06-13 10:22:58,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:22:58,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:22:58,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:22:58,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:22:58,434.434 INFO    ] time= 13/06/2026 10:22:58
[2026-06-13 10:22:58,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:22:58,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:22:58,531.531 INFO    ] No existing commands found in stream
[2026-06-13 10:23:03,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:23:03,544.544 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 10:23:04,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:23:04,715.715 INFO    ] Checking for system updates...
[2026-06-13 10:23:04,753.753 INFO    ] 200
[2026-06-13 10:23:04,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:04,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:04,819.819 INFO    ] No update needed
[2026-06-13 10:23:04,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 10:23:04,855.855 INFO    ] 200
[2026-06-13 10:23:04,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:04,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:23:05,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:05,053.053 INFO    ] No camera update needed
[2026-06-13 10:23:05,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:23:05,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:23:05,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:23:05,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:23:07,100.100 INFO    ] ================================================
[2026-06-13 10:23:07,116.116 INFO    ] Launching Daemon at Sat Jun 13 10:23:07 IST 2026
[2026-06-13 10:23:07,129.129 INFO    ] ================================================
[2026-06-13 10:23:07,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:23:07
[2026-06-13 10:23:08,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:23:08,442.442 INFO    ] Initializing speech engine...
[2026-06-13 10:23:08,450.450 INFO    ] 2026-06-13 10:23:08
[2026-06-13 10:23:08,723.723 INFO    ] 2026-06-13 10:23:08
[2026-06-13 10:23:08,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:23:08,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:23:08,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:23:09,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:23:09,105.105 INFO    ] time= 13/06/2026 10:23:09
[2026-06-13 10:23:09,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:23:09,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:23:09,289.289 INFO    ] No existing commands found in stream
[2026-06-13 10:23:14,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:23:14,316.316 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 10:23:17,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:23:17,220.220 INFO    ] Checking for system updates...
[2026-06-13 10:23:17,241.241 INFO    ] 200
[2026-06-13 10:23:17,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:17,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:17,274.274 INFO    ] No update needed
[2026-06-13 10:23:17,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 10:23:17,297.297 INFO    ] 200
[2026-06-13 10:23:17,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:17,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:23:17,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:17,362.362 INFO    ] No camera update needed
[2026-06-13 10:23:17,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:23:17,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:23:17,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:23:17,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:23:19,410.410 INFO    ] ================================================
[2026-06-13 10:23:19,426.426 INFO    ] Launching Daemon at Sat Jun 13 10:23:19 IST 2026
[2026-06-13 10:23:19,437.437 INFO    ] ================================================
[2026-06-13 10:23:19,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:23:19
[2026-06-13 10:23:20,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:23:20,226.226 INFO    ] Initializing speech engine...
[2026-06-13 10:23:20,230.230 INFO    ] 2026-06-13 10:23:20
[2026-06-13 10:23:20,416.416 INFO    ] 2026-06-13 10:23:20
[2026-06-13 10:23:20,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:23:20,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:23:20,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:23:20,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:23:20,861.861 INFO    ] time= 13/06/2026 10:23:20
[2026-06-13 10:23:20,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:23:20,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:23:20,991.991 INFO    ] No existing commands found in stream
[2026-06-13 10:23:26,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:23:26,003.003 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 10:23:29,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:23:29,147.147 INFO    ] Checking for system updates...
[2026-06-13 10:23:29,170.170 INFO    ] 200
[2026-06-13 10:23:29,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:29,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:23:29,203.203 INFO    ] No update needed
[2026-06-13 10:23:29,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 10:23:29,226.226 INFO    ] 200
[2026-06-13 10:23:29,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:29,251.251 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:23:29,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:23:29,291.291 INFO    ] No camera update needed
[2026-06-13 10:23:29,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:23:29,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:23:29,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:23:29,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:23:31,339.339 INFO    ] ================================================
[2026-06-13 10:23:31,355.355 INFO    ] Launching Daemon at Sat Jun 13 10:23:31 IST 2026
[2026-06-13 10:23:31,366.366 INFO    ] ================================================
[2026-06-13 10:23:31,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:23:31
[2026-06-13 10:23:32,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:23:32,190.190 INFO    ] Initializing speech engine...
[2026-06-13 10:23:32,194.194 INFO    ] 2026-06-13 10:23:32
[2026-06-13 10:23:32,394.394 INFO    ] 2026-06-13 10:23:32
[2026-06-13 10:23:32,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:23:32,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:23:32,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:23:32,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:23:32,784.784 INFO    ] time= 13/06/2026 10:23:32
[2026-06-13 10:23:32,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:23:32,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:23:32,888.888 INFO    ] No existing commands found in stream
[2026-06-13 10:23:37,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:23:37,903.903 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 10:23:41,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:23:41,055.055 INFO    ] Checking for system updates...
[2026-06-13 10:23:41,076.076 INFO    ] 200
[2026-06-13 10:23:41,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:41,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:23:41,110.110 INFO    ] No update needed
[2026-06-13 10:23:41,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 10:23:41,135.135 INFO    ] 200
[2026-06-13 10:23:41,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:41,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:23:41,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:23:41,209.209 INFO    ] No camera update needed
[2026-06-13 10:23:41,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:23:41,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:23:41,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:23:41,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:23:43,256.256 INFO    ] ================================================
[2026-06-13 10:23:43,272.272 INFO    ] Launching Daemon at Sat Jun 13 10:23:43 IST 2026
[2026-06-13 10:23:43,283.283 INFO    ] ================================================
[2026-06-13 10:23:43,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:23:43
[2026-06-13 10:23:43,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:23:44,091.091 INFO    ] Initializing speech engine...
[2026-06-13 10:23:44,103.103 INFO    ] 2026-06-13 10:23:44
[2026-06-13 10:23:44,311.311 INFO    ] 2026-06-13 10:23:44
[2026-06-13 10:23:44,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:23:44,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:23:44,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:23:44,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:23:44,714.714 INFO    ] time= 13/06/2026 10:23:44
[2026-06-13 10:23:44,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:23:44,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:23:44,841.841 INFO    ] No existing commands found in stream
[2026-06-13 10:23:49,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:23:49,853.853 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 10:23:54,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:23:54,094.094 INFO    ] Checking for system updates...
[2026-06-13 10:23:54,114.114 INFO    ] 200
[2026-06-13 10:23:54,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:54,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:54,150.150 INFO    ] No update needed
[2026-06-13 10:23:54,151.151 INFO    ] Checking for camera pi updates...
[2026-06-13 10:23:54,173.173 INFO    ] 200
[2026-06-13 10:23:54,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:23:54,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:23:54,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:23:54,240.240 INFO    ] No camera update needed
[2026-06-13 10:23:54,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:23:54,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:23:54,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:23:54,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:23:56,289.289 INFO    ] ================================================
[2026-06-13 10:23:56,305.305 INFO    ] Launching Daemon at Sat Jun 13 10:23:56 IST 2026
[2026-06-13 10:23:56,316.316 INFO    ] ================================================
[2026-06-13 10:23:56,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:23:56
[2026-06-13 10:23:57,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:23:57,146.146 INFO    ] Initializing speech engine...
[2026-06-13 10:23:57,151.151 INFO    ] 2026-06-13 10:23:57
[2026-06-13 10:23:57,353.353 INFO    ] 2026-06-13 10:23:57
[2026-06-13 10:23:57,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:23:58,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:23:58,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:23:58,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:23:58,706.706 INFO    ] time= 13/06/2026 10:23:58
[2026-06-13 10:23:58,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:23:58,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:23:58,784.784 INFO    ] No existing commands found in stream
[2026-06-13 10:24:03,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:03,797.797 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 10:24:05,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:24:05,506.506 INFO    ] Checking for system updates...
[2026-06-13 10:24:05,527.527 INFO    ] 200
[2026-06-13 10:24:05,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:05,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:24:05,561.561 INFO    ] No update needed
[2026-06-13 10:24:05,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 10:24:05,584.584 INFO    ] 200
[2026-06-13 10:24:05,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:05,608.608 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:24:05,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:24:05,650.650 INFO    ] No camera update needed
[2026-06-13 10:24:05,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:24:05,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:24:05,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:24:05,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:24:07,708.708 INFO    ] ================================================
[2026-06-13 10:24:07,724.724 INFO    ] Launching Daemon at Sat Jun 13 10:24:07 IST 2026
[2026-06-13 10:24:07,735.735 INFO    ] ================================================
[2026-06-13 10:24:08,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:24:08
[2026-06-13 10:24:08,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:24:08,516.516 INFO    ] Initializing speech engine...
[2026-06-13 10:24:08,529.529 INFO    ] 2026-06-13 10:24:08
[2026-06-13 10:24:08,734.734 INFO    ] 2026-06-13 10:24:08
[2026-06-13 10:24:08,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:24:08,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:24:08,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:24:09,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:24:09,133.133 INFO    ] time= 13/06/2026 10:24:09
[2026-06-13 10:24:09,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:24:09,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:24:09,287.287 INFO    ] No existing commands found in stream
[2026-06-13 10:24:14,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:14,300.300 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 10:24:16,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:24:16,271.271 INFO    ] Checking for system updates...
[2026-06-13 10:24:16,292.292 INFO    ] 200
[2026-06-13 10:24:16,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:16,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:24:16,327.327 INFO    ] No update needed
[2026-06-13 10:24:16,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 10:24:16,348.348 INFO    ] 200
[2026-06-13 10:24:16,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:16,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:24:16,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:24:16,410.410 INFO    ] No camera update needed
[2026-06-13 10:24:16,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:24:16,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:24:16,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:24:16,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:24:18,457.457 INFO    ] ================================================
[2026-06-13 10:24:18,473.473 INFO    ] Launching Daemon at Sat Jun 13 10:24:18 IST 2026
[2026-06-13 10:24:18,485.485 INFO    ] ================================================
[2026-06-13 10:24:18,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:24:18
[2026-06-13 10:24:19,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:24:19,320.320 INFO    ] Initializing speech engine...
[2026-06-13 10:24:19,325.325 INFO    ] 2026-06-13 10:24:19
[2026-06-13 10:24:19,529.529 INFO    ] 2026-06-13 10:24:19
[2026-06-13 10:24:19,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:24:19,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:24:19,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:24:19,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:24:19,932.932 INFO    ] time= 13/06/2026 10:24:19
[2026-06-13 10:24:19,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:24:19,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:24:20,042.042 INFO    ] No existing commands found in stream
[2026-06-13 10:24:25,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:25,060.060 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 10:24:26,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:24:26,467.467 INFO    ] Checking for system updates...
[2026-06-13 10:24:26,488.488 INFO    ] 200
[2026-06-13 10:24:26,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:26,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:24:26,524.524 INFO    ] No update needed
[2026-06-13 10:24:26,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 10:24:26,545.545 INFO    ] 200
[2026-06-13 10:24:26,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:26,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:24:26,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:24:26,617.617 INFO    ] No camera update needed
[2026-06-13 10:24:26,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:24:26,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:24:26,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:24:26,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:24:28,666.666 INFO    ] ================================================
[2026-06-13 10:24:28,682.682 INFO    ] Launching Daemon at Sat Jun 13 10:24:28 IST 2026
[2026-06-13 10:24:28,693.693 INFO    ] ================================================
[2026-06-13 10:24:29,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:24:29
[2026-06-13 10:24:29,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:24:29,575.575 INFO    ] Initializing speech engine...
[2026-06-13 10:24:29,581.581 INFO    ] 2026-06-13 10:24:29
[2026-06-13 10:24:29,789.789 INFO    ] 2026-06-13 10:24:29
[2026-06-13 10:24:29,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:24:30,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:24:30,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:24:30,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:24:30,205.205 INFO    ] time= 13/06/2026 10:24:30
[2026-06-13 10:24:30,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:24:30,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:24:30,306.306 INFO    ] No existing commands found in stream
[2026-06-13 10:24:35,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:35,319.319 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 10:24:37,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:24:37,796.796 INFO    ] Checking for system updates...
[2026-06-13 10:24:37,817.817 INFO    ] 200
[2026-06-13 10:24:37,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:37,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:24:37,851.851 INFO    ] No update needed
[2026-06-13 10:24:37,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 10:24:37,873.873 INFO    ] 200
[2026-06-13 10:24:37,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:37,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:24:37,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:24:37,942.942 INFO    ] No camera update needed
[2026-06-13 10:24:37,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:24:37,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:24:37,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:24:37,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:24:39,993.993 INFO    ] ================================================
[2026-06-13 10:24:40,008.008 INFO    ] Launching Daemon at Sat Jun 13 10:24:40 IST 2026
[2026-06-13 10:24:40,019.019 INFO    ] ================================================
[2026-06-13 10:24:40,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:24:40
[2026-06-13 10:24:40,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:24:40,838.838 INFO    ] Initializing speech engine...
[2026-06-13 10:24:40,850.850 INFO    ] 2026-06-13 10:24:40
[2026-06-13 10:24:41,057.057 INFO    ] 2026-06-13 10:24:41
[2026-06-13 10:24:41,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:24:41,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:24:41,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:24:41,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:24:41,471.471 INFO    ] time= 13/06/2026 10:24:41
[2026-06-13 10:24:41,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:24:41,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:24:41,569.569 INFO    ] No existing commands found in stream
[2026-06-13 10:24:46,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:46,582.582 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 10:24:49,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:24:49,590.590 INFO    ] Checking for system updates...
[2026-06-13 10:24:49,613.613 INFO    ] 200
[2026-06-13 10:24:49,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:49,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:24:49,647.647 INFO    ] No update needed
[2026-06-13 10:24:49,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 10:24:49,670.670 INFO    ] 200
[2026-06-13 10:24:49,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:24:49,695.695 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:24:49,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:24:49,740.740 INFO    ] No camera update needed
[2026-06-13 10:24:49,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:24:49,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:24:49,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:24:49,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:24:51,792.792 INFO    ] ================================================
[2026-06-13 10:24:51,808.808 INFO    ] Launching Daemon at Sat Jun 13 10:24:51 IST 2026
[2026-06-13 10:24:51,819.819 INFO    ] ================================================
[2026-06-13 10:24:52,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:24:52
[2026-06-13 10:24:52,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:24:52,683.683 INFO    ] Initializing speech engine...
[2026-06-13 10:24:52,688.688 INFO    ] 2026-06-13 10:24:52
[2026-06-13 10:24:52,895.895 INFO    ] 2026-06-13 10:24:52
[2026-06-13 10:24:52,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:24:53,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:24:53,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:24:53,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:24:53,313.313 INFO    ] time= 13/06/2026 10:24:53
[2026-06-13 10:24:53,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:24:53,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:24:53,411.411 INFO    ] No existing commands found in stream
[2026-06-13 10:24:58,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:24:58,429.429 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 10:25:03,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:25:03,553.553 INFO    ] Checking for system updates...
[2026-06-13 10:25:03,574.574 INFO    ] 200
[2026-06-13 10:25:03,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:03,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:25:03,611.611 INFO    ] No update needed
[2026-06-13 10:25:03,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 10:25:03,632.632 INFO    ] 200
[2026-06-13 10:25:03,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:03,658.658 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:25:03,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:25:03,698.698 INFO    ] No camera update needed
[2026-06-13 10:25:03,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:25:03,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:25:03,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:25:03,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:25:05,747.747 INFO    ] ================================================
[2026-06-13 10:25:05,762.762 INFO    ] Launching Daemon at Sat Jun 13 10:25:05 IST 2026
[2026-06-13 10:25:05,774.774 INFO    ] ================================================
[2026-06-13 10:25:06,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:25:06
[2026-06-13 10:25:06,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:25:06,562.562 INFO    ] Initializing speech engine...
[2026-06-13 10:25:06,571.571 INFO    ] 2026-06-13 10:25:06
[2026-06-13 10:25:06,782.782 INFO    ] 2026-06-13 10:25:06
[2026-06-13 10:25:06,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:25:06,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:25:07,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:25:07,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:25:07,209.209 INFO    ] time= 13/06/2026 10:25:07
[2026-06-13 10:25:07,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:25:07,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:25:07,364.364 INFO    ] No existing commands found in stream
[2026-06-13 10:25:12,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:25:12,377.377 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 10:25:16,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:25:16,061.061 INFO    ] Checking for system updates...
[2026-06-13 10:25:16,082.082 INFO    ] 200
[2026-06-13 10:25:16,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:16,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:16,118.118 INFO    ] No update needed
[2026-06-13 10:25:16,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 10:25:16,139.139 INFO    ] 200
[2026-06-13 10:25:16,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:16,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:25:16,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:16,301.301 INFO    ] No camera update needed
[2026-06-13 10:25:16,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:25:16,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:25:16,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:25:16,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:25:18,350.350 INFO    ] ================================================
[2026-06-13 10:25:18,365.365 INFO    ] Launching Daemon at Sat Jun 13 10:25:18 IST 2026
[2026-06-13 10:25:18,376.376 INFO    ] ================================================
[2026-06-13 10:25:18,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:25:18
[2026-06-13 10:25:19,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:25:19,180.180 INFO    ] Initializing speech engine...
[2026-06-13 10:25:19,184.184 INFO    ] 2026-06-13 10:25:19
[2026-06-13 10:25:19,394.394 INFO    ] 2026-06-13 10:25:19
[2026-06-13 10:25:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:25:19,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:25:19,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:25:19,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:25:19,849.849 INFO    ] time= 13/06/2026 10:25:19
[2026-06-13 10:25:19,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:25:19,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:25:19,978.978 INFO    ] No existing commands found in stream
[2026-06-13 10:25:24,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:25:24,991.991 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 10:25:26,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:25:26,925.925 INFO    ] Checking for system updates...
[2026-06-13 10:25:26,946.946 INFO    ] 200
[2026-06-13 10:25:26,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:26,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:26,979.979 INFO    ] No update needed
[2026-06-13 10:25:26,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 10:25:27,000.000 INFO    ] 200
[2026-06-13 10:25:27,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:27,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:25:27,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:27,067.067 INFO    ] No camera update needed
[2026-06-13 10:25:27,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:25:27,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:25:27,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:25:27,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:25:29,115.115 INFO    ] ================================================
[2026-06-13 10:25:29,131.131 INFO    ] Launching Daemon at Sat Jun 13 10:25:29 IST 2026
[2026-06-13 10:25:29,141.141 INFO    ] ================================================
[2026-06-13 10:25:29,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:25:29
[2026-06-13 10:25:29,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:25:29,946.946 INFO    ] Initializing speech engine...
[2026-06-13 10:25:29,956.956 INFO    ] 2026-06-13 10:25:29
[2026-06-13 10:25:30,175.175 INFO    ] 2026-06-13 10:25:30
[2026-06-13 10:25:30,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:25:30,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:25:30,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:25:30,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:25:30,556.556 INFO    ] time= 13/06/2026 10:25:30
[2026-06-13 10:25:30,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:25:30,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:25:30,741.741 INFO    ] No existing commands found in stream
[2026-06-13 10:25:35,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:25:35,754.754 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 10:25:38,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:25:38,941.941 INFO    ] Checking for system updates...
[2026-06-13 10:25:38,962.962 INFO    ] 200
[2026-06-13 10:25:38,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:38,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:38,995.995 INFO    ] No update needed
[2026-06-13 10:25:38,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 10:25:39,016.016 INFO    ] 200
[2026-06-13 10:25:39,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:39,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:25:39,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:25:39,081.081 INFO    ] No camera update needed
[2026-06-13 10:25:39,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:25:39,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:25:39,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:25:39,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:25:41,129.129 INFO    ] ================================================
[2026-06-13 10:25:41,145.145 INFO    ] Launching Daemon at Sat Jun 13 10:25:41 IST 2026
[2026-06-13 10:25:41,156.156 INFO    ] ================================================
[2026-06-13 10:25:41,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:25:41
[2026-06-13 10:25:41,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:25:41,946.946 INFO    ] Initializing speech engine...
[2026-06-13 10:25:41,951.951 INFO    ] 2026-06-13 10:25:41
[2026-06-13 10:25:42,166.166 INFO    ] 2026-06-13 10:25:42
[2026-06-13 10:25:42,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:25:42,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:25:42,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:25:42,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:25:42,575.575 INFO    ] time= 13/06/2026 10:25:42
[2026-06-13 10:25:42,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:25:42,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:25:42,683.683 INFO    ] No existing commands found in stream
[2026-06-13 10:25:47,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:25:47,694.694 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 10:25:51,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:25:51,049.049 INFO    ] Checking for system updates...
[2026-06-13 10:25:51,070.070 INFO    ] 200
[2026-06-13 10:25:51,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:51,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:25:51,117.117 INFO    ] No update needed
[2026-06-13 10:25:51,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 10:25:51,140.140 INFO    ] 200
[2026-06-13 10:25:51,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:25:51,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:25:51,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:25:51,208.208 INFO    ] No camera update needed
[2026-06-13 10:25:51,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:25:51,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:25:51,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:25:51,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:25:53,259.259 INFO    ] ================================================
[2026-06-13 10:25:53,274.274 INFO    ] Launching Daemon at Sat Jun 13 10:25:53 IST 2026
[2026-06-13 10:25:53,286.286 INFO    ] ================================================
[2026-06-13 10:25:53,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:25:53
[2026-06-13 10:25:53,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:25:54,107.107 INFO    ] Initializing speech engine...
[2026-06-13 10:25:54,112.112 INFO    ] 2026-06-13 10:25:54
[2026-06-13 10:25:54,316.316 INFO    ] 2026-06-13 10:25:54
[2026-06-13 10:25:54,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:25:54,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:25:54,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:25:54,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:25:54,705.705 INFO    ] time= 13/06/2026 10:25:54
[2026-06-13 10:25:54,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:25:54,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:25:54,828.828 INFO    ] No existing commands found in stream
[2026-06-13 10:25:59,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:25:59,841.841 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 10:26:03,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:26:03,628.628 INFO    ] Checking for system updates...
[2026-06-13 10:26:03,665.665 INFO    ] 200
[2026-06-13 10:26:03,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:03,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:03,723.723 INFO    ] No update needed
[2026-06-13 10:26:03,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 10:26:03,760.760 INFO    ] 200
[2026-06-13 10:26:03,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:03,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:26:03,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:03,859.859 INFO    ] No camera update needed
[2026-06-13 10:26:03,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:26:03,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:26:03,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:26:03,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:26:05,915.915 INFO    ] ================================================
[2026-06-13 10:26:05,931.931 INFO    ] Launching Daemon at Sat Jun 13 10:26:05 IST 2026
[2026-06-13 10:26:05,943.943 INFO    ] ================================================
[2026-06-13 10:26:06,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:26:06
[2026-06-13 10:26:06,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:26:06,734.734 INFO    ] Initializing speech engine...
[2026-06-13 10:26:06,738.738 INFO    ] 2026-06-13 10:26:06
[2026-06-13 10:26:06,950.950 INFO    ] 2026-06-13 10:26:06
[2026-06-13 10:26:06,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:26:07,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:26:07,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:26:07,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:26:07,309.309 INFO    ] time= 13/06/2026 10:26:07
[2026-06-13 10:26:07,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:26:07,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:26:07,471.471 INFO    ] No existing commands found in stream
[2026-06-13 10:26:12,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:26:12,486.486 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 10:26:15,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:26:15,639.639 INFO    ] Checking for system updates...
[2026-06-13 10:26:15,659.659 INFO    ] 200
[2026-06-13 10:26:15,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:15,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:15,693.693 INFO    ] No update needed
[2026-06-13 10:26:15,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 10:26:15,715.715 INFO    ] 200
[2026-06-13 10:26:15,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:15,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:26:15,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:15,791.791 INFO    ] No camera update needed
[2026-06-13 10:26:15,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:26:15,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:26:15,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:26:15,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:26:17,837.837 INFO    ] ================================================
[2026-06-13 10:26:17,853.853 INFO    ] Launching Daemon at Sat Jun 13 10:26:17 IST 2026
[2026-06-13 10:26:17,864.864 INFO    ] ================================================
[2026-06-13 10:26:18,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:26:18
[2026-06-13 10:26:18,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:26:19,092.092 INFO    ] Initializing speech engine...
[2026-06-13 10:26:19,098.098 INFO    ] 2026-06-13 10:26:19
[2026-06-13 10:26:19,343.343 INFO    ] 2026-06-13 10:26:19
[2026-06-13 10:26:19,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:26:19,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:26:19,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:26:19,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:26:19,822.822 INFO    ] time= 13/06/2026 10:26:19
[2026-06-13 10:26:19,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:26:19,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:26:20,043.043 INFO    ] No existing commands found in stream
[2026-06-13 10:26:25,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:26:25,076.076 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 10:26:26,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:26:26,749.749 INFO    ] Checking for system updates...
[2026-06-13 10:26:26,770.770 INFO    ] 200
[2026-06-13 10:26:26,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:26,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:26,804.804 INFO    ] No update needed
[2026-06-13 10:26:26,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 10:26:26,824.824 INFO    ] 200
[2026-06-13 10:26:26,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:26,849.849 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:26:26,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:26,874.874 INFO    ] No camera update needed
[2026-06-13 10:26:26,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:26:26,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:26:26,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:26:26,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:26:28,923.923 INFO    ] ================================================
[2026-06-13 10:26:28,939.939 INFO    ] Launching Daemon at Sat Jun 13 10:26:28 IST 2026
[2026-06-13 10:26:28,950.950 INFO    ] ================================================
[2026-06-13 10:26:29,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:26:29
[2026-06-13 10:26:29,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:26:29,829.829 INFO    ] Initializing speech engine...
[2026-06-13 10:26:29,834.834 INFO    ] 2026-06-13 10:26:29
[2026-06-13 10:26:30,048.048 INFO    ] 2026-06-13 10:26:30
[2026-06-13 10:26:30,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:26:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:26:30,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:26:30,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:26:30,447.447 INFO    ] time= 13/06/2026 10:26:30
[2026-06-13 10:26:30,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:26:30,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:26:30,576.576 INFO    ] No existing commands found in stream
[2026-06-13 10:26:35,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:26:35,586.586 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 10:26:38,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:26:38,850.850 INFO    ] Checking for system updates...
[2026-06-13 10:26:38,871.871 INFO    ] 200
[2026-06-13 10:26:38,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:38,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:26:38,905.905 INFO    ] No update needed
[2026-06-13 10:26:38,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 10:26:38,927.927 INFO    ] 200
[2026-06-13 10:26:38,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:38,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:26:38,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:26:38,976.976 INFO    ] No camera update needed
[2026-06-13 10:26:38,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:26:38,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:26:38,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:26:38,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:26:41,024.024 INFO    ] ================================================
[2026-06-13 10:26:41,039.039 INFO    ] Launching Daemon at Sat Jun 13 10:26:41 IST 2026
[2026-06-13 10:26:41,050.050 INFO    ] ================================================
[2026-06-13 10:26:41,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:26:41
[2026-06-13 10:26:41,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:26:41,926.926 INFO    ] Initializing speech engine...
[2026-06-13 10:26:41,932.932 INFO    ] 2026-06-13 10:26:41
[2026-06-13 10:26:42,142.142 INFO    ] 2026-06-13 10:26:42
[2026-06-13 10:26:42,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:26:42,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:26:42,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:26:42,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:26:42,540.540 INFO    ] time= 13/06/2026 10:26:42
[2026-06-13 10:26:42,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:26:42,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:26:42,662.662 INFO    ] No existing commands found in stream
[2026-06-13 10:26:47,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:26:47,680.680 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 10:26:50,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:26:50,813.813 INFO    ] Checking for system updates...
[2026-06-13 10:26:50,836.836 INFO    ] 200
[2026-06-13 10:26:50,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:50,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:50,869.869 INFO    ] No update needed
[2026-06-13 10:26:50,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 10:26:50,892.892 INFO    ] 200
[2026-06-13 10:26:50,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:26:50,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:26:50,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:26:50,962.962 INFO    ] No camera update needed
[2026-06-13 10:26:50,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:26:50,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:26:50,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:26:50,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:26:53,010.010 INFO    ] ================================================
[2026-06-13 10:26:53,025.025 INFO    ] Launching Daemon at Sat Jun 13 10:26:53 IST 2026
[2026-06-13 10:26:53,036.036 INFO    ] ================================================
[2026-06-13 10:26:53,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:26:53
[2026-06-13 10:26:53,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:26:53,830.830 INFO    ] Initializing speech engine...
[2026-06-13 10:26:53,834.834 INFO    ] 2026-06-13 10:26:53
[2026-06-13 10:26:54,028.028 INFO    ] 2026-06-13 10:26:54
[2026-06-13 10:26:54,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:26:54,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:26:54,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:26:54,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:26:54,456.456 INFO    ] time= 13/06/2026 10:26:54
[2026-06-13 10:26:54,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:26:54,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:26:54,642.642 INFO    ] No existing commands found in stream
[2026-06-13 10:26:59,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:26:59,656.656 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 10:27:01,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:27:01,985.985 INFO    ] Checking for system updates...
[2026-06-13 10:27:02,015.015 INFO    ] 200
[2026-06-13 10:27:02,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:02,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:02,074.074 INFO    ] No update needed
[2026-06-13 10:27:02,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:02,111.111 INFO    ] 200
[2026-06-13 10:27:02,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:02,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:02,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:02,188.188 INFO    ] No camera update needed
[2026-06-13 10:27:02,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:02,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:02,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:02,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:04,244.244 INFO    ] ================================================
[2026-06-13 10:27:04,259.259 INFO    ] Launching Daemon at Sat Jun 13 10:27:04 IST 2026
[2026-06-13 10:27:04,270.270 INFO    ] ================================================
[2026-06-13 10:27:04,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:04
[2026-06-13 10:27:04,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:27:05,058.058 INFO    ] Initializing speech engine...
[2026-06-13 10:27:05,062.062 INFO    ] 2026-06-13 10:27:05
[2026-06-13 10:27:05,269.269 INFO    ] 2026-06-13 10:27:05
[2026-06-13 10:27:05,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:27:05,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:27:05,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:27:05,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:27:05,684.684 INFO    ] time= 13/06/2026 10:27:05
[2026-06-13 10:27:05,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:27:05,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:27:05,797.797 INFO    ] No existing commands found in stream
[2026-06-13 10:27:10,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:27:10,810.810 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 10:27:13,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:27:13,151.151 INFO    ] Checking for system updates...
[2026-06-13 10:27:13,172.172 INFO    ] 200
[2026-06-13 10:27:13,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:13,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:13,206.206 INFO    ] No update needed
[2026-06-13 10:27:13,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:13,226.226 INFO    ] 200
[2026-06-13 10:27:13,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:13,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:13,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:13,295.295 INFO    ] No camera update needed
[2026-06-13 10:27:13,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:13,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:13,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:13,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:15,342.342 INFO    ] ================================================
[2026-06-13 10:27:15,357.357 INFO    ] Launching Daemon at Sat Jun 13 10:27:15 IST 2026
[2026-06-13 10:27:15,367.367 INFO    ] ================================================
[2026-06-13 10:27:15,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:15
[2026-06-13 10:27:16,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:27:16,161.161 INFO    ] Initializing speech engine...
[2026-06-13 10:27:16,169.169 INFO    ] 2026-06-13 10:27:16
[2026-06-13 10:27:16,396.396 INFO    ] 2026-06-13 10:27:16
[2026-06-13 10:27:16,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:27:16,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:27:16,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:27:16,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:27:16,822.822 INFO    ] time= 13/06/2026 10:27:16
[2026-06-13 10:27:16,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:27:16,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:27:16,961.961 INFO    ] No existing commands found in stream
[2026-06-13 10:27:21,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:27:21,974.974 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 10:27:24,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:27:24,460.460 INFO    ] Checking for system updates...
[2026-06-13 10:27:24,482.482 INFO    ] 200
[2026-06-13 10:27:24,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:24,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:24,519.519 INFO    ] No update needed
[2026-06-13 10:27:24,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:24,541.541 INFO    ] 200
[2026-06-13 10:27:24,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:24,566.566 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:24,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:24,713.713 INFO    ] No camera update needed
[2026-06-13 10:27:24,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:24,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:24,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:24,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:26,762.762 INFO    ] ================================================
[2026-06-13 10:27:26,777.777 INFO    ] Launching Daemon at Sat Jun 13 10:27:26 IST 2026
[2026-06-13 10:27:26,788.788 INFO    ] ================================================
[2026-06-13 10:27:27,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:27
[2026-06-13 10:27:27,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:27:27,579.579 INFO    ] Initializing speech engine...
[2026-06-13 10:27:27,592.592 INFO    ] 2026-06-13 10:27:27
[2026-06-13 10:27:27,812.812 INFO    ] 2026-06-13 10:27:27
[2026-06-13 10:27:27,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:27:27,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:27:27,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:27:28,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:27:28,190.190 INFO    ] time= 13/06/2026 10:27:28
[2026-06-13 10:27:28,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:27:28,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:27:28,373.373 INFO    ] No existing commands found in stream
[2026-06-13 10:27:33,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:27:33,384.384 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 10:27:34,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:27:34,881.881 INFO    ] Checking for system updates...
[2026-06-13 10:27:34,901.901 INFO    ] 200
[2026-06-13 10:27:34,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:34,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:34,935.935 INFO    ] No update needed
[2026-06-13 10:27:34,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:34,955.955 INFO    ] 200
[2026-06-13 10:27:34,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:34,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:35,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:35,026.026 INFO    ] No camera update needed
[2026-06-13 10:27:35,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:35,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:35,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:35,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:37,073.073 INFO    ] ================================================
[2026-06-13 10:27:37,089.089 INFO    ] Launching Daemon at Sat Jun 13 10:27:37 IST 2026
[2026-06-13 10:27:37,100.100 INFO    ] ================================================
[2026-06-13 10:27:37,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:37
[2026-06-13 10:27:37,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:27:37,963.963 INFO    ] Initializing speech engine...
[2026-06-13 10:27:37,969.969 INFO    ] 2026-06-13 10:27:37
[2026-06-13 10:27:38,178.178 INFO    ] 2026-06-13 10:27:38
[2026-06-13 10:27:38,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:27:38,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:27:38,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:27:38,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:27:38,599.599 INFO    ] time= 13/06/2026 10:27:38
[2026-06-13 10:27:38,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:27:38,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:27:38,695.695 INFO    ] No existing commands found in stream
[2026-06-13 10:27:43,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:27:43,713.713 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 10:27:45,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:27:45,998.998 INFO    ] Checking for system updates...
[2026-06-13 10:27:46,019.019 INFO    ] 200
[2026-06-13 10:27:46,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:46,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:46,054.054 INFO    ] No update needed
[2026-06-13 10:27:46,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:46,075.075 INFO    ] 200
[2026-06-13 10:27:46,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:46,101.101 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:46,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:46,143.143 INFO    ] No camera update needed
[2026-06-13 10:27:46,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:46,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:46,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:46,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:48,192.192 INFO    ] ================================================
[2026-06-13 10:27:48,209.209 INFO    ] Launching Daemon at Sat Jun 13 10:27:48 IST 2026
[2026-06-13 10:27:48,221.221 INFO    ] ================================================
[2026-06-13 10:27:48,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:48
[2026-06-13 10:27:48,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:27:49,040.040 INFO    ] Initializing speech engine...
[2026-06-13 10:27:49,053.053 INFO    ] 2026-06-13 10:27:49
[2026-06-13 10:27:49,259.259 INFO    ] 2026-06-13 10:27:49
[2026-06-13 10:27:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:27:49,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:27:49,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:27:49,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:27:49,677.677 INFO    ] time= 13/06/2026 10:27:49
[2026-06-13 10:27:49,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:27:49,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:27:49,766.766 INFO    ] No existing commands found in stream
[2026-06-13 10:27:54,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:27:54,778.778 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 10:27:56,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:27:56,768.768 INFO    ] Checking for system updates...
[2026-06-13 10:27:56,789.789 INFO    ] 200
[2026-06-13 10:27:56,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:56,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:56,825.825 INFO    ] No update needed
[2026-06-13 10:27:56,826.826 INFO    ] Checking for camera pi updates...
[2026-06-13 10:27:56,847.847 INFO    ] 200
[2026-06-13 10:27:56,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:27:56,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:27:56,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:27:56,910.910 INFO    ] No camera update needed
[2026-06-13 10:27:56,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:27:56,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:27:56,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:27:56,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:27:58,958.958 INFO    ] ================================================
[2026-06-13 10:27:58,973.973 INFO    ] Launching Daemon at Sat Jun 13 10:27:58 IST 2026
[2026-06-13 10:27:58,984.984 INFO    ] ================================================
[2026-06-13 10:27:59,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:27:59
[2026-06-13 10:28:00,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:00,551.551 INFO    ] Initializing speech engine...
[2026-06-13 10:28:00,566.566 INFO    ] 2026-06-13 10:28:00
[2026-06-13 10:28:00,851.851 INFO    ] 2026-06-13 10:28:00
[2026-06-13 10:28:00,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:01,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:01,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:01,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:01,293.293 INFO    ] time= 13/06/2026 10:28:01
[2026-06-13 10:28:01,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:01,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:28:01,460.460 INFO    ] No existing commands found in stream
[2026-06-13 10:28:06,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:28:06,500.500 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 10:28:09,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:28:09,198.198 INFO    ] Checking for system updates...
[2026-06-13 10:28:09,221.221 INFO    ] 200
[2026-06-13 10:28:09,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:09,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:28:09,254.254 INFO    ] No update needed
[2026-06-13 10:28:09,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 10:28:09,274.274 INFO    ] 200
[2026-06-13 10:28:09,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:09,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:28:09,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:28:09,342.342 INFO    ] No camera update needed
[2026-06-13 10:28:09,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:28:09,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:28:09,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:28:09,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:28:11,388.388 INFO    ] ================================================
[2026-06-13 10:28:11,403.403 INFO    ] Launching Daemon at Sat Jun 13 10:28:11 IST 2026
[2026-06-13 10:28:11,414.414 INFO    ] ================================================
[2026-06-13 10:28:11,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:28:11
[2026-06-13 10:28:12,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:12,227.227 INFO    ] Initializing speech engine...
[2026-06-13 10:28:12,232.232 INFO    ] 2026-06-13 10:28:12
[2026-06-13 10:28:12,436.436 INFO    ] 2026-06-13 10:28:12
[2026-06-13 10:28:12,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:12,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:12,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:12,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:12,785.785 INFO    ] time= 13/06/2026 10:28:12
[2026-06-13 10:28:12,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:12,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:28:12,956.956 INFO    ] No existing commands found in stream
[2026-06-13 10:28:17,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:28:17,966.966 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 10:28:20,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:28:20,958.958 INFO    ] Checking for system updates...
[2026-06-13 10:28:20,979.979 INFO    ] 200
[2026-06-13 10:28:20,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:21,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:21,013.013 INFO    ] No update needed
[2026-06-13 10:28:21,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 10:28:21,035.035 INFO    ] 200
[2026-06-13 10:28:21,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:21,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:28:21,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:21,099.099 INFO    ] No camera update needed
[2026-06-13 10:28:21,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:28:21,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:28:21,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:28:21,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:28:23,147.147 INFO    ] ================================================
[2026-06-13 10:28:23,162.162 INFO    ] Launching Daemon at Sat Jun 13 10:28:23 IST 2026
[2026-06-13 10:28:23,172.172 INFO    ] ================================================
[2026-06-13 10:28:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:28:23
[2026-06-13 10:28:23,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:24,018.018 INFO    ] Initializing speech engine...
[2026-06-13 10:28:24,024.024 INFO    ] 2026-06-13 10:28:24
[2026-06-13 10:28:24,232.232 INFO    ] 2026-06-13 10:28:24
[2026-06-13 10:28:24,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:24,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:24,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:24,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:24,655.655 INFO    ] time= 13/06/2026 10:28:24
[2026-06-13 10:28:24,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:24,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:28:24,753.753 INFO    ] No existing commands found in stream
[2026-06-13 10:28:29,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:28:29,765.765 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 10:28:30,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:28:30,351.351 INFO    ] Checking for system updates...
[2026-06-13 10:28:30,371.371 INFO    ] 200
[2026-06-13 10:28:30,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:30,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:30,404.404 INFO    ] No update needed
[2026-06-13 10:28:30,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 10:28:30,425.425 INFO    ] 200
[2026-06-13 10:28:30,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:30,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:28:30,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:30,493.493 INFO    ] No camera update needed
[2026-06-13 10:28:30,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:28:30,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:28:30,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:28:30,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:28:32,532.532 INFO    ] ================================================
[2026-06-13 10:28:32,543.543 INFO    ] Launching Daemon at Sat Jun 13 10:28:32 IST 2026
[2026-06-13 10:28:32,549.549 INFO    ] ================================================
[2026-06-13 10:28:32,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:28:32
[2026-06-13 10:28:33,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:33,762.762 INFO    ] Initializing speech engine...
[2026-06-13 10:28:33,767.767 INFO    ] 2026-06-13 10:28:33
[2026-06-13 10:28:34,029.029 INFO    ] 2026-06-13 10:28:34
[2026-06-13 10:28:34,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:34,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:34,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:34,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:34,391.391 INFO    ] time= 13/06/2026 10:28:34
[2026-06-13 10:28:34,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:34,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:28:34,512.512 INFO    ] No existing commands found in stream
[2026-06-13 10:28:39,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:28:39,527.527 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 10:28:43,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:28:43,792.792 INFO    ] Checking for system updates...
[2026-06-13 10:28:43,812.812 INFO    ] 200
[2026-06-13 10:28:43,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:43,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:28:43,845.845 INFO    ] No update needed
[2026-06-13 10:28:43,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 10:28:43,866.866 INFO    ] 200
[2026-06-13 10:28:43,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:43,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:28:43,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:28:43,943.943 INFO    ] No camera update needed
[2026-06-13 10:28:43,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:28:43,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:28:43,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:28:43,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:28:45,989.989 INFO    ] ================================================
[2026-06-13 10:28:46,005.005 INFO    ] Launching Daemon at Sat Jun 13 10:28:45 IST 2026
[2026-06-13 10:28:46,015.015 INFO    ] ================================================
[2026-06-13 10:28:46,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:28:46
[2026-06-13 10:28:46,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:46,797.797 INFO    ] Initializing speech engine...
[2026-06-13 10:28:46,810.810 INFO    ] 2026-06-13 10:28:46
[2026-06-13 10:28:47,022.022 INFO    ] 2026-06-13 10:28:47
[2026-06-13 10:28:47,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:47,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:47,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:47,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:47,426.426 INFO    ] time= 13/06/2026 10:28:47
[2026-06-13 10:28:47,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:47,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:28:47,537.537 INFO    ] No existing commands found in stream
[2026-06-13 10:28:52,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:28:52,550.550 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 10:28:56,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:28:56,276.276 INFO    ] Checking for system updates...
[2026-06-13 10:28:56,297.297 INFO    ] 200
[2026-06-13 10:28:56,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:56,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:56,334.334 INFO    ] No update needed
[2026-06-13 10:28:56,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 10:28:56,358.358 INFO    ] 200
[2026-06-13 10:28:56,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:28:56,384.384 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:28:56,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:28:56,421.421 INFO    ] No camera update needed
[2026-06-13 10:28:56,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:28:56,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:28:56,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:28:56,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:28:58,469.469 INFO    ] ================================================
[2026-06-13 10:28:58,484.484 INFO    ] Launching Daemon at Sat Jun 13 10:28:58 IST 2026
[2026-06-13 10:28:58,494.494 INFO    ] ================================================
[2026-06-13 10:28:58,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:28:58
[2026-06-13 10:28:59,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:28:59,301.301 INFO    ] Initializing speech engine...
[2026-06-13 10:28:59,313.313 INFO    ] 2026-06-13 10:28:59
[2026-06-13 10:28:59,527.527 INFO    ] 2026-06-13 10:28:59
[2026-06-13 10:28:59,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:28:59,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:28:59,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:28:59,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:28:59,927.927 INFO    ] time= 13/06/2026 10:28:59
[2026-06-13 10:28:59,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:28:59,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:00,044.044 INFO    ] No existing commands found in stream
[2026-06-13 10:29:05,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:05,067.067 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 10:29:05,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:29:05,828.828 INFO    ] Checking for system updates...
[2026-06-13 10:29:05,849.849 INFO    ] 200
[2026-06-13 10:29:05,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:05,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:05,882.882 INFO    ] No update needed
[2026-06-13 10:29:05,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 10:29:05,903.903 INFO    ] 200
[2026-06-13 10:29:05,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:05,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:29:05,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:05,968.968 INFO    ] No camera update needed
[2026-06-13 10:29:05,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:29:05,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:29:05,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:29:05,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:29:08,016.016 INFO    ] ================================================
[2026-06-13 10:29:08,032.032 INFO    ] Launching Daemon at Sat Jun 13 10:29:08 IST 2026
[2026-06-13 10:29:08,043.043 INFO    ] ================================================
[2026-06-13 10:29:08,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:29:08
[2026-06-13 10:29:08,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:29:08,842.842 INFO    ] Initializing speech engine...
[2026-06-13 10:29:08,847.847 INFO    ] 2026-06-13 10:29:08
[2026-06-13 10:29:09,050.050 INFO    ] 2026-06-13 10:29:09
[2026-06-13 10:29:09,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:29:09,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:29:09,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:29:09,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:29:09,449.449 INFO    ] time= 13/06/2026 10:29:09
[2026-06-13 10:29:09,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:29:09,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:09,564.564 INFO    ] No existing commands found in stream
[2026-06-13 10:29:14,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:14,575.575 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 10:29:16,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:29:16,417.417 INFO    ] Checking for system updates...
[2026-06-13 10:29:16,437.437 INFO    ] 200
[2026-06-13 10:29:16,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:16,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:16,471.471 INFO    ] No update needed
[2026-06-13 10:29:16,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 10:29:16,494.494 INFO    ] 200
[2026-06-13 10:29:16,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:16,521.521 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:29:16,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:16,563.563 INFO    ] No camera update needed
[2026-06-13 10:29:16,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:29:16,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:29:16,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:29:16,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:29:18,613.613 INFO    ] ================================================
[2026-06-13 10:29:18,629.629 INFO    ] Launching Daemon at Sat Jun 13 10:29:18 IST 2026
[2026-06-13 10:29:18,640.640 INFO    ] ================================================
[2026-06-13 10:29:18,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:29:18
[2026-06-13 10:29:19,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:29:19,421.421 INFO    ] Initializing speech engine...
[2026-06-13 10:29:19,434.434 INFO    ] 2026-06-13 10:29:19
[2026-06-13 10:29:19,648.648 INFO    ] 2026-06-13 10:29:19
[2026-06-13 10:29:19,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:29:19,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:29:19,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:29:20,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:29:20,067.067 INFO    ] time= 13/06/2026 10:29:20
[2026-06-13 10:29:20,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:29:20,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:20,198.198 INFO    ] No existing commands found in stream
[2026-06-13 10:29:25,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:25,211.211 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 10:29:26,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:29:26,582.582 INFO    ] Checking for system updates...
[2026-06-13 10:29:26,602.602 INFO    ] 200
[2026-06-13 10:29:26,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:26,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:26,637.637 INFO    ] No update needed
[2026-06-13 10:29:26,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 10:29:26,659.659 INFO    ] 200
[2026-06-13 10:29:26,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:26,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:29:26,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:26,829.829 INFO    ] No camera update needed
[2026-06-13 10:29:26,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:29:26,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:29:26,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:29:26,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:29:28,876.876 INFO    ] ================================================
[2026-06-13 10:29:28,891.891 INFO    ] Launching Daemon at Sat Jun 13 10:29:28 IST 2026
[2026-06-13 10:29:28,903.903 INFO    ] ================================================
[2026-06-13 10:29:29,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:29:29
[2026-06-13 10:29:30,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:29:30,297.297 INFO    ] Initializing speech engine...
[2026-06-13 10:29:30,303.303 INFO    ] 2026-06-13 10:29:30
[2026-06-13 10:29:30,561.561 INFO    ] 2026-06-13 10:29:30
[2026-06-13 10:29:30,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:29:30,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:29:30,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:29:30,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:29:31,023.023 INFO    ] time= 13/06/2026 10:29:30
[2026-06-13 10:29:31,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:29:31,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:31,159.159 INFO    ] No existing commands found in stream
[2026-06-13 10:29:36,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:36,174.174 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 10:29:39,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:29:39,957.957 INFO    ] Checking for system updates...
[2026-06-13 10:29:39,978.978 INFO    ] 200
[2026-06-13 10:29:39,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:40,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:29:40,012.012 INFO    ] No update needed
[2026-06-13 10:29:40,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 10:29:40,035.035 INFO    ] 200
[2026-06-13 10:29:40,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:40,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:29:40,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:29:40,102.102 INFO    ] No camera update needed
[2026-06-13 10:29:40,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:29:40,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:29:40,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:29:40,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:29:42,151.151 INFO    ] ================================================
[2026-06-13 10:29:42,166.166 INFO    ] Launching Daemon at Sat Jun 13 10:29:42 IST 2026
[2026-06-13 10:29:42,177.177 INFO    ] ================================================
[2026-06-13 10:29:42,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:29:42
[2026-06-13 10:29:42,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:29:43,034.034 INFO    ] Initializing speech engine...
[2026-06-13 10:29:43,039.039 INFO    ] 2026-06-13 10:29:43
[2026-06-13 10:29:43,245.245 INFO    ] 2026-06-13 10:29:43
[2026-06-13 10:29:43,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:29:43,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:29:43,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:29:43,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:29:43,661.661 INFO    ] time= 13/06/2026 10:29:43
[2026-06-13 10:29:43,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:29:43,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:43,761.761 INFO    ] No existing commands found in stream
[2026-06-13 10:29:48,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:48,779.779 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 10:29:49,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:29:49,722.722 INFO    ] Checking for system updates...
[2026-06-13 10:29:49,743.743 INFO    ] 200
[2026-06-13 10:29:49,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:49,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:29:49,777.777 INFO    ] No update needed
[2026-06-13 10:29:49,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 10:29:49,798.798 INFO    ] 200
[2026-06-13 10:29:49,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:29:49,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:29:49,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:29:49,870.870 INFO    ] No camera update needed
[2026-06-13 10:29:49,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:29:49,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:29:49,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:29:49,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:29:51,918.918 INFO    ] ================================================
[2026-06-13 10:29:51,933.933 INFO    ] Launching Daemon at Sat Jun 13 10:29:51 IST 2026
[2026-06-13 10:29:51,945.945 INFO    ] ================================================
[2026-06-13 10:29:52,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:29:52
[2026-06-13 10:29:52,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:29:52,827.827 INFO    ] Initializing speech engine...
[2026-06-13 10:29:52,832.832 INFO    ] 2026-06-13 10:29:52
[2026-06-13 10:29:53,038.038 INFO    ] 2026-06-13 10:29:53
[2026-06-13 10:29:53,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:29:53,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:29:53,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:29:53,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:29:53,450.450 INFO    ] time= 13/06/2026 10:29:53
[2026-06-13 10:29:53,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:29:53,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:29:53,555.555 INFO    ] No existing commands found in stream
[2026-06-13 10:29:58,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:29:58,569.569 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 10:30:01,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:30:01,147.147 INFO    ] Checking for system updates...
[2026-06-13 10:30:01,218.218 INFO    ] 200
[2026-06-13 10:30:01,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:01,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:30:01,497.497 INFO    ] No update needed
[2026-06-13 10:30:01,505.505 INFO    ] Checking for camera pi updates...
[2026-06-13 10:30:01,645.645 INFO    ] 200
[2026-06-13 10:30:01,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:01,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:30:01,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:30:01,833.833 INFO    ] No camera update needed
[2026-06-13 10:30:01,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:30:01,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:30:01,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:30:01,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:30:03,877.877 INFO    ] ================================================
[2026-06-13 10:30:03,886.886 INFO    ] Launching Daemon at Sat Jun 13 10:30:03 IST 2026
[2026-06-13 10:30:03,892.892 INFO    ] ================================================
[2026-06-13 10:30:04,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:30:04
[2026-06-13 10:30:04,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:30:04,636.636 INFO    ] Initializing speech engine...
[2026-06-13 10:30:04,650.650 INFO    ] 2026-06-13 10:30:04
[2026-06-13 10:30:04,857.857 INFO    ] 2026-06-13 10:30:04
[2026-06-13 10:30:04,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:30:05,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:30:05,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:30:05,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:30:05,273.273 INFO    ] time= 13/06/2026 10:30:05
[2026-06-13 10:30:05,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:30:05,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:30:05,386.386 INFO    ] No existing commands found in stream
[2026-06-13 10:30:10,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:30:10,400.400 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 10:30:12,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:30:12,401.401 INFO    ] Checking for system updates...
[2026-06-13 10:30:12,422.422 INFO    ] 200
[2026-06-13 10:30:12,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:12,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:30:12,455.455 INFO    ] No update needed
[2026-06-13 10:30:12,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 10:30:12,476.476 INFO    ] 200
[2026-06-13 10:30:12,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:12,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:30:12,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:30:12,541.541 INFO    ] No camera update needed
[2026-06-13 10:30:12,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:30:12,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:30:12,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:30:12,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:30:14,582.582 INFO    ] ================================================
[2026-06-13 10:30:14,597.597 INFO    ] Launching Daemon at Sat Jun 13 10:30:14 IST 2026
[2026-06-13 10:30:14,609.609 INFO    ] ================================================
[2026-06-13 10:30:15,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:30:15
[2026-06-13 10:30:15,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:30:16,125.125 INFO    ] Initializing speech engine...
[2026-06-13 10:30:16,138.138 INFO    ] 2026-06-13 10:30:16
[2026-06-13 10:30:16,402.402 INFO    ] 2026-06-13 10:30:16
[2026-06-13 10:30:16,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:30:16,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:30:16,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:30:16,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:30:16,822.822 INFO    ] time= 13/06/2026 10:30:16
[2026-06-13 10:30:16,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:30:16,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:30:16,970.970 INFO    ] No existing commands found in stream
[2026-06-13 10:30:21,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:30:21,983.983 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 10:30:25,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:30:25,422.422 INFO    ] Checking for system updates...
[2026-06-13 10:30:25,463.463 INFO    ] 200
[2026-06-13 10:30:25,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:25,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:30:25,530.530 INFO    ] No update needed
[2026-06-13 10:30:25,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 10:30:25,573.573 INFO    ] 200
[2026-06-13 10:30:25,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:25,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:30:25,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:30:25,641.641 INFO    ] No camera update needed
[2026-06-13 10:30:25,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:30:25,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:30:25,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:30:25,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:30:27,691.691 INFO    ] ================================================
[2026-06-13 10:30:27,707.707 INFO    ] Launching Daemon at Sat Jun 13 10:30:27 IST 2026
[2026-06-13 10:30:27,718.718 INFO    ] ================================================
[2026-06-13 10:30:28,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:30:28
[2026-06-13 10:30:28,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:30:28,537.537 INFO    ] Initializing speech engine...
[2026-06-13 10:30:28,542.542 INFO    ] 2026-06-13 10:30:28
[2026-06-13 10:30:28,748.748 INFO    ] 2026-06-13 10:30:28
[2026-06-13 10:30:28,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:30:28,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:30:28,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:30:29,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:30:29,142.142 INFO    ] time= 13/06/2026 10:30:29
[2026-06-13 10:30:29,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:30:29,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:30:29,263.263 INFO    ] No existing commands found in stream
[2026-06-13 10:30:34,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:30:34,280.280 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 10:30:35,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:30:35,216.216 INFO    ] Checking for system updates...
[2026-06-13 10:30:35,238.238 INFO    ] 200
[2026-06-13 10:30:35,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:35,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:30:35,271.271 INFO    ] No update needed
[2026-06-13 10:30:35,273.273 INFO    ] Checking for camera pi updates...
[2026-06-13 10:30:35,292.292 INFO    ] 200
[2026-06-13 10:30:35,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:35,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:30:35,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:30:35,356.356 INFO    ] No camera update needed
[2026-06-13 10:30:35,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:30:35,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:30:35,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:30:35,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:30:37,406.406 INFO    ] ================================================
[2026-06-13 10:30:37,421.421 INFO    ] Launching Daemon at Sat Jun 13 10:30:37 IST 2026
[2026-06-13 10:30:37,432.432 INFO    ] ================================================
[2026-06-13 10:30:37,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:30:37
[2026-06-13 10:30:38,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:30:38,252.252 INFO    ] Initializing speech engine...
[2026-06-13 10:30:38,265.265 INFO    ] 2026-06-13 10:30:38
[2026-06-13 10:30:38,483.483 INFO    ] 2026-06-13 10:30:38
[2026-06-13 10:30:38,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:30:38,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:30:38,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:30:38,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:30:38,895.895 INFO    ] time= 13/06/2026 10:30:38
[2026-06-13 10:30:38,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:30:38,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:30:39,037.037 INFO    ] No existing commands found in stream
[2026-06-13 10:30:44,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:30:44,050.050 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 10:30:47,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:30:47,442.442 INFO    ] Checking for system updates...
[2026-06-13 10:30:47,462.462 INFO    ] 200
[2026-06-13 10:30:47,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:47,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:30:47,496.496 INFO    ] No update needed
[2026-06-13 10:30:47,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 10:30:47,518.518 INFO    ] 200
[2026-06-13 10:30:47,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:30:47,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:30:47,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:30:47,592.592 INFO    ] No camera update needed
[2026-06-13 10:30:47,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:30:47,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:30:47,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:30:47,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:30:49,639.639 INFO    ] ================================================
[2026-06-13 10:30:49,654.654 INFO    ] Launching Daemon at Sat Jun 13 10:30:49 IST 2026
[2026-06-13 10:30:49,666.666 INFO    ] ================================================
[2026-06-13 10:30:50,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:30:50
[2026-06-13 10:30:50,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:30:50,476.476 INFO    ] Initializing speech engine...
[2026-06-13 10:30:50,488.488 INFO    ] 2026-06-13 10:30:50
[2026-06-13 10:30:50,695.695 INFO    ] 2026-06-13 10:30:50
[2026-06-13 10:30:50,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:30:50,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:30:50,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:30:51,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:30:51,105.105 INFO    ] time= 13/06/2026 10:30:51
[2026-06-13 10:30:51,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:30:51,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:30:51,209.209 INFO    ] No existing commands found in stream
[2026-06-13 10:30:56,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:30:56,221.221 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 10:31:00,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:31:00,192.192 INFO    ] Checking for system updates...
[2026-06-13 10:31:00,213.213 INFO    ] 200
[2026-06-13 10:31:00,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:00,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:00,247.247 INFO    ] No update needed
[2026-06-13 10:31:00,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:00,271.271 INFO    ] 200
[2026-06-13 10:31:00,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:00,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:00,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:00,349.349 INFO    ] No camera update needed
[2026-06-13 10:31:00,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:00,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:00,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:00,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:31:02,391.391 INFO    ] ================================================
[2026-06-13 10:31:02,404.404 INFO    ] Launching Daemon at Sat Jun 13 10:31:02 IST 2026
[2026-06-13 10:31:02,412.412 INFO    ] ================================================
[2026-06-13 10:31:02,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:31:02
[2026-06-13 10:31:03,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:31:03,247.247 INFO    ] Initializing speech engine...
[2026-06-13 10:31:03,260.260 INFO    ] 2026-06-13 10:31:03
[2026-06-13 10:31:03,477.477 INFO    ] 2026-06-13 10:31:03
[2026-06-13 10:31:03,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:31:03,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:31:03,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:31:03,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:31:03,724.724 INFO    ] time= 13/06/2026 10:31:03
[2026-06-13 10:31:03,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:31:03,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:31:03,816.816 INFO    ] No existing commands found in stream
[2026-06-13 10:31:08,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:31:08,853.853 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 10:31:10,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:31:10,376.376 INFO    ] Checking for system updates...
[2026-06-13 10:31:10,397.397 INFO    ] 200
[2026-06-13 10:31:10,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:10,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:10,431.431 INFO    ] No update needed
[2026-06-13 10:31:10,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:10,452.452 INFO    ] 200
[2026-06-13 10:31:10,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:10,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:10,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:10,517.517 INFO    ] No camera update needed
[2026-06-13 10:31:10,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:10,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:10,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:10,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:31:12,564.564 INFO    ] ================================================
[2026-06-13 10:31:12,579.579 INFO    ] Launching Daemon at Sat Jun 13 10:31:12 IST 2026
[2026-06-13 10:31:12,590.590 INFO    ] ================================================
[2026-06-13 10:31:12,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:31:12
[2026-06-13 10:31:13,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:31:13,391.391 INFO    ] Initializing speech engine...
[2026-06-13 10:31:13,394.394 INFO    ] 2026-06-13 10:31:13
[2026-06-13 10:31:13,624.624 INFO    ] 2026-06-13 10:31:13
[2026-06-13 10:31:13,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:31:13,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:31:13,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:31:13,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:31:14,045.045 INFO    ] time= 13/06/2026 10:31:14
[2026-06-13 10:31:14,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:31:14,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:31:14,176.176 INFO    ] No existing commands found in stream
[2026-06-13 10:31:19,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:31:19,190.190 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 10:31:21,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:31:21,012.012 INFO    ] Checking for system updates...
[2026-06-13 10:31:21,032.032 INFO    ] 200
[2026-06-13 10:31:21,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:21,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:21,066.066 INFO    ] No update needed
[2026-06-13 10:31:21,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:21,088.088 INFO    ] 200
[2026-06-13 10:31:21,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:21,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:21,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:21,155.155 INFO    ] No camera update needed
[2026-06-13 10:31:21,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:21,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:21,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:21,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:31:23,203.203 INFO    ] ================================================
[2026-06-13 10:31:23,218.218 INFO    ] Launching Daemon at Sat Jun 13 10:31:23 IST 2026
[2026-06-13 10:31:23,229.229 INFO    ] ================================================
[2026-06-13 10:31:23,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:31:23
[2026-06-13 10:31:23,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:31:24,037.037 INFO    ] Initializing speech engine...
[2026-06-13 10:31:24,045.045 INFO    ] 2026-06-13 10:31:24
[2026-06-13 10:31:24,262.262 INFO    ] 2026-06-13 10:31:24
[2026-06-13 10:31:24,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:31:24,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:31:24,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:31:24,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:31:24,694.694 INFO    ] time= 13/06/2026 10:31:24
[2026-06-13 10:31:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:31:24,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:31:24,815.815 INFO    ] No existing commands found in stream
[2026-06-13 10:31:29,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:31:29,828.828 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 10:31:34,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:31:34,169.169 INFO    ] Checking for system updates...
[2026-06-13 10:31:34,205.205 INFO    ] 200
[2026-06-13 10:31:34,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:34,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:34,265.265 INFO    ] No update needed
[2026-06-13 10:31:34,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:34,301.301 INFO    ] 200
[2026-06-13 10:31:34,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:34,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:34,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:31:34,393.393 INFO    ] No camera update needed
[2026-06-13 10:31:34,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:34,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:34,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:34,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:31:36,449.449 INFO    ] ================================================
[2026-06-13 10:31:36,464.464 INFO    ] Launching Daemon at Sat Jun 13 10:31:36 IST 2026
[2026-06-13 10:31:36,475.475 INFO    ] ================================================
[2026-06-13 10:31:36,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:31:36
[2026-06-13 10:31:37,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:31:37,319.319 INFO    ] Initializing speech engine...
[2026-06-13 10:31:37,324.324 INFO    ] 2026-06-13 10:31:37
[2026-06-13 10:31:37,534.534 INFO    ] 2026-06-13 10:31:37
[2026-06-13 10:31:37,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:31:37,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:31:37,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:31:37,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:31:37,942.942 INFO    ] time= 13/06/2026 10:31:37
[2026-06-13 10:31:37,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:31:37,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:31:38,062.062 INFO    ] No existing commands found in stream
[2026-06-13 10:31:43,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:31:43,080.080 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 10:31:46,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:31:46,286.286 INFO    ] Checking for system updates...
[2026-06-13 10:31:46,307.307 INFO    ] 200
[2026-06-13 10:31:46,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:46,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:46,341.341 INFO    ] No update needed
[2026-06-13 10:31:46,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:46,361.361 INFO    ] 200
[2026-06-13 10:31:46,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:46,386.386 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:46,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:46,425.425 INFO    ] No camera update needed
[2026-06-13 10:31:46,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:46,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:46,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:46,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:31:48,473.473 INFO    ] ================================================
[2026-06-13 10:31:48,488.488 INFO    ] Launching Daemon at Sat Jun 13 10:31:48 IST 2026
[2026-06-13 10:31:48,499.499 INFO    ] ================================================
[2026-06-13 10:31:48,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:31:48
[2026-06-13 10:31:49,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:31:49,284.284 INFO    ] Initializing speech engine...
[2026-06-13 10:31:49,289.289 INFO    ] 2026-06-13 10:31:49
[2026-06-13 10:31:49,512.512 INFO    ] 2026-06-13 10:31:49
[2026-06-13 10:31:49,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:31:49,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:31:49,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:31:49,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:31:49,855.855 INFO    ] time= 13/06/2026 10:31:49
[2026-06-13 10:31:49,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:31:49,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:31:49,968.968 INFO    ] No existing commands found in stream
[2026-06-13 10:31:54,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:31:54,983.983 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 10:31:58,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:31:58,826.826 INFO    ] Checking for system updates...
[2026-06-13 10:31:58,849.849 INFO    ] 200
[2026-06-13 10:31:58,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:58,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:58,882.882 INFO    ] No update needed
[2026-06-13 10:31:58,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 10:31:58,902.902 INFO    ] 200
[2026-06-13 10:31:58,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:31:58,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:31:58,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:31:58,969.969 INFO    ] No camera update needed
[2026-06-13 10:31:58,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:31:58,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:31:58,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:31:58,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:32:01,024.024 INFO    ] ================================================
[2026-06-13 10:32:01,057.057 INFO    ] Launching Daemon at Sat Jun 13 10:32:01 IST 2026
[2026-06-13 10:32:01,093.093 INFO    ] ================================================
[2026-06-13 10:32:01,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:32:01
[2026-06-13 10:32:01,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:32:02,063.063 INFO    ] Initializing speech engine...
[2026-06-13 10:32:02,068.068 INFO    ] 2026-06-13 10:32:02
[2026-06-13 10:32:02,282.282 INFO    ] 2026-06-13 10:32:02
[2026-06-13 10:32:02,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:32:02,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:32:02,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:32:02,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:32:02,610.610 INFO    ] time= 13/06/2026 10:32:02
[2026-06-13 10:32:02,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:32:02,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:32:02,765.765 INFO    ] No existing commands found in stream
[2026-06-13 10:32:07,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:32:07,781.781 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 10:32:11,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:32:11,907.907 INFO    ] Checking for system updates...
[2026-06-13 10:32:11,928.928 INFO    ] 200
[2026-06-13 10:32:11,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:11,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:11,965.965 INFO    ] No update needed
[2026-06-13 10:32:11,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 10:32:11,990.990 INFO    ] 200
[2026-06-13 10:32:11,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:12,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:32:12,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:12,061.061 INFO    ] No camera update needed
[2026-06-13 10:32:12,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:32:12,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:32:12,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:32:12,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:32:14,108.108 INFO    ] ================================================
[2026-06-13 10:32:14,123.123 INFO    ] Launching Daemon at Sat Jun 13 10:32:14 IST 2026
[2026-06-13 10:32:14,134.134 INFO    ] ================================================
[2026-06-13 10:32:14,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:32:14
[2026-06-13 10:32:14,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:32:14,933.933 INFO    ] Initializing speech engine...
[2026-06-13 10:32:14,938.938 INFO    ] 2026-06-13 10:32:14
[2026-06-13 10:32:15,143.143 INFO    ] 2026-06-13 10:32:15
[2026-06-13 10:32:15,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:32:15,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:32:15,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:32:15,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:32:15,533.533 INFO    ] time= 13/06/2026 10:32:15
[2026-06-13 10:32:15,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:32:15,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:32:15,665.665 INFO    ] No existing commands found in stream
[2026-06-13 10:32:20,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:32:20,679.679 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 10:32:23,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:32:23,516.516 INFO    ] Checking for system updates...
[2026-06-13 10:32:23,537.537 INFO    ] 200
[2026-06-13 10:32:23,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:23,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:32:23,570.570 INFO    ] No update needed
[2026-06-13 10:32:23,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 10:32:23,591.591 INFO    ] 200
[2026-06-13 10:32:23,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:23,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:32:23,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:32:23,664.664 INFO    ] No camera update needed
[2026-06-13 10:32:23,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:32:23,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:32:23,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:32:23,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:32:25,712.712 INFO    ] ================================================
[2026-06-13 10:32:25,727.727 INFO    ] Launching Daemon at Sat Jun 13 10:32:25 IST 2026
[2026-06-13 10:32:25,738.738 INFO    ] ================================================
[2026-06-13 10:32:26,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:32:26
[2026-06-13 10:32:26,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:32:26,531.531 INFO    ] Initializing speech engine...
[2026-06-13 10:32:26,543.543 INFO    ] 2026-06-13 10:32:26
[2026-06-13 10:32:26,751.751 INFO    ] 2026-06-13 10:32:26
[2026-06-13 10:32:26,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:32:26,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:32:26,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:32:27,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:32:27,163.163 INFO    ] time= 13/06/2026 10:32:27
[2026-06-13 10:32:27,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:32:27,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:32:27,276.276 INFO    ] No existing commands found in stream
[2026-06-13 10:32:32,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:32:32,288.288 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 10:32:35,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:32:35,617.617 INFO    ] Checking for system updates...
[2026-06-13 10:32:35,637.637 INFO    ] 200
[2026-06-13 10:32:35,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:35,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:32:35,670.670 INFO    ] No update needed
[2026-06-13 10:32:35,671.671 INFO    ] Checking for camera pi updates...
[2026-06-13 10:32:35,692.692 INFO    ] 200
[2026-06-13 10:32:35,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:35,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:32:35,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:32:35,757.757 INFO    ] No camera update needed
[2026-06-13 10:32:35,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:32:35,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:32:35,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:32:35,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:32:37,805.805 INFO    ] ================================================
[2026-06-13 10:32:37,820.820 INFO    ] Launching Daemon at Sat Jun 13 10:32:37 IST 2026
[2026-06-13 10:32:37,831.831 INFO    ] ================================================
[2026-06-13 10:32:38,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:32:38
[2026-06-13 10:32:38,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:32:38,699.699 INFO    ] Initializing speech engine...
[2026-06-13 10:32:38,704.704 INFO    ] 2026-06-13 10:32:38
[2026-06-13 10:32:38,914.914 INFO    ] 2026-06-13 10:32:38
[2026-06-13 10:32:38,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:32:39,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:32:39,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:32:39,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:32:39,335.335 INFO    ] time= 13/06/2026 10:32:39
[2026-06-13 10:32:39,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:32:39,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:32:39,437.437 INFO    ] No existing commands found in stream
[2026-06-13 10:32:44,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:32:44,451.451 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 10:32:47,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:32:47,467.467 INFO    ] Checking for system updates...
[2026-06-13 10:32:47,489.489 INFO    ] 200
[2026-06-13 10:32:47,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:47,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:47,525.525 INFO    ] No update needed
[2026-06-13 10:32:47,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 10:32:47,549.549 INFO    ] 200
[2026-06-13 10:32:47,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:47,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:32:47,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:47,630.630 INFO    ] No camera update needed
[2026-06-13 10:32:47,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:32:47,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:32:47,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:32:47,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:32:49,677.677 INFO    ] ================================================
[2026-06-13 10:32:49,692.692 INFO    ] Launching Daemon at Sat Jun 13 10:32:49 IST 2026
[2026-06-13 10:32:49,703.703 INFO    ] ================================================
[2026-06-13 10:32:50,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:32:50
[2026-06-13 10:32:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:32:50,533.533 INFO    ] Initializing speech engine...
[2026-06-13 10:32:50,544.544 INFO    ] 2026-06-13 10:32:50
[2026-06-13 10:32:50,752.752 INFO    ] 2026-06-13 10:32:50
[2026-06-13 10:32:50,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:32:50,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:32:50,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:32:51,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:32:51,170.170 INFO    ] time= 13/06/2026 10:32:51
[2026-06-13 10:32:51,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:32:51,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:32:51,314.314 INFO    ] No existing commands found in stream
[2026-06-13 10:32:56,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:32:56,345.345 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 10:32:57,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:32:57,863.863 INFO    ] Checking for system updates...
[2026-06-13 10:32:57,885.885 INFO    ] 200
[2026-06-13 10:32:57,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:57,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:57,919.919 INFO    ] No update needed
[2026-06-13 10:32:57,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 10:32:57,941.941 INFO    ] 200
[2026-06-13 10:32:57,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:32:57,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:32:58,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:32:58,005.005 INFO    ] No camera update needed
[2026-06-13 10:32:58,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:32:58,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:32:58,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:32:58,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:00,055.055 INFO    ] ================================================
[2026-06-13 10:33:00,070.070 INFO    ] Launching Daemon at Sat Jun 13 10:33:00 IST 2026
[2026-06-13 10:33:00,081.081 INFO    ] ================================================
[2026-06-13 10:33:00,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:00
[2026-06-13 10:33:00,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:00,901.901 INFO    ] Initializing speech engine...
[2026-06-13 10:33:00,905.905 INFO    ] 2026-06-13 10:33:00
[2026-06-13 10:33:01,109.109 INFO    ] 2026-06-13 10:33:01
[2026-06-13 10:33:01,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:01,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:01,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:01,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:01,514.514 INFO    ] time= 13/06/2026 10:33:01
[2026-06-13 10:33:01,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:01,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:01,574.574 INFO    ] No existing commands found in stream
[2026-06-13 10:33:06,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:06,587.587 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 10:33:07,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:33:07,247.247 INFO    ] Checking for system updates...
[2026-06-13 10:33:07,268.268 INFO    ] 200
[2026-06-13 10:33:07,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:07,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:07,307.307 INFO    ] No update needed
[2026-06-13 10:33:07,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 10:33:07,328.328 INFO    ] 200
[2026-06-13 10:33:07,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:07,355.355 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:33:07,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:07,392.392 INFO    ] No camera update needed
[2026-06-13 10:33:07,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:33:07,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:33:07,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:33:07,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:09,440.440 INFO    ] ================================================
[2026-06-13 10:33:09,449.449 INFO    ] Launching Daemon at Sat Jun 13 10:33:09 IST 2026
[2026-06-13 10:33:09,455.455 INFO    ] ================================================
[2026-06-13 10:33:09,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:09
[2026-06-13 10:33:10,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:10,218.218 INFO    ] Initializing speech engine...
[2026-06-13 10:33:10,230.230 INFO    ] 2026-06-13 10:33:10
[2026-06-13 10:33:10,435.435 INFO    ] 2026-06-13 10:33:10
[2026-06-13 10:33:10,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:10,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:10,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:10,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:10,853.853 INFO    ] time= 13/06/2026 10:33:10
[2026-06-13 10:33:10,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:10,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:10,949.949 INFO    ] No existing commands found in stream
[2026-06-13 10:33:15,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:15,962.962 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 10:33:17,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:33:17,791.791 INFO    ] Checking for system updates...
[2026-06-13 10:33:17,812.812 INFO    ] 200
[2026-06-13 10:33:17,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:17,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:17,845.845 INFO    ] No update needed
[2026-06-13 10:33:17,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 10:33:17,866.866 INFO    ] 200
[2026-06-13 10:33:17,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:17,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:33:17,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:17,932.932 INFO    ] No camera update needed
[2026-06-13 10:33:17,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:33:17,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:33:17,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:33:17,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:19,984.984 INFO    ] ================================================
[2026-06-13 10:33:20,999.999 INFO    ] Launching Daemon at Sat Jun 13 10:33:19 IST 2026
[2026-06-13 10:33:20,010.010 INFO    ] ================================================
[2026-06-13 10:33:20,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:20
[2026-06-13 10:33:20,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:20,809.809 INFO    ] Initializing speech engine...
[2026-06-13 10:33:20,814.814 INFO    ] 2026-06-13 10:33:20
[2026-06-13 10:33:21,020.020 INFO    ] 2026-06-13 10:33:21
[2026-06-13 10:33:21,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:21,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:21,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:21,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:21,421.421 INFO    ] time= 13/06/2026 10:33:21
[2026-06-13 10:33:21,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:21,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:21,542.542 INFO    ] No existing commands found in stream
[2026-06-13 10:33:26,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:26,556.556 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 10:33:27,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:33:27,870.870 INFO    ] Checking for system updates...
[2026-06-13 10:33:27,890.890 INFO    ] 200
[2026-06-13 10:33:27,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:27,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:27,924.924 INFO    ] No update needed
[2026-06-13 10:33:27,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 10:33:27,945.945 INFO    ] 200
[2026-06-13 10:33:27,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:27,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:33:28,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:28,011.011 INFO    ] No camera update needed
[2026-06-13 10:33:28,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:33:28,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:33:28,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:33:28,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:30,057.057 INFO    ] ================================================
[2026-06-13 10:33:30,072.072 INFO    ] Launching Daemon at Sat Jun 13 10:33:30 IST 2026
[2026-06-13 10:33:30,083.083 INFO    ] ================================================
[2026-06-13 10:33:30,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:30
[2026-06-13 10:33:31,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:31,439.439 INFO    ] Initializing speech engine...
[2026-06-13 10:33:31,466.466 INFO    ] 2026-06-13 10:33:31
[2026-06-13 10:33:31,739.739 INFO    ] 2026-06-13 10:33:31
[2026-06-13 10:33:31,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:31,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:32,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:32,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:32,214.214 INFO    ] time= 13/06/2026 10:33:32
[2026-06-13 10:33:32,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:32,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:32,431.431 INFO    ] No existing commands found in stream
[2026-06-13 10:33:37,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:37,460.460 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 10:33:38,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:33:38,366.366 INFO    ] Checking for system updates...
[2026-06-13 10:33:38,387.387 INFO    ] 200
[2026-06-13 10:33:38,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:38,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:38,420.420 INFO    ] No update needed
[2026-06-13 10:33:38,421.421 INFO    ] Checking for camera pi updates...
[2026-06-13 10:33:38,444.444 INFO    ] 200
[2026-06-13 10:33:38,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:38,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:33:38,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:38,616.616 INFO    ] No camera update needed
[2026-06-13 10:33:38,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:33:38,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:33:38,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:33:38,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:40,662.662 INFO    ] ================================================
[2026-06-13 10:33:40,679.679 INFO    ] Launching Daemon at Sat Jun 13 10:33:40 IST 2026
[2026-06-13 10:33:40,690.690 INFO    ] ================================================
[2026-06-13 10:33:41,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:41
[2026-06-13 10:33:41,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:41,524.524 INFO    ] Initializing speech engine...
[2026-06-13 10:33:41,529.529 INFO    ] 2026-06-13 10:33:41
[2026-06-13 10:33:41,736.736 INFO    ] 2026-06-13 10:33:41
[2026-06-13 10:33:41,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:41,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:41,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:42,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:42,143.143 INFO    ] time= 13/06/2026 10:33:42
[2026-06-13 10:33:42,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:42,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:42,343.343 INFO    ] No existing commands found in stream
[2026-06-13 10:33:47,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:47,356.356 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 10:33:50,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:33:50,500.500 INFO    ] Checking for system updates...
[2026-06-13 10:33:50,521.521 INFO    ] 200
[2026-06-13 10:33:50,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:50,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:50,554.554 INFO    ] No update needed
[2026-06-13 10:33:50,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 10:33:50,575.575 INFO    ] 200
[2026-06-13 10:33:50,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:33:50,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:33:50,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:33:50,640.640 INFO    ] No camera update needed
[2026-06-13 10:33:50,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:33:50,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:33:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:33:50,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:33:52,692.692 INFO    ] ================================================
[2026-06-13 10:33:52,707.707 INFO    ] Launching Daemon at Sat Jun 13 10:33:52 IST 2026
[2026-06-13 10:33:52,719.719 INFO    ] ================================================
[2026-06-13 10:33:53,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:33:53
[2026-06-13 10:33:53,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:33:53,522.522 INFO    ] Initializing speech engine...
[2026-06-13 10:33:53,527.527 INFO    ] 2026-06-13 10:33:53
[2026-06-13 10:33:53,732.732 INFO    ] 2026-06-13 10:33:53
[2026-06-13 10:33:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:33:53,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:33:53,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:33:54,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:33:54,136.136 INFO    ] time= 13/06/2026 10:33:54
[2026-06-13 10:33:54,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:33:54,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:33:54,251.251 INFO    ] No existing commands found in stream
[2026-06-13 10:33:59,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:33:59,263.263 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 10:34:02,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:34:02,118.118 INFO    ] Checking for system updates...
[2026-06-13 10:34:02,147.147 INFO    ] 200
[2026-06-13 10:34:02,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:02,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:34:02,191.191 INFO    ] No update needed
[2026-06-13 10:34:02,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:02,220.220 INFO    ] 200
[2026-06-13 10:34:02,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:02,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:02,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:02,291.291 INFO    ] No camera update needed
[2026-06-13 10:34:02,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:02,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:02,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:02,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:34:04,343.343 INFO    ] ================================================
[2026-06-13 10:34:04,359.359 INFO    ] Launching Daemon at Sat Jun 13 10:34:04 IST 2026
[2026-06-13 10:34:04,370.370 INFO    ] ================================================
[2026-06-13 10:34:04,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:34:04
[2026-06-13 10:34:05,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:34:05,205.205 INFO    ] Initializing speech engine...
[2026-06-13 10:34:05,210.210 INFO    ] 2026-06-13 10:34:05
[2026-06-13 10:34:05,419.419 INFO    ] 2026-06-13 10:34:05
[2026-06-13 10:34:05,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:34:05,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:34:05,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:34:05,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:34:05,841.841 INFO    ] time= 13/06/2026 10:34:05
[2026-06-13 10:34:05,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:34:05,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:34:05,958.958 INFO    ] No existing commands found in stream
[2026-06-13 10:34:10,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:34:10,970.970 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 10:34:11,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:34:11,342.342 INFO    ] Checking for system updates...
[2026-06-13 10:34:11,362.362 INFO    ] 200
[2026-06-13 10:34:11,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:11,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:11,395.395 INFO    ] No update needed
[2026-06-13 10:34:11,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:11,416.416 INFO    ] 200
[2026-06-13 10:34:11,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:11,441.441 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:11,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:11,481.481 INFO    ] No camera update needed
[2026-06-13 10:34:11,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:11,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:11,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:11,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:34:13,529.529 INFO    ] ================================================
[2026-06-13 10:34:13,544.544 INFO    ] Launching Daemon at Sat Jun 13 10:34:13 IST 2026
[2026-06-13 10:34:13,555.555 INFO    ] ================================================
[2026-06-13 10:34:13,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:34:13
[2026-06-13 10:34:14,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:34:14,348.348 INFO    ] Initializing speech engine...
[2026-06-13 10:34:14,360.360 INFO    ] 2026-06-13 10:34:14
[2026-06-13 10:34:14,574.574 INFO    ] 2026-06-13 10:34:14
[2026-06-13 10:34:14,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:34:15,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:34:15,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:34:15,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:34:15,247.247 INFO    ] time= 13/06/2026 10:34:15
[2026-06-13 10:34:15,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:34:15,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:34:15,299.299 INFO    ] No existing commands found in stream
[2026-06-13 10:34:20,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:34:20,312.312 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 10:34:24,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:34:24,425.425 INFO    ] Checking for system updates...
[2026-06-13 10:34:24,448.448 INFO    ] 200
[2026-06-13 10:34:24,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:24,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:24,483.483 INFO    ] No update needed
[2026-06-13 10:34:24,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:24,503.503 INFO    ] 200
[2026-06-13 10:34:24,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:24,529.529 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:24,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:24,567.567 INFO    ] No camera update needed
[2026-06-13 10:34:24,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:24,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:24,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:24,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:34:26,614.614 INFO    ] ================================================
[2026-06-13 10:34:26,629.629 INFO    ] Launching Daemon at Sat Jun 13 10:34:26 IST 2026
[2026-06-13 10:34:26,640.640 INFO    ] ================================================
[2026-06-13 10:34:27,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:34:27
[2026-06-13 10:34:27,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:34:27,485.485 INFO    ] Initializing speech engine...
[2026-06-13 10:34:27,496.496 INFO    ] 2026-06-13 10:34:27
[2026-06-13 10:34:27,698.698 INFO    ] 2026-06-13 10:34:27
[2026-06-13 10:34:27,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:34:27,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:34:27,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:34:28,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:34:28,098.098 INFO    ] time= 13/06/2026 10:34:28
[2026-06-13 10:34:28,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:34:28,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:34:28,217.217 INFO    ] No existing commands found in stream
[2026-06-13 10:34:33,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:34:33,231.231 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 10:34:36,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:34:36,699.699 INFO    ] Checking for system updates...
[2026-06-13 10:34:36,721.721 INFO    ] 200
[2026-06-13 10:34:36,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:36,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:34:36,756.756 INFO    ] No update needed
[2026-06-13 10:34:36,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:36,777.777 INFO    ] 200
[2026-06-13 10:34:36,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:36,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:36,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:34:36,839.839 INFO    ] No camera update needed
[2026-06-13 10:34:36,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:36,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:36,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:36,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:34:38,887.887 INFO    ] ================================================
[2026-06-13 10:34:38,902.902 INFO    ] Launching Daemon at Sat Jun 13 10:34:38 IST 2026
[2026-06-13 10:34:38,913.913 INFO    ] ================================================
[2026-06-13 10:34:39,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:34:39
[2026-06-13 10:34:39,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:34:39,713.713 INFO    ] Initializing speech engine...
[2026-06-13 10:34:39,718.718 INFO    ] 2026-06-13 10:34:39
[2026-06-13 10:34:39,921.921 INFO    ] 2026-06-13 10:34:39
[2026-06-13 10:34:39,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:34:40,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:34:40,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:34:40,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:34:40,328.328 INFO    ] time= 13/06/2026 10:34:40
[2026-06-13 10:34:40,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:34:40,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:34:40,439.439 INFO    ] No existing commands found in stream
[2026-06-13 10:34:45,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:34:45,451.451 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 10:34:48,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:34:48,417.417 INFO    ] Checking for system updates...
[2026-06-13 10:34:48,437.437 INFO    ] 200
[2026-06-13 10:34:48,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:48,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:48,470.470 INFO    ] No update needed
[2026-06-13 10:34:48,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:48,491.491 INFO    ] 200
[2026-06-13 10:34:48,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:48,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:48,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:48,565.565 INFO    ] No camera update needed
[2026-06-13 10:34:48,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:48,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:48,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:48,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:34:50,613.613 INFO    ] ================================================
[2026-06-13 10:34:50,629.629 INFO    ] Launching Daemon at Sat Jun 13 10:34:50 IST 2026
[2026-06-13 10:34:50,639.639 INFO    ] ================================================
[2026-06-13 10:34:50,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:34:50
[2026-06-13 10:34:51,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:34:51,467.467 INFO    ] Initializing speech engine...
[2026-06-13 10:34:51,472.472 INFO    ] 2026-06-13 10:34:51
[2026-06-13 10:34:51,678.678 INFO    ] 2026-06-13 10:34:51
[2026-06-13 10:34:51,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:34:51,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:34:51,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:34:52,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:34:52,098.098 INFO    ] time= 13/06/2026 10:34:52
[2026-06-13 10:34:52,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:34:52,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:34:52,196.196 INFO    ] No existing commands found in stream
[2026-06-13 10:34:57,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:34:57,208.208 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 10:34:59,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:34:59,231.231 INFO    ] Checking for system updates...
[2026-06-13 10:34:59,252.252 INFO    ] 200
[2026-06-13 10:34:59,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:59,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:59,288.288 INFO    ] No update needed
[2026-06-13 10:34:59,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 10:34:59,310.310 INFO    ] 200
[2026-06-13 10:34:59,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:34:59,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:34:59,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:34:59,380.380 INFO    ] No camera update needed
[2026-06-13 10:34:59,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:34:59,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:34:59,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:34:59,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:01,427.427 INFO    ] ================================================
[2026-06-13 10:35:01,443.443 INFO    ] Launching Daemon at Sat Jun 13 10:35:01 IST 2026
[2026-06-13 10:35:01,454.454 INFO    ] ================================================
[2026-06-13 10:35:01,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:01
[2026-06-13 10:35:02,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:02,438.438 INFO    ] Initializing speech engine...
[2026-06-13 10:35:02,449.449 INFO    ] 2026-06-13 10:35:02
[2026-06-13 10:35:02,698.698 INFO    ] 2026-06-13 10:35:02
[2026-06-13 10:35:02,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:35:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:35:02,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:35:03,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:35:03,092.092 INFO    ] time= 13/06/2026 10:35:03
[2026-06-13 10:35:03,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:35:03,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:35:03,286.286 INFO    ] No existing commands found in stream
[2026-06-13 10:35:08,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:35:08,300.300 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 10:35:09,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:35:09,041.041 INFO    ] Checking for system updates...
[2026-06-13 10:35:09,067.067 INFO    ] 200
[2026-06-13 10:35:09,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:09,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:35:09,108.108 INFO    ] No update needed
[2026-06-13 10:35:09,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 10:35:09,134.134 INFO    ] 200
[2026-06-13 10:35:09,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:09,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:35:09,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:35:09,206.206 INFO    ] No camera update needed
[2026-06-13 10:35:09,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:35:09,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:35:09,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:35:09,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:11,240.240 INFO    ] ================================================
[2026-06-13 10:35:11,248.248 INFO    ] Launching Daemon at Sat Jun 13 10:35:11 IST 2026
[2026-06-13 10:35:11,255.255 INFO    ] ================================================
[2026-06-13 10:35:11,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:11
[2026-06-13 10:35:12,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:12,649.649 INFO    ] Initializing speech engine...
[2026-06-13 10:35:12,655.655 INFO    ] 2026-06-13 10:35:12
[2026-06-13 10:35:12,904.904 INFO    ] 2026-06-13 10:35:12
[2026-06-13 10:35:12,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:35:13,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:35:13,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:35:13,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:35:13,272.272 INFO    ] time= 13/06/2026 10:35:13
[2026-06-13 10:35:13,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:35:13,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:35:13,372.372 INFO    ] No existing commands found in stream
[2026-06-13 10:35:18,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:35:18,416.416 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 10:35:22,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:35:22,702.702 INFO    ] Checking for system updates...
[2026-06-13 10:35:22,724.724 INFO    ] 200
[2026-06-13 10:35:22,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:22,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:22,758.758 INFO    ] No update needed
[2026-06-13 10:35:22,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 10:35:22,781.781 INFO    ] 200
[2026-06-13 10:35:22,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:22,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:35:22,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:22,844.844 INFO    ] No camera update needed
[2026-06-13 10:35:22,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:35:22,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:35:22,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:35:22,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:24,891.891 INFO    ] ================================================
[2026-06-13 10:35:24,906.906 INFO    ] Launching Daemon at Sat Jun 13 10:35:24 IST 2026
[2026-06-13 10:35:24,917.917 INFO    ] ================================================
[2026-06-13 10:35:25,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:25
[2026-06-13 10:35:25,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:25,769.769 INFO    ] Initializing speech engine...
[2026-06-13 10:35:25,775.775 INFO    ] 2026-06-13 10:35:25
[2026-06-13 10:35:25,982.982 INFO    ] 2026-06-13 10:35:25
[2026-06-13 10:35:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:35:26,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:35:26,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:35:26,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:35:26,397.397 INFO    ] time= 13/06/2026 10:35:26
[2026-06-13 10:35:26,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:35:26,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:35:26,503.503 INFO    ] No existing commands found in stream
[2026-06-13 10:35:31,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:35:31,521.521 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 10:35:32,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:35:32,553.553 INFO    ] Checking for system updates...
[2026-06-13 10:35:32,581.581 INFO    ] 200
[2026-06-13 10:35:32,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:32,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:32,627.627 INFO    ] No update needed
[2026-06-13 10:35:32,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 10:35:32,648.648 INFO    ] 200
[2026-06-13 10:35:32,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:32,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:35:32,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:32,710.710 INFO    ] No camera update needed
[2026-06-13 10:35:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:35:32,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:35:32,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:35:32,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:34,758.758 INFO    ] ================================================
[2026-06-13 10:35:34,774.774 INFO    ] Launching Daemon at Sat Jun 13 10:35:34 IST 2026
[2026-06-13 10:35:34,785.785 INFO    ] ================================================
[2026-06-13 10:35:35,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:35
[2026-06-13 10:35:35,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:35,612.612 INFO    ] Initializing speech engine...
[2026-06-13 10:35:35,621.621 INFO    ] 2026-06-13 10:35:35
[2026-06-13 10:35:35,827.827 INFO    ] 2026-06-13 10:35:35
[2026-06-13 10:35:35,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:35:36,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:35:36,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:35:36,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:35:36,235.235 INFO    ] time= 13/06/2026 10:35:36
[2026-06-13 10:35:36,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:35:36,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:35:36,340.340 INFO    ] No existing commands found in stream
[2026-06-13 10:35:41,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:35:41,352.352 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 10:35:46,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:35:46,697.697 INFO    ] Checking for system updates...
[2026-06-13 10:35:46,734.734 INFO    ] 200
[2026-06-13 10:35:46,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:46,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:35:46,799.799 INFO    ] No update needed
[2026-06-13 10:35:46,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 10:35:46,826.826 INFO    ] 200
[2026-06-13 10:35:46,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:46,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:35:46,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:35:46,993.993 INFO    ] No camera update needed
[2026-06-13 10:35:46,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:35:46,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:35:46,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:35:47,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:49,040.040 INFO    ] ================================================
[2026-06-13 10:35:49,056.056 INFO    ] Launching Daemon at Sat Jun 13 10:35:49 IST 2026
[2026-06-13 10:35:49,067.067 INFO    ] ================================================
[2026-06-13 10:35:49,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:49
[2026-06-13 10:35:49,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:49,925.925 INFO    ] Initializing speech engine...
[2026-06-13 10:35:49,930.930 INFO    ] 2026-06-13 10:35:49
[2026-06-13 10:35:50,141.141 INFO    ] 2026-06-13 10:35:50
[2026-06-13 10:35:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:35:50,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:35:50,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:35:50,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:35:50,569.569 INFO    ] time= 13/06/2026 10:35:50
[2026-06-13 10:35:50,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:35:50,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:35:50,667.667 INFO    ] No existing commands found in stream
[2026-06-13 10:35:55,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:35:55,680.680 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 10:35:56,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:35:56,205.205 INFO    ] Checking for system updates...
[2026-06-13 10:35:56,226.226 INFO    ] 200
[2026-06-13 10:35:56,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:56,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:56,262.262 INFO    ] No update needed
[2026-06-13 10:35:56,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 10:35:56,283.283 INFO    ] 200
[2026-06-13 10:35:56,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:35:56,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:35:56,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:35:56,365.365 INFO    ] No camera update needed
[2026-06-13 10:35:56,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:35:56,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:35:56,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:35:56,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:35:58,422.422 INFO    ] ================================================
[2026-06-13 10:35:58,436.436 INFO    ] Launching Daemon at Sat Jun 13 10:35:58 IST 2026
[2026-06-13 10:35:58,447.447 INFO    ] ================================================
[2026-06-13 10:35:59,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:35:59
[2026-06-13 10:35:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:35:59,673.673 INFO    ] Initializing speech engine...
[2026-06-13 10:35:59,678.678 INFO    ] 2026-06-13 10:35:59
[2026-06-13 10:35:59,885.885 INFO    ] 2026-06-13 10:35:59
[2026-06-13 10:35:59,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:00,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:00,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:00,287.287 INFO    ] time= 13/06/2026 10:36:00
[2026-06-13 10:36:00,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:00,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:00,403.403 INFO    ] No existing commands found in stream
[2026-06-13 10:36:05,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:36:05,416.416 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 10:36:06,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:36:06,098.098 INFO    ] Checking for system updates...
[2026-06-13 10:36:06,119.119 INFO    ] 200
[2026-06-13 10:36:06,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:06,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:36:06,152.152 INFO    ] No update needed
[2026-06-13 10:36:06,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 10:36:06,172.172 INFO    ] 200
[2026-06-13 10:36:06,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:06,197.197 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:36:06,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:36:06,238.238 INFO    ] No camera update needed
[2026-06-13 10:36:06,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:36:06,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:36:06,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:36:06,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:36:08,286.286 INFO    ] ================================================
[2026-06-13 10:36:08,301.301 INFO    ] Launching Daemon at Sat Jun 13 10:36:08 IST 2026
[2026-06-13 10:36:08,312.312 INFO    ] ================================================
[2026-06-13 10:36:08,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:36:08
[2026-06-13 10:36:08,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:36:09,105.105 INFO    ] Initializing speech engine...
[2026-06-13 10:36:09,116.116 INFO    ] 2026-06-13 10:36:09
[2026-06-13 10:36:09,331.331 INFO    ] 2026-06-13 10:36:09
[2026-06-13 10:36:09,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:09,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:09,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:09,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:09,762.762 INFO    ] time= 13/06/2026 10:36:09
[2026-06-13 10:36:09,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:09,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:09,888.888 INFO    ] No existing commands found in stream
[2026-06-13 10:36:14,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:36:14,902.902 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 10:36:15,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:36:15,767.767 INFO    ] Checking for system updates...
[2026-06-13 10:36:15,789.789 INFO    ] 200
[2026-06-13 10:36:15,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:15,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:15,824.824 INFO    ] No update needed
[2026-06-13 10:36:15,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 10:36:15,845.845 INFO    ] 200
[2026-06-13 10:36:15,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:15,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:36:15,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:15,909.909 INFO    ] No camera update needed
[2026-06-13 10:36:15,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:36:15,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:36:15,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:36:15,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:36:17,956.956 INFO    ] ================================================
[2026-06-13 10:36:17,971.971 INFO    ] Launching Daemon at Sat Jun 13 10:36:17 IST 2026
[2026-06-13 10:36:17,982.982 INFO    ] ================================================
[2026-06-13 10:36:18,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:36:18
[2026-06-13 10:36:18,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:36:18,812.812 INFO    ] Initializing speech engine...
[2026-06-13 10:36:18,822.822 INFO    ] 2026-06-13 10:36:18
[2026-06-13 10:36:19,030.030 INFO    ] 2026-06-13 10:36:19
[2026-06-13 10:36:19,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:19,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:19,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:19,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:19,458.458 INFO    ] time= 13/06/2026 10:36:19
[2026-06-13 10:36:19,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:19,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:19,554.554 INFO    ] No existing commands found in stream
[2026-06-13 10:36:24,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:36:24,564.564 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 10:36:25,474.474 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:36:25,476.476 INFO    ] Checking for system updates...
[2026-06-13 10:36:25,498.498 INFO    ] 200
[2026-06-13 10:36:25,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:25,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:25,532.532 INFO    ] No update needed
[2026-06-13 10:36:25,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 10:36:25,553.553 INFO    ] 200
[2026-06-13 10:36:25,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:25,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:36:25,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:25,618.618 INFO    ] No camera update needed
[2026-06-13 10:36:25,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:36:25,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:36:25,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:36:25,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:36:27,667.667 INFO    ] ================================================
[2026-06-13 10:36:27,683.683 INFO    ] Launching Daemon at Sat Jun 13 10:36:27 IST 2026
[2026-06-13 10:36:27,693.693 INFO    ] ================================================
[2026-06-13 10:36:28,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:36:28
[2026-06-13 10:36:28,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:36:28,487.487 INFO    ] Initializing speech engine...
[2026-06-13 10:36:28,496.496 INFO    ] 2026-06-13 10:36:28
[2026-06-13 10:36:28,701.701 INFO    ] 2026-06-13 10:36:28
[2026-06-13 10:36:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:28,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:28,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:29,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:29,116.116 INFO    ] time= 13/06/2026 10:36:29
[2026-06-13 10:36:29,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:29,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:29,247.247 INFO    ] No existing commands found in stream
[2026-06-13 10:36:34,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:36:34,273.273 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 10:36:38,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:36:38,597.597 INFO    ] Checking for system updates...
[2026-06-13 10:36:38,618.618 INFO    ] 200
[2026-06-13 10:36:38,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:38,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:38,651.651 INFO    ] No update needed
[2026-06-13 10:36:38,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 10:36:38,671.671 INFO    ] 200
[2026-06-13 10:36:38,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:38,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:36:38,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:36:38,733.733 INFO    ] No camera update needed
[2026-06-13 10:36:38,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:36:38,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:36:38,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:36:38,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:36:40,781.781 INFO    ] ================================================
[2026-06-13 10:36:40,796.796 INFO    ] Launching Daemon at Sat Jun 13 10:36:40 IST 2026
[2026-06-13 10:36:40,807.807 INFO    ] ================================================
[2026-06-13 10:36:41,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:36:41
[2026-06-13 10:36:41,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:36:41,604.604 INFO    ] Initializing speech engine...
[2026-06-13 10:36:41,609.609 INFO    ] 2026-06-13 10:36:41
[2026-06-13 10:36:41,813.813 INFO    ] 2026-06-13 10:36:41
[2026-06-13 10:36:41,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:42,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:42,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:42,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:42,222.222 INFO    ] time= 13/06/2026 10:36:42
[2026-06-13 10:36:42,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:42,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:42,328.328 INFO    ] No existing commands found in stream
[2026-06-13 10:36:47,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:36:47,343.343 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 10:36:51,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:36:51,476.476 INFO    ] Checking for system updates...
[2026-06-13 10:36:51,499.499 INFO    ] 200
[2026-06-13 10:36:51,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:51,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:36:51,532.532 INFO    ] No update needed
[2026-06-13 10:36:51,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 10:36:51,554.554 INFO    ] 200
[2026-06-13 10:36:51,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:36:51,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:36:51,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:36:51,619.619 INFO    ] No camera update needed
[2026-06-13 10:36:51,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:36:51,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:36:51,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:36:51,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:36:53,673.673 INFO    ] ================================================
[2026-06-13 10:36:53,689.689 INFO    ] Launching Daemon at Sat Jun 13 10:36:53 IST 2026
[2026-06-13 10:36:53,700.700 INFO    ] ================================================
[2026-06-13 10:36:54,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:36:54
[2026-06-13 10:36:54,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:36:54,522.522 INFO    ] Initializing speech engine...
[2026-06-13 10:36:54,530.530 INFO    ] 2026-06-13 10:36:54
[2026-06-13 10:36:54,734.734 INFO    ] 2026-06-13 10:36:54
[2026-06-13 10:36:54,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:36:54,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:36:54,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:36:55,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:36:55,140.140 INFO    ] time= 13/06/2026 10:36:55
[2026-06-13 10:36:55,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:36:55,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:36:55,256.256 INFO    ] No existing commands found in stream
[2026-06-13 10:37:00,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:00,273.273 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 10:37:03,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:37:03,839.839 INFO    ] Checking for system updates...
[2026-06-13 10:37:03,861.861 INFO    ] 200
[2026-06-13 10:37:03,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:03,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:37:03,897.897 INFO    ] No update needed
[2026-06-13 10:37:03,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 10:37:03,921.921 INFO    ] 200
[2026-06-13 10:37:03,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:03,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:37:03,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:37:03,992.992 INFO    ] No camera update needed
[2026-06-13 10:37:03,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:37:03,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:37:03,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:37:04,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:37:06,042.042 INFO    ] ================================================
[2026-06-13 10:37:06,057.057 INFO    ] Launching Daemon at Sat Jun 13 10:37:06 IST 2026
[2026-06-13 10:37:06,068.068 INFO    ] ================================================
[2026-06-13 10:37:06,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:37:06
[2026-06-13 10:37:06,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:37:06,913.913 INFO    ] Initializing speech engine...
[2026-06-13 10:37:06,919.919 INFO    ] 2026-06-13 10:37:06
[2026-06-13 10:37:07,128.128 INFO    ] 2026-06-13 10:37:07
[2026-06-13 10:37:07,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:37:07,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:37:07,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:37:07,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:37:07,552.552 INFO    ] time= 13/06/2026 10:37:07
[2026-06-13 10:37:07,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:37:07,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:37:07,649.649 INFO    ] No existing commands found in stream
[2026-06-13 10:37:12,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:12,662.662 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 10:37:13,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:37:13,168.168 INFO    ] Checking for system updates...
[2026-06-13 10:37:13,189.189 INFO    ] 200
[2026-06-13 10:37:13,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:13,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:37:13,223.223 INFO    ] No update needed
[2026-06-13 10:37:13,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 10:37:13,244.244 INFO    ] 200
[2026-06-13 10:37:13,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:13,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:37:13,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:37:13,311.311 INFO    ] No camera update needed
[2026-06-13 10:37:13,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:37:13,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:37:13,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:37:13,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:37:15,358.358 INFO    ] ================================================
[2026-06-13 10:37:15,373.373 INFO    ] Launching Daemon at Sat Jun 13 10:37:15 IST 2026
[2026-06-13 10:37:15,384.384 INFO    ] ================================================
[2026-06-13 10:37:15,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:37:15
[2026-06-13 10:37:16,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:37:16,170.170 INFO    ] Initializing speech engine...
[2026-06-13 10:37:16,177.177 INFO    ] 2026-06-13 10:37:16
[2026-06-13 10:37:16,390.390 INFO    ] 2026-06-13 10:37:16
[2026-06-13 10:37:16,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:37:16,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:37:16,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:37:16,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:37:16,796.796 INFO    ] time= 13/06/2026 10:37:16
[2026-06-13 10:37:16,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:37:16,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:37:16,913.913 INFO    ] No existing commands found in stream
[2026-06-13 10:37:21,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:21,925.925 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 10:37:25,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:37:25,866.866 INFO    ] Checking for system updates...
[2026-06-13 10:37:25,909.909 INFO    ] 200
[2026-06-13 10:37:25,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:25,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:37:25,945.945 INFO    ] No update needed
[2026-06-13 10:37:25,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 10:37:25,968.968 INFO    ] 200
[2026-06-13 10:37:25,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:25,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:37:26,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:37:26,029.029 INFO    ] No camera update needed
[2026-06-13 10:37:26,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:37:26,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:37:26,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:37:26,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:37:28,076.076 INFO    ] ================================================
[2026-06-13 10:37:28,091.091 INFO    ] Launching Daemon at Sat Jun 13 10:37:28 IST 2026
[2026-06-13 10:37:28,102.102 INFO    ] ================================================
[2026-06-13 10:37:28,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:37:28
[2026-06-13 10:37:28,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:37:28,903.903 INFO    ] Initializing speech engine...
[2026-06-13 10:37:28,907.907 INFO    ] 2026-06-13 10:37:28
[2026-06-13 10:37:29,135.135 INFO    ] 2026-06-13 10:37:29
[2026-06-13 10:37:29,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:37:29,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:37:29,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:37:29,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:37:29,543.543 INFO    ] time= 13/06/2026 10:37:29
[2026-06-13 10:37:29,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:37:29,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:37:29,686.686 INFO    ] No existing commands found in stream
[2026-06-13 10:37:34,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:34,698.698 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 10:37:37,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:37:37,610.610 INFO    ] Checking for system updates...
[2026-06-13 10:37:37,631.631 INFO    ] 200
[2026-06-13 10:37:37,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:37,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:37:37,665.665 INFO    ] No update needed
[2026-06-13 10:37:37,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 10:37:37,689.689 INFO    ] 200
[2026-06-13 10:37:37,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:37,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:37:37,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:37:37,752.752 INFO    ] No camera update needed
[2026-06-13 10:37:37,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:37:37,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:37:37,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:37:37,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:37:39,799.799 INFO    ] ================================================
[2026-06-13 10:37:39,814.814 INFO    ] Launching Daemon at Sat Jun 13 10:37:39 IST 2026
[2026-06-13 10:37:39,825.825 INFO    ] ================================================
[2026-06-13 10:37:40,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:37:40
[2026-06-13 10:37:40,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:37:40,598.598 INFO    ] Initializing speech engine...
[2026-06-13 10:37:40,611.611 INFO    ] 2026-06-13 10:37:40
[2026-06-13 10:37:40,826.826 INFO    ] 2026-06-13 10:37:40
[2026-06-13 10:37:40,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:37:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:37:41,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:37:41,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:37:41,240.240 INFO    ] time= 13/06/2026 10:37:41
[2026-06-13 10:37:41,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:37:41,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:37:41,375.375 INFO    ] No existing commands found in stream
[2026-06-13 10:37:46,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:46,389.389 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 10:37:49,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:37:49,030.030 INFO    ] Checking for system updates...
[2026-06-13 10:37:49,051.051 INFO    ] 200
[2026-06-13 10:37:49,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:49,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:37:49,086.086 INFO    ] No update needed
[2026-06-13 10:37:49,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 10:37:49,109.109 INFO    ] 200
[2026-06-13 10:37:49,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:37:49,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:37:49,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:37:49,273.273 INFO    ] No camera update needed
[2026-06-13 10:37:49,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:37:49,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:37:49,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:37:49,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:37:51,320.320 INFO    ] ================================================
[2026-06-13 10:37:51,335.335 INFO    ] Launching Daemon at Sat Jun 13 10:37:51 IST 2026
[2026-06-13 10:37:51,346.346 INFO    ] ================================================
[2026-06-13 10:37:51,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:37:51
[2026-06-13 10:37:52,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:37:52,148.148 INFO    ] Initializing speech engine...
[2026-06-13 10:37:52,152.152 INFO    ] 2026-06-13 10:37:52
[2026-06-13 10:37:52,370.370 INFO    ] 2026-06-13 10:37:52
[2026-06-13 10:37:52,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:37:52,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:37:52,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:37:52,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:37:52,786.786 INFO    ] time= 13/06/2026 10:37:52
[2026-06-13 10:37:52,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:37:52,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:37:52,893.893 INFO    ] No existing commands found in stream
[2026-06-13 10:37:57,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:37:57,905.905 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 10:38:00,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:38:00,141.141 INFO    ] Checking for system updates...
[2026-06-13 10:38:00,163.163 INFO    ] 200
[2026-06-13 10:38:00,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:00,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:00,196.196 INFO    ] No update needed
[2026-06-13 10:38:00,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:00,216.216 INFO    ] 200
[2026-06-13 10:38:00,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:00,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:00,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:00,282.282 INFO    ] No camera update needed
[2026-06-13 10:38:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:00,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:00,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:00,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:38:02,325.325 INFO    ] ================================================
[2026-06-13 10:38:02,335.335 INFO    ] Launching Daemon at Sat Jun 13 10:38:02 IST 2026
[2026-06-13 10:38:02,345.345 INFO    ] ================================================
[2026-06-13 10:38:02,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:38:02
[2026-06-13 10:38:03,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:38:03,260.260 INFO    ] Initializing speech engine...
[2026-06-13 10:38:03,270.270 INFO    ] 2026-06-13 10:38:03
[2026-06-13 10:38:03,473.473 INFO    ] 2026-06-13 10:38:03
[2026-06-13 10:38:03,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:38:03,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:38:03,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:38:03,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:38:03,755.755 INFO    ] time= 13/06/2026 10:38:03
[2026-06-13 10:38:03,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:38:03,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:38:03,852.852 INFO    ] No existing commands found in stream
[2026-06-13 10:38:08,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:38:08,889.889 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 10:38:11,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:38:11,996.996 INFO    ] Checking for system updates...
[2026-06-13 10:38:12,017.017 INFO    ] 200
[2026-06-13 10:38:12,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:12,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:12,052.052 INFO    ] No update needed
[2026-06-13 10:38:12,054.054 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:12,074.074 INFO    ] 200
[2026-06-13 10:38:12,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:12,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:12,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:12,138.138 INFO    ] No camera update needed
[2026-06-13 10:38:12,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:12,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:12,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:12,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:38:14,185.185 INFO    ] ================================================
[2026-06-13 10:38:14,201.201 INFO    ] Launching Daemon at Sat Jun 13 10:38:14 IST 2026
[2026-06-13 10:38:14,212.212 INFO    ] ================================================
[2026-06-13 10:38:14,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:38:14
[2026-06-13 10:38:14,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:38:15,009.009 INFO    ] Initializing speech engine...
[2026-06-13 10:38:15,016.016 INFO    ] 2026-06-13 10:38:15
[2026-06-13 10:38:15,241.241 INFO    ] 2026-06-13 10:38:15
[2026-06-13 10:38:15,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:38:15,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:38:15,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:38:15,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:38:15,658.658 INFO    ] time= 13/06/2026 10:38:15
[2026-06-13 10:38:15,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:38:15,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:38:15,793.793 INFO    ] No existing commands found in stream
[2026-06-13 10:38:20,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:38:20,806.806 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 10:38:23,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:38:23,477.477 INFO    ] Checking for system updates...
[2026-06-13 10:38:23,498.498 INFO    ] 200
[2026-06-13 10:38:23,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:23,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:23,532.532 INFO    ] No update needed
[2026-06-13 10:38:23,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:23,552.552 INFO    ] 200
[2026-06-13 10:38:23,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:23,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:23,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:23,620.620 INFO    ] No camera update needed
[2026-06-13 10:38:23,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:23,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:23,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:23,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:38:25,667.667 INFO    ] ================================================
[2026-06-13 10:38:25,682.682 INFO    ] Launching Daemon at Sat Jun 13 10:38:25 IST 2026
[2026-06-13 10:38:25,693.693 INFO    ] ================================================
[2026-06-13 10:38:26,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:38:26
[2026-06-13 10:38:26,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:38:26,485.485 INFO    ] Initializing speech engine...
[2026-06-13 10:38:26,489.489 INFO    ] 2026-06-13 10:38:26
[2026-06-13 10:38:26,692.692 INFO    ] 2026-06-13 10:38:26
[2026-06-13 10:38:26,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:38:26,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:38:26,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:38:27,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:38:27,115.115 INFO    ] time= 13/06/2026 10:38:27
[2026-06-13 10:38:27,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:38:27,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:38:27,217.217 INFO    ] No existing commands found in stream
[2026-06-13 10:38:32,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:38:32,229.229 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 10:38:36,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:38:36,100.100 INFO    ] Checking for system updates...
[2026-06-13 10:38:36,120.120 INFO    ] 200
[2026-06-13 10:38:36,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:36,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:36,153.153 INFO    ] No update needed
[2026-06-13 10:38:36,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:36,174.174 INFO    ] 200
[2026-06-13 10:38:36,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:36,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:36,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:36,237.237 INFO    ] No camera update needed
[2026-06-13 10:38:36,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:36,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:36,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:36,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:38:38,286.286 INFO    ] ================================================
[2026-06-13 10:38:38,301.301 INFO    ] Launching Daemon at Sat Jun 13 10:38:38 IST 2026
[2026-06-13 10:38:38,312.312 INFO    ] ================================================
[2026-06-13 10:38:38,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:38:38
[2026-06-13 10:38:39,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:38:39,292.292 INFO    ] Initializing speech engine...
[2026-06-13 10:38:39,307.307 INFO    ] 2026-06-13 10:38:39
[2026-06-13 10:38:39,594.594 INFO    ] 2026-06-13 10:38:39
[2026-06-13 10:38:39,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:38:39,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:38:39,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:38:39,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:38:39,969.969 INFO    ] time= 13/06/2026 10:38:39
[2026-06-13 10:38:39,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:38:40,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:38:40,092.092 INFO    ] No existing commands found in stream
[2026-06-13 10:38:45,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:38:45,107.107 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 10:38:46,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:38:46,296.296 INFO    ] Checking for system updates...
[2026-06-13 10:38:46,319.319 INFO    ] 200
[2026-06-13 10:38:46,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:46,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:38:46,357.357 INFO    ] No update needed
[2026-06-13 10:38:46,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:46,382.382 INFO    ] 200
[2026-06-13 10:38:46,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:46,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:46,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:46,453.453 INFO    ] No camera update needed
[2026-06-13 10:38:46,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:46,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:46,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:46,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:38:48,489.489 INFO    ] ================================================
[2026-06-13 10:38:48,498.498 INFO    ] Launching Daemon at Sat Jun 13 10:38:48 IST 2026
[2026-06-13 10:38:48,505.505 INFO    ] ================================================
[2026-06-13 10:38:48,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:38:48
[2026-06-13 10:38:49,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:38:49,745.745 INFO    ] Initializing speech engine...
[2026-06-13 10:38:49,754.754 INFO    ] 2026-06-13 10:38:49
[2026-06-13 10:38:50,053.053 INFO    ] 2026-06-13 10:38:50
[2026-06-13 10:38:50,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:38:50,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:38:50,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:38:50,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:38:50,422.422 INFO    ] time= 13/06/2026 10:38:50
[2026-06-13 10:38:50,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:38:50,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:38:50,503.503 INFO    ] No existing commands found in stream
[2026-06-13 10:38:55,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:38:55,519.519 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 10:38:59,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:38:59,146.146 INFO    ] Checking for system updates...
[2026-06-13 10:38:59,167.167 INFO    ] 200
[2026-06-13 10:38:59,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:59,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:59,200.200 INFO    ] No update needed
[2026-06-13 10:38:59,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 10:38:59,221.221 INFO    ] 200
[2026-06-13 10:38:59,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:38:59,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:38:59,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:38:59,286.286 INFO    ] No camera update needed
[2026-06-13 10:38:59,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:38:59,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:38:59,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:38:59,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:01,363.363 INFO    ] ================================================
[2026-06-13 10:39:01,416.416 INFO    ] Launching Daemon at Sat Jun 13 10:39:01 IST 2026
[2026-06-13 10:39:01,435.435 INFO    ] ================================================
[2026-06-13 10:39:02,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:02
[2026-06-13 10:39:02,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:03,038.038 INFO    ] Initializing speech engine...
[2026-06-13 10:39:03,056.056 INFO    ] 2026-06-13 10:39:03
[2026-06-13 10:39:03,332.332 INFO    ] 2026-06-13 10:39:03
[2026-06-13 10:39:03,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:39:03,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:39:03,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:39:03,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:39:03,651.651 INFO    ] time= 13/06/2026 10:39:03
[2026-06-13 10:39:03,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:39:03,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:39:03,722.722 INFO    ] No existing commands found in stream
[2026-06-13 10:39:08,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:39:08,737.737 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 10:39:12,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:39:12,059.059 INFO    ] Checking for system updates...
[2026-06-13 10:39:12,082.082 INFO    ] 200
[2026-06-13 10:39:12,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:12,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:12,115.115 INFO    ] No update needed
[2026-06-13 10:39:12,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 10:39:12,136.136 INFO    ] 200
[2026-06-13 10:39:12,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:12,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:39:12,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:12,205.205 INFO    ] No camera update needed
[2026-06-13 10:39:12,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:39:12,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:39:12,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:39:12,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:14,253.253 INFO    ] ================================================
[2026-06-13 10:39:14,268.268 INFO    ] Launching Daemon at Sat Jun 13 10:39:14 IST 2026
[2026-06-13 10:39:14,278.278 INFO    ] ================================================
[2026-06-13 10:39:14,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:14
[2026-06-13 10:39:14,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:15,122.122 INFO    ] Initializing speech engine...
[2026-06-13 10:39:15,127.127 INFO    ] 2026-06-13 10:39:15
[2026-06-13 10:39:15,334.334 INFO    ] 2026-06-13 10:39:15
[2026-06-13 10:39:15,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:39:15,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:39:15,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:39:15,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:39:15,755.755 INFO    ] time= 13/06/2026 10:39:15
[2026-06-13 10:39:15,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:39:15,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:39:15,852.852 INFO    ] No existing commands found in stream
[2026-06-13 10:39:20,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:39:20,870.870 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 10:39:25,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:39:25,196.196 INFO    ] Checking for system updates...
[2026-06-13 10:39:25,218.218 INFO    ] 200
[2026-06-13 10:39:25,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:25,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:25,253.253 INFO    ] No update needed
[2026-06-13 10:39:25,254.254 INFO    ] Checking for camera pi updates...
[2026-06-13 10:39:25,274.274 INFO    ] 200
[2026-06-13 10:39:25,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:25,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:39:25,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:25,340.340 INFO    ] No camera update needed
[2026-06-13 10:39:25,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:39:25,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:39:25,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:39:25,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:27,389.389 INFO    ] ================================================
[2026-06-13 10:39:27,405.405 INFO    ] Launching Daemon at Sat Jun 13 10:39:27 IST 2026
[2026-06-13 10:39:27,416.416 INFO    ] ================================================
[2026-06-13 10:39:27,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:27
[2026-06-13 10:39:28,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:28,218.218 INFO    ] Initializing speech engine...
[2026-06-13 10:39:28,223.223 INFO    ] 2026-06-13 10:39:28
[2026-06-13 10:39:28,425.425 INFO    ] 2026-06-13 10:39:28
[2026-06-13 10:39:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:39:28,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:39:28,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:39:28,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:39:28,834.834 INFO    ] time= 13/06/2026 10:39:28
[2026-06-13 10:39:28,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:39:28,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:39:28,938.938 INFO    ] No existing commands found in stream
[2026-06-13 10:39:33,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:39:33,955.955 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 10:39:35,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:39:35,266.266 INFO    ] Checking for system updates...
[2026-06-13 10:39:35,287.287 INFO    ] 200
[2026-06-13 10:39:35,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:35,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:39:35,321.321 INFO    ] No update needed
[2026-06-13 10:39:35,322.322 INFO    ] Checking for camera pi updates...
[2026-06-13 10:39:35,342.342 INFO    ] 200
[2026-06-13 10:39:35,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:35,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:39:35,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:39:35,408.408 INFO    ] No camera update needed
[2026-06-13 10:39:35,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:39:35,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:39:35,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:39:35,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:37,455.455 INFO    ] ================================================
[2026-06-13 10:39:37,471.471 INFO    ] Launching Daemon at Sat Jun 13 10:39:37 IST 2026
[2026-06-13 10:39:37,482.482 INFO    ] ================================================
[2026-06-13 10:39:37,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:37
[2026-06-13 10:39:38,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:38,278.278 INFO    ] Initializing speech engine...
[2026-06-13 10:39:38,288.288 INFO    ] 2026-06-13 10:39:38
[2026-06-13 10:39:38,492.492 INFO    ] 2026-06-13 10:39:38
[2026-06-13 10:39:38,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:39:38,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:39:38,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:39:38,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:39:38,902.902 INFO    ] time= 13/06/2026 10:39:38
[2026-06-13 10:39:38,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:39:38,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:39:39,007.007 INFO    ] No existing commands found in stream
[2026-06-13 10:39:44,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:39:44,021.021 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 10:39:46,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:39:46,485.485 INFO    ] Checking for system updates...
[2026-06-13 10:39:46,507.507 INFO    ] 200
[2026-06-13 10:39:46,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:46,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:39:46,540.540 INFO    ] No update needed
[2026-06-13 10:39:46,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 10:39:46,561.561 INFO    ] 200
[2026-06-13 10:39:46,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:46,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:39:46,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:39:46,625.625 INFO    ] No camera update needed
[2026-06-13 10:39:46,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:39:46,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:39:46,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:39:46,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:48,675.675 INFO    ] ================================================
[2026-06-13 10:39:48,690.690 INFO    ] Launching Daemon at Sat Jun 13 10:39:48 IST 2026
[2026-06-13 10:39:48,701.701 INFO    ] ================================================
[2026-06-13 10:39:49,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:49
[2026-06-13 10:39:49,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:49,590.590 INFO    ] Initializing speech engine...
[2026-06-13 10:39:49,597.597 INFO    ] 2026-06-13 10:39:49
[2026-06-13 10:39:49,792.792 INFO    ] 2026-06-13 10:39:49
[2026-06-13 10:39:49,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:39:50,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:39:50,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:39:50,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:39:50,227.227 INFO    ] time= 13/06/2026 10:39:50
[2026-06-13 10:39:50,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:39:50,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:39:50,338.338 INFO    ] No existing commands found in stream
[2026-06-13 10:39:55,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:39:55,355.355 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 10:39:56,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:39:56,092.092 INFO    ] Checking for system updates...
[2026-06-13 10:39:56,115.115 INFO    ] 200
[2026-06-13 10:39:56,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:56,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:56,152.152 INFO    ] No update needed
[2026-06-13 10:39:56,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 10:39:56,173.173 INFO    ] 200
[2026-06-13 10:39:56,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:39:56,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:39:56,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:39:56,339.339 INFO    ] No camera update needed
[2026-06-13 10:39:56,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:39:56,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:39:56,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:39:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:39:58,383.383 INFO    ] ================================================
[2026-06-13 10:39:58,400.400 INFO    ] Launching Daemon at Sat Jun 13 10:39:58 IST 2026
[2026-06-13 10:39:58,411.411 INFO    ] ================================================
[2026-06-13 10:39:59,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:39:59
[2026-06-13 10:39:59,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:39:59,911.911 INFO    ] Initializing speech engine...
[2026-06-13 10:39:59,921.921 INFO    ] 2026-06-13 10:39:59
[2026-06-13 10:40:00,195.195 INFO    ] 2026-06-13 10:40:00
[2026-06-13 10:40:00,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:00,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:00,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:00,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:00,553.553 INFO    ] time= 13/06/2026 10:40:00
[2026-06-13 10:40:00,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:00,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:00,634.634 INFO    ] No existing commands found in stream
[2026-06-13 10:40:05,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:40:05,649.649 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 10:40:09,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:40:09,084.084 INFO    ] Checking for system updates...
[2026-06-13 10:40:09,122.122 INFO    ] 200
[2026-06-13 10:40:09,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:09,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:40:09,171.171 INFO    ] No update needed
[2026-06-13 10:40:09,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 10:40:09,197.197 INFO    ] 200
[2026-06-13 10:40:09,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:09,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:40:09,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:40:09,259.259 INFO    ] No camera update needed
[2026-06-13 10:40:09,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:40:09,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:40:09,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:40:09,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:40:11,306.306 INFO    ] ================================================
[2026-06-13 10:40:11,321.321 INFO    ] Launching Daemon at Sat Jun 13 10:40:11 IST 2026
[2026-06-13 10:40:11,332.332 INFO    ] ================================================
[2026-06-13 10:40:11,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:40:11
[2026-06-13 10:40:11,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:40:12,125.125 INFO    ] Initializing speech engine...
[2026-06-13 10:40:12,136.136 INFO    ] 2026-06-13 10:40:12
[2026-06-13 10:40:12,340.340 INFO    ] 2026-06-13 10:40:12
[2026-06-13 10:40:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:12,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:12,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:12,742.742 INFO    ] time= 13/06/2026 10:40:12
[2026-06-13 10:40:12,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:12,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:12,852.852 INFO    ] No existing commands found in stream
[2026-06-13 10:40:17,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:40:17,863.863 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 10:40:18,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:40:18,195.195 INFO    ] Checking for system updates...
[2026-06-13 10:40:18,217.217 INFO    ] 200
[2026-06-13 10:40:18,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:18,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:40:18,250.250 INFO    ] No update needed
[2026-06-13 10:40:18,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 10:40:18,273.273 INFO    ] 200
[2026-06-13 10:40:18,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:18,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:40:18,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:40:18,338.338 INFO    ] No camera update needed
[2026-06-13 10:40:18,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:40:18,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:40:18,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:40:18,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:40:20,386.386 INFO    ] ================================================
[2026-06-13 10:40:20,401.401 INFO    ] Launching Daemon at Sat Jun 13 10:40:20 IST 2026
[2026-06-13 10:40:20,412.412 INFO    ] ================================================
[2026-06-13 10:40:20,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:40:20
[2026-06-13 10:40:21,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:40:21,202.202 INFO    ] Initializing speech engine...
[2026-06-13 10:40:21,207.207 INFO    ] 2026-06-13 10:40:21
[2026-06-13 10:40:21,409.409 INFO    ] 2026-06-13 10:40:21
[2026-06-13 10:40:21,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:21,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:21,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:21,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:21,814.814 INFO    ] time= 13/06/2026 10:40:21
[2026-06-13 10:40:21,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:21,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:21,923.923 INFO    ] No existing commands found in stream
[2026-06-13 10:40:26,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:40:26,936.936 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 10:40:29,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:40:29,115.115 INFO    ] Checking for system updates...
[2026-06-13 10:40:29,137.137 INFO    ] 200
[2026-06-13 10:40:29,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:29,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:40:29,171.171 INFO    ] No update needed
[2026-06-13 10:40:29,172.172 INFO    ] Checking for camera pi updates...
[2026-06-13 10:40:29,191.191 INFO    ] 200
[2026-06-13 10:40:29,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:29,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:40:29,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:40:29,254.254 INFO    ] No camera update needed
[2026-06-13 10:40:29,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:40:29,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:40:29,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:40:29,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:40:31,302.302 INFO    ] ================================================
[2026-06-13 10:40:31,317.317 INFO    ] Launching Daemon at Sat Jun 13 10:40:31 IST 2026
[2026-06-13 10:40:31,329.329 INFO    ] ================================================
[2026-06-13 10:40:31,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:40:31
[2026-06-13 10:40:32,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:40:32,693.693 INFO    ] Initializing speech engine...
[2026-06-13 10:40:32,717.717 INFO    ] 2026-06-13 10:40:32
[2026-06-13 10:40:32,974.974 INFO    ] 2026-06-13 10:40:32
[2026-06-13 10:40:33,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:33,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:33,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:33,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:33,331.331 INFO    ] time= 13/06/2026 10:40:33
[2026-06-13 10:40:33,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:33,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:33,431.431 INFO    ] No existing commands found in stream
[2026-06-13 10:40:38,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:40:38,449.449 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 10:40:39,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:40:39,481.481 INFO    ] Checking for system updates...
[2026-06-13 10:40:39,502.502 INFO    ] 200
[2026-06-13 10:40:39,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:39,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:40:39,535.535 INFO    ] No update needed
[2026-06-13 10:40:39,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 10:40:39,556.556 INFO    ] 200
[2026-06-13 10:40:39,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:39,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:40:39,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:40:39,621.621 INFO    ] No camera update needed
[2026-06-13 10:40:39,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:40:39,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:40:39,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:40:39,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:40:41,669.669 INFO    ] ================================================
[2026-06-13 10:40:41,685.685 INFO    ] Launching Daemon at Sat Jun 13 10:40:41 IST 2026
[2026-06-13 10:40:41,695.695 INFO    ] ================================================
[2026-06-13 10:40:42,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:40:42
[2026-06-13 10:40:42,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:40:42,709.709 INFO    ] Initializing speech engine...
[2026-06-13 10:40:42,714.714 INFO    ] 2026-06-13 10:40:42
[2026-06-13 10:40:42,979.979 INFO    ] 2026-06-13 10:40:42
[2026-06-13 10:40:43,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:43,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:43,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:43,406.406 INFO    ] time= 13/06/2026 10:40:43
[2026-06-13 10:40:43,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:43,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:43,586.586 INFO    ] No existing commands found in stream
[2026-06-13 10:40:48,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:40:48,601.601 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 10:40:52,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:40:52,443.443 INFO    ] Checking for system updates...
[2026-06-13 10:40:52,464.464 INFO    ] 200
[2026-06-13 10:40:52,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:52,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:40:52,499.499 INFO    ] No update needed
[2026-06-13 10:40:52,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 10:40:52,519.519 INFO    ] 200
[2026-06-13 10:40:52,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:40:52,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:40:52,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:40:52,583.583 INFO    ] No camera update needed
[2026-06-13 10:40:52,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:40:52,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:40:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:40:52,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:40:54,629.629 INFO    ] ================================================
[2026-06-13 10:40:54,644.644 INFO    ] Launching Daemon at Sat Jun 13 10:40:54 IST 2026
[2026-06-13 10:40:54,654.654 INFO    ] ================================================
[2026-06-13 10:40:55,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:40:55
[2026-06-13 10:40:55,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:40:55,464.464 INFO    ] Initializing speech engine...
[2026-06-13 10:40:55,475.475 INFO    ] 2026-06-13 10:40:55
[2026-06-13 10:40:55,680.680 INFO    ] 2026-06-13 10:40:55
[2026-06-13 10:40:55,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:40:55,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:40:55,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:40:56,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:40:56,082.082 INFO    ] time= 13/06/2026 10:40:56
[2026-06-13 10:40:56,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:40:56,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:40:56,192.192 INFO    ] No existing commands found in stream
[2026-06-13 10:41:01,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:41:01,209.209 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 10:41:06,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:41:06,370.370 INFO    ] Checking for system updates...
[2026-06-13 10:41:06,407.407 INFO    ] 200
[2026-06-13 10:41:06,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:06,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:06,473.473 INFO    ] No update needed
[2026-06-13 10:41:06,475.475 INFO    ] Checking for camera pi updates...
[2026-06-13 10:41:06,496.496 INFO    ] 200
[2026-06-13 10:41:06,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:06,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:41:06,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:06,561.561 INFO    ] No camera update needed
[2026-06-13 10:41:06,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:41:06,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:41:06,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:41:06,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:41:08,607.607 INFO    ] ================================================
[2026-06-13 10:41:08,623.623 INFO    ] Launching Daemon at Sat Jun 13 10:41:08 IST 2026
[2026-06-13 10:41:08,634.634 INFO    ] ================================================
[2026-06-13 10:41:08,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:41:08
[2026-06-13 10:41:09,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:41:09,454.454 INFO    ] Initializing speech engine...
[2026-06-13 10:41:09,460.460 INFO    ] 2026-06-13 10:41:09
[2026-06-13 10:41:09,663.663 INFO    ] 2026-06-13 10:41:09
[2026-06-13 10:41:09,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:41:09,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:41:09,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:41:10,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:41:10,070.070 INFO    ] time= 13/06/2026 10:41:10
[2026-06-13 10:41:10,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:41:10,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:41:10,181.181 INFO    ] No existing commands found in stream
[2026-06-13 10:41:15,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:41:15,193.193 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 10:41:19,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:41:19,412.412 INFO    ] Checking for system updates...
[2026-06-13 10:41:19,432.432 INFO    ] 200
[2026-06-13 10:41:19,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:19,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:41:19,465.465 INFO    ] No update needed
[2026-06-13 10:41:19,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 10:41:19,488.488 INFO    ] 200
[2026-06-13 10:41:19,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:19,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:41:19,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:41:19,549.549 INFO    ] No camera update needed
[2026-06-13 10:41:19,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:41:19,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:41:19,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:41:19,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:41:21,599.599 INFO    ] ================================================
[2026-06-13 10:41:21,614.614 INFO    ] Launching Daemon at Sat Jun 13 10:41:21 IST 2026
[2026-06-13 10:41:21,624.624 INFO    ] ================================================
[2026-06-13 10:41:21,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:41:21
[2026-06-13 10:41:22,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:41:22,416.416 INFO    ] Initializing speech engine...
[2026-06-13 10:41:22,426.426 INFO    ] 2026-06-13 10:41:22
[2026-06-13 10:41:22,630.630 INFO    ] 2026-06-13 10:41:22
[2026-06-13 10:41:22,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:41:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:41:22,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:41:22,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:41:23,048.048 INFO    ] time= 13/06/2026 10:41:22
[2026-06-13 10:41:23,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:41:23,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:41:23,145.145 INFO    ] No existing commands found in stream
[2026-06-13 10:41:28,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:41:28,157.157 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 10:41:32,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:41:32,077.077 INFO    ] Checking for system updates...
[2026-06-13 10:41:32,100.100 INFO    ] 200
[2026-06-13 10:41:32,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:32,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:32,137.137 INFO    ] No update needed
[2026-06-13 10:41:32,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 10:41:32,160.160 INFO    ] 200
[2026-06-13 10:41:32,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:32,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:41:32,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:32,231.231 INFO    ] No camera update needed
[2026-06-13 10:41:32,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:41:32,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:41:32,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:41:32,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:41:34,274.274 INFO    ] ================================================
[2026-06-13 10:41:34,289.289 INFO    ] Launching Daemon at Sat Jun 13 10:41:34 IST 2026
[2026-06-13 10:41:34,300.300 INFO    ] ================================================
[2026-06-13 10:41:34,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:41:34
[2026-06-13 10:41:34,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:41:35,111.111 INFO    ] Initializing speech engine...
[2026-06-13 10:41:35,121.121 INFO    ] 2026-06-13 10:41:35
[2026-06-13 10:41:35,329.329 INFO    ] 2026-06-13 10:41:35
[2026-06-13 10:41:35,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:41:35,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:41:35,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:41:35,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:41:35,751.751 INFO    ] time= 13/06/2026 10:41:35
[2026-06-13 10:41:35,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:41:35,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:41:35,852.852 INFO    ] No existing commands found in stream
[2026-06-13 10:41:40,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:41:40,865.865 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 10:41:44,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:41:44,363.363 INFO    ] Checking for system updates...
[2026-06-13 10:41:44,383.383 INFO    ] 200
[2026-06-13 10:41:44,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:44,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:44,417.417 INFO    ] No update needed
[2026-06-13 10:41:44,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 10:41:44,438.438 INFO    ] 200
[2026-06-13 10:41:44,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:44,465.465 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:41:44,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:41:44,506.506 INFO    ] No camera update needed
[2026-06-13 10:41:44,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:41:44,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:41:44,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:41:44,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:41:46,554.554 INFO    ] ================================================
[2026-06-13 10:41:46,569.569 INFO    ] Launching Daemon at Sat Jun 13 10:41:46 IST 2026
[2026-06-13 10:41:46,580.580 INFO    ] ================================================
[2026-06-13 10:41:46,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:41:46
[2026-06-13 10:41:47,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:41:47,438.438 INFO    ] Initializing speech engine...
[2026-06-13 10:41:47,443.443 INFO    ] 2026-06-13 10:41:47
[2026-06-13 10:41:47,651.651 INFO    ] 2026-06-13 10:41:47
[2026-06-13 10:41:47,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:41:47,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:41:47,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:41:48,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:41:48,074.074 INFO    ] time= 13/06/2026 10:41:48
[2026-06-13 10:41:48,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:41:48,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:41:48,172.172 INFO    ] No existing commands found in stream
[2026-06-13 10:41:53,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:41:53,190.190 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 10:41:56,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:41:56,962.962 INFO    ] Checking for system updates...
[2026-06-13 10:41:56,984.984 INFO    ] 200
[2026-06-13 10:41:56,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:57,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:41:57,018.018 INFO    ] No update needed
[2026-06-13 10:41:57,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 10:41:57,039.039 INFO    ] 200
[2026-06-13 10:41:57,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:41:57,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:41:57,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:41:57,210.210 INFO    ] No camera update needed
[2026-06-13 10:41:57,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:41:57,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:41:57,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:41:57,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:41:59,258.258 INFO    ] ================================================
[2026-06-13 10:41:59,274.274 INFO    ] Launching Daemon at Sat Jun 13 10:41:59 IST 2026
[2026-06-13 10:41:59,284.284 INFO    ] ================================================
[2026-06-13 10:41:59,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:41:59
[2026-06-13 10:41:59,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:00,150.150 INFO    ] Initializing speech engine...
[2026-06-13 10:42:00,155.155 INFO    ] 2026-06-13 10:42:00
[2026-06-13 10:42:00,366.366 INFO    ] 2026-06-13 10:42:00
[2026-06-13 10:42:00,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:00,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:00,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:00,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:00,783.783 INFO    ] time= 13/06/2026 10:42:00
[2026-06-13 10:42:00,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:00,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:00,892.892 INFO    ] No existing commands found in stream
[2026-06-13 10:42:05,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:42:05,909.909 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 10:42:07,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:42:07,446.446 INFO    ] Checking for system updates...
[2026-06-13 10:42:07,467.467 INFO    ] 200
[2026-06-13 10:42:07,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:07,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:07,501.501 INFO    ] No update needed
[2026-06-13 10:42:07,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 10:42:07,522.522 INFO    ] 200
[2026-06-13 10:42:07,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:07,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:42:07,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:07,590.590 INFO    ] No camera update needed
[2026-06-13 10:42:07,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:42:07,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:42:07,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:42:07,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:42:09,640.640 INFO    ] ================================================
[2026-06-13 10:42:09,655.655 INFO    ] Launching Daemon at Sat Jun 13 10:42:09 IST 2026
[2026-06-13 10:42:09,665.665 INFO    ] ================================================
[2026-06-13 10:42:10,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:42:10
[2026-06-13 10:42:10,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:10,473.473 INFO    ] Initializing speech engine...
[2026-06-13 10:42:10,485.485 INFO    ] 2026-06-13 10:42:10
[2026-06-13 10:42:10,693.693 INFO    ] 2026-06-13 10:42:10
[2026-06-13 10:42:10,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:10,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:10,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:11,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:11,109.109 INFO    ] time= 13/06/2026 10:42:11
[2026-06-13 10:42:11,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:11,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:11,214.214 INFO    ] No existing commands found in stream
[2026-06-13 10:42:16,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:42:16,228.228 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 10:42:20,025.025 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:42:20,026.026 INFO    ] Checking for system updates...
[2026-06-13 10:42:20,047.047 INFO    ] 200
[2026-06-13 10:42:20,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:20,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:20,080.080 INFO    ] No update needed
[2026-06-13 10:42:20,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 10:42:20,101.101 INFO    ] 200
[2026-06-13 10:42:20,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:20,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:42:20,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:20,173.173 INFO    ] No camera update needed
[2026-06-13 10:42:20,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:42:20,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:42:20,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:42:20,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:42:22,220.220 INFO    ] ================================================
[2026-06-13 10:42:22,236.236 INFO    ] Launching Daemon at Sat Jun 13 10:42:22 IST 2026
[2026-06-13 10:42:22,247.247 INFO    ] ================================================
[2026-06-13 10:42:22,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:42:22
[2026-06-13 10:42:22,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:23,046.046 INFO    ] Initializing speech engine...
[2026-06-13 10:42:23,052.052 INFO    ] 2026-06-13 10:42:23
[2026-06-13 10:42:23,256.256 INFO    ] 2026-06-13 10:42:23
[2026-06-13 10:42:23,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:23,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:23,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:23,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:23,655.655 INFO    ] time= 13/06/2026 10:42:23
[2026-06-13 10:42:23,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:23,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:23,788.788 INFO    ] No existing commands found in stream
[2026-06-13 10:42:28,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:42:28,811.811 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 10:42:30,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:42:30,851.851 INFO    ] Checking for system updates...
[2026-06-13 10:42:30,872.872 INFO    ] 200
[2026-06-13 10:42:30,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:30,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:30,904.904 INFO    ] No update needed
[2026-06-13 10:42:30,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 10:42:30,927.927 INFO    ] 200
[2026-06-13 10:42:30,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:30,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:42:30,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:42:30,995.995 INFO    ] No camera update needed
[2026-06-13 10:42:30,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:42:30,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:42:31,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:42:31,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:42:33,035.035 INFO    ] ================================================
[2026-06-13 10:42:33,044.044 INFO    ] Launching Daemon at Sat Jun 13 10:42:33 IST 2026
[2026-06-13 10:42:33,050.050 INFO    ] ================================================
[2026-06-13 10:42:33,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:42:33
[2026-06-13 10:42:33,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:33,804.804 INFO    ] Initializing speech engine...
[2026-06-13 10:42:33,809.809 INFO    ] 2026-06-13 10:42:33
[2026-06-13 10:42:34,013.013 INFO    ] 2026-06-13 10:42:33
[2026-06-13 10:42:34,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:34,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:34,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:34,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:34,414.414 INFO    ] time= 13/06/2026 10:42:34
[2026-06-13 10:42:34,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:34,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:34,530.530 INFO    ] No existing commands found in stream
[2026-06-13 10:42:39,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:42:39,543.543 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 10:42:43,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:42:43,196.196 INFO    ] Checking for system updates...
[2026-06-13 10:42:43,218.218 INFO    ] 200
[2026-06-13 10:42:43,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:43,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:43,252.252 INFO    ] No update needed
[2026-06-13 10:42:43,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 10:42:43,273.273 INFO    ] 200
[2026-06-13 10:42:43,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:43,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:42:43,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:43,342.342 INFO    ] No camera update needed
[2026-06-13 10:42:43,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:42:43,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:42:43,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:42:43,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:42:45,389.389 INFO    ] ================================================
[2026-06-13 10:42:45,405.405 INFO    ] Launching Daemon at Sat Jun 13 10:42:45 IST 2026
[2026-06-13 10:42:45,416.416 INFO    ] ================================================
[2026-06-13 10:42:45,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:42:45
[2026-06-13 10:42:46,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:46,222.222 INFO    ] Initializing speech engine...
[2026-06-13 10:42:46,227.227 INFO    ] 2026-06-13 10:42:46
[2026-06-13 10:42:46,434.434 INFO    ] 2026-06-13 10:42:46
[2026-06-13 10:42:46,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:46,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:46,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:46,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:46,845.845 INFO    ] time= 13/06/2026 10:42:46
[2026-06-13 10:42:46,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:46,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:46,952.952 INFO    ] No existing commands found in stream
[2026-06-13 10:42:51,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:42:51,963.963 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 10:42:53,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:42:53,063.063 INFO    ] Checking for system updates...
[2026-06-13 10:42:53,084.084 INFO    ] 200
[2026-06-13 10:42:53,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:53,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:53,118.118 INFO    ] No update needed
[2026-06-13 10:42:53,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 10:42:53,139.139 INFO    ] 200
[2026-06-13 10:42:53,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:42:53,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:42:53,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:42:53,202.202 INFO    ] No camera update needed
[2026-06-13 10:42:53,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:42:53,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:42:53,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:42:53,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:42:55,250.250 INFO    ] ================================================
[2026-06-13 10:42:55,265.265 INFO    ] Launching Daemon at Sat Jun 13 10:42:55 IST 2026
[2026-06-13 10:42:55,276.276 INFO    ] ================================================
[2026-06-13 10:42:55,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:42:55
[2026-06-13 10:42:55,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:42:56,099.099 INFO    ] Initializing speech engine...
[2026-06-13 10:42:56,103.103 INFO    ] 2026-06-13 10:42:56
[2026-06-13 10:42:56,305.305 INFO    ] 2026-06-13 10:42:56
[2026-06-13 10:42:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:42:56,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:42:56,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:42:56,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:42:56,703.703 INFO    ] time= 13/06/2026 10:42:56
[2026-06-13 10:42:56,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:42:56,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:42:56,817.817 INFO    ] No existing commands found in stream
[2026-06-13 10:43:01,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:01,830.830 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 10:43:04,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:43:04,227.227 INFO    ] Checking for system updates...
[2026-06-13 10:43:04,263.263 INFO    ] 200
[2026-06-13 10:43:04,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:04,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:43:04,328.328 INFO    ] No update needed
[2026-06-13 10:43:04,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 10:43:04,364.364 INFO    ] 200
[2026-06-13 10:43:04,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:04,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:43:04,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:43:04,450.450 INFO    ] No camera update needed
[2026-06-13 10:43:04,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:43:04,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:43:04,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:43:04,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:43:06,510.510 INFO    ] ================================================
[2026-06-13 10:43:06,527.527 INFO    ] Launching Daemon at Sat Jun 13 10:43:06 IST 2026
[2026-06-13 10:43:06,540.540 INFO    ] ================================================
[2026-06-13 10:43:06,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:43:06
[2026-06-13 10:43:07,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:43:07,412.412 INFO    ] Initializing speech engine...
[2026-06-13 10:43:07,416.416 INFO    ] 2026-06-13 10:43:07
[2026-06-13 10:43:07,619.619 INFO    ] 2026-06-13 10:43:07
[2026-06-13 10:43:07,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:43:07,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:43:07,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:43:07,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:43:08,031.031 INFO    ] time= 13/06/2026 10:43:07
[2026-06-13 10:43:08,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:43:08,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:43:08,135.135 INFO    ] No existing commands found in stream
[2026-06-13 10:43:13,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:13,149.149 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 10:43:13,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:43:13,715.715 INFO    ] Checking for system updates...
[2026-06-13 10:43:13,737.737 INFO    ] 200
[2026-06-13 10:43:13,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:13,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:13,772.772 INFO    ] No update needed
[2026-06-13 10:43:13,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 10:43:13,793.793 INFO    ] 200
[2026-06-13 10:43:13,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:13,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:43:13,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:13,884.884 INFO    ] No camera update needed
[2026-06-13 10:43:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:43:13,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:43:13,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:43:13,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:43:15,944.944 INFO    ] ================================================
[2026-06-13 10:43:15,960.960 INFO    ] Launching Daemon at Sat Jun 13 10:43:15 IST 2026
[2026-06-13 10:43:15,971.971 INFO    ] ================================================
[2026-06-13 10:43:16,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:43:16
[2026-06-13 10:43:17,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:43:17,170.170 INFO    ] Initializing speech engine...
[2026-06-13 10:43:17,174.174 INFO    ] 2026-06-13 10:43:17
[2026-06-13 10:43:17,366.366 INFO    ] 2026-06-13 10:43:17
[2026-06-13 10:43:17,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:43:17,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:43:17,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:43:17,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:43:17,665.665 INFO    ] time= 13/06/2026 10:43:17
[2026-06-13 10:43:17,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:43:17,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:43:17,797.797 INFO    ] No existing commands found in stream
[2026-06-13 10:43:22,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:22,835.835 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 10:43:24,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:43:24,941.941 INFO    ] Checking for system updates...
[2026-06-13 10:43:24,963.963 INFO    ] 200
[2026-06-13 10:43:24,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:24,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:24,999.999 INFO    ] No update needed
[2026-06-13 10:43:25,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 10:43:25,038.038 INFO    ] 200
[2026-06-13 10:43:25,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:25,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:43:25,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:25,117.117 INFO    ] No camera update needed
[2026-06-13 10:43:25,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:43:25,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:43:25,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:43:25,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:43:27,177.177 INFO    ] ================================================
[2026-06-13 10:43:27,192.192 INFO    ] Launching Daemon at Sat Jun 13 10:43:27 IST 2026
[2026-06-13 10:43:27,203.203 INFO    ] ================================================
[2026-06-13 10:43:27,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:43:27
[2026-06-13 10:43:28,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:43:28,381.381 INFO    ] Initializing speech engine...
[2026-06-13 10:43:28,386.386 INFO    ] 2026-06-13 10:43:28
[2026-06-13 10:43:28,615.615 INFO    ] 2026-06-13 10:43:28
[2026-06-13 10:43:28,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:43:28,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:43:28,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:43:28,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:43:29,015.015 INFO    ] time= 13/06/2026 10:43:28
[2026-06-13 10:43:29,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:43:29,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:43:29,173.173 INFO    ] No existing commands found in stream
[2026-06-13 10:43:34,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:34,187.187 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 10:43:38,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:43:38,420.420 INFO    ] Checking for system updates...
[2026-06-13 10:43:38,443.443 INFO    ] 200
[2026-06-13 10:43:38,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:38,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:38,476.476 INFO    ] No update needed
[2026-06-13 10:43:38,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 10:43:38,498.498 INFO    ] 200
[2026-06-13 10:43:38,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:38,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:43:38,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:38,567.567 INFO    ] No camera update needed
[2026-06-13 10:43:38,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:43:38,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:43:38,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:43:38,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:43:40,616.616 INFO    ] ================================================
[2026-06-13 10:43:40,632.632 INFO    ] Launching Daemon at Sat Jun 13 10:43:40 IST 2026
[2026-06-13 10:43:40,643.643 INFO    ] ================================================
[2026-06-13 10:43:40,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:43:40
[2026-06-13 10:43:41,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:43:41,480.480 INFO    ] Initializing speech engine...
[2026-06-13 10:43:41,491.491 INFO    ] 2026-06-13 10:43:41
[2026-06-13 10:43:41,700.700 INFO    ] 2026-06-13 10:43:41
[2026-06-13 10:43:41,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:43:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:43:41,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:43:42,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:43:42,097.097 INFO    ] time= 13/06/2026 10:43:42
[2026-06-13 10:43:42,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:43:42,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:43:42,223.223 INFO    ] No existing commands found in stream
[2026-06-13 10:43:47,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:47,237.237 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 10:43:50,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:43:50,616.616 INFO    ] Checking for system updates...
[2026-06-13 10:43:50,637.637 INFO    ] 200
[2026-06-13 10:43:50,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:50,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:43:50,671.671 INFO    ] No update needed
[2026-06-13 10:43:50,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 10:43:50,692.692 INFO    ] 200
[2026-06-13 10:43:50,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:43:50,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:43:50,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:43:50,759.759 INFO    ] No camera update needed
[2026-06-13 10:43:50,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:43:50,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:43:50,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:43:50,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:43:52,807.807 INFO    ] ================================================
[2026-06-13 10:43:52,822.822 INFO    ] Launching Daemon at Sat Jun 13 10:43:52 IST 2026
[2026-06-13 10:43:52,833.833 INFO    ] ================================================
[2026-06-13 10:43:53,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:43:53
[2026-06-13 10:43:53,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:43:53,615.615 INFO    ] Initializing speech engine...
[2026-06-13 10:43:53,629.629 INFO    ] 2026-06-13 10:43:53
[2026-06-13 10:43:53,848.848 INFO    ] 2026-06-13 10:43:53
[2026-06-13 10:43:53,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:43:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:43:54,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:43:54,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:43:54,227.227 INFO    ] time= 13/06/2026 10:43:54
[2026-06-13 10:43:54,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:43:54,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:43:54,409.409 INFO    ] No existing commands found in stream
[2026-06-13 10:43:59,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:43:59,423.423 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 10:44:00,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:44:00,092.092 INFO    ] Checking for system updates...
[2026-06-13 10:44:00,112.112 INFO    ] 200
[2026-06-13 10:44:00,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:00,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:00,145.145 INFO    ] No update needed
[2026-06-13 10:44:00,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:00,166.166 INFO    ] 200
[2026-06-13 10:44:00,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:00,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:00,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:00,335.335 INFO    ] No camera update needed
[2026-06-13 10:44:00,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:00,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:00,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:00,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:02,374.374 INFO    ] ================================================
[2026-06-13 10:44:02,383.383 INFO    ] Launching Daemon at Sat Jun 13 10:44:02 IST 2026
[2026-06-13 10:44:02,390.390 INFO    ] ================================================
[2026-06-13 10:44:02,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:02
[2026-06-13 10:44:03,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:03,150.150 INFO    ] Initializing speech engine...
[2026-06-13 10:44:03,158.158 INFO    ] 2026-06-13 10:44:03
[2026-06-13 10:44:03,373.373 INFO    ] 2026-06-13 10:44:03
[2026-06-13 10:44:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:03,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:03,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:03,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:03,744.744 INFO    ] time= 13/06/2026 10:44:03
[2026-06-13 10:44:03,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:03,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:03,896.896 INFO    ] No existing commands found in stream
[2026-06-13 10:44:08,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:44:08,909.909 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 10:44:10,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:44:10,360.360 INFO    ] Checking for system updates...
[2026-06-13 10:44:10,381.381 INFO    ] 200
[2026-06-13 10:44:10,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:10,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:10,415.415 INFO    ] No update needed
[2026-06-13 10:44:10,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:10,437.437 INFO    ] 200
[2026-06-13 10:44:10,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:10,467.467 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:10,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:10,504.504 INFO    ] No camera update needed
[2026-06-13 10:44:10,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:10,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:10,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:10,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:12,551.551 INFO    ] ================================================
[2026-06-13 10:44:12,567.567 INFO    ] Launching Daemon at Sat Jun 13 10:44:12 IST 2026
[2026-06-13 10:44:12,577.577 INFO    ] ================================================
[2026-06-13 10:44:12,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:12
[2026-06-13 10:44:13,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:13,360.360 INFO    ] Initializing speech engine...
[2026-06-13 10:44:13,365.365 INFO    ] 2026-06-13 10:44:13
[2026-06-13 10:44:13,568.568 INFO    ] 2026-06-13 10:44:13
[2026-06-13 10:44:13,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:13,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:13,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:13,960.960 INFO    ] time= 13/06/2026 10:44:13
[2026-06-13 10:44:14,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:14,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:14,080.080 INFO    ] No existing commands found in stream
[2026-06-13 10:44:19,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:44:19,092.092 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 10:44:21,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:44:21,569.569 INFO    ] Checking for system updates...
[2026-06-13 10:44:21,590.590 INFO    ] 200
[2026-06-13 10:44:21,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:21,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:21,623.623 INFO    ] No update needed
[2026-06-13 10:44:21,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:21,643.643 INFO    ] 200
[2026-06-13 10:44:21,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:21,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:21,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:21,706.706 INFO    ] No camera update needed
[2026-06-13 10:44:21,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:21,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:21,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:21,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:23,756.756 INFO    ] ================================================
[2026-06-13 10:44:23,771.771 INFO    ] Launching Daemon at Sat Jun 13 10:44:23 IST 2026
[2026-06-13 10:44:23,781.781 INFO    ] ================================================
[2026-06-13 10:44:24,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:24
[2026-06-13 10:44:24,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:24,551.551 INFO    ] Initializing speech engine...
[2026-06-13 10:44:24,557.557 INFO    ] 2026-06-13 10:44:24
[2026-06-13 10:44:24,759.759 INFO    ] 2026-06-13 10:44:24
[2026-06-13 10:44:24,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:24,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:24,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:25,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:25,176.176 INFO    ] time= 13/06/2026 10:44:25
[2026-06-13 10:44:25,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:25,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:25,272.272 INFO    ] No existing commands found in stream
[2026-06-13 10:44:30,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:44:30,285.285 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 10:44:32,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:44:32,093.093 INFO    ] Checking for system updates...
[2026-06-13 10:44:32,119.119 INFO    ] 200
[2026-06-13 10:44:32,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:32,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:32,157.157 INFO    ] No update needed
[2026-06-13 10:44:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:32,180.180 INFO    ] 200
[2026-06-13 10:44:32,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:32,212.212 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:32,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:32,239.239 INFO    ] No camera update needed
[2026-06-13 10:44:32,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:32,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:32,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:32,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:34,292.292 INFO    ] ================================================
[2026-06-13 10:44:34,307.307 INFO    ] Launching Daemon at Sat Jun 13 10:44:34 IST 2026
[2026-06-13 10:44:34,318.318 INFO    ] ================================================
[2026-06-13 10:44:34,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:34
[2026-06-13 10:44:34,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:35,112.112 INFO    ] Initializing speech engine...
[2026-06-13 10:44:35,121.121 INFO    ] 2026-06-13 10:44:35
[2026-06-13 10:44:35,347.347 INFO    ] 2026-06-13 10:44:35
[2026-06-13 10:44:35,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:35,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:35,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:35,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:35,728.728 INFO    ] time= 13/06/2026 10:44:35
[2026-06-13 10:44:35,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:35,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:35,914.914 INFO    ] No existing commands found in stream
[2026-06-13 10:44:40,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:44:40,931.931 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 10:44:42,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:44:42,358.358 INFO    ] Checking for system updates...
[2026-06-13 10:44:42,379.379 INFO    ] 200
[2026-06-13 10:44:42,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:42,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:44:42,413.413 INFO    ] No update needed
[2026-06-13 10:44:42,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:42,434.434 INFO    ] 200
[2026-06-13 10:44:42,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:42,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:42,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:44:42,501.501 INFO    ] No camera update needed
[2026-06-13 10:44:42,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:42,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:42,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:42,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:44,549.549 INFO    ] ================================================
[2026-06-13 10:44:44,565.565 INFO    ] Launching Daemon at Sat Jun 13 10:44:44 IST 2026
[2026-06-13 10:44:44,576.576 INFO    ] ================================================
[2026-06-13 10:44:44,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:44
[2026-06-13 10:44:45,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:45,361.361 INFO    ] Initializing speech engine...
[2026-06-13 10:44:45,366.366 INFO    ] 2026-06-13 10:44:45
[2026-06-13 10:44:45,571.571 INFO    ] 2026-06-13 10:44:45
[2026-06-13 10:44:45,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:45,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:45,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:45,991.991 INFO    ] time= 13/06/2026 10:44:45
[2026-06-13 10:44:46,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:46,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:46,094.094 INFO    ] No existing commands found in stream
[2026-06-13 10:44:51,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:44:51,108.108 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 10:44:53,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:44:53,006.006 INFO    ] Checking for system updates...
[2026-06-13 10:44:53,026.026 INFO    ] 200
[2026-06-13 10:44:53,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:53,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:44:53,059.059 INFO    ] No update needed
[2026-06-13 10:44:53,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 10:44:53,080.080 INFO    ] 200
[2026-06-13 10:44:53,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:44:53,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:44:53,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:44:53,145.145 INFO    ] No camera update needed
[2026-06-13 10:44:53,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:44:53,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:44:53,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:44:53,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:44:55,193.193 INFO    ] ================================================
[2026-06-13 10:44:55,209.209 INFO    ] Launching Daemon at Sat Jun 13 10:44:55 IST 2026
[2026-06-13 10:44:55,220.220 INFO    ] ================================================
[2026-06-13 10:44:55,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:44:55
[2026-06-13 10:44:55,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:44:56,035.035 INFO    ] Initializing speech engine...
[2026-06-13 10:44:56,048.048 INFO    ] 2026-06-13 10:44:56
[2026-06-13 10:44:56,255.255 INFO    ] 2026-06-13 10:44:56
[2026-06-13 10:44:56,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:44:56,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:44:56,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:44:56,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:44:56,661.661 INFO    ] time= 13/06/2026 10:44:56
[2026-06-13 10:44:56,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:44:56,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:44:56,769.769 INFO    ] No existing commands found in stream
[2026-06-13 10:45:01,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:45:01,788.788 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 10:45:05,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:45:05,581.581 INFO    ] Checking for system updates...
[2026-06-13 10:45:05,602.602 INFO    ] 200
[2026-06-13 10:45:05,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:05,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:45:05,637.637 INFO    ] No update needed
[2026-06-13 10:45:05,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 10:45:05,659.659 INFO    ] 200
[2026-06-13 10:45:05,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:05,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:45:05,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:45:05,730.730 INFO    ] No camera update needed
[2026-06-13 10:45:05,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:45:05,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:45:05,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:45:05,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:45:07,779.779 INFO    ] ================================================
[2026-06-13 10:45:07,794.794 INFO    ] Launching Daemon at Sat Jun 13 10:45:07 IST 2026
[2026-06-13 10:45:07,809.809 INFO    ] ================================================
[2026-06-13 10:45:08,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:45:08
[2026-06-13 10:45:08,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:45:08,632.632 INFO    ] Initializing speech engine...
[2026-06-13 10:45:08,635.635 INFO    ] 2026-06-13 10:45:08
[2026-06-13 10:45:08,850.850 INFO    ] 2026-06-13 10:45:08
[2026-06-13 10:45:08,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:45:09,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:45:09,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:45:09,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:45:09,250.250 INFO    ] time= 13/06/2026 10:45:09
[2026-06-13 10:45:09,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:45:09,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:45:09,364.364 INFO    ] No existing commands found in stream
[2026-06-13 10:45:14,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:45:14,378.378 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 10:45:17,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:45:17,631.631 INFO    ] Checking for system updates...
[2026-06-13 10:45:17,653.653 INFO    ] 200
[2026-06-13 10:45:17,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:17,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:17,688.688 INFO    ] No update needed
[2026-06-13 10:45:17,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 10:45:17,711.711 INFO    ] 200
[2026-06-13 10:45:17,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:17,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:45:17,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:17,774.774 INFO    ] No camera update needed
[2026-06-13 10:45:17,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:45:17,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:45:17,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:45:17,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:45:19,827.827 INFO    ] ================================================
[2026-06-13 10:45:19,843.843 INFO    ] Launching Daemon at Sat Jun 13 10:45:19 IST 2026
[2026-06-13 10:45:19,854.854 INFO    ] ================================================
[2026-06-13 10:45:20,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:45:20
[2026-06-13 10:45:20,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:45:20,622.622 INFO    ] Initializing speech engine...
[2026-06-13 10:45:20,626.626 INFO    ] 2026-06-13 10:45:20
[2026-06-13 10:45:20,842.842 INFO    ] 2026-06-13 10:45:20
[2026-06-13 10:45:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:45:21,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:45:21,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:45:21,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:45:21,249.249 INFO    ] time= 13/06/2026 10:45:21
[2026-06-13 10:45:21,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:45:21,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:45:21,360.360 INFO    ] No existing commands found in stream
[2026-06-13 10:45:26,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:45:26,372.372 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 10:45:29,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:45:29,300.300 INFO    ] Checking for system updates...
[2026-06-13 10:45:29,322.322 INFO    ] 200
[2026-06-13 10:45:29,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:29,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:45:29,355.355 INFO    ] No update needed
[2026-06-13 10:45:29,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 10:45:29,377.377 INFO    ] 200
[2026-06-13 10:45:29,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:29,402.402 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:45:29,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:45:29,442.442 INFO    ] No camera update needed
[2026-06-13 10:45:29,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:45:29,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:45:29,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:45:29,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:45:31,494.494 INFO    ] ================================================
[2026-06-13 10:45:31,510.510 INFO    ] Launching Daemon at Sat Jun 13 10:45:31 IST 2026
[2026-06-13 10:45:31,521.521 INFO    ] ================================================
[2026-06-13 10:45:31,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:45:31
[2026-06-13 10:45:32,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:45:32,411.411 INFO    ] Initializing speech engine...
[2026-06-13 10:45:32,416.416 INFO    ] 2026-06-13 10:45:32
[2026-06-13 10:45:32,645.645 INFO    ] 2026-06-13 10:45:32
[2026-06-13 10:45:32,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:45:32,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:45:32,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:45:32,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:45:33,061.061 INFO    ] time= 13/06/2026 10:45:32
[2026-06-13 10:45:33,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:45:33,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:45:33,158.158 INFO    ] No existing commands found in stream
[2026-06-13 10:45:38,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:45:38,172.172 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 10:45:40,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:45:40,595.595 INFO    ] Checking for system updates...
[2026-06-13 10:45:40,616.616 INFO    ] 200
[2026-06-13 10:45:40,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:40,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:40,650.650 INFO    ] No update needed
[2026-06-13 10:45:40,651.651 INFO    ] Checking for camera pi updates...
[2026-06-13 10:45:40,671.671 INFO    ] 200
[2026-06-13 10:45:40,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:40,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:45:40,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:40,734.734 INFO    ] No camera update needed
[2026-06-13 10:45:40,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:45:40,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:45:40,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:45:40,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:45:42,782.782 INFO    ] ================================================
[2026-06-13 10:45:42,797.797 INFO    ] Launching Daemon at Sat Jun 13 10:45:42 IST 2026
[2026-06-13 10:45:42,807.807 INFO    ] ================================================
[2026-06-13 10:45:43,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:45:43
[2026-06-13 10:45:43,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:45:43,649.649 INFO    ] Initializing speech engine...
[2026-06-13 10:45:43,659.659 INFO    ] 2026-06-13 10:45:43
[2026-06-13 10:45:43,870.870 INFO    ] 2026-06-13 10:45:43
[2026-06-13 10:45:43,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:45:44,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:45:44,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:45:44,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:45:44,286.286 INFO    ] time= 13/06/2026 10:45:44
[2026-06-13 10:45:44,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:45:44,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:45:44,407.407 INFO    ] No existing commands found in stream
[2026-06-13 10:45:49,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:45:49,419.419 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 10:45:50,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:45:50,769.769 INFO    ] Checking for system updates...
[2026-06-13 10:45:50,791.791 INFO    ] 200
[2026-06-13 10:45:50,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:50,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:50,824.824 INFO    ] No update needed
[2026-06-13 10:45:50,826.826 INFO    ] Checking for camera pi updates...
[2026-06-13 10:45:50,846.846 INFO    ] 200
[2026-06-13 10:45:50,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:45:50,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:45:50,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:45:50,915.915 INFO    ] No camera update needed
[2026-06-13 10:45:50,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:45:50,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:45:50,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:45:50,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:45:52,962.962 INFO    ] ================================================
[2026-06-13 10:45:52,977.977 INFO    ] Launching Daemon at Sat Jun 13 10:45:52 IST 2026
[2026-06-13 10:45:52,987.987 INFO    ] ================================================
[2026-06-13 10:45:53,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:45:53
[2026-06-13 10:45:54,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:45:54,209.209 INFO    ] Initializing speech engine...
[2026-06-13 10:45:54,214.214 INFO    ] 2026-06-13 10:45:54
[2026-06-13 10:45:54,410.410 INFO    ] 2026-06-13 10:45:54
[2026-06-13 10:45:54,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:45:54,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:45:54,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:45:54,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:45:54,861.861 INFO    ] time= 13/06/2026 10:45:54
[2026-06-13 10:45:54,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:45:54,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:45:55,005.005 INFO    ] No existing commands found in stream
[2026-06-13 10:46:00,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:46:00,019.019 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 10:46:03,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:46:03,697.697 INFO    ] Checking for system updates...
[2026-06-13 10:46:03,718.718 INFO    ] 200
[2026-06-13 10:46:03,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:03,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:03,753.753 INFO    ] No update needed
[2026-06-13 10:46:03,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 10:46:03,774.774 INFO    ] 200
[2026-06-13 10:46:03,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:03,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:46:03,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:03,840.840 INFO    ] No camera update needed
[2026-06-13 10:46:03,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:46:03,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:46:03,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:46:03,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:46:05,887.887 INFO    ] ================================================
[2026-06-13 10:46:05,902.902 INFO    ] Launching Daemon at Sat Jun 13 10:46:05 IST 2026
[2026-06-13 10:46:05,913.913 INFO    ] ================================================
[2026-06-13 10:46:06,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:46:06
[2026-06-13 10:46:06,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:46:06,767.767 INFO    ] Initializing speech engine...
[2026-06-13 10:46:06,773.773 INFO    ] 2026-06-13 10:46:06
[2026-06-13 10:46:06,980.980 INFO    ] 2026-06-13 10:46:06
[2026-06-13 10:46:07,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:46:07,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:46:07,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:46:07,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:46:07,374.374 INFO    ] time= 13/06/2026 10:46:07
[2026-06-13 10:46:07,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:46:07,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:46:07,493.493 INFO    ] No existing commands found in stream
[2026-06-13 10:46:12,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:46:12,504.504 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 10:46:14,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:46:14,900.900 INFO    ] Checking for system updates...
[2026-06-13 10:46:14,921.921 INFO    ] 200
[2026-06-13 10:46:14,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:14,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:14,957.957 INFO    ] No update needed
[2026-06-13 10:46:14,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 10:46:14,979.979 INFO    ] 200
[2026-06-13 10:46:14,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:15,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:46:15,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:15,049.049 INFO    ] No camera update needed
[2026-06-13 10:46:15,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:46:15,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:46:15,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:46:15,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:46:17,095.095 INFO    ] ================================================
[2026-06-13 10:46:17,110.110 INFO    ] Launching Daemon at Sat Jun 13 10:46:17 IST 2026
[2026-06-13 10:46:17,121.121 INFO    ] ================================================
[2026-06-13 10:46:17,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:46:17
[2026-06-13 10:46:17,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:46:17,933.933 INFO    ] Initializing speech engine...
[2026-06-13 10:46:17,943.943 INFO    ] 2026-06-13 10:46:17
[2026-06-13 10:46:18,148.148 INFO    ] 2026-06-13 10:46:18
[2026-06-13 10:46:18,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:46:18,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:46:18,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:46:18,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:46:18,564.564 INFO    ] time= 13/06/2026 10:46:18
[2026-06-13 10:46:18,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:46:18,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:46:18,665.665 INFO    ] No existing commands found in stream
[2026-06-13 10:46:23,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:46:23,682.682 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 10:46:30,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:46:30,491.491 INFO    ] Checking for system updates...
[2026-06-13 10:46:30,512.512 INFO    ] 200
[2026-06-13 10:46:30,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:30,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:46:30,548.548 INFO    ] No update needed
[2026-06-13 10:46:30,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 10:46:30,572.572 INFO    ] 200
[2026-06-13 10:46:30,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:30,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:46:30,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:46:30,640.640 INFO    ] No camera update needed
[2026-06-13 10:46:30,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:46:30,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:46:30,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:46:30,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:46:32,675.675 INFO    ] ================================================
[2026-06-13 10:46:32,684.684 INFO    ] Launching Daemon at Sat Jun 13 10:46:32 IST 2026
[2026-06-13 10:46:32,690.690 INFO    ] ================================================
[2026-06-13 10:46:33,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:46:33
[2026-06-13 10:46:33,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:46:33,540.540 INFO    ] Initializing speech engine...
[2026-06-13 10:46:33,546.546 INFO    ] 2026-06-13 10:46:33
[2026-06-13 10:46:33,757.757 INFO    ] 2026-06-13 10:46:33
[2026-06-13 10:46:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:46:33,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:46:33,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:46:34,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:46:34,073.073 INFO    ] time= 13/06/2026 10:46:34
[2026-06-13 10:46:34,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:46:34,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:46:34,187.187 INFO    ] No existing commands found in stream
[2026-06-13 10:46:39,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:46:39,220.220 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 10:46:42,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:46:42,732.732 INFO    ] Checking for system updates...
[2026-06-13 10:46:42,754.754 INFO    ] 200
[2026-06-13 10:46:42,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:42,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:42,786.786 INFO    ] No update needed
[2026-06-13 10:46:42,788.788 INFO    ] Checking for camera pi updates...
[2026-06-13 10:46:42,809.809 INFO    ] 200
[2026-06-13 10:46:42,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:42,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:46:42,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:46:42,877.877 INFO    ] No camera update needed
[2026-06-13 10:46:42,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:46:42,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:46:42,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:46:42,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:46:44,926.926 INFO    ] ================================================
[2026-06-13 10:46:44,942.942 INFO    ] Launching Daemon at Sat Jun 13 10:46:44 IST 2026
[2026-06-13 10:46:44,953.953 INFO    ] ================================================
[2026-06-13 10:46:45,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:46:45
[2026-06-13 10:46:45,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:46:45,779.779 INFO    ] Initializing speech engine...
[2026-06-13 10:46:45,784.784 INFO    ] 2026-06-13 10:46:45
[2026-06-13 10:46:45,994.994 INFO    ] 2026-06-13 10:46:45
[2026-06-13 10:46:46,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:46:46,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:46:46,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:46:46,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:46:46,397.397 INFO    ] time= 13/06/2026 10:46:46
[2026-06-13 10:46:46,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:46:46,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:46:46,583.583 INFO    ] No existing commands found in stream
[2026-06-13 10:46:51,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:46:51,594.594 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 10:46:53,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:46:53,246.246 INFO    ] Checking for system updates...
[2026-06-13 10:46:53,268.268 INFO    ] 200
[2026-06-13 10:46:53,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:53,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:46:53,303.303 INFO    ] No update needed
[2026-06-13 10:46:53,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 10:46:53,325.325 INFO    ] 200
[2026-06-13 10:46:53,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:46:53,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:46:53,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:46:53,400.400 INFO    ] No camera update needed
[2026-06-13 10:46:53,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:46:53,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:46:53,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:46:53,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:46:55,446.446 INFO    ] ================================================
[2026-06-13 10:46:55,461.461 INFO    ] Launching Daemon at Sat Jun 13 10:46:55 IST 2026
[2026-06-13 10:46:55,473.473 INFO    ] ================================================
[2026-06-13 10:46:55,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:46:55
[2026-06-13 10:46:56,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:46:56,279.279 INFO    ] Initializing speech engine...
[2026-06-13 10:46:56,290.290 INFO    ] 2026-06-13 10:46:56
[2026-06-13 10:46:56,509.509 INFO    ] 2026-06-13 10:46:56
[2026-06-13 10:46:56,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:46:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:46:56,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:46:56,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:46:56,930.930 INFO    ] time= 13/06/2026 10:46:56
[2026-06-13 10:46:56,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:46:56,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:46:57,069.069 INFO    ] No existing commands found in stream
[2026-06-13 10:47:02,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:02,080.080 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 10:47:04,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:47:04,354.354 INFO    ] Checking for system updates...
[2026-06-13 10:47:04,379.379 INFO    ] 200
[2026-06-13 10:47:04,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:04,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:04,412.412 INFO    ] No update needed
[2026-06-13 10:47:04,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:04,433.433 INFO    ] 200
[2026-06-13 10:47:04,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:04,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:04,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:04,504.504 INFO    ] No camera update needed
[2026-06-13 10:47:04,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:04,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:04,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:04,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:06,555.555 INFO    ] ================================================
[2026-06-13 10:47:06,571.571 INFO    ] Launching Daemon at Sat Jun 13 10:47:06 IST 2026
[2026-06-13 10:47:06,583.583 INFO    ] ================================================
[2026-06-13 10:47:06,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:06
[2026-06-13 10:47:07,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:07,377.377 INFO    ] Initializing speech engine...
[2026-06-13 10:47:07,382.382 INFO    ] 2026-06-13 10:47:07
[2026-06-13 10:47:07,586.586 INFO    ] 2026-06-13 10:47:07
[2026-06-13 10:47:07,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:07,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:07,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:07,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:07,991.991 INFO    ] time= 13/06/2026 10:47:07
[2026-06-13 10:47:08,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:08,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:08,104.104 INFO    ] No existing commands found in stream
[2026-06-13 10:47:13,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:13,116.116 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 10:47:14,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:47:14,581.581 INFO    ] Checking for system updates...
[2026-06-13 10:47:14,601.601 INFO    ] 200
[2026-06-13 10:47:14,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:14,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:14,637.637 INFO    ] No update needed
[2026-06-13 10:47:14,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:14,658.658 INFO    ] 200
[2026-06-13 10:47:14,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:14,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:14,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:14,728.728 INFO    ] No camera update needed
[2026-06-13 10:47:14,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:14,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:14,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:14,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:16,777.777 INFO    ] ================================================
[2026-06-13 10:47:16,794.794 INFO    ] Launching Daemon at Sat Jun 13 10:47:16 IST 2026
[2026-06-13 10:47:16,805.805 INFO    ] ================================================
[2026-06-13 10:47:17,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:17
[2026-06-13 10:47:17,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:17,645.645 INFO    ] Initializing speech engine...
[2026-06-13 10:47:17,655.655 INFO    ] 2026-06-13 10:47:17
[2026-06-13 10:47:17,862.862 INFO    ] 2026-06-13 10:47:17
[2026-06-13 10:47:17,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:18,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:18,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:18,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:18,214.214 INFO    ] time= 13/06/2026 10:47:18
[2026-06-13 10:47:18,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:18,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:18,383.383 INFO    ] No existing commands found in stream
[2026-06-13 10:47:23,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:23,396.396 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 10:47:23,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:47:23,925.925 INFO    ] Checking for system updates...
[2026-06-13 10:47:23,947.947 INFO    ] 200
[2026-06-13 10:47:23,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:23,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:47:23,983.983 INFO    ] No update needed
[2026-06-13 10:47:23,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:24,005.005 INFO    ] 200
[2026-06-13 10:47:24,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:24,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:24,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:47:24,067.067 INFO    ] No camera update needed
[2026-06-13 10:47:24,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:24,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:24,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:24,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:26,116.116 INFO    ] ================================================
[2026-06-13 10:47:26,139.139 INFO    ] Launching Daemon at Sat Jun 13 10:47:26 IST 2026
[2026-06-13 10:47:26,150.150 INFO    ] ================================================
[2026-06-13 10:47:26,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:26
[2026-06-13 10:47:26,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:26,975.975 INFO    ] Initializing speech engine...
[2026-06-13 10:47:26,986.986 INFO    ] 2026-06-13 10:47:26
[2026-06-13 10:47:27,193.193 INFO    ] 2026-06-13 10:47:27
[2026-06-13 10:47:27,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:27,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:27,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:27,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:27,606.606 INFO    ] time= 13/06/2026 10:47:27
[2026-06-13 10:47:27,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:27,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:27,737.737 INFO    ] No existing commands found in stream
[2026-06-13 10:47:32,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:32,753.753 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 10:47:33,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:47:33,268.268 INFO    ] Checking for system updates...
[2026-06-13 10:47:33,305.305 INFO    ] 200
[2026-06-13 10:47:33,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:33,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:33,374.374 INFO    ] No update needed
[2026-06-13 10:47:33,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:33,411.411 INFO    ] 200
[2026-06-13 10:47:33,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:33,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:33,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:33,503.503 INFO    ] No camera update needed
[2026-06-13 10:47:33,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:33,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:33,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:33,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:35,560.560 INFO    ] ================================================
[2026-06-13 10:47:35,576.576 INFO    ] Launching Daemon at Sat Jun 13 10:47:35 IST 2026
[2026-06-13 10:47:35,588.588 INFO    ] ================================================
[2026-06-13 10:47:35,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:35
[2026-06-13 10:47:36,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:36,389.389 INFO    ] Initializing speech engine...
[2026-06-13 10:47:36,394.394 INFO    ] 2026-06-13 10:47:36
[2026-06-13 10:47:36,587.587 INFO    ] 2026-06-13 10:47:36
[2026-06-13 10:47:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:36,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:36,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:36,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:36,877.877 INFO    ] time= 13/06/2026 10:47:36
[2026-06-13 10:47:36,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:36,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:36,985.985 INFO    ] No existing commands found in stream
[2026-06-13 10:47:42,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:42,022.022 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 10:47:43,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:47:43,047.047 INFO    ] Checking for system updates...
[2026-06-13 10:47:43,079.079 INFO    ] 200
[2026-06-13 10:47:43,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:43,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:47:43,113.113 INFO    ] No update needed
[2026-06-13 10:47:43,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:43,135.135 INFO    ] 200
[2026-06-13 10:47:43,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:43,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:43,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:47:43,201.201 INFO    ] No camera update needed
[2026-06-13 10:47:43,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:43,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:43,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:43,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:45,248.248 INFO    ] ================================================
[2026-06-13 10:47:45,264.264 INFO    ] Launching Daemon at Sat Jun 13 10:47:45 IST 2026
[2026-06-13 10:47:45,275.275 INFO    ] ================================================
[2026-06-13 10:47:45,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:45
[2026-06-13 10:47:45,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:46,144.144 INFO    ] Initializing speech engine...
[2026-06-13 10:47:46,150.150 INFO    ] 2026-06-13 10:47:46
[2026-06-13 10:47:46,359.359 INFO    ] 2026-06-13 10:47:46
[2026-06-13 10:47:46,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:46,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:46,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:46,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:46,771.771 INFO    ] time= 13/06/2026 10:47:46
[2026-06-13 10:47:46,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:46,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:46,877.877 INFO    ] No existing commands found in stream
[2026-06-13 10:47:51,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:47:51,891.891 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 10:47:54,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:47:55,001.001 INFO    ] Checking for system updates...
[2026-06-13 10:47:55,024.024 INFO    ] 200
[2026-06-13 10:47:55,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:55,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:55,061.061 INFO    ] No update needed
[2026-06-13 10:47:55,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 10:47:55,084.084 INFO    ] 200
[2026-06-13 10:47:55,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:47:55,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:47:55,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:47:55,152.152 INFO    ] No camera update needed
[2026-06-13 10:47:55,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:47:55,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:47:55,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:47:55,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:47:57,202.202 INFO    ] ================================================
[2026-06-13 10:47:57,218.218 INFO    ] Launching Daemon at Sat Jun 13 10:47:57 IST 2026
[2026-06-13 10:47:57,230.230 INFO    ] ================================================
[2026-06-13 10:47:57,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:47:57
[2026-06-13 10:47:57,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:47:58,018.018 INFO    ] Initializing speech engine...
[2026-06-13 10:47:58,023.023 INFO    ] 2026-06-13 10:47:58
[2026-06-13 10:47:58,225.225 INFO    ] 2026-06-13 10:47:58
[2026-06-13 10:47:58,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:47:58,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:47:58,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:47:58,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:47:58,638.638 INFO    ] time= 13/06/2026 10:47:58
[2026-06-13 10:47:58,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:47:58,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:47:58,737.737 INFO    ] No existing commands found in stream
[2026-06-13 10:48:03,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:03,750.750 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 10:48:05,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:48:05,066.066 INFO    ] Checking for system updates...
[2026-06-13 10:48:05,089.089 INFO    ] 200
[2026-06-13 10:48:05,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:05,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:05,122.122 INFO    ] No update needed
[2026-06-13 10:48:05,123.123 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:05,142.142 INFO    ] 200
[2026-06-13 10:48:05,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:05,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:05,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:05,310.310 INFO    ] No camera update needed
[2026-06-13 10:48:05,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:05,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:05,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:05,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:07,359.359 INFO    ] ================================================
[2026-06-13 10:48:07,376.376 INFO    ] Launching Daemon at Sat Jun 13 10:48:07 IST 2026
[2026-06-13 10:48:07,387.387 INFO    ] ================================================
[2026-06-13 10:48:07,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:07
[2026-06-13 10:48:08,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:08,233.233 INFO    ] Initializing speech engine...
[2026-06-13 10:48:08,238.238 INFO    ] 2026-06-13 10:48:08
[2026-06-13 10:48:08,444.444 INFO    ] 2026-06-13 10:48:08
[2026-06-13 10:48:08,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:08,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:08,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:08,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:08,860.860 INFO    ] time= 13/06/2026 10:48:08
[2026-06-13 10:48:08,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:48:08,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:48:08,965.965 INFO    ] No existing commands found in stream
[2026-06-13 10:48:13,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:13,982.982 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 10:48:15,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:48:15,376.376 INFO    ] Checking for system updates...
[2026-06-13 10:48:15,397.397 INFO    ] 200
[2026-06-13 10:48:15,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:15,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:15,436.436 INFO    ] No update needed
[2026-06-13 10:48:15,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:15,456.456 INFO    ] 200
[2026-06-13 10:48:15,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:15,483.483 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:15,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:15,530.530 INFO    ] No camera update needed
[2026-06-13 10:48:15,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:15,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:15,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:15,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:17,577.577 INFO    ] ================================================
[2026-06-13 10:48:17,593.593 INFO    ] Launching Daemon at Sat Jun 13 10:48:17 IST 2026
[2026-06-13 10:48:17,604.604 INFO    ] ================================================
[2026-06-13 10:48:17,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:17
[2026-06-13 10:48:18,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:18,433.433 INFO    ] Initializing speech engine...
[2026-06-13 10:48:18,443.443 INFO    ] 2026-06-13 10:48:18
[2026-06-13 10:48:18,648.648 INFO    ] 2026-06-13 10:48:18
[2026-06-13 10:48:18,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:18,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:18,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:18,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:19,051.051 INFO    ] time= 13/06/2026 10:48:19
[2026-06-13 10:48:19,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:48:19,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:48:19,167.167 INFO    ] No existing commands found in stream
[2026-06-13 10:48:24,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:24,181.181 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 10:48:24,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:48:24,740.740 INFO    ] Checking for system updates...
[2026-06-13 10:48:24,763.763 INFO    ] 200
[2026-06-13 10:48:24,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:24,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:24,796.796 INFO    ] No update needed
[2026-06-13 10:48:24,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:24,817.817 INFO    ] 200
[2026-06-13 10:48:24,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:24,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:24,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:24,877.877 INFO    ] No camera update needed
[2026-06-13 10:48:24,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:24,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:24,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:24,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:26,930.930 INFO    ] ================================================
[2026-06-13 10:48:26,946.946 INFO    ] Launching Daemon at Sat Jun 13 10:48:26 IST 2026
[2026-06-13 10:48:26,957.957 INFO    ] ================================================
[2026-06-13 10:48:27,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:27
[2026-06-13 10:48:27,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:27,734.734 INFO    ] Initializing speech engine...
[2026-06-13 10:48:27,746.746 INFO    ] 2026-06-13 10:48:27
[2026-06-13 10:48:27,957.957 INFO    ] 2026-06-13 10:48:27
[2026-06-13 10:48:27,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:28,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:28,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:28,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:28,360.360 INFO    ] time= 13/06/2026 10:48:28
[2026-06-13 10:48:28,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:48:28,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:48:28,488.488 INFO    ] No existing commands found in stream
[2026-06-13 10:48:33,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:33,509.509 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 10:48:36,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:48:36,875.875 INFO    ] Checking for system updates...
[2026-06-13 10:48:36,903.903 INFO    ] 200
[2026-06-13 10:48:36,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:36,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:36,936.936 INFO    ] No update needed
[2026-06-13 10:48:36,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:36,957.957 INFO    ] 200
[2026-06-13 10:48:36,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:36,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:37,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:37,023.023 INFO    ] No camera update needed
[2026-06-13 10:48:37,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:37,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:37,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:37,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:39,071.071 INFO    ] ================================================
[2026-06-13 10:48:39,087.087 INFO    ] Launching Daemon at Sat Jun 13 10:48:39 IST 2026
[2026-06-13 10:48:39,099.099 INFO    ] ================================================
[2026-06-13 10:48:39,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:39
[2026-06-13 10:48:39,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:39,934.934 INFO    ] Initializing speech engine...
[2026-06-13 10:48:39,939.939 INFO    ] 2026-06-13 10:48:39
[2026-06-13 10:48:40,143.143 INFO    ] 2026-06-13 10:48:40
[2026-06-13 10:48:40,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:40,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:40,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:40,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:40,530.530 INFO    ] time= 13/06/2026 10:48:40
[2026-06-13 10:48:40,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:48:40,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:48:40,659.659 INFO    ] No existing commands found in stream
[2026-06-13 10:48:45,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:45,672.672 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 10:48:46,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:48:46,014.014 INFO    ] Checking for system updates...
[2026-06-13 10:48:46,036.036 INFO    ] 200
[2026-06-13 10:48:46,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:46,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:46,069.069 INFO    ] No update needed
[2026-06-13 10:48:46,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:46,091.091 INFO    ] 200
[2026-06-13 10:48:46,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:46,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:46,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:48:46,162.162 INFO    ] No camera update needed
[2026-06-13 10:48:46,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:46,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:46,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:46,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:48,210.210 INFO    ] ================================================
[2026-06-13 10:48:48,226.226 INFO    ] Launching Daemon at Sat Jun 13 10:48:48 IST 2026
[2026-06-13 10:48:48,237.237 INFO    ] ================================================
[2026-06-13 10:48:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:48
[2026-06-13 10:48:48,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:49,106.106 INFO    ] Initializing speech engine...
[2026-06-13 10:48:49,111.111 INFO    ] 2026-06-13 10:48:49
[2026-06-13 10:48:49,316.316 INFO    ] 2026-06-13 10:48:49
[2026-06-13 10:48:49,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:49,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:49,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:49,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:49,721.721 INFO    ] time= 13/06/2026 10:48:49
[2026-06-13 10:48:49,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:48:49,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:48:49,832.832 INFO    ] No existing commands found in stream
[2026-06-13 10:48:54,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:48:54,844.844 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 10:48:56,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:48:56,346.346 INFO    ] Checking for system updates...
[2026-06-13 10:48:56,367.367 INFO    ] 200
[2026-06-13 10:48:56,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:56,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:56,405.405 INFO    ] No update needed
[2026-06-13 10:48:56,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 10:48:56,426.426 INFO    ] 200
[2026-06-13 10:48:56,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:48:56,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:48:56,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:48:56,488.488 INFO    ] No camera update needed
[2026-06-13 10:48:56,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:48:56,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:48:56,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:48:56,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:48:58,537.537 INFO    ] ================================================
[2026-06-13 10:48:58,552.552 INFO    ] Launching Daemon at Sat Jun 13 10:48:58 IST 2026
[2026-06-13 10:48:58,563.563 INFO    ] ================================================
[2026-06-13 10:48:58,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:48:58
[2026-06-13 10:48:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:48:59,350.350 INFO    ] Initializing speech engine...
[2026-06-13 10:48:59,355.355 INFO    ] 2026-06-13 10:48:59
[2026-06-13 10:48:59,559.559 INFO    ] 2026-06-13 10:48:59
[2026-06-13 10:48:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:48:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:48:59,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:48:59,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:48:59,960.960 INFO    ] time= 13/06/2026 10:48:59
[2026-06-13 10:49:00,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:00,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:00,076.076 INFO    ] No existing commands found in stream
[2026-06-13 10:49:05,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:49:05,087.087 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 10:49:08,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:49:08,861.861 INFO    ] Checking for system updates...
[2026-06-13 10:49:08,881.881 INFO    ] 200
[2026-06-13 10:49:08,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:08,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:08,915.915 INFO    ] No update needed
[2026-06-13 10:49:08,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 10:49:08,938.938 INFO    ] 200
[2026-06-13 10:49:08,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:08,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:49:09,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:09,012.012 INFO    ] No camera update needed
[2026-06-13 10:49:09,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:49:09,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:49:09,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:49:09,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:49:11,061.061 INFO    ] ================================================
[2026-06-13 10:49:11,076.076 INFO    ] Launching Daemon at Sat Jun 13 10:49:11 IST 2026
[2026-06-13 10:49:11,086.086 INFO    ] ================================================
[2026-06-13 10:49:11,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:49:11
[2026-06-13 10:49:11,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:49:11,907.907 INFO    ] Initializing speech engine...
[2026-06-13 10:49:11,913.913 INFO    ] 2026-06-13 10:49:11
[2026-06-13 10:49:12,118.118 INFO    ] 2026-06-13 10:49:12
[2026-06-13 10:49:12,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:49:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:49:12,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:49:12,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:49:12,540.540 INFO    ] time= 13/06/2026 10:49:12
[2026-06-13 10:49:12,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:12,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:12,637.637 INFO    ] No existing commands found in stream
[2026-06-13 10:49:17,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:49:17,655.655 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 10:49:20,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:49:20,016.016 INFO    ] Checking for system updates...
[2026-06-13 10:49:20,038.038 INFO    ] 200
[2026-06-13 10:49:20,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:20,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:49:20,074.074 INFO    ] No update needed
[2026-06-13 10:49:20,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 10:49:20,095.095 INFO    ] 200
[2026-06-13 10:49:20,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:20,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:49:20,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:49:20,162.162 INFO    ] No camera update needed
[2026-06-13 10:49:20,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:49:20,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:49:20,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:49:20,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:49:22,210.210 INFO    ] ================================================
[2026-06-13 10:49:22,225.225 INFO    ] Launching Daemon at Sat Jun 13 10:49:22 IST 2026
[2026-06-13 10:49:22,237.237 INFO    ] ================================================
[2026-06-13 10:49:22,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:49:22
[2026-06-13 10:49:22,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:49:23,040.040 INFO    ] Initializing speech engine...
[2026-06-13 10:49:23,045.045 INFO    ] 2026-06-13 10:49:23
[2026-06-13 10:49:23,263.263 INFO    ] 2026-06-13 10:49:23
[2026-06-13 10:49:23,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:49:23,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:49:23,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:49:23,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:49:23,690.690 INFO    ] time= 13/06/2026 10:49:23
[2026-06-13 10:49:23,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:23,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:23,822.822 INFO    ] No existing commands found in stream
[2026-06-13 10:49:28,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:49:28,835.835 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 10:49:30,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:49:30,405.405 INFO    ] Checking for system updates...
[2026-06-13 10:49:30,427.427 INFO    ] 200
[2026-06-13 10:49:30,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:30,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:49:30,461.461 INFO    ] No update needed
[2026-06-13 10:49:30,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 10:49:30,482.482 INFO    ] 200
[2026-06-13 10:49:30,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:30,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:49:30,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:49:30,547.547 INFO    ] No camera update needed
[2026-06-13 10:49:30,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:49:30,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:49:30,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:49:30,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:49:32,587.587 INFO    ] ================================================
[2026-06-13 10:49:32,597.597 INFO    ] Launching Daemon at Sat Jun 13 10:49:32 IST 2026
[2026-06-13 10:49:32,603.603 INFO    ] ================================================
[2026-06-13 10:49:32,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:49:32
[2026-06-13 10:49:33,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:49:33,377.377 INFO    ] Initializing speech engine...
[2026-06-13 10:49:33,382.382 INFO    ] 2026-06-13 10:49:33
[2026-06-13 10:49:33,584.584 INFO    ] 2026-06-13 10:49:33
[2026-06-13 10:49:33,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:49:33,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:49:33,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:49:33,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:49:33,992.992 INFO    ] time= 13/06/2026 10:49:33
[2026-06-13 10:49:34,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:34,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:34,098.098 INFO    ] No existing commands found in stream
[2026-06-13 10:49:39,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:49:39,110.110 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 10:49:41,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:49:41,861.861 INFO    ] Checking for system updates...
[2026-06-13 10:49:41,881.881 INFO    ] 200
[2026-06-13 10:49:41,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:41,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:41,923.923 INFO    ] No update needed
[2026-06-13 10:49:41,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 10:49:41,946.946 INFO    ] 200
[2026-06-13 10:49:41,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:41,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:49:42,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:42,023.023 INFO    ] No camera update needed
[2026-06-13 10:49:42,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:49:42,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:49:42,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:49:42,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:49:44,067.067 INFO    ] ================================================
[2026-06-13 10:49:44,083.083 INFO    ] Launching Daemon at Sat Jun 13 10:49:44 IST 2026
[2026-06-13 10:49:44,094.094 INFO    ] ================================================
[2026-06-13 10:49:44,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:49:44
[2026-06-13 10:49:44,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:49:44,876.876 INFO    ] Initializing speech engine...
[2026-06-13 10:49:44,884.884 INFO    ] 2026-06-13 10:49:44
[2026-06-13 10:49:45,109.109 INFO    ] 2026-06-13 10:49:45
[2026-06-13 10:49:45,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:49:45,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:49:45,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:49:45,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:49:45,533.533 INFO    ] time= 13/06/2026 10:49:45
[2026-06-13 10:49:45,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:45,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:45,669.669 INFO    ] No existing commands found in stream
[2026-06-13 10:49:50,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:49:50,683.683 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 10:49:51,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:49:51,905.905 INFO    ] Checking for system updates...
[2026-06-13 10:49:51,928.928 INFO    ] 200
[2026-06-13 10:49:51,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:51,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:51,964.964 INFO    ] No update needed
[2026-06-13 10:49:51,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 10:49:51,988.988 INFO    ] 200
[2026-06-13 10:49:51,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:49:52,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:49:52,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:49:52,051.051 INFO    ] No camera update needed
[2026-06-13 10:49:52,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:49:52,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:49:52,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:49:52,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:49:54,101.101 INFO    ] ================================================
[2026-06-13 10:49:54,116.116 INFO    ] Launching Daemon at Sat Jun 13 10:49:54 IST 2026
[2026-06-13 10:49:54,127.127 INFO    ] ================================================
[2026-06-13 10:49:54,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:49:54
[2026-06-13 10:49:54,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:49:54,993.993 INFO    ] Initializing speech engine...
[2026-06-13 10:49:55,000.000 INFO    ] 2026-06-13 10:49:54
[2026-06-13 10:49:55,207.207 INFO    ] 2026-06-13 10:49:55
[2026-06-13 10:49:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:49:55,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:49:55,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:49:55,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:49:55,630.630 INFO    ] time= 13/06/2026 10:49:55
[2026-06-13 10:49:55,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:49:55,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:49:55,726.726 INFO    ] No existing commands found in stream
[2026-06-13 10:50:00,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:50:00,766.766 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 10:50:07,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:50:07,178.178 INFO    ] Checking for system updates...
[2026-06-13 10:50:07,215.215 INFO    ] 200
[2026-06-13 10:50:07,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:07,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:07,293.293 INFO    ] No update needed
[2026-06-13 10:50:07,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 10:50:07,318.318 INFO    ] 200
[2026-06-13 10:50:07,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:07,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:50:07,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:07,467.467 INFO    ] No camera update needed
[2026-06-13 10:50:07,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:50:07,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:50:07,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:50:07,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:50:09,517.517 INFO    ] ================================================
[2026-06-13 10:50:09,533.533 INFO    ] Launching Daemon at Sat Jun 13 10:50:09 IST 2026
[2026-06-13 10:50:09,545.545 INFO    ] ================================================
[2026-06-13 10:50:09,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:50:09
[2026-06-13 10:50:10,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:50:10,360.360 INFO    ] Initializing speech engine...
[2026-06-13 10:50:10,370.370 INFO    ] 2026-06-13 10:50:10
[2026-06-13 10:50:10,574.574 INFO    ] 2026-06-13 10:50:10
[2026-06-13 10:50:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:50:10,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:50:10,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:50:10,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:50:10,993.993 INFO    ] time= 13/06/2026 10:50:10
[2026-06-13 10:50:11,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:50:11,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:50:11,089.089 INFO    ] No existing commands found in stream
[2026-06-13 10:50:16,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:50:16,101.101 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 10:50:19,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:50:19,212.212 INFO    ] Checking for system updates...
[2026-06-13 10:50:19,232.232 INFO    ] 200
[2026-06-13 10:50:19,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:19,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:19,266.266 INFO    ] No update needed
[2026-06-13 10:50:19,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 10:50:19,287.287 INFO    ] 200
[2026-06-13 10:50:19,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:19,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:50:19,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:19,361.361 INFO    ] No camera update needed
[2026-06-13 10:50:19,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:50:19,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:50:19,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:50:19,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:50:21,410.410 INFO    ] ================================================
[2026-06-13 10:50:21,425.425 INFO    ] Launching Daemon at Sat Jun 13 10:50:21 IST 2026
[2026-06-13 10:50:21,436.436 INFO    ] ================================================
[2026-06-13 10:50:21,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:50:21
[2026-06-13 10:50:22,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:50:22,267.267 INFO    ] Initializing speech engine...
[2026-06-13 10:50:22,280.280 INFO    ] 2026-06-13 10:50:22
[2026-06-13 10:50:22,501.501 INFO    ] 2026-06-13 10:50:22
[2026-06-13 10:50:22,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:50:22,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:50:22,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:50:22,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:50:22,928.928 INFO    ] time= 13/06/2026 10:50:22
[2026-06-13 10:50:22,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:50:22,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:50:23,055.055 INFO    ] No existing commands found in stream
[2026-06-13 10:50:28,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:50:28,065.065 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 10:50:28,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:50:28,657.657 INFO    ] Checking for system updates...
[2026-06-13 10:50:28,677.677 INFO    ] 200
[2026-06-13 10:50:28,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:28,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:28,711.711 INFO    ] No update needed
[2026-06-13 10:50:28,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 10:50:28,732.732 INFO    ] 200
[2026-06-13 10:50:28,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:28,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:50:28,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:50:28,802.802 INFO    ] No camera update needed
[2026-06-13 10:50:28,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:50:28,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:50:28,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:50:28,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:50:30,849.849 INFO    ] ================================================
[2026-06-13 10:50:30,864.864 INFO    ] Launching Daemon at Sat Jun 13 10:50:30 IST 2026
[2026-06-13 10:50:30,875.875 INFO    ] ================================================
[2026-06-13 10:50:31,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:50:31
[2026-06-13 10:50:31,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:50:31,905.905 INFO    ] Initializing speech engine...
[2026-06-13 10:50:31,925.925 INFO    ] 2026-06-13 10:50:31
[2026-06-13 10:50:32,226.226 INFO    ] 2026-06-13 10:50:32
[2026-06-13 10:50:32,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:50:32,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:50:32,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:50:32,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:50:32,688.688 INFO    ] time= 13/06/2026 10:50:32
[2026-06-13 10:50:32,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:50:32,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:50:32,870.870 INFO    ] No existing commands found in stream
[2026-06-13 10:50:37,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:50:37,887.887 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 10:50:41,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:50:41,710.710 INFO    ] Checking for system updates...
[2026-06-13 10:50:41,731.731 INFO    ] 200
[2026-06-13 10:50:41,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:41,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:50:41,764.764 INFO    ] No update needed
[2026-06-13 10:50:41,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 10:50:41,786.786 INFO    ] 200
[2026-06-13 10:50:41,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:41,811.811 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:50:41,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:41,852.852 INFO    ] No camera update needed
[2026-06-13 10:50:41,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:50:41,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:50:41,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:50:41,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:50:43,902.902 INFO    ] ================================================
[2026-06-13 10:50:43,918.918 INFO    ] Launching Daemon at Sat Jun 13 10:50:43 IST 2026
[2026-06-13 10:50:43,929.929 INFO    ] ================================================
[2026-06-13 10:50:44,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:50:44
[2026-06-13 10:50:44,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:50:44,775.775 INFO    ] Initializing speech engine...
[2026-06-13 10:50:44,781.781 INFO    ] 2026-06-13 10:50:44
[2026-06-13 10:50:44,988.988 INFO    ] 2026-06-13 10:50:44
[2026-06-13 10:50:45,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:50:45,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:50:45,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:50:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:50:45,401.401 INFO    ] time= 13/06/2026 10:50:45
[2026-06-13 10:50:45,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:50:45,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:50:45,508.508 INFO    ] No existing commands found in stream
[2026-06-13 10:50:50,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:50:50,526.526 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 10:50:52,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:50:52,835.835 INFO    ] Checking for system updates...
[2026-06-13 10:50:52,856.856 INFO    ] 200
[2026-06-13 10:50:52,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:52,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:50:52,890.890 INFO    ] No update needed
[2026-06-13 10:50:52,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 10:50:52,914.914 INFO    ] 200
[2026-06-13 10:50:52,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:50:52,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:50:52,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:50:52,976.976 INFO    ] No camera update needed
[2026-06-13 10:50:52,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:50:52,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:50:52,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:50:52,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:50:55,026.026 INFO    ] ================================================
[2026-06-13 10:50:55,041.041 INFO    ] Launching Daemon at Sat Jun 13 10:50:55 IST 2026
[2026-06-13 10:50:55,051.051 INFO    ] ================================================
[2026-06-13 10:50:55,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:50:55
[2026-06-13 10:50:55,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:50:55,881.881 INFO    ] Initializing speech engine...
[2026-06-13 10:50:55,886.886 INFO    ] 2026-06-13 10:50:55
[2026-06-13 10:50:56,090.090 INFO    ] 2026-06-13 10:50:56
[2026-06-13 10:50:56,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:50:56,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:50:56,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:50:56,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:50:56,507.507 INFO    ] time= 13/06/2026 10:50:56
[2026-06-13 10:50:56,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:50:56,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:50:56,603.603 INFO    ] No existing commands found in stream
[2026-06-13 10:51:01,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:51:01,612.612 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 10:51:05,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:51:05,466.466 INFO    ] Checking for system updates...
[2026-06-13 10:51:05,488.488 INFO    ] 200
[2026-06-13 10:51:05,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:05,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:51:05,524.524 INFO    ] No update needed
[2026-06-13 10:51:05,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 10:51:05,545.545 INFO    ] 200
[2026-06-13 10:51:05,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:05,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:51:05,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:51:05,611.611 INFO    ] No camera update needed
[2026-06-13 10:51:05,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:51:05,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:51:05,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:51:05,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:51:07,663.663 INFO    ] ================================================
[2026-06-13 10:51:07,679.679 INFO    ] Launching Daemon at Sat Jun 13 10:51:07 IST 2026
[2026-06-13 10:51:07,690.690 INFO    ] ================================================
[2026-06-13 10:51:08,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:51:08
[2026-06-13 10:51:08,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:51:08,492.492 INFO    ] Initializing speech engine...
[2026-06-13 10:51:08,502.502 INFO    ] 2026-06-13 10:51:08
[2026-06-13 10:51:08,707.707 INFO    ] 2026-06-13 10:51:08
[2026-06-13 10:51:08,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:51:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:51:08,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:51:09,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:51:09,109.109 INFO    ] time= 13/06/2026 10:51:09
[2026-06-13 10:51:09,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:51:09,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:51:09,225.225 INFO    ] No existing commands found in stream
[2026-06-13 10:51:14,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:51:14,237.237 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 10:51:16,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:51:16,815.815 INFO    ] Checking for system updates...
[2026-06-13 10:51:16,839.839 INFO    ] 200
[2026-06-13 10:51:16,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:16,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:16,892.892 INFO    ] No update needed
[2026-06-13 10:51:16,893.893 INFO    ] Checking for camera pi updates...
[2026-06-13 10:51:16,919.919 INFO    ] 200
[2026-06-13 10:51:16,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:16,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:51:16,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:16,991.991 INFO    ] No camera update needed
[2026-06-13 10:51:16,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:51:16,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:51:16,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:51:17,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:51:19,041.041 INFO    ] ================================================
[2026-06-13 10:51:19,056.056 INFO    ] Launching Daemon at Sat Jun 13 10:51:19 IST 2026
[2026-06-13 10:51:19,067.067 INFO    ] ================================================
[2026-06-13 10:51:19,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:51:19
[2026-06-13 10:51:19,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:51:19,885.885 INFO    ] Initializing speech engine...
[2026-06-13 10:51:19,893.893 INFO    ] 2026-06-13 10:51:19
[2026-06-13 10:51:20,119.119 INFO    ] 2026-06-13 10:51:20
[2026-06-13 10:51:20,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:51:20,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:51:20,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:51:20,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:51:20,541.541 INFO    ] time= 13/06/2026 10:51:20
[2026-06-13 10:51:20,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:51:20,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:51:20,672.672 INFO    ] No existing commands found in stream
[2026-06-13 10:51:25,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:51:25,685.685 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 10:51:29,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:51:29,694.694 INFO    ] Checking for system updates...
[2026-06-13 10:51:29,715.715 INFO    ] 200
[2026-06-13 10:51:29,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:29,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:29,747.747 INFO    ] No update needed
[2026-06-13 10:51:29,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 10:51:29,769.769 INFO    ] 200
[2026-06-13 10:51:29,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:29,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:51:29,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:51:29,846.846 INFO    ] No camera update needed
[2026-06-13 10:51:29,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:51:29,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:51:29,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:51:29,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:51:31,886.886 INFO    ] ================================================
[2026-06-13 10:51:31,899.899 INFO    ] Launching Daemon at Sat Jun 13 10:51:31 IST 2026
[2026-06-13 10:51:31,907.907 INFO    ] ================================================
[2026-06-13 10:51:32,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:51:32
[2026-06-13 10:51:32,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:51:32,727.727 INFO    ] Initializing speech engine...
[2026-06-13 10:51:32,732.732 INFO    ] 2026-06-13 10:51:32
[2026-06-13 10:51:32,935.935 INFO    ] 2026-06-13 10:51:32
[2026-06-13 10:51:32,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:51:33,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:51:33,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:51:33,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:51:33,336.336 INFO    ] time= 13/06/2026 10:51:33
[2026-06-13 10:51:33,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:51:33,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:51:33,461.461 INFO    ] No existing commands found in stream
[2026-06-13 10:51:38,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:51:38,473.473 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 10:51:39,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:51:39,841.841 INFO    ] Checking for system updates...
[2026-06-13 10:51:39,862.862 INFO    ] 200
[2026-06-13 10:51:39,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:39,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:39,897.897 INFO    ] No update needed
[2026-06-13 10:51:39,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 10:51:39,924.924 INFO    ] 200
[2026-06-13 10:51:39,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:39,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:51:39,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:39,991.991 INFO    ] No camera update needed
[2026-06-13 10:51:39,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:51:39,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:51:39,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:51:39,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:51:42,041.041 INFO    ] ================================================
[2026-06-13 10:51:42,056.056 INFO    ] Launching Daemon at Sat Jun 13 10:51:42 IST 2026
[2026-06-13 10:51:42,068.068 INFO    ] ================================================
[2026-06-13 10:51:42,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:51:42
[2026-06-13 10:51:42,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:51:42,875.875 INFO    ] Initializing speech engine...
[2026-06-13 10:51:42,879.879 INFO    ] 2026-06-13 10:51:42
[2026-06-13 10:51:43,097.097 INFO    ] 2026-06-13 10:51:43
[2026-06-13 10:51:43,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:51:43,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:51:43,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:51:43,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:51:43,510.510 INFO    ] time= 13/06/2026 10:51:43
[2026-06-13 10:51:43,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:51:43,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:51:43,615.615 INFO    ] No existing commands found in stream
[2026-06-13 10:51:48,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:51:48,629.629 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 10:51:51,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:51:51,397.397 INFO    ] Checking for system updates...
[2026-06-13 10:51:51,418.418 INFO    ] 200
[2026-06-13 10:51:51,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:51,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:51,451.451 INFO    ] No update needed
[2026-06-13 10:51:51,453.453 INFO    ] Checking for camera pi updates...
[2026-06-13 10:51:51,472.472 INFO    ] 200
[2026-06-13 10:51:51,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:51:51,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:51:51,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:51:51,535.535 INFO    ] No camera update needed
[2026-06-13 10:51:51,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:51:51,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:51:51,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:51:51,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:51:53,575.575 INFO    ] ================================================
[2026-06-13 10:51:53,584.584 INFO    ] Launching Daemon at Sat Jun 13 10:51:53 IST 2026
[2026-06-13 10:51:53,596.596 INFO    ] ================================================
[2026-06-13 10:51:53,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:51:53
[2026-06-13 10:51:54,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:51:54,423.423 INFO    ] Initializing speech engine...
[2026-06-13 10:51:54,426.426 INFO    ] 2026-06-13 10:51:54
[2026-06-13 10:51:54,630.630 INFO    ] 2026-06-13 10:51:54
[2026-06-13 10:51:54,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:51:54,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:51:54,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:51:54,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:51:54,935.935 INFO    ] time= 13/06/2026 10:51:54
[2026-06-13 10:51:54,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:51:54,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:51:55,027.027 INFO    ] No existing commands found in stream
[2026-06-13 10:52:00,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:00,051.051 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 10:52:01,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:52:01,181.181 INFO    ] Checking for system updates...
[2026-06-13 10:52:01,202.202 INFO    ] 200
[2026-06-13 10:52:01,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:01,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:01,237.237 INFO    ] No update needed
[2026-06-13 10:52:01,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:01,258.258 INFO    ] 200
[2026-06-13 10:52:01,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:01,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:01,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:01,323.323 INFO    ] No camera update needed
[2026-06-13 10:52:01,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:01,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:01,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:01,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:03,370.370 INFO    ] ================================================
[2026-06-13 10:52:03,386.386 INFO    ] Launching Daemon at Sat Jun 13 10:52:03 IST 2026
[2026-06-13 10:52:03,398.398 INFO    ] ================================================
[2026-06-13 10:52:03,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:03
[2026-06-13 10:52:04,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:52:04,676.676 INFO    ] Initializing speech engine...
[2026-06-13 10:52:04,686.686 INFO    ] 2026-06-13 10:52:04
[2026-06-13 10:52:04,890.890 INFO    ] 2026-06-13 10:52:04
[2026-06-13 10:52:04,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:52:05,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:52:05,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:52:05,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:52:05,301.301 INFO    ] time= 13/06/2026 10:52:05
[2026-06-13 10:52:05,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:52:05,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:52:05,412.412 INFO    ] No existing commands found in stream
[2026-06-13 10:52:10,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:10,425.425 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 10:52:11,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:52:11,492.492 INFO    ] Checking for system updates...
[2026-06-13 10:52:11,513.513 INFO    ] 200
[2026-06-13 10:52:11,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:11,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:52:11,546.546 INFO    ] No update needed
[2026-06-13 10:52:11,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:11,567.567 INFO    ] 200
[2026-06-13 10:52:11,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:11,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:11,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:52:11,744.744 INFO    ] No camera update needed
[2026-06-13 10:52:11,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:11,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:11,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:11,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:13,792.792 INFO    ] ================================================
[2026-06-13 10:52:13,808.808 INFO    ] Launching Daemon at Sat Jun 13 10:52:13 IST 2026
[2026-06-13 10:52:13,818.818 INFO    ] ================================================
[2026-06-13 10:52:14,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:14
[2026-06-13 10:52:14,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:52:14,595.595 INFO    ] Initializing speech engine...
[2026-06-13 10:52:14,600.600 INFO    ] 2026-06-13 10:52:14
[2026-06-13 10:52:14,818.818 INFO    ] 2026-06-13 10:52:14
[2026-06-13 10:52:14,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:52:15,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:52:15,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:52:15,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:52:15,227.227 INFO    ] time= 13/06/2026 10:52:15
[2026-06-13 10:52:15,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:52:15,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:52:15,339.339 INFO    ] No existing commands found in stream
[2026-06-13 10:52:20,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:20,351.351 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 10:52:24,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:52:24,391.391 INFO    ] Checking for system updates...
[2026-06-13 10:52:24,413.413 INFO    ] 200
[2026-06-13 10:52:24,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:24,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:24,446.446 INFO    ] No update needed
[2026-06-13 10:52:24,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:24,807.807 INFO    ] 200
[2026-06-13 10:52:24,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:24,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:24,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:24,875.875 INFO    ] No camera update needed
[2026-06-13 10:52:24,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:24,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:24,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:24,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:26,923.923 INFO    ] ================================================
[2026-06-13 10:52:26,938.938 INFO    ] Launching Daemon at Sat Jun 13 10:52:26 IST 2026
[2026-06-13 10:52:26,948.948 INFO    ] ================================================
[2026-06-13 10:52:27,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:27
[2026-06-13 10:52:27,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:52:27,746.746 INFO    ] Initializing speech engine...
[2026-06-13 10:52:27,752.752 INFO    ] 2026-06-13 10:52:27
[2026-06-13 10:52:27,955.955 INFO    ] 2026-06-13 10:52:27
[2026-06-13 10:52:27,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:52:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:52:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:52:28,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:52:28,365.365 INFO    ] time= 13/06/2026 10:52:28
[2026-06-13 10:52:28,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:52:28,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:52:28,480.480 INFO    ] No existing commands found in stream
[2026-06-13 10:52:33,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:33,492.492 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 10:52:34,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:52:34,740.740 INFO    ] Checking for system updates...
[2026-06-13 10:52:34,761.761 INFO    ] 200
[2026-06-13 10:52:34,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:34,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:34,794.794 INFO    ] No update needed
[2026-06-13 10:52:34,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:34,816.816 INFO    ] 200
[2026-06-13 10:52:34,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:34,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:34,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:34,881.881 INFO    ] No camera update needed
[2026-06-13 10:52:34,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:34,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:34,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:34,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:36,937.937 INFO    ] ================================================
[2026-06-13 10:52:36,952.952 INFO    ] Launching Daemon at Sat Jun 13 10:52:36 IST 2026
[2026-06-13 10:52:36,962.962 INFO    ] ================================================
[2026-06-13 10:52:37,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:37
[2026-06-13 10:52:38,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:52:38,208.208 INFO    ] Initializing speech engine...
[2026-06-13 10:52:38,219.219 INFO    ] 2026-06-13 10:52:38
[2026-06-13 10:52:38,427.427 INFO    ] 2026-06-13 10:52:38
[2026-06-13 10:52:38,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:52:38,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:52:38,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:52:38,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:52:38,877.877 INFO    ] time= 13/06/2026 10:52:38
[2026-06-13 10:52:38,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:52:38,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:52:39,001.001 INFO    ] No existing commands found in stream
[2026-06-13 10:52:44,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:44,014.014 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 10:52:46,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:52:46,346.346 INFO    ] Checking for system updates...
[2026-06-13 10:52:46,367.367 INFO    ] 200
[2026-06-13 10:52:46,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:46,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:52:46,402.402 INFO    ] No update needed
[2026-06-13 10:52:46,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:46,423.423 INFO    ] 200
[2026-06-13 10:52:46,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:46,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:46,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:52:46,480.480 INFO    ] No camera update needed
[2026-06-13 10:52:46,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:46,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:46,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:46,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:48,528.528 INFO    ] ================================================
[2026-06-13 10:52:48,543.543 INFO    ] Launching Daemon at Sat Jun 13 10:52:48 IST 2026
[2026-06-13 10:52:48,554.554 INFO    ] ================================================
[2026-06-13 10:52:48,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:48
[2026-06-13 10:52:49,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:52:49,370.370 INFO    ] Initializing speech engine...
[2026-06-13 10:52:49,380.380 INFO    ] 2026-06-13 10:52:49
[2026-06-13 10:52:49,585.585 INFO    ] 2026-06-13 10:52:49
[2026-06-13 10:52:49,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:52:49,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:52:49,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:52:49,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:52:49,996.996 INFO    ] time= 13/06/2026 10:52:49
[2026-06-13 10:52:50,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:52:50,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:52:50,110.110 INFO    ] No existing commands found in stream
[2026-06-13 10:52:55,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:52:55,122.122 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 10:52:56,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:52:56,925.925 INFO    ] Checking for system updates...
[2026-06-13 10:52:56,946.946 INFO    ] 200
[2026-06-13 10:52:56,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:56,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:52:56,981.981 INFO    ] No update needed
[2026-06-13 10:52:56,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 10:52:57,003.003 INFO    ] 200
[2026-06-13 10:52:57,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:52:57,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:52:57,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:52:57,064.064 INFO    ] No camera update needed
[2026-06-13 10:52:57,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:52:57,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:52:57,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:52:57,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:52:59,112.112 INFO    ] ================================================
[2026-06-13 10:52:59,126.126 INFO    ] Launching Daemon at Sat Jun 13 10:52:59 IST 2026
[2026-06-13 10:52:59,137.137 INFO    ] ================================================
[2026-06-13 10:52:59,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:52:59
[2026-06-13 10:53:00,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:00,521.521 INFO    ] Initializing speech engine...
[2026-06-13 10:53:00,526.526 INFO    ] 2026-06-13 10:53:00
[2026-06-13 10:53:00,730.730 INFO    ] 2026-06-13 10:53:00
[2026-06-13 10:53:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:00,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:00,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:01,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:01,148.148 INFO    ] time= 13/06/2026 10:53:01
[2026-06-13 10:53:01,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:01,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:01,241.241 INFO    ] No existing commands found in stream
[2026-06-13 10:53:06,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:06,253.253 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 10:53:07,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:53:07,116.116 INFO    ] Checking for system updates...
[2026-06-13 10:53:07,138.138 INFO    ] 200
[2026-06-13 10:53:07,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:07,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:53:07,171.171 INFO    ] No update needed
[2026-06-13 10:53:07,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 10:53:07,194.194 INFO    ] 200
[2026-06-13 10:53:07,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:07,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:53:07,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:07,262.262 INFO    ] No camera update needed
[2026-06-13 10:53:07,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:53:07,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:53:07,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:53:07,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:53:09,309.309 INFO    ] ================================================
[2026-06-13 10:53:09,323.323 INFO    ] Launching Daemon at Sat Jun 13 10:53:09 IST 2026
[2026-06-13 10:53:09,341.341 INFO    ] ================================================
[2026-06-13 10:53:09,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:53:09
[2026-06-13 10:53:09,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:10,137.137 INFO    ] Initializing speech engine...
[2026-06-13 10:53:10,142.142 INFO    ] 2026-06-13 10:53:10
[2026-06-13 10:53:10,344.344 INFO    ] 2026-06-13 10:53:10
[2026-06-13 10:53:10,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:10,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:10,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:10,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:10,689.689 INFO    ] time= 13/06/2026 10:53:10
[2026-06-13 10:53:10,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:10,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:10,819.819 INFO    ] No existing commands found in stream
[2026-06-13 10:53:15,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:15,842.842 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 10:53:19,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:53:19,379.379 INFO    ] Checking for system updates...
[2026-06-13 10:53:19,401.401 INFO    ] 200
[2026-06-13 10:53:19,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:19,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:19,433.433 INFO    ] No update needed
[2026-06-13 10:53:19,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 10:53:19,455.455 INFO    ] 200
[2026-06-13 10:53:19,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:19,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:53:19,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:19,518.518 INFO    ] No camera update needed
[2026-06-13 10:53:19,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:53:19,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:53:19,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:53:19,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:53:21,565.565 INFO    ] ================================================
[2026-06-13 10:53:21,580.580 INFO    ] Launching Daemon at Sat Jun 13 10:53:21 IST 2026
[2026-06-13 10:53:21,591.591 INFO    ] ================================================
[2026-06-13 10:53:21,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:53:21
[2026-06-13 10:53:22,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:22,401.401 INFO    ] Initializing speech engine...
[2026-06-13 10:53:22,411.411 INFO    ] 2026-06-13 10:53:22
[2026-06-13 10:53:22,619.619 INFO    ] 2026-06-13 10:53:22
[2026-06-13 10:53:22,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:22,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:22,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:23,032.032 INFO    ] time= 13/06/2026 10:53:22
[2026-06-13 10:53:23,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:23,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:23,138.138 INFO    ] No existing commands found in stream
[2026-06-13 10:53:28,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:28,151.151 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 10:53:28,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:53:28,910.910 INFO    ] Checking for system updates...
[2026-06-13 10:53:28,931.931 INFO    ] 200
[2026-06-13 10:53:28,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:28,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:28,964.964 INFO    ] No update needed
[2026-06-13 10:53:28,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 10:53:28,986.986 INFO    ] 200
[2026-06-13 10:53:28,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:29,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:53:29,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:29,059.059 INFO    ] No camera update needed
[2026-06-13 10:53:29,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:53:29,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:53:29,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:53:29,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:53:31,108.108 INFO    ] ================================================
[2026-06-13 10:53:31,124.124 INFO    ] Launching Daemon at Sat Jun 13 10:53:31 IST 2026
[2026-06-13 10:53:31,135.135 INFO    ] ================================================
[2026-06-13 10:53:31,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:53:31
[2026-06-13 10:53:31,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:32,011.011 INFO    ] Initializing speech engine...
[2026-06-13 10:53:32,020.020 INFO    ] 2026-06-13 10:53:32
[2026-06-13 10:53:32,230.230 INFO    ] 2026-06-13 10:53:32
[2026-06-13 10:53:32,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:32,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:32,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:32,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:32,635.635 INFO    ] time= 13/06/2026 10:53:32
[2026-06-13 10:53:32,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:32,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:32,744.744 INFO    ] No existing commands found in stream
[2026-06-13 10:53:37,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:37,757.757 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 10:53:38,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:53:38,415.415 INFO    ] Checking for system updates...
[2026-06-13 10:53:38,436.436 INFO    ] 200
[2026-06-13 10:53:38,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:38,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:53:38,472.472 INFO    ] No update needed
[2026-06-13 10:53:38,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 10:53:38,494.494 INFO    ] 200
[2026-06-13 10:53:38,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:38,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:53:38,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:53:38,556.556 INFO    ] No camera update needed
[2026-06-13 10:53:38,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:53:38,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:53:38,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:53:38,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:53:40,596.596 INFO    ] ================================================
[2026-06-13 10:53:40,604.604 INFO    ] Launching Daemon at Sat Jun 13 10:53:40 IST 2026
[2026-06-13 10:53:40,610.610 INFO    ] ================================================
[2026-06-13 10:53:40,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:53:40
[2026-06-13 10:53:41,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:41,464.464 INFO    ] Initializing speech engine...
[2026-06-13 10:53:41,468.468 INFO    ] 2026-06-13 10:53:41
[2026-06-13 10:53:41,668.668 INFO    ] 2026-06-13 10:53:41
[2026-06-13 10:53:41,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:41,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:41,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:42,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:42,066.066 INFO    ] time= 13/06/2026 10:53:42
[2026-06-13 10:53:42,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:42,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:42,182.182 INFO    ] No existing commands found in stream
[2026-06-13 10:53:47,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:47,199.199 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 10:53:49,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:53:49,996.996 INFO    ] Checking for system updates...
[2026-06-13 10:53:50,017.017 INFO    ] 200
[2026-06-13 10:53:50,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:50,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:50,055.055 INFO    ] No update needed
[2026-06-13 10:53:50,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 10:53:50,076.076 INFO    ] 200
[2026-06-13 10:53:50,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:53:50,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:53:50,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:53:50,149.149 INFO    ] No camera update needed
[2026-06-13 10:53:50,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:53:50,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:53:50,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:53:50,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:53:52,196.196 INFO    ] ================================================
[2026-06-13 10:53:52,211.211 INFO    ] Launching Daemon at Sat Jun 13 10:53:52 IST 2026
[2026-06-13 10:53:52,222.222 INFO    ] ================================================
[2026-06-13 10:53:52,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:53:52
[2026-06-13 10:53:52,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:53:53,051.051 INFO    ] Initializing speech engine...
[2026-06-13 10:53:53,056.056 INFO    ] 2026-06-13 10:53:53
[2026-06-13 10:53:53,260.260 INFO    ] 2026-06-13 10:53:53
[2026-06-13 10:53:53,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:53:53,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:53:53,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:53:53,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:53:53,627.627 INFO    ] time= 13/06/2026 10:53:53
[2026-06-13 10:53:53,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:53:53,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:53:53,797.797 INFO    ] No existing commands found in stream
[2026-06-13 10:53:58,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:53:58,811.811 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 10:54:02,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:54:02,946.946 INFO    ] Checking for system updates...
[2026-06-13 10:54:02,982.982 INFO    ] 200
[2026-06-13 10:54:02,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:03,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:03,041.041 INFO    ] No update needed
[2026-06-13 10:54:03,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:03,091.091 INFO    ] 200
[2026-06-13 10:54:03,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:03,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:54:03,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:03,161.161 INFO    ] No camera update needed
[2026-06-13 10:54:03,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:54:03,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:54:03,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:54:03,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:54:05,209.209 INFO    ] ================================================
[2026-06-13 10:54:05,225.225 INFO    ] Launching Daemon at Sat Jun 13 10:54:05 IST 2026
[2026-06-13 10:54:05,235.235 INFO    ] ================================================
[2026-06-13 10:54:05,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:54:05
[2026-06-13 10:54:05,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:54:06,063.063 INFO    ] Initializing speech engine...
[2026-06-13 10:54:06,076.076 INFO    ] 2026-06-13 10:54:06
[2026-06-13 10:54:06,283.283 INFO    ] 2026-06-13 10:54:06
[2026-06-13 10:54:06,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:54:06,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:54:06,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:54:06,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:54:06,678.678 INFO    ] time= 13/06/2026 10:54:06
[2026-06-13 10:54:06,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:54:06,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:54:06,806.806 INFO    ] No existing commands found in stream
[2026-06-13 10:54:11,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:54:11,818.818 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 10:54:14,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:54:14,406.406 INFO    ] Checking for system updates...
[2026-06-13 10:54:14,430.430 INFO    ] 200
[2026-06-13 10:54:14,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:14,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:14,465.465 INFO    ] No update needed
[2026-06-13 10:54:14,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:14,489.489 INFO    ] 200
[2026-06-13 10:54:14,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:14,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:54:14,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:14,655.655 INFO    ] No camera update needed
[2026-06-13 10:54:14,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:54:14,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:54:14,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:54:14,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:54:16,705.705 INFO    ] ================================================
[2026-06-13 10:54:16,720.720 INFO    ] Launching Daemon at Sat Jun 13 10:54:16 IST 2026
[2026-06-13 10:54:16,730.730 INFO    ] ================================================
[2026-06-13 10:54:17,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:54:17
[2026-06-13 10:54:17,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:54:17,542.542 INFO    ] Initializing speech engine...
[2026-06-13 10:54:17,547.547 INFO    ] 2026-06-13 10:54:17
[2026-06-13 10:54:17,749.749 INFO    ] 2026-06-13 10:54:17
[2026-06-13 10:54:17,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:54:17,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:54:17,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:54:18,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:54:18,166.166 INFO    ] time= 13/06/2026 10:54:18
[2026-06-13 10:54:18,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:54:18,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:54:18,261.261 INFO    ] No existing commands found in stream
[2026-06-13 10:54:23,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:54:23,274.274 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 10:54:25,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:54:25,573.573 INFO    ] Checking for system updates...
[2026-06-13 10:54:25,594.594 INFO    ] 200
[2026-06-13 10:54:25,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:25,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:25,627.627 INFO    ] No update needed
[2026-06-13 10:54:25,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:25,649.649 INFO    ] 200
[2026-06-13 10:54:25,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:25,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:54:25,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:54:25,701.701 INFO    ] No camera update needed
[2026-06-13 10:54:25,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:54:25,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:54:25,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:54:25,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:54:27,747.747 INFO    ] ================================================
[2026-06-13 10:54:27,762.762 INFO    ] Launching Daemon at Sat Jun 13 10:54:27 IST 2026
[2026-06-13 10:54:27,772.772 INFO    ] ================================================
[2026-06-13 10:54:28,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:54:28
[2026-06-13 10:54:28,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:54:28,554.554 INFO    ] Initializing speech engine...
[2026-06-13 10:54:28,567.567 INFO    ] 2026-06-13 10:54:28
[2026-06-13 10:54:28,773.773 INFO    ] 2026-06-13 10:54:28
[2026-06-13 10:54:28,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:54:28,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:54:28,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:54:29,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:54:29,170.170 INFO    ] time= 13/06/2026 10:54:29
[2026-06-13 10:54:29,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:54:29,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:54:29,285.285 INFO    ] No existing commands found in stream
[2026-06-13 10:54:34,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:54:34,297.297 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 10:54:38,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:54:38,476.476 INFO    ] Checking for system updates...
[2026-06-13 10:54:38,568.568 INFO    ] 200
[2026-06-13 10:54:38,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:38,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:38,627.627 INFO    ] No update needed
[2026-06-13 10:54:38,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:38,665.665 INFO    ] 200
[2026-06-13 10:54:38,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:38,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:54:38,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:38,758.758 INFO    ] No camera update needed
[2026-06-13 10:54:38,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:54:38,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:54:38,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:54:38,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:54:40,815.815 INFO    ] ================================================
[2026-06-13 10:54:40,830.830 INFO    ] Launching Daemon at Sat Jun 13 10:54:40 IST 2026
[2026-06-13 10:54:40,841.841 INFO    ] ================================================
[2026-06-13 10:54:41,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:54:41
[2026-06-13 10:54:41,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:54:41,892.892 INFO    ] Initializing speech engine...
[2026-06-13 10:54:41,897.897 INFO    ] 2026-06-13 10:54:41
[2026-06-13 10:54:42,101.101 INFO    ] 2026-06-13 10:54:42
[2026-06-13 10:54:42,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:54:42,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:54:42,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:54:42,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:54:42,505.505 INFO    ] time= 13/06/2026 10:54:42
[2026-06-13 10:54:42,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:54:42,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:54:42,614.614 INFO    ] No existing commands found in stream
[2026-06-13 10:54:47,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:54:47,627.627 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 10:54:50,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:54:50,177.177 INFO    ] Checking for system updates...
[2026-06-13 10:54:50,197.197 INFO    ] 200
[2026-06-13 10:54:50,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:50,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:50,233.233 INFO    ] No update needed
[2026-06-13 10:54:50,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:50,254.254 INFO    ] 200
[2026-06-13 10:54:50,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:50,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:54:50,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:50,317.317 INFO    ] No camera update needed
[2026-06-13 10:54:50,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:54:50,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:54:50,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:54:50,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:54:52,363.363 INFO    ] ================================================
[2026-06-13 10:54:52,379.379 INFO    ] Launching Daemon at Sat Jun 13 10:54:52 IST 2026
[2026-06-13 10:54:52,391.391 INFO    ] ================================================
[2026-06-13 10:54:52,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:54:52
[2026-06-13 10:54:53,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:54:53,209.209 INFO    ] Initializing speech engine...
[2026-06-13 10:54:53,219.219 INFO    ] 2026-06-13 10:54:53
[2026-06-13 10:54:53,422.422 INFO    ] 2026-06-13 10:54:53
[2026-06-13 10:54:53,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:54:53,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:54:53,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:54:53,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:54:53,831.831 INFO    ] time= 13/06/2026 10:54:53
[2026-06-13 10:54:53,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:54:53,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:54:53,934.934 INFO    ] No existing commands found in stream
[2026-06-13 10:54:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:54:58,947.947 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 10:54:59,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:54:59,896.896 INFO    ] Checking for system updates...
[2026-06-13 10:54:59,930.930 INFO    ] 200
[2026-06-13 10:54:59,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:54:59,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:54:59,976.976 INFO    ] No update needed
[2026-06-13 10:54:59,978.978 INFO    ] Checking for camera pi updates...
[2026-06-13 10:54:59,999.999 INFO    ] 200
[2026-06-13 10:55:00,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:00,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:00,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:00,073.073 INFO    ] No camera update needed
[2026-06-13 10:55:00,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:00,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:00,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:00,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:02,117.117 INFO    ] ================================================
[2026-06-13 10:55:02,131.131 INFO    ] Launching Daemon at Sat Jun 13 10:55:02 IST 2026
[2026-06-13 10:55:02,139.139 INFO    ] ================================================
[2026-06-13 10:55:02,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:02
[2026-06-13 10:55:02,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:55:03,037.037 INFO    ] Initializing speech engine...
[2026-06-13 10:55:03,043.043 INFO    ] 2026-06-13 10:55:03
[2026-06-13 10:55:03,249.249 INFO    ] 2026-06-13 10:55:03
[2026-06-13 10:55:03,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:55:03,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:55:03,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:55:03,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:55:03,663.663 INFO    ] time= 13/06/2026 10:55:03
[2026-06-13 10:55:03,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:55:03,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:55:03,765.765 INFO    ] No existing commands found in stream
[2026-06-13 10:55:08,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:55:08,779.779 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 10:55:09,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:55:09,635.635 INFO    ] Checking for system updates...
[2026-06-13 10:55:09,656.656 INFO    ] 200
[2026-06-13 10:55:09,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:09,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:55:09,692.692 INFO    ] No update needed
[2026-06-13 10:55:09,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 10:55:09,716.716 INFO    ] 200
[2026-06-13 10:55:09,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:09,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:09,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:55:09,794.794 INFO    ] No camera update needed
[2026-06-13 10:55:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:09,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:09,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:09,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:11,842.842 INFO    ] ================================================
[2026-06-13 10:55:11,857.857 INFO    ] Launching Daemon at Sat Jun 13 10:55:11 IST 2026
[2026-06-13 10:55:11,867.867 INFO    ] ================================================
[2026-06-13 10:55:12,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:12
[2026-06-13 10:55:12,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:55:12,659.659 INFO    ] Initializing speech engine...
[2026-06-13 10:55:12,669.669 INFO    ] 2026-06-13 10:55:12
[2026-06-13 10:55:12,873.873 INFO    ] 2026-06-13 10:55:12
[2026-06-13 10:55:12,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:55:13,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:55:13,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:55:13,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:55:13,279.279 INFO    ] time= 13/06/2026 10:55:13
[2026-06-13 10:55:13,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:55:13,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:55:13,390.390 INFO    ] No existing commands found in stream
[2026-06-13 10:55:18,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:55:18,402.402 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 10:55:21,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:55:21,654.654 INFO    ] Checking for system updates...
[2026-06-13 10:55:21,678.678 INFO    ] 200
[2026-06-13 10:55:21,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:21,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:21,713.713 INFO    ] No update needed
[2026-06-13 10:55:21,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 10:55:21,734.734 INFO    ] 200
[2026-06-13 10:55:21,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:21,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:21,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:21,804.804 INFO    ] No camera update needed
[2026-06-13 10:55:21,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:21,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:21,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:21,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:23,851.851 INFO    ] ================================================
[2026-06-13 10:55:23,866.866 INFO    ] Launching Daemon at Sat Jun 13 10:55:23 IST 2026
[2026-06-13 10:55:23,876.876 INFO    ] ================================================
[2026-06-13 10:55:24,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:24
[2026-06-13 10:55:24,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:55:24,664.664 INFO    ] Initializing speech engine...
[2026-06-13 10:55:24,670.670 INFO    ] 2026-06-13 10:55:24
[2026-06-13 10:55:24,871.871 INFO    ] 2026-06-13 10:55:24
[2026-06-13 10:55:24,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:55:25,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:55:25,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:55:25,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:55:25,271.271 INFO    ] time= 13/06/2026 10:55:25
[2026-06-13 10:55:25,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:55:25,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:55:25,387.387 INFO    ] No existing commands found in stream
[2026-06-13 10:55:30,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:55:30,404.404 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 10:55:31,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:55:31,709.709 INFO    ] Checking for system updates...
[2026-06-13 10:55:31,740.740 INFO    ] 200
[2026-06-13 10:55:31,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:31,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:31,779.779 INFO    ] No update needed
[2026-06-13 10:55:31,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 10:55:31,805.805 INFO    ] 200
[2026-06-13 10:55:31,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:31,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:31,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:31,888.888 INFO    ] No camera update needed
[2026-06-13 10:55:31,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:31,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:31,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:31,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:33,933.933 INFO    ] ================================================
[2026-06-13 10:55:33,948.948 INFO    ] Launching Daemon at Sat Jun 13 10:55:33 IST 2026
[2026-06-13 10:55:33,959.959 INFO    ] ================================================
[2026-06-13 10:55:34,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:34
[2026-06-13 10:55:34,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:55:35,094.094 INFO    ] Initializing speech engine...
[2026-06-13 10:55:35,109.109 INFO    ] 2026-06-13 10:55:35
[2026-06-13 10:55:35,391.391 INFO    ] 2026-06-13 10:55:35
[2026-06-13 10:55:35,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:55:35,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:55:35,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:55:35,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:55:35,755.755 INFO    ] time= 13/06/2026 10:55:35
[2026-06-13 10:55:35,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:55:35,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:55:35,814.814 INFO    ] No existing commands found in stream
[2026-06-13 10:55:40,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:55:40,861.861 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 10:55:44,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:55:44,068.068 INFO    ] Checking for system updates...
[2026-06-13 10:55:44,088.088 INFO    ] 200
[2026-06-13 10:55:44,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:44,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:44,121.121 INFO    ] No update needed
[2026-06-13 10:55:44,123.123 INFO    ] Checking for camera pi updates...
[2026-06-13 10:55:44,147.147 INFO    ] 200
[2026-06-13 10:55:44,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:44,172.172 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:44,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:44,211.211 INFO    ] No camera update needed
[2026-06-13 10:55:44,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:44,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:44,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:44,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:46,258.258 INFO    ] ================================================
[2026-06-13 10:55:46,274.274 INFO    ] Launching Daemon at Sat Jun 13 10:55:46 IST 2026
[2026-06-13 10:55:46,285.285 INFO    ] ================================================
[2026-06-13 10:55:46,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:46
[2026-06-13 10:55:46,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:55:47,135.135 INFO    ] Initializing speech engine...
[2026-06-13 10:55:47,140.140 INFO    ] 2026-06-13 10:55:47
[2026-06-13 10:55:47,348.348 INFO    ] 2026-06-13 10:55:47
[2026-06-13 10:55:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:55:47,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:55:47,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:55:47,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:55:47,768.768 INFO    ] time= 13/06/2026 10:55:47
[2026-06-13 10:55:47,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:55:47,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:55:47,866.866 INFO    ] No existing commands found in stream
[2026-06-13 10:55:52,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:55:52,879.879 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 10:55:57,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:55:57,126.126 INFO    ] Checking for system updates...
[2026-06-13 10:55:57,148.148 INFO    ] 200
[2026-06-13 10:55:57,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:57,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:57,184.184 INFO    ] No update needed
[2026-06-13 10:55:57,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 10:55:57,207.207 INFO    ] 200
[2026-06-13 10:55:57,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:55:57,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:55:57,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:55:57,273.273 INFO    ] No camera update needed
[2026-06-13 10:55:57,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:55:57,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:55:57,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:55:57,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:55:59,323.323 INFO    ] ================================================
[2026-06-13 10:55:59,338.338 INFO    ] Launching Daemon at Sat Jun 13 10:55:59 IST 2026
[2026-06-13 10:55:59,349.349 INFO    ] ================================================
[2026-06-13 10:55:59,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:55:59
[2026-06-13 10:55:59,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:00,135.135 INFO    ] Initializing speech engine...
[2026-06-13 10:56:00,145.145 INFO    ] 2026-06-13 10:56:00
[2026-06-13 10:56:00,350.350 INFO    ] 2026-06-13 10:56:00
[2026-06-13 10:56:00,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:00,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:00,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:00,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:00,753.753 INFO    ] time= 13/06/2026 10:56:00
[2026-06-13 10:56:00,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:00,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:00,864.864 INFO    ] No existing commands found in stream
[2026-06-13 10:56:05,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:05,875.875 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 10:56:07,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:56:07,395.395 INFO    ] Checking for system updates...
[2026-06-13 10:56:07,416.416 INFO    ] 200
[2026-06-13 10:56:07,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:07,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:56:07,449.449 INFO    ] No update needed
[2026-06-13 10:56:07,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 10:56:07,471.471 INFO    ] 200
[2026-06-13 10:56:07,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:07,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:56:07,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:56:07,538.538 INFO    ] No camera update needed
[2026-06-13 10:56:07,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:56:07,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:56:07,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:56:07,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:56:09,585.585 INFO    ] ================================================
[2026-06-13 10:56:09,600.600 INFO    ] Launching Daemon at Sat Jun 13 10:56:09 IST 2026
[2026-06-13 10:56:09,611.611 INFO    ] ================================================
[2026-06-13 10:56:09,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:56:09
[2026-06-13 10:56:10,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:10,473.473 INFO    ] Initializing speech engine...
[2026-06-13 10:56:10,483.483 INFO    ] 2026-06-13 10:56:10
[2026-06-13 10:56:10,691.691 INFO    ] 2026-06-13 10:56:10
[2026-06-13 10:56:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:10,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:10,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:11,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:11,105.105 INFO    ] time= 13/06/2026 10:56:11
[2026-06-13 10:56:11,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:11,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:11,210.210 INFO    ] No existing commands found in stream
[2026-06-13 10:56:16,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:16,224.224 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 10:56:17,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:56:17,999.999 INFO    ] Checking for system updates...
[2026-06-13 10:56:18,022.022 INFO    ] 200
[2026-06-13 10:56:18,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:18,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:56:18,058.058 INFO    ] No update needed
[2026-06-13 10:56:18,059.059 INFO    ] Checking for camera pi updates...
[2026-06-13 10:56:18,079.079 INFO    ] 200
[2026-06-13 10:56:18,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:18,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:56:18,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:56:18,252.252 INFO    ] No camera update needed
[2026-06-13 10:56:18,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:56:18,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:56:18,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:56:18,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:56:20,300.300 INFO    ] ================================================
[2026-06-13 10:56:20,316.316 INFO    ] Launching Daemon at Sat Jun 13 10:56:20 IST 2026
[2026-06-13 10:56:20,327.327 INFO    ] ================================================
[2026-06-13 10:56:20,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:56:20
[2026-06-13 10:56:20,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:21,141.141 INFO    ] Initializing speech engine...
[2026-06-13 10:56:21,146.146 INFO    ] 2026-06-13 10:56:21
[2026-06-13 10:56:21,351.351 INFO    ] 2026-06-13 10:56:21
[2026-06-13 10:56:21,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:21,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:21,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:21,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:21,749.749 INFO    ] time= 13/06/2026 10:56:21
[2026-06-13 10:56:21,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:21,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:21,864.864 INFO    ] No existing commands found in stream
[2026-06-13 10:56:26,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:26,876.876 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 10:56:28,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:56:28,623.623 INFO    ] Checking for system updates...
[2026-06-13 10:56:28,647.647 INFO    ] 200
[2026-06-13 10:56:28,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:28,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:56:28,684.684 INFO    ] No update needed
[2026-06-13 10:56:28,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 10:56:28,707.707 INFO    ] 200
[2026-06-13 10:56:28,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:28,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:56:28,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:56:28,787.787 INFO    ] No camera update needed
[2026-06-13 10:56:28,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:56:28,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:56:28,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:56:28,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:56:30,836.836 INFO    ] ================================================
[2026-06-13 10:56:30,852.852 INFO    ] Launching Daemon at Sat Jun 13 10:56:30 IST 2026
[2026-06-13 10:56:30,863.863 INFO    ] ================================================
[2026-06-13 10:56:31,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:56:31
[2026-06-13 10:56:31,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:31,656.656 INFO    ] Initializing speech engine...
[2026-06-13 10:56:31,661.661 INFO    ] 2026-06-13 10:56:31
[2026-06-13 10:56:31,891.891 INFO    ] 2026-06-13 10:56:31
[2026-06-13 10:56:31,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:32,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:32,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:32,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:32,297.297 INFO    ] time= 13/06/2026 10:56:32
[2026-06-13 10:56:32,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:32,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:32,494.494 INFO    ] No existing commands found in stream
[2026-06-13 10:56:37,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:37,507.507 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 10:56:39,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:56:39,265.265 INFO    ] Checking for system updates...
[2026-06-13 10:56:39,286.286 INFO    ] 200
[2026-06-13 10:56:39,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:39,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:56:39,320.320 INFO    ] No update needed
[2026-06-13 10:56:39,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 10:56:39,341.341 INFO    ] 200
[2026-06-13 10:56:39,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:39,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:56:39,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:56:39,412.412 INFO    ] No camera update needed
[2026-06-13 10:56:39,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:56:39,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:56:39,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:56:39,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:56:41,460.460 INFO    ] ================================================
[2026-06-13 10:56:41,476.476 INFO    ] Launching Daemon at Sat Jun 13 10:56:41 IST 2026
[2026-06-13 10:56:41,486.486 INFO    ] ================================================
[2026-06-13 10:56:41,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:56:41
[2026-06-13 10:56:42,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:42,818.818 INFO    ] Initializing speech engine...
[2026-06-13 10:56:42,826.826 INFO    ] 2026-06-13 10:56:42
[2026-06-13 10:56:43,086.086 INFO    ] 2026-06-13 10:56:43
[2026-06-13 10:56:43,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:43,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:43,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:43,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:43,521.521 INFO    ] time= 13/06/2026 10:56:43
[2026-06-13 10:56:43,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:43,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:43,721.721 INFO    ] No existing commands found in stream
[2026-06-13 10:56:48,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:48,736.736 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 10:56:49,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:56:49,843.843 INFO    ] Checking for system updates...
[2026-06-13 10:56:49,864.864 INFO    ] 200
[2026-06-13 10:56:49,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:49,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:56:49,897.897 INFO    ] No update needed
[2026-06-13 10:56:49,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 10:56:49,919.919 INFO    ] 200
[2026-06-13 10:56:49,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:56:49,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:56:49,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:56:49,991.991 INFO    ] No camera update needed
[2026-06-13 10:56:49,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:56:49,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:56:49,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:56:49,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:56:52,039.039 INFO    ] ================================================
[2026-06-13 10:56:52,054.054 INFO    ] Launching Daemon at Sat Jun 13 10:56:52 IST 2026
[2026-06-13 10:56:52,064.064 INFO    ] ================================================
[2026-06-13 10:56:52,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:56:52
[2026-06-13 10:56:52,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:56:52,868.868 INFO    ] Initializing speech engine...
[2026-06-13 10:56:52,873.873 INFO    ] 2026-06-13 10:56:52
[2026-06-13 10:56:53,063.063 INFO    ] 2026-06-13 10:56:53
[2026-06-13 10:56:53,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:56:53,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:56:53,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:56:53,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:56:53,561.561 INFO    ] time= 13/06/2026 10:56:53
[2026-06-13 10:56:53,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:56:53,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:56:53,686.686 INFO    ] No existing commands found in stream
[2026-06-13 10:56:58,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:56:58,719.719 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 10:57:00,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:57:00,587.587 INFO    ] Checking for system updates...
[2026-06-13 10:57:00,608.608 INFO    ] 200
[2026-06-13 10:57:00,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:00,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:00,641.641 INFO    ] No update needed
[2026-06-13 10:57:00,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:00,664.664 INFO    ] 200
[2026-06-13 10:57:00,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:00,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:00,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:00,727.727 INFO    ] No camera update needed
[2026-06-13 10:57:00,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:00,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:00,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:00,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:02,759.759 INFO    ] ================================================
[2026-06-13 10:57:02,768.768 INFO    ] Launching Daemon at Sat Jun 13 10:57:02 IST 2026
[2026-06-13 10:57:02,774.774 INFO    ] ================================================
[2026-06-13 10:57:03,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:03
[2026-06-13 10:57:03,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:57:03,590.590 INFO    ] Initializing speech engine...
[2026-06-13 10:57:03,595.595 INFO    ] 2026-06-13 10:57:03
[2026-06-13 10:57:03,812.812 INFO    ] 2026-06-13 10:57:03
[2026-06-13 10:57:03,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:57:03,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:57:03,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:57:04,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:57:04,059.059 INFO    ] time= 13/06/2026 10:57:04
[2026-06-13 10:57:04,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:57:04,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:57:04,147.147 INFO    ] No existing commands found in stream
[2026-06-13 10:57:09,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:57:09,191.191 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 10:57:09,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:57:09,948.948 INFO    ] Checking for system updates...
[2026-06-13 10:57:09,968.968 INFO    ] 200
[2026-06-13 10:57:09,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:10,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:10,003.003 INFO    ] No update needed
[2026-06-13 10:57:10,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:10,025.025 INFO    ] 200
[2026-06-13 10:57:10,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:10,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:10,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:10,092.092 INFO    ] No camera update needed
[2026-06-13 10:57:10,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:10,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:10,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:10,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:12,139.139 INFO    ] ================================================
[2026-06-13 10:57:12,154.154 INFO    ] Launching Daemon at Sat Jun 13 10:57:12 IST 2026
[2026-06-13 10:57:12,166.166 INFO    ] ================================================
[2026-06-13 10:57:12,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:12
[2026-06-13 10:57:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:57:12,995.995 INFO    ] Initializing speech engine...
[2026-06-13 10:57:13,000.000 INFO    ] 2026-06-13 10:57:12
[2026-06-13 10:57:13,204.204 INFO    ] 2026-06-13 10:57:13
[2026-06-13 10:57:13,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:57:13,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:57:13,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:57:13,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:57:13,609.609 INFO    ] time= 13/06/2026 10:57:13
[2026-06-13 10:57:13,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:57:13,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:57:13,718.718 INFO    ] No existing commands found in stream
[2026-06-13 10:57:18,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:57:18,731.731 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 10:57:21,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:57:21,480.480 INFO    ] Checking for system updates...
[2026-06-13 10:57:21,501.501 INFO    ] 200
[2026-06-13 10:57:21,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:21,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:21,537.537 INFO    ] No update needed
[2026-06-13 10:57:21,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:21,558.558 INFO    ] 200
[2026-06-13 10:57:21,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:21,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:21,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:21,622.622 INFO    ] No camera update needed
[2026-06-13 10:57:21,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:21,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:21,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:21,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:23,670.670 INFO    ] ================================================
[2026-06-13 10:57:23,685.685 INFO    ] Launching Daemon at Sat Jun 13 10:57:23 IST 2026
[2026-06-13 10:57:23,696.696 INFO    ] ================================================
[2026-06-13 10:57:24,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:24
[2026-06-13 10:57:24,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:57:24,489.489 INFO    ] Initializing speech engine...
[2026-06-13 10:57:24,492.492 INFO    ] 2026-06-13 10:57:24
[2026-06-13 10:57:24,696.696 INFO    ] 2026-06-13 10:57:24
[2026-06-13 10:57:24,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:57:24,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:57:24,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:57:24,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:57:24,989.989 INFO    ] time= 13/06/2026 10:57:24
[2026-06-13 10:57:24,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:57:24,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:57:25,105.105 INFO    ] No existing commands found in stream
[2026-06-13 10:57:30,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:57:30,119.119 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 10:57:33,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:57:33,258.258 INFO    ] Checking for system updates...
[2026-06-13 10:57:33,295.295 INFO    ] 200
[2026-06-13 10:57:33,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:33,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:33,360.360 INFO    ] No update needed
[2026-06-13 10:57:33,362.362 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:33,397.397 INFO    ] 200
[2026-06-13 10:57:33,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:33,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:33,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:57:33,498.498 INFO    ] No camera update needed
[2026-06-13 10:57:33,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:33,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:33,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:33,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:35,545.545 INFO    ] ================================================
[2026-06-13 10:57:35,561.561 INFO    ] Launching Daemon at Sat Jun 13 10:57:35 IST 2026
[2026-06-13 10:57:35,571.571 INFO    ] ================================================
[2026-06-13 10:57:35,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:35
[2026-06-13 10:57:36,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:57:36,371.371 INFO    ] Initializing speech engine...
[2026-06-13 10:57:36,379.379 INFO    ] 2026-06-13 10:57:36
[2026-06-13 10:57:36,592.592 INFO    ] 2026-06-13 10:57:36
[2026-06-13 10:57:36,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:57:36,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:57:36,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:57:36,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:57:37,004.004 INFO    ] time= 13/06/2026 10:57:36
[2026-06-13 10:57:37,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:57:37,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:57:37,118.118 INFO    ] No existing commands found in stream
[2026-06-13 10:57:42,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:57:42,130.130 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 10:57:44,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:57:44,532.532 INFO    ] Checking for system updates...
[2026-06-13 10:57:44,553.553 INFO    ] 200
[2026-06-13 10:57:44,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:44,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:44,586.586 INFO    ] No update needed
[2026-06-13 10:57:44,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:44,609.609 INFO    ] 200
[2026-06-13 10:57:44,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:44,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:44,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:44,682.682 INFO    ] No camera update needed
[2026-06-13 10:57:44,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:44,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:44,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:44,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:46,728.728 INFO    ] ================================================
[2026-06-13 10:57:46,744.744 INFO    ] Launching Daemon at Sat Jun 13 10:57:46 IST 2026
[2026-06-13 10:57:46,755.755 INFO    ] ================================================
[2026-06-13 10:57:47,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:47
[2026-06-13 10:57:47,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:57:47,563.563 INFO    ] Initializing speech engine...
[2026-06-13 10:57:47,575.575 INFO    ] 2026-06-13 10:57:47
[2026-06-13 10:57:47,783.783 INFO    ] 2026-06-13 10:57:47
[2026-06-13 10:57:47,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:57:47,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:57:48,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:57:48,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:57:48,193.193 INFO    ] time= 13/06/2026 10:57:48
[2026-06-13 10:57:48,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:57:48,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:57:48,306.306 INFO    ] No existing commands found in stream
[2026-06-13 10:57:53,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:57:53,318.318 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 10:57:57,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:57:57,182.182 INFO    ] Checking for system updates...
[2026-06-13 10:57:57,202.202 INFO    ] 200
[2026-06-13 10:57:57,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:57,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:57,235.235 INFO    ] No update needed
[2026-06-13 10:57:57,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 10:57:57,259.259 INFO    ] 200
[2026-06-13 10:57:57,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:57:57,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:57:57,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:57:57,326.326 INFO    ] No camera update needed
[2026-06-13 10:57:57,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:57:57,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:57:57,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:57:57,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:57:59,373.373 INFO    ] ================================================
[2026-06-13 10:57:59,388.388 INFO    ] Launching Daemon at Sat Jun 13 10:57:59 IST 2026
[2026-06-13 10:57:59,399.399 INFO    ] ================================================
[2026-06-13 10:57:59,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:57:59
[2026-06-13 10:58:00,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:00,253.253 INFO    ] Initializing speech engine...
[2026-06-13 10:58:00,259.259 INFO    ] 2026-06-13 10:58:00
[2026-06-13 10:58:00,466.466 INFO    ] 2026-06-13 10:58:00
[2026-06-13 10:58:00,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:00,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:00,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:00,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:01,010.010 INFO    ] time= 13/06/2026 10:58:00
[2026-06-13 10:58:01,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:01,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:01,152.152 INFO    ] No existing commands found in stream
[2026-06-13 10:58:06,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:58:06,182.182 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 10:58:08,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:58:08,347.347 INFO    ] Checking for system updates...
[2026-06-13 10:58:08,369.369 INFO    ] 200
[2026-06-13 10:58:08,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:08,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:58:08,402.402 INFO    ] No update needed
[2026-06-13 10:58:08,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 10:58:08,424.424 INFO    ] 200
[2026-06-13 10:58:08,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:08,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:58:08,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:58:08,489.489 INFO    ] No camera update needed
[2026-06-13 10:58:08,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:58:08,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:58:08,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:58:08,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:58:10,541.541 INFO    ] ================================================
[2026-06-13 10:58:10,556.556 INFO    ] Launching Daemon at Sat Jun 13 10:58:10 IST 2026
[2026-06-13 10:58:10,567.567 INFO    ] ================================================
[2026-06-13 10:58:10,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:58:10
[2026-06-13 10:58:11,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:11,358.358 INFO    ] Initializing speech engine...
[2026-06-13 10:58:11,362.362 INFO    ] 2026-06-13 10:58:11
[2026-06-13 10:58:11,580.580 INFO    ] 2026-06-13 10:58:11
[2026-06-13 10:58:11,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:11,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:11,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:11,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:11,987.987 INFO    ] time= 13/06/2026 10:58:11
[2026-06-13 10:58:12,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:12,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:12,100.100 INFO    ] No existing commands found in stream
[2026-06-13 10:58:17,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:58:17,112.112 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 10:58:18,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 10:58:18,716.716 INFO    ] Checking for system updates...
[2026-06-13 10:58:18,738.738 INFO    ] 200
[2026-06-13 10:58:18,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:18,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:18,774.774 INFO    ] No update needed
[2026-06-13 10:58:18,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 10:58:18,794.794 INFO    ] 200
[2026-06-13 10:58:18,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:18,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:58:18,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:18,958.958 INFO    ] No camera update needed
[2026-06-13 10:58:18,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:58:18,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:58:18,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:58:18,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:58:21,005.005 INFO    ] ================================================
[2026-06-13 10:58:21,021.021 INFO    ] Launching Daemon at Sat Jun 13 10:58:21 IST 2026
[2026-06-13 10:58:21,031.031 INFO    ] ================================================
[2026-06-13 10:58:21,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:58:21
[2026-06-13 10:58:21,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:21,852.852 INFO    ] Initializing speech engine...
[2026-06-13 10:58:21,856.856 INFO    ] 2026-06-13 10:58:21
[2026-06-13 10:58:22,073.073 INFO    ] 2026-06-13 10:58:22
[2026-06-13 10:58:22,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:22,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:22,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:22,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:22,477.477 INFO    ] time= 13/06/2026 10:58:22
[2026-06-13 10:58:22,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:22,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:22,588.588 INFO    ] No existing commands found in stream
[2026-06-13 10:58:27,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:58:27,600.600 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 10:58:29,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:58:29,204.204 INFO    ] Checking for system updates...
[2026-06-13 10:58:29,227.227 INFO    ] 200
[2026-06-13 10:58:29,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:29,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:29,261.261 INFO    ] No update needed
[2026-06-13 10:58:29,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 10:58:29,282.282 INFO    ] 200
[2026-06-13 10:58:29,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:29,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:58:29,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:29,345.345 INFO    ] No camera update needed
[2026-06-13 10:58:29,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:58:29,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:58:29,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:58:29,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:58:31,393.393 INFO    ] ================================================
[2026-06-13 10:58:31,408.408 INFO    ] Launching Daemon at Sat Jun 13 10:58:31 IST 2026
[2026-06-13 10:58:31,419.419 INFO    ] ================================================
[2026-06-13 10:58:31,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:58:31
[2026-06-13 10:58:32,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:32,281.281 INFO    ] Initializing speech engine...
[2026-06-13 10:58:32,288.288 INFO    ] 2026-06-13 10:58:32
[2026-06-13 10:58:32,480.480 INFO    ] 2026-06-13 10:58:32
[2026-06-13 10:58:32,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:32,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:32,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:32,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:32,757.757 INFO    ] time= 13/06/2026 10:58:32
[2026-06-13 10:58:32,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:32,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:32,868.868 INFO    ] No existing commands found in stream
[2026-06-13 10:58:37,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:58:37,905.905 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 10:58:41,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:58:41,644.644 INFO    ] Checking for system updates...
[2026-06-13 10:58:41,665.665 INFO    ] 200
[2026-06-13 10:58:41,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:41,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:41,698.698 INFO    ] No update needed
[2026-06-13 10:58:41,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 10:58:41,719.719 INFO    ] 200
[2026-06-13 10:58:41,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:41,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:58:41,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:41,781.781 INFO    ] No camera update needed
[2026-06-13 10:58:41,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:58:41,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:58:41,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:58:41,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:58:43,827.827 INFO    ] ================================================
[2026-06-13 10:58:43,842.842 INFO    ] Launching Daemon at Sat Jun 13 10:58:43 IST 2026
[2026-06-13 10:58:43,852.852 INFO    ] ================================================
[2026-06-13 10:58:44,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:58:44
[2026-06-13 10:58:44,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:44,652.652 INFO    ] Initializing speech engine...
[2026-06-13 10:58:44,662.662 INFO    ] 2026-06-13 10:58:44
[2026-06-13 10:58:44,877.877 INFO    ] 2026-06-13 10:58:44
[2026-06-13 10:58:44,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:45,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:45,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:45,317.317 INFO    ] time= 13/06/2026 10:58:45
[2026-06-13 10:58:45,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:45,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:45,544.544 INFO    ] No existing commands found in stream
[2026-06-13 10:58:50,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:58:50,554.554 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 10:58:54,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 10:58:54,406.406 INFO    ] Checking for system updates...
[2026-06-13 10:58:54,428.428 INFO    ] 200
[2026-06-13 10:58:54,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:54,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:54,463.463 INFO    ] No update needed
[2026-06-13 10:58:54,465.465 INFO    ] Checking for camera pi updates...
[2026-06-13 10:58:54,486.486 INFO    ] 200
[2026-06-13 10:58:54,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:58:54,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:58:54,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:58:54,548.548 INFO    ] No camera update needed
[2026-06-13 10:58:54,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:58:54,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:58:54,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:58:54,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:58:56,595.595 INFO    ] ================================================
[2026-06-13 10:58:56,613.613 INFO    ] Launching Daemon at Sat Jun 13 10:58:56 IST 2026
[2026-06-13 10:58:56,624.624 INFO    ] ================================================
[2026-06-13 10:58:56,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:58:56
[2026-06-13 10:58:57,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:58:57,441.441 INFO    ] Initializing speech engine...
[2026-06-13 10:58:57,446.446 INFO    ] 2026-06-13 10:58:57
[2026-06-13 10:58:57,650.650 INFO    ] 2026-06-13 10:58:57
[2026-06-13 10:58:57,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:58:57,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:58:57,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:58:57,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:58:58,059.059 INFO    ] time= 13/06/2026 10:58:58
[2026-06-13 10:58:58,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:58:58,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:58:58,163.163 INFO    ] No existing commands found in stream
[2026-06-13 10:59:03,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:03,173.173 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 10:59:04,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 10:59:04,895.895 INFO    ] Checking for system updates...
[2026-06-13 10:59:04,932.932 INFO    ] 200
[2026-06-13 10:59:04,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:04,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:04,992.992 INFO    ] No update needed
[2026-06-13 10:59:04,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 10:59:05,031.031 INFO    ] 200
[2026-06-13 10:59:05,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:05,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:59:05,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:05,127.127 INFO    ] No camera update needed
[2026-06-13 10:59:05,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:59:05,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:59:05,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:59:05,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:59:07,178.178 INFO    ] ================================================
[2026-06-13 10:59:07,193.193 INFO    ] Launching Daemon at Sat Jun 13 10:59:07 IST 2026
[2026-06-13 10:59:07,204.204 INFO    ] ================================================
[2026-06-13 10:59:07,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:59:07
[2026-06-13 10:59:08,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:59:08,362.362 INFO    ] Initializing speech engine...
[2026-06-13 10:59:08,366.366 INFO    ] 2026-06-13 10:59:08
[2026-06-13 10:59:08,612.612 INFO    ] 2026-06-13 10:59:08
[2026-06-13 10:59:08,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:59:08,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:59:08,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:59:08,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:59:08,981.981 INFO    ] time= 13/06/2026 10:59:08
[2026-06-13 10:59:08,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:59:08,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:59:09,059.059 INFO    ] No existing commands found in stream
[2026-06-13 10:59:14,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:14,073.073 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 10:59:14,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:59:14,635.635 INFO    ] Checking for system updates...
[2026-06-13 10:59:14,655.655 INFO    ] 200
[2026-06-13 10:59:14,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:14,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:59:14,689.689 INFO    ] No update needed
[2026-06-13 10:59:14,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 10:59:14,710.710 INFO    ] 200
[2026-06-13 10:59:14,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:14,735.735 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:59:14,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:59:14,822.822 INFO    ] No camera update needed
[2026-06-13 10:59:14,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:59:14,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:59:14,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:59:14,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:59:16,872.872 INFO    ] ================================================
[2026-06-13 10:59:16,887.887 INFO    ] Launching Daemon at Sat Jun 13 10:59:16 IST 2026
[2026-06-13 10:59:16,898.898 INFO    ] ================================================
[2026-06-13 10:59:17,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:59:17
[2026-06-13 10:59:17,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:59:17,698.698 INFO    ] Initializing speech engine...
[2026-06-13 10:59:17,703.703 INFO    ] 2026-06-13 10:59:17
[2026-06-13 10:59:17,906.906 INFO    ] 2026-06-13 10:59:17
[2026-06-13 10:59:17,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:59:18,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:59:18,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:59:18,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:59:18,300.300 INFO    ] time= 13/06/2026 10:59:18
[2026-06-13 10:59:18,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:59:18,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:59:18,418.418 INFO    ] No existing commands found in stream
[2026-06-13 10:59:23,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:23,431.431 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 10:59:25,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 10:59:25,889.889 INFO    ] Checking for system updates...
[2026-06-13 10:59:25,912.912 INFO    ] 200
[2026-06-13 10:59:25,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:25,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:25,952.952 INFO    ] No update needed
[2026-06-13 10:59:25,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 10:59:25,973.973 INFO    ] 200
[2026-06-13 10:59:25,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:26,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:59:26,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:26,042.042 INFO    ] No camera update needed
[2026-06-13 10:59:26,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:59:26,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:59:26,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:59:26,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:59:28,092.092 INFO    ] ================================================
[2026-06-13 10:59:28,108.108 INFO    ] Launching Daemon at Sat Jun 13 10:59:28 IST 2026
[2026-06-13 10:59:28,119.119 INFO    ] ================================================
[2026-06-13 10:59:28,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:59:28
[2026-06-13 10:59:28,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:59:28,986.986 INFO    ] Initializing speech engine...
[2026-06-13 10:59:28,992.992 INFO    ] 2026-06-13 10:59:28
[2026-06-13 10:59:29,205.205 INFO    ] 2026-06-13 10:59:29
[2026-06-13 10:59:29,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:59:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:59:29,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:59:29,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:59:29,632.632 INFO    ] time= 13/06/2026 10:59:29
[2026-06-13 10:59:29,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:59:29,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:59:29,729.729 INFO    ] No existing commands found in stream
[2026-06-13 10:59:34,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:34,744.744 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 10:59:38,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 10:59:38,060.060 INFO    ] Checking for system updates...
[2026-06-13 10:59:38,081.081 INFO    ] 200
[2026-06-13 10:59:38,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:38,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:59:38,115.115 INFO    ] No update needed
[2026-06-13 10:59:38,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 10:59:38,136.136 INFO    ] 200
[2026-06-13 10:59:38,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:38,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:59:38,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 10:59:38,203.203 INFO    ] No camera update needed
[2026-06-13 10:59:38,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:59:38,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:59:38,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:59:38,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:59:40,251.251 INFO    ] ================================================
[2026-06-13 10:59:40,266.266 INFO    ] Launching Daemon at Sat Jun 13 10:59:40 IST 2026
[2026-06-13 10:59:40,277.277 INFO    ] ================================================
[2026-06-13 10:59:40,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:59:40
[2026-06-13 10:59:40,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:59:41,149.149 INFO    ] Initializing speech engine...
[2026-06-13 10:59:41,156.156 INFO    ] 2026-06-13 10:59:41
[2026-06-13 10:59:41,362.362 INFO    ] 2026-06-13 10:59:41
[2026-06-13 10:59:41,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:59:41,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:59:41,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:59:41,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:59:41,782.782 INFO    ] time= 13/06/2026 10:59:41
[2026-06-13 10:59:41,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:59:41,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:59:41,890.890 INFO    ] No existing commands found in stream
[2026-06-13 10:59:46,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:46,903.903 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 10:59:49,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 10:59:49,008.008 INFO    ] Checking for system updates...
[2026-06-13 10:59:49,030.030 INFO    ] 200
[2026-06-13 10:59:49,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:49,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:49,063.063 INFO    ] No update needed
[2026-06-13 10:59:49,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 10:59:49,083.083 INFO    ] 200
[2026-06-13 10:59:49,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 10:59:49,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 10:59:49,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 10:59:49,145.145 INFO    ] No camera update needed
[2026-06-13 10:59:49,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 10:59:49,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 10:59:49,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 10:59:49,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 10:59:51,191.191 INFO    ] ================================================
[2026-06-13 10:59:51,206.206 INFO    ] Launching Daemon at Sat Jun 13 10:59:51 IST 2026
[2026-06-13 10:59:51,217.217 INFO    ] ================================================
[2026-06-13 10:59:51,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 10:59:51
[2026-06-13 10:59:51,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 10:59:52,015.015 INFO    ] Initializing speech engine...
[2026-06-13 10:59:52,020.020 INFO    ] 2026-06-13 10:59:52
[2026-06-13 10:59:52,223.223 INFO    ] 2026-06-13 10:59:52
[2026-06-13 10:59:52,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 10:59:52,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 10:59:52,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 10:59:52,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 10:59:52,659.659 INFO    ] time= 13/06/2026 10:59:52
[2026-06-13 10:59:52,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 10:59:52,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 10:59:52,845.845 INFO    ] No existing commands found in stream
[2026-06-13 10:59:57,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 10:59:57,867.867 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 11:00:01,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:00:01,471.471 INFO    ] Checking for system updates...
[2026-06-13 11:00:01,526.526 INFO    ] 200
[2026-06-13 11:00:01,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:01,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:00:01,618.618 INFO    ] No update needed
[2026-06-13 11:00:01,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 11:00:01,819.819 INFO    ] 200
[2026-06-13 11:00:01,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:02,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:00:02,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:00:02,289.289 INFO    ] No camera update needed
[2026-06-13 11:00:02,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:00:02,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:00:02,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:00:02,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:00:04,436.436 INFO    ] ================================================
[2026-06-13 11:00:04,464.464 INFO    ] Launching Daemon at Sat Jun 13 11:00:04 IST 2026
[2026-06-13 11:00:04,476.476 INFO    ] ================================================
[2026-06-13 11:00:05,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:00:05
[2026-06-13 11:00:05,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:00:05,976.976 INFO    ] Initializing speech engine...
[2026-06-13 11:00:05,983.983 INFO    ] 2026-06-13 11:00:05
[2026-06-13 11:00:06,245.245 INFO    ] 2026-06-13 11:00:06
[2026-06-13 11:00:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:00:06,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:00:06,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:00:06,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:00:06,568.568 INFO    ] time= 13/06/2026 11:00:06
[2026-06-13 11:00:06,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:00:06,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:00:06,681.681 INFO    ] No existing commands found in stream
[2026-06-13 11:00:11,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:00:11,700.700 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 11:00:15,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:00:15,201.201 INFO    ] Checking for system updates...
[2026-06-13 11:00:15,239.239 INFO    ] 200
[2026-06-13 11:00:15,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:15,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:15,307.307 INFO    ] No update needed
[2026-06-13 11:00:15,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 11:00:15,346.346 INFO    ] 200
[2026-06-13 11:00:15,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:15,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:00:15,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:15,443.443 INFO    ] No camera update needed
[2026-06-13 11:00:15,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:00:15,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:00:15,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:00:15,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:00:17,505.505 INFO    ] ================================================
[2026-06-13 11:00:17,521.521 INFO    ] Launching Daemon at Sat Jun 13 11:00:17 IST 2026
[2026-06-13 11:00:17,531.531 INFO    ] ================================================
[2026-06-13 11:00:18,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:00:18
[2026-06-13 11:00:18,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:00:18,500.500 INFO    ] Initializing speech engine...
[2026-06-13 11:00:18,505.505 INFO    ] 2026-06-13 11:00:18
[2026-06-13 11:00:18,707.707 INFO    ] 2026-06-13 11:00:18
[2026-06-13 11:00:18,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:00:18,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:00:18,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:00:19,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:00:19,121.121 INFO    ] time= 13/06/2026 11:00:19
[2026-06-13 11:00:19,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:00:19,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:00:19,220.220 INFO    ] No existing commands found in stream
[2026-06-13 11:00:24,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:00:24,232.232 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 11:00:26,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:00:26,346.346 INFO    ] Checking for system updates...
[2026-06-13 11:00:26,367.367 INFO    ] 200
[2026-06-13 11:00:26,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:26,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:26,401.401 INFO    ] No update needed
[2026-06-13 11:00:26,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 11:00:26,422.422 INFO    ] 200
[2026-06-13 11:00:26,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:26,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:00:26,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:26,584.584 INFO    ] No camera update needed
[2026-06-13 11:00:26,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:00:26,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:00:26,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:00:26,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:00:28,631.631 INFO    ] ================================================
[2026-06-13 11:00:28,647.647 INFO    ] Launching Daemon at Sat Jun 13 11:00:28 IST 2026
[2026-06-13 11:00:28,657.657 INFO    ] ================================================
[2026-06-13 11:00:29,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:00:29
[2026-06-13 11:00:29,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:00:29,498.498 INFO    ] Initializing speech engine...
[2026-06-13 11:00:29,504.504 INFO    ] 2026-06-13 11:00:29
[2026-06-13 11:00:29,713.713 INFO    ] 2026-06-13 11:00:29
[2026-06-13 11:00:29,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:00:29,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:00:29,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:00:30,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:00:30,117.117 INFO    ] time= 13/06/2026 11:00:30
[2026-06-13 11:00:30,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:00:30,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:00:30,228.228 INFO    ] No existing commands found in stream
[2026-06-13 11:00:35,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:00:35,246.246 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 11:00:39,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:00:39,387.387 INFO    ] Checking for system updates...
[2026-06-13 11:00:39,408.408 INFO    ] 200
[2026-06-13 11:00:39,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:39,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:39,442.442 INFO    ] No update needed
[2026-06-13 11:00:39,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 11:00:39,465.465 INFO    ] 200
[2026-06-13 11:00:39,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:39,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:00:39,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:00:39,540.540 INFO    ] No camera update needed
[2026-06-13 11:00:39,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:00:39,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:00:39,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:00:39,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:00:41,589.589 INFO    ] ================================================
[2026-06-13 11:00:41,604.604 INFO    ] Launching Daemon at Sat Jun 13 11:00:41 IST 2026
[2026-06-13 11:00:41,615.615 INFO    ] ================================================
[2026-06-13 11:00:41,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:00:41
[2026-06-13 11:00:42,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:00:42,450.450 INFO    ] Initializing speech engine...
[2026-06-13 11:00:42,455.455 INFO    ] 2026-06-13 11:00:42
[2026-06-13 11:00:42,659.659 INFO    ] 2026-06-13 11:00:42
[2026-06-13 11:00:42,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:00:42,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:00:42,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:00:43,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:00:43,070.070 INFO    ] time= 13/06/2026 11:00:43
[2026-06-13 11:00:43,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:00:43,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:00:43,173.173 INFO    ] No existing commands found in stream
[2026-06-13 11:00:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:00:48,186.186 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 11:00:51,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:00:51,338.338 INFO    ] Checking for system updates...
[2026-06-13 11:00:51,359.359 INFO    ] 200
[2026-06-13 11:00:51,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:51,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:00:51,392.392 INFO    ] No update needed
[2026-06-13 11:00:51,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 11:00:51,412.412 INFO    ] 200
[2026-06-13 11:00:51,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:00:51,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:00:51,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:00:51,477.477 INFO    ] No camera update needed
[2026-06-13 11:00:51,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:00:51,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:00:51,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:00:51,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:00:53,510.510 INFO    ] ================================================
[2026-06-13 11:00:53,518.518 INFO    ] Launching Daemon at Sat Jun 13 11:00:53 IST 2026
[2026-06-13 11:00:53,524.524 INFO    ] ================================================
[2026-06-13 11:00:53,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:00:53
[2026-06-13 11:00:54,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:00:54,625.625 INFO    ] Initializing speech engine...
[2026-06-13 11:00:54,640.640 INFO    ] 2026-06-13 11:00:54
[2026-06-13 11:00:54,961.961 INFO    ] 2026-06-13 11:00:54
[2026-06-13 11:00:55,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:00:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:00:55,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:00:55,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:00:55,430.430 INFO    ] time= 13/06/2026 11:00:55
[2026-06-13 11:00:55,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:00:55,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:00:55,616.616 INFO    ] No existing commands found in stream
[2026-06-13 11:01:00,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:00,646.646 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 11:01:01,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:01:01,884.884 INFO    ] Checking for system updates...
[2026-06-13 11:01:01,909.909 INFO    ] 200
[2026-06-13 11:01:01,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:01,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:01,951.951 INFO    ] No update needed
[2026-06-13 11:01:01,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:01,980.980 INFO    ] 200
[2026-06-13 11:01:01,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:02,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:02,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:02,045.045 INFO    ] No camera update needed
[2026-06-13 11:01:02,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:02,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:02,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:02,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:04,103.103 INFO    ] ================================================
[2026-06-13 11:01:04,120.120 INFO    ] Launching Daemon at Sat Jun 13 11:01:04 IST 2026
[2026-06-13 11:01:04,131.131 INFO    ] ================================================
[2026-06-13 11:01:04,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:04
[2026-06-13 11:01:04,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:01:04,972.972 INFO    ] Initializing speech engine...
[2026-06-13 11:01:04,977.977 INFO    ] 2026-06-13 11:01:04
[2026-06-13 11:01:05,181.181 INFO    ] 2026-06-13 11:01:05
[2026-06-13 11:01:05,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:01:05,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:01:05,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:01:05,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:01:05,600.600 INFO    ] time= 13/06/2026 11:01:05
[2026-06-13 11:01:05,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:01:05,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:01:05,786.786 INFO    ] No existing commands found in stream
[2026-06-13 11:01:10,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:10,822.822 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 11:01:13,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:01:13,047.047 INFO    ] Checking for system updates...
[2026-06-13 11:01:13,070.070 INFO    ] 200
[2026-06-13 11:01:13,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:13,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:13,104.104 INFO    ] No update needed
[2026-06-13 11:01:13,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:13,126.126 INFO    ] 200
[2026-06-13 11:01:13,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:13,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:13,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:13,193.193 INFO    ] No camera update needed
[2026-06-13 11:01:13,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:13,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:13,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:13,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:15,242.242 INFO    ] ================================================
[2026-06-13 11:01:15,258.258 INFO    ] Launching Daemon at Sat Jun 13 11:01:15 IST 2026
[2026-06-13 11:01:15,269.269 INFO    ] ================================================
[2026-06-13 11:01:15,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:15
[2026-06-13 11:01:15,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:01:16,145.145 INFO    ] Initializing speech engine...
[2026-06-13 11:01:16,150.150 INFO    ] 2026-06-13 11:01:16
[2026-06-13 11:01:16,359.359 INFO    ] 2026-06-13 11:01:16
[2026-06-13 11:01:16,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:01:16,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:01:16,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:01:16,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:01:16,778.778 INFO    ] time= 13/06/2026 11:01:16
[2026-06-13 11:01:16,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:01:16,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:01:16,880.880 INFO    ] No existing commands found in stream
[2026-06-13 11:01:21,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:21,894.894 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 11:01:23,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:01:23,227.227 INFO    ] Checking for system updates...
[2026-06-13 11:01:23,248.248 INFO    ] 200
[2026-06-13 11:01:23,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:23,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:23,282.282 INFO    ] No update needed
[2026-06-13 11:01:23,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:23,303.303 INFO    ] 200
[2026-06-13 11:01:23,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:23,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:23,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:23,371.371 INFO    ] No camera update needed
[2026-06-13 11:01:23,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:23,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:23,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:23,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:25,421.421 INFO    ] ================================================
[2026-06-13 11:01:25,436.436 INFO    ] Launching Daemon at Sat Jun 13 11:01:25 IST 2026
[2026-06-13 11:01:25,447.447 INFO    ] ================================================
[2026-06-13 11:01:25,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:25
[2026-06-13 11:01:26,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:01:26,272.272 INFO    ] Initializing speech engine...
[2026-06-13 11:01:26,277.277 INFO    ] 2026-06-13 11:01:26
[2026-06-13 11:01:26,482.482 INFO    ] 2026-06-13 11:01:26
[2026-06-13 11:01:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:01:26,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:01:26,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:01:26,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:01:26,894.894 INFO    ] time= 13/06/2026 11:01:26
[2026-06-13 11:01:26,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:01:26,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:01:26,999.999 INFO    ] No existing commands found in stream
[2026-06-13 11:01:32,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:32,010.010 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 11:01:34,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:01:34,370.370 INFO    ] Checking for system updates...
[2026-06-13 11:01:34,391.391 INFO    ] 200
[2026-06-13 11:01:34,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:34,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:01:34,425.425 INFO    ] No update needed
[2026-06-13 11:01:34,426.426 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:34,446.446 INFO    ] 200
[2026-06-13 11:01:34,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:34,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:34,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:01:34,512.512 INFO    ] No camera update needed
[2026-06-13 11:01:34,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:34,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:34,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:34,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:36,561.561 INFO    ] ================================================
[2026-06-13 11:01:36,577.577 INFO    ] Launching Daemon at Sat Jun 13 11:01:36 IST 2026
[2026-06-13 11:01:36,587.587 INFO    ] ================================================
[2026-06-13 11:01:36,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:36
[2026-06-13 11:01:37,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:01:37,476.476 INFO    ] Initializing speech engine...
[2026-06-13 11:01:37,481.481 INFO    ] 2026-06-13 11:01:37
[2026-06-13 11:01:37,689.689 INFO    ] 2026-06-13 11:01:37
[2026-06-13 11:01:37,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:01:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:01:37,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:01:38,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:01:38,112.112 INFO    ] time= 13/06/2026 11:01:38
[2026-06-13 11:01:38,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:01:38,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:01:38,266.266 INFO    ] No existing commands found in stream
[2026-06-13 11:01:43,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:43,294.294 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 11:01:45,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:01:45,511.511 INFO    ] Checking for system updates...
[2026-06-13 11:01:45,534.534 INFO    ] 200
[2026-06-13 11:01:45,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:45,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:45,571.571 INFO    ] No update needed
[2026-06-13 11:01:45,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:45,593.593 INFO    ] 200
[2026-06-13 11:01:45,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:45,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:45,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:01:45,658.658 INFO    ] No camera update needed
[2026-06-13 11:01:45,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:45,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:45,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:45,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:47,709.709 INFO    ] ================================================
[2026-06-13 11:01:47,724.724 INFO    ] Launching Daemon at Sat Jun 13 11:01:47 IST 2026
[2026-06-13 11:01:47,736.736 INFO    ] ================================================
[2026-06-13 11:01:48,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:48
[2026-06-13 11:01:48,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:01:48,549.549 INFO    ] Initializing speech engine...
[2026-06-13 11:01:48,554.554 INFO    ] 2026-06-13 11:01:48
[2026-06-13 11:01:48,770.770 INFO    ] 2026-06-13 11:01:48
[2026-06-13 11:01:48,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:01:48,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:01:49,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:01:49,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:01:49,202.202 INFO    ] time= 13/06/2026 11:01:49
[2026-06-13 11:01:49,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:01:49,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:01:49,337.337 INFO    ] No existing commands found in stream
[2026-06-13 11:01:54,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:01:54,351.351 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 11:01:57,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:01:57,064.064 INFO    ] Checking for system updates...
[2026-06-13 11:01:57,086.086 INFO    ] 200
[2026-06-13 11:01:57,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:57,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:01:57,120.120 INFO    ] No update needed
[2026-06-13 11:01:57,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 11:01:57,143.143 INFO    ] 200
[2026-06-13 11:01:57,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:01:57,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:01:57,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:01:57,206.206 INFO    ] No camera update needed
[2026-06-13 11:01:57,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:01:57,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:01:57,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:01:57,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:01:59,253.253 INFO    ] ================================================
[2026-06-13 11:01:59,269.269 INFO    ] Launching Daemon at Sat Jun 13 11:01:59 IST 2026
[2026-06-13 11:01:59,280.280 INFO    ] ================================================
[2026-06-13 11:01:59,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:01:59
[2026-06-13 11:01:59,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:00,104.104 INFO    ] Initializing speech engine...
[2026-06-13 11:02:00,117.117 INFO    ] 2026-06-13 11:02:00
[2026-06-13 11:02:00,336.336 INFO    ] 2026-06-13 11:02:00
[2026-06-13 11:02:00,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:00,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:00,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:00,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:00,603.603 INFO    ] time= 13/06/2026 11:02:00
[2026-06-13 11:02:00,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:00,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:00,686.686 INFO    ] No existing commands found in stream
[2026-06-13 11:02:05,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:05,723.723 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 11:02:08,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:02:08,974.974 INFO    ] Checking for system updates...
[2026-06-13 11:02:08,994.994 INFO    ] 200
[2026-06-13 11:02:08,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:09,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:09,027.027 INFO    ] No update needed
[2026-06-13 11:02:09,029.029 INFO    ] Checking for camera pi updates...
[2026-06-13 11:02:09,050.050 INFO    ] 200
[2026-06-13 11:02:09,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:09,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:02:09,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:09,109.109 INFO    ] No camera update needed
[2026-06-13 11:02:09,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:02:09,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:02:09,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:02:09,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:02:11,156.156 INFO    ] ================================================
[2026-06-13 11:02:11,171.171 INFO    ] Launching Daemon at Sat Jun 13 11:02:11 IST 2026
[2026-06-13 11:02:11,182.182 INFO    ] ================================================
[2026-06-13 11:02:11,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:02:11
[2026-06-13 11:02:11,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:11,964.964 INFO    ] Initializing speech engine...
[2026-06-13 11:02:11,973.973 INFO    ] 2026-06-13 11:02:11
[2026-06-13 11:02:12,179.179 INFO    ] 2026-06-13 11:02:12
[2026-06-13 11:02:12,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:12,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:12,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:12,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:12,595.595 INFO    ] time= 13/06/2026 11:02:12
[2026-06-13 11:02:12,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:12,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:12,702.702 INFO    ] No existing commands found in stream
[2026-06-13 11:02:17,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:17,733.733 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 11:02:21,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:02:21,604.604 INFO    ] Checking for system updates...
[2026-06-13 11:02:21,624.624 INFO    ] 200
[2026-06-13 11:02:21,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:21,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:21,662.662 INFO    ] No update needed
[2026-06-13 11:02:21,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 11:02:21,683.683 INFO    ] 200
[2026-06-13 11:02:21,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:21,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:02:21,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:02:21,732.732 INFO    ] No camera update needed
[2026-06-13 11:02:21,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:02:21,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:02:21,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:02:21,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:02:23,779.779 INFO    ] ================================================
[2026-06-13 11:02:23,794.794 INFO    ] Launching Daemon at Sat Jun 13 11:02:23 IST 2026
[2026-06-13 11:02:23,805.805 INFO    ] ================================================
[2026-06-13 11:02:24,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:02:24
[2026-06-13 11:02:24,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:24,715.715 INFO    ] Initializing speech engine...
[2026-06-13 11:02:24,741.741 INFO    ] 2026-06-13 11:02:24
[2026-06-13 11:02:24,993.993 INFO    ] 2026-06-13 11:02:24
[2026-06-13 11:02:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:25,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:25,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:25,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:25,332.332 INFO    ] time= 13/06/2026 11:02:25
[2026-06-13 11:02:25,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:25,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:25,447.447 INFO    ] No existing commands found in stream
[2026-06-13 11:02:30,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:30,460.460 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 11:02:31,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:02:31,097.097 INFO    ] Checking for system updates...
[2026-06-13 11:02:31,119.119 INFO    ] 200
[2026-06-13 11:02:31,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:31,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:31,155.155 INFO    ] No update needed
[2026-06-13 11:02:31,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 11:02:31,177.177 INFO    ] 200
[2026-06-13 11:02:31,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:31,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:02:31,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:31,347.347 INFO    ] No camera update needed
[2026-06-13 11:02:31,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:02:31,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:02:31,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:02:31,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:02:33,387.387 INFO    ] ================================================
[2026-06-13 11:02:33,402.402 INFO    ] Launching Daemon at Sat Jun 13 11:02:33 IST 2026
[2026-06-13 11:02:33,412.412 INFO    ] ================================================
[2026-06-13 11:02:33,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:02:33
[2026-06-13 11:02:34,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:34,190.190 INFO    ] Initializing speech engine...
[2026-06-13 11:02:34,198.198 INFO    ] 2026-06-13 11:02:34
[2026-06-13 11:02:34,386.386 INFO    ] 2026-06-13 11:02:34
[2026-06-13 11:02:34,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:34,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:34,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:34,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:34,795.795 INFO    ] time= 13/06/2026 11:02:34
[2026-06-13 11:02:34,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:34,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:34,967.967 INFO    ] No existing commands found in stream
[2026-06-13 11:02:39,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:39,982.982 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 11:02:41,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:02:41,966.966 INFO    ] Checking for system updates...
[2026-06-13 11:02:41,988.988 INFO    ] 200
[2026-06-13 11:02:41,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:42,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:42,025.025 INFO    ] No update needed
[2026-06-13 11:02:42,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 11:02:42,046.046 INFO    ] 200
[2026-06-13 11:02:42,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:42,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:02:42,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:42,110.110 INFO    ] No camera update needed
[2026-06-13 11:02:42,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:02:42,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:02:42,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:02:42,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:02:44,159.159 INFO    ] ================================================
[2026-06-13 11:02:44,174.174 INFO    ] Launching Daemon at Sat Jun 13 11:02:44 IST 2026
[2026-06-13 11:02:44,185.185 INFO    ] ================================================
[2026-06-13 11:02:44,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:02:44
[2026-06-13 11:02:44,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:44,989.989 INFO    ] Initializing speech engine...
[2026-06-13 11:02:44,993.993 INFO    ] 2026-06-13 11:02:44
[2026-06-13 11:02:45,213.213 INFO    ] 2026-06-13 11:02:45
[2026-06-13 11:02:45,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:45,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:45,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:45,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:45,604.604 INFO    ] time= 13/06/2026 11:02:45
[2026-06-13 11:02:45,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:45,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:45,737.737 INFO    ] No existing commands found in stream
[2026-06-13 11:02:50,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:50,751.751 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 11:02:51,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:02:51,185.185 INFO    ] Checking for system updates...
[2026-06-13 11:02:51,211.211 INFO    ] 200
[2026-06-13 11:02:51,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:51,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:02:51,245.245 INFO    ] No update needed
[2026-06-13 11:02:51,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 11:02:51,266.266 INFO    ] 200
[2026-06-13 11:02:51,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:02:51,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:02:51,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:02:51,333.333 INFO    ] No camera update needed
[2026-06-13 11:02:51,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:02:51,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:02:51,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:02:51,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:02:53,382.382 INFO    ] ================================================
[2026-06-13 11:02:53,398.398 INFO    ] Launching Daemon at Sat Jun 13 11:02:53 IST 2026
[2026-06-13 11:02:53,408.408 INFO    ] ================================================
[2026-06-13 11:02:53,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:02:53
[2026-06-13 11:02:54,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:02:54,213.213 INFO    ] Initializing speech engine...
[2026-06-13 11:02:54,216.216 INFO    ] 2026-06-13 11:02:54
[2026-06-13 11:02:54,432.432 INFO    ] 2026-06-13 11:02:54
[2026-06-13 11:02:54,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:02:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:02:54,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:02:54,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:02:54,840.840 INFO    ] time= 13/06/2026 11:02:54
[2026-06-13 11:02:54,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:02:54,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:02:54,944.944 INFO    ] No existing commands found in stream
[2026-06-13 11:02:59,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:02:59,956.956 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 11:03:00,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:03:00,984.984 INFO    ] Checking for system updates...
[2026-06-13 11:03:01,006.006 INFO    ] 200
[2026-06-13 11:03:01,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:01,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:01,042.042 INFO    ] No update needed
[2026-06-13 11:03:01,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 11:03:01,064.064 INFO    ] 200
[2026-06-13 11:03:01,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:01,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:03:01,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:01,128.128 INFO    ] No camera update needed
[2026-06-13 11:03:01,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:03:01,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:03:01,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:03:01,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:03:03,175.175 INFO    ] ================================================
[2026-06-13 11:03:03,192.192 INFO    ] Launching Daemon at Sat Jun 13 11:03:03 IST 2026
[2026-06-13 11:03:03,204.204 INFO    ] ================================================
[2026-06-13 11:03:03,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:03:03
[2026-06-13 11:03:04,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:03:04,663.663 INFO    ] Initializing speech engine...
[2026-06-13 11:03:04,669.669 INFO    ] 2026-06-13 11:03:04
[2026-06-13 11:03:04,955.955 INFO    ] 2026-06-13 11:03:04
[2026-06-13 11:03:04,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:03:05,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:03:05,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:03:05,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:03:05,310.310 INFO    ] time= 13/06/2026 11:03:05
[2026-06-13 11:03:05,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:03:05,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:03:05,408.408 INFO    ] No existing commands found in stream
[2026-06-13 11:03:10,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:03:10,423.423 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 11:03:11,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:03:11,312.312 INFO    ] Checking for system updates...
[2026-06-13 11:03:11,333.333 INFO    ] 200
[2026-06-13 11:03:11,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:11,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:11,366.366 INFO    ] No update needed
[2026-06-13 11:03:11,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 11:03:11,389.389 INFO    ] 200
[2026-06-13 11:03:11,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:11,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:03:11,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:11,452.452 INFO    ] No camera update needed
[2026-06-13 11:03:11,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:03:11,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:03:11,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:03:11,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:03:13,500.500 INFO    ] ================================================
[2026-06-13 11:03:13,515.515 INFO    ] Launching Daemon at Sat Jun 13 11:03:13 IST 2026
[2026-06-13 11:03:13,526.526 INFO    ] ================================================
[2026-06-13 11:03:13,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:03:13
[2026-06-13 11:03:14,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:03:14,349.349 INFO    ] Initializing speech engine...
[2026-06-13 11:03:14,357.357 INFO    ] 2026-06-13 11:03:14
[2026-06-13 11:03:14,565.565 INFO    ] 2026-06-13 11:03:14
[2026-06-13 11:03:14,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:03:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:03:14,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:03:14,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:03:14,966.966 INFO    ] time= 13/06/2026 11:03:14
[2026-06-13 11:03:15,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:03:15,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:03:15,218.218 INFO    ] No existing commands found in stream
[2026-06-13 11:03:20,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:03:20,243.243 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 11:03:24,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:03:24,187.187 INFO    ] Checking for system updates...
[2026-06-13 11:03:24,208.208 INFO    ] 200
[2026-06-13 11:03:24,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:24,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:24,242.242 INFO    ] No update needed
[2026-06-13 11:03:24,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 11:03:24,264.264 INFO    ] 200
[2026-06-13 11:03:24,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:24,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:03:24,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:24,329.329 INFO    ] No camera update needed
[2026-06-13 11:03:24,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:03:24,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:03:24,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:03:24,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:03:26,380.380 INFO    ] ================================================
[2026-06-13 11:03:26,396.396 INFO    ] Launching Daemon at Sat Jun 13 11:03:26 IST 2026
[2026-06-13 11:03:26,406.406 INFO    ] ================================================
[2026-06-13 11:03:26,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:03:26
[2026-06-13 11:03:27,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:03:27,183.183 INFO    ] Initializing speech engine...
[2026-06-13 11:03:27,193.193 INFO    ] 2026-06-13 11:03:27
[2026-06-13 11:03:27,396.396 INFO    ] 2026-06-13 11:03:27
[2026-06-13 11:03:27,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:03:27,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:03:27,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:03:27,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:03:27,810.810 INFO    ] time= 13/06/2026 11:03:27
[2026-06-13 11:03:27,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:03:27,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:03:27,908.908 INFO    ] No existing commands found in stream
[2026-06-13 11:03:32,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:03:32,919.919 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 11:03:35,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:03:35,926.926 INFO    ] Checking for system updates...
[2026-06-13 11:03:35,947.947 INFO    ] 200
[2026-06-13 11:03:35,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:35,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:03:35,981.981 INFO    ] No update needed
[2026-06-13 11:03:35,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 11:03:36,002.002 INFO    ] 200
[2026-06-13 11:03:36,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:36,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:03:36,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:03:36,077.077 INFO    ] No camera update needed
[2026-06-13 11:03:36,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:03:36,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:03:36,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:03:36,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:03:38,126.126 INFO    ] ================================================
[2026-06-13 11:03:38,141.141 INFO    ] Launching Daemon at Sat Jun 13 11:03:38 IST 2026
[2026-06-13 11:03:38,152.152 INFO    ] ================================================
[2026-06-13 11:03:38,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:03:38
[2026-06-13 11:03:38,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:03:38,941.941 INFO    ] Initializing speech engine...
[2026-06-13 11:03:38,946.946 INFO    ] 2026-06-13 11:03:38
[2026-06-13 11:03:39,148.148 INFO    ] 2026-06-13 11:03:39
[2026-06-13 11:03:39,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:03:39,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:03:39,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:03:39,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:03:39,553.553 INFO    ] time= 13/06/2026 11:03:39
[2026-06-13 11:03:39,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:03:39,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:03:39,662.662 INFO    ] No existing commands found in stream
[2026-06-13 11:03:44,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:03:44,674.674 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 11:03:48,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:03:48,753.753 INFO    ] Checking for system updates...
[2026-06-13 11:03:48,774.774 INFO    ] 200
[2026-06-13 11:03:48,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:48,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:03:48,808.808 INFO    ] No update needed
[2026-06-13 11:03:48,810.810 INFO    ] Checking for camera pi updates...
[2026-06-13 11:03:48,830.830 INFO    ] 200
[2026-06-13 11:03:48,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:03:48,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:03:48,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:03:48,897.897 INFO    ] No camera update needed
[2026-06-13 11:03:48,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:03:48,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:03:48,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:03:48,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:03:50,947.947 INFO    ] ================================================
[2026-06-13 11:03:50,963.963 INFO    ] Launching Daemon at Sat Jun 13 11:03:50 IST 2026
[2026-06-13 11:03:50,973.973 INFO    ] ================================================
[2026-06-13 11:03:51,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:03:51
[2026-06-13 11:03:51,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:03:51,783.783 INFO    ] Initializing speech engine...
[2026-06-13 11:03:51,792.792 INFO    ] 2026-06-13 11:03:51
[2026-06-13 11:03:52,001.001 INFO    ] 2026-06-13 11:03:51
[2026-06-13 11:03:52,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:03:52,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:03:52,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:03:52,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:03:52,414.414 INFO    ] time= 13/06/2026 11:03:52
[2026-06-13 11:03:52,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:03:52,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:03:52,520.520 INFO    ] No existing commands found in stream
[2026-06-13 11:03:57,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:03:57,530.530 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 11:04:00,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:04:00,862.862 INFO    ] Checking for system updates...
[2026-06-13 11:04:00,882.882 INFO    ] 200
[2026-06-13 11:04:00,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:00,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:00,918.918 INFO    ] No update needed
[2026-06-13 11:04:00,919.919 INFO    ] Checking for camera pi updates...
[2026-06-13 11:04:00,939.939 INFO    ] 200
[2026-06-13 11:04:00,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:00,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:04:01,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:01,012.012 INFO    ] No camera update needed
[2026-06-13 11:04:01,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:04:01,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:04:01,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:04:01,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:04:03,060.060 INFO    ] ================================================
[2026-06-13 11:04:03,068.068 INFO    ] Launching Daemon at Sat Jun 13 11:04:03 IST 2026
[2026-06-13 11:04:03,074.074 INFO    ] ================================================
[2026-06-13 11:04:03,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:04:03
[2026-06-13 11:04:03,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:04:03,825.825 INFO    ] Initializing speech engine...
[2026-06-13 11:04:03,834.834 INFO    ] 2026-06-13 11:04:03
[2026-06-13 11:04:04,042.042 INFO    ] 2026-06-13 11:04:04
[2026-06-13 11:04:04,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:04:04,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:04:04,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:04:04,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:04:04,397.397 INFO    ] time= 13/06/2026 11:04:04
[2026-06-13 11:04:04,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:04:04,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:04:04,568.568 INFO    ] No existing commands found in stream
[2026-06-13 11:04:09,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:04:09,581.581 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 11:04:13,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:04:13,703.703 INFO    ] Checking for system updates...
[2026-06-13 11:04:13,724.724 INFO    ] 200
[2026-06-13 11:04:13,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:13,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:04:13,757.757 INFO    ] No update needed
[2026-06-13 11:04:13,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 11:04:13,779.779 INFO    ] 200
[2026-06-13 11:04:13,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:13,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:04:13,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:04:13,843.843 INFO    ] No camera update needed
[2026-06-13 11:04:13,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:04:13,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:04:13,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:04:13,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:04:15,889.889 INFO    ] ================================================
[2026-06-13 11:04:15,905.905 INFO    ] Launching Daemon at Sat Jun 13 11:04:15 IST 2026
[2026-06-13 11:04:15,916.916 INFO    ] ================================================
[2026-06-13 11:04:16,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:04:16
[2026-06-13 11:04:16,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:04:17,139.139 INFO    ] Initializing speech engine...
[2026-06-13 11:04:17,147.147 INFO    ] 2026-06-13 11:04:17
[2026-06-13 11:04:17,445.445 INFO    ] 2026-06-13 11:04:17
[2026-06-13 11:04:17,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:04:17,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:04:17,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:04:17,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:04:17,830.830 INFO    ] time= 13/06/2026 11:04:17
[2026-06-13 11:04:17,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:04:17,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:04:17,952.952 INFO    ] No existing commands found in stream
[2026-06-13 11:04:22,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:04:22,973.973 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 11:04:26,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:04:26,776.776 INFO    ] Checking for system updates...
[2026-06-13 11:04:26,799.799 INFO    ] 200
[2026-06-13 11:04:26,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:26,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:26,832.832 INFO    ] No update needed
[2026-06-13 11:04:26,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 11:04:26,852.852 INFO    ] 200
[2026-06-13 11:04:26,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:26,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:04:26,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:26,917.917 INFO    ] No camera update needed
[2026-06-13 11:04:26,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:04:26,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:04:26,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:04:26,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:04:28,964.964 INFO    ] ================================================
[2026-06-13 11:04:28,979.979 INFO    ] Launching Daemon at Sat Jun 13 11:04:28 IST 2026
[2026-06-13 11:04:28,991.991 INFO    ] ================================================
[2026-06-13 11:04:29,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:04:29
[2026-06-13 11:04:29,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:04:29,814.814 INFO    ] Initializing speech engine...
[2026-06-13 11:04:29,817.817 INFO    ] 2026-06-13 11:04:29
[2026-06-13 11:04:30,024.024 INFO    ] 2026-06-13 11:04:30
[2026-06-13 11:04:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:04:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:04:30,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:04:30,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:04:30,429.429 INFO    ] time= 13/06/2026 11:04:30
[2026-06-13 11:04:30,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:04:30,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:04:30,537.537 INFO    ] No existing commands found in stream
[2026-06-13 11:04:35,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:04:35,551.551 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 11:04:38,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:04:38,227.227 INFO    ] Checking for system updates...
[2026-06-13 11:04:38,248.248 INFO    ] 200
[2026-06-13 11:04:38,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:38,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:38,286.286 INFO    ] No update needed
[2026-06-13 11:04:38,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 11:04:38,308.308 INFO    ] 200
[2026-06-13 11:04:38,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:38,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:04:38,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:38,476.476 INFO    ] No camera update needed
[2026-06-13 11:04:38,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:04:38,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:04:38,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:04:38,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:04:40,525.525 INFO    ] ================================================
[2026-06-13 11:04:40,541.541 INFO    ] Launching Daemon at Sat Jun 13 11:04:40 IST 2026
[2026-06-13 11:04:40,551.551 INFO    ] ================================================
[2026-06-13 11:04:40,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:04:40
[2026-06-13 11:04:41,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:04:41,425.425 INFO    ] Initializing speech engine...
[2026-06-13 11:04:41,431.431 INFO    ] 2026-06-13 11:04:41
[2026-06-13 11:04:41,642.642 INFO    ] 2026-06-13 11:04:41
[2026-06-13 11:04:41,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:04:41,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:04:41,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:04:41,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:04:42,061.061 INFO    ] time= 13/06/2026 11:04:42
[2026-06-13 11:04:42,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:04:42,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:04:42,171.171 INFO    ] No existing commands found in stream
[2026-06-13 11:04:47,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:04:47,189.189 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 11:04:48,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:04:48,157.157 INFO    ] Checking for system updates...
[2026-06-13 11:04:48,178.178 INFO    ] 200
[2026-06-13 11:04:48,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:48,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:48,213.213 INFO    ] No update needed
[2026-06-13 11:04:48,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 11:04:48,235.235 INFO    ] 200
[2026-06-13 11:04:48,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:04:48,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:04:48,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:04:48,302.302 INFO    ] No camera update needed
[2026-06-13 11:04:48,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:04:48,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:04:48,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:04:48,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:04:50,350.350 INFO    ] ================================================
[2026-06-13 11:04:50,367.367 INFO    ] Launching Daemon at Sat Jun 13 11:04:50 IST 2026
[2026-06-13 11:04:50,379.379 INFO    ] ================================================
[2026-06-13 11:04:50,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:04:50
[2026-06-13 11:04:51,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:04:51,234.234 INFO    ] Initializing speech engine...
[2026-06-13 11:04:51,238.238 INFO    ] 2026-06-13 11:04:51
[2026-06-13 11:04:51,445.445 INFO    ] 2026-06-13 11:04:51
[2026-06-13 11:04:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:04:51,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:04:51,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:04:51,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:04:51,858.858 INFO    ] time= 13/06/2026 11:04:51
[2026-06-13 11:04:51,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:04:51,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:04:51,964.964 INFO    ] No existing commands found in stream
[2026-06-13 11:04:56,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:04:56,977.977 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 11:05:00,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:05:00,847.847 INFO    ] Checking for system updates...
[2026-06-13 11:05:00,869.869 INFO    ] 200
[2026-06-13 11:05:00,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:00,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:00,905.905 INFO    ] No update needed
[2026-06-13 11:05:00,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:00,925.925 INFO    ] 200
[2026-06-13 11:05:00,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:00,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:05:00,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:00,993.993 INFO    ] No camera update needed
[2026-06-13 11:05:00,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:05:00,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:05:00,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:05:01,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:05:03,043.043 INFO    ] ================================================
[2026-06-13 11:05:03,061.061 INFO    ] Launching Daemon at Sat Jun 13 11:05:03 IST 2026
[2026-06-13 11:05:03,074.074 INFO    ] ================================================
[2026-06-13 11:05:03,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:05:03
[2026-06-13 11:05:04,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:05:04,453.453 INFO    ] Initializing speech engine...
[2026-06-13 11:05:04,457.457 INFO    ] 2026-06-13 11:05:04
[2026-06-13 11:05:04,658.658 INFO    ] 2026-06-13 11:05:04
[2026-06-13 11:05:04,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:05:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:05:04,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:05:05,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:05:05,057.057 INFO    ] time= 13/06/2026 11:05:05
[2026-06-13 11:05:05,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:05:05,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:05:05,172.172 INFO    ] No existing commands found in stream
[2026-06-13 11:05:10,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:05:10,183.183 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 11:05:10,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:05:10,901.901 INFO    ] Checking for system updates...
[2026-06-13 11:05:10,925.925 INFO    ] 200
[2026-06-13 11:05:10,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:10,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:05:10,963.963 INFO    ] No update needed
[2026-06-13 11:05:10,965.965 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:10,989.989 INFO    ] 200
[2026-06-13 11:05:10,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:11,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:05:11,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:05:11,061.061 INFO    ] No camera update needed
[2026-06-13 11:05:11,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:05:11,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:05:11,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:05:11,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:05:13,104.104 INFO    ] ================================================
[2026-06-13 11:05:13,120.120 INFO    ] Launching Daemon at Sat Jun 13 11:05:13 IST 2026
[2026-06-13 11:05:13,131.131 INFO    ] ================================================
[2026-06-13 11:05:13,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:05:13
[2026-06-13 11:05:13,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:05:13,946.946 INFO    ] Initializing speech engine...
[2026-06-13 11:05:13,960.960 INFO    ] 2026-06-13 11:05:13
[2026-06-13 11:05:14,166.166 INFO    ] 2026-06-13 11:05:14
[2026-06-13 11:05:14,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:05:14,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:05:14,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:05:14,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:05:14,577.577 INFO    ] time= 13/06/2026 11:05:14
[2026-06-13 11:05:14,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:05:14,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:05:14,690.690 INFO    ] No existing commands found in stream
[2026-06-13 11:05:19,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:05:19,702.702 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 11:05:22,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:05:22,188.188 INFO    ] Checking for system updates...
[2026-06-13 11:05:22,209.209 INFO    ] 200
[2026-06-13 11:05:22,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:22,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:05:22,243.243 INFO    ] No update needed
[2026-06-13 11:05:22,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:22,266.266 INFO    ] 200
[2026-06-13 11:05:22,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:22,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:05:22,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:05:22,342.342 INFO    ] No camera update needed
[2026-06-13 11:05:22,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:05:22,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:05:22,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:05:22,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:05:24,392.392 INFO    ] ================================================
[2026-06-13 11:05:24,408.408 INFO    ] Launching Daemon at Sat Jun 13 11:05:24 IST 2026
[2026-06-13 11:05:24,419.419 INFO    ] ================================================
[2026-06-13 11:05:24,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:05:24
[2026-06-13 11:05:25,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:05:25,233.233 INFO    ] Initializing speech engine...
[2026-06-13 11:05:25,238.238 INFO    ] 2026-06-13 11:05:25
[2026-06-13 11:05:25,442.442 INFO    ] 2026-06-13 11:05:25
[2026-06-13 11:05:25,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:05:25,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:05:25,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:05:25,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:05:25,844.844 INFO    ] time= 13/06/2026 11:05:25
[2026-06-13 11:05:25,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:05:25,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:05:25,960.960 INFO    ] No existing commands found in stream
[2026-06-13 11:05:30,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:05:30,972.972 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 11:05:32,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:05:32,819.819 INFO    ] Checking for system updates...
[2026-06-13 11:05:32,841.841 INFO    ] 200
[2026-06-13 11:05:32,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:32,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:32,877.877 INFO    ] No update needed
[2026-06-13 11:05:32,878.878 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:32,900.900 INFO    ] 200
[2026-06-13 11:05:32,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:32,924.924 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:05:32,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:32,948.948 INFO    ] No camera update needed
[2026-06-13 11:05:32,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:05:32,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:05:32,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:05:32,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:05:35,997.997 INFO    ] ================================================
[2026-06-13 11:05:35,014.014 INFO    ] Launching Daemon at Sat Jun 13 11:05:35 IST 2026
[2026-06-13 11:05:35,025.025 INFO    ] ================================================
[2026-06-13 11:05:35,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:05:35
[2026-06-13 11:05:35,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:05:35,820.820 INFO    ] Initializing speech engine...
[2026-06-13 11:05:35,825.825 INFO    ] 2026-06-13 11:05:35
[2026-06-13 11:05:36,030.030 INFO    ] 2026-06-13 11:05:36
[2026-06-13 11:05:36,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:05:36,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:05:36,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:05:36,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:05:36,427.427 INFO    ] time= 13/06/2026 11:05:36
[2026-06-13 11:05:36,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:05:36,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:05:36,548.548 INFO    ] No existing commands found in stream
[2026-06-13 11:05:41,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:05:41,561.561 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 11:05:42,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:05:42,212.212 INFO    ] Checking for system updates...
[2026-06-13 11:05:42,233.233 INFO    ] 200
[2026-06-13 11:05:42,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:42,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:42,268.268 INFO    ] No update needed
[2026-06-13 11:05:42,270.270 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:42,289.289 INFO    ] 200
[2026-06-13 11:05:42,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:42,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:05:42,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:42,361.361 INFO    ] No camera update needed
[2026-06-13 11:05:42,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:05:42,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:05:42,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:05:42,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:05:44,409.409 INFO    ] ================================================
[2026-06-13 11:05:44,425.425 INFO    ] Launching Daemon at Sat Jun 13 11:05:44 IST 2026
[2026-06-13 11:05:44,436.436 INFO    ] ================================================
[2026-06-13 11:05:44,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:05:44
[2026-06-13 11:05:45,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:05:45,286.286 INFO    ] Initializing speech engine...
[2026-06-13 11:05:45,291.291 INFO    ] 2026-06-13 11:05:45
[2026-06-13 11:05:45,498.498 INFO    ] 2026-06-13 11:05:45
[2026-06-13 11:05:45,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:05:45,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:05:45,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:05:45,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:05:45,902.902 INFO    ] time= 13/06/2026 11:05:45
[2026-06-13 11:05:45,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:05:45,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:05:46,017.017 INFO    ] No existing commands found in stream
[2026-06-13 11:05:51,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:05:51,032.032 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 11:05:52,669.669 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 11:05:52,697.697 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 11:05:52,707.707 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 11:05:52,713.713 INFO    ] None
[2026-06-13 11:05:52,715.715 INFO    ] Checking for system updates...
[2026-06-13 11:05:52,739.739 INFO    ] 200
[2026-06-13 11:05:52,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:52,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:05:52,772.772 INFO    ] No update needed
[2026-06-13 11:05:52,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 11:05:52,794.794 INFO    ] 200
[2026-06-13 11:05:52,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:05:52,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:00,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:00,163.163 INFO    ] No camera update needed
[2026-06-13 11:06:00,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:00,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:00,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:00,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:02,204.204 INFO    ] ================================================
[2026-06-13 11:06:02,214.214 INFO    ] Launching Daemon at Sat Jun 13 11:06:02 IST 2026
[2026-06-13 11:06:02,223.223 INFO    ] ================================================
[2026-06-13 11:06:02,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:02
[2026-06-13 11:06:02,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:03,002.002 INFO    ] Initializing speech engine...
[2026-06-13 11:06:03,007.007 INFO    ] 2026-06-13 11:06:03
[2026-06-13 11:06:03,212.212 INFO    ] 2026-06-13 11:06:03
[2026-06-13 11:06:03,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:06:03,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:06:03,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:06:03,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:06:03,548.548 INFO    ] time= 13/06/2026 11:06:03
[2026-06-13 11:06:03,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:06:03,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:06:03,735.735 INFO    ] No existing commands found in stream
[2026-06-13 11:06:08,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:06:08,748.748 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 11:06:09,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:06:09,375.375 INFO    ] Checking for system updates...
[2026-06-13 11:06:09,397.397 INFO    ] 200
[2026-06-13 11:06:09,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:09,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:09,433.433 INFO    ] No update needed
[2026-06-13 11:06:09,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 11:06:09,454.454 INFO    ] 200
[2026-06-13 11:06:09,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:09,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:09,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:09,518.518 INFO    ] No camera update needed
[2026-06-13 11:06:09,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:09,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:09,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:09,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:11,566.566 INFO    ] ================================================
[2026-06-13 11:06:11,582.582 INFO    ] Launching Daemon at Sat Jun 13 11:06:11 IST 2026
[2026-06-13 11:06:11,592.592 INFO    ] ================================================
[2026-06-13 11:06:11,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:11
[2026-06-13 11:06:12,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:12,474.474 INFO    ] Initializing speech engine...
[2026-06-13 11:06:12,481.481 INFO    ] 2026-06-13 11:06:12
[2026-06-13 11:06:12,689.689 INFO    ] 2026-06-13 11:06:12
[2026-06-13 11:06:12,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:06:12,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:06:12,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:06:13,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:06:13,103.103 INFO    ] time= 13/06/2026 11:06:13
[2026-06-13 11:06:13,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:06:13,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:06:13,214.214 INFO    ] No existing commands found in stream
[2026-06-13 11:06:18,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:06:18,229.229 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 11:06:19,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:06:19,358.358 INFO    ] Checking for system updates...
[2026-06-13 11:06:19,379.379 INFO    ] 200
[2026-06-13 11:06:19,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:19,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:06:19,413.413 INFO    ] No update needed
[2026-06-13 11:06:19,415.415 INFO    ] Checking for camera pi updates...
[2026-06-13 11:06:19,435.435 INFO    ] 200
[2026-06-13 11:06:19,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:19,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:19,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:19,503.503 INFO    ] No camera update needed
[2026-06-13 11:06:19,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:19,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:19,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:19,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:21,554.554 INFO    ] ================================================
[2026-06-13 11:06:21,572.572 INFO    ] Launching Daemon at Sat Jun 13 11:06:21 IST 2026
[2026-06-13 11:06:21,583.583 INFO    ] ================================================
[2026-06-13 11:06:21,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:21
[2026-06-13 11:06:22,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:22,407.407 INFO    ] Initializing speech engine...
[2026-06-13 11:06:22,420.420 INFO    ] 2026-06-13 11:06:22
[2026-06-13 11:06:22,638.638 INFO    ] 2026-06-13 11:06:22
[2026-06-13 11:06:22,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:06:22,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:06:22,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:06:23,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:06:23,050.050 INFO    ] time= 13/06/2026 11:06:23
[2026-06-13 11:06:23,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:06:23,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:06:23,191.191 INFO    ] No existing commands found in stream
[2026-06-13 11:06:28,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:06:28,205.205 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 11:06:31,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:06:31,617.617 INFO    ] Checking for system updates...
[2026-06-13 11:06:31,639.639 INFO    ] 200
[2026-06-13 11:06:31,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:31,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:31,676.676 INFO    ] No update needed
[2026-06-13 11:06:31,678.678 INFO    ] Checking for camera pi updates...
[2026-06-13 11:06:31,701.701 INFO    ] 200
[2026-06-13 11:06:31,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:31,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:31,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:31,767.767 INFO    ] No camera update needed
[2026-06-13 11:06:31,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:31,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:31,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:31,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:33,809.809 INFO    ] ================================================
[2026-06-13 11:06:33,824.824 INFO    ] Launching Daemon at Sat Jun 13 11:06:33 IST 2026
[2026-06-13 11:06:33,835.835 INFO    ] ================================================
[2026-06-13 11:06:34,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:34
[2026-06-13 11:06:34,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:34,654.654 INFO    ] Initializing speech engine...
[2026-06-13 11:06:34,664.664 INFO    ] 2026-06-13 11:06:34
[2026-06-13 11:06:34,867.867 INFO    ] 2026-06-13 11:06:34
[2026-06-13 11:06:34,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:06:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:06:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:06:35,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:06:35,116.116 INFO    ] time= 13/06/2026 11:06:35
[2026-06-13 11:06:35,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:06:35,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:06:35,220.220 INFO    ] No existing commands found in stream
[2026-06-13 11:06:40,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:06:40,244.244 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 11:06:43,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:06:43,962.962 INFO    ] Checking for system updates...
[2026-06-13 11:06:43,984.984 INFO    ] 200
[2026-06-13 11:06:43,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:44,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:44,019.019 INFO    ] No update needed
[2026-06-13 11:06:44,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 11:06:44,041.041 INFO    ] 200
[2026-06-13 11:06:44,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:44,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:44,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:44,104.104 INFO    ] No camera update needed
[2026-06-13 11:06:44,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:44,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:44,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:44,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:46,153.153 INFO    ] ================================================
[2026-06-13 11:06:46,169.169 INFO    ] Launching Daemon at Sat Jun 13 11:06:46 IST 2026
[2026-06-13 11:06:46,180.180 INFO    ] ================================================
[2026-06-13 11:06:46,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:46
[2026-06-13 11:06:46,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:46,994.994 INFO    ] Initializing speech engine...
[2026-06-13 11:06:47,000.000 INFO    ] 2026-06-13 11:06:46
[2026-06-13 11:06:47,202.202 INFO    ] 2026-06-13 11:06:47
[2026-06-13 11:06:47,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:06:47,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:06:47,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:06:47,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:06:47,606.606 INFO    ] time= 13/06/2026 11:06:47
[2026-06-13 11:06:47,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:06:47,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:06:47,721.721 INFO    ] No existing commands found in stream
[2026-06-13 11:06:52,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:06:52,735.735 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 11:06:56,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:06:56,379.379 INFO    ] Checking for system updates...
[2026-06-13 11:06:56,399.399 INFO    ] 200
[2026-06-13 11:06:56,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:56,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:56,432.432 INFO    ] No update needed
[2026-06-13 11:06:56,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 11:06:56,455.455 INFO    ] 200
[2026-06-13 11:06:56,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:06:56,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:06:56,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:06:56,521.521 INFO    ] No camera update needed
[2026-06-13 11:06:56,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:06:56,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:06:56,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:06:56,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:06:58,567.567 INFO    ] ================================================
[2026-06-13 11:06:58,582.582 INFO    ] Launching Daemon at Sat Jun 13 11:06:58 IST 2026
[2026-06-13 11:06:58,593.593 INFO    ] ================================================
[2026-06-13 11:06:58,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:06:58
[2026-06-13 11:06:59,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:06:59,768.768 INFO    ] Initializing speech engine...
[2026-06-13 11:06:59,776.776 INFO    ] 2026-06-13 11:06:59
[2026-06-13 11:07:00,027.027 INFO    ] 2026-06-13 11:07:00
[2026-06-13 11:07:00,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:00,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:00,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:00,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:00,367.367 INFO    ] time= 13/06/2026 11:07:00
[2026-06-13 11:07:00,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:00,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:00,479.479 INFO    ] No existing commands found in stream
[2026-06-13 11:07:05,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:07:05,494.494 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 11:07:07,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:07:07,469.469 INFO    ] Checking for system updates...
[2026-06-13 11:07:07,489.489 INFO    ] 200
[2026-06-13 11:07:07,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:07,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:07:07,522.522 INFO    ] No update needed
[2026-06-13 11:07:07,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 11:07:07,543.543 INFO    ] 200
[2026-06-13 11:07:07,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:07,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:07:07,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:07:07,606.606 INFO    ] No camera update needed
[2026-06-13 11:07:07,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:07:07,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:07:07,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:07:07,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:07:09,656.656 INFO    ] ================================================
[2026-06-13 11:07:09,671.671 INFO    ] Launching Daemon at Sat Jun 13 11:07:09 IST 2026
[2026-06-13 11:07:09,682.682 INFO    ] ================================================
[2026-06-13 11:07:10,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:07:10
[2026-06-13 11:07:10,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:07:10,626.626 INFO    ] Initializing speech engine...
[2026-06-13 11:07:10,641.641 INFO    ] 2026-06-13 11:07:10
[2026-06-13 11:07:10,922.922 INFO    ] 2026-06-13 11:07:10
[2026-06-13 11:07:10,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:11,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:11,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:11,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:11,265.265 INFO    ] time= 13/06/2026 11:07:11
[2026-06-13 11:07:11,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:11,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:11,366.366 INFO    ] No existing commands found in stream
[2026-06-13 11:07:16,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:07:16,404.404 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 11:07:19,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:07:19,792.792 INFO    ] Checking for system updates...
[2026-06-13 11:07:19,813.813 INFO    ] 200
[2026-06-13 11:07:19,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:19,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:07:19,849.849 INFO    ] No update needed
[2026-06-13 11:07:19,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 11:07:19,870.870 INFO    ] 200
[2026-06-13 11:07:19,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:19,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:07:19,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:07:19,933.933 INFO    ] No camera update needed
[2026-06-13 11:07:19,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:07:19,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:07:19,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:07:19,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:07:21,980.980 INFO    ] ================================================
[2026-06-13 11:07:22,995.995 INFO    ] Launching Daemon at Sat Jun 13 11:07:21 IST 2026
[2026-06-13 11:07:22,006.006 INFO    ] ================================================
[2026-06-13 11:07:22,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:07:22
[2026-06-13 11:07:22,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:07:22,856.856 INFO    ] Initializing speech engine...
[2026-06-13 11:07:22,866.866 INFO    ] 2026-06-13 11:07:22
[2026-06-13 11:07:23,076.076 INFO    ] 2026-06-13 11:07:23
[2026-06-13 11:07:23,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:23,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:23,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:23,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:23,482.482 INFO    ] time= 13/06/2026 11:07:23
[2026-06-13 11:07:23,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:23,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:23,598.598 INFO    ] No existing commands found in stream
[2026-06-13 11:07:28,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:07:28,612.612 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 11:07:31,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:07:31,237.237 INFO    ] Checking for system updates...
[2026-06-13 11:07:31,258.258 INFO    ] 200
[2026-06-13 11:07:31,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:31,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:07:31,292.292 INFO    ] No update needed
[2026-06-13 11:07:31,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 11:07:31,312.312 INFO    ] 200
[2026-06-13 11:07:31,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:31,339.339 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:07:31,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:07:31,374.374 INFO    ] No camera update needed
[2026-06-13 11:07:31,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:07:31,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:07:31,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:07:31,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:07:33,414.414 INFO    ] ================================================
[2026-06-13 11:07:33,429.429 INFO    ] Launching Daemon at Sat Jun 13 11:07:33 IST 2026
[2026-06-13 11:07:33,439.439 INFO    ] ================================================
[2026-06-13 11:07:33,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:07:33
[2026-06-13 11:07:34,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:07:34,261.261 INFO    ] Initializing speech engine...
[2026-06-13 11:07:34,266.266 INFO    ] 2026-06-13 11:07:34
[2026-06-13 11:07:34,470.470 INFO    ] 2026-06-13 11:07:34
[2026-06-13 11:07:34,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:34,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:34,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:34,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:34,870.870 INFO    ] time= 13/06/2026 11:07:34
[2026-06-13 11:07:34,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:34,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:34,986.986 INFO    ] No existing commands found in stream
[2026-06-13 11:07:39,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:07:39,998.998 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 11:07:43,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:07:43,299.299 INFO    ] Checking for system updates...
[2026-06-13 11:07:43,320.320 INFO    ] 200
[2026-06-13 11:07:43,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:43,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:07:43,353.353 INFO    ] No update needed
[2026-06-13 11:07:43,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 11:07:43,374.374 INFO    ] 200
[2026-06-13 11:07:43,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:43,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:07:43,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:07:43,442.442 INFO    ] No camera update needed
[2026-06-13 11:07:43,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:07:43,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:07:43,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:07:43,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:07:45,490.490 INFO    ] ================================================
[2026-06-13 11:07:45,505.505 INFO    ] Launching Daemon at Sat Jun 13 11:07:45 IST 2026
[2026-06-13 11:07:45,516.516 INFO    ] ================================================
[2026-06-13 11:07:45,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:07:45
[2026-06-13 11:07:46,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:07:46,356.356 INFO    ] Initializing speech engine...
[2026-06-13 11:07:46,363.363 INFO    ] 2026-06-13 11:07:46
[2026-06-13 11:07:46,569.569 INFO    ] 2026-06-13 11:07:46
[2026-06-13 11:07:46,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:46,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:46,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:46,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:46,964.964 INFO    ] time= 13/06/2026 11:07:46
[2026-06-13 11:07:46,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:47,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:47,097.097 INFO    ] No existing commands found in stream
[2026-06-13 11:07:52,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:07:52,111.111 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 11:07:56,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:07:56,132.132 INFO    ] Checking for system updates...
[2026-06-13 11:07:56,154.154 INFO    ] 200
[2026-06-13 11:07:56,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:56,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:07:56,189.189 INFO    ] No update needed
[2026-06-13 11:07:56,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 11:07:56,210.210 INFO    ] 200
[2026-06-13 11:07:56,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:07:56,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:07:56,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:07:56,296.296 INFO    ] No camera update needed
[2026-06-13 11:07:56,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:07:56,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:07:56,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:07:56,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:07:58,343.343 INFO    ] ================================================
[2026-06-13 11:07:58,359.359 INFO    ] Launching Daemon at Sat Jun 13 11:07:58 IST 2026
[2026-06-13 11:07:58,370.370 INFO    ] ================================================
[2026-06-13 11:07:58,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:07:58
[2026-06-13 11:07:59,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:07:59,150.150 INFO    ] Initializing speech engine...
[2026-06-13 11:07:59,156.156 INFO    ] 2026-06-13 11:07:59
[2026-06-13 11:07:59,360.360 INFO    ] 2026-06-13 11:07:59
[2026-06-13 11:07:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:07:59,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:07:59,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:07:59,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:07:59,770.770 INFO    ] time= 13/06/2026 11:07:59
[2026-06-13 11:07:59,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:07:59,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:07:59,873.873 INFO    ] No existing commands found in stream
[2026-06-13 11:08:04,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:04,887.887 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 11:08:08,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:08:08,132.132 INFO    ] Checking for system updates...
[2026-06-13 11:08:08,154.154 INFO    ] 200
[2026-06-13 11:08:08,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:08,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:08:08,187.187 INFO    ] No update needed
[2026-06-13 11:08:08,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 11:08:08,209.209 INFO    ] 200
[2026-06-13 11:08:08,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:08,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:08:08,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:08,276.276 INFO    ] No camera update needed
[2026-06-13 11:08:08,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:08:08,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:08:08,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:08:08,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:08:10,325.325 INFO    ] ================================================
[2026-06-13 11:08:10,340.340 INFO    ] Launching Daemon at Sat Jun 13 11:08:10 IST 2026
[2026-06-13 11:08:10,352.352 INFO    ] ================================================
[2026-06-13 11:08:10,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:08:10
[2026-06-13 11:08:10,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:08:11,139.139 INFO    ] Initializing speech engine...
[2026-06-13 11:08:11,146.146 INFO    ] 2026-06-13 11:08:11
[2026-06-13 11:08:11,350.350 INFO    ] 2026-06-13 11:08:11
[2026-06-13 11:08:11,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:08:11,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:08:11,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:08:11,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:08:11,756.756 INFO    ] time= 13/06/2026 11:08:11
[2026-06-13 11:08:11,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:08:11,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:08:11,867.867 INFO    ] No existing commands found in stream
[2026-06-13 11:08:16,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:16,879.879 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 11:08:18,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:08:18,262.262 INFO    ] Checking for system updates...
[2026-06-13 11:08:18,283.283 INFO    ] 200
[2026-06-13 11:08:18,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:18,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:18,316.316 INFO    ] No update needed
[2026-06-13 11:08:18,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 11:08:18,337.337 INFO    ] 200
[2026-06-13 11:08:18,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:18,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:08:18,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:18,405.405 INFO    ] No camera update needed
[2026-06-13 11:08:18,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:08:18,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:08:18,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:08:18,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:08:20,452.452 INFO    ] ================================================
[2026-06-13 11:08:20,468.468 INFO    ] Launching Daemon at Sat Jun 13 11:08:20 IST 2026
[2026-06-13 11:08:20,479.479 INFO    ] ================================================
[2026-06-13 11:08:20,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:08:20
[2026-06-13 11:08:21,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:08:21,282.282 INFO    ] Initializing speech engine...
[2026-06-13 11:08:21,292.292 INFO    ] 2026-06-13 11:08:21
[2026-06-13 11:08:21,496.496 INFO    ] 2026-06-13 11:08:21
[2026-06-13 11:08:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:08:21,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:08:21,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:08:21,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:08:21,906.906 INFO    ] time= 13/06/2026 11:08:21
[2026-06-13 11:08:21,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:08:21,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:08:22,010.010 INFO    ] No existing commands found in stream
[2026-06-13 11:08:27,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:27,022.022 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 11:08:30,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:08:30,462.462 INFO    ] Checking for system updates...
[2026-06-13 11:08:30,482.482 INFO    ] 200
[2026-06-13 11:08:30,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:30,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:08:30,516.516 INFO    ] No update needed
[2026-06-13 11:08:30,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 11:08:30,540.540 INFO    ] 200
[2026-06-13 11:08:30,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:30,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:08:30,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:08:30,618.618 INFO    ] No camera update needed
[2026-06-13 11:08:30,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:08:30,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:08:30,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:08:30,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:08:32,661.661 INFO    ] ================================================
[2026-06-13 11:08:32,676.676 INFO    ] Launching Daemon at Sat Jun 13 11:08:32 IST 2026
[2026-06-13 11:08:32,687.687 INFO    ] ================================================
[2026-06-13 11:08:33,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:08:33
[2026-06-13 11:08:33,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:08:33,549.549 INFO    ] Initializing speech engine...
[2026-06-13 11:08:33,555.555 INFO    ] 2026-06-13 11:08:33
[2026-06-13 11:08:33,767.767 INFO    ] 2026-06-13 11:08:33
[2026-06-13 11:08:33,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:08:33,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:08:33,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:08:34,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:08:34,180.180 INFO    ] time= 13/06/2026 11:08:34
[2026-06-13 11:08:34,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:08:34,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:08:34,292.292 INFO    ] No existing commands found in stream
[2026-06-13 11:08:39,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:39,306.306 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 11:08:40,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:08:40,482.482 INFO    ] Checking for system updates...
[2026-06-13 11:08:40,509.509 INFO    ] 200
[2026-06-13 11:08:40,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:40,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:08:40,545.545 INFO    ] No update needed
[2026-06-13 11:08:40,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 11:08:40,567.567 INFO    ] 200
[2026-06-13 11:08:40,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:40,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:08:40,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:40,619.619 INFO    ] No camera update needed
[2026-06-13 11:08:40,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:08:40,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:08:40,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:08:40,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:08:42,664.664 INFO    ] ================================================
[2026-06-13 11:08:42,679.679 INFO    ] Launching Daemon at Sat Jun 13 11:08:42 IST 2026
[2026-06-13 11:08:42,690.690 INFO    ] ================================================
[2026-06-13 11:08:43,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:08:43
[2026-06-13 11:08:43,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:08:43,478.478 INFO    ] Initializing speech engine...
[2026-06-13 11:08:43,483.483 INFO    ] 2026-06-13 11:08:43
[2026-06-13 11:08:43,687.687 INFO    ] 2026-06-13 11:08:43
[2026-06-13 11:08:43,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:08:43,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:08:43,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:08:44,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:08:44,092.092 INFO    ] time= 13/06/2026 11:08:44
[2026-06-13 11:08:44,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:08:44,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:08:44,201.201 INFO    ] No existing commands found in stream
[2026-06-13 11:08:49,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:49,214.214 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 11:08:50,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:08:50,110.110 INFO    ] Checking for system updates...
[2026-06-13 11:08:50,131.131 INFO    ] 200
[2026-06-13 11:08:50,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:50,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:50,167.167 INFO    ] No update needed
[2026-06-13 11:08:50,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 11:08:50,190.190 INFO    ] 200
[2026-06-13 11:08:50,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:08:50,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:08:50,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:08:50,256.256 INFO    ] No camera update needed
[2026-06-13 11:08:50,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:08:50,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:08:50,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:08:50,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:08:52,303.303 INFO    ] ================================================
[2026-06-13 11:08:52,318.318 INFO    ] Launching Daemon at Sat Jun 13 11:08:52 IST 2026
[2026-06-13 11:08:52,329.329 INFO    ] ================================================
[2026-06-13 11:08:52,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:08:52
[2026-06-13 11:08:52,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:08:53,106.106 INFO    ] Initializing speech engine...
[2026-06-13 11:08:53,117.117 INFO    ] 2026-06-13 11:08:53
[2026-06-13 11:08:53,320.320 INFO    ] 2026-06-13 11:08:53
[2026-06-13 11:08:53,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:08:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:08:53,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:08:53,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:08:53,736.736 INFO    ] time= 13/06/2026 11:08:53
[2026-06-13 11:08:53,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:08:53,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:08:53,836.836 INFO    ] No existing commands found in stream
[2026-06-13 11:08:58,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:08:58,848.848 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 11:09:00,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:09:00,319.319 INFO    ] Checking for system updates...
[2026-06-13 11:09:00,342.342 INFO    ] 200
[2026-06-13 11:09:00,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:00,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:00,375.375 INFO    ] No update needed
[2026-06-13 11:09:00,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:00,396.396 INFO    ] 200
[2026-06-13 11:09:00,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:00,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:09:00,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:00,457.457 INFO    ] No camera update needed
[2026-06-13 11:09:00,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:00,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:00,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:00,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:09:02,511.511 INFO    ] ================================================
[2026-06-13 11:09:02,534.534 INFO    ] Launching Daemon at Sat Jun 13 11:09:02 IST 2026
[2026-06-13 11:09:02,549.549 INFO    ] ================================================
[2026-06-13 11:09:03,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:09:03
[2026-06-13 11:09:03,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:09:04,092.092 INFO    ] Initializing speech engine...
[2026-06-13 11:09:04,106.106 INFO    ] 2026-06-13 11:09:04
[2026-06-13 11:09:04,373.373 INFO    ] 2026-06-13 11:09:04
[2026-06-13 11:09:04,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:09:04,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:09:04,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:09:04,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:09:04,714.714 INFO    ] time= 13/06/2026 11:09:04
[2026-06-13 11:09:04,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:09:04,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:09:04,827.827 INFO    ] No existing commands found in stream
[2026-06-13 11:09:09,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:09:09,843.843 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 11:09:14,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:09:14,075.075 INFO    ] Checking for system updates...
[2026-06-13 11:09:14,096.096 INFO    ] 200
[2026-06-13 11:09:14,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:14,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:14,131.131 INFO    ] No update needed
[2026-06-13 11:09:14,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:14,152.152 INFO    ] 200
[2026-06-13 11:09:14,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:14,181.181 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:09:14,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:14,231.231 INFO    ] No camera update needed
[2026-06-13 11:09:14,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:14,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:14,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:09:16,277.277 INFO    ] ================================================
[2026-06-13 11:09:16,292.292 INFO    ] Launching Daemon at Sat Jun 13 11:09:16 IST 2026
[2026-06-13 11:09:16,304.304 INFO    ] ================================================
[2026-06-13 11:09:16,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:09:16
[2026-06-13 11:09:16,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:09:17,116.116 INFO    ] Initializing speech engine...
[2026-06-13 11:09:17,121.121 INFO    ] 2026-06-13 11:09:17
[2026-06-13 11:09:17,328.328 INFO    ] 2026-06-13 11:09:17
[2026-06-13 11:09:17,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:09:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:09:17,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:09:17,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:09:17,734.734 INFO    ] time= 13/06/2026 11:09:17
[2026-06-13 11:09:17,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:09:17,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:09:17,849.849 INFO    ] No existing commands found in stream
[2026-06-13 11:09:22,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:09:22,863.863 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 11:09:25,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:09:25,693.693 INFO    ] Checking for system updates...
[2026-06-13 11:09:25,715.715 INFO    ] 200
[2026-06-13 11:09:25,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:25,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:25,752.752 INFO    ] No update needed
[2026-06-13 11:09:25,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:25,774.774 INFO    ] 200
[2026-06-13 11:09:25,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:25,801.801 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:09:25,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:25,837.837 INFO    ] No camera update needed
[2026-06-13 11:09:25,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:25,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:25,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:25,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:09:27,883.883 INFO    ] ================================================
[2026-06-13 11:09:27,900.900 INFO    ] Launching Daemon at Sat Jun 13 11:09:27 IST 2026
[2026-06-13 11:09:27,911.911 INFO    ] ================================================
[2026-06-13 11:09:28,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:09:28
[2026-06-13 11:09:28,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:09:28,811.811 INFO    ] Initializing speech engine...
[2026-06-13 11:09:28,817.817 INFO    ] 2026-06-13 11:09:28
[2026-06-13 11:09:29,028.028 INFO    ] 2026-06-13 11:09:29
[2026-06-13 11:09:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:09:29,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:09:29,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:09:29,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:09:29,435.435 INFO    ] time= 13/06/2026 11:09:29
[2026-06-13 11:09:29,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:09:29,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:09:29,554.554 INFO    ] No existing commands found in stream
[2026-06-13 11:09:34,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:09:34,566.566 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 11:09:37,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:09:37,580.580 INFO    ] Checking for system updates...
[2026-06-13 11:09:37,639.639 INFO    ] 200
[2026-06-13 11:09:37,642.642 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:37,644.644 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 11:09:37,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:37,695.695 INFO    ] 200
[2026-06-13 11:09:37,697.697 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:37,700.700 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 11:09:37,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:37,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:37,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:37,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:09:39,751.751 INFO    ] ================================================
[2026-06-13 11:09:39,759.759 INFO    ] Launching Daemon at Sat Jun 13 11:09:39 IST 2026
[2026-06-13 11:09:39,766.766 INFO    ] ================================================
[2026-06-13 11:09:40,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:09:40
[2026-06-13 11:09:40,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:09:40,574.574 INFO    ] Initializing speech engine...
[2026-06-13 11:09:40,579.579 INFO    ] 2026-06-13 11:09:40
[2026-06-13 11:09:40,797.797 INFO    ] 2026-06-13 11:09:40
[2026-06-13 11:09:40,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:09:40,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:09:40,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:09:41,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:09:41,215.215 INFO    ] time= 13/06/2026 11:09:41
[2026-06-13 11:09:41,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:09:41,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:09:41,323.323 INFO    ] No existing commands found in stream
[2026-06-13 11:09:46,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:09:46,335.335 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 11:09:49,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:09:49,429.429 INFO    ] Checking for system updates...
[2026-06-13 11:09:49,451.451 INFO    ] 200
[2026-06-13 11:09:49,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:49,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:49,484.484 INFO    ] No update needed
[2026-06-13 11:09:49,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:49,505.505 INFO    ] 200
[2026-06-13 11:09:49,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:49,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:09:49,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:49,573.573 INFO    ] No camera update needed
[2026-06-13 11:09:49,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:49,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:49,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:09:51,622.622 INFO    ] ================================================
[2026-06-13 11:09:51,637.637 INFO    ] Launching Daemon at Sat Jun 13 11:09:51 IST 2026
[2026-06-13 11:09:51,649.649 INFO    ] ================================================
[2026-06-13 11:09:51,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:09:51
[2026-06-13 11:09:52,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:09:52,500.500 INFO    ] Initializing speech engine...
[2026-06-13 11:09:52,504.504 INFO    ] 2026-06-13 11:09:52
[2026-06-13 11:09:52,712.712 INFO    ] 2026-06-13 11:09:52
[2026-06-13 11:09:52,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:09:52,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:09:52,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:09:53,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:09:53,227.227 INFO    ] time= 13/06/2026 11:09:53
[2026-06-13 11:09:53,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:09:53,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:09:53,447.447 INFO    ] No existing commands found in stream
[2026-06-13 11:09:58,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:09:58,473.473 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 11:09:59,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:09:59,193.193 INFO    ] Checking for system updates...
[2026-06-13 11:09:59,214.214 INFO    ] 200
[2026-06-13 11:09:59,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:59,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:09:59,250.250 INFO    ] No update needed
[2026-06-13 11:09:59,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 11:09:59,272.272 INFO    ] 200
[2026-06-13 11:09:59,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:09:59,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:09:59,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:09:59,337.337 INFO    ] No camera update needed
[2026-06-13 11:09:59,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:09:59,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:09:59,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:09:59,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:01,385.385 INFO    ] ================================================
[2026-06-13 11:10:01,402.402 INFO    ] Launching Daemon at Sat Jun 13 11:10:01 IST 2026
[2026-06-13 11:10:01,413.413 INFO    ] ================================================
[2026-06-13 11:10:01,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:01
[2026-06-13 11:10:02,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:02,856.856 INFO    ] Initializing speech engine...
[2026-06-13 11:10:02,860.860 INFO    ] 2026-06-13 11:10:02
[2026-06-13 11:10:03,304.304 INFO    ] 2026-06-13 11:10:03
[2026-06-13 11:10:03,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:03,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:03,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:03,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:03,679.679 INFO    ] time= 13/06/2026 11:10:03
[2026-06-13 11:10:03,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:03,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:03,845.845 INFO    ] No existing commands found in stream
[2026-06-13 11:10:08,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:10:08,872.872 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 11:10:09,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:10:09,237.237 INFO    ] Checking for system updates...
[2026-06-13 11:10:09,260.260 INFO    ] 200
[2026-06-13 11:10:09,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:09,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:09,293.293 INFO    ] No update needed
[2026-06-13 11:10:09,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 11:10:09,313.313 INFO    ] 200
[2026-06-13 11:10:09,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:09,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:10:09,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:09,480.480 INFO    ] No camera update needed
[2026-06-13 11:10:09,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:10:09,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:10:09,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:10:09,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:11,530.530 INFO    ] ================================================
[2026-06-13 11:10:11,546.546 INFO    ] Launching Daemon at Sat Jun 13 11:10:11 IST 2026
[2026-06-13 11:10:11,557.557 INFO    ] ================================================
[2026-06-13 11:10:11,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:11
[2026-06-13 11:10:12,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:12,350.350 INFO    ] Initializing speech engine...
[2026-06-13 11:10:12,354.354 INFO    ] 2026-06-13 11:10:12
[2026-06-13 11:10:12,571.571 INFO    ] 2026-06-13 11:10:12
[2026-06-13 11:10:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:12,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:12,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:12,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:13,029.029 INFO    ] time= 13/06/2026 11:10:12
[2026-06-13 11:10:13,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:13,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:13,146.146 INFO    ] No existing commands found in stream
[2026-06-13 11:10:18,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:10:18,159.159 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 11:10:19,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:10:19,263.263 INFO    ] Checking for system updates...
[2026-06-13 11:10:19,285.285 INFO    ] 200
[2026-06-13 11:10:19,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:19,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:19,323.323 INFO    ] No update needed
[2026-06-13 11:10:19,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 11:10:19,347.347 INFO    ] 200
[2026-06-13 11:10:19,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:19,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:10:19,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:19,412.412 INFO    ] No camera update needed
[2026-06-13 11:10:19,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:10:19,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:10:19,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:10:19,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:21,461.461 INFO    ] ================================================
[2026-06-13 11:10:21,477.477 INFO    ] Launching Daemon at Sat Jun 13 11:10:21 IST 2026
[2026-06-13 11:10:21,488.488 INFO    ] ================================================
[2026-06-13 11:10:21,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:21
[2026-06-13 11:10:22,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:22,299.299 INFO    ] Initializing speech engine...
[2026-06-13 11:10:22,304.304 INFO    ] 2026-06-13 11:10:22
[2026-06-13 11:10:22,510.510 INFO    ] 2026-06-13 11:10:22
[2026-06-13 11:10:22,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:22,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:22,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:22,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:22,920.920 INFO    ] time= 13/06/2026 11:10:22
[2026-06-13 11:10:22,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:22,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:23,032.032 INFO    ] No existing commands found in stream
[2026-06-13 11:10:28,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:10:28,049.049 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 11:10:29,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:10:29,807.807 INFO    ] Checking for system updates...
[2026-06-13 11:10:29,829.829 INFO    ] 200
[2026-06-13 11:10:29,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:29,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:10:29,865.865 INFO    ] No update needed
[2026-06-13 11:10:29,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 11:10:29,888.888 INFO    ] 200
[2026-06-13 11:10:29,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:29,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:10:29,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:29,952.952 INFO    ] No camera update needed
[2026-06-13 11:10:29,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:10:29,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:10:29,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:10:29,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:32,002.002 INFO    ] ================================================
[2026-06-13 11:10:32,020.020 INFO    ] Launching Daemon at Sat Jun 13 11:10:32 IST 2026
[2026-06-13 11:10:32,027.027 INFO    ] ================================================
[2026-06-13 11:10:32,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:32
[2026-06-13 11:10:33,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:33,399.399 INFO    ] Initializing speech engine...
[2026-06-13 11:10:33,408.408 INFO    ] 2026-06-13 11:10:33
[2026-06-13 11:10:33,653.653 INFO    ] 2026-06-13 11:10:33
[2026-06-13 11:10:33,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:33,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:33,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:34,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:34,024.024 INFO    ] time= 13/06/2026 11:10:34
[2026-06-13 11:10:34,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:34,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:34,211.211 INFO    ] No existing commands found in stream
[2026-06-13 11:10:39,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:10:39,234.234 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 11:10:42,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:10:42,066.066 INFO    ] Checking for system updates...
[2026-06-13 11:10:42,090.090 INFO    ] 200
[2026-06-13 11:10:42,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:42,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:42,126.126 INFO    ] No update needed
[2026-06-13 11:10:42,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 11:10:42,148.148 INFO    ] 200
[2026-06-13 11:10:42,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:42,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:10:42,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:42,219.219 INFO    ] No camera update needed
[2026-06-13 11:10:42,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:10:42,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:10:42,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:10:42,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:44,267.267 INFO    ] ================================================
[2026-06-13 11:10:44,283.283 INFO    ] Launching Daemon at Sat Jun 13 11:10:44 IST 2026
[2026-06-13 11:10:44,294.294 INFO    ] ================================================
[2026-06-13 11:10:44,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:44
[2026-06-13 11:10:44,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:45,118.118 INFO    ] Initializing speech engine...
[2026-06-13 11:10:45,122.122 INFO    ] 2026-06-13 11:10:45
[2026-06-13 11:10:45,352.352 INFO    ] 2026-06-13 11:10:45
[2026-06-13 11:10:45,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:45,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:45,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:45,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:45,783.783 INFO    ] time= 13/06/2026 11:10:45
[2026-06-13 11:10:45,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:45,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:45,910.910 INFO    ] No existing commands found in stream
[2026-06-13 11:10:50,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:10:50,923.923 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 11:10:53,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:10:53,947.947 INFO    ] Checking for system updates...
[2026-06-13 11:10:53,968.968 INFO    ] 200
[2026-06-13 11:10:53,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:54,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:10:54,003.003 INFO    ] No update needed
[2026-06-13 11:10:54,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 11:10:54,026.026 INFO    ] 200
[2026-06-13 11:10:54,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:10:54,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:10:54,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:10:54,097.097 INFO    ] No camera update needed
[2026-06-13 11:10:54,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:10:54,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:10:54,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:10:54,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:10:56,143.143 INFO    ] ================================================
[2026-06-13 11:10:56,159.159 INFO    ] Launching Daemon at Sat Jun 13 11:10:56 IST 2026
[2026-06-13 11:10:56,170.170 INFO    ] ================================================
[2026-06-13 11:10:56,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:10:56
[2026-06-13 11:10:56,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:10:57,018.018 INFO    ] Initializing speech engine...
[2026-06-13 11:10:57,029.029 INFO    ] 2026-06-13 11:10:57
[2026-06-13 11:10:57,241.241 INFO    ] 2026-06-13 11:10:57
[2026-06-13 11:10:57,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:10:57,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:10:57,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:10:57,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:10:57,666.666 INFO    ] time= 13/06/2026 11:10:57
[2026-06-13 11:10:57,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:10:57,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:10:57,794.794 INFO    ] No existing commands found in stream
[2026-06-13 11:11:02,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:11:02,801.801 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 11:11:05,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:11:05,959.959 INFO    ] Checking for system updates...
[2026-06-13 11:11:05,982.982 INFO    ] 200
[2026-06-13 11:11:05,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:06,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:11:06,017.017 INFO    ] No update needed
[2026-06-13 11:11:06,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 11:11:06,039.039 INFO    ] 200
[2026-06-13 11:11:06,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:06,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:11:06,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:11:06,106.106 INFO    ] No camera update needed
[2026-06-13 11:11:06,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:11:06,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:11:06,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:11:06,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:11:08,163.163 INFO    ] ================================================
[2026-06-13 11:11:08,179.179 INFO    ] Launching Daemon at Sat Jun 13 11:11:08 IST 2026
[2026-06-13 11:11:08,190.190 INFO    ] ================================================
[2026-06-13 11:11:08,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:11:08
[2026-06-13 11:11:09,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:11:09,410.410 INFO    ] Initializing speech engine...
[2026-06-13 11:11:09,418.418 INFO    ] 2026-06-13 11:11:09
[2026-06-13 11:11:09,634.634 INFO    ] 2026-06-13 11:11:09
[2026-06-13 11:11:09,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:11:09,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:11:09,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:11:09,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:11:10,058.058 INFO    ] time= 13/06/2026 11:11:10
[2026-06-13 11:11:10,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:11:10,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:11:10,156.156 INFO    ] No existing commands found in stream
[2026-06-13 11:11:15,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:11:15,168.168 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 11:11:18,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:11:18,458.458 INFO    ] Checking for system updates...
[2026-06-13 11:11:18,480.480 INFO    ] 200
[2026-06-13 11:11:18,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:18,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:11:18,513.513 INFO    ] No update needed
[2026-06-13 11:11:18,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 11:11:18,533.533 INFO    ] 200
[2026-06-13 11:11:18,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:18,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:11:18,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:11:18,599.599 INFO    ] No camera update needed
[2026-06-13 11:11:18,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:11:18,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:11:18,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:11:18,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:11:20,646.646 INFO    ] ================================================
[2026-06-13 11:11:20,663.663 INFO    ] Launching Daemon at Sat Jun 13 11:11:20 IST 2026
[2026-06-13 11:11:20,674.674 INFO    ] ================================================
[2026-06-13 11:11:21,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:11:21
[2026-06-13 11:11:21,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:11:21,488.488 INFO    ] Initializing speech engine...
[2026-06-13 11:11:21,493.493 INFO    ] 2026-06-13 11:11:21
[2026-06-13 11:11:21,698.698 INFO    ] 2026-06-13 11:11:21
[2026-06-13 11:11:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:11:21,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:11:21,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:11:22,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:11:22,103.103 INFO    ] time= 13/06/2026 11:11:22
[2026-06-13 11:11:22,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:11:22,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:11:22,213.213 INFO    ] No existing commands found in stream
[2026-06-13 11:11:27,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:11:27,225.225 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 11:11:30,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:11:30,553.553 INFO    ] Checking for system updates...
[2026-06-13 11:11:30,573.573 INFO    ] 200
[2026-06-13 11:11:30,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:30,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:11:30,609.609 INFO    ] No update needed
[2026-06-13 11:11:30,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 11:11:30,630.630 INFO    ] 200
[2026-06-13 11:11:30,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:30,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:11:30,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:11:30,697.697 INFO    ] No camera update needed
[2026-06-13 11:11:30,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:11:30,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:11:30,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:11:30,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:11:32,745.745 INFO    ] ================================================
[2026-06-13 11:11:32,760.760 INFO    ] Launching Daemon at Sat Jun 13 11:11:32 IST 2026
[2026-06-13 11:11:32,771.771 INFO    ] ================================================
[2026-06-13 11:11:33,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:11:33
[2026-06-13 11:11:33,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:11:33,559.559 INFO    ] Initializing speech engine...
[2026-06-13 11:11:33,565.565 INFO    ] 2026-06-13 11:11:33
[2026-06-13 11:11:33,768.768 INFO    ] 2026-06-13 11:11:33
[2026-06-13 11:11:33,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:11:34,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:11:34,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:11:34,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:11:34,243.243 INFO    ] time= 13/06/2026 11:11:34
[2026-06-13 11:11:34,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:11:34,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:11:34,456.456 INFO    ] No existing commands found in stream
[2026-06-13 11:11:39,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:11:39,489.489 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 11:11:42,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:11:42,986.986 INFO    ] Checking for system updates...
[2026-06-13 11:11:43,007.007 INFO    ] 200
[2026-06-13 11:11:43,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:43,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:11:43,044.044 INFO    ] No update needed
[2026-06-13 11:11:43,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 11:11:43,069.069 INFO    ] 200
[2026-06-13 11:11:43,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:43,097.097 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:11:43,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:11:43,136.136 INFO    ] No camera update needed
[2026-06-13 11:11:43,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:11:43,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:11:43,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:11:43,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:11:45,185.185 INFO    ] ================================================
[2026-06-13 11:11:45,201.201 INFO    ] Launching Daemon at Sat Jun 13 11:11:45 IST 2026
[2026-06-13 11:11:45,211.211 INFO    ] ================================================
[2026-06-13 11:11:45,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:11:45
[2026-06-13 11:11:45,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:11:46,084.084 INFO    ] Initializing speech engine...
[2026-06-13 11:11:46,088.088 INFO    ] 2026-06-13 11:11:46
[2026-06-13 11:11:46,295.295 INFO    ] 2026-06-13 11:11:46
[2026-06-13 11:11:46,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:11:46,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:11:46,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:11:46,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:11:46,716.716 INFO    ] time= 13/06/2026 11:11:46
[2026-06-13 11:11:46,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:11:46,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:11:46,814.814 INFO    ] No existing commands found in stream
[2026-06-13 11:11:51,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:11:51,832.832 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 11:11:53,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:11:53,797.797 INFO    ] Checking for system updates...
[2026-06-13 11:11:53,819.819 INFO    ] 200
[2026-06-13 11:11:53,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:53,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:11:53,853.853 INFO    ] No update needed
[2026-06-13 11:11:53,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 11:11:53,874.874 INFO    ] 200
[2026-06-13 11:11:53,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:11:53,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:11:53,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:11:53,939.939 INFO    ] No camera update needed
[2026-06-13 11:11:53,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:11:53,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:11:53,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:11:53,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:11:55,988.988 INFO    ] ================================================
[2026-06-13 11:11:56,003.003 INFO    ] Launching Daemon at Sat Jun 13 11:11:55 IST 2026
[2026-06-13 11:11:56,014.014 INFO    ] ================================================
[2026-06-13 11:11:56,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:11:56
[2026-06-13 11:11:56,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:11:57,222.222 INFO    ] Initializing speech engine...
[2026-06-13 11:11:57,231.231 INFO    ] 2026-06-13 11:11:57
[2026-06-13 11:11:57,490.490 INFO    ] 2026-06-13 11:11:57
[2026-06-13 11:11:57,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:11:57,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:11:57,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:11:57,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:11:57,958.958 INFO    ] time= 13/06/2026 11:11:57
[2026-06-13 11:11:58,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:11:58,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:11:58,185.185 INFO    ] No existing commands found in stream
[2026-06-13 11:12:03,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:03,202.202 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 11:12:03,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:12:03,758.758 INFO    ] Checking for system updates...
[2026-06-13 11:12:03,800.800 INFO    ] 200
[2026-06-13 11:12:03,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:03,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:12:03,868.868 INFO    ] No update needed
[2026-06-13 11:12:03,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 11:12:03,907.907 INFO    ] 200
[2026-06-13 11:12:03,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:03,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:12:04,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:12:04,012.012 INFO    ] No camera update needed
[2026-06-13 11:12:04,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:12:04,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:12:04,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:12:04,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:12:06,067.067 INFO    ] ================================================
[2026-06-13 11:12:06,082.082 INFO    ] Launching Daemon at Sat Jun 13 11:12:06 IST 2026
[2026-06-13 11:12:06,093.093 INFO    ] ================================================
[2026-06-13 11:12:06,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:12:06
[2026-06-13 11:12:06,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:12:06,905.905 INFO    ] Initializing speech engine...
[2026-06-13 11:12:06,913.913 INFO    ] 2026-06-13 11:12:06
[2026-06-13 11:12:07,140.140 INFO    ] 2026-06-13 11:12:07
[2026-06-13 11:12:07,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:12:07,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:12:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:12:07,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:12:07,527.527 INFO    ] time= 13/06/2026 11:12:07
[2026-06-13 11:12:07,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:12:07,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:12:07,707.707 INFO    ] No existing commands found in stream
[2026-06-13 11:12:12,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:12,721.721 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 11:12:15,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:12:15,446.446 INFO    ] Checking for system updates...
[2026-06-13 11:12:15,467.467 INFO    ] 200
[2026-06-13 11:12:15,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:15,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:15,501.501 INFO    ] No update needed
[2026-06-13 11:12:15,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 11:12:15,523.523 INFO    ] 200
[2026-06-13 11:12:15,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:15,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:12:15,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:15,689.689 INFO    ] No camera update needed
[2026-06-13 11:12:15,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:12:15,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:12:15,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:12:15,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:12:17,745.745 INFO    ] ================================================
[2026-06-13 11:12:17,761.761 INFO    ] Launching Daemon at Sat Jun 13 11:12:17 IST 2026
[2026-06-13 11:12:17,772.772 INFO    ] ================================================
[2026-06-13 11:12:18,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:12:18
[2026-06-13 11:12:18,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:12:18,584.584 INFO    ] Initializing speech engine...
[2026-06-13 11:12:18,589.589 INFO    ] 2026-06-13 11:12:18
[2026-06-13 11:12:18,795.795 INFO    ] 2026-06-13 11:12:18
[2026-06-13 11:12:18,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:12:18,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:12:18,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:12:19,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:12:19,185.185 INFO    ] time= 13/06/2026 11:12:19
[2026-06-13 11:12:19,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:12:19,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:12:19,323.323 INFO    ] No existing commands found in stream
[2026-06-13 11:12:24,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:24,362.362 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 11:12:26,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:12:26,111.111 INFO    ] Checking for system updates...
[2026-06-13 11:12:26,132.132 INFO    ] 200
[2026-06-13 11:12:26,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:26,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:26,168.168 INFO    ] No update needed
[2026-06-13 11:12:26,170.170 INFO    ] Checking for camera pi updates...
[2026-06-13 11:12:26,192.192 INFO    ] 200
[2026-06-13 11:12:26,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:26,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:12:26,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:12:26,259.259 INFO    ] No camera update needed
[2026-06-13 11:12:26,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:12:26,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:12:26,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:12:26,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:12:28,307.307 INFO    ] ================================================
[2026-06-13 11:12:28,322.322 INFO    ] Launching Daemon at Sat Jun 13 11:12:28 IST 2026
[2026-06-13 11:12:28,333.333 INFO    ] ================================================
[2026-06-13 11:12:28,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:12:28
[2026-06-13 11:12:28,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:12:29,136.136 INFO    ] Initializing speech engine...
[2026-06-13 11:12:29,142.142 INFO    ] 2026-06-13 11:12:29
[2026-06-13 11:12:29,347.347 INFO    ] 2026-06-13 11:12:29
[2026-06-13 11:12:29,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:12:29,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:12:29,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:12:29,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:12:29,756.756 INFO    ] time= 13/06/2026 11:12:29
[2026-06-13 11:12:29,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:12:29,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:12:29,859.859 INFO    ] No existing commands found in stream
[2026-06-13 11:12:34,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:34,873.873 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 11:12:37,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:12:37,696.696 INFO    ] Checking for system updates...
[2026-06-13 11:12:37,717.717 INFO    ] 200
[2026-06-13 11:12:37,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:37,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:37,750.750 INFO    ] No update needed
[2026-06-13 11:12:37,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 11:12:37,771.771 INFO    ] 200
[2026-06-13 11:12:37,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:37,798.798 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:12:37,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:37,836.836 INFO    ] No camera update needed
[2026-06-13 11:12:37,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:12:37,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:12:37,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:12:37,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:12:39,885.885 INFO    ] ================================================
[2026-06-13 11:12:39,901.901 INFO    ] Launching Daemon at Sat Jun 13 11:12:39 IST 2026
[2026-06-13 11:12:39,913.913 INFO    ] ================================================
[2026-06-13 11:12:40,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:12:40
[2026-06-13 11:12:40,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:12:40,699.699 INFO    ] Initializing speech engine...
[2026-06-13 11:12:40,704.704 INFO    ] 2026-06-13 11:12:40
[2026-06-13 11:12:40,908.908 INFO    ] 2026-06-13 11:12:40
[2026-06-13 11:12:40,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:12:41,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:12:41,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:12:41,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:12:41,331.331 INFO    ] time= 13/06/2026 11:12:41
[2026-06-13 11:12:41,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:12:41,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:12:41,575.575 INFO    ] No existing commands found in stream
[2026-06-13 11:12:46,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:46,613.613 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 11:12:50,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:12:50,159.159 INFO    ] Checking for system updates...
[2026-06-13 11:12:50,182.182 INFO    ] 200
[2026-06-13 11:12:50,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:50,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:50,219.219 INFO    ] No update needed
[2026-06-13 11:12:50,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 11:12:50,241.241 INFO    ] 200
[2026-06-13 11:12:50,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:12:50,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:12:50,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:12:50,304.304 INFO    ] No camera update needed
[2026-06-13 11:12:50,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:12:50,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:12:50,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:12:50,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:12:52,354.354 INFO    ] ================================================
[2026-06-13 11:12:52,369.369 INFO    ] Launching Daemon at Sat Jun 13 11:12:52 IST 2026
[2026-06-13 11:12:52,381.381 INFO    ] ================================================
[2026-06-13 11:12:52,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:12:52
[2026-06-13 11:12:53,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:12:53,262.262 INFO    ] Initializing speech engine...
[2026-06-13 11:12:53,277.277 INFO    ] 2026-06-13 11:12:53
[2026-06-13 11:12:53,486.486 INFO    ] 2026-06-13 11:12:53
[2026-06-13 11:12:53,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:12:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:12:53,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:12:53,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:12:53,913.913 INFO    ] time= 13/06/2026 11:12:53
[2026-06-13 11:12:53,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:12:53,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:12:54,009.009 INFO    ] No existing commands found in stream
[2026-06-13 11:12:59,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:12:59,024.024 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 11:13:01,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:13:01,950.950 INFO    ] Checking for system updates...
[2026-06-13 11:13:01,974.974 INFO    ] 200
[2026-06-13 11:13:01,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:02,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:02,016.016 INFO    ] No update needed
[2026-06-13 11:13:02,018.018 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:02,041.041 INFO    ] 200
[2026-06-13 11:13:02,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:02,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:02,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:13:02,113.113 INFO    ] No camera update needed
[2026-06-13 11:13:02,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:02,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:02,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:02,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:13:04,171.171 INFO    ] ================================================
[2026-06-13 11:13:04,187.187 INFO    ] Launching Daemon at Sat Jun 13 11:13:04 IST 2026
[2026-06-13 11:13:04,198.198 INFO    ] ================================================
[2026-06-13 11:13:04,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:13:04
[2026-06-13 11:13:04,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:13:05,002.002 INFO    ] Initializing speech engine...
[2026-06-13 11:13:05,007.007 INFO    ] 2026-06-13 11:13:05
[2026-06-13 11:13:05,212.212 INFO    ] 2026-06-13 11:13:05
[2026-06-13 11:13:05,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:13:05,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:13:05,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:13:05,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:13:05,610.610 INFO    ] time= 13/06/2026 11:13:05
[2026-06-13 11:13:05,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:13:05,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:13:05,726.726 INFO    ] No existing commands found in stream
[2026-06-13 11:13:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:13:10,740.740 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 11:13:12,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:13:12,662.662 INFO    ] Checking for system updates...
[2026-06-13 11:13:12,683.683 INFO    ] 200
[2026-06-13 11:13:12,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:12,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:12,717.717 INFO    ] No update needed
[2026-06-13 11:13:12,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:12,738.738 INFO    ] 200
[2026-06-13 11:13:12,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:12,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:12,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:12,811.811 INFO    ] No camera update needed
[2026-06-13 11:13:12,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:12,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:12,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:12,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:13:14,857.857 INFO    ] ================================================
[2026-06-13 11:13:14,874.874 INFO    ] Launching Daemon at Sat Jun 13 11:13:14 IST 2026
[2026-06-13 11:13:14,885.885 INFO    ] ================================================
[2026-06-13 11:13:15,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:13:15
[2026-06-13 11:13:15,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:13:16,155.155 INFO    ] Initializing speech engine...
[2026-06-13 11:13:16,161.161 INFO    ] 2026-06-13 11:13:16
[2026-06-13 11:13:16,422.422 INFO    ] 2026-06-13 11:13:16
[2026-06-13 11:13:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:13:16,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:13:16,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:13:16,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:13:16,872.872 INFO    ] time= 13/06/2026 11:13:16
[2026-06-13 11:13:16,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:13:16,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:13:17,032.032 INFO    ] No existing commands found in stream
[2026-06-13 11:13:22,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:13:22,047.047 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 11:13:26,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:13:26,565.565 INFO    ] Checking for system updates...
[2026-06-13 11:13:26,587.587 INFO    ] 200
[2026-06-13 11:13:26,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:26,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:26,621.621 INFO    ] No update needed
[2026-06-13 11:13:26,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:26,642.642 INFO    ] 200
[2026-06-13 11:13:26,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:26,667.667 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:26,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:26,705.705 INFO    ] No camera update needed
[2026-06-13 11:13:26,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:26,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:26,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:26,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:13:28,752.752 INFO    ] ================================================
[2026-06-13 11:13:28,767.767 INFO    ] Launching Daemon at Sat Jun 13 11:13:28 IST 2026
[2026-06-13 11:13:28,779.779 INFO    ] ================================================
[2026-06-13 11:13:29,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:13:29
[2026-06-13 11:13:29,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:13:29,611.611 INFO    ] Initializing speech engine...
[2026-06-13 11:13:29,616.616 INFO    ] 2026-06-13 11:13:29
[2026-06-13 11:13:29,807.807 INFO    ] 2026-06-13 11:13:29
[2026-06-13 11:13:29,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:13:29,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:13:29,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:13:30,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:13:30,095.095 INFO    ] time= 13/06/2026 11:13:30
[2026-06-13 11:13:30,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:13:30,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:13:30,200.200 INFO    ] No existing commands found in stream
[2026-06-13 11:13:35,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:13:35,237.237 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 11:13:36,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:13:36,703.703 INFO    ] Checking for system updates...
[2026-06-13 11:13:36,723.723 INFO    ] 200
[2026-06-13 11:13:36,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:36,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:13:36,757.757 INFO    ] No update needed
[2026-06-13 11:13:36,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:36,780.780 INFO    ] 200
[2026-06-13 11:13:36,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:36,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:36,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:13:36,844.844 INFO    ] No camera update needed
[2026-06-13 11:13:36,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:36,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:36,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:36,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:13:38,891.891 INFO    ] ================================================
[2026-06-13 11:13:38,907.907 INFO    ] Launching Daemon at Sat Jun 13 11:13:38 IST 2026
[2026-06-13 11:13:38,919.919 INFO    ] ================================================
[2026-06-13 11:13:39,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:13:39
[2026-06-13 11:13:39,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:13:39,729.729 INFO    ] Initializing speech engine...
[2026-06-13 11:13:39,734.734 INFO    ] 2026-06-13 11:13:39
[2026-06-13 11:13:39,939.939 INFO    ] 2026-06-13 11:13:39
[2026-06-13 11:13:39,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:13:40,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:13:40,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:13:40,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:13:40,336.336 INFO    ] time= 13/06/2026 11:13:40
[2026-06-13 11:13:40,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:13:40,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:13:40,473.473 INFO    ] No existing commands found in stream
[2026-06-13 11:13:45,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:13:45,490.490 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 11:13:48,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:13:48,277.277 INFO    ] Checking for system updates...
[2026-06-13 11:13:48,297.297 INFO    ] 200
[2026-06-13 11:13:48,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:48,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:48,333.333 INFO    ] No update needed
[2026-06-13 11:13:48,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:48,354.354 INFO    ] 200
[2026-06-13 11:13:48,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:48,381.381 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:48,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:13:48,422.422 INFO    ] No camera update needed
[2026-06-13 11:13:48,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:48,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:48,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:48,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:13:50,470.470 INFO    ] ================================================
[2026-06-13 11:13:50,485.485 INFO    ] Launching Daemon at Sat Jun 13 11:13:50 IST 2026
[2026-06-13 11:13:50,497.497 INFO    ] ================================================
[2026-06-13 11:13:50,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:13:50
[2026-06-13 11:13:51,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:13:51,365.365 INFO    ] Initializing speech engine...
[2026-06-13 11:13:51,370.370 INFO    ] 2026-06-13 11:13:51
[2026-06-13 11:13:51,579.579 INFO    ] 2026-06-13 11:13:51
[2026-06-13 11:13:51,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:13:51,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:13:51,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:13:51,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:13:51,999.999 INFO    ] time= 13/06/2026 11:13:51
[2026-06-13 11:13:52,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:13:52,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:13:52,101.101 INFO    ] No existing commands found in stream
[2026-06-13 11:13:57,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:13:57,119.119 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 11:13:58,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:13:58,986.986 INFO    ] Checking for system updates...
[2026-06-13 11:13:59,008.008 INFO    ] 200
[2026-06-13 11:13:59,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:59,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:13:59,041.041 INFO    ] No update needed
[2026-06-13 11:13:59,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 11:13:59,062.062 INFO    ] 200
[2026-06-13 11:13:59,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:13:59,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:13:59,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:13:59,123.123 INFO    ] No camera update needed
[2026-06-13 11:13:59,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:13:59,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:13:59,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:13:59,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:01,170.170 INFO    ] ================================================
[2026-06-13 11:14:01,187.187 INFO    ] Launching Daemon at Sat Jun 13 11:14:01 IST 2026
[2026-06-13 11:14:01,197.197 INFO    ] ================================================
[2026-06-13 11:14:01,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:01
[2026-06-13 11:14:01,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:02,172.172 INFO    ] Initializing speech engine...
[2026-06-13 11:14:02,177.177 INFO    ] 2026-06-13 11:14:02
[2026-06-13 11:14:02,472.472 INFO    ] 2026-06-13 11:14:02
[2026-06-13 11:14:02,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:02,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:02,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:02,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:02,871.871 INFO    ] time= 13/06/2026 11:14:02
[2026-06-13 11:14:02,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:02,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:02,971.971 INFO    ] No existing commands found in stream
[2026-06-13 11:14:07,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:07,984.984 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 11:14:08,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:14:08,629.629 INFO    ] Checking for system updates...
[2026-06-13 11:14:08,650.650 INFO    ] 200
[2026-06-13 11:14:08,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:08,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:08,684.684 INFO    ] No update needed
[2026-06-13 11:14:08,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 11:14:08,705.705 INFO    ] 200
[2026-06-13 11:14:08,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:08,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:14:08,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:08,771.771 INFO    ] No camera update needed
[2026-06-13 11:14:08,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:14:08,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:14:08,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:14:08,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:10,819.819 INFO    ] ================================================
[2026-06-13 11:14:10,835.835 INFO    ] Launching Daemon at Sat Jun 13 11:14:10 IST 2026
[2026-06-13 11:14:10,846.846 INFO    ] ================================================
[2026-06-13 11:14:11,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:11
[2026-06-13 11:14:11,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:11,676.676 INFO    ] Initializing speech engine...
[2026-06-13 11:14:11,681.681 INFO    ] 2026-06-13 11:14:11
[2026-06-13 11:14:11,885.885 INFO    ] 2026-06-13 11:14:11
[2026-06-13 11:14:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:12,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:12,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:12,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:12,294.294 INFO    ] time= 13/06/2026 11:14:12
[2026-06-13 11:14:12,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:12,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:12,398.398 INFO    ] No existing commands found in stream
[2026-06-13 11:14:17,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:17,410.410 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 11:14:17,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:14:17,769.769 INFO    ] Checking for system updates...
[2026-06-13 11:14:17,791.791 INFO    ] 200
[2026-06-13 11:14:17,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:17,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:17,824.824 INFO    ] No update needed
[2026-06-13 11:14:17,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 11:14:17,846.846 INFO    ] 200
[2026-06-13 11:14:17,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:17,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:14:17,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:17,913.913 INFO    ] No camera update needed
[2026-06-13 11:14:17,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:14:17,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:14:17,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:14:17,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:19,961.961 INFO    ] ================================================
[2026-06-13 11:14:19,977.977 INFO    ] Launching Daemon at Sat Jun 13 11:14:19 IST 2026
[2026-06-13 11:14:19,990.990 INFO    ] ================================================
[2026-06-13 11:14:20,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:20
[2026-06-13 11:14:20,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:20,792.792 INFO    ] Initializing speech engine...
[2026-06-13 11:14:20,801.801 INFO    ] 2026-06-13 11:14:20
[2026-06-13 11:14:21,005.005 INFO    ] 2026-06-13 11:14:20
[2026-06-13 11:14:21,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:21,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:21,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:21,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:21,421.421 INFO    ] time= 13/06/2026 11:14:21
[2026-06-13 11:14:21,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:21,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:21,517.517 INFO    ] No existing commands found in stream
[2026-06-13 11:14:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:26,529.529 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 11:14:28,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:14:28,004.004 INFO    ] Checking for system updates...
[2026-06-13 11:14:28,024.024 INFO    ] 200
[2026-06-13 11:14:28,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:28,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:28,058.058 INFO    ] No update needed
[2026-06-13 11:14:28,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 11:14:28,080.080 INFO    ] 200
[2026-06-13 11:14:28,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:28,105.105 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:14:28,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:14:28,253.253 INFO    ] No camera update needed
[2026-06-13 11:14:28,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:14:28,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:14:28,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:14:28,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:30,299.299 INFO    ] ================================================
[2026-06-13 11:14:30,315.315 INFO    ] Launching Daemon at Sat Jun 13 11:14:30 IST 2026
[2026-06-13 11:14:30,326.326 INFO    ] ================================================
[2026-06-13 11:14:30,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:30
[2026-06-13 11:14:31,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:31,201.201 INFO    ] Initializing speech engine...
[2026-06-13 11:14:31,206.206 INFO    ] 2026-06-13 11:14:31
[2026-06-13 11:14:31,417.417 INFO    ] 2026-06-13 11:14:31
[2026-06-13 11:14:31,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:31,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:31,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:31,821.821 INFO    ] time= 13/06/2026 11:14:31
[2026-06-13 11:14:31,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:31,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:31,949.949 INFO    ] No existing commands found in stream
[2026-06-13 11:14:36,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:36,966.966 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 11:14:39,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:14:39,776.776 INFO    ] Checking for system updates...
[2026-06-13 11:14:39,798.798 INFO    ] 200
[2026-06-13 11:14:39,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:39,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:14:39,831.831 INFO    ] No update needed
[2026-06-13 11:14:39,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 11:14:39,852.852 INFO    ] 200
[2026-06-13 11:14:39,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:39,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:14:39,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:14:39,914.914 INFO    ] No camera update needed
[2026-06-13 11:14:39,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:14:39,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:14:39,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:14:39,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:41,960.960 INFO    ] ================================================
[2026-06-13 11:14:41,976.976 INFO    ] Launching Daemon at Sat Jun 13 11:14:41 IST 2026
[2026-06-13 11:14:41,987.987 INFO    ] ================================================
[2026-06-13 11:14:42,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:42
[2026-06-13 11:14:42,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:42,806.806 INFO    ] Initializing speech engine...
[2026-06-13 11:14:42,810.810 INFO    ] 2026-06-13 11:14:42
[2026-06-13 11:14:43,012.012 INFO    ] 2026-06-13 11:14:42
[2026-06-13 11:14:43,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:43,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:43,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:43,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:43,417.417 INFO    ] time= 13/06/2026 11:14:43
[2026-06-13 11:14:43,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:43,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:43,526.526 INFO    ] No existing commands found in stream
[2026-06-13 11:14:48,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:48,538.538 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 11:14:49,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:14:49,585.585 INFO    ] Checking for system updates...
[2026-06-13 11:14:49,606.606 INFO    ] 200
[2026-06-13 11:14:49,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:49,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:14:49,642.642 INFO    ] No update needed
[2026-06-13 11:14:49,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 11:14:49,663.663 INFO    ] 200
[2026-06-13 11:14:49,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:14:49,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:14:49,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:14:49,741.741 INFO    ] No camera update needed
[2026-06-13 11:14:49,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:14:49,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:14:49,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:14:49,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:14:51,789.789 INFO    ] ================================================
[2026-06-13 11:14:51,804.804 INFO    ] Launching Daemon at Sat Jun 13 11:14:51 IST 2026
[2026-06-13 11:14:51,815.815 INFO    ] ================================================
[2026-06-13 11:14:52,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:14:52
[2026-06-13 11:14:52,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:14:52,648.648 INFO    ] Initializing speech engine...
[2026-06-13 11:14:52,654.654 INFO    ] 2026-06-13 11:14:52
[2026-06-13 11:14:52,857.857 INFO    ] 2026-06-13 11:14:52
[2026-06-13 11:14:52,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:14:53,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:14:53,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:14:53,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:14:53,265.265 INFO    ] time= 13/06/2026 11:14:53
[2026-06-13 11:14:53,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:14:53,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:14:53,368.368 INFO    ] No existing commands found in stream
[2026-06-13 11:14:58,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:14:58,381.381 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 11:15:02,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:15:02,035.035 INFO    ] Checking for system updates...
[2026-06-13 11:15:02,078.078 INFO    ] 200
[2026-06-13 11:15:02,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:02,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:02,160.160 INFO    ] No update needed
[2026-06-13 11:15:02,163.163 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:02,210.210 INFO    ] 200
[2026-06-13 11:15:02,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:02,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:02,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:02,304.304 INFO    ] No camera update needed
[2026-06-13 11:15:02,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:02,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:02,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:02,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:15:04,370.370 INFO    ] ================================================
[2026-06-13 11:15:04,385.385 INFO    ] Launching Daemon at Sat Jun 13 11:15:04 IST 2026
[2026-06-13 11:15:04,396.396 INFO    ] ================================================
[2026-06-13 11:15:04,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:15:04
[2026-06-13 11:15:05,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:15:05,198.198 INFO    ] Initializing speech engine...
[2026-06-13 11:15:05,206.206 INFO    ] 2026-06-13 11:15:05
[2026-06-13 11:15:05,432.432 INFO    ] 2026-06-13 11:15:05
[2026-06-13 11:15:05,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:15:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:15:05,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:15:05,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:15:05,864.864 INFO    ] time= 13/06/2026 11:15:05
[2026-06-13 11:15:05,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:15:05,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:15:06,024.024 INFO    ] No existing commands found in stream
[2026-06-13 11:15:11,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:15:11,035.035 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 11:15:13,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:15:13,616.616 INFO    ] Checking for system updates...
[2026-06-13 11:15:13,636.636 INFO    ] 200
[2026-06-13 11:15:13,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:13,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:13,670.670 INFO    ] No update needed
[2026-06-13 11:15:13,671.671 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:13,691.691 INFO    ] 200
[2026-06-13 11:15:13,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:13,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:13,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:13,755.755 INFO    ] No camera update needed
[2026-06-13 11:15:13,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:13,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:13,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:13,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:15:15,803.803 INFO    ] ================================================
[2026-06-13 11:15:15,819.819 INFO    ] Launching Daemon at Sat Jun 13 11:15:15 IST 2026
[2026-06-13 11:15:15,830.830 INFO    ] ================================================
[2026-06-13 11:15:16,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:15:16
[2026-06-13 11:15:16,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:15:16,704.704 INFO    ] Initializing speech engine...
[2026-06-13 11:15:16,710.710 INFO    ] 2026-06-13 11:15:16
[2026-06-13 11:15:16,921.921 INFO    ] 2026-06-13 11:15:16
[2026-06-13 11:15:16,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:15:17,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:15:17,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:15:17,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:15:17,344.344 INFO    ] time= 13/06/2026 11:15:17
[2026-06-13 11:15:17,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:15:17,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:15:17,446.446 INFO    ] No existing commands found in stream
[2026-06-13 11:15:22,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:15:22,460.460 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 11:15:23,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:15:23,647.647 INFO    ] Checking for system updates...
[2026-06-13 11:15:23,668.668 INFO    ] 200
[2026-06-13 11:15:23,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:23,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:23,701.701 INFO    ] No update needed
[2026-06-13 11:15:23,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:23,723.723 INFO    ] 200
[2026-06-13 11:15:23,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:23,749.749 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:23,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:23,785.785 INFO    ] No camera update needed
[2026-06-13 11:15:23,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:23,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:23,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:23,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:15:25,834.834 INFO    ] ================================================
[2026-06-13 11:15:25,850.850 INFO    ] Launching Daemon at Sat Jun 13 11:15:25 IST 2026
[2026-06-13 11:15:25,861.861 INFO    ] ================================================
[2026-06-13 11:15:26,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:15:26
[2026-06-13 11:15:26,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:15:26,656.656 INFO    ] Initializing speech engine...
[2026-06-13 11:15:26,661.661 INFO    ] 2026-06-13 11:15:26
[2026-06-13 11:15:26,865.865 INFO    ] 2026-06-13 11:15:26
[2026-06-13 11:15:26,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:15:27,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:15:27,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:15:27,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:15:27,276.276 INFO    ] time= 13/06/2026 11:15:27
[2026-06-13 11:15:27,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:15:27,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:15:27,379.379 INFO    ] No existing commands found in stream
[2026-06-13 11:15:32,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:15:32,392.392 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 11:15:36,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:15:36,407.407 INFO    ] Checking for system updates...
[2026-06-13 11:15:36,428.428 INFO    ] 200
[2026-06-13 11:15:36,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:36,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:36,464.464 INFO    ] No update needed
[2026-06-13 11:15:36,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:36,485.485 INFO    ] 200
[2026-06-13 11:15:36,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:36,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:36,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:36,549.549 INFO    ] No camera update needed
[2026-06-13 11:15:36,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:36,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:36,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:36,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:15:38,597.597 INFO    ] ================================================
[2026-06-13 11:15:38,613.613 INFO    ] Launching Daemon at Sat Jun 13 11:15:38 IST 2026
[2026-06-13 11:15:38,629.629 INFO    ] ================================================
[2026-06-13 11:15:38,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:15:38
[2026-06-13 11:15:39,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:15:39,434.434 INFO    ] Initializing speech engine...
[2026-06-13 11:15:39,444.444 INFO    ] 2026-06-13 11:15:39
[2026-06-13 11:15:39,648.648 INFO    ] 2026-06-13 11:15:39
[2026-06-13 11:15:39,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:15:39,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:15:39,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:15:39,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:15:40,053.053 INFO    ] time= 13/06/2026 11:15:39
[2026-06-13 11:15:40,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:15:40,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:15:40,164.164 INFO    ] No existing commands found in stream
[2026-06-13 11:15:45,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:15:45,176.176 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 11:15:46,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:15:47,001.001 INFO    ] Checking for system updates...
[2026-06-13 11:15:47,021.021 INFO    ] 200
[2026-06-13 11:15:47,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:47,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:47,055.055 INFO    ] No update needed
[2026-06-13 11:15:47,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:47,076.076 INFO    ] 200
[2026-06-13 11:15:47,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:47,101.101 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:47,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:15:47,148.148 INFO    ] No camera update needed
[2026-06-13 11:15:47,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:47,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:47,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:47,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:15:49,197.197 INFO    ] ================================================
[2026-06-13 11:15:49,212.212 INFO    ] Launching Daemon at Sat Jun 13 11:15:49 IST 2026
[2026-06-13 11:15:49,224.224 INFO    ] ================================================
[2026-06-13 11:15:49,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:15:49
[2026-06-13 11:15:49,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:15:50,012.012 INFO    ] Initializing speech engine...
[2026-06-13 11:15:50,024.024 INFO    ] 2026-06-13 11:15:50
[2026-06-13 11:15:50,233.233 INFO    ] 2026-06-13 11:15:50
[2026-06-13 11:15:50,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:15:50,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:15:50,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:15:50,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:15:50,645.645 INFO    ] time= 13/06/2026 11:15:50
[2026-06-13 11:15:50,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:15:50,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:15:50,760.760 INFO    ] No existing commands found in stream
[2026-06-13 11:15:55,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:15:55,772.772 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 11:15:57,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:15:57,870.870 INFO    ] Checking for system updates...
[2026-06-13 11:15:57,895.895 INFO    ] 200
[2026-06-13 11:15:57,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:57,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:15:57,928.928 INFO    ] No update needed
[2026-06-13 11:15:57,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 11:15:57,949.949 INFO    ] 200
[2026-06-13 11:15:57,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:15:57,976.976 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:15:58,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:15:58,019.019 INFO    ] No camera update needed
[2026-06-13 11:15:58,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:15:58,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:15:58,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:15:58,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:00,066.066 INFO    ] ================================================
[2026-06-13 11:16:00,081.081 INFO    ] Launching Daemon at Sat Jun 13 11:16:00 IST 2026
[2026-06-13 11:16:00,092.092 INFO    ] ================================================
[2026-06-13 11:16:00,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:00
[2026-06-13 11:16:00,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:00,954.954 INFO    ] Initializing speech engine...
[2026-06-13 11:16:00,960.960 INFO    ] 2026-06-13 11:16:00
[2026-06-13 11:16:01,191.191 INFO    ] 2026-06-13 11:16:01
[2026-06-13 11:16:01,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:01,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:01,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:01,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:01,579.579 INFO    ] time= 13/06/2026 11:16:01
[2026-06-13 11:16:01,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:01,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:01,710.710 INFO    ] No existing commands found in stream
[2026-06-13 11:16:06,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:16:06,743.743 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 11:16:11,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:16:11,044.044 INFO    ] Checking for system updates...
[2026-06-13 11:16:11,065.065 INFO    ] 200
[2026-06-13 11:16:11,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:11,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:16:11,098.098 INFO    ] No update needed
[2026-06-13 11:16:11,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 11:16:11,125.125 INFO    ] 200
[2026-06-13 11:16:11,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:11,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:16:11,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:16:11,192.192 INFO    ] No camera update needed
[2026-06-13 11:16:11,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:16:11,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:16:11,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:16:11,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:13,238.238 INFO    ] ================================================
[2026-06-13 11:16:13,253.253 INFO    ] Launching Daemon at Sat Jun 13 11:16:13 IST 2026
[2026-06-13 11:16:13,264.264 INFO    ] ================================================
[2026-06-13 11:16:13,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:13
[2026-06-13 11:16:13,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:14,068.068 INFO    ] Initializing speech engine...
[2026-06-13 11:16:14,080.080 INFO    ] 2026-06-13 11:16:14
[2026-06-13 11:16:14,280.280 INFO    ] 2026-06-13 11:16:14
[2026-06-13 11:16:14,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:14,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:14,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:14,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:14,689.689 INFO    ] time= 13/06/2026 11:16:14
[2026-06-13 11:16:14,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:14,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:14,902.902 INFO    ] No existing commands found in stream
[2026-06-13 11:16:19,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:16:19,919.919 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 11:16:21,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:16:21,326.326 INFO    ] Checking for system updates...
[2026-06-13 11:16:21,348.348 INFO    ] 200
[2026-06-13 11:16:21,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:21,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:16:21,381.381 INFO    ] No update needed
[2026-06-13 11:16:21,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 11:16:21,402.402 INFO    ] 200
[2026-06-13 11:16:21,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:21,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:16:21,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:16:21,467.467 INFO    ] No camera update needed
[2026-06-13 11:16:21,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:16:21,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:16:21,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:16:21,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:23,515.515 INFO    ] ================================================
[2026-06-13 11:16:23,531.531 INFO    ] Launching Daemon at Sat Jun 13 11:16:23 IST 2026
[2026-06-13 11:16:23,548.548 INFO    ] ================================================
[2026-06-13 11:16:23,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:23
[2026-06-13 11:16:24,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:24,393.393 INFO    ] Initializing speech engine...
[2026-06-13 11:16:24,399.399 INFO    ] 2026-06-13 11:16:24
[2026-06-13 11:16:24,602.602 INFO    ] 2026-06-13 11:16:24
[2026-06-13 11:16:24,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:24,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:24,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:24,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:25,011.011 INFO    ] time= 13/06/2026 11:16:24
[2026-06-13 11:16:25,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:25,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:25,114.114 INFO    ] No existing commands found in stream
[2026-06-13 11:16:30,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:16:30,127.127 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 11:16:31,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:16:31,401.401 INFO    ] Checking for system updates...
[2026-06-13 11:16:31,443.443 INFO    ] 200
[2026-06-13 11:16:31,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:31,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:31,512.512 INFO    ] No update needed
[2026-06-13 11:16:31,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 11:16:31,556.556 INFO    ] 200
[2026-06-13 11:16:31,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:31,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:16:31,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:31,743.743 INFO    ] No camera update needed
[2026-06-13 11:16:31,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:16:31,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:16:31,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:16:31,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:33,802.802 INFO    ] ================================================
[2026-06-13 11:16:33,817.817 INFO    ] Launching Daemon at Sat Jun 13 11:16:33 IST 2026
[2026-06-13 11:16:33,827.827 INFO    ] ================================================
[2026-06-13 11:16:34,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:34
[2026-06-13 11:16:34,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:34,864.864 INFO    ] Initializing speech engine...
[2026-06-13 11:16:34,875.875 INFO    ] 2026-06-13 11:16:34
[2026-06-13 11:16:35,077.077 INFO    ] 2026-06-13 11:16:35
[2026-06-13 11:16:35,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:35,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:35,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:35,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:35,482.482 INFO    ] time= 13/06/2026 11:16:35
[2026-06-13 11:16:35,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:35,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:35,590.590 INFO    ] No existing commands found in stream
[2026-06-13 11:16:40,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:16:40,604.604 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 11:16:41,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:16:41,356.356 INFO    ] Checking for system updates...
[2026-06-13 11:16:41,376.376 INFO    ] 200
[2026-06-13 11:16:41,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:41,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:41,412.412 INFO    ] No update needed
[2026-06-13 11:16:41,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 11:16:41,435.435 INFO    ] 200
[2026-06-13 11:16:41,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:41,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:16:41,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:41,499.499 INFO    ] No camera update needed
[2026-06-13 11:16:41,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:16:41,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:16:41,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:16:41,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:43,546.546 INFO    ] ================================================
[2026-06-13 11:16:43,561.561 INFO    ] Launching Daemon at Sat Jun 13 11:16:43 IST 2026
[2026-06-13 11:16:43,571.571 INFO    ] ================================================
[2026-06-13 11:16:43,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:43
[2026-06-13 11:16:44,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:44,407.407 INFO    ] Initializing speech engine...
[2026-06-13 11:16:44,415.415 INFO    ] 2026-06-13 11:16:44
[2026-06-13 11:16:44,627.627 INFO    ] 2026-06-13 11:16:44
[2026-06-13 11:16:44,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:44,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:44,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:44,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:45,036.036 INFO    ] time= 13/06/2026 11:16:44
[2026-06-13 11:16:45,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:45,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:45,148.148 INFO    ] No existing commands found in stream
[2026-06-13 11:16:50,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:16:50,160.160 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 11:16:53,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:16:53,280.280 INFO    ] Checking for system updates...
[2026-06-13 11:16:53,302.302 INFO    ] 200
[2026-06-13 11:16:53,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:53,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:53,338.338 INFO    ] No update needed
[2026-06-13 11:16:53,339.339 INFO    ] Checking for camera pi updates...
[2026-06-13 11:16:53,359.359 INFO    ] 200
[2026-06-13 11:16:53,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:16:53,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:16:53,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:16:53,427.427 INFO    ] No camera update needed
[2026-06-13 11:16:53,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:16:53,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:16:53,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:16:53,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:16:55,474.474 INFO    ] ================================================
[2026-06-13 11:16:55,489.489 INFO    ] Launching Daemon at Sat Jun 13 11:16:55 IST 2026
[2026-06-13 11:16:55,500.500 INFO    ] ================================================
[2026-06-13 11:16:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:16:55
[2026-06-13 11:16:56,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:16:56,328.328 INFO    ] Initializing speech engine...
[2026-06-13 11:16:56,334.334 INFO    ] 2026-06-13 11:16:56
[2026-06-13 11:16:56,537.537 INFO    ] 2026-06-13 11:16:56
[2026-06-13 11:16:56,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:16:56,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:16:56,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:16:56,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:16:56,942.942 INFO    ] time= 13/06/2026 11:16:56
[2026-06-13 11:16:56,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:16:56,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:16:57,052.052 INFO    ] No existing commands found in stream
[2026-06-13 11:17:02,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:02,068.068 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 11:17:02,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:17:02,796.796 INFO    ] Checking for system updates...
[2026-06-13 11:17:02,832.832 INFO    ] 200
[2026-06-13 11:17:02,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:02,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:17:02,893.893 INFO    ] No update needed
[2026-06-13 11:17:02,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 11:17:02,930.930 INFO    ] 200
[2026-06-13 11:17:02,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:02,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:17:02,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:17:03,000.000 INFO    ] No camera update needed
[2026-06-13 11:17:03,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:17:03,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:17:03,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:17:03,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:17:05,048.048 INFO    ] ================================================
[2026-06-13 11:17:05,063.063 INFO    ] Launching Daemon at Sat Jun 13 11:17:05 IST 2026
[2026-06-13 11:17:05,074.074 INFO    ] ================================================
[2026-06-13 11:17:05,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:17:05
[2026-06-13 11:17:05,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:17:05,919.919 INFO    ] Initializing speech engine...
[2026-06-13 11:17:05,924.924 INFO    ] 2026-06-13 11:17:05
[2026-06-13 11:17:06,128.128 INFO    ] 2026-06-13 11:17:06
[2026-06-13 11:17:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:17:06,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:17:06,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:17:06,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:17:06,485.485 INFO    ] time= 13/06/2026 11:17:06
[2026-06-13 11:17:06,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:17:06,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:17:06,648.648 INFO    ] No existing commands found in stream
[2026-06-13 11:17:11,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:11,660.660 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 11:17:14,545.545 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 11:17:14,569.569 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dce7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 11:17:14,577.577 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dce7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 11:17:14,586.586 INFO    ] None
[2026-06-13 11:17:14,589.589 INFO    ] Checking for system updates...
[2026-06-13 11:17:14,618.618 INFO    ] 200
[2026-06-13 11:17:14,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:14,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:14,653.653 INFO    ] No update needed
[2026-06-13 11:17:14,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 11:17:14,674.674 INFO    ] 200
[2026-06-13 11:17:14,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:14,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:17:15,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:15,338.338 INFO    ] No camera update needed
[2026-06-13 11:17:15,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:17:15,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:17:15,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:17:15,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:17:17,393.393 INFO    ] ================================================
[2026-06-13 11:17:17,408.408 INFO    ] Launching Daemon at Sat Jun 13 11:17:17 IST 2026
[2026-06-13 11:17:17,419.419 INFO    ] ================================================
[2026-06-13 11:17:17,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:17:17
[2026-06-13 11:17:18,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:17:18,200.200 INFO    ] Initializing speech engine...
[2026-06-13 11:17:18,204.204 INFO    ] 2026-06-13 11:17:18
[2026-06-13 11:17:18,402.402 INFO    ] 2026-06-13 11:17:18
[2026-06-13 11:17:18,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:17:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:17:18,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:17:18,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:17:18,849.849 INFO    ] time= 13/06/2026 11:17:18
[2026-06-13 11:17:18,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:17:18,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:17:19,006.006 INFO    ] No existing commands found in stream
[2026-06-13 11:17:24,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:24,019.019 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 11:17:26,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:17:26,340.340 INFO    ] Checking for system updates...
[2026-06-13 11:17:26,362.362 INFO    ] 200
[2026-06-13 11:17:26,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:26,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:26,395.395 INFO    ] No update needed
[2026-06-13 11:17:26,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 11:17:26,416.416 INFO    ] 200
[2026-06-13 11:17:26,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:26,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:17:26,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:26,484.484 INFO    ] No camera update needed
[2026-06-13 11:17:26,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:17:26,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:17:26,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:17:26,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:17:28,530.530 INFO    ] ================================================
[2026-06-13 11:17:28,546.546 INFO    ] Launching Daemon at Sat Jun 13 11:17:28 IST 2026
[2026-06-13 11:17:28,556.556 INFO    ] ================================================
[2026-06-13 11:17:28,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:17:28
[2026-06-13 11:17:29,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:17:29,372.372 INFO    ] Initializing speech engine...
[2026-06-13 11:17:29,382.382 INFO    ] 2026-06-13 11:17:29
[2026-06-13 11:17:29,589.589 INFO    ] 2026-06-13 11:17:29
[2026-06-13 11:17:29,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:17:29,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:17:29,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:17:29,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:17:29,998.998 INFO    ] time= 13/06/2026 11:17:29
[2026-06-13 11:17:30,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:17:30,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:17:30,109.109 INFO    ] No existing commands found in stream
[2026-06-13 11:17:35,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:35,122.122 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 11:17:37,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:17:37,742.742 INFO    ] Checking for system updates...
[2026-06-13 11:17:37,762.762 INFO    ] 200
[2026-06-13 11:17:37,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:37,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:17:37,795.795 INFO    ] No update needed
[2026-06-13 11:17:37,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 11:17:37,816.816 INFO    ] 200
[2026-06-13 11:17:37,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:37,841.841 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:17:37,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:17:37,879.879 INFO    ] No camera update needed
[2026-06-13 11:17:37,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:17:37,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:17:37,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:17:37,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:17:39,926.926 INFO    ] ================================================
[2026-06-13 11:17:39,941.941 INFO    ] Launching Daemon at Sat Jun 13 11:17:39 IST 2026
[2026-06-13 11:17:39,952.952 INFO    ] ================================================
[2026-06-13 11:17:40,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:17:40
[2026-06-13 11:17:40,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:17:40,726.726 INFO    ] Initializing speech engine...
[2026-06-13 11:17:40,730.730 INFO    ] 2026-06-13 11:17:40
[2026-06-13 11:17:40,950.950 INFO    ] 2026-06-13 11:17:40
[2026-06-13 11:17:40,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:17:41,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:17:41,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:17:41,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:17:41,364.364 INFO    ] time= 13/06/2026 11:17:41
[2026-06-13 11:17:41,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:17:41,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:17:41,469.469 INFO    ] No existing commands found in stream
[2026-06-13 11:17:46,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:46,482.482 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 11:17:49,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:17:49,139.139 INFO    ] Checking for system updates...
[2026-06-13 11:17:49,160.160 INFO    ] 200
[2026-06-13 11:17:49,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:49,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:49,198.198 INFO    ] No update needed
[2026-06-13 11:17:49,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 11:17:49,221.221 INFO    ] 200
[2026-06-13 11:17:49,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:17:49,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:17:49,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:17:49,281.281 INFO    ] No camera update needed
[2026-06-13 11:17:49,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:17:49,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:17:49,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:17:49,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:17:51,328.328 INFO    ] ================================================
[2026-06-13 11:17:51,343.343 INFO    ] Launching Daemon at Sat Jun 13 11:17:51 IST 2026
[2026-06-13 11:17:51,354.354 INFO    ] ================================================
[2026-06-13 11:17:51,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:17:51
[2026-06-13 11:17:52,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:17:52,167.167 INFO    ] Initializing speech engine...
[2026-06-13 11:17:52,177.177 INFO    ] 2026-06-13 11:17:52
[2026-06-13 11:17:52,381.381 INFO    ] 2026-06-13 11:17:52
[2026-06-13 11:17:52,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:17:52,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:17:52,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:17:52,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:17:52,786.786 INFO    ] time= 13/06/2026 11:17:52
[2026-06-13 11:17:52,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:17:52,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:17:52,897.897 INFO    ] No existing commands found in stream
[2026-06-13 11:17:57,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:17:57,909.909 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 11:18:00,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:18:00,395.395 INFO    ] Checking for system updates...
[2026-06-13 11:18:00,418.418 INFO    ] 200
[2026-06-13 11:18:00,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:00,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:18:00,455.455 INFO    ] No update needed
[2026-06-13 11:18:00,457.457 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:00,476.476 INFO    ] 200
[2026-06-13 11:18:00,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:00,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:00,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:18:00,540.540 INFO    ] No camera update needed
[2026-06-13 11:18:00,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:00,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:00,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:00,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:18:02,594.594 INFO    ] ================================================
[2026-06-13 11:18:02,619.619 INFO    ] Launching Daemon at Sat Jun 13 11:18:02 IST 2026
[2026-06-13 11:18:02,639.639 INFO    ] ================================================
[2026-06-13 11:18:03,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:18:03
[2026-06-13 11:18:03,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:18:04,150.150 INFO    ] Initializing speech engine...
[2026-06-13 11:18:04,161.161 INFO    ] 2026-06-13 11:18:04
[2026-06-13 11:18:04,411.411 INFO    ] 2026-06-13 11:18:04
[2026-06-13 11:18:04,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:18:04,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:18:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:18:04,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:18:04,754.754 INFO    ] time= 13/06/2026 11:18:04
[2026-06-13 11:18:04,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:18:04,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:18:04,854.854 INFO    ] No existing commands found in stream
[2026-06-13 11:18:09,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:18:09,892.892 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 11:18:12,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:18:12,551.551 INFO    ] Checking for system updates...
[2026-06-13 11:18:12,571.571 INFO    ] 200
[2026-06-13 11:18:12,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:12,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:12,607.607 INFO    ] No update needed
[2026-06-13 11:18:12,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:12,629.629 INFO    ] 200
[2026-06-13 11:18:12,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:12,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:12,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:12,692.692 INFO    ] No camera update needed
[2026-06-13 11:18:12,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:12,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:12,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:12,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:18:14,742.742 INFO    ] ================================================
[2026-06-13 11:18:14,757.757 INFO    ] Launching Daemon at Sat Jun 13 11:18:14 IST 2026
[2026-06-13 11:18:14,769.769 INFO    ] ================================================
[2026-06-13 11:18:15,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:18:15
[2026-06-13 11:18:15,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:18:15,552.552 INFO    ] Initializing speech engine...
[2026-06-13 11:18:15,561.561 INFO    ] 2026-06-13 11:18:15
[2026-06-13 11:18:15,767.767 INFO    ] 2026-06-13 11:18:15
[2026-06-13 11:18:15,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:18:15,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:18:15,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:18:16,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:18:16,177.177 INFO    ] time= 13/06/2026 11:18:16
[2026-06-13 11:18:16,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:18:16,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:18:16,283.283 INFO    ] No existing commands found in stream
[2026-06-13 11:18:21,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:18:21,295.295 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 11:18:25,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:18:25,359.359 INFO    ] Checking for system updates...
[2026-06-13 11:18:25,382.382 INFO    ] 200
[2026-06-13 11:18:25,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:25,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:25,421.421 INFO    ] No update needed
[2026-06-13 11:18:25,422.422 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:25,445.445 INFO    ] 200
[2026-06-13 11:18:25,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:25,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:25,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:25,510.510 INFO    ] No camera update needed
[2026-06-13 11:18:25,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:25,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:25,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:18:27,561.561 INFO    ] ================================================
[2026-06-13 11:18:27,577.577 INFO    ] Launching Daemon at Sat Jun 13 11:18:27 IST 2026
[2026-06-13 11:18:27,588.588 INFO    ] ================================================
[2026-06-13 11:18:27,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:18:27
[2026-06-13 11:18:28,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:18:28,403.403 INFO    ] Initializing speech engine...
[2026-06-13 11:18:28,411.411 INFO    ] 2026-06-13 11:18:28
[2026-06-13 11:18:28,622.622 INFO    ] 2026-06-13 11:18:28
[2026-06-13 11:18:28,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:18:28,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:18:28,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:18:28,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:18:29,023.023 INFO    ] time= 13/06/2026 11:18:28
[2026-06-13 11:18:29,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:18:29,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:18:29,149.149 INFO    ] No existing commands found in stream
[2026-06-13 11:18:34,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:18:34,165.165 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 11:18:36,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:18:36,956.956 INFO    ] Checking for system updates...
[2026-06-13 11:18:36,978.978 INFO    ] 200
[2026-06-13 11:18:36,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:37,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:37,012.012 INFO    ] No update needed
[2026-06-13 11:18:37,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:37,033.033 INFO    ] 200
[2026-06-13 11:18:37,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:37,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:37,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:37,112.112 INFO    ] No camera update needed
[2026-06-13 11:18:37,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:37,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:37,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:37,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:18:39,161.161 INFO    ] ================================================
[2026-06-13 11:18:39,176.176 INFO    ] Launching Daemon at Sat Jun 13 11:18:39 IST 2026
[2026-06-13 11:18:39,187.187 INFO    ] ================================================
[2026-06-13 11:18:39,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:18:39
[2026-06-13 11:18:39,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:18:40,004.004 INFO    ] Initializing speech engine...
[2026-06-13 11:18:40,009.009 INFO    ] 2026-06-13 11:18:40
[2026-06-13 11:18:40,215.215 INFO    ] 2026-06-13 11:18:40
[2026-06-13 11:18:40,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:18:40,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:18:40,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:18:40,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:18:40,617.617 INFO    ] time= 13/06/2026 11:18:40
[2026-06-13 11:18:40,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:18:40,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:18:40,741.741 INFO    ] No existing commands found in stream
[2026-06-13 11:18:45,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:18:45,753.753 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 11:18:47,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:18:47,619.619 INFO    ] Checking for system updates...
[2026-06-13 11:18:47,640.640 INFO    ] 200
[2026-06-13 11:18:47,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:47,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:47,673.673 INFO    ] No update needed
[2026-06-13 11:18:47,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:47,695.695 INFO    ] 200
[2026-06-13 11:18:47,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:47,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:47,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:47,758.758 INFO    ] No camera update needed
[2026-06-13 11:18:47,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:47,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:47,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:47,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:18:49,806.806 INFO    ] ================================================
[2026-06-13 11:18:49,826.826 INFO    ] Launching Daemon at Sat Jun 13 11:18:49 IST 2026
[2026-06-13 11:18:49,839.839 INFO    ] ================================================
[2026-06-13 11:18:50,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:18:50
[2026-06-13 11:18:50,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:18:50,642.642 INFO    ] Initializing speech engine...
[2026-06-13 11:18:50,648.648 INFO    ] 2026-06-13 11:18:50
[2026-06-13 11:18:50,850.850 INFO    ] 2026-06-13 11:18:50
[2026-06-13 11:18:50,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:18:51,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:18:51,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:18:51,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:18:51,255.255 INFO    ] time= 13/06/2026 11:18:51
[2026-06-13 11:18:51,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:18:51,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:18:51,365.365 INFO    ] No existing commands found in stream
[2026-06-13 11:18:56,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:18:56,377.377 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 11:18:58,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:18:58,692.692 INFO    ] Checking for system updates...
[2026-06-13 11:18:58,713.713 INFO    ] 200
[2026-06-13 11:18:58,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:58,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:58,751.751 INFO    ] No update needed
[2026-06-13 11:18:58,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 11:18:58,776.776 INFO    ] 200
[2026-06-13 11:18:58,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:18:58,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:18:58,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:18:58,846.846 INFO    ] No camera update needed
[2026-06-13 11:18:58,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:18:58,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:18:58,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:18:58,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:00,899.899 INFO    ] ================================================
[2026-06-13 11:19:00,914.914 INFO    ] Launching Daemon at Sat Jun 13 11:19:00 IST 2026
[2026-06-13 11:19:00,926.926 INFO    ] ================================================
[2026-06-13 11:19:01,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:19:01
[2026-06-13 11:19:01,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:19:02,002.002 INFO    ] Initializing speech engine...
[2026-06-13 11:19:02,017.017 INFO    ] 2026-06-13 11:19:02
[2026-06-13 11:19:02,245.245 INFO    ] 2026-06-13 11:19:02
[2026-06-13 11:19:02,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:19:02,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:19:02,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:19:02,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:19:02,490.490 INFO    ] time= 13/06/2026 11:19:02
[2026-06-13 11:19:02,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:19:02,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:19:02,567.567 INFO    ] No existing commands found in stream
[2026-06-13 11:19:07,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:19:07,594.594 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 11:19:10,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:19:10,971.971 INFO    ] Checking for system updates...
[2026-06-13 11:19:10,992.992 INFO    ] 200
[2026-06-13 11:19:10,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:11,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:19:11,025.025 INFO    ] No update needed
[2026-06-13 11:19:11,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 11:19:11,047.047 INFO    ] 200
[2026-06-13 11:19:11,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:11,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:19:11,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:19:11,116.116 INFO    ] No camera update needed
[2026-06-13 11:19:11,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:19:11,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:19:11,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:19:11,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:13,169.169 INFO    ] ================================================
[2026-06-13 11:19:13,185.185 INFO    ] Launching Daemon at Sat Jun 13 11:19:13 IST 2026
[2026-06-13 11:19:13,196.196 INFO    ] ================================================
[2026-06-13 11:19:13,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:19:13
[2026-06-13 11:19:13,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:19:14,144.144 INFO    ] Initializing speech engine...
[2026-06-13 11:19:14,152.152 INFO    ] 2026-06-13 11:19:14
[2026-06-13 11:19:14,436.436 INFO    ] 2026-06-13 11:19:14
[2026-06-13 11:19:14,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:19:14,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:19:14,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:19:14,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:19:14,921.921 INFO    ] time= 13/06/2026 11:19:14
[2026-06-13 11:19:14,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:19:15,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:19:15,143.143 INFO    ] No existing commands found in stream
[2026-06-13 11:19:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:19:20,164.164 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 11:19:21,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:19:21,833.833 INFO    ] Checking for system updates...
[2026-06-13 11:19:21,854.854 INFO    ] 200
[2026-06-13 11:19:21,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:21,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:19:21,888.888 INFO    ] No update needed
[2026-06-13 11:19:21,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 11:19:21,910.910 INFO    ] 200
[2026-06-13 11:19:21,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:21,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:19:22,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:19:22,078.078 INFO    ] No camera update needed
[2026-06-13 11:19:22,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:19:22,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:19:22,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:19:22,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:24,127.127 INFO    ] ================================================
[2026-06-13 11:19:24,142.142 INFO    ] Launching Daemon at Sat Jun 13 11:19:24 IST 2026
[2026-06-13 11:19:24,152.152 INFO    ] ================================================
[2026-06-13 11:19:24,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:19:24
[2026-06-13 11:19:24,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:19:24,962.962 INFO    ] Initializing speech engine...
[2026-06-13 11:19:24,971.971 INFO    ] 2026-06-13 11:19:24
[2026-06-13 11:19:25,185.185 INFO    ] 2026-06-13 11:19:25
[2026-06-13 11:19:25,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:19:25,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:19:25,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:19:25,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:19:25,565.565 INFO    ] time= 13/06/2026 11:19:25
[2026-06-13 11:19:25,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:19:25,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:19:25,681.681 INFO    ] No existing commands found in stream
[2026-06-13 11:19:30,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:19:30,697.697 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 11:19:34,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:19:34,766.766 INFO    ] Checking for system updates...
[2026-06-13 11:19:34,786.786 INFO    ] 200
[2026-06-13 11:19:34,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:34,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:34,821.821 INFO    ] No update needed
[2026-06-13 11:19:34,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 11:19:34,841.841 INFO    ] 200
[2026-06-13 11:19:34,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:34,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:19:34,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:34,917.917 INFO    ] No camera update needed
[2026-06-13 11:19:34,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:19:34,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:19:34,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:19:34,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:36,966.966 INFO    ] ================================================
[2026-06-13 11:19:36,980.980 INFO    ] Launching Daemon at Sat Jun 13 11:19:36 IST 2026
[2026-06-13 11:19:36,991.991 INFO    ] ================================================
[2026-06-13 11:19:37,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:19:37
[2026-06-13 11:19:37,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:19:37,891.891 INFO    ] Initializing speech engine...
[2026-06-13 11:19:37,898.898 INFO    ] 2026-06-13 11:19:37
[2026-06-13 11:19:38,094.094 INFO    ] 2026-06-13 11:19:38
[2026-06-13 11:19:38,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:19:38,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:19:38,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:19:38,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:19:38,538.538 INFO    ] time= 13/06/2026 11:19:38
[2026-06-13 11:19:38,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:19:38,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:19:38,637.637 INFO    ] No existing commands found in stream
[2026-06-13 11:19:43,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:19:43,652.652 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 11:19:46,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:19:46,920.920 INFO    ] Checking for system updates...
[2026-06-13 11:19:46,941.941 INFO    ] 200
[2026-06-13 11:19:46,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:46,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:46,975.975 INFO    ] No update needed
[2026-06-13 11:19:46,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 11:19:46,996.996 INFO    ] 200
[2026-06-13 11:19:46,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:47,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:19:47,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:47,059.059 INFO    ] No camera update needed
[2026-06-13 11:19:47,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:19:47,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:19:47,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:19:47,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:49,107.107 INFO    ] ================================================
[2026-06-13 11:19:49,122.122 INFO    ] Launching Daemon at Sat Jun 13 11:19:49 IST 2026
[2026-06-13 11:19:49,133.133 INFO    ] ================================================
[2026-06-13 11:19:49,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:19:49
[2026-06-13 11:19:49,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:19:49,915.915 INFO    ] Initializing speech engine...
[2026-06-13 11:19:49,927.927 INFO    ] 2026-06-13 11:19:49
[2026-06-13 11:19:50,136.136 INFO    ] 2026-06-13 11:19:50
[2026-06-13 11:19:50,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:19:50,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:19:50,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:19:50,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:19:50,543.543 INFO    ] time= 13/06/2026 11:19:50
[2026-06-13 11:19:50,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:19:50,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:19:50,653.653 INFO    ] No existing commands found in stream
[2026-06-13 11:19:55,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:19:55,667.667 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 11:19:57,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:19:57,630.630 INFO    ] Checking for system updates...
[2026-06-13 11:19:57,653.653 INFO    ] 200
[2026-06-13 11:19:57,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:57,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:57,687.687 INFO    ] No update needed
[2026-06-13 11:19:57,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 11:19:57,708.708 INFO    ] 200
[2026-06-13 11:19:57,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:19:57,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:19:57,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:19:57,786.786 INFO    ] No camera update needed
[2026-06-13 11:19:57,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:19:57,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:19:57,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:19:57,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:19:59,837.837 INFO    ] ================================================
[2026-06-13 11:19:59,852.852 INFO    ] Launching Daemon at Sat Jun 13 11:19:59 IST 2026
[2026-06-13 11:19:59,863.863 INFO    ] ================================================
[2026-06-13 11:20:00,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:00
[2026-06-13 11:20:00,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:00,683.683 INFO    ] Initializing speech engine...
[2026-06-13 11:20:00,691.691 INFO    ] 2026-06-13 11:20:00
[2026-06-13 11:20:00,897.897 INFO    ] 2026-06-13 11:20:00
[2026-06-13 11:20:00,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:01,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:01,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:01,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:01,301.301 INFO    ] time= 13/06/2026 11:20:01
[2026-06-13 11:20:01,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:01,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:01,412.412 INFO    ] No existing commands found in stream
[2026-06-13 11:20:06,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:20:06,426.426 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 11:20:09,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:20:09,283.283 INFO    ] Checking for system updates...
[2026-06-13 11:20:09,305.305 INFO    ] 200
[2026-06-13 11:20:09,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:09,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:20:09,341.341 INFO    ] No update needed
[2026-06-13 11:20:09,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 11:20:09,362.362 INFO    ] 200
[2026-06-13 11:20:09,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:09,386.386 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:20:09,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:09,426.426 INFO    ] No camera update needed
[2026-06-13 11:20:09,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:20:09,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:20:09,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:20:09,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:20:11,475.475 INFO    ] ================================================
[2026-06-13 11:20:11,491.491 INFO    ] Launching Daemon at Sat Jun 13 11:20:11 IST 2026
[2026-06-13 11:20:11,498.498 INFO    ] ================================================
[2026-06-13 11:20:11,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:11
[2026-06-13 11:20:12,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:12,307.307 INFO    ] Initializing speech engine...
[2026-06-13 11:20:12,315.315 INFO    ] 2026-06-13 11:20:12
[2026-06-13 11:20:12,531.531 INFO    ] 2026-06-13 11:20:12
[2026-06-13 11:20:12,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:12,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:12,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:12,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:12,889.889 INFO    ] time= 13/06/2026 11:20:12
[2026-06-13 11:20:12,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:12,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:12,974.974 INFO    ] No existing commands found in stream
[2026-06-13 11:20:18,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:20:18,006.006 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 11:20:18,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:20:18,810.810 INFO    ] Checking for system updates...
[2026-06-13 11:20:18,831.831 INFO    ] 200
[2026-06-13 11:20:18,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:18,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:20:18,868.868 INFO    ] No update needed
[2026-06-13 11:20:18,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 11:20:18,891.891 INFO    ] 200
[2026-06-13 11:20:18,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:18,917.917 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:20:18,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:20:18,954.954 INFO    ] No camera update needed
[2026-06-13 11:20:18,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:20:18,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:20:18,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:20:18,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:20:21,000.000 INFO    ] ================================================
[2026-06-13 11:20:21,015.015 INFO    ] Launching Daemon at Sat Jun 13 11:20:21 IST 2026
[2026-06-13 11:20:21,026.026 INFO    ] ================================================
[2026-06-13 11:20:21,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:21
[2026-06-13 11:20:21,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:21,843.843 INFO    ] Initializing speech engine...
[2026-06-13 11:20:21,848.848 INFO    ] 2026-06-13 11:20:21
[2026-06-13 11:20:22,056.056 INFO    ] 2026-06-13 11:20:22
[2026-06-13 11:20:22,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:22,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:22,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:22,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:22,463.463 INFO    ] time= 13/06/2026 11:20:22
[2026-06-13 11:20:22,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:22,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:22,575.575 INFO    ] No existing commands found in stream
[2026-06-13 11:20:27,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:20:27,587.587 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 11:20:29,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:20:29,314.314 INFO    ] Checking for system updates...
[2026-06-13 11:20:29,335.335 INFO    ] 200
[2026-06-13 11:20:29,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:29,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:29,371.371 INFO    ] No update needed
[2026-06-13 11:20:29,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 11:20:29,392.392 INFO    ] 200
[2026-06-13 11:20:29,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:29,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:20:29,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:29,455.455 INFO    ] No camera update needed
[2026-06-13 11:20:29,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:20:29,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:20:29,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:20:29,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:20:31,506.506 INFO    ] ================================================
[2026-06-13 11:20:31,521.521 INFO    ] Launching Daemon at Sat Jun 13 11:20:31 IST 2026
[2026-06-13 11:20:31,533.533 INFO    ] ================================================
[2026-06-13 11:20:31,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:31
[2026-06-13 11:20:32,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:32,405.405 INFO    ] Initializing speech engine...
[2026-06-13 11:20:32,410.410 INFO    ] 2026-06-13 11:20:32
[2026-06-13 11:20:32,630.630 INFO    ] 2026-06-13 11:20:32
[2026-06-13 11:20:32,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:32,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:32,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:32,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:33,043.043 INFO    ] time= 13/06/2026 11:20:32
[2026-06-13 11:20:33,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:33,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:33,156.156 INFO    ] No existing commands found in stream
[2026-06-13 11:20:38,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:20:38,170.170 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 11:20:41,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:20:41,010.010 INFO    ] Checking for system updates...
[2026-06-13 11:20:41,032.032 INFO    ] 200
[2026-06-13 11:20:41,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:41,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:41,065.065 INFO    ] No update needed
[2026-06-13 11:20:41,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 11:20:41,086.086 INFO    ] 200
[2026-06-13 11:20:41,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:41,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:20:41,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:41,151.151 INFO    ] No camera update needed
[2026-06-13 11:20:41,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:20:41,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:20:41,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:20:41,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:20:43,197.197 INFO    ] ================================================
[2026-06-13 11:20:43,214.214 INFO    ] Launching Daemon at Sat Jun 13 11:20:43 IST 2026
[2026-06-13 11:20:43,225.225 INFO    ] ================================================
[2026-06-13 11:20:43,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:43
[2026-06-13 11:20:43,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:44,044.044 INFO    ] Initializing speech engine...
[2026-06-13 11:20:44,050.050 INFO    ] 2026-06-13 11:20:44
[2026-06-13 11:20:44,254.254 INFO    ] 2026-06-13 11:20:44
[2026-06-13 11:20:44,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:44,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:44,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:44,666.666 INFO    ] time= 13/06/2026 11:20:44
[2026-06-13 11:20:44,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:44,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:44,772.772 INFO    ] No existing commands found in stream
[2026-06-13 11:20:49,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:20:49,783.783 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 11:20:51,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:20:51,330.330 INFO    ] Checking for system updates...
[2026-06-13 11:20:51,351.351 INFO    ] 200
[2026-06-13 11:20:51,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:51,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:20:51,385.385 INFO    ] No update needed
[2026-06-13 11:20:51,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 11:20:51,408.408 INFO    ] 200
[2026-06-13 11:20:51,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:20:51,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:20:51,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:20:51,480.480 INFO    ] No camera update needed
[2026-06-13 11:20:51,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:20:51,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:20:51,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:20:51,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:20:53,526.526 INFO    ] ================================================
[2026-06-13 11:20:53,541.541 INFO    ] Launching Daemon at Sat Jun 13 11:20:53 IST 2026
[2026-06-13 11:20:53,553.553 INFO    ] ================================================
[2026-06-13 11:20:53,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:20:53
[2026-06-13 11:20:54,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:20:54,430.430 INFO    ] Initializing speech engine...
[2026-06-13 11:20:54,435.435 INFO    ] 2026-06-13 11:20:54
[2026-06-13 11:20:54,642.642 INFO    ] 2026-06-13 11:20:54
[2026-06-13 11:20:54,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:20:54,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:20:54,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:20:55,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:20:55,064.064 INFO    ] time= 13/06/2026 11:20:55
[2026-06-13 11:20:55,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:20:55,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:20:55,160.160 INFO    ] No existing commands found in stream
[2026-06-13 11:21:00,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:21:00,173.173 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 11:21:02,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:21:02,200.200 INFO    ] Checking for system updates...
[2026-06-13 11:21:02,237.237 INFO    ] 200
[2026-06-13 11:21:02,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:02,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:21:02,290.290 INFO    ] No update needed
[2026-06-13 11:21:02,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:02,316.316 INFO    ] 200
[2026-06-13 11:21:02,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:02,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:02,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:21:02,385.385 INFO    ] No camera update needed
[2026-06-13 11:21:02,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:02,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:02,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:02,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:21:04,439.439 INFO    ] ================================================
[2026-06-13 11:21:04,456.456 INFO    ] Launching Daemon at Sat Jun 13 11:21:04 IST 2026
[2026-06-13 11:21:04,467.467 INFO    ] ================================================
[2026-06-13 11:21:04,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:21:04
[2026-06-13 11:21:05,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:21:05,285.285 INFO    ] Initializing speech engine...
[2026-06-13 11:21:05,290.290 INFO    ] 2026-06-13 11:21:05
[2026-06-13 11:21:05,494.494 INFO    ] 2026-06-13 11:21:05
[2026-06-13 11:21:05,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:21:05,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:21:05,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:21:05,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:21:05,888.888 INFO    ] time= 13/06/2026 11:21:05
[2026-06-13 11:21:05,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:21:05,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:21:06,007.007 INFO    ] No existing commands found in stream
[2026-06-13 11:21:11,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:21:11,021.021 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 11:21:12,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:21:12,180.180 INFO    ] Checking for system updates...
[2026-06-13 11:21:12,200.200 INFO    ] 200
[2026-06-13 11:21:12,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:12,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:12,234.234 INFO    ] No update needed
[2026-06-13 11:21:12,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:12,255.255 INFO    ] 200
[2026-06-13 11:21:12,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:12,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:12,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:12,319.319 INFO    ] No camera update needed
[2026-06-13 11:21:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:12,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:12,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:12,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:21:14,367.367 INFO    ] ================================================
[2026-06-13 11:21:14,383.383 INFO    ] Launching Daemon at Sat Jun 13 11:21:14 IST 2026
[2026-06-13 11:21:14,394.394 INFO    ] ================================================
[2026-06-13 11:21:14,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:21:14
[2026-06-13 11:21:15,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:21:15,172.172 INFO    ] Initializing speech engine...
[2026-06-13 11:21:15,176.176 INFO    ] 2026-06-13 11:21:15
[2026-06-13 11:21:15,394.394 INFO    ] 2026-06-13 11:21:15
[2026-06-13 11:21:15,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:21:15,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:21:15,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:21:15,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:21:15,798.798 INFO    ] time= 13/06/2026 11:21:15
[2026-06-13 11:21:15,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:21:15,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:21:15,914.914 INFO    ] No existing commands found in stream
[2026-06-13 11:21:20,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:21:20,927.927 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 11:21:21,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:21:21,604.604 INFO    ] Checking for system updates...
[2026-06-13 11:21:21,626.626 INFO    ] 200
[2026-06-13 11:21:21,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:21,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:21:21,662.662 INFO    ] No update needed
[2026-06-13 11:21:21,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:21,684.684 INFO    ] 200
[2026-06-13 11:21:21,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:21,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:21,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:21:21,755.755 INFO    ] No camera update needed
[2026-06-13 11:21:21,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:21,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:21,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:21,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:21:23,805.805 INFO    ] ================================================
[2026-06-13 11:21:23,821.821 INFO    ] Launching Daemon at Sat Jun 13 11:21:23 IST 2026
[2026-06-13 11:21:23,833.833 INFO    ] ================================================
[2026-06-13 11:21:24,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:21:24
[2026-06-13 11:21:24,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:21:24,616.616 INFO    ] Initializing speech engine...
[2026-06-13 11:21:24,621.621 INFO    ] 2026-06-13 11:21:24
[2026-06-13 11:21:24,825.825 INFO    ] 2026-06-13 11:21:24
[2026-06-13 11:21:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:21:25,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:21:25,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:21:25,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:21:25,221.221 INFO    ] time= 13/06/2026 11:21:25
[2026-06-13 11:21:25,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:21:25,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:21:25,341.341 INFO    ] No existing commands found in stream
[2026-06-13 11:21:30,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:21:30,353.353 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 11:21:34,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:21:34,390.390 INFO    ] Checking for system updates...
[2026-06-13 11:21:34,413.413 INFO    ] 200
[2026-06-13 11:21:34,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:34,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:21:34,446.446 INFO    ] No update needed
[2026-06-13 11:21:34,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:34,468.468 INFO    ] 200
[2026-06-13 11:21:34,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:34,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:34,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:34,537.537 INFO    ] No camera update needed
[2026-06-13 11:21:34,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:34,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:34,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:34,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:21:36,586.586 INFO    ] ================================================
[2026-06-13 11:21:36,602.602 INFO    ] Launching Daemon at Sat Jun 13 11:21:36 IST 2026
[2026-06-13 11:21:36,613.613 INFO    ] ================================================
[2026-06-13 11:21:36,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:21:36
[2026-06-13 11:21:37,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:21:37,432.432 INFO    ] Initializing speech engine...
[2026-06-13 11:21:37,442.442 INFO    ] 2026-06-13 11:21:37
[2026-06-13 11:21:37,646.646 INFO    ] 2026-06-13 11:21:37
[2026-06-13 11:21:37,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:21:37,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:21:37,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:21:37,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:21:38,043.043 INFO    ] time= 13/06/2026 11:21:37
[2026-06-13 11:21:38,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:21:38,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:21:43,120.120 INFO    ] Error reading historical messages: Timeout reading from socket
[2026-06-13 11:21:43,151.151 INFO    ] Error reading from stream: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 11:21:44,155.155 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 11:21:48,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:21:48,475.475 INFO    ] Checking for system updates...
[2026-06-13 11:21:48,496.496 INFO    ] 200
[2026-06-13 11:21:48,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:48,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:48,531.531 INFO    ] No update needed
[2026-06-13 11:21:48,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:48,554.554 INFO    ] 200
[2026-06-13 11:21:48,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:48,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:48,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:48,657.657 INFO    ] No camera update needed
[2026-06-13 11:21:48,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:48,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:48,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:21:50,707.707 INFO    ] ================================================
[2026-06-13 11:21:50,723.723 INFO    ] Launching Daemon at Sat Jun 13 11:21:50 IST 2026
[2026-06-13 11:21:50,734.734 INFO    ] ================================================
[2026-06-13 11:21:51,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:21:51
[2026-06-13 11:21:51,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:21:51,551.551 INFO    ] Initializing speech engine...
[2026-06-13 11:21:51,559.559 INFO    ] 2026-06-13 11:21:51
[2026-06-13 11:21:51,770.770 INFO    ] 2026-06-13 11:21:51
[2026-06-13 11:21:51,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:21:51,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:21:51,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:21:52,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:21:52,170.170 INFO    ] time= 13/06/2026 11:21:52
[2026-06-13 11:21:52,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:21:52,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:21:52,291.291 INFO    ] No existing commands found in stream
[2026-06-13 11:21:57,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:21:57,304.304 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 11:21:57,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:21:57,990.990 INFO    ] Checking for system updates...
[2026-06-13 11:21:58,011.011 INFO    ] 200
[2026-06-13 11:21:58,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:58,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:58,047.047 INFO    ] No update needed
[2026-06-13 11:21:58,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 11:21:58,067.067 INFO    ] 200
[2026-06-13 11:21:58,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:21:58,095.095 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:21:58,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:21:58,138.138 INFO    ] No camera update needed
[2026-06-13 11:21:58,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:21:58,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:21:58,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:21:58,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:00,185.185 INFO    ] ================================================
[2026-06-13 11:22:00,201.201 INFO    ] Launching Daemon at Sat Jun 13 11:22:00 IST 2026
[2026-06-13 11:22:00,213.213 INFO    ] ================================================
[2026-06-13 11:22:00,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:00
[2026-06-13 11:22:00,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:01,029.029 INFO    ] Initializing speech engine...
[2026-06-13 11:22:01,034.034 INFO    ] 2026-06-13 11:22:01
[2026-06-13 11:22:01,225.225 INFO    ] 2026-06-13 11:22:01
[2026-06-13 11:22:01,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:01,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:01,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:01,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:01,634.634 INFO    ] time= 13/06/2026 11:22:01
[2026-06-13 11:22:01,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:01,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:01,734.734 INFO    ] No existing commands found in stream
[2026-06-13 11:22:06,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:22:06,746.746 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 11:22:08,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:22:08,244.244 INFO    ] Checking for system updates...
[2026-06-13 11:22:08,267.267 INFO    ] 200
[2026-06-13 11:22:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:08,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:08,301.301 INFO    ] No update needed
[2026-06-13 11:22:08,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 11:22:08,323.323 INFO    ] 200
[2026-06-13 11:22:08,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:08,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:22:08,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:08,396.396 INFO    ] No camera update needed
[2026-06-13 11:22:08,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:22:08,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:22:08,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:22:08,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:10,447.447 INFO    ] ================================================
[2026-06-13 11:22:10,464.464 INFO    ] Launching Daemon at Sat Jun 13 11:22:10 IST 2026
[2026-06-13 11:22:10,475.475 INFO    ] ================================================
[2026-06-13 11:22:10,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:10
[2026-06-13 11:22:11,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:11,242.242 INFO    ] Initializing speech engine...
[2026-06-13 11:22:11,247.247 INFO    ] 2026-06-13 11:22:11
[2026-06-13 11:22:11,457.457 INFO    ] 2026-06-13 11:22:11
[2026-06-13 11:22:11,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:11,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:11,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:11,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:11,903.903 INFO    ] time= 13/06/2026 11:22:11
[2026-06-13 11:22:11,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:11,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:12,038.038 INFO    ] No existing commands found in stream
[2026-06-13 11:22:17,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:22:17,052.052 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 11:22:18,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:22:18,960.960 INFO    ] Checking for system updates...
[2026-06-13 11:22:18,982.982 INFO    ] 200
[2026-06-13 11:22:18,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:19,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:22:19,018.018 INFO    ] No update needed
[2026-06-13 11:22:19,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 11:22:19,040.040 INFO    ] 200
[2026-06-13 11:22:19,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:19,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:22:19,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:22:19,111.111 INFO    ] No camera update needed
[2026-06-13 11:22:19,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:22:19,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:22:19,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:22:19,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:21,158.158 INFO    ] ================================================
[2026-06-13 11:22:21,173.173 INFO    ] Launching Daemon at Sat Jun 13 11:22:21 IST 2026
[2026-06-13 11:22:21,185.185 INFO    ] ================================================
[2026-06-13 11:22:21,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:21
[2026-06-13 11:22:21,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:21,967.967 INFO    ] Initializing speech engine...
[2026-06-13 11:22:21,971.971 INFO    ] 2026-06-13 11:22:21
[2026-06-13 11:22:22,171.171 INFO    ] 2026-06-13 11:22:22
[2026-06-13 11:22:22,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:22,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:22,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:22,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:22,452.452 INFO    ] time= 13/06/2026 11:22:22
[2026-06-13 11:22:22,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:22,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:22,542.542 INFO    ] No existing commands found in stream
[2026-06-13 11:22:27,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:22:27,574.574 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 11:22:31,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:22:31,052.052 INFO    ] Checking for system updates...
[2026-06-13 11:22:31,074.074 INFO    ] 200
[2026-06-13 11:22:31,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:31,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:22:31,111.111 INFO    ] No update needed
[2026-06-13 11:22:31,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 11:22:31,134.134 INFO    ] 200
[2026-06-13 11:22:31,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:31,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:22:31,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:22:31,205.205 INFO    ] No camera update needed
[2026-06-13 11:22:31,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:22:31,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:22:31,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:22:31,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:33,247.247 INFO    ] ================================================
[2026-06-13 11:22:33,263.263 INFO    ] Launching Daemon at Sat Jun 13 11:22:33 IST 2026
[2026-06-13 11:22:33,275.275 INFO    ] ================================================
[2026-06-13 11:22:33,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:33
[2026-06-13 11:22:33,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:34,077.077 INFO    ] Initializing speech engine...
[2026-06-13 11:22:34,082.082 INFO    ] 2026-06-13 11:22:34
[2026-06-13 11:22:34,285.285 INFO    ] 2026-06-13 11:22:34
[2026-06-13 11:22:34,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:34,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:34,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:34,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:34,687.687 INFO    ] time= 13/06/2026 11:22:34
[2026-06-13 11:22:34,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:34,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:34,795.795 INFO    ] No existing commands found in stream
[2026-06-13 11:22:39,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:22:39,808.808 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 11:22:44,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:22:44,010.010 INFO    ] Checking for system updates...
[2026-06-13 11:22:44,031.031 INFO    ] 200
[2026-06-13 11:22:44,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:44,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:44,066.066 INFO    ] No update needed
[2026-06-13 11:22:44,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 11:22:44,087.087 INFO    ] 200
[2026-06-13 11:22:44,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:44,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:22:44,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:44,151.151 INFO    ] No camera update needed
[2026-06-13 11:22:44,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:22:44,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:22:44,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:22:44,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:46,191.191 INFO    ] ================================================
[2026-06-13 11:22:46,207.207 INFO    ] Launching Daemon at Sat Jun 13 11:22:46 IST 2026
[2026-06-13 11:22:46,218.218 INFO    ] ================================================
[2026-06-13 11:22:46,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:46
[2026-06-13 11:22:46,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:47,050.050 INFO    ] Initializing speech engine...
[2026-06-13 11:22:47,061.061 INFO    ] 2026-06-13 11:22:47
[2026-06-13 11:22:47,269.269 INFO    ] 2026-06-13 11:22:47
[2026-06-13 11:22:47,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:47,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:47,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:47,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:47,672.672 INFO    ] time= 13/06/2026 11:22:47
[2026-06-13 11:22:47,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:47,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:47,789.789 INFO    ] No existing commands found in stream
[2026-06-13 11:22:52,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:22:52,802.802 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 11:22:55,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:22:55,643.643 INFO    ] Checking for system updates...
[2026-06-13 11:22:55,665.665 INFO    ] 200
[2026-06-13 11:22:55,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:55,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:55,702.702 INFO    ] No update needed
[2026-06-13 11:22:55,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 11:22:55,722.722 INFO    ] 200
[2026-06-13 11:22:55,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:22:55,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:22:55,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:22:55,785.785 INFO    ] No camera update needed
[2026-06-13 11:22:55,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:22:55,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:22:55,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:22:55,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:22:57,817.817 INFO    ] ================================================
[2026-06-13 11:22:57,827.827 INFO    ] Launching Daemon at Sat Jun 13 11:22:57 IST 2026
[2026-06-13 11:22:57,833.833 INFO    ] ================================================
[2026-06-13 11:22:58,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:22:58
[2026-06-13 11:22:58,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:22:58,958.958 INFO    ] Initializing speech engine...
[2026-06-13 11:22:58,971.971 INFO    ] 2026-06-13 11:22:58
[2026-06-13 11:22:59,314.314 INFO    ] 2026-06-13 11:22:59
[2026-06-13 11:22:59,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:22:59,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:22:59,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:22:59,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:22:59,758.758 INFO    ] time= 13/06/2026 11:22:59
[2026-06-13 11:22:59,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:22:59,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:22:59,912.912 INFO    ] No existing commands found in stream
[2026-06-13 11:23:04,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:23:04,930.930 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 11:23:06,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:23:06,940.940 INFO    ] Checking for system updates...
[2026-06-13 11:23:06,961.961 INFO    ] 200
[2026-06-13 11:23:06,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:06,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:06,997.997 INFO    ] No update needed
[2026-06-13 11:23:06,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 11:23:07,018.018 INFO    ] 200
[2026-06-13 11:23:07,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:07,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:23:07,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:23:07,087.087 INFO    ] No camera update needed
[2026-06-13 11:23:07,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:23:07,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:23:07,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:23:07,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:23:09,132.132 INFO    ] ================================================
[2026-06-13 11:23:09,148.148 INFO    ] Launching Daemon at Sat Jun 13 11:23:09 IST 2026
[2026-06-13 11:23:09,159.159 INFO    ] ================================================
[2026-06-13 11:23:09,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:23:09
[2026-06-13 11:23:09,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:23:10,025.025 INFO    ] Initializing speech engine...
[2026-06-13 11:23:10,030.030 INFO    ] 2026-06-13 11:23:10
[2026-06-13 11:23:10,239.239 INFO    ] 2026-06-13 11:23:10
[2026-06-13 11:23:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:23:10,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:23:10,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:23:10,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:23:10,636.636 INFO    ] time= 13/06/2026 11:23:10
[2026-06-13 11:23:10,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:23:10,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:23:10,756.756 INFO    ] No existing commands found in stream
[2026-06-13 11:23:15,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:23:15,764.764 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 11:23:18,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:23:18,435.435 INFO    ] Checking for system updates...
[2026-06-13 11:23:18,457.457 INFO    ] 200
[2026-06-13 11:23:18,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:18,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:18,494.494 INFO    ] No update needed
[2026-06-13 11:23:18,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 11:23:18,516.516 INFO    ] 200
[2026-06-13 11:23:18,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:18,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:23:18,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:18,570.570 INFO    ] No camera update needed
[2026-06-13 11:23:18,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:23:18,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:23:18,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:23:18,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:23:20,618.618 INFO    ] ================================================
[2026-06-13 11:23:20,633.633 INFO    ] Launching Daemon at Sat Jun 13 11:23:20 IST 2026
[2026-06-13 11:23:20,643.643 INFO    ] ================================================
[2026-06-13 11:23:21,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:23:21
[2026-06-13 11:23:21,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:23:21,878.878 INFO    ] Initializing speech engine...
[2026-06-13 11:23:21,884.884 INFO    ] 2026-06-13 11:23:21
[2026-06-13 11:23:22,144.144 INFO    ] 2026-06-13 11:23:22
[2026-06-13 11:23:22,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:23:22,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:23:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:23:22,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:23:22,615.615 INFO    ] time= 13/06/2026 11:23:22
[2026-06-13 11:23:22,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:23:22,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:23:22,842.842 INFO    ] No existing commands found in stream
[2026-06-13 11:23:27,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:23:27,859.859 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 11:23:30,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:23:30,161.161 INFO    ] Checking for system updates...
[2026-06-13 11:23:30,182.182 INFO    ] 200
[2026-06-13 11:23:30,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:30,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:23:30,216.216 INFO    ] No update needed
[2026-06-13 11:23:30,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 11:23:30,237.237 INFO    ] 200
[2026-06-13 11:23:30,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:30,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:23:30,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:23:30,316.316 INFO    ] No camera update needed
[2026-06-13 11:23:30,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:23:30,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:23:30,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:23:30,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:23:32,355.355 INFO    ] ================================================
[2026-06-13 11:23:32,365.365 INFO    ] Launching Daemon at Sat Jun 13 11:23:32 IST 2026
[2026-06-13 11:23:32,373.373 INFO    ] ================================================
[2026-06-13 11:23:32,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:23:32
[2026-06-13 11:23:33,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:23:33,748.748 INFO    ] Initializing speech engine...
[2026-06-13 11:23:33,764.764 INFO    ] 2026-06-13 11:23:33
[2026-06-13 11:23:34,025.025 INFO    ] 2026-06-13 11:23:34
[2026-06-13 11:23:34,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:23:34,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:23:34,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:23:34,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:23:34,389.389 INFO    ] time= 13/06/2026 11:23:34
[2026-06-13 11:23:34,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:23:34,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:23:34,543.543 INFO    ] No existing commands found in stream
[2026-06-13 11:23:39,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:23:39,577.577 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 11:23:39,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:23:39,904.904 INFO    ] Checking for system updates...
[2026-06-13 11:23:39,927.927 INFO    ] 200
[2026-06-13 11:23:39,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:39,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:39,961.961 INFO    ] No update needed
[2026-06-13 11:23:39,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 11:23:39,983.983 INFO    ] 200
[2026-06-13 11:23:39,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:40,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:23:40,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:23:40,053.053 INFO    ] No camera update needed
[2026-06-13 11:23:40,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:23:40,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:23:40,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:23:40,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:23:42,099.099 INFO    ] ================================================
[2026-06-13 11:23:42,114.114 INFO    ] Launching Daemon at Sat Jun 13 11:23:42 IST 2026
[2026-06-13 11:23:42,125.125 INFO    ] ================================================
[2026-06-13 11:23:42,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:23:42
[2026-06-13 11:23:42,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:23:42,934.934 INFO    ] Initializing speech engine...
[2026-06-13 11:23:42,947.947 INFO    ] 2026-06-13 11:23:42
[2026-06-13 11:23:43,155.155 INFO    ] 2026-06-13 11:23:43
[2026-06-13 11:23:43,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:23:43,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:23:43,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:23:43,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:23:43,563.563 INFO    ] time= 13/06/2026 11:23:43
[2026-06-13 11:23:43,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:23:43,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:23:43,797.797 INFO    ] No existing commands found in stream
[2026-06-13 11:23:48,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:23:48,826.826 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 11:23:51,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:23:51,103.103 INFO    ] Checking for system updates...
[2026-06-13 11:23:51,125.125 INFO    ] 200
[2026-06-13 11:23:51,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:51,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:51,161.161 INFO    ] No update needed
[2026-06-13 11:23:51,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 11:23:51,183.183 INFO    ] 200
[2026-06-13 11:23:51,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:23:51,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:23:51,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:23:51,351.351 INFO    ] No camera update needed
[2026-06-13 11:23:51,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:23:51,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:23:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:23:51,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:23:53,399.399 INFO    ] ================================================
[2026-06-13 11:23:53,415.415 INFO    ] Launching Daemon at Sat Jun 13 11:23:53 IST 2026
[2026-06-13 11:23:53,425.425 INFO    ] ================================================
[2026-06-13 11:23:53,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:23:53
[2026-06-13 11:23:54,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:23:54,207.207 INFO    ] Initializing speech engine...
[2026-06-13 11:23:54,212.212 INFO    ] 2026-06-13 11:23:54
[2026-06-13 11:23:54,417.417 INFO    ] 2026-06-13 11:23:54
[2026-06-13 11:23:54,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:23:54,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:23:54,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:23:54,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:23:54,802.802 INFO    ] time= 13/06/2026 11:23:54
[2026-06-13 11:23:54,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:23:54,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:23:55,092.092 INFO    ] No existing commands found in stream
[2026-06-13 11:24:00,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:24:00,126.126 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 11:24:01,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:24:01,330.330 INFO    ] Checking for system updates...
[2026-06-13 11:24:01,351.351 INFO    ] 200
[2026-06-13 11:24:01,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:01,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:24:01,384.384 INFO    ] No update needed
[2026-06-13 11:24:01,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 11:24:01,405.405 INFO    ] 200
[2026-06-13 11:24:01,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:01,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:24:01,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:24:01,470.470 INFO    ] No camera update needed
[2026-06-13 11:24:01,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:24:01,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:24:01,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:24:01,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:24:03,520.520 INFO    ] ================================================
[2026-06-13 11:24:03,535.535 INFO    ] Launching Daemon at Sat Jun 13 11:24:03 IST 2026
[2026-06-13 11:24:03,545.545 INFO    ] ================================================
[2026-06-13 11:24:03,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:24:03
[2026-06-13 11:24:04,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:24:04,341.341 INFO    ] Initializing speech engine...
[2026-06-13 11:24:04,347.347 INFO    ] 2026-06-13 11:24:04
[2026-06-13 11:24:04,550.550 INFO    ] 2026-06-13 11:24:04
[2026-06-13 11:24:04,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:24:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:24:04,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:24:04,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:24:04,951.951 INFO    ] time= 13/06/2026 11:24:04
[2026-06-13 11:24:04,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:24:05,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:24:05,066.066 INFO    ] No existing commands found in stream
[2026-06-13 11:24:10,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:24:10,080.080 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 11:24:12,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:24:12,597.597 INFO    ] Checking for system updates...
[2026-06-13 11:24:12,648.648 INFO    ] 200
[2026-06-13 11:24:12,651.651 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:12,654.654 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 11:24:12,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 11:24:12,718.718 INFO    ] 200
[2026-06-13 11:24:12,721.721 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:12,724.724 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 11:24:12,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:24:12,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:24:12,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:24:12,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:24:14,786.786 INFO    ] ================================================
[2026-06-13 11:24:14,811.811 INFO    ] Launching Daemon at Sat Jun 13 11:24:14 IST 2026
[2026-06-13 11:24:14,821.821 INFO    ] ================================================
[2026-06-13 11:24:15,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:24:15
[2026-06-13 11:24:15,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:24:16,138.138 INFO    ] Initializing speech engine...
[2026-06-13 11:24:16,163.163 INFO    ] 2026-06-13 11:24:16
[2026-06-13 11:24:16,419.419 INFO    ] 2026-06-13 11:24:16
[2026-06-13 11:24:16,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:24:16,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:24:16,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:24:16,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:24:16,792.792 INFO    ] time= 13/06/2026 11:24:16
[2026-06-13 11:24:16,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:24:16,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:24:16,966.966 INFO    ] No existing commands found in stream
[2026-06-13 11:24:21,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:24:22,001.001 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 11:24:26,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:24:26,223.223 INFO    ] Checking for system updates...
[2026-06-13 11:24:26,244.244 INFO    ] 200
[2026-06-13 11:24:26,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:26,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:24:26,277.277 INFO    ] No update needed
[2026-06-13 11:24:26,278.278 INFO    ] Checking for camera pi updates...
[2026-06-13 11:24:26,300.300 INFO    ] 200
[2026-06-13 11:24:26,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:26,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:24:26,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:24:26,469.469 INFO    ] No camera update needed
[2026-06-13 11:24:26,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:24:26,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:24:26,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:24:26,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:24:28,515.515 INFO    ] ================================================
[2026-06-13 11:24:28,530.530 INFO    ] Launching Daemon at Sat Jun 13 11:24:28 IST 2026
[2026-06-13 11:24:28,541.541 INFO    ] ================================================
[2026-06-13 11:24:28,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:24:28
[2026-06-13 11:24:29,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:24:29,325.325 INFO    ] Initializing speech engine...
[2026-06-13 11:24:29,329.329 INFO    ] 2026-06-13 11:24:29
[2026-06-13 11:24:29,525.525 INFO    ] 2026-06-13 11:24:29
[2026-06-13 11:24:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:24:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:24:29,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:24:29,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:24:29,932.932 INFO    ] time= 13/06/2026 11:24:29
[2026-06-13 11:24:29,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:24:29,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:24:30,047.047 INFO    ] No existing commands found in stream
[2026-06-13 11:24:32,907.907 INFO    ] Received new command: ID=1781330072888-0
[2026-06-13 11:24:32,910.910 INFO    ] process_and_cleanup_command: msg_id=1781330072888-0
[2026-06-13 11:24:32,912.912 INFO    ] is_command_expired: timestamp=2026-06-13T05:54:32.712Z, expiry=30s
[2026-06-13 11:24:32,984.984 INFO    ] Command removed from stream: 1781330072888-0. returning for processing...
[2026-06-13 11:24:32,987.987 INFO    ] ***** get_valid_command
[2026-06-13 11:24:32,989.989 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1781330072712-c7eowf7vc","orderId":"TM08202203260613112331331","is_vending":false}', 'timestamp': '2026-06-13T05:54:32.712Z', 'command': 'start-order', 'timeout': '10'}
[2026-06-13 11:24:32,992.992 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781330072712-c7eowf7vc', 'orderId': 'TM08202203260613112331331'}
[2026-06-13 11:24:32,994.994 INFO    ] Handling start order...
[2026-06-13 11:24:32,997.997 INFO    ] handle_start_order_command
[2026-06-13 11:24:33,002.002 INFO    ] _send_start_order_success: request_id=start-order-1781330072712-c7eowf7vc, order_id=TM08202203260613112331331
[2026-06-13 11:24:33,005.005 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 11:24:33,048.048 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781330073035-0
[2026-06-13 11:24:33,050.050 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 11:24:33,051.051 INFO    ] Checking for system updates...
[2026-06-13 11:24:33,075.075 INFO    ] 200
[2026-06-13 11:24:33,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:33,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:24:33,111.111 INFO    ] No update needed
[2026-06-13 11:24:33,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 11:24:33,131.131 INFO    ] 200
[2026-06-13 11:24:33,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:33,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:24:33,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:24:33,184.184 INFO    ] No camera update needed
[2026-06-13 11:24:33,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:24:33,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:24:33,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:24:33,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:24:35,230.230 INFO    ] ================================================
[2026-06-13 11:24:35,245.245 INFO    ] Launching Daemon at Sat Jun 13 11:24:35 IST 2026
[2026-06-13 11:24:35,256.256 INFO    ] ================================================
[2026-06-13 11:24:35,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:24:35
[2026-06-13 11:24:35,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:24:36,073.073 INFO    ] Initializing speech engine...
[2026-06-13 11:24:36,078.078 INFO    ] 2026-06-13 11:24:36
[2026-06-13 11:24:36,306.306 INFO    ] 2026-06-13 11:24:36
[2026-06-13 11:24:36,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:24:36,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:24:36,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:24:36,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:24:36,693.693 INFO    ] time= 13/06/2026 11:24:36
[2026-06-13 11:24:36,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:24:36,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:24:36,870.870 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 11:24:36,874.874 INFO    ] Checking historical command: ID=1781330073035-0
[2026-06-13 11:24:36,901.901 INFO    ] process_and_cleanup_command: msg_id=1781330073035-0
[2026-06-13 11:24:36,902.902 INFO    ] is_command_expired: timestamp=2026-06-13T05:54:33.003602Z, expiry=30s
[2026-06-13 11:24:37,020.020 INFO    ] Command removed from stream: 1781330073035-0. returning for processing...
[2026-06-13 11:24:37,024.024 INFO    ] ***** get_valid_command
[2026-06-13 11:24:37,027.027 INFO    ] {'message': 'start-order success', 'metadata_order_id': 'TM08202203260613112331331', 'timestamp': '2026-06-13T05:54:33.003602Z', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781330072712-c7eowf7vc', 'status': 'success', 'message_type': 'command_response'}
[2026-06-13 11:24:37,031.031 INFO    ] Checking historical command: ID=1781330075817-0
[2026-06-13 11:24:37,036.036 INFO    ] process_and_cleanup_command: msg_id=1781330075817-0
[2026-06-13 11:24:37,039.039 INFO    ] is_command_expired: timestamp=2026-06-13T05:54:35.703Z, expiry=30s
[2026-06-13 11:24:37,085.085 INFO    ] Command removed from stream: 1781330075817-0. returning for processing...
[2026-06-13 11:24:37,088.088 INFO    ] ***** get_valid_command
[2026-06-13 11:24:37,091.091 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1781330075703-196szg9oe","orderId":"TM08202203260613112331331","is_vending":false,"accessCode":"74212111"}', 'timeout': '60', 'timestamp': '2026-06-13T05:54:35.703Z', 'source': 'webapp'}
[2026-06-13 11:24:37,094.094 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781330075703-196szg9oe', 'orderId': 'TM08202203260613112331331', 'is_vending': False, 'accessCode': '74212111'}
[2026-06-13 11:24:37,096.096 INFO    ] Handling process order...
[2026-06-13 11:24:37,100.100 INFO    ] Processing process-order command...
[2026-06-13 11:24:37,103.103 INFO    ] 🔍 Lock file Order ID: TM08202203260613112331331, TS: 2026-06-13 11:24:33
[2026-06-13 11:24:37,112.112 INFO    ] ✅ Order lock valid for TM08202203260613112331331
[2026-06-13 11:24:37,115.115 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 11:24:37,118.118 INFO    ] processing access code 74212111 for order TM08202203260613112331331
[2026-06-13 11:24:37,121.121 INFO    ] 🔍 Lock file Order ID: TM08202203260613112331331, TS: 2026-06-13 11:24:33
[2026-06-13 11:24:37,124.124 INFO    ] ✅ Order lock valid for TM08202203260613112331331
[2026-06-13 11:24:37,127.127 INFO    ] 2026-06-13 11:24:37
[2026-06-13 11:24:37,154.154 INFO    ] 200
[2026-06-13 11:24:37,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:24:37,161.161 INFO    ] 74212111
[2026-06-13 11:24:37,165.165 INFO    ] 2026-06-13 11:24:37
[2026-06-13 11:24:37,169.169 INFO    ] session id :956890413
[2026-06-13 11:24:37,173.173 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=74212111&imei=TM08202203&session_id=956890413
[2026-06-13 11:24:38,487.487 INFO    ] 200
[2026-06-13 11:24:38,489.489 INFO    ] {"data": {"mobile": "8951724787", "order_id": "TM08202203260613112331331", "bill_amount": "110", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Farmely Classic date Bites 20gm", "tray_id": "37", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Roasted Channa 32g", "tray_id": "15", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "skuid": "4500668", "door_id": "1", "mrp": "30", "offer_desc": "", "name": "Farmely Panchmeva 21gm", "tray_id": "21", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500693-9518.webp", "skuid": "4500693", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Max protein 7 grain Protein Gochujang 30gm", "tray_id": "26", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "74212111", "invoice_bill": "110"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 11:24:38,492.492 INFO    ] 110
[2026-06-13 11:24:38,495.495 INFO    ] TM08202203260613112331331
[2026-06-13 11:24:38,497.497 INFO    ] 8951724787
[2026-06-13 11:24:38,499.499 INFO    ] 2026-06-13 11:24:38
[2026-06-13 11:24:38,502.502 INFO    ] Door Opening for user mobile ending with  four seven eight seven 
[2026-06-13 11:24:38,504.504 INFO    ] Door Opening for user mobile ending with  four seven eight seven 
[2026-06-13 11:24:38,506.506 INFO    ] ed4d83b7e48b17f28e7cc900634d3844
[2026-06-13 11:24:38,512.512 INFO    ] 2026-06-13 11:24:38
[2026-06-13 11:24:38,514.514 INFO    ] creating audio file
[2026-06-13 11:24:38,582.582 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 11:24:39,390.390 INFO    ] gTTS API call completed successfully
[2026-06-13 11:24:40,599.599 INFO    ] 2026-06-13 11:24:40
[2026-06-13 11:24:40,602.602 INFO    ] playing audio file
[2026-06-13 11:24:40,613.613 INFO    ] 2026-06-13 11:24:40
[2026-06-13 11:24:40,615.615 INFO    ] 2026-06-13 11:24:40
[2026-06-13 11:24:40,617.617 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:24:40,619.619 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:24:40,694.694 INFO    ] [publish_status] Message added to stream with ID: 1781330080681-0
[2026-06-13 11:24:40,696.696 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'order-started', 'order_id': 'TM08202203260613112331331', 'server_response': '{"rstatus": true, "status": true, "data": {"bill_amount": "110", "mobile": "8951724787", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "2", "skuid": "4500667", "offer_desc": "", "sku_total": 40, "unit_price": 40, "name": "Farmely Classic date Bites 20gm", "offer_id": "", "tray_id": "37", "mrp": "40", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "door_id": "1", "skuid": "4500648", "offer_desc": "", "sku_total": 10, "unit_price": 10, "name": "Modern kitchens Banana Chips 21gm", "offer_id": "", "tray_id": "11", "mrp": "10", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "door_id": "1", "skuid": "4500647", "offer_desc": "", "sku_total": 10, "unit_price": 10, "name": "Modern kitchens Roasted Channa 32g", "offer_id": "", "tray_id": "15", "mrp": "10", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "door_id": "1", "skuid": "4500668", "offer_desc": "", "sku_total": 30, "unit_price": 30, "name": "Farmely Panchmeva 21gm", "offer_id": "", "tray_id": "21", "mrp": "30", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500693-9518.webp", "door_id": "1", "skuid": "4500693", "offer_desc": "", "sku_total": 20, "unit_price": 20, "name": "Max protein 7 grain Protein Gochujang 30gm", "offer_id": "", "tray_id": "26", "mrp": "20", "qty": 1}], "invoice_bill": "110", "order_id": "TM08202203260613112331331", "access_code": "74212111"}, "msg": "Order Data"}', 'timestamp': '2026-06-13T05:54:40.616276Z'} (ID: 1781330080681-0)
[2026-06-13 11:24:41,011.011 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': True, 'status': True, 'data': {'bill_amount': '110', 'mobile': '8951724787', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '2', 'skuid': '4500667', 'offer_desc': '', 'sku_total': 40, 'unit_price': 40, 'name': 'Farmely Classic date Bites 20gm', 'offer_id': '', 'tray_id': '37', 'mrp': '40', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '1', 'skuid': '4500648', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'offer_id': '', 'tray_id': '11', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '1', 'skuid': '4500647', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'name': 'Modern kitchens Roasted Channa 32g', 'offer_id': '', 'tray_id': '15', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '1', 'skuid': '4500668', 'offer_desc': '', 'sku_total': 30, 'unit_price': 30, 'name': 'Farmely Panchmeva 21gm', 'offer_id': '', 'tray_id': '21', 'mrp': '30', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '1', 'skuid': '4500693', 'offer_desc': '', 'sku_total': 20, 'unit_price': 20, 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'offer_id': '', 'tray_id': '26', 'mrp': '20', 'qty': 1}], 'invoice_bill': '110', 'order_id': 'TM08202203260613112331331', 'access_code': '74212111'}, 'msg': 'Order Data'}}
[2026-06-13 11:24:41,013.013 INFO    ] 200
[2026-06-13 11:24:41,014.014 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202203260613112331331","server_response":{"rstatus":true,"status":true,"data":{"bill_amount":"110","mobile":"8951724787","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","door_id":"2","skuid":"4500667","offer_desc":"","sku_total":40,"unit_price":40,"name":"Farmely Classic date Bites 20gm","offer_id":"","tray_id":"37","mrp":"40","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","door_id":"1","skuid":"4500648","offer_desc":"","sku_total":10,"unit_price":10,"name":"Modern kitchens Banana Chips 21gm","offer_id":"","tray_id":"11","mrp":"10","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","door_id":"1","skuid":"4500647","offer_desc":"","sku_total":10,"unit_price":10,"name":"Modern kitchens Roasted Channa 32g","offer_id":"","tray_id":"15","mrp":"10","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","door_id":"1","skuid":"4500668","offer_desc":"","sku_total":30,"unit_price":30,"name":"Farmely Panchmeva 21gm","offer_id":"","tray_id":"21","mrp":"30","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500693-9518.webp","door_id":"1","skuid":"4500693","offer_desc":"","sku_total":20,"unit_price":20,"name":"Max protein 7 grain Protein Gochujang 30gm","offer_id":"","tray_id":"26","mrp":"20","qty":1}],"invoice_bill":"110","order_id":"TM08202203260613112331331","access_code":"74212111"},"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:24:41,016.016 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': True, 'status': True, 'data': {'bill_amount': '110', 'mobile': '8951724787', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '2', 'skuid': '4500667', 'offer_desc': '', 'mrp': '40', 'unit_price': 40, 'name': 'Farmely Classic date Bites 20gm', 'offer_id': '', 'tray_id': '37', 'sku_total': 40, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '1', 'skuid': '4500648', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'offer_id': '', 'tray_id': '11', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '1', 'skuid': '4500647', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'name': 'Modern kitchens Roasted Channa 32g', 'offer_id': '', 'tray_id': '15', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '1', 'skuid': '4500668', 'offer_desc': '', 'mrp': '30', 'unit_price': 30, 'name': 'Farmely Panchmeva 21gm', 'offer_id': '', 'tray_id': '21', 'sku_total': 30, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500693-9518.webp', 'door_id': '1', 'skuid': '4500693', 'offer_desc': '', 'mrp': '20', 'unit_price': 20, 'name': 'Max protein 7 grain Protein Gochujang 30gm', 'offer_id': '', 'tray_id': '26', 'sku_total': 20, 'qty': 1}], 'invoice_bill': '110', 'order_id': 'TM08202203260613112331331', 'access_code': '74212111'}, 'msg': 'Order Data'}}}
[2026-06-13 11:24:41,017.017 INFO    ] 2026-06-13 11:24:41
[2026-06-13 11:24:41,042.042 INFO    ] 200
[2026-06-13 11:24:41,044.044 INFO    ] True
[2026-06-13 11:24:41,141.141 INFO    ] 200
[2026-06-13 11:24:41,143.143 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:41,144.144 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 11:24:41,146.146 INFO    ] *** process_order ***
[2026-06-13 11:24:42,310.310 INFO    ] 200
[2026-06-13 11:24:42,312.312 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 11:24:42,313.313 INFO    ] {'delay': 0, 'rstatus': True, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 11:24:42,314.314 INFO    ] *** process_order ***
[2026-06-13 11:24:42,316.316 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:24:42,317.317 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:24:42,389.389 INFO    ] [publish_status] Message added to stream with ID: 1781330082372-0
[2026-06-13 11:24:42,392.392 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'doorOpened', 'order_id': 'TM08202203260613112331331', 'server_response': '{"voiceNote": "Door is open...", "delay": 0, "rstatus": true, "status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781330082372-0)
[2026-06-13 11:24:43,438.438 INFO    ] 2026-06-13 11:24:43
[2026-06-13 11:24:43,441.441 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:24:43,443.443 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:24:43,504.504 INFO    ] [publish_status] Message added to stream with ID: 1781330083490-0
[2026-06-13 11:24:43,507.507 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'processOrder', 'order_id': 'TM08202203260613112331331', 'server_response': '{"delay": 0, "rstatus": true, "status": "True", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}}', 'timestamp': '2026-06-13T05:54:43.439793Z'} (ID: 1781330083490-0)
[2026-06-13 11:24:43,617.617 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202203260613112331331', 'server_response': {'delay': 0, 'rstatus': True, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-13 11:24:43,620.620 INFO    ] 200
[2026-06-13 11:24:43,623.623 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202203260613112331331","server_response":{"delay":0,"rstatus":true,"status":"true","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:24:43,626.626 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM08202203260613112331331', 'server_response': {'delay': 0, 'rstatus': True, 'status': 'true', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}}}
[2026-06-13 11:24:43,629.629 INFO    ] 2026-06-13 11:24:43
[2026-06-13 11:24:43,632.632 INFO    ] None
[2026-06-13 11:24:43,634.634 INFO    ] Opening Door now
[2026-06-13 11:24:43,637.637 INFO    ] Opening Door now
[2026-06-13 11:24:43,640.640 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 11:24:43,643.643 INFO    ] 2026-06-13 11:24:43
[2026-06-13 11:24:43,645.645 INFO    ] playing audio file
[2026-06-13 11:24:43,663.663 INFO    ] 2026-06-13 11:24:43
[2026-06-13 11:24:43,666.666 INFO    ] 2026-06-13 11:24:43
[2026-06-13 11:24:46,704.704 INFO    ] 200
[2026-06-13 11:24:46,705.705 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:46,707.707 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:24:49,853.853 INFO    ] 200
[2026-06-13 11:24:49,855.855 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:49,857.857 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:24:52,900.900 INFO    ] 200
[2026-06-13 11:24:52,901.901 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:52,903.903 INFO    ] Please close door 1
[2026-06-13 11:24:52,904.904 INFO    ] Please close door 1
[2026-06-13 11:24:52,906.906 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 11:24:52,908.908 INFO    ] 2026-06-13 11:24:52
[2026-06-13 11:24:52,909.909 INFO    ] playing audio file
[2026-06-13 11:24:52,920.920 INFO    ] 2026-06-13 11:24:52
[2026-06-13 11:24:52,922.922 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:24:52,924.924 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:24:53,013.013 INFO    ] [publish_status] Message added to stream with ID: 1781330092991-0
[2026-06-13 11:24:53,015.015 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}, {"name": "Farmely Panchmeva 21gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-13T05:54:52.921184Z'} (ID: 1781330092991-0)
[2026-06-13 11:24:53,360.360 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 11:24:53,361.361 INFO    ] 200
[2026-06-13 11:24:53,363.363 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613112331331","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1},{"name":"Farmely Panchmeva 21gm","qty":1},{"name":"Max protein 7 grain Protein Gochujang 30gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:24:53,365.365 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': False, 'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}}}}
[2026-06-13 11:24:53,366.366 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:24:56,409.409 INFO    ] 200
[2026-06-13 11:24:56,411.411 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:56,413.413 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:24:59,455.455 INFO    ] 200
[2026-06-13 11:24:59,456.456 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:24:59,459.459 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:02,814.814 INFO    ] 200
[2026-06-13 11:25:02,817.817 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:02,821.821 INFO    ] Please close door 1
[2026-06-13 11:25:02,825.825 INFO    ] Please close door 1
[2026-06-13 11:25:02,828.828 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 11:25:02,832.832 INFO    ] 2026-06-13 11:25:02
[2026-06-13 11:25:02,835.835 INFO    ] playing audio file
[2026-06-13 11:25:02,855.855 INFO    ] 2026-06-13 11:25:02
[2026-06-13 11:25:02,860.860 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:25:02,865.865 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:25:02,916.916 INFO    ] [publish_status] Message added to stream with ID: 1781330102899-0
[2026-06-13 11:25:02,919.919 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}, {"name": "Farmely Panchmeva 21gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-13T05:55:02.857901Z'} (ID: 1781330102899-0)
[2026-06-13 11:25:03,319.319 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 11:25:03,322.322 INFO    ] 200
[2026-06-13 11:25:03,324.324 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613112331331","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1},{"name":"Farmely Panchmeva 21gm","qty":1},{"name":"Max protein 7 grain Protein Gochujang 30gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:25:03,328.328 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': False, 'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}}}}
[2026-06-13 11:25:03,331.331 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:06,362.362 INFO    ] 200
[2026-06-13 11:25:06,363.363 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:06,365.365 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:09,434.434 INFO    ] 200
[2026-06-13 11:25:09,437.437 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:09,441.441 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:12,477.477 INFO    ] 200
[2026-06-13 11:25:12,478.478 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:12,480.480 INFO    ] Please close door 1
[2026-06-13 11:25:12,481.481 INFO    ] Please close door 1
[2026-06-13 11:25:12,483.483 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 11:25:12,484.484 INFO    ] 2026-06-13 11:25:12
[2026-06-13 11:25:12,485.485 INFO    ] playing audio file
[2026-06-13 11:25:12,496.496 INFO    ] 2026-06-13 11:25:12
[2026-06-13 11:25:12,498.498 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:25:12,500.500 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:25:12,576.576 INFO    ] [publish_status] Message added to stream with ID: 1781330112563-0
[2026-06-13 11:25:12,578.578 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}, {"name": "Farmely Panchmeva 21gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-13T05:55:12.497175Z'} (ID: 1781330112563-0)
[2026-06-13 11:25:12,897.897 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 11:25:12,899.899 INFO    ] 200
[2026-06-13 11:25:12,900.900 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613112331331","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1},{"name":"Farmely Panchmeva 21gm","qty":1},{"name":"Max protein 7 grain Protein Gochujang 30gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:25:12,902.902 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': False, 'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}}}}
[2026-06-13 11:25:12,904.904 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:16,037.037 INFO    ] 200
[2026-06-13 11:25:16,039.039 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:16,043.043 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:19,121.121 INFO    ] 200
[2026-06-13 11:25:19,124.124 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:19,127.127 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:22,165.165 INFO    ] 200
[2026-06-13 11:25:22,166.166 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:22,168.168 INFO    ] Please close door 1
[2026-06-13 11:25:22,170.170 INFO    ] Please close door 1
[2026-06-13 11:25:22,171.171 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 11:25:22,173.173 INFO    ] 2026-06-13 11:25:22
[2026-06-13 11:25:22,174.174 INFO    ] playing audio file
[2026-06-13 11:25:22,184.184 INFO    ] 2026-06-13 11:25:22
[2026-06-13 11:25:22,187.187 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:25:22,189.189 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:25:22,267.267 INFO    ] [publish_status] Message added to stream with ID: 1781330122253-0
[2026-06-13 11:25:22,269.269 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern kitchens Banana Chips 21gm", "qty": 1}, {"name": "Modern kitchens Roasted Channa 32g", "qty": 1}, {"name": "Farmely Panchmeva 21gm", "qty": 1}, {"name": "Max protein 7 grain Protein Gochujang 30gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-13T05:55:22.185783Z'} (ID: 1781330122253-0)
[2026-06-13 11:25:22,585.585 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 11:25:22,587.587 INFO    ] 200
[2026-06-13 11:25:22,588.588 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613112331331","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern kitchens Banana Chips 21gm","qty":1},{"name":"Modern kitchens Roasted Channa 32g","qty":1},{"name":"Farmely Panchmeva 21gm","qty":1},{"name":"Max protein 7 grain Protein Gochujang 30gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:25:22,590.590 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': False, 'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}}}}
[2026-06-13 11:25:22,592.592 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:25,682.682 INFO    ] 200
[2026-06-13 11:25:25,684.684 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Max protein 7 grain Protein Gochujang 30gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:25,688.688 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'delay': 1000, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 1 is closed now'}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}, {'name': 'Modern kitchens Roasted Channa 32g', 'qty': 1}, {'name': 'Farmely Panchmeva 21gm', 'qty': 1}, {'name': 'Max protein 7 grain Protein Gochujang 30gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Close'}}
[2026-06-13 11:25:28,723.723 INFO    ] 200
[2026-06-13 11:25:28,725.725 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:28,727.727 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:31,800.800 INFO    ] 200
[2026-06-13 11:25:31,803.803 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:31,807.807 INFO    ] Please close door 2
[2026-06-13 11:25:31,810.810 INFO    ] Please close door 2
[2026-06-13 11:25:31,813.813 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 11:25:31,817.817 INFO    ] 2026-06-13 11:25:31
[2026-06-13 11:25:31,820.820 INFO    ] playing audio file
[2026-06-13 11:25:31,840.840 INFO    ] 2026-06-13 11:25:31
[2026-06-13 11:25:31,844.844 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:25:31,847.847 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:25:31,925.925 INFO    ] [publish_status] Message added to stream with ID: 1781330131910-0
[2026-06-13 11:25:31,928.928 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': '{"error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-13T05:55:31.842036Z'} (ID: 1781330131910-0)
[2026-06-13 11:25:32,337.337 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-13 11:25:32,340.340 INFO    ] 200
[2026-06-13 11:25:32,343.343 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202203260613112331331","server_response":{"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"status":"false","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2"},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"name":"Farmely Classic date Bites 20gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:25:32,347.347 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613112331331', 'server_response': {'rstatus': False, 'status': 'false', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}}}}
[2026-06-13 11:25:32,352.352 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:35,386.386 INFO    ] 200
[2026-06-13 11:25:35,387.387 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 11:25:35,389.389 INFO    ] {'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'status': 'False', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 11:25:38,425.425 INFO    ] 200
[2026-06-13 11:25:38,427.427 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 11:25:38,429.429 INFO    ] {'delay': 100, 'rstatus': True, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 11:25:38,431.431 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,434.434 INFO    ] Order Completed 
[2026-06-13 11:25:38,435.435 INFO    ] Order Completed 
[2026-06-13 11:25:38,437.437 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 11:25:38,438.438 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,440.440 INFO    ] playing audio file
[2026-06-13 11:25:38,458.458 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,460.460 INFO    ] {'delay': 100, 'rstatus': True, 'status': 'True', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-13 11:25:38,462.462 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,865.865 INFO    ] 200
[2026-06-13 11:25:38,866.866 INFO    ] {"res": "True", "orderId": "TM08202203260613112331331", "skus": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "", "tray_id": "15", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "", "tray_id": "16", "name": "Modern kitchens Banana Chips 21gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "", "tray_id": "19", "name": "Modern kitchens Banana Chips 21gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "skuid": "4500668", "door_id": "", "tray_id": "21", "name": "Farmely Panchmeva 21gm per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "skuid": "4500671", "door_id": "", "tray_id": "25", "name": "Max Protein Cheese jalapeno  32gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "", "tray_id": "37", "name": "Farmely Classic date Bites 20gm per peice", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 120.0}
[2026-06-13 11:25:38,869.869 INFO    ] {'orderId': 'TM08202203260613112331331', 'total_amount': 120.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '', 'skuid': '4500647', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '15', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '16', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '19', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '', 'skuid': '4500668', 'sku_total': 30.0, 'unit_price': '30', 'tray_id': '21', 'name': 'Farmely Panchmeva 21gm per peice', 'mrp': '30', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'door_id': '', 'skuid': '4500671', 'sku_total': 20.0, 'unit_price': '20', 'tray_id': '25', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'mrp': '20', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'skuid': '4500667', 'sku_total': 40.0, 'unit_price': '40', 'tray_id': '37', 'name': 'Farmely Classic date Bites 20gm per peice', 'mrp': '40', 'qty': 1}]}
[2026-06-13 11:25:38,871.871 INFO    ] {'orderId': 'TM08202203260613112331331', 'total_amount': 120.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '', 'skuid': '4500647', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '15', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '16', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '19', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '', 'skuid': '4500668', 'sku_total': 30.0, 'unit_price': '30', 'tray_id': '21', 'name': 'Farmely Panchmeva 21gm per peice', 'mrp': '30', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'door_id': '', 'skuid': '4500671', 'sku_total': 20.0, 'unit_price': '20', 'tray_id': '25', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'mrp': '20', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'skuid': '4500667', 'sku_total': 40.0, 'unit_price': '40', 'tray_id': '37', 'name': 'Farmely Classic date Bites 20gm per peice', 'mrp': '40', 'qty': 1}]}
[2026-06-13 11:25:38,872.872 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,874.874 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,875.875 INFO    ] 110
[2026-06-13 11:25:38,876.876 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,879.879 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,880.880 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 120
[2026-06-13 11:25:38,881.881 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 120
[2026-06-13 11:25:38,883.883 INFO    ] ebd525d191760a27e25bfa88057876cc
[2026-06-13 11:25:38,885.885 INFO    ] 2026-06-13 11:25:38
[2026-06-13 11:25:38,886.886 INFO    ] creating audio file
[2026-06-13 11:25:38,888.888 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 11:25:39,804.804 INFO    ] gTTS API call completed successfully
[2026-06-13 11:25:41,097.097 INFO    ] 2026-06-13 11:25:41
[2026-06-13 11:25:41,101.101 INFO    ] playing audio file
[2026-06-13 11:25:41,121.121 INFO    ] 2026-06-13 11:25:41
[2026-06-13 11:25:41,124.124 INFO    ] 2026-06-13 11:25:41
[2026-06-13 11:25:41,128.128 INFO    ] publish_status: order_id=TM08202203260613112331331
[2026-06-13 11:25:41,132.132 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613112331331
[2026-06-13 11:25:41,221.221 INFO    ] [publish_status] Message added to stream with ID: 1781330141205-0
[2026-06-13 11:25:41,225.225 INFO    ] Published to order:TM08202203260613112331331: {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613112331331', 'server_response': '{"orderId": "TM08202203260613112331331", "total_amount": 120.0, "logic": "WBL", "anomaly": 0, "rstatus": true, "res": "True", "skus": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "door_id": "", "skuid": "4500647", "sku_total": 10.0, "unit_price": "10", "tray_id": "15", "name": "Modern kitchens Roasted Channa 32g per peice", "mrp": "10", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "door_id": "", "skuid": "4500648", "sku_total": 10.0, "unit_price": "10", "tray_id": "16", "name": "Modern kitchens Banana Chips 21gm per peice", "mrp": "10", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "door_id": "", "skuid": "4500648", "sku_total": 10.0, "unit_price": "10", "tray_id": "19", "name": "Modern kitchens Banana Chips 21gm per peice", "mrp": "10", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "door_id": "", "skuid": "4500668", "sku_total": 30.0, "unit_price": "30", "tray_id": "21", "name": "Farmely Panchmeva 21gm per peice", "mrp": "30", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "door_id": "", "skuid": "4500671", "sku_total": 20.0, "unit_price": "20", "tray_id": "25", "name": "Max Protein Cheese jalapeno  32gm per peice", "mrp": "20", "qty": 1}, {"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "", "skuid": "4500667", "sku_total": 40.0, "unit_price": "40", "tray_id": "37", "name": "Farmely Classic date Bites 20gm per peice", "mrp": "40", "qty": 1}]}', 'timestamp': '2026-06-13T05:55:41.126335Z'} (ID: 1781330141205-0)
[2026-06-13 11:25:41,633.633 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613112331331', 'server_response': {'orderId': 'TM08202203260613112331331', 'total_amount': 120.0, 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '', 'skuid': '4500647', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '15', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '16', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'sku_total': 10.0, 'unit_price': '10', 'tray_id': '19', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'mrp': '10', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '', 'skuid': '4500668', 'sku_total': 30.0, 'unit_price': '30', 'tray_id': '21', 'name': 'Farmely Panchmeva 21gm per peice', 'mrp': '30', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'door_id': '', 'skuid': '4500671', 'sku_total': 20.0, 'unit_price': '20', 'tray_id': '25', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'mrp': '20', 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'skuid': '4500667', 'sku_total': 40.0, 'unit_price': '40', 'tray_id': '37', 'name': 'Farmely Classic date Bites 20gm per peice', 'mrp': '40', 'qty': 1}]}}
[2026-06-13 11:25:41,636.636 INFO    ] 200
[2026-06-13 11:25:41,638.638 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202203260613112331331","server_response":{"orderId":"TM08202203260613112331331","total_amount":120,"logic":"WBL","anomaly":0,"rstatus":true,"res":"true","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","door_id":"","skuid":"4500647","sku_total":10,"unit_price":"10","tray_id":"15","name":"Modern kitchens Roasted Channa 32g per peice","mrp":"10","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","door_id":"","skuid":"4500648","sku_total":10,"unit_price":"10","tray_id":"16","name":"Modern kitchens Banana Chips 21gm per peice","mrp":"10","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","door_id":"","skuid":"4500648","sku_total":10,"unit_price":"10","tray_id":"19","name":"Modern kitchens Banana Chips 21gm per peice","mrp":"10","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","door_id":"","skuid":"4500668","sku_total":30,"unit_price":"30","tray_id":"21","name":"Farmely Panchmeva 21gm per peice","mrp":"30","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg","door_id":"","skuid":"4500671","sku_total":20,"unit_price":"20","tray_id":"25","name":"Max Protein Cheese jalapeno  32gm per peice","mrp":"20","qty":1},{"image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","door_id":"","skuid":"4500667","sku_total":40,"unit_price":"40","tray_id":"37","name":"Farmely Classic date Bites 20gm per peice","mrp":"40","qty":1}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 11:25:41,642.642 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613112331331', 'server_response': {'orderId': 'TM08202203260613112331331', 'total_amount': 120, 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '', 'skuid': '4500647', 'mrp': '10', 'unit_price': '10', 'tray_id': '15', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'unit_price': '10', 'tray_id': '16', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'unit_price': '10', 'tray_id': '19', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '', 'skuid': '4500668', 'mrp': '30', 'unit_price': '30', 'tray_id': '21', 'name': 'Farmely Panchmeva 21gm per peice', 'sku_total': 30, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'door_id': '', 'skuid': '4500671', 'mrp': '20', 'unit_price': '20', 'tray_id': '25', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'sku_total': 20, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'skuid': '4500667', 'mrp': '40', 'unit_price': '40', 'tray_id': '37', 'name': 'Farmely Classic date Bites 20gm per peice', 'sku_total': 40, 'qty': 1}]}}}
[2026-06-13 11:25:41,645.645 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613112331331', 'server_response': {'orderId': 'TM08202203260613112331331', 'total_amount': 120, 'logic': 'WBL', 'res': 'true', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'door_id': '', 'skuid': '4500647', 'mrp': '10', 'unit_price': '10', 'tray_id': '15', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'unit_price': '10', 'tray_id': '16', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': '', 'skuid': '4500648', 'mrp': '10', 'unit_price': '10', 'tray_id': '19', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 10, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'door_id': '', 'skuid': '4500668', 'mrp': '30', 'unit_price': '30', 'tray_id': '21', 'name': 'Farmely Panchmeva 21gm per peice', 'sku_total': 30, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'door_id': '', 'skuid': '4500671', 'mrp': '20', 'unit_price': '20', 'tray_id': '25', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'sku_total': 20, 'qty': 1}, {'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': '', 'skuid': '4500667', 'mrp': '40', 'unit_price': '40', 'tray_id': '37', 'name': 'Farmely Classic date Bites 20gm per peice', 'sku_total': 40, 'qty': 1}]}}}
[2026-06-13 11:25:41,648.648 INFO    ] 2026-06-13 11:25:41
[2026-06-13 11:25:43,508.508 INFO    ] 200
[2026-06-13 11:25:43,510.510 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 11:25:43,511.511 INFO    ] 2026-06-13 11:25:43
[2026-06-13 11:25:43,606.606 INFO    ] 200
[2026-06-13 11:25:43,608.608 INFO    ] True
[2026-06-13 11:25:43,609.609 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613112331331
[2026-06-13 11:25:43,611.611 INFO    ] start order file deleted
[2026-06-13 11:25:43,613.613 INFO    ] Checking for system updates...
[2026-06-13 11:25:43,632.632 INFO    ] 200
[2026-06-13 11:25:43,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:25:43,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:25:43,666.666 INFO    ] No update needed
[2026-06-13 11:25:43,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 11:25:43,687.687 INFO    ] 200
[2026-06-13 11:25:43,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:25:43,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:25:43,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:25:43,788.788 INFO    ] No camera update needed
[2026-06-13 11:25:43,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:25:43,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:25:43,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:25:43,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:25:45,844.844 INFO    ] ================================================
[2026-06-13 11:25:45,859.859 INFO    ] Launching Daemon at Sat Jun 13 11:25:45 IST 2026
[2026-06-13 11:25:45,870.870 INFO    ] ================================================
[2026-06-13 11:25:46,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:25:46
[2026-06-13 11:25:46,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:25:46,677.677 INFO    ] Initializing speech engine...
[2026-06-13 11:25:46,683.683 INFO    ] 2026-06-13 11:25:46
[2026-06-13 11:25:46,887.887 INFO    ] 2026-06-13 11:25:46
[2026-06-13 11:25:46,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:25:47,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:25:47,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:25:47,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:25:47,284.284 INFO    ] time= 13/06/2026 11:25:47
[2026-06-13 11:25:47,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:25:47,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:25:47,400.400 INFO    ] No existing commands found in stream
[2026-06-13 11:25:52,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:25:52,412.412 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 11:25:54,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:25:54,574.574 INFO    ] Checking for system updates...
[2026-06-13 11:25:54,595.595 INFO    ] 200
[2026-06-13 11:25:54,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:25:54,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:25:54,628.628 INFO    ] No update needed
[2026-06-13 11:25:54,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 11:25:54,650.650 INFO    ] 200
[2026-06-13 11:25:54,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:25:54,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:25:54,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:25:54,717.717 INFO    ] No camera update needed
[2026-06-13 11:25:54,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:25:54,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:25:54,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:25:54,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:25:56,770.770 INFO    ] ================================================
[2026-06-13 11:25:56,785.785 INFO    ] Launching Daemon at Sat Jun 13 11:25:56 IST 2026
[2026-06-13 11:25:56,796.796 INFO    ] ================================================
[2026-06-13 11:25:57,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:25:57
[2026-06-13 11:25:57,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:25:57,599.599 INFO    ] Initializing speech engine...
[2026-06-13 11:25:57,612.612 INFO    ] 2026-06-13 11:25:57
[2026-06-13 11:25:57,831.831 INFO    ] 2026-06-13 11:25:57
[2026-06-13 11:25:57,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:25:57,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:25:58,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:25:58,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:25:58,233.233 INFO    ] time= 13/06/2026 11:25:58
[2026-06-13 11:25:58,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:25:58,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:25:58,425.425 INFO    ] No existing commands found in stream
[2026-06-13 11:26:03,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:26:03,458.458 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 11:26:07,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:26:07,568.568 INFO    ] Checking for system updates...
[2026-06-13 11:26:07,589.589 INFO    ] 200
[2026-06-13 11:26:07,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:07,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:26:07,624.624 INFO    ] No update needed
[2026-06-13 11:26:07,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 11:26:07,645.645 INFO    ] 200
[2026-06-13 11:26:07,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:07,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:26:07,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:26:07,710.710 INFO    ] No camera update needed
[2026-06-13 11:26:07,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:26:07,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:26:07,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:26:07,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:26:09,757.757 INFO    ] ================================================
[2026-06-13 11:26:09,772.772 INFO    ] Launching Daemon at Sat Jun 13 11:26:09 IST 2026
[2026-06-13 11:26:09,783.783 INFO    ] ================================================
[2026-06-13 11:26:10,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:26:10
[2026-06-13 11:26:10,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:26:11,145.145 INFO    ] Initializing speech engine...
[2026-06-13 11:26:11,154.154 INFO    ] 2026-06-13 11:26:11
[2026-06-13 11:26:11,414.414 INFO    ] 2026-06-13 11:26:11
[2026-06-13 11:26:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:26:11,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:26:11,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:26:11,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:26:11,849.849 INFO    ] time= 13/06/2026 11:26:11
[2026-06-13 11:26:11,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:26:11,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:26:12,100.100 INFO    ] No existing commands found in stream
[2026-06-13 11:26:17,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:26:17,127.127 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 11:26:20,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:26:20,089.089 INFO    ] Checking for system updates...
[2026-06-13 11:26:20,110.110 INFO    ] 200
[2026-06-13 11:26:20,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:20,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:20,145.145 INFO    ] No update needed
[2026-06-13 11:26:20,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 11:26:20,170.170 INFO    ] 200
[2026-06-13 11:26:20,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:20,197.197 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:26:20,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:20,238.238 INFO    ] No camera update needed
[2026-06-13 11:26:20,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:26:20,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:26:20,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:26:20,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:26:22,288.288 INFO    ] ================================================
[2026-06-13 11:26:22,303.303 INFO    ] Launching Daemon at Sat Jun 13 11:26:22 IST 2026
[2026-06-13 11:26:22,314.314 INFO    ] ================================================
[2026-06-13 11:26:22,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:26:22
[2026-06-13 11:26:22,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:26:23,092.092 INFO    ] Initializing speech engine...
[2026-06-13 11:26:23,102.102 INFO    ] 2026-06-13 11:26:23
[2026-06-13 11:26:23,319.319 INFO    ] 2026-06-13 11:26:23
[2026-06-13 11:26:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:26:23,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:26:23,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:26:23,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:26:23,744.744 INFO    ] time= 13/06/2026 11:26:23
[2026-06-13 11:26:23,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:26:23,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:26:23,875.875 INFO    ] No existing commands found in stream
[2026-06-13 11:26:28,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:26:28,888.888 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 11:26:32,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:26:32,487.487 INFO    ] Checking for system updates...
[2026-06-13 11:26:32,532.532 INFO    ] 200
[2026-06-13 11:26:32,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:32,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:32,613.613 INFO    ] No update needed
[2026-06-13 11:26:32,615.615 INFO    ] Checking for camera pi updates...
[2026-06-13 11:26:32,654.654 INFO    ] 200
[2026-06-13 11:26:32,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:32,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:26:32,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:32,833.833 INFO    ] No camera update needed
[2026-06-13 11:26:32,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:26:32,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:26:32,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:26:32,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:26:34,896.896 INFO    ] ================================================
[2026-06-13 11:26:34,912.912 INFO    ] Launching Daemon at Sat Jun 13 11:26:34 IST 2026
[2026-06-13 11:26:34,923.923 INFO    ] ================================================
[2026-06-13 11:26:35,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:26:35
[2026-06-13 11:26:35,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:26:35,885.885 INFO    ] Initializing speech engine...
[2026-06-13 11:26:35,898.898 INFO    ] 2026-06-13 11:26:35
[2026-06-13 11:26:36,117.117 INFO    ] 2026-06-13 11:26:36
[2026-06-13 11:26:36,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:26:36,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:26:36,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:26:36,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:26:36,492.492 INFO    ] time= 13/06/2026 11:26:36
[2026-06-13 11:26:36,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:26:36,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:26:36,671.671 INFO    ] No existing commands found in stream
[2026-06-13 11:26:41,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:26:41,685.685 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 11:26:44,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:26:44,229.229 INFO    ] Checking for system updates...
[2026-06-13 11:26:44,251.251 INFO    ] 200
[2026-06-13 11:26:44,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:44,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:44,285.285 INFO    ] No update needed
[2026-06-13 11:26:44,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 11:26:44,307.307 INFO    ] 200
[2026-06-13 11:26:44,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:44,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:26:44,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:44,372.372 INFO    ] No camera update needed
[2026-06-13 11:26:44,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:26:44,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:26:44,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:26:44,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:26:46,420.420 INFO    ] ================================================
[2026-06-13 11:26:46,435.435 INFO    ] Launching Daemon at Sat Jun 13 11:26:46 IST 2026
[2026-06-13 11:26:46,446.446 INFO    ] ================================================
[2026-06-13 11:26:46,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:26:46
[2026-06-13 11:26:47,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:26:47,218.218 INFO    ] Initializing speech engine...
[2026-06-13 11:26:47,222.222 INFO    ] 2026-06-13 11:26:47
[2026-06-13 11:26:47,450.450 INFO    ] 2026-06-13 11:26:47
[2026-06-13 11:26:47,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:26:47,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:26:47,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:26:47,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:26:47,868.868 INFO    ] time= 13/06/2026 11:26:47
[2026-06-13 11:26:47,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:26:47,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:26:48,004.004 INFO    ] No existing commands found in stream
[2026-06-13 11:26:53,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:26:53,017.017 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 11:26:55,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:26:55,748.748 INFO    ] Checking for system updates...
[2026-06-13 11:26:55,769.769 INFO    ] 200
[2026-06-13 11:26:55,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:55,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:55,802.802 INFO    ] No update needed
[2026-06-13 11:26:55,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 11:26:55,823.823 INFO    ] 200
[2026-06-13 11:26:55,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:26:55,849.849 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:26:55,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:26:55,891.891 INFO    ] No camera update needed
[2026-06-13 11:26:55,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:26:55,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:26:55,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:26:55,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:26:57,939.939 INFO    ] ================================================
[2026-06-13 11:26:57,954.954 INFO    ] Launching Daemon at Sat Jun 13 11:26:57 IST 2026
[2026-06-13 11:26:57,965.965 INFO    ] ================================================
[2026-06-13 11:26:58,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:26:58
[2026-06-13 11:26:58,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:26:58,751.751 INFO    ] Initializing speech engine...
[2026-06-13 11:26:58,760.760 INFO    ] 2026-06-13 11:26:58
[2026-06-13 11:26:58,974.974 INFO    ] 2026-06-13 11:26:58
[2026-06-13 11:26:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:26:59,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:26:59,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:26:59,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:26:59,378.378 INFO    ] time= 13/06/2026 11:26:59
[2026-06-13 11:26:59,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:26:59,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:26:59,494.494 INFO    ] No existing commands found in stream
[2026-06-13 11:27:04,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:27:04,507.507 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 11:27:08,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:27:08,622.622 INFO    ] Checking for system updates...
[2026-06-13 11:27:08,642.642 INFO    ] 200
[2026-06-13 11:27:08,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:08,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:08,675.675 INFO    ] No update needed
[2026-06-13 11:27:08,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 11:27:08,696.696 INFO    ] 200
[2026-06-13 11:27:08,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:08,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:27:08,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:08,773.773 INFO    ] No camera update needed
[2026-06-13 11:27:08,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:27:08,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:27:08,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:27:08,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:27:10,825.825 INFO    ] ================================================
[2026-06-13 11:27:10,840.840 INFO    ] Launching Daemon at Sat Jun 13 11:27:10 IST 2026
[2026-06-13 11:27:10,851.851 INFO    ] ================================================
[2026-06-13 11:27:11,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:27:11
[2026-06-13 11:27:11,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:27:11,670.670 INFO    ] Initializing speech engine...
[2026-06-13 11:27:11,676.676 INFO    ] 2026-06-13 11:27:11
[2026-06-13 11:27:11,882.882 INFO    ] 2026-06-13 11:27:11
[2026-06-13 11:27:11,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:27:12,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:27:12,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:27:12,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:27:12,298.298 INFO    ] time= 13/06/2026 11:27:12
[2026-06-13 11:27:12,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:27:12,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:27:12,395.395 INFO    ] No existing commands found in stream
[2026-06-13 11:27:17,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:27:17,407.407 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 11:27:17,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:27:17,899.899 INFO    ] Checking for system updates...
[2026-06-13 11:27:17,920.920 INFO    ] 200
[2026-06-13 11:27:17,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:17,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:17,957.957 INFO    ] No update needed
[2026-06-13 11:27:17,959.959 INFO    ] Checking for camera pi updates...
[2026-06-13 11:27:17,979.979 INFO    ] 200
[2026-06-13 11:27:17,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:18,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:27:18,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:18,046.046 INFO    ] No camera update needed
[2026-06-13 11:27:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:27:18,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:27:18,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:27:18,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:27:20,093.093 INFO    ] ================================================
[2026-06-13 11:27:20,108.108 INFO    ] Launching Daemon at Sat Jun 13 11:27:20 IST 2026
[2026-06-13 11:27:20,119.119 INFO    ] ================================================
[2026-06-13 11:27:20,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:27:20
[2026-06-13 11:27:20,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:27:20,909.909 INFO    ] Initializing speech engine...
[2026-06-13 11:27:20,913.913 INFO    ] 2026-06-13 11:27:20
[2026-06-13 11:27:21,115.115 INFO    ] 2026-06-13 11:27:21
[2026-06-13 11:27:21,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:27:21,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:27:21,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:27:21,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:27:21,508.508 INFO    ] time= 13/06/2026 11:27:21
[2026-06-13 11:27:21,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:27:21,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:27:21,629.629 INFO    ] No existing commands found in stream
[2026-06-13 11:27:26,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:27:26,641.641 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 11:27:29,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:27:29,197.197 INFO    ] Checking for system updates...
[2026-06-13 11:27:29,218.218 INFO    ] 200
[2026-06-13 11:27:29,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:29,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:29,251.251 INFO    ] No update needed
[2026-06-13 11:27:29,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 11:27:29,273.273 INFO    ] 200
[2026-06-13 11:27:29,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:29,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:27:29,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:29,341.341 INFO    ] No camera update needed
[2026-06-13 11:27:29,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:27:29,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:27:29,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:27:29,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:27:31,388.388 INFO    ] ================================================
[2026-06-13 11:27:31,404.404 INFO    ] Launching Daemon at Sat Jun 13 11:27:31 IST 2026
[2026-06-13 11:27:31,414.414 INFO    ] ================================================
[2026-06-13 11:27:31,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:27:31
[2026-06-13 11:27:32,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:27:32,272.272 INFO    ] Initializing speech engine...
[2026-06-13 11:27:32,278.278 INFO    ] 2026-06-13 11:27:32
[2026-06-13 11:27:32,496.496 INFO    ] 2026-06-13 11:27:32
[2026-06-13 11:27:32,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:27:32,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:27:32,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:27:32,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:27:32,806.806 INFO    ] time= 13/06/2026 11:27:32
[2026-06-13 11:27:32,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:27:32,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:27:32,921.921 INFO    ] No existing commands found in stream
[2026-06-13 11:27:37,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:27:37,946.946 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 11:27:41,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:27:41,966.966 INFO    ] Checking for system updates...
[2026-06-13 11:27:41,987.987 INFO    ] 200
[2026-06-13 11:27:41,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:42,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:27:42,020.020 INFO    ] No update needed
[2026-06-13 11:27:42,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 11:27:42,041.041 INFO    ] 200
[2026-06-13 11:27:42,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:42,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:27:42,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:27:42,104.104 INFO    ] No camera update needed
[2026-06-13 11:27:42,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:27:42,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:27:42,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:27:42,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:27:44,151.151 INFO    ] ================================================
[2026-06-13 11:27:44,166.166 INFO    ] Launching Daemon at Sat Jun 13 11:27:44 IST 2026
[2026-06-13 11:27:44,176.176 INFO    ] ================================================
[2026-06-13 11:27:44,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:27:44
[2026-06-13 11:27:44,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:27:44,995.995 INFO    ] Initializing speech engine...
[2026-06-13 11:27:45,001.001 INFO    ] 2026-06-13 11:27:44
[2026-06-13 11:27:45,203.203 INFO    ] 2026-06-13 11:27:45
[2026-06-13 11:27:45,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:27:45,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:27:45,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:27:45,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:27:45,607.607 INFO    ] time= 13/06/2026 11:27:45
[2026-06-13 11:27:45,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:27:45,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:27:45,777.777 INFO    ] No existing commands found in stream
[2026-06-13 11:27:50,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:27:50,798.798 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 11:27:53,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:27:53,012.012 INFO    ] Checking for system updates...
[2026-06-13 11:27:53,032.032 INFO    ] 200
[2026-06-13 11:27:53,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:53,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:53,065.065 INFO    ] No update needed
[2026-06-13 11:27:53,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 11:27:53,087.087 INFO    ] 200
[2026-06-13 11:27:53,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:27:53,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:27:53,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:27:53,150.150 INFO    ] No camera update needed
[2026-06-13 11:27:53,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:27:53,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:27:53,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:27:53,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:27:55,197.197 INFO    ] ================================================
[2026-06-13 11:27:55,213.213 INFO    ] Launching Daemon at Sat Jun 13 11:27:55 IST 2026
[2026-06-13 11:27:55,225.225 INFO    ] ================================================
[2026-06-13 11:27:55,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:27:55
[2026-06-13 11:27:55,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:27:56,029.029 INFO    ] Initializing speech engine...
[2026-06-13 11:27:56,039.039 INFO    ] 2026-06-13 11:27:56
[2026-06-13 11:27:56,245.245 INFO    ] 2026-06-13 11:27:56
[2026-06-13 11:27:56,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:27:56,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:27:56,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:27:56,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:27:56,620.620 INFO    ] time= 13/06/2026 11:27:56
[2026-06-13 11:27:56,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:27:56,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:27:56,875.875 INFO    ] No existing commands found in stream
[2026-06-13 11:28:01,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:01,903.903 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 11:28:03,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:28:03,190.190 INFO    ] Checking for system updates...
[2026-06-13 11:28:03,226.226 INFO    ] 200
[2026-06-13 11:28:03,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:03,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:03,292.292 INFO    ] No update needed
[2026-06-13 11:28:03,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:03,331.331 INFO    ] 200
[2026-06-13 11:28:03,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:03,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:03,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:03,420.420 INFO    ] No camera update needed
[2026-06-13 11:28:03,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:03,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:03,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:03,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:05,476.476 INFO    ] ================================================
[2026-06-13 11:28:05,491.491 INFO    ] Launching Daemon at Sat Jun 13 11:28:05 IST 2026
[2026-06-13 11:28:05,502.502 INFO    ] ================================================
[2026-06-13 11:28:05,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:05
[2026-06-13 11:28:06,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:06,303.303 INFO    ] Initializing speech engine...
[2026-06-13 11:28:06,313.313 INFO    ] 2026-06-13 11:28:06
[2026-06-13 11:28:06,527.527 INFO    ] 2026-06-13 11:28:06
[2026-06-13 11:28:06,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:28:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:28:06,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:28:06,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:28:06,953.953 INFO    ] time= 13/06/2026 11:28:06
[2026-06-13 11:28:06,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:28:07,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:28:07,077.077 INFO    ] No existing commands found in stream
[2026-06-13 11:28:12,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:12,091.091 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 11:28:15,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:28:15,135.135 INFO    ] Checking for system updates...
[2026-06-13 11:28:15,158.158 INFO    ] 200
[2026-06-13 11:28:15,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:15,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:28:15,191.191 INFO    ] No update needed
[2026-06-13 11:28:15,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:15,213.213 INFO    ] 200
[2026-06-13 11:28:15,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:15,240.240 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:15,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:28:15,265.265 INFO    ] No camera update needed
[2026-06-13 11:28:15,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:15,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:15,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:15,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:17,312.312 INFO    ] ================================================
[2026-06-13 11:28:17,327.327 INFO    ] Launching Daemon at Sat Jun 13 11:28:17 IST 2026
[2026-06-13 11:28:17,338.338 INFO    ] ================================================
[2026-06-13 11:28:17,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:17
[2026-06-13 11:28:18,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:18,172.172 INFO    ] Initializing speech engine...
[2026-06-13 11:28:18,177.177 INFO    ] 2026-06-13 11:28:18
[2026-06-13 11:28:18,387.387 INFO    ] 2026-06-13 11:28:18
[2026-06-13 11:28:18,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:28:18,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:28:18,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:28:18,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:28:18,805.805 INFO    ] time= 13/06/2026 11:28:18
[2026-06-13 11:28:18,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:28:18,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:28:18,915.915 INFO    ] No existing commands found in stream
[2026-06-13 11:28:23,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:23,927.927 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 11:28:25,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:28:25,674.674 INFO    ] Checking for system updates...
[2026-06-13 11:28:25,696.696 INFO    ] 200
[2026-06-13 11:28:25,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:25,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:25,732.732 INFO    ] No update needed
[2026-06-13 11:28:25,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:25,754.754 INFO    ] 200
[2026-06-13 11:28:25,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:25,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:25,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:25,828.828 INFO    ] No camera update needed
[2026-06-13 11:28:25,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:25,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:25,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:25,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:27,875.875 INFO    ] ================================================
[2026-06-13 11:28:27,890.890 INFO    ] Launching Daemon at Sat Jun 13 11:28:27 IST 2026
[2026-06-13 11:28:27,901.901 INFO    ] ================================================
[2026-06-13 11:28:28,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:28
[2026-06-13 11:28:28,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:28,744.744 INFO    ] Initializing speech engine...
[2026-06-13 11:28:28,749.749 INFO    ] 2026-06-13 11:28:28
[2026-06-13 11:28:28,955.955 INFO    ] 2026-06-13 11:28:28
[2026-06-13 11:28:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:28:29,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:28:29,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:28:29,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:28:29,366.366 INFO    ] time= 13/06/2026 11:28:29
[2026-06-13 11:28:29,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:28:29,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:28:29,471.471 INFO    ] No existing commands found in stream
[2026-06-13 11:28:34,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:34,483.483 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 11:28:35,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:28:35,023.023 INFO    ] Checking for system updates...
[2026-06-13 11:28:35,045.045 INFO    ] 200
[2026-06-13 11:28:35,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:35,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:35,082.082 INFO    ] No update needed
[2026-06-13 11:28:35,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:35,106.106 INFO    ] 200
[2026-06-13 11:28:35,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:35,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:35,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:35,270.270 INFO    ] No camera update needed
[2026-06-13 11:28:35,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:35,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:35,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:35,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:37,319.319 INFO    ] ================================================
[2026-06-13 11:28:37,335.335 INFO    ] Launching Daemon at Sat Jun 13 11:28:37 IST 2026
[2026-06-13 11:28:37,345.345 INFO    ] ================================================
[2026-06-13 11:28:37,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:37
[2026-06-13 11:28:38,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:38,193.193 INFO    ] Initializing speech engine...
[2026-06-13 11:28:38,198.198 INFO    ] 2026-06-13 11:28:38
[2026-06-13 11:28:38,405.405 INFO    ] 2026-06-13 11:28:38
[2026-06-13 11:28:38,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:28:38,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:28:38,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:28:38,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:28:38,803.803 INFO    ] time= 13/06/2026 11:28:38
[2026-06-13 11:28:38,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:28:38,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:28:38,923.923 INFO    ] No existing commands found in stream
[2026-06-13 11:28:43,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:43,941.941 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 11:28:45,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:28:45,910.910 INFO    ] Checking for system updates...
[2026-06-13 11:28:45,931.931 INFO    ] 200
[2026-06-13 11:28:45,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:45,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:28:45,964.964 INFO    ] No update needed
[2026-06-13 11:28:45,965.965 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:45,985.985 INFO    ] 200
[2026-06-13 11:28:45,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:46,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:46,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:28:46,046.046 INFO    ] No camera update needed
[2026-06-13 11:28:46,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:46,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:46,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:46,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:48,095.095 INFO    ] ================================================
[2026-06-13 11:28:48,111.111 INFO    ] Launching Daemon at Sat Jun 13 11:28:48 IST 2026
[2026-06-13 11:28:48,121.121 INFO    ] ================================================
[2026-06-13 11:28:48,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:48
[2026-06-13 11:28:48,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:48,919.919 INFO    ] Initializing speech engine...
[2026-06-13 11:28:48,923.923 INFO    ] 2026-06-13 11:28:48
[2026-06-13 11:28:49,141.141 INFO    ] 2026-06-13 11:28:49
[2026-06-13 11:28:49,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:28:49,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:28:49,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:28:49,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:28:49,552.552 INFO    ] time= 13/06/2026 11:28:49
[2026-06-13 11:28:49,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:28:49,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:28:49,662.662 INFO    ] No existing commands found in stream
[2026-06-13 11:28:54,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:28:54,675.675 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 11:28:56,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:28:56,716.716 INFO    ] Checking for system updates...
[2026-06-13 11:28:56,738.738 INFO    ] 200
[2026-06-13 11:28:56,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:56,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:28:56,771.771 INFO    ] No update needed
[2026-06-13 11:28:56,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 11:28:56,793.793 INFO    ] 200
[2026-06-13 11:28:56,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:28:56,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:28:56,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:28:56,859.859 INFO    ] No camera update needed
[2026-06-13 11:28:56,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:28:56,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:28:56,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:28:56,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:28:58,908.908 INFO    ] ================================================
[2026-06-13 11:28:58,923.923 INFO    ] Launching Daemon at Sat Jun 13 11:28:58 IST 2026
[2026-06-13 11:28:58,934.934 INFO    ] ================================================
[2026-06-13 11:28:59,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:28:59
[2026-06-13 11:28:59,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:28:59,787.787 INFO    ] Initializing speech engine...
[2026-06-13 11:28:59,793.793 INFO    ] 2026-06-13 11:28:59
[2026-06-13 11:29:00,000.000 INFO    ] 2026-06-13 11:28:59
[2026-06-13 11:29:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:00,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:00,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:00,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:00,427.427 INFO    ] time= 13/06/2026 11:29:00
[2026-06-13 11:29:00,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:00,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:00,524.524 INFO    ] No existing commands found in stream
[2026-06-13 11:29:05,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:29:05,539.539 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 11:29:09,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:29:09,172.172 INFO    ] Checking for system updates...
[2026-06-13 11:29:09,194.194 INFO    ] 200
[2026-06-13 11:29:09,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:09,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:29:09,228.228 INFO    ] No update needed
[2026-06-13 11:29:09,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 11:29:09,250.250 INFO    ] 200
[2026-06-13 11:29:09,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:09,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:29:09,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:29:09,319.319 INFO    ] No camera update needed
[2026-06-13 11:29:09,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:29:09,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:29:09,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:29:09,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:29:11,370.370 INFO    ] ================================================
[2026-06-13 11:29:11,385.385 INFO    ] Launching Daemon at Sat Jun 13 11:29:11 IST 2026
[2026-06-13 11:29:11,396.396 INFO    ] ================================================
[2026-06-13 11:29:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:29:11
[2026-06-13 11:29:12,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:29:12,212.212 INFO    ] Initializing speech engine...
[2026-06-13 11:29:12,217.217 INFO    ] 2026-06-13 11:29:12
[2026-06-13 11:29:12,423.423 INFO    ] 2026-06-13 11:29:12
[2026-06-13 11:29:12,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:12,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:12,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:12,834.834 INFO    ] time= 13/06/2026 11:29:12
[2026-06-13 11:29:12,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:12,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:12,947.947 INFO    ] No existing commands found in stream
[2026-06-13 11:29:17,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:29:17,959.959 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 11:29:19,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:29:19,993.993 INFO    ] Checking for system updates...
[2026-06-13 11:29:20,014.014 INFO    ] 200
[2026-06-13 11:29:20,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:20,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:20,047.047 INFO    ] No update needed
[2026-06-13 11:29:20,049.049 INFO    ] Checking for camera pi updates...
[2026-06-13 11:29:20,068.068 INFO    ] 200
[2026-06-13 11:29:20,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:20,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:29:20,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:20,129.129 INFO    ] No camera update needed
[2026-06-13 11:29:20,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:29:20,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:29:20,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:29:20,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:29:22,176.176 INFO    ] ================================================
[2026-06-13 11:29:22,192.192 INFO    ] Launching Daemon at Sat Jun 13 11:29:22 IST 2026
[2026-06-13 11:29:22,203.203 INFO    ] ================================================
[2026-06-13 11:29:22,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:29:22
[2026-06-13 11:29:22,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:29:23,026.026 INFO    ] Initializing speech engine...
[2026-06-13 11:29:23,036.036 INFO    ] 2026-06-13 11:29:23
[2026-06-13 11:29:23,241.241 INFO    ] 2026-06-13 11:29:23
[2026-06-13 11:29:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:23,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:23,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:23,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:23,652.652 INFO    ] time= 13/06/2026 11:29:23
[2026-06-13 11:29:23,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:23,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:23,749.749 INFO    ] No existing commands found in stream
[2026-06-13 11:29:28,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:29:28,763.763 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 11:29:29,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:29:29,984.984 INFO    ] Checking for system updates...
[2026-06-13 11:29:30,005.005 INFO    ] 200
[2026-06-13 11:29:30,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:30,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:30,038.038 INFO    ] No update needed
[2026-06-13 11:29:30,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 11:29:30,059.059 INFO    ] 200
[2026-06-13 11:29:30,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:30,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:29:30,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:30,126.126 INFO    ] No camera update needed
[2026-06-13 11:29:30,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:29:30,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:29:30,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:29:30,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:29:32,177.177 INFO    ] ================================================
[2026-06-13 11:29:32,195.195 INFO    ] Launching Daemon at Sat Jun 13 11:29:32 IST 2026
[2026-06-13 11:29:32,210.210 INFO    ] ================================================
[2026-06-13 11:29:32,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:29:32
[2026-06-13 11:29:33,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:29:33,637.637 INFO    ] Initializing speech engine...
[2026-06-13 11:29:33,657.657 INFO    ] 2026-06-13 11:29:33
[2026-06-13 11:29:33,936.936 INFO    ] 2026-06-13 11:29:33
[2026-06-13 11:29:33,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:34,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:34,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:34,320.320 INFO    ] time= 13/06/2026 11:29:34
[2026-06-13 11:29:34,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:34,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:34,447.447 INFO    ] No existing commands found in stream
[2026-06-13 11:29:39,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:29:39,463.463 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 11:29:41,688.688 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:29:41,689.689 INFO    ] Checking for system updates...
[2026-06-13 11:29:41,713.713 INFO    ] 200
[2026-06-13 11:29:41,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:41,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:29:41,746.746 INFO    ] No update needed
[2026-06-13 11:29:41,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 11:29:41,769.769 INFO    ] 200
[2026-06-13 11:29:41,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:41,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:29:41,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:29:41,841.841 INFO    ] No camera update needed
[2026-06-13 11:29:41,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:29:41,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:29:41,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:29:41,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:29:43,889.889 INFO    ] ================================================
[2026-06-13 11:29:43,905.905 INFO    ] Launching Daemon at Sat Jun 13 11:29:43 IST 2026
[2026-06-13 11:29:43,916.916 INFO    ] ================================================
[2026-06-13 11:29:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:29:44
[2026-06-13 11:29:44,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:29:44,719.719 INFO    ] Initializing speech engine...
[2026-06-13 11:29:44,724.724 INFO    ] 2026-06-13 11:29:44
[2026-06-13 11:29:44,941.941 INFO    ] 2026-06-13 11:29:44
[2026-06-13 11:29:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:45,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:45,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:45,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:45,362.362 INFO    ] time= 13/06/2026 11:29:45
[2026-06-13 11:29:45,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:45,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:45,493.493 INFO    ] No existing commands found in stream
[2026-06-13 11:29:50,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:29:50,507.507 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 11:29:52,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:29:52,865.865 INFO    ] Checking for system updates...
[2026-06-13 11:29:52,887.887 INFO    ] 200
[2026-06-13 11:29:52,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:52,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:52,920.920 INFO    ] No update needed
[2026-06-13 11:29:52,922.922 INFO    ] Checking for camera pi updates...
[2026-06-13 11:29:52,942.942 INFO    ] 200
[2026-06-13 11:29:52,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:29:52,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:29:53,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:29:53,005.005 INFO    ] No camera update needed
[2026-06-13 11:29:53,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:29:53,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:29:53,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:29:53,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:29:55,055.055 INFO    ] ================================================
[2026-06-13 11:29:55,070.070 INFO    ] Launching Daemon at Sat Jun 13 11:29:55 IST 2026
[2026-06-13 11:29:55,082.082 INFO    ] ================================================
[2026-06-13 11:29:55,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:29:55
[2026-06-13 11:29:55,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:29:55,874.874 INFO    ] Initializing speech engine...
[2026-06-13 11:29:55,884.884 INFO    ] 2026-06-13 11:29:55
[2026-06-13 11:29:56,099.099 INFO    ] 2026-06-13 11:29:56
[2026-06-13 11:29:56,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:29:56,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:29:56,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:29:56,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:29:56,524.524 INFO    ] time= 13/06/2026 11:29:56
[2026-06-13 11:29:56,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:29:56,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:29:56,655.655 INFO    ] No existing commands found in stream
[2026-06-13 11:30:01,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:01,669.669 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 11:30:02,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:30:02,498.498 INFO    ] Checking for system updates...
[2026-06-13 11:30:02,527.527 INFO    ] 200
[2026-06-13 11:30:02,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:02,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:02,587.587 INFO    ] No update needed
[2026-06-13 11:30:02,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:02,643.643 INFO    ] 200
[2026-06-13 11:30:02,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:02,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:02,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:02,722.722 INFO    ] No camera update needed
[2026-06-13 11:30:02,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:02,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:02,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:02,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:30:04,774.774 INFO    ] ================================================
[2026-06-13 11:30:04,790.790 INFO    ] Launching Daemon at Sat Jun 13 11:30:04 IST 2026
[2026-06-13 11:30:04,801.801 INFO    ] ================================================
[2026-06-13 11:30:05,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:30:05
[2026-06-13 11:30:05,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:30:05,904.904 INFO    ] Initializing speech engine...
[2026-06-13 11:30:05,922.922 INFO    ] 2026-06-13 11:30:05
[2026-06-13 11:30:06,185.185 INFO    ] 2026-06-13 11:30:06
[2026-06-13 11:30:06,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:30:06,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:30:06,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:30:06,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:30:06,543.543 INFO    ] time= 13/06/2026 11:30:06
[2026-06-13 11:30:06,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:30:06,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:30:06,641.641 INFO    ] No existing commands found in stream
[2026-06-13 11:30:11,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:11,659.659 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 11:30:14,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:30:14,134.134 INFO    ] Checking for system updates...
[2026-06-13 11:30:14,155.155 INFO    ] 200
[2026-06-13 11:30:14,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:14,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:30:14,191.191 INFO    ] No update needed
[2026-06-13 11:30:14,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:14,216.216 INFO    ] 200
[2026-06-13 11:30:14,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:14,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:14,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:30:14,290.290 INFO    ] No camera update needed
[2026-06-13 11:30:14,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:14,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:14,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:14,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:30:16,340.340 INFO    ] ================================================
[2026-06-13 11:30:16,356.356 INFO    ] Launching Daemon at Sat Jun 13 11:30:16 IST 2026
[2026-06-13 11:30:16,367.367 INFO    ] ================================================
[2026-06-13 11:30:16,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:30:16
[2026-06-13 11:30:17,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:30:17,209.209 INFO    ] Initializing speech engine...
[2026-06-13 11:30:17,217.217 INFO    ] 2026-06-13 11:30:17
[2026-06-13 11:30:17,423.423 INFO    ] 2026-06-13 11:30:17
[2026-06-13 11:30:17,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:30:17,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:30:17,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:30:17,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:30:17,833.833 INFO    ] time= 13/06/2026 11:30:17
[2026-06-13 11:30:17,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:30:17,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:30:17,939.939 INFO    ] No existing commands found in stream
[2026-06-13 11:30:22,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:22,953.953 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 11:30:26,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:30:26,739.739 INFO    ] Checking for system updates...
[2026-06-13 11:30:26,761.761 INFO    ] 200
[2026-06-13 11:30:26,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:26,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:26,794.794 INFO    ] No update needed
[2026-06-13 11:30:26,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:26,819.819 INFO    ] 200
[2026-06-13 11:30:26,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:26,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:26,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:26,886.886 INFO    ] No camera update needed
[2026-06-13 11:30:26,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:26,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:26,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:26,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:30:28,934.934 INFO    ] ================================================
[2026-06-13 11:30:28,949.949 INFO    ] Launching Daemon at Sat Jun 13 11:30:28 IST 2026
[2026-06-13 11:30:28,961.961 INFO    ] ================================================
[2026-06-13 11:30:29,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:30:29
[2026-06-13 11:30:29,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:30:29,805.805 INFO    ] Initializing speech engine...
[2026-06-13 11:30:29,815.815 INFO    ] 2026-06-13 11:30:29
[2026-06-13 11:30:30,005.005 INFO    ] 2026-06-13 11:30:30
[2026-06-13 11:30:30,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:30:30,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:30:30,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:30:30,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:30:30,264.264 INFO    ] time= 13/06/2026 11:30:30
[2026-06-13 11:30:30,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:30:30,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:30:30,363.363 INFO    ] No existing commands found in stream
[2026-06-13 11:30:35,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:35,376.376 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 11:30:36,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:30:36,642.642 INFO    ] Checking for system updates...
[2026-06-13 11:30:36,663.663 INFO    ] 200
[2026-06-13 11:30:36,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:36,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:36,696.696 INFO    ] No update needed
[2026-06-13 11:30:36,698.698 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:36,719.719 INFO    ] 200
[2026-06-13 11:30:36,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:36,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:36,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:36,898.898 INFO    ] No camera update needed
[2026-06-13 11:30:36,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:36,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:36,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:36,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:30:38,947.947 INFO    ] ================================================
[2026-06-13 11:30:38,963.963 INFO    ] Launching Daemon at Sat Jun 13 11:30:38 IST 2026
[2026-06-13 11:30:38,975.975 INFO    ] ================================================
[2026-06-13 11:30:39,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:30:39
[2026-06-13 11:30:39,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:30:39,785.785 INFO    ] Initializing speech engine...
[2026-06-13 11:30:39,795.795 INFO    ] 2026-06-13 11:30:39
[2026-06-13 11:30:40,012.012 INFO    ] 2026-06-13 11:30:39
[2026-06-13 11:30:40,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:30:40,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:30:40,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:30:40,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:30:40,425.425 INFO    ] time= 13/06/2026 11:30:40
[2026-06-13 11:30:40,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:30:40,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:30:40,581.581 INFO    ] No existing commands found in stream
[2026-06-13 11:30:45,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:45,594.594 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 11:30:48,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:30:48,273.273 INFO    ] Checking for system updates...
[2026-06-13 11:30:48,293.293 INFO    ] 200
[2026-06-13 11:30:48,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:48,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:30:48,326.326 INFO    ] No update needed
[2026-06-13 11:30:48,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:48,349.349 INFO    ] 200
[2026-06-13 11:30:48,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:48,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:48,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:30:48,420.420 INFO    ] No camera update needed
[2026-06-13 11:30:48,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:48,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:48,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:48,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:30:50,467.467 INFO    ] ================================================
[2026-06-13 11:30:50,483.483 INFO    ] Launching Daemon at Sat Jun 13 11:30:50 IST 2026
[2026-06-13 11:30:50,494.494 INFO    ] ================================================
[2026-06-13 11:30:50,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:30:50
[2026-06-13 11:30:51,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:30:51,333.333 INFO    ] Initializing speech engine...
[2026-06-13 11:30:51,338.338 INFO    ] 2026-06-13 11:30:51
[2026-06-13 11:30:51,553.553 INFO    ] 2026-06-13 11:30:51
[2026-06-13 11:30:51,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:30:51,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:30:51,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:30:51,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:30:51,974.974 INFO    ] time= 13/06/2026 11:30:51
[2026-06-13 11:30:52,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:30:52,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:30:52,105.105 INFO    ] No existing commands found in stream
[2026-06-13 11:30:57,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:30:57,119.119 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 11:30:58,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:30:58,716.716 INFO    ] Checking for system updates...
[2026-06-13 11:30:58,737.737 INFO    ] 200
[2026-06-13 11:30:58,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:58,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:30:58,771.771 INFO    ] No update needed
[2026-06-13 11:30:58,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 11:30:58,792.792 INFO    ] 200
[2026-06-13 11:30:58,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:30:58,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:30:58,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:30:58,870.870 INFO    ] No camera update needed
[2026-06-13 11:30:58,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:30:58,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:30:58,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:30:58,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:00,917.917 INFO    ] ================================================
[2026-06-13 11:31:00,932.932 INFO    ] Launching Daemon at Sat Jun 13 11:31:00 IST 2026
[2026-06-13 11:31:00,944.944 INFO    ] ================================================
[2026-06-13 11:31:01,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:01
[2026-06-13 11:31:01,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:02,270.270 INFO    ] Initializing speech engine...
[2026-06-13 11:31:02,277.277 INFO    ] 2026-06-13 11:31:02
[2026-06-13 11:31:02,701.701 INFO    ] 2026-06-13 11:31:02
[2026-06-13 11:31:02,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:31:02,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:31:02,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:31:03,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:31:03,169.169 INFO    ] time= 13/06/2026 11:31:03
[2026-06-13 11:31:03,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:31:03,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:31:03,325.325 INFO    ] No existing commands found in stream
[2026-06-13 11:31:08,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:31:08,351.351 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 11:31:10,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:31:10,465.465 INFO    ] Checking for system updates...
[2026-06-13 11:31:10,485.485 INFO    ] 200
[2026-06-13 11:31:10,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:10,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:31:10,519.519 INFO    ] No update needed
[2026-06-13 11:31:10,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 11:31:10,541.541 INFO    ] 200
[2026-06-13 11:31:10,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:10,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:31:10,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:31:10,602.602 INFO    ] No camera update needed
[2026-06-13 11:31:10,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:31:10,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:31:10,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:31:10,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:12,651.651 INFO    ] ================================================
[2026-06-13 11:31:12,667.667 INFO    ] Launching Daemon at Sat Jun 13 11:31:12 IST 2026
[2026-06-13 11:31:12,679.679 INFO    ] ================================================
[2026-06-13 11:31:13,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:13
[2026-06-13 11:31:13,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:13,474.474 INFO    ] Initializing speech engine...
[2026-06-13 11:31:13,479.479 INFO    ] 2026-06-13 11:31:13
[2026-06-13 11:31:13,708.708 INFO    ] 2026-06-13 11:31:13
[2026-06-13 11:31:13,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:31:13,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:31:13,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:31:14,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:31:14,132.132 INFO    ] time= 13/06/2026 11:31:14
[2026-06-13 11:31:14,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:31:14,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:31:14,257.257 INFO    ] No existing commands found in stream
[2026-06-13 11:31:19,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:31:19,271.271 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 11:31:21,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:31:21,348.348 INFO    ] Checking for system updates...
[2026-06-13 11:31:21,370.370 INFO    ] 200
[2026-06-13 11:31:21,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:21,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:21,403.403 INFO    ] No update needed
[2026-06-13 11:31:21,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 11:31:21,424.424 INFO    ] 200
[2026-06-13 11:31:21,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:21,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:31:21,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:21,495.495 INFO    ] No camera update needed
[2026-06-13 11:31:21,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:31:21,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:31:21,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:31:21,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:23,543.543 INFO    ] ================================================
[2026-06-13 11:31:23,559.559 INFO    ] Launching Daemon at Sat Jun 13 11:31:23 IST 2026
[2026-06-13 11:31:23,570.570 INFO    ] ================================================
[2026-06-13 11:31:23,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:23
[2026-06-13 11:31:24,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:24,366.366 INFO    ] Initializing speech engine...
[2026-06-13 11:31:24,379.379 INFO    ] 2026-06-13 11:31:24
[2026-06-13 11:31:24,597.597 INFO    ] 2026-06-13 11:31:24
[2026-06-13 11:31:24,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:31:24,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:31:24,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:31:24,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:31:25,018.018 INFO    ] time= 13/06/2026 11:31:24
[2026-06-13 11:31:25,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:31:25,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:31:25,148.148 INFO    ] No existing commands found in stream
[2026-06-13 11:31:30,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:31:30,162.162 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 11:31:30,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:31:30,892.892 INFO    ] Checking for system updates...
[2026-06-13 11:31:30,914.914 INFO    ] 200
[2026-06-13 11:31:30,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:30,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:31:30,949.949 INFO    ] No update needed
[2026-06-13 11:31:30,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 11:31:30,970.970 INFO    ] 200
[2026-06-13 11:31:30,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:30,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:31:31,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:31:31,032.032 INFO    ] No camera update needed
[2026-06-13 11:31:31,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:31:31,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:31:31,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:31:31,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:33,079.079 INFO    ] ================================================
[2026-06-13 11:31:33,095.095 INFO    ] Launching Daemon at Sat Jun 13 11:31:33 IST 2026
[2026-06-13 11:31:33,106.106 INFO    ] ================================================
[2026-06-13 11:31:33,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:33
[2026-06-13 11:31:33,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:33,920.920 INFO    ] Initializing speech engine...
[2026-06-13 11:31:33,923.923 INFO    ] 2026-06-13 11:31:33
[2026-06-13 11:31:34,153.153 INFO    ] 2026-06-13 11:31:34
[2026-06-13 11:31:34,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:31:34,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:31:34,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:31:34,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:31:34,547.547 INFO    ] time= 13/06/2026 11:31:34
[2026-06-13 11:31:34,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:31:34,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:31:34,704.704 INFO    ] No existing commands found in stream
[2026-06-13 11:31:39,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:31:39,716.716 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 11:31:43,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:31:43,864.864 INFO    ] Checking for system updates...
[2026-06-13 11:31:43,884.884 INFO    ] 200
[2026-06-13 11:31:43,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:43,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:43,920.920 INFO    ] No update needed
[2026-06-13 11:31:43,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 11:31:43,940.940 INFO    ] 200
[2026-06-13 11:31:43,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:43,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:31:44,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:44,007.007 INFO    ] No camera update needed
[2026-06-13 11:31:44,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:31:44,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:31:44,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:31:44,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:46,054.054 INFO    ] ================================================
[2026-06-13 11:31:46,070.070 INFO    ] Launching Daemon at Sat Jun 13 11:31:46 IST 2026
[2026-06-13 11:31:46,081.081 INFO    ] ================================================
[2026-06-13 11:31:46,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:46
[2026-06-13 11:31:46,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:46,935.935 INFO    ] Initializing speech engine...
[2026-06-13 11:31:46,946.946 INFO    ] 2026-06-13 11:31:46
[2026-06-13 11:31:47,154.154 INFO    ] 2026-06-13 11:31:47
[2026-06-13 11:31:47,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:31:47,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:31:47,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:31:47,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:31:47,550.550 INFO    ] time= 13/06/2026 11:31:47
[2026-06-13 11:31:47,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:31:47,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:31:47,672.672 INFO    ] No existing commands found in stream
[2026-06-13 11:31:52,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:31:52,684.684 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 11:31:56,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:31:56,713.713 INFO    ] Checking for system updates...
[2026-06-13 11:31:56,735.735 INFO    ] 200
[2026-06-13 11:31:56,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:56,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:56,773.773 INFO    ] No update needed
[2026-06-13 11:31:56,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 11:31:56,796.796 INFO    ] 200
[2026-06-13 11:31:56,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:31:56,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:31:56,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:31:56,865.865 INFO    ] No camera update needed
[2026-06-13 11:31:56,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:31:56,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:31:56,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:31:56,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:31:58,914.914 INFO    ] ================================================
[2026-06-13 11:31:58,930.930 INFO    ] Launching Daemon at Sat Jun 13 11:31:58 IST 2026
[2026-06-13 11:31:58,941.941 INFO    ] ================================================
[2026-06-13 11:31:59,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:31:59
[2026-06-13 11:31:59,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:31:59,734.734 INFO    ] Initializing speech engine...
[2026-06-13 11:31:59,744.744 INFO    ] 2026-06-13 11:31:59
[2026-06-13 11:31:59,960.960 INFO    ] 2026-06-13 11:31:59
[2026-06-13 11:31:59,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:00,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:00,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:32:00,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:32:00,381.381 INFO    ] time= 13/06/2026 11:32:00
[2026-06-13 11:32:00,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:32:00,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:32:00,517.517 INFO    ] No existing commands found in stream
[2026-06-13 11:32:05,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:32:05,531.531 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 11:32:08,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:32:08,688.688 INFO    ] Checking for system updates...
[2026-06-13 11:32:08,711.711 INFO    ] 200
[2026-06-13 11:32:08,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:08,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:32:08,746.746 INFO    ] No update needed
[2026-06-13 11:32:08,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 11:32:08,767.767 INFO    ] 200
[2026-06-13 11:32:08,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:08,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:32:08,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:32:08,831.831 INFO    ] No camera update needed
[2026-06-13 11:32:08,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:32:08,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:32:08,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:32:08,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:32:10,880.880 INFO    ] ================================================
[2026-06-13 11:32:10,895.895 INFO    ] Launching Daemon at Sat Jun 13 11:32:10 IST 2026
[2026-06-13 11:32:10,907.907 INFO    ] ================================================
[2026-06-13 11:32:11,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:32:11
[2026-06-13 11:32:11,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:32:11,709.709 INFO    ] Initializing speech engine...
[2026-06-13 11:32:11,722.722 INFO    ] 2026-06-13 11:32:11
[2026-06-13 11:32:11,938.938 INFO    ] 2026-06-13 11:32:11
[2026-06-13 11:32:11,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:12,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:12,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:32:12,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:32:12,373.373 INFO    ] time= 13/06/2026 11:32:12
[2026-06-13 11:32:12,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:32:12,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:32:12,494.494 INFO    ] No existing commands found in stream
[2026-06-13 11:32:17,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:32:17,507.507 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 11:32:19,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:32:19,008.008 INFO    ] Checking for system updates...
[2026-06-13 11:32:19,030.030 INFO    ] 200
[2026-06-13 11:32:19,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:19,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:19,064.064 INFO    ] No update needed
[2026-06-13 11:32:19,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 11:32:19,086.086 INFO    ] 200
[2026-06-13 11:32:19,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:19,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:32:19,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:19,146.146 INFO    ] No camera update needed
[2026-06-13 11:32:19,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:32:19,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:32:19,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:32:19,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:32:21,195.195 INFO    ] ================================================
[2026-06-13 11:32:21,211.211 INFO    ] Launching Daemon at Sat Jun 13 11:32:21 IST 2026
[2026-06-13 11:32:21,222.222 INFO    ] ================================================
[2026-06-13 11:32:21,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:32:21
[2026-06-13 11:32:21,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:32:22,018.018 INFO    ] Initializing speech engine...
[2026-06-13 11:32:22,023.023 INFO    ] 2026-06-13 11:32:22
[2026-06-13 11:32:22,227.227 INFO    ] 2026-06-13 11:32:22
[2026-06-13 11:32:22,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:22,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:22,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:32:22,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:32:22,638.638 INFO    ] time= 13/06/2026 11:32:22
[2026-06-13 11:32:22,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:32:22,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:32:22,742.742 INFO    ] No existing commands found in stream
[2026-06-13 11:32:27,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:32:27,755.755 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 11:32:31,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:32:31,898.898 INFO    ] Checking for system updates...
[2026-06-13 11:32:31,944.944 INFO    ] 200
[2026-06-13 11:32:31,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:32,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:32,011.011 INFO    ] No update needed
[2026-06-13 11:32:32,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 11:32:32,051.051 INFO    ] 200
[2026-06-13 11:32:32,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:32,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:32:32,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:32,140.140 INFO    ] No camera update needed
[2026-06-13 11:32:32,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:32:32,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:32:32,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:32:32,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:32:34,200.200 INFO    ] ================================================
[2026-06-13 11:32:34,216.216 INFO    ] Launching Daemon at Sat Jun 13 11:32:34 IST 2026
[2026-06-13 11:32:34,228.228 INFO    ] ================================================
[2026-06-13 11:32:34,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:32:34
[2026-06-13 11:32:34,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:32:35,104.104 INFO    ] Initializing speech engine...
[2026-06-13 11:32:35,112.112 INFO    ] 2026-06-13 11:32:35
[2026-06-13 11:32:35,336.336 INFO    ] 2026-06-13 11:32:35
[2026-06-13 11:32:35,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:35,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:35,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:32:35,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:32:35,761.761 INFO    ] time= 13/06/2026 11:32:35
[2026-06-13 11:32:35,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:32:35,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:32:35,892.892 INFO    ] No existing commands found in stream
[2026-06-13 11:32:40,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:32:40,905.905 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 11:32:43,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:32:43,967.967 INFO    ] Checking for system updates...
[2026-06-13 11:32:43,989.989 INFO    ] 200
[2026-06-13 11:32:43,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:44,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:32:44,024.024 INFO    ] No update needed
[2026-06-13 11:32:44,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 11:32:44,046.046 INFO    ] 200
[2026-06-13 11:32:44,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:44,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:32:44,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:32:44,218.218 INFO    ] No camera update needed
[2026-06-13 11:32:44,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:32:44,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:32:44,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:32:44,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:32:46,265.265 INFO    ] ================================================
[2026-06-13 11:32:46,281.281 INFO    ] Launching Daemon at Sat Jun 13 11:32:46 IST 2026
[2026-06-13 11:32:46,292.292 INFO    ] ================================================
[2026-06-13 11:32:46,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:32:46
[2026-06-13 11:32:46,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:32:47,086.086 INFO    ] Initializing speech engine...
[2026-06-13 11:32:47,094.094 INFO    ] 2026-06-13 11:32:47
[2026-06-13 11:32:47,318.318 INFO    ] 2026-06-13 11:32:47
[2026-06-13 11:32:47,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:47,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:47,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:32:47,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:32:47,742.742 INFO    ] time= 13/06/2026 11:32:47
[2026-06-13 11:32:47,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:32:47,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:32:47,873.873 INFO    ] No existing commands found in stream
[2026-06-13 11:32:52,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:32:52,886.886 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 11:32:56,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:32:56,237.237 INFO    ] Checking for system updates...
[2026-06-13 11:32:56,258.258 INFO    ] 200
[2026-06-13 11:32:56,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:56,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:56,292.292 INFO    ] No update needed
[2026-06-13 11:32:56,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 11:32:56,314.314 INFO    ] 200
[2026-06-13 11:32:56,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:32:56,341.341 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:32:56,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:32:56,379.379 INFO    ] No camera update needed
[2026-06-13 11:32:56,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:32:56,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:32:56,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:32:56,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:32:58,427.427 INFO    ] ================================================
[2026-06-13 11:32:58,442.442 INFO    ] Launching Daemon at Sat Jun 13 11:32:58 IST 2026
[2026-06-13 11:32:58,453.453 INFO    ] ================================================
[2026-06-13 11:32:58,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:32:58
[2026-06-13 11:32:59,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:32:59,351.351 INFO    ] Initializing speech engine...
[2026-06-13 11:32:59,379.379 INFO    ] 2026-06-13 11:32:59
[2026-06-13 11:32:59,664.664 INFO    ] 2026-06-13 11:32:59
[2026-06-13 11:32:59,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:32:59,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:32:59,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:00,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:00,045.045 INFO    ] time= 13/06/2026 11:33:00
[2026-06-13 11:33:00,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:00,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:00,169.169 INFO    ] No existing commands found in stream
[2026-06-13 11:33:05,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:33:05,185.185 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 11:33:08,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:33:08,221.221 INFO    ] Checking for system updates...
[2026-06-13 11:33:08,243.243 INFO    ] 200
[2026-06-13 11:33:08,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:08,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:08,276.276 INFO    ] No update needed
[2026-06-13 11:33:08,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 11:33:08,297.297 INFO    ] 200
[2026-06-13 11:33:08,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:08,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:33:08,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:08,363.363 INFO    ] No camera update needed
[2026-06-13 11:33:08,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:33:08,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:33:08,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:33:08,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:33:10,411.411 INFO    ] ================================================
[2026-06-13 11:33:10,427.427 INFO    ] Launching Daemon at Sat Jun 13 11:33:10 IST 2026
[2026-06-13 11:33:10,438.438 INFO    ] ================================================
[2026-06-13 11:33:10,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:33:10
[2026-06-13 11:33:11,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:33:11,253.253 INFO    ] Initializing speech engine...
[2026-06-13 11:33:11,256.256 INFO    ] 2026-06-13 11:33:11
[2026-06-13 11:33:11,484.484 INFO    ] 2026-06-13 11:33:11
[2026-06-13 11:33:11,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:33:11,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:33:11,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:11,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:11,892.892 INFO    ] time= 13/06/2026 11:33:11
[2026-06-13 11:33:11,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:11,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:12,039.039 INFO    ] No existing commands found in stream
[2026-06-13 11:33:17,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:33:17,053.053 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 11:33:20,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:33:20,143.143 INFO    ] Checking for system updates...
[2026-06-13 11:33:20,163.163 INFO    ] 200
[2026-06-13 11:33:20,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:20,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:20,198.198 INFO    ] No update needed
[2026-06-13 11:33:20,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 11:33:20,222.222 INFO    ] 200
[2026-06-13 11:33:20,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:20,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:33:20,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:20,294.294 INFO    ] No camera update needed
[2026-06-13 11:33:20,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:33:20,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:33:20,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:33:20,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:33:22,340.340 INFO    ] ================================================
[2026-06-13 11:33:22,355.355 INFO    ] Launching Daemon at Sat Jun 13 11:33:22 IST 2026
[2026-06-13 11:33:22,367.367 INFO    ] ================================================
[2026-06-13 11:33:22,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:33:22
[2026-06-13 11:33:23,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:33:23,170.170 INFO    ] Initializing speech engine...
[2026-06-13 11:33:23,177.177 INFO    ] 2026-06-13 11:33:23
[2026-06-13 11:33:23,398.398 INFO    ] 2026-06-13 11:33:23
[2026-06-13 11:33:23,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:33:23,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:33:23,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:23,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:23,737.737 INFO    ] time= 13/06/2026 11:33:23
[2026-06-13 11:33:23,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:23,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:23,962.962 INFO    ] No existing commands found in stream
[2026-06-13 11:33:28,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:33:28,976.976 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 11:33:31,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:33:31,690.690 INFO    ] Checking for system updates...
[2026-06-13 11:33:31,715.715 INFO    ] 200
[2026-06-13 11:33:31,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:31,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:31,755.755 INFO    ] No update needed
[2026-06-13 11:33:31,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 11:33:31,784.784 INFO    ] 200
[2026-06-13 11:33:31,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:31,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:33:31,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:31,885.885 INFO    ] No camera update needed
[2026-06-13 11:33:31,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:33:31,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:33:31,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:33:31,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:33:33,930.930 INFO    ] ================================================
[2026-06-13 11:33:33,945.945 INFO    ] Launching Daemon at Sat Jun 13 11:33:33 IST 2026
[2026-06-13 11:33:33,956.956 INFO    ] ================================================
[2026-06-13 11:33:34,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:33:34
[2026-06-13 11:33:34,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:33:34,740.740 INFO    ] Initializing speech engine...
[2026-06-13 11:33:34,745.745 INFO    ] 2026-06-13 11:33:34
[2026-06-13 11:33:34,972.972 INFO    ] 2026-06-13 11:33:34
[2026-06-13 11:33:35,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:33:35,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:33:35,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:35,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:35,398.398 INFO    ] time= 13/06/2026 11:33:35
[2026-06-13 11:33:35,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:35,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:35,525.525 INFO    ] No existing commands found in stream
[2026-06-13 11:33:40,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:33:40,539.539 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 11:33:43,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:33:43,802.802 INFO    ] Checking for system updates...
[2026-06-13 11:33:43,824.824 INFO    ] 200
[2026-06-13 11:33:43,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:43,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:43,859.859 INFO    ] No update needed
[2026-06-13 11:33:43,860.860 INFO    ] Checking for camera pi updates...
[2026-06-13 11:33:43,880.880 INFO    ] 200
[2026-06-13 11:33:43,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:43,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:33:43,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:43,942.942 INFO    ] No camera update needed
[2026-06-13 11:33:43,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:33:43,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:33:43,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:33:43,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:33:45,990.990 INFO    ] ================================================
[2026-06-13 11:33:46,006.006 INFO    ] Launching Daemon at Sat Jun 13 11:33:46 IST 2026
[2026-06-13 11:33:46,017.017 INFO    ] ================================================
[2026-06-13 11:33:46,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:33:46
[2026-06-13 11:33:46,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:33:46,881.881 INFO    ] Initializing speech engine...
[2026-06-13 11:33:46,886.886 INFO    ] 2026-06-13 11:33:46
[2026-06-13 11:33:47,094.094 INFO    ] 2026-06-13 11:33:47
[2026-06-13 11:33:47,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:33:47,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:33:47,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:47,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:47,354.354 INFO    ] time= 13/06/2026 11:33:47
[2026-06-13 11:33:47,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:47,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:47,544.544 INFO    ] No existing commands found in stream
[2026-06-13 11:33:52,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:33:52,559.559 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 11:33:54,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:33:54,373.373 INFO    ] Checking for system updates...
[2026-06-13 11:33:54,393.393 INFO    ] 200
[2026-06-13 11:33:54,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:54,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:33:54,426.426 INFO    ] No update needed
[2026-06-13 11:33:54,428.428 INFO    ] Checking for camera pi updates...
[2026-06-13 11:33:54,448.448 INFO    ] 200
[2026-06-13 11:33:54,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:33:54,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:33:54,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:33:54,515.515 INFO    ] No camera update needed
[2026-06-13 11:33:54,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:33:54,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:33:54,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:33:54,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:33:56,564.564 INFO    ] ================================================
[2026-06-13 11:33:56,579.579 INFO    ] Launching Daemon at Sat Jun 13 11:33:56 IST 2026
[2026-06-13 11:33:56,590.590 INFO    ] ================================================
[2026-06-13 11:33:56,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:33:56
[2026-06-13 11:33:57,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:33:57,438.438 INFO    ] Initializing speech engine...
[2026-06-13 11:33:57,444.444 INFO    ] 2026-06-13 11:33:57
[2026-06-13 11:33:57,653.653 INFO    ] 2026-06-13 11:33:57
[2026-06-13 11:33:57,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:33:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:33:57,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:33:58,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:33:58,074.074 INFO    ] time= 13/06/2026 11:33:58
[2026-06-13 11:33:58,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:33:58,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:33:58,177.177 INFO    ] No existing commands found in stream
[2026-06-13 11:34:03,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:34:03,187.187 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 11:34:04,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:34:04,415.415 INFO    ] Checking for system updates...
[2026-06-13 11:34:04,436.436 INFO    ] 200
[2026-06-13 11:34:04,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:04,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:04,470.470 INFO    ] No update needed
[2026-06-13 11:34:04,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 11:34:04,491.491 INFO    ] 200
[2026-06-13 11:34:04,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:04,518.518 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:34:04,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:04,555.555 INFO    ] No camera update needed
[2026-06-13 11:34:04,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:34:04,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:34:04,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:34:04,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:34:06,603.603 INFO    ] ================================================
[2026-06-13 11:34:06,619.619 INFO    ] Launching Daemon at Sat Jun 13 11:34:06 IST 2026
[2026-06-13 11:34:06,630.630 INFO    ] ================================================
[2026-06-13 11:34:06,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:34:06
[2026-06-13 11:34:07,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:34:07,482.482 INFO    ] Initializing speech engine...
[2026-06-13 11:34:07,487.487 INFO    ] 2026-06-13 11:34:07
[2026-06-13 11:34:07,697.697 INFO    ] 2026-06-13 11:34:07
[2026-06-13 11:34:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:34:07,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:34:07,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:34:08,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:34:08,114.114 INFO    ] time= 13/06/2026 11:34:08
[2026-06-13 11:34:08,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:34:08,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:34:08,221.221 INFO    ] No existing commands found in stream
[2026-06-13 11:34:13,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:34:13,235.235 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 11:34:17,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:34:17,130.130 INFO    ] Checking for system updates...
[2026-06-13 11:34:17,152.152 INFO    ] 200
[2026-06-13 11:34:17,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:17,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:34:17,186.186 INFO    ] No update needed
[2026-06-13 11:34:17,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 11:34:17,207.207 INFO    ] 200
[2026-06-13 11:34:17,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:17,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:34:17,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:34:17,274.274 INFO    ] No camera update needed
[2026-06-13 11:34:17,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:34:17,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:34:17,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:34:17,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:34:19,322.322 INFO    ] ================================================
[2026-06-13 11:34:19,338.338 INFO    ] Launching Daemon at Sat Jun 13 11:34:19 IST 2026
[2026-06-13 11:34:19,349.349 INFO    ] ================================================
[2026-06-13 11:34:19,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:34:19
[2026-06-13 11:34:19,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:34:20,141.141 INFO    ] Initializing speech engine...
[2026-06-13 11:34:20,146.146 INFO    ] 2026-06-13 11:34:20
[2026-06-13 11:34:20,349.349 INFO    ] 2026-06-13 11:34:20
[2026-06-13 11:34:20,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:34:20,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:34:20,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:34:20,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:34:20,875.875 INFO    ] time= 13/06/2026 11:34:20
[2026-06-13 11:34:20,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:34:20,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:34:20,995.995 INFO    ] No existing commands found in stream
[2026-06-13 11:34:26,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:34:26,007.007 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 11:34:28,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:34:28,704.704 INFO    ] Checking for system updates...
[2026-06-13 11:34:28,725.725 INFO    ] 200
[2026-06-13 11:34:28,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:28,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:28,759.759 INFO    ] No update needed
[2026-06-13 11:34:28,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 11:34:28,780.780 INFO    ] 200
[2026-06-13 11:34:28,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:28,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:34:28,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:28,845.845 INFO    ] No camera update needed
[2026-06-13 11:34:28,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:34:28,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:34:28,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:34:28,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:34:30,893.893 INFO    ] ================================================
[2026-06-13 11:34:30,908.908 INFO    ] Launching Daemon at Sat Jun 13 11:34:30 IST 2026
[2026-06-13 11:34:30,919.919 INFO    ] ================================================
[2026-06-13 11:34:31,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:34:31
[2026-06-13 11:34:31,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:34:31,720.720 INFO    ] Initializing speech engine...
[2026-06-13 11:34:31,726.726 INFO    ] 2026-06-13 11:34:31
[2026-06-13 11:34:31,931.931 INFO    ] 2026-06-13 11:34:31
[2026-06-13 11:34:31,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:34:32,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:34:32,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:34:32,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:34:32,358.358 INFO    ] time= 13/06/2026 11:34:32
[2026-06-13 11:34:32,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:34:32,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:34:32,485.485 INFO    ] No existing commands found in stream
[2026-06-13 11:34:37,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:34:37,496.496 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 11:34:39,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:34:39,600.600 INFO    ] Checking for system updates...
[2026-06-13 11:34:39,621.621 INFO    ] 200
[2026-06-13 11:34:39,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:39,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:34:39,654.654 INFO    ] No update needed
[2026-06-13 11:34:39,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 11:34:39,677.677 INFO    ] 200
[2026-06-13 11:34:39,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:39,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:34:39,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:34:39,741.741 INFO    ] No camera update needed
[2026-06-13 11:34:39,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:34:39,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:34:39,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:34:39,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:34:41,788.788 INFO    ] ================================================
[2026-06-13 11:34:41,803.803 INFO    ] Launching Daemon at Sat Jun 13 11:34:41 IST 2026
[2026-06-13 11:34:41,815.815 INFO    ] ================================================
[2026-06-13 11:34:42,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:34:42
[2026-06-13 11:34:42,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:34:42,619.619 INFO    ] Initializing speech engine...
[2026-06-13 11:34:42,631.631 INFO    ] 2026-06-13 11:34:42
[2026-06-13 11:34:42,838.838 INFO    ] 2026-06-13 11:34:42
[2026-06-13 11:34:42,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:34:42,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:34:43,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:34:43,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:34:43,198.198 INFO    ] time= 13/06/2026 11:34:43
[2026-06-13 11:34:43,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:34:43,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:34:43,361.361 INFO    ] No existing commands found in stream
[2026-06-13 11:34:48,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:34:48,374.374 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 11:34:53,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:34:53,904.904 INFO    ] Checking for system updates...
[2026-06-13 11:34:53,942.942 INFO    ] 200
[2026-06-13 11:34:53,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:53,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:53,995.995 INFO    ] No update needed
[2026-06-13 11:34:53,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 11:34:54,017.017 INFO    ] 200
[2026-06-13 11:34:54,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:34:54,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:34:54,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:34:54,191.191 INFO    ] No camera update needed
[2026-06-13 11:34:54,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:34:54,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:34:54,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:34:54,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:34:56,239.239 INFO    ] ================================================
[2026-06-13 11:34:56,254.254 INFO    ] Launching Daemon at Sat Jun 13 11:34:56 IST 2026
[2026-06-13 11:34:56,265.265 INFO    ] ================================================
[2026-06-13 11:34:56,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:34:56
[2026-06-13 11:34:56,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:34:57,084.084 INFO    ] Initializing speech engine...
[2026-06-13 11:34:57,102.102 INFO    ] 2026-06-13 11:34:57
[2026-06-13 11:34:57,366.366 INFO    ] 2026-06-13 11:34:57
[2026-06-13 11:34:57,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:34:57,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:34:57,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:34:57,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:34:57,710.710 INFO    ] time= 13/06/2026 11:34:57
[2026-06-13 11:34:57,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:34:57,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:34:57,822.822 INFO    ] No existing commands found in stream
[2026-06-13 11:35:02,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:02,838.838 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 11:35:04,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:35:04,930.930 INFO    ] Checking for system updates...
[2026-06-13 11:35:04,951.951 INFO    ] 200
[2026-06-13 11:35:04,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:04,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:04,984.984 INFO    ] No update needed
[2026-06-13 11:35:04,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 11:35:05,004.004 INFO    ] 200
[2026-06-13 11:35:05,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:05,029.029 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:35:05,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:05,070.070 INFO    ] No camera update needed
[2026-06-13 11:35:05,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:35:05,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:35:05,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:35:05,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:35:07,116.116 INFO    ] ================================================
[2026-06-13 11:35:07,131.131 INFO    ] Launching Daemon at Sat Jun 13 11:35:07 IST 2026
[2026-06-13 11:35:07,142.142 INFO    ] ================================================
[2026-06-13 11:35:07,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:35:07
[2026-06-13 11:35:07,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:35:07,938.938 INFO    ] Initializing speech engine...
[2026-06-13 11:35:07,942.942 INFO    ] 2026-06-13 11:35:07
[2026-06-13 11:35:08,167.167 INFO    ] 2026-06-13 11:35:08
[2026-06-13 11:35:08,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:35:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:35:08,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:35:08,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:35:08,532.532 INFO    ] time= 13/06/2026 11:35:08
[2026-06-13 11:35:08,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:35:08,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:35:08,697.697 INFO    ] No existing commands found in stream
[2026-06-13 11:35:13,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:13,711.711 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 11:35:15,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:35:15,500.500 INFO    ] Checking for system updates...
[2026-06-13 11:35:15,521.521 INFO    ] 200
[2026-06-13 11:35:15,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:15,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:15,555.555 INFO    ] No update needed
[2026-06-13 11:35:15,557.557 INFO    ] Checking for camera pi updates...
[2026-06-13 11:35:15,576.576 INFO    ] 200
[2026-06-13 11:35:15,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:15,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:35:15,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:15,640.640 INFO    ] No camera update needed
[2026-06-13 11:35:15,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:35:15,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:35:15,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:35:15,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:35:17,688.688 INFO    ] ================================================
[2026-06-13 11:35:17,703.703 INFO    ] Launching Daemon at Sat Jun 13 11:35:17 IST 2026
[2026-06-13 11:35:17,714.714 INFO    ] ================================================
[2026-06-13 11:35:18,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:35:18
[2026-06-13 11:35:18,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:35:18,531.531 INFO    ] Initializing speech engine...
[2026-06-13 11:35:18,538.538 INFO    ] 2026-06-13 11:35:18
[2026-06-13 11:35:18,749.749 INFO    ] 2026-06-13 11:35:18
[2026-06-13 11:35:18,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:35:18,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:35:18,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:35:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:35:19,150.150 INFO    ] time= 13/06/2026 11:35:19
[2026-06-13 11:35:19,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:35:19,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:35:19,272.272 INFO    ] No existing commands found in stream
[2026-06-13 11:35:24,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:24,285.285 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 11:35:28,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:35:28,050.050 INFO    ] Checking for system updates...
[2026-06-13 11:35:28,071.071 INFO    ] 200
[2026-06-13 11:35:28,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:28,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:28,104.104 INFO    ] No update needed
[2026-06-13 11:35:28,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 11:35:28,125.125 INFO    ] 200
[2026-06-13 11:35:28,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:28,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:35:28,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:28,191.191 INFO    ] No camera update needed
[2026-06-13 11:35:28,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:35:28,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:35:28,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:35:28,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:35:30,239.239 INFO    ] ================================================
[2026-06-13 11:35:30,254.254 INFO    ] Launching Daemon at Sat Jun 13 11:35:30 IST 2026
[2026-06-13 11:35:30,265.265 INFO    ] ================================================
[2026-06-13 11:35:30,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:35:30
[2026-06-13 11:35:30,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:35:31,092.092 INFO    ] Initializing speech engine...
[2026-06-13 11:35:31,100.100 INFO    ] 2026-06-13 11:35:31
[2026-06-13 11:35:31,324.324 INFO    ] 2026-06-13 11:35:31
[2026-06-13 11:35:31,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:35:31,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:35:31,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:35:31,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:35:31,593.593 INFO    ] time= 13/06/2026 11:35:31
[2026-06-13 11:35:31,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:35:31,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:35:31,705.705 INFO    ] No existing commands found in stream
[2026-06-13 11:35:36,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:36,740.740 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 11:35:38,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:35:38,523.523 INFO    ] Checking for system updates...
[2026-06-13 11:35:38,561.561 INFO    ] 200
[2026-06-13 11:35:38,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:38,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:38,625.625 INFO    ] No update needed
[2026-06-13 11:35:38,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 11:35:38,647.647 INFO    ] 200
[2026-06-13 11:35:38,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:38,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:35:38,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:38,708.708 INFO    ] No camera update needed
[2026-06-13 11:35:38,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:35:38,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:35:38,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:35:38,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:35:40,742.742 INFO    ] ================================================
[2026-06-13 11:35:40,751.751 INFO    ] Launching Daemon at Sat Jun 13 11:35:40 IST 2026
[2026-06-13 11:35:40,758.758 INFO    ] ================================================
[2026-06-13 11:35:41,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:35:41
[2026-06-13 11:35:41,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:35:41,650.650 INFO    ] Initializing speech engine...
[2026-06-13 11:35:41,656.656 INFO    ] 2026-06-13 11:35:41
[2026-06-13 11:35:41,889.889 INFO    ] 2026-06-13 11:35:41
[2026-06-13 11:35:41,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:35:42,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:35:42,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:35:42,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:35:42,264.264 INFO    ] time= 13/06/2026 11:35:42
[2026-06-13 11:35:42,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:35:42,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:35:42,461.461 INFO    ] No existing commands found in stream
[2026-06-13 11:35:47,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:47,476.476 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 11:35:51,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:35:51,019.019 INFO    ] Checking for system updates...
[2026-06-13 11:35:51,039.039 INFO    ] 200
[2026-06-13 11:35:51,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:51,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:35:51,072.072 INFO    ] No update needed
[2026-06-13 11:35:51,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 11:35:51,093.093 INFO    ] 200
[2026-06-13 11:35:51,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:35:51,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:35:51,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:35:51,162.162 INFO    ] No camera update needed
[2026-06-13 11:35:51,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:35:51,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:35:51,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:35:51,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:35:53,212.212 INFO    ] ================================================
[2026-06-13 11:35:53,227.227 INFO    ] Launching Daemon at Sat Jun 13 11:35:53 IST 2026
[2026-06-13 11:35:53,237.237 INFO    ] ================================================
[2026-06-13 11:35:53,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:35:53
[2026-06-13 11:35:53,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:35:54,096.096 INFO    ] Initializing speech engine...
[2026-06-13 11:35:54,106.106 INFO    ] 2026-06-13 11:35:54
[2026-06-13 11:35:54,308.308 INFO    ] 2026-06-13 11:35:54
[2026-06-13 11:35:54,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:35:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:35:54,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:35:54,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:35:54,721.721 INFO    ] time= 13/06/2026 11:35:54
[2026-06-13 11:35:54,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:35:54,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:35:54,825.825 INFO    ] No existing commands found in stream
[2026-06-13 11:35:59,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:35:59,838.838 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 11:36:01,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:36:01,736.736 INFO    ] Checking for system updates...
[2026-06-13 11:36:01,768.768 INFO    ] 200
[2026-06-13 11:36:01,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:01,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:01,810.810 INFO    ] No update needed
[2026-06-13 11:36:01,812.812 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:01,835.835 INFO    ] 200
[2026-06-13 11:36:01,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:01,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:01,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:01,922.922 INFO    ] No camera update needed
[2026-06-13 11:36:01,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:01,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:01,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:01,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:03,981.981 INFO    ] ================================================
[2026-06-13 11:36:04,996.996 INFO    ] Launching Daemon at Sat Jun 13 11:36:03 IST 2026
[2026-06-13 11:36:04,007.007 INFO    ] ================================================
[2026-06-13 11:36:04,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:04
[2026-06-13 11:36:05,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:05,421.421 INFO    ] Initializing speech engine...
[2026-06-13 11:36:05,439.439 INFO    ] 2026-06-13 11:36:05
[2026-06-13 11:36:05,733.733 INFO    ] 2026-06-13 11:36:05
[2026-06-13 11:36:05,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:05,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:06,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:06,088.088 INFO    ] time= 13/06/2026 11:36:06
[2026-06-13 11:36:06,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:06,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:06,163.163 INFO    ] No existing commands found in stream
[2026-06-13 11:36:11,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:36:11,195.195 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 11:36:11,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:36:11,550.550 INFO    ] Checking for system updates...
[2026-06-13 11:36:11,573.573 INFO    ] 200
[2026-06-13 11:36:11,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:11,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:11,607.607 INFO    ] No update needed
[2026-06-13 11:36:11,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:11,628.628 INFO    ] 200
[2026-06-13 11:36:11,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:11,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:11,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:11,696.696 INFO    ] No camera update needed
[2026-06-13 11:36:11,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:11,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:11,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:11,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:13,742.742 INFO    ] ================================================
[2026-06-13 11:36:13,757.757 INFO    ] Launching Daemon at Sat Jun 13 11:36:13 IST 2026
[2026-06-13 11:36:13,768.768 INFO    ] ================================================
[2026-06-13 11:36:14,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:14
[2026-06-13 11:36:14,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:14,559.559 INFO    ] Initializing speech engine...
[2026-06-13 11:36:14,564.564 INFO    ] 2026-06-13 11:36:14
[2026-06-13 11:36:14,767.767 INFO    ] 2026-06-13 11:36:14
[2026-06-13 11:36:14,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:14,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:14,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:15,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:15,180.180 INFO    ] time= 13/06/2026 11:36:15
[2026-06-13 11:36:15,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:15,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:15,278.278 INFO    ] No existing commands found in stream
[2026-06-13 11:36:20,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:36:20,292.292 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 11:36:23,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:36:23,495.495 INFO    ] Checking for system updates...
[2026-06-13 11:36:23,517.517 INFO    ] 200
[2026-06-13 11:36:23,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:23,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:36:23,552.552 INFO    ] No update needed
[2026-06-13 11:36:23,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:23,574.574 INFO    ] 200
[2026-06-13 11:36:23,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:23,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:23,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:36:23,641.641 INFO    ] No camera update needed
[2026-06-13 11:36:23,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:23,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:23,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:23,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:25,689.689 INFO    ] ================================================
[2026-06-13 11:36:25,704.704 INFO    ] Launching Daemon at Sat Jun 13 11:36:25 IST 2026
[2026-06-13 11:36:25,715.715 INFO    ] ================================================
[2026-06-13 11:36:26,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:26
[2026-06-13 11:36:26,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:26,570.570 INFO    ] Initializing speech engine...
[2026-06-13 11:36:26,576.576 INFO    ] 2026-06-13 11:36:26
[2026-06-13 11:36:26,781.781 INFO    ] 2026-06-13 11:36:26
[2026-06-13 11:36:26,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:26,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:26,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:27,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:27,170.170 INFO    ] time= 13/06/2026 11:36:27
[2026-06-13 11:36:27,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:27,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:27,300.300 INFO    ] No existing commands found in stream
[2026-06-13 11:36:32,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:36:32,338.338 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 11:36:35,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:36:35,101.101 INFO    ] Checking for system updates...
[2026-06-13 11:36:35,122.122 INFO    ] 200
[2026-06-13 11:36:35,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:35,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:35,154.154 INFO    ] No update needed
[2026-06-13 11:36:35,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:35,175.175 INFO    ] 200
[2026-06-13 11:36:35,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:35,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:35,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:35,242.242 INFO    ] No camera update needed
[2026-06-13 11:36:35,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:35,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:35,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:35,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:37,290.290 INFO    ] ================================================
[2026-06-13 11:36:37,305.305 INFO    ] Launching Daemon at Sat Jun 13 11:36:37 IST 2026
[2026-06-13 11:36:37,316.316 INFO    ] ================================================
[2026-06-13 11:36:37,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:37
[2026-06-13 11:36:37,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:38,221.221 INFO    ] Initializing speech engine...
[2026-06-13 11:36:38,229.229 INFO    ] 2026-06-13 11:36:38
[2026-06-13 11:36:38,490.490 INFO    ] 2026-06-13 11:36:38
[2026-06-13 11:36:38,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:38,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:38,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:38,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:38,917.917 INFO    ] time= 13/06/2026 11:36:38
[2026-06-13 11:36:38,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:39,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:39,094.094 INFO    ] No existing commands found in stream
[2026-06-13 11:36:44,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:36:44,110.110 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 11:36:44,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:36:44,512.512 INFO    ] Checking for system updates...
[2026-06-13 11:36:44,533.533 INFO    ] 200
[2026-06-13 11:36:44,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:44,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:44,566.566 INFO    ] No update needed
[2026-06-13 11:36:44,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:44,587.587 INFO    ] 200
[2026-06-13 11:36:44,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:44,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:44,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:36:44,639.639 INFO    ] No camera update needed
[2026-06-13 11:36:44,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:44,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:44,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:44,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:46,687.687 INFO    ] ================================================
[2026-06-13 11:36:46,702.702 INFO    ] Launching Daemon at Sat Jun 13 11:36:46 IST 2026
[2026-06-13 11:36:46,713.713 INFO    ] ================================================
[2026-06-13 11:36:47,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:47
[2026-06-13 11:36:47,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:47,508.508 INFO    ] Initializing speech engine...
[2026-06-13 11:36:47,513.513 INFO    ] 2026-06-13 11:36:47
[2026-06-13 11:36:47,719.719 INFO    ] 2026-06-13 11:36:47
[2026-06-13 11:36:47,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:47,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:47,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:48,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:48,124.124 INFO    ] time= 13/06/2026 11:36:48
[2026-06-13 11:36:48,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:48,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:48,234.234 INFO    ] No existing commands found in stream
[2026-06-13 11:36:53,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:36:53,247.247 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 11:36:54,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:36:54,259.259 INFO    ] Checking for system updates...
[2026-06-13 11:36:54,280.280 INFO    ] 200
[2026-06-13 11:36:54,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:54,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:36:54,315.315 INFO    ] No update needed
[2026-06-13 11:36:54,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 11:36:54,337.337 INFO    ] 200
[2026-06-13 11:36:54,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:36:54,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:36:54,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:36:54,404.404 INFO    ] No camera update needed
[2026-06-13 11:36:54,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:36:54,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:36:54,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:36:54,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:36:56,452.452 INFO    ] ================================================
[2026-06-13 11:36:56,469.469 INFO    ] Launching Daemon at Sat Jun 13 11:36:56 IST 2026
[2026-06-13 11:36:56,480.480 INFO    ] ================================================
[2026-06-13 11:36:56,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:36:56
[2026-06-13 11:36:57,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:36:57,260.260 INFO    ] Initializing speech engine...
[2026-06-13 11:36:57,266.266 INFO    ] 2026-06-13 11:36:57
[2026-06-13 11:36:57,471.471 INFO    ] 2026-06-13 11:36:57
[2026-06-13 11:36:57,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:36:57,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:36:57,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:36:57,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:36:57,884.884 INFO    ] time= 13/06/2026 11:36:57
[2026-06-13 11:36:57,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:36:57,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:36:57,989.989 INFO    ] No existing commands found in stream
[2026-06-13 11:37:02,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:03,000.000 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 11:37:07,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:37:07,257.257 INFO    ] Checking for system updates...
[2026-06-13 11:37:07,277.277 INFO    ] 200
[2026-06-13 11:37:07,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:07,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:37:07,314.314 INFO    ] No update needed
[2026-06-13 11:37:07,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 11:37:07,339.339 INFO    ] 200
[2026-06-13 11:37:07,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:07,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:37:07,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:37:07,411.411 INFO    ] No camera update needed
[2026-06-13 11:37:07,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:37:07,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:37:07,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:37:07,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:37:09,459.459 INFO    ] ================================================
[2026-06-13 11:37:09,474.474 INFO    ] Launching Daemon at Sat Jun 13 11:37:09 IST 2026
[2026-06-13 11:37:09,485.485 INFO    ] ================================================
[2026-06-13 11:37:09,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:37:09
[2026-06-13 11:37:10,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:37:10,307.307 INFO    ] Initializing speech engine...
[2026-06-13 11:37:10,312.312 INFO    ] 2026-06-13 11:37:10
[2026-06-13 11:37:10,517.517 INFO    ] 2026-06-13 11:37:10
[2026-06-13 11:37:10,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:37:10,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:37:10,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:37:10,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:37:10,917.917 INFO    ] time= 13/06/2026 11:37:10
[2026-06-13 11:37:10,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:37:10,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:37:11,038.038 INFO    ] No existing commands found in stream
[2026-06-13 11:37:16,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:16,052.052 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 11:37:17,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:37:17,548.548 INFO    ] Checking for system updates...
[2026-06-13 11:37:17,569.569 INFO    ] 200
[2026-06-13 11:37:17,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:17,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:17,604.604 INFO    ] No update needed
[2026-06-13 11:37:17,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 11:37:17,633.633 INFO    ] 200
[2026-06-13 11:37:17,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:17,667.667 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:37:17,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:17,711.711 INFO    ] No camera update needed
[2026-06-13 11:37:17,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:37:17,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:37:17,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:37:17,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:37:19,762.762 INFO    ] ================================================
[2026-06-13 11:37:19,778.778 INFO    ] Launching Daemon at Sat Jun 13 11:37:19 IST 2026
[2026-06-13 11:37:19,789.789 INFO    ] ================================================
[2026-06-13 11:37:20,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:37:20
[2026-06-13 11:37:20,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:37:21,060.060 INFO    ] Initializing speech engine...
[2026-06-13 11:37:21,064.064 INFO    ] 2026-06-13 11:37:21
[2026-06-13 11:37:21,270.270 INFO    ] 2026-06-13 11:37:21
[2026-06-13 11:37:21,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:37:21,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:37:21,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:37:21,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:37:21,673.673 INFO    ] time= 13/06/2026 11:37:21
[2026-06-13 11:37:21,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:37:21,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:37:21,790.790 INFO    ] No existing commands found in stream
[2026-06-13 11:37:26,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:26,803.803 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 11:37:28,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:37:28,904.904 INFO    ] Checking for system updates...
[2026-06-13 11:37:28,925.925 INFO    ] 200
[2026-06-13 11:37:28,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:28,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:37:28,993.993 INFO    ] No update needed
[2026-06-13 11:37:28,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 11:37:29,032.032 INFO    ] 200
[2026-06-13 11:37:29,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:29,078.078 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:37:29,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:37:29,128.128 INFO    ] No camera update needed
[2026-06-13 11:37:29,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:37:29,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:37:29,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:37:29,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:37:31,186.186 INFO    ] ================================================
[2026-06-13 11:37:31,202.202 INFO    ] Launching Daemon at Sat Jun 13 11:37:31 IST 2026
[2026-06-13 11:37:31,212.212 INFO    ] ================================================
[2026-06-13 11:37:31,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:37:31
[2026-06-13 11:37:32,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:37:32,425.425 INFO    ] Initializing speech engine...
[2026-06-13 11:37:32,429.429 INFO    ] 2026-06-13 11:37:32
[2026-06-13 11:37:32,641.641 INFO    ] 2026-06-13 11:37:32
[2026-06-13 11:37:32,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:37:32,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:37:32,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:37:33,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:37:33,098.098 INFO    ] time= 13/06/2026 11:37:33
[2026-06-13 11:37:33,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:37:33,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:37:33,233.233 INFO    ] No existing commands found in stream
[2026-06-13 11:37:38,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:38,247.247 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 11:37:41,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:37:41,509.509 INFO    ] Checking for system updates...
[2026-06-13 11:37:41,529.529 INFO    ] 200
[2026-06-13 11:37:41,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:41,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:41,565.565 INFO    ] No update needed
[2026-06-13 11:37:41,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 11:37:41,585.585 INFO    ] 200
[2026-06-13 11:37:41,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:41,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:37:41,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:41,648.648 INFO    ] No camera update needed
[2026-06-13 11:37:41,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:37:41,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:37:41,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:37:41,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:37:43,695.695 INFO    ] ================================================
[2026-06-13 11:37:43,710.710 INFO    ] Launching Daemon at Sat Jun 13 11:37:43 IST 2026
[2026-06-13 11:37:43,722.722 INFO    ] ================================================
[2026-06-13 11:37:44,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:37:44
[2026-06-13 11:37:44,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:37:44,574.574 INFO    ] Initializing speech engine...
[2026-06-13 11:37:44,580.580 INFO    ] 2026-06-13 11:37:44
[2026-06-13 11:37:44,785.785 INFO    ] 2026-06-13 11:37:44
[2026-06-13 11:37:44,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:37:44,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:37:45,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:37:45,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:37:45,205.205 INFO    ] time= 13/06/2026 11:37:45
[2026-06-13 11:37:45,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:37:45,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:37:45,302.302 INFO    ] No existing commands found in stream
[2026-06-13 11:37:50,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:50,320.320 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 11:37:51,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:37:51,058.058 INFO    ] Checking for system updates...
[2026-06-13 11:37:51,081.081 INFO    ] 200
[2026-06-13 11:37:51,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:51,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:51,114.114 INFO    ] No update needed
[2026-06-13 11:37:51,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 11:37:51,135.135 INFO    ] 200
[2026-06-13 11:37:51,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:37:51,164.164 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:37:51,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:37:51,205.205 INFO    ] No camera update needed
[2026-06-13 11:37:51,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:37:51,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:37:51,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:37:51,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:37:53,253.253 INFO    ] ================================================
[2026-06-13 11:37:53,268.268 INFO    ] Launching Daemon at Sat Jun 13 11:37:53 IST 2026
[2026-06-13 11:37:53,279.279 INFO    ] ================================================
[2026-06-13 11:37:53,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:37:53
[2026-06-13 11:37:53,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:37:54,151.151 INFO    ] Initializing speech engine...
[2026-06-13 11:37:54,155.155 INFO    ] 2026-06-13 11:37:54
[2026-06-13 11:37:54,361.361 INFO    ] 2026-06-13 11:37:54
[2026-06-13 11:37:54,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:37:54,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:37:54,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:37:54,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:37:54,765.765 INFO    ] time= 13/06/2026 11:37:54
[2026-06-13 11:37:54,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:37:54,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:37:54,875.875 INFO    ] No existing commands found in stream
[2026-06-13 11:37:59,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:37:59,887.887 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 11:38:01,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:38:01,158.158 INFO    ] Checking for system updates...
[2026-06-13 11:38:01,179.179 INFO    ] 200
[2026-06-13 11:38:01,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:01,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:38:01,212.212 INFO    ] No update needed
[2026-06-13 11:38:01,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:01,234.234 INFO    ] 200
[2026-06-13 11:38:01,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:01,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:01,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:38:01,302.302 INFO    ] No camera update needed
[2026-06-13 11:38:01,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:01,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:01,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:01,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:38:03,353.353 INFO    ] ================================================
[2026-06-13 11:38:03,368.368 INFO    ] Launching Daemon at Sat Jun 13 11:38:03 IST 2026
[2026-06-13 11:38:03,379.379 INFO    ] ================================================
[2026-06-13 11:38:04,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:38:04
[2026-06-13 11:38:04,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:38:05,041.041 INFO    ] Initializing speech engine...
[2026-06-13 11:38:05,055.055 INFO    ] 2026-06-13 11:38:05
[2026-06-13 11:38:05,370.370 INFO    ] 2026-06-13 11:38:05
[2026-06-13 11:38:05,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:38:05,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:38:05,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:38:05,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:38:05,909.909 INFO    ] time= 13/06/2026 11:38:05
[2026-06-13 11:38:05,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:38:05,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:38:06,010.010 INFO    ] No existing commands found in stream
[2026-06-13 11:38:11,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:38:11,025.025 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 11:38:12,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:38:12,899.899 INFO    ] Checking for system updates...
[2026-06-13 11:38:12,935.935 INFO    ] 200
[2026-06-13 11:38:12,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:12,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:38:12,993.993 INFO    ] No update needed
[2026-06-13 11:38:12,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:13,034.034 INFO    ] 200
[2026-06-13 11:38:13,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:13,079.079 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:13,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:38:13,121.121 INFO    ] No camera update needed
[2026-06-13 11:38:13,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:13,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:13,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:13,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:38:15,176.176 INFO    ] ================================================
[2026-06-13 11:38:15,192.192 INFO    ] Launching Daemon at Sat Jun 13 11:38:15 IST 2026
[2026-06-13 11:38:15,203.203 INFO    ] ================================================
[2026-06-13 11:38:15,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:38:15
[2026-06-13 11:38:15,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:38:16,085.085 INFO    ] Initializing speech engine...
[2026-06-13 11:38:16,091.091 INFO    ] 2026-06-13 11:38:16
[2026-06-13 11:38:16,302.302 INFO    ] 2026-06-13 11:38:16
[2026-06-13 11:38:16,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:38:16,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:38:16,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:38:16,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:38:16,730.730 INFO    ] time= 13/06/2026 11:38:16
[2026-06-13 11:38:16,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:38:16,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:38:16,828.828 INFO    ] No existing commands found in stream
[2026-06-13 11:38:21,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:38:21,843.843 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 11:38:25,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:38:25,903.903 INFO    ] Checking for system updates...
[2026-06-13 11:38:25,941.941 INFO    ] 200
[2026-06-13 11:38:25,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:25,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:26,003.003 INFO    ] No update needed
[2026-06-13 11:38:26,005.005 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:26,041.041 INFO    ] 200
[2026-06-13 11:38:26,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:26,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:26,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:26,129.129 INFO    ] No camera update needed
[2026-06-13 11:38:26,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:26,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:26,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:26,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:38:28,188.188 INFO    ] ================================================
[2026-06-13 11:38:28,204.204 INFO    ] Launching Daemon at Sat Jun 13 11:38:28 IST 2026
[2026-06-13 11:38:28,215.215 INFO    ] ================================================
[2026-06-13 11:38:28,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:38:28
[2026-06-13 11:38:28,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:38:29,001.001 INFO    ] Initializing speech engine...
[2026-06-13 11:38:29,014.014 INFO    ] 2026-06-13 11:38:29
[2026-06-13 11:38:29,230.230 INFO    ] 2026-06-13 11:38:29
[2026-06-13 11:38:29,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:38:29,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:38:29,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:38:29,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:38:29,645.645 INFO    ] time= 13/06/2026 11:38:29
[2026-06-13 11:38:29,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:38:29,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:38:29,758.758 INFO    ] No existing commands found in stream
[2026-06-13 11:38:34,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:38:34,772.772 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 11:38:36,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:38:36,956.956 INFO    ] Checking for system updates...
[2026-06-13 11:38:36,979.979 INFO    ] 200
[2026-06-13 11:38:36,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:37,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:37,013.013 INFO    ] No update needed
[2026-06-13 11:38:37,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:37,034.034 INFO    ] 200
[2026-06-13 11:38:37,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:37,059.059 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:37,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:37,102.102 INFO    ] No camera update needed
[2026-06-13 11:38:37,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:37,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:37,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:37,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:38:39,152.152 INFO    ] ================================================
[2026-06-13 11:38:39,167.167 INFO    ] Launching Daemon at Sat Jun 13 11:38:39 IST 2026
[2026-06-13 11:38:39,177.177 INFO    ] ================================================
[2026-06-13 11:38:39,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:38:39
[2026-06-13 11:38:39,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:38:39,971.971 INFO    ] Initializing speech engine...
[2026-06-13 11:38:39,976.976 INFO    ] 2026-06-13 11:38:39
[2026-06-13 11:38:40,182.182 INFO    ] 2026-06-13 11:38:40
[2026-06-13 11:38:40,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:38:40,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:38:40,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:38:40,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:38:40,589.589 INFO    ] time= 13/06/2026 11:38:40
[2026-06-13 11:38:40,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:38:40,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:38:40,698.698 INFO    ] No existing commands found in stream
[2026-06-13 11:38:45,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:38:45,715.715 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 11:38:49,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:38:49,285.285 INFO    ] Checking for system updates...
[2026-06-13 11:38:49,306.306 INFO    ] 200
[2026-06-13 11:38:49,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:49,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:49,343.343 INFO    ] No update needed
[2026-06-13 11:38:49,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:49,367.367 INFO    ] 200
[2026-06-13 11:38:49,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:49,393.393 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:49,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:49,435.435 INFO    ] No camera update needed
[2026-06-13 11:38:49,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:49,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:49,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:49,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:38:51,483.483 INFO    ] ================================================
[2026-06-13 11:38:51,498.498 INFO    ] Launching Daemon at Sat Jun 13 11:38:51 IST 2026
[2026-06-13 11:38:51,509.509 INFO    ] ================================================
[2026-06-13 11:38:51,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:38:51
[2026-06-13 11:38:52,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:38:52,305.305 INFO    ] Initializing speech engine...
[2026-06-13 11:38:52,313.313 INFO    ] 2026-06-13 11:38:52
[2026-06-13 11:38:52,541.541 INFO    ] 2026-06-13 11:38:52
[2026-06-13 11:38:52,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:38:52,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:38:52,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:38:52,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:38:52,926.926 INFO    ] time= 13/06/2026 11:38:52
[2026-06-13 11:38:52,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:38:52,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:38:53,024.024 INFO    ] No existing commands found in stream
[2026-06-13 11:38:58,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:38:58,047.047 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 11:38:59,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:38:59,369.369 INFO    ] Checking for system updates...
[2026-06-13 11:38:59,391.391 INFO    ] 200
[2026-06-13 11:38:59,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:59,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:59,424.424 INFO    ] No update needed
[2026-06-13 11:38:59,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 11:38:59,445.445 INFO    ] 200
[2026-06-13 11:38:59,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:38:59,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:38:59,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:38:59,506.506 INFO    ] No camera update needed
[2026-06-13 11:38:59,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:38:59,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:38:59,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:38:59,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:01,557.557 INFO    ] ================================================
[2026-06-13 11:39:01,573.573 INFO    ] Launching Daemon at Sat Jun 13 11:39:01 IST 2026
[2026-06-13 11:39:01,584.584 INFO    ] ================================================
[2026-06-13 11:39:02,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:01
[2026-06-13 11:39:02,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:02,589.589 INFO    ] Initializing speech engine...
[2026-06-13 11:39:02,594.594 INFO    ] 2026-06-13 11:39:02
[2026-06-13 11:39:02,805.805 INFO    ] 2026-06-13 11:39:02
[2026-06-13 11:39:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:02,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:02,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:03,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:03,160.160 INFO    ] time= 13/06/2026 11:39:03
[2026-06-13 11:39:03,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:03,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:03,331.331 INFO    ] No existing commands found in stream
[2026-06-13 11:39:08,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:39:08,345.345 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 11:39:10,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:39:10,560.560 INFO    ] Checking for system updates...
[2026-06-13 11:39:10,581.581 INFO    ] 200
[2026-06-13 11:39:10,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:10,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:39:10,615.615 INFO    ] No update needed
[2026-06-13 11:39:10,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 11:39:10,637.637 INFO    ] 200
[2026-06-13 11:39:10,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:10,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:39:10,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:39:10,802.802 INFO    ] No camera update needed
[2026-06-13 11:39:10,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:39:10,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:39:10,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:39:10,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:12,850.850 INFO    ] ================================================
[2026-06-13 11:39:12,866.866 INFO    ] Launching Daemon at Sat Jun 13 11:39:12 IST 2026
[2026-06-13 11:39:12,876.876 INFO    ] ================================================
[2026-06-13 11:39:13,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:13
[2026-06-13 11:39:13,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:13,731.731 INFO    ] Initializing speech engine...
[2026-06-13 11:39:13,735.735 INFO    ] 2026-06-13 11:39:13
[2026-06-13 11:39:13,943.943 INFO    ] 2026-06-13 11:39:13
[2026-06-13 11:39:13,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:14,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:14,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:14,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:14,356.356 INFO    ] time= 13/06/2026 11:39:14
[2026-06-13 11:39:14,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:14,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:14,461.461 INFO    ] No existing commands found in stream
[2026-06-13 11:39:19,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:39:19,475.475 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 11:39:21,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:39:21,062.062 INFO    ] Checking for system updates...
[2026-06-13 11:39:21,084.084 INFO    ] 200
[2026-06-13 11:39:21,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:21,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:21,119.119 INFO    ] No update needed
[2026-06-13 11:39:21,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 11:39:21,141.141 INFO    ] 200
[2026-06-13 11:39:21,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:21,170.170 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:39:21,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:21,217.217 INFO    ] No camera update needed
[2026-06-13 11:39:21,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:39:21,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:39:21,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:39:21,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:23,266.266 INFO    ] ================================================
[2026-06-13 11:39:23,283.283 INFO    ] Launching Daemon at Sat Jun 13 11:39:23 IST 2026
[2026-06-13 11:39:23,294.294 INFO    ] ================================================
[2026-06-13 11:39:23,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:23
[2026-06-13 11:39:23,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:24,091.091 INFO    ] Initializing speech engine...
[2026-06-13 11:39:24,095.095 INFO    ] 2026-06-13 11:39:24
[2026-06-13 11:39:24,315.315 INFO    ] 2026-06-13 11:39:24
[2026-06-13 11:39:24,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:24,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:24,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:24,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:24,714.714 INFO    ] time= 13/06/2026 11:39:24
[2026-06-13 11:39:24,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:24,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:24,836.836 INFO    ] No existing commands found in stream
[2026-06-13 11:39:29,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:39:29,850.850 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 11:39:31,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:39:31,260.260 INFO    ] Checking for system updates...
[2026-06-13 11:39:31,281.281 INFO    ] 200
[2026-06-13 11:39:31,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:31,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:39:31,314.314 INFO    ] No update needed
[2026-06-13 11:39:31,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 11:39:31,334.334 INFO    ] 200
[2026-06-13 11:39:31,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:31,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:39:31,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:39:31,383.383 INFO    ] No camera update needed
[2026-06-13 11:39:31,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:39:31,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:39:31,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:39:31,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:33,430.430 INFO    ] ================================================
[2026-06-13 11:39:33,445.445 INFO    ] Launching Daemon at Sat Jun 13 11:39:33 IST 2026
[2026-06-13 11:39:33,456.456 INFO    ] ================================================
[2026-06-13 11:39:34,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:34
[2026-06-13 11:39:34,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:34,877.877 INFO    ] Initializing speech engine...
[2026-06-13 11:39:34,886.886 INFO    ] 2026-06-13 11:39:34
[2026-06-13 11:39:35,132.132 INFO    ] 2026-06-13 11:39:35
[2026-06-13 11:39:35,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:35,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:35,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:35,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:35,422.422 INFO    ] time= 13/06/2026 11:39:35
[2026-06-13 11:39:35,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:35,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:35,602.602 INFO    ] No existing commands found in stream
[2026-06-13 11:39:40,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:39:40,630.630 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 11:39:44,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:39:44,249.249 INFO    ] Checking for system updates...
[2026-06-13 11:39:44,270.270 INFO    ] 200
[2026-06-13 11:39:44,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:44,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:44,303.303 INFO    ] No update needed
[2026-06-13 11:39:44,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 11:39:44,326.326 INFO    ] 200
[2026-06-13 11:39:44,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:44,351.351 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:39:44,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:44,386.386 INFO    ] No camera update needed
[2026-06-13 11:39:44,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:39:44,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:39:44,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:39:44,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:46,433.433 INFO    ] ================================================
[2026-06-13 11:39:46,449.449 INFO    ] Launching Daemon at Sat Jun 13 11:39:46 IST 2026
[2026-06-13 11:39:46,460.460 INFO    ] ================================================
[2026-06-13 11:39:46,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:46
[2026-06-13 11:39:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:47,283.283 INFO    ] Initializing speech engine...
[2026-06-13 11:39:47,288.288 INFO    ] 2026-06-13 11:39:47
[2026-06-13 11:39:47,495.495 INFO    ] 2026-06-13 11:39:47
[2026-06-13 11:39:47,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:47,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:47,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:47,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:47,907.907 INFO    ] time= 13/06/2026 11:39:47
[2026-06-13 11:39:47,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:47,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:48,021.021 INFO    ] No existing commands found in stream
[2026-06-13 11:39:53,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:39:53,033.033 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 11:39:55,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:39:55,734.734 INFO    ] Checking for system updates...
[2026-06-13 11:39:55,755.755 INFO    ] 200
[2026-06-13 11:39:55,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:55,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:55,788.788 INFO    ] No update needed
[2026-06-13 11:39:55,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 11:39:55,809.809 INFO    ] 200
[2026-06-13 11:39:55,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:39:55,834.834 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:39:55,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:39:55,872.872 INFO    ] No camera update needed
[2026-06-13 11:39:55,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:39:55,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:39:55,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:39:55,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:39:57,920.920 INFO    ] ================================================
[2026-06-13 11:39:57,935.935 INFO    ] Launching Daemon at Sat Jun 13 11:39:57 IST 2026
[2026-06-13 11:39:57,946.946 INFO    ] ================================================
[2026-06-13 11:39:58,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:39:58
[2026-06-13 11:39:58,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:39:58,742.742 INFO    ] Initializing speech engine...
[2026-06-13 11:39:58,750.750 INFO    ] 2026-06-13 11:39:58
[2026-06-13 11:39:58,976.976 INFO    ] 2026-06-13 11:39:58
[2026-06-13 11:39:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:39:59,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:39:59,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:39:59,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:39:59,361.361 INFO    ] time= 13/06/2026 11:39:59
[2026-06-13 11:39:59,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:39:59,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:39:59,538.538 INFO    ] No existing commands found in stream
[2026-06-13 11:40:04,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:40:04,552.552 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 11:40:08,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:40:08,392.392 INFO    ] Checking for system updates...
[2026-06-13 11:40:08,413.413 INFO    ] 200
[2026-06-13 11:40:08,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:08,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:08,449.449 INFO    ] No update needed
[2026-06-13 11:40:08,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 11:40:08,469.469 INFO    ] 200
[2026-06-13 11:40:08,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:08,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:40:08,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:08,536.536 INFO    ] No camera update needed
[2026-06-13 11:40:08,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:40:08,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:40:08,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:40:08,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:40:10,584.584 INFO    ] ================================================
[2026-06-13 11:40:10,599.599 INFO    ] Launching Daemon at Sat Jun 13 11:40:10 IST 2026
[2026-06-13 11:40:10,610.610 INFO    ] ================================================
[2026-06-13 11:40:10,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:40:10
[2026-06-13 11:40:11,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:40:11,417.417 INFO    ] Initializing speech engine...
[2026-06-13 11:40:11,430.430 INFO    ] 2026-06-13 11:40:11
[2026-06-13 11:40:11,637.637 INFO    ] 2026-06-13 11:40:11
[2026-06-13 11:40:11,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:40:11,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:40:11,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:40:11,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:40:12,049.049 INFO    ] time= 13/06/2026 11:40:11
[2026-06-13 11:40:12,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:40:12,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:40:12,145.145 INFO    ] No existing commands found in stream
[2026-06-13 11:40:17,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:40:17,156.156 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 11:40:20,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:40:20,604.604 INFO    ] Checking for system updates...
[2026-06-13 11:40:20,640.640 INFO    ] 200
[2026-06-13 11:40:20,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:20,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:40:20,699.699 INFO    ] No update needed
[2026-06-13 11:40:20,701.701 INFO    ] Checking for camera pi updates...
[2026-06-13 11:40:20,735.735 INFO    ] 200
[2026-06-13 11:40:20,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:20,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:40:20,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:40:20,822.822 INFO    ] No camera update needed
[2026-06-13 11:40:20,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:40:20,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:40:20,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:40:20,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:40:22,879.879 INFO    ] ================================================
[2026-06-13 11:40:22,894.894 INFO    ] Launching Daemon at Sat Jun 13 11:40:22 IST 2026
[2026-06-13 11:40:22,905.905 INFO    ] ================================================
[2026-06-13 11:40:23,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:40:23
[2026-06-13 11:40:23,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:40:23,732.732 INFO    ] Initializing speech engine...
[2026-06-13 11:40:23,737.737 INFO    ] 2026-06-13 11:40:23
[2026-06-13 11:40:23,942.942 INFO    ] 2026-06-13 11:40:23
[2026-06-13 11:40:23,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:40:24,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:40:24,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:40:24,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:40:24,345.345 INFO    ] time= 13/06/2026 11:40:24
[2026-06-13 11:40:24,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:40:24,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:40:24,461.461 INFO    ] No existing commands found in stream
[2026-06-13 11:40:29,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:40:29,473.473 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 11:40:31,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:40:31,718.718 INFO    ] Checking for system updates...
[2026-06-13 11:40:31,740.740 INFO    ] 200
[2026-06-13 11:40:31,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:31,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:31,774.774 INFO    ] No update needed
[2026-06-13 11:40:31,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 11:40:31,795.795 INFO    ] 200
[2026-06-13 11:40:31,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:31,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:40:31,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:31,867.867 INFO    ] No camera update needed
[2026-06-13 11:40:31,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:40:31,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:40:31,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:40:31,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:40:33,910.910 INFO    ] ================================================
[2026-06-13 11:40:33,925.925 INFO    ] Launching Daemon at Sat Jun 13 11:40:33 IST 2026
[2026-06-13 11:40:33,936.936 INFO    ] ================================================
[2026-06-13 11:40:34,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:40:34
[2026-06-13 11:40:34,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:40:34,767.767 INFO    ] Initializing speech engine...
[2026-06-13 11:40:34,773.773 INFO    ] 2026-06-13 11:40:34
[2026-06-13 11:40:34,979.979 INFO    ] 2026-06-13 11:40:34
[2026-06-13 11:40:35,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:40:35,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:40:35,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:40:35,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:40:35,396.396 INFO    ] time= 13/06/2026 11:40:35
[2026-06-13 11:40:35,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:40:35,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:40:35,501.501 INFO    ] No existing commands found in stream
[2026-06-13 11:40:40,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:40:40,514.514 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 11:40:43,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:40:43,084.084 INFO    ] Checking for system updates...
[2026-06-13 11:40:43,104.104 INFO    ] 200
[2026-06-13 11:40:43,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:43,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:40:43,138.138 INFO    ] No update needed
[2026-06-13 11:40:43,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 11:40:43,159.159 INFO    ] 200
[2026-06-13 11:40:43,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:43,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:40:43,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:40:43,226.226 INFO    ] No camera update needed
[2026-06-13 11:40:43,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:40:43,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:40:43,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:40:43,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:40:45,272.272 INFO    ] ================================================
[2026-06-13 11:40:45,287.287 INFO    ] Launching Daemon at Sat Jun 13 11:40:45 IST 2026
[2026-06-13 11:40:45,299.299 INFO    ] ================================================
[2026-06-13 11:40:45,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:40:45
[2026-06-13 11:40:45,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:40:46,142.142 INFO    ] Initializing speech engine...
[2026-06-13 11:40:46,153.153 INFO    ] 2026-06-13 11:40:46
[2026-06-13 11:40:46,361.361 INFO    ] 2026-06-13 11:40:46
[2026-06-13 11:40:46,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:40:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:40:46,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:40:46,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:40:46,781.781 INFO    ] time= 13/06/2026 11:40:46
[2026-06-13 11:40:46,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:40:46,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:40:46,878.878 INFO    ] No existing commands found in stream
[2026-06-13 11:40:51,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:40:51,892.892 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 11:40:54,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:40:54,125.125 INFO    ] Checking for system updates...
[2026-06-13 11:40:54,146.146 INFO    ] 200
[2026-06-13 11:40:54,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:54,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:54,179.179 INFO    ] No update needed
[2026-06-13 11:40:54,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 11:40:54,201.201 INFO    ] 200
[2026-06-13 11:40:54,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:40:54,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:40:54,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:40:54,264.264 INFO    ] No camera update needed
[2026-06-13 11:40:54,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:40:54,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:40:54,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:40:54,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:40:56,315.315 INFO    ] ================================================
[2026-06-13 11:40:56,331.331 INFO    ] Launching Daemon at Sat Jun 13 11:40:56 IST 2026
[2026-06-13 11:40:56,342.342 INFO    ] ================================================
[2026-06-13 11:40:56,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:40:56
[2026-06-13 11:40:57,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:40:57,151.151 INFO    ] Initializing speech engine...
[2026-06-13 11:40:57,155.155 INFO    ] 2026-06-13 11:40:57
[2026-06-13 11:40:57,383.383 INFO    ] 2026-06-13 11:40:57
[2026-06-13 11:40:57,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:40:57,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:40:57,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:40:57,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:40:57,811.811 INFO    ] time= 13/06/2026 11:40:57
[2026-06-13 11:40:57,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:40:57,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:40:57,936.936 INFO    ] No existing commands found in stream
[2026-06-13 11:41:02,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:41:02,951.951 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 11:41:06,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:41:06,750.750 INFO    ] Checking for system updates...
[2026-06-13 11:41:06,771.771 INFO    ] 200
[2026-06-13 11:41:06,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:06,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:06,804.804 INFO    ] No update needed
[2026-06-13 11:41:06,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 11:41:06,825.825 INFO    ] 200
[2026-06-13 11:41:06,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:06,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:41:06,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:06,891.891 INFO    ] No camera update needed
[2026-06-13 11:41:06,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:41:06,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:41:06,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:41:06,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:41:08,938.938 INFO    ] ================================================
[2026-06-13 11:41:08,954.954 INFO    ] Launching Daemon at Sat Jun 13 11:41:08 IST 2026
[2026-06-13 11:41:08,964.964 INFO    ] ================================================
[2026-06-13 11:41:09,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:41:09
[2026-06-13 11:41:09,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:41:09,780.780 INFO    ] Initializing speech engine...
[2026-06-13 11:41:09,788.788 INFO    ] 2026-06-13 11:41:09
[2026-06-13 11:41:10,006.006 INFO    ] 2026-06-13 11:41:09
[2026-06-13 11:41:10,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:41:10,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:41:10,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:41:10,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:41:10,431.431 INFO    ] time= 13/06/2026 11:41:10
[2026-06-13 11:41:10,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:41:10,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:41:10,556.556 INFO    ] No existing commands found in stream
[2026-06-13 11:41:15,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:41:15,570.570 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 11:41:16,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:41:16,518.518 INFO    ] Checking for system updates...
[2026-06-13 11:41:16,556.556 INFO    ] 200
[2026-06-13 11:41:16,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:16,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:16,598.598 INFO    ] No update needed
[2026-06-13 11:41:16,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 11:41:16,619.619 INFO    ] 200
[2026-06-13 11:41:16,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:16,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:41:16,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:41:16,783.783 INFO    ] No camera update needed
[2026-06-13 11:41:16,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:41:16,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:41:16,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:41:16,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:41:18,830.830 INFO    ] ================================================
[2026-06-13 11:41:18,845.845 INFO    ] Launching Daemon at Sat Jun 13 11:41:18 IST 2026
[2026-06-13 11:41:18,855.855 INFO    ] ================================================
[2026-06-13 11:41:19,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:41:19
[2026-06-13 11:41:19,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:41:19,712.712 INFO    ] Initializing speech engine...
[2026-06-13 11:41:19,723.723 INFO    ] 2026-06-13 11:41:19
[2026-06-13 11:41:19,931.931 INFO    ] 2026-06-13 11:41:19
[2026-06-13 11:41:19,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:41:20,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:41:20,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:41:20,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:41:20,324.324 INFO    ] time= 13/06/2026 11:41:20
[2026-06-13 11:41:20,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:41:20,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:41:20,444.444 INFO    ] No existing commands found in stream
[2026-06-13 11:41:25,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:41:25,462.462 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 11:41:29,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:41:29,242.242 INFO    ] Checking for system updates...
[2026-06-13 11:41:29,263.263 INFO    ] 200
[2026-06-13 11:41:29,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:29,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:29,296.296 INFO    ] No update needed
[2026-06-13 11:41:29,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 11:41:29,318.318 INFO    ] 200
[2026-06-13 11:41:29,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:29,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:41:29,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:29,390.390 INFO    ] No camera update needed
[2026-06-13 11:41:29,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:41:29,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:41:29,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:41:29,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:41:31,438.438 INFO    ] ================================================
[2026-06-13 11:41:31,453.453 INFO    ] Launching Daemon at Sat Jun 13 11:41:31 IST 2026
[2026-06-13 11:41:31,463.463 INFO    ] ================================================
[2026-06-13 11:41:31,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:41:31
[2026-06-13 11:41:32,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:41:32,307.307 INFO    ] Initializing speech engine...
[2026-06-13 11:41:32,322.322 INFO    ] 2026-06-13 11:41:32
[2026-06-13 11:41:32,519.519 INFO    ] 2026-06-13 11:41:32
[2026-06-13 11:41:32,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:41:32,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:41:32,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:41:32,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:41:32,981.981 INFO    ] time= 13/06/2026 11:41:32
[2026-06-13 11:41:33,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:41:33,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:41:33,080.080 INFO    ] No existing commands found in stream
[2026-06-13 11:41:38,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:41:38,093.093 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 11:41:41,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:41:41,121.121 INFO    ] Checking for system updates...
[2026-06-13 11:41:41,142.142 INFO    ] 200
[2026-06-13 11:41:41,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:41,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:41:41,175.175 INFO    ] No update needed
[2026-06-13 11:41:41,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 11:41:41,196.196 INFO    ] 200
[2026-06-13 11:41:41,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:41,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:41:41,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:41:41,257.257 INFO    ] No camera update needed
[2026-06-13 11:41:41,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:41:41,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:41:41,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:41:41,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:41:43,303.303 INFO    ] ================================================
[2026-06-13 11:41:43,319.319 INFO    ] Launching Daemon at Sat Jun 13 11:41:43 IST 2026
[2026-06-13 11:41:43,330.330 INFO    ] ================================================
[2026-06-13 11:41:43,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:41:43
[2026-06-13 11:41:44,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:41:44,606.606 INFO    ] Initializing speech engine...
[2026-06-13 11:41:44,610.610 INFO    ] 2026-06-13 11:41:44
[2026-06-13 11:41:44,821.821 INFO    ] 2026-06-13 11:41:44
[2026-06-13 11:41:44,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:41:44,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:41:44,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:41:45,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:41:45,091.091 INFO    ] time= 13/06/2026 11:41:45
[2026-06-13 11:41:45,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:41:45,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:41:45,197.197 INFO    ] No existing commands found in stream
[2026-06-13 11:41:50,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:41:50,234.234 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 11:41:52,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:41:52,714.714 INFO    ] Checking for system updates...
[2026-06-13 11:41:52,735.735 INFO    ] 200
[2026-06-13 11:41:52,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:52,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:52,769.769 INFO    ] No update needed
[2026-06-13 11:41:52,771.771 INFO    ] Checking for camera pi updates...
[2026-06-13 11:41:52,793.793 INFO    ] 200
[2026-06-13 11:41:52,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:41:52,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:41:52,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:41:52,863.863 INFO    ] No camera update needed
[2026-06-13 11:41:52,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:41:52,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:41:52,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:41:52,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:41:54,910.910 INFO    ] ================================================
[2026-06-13 11:41:54,926.926 INFO    ] Launching Daemon at Sat Jun 13 11:41:54 IST 2026
[2026-06-13 11:41:54,936.936 INFO    ] ================================================
[2026-06-13 11:41:55,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:41:55
[2026-06-13 11:41:55,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:41:55,771.771 INFO    ] Initializing speech engine...
[2026-06-13 11:41:55,776.776 INFO    ] 2026-06-13 11:41:55
[2026-06-13 11:41:55,985.985 INFO    ] 2026-06-13 11:41:55
[2026-06-13 11:41:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:41:56,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:41:56,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:41:56,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:41:56,405.405 INFO    ] time= 13/06/2026 11:41:56
[2026-06-13 11:41:56,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:41:56,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:41:56,503.503 INFO    ] No existing commands found in stream
[2026-06-13 11:42:01,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:42:01,533.533 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 11:42:05,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:42:05,265.265 INFO    ] Checking for system updates...
[2026-06-13 11:42:05,286.286 INFO    ] 200
[2026-06-13 11:42:05,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:05,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:42:05,320.320 INFO    ] No update needed
[2026-06-13 11:42:05,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 11:42:05,341.341 INFO    ] 200
[2026-06-13 11:42:05,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:05,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:42:05,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:42:05,403.403 INFO    ] No camera update needed
[2026-06-13 11:42:05,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:42:05,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:05,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:05,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:07,450.450 INFO    ] ================================================
[2026-06-13 11:42:07,465.465 INFO    ] Launching Daemon at Sat Jun 13 11:42:07 IST 2026
[2026-06-13 11:42:07,476.476 INFO    ] ================================================
[2026-06-13 11:42:07,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:07
[2026-06-13 11:42:08,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:08,260.260 INFO    ] Initializing speech engine...
[2026-06-13 11:42:08,263.263 INFO    ] 2026-06-13 11:42:08
[2026-06-13 11:42:08,493.493 INFO    ] 2026-06-13 11:42:08
[2026-06-13 11:42:08,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:08,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:42:08,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:42:08,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:42:08,915.915 INFO    ] time= 13/06/2026 11:42:08
[2026-06-13 11:42:08,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:42:08,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:42:09,030.030 INFO    ] No existing commands found in stream
[2026-06-13 11:42:14,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:42:14,044.044 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 11:42:15,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:42:15,619.619 INFO    ] Checking for system updates...
[2026-06-13 11:42:15,640.640 INFO    ] 200
[2026-06-13 11:42:15,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:15,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:42:15,673.673 INFO    ] No update needed
[2026-06-13 11:42:15,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 11:42:15,694.694 INFO    ] 200
[2026-06-13 11:42:15,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:15,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:42:15,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:42:15,761.761 INFO    ] No camera update needed
[2026-06-13 11:42:15,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:42:15,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:15,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:15,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:17,809.809 INFO    ] ================================================
[2026-06-13 11:42:17,823.823 INFO    ] Launching Daemon at Sat Jun 13 11:42:17 IST 2026
[2026-06-13 11:42:17,834.834 INFO    ] ================================================
[2026-06-13 11:42:18,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:18
[2026-06-13 11:42:18,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:18,638.638 INFO    ] Initializing speech engine...
[2026-06-13 11:42:18,643.643 INFO    ] 2026-06-13 11:42:18
[2026-06-13 11:42:18,851.851 INFO    ] 2026-06-13 11:42:18
[2026-06-13 11:42:18,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:18,933.933 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 11:42:18,985.985 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 11:42:18,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:19,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:19,097.097 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 11:42:19,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:21,156.156 INFO    ] ================================================
[2026-06-13 11:42:21,171.171 INFO    ] Launching Daemon at Sat Jun 13 11:42:21 IST 2026
[2026-06-13 11:42:21,182.182 INFO    ] ================================================
[2026-06-13 11:42:21,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:21
[2026-06-13 11:42:21,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:21,972.972 INFO    ] Initializing speech engine...
[2026-06-13 11:42:21,983.983 INFO    ] 2026-06-13 11:42:21
[2026-06-13 11:42:22,192.192 INFO    ] 2026-06-13 11:42:22
[2026-06-13 11:42:22,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:22,275.275 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 11:42:22,327.327 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 11:42:22,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:22,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:22,441.441 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 11:42:22,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:24,509.509 INFO    ] ================================================
[2026-06-13 11:42:24,524.524 INFO    ] Launching Daemon at Sat Jun 13 11:42:24 IST 2026
[2026-06-13 11:42:24,535.535 INFO    ] ================================================
[2026-06-13 11:42:24,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:24
[2026-06-13 11:42:25,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:25,345.345 INFO    ] Initializing speech engine...
[2026-06-13 11:42:25,350.350 INFO    ] 2026-06-13 11:42:25
[2026-06-13 11:42:25,555.555 INFO    ] 2026-06-13 11:42:25
[2026-06-13 11:42:25,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:25,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:42:25,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:42:25,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:42:25,961.961 INFO    ] time= 13/06/2026 11:42:25
[2026-06-13 11:42:26,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:42:26,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:42:26,206.206 INFO    ] No existing commands found in stream
[2026-06-13 11:42:31,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:42:31,232.232 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 11:42:33,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:42:33,629.629 INFO    ] Checking for system updates...
[2026-06-13 11:42:33,650.650 INFO    ] 200
[2026-06-13 11:42:33,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:33,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:42:33,683.683 INFO    ] No update needed
[2026-06-13 11:42:33,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 11:42:33,703.703 INFO    ] 200
[2026-06-13 11:42:33,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:33,730.730 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:42:33,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:42:33,873.873 INFO    ] No camera update needed
[2026-06-13 11:42:33,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:42:33,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:33,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:33,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:35,920.920 INFO    ] ================================================
[2026-06-13 11:42:35,935.935 INFO    ] Launching Daemon at Sat Jun 13 11:42:35 IST 2026
[2026-06-13 11:42:35,946.946 INFO    ] ================================================
[2026-06-13 11:42:36,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:36
[2026-06-13 11:42:36,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:36,818.818 INFO    ] Initializing speech engine...
[2026-06-13 11:42:36,821.821 INFO    ] 2026-06-13 11:42:36
[2026-06-13 11:42:37,041.041 INFO    ] 2026-06-13 11:42:37
[2026-06-13 11:42:37,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:37,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:42:37,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:42:37,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:42:37,400.400 INFO    ] time= 13/06/2026 11:42:37
[2026-06-13 11:42:37,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:42:37,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:42:37,521.521 INFO    ] No existing commands found in stream
[2026-06-13 11:42:42,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:42:42,546.546 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 11:42:45,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:42:45,954.954 INFO    ] Checking for system updates...
[2026-06-13 11:42:45,976.976 INFO    ] 200
[2026-06-13 11:42:45,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:46,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:42:46,010.010 INFO    ] No update needed
[2026-06-13 11:42:46,011.011 INFO    ] Checking for camera pi updates...
[2026-06-13 11:42:46,033.033 INFO    ] 200
[2026-06-13 11:42:46,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:46,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:42:46,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:42:46,103.103 INFO    ] No camera update needed
[2026-06-13 11:42:46,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:42:46,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:46,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:46,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:48,151.151 INFO    ] ================================================
[2026-06-13 11:42:48,166.166 INFO    ] Launching Daemon at Sat Jun 13 11:42:48 IST 2026
[2026-06-13 11:42:48,176.176 INFO    ] ================================================
[2026-06-13 11:42:48,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:48
[2026-06-13 11:42:48,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:48,985.985 INFO    ] Initializing speech engine...
[2026-06-13 11:42:48,990.990 INFO    ] 2026-06-13 11:42:48
[2026-06-13 11:42:49,195.195 INFO    ] 2026-06-13 11:42:49
[2026-06-13 11:42:49,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:49,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:42:49,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:42:49,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:42:49,594.594 INFO    ] time= 13/06/2026 11:42:49
[2026-06-13 11:42:49,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:42:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:42:49,716.716 INFO    ] No existing commands found in stream
[2026-06-13 11:42:54,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:42:54,728.728 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 11:42:55,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:42:55,554.554 INFO    ] Checking for system updates...
[2026-06-13 11:42:55,575.575 INFO    ] 200
[2026-06-13 11:42:55,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:55,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:42:55,608.608 INFO    ] No update needed
[2026-06-13 11:42:55,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 11:42:55,629.629 INFO    ] 200
[2026-06-13 11:42:55,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:42:55,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:42:55,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:42:55,700.700 INFO    ] No camera update needed
[2026-06-13 11:42:55,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:42:55,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:42:55,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:42:55,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:42:57,747.747 INFO    ] ================================================
[2026-06-13 11:42:57,762.762 INFO    ] Launching Daemon at Sat Jun 13 11:42:57 IST 2026
[2026-06-13 11:42:57,774.774 INFO    ] ================================================
[2026-06-13 11:42:58,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:42:58
[2026-06-13 11:42:58,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:42:58,579.579 INFO    ] Initializing speech engine...
[2026-06-13 11:42:58,583.583 INFO    ] 2026-06-13 11:42:58
[2026-06-13 11:42:58,786.786 INFO    ] 2026-06-13 11:42:58
[2026-06-13 11:42:58,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:42:58,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:42:59,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:42:59,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:42:59,191.191 INFO    ] time= 13/06/2026 11:42:59
[2026-06-13 11:42:59,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:42:59,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:42:59,300.300 INFO    ] No existing commands found in stream
[2026-06-13 11:43:04,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:43:04,316.316 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 11:43:07,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:43:07,440.440 INFO    ] Checking for system updates...
[2026-06-13 11:43:07,460.460 INFO    ] 200
[2026-06-13 11:43:07,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:07,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:07,494.494 INFO    ] No update needed
[2026-06-13 11:43:07,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 11:43:07,515.515 INFO    ] 200
[2026-06-13 11:43:07,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:07,539.539 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:43:07,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:07,585.585 INFO    ] No camera update needed
[2026-06-13 11:43:07,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:43:07,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:43:07,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:43:07,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:43:09,633.633 INFO    ] ================================================
[2026-06-13 11:43:09,648.648 INFO    ] Launching Daemon at Sat Jun 13 11:43:09 IST 2026
[2026-06-13 11:43:09,660.660 INFO    ] ================================================
[2026-06-13 11:43:10,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:43:10
[2026-06-13 11:43:10,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:43:10,467.467 INFO    ] Initializing speech engine...
[2026-06-13 11:43:10,475.475 INFO    ] 2026-06-13 11:43:10
[2026-06-13 11:43:10,682.682 INFO    ] 2026-06-13 11:43:10
[2026-06-13 11:43:10,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:43:10,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:43:10,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:43:11,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:43:11,051.051 INFO    ] time= 13/06/2026 11:43:11
[2026-06-13 11:43:11,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:43:11,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:43:11,161.161 INFO    ] No existing commands found in stream
[2026-06-13 11:43:16,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:43:16,176.176 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 11:43:18,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:43:18,964.964 INFO    ] Checking for system updates...
[2026-06-13 11:43:18,985.985 INFO    ] 200
[2026-06-13 11:43:18,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:19,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:43:19,018.018 INFO    ] No update needed
[2026-06-13 11:43:19,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 11:43:19,041.041 INFO    ] 200
[2026-06-13 11:43:19,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:19,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:43:19,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:19,109.109 INFO    ] No camera update needed
[2026-06-13 11:43:19,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:43:19,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:43:19,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:43:19,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:43:21,157.157 INFO    ] ================================================
[2026-06-13 11:43:21,173.173 INFO    ] Launching Daemon at Sat Jun 13 11:43:21 IST 2026
[2026-06-13 11:43:21,185.185 INFO    ] ================================================
[2026-06-13 11:43:21,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:43:21
[2026-06-13 11:43:21,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:43:22,061.061 INFO    ] Initializing speech engine...
[2026-06-13 11:43:22,065.065 INFO    ] 2026-06-13 11:43:22
[2026-06-13 11:43:22,261.261 INFO    ] 2026-06-13 11:43:22
[2026-06-13 11:43:22,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:43:22,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:43:22,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:43:22,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:43:22,706.706 INFO    ] time= 13/06/2026 11:43:22
[2026-06-13 11:43:22,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:43:22,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:43:22,812.812 INFO    ] No existing commands found in stream
[2026-06-13 11:43:27,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:43:27,830.830 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 11:43:29,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:43:29,464.464 INFO    ] Checking for system updates...
[2026-06-13 11:43:29,485.485 INFO    ] 200
[2026-06-13 11:43:29,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:29,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:29,519.519 INFO    ] No update needed
[2026-06-13 11:43:29,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 11:43:29,540.540 INFO    ] 200
[2026-06-13 11:43:29,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:29,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:43:29,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:29,607.607 INFO    ] No camera update needed
[2026-06-13 11:43:29,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:43:29,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:43:29,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:43:29,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:43:31,646.646 INFO    ] ================================================
[2026-06-13 11:43:31,661.661 INFO    ] Launching Daemon at Sat Jun 13 11:43:31 IST 2026
[2026-06-13 11:43:31,672.672 INFO    ] ================================================
[2026-06-13 11:43:32,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:43:32
[2026-06-13 11:43:32,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:43:32,630.630 INFO    ] Initializing speech engine...
[2026-06-13 11:43:32,635.635 INFO    ] 2026-06-13 11:43:32
[2026-06-13 11:43:32,841.841 INFO    ] 2026-06-13 11:43:32
[2026-06-13 11:43:32,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:43:32,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:43:33,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:43:33,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:43:33,259.259 INFO    ] time= 13/06/2026 11:43:33
[2026-06-13 11:43:33,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:43:33,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:43:33,435.435 INFO    ] No existing commands found in stream
[2026-06-13 11:43:38,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:43:38,452.452 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 11:43:40,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:43:40,400.400 INFO    ] Checking for system updates...
[2026-06-13 11:43:40,422.422 INFO    ] 200
[2026-06-13 11:43:40,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:40,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:43:40,458.458 INFO    ] No update needed
[2026-06-13 11:43:40,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 11:43:40,479.479 INFO    ] 200
[2026-06-13 11:43:40,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:40,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:43:40,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:43:40,544.544 INFO    ] No camera update needed
[2026-06-13 11:43:40,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:43:40,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:43:40,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:43:40,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:43:42,592.592 INFO    ] ================================================
[2026-06-13 11:43:42,607.607 INFO    ] Launching Daemon at Sat Jun 13 11:43:42 IST 2026
[2026-06-13 11:43:42,622.622 INFO    ] ================================================
[2026-06-13 11:43:42,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:43:42
[2026-06-13 11:43:43,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:43:43,425.425 INFO    ] Initializing speech engine...
[2026-06-13 11:43:43,430.430 INFO    ] 2026-06-13 11:43:43
[2026-06-13 11:43:43,622.622 INFO    ] 2026-06-13 11:43:43
[2026-06-13 11:43:43,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:43:43,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:43:43,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:43:44,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:43:44,079.079 INFO    ] time= 13/06/2026 11:43:44
[2026-06-13 11:43:44,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:43:44,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:43:44,222.222 INFO    ] No existing commands found in stream
[2026-06-13 11:43:49,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:43:49,236.236 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 11:43:50,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:43:50,213.213 INFO    ] Checking for system updates...
[2026-06-13 11:43:50,235.235 INFO    ] 200
[2026-06-13 11:43:50,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:50,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:43:50,269.269 INFO    ] No update needed
[2026-06-13 11:43:50,270.270 INFO    ] Checking for camera pi updates...
[2026-06-13 11:43:50,290.290 INFO    ] 200
[2026-06-13 11:43:50,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:43:50,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:43:50,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:43:50,357.357 INFO    ] No camera update needed
[2026-06-13 11:43:50,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:43:50,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:43:50,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:43:50,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:43:52,414.414 INFO    ] ================================================
[2026-06-13 11:43:52,429.429 INFO    ] Launching Daemon at Sat Jun 13 11:43:52 IST 2026
[2026-06-13 11:43:52,439.439 INFO    ] ================================================
[2026-06-13 11:43:53,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:43:53
[2026-06-13 11:43:53,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:43:53,685.685 INFO    ] Initializing speech engine...
[2026-06-13 11:43:53,690.690 INFO    ] 2026-06-13 11:43:53
[2026-06-13 11:43:53,892.892 INFO    ] 2026-06-13 11:43:53
[2026-06-13 11:43:53,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:43:57,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:43:57,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:43:57,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:43:57,221.221 INFO    ] time= 13/06/2026 11:43:57
[2026-06-13 11:43:57,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:43:57,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:43:57,268.268 INFO    ] No existing commands found in stream
[2026-06-13 11:44:02,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:02,279.279 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 11:44:03,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:44:03,203.203 INFO    ] Checking for system updates...
[2026-06-13 11:44:03,223.223 INFO    ] 200
[2026-06-13 11:44:03,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:03,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:44:03,259.259 INFO    ] No update needed
[2026-06-13 11:44:03,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:03,279.279 INFO    ] 200
[2026-06-13 11:44:03,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:03,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:03,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:44:03,350.350 INFO    ] No camera update needed
[2026-06-13 11:44:03,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:03,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:03,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:03,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:44:05,399.399 INFO    ] ================================================
[2026-06-13 11:44:05,414.414 INFO    ] Launching Daemon at Sat Jun 13 11:44:05 IST 2026
[2026-06-13 11:44:05,425.425 INFO    ] ================================================
[2026-06-13 11:44:05,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:44:05
[2026-06-13 11:44:06,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:44:06,278.278 INFO    ] Initializing speech engine...
[2026-06-13 11:44:06,284.284 INFO    ] 2026-06-13 11:44:06
[2026-06-13 11:44:06,492.492 INFO    ] 2026-06-13 11:44:06
[2026-06-13 11:44:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:44:06,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:44:06,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:44:06,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:44:06,914.914 INFO    ] time= 13/06/2026 11:44:06
[2026-06-13 11:44:06,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:44:06,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:44:07,018.018 INFO    ] No existing commands found in stream
[2026-06-13 11:44:12,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:12,036.036 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 11:44:12,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:44:12,904.904 INFO    ] Checking for system updates...
[2026-06-13 11:44:12,924.924 INFO    ] 200
[2026-06-13 11:44:12,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:12,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:12,960.960 INFO    ] No update needed
[2026-06-13 11:44:12,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:12,981.981 INFO    ] 200
[2026-06-13 11:44:12,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:13,007.007 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:13,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:13,057.057 INFO    ] No camera update needed
[2026-06-13 11:44:13,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:13,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:13,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:13,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:44:15,104.104 INFO    ] ================================================
[2026-06-13 11:44:15,120.120 INFO    ] Launching Daemon at Sat Jun 13 11:44:15 IST 2026
[2026-06-13 11:44:15,130.130 INFO    ] ================================================
[2026-06-13 11:44:15,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:44:15
[2026-06-13 11:44:15,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:44:15,907.907 INFO    ] Initializing speech engine...
[2026-06-13 11:44:15,920.920 INFO    ] 2026-06-13 11:44:15
[2026-06-13 11:44:16,139.139 INFO    ] 2026-06-13 11:44:16
[2026-06-13 11:44:16,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:44:16,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:44:16,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:44:16,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:44:16,516.516 INFO    ] time= 13/06/2026 11:44:16
[2026-06-13 11:44:16,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:44:16,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:44:16,698.698 INFO    ] No existing commands found in stream
[2026-06-13 11:44:21,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:21,712.712 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 11:44:25,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:44:25,534.534 INFO    ] Checking for system updates...
[2026-06-13 11:44:25,555.555 INFO    ] 200
[2026-06-13 11:44:25,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:25,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:25,589.589 INFO    ] No update needed
[2026-06-13 11:44:25,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:25,610.610 INFO    ] 200
[2026-06-13 11:44:25,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:25,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:25,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:25,679.679 INFO    ] No camera update needed
[2026-06-13 11:44:25,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:25,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:25,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:25,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:44:27,726.726 INFO    ] ================================================
[2026-06-13 11:44:27,741.741 INFO    ] Launching Daemon at Sat Jun 13 11:44:27 IST 2026
[2026-06-13 11:44:27,752.752 INFO    ] ================================================
[2026-06-13 11:44:28,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:44:28
[2026-06-13 11:44:28,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:44:28,600.600 INFO    ] Initializing speech engine...
[2026-06-13 11:44:28,610.610 INFO    ] 2026-06-13 11:44:28
[2026-06-13 11:44:28,819.819 INFO    ] 2026-06-13 11:44:28
[2026-06-13 11:44:28,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:44:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:44:29,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:44:29,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:44:29,206.206 INFO    ] time= 13/06/2026 11:44:29
[2026-06-13 11:44:29,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:44:29,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:44:29,329.329 INFO    ] No existing commands found in stream
[2026-06-13 11:44:34,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:34,343.343 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 11:44:36,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:44:36,404.404 INFO    ] Checking for system updates...
[2026-06-13 11:44:36,427.427 INFO    ] 200
[2026-06-13 11:44:36,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:36,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:44:36,461.461 INFO    ] No update needed
[2026-06-13 11:44:36,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:36,483.483 INFO    ] 200
[2026-06-13 11:44:36,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:36,507.507 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:36,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:44:36,647.647 INFO    ] No camera update needed
[2026-06-13 11:44:36,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:36,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:36,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:36,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:44:38,694.694 INFO    ] ================================================
[2026-06-13 11:44:38,710.710 INFO    ] Launching Daemon at Sat Jun 13 11:44:38 IST 2026
[2026-06-13 11:44:38,721.721 INFO    ] ================================================
[2026-06-13 11:44:39,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:44:39
[2026-06-13 11:44:39,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:44:39,499.499 INFO    ] Initializing speech engine...
[2026-06-13 11:44:39,502.502 INFO    ] 2026-06-13 11:44:39
[2026-06-13 11:44:39,719.719 INFO    ] 2026-06-13 11:44:39
[2026-06-13 11:44:39,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:44:39,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:44:39,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:44:40,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:44:40,127.127 INFO    ] time= 13/06/2026 11:44:40
[2026-06-13 11:44:40,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:44:40,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:44:40,230.230 INFO    ] No existing commands found in stream
[2026-06-13 11:44:45,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:45,244.244 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 11:44:49,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:44:49,100.100 INFO    ] Checking for system updates...
[2026-06-13 11:44:49,121.121 INFO    ] 200
[2026-06-13 11:44:49,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:49,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:49,154.154 INFO    ] No update needed
[2026-06-13 11:44:49,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:49,176.176 INFO    ] 200
[2026-06-13 11:44:49,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:49,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:49,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:49,241.241 INFO    ] No camera update needed
[2026-06-13 11:44:49,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:49,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:49,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:49,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:44:51,290.290 INFO    ] ================================================
[2026-06-13 11:44:51,307.307 INFO    ] Launching Daemon at Sat Jun 13 11:44:51 IST 2026
[2026-06-13 11:44:51,317.317 INFO    ] ================================================
[2026-06-13 11:44:51,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:44:51
[2026-06-13 11:44:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:44:52,130.130 INFO    ] Initializing speech engine...
[2026-06-13 11:44:52,142.142 INFO    ] 2026-06-13 11:44:52
[2026-06-13 11:44:52,351.351 INFO    ] 2026-06-13 11:44:52
[2026-06-13 11:44:52,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:44:52,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:44:52,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:44:52,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:44:52,752.752 INFO    ] time= 13/06/2026 11:44:52
[2026-06-13 11:44:52,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:44:52,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:44:52,865.865 INFO    ] No existing commands found in stream
[2026-06-13 11:44:57,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:44:57,879.879 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 11:44:58,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:44:58,700.700 INFO    ] Checking for system updates...
[2026-06-13 11:44:58,721.721 INFO    ] 200
[2026-06-13 11:44:58,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:58,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:58,760.760 INFO    ] No update needed
[2026-06-13 11:44:58,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 11:44:58,786.786 INFO    ] 200
[2026-06-13 11:44:58,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:44:58,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:44:58,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:44:58,859.859 INFO    ] No camera update needed
[2026-06-13 11:44:58,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:44:58,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:44:58,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:44:58,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:00,905.905 INFO    ] ================================================
[2026-06-13 11:45:00,921.921 INFO    ] Launching Daemon at Sat Jun 13 11:45:00 IST 2026
[2026-06-13 11:45:00,933.933 INFO    ] ================================================
[2026-06-13 11:45:01,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:01
[2026-06-13 11:45:01,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:01,732.732 INFO    ] Initializing speech engine...
[2026-06-13 11:45:01,742.742 INFO    ] 2026-06-13 11:45:01
[2026-06-13 11:45:01,948.948 INFO    ] 2026-06-13 11:45:01
[2026-06-13 11:45:01,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:45:02,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:45:02,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:45:02,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:45:02,393.393 INFO    ] time= 13/06/2026 11:45:02
[2026-06-13 11:45:02,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:45:02,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:45:02,570.570 INFO    ] No existing commands found in stream
[2026-06-13 11:45:07,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:45:07,590.590 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 11:45:11,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:45:11,031.031 INFO    ] Checking for system updates...
[2026-06-13 11:45:11,053.053 INFO    ] 200
[2026-06-13 11:45:11,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:11,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:11,086.086 INFO    ] No update needed
[2026-06-13 11:45:11,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 11:45:11,107.107 INFO    ] 200
[2026-06-13 11:45:11,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:11,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:45:11,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:11,173.173 INFO    ] No camera update needed
[2026-06-13 11:45:11,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:45:11,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:45:11,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:45:11,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:13,220.220 INFO    ] ================================================
[2026-06-13 11:45:13,235.235 INFO    ] Launching Daemon at Sat Jun 13 11:45:13 IST 2026
[2026-06-13 11:45:13,246.246 INFO    ] ================================================
[2026-06-13 11:45:13,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:13
[2026-06-13 11:45:13,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:14,033.033 INFO    ] Initializing speech engine...
[2026-06-13 11:45:14,037.037 INFO    ] 2026-06-13 11:45:14
[2026-06-13 11:45:14,242.242 INFO    ] 2026-06-13 11:45:14
[2026-06-13 11:45:14,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:45:14,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:45:14,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:45:14,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:45:14,665.665 INFO    ] time= 13/06/2026 11:45:14
[2026-06-13 11:45:14,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:45:14,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:45:14,826.826 INFO    ] No existing commands found in stream
[2026-06-13 11:45:19,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:45:19,854.854 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 11:45:21,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:45:21,654.654 INFO    ] Checking for system updates...
[2026-06-13 11:45:21,676.676 INFO    ] 200
[2026-06-13 11:45:21,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:21,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:45:21,709.709 INFO    ] No update needed
[2026-06-13 11:45:21,710.710 INFO    ] Checking for camera pi updates...
[2026-06-13 11:45:21,730.730 INFO    ] 200
[2026-06-13 11:45:21,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:21,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:45:21,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:45:21,797.797 INFO    ] No camera update needed
[2026-06-13 11:45:21,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:45:21,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:45:21,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:45:21,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:23,847.847 INFO    ] ================================================
[2026-06-13 11:45:23,863.863 INFO    ] Launching Daemon at Sat Jun 13 11:45:23 IST 2026
[2026-06-13 11:45:23,874.874 INFO    ] ================================================
[2026-06-13 11:45:24,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:24
[2026-06-13 11:45:24,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:24,669.669 INFO    ] Initializing speech engine...
[2026-06-13 11:45:24,674.674 INFO    ] 2026-06-13 11:45:24
[2026-06-13 11:45:24,878.878 INFO    ] 2026-06-13 11:45:24
[2026-06-13 11:45:24,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:45:25,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:45:25,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:45:25,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:45:25,286.286 INFO    ] time= 13/06/2026 11:45:25
[2026-06-13 11:45:25,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:45:25,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:45:25,390.390 INFO    ] No existing commands found in stream
[2026-06-13 11:45:30,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:45:30,403.403 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 11:45:35,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:45:35,103.103 INFO    ] Checking for system updates...
[2026-06-13 11:45:35,125.125 INFO    ] 200
[2026-06-13 11:45:35,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:35,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:35,161.161 INFO    ] No update needed
[2026-06-13 11:45:35,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 11:45:35,181.181 INFO    ] 200
[2026-06-13 11:45:35,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:35,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:45:35,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:35,257.257 INFO    ] No camera update needed
[2026-06-13 11:45:35,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:45:35,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:45:35,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:45:35,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:37,316.316 INFO    ] ================================================
[2026-06-13 11:45:37,332.332 INFO    ] Launching Daemon at Sat Jun 13 11:45:37 IST 2026
[2026-06-13 11:45:37,345.345 INFO    ] ================================================
[2026-06-13 11:45:37,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:37
[2026-06-13 11:45:38,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:38,211.211 INFO    ] Initializing speech engine...
[2026-06-13 11:45:38,217.217 INFO    ] 2026-06-13 11:45:38
[2026-06-13 11:45:38,427.427 INFO    ] 2026-06-13 11:45:38
[2026-06-13 11:45:38,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:45:38,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:45:38,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:45:38,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:45:38,854.854 INFO    ] time= 13/06/2026 11:45:38
[2026-06-13 11:45:38,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:45:38,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:45:38,979.979 INFO    ] No existing commands found in stream
[2026-06-13 11:45:43,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:45:43,992.992 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 11:45:46,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:45:46,745.745 INFO    ] Checking for system updates...
[2026-06-13 11:45:46,768.768 INFO    ] 200
[2026-06-13 11:45:46,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:46,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:46,805.805 INFO    ] No update needed
[2026-06-13 11:45:46,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 11:45:46,828.828 INFO    ] 200
[2026-06-13 11:45:46,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:46,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:45:46,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:46,903.903 INFO    ] No camera update needed
[2026-06-13 11:45:46,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:45:46,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:45:46,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:45:46,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:48,950.950 INFO    ] ================================================
[2026-06-13 11:45:48,965.965 INFO    ] Launching Daemon at Sat Jun 13 11:45:48 IST 2026
[2026-06-13 11:45:48,977.977 INFO    ] ================================================
[2026-06-13 11:45:49,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:49
[2026-06-13 11:45:49,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:49,770.770 INFO    ] Initializing speech engine...
[2026-06-13 11:45:49,778.778 INFO    ] 2026-06-13 11:45:49
[2026-06-13 11:45:49,990.990 INFO    ] 2026-06-13 11:45:49
[2026-06-13 11:45:50,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:45:50,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:45:50,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:45:50,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:45:50,402.402 INFO    ] time= 13/06/2026 11:45:50
[2026-06-13 11:45:50,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:45:50,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:45:50,514.514 INFO    ] No existing commands found in stream
[2026-06-13 11:45:55,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:45:55,527.527 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 11:45:56,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:45:56,669.669 INFO    ] Checking for system updates...
[2026-06-13 11:45:56,691.691 INFO    ] 200
[2026-06-13 11:45:56,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:56,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:56,724.724 INFO    ] No update needed
[2026-06-13 11:45:56,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 11:45:56,744.744 INFO    ] 200
[2026-06-13 11:45:56,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:45:56,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:45:56,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:45:56,811.811 INFO    ] No camera update needed
[2026-06-13 11:45:56,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:45:56,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:45:56,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:45:56,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:45:58,859.859 INFO    ] ================================================
[2026-06-13 11:45:58,875.875 INFO    ] Launching Daemon at Sat Jun 13 11:45:58 IST 2026
[2026-06-13 11:45:58,887.887 INFO    ] ================================================
[2026-06-13 11:45:59,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:45:59
[2026-06-13 11:45:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:45:59,674.674 INFO    ] Initializing speech engine...
[2026-06-13 11:45:59,679.679 INFO    ] 2026-06-13 11:45:59
[2026-06-13 11:45:59,887.887 INFO    ] 2026-06-13 11:45:59
[2026-06-13 11:45:59,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:00,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:00,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:00,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:00,299.299 INFO    ] time= 13/06/2026 11:46:00
[2026-06-13 11:46:00,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:00,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:00,412.412 INFO    ] No existing commands found in stream
[2026-06-13 11:46:05,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:46:05,423.423 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 11:46:06,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:46:06,639.639 INFO    ] Checking for system updates...
[2026-06-13 11:46:06,661.661 INFO    ] 200
[2026-06-13 11:46:06,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:06,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:06,694.694 INFO    ] No update needed
[2026-06-13 11:46:06,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 11:46:06,715.715 INFO    ] 200
[2026-06-13 11:46:06,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:06,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:46:06,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:06,768.768 INFO    ] No camera update needed
[2026-06-13 11:46:06,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:46:06,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:46:06,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:46:06,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:46:08,817.817 INFO    ] ================================================
[2026-06-13 11:46:08,833.833 INFO    ] Launching Daemon at Sat Jun 13 11:46:08 IST 2026
[2026-06-13 11:46:08,845.845 INFO    ] ================================================
[2026-06-13 11:46:09,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:46:09
[2026-06-13 11:46:09,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:46:09,629.629 INFO    ] Initializing speech engine...
[2026-06-13 11:46:09,633.633 INFO    ] 2026-06-13 11:46:09
[2026-06-13 11:46:09,840.840 INFO    ] 2026-06-13 11:46:09
[2026-06-13 11:46:09,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:10,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:10,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:10,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:10,231.231 INFO    ] time= 13/06/2026 11:46:10
[2026-06-13 11:46:10,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:10,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:10,364.364 INFO    ] No existing commands found in stream
[2026-06-13 11:46:15,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:46:15,377.377 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 11:46:19,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:46:19,316.316 INFO    ] Checking for system updates...
[2026-06-13 11:46:19,336.336 INFO    ] 200
[2026-06-13 11:46:19,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:19,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:19,372.372 INFO    ] No update needed
[2026-06-13 11:46:19,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 11:46:19,394.394 INFO    ] 200
[2026-06-13 11:46:19,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:19,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:46:19,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:19,463.463 INFO    ] No camera update needed
[2026-06-13 11:46:19,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:46:19,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:46:19,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:46:19,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:46:21,511.511 INFO    ] ================================================
[2026-06-13 11:46:21,526.526 INFO    ] Launching Daemon at Sat Jun 13 11:46:21 IST 2026
[2026-06-13 11:46:21,536.536 INFO    ] ================================================
[2026-06-13 11:46:21,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:46:21
[2026-06-13 11:46:22,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:46:22,867.867 INFO    ] Initializing speech engine...
[2026-06-13 11:46:22,876.876 INFO    ] 2026-06-13 11:46:22
[2026-06-13 11:46:23,138.138 INFO    ] 2026-06-13 11:46:23
[2026-06-13 11:46:23,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:23,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:23,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:23,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:23,602.602 INFO    ] time= 13/06/2026 11:46:23
[2026-06-13 11:46:23,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:23,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:23,827.827 INFO    ] No existing commands found in stream
[2026-06-13 11:46:28,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:46:28,852.852 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 11:46:29,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:46:29,746.746 INFO    ] Checking for system updates...
[2026-06-13 11:46:29,766.766 INFO    ] 200
[2026-06-13 11:46:29,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:29,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:46:29,800.800 INFO    ] No update needed
[2026-06-13 11:46:29,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 11:46:29,823.823 INFO    ] 200
[2026-06-13 11:46:29,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:29,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:46:29,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:46:29,893.893 INFO    ] No camera update needed
[2026-06-13 11:46:29,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:46:29,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:46:29,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:46:29,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:46:31,935.935 INFO    ] ================================================
[2026-06-13 11:46:31,945.945 INFO    ] Launching Daemon at Sat Jun 13 11:46:31 IST 2026
[2026-06-13 11:46:31,951.951 INFO    ] ================================================
[2026-06-13 11:46:32,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:46:32
[2026-06-13 11:46:32,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:46:32,749.749 INFO    ] Initializing speech engine...
[2026-06-13 11:46:32,753.753 INFO    ] 2026-06-13 11:46:32
[2026-06-13 11:46:32,971.971 INFO    ] 2026-06-13 11:46:32
[2026-06-13 11:46:33,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:33,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:33,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:33,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:33,385.385 INFO    ] time= 13/06/2026 11:46:33
[2026-06-13 11:46:33,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:33,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:33,492.492 INFO    ] No existing commands found in stream
[2026-06-13 11:46:38,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:46:38,505.505 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 11:46:42,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:46:42,654.654 INFO    ] Checking for system updates...
[2026-06-13 11:46:42,678.678 INFO    ] 200
[2026-06-13 11:46:42,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:42,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:42,712.712 INFO    ] No update needed
[2026-06-13 11:46:42,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 11:46:42,734.734 INFO    ] 200
[2026-06-13 11:46:42,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:42,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:46:42,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:42,902.902 INFO    ] No camera update needed
[2026-06-13 11:46:42,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:46:42,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:46:42,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:46:42,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:46:44,950.950 INFO    ] ================================================
[2026-06-13 11:46:44,965.965 INFO    ] Launching Daemon at Sat Jun 13 11:46:44 IST 2026
[2026-06-13 11:46:44,975.975 INFO    ] ================================================
[2026-06-13 11:46:45,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:46:45
[2026-06-13 11:46:45,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:46:45,756.756 INFO    ] Initializing speech engine...
[2026-06-13 11:46:45,762.762 INFO    ] 2026-06-13 11:46:45
[2026-06-13 11:46:45,967.967 INFO    ] 2026-06-13 11:46:45
[2026-06-13 11:46:45,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:46,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:46,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:46,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:46,357.357 INFO    ] time= 13/06/2026 11:46:46
[2026-06-13 11:46:46,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:46,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:46,489.489 INFO    ] No existing commands found in stream
[2026-06-13 11:46:51,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:46:51,503.503 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 11:46:53,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:46:53,445.445 INFO    ] Checking for system updates...
[2026-06-13 11:46:53,465.465 INFO    ] 200
[2026-06-13 11:46:53,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:53,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:53,502.502 INFO    ] No update needed
[2026-06-13 11:46:53,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 11:46:53,523.523 INFO    ] 200
[2026-06-13 11:46:53,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:46:53,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:46:53,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:46:53,587.587 INFO    ] No camera update needed
[2026-06-13 11:46:53,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:46:53,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:46:53,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:46:53,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:46:55,635.635 INFO    ] ================================================
[2026-06-13 11:46:55,650.650 INFO    ] Launching Daemon at Sat Jun 13 11:46:55 IST 2026
[2026-06-13 11:46:55,661.661 INFO    ] ================================================
[2026-06-13 11:46:56,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:46:56
[2026-06-13 11:46:56,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:46:56,461.461 INFO    ] Initializing speech engine...
[2026-06-13 11:46:56,471.471 INFO    ] 2026-06-13 11:46:56
[2026-06-13 11:46:56,674.674 INFO    ] 2026-06-13 11:46:56
[2026-06-13 11:46:56,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:46:56,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:46:56,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:46:57,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:46:57,079.079 INFO    ] time= 13/06/2026 11:46:57
[2026-06-13 11:46:57,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:46:57,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:46:57,190.190 INFO    ] No existing commands found in stream
[2026-06-13 11:47:02,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:47:02,200.200 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 11:47:04,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:47:04,286.286 INFO    ] Checking for system updates...
[2026-06-13 11:47:04,341.341 INFO    ] 200
[2026-06-13 11:47:04,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:04,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:04,378.378 INFO    ] No update needed
[2026-06-13 11:47:04,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 11:47:04,399.399 INFO    ] 200
[2026-06-13 11:47:04,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:04,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:47:04,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:04,462.462 INFO    ] No camera update needed
[2026-06-13 11:47:04,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:47:04,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:47:04,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:47:04,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:47:06,511.511 INFO    ] ================================================
[2026-06-13 11:47:06,526.526 INFO    ] Launching Daemon at Sat Jun 13 11:47:06 IST 2026
[2026-06-13 11:47:06,537.537 INFO    ] ================================================
[2026-06-13 11:47:06,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:47:06
[2026-06-13 11:47:07,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:47:07,338.338 INFO    ] Initializing speech engine...
[2026-06-13 11:47:07,346.346 INFO    ] 2026-06-13 11:47:07
[2026-06-13 11:47:07,566.566 INFO    ] 2026-06-13 11:47:07
[2026-06-13 11:47:07,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:47:07,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:47:07,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:47:07,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:47:07,980.980 INFO    ] time= 13/06/2026 11:47:07
[2026-06-13 11:47:08,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:47:08,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:47:08,121.121 INFO    ] No existing commands found in stream
[2026-06-13 11:47:13,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:47:13,134.134 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 11:47:16,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:47:16,800.800 INFO    ] Checking for system updates...
[2026-06-13 11:47:16,821.821 INFO    ] 200
[2026-06-13 11:47:16,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:16,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:47:16,856.856 INFO    ] No update needed
[2026-06-13 11:47:16,858.858 INFO    ] Checking for camera pi updates...
[2026-06-13 11:47:16,878.878 INFO    ] 200
[2026-06-13 11:47:16,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:16,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:47:16,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:47:16,947.947 INFO    ] No camera update needed
[2026-06-13 11:47:16,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:47:16,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:47:16,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:47:16,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:47:19,995.995 INFO    ] ================================================
[2026-06-13 11:47:19,010.010 INFO    ] Launching Daemon at Sat Jun 13 11:47:19 IST 2026
[2026-06-13 11:47:19,020.020 INFO    ] ================================================
[2026-06-13 11:47:19,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:47:19
[2026-06-13 11:47:19,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:47:19,889.889 INFO    ] Initializing speech engine...
[2026-06-13 11:47:19,897.897 INFO    ] 2026-06-13 11:47:19
[2026-06-13 11:47:20,191.191 INFO    ] 2026-06-13 11:47:20
[2026-06-13 11:47:20,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:47:20,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:47:20,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:47:20,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:47:20,573.573 INFO    ] time= 13/06/2026 11:47:20
[2026-06-13 11:47:20,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:47:20,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:47:20,697.697 INFO    ] No existing commands found in stream
[2026-06-13 11:47:25,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:47:25,712.712 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 11:47:29,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:47:29,240.240 INFO    ] Checking for system updates...
[2026-06-13 11:47:29,261.261 INFO    ] 200
[2026-06-13 11:47:29,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:29,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:29,294.294 INFO    ] No update needed
[2026-06-13 11:47:29,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 11:47:29,328.328 INFO    ] 200
[2026-06-13 11:47:29,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:29,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:47:29,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:29,398.398 INFO    ] No camera update needed
[2026-06-13 11:47:29,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:47:29,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:47:29,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:47:29,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:47:31,459.459 INFO    ] ================================================
[2026-06-13 11:47:31,474.474 INFO    ] Launching Daemon at Sat Jun 13 11:47:31 IST 2026
[2026-06-13 11:47:31,485.485 INFO    ] ================================================
[2026-06-13 11:47:31,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:47:31
[2026-06-13 11:47:32,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:47:32,432.432 INFO    ] Initializing speech engine...
[2026-06-13 11:47:32,440.440 INFO    ] 2026-06-13 11:47:32
[2026-06-13 11:47:32,647.647 INFO    ] 2026-06-13 11:47:32
[2026-06-13 11:47:32,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:47:32,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:47:32,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:47:33,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:47:33,084.084 INFO    ] time= 13/06/2026 11:47:33
[2026-06-13 11:47:33,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:47:33,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:47:33,196.196 INFO    ] No existing commands found in stream
[2026-06-13 11:47:38,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:47:38,211.211 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 11:47:41,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:47:41,225.225 INFO    ] Checking for system updates...
[2026-06-13 11:47:41,246.246 INFO    ] 200
[2026-06-13 11:47:41,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:41,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:41,282.282 INFO    ] No update needed
[2026-06-13 11:47:41,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 11:47:41,306.306 INFO    ] 200
[2026-06-13 11:47:41,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:41,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:47:41,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:41,367.367 INFO    ] No camera update needed
[2026-06-13 11:47:41,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:47:41,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:47:41,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:47:41,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:47:43,417.417 INFO    ] ================================================
[2026-06-13 11:47:43,433.433 INFO    ] Launching Daemon at Sat Jun 13 11:47:43 IST 2026
[2026-06-13 11:47:43,444.444 INFO    ] ================================================
[2026-06-13 11:47:43,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:47:43
[2026-06-13 11:47:44,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:47:44,236.236 INFO    ] Initializing speech engine...
[2026-06-13 11:47:44,246.246 INFO    ] 2026-06-13 11:47:44
[2026-06-13 11:47:44,450.450 INFO    ] 2026-06-13 11:47:44
[2026-06-13 11:47:44,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:47:44,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:47:44,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:47:44,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:47:44,853.853 INFO    ] time= 13/06/2026 11:47:44
[2026-06-13 11:47:44,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:47:44,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:47:44,962.962 INFO    ] No existing commands found in stream
[2026-06-13 11:47:49,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:47:49,975.975 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 11:47:54,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:47:54,050.050 INFO    ] Checking for system updates...
[2026-06-13 11:47:54,071.071 INFO    ] 200
[2026-06-13 11:47:54,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:54,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:54,107.107 INFO    ] No update needed
[2026-06-13 11:47:54,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 11:47:54,129.129 INFO    ] 200
[2026-06-13 11:47:54,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:47:54,153.153 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:47:54,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:47:54,191.191 INFO    ] No camera update needed
[2026-06-13 11:47:54,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:47:54,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:47:54,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:47:54,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:47:56,237.237 INFO    ] ================================================
[2026-06-13 11:47:56,252.252 INFO    ] Launching Daemon at Sat Jun 13 11:47:56 IST 2026
[2026-06-13 11:47:56,262.262 INFO    ] ================================================
[2026-06-13 11:47:56,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:47:56
[2026-06-13 11:47:56,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:47:57,046.046 INFO    ] Initializing speech engine...
[2026-06-13 11:47:57,056.056 INFO    ] 2026-06-13 11:47:57
[2026-06-13 11:47:57,271.271 INFO    ] 2026-06-13 11:47:57
[2026-06-13 11:47:57,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:47:57,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:47:57,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:47:57,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:47:57,681.681 INFO    ] time= 13/06/2026 11:47:57
[2026-06-13 11:47:57,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:47:57,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:47:57,798.798 INFO    ] No existing commands found in stream
[2026-06-13 11:48:02,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:48:02,814.814 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 11:48:05,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:48:05,920.920 INFO    ] Checking for system updates...
[2026-06-13 11:48:05,940.940 INFO    ] 200
[2026-06-13 11:48:05,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:05,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:48:05,974.974 INFO    ] No update needed
[2026-06-13 11:48:05,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 11:48:05,995.995 INFO    ] 200
[2026-06-13 11:48:05,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:06,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:48:06,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:48:06,062.062 INFO    ] No camera update needed
[2026-06-13 11:48:06,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:48:06,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:48:06,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:48:06,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:48:08,108.108 INFO    ] ================================================
[2026-06-13 11:48:08,124.124 INFO    ] Launching Daemon at Sat Jun 13 11:48:08 IST 2026
[2026-06-13 11:48:08,135.135 INFO    ] ================================================
[2026-06-13 11:48:08,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:48:08
[2026-06-13 11:48:09,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:48:09,538.538 INFO    ] Initializing speech engine...
[2026-06-13 11:48:09,544.544 INFO    ] 2026-06-13 11:48:09
[2026-06-13 11:48:09,815.815 INFO    ] 2026-06-13 11:48:09
[2026-06-13 11:48:09,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:48:10,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:48:10,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:48:10,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:48:10,281.281 INFO    ] time= 13/06/2026 11:48:10
[2026-06-13 11:48:10,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:48:10,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:48:10,506.506 INFO    ] No existing commands found in stream
[2026-06-13 11:48:15,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:48:15,528.528 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 11:48:17,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:48:17,753.753 INFO    ] Checking for system updates...
[2026-06-13 11:48:17,775.775 INFO    ] 200
[2026-06-13 11:48:17,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:17,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:48:17,809.809 INFO    ] No update needed
[2026-06-13 11:48:17,810.810 INFO    ] Checking for camera pi updates...
[2026-06-13 11:48:17,830.830 INFO    ] 200
[2026-06-13 11:48:17,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:17,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:48:17,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:48:17,892.892 INFO    ] No camera update needed
[2026-06-13 11:48:17,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:48:17,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:48:17,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:48:17,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:48:19,938.938 INFO    ] ================================================
[2026-06-13 11:48:19,955.955 INFO    ] Launching Daemon at Sat Jun 13 11:48:19 IST 2026
[2026-06-13 11:48:19,966.966 INFO    ] ================================================
[2026-06-13 11:48:20,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:48:20
[2026-06-13 11:48:20,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:48:20,752.752 INFO    ] Initializing speech engine...
[2026-06-13 11:48:20,756.756 INFO    ] 2026-06-13 11:48:20
[2026-06-13 11:48:20,961.961 INFO    ] 2026-06-13 11:48:20
[2026-06-13 11:48:20,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:48:21,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:48:21,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:48:21,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:48:21,374.374 INFO    ] time= 13/06/2026 11:48:21
[2026-06-13 11:48:21,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:48:21,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:48:21,471.471 INFO    ] No existing commands found in stream
[2026-06-13 11:48:26,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:48:26,485.485 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 11:48:28,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:48:28,634.634 INFO    ] Checking for system updates...
[2026-06-13 11:48:28,656.656 INFO    ] 200
[2026-06-13 11:48:28,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:28,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:48:28,691.691 INFO    ] No update needed
[2026-06-13 11:48:28,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 11:48:28,712.712 INFO    ] 200
[2026-06-13 11:48:28,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:28,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:48:28,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:48:28,781.781 INFO    ] No camera update needed
[2026-06-13 11:48:28,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:48:28,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:48:28,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:48:28,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:48:30,830.830 INFO    ] ================================================
[2026-06-13 11:48:30,846.846 INFO    ] Launching Daemon at Sat Jun 13 11:48:30 IST 2026
[2026-06-13 11:48:30,857.857 INFO    ] ================================================
[2026-06-13 11:48:31,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:48:31
[2026-06-13 11:48:31,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:48:31,667.667 INFO    ] Initializing speech engine...
[2026-06-13 11:48:31,677.677 INFO    ] 2026-06-13 11:48:31
[2026-06-13 11:48:31,881.881 INFO    ] 2026-06-13 11:48:31
[2026-06-13 11:48:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:48:32,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:48:32,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:48:32,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:48:32,252.252 INFO    ] time= 13/06/2026 11:48:32
[2026-06-13 11:48:32,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:48:32,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:48:32,431.431 INFO    ] No existing commands found in stream
[2026-06-13 11:48:37,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:48:37,444.444 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 11:48:41,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:48:41,450.450 INFO    ] Checking for system updates...
[2026-06-13 11:48:41,472.472 INFO    ] 200
[2026-06-13 11:48:41,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:41,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:48:41,505.505 INFO    ] No update needed
[2026-06-13 11:48:41,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 11:48:41,525.525 INFO    ] 200
[2026-06-13 11:48:41,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:41,551.551 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:48:41,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:48:41,592.592 INFO    ] No camera update needed
[2026-06-13 11:48:41,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:48:41,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:48:41,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:48:41,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:48:43,639.639 INFO    ] ================================================
[2026-06-13 11:48:43,654.654 INFO    ] Launching Daemon at Sat Jun 13 11:48:43 IST 2026
[2026-06-13 11:48:43,664.664 INFO    ] ================================================
[2026-06-13 11:48:44,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:48:44
[2026-06-13 11:48:44,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:48:44,452.452 INFO    ] Initializing speech engine...
[2026-06-13 11:48:44,456.456 INFO    ] 2026-06-13 11:48:44
[2026-06-13 11:48:44,674.674 INFO    ] 2026-06-13 11:48:44
[2026-06-13 11:48:44,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:48:44,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:48:44,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:48:45,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:48:45,064.064 INFO    ] time= 13/06/2026 11:48:45
[2026-06-13 11:48:45,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:48:45,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:48:45,190.190 INFO    ] No existing commands found in stream
[2026-06-13 11:48:50,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:48:50,202.202 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 11:48:51,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:48:51,948.948 INFO    ] Checking for system updates...
[2026-06-13 11:48:51,969.969 INFO    ] 200
[2026-06-13 11:48:51,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:52,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:48:52,004.004 INFO    ] No update needed
[2026-06-13 11:48:52,006.006 INFO    ] Checking for camera pi updates...
[2026-06-13 11:48:52,025.025 INFO    ] 200
[2026-06-13 11:48:52,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:48:52,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:48:52,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:48:52,187.187 INFO    ] No camera update needed
[2026-06-13 11:48:52,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:48:52,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:48:52,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:48:52,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:48:54,235.235 INFO    ] ================================================
[2026-06-13 11:48:54,250.250 INFO    ] Launching Daemon at Sat Jun 13 11:48:54 IST 2026
[2026-06-13 11:48:54,261.261 INFO    ] ================================================
[2026-06-13 11:48:54,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:48:54
[2026-06-13 11:48:54,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:48:55,062.062 INFO    ] Initializing speech engine...
[2026-06-13 11:48:55,067.067 INFO    ] 2026-06-13 11:48:55
[2026-06-13 11:48:55,274.274 INFO    ] 2026-06-13 11:48:55
[2026-06-13 11:48:55,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:48:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:48:55,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:48:55,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:48:55,686.686 INFO    ] time= 13/06/2026 11:48:55
[2026-06-13 11:48:55,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:48:55,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:48:55,799.799 INFO    ] No existing commands found in stream
[2026-06-13 11:49:00,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:49:00,811.811 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 11:49:03,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:49:03,940.940 INFO    ] Checking for system updates...
[2026-06-13 11:49:03,961.961 INFO    ] 200
[2026-06-13 11:49:03,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:03,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:03,994.994 INFO    ] No update needed
[2026-06-13 11:49:03,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 11:49:04,015.015 INFO    ] 200
[2026-06-13 11:49:04,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:04,040.040 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:49:04,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:04,078.078 INFO    ] No camera update needed
[2026-06-13 11:49:04,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:49:04,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:04,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:04,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:06,126.126 INFO    ] ================================================
[2026-06-13 11:49:06,141.141 INFO    ] Launching Daemon at Sat Jun 13 11:49:06 IST 2026
[2026-06-13 11:49:06,151.151 INFO    ] ================================================
[2026-06-13 11:49:06,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:06
[2026-06-13 11:49:06,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:06,994.994 INFO    ] Initializing speech engine...
[2026-06-13 11:49:07,004.004 INFO    ] 2026-06-13 11:49:06
[2026-06-13 11:49:07,212.212 INFO    ] 2026-06-13 11:49:07
[2026-06-13 11:49:07,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:07,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:49:07,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:49:07,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:49:07,630.630 INFO    ] time= 13/06/2026 11:49:07
[2026-06-13 11:49:07,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:49:07,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:49:07,729.729 INFO    ] No existing commands found in stream
[2026-06-13 11:49:12,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:49:12,746.746 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 11:49:14,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:49:14,761.761 INFO    ] Checking for system updates...
[2026-06-13 11:49:14,782.782 INFO    ] 200
[2026-06-13 11:49:14,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:14,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:49:14,826.826 INFO    ] No update needed
[2026-06-13 11:49:14,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 11:49:14,849.849 INFO    ] 200
[2026-06-13 11:49:14,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:14,874.874 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:49:14,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:49:14,911.911 INFO    ] No camera update needed
[2026-06-13 11:49:14,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:49:14,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:14,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:14,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:16,959.959 INFO    ] ================================================
[2026-06-13 11:49:16,974.974 INFO    ] Launching Daemon at Sat Jun 13 11:49:16 IST 2026
[2026-06-13 11:49:16,985.985 INFO    ] ================================================
[2026-06-13 11:49:17,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:17
[2026-06-13 11:49:17,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:17,757.757 INFO    ] Initializing speech engine...
[2026-06-13 11:49:17,769.769 INFO    ] 2026-06-13 11:49:17
[2026-06-13 11:49:17,978.978 INFO    ] 2026-06-13 11:49:17
[2026-06-13 11:49:18,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:18,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:49:18,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:49:18,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:49:18,379.379 INFO    ] time= 13/06/2026 11:49:18
[2026-06-13 11:49:18,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:49:18,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:49:18,507.507 INFO    ] No existing commands found in stream
[2026-06-13 11:49:23,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:49:23,521.521 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 11:49:26,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:49:26,060.060 INFO    ] Checking for system updates...
[2026-06-13 11:49:26,081.081 INFO    ] 200
[2026-06-13 11:49:26,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:26,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:49:26,115.115 INFO    ] No update needed
[2026-06-13 11:49:26,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 11:49:26,137.137 INFO    ] 200
[2026-06-13 11:49:26,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:26,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:49:26,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:26,210.210 INFO    ] No camera update needed
[2026-06-13 11:49:26,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:49:26,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:26,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:26,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:28,259.259 INFO    ] ================================================
[2026-06-13 11:49:28,274.274 INFO    ] Launching Daemon at Sat Jun 13 11:49:28 IST 2026
[2026-06-13 11:49:28,285.285 INFO    ] ================================================
[2026-06-13 11:49:28,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:28
[2026-06-13 11:49:29,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:29,156.156 INFO    ] Initializing speech engine...
[2026-06-13 11:49:29,162.162 INFO    ] 2026-06-13 11:49:29
[2026-06-13 11:49:29,370.370 INFO    ] 2026-06-13 11:49:29
[2026-06-13 11:49:29,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:29,452.452 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 11:49:29,507.507 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 11:49:29,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:29,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:29,627.627 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 11:49:29,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:31,680.680 INFO    ] ================================================
[2026-06-13 11:49:31,690.690 INFO    ] Launching Daemon at Sat Jun 13 11:49:31 IST 2026
[2026-06-13 11:49:31,696.696 INFO    ] ================================================
[2026-06-13 11:49:32,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:32
[2026-06-13 11:49:32,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:32,493.493 INFO    ] Initializing speech engine...
[2026-06-13 11:49:32,506.506 INFO    ] 2026-06-13 11:49:32
[2026-06-13 11:49:32,720.720 INFO    ] 2026-06-13 11:49:32
[2026-06-13 11:49:32,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:32,805.805 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 11:49:32,854.854 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 11:49:32,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:32,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:32,968.968 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 11:49:32,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:35,028.028 INFO    ] ================================================
[2026-06-13 11:49:35,044.044 INFO    ] Launching Daemon at Sat Jun 13 11:49:35 IST 2026
[2026-06-13 11:49:35,055.055 INFO    ] ================================================
[2026-06-13 11:49:35,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:35
[2026-06-13 11:49:35,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:35,857.857 INFO    ] Initializing speech engine...
[2026-06-13 11:49:35,867.867 INFO    ] 2026-06-13 11:49:35
[2026-06-13 11:49:36,082.082 INFO    ] 2026-06-13 11:49:36
[2026-06-13 11:49:36,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:36,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:49:36,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:49:36,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:49:36,511.511 INFO    ] time= 13/06/2026 11:49:36
[2026-06-13 11:49:36,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:49:36,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:49:36,623.623 INFO    ] No existing commands found in stream
[2026-06-13 11:49:41,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:49:41,641.641 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 11:49:44,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:49:44,014.014 INFO    ] Checking for system updates...
[2026-06-13 11:49:44,035.035 INFO    ] 200
[2026-06-13 11:49:44,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:44,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:44,070.070 INFO    ] No update needed
[2026-06-13 11:49:44,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 11:49:44,093.093 INFO    ] 200
[2026-06-13 11:49:44,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:44,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:49:44,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:44,262.262 INFO    ] No camera update needed
[2026-06-13 11:49:44,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:49:44,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:44,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:44,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:46,316.316 INFO    ] ================================================
[2026-06-13 11:49:46,331.331 INFO    ] Launching Daemon at Sat Jun 13 11:49:46 IST 2026
[2026-06-13 11:49:46,342.342 INFO    ] ================================================
[2026-06-13 11:49:46,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:46
[2026-06-13 11:49:46,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:47,132.132 INFO    ] Initializing speech engine...
[2026-06-13 11:49:47,137.137 INFO    ] 2026-06-13 11:49:47
[2026-06-13 11:49:47,339.339 INFO    ] 2026-06-13 11:49:47
[2026-06-13 11:49:47,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:47,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:49:47,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:49:47,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:49:47,753.753 INFO    ] time= 13/06/2026 11:49:47
[2026-06-13 11:49:47,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:49:47,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:49:47,933.933 INFO    ] No existing commands found in stream
[2026-06-13 11:49:52,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:49:52,946.946 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 11:49:56,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:49:56,372.372 INFO    ] Checking for system updates...
[2026-06-13 11:49:56,393.393 INFO    ] 200
[2026-06-13 11:49:56,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:56,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:56,426.426 INFO    ] No update needed
[2026-06-13 11:49:56,428.428 INFO    ] Checking for camera pi updates...
[2026-06-13 11:49:56,448.448 INFO    ] 200
[2026-06-13 11:49:56,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:49:56,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:49:56,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:49:56,507.507 INFO    ] No camera update needed
[2026-06-13 11:49:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:49:56,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:49:56,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:49:56,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:49:58,558.558 INFO    ] ================================================
[2026-06-13 11:49:58,573.573 INFO    ] Launching Daemon at Sat Jun 13 11:49:58 IST 2026
[2026-06-13 11:49:58,584.584 INFO    ] ================================================
[2026-06-13 11:49:58,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:49:58
[2026-06-13 11:49:59,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:49:59,454.454 INFO    ] Initializing speech engine...
[2026-06-13 11:49:59,460.460 INFO    ] 2026-06-13 11:49:59
[2026-06-13 11:49:59,669.669 INFO    ] 2026-06-13 11:49:59
[2026-06-13 11:49:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:49:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:49:59,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:00,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:00,073.073 INFO    ] time= 13/06/2026 11:50:00
[2026-06-13 11:50:00,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:00,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:00,181.181 INFO    ] No existing commands found in stream
[2026-06-13 11:50:05,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:50:05,194.194 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 11:50:09,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:50:09,244.244 INFO    ] Checking for system updates...
[2026-06-13 11:50:09,267.267 INFO    ] 200
[2026-06-13 11:50:09,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:09,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:50:09,303.303 INFO    ] No update needed
[2026-06-13 11:50:09,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 11:50:09,325.325 INFO    ] 200
[2026-06-13 11:50:09,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:09,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:50:09,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:50:09,393.393 INFO    ] No camera update needed
[2026-06-13 11:50:09,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:50:09,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:50:09,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:50:09,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:50:11,442.442 INFO    ] ================================================
[2026-06-13 11:50:11,457.457 INFO    ] Launching Daemon at Sat Jun 13 11:50:11 IST 2026
[2026-06-13 11:50:11,468.468 INFO    ] ================================================
[2026-06-13 11:50:11,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:50:11
[2026-06-13 11:50:12,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:50:12,870.870 INFO    ] Initializing speech engine...
[2026-06-13 11:50:12,879.879 INFO    ] 2026-06-13 11:50:12
[2026-06-13 11:50:13,124.124 INFO    ] 2026-06-13 11:50:13
[2026-06-13 11:50:13,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:50:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:50:13,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:13,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:13,592.592 INFO    ] time= 13/06/2026 11:50:13
[2026-06-13 11:50:13,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:13,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:13,754.754 INFO    ] No existing commands found in stream
[2026-06-13 11:50:18,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:50:18,773.773 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 11:50:21,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:50:21,029.029 INFO    ] Checking for system updates...
[2026-06-13 11:50:21,050.050 INFO    ] 200
[2026-06-13 11:50:21,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:21,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:50:21,084.084 INFO    ] No update needed
[2026-06-13 11:50:21,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 11:50:21,106.106 INFO    ] 200
[2026-06-13 11:50:21,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:21,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:50:21,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:50:21,170.170 INFO    ] No camera update needed
[2026-06-13 11:50:21,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:50:21,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:50:21,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:50:21,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:50:23,218.218 INFO    ] ================================================
[2026-06-13 11:50:23,233.233 INFO    ] Launching Daemon at Sat Jun 13 11:50:23 IST 2026
[2026-06-13 11:50:23,244.244 INFO    ] ================================================
[2026-06-13 11:50:23,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:50:23
[2026-06-13 11:50:23,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:50:24,094.094 INFO    ] Initializing speech engine...
[2026-06-13 11:50:24,098.098 INFO    ] 2026-06-13 11:50:24
[2026-06-13 11:50:24,306.306 INFO    ] 2026-06-13 11:50:24
[2026-06-13 11:50:24,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:50:24,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:50:24,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:24,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:24,710.710 INFO    ] time= 13/06/2026 11:50:24
[2026-06-13 11:50:24,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:24,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:24,814.814 INFO    ] No existing commands found in stream
[2026-06-13 11:50:29,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:50:29,842.842 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 11:50:32,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:50:32,889.889 INFO    ] Checking for system updates...
[2026-06-13 11:50:32,911.911 INFO    ] 200
[2026-06-13 11:50:32,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:32,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:32,944.944 INFO    ] No update needed
[2026-06-13 11:50:32,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 11:50:32,966.966 INFO    ] 200
[2026-06-13 11:50:32,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:32,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:50:33,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:33,029.029 INFO    ] No camera update needed
[2026-06-13 11:50:33,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:50:33,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:50:33,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:50:33,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:50:35,075.075 INFO    ] ================================================
[2026-06-13 11:50:35,091.091 INFO    ] Launching Daemon at Sat Jun 13 11:50:35 IST 2026
[2026-06-13 11:50:35,102.102 INFO    ] ================================================
[2026-06-13 11:50:35,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:50:35
[2026-06-13 11:50:35,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:50:35,904.904 INFO    ] Initializing speech engine...
[2026-06-13 11:50:35,910.910 INFO    ] 2026-06-13 11:50:35
[2026-06-13 11:50:36,112.112 INFO    ] 2026-06-13 11:50:36
[2026-06-13 11:50:36,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:50:36,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:50:36,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:36,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:36,529.529 INFO    ] time= 13/06/2026 11:50:36
[2026-06-13 11:50:36,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:36,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:36,627.627 INFO    ] No existing commands found in stream
[2026-06-13 11:50:41,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:50:41,639.639 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 11:50:43,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:50:43,616.616 INFO    ] Checking for system updates...
[2026-06-13 11:50:43,637.637 INFO    ] 200
[2026-06-13 11:50:43,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:43,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:43,671.671 INFO    ] No update needed
[2026-06-13 11:50:43,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 11:50:43,692.692 INFO    ] 200
[2026-06-13 11:50:43,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:43,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:50:43,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:43,757.757 INFO    ] No camera update needed
[2026-06-13 11:50:43,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:50:43,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:50:43,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:50:43,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:50:45,804.804 INFO    ] ================================================
[2026-06-13 11:50:45,820.820 INFO    ] Launching Daemon at Sat Jun 13 11:50:45 IST 2026
[2026-06-13 11:50:45,831.831 INFO    ] ================================================
[2026-06-13 11:50:46,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:50:46
[2026-06-13 11:50:46,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:50:46,637.637 INFO    ] Initializing speech engine...
[2026-06-13 11:50:46,647.647 INFO    ] 2026-06-13 11:50:46
[2026-06-13 11:50:46,851.851 INFO    ] 2026-06-13 11:50:46
[2026-06-13 11:50:46,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:50:47,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:50:47,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:47,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:47,244.244 INFO    ] time= 13/06/2026 11:50:47
[2026-06-13 11:50:47,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:47,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:47,365.365 INFO    ] No existing commands found in stream
[2026-06-13 11:50:52,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:50:52,377.377 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 11:50:54,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:50:54,724.724 INFO    ] Checking for system updates...
[2026-06-13 11:50:54,745.745 INFO    ] 200
[2026-06-13 11:50:54,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:54,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:54,778.778 INFO    ] No update needed
[2026-06-13 11:50:54,780.780 INFO    ] Checking for camera pi updates...
[2026-06-13 11:50:54,799.799 INFO    ] 200
[2026-06-13 11:50:54,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:50:54,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:50:54,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:50:54,858.858 INFO    ] No camera update needed
[2026-06-13 11:50:54,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:50:54,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:50:54,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:50:54,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:50:56,908.908 INFO    ] ================================================
[2026-06-13 11:50:56,923.923 INFO    ] Launching Daemon at Sat Jun 13 11:50:56 IST 2026
[2026-06-13 11:50:56,934.934 INFO    ] ================================================
[2026-06-13 11:50:57,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:50:57
[2026-06-13 11:50:57,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:50:57,722.722 INFO    ] Initializing speech engine...
[2026-06-13 11:50:57,727.727 INFO    ] 2026-06-13 11:50:57
[2026-06-13 11:50:57,930.930 INFO    ] 2026-06-13 11:50:57
[2026-06-13 11:50:57,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:50:58,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:50:58,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:50:58,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:50:58,339.339 INFO    ] time= 13/06/2026 11:50:58
[2026-06-13 11:50:58,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:50:58,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:50:58,442.442 INFO    ] No existing commands found in stream
[2026-06-13 11:51:03,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:03,456.456 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 11:51:05,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:51:05,663.663 INFO    ] Checking for system updates...
[2026-06-13 11:51:05,686.686 INFO    ] 200
[2026-06-13 11:51:05,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:05,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:51:05,720.720 INFO    ] No update needed
[2026-06-13 11:51:05,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:05,741.741 INFO    ] 200
[2026-06-13 11:51:05,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:05,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:05,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:05,806.806 INFO    ] No camera update needed
[2026-06-13 11:51:05,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:05,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:05,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:05,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:51:07,853.853 INFO    ] ================================================
[2026-06-13 11:51:07,869.869 INFO    ] Launching Daemon at Sat Jun 13 11:51:07 IST 2026
[2026-06-13 11:51:07,879.879 INFO    ] ================================================
[2026-06-13 11:51:08,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:51:08
[2026-06-13 11:51:08,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:51:08,682.682 INFO    ] Initializing speech engine...
[2026-06-13 11:51:08,693.693 INFO    ] 2026-06-13 11:51:08
[2026-06-13 11:51:08,900.900 INFO    ] 2026-06-13 11:51:08
[2026-06-13 11:51:08,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:51:09,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:51:09,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:51:09,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:51:09,300.300 INFO    ] time= 13/06/2026 11:51:09
[2026-06-13 11:51:09,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:51:09,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:51:09,423.423 INFO    ] No existing commands found in stream
[2026-06-13 11:51:14,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:14,435.435 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 11:51:15,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:51:15,302.302 INFO    ] Checking for system updates...
[2026-06-13 11:51:15,323.323 INFO    ] 200
[2026-06-13 11:51:15,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:15,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:15,356.356 INFO    ] No update needed
[2026-06-13 11:51:15,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:15,443.443 INFO    ] 200
[2026-06-13 11:51:15,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:15,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:15,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:15,510.510 INFO    ] No camera update needed
[2026-06-13 11:51:15,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:15,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:15,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:15,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:51:17,558.558 INFO    ] ================================================
[2026-06-13 11:51:17,573.573 INFO    ] Launching Daemon at Sat Jun 13 11:51:17 IST 2026
[2026-06-13 11:51:17,584.584 INFO    ] ================================================
[2026-06-13 11:51:18,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:51:17
[2026-06-13 11:51:18,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:51:18,596.596 INFO    ] Initializing speech engine...
[2026-06-13 11:51:18,601.601 INFO    ] 2026-06-13 11:51:18
[2026-06-13 11:51:18,804.804 INFO    ] 2026-06-13 11:51:18
[2026-06-13 11:51:18,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:51:19,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:51:19,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:51:19,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:51:19,190.190 INFO    ] time= 13/06/2026 11:51:19
[2026-06-13 11:51:19,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:51:19,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:51:19,381.381 INFO    ] No existing commands found in stream
[2026-06-13 11:51:24,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:24,401.401 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 11:51:27,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:51:27,600.600 INFO    ] Checking for system updates...
[2026-06-13 11:51:27,621.621 INFO    ] 200
[2026-06-13 11:51:27,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:27,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:27,654.654 INFO    ] No update needed
[2026-06-13 11:51:27,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:27,676.676 INFO    ] 200
[2026-06-13 11:51:27,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:27,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:27,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:27,757.757 INFO    ] No camera update needed
[2026-06-13 11:51:27,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:27,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:27,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:27,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:51:29,804.804 INFO    ] ================================================
[2026-06-13 11:51:29,819.819 INFO    ] Launching Daemon at Sat Jun 13 11:51:29 IST 2026
[2026-06-13 11:51:29,829.829 INFO    ] ================================================
[2026-06-13 11:51:30,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:51:30
[2026-06-13 11:51:30,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:51:30,923.923 INFO    ] Initializing speech engine...
[2026-06-13 11:51:30,932.932 INFO    ] 2026-06-13 11:51:30
[2026-06-13 11:51:31,182.182 INFO    ] 2026-06-13 11:51:31
[2026-06-13 11:51:31,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:51:31,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:51:31,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:51:31,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:51:31,634.634 INFO    ] time= 13/06/2026 11:51:31
[2026-06-13 11:51:31,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:51:31,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:51:31,832.832 INFO    ] No existing commands found in stream
[2026-06-13 11:51:36,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:36,862.862 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 11:51:37,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:51:37,216.216 INFO    ] Checking for system updates...
[2026-06-13 11:51:37,238.238 INFO    ] 200
[2026-06-13 11:51:37,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:37,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:51:37,274.274 INFO    ] No update needed
[2026-06-13 11:51:37,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:37,296.296 INFO    ] 200
[2026-06-13 11:51:37,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:37,321.321 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:37,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:51:37,357.357 INFO    ] No camera update needed
[2026-06-13 11:51:37,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:37,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:37,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:51:39,406.406 INFO    ] ================================================
[2026-06-13 11:51:39,421.421 INFO    ] Launching Daemon at Sat Jun 13 11:51:39 IST 2026
[2026-06-13 11:51:39,431.431 INFO    ] ================================================
[2026-06-13 11:51:39,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:51:39
[2026-06-13 11:51:40,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:51:40,244.244 INFO    ] Initializing speech engine...
[2026-06-13 11:51:40,252.252 INFO    ] 2026-06-13 11:51:40
[2026-06-13 11:51:40,462.462 INFO    ] 2026-06-13 11:51:40
[2026-06-13 11:51:40,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:51:40,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:51:40,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:51:40,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:51:40,864.864 INFO    ] time= 13/06/2026 11:51:40
[2026-06-13 11:51:40,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:51:40,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:51:40,980.980 INFO    ] No existing commands found in stream
[2026-06-13 11:51:45,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:45,992.992 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 11:51:46,770.770 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:51:46,771.771 INFO    ] Checking for system updates...
[2026-06-13 11:51:46,792.792 INFO    ] 200
[2026-06-13 11:51:46,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:46,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:46,825.825 INFO    ] No update needed
[2026-06-13 11:51:46,826.826 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:46,846.846 INFO    ] 200
[2026-06-13 11:51:46,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:46,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:47,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:47,010.010 INFO    ] No camera update needed
[2026-06-13 11:51:47,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:47,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:47,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:47,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:51:49,056.056 INFO    ] ================================================
[2026-06-13 11:51:49,071.071 INFO    ] Launching Daemon at Sat Jun 13 11:51:49 IST 2026
[2026-06-13 11:51:49,081.081 INFO    ] ================================================
[2026-06-13 11:51:49,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:51:49
[2026-06-13 11:51:49,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:51:49,866.866 INFO    ] Initializing speech engine...
[2026-06-13 11:51:49,876.876 INFO    ] 2026-06-13 11:51:49
[2026-06-13 11:51:50,079.079 INFO    ] 2026-06-13 11:51:50
[2026-06-13 11:51:50,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:51:50,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:51:50,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:51:50,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:51:50,493.493 INFO    ] time= 13/06/2026 11:51:50
[2026-06-13 11:51:50,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:51:50,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:51:50,591.591 INFO    ] No existing commands found in stream
[2026-06-13 11:51:55,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:51:55,605.605 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 11:51:59,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:51:59,599.599 INFO    ] Checking for system updates...
[2026-06-13 11:51:59,620.620 INFO    ] 200
[2026-06-13 11:51:59,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:59,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:59,652.652 INFO    ] No update needed
[2026-06-13 11:51:59,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 11:51:59,673.673 INFO    ] 200
[2026-06-13 11:51:59,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:51:59,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:51:59,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:51:59,736.736 INFO    ] No camera update needed
[2026-06-13 11:51:59,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:51:59,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:51:59,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:51:59,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:01,776.776 INFO    ] ================================================
[2026-06-13 11:52:01,789.789 INFO    ] Launching Daemon at Sat Jun 13 11:52:01 IST 2026
[2026-06-13 11:52:01,798.798 INFO    ] ================================================
[2026-06-13 11:52:02,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:02
[2026-06-13 11:52:02,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:02,649.649 INFO    ] Initializing speech engine...
[2026-06-13 11:52:02,654.654 INFO    ] 2026-06-13 11:52:02
[2026-06-13 11:52:02,858.858 INFO    ] 2026-06-13 11:52:02
[2026-06-13 11:52:02,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:02,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:03,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:03,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:52:03,108.108 INFO    ] time= 13/06/2026 11:52:03
[2026-06-13 11:52:03,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:52:03,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:52:03,286.286 INFO    ] No existing commands found in stream
[2026-06-13 11:52:08,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:52:08,313.313 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 11:52:10,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:52:10,606.606 INFO    ] Checking for system updates...
[2026-06-13 11:52:10,626.626 INFO    ] 200
[2026-06-13 11:52:10,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:10,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:52:10,660.660 INFO    ] No update needed
[2026-06-13 11:52:10,662.662 INFO    ] Checking for camera pi updates...
[2026-06-13 11:52:10,681.681 INFO    ] 200
[2026-06-13 11:52:10,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:10,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:52:10,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:52:10,759.759 INFO    ] No camera update needed
[2026-06-13 11:52:10,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:52:10,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:52:10,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:52:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:12,808.808 INFO    ] ================================================
[2026-06-13 11:52:12,823.823 INFO    ] Launching Daemon at Sat Jun 13 11:52:12 IST 2026
[2026-06-13 11:52:12,834.834 INFO    ] ================================================
[2026-06-13 11:52:13,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:13
[2026-06-13 11:52:13,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:13,660.660 INFO    ] Initializing speech engine...
[2026-06-13 11:52:13,665.665 INFO    ] 2026-06-13 11:52:13
[2026-06-13 11:52:13,870.870 INFO    ] 2026-06-13 11:52:13
[2026-06-13 11:52:13,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:14,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:14,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:14,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:52:14,266.266 INFO    ] time= 13/06/2026 11:52:14
[2026-06-13 11:52:14,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:52:14,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:52:14,388.388 INFO    ] No existing commands found in stream
[2026-06-13 11:52:19,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:52:19,400.400 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 11:52:22,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:52:22,335.335 INFO    ] Checking for system updates...
[2026-06-13 11:52:22,356.356 INFO    ] 200
[2026-06-13 11:52:22,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:22,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:52:22,389.389 INFO    ] No update needed
[2026-06-13 11:52:22,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 11:52:22,411.411 INFO    ] 200
[2026-06-13 11:52:22,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:22,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:52:22,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:52:22,477.477 INFO    ] No camera update needed
[2026-06-13 11:52:22,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:52:22,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:52:22,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:52:22,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:24,526.526 INFO    ] ================================================
[2026-06-13 11:52:24,542.542 INFO    ] Launching Daemon at Sat Jun 13 11:52:24 IST 2026
[2026-06-13 11:52:24,553.553 INFO    ] ================================================
[2026-06-13 11:52:24,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:24
[2026-06-13 11:52:25,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:25,367.367 INFO    ] Initializing speech engine...
[2026-06-13 11:52:25,370.370 INFO    ] 2026-06-13 11:52:25
[2026-06-13 11:52:25,588.588 INFO    ] 2026-06-13 11:52:25
[2026-06-13 11:52:25,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:25,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:25,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:25,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:52:25,991.991 INFO    ] time= 13/06/2026 11:52:25
[2026-06-13 11:52:26,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:52:26,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:52:26,111.111 INFO    ] No existing commands found in stream
[2026-06-13 11:52:31,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:52:31,124.124 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 11:52:32,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:52:32,790.790 INFO    ] Checking for system updates...
[2026-06-13 11:52:32,811.811 INFO    ] 200
[2026-06-13 11:52:32,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:32,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:32,844.844 INFO    ] No update needed
[2026-06-13 11:52:32,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 11:52:32,867.867 INFO    ] 200
[2026-06-13 11:52:32,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:32,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:52:32,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:32,933.933 INFO    ] No camera update needed
[2026-06-13 11:52:32,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:52:32,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:52:32,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:52:32,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:34,982.982 INFO    ] ================================================
[2026-06-13 11:52:35,997.997 INFO    ] Launching Daemon at Sat Jun 13 11:52:34 IST 2026
[2026-06-13 11:52:35,009.009 INFO    ] ================================================
[2026-06-13 11:52:35,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:35
[2026-06-13 11:52:35,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:35,838.838 INFO    ] Initializing speech engine...
[2026-06-13 11:52:35,852.852 INFO    ] 2026-06-13 11:52:35
[2026-06-13 11:52:36,069.069 INFO    ] 2026-06-13 11:52:36
[2026-06-13 11:52:36,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:36,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:36,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:36,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:52:36,471.471 INFO    ] time= 13/06/2026 11:52:36
[2026-06-13 11:52:36,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:52:36,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:52:36,584.584 INFO    ] No existing commands found in stream
[2026-06-13 11:52:41,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:52:41,598.598 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 11:52:43,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:52:43,124.124 INFO    ] Checking for system updates...
[2026-06-13 11:52:43,145.145 INFO    ] 200
[2026-06-13 11:52:43,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:43,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:43,180.180 INFO    ] No update needed
[2026-06-13 11:52:43,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 11:52:43,205.205 INFO    ] 200
[2026-06-13 11:52:43,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:43,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:52:43,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:43,282.282 INFO    ] No camera update needed
[2026-06-13 11:52:43,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:52:43,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:52:43,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:52:43,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:45,330.330 INFO    ] ================================================
[2026-06-13 11:52:45,345.345 INFO    ] Launching Daemon at Sat Jun 13 11:52:45 IST 2026
[2026-06-13 11:52:45,356.356 INFO    ] ================================================
[2026-06-13 11:52:46,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:46
[2026-06-13 11:52:46,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:46,661.661 INFO    ] Initializing speech engine...
[2026-06-13 11:52:46,665.665 INFO    ] 2026-06-13 11:52:46
[2026-06-13 11:52:46,872.872 INFO    ] 2026-06-13 11:52:46
[2026-06-13 11:52:46,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:47,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:47,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:47,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:52:47,293.293 INFO    ] time= 13/06/2026 11:52:47
[2026-06-13 11:52:47,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:52:47,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:52:47,388.388 INFO    ] No existing commands found in stream
[2026-06-13 11:52:52,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:52:52,402.402 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 11:52:56,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:52:56,387.387 INFO    ] Checking for system updates...
[2026-06-13 11:52:56,408.408 INFO    ] 200
[2026-06-13 11:52:56,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:56,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:56,442.442 INFO    ] No update needed
[2026-06-13 11:52:56,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 11:52:56,463.463 INFO    ] 200
[2026-06-13 11:52:56,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:52:56,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:52:56,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:52:56,527.527 INFO    ] No camera update needed
[2026-06-13 11:52:56,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:52:56,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:52:56,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:52:56,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:52:58,568.568 INFO    ] ================================================
[2026-06-13 11:52:58,584.584 INFO    ] Launching Daemon at Sat Jun 13 11:52:58 IST 2026
[2026-06-13 11:52:58,595.595 INFO    ] ================================================
[2026-06-13 11:52:58,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:52:58
[2026-06-13 11:52:59,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:52:59,423.423 INFO    ] Initializing speech engine...
[2026-06-13 11:52:59,433.433 INFO    ] 2026-06-13 11:52:59
[2026-06-13 11:52:59,635.635 INFO    ] 2026-06-13 11:52:59
[2026-06-13 11:52:59,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:52:59,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:52:59,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:52:59,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:00,046.046 INFO    ] time= 13/06/2026 11:52:59
[2026-06-13 11:53:00,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:00,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:00,175.175 INFO    ] No existing commands found in stream
[2026-06-13 11:53:05,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:53:05,188.188 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 11:53:07,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:53:07,174.174 INFO    ] Checking for system updates...
[2026-06-13 11:53:07,196.196 INFO    ] 200
[2026-06-13 11:53:07,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:07,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:53:07,232.232 INFO    ] No update needed
[2026-06-13 11:53:07,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 11:53:07,254.254 INFO    ] 200
[2026-06-13 11:53:07,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:07,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:53:07,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:53:07,323.323 INFO    ] No camera update needed
[2026-06-13 11:53:07,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:53:07,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:53:07,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:53:07,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:53:09,371.371 INFO    ] ================================================
[2026-06-13 11:53:09,387.387 INFO    ] Launching Daemon at Sat Jun 13 11:53:09 IST 2026
[2026-06-13 11:53:09,398.398 INFO    ] ================================================
[2026-06-13 11:53:09,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:53:09
[2026-06-13 11:53:10,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:53:10,178.178 INFO    ] Initializing speech engine...
[2026-06-13 11:53:10,183.183 INFO    ] 2026-06-13 11:53:10
[2026-06-13 11:53:10,385.385 INFO    ] 2026-06-13 11:53:10
[2026-06-13 11:53:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:53:10,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:53:10,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:53:10,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:10,788.788 INFO    ] time= 13/06/2026 11:53:10
[2026-06-13 11:53:10,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:10,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:10,911.911 INFO    ] No existing commands found in stream
[2026-06-13 11:53:15,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:53:15,925.925 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 11:53:19,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:53:19,024.024 INFO    ] Checking for system updates...
[2026-06-13 11:53:19,046.046 INFO    ] 200
[2026-06-13 11:53:19,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:19,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:53:19,079.079 INFO    ] No update needed
[2026-06-13 11:53:19,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 11:53:19,102.102 INFO    ] 200
[2026-06-13 11:53:19,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:19,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:53:19,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:53:19,165.165 INFO    ] No camera update needed
[2026-06-13 11:53:19,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:53:19,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:53:19,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:53:19,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:53:21,213.213 INFO    ] ================================================
[2026-06-13 11:53:21,229.229 INFO    ] Launching Daemon at Sat Jun 13 11:53:21 IST 2026
[2026-06-13 11:53:21,244.244 INFO    ] ================================================
[2026-06-13 11:53:21,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:53:21
[2026-06-13 11:53:21,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:53:22,041.041 INFO    ] Initializing speech engine...
[2026-06-13 11:53:22,055.055 INFO    ] 2026-06-13 11:53:22
[2026-06-13 11:53:22,272.272 INFO    ] 2026-06-13 11:53:22
[2026-06-13 11:53:22,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:53:22,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:53:22,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:53:22,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:22,729.729 INFO    ] time= 13/06/2026 11:53:22
[2026-06-13 11:53:22,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:22,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:22,967.967 INFO    ] No existing commands found in stream
[2026-06-13 11:53:27,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:53:27,983.983 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 11:53:30,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:53:30,879.879 INFO    ] Checking for system updates...
[2026-06-13 11:53:30,918.918 INFO    ] 200
[2026-06-13 11:53:30,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:30,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:53:30,989.989 INFO    ] No update needed
[2026-06-13 11:53:30,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 11:53:31,029.029 INFO    ] 200
[2026-06-13 11:53:31,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:31,097.097 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:53:31,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:53:31,142.142 INFO    ] No camera update needed
[2026-06-13 11:53:31,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:53:31,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:53:31,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:53:31,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:53:33,196.196 INFO    ] ================================================
[2026-06-13 11:53:33,212.212 INFO    ] Launching Daemon at Sat Jun 13 11:53:33 IST 2026
[2026-06-13 11:53:33,224.224 INFO    ] ================================================
[2026-06-13 11:53:33,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:53:33
[2026-06-13 11:53:33,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:53:34,269.269 INFO    ] Initializing speech engine...
[2026-06-13 11:53:34,276.276 INFO    ] 2026-06-13 11:53:34
[2026-06-13 11:53:34,576.576 INFO    ] 2026-06-13 11:53:34
[2026-06-13 11:53:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:53:34,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:53:34,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:53:34,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:34,926.926 INFO    ] time= 13/06/2026 11:53:34
[2026-06-13 11:53:34,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:34,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:35,000.000 INFO    ] No existing commands found in stream
[2026-06-13 11:53:40,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:53:40,014.014 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 11:53:41,513.513 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:53:41,514.514 INFO    ] Checking for system updates...
[2026-06-13 11:53:41,536.536 INFO    ] 200
[2026-06-13 11:53:41,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:41,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:53:41,572.572 INFO    ] No update needed
[2026-06-13 11:53:41,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 11:53:41,593.593 INFO    ] 200
[2026-06-13 11:53:41,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:41,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:53:41,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:53:41,656.656 INFO    ] No camera update needed
[2026-06-13 11:53:41,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:53:41,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:53:41,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:53:41,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:53:43,704.704 INFO    ] ================================================
[2026-06-13 11:53:43,720.720 INFO    ] Launching Daemon at Sat Jun 13 11:53:43 IST 2026
[2026-06-13 11:53:43,732.732 INFO    ] ================================================
[2026-06-13 11:53:44,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:53:44
[2026-06-13 11:53:44,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:53:44,542.542 INFO    ] Initializing speech engine...
[2026-06-13 11:53:44,553.553 INFO    ] 2026-06-13 11:53:44
[2026-06-13 11:53:44,758.758 INFO    ] 2026-06-13 11:53:44
[2026-06-13 11:53:44,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:53:44,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:53:44,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:53:45,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:45,144.144 INFO    ] time= 13/06/2026 11:53:45
[2026-06-13 11:53:45,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:45,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:45,372.372 INFO    ] No existing commands found in stream
[2026-06-13 11:53:50,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:53:50,396.396 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 11:53:50,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:53:50,819.819 INFO    ] Checking for system updates...
[2026-06-13 11:53:50,840.840 INFO    ] 200
[2026-06-13 11:53:50,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:50,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:53:50,874.874 INFO    ] No update needed
[2026-06-13 11:53:50,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 11:53:50,896.896 INFO    ] 200
[2026-06-13 11:53:50,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:53:50,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:53:51,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:53:51,063.063 INFO    ] No camera update needed
[2026-06-13 11:53:51,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:53:51,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:53:51,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:53:51,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:53:53,121.121 INFO    ] ================================================
[2026-06-13 11:53:53,136.136 INFO    ] Launching Daemon at Sat Jun 13 11:53:53 IST 2026
[2026-06-13 11:53:53,147.147 INFO    ] ================================================
[2026-06-13 11:53:53,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:53:53
[2026-06-13 11:53:54,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:53:54,418.418 INFO    ] Initializing speech engine...
[2026-06-13 11:53:54,428.428 INFO    ] 2026-06-13 11:53:54
[2026-06-13 11:53:54,646.646 INFO    ] 2026-06-13 11:53:54
[2026-06-13 11:53:54,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:53:54,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:53:54,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:53:55,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:53:55,082.082 INFO    ] time= 13/06/2026 11:53:55
[2026-06-13 11:53:55,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:53:55,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:53:55,200.200 INFO    ] No existing commands found in stream
[2026-06-13 11:54:00,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:00,228.228 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 11:54:01,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:54:01,010.010 INFO    ] Checking for system updates...
[2026-06-13 11:54:01,033.033 INFO    ] 200
[2026-06-13 11:54:01,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:01,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:01,069.069 INFO    ] No update needed
[2026-06-13 11:54:01,070.070 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:01,091.091 INFO    ] 200
[2026-06-13 11:54:01,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:01,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:01,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:01,163.163 INFO    ] No camera update needed
[2026-06-13 11:54:01,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:01,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:01,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:01,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:03,213.213 INFO    ] ================================================
[2026-06-13 11:54:03,228.228 INFO    ] Launching Daemon at Sat Jun 13 11:54:03 IST 2026
[2026-06-13 11:54:03,239.239 INFO    ] ================================================
[2026-06-13 11:54:03,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:03
[2026-06-13 11:54:04,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:54:04,880.880 INFO    ] Initializing speech engine...
[2026-06-13 11:54:04,886.886 INFO    ] 2026-06-13 11:54:04
[2026-06-13 11:54:05,133.133 INFO    ] 2026-06-13 11:54:05
[2026-06-13 11:54:05,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:54:05,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:54:05,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:54:05,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:54:05,539.539 INFO    ] time= 13/06/2026 11:54:05
[2026-06-13 11:54:05,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:54:05,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:54:05,656.656 INFO    ] No existing commands found in stream
[2026-06-13 11:54:10,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:10,668.668 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 11:54:12,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:54:13,000.000 INFO    ] Checking for system updates...
[2026-06-13 11:54:13,021.021 INFO    ] 200
[2026-06-13 11:54:13,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:13,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:13,056.056 INFO    ] No update needed
[2026-06-13 11:54:13,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:13,079.079 INFO    ] 200
[2026-06-13 11:54:13,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:13,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:13,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:13,146.146 INFO    ] No camera update needed
[2026-06-13 11:54:13,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:13,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:13,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:13,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:15,195.195 INFO    ] ================================================
[2026-06-13 11:54:15,211.211 INFO    ] Launching Daemon at Sat Jun 13 11:54:15 IST 2026
[2026-06-13 11:54:15,223.223 INFO    ] ================================================
[2026-06-13 11:54:15,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:15
[2026-06-13 11:54:15,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:54:16,055.055 INFO    ] Initializing speech engine...
[2026-06-13 11:54:16,060.060 INFO    ] 2026-06-13 11:54:16
[2026-06-13 11:54:16,263.263 INFO    ] 2026-06-13 11:54:16
[2026-06-13 11:54:16,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:54:16,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:54:16,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:54:16,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:54:16,660.660 INFO    ] time= 13/06/2026 11:54:16
[2026-06-13 11:54:16,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:54:16,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:54:16,781.781 INFO    ] No existing commands found in stream
[2026-06-13 11:54:21,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:21,793.793 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 11:54:25,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:54:25,616.616 INFO    ] Checking for system updates...
[2026-06-13 11:54:25,637.637 INFO    ] 200
[2026-06-13 11:54:25,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:25,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:25,670.670 INFO    ] No update needed
[2026-06-13 11:54:25,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:25,691.691 INFO    ] 200
[2026-06-13 11:54:25,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:25,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:25,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:25,767.767 INFO    ] No camera update needed
[2026-06-13 11:54:25,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:25,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:25,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:25,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:27,816.816 INFO    ] ================================================
[2026-06-13 11:54:27,832.832 INFO    ] Launching Daemon at Sat Jun 13 11:54:27 IST 2026
[2026-06-13 11:54:27,843.843 INFO    ] ================================================
[2026-06-13 11:54:28,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:28
[2026-06-13 11:54:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:54:28,645.645 INFO    ] Initializing speech engine...
[2026-06-13 11:54:28,649.649 INFO    ] 2026-06-13 11:54:28
[2026-06-13 11:54:28,842.842 INFO    ] 2026-06-13 11:54:28
[2026-06-13 11:54:28,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:54:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:54:29,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:54:29,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:54:29,275.275 INFO    ] time= 13/06/2026 11:54:29
[2026-06-13 11:54:29,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:54:29,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:54:29,436.436 INFO    ] No existing commands found in stream
[2026-06-13 11:54:34,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:34,450.450 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 11:54:37,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:54:37,813.813 INFO    ] Checking for system updates...
[2026-06-13 11:54:37,834.834 INFO    ] 200
[2026-06-13 11:54:37,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:37,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:37,867.867 INFO    ] No update needed
[2026-06-13 11:54:37,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:37,888.888 INFO    ] 200
[2026-06-13 11:54:37,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:37,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:37,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:37,950.950 INFO    ] No camera update needed
[2026-06-13 11:54:37,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:37,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:37,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:37,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:40,996.996 INFO    ] ================================================
[2026-06-13 11:54:40,012.012 INFO    ] Launching Daemon at Sat Jun 13 11:54:40 IST 2026
[2026-06-13 11:54:40,023.023 INFO    ] ================================================
[2026-06-13 11:54:40,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:40
[2026-06-13 11:54:40,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:54:40,897.897 INFO    ] Initializing speech engine...
[2026-06-13 11:54:40,907.907 INFO    ] 2026-06-13 11:54:40
[2026-06-13 11:54:41,105.105 INFO    ] 2026-06-13 11:54:41
[2026-06-13 11:54:41,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:54:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:54:41,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:54:41,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:54:41,518.518 INFO    ] time= 13/06/2026 11:54:41
[2026-06-13 11:54:41,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:54:41,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:54:41,724.724 INFO    ] No existing commands found in stream
[2026-06-13 11:54:46,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:46,739.739 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 11:54:47,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:54:47,989.989 INFO    ] Checking for system updates...
[2026-06-13 11:54:48,011.011 INFO    ] 200
[2026-06-13 11:54:48,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:48,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:54:48,044.044 INFO    ] No update needed
[2026-06-13 11:54:48,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:48,066.066 INFO    ] 200
[2026-06-13 11:54:48,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:48,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:48,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:48,129.129 INFO    ] No camera update needed
[2026-06-13 11:54:48,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:48,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:48,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:48,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:50,176.176 INFO    ] ================================================
[2026-06-13 11:54:50,192.192 INFO    ] Launching Daemon at Sat Jun 13 11:54:50 IST 2026
[2026-06-13 11:54:50,203.203 INFO    ] ================================================
[2026-06-13 11:54:50,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:50
[2026-06-13 11:54:50,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:54:51,083.083 INFO    ] Initializing speech engine...
[2026-06-13 11:54:51,089.089 INFO    ] 2026-06-13 11:54:51
[2026-06-13 11:54:51,295.295 INFO    ] 2026-06-13 11:54:51
[2026-06-13 11:54:51,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:54:51,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:54:51,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:54:51,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:54:51,649.649 INFO    ] time= 13/06/2026 11:54:51
[2026-06-13 11:54:51,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:54:51,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:54:51,873.873 INFO    ] No existing commands found in stream
[2026-06-13 11:54:56,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:54:56,887.887 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 11:54:57,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:54:57,329.329 INFO    ] Checking for system updates...
[2026-06-13 11:54:57,350.350 INFO    ] 200
[2026-06-13 11:54:57,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:57,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:57,384.384 INFO    ] No update needed
[2026-06-13 11:54:57,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 11:54:57,406.406 INFO    ] 200
[2026-06-13 11:54:57,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:54:57,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:54:57,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:54:57,476.476 INFO    ] No camera update needed
[2026-06-13 11:54:57,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:54:57,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:54:57,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:54:57,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:54:59,525.525 INFO    ] ================================================
[2026-06-13 11:54:59,541.541 INFO    ] Launching Daemon at Sat Jun 13 11:54:59 IST 2026
[2026-06-13 11:54:59,553.553 INFO    ] ================================================
[2026-06-13 11:54:59,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:54:59
[2026-06-13 11:55:00,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:00,339.339 INFO    ] Initializing speech engine...
[2026-06-13 11:55:00,349.349 INFO    ] 2026-06-13 11:55:00
[2026-06-13 11:55:00,574.574 INFO    ] 2026-06-13 11:55:00
[2026-06-13 11:55:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:00,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:00,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:00,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:00,985.985 INFO    ] time= 13/06/2026 11:55:00
[2026-06-13 11:55:01,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:01,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:01,133.133 INFO    ] No existing commands found in stream
[2026-06-13 11:55:06,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:06,144.144 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 11:55:07,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:55:07,544.544 INFO    ] Checking for system updates...
[2026-06-13 11:55:07,564.564 INFO    ] 200
[2026-06-13 11:55:07,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:07,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:55:07,600.600 INFO    ] No update needed
[2026-06-13 11:55:07,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 11:55:07,622.622 INFO    ] 200
[2026-06-13 11:55:07,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:07,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:55:07,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:55:07,687.687 INFO    ] No camera update needed
[2026-06-13 11:55:07,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:55:07,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:55:07,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:55:07,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:55:09,734.734 INFO    ] ================================================
[2026-06-13 11:55:09,750.750 INFO    ] Launching Daemon at Sat Jun 13 11:55:09 IST 2026
[2026-06-13 11:55:09,761.761 INFO    ] ================================================
[2026-06-13 11:55:10,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:55:10
[2026-06-13 11:55:10,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:10,595.595 INFO    ] Initializing speech engine...
[2026-06-13 11:55:10,601.601 INFO    ] 2026-06-13 11:55:10
[2026-06-13 11:55:10,808.808 INFO    ] 2026-06-13 11:55:10
[2026-06-13 11:55:10,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:10,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:11,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:11,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:11,209.209 INFO    ] time= 13/06/2026 11:55:11
[2026-06-13 11:55:11,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:11,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:11,323.323 INFO    ] No existing commands found in stream
[2026-06-13 11:55:16,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:16,337.337 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 11:55:17,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:55:17,665.665 INFO    ] Checking for system updates...
[2026-06-13 11:55:17,686.686 INFO    ] 200
[2026-06-13 11:55:17,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:17,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:17,720.720 INFO    ] No update needed
[2026-06-13 11:55:17,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 11:55:17,741.741 INFO    ] 200
[2026-06-13 11:55:17,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:17,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:55:17,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:17,800.800 INFO    ] No camera update needed
[2026-06-13 11:55:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:55:17,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:55:17,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:55:17,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:55:19,848.848 INFO    ] ================================================
[2026-06-13 11:55:19,864.864 INFO    ] Launching Daemon at Sat Jun 13 11:55:19 IST 2026
[2026-06-13 11:55:19,874.874 INFO    ] ================================================
[2026-06-13 11:55:20,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:55:20
[2026-06-13 11:55:20,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:20,986.986 INFO    ] Initializing speech engine...
[2026-06-13 11:55:20,995.995 INFO    ] 2026-06-13 11:55:20
[2026-06-13 11:55:21,275.275 INFO    ] 2026-06-13 11:55:21
[2026-06-13 11:55:21,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:21,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:21,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:21,755.755 INFO    ] time= 13/06/2026 11:55:21
[2026-06-13 11:55:21,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:21,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:21,905.905 INFO    ] No existing commands found in stream
[2026-06-13 11:55:26,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:26,921.921 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 11:55:27,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:55:27,534.534 INFO    ] Checking for system updates...
[2026-06-13 11:55:27,555.555 INFO    ] 200
[2026-06-13 11:55:27,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:27,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:27,590.590 INFO    ] No update needed
[2026-06-13 11:55:27,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 11:55:27,611.611 INFO    ] 200
[2026-06-13 11:55:27,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:27,636.636 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:55:27,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:27,674.674 INFO    ] No camera update needed
[2026-06-13 11:55:27,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:55:27,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:55:27,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:55:27,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:55:29,720.720 INFO    ] ================================================
[2026-06-13 11:55:29,735.735 INFO    ] Launching Daemon at Sat Jun 13 11:55:29 IST 2026
[2026-06-13 11:55:29,746.746 INFO    ] ================================================
[2026-06-13 11:55:30,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:55:30
[2026-06-13 11:55:30,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:30,561.561 INFO    ] Initializing speech engine...
[2026-06-13 11:55:30,566.566 INFO    ] 2026-06-13 11:55:30
[2026-06-13 11:55:30,772.772 INFO    ] 2026-06-13 11:55:30
[2026-06-13 11:55:30,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:30,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:30,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:31,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:31,161.161 INFO    ] time= 13/06/2026 11:55:31
[2026-06-13 11:55:31,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:31,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:31,293.293 INFO    ] No existing commands found in stream
[2026-06-13 11:55:36,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:36,306.306 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 11:55:38,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:55:38,384.384 INFO    ] Checking for system updates...
[2026-06-13 11:55:38,405.405 INFO    ] 200
[2026-06-13 11:55:38,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:38,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:38,440.440 INFO    ] No update needed
[2026-06-13 11:55:38,441.441 INFO    ] Checking for camera pi updates...
[2026-06-13 11:55:38,462.462 INFO    ] 200
[2026-06-13 11:55:38,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:38,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:55:38,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:38,531.531 INFO    ] No camera update needed
[2026-06-13 11:55:38,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:55:38,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:55:38,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:55:38,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:55:40,580.580 INFO    ] ================================================
[2026-06-13 11:55:40,595.595 INFO    ] Launching Daemon at Sat Jun 13 11:55:40 IST 2026
[2026-06-13 11:55:40,606.606 INFO    ] ================================================
[2026-06-13 11:55:40,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:55:40
[2026-06-13 11:55:41,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:41,422.422 INFO    ] Initializing speech engine...
[2026-06-13 11:55:41,431.431 INFO    ] 2026-06-13 11:55:41
[2026-06-13 11:55:41,639.639 INFO    ] 2026-06-13 11:55:41
[2026-06-13 11:55:41,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:41,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:41,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:41,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:42,031.031 INFO    ] time= 13/06/2026 11:55:41
[2026-06-13 11:55:42,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:42,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:42,157.157 INFO    ] No existing commands found in stream
[2026-06-13 11:55:47,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:47,171.171 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 11:55:50,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:55:50,718.718 INFO    ] Checking for system updates...
[2026-06-13 11:55:50,739.739 INFO    ] 200
[2026-06-13 11:55:50,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:50,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:55:50,772.772 INFO    ] No update needed
[2026-06-13 11:55:50,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 11:55:50,794.794 INFO    ] 200
[2026-06-13 11:55:50,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:55:50,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:55:50,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:55:50,861.861 INFO    ] No camera update needed
[2026-06-13 11:55:50,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:55:50,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:55:50,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:55:50,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:55:52,910.910 INFO    ] ================================================
[2026-06-13 11:55:52,925.925 INFO    ] Launching Daemon at Sat Jun 13 11:55:52 IST 2026
[2026-06-13 11:55:52,936.936 INFO    ] ================================================
[2026-06-13 11:55:53,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:55:53
[2026-06-13 11:55:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:55:53,720.720 INFO    ] Initializing speech engine...
[2026-06-13 11:55:53,730.730 INFO    ] 2026-06-13 11:55:53
[2026-06-13 11:55:53,934.934 INFO    ] 2026-06-13 11:55:53
[2026-06-13 11:55:53,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:55:54,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:55:54,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:55:54,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:55:54,323.323 INFO    ] time= 13/06/2026 11:55:54
[2026-06-13 11:55:54,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:55:54,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:55:54,471.471 INFO    ] No existing commands found in stream
[2026-06-13 11:55:59,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:55:59,510.510 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 11:56:00,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:56:00,178.178 INFO    ] Checking for system updates...
[2026-06-13 11:56:00,199.199 INFO    ] 200
[2026-06-13 11:56:00,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:00,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:00,232.232 INFO    ] No update needed
[2026-06-13 11:56:00,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:00,255.255 INFO    ] 200
[2026-06-13 11:56:00,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:00,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:00,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:00,428.428 INFO    ] No camera update needed
[2026-06-13 11:56:00,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:00,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:00,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:00,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:02,469.469 INFO    ] ================================================
[2026-06-13 11:56:02,477.477 INFO    ] Launching Daemon at Sat Jun 13 11:56:02 IST 2026
[2026-06-13 11:56:02,483.483 INFO    ] ================================================
[2026-06-13 11:56:02,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:56:02
[2026-06-13 11:56:03,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:56:03,317.317 INFO    ] Initializing speech engine...
[2026-06-13 11:56:03,323.323 INFO    ] 2026-06-13 11:56:03
[2026-06-13 11:56:03,556.556 INFO    ] 2026-06-13 11:56:03
[2026-06-13 11:56:03,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:56:03,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:56:03,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:56:03,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:56:03,806.806 INFO    ] time= 13/06/2026 11:56:03
[2026-06-13 11:56:03,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:56:03,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:56:03,905.905 INFO    ] No existing commands found in stream
[2026-06-13 11:56:08,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:56:08,943.943 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 11:56:11,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:56:11,244.244 INFO    ] Checking for system updates...
[2026-06-13 11:56:11,267.267 INFO    ] 200
[2026-06-13 11:56:11,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:11,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:11,303.303 INFO    ] No update needed
[2026-06-13 11:56:11,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:11,325.325 INFO    ] 200
[2026-06-13 11:56:11,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:11,350.350 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:11,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:11,388.388 INFO    ] No camera update needed
[2026-06-13 11:56:11,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:11,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:11,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:11,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:13,437.437 INFO    ] ================================================
[2026-06-13 11:56:13,453.453 INFO    ] Launching Daemon at Sat Jun 13 11:56:13 IST 2026
[2026-06-13 11:56:13,463.463 INFO    ] ================================================
[2026-06-13 11:56:13,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:56:13
[2026-06-13 11:56:14,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:56:14,273.273 INFO    ] Initializing speech engine...
[2026-06-13 11:56:14,284.284 INFO    ] 2026-06-13 11:56:14
[2026-06-13 11:56:14,489.489 INFO    ] 2026-06-13 11:56:14
[2026-06-13 11:56:14,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:56:14,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:56:14,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:56:14,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:56:14,901.901 INFO    ] time= 13/06/2026 11:56:14
[2026-06-13 11:56:14,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:56:14,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:56:15,013.013 INFO    ] No existing commands found in stream
[2026-06-13 11:56:20,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:56:20,026.026 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 11:56:24,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:56:24,450.450 INFO    ] Checking for system updates...
[2026-06-13 11:56:24,488.488 INFO    ] 200
[2026-06-13 11:56:24,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:24,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:24,542.542 INFO    ] No update needed
[2026-06-13 11:56:24,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:24,563.563 INFO    ] 200
[2026-06-13 11:56:24,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:24,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:24,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:24,625.625 INFO    ] No camera update needed
[2026-06-13 11:56:24,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:24,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:24,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:24,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:26,675.675 INFO    ] ================================================
[2026-06-13 11:56:26,690.690 INFO    ] Launching Daemon at Sat Jun 13 11:56:26 IST 2026
[2026-06-13 11:56:26,701.701 INFO    ] ================================================
[2026-06-13 11:56:27,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:56:27
[2026-06-13 11:56:27,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:56:27,502.502 INFO    ] Initializing speech engine...
[2026-06-13 11:56:27,506.506 INFO    ] 2026-06-13 11:56:27
[2026-06-13 11:56:27,701.701 INFO    ] 2026-06-13 11:56:27
[2026-06-13 11:56:27,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:56:27,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:56:27,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:56:28,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:56:28,137.137 INFO    ] time= 13/06/2026 11:56:28
[2026-06-13 11:56:28,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:56:28,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:56:28,296.296 INFO    ] No existing commands found in stream
[2026-06-13 11:56:33,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:56:33,309.309 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 11:56:37,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:56:37,224.224 INFO    ] Checking for system updates...
[2026-06-13 11:56:37,245.245 INFO    ] 200
[2026-06-13 11:56:37,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:37,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:56:37,278.278 INFO    ] No update needed
[2026-06-13 11:56:37,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:37,301.301 INFO    ] 200
[2026-06-13 11:56:37,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:37,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:37,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:56:37,363.363 INFO    ] No camera update needed
[2026-06-13 11:56:37,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:37,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:37,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:37,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:39,409.409 INFO    ] ================================================
[2026-06-13 11:56:39,426.426 INFO    ] Launching Daemon at Sat Jun 13 11:56:39 IST 2026
[2026-06-13 11:56:39,438.438 INFO    ] ================================================
[2026-06-13 11:56:39,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:56:39
[2026-06-13 11:56:40,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:56:40,264.264 INFO    ] Initializing speech engine...
[2026-06-13 11:56:40,269.269 INFO    ] 2026-06-13 11:56:40
[2026-06-13 11:56:40,477.477 INFO    ] 2026-06-13 11:56:40
[2026-06-13 11:56:40,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:56:40,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:56:40,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:56:40,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:56:40,892.892 INFO    ] time= 13/06/2026 11:56:40
[2026-06-13 11:56:40,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:56:40,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:56:40,991.991 INFO    ] No existing commands found in stream
[2026-06-13 11:56:46,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:56:46,006.006 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 11:56:47,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:56:47,419.419 INFO    ] Checking for system updates...
[2026-06-13 11:56:47,441.441 INFO    ] 200
[2026-06-13 11:56:47,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:47,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:56:47,476.476 INFO    ] No update needed
[2026-06-13 11:56:47,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:47,497.497 INFO    ] 200
[2026-06-13 11:56:47,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:47,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:47,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:56:47,563.563 INFO    ] No camera update needed
[2026-06-13 11:56:47,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:47,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:47,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:47,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:49,610.610 INFO    ] ================================================
[2026-06-13 11:56:49,625.625 INFO    ] Launching Daemon at Sat Jun 13 11:56:49 IST 2026
[2026-06-13 11:56:49,636.636 INFO    ] ================================================
[2026-06-13 11:56:49,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:56:49
[2026-06-13 11:56:50,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:56:50,443.443 INFO    ] Initializing speech engine...
[2026-06-13 11:56:50,455.455 INFO    ] 2026-06-13 11:56:50
[2026-06-13 11:56:50,665.665 INFO    ] 2026-06-13 11:56:50
[2026-06-13 11:56:50,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:56:50,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:56:50,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:56:50,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:56:51,022.022 INFO    ] time= 13/06/2026 11:56:50
[2026-06-13 11:56:51,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:56:51,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:56:51,203.203 INFO    ] No existing commands found in stream
[2026-06-13 11:56:56,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:56:56,216.216 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 11:56:57,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:56:57,604.604 INFO    ] Checking for system updates...
[2026-06-13 11:56:57,626.626 INFO    ] 200
[2026-06-13 11:56:57,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:57,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:57,659.659 INFO    ] No update needed
[2026-06-13 11:56:57,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 11:56:57,680.680 INFO    ] 200
[2026-06-13 11:56:57,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:56:57,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:56:57,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:56:57,744.744 INFO    ] No camera update needed
[2026-06-13 11:56:57,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:56:57,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:56:57,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:56:57,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:56:59,789.789 INFO    ] ================================================
[2026-06-13 11:56:59,805.805 INFO    ] Launching Daemon at Sat Jun 13 11:56:59 IST 2026
[2026-06-13 11:56:59,817.817 INFO    ] ================================================
[2026-06-13 11:57:00,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:00
[2026-06-13 11:57:00,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:00,699.699 INFO    ] Initializing speech engine...
[2026-06-13 11:57:00,705.705 INFO    ] 2026-06-13 11:57:00
[2026-06-13 11:57:00,914.914 INFO    ] 2026-06-13 11:57:00
[2026-06-13 11:57:00,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:01,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:01,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:01,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:01,329.329 INFO    ] time= 13/06/2026 11:57:01
[2026-06-13 11:57:01,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:01,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:01,419.419 INFO    ] No existing commands found in stream
[2026-06-13 11:57:06,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:57:06,446.446 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 11:57:08,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:57:08,864.864 INFO    ] Checking for system updates...
[2026-06-13 11:57:08,885.885 INFO    ] 200
[2026-06-13 11:57:08,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:08,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:08,919.919 INFO    ] No update needed
[2026-06-13 11:57:08,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 11:57:08,940.940 INFO    ] 200
[2026-06-13 11:57:08,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:08,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:57:09,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:09,004.004 INFO    ] No camera update needed
[2026-06-13 11:57:09,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:57:09,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:57:09,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:57:09,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:57:11,051.051 INFO    ] ================================================
[2026-06-13 11:57:11,066.066 INFO    ] Launching Daemon at Sat Jun 13 11:57:11 IST 2026
[2026-06-13 11:57:11,077.077 INFO    ] ================================================
[2026-06-13 11:57:11,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:11
[2026-06-13 11:57:11,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:11,870.870 INFO    ] Initializing speech engine...
[2026-06-13 11:57:11,874.874 INFO    ] 2026-06-13 11:57:11
[2026-06-13 11:57:12,080.080 INFO    ] 2026-06-13 11:57:12
[2026-06-13 11:57:12,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:12,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:12,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:12,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:12,484.484 INFO    ] time= 13/06/2026 11:57:12
[2026-06-13 11:57:12,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:12,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:12,594.594 INFO    ] No existing commands found in stream
[2026-06-13 11:57:17,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:57:17,607.607 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 11:57:19,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:57:19,378.378 INFO    ] Checking for system updates...
[2026-06-13 11:57:19,401.401 INFO    ] 200
[2026-06-13 11:57:19,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:19,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:57:19,434.434 INFO    ] No update needed
[2026-06-13 11:57:19,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 11:57:19,456.456 INFO    ] 200
[2026-06-13 11:57:19,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:19,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:57:19,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:57:19,527.527 INFO    ] No camera update needed
[2026-06-13 11:57:19,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:57:19,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:57:19,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:57:19,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:57:21,577.577 INFO    ] ================================================
[2026-06-13 11:57:21,591.591 INFO    ] Launching Daemon at Sat Jun 13 11:57:21 IST 2026
[2026-06-13 11:57:21,603.603 INFO    ] ================================================
[2026-06-13 11:57:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:21
[2026-06-13 11:57:22,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:22,389.389 INFO    ] Initializing speech engine...
[2026-06-13 11:57:22,397.397 INFO    ] 2026-06-13 11:57:22
[2026-06-13 11:57:22,601.601 INFO    ] 2026-06-13 11:57:22
[2026-06-13 11:57:22,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:22,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:22,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:23,018.018 INFO    ] time= 13/06/2026 11:57:22
[2026-06-13 11:57:23,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:23,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:23,114.114 INFO    ] No existing commands found in stream
[2026-06-13 11:57:28,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:57:28,126.126 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 11:57:31,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:57:31,247.247 INFO    ] Checking for system updates...
[2026-06-13 11:57:31,269.269 INFO    ] 200
[2026-06-13 11:57:31,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:31,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:31,302.302 INFO    ] No update needed
[2026-06-13 11:57:31,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 11:57:31,323.323 INFO    ] 200
[2026-06-13 11:57:31,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:31,347.347 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:57:31,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:31,386.386 INFO    ] No camera update needed
[2026-06-13 11:57:31,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:57:31,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:57:31,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:57:31,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:57:33,431.431 INFO    ] ================================================
[2026-06-13 11:57:33,446.446 INFO    ] Launching Daemon at Sat Jun 13 11:57:33 IST 2026
[2026-06-13 11:57:33,457.457 INFO    ] ================================================
[2026-06-13 11:57:33,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:33
[2026-06-13 11:57:34,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:34,242.242 INFO    ] Initializing speech engine...
[2026-06-13 11:57:34,247.247 INFO    ] 2026-06-13 11:57:34
[2026-06-13 11:57:34,454.454 INFO    ] 2026-06-13 11:57:34
[2026-06-13 11:57:34,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:34,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:34,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:34,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:34,854.854 INFO    ] time= 13/06/2026 11:57:34
[2026-06-13 11:57:34,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:34,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:35,039.039 INFO    ] No existing commands found in stream
[2026-06-13 11:57:40,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:57:40,053.053 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 11:57:42,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 11:57:42,553.553 INFO    ] Checking for system updates...
[2026-06-13 11:57:42,573.573 INFO    ] 200
[2026-06-13 11:57:42,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:42,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:57:42,607.607 INFO    ] No update needed
[2026-06-13 11:57:42,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 11:57:42,628.628 INFO    ] 200
[2026-06-13 11:57:42,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:42,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:57:42,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:57:42,692.692 INFO    ] No camera update needed
[2026-06-13 11:57:42,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:57:42,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:57:42,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:57:42,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:57:44,740.740 INFO    ] ================================================
[2026-06-13 11:57:44,756.756 INFO    ] Launching Daemon at Sat Jun 13 11:57:44 IST 2026
[2026-06-13 11:57:44,768.768 INFO    ] ================================================
[2026-06-13 11:57:45,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:45
[2026-06-13 11:57:45,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:45,565.565 INFO    ] Initializing speech engine...
[2026-06-13 11:57:45,573.573 INFO    ] 2026-06-13 11:57:45
[2026-06-13 11:57:45,777.777 INFO    ] 2026-06-13 11:57:45
[2026-06-13 11:57:45,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:45,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:45,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:46,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:46,181.181 INFO    ] time= 13/06/2026 11:57:46
[2026-06-13 11:57:46,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:46,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:46,344.344 INFO    ] No existing commands found in stream
[2026-06-13 11:57:51,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:57:51,357.357 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 11:57:54,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:57:54,964.964 INFO    ] Checking for system updates...
[2026-06-13 11:57:54,987.987 INFO    ] 200
[2026-06-13 11:57:54,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:55,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:55,024.024 INFO    ] No update needed
[2026-06-13 11:57:55,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 11:57:55,048.048 INFO    ] 200
[2026-06-13 11:57:55,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:57:55,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:57:55,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:57:55,117.117 INFO    ] No camera update needed
[2026-06-13 11:57:55,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:57:55,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:57:55,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:57:55,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:57:57,171.171 INFO    ] ================================================
[2026-06-13 11:57:57,189.189 INFO    ] Launching Daemon at Sat Jun 13 11:57:57 IST 2026
[2026-06-13 11:57:57,200.200 INFO    ] ================================================
[2026-06-13 11:57:57,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:57:57
[2026-06-13 11:57:57,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:57:58,026.026 INFO    ] Initializing speech engine...
[2026-06-13 11:57:58,040.040 INFO    ] 2026-06-13 11:57:58
[2026-06-13 11:57:58,261.261 INFO    ] 2026-06-13 11:57:58
[2026-06-13 11:57:58,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:57:58,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:57:58,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:57:58,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:57:58,695.695 INFO    ] time= 13/06/2026 11:57:58
[2026-06-13 11:57:58,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:57:58,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:57:58,822.822 INFO    ] No existing commands found in stream
[2026-06-13 11:58:03,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:03,835.835 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 11:58:04,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:58:04,108.108 INFO    ] Checking for system updates...
[2026-06-13 11:58:04,131.131 INFO    ] 200
[2026-06-13 11:58:04,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:04,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:04,164.164 INFO    ] No update needed
[2026-06-13 11:58:04,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:04,185.185 INFO    ] 200
[2026-06-13 11:58:04,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:04,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:04,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:04,252.252 INFO    ] No camera update needed
[2026-06-13 11:58:04,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:04,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:04,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:04,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:06,300.300 INFO    ] ================================================
[2026-06-13 11:58:06,316.316 INFO    ] Launching Daemon at Sat Jun 13 11:58:06 IST 2026
[2026-06-13 11:58:06,327.327 INFO    ] ================================================
[2026-06-13 11:58:06,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:06
[2026-06-13 11:58:06,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:07,102.102 INFO    ] Initializing speech engine...
[2026-06-13 11:58:07,107.107 INFO    ] 2026-06-13 11:58:07
[2026-06-13 11:58:07,311.311 INFO    ] 2026-06-13 11:58:07
[2026-06-13 11:58:07,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:07,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:07,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:07,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:07,611.611 INFO    ] time= 13/06/2026 11:58:07
[2026-06-13 11:58:07,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:07,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:07,791.791 INFO    ] No existing commands found in stream
[2026-06-13 11:58:12,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:12,823.823 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 11:58:14,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:58:14,724.724 INFO    ] Checking for system updates...
[2026-06-13 11:58:14,746.746 INFO    ] 200
[2026-06-13 11:58:14,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:14,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:58:14,780.780 INFO    ] No update needed
[2026-06-13 11:58:14,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:14,803.803 INFO    ] 200
[2026-06-13 11:58:14,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:14,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:14,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:58:14,865.865 INFO    ] No camera update needed
[2026-06-13 11:58:14,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:14,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:14,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:14,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:16,912.912 INFO    ] ================================================
[2026-06-13 11:58:16,928.928 INFO    ] Launching Daemon at Sat Jun 13 11:58:16 IST 2026
[2026-06-13 11:58:16,939.939 INFO    ] ================================================
[2026-06-13 11:58:17,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:17
[2026-06-13 11:58:17,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:17,800.800 INFO    ] Initializing speech engine...
[2026-06-13 11:58:17,804.804 INFO    ] 2026-06-13 11:58:17
[2026-06-13 11:58:18,011.011 INFO    ] 2026-06-13 11:58:17
[2026-06-13 11:58:18,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:18,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:18,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:18,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:18,430.430 INFO    ] time= 13/06/2026 11:58:18
[2026-06-13 11:58:18,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:18,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:18,527.527 INFO    ] No existing commands found in stream
[2026-06-13 11:58:23,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:23,541.541 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 11:58:24,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:58:24,345.345 INFO    ] Checking for system updates...
[2026-06-13 11:58:24,368.368 INFO    ] 200
[2026-06-13 11:58:24,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:24,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:24,403.403 INFO    ] No update needed
[2026-06-13 11:58:24,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:24,425.425 INFO    ] 200
[2026-06-13 11:58:24,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:24,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:24,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:24,488.488 INFO    ] No camera update needed
[2026-06-13 11:58:24,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:24,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:24,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:24,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:26,539.539 INFO    ] ================================================
[2026-06-13 11:58:26,555.555 INFO    ] Launching Daemon at Sat Jun 13 11:58:26 IST 2026
[2026-06-13 11:58:26,566.566 INFO    ] ================================================
[2026-06-13 11:58:26,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:26
[2026-06-13 11:58:27,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:27,427.427 INFO    ] Initializing speech engine...
[2026-06-13 11:58:27,431.431 INFO    ] 2026-06-13 11:58:27
[2026-06-13 11:58:27,639.639 INFO    ] 2026-06-13 11:58:27
[2026-06-13 11:58:27,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:27,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:27,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:27,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:28,043.043 INFO    ] time= 13/06/2026 11:58:27
[2026-06-13 11:58:28,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:28,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:28,159.159 INFO    ] No existing commands found in stream
[2026-06-13 11:58:33,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:33,172.172 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 11:58:35,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 11:58:35,246.246 INFO    ] Checking for system updates...
[2026-06-13 11:58:35,268.268 INFO    ] 200
[2026-06-13 11:58:35,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:35,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:35,302.302 INFO    ] No update needed
[2026-06-13 11:58:35,303.303 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:35,323.323 INFO    ] 200
[2026-06-13 11:58:35,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:35,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:35,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:58:35,388.388 INFO    ] No camera update needed
[2026-06-13 11:58:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:35,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:35,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:35,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:37,435.435 INFO    ] ================================================
[2026-06-13 11:58:37,451.451 INFO    ] Launching Daemon at Sat Jun 13 11:58:37 IST 2026
[2026-06-13 11:58:37,461.461 INFO    ] ================================================
[2026-06-13 11:58:37,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:37
[2026-06-13 11:58:38,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:38,288.288 INFO    ] Initializing speech engine...
[2026-06-13 11:58:38,293.293 INFO    ] 2026-06-13 11:58:38
[2026-06-13 11:58:38,497.497 INFO    ] 2026-06-13 11:58:38
[2026-06-13 11:58:38,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:38,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:38,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:38,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:38,897.897 INFO    ] time= 13/06/2026 11:58:38
[2026-06-13 11:58:38,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:38,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:39,011.011 INFO    ] No existing commands found in stream
[2026-06-13 11:58:44,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:44,025.025 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 11:58:44,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:58:44,985.985 INFO    ] Checking for system updates...
[2026-06-13 11:58:45,006.006 INFO    ] 200
[2026-06-13 11:58:45,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:45,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:45,040.040 INFO    ] No update needed
[2026-06-13 11:58:45,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:45,061.061 INFO    ] 200
[2026-06-13 11:58:45,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:45,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:45,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:45,125.125 INFO    ] No camera update needed
[2026-06-13 11:58:45,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:45,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:45,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:45,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:47,173.173 INFO    ] ================================================
[2026-06-13 11:58:47,189.189 INFO    ] Launching Daemon at Sat Jun 13 11:58:47 IST 2026
[2026-06-13 11:58:47,202.202 INFO    ] ================================================
[2026-06-13 11:58:47,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:47
[2026-06-13 11:58:47,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:48,024.024 INFO    ] Initializing speech engine...
[2026-06-13 11:58:48,036.036 INFO    ] 2026-06-13 11:58:48
[2026-06-13 11:58:48,291.291 INFO    ] 2026-06-13 11:58:48
[2026-06-13 11:58:48,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:48,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:48,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:48,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:48,761.761 INFO    ] time= 13/06/2026 11:58:48
[2026-06-13 11:58:48,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:48,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:48,986.986 INFO    ] No existing commands found in stream
[2026-06-13 11:58:54,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:58:54,011.011 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 11:58:55,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 11:58:55,230.230 INFO    ] Checking for system updates...
[2026-06-13 11:58:55,250.250 INFO    ] 200
[2026-06-13 11:58:55,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:55,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:55,284.284 INFO    ] No update needed
[2026-06-13 11:58:55,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 11:58:55,304.304 INFO    ] 200
[2026-06-13 11:58:55,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:58:55,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:58:55,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:58:55,372.372 INFO    ] No camera update needed
[2026-06-13 11:58:55,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:58:55,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:58:55,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:58:55,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:58:57,419.419 INFO    ] ================================================
[2026-06-13 11:58:57,434.434 INFO    ] Launching Daemon at Sat Jun 13 11:58:57 IST 2026
[2026-06-13 11:58:57,445.445 INFO    ] ================================================
[2026-06-13 11:58:57,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:58:57
[2026-06-13 11:58:58,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:58:58,268.268 INFO    ] Initializing speech engine...
[2026-06-13 11:58:58,273.273 INFO    ] 2026-06-13 11:58:58
[2026-06-13 11:58:58,467.467 INFO    ] 2026-06-13 11:58:58
[2026-06-13 11:58:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:58:58,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:58:58,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:58:58,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:58:58,894.894 INFO    ] time= 13/06/2026 11:58:58
[2026-06-13 11:58:58,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:58:58,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:58:59,079.079 INFO    ] No existing commands found in stream
[2026-06-13 11:59:04,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:59:04,093.093 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 11:59:06,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:59:06,744.744 INFO    ] Checking for system updates...
[2026-06-13 11:59:06,764.764 INFO    ] 200
[2026-06-13 11:59:06,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:06,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:06,798.798 INFO    ] No update needed
[2026-06-13 11:59:06,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 11:59:06,819.819 INFO    ] 200
[2026-06-13 11:59:06,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:06,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:59:06,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:06,884.884 INFO    ] No camera update needed
[2026-06-13 11:59:06,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:59:06,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:59:06,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:59:06,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:59:08,931.931 INFO    ] ================================================
[2026-06-13 11:59:08,947.947 INFO    ] Launching Daemon at Sat Jun 13 11:59:08 IST 2026
[2026-06-13 11:59:08,958.958 INFO    ] ================================================
[2026-06-13 11:59:09,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:59:09
[2026-06-13 11:59:09,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:59:09,762.762 INFO    ] Initializing speech engine...
[2026-06-13 11:59:09,766.766 INFO    ] 2026-06-13 11:59:09
[2026-06-13 11:59:09,996.996 INFO    ] 2026-06-13 11:59:09
[2026-06-13 11:59:10,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:59:10,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:59:10,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:59:10,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:59:10,397.397 INFO    ] time= 13/06/2026 11:59:10
[2026-06-13 11:59:10,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:59:10,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:59:10,559.559 INFO    ] No existing commands found in stream
[2026-06-13 11:59:15,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:59:15,572.572 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 11:59:19,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 11:59:19,603.603 INFO    ] Checking for system updates...
[2026-06-13 11:59:19,623.623 INFO    ] 200
[2026-06-13 11:59:19,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:19,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:59:19,656.656 INFO    ] No update needed
[2026-06-13 11:59:19,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 11:59:19,680.680 INFO    ] 200
[2026-06-13 11:59:19,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:19,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:59:19,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:59:19,744.744 INFO    ] No camera update needed
[2026-06-13 11:59:19,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:59:19,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:59:19,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:59:19,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:59:21,792.792 INFO    ] ================================================
[2026-06-13 11:59:21,807.807 INFO    ] Launching Daemon at Sat Jun 13 11:59:21 IST 2026
[2026-06-13 11:59:21,818.818 INFO    ] ================================================
[2026-06-13 11:59:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:59:22
[2026-06-13 11:59:22,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:59:23,106.106 INFO    ] Initializing speech engine...
[2026-06-13 11:59:23,116.116 INFO    ] 2026-06-13 11:59:23
[2026-06-13 11:59:23,374.374 INFO    ] 2026-06-13 11:59:23
[2026-06-13 11:59:23,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:59:23,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:59:23,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:59:23,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:59:23,713.713 INFO    ] time= 13/06/2026 11:59:23
[2026-06-13 11:59:23,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:59:23,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:59:23,826.826 INFO    ] No existing commands found in stream
[2026-06-13 11:59:28,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:59:28,842.842 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 11:59:31,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:59:31,618.618 INFO    ] Checking for system updates...
[2026-06-13 11:59:31,638.638 INFO    ] 200
[2026-06-13 11:59:31,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:31,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:31,671.671 INFO    ] No update needed
[2026-06-13 11:59:31,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 11:59:31,695.695 INFO    ] 200
[2026-06-13 11:59:31,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:31,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:59:31,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:31,755.755 INFO    ] No camera update needed
[2026-06-13 11:59:31,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:59:31,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:59:31,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:59:31,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:59:33,795.795 INFO    ] ================================================
[2026-06-13 11:59:33,811.811 INFO    ] Launching Daemon at Sat Jun 13 11:59:33 IST 2026
[2026-06-13 11:59:33,822.822 INFO    ] ================================================
[2026-06-13 11:59:34,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:59:34
[2026-06-13 11:59:34,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:59:34,626.626 INFO    ] Initializing speech engine...
[2026-06-13 11:59:34,638.638 INFO    ] 2026-06-13 11:59:34
[2026-06-13 11:59:34,845.845 INFO    ] 2026-06-13 11:59:34
[2026-06-13 11:59:34,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:59:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:59:35,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:59:35,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:59:35,259.259 INFO    ] time= 13/06/2026 11:59:35
[2026-06-13 11:59:35,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:59:35,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:59:35,354.354 INFO    ] No existing commands found in stream
[2026-06-13 11:59:40,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:59:40,368.368 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 11:59:42,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 11:59:42,084.084 INFO    ] Checking for system updates...
[2026-06-13 11:59:42,104.104 INFO    ] 200
[2026-06-13 11:59:42,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:42,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:59:42,137.137 INFO    ] No update needed
[2026-06-13 11:59:42,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 11:59:42,158.158 INFO    ] 200
[2026-06-13 11:59:42,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:42,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:59:42,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 11:59:42,222.222 INFO    ] No camera update needed
[2026-06-13 11:59:42,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:59:42,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:59:42,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:59:42,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:59:44,270.270 INFO    ] ================================================
[2026-06-13 11:59:44,286.286 INFO    ] Launching Daemon at Sat Jun 13 11:59:44 IST 2026
[2026-06-13 11:59:44,297.297 INFO    ] ================================================
[2026-06-13 11:59:44,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:59:44
[2026-06-13 11:59:44,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:59:45,090.090 INFO    ] Initializing speech engine...
[2026-06-13 11:59:45,095.095 INFO    ] 2026-06-13 11:59:45
[2026-06-13 11:59:45,299.299 INFO    ] 2026-06-13 11:59:45
[2026-06-13 11:59:45,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:59:45,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:59:45,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:59:45,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:59:45,713.713 INFO    ] time= 13/06/2026 11:59:45
[2026-06-13 11:59:45,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:59:45,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:59:45,812.812 INFO    ] No existing commands found in stream
[2026-06-13 11:59:50,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 11:59:50,825.825 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 11:59:52,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 11:59:52,749.749 INFO    ] Checking for system updates...
[2026-06-13 11:59:52,769.769 INFO    ] 200
[2026-06-13 11:59:52,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:52,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:52,803.803 INFO    ] No update needed
[2026-06-13 11:59:52,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 11:59:52,823.823 INFO    ] 200
[2026-06-13 11:59:52,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 11:59:52,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 11:59:52,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 11:59:52,897.897 INFO    ] No camera update needed
[2026-06-13 11:59:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 11:59:52,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 11:59:52,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 11:59:52,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 11:59:54,944.944 INFO    ] ================================================
[2026-06-13 11:59:54,960.960 INFO    ] Launching Daemon at Sat Jun 13 11:59:54 IST 2026
[2026-06-13 11:59:54,971.971 INFO    ] ================================================
[2026-06-13 11:59:55,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 11:59:55
[2026-06-13 11:59:56,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 11:59:56,331.331 INFO    ] Initializing speech engine...
[2026-06-13 11:59:56,340.340 INFO    ] 2026-06-13 11:59:56
[2026-06-13 11:59:56,615.615 INFO    ] 2026-06-13 11:59:56
[2026-06-13 11:59:56,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 11:59:56,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 11:59:56,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 11:59:57,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 11:59:57,091.091 INFO    ] time= 13/06/2026 11:59:57
[2026-06-13 11:59:57,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 11:59:57,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 11:59:57,323.323 INFO    ] No existing commands found in stream
[2026-06-13 12:00:02,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:02,356.356 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 12:00:07,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:00:07,867.867 INFO    ] Checking for system updates...
[2026-06-13 12:00:07,904.904 INFO    ] 200
[2026-06-13 12:00:07,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:07,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:07,962.962 INFO    ] No update needed
[2026-06-13 12:00:07,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 12:00:07,998.998 INFO    ] 200
[2026-06-13 12:00:08,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:08,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:00:08,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:08,182.182 INFO    ] No camera update needed
[2026-06-13 12:00:08,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:00:08,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:00:08,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:00:08,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:00:10,231.231 INFO    ] ================================================
[2026-06-13 12:00:10,246.246 INFO    ] Launching Daemon at Sat Jun 13 12:00:10 IST 2026
[2026-06-13 12:00:10,257.257 INFO    ] ================================================
[2026-06-13 12:00:10,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:00:10
[2026-06-13 12:00:10,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:00:11,089.089 INFO    ] Initializing speech engine...
[2026-06-13 12:00:11,094.094 INFO    ] 2026-06-13 12:00:11
[2026-06-13 12:00:11,297.297 INFO    ] 2026-06-13 12:00:11
[2026-06-13 12:00:11,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:00:11,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:00:11,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:00:11,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:00:11,555.555 INFO    ] time= 13/06/2026 12:00:11
[2026-06-13 12:00:11,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:00:11,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:00:11,744.744 INFO    ] No existing commands found in stream
[2026-06-13 12:00:16,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:16,765.765 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 12:00:18,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:00:18,159.159 INFO    ] Checking for system updates...
[2026-06-13 12:00:18,182.182 INFO    ] 200
[2026-06-13 12:00:18,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:18,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:18,216.216 INFO    ] No update needed
[2026-06-13 12:00:18,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 12:00:18,236.236 INFO    ] 200
[2026-06-13 12:00:18,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:18,262.262 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:00:18,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:18,289.289 INFO    ] No camera update needed
[2026-06-13 12:00:18,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:00:18,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:00:18,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:00:18,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:00:20,339.339 INFO    ] ================================================
[2026-06-13 12:00:20,355.355 INFO    ] Launching Daemon at Sat Jun 13 12:00:20 IST 2026
[2026-06-13 12:00:20,366.366 INFO    ] ================================================
[2026-06-13 12:00:20,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:00:20
[2026-06-13 12:00:21,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:00:21,200.200 INFO    ] Initializing speech engine...
[2026-06-13 12:00:21,209.209 INFO    ] 2026-06-13 12:00:21
[2026-06-13 12:00:21,432.432 INFO    ] 2026-06-13 12:00:21
[2026-06-13 12:00:21,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:00:21,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:00:21,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:00:21,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:00:21,813.813 INFO    ] time= 13/06/2026 12:00:21
[2026-06-13 12:00:21,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:00:21,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:00:21,997.997 INFO    ] No existing commands found in stream
[2026-06-13 12:00:27,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:27,009.009 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 12:00:31,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:00:31,185.185 INFO    ] Checking for system updates...
[2026-06-13 12:00:31,206.206 INFO    ] 200
[2026-06-13 12:00:31,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:31,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:31,239.239 INFO    ] No update needed
[2026-06-13 12:00:31,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 12:00:31,260.260 INFO    ] 200
[2026-06-13 12:00:31,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:31,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:00:31,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:31,323.323 INFO    ] No camera update needed
[2026-06-13 12:00:31,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:00:31,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:00:31,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:00:31,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:00:33,364.364 INFO    ] ================================================
[2026-06-13 12:00:33,380.380 INFO    ] Launching Daemon at Sat Jun 13 12:00:33 IST 2026
[2026-06-13 12:00:33,390.390 INFO    ] ================================================
[2026-06-13 12:00:33,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:00:33
[2026-06-13 12:00:34,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:00:34,185.185 INFO    ] Initializing speech engine...
[2026-06-13 12:00:34,198.198 INFO    ] 2026-06-13 12:00:34
[2026-06-13 12:00:34,421.421 INFO    ] 2026-06-13 12:00:34
[2026-06-13 12:00:34,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:00:34,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:00:34,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:00:34,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:00:34,786.786 INFO    ] time= 13/06/2026 12:00:34
[2026-06-13 12:00:34,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:00:34,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:00:34,938.938 INFO    ] No existing commands found in stream
[2026-06-13 12:00:39,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:39,966.966 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 12:00:40,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:00:40,294.294 INFO    ] Checking for system updates...
[2026-06-13 12:00:40,316.316 INFO    ] 200
[2026-06-13 12:00:40,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:40,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:00:40,350.350 INFO    ] No update needed
[2026-06-13 12:00:40,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 12:00:40,371.371 INFO    ] 200
[2026-06-13 12:00:40,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:40,396.396 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:00:40,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:00:40,451.451 INFO    ] No camera update needed
[2026-06-13 12:00:40,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:00:40,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:00:40,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:00:40,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:00:42,507.507 INFO    ] ================================================
[2026-06-13 12:00:42,522.522 INFO    ] Launching Daemon at Sat Jun 13 12:00:42 IST 2026
[2026-06-13 12:00:42,534.534 INFO    ] ================================================
[2026-06-13 12:00:43,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:00:43
[2026-06-13 12:00:43,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:00:43,776.776 INFO    ] Initializing speech engine...
[2026-06-13 12:00:43,781.781 INFO    ] 2026-06-13 12:00:43
[2026-06-13 12:00:43,998.998 INFO    ] 2026-06-13 12:00:43
[2026-06-13 12:00:44,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:00:44,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:00:44,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:00:44,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:00:44,452.452 INFO    ] time= 13/06/2026 12:00:44
[2026-06-13 12:00:44,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:00:44,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:00:44,582.582 INFO    ] No existing commands found in stream
[2026-06-13 12:00:49,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:49,595.595 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 12:00:50,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:00:50,404.404 INFO    ] Checking for system updates...
[2026-06-13 12:00:50,426.426 INFO    ] 200
[2026-06-13 12:00:50,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:50,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:00:50,459.459 INFO    ] No update needed
[2026-06-13 12:00:50,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 12:00:50,480.480 INFO    ] 200
[2026-06-13 12:00:50,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:00:50,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:00:50,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:00:50,544.544 INFO    ] No camera update needed
[2026-06-13 12:00:50,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:00:50,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:00:50,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:00:50,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:00:52,592.592 INFO    ] ================================================
[2026-06-13 12:00:52,607.607 INFO    ] Launching Daemon at Sat Jun 13 12:00:52 IST 2026
[2026-06-13 12:00:52,618.618 INFO    ] ================================================
[2026-06-13 12:00:52,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:00:52
[2026-06-13 12:00:53,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:00:53,392.392 INFO    ] Initializing speech engine...
[2026-06-13 12:00:53,405.405 INFO    ] 2026-06-13 12:00:53
[2026-06-13 12:00:53,615.615 INFO    ] 2026-06-13 12:00:53
[2026-06-13 12:00:53,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:00:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:00:53,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:00:53,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:00:54,036.036 INFO    ] time= 13/06/2026 12:00:53
[2026-06-13 12:00:54,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:00:54,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:00:54,131.131 INFO    ] No existing commands found in stream
[2026-06-13 12:00:59,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:00:59,145.145 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 12:01:01,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:01:01,104.104 INFO    ] Checking for system updates...
[2026-06-13 12:01:01,125.125 INFO    ] 200
[2026-06-13 12:01:01,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:01,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:01:01,158.158 INFO    ] No update needed
[2026-06-13 12:01:01,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 12:01:01,181.181 INFO    ] 200
[2026-06-13 12:01:01,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:01,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:01:01,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:01,253.253 INFO    ] No camera update needed
[2026-06-13 12:01:01,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:01:01,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:01:01,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:01:01,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:01:03,296.296 INFO    ] ================================================
[2026-06-13 12:01:03,312.312 INFO    ] Launching Daemon at Sat Jun 13 12:01:03 IST 2026
[2026-06-13 12:01:03,322.322 INFO    ] ================================================
[2026-06-13 12:01:03,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:01:03
[2026-06-13 12:01:04,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:01:04,203.203 INFO    ] Initializing speech engine...
[2026-06-13 12:01:04,208.208 INFO    ] 2026-06-13 12:01:04
[2026-06-13 12:01:04,423.423 INFO    ] 2026-06-13 12:01:04
[2026-06-13 12:01:04,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:01:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:01:04,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:01:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:01:04,783.783 INFO    ] time= 13/06/2026 12:01:04
[2026-06-13 12:01:04,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:01:04,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:01:04,953.953 INFO    ] No existing commands found in stream
[2026-06-13 12:01:09,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:01:09,967.967 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 12:01:13,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:01:13,457.457 INFO    ] Checking for system updates...
[2026-06-13 12:01:13,479.479 INFO    ] 200
[2026-06-13 12:01:13,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:13,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:13,513.513 INFO    ] No update needed
[2026-06-13 12:01:13,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 12:01:13,534.534 INFO    ] 200
[2026-06-13 12:01:13,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:13,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:01:13,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:13,601.601 INFO    ] No camera update needed
[2026-06-13 12:01:13,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:01:13,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:01:13,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:01:13,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:01:15,652.652 INFO    ] ================================================
[2026-06-13 12:01:15,667.667 INFO    ] Launching Daemon at Sat Jun 13 12:01:15 IST 2026
[2026-06-13 12:01:15,678.678 INFO    ] ================================================
[2026-06-13 12:01:16,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:01:16
[2026-06-13 12:01:16,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:01:16,456.456 INFO    ] Initializing speech engine...
[2026-06-13 12:01:16,460.460 INFO    ] 2026-06-13 12:01:16
[2026-06-13 12:01:16,669.669 INFO    ] 2026-06-13 12:01:16
[2026-06-13 12:01:16,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:01:16,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:01:16,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:01:16,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:01:16,941.941 INFO    ] time= 13/06/2026 12:01:16
[2026-06-13 12:01:16,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:01:16,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:01:17,038.038 INFO    ] No existing commands found in stream
[2026-06-13 12:01:22,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:01:22,073.073 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 12:01:26,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:01:26,239.239 INFO    ] Checking for system updates...
[2026-06-13 12:01:26,260.260 INFO    ] 200
[2026-06-13 12:01:26,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:26,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:26,293.293 INFO    ] No update needed
[2026-06-13 12:01:26,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 12:01:26,314.314 INFO    ] 200
[2026-06-13 12:01:26,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:26,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:01:26,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:26,376.376 INFO    ] No camera update needed
[2026-06-13 12:01:26,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:01:26,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:01:26,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:01:26,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:01:28,426.426 INFO    ] ================================================
[2026-06-13 12:01:28,441.441 INFO    ] Launching Daemon at Sat Jun 13 12:01:28 IST 2026
[2026-06-13 12:01:28,452.452 INFO    ] ================================================
[2026-06-13 12:01:28,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:01:28
[2026-06-13 12:01:29,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:01:29,278.278 INFO    ] Initializing speech engine...
[2026-06-13 12:01:29,288.288 INFO    ] 2026-06-13 12:01:29
[2026-06-13 12:01:29,492.492 INFO    ] 2026-06-13 12:01:29
[2026-06-13 12:01:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:01:29,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:01:29,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:01:29,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:01:29,902.902 INFO    ] time= 13/06/2026 12:01:29
[2026-06-13 12:01:29,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:01:29,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:01:30,002.002 INFO    ] No existing commands found in stream
[2026-06-13 12:01:35,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:01:35,011.011 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 12:01:35,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:01:35,449.449 INFO    ] Checking for system updates...
[2026-06-13 12:01:35,489.489 INFO    ] 200
[2026-06-13 12:01:35,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:35,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:01:35,576.576 INFO    ] No update needed
[2026-06-13 12:01:35,577.577 INFO    ] Checking for camera pi updates...
[2026-06-13 12:01:35,617.617 INFO    ] 200
[2026-06-13 12:01:35,619.619 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:35,622.622 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 12:01:35,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:01:35,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:01:35,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:01:35,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:01:37,667.667 INFO    ] ================================================
[2026-06-13 12:01:37,679.679 INFO    ] Launching Daemon at Sat Jun 13 12:01:37 IST 2026
[2026-06-13 12:01:37,685.685 INFO    ] ================================================
[2026-06-13 12:01:38,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:01:38
[2026-06-13 12:01:38,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:01:38,500.500 INFO    ] Initializing speech engine...
[2026-06-13 12:01:38,506.506 INFO    ] 2026-06-13 12:01:38
[2026-06-13 12:01:38,710.710 INFO    ] 2026-06-13 12:01:38
[2026-06-13 12:01:38,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:01:38,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:01:38,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:01:39,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:01:39,120.120 INFO    ] time= 13/06/2026 12:01:39
[2026-06-13 12:01:39,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:01:39,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:01:39,231.231 INFO    ] No existing commands found in stream
[2026-06-13 12:01:44,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:01:44,245.245 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 12:01:48,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:01:48,483.483 INFO    ] Checking for system updates...
[2026-06-13 12:01:48,504.504 INFO    ] 200
[2026-06-13 12:01:48,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:48,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:01:48,538.538 INFO    ] No update needed
[2026-06-13 12:01:48,540.540 INFO    ] Checking for camera pi updates...
[2026-06-13 12:01:48,559.559 INFO    ] 200
[2026-06-13 12:01:48,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:01:48,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:01:48,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:01:48,635.635 INFO    ] No camera update needed
[2026-06-13 12:01:48,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:01:48,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:01:48,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:01:48,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:01:50,684.684 INFO    ] ================================================
[2026-06-13 12:01:50,700.700 INFO    ] Launching Daemon at Sat Jun 13 12:01:50 IST 2026
[2026-06-13 12:01:50,710.710 INFO    ] ================================================
[2026-06-13 12:01:51,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:01:51
[2026-06-13 12:01:51,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:01:51,496.496 INFO    ] Initializing speech engine...
[2026-06-13 12:01:51,502.502 INFO    ] 2026-06-13 12:01:51
[2026-06-13 12:01:51,703.703 INFO    ] 2026-06-13 12:01:51
[2026-06-13 12:01:51,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:01:51,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:01:51,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:01:52,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:01:52,103.103 INFO    ] time= 13/06/2026 12:01:52
[2026-06-13 12:01:52,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:01:52,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:01:52,217.217 INFO    ] No existing commands found in stream
[2026-06-13 12:01:57,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:01:57,229.229 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 12:02:00,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:02:00,864.864 INFO    ] Checking for system updates...
[2026-06-13 12:02:00,885.885 INFO    ] 200
[2026-06-13 12:02:00,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:00,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:00,920.920 INFO    ] No update needed
[2026-06-13 12:02:00,922.922 INFO    ] Checking for camera pi updates...
[2026-06-13 12:02:00,944.944 INFO    ] 200
[2026-06-13 12:02:00,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:00,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:02:01,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:01,005.005 INFO    ] No camera update needed
[2026-06-13 12:02:01,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:02:01,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:02:01,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:02:01,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:02:03,039.039 INFO    ] ================================================
[2026-06-13 12:02:03,047.047 INFO    ] Launching Daemon at Sat Jun 13 12:02:03 IST 2026
[2026-06-13 12:02:03,053.053 INFO    ] ================================================
[2026-06-13 12:02:03,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:02:03
[2026-06-13 12:02:03,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:02:03,868.868 INFO    ] Initializing speech engine...
[2026-06-13 12:02:03,871.871 INFO    ] 2026-06-13 12:02:03
[2026-06-13 12:02:04,061.061 INFO    ] 2026-06-13 12:02:04
[2026-06-13 12:02:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:02:04,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:02:04,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:02:04,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:02:04,342.342 INFO    ] time= 13/06/2026 12:02:04
[2026-06-13 12:02:04,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:02:04,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:02:04,472.472 INFO    ] No existing commands found in stream
[2026-06-13 12:02:09,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:02:09,493.493 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 12:02:12,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:02:12,848.848 INFO    ] Checking for system updates...
[2026-06-13 12:02:12,871.871 INFO    ] 200
[2026-06-13 12:02:12,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:12,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:12,905.905 INFO    ] No update needed
[2026-06-13 12:02:12,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 12:02:12,928.928 INFO    ] 200
[2026-06-13 12:02:12,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:12,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:02:13,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:13,111.111 INFO    ] No camera update needed
[2026-06-13 12:02:13,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:02:13,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:02:13,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:02:13,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:02:15,160.160 INFO    ] ================================================
[2026-06-13 12:02:15,176.176 INFO    ] Launching Daemon at Sat Jun 13 12:02:15 IST 2026
[2026-06-13 12:02:15,187.187 INFO    ] ================================================
[2026-06-13 12:02:15,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:02:15
[2026-06-13 12:02:15,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:02:16,068.068 INFO    ] Initializing speech engine...
[2026-06-13 12:02:16,074.074 INFO    ] 2026-06-13 12:02:16
[2026-06-13 12:02:16,286.286 INFO    ] 2026-06-13 12:02:16
[2026-06-13 12:02:16,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:02:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:02:16,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:02:16,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:02:16,691.691 INFO    ] time= 13/06/2026 12:02:16
[2026-06-13 12:02:16,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:02:16,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:02:16,810.810 INFO    ] No existing commands found in stream
[2026-06-13 12:02:21,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:02:21,824.824 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 12:02:25,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:02:25,283.283 INFO    ] Checking for system updates...
[2026-06-13 12:02:25,307.307 INFO    ] 200
[2026-06-13 12:02:25,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:25,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:25,340.340 INFO    ] No update needed
[2026-06-13 12:02:25,341.341 INFO    ] Checking for camera pi updates...
[2026-06-13 12:02:25,361.361 INFO    ] 200
[2026-06-13 12:02:25,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:25,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:02:25,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:25,430.430 INFO    ] No camera update needed
[2026-06-13 12:02:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:02:25,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:02:25,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:02:25,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:02:27,477.477 INFO    ] ================================================
[2026-06-13 12:02:27,492.492 INFO    ] Launching Daemon at Sat Jun 13 12:02:27 IST 2026
[2026-06-13 12:02:27,503.503 INFO    ] ================================================
[2026-06-13 12:02:27,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:02:27
[2026-06-13 12:02:28,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:02:28,368.368 INFO    ] Initializing speech engine...
[2026-06-13 12:02:28,375.375 INFO    ] 2026-06-13 12:02:28
[2026-06-13 12:02:28,589.589 INFO    ] 2026-06-13 12:02:28
[2026-06-13 12:02:28,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:02:28,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:02:28,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:02:28,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:02:29,012.012 INFO    ] time= 13/06/2026 12:02:28
[2026-06-13 12:02:29,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:02:29,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:02:29,116.116 INFO    ] No existing commands found in stream
[2026-06-13 12:02:34,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:02:34,134.134 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 12:02:37,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:02:37,056.056 INFO    ] Checking for system updates...
[2026-06-13 12:02:37,077.077 INFO    ] 200
[2026-06-13 12:02:37,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:37,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:37,112.112 INFO    ] No update needed
[2026-06-13 12:02:37,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 12:02:37,133.133 INFO    ] 200
[2026-06-13 12:02:37,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:37,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:02:37,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:37,197.197 INFO    ] No camera update needed
[2026-06-13 12:02:37,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:02:37,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:02:37,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:02:37,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:02:39,245.245 INFO    ] ================================================
[2026-06-13 12:02:39,261.261 INFO    ] Launching Daemon at Sat Jun 13 12:02:39 IST 2026
[2026-06-13 12:02:39,272.272 INFO    ] ================================================
[2026-06-13 12:02:39,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:02:39
[2026-06-13 12:02:39,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:02:40,068.068 INFO    ] Initializing speech engine...
[2026-06-13 12:02:40,072.072 INFO    ] 2026-06-13 12:02:40
[2026-06-13 12:02:40,275.275 INFO    ] 2026-06-13 12:02:40
[2026-06-13 12:02:40,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:02:40,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:02:40,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:02:40,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:02:40,691.691 INFO    ] time= 13/06/2026 12:02:40
[2026-06-13 12:02:40,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:02:40,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:02:40,786.786 INFO    ] No existing commands found in stream
[2026-06-13 12:02:45,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:02:45,800.800 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 12:02:47,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:02:47,343.343 INFO    ] Checking for system updates...
[2026-06-13 12:02:47,364.364 INFO    ] 200
[2026-06-13 12:02:47,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:47,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:47,399.399 INFO    ] No update needed
[2026-06-13 12:02:47,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 12:02:47,420.420 INFO    ] 200
[2026-06-13 12:02:47,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:02:47,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:02:47,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:02:47,491.491 INFO    ] No camera update needed
[2026-06-13 12:02:47,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:02:47,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:02:47,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:02:47,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:02:49,540.540 INFO    ] ================================================
[2026-06-13 12:02:49,556.556 INFO    ] Launching Daemon at Sat Jun 13 12:02:49 IST 2026
[2026-06-13 12:02:49,567.567 INFO    ] ================================================
[2026-06-13 12:02:49,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:02:49
[2026-06-13 12:02:50,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:02:50,388.388 INFO    ] Initializing speech engine...
[2026-06-13 12:02:50,394.394 INFO    ] 2026-06-13 12:02:50
[2026-06-13 12:02:50,598.598 INFO    ] 2026-06-13 12:02:50
[2026-06-13 12:02:50,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:02:50,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:02:50,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:02:50,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:02:51,006.006 INFO    ] time= 13/06/2026 12:02:50
[2026-06-13 12:02:51,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:02:51,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:02:51,117.117 INFO    ] No existing commands found in stream
[2026-06-13 12:02:56,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:02:56,130.130 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 12:03:00,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:03:00,245.245 INFO    ] Checking for system updates...
[2026-06-13 12:03:00,266.266 INFO    ] 200
[2026-06-13 12:03:00,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:00,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:00,301.301 INFO    ] No update needed
[2026-06-13 12:03:00,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:00,323.323 INFO    ] 200
[2026-06-13 12:03:00,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:00,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:00,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:00,386.386 INFO    ] No camera update needed
[2026-06-13 12:03:00,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:00,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:00,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:00,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:02,430.430 INFO    ] ================================================
[2026-06-13 12:03:02,442.442 INFO    ] Launching Daemon at Sat Jun 13 12:03:02 IST 2026
[2026-06-13 12:03:02,450.450 INFO    ] ================================================
[2026-06-13 12:03:02,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:02
[2026-06-13 12:03:03,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:03,331.331 INFO    ] Initializing speech engine...
[2026-06-13 12:03:03,342.342 INFO    ] 2026-06-13 12:03:03
[2026-06-13 12:03:03,549.549 INFO    ] 2026-06-13 12:03:03
[2026-06-13 12:03:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:03,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:03,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:03,900.900 INFO    ] time= 13/06/2026 12:03:03
[2026-06-13 12:03:03,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:03,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:04,068.068 INFO    ] No existing commands found in stream
[2026-06-13 12:03:09,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:03:09,082.082 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 12:03:11,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:03:11,548.548 INFO    ] Checking for system updates...
[2026-06-13 12:03:11,569.569 INFO    ] 200
[2026-06-13 12:03:11,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:11,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:11,602.602 INFO    ] No update needed
[2026-06-13 12:03:11,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:11,623.623 INFO    ] 200
[2026-06-13 12:03:11,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:11,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:11,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:03:11,689.689 INFO    ] No camera update needed
[2026-06-13 12:03:11,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:11,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:11,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:11,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:13,739.739 INFO    ] ================================================
[2026-06-13 12:03:13,755.755 INFO    ] Launching Daemon at Sat Jun 13 12:03:13 IST 2026
[2026-06-13 12:03:13,766.766 INFO    ] ================================================
[2026-06-13 12:03:14,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:14
[2026-06-13 12:03:14,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:14,564.564 INFO    ] Initializing speech engine...
[2026-06-13 12:03:14,570.570 INFO    ] 2026-06-13 12:03:14
[2026-06-13 12:03:14,773.773 INFO    ] 2026-06-13 12:03:14
[2026-06-13 12:03:14,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:14,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:15,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:15,179.179 INFO    ] time= 13/06/2026 12:03:15
[2026-06-13 12:03:15,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:15,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:15,289.289 INFO    ] No existing commands found in stream
[2026-06-13 12:03:20,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:03:20,301.301 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 12:03:20,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:03:20,878.878 INFO    ] Checking for system updates...
[2026-06-13 12:03:20,899.899 INFO    ] 200
[2026-06-13 12:03:20,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:20,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:03:20,934.934 INFO    ] No update needed
[2026-06-13 12:03:20,935.935 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:20,956.956 INFO    ] 200
[2026-06-13 12:03:20,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:20,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:21,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:03:21,023.023 INFO    ] No camera update needed
[2026-06-13 12:03:21,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:21,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:21,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:21,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:23,070.070 INFO    ] ================================================
[2026-06-13 12:03:23,086.086 INFO    ] Launching Daemon at Sat Jun 13 12:03:23 IST 2026
[2026-06-13 12:03:23,098.098 INFO    ] ================================================
[2026-06-13 12:03:23,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:23
[2026-06-13 12:03:23,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:23,913.913 INFO    ] Initializing speech engine...
[2026-06-13 12:03:23,918.918 INFO    ] 2026-06-13 12:03:23
[2026-06-13 12:03:24,144.144 INFO    ] 2026-06-13 12:03:24
[2026-06-13 12:03:24,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:24,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:24,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:24,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:24,548.548 INFO    ] time= 13/06/2026 12:03:24
[2026-06-13 12:03:24,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:24,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:24,694.694 INFO    ] No existing commands found in stream
[2026-06-13 12:03:29,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:03:29,706.706 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 12:03:32,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:03:32,554.554 INFO    ] Checking for system updates...
[2026-06-13 12:03:32,577.577 INFO    ] 200
[2026-06-13 12:03:32,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:32,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:32,614.614 INFO    ] No update needed
[2026-06-13 12:03:32,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:32,640.640 INFO    ] 200
[2026-06-13 12:03:32,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:32,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:32,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:32,697.697 INFO    ] No camera update needed
[2026-06-13 12:03:32,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:32,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:32,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:32,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:34,748.748 INFO    ] ================================================
[2026-06-13 12:03:34,764.764 INFO    ] Launching Daemon at Sat Jun 13 12:03:34 IST 2026
[2026-06-13 12:03:34,776.776 INFO    ] ================================================
[2026-06-13 12:03:35,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:35
[2026-06-13 12:03:35,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:35,655.655 INFO    ] Initializing speech engine...
[2026-06-13 12:03:35,661.661 INFO    ] 2026-06-13 12:03:35
[2026-06-13 12:03:35,869.869 INFO    ] 2026-06-13 12:03:35
[2026-06-13 12:03:35,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:36,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:36,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:36,280.280 INFO    ] time= 13/06/2026 12:03:36
[2026-06-13 12:03:36,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:36,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:36,386.386 INFO    ] No existing commands found in stream
[2026-06-13 12:03:41,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:03:41,403.403 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 12:03:42,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:03:42,150.150 INFO    ] Checking for system updates...
[2026-06-13 12:03:42,171.171 INFO    ] 200
[2026-06-13 12:03:42,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:42,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:42,205.205 INFO    ] No update needed
[2026-06-13 12:03:42,206.206 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:42,226.226 INFO    ] 200
[2026-06-13 12:03:42,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:42,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:42,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:03:42,291.291 INFO    ] No camera update needed
[2026-06-13 12:03:42,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:42,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:42,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:42,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:44,341.341 INFO    ] ================================================
[2026-06-13 12:03:44,357.357 INFO    ] Launching Daemon at Sat Jun 13 12:03:44 IST 2026
[2026-06-13 12:03:44,369.369 INFO    ] ================================================
[2026-06-13 12:03:44,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:44
[2026-06-13 12:03:45,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:45,237.237 INFO    ] Initializing speech engine...
[2026-06-13 12:03:45,242.242 INFO    ] 2026-06-13 12:03:45
[2026-06-13 12:03:45,450.450 INFO    ] 2026-06-13 12:03:45
[2026-06-13 12:03:45,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:45,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:45,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:45,856.856 INFO    ] time= 13/06/2026 12:03:45
[2026-06-13 12:03:45,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:45,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:46,007.007 INFO    ] No existing commands found in stream
[2026-06-13 12:03:51,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:03:51,033.033 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 12:03:54,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:03:54,196.196 INFO    ] Checking for system updates...
[2026-06-13 12:03:54,221.221 INFO    ] 200
[2026-06-13 12:03:54,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:54,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:03:54,258.258 INFO    ] No update needed
[2026-06-13 12:03:54,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 12:03:54,281.281 INFO    ] 200
[2026-06-13 12:03:54,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:03:54,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:03:54,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:03:54,350.350 INFO    ] No camera update needed
[2026-06-13 12:03:54,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:03:54,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:03:54,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:03:54,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:03:56,400.400 INFO    ] ================================================
[2026-06-13 12:03:56,416.416 INFO    ] Launching Daemon at Sat Jun 13 12:03:56 IST 2026
[2026-06-13 12:03:56,427.427 INFO    ] ================================================
[2026-06-13 12:03:56,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:03:56
[2026-06-13 12:03:57,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:03:57,384.384 INFO    ] Initializing speech engine...
[2026-06-13 12:03:57,393.393 INFO    ] 2026-06-13 12:03:57
[2026-06-13 12:03:57,639.639 INFO    ] 2026-06-13 12:03:57
[2026-06-13 12:03:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:03:57,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:03:57,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:03:57,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:03:58,017.017 INFO    ] time= 13/06/2026 12:03:57
[2026-06-13 12:03:58,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:03:58,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:03:58,106.106 INFO    ] No existing commands found in stream
[2026-06-13 12:04:03,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:04:03,122.122 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 12:04:05,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:04:05,269.269 INFO    ] Checking for system updates...
[2026-06-13 12:04:05,307.307 INFO    ] 200
[2026-06-13 12:04:05,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:05,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:04:05,366.366 INFO    ] No update needed
[2026-06-13 12:04:05,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 12:04:05,400.400 INFO    ] 200
[2026-06-13 12:04:05,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:05,425.425 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:04:05,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:04:05,464.464 INFO    ] No camera update needed
[2026-06-13 12:04:05,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:04:05,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:04:05,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:04:05,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:04:07,512.512 INFO    ] ================================================
[2026-06-13 12:04:07,527.527 INFO    ] Launching Daemon at Sat Jun 13 12:04:07 IST 2026
[2026-06-13 12:04:07,541.541 INFO    ] ================================================
[2026-06-13 12:04:07,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:04:07
[2026-06-13 12:04:08,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:04:08,450.450 INFO    ] Initializing speech engine...
[2026-06-13 12:04:08,461.461 INFO    ] 2026-06-13 12:04:08
[2026-06-13 12:04:08,745.745 INFO    ] 2026-06-13 12:04:08
[2026-06-13 12:04:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:04:09,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:04:09,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:04:09,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:04:09,226.226 INFO    ] time= 13/06/2026 12:04:09
[2026-06-13 12:04:09,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:04:09,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:04:09,367.367 INFO    ] No existing commands found in stream
[2026-06-13 12:04:14,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:04:14,407.407 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 12:04:15,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:04:15,459.459 INFO    ] Checking for system updates...
[2026-06-13 12:04:15,481.481 INFO    ] 200
[2026-06-13 12:04:15,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:15,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:04:15,514.514 INFO    ] No update needed
[2026-06-13 12:04:15,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 12:04:15,538.538 INFO    ] 200
[2026-06-13 12:04:15,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:15,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:04:15,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:15,710.710 INFO    ] No camera update needed
[2026-06-13 12:04:15,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:04:15,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:04:15,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:04:15,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:04:17,757.757 INFO    ] ================================================
[2026-06-13 12:04:17,772.772 INFO    ] Launching Daemon at Sat Jun 13 12:04:17 IST 2026
[2026-06-13 12:04:17,783.783 INFO    ] ================================================
[2026-06-13 12:04:18,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:04:18
[2026-06-13 12:04:18,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:04:18,634.634 INFO    ] Initializing speech engine...
[2026-06-13 12:04:18,638.638 INFO    ] 2026-06-13 12:04:18
[2026-06-13 12:04:18,843.843 INFO    ] 2026-06-13 12:04:18
[2026-06-13 12:04:18,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:04:19,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:04:19,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:04:19,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:04:19,249.249 INFO    ] time= 13/06/2026 12:04:19
[2026-06-13 12:04:19,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:04:19,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:04:19,464.464 INFO    ] No existing commands found in stream
[2026-06-13 12:04:24,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:04:24,482.482 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 12:04:27,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:04:27,775.775 INFO    ] Checking for system updates...
[2026-06-13 12:04:27,797.797 INFO    ] 200
[2026-06-13 12:04:27,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:27,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:27,830.830 INFO    ] No update needed
[2026-06-13 12:04:27,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 12:04:27,851.851 INFO    ] 200
[2026-06-13 12:04:27,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:27,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:04:27,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:27,919.919 INFO    ] No camera update needed
[2026-06-13 12:04:27,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:04:27,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:04:27,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:04:27,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:04:29,967.967 INFO    ] ================================================
[2026-06-13 12:04:29,983.983 INFO    ] Launching Daemon at Sat Jun 13 12:04:29 IST 2026
[2026-06-13 12:04:30,996.996 INFO    ] ================================================
[2026-06-13 12:04:30,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:04:30
[2026-06-13 12:04:30,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:04:30,786.786 INFO    ] Initializing speech engine...
[2026-06-13 12:04:30,792.792 INFO    ] 2026-06-13 12:04:30
[2026-06-13 12:04:30,991.991 INFO    ] 2026-06-13 12:04:30
[2026-06-13 12:04:31,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:04:31,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:04:31,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:04:31,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:04:31,436.436 INFO    ] time= 13/06/2026 12:04:31
[2026-06-13 12:04:31,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:04:31,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:04:31,555.555 INFO    ] No existing commands found in stream
[2026-06-13 12:04:36,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:04:36,573.573 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 12:04:39,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:04:39,319.319 INFO    ] Checking for system updates...
[2026-06-13 12:04:39,340.340 INFO    ] 200
[2026-06-13 12:04:39,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:39,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:39,375.375 INFO    ] No update needed
[2026-06-13 12:04:39,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 12:04:39,399.399 INFO    ] 200
[2026-06-13 12:04:39,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:39,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:04:39,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:39,463.463 INFO    ] No camera update needed
[2026-06-13 12:04:39,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:04:39,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:04:39,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:04:39,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:04:41,512.512 INFO    ] ================================================
[2026-06-13 12:04:41,527.527 INFO    ] Launching Daemon at Sat Jun 13 12:04:41 IST 2026
[2026-06-13 12:04:41,539.539 INFO    ] ================================================
[2026-06-13 12:04:41,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:04:41
[2026-06-13 12:04:42,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:04:42,359.359 INFO    ] Initializing speech engine...
[2026-06-13 12:04:42,364.364 INFO    ] 2026-06-13 12:04:42
[2026-06-13 12:04:42,568.568 INFO    ] 2026-06-13 12:04:42
[2026-06-13 12:04:42,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:04:42,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:04:42,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:04:42,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:04:42,967.967 INFO    ] time= 13/06/2026 12:04:42
[2026-06-13 12:04:43,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:04:43,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:04:43,082.082 INFO    ] No existing commands found in stream
[2026-06-13 12:04:48,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:04:48,094.094 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 12:04:52,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:04:52,009.009 INFO    ] Checking for system updates...
[2026-06-13 12:04:52,033.033 INFO    ] 200
[2026-06-13 12:04:52,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:52,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:52,069.069 INFO    ] No update needed
[2026-06-13 12:04:52,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 12:04:52,091.091 INFO    ] 200
[2026-06-13 12:04:52,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:04:52,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:04:52,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:04:52,152.152 INFO    ] No camera update needed
[2026-06-13 12:04:52,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:04:52,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:04:52,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:04:52,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:04:54,192.192 INFO    ] ================================================
[2026-06-13 12:04:54,207.207 INFO    ] Launching Daemon at Sat Jun 13 12:04:54 IST 2026
[2026-06-13 12:04:54,218.218 INFO    ] ================================================
[2026-06-13 12:04:54,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:04:54
[2026-06-13 12:04:54,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:04:55,019.019 INFO    ] Initializing speech engine...
[2026-06-13 12:04:55,024.024 INFO    ] 2026-06-13 12:04:55
[2026-06-13 12:04:55,254.254 INFO    ] 2026-06-13 12:04:55
[2026-06-13 12:04:55,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:04:55,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:04:55,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:04:55,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:04:55,631.631 INFO    ] time= 13/06/2026 12:04:55
[2026-06-13 12:04:55,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:04:55,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:04:55,812.812 INFO    ] No existing commands found in stream
[2026-06-13 12:05:00,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:00,825.825 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 12:05:05,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:05:05,379.379 INFO    ] Checking for system updates...
[2026-06-13 12:05:05,415.415 INFO    ] 200
[2026-06-13 12:05:05,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:05,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:05,464.464 INFO    ] No update needed
[2026-06-13 12:05:05,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 12:05:05,492.492 INFO    ] 200
[2026-06-13 12:05:05,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:05,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:05:05,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:05,567.567 INFO    ] No camera update needed
[2026-06-13 12:05:05,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:05:05,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:05:05,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:05:05,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:05:07,616.616 INFO    ] ================================================
[2026-06-13 12:05:07,631.631 INFO    ] Launching Daemon at Sat Jun 13 12:05:07 IST 2026
[2026-06-13 12:05:07,642.642 INFO    ] ================================================
[2026-06-13 12:05:08,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:05:08
[2026-06-13 12:05:08,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:05:08,510.510 INFO    ] Initializing speech engine...
[2026-06-13 12:05:08,516.516 INFO    ] 2026-06-13 12:05:08
[2026-06-13 12:05:08,727.727 INFO    ] 2026-06-13 12:05:08
[2026-06-13 12:05:08,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:05:08,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:05:08,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:05:09,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:05:09,158.158 INFO    ] time= 13/06/2026 12:05:09
[2026-06-13 12:05:09,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:05:09,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:05:09,253.253 INFO    ] No existing commands found in stream
[2026-06-13 12:05:14,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:14,267.267 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 12:05:17,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:05:17,536.536 INFO    ] Checking for system updates...
[2026-06-13 12:05:17,573.573 INFO    ] 200
[2026-06-13 12:05:17,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:17,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:17,630.630 INFO    ] No update needed
[2026-06-13 12:05:17,631.631 INFO    ] Checking for camera pi updates...
[2026-06-13 12:05:17,655.655 INFO    ] 200
[2026-06-13 12:05:17,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:17,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:05:17,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:17,730.730 INFO    ] No camera update needed
[2026-06-13 12:05:17,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:05:17,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:05:17,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:05:17,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:05:19,778.778 INFO    ] ================================================
[2026-06-13 12:05:19,794.794 INFO    ] Launching Daemon at Sat Jun 13 12:05:19 IST 2026
[2026-06-13 12:05:19,805.805 INFO    ] ================================================
[2026-06-13 12:05:20,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:05:20
[2026-06-13 12:05:20,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:05:20,677.677 INFO    ] Initializing speech engine...
[2026-06-13 12:05:20,681.681 INFO    ] 2026-06-13 12:05:20
[2026-06-13 12:05:20,887.887 INFO    ] 2026-06-13 12:05:20
[2026-06-13 12:05:20,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:05:21,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:05:21,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:05:21,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:05:21,294.294 INFO    ] time= 13/06/2026 12:05:21
[2026-06-13 12:05:21,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:05:21,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:05:21,410.410 INFO    ] No existing commands found in stream
[2026-06-13 12:05:26,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:26,423.423 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 12:05:28,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:05:28,067.067 INFO    ] Checking for system updates...
[2026-06-13 12:05:28,089.089 INFO    ] 200
[2026-06-13 12:05:28,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:28,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:28,124.124 INFO    ] No update needed
[2026-06-13 12:05:28,125.125 INFO    ] Checking for camera pi updates...
[2026-06-13 12:05:28,146.146 INFO    ] 200
[2026-06-13 12:05:28,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:28,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:05:28,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:28,223.223 INFO    ] No camera update needed
[2026-06-13 12:05:28,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:05:28,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:05:28,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:05:28,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:05:30,278.278 INFO    ] ================================================
[2026-06-13 12:05:30,294.294 INFO    ] Launching Daemon at Sat Jun 13 12:05:30 IST 2026
[2026-06-13 12:05:30,306.306 INFO    ] ================================================
[2026-06-13 12:05:30,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:05:30
[2026-06-13 12:05:30,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:05:31,129.129 INFO    ] Initializing speech engine...
[2026-06-13 12:05:31,134.134 INFO    ] 2026-06-13 12:05:31
[2026-06-13 12:05:31,337.337 INFO    ] 2026-06-13 12:05:31
[2026-06-13 12:05:31,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:05:31,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:05:31,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:05:31,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:05:31,773.773 INFO    ] time= 13/06/2026 12:05:31
[2026-06-13 12:05:31,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:05:31,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:05:31,884.884 INFO    ] No existing commands found in stream
[2026-06-13 12:05:36,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:36,896.896 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 12:05:38,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:05:38,093.093 INFO    ] Checking for system updates...
[2026-06-13 12:05:38,114.114 INFO    ] 200
[2026-06-13 12:05:38,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:38,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:05:38,147.147 INFO    ] No update needed
[2026-06-13 12:05:38,149.149 INFO    ] Checking for camera pi updates...
[2026-06-13 12:05:38,168.168 INFO    ] 200
[2026-06-13 12:05:38,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:38,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:05:38,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:05:38,232.232 INFO    ] No camera update needed
[2026-06-13 12:05:38,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:05:38,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:05:38,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:05:38,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:05:40,280.280 INFO    ] ================================================
[2026-06-13 12:05:40,296.296 INFO    ] Launching Daemon at Sat Jun 13 12:05:40 IST 2026
[2026-06-13 12:05:40,307.307 INFO    ] ================================================
[2026-06-13 12:05:40,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:05:40
[2026-06-13 12:05:41,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:05:41,175.175 INFO    ] Initializing speech engine...
[2026-06-13 12:05:41,181.181 INFO    ] 2026-06-13 12:05:41
[2026-06-13 12:05:41,389.389 INFO    ] 2026-06-13 12:05:41
[2026-06-13 12:05:41,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:05:41,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:05:41,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:05:41,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:05:41,782.782 INFO    ] time= 13/06/2026 12:05:41
[2026-06-13 12:05:41,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:05:41,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:05:41,907.907 INFO    ] No existing commands found in stream
[2026-06-13 12:05:46,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:46,922.922 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 12:05:48,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:05:48,924.924 INFO    ] Checking for system updates...
[2026-06-13 12:05:48,946.946 INFO    ] 200
[2026-06-13 12:05:48,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:48,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:05:48,979.979 INFO    ] No update needed
[2026-06-13 12:05:48,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 12:05:48,999.999 INFO    ] 200
[2026-06-13 12:05:49,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:05:49,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:05:49,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:05:49,074.074 INFO    ] No camera update needed
[2026-06-13 12:05:49,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:05:49,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:05:49,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:05:49,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:05:51,124.124 INFO    ] ================================================
[2026-06-13 12:05:51,140.140 INFO    ] Launching Daemon at Sat Jun 13 12:05:51 IST 2026
[2026-06-13 12:05:51,151.151 INFO    ] ================================================
[2026-06-13 12:05:51,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:05:51
[2026-06-13 12:05:51,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:05:52,024.024 INFO    ] Initializing speech engine...
[2026-06-13 12:05:52,028.028 INFO    ] 2026-06-13 12:05:52
[2026-06-13 12:05:52,236.236 INFO    ] 2026-06-13 12:05:52
[2026-06-13 12:05:52,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:05:52,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:05:52,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:05:52,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:05:52,647.647 INFO    ] time= 13/06/2026 12:05:52
[2026-06-13 12:05:52,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:05:52,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:05:52,754.754 INFO    ] No existing commands found in stream
[2026-06-13 12:05:57,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:05:57,766.766 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 12:06:00,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:06:00,803.803 INFO    ] Checking for system updates...
[2026-06-13 12:06:00,824.824 INFO    ] 200
[2026-06-13 12:06:00,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:00,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:06:00,859.859 INFO    ] No update needed
[2026-06-13 12:06:00,860.860 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:00,880.880 INFO    ] 200
[2026-06-13 12:06:00,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:00,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:00,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:00,950.950 INFO    ] No camera update needed
[2026-06-13 12:06:00,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:00,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:00,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:00,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:02,984.984 INFO    ] ================================================
[2026-06-13 12:06:02,993.993 INFO    ] Launching Daemon at Sat Jun 13 12:06:02 IST 2026
[2026-06-13 12:06:03,999.999 INFO    ] ================================================
[2026-06-13 12:06:03,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:03
[2026-06-13 12:06:03,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:03,794.794 INFO    ] Initializing speech engine...
[2026-06-13 12:06:03,797.797 INFO    ] 2026-06-13 12:06:03
[2026-06-13 12:06:04,015.015 INFO    ] 2026-06-13 12:06:03
[2026-06-13 12:06:04,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:04,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:04,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:04,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:04,251.251 INFO    ] time= 13/06/2026 12:06:04
[2026-06-13 12:06:04,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:04,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:04,340.340 INFO    ] No existing commands found in stream
[2026-06-13 12:06:09,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:06:09,372.372 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 12:06:11,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:06:11,799.799 INFO    ] Checking for system updates...
[2026-06-13 12:06:11,820.820 INFO    ] 200
[2026-06-13 12:06:11,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:11,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:06:11,853.853 INFO    ] No update needed
[2026-06-13 12:06:11,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:11,874.874 INFO    ] 200
[2026-06-13 12:06:11,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:11,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:11,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:06:11,941.941 INFO    ] No camera update needed
[2026-06-13 12:06:11,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:11,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:11,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:11,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:13,990.990 INFO    ] ================================================
[2026-06-13 12:06:14,005.005 INFO    ] Launching Daemon at Sat Jun 13 12:06:14 IST 2026
[2026-06-13 12:06:14,016.016 INFO    ] ================================================
[2026-06-13 12:06:14,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:14
[2026-06-13 12:06:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:14,876.876 INFO    ] Initializing speech engine...
[2026-06-13 12:06:14,885.885 INFO    ] 2026-06-13 12:06:14
[2026-06-13 12:06:15,095.095 INFO    ] 2026-06-13 12:06:15
[2026-06-13 12:06:15,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:15,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:15,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:15,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:15,514.514 INFO    ] time= 13/06/2026 12:06:15
[2026-06-13 12:06:15,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:15,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:15,615.615 INFO    ] No existing commands found in stream
[2026-06-13 12:06:20,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:06:20,634.634 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 12:06:23,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:06:23,078.078 INFO    ] Checking for system updates...
[2026-06-13 12:06:23,100.100 INFO    ] 200
[2026-06-13 12:06:23,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:23,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:06:23,134.134 INFO    ] No update needed
[2026-06-13 12:06:23,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:23,157.157 INFO    ] 200
[2026-06-13 12:06:23,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:23,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:23,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:06:23,322.322 INFO    ] No camera update needed
[2026-06-13 12:06:23,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:23,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:23,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:23,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:25,369.369 INFO    ] ================================================
[2026-06-13 12:06:25,385.385 INFO    ] Launching Daemon at Sat Jun 13 12:06:25 IST 2026
[2026-06-13 12:06:25,396.396 INFO    ] ================================================
[2026-06-13 12:06:25,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:25
[2026-06-13 12:06:26,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:26,178.178 INFO    ] Initializing speech engine...
[2026-06-13 12:06:26,183.183 INFO    ] 2026-06-13 12:06:26
[2026-06-13 12:06:26,409.409 INFO    ] 2026-06-13 12:06:26
[2026-06-13 12:06:26,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:26,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:26,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:26,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:26,836.836 INFO    ] time= 13/06/2026 12:06:26
[2026-06-13 12:06:26,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:26,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:26,975.975 INFO    ] No existing commands found in stream
[2026-06-13 12:06:31,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:06:31,991.991 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 12:06:33,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:06:33,513.513 INFO    ] Checking for system updates...
[2026-06-13 12:06:33,534.534 INFO    ] 200
[2026-06-13 12:06:33,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:33,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:33,568.568 INFO    ] No update needed
[2026-06-13 12:06:33,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:33,590.590 INFO    ] 200
[2026-06-13 12:06:33,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:33,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:33,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:33,660.660 INFO    ] No camera update needed
[2026-06-13 12:06:33,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:33,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:33,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:33,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:35,708.708 INFO    ] ================================================
[2026-06-13 12:06:35,723.723 INFO    ] Launching Daemon at Sat Jun 13 12:06:35 IST 2026
[2026-06-13 12:06:35,734.734 INFO    ] ================================================
[2026-06-13 12:06:36,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:36
[2026-06-13 12:06:36,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:36,559.559 INFO    ] Initializing speech engine...
[2026-06-13 12:06:36,565.565 INFO    ] 2026-06-13 12:06:36
[2026-06-13 12:06:36,768.768 INFO    ] 2026-06-13 12:06:36
[2026-06-13 12:06:36,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:36,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:36,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:37,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:37,176.176 INFO    ] time= 13/06/2026 12:06:37
[2026-06-13 12:06:37,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:37,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:37,278.278 INFO    ] No existing commands found in stream
[2026-06-13 12:06:42,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:06:42,292.292 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 12:06:43,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:06:43,190.190 INFO    ] Checking for system updates...
[2026-06-13 12:06:43,210.210 INFO    ] 200
[2026-06-13 12:06:43,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:43,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:43,246.246 INFO    ] No update needed
[2026-06-13 12:06:43,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:43,267.267 INFO    ] 200
[2026-06-13 12:06:43,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:43,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:43,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:43,327.327 INFO    ] No camera update needed
[2026-06-13 12:06:43,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:43,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:43,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:43,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:45,375.375 INFO    ] ================================================
[2026-06-13 12:06:45,390.390 INFO    ] Launching Daemon at Sat Jun 13 12:06:45 IST 2026
[2026-06-13 12:06:45,401.401 INFO    ] ================================================
[2026-06-13 12:06:45,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:45
[2026-06-13 12:06:46,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:46,207.207 INFO    ] Initializing speech engine...
[2026-06-13 12:06:46,212.212 INFO    ] 2026-06-13 12:06:46
[2026-06-13 12:06:46,417.417 INFO    ] 2026-06-13 12:06:46
[2026-06-13 12:06:46,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:46,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:46,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:46,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:46,831.831 INFO    ] time= 13/06/2026 12:06:46
[2026-06-13 12:06:46,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:46,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:46,931.931 INFO    ] No existing commands found in stream
[2026-06-13 12:06:51,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:06:51,942.942 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 12:06:53,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:06:53,991.991 INFO    ] Checking for system updates...
[2026-06-13 12:06:54,014.014 INFO    ] 200
[2026-06-13 12:06:54,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:54,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:54,046.046 INFO    ] No update needed
[2026-06-13 12:06:54,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 12:06:54,067.067 INFO    ] 200
[2026-06-13 12:06:54,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:06:54,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:06:54,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:06:54,134.134 INFO    ] No camera update needed
[2026-06-13 12:06:54,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:06:54,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:06:54,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:06:54,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:06:56,182.182 INFO    ] ================================================
[2026-06-13 12:06:56,197.197 INFO    ] Launching Daemon at Sat Jun 13 12:06:56 IST 2026
[2026-06-13 12:06:56,208.208 INFO    ] ================================================
[2026-06-13 12:06:56,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:06:56
[2026-06-13 12:06:57,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:06:57,491.491 INFO    ] Initializing speech engine...
[2026-06-13 12:06:57,504.504 INFO    ] 2026-06-13 12:06:57
[2026-06-13 12:06:57,750.750 INFO    ] 2026-06-13 12:06:57
[2026-06-13 12:06:57,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:06:57,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:06:57,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:06:58,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:06:58,083.083 INFO    ] time= 13/06/2026 12:06:58
[2026-06-13 12:06:58,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:06:58,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:06:58,196.196 INFO    ] No existing commands found in stream
[2026-06-13 12:07:03,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:03,230.230 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 12:07:03,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:07:03,742.742 INFO    ] Checking for system updates...
[2026-06-13 12:07:03,779.779 INFO    ] 200
[2026-06-13 12:07:03,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:03,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:03,844.844 INFO    ] No update needed
[2026-06-13 12:07:03,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 12:07:03,884.884 INFO    ] 200
[2026-06-13 12:07:03,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:03,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:07:03,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:03,974.974 INFO    ] No camera update needed
[2026-06-13 12:07:03,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:07:03,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:07:03,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:07:03,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:07:06,032.032 INFO    ] ================================================
[2026-06-13 12:07:06,047.047 INFO    ] Launching Daemon at Sat Jun 13 12:07:06 IST 2026
[2026-06-13 12:07:06,057.057 INFO    ] ================================================
[2026-06-13 12:07:06,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:07:06
[2026-06-13 12:07:06,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:07:06,843.843 INFO    ] Initializing speech engine...
[2026-06-13 12:07:06,848.848 INFO    ] 2026-06-13 12:07:06
[2026-06-13 12:07:07,057.057 INFO    ] 2026-06-13 12:07:07
[2026-06-13 12:07:07,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:07:07,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:07:07,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:07:07,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:07:07,465.465 INFO    ] time= 13/06/2026 12:07:07
[2026-06-13 12:07:07,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:07:07,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:07:07,641.641 INFO    ] No existing commands found in stream
[2026-06-13 12:07:12,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:12,653.653 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 12:07:15,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:07:15,345.345 INFO    ] Checking for system updates...
[2026-06-13 12:07:15,367.367 INFO    ] 200
[2026-06-13 12:07:15,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:15,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:15,402.402 INFO    ] No update needed
[2026-06-13 12:07:15,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 12:07:15,423.423 INFO    ] 200
[2026-06-13 12:07:15,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:15,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:07:15,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:15,492.492 INFO    ] No camera update needed
[2026-06-13 12:07:15,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:07:15,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:07:15,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:07:15,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:07:17,542.542 INFO    ] ================================================
[2026-06-13 12:07:17,557.557 INFO    ] Launching Daemon at Sat Jun 13 12:07:17 IST 2026
[2026-06-13 12:07:17,569.569 INFO    ] ================================================
[2026-06-13 12:07:17,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:07:17
[2026-06-13 12:07:18,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:07:18,417.417 INFO    ] Initializing speech engine...
[2026-06-13 12:07:18,421.421 INFO    ] 2026-06-13 12:07:18
[2026-06-13 12:07:18,631.631 INFO    ] 2026-06-13 12:07:18
[2026-06-13 12:07:18,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:07:18,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:07:18,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:07:19,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:07:19,076.076 INFO    ] time= 13/06/2026 12:07:19
[2026-06-13 12:07:19,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:07:19,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:07:19,282.282 INFO    ] No existing commands found in stream
[2026-06-13 12:07:24,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:24,303.303 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 12:07:28,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:07:28,188.188 INFO    ] Checking for system updates...
[2026-06-13 12:07:28,211.211 INFO    ] 200
[2026-06-13 12:07:28,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:28,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:28,247.247 INFO    ] No update needed
[2026-06-13 12:07:28,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 12:07:28,268.268 INFO    ] 200
[2026-06-13 12:07:28,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:28,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:07:28,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:07:28,336.336 INFO    ] No camera update needed
[2026-06-13 12:07:28,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:07:28,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:07:28,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:07:28,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:07:30,385.385 INFO    ] ================================================
[2026-06-13 12:07:30,401.401 INFO    ] Launching Daemon at Sat Jun 13 12:07:30 IST 2026
[2026-06-13 12:07:30,412.412 INFO    ] ================================================
[2026-06-13 12:07:30,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:07:30
[2026-06-13 12:07:31,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:07:31,230.230 INFO    ] Initializing speech engine...
[2026-06-13 12:07:31,236.236 INFO    ] 2026-06-13 12:07:31
[2026-06-13 12:07:31,438.438 INFO    ] 2026-06-13 12:07:31
[2026-06-13 12:07:31,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:07:31,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:07:31,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:07:31,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:07:31,852.852 INFO    ] time= 13/06/2026 12:07:31
[2026-06-13 12:07:31,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:07:31,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:07:31,968.968 INFO    ] No existing commands found in stream
[2026-06-13 12:07:36,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:36,980.980 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 12:07:39,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:07:39,010.010 INFO    ] Checking for system updates...
[2026-06-13 12:07:39,032.032 INFO    ] 200
[2026-06-13 12:07:39,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:39,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:07:39,067.067 INFO    ] No update needed
[2026-06-13 12:07:39,069.069 INFO    ] Checking for camera pi updates...
[2026-06-13 12:07:39,089.089 INFO    ] 200
[2026-06-13 12:07:39,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:39,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:07:39,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:07:39,154.154 INFO    ] No camera update needed
[2026-06-13 12:07:39,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:07:39,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:07:39,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:07:39,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:07:41,202.202 INFO    ] ================================================
[2026-06-13 12:07:41,217.217 INFO    ] Launching Daemon at Sat Jun 13 12:07:41 IST 2026
[2026-06-13 12:07:41,232.232 INFO    ] ================================================
[2026-06-13 12:07:41,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:07:41
[2026-06-13 12:07:41,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:07:42,040.040 INFO    ] Initializing speech engine...
[2026-06-13 12:07:42,053.053 INFO    ] 2026-06-13 12:07:42
[2026-06-13 12:07:42,279.279 INFO    ] 2026-06-13 12:07:42
[2026-06-13 12:07:42,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:07:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:07:42,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:07:42,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:07:42,527.527 INFO    ] time= 13/06/2026 12:07:42
[2026-06-13 12:07:42,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:07:42,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:07:42,613.613 INFO    ] No existing commands found in stream
[2026-06-13 12:07:47,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:47,648.648 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 12:07:50,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:07:50,429.429 INFO    ] Checking for system updates...
[2026-06-13 12:07:50,451.451 INFO    ] 200
[2026-06-13 12:07:50,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:50,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:07:50,484.484 INFO    ] No update needed
[2026-06-13 12:07:50,485.485 INFO    ] Checking for camera pi updates...
[2026-06-13 12:07:50,505.505 INFO    ] 200
[2026-06-13 12:07:50,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:07:50,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:07:50,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:07:50,570.570 INFO    ] No camera update needed
[2026-06-13 12:07:50,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:07:50,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:07:50,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:07:50,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:07:52,616.616 INFO    ] ================================================
[2026-06-13 12:07:52,632.632 INFO    ] Launching Daemon at Sat Jun 13 12:07:52 IST 2026
[2026-06-13 12:07:52,643.643 INFO    ] ================================================
[2026-06-13 12:07:52,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:07:52
[2026-06-13 12:07:53,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:07:53,479.479 INFO    ] Initializing speech engine...
[2026-06-13 12:07:53,485.485 INFO    ] 2026-06-13 12:07:53
[2026-06-13 12:07:53,693.693 INFO    ] 2026-06-13 12:07:53
[2026-06-13 12:07:53,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:07:53,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:07:53,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:07:54,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:07:54,114.114 INFO    ] time= 13/06/2026 12:07:54
[2026-06-13 12:07:54,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:07:54,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:07:54,208.208 INFO    ] No existing commands found in stream
[2026-06-13 12:07:59,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:07:59,222.222 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 12:08:00,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:08:00,163.163 INFO    ] Checking for system updates...
[2026-06-13 12:08:00,183.183 INFO    ] 200
[2026-06-13 12:08:00,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:00,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:00,219.219 INFO    ] No update needed
[2026-06-13 12:08:00,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:00,240.240 INFO    ] 200
[2026-06-13 12:08:00,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:00,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:00,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:00,306.306 INFO    ] No camera update needed
[2026-06-13 12:08:00,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:00,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:00,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:00,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:08:02,345.345 INFO    ] ================================================
[2026-06-13 12:08:02,356.356 INFO    ] Launching Daemon at Sat Jun 13 12:08:02 IST 2026
[2026-06-13 12:08:02,363.363 INFO    ] ================================================
[2026-06-13 12:08:02,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:08:02
[2026-06-13 12:08:02,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:08:03,121.121 INFO    ] Initializing speech engine...
[2026-06-13 12:08:03,125.125 INFO    ] 2026-06-13 12:08:03
[2026-06-13 12:08:03,315.315 INFO    ] 2026-06-13 12:08:03
[2026-06-13 12:08:03,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:08:03,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:08:03,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:08:03,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:08:03,593.593 INFO    ] time= 13/06/2026 12:08:03
[2026-06-13 12:08:03,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:08:03,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:08:03,680.680 INFO    ] No existing commands found in stream
[2026-06-13 12:08:08,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:08:08,710.710 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 12:08:11,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:08:11,792.792 INFO    ] Checking for system updates...
[2026-06-13 12:08:11,813.813 INFO    ] 200
[2026-06-13 12:08:11,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:11,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:11,846.846 INFO    ] No update needed
[2026-06-13 12:08:11,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:11,867.867 INFO    ] 200
[2026-06-13 12:08:11,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:11,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:11,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:11,935.935 INFO    ] No camera update needed
[2026-06-13 12:08:11,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:11,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:11,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:11,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:08:13,982.982 INFO    ] ================================================
[2026-06-13 12:08:14,997.997 INFO    ] Launching Daemon at Sat Jun 13 12:08:13 IST 2026
[2026-06-13 12:08:14,008.008 INFO    ] ================================================
[2026-06-13 12:08:14,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:08:14
[2026-06-13 12:08:14,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:08:14,794.794 INFO    ] Initializing speech engine...
[2026-06-13 12:08:14,798.798 INFO    ] 2026-06-13 12:08:14
[2026-06-13 12:08:15,010.010 INFO    ] 2026-06-13 12:08:14
[2026-06-13 12:08:15,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:08:15,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:08:15,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:08:15,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:08:15,417.417 INFO    ] time= 13/06/2026 12:08:15
[2026-06-13 12:08:15,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:08:15,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:08:15,538.538 INFO    ] No existing commands found in stream
[2026-06-13 12:08:20,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:08:20,552.552 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 12:08:22,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:08:22,242.242 INFO    ] Checking for system updates...
[2026-06-13 12:08:22,263.263 INFO    ] 200
[2026-06-13 12:08:22,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:22,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:22,296.296 INFO    ] No update needed
[2026-06-13 12:08:22,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:22,319.319 INFO    ] 200
[2026-06-13 12:08:22,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:22,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:22,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:22,389.389 INFO    ] No camera update needed
[2026-06-13 12:08:22,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:22,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:22,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:22,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:08:24,438.438 INFO    ] ================================================
[2026-06-13 12:08:24,453.453 INFO    ] Launching Daemon at Sat Jun 13 12:08:24 IST 2026
[2026-06-13 12:08:24,464.464 INFO    ] ================================================
[2026-06-13 12:08:24,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:08:24
[2026-06-13 12:08:25,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:08:25,240.240 INFO    ] Initializing speech engine...
[2026-06-13 12:08:25,253.253 INFO    ] 2026-06-13 12:08:25
[2026-06-13 12:08:25,470.470 INFO    ] 2026-06-13 12:08:25
[2026-06-13 12:08:25,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:08:25,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:08:25,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:08:25,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:08:25,901.901 INFO    ] time= 13/06/2026 12:08:25
[2026-06-13 12:08:25,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:08:25,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:08:26,021.021 INFO    ] No existing commands found in stream
[2026-06-13 12:08:31,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:08:31,034.034 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 12:08:33,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:08:33,987.987 INFO    ] Checking for system updates...
[2026-06-13 12:08:34,008.008 INFO    ] 200
[2026-06-13 12:08:34,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:34,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:34,042.042 INFO    ] No update needed
[2026-06-13 12:08:34,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:34,062.062 INFO    ] 200
[2026-06-13 12:08:34,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:34,087.087 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:34,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:34,128.128 INFO    ] No camera update needed
[2026-06-13 12:08:34,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:34,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:34,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:34,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:08:36,173.173 INFO    ] ================================================
[2026-06-13 12:08:36,188.188 INFO    ] Launching Daemon at Sat Jun 13 12:08:36 IST 2026
[2026-06-13 12:08:36,199.199 INFO    ] ================================================
[2026-06-13 12:08:36,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:08:36
[2026-06-13 12:08:36,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:08:36,991.991 INFO    ] Initializing speech engine...
[2026-06-13 12:08:36,995.995 INFO    ] 2026-06-13 12:08:36
[2026-06-13 12:08:37,197.197 INFO    ] 2026-06-13 12:08:37
[2026-06-13 12:08:37,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:08:37,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:08:37,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:08:37,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:08:37,603.603 INFO    ] time= 13/06/2026 12:08:37
[2026-06-13 12:08:37,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:08:37,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:08:37,750.750 INFO    ] No existing commands found in stream
[2026-06-13 12:08:42,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:08:42,768.768 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 12:08:47,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:08:47,028.028 INFO    ] Checking for system updates...
[2026-06-13 12:08:47,049.049 INFO    ] 200
[2026-06-13 12:08:47,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:47,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:08:47,085.085 INFO    ] No update needed
[2026-06-13 12:08:47,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:47,109.109 INFO    ] 200
[2026-06-13 12:08:47,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:47,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:47,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:47,171.171 INFO    ] No camera update needed
[2026-06-13 12:08:47,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:47,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:47,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:47,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:08:49,219.219 INFO    ] ================================================
[2026-06-13 12:08:49,235.235 INFO    ] Launching Daemon at Sat Jun 13 12:08:49 IST 2026
[2026-06-13 12:08:49,246.246 INFO    ] ================================================
[2026-06-13 12:08:49,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:08:49
[2026-06-13 12:08:49,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:08:50,089.089 INFO    ] Initializing speech engine...
[2026-06-13 12:08:50,095.095 INFO    ] 2026-06-13 12:08:50
[2026-06-13 12:08:50,302.302 INFO    ] 2026-06-13 12:08:50
[2026-06-13 12:08:50,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:08:50,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:08:50,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:08:50,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:08:50,697.697 INFO    ] time= 13/06/2026 12:08:50
[2026-06-13 12:08:50,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:08:50,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:08:50,818.818 INFO    ] No existing commands found in stream
[2026-06-13 12:08:55,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:08:55,828.828 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 12:08:57,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:08:57,920.920 INFO    ] Checking for system updates...
[2026-06-13 12:08:57,941.941 INFO    ] 200
[2026-06-13 12:08:57,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:57,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:57,975.975 INFO    ] No update needed
[2026-06-13 12:08:57,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 12:08:57,996.996 INFO    ] 200
[2026-06-13 12:08:57,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:08:58,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:08:58,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:08:58,080.080 INFO    ] No camera update needed
[2026-06-13 12:08:58,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:08:58,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:08:58,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:08:58,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:00,127.127 INFO    ] ================================================
[2026-06-13 12:09:00,142.142 INFO    ] Launching Daemon at Sat Jun 13 12:09:00 IST 2026
[2026-06-13 12:09:00,153.153 INFO    ] ================================================
[2026-06-13 12:09:00,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:00
[2026-06-13 12:09:00,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:09:00,984.984 INFO    ] Initializing speech engine...
[2026-06-13 12:09:00,990.990 INFO    ] 2026-06-13 12:09:00
[2026-06-13 12:09:01,192.192 INFO    ] 2026-06-13 12:09:01
[2026-06-13 12:09:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:09:01,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:09:01,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:09:01,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:09:01,591.591 INFO    ] time= 13/06/2026 12:09:01
[2026-06-13 12:09:01,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:09:01,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:09:01,702.702 INFO    ] No existing commands found in stream
[2026-06-13 12:09:06,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:09:06,714.714 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 12:09:08,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:09:08,988.988 INFO    ] Checking for system updates...
[2026-06-13 12:09:09,009.009 INFO    ] 200
[2026-06-13 12:09:09,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:09,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:09:09,043.043 INFO    ] No update needed
[2026-06-13 12:09:09,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 12:09:09,064.064 INFO    ] 200
[2026-06-13 12:09:09,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:09,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:09:09,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:09:09,127.127 INFO    ] No camera update needed
[2026-06-13 12:09:09,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:09:09,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:09:09,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:09:09,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:11,176.176 INFO    ] ================================================
[2026-06-13 12:09:11,191.191 INFO    ] Launching Daemon at Sat Jun 13 12:09:11 IST 2026
[2026-06-13 12:09:11,201.201 INFO    ] ================================================
[2026-06-13 12:09:11,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:11
[2026-06-13 12:09:11,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:09:12,020.020 INFO    ] Initializing speech engine...
[2026-06-13 12:09:12,024.024 INFO    ] 2026-06-13 12:09:12
[2026-06-13 12:09:12,227.227 INFO    ] 2026-06-13 12:09:12
[2026-06-13 12:09:12,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:09:12,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:09:12,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:09:12,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:09:12,628.628 INFO    ] time= 13/06/2026 12:09:12
[2026-06-13 12:09:12,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:09:12,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:09:12,744.744 INFO    ] No existing commands found in stream
[2026-06-13 12:09:17,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:09:17,755.755 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 12:09:21,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:09:21,810.810 INFO    ] Checking for system updates...
[2026-06-13 12:09:21,831.831 INFO    ] 200
[2026-06-13 12:09:21,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:21,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:09:21,866.866 INFO    ] No update needed
[2026-06-13 12:09:21,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 12:09:21,887.887 INFO    ] 200
[2026-06-13 12:09:21,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:21,912.912 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:09:21,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:09:21,960.960 INFO    ] No camera update needed
[2026-06-13 12:09:21,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:09:21,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:09:21,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:09:21,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:24,007.007 INFO    ] ================================================
[2026-06-13 12:09:24,023.023 INFO    ] Launching Daemon at Sat Jun 13 12:09:24 IST 2026
[2026-06-13 12:09:24,034.034 INFO    ] ================================================
[2026-06-13 12:09:24,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:24
[2026-06-13 12:09:24,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:09:24,860.860 INFO    ] Initializing speech engine...
[2026-06-13 12:09:24,873.873 INFO    ] 2026-06-13 12:09:24
[2026-06-13 12:09:25,093.093 INFO    ] 2026-06-13 12:09:25
[2026-06-13 12:09:25,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:09:25,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:09:25,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:09:25,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:09:25,496.496 INFO    ] time= 13/06/2026 12:09:25
[2026-06-13 12:09:25,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:09:25,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:09:25,654.654 INFO    ] No existing commands found in stream
[2026-06-13 12:09:30,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:09:30,667.667 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 12:09:32,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:09:32,612.612 INFO    ] Checking for system updates...
[2026-06-13 12:09:32,648.648 INFO    ] 200
[2026-06-13 12:09:32,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:32,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:09:32,706.706 INFO    ] No update needed
[2026-06-13 12:09:32,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 12:09:32,743.743 INFO    ] 200
[2026-06-13 12:09:32,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:32,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:09:32,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:09:32,793.793 INFO    ] No camera update needed
[2026-06-13 12:09:32,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:09:32,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:09:32,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:09:32,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:34,840.840 INFO    ] ================================================
[2026-06-13 12:09:34,857.857 INFO    ] Launching Daemon at Sat Jun 13 12:09:34 IST 2026
[2026-06-13 12:09:34,868.868 INFO    ] ================================================
[2026-06-13 12:09:35,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:35
[2026-06-13 12:09:35,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:09:35,717.717 INFO    ] Initializing speech engine...
[2026-06-13 12:09:35,722.722 INFO    ] 2026-06-13 12:09:35
[2026-06-13 12:09:35,928.928 INFO    ] 2026-06-13 12:09:35
[2026-06-13 12:09:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:09:36,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:09:36,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:09:36,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:09:36,341.341 INFO    ] time= 13/06/2026 12:09:36
[2026-06-13 12:09:36,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:09:36,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:09:36,447.447 INFO    ] No existing commands found in stream
[2026-06-13 12:09:41,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:09:41,460.460 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 12:09:44,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:09:44,317.317 INFO    ] Checking for system updates...
[2026-06-13 12:09:44,340.340 INFO    ] 200
[2026-06-13 12:09:44,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:44,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:09:44,376.376 INFO    ] No update needed
[2026-06-13 12:09:44,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 12:09:44,397.397 INFO    ] 200
[2026-06-13 12:09:44,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:44,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:09:44,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:09:44,465.465 INFO    ] No camera update needed
[2026-06-13 12:09:44,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:09:44,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:09:44,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:09:44,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:46,514.514 INFO    ] ================================================
[2026-06-13 12:09:46,530.530 INFO    ] Launching Daemon at Sat Jun 13 12:09:46 IST 2026
[2026-06-13 12:09:46,541.541 INFO    ] ================================================
[2026-06-13 12:09:46,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:46
[2026-06-13 12:09:47,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:09:47,342.342 INFO    ] Initializing speech engine...
[2026-06-13 12:09:47,352.352 INFO    ] 2026-06-13 12:09:47
[2026-06-13 12:09:47,559.559 INFO    ] 2026-06-13 12:09:47
[2026-06-13 12:09:47,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:09:47,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:09:47,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:09:47,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:09:47,916.916 INFO    ] time= 13/06/2026 12:09:47
[2026-06-13 12:09:47,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:09:47,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:09:48,073.073 INFO    ] No existing commands found in stream
[2026-06-13 12:09:53,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:09:53,086.086 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 12:09:57,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:09:57,193.193 INFO    ] Checking for system updates...
[2026-06-13 12:09:57,214.214 INFO    ] 200
[2026-06-13 12:09:57,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:57,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:09:57,247.247 INFO    ] No update needed
[2026-06-13 12:09:57,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 12:09:57,272.272 INFO    ] 200
[2026-06-13 12:09:57,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:09:57,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:09:57,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:09:57,341.341 INFO    ] No camera update needed
[2026-06-13 12:09:57,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:09:57,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:09:57,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:09:57,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:09:59,391.391 INFO    ] ================================================
[2026-06-13 12:09:59,406.406 INFO    ] Launching Daemon at Sat Jun 13 12:09:59 IST 2026
[2026-06-13 12:09:59,418.418 INFO    ] ================================================
[2026-06-13 12:09:59,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:09:59
[2026-06-13 12:10:00,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:10:00,222.222 INFO    ] Initializing speech engine...
[2026-06-13 12:10:00,235.235 INFO    ] 2026-06-13 12:10:00
[2026-06-13 12:10:00,455.455 INFO    ] 2026-06-13 12:10:00
[2026-06-13 12:10:00,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:10:00,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:10:00,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:10:00,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:10:00,861.861 INFO    ] time= 13/06/2026 12:10:00
[2026-06-13 12:10:00,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:10:00,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:10:01,014.014 INFO    ] No existing commands found in stream
[2026-06-13 12:10:06,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:10:06,027.027 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 12:10:09,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:10:09,136.136 INFO    ] Checking for system updates...
[2026-06-13 12:10:09,158.158 INFO    ] 200
[2026-06-13 12:10:09,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:09,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:09,195.195 INFO    ] No update needed
[2026-06-13 12:10:09,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 12:10:09,215.215 INFO    ] 200
[2026-06-13 12:10:09,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:09,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:10:09,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:09,279.279 INFO    ] No camera update needed
[2026-06-13 12:10:09,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:10:09,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:10:09,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:10:09,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:10:11,328.328 INFO    ] ================================================
[2026-06-13 12:10:11,344.344 INFO    ] Launching Daemon at Sat Jun 13 12:10:11 IST 2026
[2026-06-13 12:10:11,355.355 INFO    ] ================================================
[2026-06-13 12:10:11,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:10:11
[2026-06-13 12:10:12,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:10:12,225.225 INFO    ] Initializing speech engine...
[2026-06-13 12:10:12,231.231 INFO    ] 2026-06-13 12:10:12
[2026-06-13 12:10:12,439.439 INFO    ] 2026-06-13 12:10:12
[2026-06-13 12:10:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:10:12,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:10:12,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:10:12,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:10:12,848.848 INFO    ] time= 13/06/2026 12:10:12
[2026-06-13 12:10:12,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:10:12,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:10:12,960.960 INFO    ] No existing commands found in stream
[2026-06-13 12:10:17,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:10:17,978.978 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 12:10:19,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:10:19,768.768 INFO    ] Checking for system updates...
[2026-06-13 12:10:19,790.790 INFO    ] 200
[2026-06-13 12:10:19,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:19,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:10:19,824.824 INFO    ] No update needed
[2026-06-13 12:10:19,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 12:10:19,846.846 INFO    ] 200
[2026-06-13 12:10:19,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:19,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:10:19,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:10:19,912.912 INFO    ] No camera update needed
[2026-06-13 12:10:19,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:10:19,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:10:19,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:10:19,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:10:21,960.960 INFO    ] ================================================
[2026-06-13 12:10:21,976.976 INFO    ] Launching Daemon at Sat Jun 13 12:10:21 IST 2026
[2026-06-13 12:10:21,987.987 INFO    ] ================================================
[2026-06-13 12:10:22,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:10:22
[2026-06-13 12:10:22,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:10:22,809.809 INFO    ] Initializing speech engine...
[2026-06-13 12:10:22,814.814 INFO    ] 2026-06-13 12:10:22
[2026-06-13 12:10:23,017.017 INFO    ] 2026-06-13 12:10:22
[2026-06-13 12:10:23,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:10:23,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:10:23,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:10:23,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:10:23,425.425 INFO    ] time= 13/06/2026 12:10:23
[2026-06-13 12:10:23,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:10:23,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:10:23,529.529 INFO    ] No existing commands found in stream
[2026-06-13 12:10:28,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:10:28,541.541 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 12:10:32,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:10:32,823.823 INFO    ] Checking for system updates...
[2026-06-13 12:10:32,844.844 INFO    ] 200
[2026-06-13 12:10:32,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:32,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:32,903.903 INFO    ] No update needed
[2026-06-13 12:10:32,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 12:10:32,940.940 INFO    ] 200
[2026-06-13 12:10:32,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:32,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:10:33,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:33,006.006 INFO    ] No camera update needed
[2026-06-13 12:10:33,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:10:33,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:10:33,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:10:33,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:10:35,055.055 INFO    ] ================================================
[2026-06-13 12:10:35,071.071 INFO    ] Launching Daemon at Sat Jun 13 12:10:35 IST 2026
[2026-06-13 12:10:35,082.082 INFO    ] ================================================
[2026-06-13 12:10:35,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:10:35
[2026-06-13 12:10:36,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:10:36,463.463 INFO    ] Initializing speech engine...
[2026-06-13 12:10:36,474.474 INFO    ] 2026-06-13 12:10:36
[2026-06-13 12:10:36,735.735 INFO    ] 2026-06-13 12:10:36
[2026-06-13 12:10:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:10:37,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:10:37,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:10:37,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:10:37,171.171 INFO    ] time= 13/06/2026 12:10:37
[2026-06-13 12:10:37,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:10:37,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:10:37,347.347 INFO    ] No existing commands found in stream
[2026-06-13 12:10:42,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:10:42,362.362 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 12:10:46,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:10:46,683.683 INFO    ] Checking for system updates...
[2026-06-13 12:10:46,707.707 INFO    ] 200
[2026-06-13 12:10:46,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:46,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:10:46,745.745 INFO    ] No update needed
[2026-06-13 12:10:46,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 12:10:46,766.766 INFO    ] 200
[2026-06-13 12:10:46,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:46,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:10:46,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:10:46,944.944 INFO    ] No camera update needed
[2026-06-13 12:10:46,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:10:46,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:10:46,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:10:46,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:10:48,991.991 INFO    ] ================================================
[2026-06-13 12:10:49,006.006 INFO    ] Launching Daemon at Sat Jun 13 12:10:49 IST 2026
[2026-06-13 12:10:49,018.018 INFO    ] ================================================
[2026-06-13 12:10:49,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:10:49
[2026-06-13 12:10:49,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:10:49,801.801 INFO    ] Initializing speech engine...
[2026-06-13 12:10:49,814.814 INFO    ] 2026-06-13 12:10:49
[2026-06-13 12:10:50,031.031 INFO    ] 2026-06-13 12:10:49
[2026-06-13 12:10:50,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:10:50,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:10:50,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:10:50,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:10:50,461.461 INFO    ] time= 13/06/2026 12:10:50
[2026-06-13 12:10:50,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:10:50,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:10:50,585.585 INFO    ] No existing commands found in stream
[2026-06-13 12:10:55,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:10:55,599.599 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 12:10:58,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:10:58,757.757 INFO    ] Checking for system updates...
[2026-06-13 12:10:58,794.794 INFO    ] 200
[2026-06-13 12:10:58,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:58,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:58,852.852 INFO    ] No update needed
[2026-06-13 12:10:58,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 12:10:58,890.890 INFO    ] 200
[2026-06-13 12:10:58,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:10:58,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:10:58,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:10:58,966.966 INFO    ] No camera update needed
[2026-06-13 12:10:58,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:10:58,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:10:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:10:58,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:01,014.014 INFO    ] ================================================
[2026-06-13 12:11:01,029.029 INFO    ] Launching Daemon at Sat Jun 13 12:11:01 IST 2026
[2026-06-13 12:11:01,040.040 INFO    ] ================================================
[2026-06-13 12:11:01,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:01
[2026-06-13 12:11:01,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:02,030.030 INFO    ] Initializing speech engine...
[2026-06-13 12:11:02,045.045 INFO    ] 2026-06-13 12:11:02
[2026-06-13 12:11:02,266.266 INFO    ] 2026-06-13 12:11:02
[2026-06-13 12:11:02,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:02,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:02,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:02,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:02,557.557 INFO    ] time= 13/06/2026 12:11:02
[2026-06-13 12:11:02,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:02,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:02,682.682 INFO    ] No existing commands found in stream
[2026-06-13 12:11:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:11:07,719.719 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 12:11:10,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:11:10,660.660 INFO    ] Checking for system updates...
[2026-06-13 12:11:10,681.681 INFO    ] 200
[2026-06-13 12:11:10,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:10,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:11:10,717.717 INFO    ] No update needed
[2026-06-13 12:11:10,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 12:11:10,739.739 INFO    ] 200
[2026-06-13 12:11:10,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:10,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:11:10,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:11:10,815.815 INFO    ] No camera update needed
[2026-06-13 12:11:10,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:11:10,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:11:10,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:11:10,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:12,866.866 INFO    ] ================================================
[2026-06-13 12:11:12,881.881 INFO    ] Launching Daemon at Sat Jun 13 12:11:12 IST 2026
[2026-06-13 12:11:12,892.892 INFO    ] ================================================
[2026-06-13 12:11:13,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:13
[2026-06-13 12:11:13,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:13,773.773 INFO    ] Initializing speech engine...
[2026-06-13 12:11:13,779.779 INFO    ] 2026-06-13 12:11:13
[2026-06-13 12:11:13,987.987 INFO    ] 2026-06-13 12:11:13
[2026-06-13 12:11:14,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:14,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:14,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:14,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:14,410.410 INFO    ] time= 13/06/2026 12:11:14
[2026-06-13 12:11:14,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:14,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:14,511.511 INFO    ] No existing commands found in stream
[2026-06-13 12:11:19,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:11:19,550.550 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 12:11:22,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:11:22,961.961 INFO    ] Checking for system updates...
[2026-06-13 12:11:22,983.983 INFO    ] 200
[2026-06-13 12:11:22,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:23,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:11:23,015.015 INFO    ] No update needed
[2026-06-13 12:11:23,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 12:11:23,036.036 INFO    ] 200
[2026-06-13 12:11:23,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:23,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:11:23,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:11:23,100.100 INFO    ] No camera update needed
[2026-06-13 12:11:23,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:11:23,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:11:23,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:11:23,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:25,147.147 INFO    ] ================================================
[2026-06-13 12:11:25,163.163 INFO    ] Launching Daemon at Sat Jun 13 12:11:25 IST 2026
[2026-06-13 12:11:25,175.175 INFO    ] ================================================
[2026-06-13 12:11:25,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:25
[2026-06-13 12:11:25,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:26,166.166 INFO    ] Initializing speech engine...
[2026-06-13 12:11:26,181.181 INFO    ] 2026-06-13 12:11:26
[2026-06-13 12:11:26,437.437 INFO    ] 2026-06-13 12:11:26
[2026-06-13 12:11:26,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:26,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:26,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:26,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:26,826.826 INFO    ] time= 13/06/2026 12:11:26
[2026-06-13 12:11:26,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:26,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:26,976.976 INFO    ] No existing commands found in stream
[2026-06-13 12:11:31,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:11:32,001.001 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 12:11:32,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:11:32,591.591 INFO    ] Checking for system updates...
[2026-06-13 12:11:32,611.611 INFO    ] 200
[2026-06-13 12:11:32,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:32,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:32,646.646 INFO    ] No update needed
[2026-06-13 12:11:32,648.648 INFO    ] Checking for camera pi updates...
[2026-06-13 12:11:32,667.667 INFO    ] 200
[2026-06-13 12:11:32,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:32,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:11:32,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:32,715.715 INFO    ] No camera update needed
[2026-06-13 12:11:32,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:11:32,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:11:32,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:11:32,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:34,762.762 INFO    ] ================================================
[2026-06-13 12:11:34,778.778 INFO    ] Launching Daemon at Sat Jun 13 12:11:34 IST 2026
[2026-06-13 12:11:34,790.790 INFO    ] ================================================
[2026-06-13 12:11:35,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:35
[2026-06-13 12:11:35,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:35,596.596 INFO    ] Initializing speech engine...
[2026-06-13 12:11:35,601.601 INFO    ] 2026-06-13 12:11:35
[2026-06-13 12:11:35,808.808 INFO    ] 2026-06-13 12:11:35
[2026-06-13 12:11:35,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:36,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:36,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:36,197.197 INFO    ] time= 13/06/2026 12:11:36
[2026-06-13 12:11:36,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:36,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:36,322.322 INFO    ] No existing commands found in stream
[2026-06-13 12:11:41,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:11:41,335.335 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 12:11:43,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:11:43,574.574 INFO    ] Checking for system updates...
[2026-06-13 12:11:43,595.595 INFO    ] 200
[2026-06-13 12:11:43,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:43,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:43,628.628 INFO    ] No update needed
[2026-06-13 12:11:43,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 12:11:43,649.649 INFO    ] 200
[2026-06-13 12:11:43,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:43,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:11:43,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:43,714.714 INFO    ] No camera update needed
[2026-06-13 12:11:43,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:11:43,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:11:43,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:11:43,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:45,762.762 INFO    ] ================================================
[2026-06-13 12:11:45,778.778 INFO    ] Launching Daemon at Sat Jun 13 12:11:45 IST 2026
[2026-06-13 12:11:45,790.790 INFO    ] ================================================
[2026-06-13 12:11:46,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:46
[2026-06-13 12:11:46,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:46,589.589 INFO    ] Initializing speech engine...
[2026-06-13 12:11:46,594.594 INFO    ] 2026-06-13 12:11:46
[2026-06-13 12:11:46,798.798 INFO    ] 2026-06-13 12:11:46
[2026-06-13 12:11:46,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:46,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:46,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:47,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:47,199.199 INFO    ] time= 13/06/2026 12:11:47
[2026-06-13 12:11:47,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:47,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:47,315.315 INFO    ] No existing commands found in stream
[2026-06-13 12:11:52,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:11:52,326.326 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 12:11:55,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:11:55,933.933 INFO    ] Checking for system updates...
[2026-06-13 12:11:55,954.954 INFO    ] 200
[2026-06-13 12:11:55,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:55,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:55,990.990 INFO    ] No update needed
[2026-06-13 12:11:55,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 12:11:56,010.010 INFO    ] 200
[2026-06-13 12:11:56,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:11:56,035.035 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:11:56,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:11:56,073.073 INFO    ] No camera update needed
[2026-06-13 12:11:56,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:11:56,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:11:56,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:11:56,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:11:58,121.121 INFO    ] ================================================
[2026-06-13 12:11:58,137.137 INFO    ] Launching Daemon at Sat Jun 13 12:11:58 IST 2026
[2026-06-13 12:11:58,148.148 INFO    ] ================================================
[2026-06-13 12:11:58,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:11:58
[2026-06-13 12:11:58,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:11:58,986.986 INFO    ] Initializing speech engine...
[2026-06-13 12:11:58,991.991 INFO    ] 2026-06-13 12:11:58
[2026-06-13 12:11:59,200.200 INFO    ] 2026-06-13 12:11:59
[2026-06-13 12:11:59,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:11:59,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:11:59,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:11:59,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:11:59,625.625 INFO    ] time= 13/06/2026 12:11:59
[2026-06-13 12:11:59,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:11:59,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:11:59,721.721 INFO    ] No existing commands found in stream
[2026-06-13 12:12:04,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:12:04,749.749 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 12:12:08,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:12:08,476.476 INFO    ] Checking for system updates...
[2026-06-13 12:12:08,499.499 INFO    ] 200
[2026-06-13 12:12:08,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:08,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:12:08,532.532 INFO    ] No update needed
[2026-06-13 12:12:08,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 12:12:08,553.553 INFO    ] 200
[2026-06-13 12:12:08,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:08,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:12:08,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:12:08,617.617 INFO    ] No camera update needed
[2026-06-13 12:12:08,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:12:08,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:12:08,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:12:08,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:12:10,666.666 INFO    ] ================================================
[2026-06-13 12:12:10,682.682 INFO    ] Launching Daemon at Sat Jun 13 12:12:10 IST 2026
[2026-06-13 12:12:10,693.693 INFO    ] ================================================
[2026-06-13 12:12:11,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:12:11
[2026-06-13 12:12:11,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:12:11,492.492 INFO    ] Initializing speech engine...
[2026-06-13 12:12:11,501.501 INFO    ] 2026-06-13 12:12:11
[2026-06-13 12:12:11,723.723 INFO    ] 2026-06-13 12:12:11
[2026-06-13 12:12:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:12:11,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:12:11,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:12:12,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:12:12,145.145 INFO    ] time= 13/06/2026 12:12:12
[2026-06-13 12:12:12,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:12:12,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:12:12,262.262 INFO    ] No existing commands found in stream
[2026-06-13 12:12:17,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:12:17,288.288 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 12:12:19,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:12:19,946.946 INFO    ] Checking for system updates...
[2026-06-13 12:12:19,966.966 INFO    ] 200
[2026-06-13 12:12:19,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:19,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:12:19,999.999 INFO    ] No update needed
[2026-06-13 12:12:20,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 12:12:20,020.020 INFO    ] 200
[2026-06-13 12:12:20,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:20,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:12:20,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:12:20,089.089 INFO    ] No camera update needed
[2026-06-13 12:12:20,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:12:20,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:12:20,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:12:20,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:12:22,135.135 INFO    ] ================================================
[2026-06-13 12:12:22,151.151 INFO    ] Launching Daemon at Sat Jun 13 12:12:22 IST 2026
[2026-06-13 12:12:22,162.162 INFO    ] ================================================
[2026-06-13 12:12:22,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:12:22
[2026-06-13 12:12:22,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:12:22,979.979 INFO    ] Initializing speech engine...
[2026-06-13 12:12:22,988.988 INFO    ] 2026-06-13 12:12:22
[2026-06-13 12:12:23,195.195 INFO    ] 2026-06-13 12:12:23
[2026-06-13 12:12:23,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:12:23,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:12:23,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:12:23,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:12:23,613.613 INFO    ] time= 13/06/2026 12:12:23
[2026-06-13 12:12:23,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:12:23,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:12:23,719.719 INFO    ] No existing commands found in stream
[2026-06-13 12:12:28,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:12:28,733.733 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 12:12:30,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:12:30,585.585 INFO    ] Checking for system updates...
[2026-06-13 12:12:30,607.607 INFO    ] 200
[2026-06-13 12:12:30,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:30,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:12:30,640.640 INFO    ] No update needed
[2026-06-13 12:12:30,641.641 INFO    ] Checking for camera pi updates...
[2026-06-13 12:12:30,660.660 INFO    ] 200
[2026-06-13 12:12:30,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:30,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:12:30,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:12:30,726.726 INFO    ] No camera update needed
[2026-06-13 12:12:30,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:12:30,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:12:30,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:12:30,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:12:32,767.767 INFO    ] ================================================
[2026-06-13 12:12:32,782.782 INFO    ] Launching Daemon at Sat Jun 13 12:12:32 IST 2026
[2026-06-13 12:12:32,793.793 INFO    ] ================================================
[2026-06-13 12:12:33,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:12:33
[2026-06-13 12:12:33,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:12:34,091.091 INFO    ] Initializing speech engine...
[2026-06-13 12:12:34,097.097 INFO    ] 2026-06-13 12:12:34
[2026-06-13 12:12:34,357.357 INFO    ] 2026-06-13 12:12:34
[2026-06-13 12:12:34,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:12:34,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:12:34,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:12:34,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:12:34,823.823 INFO    ] time= 13/06/2026 12:12:34
[2026-06-13 12:12:34,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:12:34,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:12:35,027.027 INFO    ] No existing commands found in stream
[2026-06-13 12:12:40,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:12:40,057.057 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 12:12:42,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:12:42,906.906 INFO    ] Checking for system updates...
[2026-06-13 12:12:42,927.927 INFO    ] 200
[2026-06-13 12:12:42,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:42,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:12:42,962.962 INFO    ] No update needed
[2026-06-13 12:12:42,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 12:12:42,983.983 INFO    ] 200
[2026-06-13 12:12:42,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:43,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:12:43,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:12:43,055.055 INFO    ] No camera update needed
[2026-06-13 12:12:43,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:12:43,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:12:43,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:12:43,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:12:45,105.105 INFO    ] ================================================
[2026-06-13 12:12:45,120.120 INFO    ] Launching Daemon at Sat Jun 13 12:12:45 IST 2026
[2026-06-13 12:12:45,131.131 INFO    ] ================================================
[2026-06-13 12:12:45,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:12:45
[2026-06-13 12:12:45,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:12:45,920.920 INFO    ] Initializing speech engine...
[2026-06-13 12:12:45,925.925 INFO    ] 2026-06-13 12:12:45
[2026-06-13 12:12:46,142.142 INFO    ] 2026-06-13 12:12:46
[2026-06-13 12:12:46,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:12:46,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:12:46,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:12:46,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:12:46,568.568 INFO    ] time= 13/06/2026 12:12:46
[2026-06-13 12:12:46,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:12:46,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:12:46,692.692 INFO    ] No existing commands found in stream
[2026-06-13 12:12:51,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:12:51,704.704 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 12:12:53,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:12:53,691.691 INFO    ] Checking for system updates...
[2026-06-13 12:12:53,713.713 INFO    ] 200
[2026-06-13 12:12:53,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:53,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:12:53,746.746 INFO    ] No update needed
[2026-06-13 12:12:53,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 12:12:53,767.767 INFO    ] 200
[2026-06-13 12:12:53,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:12:53,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:12:53,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:12:53,930.930 INFO    ] No camera update needed
[2026-06-13 12:12:53,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:12:53,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:12:53,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:12:53,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:12:55,979.979 INFO    ] ================================================
[2026-06-13 12:12:56,995.995 INFO    ] Launching Daemon at Sat Jun 13 12:12:55 IST 2026
[2026-06-13 12:12:56,006.006 INFO    ] ================================================
[2026-06-13 12:12:56,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:12:56
[2026-06-13 12:12:56,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:12:56,861.861 INFO    ] Initializing speech engine...
[2026-06-13 12:12:56,866.866 INFO    ] 2026-06-13 12:12:56
[2026-06-13 12:12:57,070.070 INFO    ] 2026-06-13 12:12:57
[2026-06-13 12:12:57,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:12:57,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:12:57,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:12:57,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:12:57,474.474 INFO    ] time= 13/06/2026 12:12:57
[2026-06-13 12:12:57,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:12:57,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:12:57,582.582 INFO    ] No existing commands found in stream
[2026-06-13 12:13:02,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:02,591.591 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 12:13:06,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:13:06,571.571 INFO    ] Checking for system updates...
[2026-06-13 12:13:06,592.592 INFO    ] 200
[2026-06-13 12:13:06,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:06,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:06,625.625 INFO    ] No update needed
[2026-06-13 12:13:06,626.626 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:06,648.648 INFO    ] 200
[2026-06-13 12:13:06,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:06,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:06,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:06,715.715 INFO    ] No camera update needed
[2026-06-13 12:13:06,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:06,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:06,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:06,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:13:08,762.762 INFO    ] ================================================
[2026-06-13 12:13:08,777.777 INFO    ] Launching Daemon at Sat Jun 13 12:13:08 IST 2026
[2026-06-13 12:13:08,787.787 INFO    ] ================================================
[2026-06-13 12:13:09,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:13:09
[2026-06-13 12:13:09,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:13:09,595.595 INFO    ] Initializing speech engine...
[2026-06-13 12:13:09,600.600 INFO    ] 2026-06-13 12:13:09
[2026-06-13 12:13:09,803.803 INFO    ] 2026-06-13 12:13:09
[2026-06-13 12:13:09,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:13:10,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:13:10,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:13:10,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:13:10,218.218 INFO    ] time= 13/06/2026 12:13:10
[2026-06-13 12:13:10,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:13:10,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:13:10,316.316 INFO    ] No existing commands found in stream
[2026-06-13 12:13:15,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:15,330.330 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 12:13:18,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:13:18,929.929 INFO    ] Checking for system updates...
[2026-06-13 12:13:18,950.950 INFO    ] 200
[2026-06-13 12:13:18,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:18,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:18,983.983 INFO    ] No update needed
[2026-06-13 12:13:18,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:19,004.004 INFO    ] 200
[2026-06-13 12:13:19,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:19,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:19,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:19,078.078 INFO    ] No camera update needed
[2026-06-13 12:13:19,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:19,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:19,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:19,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:13:21,124.124 INFO    ] ================================================
[2026-06-13 12:13:21,145.145 INFO    ] Launching Daemon at Sat Jun 13 12:13:21 IST 2026
[2026-06-13 12:13:21,167.167 INFO    ] ================================================
[2026-06-13 12:13:21,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:13:21
[2026-06-13 12:13:21,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:13:21,993.993 INFO    ] Initializing speech engine...
[2026-06-13 12:13:21,998.998 INFO    ] 2026-06-13 12:13:21
[2026-06-13 12:13:22,200.200 INFO    ] 2026-06-13 12:13:22
[2026-06-13 12:13:22,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:13:22,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:13:22,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:13:22,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:13:22,605.605 INFO    ] time= 13/06/2026 12:13:22
[2026-06-13 12:13:22,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:13:22,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:13:22,715.715 INFO    ] No existing commands found in stream
[2026-06-13 12:13:27,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:27,728.728 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 12:13:28,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:13:28,347.347 INFO    ] Checking for system updates...
[2026-06-13 12:13:28,368.368 INFO    ] 200
[2026-06-13 12:13:28,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:28,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:28,401.401 INFO    ] No update needed
[2026-06-13 12:13:28,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:28,422.422 INFO    ] 200
[2026-06-13 12:13:28,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:28,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:28,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:28,485.485 INFO    ] No camera update needed
[2026-06-13 12:13:28,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:28,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:28,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:28,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:13:30,531.531 INFO    ] ================================================
[2026-06-13 12:13:30,546.546 INFO    ] Launching Daemon at Sat Jun 13 12:13:30 IST 2026
[2026-06-13 12:13:30,556.556 INFO    ] ================================================
[2026-06-13 12:13:30,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:13:30
[2026-06-13 12:13:31,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:13:31,382.382 INFO    ] Initializing speech engine...
[2026-06-13 12:13:31,386.386 INFO    ] 2026-06-13 12:13:31
[2026-06-13 12:13:31,603.603 INFO    ] 2026-06-13 12:13:31
[2026-06-13 12:13:31,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:13:31,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:13:31,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:13:31,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:13:32,042.042 INFO    ] time= 13/06/2026 12:13:31
[2026-06-13 12:13:32,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:13:32,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:13:32,162.162 INFO    ] No existing commands found in stream
[2026-06-13 12:13:37,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:37,173.173 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 12:13:39,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:13:39,718.718 INFO    ] Checking for system updates...
[2026-06-13 12:13:39,740.740 INFO    ] 200
[2026-06-13 12:13:39,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:39,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:39,773.773 INFO    ] No update needed
[2026-06-13 12:13:39,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:39,793.793 INFO    ] 200
[2026-06-13 12:13:39,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:39,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:39,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:39,867.867 INFO    ] No camera update needed
[2026-06-13 12:13:39,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:39,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:39,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:39,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:13:41,917.917 INFO    ] ================================================
[2026-06-13 12:13:41,932.932 INFO    ] Launching Daemon at Sat Jun 13 12:13:41 IST 2026
[2026-06-13 12:13:41,943.943 INFO    ] ================================================
[2026-06-13 12:13:42,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:13:42
[2026-06-13 12:13:42,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:13:42,724.724 INFO    ] Initializing speech engine...
[2026-06-13 12:13:42,734.734 INFO    ] 2026-06-13 12:13:42
[2026-06-13 12:13:42,939.939 INFO    ] 2026-06-13 12:13:42
[2026-06-13 12:13:42,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:13:43,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:13:43,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:13:43,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:13:43,340.340 INFO    ] time= 13/06/2026 12:13:43
[2026-06-13 12:13:43,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:13:43,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:13:43,461.461 INFO    ] No existing commands found in stream
[2026-06-13 12:13:48,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:48,474.474 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 12:13:49,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:13:49,535.535 INFO    ] Checking for system updates...
[2026-06-13 12:13:49,555.555 INFO    ] 200
[2026-06-13 12:13:49,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:49,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:49,588.588 INFO    ] No update needed
[2026-06-13 12:13:49,590.590 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:49,609.609 INFO    ] 200
[2026-06-13 12:13:49,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:49,634.634 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:49,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:13:49,671.671 INFO    ] No camera update needed
[2026-06-13 12:13:49,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:49,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:49,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:49,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:13:51,720.720 INFO    ] ================================================
[2026-06-13 12:13:51,735.735 INFO    ] Launching Daemon at Sat Jun 13 12:13:51 IST 2026
[2026-06-13 12:13:51,746.746 INFO    ] ================================================
[2026-06-13 12:13:52,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:13:52
[2026-06-13 12:13:52,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:13:52,544.544 INFO    ] Initializing speech engine...
[2026-06-13 12:13:52,548.548 INFO    ] 2026-06-13 12:13:52
[2026-06-13 12:13:52,776.776 INFO    ] 2026-06-13 12:13:52
[2026-06-13 12:13:52,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:13:52,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:13:53,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:13:53,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:13:53,160.160 INFO    ] time= 13/06/2026 12:13:53
[2026-06-13 12:13:53,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:13:53,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:13:53,334.334 INFO    ] No existing commands found in stream
[2026-06-13 12:13:58,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:13:58,347.347 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 12:13:59,725.725 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:13:59,727.727 INFO    ] Checking for system updates...
[2026-06-13 12:13:59,748.748 INFO    ] 200
[2026-06-13 12:13:59,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:59,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:13:59,781.781 INFO    ] No update needed
[2026-06-13 12:13:59,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 12:13:59,802.802 INFO    ] 200
[2026-06-13 12:13:59,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:13:59,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:13:59,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:13:59,869.869 INFO    ] No camera update needed
[2026-06-13 12:13:59,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:13:59,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:13:59,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:13:59,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:14:01,944.944 INFO    ] ================================================
[2026-06-13 12:14:01,963.963 INFO    ] Launching Daemon at Sat Jun 13 12:14:01 IST 2026
[2026-06-13 12:14:01,980.980 INFO    ] ================================================
[2026-06-13 12:14:02,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:14:02
[2026-06-13 12:14:02,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:14:03,005.005 INFO    ] Initializing speech engine...
[2026-06-13 12:14:03,021.021 INFO    ] 2026-06-13 12:14:03
[2026-06-13 12:14:03,288.288 INFO    ] 2026-06-13 12:14:03
[2026-06-13 12:14:03,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:14:03,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:14:03,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:14:03,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:14:03,610.610 INFO    ] time= 13/06/2026 12:14:03
[2026-06-13 12:14:03,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:14:03,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:14:03,730.730 INFO    ] No existing commands found in stream
[2026-06-13 12:14:08,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:14:08,755.755 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 12:14:09,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:14:09,231.231 INFO    ] Checking for system updates...
[2026-06-13 12:14:09,251.251 INFO    ] 200
[2026-06-13 12:14:09,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:09,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:09,285.285 INFO    ] No update needed
[2026-06-13 12:14:09,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 12:14:09,305.305 INFO    ] 200
[2026-06-13 12:14:09,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:09,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:14:09,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:09,369.369 INFO    ] No camera update needed
[2026-06-13 12:14:09,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:14:09,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:14:09,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:14:09,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:14:11,416.416 INFO    ] ================================================
[2026-06-13 12:14:11,431.431 INFO    ] Launching Daemon at Sat Jun 13 12:14:11 IST 2026
[2026-06-13 12:14:11,441.441 INFO    ] ================================================
[2026-06-13 12:14:11,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:14:11
[2026-06-13 12:14:12,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:14:12,254.254 INFO    ] Initializing speech engine...
[2026-06-13 12:14:12,257.257 INFO    ] 2026-06-13 12:14:12
[2026-06-13 12:14:12,460.460 INFO    ] 2026-06-13 12:14:12
[2026-06-13 12:14:12,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:14:12,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:14:12,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:14:12,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:14:12,859.859 INFO    ] time= 13/06/2026 12:14:12
[2026-06-13 12:14:12,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:14:12,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:14:12,975.975 INFO    ] No existing commands found in stream
[2026-06-13 12:14:17,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:14:17,992.992 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 12:14:20,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:14:20,057.057 INFO    ] Checking for system updates...
[2026-06-13 12:14:20,078.078 INFO    ] 200
[2026-06-13 12:14:20,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:20,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:14:20,111.111 INFO    ] No update needed
[2026-06-13 12:14:20,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 12:14:20,134.134 INFO    ] 200
[2026-06-13 12:14:20,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:20,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:14:20,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:20,206.206 INFO    ] No camera update needed
[2026-06-13 12:14:20,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:14:20,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:14:20,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:14:20,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:14:22,252.252 INFO    ] ================================================
[2026-06-13 12:14:22,267.267 INFO    ] Launching Daemon at Sat Jun 13 12:14:22 IST 2026
[2026-06-13 12:14:22,277.277 INFO    ] ================================================
[2026-06-13 12:14:22,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:14:22
[2026-06-13 12:14:22,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:14:23,092.092 INFO    ] Initializing speech engine...
[2026-06-13 12:14:23,097.097 INFO    ] 2026-06-13 12:14:23
[2026-06-13 12:14:23,299.299 INFO    ] 2026-06-13 12:14:23
[2026-06-13 12:14:23,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:14:23,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:14:23,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:14:23,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:14:23,701.701 INFO    ] time= 13/06/2026 12:14:23
[2026-06-13 12:14:23,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:14:23,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:14:23,811.811 INFO    ] No existing commands found in stream
[2026-06-13 12:14:28,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:14:28,823.823 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 12:14:29,828.828 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 12:14:29,852.852 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 12:14:29,860.860 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 12:14:29,869.869 INFO    ] None
[2026-06-13 12:14:29,871.871 INFO    ] Checking for system updates...
[2026-06-13 12:14:29,912.912 INFO    ] 200
[2026-06-13 12:14:29,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:29,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:29,948.948 INFO    ] No update needed
[2026-06-13 12:14:29,949.949 INFO    ] Checking for camera pi updates...
[2026-06-13 12:14:29,971.971 INFO    ] 200
[2026-06-13 12:14:29,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:29,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:14:33,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:33,935.935 INFO    ] No camera update needed
[2026-06-13 12:14:33,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:14:33,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:14:33,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:14:33,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:14:36,995.995 INFO    ] ================================================
[2026-06-13 12:14:36,010.010 INFO    ] Launching Daemon at Sat Jun 13 12:14:36 IST 2026
[2026-06-13 12:14:36,021.021 INFO    ] ================================================
[2026-06-13 12:14:36,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:14:36
[2026-06-13 12:14:36,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:14:37,182.182 INFO    ] Initializing speech engine...
[2026-06-13 12:14:37,188.188 INFO    ] 2026-06-13 12:14:37
[2026-06-13 12:14:37,467.467 INFO    ] 2026-06-13 12:14:37
[2026-06-13 12:14:37,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:14:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:14:37,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:14:37,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:14:37,929.929 INFO    ] time= 13/06/2026 12:14:37
[2026-06-13 12:14:37,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:14:38,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:14:38,158.158 INFO    ] No existing commands found in stream
[2026-06-13 12:14:43,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:14:43,190.190 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 12:14:47,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:14:47,336.336 INFO    ] Checking for system updates...
[2026-06-13 12:14:47,358.358 INFO    ] 200
[2026-06-13 12:14:47,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:47,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:14:47,392.392 INFO    ] No update needed
[2026-06-13 12:14:47,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 12:14:47,413.413 INFO    ] 200
[2026-06-13 12:14:47,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:47,442.442 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:14:47,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:14:47,485.485 INFO    ] No camera update needed
[2026-06-13 12:14:47,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:14:47,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:14:47,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:14:47,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:14:49,531.531 INFO    ] ================================================
[2026-06-13 12:14:49,547.547 INFO    ] Launching Daemon at Sat Jun 13 12:14:49 IST 2026
[2026-06-13 12:14:49,557.557 INFO    ] ================================================
[2026-06-13 12:14:49,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:14:49
[2026-06-13 12:14:50,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:14:50,337.337 INFO    ] Initializing speech engine...
[2026-06-13 12:14:50,347.347 INFO    ] 2026-06-13 12:14:50
[2026-06-13 12:14:50,562.562 INFO    ] 2026-06-13 12:14:50
[2026-06-13 12:14:50,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:14:50,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:14:50,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:14:50,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:14:50,935.935 INFO    ] time= 13/06/2026 12:14:50
[2026-06-13 12:14:50,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:14:51,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:14:51,116.116 INFO    ] No existing commands found in stream
[2026-06-13 12:14:56,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:14:56,130.130 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 12:14:59,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:14:59,835.835 INFO    ] Checking for system updates...
[2026-06-13 12:14:59,856.856 INFO    ] 200
[2026-06-13 12:14:59,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:59,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:59,889.889 INFO    ] No update needed
[2026-06-13 12:14:59,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 12:14:59,911.911 INFO    ] 200
[2026-06-13 12:14:59,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:14:59,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:14:59,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:14:59,977.977 INFO    ] No camera update needed
[2026-06-13 12:14:59,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:14:59,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:14:59,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:14:59,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:02,019.019 INFO    ] ================================================
[2026-06-13 12:15:02,032.032 INFO    ] Launching Daemon at Sat Jun 13 12:15:02 IST 2026
[2026-06-13 12:15:02,041.041 INFO    ] ================================================
[2026-06-13 12:15:02,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:02
[2026-06-13 12:15:02,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:02,857.857 INFO    ] Initializing speech engine...
[2026-06-13 12:15:02,866.866 INFO    ] 2026-06-13 12:15:02
[2026-06-13 12:15:03,073.073 INFO    ] 2026-06-13 12:15:03
[2026-06-13 12:15:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:03,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:03,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:03,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:03,500.500 INFO    ] time= 13/06/2026 12:15:03
[2026-06-13 12:15:03,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:03,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:03,597.597 INFO    ] No existing commands found in stream
[2026-06-13 12:15:08,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:15:08,610.610 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 12:15:10,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:15:10,943.943 INFO    ] Checking for system updates...
[2026-06-13 12:15:10,964.964 INFO    ] 200
[2026-06-13 12:15:10,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:10,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:10,999.999 INFO    ] No update needed
[2026-06-13 12:15:11,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 12:15:11,020.020 INFO    ] 200
[2026-06-13 12:15:11,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:11,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:15:11,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:11,083.083 INFO    ] No camera update needed
[2026-06-13 12:15:11,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:15:11,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:15:11,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:15:11,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:13,132.132 INFO    ] ================================================
[2026-06-13 12:15:13,147.147 INFO    ] Launching Daemon at Sat Jun 13 12:15:13 IST 2026
[2026-06-13 12:15:13,158.158 INFO    ] ================================================
[2026-06-13 12:15:13,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:13
[2026-06-13 12:15:13,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:13,961.961 INFO    ] Initializing speech engine...
[2026-06-13 12:15:13,966.966 INFO    ] 2026-06-13 12:15:13
[2026-06-13 12:15:14,170.170 INFO    ] 2026-06-13 12:15:14
[2026-06-13 12:15:14,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:14,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:14,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:14,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:14,574.574 INFO    ] time= 13/06/2026 12:15:14
[2026-06-13 12:15:14,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:14,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:14,685.685 INFO    ] No existing commands found in stream
[2026-06-13 12:15:19,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:15:19,696.696 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 12:15:20,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:15:20,875.875 INFO    ] Checking for system updates...
[2026-06-13 12:15:20,896.896 INFO    ] 200
[2026-06-13 12:15:20,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:20,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:20,929.929 INFO    ] No update needed
[2026-06-13 12:15:20,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 12:15:20,950.950 INFO    ] 200
[2026-06-13 12:15:20,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:20,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:15:21,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:21,009.009 INFO    ] No camera update needed
[2026-06-13 12:15:21,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:15:21,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:15:21,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:15:21,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:23,057.057 INFO    ] ================================================
[2026-06-13 12:15:23,072.072 INFO    ] Launching Daemon at Sat Jun 13 12:15:23 IST 2026
[2026-06-13 12:15:23,083.083 INFO    ] ================================================
[2026-06-13 12:15:23,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:23
[2026-06-13 12:15:23,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:23,892.892 INFO    ] Initializing speech engine...
[2026-06-13 12:15:23,902.902 INFO    ] 2026-06-13 12:15:23
[2026-06-13 12:15:24,105.105 INFO    ] 2026-06-13 12:15:24
[2026-06-13 12:15:24,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:24,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:24,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:24,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:24,388.388 INFO    ] time= 13/06/2026 12:15:24
[2026-06-13 12:15:24,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:24,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:24,547.547 INFO    ] No existing commands found in stream
[2026-06-13 12:15:29,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:15:29,580.580 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 12:15:31,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:15:31,312.312 INFO    ] Checking for system updates...
[2026-06-13 12:15:31,338.338 INFO    ] 200
[2026-06-13 12:15:31,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:31,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:15:31,384.384 INFO    ] No update needed
[2026-06-13 12:15:31,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 12:15:31,410.410 INFO    ] 200
[2026-06-13 12:15:31,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:31,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:15:31,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:15:31,475.475 INFO    ] No camera update needed
[2026-06-13 12:15:31,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:15:31,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:15:31,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:15:31,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:33,517.517 INFO    ] ================================================
[2026-06-13 12:15:33,533.533 INFO    ] Launching Daemon at Sat Jun 13 12:15:33 IST 2026
[2026-06-13 12:15:33,544.544 INFO    ] ================================================
[2026-06-13 12:15:33,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:33
[2026-06-13 12:15:34,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:34,340.340 INFO    ] Initializing speech engine...
[2026-06-13 12:15:34,350.350 INFO    ] 2026-06-13 12:15:34
[2026-06-13 12:15:34,552.552 INFO    ] 2026-06-13 12:15:34
[2026-06-13 12:15:34,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:34,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:34,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:34,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:34,956.956 INFO    ] time= 13/06/2026 12:15:34
[2026-06-13 12:15:34,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:34,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:35,066.066 INFO    ] No existing commands found in stream
[2026-06-13 12:15:40,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:15:40,083.083 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 12:15:43,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:15:43,630.630 INFO    ] Checking for system updates...
[2026-06-13 12:15:43,651.651 INFO    ] 200
[2026-06-13 12:15:43,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:43,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:43,684.684 INFO    ] No update needed
[2026-06-13 12:15:43,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 12:15:43,705.705 INFO    ] 200
[2026-06-13 12:15:43,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:43,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:15:43,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:43,772.772 INFO    ] No camera update needed
[2026-06-13 12:15:43,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:15:43,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:15:43,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:15:43,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:45,821.821 INFO    ] ================================================
[2026-06-13 12:15:45,836.836 INFO    ] Launching Daemon at Sat Jun 13 12:15:45 IST 2026
[2026-06-13 12:15:45,847.847 INFO    ] ================================================
[2026-06-13 12:15:46,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:46
[2026-06-13 12:15:46,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:46,666.666 INFO    ] Initializing speech engine...
[2026-06-13 12:15:46,676.676 INFO    ] 2026-06-13 12:15:46
[2026-06-13 12:15:46,881.881 INFO    ] 2026-06-13 12:15:46
[2026-06-13 12:15:46,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:47,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:47,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:47,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:47,280.280 INFO    ] time= 13/06/2026 12:15:47
[2026-06-13 12:15:47,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:47,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:47,395.395 INFO    ] No existing commands found in stream
[2026-06-13 12:15:52,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:15:52,407.407 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 12:15:53,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:15:53,431.431 INFO    ] Checking for system updates...
[2026-06-13 12:15:53,451.451 INFO    ] 200
[2026-06-13 12:15:53,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:53,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:53,486.486 INFO    ] No update needed
[2026-06-13 12:15:53,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 12:15:53,507.507 INFO    ] 200
[2026-06-13 12:15:53,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:15:53,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:15:53,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:15:53,571.571 INFO    ] No camera update needed
[2026-06-13 12:15:53,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:15:53,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:15:53,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:15:53,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:15:55,617.617 INFO    ] ================================================
[2026-06-13 12:15:55,632.632 INFO    ] Launching Daemon at Sat Jun 13 12:15:55 IST 2026
[2026-06-13 12:15:55,642.642 INFO    ] ================================================
[2026-06-13 12:15:56,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:15:55
[2026-06-13 12:15:56,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:15:56,484.484 INFO    ] Initializing speech engine...
[2026-06-13 12:15:56,490.490 INFO    ] 2026-06-13 12:15:56
[2026-06-13 12:15:56,699.699 INFO    ] 2026-06-13 12:15:56
[2026-06-13 12:15:56,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:15:56,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:15:56,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:15:57,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:15:57,118.118 INFO    ] time= 13/06/2026 12:15:57
[2026-06-13 12:15:57,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:15:57,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:15:57,231.231 INFO    ] No existing commands found in stream
[2026-06-13 12:16:02,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:02,242.242 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 12:16:05,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:16:05,176.176 INFO    ] Checking for system updates...
[2026-06-13 12:16:05,197.197 INFO    ] 200
[2026-06-13 12:16:05,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:05,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:16:05,233.233 INFO    ] No update needed
[2026-06-13 12:16:05,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 12:16:05,258.258 INFO    ] 200
[2026-06-13 12:16:05,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:05,283.283 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:16:05,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:16:05,319.319 INFO    ] No camera update needed
[2026-06-13 12:16:05,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:16:05,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:16:05,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:16:05,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:16:07,368.368 INFO    ] ================================================
[2026-06-13 12:16:07,383.383 INFO    ] Launching Daemon at Sat Jun 13 12:16:07 IST 2026
[2026-06-13 12:16:07,394.394 INFO    ] ================================================
[2026-06-13 12:16:07,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:16:07
[2026-06-13 12:16:08,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:16:08,170.170 INFO    ] Initializing speech engine...
[2026-06-13 12:16:08,183.183 INFO    ] 2026-06-13 12:16:08
[2026-06-13 12:16:08,396.396 INFO    ] 2026-06-13 12:16:08
[2026-06-13 12:16:08,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:16:08,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:16:08,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:16:08,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:16:08,808.808 INFO    ] time= 13/06/2026 12:16:08
[2026-06-13 12:16:08,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:16:08,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:16:08,941.941 INFO    ] No existing commands found in stream
[2026-06-13 12:16:13,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:13,954.954 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 12:16:16,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:16:16,410.410 INFO    ] Checking for system updates...
[2026-06-13 12:16:16,431.431 INFO    ] 200
[2026-06-13 12:16:16,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:16,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:16,465.465 INFO    ] No update needed
[2026-06-13 12:16:16,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 12:16:16,486.486 INFO    ] 200
[2026-06-13 12:16:16,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:16,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:16:16,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:16,552.552 INFO    ] No camera update needed
[2026-06-13 12:16:16,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:16:16,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:16:16,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:16:16,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:16:18,599.599 INFO    ] ================================================
[2026-06-13 12:16:18,614.614 INFO    ] Launching Daemon at Sat Jun 13 12:16:18 IST 2026
[2026-06-13 12:16:18,625.625 INFO    ] ================================================
[2026-06-13 12:16:18,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:16:18
[2026-06-13 12:16:19,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:16:19,432.432 INFO    ] Initializing speech engine...
[2026-06-13 12:16:19,440.440 INFO    ] 2026-06-13 12:16:19
[2026-06-13 12:16:19,660.660 INFO    ] 2026-06-13 12:16:19
[2026-06-13 12:16:19,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:16:19,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:16:19,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:16:20,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:16:20,075.075 INFO    ] time= 13/06/2026 12:16:20
[2026-06-13 12:16:20,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:16:20,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:16:20,204.204 INFO    ] No existing commands found in stream
[2026-06-13 12:16:25,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:25,218.218 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 12:16:28,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:16:28,810.810 INFO    ] Checking for system updates...
[2026-06-13 12:16:28,832.832 INFO    ] 200
[2026-06-13 12:16:28,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:28,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:28,866.866 INFO    ] No update needed
[2026-06-13 12:16:28,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 12:16:28,888.888 INFO    ] 200
[2026-06-13 12:16:28,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:28,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:16:28,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:28,955.955 INFO    ] No camera update needed
[2026-06-13 12:16:28,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:16:28,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:16:28,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:16:28,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:16:31,002.002 INFO    ] ================================================
[2026-06-13 12:16:31,017.017 INFO    ] Launching Daemon at Sat Jun 13 12:16:31 IST 2026
[2026-06-13 12:16:31,028.028 INFO    ] ================================================
[2026-06-13 12:16:31,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:16:31
[2026-06-13 12:16:31,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:16:31,864.864 INFO    ] Initializing speech engine...
[2026-06-13 12:16:31,870.870 INFO    ] 2026-06-13 12:16:31
[2026-06-13 12:16:32,085.085 INFO    ] 2026-06-13 12:16:32
[2026-06-13 12:16:32,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:16:32,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:16:32,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:16:32,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:16:32,406.406 INFO    ] time= 13/06/2026 12:16:32
[2026-06-13 12:16:32,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:16:32,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:16:32,505.505 INFO    ] No existing commands found in stream
[2026-06-13 12:16:37,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:37,543.543 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 12:16:39,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:16:39,607.607 INFO    ] Checking for system updates...
[2026-06-13 12:16:39,632.632 INFO    ] 200
[2026-06-13 12:16:39,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:39,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:16:39,673.673 INFO    ] No update needed
[2026-06-13 12:16:39,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 12:16:39,699.699 INFO    ] 200
[2026-06-13 12:16:39,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:39,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:16:39,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:16:39,867.867 INFO    ] No camera update needed
[2026-06-13 12:16:39,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:16:39,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:16:39,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:16:39,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:16:41,903.903 INFO    ] ================================================
[2026-06-13 12:16:41,913.913 INFO    ] Launching Daemon at Sat Jun 13 12:16:41 IST 2026
[2026-06-13 12:16:41,919.919 INFO    ] ================================================
[2026-06-13 12:16:42,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:16:42
[2026-06-13 12:16:42,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:16:42,743.743 INFO    ] Initializing speech engine...
[2026-06-13 12:16:42,753.753 INFO    ] 2026-06-13 12:16:42
[2026-06-13 12:16:42,958.958 INFO    ] 2026-06-13 12:16:42
[2026-06-13 12:16:42,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:16:43,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:16:43,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:16:43,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:16:43,365.365 INFO    ] time= 13/06/2026 12:16:43
[2026-06-13 12:16:43,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:16:43,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:16:43,476.476 INFO    ] No existing commands found in stream
[2026-06-13 12:16:48,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:48,493.493 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 12:16:50,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:16:50,365.365 INFO    ] Checking for system updates...
[2026-06-13 12:16:50,386.386 INFO    ] 200
[2026-06-13 12:16:50,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:50,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:50,421.421 INFO    ] No update needed
[2026-06-13 12:16:50,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 12:16:50,442.442 INFO    ] 200
[2026-06-13 12:16:50,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:16:50,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:16:50,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:16:50,506.506 INFO    ] No camera update needed
[2026-06-13 12:16:50,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:16:50,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:16:50,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:16:50,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:16:52,554.554 INFO    ] ================================================
[2026-06-13 12:16:52,569.569 INFO    ] Launching Daemon at Sat Jun 13 12:16:52 IST 2026
[2026-06-13 12:16:52,580.580 INFO    ] ================================================
[2026-06-13 12:16:52,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:16:52
[2026-06-13 12:16:53,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:16:53,397.397 INFO    ] Initializing speech engine...
[2026-06-13 12:16:53,410.410 INFO    ] 2026-06-13 12:16:53
[2026-06-13 12:16:53,617.617 INFO    ] 2026-06-13 12:16:53
[2026-06-13 12:16:53,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:16:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:16:53,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:16:53,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:16:54,034.034 INFO    ] time= 13/06/2026 12:16:53
[2026-06-13 12:16:54,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:16:54,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:16:54,132.132 INFO    ] No existing commands found in stream
[2026-06-13 12:16:59,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:16:59,143.143 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 12:17:00,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:17:00,675.675 INFO    ] Checking for system updates...
[2026-06-13 12:17:00,696.696 INFO    ] 200
[2026-06-13 12:17:00,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:00,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:00,733.733 INFO    ] No update needed
[2026-06-13 12:17:00,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:00,754.754 INFO    ] 200
[2026-06-13 12:17:00,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:00,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:00,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:00,826.826 INFO    ] No camera update needed
[2026-06-13 12:17:00,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:00,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:00,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:00,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:17:02,885.885 INFO    ] ================================================
[2026-06-13 12:17:02,901.901 INFO    ] Launching Daemon at Sat Jun 13 12:17:02 IST 2026
[2026-06-13 12:17:02,912.912 INFO    ] ================================================
[2026-06-13 12:17:03,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:17:03
[2026-06-13 12:17:04,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:17:04,378.378 INFO    ] Initializing speech engine...
[2026-06-13 12:17:04,387.387 INFO    ] 2026-06-13 12:17:04
[2026-06-13 12:17:04,635.635 INFO    ] 2026-06-13 12:17:04
[2026-06-13 12:17:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:17:04,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:17:04,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:17:04,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:17:05,005.005 INFO    ] time= 13/06/2026 12:17:04
[2026-06-13 12:17:05,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:17:05,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:17:05,081.081 INFO    ] No existing commands found in stream
[2026-06-13 12:17:10,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:17:10,100.100 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 12:17:13,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:17:13,330.330 INFO    ] Checking for system updates...
[2026-06-13 12:17:13,351.351 INFO    ] 200
[2026-06-13 12:17:13,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:13,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:17:13,386.386 INFO    ] No update needed
[2026-06-13 12:17:13,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:13,407.407 INFO    ] 200
[2026-06-13 12:17:13,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:13,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:13,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:17:13,474.474 INFO    ] No camera update needed
[2026-06-13 12:17:13,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:13,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:13,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:13,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:17:15,522.522 INFO    ] ================================================
[2026-06-13 12:17:15,537.537 INFO    ] Launching Daemon at Sat Jun 13 12:17:15 IST 2026
[2026-06-13 12:17:15,548.548 INFO    ] ================================================
[2026-06-13 12:17:15,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:17:15
[2026-06-13 12:17:16,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:17:16,324.324 INFO    ] Initializing speech engine...
[2026-06-13 12:17:16,328.328 INFO    ] 2026-06-13 12:17:16
[2026-06-13 12:17:16,525.525 INFO    ] 2026-06-13 12:17:16
[2026-06-13 12:17:16,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:17:16,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:17:16,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:17:16,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:17:17,003.003 INFO    ] time= 13/06/2026 12:17:16
[2026-06-13 12:17:17,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:17:17,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:17:17,121.121 INFO    ] No existing commands found in stream
[2026-06-13 12:17:22,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:17:22,133.133 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 12:17:24,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:17:24,128.128 INFO    ] Checking for system updates...
[2026-06-13 12:17:24,149.149 INFO    ] 200
[2026-06-13 12:17:24,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:24,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:24,182.182 INFO    ] No update needed
[2026-06-13 12:17:24,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:24,203.203 INFO    ] 200
[2026-06-13 12:17:24,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:24,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:24,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:24,270.270 INFO    ] No camera update needed
[2026-06-13 12:17:24,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:24,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:24,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:24,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:17:26,321.321 INFO    ] ================================================
[2026-06-13 12:17:26,341.341 INFO    ] Launching Daemon at Sat Jun 13 12:17:26 IST 2026
[2026-06-13 12:17:26,352.352 INFO    ] ================================================
[2026-06-13 12:17:26,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:17:26
[2026-06-13 12:17:26,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:17:27,138.138 INFO    ] Initializing speech engine...
[2026-06-13 12:17:27,152.152 INFO    ] 2026-06-13 12:17:27
[2026-06-13 12:17:27,334.334 INFO    ] 2026-06-13 12:17:27
[2026-06-13 12:17:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:17:27,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:17:27,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:17:27,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:17:27,625.625 INFO    ] time= 13/06/2026 12:17:27
[2026-06-13 12:17:27,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:17:27,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:17:27,715.715 INFO    ] No existing commands found in stream
[2026-06-13 12:17:32,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:17:32,752.752 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 12:17:34,603.603 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 12:17:34,616.616 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 12:17:34,621.621 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 12:17:34,626.626 INFO    ] None
[2026-06-13 12:17:34,627.627 INFO    ] Checking for system updates...
[2026-06-13 12:17:34,651.651 INFO    ] 200
[2026-06-13 12:17:34,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:34,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:34,684.684 INFO    ] No update needed
[2026-06-13 12:17:34,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:34,707.707 INFO    ] 200
[2026-06-13 12:17:34,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:34,734.734 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:35,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:35,877.877 INFO    ] No camera update needed
[2026-06-13 12:17:35,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:35,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:35,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:35,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:17:37,932.932 INFO    ] ================================================
[2026-06-13 12:17:37,947.947 INFO    ] Launching Daemon at Sat Jun 13 12:17:37 IST 2026
[2026-06-13 12:17:37,958.958 INFO    ] ================================================
[2026-06-13 12:17:38,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:17:38
[2026-06-13 12:17:38,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:17:38,745.745 INFO    ] Initializing speech engine...
[2026-06-13 12:17:38,753.753 INFO    ] 2026-06-13 12:17:38
[2026-06-13 12:17:38,972.972 INFO    ] 2026-06-13 12:17:38
[2026-06-13 12:17:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:17:39,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:17:39,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:17:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:17:39,378.378 INFO    ] time= 13/06/2026 12:17:39
[2026-06-13 12:17:39,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:17:39,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:17:39,535.535 INFO    ] No existing commands found in stream
[2026-06-13 12:17:44,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:17:44,546.546 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 12:17:48,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:17:48,416.416 INFO    ] Checking for system updates...
[2026-06-13 12:17:48,436.436 INFO    ] 200
[2026-06-13 12:17:48,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:48,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:48,470.470 INFO    ] No update needed
[2026-06-13 12:17:48,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:48,491.491 INFO    ] 200
[2026-06-13 12:17:48,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:48,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:48,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:48,550.550 INFO    ] No camera update needed
[2026-06-13 12:17:48,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:48,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:48,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:48,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:17:50,598.598 INFO    ] ================================================
[2026-06-13 12:17:50,613.613 INFO    ] Launching Daemon at Sat Jun 13 12:17:50 IST 2026
[2026-06-13 12:17:50,624.624 INFO    ] ================================================
[2026-06-13 12:17:50,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:17:50
[2026-06-13 12:17:51,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:17:51,403.403 INFO    ] Initializing speech engine...
[2026-06-13 12:17:51,413.413 INFO    ] 2026-06-13 12:17:51
[2026-06-13 12:17:51,620.620 INFO    ] 2026-06-13 12:17:51
[2026-06-13 12:17:51,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:17:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:17:51,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:17:51,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:17:52,020.020 INFO    ] time= 13/06/2026 12:17:51
[2026-06-13 12:17:52,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:17:52,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:17:52,135.135 INFO    ] No existing commands found in stream
[2026-06-13 12:17:57,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:17:57,148.148 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 12:17:59,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:17:59,394.394 INFO    ] Checking for system updates...
[2026-06-13 12:17:59,415.415 INFO    ] 200
[2026-06-13 12:17:59,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:59,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:17:59,451.451 INFO    ] No update needed
[2026-06-13 12:17:59,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 12:17:59,471.471 INFO    ] 200
[2026-06-13 12:17:59,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:17:59,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:17:59,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:17:59,537.537 INFO    ] No camera update needed
[2026-06-13 12:17:59,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:17:59,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:17:59,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:17:59,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:18:01,579.579 INFO    ] ================================================
[2026-06-13 12:18:01,593.593 INFO    ] Launching Daemon at Sat Jun 13 12:18:01 IST 2026
[2026-06-13 12:18:01,603.603 INFO    ] ================================================
[2026-06-13 12:18:02,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:18:02
[2026-06-13 12:18:02,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:18:02,530.530 INFO    ] Initializing speech engine...
[2026-06-13 12:18:02,535.535 INFO    ] 2026-06-13 12:18:02
[2026-06-13 12:18:02,738.738 INFO    ] 2026-06-13 12:18:02
[2026-06-13 12:18:02,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:18:02,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:18:02,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:18:03,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:18:03,084.084 INFO    ] time= 13/06/2026 12:18:03
[2026-06-13 12:18:03,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:18:03,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:18:03,252.252 INFO    ] No existing commands found in stream
[2026-06-13 12:18:08,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:18:08,265.265 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 12:18:10,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:18:10,075.075 INFO    ] Checking for system updates...
[2026-06-13 12:18:10,096.096 INFO    ] 200
[2026-06-13 12:18:10,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:10,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:18:10,130.130 INFO    ] No update needed
[2026-06-13 12:18:10,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 12:18:10,153.153 INFO    ] 200
[2026-06-13 12:18:10,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:10,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:18:10,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:18:10,227.227 INFO    ] No camera update needed
[2026-06-13 12:18:10,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:18:10,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:18:10,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:18:10,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:18:12,276.276 INFO    ] ================================================
[2026-06-13 12:18:12,291.291 INFO    ] Launching Daemon at Sat Jun 13 12:18:12 IST 2026
[2026-06-13 12:18:12,303.303 INFO    ] ================================================
[2026-06-13 12:18:12,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:18:12
[2026-06-13 12:18:12,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:18:13,077.077 INFO    ] Initializing speech engine...
[2026-06-13 12:18:13,090.090 INFO    ] 2026-06-13 12:18:13
[2026-06-13 12:18:13,300.300 INFO    ] 2026-06-13 12:18:13
[2026-06-13 12:18:13,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:18:13,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:18:13,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:18:13,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:18:13,713.713 INFO    ] time= 13/06/2026 12:18:13
[2026-06-13 12:18:13,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:18:13,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:18:13,822.822 INFO    ] No existing commands found in stream
[2026-06-13 12:18:18,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:18:18,838.838 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 12:18:22,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:18:22,077.077 INFO    ] Checking for system updates...
[2026-06-13 12:18:22,098.098 INFO    ] 200
[2026-06-13 12:18:22,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:22,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:18:22,131.131 INFO    ] No update needed
[2026-06-13 12:18:22,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 12:18:22,155.155 INFO    ] 200
[2026-06-13 12:18:22,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:22,181.181 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:18:22,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:18:22,218.218 INFO    ] No camera update needed
[2026-06-13 12:18:22,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:18:22,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:18:22,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:18:22,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:18:24,267.267 INFO    ] ================================================
[2026-06-13 12:18:24,283.283 INFO    ] Launching Daemon at Sat Jun 13 12:18:24 IST 2026
[2026-06-13 12:18:24,294.294 INFO    ] ================================================
[2026-06-13 12:18:24,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:18:24
[2026-06-13 12:18:24,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:18:25,085.085 INFO    ] Initializing speech engine...
[2026-06-13 12:18:25,096.096 INFO    ] 2026-06-13 12:18:25
[2026-06-13 12:18:25,299.299 INFO    ] 2026-06-13 12:18:25
[2026-06-13 12:18:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:18:25,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:18:25,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:18:25,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:18:25,709.709 INFO    ] time= 13/06/2026 12:18:25
[2026-06-13 12:18:25,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:18:25,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:18:25,811.811 INFO    ] No existing commands found in stream
[2026-06-13 12:18:30,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:18:30,824.824 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 12:18:33,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:18:33,812.812 INFO    ] Checking for system updates...
[2026-06-13 12:18:33,834.834 INFO    ] 200
[2026-06-13 12:18:33,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:33,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:18:33,868.868 INFO    ] No update needed
[2026-06-13 12:18:33,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 12:18:33,889.889 INFO    ] 200
[2026-06-13 12:18:33,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:33,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:18:33,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:18:33,952.952 INFO    ] No camera update needed
[2026-06-13 12:18:33,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:18:33,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:18:33,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:18:33,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:18:36,000.000 INFO    ] ================================================
[2026-06-13 12:18:36,016.016 INFO    ] Launching Daemon at Sat Jun 13 12:18:36 IST 2026
[2026-06-13 12:18:36,028.028 INFO    ] ================================================
[2026-06-13 12:18:36,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:18:36
[2026-06-13 12:18:36,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:18:36,908.908 INFO    ] Initializing speech engine...
[2026-06-13 12:18:36,912.912 INFO    ] 2026-06-13 12:18:36
[2026-06-13 12:18:37,119.119 INFO    ] 2026-06-13 12:18:37
[2026-06-13 12:18:37,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:18:37,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:18:37,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:18:37,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:18:37,532.532 INFO    ] time= 13/06/2026 12:18:37
[2026-06-13 12:18:37,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:18:37,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:18:37,638.638 INFO    ] No existing commands found in stream
[2026-06-13 12:18:42,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:18:42,656.656 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 12:18:43,644.644 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 12:18:43,672.672 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 12:18:43,681.681 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 12:18:43,691.691 INFO    ] None
[2026-06-13 12:18:43,694.694 INFO    ] Checking for system updates...
[2026-06-13 12:18:43,737.737 INFO    ] 200
[2026-06-13 12:18:43,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:43,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:18:43,774.774 INFO    ] No update needed
[2026-06-13 12:18:43,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 12:18:43,797.797 INFO    ] 200
[2026-06-13 12:18:43,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:18:43,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:18:49,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:18:49,667.667 INFO    ] No camera update needed
[2026-06-13 12:18:49,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:18:49,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:18:49,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:18:49,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:18:51,733.733 INFO    ] ================================================
[2026-06-13 12:18:51,749.749 INFO    ] Launching Daemon at Sat Jun 13 12:18:51 IST 2026
[2026-06-13 12:18:51,760.760 INFO    ] ================================================
[2026-06-13 12:18:52,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:18:52
[2026-06-13 12:18:52,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:18:52,560.560 INFO    ] Initializing speech engine...
[2026-06-13 12:18:52,565.565 INFO    ] 2026-06-13 12:18:52
[2026-06-13 12:18:52,795.795 INFO    ] 2026-06-13 12:18:52
[2026-06-13 12:18:52,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:18:52,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:18:53,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:18:53,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:18:53,231.231 INFO    ] time= 13/06/2026 12:18:53
[2026-06-13 12:18:53,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:18:53,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:18:53,353.353 INFO    ] No existing commands found in stream
[2026-06-13 12:18:58,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:18:58,367.367 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 12:19:00,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:19:00,841.841 INFO    ] Checking for system updates...
[2026-06-13 12:19:00,862.862 INFO    ] 200
[2026-06-13 12:19:00,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:00,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:00,898.898 INFO    ] No update needed
[2026-06-13 12:19:00,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:00,920.920 INFO    ] 200
[2026-06-13 12:19:00,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:00,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:00,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:00,992.992 INFO    ] No camera update needed
[2026-06-13 12:19:00,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:00,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:00,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:01,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:03,034.034 INFO    ] ================================================
[2026-06-13 12:19:03,050.050 INFO    ] Launching Daemon at Sat Jun 13 12:19:03 IST 2026
[2026-06-13 12:19:03,061.061 INFO    ] ================================================
[2026-06-13 12:19:03,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:03
[2026-06-13 12:19:03,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:03,842.842 INFO    ] Initializing speech engine...
[2026-06-13 12:19:03,850.850 INFO    ] 2026-06-13 12:19:03
[2026-06-13 12:19:04,073.073 INFO    ] 2026-06-13 12:19:04
[2026-06-13 12:19:04,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:04,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:04,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:04,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:04,484.484 INFO    ] time= 13/06/2026 12:19:04
[2026-06-13 12:19:04,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:04,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:04,624.624 INFO    ] No existing commands found in stream
[2026-06-13 12:19:09,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:19:09,638.638 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 12:19:10,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:19:10,354.354 INFO    ] Checking for system updates...
[2026-06-13 12:19:10,375.375 INFO    ] 200
[2026-06-13 12:19:10,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:10,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:10,410.410 INFO    ] No update needed
[2026-06-13 12:19:10,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:10,431.431 INFO    ] 200
[2026-06-13 12:19:10,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:10,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:10,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:10,494.494 INFO    ] No camera update needed
[2026-06-13 12:19:10,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:10,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:10,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:10,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:12,543.543 INFO    ] ================================================
[2026-06-13 12:19:12,559.559 INFO    ] Launching Daemon at Sat Jun 13 12:19:12 IST 2026
[2026-06-13 12:19:12,569.569 INFO    ] ================================================
[2026-06-13 12:19:13,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:13
[2026-06-13 12:19:13,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:14,184.184 INFO    ] Initializing speech engine...
[2026-06-13 12:19:14,196.196 INFO    ] 2026-06-13 12:19:14
[2026-06-13 12:19:14,480.480 INFO    ] 2026-06-13 12:19:14
[2026-06-13 12:19:14,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:14,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:14,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:14,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:14,917.917 INFO    ] time= 13/06/2026 12:19:14
[2026-06-13 12:19:14,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:14,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:15,032.032 INFO    ] No existing commands found in stream
[2026-06-13 12:19:20,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:19:20,063.063 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 12:19:23,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:19:23,792.792 INFO    ] Checking for system updates...
[2026-06-13 12:19:23,812.812 INFO    ] 200
[2026-06-13 12:19:23,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:23,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:23,849.849 INFO    ] No update needed
[2026-06-13 12:19:23,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:23,870.870 INFO    ] 200
[2026-06-13 12:19:23,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:23,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:23,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:23,933.933 INFO    ] No camera update needed
[2026-06-13 12:19:23,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:23,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:23,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:23,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:25,979.979 INFO    ] ================================================
[2026-06-13 12:19:26,995.995 INFO    ] Launching Daemon at Sat Jun 13 12:19:25 IST 2026
[2026-06-13 12:19:26,007.007 INFO    ] ================================================
[2026-06-13 12:19:26,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:26
[2026-06-13 12:19:26,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:26,806.806 INFO    ] Initializing speech engine...
[2026-06-13 12:19:26,811.811 INFO    ] 2026-06-13 12:19:26
[2026-06-13 12:19:27,013.013 INFO    ] 2026-06-13 12:19:26
[2026-06-13 12:19:27,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:27,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:27,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:27,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:27,428.428 INFO    ] time= 13/06/2026 12:19:27
[2026-06-13 12:19:27,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:27,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:27,528.528 INFO    ] No existing commands found in stream
[2026-06-13 12:19:32,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:19:32,545.545 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 12:19:35,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:19:35,718.718 INFO    ] Checking for system updates...
[2026-06-13 12:19:35,739.739 INFO    ] 200
[2026-06-13 12:19:35,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:35,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:19:35,773.773 INFO    ] No update needed
[2026-06-13 12:19:35,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:35,796.796 INFO    ] 200
[2026-06-13 12:19:35,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:35,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:35,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:19:35,872.872 INFO    ] No camera update needed
[2026-06-13 12:19:35,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:35,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:35,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:35,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:37,919.919 INFO    ] ================================================
[2026-06-13 12:19:37,934.934 INFO    ] Launching Daemon at Sat Jun 13 12:19:37 IST 2026
[2026-06-13 12:19:37,946.946 INFO    ] ================================================
[2026-06-13 12:19:38,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:38
[2026-06-13 12:19:38,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:38,753.753 INFO    ] Initializing speech engine...
[2026-06-13 12:19:38,757.757 INFO    ] 2026-06-13 12:19:38
[2026-06-13 12:19:38,975.975 INFO    ] 2026-06-13 12:19:38
[2026-06-13 12:19:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:39,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:39,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:39,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:39,394.394 INFO    ] time= 13/06/2026 12:19:39
[2026-06-13 12:19:39,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:39,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:39,495.495 INFO    ] No existing commands found in stream
[2026-06-13 12:19:44,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:19:44,508.508 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 12:19:46,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:19:46,419.419 INFO    ] Checking for system updates...
[2026-06-13 12:19:46,439.439 INFO    ] 200
[2026-06-13 12:19:46,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:46,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:19:46,474.474 INFO    ] No update needed
[2026-06-13 12:19:46,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:46,496.496 INFO    ] 200
[2026-06-13 12:19:46,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:46,521.521 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:46,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:19:46,559.559 INFO    ] No camera update needed
[2026-06-13 12:19:46,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:46,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:46,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:46,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:48,606.606 INFO    ] ================================================
[2026-06-13 12:19:48,622.622 INFO    ] Launching Daemon at Sat Jun 13 12:19:48 IST 2026
[2026-06-13 12:19:48,633.633 INFO    ] ================================================
[2026-06-13 12:19:48,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:48
[2026-06-13 12:19:49,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:49,438.438 INFO    ] Initializing speech engine...
[2026-06-13 12:19:49,443.443 INFO    ] 2026-06-13 12:19:49
[2026-06-13 12:19:49,672.672 INFO    ] 2026-06-13 12:19:49
[2026-06-13 12:19:49,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:49,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:49,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:50,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:50,091.091 INFO    ] time= 13/06/2026 12:19:50
[2026-06-13 12:19:50,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:50,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:50,220.220 INFO    ] No existing commands found in stream
[2026-06-13 12:19:55,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:19:55,234.234 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 12:19:55,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:19:55,936.936 INFO    ] Checking for system updates...
[2026-06-13 12:19:55,957.957 INFO    ] 200
[2026-06-13 12:19:55,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:55,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:19:55,990.990 INFO    ] No update needed
[2026-06-13 12:19:55,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 12:19:56,011.011 INFO    ] 200
[2026-06-13 12:19:56,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:19:56,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:19:56,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:19:56,074.074 INFO    ] No camera update needed
[2026-06-13 12:19:56,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:19:56,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:19:56,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:19:56,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:19:58,121.121 INFO    ] ================================================
[2026-06-13 12:19:58,136.136 INFO    ] Launching Daemon at Sat Jun 13 12:19:58 IST 2026
[2026-06-13 12:19:58,146.146 INFO    ] ================================================
[2026-06-13 12:19:58,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:19:58
[2026-06-13 12:19:58,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:19:58,933.933 INFO    ] Initializing speech engine...
[2026-06-13 12:19:58,938.938 INFO    ] 2026-06-13 12:19:58
[2026-06-13 12:19:59,165.165 INFO    ] 2026-06-13 12:19:59
[2026-06-13 12:19:59,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:19:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:19:59,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:19:59,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:19:59,587.587 INFO    ] time= 13/06/2026 12:19:59
[2026-06-13 12:19:59,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:19:59,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:19:59,717.717 INFO    ] No existing commands found in stream
[2026-06-13 12:20:04,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:20:04,731.731 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 12:20:08,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:20:08,512.512 INFO    ] Checking for system updates...
[2026-06-13 12:20:08,549.549 INFO    ] 200
[2026-06-13 12:20:08,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:08,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:20:08,614.614 INFO    ] No update needed
[2026-06-13 12:20:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 12:20:08,652.652 INFO    ] 200
[2026-06-13 12:20:08,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:08,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:20:08,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:20:08,703.703 INFO    ] No camera update needed
[2026-06-13 12:20:08,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:20:08,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:20:08,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:20:08,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:20:10,751.751 INFO    ] ================================================
[2026-06-13 12:20:10,767.767 INFO    ] Launching Daemon at Sat Jun 13 12:20:10 IST 2026
[2026-06-13 12:20:10,778.778 INFO    ] ================================================
[2026-06-13 12:20:11,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:20:11
[2026-06-13 12:20:11,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:20:11,648.648 INFO    ] Initializing speech engine...
[2026-06-13 12:20:11,653.653 INFO    ] 2026-06-13 12:20:11
[2026-06-13 12:20:11,861.861 INFO    ] 2026-06-13 12:20:11
[2026-06-13 12:20:11,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:20:12,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:20:12,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:20:12,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:20:12,280.280 INFO    ] time= 13/06/2026 12:20:12
[2026-06-13 12:20:12,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:20:12,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:20:12,376.376 INFO    ] No existing commands found in stream
[2026-06-13 12:20:17,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:20:17,391.391 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 12:20:19,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:20:19,879.879 INFO    ] Checking for system updates...
[2026-06-13 12:20:19,900.900 INFO    ] 200
[2026-06-13 12:20:19,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:19,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:20:19,935.935 INFO    ] No update needed
[2026-06-13 12:20:19,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 12:20:19,959.959 INFO    ] 200
[2026-06-13 12:20:19,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:19,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:20:20,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:20:20,014.014 INFO    ] No camera update needed
[2026-06-13 12:20:20,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:20:20,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:20:20,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:20:20,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:20:22,062.062 INFO    ] ================================================
[2026-06-13 12:20:22,077.077 INFO    ] Launching Daemon at Sat Jun 13 12:20:22 IST 2026
[2026-06-13 12:20:22,088.088 INFO    ] ================================================
[2026-06-13 12:20:22,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:20:22
[2026-06-13 12:20:22,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:20:22,943.943 INFO    ] Initializing speech engine...
[2026-06-13 12:20:22,948.948 INFO    ] 2026-06-13 12:20:22
[2026-06-13 12:20:23,155.155 INFO    ] 2026-06-13 12:20:23
[2026-06-13 12:20:23,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:20:23,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:20:23,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:20:23,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:20:23,570.570 INFO    ] time= 13/06/2026 12:20:23
[2026-06-13 12:20:23,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:20:23,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:20:23,677.677 INFO    ] No existing commands found in stream
[2026-06-13 12:20:28,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:20:28,690.690 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 12:20:32,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:20:32,548.548 INFO    ] Checking for system updates...
[2026-06-13 12:20:32,570.570 INFO    ] 200
[2026-06-13 12:20:32,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:32,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:32,603.603 INFO    ] No update needed
[2026-06-13 12:20:32,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 12:20:32,626.626 INFO    ] 200
[2026-06-13 12:20:32,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:32,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:20:32,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:32,681.681 INFO    ] No camera update needed
[2026-06-13 12:20:32,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:20:32,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:20:32,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:20:32,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:20:34,732.732 INFO    ] ================================================
[2026-06-13 12:20:34,747.747 INFO    ] Launching Daemon at Sat Jun 13 12:20:34 IST 2026
[2026-06-13 12:20:34,758.758 INFO    ] ================================================
[2026-06-13 12:20:35,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:20:35
[2026-06-13 12:20:35,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:20:35,560.560 INFO    ] Initializing speech engine...
[2026-06-13 12:20:35,565.565 INFO    ] 2026-06-13 12:20:35
[2026-06-13 12:20:35,770.770 INFO    ] 2026-06-13 12:20:35
[2026-06-13 12:20:35,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:20:36,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:20:36,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:20:36,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:20:36,164.164 INFO    ] time= 13/06/2026 12:20:36
[2026-06-13 12:20:36,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:20:36,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:20:36,295.295 INFO    ] No existing commands found in stream
[2026-06-13 12:20:41,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:20:41,311.311 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 12:20:45,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:20:45,602.602 INFO    ] Checking for system updates...
[2026-06-13 12:20:45,624.624 INFO    ] 200
[2026-06-13 12:20:45,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:45,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:45,660.660 INFO    ] No update needed
[2026-06-13 12:20:45,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 12:20:45,680.680 INFO    ] 200
[2026-06-13 12:20:45,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:45,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:20:45,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:45,755.755 INFO    ] No camera update needed
[2026-06-13 12:20:45,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:20:45,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:20:45,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:20:45,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:20:47,802.802 INFO    ] ================================================
[2026-06-13 12:20:47,817.817 INFO    ] Launching Daemon at Sat Jun 13 12:20:47 IST 2026
[2026-06-13 12:20:47,827.827 INFO    ] ================================================
[2026-06-13 12:20:48,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:20:48
[2026-06-13 12:20:48,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:20:48,635.635 INFO    ] Initializing speech engine...
[2026-06-13 12:20:48,645.645 INFO    ] 2026-06-13 12:20:48
[2026-06-13 12:20:48,849.849 INFO    ] 2026-06-13 12:20:48
[2026-06-13 12:20:48,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:20:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:20:49,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:20:49,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:20:49,249.249 INFO    ] time= 13/06/2026 12:20:49
[2026-06-13 12:20:49,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:20:49,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:20:49,362.362 INFO    ] No existing commands found in stream
[2026-06-13 12:20:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:20:54,375.375 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 12:20:55,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:20:55,057.057 INFO    ] Checking for system updates...
[2026-06-13 12:20:55,079.079 INFO    ] 200
[2026-06-13 12:20:55,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:55,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:55,115.115 INFO    ] No update needed
[2026-06-13 12:20:55,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 12:20:55,136.136 INFO    ] 200
[2026-06-13 12:20:55,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:20:55,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:20:55,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:20:55,304.304 INFO    ] No camera update needed
[2026-06-13 12:20:55,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:20:55,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:20:55,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:20:55,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:20:57,353.353 INFO    ] ================================================
[2026-06-13 12:20:57,368.368 INFO    ] Launching Daemon at Sat Jun 13 12:20:57 IST 2026
[2026-06-13 12:20:57,379.379 INFO    ] ================================================
[2026-06-13 12:20:57,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:20:57
[2026-06-13 12:20:58,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:20:58,206.206 INFO    ] Initializing speech engine...
[2026-06-13 12:20:58,211.211 INFO    ] 2026-06-13 12:20:58
[2026-06-13 12:20:58,418.418 INFO    ] 2026-06-13 12:20:58
[2026-06-13 12:20:58,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:20:58,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:20:58,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:20:58,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:20:58,864.864 INFO    ] time= 13/06/2026 12:20:58
[2026-06-13 12:20:58,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:20:58,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:20:59,006.006 INFO    ] No existing commands found in stream
[2026-06-13 12:21:04,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:21:04,019.019 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 12:21:05,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:21:05,483.483 INFO    ] Checking for system updates...
[2026-06-13 12:21:05,507.507 INFO    ] 200
[2026-06-13 12:21:05,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:05,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:05,552.552 INFO    ] No update needed
[2026-06-13 12:21:05,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 12:21:05,577.577 INFO    ] 200
[2026-06-13 12:21:05,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:05,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:21:05,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:05,647.647 INFO    ] No camera update needed
[2026-06-13 12:21:05,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:21:05,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:21:05,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:21:05,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:21:07,694.694 INFO    ] ================================================
[2026-06-13 12:21:07,709.709 INFO    ] Launching Daemon at Sat Jun 13 12:21:07 IST 2026
[2026-06-13 12:21:07,719.719 INFO    ] ================================================
[2026-06-13 12:21:08,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:21:08
[2026-06-13 12:21:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:21:08,545.545 INFO    ] Initializing speech engine...
[2026-06-13 12:21:08,550.550 INFO    ] 2026-06-13 12:21:08
[2026-06-13 12:21:08,764.764 INFO    ] 2026-06-13 12:21:08
[2026-06-13 12:21:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:21:08,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:21:08,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:21:09,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:21:09,209.209 INFO    ] time= 13/06/2026 12:21:09
[2026-06-13 12:21:09,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:21:09,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:21:09,314.314 INFO    ] No existing commands found in stream
[2026-06-13 12:21:14,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:21:14,323.323 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 12:21:18,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:21:18,304.304 INFO    ] Checking for system updates...
[2026-06-13 12:21:18,325.325 INFO    ] 200
[2026-06-13 12:21:18,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:18,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:18,361.361 INFO    ] No update needed
[2026-06-13 12:21:18,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 12:21:18,382.382 INFO    ] 200
[2026-06-13 12:21:18,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:18,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:21:18,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:18,447.447 INFO    ] No camera update needed
[2026-06-13 12:21:18,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:21:18,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:21:18,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:21:18,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:21:20,493.493 INFO    ] ================================================
[2026-06-13 12:21:20,508.508 INFO    ] Launching Daemon at Sat Jun 13 12:21:20 IST 2026
[2026-06-13 12:21:20,518.518 INFO    ] ================================================
[2026-06-13 12:21:20,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:21:20
[2026-06-13 12:21:21,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:21:21,298.298 INFO    ] Initializing speech engine...
[2026-06-13 12:21:21,303.303 INFO    ] 2026-06-13 12:21:21
[2026-06-13 12:21:21,517.517 INFO    ] 2026-06-13 12:21:21
[2026-06-13 12:21:21,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:21:21,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:21:21,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:21:21,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:21:21,925.925 INFO    ] time= 13/06/2026 12:21:21
[2026-06-13 12:21:21,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:21:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:21:22,030.030 INFO    ] No existing commands found in stream
[2026-06-13 12:21:27,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:21:27,043.043 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 12:21:28,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:21:28,514.514 INFO    ] Checking for system updates...
[2026-06-13 12:21:28,536.536 INFO    ] 200
[2026-06-13 12:21:28,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:28,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:21:28,571.571 INFO    ] No update needed
[2026-06-13 12:21:28,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 12:21:28,592.592 INFO    ] 200
[2026-06-13 12:21:28,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:28,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:21:28,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:21:28,654.654 INFO    ] No camera update needed
[2026-06-13 12:21:28,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:21:28,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:21:28,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:21:28,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:21:30,702.702 INFO    ] ================================================
[2026-06-13 12:21:30,717.717 INFO    ] Launching Daemon at Sat Jun 13 12:21:30 IST 2026
[2026-06-13 12:21:30,727.727 INFO    ] ================================================
[2026-06-13 12:21:31,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:21:31
[2026-06-13 12:21:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:21:31,539.539 INFO    ] Initializing speech engine...
[2026-06-13 12:21:31,552.552 INFO    ] 2026-06-13 12:21:31
[2026-06-13 12:21:31,763.763 INFO    ] 2026-06-13 12:21:31
[2026-06-13 12:21:31,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:21:31,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:21:31,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:21:32,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:21:32,093.093 INFO    ] time= 13/06/2026 12:21:32
[2026-06-13 12:21:32,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:21:32,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:21:32,283.283 INFO    ] No existing commands found in stream
[2026-06-13 12:21:37,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:21:37,298.298 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 12:21:40,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:21:40,804.804 INFO    ] Checking for system updates...
[2026-06-13 12:21:40,825.825 INFO    ] 200
[2026-06-13 12:21:40,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:40,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:21:40,860.860 INFO    ] No update needed
[2026-06-13 12:21:40,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 12:21:40,881.881 INFO    ] 200
[2026-06-13 12:21:40,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:40,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:21:40,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:21:40,946.946 INFO    ] No camera update needed
[2026-06-13 12:21:40,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:21:40,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:21:40,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:21:40,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:21:42,993.993 INFO    ] ================================================
[2026-06-13 12:21:43,009.009 INFO    ] Launching Daemon at Sat Jun 13 12:21:43 IST 2026
[2026-06-13 12:21:43,020.020 INFO    ] ================================================
[2026-06-13 12:21:43,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:21:43
[2026-06-13 12:21:44,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:21:44,284.284 INFO    ] Initializing speech engine...
[2026-06-13 12:21:44,292.292 INFO    ] 2026-06-13 12:21:44
[2026-06-13 12:21:44,581.581 INFO    ] 2026-06-13 12:21:44
[2026-06-13 12:21:44,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:21:44,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:21:44,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:21:44,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:21:44,951.951 INFO    ] time= 13/06/2026 12:21:44
[2026-06-13 12:21:44,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:21:44,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:21:45,074.074 INFO    ] No existing commands found in stream
[2026-06-13 12:21:50,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:21:50,089.089 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 12:21:54,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:21:54,183.183 INFO    ] Checking for system updates...
[2026-06-13 12:21:54,205.205 INFO    ] 200
[2026-06-13 12:21:54,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:54,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:54,241.241 INFO    ] No update needed
[2026-06-13 12:21:54,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 12:21:54,263.263 INFO    ] 200
[2026-06-13 12:21:54,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:21:54,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:21:54,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:21:54,337.337 INFO    ] No camera update needed
[2026-06-13 12:21:54,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:21:54,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:21:54,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:21:54,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:21:56,393.393 INFO    ] ================================================
[2026-06-13 12:21:56,408.408 INFO    ] Launching Daemon at Sat Jun 13 12:21:56 IST 2026
[2026-06-13 12:21:56,419.419 INFO    ] ================================================
[2026-06-13 12:21:56,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:21:56
[2026-06-13 12:21:57,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:21:57,608.608 INFO    ] Initializing speech engine...
[2026-06-13 12:21:57,617.617 INFO    ] 2026-06-13 12:21:57
[2026-06-13 12:21:57,833.833 INFO    ] 2026-06-13 12:21:57
[2026-06-13 12:21:57,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:21:58,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:21:58,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:21:58,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:21:58,129.129 INFO    ] time= 13/06/2026 12:21:58
[2026-06-13 12:21:58,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:21:58,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:21:58,213.213 INFO    ] No existing commands found in stream
[2026-06-13 12:22:03,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:22:03,248.248 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 12:22:07,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:22:07,435.435 INFO    ] Checking for system updates...
[2026-06-13 12:22:07,455.455 INFO    ] 200
[2026-06-13 12:22:07,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:07,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:07,490.490 INFO    ] No update needed
[2026-06-13 12:22:07,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 12:22:07,513.513 INFO    ] 200
[2026-06-13 12:22:07,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:07,538.538 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:22:07,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:22:07,575.575 INFO    ] No camera update needed
[2026-06-13 12:22:07,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:22:07,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:22:07,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:22:07,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:22:09,622.622 INFO    ] ================================================
[2026-06-13 12:22:09,637.637 INFO    ] Launching Daemon at Sat Jun 13 12:22:09 IST 2026
[2026-06-13 12:22:09,647.647 INFO    ] ================================================
[2026-06-13 12:22:10,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:22:10
[2026-06-13 12:22:10,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:22:10,471.471 INFO    ] Initializing speech engine...
[2026-06-13 12:22:10,479.479 INFO    ] 2026-06-13 12:22:10
[2026-06-13 12:22:10,700.700 INFO    ] 2026-06-13 12:22:10
[2026-06-13 12:22:10,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:22:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:22:10,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:22:11,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:22:11,095.095 INFO    ] time= 13/06/2026 12:22:11
[2026-06-13 12:22:11,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:22:11,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:22:11,298.298 INFO    ] No existing commands found in stream
[2026-06-13 12:22:16,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:22:16,331.331 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 12:22:20,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:22:20,253.253 INFO    ] Checking for system updates...
[2026-06-13 12:22:20,273.273 INFO    ] 200
[2026-06-13 12:22:20,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:20,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:20,306.306 INFO    ] No update needed
[2026-06-13 12:22:20,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 12:22:20,329.329 INFO    ] 200
[2026-06-13 12:22:20,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:20,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:22:20,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:20,393.393 INFO    ] No camera update needed
[2026-06-13 12:22:20,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:22:20,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:22:20,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:22:20,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:22:22,432.432 INFO    ] ================================================
[2026-06-13 12:22:22,440.440 INFO    ] Launching Daemon at Sat Jun 13 12:22:22 IST 2026
[2026-06-13 12:22:22,446.446 INFO    ] ================================================
[2026-06-13 12:22:22,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:22:22
[2026-06-13 12:22:23,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:22:23,309.309 INFO    ] Initializing speech engine...
[2026-06-13 12:22:23,315.315 INFO    ] 2026-06-13 12:22:23
[2026-06-13 12:22:23,522.522 INFO    ] 2026-06-13 12:22:23
[2026-06-13 12:22:23,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:22:23,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:22:23,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:22:23,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:22:23,922.922 INFO    ] time= 13/06/2026 12:22:23
[2026-06-13 12:22:23,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:22:23,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:22:24,043.043 INFO    ] No existing commands found in stream
[2026-06-13 12:22:29,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:22:29,055.055 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 12:22:33,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:22:33,387.387 INFO    ] Checking for system updates...
[2026-06-13 12:22:33,412.412 INFO    ] 200
[2026-06-13 12:22:33,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:33,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:33,455.455 INFO    ] No update needed
[2026-06-13 12:22:33,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 12:22:33,477.477 INFO    ] 200
[2026-06-13 12:22:33,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:33,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:22:33,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:33,549.549 INFO    ] No camera update needed
[2026-06-13 12:22:33,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:22:33,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:22:33,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:22:33,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:22:35,591.591 INFO    ] ================================================
[2026-06-13 12:22:35,606.606 INFO    ] Launching Daemon at Sat Jun 13 12:22:35 IST 2026
[2026-06-13 12:22:35,617.617 INFO    ] ================================================
[2026-06-13 12:22:35,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:22:35
[2026-06-13 12:22:36,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:22:36,408.408 INFO    ] Initializing speech engine...
[2026-06-13 12:22:36,417.417 INFO    ] 2026-06-13 12:22:36
[2026-06-13 12:22:36,635.635 INFO    ] 2026-06-13 12:22:36
[2026-06-13 12:22:36,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:22:36,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:22:36,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:22:37,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:22:37,059.059 INFO    ] time= 13/06/2026 12:22:37
[2026-06-13 12:22:37,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:22:37,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:22:37,182.182 INFO    ] No existing commands found in stream
[2026-06-13 12:22:42,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:22:42,196.196 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 12:22:44,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:22:44,245.245 INFO    ] Checking for system updates...
[2026-06-13 12:22:44,265.265 INFO    ] 200
[2026-06-13 12:22:44,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:44,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:44,299.299 INFO    ] No update needed
[2026-06-13 12:22:44,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 12:22:44,320.320 INFO    ] 200
[2026-06-13 12:22:44,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:44,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:22:44,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:44,388.388 INFO    ] No camera update needed
[2026-06-13 12:22:44,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:22:44,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:22:44,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:22:44,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:22:46,435.435 INFO    ] ================================================
[2026-06-13 12:22:46,452.452 INFO    ] Launching Daemon at Sat Jun 13 12:22:46 IST 2026
[2026-06-13 12:22:46,463.463 INFO    ] ================================================
[2026-06-13 12:22:46,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:22:46
[2026-06-13 12:22:47,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:22:47,325.325 INFO    ] Initializing speech engine...
[2026-06-13 12:22:47,330.330 INFO    ] 2026-06-13 12:22:47
[2026-06-13 12:22:47,538.538 INFO    ] 2026-06-13 12:22:47
[2026-06-13 12:22:47,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:22:47,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:22:47,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:22:47,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:22:47,955.955 INFO    ] time= 13/06/2026 12:22:47
[2026-06-13 12:22:47,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:22:47,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:22:48,052.052 INFO    ] No existing commands found in stream
[2026-06-13 12:22:53,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:22:53,069.069 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 12:22:57,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:22:57,089.089 INFO    ] Checking for system updates...
[2026-06-13 12:22:57,110.110 INFO    ] 200
[2026-06-13 12:22:57,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:57,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:57,144.144 INFO    ] No update needed
[2026-06-13 12:22:57,145.145 INFO    ] Checking for camera pi updates...
[2026-06-13 12:22:57,165.165 INFO    ] 200
[2026-06-13 12:22:57,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:22:57,190.190 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:22:57,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:22:57,330.330 INFO    ] No camera update needed
[2026-06-13 12:22:57,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:22:57,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:22:57,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:22:57,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:22:59,379.379 INFO    ] ================================================
[2026-06-13 12:22:59,395.395 INFO    ] Launching Daemon at Sat Jun 13 12:22:59 IST 2026
[2026-06-13 12:22:59,406.406 INFO    ] ================================================
[2026-06-13 12:22:59,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:22:59
[2026-06-13 12:23:00,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:00,173.173 INFO    ] Initializing speech engine...
[2026-06-13 12:23:00,176.176 INFO    ] 2026-06-13 12:23:00
[2026-06-13 12:23:00,391.391 INFO    ] 2026-06-13 12:23:00
[2026-06-13 12:23:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:00,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:00,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:00,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:00,801.801 INFO    ] time= 13/06/2026 12:23:00
[2026-06-13 12:23:00,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:00,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:00,905.905 INFO    ] No existing commands found in stream
[2026-06-13 12:23:05,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:23:05,917.917 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 12:23:09,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:23:09,549.549 INFO    ] Checking for system updates...
[2026-06-13 12:23:09,570.570 INFO    ] 200
[2026-06-13 12:23:09,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:09,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:09,602.602 INFO    ] No update needed
[2026-06-13 12:23:09,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 12:23:09,625.625 INFO    ] 200
[2026-06-13 12:23:09,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:09,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:23:09,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:09,698.698 INFO    ] No camera update needed
[2026-06-13 12:23:09,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:23:09,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:23:09,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:23:09,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:23:11,745.745 INFO    ] ================================================
[2026-06-13 12:23:11,761.761 INFO    ] Launching Daemon at Sat Jun 13 12:23:11 IST 2026
[2026-06-13 12:23:11,772.772 INFO    ] ================================================
[2026-06-13 12:23:12,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:23:12
[2026-06-13 12:23:12,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:12,570.570 INFO    ] Initializing speech engine...
[2026-06-13 12:23:12,579.579 INFO    ] 2026-06-13 12:23:12
[2026-06-13 12:23:12,795.795 INFO    ] 2026-06-13 12:23:12
[2026-06-13 12:23:12,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:12,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:12,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:13,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:13,184.184 INFO    ] time= 13/06/2026 12:23:13
[2026-06-13 12:23:13,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:13,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:13,366.366 INFO    ] No existing commands found in stream
[2026-06-13 12:23:18,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:23:18,392.392 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 12:23:20,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:23:20,124.124 INFO    ] Checking for system updates...
[2026-06-13 12:23:20,160.160 INFO    ] 200
[2026-06-13 12:23:20,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:20,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:20,220.220 INFO    ] No update needed
[2026-06-13 12:23:20,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 12:23:20,257.257 INFO    ] 200
[2026-06-13 12:23:20,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:20,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:23:20,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:20,334.334 INFO    ] No camera update needed
[2026-06-13 12:23:20,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:23:20,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:23:20,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:23:20,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:23:22,383.383 INFO    ] ================================================
[2026-06-13 12:23:22,399.399 INFO    ] Launching Daemon at Sat Jun 13 12:23:22 IST 2026
[2026-06-13 12:23:22,410.410 INFO    ] ================================================
[2026-06-13 12:23:22,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:23:22
[2026-06-13 12:23:23,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:23,201.201 INFO    ] Initializing speech engine...
[2026-06-13 12:23:23,206.206 INFO    ] 2026-06-13 12:23:23
[2026-06-13 12:23:23,411.411 INFO    ] 2026-06-13 12:23:23
[2026-06-13 12:23:23,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:23,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:23,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:23,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:23,815.815 INFO    ] time= 13/06/2026 12:23:23
[2026-06-13 12:23:23,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:23,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:23,932.932 INFO    ] No existing commands found in stream
[2026-06-13 12:23:28,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:23:28,941.941 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 12:23:31,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:23:31,873.873 INFO    ] Checking for system updates...
[2026-06-13 12:23:31,895.895 INFO    ] 200
[2026-06-13 12:23:31,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:33,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:23:33,262.262 INFO    ] No update needed
[2026-06-13 12:23:33,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 12:23:33,310.310 INFO    ] 200
[2026-06-13 12:23:33,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:33,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:23:33,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:33,378.378 INFO    ] No camera update needed
[2026-06-13 12:23:33,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:23:33,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:23:33,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:23:33,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:23:35,431.431 INFO    ] ================================================
[2026-06-13 12:23:35,448.448 INFO    ] Launching Daemon at Sat Jun 13 12:23:35 IST 2026
[2026-06-13 12:23:35,464.464 INFO    ] ================================================
[2026-06-13 12:23:35,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:23:35
[2026-06-13 12:23:36,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:36,266.266 INFO    ] Initializing speech engine...
[2026-06-13 12:23:36,281.281 INFO    ] 2026-06-13 12:23:36
[2026-06-13 12:23:36,529.529 INFO    ] 2026-06-13 12:23:36
[2026-06-13 12:23:36,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:36,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:36,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:36,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:36,947.947 INFO    ] time= 13/06/2026 12:23:36
[2026-06-13 12:23:36,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:37,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:37,076.076 INFO    ] No existing commands found in stream
[2026-06-13 12:23:42,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:23:42,090.090 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 12:23:45,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:23:45,244.244 INFO    ] Checking for system updates...
[2026-06-13 12:23:45,265.265 INFO    ] 200
[2026-06-13 12:23:45,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:45,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:23:45,298.298 INFO    ] No update needed
[2026-06-13 12:23:45,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 12:23:45,319.319 INFO    ] 200
[2026-06-13 12:23:45,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:45,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:23:45,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:45,392.392 INFO    ] No camera update needed
[2026-06-13 12:23:45,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:23:45,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:23:45,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:23:45,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:23:47,439.439 INFO    ] ================================================
[2026-06-13 12:23:47,454.454 INFO    ] Launching Daemon at Sat Jun 13 12:23:47 IST 2026
[2026-06-13 12:23:47,465.465 INFO    ] ================================================
[2026-06-13 12:23:47,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:23:47
[2026-06-13 12:23:48,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:48,253.253 INFO    ] Initializing speech engine...
[2026-06-13 12:23:48,266.266 INFO    ] 2026-06-13 12:23:48
[2026-06-13 12:23:48,483.483 INFO    ] 2026-06-13 12:23:48
[2026-06-13 12:23:48,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:48,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:48,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:48,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:48,891.891 INFO    ] time= 13/06/2026 12:23:48
[2026-06-13 12:23:48,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:48,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:49,031.031 INFO    ] No existing commands found in stream
[2026-06-13 12:23:54,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:23:54,044.044 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 12:23:55,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:23:55,379.379 INFO    ] Checking for system updates...
[2026-06-13 12:23:55,400.400 INFO    ] 200
[2026-06-13 12:23:55,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:55,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:55,432.432 INFO    ] No update needed
[2026-06-13 12:23:55,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 12:23:55,454.454 INFO    ] 200
[2026-06-13 12:23:55,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:23:55,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:23:55,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:23:55,521.521 INFO    ] No camera update needed
[2026-06-13 12:23:55,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:23:55,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:23:55,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:23:55,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:23:57,569.569 INFO    ] ================================================
[2026-06-13 12:23:57,584.584 INFO    ] Launching Daemon at Sat Jun 13 12:23:57 IST 2026
[2026-06-13 12:23:57,595.595 INFO    ] ================================================
[2026-06-13 12:23:57,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:23:57
[2026-06-13 12:23:58,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:23:58,407.407 INFO    ] Initializing speech engine...
[2026-06-13 12:23:58,413.413 INFO    ] 2026-06-13 12:23:58
[2026-06-13 12:23:58,614.614 INFO    ] 2026-06-13 12:23:58
[2026-06-13 12:23:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:23:58,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:23:58,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:23:58,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:23:59,021.021 INFO    ] time= 13/06/2026 12:23:58
[2026-06-13 12:23:59,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:23:59,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:23:59,120.120 INFO    ] No existing commands found in stream
[2026-06-13 12:24:04,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:24:04,131.131 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 12:24:08,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:24:08,157.157 INFO    ] Checking for system updates...
[2026-06-13 12:24:08,180.180 INFO    ] 200
[2026-06-13 12:24:08,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:08,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:08,221.221 INFO    ] No update needed
[2026-06-13 12:24:08,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 12:24:08,243.243 INFO    ] 200
[2026-06-13 12:24:08,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:08,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:24:08,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:08,308.308 INFO    ] No camera update needed
[2026-06-13 12:24:08,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:24:08,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:24:08,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:24:08,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:24:10,357.357 INFO    ] ================================================
[2026-06-13 12:24:10,372.372 INFO    ] Launching Daemon at Sat Jun 13 12:24:10 IST 2026
[2026-06-13 12:24:10,383.383 INFO    ] ================================================
[2026-06-13 12:24:10,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:24:10
[2026-06-13 12:24:11,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:24:11,193.193 INFO    ] Initializing speech engine...
[2026-06-13 12:24:11,202.202 INFO    ] 2026-06-13 12:24:11
[2026-06-13 12:24:11,410.410 INFO    ] 2026-06-13 12:24:11
[2026-06-13 12:24:11,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:24:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:24:11,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:24:11,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:24:11,815.815 INFO    ] time= 13/06/2026 12:24:11
[2026-06-13 12:24:11,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:24:11,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:24:11,933.933 INFO    ] No existing commands found in stream
[2026-06-13 12:24:16,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:24:16,946.946 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 12:24:18,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:24:18,394.394 INFO    ] Checking for system updates...
[2026-06-13 12:24:18,415.415 INFO    ] 200
[2026-06-13 12:24:18,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:18,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:18,450.450 INFO    ] No update needed
[2026-06-13 12:24:18,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 12:24:18,473.473 INFO    ] 200
[2026-06-13 12:24:18,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:18,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:24:18,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:18,540.540 INFO    ] No camera update needed
[2026-06-13 12:24:18,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:24:18,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:24:18,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:24:18,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:24:20,588.588 INFO    ] ================================================
[2026-06-13 12:24:20,603.603 INFO    ] Launching Daemon at Sat Jun 13 12:24:20 IST 2026
[2026-06-13 12:24:20,614.614 INFO    ] ================================================
[2026-06-13 12:24:20,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:24:20
[2026-06-13 12:24:21,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:24:21,431.431 INFO    ] Initializing speech engine...
[2026-06-13 12:24:21,444.444 INFO    ] 2026-06-13 12:24:21
[2026-06-13 12:24:21,661.661 INFO    ] 2026-06-13 12:24:21
[2026-06-13 12:24:21,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:24:21,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:24:21,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:24:22,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:24:22,090.090 INFO    ] time= 13/06/2026 12:24:22
[2026-06-13 12:24:22,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:24:22,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:24:22,216.216 INFO    ] No existing commands found in stream
[2026-06-13 12:24:27,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:24:27,230.230 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 12:24:30,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:24:30,134.134 INFO    ] Checking for system updates...
[2026-06-13 12:24:30,155.155 INFO    ] 200
[2026-06-13 12:24:30,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:30,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:30,192.192 INFO    ] No update needed
[2026-06-13 12:24:30,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 12:24:30,213.213 INFO    ] 200
[2026-06-13 12:24:30,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:30,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:24:30,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:30,276.276 INFO    ] No camera update needed
[2026-06-13 12:24:30,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:24:30,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:24:30,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:24:30,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:24:32,317.317 INFO    ] ================================================
[2026-06-13 12:24:32,326.326 INFO    ] Launching Daemon at Sat Jun 13 12:24:32 IST 2026
[2026-06-13 12:24:32,332.332 INFO    ] ================================================
[2026-06-13 12:24:32,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:24:32
[2026-06-13 12:24:33,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:24:33,225.225 INFO    ] Initializing speech engine...
[2026-06-13 12:24:33,229.229 INFO    ] 2026-06-13 12:24:33
[2026-06-13 12:24:33,436.436 INFO    ] 2026-06-13 12:24:33
[2026-06-13 12:24:33,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:24:33,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:24:33,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:24:33,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:24:33,854.854 INFO    ] time= 13/06/2026 12:24:33
[2026-06-13 12:24:33,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:24:33,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:24:33,955.955 INFO    ] No existing commands found in stream
[2026-06-13 12:24:38,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:24:38,964.964 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 12:24:39,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:24:39,640.640 INFO    ] Checking for system updates...
[2026-06-13 12:24:39,661.661 INFO    ] 200
[2026-06-13 12:24:39,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:39,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:39,694.694 INFO    ] No update needed
[2026-06-13 12:24:39,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 12:24:39,715.715 INFO    ] 200
[2026-06-13 12:24:39,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:39,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:24:39,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:24:39,776.776 INFO    ] No camera update needed
[2026-06-13 12:24:39,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:24:39,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:24:39,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:24:39,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:24:41,824.824 INFO    ] ================================================
[2026-06-13 12:24:41,840.840 INFO    ] Launching Daemon at Sat Jun 13 12:24:41 IST 2026
[2026-06-13 12:24:41,850.850 INFO    ] ================================================
[2026-06-13 12:24:42,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:24:42
[2026-06-13 12:24:42,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:24:42,726.726 INFO    ] Initializing speech engine...
[2026-06-13 12:24:42,732.732 INFO    ] 2026-06-13 12:24:42
[2026-06-13 12:24:42,945.945 INFO    ] 2026-06-13 12:24:42
[2026-06-13 12:24:42,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:24:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:24:43,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:24:43,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:24:43,378.378 INFO    ] time= 13/06/2026 12:24:43
[2026-06-13 12:24:43,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:24:43,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:24:43,542.542 INFO    ] No existing commands found in stream
[2026-06-13 12:24:48,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:24:48,559.559 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 12:24:52,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:24:52,716.716 INFO    ] Checking for system updates...
[2026-06-13 12:24:52,737.737 INFO    ] 200
[2026-06-13 12:24:52,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:52,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:24:52,771.771 INFO    ] No update needed
[2026-06-13 12:24:52,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 12:24:52,792.792 INFO    ] 200
[2026-06-13 12:24:52,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:24:52,825.825 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:24:52,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:24:52,866.866 INFO    ] No camera update needed
[2026-06-13 12:24:52,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:24:52,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:24:52,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:24:52,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:24:54,909.909 INFO    ] ================================================
[2026-06-13 12:24:54,924.924 INFO    ] Launching Daemon at Sat Jun 13 12:24:54 IST 2026
[2026-06-13 12:24:54,935.935 INFO    ] ================================================
[2026-06-13 12:24:55,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:24:55
[2026-06-13 12:24:55,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:24:55,728.728 INFO    ] Initializing speech engine...
[2026-06-13 12:24:55,733.733 INFO    ] 2026-06-13 12:24:55
[2026-06-13 12:24:55,936.936 INFO    ] 2026-06-13 12:24:55
[2026-06-13 12:24:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:24:56,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:24:56,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:24:56,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:24:56,344.344 INFO    ] time= 13/06/2026 12:24:56
[2026-06-13 12:24:56,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:24:56,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:24:56,451.451 INFO    ] No existing commands found in stream
[2026-06-13 12:25:01,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:01,465.465 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 12:25:03,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:25:03,275.275 INFO    ] Checking for system updates...
[2026-06-13 12:25:03,297.297 INFO    ] 200
[2026-06-13 12:25:03,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:03,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:03,333.333 INFO    ] No update needed
[2026-06-13 12:25:03,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 12:25:03,355.355 INFO    ] 200
[2026-06-13 12:25:03,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:03,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:25:03,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:03,437.437 INFO    ] No camera update needed
[2026-06-13 12:25:03,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:25:03,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:25:03,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:25:03,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:25:05,495.495 INFO    ] ================================================
[2026-06-13 12:25:05,511.511 INFO    ] Launching Daemon at Sat Jun 13 12:25:05 IST 2026
[2026-06-13 12:25:05,522.522 INFO    ] ================================================
[2026-06-13 12:25:05,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:25:05
[2026-06-13 12:25:06,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:25:06,344.344 INFO    ] Initializing speech engine...
[2026-06-13 12:25:06,349.349 INFO    ] 2026-06-13 12:25:06
[2026-06-13 12:25:06,561.561 INFO    ] 2026-06-13 12:25:06
[2026-06-13 12:25:06,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:25:06,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:25:06,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:25:06,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:25:06,993.993 INFO    ] time= 13/06/2026 12:25:06
[2026-06-13 12:25:07,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:25:07,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:25:07,113.113 INFO    ] No existing commands found in stream
[2026-06-13 12:25:12,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:12,126.126 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 12:25:14,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:25:14,385.385 INFO    ] Checking for system updates...
[2026-06-13 12:25:14,408.408 INFO    ] 200
[2026-06-13 12:25:14,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:14,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:25:14,441.441 INFO    ] No update needed
[2026-06-13 12:25:14,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 12:25:14,462.462 INFO    ] 200
[2026-06-13 12:25:14,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:14,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:25:14,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:25:14,524.524 INFO    ] No camera update needed
[2026-06-13 12:25:14,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:25:14,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:25:14,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:25:14,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:25:16,571.571 INFO    ] ================================================
[2026-06-13 12:25:16,585.585 INFO    ] Launching Daemon at Sat Jun 13 12:25:16 IST 2026
[2026-06-13 12:25:16,596.596 INFO    ] ================================================
[2026-06-13 12:25:16,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:25:16
[2026-06-13 12:25:17,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:25:17,414.414 INFO    ] Initializing speech engine...
[2026-06-13 12:25:17,429.429 INFO    ] 2026-06-13 12:25:17
[2026-06-13 12:25:17,633.633 INFO    ] 2026-06-13 12:25:17
[2026-06-13 12:25:17,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:25:17,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:25:17,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:25:17,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:25:18,052.052 INFO    ] time= 13/06/2026 12:25:17
[2026-06-13 12:25:18,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:25:18,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:25:18,150.150 INFO    ] No existing commands found in stream
[2026-06-13 12:25:23,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:23,162.162 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 12:25:23,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:25:23,800.800 INFO    ] Checking for system updates...
[2026-06-13 12:25:23,821.821 INFO    ] 200
[2026-06-13 12:25:23,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:23,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:23,858.858 INFO    ] No update needed
[2026-06-13 12:25:23,860.860 INFO    ] Checking for camera pi updates...
[2026-06-13 12:25:23,879.879 INFO    ] 200
[2026-06-13 12:25:23,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:23,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:25:23,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:23,943.943 INFO    ] No camera update needed
[2026-06-13 12:25:23,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:25:23,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:25:23,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:25:23,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:25:25,990.990 INFO    ] ================================================
[2026-06-13 12:25:26,005.005 INFO    ] Launching Daemon at Sat Jun 13 12:25:26 IST 2026
[2026-06-13 12:25:26,016.016 INFO    ] ================================================
[2026-06-13 12:25:26,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:25:26
[2026-06-13 12:25:26,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:25:26,807.807 INFO    ] Initializing speech engine...
[2026-06-13 12:25:26,813.813 INFO    ] 2026-06-13 12:25:26
[2026-06-13 12:25:27,026.026 INFO    ] 2026-06-13 12:25:26
[2026-06-13 12:25:27,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:25:27,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:25:27,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:25:27,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:25:27,460.460 INFO    ] time= 13/06/2026 12:25:27
[2026-06-13 12:25:27,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:25:27,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:25:27,575.575 INFO    ] No existing commands found in stream
[2026-06-13 12:25:32,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:32,587.587 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 12:25:36,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:25:36,275.275 INFO    ] Checking for system updates...
[2026-06-13 12:25:36,296.296 INFO    ] 200
[2026-06-13 12:25:36,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:36,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:36,331.331 INFO    ] No update needed
[2026-06-13 12:25:36,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 12:25:36,352.352 INFO    ] 200
[2026-06-13 12:25:36,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:36,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:25:36,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:36,416.416 INFO    ] No camera update needed
[2026-06-13 12:25:36,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:25:36,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:25:36,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:25:36,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:25:38,463.463 INFO    ] ================================================
[2026-06-13 12:25:38,479.479 INFO    ] Launching Daemon at Sat Jun 13 12:25:38 IST 2026
[2026-06-13 12:25:38,489.489 INFO    ] ================================================
[2026-06-13 12:25:38,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:25:38
[2026-06-13 12:25:39,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:25:39,758.758 INFO    ] Initializing speech engine...
[2026-06-13 12:25:39,766.766 INFO    ] 2026-06-13 12:25:39
[2026-06-13 12:25:40,042.042 INFO    ] 2026-06-13 12:25:40
[2026-06-13 12:25:40,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:25:40,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:25:40,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:25:40,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:25:40,397.397 INFO    ] time= 13/06/2026 12:25:40
[2026-06-13 12:25:40,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:25:40,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:25:40,495.495 INFO    ] No existing commands found in stream
[2026-06-13 12:25:45,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:45,511.511 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 12:25:47,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:25:47,841.841 INFO    ] Checking for system updates...
[2026-06-13 12:25:47,861.861 INFO    ] 200
[2026-06-13 12:25:47,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:47,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:47,897.897 INFO    ] No update needed
[2026-06-13 12:25:47,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 12:25:47,918.918 INFO    ] 200
[2026-06-13 12:25:47,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:25:47,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:25:47,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:25:47,979.979 INFO    ] No camera update needed
[2026-06-13 12:25:47,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:25:47,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:25:47,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:25:47,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:25:50,027.027 INFO    ] ================================================
[2026-06-13 12:25:50,042.042 INFO    ] Launching Daemon at Sat Jun 13 12:25:50 IST 2026
[2026-06-13 12:25:50,052.052 INFO    ] ================================================
[2026-06-13 12:25:50,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:25:50
[2026-06-13 12:25:51,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:25:51,513.513 INFO    ] Initializing speech engine...
[2026-06-13 12:25:51,522.522 INFO    ] 2026-06-13 12:25:51
[2026-06-13 12:25:51,796.796 INFO    ] 2026-06-13 12:25:51
[2026-06-13 12:25:51,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:25:52,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:25:52,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:25:52,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:25:52,262.262 INFO    ] time= 13/06/2026 12:25:52
[2026-06-13 12:25:52,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:25:52,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:25:52,488.488 INFO    ] No existing commands found in stream
[2026-06-13 12:25:57,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:25:57,516.516 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 12:26:00,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:26:00,655.655 INFO    ] Checking for system updates...
[2026-06-13 12:26:00,676.676 INFO    ] 200
[2026-06-13 12:26:00,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:00,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:00,711.711 INFO    ] No update needed
[2026-06-13 12:26:00,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:00,732.732 INFO    ] 200
[2026-06-13 12:26:00,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:00,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:00,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:00,797.797 INFO    ] No camera update needed
[2026-06-13 12:26:00,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:00,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:00,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:00,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:02,849.849 INFO    ] ================================================
[2026-06-13 12:26:02,865.865 INFO    ] Launching Daemon at Sat Jun 13 12:26:02 IST 2026
[2026-06-13 12:26:02,876.876 INFO    ] ================================================
[2026-06-13 12:26:03,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:03
[2026-06-13 12:26:04,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:04,431.431 INFO    ] Initializing speech engine...
[2026-06-13 12:26:04,441.441 INFO    ] 2026-06-13 12:26:04
[2026-06-13 12:26:04,713.713 INFO    ] 2026-06-13 12:26:04
[2026-06-13 12:26:04,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:04,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:04,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:26:05,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:26:05,027.027 INFO    ] time= 13/06/2026 12:26:05
[2026-06-13 12:26:05,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:26:05,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:26:05,162.162 INFO    ] No existing commands found in stream
[2026-06-13 12:26:10,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:26:10,201.201 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 12:26:14,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:26:14,495.495 INFO    ] Checking for system updates...
[2026-06-13 12:26:14,517.517 INFO    ] 200
[2026-06-13 12:26:14,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:14,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:14,550.550 INFO    ] No update needed
[2026-06-13 12:26:14,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:14,572.572 INFO    ] 200
[2026-06-13 12:26:14,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:14,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:14,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:26:14,632.632 INFO    ] No camera update needed
[2026-06-13 12:26:14,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:14,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:14,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:14,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:16,679.679 INFO    ] ================================================
[2026-06-13 12:26:16,694.694 INFO    ] Launching Daemon at Sat Jun 13 12:26:16 IST 2026
[2026-06-13 12:26:16,704.704 INFO    ] ================================================
[2026-06-13 12:26:17,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:17
[2026-06-13 12:26:17,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:17,497.497 INFO    ] Initializing speech engine...
[2026-06-13 12:26:17,503.503 INFO    ] 2026-06-13 12:26:17
[2026-06-13 12:26:17,705.705 INFO    ] 2026-06-13 12:26:17
[2026-06-13 12:26:17,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:17,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:17,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:26:18,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:26:18,106.106 INFO    ] time= 13/06/2026 12:26:18
[2026-06-13 12:26:18,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:26:18,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:26:18,222.222 INFO    ] No existing commands found in stream
[2026-06-13 12:26:23,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:26:23,233.233 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 12:26:25,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:26:25,374.374 INFO    ] Checking for system updates...
[2026-06-13 12:26:25,395.395 INFO    ] 200
[2026-06-13 12:26:25,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:25,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:26:25,430.430 INFO    ] No update needed
[2026-06-13 12:26:25,431.431 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:25,451.451 INFO    ] 200
[2026-06-13 12:26:25,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:25,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:25,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:26:25,516.516 INFO    ] No camera update needed
[2026-06-13 12:26:25,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:25,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:25,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:25,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:27,563.563 INFO    ] ================================================
[2026-06-13 12:26:27,577.577 INFO    ] Launching Daemon at Sat Jun 13 12:26:27 IST 2026
[2026-06-13 12:26:27,588.588 INFO    ] ================================================
[2026-06-13 12:26:27,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:27
[2026-06-13 12:26:28,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:28,390.390 INFO    ] Initializing speech engine...
[2026-06-13 12:26:28,396.396 INFO    ] 2026-06-13 12:26:28
[2026-06-13 12:26:28,598.598 INFO    ] 2026-06-13 12:26:28
[2026-06-13 12:26:28,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:28,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:28,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:26:28,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:26:28,998.998 INFO    ] time= 13/06/2026 12:26:28
[2026-06-13 12:26:29,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:26:29,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:26:29,122.122 INFO    ] No existing commands found in stream
[2026-06-13 12:26:34,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:26:34,133.133 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 12:26:37,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:26:37,375.375 INFO    ] Checking for system updates...
[2026-06-13 12:26:37,396.396 INFO    ] 200
[2026-06-13 12:26:37,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:37,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:37,432.432 INFO    ] No update needed
[2026-06-13 12:26:37,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:37,453.453 INFO    ] 200
[2026-06-13 12:26:37,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:37,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:37,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:37,516.516 INFO    ] No camera update needed
[2026-06-13 12:26:37,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:37,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:37,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:37,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:39,562.562 INFO    ] ================================================
[2026-06-13 12:26:39,577.577 INFO    ] Launching Daemon at Sat Jun 13 12:26:39 IST 2026
[2026-06-13 12:26:39,588.588 INFO    ] ================================================
[2026-06-13 12:26:39,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:39
[2026-06-13 12:26:40,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:40,385.385 INFO    ] Initializing speech engine...
[2026-06-13 12:26:40,399.399 INFO    ] 2026-06-13 12:26:40
[2026-06-13 12:26:40,605.605 INFO    ] 2026-06-13 12:26:40
[2026-06-13 12:26:40,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:40,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:40,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:26:40,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:26:40,989.989 INFO    ] time= 13/06/2026 12:26:40
[2026-06-13 12:26:40,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:26:41,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:26:41,097.097 INFO    ] No existing commands found in stream
[2026-06-13 12:26:46,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:26:46,115.115 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 12:26:46,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:26:46,522.522 INFO    ] Checking for system updates...
[2026-06-13 12:26:46,544.544 INFO    ] 200
[2026-06-13 12:26:46,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:46,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:26:46,590.590 INFO    ] No update needed
[2026-06-13 12:26:46,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:46,627.627 INFO    ] 200
[2026-06-13 12:26:46,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:46,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:46,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:26:46,723.723 INFO    ] No camera update needed
[2026-06-13 12:26:46,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:46,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:46,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:46,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:48,785.785 INFO    ] ================================================
[2026-06-13 12:26:48,800.800 INFO    ] Launching Daemon at Sat Jun 13 12:26:48 IST 2026
[2026-06-13 12:26:48,811.811 INFO    ] ================================================
[2026-06-13 12:26:49,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:49
[2026-06-13 12:26:49,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:50,012.012 INFO    ] Initializing speech engine...
[2026-06-13 12:26:50,016.016 INFO    ] 2026-06-13 12:26:50
[2026-06-13 12:26:50,226.226 INFO    ] 2026-06-13 12:26:50
[2026-06-13 12:26:50,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:50,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:50,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:26:50,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:26:50,637.637 INFO    ] time= 13/06/2026 12:26:50
[2026-06-13 12:26:50,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:26:50,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:26:50,749.749 INFO    ] No existing commands found in stream
[2026-06-13 12:26:55,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:26:55,762.762 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 12:26:56,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:26:56,441.441 INFO    ] Checking for system updates...
[2026-06-13 12:26:56,462.462 INFO    ] 200
[2026-06-13 12:26:56,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:56,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:56,496.496 INFO    ] No update needed
[2026-06-13 12:26:56,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 12:26:56,519.519 INFO    ] 200
[2026-06-13 12:26:56,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:26:56,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:26:56,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:26:56,586.586 INFO    ] No camera update needed
[2026-06-13 12:26:56,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:26:56,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:26:56,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:26:56,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:26:58,633.633 INFO    ] ================================================
[2026-06-13 12:26:58,648.648 INFO    ] Launching Daemon at Sat Jun 13 12:26:58 IST 2026
[2026-06-13 12:26:58,659.659 INFO    ] ================================================
[2026-06-13 12:26:59,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:26:59
[2026-06-13 12:26:59,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:26:59,486.486 INFO    ] Initializing speech engine...
[2026-06-13 12:26:59,492.492 INFO    ] 2026-06-13 12:26:59
[2026-06-13 12:26:59,702.702 INFO    ] 2026-06-13 12:26:59
[2026-06-13 12:26:59,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:26:59,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:26:59,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:27:00,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:27:00,116.116 INFO    ] time= 13/06/2026 12:27:00
[2026-06-13 12:27:00,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:27:00,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:27:00,216.216 INFO    ] No existing commands found in stream
[2026-06-13 12:27:05,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:27:05,227.227 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 12:27:06,974.974 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 12:27:06,999.999 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 12:27:07,007.007 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 12:27:07,016.016 INFO    ] None
[2026-06-13 12:27:07,019.019 INFO    ] Checking for system updates...
[2026-06-13 12:27:07,056.056 INFO    ] 200
[2026-06-13 12:27:07,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:07,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:27:07,090.090 INFO    ] No update needed
[2026-06-13 12:27:07,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 12:27:07,110.110 INFO    ] 200
[2026-06-13 12:27:07,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:07,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:27:10,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:27:10,032.032 INFO    ] No camera update needed
[2026-06-13 12:27:10,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:27:10,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:10,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:10,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:12,092.092 INFO    ] ================================================
[2026-06-13 12:27:12,107.107 INFO    ] Launching Daemon at Sat Jun 13 12:27:12 IST 2026
[2026-06-13 12:27:12,117.117 INFO    ] ================================================
[2026-06-13 12:27:12,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:12
[2026-06-13 12:27:12,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:12,942.942 INFO    ] Initializing speech engine...
[2026-06-13 12:27:12,952.952 INFO    ] 2026-06-13 12:27:12
[2026-06-13 12:27:13,161.161 INFO    ] 2026-06-13 12:27:13
[2026-06-13 12:27:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:13,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:27:13,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:27:13,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:27:13,566.566 INFO    ] time= 13/06/2026 12:27:13
[2026-06-13 12:27:13,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:27:13,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:27:13,683.683 INFO    ] No existing commands found in stream
[2026-06-13 12:27:18,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:27:18,697.697 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 12:27:20,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:27:20,595.595 INFO    ] Checking for system updates...
[2026-06-13 12:27:20,616.616 INFO    ] 200
[2026-06-13 12:27:20,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:20,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:27:20,651.651 INFO    ] No update needed
[2026-06-13 12:27:20,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 12:27:20,672.672 INFO    ] 200
[2026-06-13 12:27:20,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:20,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:27:20,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:27:20,738.738 INFO    ] No camera update needed
[2026-06-13 12:27:20,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:27:20,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:20,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:22,784.784 INFO    ] ================================================
[2026-06-13 12:27:22,799.799 INFO    ] Launching Daemon at Sat Jun 13 12:27:22 IST 2026
[2026-06-13 12:27:22,809.809 INFO    ] ================================================
[2026-06-13 12:27:23,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:23
[2026-06-13 12:27:23,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:23,638.638 INFO    ] Initializing speech engine...
[2026-06-13 12:27:23,643.643 INFO    ] 2026-06-13 12:27:23
[2026-06-13 12:27:23,855.855 INFO    ] 2026-06-13 12:27:23
[2026-06-13 12:27:23,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:23,911.911 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:23,975.975 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:23,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:24,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:24,044.044 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:24,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:26,149.149 INFO    ] ================================================
[2026-06-13 12:27:26,165.165 INFO    ] Launching Daemon at Sat Jun 13 12:27:26 IST 2026
[2026-06-13 12:27:26,176.176 INFO    ] ================================================
[2026-06-13 12:27:26,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:26
[2026-06-13 12:27:26,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:26,966.966 INFO    ] Initializing speech engine...
[2026-06-13 12:27:26,972.972 INFO    ] 2026-06-13 12:27:26
[2026-06-13 12:27:27,175.175 INFO    ] 2026-06-13 12:27:27
[2026-06-13 12:27:27,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:27,254.254 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:27,299.299 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:27,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:27,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:27,367.367 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:27,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:29,466.466 INFO    ] ================================================
[2026-06-13 12:27:29,481.481 INFO    ] Launching Daemon at Sat Jun 13 12:27:29 IST 2026
[2026-06-13 12:27:29,491.491 INFO    ] ================================================
[2026-06-13 12:27:29,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:29
[2026-06-13 12:27:30,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:30,277.277 INFO    ] Initializing speech engine...
[2026-06-13 12:27:30,282.282 INFO    ] 2026-06-13 12:27:30
[2026-06-13 12:27:30,488.488 INFO    ] 2026-06-13 12:27:30
[2026-06-13 12:27:30,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:30,542.542 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:30,613.613 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:30,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:30,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:30,672.672 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:30,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:32,788.788 INFO    ] ================================================
[2026-06-13 12:27:32,797.797 INFO    ] Launching Daemon at Sat Jun 13 12:27:32 IST 2026
[2026-06-13 12:27:32,802.802 INFO    ] ================================================
[2026-06-13 12:27:33,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:33
[2026-06-13 12:27:33,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:33,618.618 INFO    ] Initializing speech engine...
[2026-06-13 12:27:33,623.623 INFO    ] 2026-06-13 12:27:33
[2026-06-13 12:27:33,824.824 INFO    ] 2026-06-13 12:27:33
[2026-06-13 12:27:33,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:33,905.905 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:33,947.947 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:33,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:34,005.005 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:34,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:36,109.109 INFO    ] ================================================
[2026-06-13 12:27:36,124.124 INFO    ] Launching Daemon at Sat Jun 13 12:27:36 IST 2026
[2026-06-13 12:27:36,135.135 INFO    ] ================================================
[2026-06-13 12:27:36,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:36
[2026-06-13 12:27:36,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:36,999.999 INFO    ] Initializing speech engine...
[2026-06-13 12:27:37,008.008 INFO    ] 2026-06-13 12:27:37
[2026-06-13 12:27:37,262.262 INFO    ] 2026-06-13 12:27:37
[2026-06-13 12:27:37,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:37,425.425 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:37,528.528 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:37,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:37,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:37,631.631 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:37,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:39,703.703 INFO    ] ================================================
[2026-06-13 12:27:39,718.718 INFO    ] Launching Daemon at Sat Jun 13 12:27:39 IST 2026
[2026-06-13 12:27:39,728.728 INFO    ] ================================================
[2026-06-13 12:27:40,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:40
[2026-06-13 12:27:40,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:40,611.611 INFO    ] Initializing speech engine...
[2026-06-13 12:27:40,617.617 INFO    ] 2026-06-13 12:27:40
[2026-06-13 12:27:40,824.824 INFO    ] 2026-06-13 12:27:40
[2026-06-13 12:27:40,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:41,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:27:41,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:27:41,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:27:41,239.239 INFO    ] time= 13/06/2026 12:27:41
[2026-06-13 12:27:41,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:27:41,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:27:41,339.339 INFO    ] No existing commands found in stream
[2026-06-13 12:27:46,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:27:46,354.354 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 12:27:49,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:27:49,247.247 INFO    ] Checking for system updates...
[2026-06-13 12:27:49,269.269 INFO    ] 200
[2026-06-13 12:27:49,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:49,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:27:49,303.303 INFO    ] No update needed
[2026-06-13 12:27:49,304.304 INFO    ] Checking for camera pi updates...
[2026-06-13 12:27:49,324.324 INFO    ] 200
[2026-06-13 12:27:49,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:27:49,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:27:49,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:27:49,494.494 INFO    ] No camera update needed
[2026-06-13 12:27:49,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:27:49,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:49,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:49,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:51,540.540 INFO    ] ================================================
[2026-06-13 12:27:51,556.556 INFO    ] Launching Daemon at Sat Jun 13 12:27:51 IST 2026
[2026-06-13 12:27:51,566.566 INFO    ] ================================================
[2026-06-13 12:27:51,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:51
[2026-06-13 12:27:52,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:52,386.386 INFO    ] Initializing speech engine...
[2026-06-13 12:27:52,391.391 INFO    ] 2026-06-13 12:27:52
[2026-06-13 12:27:52,619.619 INFO    ] 2026-06-13 12:27:52
[2026-06-13 12:27:52,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:52,675.675 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:52,752.752 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:52,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:52,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:52,814.814 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:52,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:54,934.934 INFO    ] ================================================
[2026-06-13 12:27:54,950.950 INFO    ] Launching Daemon at Sat Jun 13 12:27:54 IST 2026
[2026-06-13 12:27:54,961.961 INFO    ] ================================================
[2026-06-13 12:27:55,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:55
[2026-06-13 12:27:56,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:27:56,461.461 INFO    ] Initializing speech engine...
[2026-06-13 12:27:56,468.468 INFO    ] 2026-06-13 12:27:56
[2026-06-13 12:27:56,728.728 INFO    ] 2026-06-13 12:27:56
[2026-06-13 12:27:56,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:27:56,848.848 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:27:56,932.932 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:27:56,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:27:56,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:27:56,959.959 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:27:56,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:27:59,013.013 INFO    ] ================================================
[2026-06-13 12:27:59,029.029 INFO    ] Launching Daemon at Sat Jun 13 12:27:59 IST 2026
[2026-06-13 12:27:59,040.040 INFO    ] ================================================
[2026-06-13 12:27:59,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:27:59
[2026-06-13 12:28:00,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:00,323.323 INFO    ] Initializing speech engine...
[2026-06-13 12:28:00,332.332 INFO    ] 2026-06-13 12:28:00
[2026-06-13 12:28:00,583.583 INFO    ] 2026-06-13 12:28:00
[2026-06-13 12:28:00,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:00,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:00,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:01,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:01,045.045 INFO    ] time= 13/06/2026 12:28:01
[2026-06-13 12:28:01,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:01,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:01,239.239 INFO    ] No existing commands found in stream
[2026-06-13 12:28:06,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:28:06,294.294 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 12:28:08,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:28:08,496.496 INFO    ] Checking for system updates...
[2026-06-13 12:28:08,518.518 INFO    ] 200
[2026-06-13 12:28:08,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:08,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:08,551.551 INFO    ] No update needed
[2026-06-13 12:28:08,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 12:28:08,574.574 INFO    ] 200
[2026-06-13 12:28:08,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:08,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:28:08,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:08,749.749 INFO    ] No camera update needed
[2026-06-13 12:28:08,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:28:08,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:28:08,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:28:08,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:28:10,795.795 INFO    ] ================================================
[2026-06-13 12:28:10,811.811 INFO    ] Launching Daemon at Sat Jun 13 12:28:10 IST 2026
[2026-06-13 12:28:10,823.823 INFO    ] ================================================
[2026-06-13 12:28:11,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:28:11
[2026-06-13 12:28:11,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:11,611.611 INFO    ] Initializing speech engine...
[2026-06-13 12:28:11,621.621 INFO    ] 2026-06-13 12:28:11
[2026-06-13 12:28:11,827.827 INFO    ] 2026-06-13 12:28:11
[2026-06-13 12:28:11,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:12,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:12,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:12,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:12,236.236 INFO    ] time= 13/06/2026 12:28:12
[2026-06-13 12:28:12,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:12,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:12,347.347 INFO    ] No existing commands found in stream
[2026-06-13 12:28:17,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:28:17,360.360 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 12:28:17,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:28:17,951.951 INFO    ] Checking for system updates...
[2026-06-13 12:28:17,972.972 INFO    ] 200
[2026-06-13 12:28:17,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:18,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:18,008.008 INFO    ] No update needed
[2026-06-13 12:28:18,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 12:28:18,029.029 INFO    ] 200
[2026-06-13 12:28:18,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:18,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:28:18,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:18,101.101 INFO    ] No camera update needed
[2026-06-13 12:28:18,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:28:18,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:28:18,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:28:18,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:28:20,150.150 INFO    ] ================================================
[2026-06-13 12:28:20,166.166 INFO    ] Launching Daemon at Sat Jun 13 12:28:20 IST 2026
[2026-06-13 12:28:20,177.177 INFO    ] ================================================
[2026-06-13 12:28:20,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:28:20
[2026-06-13 12:28:20,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:21,040.040 INFO    ] Initializing speech engine...
[2026-06-13 12:28:21,045.045 INFO    ] 2026-06-13 12:28:21
[2026-06-13 12:28:21,253.253 INFO    ] 2026-06-13 12:28:21
[2026-06-13 12:28:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:21,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:21,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:21,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:21,675.675 INFO    ] time= 13/06/2026 12:28:21
[2026-06-13 12:28:21,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:21,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:21,808.808 INFO    ] No existing commands found in stream
[2026-06-13 12:28:26,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:28:26,842.842 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 12:28:28,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:28:28,040.040 INFO    ] Checking for system updates...
[2026-06-13 12:28:28,061.061 INFO    ] 200
[2026-06-13 12:28:28,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:28,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:28,096.096 INFO    ] No update needed
[2026-06-13 12:28:28,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 12:28:28,116.116 INFO    ] 200
[2026-06-13 12:28:28,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:28,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:28:28,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:28:28,178.178 INFO    ] No camera update needed
[2026-06-13 12:28:28,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:28:28,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:28:28,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:28:28,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:28:30,225.225 INFO    ] ================================================
[2026-06-13 12:28:31,095.095 INFO    ] Launching Daemon at Sat Jun 13 12:28:31 IST 2026
[2026-06-13 12:28:31,107.107 INFO    ] ================================================
[2026-06-13 12:28:31,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:28:31
[2026-06-13 12:28:31,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:32,004.004 INFO    ] Initializing speech engine...
[2026-06-13 12:28:32,009.009 INFO    ] 2026-06-13 12:28:32
[2026-06-13 12:28:32,214.214 INFO    ] 2026-06-13 12:28:32
[2026-06-13 12:28:32,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:32,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:32,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:32,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:32,619.619 INFO    ] time= 13/06/2026 12:28:32
[2026-06-13 12:28:32,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:32,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:32,730.730 INFO    ] No existing commands found in stream
[2026-06-13 12:28:37,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:28:37,746.746 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 12:28:42,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:28:42,123.123 INFO    ] Checking for system updates...
[2026-06-13 12:28:42,163.163 INFO    ] 200
[2026-06-13 12:28:42,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:42,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:28:42,228.228 INFO    ] No update needed
[2026-06-13 12:28:42,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 12:28:42,265.265 INFO    ] 200
[2026-06-13 12:28:42,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:42,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:28:42,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:28:42,340.340 INFO    ] No camera update needed
[2026-06-13 12:28:42,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:28:42,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:28:42,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:28:42,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:28:44,389.389 INFO    ] ================================================
[2026-06-13 12:28:44,404.404 INFO    ] Launching Daemon at Sat Jun 13 12:28:44 IST 2026
[2026-06-13 12:28:44,416.416 INFO    ] ================================================
[2026-06-13 12:28:44,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:28:44
[2026-06-13 12:28:45,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:45,310.310 INFO    ] Initializing speech engine...
[2026-06-13 12:28:45,316.316 INFO    ] 2026-06-13 12:28:45
[2026-06-13 12:28:45,529.529 INFO    ] 2026-06-13 12:28:45
[2026-06-13 12:28:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:45,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:45,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:45,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:45,958.958 INFO    ] time= 13/06/2026 12:28:45
[2026-06-13 12:28:45,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:45,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:46,079.079 INFO    ] No existing commands found in stream
[2026-06-13 12:28:51,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:28:51,092.092 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 12:28:53,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:28:53,964.964 INFO    ] Checking for system updates...
[2026-06-13 12:28:53,985.985 INFO    ] 200
[2026-06-13 12:28:53,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:54,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:28:54,018.018 INFO    ] No update needed
[2026-06-13 12:28:54,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 12:28:54,039.039 INFO    ] 200
[2026-06-13 12:28:54,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:28:54,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:28:54,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:28:54,107.107 INFO    ] No camera update needed
[2026-06-13 12:28:54,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:28:54,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:28:54,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:28:54,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:28:56,154.154 INFO    ] ================================================
[2026-06-13 12:28:56,170.170 INFO    ] Launching Daemon at Sat Jun 13 12:28:56 IST 2026
[2026-06-13 12:28:56,182.182 INFO    ] ================================================
[2026-06-13 12:28:56,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:28:56
[2026-06-13 12:28:56,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:28:56,990.990 INFO    ] Initializing speech engine...
[2026-06-13 12:28:56,995.995 INFO    ] 2026-06-13 12:28:56
[2026-06-13 12:28:57,200.200 INFO    ] 2026-06-13 12:28:57
[2026-06-13 12:28:57,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:28:57,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:28:57,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:28:57,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:28:57,596.596 INFO    ] time= 13/06/2026 12:28:57
[2026-06-13 12:28:57,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:28:57,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:28:57,717.717 INFO    ] No existing commands found in stream
[2026-06-13 12:29:02,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:02,728.728 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 12:29:04,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:29:04,189.189 INFO    ] Checking for system updates...
[2026-06-13 12:29:04,211.211 INFO    ] 200
[2026-06-13 12:29:04,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:04,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:04,244.244 INFO    ] No update needed
[2026-06-13 12:29:04,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 12:29:04,265.265 INFO    ] 200
[2026-06-13 12:29:04,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:04,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:29:04,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:04,335.335 INFO    ] No camera update needed
[2026-06-13 12:29:04,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:29:04,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:29:04,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:29:04,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:29:06,376.376 INFO    ] ================================================
[2026-06-13 12:29:06,386.386 INFO    ] Launching Daemon at Sat Jun 13 12:29:06 IST 2026
[2026-06-13 12:29:06,393.393 INFO    ] ================================================
[2026-06-13 12:29:06,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:29:06
[2026-06-13 12:29:07,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:29:07,772.772 INFO    ] Initializing speech engine...
[2026-06-13 12:29:07,776.776 INFO    ] 2026-06-13 12:29:07
[2026-06-13 12:29:08,026.026 INFO    ] 2026-06-13 12:29:08
[2026-06-13 12:29:08,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:29:08,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:29:08,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:29:08,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:29:08,366.366 INFO    ] time= 13/06/2026 12:29:08
[2026-06-13 12:29:08,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:29:08,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:29:08,477.477 INFO    ] No existing commands found in stream
[2026-06-13 12:29:13,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:13,493.493 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 12:29:16,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:29:16,232.232 INFO    ] Checking for system updates...
[2026-06-13 12:29:16,253.253 INFO    ] 200
[2026-06-13 12:29:16,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:16,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:16,293.293 INFO    ] No update needed
[2026-06-13 12:29:16,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 12:29:16,316.316 INFO    ] 200
[2026-06-13 12:29:16,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:16,341.341 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:29:16,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:16,379.379 INFO    ] No camera update needed
[2026-06-13 12:29:16,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:29:16,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:29:16,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:29:16,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:29:18,426.426 INFO    ] ================================================
[2026-06-13 12:29:18,441.441 INFO    ] Launching Daemon at Sat Jun 13 12:29:18 IST 2026
[2026-06-13 12:29:18,451.451 INFO    ] ================================================
[2026-06-13 12:29:18,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:29:18
[2026-06-13 12:29:19,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:29:19,261.261 INFO    ] Initializing speech engine...
[2026-06-13 12:29:19,267.267 INFO    ] 2026-06-13 12:29:19
[2026-06-13 12:29:19,471.471 INFO    ] 2026-06-13 12:29:19
[2026-06-13 12:29:19,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:29:19,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:29:19,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:29:19,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:29:19,887.887 INFO    ] time= 13/06/2026 12:29:19
[2026-06-13 12:29:19,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:29:19,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:29:19,984.984 INFO    ] No existing commands found in stream
[2026-06-13 12:29:24,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:24,996.996 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 12:29:28,967.967 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:29:28,968.968 INFO    ] Checking for system updates...
[2026-06-13 12:29:28,990.990 INFO    ] 200
[2026-06-13 12:29:28,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:29,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:29,024.024 INFO    ] No update needed
[2026-06-13 12:29:29,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 12:29:29,046.046 INFO    ] 200
[2026-06-13 12:29:29,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:29,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:29:29,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:29,124.124 INFO    ] No camera update needed
[2026-06-13 12:29:29,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:29:29,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:29:29,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:29:29,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:29:31,179.179 INFO    ] ================================================
[2026-06-13 12:29:31,195.195 INFO    ] Launching Daemon at Sat Jun 13 12:29:31 IST 2026
[2026-06-13 12:29:31,206.206 INFO    ] ================================================
[2026-06-13 12:29:31,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:29:31
[2026-06-13 12:29:32,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:29:32,474.474 INFO    ] Initializing speech engine...
[2026-06-13 12:29:32,480.480 INFO    ] 2026-06-13 12:29:32
[2026-06-13 12:29:32,701.701 INFO    ] 2026-06-13 12:29:32
[2026-06-13 12:29:32,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:29:32,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:29:32,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:29:33,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:29:33,078.078 INFO    ] time= 13/06/2026 12:29:33
[2026-06-13 12:29:33,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:29:33,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:29:33,244.244 INFO    ] No existing commands found in stream
[2026-06-13 12:29:38,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:38,261.261 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 12:29:38,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:29:38,587.587 INFO    ] Checking for system updates...
[2026-06-13 12:29:38,609.609 INFO    ] 200
[2026-06-13 12:29:38,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:38,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:38,647.647 INFO    ] No update needed
[2026-06-13 12:29:38,648.648 INFO    ] Checking for camera pi updates...
[2026-06-13 12:29:38,672.672 INFO    ] 200
[2026-06-13 12:29:38,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:38,697.697 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:29:38,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:29:38,740.740 INFO    ] No camera update needed
[2026-06-13 12:29:38,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:29:38,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:29:38,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:29:38,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:29:40,789.789 INFO    ] ================================================
[2026-06-13 12:29:40,805.805 INFO    ] Launching Daemon at Sat Jun 13 12:29:40 IST 2026
[2026-06-13 12:29:40,816.816 INFO    ] ================================================
[2026-06-13 12:29:41,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:29:41
[2026-06-13 12:29:41,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:29:41,657.657 INFO    ] Initializing speech engine...
[2026-06-13 12:29:41,662.662 INFO    ] 2026-06-13 12:29:41
[2026-06-13 12:29:41,863.863 INFO    ] 2026-06-13 12:29:41
[2026-06-13 12:29:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:29:42,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:29:42,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:29:42,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:29:42,260.260 INFO    ] time= 13/06/2026 12:29:42
[2026-06-13 12:29:42,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:29:42,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:29:42,374.374 INFO    ] No existing commands found in stream
[2026-06-13 12:29:47,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:47,387.387 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 12:29:50,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:29:50,780.780 INFO    ] Checking for system updates...
[2026-06-13 12:29:50,801.801 INFO    ] 200
[2026-06-13 12:29:50,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:50,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:29:50,835.835 INFO    ] No update needed
[2026-06-13 12:29:50,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 12:29:50,856.856 INFO    ] 200
[2026-06-13 12:29:50,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:29:50,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:29:50,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:29:50,922.922 INFO    ] No camera update needed
[2026-06-13 12:29:50,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:29:50,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:29:50,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:29:50,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:29:52,969.969 INFO    ] ================================================
[2026-06-13 12:29:52,984.984 INFO    ] Launching Daemon at Sat Jun 13 12:29:52 IST 2026
[2026-06-13 12:29:53,995.995 INFO    ] ================================================
[2026-06-13 12:29:53,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:29:53
[2026-06-13 12:29:53,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:29:53,809.809 INFO    ] Initializing speech engine...
[2026-06-13 12:29:53,815.815 INFO    ] 2026-06-13 12:29:53
[2026-06-13 12:29:54,030.030 INFO    ] 2026-06-13 12:29:54
[2026-06-13 12:29:54,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:29:54,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:29:54,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:29:54,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:29:54,460.460 INFO    ] time= 13/06/2026 12:29:54
[2026-06-13 12:29:54,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:29:54,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:29:54,579.579 INFO    ] No existing commands found in stream
[2026-06-13 12:29:59,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:29:59,593.593 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 12:30:05,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:30:05,893.893 INFO    ] Checking for system updates...
[2026-06-13 12:30:05,930.930 INFO    ] 200
[2026-06-13 12:30:05,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:05,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:05,989.989 INFO    ] No update needed
[2026-06-13 12:30:05,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 12:30:06,029.029 INFO    ] 200
[2026-06-13 12:30:06,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:06,059.059 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:30:06,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:06,096.096 INFO    ] No camera update needed
[2026-06-13 12:30:06,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:30:06,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:30:06,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:30:06,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:30:08,143.143 INFO    ] ================================================
[2026-06-13 12:30:08,159.159 INFO    ] Launching Daemon at Sat Jun 13 12:30:08 IST 2026
[2026-06-13 12:30:08,170.170 INFO    ] ================================================
[2026-06-13 12:30:08,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:30:08
[2026-06-13 12:30:08,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:30:09,053.053 INFO    ] Initializing speech engine...
[2026-06-13 12:30:09,058.058 INFO    ] 2026-06-13 12:30:09
[2026-06-13 12:30:09,264.264 INFO    ] 2026-06-13 12:30:09
[2026-06-13 12:30:09,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:30:09,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:30:09,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:30:09,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:30:09,663.663 INFO    ] time= 13/06/2026 12:30:09
[2026-06-13 12:30:09,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:30:09,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:30:09,785.785 INFO    ] No existing commands found in stream
[2026-06-13 12:30:14,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:30:14,799.799 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 12:30:17,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:30:17,127.127 INFO    ] Checking for system updates...
[2026-06-13 12:30:17,148.148 INFO    ] 200
[2026-06-13 12:30:17,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:17,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:17,182.182 INFO    ] No update needed
[2026-06-13 12:30:17,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 12:30:17,203.203 INFO    ] 200
[2026-06-13 12:30:17,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:17,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:30:17,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:30:17,372.372 INFO    ] No camera update needed
[2026-06-13 12:30:17,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:30:17,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:30:17,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:30:17,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:30:19,421.421 INFO    ] ================================================
[2026-06-13 12:30:19,436.436 INFO    ] Launching Daemon at Sat Jun 13 12:30:19 IST 2026
[2026-06-13 12:30:19,447.447 INFO    ] ================================================
[2026-06-13 12:30:19,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:30:19
[2026-06-13 12:30:20,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:30:20,277.277 INFO    ] Initializing speech engine...
[2026-06-13 12:30:20,282.282 INFO    ] 2026-06-13 12:30:20
[2026-06-13 12:30:20,487.487 INFO    ] 2026-06-13 12:30:20
[2026-06-13 12:30:20,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:30:20,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:30:20,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:30:20,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:30:20,904.904 INFO    ] time= 13/06/2026 12:30:20
[2026-06-13 12:30:20,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:30:20,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:30:21,004.004 INFO    ] No existing commands found in stream
[2026-06-13 12:30:26,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:30:26,016.016 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 12:30:27,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:30:27,592.592 INFO    ] Checking for system updates...
[2026-06-13 12:30:27,613.613 INFO    ] 200
[2026-06-13 12:30:27,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:27,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:30:27,646.646 INFO    ] No update needed
[2026-06-13 12:30:27,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 12:30:27,666.666 INFO    ] 200
[2026-06-13 12:30:27,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:27,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:30:27,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:30:27,729.729 INFO    ] No camera update needed
[2026-06-13 12:30:27,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:30:27,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:30:27,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:30:27,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:30:29,777.777 INFO    ] ================================================
[2026-06-13 12:30:29,793.793 INFO    ] Launching Daemon at Sat Jun 13 12:30:29 IST 2026
[2026-06-13 12:30:29,804.804 INFO    ] ================================================
[2026-06-13 12:30:30,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:30:30
[2026-06-13 12:30:30,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:30:30,613.613 INFO    ] Initializing speech engine...
[2026-06-13 12:30:30,624.624 INFO    ] 2026-06-13 12:30:30
[2026-06-13 12:30:30,814.814 INFO    ] 2026-06-13 12:30:30
[2026-06-13 12:30:30,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:30:31,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:30:31,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:30:31,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:30:31,283.283 INFO    ] time= 13/06/2026 12:30:31
[2026-06-13 12:30:31,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:30:31,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:30:31,478.478 INFO    ] No existing commands found in stream
[2026-06-13 12:30:36,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:30:36,493.493 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 12:30:37,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:30:37,627.627 INFO    ] Checking for system updates...
[2026-06-13 12:30:37,651.651 INFO    ] 200
[2026-06-13 12:30:37,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:37,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:37,684.684 INFO    ] No update needed
[2026-06-13 12:30:37,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 12:30:37,705.705 INFO    ] 200
[2026-06-13 12:30:37,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:37,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:30:37,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:37,768.768 INFO    ] No camera update needed
[2026-06-13 12:30:37,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:30:37,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:30:37,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:30:37,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:30:39,816.816 INFO    ] ================================================
[2026-06-13 12:30:39,831.831 INFO    ] Launching Daemon at Sat Jun 13 12:30:39 IST 2026
[2026-06-13 12:30:39,842.842 INFO    ] ================================================
[2026-06-13 12:30:40,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:30:40
[2026-06-13 12:30:40,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:30:40,689.689 INFO    ] Initializing speech engine...
[2026-06-13 12:30:40,693.693 INFO    ] 2026-06-13 12:30:40
[2026-06-13 12:30:40,902.902 INFO    ] 2026-06-13 12:30:40
[2026-06-13 12:30:40,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:30:41,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:30:41,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:30:41,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:30:41,299.299 INFO    ] time= 13/06/2026 12:30:41
[2026-06-13 12:30:41,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:30:41,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:30:41,421.421 INFO    ] No existing commands found in stream
[2026-06-13 12:30:46,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:30:46,435.435 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 12:30:48,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:30:48,173.173 INFO    ] Checking for system updates...
[2026-06-13 12:30:48,194.194 INFO    ] 200
[2026-06-13 12:30:48,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:48,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:48,228.228 INFO    ] No update needed
[2026-06-13 12:30:48,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 12:30:48,249.249 INFO    ] 200
[2026-06-13 12:30:48,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:30:48,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:30:48,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:30:48,328.328 INFO    ] No camera update needed
[2026-06-13 12:30:48,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:30:48,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:30:48,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:30:48,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:30:50,377.377 INFO    ] ================================================
[2026-06-13 12:30:50,392.392 INFO    ] Launching Daemon at Sat Jun 13 12:30:50 IST 2026
[2026-06-13 12:30:50,403.403 INFO    ] ================================================
[2026-06-13 12:30:50,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:30:50
[2026-06-13 12:30:51,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:30:51,263.263 INFO    ] Initializing speech engine...
[2026-06-13 12:30:51,269.269 INFO    ] 2026-06-13 12:30:51
[2026-06-13 12:30:51,478.478 INFO    ] 2026-06-13 12:30:51
[2026-06-13 12:30:51,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:30:51,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:30:51,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:30:51,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:30:51,884.884 INFO    ] time= 13/06/2026 12:30:51
[2026-06-13 12:30:51,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:30:51,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:30:52,002.002 INFO    ] No existing commands found in stream
[2026-06-13 12:30:57,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:30:57,020.020 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 12:31:00,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:31:00,491.491 INFO    ] Checking for system updates...
[2026-06-13 12:31:00,513.513 INFO    ] 200
[2026-06-13 12:31:00,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:00,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:00,546.546 INFO    ] No update needed
[2026-06-13 12:31:00,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 12:31:00,568.568 INFO    ] 200
[2026-06-13 12:31:00,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:00,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:31:00,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:00,630.630 INFO    ] No camera update needed
[2026-06-13 12:31:00,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:31:00,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:00,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:00,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:02,698.698 INFO    ] ================================================
[2026-06-13 12:31:02,707.707 INFO    ] Launching Daemon at Sat Jun 13 12:31:02 IST 2026
[2026-06-13 12:31:02,713.713 INFO    ] ================================================
[2026-06-13 12:31:03,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:03
[2026-06-13 12:31:03,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:03,469.469 INFO    ] Initializing speech engine...
[2026-06-13 12:31:03,475.475 INFO    ] 2026-06-13 12:31:03
[2026-06-13 12:31:03,681.681 INFO    ] 2026-06-13 12:31:03
[2026-06-13 12:31:03,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:03,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:31:03,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:31:04,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:31:04,088.088 INFO    ] time= 13/06/2026 12:31:04
[2026-06-13 12:31:04,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:31:04,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:31:04,206.206 INFO    ] No existing commands found in stream
[2026-06-13 12:31:09,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:31:09,218.218 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 12:31:09,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:31:09,565.565 INFO    ] Checking for system updates...
[2026-06-13 12:31:09,585.585 INFO    ] 200
[2026-06-13 12:31:09,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:09,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:31:09,621.621 INFO    ] No update needed
[2026-06-13 12:31:09,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 12:31:09,643.643 INFO    ] 200
[2026-06-13 12:31:09,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:09,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:31:09,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:31:09,715.715 INFO    ] No camera update needed
[2026-06-13 12:31:09,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:31:09,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:09,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:09,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:11,764.764 INFO    ] ================================================
[2026-06-13 12:31:11,782.782 INFO    ] Launching Daemon at Sat Jun 13 12:31:11 IST 2026
[2026-06-13 12:31:11,794.794 INFO    ] ================================================
[2026-06-13 12:31:12,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:12
[2026-06-13 12:31:12,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:12,602.602 INFO    ] Initializing speech engine...
[2026-06-13 12:31:12,610.610 INFO    ] 2026-06-13 12:31:12
[2026-06-13 12:31:12,822.822 INFO    ] 2026-06-13 12:31:12
[2026-06-13 12:31:12,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:13,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:31:13,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:31:13,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:31:13,242.242 INFO    ] time= 13/06/2026 12:31:13
[2026-06-13 12:31:13,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:31:13,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:31:13,343.343 INFO    ] No existing commands found in stream
[2026-06-13 12:31:18,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:31:18,354.354 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 12:31:20,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:31:20,698.698 INFO    ] Checking for system updates...
[2026-06-13 12:31:20,719.719 INFO    ] 200
[2026-06-13 12:31:20,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:20,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:31:20,753.753 INFO    ] No update needed
[2026-06-13 12:31:20,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 12:31:20,774.774 INFO    ] 200
[2026-06-13 12:31:20,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:20,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:31:20,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:20,837.837 INFO    ] No camera update needed
[2026-06-13 12:31:20,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:31:20,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:20,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:20,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:22,887.887 INFO    ] ================================================
[2026-06-13 12:31:22,903.903 INFO    ] Launching Daemon at Sat Jun 13 12:31:22 IST 2026
[2026-06-13 12:31:22,917.917 INFO    ] ================================================
[2026-06-13 12:31:23,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:23
[2026-06-13 12:31:23,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:23,704.704 INFO    ] Initializing speech engine...
[2026-06-13 12:31:23,712.712 INFO    ] 2026-06-13 12:31:23
[2026-06-13 12:31:23,920.920 INFO    ] 2026-06-13 12:31:23
[2026-06-13 12:31:23,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:24,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:31:24,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:31:24,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:31:24,308.308 INFO    ] time= 13/06/2026 12:31:24
[2026-06-13 12:31:24,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:31:24,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:31:24,441.441 INFO    ] No existing commands found in stream
[2026-06-13 12:31:29,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:31:29,450.450 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 12:31:31,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:31:31,006.006 INFO    ] Checking for system updates...
[2026-06-13 12:31:31,028.028 INFO    ] 200
[2026-06-13 12:31:31,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:31,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:31,065.065 INFO    ] No update needed
[2026-06-13 12:31:31,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 12:31:31,087.087 INFO    ] 200
[2026-06-13 12:31:31,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:31,114.114 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:31:31,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:31,160.160 INFO    ] No camera update needed
[2026-06-13 12:31:31,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:31:31,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:31,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:31,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:33,200.200 INFO    ] ================================================
[2026-06-13 12:31:33,215.215 INFO    ] Launching Daemon at Sat Jun 13 12:31:33 IST 2026
[2026-06-13 12:31:33,227.227 INFO    ] ================================================
[2026-06-13 12:31:33,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:33
[2026-06-13 12:31:33,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:34,095.095 INFO    ] Initializing speech engine...
[2026-06-13 12:31:34,107.107 INFO    ] 2026-06-13 12:31:34
[2026-06-13 12:31:34,315.315 INFO    ] 2026-06-13 12:31:34
[2026-06-13 12:31:34,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:34,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:31:34,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:31:34,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:31:34,719.719 INFO    ] time= 13/06/2026 12:31:34
[2026-06-13 12:31:34,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:31:34,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:31:34,835.835 INFO    ] No existing commands found in stream
[2026-06-13 12:31:39,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:31:39,848.848 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 12:31:43,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:31:43,145.145 INFO    ] Checking for system updates...
[2026-06-13 12:31:43,166.166 INFO    ] 200
[2026-06-13 12:31:43,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:43,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:43,202.202 INFO    ] No update needed
[2026-06-13 12:31:43,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 12:31:43,224.224 INFO    ] 200
[2026-06-13 12:31:43,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:31:43,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:31:43,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:31:43,286.286 INFO    ] No camera update needed
[2026-06-13 12:31:43,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:31:43,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:43,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:43,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:45,334.334 INFO    ] ================================================
[2026-06-13 12:31:45,350.350 INFO    ] Launching Daemon at Sat Jun 13 12:31:45 IST 2026
[2026-06-13 12:31:45,361.361 INFO    ] ================================================
[2026-06-13 12:31:45,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:45
[2026-06-13 12:31:46,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:46,168.168 INFO    ] Initializing speech engine...
[2026-06-13 12:31:46,174.174 INFO    ] 2026-06-13 12:31:46
[2026-06-13 12:31:46,405.405 INFO    ] 2026-06-13 12:31:46
[2026-06-13 12:31:46,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:46,496.496 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:31:46,541.541 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:31:46,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:46,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:46,603.603 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:31:46,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:48,717.717 INFO    ] ================================================
[2026-06-13 12:31:48,733.733 INFO    ] Launching Daemon at Sat Jun 13 12:31:48 IST 2026
[2026-06-13 12:31:48,744.744 INFO    ] ================================================
[2026-06-13 12:31:49,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:49
[2026-06-13 12:31:49,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:49,670.670 INFO    ] Initializing speech engine...
[2026-06-13 12:31:49,686.686 INFO    ] 2026-06-13 12:31:49
[2026-06-13 12:31:49,976.976 INFO    ] 2026-06-13 12:31:49
[2026-06-13 12:31:50,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:50,142.142 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 12:31:50,310.310 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 12:31:50,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:31:50,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:31:50,359.359 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 12:31:50,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:31:52,471.471 INFO    ] ================================================
[2026-06-13 12:31:52,487.487 INFO    ] Launching Daemon at Sat Jun 13 12:31:52 IST 2026
[2026-06-13 12:31:52,499.499 INFO    ] ================================================
[2026-06-13 12:31:52,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:31:52
[2026-06-13 12:31:53,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:31:53,340.340 INFO    ] Initializing speech engine...
[2026-06-13 12:31:53,350.350 INFO    ] 2026-06-13 12:31:53
[2026-06-13 12:31:53,557.557 INFO    ] 2026-06-13 12:31:53
[2026-06-13 12:31:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:31:53,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:31:53,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:31:53,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:31:53,963.963 INFO    ] time= 13/06/2026 12:31:53
[2026-06-13 12:31:54,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:31:54,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:31:54,074.074 INFO    ] No existing commands found in stream
[2026-06-13 12:31:59,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:31:59,086.086 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 12:32:00,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:32:00,217.217 INFO    ] Checking for system updates...
[2026-06-13 12:32:00,238.238 INFO    ] 200
[2026-06-13 12:32:00,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:00,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:32:00,271.271 INFO    ] No update needed
[2026-06-13 12:32:00,273.273 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:00,294.294 INFO    ] 200
[2026-06-13 12:32:00,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:00,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:00,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:32:00,465.465 INFO    ] No camera update needed
[2026-06-13 12:32:00,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:00,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:00,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:00,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:32:02,508.508 INFO    ] ================================================
[2026-06-13 12:32:02,522.522 INFO    ] Launching Daemon at Sat Jun 13 12:32:02 IST 2026
[2026-06-13 12:32:02,532.532 INFO    ] ================================================
[2026-06-13 12:32:02,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:32:02
[2026-06-13 12:32:03,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:32:03,379.379 INFO    ] Initializing speech engine...
[2026-06-13 12:32:03,384.384 INFO    ] 2026-06-13 12:32:03
[2026-06-13 12:32:03,589.589 INFO    ] 2026-06-13 12:32:03
[2026-06-13 12:32:03,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:32:03,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:32:03,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:32:03,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:32:03,996.996 INFO    ] time= 13/06/2026 12:32:03
[2026-06-13 12:32:04,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:32:04,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:32:04,106.106 INFO    ] No existing commands found in stream
[2026-06-13 12:32:09,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:32:09,120.120 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 12:32:13,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:32:13,033.033 INFO    ] Checking for system updates...
[2026-06-13 12:32:13,054.054 INFO    ] 200
[2026-06-13 12:32:13,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:13,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:13,089.089 INFO    ] No update needed
[2026-06-13 12:32:13,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:13,111.111 INFO    ] 200
[2026-06-13 12:32:13,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:13,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:13,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:13,178.178 INFO    ] No camera update needed
[2026-06-13 12:32:13,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:13,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:13,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:13,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:32:15,226.226 INFO    ] ================================================
[2026-06-13 12:32:15,242.242 INFO    ] Launching Daemon at Sat Jun 13 12:32:15 IST 2026
[2026-06-13 12:32:15,253.253 INFO    ] ================================================
[2026-06-13 12:32:15,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:32:15
[2026-06-13 12:32:15,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:32:16,037.037 INFO    ] Initializing speech engine...
[2026-06-13 12:32:16,051.051 INFO    ] 2026-06-13 12:32:16
[2026-06-13 12:32:16,270.270 INFO    ] 2026-06-13 12:32:16
[2026-06-13 12:32:16,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:32:16,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:32:16,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:32:16,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:32:16,693.693 INFO    ] time= 13/06/2026 12:32:16
[2026-06-13 12:32:16,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:32:16,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:32:16,824.824 INFO    ] No existing commands found in stream
[2026-06-13 12:32:21,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:32:21,837.837 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 12:32:23,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:32:23,904.904 INFO    ] Checking for system updates...
[2026-06-13 12:32:23,927.927 INFO    ] 200
[2026-06-13 12:32:23,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:23,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:32:23,968.968 INFO    ] No update needed
[2026-06-13 12:32:23,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:23,991.991 INFO    ] 200
[2026-06-13 12:32:23,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:24,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:24,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:32:24,069.069 INFO    ] No camera update needed
[2026-06-13 12:32:24,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:24,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:24,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:24,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:32:26,119.119 INFO    ] ================================================
[2026-06-13 12:32:26,135.135 INFO    ] Launching Daemon at Sat Jun 13 12:32:26 IST 2026
[2026-06-13 12:32:26,147.147 INFO    ] ================================================
[2026-06-13 12:32:26,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:32:26
[2026-06-13 12:32:26,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:32:26,930.930 INFO    ] Initializing speech engine...
[2026-06-13 12:32:26,934.934 INFO    ] 2026-06-13 12:32:26
[2026-06-13 12:32:27,134.134 INFO    ] 2026-06-13 12:32:27
[2026-06-13 12:32:27,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:32:27,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:32:27,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:32:27,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:32:27,598.598 INFO    ] time= 13/06/2026 12:32:27
[2026-06-13 12:32:27,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:32:27,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:32:27,736.736 INFO    ] No existing commands found in stream
[2026-06-13 12:32:32,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:32:32,748.748 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 12:32:34,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:32:34,658.658 INFO    ] Checking for system updates...
[2026-06-13 12:32:34,680.680 INFO    ] 200
[2026-06-13 12:32:34,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:34,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:34,713.713 INFO    ] No update needed
[2026-06-13 12:32:34,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:34,734.734 INFO    ] 200
[2026-06-13 12:32:34,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:34,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:34,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:32:34,806.806 INFO    ] No camera update needed
[2026-06-13 12:32:34,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:34,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:34,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:34,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:32:36,854.854 INFO    ] ================================================
[2026-06-13 12:32:36,870.870 INFO    ] Launching Daemon at Sat Jun 13 12:32:36 IST 2026
[2026-06-13 12:32:36,881.881 INFO    ] ================================================
[2026-06-13 12:32:37,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:32:37
[2026-06-13 12:32:37,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:32:37,665.665 INFO    ] Initializing speech engine...
[2026-06-13 12:32:37,673.673 INFO    ] 2026-06-13 12:32:37
[2026-06-13 12:32:37,878.878 INFO    ] 2026-06-13 12:32:37
[2026-06-13 12:32:37,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:32:38,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:32:38,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:32:38,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:32:38,286.286 INFO    ] time= 13/06/2026 12:32:38
[2026-06-13 12:32:38,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:32:38,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:32:38,397.397 INFO    ] No existing commands found in stream
[2026-06-13 12:32:43,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:32:43,409.409 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 12:32:46,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:32:46,673.673 INFO    ] Checking for system updates...
[2026-06-13 12:32:46,694.694 INFO    ] 200
[2026-06-13 12:32:46,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:46,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:46,731.731 INFO    ] No update needed
[2026-06-13 12:32:46,732.732 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:46,756.756 INFO    ] 200
[2026-06-13 12:32:46,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:46,785.785 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:46,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:46,828.828 INFO    ] No camera update needed
[2026-06-13 12:32:46,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:46,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:46,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:46,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:32:48,878.878 INFO    ] ================================================
[2026-06-13 12:32:48,893.893 INFO    ] Launching Daemon at Sat Jun 13 12:32:48 IST 2026
[2026-06-13 12:32:48,904.904 INFO    ] ================================================
[2026-06-13 12:32:49,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:32:49
[2026-06-13 12:32:49,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:32:49,766.766 INFO    ] Initializing speech engine...
[2026-06-13 12:32:49,777.777 INFO    ] 2026-06-13 12:32:49
[2026-06-13 12:32:49,988.988 INFO    ] 2026-06-13 12:32:49
[2026-06-13 12:32:50,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:32:50,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:32:50,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:32:50,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:32:50,390.390 INFO    ] time= 13/06/2026 12:32:50
[2026-06-13 12:32:50,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:32:50,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:32:50,507.507 INFO    ] No existing commands found in stream
[2026-06-13 12:32:55,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:32:55,521.521 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 12:32:59,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:32:59,799.799 INFO    ] Checking for system updates...
[2026-06-13 12:32:59,821.821 INFO    ] 200
[2026-06-13 12:32:59,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:59,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:59,855.855 INFO    ] No update needed
[2026-06-13 12:32:59,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 12:32:59,877.877 INFO    ] 200
[2026-06-13 12:32:59,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:32:59,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:32:59,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:32:59,953.953 INFO    ] No camera update needed
[2026-06-13 12:32:59,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:32:59,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:32:59,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:32:59,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:02,997.997 INFO    ] ================================================
[2026-06-13 12:33:02,006.006 INFO    ] Launching Daemon at Sat Jun 13 12:33:02 IST 2026
[2026-06-13 12:33:02,013.013 INFO    ] ================================================
[2026-06-13 12:33:02,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:02
[2026-06-13 12:33:03,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:03,288.288 INFO    ] Initializing speech engine...
[2026-06-13 12:33:03,293.293 INFO    ] 2026-06-13 12:33:03
[2026-06-13 12:33:03,542.542 INFO    ] 2026-06-13 12:33:03
[2026-06-13 12:33:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:33:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:33:03,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:33:03,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:33:03,997.997 INFO    ] time= 13/06/2026 12:33:03
[2026-06-13 12:33:04,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:33:04,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:33:04,164.164 INFO    ] No existing commands found in stream
[2026-06-13 12:33:09,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:33:09,179.179 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 12:33:12,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:33:12,477.477 INFO    ] Checking for system updates...
[2026-06-13 12:33:12,498.498 INFO    ] 200
[2026-06-13 12:33:12,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:12,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:33:12,532.532 INFO    ] No update needed
[2026-06-13 12:33:12,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 12:33:12,553.553 INFO    ] 200
[2026-06-13 12:33:12,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:12,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:33:12,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:33:12,616.616 INFO    ] No camera update needed
[2026-06-13 12:33:12,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:33:12,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:33:12,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:33:12,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:14,666.666 INFO    ] ================================================
[2026-06-13 12:33:14,682.682 INFO    ] Launching Daemon at Sat Jun 13 12:33:14 IST 2026
[2026-06-13 12:33:14,694.694 INFO    ] ================================================
[2026-06-13 12:33:15,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:15
[2026-06-13 12:33:15,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:15,537.537 INFO    ] Initializing speech engine...
[2026-06-13 12:33:15,544.544 INFO    ] 2026-06-13 12:33:15
[2026-06-13 12:33:15,750.750 INFO    ] 2026-06-13 12:33:15
[2026-06-13 12:33:15,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:33:15,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:33:15,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:33:16,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:33:16,171.171 INFO    ] time= 13/06/2026 12:33:16
[2026-06-13 12:33:16,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:33:16,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:33:16,269.269 INFO    ] No existing commands found in stream
[2026-06-13 12:33:21,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:33:21,287.287 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 12:33:21,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:33:21,719.719 INFO    ] Checking for system updates...
[2026-06-13 12:33:21,741.741 INFO    ] 200
[2026-06-13 12:33:21,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:21,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:21,777.777 INFO    ] No update needed
[2026-06-13 12:33:21,778.778 INFO    ] Checking for camera pi updates...
[2026-06-13 12:33:21,801.801 INFO    ] 200
[2026-06-13 12:33:21,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:21,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:33:21,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:21,866.866 INFO    ] No camera update needed
[2026-06-13 12:33:21,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:33:21,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:33:21,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:33:21,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:23,914.914 INFO    ] ================================================
[2026-06-13 12:33:23,930.930 INFO    ] Launching Daemon at Sat Jun 13 12:33:23 IST 2026
[2026-06-13 12:33:23,941.941 INFO    ] ================================================
[2026-06-13 12:33:24,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:24
[2026-06-13 12:33:24,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:24,815.815 INFO    ] Initializing speech engine...
[2026-06-13 12:33:24,825.825 INFO    ] 2026-06-13 12:33:24
[2026-06-13 12:33:25,120.120 INFO    ] 2026-06-13 12:33:25
[2026-06-13 12:33:25,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:33:25,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:33:25,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:33:25,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:33:25,553.553 INFO    ] time= 13/06/2026 12:33:25
[2026-06-13 12:33:25,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:33:25,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:33:25,752.752 INFO    ] No existing commands found in stream
[2026-06-13 12:33:30,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:33:30,788.788 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 12:33:33,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:33:33,098.098 INFO    ] Checking for system updates...
[2026-06-13 12:33:33,119.119 INFO    ] 200
[2026-06-13 12:33:33,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:33,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:33,155.155 INFO    ] No update needed
[2026-06-13 12:33:33,157.157 INFO    ] Checking for camera pi updates...
[2026-06-13 12:33:33,178.178 INFO    ] 200
[2026-06-13 12:33:33,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:33,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:33:33,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:33,247.247 INFO    ] No camera update needed
[2026-06-13 12:33:33,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:33:33,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:33:33,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:33:33,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:35,297.297 INFO    ] ================================================
[2026-06-13 12:33:35,312.312 INFO    ] Launching Daemon at Sat Jun 13 12:33:35 IST 2026
[2026-06-13 12:33:35,324.324 INFO    ] ================================================
[2026-06-13 12:33:35,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:35
[2026-06-13 12:33:36,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:36,262.262 INFO    ] Initializing speech engine...
[2026-06-13 12:33:36,276.276 INFO    ] 2026-06-13 12:33:36
[2026-06-13 12:33:36,567.567 INFO    ] 2026-06-13 12:33:36
[2026-06-13 12:33:36,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:33:36,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:33:36,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:33:36,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:33:36,909.909 INFO    ] time= 13/06/2026 12:33:36
[2026-06-13 12:33:36,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:33:36,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:33:37,022.022 INFO    ] No existing commands found in stream
[2026-06-13 12:33:42,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:33:42,037.037 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 12:33:43,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:33:43,968.968 INFO    ] Checking for system updates...
[2026-06-13 12:33:43,989.989 INFO    ] 200
[2026-06-13 12:33:43,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:44,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:44,023.023 INFO    ] No update needed
[2026-06-13 12:33:44,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 12:33:44,045.045 INFO    ] 200
[2026-06-13 12:33:44,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:44,070.070 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:33:44,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:44,114.114 INFO    ] No camera update needed
[2026-06-13 12:33:44,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:33:44,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:33:44,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:33:44,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:46,163.163 INFO    ] ================================================
[2026-06-13 12:33:46,178.178 INFO    ] Launching Daemon at Sat Jun 13 12:33:46 IST 2026
[2026-06-13 12:33:46,190.190 INFO    ] ================================================
[2026-06-13 12:33:46,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:46
[2026-06-13 12:33:46,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:47,033.033 INFO    ] Initializing speech engine...
[2026-06-13 12:33:47,038.038 INFO    ] 2026-06-13 12:33:47
[2026-06-13 12:33:47,271.271 INFO    ] 2026-06-13 12:33:47
[2026-06-13 12:33:47,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:33:47,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:33:47,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:33:47,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:33:47,740.740 INFO    ] time= 13/06/2026 12:33:47
[2026-06-13 12:33:47,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:33:47,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:33:47,883.883 INFO    ] No existing commands found in stream
[2026-06-13 12:33:52,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:33:52,902.902 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 12:33:56,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:33:56,695.695 INFO    ] Checking for system updates...
[2026-06-13 12:33:56,718.718 INFO    ] 200
[2026-06-13 12:33:56,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:56,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:56,752.752 INFO    ] No update needed
[2026-06-13 12:33:56,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 12:33:56,774.774 INFO    ] 200
[2026-06-13 12:33:56,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:33:56,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:33:56,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:33:56,839.839 INFO    ] No camera update needed
[2026-06-13 12:33:56,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:33:56,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:33:56,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:33:56,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:33:58,888.888 INFO    ] ================================================
[2026-06-13 12:33:58,905.905 INFO    ] Launching Daemon at Sat Jun 13 12:33:58 IST 2026
[2026-06-13 12:33:58,916.916 INFO    ] ================================================
[2026-06-13 12:33:59,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:33:59
[2026-06-13 12:33:59,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:33:59,692.692 INFO    ] Initializing speech engine...
[2026-06-13 12:33:59,697.697 INFO    ] 2026-06-13 12:33:59
[2026-06-13 12:33:59,900.900 INFO    ] 2026-06-13 12:33:59
[2026-06-13 12:33:59,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:00,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:00,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:00,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:00,303.303 INFO    ] time= 13/06/2026 12:34:00
[2026-06-13 12:34:00,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:00,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:00,413.413 INFO    ] No existing commands found in stream
[2026-06-13 12:34:05,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:34:05,423.423 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 12:34:09,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:34:09,451.451 INFO    ] Checking for system updates...
[2026-06-13 12:34:09,471.471 INFO    ] 200
[2026-06-13 12:34:09,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:09,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:09,504.504 INFO    ] No update needed
[2026-06-13 12:34:09,505.505 INFO    ] Checking for camera pi updates...
[2026-06-13 12:34:09,525.525 INFO    ] 200
[2026-06-13 12:34:09,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:09,550.550 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:34:09,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:09,596.596 INFO    ] No camera update needed
[2026-06-13 12:34:09,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:34:09,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:34:09,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:34:09,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:34:11,643.643 INFO    ] ================================================
[2026-06-13 12:34:11,659.659 INFO    ] Launching Daemon at Sat Jun 13 12:34:11 IST 2026
[2026-06-13 12:34:11,670.670 INFO    ] ================================================
[2026-06-13 12:34:12,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:34:12
[2026-06-13 12:34:12,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:34:12,940.940 INFO    ] Initializing speech engine...
[2026-06-13 12:34:12,945.945 INFO    ] 2026-06-13 12:34:12
[2026-06-13 12:34:13,150.150 INFO    ] 2026-06-13 12:34:13
[2026-06-13 12:34:13,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:13,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:13,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:13,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:13,563.563 INFO    ] time= 13/06/2026 12:34:13
[2026-06-13 12:34:13,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:13,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:13,663.663 INFO    ] No existing commands found in stream
[2026-06-13 12:34:18,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:34:18,680.680 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 12:34:21,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:34:21,374.374 INFO    ] Checking for system updates...
[2026-06-13 12:34:21,396.396 INFO    ] 200
[2026-06-13 12:34:21,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:21,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:34:21,431.431 INFO    ] No update needed
[2026-06-13 12:34:21,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 12:34:21,451.451 INFO    ] 200
[2026-06-13 12:34:21,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:21,478.478 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:34:21,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:21,516.516 INFO    ] No camera update needed
[2026-06-13 12:34:21,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:34:21,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:34:21,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:34:21,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:34:23,564.564 INFO    ] ================================================
[2026-06-13 12:34:23,580.580 INFO    ] Launching Daemon at Sat Jun 13 12:34:23 IST 2026
[2026-06-13 12:34:23,590.590 INFO    ] ================================================
[2026-06-13 12:34:23,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:34:23
[2026-06-13 12:34:24,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:34:24,411.411 INFO    ] Initializing speech engine...
[2026-06-13 12:34:24,416.416 INFO    ] 2026-06-13 12:34:24
[2026-06-13 12:34:24,621.621 INFO    ] 2026-06-13 12:34:24
[2026-06-13 12:34:24,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:25,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:25,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:25,453.453 INFO    ] time= 13/06/2026 12:34:25
[2026-06-13 12:34:25,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:25,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:25,526.526 INFO    ] No existing commands found in stream
[2026-06-13 12:34:30,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:34:30,538.538 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 12:34:31,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:34:31,595.595 INFO    ] Checking for system updates...
[2026-06-13 12:34:31,619.619 INFO    ] 200
[2026-06-13 12:34:31,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:31,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:34:31,660.660 INFO    ] No update needed
[2026-06-13 12:34:31,662.662 INFO    ] Checking for camera pi updates...
[2026-06-13 12:34:31,687.687 INFO    ] 200
[2026-06-13 12:34:31,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:31,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:34:31,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:34:31,755.755 INFO    ] No camera update needed
[2026-06-13 12:34:31,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:34:31,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:34:31,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:34:31,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:34:33,810.810 INFO    ] ================================================
[2026-06-13 12:34:33,825.825 INFO    ] Launching Daemon at Sat Jun 13 12:34:33 IST 2026
[2026-06-13 12:34:33,836.836 INFO    ] ================================================
[2026-06-13 12:34:34,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:34:34
[2026-06-13 12:34:34,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:34:34,691.691 INFO    ] Initializing speech engine...
[2026-06-13 12:34:34,696.696 INFO    ] 2026-06-13 12:34:34
[2026-06-13 12:34:34,919.919 INFO    ] 2026-06-13 12:34:34
[2026-06-13 12:34:34,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:35,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:35,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:35,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:35,352.352 INFO    ] time= 13/06/2026 12:34:35
[2026-06-13 12:34:35,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:35,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:35,587.587 INFO    ] No existing commands found in stream
[2026-06-13 12:34:40,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:34:40,619.619 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 12:34:42,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:34:42,014.014 INFO    ] Checking for system updates...
[2026-06-13 12:34:42,035.035 INFO    ] 200
[2026-06-13 12:34:42,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:42,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:42,069.069 INFO    ] No update needed
[2026-06-13 12:34:42,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 12:34:42,091.091 INFO    ] 200
[2026-06-13 12:34:42,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:42,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:34:42,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:42,158.158 INFO    ] No camera update needed
[2026-06-13 12:34:42,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:34:42,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:34:42,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:34:42,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:34:44,208.208 INFO    ] ================================================
[2026-06-13 12:34:44,223.223 INFO    ] Launching Daemon at Sat Jun 13 12:34:44 IST 2026
[2026-06-13 12:34:44,234.234 INFO    ] ================================================
[2026-06-13 12:34:44,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:34:44
[2026-06-13 12:34:44,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:34:45,051.051 INFO    ] Initializing speech engine...
[2026-06-13 12:34:45,056.056 INFO    ] 2026-06-13 12:34:45
[2026-06-13 12:34:45,262.262 INFO    ] 2026-06-13 12:34:45
[2026-06-13 12:34:45,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:45,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:45,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:45,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:45,675.675 INFO    ] time= 13/06/2026 12:34:45
[2026-06-13 12:34:45,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:45,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:45,781.781 INFO    ] No existing commands found in stream
[2026-06-13 12:34:50,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:34:50,794.794 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 12:34:54,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:34:54,014.014 INFO    ] Checking for system updates...
[2026-06-13 12:34:54,035.035 INFO    ] 200
[2026-06-13 12:34:54,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:54,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:54,069.069 INFO    ] No update needed
[2026-06-13 12:34:54,070.070 INFO    ] Checking for camera pi updates...
[2026-06-13 12:34:54,090.090 INFO    ] 200
[2026-06-13 12:34:54,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:34:54,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:34:54,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:34:54,157.157 INFO    ] No camera update needed
[2026-06-13 12:34:54,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:34:54,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:34:54,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:34:54,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:34:56,204.204 INFO    ] ================================================
[2026-06-13 12:34:56,220.220 INFO    ] Launching Daemon at Sat Jun 13 12:34:56 IST 2026
[2026-06-13 12:34:56,236.236 INFO    ] ================================================
[2026-06-13 12:34:56,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:34:56
[2026-06-13 12:34:56,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:34:57,045.045 INFO    ] Initializing speech engine...
[2026-06-13 12:34:57,050.050 INFO    ] 2026-06-13 12:34:57
[2026-06-13 12:34:57,253.253 INFO    ] 2026-06-13 12:34:57
[2026-06-13 12:34:57,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:34:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:34:57,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:34:57,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:34:57,658.658 INFO    ] time= 13/06/2026 12:34:57
[2026-06-13 12:34:57,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:34:57,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:34:57,770.770 INFO    ] No existing commands found in stream
[2026-06-13 12:35:02,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:35:02,780.780 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 12:35:06,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:35:06,010.010 INFO    ] Checking for system updates...
[2026-06-13 12:35:06,030.030 INFO    ] 200
[2026-06-13 12:35:06,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:06,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:06,064.064 INFO    ] No update needed
[2026-06-13 12:35:06,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 12:35:06,084.084 INFO    ] 200
[2026-06-13 12:35:06,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:06,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:35:06,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:06,152.152 INFO    ] No camera update needed
[2026-06-13 12:35:06,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:35:06,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:35:06,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:35:06,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:35:08,201.201 INFO    ] ================================================
[2026-06-13 12:35:08,216.216 INFO    ] Launching Daemon at Sat Jun 13 12:35:08 IST 2026
[2026-06-13 12:35:08,227.227 INFO    ] ================================================
[2026-06-13 12:35:08,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:35:08
[2026-06-13 12:35:08,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:35:09,027.027 INFO    ] Initializing speech engine...
[2026-06-13 12:35:09,035.035 INFO    ] 2026-06-13 12:35:09
[2026-06-13 12:35:09,245.245 INFO    ] 2026-06-13 12:35:09
[2026-06-13 12:35:09,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:35:09,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:35:09,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:35:09,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:35:09,650.650 INFO    ] time= 13/06/2026 12:35:09
[2026-06-13 12:35:09,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:35:09,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:35:09,760.760 INFO    ] No existing commands found in stream
[2026-06-13 12:35:14,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:35:14,777.777 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 12:35:17,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:35:17,625.625 INFO    ] Checking for system updates...
[2026-06-13 12:35:17,647.647 INFO    ] 200
[2026-06-13 12:35:17,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:17,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:35:17,681.681 INFO    ] No update needed
[2026-06-13 12:35:17,682.682 INFO    ] Checking for camera pi updates...
[2026-06-13 12:35:17,703.703 INFO    ] 200
[2026-06-13 12:35:17,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:17,728.728 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:35:17,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:35:17,773.773 INFO    ] No camera update needed
[2026-06-13 12:35:17,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:35:17,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:35:17,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:35:17,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:35:19,822.822 INFO    ] ================================================
[2026-06-13 12:35:19,837.837 INFO    ] Launching Daemon at Sat Jun 13 12:35:19 IST 2026
[2026-06-13 12:35:19,848.848 INFO    ] ================================================
[2026-06-13 12:35:20,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:35:20
[2026-06-13 12:35:20,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:35:20,669.669 INFO    ] Initializing speech engine...
[2026-06-13 12:35:20,674.674 INFO    ] 2026-06-13 12:35:20
[2026-06-13 12:35:20,876.876 INFO    ] 2026-06-13 12:35:20
[2026-06-13 12:35:20,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:35:21,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:35:21,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:35:21,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:35:21,225.225 INFO    ] time= 13/06/2026 12:35:21
[2026-06-13 12:35:21,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:35:21,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:35:21,390.390 INFO    ] No existing commands found in stream
[2026-06-13 12:35:26,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:35:26,401.401 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 12:35:27,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:35:27,939.939 INFO    ] Checking for system updates...
[2026-06-13 12:35:27,960.960 INFO    ] 200
[2026-06-13 12:35:27,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:27,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:27,993.993 INFO    ] No update needed
[2026-06-13 12:35:27,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 12:35:28,013.013 INFO    ] 200
[2026-06-13 12:35:28,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:28,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:35:28,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:28,077.077 INFO    ] No camera update needed
[2026-06-13 12:35:28,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:35:28,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:35:28,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:35:28,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:35:30,124.124 INFO    ] ================================================
[2026-06-13 12:35:30,140.140 INFO    ] Launching Daemon at Sat Jun 13 12:35:30 IST 2026
[2026-06-13 12:35:30,150.150 INFO    ] ================================================
[2026-06-13 12:35:30,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:35:30
[2026-06-13 12:35:30,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:35:30,923.923 INFO    ] Initializing speech engine...
[2026-06-13 12:35:30,928.928 INFO    ] 2026-06-13 12:35:30
[2026-06-13 12:35:31,137.137 INFO    ] 2026-06-13 12:35:31
[2026-06-13 12:35:31,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:35:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:35:31,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:35:31,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:35:31,409.409 INFO    ] time= 13/06/2026 12:35:31
[2026-06-13 12:35:31,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:35:31,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:35:31,496.496 INFO    ] No existing commands found in stream
[2026-06-13 12:35:36,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:35:36,530.530 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 12:35:40,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:35:40,428.428 INFO    ] Checking for system updates...
[2026-06-13 12:35:40,449.449 INFO    ] 200
[2026-06-13 12:35:40,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:40,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:40,486.486 INFO    ] No update needed
[2026-06-13 12:35:40,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 12:35:40,507.507 INFO    ] 200
[2026-06-13 12:35:40,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:40,534.534 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:35:40,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:40,575.575 INFO    ] No camera update needed
[2026-06-13 12:35:40,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:35:40,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:35:40,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:35:40,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:35:42,623.623 INFO    ] ================================================
[2026-06-13 12:35:42,638.638 INFO    ] Launching Daemon at Sat Jun 13 12:35:42 IST 2026
[2026-06-13 12:35:42,650.650 INFO    ] ================================================
[2026-06-13 12:35:43,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:35:43
[2026-06-13 12:35:43,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:35:43,452.452 INFO    ] Initializing speech engine...
[2026-06-13 12:35:43,456.456 INFO    ] 2026-06-13 12:35:43
[2026-06-13 12:35:43,665.665 INFO    ] 2026-06-13 12:35:43
[2026-06-13 12:35:43,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:35:43,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:35:43,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:35:44,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:35:44,067.067 INFO    ] time= 13/06/2026 12:35:44
[2026-06-13 12:35:44,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:35:44,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:35:44,251.251 INFO    ] No existing commands found in stream
[2026-06-13 12:35:49,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:35:49,264.264 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 12:35:53,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:35:53,066.066 INFO    ] Checking for system updates...
[2026-06-13 12:35:53,088.088 INFO    ] 200
[2026-06-13 12:35:53,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:53,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:53,122.122 INFO    ] No update needed
[2026-06-13 12:35:53,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 12:35:53,144.144 INFO    ] 200
[2026-06-13 12:35:53,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:35:53,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:35:53,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:35:53,205.205 INFO    ] No camera update needed
[2026-06-13 12:35:53,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:35:53,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:35:53,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:35:53,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:35:55,255.255 INFO    ] ================================================
[2026-06-13 12:35:55,270.270 INFO    ] Launching Daemon at Sat Jun 13 12:35:55 IST 2026
[2026-06-13 12:35:55,281.281 INFO    ] ================================================
[2026-06-13 12:35:55,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:35:55
[2026-06-13 12:35:55,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:35:56,097.097 INFO    ] Initializing speech engine...
[2026-06-13 12:35:56,101.101 INFO    ] 2026-06-13 12:35:56
[2026-06-13 12:35:56,296.296 INFO    ] 2026-06-13 12:35:56
[2026-06-13 12:35:56,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:35:56,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:35:56,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:35:56,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:35:56,585.585 INFO    ] time= 13/06/2026 12:35:56
[2026-06-13 12:35:56,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:35:56,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:35:56,683.683 INFO    ] No existing commands found in stream
[2026-06-13 12:36:01,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:01,722.722 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 12:36:03,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:36:03,097.097 INFO    ] Checking for system updates...
[2026-06-13 12:36:03,154.154 INFO    ] 200
[2026-06-13 12:36:03,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:03,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:36:03,238.238 INFO    ] No update needed
[2026-06-13 12:36:03,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 12:36:03,282.282 INFO    ] 200
[2026-06-13 12:36:03,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:03,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:36:03,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:36:03,482.482 INFO    ] No camera update needed
[2026-06-13 12:36:03,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:36:03,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:36:03,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:36:03,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:36:05,549.549 INFO    ] ================================================
[2026-06-13 12:36:05,564.564 INFO    ] Launching Daemon at Sat Jun 13 12:36:05 IST 2026
[2026-06-13 12:36:05,575.575 INFO    ] ================================================
[2026-06-13 12:36:05,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:36:05
[2026-06-13 12:36:06,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:36:06,406.406 INFO    ] Initializing speech engine...
[2026-06-13 12:36:06,417.417 INFO    ] 2026-06-13 12:36:06
[2026-06-13 12:36:06,619.619 INFO    ] 2026-06-13 12:36:06
[2026-06-13 12:36:06,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:36:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:36:06,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:36:06,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:36:06,862.862 INFO    ] time= 13/06/2026 12:36:06
[2026-06-13 12:36:06,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:36:06,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:36:06,915.915 INFO    ] No existing commands found in stream
[2026-06-13 12:36:11,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:11,928.928 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 12:36:12,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:36:12,290.290 INFO    ] Checking for system updates...
[2026-06-13 12:36:12,311.311 INFO    ] 200
[2026-06-13 12:36:12,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:12,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:36:12,348.348 INFO    ] No update needed
[2026-06-13 12:36:12,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 12:36:12,368.368 INFO    ] 200
[2026-06-13 12:36:12,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:12,393.393 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:36:12,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:12,440.440 INFO    ] No camera update needed
[2026-06-13 12:36:12,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:36:12,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:36:12,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:36:12,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:36:14,488.488 INFO    ] ================================================
[2026-06-13 12:36:14,503.503 INFO    ] Launching Daemon at Sat Jun 13 12:36:14 IST 2026
[2026-06-13 12:36:14,514.514 INFO    ] ================================================
[2026-06-13 12:36:14,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:36:14
[2026-06-13 12:36:15,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:36:15,315.315 INFO    ] Initializing speech engine...
[2026-06-13 12:36:15,320.320 INFO    ] 2026-06-13 12:36:15
[2026-06-13 12:36:15,524.524 INFO    ] 2026-06-13 12:36:15
[2026-06-13 12:36:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:36:15,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:36:15,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:36:15,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:36:15,935.935 INFO    ] time= 13/06/2026 12:36:15
[2026-06-13 12:36:15,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:36:15,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:36:16,040.040 INFO    ] No existing commands found in stream
[2026-06-13 12:36:21,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:21,052.052 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 12:36:24,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:36:24,444.444 INFO    ] Checking for system updates...
[2026-06-13 12:36:24,465.465 INFO    ] 200
[2026-06-13 12:36:24,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:24,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:24,499.499 INFO    ] No update needed
[2026-06-13 12:36:24,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 12:36:24,521.521 INFO    ] 200
[2026-06-13 12:36:24,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:24,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:36:24,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:24,594.594 INFO    ] No camera update needed
[2026-06-13 12:36:24,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:36:24,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:36:24,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:36:24,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:36:26,640.640 INFO    ] ================================================
[2026-06-13 12:36:26,655.655 INFO    ] Launching Daemon at Sat Jun 13 12:36:26 IST 2026
[2026-06-13 12:36:26,666.666 INFO    ] ================================================
[2026-06-13 12:36:27,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:36:27
[2026-06-13 12:36:27,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:36:27,490.490 INFO    ] Initializing speech engine...
[2026-06-13 12:36:27,500.500 INFO    ] 2026-06-13 12:36:27
[2026-06-13 12:36:27,707.707 INFO    ] 2026-06-13 12:36:27
[2026-06-13 12:36:27,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:36:27,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:36:27,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:36:28,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:36:28,100.100 INFO    ] time= 13/06/2026 12:36:28
[2026-06-13 12:36:28,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:36:28,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:36:28,224.224 INFO    ] No existing commands found in stream
[2026-06-13 12:36:33,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:33,238.238 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 12:36:37,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:36:37,300.300 INFO    ] Checking for system updates...
[2026-06-13 12:36:37,321.321 INFO    ] 200
[2026-06-13 12:36:37,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:37,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:37,354.354 INFO    ] No update needed
[2026-06-13 12:36:37,355.355 INFO    ] Checking for camera pi updates...
[2026-06-13 12:36:37,376.376 INFO    ] 200
[2026-06-13 12:36:37,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:37,401.401 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:36:37,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:37,442.442 INFO    ] No camera update needed
[2026-06-13 12:36:37,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:36:37,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:36:37,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:36:37,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:36:39,488.488 INFO    ] ================================================
[2026-06-13 12:36:39,504.504 INFO    ] Launching Daemon at Sat Jun 13 12:36:39 IST 2026
[2026-06-13 12:36:39,515.515 INFO    ] ================================================
[2026-06-13 12:36:39,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:36:39
[2026-06-13 12:36:40,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:36:40,346.346 INFO    ] Initializing speech engine...
[2026-06-13 12:36:40,352.352 INFO    ] 2026-06-13 12:36:40
[2026-06-13 12:36:40,576.576 INFO    ] 2026-06-13 12:36:40
[2026-06-13 12:36:40,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:36:40,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:36:40,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:36:40,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:36:40,955.955 INFO    ] time= 13/06/2026 12:36:40
[2026-06-13 12:36:41,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:36:41,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:36:41,147.147 INFO    ] No existing commands found in stream
[2026-06-13 12:36:46,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:46,162.162 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 12:36:49,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:36:49,719.719 INFO    ] Checking for system updates...
[2026-06-13 12:36:49,741.741 INFO    ] 200
[2026-06-13 12:36:49,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:49,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:49,774.774 INFO    ] No update needed
[2026-06-13 12:36:49,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 12:36:49,797.797 INFO    ] 200
[2026-06-13 12:36:49,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:36:49,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:36:49,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:36:49,870.870 INFO    ] No camera update needed
[2026-06-13 12:36:49,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:36:49,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:36:49,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:36:49,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:36:51,918.918 INFO    ] ================================================
[2026-06-13 12:36:51,934.934 INFO    ] Launching Daemon at Sat Jun 13 12:36:51 IST 2026
[2026-06-13 12:36:51,944.944 INFO    ] ================================================
[2026-06-13 12:36:52,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:36:52
[2026-06-13 12:36:52,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:36:52,767.767 INFO    ] Initializing speech engine...
[2026-06-13 12:36:52,772.772 INFO    ] 2026-06-13 12:36:52
[2026-06-13 12:36:52,978.978 INFO    ] 2026-06-13 12:36:52
[2026-06-13 12:36:53,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:36:53,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:36:53,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:36:53,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:36:53,390.390 INFO    ] time= 13/06/2026 12:36:53
[2026-06-13 12:36:53,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:36:53,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:36:53,495.495 INFO    ] No existing commands found in stream
[2026-06-13 12:36:58,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:36:58,509.509 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 12:37:00,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:37:00,035.035 INFO    ] Checking for system updates...
[2026-06-13 12:37:00,056.056 INFO    ] 200
[2026-06-13 12:37:00,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:00,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:00,090.090 INFO    ] No update needed
[2026-06-13 12:37:00,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:00,111.111 INFO    ] 200
[2026-06-13 12:37:00,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:00,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:00,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:00,180.180 INFO    ] No camera update needed
[2026-06-13 12:37:00,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:00,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:00,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:00,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:02,223.223 INFO    ] ================================================
[2026-06-13 12:37:02,234.234 INFO    ] Launching Daemon at Sat Jun 13 12:37:02 IST 2026
[2026-06-13 12:37:02,241.241 INFO    ] ================================================
[2026-06-13 12:37:02,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:02
[2026-06-13 12:37:02,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:03,129.129 INFO    ] Initializing speech engine...
[2026-06-13 12:37:03,134.134 INFO    ] 2026-06-13 12:37:03
[2026-06-13 12:37:03,346.346 INFO    ] 2026-06-13 12:37:03
[2026-06-13 12:37:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:03,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:03,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:03,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:03,768.768 INFO    ] time= 13/06/2026 12:37:03
[2026-06-13 12:37:03,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:03,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:03,965.965 INFO    ] No existing commands found in stream
[2026-06-13 12:37:08,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:37:08,990.990 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 12:37:11,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:37:11,649.649 INFO    ] Checking for system updates...
[2026-06-13 12:37:11,672.672 INFO    ] 200
[2026-06-13 12:37:11,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:11,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:37:11,711.711 INFO    ] No update needed
[2026-06-13 12:37:11,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:11,734.734 INFO    ] 200
[2026-06-13 12:37:11,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:11,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:11,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:37:11,814.814 INFO    ] No camera update needed
[2026-06-13 12:37:11,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:11,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:11,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:11,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:13,862.862 INFO    ] ================================================
[2026-06-13 12:37:13,878.878 INFO    ] Launching Daemon at Sat Jun 13 12:37:13 IST 2026
[2026-06-13 12:37:13,889.889 INFO    ] ================================================
[2026-06-13 12:37:14,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:14
[2026-06-13 12:37:14,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:14,681.681 INFO    ] Initializing speech engine...
[2026-06-13 12:37:14,689.689 INFO    ] 2026-06-13 12:37:14
[2026-06-13 12:37:14,904.904 INFO    ] 2026-06-13 12:37:14
[2026-06-13 12:37:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:15,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:15,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:15,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:15,311.311 INFO    ] time= 13/06/2026 12:37:15
[2026-06-13 12:37:15,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:15,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:15,511.511 INFO    ] No existing commands found in stream
[2026-06-13 12:37:20,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:37:20,529.529 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 12:37:21,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:37:21,339.339 INFO    ] Checking for system updates...
[2026-06-13 12:37:21,359.359 INFO    ] 200
[2026-06-13 12:37:21,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:21,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:21,394.394 INFO    ] No update needed
[2026-06-13 12:37:21,395.395 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:21,414.414 INFO    ] 200
[2026-06-13 12:37:21,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:21,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:21,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:21,477.477 INFO    ] No camera update needed
[2026-06-13 12:37:21,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:21,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:21,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:21,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:23,524.524 INFO    ] ================================================
[2026-06-13 12:37:23,539.539 INFO    ] Launching Daemon at Sat Jun 13 12:37:23 IST 2026
[2026-06-13 12:37:23,550.550 INFO    ] ================================================
[2026-06-13 12:37:23,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:23
[2026-06-13 12:37:24,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:24,373.373 INFO    ] Initializing speech engine...
[2026-06-13 12:37:24,383.383 INFO    ] 2026-06-13 12:37:24
[2026-06-13 12:37:24,591.591 INFO    ] 2026-06-13 12:37:24
[2026-06-13 12:37:24,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:24,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:24,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:24,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:25,008.008 INFO    ] time= 13/06/2026 12:37:24
[2026-06-13 12:37:25,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:25,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:25,107.107 INFO    ] No existing commands found in stream
[2026-06-13 12:37:30,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:37:30,121.121 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 12:37:31,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:37:31,983.983 INFO    ] Checking for system updates...
[2026-06-13 12:37:32,007.007 INFO    ] 200
[2026-06-13 12:37:32,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:32,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:32,050.050 INFO    ] No update needed
[2026-06-13 12:37:32,052.052 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:32,077.077 INFO    ] 200
[2026-06-13 12:37:32,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:32,107.107 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:32,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:32,160.160 INFO    ] No camera update needed
[2026-06-13 12:37:32,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:32,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:32,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:32,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:34,223.223 INFO    ] ================================================
[2026-06-13 12:37:34,238.238 INFO    ] Launching Daemon at Sat Jun 13 12:37:34 IST 2026
[2026-06-13 12:37:34,249.249 INFO    ] ================================================
[2026-06-13 12:37:34,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:34
[2026-06-13 12:37:35,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:35,475.475 INFO    ] Initializing speech engine...
[2026-06-13 12:37:35,479.479 INFO    ] 2026-06-13 12:37:35
[2026-06-13 12:37:35,696.696 INFO    ] 2026-06-13 12:37:35
[2026-06-13 12:37:35,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:35,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:35,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:36,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:36,099.099 INFO    ] time= 13/06/2026 12:37:36
[2026-06-13 12:37:36,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:36,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:36,217.217 INFO    ] No existing commands found in stream
[2026-06-13 12:37:41,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:37:41,229.229 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 12:37:42,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:37:42,635.635 INFO    ] Checking for system updates...
[2026-06-13 12:37:42,656.656 INFO    ] 200
[2026-06-13 12:37:42,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:42,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:37:42,691.691 INFO    ] No update needed
[2026-06-13 12:37:42,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:42,713.713 INFO    ] 200
[2026-06-13 12:37:42,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:42,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:42,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:37:42,777.777 INFO    ] No camera update needed
[2026-06-13 12:37:42,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:42,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:42,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:42,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:44,826.826 INFO    ] ================================================
[2026-06-13 12:37:44,841.841 INFO    ] Launching Daemon at Sat Jun 13 12:37:44 IST 2026
[2026-06-13 12:37:44,852.852 INFO    ] ================================================
[2026-06-13 12:37:45,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:45
[2026-06-13 12:37:45,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:45,645.645 INFO    ] Initializing speech engine...
[2026-06-13 12:37:45,650.650 INFO    ] 2026-06-13 12:37:45
[2026-06-13 12:37:45,864.864 INFO    ] 2026-06-13 12:37:45
[2026-06-13 12:37:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:46,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:46,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:46,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:46,287.287 INFO    ] time= 13/06/2026 12:37:46
[2026-06-13 12:37:46,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:46,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:46,411.411 INFO    ] No existing commands found in stream
[2026-06-13 12:37:51,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:37:51,424.424 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 12:37:53,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:37:53,704.704 INFO    ] Checking for system updates...
[2026-06-13 12:37:53,726.726 INFO    ] 200
[2026-06-13 12:37:53,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:53,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:37:53,759.759 INFO    ] No update needed
[2026-06-13 12:37:53,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 12:37:53,779.779 INFO    ] 200
[2026-06-13 12:37:53,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:37:53,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:37:53,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:37:53,854.854 INFO    ] No camera update needed
[2026-06-13 12:37:53,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:37:53,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:37:53,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:37:53,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:37:55,893.893 INFO    ] ================================================
[2026-06-13 12:37:55,902.902 INFO    ] Launching Daemon at Sat Jun 13 12:37:55 IST 2026
[2026-06-13 12:37:55,909.909 INFO    ] ================================================
[2026-06-13 12:37:56,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:37:56
[2026-06-13 12:37:56,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:37:56,733.733 INFO    ] Initializing speech engine...
[2026-06-13 12:37:56,739.739 INFO    ] 2026-06-13 12:37:56
[2026-06-13 12:37:56,946.946 INFO    ] 2026-06-13 12:37:56
[2026-06-13 12:37:56,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:37:57,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:37:57,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:37:57,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:37:57,337.337 INFO    ] time= 13/06/2026 12:37:57
[2026-06-13 12:37:57,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:37:57,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:37:57,466.466 INFO    ] No existing commands found in stream
[2026-06-13 12:38:02,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:02,476.476 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 12:38:04,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:38:04,145.145 INFO    ] Checking for system updates...
[2026-06-13 12:38:04,166.166 INFO    ] 200
[2026-06-13 12:38:04,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:04,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:04,202.202 INFO    ] No update needed
[2026-06-13 12:38:04,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 12:38:04,227.227 INFO    ] 200
[2026-06-13 12:38:04,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:04,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:38:04,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:04,288.288 INFO    ] No camera update needed
[2026-06-13 12:38:04,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:38:04,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:38:04,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:38:04,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:38:06,336.336 INFO    ] ================================================
[2026-06-13 12:38:06,351.351 INFO    ] Launching Daemon at Sat Jun 13 12:38:06 IST 2026
[2026-06-13 12:38:06,361.361 INFO    ] ================================================
[2026-06-13 12:38:06,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:38:06
[2026-06-13 12:38:07,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:38:07,196.196 INFO    ] Initializing speech engine...
[2026-06-13 12:38:07,202.202 INFO    ] 2026-06-13 12:38:07
[2026-06-13 12:38:07,424.424 INFO    ] 2026-06-13 12:38:07
[2026-06-13 12:38:07,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:38:07,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:38:07,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:38:07,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:38:07,862.862 INFO    ] time= 13/06/2026 12:38:07
[2026-06-13 12:38:07,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:38:07,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:38:07,963.963 INFO    ] No existing commands found in stream
[2026-06-13 12:38:12,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:12,976.976 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 12:38:16,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:38:16,444.444 INFO    ] Checking for system updates...
[2026-06-13 12:38:16,467.467 INFO    ] 200
[2026-06-13 12:38:16,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:16,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:16,501.501 INFO    ] No update needed
[2026-06-13 12:38:16,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 12:38:16,522.522 INFO    ] 200
[2026-06-13 12:38:16,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:16,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:38:16,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:16,693.693 INFO    ] No camera update needed
[2026-06-13 12:38:16,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:38:16,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:38:16,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:38:16,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:38:18,743.743 INFO    ] ================================================
[2026-06-13 12:38:18,758.758 INFO    ] Launching Daemon at Sat Jun 13 12:38:18 IST 2026
[2026-06-13 12:38:18,768.768 INFO    ] ================================================
[2026-06-13 12:38:19,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:38:19
[2026-06-13 12:38:19,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:38:19,591.591 INFO    ] Initializing speech engine...
[2026-06-13 12:38:19,599.599 INFO    ] 2026-06-13 12:38:19
[2026-06-13 12:38:19,815.815 INFO    ] 2026-06-13 12:38:19
[2026-06-13 12:38:19,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:38:20,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:38:20,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:38:20,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:38:20,234.234 INFO    ] time= 13/06/2026 12:38:20
[2026-06-13 12:38:20,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:38:20,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:38:20,333.333 INFO    ] No existing commands found in stream
[2026-06-13 12:38:25,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:25,347.347 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 12:38:28,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:38:28,347.347 INFO    ] Checking for system updates...
[2026-06-13 12:38:28,369.369 INFO    ] 200
[2026-06-13 12:38:28,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:28,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:38:28,402.402 INFO    ] No update needed
[2026-06-13 12:38:28,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 12:38:28,424.424 INFO    ] 200
[2026-06-13 12:38:28,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:28,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:38:28,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:28,491.491 INFO    ] No camera update needed
[2026-06-13 12:38:28,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:38:28,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:38:28,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:38:28,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:38:30,536.536 INFO    ] ================================================
[2026-06-13 12:38:30,552.552 INFO    ] Launching Daemon at Sat Jun 13 12:38:30 IST 2026
[2026-06-13 12:38:30,562.562 INFO    ] ================================================
[2026-06-13 12:38:30,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:38:30
[2026-06-13 12:38:31,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:38:31,395.395 INFO    ] Initializing speech engine...
[2026-06-13 12:38:31,402.402 INFO    ] 2026-06-13 12:38:31
[2026-06-13 12:38:31,619.619 INFO    ] 2026-06-13 12:38:31
[2026-06-13 12:38:31,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:38:31,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:38:31,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:38:32,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:38:32,074.074 INFO    ] time= 13/06/2026 12:38:32
[2026-06-13 12:38:32,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:38:32,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:38:32,196.196 INFO    ] No existing commands found in stream
[2026-06-13 12:38:37,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:37,211.211 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 12:38:39,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:38:39,649.649 INFO    ] Checking for system updates...
[2026-06-13 12:38:39,670.670 INFO    ] 200
[2026-06-13 12:38:39,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:39,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:38:39,703.703 INFO    ] No update needed
[2026-06-13 12:38:39,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 12:38:39,725.725 INFO    ] 200
[2026-06-13 12:38:39,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:39,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:38:39,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:38:39,797.797 INFO    ] No camera update needed
[2026-06-13 12:38:39,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:38:39,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:38:39,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:38:39,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:38:41,843.843 INFO    ] ================================================
[2026-06-13 12:38:41,858.858 INFO    ] Launching Daemon at Sat Jun 13 12:38:41 IST 2026
[2026-06-13 12:38:41,868.868 INFO    ] ================================================
[2026-06-13 12:38:42,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:38:42
[2026-06-13 12:38:42,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:38:42,672.672 INFO    ] Initializing speech engine...
[2026-06-13 12:38:42,676.676 INFO    ] 2026-06-13 12:38:42
[2026-06-13 12:38:42,894.894 INFO    ] 2026-06-13 12:38:42
[2026-06-13 12:38:42,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:38:43,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:38:43,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:38:43,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:38:43,299.299 INFO    ] time= 13/06/2026 12:38:43
[2026-06-13 12:38:43,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:38:43,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:38:43,417.417 INFO    ] No existing commands found in stream
[2026-06-13 12:38:48,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:48,429.429 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 12:38:51,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:38:51,009.009 INFO    ] Checking for system updates...
[2026-06-13 12:38:51,030.030 INFO    ] 200
[2026-06-13 12:38:51,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:51,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:38:51,063.063 INFO    ] No update needed
[2026-06-13 12:38:51,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 12:38:51,084.084 INFO    ] 200
[2026-06-13 12:38:51,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:38:51,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:38:51,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:38:51,149.149 INFO    ] No camera update needed
[2026-06-13 12:38:51,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:38:51,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:38:51,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:38:51,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:38:53,200.200 INFO    ] ================================================
[2026-06-13 12:38:53,215.215 INFO    ] Launching Daemon at Sat Jun 13 12:38:53 IST 2026
[2026-06-13 12:38:53,226.226 INFO    ] ================================================
[2026-06-13 12:38:53,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:38:53
[2026-06-13 12:38:53,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:38:54,002.002 INFO    ] Initializing speech engine...
[2026-06-13 12:38:54,006.006 INFO    ] 2026-06-13 12:38:54
[2026-06-13 12:38:54,234.234 INFO    ] 2026-06-13 12:38:54
[2026-06-13 12:38:54,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:38:54,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:38:54,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:38:54,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:38:54,643.643 INFO    ] time= 13/06/2026 12:38:54
[2026-06-13 12:38:54,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:38:54,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:38:54,782.782 INFO    ] No existing commands found in stream
[2026-06-13 12:38:59,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:38:59,795.795 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 12:39:03,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:39:03,091.091 INFO    ] Checking for system updates...
[2026-06-13 12:39:03,111.111 INFO    ] 200
[2026-06-13 12:39:03,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:03,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:03,146.146 INFO    ] No update needed
[2026-06-13 12:39:03,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:03,167.167 INFO    ] 200
[2026-06-13 12:39:03,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:03,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:03,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:03,231.231 INFO    ] No camera update needed
[2026-06-13 12:39:03,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:03,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:03,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:03,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:05,277.277 INFO    ] ================================================
[2026-06-13 12:39:05,292.292 INFO    ] Launching Daemon at Sat Jun 13 12:39:05 IST 2026
[2026-06-13 12:39:05,303.303 INFO    ] ================================================
[2026-06-13 12:39:05,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:05
[2026-06-13 12:39:05,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:06,161.161 INFO    ] Initializing speech engine...
[2026-06-13 12:39:06,166.166 INFO    ] 2026-06-13 12:39:06
[2026-06-13 12:39:06,369.369 INFO    ] 2026-06-13 12:39:06
[2026-06-13 12:39:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:06,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:06,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:06,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:06,782.782 INFO    ] time= 13/06/2026 12:39:06
[2026-06-13 12:39:06,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:06,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:06,880.880 INFO    ] No existing commands found in stream
[2026-06-13 12:39:11,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:39:11,893.893 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 12:39:13,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:39:13,588.588 INFO    ] Checking for system updates...
[2026-06-13 12:39:13,610.610 INFO    ] 200
[2026-06-13 12:39:13,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:13,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:13,645.645 INFO    ] No update needed
[2026-06-13 12:39:13,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:13,668.668 INFO    ] 200
[2026-06-13 12:39:13,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:13,695.695 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:13,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:13,738.738 INFO    ] No camera update needed
[2026-06-13 12:39:13,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:13,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:13,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:13,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:15,790.790 INFO    ] ================================================
[2026-06-13 12:39:15,805.805 INFO    ] Launching Daemon at Sat Jun 13 12:39:15 IST 2026
[2026-06-13 12:39:15,817.817 INFO    ] ================================================
[2026-06-13 12:39:16,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:16
[2026-06-13 12:39:16,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:16,599.599 INFO    ] Initializing speech engine...
[2026-06-13 12:39:16,604.604 INFO    ] 2026-06-13 12:39:16
[2026-06-13 12:39:16,806.806 INFO    ] 2026-06-13 12:39:16
[2026-06-13 12:39:16,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:17,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:17,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:17,221.221 INFO    ] time= 13/06/2026 12:39:17
[2026-06-13 12:39:17,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:17,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:17,320.320 INFO    ] No existing commands found in stream
[2026-06-13 12:39:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:39:22,332.332 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 12:39:22,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:39:22,825.825 INFO    ] Checking for system updates...
[2026-06-13 12:39:22,847.847 INFO    ] 200
[2026-06-13 12:39:22,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:22,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:22,882.882 INFO    ] No update needed
[2026-06-13 12:39:22,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:22,903.903 INFO    ] 200
[2026-06-13 12:39:22,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:22,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:22,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:22,972.972 INFO    ] No camera update needed
[2026-06-13 12:39:22,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:22,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:22,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:22,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:25,020.020 INFO    ] ================================================
[2026-06-13 12:39:25,035.035 INFO    ] Launching Daemon at Sat Jun 13 12:39:25 IST 2026
[2026-06-13 12:39:25,046.046 INFO    ] ================================================
[2026-06-13 12:39:25,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:25
[2026-06-13 12:39:25,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:25,854.854 INFO    ] Initializing speech engine...
[2026-06-13 12:39:25,865.865 INFO    ] 2026-06-13 12:39:25
[2026-06-13 12:39:26,069.069 INFO    ] 2026-06-13 12:39:26
[2026-06-13 12:39:26,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:26,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:26,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:26,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:26,471.471 INFO    ] time= 13/06/2026 12:39:26
[2026-06-13 12:39:26,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:26,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:26,589.589 INFO    ] No existing commands found in stream
[2026-06-13 12:39:31,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:39:31,606.606 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 12:39:32,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:39:32,845.845 INFO    ] Checking for system updates...
[2026-06-13 12:39:32,866.866 INFO    ] 200
[2026-06-13 12:39:32,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:32,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:32,900.900 INFO    ] No update needed
[2026-06-13 12:39:32,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:32,923.923 INFO    ] 200
[2026-06-13 12:39:32,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:32,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:32,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:32,984.984 INFO    ] No camera update needed
[2026-06-13 12:39:32,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:32,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:32,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:33,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:35,040.040 INFO    ] ================================================
[2026-06-13 12:39:35,055.055 INFO    ] Launching Daemon at Sat Jun 13 12:39:35 IST 2026
[2026-06-13 12:39:35,066.066 INFO    ] ================================================
[2026-06-13 12:39:35,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:35
[2026-06-13 12:39:35,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:35,892.892 INFO    ] Initializing speech engine...
[2026-06-13 12:39:35,896.896 INFO    ] 2026-06-13 12:39:35
[2026-06-13 12:39:36,101.101 INFO    ] 2026-06-13 12:39:36
[2026-06-13 12:39:36,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:36,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:36,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:36,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:36,496.496 INFO    ] time= 13/06/2026 12:39:36
[2026-06-13 12:39:36,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:36,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:36,617.617 INFO    ] No existing commands found in stream
[2026-06-13 12:39:41,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:39:41,629.629 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 12:39:44,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:39:44,034.034 INFO    ] Checking for system updates...
[2026-06-13 12:39:44,055.055 INFO    ] 200
[2026-06-13 12:39:44,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:44,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:44,090.090 INFO    ] No update needed
[2026-06-13 12:39:44,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:44,110.110 INFO    ] 200
[2026-06-13 12:39:44,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:44,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:44,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:39:44,176.176 INFO    ] No camera update needed
[2026-06-13 12:39:44,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:44,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:44,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:44,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:46,224.224 INFO    ] ================================================
[2026-06-13 12:39:46,240.240 INFO    ] Launching Daemon at Sat Jun 13 12:39:46 IST 2026
[2026-06-13 12:39:46,250.250 INFO    ] ================================================
[2026-06-13 12:39:46,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:46
[2026-06-13 12:39:46,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:47,086.086 INFO    ] Initializing speech engine...
[2026-06-13 12:39:47,092.092 INFO    ] 2026-06-13 12:39:47
[2026-06-13 12:39:47,297.297 INFO    ] 2026-06-13 12:39:47
[2026-06-13 12:39:47,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:47,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:47,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:47,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:47,707.707 INFO    ] time= 13/06/2026 12:39:47
[2026-06-13 12:39:47,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:47,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:47,812.812 INFO    ] No existing commands found in stream
[2026-06-13 12:39:52,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:39:52,830.830 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 12:39:53,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:39:53,964.964 INFO    ] Checking for system updates...
[2026-06-13 12:39:53,985.985 INFO    ] 200
[2026-06-13 12:39:53,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:54,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:54,018.018 INFO    ] No update needed
[2026-06-13 12:39:54,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 12:39:54,040.040 INFO    ] 200
[2026-06-13 12:39:54,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:39:54,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:39:54,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:39:54,106.106 INFO    ] No camera update needed
[2026-06-13 12:39:54,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:39:54,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:39:54,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:39:54,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:39:56,153.153 INFO    ] ================================================
[2026-06-13 12:39:56,169.169 INFO    ] Launching Daemon at Sat Jun 13 12:39:56 IST 2026
[2026-06-13 12:39:56,179.179 INFO    ] ================================================
[2026-06-13 12:39:56,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:39:56
[2026-06-13 12:39:56,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:39:57,033.033 INFO    ] Initializing speech engine...
[2026-06-13 12:39:57,039.039 INFO    ] 2026-06-13 12:39:57
[2026-06-13 12:39:57,245.245 INFO    ] 2026-06-13 12:39:57
[2026-06-13 12:39:57,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:39:57,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:39:57,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:39:57,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:39:57,650.650 INFO    ] time= 13/06/2026 12:39:57
[2026-06-13 12:39:57,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:39:57,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:39:57,762.762 INFO    ] No existing commands found in stream
[2026-06-13 12:40:02,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:02,780.780 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 12:40:06,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:40:06,508.508 INFO    ] Checking for system updates...
[2026-06-13 12:40:06,544.544 INFO    ] 200
[2026-06-13 12:40:06,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:06,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:06,604.604 INFO    ] No update needed
[2026-06-13 12:40:06,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 12:40:06,626.626 INFO    ] 200
[2026-06-13 12:40:06,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:06,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:40:06,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:06,698.698 INFO    ] No camera update needed
[2026-06-13 12:40:06,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:40:06,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:40:06,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:40:06,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:40:08,747.747 INFO    ] ================================================
[2026-06-13 12:40:08,763.763 INFO    ] Launching Daemon at Sat Jun 13 12:40:08 IST 2026
[2026-06-13 12:40:08,774.774 INFO    ] ================================================
[2026-06-13 12:40:09,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:40:09
[2026-06-13 12:40:09,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:40:10,116.116 INFO    ] Initializing speech engine...
[2026-06-13 12:40:10,141.141 INFO    ] 2026-06-13 12:40:10
[2026-06-13 12:40:10,399.399 INFO    ] 2026-06-13 12:40:10
[2026-06-13 12:40:10,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:40:10,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:40:10,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:40:10,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:40:10,777.777 INFO    ] time= 13/06/2026 12:40:10
[2026-06-13 12:40:10,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:40:10,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:40:10,939.939 INFO    ] No existing commands found in stream
[2026-06-13 12:40:15,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:15,972.972 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 12:40:17,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:40:17,182.182 INFO    ] Checking for system updates...
[2026-06-13 12:40:17,203.203 INFO    ] 200
[2026-06-13 12:40:17,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:17,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:17,236.236 INFO    ] No update needed
[2026-06-13 12:40:17,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 12:40:17,257.257 INFO    ] 200
[2026-06-13 12:40:17,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:17,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:40:17,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:17,330.330 INFO    ] No camera update needed
[2026-06-13 12:40:17,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:40:17,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:40:17,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:40:17,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:40:19,377.377 INFO    ] ================================================
[2026-06-13 12:40:19,394.394 INFO    ] Launching Daemon at Sat Jun 13 12:40:19 IST 2026
[2026-06-13 12:40:19,405.405 INFO    ] ================================================
[2026-06-13 12:40:19,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:40:19
[2026-06-13 12:40:20,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:40:20,319.319 INFO    ] Initializing speech engine...
[2026-06-13 12:40:20,339.339 INFO    ] 2026-06-13 12:40:20
[2026-06-13 12:40:20,585.585 INFO    ] 2026-06-13 12:40:20
[2026-06-13 12:40:20,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:40:20,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:40:20,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:40:20,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:40:20,966.966 INFO    ] time= 13/06/2026 12:40:20
[2026-06-13 12:40:20,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:40:21,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:40:21,091.091 INFO    ] No existing commands found in stream
[2026-06-13 12:40:26,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:26,105.105 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 12:40:29,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:40:29,599.599 INFO    ] Checking for system updates...
[2026-06-13 12:40:29,621.621 INFO    ] 200
[2026-06-13 12:40:29,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:29,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:29,654.654 INFO    ] No update needed
[2026-06-13 12:40:29,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 12:40:29,675.675 INFO    ] 200
[2026-06-13 12:40:29,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:29,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:40:29,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:29,840.840 INFO    ] No camera update needed
[2026-06-13 12:40:29,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:40:29,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:40:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:40:29,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:40:31,880.880 INFO    ] ================================================
[2026-06-13 12:40:31,889.889 INFO    ] Launching Daemon at Sat Jun 13 12:40:31 IST 2026
[2026-06-13 12:40:31,896.896 INFO    ] ================================================
[2026-06-13 12:40:32,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:40:32
[2026-06-13 12:40:32,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:40:32,674.674 INFO    ] Initializing speech engine...
[2026-06-13 12:40:32,687.687 INFO    ] 2026-06-13 12:40:32
[2026-06-13 12:40:32,904.904 INFO    ] 2026-06-13 12:40:32
[2026-06-13 12:40:32,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:40:33,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:40:33,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:40:33,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:40:33,306.306 INFO    ] time= 13/06/2026 12:40:33
[2026-06-13 12:40:33,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:40:33,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:40:33,456.456 INFO    ] No existing commands found in stream
[2026-06-13 12:40:38,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:38,470.470 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 12:40:39,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:40:39,793.793 INFO    ] Checking for system updates...
[2026-06-13 12:40:39,815.815 INFO    ] 200
[2026-06-13 12:40:39,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:39,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:39,854.854 INFO    ] No update needed
[2026-06-13 12:40:39,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 12:40:39,875.875 INFO    ] 200
[2026-06-13 12:40:39,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:39,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:40:39,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:39,937.937 INFO    ] No camera update needed
[2026-06-13 12:40:39,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:40:39,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:40:39,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:40:39,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:40:41,984.984 INFO    ] ================================================
[2026-06-13 12:40:42,998.998 INFO    ] Launching Daemon at Sat Jun 13 12:40:41 IST 2026
[2026-06-13 12:40:42,009.009 INFO    ] ================================================
[2026-06-13 12:40:42,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:40:42
[2026-06-13 12:40:42,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:40:43,061.061 INFO    ] Initializing speech engine...
[2026-06-13 12:40:43,067.067 INFO    ] 2026-06-13 12:40:43
[2026-06-13 12:40:43,361.361 INFO    ] 2026-06-13 12:40:43
[2026-06-13 12:40:43,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:40:43,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:40:43,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:40:43,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:40:43,709.709 INFO    ] time= 13/06/2026 12:40:43
[2026-06-13 12:40:43,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:40:43,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:40:43,787.787 INFO    ] No existing commands found in stream
[2026-06-13 12:40:48,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:48,802.802 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 12:40:49,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:40:49,965.965 INFO    ] Checking for system updates...
[2026-06-13 12:40:49,988.988 INFO    ] 200
[2026-06-13 12:40:49,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:50,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:50,021.021 INFO    ] No update needed
[2026-06-13 12:40:50,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 12:40:50,042.042 INFO    ] 200
[2026-06-13 12:40:50,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:40:50,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:40:50,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:40:50,113.113 INFO    ] No camera update needed
[2026-06-13 12:40:50,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:40:50,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:40:50,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:40:50,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:40:52,160.160 INFO    ] ================================================
[2026-06-13 12:40:52,175.175 INFO    ] Launching Daemon at Sat Jun 13 12:40:52 IST 2026
[2026-06-13 12:40:52,185.185 INFO    ] ================================================
[2026-06-13 12:40:52,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:40:52
[2026-06-13 12:40:52,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:40:53,015.015 INFO    ] Initializing speech engine...
[2026-06-13 12:40:53,021.021 INFO    ] 2026-06-13 12:40:53
[2026-06-13 12:40:53,228.228 INFO    ] 2026-06-13 12:40:53
[2026-06-13 12:40:53,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:40:53,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:40:53,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:40:53,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:40:53,640.640 INFO    ] time= 13/06/2026 12:40:53
[2026-06-13 12:40:53,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:40:53,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:40:53,747.747 INFO    ] No existing commands found in stream
[2026-06-13 12:40:58,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:40:58,760.760 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 12:41:02,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:41:02,856.856 INFO    ] Checking for system updates...
[2026-06-13 12:41:02,877.877 INFO    ] 200
[2026-06-13 12:41:02,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:02,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:02,912.912 INFO    ] No update needed
[2026-06-13 12:41:02,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:02,933.933 INFO    ] 200
[2026-06-13 12:41:02,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:02,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:02,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:02,996.996 INFO    ] No camera update needed
[2026-06-13 12:41:02,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:02,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:03,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:03,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:41:05,045.045 INFO    ] ================================================
[2026-06-13 12:41:05,061.061 INFO    ] Launching Daemon at Sat Jun 13 12:41:05 IST 2026
[2026-06-13 12:41:05,072.072 INFO    ] ================================================
[2026-06-13 12:41:05,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:41:05
[2026-06-13 12:41:06,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:41:06,442.442 INFO    ] Initializing speech engine...
[2026-06-13 12:41:06,452.452 INFO    ] 2026-06-13 12:41:06
[2026-06-13 12:41:06,713.713 INFO    ] 2026-06-13 12:41:06
[2026-06-13 12:41:06,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:41:06,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:41:06,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:41:07,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:41:07,057.057 INFO    ] time= 13/06/2026 12:41:07
[2026-06-13 12:41:07,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:41:07,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:41:07,133.133 INFO    ] No existing commands found in stream
[2026-06-13 12:41:12,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:41:12,149.149 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 12:41:14,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:41:14,311.311 INFO    ] Checking for system updates...
[2026-06-13 12:41:14,333.333 INFO    ] 200
[2026-06-13 12:41:14,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:14,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:41:14,366.366 INFO    ] No update needed
[2026-06-13 12:41:14,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:14,387.387 INFO    ] 200
[2026-06-13 12:41:14,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:14,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:14,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:41:14,450.450 INFO    ] No camera update needed
[2026-06-13 12:41:14,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:14,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:14,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:14,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:41:16,498.498 INFO    ] ================================================
[2026-06-13 12:41:16,513.513 INFO    ] Launching Daemon at Sat Jun 13 12:41:16 IST 2026
[2026-06-13 12:41:16,524.524 INFO    ] ================================================
[2026-06-13 12:41:16,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:41:16
[2026-06-13 12:41:17,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:41:17,362.362 INFO    ] Initializing speech engine...
[2026-06-13 12:41:17,372.372 INFO    ] 2026-06-13 12:41:17
[2026-06-13 12:41:17,581.581 INFO    ] 2026-06-13 12:41:17
[2026-06-13 12:41:17,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:41:17,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:41:17,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:41:17,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:41:17,975.975 INFO    ] time= 13/06/2026 12:41:17
[2026-06-13 12:41:18,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:41:18,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:41:18,096.096 INFO    ] No existing commands found in stream
[2026-06-13 12:41:23,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:41:23,113.113 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 12:41:27,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:41:27,008.008 INFO    ] Checking for system updates...
[2026-06-13 12:41:27,029.029 INFO    ] 200
[2026-06-13 12:41:27,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:27,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:27,063.063 INFO    ] No update needed
[2026-06-13 12:41:27,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:27,084.084 INFO    ] 200
[2026-06-13 12:41:27,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:27,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:27,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:27,148.148 INFO    ] No camera update needed
[2026-06-13 12:41:27,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:27,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:27,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:27,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:41:29,197.197 INFO    ] ================================================
[2026-06-13 12:41:29,212.212 INFO    ] Launching Daemon at Sat Jun 13 12:41:29 IST 2026
[2026-06-13 12:41:29,223.223 INFO    ] ================================================
[2026-06-13 12:41:29,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:41:29
[2026-06-13 12:41:29,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:41:30,056.056 INFO    ] Initializing speech engine...
[2026-06-13 12:41:30,064.064 INFO    ] 2026-06-13 12:41:30
[2026-06-13 12:41:30,279.279 INFO    ] 2026-06-13 12:41:30
[2026-06-13 12:41:30,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:41:30,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:41:30,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:41:30,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:41:30,695.695 INFO    ] time= 13/06/2026 12:41:30
[2026-06-13 12:41:30,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:41:30,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:41:30,795.795 INFO    ] No existing commands found in stream
[2026-06-13 12:41:35,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:41:35,813.813 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 12:41:36,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:41:36,418.418 INFO    ] Checking for system updates...
[2026-06-13 12:41:36,440.440 INFO    ] 200
[2026-06-13 12:41:36,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:36,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:41:36,477.477 INFO    ] No update needed
[2026-06-13 12:41:36,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:36,498.498 INFO    ] 200
[2026-06-13 12:41:36,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:36,523.523 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:36,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:41:36,564.564 INFO    ] No camera update needed
[2026-06-13 12:41:36,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:36,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:36,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:36,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:41:38,612.612 INFO    ] ================================================
[2026-06-13 12:41:38,627.627 INFO    ] Launching Daemon at Sat Jun 13 12:41:38 IST 2026
[2026-06-13 12:41:38,638.638 INFO    ] ================================================
[2026-06-13 12:41:38,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:41:38
[2026-06-13 12:41:39,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:41:39,479.479 INFO    ] Initializing speech engine...
[2026-06-13 12:41:39,491.491 INFO    ] 2026-06-13 12:41:39
[2026-06-13 12:41:39,703.703 INFO    ] 2026-06-13 12:41:39
[2026-06-13 12:41:39,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:41:39,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:41:39,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:41:40,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:41:40,098.098 INFO    ] time= 13/06/2026 12:41:40
[2026-06-13 12:41:40,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:41:40,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:41:40,218.218 INFO    ] No existing commands found in stream
[2026-06-13 12:41:45,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:41:45,232.232 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 12:41:46,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:41:46,954.954 INFO    ] Checking for system updates...
[2026-06-13 12:41:46,975.975 INFO    ] 200
[2026-06-13 12:41:46,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:47,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:47,010.010 INFO    ] No update needed
[2026-06-13 12:41:47,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:47,034.034 INFO    ] 200
[2026-06-13 12:41:47,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:47,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:47,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:41:47,100.100 INFO    ] No camera update needed
[2026-06-13 12:41:47,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:47,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:47,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:47,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:41:49,147.147 INFO    ] ================================================
[2026-06-13 12:41:49,162.162 INFO    ] Launching Daemon at Sat Jun 13 12:41:49 IST 2026
[2026-06-13 12:41:49,172.172 INFO    ] ================================================
[2026-06-13 12:41:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:41:49
[2026-06-13 12:41:49,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:41:50,066.066 INFO    ] Initializing speech engine...
[2026-06-13 12:41:50,080.080 INFO    ] 2026-06-13 12:41:50
[2026-06-13 12:41:50,369.369 INFO    ] 2026-06-13 12:41:50
[2026-06-13 12:41:50,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:41:50,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:41:50,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:41:50,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:41:50,738.738 INFO    ] time= 13/06/2026 12:41:50
[2026-06-13 12:41:50,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:41:50,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:41:50,828.828 INFO    ] No existing commands found in stream
[2026-06-13 12:41:55,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:41:55,866.866 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 12:41:58,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:41:58,683.683 INFO    ] Checking for system updates...
[2026-06-13 12:41:58,704.704 INFO    ] 200
[2026-06-13 12:41:58,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:58,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:58,737.737 INFO    ] No update needed
[2026-06-13 12:41:58,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 12:41:58,758.758 INFO    ] 200
[2026-06-13 12:41:58,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:41:58,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:41:58,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:41:58,821.821 INFO    ] No camera update needed
[2026-06-13 12:41:58,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:41:58,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:41:58,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:41:58,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:00,867.867 INFO    ] ================================================
[2026-06-13 12:42:00,883.883 INFO    ] Launching Daemon at Sat Jun 13 12:42:00 IST 2026
[2026-06-13 12:42:00,893.893 INFO    ] ================================================
[2026-06-13 12:42:01,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:01
[2026-06-13 12:42:01,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:01,680.680 INFO    ] Initializing speech engine...
[2026-06-13 12:42:01,692.692 INFO    ] 2026-06-13 12:42:01
[2026-06-13 12:42:01,877.877 INFO    ] 2026-06-13 12:42:01
[2026-06-13 12:42:01,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:02,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:02,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:02,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:02,277.277 INFO    ] time= 13/06/2026 12:42:02
[2026-06-13 12:42:02,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:02,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:02,409.409 INFO    ] No existing commands found in stream
[2026-06-13 12:42:07,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:07,441.441 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 12:42:10,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:42:10,580.580 INFO    ] Checking for system updates...
[2026-06-13 12:42:10,600.600 INFO    ] 200
[2026-06-13 12:42:10,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:10,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:10,634.634 INFO    ] No update needed
[2026-06-13 12:42:10,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 12:42:10,654.654 INFO    ] 200
[2026-06-13 12:42:10,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:10,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:42:10,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:42:10,720.720 INFO    ] No camera update needed
[2026-06-13 12:42:10,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:42:10,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:42:10,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:42:10,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:12,767.767 INFO    ] ================================================
[2026-06-13 12:42:12,782.782 INFO    ] Launching Daemon at Sat Jun 13 12:42:12 IST 2026
[2026-06-13 12:42:12,793.793 INFO    ] ================================================
[2026-06-13 12:42:13,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:13
[2026-06-13 12:42:13,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:13,592.592 INFO    ] Initializing speech engine...
[2026-06-13 12:42:13,600.600 INFO    ] 2026-06-13 12:42:13
[2026-06-13 12:42:13,815.815 INFO    ] 2026-06-13 12:42:13
[2026-06-13 12:42:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:14,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:14,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:14,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:14,132.132 INFO    ] time= 13/06/2026 12:42:14
[2026-06-13 12:42:14,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:14,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:14,176.176 INFO    ] No existing commands found in stream
[2026-06-13 12:42:19,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:19,187.187 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 12:42:19,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:42:19,952.952 INFO    ] Checking for system updates...
[2026-06-13 12:42:19,973.973 INFO    ] 200
[2026-06-13 12:42:19,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:20,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:42:20,007.007 INFO    ] No update needed
[2026-06-13 12:42:20,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 12:42:20,030.030 INFO    ] 200
[2026-06-13 12:42:20,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:20,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:42:20,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:42:20,091.091 INFO    ] No camera update needed
[2026-06-13 12:42:20,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:42:20,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:42:20,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:42:20,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:22,138.138 INFO    ] ================================================
[2026-06-13 12:42:22,153.153 INFO    ] Launching Daemon at Sat Jun 13 12:42:22 IST 2026
[2026-06-13 12:42:22,163.163 INFO    ] ================================================
[2026-06-13 12:42:22,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:22
[2026-06-13 12:42:22,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:22,985.985 INFO    ] Initializing speech engine...
[2026-06-13 12:42:22,997.997 INFO    ] 2026-06-13 12:42:22
[2026-06-13 12:42:23,202.202 INFO    ] 2026-06-13 12:42:23
[2026-06-13 12:42:23,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:23,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:23,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:23,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:23,614.614 INFO    ] time= 13/06/2026 12:42:23
[2026-06-13 12:42:23,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:23,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:23,722.722 INFO    ] No existing commands found in stream
[2026-06-13 12:42:28,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:28,734.734 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 12:42:29,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:42:29,538.538 INFO    ] Checking for system updates...
[2026-06-13 12:42:29,565.565 INFO    ] 200
[2026-06-13 12:42:29,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:29,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:29,599.599 INFO    ] No update needed
[2026-06-13 12:42:29,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 12:42:29,621.621 INFO    ] 200
[2026-06-13 12:42:29,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:29,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:42:29,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:29,691.691 INFO    ] No camera update needed
[2026-06-13 12:42:29,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:42:29,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:42:29,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:42:29,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:31,740.740 INFO    ] ================================================
[2026-06-13 12:42:31,755.755 INFO    ] Launching Daemon at Sat Jun 13 12:42:31 IST 2026
[2026-06-13 12:42:31,765.765 INFO    ] ================================================
[2026-06-13 12:42:32,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:32
[2026-06-13 12:42:32,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:32,603.603 INFO    ] Initializing speech engine...
[2026-06-13 12:42:32,607.607 INFO    ] 2026-06-13 12:42:32
[2026-06-13 12:42:32,825.825 INFO    ] 2026-06-13 12:42:32
[2026-06-13 12:42:32,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:32,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:33,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:33,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:33,226.226 INFO    ] time= 13/06/2026 12:42:33
[2026-06-13 12:42:33,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:33,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:33,340.340 INFO    ] No existing commands found in stream
[2026-06-13 12:42:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:38,353.353 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 12:42:40,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:42:40,462.462 INFO    ] Checking for system updates...
[2026-06-13 12:42:40,483.483 INFO    ] 200
[2026-06-13 12:42:40,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:40,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:42:40,517.517 INFO    ] No update needed
[2026-06-13 12:42:40,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 12:42:40,539.539 INFO    ] 200
[2026-06-13 12:42:40,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:40,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:42:40,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:40,603.603 INFO    ] No camera update needed
[2026-06-13 12:42:40,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:42:40,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:42:40,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:42:40,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:42,653.653 INFO    ] ================================================
[2026-06-13 12:42:42,668.668 INFO    ] Launching Daemon at Sat Jun 13 12:42:42 IST 2026
[2026-06-13 12:42:42,679.679 INFO    ] ================================================
[2026-06-13 12:42:43,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:43
[2026-06-13 12:42:43,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:43,531.531 INFO    ] Initializing speech engine...
[2026-06-13 12:42:43,537.537 INFO    ] 2026-06-13 12:42:43
[2026-06-13 12:42:43,745.745 INFO    ] 2026-06-13 12:42:43
[2026-06-13 12:42:43,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:43,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:43,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:44,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:44,137.137 INFO    ] time= 13/06/2026 12:42:44
[2026-06-13 12:42:44,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:44,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:44,269.269 INFO    ] No existing commands found in stream
[2026-06-13 12:42:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:49,287.287 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 12:42:50,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:42:50,784.784 INFO    ] Checking for system updates...
[2026-06-13 12:42:50,806.806 INFO    ] 200
[2026-06-13 12:42:50,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:50,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:50,841.841 INFO    ] No update needed
[2026-06-13 12:42:50,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 12:42:50,862.862 INFO    ] 200
[2026-06-13 12:42:50,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:42:50,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:42:50,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:42:50,935.935 INFO    ] No camera update needed
[2026-06-13 12:42:50,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:42:50,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:42:50,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:42:50,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:42:52,981.981 INFO    ] ================================================
[2026-06-13 12:42:53,997.997 INFO    ] Launching Daemon at Sat Jun 13 12:42:52 IST 2026
[2026-06-13 12:42:53,008.008 INFO    ] ================================================
[2026-06-13 12:42:53,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:42:53
[2026-06-13 12:42:53,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:42:53,810.810 INFO    ] Initializing speech engine...
[2026-06-13 12:42:53,819.819 INFO    ] 2026-06-13 12:42:53
[2026-06-13 12:42:54,025.025 INFO    ] 2026-06-13 12:42:54
[2026-06-13 12:42:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:42:54,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:42:54,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:42:54,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:42:54,413.413 INFO    ] time= 13/06/2026 12:42:54
[2026-06-13 12:42:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:42:54,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:42:54,554.554 INFO    ] No existing commands found in stream
[2026-06-13 12:42:59,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:42:59,565.565 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 12:43:00,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:43:00,259.259 INFO    ] Checking for system updates...
[2026-06-13 12:43:00,280.280 INFO    ] 200
[2026-06-13 12:43:00,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:00,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:00,316.316 INFO    ] No update needed
[2026-06-13 12:43:00,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 12:43:00,338.338 INFO    ] 200
[2026-06-13 12:43:00,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:00,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:43:00,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:00,401.401 INFO    ] No camera update needed
[2026-06-13 12:43:00,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:43:00,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:43:00,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:43:00,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:43:02,444.444 INFO    ] ================================================
[2026-06-13 12:43:02,458.458 INFO    ] Launching Daemon at Sat Jun 13 12:43:02 IST 2026
[2026-06-13 12:43:02,467.467 INFO    ] ================================================
[2026-06-13 12:43:02,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:43:02
[2026-06-13 12:43:03,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:43:03,832.832 INFO    ] Initializing speech engine...
[2026-06-13 12:43:03,838.838 INFO    ] 2026-06-13 12:43:03
[2026-06-13 12:43:04,098.098 INFO    ] 2026-06-13 12:43:04
[2026-06-13 12:43:04,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:43:04,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:43:04,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:43:04,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:43:04,440.440 INFO    ] time= 13/06/2026 12:43:04
[2026-06-13 12:43:04,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:43:04,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:43:04,537.537 INFO    ] No existing commands found in stream
[2026-06-13 12:43:09,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:43:09,571.571 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 12:43:13,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:43:13,567.567 INFO    ] Checking for system updates...
[2026-06-13 12:43:13,589.589 INFO    ] 200
[2026-06-13 12:43:13,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:13,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:13,622.622 INFO    ] No update needed
[2026-06-13 12:43:13,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 12:43:13,643.643 INFO    ] 200
[2026-06-13 12:43:13,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:13,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:43:13,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:13,707.707 INFO    ] No camera update needed
[2026-06-13 12:43:13,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:43:13,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:43:13,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:43:13,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:43:15,760.760 INFO    ] ================================================
[2026-06-13 12:43:15,775.775 INFO    ] Launching Daemon at Sat Jun 13 12:43:15 IST 2026
[2026-06-13 12:43:15,786.786 INFO    ] ================================================
[2026-06-13 12:43:16,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:43:16
[2026-06-13 12:43:16,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:43:16,597.597 INFO    ] Initializing speech engine...
[2026-06-13 12:43:16,601.601 INFO    ] 2026-06-13 12:43:16
[2026-06-13 12:43:16,829.829 INFO    ] 2026-06-13 12:43:16
[2026-06-13 12:43:16,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:43:17,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:43:17,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:43:17,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:43:17,253.253 INFO    ] time= 13/06/2026 12:43:17
[2026-06-13 12:43:17,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:43:17,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:43:17,377.377 INFO    ] No existing commands found in stream
[2026-06-13 12:43:22,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:43:22,391.391 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 12:43:26,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:43:26,332.332 INFO    ] Checking for system updates...
[2026-06-13 12:43:26,355.355 INFO    ] 200
[2026-06-13 12:43:26,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:26,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:43:26,388.388 INFO    ] No update needed
[2026-06-13 12:43:26,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 12:43:26,410.410 INFO    ] 200
[2026-06-13 12:43:26,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:26,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:43:26,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:26,481.481 INFO    ] No camera update needed
[2026-06-13 12:43:26,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:43:26,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:43:26,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:43:26,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:43:28,529.529 INFO    ] ================================================
[2026-06-13 12:43:28,545.545 INFO    ] Launching Daemon at Sat Jun 13 12:43:28 IST 2026
[2026-06-13 12:43:28,556.556 INFO    ] ================================================
[2026-06-13 12:43:28,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:43:28
[2026-06-13 12:43:29,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:43:29,373.373 INFO    ] Initializing speech engine...
[2026-06-13 12:43:29,378.378 INFO    ] 2026-06-13 12:43:29
[2026-06-13 12:43:29,593.593 INFO    ] 2026-06-13 12:43:29
[2026-06-13 12:43:29,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:43:29,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:43:29,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:43:29,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:43:30,014.014 INFO    ] time= 13/06/2026 12:43:29
[2026-06-13 12:43:30,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:43:30,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:43:30,146.146 INFO    ] No existing commands found in stream
[2026-06-13 12:43:35,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:43:35,158.158 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 12:43:38,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:43:38,823.823 INFO    ] Checking for system updates...
[2026-06-13 12:43:38,844.844 INFO    ] 200
[2026-06-13 12:43:38,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:38,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:43:38,878.878 INFO    ] No update needed
[2026-06-13 12:43:38,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 12:43:38,899.899 INFO    ] 200
[2026-06-13 12:43:38,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:38,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:43:38,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:43:38,965.965 INFO    ] No camera update needed
[2026-06-13 12:43:38,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:43:38,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:43:38,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:43:38,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:43:41,012.012 INFO    ] ================================================
[2026-06-13 12:43:41,027.027 INFO    ] Launching Daemon at Sat Jun 13 12:43:41 IST 2026
[2026-06-13 12:43:41,038.038 INFO    ] ================================================
[2026-06-13 12:43:41,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:43:41
[2026-06-13 12:43:41,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:43:41,894.894 INFO    ] Initializing speech engine...
[2026-06-13 12:43:41,899.899 INFO    ] 2026-06-13 12:43:41
[2026-06-13 12:43:42,108.108 INFO    ] 2026-06-13 12:43:42
[2026-06-13 12:43:42,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:43:42,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:43:42,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:43:42,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:43:42,534.534 INFO    ] time= 13/06/2026 12:43:42
[2026-06-13 12:43:42,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:43:42,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:43:42,634.634 INFO    ] No existing commands found in stream
[2026-06-13 12:43:47,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:43:47,646.646 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 12:43:51,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:43:51,867.867 INFO    ] Checking for system updates...
[2026-06-13 12:43:51,888.888 INFO    ] 200
[2026-06-13 12:43:51,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:51,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:51,922.922 INFO    ] No update needed
[2026-06-13 12:43:51,924.924 INFO    ] Checking for camera pi updates...
[2026-06-13 12:43:51,944.944 INFO    ] 200
[2026-06-13 12:43:51,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:43:51,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:43:52,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:43:52,007.007 INFO    ] No camera update needed
[2026-06-13 12:43:52,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:43:52,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:43:52,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:43:52,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:43:54,056.056 INFO    ] ================================================
[2026-06-13 12:43:54,072.072 INFO    ] Launching Daemon at Sat Jun 13 12:43:54 IST 2026
[2026-06-13 12:43:54,084.084 INFO    ] ================================================
[2026-06-13 12:43:54,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:43:54
[2026-06-13 12:43:54,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:43:54,894.894 INFO    ] Initializing speech engine...
[2026-06-13 12:43:54,900.900 INFO    ] 2026-06-13 12:43:54
[2026-06-13 12:43:55,104.104 INFO    ] 2026-06-13 12:43:55
[2026-06-13 12:43:55,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:43:55,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:43:55,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:43:55,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:43:55,521.521 INFO    ] time= 13/06/2026 12:43:55
[2026-06-13 12:43:55,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:43:55,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:43:55,620.620 INFO    ] No existing commands found in stream
[2026-06-13 12:44:00,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:00,633.633 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 12:44:02,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:44:02,353.353 INFO    ] Checking for system updates...
[2026-06-13 12:44:02,373.373 INFO    ] 200
[2026-06-13 12:44:02,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:02,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:02,410.410 INFO    ] No update needed
[2026-06-13 12:44:02,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:02,432.432 INFO    ] 200
[2026-06-13 12:44:02,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:02,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:02,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:02,479.479 INFO    ] No camera update needed
[2026-06-13 12:44:02,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:02,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:02,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:02,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:04,527.527 INFO    ] ================================================
[2026-06-13 12:44:04,544.544 INFO    ] Launching Daemon at Sat Jun 13 12:44:04 IST 2026
[2026-06-13 12:44:04,554.554 INFO    ] ================================================
[2026-06-13 12:44:04,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:04
[2026-06-13 12:44:05,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:05,620.620 INFO    ] Initializing speech engine...
[2026-06-13 12:44:05,639.639 INFO    ] 2026-06-13 12:44:05
[2026-06-13 12:44:05,886.886 INFO    ] 2026-06-13 12:44:05
[2026-06-13 12:44:05,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:06,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:06,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:06,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:06,247.247 INFO    ] time= 13/06/2026 12:44:06
[2026-06-13 12:44:06,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:06,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:06,344.344 INFO    ] No existing commands found in stream
[2026-06-13 12:44:11,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:11,359.359 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 12:44:12,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:44:12,893.893 INFO    ] Checking for system updates...
[2026-06-13 12:44:12,913.913 INFO    ] 200
[2026-06-13 12:44:12,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:12,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:12,947.947 INFO    ] No update needed
[2026-06-13 12:44:12,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:12,967.967 INFO    ] 200
[2026-06-13 12:44:12,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:12,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:13,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:13,034.034 INFO    ] No camera update needed
[2026-06-13 12:44:13,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:13,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:13,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:13,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:15,090.090 INFO    ] ================================================
[2026-06-13 12:44:15,105.105 INFO    ] Launching Daemon at Sat Jun 13 12:44:15 IST 2026
[2026-06-13 12:44:15,117.117 INFO    ] ================================================
[2026-06-13 12:44:15,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:15
[2026-06-13 12:44:15,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:15,937.937 INFO    ] Initializing speech engine...
[2026-06-13 12:44:15,945.945 INFO    ] 2026-06-13 12:44:15
[2026-06-13 12:44:16,155.155 INFO    ] 2026-06-13 12:44:16
[2026-06-13 12:44:16,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:16,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:16,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:16,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:16,576.576 INFO    ] time= 13/06/2026 12:44:16
[2026-06-13 12:44:16,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:16,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:16,678.678 INFO    ] No existing commands found in stream
[2026-06-13 12:44:21,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:21,690.690 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 12:44:24,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:44:24,981.981 INFO    ] Checking for system updates...
[2026-06-13 12:44:25,007.007 INFO    ] 200
[2026-06-13 12:44:25,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:25,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:25,043.043 INFO    ] No update needed
[2026-06-13 12:44:25,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:25,064.064 INFO    ] 200
[2026-06-13 12:44:25,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:25,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:25,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:25,132.132 INFO    ] No camera update needed
[2026-06-13 12:44:25,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:25,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:25,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:25,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:27,182.182 INFO    ] ================================================
[2026-06-13 12:44:27,198.198 INFO    ] Launching Daemon at Sat Jun 13 12:44:27 IST 2026
[2026-06-13 12:44:27,209.209 INFO    ] ================================================
[2026-06-13 12:44:27,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:27
[2026-06-13 12:44:27,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:28,044.044 INFO    ] Initializing speech engine...
[2026-06-13 12:44:28,049.049 INFO    ] 2026-06-13 12:44:28
[2026-06-13 12:44:28,253.253 INFO    ] 2026-06-13 12:44:28
[2026-06-13 12:44:28,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:28,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:28,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:28,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:28,652.652 INFO    ] time= 13/06/2026 12:44:28
[2026-06-13 12:44:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:28,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:28,767.767 INFO    ] No existing commands found in stream
[2026-06-13 12:44:33,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:33,779.779 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 12:44:34,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:44:34,251.251 INFO    ] Checking for system updates...
[2026-06-13 12:44:34,272.272 INFO    ] 200
[2026-06-13 12:44:34,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:34,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:34,310.310 INFO    ] No update needed
[2026-06-13 12:44:34,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:34,331.331 INFO    ] 200
[2026-06-13 12:44:34,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:34,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:34,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:34,501.501 INFO    ] No camera update needed
[2026-06-13 12:44:34,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:34,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:34,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:34,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:36,549.549 INFO    ] ================================================
[2026-06-13 12:44:36,565.565 INFO    ] Launching Daemon at Sat Jun 13 12:44:36 IST 2026
[2026-06-13 12:44:36,576.576 INFO    ] ================================================
[2026-06-13 12:44:36,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:36
[2026-06-13 12:44:37,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:37,361.361 INFO    ] Initializing speech engine...
[2026-06-13 12:44:37,366.366 INFO    ] 2026-06-13 12:44:37
[2026-06-13 12:44:37,593.593 INFO    ] 2026-06-13 12:44:37
[2026-06-13 12:44:37,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:37,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:37,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:37,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:37,972.972 INFO    ] time= 13/06/2026 12:44:37
[2026-06-13 12:44:38,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:38,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:38,143.143 INFO    ] No existing commands found in stream
[2026-06-13 12:44:43,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:43,156.156 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 12:44:43,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:44:43,999.999 INFO    ] Checking for system updates...
[2026-06-13 12:44:44,021.021 INFO    ] 200
[2026-06-13 12:44:44,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:44,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:44,056.056 INFO    ] No update needed
[2026-06-13 12:44:44,057.057 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:44,077.077 INFO    ] 200
[2026-06-13 12:44:44,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:44,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:44,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:44,152.152 INFO    ] No camera update needed
[2026-06-13 12:44:44,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:44,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:44,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:44,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:46,200.200 INFO    ] ================================================
[2026-06-13 12:44:46,215.215 INFO    ] Launching Daemon at Sat Jun 13 12:44:46 IST 2026
[2026-06-13 12:44:46,226.226 INFO    ] ================================================
[2026-06-13 12:44:46,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:46
[2026-06-13 12:44:46,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:47,057.057 INFO    ] Initializing speech engine...
[2026-06-13 12:44:47,068.068 INFO    ] 2026-06-13 12:44:47
[2026-06-13 12:44:47,277.277 INFO    ] 2026-06-13 12:44:47
[2026-06-13 12:44:47,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:47,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:47,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:47,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:47,699.699 INFO    ] time= 13/06/2026 12:44:47
[2026-06-13 12:44:47,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:47,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:47,801.801 INFO    ] No existing commands found in stream
[2026-06-13 12:44:52,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:44:52,818.818 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 12:44:55,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:44:55,162.162 INFO    ] Checking for system updates...
[2026-06-13 12:44:55,183.183 INFO    ] 200
[2026-06-13 12:44:55,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:55,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:55,219.219 INFO    ] No update needed
[2026-06-13 12:44:55,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 12:44:55,240.240 INFO    ] 200
[2026-06-13 12:44:55,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:44:55,268.268 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:44:55,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:44:55,308.308 INFO    ] No camera update needed
[2026-06-13 12:44:55,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:44:55,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:44:55,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:44:55,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:44:57,355.355 INFO    ] ================================================
[2026-06-13 12:44:57,370.370 INFO    ] Launching Daemon at Sat Jun 13 12:44:57 IST 2026
[2026-06-13 12:44:57,381.381 INFO    ] ================================================
[2026-06-13 12:44:57,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:44:57
[2026-06-13 12:44:58,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:44:58,229.229 INFO    ] Initializing speech engine...
[2026-06-13 12:44:58,234.234 INFO    ] 2026-06-13 12:44:58
[2026-06-13 12:44:58,443.443 INFO    ] 2026-06-13 12:44:58
[2026-06-13 12:44:58,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:44:58,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:44:58,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:44:58,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:44:58,844.844 INFO    ] time= 13/06/2026 12:44:58
[2026-06-13 12:44:58,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:44:58,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:44:58,970.970 INFO    ] No existing commands found in stream
[2026-06-13 12:45:03,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:03,983.983 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 12:45:04,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:45:04,722.722 INFO    ] Checking for system updates...
[2026-06-13 12:45:04,746.746 INFO    ] 200
[2026-06-13 12:45:04,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:04,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:04,782.782 INFO    ] No update needed
[2026-06-13 12:45:04,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 12:45:04,804.804 INFO    ] 200
[2026-06-13 12:45:04,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:04,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:45:04,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:04,868.868 INFO    ] No camera update needed
[2026-06-13 12:45:04,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:45:04,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:45:04,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:45:04,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:45:06,918.918 INFO    ] ================================================
[2026-06-13 12:45:06,934.934 INFO    ] Launching Daemon at Sat Jun 13 12:45:06 IST 2026
[2026-06-13 12:45:06,945.945 INFO    ] ================================================
[2026-06-13 12:45:07,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:45:07
[2026-06-13 12:45:07,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:45:07,736.736 INFO    ] Initializing speech engine...
[2026-06-13 12:45:07,741.741 INFO    ] 2026-06-13 12:45:07
[2026-06-13 12:45:07,947.947 INFO    ] 2026-06-13 12:45:07
[2026-06-13 12:45:07,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:45:08,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:45:08,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:45:08,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:45:08,357.357 INFO    ] time= 13/06/2026 12:45:08
[2026-06-13 12:45:08,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:45:08,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:45:08,470.470 INFO    ] No existing commands found in stream
[2026-06-13 12:45:13,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:13,482.482 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 12:45:14,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:45:14,897.897 INFO    ] Checking for system updates...
[2026-06-13 12:45:14,917.917 INFO    ] 200
[2026-06-13 12:45:14,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:14,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:14,951.951 INFO    ] No update needed
[2026-06-13 12:45:14,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 12:45:14,972.972 INFO    ] 200
[2026-06-13 12:45:14,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:14,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:45:15,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:15,035.035 INFO    ] No camera update needed
[2026-06-13 12:45:15,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:45:15,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:45:15,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:45:15,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:45:17,081.081 INFO    ] ================================================
[2026-06-13 12:45:17,097.097 INFO    ] Launching Daemon at Sat Jun 13 12:45:17 IST 2026
[2026-06-13 12:45:17,107.107 INFO    ] ================================================
[2026-06-13 12:45:17,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:45:17
[2026-06-13 12:45:17,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:45:17,974.974 INFO    ] Initializing speech engine...
[2026-06-13 12:45:17,980.980 INFO    ] 2026-06-13 12:45:17
[2026-06-13 12:45:18,192.192 INFO    ] 2026-06-13 12:45:18
[2026-06-13 12:45:18,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:45:18,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:45:18,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:45:18,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:45:18,612.612 INFO    ] time= 13/06/2026 12:45:18
[2026-06-13 12:45:18,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:45:18,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:45:18,715.715 INFO    ] No existing commands found in stream
[2026-06-13 12:45:23,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:23,729.729 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 12:45:24,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:45:24,614.614 INFO    ] Checking for system updates...
[2026-06-13 12:45:24,637.637 INFO    ] 200
[2026-06-13 12:45:24,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:24,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:24,674.674 INFO    ] No update needed
[2026-06-13 12:45:24,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 12:45:24,696.696 INFO    ] 200
[2026-06-13 12:45:24,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:24,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:45:24,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:24,760.760 INFO    ] No camera update needed
[2026-06-13 12:45:24,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:45:24,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:45:24,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:45:24,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:45:26,807.807 INFO    ] ================================================
[2026-06-13 12:45:26,823.823 INFO    ] Launching Daemon at Sat Jun 13 12:45:26 IST 2026
[2026-06-13 12:45:26,834.834 INFO    ] ================================================
[2026-06-13 12:45:27,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:45:27
[2026-06-13 12:45:27,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:45:27,658.658 INFO    ] Initializing speech engine...
[2026-06-13 12:45:27,663.663 INFO    ] 2026-06-13 12:45:27
[2026-06-13 12:45:27,871.871 INFO    ] 2026-06-13 12:45:27
[2026-06-13 12:45:27,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:45:28,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:45:28,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:45:28,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:45:28,286.286 INFO    ] time= 13/06/2026 12:45:28
[2026-06-13 12:45:28,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:45:28,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:45:28,385.385 INFO    ] No existing commands found in stream
[2026-06-13 12:45:33,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:33,397.397 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 12:45:37,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:45:37,086.086 INFO    ] Checking for system updates...
[2026-06-13 12:45:37,109.109 INFO    ] 200
[2026-06-13 12:45:37,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:37,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:45:37,145.145 INFO    ] No update needed
[2026-06-13 12:45:37,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 12:45:37,166.166 INFO    ] 200
[2026-06-13 12:45:37,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:37,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:45:37,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:45:37,237.237 INFO    ] No camera update needed
[2026-06-13 12:45:37,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:45:37,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:45:37,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:45:37,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:45:39,286.286 INFO    ] ================================================
[2026-06-13 12:45:39,301.301 INFO    ] Launching Daemon at Sat Jun 13 12:45:39 IST 2026
[2026-06-13 12:45:39,313.313 INFO    ] ================================================
[2026-06-13 12:45:39,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:45:39
[2026-06-13 12:45:39,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:45:40,127.127 INFO    ] Initializing speech engine...
[2026-06-13 12:45:40,132.132 INFO    ] 2026-06-13 12:45:40
[2026-06-13 12:45:40,348.348 INFO    ] 2026-06-13 12:45:40
[2026-06-13 12:45:40,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:45:40,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:45:40,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:45:40,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:45:40,781.781 INFO    ] time= 13/06/2026 12:45:40
[2026-06-13 12:45:40,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:45:40,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:45:40,921.921 INFO    ] No existing commands found in stream
[2026-06-13 12:45:45,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:45,934.934 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 12:45:47,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:45:47,314.314 INFO    ] Checking for system updates...
[2026-06-13 12:45:47,335.335 INFO    ] 200
[2026-06-13 12:45:47,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:47,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:45:47,369.369 INFO    ] No update needed
[2026-06-13 12:45:47,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 12:45:47,392.392 INFO    ] 200
[2026-06-13 12:45:47,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:45:47,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:45:47,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:45:47,466.466 INFO    ] No camera update needed
[2026-06-13 12:45:47,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:45:47,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:45:47,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:45:47,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:45:49,516.516 INFO    ] ================================================
[2026-06-13 12:45:49,531.531 INFO    ] Launching Daemon at Sat Jun 13 12:45:49 IST 2026
[2026-06-13 12:45:49,542.542 INFO    ] ================================================
[2026-06-13 12:45:49,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:45:49
[2026-06-13 12:45:50,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:45:50,328.328 INFO    ] Initializing speech engine...
[2026-06-13 12:45:50,333.333 INFO    ] 2026-06-13 12:45:50
[2026-06-13 12:45:50,538.538 INFO    ] 2026-06-13 12:45:50
[2026-06-13 12:45:50,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:45:50,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:45:50,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:45:50,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:45:50,938.938 INFO    ] time= 13/06/2026 12:45:50
[2026-06-13 12:45:50,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:45:50,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:45:51,053.053 INFO    ] No existing commands found in stream
[2026-06-13 12:45:56,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:45:56,065.065 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 12:46:00,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:46:00,067.067 INFO    ] Checking for system updates...
[2026-06-13 12:46:00,088.088 INFO    ] 200
[2026-06-13 12:46:00,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:00,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:00,125.125 INFO    ] No update needed
[2026-06-13 12:46:00,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:00,148.148 INFO    ] 200
[2026-06-13 12:46:00,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:00,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:00,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:00,219.219 INFO    ] No camera update needed
[2026-06-13 12:46:00,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:00,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:00,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:00,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:02,265.265 INFO    ] ================================================
[2026-06-13 12:46:02,277.277 INFO    ] Launching Daemon at Sat Jun 13 12:46:02 IST 2026
[2026-06-13 12:46:02,287.287 INFO    ] ================================================
[2026-06-13 12:46:02,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:02
[2026-06-13 12:46:03,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:03,861.861 INFO    ] Initializing speech engine...
[2026-06-13 12:46:03,871.871 INFO    ] 2026-06-13 12:46:03
[2026-06-13 12:46:04,136.136 INFO    ] 2026-06-13 12:46:04
[2026-06-13 12:46:04,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:46:04,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:46:04,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:46:04,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:46:04,496.496 INFO    ] time= 13/06/2026 12:46:04
[2026-06-13 12:46:04,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:46:04,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:46:04,597.597 INFO    ] No existing commands found in stream
[2026-06-13 12:46:09,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:46:09,630.630 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 12:46:11,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:46:11,698.698 INFO    ] Checking for system updates...
[2026-06-13 12:46:11,720.720 INFO    ] 200
[2026-06-13 12:46:11,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:11,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:11,753.753 INFO    ] No update needed
[2026-06-13 12:46:11,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:11,774.774 INFO    ] 200
[2026-06-13 12:46:11,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:11,801.801 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:11,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:46:11,846.846 INFO    ] No camera update needed
[2026-06-13 12:46:11,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:11,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:11,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:11,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:13,893.893 INFO    ] ================================================
[2026-06-13 12:46:13,908.908 INFO    ] Launching Daemon at Sat Jun 13 12:46:13 IST 2026
[2026-06-13 12:46:13,920.920 INFO    ] ================================================
[2026-06-13 12:46:14,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:14
[2026-06-13 12:46:14,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:14,752.752 INFO    ] Initializing speech engine...
[2026-06-13 12:46:14,762.762 INFO    ] 2026-06-13 12:46:14
[2026-06-13 12:46:14,972.972 INFO    ] 2026-06-13 12:46:14
[2026-06-13 12:46:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:46:15,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:46:15,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:46:15,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:46:15,388.388 INFO    ] time= 13/06/2026 12:46:15
[2026-06-13 12:46:15,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:46:15,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:46:15,497.497 INFO    ] No existing commands found in stream
[2026-06-13 12:46:20,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:46:20,511.511 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 12:46:22,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:46:22,628.628 INFO    ] Checking for system updates...
[2026-06-13 12:46:22,649.649 INFO    ] 200
[2026-06-13 12:46:22,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:22,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:22,682.682 INFO    ] No update needed
[2026-06-13 12:46:22,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:22,703.703 INFO    ] 200
[2026-06-13 12:46:22,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:22,728.728 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:22,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:22,759.759 INFO    ] No camera update needed
[2026-06-13 12:46:22,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:22,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:22,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:22,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:24,807.807 INFO    ] ================================================
[2026-06-13 12:46:24,824.824 INFO    ] Launching Daemon at Sat Jun 13 12:46:24 IST 2026
[2026-06-13 12:46:24,835.835 INFO    ] ================================================
[2026-06-13 12:46:25,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:25
[2026-06-13 12:46:25,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:26,100.100 INFO    ] Initializing speech engine...
[2026-06-13 12:46:26,109.109 INFO    ] 2026-06-13 12:46:26
[2026-06-13 12:46:26,360.360 INFO    ] 2026-06-13 12:46:26
[2026-06-13 12:46:26,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:46:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:46:26,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:46:26,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:46:26,708.708 INFO    ] time= 13/06/2026 12:46:26
[2026-06-13 12:46:26,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:46:26,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:46:26,822.822 INFO    ] No existing commands found in stream
[2026-06-13 12:46:31,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:46:31,837.837 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 12:46:33,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:46:33,293.293 INFO    ] Checking for system updates...
[2026-06-13 12:46:33,315.315 INFO    ] 200
[2026-06-13 12:46:33,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:33,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:46:33,349.349 INFO    ] No update needed
[2026-06-13 12:46:33,350.350 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:33,370.370 INFO    ] 200
[2026-06-13 12:46:33,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:33,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:33,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:46:33,436.436 INFO    ] No camera update needed
[2026-06-13 12:46:33,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:33,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:33,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:33,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:35,484.484 INFO    ] ================================================
[2026-06-13 12:46:35,501.501 INFO    ] Launching Daemon at Sat Jun 13 12:46:35 IST 2026
[2026-06-13 12:46:35,512.512 INFO    ] ================================================
[2026-06-13 12:46:35,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:35
[2026-06-13 12:46:36,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:36,543.543 INFO    ] Initializing speech engine...
[2026-06-13 12:46:36,566.566 INFO    ] 2026-06-13 12:46:36
[2026-06-13 12:46:36,820.820 INFO    ] 2026-06-13 12:46:36
[2026-06-13 12:46:36,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:46:37,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:46:37,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:46:37,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:46:37,192.192 INFO    ] time= 13/06/2026 12:46:37
[2026-06-13 12:46:37,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:46:37,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:46:37,271.271 INFO    ] No existing commands found in stream
[2026-06-13 12:46:42,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:46:42,304.304 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 12:46:44,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:46:44,388.388 INFO    ] Checking for system updates...
[2026-06-13 12:46:44,409.409 INFO    ] 200
[2026-06-13 12:46:44,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:44,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:44,442.442 INFO    ] No update needed
[2026-06-13 12:46:44,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:44,465.465 INFO    ] 200
[2026-06-13 12:46:44,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:44,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:44,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:44,639.639 INFO    ] No camera update needed
[2026-06-13 12:46:44,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:44,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:44,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:44,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:46,686.686 INFO    ] ================================================
[2026-06-13 12:46:46,702.702 INFO    ] Launching Daemon at Sat Jun 13 12:46:46 IST 2026
[2026-06-13 12:46:46,714.714 INFO    ] ================================================
[2026-06-13 12:46:47,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:47
[2026-06-13 12:46:47,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:47,763.763 INFO    ] Initializing speech engine...
[2026-06-13 12:46:47,773.773 INFO    ] 2026-06-13 12:46:47
[2026-06-13 12:46:48,026.026 INFO    ] 2026-06-13 12:46:48
[2026-06-13 12:46:48,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:46:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:46:48,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:46:48,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:46:48,504.504 INFO    ] time= 13/06/2026 12:46:48
[2026-06-13 12:46:48,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:46:48,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:46:48,655.655 INFO    ] No existing commands found in stream
[2026-06-13 12:46:53,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:46:53,673.673 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 12:46:56,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:46:56,053.053 INFO    ] Checking for system updates...
[2026-06-13 12:46:56,074.074 INFO    ] 200
[2026-06-13 12:46:56,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:56,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:56,108.108 INFO    ] No update needed
[2026-06-13 12:46:56,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 12:46:56,129.129 INFO    ] 200
[2026-06-13 12:46:56,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:46:56,154.154 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:46:56,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:46:56,200.200 INFO    ] No camera update needed
[2026-06-13 12:46:56,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:46:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:46:56,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:46:56,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:46:58,248.248 INFO    ] ================================================
[2026-06-13 12:46:58,264.264 INFO    ] Launching Daemon at Sat Jun 13 12:46:58 IST 2026
[2026-06-13 12:46:58,275.275 INFO    ] ================================================
[2026-06-13 12:46:58,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:46:58
[2026-06-13 12:46:59,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:46:59,540.540 INFO    ] Initializing speech engine...
[2026-06-13 12:46:59,549.549 INFO    ] 2026-06-13 12:46:59
[2026-06-13 12:46:59,850.850 INFO    ] 2026-06-13 12:46:59
[2026-06-13 12:46:59,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:00,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:00,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:00,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:00,241.241 INFO    ] time= 13/06/2026 12:47:00
[2026-06-13 12:47:00,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:00,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:00,371.371 INFO    ] No existing commands found in stream
[2026-06-13 12:47:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:47:05,392.392 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 12:47:07,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:47:07,150.150 INFO    ] Checking for system updates...
[2026-06-13 12:47:07,171.171 INFO    ] 200
[2026-06-13 12:47:07,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:07,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:47:07,207.207 INFO    ] No update needed
[2026-06-13 12:47:07,208.208 INFO    ] Checking for camera pi updates...
[2026-06-13 12:47:07,229.229 INFO    ] 200
[2026-06-13 12:47:07,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:07,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:47:07,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:47:07,291.291 INFO    ] No camera update needed
[2026-06-13 12:47:07,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:47:07,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:47:07,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:47:07,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:47:09,345.345 INFO    ] ================================================
[2026-06-13 12:47:09,360.360 INFO    ] Launching Daemon at Sat Jun 13 12:47:09 IST 2026
[2026-06-13 12:47:09,371.371 INFO    ] ================================================
[2026-06-13 12:47:09,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:47:09
[2026-06-13 12:47:10,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:47:10,587.587 INFO    ] Initializing speech engine...
[2026-06-13 12:47:10,596.596 INFO    ] 2026-06-13 12:47:10
[2026-06-13 12:47:10,851.851 INFO    ] 2026-06-13 12:47:10
[2026-06-13 12:47:10,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:11,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:11,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:11,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:11,223.223 INFO    ] time= 13/06/2026 12:47:11
[2026-06-13 12:47:11,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:11,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:11,303.303 INFO    ] No existing commands found in stream
[2026-06-13 12:47:16,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:47:16,319.319 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 12:47:17,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:47:17,871.871 INFO    ] Checking for system updates...
[2026-06-13 12:47:17,907.907 INFO    ] 200
[2026-06-13 12:47:17,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:17,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:17,967.967 INFO    ] No update needed
[2026-06-13 12:47:17,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 12:47:18,004.004 INFO    ] 200
[2026-06-13 12:47:18,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:18,040.040 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:47:18,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:18,080.080 INFO    ] No camera update needed
[2026-06-13 12:47:18,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:47:18,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:47:18,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:47:18,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:47:20,120.120 INFO    ] ================================================
[2026-06-13 12:47:20,129.129 INFO    ] Launching Daemon at Sat Jun 13 12:47:20 IST 2026
[2026-06-13 12:47:20,135.135 INFO    ] ================================================
[2026-06-13 12:47:20,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:47:20
[2026-06-13 12:47:20,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:47:20,949.949 INFO    ] Initializing speech engine...
[2026-06-13 12:47:20,958.958 INFO    ] 2026-06-13 12:47:20
[2026-06-13 12:47:21,167.167 INFO    ] 2026-06-13 12:47:21
[2026-06-13 12:47:21,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:21,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:21,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:21,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:21,580.580 INFO    ] time= 13/06/2026 12:47:21
[2026-06-13 12:47:21,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:21,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:21,686.686 INFO    ] No existing commands found in stream
[2026-06-13 12:47:26,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:47:26,699.699 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 12:47:29,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:47:29,317.317 INFO    ] Checking for system updates...
[2026-06-13 12:47:29,338.338 INFO    ] 200
[2026-06-13 12:47:29,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:29,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:29,375.375 INFO    ] No update needed
[2026-06-13 12:47:29,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 12:47:29,396.396 INFO    ] 200
[2026-06-13 12:47:29,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:29,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:47:29,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:29,464.464 INFO    ] No camera update needed
[2026-06-13 12:47:29,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:47:29,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:47:29,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:47:29,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:47:31,511.511 INFO    ] ================================================
[2026-06-13 12:47:31,527.527 INFO    ] Launching Daemon at Sat Jun 13 12:47:31 IST 2026
[2026-06-13 12:47:31,538.538 INFO    ] ================================================
[2026-06-13 12:47:31,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:47:31
[2026-06-13 12:47:32,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:47:32,812.812 INFO    ] Initializing speech engine...
[2026-06-13 12:47:32,818.818 INFO    ] 2026-06-13 12:47:32
[2026-06-13 12:47:33,074.074 INFO    ] 2026-06-13 12:47:33
[2026-06-13 12:47:33,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:33,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:33,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:33,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:33,539.539 INFO    ] time= 13/06/2026 12:47:33
[2026-06-13 12:47:33,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:33,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:33,700.700 INFO    ] No existing commands found in stream
[2026-06-13 12:47:38,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:47:38,715.715 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 12:47:42,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:47:42,977.977 INFO    ] Checking for system updates...
[2026-06-13 12:47:42,997.997 INFO    ] 200
[2026-06-13 12:47:42,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:43,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:43,033.033 INFO    ] No update needed
[2026-06-13 12:47:43,035.035 INFO    ] Checking for camera pi updates...
[2026-06-13 12:47:43,055.055 INFO    ] 200
[2026-06-13 12:47:43,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:43,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:47:43,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:43,106.106 INFO    ] No camera update needed
[2026-06-13 12:47:43,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:47:43,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:47:43,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:47:43,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:47:45,155.155 INFO    ] ================================================
[2026-06-13 12:47:45,171.171 INFO    ] Launching Daemon at Sat Jun 13 12:47:45 IST 2026
[2026-06-13 12:47:45,182.182 INFO    ] ================================================
[2026-06-13 12:47:45,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:47:45
[2026-06-13 12:47:45,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:47:45,968.968 INFO    ] Initializing speech engine...
[2026-06-13 12:47:45,973.973 INFO    ] 2026-06-13 12:47:45
[2026-06-13 12:47:46,189.189 INFO    ] 2026-06-13 12:47:46
[2026-06-13 12:47:46,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:46,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:46,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:46,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:46,608.608 INFO    ] time= 13/06/2026 12:47:46
[2026-06-13 12:47:46,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:46,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:46,703.703 INFO    ] No existing commands found in stream
[2026-06-13 12:47:51,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:47:51,717.717 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 12:47:52,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:47:52,416.416 INFO    ] Checking for system updates...
[2026-06-13 12:47:52,439.439 INFO    ] 200
[2026-06-13 12:47:52,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:52,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:52,480.480 INFO    ] No update needed
[2026-06-13 12:47:52,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 12:47:52,503.503 INFO    ] 200
[2026-06-13 12:47:52,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:47:52,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:47:52,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:47:52,581.581 INFO    ] No camera update needed
[2026-06-13 12:47:52,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:47:52,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:47:52,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:47:52,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:47:54,625.625 INFO    ] ================================================
[2026-06-13 12:47:54,642.642 INFO    ] Launching Daemon at Sat Jun 13 12:47:54 IST 2026
[2026-06-13 12:47:54,653.653 INFO    ] ================================================
[2026-06-13 12:47:55,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:47:55
[2026-06-13 12:47:55,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:47:55,502.502 INFO    ] Initializing speech engine...
[2026-06-13 12:47:55,506.506 INFO    ] 2026-06-13 12:47:55
[2026-06-13 12:47:55,717.717 INFO    ] 2026-06-13 12:47:55
[2026-06-13 12:47:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:47:55,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:47:55,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:47:56,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:47:56,144.144 INFO    ] time= 13/06/2026 12:47:56
[2026-06-13 12:47:56,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:47:56,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:47:56,244.244 INFO    ] No existing commands found in stream
[2026-06-13 12:48:01,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:48:01,257.257 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 12:48:03,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:48:03,315.315 INFO    ] Checking for system updates...
[2026-06-13 12:48:03,336.336 INFO    ] 200
[2026-06-13 12:48:03,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:03,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:48:03,402.402 INFO    ] No update needed
[2026-06-13 12:48:03,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 12:48:03,442.442 INFO    ] 200
[2026-06-13 12:48:03,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:03,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:48:03,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:48:03,515.515 INFO    ] No camera update needed
[2026-06-13 12:48:03,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:48:03,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:48:03,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:48:03,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:48:05,563.563 INFO    ] ================================================
[2026-06-13 12:48:05,578.578 INFO    ] Launching Daemon at Sat Jun 13 12:48:05 IST 2026
[2026-06-13 12:48:05,589.589 INFO    ] ================================================
[2026-06-13 12:48:06,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:48:06
[2026-06-13 12:48:06,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:48:06,919.919 INFO    ] Initializing speech engine...
[2026-06-13 12:48:06,927.927 INFO    ] 2026-06-13 12:48:06
[2026-06-13 12:48:07,186.186 INFO    ] 2026-06-13 12:48:07
[2026-06-13 12:48:07,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:48:07,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:48:07,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:48:07,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:48:07,642.642 INFO    ] time= 13/06/2026 12:48:07
[2026-06-13 12:48:07,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:48:07,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:48:07,879.879 INFO    ] No existing commands found in stream
[2026-06-13 12:48:12,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:48:12,903.903 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 12:48:17,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:48:17,038.038 INFO    ] Checking for system updates...
[2026-06-13 12:48:17,071.071 INFO    ] 200
[2026-06-13 12:48:17,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:17,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:48:17,106.106 INFO    ] No update needed
[2026-06-13 12:48:17,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 12:48:17,127.127 INFO    ] 200
[2026-06-13 12:48:17,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:17,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:48:17,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:48:17,192.192 INFO    ] No camera update needed
[2026-06-13 12:48:17,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:48:17,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:48:17,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:48:17,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:48:19,240.240 INFO    ] ================================================
[2026-06-13 12:48:19,255.255 INFO    ] Launching Daemon at Sat Jun 13 12:48:19 IST 2026
[2026-06-13 12:48:19,266.266 INFO    ] ================================================
[2026-06-13 12:48:19,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:48:19
[2026-06-13 12:48:19,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:48:20,046.046 INFO    ] Initializing speech engine...
[2026-06-13 12:48:20,050.050 INFO    ] 2026-06-13 12:48:20
[2026-06-13 12:48:20,254.254 INFO    ] 2026-06-13 12:48:20
[2026-06-13 12:48:20,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:48:20,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:48:20,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:48:20,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:48:20,655.655 INFO    ] time= 13/06/2026 12:48:20
[2026-06-13 12:48:20,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:48:20,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:48:20,836.836 INFO    ] No existing commands found in stream
[2026-06-13 12:48:25,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:48:25,848.848 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 12:48:27,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:48:27,373.373 INFO    ] Checking for system updates...
[2026-06-13 12:48:27,396.396 INFO    ] 200
[2026-06-13 12:48:27,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:27,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:48:27,429.429 INFO    ] No update needed
[2026-06-13 12:48:27,431.431 INFO    ] Checking for camera pi updates...
[2026-06-13 12:48:27,450.450 INFO    ] 200
[2026-06-13 12:48:27,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:27,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:48:27,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:48:27,515.515 INFO    ] No camera update needed
[2026-06-13 12:48:27,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:48:27,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:48:27,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:48:27,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:48:29,562.562 INFO    ] ================================================
[2026-06-13 12:48:29,579.579 INFO    ] Launching Daemon at Sat Jun 13 12:48:29 IST 2026
[2026-06-13 12:48:29,589.589 INFO    ] ================================================
[2026-06-13 12:48:29,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:48:29
[2026-06-13 12:48:30,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:48:30,374.374 INFO    ] Initializing speech engine...
[2026-06-13 12:48:30,381.381 INFO    ] 2026-06-13 12:48:30
[2026-06-13 12:48:30,596.596 INFO    ] 2026-06-13 12:48:30
[2026-06-13 12:48:30,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:48:30,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:48:30,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:48:30,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:48:31,006.006 INFO    ] time= 13/06/2026 12:48:30
[2026-06-13 12:48:31,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:48:31,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:48:31,118.118 INFO    ] No existing commands found in stream
[2026-06-13 12:48:36,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:48:36,131.131 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 12:48:40,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:48:40,209.209 INFO    ] Checking for system updates...
[2026-06-13 12:48:40,231.231 INFO    ] 200
[2026-06-13 12:48:40,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:40,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:48:40,264.264 INFO    ] No update needed
[2026-06-13 12:48:40,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 12:48:40,284.284 INFO    ] 200
[2026-06-13 12:48:40,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:40,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:48:40,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:48:40,360.360 INFO    ] No camera update needed
[2026-06-13 12:48:40,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:48:40,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:48:40,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:48:40,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:48:42,403.403 INFO    ] ================================================
[2026-06-13 12:48:42,419.419 INFO    ] Launching Daemon at Sat Jun 13 12:48:42 IST 2026
[2026-06-13 12:48:42,430.430 INFO    ] ================================================
[2026-06-13 12:48:42,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:48:42
[2026-06-13 12:48:43,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:48:43,261.261 INFO    ] Initializing speech engine...
[2026-06-13 12:48:43,266.266 INFO    ] 2026-06-13 12:48:43
[2026-06-13 12:48:43,475.475 INFO    ] 2026-06-13 12:48:43
[2026-06-13 12:48:43,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:48:43,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:48:43,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:48:43,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:48:43,895.895 INFO    ] time= 13/06/2026 12:48:43
[2026-06-13 12:48:43,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:48:43,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:48:43,996.996 INFO    ] No existing commands found in stream
[2026-06-13 12:48:49,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:48:49,014.014 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 12:48:52,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:48:52,601.601 INFO    ] Checking for system updates...
[2026-06-13 12:48:52,624.624 INFO    ] 200
[2026-06-13 12:48:52,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:52,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:48:52,656.656 INFO    ] No update needed
[2026-06-13 12:48:52,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 12:48:52,677.677 INFO    ] 200
[2026-06-13 12:48:52,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:48:52,703.703 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:48:52,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:48:52,844.844 INFO    ] No camera update needed
[2026-06-13 12:48:52,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:48:52,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:48:52,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:48:52,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:48:54,890.890 INFO    ] ================================================
[2026-06-13 12:48:54,905.905 INFO    ] Launching Daemon at Sat Jun 13 12:48:54 IST 2026
[2026-06-13 12:48:54,916.916 INFO    ] ================================================
[2026-06-13 12:48:55,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:48:55
[2026-06-13 12:48:55,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:48:55,724.724 INFO    ] Initializing speech engine...
[2026-06-13 12:48:55,730.730 INFO    ] 2026-06-13 12:48:55
[2026-06-13 12:48:55,938.938 INFO    ] 2026-06-13 12:48:55
[2026-06-13 12:48:55,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:48:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:48:56,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:48:56,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:48:56,298.298 INFO    ] time= 13/06/2026 12:48:56
[2026-06-13 12:48:56,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:48:56,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:48:56,514.514 INFO    ] No existing commands found in stream
[2026-06-13 12:49:01,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:01,524.524 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 12:49:03,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:49:03,498.498 INFO    ] Checking for system updates...
[2026-06-13 12:49:03,543.543 INFO    ] 200
[2026-06-13 12:49:03,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:03,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:03,606.606 INFO    ] No update needed
[2026-06-13 12:49:03,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:03,647.647 INFO    ] 200
[2026-06-13 12:49:03,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:03,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:03,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:03,754.754 INFO    ] No camera update needed
[2026-06-13 12:49:03,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:03,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:03,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:03,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:05,807.807 INFO    ] ================================================
[2026-06-13 12:49:05,816.816 INFO    ] Launching Daemon at Sat Jun 13 12:49:05 IST 2026
[2026-06-13 12:49:05,823.823 INFO    ] ================================================
[2026-06-13 12:49:06,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:06
[2026-06-13 12:49:06,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:06,633.633 INFO    ] Initializing speech engine...
[2026-06-13 12:49:06,639.639 INFO    ] 2026-06-13 12:49:06
[2026-06-13 12:49:06,844.844 INFO    ] 2026-06-13 12:49:06
[2026-06-13 12:49:06,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:06,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:07,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:07,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:49:07,216.216 INFO    ] time= 13/06/2026 12:49:07
[2026-06-13 12:49:07,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:49:07,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:49:07,388.388 INFO    ] No existing commands found in stream
[2026-06-13 12:49:12,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:12,401.401 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 12:49:13,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:49:13,587.587 INFO    ] Checking for system updates...
[2026-06-13 12:49:13,609.609 INFO    ] 200
[2026-06-13 12:49:13,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:13,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:49:13,645.645 INFO    ] No update needed
[2026-06-13 12:49:13,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:13,667.667 INFO    ] 200
[2026-06-13 12:49:13,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:13,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:13,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:49:13,738.738 INFO    ] No camera update needed
[2026-06-13 12:49:13,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:13,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:13,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:13,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:15,786.786 INFO    ] ================================================
[2026-06-13 12:49:15,802.802 INFO    ] Launching Daemon at Sat Jun 13 12:49:15 IST 2026
[2026-06-13 12:49:15,813.813 INFO    ] ================================================
[2026-06-13 12:49:16,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:16
[2026-06-13 12:49:16,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:16,615.615 INFO    ] Initializing speech engine...
[2026-06-13 12:49:16,624.624 INFO    ] 2026-06-13 12:49:16
[2026-06-13 12:49:16,841.841 INFO    ] 2026-06-13 12:49:16
[2026-06-13 12:49:16,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:17,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:17,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:17,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:49:17,276.276 INFO    ] time= 13/06/2026 12:49:17
[2026-06-13 12:49:17,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:49:17,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:49:17,397.397 INFO    ] No existing commands found in stream
[2026-06-13 12:49:22,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:22,411.411 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 12:49:23,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:49:23,303.303 INFO    ] Checking for system updates...
[2026-06-13 12:49:23,323.323 INFO    ] 200
[2026-06-13 12:49:23,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:23,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:23,356.356 INFO    ] No update needed
[2026-06-13 12:49:23,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:23,379.379 INFO    ] 200
[2026-06-13 12:49:23,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:23,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:23,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:23,437.437 INFO    ] No camera update needed
[2026-06-13 12:49:23,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:23,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:23,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:23,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:25,486.486 INFO    ] ================================================
[2026-06-13 12:49:25,501.501 INFO    ] Launching Daemon at Sat Jun 13 12:49:25 IST 2026
[2026-06-13 12:49:25,512.512 INFO    ] ================================================
[2026-06-13 12:49:25,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:25
[2026-06-13 12:49:26,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:26,312.312 INFO    ] Initializing speech engine...
[2026-06-13 12:49:26,317.317 INFO    ] 2026-06-13 12:49:26
[2026-06-13 12:49:26,541.541 INFO    ] 2026-06-13 12:49:26
[2026-06-13 12:49:26,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:26,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:26,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:26,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:49:26,965.965 INFO    ] time= 13/06/2026 12:49:26
[2026-06-13 12:49:26,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:49:26,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:49:27,064.064 INFO    ] No existing commands found in stream
[2026-06-13 12:49:32,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:32,074.074 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 12:49:32,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:49:32,919.919 INFO    ] Checking for system updates...
[2026-06-13 12:49:32,940.940 INFO    ] 200
[2026-06-13 12:49:32,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:32,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:32,974.974 INFO    ] No update needed
[2026-06-13 12:49:32,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:32,995.995 INFO    ] 200
[2026-06-13 12:49:32,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:33,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:33,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:33,057.057 INFO    ] No camera update needed
[2026-06-13 12:49:33,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:33,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:33,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:33,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:35,107.107 INFO    ] ================================================
[2026-06-13 12:49:35,123.123 INFO    ] Launching Daemon at Sat Jun 13 12:49:35 IST 2026
[2026-06-13 12:49:35,135.135 INFO    ] ================================================
[2026-06-13 12:49:35,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:35
[2026-06-13 12:49:35,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:36,270.270 INFO    ] Initializing speech engine...
[2026-06-13 12:49:36,276.276 INFO    ] 2026-06-13 12:49:36
[2026-06-13 12:49:36,588.588 INFO    ] 2026-06-13 12:49:36
[2026-06-13 12:49:36,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:36,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:36,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:36,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:49:37,022.022 INFO    ] time= 13/06/2026 12:49:36
[2026-06-13 12:49:37,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:49:37,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:49:37,266.266 INFO    ] No existing commands found in stream
[2026-06-13 12:49:42,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:42,286.286 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 12:49:45,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:49:45,192.192 INFO    ] Checking for system updates...
[2026-06-13 12:49:45,213.213 INFO    ] 200
[2026-06-13 12:49:45,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:45,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:45,250.250 INFO    ] No update needed
[2026-06-13 12:49:45,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:45,273.273 INFO    ] 200
[2026-06-13 12:49:45,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:45,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:45,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:49:45,340.340 INFO    ] No camera update needed
[2026-06-13 12:49:45,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:45,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:45,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:45,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:47,389.389 INFO    ] ================================================
[2026-06-13 12:49:47,405.405 INFO    ] Launching Daemon at Sat Jun 13 12:49:47 IST 2026
[2026-06-13 12:49:47,418.418 INFO    ] ================================================
[2026-06-13 12:49:47,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:47
[2026-06-13 12:49:48,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:48,231.231 INFO    ] Initializing speech engine...
[2026-06-13 12:49:48,240.240 INFO    ] 2026-06-13 12:49:48
[2026-06-13 12:49:48,446.446 INFO    ] 2026-06-13 12:49:48
[2026-06-13 12:49:48,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:48,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:48,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:48,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:49:48,843.843 INFO    ] time= 13/06/2026 12:49:48
[2026-06-13 12:49:48,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:49:48,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:49:48,964.964 INFO    ] No existing commands found in stream
[2026-06-13 12:49:53,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:49:53,977.977 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 12:49:56,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:49:56,288.288 INFO    ] Checking for system updates...
[2026-06-13 12:49:56,342.342 INFO    ] 200
[2026-06-13 12:49:56,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:56,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:49:56,400.400 INFO    ] No update needed
[2026-06-13 12:49:56,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 12:49:56,437.437 INFO    ] 200
[2026-06-13 12:49:56,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:49:56,464.464 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:49:56,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:49:56,514.514 INFO    ] No camera update needed
[2026-06-13 12:49:56,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:49:56,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:49:56,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:49:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:49:58,562.562 INFO    ] ================================================
[2026-06-13 12:49:58,577.577 INFO    ] Launching Daemon at Sat Jun 13 12:49:58 IST 2026
[2026-06-13 12:49:58,589.589 INFO    ] ================================================
[2026-06-13 12:49:58,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:49:58
[2026-06-13 12:49:59,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:49:59,428.428 INFO    ] Initializing speech engine...
[2026-06-13 12:49:59,433.433 INFO    ] 2026-06-13 12:49:59
[2026-06-13 12:49:59,646.646 INFO    ] 2026-06-13 12:49:59
[2026-06-13 12:49:59,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:49:59,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:49:59,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:49:59,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:00,064.064 INFO    ] time= 13/06/2026 12:50:00
[2026-06-13 12:50:00,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:00,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:00,172.172 INFO    ] No existing commands found in stream
[2026-06-13 12:50:05,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:50:05,185.185 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 12:50:08,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:50:08,140.140 INFO    ] Checking for system updates...
[2026-06-13 12:50:08,178.178 INFO    ] 200
[2026-06-13 12:50:08,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:08,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:08,239.239 INFO    ] No update needed
[2026-06-13 12:50:08,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 12:50:08,278.278 INFO    ] 200
[2026-06-13 12:50:08,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:08,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:50:08,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:50:08,367.367 INFO    ] No camera update needed
[2026-06-13 12:50:08,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:50:08,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:50:08,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:50:08,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:50:10,416.416 INFO    ] ================================================
[2026-06-13 12:50:10,431.431 INFO    ] Launching Daemon at Sat Jun 13 12:50:10 IST 2026
[2026-06-13 12:50:10,442.442 INFO    ] ================================================
[2026-06-13 12:50:10,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:50:10
[2026-06-13 12:50:11,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:50:11,220.220 INFO    ] Initializing speech engine...
[2026-06-13 12:50:11,227.227 INFO    ] 2026-06-13 12:50:11
[2026-06-13 12:50:11,439.439 INFO    ] 2026-06-13 12:50:11
[2026-06-13 12:50:11,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:50:11,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:50:11,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:50:11,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:11,839.839 INFO    ] time= 13/06/2026 12:50:11
[2026-06-13 12:50:11,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:11,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:11,958.958 INFO    ] No existing commands found in stream
[2026-06-13 12:50:16,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:50:16,971.971 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 12:50:20,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:50:20,351.351 INFO    ] Checking for system updates...
[2026-06-13 12:50:20,372.372 INFO    ] 200
[2026-06-13 12:50:20,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:20,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:20,407.407 INFO    ] No update needed
[2026-06-13 12:50:20,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 12:50:20,431.431 INFO    ] 200
[2026-06-13 12:50:20,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:20,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:50:20,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:20,499.499 INFO    ] No camera update needed
[2026-06-13 12:50:20,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:50:20,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:50:20,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:50:20,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:50:22,549.549 INFO    ] ================================================
[2026-06-13 12:50:22,565.565 INFO    ] Launching Daemon at Sat Jun 13 12:50:22 IST 2026
[2026-06-13 12:50:22,576.576 INFO    ] ================================================
[2026-06-13 12:50:22,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:50:22
[2026-06-13 12:50:23,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:50:23,373.373 INFO    ] Initializing speech engine...
[2026-06-13 12:50:23,379.379 INFO    ] 2026-06-13 12:50:23
[2026-06-13 12:50:23,586.586 INFO    ] 2026-06-13 12:50:23
[2026-06-13 12:50:23,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:50:23,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:50:23,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:50:23,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:23,988.988 INFO    ] time= 13/06/2026 12:50:23
[2026-06-13 12:50:24,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:24,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:24,104.104 INFO    ] No existing commands found in stream
[2026-06-13 12:50:29,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:50:29,116.116 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 12:50:32,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:50:32,492.492 INFO    ] Checking for system updates...
[2026-06-13 12:50:32,533.533 INFO    ] 200
[2026-06-13 12:50:32,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:32,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:32,593.593 INFO    ] No update needed
[2026-06-13 12:50:32,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 12:50:32,631.631 INFO    ] 200
[2026-06-13 12:50:32,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:32,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:50:32,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:32,709.709 INFO    ] No camera update needed
[2026-06-13 12:50:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:50:32,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:50:32,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:50:32,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:50:34,769.769 INFO    ] ================================================
[2026-06-13 12:50:34,785.785 INFO    ] Launching Daemon at Sat Jun 13 12:50:34 IST 2026
[2026-06-13 12:50:34,796.796 INFO    ] ================================================
[2026-06-13 12:50:35,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:50:35
[2026-06-13 12:50:35,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:50:35,604.604 INFO    ] Initializing speech engine...
[2026-06-13 12:50:35,608.608 INFO    ] 2026-06-13 12:50:35
[2026-06-13 12:50:35,826.826 INFO    ] 2026-06-13 12:50:35
[2026-06-13 12:50:35,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:50:36,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:50:36,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:50:36,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:36,231.231 INFO    ] time= 13/06/2026 12:50:36
[2026-06-13 12:50:36,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:36,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:36,349.349 INFO    ] No existing commands found in stream
[2026-06-13 12:50:41,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:50:41,361.361 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 12:50:42,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:50:42,681.681 INFO    ] Checking for system updates...
[2026-06-13 12:50:42,702.702 INFO    ] 200
[2026-06-13 12:50:42,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:42,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:42,735.735 INFO    ] No update needed
[2026-06-13 12:50:42,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 12:50:42,756.756 INFO    ] 200
[2026-06-13 12:50:42,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:42,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:50:42,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:42,830.830 INFO    ] No camera update needed
[2026-06-13 12:50:42,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:50:42,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:50:42,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:50:42,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:50:44,879.879 INFO    ] ================================================
[2026-06-13 12:50:44,895.895 INFO    ] Launching Daemon at Sat Jun 13 12:50:44 IST 2026
[2026-06-13 12:50:44,906.906 INFO    ] ================================================
[2026-06-13 12:50:45,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:50:45
[2026-06-13 12:50:45,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:50:45,718.718 INFO    ] Initializing speech engine...
[2026-06-13 12:50:45,727.727 INFO    ] 2026-06-13 12:50:45
[2026-06-13 12:50:45,931.931 INFO    ] 2026-06-13 12:50:45
[2026-06-13 12:50:45,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:50:46,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:50:46,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:50:46,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:46,336.336 INFO    ] time= 13/06/2026 12:50:46
[2026-06-13 12:50:46,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:46,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:46,454.454 INFO    ] No existing commands found in stream
[2026-06-13 12:50:51,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:50:51,472.472 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 12:50:55,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:50:55,063.063 INFO    ] Checking for system updates...
[2026-06-13 12:50:55,084.084 INFO    ] 200
[2026-06-13 12:50:55,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:55,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:50:55,120.120 INFO    ] No update needed
[2026-06-13 12:50:55,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 12:50:55,142.142 INFO    ] 200
[2026-06-13 12:50:55,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:50:55,168.168 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:50:55,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:50:55,305.305 INFO    ] No camera update needed
[2026-06-13 12:50:55,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:50:55,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:50:55,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:50:55,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:50:57,353.353 INFO    ] ================================================
[2026-06-13 12:50:57,369.369 INFO    ] Launching Daemon at Sat Jun 13 12:50:57 IST 2026
[2026-06-13 12:50:57,380.380 INFO    ] ================================================
[2026-06-13 12:50:57,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:50:57
[2026-06-13 12:50:58,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:50:58,233.233 INFO    ] Initializing speech engine...
[2026-06-13 12:50:58,239.239 INFO    ] 2026-06-13 12:50:58
[2026-06-13 12:50:58,446.446 INFO    ] 2026-06-13 12:50:58
[2026-06-13 12:50:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:50:58,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:50:58,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:50:58,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:50:58,862.862 INFO    ] time= 13/06/2026 12:50:58
[2026-06-13 12:50:58,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:50:58,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:50:58,969.969 INFO    ] No existing commands found in stream
[2026-06-13 12:51:03,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:03,982.982 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 12:51:06,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:51:06,992.992 INFO    ] Checking for system updates...
[2026-06-13 12:51:07,013.013 INFO    ] 200
[2026-06-13 12:51:07,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:07,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:07,047.047 INFO    ] No update needed
[2026-06-13 12:51:07,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:07,068.068 INFO    ] 200
[2026-06-13 12:51:07,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:07,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:51:07,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:07,141.141 INFO    ] No camera update needed
[2026-06-13 12:51:07,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:07,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:07,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:07,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:09,190.190 INFO    ] ================================================
[2026-06-13 12:51:09,205.205 INFO    ] Launching Daemon at Sat Jun 13 12:51:09 IST 2026
[2026-06-13 12:51:09,216.216 INFO    ] ================================================
[2026-06-13 12:51:09,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:51:09
[2026-06-13 12:51:09,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:51:10,020.020 INFO    ] Initializing speech engine...
[2026-06-13 12:51:10,025.025 INFO    ] 2026-06-13 12:51:10
[2026-06-13 12:51:10,255.255 INFO    ] 2026-06-13 12:51:10
[2026-06-13 12:51:10,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:51:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:51:10,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:51:10,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:51:10,678.678 INFO    ] time= 13/06/2026 12:51:10
[2026-06-13 12:51:10,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:51:10,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:51:10,810.810 INFO    ] No existing commands found in stream
[2026-06-13 12:51:15,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:15,823.823 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 12:51:16,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:51:16,275.275 INFO    ] Checking for system updates...
[2026-06-13 12:51:16,295.295 INFO    ] 200
[2026-06-13 12:51:16,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:16,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:51:16,329.329 INFO    ] No update needed
[2026-06-13 12:51:16,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:16,350.350 INFO    ] 200
[2026-06-13 12:51:16,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:16,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:51:16,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:51:16,412.412 INFO    ] No camera update needed
[2026-06-13 12:51:16,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:16,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:16,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:16,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:18,460.460 INFO    ] ================================================
[2026-06-13 12:51:18,478.478 INFO    ] Launching Daemon at Sat Jun 13 12:51:18 IST 2026
[2026-06-13 12:51:18,489.489 INFO    ] ================================================
[2026-06-13 12:51:18,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:51:18
[2026-06-13 12:51:19,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:51:19,333.333 INFO    ] Initializing speech engine...
[2026-06-13 12:51:19,343.343 INFO    ] 2026-06-13 12:51:19
[2026-06-13 12:51:19,551.551 INFO    ] 2026-06-13 12:51:19
[2026-06-13 12:51:19,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:51:19,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:51:19,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:51:19,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:51:19,948.948 INFO    ] time= 13/06/2026 12:51:19
[2026-06-13 12:51:19,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:51:19,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:51:20,069.069 INFO    ] No existing commands found in stream
[2026-06-13 12:51:25,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:25,082.082 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 12:51:26,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:51:26,748.748 INFO    ] Checking for system updates...
[2026-06-13 12:51:26,770.770 INFO    ] 200
[2026-06-13 12:51:26,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:26,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:26,803.803 INFO    ] No update needed
[2026-06-13 12:51:26,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:26,824.824 INFO    ] 200
[2026-06-13 12:51:26,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:26,849.849 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:51:26,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:26,886.886 INFO    ] No camera update needed
[2026-06-13 12:51:26,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:26,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:26,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:26,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:28,927.927 INFO    ] ================================================
[2026-06-13 12:51:28,935.935 INFO    ] Launching Daemon at Sat Jun 13 12:51:28 IST 2026
[2026-06-13 12:51:28,941.941 INFO    ] ================================================
[2026-06-13 12:51:29,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:51:29
[2026-06-13 12:51:29,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:51:29,742.742 INFO    ] Initializing speech engine...
[2026-06-13 12:51:29,747.747 INFO    ] 2026-06-13 12:51:29
[2026-06-13 12:51:29,950.950 INFO    ] 2026-06-13 12:51:29
[2026-06-13 12:51:29,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:51:30,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:51:30,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:51:30,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:51:30,359.359 INFO    ] time= 13/06/2026 12:51:30
[2026-06-13 12:51:30,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:51:30,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:51:30,464.464 INFO    ] No existing commands found in stream
[2026-06-13 12:51:35,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:35,475.475 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 12:51:36,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:51:36,637.637 INFO    ] Checking for system updates...
[2026-06-13 12:51:36,658.658 INFO    ] 200
[2026-06-13 12:51:36,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:36,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:36,691.691 INFO    ] No update needed
[2026-06-13 12:51:36,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:36,720.720 INFO    ] 200
[2026-06-13 12:51:36,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:36,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:51:36,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:51:36,794.794 INFO    ] No camera update needed
[2026-06-13 12:51:36,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:36,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:36,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:36,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:38,842.842 INFO    ] ================================================
[2026-06-13 12:51:38,858.858 INFO    ] Launching Daemon at Sat Jun 13 12:51:38 IST 2026
[2026-06-13 12:51:38,868.868 INFO    ] ================================================
[2026-06-13 12:51:39,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:51:39
[2026-06-13 12:51:39,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:51:39,695.695 INFO    ] Initializing speech engine...
[2026-06-13 12:51:39,701.701 INFO    ] 2026-06-13 12:51:39
[2026-06-13 12:51:39,904.904 INFO    ] 2026-06-13 12:51:39
[2026-06-13 12:51:39,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:51:40,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:51:40,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:51:40,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:51:40,305.305 INFO    ] time= 13/06/2026 12:51:40
[2026-06-13 12:51:40,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:51:40,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:51:40,421.421 INFO    ] No existing commands found in stream
[2026-06-13 12:51:45,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:45,433.433 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 12:51:47,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:51:47,087.087 INFO    ] Checking for system updates...
[2026-06-13 12:51:47,110.110 INFO    ] 200
[2026-06-13 12:51:47,112.112 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:47,113.113 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 12:51:47,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:47,143.143 INFO    ] 200
[2026-06-13 12:51:47,144.144 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:47,146.146 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 12:51:47,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:47,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:47,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:47,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:49,189.189 INFO    ] ================================================
[2026-06-13 12:51:49,205.205 INFO    ] Launching Daemon at Sat Jun 13 12:51:49 IST 2026
[2026-06-13 12:51:49,217.217 INFO    ] ================================================
[2026-06-13 12:51:49,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:51:49
[2026-06-13 12:51:49,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:51:50,094.094 INFO    ] Initializing speech engine...
[2026-06-13 12:51:50,103.103 INFO    ] 2026-06-13 12:51:50
[2026-06-13 12:51:50,317.317 INFO    ] 2026-06-13 12:51:50
[2026-06-13 12:51:50,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:51:50,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:51:50,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:51:50,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:51:50,735.735 INFO    ] time= 13/06/2026 12:51:50
[2026-06-13 12:51:50,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:51:50,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:51:50,891.891 INFO    ] No existing commands found in stream
[2026-06-13 12:51:55,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:51:55,929.929 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 12:51:57,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:51:57,516.516 INFO    ] Checking for system updates...
[2026-06-13 12:51:57,537.537 INFO    ] 200
[2026-06-13 12:51:57,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:57,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:51:57,570.570 INFO    ] No update needed
[2026-06-13 12:51:57,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 12:51:57,591.591 INFO    ] 200
[2026-06-13 12:51:57,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:51:57,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:51:57,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:51:57,654.654 INFO    ] No camera update needed
[2026-06-13 12:51:57,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:51:57,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:51:57,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:51:57,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:51:59,700.700 INFO    ] ================================================
[2026-06-13 12:51:59,716.716 INFO    ] Launching Daemon at Sat Jun 13 12:51:59 IST 2026
[2026-06-13 12:51:59,727.727 INFO    ] ================================================
[2026-06-13 12:52:00,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:00
[2026-06-13 12:52:00,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:00,537.537 INFO    ] Initializing speech engine...
[2026-06-13 12:52:00,542.542 INFO    ] 2026-06-13 12:52:00
[2026-06-13 12:52:00,748.748 INFO    ] 2026-06-13 12:52:00
[2026-06-13 12:52:00,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:00,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:00,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:01,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:01,161.161 INFO    ] time= 13/06/2026 12:52:01
[2026-06-13 12:52:01,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:01,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:01,266.266 INFO    ] No existing commands found in stream
[2026-06-13 12:52:06,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:52:06,340.340 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 12:52:10,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:52:10,004.004 INFO    ] Checking for system updates...
[2026-06-13 12:52:10,024.024 INFO    ] 200
[2026-06-13 12:52:10,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:10,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:10,058.058 INFO    ] No update needed
[2026-06-13 12:52:10,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 12:52:10,079.079 INFO    ] 200
[2026-06-13 12:52:10,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:10,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:52:10,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:10,141.141 INFO    ] No camera update needed
[2026-06-13 12:52:10,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:52:10,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:52:10,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:52:10,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:52:12,190.190 INFO    ] ================================================
[2026-06-13 12:52:12,206.206 INFO    ] Launching Daemon at Sat Jun 13 12:52:12 IST 2026
[2026-06-13 12:52:12,217.217 INFO    ] ================================================
[2026-06-13 12:52:12,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:12
[2026-06-13 12:52:12,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:13,019.019 INFO    ] Initializing speech engine...
[2026-06-13 12:52:13,024.024 INFO    ] 2026-06-13 12:52:13
[2026-06-13 12:52:13,248.248 INFO    ] 2026-06-13 12:52:13
[2026-06-13 12:52:13,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:13,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:13,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:13,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:13,591.591 INFO    ] time= 13/06/2026 12:52:13
[2026-06-13 12:52:13,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:13,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:13,704.704 INFO    ] No existing commands found in stream
[2026-06-13 12:52:18,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:52:18,720.720 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 12:52:20,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:52:20,234.234 INFO    ] Checking for system updates...
[2026-06-13 12:52:20,256.256 INFO    ] 200
[2026-06-13 12:52:20,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:20,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:52:20,291.291 INFO    ] No update needed
[2026-06-13 12:52:20,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 12:52:20,312.312 INFO    ] 200
[2026-06-13 12:52:20,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:20,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:52:20,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:52:20,386.386 INFO    ] No camera update needed
[2026-06-13 12:52:20,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:52:20,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:52:20,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:52:20,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:52:22,435.435 INFO    ] ================================================
[2026-06-13 12:52:22,451.451 INFO    ] Launching Daemon at Sat Jun 13 12:52:22 IST 2026
[2026-06-13 12:52:22,462.462 INFO    ] ================================================
[2026-06-13 12:52:22,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:22
[2026-06-13 12:52:23,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:23,269.269 INFO    ] Initializing speech engine...
[2026-06-13 12:52:23,276.276 INFO    ] 2026-06-13 12:52:23
[2026-06-13 12:52:23,503.503 INFO    ] 2026-06-13 12:52:23
[2026-06-13 12:52:23,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:23,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:23,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:23,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:23,930.930 INFO    ] time= 13/06/2026 12:52:23
[2026-06-13 12:52:23,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:23,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:24,066.066 INFO    ] No existing commands found in stream
[2026-06-13 12:52:29,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:52:29,080.080 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 12:52:30,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:52:30,797.797 INFO    ] Checking for system updates...
[2026-06-13 12:52:30,817.817 INFO    ] 200
[2026-06-13 12:52:30,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:30,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:52:30,850.850 INFO    ] No update needed
[2026-06-13 12:52:30,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 12:52:30,871.871 INFO    ] 200
[2026-06-13 12:52:30,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:30,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:52:30,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:52:30,947.947 INFO    ] No camera update needed
[2026-06-13 12:52:30,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:52:30,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:52:30,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:52:30,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:52:32,994.994 INFO    ] ================================================
[2026-06-13 12:52:33,010.010 INFO    ] Launching Daemon at Sat Jun 13 12:52:33 IST 2026
[2026-06-13 12:52:33,020.020 INFO    ] ================================================
[2026-06-13 12:52:33,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:33
[2026-06-13 12:52:33,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:33,812.812 INFO    ] Initializing speech engine...
[2026-06-13 12:52:33,817.817 INFO    ] 2026-06-13 12:52:33
[2026-06-13 12:52:34,021.021 INFO    ] 2026-06-13 12:52:34
[2026-06-13 12:52:34,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:34,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:34,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:34,425.425 INFO    ] time= 13/06/2026 12:52:34
[2026-06-13 12:52:34,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:34,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:34,533.533 INFO    ] No existing commands found in stream
[2026-06-13 12:52:39,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:52:39,547.547 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 12:52:41,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:52:41,908.908 INFO    ] Checking for system updates...
[2026-06-13 12:52:41,929.929 INFO    ] 200
[2026-06-13 12:52:41,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:41,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:41,964.964 INFO    ] No update needed
[2026-06-13 12:52:41,965.965 INFO    ] Checking for camera pi updates...
[2026-06-13 12:52:41,985.985 INFO    ] 200
[2026-06-13 12:52:41,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:42,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:52:42,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:42,048.048 INFO    ] No camera update needed
[2026-06-13 12:52:42,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:52:42,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:52:42,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:52:42,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:52:44,096.096 INFO    ] ================================================
[2026-06-13 12:52:44,111.111 INFO    ] Launching Daemon at Sat Jun 13 12:52:44 IST 2026
[2026-06-13 12:52:44,122.122 INFO    ] ================================================
[2026-06-13 12:52:44,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:44
[2026-06-13 12:52:44,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:44,903.903 INFO    ] Initializing speech engine...
[2026-06-13 12:52:44,911.911 INFO    ] 2026-06-13 12:52:44
[2026-06-13 12:52:45,131.131 INFO    ] 2026-06-13 12:52:45
[2026-06-13 12:52:45,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:45,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:45,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:45,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:45,559.559 INFO    ] time= 13/06/2026 12:52:45
[2026-06-13 12:52:45,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:45,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:45,693.693 INFO    ] No existing commands found in stream
[2026-06-13 12:52:50,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:52:50,706.706 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 12:52:53,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:52:53,323.323 INFO    ] Checking for system updates...
[2026-06-13 12:52:53,343.343 INFO    ] 200
[2026-06-13 12:52:53,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:53,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:53,379.379 INFO    ] No update needed
[2026-06-13 12:52:53,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 12:52:53,401.401 INFO    ] 200
[2026-06-13 12:52:53,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:52:53,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:52:53,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:52:53,469.469 INFO    ] No camera update needed
[2026-06-13 12:52:53,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:52:53,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:52:53,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:52:53,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:52:55,516.516 INFO    ] ================================================
[2026-06-13 12:52:55,533.533 INFO    ] Launching Daemon at Sat Jun 13 12:52:55 IST 2026
[2026-06-13 12:52:55,544.544 INFO    ] ================================================
[2026-06-13 12:52:55,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:52:55
[2026-06-13 12:52:56,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:52:56,340.340 INFO    ] Initializing speech engine...
[2026-06-13 12:52:56,353.353 INFO    ] 2026-06-13 12:52:56
[2026-06-13 12:52:56,563.563 INFO    ] 2026-06-13 12:52:56
[2026-06-13 12:52:56,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:52:56,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:52:56,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:52:56,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:52:56,981.981 INFO    ] time= 13/06/2026 12:52:56
[2026-06-13 12:52:57,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:52:57,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:52:57,083.083 INFO    ] No existing commands found in stream
[2026-06-13 12:53:02,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:02,092.092 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 12:53:05,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:53:05,734.734 INFO    ] Checking for system updates...
[2026-06-13 12:53:05,755.755 INFO    ] 200
[2026-06-13 12:53:05,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:05,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:05,788.788 INFO    ] No update needed
[2026-06-13 12:53:05,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 12:53:05,810.810 INFO    ] 200
[2026-06-13 12:53:05,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:05,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:53:05,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:05,875.875 INFO    ] No camera update needed
[2026-06-13 12:53:05,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:53:05,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:53:05,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:53:05,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:53:07,931.931 INFO    ] ================================================
[2026-06-13 12:53:07,947.947 INFO    ] Launching Daemon at Sat Jun 13 12:53:07 IST 2026
[2026-06-13 12:53:07,958.958 INFO    ] ================================================
[2026-06-13 12:53:08,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:53:08
[2026-06-13 12:53:08,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:53:08,839.839 INFO    ] Initializing speech engine...
[2026-06-13 12:53:08,844.844 INFO    ] 2026-06-13 12:53:08
[2026-06-13 12:53:09,064.064 INFO    ] 2026-06-13 12:53:09
[2026-06-13 12:53:09,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:53:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:53:09,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:53:09,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:53:09,507.507 INFO    ] time= 13/06/2026 12:53:09
[2026-06-13 12:53:09,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:53:09,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:53:09,671.671 INFO    ] No existing commands found in stream
[2026-06-13 12:53:14,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:14,686.686 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 12:53:16,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:53:16,043.043 INFO    ] Checking for system updates...
[2026-06-13 12:53:16,080.080 INFO    ] 200
[2026-06-13 12:53:16,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:16,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:16,139.139 INFO    ] No update needed
[2026-06-13 12:53:16,141.141 INFO    ] Checking for camera pi updates...
[2026-06-13 12:53:16,175.175 INFO    ] 200
[2026-06-13 12:53:16,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:16,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:53:16,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:16,269.269 INFO    ] No camera update needed
[2026-06-13 12:53:16,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:53:16,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:53:16,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:53:16,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:53:18,325.325 INFO    ] ================================================
[2026-06-13 12:53:18,341.341 INFO    ] Launching Daemon at Sat Jun 13 12:53:18 IST 2026
[2026-06-13 12:53:18,352.352 INFO    ] ================================================
[2026-06-13 12:53:18,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:53:18
[2026-06-13 12:53:18,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:53:19,136.136 INFO    ] Initializing speech engine...
[2026-06-13 12:53:19,146.146 INFO    ] 2026-06-13 12:53:19
[2026-06-13 12:53:19,350.350 INFO    ] 2026-06-13 12:53:19
[2026-06-13 12:53:19,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:53:19,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:53:19,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:53:19,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:53:19,754.754 INFO    ] time= 13/06/2026 12:53:19
[2026-06-13 12:53:19,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:53:19,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:53:19,864.864 INFO    ] No existing commands found in stream
[2026-06-13 12:53:24,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:24,877.877 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 12:53:28,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:53:28,876.876 INFO    ] Checking for system updates...
[2026-06-13 12:53:28,896.896 INFO    ] 200
[2026-06-13 12:53:28,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:28,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:28,932.932 INFO    ] No update needed
[2026-06-13 12:53:28,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 12:53:28,953.953 INFO    ] 200
[2026-06-13 12:53:28,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:28,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:53:29,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:29,030.030 INFO    ] No camera update needed
[2026-06-13 12:53:29,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:53:29,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:53:29,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:53:29,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:53:31,077.077 INFO    ] ================================================
[2026-06-13 12:53:31,092.092 INFO    ] Launching Daemon at Sat Jun 13 12:53:31 IST 2026
[2026-06-13 12:53:31,102.102 INFO    ] ================================================
[2026-06-13 12:53:31,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:53:31
[2026-06-13 12:53:32,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:53:32,360.360 INFO    ] Initializing speech engine...
[2026-06-13 12:53:32,369.369 INFO    ] 2026-06-13 12:53:32
[2026-06-13 12:53:32,638.638 INFO    ] 2026-06-13 12:53:32
[2026-06-13 12:53:32,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:53:32,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:53:32,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:53:33,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:53:33,023.023 INFO    ] time= 13/06/2026 12:53:33
[2026-06-13 12:53:33,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:53:33,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:53:33,202.202 INFO    ] No existing commands found in stream
[2026-06-13 12:53:38,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:38,236.236 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 12:53:40,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:53:40,233.233 INFO    ] Checking for system updates...
[2026-06-13 12:53:40,253.253 INFO    ] 200
[2026-06-13 12:53:40,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:40,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:40,289.289 INFO    ] No update needed
[2026-06-13 12:53:40,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 12:53:40,311.311 INFO    ] 200
[2026-06-13 12:53:40,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:40,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:53:40,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:40,375.375 INFO    ] No camera update needed
[2026-06-13 12:53:40,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:53:40,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:53:40,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:53:40,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:53:42,423.423 INFO    ] ================================================
[2026-06-13 12:53:42,438.438 INFO    ] Launching Daemon at Sat Jun 13 12:53:42 IST 2026
[2026-06-13 12:53:42,450.450 INFO    ] ================================================
[2026-06-13 12:53:42,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:53:42
[2026-06-13 12:53:43,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:53:43,271.271 INFO    ] Initializing speech engine...
[2026-06-13 12:53:43,277.277 INFO    ] 2026-06-13 12:53:43
[2026-06-13 12:53:43,481.481 INFO    ] 2026-06-13 12:53:43
[2026-06-13 12:53:43,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:53:43,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:53:43,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:53:43,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:53:43,891.891 INFO    ] time= 13/06/2026 12:53:43
[2026-06-13 12:53:43,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:53:43,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:53:43,996.996 INFO    ] No existing commands found in stream
[2026-06-13 12:53:49,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:49,008.008 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 12:53:50,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:53:50,353.353 INFO    ] Checking for system updates...
[2026-06-13 12:53:50,374.374 INFO    ] 200
[2026-06-13 12:53:50,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:50,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:53:50,410.410 INFO    ] No update needed
[2026-06-13 12:53:50,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 12:53:50,431.431 INFO    ] 200
[2026-06-13 12:53:50,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:53:50,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:53:50,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:53:50,494.494 INFO    ] No camera update needed
[2026-06-13 12:53:50,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:53:50,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:53:50,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:53:50,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:53:52,533.533 INFO    ] ================================================
[2026-06-13 12:53:52,541.541 INFO    ] Launching Daemon at Sat Jun 13 12:53:52 IST 2026
[2026-06-13 12:53:52,547.547 INFO    ] ================================================
[2026-06-13 12:53:52,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:53:52
[2026-06-13 12:53:53,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:53:53,383.383 INFO    ] Initializing speech engine...
[2026-06-13 12:53:53,387.387 INFO    ] 2026-06-13 12:53:53
[2026-06-13 12:53:53,606.606 INFO    ] 2026-06-13 12:53:53
[2026-06-13 12:53:53,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:53:53,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:53:53,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:53:54,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:53:54,063.063 INFO    ] time= 13/06/2026 12:53:54
[2026-06-13 12:53:54,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:53:54,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:53:54,285.285 INFO    ] No existing commands found in stream
[2026-06-13 12:53:59,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:53:59,318.318 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 12:54:01,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:54:01,147.147 INFO    ] Checking for system updates...
[2026-06-13 12:54:01,168.168 INFO    ] 200
[2026-06-13 12:54:01,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:01,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:01,201.201 INFO    ] No update needed
[2026-06-13 12:54:01,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:01,221.221 INFO    ] 200
[2026-06-13 12:54:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:01,250.250 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:01,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:01,287.287 INFO    ] No camera update needed
[2026-06-13 12:54:01,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:01,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:01,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:01,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:03,321.321 INFO    ] ================================================
[2026-06-13 12:54:03,330.330 INFO    ] Launching Daemon at Sat Jun 13 12:54:03 IST 2026
[2026-06-13 12:54:03,335.335 INFO    ] ================================================
[2026-06-13 12:54:03,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:03
[2026-06-13 12:54:03,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:54:04,137.137 INFO    ] Initializing speech engine...
[2026-06-13 12:54:04,142.142 INFO    ] 2026-06-13 12:54:04
[2026-06-13 12:54:04,345.345 INFO    ] 2026-06-13 12:54:04
[2026-06-13 12:54:04,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:54:04,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:54:04,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:54:04,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:54:04,740.740 INFO    ] time= 13/06/2026 12:54:04
[2026-06-13 12:54:04,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:54:04,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:54:04,858.858 INFO    ] No existing commands found in stream
[2026-06-13 12:54:09,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:54:09,871.871 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 12:54:13,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:54:13,797.797 INFO    ] Checking for system updates...
[2026-06-13 12:54:13,819.819 INFO    ] 200
[2026-06-13 12:54:13,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:13,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:13,852.852 INFO    ] No update needed
[2026-06-13 12:54:13,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:13,874.874 INFO    ] 200
[2026-06-13 12:54:13,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:13,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:13,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:13,941.941 INFO    ] No camera update needed
[2026-06-13 12:54:13,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:13,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:13,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:13,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:15,989.989 INFO    ] ================================================
[2026-06-13 12:54:16,004.004 INFO    ] Launching Daemon at Sat Jun 13 12:54:15 IST 2026
[2026-06-13 12:54:16,015.015 INFO    ] ================================================
[2026-06-13 12:54:16,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:16
[2026-06-13 12:54:16,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:54:16,879.879 INFO    ] Initializing speech engine...
[2026-06-13 12:54:16,885.885 INFO    ] 2026-06-13 12:54:16
[2026-06-13 12:54:17,088.088 INFO    ] 2026-06-13 12:54:17
[2026-06-13 12:54:17,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:54:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:54:17,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:54:17,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:54:17,493.493 INFO    ] time= 13/06/2026 12:54:17
[2026-06-13 12:54:17,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:54:17,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:54:17,602.602 INFO    ] No existing commands found in stream
[2026-06-13 12:54:22,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:54:22,616.616 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 12:54:24,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:54:24,753.753 INFO    ] Checking for system updates...
[2026-06-13 12:54:24,775.775 INFO    ] 200
[2026-06-13 12:54:24,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:24,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:24,809.809 INFO    ] No update needed
[2026-06-13 12:54:24,810.810 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:24,830.830 INFO    ] 200
[2026-06-13 12:54:24,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:24,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:24,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:24,896.896 INFO    ] No camera update needed
[2026-06-13 12:54:24,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:24,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:24,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:24,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:26,949.949 INFO    ] ================================================
[2026-06-13 12:54:26,964.964 INFO    ] Launching Daemon at Sat Jun 13 12:54:26 IST 2026
[2026-06-13 12:54:26,975.975 INFO    ] ================================================
[2026-06-13 12:54:27,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:27
[2026-06-13 12:54:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:54:27,849.849 INFO    ] Initializing speech engine...
[2026-06-13 12:54:27,854.854 INFO    ] 2026-06-13 12:54:27
[2026-06-13 12:54:28,069.069 INFO    ] 2026-06-13 12:54:28
[2026-06-13 12:54:28,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:54:28,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:54:28,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:54:28,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:54:28,480.480 INFO    ] time= 13/06/2026 12:54:28
[2026-06-13 12:54:28,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:54:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:54:28,602.602 INFO    ] No existing commands found in stream
[2026-06-13 12:54:33,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:54:33,620.620 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 12:54:37,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:54:37,944.944 INFO    ] Checking for system updates...
[2026-06-13 12:54:37,967.967 INFO    ] 200
[2026-06-13 12:54:37,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:37,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:38,001.001 INFO    ] No update needed
[2026-06-13 12:54:38,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:38,024.024 INFO    ] 200
[2026-06-13 12:54:38,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:38,053.053 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:38,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:38,094.094 INFO    ] No camera update needed
[2026-06-13 12:54:38,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:38,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:38,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:38,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:40,140.140 INFO    ] ================================================
[2026-06-13 12:54:40,155.155 INFO    ] Launching Daemon at Sat Jun 13 12:54:40 IST 2026
[2026-06-13 12:54:40,166.166 INFO    ] ================================================
[2026-06-13 12:54:40,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:40
[2026-06-13 12:54:40,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:54:41,029.029 INFO    ] Initializing speech engine...
[2026-06-13 12:54:41,032.032 INFO    ] 2026-06-13 12:54:41
[2026-06-13 12:54:41,244.244 INFO    ] 2026-06-13 12:54:41
[2026-06-13 12:54:41,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:54:41,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:54:41,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:54:41,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:54:41,666.666 INFO    ] time= 13/06/2026 12:54:41
[2026-06-13 12:54:41,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:54:41,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:54:41,769.769 INFO    ] No existing commands found in stream
[2026-06-13 12:54:46,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:54:46,782.782 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 12:54:47,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:54:47,391.391 INFO    ] Checking for system updates...
[2026-06-13 12:54:47,413.413 INFO    ] 200
[2026-06-13 12:54:47,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:47,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:47,447.447 INFO    ] No update needed
[2026-06-13 12:54:47,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:47,467.467 INFO    ] 200
[2026-06-13 12:54:47,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:47,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:47,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:47,541.541 INFO    ] No camera update needed
[2026-06-13 12:54:47,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:47,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:47,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:47,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:49,587.587 INFO    ] ================================================
[2026-06-13 12:54:49,602.602 INFO    ] Launching Daemon at Sat Jun 13 12:54:49 IST 2026
[2026-06-13 12:54:49,614.614 INFO    ] ================================================
[2026-06-13 12:54:49,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:49
[2026-06-13 12:54:50,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:54:50,386.386 INFO    ] Initializing speech engine...
[2026-06-13 12:54:50,390.390 INFO    ] 2026-06-13 12:54:50
[2026-06-13 12:54:50,610.610 INFO    ] 2026-06-13 12:54:50
[2026-06-13 12:54:50,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:54:50,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:54:50,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:54:50,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:54:51,023.023 INFO    ] time= 13/06/2026 12:54:50
[2026-06-13 12:54:51,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:54:51,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:54:51,129.129 INFO    ] No existing commands found in stream
[2026-06-13 12:54:56,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:54:56,143.143 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 12:54:57,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:54:57,389.389 INFO    ] Checking for system updates...
[2026-06-13 12:54:57,410.410 INFO    ] 200
[2026-06-13 12:54:57,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:57,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:57,443.443 INFO    ] No update needed
[2026-06-13 12:54:57,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 12:54:57,464.464 INFO    ] 200
[2026-06-13 12:54:57,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:54:57,489.489 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:54:57,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:54:57,530.530 INFO    ] No camera update needed
[2026-06-13 12:54:57,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:54:57,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:54:57,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:54:57,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:54:59,578.578 INFO    ] ================================================
[2026-06-13 12:54:59,594.594 INFO    ] Launching Daemon at Sat Jun 13 12:54:59 IST 2026
[2026-06-13 12:54:59,605.605 INFO    ] ================================================
[2026-06-13 12:54:59,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:54:59
[2026-06-13 12:55:00,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:00,413.413 INFO    ] Initializing speech engine...
[2026-06-13 12:55:00,418.418 INFO    ] 2026-06-13 12:55:00
[2026-06-13 12:55:00,622.622 INFO    ] 2026-06-13 12:55:00
[2026-06-13 12:55:00,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:00,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:00,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:00,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:01,029.029 INFO    ] time= 13/06/2026 12:55:00
[2026-06-13 12:55:01,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:01,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:01,139.139 INFO    ] No existing commands found in stream
[2026-06-13 12:55:06,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:55:06,151.151 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 12:55:07,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:55:07,623.623 INFO    ] Checking for system updates...
[2026-06-13 12:55:07,646.646 INFO    ] 200
[2026-06-13 12:55:07,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:07,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:55:07,679.679 INFO    ] No update needed
[2026-06-13 12:55:07,680.680 INFO    ] Checking for camera pi updates...
[2026-06-13 12:55:07,701.701 INFO    ] 200
[2026-06-13 12:55:07,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:07,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:55:07,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:55:07,869.869 INFO    ] No camera update needed
[2026-06-13 12:55:07,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:55:07,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:55:07,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:55:07,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:55:09,917.917 INFO    ] ================================================
[2026-06-13 12:55:09,933.933 INFO    ] Launching Daemon at Sat Jun 13 12:55:09 IST 2026
[2026-06-13 12:55:09,944.944 INFO    ] ================================================
[2026-06-13 12:55:10,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:55:10
[2026-06-13 12:55:10,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:10,756.756 INFO    ] Initializing speech engine...
[2026-06-13 12:55:10,762.762 INFO    ] 2026-06-13 12:55:10
[2026-06-13 12:55:10,964.964 INFO    ] 2026-06-13 12:55:10
[2026-06-13 12:55:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:11,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:11,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:11,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:11,344.344 INFO    ] time= 13/06/2026 12:55:11
[2026-06-13 12:55:11,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:11,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:11,550.550 INFO    ] No existing commands found in stream
[2026-06-13 12:55:16,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:55:16,562.562 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 12:55:19,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:55:19,974.974 INFO    ] Checking for system updates...
[2026-06-13 12:55:19,996.996 INFO    ] 200
[2026-06-13 12:55:19,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:20,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:55:20,029.029 INFO    ] No update needed
[2026-06-13 12:55:20,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 12:55:20,050.050 INFO    ] 200
[2026-06-13 12:55:20,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:20,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:55:20,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:55:20,122.122 INFO    ] No camera update needed
[2026-06-13 12:55:20,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:55:20,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:55:20,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:55:20,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:55:22,169.169 INFO    ] ================================================
[2026-06-13 12:55:22,185.185 INFO    ] Launching Daemon at Sat Jun 13 12:55:22 IST 2026
[2026-06-13 12:55:22,196.196 INFO    ] ================================================
[2026-06-13 12:55:22,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:55:22
[2026-06-13 12:55:22,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:23,005.005 INFO    ] Initializing speech engine...
[2026-06-13 12:55:23,010.010 INFO    ] 2026-06-13 12:55:23
[2026-06-13 12:55:23,268.268 INFO    ] 2026-06-13 12:55:23
[2026-06-13 12:55:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:23,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:23,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:23,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:23,683.683 INFO    ] time= 13/06/2026 12:55:23
[2026-06-13 12:55:23,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:23,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:23,853.853 INFO    ] No existing commands found in stream
[2026-06-13 12:55:28,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:55:28,866.866 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 12:55:30,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:55:30,049.049 INFO    ] Checking for system updates...
[2026-06-13 12:55:30,070.070 INFO    ] 200
[2026-06-13 12:55:30,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:30,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:55:30,103.103 INFO    ] No update needed
[2026-06-13 12:55:30,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 12:55:30,124.124 INFO    ] 200
[2026-06-13 12:55:30,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:30,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:55:30,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:55:30,173.173 INFO    ] No camera update needed
[2026-06-13 12:55:30,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:55:30,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:55:30,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:55:30,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:55:32,219.219 INFO    ] ================================================
[2026-06-13 12:55:32,235.235 INFO    ] Launching Daemon at Sat Jun 13 12:55:32 IST 2026
[2026-06-13 12:55:32,246.246 INFO    ] ================================================
[2026-06-13 12:55:32,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:55:32
[2026-06-13 12:55:32,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:33,060.060 INFO    ] Initializing speech engine...
[2026-06-13 12:55:33,069.069 INFO    ] 2026-06-13 12:55:33
[2026-06-13 12:55:33,294.294 INFO    ] 2026-06-13 12:55:33
[2026-06-13 12:55:33,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:33,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:33,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:33,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:33,718.718 INFO    ] time= 13/06/2026 12:55:33
[2026-06-13 12:55:33,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:33,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:33,850.850 INFO    ] No existing commands found in stream
[2026-06-13 12:55:38,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:55:38,864.864 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 12:55:41,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:55:41,339.339 INFO    ] Checking for system updates...
[2026-06-13 12:55:41,376.376 INFO    ] 200
[2026-06-13 12:55:41,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:41,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:55:41,422.422 INFO    ] No update needed
[2026-06-13 12:55:41,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 12:55:41,443.443 INFO    ] 200
[2026-06-13 12:55:41,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:41,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:55:41,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:55:41,508.508 INFO    ] No camera update needed
[2026-06-13 12:55:41,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:55:41,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:55:41,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:55:41,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:55:43,556.556 INFO    ] ================================================
[2026-06-13 12:55:43,571.571 INFO    ] Launching Daemon at Sat Jun 13 12:55:43 IST 2026
[2026-06-13 12:55:43,582.582 INFO    ] ================================================
[2026-06-13 12:55:43,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:55:43
[2026-06-13 12:55:44,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:44,375.375 INFO    ] Initializing speech engine...
[2026-06-13 12:55:44,379.379 INFO    ] 2026-06-13 12:55:44
[2026-06-13 12:55:44,598.598 INFO    ] 2026-06-13 12:55:44
[2026-06-13 12:55:44,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:44,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:44,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:45,021.021 INFO    ] time= 13/06/2026 12:55:44
[2026-06-13 12:55:45,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:45,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:45,123.123 INFO    ] No existing commands found in stream
[2026-06-13 12:55:50,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:55:50,134.134 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 12:55:51,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:55:51,540.540 INFO    ] Checking for system updates...
[2026-06-13 12:55:51,562.562 INFO    ] 200
[2026-06-13 12:55:51,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:51,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:55:51,600.600 INFO    ] No update needed
[2026-06-13 12:55:51,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 12:55:51,629.629 INFO    ] 200
[2026-06-13 12:55:51,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:55:51,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:55:51,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:55:51,724.724 INFO    ] No camera update needed
[2026-06-13 12:55:51,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:55:51,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:55:51,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:55:51,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:55:53,792.792 INFO    ] ================================================
[2026-06-13 12:55:53,807.807 INFO    ] Launching Daemon at Sat Jun 13 12:55:53 IST 2026
[2026-06-13 12:55:53,818.818 INFO    ] ================================================
[2026-06-13 12:55:54,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:55:54
[2026-06-13 12:55:54,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:55:55,017.017 INFO    ] Initializing speech engine...
[2026-06-13 12:55:55,022.022 INFO    ] 2026-06-13 12:55:55
[2026-06-13 12:55:55,226.226 INFO    ] 2026-06-13 12:55:55
[2026-06-13 12:55:55,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:55:55,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:55:55,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:55:55,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:55:55,631.631 INFO    ] time= 13/06/2026 12:55:55
[2026-06-13 12:55:55,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:55:55,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:55:55,739.739 INFO    ] No existing commands found in stream
[2026-06-13 12:56:00,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:00,752.752 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 12:56:02,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:56:02,062.062 INFO    ] Checking for system updates...
[2026-06-13 12:56:02,095.095 INFO    ] 200
[2026-06-13 12:56:02,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:02,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:02,144.144 INFO    ] No update needed
[2026-06-13 12:56:02,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:02,176.176 INFO    ] 200
[2026-06-13 12:56:02,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:02,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:02,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:02,236.236 INFO    ] No camera update needed
[2026-06-13 12:56:02,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:02,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:02,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:02,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:56:04,295.295 INFO    ] ================================================
[2026-06-13 12:56:04,311.311 INFO    ] Launching Daemon at Sat Jun 13 12:56:04 IST 2026
[2026-06-13 12:56:04,322.322 INFO    ] ================================================
[2026-06-13 12:56:04,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:56:04
[2026-06-13 12:56:04,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:56:05,101.101 INFO    ] Initializing speech engine...
[2026-06-13 12:56:05,106.106 INFO    ] 2026-06-13 12:56:05
[2026-06-13 12:56:05,307.307 INFO    ] 2026-06-13 12:56:05
[2026-06-13 12:56:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:56:05,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:56:05,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:56:05,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:56:05,738.738 INFO    ] time= 13/06/2026 12:56:05
[2026-06-13 12:56:05,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:56:05,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:56:05,842.842 INFO    ] No existing commands found in stream
[2026-06-13 12:56:10,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:10,856.856 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 12:56:13,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:56:13,240.240 INFO    ] Checking for system updates...
[2026-06-13 12:56:13,262.262 INFO    ] 200
[2026-06-13 12:56:13,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:13,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:56:13,298.298 INFO    ] No update needed
[2026-06-13 12:56:13,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:13,321.321 INFO    ] 200
[2026-06-13 12:56:13,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:13,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:13,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:13,389.389 INFO    ] No camera update needed
[2026-06-13 12:56:13,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:13,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:13,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:13,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:56:15,439.439 INFO    ] ================================================
[2026-06-13 12:56:15,454.454 INFO    ] Launching Daemon at Sat Jun 13 12:56:15 IST 2026
[2026-06-13 12:56:15,465.465 INFO    ] ================================================
[2026-06-13 12:56:15,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:56:15
[2026-06-13 12:56:16,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:56:16,250.250 INFO    ] Initializing speech engine...
[2026-06-13 12:56:16,256.256 INFO    ] 2026-06-13 12:56:16
[2026-06-13 12:56:16,459.459 INFO    ] 2026-06-13 12:56:16
[2026-06-13 12:56:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:56:16,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:56:16,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:56:16,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:56:16,864.864 INFO    ] time= 13/06/2026 12:56:16
[2026-06-13 12:56:16,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:56:16,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:56:16,975.975 INFO    ] No existing commands found in stream
[2026-06-13 12:56:21,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:21,992.992 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 12:56:23,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:56:23,126.126 INFO    ] Checking for system updates...
[2026-06-13 12:56:23,147.147 INFO    ] 200
[2026-06-13 12:56:23,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:23,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:23,180.180 INFO    ] No update needed
[2026-06-13 12:56:23,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:23,201.201 INFO    ] 200
[2026-06-13 12:56:23,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:23,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:23,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:23,263.263 INFO    ] No camera update needed
[2026-06-13 12:56:23,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:23,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:23,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:23,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:56:25,311.311 INFO    ] ================================================
[2026-06-13 12:56:25,326.326 INFO    ] Launching Daemon at Sat Jun 13 12:56:25 IST 2026
[2026-06-13 12:56:25,338.338 INFO    ] ================================================
[2026-06-13 12:56:25,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:56:25
[2026-06-13 12:56:26,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:56:26,165.165 INFO    ] Initializing speech engine...
[2026-06-13 12:56:26,169.169 INFO    ] 2026-06-13 12:56:26
[2026-06-13 12:56:26,372.372 INFO    ] 2026-06-13 12:56:26
[2026-06-13 12:56:26,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:56:26,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:56:26,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:56:26,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:56:26,771.771 INFO    ] time= 13/06/2026 12:56:26
[2026-06-13 12:56:26,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:56:26,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:56:26,888.888 INFO    ] No existing commands found in stream
[2026-06-13 12:56:31,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:31,900.900 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 12:56:36,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:56:36,093.093 INFO    ] Checking for system updates...
[2026-06-13 12:56:36,114.114 INFO    ] 200
[2026-06-13 12:56:36,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:36,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:56:36,149.149 INFO    ] No update needed
[2026-06-13 12:56:36,151.151 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:36,171.171 INFO    ] 200
[2026-06-13 12:56:36,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:36,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:36,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:56:36,242.242 INFO    ] No camera update needed
[2026-06-13 12:56:36,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:36,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:36,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:36,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:56:38,290.290 INFO    ] ================================================
[2026-06-13 12:56:38,305.305 INFO    ] Launching Daemon at Sat Jun 13 12:56:38 IST 2026
[2026-06-13 12:56:38,315.315 INFO    ] ================================================
[2026-06-13 12:56:38,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:56:38
[2026-06-13 12:56:38,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:56:39,102.102 INFO    ] Initializing speech engine...
[2026-06-13 12:56:39,107.107 INFO    ] 2026-06-13 12:56:39
[2026-06-13 12:56:39,337.337 INFO    ] 2026-06-13 12:56:39
[2026-06-13 12:56:39,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:56:39,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:56:39,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:56:39,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:56:39,710.710 INFO    ] time= 13/06/2026 12:56:39
[2026-06-13 12:56:39,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:56:39,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:56:39,890.890 INFO    ] No existing commands found in stream
[2026-06-13 12:56:44,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:44,904.904 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 12:56:48,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:56:48,470.470 INFO    ] Checking for system updates...
[2026-06-13 12:56:48,491.491 INFO    ] 200
[2026-06-13 12:56:48,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:48,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:48,525.525 INFO    ] No update needed
[2026-06-13 12:56:48,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:48,547.547 INFO    ] 200
[2026-06-13 12:56:48,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:48,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:48,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:48,611.611 INFO    ] No camera update needed
[2026-06-13 12:56:48,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:48,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:48,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:48,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:56:50,660.660 INFO    ] ================================================
[2026-06-13 12:56:50,675.675 INFO    ] Launching Daemon at Sat Jun 13 12:56:50 IST 2026
[2026-06-13 12:56:50,686.686 INFO    ] ================================================
[2026-06-13 12:56:51,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:56:51
[2026-06-13 12:56:51,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:56:51,496.496 INFO    ] Initializing speech engine...
[2026-06-13 12:56:51,501.501 INFO    ] 2026-06-13 12:56:51
[2026-06-13 12:56:51,729.729 INFO    ] 2026-06-13 12:56:51
[2026-06-13 12:56:51,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:56:51,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:56:51,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:56:52,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:56:52,125.125 INFO    ] time= 13/06/2026 12:56:52
[2026-06-13 12:56:52,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:56:52,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:56:52,288.288 INFO    ] No existing commands found in stream
[2026-06-13 12:56:57,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:56:57,301.301 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 12:56:59,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:56:59,535.535 INFO    ] Checking for system updates...
[2026-06-13 12:56:59,556.556 INFO    ] 200
[2026-06-13 12:56:59,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:59,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:59,590.590 INFO    ] No update needed
[2026-06-13 12:56:59,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 12:56:59,611.611 INFO    ] 200
[2026-06-13 12:56:59,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:56:59,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:56:59,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:56:59,670.670 INFO    ] No camera update needed
[2026-06-13 12:56:59,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:56:59,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:56:59,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:56:59,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:01,713.713 INFO    ] ================================================
[2026-06-13 12:57:01,730.730 INFO    ] Launching Daemon at Sat Jun 13 12:57:01 IST 2026
[2026-06-13 12:57:01,741.741 INFO    ] ================================================
[2026-06-13 12:57:02,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:02
[2026-06-13 12:57:02,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:02,639.639 INFO    ] Initializing speech engine...
[2026-06-13 12:57:02,653.653 INFO    ] 2026-06-13 12:57:02
[2026-06-13 12:57:02,866.866 INFO    ] 2026-06-13 12:57:02
[2026-06-13 12:57:02,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:02,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:03,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:03,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:03,218.218 INFO    ] time= 13/06/2026 12:57:03
[2026-06-13 12:57:03,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:03,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:03,388.388 INFO    ] No existing commands found in stream
[2026-06-13 12:57:08,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:57:08,401.401 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 12:57:11,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:57:11,292.292 INFO    ] Checking for system updates...
[2026-06-13 12:57:11,313.313 INFO    ] 200
[2026-06-13 12:57:11,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:11,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:11,348.348 INFO    ] No update needed
[2026-06-13 12:57:11,350.350 INFO    ] Checking for camera pi updates...
[2026-06-13 12:57:11,371.371 INFO    ] 200
[2026-06-13 12:57:11,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:11,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:57:11,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:11,545.545 INFO    ] No camera update needed
[2026-06-13 12:57:11,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:57:11,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:57:11,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:57:11,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:13,594.594 INFO    ] ================================================
[2026-06-13 12:57:13,609.609 INFO    ] Launching Daemon at Sat Jun 13 12:57:13 IST 2026
[2026-06-13 12:57:13,620.620 INFO    ] ================================================
[2026-06-13 12:57:13,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:13
[2026-06-13 12:57:14,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:14,427.427 INFO    ] Initializing speech engine...
[2026-06-13 12:57:14,432.432 INFO    ] 2026-06-13 12:57:14
[2026-06-13 12:57:14,638.638 INFO    ] 2026-06-13 12:57:14
[2026-06-13 12:57:14,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:14,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:14,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:15,041.041 INFO    ] time= 13/06/2026 12:57:14
[2026-06-13 12:57:15,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:15,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:15,150.150 INFO    ] No existing commands found in stream
[2026-06-13 12:57:20,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:57:20,162.162 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 12:57:21,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 12:57:21,738.738 INFO    ] Checking for system updates...
[2026-06-13 12:57:21,759.759 INFO    ] 200
[2026-06-13 12:57:21,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:21,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:21,795.795 INFO    ] No update needed
[2026-06-13 12:57:21,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 12:57:21,816.816 INFO    ] 200
[2026-06-13 12:57:21,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:21,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:57:21,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:21,882.882 INFO    ] No camera update needed
[2026-06-13 12:57:21,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:57:21,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:57:21,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:57:21,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:23,929.929 INFO    ] ================================================
[2026-06-13 12:57:23,944.944 INFO    ] Launching Daemon at Sat Jun 13 12:57:23 IST 2026
[2026-06-13 12:57:23,955.955 INFO    ] ================================================
[2026-06-13 12:57:24,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:24
[2026-06-13 12:57:24,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:24,741.741 INFO    ] Initializing speech engine...
[2026-06-13 12:57:24,754.754 INFO    ] 2026-06-13 12:57:24
[2026-06-13 12:57:24,976.976 INFO    ] 2026-06-13 12:57:24
[2026-06-13 12:57:25,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:25,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:25,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:25,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:25,381.381 INFO    ] time= 13/06/2026 12:57:25
[2026-06-13 12:57:25,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:25,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:25,542.542 INFO    ] No existing commands found in stream
[2026-06-13 12:57:30,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:57:30,554.554 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 12:57:33,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:57:33,568.568 INFO    ] Checking for system updates...
[2026-06-13 12:57:33,588.588 INFO    ] 200
[2026-06-13 12:57:33,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:33,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:33,621.621 INFO    ] No update needed
[2026-06-13 12:57:33,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 12:57:33,644.644 INFO    ] 200
[2026-06-13 12:57:33,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:33,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:57:33,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:33,708.708 INFO    ] No camera update needed
[2026-06-13 12:57:33,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:57:33,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:57:33,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:57:33,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:35,754.754 INFO    ] ================================================
[2026-06-13 12:57:35,769.769 INFO    ] Launching Daemon at Sat Jun 13 12:57:35 IST 2026
[2026-06-13 12:57:35,779.779 INFO    ] ================================================
[2026-06-13 12:57:36,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:36
[2026-06-13 12:57:36,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:36,582.582 INFO    ] Initializing speech engine...
[2026-06-13 12:57:36,592.592 INFO    ] 2026-06-13 12:57:36
[2026-06-13 12:57:36,795.795 INFO    ] 2026-06-13 12:57:36
[2026-06-13 12:57:36,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:36,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:37,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:37,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:37,212.212 INFO    ] time= 13/06/2026 12:57:37
[2026-06-13 12:57:37,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:37,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:37,310.310 INFO    ] No existing commands found in stream
[2026-06-13 12:57:42,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:57:42,321.321 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 12:57:42,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:57:42,647.647 INFO    ] Checking for system updates...
[2026-06-13 12:57:42,668.668 INFO    ] 200
[2026-06-13 12:57:42,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:42,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:57:42,701.701 INFO    ] No update needed
[2026-06-13 12:57:42,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 12:57:42,726.726 INFO    ] 200
[2026-06-13 12:57:42,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:42,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:57:42,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:57:42,791.791 INFO    ] No camera update needed
[2026-06-13 12:57:42,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:57:42,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:57:42,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:57:42,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:44,839.839 INFO    ] ================================================
[2026-06-13 12:57:44,855.855 INFO    ] Launching Daemon at Sat Jun 13 12:57:44 IST 2026
[2026-06-13 12:57:44,866.866 INFO    ] ================================================
[2026-06-13 12:57:45,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:45
[2026-06-13 12:57:45,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:45,673.673 INFO    ] Initializing speech engine...
[2026-06-13 12:57:45,683.683 INFO    ] 2026-06-13 12:57:45
[2026-06-13 12:57:45,893.893 INFO    ] 2026-06-13 12:57:45
[2026-06-13 12:57:45,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:46,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:46,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:46,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:46,304.304 INFO    ] time= 13/06/2026 12:57:46
[2026-06-13 12:57:46,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:46,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:46,415.415 INFO    ] No existing commands found in stream
[2026-06-13 12:57:51,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:57:51,428.428 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 12:57:52,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:57:52,912.912 INFO    ] Checking for system updates...
[2026-06-13 12:57:52,932.932 INFO    ] 200
[2026-06-13 12:57:52,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:52,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:57:52,968.968 INFO    ] No update needed
[2026-06-13 12:57:52,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 12:57:52,991.991 INFO    ] 200
[2026-06-13 12:57:52,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:57:53,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:57:53,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:57:53,062.062 INFO    ] No camera update needed
[2026-06-13 12:57:53,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:57:53,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:57:53,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:57:53,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:57:55,109.109 INFO    ] ================================================
[2026-06-13 12:57:55,125.125 INFO    ] Launching Daemon at Sat Jun 13 12:57:55 IST 2026
[2026-06-13 12:57:55,136.136 INFO    ] ================================================
[2026-06-13 12:57:55,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:57:55
[2026-06-13 12:57:55,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:57:55,924.924 INFO    ] Initializing speech engine...
[2026-06-13 12:57:55,933.933 INFO    ] 2026-06-13 12:57:55
[2026-06-13 12:57:56,125.125 INFO    ] 2026-06-13 12:57:56
[2026-06-13 12:57:56,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:57:56,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:57:56,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:57:56,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:57:56,432.432 INFO    ] time= 13/06/2026 12:57:56
[2026-06-13 12:57:56,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:57:56,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:57:56,567.567 INFO    ] No existing commands found in stream
[2026-06-13 12:58:01,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:58:01,600.600 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 12:58:03,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:58:03,678.678 INFO    ] Checking for system updates...
[2026-06-13 12:58:03,699.699 INFO    ] 200
[2026-06-13 12:58:03,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:03,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:03,732.732 INFO    ] No update needed
[2026-06-13 12:58:03,733.733 INFO    ] Checking for camera pi updates...
[2026-06-13 12:58:03,753.753 INFO    ] 200
[2026-06-13 12:58:03,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:03,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:58:03,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:58:03,815.815 INFO    ] No camera update needed
[2026-06-13 12:58:03,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:58:03,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:58:03,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:58:03,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:58:05,862.862 INFO    ] ================================================
[2026-06-13 12:58:05,877.877 INFO    ] Launching Daemon at Sat Jun 13 12:58:05 IST 2026
[2026-06-13 12:58:05,888.888 INFO    ] ================================================
[2026-06-13 12:58:06,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:58:06
[2026-06-13 12:58:06,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:58:06,968.968 INFO    ] Initializing speech engine...
[2026-06-13 12:58:06,977.977 INFO    ] 2026-06-13 12:58:06
[2026-06-13 12:58:07,225.225 INFO    ] 2026-06-13 12:58:07
[2026-06-13 12:58:07,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:58:07,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:58:07,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:58:07,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:58:07,592.592 INFO    ] time= 13/06/2026 12:58:07
[2026-06-13 12:58:07,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:58:07,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:58:07,770.770 INFO    ] No existing commands found in stream
[2026-06-13 12:58:12,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:58:12,802.802 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 12:58:16,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 12:58:16,169.169 INFO    ] Checking for system updates...
[2026-06-13 12:58:16,189.189 INFO    ] 200
[2026-06-13 12:58:16,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:16,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:16,225.225 INFO    ] No update needed
[2026-06-13 12:58:16,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 12:58:16,246.246 INFO    ] 200
[2026-06-13 12:58:16,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:16,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:58:16,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:16,309.309 INFO    ] No camera update needed
[2026-06-13 12:58:16,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:58:16,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:58:16,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:58:16,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:58:18,358.358 INFO    ] ================================================
[2026-06-13 12:58:18,376.376 INFO    ] Launching Daemon at Sat Jun 13 12:58:18 IST 2026
[2026-06-13 12:58:18,387.387 INFO    ] ================================================
[2026-06-13 12:58:18,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:58:18
[2026-06-13 12:58:19,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:58:19,158.158 INFO    ] Initializing speech engine...
[2026-06-13 12:58:19,163.163 INFO    ] 2026-06-13 12:58:19
[2026-06-13 12:58:19,378.378 INFO    ] 2026-06-13 12:58:19
[2026-06-13 12:58:19,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:58:19,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:58:19,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:58:19,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:58:19,812.812 INFO    ] time= 13/06/2026 12:58:19
[2026-06-13 12:58:19,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:58:19,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:58:19,950.950 INFO    ] No existing commands found in stream
[2026-06-13 12:58:24,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:58:24,962.962 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 12:58:28,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:58:28,678.678 INFO    ] Checking for system updates...
[2026-06-13 12:58:28,700.700 INFO    ] 200
[2026-06-13 12:58:28,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:28,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:28,737.737 INFO    ] No update needed
[2026-06-13 12:58:28,739.739 INFO    ] Checking for camera pi updates...
[2026-06-13 12:58:28,765.765 INFO    ] 200
[2026-06-13 12:58:28,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:28,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:58:28,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:28,864.864 INFO    ] No camera update needed
[2026-06-13 12:58:28,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:58:28,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:58:28,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:58:28,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:58:30,924.924 INFO    ] ================================================
[2026-06-13 12:58:30,939.939 INFO    ] Launching Daemon at Sat Jun 13 12:58:30 IST 2026
[2026-06-13 12:58:30,951.951 INFO    ] ================================================
[2026-06-13 12:58:31,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:58:31
[2026-06-13 12:58:32,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:58:32,187.187 INFO    ] Initializing speech engine...
[2026-06-13 12:58:32,202.202 INFO    ] 2026-06-13 12:58:32
[2026-06-13 12:58:32,431.431 INFO    ] 2026-06-13 12:58:32
[2026-06-13 12:58:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:58:32,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:58:32,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:58:32,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:58:32,748.748 INFO    ] time= 13/06/2026 12:58:32
[2026-06-13 12:58:32,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:58:32,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:58:32,903.903 INFO    ] No existing commands found in stream
[2026-06-13 12:58:37,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:58:37,913.913 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 12:58:39,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:58:39,761.761 INFO    ] Checking for system updates...
[2026-06-13 12:58:39,782.782 INFO    ] 200
[2026-06-13 12:58:39,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:39,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:39,815.815 INFO    ] No update needed
[2026-06-13 12:58:39,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 12:58:39,835.835 INFO    ] 200
[2026-06-13 12:58:39,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:39,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:58:39,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:39,901.901 INFO    ] No camera update needed
[2026-06-13 12:58:39,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:58:39,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:58:39,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:58:39,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:58:41,947.947 INFO    ] ================================================
[2026-06-13 12:58:41,963.963 INFO    ] Launching Daemon at Sat Jun 13 12:58:41 IST 2026
[2026-06-13 12:58:41,974.974 INFO    ] ================================================
[2026-06-13 12:58:42,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:58:42
[2026-06-13 12:58:42,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:58:42,793.793 INFO    ] Initializing speech engine...
[2026-06-13 12:58:42,803.803 INFO    ] 2026-06-13 12:58:42
[2026-06-13 12:58:43,006.006 INFO    ] 2026-06-13 12:58:42
[2026-06-13 12:58:43,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:58:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:58:43,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:58:43,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:58:43,402.402 INFO    ] time= 13/06/2026 12:58:43
[2026-06-13 12:58:43,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:58:43,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:58:43,545.545 INFO    ] No existing commands found in stream
[2026-06-13 12:58:48,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:58:48,556.556 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 12:58:51,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 12:58:51,667.667 INFO    ] Checking for system updates...
[2026-06-13 12:58:51,689.689 INFO    ] 200
[2026-06-13 12:58:51,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:51,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:51,723.723 INFO    ] No update needed
[2026-06-13 12:58:51,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 12:58:51,746.746 INFO    ] 200
[2026-06-13 12:58:51,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:58:51,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:58:51,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:58:51,810.810 INFO    ] No camera update needed
[2026-06-13 12:58:51,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:58:51,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:58:51,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:58:51,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:58:53,857.857 INFO    ] ================================================
[2026-06-13 12:58:53,872.872 INFO    ] Launching Daemon at Sat Jun 13 12:58:53 IST 2026
[2026-06-13 12:58:53,882.882 INFO    ] ================================================
[2026-06-13 12:58:54,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:58:54
[2026-06-13 12:58:54,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:58:54,724.724 INFO    ] Initializing speech engine...
[2026-06-13 12:58:54,728.728 INFO    ] 2026-06-13 12:58:54
[2026-06-13 12:58:54,959.959 INFO    ] 2026-06-13 12:58:54
[2026-06-13 12:58:54,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:58:55,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:58:55,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:58:55,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:58:55,390.390 INFO    ] time= 13/06/2026 12:58:55
[2026-06-13 12:58:55,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:58:55,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:58:55,517.517 INFO    ] No existing commands found in stream
[2026-06-13 12:59:00,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:00,531.531 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 12:59:04,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:59:04,453.453 INFO    ] Checking for system updates...
[2026-06-13 12:59:04,474.474 INFO    ] 200
[2026-06-13 12:59:04,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:04,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:04,507.507 INFO    ] No update needed
[2026-06-13 12:59:04,509.509 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:04,529.529 INFO    ] 200
[2026-06-13 12:59:04,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:04,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:04,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:59:04,606.606 INFO    ] No camera update needed
[2026-06-13 12:59:04,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:04,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:04,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:04,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:59:06,653.653 INFO    ] ================================================
[2026-06-13 12:59:06,668.668 INFO    ] Launching Daemon at Sat Jun 13 12:59:06 IST 2026
[2026-06-13 12:59:06,679.679 INFO    ] ================================================
[2026-06-13 12:59:07,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:59:07
[2026-06-13 12:59:07,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:59:07,481.481 INFO    ] Initializing speech engine...
[2026-06-13 12:59:07,491.491 INFO    ] 2026-06-13 12:59:07
[2026-06-13 12:59:07,696.696 INFO    ] 2026-06-13 12:59:07
[2026-06-13 12:59:07,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:59:07,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:59:07,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:59:08,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:59:08,112.112 INFO    ] time= 13/06/2026 12:59:08
[2026-06-13 12:59:08,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:59:08,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:59:08,331.331 INFO    ] No existing commands found in stream
[2026-06-13 12:59:13,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:13,365.365 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 12:59:14,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 12:59:14,407.407 INFO    ] Checking for system updates...
[2026-06-13 12:59:14,428.428 INFO    ] 200
[2026-06-13 12:59:14,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:14,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:14,461.461 INFO    ] No update needed
[2026-06-13 12:59:14,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:14,481.481 INFO    ] 200
[2026-06-13 12:59:14,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:14,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:14,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:14,642.642 INFO    ] No camera update needed
[2026-06-13 12:59:14,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:14,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:14,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:14,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:59:16,688.688 INFO    ] ================================================
[2026-06-13 12:59:16,703.703 INFO    ] Launching Daemon at Sat Jun 13 12:59:16 IST 2026
[2026-06-13 12:59:16,714.714 INFO    ] ================================================
[2026-06-13 12:59:17,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:59:17
[2026-06-13 12:59:17,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:59:17,497.497 INFO    ] Initializing speech engine...
[2026-06-13 12:59:17,502.502 INFO    ] 2026-06-13 12:59:17
[2026-06-13 12:59:17,707.707 INFO    ] 2026-06-13 12:59:17
[2026-06-13 12:59:17,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:59:17,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:59:17,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:59:18,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:59:18,120.120 INFO    ] time= 13/06/2026 12:59:18
[2026-06-13 12:59:18,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:59:18,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:59:18,225.225 INFO    ] No existing commands found in stream
[2026-06-13 12:59:23,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:23,238.238 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 12:59:26,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:59:26,473.473 INFO    ] Checking for system updates...
[2026-06-13 12:59:26,495.495 INFO    ] 200
[2026-06-13 12:59:26,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:26,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:26,530.530 INFO    ] No update needed
[2026-06-13 12:59:26,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:26,551.551 INFO    ] 200
[2026-06-13 12:59:26,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:26,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:26,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:26,615.615 INFO    ] No camera update needed
[2026-06-13 12:59:26,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:26,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:26,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:26,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:59:28,664.664 INFO    ] ================================================
[2026-06-13 12:59:28,679.679 INFO    ] Launching Daemon at Sat Jun 13 12:59:28 IST 2026
[2026-06-13 12:59:28,690.690 INFO    ] ================================================
[2026-06-13 12:59:29,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:59:29
[2026-06-13 12:59:29,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:59:29,511.511 INFO    ] Initializing speech engine...
[2026-06-13 12:59:29,516.516 INFO    ] 2026-06-13 12:59:29
[2026-06-13 12:59:29,719.719 INFO    ] 2026-06-13 12:59:29
[2026-06-13 12:59:29,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:59:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:59:29,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:59:30,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:59:30,134.134 INFO    ] time= 13/06/2026 12:59:30
[2026-06-13 12:59:30,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:59:30,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:59:30,232.232 INFO    ] No existing commands found in stream
[2026-06-13 12:59:35,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:35,246.246 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 12:59:38,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:59:38,634.634 INFO    ] Checking for system updates...
[2026-06-13 12:59:38,655.655 INFO    ] 200
[2026-06-13 12:59:38,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:38,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:38,693.693 INFO    ] No update needed
[2026-06-13 12:59:38,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:38,716.716 INFO    ] 200
[2026-06-13 12:59:38,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:38,745.745 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:38,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 12:59:38,784.784 INFO    ] No camera update needed
[2026-06-13 12:59:38,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:38,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:38,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:38,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:59:40,830.830 INFO    ] ================================================
[2026-06-13 12:59:40,845.845 INFO    ] Launching Daemon at Sat Jun 13 12:59:40 IST 2026
[2026-06-13 12:59:40,857.857 INFO    ] ================================================
[2026-06-13 12:59:41,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:59:41
[2026-06-13 12:59:41,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:59:41,638.638 INFO    ] Initializing speech engine...
[2026-06-13 12:59:41,645.645 INFO    ] 2026-06-13 12:59:41
[2026-06-13 12:59:41,857.857 INFO    ] 2026-06-13 12:59:41
[2026-06-13 12:59:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:59:42,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:59:42,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:59:42,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:59:42,243.243 INFO    ] time= 13/06/2026 12:59:42
[2026-06-13 12:59:42,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:59:42,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:59:42,374.374 INFO    ] No existing commands found in stream
[2026-06-13 12:59:47,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:47,391.391 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 12:59:48,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 12:59:48,917.917 INFO    ] Checking for system updates...
[2026-06-13 12:59:48,938.938 INFO    ] 200
[2026-06-13 12:59:48,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:48,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:59:48,971.971 INFO    ] No update needed
[2026-06-13 12:59:48,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:48,991.991 INFO    ] 200
[2026-06-13 12:59:48,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:49,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:49,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:59:49,062.062 INFO    ] No camera update needed
[2026-06-13 12:59:49,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:49,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:49,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:49,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 12:59:51,110.110 INFO    ] ================================================
[2026-06-13 12:59:51,126.126 INFO    ] Launching Daemon at Sat Jun 13 12:59:51 IST 2026
[2026-06-13 12:59:51,136.136 INFO    ] ================================================
[2026-06-13 12:59:51,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 12:59:51
[2026-06-13 12:59:51,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 12:59:51,904.904 INFO    ] Initializing speech engine...
[2026-06-13 12:59:51,909.909 INFO    ] 2026-06-13 12:59:51
[2026-06-13 12:59:52,135.135 INFO    ] 2026-06-13 12:59:52
[2026-06-13 12:59:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 12:59:52,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 12:59:52,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 12:59:52,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 12:59:52,566.566 INFO    ] time= 13/06/2026 12:59:52
[2026-06-13 12:59:52,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 12:59:52,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 12:59:52,685.685 INFO    ] No existing commands found in stream
[2026-06-13 12:59:57,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 12:59:57,698.698 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 12:59:59,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 12:59:59,543.543 INFO    ] Checking for system updates...
[2026-06-13 12:59:59,565.565 INFO    ] 200
[2026-06-13 12:59:59,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:59,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:59:59,600.600 INFO    ] No update needed
[2026-06-13 12:59:59,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 12:59:59,621.621 INFO    ] 200
[2026-06-13 12:59:59,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 12:59:59,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 12:59:59,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 12:59:59,690.690 INFO    ] No camera update needed
[2026-06-13 12:59:59,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 12:59:59,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 12:59:59,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 12:59:59,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:00:01,744.744 INFO    ] ================================================
[2026-06-13 13:00:01,824.824 INFO    ] Launching Daemon at Sat Jun 13 13:00:01 IST 2026
[2026-06-13 13:00:01,904.904 INFO    ] ================================================
[2026-06-13 13:00:03,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:00:03
[2026-06-13 13:00:05,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:00:06,083.083 INFO    ] Initializing speech engine...
[2026-06-13 13:00:06,096.096 INFO    ] 2026-06-13 13:00:06
[2026-06-13 13:00:06,361.361 INFO    ] 2026-06-13 13:00:06
[2026-06-13 13:00:06,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:00:06,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:00:06,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:00:06,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:00:06,713.713 INFO    ] time= 13/06/2026 13:00:06
[2026-06-13 13:00:06,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:00:06,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:00:06,810.810 INFO    ] No existing commands found in stream
[2026-06-13 13:00:11,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:00:11,820.820 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 13:00:15,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:00:15,229.229 INFO    ] Checking for system updates...
[2026-06-13 13:00:15,250.250 INFO    ] 200
[2026-06-13 13:00:15,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:15,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:15,286.286 INFO    ] No update needed
[2026-06-13 13:00:15,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 13:00:15,306.306 INFO    ] 200
[2026-06-13 13:00:15,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:15,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:00:15,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:15,370.370 INFO    ] No camera update needed
[2026-06-13 13:00:15,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:00:15,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:00:15,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:00:15,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:00:17,419.419 INFO    ] ================================================
[2026-06-13 13:00:17,435.435 INFO    ] Launching Daemon at Sat Jun 13 13:00:17 IST 2026
[2026-06-13 13:00:17,446.446 INFO    ] ================================================
[2026-06-13 13:00:18,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:00:18
[2026-06-13 13:00:18,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:00:18,722.722 INFO    ] Initializing speech engine...
[2026-06-13 13:00:18,730.730 INFO    ] 2026-06-13 13:00:18
[2026-06-13 13:00:18,951.951 INFO    ] 2026-06-13 13:00:18
[2026-06-13 13:00:18,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:00:19,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:00:19,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:00:19,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:00:19,389.389 INFO    ] time= 13/06/2026 13:00:19
[2026-06-13 13:00:19,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:00:19,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:00:19,506.506 INFO    ] No existing commands found in stream
[2026-06-13 13:00:24,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:00:24,519.519 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 13:00:27,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:00:27,793.793 INFO    ] Checking for system updates...
[2026-06-13 13:00:27,814.814 INFO    ] 200
[2026-06-13 13:00:27,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:27,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:27,847.847 INFO    ] No update needed
[2026-06-13 13:00:27,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 13:00:27,869.869 INFO    ] 200
[2026-06-13 13:00:27,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:27,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:00:27,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:27,942.942 INFO    ] No camera update needed
[2026-06-13 13:00:27,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:00:27,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:00:27,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:00:27,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:00:29,990.990 INFO    ] ================================================
[2026-06-13 13:00:30,005.005 INFO    ] Launching Daemon at Sat Jun 13 13:00:29 IST 2026
[2026-06-13 13:00:30,017.017 INFO    ] ================================================
[2026-06-13 13:00:30,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:00:30
[2026-06-13 13:00:30,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:00:30,793.793 INFO    ] Initializing speech engine...
[2026-06-13 13:00:30,802.802 INFO    ] 2026-06-13 13:00:30
[2026-06-13 13:00:31,027.027 INFO    ] 2026-06-13 13:00:30
[2026-06-13 13:00:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:00:31,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:00:31,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:00:31,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:00:31,448.448 INFO    ] time= 13/06/2026 13:00:31
[2026-06-13 13:00:31,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:00:31,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:00:31,585.585 INFO    ] No existing commands found in stream
[2026-06-13 13:00:36,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:00:36,599.599 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 13:00:37,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:00:37,852.852 INFO    ] Checking for system updates...
[2026-06-13 13:00:37,874.874 INFO    ] 200
[2026-06-13 13:00:37,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:37,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:00:37,907.907 INFO    ] No update needed
[2026-06-13 13:00:37,909.909 INFO    ] Checking for camera pi updates...
[2026-06-13 13:00:37,928.928 INFO    ] 200
[2026-06-13 13:00:37,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:37,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:00:38,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:38,002.002 INFO    ] No camera update needed
[2026-06-13 13:00:38,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:00:38,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:00:38,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:00:38,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:00:40,048.048 INFO    ] ================================================
[2026-06-13 13:00:40,064.064 INFO    ] Launching Daemon at Sat Jun 13 13:00:40 IST 2026
[2026-06-13 13:00:40,077.077 INFO    ] ================================================
[2026-06-13 13:00:40,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:00:40
[2026-06-13 13:00:40,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:00:40,939.939 INFO    ] Initializing speech engine...
[2026-06-13 13:00:40,943.943 INFO    ] 2026-06-13 13:00:40
[2026-06-13 13:00:41,152.152 INFO    ] 2026-06-13 13:00:41
[2026-06-13 13:00:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:00:41,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:00:41,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:00:41,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:00:41,566.566 INFO    ] time= 13/06/2026 13:00:41
[2026-06-13 13:00:41,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:00:41,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:00:41,673.673 INFO    ] No existing commands found in stream
[2026-06-13 13:00:46,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:00:46,684.684 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 13:00:49,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:00:49,677.677 INFO    ] Checking for system updates...
[2026-06-13 13:00:49,718.718 INFO    ] 200
[2026-06-13 13:00:49,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:49,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:49,784.784 INFO    ] No update needed
[2026-06-13 13:00:49,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 13:00:49,826.826 INFO    ] 200
[2026-06-13 13:00:49,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:00:49,870.870 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:00:49,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:00:49,912.912 INFO    ] No camera update needed
[2026-06-13 13:00:49,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:00:49,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:00:49,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:00:49,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:00:51,968.968 INFO    ] ================================================
[2026-06-13 13:00:51,984.984 INFO    ] Launching Daemon at Sat Jun 13 13:00:51 IST 2026
[2026-06-13 13:00:52,995.995 INFO    ] ================================================
[2026-06-13 13:00:52,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:00:52
[2026-06-13 13:00:52,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:00:52,874.874 INFO    ] Initializing speech engine...
[2026-06-13 13:00:52,879.879 INFO    ] 2026-06-13 13:00:52
[2026-06-13 13:00:53,089.089 INFO    ] 2026-06-13 13:00:53
[2026-06-13 13:00:53,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:00:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:00:53,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:00:53,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:00:53,519.519 INFO    ] time= 13/06/2026 13:00:53
[2026-06-13 13:00:53,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:00:53,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:00:53,614.614 INFO    ] No existing commands found in stream
[2026-06-13 13:00:58,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:00:58,630.630 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 13:01:02,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:01:02,854.854 INFO    ] Checking for system updates...
[2026-06-13 13:01:02,888.888 INFO    ] 200
[2026-06-13 13:01:02,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:02,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:01:02,937.937 INFO    ] No update needed
[2026-06-13 13:01:02,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 13:01:02,970.970 INFO    ] 200
[2026-06-13 13:01:02,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:02,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:01:03,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:01:03,027.027 INFO    ] No camera update needed
[2026-06-13 13:01:03,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:01:03,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:01:03,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:01:03,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:01:05,085.085 INFO    ] ================================================
[2026-06-13 13:01:05,101.101 INFO    ] Launching Daemon at Sat Jun 13 13:01:05 IST 2026
[2026-06-13 13:01:05,112.112 INFO    ] ================================================
[2026-06-13 13:01:05,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:01:05
[2026-06-13 13:01:05,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:01:05,933.933 INFO    ] Initializing speech engine...
[2026-06-13 13:01:05,953.953 INFO    ] 2026-06-13 13:01:05
[2026-06-13 13:01:06,249.249 INFO    ] 2026-06-13 13:01:06
[2026-06-13 13:01:06,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:01:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:01:06,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:01:06,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:01:06,634.634 INFO    ] time= 13/06/2026 13:01:06
[2026-06-13 13:01:06,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:01:06,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:01:06,759.759 INFO    ] No existing commands found in stream
[2026-06-13 13:01:11,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:01:11,775.775 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 13:01:15,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:01:15,714.714 INFO    ] Checking for system updates...
[2026-06-13 13:01:15,735.735 INFO    ] 200
[2026-06-13 13:01:15,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:15,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:15,768.768 INFO    ] No update needed
[2026-06-13 13:01:15,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 13:01:15,789.789 INFO    ] 200
[2026-06-13 13:01:15,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:15,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:01:15,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:15,952.952 INFO    ] No camera update needed
[2026-06-13 13:01:15,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:01:15,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:01:15,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:01:15,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:01:18,000.000 INFO    ] ================================================
[2026-06-13 13:01:18,015.015 INFO    ] Launching Daemon at Sat Jun 13 13:01:18 IST 2026
[2026-06-13 13:01:18,026.026 INFO    ] ================================================
[2026-06-13 13:01:18,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:01:18
[2026-06-13 13:01:18,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:01:18,804.804 INFO    ] Initializing speech engine...
[2026-06-13 13:01:18,817.817 INFO    ] 2026-06-13 13:01:18
[2026-06-13 13:01:19,034.034 INFO    ] 2026-06-13 13:01:19
[2026-06-13 13:01:19,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:01:19,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:01:19,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:01:19,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:01:19,441.441 INFO    ] time= 13/06/2026 13:01:19
[2026-06-13 13:01:19,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:01:19,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:01:19,588.588 INFO    ] No existing commands found in stream
[2026-06-13 13:01:24,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:01:24,601.601 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 13:01:28,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:01:28,228.228 INFO    ] Checking for system updates...
[2026-06-13 13:01:28,250.250 INFO    ] 200
[2026-06-13 13:01:28,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:28,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:28,286.286 INFO    ] No update needed
[2026-06-13 13:01:28,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 13:01:28,310.310 INFO    ] 200
[2026-06-13 13:01:28,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:28,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:01:28,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:28,376.376 INFO    ] No camera update needed
[2026-06-13 13:01:28,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:01:28,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:01:28,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:01:28,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:01:30,424.424 INFO    ] ================================================
[2026-06-13 13:01:30,440.440 INFO    ] Launching Daemon at Sat Jun 13 13:01:30 IST 2026
[2026-06-13 13:01:30,451.451 INFO    ] ================================================
[2026-06-13 13:01:30,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:01:30
[2026-06-13 13:01:31,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:01:31,231.231 INFO    ] Initializing speech engine...
[2026-06-13 13:01:31,241.241 INFO    ] 2026-06-13 13:01:31
[2026-06-13 13:01:31,456.456 INFO    ] 2026-06-13 13:01:31
[2026-06-13 13:01:31,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:01:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:01:31,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:01:31,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:01:31,880.880 INFO    ] time= 13/06/2026 13:01:31
[2026-06-13 13:01:31,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:01:31,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:01:32,005.005 INFO    ] No existing commands found in stream
[2026-06-13 13:01:37,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:01:37,019.019 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 13:01:39,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:01:39,028.028 INFO    ] Checking for system updates...
[2026-06-13 13:01:39,049.049 INFO    ] 200
[2026-06-13 13:01:39,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:39,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:39,082.082 INFO    ] No update needed
[2026-06-13 13:01:39,083.083 INFO    ] Checking for camera pi updates...
[2026-06-13 13:01:39,102.102 INFO    ] 200
[2026-06-13 13:01:39,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:39,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:01:39,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:01:39,165.165 INFO    ] No camera update needed
[2026-06-13 13:01:39,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:01:39,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:01:39,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:01:39,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:01:41,205.205 INFO    ] ================================================
[2026-06-13 13:01:41,214.214 INFO    ] Launching Daemon at Sat Jun 13 13:01:41 IST 2026
[2026-06-13 13:01:41,219.219 INFO    ] ================================================
[2026-06-13 13:01:41,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:01:41
[2026-06-13 13:01:41,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:01:42,014.014 INFO    ] Initializing speech engine...
[2026-06-13 13:01:42,017.017 INFO    ] 2026-06-13 13:01:42
[2026-06-13 13:01:42,233.233 INFO    ] 2026-06-13 13:01:42
[2026-06-13 13:01:42,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:01:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:01:42,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:01:42,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:01:42,673.673 INFO    ] time= 13/06/2026 13:01:42
[2026-06-13 13:01:42,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:01:42,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:01:42,805.805 INFO    ] No existing commands found in stream
[2026-06-13 13:01:47,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:01:47,819.819 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 13:01:50,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:01:50,029.029 INFO    ] Checking for system updates...
[2026-06-13 13:01:50,051.051 INFO    ] 200
[2026-06-13 13:01:50,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:50,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:01:50,086.086 INFO    ] No update needed
[2026-06-13 13:01:50,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 13:01:50,107.107 INFO    ] 200
[2026-06-13 13:01:50,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:01:50,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:01:50,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:01:50,179.179 INFO    ] No camera update needed
[2026-06-13 13:01:50,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:01:50,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:01:50,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:01:50,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:01:52,226.226 INFO    ] ================================================
[2026-06-13 13:01:52,241.241 INFO    ] Launching Daemon at Sat Jun 13 13:01:52 IST 2026
[2026-06-13 13:01:52,252.252 INFO    ] ================================================
[2026-06-13 13:01:52,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:01:52
[2026-06-13 13:01:52,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:01:53,063.063 INFO    ] Initializing speech engine...
[2026-06-13 13:01:53,067.067 INFO    ] 2026-06-13 13:01:53
[2026-06-13 13:01:53,272.272 INFO    ] 2026-06-13 13:01:53
[2026-06-13 13:01:53,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:01:53,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:01:53,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:01:53,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:01:53,673.673 INFO    ] time= 13/06/2026 13:01:53
[2026-06-13 13:01:53,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:01:53,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:01:53,788.788 INFO    ] No existing commands found in stream
[2026-06-13 13:01:58,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:01:58,801.801 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 13:02:02,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:02:02,536.536 INFO    ] Checking for system updates...
[2026-06-13 13:02:02,574.574 INFO    ] 200
[2026-06-13 13:02:02,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:02,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:02:02,635.635 INFO    ] No update needed
[2026-06-13 13:02:02,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 13:02:02,672.672 INFO    ] 200
[2026-06-13 13:02:02,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:02,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:02:02,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:02:02,746.746 INFO    ] No camera update needed
[2026-06-13 13:02:02,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:02:02,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:02:02,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:02:02,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:02:04,803.803 INFO    ] ================================================
[2026-06-13 13:02:04,819.819 INFO    ] Launching Daemon at Sat Jun 13 13:02:04 IST 2026
[2026-06-13 13:02:04,830.830 INFO    ] ================================================
[2026-06-13 13:02:05,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:02:05
[2026-06-13 13:02:05,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:02:05,728.728 INFO    ] Initializing speech engine...
[2026-06-13 13:02:05,733.733 INFO    ] 2026-06-13 13:02:05
[2026-06-13 13:02:05,936.936 INFO    ] 2026-06-13 13:02:05
[2026-06-13 13:02:05,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:02:06,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:02:06,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:02:06,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:02:06,336.336 INFO    ] time= 13/06/2026 13:02:06
[2026-06-13 13:02:06,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:02:06,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:02:06,454.454 INFO    ] No existing commands found in stream
[2026-06-13 13:02:11,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:02:11,468.468 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 13:02:12,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:02:12,933.933 INFO    ] Checking for system updates...
[2026-06-13 13:02:12,954.954 INFO    ] 200
[2026-06-13 13:02:12,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:12,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:12,991.991 INFO    ] No update needed
[2026-06-13 13:02:12,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 13:02:13,013.013 INFO    ] 200
[2026-06-13 13:02:13,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:13,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:02:13,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:13,085.085 INFO    ] No camera update needed
[2026-06-13 13:02:13,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:02:13,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:02:13,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:02:13,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:02:15,118.118 INFO    ] ================================================
[2026-06-13 13:02:15,128.128 INFO    ] Launching Daemon at Sat Jun 13 13:02:15 IST 2026
[2026-06-13 13:02:15,134.134 INFO    ] ================================================
[2026-06-13 13:02:15,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:02:15
[2026-06-13 13:02:15,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:02:15,907.907 INFO    ] Initializing speech engine...
[2026-06-13 13:02:15,912.912 INFO    ] 2026-06-13 13:02:15
[2026-06-13 13:02:16,143.143 INFO    ] 2026-06-13 13:02:16
[2026-06-13 13:02:16,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:02:16,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:02:16,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:02:16,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:02:16,521.521 INFO    ] time= 13/06/2026 13:02:16
[2026-06-13 13:02:16,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:02:16,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:02:16,713.713 INFO    ] No existing commands found in stream
[2026-06-13 13:02:21,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:02:21,723.723 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 13:02:25,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:02:25,103.103 INFO    ] Checking for system updates...
[2026-06-13 13:02:25,124.124 INFO    ] 200
[2026-06-13 13:02:25,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:25,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:25,158.158 INFO    ] No update needed
[2026-06-13 13:02:25,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 13:02:25,181.181 INFO    ] 200
[2026-06-13 13:02:25,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:25,205.205 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:02:25,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:25,251.251 INFO    ] No camera update needed
[2026-06-13 13:02:25,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:02:25,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:02:25,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:02:25,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:02:27,298.298 INFO    ] ================================================
[2026-06-13 13:02:27,314.314 INFO    ] Launching Daemon at Sat Jun 13 13:02:27 IST 2026
[2026-06-13 13:02:27,324.324 INFO    ] ================================================
[2026-06-13 13:02:27,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:02:27
[2026-06-13 13:02:28,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:02:28,184.184 INFO    ] Initializing speech engine...
[2026-06-13 13:02:28,190.190 INFO    ] 2026-06-13 13:02:28
[2026-06-13 13:02:28,399.399 INFO    ] 2026-06-13 13:02:28
[2026-06-13 13:02:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:02:28,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:02:28,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:02:28,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:02:28,820.820 INFO    ] time= 13/06/2026 13:02:28
[2026-06-13 13:02:28,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:02:28,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:02:28,918.918 INFO    ] No existing commands found in stream
[2026-06-13 13:02:33,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:02:33,931.931 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 13:02:37,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:02:37,233.233 INFO    ] Checking for system updates...
[2026-06-13 13:02:37,255.255 INFO    ] 200
[2026-06-13 13:02:37,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:37,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:37,289.289 INFO    ] No update needed
[2026-06-13 13:02:37,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 13:02:37,311.311 INFO    ] 200
[2026-06-13 13:02:37,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:37,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:02:37,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:37,375.375 INFO    ] No camera update needed
[2026-06-13 13:02:37,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:02:37,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:02:37,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:02:37,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:02:39,423.423 INFO    ] ================================================
[2026-06-13 13:02:39,439.439 INFO    ] Launching Daemon at Sat Jun 13 13:02:39 IST 2026
[2026-06-13 13:02:39,450.450 INFO    ] ================================================
[2026-06-13 13:02:39,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:02:39
[2026-06-13 13:02:40,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:02:40,231.231 INFO    ] Initializing speech engine...
[2026-06-13 13:02:40,236.236 INFO    ] 2026-06-13 13:02:40
[2026-06-13 13:02:40,439.439 INFO    ] 2026-06-13 13:02:40
[2026-06-13 13:02:40,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:02:40,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:02:40,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:02:40,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:02:40,835.835 INFO    ] time= 13/06/2026 13:02:40
[2026-06-13 13:02:40,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:02:40,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:02:40,957.957 INFO    ] No existing commands found in stream
[2026-06-13 13:02:45,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:02:45,971.971 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 13:02:50,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:02:50,149.149 INFO    ] Checking for system updates...
[2026-06-13 13:02:50,171.171 INFO    ] 200
[2026-06-13 13:02:50,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:50,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:02:50,206.206 INFO    ] No update needed
[2026-06-13 13:02:50,208.208 INFO    ] Checking for camera pi updates...
[2026-06-13 13:02:50,228.228 INFO    ] 200
[2026-06-13 13:02:50,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:02:50,253.253 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:02:50,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:02:50,290.290 INFO    ] No camera update needed
[2026-06-13 13:02:50,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:02:50,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:02:50,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:02:50,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:02:52,339.339 INFO    ] ================================================
[2026-06-13 13:02:52,354.354 INFO    ] Launching Daemon at Sat Jun 13 13:02:52 IST 2026
[2026-06-13 13:02:52,365.365 INFO    ] ================================================
[2026-06-13 13:02:52,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:02:52
[2026-06-13 13:02:53,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:02:53,191.191 INFO    ] Initializing speech engine...
[2026-06-13 13:02:53,199.199 INFO    ] 2026-06-13 13:02:53
[2026-06-13 13:02:53,405.405 INFO    ] 2026-06-13 13:02:53
[2026-06-13 13:02:53,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:02:53,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:02:53,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:02:53,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:02:53,816.816 INFO    ] time= 13/06/2026 13:02:53
[2026-06-13 13:02:53,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:02:53,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:02:53,921.921 INFO    ] No existing commands found in stream
[2026-06-13 13:02:58,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:02:58,933.933 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 13:03:01,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:03:01,566.566 INFO    ] Checking for system updates...
[2026-06-13 13:03:01,599.599 INFO    ] 200
[2026-06-13 13:03:01,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:01,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:01,655.655 INFO    ] No update needed
[2026-06-13 13:03:01,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:01,682.682 INFO    ] 200
[2026-06-13 13:03:01,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:01,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:01,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:01,765.765 INFO    ] No camera update needed
[2026-06-13 13:03:01,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:01,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:01,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:01,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:03,823.823 INFO    ] ================================================
[2026-06-13 13:03:03,837.837 INFO    ] Launching Daemon at Sat Jun 13 13:03:03 IST 2026
[2026-06-13 13:03:03,849.849 INFO    ] ================================================
[2026-06-13 13:03:04,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:04
[2026-06-13 13:03:04,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:04,658.658 INFO    ] Initializing speech engine...
[2026-06-13 13:03:04,666.666 INFO    ] 2026-06-13 13:03:04
[2026-06-13 13:03:04,885.885 INFO    ] 2026-06-13 13:03:04
[2026-06-13 13:03:04,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:05,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:05,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:05,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:05,325.325 INFO    ] time= 13/06/2026 13:03:05
[2026-06-13 13:03:05,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:05,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:05,442.442 INFO    ] No existing commands found in stream
[2026-06-13 13:03:10,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:03:10,455.455 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 13:03:10,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:03:10,857.857 INFO    ] Checking for system updates...
[2026-06-13 13:03:10,894.894 INFO    ] 200
[2026-06-13 13:03:10,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:10,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:10,963.963 INFO    ] No update needed
[2026-06-13 13:03:10,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:11,004.004 INFO    ] 200
[2026-06-13 13:03:11,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:11,053.053 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:11,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:11,095.095 INFO    ] No camera update needed
[2026-06-13 13:03:11,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:11,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:11,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:11,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:13,151.151 INFO    ] ================================================
[2026-06-13 13:03:13,166.166 INFO    ] Launching Daemon at Sat Jun 13 13:03:13 IST 2026
[2026-06-13 13:03:13,176.176 INFO    ] ================================================
[2026-06-13 13:03:13,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:13
[2026-06-13 13:03:13,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:14,022.022 INFO    ] Initializing speech engine...
[2026-06-13 13:03:14,028.028 INFO    ] 2026-06-13 13:03:14
[2026-06-13 13:03:14,237.237 INFO    ] 2026-06-13 13:03:14
[2026-06-13 13:03:14,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:14,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:14,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:14,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:14,657.657 INFO    ] time= 13/06/2026 13:03:14
[2026-06-13 13:03:14,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:14,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:14,758.758 INFO    ] No existing commands found in stream
[2026-06-13 13:03:19,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:03:19,772.772 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 13:03:22,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:03:22,105.105 INFO    ] Checking for system updates...
[2026-06-13 13:03:22,126.126 INFO    ] 200
[2026-06-13 13:03:22,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:22,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:03:22,163.163 INFO    ] No update needed
[2026-06-13 13:03:22,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:22,184.184 INFO    ] 200
[2026-06-13 13:03:22,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:22,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:22,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:03:22,356.356 INFO    ] No camera update needed
[2026-06-13 13:03:22,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:22,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:22,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:22,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:24,405.405 INFO    ] ================================================
[2026-06-13 13:03:24,420.420 INFO    ] Launching Daemon at Sat Jun 13 13:03:24 IST 2026
[2026-06-13 13:03:24,431.431 INFO    ] ================================================
[2026-06-13 13:03:24,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:24
[2026-06-13 13:03:25,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:25,211.211 INFO    ] Initializing speech engine...
[2026-06-13 13:03:25,220.220 INFO    ] 2026-06-13 13:03:25
[2026-06-13 13:03:25,446.446 INFO    ] 2026-06-13 13:03:25
[2026-06-13 13:03:25,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:25,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:25,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:25,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:25,710.710 INFO    ] time= 13/06/2026 13:03:25
[2026-06-13 13:03:25,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:25,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:25,827.827 INFO    ] No existing commands found in stream
[2026-06-13 13:03:30,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:03:30,844.844 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 13:03:32,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:03:32,122.122 INFO    ] Checking for system updates...
[2026-06-13 13:03:32,160.160 INFO    ] 200
[2026-06-13 13:03:32,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:32,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:32,224.224 INFO    ] No update needed
[2026-06-13 13:03:32,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:32,267.267 INFO    ] 200
[2026-06-13 13:03:32,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:32,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:32,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:32,367.367 INFO    ] No camera update needed
[2026-06-13 13:03:32,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:32,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:32,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:32,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:34,423.423 INFO    ] ================================================
[2026-06-13 13:03:34,438.438 INFO    ] Launching Daemon at Sat Jun 13 13:03:34 IST 2026
[2026-06-13 13:03:34,449.449 INFO    ] ================================================
[2026-06-13 13:03:34,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:34
[2026-06-13 13:03:35,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:35,428.428 INFO    ] Initializing speech engine...
[2026-06-13 13:03:35,434.434 INFO    ] 2026-06-13 13:03:35
[2026-06-13 13:03:35,641.641 INFO    ] 2026-06-13 13:03:35
[2026-06-13 13:03:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:35,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:35,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:35,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:36,057.057 INFO    ] time= 13/06/2026 13:03:36
[2026-06-13 13:03:36,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:36,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:36,154.154 INFO    ] No existing commands found in stream
[2026-06-13 13:03:41,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:03:41,171.171 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 13:03:42,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:03:42,998.998 INFO    ] Checking for system updates...
[2026-06-13 13:03:43,021.021 INFO    ] 200
[2026-06-13 13:03:43,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:43,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:43,054.054 INFO    ] No update needed
[2026-06-13 13:03:43,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:43,077.077 INFO    ] 200
[2026-06-13 13:03:43,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:43,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:43,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:43,142.142 INFO    ] No camera update needed
[2026-06-13 13:03:43,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:43,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:43,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:43,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:45,191.191 INFO    ] ================================================
[2026-06-13 13:03:45,206.206 INFO    ] Launching Daemon at Sat Jun 13 13:03:45 IST 2026
[2026-06-13 13:03:45,216.216 INFO    ] ================================================
[2026-06-13 13:03:45,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:45
[2026-06-13 13:03:45,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:46,013.013 INFO    ] Initializing speech engine...
[2026-06-13 13:03:46,017.017 INFO    ] 2026-06-13 13:03:46
[2026-06-13 13:03:46,245.245 INFO    ] 2026-06-13 13:03:46
[2026-06-13 13:03:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:46,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:46,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:46,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:46,671.671 INFO    ] time= 13/06/2026 13:03:46
[2026-06-13 13:03:46,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:46,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:46,796.796 INFO    ] No existing commands found in stream
[2026-06-13 13:03:51,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:03:51,810.810 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 13:03:53,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:03:53,482.482 INFO    ] Checking for system updates...
[2026-06-13 13:03:53,503.503 INFO    ] 200
[2026-06-13 13:03:53,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:53,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:03:53,536.536 INFO    ] No update needed
[2026-06-13 13:03:53,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 13:03:53,557.557 INFO    ] 200
[2026-06-13 13:03:53,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:03:53,582.582 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:03:53,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:03:53,619.619 INFO    ] No camera update needed
[2026-06-13 13:03:53,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:03:53,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:03:53,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:03:53,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:03:55,666.666 INFO    ] ================================================
[2026-06-13 13:03:55,681.681 INFO    ] Launching Daemon at Sat Jun 13 13:03:55 IST 2026
[2026-06-13 13:03:55,691.691 INFO    ] ================================================
[2026-06-13 13:03:56,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:03:56
[2026-06-13 13:03:56,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:03:56,521.521 INFO    ] Initializing speech engine...
[2026-06-13 13:03:56,525.525 INFO    ] 2026-06-13 13:03:56
[2026-06-13 13:03:56,754.754 INFO    ] 2026-06-13 13:03:56
[2026-06-13 13:03:56,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:03:56,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:03:56,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:03:57,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:03:57,022.022 INFO    ] time= 13/06/2026 13:03:57
[2026-06-13 13:03:57,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:03:57,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:03:57,159.159 INFO    ] No existing commands found in stream
[2026-06-13 13:04:02,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:02,189.189 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 13:04:04,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:04:04,828.828 INFO    ] Checking for system updates...
[2026-06-13 13:04:04,849.849 INFO    ] 200
[2026-06-13 13:04:04,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:04,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:04:04,883.883 INFO    ] No update needed
[2026-06-13 13:04:04,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:04,904.904 INFO    ] 200
[2026-06-13 13:04:04,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:04,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:04,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:04,966.966 INFO    ] No camera update needed
[2026-06-13 13:04:04,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:04,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:04,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:04,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:07,014.014 INFO    ] ================================================
[2026-06-13 13:04:07,029.029 INFO    ] Launching Daemon at Sat Jun 13 13:04:07 IST 2026
[2026-06-13 13:04:07,040.040 INFO    ] ================================================
[2026-06-13 13:04:07,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:07
[2026-06-13 13:04:07,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:07,855.855 INFO    ] Initializing speech engine...
[2026-06-13 13:04:07,865.865 INFO    ] 2026-06-13 13:04:07
[2026-06-13 13:04:08,079.079 INFO    ] 2026-06-13 13:04:08
[2026-06-13 13:04:08,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:04:08,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:04:08,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:04:08,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:04:08,500.500 INFO    ] time= 13/06/2026 13:04:08
[2026-06-13 13:04:08,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:04:08,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:04:08,623.623 INFO    ] No existing commands found in stream
[2026-06-13 13:04:13,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:13,637.637 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 13:04:16,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:04:16,002.002 INFO    ] Checking for system updates...
[2026-06-13 13:04:16,024.024 INFO    ] 200
[2026-06-13 13:04:16,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:16,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:16,059.059 INFO    ] No update needed
[2026-06-13 13:04:16,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:16,082.082 INFO    ] 200
[2026-06-13 13:04:16,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:16,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:16,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:16,148.148 INFO    ] No camera update needed
[2026-06-13 13:04:16,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:16,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:16,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:16,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:18,195.195 INFO    ] ================================================
[2026-06-13 13:04:18,211.211 INFO    ] Launching Daemon at Sat Jun 13 13:04:18 IST 2026
[2026-06-13 13:04:18,222.222 INFO    ] ================================================
[2026-06-13 13:04:18,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:18
[2026-06-13 13:04:18,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:19,055.055 INFO    ] Initializing speech engine...
[2026-06-13 13:04:19,060.060 INFO    ] 2026-06-13 13:04:19
[2026-06-13 13:04:19,271.271 INFO    ] 2026-06-13 13:04:19
[2026-06-13 13:04:19,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:04:19,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:04:19,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:04:19,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:04:19,677.677 INFO    ] time= 13/06/2026 13:04:19
[2026-06-13 13:04:19,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:04:19,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:04:19,795.795 INFO    ] No existing commands found in stream
[2026-06-13 13:04:24,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:24,808.808 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 13:04:25,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:04:25,686.686 INFO    ] Checking for system updates...
[2026-06-13 13:04:25,707.707 INFO    ] 200
[2026-06-13 13:04:25,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:25,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:25,741.741 INFO    ] No update needed
[2026-06-13 13:04:25,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:25,762.762 INFO    ] 200
[2026-06-13 13:04:25,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:25,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:25,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:25,829.829 INFO    ] No camera update needed
[2026-06-13 13:04:25,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:25,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:25,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:25,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:27,879.879 INFO    ] ================================================
[2026-06-13 13:04:27,894.894 INFO    ] Launching Daemon at Sat Jun 13 13:04:27 IST 2026
[2026-06-13 13:04:27,905.905 INFO    ] ================================================
[2026-06-13 13:04:28,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:28
[2026-06-13 13:04:29,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:29,357.357 INFO    ] Initializing speech engine...
[2026-06-13 13:04:29,382.382 INFO    ] 2026-06-13 13:04:29
[2026-06-13 13:04:29,655.655 INFO    ] 2026-06-13 13:04:29
[2026-06-13 13:04:29,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:04:29,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:04:29,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:04:30,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:04:30,038.038 INFO    ] time= 13/06/2026 13:04:30
[2026-06-13 13:04:30,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:04:30,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:04:30,161.161 INFO    ] No existing commands found in stream
[2026-06-13 13:04:35,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:35,177.177 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 13:04:36,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:04:36,702.702 INFO    ] Checking for system updates...
[2026-06-13 13:04:36,725.725 INFO    ] 200
[2026-06-13 13:04:36,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:36,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:36,758.758 INFO    ] No update needed
[2026-06-13 13:04:36,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:36,779.779 INFO    ] 200
[2026-06-13 13:04:36,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:36,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:36,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:36,829.829 INFO    ] No camera update needed
[2026-06-13 13:04:36,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:36,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:36,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:36,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:38,875.875 INFO    ] ================================================
[2026-06-13 13:04:38,890.890 INFO    ] Launching Daemon at Sat Jun 13 13:04:38 IST 2026
[2026-06-13 13:04:38,901.901 INFO    ] ================================================
[2026-06-13 13:04:39,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:39
[2026-06-13 13:04:39,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:39,744.744 INFO    ] Initializing speech engine...
[2026-06-13 13:04:39,755.755 INFO    ] 2026-06-13 13:04:39
[2026-06-13 13:04:39,965.965 INFO    ] 2026-06-13 13:04:39
[2026-06-13 13:04:39,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:04:40,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:04:40,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:04:40,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:04:40,385.385 INFO    ] time= 13/06/2026 13:04:40
[2026-06-13 13:04:40,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:04:40,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:04:40,482.482 INFO    ] No existing commands found in stream
[2026-06-13 13:04:45,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:45,494.494 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 13:04:46,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:04:46,833.833 INFO    ] Checking for system updates...
[2026-06-13 13:04:46,855.855 INFO    ] 200
[2026-06-13 13:04:46,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:46,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:46,890.890 INFO    ] No update needed
[2026-06-13 13:04:46,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:46,911.911 INFO    ] 200
[2026-06-13 13:04:46,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:46,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:46,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:04:46,976.976 INFO    ] No camera update needed
[2026-06-13 13:04:46,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:46,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:46,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:46,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:49,024.024 INFO    ] ================================================
[2026-06-13 13:04:49,040.040 INFO    ] Launching Daemon at Sat Jun 13 13:04:49 IST 2026
[2026-06-13 13:04:49,051.051 INFO    ] ================================================
[2026-06-13 13:04:49,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:49
[2026-06-13 13:04:49,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:49,889.889 INFO    ] Initializing speech engine...
[2026-06-13 13:04:49,895.895 INFO    ] 2026-06-13 13:04:49
[2026-06-13 13:04:50,086.086 INFO    ] 2026-06-13 13:04:50
[2026-06-13 13:04:50,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:04:50,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:04:50,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:04:50,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:04:50,458.458 INFO    ] time= 13/06/2026 13:04:50
[2026-06-13 13:04:50,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:04:50,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:04:50,680.680 INFO    ] No existing commands found in stream
[2026-06-13 13:04:55,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:04:55,715.715 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 13:04:56,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:04:56,738.738 INFO    ] Checking for system updates...
[2026-06-13 13:04:56,759.759 INFO    ] 200
[2026-06-13 13:04:56,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:56,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:04:56,793.793 INFO    ] No update needed
[2026-06-13 13:04:56,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 13:04:56,814.814 INFO    ] 200
[2026-06-13 13:04:56,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:04:56,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:04:56,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:04:56,880.880 INFO    ] No camera update needed
[2026-06-13 13:04:56,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:04:56,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:04:56,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:04:56,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:04:58,927.927 INFO    ] ================================================
[2026-06-13 13:04:58,942.942 INFO    ] Launching Daemon at Sat Jun 13 13:04:58 IST 2026
[2026-06-13 13:04:58,953.953 INFO    ] ================================================
[2026-06-13 13:04:59,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:04:59
[2026-06-13 13:04:59,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:04:59,784.784 INFO    ] Initializing speech engine...
[2026-06-13 13:04:59,795.795 INFO    ] 2026-06-13 13:04:59
[2026-06-13 13:05:00,006.006 INFO    ] 2026-06-13 13:04:59
[2026-06-13 13:05:00,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:00,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:00,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:00,431.431 INFO    ] time= 13/06/2026 13:05:00
[2026-06-13 13:05:00,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:00,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:00,533.533 INFO    ] No existing commands found in stream
[2026-06-13 13:05:05,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:05:05,545.545 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 13:05:09,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:05:09,128.128 INFO    ] Checking for system updates...
[2026-06-13 13:05:09,149.149 INFO    ] 200
[2026-06-13 13:05:09,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:09,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:09,183.183 INFO    ] No update needed
[2026-06-13 13:05:09,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 13:05:09,204.204 INFO    ] 200
[2026-06-13 13:05:09,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:09,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:05:09,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:09,270.270 INFO    ] No camera update needed
[2026-06-13 13:05:09,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:05:09,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:05:09,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:05:09,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:05:11,320.320 INFO    ] ================================================
[2026-06-13 13:05:11,336.336 INFO    ] Launching Daemon at Sat Jun 13 13:05:11 IST 2026
[2026-06-13 13:05:11,347.347 INFO    ] ================================================
[2026-06-13 13:05:11,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:05:11
[2026-06-13 13:05:12,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:05:12,158.158 INFO    ] Initializing speech engine...
[2026-06-13 13:05:12,164.164 INFO    ] 2026-06-13 13:05:12
[2026-06-13 13:05:12,368.368 INFO    ] 2026-06-13 13:05:12
[2026-06-13 13:05:12,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:12,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:12,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:12,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:12,775.775 INFO    ] time= 13/06/2026 13:05:12
[2026-06-13 13:05:12,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:12,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:12,918.918 INFO    ] No existing commands found in stream
[2026-06-13 13:05:17,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:05:17,931.931 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 13:05:19,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:05:19,275.275 INFO    ] Checking for system updates...
[2026-06-13 13:05:19,295.295 INFO    ] 200
[2026-06-13 13:05:19,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:19,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:05:19,328.328 INFO    ] No update needed
[2026-06-13 13:05:19,330.330 INFO    ] Checking for camera pi updates...
[2026-06-13 13:05:19,349.349 INFO    ] 200
[2026-06-13 13:05:19,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:19,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:05:19,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:05:19,417.417 INFO    ] No camera update needed
[2026-06-13 13:05:19,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:05:19,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:05:19,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:05:19,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:05:21,465.465 INFO    ] ================================================
[2026-06-13 13:05:21,481.481 INFO    ] Launching Daemon at Sat Jun 13 13:05:21 IST 2026
[2026-06-13 13:05:21,492.492 INFO    ] ================================================
[2026-06-13 13:05:21,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:05:21
[2026-06-13 13:05:22,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:05:22,302.302 INFO    ] Initializing speech engine...
[2026-06-13 13:05:22,308.308 INFO    ] 2026-06-13 13:05:22
[2026-06-13 13:05:22,523.523 INFO    ] 2026-06-13 13:05:22
[2026-06-13 13:05:22,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:22,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:22,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:22,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:22,940.940 INFO    ] time= 13/06/2026 13:05:22
[2026-06-13 13:05:22,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:23,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:23,076.076 INFO    ] No existing commands found in stream
[2026-06-13 13:05:28,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:05:28,090.090 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 13:05:31,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:05:31,849.849 INFO    ] Checking for system updates...
[2026-06-13 13:05:31,890.890 INFO    ] 200
[2026-06-13 13:05:31,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:31,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:31,955.955 INFO    ] No update needed
[2026-06-13 13:05:31,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 13:05:31,996.996 INFO    ] 200
[2026-06-13 13:05:32,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:32,046.046 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:05:32,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:05:32,178.178 INFO    ] No camera update needed
[2026-06-13 13:05:32,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:05:32,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:05:32,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:05:32,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:05:34,234.234 INFO    ] ================================================
[2026-06-13 13:05:34,250.250 INFO    ] Launching Daemon at Sat Jun 13 13:05:34 IST 2026
[2026-06-13 13:05:34,260.260 INFO    ] ================================================
[2026-06-13 13:05:34,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:05:34
[2026-06-13 13:05:34,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:05:35,110.110 INFO    ] Initializing speech engine...
[2026-06-13 13:05:35,114.114 INFO    ] 2026-06-13 13:05:35
[2026-06-13 13:05:35,328.328 INFO    ] 2026-06-13 13:05:35
[2026-06-13 13:05:35,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:35,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:35,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:35,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:35,747.747 INFO    ] time= 13/06/2026 13:05:35
[2026-06-13 13:05:35,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:35,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:35,855.855 INFO    ] No existing commands found in stream
[2026-06-13 13:05:40,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:05:40,870.870 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 13:05:43,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:05:43,250.250 INFO    ] Checking for system updates...
[2026-06-13 13:05:43,271.271 INFO    ] 200
[2026-06-13 13:05:43,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:43,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:43,308.308 INFO    ] No update needed
[2026-06-13 13:05:43,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 13:05:43,329.329 INFO    ] 200
[2026-06-13 13:05:43,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:43,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:05:43,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:43,395.395 INFO    ] No camera update needed
[2026-06-13 13:05:43,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:05:43,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:05:43,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:05:43,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:05:45,443.443 INFO    ] ================================================
[2026-06-13 13:05:45,459.459 INFO    ] Launching Daemon at Sat Jun 13 13:05:45 IST 2026
[2026-06-13 13:05:45,470.470 INFO    ] ================================================
[2026-06-13 13:05:45,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:05:45
[2026-06-13 13:05:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:05:46,295.295 INFO    ] Initializing speech engine...
[2026-06-13 13:05:46,301.301 INFO    ] 2026-06-13 13:05:46
[2026-06-13 13:05:46,509.509 INFO    ] 2026-06-13 13:05:46
[2026-06-13 13:05:46,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:46,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:46,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:46,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:46,914.914 INFO    ] time= 13/06/2026 13:05:46
[2026-06-13 13:05:46,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:46,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:47,073.073 INFO    ] No existing commands found in stream
[2026-06-13 13:05:52,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:05:52,111.111 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 13:05:53,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:05:53,655.655 INFO    ] Checking for system updates...
[2026-06-13 13:05:53,676.676 INFO    ] 200
[2026-06-13 13:05:53,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:53,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:53,710.710 INFO    ] No update needed
[2026-06-13 13:05:53,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 13:05:53,731.731 INFO    ] 200
[2026-06-13 13:05:53,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:05:53,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:05:53,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:05:53,795.795 INFO    ] No camera update needed
[2026-06-13 13:05:53,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:05:53,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:05:53,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:05:53,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:05:55,844.844 INFO    ] ================================================
[2026-06-13 13:05:55,860.860 INFO    ] Launching Daemon at Sat Jun 13 13:05:55 IST 2026
[2026-06-13 13:05:55,870.870 INFO    ] ================================================
[2026-06-13 13:05:56,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:05:56
[2026-06-13 13:05:56,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:05:56,706.706 INFO    ] Initializing speech engine...
[2026-06-13 13:05:56,711.711 INFO    ] 2026-06-13 13:05:56
[2026-06-13 13:05:56,922.922 INFO    ] 2026-06-13 13:05:56
[2026-06-13 13:05:56,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:05:57,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:05:57,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:05:57,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:05:57,322.322 INFO    ] time= 13/06/2026 13:05:57
[2026-06-13 13:05:57,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:05:57,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:05:57,444.444 INFO    ] No existing commands found in stream
[2026-06-13 13:06:02,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:06:02,452.452 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 13:06:05,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:06:05,422.422 INFO    ] Checking for system updates...
[2026-06-13 13:06:05,443.443 INFO    ] 200
[2026-06-13 13:06:05,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:05,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:05,476.476 INFO    ] No update needed
[2026-06-13 13:06:05,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 13:06:05,497.497 INFO    ] 200
[2026-06-13 13:06:05,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:05,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:06:05,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:05,561.561 INFO    ] No camera update needed
[2026-06-13 13:06:05,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:06:05,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:06:05,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:06:05,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:06:07,609.609 INFO    ] ================================================
[2026-06-13 13:06:07,625.625 INFO    ] Launching Daemon at Sat Jun 13 13:06:07 IST 2026
[2026-06-13 13:06:07,636.636 INFO    ] ================================================
[2026-06-13 13:06:07,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:06:07
[2026-06-13 13:06:08,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:06:08,524.524 INFO    ] Initializing speech engine...
[2026-06-13 13:06:08,530.530 INFO    ] 2026-06-13 13:06:08
[2026-06-13 13:06:08,738.738 INFO    ] 2026-06-13 13:06:08
[2026-06-13 13:06:08,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:06:08,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:06:08,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:06:09,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:06:09,196.196 INFO    ] time= 13/06/2026 13:06:09
[2026-06-13 13:06:09,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:06:09,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:06:09,418.418 INFO    ] No existing commands found in stream
[2026-06-13 13:06:14,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:06:14,435.435 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 13:06:18,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:06:18,709.709 INFO    ] Checking for system updates...
[2026-06-13 13:06:18,730.730 INFO    ] 200
[2026-06-13 13:06:18,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:18,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:18,763.763 INFO    ] No update needed
[2026-06-13 13:06:18,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 13:06:18,784.784 INFO    ] 200
[2026-06-13 13:06:18,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:18,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:06:18,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:18,854.854 INFO    ] No camera update needed
[2026-06-13 13:06:18,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:06:18,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:06:18,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:06:18,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:06:20,902.902 INFO    ] ================================================
[2026-06-13 13:06:20,918.918 INFO    ] Launching Daemon at Sat Jun 13 13:06:20 IST 2026
[2026-06-13 13:06:20,929.929 INFO    ] ================================================
[2026-06-13 13:06:21,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:06:21
[2026-06-13 13:06:21,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:06:21,730.730 INFO    ] Initializing speech engine...
[2026-06-13 13:06:21,741.741 INFO    ] 2026-06-13 13:06:21
[2026-06-13 13:06:21,946.946 INFO    ] 2026-06-13 13:06:21
[2026-06-13 13:06:21,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:06:22,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:06:22,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:06:22,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:06:22,272.272 INFO    ] time= 13/06/2026 13:06:22
[2026-06-13 13:06:22,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:06:22,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:06:22,320.320 INFO    ] No existing commands found in stream
[2026-06-13 13:06:27,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:06:27,332.332 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 13:06:29,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:06:29,387.387 INFO    ] Checking for system updates...
[2026-06-13 13:06:29,408.408 INFO    ] 200
[2026-06-13 13:06:29,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:29,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:29,443.443 INFO    ] No update needed
[2026-06-13 13:06:29,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 13:06:29,464.464 INFO    ] 200
[2026-06-13 13:06:29,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:29,489.489 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:06:29,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:29,527.527 INFO    ] No camera update needed
[2026-06-13 13:06:29,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:06:29,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:06:29,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:06:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:06:31,574.574 INFO    ] ================================================
[2026-06-13 13:06:31,592.592 INFO    ] Launching Daemon at Sat Jun 13 13:06:31 IST 2026
[2026-06-13 13:06:31,603.603 INFO    ] ================================================
[2026-06-13 13:06:32,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:06:32
[2026-06-13 13:06:32,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:06:33,055.055 INFO    ] Initializing speech engine...
[2026-06-13 13:06:33,079.079 INFO    ] 2026-06-13 13:06:33
[2026-06-13 13:06:33,353.353 INFO    ] 2026-06-13 13:06:33
[2026-06-13 13:06:33,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:06:33,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:06:33,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:06:33,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:06:33,732.732 INFO    ] time= 13/06/2026 13:06:33
[2026-06-13 13:06:33,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:06:33,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:06:33,856.856 INFO    ] No existing commands found in stream
[2026-06-13 13:06:38,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:06:38,872.872 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 13:06:41,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:06:41,978.978 INFO    ] Checking for system updates...
[2026-06-13 13:06:41,999.999 INFO    ] 200
[2026-06-13 13:06:42,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:42,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:42,032.032 INFO    ] No update needed
[2026-06-13 13:06:42,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 13:06:42,053.053 INFO    ] 200
[2026-06-13 13:06:42,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:42,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:06:42,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:42,125.125 INFO    ] No camera update needed
[2026-06-13 13:06:42,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:06:42,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:06:42,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:06:42,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:06:44,171.171 INFO    ] ================================================
[2026-06-13 13:06:44,187.187 INFO    ] Launching Daemon at Sat Jun 13 13:06:44 IST 2026
[2026-06-13 13:06:44,199.199 INFO    ] ================================================
[2026-06-13 13:06:44,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:06:44
[2026-06-13 13:06:44,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:06:45,001.001 INFO    ] Initializing speech engine...
[2026-06-13 13:06:45,014.014 INFO    ] 2026-06-13 13:06:45
[2026-06-13 13:06:45,273.273 INFO    ] 2026-06-13 13:06:45
[2026-06-13 13:06:45,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:06:45,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:06:45,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:06:45,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:06:45,684.684 INFO    ] time= 13/06/2026 13:06:45
[2026-06-13 13:06:45,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:06:45,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:06:45,824.824 INFO    ] No existing commands found in stream
[2026-06-13 13:06:50,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:06:50,837.837 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 13:06:51,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:06:51,272.272 INFO    ] Checking for system updates...
[2026-06-13 13:06:51,292.292 INFO    ] 200
[2026-06-13 13:06:51,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:51,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:06:51,326.326 INFO    ] No update needed
[2026-06-13 13:06:51,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 13:06:51,347.347 INFO    ] 200
[2026-06-13 13:06:51,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:06:51,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:06:51,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:06:51,409.409 INFO    ] No camera update needed
[2026-06-13 13:06:51,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:06:51,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:06:51,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:06:51,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:06:53,456.456 INFO    ] ================================================
[2026-06-13 13:06:53,472.472 INFO    ] Launching Daemon at Sat Jun 13 13:06:53 IST 2026
[2026-06-13 13:06:53,483.483 INFO    ] ================================================
[2026-06-13 13:06:53,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:06:53
[2026-06-13 13:06:54,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:06:54,662.662 INFO    ] Initializing speech engine...
[2026-06-13 13:06:54,668.668 INFO    ] 2026-06-13 13:06:54
[2026-06-13 13:06:54,964.964 INFO    ] 2026-06-13 13:06:54
[2026-06-13 13:06:55,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:06:55,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:06:55,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:06:55,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:06:55,323.323 INFO    ] time= 13/06/2026 13:06:55
[2026-06-13 13:06:55,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:06:55,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:06:55,402.402 INFO    ] No existing commands found in stream
[2026-06-13 13:07:00,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:00,418.418 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 13:07:01,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:07:01,797.797 INFO    ] Checking for system updates...
[2026-06-13 13:07:01,867.867 INFO    ] 200
[2026-06-13 13:07:01,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:01,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:01,945.945 INFO    ] No update needed
[2026-06-13 13:07:01,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:01,981.981 INFO    ] 200
[2026-06-13 13:07:01,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:02,056.056 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:02,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:02,091.091 INFO    ] No camera update needed
[2026-06-13 13:07:02,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:02,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:02,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:02,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:04,146.146 INFO    ] ================================================
[2026-06-13 13:07:04,162.162 INFO    ] Launching Daemon at Sat Jun 13 13:07:04 IST 2026
[2026-06-13 13:07:04,173.173 INFO    ] ================================================
[2026-06-13 13:07:04,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:04
[2026-06-13 13:07:04,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:05,024.024 INFO    ] Initializing speech engine...
[2026-06-13 13:07:05,030.030 INFO    ] 2026-06-13 13:07:05
[2026-06-13 13:07:05,243.243 INFO    ] 2026-06-13 13:07:05
[2026-06-13 13:07:05,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:05,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:05,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:07:05,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:07:05,673.673 INFO    ] time= 13/06/2026 13:07:05
[2026-06-13 13:07:05,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:07:05,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:07:05,772.772 INFO    ] No existing commands found in stream
[2026-06-13 13:07:10,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:10,786.786 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 13:07:11,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:07:11,244.244 INFO    ] Checking for system updates...
[2026-06-13 13:07:11,264.264 INFO    ] 200
[2026-06-13 13:07:11,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:11,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:11,298.298 INFO    ] No update needed
[2026-06-13 13:07:11,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:11,320.320 INFO    ] 200
[2026-06-13 13:07:11,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:11,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:11,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:11,384.384 INFO    ] No camera update needed
[2026-06-13 13:07:11,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:11,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:11,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:11,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:13,432.432 INFO    ] ================================================
[2026-06-13 13:07:13,448.448 INFO    ] Launching Daemon at Sat Jun 13 13:07:13 IST 2026
[2026-06-13 13:07:13,459.459 INFO    ] ================================================
[2026-06-13 13:07:13,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:13
[2026-06-13 13:07:14,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:14,258.258 INFO    ] Initializing speech engine...
[2026-06-13 13:07:14,263.263 INFO    ] 2026-06-13 13:07:14
[2026-06-13 13:07:14,467.467 INFO    ] 2026-06-13 13:07:14
[2026-06-13 13:07:14,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:14,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:07:14,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:07:14,883.883 INFO    ] time= 13/06/2026 13:07:14
[2026-06-13 13:07:14,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:07:14,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:07:14,983.983 INFO    ] No existing commands found in stream
[2026-06-13 13:07:19,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:19,995.995 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 13:07:21,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:07:21,370.370 INFO    ] Checking for system updates...
[2026-06-13 13:07:21,390.390 INFO    ] 200
[2026-06-13 13:07:21,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:21,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:07:21,423.423 INFO    ] No update needed
[2026-06-13 13:07:21,424.424 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:21,445.445 INFO    ] 200
[2026-06-13 13:07:21,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:21,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:21,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:21,496.496 INFO    ] No camera update needed
[2026-06-13 13:07:21,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:21,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:21,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:21,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:23,545.545 INFO    ] ================================================
[2026-06-13 13:07:23,561.561 INFO    ] Launching Daemon at Sat Jun 13 13:07:23 IST 2026
[2026-06-13 13:07:23,572.572 INFO    ] ================================================
[2026-06-13 13:07:23,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:23
[2026-06-13 13:07:24,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:24,381.381 INFO    ] Initializing speech engine...
[2026-06-13 13:07:24,391.391 INFO    ] 2026-06-13 13:07:24
[2026-06-13 13:07:24,605.605 INFO    ] 2026-06-13 13:07:24
[2026-06-13 13:07:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:24,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:24,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:07:24,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:07:25,029.029 INFO    ] time= 13/06/2026 13:07:24
[2026-06-13 13:07:25,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:07:25,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:07:25,154.154 INFO    ] No existing commands found in stream
[2026-06-13 13:07:30,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:30,167.167 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 13:07:32,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:07:32,189.189 INFO    ] Checking for system updates...
[2026-06-13 13:07:32,214.214 INFO    ] 200
[2026-06-13 13:07:32,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:32,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:32,259.259 INFO    ] No update needed
[2026-06-13 13:07:32,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:32,284.284 INFO    ] 200
[2026-06-13 13:07:32,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:32,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:32,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:32,445.445 INFO    ] No camera update needed
[2026-06-13 13:07:32,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:32,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:32,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:32,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:34,496.496 INFO    ] ================================================
[2026-06-13 13:07:34,512.512 INFO    ] Launching Daemon at Sat Jun 13 13:07:34 IST 2026
[2026-06-13 13:07:34,522.522 INFO    ] ================================================
[2026-06-13 13:07:34,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:34
[2026-06-13 13:07:35,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:35,357.357 INFO    ] Initializing speech engine...
[2026-06-13 13:07:35,363.363 INFO    ] 2026-06-13 13:07:35
[2026-06-13 13:07:35,571.571 INFO    ] 2026-06-13 13:07:35
[2026-06-13 13:07:35,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:35,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:35,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:07:35,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:07:35,975.975 INFO    ] time= 13/06/2026 13:07:35
[2026-06-13 13:07:36,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:07:36,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:07:36,085.085 INFO    ] No existing commands found in stream
[2026-06-13 13:07:41,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:41,103.103 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 13:07:44,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:07:44,693.693 INFO    ] Checking for system updates...
[2026-06-13 13:07:44,714.714 INFO    ] 200
[2026-06-13 13:07:44,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:44,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:44,748.748 INFO    ] No update needed
[2026-06-13 13:07:44,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:44,771.771 INFO    ] 200
[2026-06-13 13:07:44,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:44,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:44,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:44,836.836 INFO    ] No camera update needed
[2026-06-13 13:07:44,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:44,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:44,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:44,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:46,883.883 INFO    ] ================================================
[2026-06-13 13:07:46,899.899 INFO    ] Launching Daemon at Sat Jun 13 13:07:46 IST 2026
[2026-06-13 13:07:46,909.909 INFO    ] ================================================
[2026-06-13 13:07:47,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:47
[2026-06-13 13:07:47,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:47,701.701 INFO    ] Initializing speech engine...
[2026-06-13 13:07:47,704.704 INFO    ] 2026-06-13 13:07:47
[2026-06-13 13:07:47,909.909 INFO    ] 2026-06-13 13:07:47
[2026-06-13 13:07:47,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:48,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:48,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:07:48,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:07:48,318.318 INFO    ] time= 13/06/2026 13:07:48
[2026-06-13 13:07:48,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:07:48,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:07:48,433.433 INFO    ] No existing commands found in stream
[2026-06-13 13:07:53,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:07:53,447.447 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 13:07:56,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:07:56,495.495 INFO    ] Checking for system updates...
[2026-06-13 13:07:56,515.515 INFO    ] 200
[2026-06-13 13:07:56,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:56,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:56,548.548 INFO    ] No update needed
[2026-06-13 13:07:56,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 13:07:56,569.569 INFO    ] 200
[2026-06-13 13:07:56,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:07:56,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:07:56,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:07:56,634.634 INFO    ] No camera update needed
[2026-06-13 13:07:56,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:07:56,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:07:56,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:07:56,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:07:58,681.681 INFO    ] ================================================
[2026-06-13 13:07:58,697.697 INFO    ] Launching Daemon at Sat Jun 13 13:07:58 IST 2026
[2026-06-13 13:07:58,708.708 INFO    ] ================================================
[2026-06-13 13:07:59,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:07:59
[2026-06-13 13:07:59,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:07:59,485.485 INFO    ] Initializing speech engine...
[2026-06-13 13:07:59,493.493 INFO    ] 2026-06-13 13:07:59
[2026-06-13 13:07:59,709.709 INFO    ] 2026-06-13 13:07:59
[2026-06-13 13:07:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:07:59,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:07:59,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:00,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:00,132.132 INFO    ] time= 13/06/2026 13:08:00
[2026-06-13 13:08:00,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:00,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:00,257.257 INFO    ] No existing commands found in stream
[2026-06-13 13:08:05,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:08:05,270.270 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 13:08:08,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:08:08,869.869 INFO    ] Checking for system updates...
[2026-06-13 13:08:08,891.891 INFO    ] 200
[2026-06-13 13:08:08,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:08,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:08:08,924.924 INFO    ] No update needed
[2026-06-13 13:08:08,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 13:08:08,947.947 INFO    ] 200
[2026-06-13 13:08:08,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:08,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:08:09,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:09,026.026 INFO    ] No camera update needed
[2026-06-13 13:08:09,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:08:09,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:08:09,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:08:09,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:08:11,075.075 INFO    ] ================================================
[2026-06-13 13:08:11,091.091 INFO    ] Launching Daemon at Sat Jun 13 13:08:11 IST 2026
[2026-06-13 13:08:11,102.102 INFO    ] ================================================
[2026-06-13 13:08:11,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:08:11
[2026-06-13 13:08:11,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:08:11,926.926 INFO    ] Initializing speech engine...
[2026-06-13 13:08:11,934.934 INFO    ] 2026-06-13 13:08:11
[2026-06-13 13:08:12,153.153 INFO    ] 2026-06-13 13:08:12
[2026-06-13 13:08:12,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:08:12,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:08:12,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:12,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:12,579.579 INFO    ] time= 13/06/2026 13:08:12
[2026-06-13 13:08:12,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:12,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:12,771.771 INFO    ] No existing commands found in stream
[2026-06-13 13:08:17,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:08:17,794.794 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 13:08:20,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:08:20,349.349 INFO    ] Checking for system updates...
[2026-06-13 13:08:20,370.370 INFO    ] 200
[2026-06-13 13:08:20,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:20,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:20,403.403 INFO    ] No update needed
[2026-06-13 13:08:20,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 13:08:20,424.424 INFO    ] 200
[2026-06-13 13:08:20,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:20,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:08:20,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:08:20,489.489 INFO    ] No camera update needed
[2026-06-13 13:08:20,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:08:20,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:08:20,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:08:20,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:08:22,535.535 INFO    ] ================================================
[2026-06-13 13:08:22,551.551 INFO    ] Launching Daemon at Sat Jun 13 13:08:22 IST 2026
[2026-06-13 13:08:22,562.562 INFO    ] ================================================
[2026-06-13 13:08:22,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:08:22
[2026-06-13 13:08:23,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:08:23,375.375 INFO    ] Initializing speech engine...
[2026-06-13 13:08:23,389.389 INFO    ] 2026-06-13 13:08:23
[2026-06-13 13:08:23,595.595 INFO    ] 2026-06-13 13:08:23
[2026-06-13 13:08:23,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:08:23,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:08:23,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:24,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:24,017.017 INFO    ] time= 13/06/2026 13:08:24
[2026-06-13 13:08:24,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:24,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:24,170.170 INFO    ] No existing commands found in stream
[2026-06-13 13:08:29,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:08:29,185.185 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 13:08:30,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:08:30,289.289 INFO    ] Checking for system updates...
[2026-06-13 13:08:30,310.310 INFO    ] 200
[2026-06-13 13:08:30,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:30,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:08:30,344.344 INFO    ] No update needed
[2026-06-13 13:08:30,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 13:08:30,366.366 INFO    ] 200
[2026-06-13 13:08:30,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:30,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:08:30,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:08:30,436.436 INFO    ] No camera update needed
[2026-06-13 13:08:30,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:08:30,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:08:30,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:08:30,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:08:32,478.478 INFO    ] ================================================
[2026-06-13 13:08:32,488.488 INFO    ] Launching Daemon at Sat Jun 13 13:08:32 IST 2026
[2026-06-13 13:08:32,495.495 INFO    ] ================================================
[2026-06-13 13:08:32,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:08:32
[2026-06-13 13:08:33,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:08:33,308.308 INFO    ] Initializing speech engine...
[2026-06-13 13:08:33,314.314 INFO    ] 2026-06-13 13:08:33
[2026-06-13 13:08:33,521.521 INFO    ] 2026-06-13 13:08:33
[2026-06-13 13:08:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:08:33,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:08:33,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:33,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:33,941.941 INFO    ] time= 13/06/2026 13:08:33
[2026-06-13 13:08:33,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:33,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:34,038.038 INFO    ] No existing commands found in stream
[2026-06-13 13:08:39,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:08:39,056.056 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 13:08:41,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:08:41,250.250 INFO    ] Checking for system updates...
[2026-06-13 13:08:41,271.271 INFO    ] 200
[2026-06-13 13:08:41,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:41,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:41,309.309 INFO    ] No update needed
[2026-06-13 13:08:41,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 13:08:41,330.330 INFO    ] 200
[2026-06-13 13:08:41,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:41,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:08:41,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:41,399.399 INFO    ] No camera update needed
[2026-06-13 13:08:41,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:08:41,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:08:41,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:08:41,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:08:43,446.446 INFO    ] ================================================
[2026-06-13 13:08:43,461.461 INFO    ] Launching Daemon at Sat Jun 13 13:08:43 IST 2026
[2026-06-13 13:08:43,473.473 INFO    ] ================================================
[2026-06-13 13:08:43,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:08:43
[2026-06-13 13:08:44,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:08:44,299.299 INFO    ] Initializing speech engine...
[2026-06-13 13:08:44,309.309 INFO    ] 2026-06-13 13:08:44
[2026-06-13 13:08:44,513.513 INFO    ] 2026-06-13 13:08:44
[2026-06-13 13:08:44,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:08:44,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:08:44,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:44,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:44,911.911 INFO    ] time= 13/06/2026 13:08:44
[2026-06-13 13:08:44,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:44,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:45,027.027 INFO    ] No existing commands found in stream
[2026-06-13 13:08:50,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:08:50,039.039 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 13:08:53,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:08:53,307.307 INFO    ] Checking for system updates...
[2026-06-13 13:08:53,329.329 INFO    ] 200
[2026-06-13 13:08:53,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:53,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:53,362.362 INFO    ] No update needed
[2026-06-13 13:08:53,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 13:08:53,383.383 INFO    ] 200
[2026-06-13 13:08:53,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:08:53,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:08:53,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:08:53,445.445 INFO    ] No camera update needed
[2026-06-13 13:08:53,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:08:53,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:08:53,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:08:53,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:08:55,494.494 INFO    ] ================================================
[2026-06-13 13:08:55,510.510 INFO    ] Launching Daemon at Sat Jun 13 13:08:55 IST 2026
[2026-06-13 13:08:55,521.521 INFO    ] ================================================
[2026-06-13 13:08:55,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:08:55
[2026-06-13 13:08:56,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:08:56,366.366 INFO    ] Initializing speech engine...
[2026-06-13 13:08:56,373.373 INFO    ] 2026-06-13 13:08:56
[2026-06-13 13:08:56,580.580 INFO    ] 2026-06-13 13:08:56
[2026-06-13 13:08:56,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:08:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:08:56,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:08:56,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:08:57,009.009 INFO    ] time= 13/06/2026 13:08:56
[2026-06-13 13:08:57,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:08:57,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:08:57,109.109 INFO    ] No existing commands found in stream
[2026-06-13 13:09:02,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:02,119.119 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 13:09:05,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:09:05,949.949 INFO    ] Checking for system updates...
[2026-06-13 13:09:05,995.995 INFO    ] 200
[2026-06-13 13:09:05,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:06,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:06,060.060 INFO    ] No update needed
[2026-06-13 13:09:06,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:06,082.082 INFO    ] 200
[2026-06-13 13:09:06,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:06,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:06,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:09:06,145.145 INFO    ] No camera update needed
[2026-06-13 13:09:06,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:06,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:06,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:06,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:09:08,193.193 INFO    ] ================================================
[2026-06-13 13:09:08,209.209 INFO    ] Launching Daemon at Sat Jun 13 13:09:08 IST 2026
[2026-06-13 13:09:08,220.220 INFO    ] ================================================
[2026-06-13 13:09:08,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:09:08
[2026-06-13 13:09:08,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:09:09,048.048 INFO    ] Initializing speech engine...
[2026-06-13 13:09:09,055.055 INFO    ] 2026-06-13 13:09:09
[2026-06-13 13:09:09,260.260 INFO    ] 2026-06-13 13:09:09
[2026-06-13 13:09:09,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:09:09,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:09:09,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:09:09,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:09:09,674.674 INFO    ] time= 13/06/2026 13:09:09
[2026-06-13 13:09:09,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:09:09,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:09:09,779.779 INFO    ] No existing commands found in stream
[2026-06-13 13:09:14,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:14,792.792 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 13:09:17,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:09:17,080.080 INFO    ] Checking for system updates...
[2026-06-13 13:09:17,100.100 INFO    ] 200
[2026-06-13 13:09:17,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:17,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:17,133.133 INFO    ] No update needed
[2026-06-13 13:09:17,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:17,154.154 INFO    ] 200
[2026-06-13 13:09:17,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:17,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:17,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:17,223.223 INFO    ] No camera update needed
[2026-06-13 13:09:17,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:17,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:17,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:17,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:09:19,262.262 INFO    ] ================================================
[2026-06-13 13:09:19,273.273 INFO    ] Launching Daemon at Sat Jun 13 13:09:19 IST 2026
[2026-06-13 13:09:19,279.279 INFO    ] ================================================
[2026-06-13 13:09:19,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:09:19
[2026-06-13 13:09:20,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:09:20,450.450 INFO    ] Initializing speech engine...
[2026-06-13 13:09:20,459.459 INFO    ] 2026-06-13 13:09:20
[2026-06-13 13:09:20,717.717 INFO    ] 2026-06-13 13:09:20
[2026-06-13 13:09:20,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:09:20,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:09:21,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:09:21,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:09:21,149.149 INFO    ] time= 13/06/2026 13:09:21
[2026-06-13 13:09:21,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:09:21,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:09:21,391.391 INFO    ] No existing commands found in stream
[2026-06-13 13:09:26,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:26,427.427 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 13:09:27,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:09:27,925.925 INFO    ] Checking for system updates...
[2026-06-13 13:09:27,945.945 INFO    ] 200
[2026-06-13 13:09:27,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:27,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:27,981.981 INFO    ] No update needed
[2026-06-13 13:09:27,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:28,001.001 INFO    ] 200
[2026-06-13 13:09:28,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:28,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:28,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:28,074.074 INFO    ] No camera update needed
[2026-06-13 13:09:28,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:28,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:28,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:28,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:09:30,122.122 INFO    ] ================================================
[2026-06-13 13:09:30,137.137 INFO    ] Launching Daemon at Sat Jun 13 13:09:30 IST 2026
[2026-06-13 13:09:30,148.148 INFO    ] ================================================
[2026-06-13 13:09:30,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:09:30
[2026-06-13 13:09:30,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:09:31,052.052 INFO    ] Initializing speech engine...
[2026-06-13 13:09:31,064.064 INFO    ] 2026-06-13 13:09:31
[2026-06-13 13:09:31,342.342 INFO    ] 2026-06-13 13:09:31
[2026-06-13 13:09:31,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:09:31,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:09:31,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:09:31,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:09:31,828.828 INFO    ] time= 13/06/2026 13:09:31
[2026-06-13 13:09:31,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:09:31,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:09:32,054.054 INFO    ] No existing commands found in stream
[2026-06-13 13:09:37,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:37,095.095 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 13:09:39,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:09:39,927.927 INFO    ] Checking for system updates...
[2026-06-13 13:09:39,948.948 INFO    ] 200
[2026-06-13 13:09:39,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:39,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:39,982.982 INFO    ] No update needed
[2026-06-13 13:09:39,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:40,003.003 INFO    ] 200
[2026-06-13 13:09:40,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:40,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:40,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:09:40,170.170 INFO    ] No camera update needed
[2026-06-13 13:09:40,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:40,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:40,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:40,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:09:42,218.218 INFO    ] ================================================
[2026-06-13 13:09:42,233.233 INFO    ] Launching Daemon at Sat Jun 13 13:09:42 IST 2026
[2026-06-13 13:09:42,244.244 INFO    ] ================================================
[2026-06-13 13:09:42,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:09:42
[2026-06-13 13:09:42,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:09:43,023.023 INFO    ] Initializing speech engine...
[2026-06-13 13:09:43,036.036 INFO    ] 2026-06-13 13:09:43
[2026-06-13 13:09:43,243.243 INFO    ] 2026-06-13 13:09:43
[2026-06-13 13:09:43,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:09:43,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:09:43,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:09:43,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:09:43,647.647 INFO    ] time= 13/06/2026 13:09:43
[2026-06-13 13:09:43,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:09:43,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:09:43,765.765 INFO    ] No existing commands found in stream
[2026-06-13 13:09:48,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:48,777.777 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 13:09:49,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:09:49,629.629 INFO    ] Checking for system updates...
[2026-06-13 13:09:49,650.650 INFO    ] 200
[2026-06-13 13:09:49,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:49,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:49,683.683 INFO    ] No update needed
[2026-06-13 13:09:49,684.684 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:49,704.704 INFO    ] 200
[2026-06-13 13:09:49,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:49,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:49,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:49,774.774 INFO    ] No camera update needed
[2026-06-13 13:09:49,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:49,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:49,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:49,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:09:51,822.822 INFO    ] ================================================
[2026-06-13 13:09:51,837.837 INFO    ] Launching Daemon at Sat Jun 13 13:09:51 IST 2026
[2026-06-13 13:09:51,848.848 INFO    ] ================================================
[2026-06-13 13:09:52,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:09:52
[2026-06-13 13:09:52,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:09:52,632.632 INFO    ] Initializing speech engine...
[2026-06-13 13:09:52,636.636 INFO    ] 2026-06-13 13:09:52
[2026-06-13 13:09:52,865.865 INFO    ] 2026-06-13 13:09:52
[2026-06-13 13:09:52,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:09:53,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:09:53,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:09:53,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:09:53,275.275 INFO    ] time= 13/06/2026 13:09:53
[2026-06-13 13:09:53,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:09:53,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:09:53,419.419 INFO    ] No existing commands found in stream
[2026-06-13 13:09:58,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:09:58,432.432 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 13:09:58,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:09:58,833.833 INFO    ] Checking for system updates...
[2026-06-13 13:09:58,854.854 INFO    ] 200
[2026-06-13 13:09:58,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:58,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:58,887.887 INFO    ] No update needed
[2026-06-13 13:09:58,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 13:09:58,912.912 INFO    ] 200
[2026-06-13 13:09:58,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:09:58,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:09:58,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:09:58,973.973 INFO    ] No camera update needed
[2026-06-13 13:09:58,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:09:58,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:09:58,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:09:58,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:01,020.020 INFO    ] ================================================
[2026-06-13 13:10:01,035.035 INFO    ] Launching Daemon at Sat Jun 13 13:10:01 IST 2026
[2026-06-13 13:10:01,046.046 INFO    ] ================================================
[2026-06-13 13:10:01,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:01
[2026-06-13 13:10:01,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:01,879.879 INFO    ] Initializing speech engine...
[2026-06-13 13:10:01,884.884 INFO    ] 2026-06-13 13:10:01
[2026-06-13 13:10:02,100.100 INFO    ] 2026-06-13 13:10:02
[2026-06-13 13:10:02,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:02,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:02,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:02,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:02,562.562 INFO    ] time= 13/06/2026 13:10:02
[2026-06-13 13:10:02,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:02,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:02,611.611 INFO    ] No existing commands found in stream
[2026-06-13 13:10:07,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:10:07,623.623 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 13:10:11,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:10:11,363.363 INFO    ] Checking for system updates...
[2026-06-13 13:10:11,384.384 INFO    ] 200
[2026-06-13 13:10:11,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:11,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:11,417.417 INFO    ] No update needed
[2026-06-13 13:10:11,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 13:10:11,439.439 INFO    ] 200
[2026-06-13 13:10:11,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:11,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:10:11,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:11,502.502 INFO    ] No camera update needed
[2026-06-13 13:10:11,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:10:11,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:10:11,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:10:11,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:13,549.549 INFO    ] ================================================
[2026-06-13 13:10:13,564.564 INFO    ] Launching Daemon at Sat Jun 13 13:10:13 IST 2026
[2026-06-13 13:10:13,575.575 INFO    ] ================================================
[2026-06-13 13:10:13,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:13
[2026-06-13 13:10:14,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:14,403.403 INFO    ] Initializing speech engine...
[2026-06-13 13:10:14,408.408 INFO    ] 2026-06-13 13:10:14
[2026-06-13 13:10:14,612.612 INFO    ] 2026-06-13 13:10:14
[2026-06-13 13:10:14,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:14,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:14,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:14,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:15,010.010 INFO    ] time= 13/06/2026 13:10:14
[2026-06-13 13:10:15,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:15,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:15,131.131 INFO    ] No existing commands found in stream
[2026-06-13 13:10:20,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:10:20,144.144 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 13:10:23,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:10:23,995.995 INFO    ] Checking for system updates...
[2026-06-13 13:10:24,016.016 INFO    ] 200
[2026-06-13 13:10:24,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:24,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:10:24,049.049 INFO    ] No update needed
[2026-06-13 13:10:24,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 13:10:24,071.071 INFO    ] 200
[2026-06-13 13:10:24,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:24,096.096 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:10:24,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:10:24,134.134 INFO    ] No camera update needed
[2026-06-13 13:10:24,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:10:24,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:10:24,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:10:24,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:26,183.183 INFO    ] ================================================
[2026-06-13 13:10:26,198.198 INFO    ] Launching Daemon at Sat Jun 13 13:10:26 IST 2026
[2026-06-13 13:10:26,208.208 INFO    ] ================================================
[2026-06-13 13:10:26,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:26
[2026-06-13 13:10:26,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:27,022.022 INFO    ] Initializing speech engine...
[2026-06-13 13:10:27,035.035 INFO    ] 2026-06-13 13:10:27
[2026-06-13 13:10:27,254.254 INFO    ] 2026-06-13 13:10:27
[2026-06-13 13:10:27,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:27,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:27,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:27,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:27,611.611 INFO    ] time= 13/06/2026 13:10:27
[2026-06-13 13:10:27,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:27,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:27,679.679 INFO    ] No existing commands found in stream
[2026-06-13 13:10:32,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:10:32,698.698 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 13:10:33,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:10:33,077.077 INFO    ] Checking for system updates...
[2026-06-13 13:10:33,113.113 INFO    ] 200
[2026-06-13 13:10:33,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:33,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:10:33,180.180 INFO    ] No update needed
[2026-06-13 13:10:33,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 13:10:33,216.216 INFO    ] 200
[2026-06-13 13:10:33,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:33,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:10:33,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:10:33,312.312 INFO    ] No camera update needed
[2026-06-13 13:10:33,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:10:33,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:10:33,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:10:33,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:35,373.373 INFO    ] ================================================
[2026-06-13 13:10:35,388.388 INFO    ] Launching Daemon at Sat Jun 13 13:10:35 IST 2026
[2026-06-13 13:10:35,399.399 INFO    ] ================================================
[2026-06-13 13:10:35,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:35
[2026-06-13 13:10:36,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:36,237.237 INFO    ] Initializing speech engine...
[2026-06-13 13:10:36,242.242 INFO    ] 2026-06-13 13:10:36
[2026-06-13 13:10:36,472.472 INFO    ] 2026-06-13 13:10:36
[2026-06-13 13:10:36,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:36,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:36,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:36,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:36,899.899 INFO    ] time= 13/06/2026 13:10:36
[2026-06-13 13:10:36,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:37,024.024 INFO    ] No existing commands found in stream
[2026-06-13 13:10:42,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:10:42,038.038 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 13:10:43,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:10:43,378.378 INFO    ] Checking for system updates...
[2026-06-13 13:10:43,399.399 INFO    ] 200
[2026-06-13 13:10:43,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:43,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:43,432.432 INFO    ] No update needed
[2026-06-13 13:10:43,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 13:10:43,452.452 INFO    ] 200
[2026-06-13 13:10:43,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:43,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:10:43,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:43,522.522 INFO    ] No camera update needed
[2026-06-13 13:10:43,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:10:43,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:10:43,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:10:43,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:45,574.574 INFO    ] ================================================
[2026-06-13 13:10:45,590.590 INFO    ] Launching Daemon at Sat Jun 13 13:10:45 IST 2026
[2026-06-13 13:10:45,601.601 INFO    ] ================================================
[2026-06-13 13:10:45,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:45
[2026-06-13 13:10:46,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:46,422.422 INFO    ] Initializing speech engine...
[2026-06-13 13:10:46,427.427 INFO    ] 2026-06-13 13:10:46
[2026-06-13 13:10:46,633.633 INFO    ] 2026-06-13 13:10:46
[2026-06-13 13:10:46,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:46,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:46,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:46,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:47,052.052 INFO    ] time= 13/06/2026 13:10:46
[2026-06-13 13:10:47,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:47,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:47,149.149 INFO    ] No existing commands found in stream
[2026-06-13 13:10:52,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:10:52,161.161 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 13:10:54,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:10:54,783.783 INFO    ] Checking for system updates...
[2026-06-13 13:10:54,809.809 INFO    ] 200
[2026-06-13 13:10:54,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:54,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:54,842.842 INFO    ] No update needed
[2026-06-13 13:10:54,843.843 INFO    ] Checking for camera pi updates...
[2026-06-13 13:10:54,862.862 INFO    ] 200
[2026-06-13 13:10:54,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:10:54,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:10:54,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:10:54,928.928 INFO    ] No camera update needed
[2026-06-13 13:10:54,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:10:54,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:10:54,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:10:54,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:10:56,977.977 INFO    ] ================================================
[2026-06-13 13:10:56,992.992 INFO    ] Launching Daemon at Sat Jun 13 13:10:56 IST 2026
[2026-06-13 13:10:57,003.003 INFO    ] ================================================
[2026-06-13 13:10:57,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:10:57
[2026-06-13 13:10:57,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:10:57,800.800 INFO    ] Initializing speech engine...
[2026-06-13 13:10:57,806.806 INFO    ] 2026-06-13 13:10:57
[2026-06-13 13:10:58,011.011 INFO    ] 2026-06-13 13:10:57
[2026-06-13 13:10:58,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:10:58,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:10:58,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:10:58,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:10:58,421.421 INFO    ] time= 13/06/2026 13:10:58
[2026-06-13 13:10:58,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:10:58,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:10:58,535.535 INFO    ] No existing commands found in stream
[2026-06-13 13:11:03,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:03,551.551 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 13:11:03,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:11:03,950.950 INFO    ] Checking for system updates...
[2026-06-13 13:11:03,972.972 INFO    ] 200
[2026-06-13 13:11:03,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:04,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:04,008.008 INFO    ] No update needed
[2026-06-13 13:11:04,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 13:11:04,029.029 INFO    ] 200
[2026-06-13 13:11:04,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:04,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:11:04,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:04,092.092 INFO    ] No camera update needed
[2026-06-13 13:11:04,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:11:04,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:11:04,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:11:04,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:11:06,140.140 INFO    ] ================================================
[2026-06-13 13:11:06,155.155 INFO    ] Launching Daemon at Sat Jun 13 13:11:06 IST 2026
[2026-06-13 13:11:06,166.166 INFO    ] ================================================
[2026-06-13 13:11:06,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:11:06
[2026-06-13 13:11:06,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:11:06,997.997 INFO    ] Initializing speech engine...
[2026-06-13 13:11:07,002.002 INFO    ] 2026-06-13 13:11:06
[2026-06-13 13:11:07,207.207 INFO    ] 2026-06-13 13:11:07
[2026-06-13 13:11:07,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:11:07,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:11:07,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:11:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:11:07,608.608 INFO    ] time= 13/06/2026 13:11:07
[2026-06-13 13:11:07,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:11:07,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:11:07,730.730 INFO    ] No existing commands found in stream
[2026-06-13 13:11:12,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:12,743.743 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 13:11:13,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:11:13,600.600 INFO    ] Checking for system updates...
[2026-06-13 13:11:13,621.621 INFO    ] 200
[2026-06-13 13:11:13,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:13,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:13,654.654 INFO    ] No update needed
[2026-06-13 13:11:13,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 13:11:13,675.675 INFO    ] 200
[2026-06-13 13:11:13,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:13,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:11:13,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:13,726.726 INFO    ] No camera update needed
[2026-06-13 13:11:13,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:11:13,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:11:13,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:11:13,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:11:15,773.773 INFO    ] ================================================
[2026-06-13 13:11:15,788.788 INFO    ] Launching Daemon at Sat Jun 13 13:11:15 IST 2026
[2026-06-13 13:11:15,798.798 INFO    ] ================================================
[2026-06-13 13:11:16,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:11:16
[2026-06-13 13:11:16,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:11:16,569.569 INFO    ] Initializing speech engine...
[2026-06-13 13:11:16,577.577 INFO    ] 2026-06-13 13:11:16
[2026-06-13 13:11:16,789.789 INFO    ] 2026-06-13 13:11:16
[2026-06-13 13:11:16,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:11:17,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:11:17,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:11:17,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:11:17,197.197 INFO    ] time= 13/06/2026 13:11:17
[2026-06-13 13:11:17,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:11:17,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:11:17,300.300 INFO    ] No existing commands found in stream
[2026-06-13 13:11:22,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:22,314.314 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 13:11:25,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:11:25,959.959 INFO    ] Checking for system updates...
[2026-06-13 13:11:25,981.981 INFO    ] 200
[2026-06-13 13:11:25,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:26,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:11:26,014.014 INFO    ] No update needed
[2026-06-13 13:11:26,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 13:11:26,035.035 INFO    ] 200
[2026-06-13 13:11:26,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:26,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:11:26,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:11:26,101.101 INFO    ] No camera update needed
[2026-06-13 13:11:26,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:11:26,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:11:26,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:11:26,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:11:28,150.150 INFO    ] ================================================
[2026-06-13 13:11:28,165.165 INFO    ] Launching Daemon at Sat Jun 13 13:11:28 IST 2026
[2026-06-13 13:11:28,176.176 INFO    ] ================================================
[2026-06-13 13:11:28,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:11:28
[2026-06-13 13:11:28,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:11:29,096.096 INFO    ] Initializing speech engine...
[2026-06-13 13:11:29,109.109 INFO    ] 2026-06-13 13:11:29
[2026-06-13 13:11:29,379.379 INFO    ] 2026-06-13 13:11:29
[2026-06-13 13:11:29,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:11:29,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:11:29,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:11:29,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:11:29,718.718 INFO    ] time= 13/06/2026 13:11:29
[2026-06-13 13:11:29,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:11:29,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:11:29,830.830 INFO    ] No existing commands found in stream
[2026-06-13 13:11:34,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:34,846.846 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 13:11:35,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:11:35,245.245 INFO    ] Checking for system updates...
[2026-06-13 13:11:35,266.266 INFO    ] 200
[2026-06-13 13:11:35,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:35,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:11:35,299.299 INFO    ] No update needed
[2026-06-13 13:11:35,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 13:11:35,321.321 INFO    ] 200
[2026-06-13 13:11:35,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:35,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:11:35,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:11:35,386.386 INFO    ] No camera update needed
[2026-06-13 13:11:35,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:11:35,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:11:35,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:11:35,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:11:37,433.433 INFO    ] ================================================
[2026-06-13 13:11:37,448.448 INFO    ] Launching Daemon at Sat Jun 13 13:11:37 IST 2026
[2026-06-13 13:11:37,459.459 INFO    ] ================================================
[2026-06-13 13:11:37,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:11:37
[2026-06-13 13:11:38,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:11:38,246.246 INFO    ] Initializing speech engine...
[2026-06-13 13:11:38,251.251 INFO    ] 2026-06-13 13:11:38
[2026-06-13 13:11:38,480.480 INFO    ] 2026-06-13 13:11:38
[2026-06-13 13:11:38,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:11:38,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:11:38,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:11:38,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:11:38,897.897 INFO    ] time= 13/06/2026 13:11:38
[2026-06-13 13:11:38,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:11:38,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:11:39,034.034 INFO    ] No existing commands found in stream
[2026-06-13 13:11:44,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:44,047.047 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 13:11:48,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:11:48,713.713 INFO    ] Checking for system updates...
[2026-06-13 13:11:48,749.749 INFO    ] 200
[2026-06-13 13:11:48,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:48,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:48,815.815 INFO    ] No update needed
[2026-06-13 13:11:48,818.818 INFO    ] Checking for camera pi updates...
[2026-06-13 13:11:48,852.852 INFO    ] 200
[2026-06-13 13:11:48,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:11:48,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:11:49,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:11:49,045.045 INFO    ] No camera update needed
[2026-06-13 13:11:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:11:49,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:11:49,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:11:49,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:11:51,094.094 INFO    ] ================================================
[2026-06-13 13:11:51,109.109 INFO    ] Launching Daemon at Sat Jun 13 13:11:51 IST 2026
[2026-06-13 13:11:51,120.120 INFO    ] ================================================
[2026-06-13 13:11:51,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:11:51
[2026-06-13 13:11:51,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:11:51,946.946 INFO    ] Initializing speech engine...
[2026-06-13 13:11:51,956.956 INFO    ] 2026-06-13 13:11:51
[2026-06-13 13:11:52,161.161 INFO    ] 2026-06-13 13:11:52
[2026-06-13 13:11:52,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:11:52,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:11:52,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:11:52,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:11:52,563.563 INFO    ] time= 13/06/2026 13:11:52
[2026-06-13 13:11:52,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:11:52,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:11:52,670.670 INFO    ] No existing commands found in stream
[2026-06-13 13:11:57,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:11:57,684.684 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 13:12:01,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:12:01,153.153 INFO    ] Checking for system updates...
[2026-06-13 13:12:01,173.173 INFO    ] 200
[2026-06-13 13:12:01,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:01,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:12:01,208.208 INFO    ] No update needed
[2026-06-13 13:12:01,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 13:12:01,229.229 INFO    ] 200
[2026-06-13 13:12:01,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:01,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:12:01,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:12:01,302.302 INFO    ] No camera update needed
[2026-06-13 13:12:01,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:12:01,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:12:01,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:12:01,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:12:03,344.344 INFO    ] ================================================
[2026-06-13 13:12:03,360.360 INFO    ] Launching Daemon at Sat Jun 13 13:12:03 IST 2026
[2026-06-13 13:12:03,371.371 INFO    ] ================================================
[2026-06-13 13:12:04,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:12:04
[2026-06-13 13:12:04,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:12:04,971.971 INFO    ] Initializing speech engine...
[2026-06-13 13:12:04,980.980 INFO    ] 2026-06-13 13:12:04
[2026-06-13 13:12:05,267.267 INFO    ] 2026-06-13 13:12:05
[2026-06-13 13:12:05,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:12:05,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:12:05,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:12:05,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:12:05,702.702 INFO    ] time= 13/06/2026 13:12:05
[2026-06-13 13:12:05,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:12:05,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:12:05,833.833 INFO    ] No existing commands found in stream
[2026-06-13 13:12:10,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:12:10,849.849 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 13:12:14,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:12:14,333.333 INFO    ] Checking for system updates...
[2026-06-13 13:12:14,356.356 INFO    ] 200
[2026-06-13 13:12:14,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:14,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:12:14,390.390 INFO    ] No update needed
[2026-06-13 13:12:14,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 13:12:14,411.411 INFO    ] 200
[2026-06-13 13:12:14,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:14,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:12:14,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:12:14,484.484 INFO    ] No camera update needed
[2026-06-13 13:12:14,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:12:14,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:12:14,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:12:14,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:12:16,534.534 INFO    ] ================================================
[2026-06-13 13:12:16,550.550 INFO    ] Launching Daemon at Sat Jun 13 13:12:16 IST 2026
[2026-06-13 13:12:16,561.561 INFO    ] ================================================
[2026-06-13 13:12:16,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:12:16
[2026-06-13 13:12:17,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:12:17,345.345 INFO    ] Initializing speech engine...
[2026-06-13 13:12:17,350.350 INFO    ] 2026-06-13 13:12:17
[2026-06-13 13:12:17,581.581 INFO    ] 2026-06-13 13:12:17
[2026-06-13 13:12:17,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:12:17,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:12:17,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:12:17,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:12:18,015.015 INFO    ] time= 13/06/2026 13:12:17
[2026-06-13 13:12:18,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:12:18,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:12:18,137.137 INFO    ] No existing commands found in stream
[2026-06-13 13:12:23,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:12:23,151.151 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 13:12:26,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:12:26,953.953 INFO    ] Checking for system updates...
[2026-06-13 13:12:26,973.973 INFO    ] 200
[2026-06-13 13:12:26,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:27,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:12:27,006.006 INFO    ] No update needed
[2026-06-13 13:12:27,008.008 INFO    ] Checking for camera pi updates...
[2026-06-13 13:12:27,027.027 INFO    ] 200
[2026-06-13 13:12:27,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:27,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:12:27,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:12:27,099.099 INFO    ] No camera update needed
[2026-06-13 13:12:27,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:12:27,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:12:27,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:12:27,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:12:29,145.145 INFO    ] ================================================
[2026-06-13 13:12:29,161.161 INFO    ] Launching Daemon at Sat Jun 13 13:12:29 IST 2026
[2026-06-13 13:12:29,173.173 INFO    ] ================================================
[2026-06-13 13:12:29,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:12:29
[2026-06-13 13:12:29,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:12:30,005.005 INFO    ] Initializing speech engine...
[2026-06-13 13:12:30,016.016 INFO    ] 2026-06-13 13:12:30
[2026-06-13 13:12:30,231.231 INFO    ] 2026-06-13 13:12:30
[2026-06-13 13:12:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:12:30,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:12:30,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:12:30,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:12:30,672.672 INFO    ] time= 13/06/2026 13:12:30
[2026-06-13 13:12:30,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:12:30,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:12:30,790.790 INFO    ] No existing commands found in stream
[2026-06-13 13:12:35,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:12:35,803.803 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 13:12:39,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:12:39,189.189 INFO    ] Checking for system updates...
[2026-06-13 13:12:39,232.232 INFO    ] 200
[2026-06-13 13:12:39,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:39,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:12:39,265.265 INFO    ] No update needed
[2026-06-13 13:12:39,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 13:12:39,287.287 INFO    ] 200
[2026-06-13 13:12:39,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:39,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:12:39,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:12:39,349.349 INFO    ] No camera update needed
[2026-06-13 13:12:39,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:12:39,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:12:39,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:12:39,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:12:41,399.399 INFO    ] ================================================
[2026-06-13 13:12:41,414.414 INFO    ] Launching Daemon at Sat Jun 13 13:12:41 IST 2026
[2026-06-13 13:12:41,425.425 INFO    ] ================================================
[2026-06-13 13:12:41,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:12:41
[2026-06-13 13:12:42,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:12:42,305.305 INFO    ] Initializing speech engine...
[2026-06-13 13:12:42,311.311 INFO    ] 2026-06-13 13:12:42
[2026-06-13 13:12:42,514.514 INFO    ] 2026-06-13 13:12:42
[2026-06-13 13:12:42,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:12:42,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:12:42,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:12:42,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:12:42,934.934 INFO    ] time= 13/06/2026 13:12:42
[2026-06-13 13:12:42,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:12:42,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:12:43,030.030 INFO    ] No existing commands found in stream
[2026-06-13 13:12:48,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:12:48,043.043 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 13:12:51,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:12:51,901.901 INFO    ] Checking for system updates...
[2026-06-13 13:12:51,922.922 INFO    ] 200
[2026-06-13 13:12:51,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:51,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:12:51,975.975 INFO    ] No update needed
[2026-06-13 13:12:51,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 13:12:51,998.998 INFO    ] 200
[2026-06-13 13:12:51,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:12:52,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:12:52,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:12:52,063.063 INFO    ] No camera update needed
[2026-06-13 13:12:52,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:12:52,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:12:52,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:12:52,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:12:54,112.112 INFO    ] ================================================
[2026-06-13 13:12:54,127.127 INFO    ] Launching Daemon at Sat Jun 13 13:12:54 IST 2026
[2026-06-13 13:12:54,139.139 INFO    ] ================================================
[2026-06-13 13:12:54,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:12:54
[2026-06-13 13:12:54,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:12:54,997.997 INFO    ] Initializing speech engine...
[2026-06-13 13:12:55,001.001 INFO    ] 2026-06-13 13:12:54
[2026-06-13 13:12:55,209.209 INFO    ] 2026-06-13 13:12:55
[2026-06-13 13:12:55,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:12:55,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:12:55,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:12:55,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:12:55,622.622 INFO    ] time= 13/06/2026 13:12:55
[2026-06-13 13:12:55,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:12:55,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:12:55,726.726 INFO    ] No existing commands found in stream
[2026-06-13 13:13:00,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:00,740.740 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 13:13:04,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:13:04,779.779 INFO    ] Checking for system updates...
[2026-06-13 13:13:04,800.800 INFO    ] 200
[2026-06-13 13:13:04,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:04,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:04,835.835 INFO    ] No update needed
[2026-06-13 13:13:04,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 13:13:04,856.856 INFO    ] 200
[2026-06-13 13:13:04,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:04,882.882 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:13:04,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:13:04,927.927 INFO    ] No camera update needed
[2026-06-13 13:13:04,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:13:04,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:13:04,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:13:04,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:13:06,973.973 INFO    ] ================================================
[2026-06-13 13:13:06,989.989 INFO    ] Launching Daemon at Sat Jun 13 13:13:06 IST 2026
[2026-06-13 13:13:07,000.000 INFO    ] ================================================
[2026-06-13 13:13:07,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:13:07
[2026-06-13 13:13:07,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:13:07,774.774 INFO    ] Initializing speech engine...
[2026-06-13 13:13:07,779.779 INFO    ] 2026-06-13 13:13:07
[2026-06-13 13:13:07,998.998 INFO    ] 2026-06-13 13:13:07
[2026-06-13 13:13:08,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:13:08,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:13:08,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:13:08,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:13:08,407.407 INFO    ] time= 13/06/2026 13:13:08
[2026-06-13 13:13:08,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:13:08,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:13:08,519.519 INFO    ] No existing commands found in stream
[2026-06-13 13:13:13,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:13,531.531 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 13:13:14,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:13:14,467.467 INFO    ] Checking for system updates...
[2026-06-13 13:13:14,489.489 INFO    ] 200
[2026-06-13 13:13:14,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:14,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:14,525.525 INFO    ] No update needed
[2026-06-13 13:13:14,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 13:13:14,549.549 INFO    ] 200
[2026-06-13 13:13:14,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:14,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:13:14,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:14,622.622 INFO    ] No camera update needed
[2026-06-13 13:13:14,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:13:14,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:13:14,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:13:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:13:16,672.672 INFO    ] ================================================
[2026-06-13 13:13:16,687.687 INFO    ] Launching Daemon at Sat Jun 13 13:13:16 IST 2026
[2026-06-13 13:13:16,697.697 INFO    ] ================================================
[2026-06-13 13:13:17,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:13:17
[2026-06-13 13:13:17,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:13:17,484.484 INFO    ] Initializing speech engine...
[2026-06-13 13:13:17,493.493 INFO    ] 2026-06-13 13:13:17
[2026-06-13 13:13:17,711.711 INFO    ] 2026-06-13 13:13:17
[2026-06-13 13:13:17,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:13:17,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:13:17,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:13:18,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:13:18,129.129 INFO    ] time= 13/06/2026 13:13:18
[2026-06-13 13:13:18,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:13:18,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:13:18,272.272 INFO    ] No existing commands found in stream
[2026-06-13 13:13:23,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:23,285.285 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 13:13:27,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:13:27,473.473 INFO    ] Checking for system updates...
[2026-06-13 13:13:27,493.493 INFO    ] 200
[2026-06-13 13:13:27,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:27,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:27,526.526 INFO    ] No update needed
[2026-06-13 13:13:27,528.528 INFO    ] Checking for camera pi updates...
[2026-06-13 13:13:27,547.547 INFO    ] 200
[2026-06-13 13:13:27,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:27,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:13:27,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:27,613.613 INFO    ] No camera update needed
[2026-06-13 13:13:27,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:13:27,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:13:27,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:13:27,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:13:29,660.660 INFO    ] ================================================
[2026-06-13 13:13:29,676.676 INFO    ] Launching Daemon at Sat Jun 13 13:13:29 IST 2026
[2026-06-13 13:13:29,686.686 INFO    ] ================================================
[2026-06-13 13:13:30,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:13:30
[2026-06-13 13:13:30,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:13:30,556.556 INFO    ] Initializing speech engine...
[2026-06-13 13:13:30,562.562 INFO    ] 2026-06-13 13:13:30
[2026-06-13 13:13:30,769.769 INFO    ] 2026-06-13 13:13:30
[2026-06-13 13:13:30,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:13:30,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:13:30,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:13:31,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:13:31,188.188 INFO    ] time= 13/06/2026 13:13:31
[2026-06-13 13:13:31,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:13:31,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:13:31,286.286 INFO    ] No existing commands found in stream
[2026-06-13 13:13:36,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:36,310.310 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 13:13:36,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:13:36,935.935 INFO    ] Checking for system updates...
[2026-06-13 13:13:36,956.956 INFO    ] 200
[2026-06-13 13:13:36,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:36,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:36,990.990 INFO    ] No update needed
[2026-06-13 13:13:36,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 13:13:37,011.011 INFO    ] 200
[2026-06-13 13:13:37,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:37,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:13:37,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:37,085.085 INFO    ] No camera update needed
[2026-06-13 13:13:37,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:13:37,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:13:37,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:13:37,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:13:39,131.131 INFO    ] ================================================
[2026-06-13 13:13:39,146.146 INFO    ] Launching Daemon at Sat Jun 13 13:13:39 IST 2026
[2026-06-13 13:13:39,157.157 INFO    ] ================================================
[2026-06-13 13:13:39,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:13:39
[2026-06-13 13:13:39,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:13:40,000.000 INFO    ] Initializing speech engine...
[2026-06-13 13:13:40,005.005 INFO    ] 2026-06-13 13:13:40
[2026-06-13 13:13:40,215.215 INFO    ] 2026-06-13 13:13:40
[2026-06-13 13:13:40,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:13:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:13:40,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:13:40,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:13:40,620.620 INFO    ] time= 13/06/2026 13:13:40
[2026-06-13 13:13:40,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:13:40,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:13:41,020.020 INFO    ] No existing commands found in stream
[2026-06-13 13:13:46,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:46,034.034 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 13:13:50,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:13:50,039.039 INFO    ] Checking for system updates...
[2026-06-13 13:13:50,061.061 INFO    ] 200
[2026-06-13 13:13:50,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:50,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:13:50,094.094 INFO    ] No update needed
[2026-06-13 13:13:50,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 13:13:50,116.116 INFO    ] 200
[2026-06-13 13:13:50,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:13:50,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:13:50,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:13:50,286.286 INFO    ] No camera update needed
[2026-06-13 13:13:50,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:13:50,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:13:50,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:13:50,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:13:52,333.333 INFO    ] ================================================
[2026-06-13 13:13:52,348.348 INFO    ] Launching Daemon at Sat Jun 13 13:13:52 IST 2026
[2026-06-13 13:13:52,359.359 INFO    ] ================================================
[2026-06-13 13:13:52,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:13:52
[2026-06-13 13:13:53,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:13:53,139.139 INFO    ] Initializing speech engine...
[2026-06-13 13:13:53,147.147 INFO    ] 2026-06-13 13:13:53
[2026-06-13 13:13:53,373.373 INFO    ] 2026-06-13 13:13:53
[2026-06-13 13:13:53,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:13:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:13:53,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:13:53,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:13:53,781.781 INFO    ] time= 13/06/2026 13:13:53
[2026-06-13 13:13:53,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:13:53,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:13:53,935.935 INFO    ] No existing commands found in stream
[2026-06-13 13:13:58,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:13:58,948.948 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 13:14:00,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:14:00,906.906 INFO    ] Checking for system updates...
[2026-06-13 13:14:00,942.942 INFO    ] 200
[2026-06-13 13:14:00,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:00,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:00,985.985 INFO    ] No update needed
[2026-06-13 13:14:00,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:01,007.007 INFO    ] 200
[2026-06-13 13:14:01,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:01,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:01,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:01,068.068 INFO    ] No camera update needed
[2026-06-13 13:14:01,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:01,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:01,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:01,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:03,102.102 INFO    ] ================================================
[2026-06-13 13:14:03,111.111 INFO    ] Launching Daemon at Sat Jun 13 13:14:03 IST 2026
[2026-06-13 13:14:03,116.116 INFO    ] ================================================
[2026-06-13 13:14:03,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:03
[2026-06-13 13:14:03,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:03,918.918 INFO    ] Initializing speech engine...
[2026-06-13 13:14:03,926.926 INFO    ] 2026-06-13 13:14:03
[2026-06-13 13:14:04,132.132 INFO    ] 2026-06-13 13:14:04
[2026-06-13 13:14:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:04,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:04,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:04,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:04,538.538 INFO    ] time= 13/06/2026 13:14:04
[2026-06-13 13:14:04,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:04,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:04,648.648 INFO    ] No existing commands found in stream
[2026-06-13 13:14:09,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:14:09,660.660 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 13:14:13,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:14:13,557.557 INFO    ] Checking for system updates...
[2026-06-13 13:14:13,578.578 INFO    ] 200
[2026-06-13 13:14:13,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:13,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:14:13,611.611 INFO    ] No update needed
[2026-06-13 13:14:13,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:13,632.632 INFO    ] 200
[2026-06-13 13:14:13,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:13,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:13,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:14:13,700.700 INFO    ] No camera update needed
[2026-06-13 13:14:13,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:13,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:13,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:13,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:15,750.750 INFO    ] ================================================
[2026-06-13 13:14:15,766.766 INFO    ] Launching Daemon at Sat Jun 13 13:14:15 IST 2026
[2026-06-13 13:14:15,776.776 INFO    ] ================================================
[2026-06-13 13:14:16,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:16
[2026-06-13 13:14:16,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:16,652.652 INFO    ] Initializing speech engine...
[2026-06-13 13:14:16,658.658 INFO    ] 2026-06-13 13:14:16
[2026-06-13 13:14:16,868.868 INFO    ] 2026-06-13 13:14:16
[2026-06-13 13:14:16,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:17,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:17,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:17,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:17,298.298 INFO    ] time= 13/06/2026 13:14:17
[2026-06-13 13:14:17,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:17,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:17,399.399 INFO    ] No existing commands found in stream
[2026-06-13 13:14:22,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:14:22,417.417 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 13:14:22,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:14:22,979.979 INFO    ] Checking for system updates...
[2026-06-13 13:14:23,001.001 INFO    ] 200
[2026-06-13 13:14:23,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:23,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:23,036.036 INFO    ] No update needed
[2026-06-13 13:14:23,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:23,057.057 INFO    ] 200
[2026-06-13 13:14:23,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:23,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:23,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:23,126.126 INFO    ] No camera update needed
[2026-06-13 13:14:23,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:23,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:23,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:23,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:25,172.172 INFO    ] ================================================
[2026-06-13 13:14:25,187.187 INFO    ] Launching Daemon at Sat Jun 13 13:14:25 IST 2026
[2026-06-13 13:14:25,198.198 INFO    ] ================================================
[2026-06-13 13:14:25,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:25
[2026-06-13 13:14:25,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:25,994.994 INFO    ] Initializing speech engine...
[2026-06-13 13:14:26,003.003 INFO    ] 2026-06-13 13:14:25
[2026-06-13 13:14:26,229.229 INFO    ] 2026-06-13 13:14:26
[2026-06-13 13:14:26,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:26,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:26,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:26,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:26,640.640 INFO    ] time= 13/06/2026 13:14:26
[2026-06-13 13:14:26,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:26,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:26,788.788 INFO    ] No existing commands found in stream
[2026-06-13 13:14:31,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:14:31,799.799 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 13:14:35,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:14:35,072.072 INFO    ] Checking for system updates...
[2026-06-13 13:14:35,093.093 INFO    ] 200
[2026-06-13 13:14:35,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:35,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:35,130.130 INFO    ] No update needed
[2026-06-13 13:14:35,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:35,150.150 INFO    ] 200
[2026-06-13 13:14:35,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:35,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:35,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:35,217.217 INFO    ] No camera update needed
[2026-06-13 13:14:35,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:35,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:35,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:35,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:37,265.265 INFO    ] ================================================
[2026-06-13 13:14:37,280.280 INFO    ] Launching Daemon at Sat Jun 13 13:14:37 IST 2026
[2026-06-13 13:14:37,291.291 INFO    ] ================================================
[2026-06-13 13:14:37,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:37
[2026-06-13 13:14:37,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:38,124.124 INFO    ] Initializing speech engine...
[2026-06-13 13:14:38,129.129 INFO    ] 2026-06-13 13:14:38
[2026-06-13 13:14:38,334.334 INFO    ] 2026-06-13 13:14:38
[2026-06-13 13:14:38,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:38,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:38,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:38,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:38,737.737 INFO    ] time= 13/06/2026 13:14:38
[2026-06-13 13:14:38,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:38,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:38,847.847 INFO    ] No existing commands found in stream
[2026-06-13 13:14:43,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:14:43,860.860 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 13:14:44,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:14:44,827.827 INFO    ] Checking for system updates...
[2026-06-13 13:14:44,848.848 INFO    ] 200
[2026-06-13 13:14:44,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:44,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:44,881.881 INFO    ] No update needed
[2026-06-13 13:14:44,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:44,902.902 INFO    ] 200
[2026-06-13 13:14:44,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:44,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:44,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:14:44,970.970 INFO    ] No camera update needed
[2026-06-13 13:14:44,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:44,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:44,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:44,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:47,016.016 INFO    ] ================================================
[2026-06-13 13:14:47,033.033 INFO    ] Launching Daemon at Sat Jun 13 13:14:47 IST 2026
[2026-06-13 13:14:47,044.044 INFO    ] ================================================
[2026-06-13 13:14:47,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:47
[2026-06-13 13:14:47,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:47,825.825 INFO    ] Initializing speech engine...
[2026-06-13 13:14:47,835.835 INFO    ] 2026-06-13 13:14:47
[2026-06-13 13:14:48,038.038 INFO    ] 2026-06-13 13:14:48
[2026-06-13 13:14:48,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:48,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:48,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:48,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:48,450.450 INFO    ] time= 13/06/2026 13:14:48
[2026-06-13 13:14:48,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:48,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:48,561.561 INFO    ] No existing commands found in stream
[2026-06-13 13:14:53,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:14:53,574.574 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 13:14:56,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:14:56,060.060 INFO    ] Checking for system updates...
[2026-06-13 13:14:56,082.082 INFO    ] 200
[2026-06-13 13:14:56,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:56,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:14:56,116.116 INFO    ] No update needed
[2026-06-13 13:14:56,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 13:14:56,138.138 INFO    ] 200
[2026-06-13 13:14:56,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:14:56,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:14:56,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:14:56,200.200 INFO    ] No camera update needed
[2026-06-13 13:14:56,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:14:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:14:56,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:14:56,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:14:58,249.249 INFO    ] ================================================
[2026-06-13 13:14:58,264.264 INFO    ] Launching Daemon at Sat Jun 13 13:14:58 IST 2026
[2026-06-13 13:14:58,276.276 INFO    ] ================================================
[2026-06-13 13:14:58,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:14:58
[2026-06-13 13:14:58,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:14:59,090.090 INFO    ] Initializing speech engine...
[2026-06-13 13:14:59,095.095 INFO    ] 2026-06-13 13:14:59
[2026-06-13 13:14:59,298.298 INFO    ] 2026-06-13 13:14:59
[2026-06-13 13:14:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:14:59,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:14:59,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:14:59,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:14:59,712.712 INFO    ] time= 13/06/2026 13:14:59
[2026-06-13 13:14:59,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:14:59,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:14:59,811.811 INFO    ] No existing commands found in stream
[2026-06-13 13:15:04,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:15:04,824.824 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 13:15:08,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:15:08,038.038 INFO    ] Checking for system updates...
[2026-06-13 13:15:08,062.062 INFO    ] 200
[2026-06-13 13:15:08,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:08,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:08,099.099 INFO    ] No update needed
[2026-06-13 13:15:08,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 13:15:08,121.121 INFO    ] 200
[2026-06-13 13:15:08,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:08,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:15:08,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:08,183.183 INFO    ] No camera update needed
[2026-06-13 13:15:08,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:15:08,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:15:08,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:15:08,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:15:10,233.233 INFO    ] ================================================
[2026-06-13 13:15:10,250.250 INFO    ] Launching Daemon at Sat Jun 13 13:15:10 IST 2026
[2026-06-13 13:15:10,261.261 INFO    ] ================================================
[2026-06-13 13:15:10,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:15:10
[2026-06-13 13:15:10,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:15:11,038.038 INFO    ] Initializing speech engine...
[2026-06-13 13:15:11,041.041 INFO    ] 2026-06-13 13:15:11
[2026-06-13 13:15:11,235.235 INFO    ] 2026-06-13 13:15:11
[2026-06-13 13:15:11,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:15:11,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:15:11,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:15:11,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:15:11,530.530 INFO    ] time= 13/06/2026 13:15:11
[2026-06-13 13:15:11,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:15:11,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:15:11,617.617 INFO    ] No existing commands found in stream
[2026-06-13 13:15:16,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:15:16,652.652 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 13:15:19,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:15:19,542.542 INFO    ] Checking for system updates...
[2026-06-13 13:15:19,564.564 INFO    ] 200
[2026-06-13 13:15:19,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:19,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:15:19,598.598 INFO    ] No update needed
[2026-06-13 13:15:19,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 13:15:19,619.619 INFO    ] 200
[2026-06-13 13:15:19,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:19,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:15:19,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:15:19,689.689 INFO    ] No camera update needed
[2026-06-13 13:15:19,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:15:19,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:15:19,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:15:19,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:15:21,736.736 INFO    ] ================================================
[2026-06-13 13:15:21,751.751 INFO    ] Launching Daemon at Sat Jun 13 13:15:21 IST 2026
[2026-06-13 13:15:21,763.763 INFO    ] ================================================
[2026-06-13 13:15:22,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:15:22
[2026-06-13 13:15:22,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:15:22,590.590 INFO    ] Initializing speech engine...
[2026-06-13 13:15:22,596.596 INFO    ] 2026-06-13 13:15:22
[2026-06-13 13:15:22,799.799 INFO    ] 2026-06-13 13:15:22
[2026-06-13 13:15:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:15:22,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:15:23,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:15:23,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:15:23,209.209 INFO    ] time= 13/06/2026 13:15:23
[2026-06-13 13:15:23,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:15:23,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:15:23,323.323 INFO    ] No existing commands found in stream
[2026-06-13 13:15:28,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:15:28,337.337 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 13:15:29,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:15:29,829.829 INFO    ] Checking for system updates...
[2026-06-13 13:15:29,852.852 INFO    ] 200
[2026-06-13 13:15:29,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:29,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:29,890.890 INFO    ] No update needed
[2026-06-13 13:15:29,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 13:15:29,916.916 INFO    ] 200
[2026-06-13 13:15:29,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:29,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:15:29,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:15:29,994.994 INFO    ] No camera update needed
[2026-06-13 13:15:29,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:15:29,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:15:30,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:15:30,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:15:32,032.032 INFO    ] ================================================
[2026-06-13 13:15:32,045.045 INFO    ] Launching Daemon at Sat Jun 13 13:15:32 IST 2026
[2026-06-13 13:15:32,057.057 INFO    ] ================================================
[2026-06-13 13:15:32,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:15:32
[2026-06-13 13:15:32,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:15:32,991.991 INFO    ] Initializing speech engine...
[2026-06-13 13:15:32,996.996 INFO    ] 2026-06-13 13:15:32
[2026-06-13 13:15:33,219.219 INFO    ] 2026-06-13 13:15:33
[2026-06-13 13:15:33,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:15:33,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:15:33,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:15:33,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:15:33,653.653 INFO    ] time= 13/06/2026 13:15:33
[2026-06-13 13:15:33,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:15:33,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:15:33,770.770 INFO    ] No existing commands found in stream
[2026-06-13 13:15:38,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:15:38,784.784 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 13:15:42,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:15:42,987.987 INFO    ] Checking for system updates...
[2026-06-13 13:15:43,008.008 INFO    ] 200
[2026-06-13 13:15:43,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:43,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:43,042.042 INFO    ] No update needed
[2026-06-13 13:15:43,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 13:15:43,063.063 INFO    ] 200
[2026-06-13 13:15:43,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:43,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:15:43,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:43,131.131 INFO    ] No camera update needed
[2026-06-13 13:15:43,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:15:43,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:15:43,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:15:43,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:15:45,181.181 INFO    ] ================================================
[2026-06-13 13:15:45,195.195 INFO    ] Launching Daemon at Sat Jun 13 13:15:45 IST 2026
[2026-06-13 13:15:45,206.206 INFO    ] ================================================
[2026-06-13 13:15:45,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:15:45
[2026-06-13 13:15:45,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:15:45,987.987 INFO    ] Initializing speech engine...
[2026-06-13 13:15:45,992.992 INFO    ] 2026-06-13 13:15:45
[2026-06-13 13:15:46,198.198 INFO    ] 2026-06-13 13:15:46
[2026-06-13 13:15:46,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:15:46,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:15:46,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:15:46,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:15:46,602.602 INFO    ] time= 13/06/2026 13:15:46
[2026-06-13 13:15:46,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:15:46,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:15:46,718.718 INFO    ] No existing commands found in stream
[2026-06-13 13:15:51,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:15:51,732.732 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 13:15:52,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:15:52,562.562 INFO    ] Checking for system updates...
[2026-06-13 13:15:52,583.583 INFO    ] 200
[2026-06-13 13:15:52,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:52,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:52,619.619 INFO    ] No update needed
[2026-06-13 13:15:52,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 13:15:52,640.640 INFO    ] 200
[2026-06-13 13:15:52,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:15:52,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:15:52,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:15:52,804.804 INFO    ] No camera update needed
[2026-06-13 13:15:52,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:15:52,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:15:52,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:15:52,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:15:54,851.851 INFO    ] ================================================
[2026-06-13 13:15:54,866.866 INFO    ] Launching Daemon at Sat Jun 13 13:15:54 IST 2026
[2026-06-13 13:15:54,876.876 INFO    ] ================================================
[2026-06-13 13:15:55,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:15:55
[2026-06-13 13:15:55,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:15:55,743.743 INFO    ] Initializing speech engine...
[2026-06-13 13:15:55,748.748 INFO    ] 2026-06-13 13:15:55
[2026-06-13 13:15:55,954.954 INFO    ] 2026-06-13 13:15:55
[2026-06-13 13:15:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:15:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:15:56,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:15:56,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:15:56,380.380 INFO    ] time= 13/06/2026 13:15:56
[2026-06-13 13:15:56,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:15:56,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:15:56,476.476 INFO    ] No existing commands found in stream
[2026-06-13 13:16:01,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:01,492.492 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 13:16:05,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:16:05,516.516 INFO    ] Checking for system updates...
[2026-06-13 13:16:05,547.547 INFO    ] 200
[2026-06-13 13:16:05,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:05,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:05,594.594 INFO    ] No update needed
[2026-06-13 13:16:05,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 13:16:05,619.619 INFO    ] 200
[2026-06-13 13:16:05,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:05,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:16:05,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:05,669.669 INFO    ] No camera update needed
[2026-06-13 13:16:05,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:16:05,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:16:05,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:16:05,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:16:07,723.723 INFO    ] ================================================
[2026-06-13 13:16:07,739.739 INFO    ] Launching Daemon at Sat Jun 13 13:16:07 IST 2026
[2026-06-13 13:16:07,751.751 INFO    ] ================================================
[2026-06-13 13:16:08,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:16:08
[2026-06-13 13:16:08,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:16:08,514.514 INFO    ] Initializing speech engine...
[2026-06-13 13:16:08,524.524 INFO    ] 2026-06-13 13:16:08
[2026-06-13 13:16:08,746.746 INFO    ] 2026-06-13 13:16:08
[2026-06-13 13:16:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:16:08,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:16:08,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:16:09,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:16:09,156.156 INFO    ] time= 13/06/2026 13:16:09
[2026-06-13 13:16:09,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:16:09,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:16:09,290.290 INFO    ] No existing commands found in stream
[2026-06-13 13:16:14,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:14,304.304 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 13:16:15,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:16:15,272.272 INFO    ] Checking for system updates...
[2026-06-13 13:16:15,293.293 INFO    ] 200
[2026-06-13 13:16:15,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:15,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:15,326.326 INFO    ] No update needed
[2026-06-13 13:16:15,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 13:16:15,347.347 INFO    ] 200
[2026-06-13 13:16:15,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:15,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:16:15,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:15,417.417 INFO    ] No camera update needed
[2026-06-13 13:16:15,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:16:15,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:16:15,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:16:15,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:16:17,464.464 INFO    ] ================================================
[2026-06-13 13:16:17,479.479 INFO    ] Launching Daemon at Sat Jun 13 13:16:17 IST 2026
[2026-06-13 13:16:17,490.490 INFO    ] ================================================
[2026-06-13 13:16:17,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:16:17
[2026-06-13 13:16:18,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:16:18,281.281 INFO    ] Initializing speech engine...
[2026-06-13 13:16:18,285.285 INFO    ] 2026-06-13 13:16:18
[2026-06-13 13:16:18,491.491 INFO    ] 2026-06-13 13:16:18
[2026-06-13 13:16:18,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:16:18,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:16:18,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:16:18,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:16:18,908.908 INFO    ] time= 13/06/2026 13:16:18
[2026-06-13 13:16:18,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:16:18,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:16:19,008.008 INFO    ] No existing commands found in stream
[2026-06-13 13:16:24,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:24,021.021 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 13:16:27,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:16:27,742.742 INFO    ] Checking for system updates...
[2026-06-13 13:16:27,765.765 INFO    ] 200
[2026-06-13 13:16:27,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:27,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:16:27,798.798 INFO    ] No update needed
[2026-06-13 13:16:27,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 13:16:27,822.822 INFO    ] 200
[2026-06-13 13:16:27,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:27,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:16:27,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:16:27,891.891 INFO    ] No camera update needed
[2026-06-13 13:16:27,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:16:27,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:16:27,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:16:27,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:16:29,939.939 INFO    ] ================================================
[2026-06-13 13:16:29,953.953 INFO    ] Launching Daemon at Sat Jun 13 13:16:29 IST 2026
[2026-06-13 13:16:29,964.964 INFO    ] ================================================
[2026-06-13 13:16:30,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:16:30
[2026-06-13 13:16:30,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:16:30,734.734 INFO    ] Initializing speech engine...
[2026-06-13 13:16:30,742.742 INFO    ] 2026-06-13 13:16:30
[2026-06-13 13:16:30,953.953 INFO    ] 2026-06-13 13:16:30
[2026-06-13 13:16:30,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:16:31,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:16:31,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:16:31,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:16:31,371.371 INFO    ] time= 13/06/2026 13:16:31
[2026-06-13 13:16:31,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:16:31,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:16:31,468.468 INFO    ] No existing commands found in stream
[2026-06-13 13:16:36,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:36,485.485 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 13:16:37,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:16:37,582.582 INFO    ] Checking for system updates...
[2026-06-13 13:16:37,603.603 INFO    ] 200
[2026-06-13 13:16:37,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:37,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:37,637.637 INFO    ] No update needed
[2026-06-13 13:16:37,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 13:16:37,659.659 INFO    ] 200
[2026-06-13 13:16:37,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:37,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:16:37,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:16:37,724.724 INFO    ] No camera update needed
[2026-06-13 13:16:37,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:16:37,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:16:37,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:16:37,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:16:39,781.781 INFO    ] ================================================
[2026-06-13 13:16:39,798.798 INFO    ] Launching Daemon at Sat Jun 13 13:16:39 IST 2026
[2026-06-13 13:16:39,809.809 INFO    ] ================================================
[2026-06-13 13:16:40,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:16:40
[2026-06-13 13:16:40,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:16:41,070.070 INFO    ] Initializing speech engine...
[2026-06-13 13:16:41,075.075 INFO    ] 2026-06-13 13:16:41
[2026-06-13 13:16:41,280.280 INFO    ] 2026-06-13 13:16:41
[2026-06-13 13:16:41,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:16:41,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:16:41,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:16:41,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:16:41,690.690 INFO    ] time= 13/06/2026 13:16:41
[2026-06-13 13:16:41,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:16:41,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:16:41,795.795 INFO    ] No existing commands found in stream
[2026-06-13 13:16:46,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:46,812.812 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 13:16:48,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:16:48,475.475 INFO    ] Checking for system updates...
[2026-06-13 13:16:48,496.496 INFO    ] 200
[2026-06-13 13:16:48,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:48,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:48,529.529 INFO    ] No update needed
[2026-06-13 13:16:48,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 13:16:48,552.552 INFO    ] 200
[2026-06-13 13:16:48,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:16:48,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:16:48,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:16:48,623.623 INFO    ] No camera update needed
[2026-06-13 13:16:48,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:16:48,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:16:48,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:16:48,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:16:50,673.673 INFO    ] ================================================
[2026-06-13 13:16:50,689.689 INFO    ] Launching Daemon at Sat Jun 13 13:16:50 IST 2026
[2026-06-13 13:16:50,701.701 INFO    ] ================================================
[2026-06-13 13:16:51,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:16:51
[2026-06-13 13:16:51,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:16:51,571.571 INFO    ] Initializing speech engine...
[2026-06-13 13:16:51,577.577 INFO    ] 2026-06-13 13:16:51
[2026-06-13 13:16:51,786.786 INFO    ] 2026-06-13 13:16:51
[2026-06-13 13:16:51,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:16:51,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:16:52,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:16:52,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:16:52,199.199 INFO    ] time= 13/06/2026 13:16:52
[2026-06-13 13:16:52,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:16:52,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:16:52,304.304 INFO    ] No existing commands found in stream
[2026-06-13 13:16:57,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:16:57,317.317 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 13:17:01,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:17:01,508.508 INFO    ] Checking for system updates...
[2026-06-13 13:17:01,529.529 INFO    ] 200
[2026-06-13 13:17:01,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:01,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:01,565.565 INFO    ] No update needed
[2026-06-13 13:17:01,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:01,604.604 INFO    ] 200
[2026-06-13 13:17:01,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:01,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:01,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:01,753.753 INFO    ] No camera update needed
[2026-06-13 13:17:01,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:01,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:01,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:01,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:03,803.803 INFO    ] ================================================
[2026-06-13 13:17:03,819.819 INFO    ] Launching Daemon at Sat Jun 13 13:17:03 IST 2026
[2026-06-13 13:17:03,831.831 INFO    ] ================================================
[2026-06-13 13:17:04,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:04
[2026-06-13 13:17:04,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:04,646.646 INFO    ] Initializing speech engine...
[2026-06-13 13:17:04,652.652 INFO    ] 2026-06-13 13:17:04
[2026-06-13 13:17:04,857.857 INFO    ] 2026-06-13 13:17:04
[2026-06-13 13:17:04,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:05,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:05,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:05,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:05,279.279 INFO    ] time= 13/06/2026 13:17:05
[2026-06-13 13:17:05,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:05,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:05,377.377 INFO    ] No existing commands found in stream
[2026-06-13 13:17:10,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:17:10,388.388 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 13:17:11,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:17:11,350.350 INFO    ] Checking for system updates...
[2026-06-13 13:17:11,370.370 INFO    ] 200
[2026-06-13 13:17:11,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:11,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:11,404.404 INFO    ] No update needed
[2026-06-13 13:17:11,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:11,424.424 INFO    ] 200
[2026-06-13 13:17:11,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:11,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:11,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:11,491.491 INFO    ] No camera update needed
[2026-06-13 13:17:11,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:11,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:11,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:11,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:13,539.539 INFO    ] ================================================
[2026-06-13 13:17:13,554.554 INFO    ] Launching Daemon at Sat Jun 13 13:17:13 IST 2026
[2026-06-13 13:17:13,565.565 INFO    ] ================================================
[2026-06-13 13:17:13,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:13
[2026-06-13 13:17:14,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:14,362.362 INFO    ] Initializing speech engine...
[2026-06-13 13:17:14,370.370 INFO    ] 2026-06-13 13:17:14
[2026-06-13 13:17:14,583.583 INFO    ] 2026-06-13 13:17:14
[2026-06-13 13:17:14,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:14,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:14,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:14,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:14,993.993 INFO    ] time= 13/06/2026 13:17:14
[2026-06-13 13:17:15,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:15,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:15,106.106 INFO    ] No existing commands found in stream
[2026-06-13 13:17:20,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:17:20,118.118 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 13:17:22,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:17:22,453.453 INFO    ] Checking for system updates...
[2026-06-13 13:17:22,474.474 INFO    ] 200
[2026-06-13 13:17:22,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:22,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:22,512.512 INFO    ] No update needed
[2026-06-13 13:17:22,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:22,534.534 INFO    ] 200
[2026-06-13 13:17:22,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:22,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:22,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:22,597.597 INFO    ] No camera update needed
[2026-06-13 13:17:22,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:22,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:22,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:22,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:24,647.647 INFO    ] ================================================
[2026-06-13 13:17:24,663.663 INFO    ] Launching Daemon at Sat Jun 13 13:17:24 IST 2026
[2026-06-13 13:17:24,674.674 INFO    ] ================================================
[2026-06-13 13:17:25,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:25
[2026-06-13 13:17:25,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:25,495.495 INFO    ] Initializing speech engine...
[2026-06-13 13:17:25,500.500 INFO    ] 2026-06-13 13:17:25
[2026-06-13 13:17:25,703.703 INFO    ] 2026-06-13 13:17:25
[2026-06-13 13:17:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:25,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:26,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:26,107.107 INFO    ] time= 13/06/2026 13:17:26
[2026-06-13 13:17:26,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:26,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:26,268.268 INFO    ] No existing commands found in stream
[2026-06-13 13:17:31,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:17:31,281.281 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 13:17:33,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:17:33,291.291 INFO    ] Checking for system updates...
[2026-06-13 13:17:33,312.312 INFO    ] 200
[2026-06-13 13:17:33,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:33,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:33,346.346 INFO    ] No update needed
[2026-06-13 13:17:33,347.347 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:33,367.367 INFO    ] 200
[2026-06-13 13:17:33,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:33,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:33,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:33,415.415 INFO    ] No camera update needed
[2026-06-13 13:17:33,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:33,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:33,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:33,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:35,464.464 INFO    ] ================================================
[2026-06-13 13:17:35,481.481 INFO    ] Launching Daemon at Sat Jun 13 13:17:35 IST 2026
[2026-06-13 13:17:35,492.492 INFO    ] ================================================
[2026-06-13 13:17:35,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:35
[2026-06-13 13:17:36,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:36,302.302 INFO    ] Initializing speech engine...
[2026-06-13 13:17:36,315.315 INFO    ] 2026-06-13 13:17:36
[2026-06-13 13:17:36,535.535 INFO    ] 2026-06-13 13:17:36
[2026-06-13 13:17:36,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:36,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:36,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:36,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:36,983.983 INFO    ] time= 13/06/2026 13:17:36
[2026-06-13 13:17:37,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:37,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:37,095.095 INFO    ] No existing commands found in stream
[2026-06-13 13:17:42,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:17:42,109.109 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 13:17:44,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:17:44,451.451 INFO    ] Checking for system updates...
[2026-06-13 13:17:44,472.472 INFO    ] 200
[2026-06-13 13:17:44,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:44,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:44,505.505 INFO    ] No update needed
[2026-06-13 13:17:44,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:44,526.526 INFO    ] 200
[2026-06-13 13:17:44,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:44,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:44,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:44,595.595 INFO    ] No camera update needed
[2026-06-13 13:17:44,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:44,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:44,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:44,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:46,643.643 INFO    ] ================================================
[2026-06-13 13:17:46,659.659 INFO    ] Launching Daemon at Sat Jun 13 13:17:46 IST 2026
[2026-06-13 13:17:46,670.670 INFO    ] ================================================
[2026-06-13 13:17:47,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:47
[2026-06-13 13:17:47,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:47,486.486 INFO    ] Initializing speech engine...
[2026-06-13 13:17:47,489.489 INFO    ] 2026-06-13 13:17:47
[2026-06-13 13:17:47,681.681 INFO    ] 2026-06-13 13:17:47
[2026-06-13 13:17:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:47,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:47,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:48,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:48,099.099 INFO    ] time= 13/06/2026 13:17:48
[2026-06-13 13:17:48,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:48,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:48,283.283 INFO    ] No existing commands found in stream
[2026-06-13 13:17:53,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:17:53,295.295 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 13:17:53,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:17:53,721.721 INFO    ] Checking for system updates...
[2026-06-13 13:17:53,743.743 INFO    ] 200
[2026-06-13 13:17:53,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:53,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:17:53,777.777 INFO    ] No update needed
[2026-06-13 13:17:53,778.778 INFO    ] Checking for camera pi updates...
[2026-06-13 13:17:53,798.798 INFO    ] 200
[2026-06-13 13:17:53,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:17:53,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:17:53,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:17:53,966.966 INFO    ] No camera update needed
[2026-06-13 13:17:53,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:17:53,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:17:53,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:17:53,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:17:56,014.014 INFO    ] ================================================
[2026-06-13 13:17:56,030.030 INFO    ] Launching Daemon at Sat Jun 13 13:17:56 IST 2026
[2026-06-13 13:17:56,041.041 INFO    ] ================================================
[2026-06-13 13:17:56,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:17:56
[2026-06-13 13:17:56,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:17:56,839.839 INFO    ] Initializing speech engine...
[2026-06-13 13:17:56,844.844 INFO    ] 2026-06-13 13:17:56
[2026-06-13 13:17:57,050.050 INFO    ] 2026-06-13 13:17:57
[2026-06-13 13:17:57,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:17:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:17:57,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:17:57,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:17:57,423.423 INFO    ] time= 13/06/2026 13:17:57
[2026-06-13 13:17:57,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:17:57,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:17:57,581.581 INFO    ] No existing commands found in stream
[2026-06-13 13:18:02,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:02,593.593 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 13:18:03,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:18:03,800.800 INFO    ] Checking for system updates...
[2026-06-13 13:18:03,836.836 INFO    ] 200
[2026-06-13 13:18:03,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:03,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:03,894.894 INFO    ] No update needed
[2026-06-13 13:18:03,897.897 INFO    ] Checking for camera pi updates...
[2026-06-13 13:18:03,931.931 INFO    ] 200
[2026-06-13 13:18:03,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:03,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:18:04,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:04,023.023 INFO    ] No camera update needed
[2026-06-13 13:18:04,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:18:04,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:18:04,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:18:04,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:18:06,078.078 INFO    ] ================================================
[2026-06-13 13:18:06,093.093 INFO    ] Launching Daemon at Sat Jun 13 13:18:06 IST 2026
[2026-06-13 13:18:06,104.104 INFO    ] ================================================
[2026-06-13 13:18:06,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:18:06
[2026-06-13 13:18:06,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:18:06,988.988 INFO    ] Initializing speech engine...
[2026-06-13 13:18:06,993.993 INFO    ] 2026-06-13 13:18:06
[2026-06-13 13:18:07,204.204 INFO    ] 2026-06-13 13:18:07
[2026-06-13 13:18:07,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:18:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:18:07,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:18:07,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:18:07,631.631 INFO    ] time= 13/06/2026 13:18:07
[2026-06-13 13:18:07,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:18:07,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:18:07,731.731 INFO    ] No existing commands found in stream
[2026-06-13 13:18:12,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:12,754.754 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 13:18:16,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:18:16,946.946 INFO    ] Checking for system updates...
[2026-06-13 13:18:16,967.967 INFO    ] 200
[2026-06-13 13:18:16,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:16,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:18:17,000.000 INFO    ] No update needed
[2026-06-13 13:18:17,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 13:18:17,022.022 INFO    ] 200
[2026-06-13 13:18:17,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:17,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:18:17,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:18:17,090.090 INFO    ] No camera update needed
[2026-06-13 13:18:17,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:18:17,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:18:17,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:18:17,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:18:19,139.139 INFO    ] ================================================
[2026-06-13 13:18:19,155.155 INFO    ] Launching Daemon at Sat Jun 13 13:18:19 IST 2026
[2026-06-13 13:18:19,165.165 INFO    ] ================================================
[2026-06-13 13:18:19,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:18:19
[2026-06-13 13:18:19,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:18:19,962.962 INFO    ] Initializing speech engine...
[2026-06-13 13:18:19,966.966 INFO    ] 2026-06-13 13:18:19
[2026-06-13 13:18:20,172.172 INFO    ] 2026-06-13 13:18:20
[2026-06-13 13:18:20,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:18:20,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:18:20,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:18:20,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:18:20,570.570 INFO    ] time= 13/06/2026 13:18:20
[2026-06-13 13:18:20,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:18:20,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:18:20,686.686 INFO    ] No existing commands found in stream
[2026-06-13 13:18:25,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:25,703.703 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 13:18:26,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:18:26,781.781 INFO    ] Checking for system updates...
[2026-06-13 13:18:26,801.801 INFO    ] 200
[2026-06-13 13:18:26,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:26,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:18:26,834.834 INFO    ] No update needed
[2026-06-13 13:18:26,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 13:18:26,855.855 INFO    ] 200
[2026-06-13 13:18:26,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:26,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:18:26,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:18:26,919.919 INFO    ] No camera update needed
[2026-06-13 13:18:26,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:18:26,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:18:26,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:18:26,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:18:28,965.965 INFO    ] ================================================
[2026-06-13 13:18:28,980.980 INFO    ] Launching Daemon at Sat Jun 13 13:18:28 IST 2026
[2026-06-13 13:18:28,991.991 INFO    ] ================================================
[2026-06-13 13:18:29,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:18:29
[2026-06-13 13:18:29,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:18:29,821.821 INFO    ] Initializing speech engine...
[2026-06-13 13:18:29,832.832 INFO    ] 2026-06-13 13:18:29
[2026-06-13 13:18:30,036.036 INFO    ] 2026-06-13 13:18:30
[2026-06-13 13:18:30,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:18:30,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:18:30,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:18:30,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:18:30,414.414 INFO    ] time= 13/06/2026 13:18:30
[2026-06-13 13:18:30,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:18:30,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:18:30,587.587 INFO    ] No existing commands found in stream
[2026-06-13 13:18:35,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:35,619.619 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 13:18:37,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:18:37,727.727 INFO    ] Checking for system updates...
[2026-06-13 13:18:37,748.748 INFO    ] 200
[2026-06-13 13:18:37,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:37,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:37,781.781 INFO    ] No update needed
[2026-06-13 13:18:37,782.782 INFO    ] Checking for camera pi updates...
[2026-06-13 13:18:37,802.802 INFO    ] 200
[2026-06-13 13:18:37,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:37,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:18:37,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:37,870.870 INFO    ] No camera update needed
[2026-06-13 13:18:37,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:18:37,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:18:37,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:18:37,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:18:39,920.920 INFO    ] ================================================
[2026-06-13 13:18:39,941.941 INFO    ] Launching Daemon at Sat Jun 13 13:18:39 IST 2026
[2026-06-13 13:18:39,947.947 INFO    ] ================================================
[2026-06-13 13:18:40,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:18:40
[2026-06-13 13:18:40,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:18:40,770.770 INFO    ] Initializing speech engine...
[2026-06-13 13:18:40,776.776 INFO    ] 2026-06-13 13:18:40
[2026-06-13 13:18:40,985.985 INFO    ] 2026-06-13 13:18:40
[2026-06-13 13:18:41,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:18:41,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:18:41,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:18:41,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:18:41,438.438 INFO    ] time= 13/06/2026 13:18:41
[2026-06-13 13:18:41,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:18:41,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:18:41,659.659 INFO    ] No existing commands found in stream
[2026-06-13 13:18:46,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:46,702.702 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 13:18:50,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:18:50,476.476 INFO    ] Checking for system updates...
[2026-06-13 13:18:50,497.497 INFO    ] 200
[2026-06-13 13:18:50,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:50,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:50,534.534 INFO    ] No update needed
[2026-06-13 13:18:50,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 13:18:50,555.555 INFO    ] 200
[2026-06-13 13:18:50,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:18:50,581.581 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:18:50,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:18:50,633.633 INFO    ] No camera update needed
[2026-06-13 13:18:50,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:18:50,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:18:50,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:18:50,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:18:52,680.680 INFO    ] ================================================
[2026-06-13 13:18:52,695.695 INFO    ] Launching Daemon at Sat Jun 13 13:18:52 IST 2026
[2026-06-13 13:18:52,706.706 INFO    ] ================================================
[2026-06-13 13:18:53,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:18:53
[2026-06-13 13:18:53,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:18:53,490.490 INFO    ] Initializing speech engine...
[2026-06-13 13:18:53,493.493 INFO    ] 2026-06-13 13:18:53
[2026-06-13 13:18:53,686.686 INFO    ] 2026-06-13 13:18:53
[2026-06-13 13:18:53,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:18:53,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:18:53,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:18:54,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:18:54,156.156 INFO    ] time= 13/06/2026 13:18:54
[2026-06-13 13:18:54,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:18:54,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:18:54,291.291 INFO    ] No existing commands found in stream
[2026-06-13 13:18:59,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:18:59,304.304 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 13:19:01,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:19:01,245.245 INFO    ] Checking for system updates...
[2026-06-13 13:19:01,265.265 INFO    ] 200
[2026-06-13 13:19:01,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:01,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:01,299.299 INFO    ] No update needed
[2026-06-13 13:19:01,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:01,320.320 INFO    ] 200
[2026-06-13 13:19:01,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:01,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:01,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:01,388.388 INFO    ] No camera update needed
[2026-06-13 13:19:01,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:01,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:01,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:01,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:03,428.428 INFO    ] ================================================
[2026-06-13 13:19:03,445.445 INFO    ] Launching Daemon at Sat Jun 13 13:19:03 IST 2026
[2026-06-13 13:19:03,456.456 INFO    ] ================================================
[2026-06-13 13:19:03,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:03
[2026-06-13 13:19:04,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:04,270.270 INFO    ] Initializing speech engine...
[2026-06-13 13:19:04,276.276 INFO    ] 2026-06-13 13:19:04
[2026-06-13 13:19:04,479.479 INFO    ] 2026-06-13 13:19:04
[2026-06-13 13:19:04,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:04,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:04,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:04,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:04,887.887 INFO    ] time= 13/06/2026 13:19:04
[2026-06-13 13:19:04,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:04,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:04,990.990 INFO    ] No existing commands found in stream
[2026-06-13 13:19:09,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:19:10,002.002 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 13:19:11,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:19:11,601.601 INFO    ] Checking for system updates...
[2026-06-13 13:19:11,621.621 INFO    ] 200
[2026-06-13 13:19:11,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:11,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:11,654.654 INFO    ] No update needed
[2026-06-13 13:19:11,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:11,676.676 INFO    ] 200
[2026-06-13 13:19:11,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:11,703.703 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:11,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:11,746.746 INFO    ] No camera update needed
[2026-06-13 13:19:11,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:11,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:11,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:11,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:13,796.796 INFO    ] ================================================
[2026-06-13 13:19:13,812.812 INFO    ] Launching Daemon at Sat Jun 13 13:19:13 IST 2026
[2026-06-13 13:19:13,823.823 INFO    ] ================================================
[2026-06-13 13:19:14,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:14
[2026-06-13 13:19:14,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:14,641.641 INFO    ] Initializing speech engine...
[2026-06-13 13:19:14,666.666 INFO    ] 2026-06-13 13:19:14
[2026-06-13 13:19:14,944.944 INFO    ] 2026-06-13 13:19:14
[2026-06-13 13:19:14,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:15,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:15,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:15,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:15,334.334 INFO    ] time= 13/06/2026 13:19:15
[2026-06-13 13:19:15,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:15,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:15,461.461 INFO    ] No existing commands found in stream
[2026-06-13 13:19:20,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:19:20,476.476 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 13:19:23,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:19:23,951.951 INFO    ] Checking for system updates...
[2026-06-13 13:19:23,973.973 INFO    ] 200
[2026-06-13 13:19:23,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:24,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:19:24,007.007 INFO    ] No update needed
[2026-06-13 13:19:24,008.008 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:24,029.029 INFO    ] 200
[2026-06-13 13:19:24,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:24,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:24,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:19:24,095.095 INFO    ] No camera update needed
[2026-06-13 13:19:24,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:24,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:24,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:24,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:26,141.141 INFO    ] ================================================
[2026-06-13 13:19:26,157.157 INFO    ] Launching Daemon at Sat Jun 13 13:19:26 IST 2026
[2026-06-13 13:19:26,167.167 INFO    ] ================================================
[2026-06-13 13:19:26,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:26
[2026-06-13 13:19:26,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:27,016.016 INFO    ] Initializing speech engine...
[2026-06-13 13:19:27,022.022 INFO    ] 2026-06-13 13:19:27
[2026-06-13 13:19:27,230.230 INFO    ] 2026-06-13 13:19:27
[2026-06-13 13:19:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:27,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:27,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:27,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:27,642.642 INFO    ] time= 13/06/2026 13:19:27
[2026-06-13 13:19:27,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:27,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:27,749.749 INFO    ] No existing commands found in stream
[2026-06-13 13:19:32,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:19:32,767.767 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 13:19:36,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:19:36,365.365 INFO    ] Checking for system updates...
[2026-06-13 13:19:36,387.387 INFO    ] 200
[2026-06-13 13:19:36,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:36,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:36,421.421 INFO    ] No update needed
[2026-06-13 13:19:36,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:36,443.443 INFO    ] 200
[2026-06-13 13:19:36,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:36,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:36,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:36,510.510 INFO    ] No camera update needed
[2026-06-13 13:19:36,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:36,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:36,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:38,559.559 INFO    ] ================================================
[2026-06-13 13:19:38,574.574 INFO    ] Launching Daemon at Sat Jun 13 13:19:38 IST 2026
[2026-06-13 13:19:38,585.585 INFO    ] ================================================
[2026-06-13 13:19:38,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:38
[2026-06-13 13:19:39,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:39,399.399 INFO    ] Initializing speech engine...
[2026-06-13 13:19:39,403.403 INFO    ] 2026-06-13 13:19:39
[2026-06-13 13:19:39,607.607 INFO    ] 2026-06-13 13:19:39
[2026-06-13 13:19:39,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:39,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:39,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:39,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:40,019.019 INFO    ] time= 13/06/2026 13:19:39
[2026-06-13 13:19:40,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:40,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:40,124.124 INFO    ] No existing commands found in stream
[2026-06-13 13:19:45,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:19:45,134.134 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 13:19:45,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:19:45,643.643 INFO    ] Checking for system updates...
[2026-06-13 13:19:45,685.685 INFO    ] 200
[2026-06-13 13:19:45,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:45,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:19:45,743.743 INFO    ] No update needed
[2026-06-13 13:19:45,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:45,779.779 INFO    ] 200
[2026-06-13 13:19:45,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:45,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:45,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:19:45,843.843 INFO    ] No camera update needed
[2026-06-13 13:19:45,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:45,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:45,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:45,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:47,889.889 INFO    ] ================================================
[2026-06-13 13:19:47,905.905 INFO    ] Launching Daemon at Sat Jun 13 13:19:47 IST 2026
[2026-06-13 13:19:47,916.916 INFO    ] ================================================
[2026-06-13 13:19:48,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:48
[2026-06-13 13:19:48,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:48,752.752 INFO    ] Initializing speech engine...
[2026-06-13 13:19:48,758.758 INFO    ] 2026-06-13 13:19:48
[2026-06-13 13:19:48,968.968 INFO    ] 2026-06-13 13:19:48
[2026-06-13 13:19:48,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:49,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:49,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:49,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:49,365.365 INFO    ] time= 13/06/2026 13:19:49
[2026-06-13 13:19:49,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:49,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:49,485.485 INFO    ] No existing commands found in stream
[2026-06-13 13:19:54,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:19:54,502.502 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 13:19:55,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:19:55,266.266 INFO    ] Checking for system updates...
[2026-06-13 13:19:55,288.288 INFO    ] 200
[2026-06-13 13:19:55,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:55,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:55,323.323 INFO    ] No update needed
[2026-06-13 13:19:55,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 13:19:55,344.344 INFO    ] 200
[2026-06-13 13:19:55,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:19:55,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:19:55,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:19:55,511.511 INFO    ] No camera update needed
[2026-06-13 13:19:55,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:19:55,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:19:55,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:19:55,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:19:57,561.561 INFO    ] ================================================
[2026-06-13 13:19:57,576.576 INFO    ] Launching Daemon at Sat Jun 13 13:19:57 IST 2026
[2026-06-13 13:19:57,587.587 INFO    ] ================================================
[2026-06-13 13:19:57,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:19:57
[2026-06-13 13:19:58,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:19:58,398.398 INFO    ] Initializing speech engine...
[2026-06-13 13:19:58,403.403 INFO    ] 2026-06-13 13:19:58
[2026-06-13 13:19:58,606.606 INFO    ] 2026-06-13 13:19:58
[2026-06-13 13:19:58,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:19:58,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:19:58,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:19:58,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:19:59,039.039 INFO    ] time= 13/06/2026 13:19:58
[2026-06-13 13:19:59,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:19:59,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:19:59,140.140 INFO    ] No existing commands found in stream
[2026-06-13 13:20:04,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:04,152.152 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 13:20:08,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:20:08,444.444 INFO    ] Checking for system updates...
[2026-06-13 13:20:08,483.483 INFO    ] 200
[2026-06-13 13:20:08,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:08,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:08,542.542 INFO    ] No update needed
[2026-06-13 13:20:08,545.545 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:08,582.582 INFO    ] 200
[2026-06-13 13:20:08,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:08,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:08,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:08,643.643 INFO    ] No camera update needed
[2026-06-13 13:20:08,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:08,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:08,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:08,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:20:10,691.691 INFO    ] ================================================
[2026-06-13 13:20:10,707.707 INFO    ] Launching Daemon at Sat Jun 13 13:20:10 IST 2026
[2026-06-13 13:20:10,718.718 INFO    ] ================================================
[2026-06-13 13:20:11,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:20:11
[2026-06-13 13:20:11,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:20:11,535.535 INFO    ] Initializing speech engine...
[2026-06-13 13:20:11,548.548 INFO    ] 2026-06-13 13:20:11
[2026-06-13 13:20:11,770.770 INFO    ] 2026-06-13 13:20:11
[2026-06-13 13:20:11,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:20:11,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:20:11,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:20:12,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:20:12,147.147 INFO    ] time= 13/06/2026 13:20:12
[2026-06-13 13:20:12,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:20:12,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:20:12,328.328 INFO    ] No existing commands found in stream
[2026-06-13 13:20:17,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:17,342.342 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 13:20:18,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:20:18,370.370 INFO    ] Checking for system updates...
[2026-06-13 13:20:18,394.394 INFO    ] 200
[2026-06-13 13:20:18,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:18,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:20:18,458.458 INFO    ] No update needed
[2026-06-13 13:20:18,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:18,492.492 INFO    ] 200
[2026-06-13 13:20:18,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:18,518.518 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:18,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:20:18,565.565 INFO    ] No camera update needed
[2026-06-13 13:20:18,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:18,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:18,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:18,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:20:20,612.612 INFO    ] ================================================
[2026-06-13 13:20:20,627.627 INFO    ] Launching Daemon at Sat Jun 13 13:20:20 IST 2026
[2026-06-13 13:20:20,638.638 INFO    ] ================================================
[2026-06-13 13:20:20,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:20:20
[2026-06-13 13:20:21,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:20:21,441.441 INFO    ] Initializing speech engine...
[2026-06-13 13:20:21,446.446 INFO    ] 2026-06-13 13:20:21
[2026-06-13 13:20:21,648.648 INFO    ] 2026-06-13 13:20:21
[2026-06-13 13:20:21,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:20:21,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:20:21,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:20:22,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:20:22,044.044 INFO    ] time= 13/06/2026 13:20:22
[2026-06-13 13:20:22,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:20:22,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:20:22,252.252 INFO    ] No existing commands found in stream
[2026-06-13 13:20:27,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:27,267.267 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 13:20:29,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:20:29,756.756 INFO    ] Checking for system updates...
[2026-06-13 13:20:29,777.777 INFO    ] 200
[2026-06-13 13:20:29,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:29,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:29,810.810 INFO    ] No update needed
[2026-06-13 13:20:29,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:29,833.833 INFO    ] 200
[2026-06-13 13:20:29,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:29,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:29,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:29,900.900 INFO    ] No camera update needed
[2026-06-13 13:20:29,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:29,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:29,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:29,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:20:31,945.945 INFO    ] ================================================
[2026-06-13 13:20:31,955.955 INFO    ] Launching Daemon at Sat Jun 13 13:20:31 IST 2026
[2026-06-13 13:20:31,961.961 INFO    ] ================================================
[2026-06-13 13:20:32,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:20:32
[2026-06-13 13:20:32,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:20:32,781.781 INFO    ] Initializing speech engine...
[2026-06-13 13:20:32,785.785 INFO    ] 2026-06-13 13:20:32
[2026-06-13 13:20:32,995.995 INFO    ] 2026-06-13 13:20:32
[2026-06-13 13:20:33,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:20:33,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:20:33,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:20:33,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:20:33,421.421 INFO    ] time= 13/06/2026 13:20:33
[2026-06-13 13:20:33,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:20:33,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:20:33,578.578 INFO    ] No existing commands found in stream
[2026-06-13 13:20:38,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:38,609.609 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 13:20:39,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:20:39,631.631 INFO    ] Checking for system updates...
[2026-06-13 13:20:39,652.652 INFO    ] 200
[2026-06-13 13:20:39,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:39,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:39,687.687 INFO    ] No update needed
[2026-06-13 13:20:39,689.689 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:39,710.710 INFO    ] 200
[2026-06-13 13:20:39,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:39,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:39,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:39,777.777 INFO    ] No camera update needed
[2026-06-13 13:20:39,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:39,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:39,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:39,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:20:41,827.827 INFO    ] ================================================
[2026-06-13 13:20:41,843.843 INFO    ] Launching Daemon at Sat Jun 13 13:20:41 IST 2026
[2026-06-13 13:20:41,855.855 INFO    ] ================================================
[2026-06-13 13:20:42,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:20:42
[2026-06-13 13:20:42,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:20:42,705.705 INFO    ] Initializing speech engine...
[2026-06-13 13:20:42,711.711 INFO    ] 2026-06-13 13:20:42
[2026-06-13 13:20:42,921.921 INFO    ] 2026-06-13 13:20:42
[2026-06-13 13:20:42,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:20:43,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:20:43,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:20:43,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:20:43,341.341 INFO    ] time= 13/06/2026 13:20:43
[2026-06-13 13:20:43,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:20:43,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:20:43,444.444 INFO    ] No existing commands found in stream
[2026-06-13 13:20:48,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:48,472.472 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 13:20:48,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:20:48,981.981 INFO    ] Checking for system updates...
[2026-06-13 13:20:49,006.006 INFO    ] 200
[2026-06-13 13:20:49,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:49,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:49,040.040 INFO    ] No update needed
[2026-06-13 13:20:49,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:49,063.063 INFO    ] 200
[2026-06-13 13:20:49,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:49,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:49,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:20:49,138.138 INFO    ] No camera update needed
[2026-06-13 13:20:49,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:49,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:49,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:49,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:20:51,188.188 INFO    ] ================================================
[2026-06-13 13:20:51,204.204 INFO    ] Launching Daemon at Sat Jun 13 13:20:51 IST 2026
[2026-06-13 13:20:51,216.216 INFO    ] ================================================
[2026-06-13 13:20:51,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:20:51
[2026-06-13 13:20:51,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:20:51,999.999 INFO    ] Initializing speech engine...
[2026-06-13 13:20:52,004.004 INFO    ] 2026-06-13 13:20:52
[2026-06-13 13:20:52,223.223 INFO    ] 2026-06-13 13:20:52
[2026-06-13 13:20:52,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:20:52,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:20:52,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:20:52,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:20:52,629.629 INFO    ] time= 13/06/2026 13:20:52
[2026-06-13 13:20:52,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:20:52,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:20:52,750.750 INFO    ] No existing commands found in stream
[2026-06-13 13:20:57,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:20:57,761.761 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 13:20:59,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:20:59,343.343 INFO    ] Checking for system updates...
[2026-06-13 13:20:59,363.363 INFO    ] 200
[2026-06-13 13:20:59,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:59,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:20:59,396.396 INFO    ] No update needed
[2026-06-13 13:20:59,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 13:20:59,417.417 INFO    ] 200
[2026-06-13 13:20:59,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:20:59,442.442 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:20:59,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:20:59,480.480 INFO    ] No camera update needed
[2026-06-13 13:20:59,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:20:59,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:20:59,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:20:59,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:21:01,533.533 INFO    ] ================================================
[2026-06-13 13:21:01,555.555 INFO    ] Launching Daemon at Sat Jun 13 13:21:01 IST 2026
[2026-06-13 13:21:01,573.573 INFO    ] ================================================
[2026-06-13 13:21:02,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:21:02
[2026-06-13 13:21:02,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:21:03,208.208 INFO    ] Initializing speech engine...
[2026-06-13 13:21:03,220.220 INFO    ] 2026-06-13 13:21:03
[2026-06-13 13:21:03,499.499 INFO    ] 2026-06-13 13:21:03
[2026-06-13 13:21:03,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:21:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:21:03,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:21:03,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:21:03,950.950 INFO    ] time= 13/06/2026 13:21:03
[2026-06-13 13:21:04,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:21:04,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:21:04,101.101 INFO    ] No existing commands found in stream
[2026-06-13 13:21:09,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:21:09,117.117 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 13:21:12,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:21:12,966.966 INFO    ] Checking for system updates...
[2026-06-13 13:21:12,988.988 INFO    ] 200
[2026-06-13 13:21:12,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:13,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:13,024.024 INFO    ] No update needed
[2026-06-13 13:21:13,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 13:21:13,047.047 INFO    ] 200
[2026-06-13 13:21:13,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:13,073.073 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:21:13,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:13,114.114 INFO    ] No camera update needed
[2026-06-13 13:21:13,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:21:13,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:21:13,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:21:13,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:21:15,161.161 INFO    ] ================================================
[2026-06-13 13:21:15,177.177 INFO    ] Launching Daemon at Sat Jun 13 13:21:15 IST 2026
[2026-06-13 13:21:15,187.187 INFO    ] ================================================
[2026-06-13 13:21:15,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:21:15
[2026-06-13 13:21:15,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:21:16,052.052 INFO    ] Initializing speech engine...
[2026-06-13 13:21:16,055.055 INFO    ] 2026-06-13 13:21:16
[2026-06-13 13:21:16,264.264 INFO    ] 2026-06-13 13:21:16
[2026-06-13 13:21:16,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:21:16,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:21:16,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:21:16,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:21:16,684.684 INFO    ] time= 13/06/2026 13:21:16
[2026-06-13 13:21:16,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:21:16,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:21:16,781.781 INFO    ] No existing commands found in stream
[2026-06-13 13:21:21,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:21:21,794.794 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 13:21:24,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:21:24,896.896 INFO    ] Checking for system updates...
[2026-06-13 13:21:24,917.917 INFO    ] 200
[2026-06-13 13:21:24,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:24,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:21:24,954.954 INFO    ] No update needed
[2026-06-13 13:21:24,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 13:21:24,977.977 INFO    ] 200
[2026-06-13 13:21:24,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:25,003.003 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:21:25,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:21:25,046.046 INFO    ] No camera update needed
[2026-06-13 13:21:25,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:21:25,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:21:25,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:21:25,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:21:27,096.096 INFO    ] ================================================
[2026-06-13 13:21:27,111.111 INFO    ] Launching Daemon at Sat Jun 13 13:21:27 IST 2026
[2026-06-13 13:21:27,122.122 INFO    ] ================================================
[2026-06-13 13:21:27,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:21:27
[2026-06-13 13:21:27,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:21:27,917.917 INFO    ] Initializing speech engine...
[2026-06-13 13:21:27,922.922 INFO    ] 2026-06-13 13:21:27
[2026-06-13 13:21:28,123.123 INFO    ] 2026-06-13 13:21:28
[2026-06-13 13:21:28,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:21:28,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:21:28,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:21:28,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:21:28,522.522 INFO    ] time= 13/06/2026 13:21:28
[2026-06-13 13:21:28,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:21:28,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:21:28,639.639 INFO    ] No existing commands found in stream
[2026-06-13 13:21:33,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:21:33,650.650 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 13:21:34,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:21:34,732.732 INFO    ] Checking for system updates...
[2026-06-13 13:21:34,753.753 INFO    ] 200
[2026-06-13 13:21:34,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:34,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:34,788.788 INFO    ] No update needed
[2026-06-13 13:21:34,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 13:21:34,810.810 INFO    ] 200
[2026-06-13 13:21:34,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:34,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:21:34,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:34,876.876 INFO    ] No camera update needed
[2026-06-13 13:21:34,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:21:34,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:21:34,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:21:34,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:21:36,926.926 INFO    ] ================================================
[2026-06-13 13:21:36,941.941 INFO    ] Launching Daemon at Sat Jun 13 13:21:36 IST 2026
[2026-06-13 13:21:36,952.952 INFO    ] ================================================
[2026-06-13 13:21:37,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:21:37
[2026-06-13 13:21:37,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:21:37,764.764 INFO    ] Initializing speech engine...
[2026-06-13 13:21:37,774.774 INFO    ] 2026-06-13 13:21:37
[2026-06-13 13:21:37,977.977 INFO    ] 2026-06-13 13:21:37
[2026-06-13 13:21:38,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:21:38,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:21:38,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:21:38,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:21:38,330.330 INFO    ] time= 13/06/2026 13:21:38
[2026-06-13 13:21:38,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:21:38,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:21:38,491.491 INFO    ] No existing commands found in stream
[2026-06-13 13:21:43,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:21:43,504.504 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 13:21:45,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:21:45,390.390 INFO    ] Checking for system updates...
[2026-06-13 13:21:45,411.411 INFO    ] 200
[2026-06-13 13:21:45,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:45,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:21:45,446.446 INFO    ] No update needed
[2026-06-13 13:21:45,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 13:21:45,468.468 INFO    ] 200
[2026-06-13 13:21:45,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:45,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:21:45,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:21:45,533.533 INFO    ] No camera update needed
[2026-06-13 13:21:45,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:21:45,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:21:45,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:21:45,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:21:47,580.580 INFO    ] ================================================
[2026-06-13 13:21:47,595.595 INFO    ] Launching Daemon at Sat Jun 13 13:21:47 IST 2026
[2026-06-13 13:21:47,606.606 INFO    ] ================================================
[2026-06-13 13:21:47,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:21:47
[2026-06-13 13:21:48,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:21:48,383.383 INFO    ] Initializing speech engine...
[2026-06-13 13:21:48,393.393 INFO    ] 2026-06-13 13:21:48
[2026-06-13 13:21:48,595.595 INFO    ] 2026-06-13 13:21:48
[2026-06-13 13:21:48,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:21:48,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:21:48,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:21:48,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:21:48,989.989 INFO    ] time= 13/06/2026 13:21:48
[2026-06-13 13:21:49,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:21:49,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:21:49,109.109 INFO    ] No existing commands found in stream
[2026-06-13 13:21:54,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:21:54,126.126 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 13:21:57,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:21:57,935.935 INFO    ] Checking for system updates...
[2026-06-13 13:21:57,958.958 INFO    ] 200
[2026-06-13 13:21:57,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:57,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:57,991.991 INFO    ] No update needed
[2026-06-13 13:21:57,993.993 INFO    ] Checking for camera pi updates...
[2026-06-13 13:21:58,013.013 INFO    ] 200
[2026-06-13 13:21:58,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:21:58,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:21:58,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:21:58,176.176 INFO    ] No camera update needed
[2026-06-13 13:21:58,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:21:58,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:21:58,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:21:58,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:00,227.227 INFO    ] ================================================
[2026-06-13 13:22:00,243.243 INFO    ] Launching Daemon at Sat Jun 13 13:22:00 IST 2026
[2026-06-13 13:22:00,254.254 INFO    ] ================================================
[2026-06-13 13:22:00,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:00
[2026-06-13 13:22:00,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:01,084.084 INFO    ] Initializing speech engine...
[2026-06-13 13:22:01,092.092 INFO    ] 2026-06-13 13:22:01
[2026-06-13 13:22:01,319.319 INFO    ] 2026-06-13 13:22:01
[2026-06-13 13:22:01,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:01,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:01,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:01,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:01,735.735 INFO    ] time= 13/06/2026 13:22:01
[2026-06-13 13:22:01,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:01,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:01,869.869 INFO    ] No existing commands found in stream
[2026-06-13 13:22:06,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:22:06,883.883 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 13:22:10,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:22:10,520.520 INFO    ] Checking for system updates...
[2026-06-13 13:22:10,540.540 INFO    ] 200
[2026-06-13 13:22:10,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:10,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:10,573.573 INFO    ] No update needed
[2026-06-13 13:22:10,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 13:22:10,594.594 INFO    ] 200
[2026-06-13 13:22:10,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:10,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:22:10,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:10,662.662 INFO    ] No camera update needed
[2026-06-13 13:22:10,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:22:10,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:22:10,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:22:10,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:12,711.711 INFO    ] ================================================
[2026-06-13 13:22:12,727.727 INFO    ] Launching Daemon at Sat Jun 13 13:22:12 IST 2026
[2026-06-13 13:22:12,739.739 INFO    ] ================================================
[2026-06-13 13:22:13,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:13
[2026-06-13 13:22:13,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:13,526.526 INFO    ] Initializing speech engine...
[2026-06-13 13:22:13,536.536 INFO    ] 2026-06-13 13:22:13
[2026-06-13 13:22:13,752.752 INFO    ] 2026-06-13 13:22:13
[2026-06-13 13:22:13,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:13,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:13,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:14,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:14,170.170 INFO    ] time= 13/06/2026 13:22:14
[2026-06-13 13:22:14,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:14,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:14,317.317 INFO    ] No existing commands found in stream
[2026-06-13 13:22:19,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:22:19,329.329 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 13:22:21,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:22:21,079.079 INFO    ] Checking for system updates...
[2026-06-13 13:22:21,101.101 INFO    ] 200
[2026-06-13 13:22:21,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:21,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:21,141.141 INFO    ] No update needed
[2026-06-13 13:22:21,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 13:22:21,163.163 INFO    ] 200
[2026-06-13 13:22:21,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:21,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:22:21,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:21,236.236 INFO    ] No camera update needed
[2026-06-13 13:22:21,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:22:21,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:22:21,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:22:21,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:23,285.285 INFO    ] ================================================
[2026-06-13 13:22:23,301.301 INFO    ] Launching Daemon at Sat Jun 13 13:22:23 IST 2026
[2026-06-13 13:22:23,312.312 INFO    ] ================================================
[2026-06-13 13:22:23,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:23
[2026-06-13 13:22:23,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:24,127.127 INFO    ] Initializing speech engine...
[2026-06-13 13:22:24,133.133 INFO    ] 2026-06-13 13:22:24
[2026-06-13 13:22:24,343.343 INFO    ] 2026-06-13 13:22:24
[2026-06-13 13:22:24,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:24,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:24,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:24,765.765 INFO    ] time= 13/06/2026 13:22:24
[2026-06-13 13:22:24,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:24,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:24,861.861 INFO    ] No existing commands found in stream
[2026-06-13 13:22:29,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:22:29,879.879 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 13:22:32,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:22:32,893.893 INFO    ] Checking for system updates...
[2026-06-13 13:22:32,914.914 INFO    ] 200
[2026-06-13 13:22:32,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:32,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:32,951.951 INFO    ] No update needed
[2026-06-13 13:22:32,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 13:22:32,975.975 INFO    ] 200
[2026-06-13 13:22:32,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:33,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:22:33,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:22:33,036.036 INFO    ] No camera update needed
[2026-06-13 13:22:33,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:22:33,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:22:33,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:22:33,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:35,086.086 INFO    ] ================================================
[2026-06-13 13:22:35,102.102 INFO    ] Launching Daemon at Sat Jun 13 13:22:35 IST 2026
[2026-06-13 13:22:35,114.114 INFO    ] ================================================
[2026-06-13 13:22:35,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:35
[2026-06-13 13:22:35,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:35,907.907 INFO    ] Initializing speech engine...
[2026-06-13 13:22:35,912.912 INFO    ] 2026-06-13 13:22:35
[2026-06-13 13:22:36,118.118 INFO    ] 2026-06-13 13:22:36
[2026-06-13 13:22:36,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:36,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:36,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:36,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:36,523.523 INFO    ] time= 13/06/2026 13:22:36
[2026-06-13 13:22:36,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:36,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:36,640.640 INFO    ] No existing commands found in stream
[2026-06-13 13:22:41,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:22:41,654.654 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 13:22:44,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:22:44,857.857 INFO    ] Checking for system updates...
[2026-06-13 13:22:44,895.895 INFO    ] 200
[2026-06-13 13:22:44,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:44,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:22:44,953.953 INFO    ] No update needed
[2026-06-13 13:22:44,956.956 INFO    ] Checking for camera pi updates...
[2026-06-13 13:22:44,989.989 INFO    ] 200
[2026-06-13 13:22:44,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:45,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:22:45,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:22:45,056.056 INFO    ] No camera update needed
[2026-06-13 13:22:45,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:22:45,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:22:45,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:22:45,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:47,105.105 INFO    ] ================================================
[2026-06-13 13:22:47,121.121 INFO    ] Launching Daemon at Sat Jun 13 13:22:47 IST 2026
[2026-06-13 13:22:47,132.132 INFO    ] ================================================
[2026-06-13 13:22:47,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:47
[2026-06-13 13:22:47,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:48,261.261 INFO    ] Initializing speech engine...
[2026-06-13 13:22:48,274.274 INFO    ] 2026-06-13 13:22:48
[2026-06-13 13:22:48,567.567 INFO    ] 2026-06-13 13:22:48
[2026-06-13 13:22:48,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:48,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:49,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:49,106.106 INFO    ] time= 13/06/2026 13:22:49
[2026-06-13 13:22:49,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:49,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:49,261.261 INFO    ] No existing commands found in stream
[2026-06-13 13:22:54,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:22:54,285.285 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 13:22:55,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:22:55,939.939 INFO    ] Checking for system updates...
[2026-06-13 13:22:55,960.960 INFO    ] 200
[2026-06-13 13:22:55,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:55,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:55,996.996 INFO    ] No update needed
[2026-06-13 13:22:55,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 13:22:56,018.018 INFO    ] 200
[2026-06-13 13:22:56,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:22:56,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:22:56,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:22:56,084.084 INFO    ] No camera update needed
[2026-06-13 13:22:56,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:22:56,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:22:56,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:22:56,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:22:58,134.134 INFO    ] ================================================
[2026-06-13 13:22:58,150.150 INFO    ] Launching Daemon at Sat Jun 13 13:22:58 IST 2026
[2026-06-13 13:22:58,161.161 INFO    ] ================================================
[2026-06-13 13:22:58,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:22:58
[2026-06-13 13:22:58,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:22:59,026.026 INFO    ] Initializing speech engine...
[2026-06-13 13:22:59,032.032 INFO    ] 2026-06-13 13:22:59
[2026-06-13 13:22:59,294.294 INFO    ] 2026-06-13 13:22:59
[2026-06-13 13:22:59,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:22:59,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:22:59,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:22:59,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:22:59,774.774 INFO    ] time= 13/06/2026 13:22:59
[2026-06-13 13:22:59,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:22:59,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:22:59,927.927 INFO    ] No existing commands found in stream
[2026-06-13 13:23:04,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:04,954.954 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 13:23:05,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:23:05,656.656 INFO    ] Checking for system updates...
[2026-06-13 13:23:05,678.678 INFO    ] 200
[2026-06-13 13:23:05,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:05,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:05,711.711 INFO    ] No update needed
[2026-06-13 13:23:05,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:05,732.732 INFO    ] 200
[2026-06-13 13:23:05,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:05,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:05,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:05,807.807 INFO    ] No camera update needed
[2026-06-13 13:23:05,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:05,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:05,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:05,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:23:07,854.854 INFO    ] ================================================
[2026-06-13 13:23:07,870.870 INFO    ] Launching Daemon at Sat Jun 13 13:23:07 IST 2026
[2026-06-13 13:23:07,882.882 INFO    ] ================================================
[2026-06-13 13:23:08,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:23:08
[2026-06-13 13:23:08,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:23:08,699.699 INFO    ] Initializing speech engine...
[2026-06-13 13:23:08,704.704 INFO    ] 2026-06-13 13:23:08
[2026-06-13 13:23:08,924.924 INFO    ] 2026-06-13 13:23:08
[2026-06-13 13:23:08,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:23:09,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:23:09,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:23:09,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:23:09,357.357 INFO    ] time= 13/06/2026 13:23:09
[2026-06-13 13:23:09,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:23:09,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:23:09,455.455 INFO    ] No existing commands found in stream
[2026-06-13 13:23:14,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:14,469.469 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 13:23:16,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:23:16,251.251 INFO    ] Checking for system updates...
[2026-06-13 13:23:16,272.272 INFO    ] 200
[2026-06-13 13:23:16,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:16,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:16,308.308 INFO    ] No update needed
[2026-06-13 13:23:16,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:16,329.329 INFO    ] 200
[2026-06-13 13:23:16,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:16,355.355 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:16,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:16,396.396 INFO    ] No camera update needed
[2026-06-13 13:23:16,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:16,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:16,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:16,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:23:18,434.434 INFO    ] ================================================
[2026-06-13 13:23:18,443.443 INFO    ] Launching Daemon at Sat Jun 13 13:23:18 IST 2026
[2026-06-13 13:23:18,449.449 INFO    ] ================================================
[2026-06-13 13:23:18,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:23:18
[2026-06-13 13:23:19,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:23:19,250.250 INFO    ] Initializing speech engine...
[2026-06-13 13:23:19,258.258 INFO    ] 2026-06-13 13:23:19
[2026-06-13 13:23:19,485.485 INFO    ] 2026-06-13 13:23:19
[2026-06-13 13:23:19,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:23:20,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:23:20,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:23:20,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:23:20,180.180 INFO    ] time= 13/06/2026 13:23:20
[2026-06-13 13:23:20,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:23:20,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:23:20,236.236 INFO    ] No existing commands found in stream
[2026-06-13 13:23:25,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:25,249.249 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 13:23:26,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:23:26,890.890 INFO    ] Checking for system updates...
[2026-06-13 13:23:26,912.912 INFO    ] 200
[2026-06-13 13:23:26,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:26,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:26,946.946 INFO    ] No update needed
[2026-06-13 13:23:26,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:26,968.968 INFO    ] 200
[2026-06-13 13:23:26,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:26,994.994 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:27,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:23:27,031.031 INFO    ] No camera update needed
[2026-06-13 13:23:27,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:27,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:27,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:27,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:23:29,080.080 INFO    ] ================================================
[2026-06-13 13:23:29,095.095 INFO    ] Launching Daemon at Sat Jun 13 13:23:29 IST 2026
[2026-06-13 13:23:29,105.105 INFO    ] ================================================
[2026-06-13 13:23:29,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:23:29
[2026-06-13 13:23:29,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:23:29,983.983 INFO    ] Initializing speech engine...
[2026-06-13 13:23:29,989.989 INFO    ] 2026-06-13 13:23:29
[2026-06-13 13:23:30,200.200 INFO    ] 2026-06-13 13:23:30
[2026-06-13 13:23:30,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:23:30,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:23:30,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:23:30,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:23:30,630.630 INFO    ] time= 13/06/2026 13:23:30
[2026-06-13 13:23:30,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:23:30,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:23:30,729.729 INFO    ] No existing commands found in stream
[2026-06-13 13:23:35,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:35,742.742 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 13:23:38,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:23:38,331.331 INFO    ] Checking for system updates...
[2026-06-13 13:23:38,352.352 INFO    ] 200
[2026-06-13 13:23:38,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:38,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:38,386.386 INFO    ] No update needed
[2026-06-13 13:23:38,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:38,408.408 INFO    ] 200
[2026-06-13 13:23:38,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:38,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:38,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:38,478.478 INFO    ] No camera update needed
[2026-06-13 13:23:38,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:38,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:38,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:38,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:23:40,529.529 INFO    ] ================================================
[2026-06-13 13:23:40,545.545 INFO    ] Launching Daemon at Sat Jun 13 13:23:40 IST 2026
[2026-06-13 13:23:40,556.556 INFO    ] ================================================
[2026-06-13 13:23:40,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:23:40
[2026-06-13 13:23:41,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:23:41,333.333 INFO    ] Initializing speech engine...
[2026-06-13 13:23:41,338.338 INFO    ] 2026-06-13 13:23:41
[2026-06-13 13:23:41,567.567 INFO    ] 2026-06-13 13:23:41
[2026-06-13 13:23:41,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:23:41,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:23:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:23:41,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:23:41,999.999 INFO    ] time= 13/06/2026 13:23:41
[2026-06-13 13:23:42,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:23:42,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:23:42,126.126 INFO    ] No existing commands found in stream
[2026-06-13 13:23:47,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:47,140.140 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 13:23:47,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:23:47,600.600 INFO    ] Checking for system updates...
[2026-06-13 13:23:47,621.621 INFO    ] 200
[2026-06-13 13:23:47,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:47,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:47,656.656 INFO    ] No update needed
[2026-06-13 13:23:47,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:47,678.678 INFO    ] 200
[2026-06-13 13:23:47,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:47,703.703 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:47,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:47,747.747 INFO    ] No camera update needed
[2026-06-13 13:23:47,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:47,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:47,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:47,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:23:49,794.794 INFO    ] ================================================
[2026-06-13 13:23:49,815.815 INFO    ] Launching Daemon at Sat Jun 13 13:23:49 IST 2026
[2026-06-13 13:23:49,826.826 INFO    ] ================================================
[2026-06-13 13:23:50,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:23:50
[2026-06-13 13:23:50,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:23:50,688.688 INFO    ] Initializing speech engine...
[2026-06-13 13:23:50,693.693 INFO    ] 2026-06-13 13:23:50
[2026-06-13 13:23:50,904.904 INFO    ] 2026-06-13 13:23:50
[2026-06-13 13:23:50,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:23:51,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:23:51,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:23:51,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:23:51,311.311 INFO    ] time= 13/06/2026 13:23:51
[2026-06-13 13:23:51,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:23:51,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:23:51,429.429 INFO    ] No existing commands found in stream
[2026-06-13 13:23:56,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:23:56,441.441 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 13:23:58,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:23:58,933.933 INFO    ] Checking for system updates...
[2026-06-13 13:23:58,954.954 INFO    ] 200
[2026-06-13 13:23:58,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:58,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:58,988.988 INFO    ] No update needed
[2026-06-13 13:23:58,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 13:23:59,009.009 INFO    ] 200
[2026-06-13 13:23:59,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:23:59,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:23:59,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:23:59,074.074 INFO    ] No camera update needed
[2026-06-13 13:23:59,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:23:59,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:23:59,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:23:59,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:01,124.124 INFO    ] ================================================
[2026-06-13 13:24:01,141.141 INFO    ] Launching Daemon at Sat Jun 13 13:24:01 IST 2026
[2026-06-13 13:24:01,153.153 INFO    ] ================================================
[2026-06-13 13:24:01,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:01
[2026-06-13 13:24:01,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:02,128.128 INFO    ] Initializing speech engine...
[2026-06-13 13:24:02,131.131 INFO    ] 2026-06-13 13:24:02
[2026-06-13 13:24:02,354.354 INFO    ] 2026-06-13 13:24:02
[2026-06-13 13:24:02,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:02,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:02,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:02,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:02,760.760 INFO    ] time= 13/06/2026 13:24:02
[2026-06-13 13:24:02,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:02,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:02,817.817 INFO    ] No existing commands found in stream
[2026-06-13 13:24:07,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:24:07,837.837 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 13:24:11,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:24:11,346.346 INFO    ] Checking for system updates...
[2026-06-13 13:24:11,367.367 INFO    ] 200
[2026-06-13 13:24:11,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:11,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:11,402.402 INFO    ] No update needed
[2026-06-13 13:24:11,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 13:24:11,423.423 INFO    ] 200
[2026-06-13 13:24:11,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:11,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:24:11,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:11,499.499 INFO    ] No camera update needed
[2026-06-13 13:24:11,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:24:11,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:24:11,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:24:11,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:13,546.546 INFO    ] ================================================
[2026-06-13 13:24:13,563.563 INFO    ] Launching Daemon at Sat Jun 13 13:24:13 IST 2026
[2026-06-13 13:24:13,573.573 INFO    ] ================================================
[2026-06-13 13:24:13,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:13
[2026-06-13 13:24:14,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:14,416.416 INFO    ] Initializing speech engine...
[2026-06-13 13:24:14,422.422 INFO    ] 2026-06-13 13:24:14
[2026-06-13 13:24:14,629.629 INFO    ] 2026-06-13 13:24:14
[2026-06-13 13:24:14,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:14,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:14,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:14,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:15,048.048 INFO    ] time= 13/06/2026 13:24:14
[2026-06-13 13:24:15,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:15,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:15,144.144 INFO    ] No existing commands found in stream
[2026-06-13 13:24:20,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:24:20,158.158 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 13:24:20,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:24:20,576.576 INFO    ] Checking for system updates...
[2026-06-13 13:24:20,598.598 INFO    ] 200
[2026-06-13 13:24:20,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:20,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:20,634.634 INFO    ] No update needed
[2026-06-13 13:24:20,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 13:24:20,658.658 INFO    ] 200
[2026-06-13 13:24:20,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:20,686.686 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:24:20,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:20,723.723 INFO    ] No camera update needed
[2026-06-13 13:24:20,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:24:20,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:24:20,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:24:20,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:22,771.771 INFO    ] ================================================
[2026-06-13 13:24:22,787.787 INFO    ] Launching Daemon at Sat Jun 13 13:24:22 IST 2026
[2026-06-13 13:24:22,799.799 INFO    ] ================================================
[2026-06-13 13:24:23,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:23
[2026-06-13 13:24:23,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:23,606.606 INFO    ] Initializing speech engine...
[2026-06-13 13:24:23,611.611 INFO    ] 2026-06-13 13:24:23
[2026-06-13 13:24:23,816.816 INFO    ] 2026-06-13 13:24:23
[2026-06-13 13:24:23,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:24,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:24,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:24,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:24,218.218 INFO    ] time= 13/06/2026 13:24:24
[2026-06-13 13:24:24,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:24,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:24,327.327 INFO    ] No existing commands found in stream
[2026-06-13 13:24:29,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:24:29,341.341 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 13:24:32,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:24:32,066.066 INFO    ] Checking for system updates...
[2026-06-13 13:24:32,090.090 INFO    ] 200
[2026-06-13 13:24:32,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:32,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:32,129.129 INFO    ] No update needed
[2026-06-13 13:24:32,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 13:24:32,155.155 INFO    ] 200
[2026-06-13 13:24:32,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:32,185.185 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:24:32,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:32,216.216 INFO    ] No camera update needed
[2026-06-13 13:24:32,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:24:32,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:24:32,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:24:32,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:34,266.266 INFO    ] ================================================
[2026-06-13 13:24:34,282.282 INFO    ] Launching Daemon at Sat Jun 13 13:24:34 IST 2026
[2026-06-13 13:24:34,293.293 INFO    ] ================================================
[2026-06-13 13:24:34,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:34
[2026-06-13 13:24:35,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:35,165.165 INFO    ] Initializing speech engine...
[2026-06-13 13:24:35,170.170 INFO    ] 2026-06-13 13:24:35
[2026-06-13 13:24:35,382.382 INFO    ] 2026-06-13 13:24:35
[2026-06-13 13:24:35,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:35,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:35,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:35,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:35,788.788 INFO    ] time= 13/06/2026 13:24:35
[2026-06-13 13:24:35,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:35,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:35,905.905 INFO    ] No existing commands found in stream
[2026-06-13 13:24:40,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:24:40,919.919 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 13:24:42,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:24:42,594.594 INFO    ] Checking for system updates...
[2026-06-13 13:24:42,616.616 INFO    ] 200
[2026-06-13 13:24:42,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:42,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:42,650.650 INFO    ] No update needed
[2026-06-13 13:24:42,651.651 INFO    ] Checking for camera pi updates...
[2026-06-13 13:24:42,671.671 INFO    ] 200
[2026-06-13 13:24:42,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:42,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:24:42,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:42,737.737 INFO    ] No camera update needed
[2026-06-13 13:24:42,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:24:42,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:24:42,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:24:42,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:44,785.785 INFO    ] ================================================
[2026-06-13 13:24:44,802.802 INFO    ] Launching Daemon at Sat Jun 13 13:24:44 IST 2026
[2026-06-13 13:24:44,813.813 INFO    ] ================================================
[2026-06-13 13:24:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:45
[2026-06-13 13:24:45,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:45,639.639 INFO    ] Initializing speech engine...
[2026-06-13 13:24:45,654.654 INFO    ] 2026-06-13 13:24:45
[2026-06-13 13:24:45,943.943 INFO    ] 2026-06-13 13:24:45
[2026-06-13 13:24:45,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:46,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:46,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:46,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:46,326.326 INFO    ] time= 13/06/2026 13:24:46
[2026-06-13 13:24:46,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:46,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:46,451.451 INFO    ] No existing commands found in stream
[2026-06-13 13:24:51,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:24:51,466.466 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 13:24:54,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:24:54,968.968 INFO    ] Checking for system updates...
[2026-06-13 13:24:54,990.990 INFO    ] 200
[2026-06-13 13:24:54,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:55,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:55,023.023 INFO    ] No update needed
[2026-06-13 13:24:55,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 13:24:55,045.045 INFO    ] 200
[2026-06-13 13:24:55,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:24:55,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:24:55,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:24:55,109.109 INFO    ] No camera update needed
[2026-06-13 13:24:55,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:24:55,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:24:55,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:24:55,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:24:57,163.163 INFO    ] ================================================
[2026-06-13 13:24:57,180.180 INFO    ] Launching Daemon at Sat Jun 13 13:24:57 IST 2026
[2026-06-13 13:24:57,190.190 INFO    ] ================================================
[2026-06-13 13:24:57,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:24:57
[2026-06-13 13:24:57,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:24:57,984.984 INFO    ] Initializing speech engine...
[2026-06-13 13:24:57,994.994 INFO    ] 2026-06-13 13:24:57
[2026-06-13 13:24:58,209.209 INFO    ] 2026-06-13 13:24:58
[2026-06-13 13:24:58,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:24:58,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:24:58,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:24:58,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:24:58,642.642 INFO    ] time= 13/06/2026 13:24:58
[2026-06-13 13:24:58,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:24:58,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:24:58,763.763 INFO    ] No existing commands found in stream
[2026-06-13 13:25:03,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:03,775.775 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 13:25:04,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:25:04,145.145 INFO    ] Checking for system updates...
[2026-06-13 13:25:04,166.166 INFO    ] 200
[2026-06-13 13:25:04,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:04,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:25:04,200.200 INFO    ] No update needed
[2026-06-13 13:25:04,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 13:25:04,221.221 INFO    ] 200
[2026-06-13 13:25:04,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:04,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:25:04,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:25:04,285.285 INFO    ] No camera update needed
[2026-06-13 13:25:04,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:25:04,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:25:04,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:25:04,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:25:06,333.333 INFO    ] ================================================
[2026-06-13 13:25:06,349.349 INFO    ] Launching Daemon at Sat Jun 13 13:25:06 IST 2026
[2026-06-13 13:25:06,360.360 INFO    ] ================================================
[2026-06-13 13:25:06,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:25:06
[2026-06-13 13:25:07,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:25:07,165.165 INFO    ] Initializing speech engine...
[2026-06-13 13:25:07,173.173 INFO    ] 2026-06-13 13:25:07
[2026-06-13 13:25:07,396.396 INFO    ] 2026-06-13 13:25:07
[2026-06-13 13:25:07,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:25:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:25:07,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:25:07,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:25:07,773.773 INFO    ] time= 13/06/2026 13:25:07
[2026-06-13 13:25:07,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:25:07,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:25:07,955.955 INFO    ] No existing commands found in stream
[2026-06-13 13:25:12,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:12,969.969 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 13:25:15,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:25:15,827.827 INFO    ] Checking for system updates...
[2026-06-13 13:25:15,867.867 INFO    ] 200
[2026-06-13 13:25:15,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:15,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:15,925.925 INFO    ] No update needed
[2026-06-13 13:25:15,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 13:25:15,965.965 INFO    ] 200
[2026-06-13 13:25:15,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:16,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:25:16,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:16,054.054 INFO    ] No camera update needed
[2026-06-13 13:25:16,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:25:16,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:25:16,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:25:16,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:25:18,108.108 INFO    ] ================================================
[2026-06-13 13:25:18,124.124 INFO    ] Launching Daemon at Sat Jun 13 13:25:18 IST 2026
[2026-06-13 13:25:18,136.136 INFO    ] ================================================
[2026-06-13 13:25:18,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:25:18
[2026-06-13 13:25:18,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:25:18,978.978 INFO    ] Initializing speech engine...
[2026-06-13 13:25:18,983.983 INFO    ] 2026-06-13 13:25:18
[2026-06-13 13:25:19,191.191 INFO    ] 2026-06-13 13:25:19
[2026-06-13 13:25:19,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:25:19,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:25:19,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:25:19,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:25:19,576.576 INFO    ] time= 13/06/2026 13:25:19
[2026-06-13 13:25:19,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:25:19,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:25:19,724.724 INFO    ] No existing commands found in stream
[2026-06-13 13:25:24,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:24,757.757 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 13:25:25,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:25:25,125.125 INFO    ] Checking for system updates...
[2026-06-13 13:25:25,148.148 INFO    ] 200
[2026-06-13 13:25:25,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:25,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:25,189.189 INFO    ] No update needed
[2026-06-13 13:25:25,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 13:25:25,214.214 INFO    ] 200
[2026-06-13 13:25:25,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:25,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:25:25,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:25,297.297 INFO    ] No camera update needed
[2026-06-13 13:25:25,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:25:25,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:25:25,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:25:25,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:25:27,343.343 INFO    ] ================================================
[2026-06-13 13:25:27,359.359 INFO    ] Launching Daemon at Sat Jun 13 13:25:27 IST 2026
[2026-06-13 13:25:27,370.370 INFO    ] ================================================
[2026-06-13 13:25:27,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:25:27
[2026-06-13 13:25:28,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:25:28,210.210 INFO    ] Initializing speech engine...
[2026-06-13 13:25:28,216.216 INFO    ] 2026-06-13 13:25:28
[2026-06-13 13:25:28,431.431 INFO    ] 2026-06-13 13:25:28
[2026-06-13 13:25:28,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:25:28,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:25:28,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:25:28,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:25:28,853.853 INFO    ] time= 13/06/2026 13:25:28
[2026-06-13 13:25:28,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:25:28,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:25:28,985.985 INFO    ] No existing commands found in stream
[2026-06-13 13:25:33,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:33,997.997 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 13:25:37,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:25:37,698.698 INFO    ] Checking for system updates...
[2026-06-13 13:25:37,719.719 INFO    ] 200
[2026-06-13 13:25:37,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:37,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:37,752.752 INFO    ] No update needed
[2026-06-13 13:25:37,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 13:25:37,774.774 INFO    ] 200
[2026-06-13 13:25:37,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:37,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:25:37,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:37,840.840 INFO    ] No camera update needed
[2026-06-13 13:25:37,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:25:37,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:25:37,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:25:37,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:25:39,888.888 INFO    ] ================================================
[2026-06-13 13:25:39,903.903 INFO    ] Launching Daemon at Sat Jun 13 13:25:39 IST 2026
[2026-06-13 13:25:39,914.914 INFO    ] ================================================
[2026-06-13 13:25:40,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:25:40
[2026-06-13 13:25:40,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:25:40,733.733 INFO    ] Initializing speech engine...
[2026-06-13 13:25:40,743.743 INFO    ] 2026-06-13 13:25:40
[2026-06-13 13:25:40,947.947 INFO    ] 2026-06-13 13:25:40
[2026-06-13 13:25:40,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:25:41,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:25:41,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:25:41,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:25:41,356.356 INFO    ] time= 13/06/2026 13:25:41
[2026-06-13 13:25:41,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:25:41,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:25:41,462.462 INFO    ] No existing commands found in stream
[2026-06-13 13:25:46,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:46,472.472 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 13:25:48,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:25:48,291.291 INFO    ] Checking for system updates...
[2026-06-13 13:25:48,328.328 INFO    ] 200
[2026-06-13 13:25:48,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:48,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:25:48,387.387 INFO    ] No update needed
[2026-06-13 13:25:48,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 13:25:48,426.426 INFO    ] 200
[2026-06-13 13:25:48,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:25:48,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:25:48,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:25:48,525.525 INFO    ] No camera update needed
[2026-06-13 13:25:48,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:25:48,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:25:48,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:25:48,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:25:50,583.583 INFO    ] ================================================
[2026-06-13 13:25:50,598.598 INFO    ] Launching Daemon at Sat Jun 13 13:25:50 IST 2026
[2026-06-13 13:25:50,609.609 INFO    ] ================================================
[2026-06-13 13:25:50,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:25:50
[2026-06-13 13:25:51,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:25:51,431.431 INFO    ] Initializing speech engine...
[2026-06-13 13:25:51,444.444 INFO    ] 2026-06-13 13:25:51
[2026-06-13 13:25:51,663.663 INFO    ] 2026-06-13 13:25:51
[2026-06-13 13:25:51,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:25:51,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:25:51,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:25:52,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:25:52,080.080 INFO    ] time= 13/06/2026 13:25:52
[2026-06-13 13:25:52,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:25:52,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:25:52,217.217 INFO    ] No existing commands found in stream
[2026-06-13 13:25:57,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:25:57,231.231 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 13:26:01,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:26:01,096.096 INFO    ] Checking for system updates...
[2026-06-13 13:26:01,117.117 INFO    ] 200
[2026-06-13 13:26:01,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:01,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:26:01,152.152 INFO    ] No update needed
[2026-06-13 13:26:01,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:01,173.173 INFO    ] 200
[2026-06-13 13:26:01,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:01,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:01,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:26:01,235.235 INFO    ] No camera update needed
[2026-06-13 13:26:01,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:01,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:01,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:01,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:26:03,280.280 INFO    ] ================================================
[2026-06-13 13:26:03,295.295 INFO    ] Launching Daemon at Sat Jun 13 13:26:03 IST 2026
[2026-06-13 13:26:03,306.306 INFO    ] ================================================
[2026-06-13 13:26:03,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:26:03
[2026-06-13 13:26:03,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:26:04,098.098 INFO    ] Initializing speech engine...
[2026-06-13 13:26:04,104.104 INFO    ] 2026-06-13 13:26:04
[2026-06-13 13:26:04,364.364 INFO    ] 2026-06-13 13:26:04
[2026-06-13 13:26:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:26:04,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:26:04,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:26:04,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:26:04,849.849 INFO    ] time= 13/06/2026 13:26:04
[2026-06-13 13:26:04,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:26:04,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:26:05,028.028 INFO    ] No existing commands found in stream
[2026-06-13 13:26:10,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:26:10,058.058 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 13:26:11,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:26:11,670.670 INFO    ] Checking for system updates...
[2026-06-13 13:26:11,691.691 INFO    ] 200
[2026-06-13 13:26:11,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:11,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:11,728.728 INFO    ] No update needed
[2026-06-13 13:26:11,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:11,750.750 INFO    ] 200
[2026-06-13 13:26:11,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:11,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:11,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:11,921.921 INFO    ] No camera update needed
[2026-06-13 13:26:11,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:11,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:11,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:11,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:26:13,970.970 INFO    ] ================================================
[2026-06-13 13:26:13,985.985 INFO    ] Launching Daemon at Sat Jun 13 13:26:13 IST 2026
[2026-06-13 13:26:14,996.996 INFO    ] ================================================
[2026-06-13 13:26:14,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:26:14
[2026-06-13 13:26:14,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:26:14,795.795 INFO    ] Initializing speech engine...
[2026-06-13 13:26:14,800.800 INFO    ] 2026-06-13 13:26:14
[2026-06-13 13:26:15,006.006 INFO    ] 2026-06-13 13:26:14
[2026-06-13 13:26:15,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:26:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:26:15,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:26:15,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:26:15,411.411 INFO    ] time= 13/06/2026 13:26:15
[2026-06-13 13:26:15,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:26:15,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:26:15,612.612 INFO    ] No existing commands found in stream
[2026-06-13 13:26:20,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:26:20,637.637 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 13:26:23,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:26:23,150.150 INFO    ] Checking for system updates...
[2026-06-13 13:26:23,170.170 INFO    ] 200
[2026-06-13 13:26:23,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:23,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:23,204.204 INFO    ] No update needed
[2026-06-13 13:26:23,206.206 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:23,228.228 INFO    ] 200
[2026-06-13 13:26:23,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:23,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:23,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:23,290.290 INFO    ] No camera update needed
[2026-06-13 13:26:23,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:23,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:23,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:23,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:26:25,337.337 INFO    ] ================================================
[2026-06-13 13:26:25,352.352 INFO    ] Launching Daemon at Sat Jun 13 13:26:25 IST 2026
[2026-06-13 13:26:25,363.363 INFO    ] ================================================
[2026-06-13 13:26:25,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:26:25
[2026-06-13 13:26:26,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:26:26,171.171 INFO    ] Initializing speech engine...
[2026-06-13 13:26:26,180.180 INFO    ] 2026-06-13 13:26:26
[2026-06-13 13:26:26,404.404 INFO    ] 2026-06-13 13:26:26
[2026-06-13 13:26:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:26:26,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:26:26,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:26:26,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:26:26,817.817 INFO    ] time= 13/06/2026 13:26:26
[2026-06-13 13:26:26,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:26:26,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:26:26,971.971 INFO    ] No existing commands found in stream
[2026-06-13 13:26:31,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:26:31,982.982 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 13:26:34,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:26:34,080.080 INFO    ] Checking for system updates...
[2026-06-13 13:26:34,120.120 INFO    ] 200
[2026-06-13 13:26:34,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:34,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:34,179.179 INFO    ] No update needed
[2026-06-13 13:26:34,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:34,218.218 INFO    ] 200
[2026-06-13 13:26:34,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:34,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:34,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:34,312.312 INFO    ] No camera update needed
[2026-06-13 13:26:34,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:34,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:34,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:34,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:26:36,366.366 INFO    ] ================================================
[2026-06-13 13:26:36,381.381 INFO    ] Launching Daemon at Sat Jun 13 13:26:36 IST 2026
[2026-06-13 13:26:36,392.392 INFO    ] ================================================
[2026-06-13 13:26:36,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:26:36
[2026-06-13 13:26:37,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:26:37,207.207 INFO    ] Initializing speech engine...
[2026-06-13 13:26:37,218.218 INFO    ] 2026-06-13 13:26:37
[2026-06-13 13:26:37,434.434 INFO    ] 2026-06-13 13:26:37
[2026-06-13 13:26:37,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:26:37,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:26:37,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:26:37,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:26:37,865.865 INFO    ] time= 13/06/2026 13:26:37
[2026-06-13 13:26:37,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:26:37,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:26:37,993.993 INFO    ] No existing commands found in stream
[2026-06-13 13:26:43,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:26:43,007.007 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 13:26:45,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:26:45,888.888 INFO    ] Checking for system updates...
[2026-06-13 13:26:45,909.909 INFO    ] 200
[2026-06-13 13:26:45,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:45,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:45,942.942 INFO    ] No update needed
[2026-06-13 13:26:45,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:45,963.963 INFO    ] 200
[2026-06-13 13:26:45,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:45,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:46,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:26:46,028.028 INFO    ] No camera update needed
[2026-06-13 13:26:46,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:46,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:46,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:46,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:26:48,076.076 INFO    ] ================================================
[2026-06-13 13:26:48,091.091 INFO    ] Launching Daemon at Sat Jun 13 13:26:48 IST 2026
[2026-06-13 13:26:48,102.102 INFO    ] ================================================
[2026-06-13 13:26:48,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:26:48
[2026-06-13 13:26:48,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:26:48,917.917 INFO    ] Initializing speech engine...
[2026-06-13 13:26:48,928.928 INFO    ] 2026-06-13 13:26:48
[2026-06-13 13:26:49,146.146 INFO    ] 2026-06-13 13:26:49
[2026-06-13 13:26:49,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:26:49,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:26:49,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:26:49,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:26:49,551.551 INFO    ] time= 13/06/2026 13:26:49
[2026-06-13 13:26:49,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:26:49,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:26:49,704.704 INFO    ] No existing commands found in stream
[2026-06-13 13:26:54,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:26:54,718.718 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 13:26:58,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:26:58,886.886 INFO    ] Checking for system updates...
[2026-06-13 13:26:58,907.907 INFO    ] 200
[2026-06-13 13:26:58,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:58,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:26:58,940.940 INFO    ] No update needed
[2026-06-13 13:26:58,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 13:26:58,963.963 INFO    ] 200
[2026-06-13 13:26:58,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:26:58,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:26:59,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:26:59,035.035 INFO    ] No camera update needed
[2026-06-13 13:26:59,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:26:59,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:26:59,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:26:59,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:27:01,082.082 INFO    ] ================================================
[2026-06-13 13:27:01,097.097 INFO    ] Launching Daemon at Sat Jun 13 13:27:01 IST 2026
[2026-06-13 13:27:01,108.108 INFO    ] ================================================
[2026-06-13 13:27:01,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:27:01
[2026-06-13 13:27:01,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:27:02,055.055 INFO    ] Initializing speech engine...
[2026-06-13 13:27:02,061.061 INFO    ] 2026-06-13 13:27:02
[2026-06-13 13:27:02,302.302 INFO    ] 2026-06-13 13:27:02
[2026-06-13 13:27:02,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:27:02,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:27:02,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:27:02,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:27:02,706.706 INFO    ] time= 13/06/2026 13:27:02
[2026-06-13 13:27:02,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:27:02,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:27:02,878.878 INFO    ] No existing commands found in stream
[2026-06-13 13:27:07,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:27:07,893.893 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 13:27:10,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:27:10,510.510 INFO    ] Checking for system updates...
[2026-06-13 13:27:10,531.531 INFO    ] 200
[2026-06-13 13:27:10,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:10,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:27:10,564.564 INFO    ] No update needed
[2026-06-13 13:27:10,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 13:27:10,585.585 INFO    ] 200
[2026-06-13 13:27:10,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:10,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:27:10,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:27:10,650.650 INFO    ] No camera update needed
[2026-06-13 13:27:10,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:27:10,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:27:10,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:27:10,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:27:12,698.698 INFO    ] ================================================
[2026-06-13 13:27:12,713.713 INFO    ] Launching Daemon at Sat Jun 13 13:27:12 IST 2026
[2026-06-13 13:27:12,724.724 INFO    ] ================================================
[2026-06-13 13:27:13,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:27:13
[2026-06-13 13:27:13,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:27:13,591.591 INFO    ] Initializing speech engine...
[2026-06-13 13:27:13,597.597 INFO    ] 2026-06-13 13:27:13
[2026-06-13 13:27:13,798.798 INFO    ] 2026-06-13 13:27:13
[2026-06-13 13:27:13,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:27:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:27:14,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:27:14,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:27:14,201.201 INFO    ] time= 13/06/2026 13:27:14
[2026-06-13 13:27:14,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:27:14,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:27:14,311.311 INFO    ] No existing commands found in stream
[2026-06-13 13:27:19,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:27:19,323.323 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 13:27:21,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:27:21,005.005 INFO    ] Checking for system updates...
[2026-06-13 13:27:21,025.025 INFO    ] 200
[2026-06-13 13:27:21,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:21,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:27:21,059.059 INFO    ] No update needed
[2026-06-13 13:27:21,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 13:27:21,080.080 INFO    ] 200
[2026-06-13 13:27:21,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:21,107.107 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:27:21,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:27:21,160.160 INFO    ] No camera update needed
[2026-06-13 13:27:21,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:27:21,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:27:21,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:27:21,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:27:23,208.208 INFO    ] ================================================
[2026-06-13 13:27:23,223.223 INFO    ] Launching Daemon at Sat Jun 13 13:27:23 IST 2026
[2026-06-13 13:27:23,234.234 INFO    ] ================================================
[2026-06-13 13:27:23,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:27:23
[2026-06-13 13:27:23,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:27:24,055.055 INFO    ] Initializing speech engine...
[2026-06-13 13:27:24,059.059 INFO    ] 2026-06-13 13:27:24
[2026-06-13 13:27:24,284.284 INFO    ] 2026-06-13 13:27:24
[2026-06-13 13:27:24,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:27:24,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:27:24,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:27:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:27:24,657.657 INFO    ] time= 13/06/2026 13:27:24
[2026-06-13 13:27:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:27:24,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:27:24,828.828 INFO    ] No existing commands found in stream
[2026-06-13 13:27:29,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:27:29,845.845 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 13:27:33,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:27:33,500.500 INFO    ] Checking for system updates...
[2026-06-13 13:27:33,525.525 INFO    ] 200
[2026-06-13 13:27:33,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:33,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:33,558.558 INFO    ] No update needed
[2026-06-13 13:27:33,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 13:27:33,581.581 INFO    ] 200
[2026-06-13 13:27:33,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:33,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:27:33,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:33,647.647 INFO    ] No camera update needed
[2026-06-13 13:27:33,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:27:33,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:27:33,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:27:33,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:27:35,694.694 INFO    ] ================================================
[2026-06-13 13:27:35,709.709 INFO    ] Launching Daemon at Sat Jun 13 13:27:35 IST 2026
[2026-06-13 13:27:35,719.719 INFO    ] ================================================
[2026-06-13 13:27:36,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:27:36
[2026-06-13 13:27:36,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:27:36,507.507 INFO    ] Initializing speech engine...
[2026-06-13 13:27:36,520.520 INFO    ] 2026-06-13 13:27:36
[2026-06-13 13:27:36,720.720 INFO    ] 2026-06-13 13:27:36
[2026-06-13 13:27:36,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:27:36,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:27:36,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:27:37,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:27:37,156.156 INFO    ] time= 13/06/2026 13:27:37
[2026-06-13 13:27:37,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:27:37,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:27:37,259.259 INFO    ] No existing commands found in stream
[2026-06-13 13:27:42,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:27:42,272.272 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 13:27:45,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:27:45,860.860 INFO    ] Checking for system updates...
[2026-06-13 13:27:45,882.882 INFO    ] 200
[2026-06-13 13:27:45,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:45,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:45,918.918 INFO    ] No update needed
[2026-06-13 13:27:45,919.919 INFO    ] Checking for camera pi updates...
[2026-06-13 13:27:45,939.939 INFO    ] 200
[2026-06-13 13:27:45,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:45,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:27:46,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:46,004.004 INFO    ] No camera update needed
[2026-06-13 13:27:46,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:27:46,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:27:46,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:27:46,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:27:48,051.051 INFO    ] ================================================
[2026-06-13 13:27:48,066.066 INFO    ] Launching Daemon at Sat Jun 13 13:27:48 IST 2026
[2026-06-13 13:27:48,076.076 INFO    ] ================================================
[2026-06-13 13:27:48,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:27:48
[2026-06-13 13:27:48,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:27:48,856.856 INFO    ] Initializing speech engine...
[2026-06-13 13:27:48,869.869 INFO    ] 2026-06-13 13:27:48
[2026-06-13 13:27:49,080.080 INFO    ] 2026-06-13 13:27:49
[2026-06-13 13:27:49,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:27:49,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:27:49,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:27:49,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:27:49,486.486 INFO    ] time= 13/06/2026 13:27:49
[2026-06-13 13:27:49,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:27:49,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:27:49,604.604 INFO    ] No existing commands found in stream
[2026-06-13 13:27:54,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:27:54,616.616 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 13:27:58,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:27:58,766.766 INFO    ] Checking for system updates...
[2026-06-13 13:27:58,804.804 INFO    ] 200
[2026-06-13 13:27:58,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:58,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:58,861.861 INFO    ] No update needed
[2026-06-13 13:27:58,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 13:27:58,883.883 INFO    ] 200
[2026-06-13 13:27:58,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:27:58,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:27:58,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:27:58,946.946 INFO    ] No camera update needed
[2026-06-13 13:27:58,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:27:58,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:27:58,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:27:58,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:28:00,993.993 INFO    ] ================================================
[2026-06-13 13:28:01,008.008 INFO    ] Launching Daemon at Sat Jun 13 13:28:01 IST 2026
[2026-06-13 13:28:01,019.019 INFO    ] ================================================
[2026-06-13 13:28:01,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:28:01
[2026-06-13 13:28:01,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:28:01,826.826 INFO    ] Initializing speech engine...
[2026-06-13 13:28:01,837.837 INFO    ] 2026-06-13 13:28:01
[2026-06-13 13:28:02,077.077 INFO    ] 2026-06-13 13:28:02
[2026-06-13 13:28:02,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:28:02,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:28:02,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:28:02,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:28:02,556.556 INFO    ] time= 13/06/2026 13:28:02
[2026-06-13 13:28:02,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:28:02,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:28:02,700.700 INFO    ] No existing commands found in stream
[2026-06-13 13:28:07,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:28:07,715.715 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 13:28:11,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:28:11,535.535 INFO    ] Checking for system updates...
[2026-06-13 13:28:11,556.556 INFO    ] 200
[2026-06-13 13:28:11,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:11,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:11,590.590 INFO    ] No update needed
[2026-06-13 13:28:11,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 13:28:11,612.612 INFO    ] 200
[2026-06-13 13:28:11,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:11,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:28:11,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:11,686.686 INFO    ] No camera update needed
[2026-06-13 13:28:11,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:28:11,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:28:11,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:28:11,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:28:13,732.732 INFO    ] ================================================
[2026-06-13 13:28:13,747.747 INFO    ] Launching Daemon at Sat Jun 13 13:28:13 IST 2026
[2026-06-13 13:28:13,759.759 INFO    ] ================================================
[2026-06-13 13:28:14,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:28:14
[2026-06-13 13:28:14,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:28:14,612.612 INFO    ] Initializing speech engine...
[2026-06-13 13:28:14,627.627 INFO    ] 2026-06-13 13:28:14
[2026-06-13 13:28:14,837.837 INFO    ] 2026-06-13 13:28:14
[2026-06-13 13:28:14,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:28:15,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:28:15,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:28:15,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:28:15,263.263 INFO    ] time= 13/06/2026 13:28:15
[2026-06-13 13:28:15,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:28:15,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:28:15,362.362 INFO    ] No existing commands found in stream
[2026-06-13 13:28:20,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:28:20,380.380 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 13:28:21,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:28:21,270.270 INFO    ] Checking for system updates...
[2026-06-13 13:28:21,291.291 INFO    ] 200
[2026-06-13 13:28:21,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:21,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:21,326.326 INFO    ] No update needed
[2026-06-13 13:28:21,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 13:28:21,347.347 INFO    ] 200
[2026-06-13 13:28:21,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:21,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:28:21,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:21,509.509 INFO    ] No camera update needed
[2026-06-13 13:28:21,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:28:21,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:28:21,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:28:21,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:28:23,557.557 INFO    ] ================================================
[2026-06-13 13:28:23,572.572 INFO    ] Launching Daemon at Sat Jun 13 13:28:23 IST 2026
[2026-06-13 13:28:23,583.583 INFO    ] ================================================
[2026-06-13 13:28:23,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:28:23
[2026-06-13 13:28:24,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:28:24,450.450 INFO    ] Initializing speech engine...
[2026-06-13 13:28:24,455.455 INFO    ] 2026-06-13 13:28:24
[2026-06-13 13:28:24,663.663 INFO    ] 2026-06-13 13:28:24
[2026-06-13 13:28:24,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:28:24,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:28:24,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:28:25,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:28:25,064.064 INFO    ] time= 13/06/2026 13:28:25
[2026-06-13 13:28:25,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:28:25,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:28:25,177.177 INFO    ] No existing commands found in stream
[2026-06-13 13:28:30,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:28:30,191.191 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 13:28:34,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:28:34,232.232 INFO    ] Checking for system updates...
[2026-06-13 13:28:34,253.253 INFO    ] 200
[2026-06-13 13:28:34,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:34,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:28:34,289.289 INFO    ] No update needed
[2026-06-13 13:28:34,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 13:28:34,312.312 INFO    ] 200
[2026-06-13 13:28:34,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:34,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:28:34,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:28:34,373.373 INFO    ] No camera update needed
[2026-06-13 13:28:34,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:28:34,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:28:34,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:28:34,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:28:36,420.420 INFO    ] ================================================
[2026-06-13 13:28:36,435.435 INFO    ] Launching Daemon at Sat Jun 13 13:28:36 IST 2026
[2026-06-13 13:28:36,445.445 INFO    ] ================================================
[2026-06-13 13:28:36,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:28:36
[2026-06-13 13:28:37,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:28:37,256.256 INFO    ] Initializing speech engine...
[2026-06-13 13:28:37,261.261 INFO    ] 2026-06-13 13:28:37
[2026-06-13 13:28:37,464.464 INFO    ] 2026-06-13 13:28:37
[2026-06-13 13:28:37,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:28:37,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:28:37,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:28:37,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:28:37,867.867 INFO    ] time= 13/06/2026 13:28:37
[2026-06-13 13:28:37,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:28:37,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:28:37,976.976 INFO    ] No existing commands found in stream
[2026-06-13 13:28:42,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:28:42,989.989 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 13:28:44,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:28:44,421.421 INFO    ] Checking for system updates...
[2026-06-13 13:28:44,442.442 INFO    ] 200
[2026-06-13 13:28:44,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:44,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:28:44,475.475 INFO    ] No update needed
[2026-06-13 13:28:44,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 13:28:44,496.496 INFO    ] 200
[2026-06-13 13:28:44,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:44,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:28:44,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:28:44,569.569 INFO    ] No camera update needed
[2026-06-13 13:28:44,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:28:44,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:28:44,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:28:44,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:28:46,616.616 INFO    ] ================================================
[2026-06-13 13:28:46,632.632 INFO    ] Launching Daemon at Sat Jun 13 13:28:46 IST 2026
[2026-06-13 13:28:46,642.642 INFO    ] ================================================
[2026-06-13 13:28:47,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:28:47
[2026-06-13 13:28:47,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:28:47,893.893 INFO    ] Initializing speech engine...
[2026-06-13 13:28:47,899.899 INFO    ] 2026-06-13 13:28:47
[2026-06-13 13:28:48,143.143 INFO    ] 2026-06-13 13:28:48
[2026-06-13 13:28:48,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:28:48,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:28:48,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:28:48,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:28:48,509.509 INFO    ] time= 13/06/2026 13:28:48
[2026-06-13 13:28:48,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:28:48,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:28:48,692.692 INFO    ] No existing commands found in stream
[2026-06-13 13:28:53,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:28:53,719.719 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 13:28:58,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:28:58,082.082 INFO    ] Checking for system updates...
[2026-06-13 13:28:58,131.131 INFO    ] 200
[2026-06-13 13:28:58,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:58,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:58,164.164 INFO    ] No update needed
[2026-06-13 13:28:58,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 13:28:58,186.186 INFO    ] 200
[2026-06-13 13:28:58,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:28:58,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:28:58,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:28:58,258.258 INFO    ] No camera update needed
[2026-06-13 13:28:58,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:28:58,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:28:58,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:28:58,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:00,304.304 INFO    ] ================================================
[2026-06-13 13:29:00,319.319 INFO    ] Launching Daemon at Sat Jun 13 13:29:00 IST 2026
[2026-06-13 13:29:00,330.330 INFO    ] ================================================
[2026-06-13 13:29:00,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:00
[2026-06-13 13:29:00,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:01,124.124 INFO    ] Initializing speech engine...
[2026-06-13 13:29:01,127.127 INFO    ] 2026-06-13 13:29:01
[2026-06-13 13:29:01,318.318 INFO    ] 2026-06-13 13:29:01
[2026-06-13 13:29:01,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:01,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:01,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:01,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:01,764.764 INFO    ] time= 13/06/2026 13:29:01
[2026-06-13 13:29:01,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:01,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:01,900.900 INFO    ] No existing commands found in stream
[2026-06-13 13:29:06,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:29:06,912.912 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 13:29:09,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:29:09,554.554 INFO    ] Checking for system updates...
[2026-06-13 13:29:09,576.576 INFO    ] 200
[2026-06-13 13:29:09,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:09,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:29:09,611.611 INFO    ] No update needed
[2026-06-13 13:29:09,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 13:29:09,631.631 INFO    ] 200
[2026-06-13 13:29:09,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:09,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:29:09,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:29:09,698.698 INFO    ] No camera update needed
[2026-06-13 13:29:09,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:29:09,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:29:09,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:29:09,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:11,745.745 INFO    ] ================================================
[2026-06-13 13:29:11,760.760 INFO    ] Launching Daemon at Sat Jun 13 13:29:11 IST 2026
[2026-06-13 13:29:11,771.771 INFO    ] ================================================
[2026-06-13 13:29:12,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:12
[2026-06-13 13:29:12,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:12,568.568 INFO    ] Initializing speech engine...
[2026-06-13 13:29:12,573.573 INFO    ] 2026-06-13 13:29:12
[2026-06-13 13:29:12,775.775 INFO    ] 2026-06-13 13:29:12
[2026-06-13 13:29:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:12,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:12,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:13,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:13,182.182 INFO    ] time= 13/06/2026 13:29:13
[2026-06-13 13:29:13,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:13,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:13,286.286 INFO    ] No existing commands found in stream
[2026-06-13 13:29:18,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:29:18,303.303 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 13:29:20,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:29:20,087.087 INFO    ] Checking for system updates...
[2026-06-13 13:29:20,108.108 INFO    ] 200
[2026-06-13 13:29:20,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:20,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:20,141.141 INFO    ] No update needed
[2026-06-13 13:29:20,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 13:29:20,167.167 INFO    ] 200
[2026-06-13 13:29:20,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:20,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:29:20,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:20,228.228 INFO    ] No camera update needed
[2026-06-13 13:29:20,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:29:20,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:29:20,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:29:20,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:22,276.276 INFO    ] ================================================
[2026-06-13 13:29:22,291.291 INFO    ] Launching Daemon at Sat Jun 13 13:29:22 IST 2026
[2026-06-13 13:29:22,302.302 INFO    ] ================================================
[2026-06-13 13:29:22,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:22
[2026-06-13 13:29:22,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:23,127.127 INFO    ] Initializing speech engine...
[2026-06-13 13:29:23,132.132 INFO    ] 2026-06-13 13:29:23
[2026-06-13 13:29:23,339.339 INFO    ] 2026-06-13 13:29:23
[2026-06-13 13:29:23,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:23,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:23,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:23,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:23,757.757 INFO    ] time= 13/06/2026 13:29:23
[2026-06-13 13:29:23,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:23,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:23,853.853 INFO    ] No existing commands found in stream
[2026-06-13 13:29:28,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:29:28,871.871 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 13:29:31,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:29:31,762.762 INFO    ] Checking for system updates...
[2026-06-13 13:29:31,806.806 INFO    ] 200
[2026-06-13 13:29:31,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:31,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:29:31,852.852 INFO    ] No update needed
[2026-06-13 13:29:31,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 13:29:31,880.880 INFO    ] 200
[2026-06-13 13:29:31,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:31,909.909 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:29:31,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:29:31,941.941 INFO    ] No camera update needed
[2026-06-13 13:29:31,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:29:31,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:29:31,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:29:31,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:33,984.984 INFO    ] ================================================
[2026-06-13 13:29:34,999.999 INFO    ] Launching Daemon at Sat Jun 13 13:29:33 IST 2026
[2026-06-13 13:29:34,010.010 INFO    ] ================================================
[2026-06-13 13:29:34,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:34
[2026-06-13 13:29:34,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:34,780.780 INFO    ] Initializing speech engine...
[2026-06-13 13:29:34,787.787 INFO    ] 2026-06-13 13:29:34
[2026-06-13 13:29:35,001.001 INFO    ] 2026-06-13 13:29:34
[2026-06-13 13:29:35,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:35,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:35,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:35,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:35,421.421 INFO    ] time= 13/06/2026 13:29:35
[2026-06-13 13:29:35,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:35,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:35,522.522 INFO    ] No existing commands found in stream
[2026-06-13 13:29:40,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:29:40,535.535 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 13:29:41,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:29:41,900.900 INFO    ] Checking for system updates...
[2026-06-13 13:29:41,921.921 INFO    ] 200
[2026-06-13 13:29:41,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:41,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:41,955.955 INFO    ] No update needed
[2026-06-13 13:29:41,956.956 INFO    ] Checking for camera pi updates...
[2026-06-13 13:29:41,976.976 INFO    ] 200
[2026-06-13 13:29:41,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:42,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:29:42,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:42,040.040 INFO    ] No camera update needed
[2026-06-13 13:29:42,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:29:42,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:29:42,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:29:42,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:44,088.088 INFO    ] ================================================
[2026-06-13 13:29:44,104.104 INFO    ] Launching Daemon at Sat Jun 13 13:29:44 IST 2026
[2026-06-13 13:29:44,115.115 INFO    ] ================================================
[2026-06-13 13:29:44,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:44
[2026-06-13 13:29:44,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:44,920.920 INFO    ] Initializing speech engine...
[2026-06-13 13:29:44,926.926 INFO    ] 2026-06-13 13:29:44
[2026-06-13 13:29:45,128.128 INFO    ] 2026-06-13 13:29:45
[2026-06-13 13:29:45,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:45,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:45,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:45,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:45,549.549 INFO    ] time= 13/06/2026 13:29:45
[2026-06-13 13:29:45,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:45,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:45,643.643 INFO    ] No existing commands found in stream
[2026-06-13 13:29:50,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:29:50,657.657 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 13:29:53,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:29:53,364.364 INFO    ] Checking for system updates...
[2026-06-13 13:29:53,385.385 INFO    ] 200
[2026-06-13 13:29:53,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:53,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:53,419.419 INFO    ] No update needed
[2026-06-13 13:29:53,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 13:29:53,442.442 INFO    ] 200
[2026-06-13 13:29:53,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:29:53,468.468 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:29:53,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:29:53,493.493 INFO    ] No camera update needed
[2026-06-13 13:29:53,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:29:53,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:29:53,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:29:53,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:29:55,541.541 INFO    ] ================================================
[2026-06-13 13:29:55,556.556 INFO    ] Launching Daemon at Sat Jun 13 13:29:55 IST 2026
[2026-06-13 13:29:55,567.567 INFO    ] ================================================
[2026-06-13 13:29:55,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:29:55
[2026-06-13 13:29:56,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:29:56,430.430 INFO    ] Initializing speech engine...
[2026-06-13 13:29:56,436.436 INFO    ] 2026-06-13 13:29:56
[2026-06-13 13:29:56,650.650 INFO    ] 2026-06-13 13:29:56
[2026-06-13 13:29:56,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:29:56,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:29:56,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:29:57,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:29:57,068.068 INFO    ] time= 13/06/2026 13:29:57
[2026-06-13 13:29:57,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:29:57,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:29:57,175.175 INFO    ] No existing commands found in stream
[2026-06-13 13:30:02,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:02,191.191 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 13:30:08,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:30:08,787.787 INFO    ] Checking for system updates...
[2026-06-13 13:30:08,825.825 INFO    ] 200
[2026-06-13 13:30:08,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:08,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:30:08,886.886 INFO    ] No update needed
[2026-06-13 13:30:08,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 13:30:08,924.924 INFO    ] 200
[2026-06-13 13:30:08,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:08,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:30:08,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:30:08,996.996 INFO    ] No camera update needed
[2026-06-13 13:30:08,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:30:08,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:30:09,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:30:09,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:30:11,043.043 INFO    ] ================================================
[2026-06-13 13:30:11,060.060 INFO    ] Launching Daemon at Sat Jun 13 13:30:11 IST 2026
[2026-06-13 13:30:11,071.071 INFO    ] ================================================
[2026-06-13 13:30:11,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:30:11
[2026-06-13 13:30:11,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:30:11,874.874 INFO    ] Initializing speech engine...
[2026-06-13 13:30:11,886.886 INFO    ] 2026-06-13 13:30:11
[2026-06-13 13:30:12,102.102 INFO    ] 2026-06-13 13:30:12
[2026-06-13 13:30:12,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:30:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:30:12,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:30:12,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:30:12,530.530 INFO    ] time= 13/06/2026 13:30:12
[2026-06-13 13:30:12,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:30:12,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:30:12,655.655 INFO    ] No existing commands found in stream
[2026-06-13 13:30:17,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:17,669.669 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 13:30:19,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:30:19,011.011 INFO    ] Checking for system updates...
[2026-06-13 13:30:19,032.032 INFO    ] 200
[2026-06-13 13:30:19,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:19,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:30:19,070.070 INFO    ] No update needed
[2026-06-13 13:30:19,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 13:30:19,090.090 INFO    ] 200
[2026-06-13 13:30:19,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:19,116.116 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:30:19,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:30:19,155.155 INFO    ] No camera update needed
[2026-06-13 13:30:19,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:30:19,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:30:19,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:30:19,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:30:21,202.202 INFO    ] ================================================
[2026-06-13 13:30:21,218.218 INFO    ] Launching Daemon at Sat Jun 13 13:30:21 IST 2026
[2026-06-13 13:30:21,229.229 INFO    ] ================================================
[2026-06-13 13:30:21,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:30:21
[2026-06-13 13:30:21,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:30:22,021.021 INFO    ] Initializing speech engine...
[2026-06-13 13:30:22,025.025 INFO    ] 2026-06-13 13:30:22
[2026-06-13 13:30:22,229.229 INFO    ] 2026-06-13 13:30:22
[2026-06-13 13:30:22,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:30:22,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:30:22,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:30:22,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:30:22,634.634 INFO    ] time= 13/06/2026 13:30:22
[2026-06-13 13:30:22,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:30:22,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:30:22,743.743 INFO    ] No existing commands found in stream
[2026-06-13 13:30:27,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:27,756.756 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 13:30:29,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:30:29,586.586 INFO    ] Checking for system updates...
[2026-06-13 13:30:29,607.607 INFO    ] 200
[2026-06-13 13:30:29,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:29,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:30:29,641.641 INFO    ] No update needed
[2026-06-13 13:30:29,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 13:30:29,663.663 INFO    ] 200
[2026-06-13 13:30:29,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:29,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:30:29,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:30:29,832.832 INFO    ] No camera update needed
[2026-06-13 13:30:29,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:30:29,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:30:29,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:30:29,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:30:31,872.872 INFO    ] ================================================
[2026-06-13 13:30:31,882.882 INFO    ] Launching Daemon at Sat Jun 13 13:30:31 IST 2026
[2026-06-13 13:30:31,889.889 INFO    ] ================================================
[2026-06-13 13:30:32,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:30:32
[2026-06-13 13:30:32,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:30:32,666.666 INFO    ] Initializing speech engine...
[2026-06-13 13:30:32,672.672 INFO    ] 2026-06-13 13:30:32
[2026-06-13 13:30:32,879.879 INFO    ] 2026-06-13 13:30:32
[2026-06-13 13:30:32,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:30:33,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:30:33,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:30:33,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:30:33,279.279 INFO    ] time= 13/06/2026 13:30:33
[2026-06-13 13:30:33,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:30:33,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:30:33,401.401 INFO    ] No existing commands found in stream
[2026-06-13 13:30:38,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:38,414.414 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 13:30:38,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:30:38,795.795 INFO    ] Checking for system updates...
[2026-06-13 13:30:38,816.816 INFO    ] 200
[2026-06-13 13:30:38,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:38,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:30:38,849.849 INFO    ] No update needed
[2026-06-13 13:30:38,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 13:30:38,872.872 INFO    ] 200
[2026-06-13 13:30:38,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:38,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:30:38,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:30:38,934.934 INFO    ] No camera update needed
[2026-06-13 13:30:38,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:30:38,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:30:38,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:30:38,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:30:40,982.982 INFO    ] ================================================
[2026-06-13 13:30:41,998.998 INFO    ] Launching Daemon at Sat Jun 13 13:30:40 IST 2026
[2026-06-13 13:30:41,008.008 INFO    ] ================================================
[2026-06-13 13:30:41,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:30:41
[2026-06-13 13:30:41,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:30:41,876.876 INFO    ] Initializing speech engine...
[2026-06-13 13:30:41,881.881 INFO    ] 2026-06-13 13:30:41
[2026-06-13 13:30:42,089.089 INFO    ] 2026-06-13 13:30:42
[2026-06-13 13:30:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:30:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:30:42,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:30:42,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:30:42,493.493 INFO    ] time= 13/06/2026 13:30:42
[2026-06-13 13:30:42,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:30:42,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:30:42,608.608 INFO    ] No existing commands found in stream
[2026-06-13 13:30:47,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:47,622.622 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 13:30:48,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:30:48,957.957 INFO    ] Checking for system updates...
[2026-06-13 13:30:48,980.980 INFO    ] 200
[2026-06-13 13:30:48,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:49,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:30:49,014.014 INFO    ] No update needed
[2026-06-13 13:30:49,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 13:30:49,036.036 INFO    ] 200
[2026-06-13 13:30:49,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:30:49,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:30:49,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:30:49,098.098 INFO    ] No camera update needed
[2026-06-13 13:30:49,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:30:49,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:30:49,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:30:49,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:30:51,150.150 INFO    ] ================================================
[2026-06-13 13:30:51,166.166 INFO    ] Launching Daemon at Sat Jun 13 13:30:51 IST 2026
[2026-06-13 13:30:51,176.176 INFO    ] ================================================
[2026-06-13 13:30:51,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:30:51
[2026-06-13 13:30:51,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:30:51,992.992 INFO    ] Initializing speech engine...
[2026-06-13 13:30:51,998.998 INFO    ] 2026-06-13 13:30:51
[2026-06-13 13:30:52,206.206 INFO    ] 2026-06-13 13:30:52
[2026-06-13 13:30:52,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:30:52,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:30:52,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:30:52,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:30:52,602.602 INFO    ] time= 13/06/2026 13:30:52
[2026-06-13 13:30:52,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:30:52,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:30:52,722.722 INFO    ] No existing commands found in stream
[2026-06-13 13:30:57,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:30:57,735.735 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 13:31:01,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:31:01,412.412 INFO    ] Checking for system updates...
[2026-06-13 13:31:01,466.466 INFO    ] 200
[2026-06-13 13:31:01,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:01,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:01,517.517 INFO    ] No update needed
[2026-06-13 13:31:01,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:01,542.542 INFO    ] 200
[2026-06-13 13:31:01,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:01,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:01,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:01,620.620 INFO    ] No camera update needed
[2026-06-13 13:31:01,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:01,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:01,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:01,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:03,683.683 INFO    ] ================================================
[2026-06-13 13:31:03,698.698 INFO    ] Launching Daemon at Sat Jun 13 13:31:03 IST 2026
[2026-06-13 13:31:03,709.709 INFO    ] ================================================
[2026-06-13 13:31:04,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:04
[2026-06-13 13:31:04,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:04,954.954 INFO    ] Initializing speech engine...
[2026-06-13 13:31:04,966.966 INFO    ] 2026-06-13 13:31:04
[2026-06-13 13:31:05,171.171 INFO    ] 2026-06-13 13:31:05
[2026-06-13 13:31:05,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:05,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:05,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:05,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:05,582.582 INFO    ] time= 13/06/2026 13:31:05
[2026-06-13 13:31:05,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:05,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:05,690.690 INFO    ] No existing commands found in stream
[2026-06-13 13:31:10,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:31:10,727.727 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 13:31:11,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:31:11,661.661 INFO    ] Checking for system updates...
[2026-06-13 13:31:11,682.682 INFO    ] 200
[2026-06-13 13:31:11,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:11,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:11,717.717 INFO    ] No update needed
[2026-06-13 13:31:11,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:11,741.741 INFO    ] 200
[2026-06-13 13:31:11,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:11,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:11,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:11,803.803 INFO    ] No camera update needed
[2026-06-13 13:31:11,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:11,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:11,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:11,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:13,853.853 INFO    ] ================================================
[2026-06-13 13:31:13,868.868 INFO    ] Launching Daemon at Sat Jun 13 13:31:13 IST 2026
[2026-06-13 13:31:13,879.879 INFO    ] ================================================
[2026-06-13 13:31:14,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:14
[2026-06-13 13:31:14,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:14,669.669 INFO    ] Initializing speech engine...
[2026-06-13 13:31:14,674.674 INFO    ] 2026-06-13 13:31:14
[2026-06-13 13:31:14,876.876 INFO    ] 2026-06-13 13:31:14
[2026-06-13 13:31:14,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:15,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:15,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:15,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:15,276.276 INFO    ] time= 13/06/2026 13:31:15
[2026-06-13 13:31:15,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:15,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:15,391.391 INFO    ] No existing commands found in stream
[2026-06-13 13:31:20,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:31:20,407.407 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 13:31:21,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:31:21,460.460 INFO    ] Checking for system updates...
[2026-06-13 13:31:21,481.481 INFO    ] 200
[2026-06-13 13:31:21,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:21,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:21,514.514 INFO    ] No update needed
[2026-06-13 13:31:21,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:21,535.535 INFO    ] 200
[2026-06-13 13:31:21,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:21,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:21,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:21,597.597 INFO    ] No camera update needed
[2026-06-13 13:31:21,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:21,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:21,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:21,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:23,644.644 INFO    ] ================================================
[2026-06-13 13:31:23,660.660 INFO    ] Launching Daemon at Sat Jun 13 13:31:23 IST 2026
[2026-06-13 13:31:23,670.670 INFO    ] ================================================
[2026-06-13 13:31:23,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:23
[2026-06-13 13:31:24,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:24,737.737 INFO    ] Initializing speech engine...
[2026-06-13 13:31:24,758.758 INFO    ] 2026-06-13 13:31:24
[2026-06-13 13:31:25,019.019 INFO    ] 2026-06-13 13:31:25
[2026-06-13 13:31:25,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:25,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:25,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:25,392.392 INFO    ] time= 13/06/2026 13:31:25
[2026-06-13 13:31:25,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:25,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:25,565.565 INFO    ] No existing commands found in stream
[2026-06-13 13:31:30,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:31:30,598.598 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 13:31:32,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:31:32,925.925 INFO    ] Checking for system updates...
[2026-06-13 13:31:32,947.947 INFO    ] 200
[2026-06-13 13:31:32,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:32,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:32,983.983 INFO    ] No update needed
[2026-06-13 13:31:32,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:33,003.003 INFO    ] 200
[2026-06-13 13:31:33,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:33,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:33,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:31:33,068.068 INFO    ] No camera update needed
[2026-06-13 13:31:33,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:33,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:33,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:33,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:35,114.114 INFO    ] ================================================
[2026-06-13 13:31:35,129.129 INFO    ] Launching Daemon at Sat Jun 13 13:31:35 IST 2026
[2026-06-13 13:31:35,139.139 INFO    ] ================================================
[2026-06-13 13:31:35,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:35
[2026-06-13 13:31:35,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:35,907.907 INFO    ] Initializing speech engine...
[2026-06-13 13:31:35,919.919 INFO    ] 2026-06-13 13:31:35
[2026-06-13 13:31:36,125.125 INFO    ] 2026-06-13 13:31:36
[2026-06-13 13:31:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:36,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:36,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:36,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:36,534.534 INFO    ] time= 13/06/2026 13:31:36
[2026-06-13 13:31:36,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:36,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:36,639.639 INFO    ] No existing commands found in stream
[2026-06-13 13:31:41,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:31:41,651.651 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 13:31:43,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:31:43,830.830 INFO    ] Checking for system updates...
[2026-06-13 13:31:43,852.852 INFO    ] 200
[2026-06-13 13:31:43,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:43,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:43,885.885 INFO    ] No update needed
[2026-06-13 13:31:43,887.887 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:43,908.908 INFO    ] 200
[2026-06-13 13:31:43,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:43,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:43,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:43,974.974 INFO    ] No camera update needed
[2026-06-13 13:31:43,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:43,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:43,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:43,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:46,024.024 INFO    ] ================================================
[2026-06-13 13:31:46,039.039 INFO    ] Launching Daemon at Sat Jun 13 13:31:46 IST 2026
[2026-06-13 13:31:46,050.050 INFO    ] ================================================
[2026-06-13 13:31:46,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:46
[2026-06-13 13:31:47,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:47,287.287 INFO    ] Initializing speech engine...
[2026-06-13 13:31:47,293.293 INFO    ] 2026-06-13 13:31:47
[2026-06-13 13:31:47,543.543 INFO    ] 2026-06-13 13:31:47
[2026-06-13 13:31:47,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:47,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:47,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:47,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:47,916.916 INFO    ] time= 13/06/2026 13:31:47
[2026-06-13 13:31:47,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:47,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:48,080.080 INFO    ] No existing commands found in stream
[2026-06-13 13:31:53,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:31:53,118.118 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 13:31:53,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:31:53,580.580 INFO    ] Checking for system updates...
[2026-06-13 13:31:53,601.601 INFO    ] 200
[2026-06-13 13:31:53,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:53,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:53,634.634 INFO    ] No update needed
[2026-06-13 13:31:53,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 13:31:53,655.655 INFO    ] 200
[2026-06-13 13:31:53,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:31:53,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:31:53,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:31:53,720.720 INFO    ] No camera update needed
[2026-06-13 13:31:53,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:31:53,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:31:53,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:31:53,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:31:55,767.767 INFO    ] ================================================
[2026-06-13 13:31:55,782.782 INFO    ] Launching Daemon at Sat Jun 13 13:31:55 IST 2026
[2026-06-13 13:31:55,793.793 INFO    ] ================================================
[2026-06-13 13:31:56,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:31:56
[2026-06-13 13:31:56,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:31:56,621.621 INFO    ] Initializing speech engine...
[2026-06-13 13:31:56,625.625 INFO    ] 2026-06-13 13:31:56
[2026-06-13 13:31:56,828.828 INFO    ] 2026-06-13 13:31:56
[2026-06-13 13:31:56,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:31:56,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:31:57,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:31:57,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:31:57,228.228 INFO    ] time= 13/06/2026 13:31:57
[2026-06-13 13:31:57,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:31:57,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:31:57,342.342 INFO    ] No existing commands found in stream
[2026-06-13 13:32:02,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:32:02,353.353 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 13:32:03,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:32:03,408.408 INFO    ] Checking for system updates...
[2026-06-13 13:32:03,446.446 INFO    ] 200
[2026-06-13 13:32:03,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:03,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:03,507.507 INFO    ] No update needed
[2026-06-13 13:32:03,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 13:32:03,548.548 INFO    ] 200
[2026-06-13 13:32:03,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:03,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:32:03,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:32:03,642.642 INFO    ] No camera update needed
[2026-06-13 13:32:03,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:32:03,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:32:03,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:32:03,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:32:05,694.694 INFO    ] ================================================
[2026-06-13 13:32:05,709.709 INFO    ] Launching Daemon at Sat Jun 13 13:32:05 IST 2026
[2026-06-13 13:32:05,720.720 INFO    ] ================================================
[2026-06-13 13:32:06,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:32:06
[2026-06-13 13:32:06,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:32:06,526.526 INFO    ] Initializing speech engine...
[2026-06-13 13:32:06,530.530 INFO    ] 2026-06-13 13:32:06
[2026-06-13 13:32:06,755.755 INFO    ] 2026-06-13 13:32:06
[2026-06-13 13:32:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:32:06,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:32:06,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:32:07,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:32:07,190.190 INFO    ] time= 13/06/2026 13:32:07
[2026-06-13 13:32:07,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:32:07,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:32:07,294.294 INFO    ] No existing commands found in stream
[2026-06-13 13:32:12,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:32:12,307.307 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 13:32:15,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:32:15,947.947 INFO    ] Checking for system updates...
[2026-06-13 13:32:15,967.967 INFO    ] 200
[2026-06-13 13:32:15,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:15,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:32:16,001.001 INFO    ] No update needed
[2026-06-13 13:32:16,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 13:32:16,022.022 INFO    ] 200
[2026-06-13 13:32:16,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:16,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:32:16,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:16,092.092 INFO    ] No camera update needed
[2026-06-13 13:32:16,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:32:16,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:32:16,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:32:16,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:32:18,139.139 INFO    ] ================================================
[2026-06-13 13:32:18,154.154 INFO    ] Launching Daemon at Sat Jun 13 13:32:18 IST 2026
[2026-06-13 13:32:18,165.165 INFO    ] ================================================
[2026-06-13 13:32:18,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:32:18
[2026-06-13 13:32:18,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:32:19,036.036 INFO    ] Initializing speech engine...
[2026-06-13 13:32:19,040.040 INFO    ] 2026-06-13 13:32:19
[2026-06-13 13:32:19,251.251 INFO    ] 2026-06-13 13:32:19
[2026-06-13 13:32:19,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:32:19,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:32:19,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:32:19,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:32:19,652.652 INFO    ] time= 13/06/2026 13:32:19
[2026-06-13 13:32:19,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:32:19,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:32:19,773.773 INFO    ] No existing commands found in stream
[2026-06-13 13:32:24,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:32:24,787.787 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 13:32:28,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:32:28,212.212 INFO    ] Checking for system updates...
[2026-06-13 13:32:28,234.234 INFO    ] 200
[2026-06-13 13:32:28,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:28,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:28,270.270 INFO    ] No update needed
[2026-06-13 13:32:28,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 13:32:28,292.292 INFO    ] 200
[2026-06-13 13:32:28,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:28,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:32:28,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:28,357.357 INFO    ] No camera update needed
[2026-06-13 13:32:28,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:32:28,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:32:28,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:32:28,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:32:30,403.403 INFO    ] ================================================
[2026-06-13 13:32:30,418.418 INFO    ] Launching Daemon at Sat Jun 13 13:32:30 IST 2026
[2026-06-13 13:32:30,429.429 INFO    ] ================================================
[2026-06-13 13:32:30,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:32:30
[2026-06-13 13:32:31,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:32:31,224.224 INFO    ] Initializing speech engine...
[2026-06-13 13:32:31,229.229 INFO    ] 2026-06-13 13:32:31
[2026-06-13 13:32:31,422.422 INFO    ] 2026-06-13 13:32:31
[2026-06-13 13:32:31,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:32:31,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:32:31,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:32:31,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:32:31,816.816 INFO    ] time= 13/06/2026 13:32:31
[2026-06-13 13:32:31,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:32:31,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:32:32,059.059 INFO    ] No existing commands found in stream
[2026-06-13 13:32:37,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:32:37,101.101 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 13:32:39,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:32:39,820.820 INFO    ] Checking for system updates...
[2026-06-13 13:32:39,841.841 INFO    ] 200
[2026-06-13 13:32:39,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:39,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:39,878.878 INFO    ] No update needed
[2026-06-13 13:32:39,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 13:32:39,901.901 INFO    ] 200
[2026-06-13 13:32:39,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:39,926.926 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:32:40,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:40,066.066 INFO    ] No camera update needed
[2026-06-13 13:32:40,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:32:40,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:32:40,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:32:40,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:32:42,114.114 INFO    ] ================================================
[2026-06-13 13:32:42,129.129 INFO    ] Launching Daemon at Sat Jun 13 13:32:42 IST 2026
[2026-06-13 13:32:42,139.139 INFO    ] ================================================
[2026-06-13 13:32:42,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:32:42
[2026-06-13 13:32:42,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:32:43,170.170 INFO    ] Initializing speech engine...
[2026-06-13 13:32:43,179.179 INFO    ] 2026-06-13 13:32:43
[2026-06-13 13:32:43,429.429 INFO    ] 2026-06-13 13:32:43
[2026-06-13 13:32:43,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:32:43,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:32:43,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:32:43,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:32:43,786.786 INFO    ] time= 13/06/2026 13:32:43
[2026-06-13 13:32:43,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:32:43,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:32:43,886.886 INFO    ] No existing commands found in stream
[2026-06-13 13:32:48,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:32:48,913.913 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 13:32:51,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:32:51,242.242 INFO    ] Checking for system updates...
[2026-06-13 13:32:51,264.264 INFO    ] 200
[2026-06-13 13:32:51,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:51,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:32:51,297.297 INFO    ] No update needed
[2026-06-13 13:32:51,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 13:32:51,318.318 INFO    ] 200
[2026-06-13 13:32:51,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:32:51,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:32:51,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:32:51,380.380 INFO    ] No camera update needed
[2026-06-13 13:32:51,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:32:51,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:32:51,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:32:51,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:32:53,428.428 INFO    ] ================================================
[2026-06-13 13:32:53,443.443 INFO    ] Launching Daemon at Sat Jun 13 13:32:53 IST 2026
[2026-06-13 13:32:53,454.454 INFO    ] ================================================
[2026-06-13 13:32:53,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:32:53
[2026-06-13 13:32:54,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:32:54,261.261 INFO    ] Initializing speech engine...
[2026-06-13 13:32:54,271.271 INFO    ] 2026-06-13 13:32:54
[2026-06-13 13:32:54,479.479 INFO    ] 2026-06-13 13:32:54
[2026-06-13 13:32:54,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:32:54,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:32:54,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:32:54,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:32:54,906.906 INFO    ] time= 13/06/2026 13:32:54
[2026-06-13 13:32:54,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:32:54,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:32:55,005.005 INFO    ] No existing commands found in stream
[2026-06-13 13:33:00,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:00,017.017 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 13:33:00,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:33:00,892.892 INFO    ] Checking for system updates...
[2026-06-13 13:33:00,913.913 INFO    ] 200
[2026-06-13 13:33:00,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:00,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:00,947.947 INFO    ] No update needed
[2026-06-13 13:33:00,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:00,970.970 INFO    ] 200
[2026-06-13 13:33:00,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:00,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:01,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:01,036.036 INFO    ] No camera update needed
[2026-06-13 13:33:01,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:01,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:01,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:01,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:03,076.076 INFO    ] ================================================
[2026-06-13 13:33:03,084.084 INFO    ] Launching Daemon at Sat Jun 13 13:33:03 IST 2026
[2026-06-13 13:33:03,090.090 INFO    ] ================================================
[2026-06-13 13:33:03,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:03
[2026-06-13 13:33:03,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:03,884.884 INFO    ] Initializing speech engine...
[2026-06-13 13:33:03,890.890 INFO    ] 2026-06-13 13:33:03
[2026-06-13 13:33:04,098.098 INFO    ] 2026-06-13 13:33:04
[2026-06-13 13:33:04,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:04,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:04,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:04,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:04,453.453 INFO    ] time= 13/06/2026 13:33:04
[2026-06-13 13:33:04,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:04,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:04,623.623 INFO    ] No existing commands found in stream
[2026-06-13 13:33:09,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:09,637.637 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 13:33:10,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:33:10,730.730 INFO    ] Checking for system updates...
[2026-06-13 13:33:10,751.751 INFO    ] 200
[2026-06-13 13:33:10,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:10,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:10,786.786 INFO    ] No update needed
[2026-06-13 13:33:10,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:10,807.807 INFO    ] 200
[2026-06-13 13:33:10,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:10,834.834 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:10,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:10,883.883 INFO    ] No camera update needed
[2026-06-13 13:33:10,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:10,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:10,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:10,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:12,923.923 INFO    ] ================================================
[2026-06-13 13:33:12,932.932 INFO    ] Launching Daemon at Sat Jun 13 13:33:12 IST 2026
[2026-06-13 13:33:12,937.937 INFO    ] ================================================
[2026-06-13 13:33:13,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:13
[2026-06-13 13:33:13,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:13,736.736 INFO    ] Initializing speech engine...
[2026-06-13 13:33:13,744.744 INFO    ] 2026-06-13 13:33:13
[2026-06-13 13:33:13,966.966 INFO    ] 2026-06-13 13:33:13
[2026-06-13 13:33:13,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:14,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:14,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:14,383.383 INFO    ] time= 13/06/2026 13:33:14
[2026-06-13 13:33:14,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:14,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:14,519.519 INFO    ] No existing commands found in stream
[2026-06-13 13:33:19,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:19,532.532 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 13:33:21,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:33:21,801.801 INFO    ] Checking for system updates...
[2026-06-13 13:33:21,836.836 INFO    ] 200
[2026-06-13 13:33:21,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:21,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:21,901.901 INFO    ] No update needed
[2026-06-13 13:33:21,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:21,931.931 INFO    ] 200
[2026-06-13 13:33:21,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:21,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:21,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:21,999.999 INFO    ] No camera update needed
[2026-06-13 13:33:22,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:22,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:22,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:22,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:24,046.046 INFO    ] ================================================
[2026-06-13 13:33:24,061.061 INFO    ] Launching Daemon at Sat Jun 13 13:33:24 IST 2026
[2026-06-13 13:33:24,072.072 INFO    ] ================================================
[2026-06-13 13:33:24,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:24
[2026-06-13 13:33:24,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:24,905.905 INFO    ] Initializing speech engine...
[2026-06-13 13:33:24,911.911 INFO    ] 2026-06-13 13:33:24
[2026-06-13 13:33:25,118.118 INFO    ] 2026-06-13 13:33:25
[2026-06-13 13:33:25,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:25,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:25,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:25,523.523 INFO    ] time= 13/06/2026 13:33:25
[2026-06-13 13:33:25,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:25,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:25,635.635 INFO    ] No existing commands found in stream
[2026-06-13 13:33:30,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:30,652.652 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 13:33:32,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:33:32,316.316 INFO    ] Checking for system updates...
[2026-06-13 13:33:32,341.341 INFO    ] 200
[2026-06-13 13:33:32,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:32,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:32,388.388 INFO    ] No update needed
[2026-06-13 13:33:32,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:32,414.414 INFO    ] 200
[2026-06-13 13:33:32,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:32,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:32,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:32,479.479 INFO    ] No camera update needed
[2026-06-13 13:33:32,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:32,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:32,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:32,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:34,529.529 INFO    ] ================================================
[2026-06-13 13:33:34,544.544 INFO    ] Launching Daemon at Sat Jun 13 13:33:34 IST 2026
[2026-06-13 13:33:34,555.555 INFO    ] ================================================
[2026-06-13 13:33:34,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:34
[2026-06-13 13:33:35,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:35,378.378 INFO    ] Initializing speech engine...
[2026-06-13 13:33:35,388.388 INFO    ] 2026-06-13 13:33:35
[2026-06-13 13:33:35,594.594 INFO    ] 2026-06-13 13:33:35
[2026-06-13 13:33:35,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:35,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:35,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:35,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:36,000.000 INFO    ] time= 13/06/2026 13:33:35
[2026-06-13 13:33:36,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:36,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:36,111.111 INFO    ] No existing commands found in stream
[2026-06-13 13:33:41,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:41,123.123 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 13:33:44,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:33:44,265.265 INFO    ] Checking for system updates...
[2026-06-13 13:33:44,286.286 INFO    ] 200
[2026-06-13 13:33:44,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:44,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:33:44,319.319 INFO    ] No update needed
[2026-06-13 13:33:44,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:44,342.342 INFO    ] 200
[2026-06-13 13:33:44,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:44,369.369 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:44,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:33:44,413.413 INFO    ] No camera update needed
[2026-06-13 13:33:44,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:44,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:44,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:44,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:46,461.461 INFO    ] ================================================
[2026-06-13 13:33:46,477.477 INFO    ] Launching Daemon at Sat Jun 13 13:33:46 IST 2026
[2026-06-13 13:33:46,489.489 INFO    ] ================================================
[2026-06-13 13:33:46,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:46
[2026-06-13 13:33:47,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:47,334.334 INFO    ] Initializing speech engine...
[2026-06-13 13:33:47,340.340 INFO    ] 2026-06-13 13:33:47
[2026-06-13 13:33:47,548.548 INFO    ] 2026-06-13 13:33:47
[2026-06-13 13:33:47,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:47,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:47,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:47,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:47,967.967 INFO    ] time= 13/06/2026 13:33:47
[2026-06-13 13:33:47,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:47,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:48,063.063 INFO    ] No existing commands found in stream
[2026-06-13 13:33:53,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:33:53,081.081 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 13:33:54,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:33:54,117.117 INFO    ] Checking for system updates...
[2026-06-13 13:33:54,138.138 INFO    ] 200
[2026-06-13 13:33:54,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:54,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:54,172.172 INFO    ] No update needed
[2026-06-13 13:33:54,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 13:33:54,194.194 INFO    ] 200
[2026-06-13 13:33:54,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:33:54,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:33:54,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:33:54,260.260 INFO    ] No camera update needed
[2026-06-13 13:33:54,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:33:54,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:33:54,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:33:54,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:33:56,308.308 INFO    ] ================================================
[2026-06-13 13:33:56,323.323 INFO    ] Launching Daemon at Sat Jun 13 13:33:56 IST 2026
[2026-06-13 13:33:56,334.334 INFO    ] ================================================
[2026-06-13 13:33:56,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:33:56
[2026-06-13 13:33:56,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:33:57,134.134 INFO    ] Initializing speech engine...
[2026-06-13 13:33:57,144.144 INFO    ] 2026-06-13 13:33:57
[2026-06-13 13:33:57,349.349 INFO    ] 2026-06-13 13:33:57
[2026-06-13 13:33:57,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:33:57,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:33:57,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:33:57,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:33:57,767.767 INFO    ] time= 13/06/2026 13:33:57
[2026-06-13 13:33:57,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:33:57,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:33:57,897.897 INFO    ] No existing commands found in stream
[2026-06-13 13:34:02,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:02,911.911 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 13:34:05,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:34:05,677.677 INFO    ] Checking for system updates...
[2026-06-13 13:34:05,698.698 INFO    ] 200
[2026-06-13 13:34:05,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:05,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:05,740.740 INFO    ] No update needed
[2026-06-13 13:34:05,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:05,772.772 INFO    ] 200
[2026-06-13 13:34:05,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:05,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:05,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:05,848.848 INFO    ] No camera update needed
[2026-06-13 13:34:05,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:05,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:05,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:05,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:34:07,899.899 INFO    ] ================================================
[2026-06-13 13:34:07,915.915 INFO    ] Launching Daemon at Sat Jun 13 13:34:07 IST 2026
[2026-06-13 13:34:07,926.926 INFO    ] ================================================
[2026-06-13 13:34:08,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:34:08
[2026-06-13 13:34:08,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:34:08,707.707 INFO    ] Initializing speech engine...
[2026-06-13 13:34:08,712.712 INFO    ] 2026-06-13 13:34:08
[2026-06-13 13:34:08,929.929 INFO    ] 2026-06-13 13:34:08
[2026-06-13 13:34:08,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:34:09,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:34:09,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:34:09,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:34:09,331.331 INFO    ] time= 13/06/2026 13:34:09
[2026-06-13 13:34:09,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:34:09,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:34:09,445.445 INFO    ] No existing commands found in stream
[2026-06-13 13:34:14,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:14,453.453 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 13:34:15,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:34:15,970.970 INFO    ] Checking for system updates...
[2026-06-13 13:34:15,990.990 INFO    ] 200
[2026-06-13 13:34:15,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:16,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:16,025.025 INFO    ] No update needed
[2026-06-13 13:34:16,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:16,047.047 INFO    ] 200
[2026-06-13 13:34:16,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:16,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:16,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:16,120.120 INFO    ] No camera update needed
[2026-06-13 13:34:16,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:16,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:16,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:16,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:34:18,166.166 INFO    ] ================================================
[2026-06-13 13:34:18,181.181 INFO    ] Launching Daemon at Sat Jun 13 13:34:18 IST 2026
[2026-06-13 13:34:18,193.193 INFO    ] ================================================
[2026-06-13 13:34:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:34:18
[2026-06-13 13:34:18,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:34:18,984.984 INFO    ] Initializing speech engine...
[2026-06-13 13:34:18,996.996 INFO    ] 2026-06-13 13:34:18
[2026-06-13 13:34:19,203.203 INFO    ] 2026-06-13 13:34:19
[2026-06-13 13:34:19,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:34:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:34:19,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:34:19,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:34:19,604.604 INFO    ] time= 13/06/2026 13:34:19
[2026-06-13 13:34:19,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:34:19,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:34:19,722.722 INFO    ] No existing commands found in stream
[2026-06-13 13:34:24,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:24,735.735 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 13:34:25,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:34:25,975.975 INFO    ] Checking for system updates...
[2026-06-13 13:34:25,996.996 INFO    ] 200
[2026-06-13 13:34:25,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:26,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:26,032.032 INFO    ] No update needed
[2026-06-13 13:34:26,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:26,056.056 INFO    ] 200
[2026-06-13 13:34:26,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:26,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:26,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:26,132.132 INFO    ] No camera update needed
[2026-06-13 13:34:26,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:26,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:26,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:26,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:34:28,181.181 INFO    ] ================================================
[2026-06-13 13:34:28,196.196 INFO    ] Launching Daemon at Sat Jun 13 13:34:28 IST 2026
[2026-06-13 13:34:28,207.207 INFO    ] ================================================
[2026-06-13 13:34:28,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:34:28
[2026-06-13 13:34:28,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:34:29,062.062 INFO    ] Initializing speech engine...
[2026-06-13 13:34:29,067.067 INFO    ] 2026-06-13 13:34:29
[2026-06-13 13:34:29,276.276 INFO    ] 2026-06-13 13:34:29
[2026-06-13 13:34:29,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:34:29,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:34:29,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:34:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:34:29,761.761 INFO    ] time= 13/06/2026 13:34:29
[2026-06-13 13:34:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:34:29,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:34:29,911.911 INFO    ] No existing commands found in stream
[2026-06-13 13:34:34,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:34,950.950 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 13:34:36,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:34:36,680.680 INFO    ] Checking for system updates...
[2026-06-13 13:34:36,701.701 INFO    ] 200
[2026-06-13 13:34:36,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:36,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:36,736.736 INFO    ] No update needed
[2026-06-13 13:34:36,737.737 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:36,758.758 INFO    ] 200
[2026-06-13 13:34:36,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:36,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:36,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:36,821.821 INFO    ] No camera update needed
[2026-06-13 13:34:36,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:36,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:36,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:36,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:34:38,867.867 INFO    ] ================================================
[2026-06-13 13:34:38,882.882 INFO    ] Launching Daemon at Sat Jun 13 13:34:38 IST 2026
[2026-06-13 13:34:38,893.893 INFO    ] ================================================
[2026-06-13 13:34:39,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:34:39
[2026-06-13 13:34:39,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:34:39,715.715 INFO    ] Initializing speech engine...
[2026-06-13 13:34:39,720.720 INFO    ] 2026-06-13 13:34:39
[2026-06-13 13:34:39,923.923 INFO    ] 2026-06-13 13:34:39
[2026-06-13 13:34:39,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:34:40,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:34:40,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:34:40,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:34:40,320.320 INFO    ] time= 13/06/2026 13:34:40
[2026-06-13 13:34:40,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:34:40,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:34:40,435.435 INFO    ] No existing commands found in stream
[2026-06-13 13:34:45,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:45,446.446 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 13:34:48,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:34:48,109.109 INFO    ] Checking for system updates...
[2026-06-13 13:34:48,132.132 INFO    ] 200
[2026-06-13 13:34:48,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:48,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:48,165.165 INFO    ] No update needed
[2026-06-13 13:34:48,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:48,187.187 INFO    ] 200
[2026-06-13 13:34:48,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:48,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:48,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:34:48,354.354 INFO    ] No camera update needed
[2026-06-13 13:34:48,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:48,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:48,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:48,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:34:50,403.403 INFO    ] ================================================
[2026-06-13 13:34:50,418.418 INFO    ] Launching Daemon at Sat Jun 13 13:34:50 IST 2026
[2026-06-13 13:34:50,429.429 INFO    ] ================================================
[2026-06-13 13:34:50,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:34:50
[2026-06-13 13:34:51,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:34:51,217.217 INFO    ] Initializing speech engine...
[2026-06-13 13:34:51,228.228 INFO    ] 2026-06-13 13:34:51
[2026-06-13 13:34:51,433.433 INFO    ] 2026-06-13 13:34:51
[2026-06-13 13:34:51,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:34:51,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:34:51,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:34:51,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:34:51,821.821 INFO    ] time= 13/06/2026 13:34:51
[2026-06-13 13:34:51,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:34:51,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:34:52,076.076 INFO    ] No existing commands found in stream
[2026-06-13 13:34:57,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:34:57,102.102 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 13:34:59,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:34:59,458.458 INFO    ] Checking for system updates...
[2026-06-13 13:34:59,481.481 INFO    ] 200
[2026-06-13 13:34:59,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:59,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:59,519.519 INFO    ] No update needed
[2026-06-13 13:34:59,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 13:34:59,544.544 INFO    ] 200
[2026-06-13 13:34:59,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:34:59,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:34:59,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:34:59,616.616 INFO    ] No camera update needed
[2026-06-13 13:34:59,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:34:59,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:34:59,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:34:59,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:01,661.661 INFO    ] ================================================
[2026-06-13 13:35:01,670.670 INFO    ] Launching Daemon at Sat Jun 13 13:35:01 IST 2026
[2026-06-13 13:35:01,676.676 INFO    ] ================================================
[2026-06-13 13:35:02,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:02
[2026-06-13 13:35:02,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:03,280.280 INFO    ] Initializing speech engine...
[2026-06-13 13:35:03,284.284 INFO    ] 2026-06-13 13:35:03
[2026-06-13 13:35:03,634.634 INFO    ] 2026-06-13 13:35:03
[2026-06-13 13:35:03,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:03,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:03,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:04,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:04,043.043 INFO    ] time= 13/06/2026 13:35:04
[2026-06-13 13:35:04,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:04,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:04,162.162 INFO    ] No existing commands found in stream
[2026-06-13 13:35:09,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:35:09,202.202 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 13:35:10,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:35:10,815.815 INFO    ] Checking for system updates...
[2026-06-13 13:35:10,836.836 INFO    ] 200
[2026-06-13 13:35:10,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:10,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:35:10,870.870 INFO    ] No update needed
[2026-06-13 13:35:10,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 13:35:10,891.891 INFO    ] 200
[2026-06-13 13:35:10,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:10,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:35:10,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:10,960.960 INFO    ] No camera update needed
[2026-06-13 13:35:10,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:35:10,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:35:10,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:35:10,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:13,011.011 INFO    ] ================================================
[2026-06-13 13:35:13,026.026 INFO    ] Launching Daemon at Sat Jun 13 13:35:13 IST 2026
[2026-06-13 13:35:13,037.037 INFO    ] ================================================
[2026-06-13 13:35:13,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:13
[2026-06-13 13:35:13,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:13,834.834 INFO    ] Initializing speech engine...
[2026-06-13 13:35:13,846.846 INFO    ] 2026-06-13 13:35:13
[2026-06-13 13:35:14,063.063 INFO    ] 2026-06-13 13:35:14
[2026-06-13 13:35:14,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:14,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:14,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:14,474.474 INFO    ] time= 13/06/2026 13:35:14
[2026-06-13 13:35:14,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:14,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:14,626.626 INFO    ] No existing commands found in stream
[2026-06-13 13:35:19,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:35:19,640.640 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 13:35:21,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:35:21,515.515 INFO    ] Checking for system updates...
[2026-06-13 13:35:21,539.539 INFO    ] 200
[2026-06-13 13:35:21,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:21,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:21,574.574 INFO    ] No update needed
[2026-06-13 13:35:21,576.576 INFO    ] Checking for camera pi updates...
[2026-06-13 13:35:21,598.598 INFO    ] 200
[2026-06-13 13:35:21,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:21,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:35:21,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:21,671.671 INFO    ] No camera update needed
[2026-06-13 13:35:21,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:35:21,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:35:21,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:35:21,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:23,719.719 INFO    ] ================================================
[2026-06-13 13:35:23,734.734 INFO    ] Launching Daemon at Sat Jun 13 13:35:23 IST 2026
[2026-06-13 13:35:23,745.745 INFO    ] ================================================
[2026-06-13 13:35:24,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:24
[2026-06-13 13:35:24,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:24,580.580 INFO    ] Initializing speech engine...
[2026-06-13 13:35:24,585.585 INFO    ] 2026-06-13 13:35:24
[2026-06-13 13:35:24,794.794 INFO    ] 2026-06-13 13:35:24
[2026-06-13 13:35:24,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:25,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:25,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:25,195.195 INFO    ] time= 13/06/2026 13:35:25
[2026-06-13 13:35:25,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:25,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:25,309.309 INFO    ] No existing commands found in stream
[2026-06-13 13:35:30,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:35:30,323.323 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 13:35:31,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:35:31,966.966 INFO    ] Checking for system updates...
[2026-06-13 13:35:32,014.014 INFO    ] 200
[2026-06-13 13:35:32,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:32,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:35:32,102.102 INFO    ] No update needed
[2026-06-13 13:35:32,105.105 INFO    ] Checking for camera pi updates...
[2026-06-13 13:35:32,144.144 INFO    ] 200
[2026-06-13 13:35:32,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:32,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:35:32,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:35:32,261.261 INFO    ] No camera update needed
[2026-06-13 13:35:32,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:35:32,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:35:32,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:35:32,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:34,321.321 INFO    ] ================================================
[2026-06-13 13:35:34,336.336 INFO    ] Launching Daemon at Sat Jun 13 13:35:34 IST 2026
[2026-06-13 13:35:34,346.346 INFO    ] ================================================
[2026-06-13 13:35:34,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:34
[2026-06-13 13:35:34,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:35,138.138 INFO    ] Initializing speech engine...
[2026-06-13 13:35:35,144.144 INFO    ] 2026-06-13 13:35:35
[2026-06-13 13:35:35,349.349 INFO    ] 2026-06-13 13:35:35
[2026-06-13 13:35:35,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:35,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:35,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:35,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:35,763.763 INFO    ] time= 13/06/2026 13:35:35
[2026-06-13 13:35:35,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:35,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:35,869.869 INFO    ] No existing commands found in stream
[2026-06-13 13:35:40,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:35:40,882.882 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 13:35:44,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:35:44,847.847 INFO    ] Checking for system updates...
[2026-06-13 13:35:44,868.868 INFO    ] 200
[2026-06-13 13:35:44,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:44,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:44,903.903 INFO    ] No update needed
[2026-06-13 13:35:44,904.904 INFO    ] Checking for camera pi updates...
[2026-06-13 13:35:44,925.925 INFO    ] 200
[2026-06-13 13:35:44,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:44,951.951 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:35:44,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:45,000.000 INFO    ] No camera update needed
[2026-06-13 13:35:45,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:35:45,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:35:45,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:35:45,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:47,046.046 INFO    ] ================================================
[2026-06-13 13:35:47,061.061 INFO    ] Launching Daemon at Sat Jun 13 13:35:47 IST 2026
[2026-06-13 13:35:47,072.072 INFO    ] ================================================
[2026-06-13 13:35:47,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:47
[2026-06-13 13:35:47,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:47,896.896 INFO    ] Initializing speech engine...
[2026-06-13 13:35:47,901.901 INFO    ] 2026-06-13 13:35:47
[2026-06-13 13:35:48,133.133 INFO    ] 2026-06-13 13:35:48
[2026-06-13 13:35:48,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:48,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:48,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:48,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:48,558.558 INFO    ] time= 13/06/2026 13:35:48
[2026-06-13 13:35:48,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:48,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:48,688.688 INFO    ] No existing commands found in stream
[2026-06-13 13:35:53,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:35:53,701.701 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 13:35:55,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:35:55,775.775 INFO    ] Checking for system updates...
[2026-06-13 13:35:55,796.796 INFO    ] 200
[2026-06-13 13:35:55,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:55,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:55,830.830 INFO    ] No update needed
[2026-06-13 13:35:55,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 13:35:55,851.851 INFO    ] 200
[2026-06-13 13:35:55,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:35:55,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:35:55,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:35:55,918.918 INFO    ] No camera update needed
[2026-06-13 13:35:55,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:35:55,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:35:55,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:35:55,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:35:57,964.964 INFO    ] ================================================
[2026-06-13 13:35:57,980.980 INFO    ] Launching Daemon at Sat Jun 13 13:35:57 IST 2026
[2026-06-13 13:35:57,990.990 INFO    ] ================================================
[2026-06-13 13:35:58,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:35:58
[2026-06-13 13:35:58,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:35:58,770.770 INFO    ] Initializing speech engine...
[2026-06-13 13:35:58,774.774 INFO    ] 2026-06-13 13:35:58
[2026-06-13 13:35:58,991.991 INFO    ] 2026-06-13 13:35:58
[2026-06-13 13:35:59,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:35:59,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:35:59,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:35:59,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:35:59,500.500 INFO    ] time= 13/06/2026 13:35:59
[2026-06-13 13:35:59,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:35:59,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:35:59,734.734 INFO    ] No existing commands found in stream
[2026-06-13 13:36:04,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:04,750.750 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 13:36:07,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:36:07,615.615 INFO    ] Checking for system updates...
[2026-06-13 13:36:07,636.636 INFO    ] 200
[2026-06-13 13:36:07,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:07,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:07,671.671 INFO    ] No update needed
[2026-06-13 13:36:07,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 13:36:07,693.693 INFO    ] 200
[2026-06-13 13:36:07,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:07,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:36:07,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:36:07,758.758 INFO    ] No camera update needed
[2026-06-13 13:36:07,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:36:07,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:36:07,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:36:07,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:36:09,807.807 INFO    ] ================================================
[2026-06-13 13:36:09,822.822 INFO    ] Launching Daemon at Sat Jun 13 13:36:09 IST 2026
[2026-06-13 13:36:09,833.833 INFO    ] ================================================
[2026-06-13 13:36:10,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:36:10
[2026-06-13 13:36:10,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:36:10,632.632 INFO    ] Initializing speech engine...
[2026-06-13 13:36:10,638.638 INFO    ] 2026-06-13 13:36:10
[2026-06-13 13:36:10,848.848 INFO    ] 2026-06-13 13:36:10
[2026-06-13 13:36:10,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:36:11,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:36:11,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:36:11,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:36:11,239.239 INFO    ] time= 13/06/2026 13:36:11
[2026-06-13 13:36:11,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:36:11,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:36:11,316.316 INFO    ] No existing commands found in stream
[2026-06-13 13:36:16,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:16,354.354 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 13:36:17,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:36:17,962.962 INFO    ] Checking for system updates...
[2026-06-13 13:36:17,983.983 INFO    ] 200
[2026-06-13 13:36:17,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:18,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:18,020.020 INFO    ] No update needed
[2026-06-13 13:36:18,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 13:36:18,041.041 INFO    ] 200
[2026-06-13 13:36:18,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:18,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:36:18,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:18,106.106 INFO    ] No camera update needed
[2026-06-13 13:36:18,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:36:18,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:36:18,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:36:18,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:36:20,154.154 INFO    ] ================================================
[2026-06-13 13:36:20,169.169 INFO    ] Launching Daemon at Sat Jun 13 13:36:20 IST 2026
[2026-06-13 13:36:20,180.180 INFO    ] ================================================
[2026-06-13 13:36:20,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:36:20
[2026-06-13 13:36:20,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:36:20,964.964 INFO    ] Initializing speech engine...
[2026-06-13 13:36:20,973.973 INFO    ] 2026-06-13 13:36:20
[2026-06-13 13:36:21,179.179 INFO    ] 2026-06-13 13:36:21
[2026-06-13 13:36:21,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:36:21,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:36:21,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:36:21,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:36:21,595.595 INFO    ] time= 13/06/2026 13:36:21
[2026-06-13 13:36:21,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:36:21,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:36:21,695.695 INFO    ] No existing commands found in stream
[2026-06-13 13:36:26,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:26,709.709 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 13:36:28,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:36:28,912.912 INFO    ] Checking for system updates...
[2026-06-13 13:36:28,933.933 INFO    ] 200
[2026-06-13 13:36:28,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:28,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:28,967.967 INFO    ] No update needed
[2026-06-13 13:36:28,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 13:36:28,989.989 INFO    ] 200
[2026-06-13 13:36:28,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:29,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:36:29,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:29,056.056 INFO    ] No camera update needed
[2026-06-13 13:36:29,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:36:29,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:36:29,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:36:29,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:36:31,105.105 INFO    ] ================================================
[2026-06-13 13:36:31,120.120 INFO    ] Launching Daemon at Sat Jun 13 13:36:31 IST 2026
[2026-06-13 13:36:31,130.130 INFO    ] ================================================
[2026-06-13 13:36:31,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:36:31
[2026-06-13 13:36:31,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:36:31,929.929 INFO    ] Initializing speech engine...
[2026-06-13 13:36:31,931.931 INFO    ] 2026-06-13 13:36:31
[2026-06-13 13:36:32,125.125 INFO    ] 2026-06-13 13:36:32
[2026-06-13 13:36:32,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:36:32,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:36:32,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:36:32,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:36:32,457.457 INFO    ] time= 13/06/2026 13:36:32
[2026-06-13 13:36:32,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:36:32,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:36:32,584.584 INFO    ] No existing commands found in stream
[2026-06-13 13:36:37,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:37,621.621 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 13:36:40,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:36:40,135.135 INFO    ] Checking for system updates...
[2026-06-13 13:36:40,155.155 INFO    ] 200
[2026-06-13 13:36:40,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:40,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:40,191.191 INFO    ] No update needed
[2026-06-13 13:36:40,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 13:36:40,212.212 INFO    ] 200
[2026-06-13 13:36:40,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:40,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:36:40,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:40,280.280 INFO    ] No camera update needed
[2026-06-13 13:36:40,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:36:40,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:36:40,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:36:40,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:36:42,327.327 INFO    ] ================================================
[2026-06-13 13:36:42,342.342 INFO    ] Launching Daemon at Sat Jun 13 13:36:42 IST 2026
[2026-06-13 13:36:42,352.352 INFO    ] ================================================
[2026-06-13 13:36:42,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:36:42
[2026-06-13 13:36:43,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:36:43,147.147 INFO    ] Initializing speech engine...
[2026-06-13 13:36:43,157.157 INFO    ] 2026-06-13 13:36:43
[2026-06-13 13:36:43,362.362 INFO    ] 2026-06-13 13:36:43
[2026-06-13 13:36:43,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:36:43,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:36:43,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:36:43,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:36:43,783.783 INFO    ] time= 13/06/2026 13:36:43
[2026-06-13 13:36:43,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:36:43,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:36:43,883.883 INFO    ] No existing commands found in stream
[2026-06-13 13:36:48,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:48,895.895 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 13:36:50,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:36:50,195.195 INFO    ] Checking for system updates...
[2026-06-13 13:36:50,215.215 INFO    ] 200
[2026-06-13 13:36:50,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:50,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:50,248.248 INFO    ] No update needed
[2026-06-13 13:36:50,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 13:36:50,273.273 INFO    ] 200
[2026-06-13 13:36:50,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:36:50,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:36:50,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:36:50,434.434 INFO    ] No camera update needed
[2026-06-13 13:36:50,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:36:50,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:36:50,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:36:50,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:36:52,482.482 INFO    ] ================================================
[2026-06-13 13:36:52,496.496 INFO    ] Launching Daemon at Sat Jun 13 13:36:52 IST 2026
[2026-06-13 13:36:52,507.507 INFO    ] ================================================
[2026-06-13 13:36:52,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:36:52
[2026-06-13 13:36:53,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:36:53,354.354 INFO    ] Initializing speech engine...
[2026-06-13 13:36:53,364.364 INFO    ] 2026-06-13 13:36:53
[2026-06-13 13:36:53,573.573 INFO    ] 2026-06-13 13:36:53
[2026-06-13 13:36:53,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:36:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:36:53,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:36:53,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:36:53,915.915 INFO    ] time= 13/06/2026 13:36:53
[2026-06-13 13:36:53,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:36:54,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:36:54,073.073 INFO    ] No existing commands found in stream
[2026-06-13 13:36:59,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:36:59,085.085 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 13:37:02,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:37:02,827.827 INFO    ] Checking for system updates...
[2026-06-13 13:37:02,867.867 INFO    ] 200
[2026-06-13 13:37:02,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:02,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:02,936.936 INFO    ] No update needed
[2026-06-13 13:37:02,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:02,978.978 INFO    ] 200
[2026-06-13 13:37:02,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:03,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:03,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:03,053.053 INFO    ] No camera update needed
[2026-06-13 13:37:03,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:03,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:03,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:03,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:37:05,107.107 INFO    ] ================================================
[2026-06-13 13:37:05,122.122 INFO    ] Launching Daemon at Sat Jun 13 13:37:05 IST 2026
[2026-06-13 13:37:05,133.133 INFO    ] ================================================
[2026-06-13 13:37:05,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:37:05
[2026-06-13 13:37:05,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:37:05,978.978 INFO    ] Initializing speech engine...
[2026-06-13 13:37:05,987.987 INFO    ] 2026-06-13 13:37:05
[2026-06-13 13:37:06,191.191 INFO    ] 2026-06-13 13:37:06
[2026-06-13 13:37:06,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:37:06,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:37:06,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:37:06,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:37:06,619.619 INFO    ] time= 13/06/2026 13:37:06
[2026-06-13 13:37:06,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:37:06,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:37:06,791.791 INFO    ] No existing commands found in stream
[2026-06-13 13:37:11,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:37:11,815.815 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 13:37:14,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:37:14,510.510 INFO    ] Checking for system updates...
[2026-06-13 13:37:14,532.532 INFO    ] 200
[2026-06-13 13:37:14,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:14,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:14,567.567 INFO    ] No update needed
[2026-06-13 13:37:14,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:14,588.588 INFO    ] 200
[2026-06-13 13:37:14,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:14,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:14,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:14,653.653 INFO    ] No camera update needed
[2026-06-13 13:37:14,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:14,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:14,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:14,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:37:16,702.702 INFO    ] ================================================
[2026-06-13 13:37:16,716.716 INFO    ] Launching Daemon at Sat Jun 13 13:37:16 IST 2026
[2026-06-13 13:37:16,728.728 INFO    ] ================================================
[2026-06-13 13:37:17,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:37:17
[2026-06-13 13:37:17,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:37:17,553.553 INFO    ] Initializing speech engine...
[2026-06-13 13:37:17,558.558 INFO    ] 2026-06-13 13:37:17
[2026-06-13 13:37:17,743.743 INFO    ] 2026-06-13 13:37:17
[2026-06-13 13:37:17,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:37:17,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:37:17,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:37:18,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:37:18,114.114 INFO    ] time= 13/06/2026 13:37:18
[2026-06-13 13:37:18,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:37:18,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:37:18,302.302 INFO    ] No existing commands found in stream
[2026-06-13 13:37:23,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:37:23,324.324 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 13:37:24,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:37:24,390.390 INFO    ] Checking for system updates...
[2026-06-13 13:37:24,411.411 INFO    ] 200
[2026-06-13 13:37:24,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:24,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:24,446.446 INFO    ] No update needed
[2026-06-13 13:37:24,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:24,468.468 INFO    ] 200
[2026-06-13 13:37:24,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:24,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:24,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:24,535.535 INFO    ] No camera update needed
[2026-06-13 13:37:24,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:24,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:24,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:24,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:37:26,582.582 INFO    ] ================================================
[2026-06-13 13:37:26,598.598 INFO    ] Launching Daemon at Sat Jun 13 13:37:26 IST 2026
[2026-06-13 13:37:26,609.609 INFO    ] ================================================
[2026-06-13 13:37:26,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:37:26
[2026-06-13 13:37:27,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:37:27,459.459 INFO    ] Initializing speech engine...
[2026-06-13 13:37:27,465.465 INFO    ] 2026-06-13 13:37:27
[2026-06-13 13:37:27,675.675 INFO    ] 2026-06-13 13:37:27
[2026-06-13 13:37:27,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:37:27,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:37:27,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:37:28,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:37:28,102.102 INFO    ] time= 13/06/2026 13:37:28
[2026-06-13 13:37:28,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:37:28,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:37:28,204.204 INFO    ] No existing commands found in stream
[2026-06-13 13:37:33,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:37:33,218.218 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 13:37:33,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:37:33,761.761 INFO    ] Checking for system updates...
[2026-06-13 13:37:33,782.782 INFO    ] 200
[2026-06-13 13:37:33,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:33,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:33,816.816 INFO    ] No update needed
[2026-06-13 13:37:33,818.818 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:33,841.841 INFO    ] 200
[2026-06-13 13:37:33,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:33,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:33,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:33,910.910 INFO    ] No camera update needed
[2026-06-13 13:37:33,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:33,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:33,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:33,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:37:35,958.958 INFO    ] ================================================
[2026-06-13 13:37:35,974.974 INFO    ] Launching Daemon at Sat Jun 13 13:37:35 IST 2026
[2026-06-13 13:37:35,985.985 INFO    ] ================================================
[2026-06-13 13:37:36,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:37:36
[2026-06-13 13:37:36,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:37:36,779.779 INFO    ] Initializing speech engine...
[2026-06-13 13:37:36,784.784 INFO    ] 2026-06-13 13:37:36
[2026-06-13 13:37:36,989.989 INFO    ] 2026-06-13 13:37:36
[2026-06-13 13:37:37,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:37:37,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:37:37,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:37:37,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:37:37,391.391 INFO    ] time= 13/06/2026 13:37:37
[2026-06-13 13:37:37,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:37:37,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:37:37,502.502 INFO    ] No existing commands found in stream
[2026-06-13 13:37:42,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:37:42,515.515 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 13:37:46,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:37:46,445.445 INFO    ] Checking for system updates...
[2026-06-13 13:37:46,468.468 INFO    ] 200
[2026-06-13 13:37:46,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:46,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:46,504.504 INFO    ] No update needed
[2026-06-13 13:37:46,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:46,528.528 INFO    ] 200
[2026-06-13 13:37:46,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:46,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:46,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:37:46,594.594 INFO    ] No camera update needed
[2026-06-13 13:37:46,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:46,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:46,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:46,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:37:48,643.643 INFO    ] ================================================
[2026-06-13 13:37:48,658.658 INFO    ] Launching Daemon at Sat Jun 13 13:37:48 IST 2026
[2026-06-13 13:37:48,669.669 INFO    ] ================================================
[2026-06-13 13:37:49,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:37:49
[2026-06-13 13:37:49,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:37:49,527.527 INFO    ] Initializing speech engine...
[2026-06-13 13:37:49,533.533 INFO    ] 2026-06-13 13:37:49
[2026-06-13 13:37:49,742.742 INFO    ] 2026-06-13 13:37:49
[2026-06-13 13:37:49,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:37:49,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:37:49,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:37:50,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:37:50,156.156 INFO    ] time= 13/06/2026 13:37:50
[2026-06-13 13:37:50,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:37:50,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:37:50,254.254 INFO    ] No existing commands found in stream
[2026-06-13 13:37:55,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:37:55,266.266 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 13:37:58,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:37:58,352.352 INFO    ] Checking for system updates...
[2026-06-13 13:37:58,373.373 INFO    ] 200
[2026-06-13 13:37:58,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:58,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:58,407.407 INFO    ] No update needed
[2026-06-13 13:37:58,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 13:37:58,428.428 INFO    ] 200
[2026-06-13 13:37:58,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:37:58,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:37:58,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:37:58,492.492 INFO    ] No camera update needed
[2026-06-13 13:37:58,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:37:58,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:37:58,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:37:58,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:00,540.540 INFO    ] ================================================
[2026-06-13 13:38:00,556.556 INFO    ] Launching Daemon at Sat Jun 13 13:38:00 IST 2026
[2026-06-13 13:38:00,568.568 INFO    ] ================================================
[2026-06-13 13:38:00,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:00
[2026-06-13 13:38:01,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:01,565.565 INFO    ] Initializing speech engine...
[2026-06-13 13:38:01,574.574 INFO    ] 2026-06-13 13:38:01
[2026-06-13 13:38:01,815.815 INFO    ] 2026-06-13 13:38:01
[2026-06-13 13:38:01,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:01,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:01,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:02,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:02,097.097 INFO    ] time= 13/06/2026 13:38:02
[2026-06-13 13:38:02,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:02,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:02,221.221 INFO    ] No existing commands found in stream
[2026-06-13 13:38:07,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:38:07,249.249 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 13:38:08,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:38:08,457.457 INFO    ] Checking for system updates...
[2026-06-13 13:38:08,479.479 INFO    ] 200
[2026-06-13 13:38:08,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:08,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:38:08,514.514 INFO    ] No update needed
[2026-06-13 13:38:08,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 13:38:08,535.535 INFO    ] 200
[2026-06-13 13:38:08,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:08,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:38:08,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:38:08,608.608 INFO    ] No camera update needed
[2026-06-13 13:38:08,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:38:08,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:38:08,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:38:08,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:10,657.657 INFO    ] ================================================
[2026-06-13 13:38:10,672.672 INFO    ] Launching Daemon at Sat Jun 13 13:38:10 IST 2026
[2026-06-13 13:38:10,684.684 INFO    ] ================================================
[2026-06-13 13:38:11,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:11
[2026-06-13 13:38:11,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:11,464.464 INFO    ] Initializing speech engine...
[2026-06-13 13:38:11,476.476 INFO    ] 2026-06-13 13:38:11
[2026-06-13 13:38:11,682.682 INFO    ] 2026-06-13 13:38:11
[2026-06-13 13:38:11,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:11,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:11,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:12,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:12,090.090 INFO    ] time= 13/06/2026 13:38:12
[2026-06-13 13:38:12,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:12,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:12,194.194 INFO    ] No existing commands found in stream
[2026-06-13 13:38:17,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:38:17,203.203 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 13:38:18,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:38:18,120.120 INFO    ] Checking for system updates...
[2026-06-13 13:38:18,140.140 INFO    ] 200
[2026-06-13 13:38:18,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:18,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:18,173.173 INFO    ] No update needed
[2026-06-13 13:38:18,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 13:38:18,194.194 INFO    ] 200
[2026-06-13 13:38:18,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:18,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:38:18,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:18,260.260 INFO    ] No camera update needed
[2026-06-13 13:38:18,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:38:18,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:38:18,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:38:18,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:20,307.307 INFO    ] ================================================
[2026-06-13 13:38:20,323.323 INFO    ] Launching Daemon at Sat Jun 13 13:38:20 IST 2026
[2026-06-13 13:38:20,335.335 INFO    ] ================================================
[2026-06-13 13:38:20,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:20
[2026-06-13 13:38:20,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:21,129.129 INFO    ] Initializing speech engine...
[2026-06-13 13:38:21,132.132 INFO    ] 2026-06-13 13:38:21
[2026-06-13 13:38:21,362.362 INFO    ] 2026-06-13 13:38:21
[2026-06-13 13:38:21,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:21,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:21,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:21,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:21,765.765 INFO    ] time= 13/06/2026 13:38:21
[2026-06-13 13:38:21,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:21,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:21,926.926 INFO    ] No existing commands found in stream
[2026-06-13 13:38:26,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:38:26,939.939 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 13:38:29,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:38:29,660.660 INFO    ] Checking for system updates...
[2026-06-13 13:38:29,680.680 INFO    ] 200
[2026-06-13 13:38:29,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:29,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:29,714.714 INFO    ] No update needed
[2026-06-13 13:38:29,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 13:38:29,735.735 INFO    ] 200
[2026-06-13 13:38:29,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:29,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:38:29,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:29,798.798 INFO    ] No camera update needed
[2026-06-13 13:38:29,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:38:29,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:38:29,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:38:29,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:31,838.838 INFO    ] ================================================
[2026-06-13 13:38:31,846.846 INFO    ] Launching Daemon at Sat Jun 13 13:38:31 IST 2026
[2026-06-13 13:38:31,853.853 INFO    ] ================================================
[2026-06-13 13:38:32,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:32
[2026-06-13 13:38:32,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:32,662.662 INFO    ] Initializing speech engine...
[2026-06-13 13:38:32,673.673 INFO    ] 2026-06-13 13:38:32
[2026-06-13 13:38:32,876.876 INFO    ] 2026-06-13 13:38:32
[2026-06-13 13:38:32,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:33,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:33,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:33,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:33,282.282 INFO    ] time= 13/06/2026 13:38:33
[2026-06-13 13:38:33,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:33,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:33,391.391 INFO    ] No existing commands found in stream
[2026-06-13 13:38:38,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:38:38,404.404 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 13:38:41,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:38:41,099.099 INFO    ] Checking for system updates...
[2026-06-13 13:38:41,139.139 INFO    ] 200
[2026-06-13 13:38:41,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:41,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:41,199.199 INFO    ] No update needed
[2026-06-13 13:38:41,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 13:38:41,239.239 INFO    ] 200
[2026-06-13 13:38:41,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:41,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:38:41,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:38:41,300.300 INFO    ] No camera update needed
[2026-06-13 13:38:41,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:38:41,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:38:41,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:38:41,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:43,349.349 INFO    ] ================================================
[2026-06-13 13:38:43,365.365 INFO    ] Launching Daemon at Sat Jun 13 13:38:43 IST 2026
[2026-06-13 13:38:43,376.376 INFO    ] ================================================
[2026-06-13 13:38:43,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:43
[2026-06-13 13:38:44,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:44,144.144 INFO    ] Initializing speech engine...
[2026-06-13 13:38:44,147.147 INFO    ] 2026-06-13 13:38:44
[2026-06-13 13:38:44,368.368 INFO    ] 2026-06-13 13:38:44
[2026-06-13 13:38:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:44,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:44,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:44,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:44,783.783 INFO    ] time= 13/06/2026 13:38:44
[2026-06-13 13:38:44,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:44,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:44,890.890 INFO    ] No existing commands found in stream
[2026-06-13 13:38:49,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:38:49,902.902 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 13:38:53,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:38:53,456.456 INFO    ] Checking for system updates...
[2026-06-13 13:38:53,477.477 INFO    ] 200
[2026-06-13 13:38:53,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:53,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:53,512.512 INFO    ] No update needed
[2026-06-13 13:38:53,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 13:38:53,533.533 INFO    ] 200
[2026-06-13 13:38:53,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:38:53,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:38:53,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:38:53,702.702 INFO    ] No camera update needed
[2026-06-13 13:38:53,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:38:53,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:38:53,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:38:53,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:38:55,750.750 INFO    ] ================================================
[2026-06-13 13:38:55,765.765 INFO    ] Launching Daemon at Sat Jun 13 13:38:55 IST 2026
[2026-06-13 13:38:55,776.776 INFO    ] ================================================
[2026-06-13 13:38:56,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:38:56
[2026-06-13 13:38:56,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:38:56,623.623 INFO    ] Initializing speech engine...
[2026-06-13 13:38:56,628.628 INFO    ] 2026-06-13 13:38:56
[2026-06-13 13:38:56,836.836 INFO    ] 2026-06-13 13:38:56
[2026-06-13 13:38:56,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:38:57,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:38:57,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:38:57,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:38:57,255.255 INFO    ] time= 13/06/2026 13:38:57
[2026-06-13 13:38:57,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:38:57,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:38:57,352.352 INFO    ] No existing commands found in stream
[2026-06-13 13:39:02,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:02,361.361 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 13:39:02,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:39:02,660.660 INFO    ] Checking for system updates...
[2026-06-13 13:39:02,682.682 INFO    ] 200
[2026-06-13 13:39:02,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:02,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:02,721.721 INFO    ] No update needed
[2026-06-13 13:39:02,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:02,749.749 INFO    ] 200
[2026-06-13 13:39:02,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:02,776.776 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:02,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:02,826.826 INFO    ] No camera update needed
[2026-06-13 13:39:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:02,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:02,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:02,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:04,879.879 INFO    ] ================================================
[2026-06-13 13:39:04,895.895 INFO    ] Launching Daemon at Sat Jun 13 13:39:04 IST 2026
[2026-06-13 13:39:04,906.906 INFO    ] ================================================
[2026-06-13 13:39:05,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:05
[2026-06-13 13:39:05,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:05,768.768 INFO    ] Initializing speech engine...
[2026-06-13 13:39:05,773.773 INFO    ] 2026-06-13 13:39:05
[2026-06-13 13:39:05,979.979 INFO    ] 2026-06-13 13:39:05
[2026-06-13 13:39:06,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:06,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:06,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:06,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:06,402.402 INFO    ] time= 13/06/2026 13:39:06
[2026-06-13 13:39:06,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:06,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:06,500.500 INFO    ] No existing commands found in stream
[2026-06-13 13:39:11,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:11,512.512 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 13:39:14,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:39:14,161.161 INFO    ] Checking for system updates...
[2026-06-13 13:39:14,182.182 INFO    ] 200
[2026-06-13 13:39:14,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:14,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:14,216.216 INFO    ] No update needed
[2026-06-13 13:39:14,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:14,237.237 INFO    ] 200
[2026-06-13 13:39:14,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:14,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:14,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:14,304.304 INFO    ] No camera update needed
[2026-06-13 13:39:14,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:14,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:14,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:14,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:16,355.355 INFO    ] ================================================
[2026-06-13 13:39:16,370.370 INFO    ] Launching Daemon at Sat Jun 13 13:39:16 IST 2026
[2026-06-13 13:39:16,382.382 INFO    ] ================================================
[2026-06-13 13:39:16,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:16
[2026-06-13 13:39:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:17,276.276 INFO    ] Initializing speech engine...
[2026-06-13 13:39:17,282.282 INFO    ] 2026-06-13 13:39:17
[2026-06-13 13:39:17,490.490 INFO    ] 2026-06-13 13:39:17
[2026-06-13 13:39:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:17,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:17,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:17,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:17,896.896 INFO    ] time= 13/06/2026 13:39:17
[2026-06-13 13:39:17,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:17,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:18,005.005 INFO    ] No existing commands found in stream
[2026-06-13 13:39:23,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:23,019.019 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 13:39:23,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:39:23,390.390 INFO    ] Checking for system updates...
[2026-06-13 13:39:23,411.411 INFO    ] 200
[2026-06-13 13:39:23,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:23,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:23,446.446 INFO    ] No update needed
[2026-06-13 13:39:23,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:23,468.468 INFO    ] 200
[2026-06-13 13:39:23,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:23,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:23,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:23,531.531 INFO    ] No camera update needed
[2026-06-13 13:39:23,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:23,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:23,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:23,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:25,577.577 INFO    ] ================================================
[2026-06-13 13:39:25,592.592 INFO    ] Launching Daemon at Sat Jun 13 13:39:25 IST 2026
[2026-06-13 13:39:25,603.603 INFO    ] ================================================
[2026-06-13 13:39:25,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:25
[2026-06-13 13:39:26,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:26,427.427 INFO    ] Initializing speech engine...
[2026-06-13 13:39:26,433.433 INFO    ] 2026-06-13 13:39:26
[2026-06-13 13:39:26,639.639 INFO    ] 2026-06-13 13:39:26
[2026-06-13 13:39:26,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:26,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:26,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:27,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:27,126.126 INFO    ] time= 13/06/2026 13:39:27
[2026-06-13 13:39:27,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:27,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:27,346.346 INFO    ] No existing commands found in stream
[2026-06-13 13:39:32,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:32,374.374 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 13:39:34,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:39:34,144.144 INFO    ] Checking for system updates...
[2026-06-13 13:39:34,167.167 INFO    ] 200
[2026-06-13 13:39:34,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:34,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:34,200.200 INFO    ] No update needed
[2026-06-13 13:39:34,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:34,221.221 INFO    ] 200
[2026-06-13 13:39:34,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:34,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:34,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:34,285.285 INFO    ] No camera update needed
[2026-06-13 13:39:34,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:34,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:34,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:34,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:36,332.332 INFO    ] ================================================
[2026-06-13 13:39:36,348.348 INFO    ] Launching Daemon at Sat Jun 13 13:39:36 IST 2026
[2026-06-13 13:39:36,358.358 INFO    ] ================================================
[2026-06-13 13:39:36,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:36
[2026-06-13 13:39:37,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:37,150.150 INFO    ] Initializing speech engine...
[2026-06-13 13:39:37,163.163 INFO    ] 2026-06-13 13:39:37
[2026-06-13 13:39:37,371.371 INFO    ] 2026-06-13 13:39:37
[2026-06-13 13:39:37,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:37,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:37,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:37,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:37,789.789 INFO    ] time= 13/06/2026 13:39:37
[2026-06-13 13:39:37,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:37,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:37,895.895 INFO    ] No existing commands found in stream
[2026-06-13 13:39:42,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:42,909.909 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 13:39:44,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:39:44,345.345 INFO    ] Checking for system updates...
[2026-06-13 13:39:44,368.368 INFO    ] 200
[2026-06-13 13:39:44,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:44,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:39:44,411.411 INFO    ] No update needed
[2026-06-13 13:39:44,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:44,432.432 INFO    ] 200
[2026-06-13 13:39:44,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:44,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:44,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:39:44,500.500 INFO    ] No camera update needed
[2026-06-13 13:39:44,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:44,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:44,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:44,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:46,546.546 INFO    ] ================================================
[2026-06-13 13:39:46,561.561 INFO    ] Launching Daemon at Sat Jun 13 13:39:46 IST 2026
[2026-06-13 13:39:46,572.572 INFO    ] ================================================
[2026-06-13 13:39:46,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:46
[2026-06-13 13:39:47,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:47,380.380 INFO    ] Initializing speech engine...
[2026-06-13 13:39:47,387.387 INFO    ] 2026-06-13 13:39:47
[2026-06-13 13:39:47,596.596 INFO    ] 2026-06-13 13:39:47
[2026-06-13 13:39:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:47,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:47,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:47,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:48,007.007 INFO    ] time= 13/06/2026 13:39:47
[2026-06-13 13:39:48,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:48,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:48,118.118 INFO    ] No existing commands found in stream
[2026-06-13 13:39:53,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:39:53,133.133 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 13:39:54,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:39:54,157.157 INFO    ] Checking for system updates...
[2026-06-13 13:39:54,179.179 INFO    ] 200
[2026-06-13 13:39:54,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:54,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:39:54,213.213 INFO    ] No update needed
[2026-06-13 13:39:54,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 13:39:54,234.234 INFO    ] 200
[2026-06-13 13:39:54,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:39:54,260.260 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:39:54,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:39:54,298.298 INFO    ] No camera update needed
[2026-06-13 13:39:54,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:39:54,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:39:54,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:39:54,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:39:56,347.347 INFO    ] ================================================
[2026-06-13 13:39:56,362.362 INFO    ] Launching Daemon at Sat Jun 13 13:39:56 IST 2026
[2026-06-13 13:39:56,373.373 INFO    ] ================================================
[2026-06-13 13:39:56,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:39:56
[2026-06-13 13:39:57,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:39:57,170.170 INFO    ] Initializing speech engine...
[2026-06-13 13:39:57,178.178 INFO    ] 2026-06-13 13:39:57
[2026-06-13 13:39:57,384.384 INFO    ] 2026-06-13 13:39:57
[2026-06-13 13:39:57,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:39:57,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:39:57,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:39:57,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:39:57,789.789 INFO    ] time= 13/06/2026 13:39:57
[2026-06-13 13:39:57,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:39:57,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:39:57,899.899 INFO    ] No existing commands found in stream
[2026-06-13 13:40:02,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:40:02,913.913 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 13:40:08,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:40:08,481.481 INFO    ] Checking for system updates...
[2026-06-13 13:40:08,518.518 INFO    ] 200
[2026-06-13 13:40:08,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:08,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:40:08,577.577 INFO    ] No update needed
[2026-06-13 13:40:08,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 13:40:08,616.616 INFO    ] 200
[2026-06-13 13:40:08,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:08,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:40:08,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:40:08,705.705 INFO    ] No camera update needed
[2026-06-13 13:40:08,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:40:08,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:40:08,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:40:08,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:40:10,762.762 INFO    ] ================================================
[2026-06-13 13:40:10,777.777 INFO    ] Launching Daemon at Sat Jun 13 13:40:10 IST 2026
[2026-06-13 13:40:10,788.788 INFO    ] ================================================
[2026-06-13 13:40:11,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:40:11
[2026-06-13 13:40:11,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:40:11,612.612 INFO    ] Initializing speech engine...
[2026-06-13 13:40:11,617.617 INFO    ] 2026-06-13 13:40:11
[2026-06-13 13:40:11,890.890 INFO    ] 2026-06-13 13:40:11
[2026-06-13 13:40:11,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:40:12,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:40:12,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:40:12,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:40:12,273.273 INFO    ] time= 13/06/2026 13:40:12
[2026-06-13 13:40:12,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:40:12,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:40:12,397.397 INFO    ] No existing commands found in stream
[2026-06-13 13:40:17,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:40:17,413.413 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 13:40:17,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:40:17,915.915 INFO    ] Checking for system updates...
[2026-06-13 13:40:17,936.936 INFO    ] 200
[2026-06-13 13:40:17,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:17,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:17,969.969 INFO    ] No update needed
[2026-06-13 13:40:17,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 13:40:17,990.990 INFO    ] 200
[2026-06-13 13:40:17,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:18,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:40:18,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:18,054.054 INFO    ] No camera update needed
[2026-06-13 13:40:18,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:40:18,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:40:18,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:40:18,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:40:20,102.102 INFO    ] ================================================
[2026-06-13 13:40:20,117.117 INFO    ] Launching Daemon at Sat Jun 13 13:40:20 IST 2026
[2026-06-13 13:40:20,127.127 INFO    ] ================================================
[2026-06-13 13:40:20,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:40:20
[2026-06-13 13:40:20,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:40:20,903.903 INFO    ] Initializing speech engine...
[2026-06-13 13:40:20,913.913 INFO    ] 2026-06-13 13:40:20
[2026-06-13 13:40:21,120.120 INFO    ] 2026-06-13 13:40:21
[2026-06-13 13:40:21,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:40:21,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:40:21,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:40:21,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:40:21,526.526 INFO    ] time= 13/06/2026 13:40:21
[2026-06-13 13:40:21,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:40:21,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:40:21,643.643 INFO    ] No existing commands found in stream
[2026-06-13 13:40:26,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:40:26,654.654 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 13:40:30,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:40:30,406.406 INFO    ] Checking for system updates...
[2026-06-13 13:40:30,428.428 INFO    ] 200
[2026-06-13 13:40:30,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:30,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:40:30,461.461 INFO    ] No update needed
[2026-06-13 13:40:30,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 13:40:30,482.482 INFO    ] 200
[2026-06-13 13:40:30,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:30,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:40:30,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:40:30,551.551 INFO    ] No camera update needed
[2026-06-13 13:40:30,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:40:30,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:40:30,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:40:30,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:40:32,600.600 INFO    ] ================================================
[2026-06-13 13:40:32,615.615 INFO    ] Launching Daemon at Sat Jun 13 13:40:32 IST 2026
[2026-06-13 13:40:32,625.625 INFO    ] ================================================
[2026-06-13 13:40:32,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:40:32
[2026-06-13 13:40:33,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:40:33,414.414 INFO    ] Initializing speech engine...
[2026-06-13 13:40:33,419.419 INFO    ] 2026-06-13 13:40:33
[2026-06-13 13:40:33,647.647 INFO    ] 2026-06-13 13:40:33
[2026-06-13 13:40:33,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:40:33,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:40:33,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:40:34,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:40:34,039.039 INFO    ] time= 13/06/2026 13:40:34
[2026-06-13 13:40:34,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:40:34,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:40:34,276.276 INFO    ] No existing commands found in stream
[2026-06-13 13:40:39,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:40:39,304.304 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 13:40:39,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:40:39,626.626 INFO    ] Checking for system updates...
[2026-06-13 13:40:39,647.647 INFO    ] 200
[2026-06-13 13:40:39,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:39,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:39,681.681 INFO    ] No update needed
[2026-06-13 13:40:39,683.683 INFO    ] Checking for camera pi updates...
[2026-06-13 13:40:39,703.703 INFO    ] 200
[2026-06-13 13:40:39,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:39,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:40:39,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:39,770.770 INFO    ] No camera update needed
[2026-06-13 13:40:39,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:40:39,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:40:39,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:40:39,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:40:41,818.818 INFO    ] ================================================
[2026-06-13 13:40:41,833.833 INFO    ] Launching Daemon at Sat Jun 13 13:40:41 IST 2026
[2026-06-13 13:40:41,843.843 INFO    ] ================================================
[2026-06-13 13:40:42,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:40:42
[2026-06-13 13:40:42,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:40:42,675.675 INFO    ] Initializing speech engine...
[2026-06-13 13:40:42,680.680 INFO    ] 2026-06-13 13:40:42
[2026-06-13 13:40:42,890.890 INFO    ] 2026-06-13 13:40:42
[2026-06-13 13:40:42,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:40:43,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:40:43,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:40:43,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:40:43,291.291 INFO    ] time= 13/06/2026 13:40:43
[2026-06-13 13:40:43,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:40:43,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:40:43,412.412 INFO    ] No existing commands found in stream
[2026-06-13 13:40:48,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:40:48,426.426 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 13:40:52,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:40:52,134.134 INFO    ] Checking for system updates...
[2026-06-13 13:40:52,156.156 INFO    ] 200
[2026-06-13 13:40:52,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:52,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:52,190.190 INFO    ] No update needed
[2026-06-13 13:40:52,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 13:40:52,212.212 INFO    ] 200
[2026-06-13 13:40:52,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:40:52,237.237 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:40:52,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:40:52,277.277 INFO    ] No camera update needed
[2026-06-13 13:40:52,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:40:52,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:40:52,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:40:52,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:40:54,324.324 INFO    ] ================================================
[2026-06-13 13:40:54,339.339 INFO    ] Launching Daemon at Sat Jun 13 13:40:54 IST 2026
[2026-06-13 13:40:54,350.350 INFO    ] ================================================
[2026-06-13 13:40:54,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:40:54
[2026-06-13 13:40:54,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:40:55,121.121 INFO    ] Initializing speech engine...
[2026-06-13 13:40:55,129.129 INFO    ] 2026-06-13 13:40:55
[2026-06-13 13:40:55,342.342 INFO    ] 2026-06-13 13:40:55
[2026-06-13 13:40:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:40:55,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:40:55,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:40:55,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:40:55,757.757 INFO    ] time= 13/06/2026 13:40:55
[2026-06-13 13:40:55,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:40:55,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:40:55,864.864 INFO    ] No existing commands found in stream
[2026-06-13 13:41:00,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:00,881.881 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 13:41:01,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:41:01,796.796 INFO    ] Checking for system updates...
[2026-06-13 13:41:01,851.851 INFO    ] 200
[2026-06-13 13:41:01,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:01,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:41:01,923.923 INFO    ] No update needed
[2026-06-13 13:41:01,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:01,980.980 INFO    ] 200
[2026-06-13 13:41:01,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:02,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:02,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:41:02,201.201 INFO    ] No camera update needed
[2026-06-13 13:41:02,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:02,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:02,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:02,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:04,262.262 INFO    ] ================================================
[2026-06-13 13:41:04,277.277 INFO    ] Launching Daemon at Sat Jun 13 13:41:04 IST 2026
[2026-06-13 13:41:04,288.288 INFO    ] ================================================
[2026-06-13 13:41:04,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:04
[2026-06-13 13:41:05,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:41:05,502.502 INFO    ] Initializing speech engine...
[2026-06-13 13:41:05,513.513 INFO    ] 2026-06-13 13:41:05
[2026-06-13 13:41:05,718.718 INFO    ] 2026-06-13 13:41:05
[2026-06-13 13:41:05,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:41:05,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:41:05,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:41:06,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:41:06,116.116 INFO    ] time= 13/06/2026 13:41:06
[2026-06-13 13:41:06,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:41:06,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:41:06,238.238 INFO    ] No existing commands found in stream
[2026-06-13 13:41:11,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:11,252.252 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 13:41:13,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:41:13,325.325 INFO    ] Checking for system updates...
[2026-06-13 13:41:13,376.376 INFO    ] 200
[2026-06-13 13:41:13,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:13,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:13,415.415 INFO    ] No update needed
[2026-06-13 13:41:13,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:13,437.437 INFO    ] 200
[2026-06-13 13:41:13,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:13,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:13,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:13,502.502 INFO    ] No camera update needed
[2026-06-13 13:41:13,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:13,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:13,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:13,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:15,549.549 INFO    ] ================================================
[2026-06-13 13:41:15,564.564 INFO    ] Launching Daemon at Sat Jun 13 13:41:15 IST 2026
[2026-06-13 13:41:15,575.575 INFO    ] ================================================
[2026-06-13 13:41:16,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:16
[2026-06-13 13:41:16,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:41:16,824.824 INFO    ] Initializing speech engine...
[2026-06-13 13:41:16,832.832 INFO    ] 2026-06-13 13:41:16
[2026-06-13 13:41:17,042.042 INFO    ] 2026-06-13 13:41:17
[2026-06-13 13:41:17,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:41:17,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:41:17,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:41:17,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:41:17,431.431 INFO    ] time= 13/06/2026 13:41:17
[2026-06-13 13:41:17,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:41:17,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:41:17,557.557 INFO    ] No existing commands found in stream
[2026-06-13 13:41:22,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:22,569.569 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 13:41:25,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:41:25,439.439 INFO    ] Checking for system updates...
[2026-06-13 13:41:25,460.460 INFO    ] 200
[2026-06-13 13:41:25,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:25,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:25,496.496 INFO    ] No update needed
[2026-06-13 13:41:25,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:25,517.517 INFO    ] 200
[2026-06-13 13:41:25,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:25,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:25,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:25,583.583 INFO    ] No camera update needed
[2026-06-13 13:41:25,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:25,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:25,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:25,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:27,631.631 INFO    ] ================================================
[2026-06-13 13:41:27,646.646 INFO    ] Launching Daemon at Sat Jun 13 13:41:27 IST 2026
[2026-06-13 13:41:27,657.657 INFO    ] ================================================
[2026-06-13 13:41:28,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:28
[2026-06-13 13:41:28,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:41:28,486.486 INFO    ] Initializing speech engine...
[2026-06-13 13:41:28,492.492 INFO    ] 2026-06-13 13:41:28
[2026-06-13 13:41:28,695.695 INFO    ] 2026-06-13 13:41:28
[2026-06-13 13:41:28,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:41:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:41:28,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:41:29,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:41:29,104.104 INFO    ] time= 13/06/2026 13:41:29
[2026-06-13 13:41:29,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:41:29,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:41:29,210.210 INFO    ] No existing commands found in stream
[2026-06-13 13:41:34,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:34,222.222 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 13:41:37,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:41:37,831.831 INFO    ] Checking for system updates...
[2026-06-13 13:41:37,851.851 INFO    ] 200
[2026-06-13 13:41:37,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:37,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:41:37,885.885 INFO    ] No update needed
[2026-06-13 13:41:37,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:37,905.905 INFO    ] 200
[2026-06-13 13:41:37,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:37,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:37,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:41:37,970.970 INFO    ] No camera update needed
[2026-06-13 13:41:37,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:37,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:37,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:37,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:40,016.016 INFO    ] ================================================
[2026-06-13 13:41:40,031.031 INFO    ] Launching Daemon at Sat Jun 13 13:41:40 IST 2026
[2026-06-13 13:41:40,042.042 INFO    ] ================================================
[2026-06-13 13:41:40,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:40
[2026-06-13 13:41:40,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:41:40,847.847 INFO    ] Initializing speech engine...
[2026-06-13 13:41:40,858.858 INFO    ] 2026-06-13 13:41:40
[2026-06-13 13:41:41,063.063 INFO    ] 2026-06-13 13:41:41
[2026-06-13 13:41:41,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:41:41,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:41:41,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:41:41,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:41:41,471.471 INFO    ] time= 13/06/2026 13:41:41
[2026-06-13 13:41:41,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:41:41,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:41:41,590.590 INFO    ] No existing commands found in stream
[2026-06-13 13:41:46,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:46,602.602 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 13:41:47,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:41:47,856.856 INFO    ] Checking for system updates...
[2026-06-13 13:41:47,877.877 INFO    ] 200
[2026-06-13 13:41:47,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:47,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:47,913.913 INFO    ] No update needed
[2026-06-13 13:41:47,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:47,934.934 INFO    ] 200
[2026-06-13 13:41:47,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:47,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:48,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:41:48,002.002 INFO    ] No camera update needed
[2026-06-13 13:41:48,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:48,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:48,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:48,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:50,051.051 INFO    ] ================================================
[2026-06-13 13:41:50,066.066 INFO    ] Launching Daemon at Sat Jun 13 13:41:50 IST 2026
[2026-06-13 13:41:50,076.076 INFO    ] ================================================
[2026-06-13 13:41:50,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:50
[2026-06-13 13:41:50,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:41:50,944.944 INFO    ] Initializing speech engine...
[2026-06-13 13:41:50,948.948 INFO    ] 2026-06-13 13:41:50
[2026-06-13 13:41:51,157.157 INFO    ] 2026-06-13 13:41:51
[2026-06-13 13:41:51,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:41:51,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:41:51,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:41:51,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:41:51,572.572 INFO    ] time= 13/06/2026 13:41:51
[2026-06-13 13:41:51,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:41:51,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:41:51,679.679 INFO    ] No existing commands found in stream
[2026-06-13 13:41:56,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:41:56,692.692 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 13:41:57,255.255 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:41:57,257.257 INFO    ] Checking for system updates...
[2026-06-13 13:41:57,279.279 INFO    ] 200
[2026-06-13 13:41:57,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:57,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:57,312.312 INFO    ] No update needed
[2026-06-13 13:41:57,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 13:41:57,335.335 INFO    ] 200
[2026-06-13 13:41:57,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:41:57,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:41:57,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:41:57,400.400 INFO    ] No camera update needed
[2026-06-13 13:41:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:41:57,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:41:57,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:41:57,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:41:59,447.447 INFO    ] ================================================
[2026-06-13 13:41:59,462.462 INFO    ] Launching Daemon at Sat Jun 13 13:41:59 IST 2026
[2026-06-13 13:41:59,473.473 INFO    ] ================================================
[2026-06-13 13:41:59,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:41:59
[2026-06-13 13:42:00,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:00,298.298 INFO    ] Initializing speech engine...
[2026-06-13 13:42:00,303.303 INFO    ] 2026-06-13 13:42:00
[2026-06-13 13:42:00,509.509 INFO    ] 2026-06-13 13:42:00
[2026-06-13 13:42:00,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:00,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:00,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:00,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:00,919.919 INFO    ] time= 13/06/2026 13:42:00
[2026-06-13 13:42:00,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:00,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:01,030.030 INFO    ] No existing commands found in stream
[2026-06-13 13:42:06,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:06,043.043 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 13:42:08,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:42:08,240.240 INFO    ] Checking for system updates...
[2026-06-13 13:42:08,261.261 INFO    ] 200
[2026-06-13 13:42:08,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:08,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:08,296.296 INFO    ] No update needed
[2026-06-13 13:42:08,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:08,319.319 INFO    ] 200
[2026-06-13 13:42:08,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:08,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:08,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:08,393.393 INFO    ] No camera update needed
[2026-06-13 13:42:08,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:08,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:08,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:08,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:42:10,440.440 INFO    ] ================================================
[2026-06-13 13:42:10,455.455 INFO    ] Launching Daemon at Sat Jun 13 13:42:10 IST 2026
[2026-06-13 13:42:10,466.466 INFO    ] ================================================
[2026-06-13 13:42:10,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:42:10
[2026-06-13 13:42:11,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:11,280.280 INFO    ] Initializing speech engine...
[2026-06-13 13:42:11,294.294 INFO    ] 2026-06-13 13:42:11
[2026-06-13 13:42:11,512.512 INFO    ] 2026-06-13 13:42:11
[2026-06-13 13:42:11,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:11,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:11,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:11,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:11,933.933 INFO    ] time= 13/06/2026 13:42:11
[2026-06-13 13:42:11,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:11,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:12,062.062 INFO    ] No existing commands found in stream
[2026-06-13 13:42:17,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:17,076.076 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 13:42:17,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:42:17,529.529 INFO    ] Checking for system updates...
[2026-06-13 13:42:17,551.551 INFO    ] 200
[2026-06-13 13:42:17,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:17,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:17,584.584 INFO    ] No update needed
[2026-06-13 13:42:17,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:17,606.606 INFO    ] 200
[2026-06-13 13:42:17,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:17,634.634 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:17,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:17,672.672 INFO    ] No camera update needed
[2026-06-13 13:42:17,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:17,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:17,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:17,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:42:19,719.719 INFO    ] ================================================
[2026-06-13 13:42:19,734.734 INFO    ] Launching Daemon at Sat Jun 13 13:42:19 IST 2026
[2026-06-13 13:42:19,744.744 INFO    ] ================================================
[2026-06-13 13:42:20,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:42:20
[2026-06-13 13:42:20,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:20,550.550 INFO    ] Initializing speech engine...
[2026-06-13 13:42:20,555.555 INFO    ] 2026-06-13 13:42:20
[2026-06-13 13:42:20,762.762 INFO    ] 2026-06-13 13:42:20
[2026-06-13 13:42:20,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:20,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:21,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:21,190.190 INFO    ] time= 13/06/2026 13:42:21
[2026-06-13 13:42:21,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:21,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:21,328.328 INFO    ] No existing commands found in stream
[2026-06-13 13:42:26,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:26,361.361 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 13:42:27,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:42:27,678.678 INFO    ] Checking for system updates...
[2026-06-13 13:42:27,699.699 INFO    ] 200
[2026-06-13 13:42:27,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:27,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:42:27,734.734 INFO    ] No update needed
[2026-06-13 13:42:27,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:27,755.755 INFO    ] 200
[2026-06-13 13:42:27,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:27,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:27,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:42:27,815.815 INFO    ] No camera update needed
[2026-06-13 13:42:27,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:27,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:27,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:27,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:42:29,866.866 INFO    ] ================================================
[2026-06-13 13:42:29,881.881 INFO    ] Launching Daemon at Sat Jun 13 13:42:29 IST 2026
[2026-06-13 13:42:29,892.892 INFO    ] ================================================
[2026-06-13 13:42:30,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:42:30
[2026-06-13 13:42:30,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:30,675.675 INFO    ] Initializing speech engine...
[2026-06-13 13:42:30,689.689 INFO    ] 2026-06-13 13:42:30
[2026-06-13 13:42:30,908.908 INFO    ] 2026-06-13 13:42:30
[2026-06-13 13:42:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:31,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:31,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:31,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:31,338.338 INFO    ] time= 13/06/2026 13:42:31
[2026-06-13 13:42:31,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:31,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:31,466.466 INFO    ] No existing commands found in stream
[2026-06-13 13:42:36,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:36,476.476 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 13:42:38,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:42:38,010.010 INFO    ] Checking for system updates...
[2026-06-13 13:42:38,031.031 INFO    ] 200
[2026-06-13 13:42:38,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:38,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:38,065.065 INFO    ] No update needed
[2026-06-13 13:42:38,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:38,087.087 INFO    ] 200
[2026-06-13 13:42:38,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:38,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:38,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:38,155.155 INFO    ] No camera update needed
[2026-06-13 13:42:38,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:38,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:38,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:38,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:42:40,201.201 INFO    ] ================================================
[2026-06-13 13:42:40,216.216 INFO    ] Launching Daemon at Sat Jun 13 13:42:40 IST 2026
[2026-06-13 13:42:40,227.227 INFO    ] ================================================
[2026-06-13 13:42:40,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:42:40
[2026-06-13 13:42:40,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:41,037.037 INFO    ] Initializing speech engine...
[2026-06-13 13:42:41,042.042 INFO    ] 2026-06-13 13:42:41
[2026-06-13 13:42:41,245.245 INFO    ] 2026-06-13 13:42:41
[2026-06-13 13:42:41,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:41,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:41,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:41,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:41,646.646 INFO    ] time= 13/06/2026 13:42:41
[2026-06-13 13:42:41,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:41,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:41,761.761 INFO    ] No existing commands found in stream
[2026-06-13 13:42:46,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:46,774.774 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 13:42:48,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:42:48,480.480 INFO    ] Checking for system updates...
[2026-06-13 13:42:48,502.502 INFO    ] 200
[2026-06-13 13:42:48,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:48,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:42:48,537.537 INFO    ] No update needed
[2026-06-13 13:42:48,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:48,557.557 INFO    ] 200
[2026-06-13 13:42:48,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:48,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:48,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:42:48,621.621 INFO    ] No camera update needed
[2026-06-13 13:42:48,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:48,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:48,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:48,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:42:50,668.668 INFO    ] ================================================
[2026-06-13 13:42:50,683.683 INFO    ] Launching Daemon at Sat Jun 13 13:42:50 IST 2026
[2026-06-13 13:42:50,694.694 INFO    ] ================================================
[2026-06-13 13:42:51,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:42:51
[2026-06-13 13:42:51,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:42:51,530.530 INFO    ] Initializing speech engine...
[2026-06-13 13:42:51,536.536 INFO    ] 2026-06-13 13:42:51
[2026-06-13 13:42:51,741.741 INFO    ] 2026-06-13 13:42:51
[2026-06-13 13:42:51,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:42:51,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:42:51,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:42:52,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:42:52,137.137 INFO    ] time= 13/06/2026 13:42:52
[2026-06-13 13:42:52,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:42:52,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:42:52,257.257 INFO    ] No existing commands found in stream
[2026-06-13 13:42:57,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:42:57,271.271 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 13:42:58,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:42:58,665.665 INFO    ] Checking for system updates...
[2026-06-13 13:42:58,705.705 INFO    ] 200
[2026-06-13 13:42:58,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:58,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:58,771.771 INFO    ] No update needed
[2026-06-13 13:42:58,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 13:42:58,795.795 INFO    ] 200
[2026-06-13 13:42:58,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:42:58,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:42:58,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:42:58,860.860 INFO    ] No camera update needed
[2026-06-13 13:42:58,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:42:58,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:42:58,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:42:58,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:43:00,907.907 INFO    ] ================================================
[2026-06-13 13:43:00,924.924 INFO    ] Launching Daemon at Sat Jun 13 13:43:00 IST 2026
[2026-06-13 13:43:00,936.936 INFO    ] ================================================
[2026-06-13 13:43:01,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:43:01
[2026-06-13 13:43:01,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:43:01,903.903 INFO    ] Initializing speech engine...
[2026-06-13 13:43:01,910.910 INFO    ] 2026-06-13 13:43:01
[2026-06-13 13:43:02,185.185 INFO    ] 2026-06-13 13:43:02
[2026-06-13 13:43:02,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:43:02,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:43:02,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:43:02,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:43:02,578.578 INFO    ] time= 13/06/2026 13:43:02
[2026-06-13 13:43:02,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:43:02,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:43:02,758.758 INFO    ] No existing commands found in stream
[2026-06-13 13:43:07,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:43:07,772.772 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 13:43:11,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:43:11,874.874 INFO    ] Checking for system updates...
[2026-06-13 13:43:11,896.896 INFO    ] 200
[2026-06-13 13:43:11,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:11,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:11,932.932 INFO    ] No update needed
[2026-06-13 13:43:11,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 13:43:11,952.952 INFO    ] 200
[2026-06-13 13:43:11,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:11,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:43:12,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:12,116.116 INFO    ] No camera update needed
[2026-06-13 13:43:12,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:43:12,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:43:12,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:43:12,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:43:14,165.165 INFO    ] ================================================
[2026-06-13 13:43:14,180.180 INFO    ] Launching Daemon at Sat Jun 13 13:43:14 IST 2026
[2026-06-13 13:43:14,190.190 INFO    ] ================================================
[2026-06-13 13:43:14,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:43:14
[2026-06-13 13:43:14,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:43:14,990.990 INFO    ] Initializing speech engine...
[2026-06-13 13:43:14,995.995 INFO    ] 2026-06-13 13:43:14
[2026-06-13 13:43:15,198.198 INFO    ] 2026-06-13 13:43:15
[2026-06-13 13:43:15,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:43:15,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:43:15,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:43:15,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:43:15,598.598 INFO    ] time= 13/06/2026 13:43:15
[2026-06-13 13:43:15,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:43:15,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:43:15,712.712 INFO    ] No existing commands found in stream
[2026-06-13 13:43:20,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:43:20,725.725 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 13:43:21,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:43:21,389.389 INFO    ] Checking for system updates...
[2026-06-13 13:43:21,411.411 INFO    ] 200
[2026-06-13 13:43:21,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:21,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:21,444.444 INFO    ] No update needed
[2026-06-13 13:43:21,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 13:43:21,469.469 INFO    ] 200
[2026-06-13 13:43:21,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:21,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:43:21,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:21,539.539 INFO    ] No camera update needed
[2026-06-13 13:43:21,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:43:21,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:43:21,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:43:21,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:43:23,587.587 INFO    ] ================================================
[2026-06-13 13:43:23,603.603 INFO    ] Launching Daemon at Sat Jun 13 13:43:23 IST 2026
[2026-06-13 13:43:23,614.614 INFO    ] ================================================
[2026-06-13 13:43:23,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:43:23
[2026-06-13 13:43:24,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:43:24,395.395 INFO    ] Initializing speech engine...
[2026-06-13 13:43:24,398.398 INFO    ] 2026-06-13 13:43:24
[2026-06-13 13:43:24,618.618 INFO    ] 2026-06-13 13:43:24
[2026-06-13 13:43:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:43:24,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:43:24,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:43:24,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:43:25,028.028 INFO    ] time= 13/06/2026 13:43:24
[2026-06-13 13:43:25,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:43:25,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:43:25,134.134 INFO    ] No existing commands found in stream
[2026-06-13 13:43:30,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:43:30,146.146 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 13:43:34,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:43:34,352.352 INFO    ] Checking for system updates...
[2026-06-13 13:43:34,388.388 INFO    ] 200
[2026-06-13 13:43:34,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:34,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:34,447.447 INFO    ] No update needed
[2026-06-13 13:43:34,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 13:43:34,487.487 INFO    ] 200
[2026-06-13 13:43:34,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:34,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:43:34,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:43:34,574.574 INFO    ] No camera update needed
[2026-06-13 13:43:34,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:43:34,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:43:34,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:43:34,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:43:36,631.631 INFO    ] ================================================
[2026-06-13 13:43:36,646.646 INFO    ] Launching Daemon at Sat Jun 13 13:43:36 IST 2026
[2026-06-13 13:43:36,657.657 INFO    ] ================================================
[2026-06-13 13:43:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:43:37
[2026-06-13 13:43:37,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:43:37,741.741 INFO    ] Initializing speech engine...
[2026-06-13 13:43:37,745.745 INFO    ] 2026-06-13 13:43:37
[2026-06-13 13:43:37,962.962 INFO    ] 2026-06-13 13:43:37
[2026-06-13 13:43:37,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:43:38,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:43:38,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:43:38,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:43:38,377.377 INFO    ] time= 13/06/2026 13:43:38
[2026-06-13 13:43:38,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:43:38,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:43:38,474.474 INFO    ] No existing commands found in stream
[2026-06-13 13:43:43,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:43:43,485.485 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 13:43:47,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:43:47,376.376 INFO    ] Checking for system updates...
[2026-06-13 13:43:47,397.397 INFO    ] 200
[2026-06-13 13:43:47,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:47,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:43:47,434.434 INFO    ] No update needed
[2026-06-13 13:43:47,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 13:43:47,458.458 INFO    ] 200
[2026-06-13 13:43:47,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:47,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:43:47,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:43:47,528.528 INFO    ] No camera update needed
[2026-06-13 13:43:47,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:43:47,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:43:47,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:43:47,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:43:49,576.576 INFO    ] ================================================
[2026-06-13 13:43:49,592.592 INFO    ] Launching Daemon at Sat Jun 13 13:43:49 IST 2026
[2026-06-13 13:43:49,603.603 INFO    ] ================================================
[2026-06-13 13:43:49,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:43:49
[2026-06-13 13:43:50,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:43:50,432.432 INFO    ] Initializing speech engine...
[2026-06-13 13:43:50,439.439 INFO    ] 2026-06-13 13:43:50
[2026-06-13 13:43:50,650.650 INFO    ] 2026-06-13 13:43:50
[2026-06-13 13:43:50,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:43:50,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:43:50,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:43:51,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:43:51,071.071 INFO    ] time= 13/06/2026 13:43:51
[2026-06-13 13:43:51,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:43:51,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:43:51,181.181 INFO    ] No existing commands found in stream
[2026-06-13 13:43:56,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:43:56,193.193 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 13:43:59,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:43:59,380.380 INFO    ] Checking for system updates...
[2026-06-13 13:43:59,401.401 INFO    ] 200
[2026-06-13 13:43:59,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:59,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:43:59,436.436 INFO    ] No update needed
[2026-06-13 13:43:59,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 13:43:59,457.457 INFO    ] 200
[2026-06-13 13:43:59,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:43:59,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:43:59,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:43:59,527.527 INFO    ] No camera update needed
[2026-06-13 13:43:59,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:43:59,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:43:59,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:43:59,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:44:01,573.573 INFO    ] ================================================
[2026-06-13 13:44:01,589.589 INFO    ] Launching Daemon at Sat Jun 13 13:44:01 IST 2026
[2026-06-13 13:44:01,600.600 INFO    ] ================================================
[2026-06-13 13:44:02,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:44:02
[2026-06-13 13:44:02,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:44:03,287.287 INFO    ] Initializing speech engine...
[2026-06-13 13:44:03,302.302 INFO    ] 2026-06-13 13:44:03
[2026-06-13 13:44:03,616.616 INFO    ] 2026-06-13 13:44:03
[2026-06-13 13:44:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:44:03,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:44:03,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:44:04,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:44:04,097.097 INFO    ] time= 13/06/2026 13:44:04
[2026-06-13 13:44:04,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:44:04,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:44:04,235.235 INFO    ] No existing commands found in stream
[2026-06-13 13:44:09,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:44:09,248.248 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 13:44:10,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:44:10,115.115 INFO    ] Checking for system updates...
[2026-06-13 13:44:10,136.136 INFO    ] 200
[2026-06-13 13:44:10,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:10,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:10,169.169 INFO    ] No update needed
[2026-06-13 13:44:10,170.170 INFO    ] Checking for camera pi updates...
[2026-06-13 13:44:10,190.190 INFO    ] 200
[2026-06-13 13:44:10,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:10,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:44:10,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:10,241.241 INFO    ] No camera update needed
[2026-06-13 13:44:10,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:44:10,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:44:10,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:44:10,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:44:12,288.288 INFO    ] ================================================
[2026-06-13 13:44:12,304.304 INFO    ] Launching Daemon at Sat Jun 13 13:44:12 IST 2026
[2026-06-13 13:44:12,315.315 INFO    ] ================================================
[2026-06-13 13:44:12,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:44:12
[2026-06-13 13:44:12,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:44:13,127.127 INFO    ] Initializing speech engine...
[2026-06-13 13:44:13,141.141 INFO    ] 2026-06-13 13:44:13
[2026-06-13 13:44:13,349.349 INFO    ] 2026-06-13 13:44:13
[2026-06-13 13:44:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:44:13,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:44:13,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:44:13,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:44:13,774.774 INFO    ] time= 13/06/2026 13:44:13
[2026-06-13 13:44:13,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:44:13,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:44:13,881.881 INFO    ] No existing commands found in stream
[2026-06-13 13:44:18,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:44:18,897.897 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 13:44:21,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:44:21,507.507 INFO    ] Checking for system updates...
[2026-06-13 13:44:21,528.528 INFO    ] 200
[2026-06-13 13:44:21,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:21,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:21,563.563 INFO    ] No update needed
[2026-06-13 13:44:21,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 13:44:21,584.584 INFO    ] 200
[2026-06-13 13:44:21,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:21,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:44:21,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:21,634.634 INFO    ] No camera update needed
[2026-06-13 13:44:21,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:44:21,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:44:21,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:44:21,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:44:23,681.681 INFO    ] ================================================
[2026-06-13 13:44:23,697.697 INFO    ] Launching Daemon at Sat Jun 13 13:44:23 IST 2026
[2026-06-13 13:44:23,707.707 INFO    ] ================================================
[2026-06-13 13:44:24,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:44:24
[2026-06-13 13:44:24,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:44:24,530.530 INFO    ] Initializing speech engine...
[2026-06-13 13:44:24,536.536 INFO    ] 2026-06-13 13:44:24
[2026-06-13 13:44:24,743.743 INFO    ] 2026-06-13 13:44:24
[2026-06-13 13:44:24,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:44:24,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:44:24,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:44:25,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:44:25,152.152 INFO    ] time= 13/06/2026 13:44:25
[2026-06-13 13:44:25,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:44:25,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:44:25,266.266 INFO    ] No existing commands found in stream
[2026-06-13 13:44:28,132.132 INFO    ] Received new command: ID=1781338468046-0
[2026-06-13 13:44:28,135.135 INFO    ] process_and_cleanup_command: msg_id=1781338468046-0
[2026-06-13 13:44:28,137.137 INFO    ] is_command_expired: timestamp=2026-06-13T08:14:26.945Z, expiry=30s
[2026-06-13 13:44:28,204.204 INFO    ] Command removed from stream: 1781338468046-0. returning for processing...
[2026-06-13 13:44:28,207.207 INFO    ] ***** get_valid_command
[2026-06-13 13:44:28,209.209 INFO    ] {'timestamp': '2026-06-13T08:14:26.945Z', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781338466945-4tdrfeijm","orderId":"TM08202203260613134330037","is_vending":false}', 'source': 'webapp'}
[2026-06-13 13:44:28,212.212 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613134330037', 'is_vending': False, 'request_id': 'start-order-1781338466945-4tdrfeijm'}
[2026-06-13 13:44:28,214.214 INFO    ] Handling start order...
[2026-06-13 13:44:28,216.216 INFO    ] handle_start_order_command
[2026-06-13 13:44:28,222.222 INFO    ] _send_start_order_success: request_id=start-order-1781338466945-4tdrfeijm, order_id=TM08202203260613134330037
[2026-06-13 13:44:28,225.225 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 13:44:28,276.276 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781338468238-0
[2026-06-13 13:44:28,278.278 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 13:44:28,281.281 INFO    ] Checking for system updates...
[2026-06-13 13:44:28,326.326 INFO    ] 200
[2026-06-13 13:44:28,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:28,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:28,387.387 INFO    ] No update needed
[2026-06-13 13:44:28,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 13:44:28,424.424 INFO    ] 200
[2026-06-13 13:44:28,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:28,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:44:28,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:28,499.499 INFO    ] No camera update needed
[2026-06-13 13:44:28,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:44:28,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:44:28,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:44:28,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:44:30,547.547 INFO    ] ================================================
[2026-06-13 13:44:30,562.562 INFO    ] Launching Daemon at Sat Jun 13 13:44:30 IST 2026
[2026-06-13 13:44:30,573.573 INFO    ] ================================================
[2026-06-13 13:44:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:44:30
[2026-06-13 13:44:31,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:44:31,375.375 INFO    ] Initializing speech engine...
[2026-06-13 13:44:31,387.387 INFO    ] 2026-06-13 13:44:31
[2026-06-13 13:44:31,596.596 INFO    ] 2026-06-13 13:44:31
[2026-06-13 13:44:31,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:44:31,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:44:31,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:44:31,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:44:32,002.002 INFO    ] time= 13/06/2026 13:44:31
[2026-06-13 13:44:32,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:44:32,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:44:32,145.145 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 13:44:32,149.149 INFO    ] Checking historical command: ID=1781338468238-0
[2026-06-13 13:44:32,176.176 INFO    ] process_and_cleanup_command: msg_id=1781338468238-0
[2026-06-13 13:44:32,183.183 INFO    ] is_command_expired: timestamp=2026-06-13T08:14:28.223537Z, expiry=30s
[2026-06-13 13:44:32,305.305 INFO    ] Command removed from stream: 1781338468238-0. returning for processing...
[2026-06-13 13:44:32,309.309 INFO    ] ***** get_valid_command
[2026-06-13 13:44:32,312.312 INFO    ] {'metadata_order_id': 'TM08202203260613134330037', 'status': 'success', 'imei': 'TM08202203', 'timestamp': '2026-06-13T08:14:28.223537Z', 'metadata_request_id': 'start-order-1781338466945-4tdrfeijm', 'message': 'start-order success', 'message_type': 'command_response'}
[2026-06-13 13:44:32,319.319 INFO    ] Checking historical command: ID=1781338470856-0
[2026-06-13 13:44:32,323.323 INFO    ] process_and_cleanup_command: msg_id=1781338470856-0
[2026-06-13 13:44:32,327.327 INFO    ] is_command_expired: timestamp=2026-06-13T08:14:29.648Z, expiry=30s
[2026-06-13 13:44:32,373.373 INFO    ] Command removed from stream: 1781338470856-0. returning for processing...
[2026-06-13 13:44:32,378.378 INFO    ] ***** get_valid_command
[2026-06-13 13:44:32,382.382 INFO    ] {'timestamp': '2026-06-13T08:14:29.648Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781338469647-t4w9lto8q","orderId":"TM08202203260613134330037","is_vending":false,"accessCode":"74340876"}'}
[2026-06-13 13:44:32,386.386 INFO    ] ***** Parsed command data: {'accessCode': '74340876', 'request_id': 'process-order-1781338469647-t4w9lto8q', 'is_vending': False, 'orderId': 'TM08202203260613134330037'}
[2026-06-13 13:44:32,390.390 INFO    ] Handling process order...
[2026-06-13 13:44:32,394.394 INFO    ] Processing process-order command...
[2026-06-13 13:44:32,399.399 INFO    ] 🔍 Lock file Order ID: TM08202203260613134330037, TS: 2026-06-13 13:44:28
[2026-06-13 13:44:32,408.408 INFO    ] ✅ Order lock valid for TM08202203260613134330037
[2026-06-13 13:44:32,412.412 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 13:44:32,416.416 INFO    ] processing access code 74340876 for order TM08202203260613134330037
[2026-06-13 13:44:32,421.421 INFO    ] 🔍 Lock file Order ID: TM08202203260613134330037, TS: 2026-06-13 13:44:28
[2026-06-13 13:44:32,425.425 INFO    ] ✅ Order lock valid for TM08202203260613134330037
[2026-06-13 13:44:32,429.429 INFO    ] 2026-06-13 13:44:32
[2026-06-13 13:44:32,473.473 INFO    ] 200
[2026-06-13 13:44:32,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:32,482.482 INFO    ] 74340876
[2026-06-13 13:44:32,486.486 INFO    ] 2026-06-13 13:44:32
[2026-06-13 13:44:32,491.491 INFO    ] session id :208632923
[2026-06-13 13:44:32,496.496 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=74340876&imei=TM08202203&session_id=208632923
[2026-06-13 13:44:33,493.493 INFO    ] 200
[2026-06-13 13:44:33,503.503 INFO    ] {"data": {"mobile": "7975319753", "order_id": "TM08202203260613134330037", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "74340876", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 13:44:33,511.511 INFO    ] 20
[2026-06-13 13:44:33,517.517 INFO    ] TM08202203260613134330037
[2026-06-13 13:44:33,538.538 INFO    ] 7975319753
[2026-06-13 13:44:33,561.561 INFO    ] 2026-06-13 13:44:33
[2026-06-13 13:44:33,566.566 INFO    ] Door Opening for user mobile ending with  nine seven five three 
[2026-06-13 13:44:33,589.589 INFO    ] Door Opening for user mobile ending with  nine seven five three 
[2026-06-13 13:44:33,597.597 INFO    ] aabdc8e71fe6d54023378a4e49f56da4
[2026-06-13 13:44:33,608.608 INFO    ] 2026-06-13 13:44:33
[2026-06-13 13:44:33,614.614 INFO    ] creating audio file
[2026-06-13 13:44:33,915.915 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 13:44:35,007.007 INFO    ] gTTS API call completed successfully
[2026-06-13 13:44:35,981.981 INFO    ] 2026-06-13 13:44:35
[2026-06-13 13:44:35,983.983 INFO    ] playing audio file
[2026-06-13 13:44:35,993.993 INFO    ] 2026-06-13 13:44:35
[2026-06-13 13:44:35,995.995 INFO    ] 2026-06-13 13:44:35
[2026-06-13 13:44:35,998.998 INFO    ] publish_status: order_id=TM08202203260613134330037
[2026-06-13 13:44:36,000.000 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134330037
[2026-06-13 13:44:36,090.090 INFO    ] [publish_status] Message added to stream with ID: 1781338476051-0
[2026-06-13 13:44:36,091.091 INFO    ] Published to order:TM08202203260613134330037: {'timestamp': '2026-06-13T08:14:35.996794Z', 'server_status': 'order-started', 'server_response': '{"status": true, "msg": "Order Data", "data": {"access_code": "74340876", "invoice_bill": "20", "bill_amount": "20", "proposed_sku_json": [{"skuid": "185993", "sku_total": 20, "qty": 1, "offer_id": "", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "43", "unit_price": 20, "door_id": "2"}], "mobile": "7975319753", "order_id": "TM08202203260613134330037"}, "rstatus": true}', 'order_id': 'TM08202203260613134330037'} (ID: 1781338476051-0)
[2026-06-13 13:44:36,432.432 INFO    ] {'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'access_code': '74340876', 'invoice_bill': '20', 'bill_amount': '20', 'proposed_sku_json': [{'skuid': '185993', 'sku_total': 20, 'qty': 1, 'offer_id': '', 'mrp': '20', 'offer_desc': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'unit_price': 20, 'door_id': '2'}], 'mobile': '7975319753', 'order_id': 'TM08202203260613134330037'}, 'rstatus': True}, 'order_id': 'TM08202203260613134330037'}
[2026-06-13 13:44:36,433.433 INFO    ] 200
[2026-06-13 13:44:36,435.435 INFO    ] {"data":{"server_status":"order-started","server_response":{"status":true,"msg":"Order Data","data":{"access_code":"74340876","invoice_bill":"20","bill_amount":"20","proposed_sku_json":[{"skuid":"185993","sku_total":20,"qty":1,"offer_id":"","mrp":"20","offer_desc":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"43","unit_price":20,"door_id":"2"}],"mobile":"7975319753","order_id":"TM08202203260613134330037"},"rstatus":true},"order_id":"TM08202203260613134330037"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:44:36,436.436 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM08202203260613134330037', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'access_code': '74340876', 'invoice_bill': '20', 'bill_amount': '20', 'proposed_sku_json': [{'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'mrp': '20', 'offer_desc': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1, 'tray_id': '43', 'sku_total': 20, 'unit_price': 20, 'door_id': '2'}], 'mobile': '7975319753', 'order_id': 'TM08202203260613134330037'}, 'rstatus': True}, 'server_status': 'order-started'}}
[2026-06-13 13:44:36,438.438 INFO    ] 2026-06-13 13:44:36
[2026-06-13 13:44:36,464.464 INFO    ] 200
[2026-06-13 13:44:36,466.466 INFO    ] True
[2026-06-13 13:44:36,575.575 INFO    ] 200
[2026-06-13 13:44:36,578.578 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 13:44:36,582.582 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-13 13:44:36,585.585 INFO    ] *** process_order ***
[2026-06-13 13:44:37,651.651 INFO    ] 200
[2026-06-13 13:44:37,653.653 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 13:44:37,655.655 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-13 13:44:37,657.657 INFO    ] *** process_order ***
[2026-06-13 13:44:38,766.766 INFO    ] 200
[2026-06-13 13:44:38,768.768 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 13:44:38,769.769 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-13 13:44:38,771.771 INFO    ] *** process_order ***
[2026-06-13 13:44:38,773.773 INFO    ] publish_status: order_id=TM08202203260613134330037
[2026-06-13 13:44:38,774.774 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134330037
[2026-06-13 13:44:38,843.843 INFO    ] [publish_status] Message added to stream with ID: 1781338478804-0
[2026-06-13 13:44:38,846.846 INFO    ] Published to order:TM08202203260613134330037: {'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true}', 'order_id': 'TM08202203260613134330037'} (ID: 1781338478804-0)
[2026-06-13 13:44:39,890.890 INFO    ] 2026-06-13 13:44:39
[2026-06-13 13:44:39,893.893 INFO    ] publish_status: order_id=TM08202203260613134330037
[2026-06-13 13:44:39,896.896 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134330037
[2026-06-13 13:44:39,974.974 INFO    ] [publish_status] Message added to stream with ID: 1781338479936-0
[2026-06-13 13:44:39,976.976 INFO    ] Published to order:TM08202203260613134330037: {'timestamp': '2026-06-13T08:14:39.891683Z', 'server_status': 'processOrder', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}', 'order_id': 'TM08202203260613134330037'} (ID: 1781338479936-0)
[2026-06-13 13:44:40,100.100 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM08202203260613134330037'}
[2026-06-13 13:44:40,103.103 INFO    ] 200
[2026-06-13 13:44:40,106.106 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"},"status":"true","SectionMain":{"Header":"Processing Order"},"delay":0,"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"voiceNote":"Please Wait"},"order_id":"TM08202203260613134330037"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:44:40,110.110 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM08202203260613134330037', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True}, 'server_status': 'processOrder'}}
[2026-06-13 13:44:40,113.113 INFO    ] 2026-06-13 13:44:40
[2026-06-13 13:44:40,116.116 INFO    ] None
[2026-06-13 13:44:40,120.120 INFO    ] Opening Door now
[2026-06-13 13:44:40,124.124 INFO    ] Opening Door now
[2026-06-13 13:44:40,128.128 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 13:44:40,132.132 INFO    ] 2026-06-13 13:44:40
[2026-06-13 13:44:40,135.135 INFO    ] playing audio file
[2026-06-13 13:44:40,155.155 INFO    ] 2026-06-13 13:44:40
[2026-06-13 13:44:40,160.160 INFO    ] 2026-06-13 13:44:40
[2026-06-13 13:44:43,257.257 INFO    ] 200
[2026-06-13 13:44:43,261.261 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:44:43,265.265 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 13:44:46,319.319 INFO    ] 200
[2026-06-13 13:44:46,321.321 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:44:46,323.323 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2'}
[2026-06-13 13:44:49,389.389 INFO    ] 200
[2026-06-13 13:44:49,392.392 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:44:49,395.395 INFO    ] Please close door 2
[2026-06-13 13:44:49,398.398 INFO    ] Please close door 2
[2026-06-13 13:44:49,401.401 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 13:44:49,405.405 INFO    ] 2026-06-13 13:44:49
[2026-06-13 13:44:49,408.408 INFO    ] playing audio file
[2026-06-13 13:44:49,426.426 INFO    ] 2026-06-13 13:44:49
[2026-06-13 13:44:49,430.430 INFO    ] publish_status: order_id=TM08202203260613134330037
[2026-06-13 13:44:49,433.433 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134330037
[2026-06-13 13:44:49,513.513 INFO    ] [publish_status] Message added to stream with ID: 1781338489473-0
[2026-06-13 13:44:49,516.516 INFO    ] Published to order:TM08202203260613134330037: {'timestamp': '2026-06-13T08:14:49.428527Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"tmessage": "In Progress", "code": 20001, "data": {}, "umessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "voiceNote": "Please close door 2"}', 'order_id': 'TM08202203260613134330037'} (ID: 1781338489473-0)
[2026-06-13 13:44:49,947.947 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202203260613134330037'}
[2026-06-13 13:44:49,949.949 INFO    ] 200
[2026-06-13 13:44:49,951.951 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"},"status":"false","error":{"tmessage":"In Progress","code":20001,"data":[],"umessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"voiceNote":"Please close door 2"},"order_id":"TM08202203260613134330037"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:44:49,956.956 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM08202203260613134330037', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False}, 'server_status': 'OrderStatus'}}
[2026-06-13 13:44:49,958.958 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'code': 20001, 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2'}
[2026-06-13 13:44:52,996.996 INFO    ] 200
[2026-06-13 13:44:52,997.997 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 13:44:53,000.000 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 13:44:53,002.002 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,003.003 INFO    ] Order Completed 
[2026-06-13 13:44:53,005.005 INFO    ] Order Completed 
[2026-06-13 13:44:53,007.007 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 13:44:53,012.012 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,014.014 INFO    ] playing audio file
[2026-06-13 13:44:53,026.026 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,028.028 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed'}
[2026-06-13 13:44:53,030.030 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,742.742 INFO    ] 200
[2026-06-13 13:44:53,744.744 INFO    ] {"res": "True", "orderId": "TM08202203260613134330037", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 13:44:53,746.746 INFO    ] {'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613134330037', 'total_amount': 20.0, 'rstatus': True, 'skus': [{'mrp': '20', 'skuid': '185993', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'sku_total': 20.0, 'door_id': ''}]}
[2026-06-13 13:44:53,749.749 INFO    ] {'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613134330037', 'total_amount': 20.0, 'rstatus': True, 'skus': [{'mrp': '20', 'skuid': '185993', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'sku_total': 20.0, 'door_id': ''}]}
[2026-06-13 13:44:53,750.750 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,752.752 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,754.754 INFO    ] 20
[2026-06-13 13:44:53,756.756 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,757.757 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,759.759 INFO    ]  Your Bill Amount is 20
[2026-06-13 13:44:53,760.760 INFO    ]  Your Bill Amount is 20
[2026-06-13 13:44:53,761.761 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 13:44:53,763.763 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,764.764 INFO    ] playing audio file
[2026-06-13 13:44:53,774.774 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,776.776 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:53,778.778 INFO    ] publish_status: order_id=TM08202203260613134330037
[2026-06-13 13:44:53,780.780 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134330037
[2026-06-13 13:44:53,868.868 INFO    ] [publish_status] Message added to stream with ID: 1781338493831-0
[2026-06-13 13:44:53,870.870 INFO    ] Published to order:TM08202203260613134330037: {'timestamp': '2026-06-13T08:14:53.777265Z', 'server_status': 'invoiceOrder', 'server_response': '{"logic": "WBL", "res": "True", "anomaly": 0, "orderId": "TM08202203260613134330037", "total_amount": 20.0, "rstatus": true, "skus": [{"mrp": "20", "skuid": "185993", "qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "43", "sku_total": 20.0, "door_id": ""}]}', 'order_id': 'TM08202203260613134330037'} (ID: 1781338493831-0)
[2026-06-13 13:44:53,992.992 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613134330037', 'total_amount': 20.0, 'rstatus': True, 'skus': [{'mrp': '20', 'skuid': '185993', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'sku_total': 20.0, 'door_id': ''}]}, 'order_id': 'TM08202203260613134330037'}
[2026-06-13 13:44:53,993.993 INFO    ] 200
[2026-06-13 13:44:53,994.994 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"logic":"WBL","res":"true","anomaly":0,"orderId":"TM08202203260613134330037","total_amount":20,"rstatus":true,"skus":[{"mrp":"20","skuid":"185993","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"43","sku_total":20,"door_id":""}]},"order_id":"TM08202203260613134330037"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:44:53,996.996 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM08202203260613134330037', 'server_response': {'logic': 'WBL', 'res': 'true', 'total_amount': 20, 'orderId': 'TM08202203260613134330037', 'anomaly': 0, 'skus': [{'mrp': '20', 'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'qty': 1, 'tray_id': '43', 'sku_total': 20, 'door_id': ''}], 'rstatus': True}, 'server_status': 'invoiceOrder'}}
[2026-06-13 13:44:53,997.997 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'order_id': 'TM08202203260613134330037', 'server_response': {'logic': 'WBL', 'res': 'true', 'total_amount': 20, 'orderId': 'TM08202203260613134330037', 'anomaly': 0, 'skus': [{'mrp': '20', 'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'qty': 1, 'tray_id': '43', 'sku_total': 20, 'door_id': ''}], 'rstatus': True}, 'server_status': 'invoiceOrder'}}
[2026-06-13 13:44:53,999.999 INFO    ] 2026-06-13 13:44:53
[2026-06-13 13:44:56,351.351 INFO    ] 200
[2026-06-13 13:44:56,353.353 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037", "TM08202203260613134330037"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 13:44:56,355.355 INFO    ] 2026-06-13 13:44:56
[2026-06-13 13:44:56,447.447 INFO    ] 200
[2026-06-13 13:44:56,448.448 INFO    ] True
[2026-06-13 13:44:56,450.450 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613134330037
[2026-06-13 13:44:56,452.452 INFO    ] start order file deleted
[2026-06-13 13:44:56,454.454 INFO    ] Checking for system updates...
[2026-06-13 13:44:56,476.476 INFO    ] 200
[2026-06-13 13:44:56,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:56,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:56,509.509 INFO    ] No update needed
[2026-06-13 13:44:56,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 13:44:56,537.537 INFO    ] 200
[2026-06-13 13:44:56,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:44:56,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:44:56,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:44:56,602.602 INFO    ] No camera update needed
[2026-06-13 13:44:56,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:44:56,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:44:56,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:44:56,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:44:58,648.648 INFO    ] ================================================
[2026-06-13 13:44:58,663.663 INFO    ] Launching Daemon at Sat Jun 13 13:44:58 IST 2026
[2026-06-13 13:44:58,674.674 INFO    ] ================================================
[2026-06-13 13:44:59,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:44:59
[2026-06-13 13:44:59,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:44:59,498.498 INFO    ] Initializing speech engine...
[2026-06-13 13:44:59,503.503 INFO    ] 2026-06-13 13:44:59
[2026-06-13 13:44:59,710.710 INFO    ] 2026-06-13 13:44:59
[2026-06-13 13:44:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:44:59,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:44:59,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:45:00,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:45:00,116.116 INFO    ] time= 13/06/2026 13:45:00
[2026-06-13 13:45:00,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:45:00,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:45:00,234.234 INFO    ] No existing commands found in stream
[2026-06-13 13:45:05,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:45:05,247.247 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 13:45:07,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:45:07,379.379 INFO    ] Checking for system updates...
[2026-06-13 13:45:07,399.399 INFO    ] 200
[2026-06-13 13:45:07,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:07,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:45:07,434.434 INFO    ] No update needed
[2026-06-13 13:45:07,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 13:45:07,456.456 INFO    ] 200
[2026-06-13 13:45:07,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:07,485.485 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:45:07,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:45:07,521.521 INFO    ] No camera update needed
[2026-06-13 13:45:07,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:45:07,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:45:07,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:45:07,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:45:09,569.569 INFO    ] ================================================
[2026-06-13 13:45:09,585.585 INFO    ] Launching Daemon at Sat Jun 13 13:45:09 IST 2026
[2026-06-13 13:45:09,596.596 INFO    ] ================================================
[2026-06-13 13:45:09,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:45:09
[2026-06-13 13:45:10,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:45:10,369.369 INFO    ] Initializing speech engine...
[2026-06-13 13:45:10,374.374 INFO    ] 2026-06-13 13:45:10
[2026-06-13 13:45:10,591.591 INFO    ] 2026-06-13 13:45:10
[2026-06-13 13:45:10,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:45:10,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:45:10,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:45:10,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:45:11,006.006 INFO    ] time= 13/06/2026 13:45:10
[2026-06-13 13:45:11,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:45:11,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:45:11,113.113 INFO    ] No existing commands found in stream
[2026-06-13 13:45:16,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:45:16,130.130 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 13:45:17,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:45:17,292.292 INFO    ] Checking for system updates...
[2026-06-13 13:45:17,313.313 INFO    ] 200
[2026-06-13 13:45:17,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:17,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:45:17,345.345 INFO    ] No update needed
[2026-06-13 13:45:17,347.347 INFO    ] Checking for camera pi updates...
[2026-06-13 13:45:17,370.370 INFO    ] 200
[2026-06-13 13:45:17,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:17,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:45:17,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:45:17,537.537 INFO    ] No camera update needed
[2026-06-13 13:45:17,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:45:17,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:45:17,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:45:17,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:45:19,584.584 INFO    ] ================================================
[2026-06-13 13:45:19,599.599 INFO    ] Launching Daemon at Sat Jun 13 13:45:19 IST 2026
[2026-06-13 13:45:19,610.610 INFO    ] ================================================
[2026-06-13 13:45:19,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:45:19
[2026-06-13 13:45:20,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:45:20,422.422 INFO    ] Initializing speech engine...
[2026-06-13 13:45:20,441.441 INFO    ] 2026-06-13 13:45:20
[2026-06-13 13:45:20,693.693 INFO    ] 2026-06-13 13:45:20
[2026-06-13 13:45:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:45:20,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:45:20,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:45:21,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:45:21,050.050 INFO    ] time= 13/06/2026 13:45:21
[2026-06-13 13:45:21,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:45:21,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:45:21,160.160 INFO    ] No existing commands found in stream
[2026-06-13 13:45:26,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:45:26,176.176 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 13:45:29,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:45:29,174.174 INFO    ] Checking for system updates...
[2026-06-13 13:45:29,195.195 INFO    ] 200
[2026-06-13 13:45:29,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:29,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:45:29,228.228 INFO    ] No update needed
[2026-06-13 13:45:29,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 13:45:29,251.251 INFO    ] 200
[2026-06-13 13:45:29,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:29,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:45:29,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:45:29,322.322 INFO    ] No camera update needed
[2026-06-13 13:45:29,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:45:29,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:45:29,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:45:29,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:45:31,361.361 INFO    ] ================================================
[2026-06-13 13:45:31,376.376 INFO    ] Launching Daemon at Sat Jun 13 13:45:31 IST 2026
[2026-06-13 13:45:31,387.387 INFO    ] ================================================
[2026-06-13 13:45:31,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:45:31
[2026-06-13 13:45:32,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:45:32,852.852 INFO    ] Initializing speech engine...
[2026-06-13 13:45:32,868.868 INFO    ] 2026-06-13 13:45:32
[2026-06-13 13:45:33,155.155 INFO    ] 2026-06-13 13:45:33
[2026-06-13 13:45:33,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:45:33,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:45:33,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:45:33,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:45:33,493.493 INFO    ] time= 13/06/2026 13:45:33
[2026-06-13 13:45:33,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:45:33,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:45:33,567.567 INFO    ] No existing commands found in stream
[2026-06-13 13:45:34,118.118 INFO    ] Received new command: ID=1781338533801-0
[2026-06-13 13:45:34,168.168 INFO    ] process_and_cleanup_command: msg_id=1781338533801-0
[2026-06-13 13:45:34,187.187 INFO    ] is_command_expired: timestamp=2026-06-13T08:15:33.513Z, expiry=30s
[2026-06-13 13:45:34,333.333 INFO    ] Command removed from stream: 1781338533801-0. returning for processing...
[2026-06-13 13:45:34,351.351 INFO    ] ***** get_valid_command
[2026-06-13 13:45:34,357.357 INFO    ] {'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1781338533513-nrj97o4jk","orderId":"TM08202203260613134451525","is_vending":false}', 'timestamp': '2026-06-13T08:15:33.513Z', 'command': 'start-order'}
[2026-06-13 13:45:34,407.407 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613134451525', 'request_id': 'start-order-1781338533513-nrj97o4jk', 'is_vending': False}
[2026-06-13 13:45:34,411.411 INFO    ] Handling start order...
[2026-06-13 13:45:34,414.414 INFO    ] handle_start_order_command
[2026-06-13 13:45:34,471.471 INFO    ] _send_start_order_success: request_id=start-order-1781338533513-nrj97o4jk, order_id=TM08202203260613134451525
[2026-06-13 13:45:34,475.475 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 13:45:34,599.599 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781338534493-0
[2026-06-13 13:45:34,620.620 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 13:45:34,626.626 INFO    ] Checking for system updates...
[2026-06-13 13:45:34,673.673 INFO    ] 200
[2026-06-13 13:45:34,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:34,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:45:34,741.741 INFO    ] No update needed
[2026-06-13 13:45:34,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 13:45:34,790.790 INFO    ] 200
[2026-06-13 13:45:34,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:34,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:45:34,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:45:34,903.903 INFO    ] No camera update needed
[2026-06-13 13:45:34,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:45:34,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:45:34,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:45:34,941.941 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 13:45:34,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:45:36,983.983 INFO    ] ================================================
[2026-06-13 13:45:37,998.998 INFO    ] Launching Daemon at Sat Jun 13 13:45:36 IST 2026
[2026-06-13 13:45:37,009.009 INFO    ] ================================================
[2026-06-13 13:45:37,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:45:37
[2026-06-13 13:45:38,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:45:38,275.275 INFO    ] Initializing speech engine...
[2026-06-13 13:45:38,284.284 INFO    ] 2026-06-13 13:45:38
[2026-06-13 13:45:38,531.531 INFO    ] 2026-06-13 13:45:38
[2026-06-13 13:45:38,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:45:38,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:45:38,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:45:38,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:45:38,901.901 INFO    ] time= 13/06/2026 13:45:38
[2026-06-13 13:45:38,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:45:38,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:45:38,981.981 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 13:45:39,020.020 INFO    ] Checking historical command: ID=1781338534493-0
[2026-06-13 13:45:39,074.074 INFO    ] process_and_cleanup_command: msg_id=1781338534493-0
[2026-06-13 13:45:39,112.112 INFO    ] is_command_expired: timestamp=2026-06-13T08:15:34.472376Z, expiry=30s
[2026-06-13 13:45:39,276.276 INFO    ] Command removed from stream: 1781338534493-0. returning for processing...
[2026-06-13 13:45:39,317.317 INFO    ] ***** get_valid_command
[2026-06-13 13:45:39,382.382 INFO    ] {'timestamp': '2026-06-13T08:15:34.472376Z', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781338533513-nrj97o4jk', 'metadata_order_id': 'TM08202203260613134451525', 'status': 'success', 'imei': 'TM08202203', 'message_type': 'command_response'}
[2026-06-13 13:45:39,399.399 INFO    ] Checking historical command: ID=1781338537005-0
[2026-06-13 13:45:39,463.463 INFO    ] process_and_cleanup_command: msg_id=1781338537005-0
[2026-06-13 13:45:39,517.517 INFO    ] is_command_expired: timestamp=2026-06-13T08:15:36.652Z, expiry=30s
[2026-06-13 13:45:39,605.605 INFO    ] Command removed from stream: 1781338537005-0. returning for processing...
[2026-06-13 13:45:39,608.608 INFO    ] ***** get_valid_command
[2026-06-13 13:45:39,652.652 INFO    ] {'timestamp': '2026-06-13T08:15:36.652Z', 'data': '{"request_id":"process-order-1781338536652-k145v7c94","orderId":"TM08202203260613134451525","is_vending":false,"accessCode":"91591109"}', 'source': 'webapp', 'command': 'process-order', 'timeout': '60'}
[2026-06-13 13:45:39,722.722 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613134451525', 'request_id': 'process-order-1781338536652-k145v7c94', 'is_vending': False, 'accessCode': '91591109'}
[2026-06-13 13:45:39,741.741 INFO    ] Handling process order...
[2026-06-13 13:45:39,748.748 INFO    ] Processing process-order command...
[2026-06-13 13:45:39,799.799 INFO    ] 🔍 Lock file Order ID: TM08202203260613134451525, TS: 2026-06-13 13:45:34
[2026-06-13 13:45:39,812.812 INFO    ] ✅ Order lock valid for TM08202203260613134451525
[2026-06-13 13:45:39,830.830 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 13:45:39,866.866 INFO    ] processing access code 91591109 for order TM08202203260613134451525
[2026-06-13 13:45:39,873.873 INFO    ] 🔍 Lock file Order ID: TM08202203260613134451525, TS: 2026-06-13 13:45:34
[2026-06-13 13:45:39,878.878 INFO    ] ✅ Order lock valid for TM08202203260613134451525
[2026-06-13 13:45:39,882.882 INFO    ] 2026-06-13 13:45:39
[2026-06-13 13:45:39,928.928 INFO    ] 200
[2026-06-13 13:45:39,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:45:39,934.934 INFO    ] 91591109
[2026-06-13 13:45:39,993.993 INFO    ] 2026-06-13 13:45:39
[2026-06-13 13:45:40,051.051 INFO    ] session id :410438171
[2026-06-13 13:45:40,056.056 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=91591109&imei=TM08202203&session_id=410438171
[2026-06-13 13:45:40,897.897 INFO    ] 200
[2026-06-13 13:45:40,906.906 INFO    ] {"data": {"mobile": "8088496264", "order_id": "TM08202203260613134451525", "bill_amount": "40", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "2", "mrp": "40", "offer_desc": "", "name": "Farmely Classic date Bites 20gm", "tray_id": "37", "unit_price": 40, "qty": 1, "sku_total": 40, "offer_id": ""}], "access_code": "91591109", "invoice_bill": "40"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 13:45:40,912.912 INFO    ] 40
[2026-06-13 13:45:40,917.917 INFO    ] TM08202203260613134451525
[2026-06-13 13:45:40,923.923 INFO    ] 8088496264
[2026-06-13 13:45:40,927.927 INFO    ] 2026-06-13 13:45:40
[2026-06-13 13:45:40,944.944 INFO    ] Door Opening for user mobile ending with  six two six four 
[2026-06-13 13:45:40,949.949 INFO    ] Door Opening for user mobile ending with  six two six four 
[2026-06-13 13:45:40,962.962 INFO    ] 2a2d462e9506b276f30759ea8aeb3954
[2026-06-13 13:45:40,965.965 INFO    ] 2026-06-13 13:45:40
[2026-06-13 13:45:40,970.970 INFO    ] creating audio file
[2026-06-13 13:45:41,129.129 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 13:45:41,558.558 INFO    ] gTTS API call completed successfully
[2026-06-13 13:45:42,197.197 INFO    ] 2026-06-13 13:45:42
[2026-06-13 13:45:42,199.199 INFO    ] playing audio file
[2026-06-13 13:45:42,209.209 INFO    ] 2026-06-13 13:45:42
[2026-06-13 13:45:42,211.211 INFO    ] 2026-06-13 13:45:42
[2026-06-13 13:45:42,213.213 INFO    ] publish_status: order_id=TM08202203260613134451525
[2026-06-13 13:45:42,215.215 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134451525
[2026-06-13 13:45:42,296.296 INFO    ] [publish_status] Message added to stream with ID: 1781338542258-0
[2026-06-13 13:45:42,298.298 INFO    ] Published to order:TM08202203260613134451525: {'timestamp': '2026-06-13T08:15:42.212254Z', 'server_status': 'order-started', 'server_response': '{"msg": "Order Data", "data": {"bill_amount": "40", "access_code": "91591109", "mobile": "8088496264", "invoice_bill": "40", "proposed_sku_json": [{"offer_id": "", "door_id": "2", "name": "Farmely Classic date Bites 20gm", "skuid": "4500667", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "tray_id": "37", "unit_price": 40, "qty": 1, "sku_total": 40}], "order_id": "TM08202203260613134451525"}, "rstatus": true, "status": true}', 'order_id': 'TM08202203260613134451525'} (ID: 1781338542258-0)
[2026-06-13 13:45:42,612.612 INFO    ] {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '40', 'access_code': '91591109', 'mobile': '8088496264', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_id': '', 'door_id': '2', 'name': 'Farmely Classic date Bites 20gm', 'skuid': '4500667', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'tray_id': '37', 'unit_price': 40, 'qty': 1, 'sku_total': 40}], 'order_id': 'TM08202203260613134451525'}, 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613134451525'}
[2026-06-13 13:45:42,613.613 INFO    ] 200
[2026-06-13 13:45:42,615.615 INFO    ] {"data":{"server_status":"order-started","server_response":{"msg":"Order Data","data":{"bill_amount":"40","access_code":"91591109","mobile":"8088496264","invoice_bill":"40","proposed_sku_json":[{"offer_id":"","door_id":"2","name":"Farmely Classic date Bites 20gm","skuid":"4500667","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","mrp":"40","tray_id":"37","unit_price":40,"qty":1,"sku_total":40}],"order_id":"TM08202203260613134451525"},"rstatus":true,"status":true},"order_id":"TM08202203260613134451525"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:45:42,616.616 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '40', 'access_code': '91591109', 'mobile': '8088496264', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm', 'skuid': '4500667', 'offer_desc': '', 'door_id': '2', 'mrp': '40', 'tray_id': '37', 'unit_price': 40, 'qty': 1, 'sku_total': 40}], 'order_id': 'TM08202203260613134451525'}, 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613134451525'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 13:45:42,618.618 INFO    ] 2026-06-13 13:45:42
[2026-06-13 13:45:42,644.644 INFO    ] 200
[2026-06-13 13:45:42,645.645 INFO    ] True
[2026-06-13 13:45:42,726.726 INFO    ] 200
[2026-06-13 13:45:42,728.728 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 13:45:42,730.730 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': False, 'status': 'False'}
[2026-06-13 13:45:42,732.732 INFO    ] *** process_order ***
[2026-06-13 13:45:43,907.907 INFO    ] 200
[2026-06-13 13:45:43,909.909 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 13:45:43,910.910 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': True, 'status': 'True'}
[2026-06-13 13:45:43,912.912 INFO    ] *** process_order ***
[2026-06-13 13:45:43,913.913 INFO    ] publish_status: order_id=TM08202203260613134451525
[2026-06-13 13:45:43,914.914 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134451525
[2026-06-13 13:45:43,983.983 INFO    ] [publish_status] Message added to stream with ID: 1781338543946-0
[2026-06-13 13:45:43,985.985 INFO    ] Published to order:TM08202203260613134451525: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "rstatus": true, "status": "True"}', 'order_id': 'TM08202203260613134451525'} (ID: 1781338543946-0)
[2026-06-13 13:45:45,030.030 INFO    ] 2026-06-13 13:45:45
[2026-06-13 13:45:45,033.033 INFO    ] publish_status: order_id=TM08202203260613134451525
[2026-06-13 13:45:45,035.035 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134451525
[2026-06-13 13:45:45,125.125 INFO    ] [publish_status] Message added to stream with ID: 1781338545086-0
[2026-06-13 13:45:45,128.128 INFO    ] Published to order:TM08202203260613134451525: {'timestamp': '2026-06-13T08:15:45.031359Z', 'server_status': 'processOrder', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  "}, "rstatus": true, "status": "True"}', 'order_id': 'TM08202203260613134451525'} (ID: 1781338545086-0)
[2026-06-13 13:45:45,242.242 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': True, 'status': 'True'}, 'order_id': 'TM08202203260613134451525'}
[2026-06-13 13:45:45,244.244 INFO    ] 200
[2026-06-13 13:45:45,245.245 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  "},"rstatus":true,"status":"true"},"order_id":"TM08202203260613134451525"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:45:45,247.247 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': True, 'status': 'true'}, 'order_id': 'TM08202203260613134451525'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 13:45:45,248.248 INFO    ] 2026-06-13 13:45:45
[2026-06-13 13:45:45,250.250 INFO    ] None
[2026-06-13 13:45:45,251.251 INFO    ] Opening Door now
[2026-06-13 13:45:45,252.252 INFO    ] Opening Door now
[2026-06-13 13:45:45,253.253 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 13:45:45,255.255 INFO    ] 2026-06-13 13:45:45
[2026-06-13 13:45:45,256.256 INFO    ] playing audio file
[2026-06-13 13:45:45,266.266 INFO    ] 2026-06-13 13:45:45
[2026-06-13 13:45:45,269.269 INFO    ] 2026-06-13 13:45:45
[2026-06-13 13:45:48,311.311 INFO    ] 200
[2026-06-13 13:45:48,312.312 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:45:48,314.314 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False, 'status': 'False'}
[2026-06-13 13:45:51,379.379 INFO    ] 200
[2026-06-13 13:45:51,382.382 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:45:51,385.385 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False, 'status': 'False'}
[2026-06-13 13:45:54,453.453 INFO    ] 200
[2026-06-13 13:45:54,456.456 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 13:45:54,460.460 INFO    ] Please close door 2
[2026-06-13 13:45:54,463.463 INFO    ] Please close door 2
[2026-06-13 13:45:54,465.465 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 13:45:54,469.469 INFO    ] 2026-06-13 13:45:54
[2026-06-13 13:45:54,471.471 INFO    ] playing audio file
[2026-06-13 13:45:54,489.489 INFO    ] 2026-06-13 13:45:54
[2026-06-13 13:45:54,493.493 INFO    ] publish_status: order_id=TM08202203260613134451525
[2026-06-13 13:45:54,495.495 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134451525
[2026-06-13 13:45:54,582.582 INFO    ] [publish_status] Message added to stream with ID: 1781338554541-0
[2026-06-13 13:45:54,585.585 INFO    ] Published to order:TM08202203260613134451525: {'timestamp': '2026-06-13T08:15:54.491372Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"skus": [{"name": "Farmely Classic date Bites 20gm", "qty": 1}], "Header": "Pick the below items from the door"}, "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"}, "rstatus": false, "status": "False"}', 'order_id': 'TM08202203260613134451525'} (ID: 1781338554541-0)
[2026-06-13 13:45:55,018.018 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202203260613134451525'}
[2026-06-13 13:45:55,021.021 INFO    ] 200
[2026-06-13 13:45:55,024.024 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"},"SectionSKU":{"skus":[{"name":"Farmely Classic date Bites 20gm","qty":1}],"Header":"Pick the below items from the door"},"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"},"rstatus":false,"status":"false"},"order_id":"TM08202203260613134451525"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:45:55,027.027 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False, 'status': 'false'}, 'order_id': 'TM08202203260613134451525'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 13:45:55,030.030 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'name': 'Farmely Classic date Bites 20gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False, 'status': 'False'}
[2026-06-13 13:45:58,068.068 INFO    ] 200
[2026-06-13 13:45:58,070.070 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 13:45:58,072.072 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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 '}, 'rstatus': True, 'status': 'True'}
[2026-06-13 13:45:58,073.073 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,075.075 INFO    ] Order Completed 
[2026-06-13 13:45:58,077.077 INFO    ] Order Completed 
[2026-06-13 13:45:58,080.080 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 13:45:58,082.082 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,083.083 INFO    ] playing audio file
[2026-06-13 13:45:58,094.094 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,096.096 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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 '}, 'rstatus': True, 'status': 'True'}
[2026-06-13 13:45:58,098.098 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,859.859 INFO    ] 200
[2026-06-13 13:45:58,860.860 INFO    ] {"res": "True", "orderId": "TM08202203260613134451525", "skus": [{"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "", "tray_id": "37", "name": "Farmely Classic date Bites 20gm per peice", "unit_price": "40", "mrp": "40", "qty": 1, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 40.0}
[2026-06-13 13:45:58,862.862 INFO    ] {'anomaly': 0, 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613134451525', 'skus': [{'door_id': '', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'sku_total': 40.0}], 'rstatus': True, 'logic': 'WBL'}
[2026-06-13 13:45:58,863.863 INFO    ] {'anomaly': 0, 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613134451525', 'skus': [{'door_id': '', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'sku_total': 40.0}], 'rstatus': True, 'logic': 'WBL'}
[2026-06-13 13:45:58,865.865 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,866.866 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,867.867 INFO    ] 40
[2026-06-13 13:45:58,869.869 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,870.870 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,872.872 INFO    ]  Your Bill Amount is 40
[2026-06-13 13:45:58,873.873 INFO    ]  Your Bill Amount is 40
[2026-06-13 13:45:58,874.874 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-13 13:45:58,876.876 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,877.877 INFO    ] playing audio file
[2026-06-13 13:45:58,887.887 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,889.889 INFO    ] 2026-06-13 13:45:58
[2026-06-13 13:45:58,892.892 INFO    ] publish_status: order_id=TM08202203260613134451525
[2026-06-13 13:45:58,893.893 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613134451525
[2026-06-13 13:45:58,949.949 INFO    ] [publish_status] Message added to stream with ID: 1781338558911-0
[2026-06-13 13:45:58,950.950 INFO    ] Published to order:TM08202203260613134451525: {'timestamp': '2026-06-13T08:15:58.890744Z', 'server_status': 'invoiceOrder', 'server_response': '{"anomaly": 0, "total_amount": 40.0, "res": "True", "orderId": "TM08202203260613134451525", "skus": [{"door_id": "", "name": "Farmely Classic date Bites 20gm per peice", "skuid": "4500667", "tray_id": "37", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "unit_price": "40", "qty": 1, "sku_total": 40.0}], "rstatus": true, "logic": "WBL"}', 'order_id': 'TM08202203260613134451525'} (ID: 1781338558911-0)
[2026-06-13 13:45:59,066.066 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'total_amount': 40.0, 'res': 'True', 'orderId': 'TM08202203260613134451525', 'skus': [{'door_id': '', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'sku_total': 40.0}], 'rstatus': True, 'logic': 'WBL'}, 'order_id': 'TM08202203260613134451525'}
[2026-06-13 13:45:59,068.068 INFO    ] 200
[2026-06-13 13:45:59,069.069 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"anomaly":0,"total_amount":40,"res":"true","orderId":"TM08202203260613134451525","skus":[{"door_id":"","name":"Farmely Classic date Bites 20gm per peice","skuid":"4500667","tray_id":"37","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","mrp":"40","unit_price":"40","qty":1,"sku_total":40}],"rstatus":true,"logic":"WBL"},"order_id":"TM08202203260613134451525"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 13:45:59,071.071 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'total_amount': 40, 'orderId': 'TM08202203260613134451525', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'tray_id': '37', 'door_id': '', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'sku_total': 40}], 'logic': 'WBL', 'rstatus': True, 'res': 'true'}, 'order_id': 'TM08202203260613134451525'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 13:45:59,073.073 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'total_amount': 40, 'orderId': 'TM08202203260613134451525', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'skuid': '4500667', 'tray_id': '37', 'door_id': '', 'mrp': '40', 'unit_price': '40', 'qty': 1, 'sku_total': 40}], 'logic': 'WBL', 'rstatus': True, 'res': 'true'}, 'order_id': 'TM08202203260613134451525'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 13:45:59,075.075 INFO    ] 2026-06-13 13:45:59
[2026-06-13 13:46:00,975.975 INFO    ] 200
[2026-06-13 13:46:00,977.977 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525", "TM08202203260613134451525"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 13:46:00,985.985 INFO    ] 2026-06-13 13:46:00
[2026-06-13 13:46:01,127.127 INFO    ] 200
[2026-06-13 13:46:01,130.130 INFO    ] True
[2026-06-13 13:46:01,133.133 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613134451525
[2026-06-13 13:46:01,137.137 INFO    ] start order file deleted
[2026-06-13 13:46:01,150.150 INFO    ] Checking for system updates...
[2026-06-13 13:46:01,192.192 INFO    ] 200
[2026-06-13 13:46:01,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:01,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:01,274.274 INFO    ] No update needed
[2026-06-13 13:46:01,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:01,360.360 INFO    ] 200
[2026-06-13 13:46:01,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:01,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:01,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:01,590.590 INFO    ] No camera update needed
[2026-06-13 13:46:01,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:01,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:01,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:01,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:03,668.668 INFO    ] ================================================
[2026-06-13 13:46:03,684.684 INFO    ] Launching Daemon at Sat Jun 13 13:46:03 IST 2026
[2026-06-13 13:46:03,695.695 INFO    ] ================================================
[2026-06-13 13:46:04,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:04
[2026-06-13 13:46:04,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:04,491.491 INFO    ] Initializing speech engine...
[2026-06-13 13:46:04,500.500 INFO    ] 2026-06-13 13:46:04
[2026-06-13 13:46:04,707.707 INFO    ] 2026-06-13 13:46:04
[2026-06-13 13:46:04,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:04,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:04,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:05,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:05,080.080 INFO    ] time= 13/06/2026 13:46:05
[2026-06-13 13:46:05,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:05,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:05,255.255 INFO    ] No existing commands found in stream
[2026-06-13 13:46:10,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:46:10,269.269 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 13:46:13,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:46:13,025.025 INFO    ] Checking for system updates...
[2026-06-13 13:46:13,047.047 INFO    ] 200
[2026-06-13 13:46:13,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:13,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:13,080.080 INFO    ] No update needed
[2026-06-13 13:46:13,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:13,101.101 INFO    ] 200
[2026-06-13 13:46:13,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:13,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:13,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:13,168.168 INFO    ] No camera update needed
[2026-06-13 13:46:13,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:13,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:13,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:13,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:15,217.217 INFO    ] ================================================
[2026-06-13 13:46:15,232.232 INFO    ] Launching Daemon at Sat Jun 13 13:46:15 IST 2026
[2026-06-13 13:46:15,243.243 INFO    ] ================================================
[2026-06-13 13:46:15,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:15
[2026-06-13 13:46:15,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:16,032.032 INFO    ] Initializing speech engine...
[2026-06-13 13:46:16,048.048 INFO    ] 2026-06-13 13:46:16
[2026-06-13 13:46:16,265.265 INFO    ] 2026-06-13 13:46:16
[2026-06-13 13:46:16,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:16,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:16,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:16,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:16,720.720 INFO    ] time= 13/06/2026 13:46:16
[2026-06-13 13:46:16,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:16,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:16,949.949 INFO    ] No existing commands found in stream
[2026-06-13 13:46:21,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:46:21,977.977 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 13:46:22,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:46:22,625.625 INFO    ] Checking for system updates...
[2026-06-13 13:46:22,647.647 INFO    ] 200
[2026-06-13 13:46:22,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:22,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:22,680.680 INFO    ] No update needed
[2026-06-13 13:46:22,681.681 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:22,702.702 INFO    ] 200
[2026-06-13 13:46:22,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:22,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:22,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:22,764.764 INFO    ] No camera update needed
[2026-06-13 13:46:22,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:22,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:22,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:22,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:24,811.811 INFO    ] ================================================
[2026-06-13 13:46:24,826.826 INFO    ] Launching Daemon at Sat Jun 13 13:46:24 IST 2026
[2026-06-13 13:46:24,837.837 INFO    ] ================================================
[2026-06-13 13:46:25,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:25
[2026-06-13 13:46:25,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:25,644.644 INFO    ] Initializing speech engine...
[2026-06-13 13:46:25,649.649 INFO    ] 2026-06-13 13:46:25
[2026-06-13 13:46:25,854.854 INFO    ] 2026-06-13 13:46:25
[2026-06-13 13:46:25,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:26,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:26,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:26,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:26,260.260 INFO    ] time= 13/06/2026 13:46:26
[2026-06-13 13:46:26,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:26,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:26,370.370 INFO    ] No existing commands found in stream
[2026-06-13 13:46:31,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:46:31,383.383 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 13:46:34,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:46:34,680.680 INFO    ] Checking for system updates...
[2026-06-13 13:46:34,700.700 INFO    ] 200
[2026-06-13 13:46:34,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:34,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:34,733.733 INFO    ] No update needed
[2026-06-13 13:46:34,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:34,754.754 INFO    ] 200
[2026-06-13 13:46:34,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:34,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:34,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:34,822.822 INFO    ] No camera update needed
[2026-06-13 13:46:34,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:34,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:34,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:34,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:36,869.869 INFO    ] ================================================
[2026-06-13 13:46:36,884.884 INFO    ] Launching Daemon at Sat Jun 13 13:46:36 IST 2026
[2026-06-13 13:46:36,895.895 INFO    ] ================================================
[2026-06-13 13:46:37,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:37
[2026-06-13 13:46:37,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:37,673.673 INFO    ] Initializing speech engine...
[2026-06-13 13:46:37,684.684 INFO    ] 2026-06-13 13:46:37
[2026-06-13 13:46:37,887.887 INFO    ] 2026-06-13 13:46:37
[2026-06-13 13:46:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:38,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:38,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:38,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:38,284.284 INFO    ] time= 13/06/2026 13:46:38
[2026-06-13 13:46:38,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:38,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:38,399.399 INFO    ] No existing commands found in stream
[2026-06-13 13:46:43,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:46:43,411.411 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 13:46:44,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:46:44,057.057 INFO    ] Checking for system updates...
[2026-06-13 13:46:44,093.093 INFO    ] 200
[2026-06-13 13:46:44,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:44,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:44,152.152 INFO    ] No update needed
[2026-06-13 13:46:44,154.154 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:44,189.189 INFO    ] 200
[2026-06-13 13:46:44,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:44,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:44,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:46:44,274.274 INFO    ] No camera update needed
[2026-06-13 13:46:44,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:44,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:44,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:44,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:46,322.322 INFO    ] ================================================
[2026-06-13 13:46:46,337.337 INFO    ] Launching Daemon at Sat Jun 13 13:46:46 IST 2026
[2026-06-13 13:46:46,347.347 INFO    ] ================================================
[2026-06-13 13:46:46,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:46
[2026-06-13 13:46:47,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:47,167.167 INFO    ] Initializing speech engine...
[2026-06-13 13:46:47,172.172 INFO    ] 2026-06-13 13:46:47
[2026-06-13 13:46:47,374.374 INFO    ] 2026-06-13 13:46:47
[2026-06-13 13:46:47,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:47,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:47,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:47,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:47,786.786 INFO    ] time= 13/06/2026 13:46:47
[2026-06-13 13:46:47,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:47,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:47,891.891 INFO    ] No existing commands found in stream
[2026-06-13 13:46:52,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:46:52,904.904 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 13:46:54,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:46:54,313.313 INFO    ] Checking for system updates...
[2026-06-13 13:46:54,334.334 INFO    ] 200
[2026-06-13 13:46:54,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:54,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:54,367.367 INFO    ] No update needed
[2026-06-13 13:46:54,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 13:46:54,388.388 INFO    ] 200
[2026-06-13 13:46:54,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:46:54,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:46:54,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:46:54,460.460 INFO    ] No camera update needed
[2026-06-13 13:46:54,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:46:54,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:46:54,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:46:54,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:46:56,507.507 INFO    ] ================================================
[2026-06-13 13:46:56,522.522 INFO    ] Launching Daemon at Sat Jun 13 13:46:56 IST 2026
[2026-06-13 13:46:56,533.533 INFO    ] ================================================
[2026-06-13 13:46:56,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:46:56
[2026-06-13 13:46:57,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:46:57,309.309 INFO    ] Initializing speech engine...
[2026-06-13 13:46:57,314.314 INFO    ] 2026-06-13 13:46:57
[2026-06-13 13:46:57,517.517 INFO    ] 2026-06-13 13:46:57
[2026-06-13 13:46:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:46:57,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:46:57,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:46:57,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:46:57,905.905 INFO    ] time= 13/06/2026 13:46:57
[2026-06-13 13:46:57,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:46:57,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:46:58,031.031 INFO    ] No existing commands found in stream
[2026-06-13 13:47:03,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:47:03,042.042 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 13:47:07,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:47:07,370.370 INFO    ] Checking for system updates...
[2026-06-13 13:47:07,391.391 INFO    ] 200
[2026-06-13 13:47:07,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:07,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:47:07,427.427 INFO    ] No update needed
[2026-06-13 13:47:07,428.428 INFO    ] Checking for camera pi updates...
[2026-06-13 13:47:07,448.448 INFO    ] 200
[2026-06-13 13:47:07,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:07,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:47:07,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:47:07,526.526 INFO    ] No camera update needed
[2026-06-13 13:47:07,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:47:07,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:47:07,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:47:07,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:47:09,574.574 INFO    ] ================================================
[2026-06-13 13:47:09,590.590 INFO    ] Launching Daemon at Sat Jun 13 13:47:09 IST 2026
[2026-06-13 13:47:09,601.601 INFO    ] ================================================
[2026-06-13 13:47:09,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:47:09
[2026-06-13 13:47:10,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:47:10,446.446 INFO    ] Initializing speech engine...
[2026-06-13 13:47:10,452.452 INFO    ] 2026-06-13 13:47:10
[2026-06-13 13:47:10,660.660 INFO    ] 2026-06-13 13:47:10
[2026-06-13 13:47:10,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:47:10,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:47:10,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:47:11,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:47:11,062.062 INFO    ] time= 13/06/2026 13:47:11
[2026-06-13 13:47:11,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:47:11,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:47:11,186.186 INFO    ] No existing commands found in stream
[2026-06-13 13:47:16,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:47:16,199.199 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 13:47:18,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:47:18,916.916 INFO    ] Checking for system updates...
[2026-06-13 13:47:18,937.937 INFO    ] 200
[2026-06-13 13:47:18,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:18,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:18,972.972 INFO    ] No update needed
[2026-06-13 13:47:18,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 13:47:18,994.994 INFO    ] 200
[2026-06-13 13:47:18,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:19,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:47:19,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:19,163.163 INFO    ] No camera update needed
[2026-06-13 13:47:19,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:47:19,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:47:19,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:47:19,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:47:21,211.211 INFO    ] ================================================
[2026-06-13 13:47:21,226.226 INFO    ] Launching Daemon at Sat Jun 13 13:47:21 IST 2026
[2026-06-13 13:47:21,237.237 INFO    ] ================================================
[2026-06-13 13:47:21,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:47:21
[2026-06-13 13:47:21,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:47:22,072.072 INFO    ] Initializing speech engine...
[2026-06-13 13:47:22,083.083 INFO    ] 2026-06-13 13:47:22
[2026-06-13 13:47:22,291.291 INFO    ] 2026-06-13 13:47:22
[2026-06-13 13:47:22,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:47:22,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:47:22,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:47:22,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:47:22,693.693 INFO    ] time= 13/06/2026 13:47:22
[2026-06-13 13:47:22,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:47:22,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:47:22,834.834 INFO    ] No existing commands found in stream
[2026-06-13 13:47:27,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:47:27,846.846 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 13:47:31,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:47:31,542.542 INFO    ] Checking for system updates...
[2026-06-13 13:47:31,568.568 INFO    ] 200
[2026-06-13 13:47:31,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:31,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:31,609.609 INFO    ] No update needed
[2026-06-13 13:47:31,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 13:47:31,633.633 INFO    ] 200
[2026-06-13 13:47:31,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:31,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:47:31,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:31,701.701 INFO    ] No camera update needed
[2026-06-13 13:47:31,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:47:31,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:47:31,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:47:31,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:47:33,751.751 INFO    ] ================================================
[2026-06-13 13:47:33,767.767 INFO    ] Launching Daemon at Sat Jun 13 13:47:33 IST 2026
[2026-06-13 13:47:33,778.778 INFO    ] ================================================
[2026-06-13 13:47:34,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:47:34
[2026-06-13 13:47:34,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:47:34,568.568 INFO    ] Initializing speech engine...
[2026-06-13 13:47:34,573.573 INFO    ] 2026-06-13 13:47:34
[2026-06-13 13:47:34,777.777 INFO    ] 2026-06-13 13:47:34
[2026-06-13 13:47:34,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:47:34,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:47:34,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:47:35,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:47:35,214.214 INFO    ] time= 13/06/2026 13:47:35
[2026-06-13 13:47:35,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:47:35,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:47:35,365.365 INFO    ] No existing commands found in stream
[2026-06-13 13:47:40,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:47:40,378.378 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 13:47:43,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:47:43,216.216 INFO    ] Checking for system updates...
[2026-06-13 13:47:43,237.237 INFO    ] 200
[2026-06-13 13:47:43,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:43,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:43,270.270 INFO    ] No update needed
[2026-06-13 13:47:43,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 13:47:43,291.291 INFO    ] 200
[2026-06-13 13:47:43,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:43,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:47:43,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:47:43,359.359 INFO    ] No camera update needed
[2026-06-13 13:47:43,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:47:43,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:47:43,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:47:43,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:47:45,406.406 INFO    ] ================================================
[2026-06-13 13:47:45,422.422 INFO    ] Launching Daemon at Sat Jun 13 13:47:45 IST 2026
[2026-06-13 13:47:45,433.433 INFO    ] ================================================
[2026-06-13 13:47:45,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:47:45
[2026-06-13 13:47:46,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:47:46,304.304 INFO    ] Initializing speech engine...
[2026-06-13 13:47:46,309.309 INFO    ] 2026-06-13 13:47:46
[2026-06-13 13:47:46,504.504 INFO    ] 2026-06-13 13:47:46
[2026-06-13 13:47:46,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:47:46,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:47:46,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:47:46,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:47:46,949.949 INFO    ] time= 13/06/2026 13:47:46
[2026-06-13 13:47:46,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:47:47,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:47:47,110.110 INFO    ] No existing commands found in stream
[2026-06-13 13:47:52,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:47:52,124.124 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 13:47:54,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:47:54,882.882 INFO    ] Checking for system updates...
[2026-06-13 13:47:54,904.904 INFO    ] 200
[2026-06-13 13:47:54,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:54,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:47:54,940.940 INFO    ] No update needed
[2026-06-13 13:47:54,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 13:47:54,961.961 INFO    ] 200
[2026-06-13 13:47:54,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:47:54,986.986 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:47:55,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:47:55,026.026 INFO    ] No camera update needed
[2026-06-13 13:47:55,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:47:55,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:47:55,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:47:55,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:47:57,075.075 INFO    ] ================================================
[2026-06-13 13:47:57,090.090 INFO    ] Launching Daemon at Sat Jun 13 13:47:57 IST 2026
[2026-06-13 13:47:57,102.102 INFO    ] ================================================
[2026-06-13 13:47:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:47:57
[2026-06-13 13:47:57,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:47:57,986.986 INFO    ] Initializing speech engine...
[2026-06-13 13:47:57,990.990 INFO    ] 2026-06-13 13:47:57
[2026-06-13 13:47:58,200.200 INFO    ] 2026-06-13 13:47:58
[2026-06-13 13:47:58,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:47:58,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:47:58,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:47:58,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:47:58,610.610 INFO    ] time= 13/06/2026 13:47:58
[2026-06-13 13:47:58,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:47:58,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:47:58,722.722 INFO    ] No existing commands found in stream
[2026-06-13 13:48:03,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:48:03,750.750 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 13:48:07,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:48:07,217.217 INFO    ] Checking for system updates...
[2026-06-13 13:48:07,239.239 INFO    ] 200
[2026-06-13 13:48:07,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:07,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:48:07,275.275 INFO    ] No update needed
[2026-06-13 13:48:07,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 13:48:07,298.298 INFO    ] 200
[2026-06-13 13:48:07,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:07,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:48:07,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:48:07,364.364 INFO    ] No camera update needed
[2026-06-13 13:48:07,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:48:07,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:48:07,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:48:07,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:48:09,413.413 INFO    ] ================================================
[2026-06-13 13:48:09,428.428 INFO    ] Launching Daemon at Sat Jun 13 13:48:09 IST 2026
[2026-06-13 13:48:09,439.439 INFO    ] ================================================
[2026-06-13 13:48:09,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:48:09
[2026-06-13 13:48:10,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:48:10,236.236 INFO    ] Initializing speech engine...
[2026-06-13 13:48:10,239.239 INFO    ] 2026-06-13 13:48:10
[2026-06-13 13:48:10,466.466 INFO    ] 2026-06-13 13:48:10
[2026-06-13 13:48:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:48:10,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:48:10,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:48:10,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:48:10,891.891 INFO    ] time= 13/06/2026 13:48:10
[2026-06-13 13:48:10,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:48:10,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:48:11,041.041 INFO    ] No existing commands found in stream
[2026-06-13 13:48:16,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:48:16,053.053 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 13:48:19,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:48:19,458.458 INFO    ] Checking for system updates...
[2026-06-13 13:48:19,482.482 INFO    ] 200
[2026-06-13 13:48:19,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:19,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:19,520.520 INFO    ] No update needed
[2026-06-13 13:48:19,522.522 INFO    ] Checking for camera pi updates...
[2026-06-13 13:48:19,544.544 INFO    ] 200
[2026-06-13 13:48:19,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:19,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:48:19,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:19,618.618 INFO    ] No camera update needed
[2026-06-13 13:48:19,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:48:19,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:48:19,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:48:19,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:48:21,654.654 INFO    ] ================================================
[2026-06-13 13:48:21,663.663 INFO    ] Launching Daemon at Sat Jun 13 13:48:21 IST 2026
[2026-06-13 13:48:21,673.673 INFO    ] ================================================
[2026-06-13 13:48:21,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:48:21
[2026-06-13 13:48:22,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:48:22,479.479 INFO    ] Initializing speech engine...
[2026-06-13 13:48:22,484.484 INFO    ] 2026-06-13 13:48:22
[2026-06-13 13:48:22,706.706 INFO    ] 2026-06-13 13:48:22
[2026-06-13 13:48:22,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:48:22,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:48:22,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:48:23,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:48:23,154.154 INFO    ] time= 13/06/2026 13:48:23
[2026-06-13 13:48:23,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:48:23,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:48:23,261.261 INFO    ] No existing commands found in stream
[2026-06-13 13:48:28,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:48:28,274.274 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 13:48:29,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:48:29,236.236 INFO    ] Checking for system updates...
[2026-06-13 13:48:29,257.257 INFO    ] 200
[2026-06-13 13:48:29,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:29,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:29,293.293 INFO    ] No update needed
[2026-06-13 13:48:29,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 13:48:29,314.314 INFO    ] 200
[2026-06-13 13:48:29,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:29,339.339 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:48:29,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:29,388.388 INFO    ] No camera update needed
[2026-06-13 13:48:29,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:48:29,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:48:29,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:48:29,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:48:31,436.436 INFO    ] ================================================
[2026-06-13 13:48:31,451.451 INFO    ] Launching Daemon at Sat Jun 13 13:48:31 IST 2026
[2026-06-13 13:48:31,462.462 INFO    ] ================================================
[2026-06-13 13:48:31,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:48:31
[2026-06-13 13:48:32,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:48:32,328.328 INFO    ] Initializing speech engine...
[2026-06-13 13:48:32,342.342 INFO    ] 2026-06-13 13:48:32
[2026-06-13 13:48:32,541.541 INFO    ] 2026-06-13 13:48:32
[2026-06-13 13:48:32,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:48:32,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:48:32,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:48:32,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:48:32,820.820 INFO    ] time= 13/06/2026 13:48:32
[2026-06-13 13:48:32,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:48:32,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:48:32,929.929 INFO    ] No existing commands found in stream
[2026-06-13 13:48:37,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:48:37,954.954 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 13:48:40,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:48:40,155.155 INFO    ] Checking for system updates...
[2026-06-13 13:48:40,176.176 INFO    ] 200
[2026-06-13 13:48:40,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:40,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:40,212.212 INFO    ] No update needed
[2026-06-13 13:48:40,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 13:48:40,234.234 INFO    ] 200
[2026-06-13 13:48:40,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:40,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:48:40,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:48:40,283.283 INFO    ] No camera update needed
[2026-06-13 13:48:40,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:48:40,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:48:40,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:48:40,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:48:42,331.331 INFO    ] ================================================
[2026-06-13 13:48:42,346.346 INFO    ] Launching Daemon at Sat Jun 13 13:48:42 IST 2026
[2026-06-13 13:48:42,357.357 INFO    ] ================================================
[2026-06-13 13:48:42,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:48:42
[2026-06-13 13:48:43,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:48:43,237.237 INFO    ] Initializing speech engine...
[2026-06-13 13:48:43,243.243 INFO    ] 2026-06-13 13:48:43
[2026-06-13 13:48:43,450.450 INFO    ] 2026-06-13 13:48:43
[2026-06-13 13:48:43,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:48:43,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:48:43,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:48:43,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:48:43,868.868 INFO    ] time= 13/06/2026 13:48:43
[2026-06-13 13:48:43,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:48:43,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:48:43,971.971 INFO    ] No existing commands found in stream
[2026-06-13 13:48:48,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:48:48,983.983 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 13:48:52,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:48:52,233.233 INFO    ] Checking for system updates...
[2026-06-13 13:48:52,253.253 INFO    ] 200
[2026-06-13 13:48:52,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:52,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:48:52,287.287 INFO    ] No update needed
[2026-06-13 13:48:52,289.289 INFO    ] Checking for camera pi updates...
[2026-06-13 13:48:52,309.309 INFO    ] 200
[2026-06-13 13:48:52,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:48:52,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:48:52,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:48:52,373.373 INFO    ] No camera update needed
[2026-06-13 13:48:52,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:48:52,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:48:52,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:48:52,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:48:54,420.420 INFO    ] ================================================
[2026-06-13 13:48:54,435.435 INFO    ] Launching Daemon at Sat Jun 13 13:48:54 IST 2026
[2026-06-13 13:48:54,445.445 INFO    ] ================================================
[2026-06-13 13:48:54,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:48:54
[2026-06-13 13:48:55,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:48:55,293.293 INFO    ] Initializing speech engine...
[2026-06-13 13:48:55,298.298 INFO    ] 2026-06-13 13:48:55
[2026-06-13 13:48:55,505.505 INFO    ] 2026-06-13 13:48:55
[2026-06-13 13:48:55,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:48:55,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:48:55,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:48:55,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:48:55,919.919 INFO    ] time= 13/06/2026 13:48:55
[2026-06-13 13:48:55,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:48:55,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:48:56,024.024 INFO    ] No existing commands found in stream
[2026-06-13 13:49:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:01,042.042 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 13:49:02,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:49:02,542.542 INFO    ] Checking for system updates...
[2026-06-13 13:49:02,572.572 INFO    ] 200
[2026-06-13 13:49:02,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:02,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:02,614.614 INFO    ] No update needed
[2026-06-13 13:49:02,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 13:49:02,643.643 INFO    ] 200
[2026-06-13 13:49:02,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:02,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:49:02,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:02,708.708 INFO    ] No camera update needed
[2026-06-13 13:49:02,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:49:02,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:49:02,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:49:02,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:49:04,766.766 INFO    ] ================================================
[2026-06-13 13:49:04,782.782 INFO    ] Launching Daemon at Sat Jun 13 13:49:04 IST 2026
[2026-06-13 13:49:04,793.793 INFO    ] ================================================
[2026-06-13 13:49:05,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:49:05
[2026-06-13 13:49:05,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:49:05,639.639 INFO    ] Initializing speech engine...
[2026-06-13 13:49:05,643.643 INFO    ] 2026-06-13 13:49:05
[2026-06-13 13:49:05,850.850 INFO    ] 2026-06-13 13:49:05
[2026-06-13 13:49:05,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:49:06,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:49:06,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:49:06,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:49:06,262.262 INFO    ] time= 13/06/2026 13:49:06
[2026-06-13 13:49:06,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:49:06,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:49:06,377.377 INFO    ] No existing commands found in stream
[2026-06-13 13:49:11,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:11,385.385 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 13:49:13,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:49:13,242.242 INFO    ] Checking for system updates...
[2026-06-13 13:49:13,263.263 INFO    ] 200
[2026-06-13 13:49:13,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:13,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:13,298.298 INFO    ] No update needed
[2026-06-13 13:49:13,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 13:49:13,319.319 INFO    ] 200
[2026-06-13 13:49:13,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:13,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:49:13,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:13,381.381 INFO    ] No camera update needed
[2026-06-13 13:49:13,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:49:13,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:49:13,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:49:13,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:49:15,432.432 INFO    ] ================================================
[2026-06-13 13:49:15,447.447 INFO    ] Launching Daemon at Sat Jun 13 13:49:15 IST 2026
[2026-06-13 13:49:15,457.457 INFO    ] ================================================
[2026-06-13 13:49:15,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:49:15
[2026-06-13 13:49:16,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:49:16,256.256 INFO    ] Initializing speech engine...
[2026-06-13 13:49:16,265.265 INFO    ] 2026-06-13 13:49:16
[2026-06-13 13:49:16,473.473 INFO    ] 2026-06-13 13:49:16
[2026-06-13 13:49:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:49:16,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:49:16,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:49:16,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:49:16,844.844 INFO    ] time= 13/06/2026 13:49:16
[2026-06-13 13:49:16,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:49:16,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:49:17,050.050 INFO    ] No existing commands found in stream
[2026-06-13 13:49:22,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:22,063.063 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 13:49:25,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:49:25,612.612 INFO    ] Checking for system updates...
[2026-06-13 13:49:25,646.646 INFO    ] 200
[2026-06-13 13:49:25,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:25,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:25,706.706 INFO    ] No update needed
[2026-06-13 13:49:25,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 13:49:25,731.731 INFO    ] 200
[2026-06-13 13:49:25,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:25,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:49:25,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:25,908.908 INFO    ] No camera update needed
[2026-06-13 13:49:25,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:49:25,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:49:25,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:49:25,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:49:27,956.956 INFO    ] ================================================
[2026-06-13 13:49:27,971.971 INFO    ] Launching Daemon at Sat Jun 13 13:49:27 IST 2026
[2026-06-13 13:49:27,981.981 INFO    ] ================================================
[2026-06-13 13:49:28,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:49:28
[2026-06-13 13:49:28,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:49:28,795.795 INFO    ] Initializing speech engine...
[2026-06-13 13:49:28,800.800 INFO    ] 2026-06-13 13:49:28
[2026-06-13 13:49:29,003.003 INFO    ] 2026-06-13 13:49:28
[2026-06-13 13:49:29,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:49:29,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:49:29,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:49:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:49:29,421.421 INFO    ] time= 13/06/2026 13:49:29
[2026-06-13 13:49:29,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:49:29,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:49:29,516.516 INFO    ] No existing commands found in stream
[2026-06-13 13:49:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:34,527.527 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 13:49:38,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:49:38,622.622 INFO    ] Checking for system updates...
[2026-06-13 13:49:38,664.664 INFO    ] 200
[2026-06-13 13:49:38,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:38,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:38,728.728 INFO    ] No update needed
[2026-06-13 13:49:38,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 13:49:38,763.763 INFO    ] 200
[2026-06-13 13:49:38,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:38,788.788 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:49:38,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:49:38,837.837 INFO    ] No camera update needed
[2026-06-13 13:49:38,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:49:38,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:49:38,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:49:38,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:49:40,885.885 INFO    ] ================================================
[2026-06-13 13:49:40,900.900 INFO    ] Launching Daemon at Sat Jun 13 13:49:40 IST 2026
[2026-06-13 13:49:40,910.910 INFO    ] ================================================
[2026-06-13 13:49:41,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:49:41
[2026-06-13 13:49:41,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:49:41,728.728 INFO    ] Initializing speech engine...
[2026-06-13 13:49:41,734.734 INFO    ] 2026-06-13 13:49:41
[2026-06-13 13:49:41,939.939 INFO    ] 2026-06-13 13:49:41
[2026-06-13 13:49:41,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:49:42,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:49:42,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:49:42,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:49:42,356.356 INFO    ] time= 13/06/2026 13:49:42
[2026-06-13 13:49:42,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:49:42,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:49:42,485.485 INFO    ] No existing commands found in stream
[2026-06-13 13:49:47,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:47,513.513 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 13:49:51,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:49:51,142.142 INFO    ] Checking for system updates...
[2026-06-13 13:49:51,163.163 INFO    ] 200
[2026-06-13 13:49:51,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:51,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:49:51,197.197 INFO    ] No update needed
[2026-06-13 13:49:51,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 13:49:51,220.220 INFO    ] 200
[2026-06-13 13:49:51,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:49:51,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:49:51,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:49:51,286.286 INFO    ] No camera update needed
[2026-06-13 13:49:51,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:49:51,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:49:51,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:49:51,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:49:53,335.335 INFO    ] ================================================
[2026-06-13 13:49:53,350.350 INFO    ] Launching Daemon at Sat Jun 13 13:49:53 IST 2026
[2026-06-13 13:49:53,361.361 INFO    ] ================================================
[2026-06-13 13:49:53,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:49:53
[2026-06-13 13:49:54,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:49:54,145.145 INFO    ] Initializing speech engine...
[2026-06-13 13:49:54,150.150 INFO    ] 2026-06-13 13:49:54
[2026-06-13 13:49:54,356.356 INFO    ] 2026-06-13 13:49:54
[2026-06-13 13:49:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:49:54,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:49:54,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:49:54,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:49:54,773.773 INFO    ] time= 13/06/2026 13:49:54
[2026-06-13 13:49:54,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:49:54,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:49:54,874.874 INFO    ] No existing commands found in stream
[2026-06-13 13:49:59,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:49:59,882.882 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 13:50:05,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:50:05,251.251 INFO    ] Checking for system updates...
[2026-06-13 13:50:05,291.291 INFO    ] 200
[2026-06-13 13:50:05,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:05,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:05,351.351 INFO    ] No update needed
[2026-06-13 13:50:05,352.352 INFO    ] Checking for camera pi updates...
[2026-06-13 13:50:05,373.373 INFO    ] 200
[2026-06-13 13:50:05,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:05,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:50:05,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:05,439.439 INFO    ] No camera update needed
[2026-06-13 13:50:05,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:50:05,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:50:05,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:50:05,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:50:07,487.487 INFO    ] ================================================
[2026-06-13 13:50:07,503.503 INFO    ] Launching Daemon at Sat Jun 13 13:50:07 IST 2026
[2026-06-13 13:50:07,516.516 INFO    ] ================================================
[2026-06-13 13:50:07,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:50:07
[2026-06-13 13:50:08,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:50:08,323.323 INFO    ] Initializing speech engine...
[2026-06-13 13:50:08,328.328 INFO    ] 2026-06-13 13:50:08
[2026-06-13 13:50:08,531.531 INFO    ] 2026-06-13 13:50:08
[2026-06-13 13:50:08,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:50:08,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:50:08,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:50:08,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:50:08,938.938 INFO    ] time= 13/06/2026 13:50:08
[2026-06-13 13:50:08,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:50:08,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:50:09,049.049 INFO    ] No existing commands found in stream
[2026-06-13 13:50:14,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:50:14,061.061 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 13:50:17,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:50:17,969.969 INFO    ] Checking for system updates...
[2026-06-13 13:50:17,993.993 INFO    ] 200
[2026-06-13 13:50:17,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:18,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:18,030.030 INFO    ] No update needed
[2026-06-13 13:50:18,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 13:50:18,051.051 INFO    ] 200
[2026-06-13 13:50:18,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:18,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:50:18,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:18,115.115 INFO    ] No camera update needed
[2026-06-13 13:50:18,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:50:18,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:50:18,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:50:18,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:50:20,162.162 INFO    ] ================================================
[2026-06-13 13:50:20,177.177 INFO    ] Launching Daemon at Sat Jun 13 13:50:20 IST 2026
[2026-06-13 13:50:20,187.187 INFO    ] ================================================
[2026-06-13 13:50:20,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:50:20
[2026-06-13 13:50:20,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:50:20,963.963 INFO    ] Initializing speech engine...
[2026-06-13 13:50:20,968.968 INFO    ] 2026-06-13 13:50:20
[2026-06-13 13:50:21,195.195 INFO    ] 2026-06-13 13:50:21
[2026-06-13 13:50:21,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:50:21,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:50:21,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:50:21,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:50:21,566.566 INFO    ] time= 13/06/2026 13:50:21
[2026-06-13 13:50:21,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:50:21,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:50:21,745.745 INFO    ] No existing commands found in stream
[2026-06-13 13:50:26,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:50:26,759.759 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 13:50:30,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:50:30,796.796 INFO    ] Checking for system updates...
[2026-06-13 13:50:30,817.817 INFO    ] 200
[2026-06-13 13:50:30,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:30,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:30,850.850 INFO    ] No update needed
[2026-06-13 13:50:30,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 13:50:30,871.871 INFO    ] 200
[2026-06-13 13:50:30,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:30,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:50:30,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:30,934.934 INFO    ] No camera update needed
[2026-06-13 13:50:30,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:50:30,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:50:30,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:50:30,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:50:32,974.974 INFO    ] ================================================
[2026-06-13 13:50:32,989.989 INFO    ] Launching Daemon at Sat Jun 13 13:50:32 IST 2026
[2026-06-13 13:50:33,999.999 INFO    ] ================================================
[2026-06-13 13:50:33,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:50:33
[2026-06-13 13:50:33,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:50:33,809.809 INFO    ] Initializing speech engine...
[2026-06-13 13:50:33,814.814 INFO    ] 2026-06-13 13:50:33
[2026-06-13 13:50:34,019.019 INFO    ] 2026-06-13 13:50:34
[2026-06-13 13:50:34,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:50:34,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:50:34,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:50:34,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:50:34,430.430 INFO    ] time= 13/06/2026 13:50:34
[2026-06-13 13:50:34,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:50:34,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:50:34,535.535 INFO    ] No existing commands found in stream
[2026-06-13 13:50:39,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:50:39,547.547 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 13:50:43,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:50:43,612.612 INFO    ] Checking for system updates...
[2026-06-13 13:50:43,633.633 INFO    ] 200
[2026-06-13 13:50:43,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:43,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:43,669.669 INFO    ] No update needed
[2026-06-13 13:50:43,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 13:50:43,689.689 INFO    ] 200
[2026-06-13 13:50:43,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:43,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:50:43,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:43,754.754 INFO    ] No camera update needed
[2026-06-13 13:50:43,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:50:43,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:50:43,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:50:43,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:50:45,795.795 INFO    ] ================================================
[2026-06-13 13:50:45,805.805 INFO    ] Launching Daemon at Sat Jun 13 13:50:45 IST 2026
[2026-06-13 13:50:45,812.812 INFO    ] ================================================
[2026-06-13 13:50:46,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:50:46
[2026-06-13 13:50:47,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:50:47,294.294 INFO    ] Initializing speech engine...
[2026-06-13 13:50:47,305.305 INFO    ] 2026-06-13 13:50:47
[2026-06-13 13:50:47,566.566 INFO    ] 2026-06-13 13:50:47
[2026-06-13 13:50:47,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:50:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:50:47,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:50:48,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:50:48,069.069 INFO    ] time= 13/06/2026 13:50:48
[2026-06-13 13:50:48,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:50:48,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:50:48,242.242 INFO    ] No existing commands found in stream
[2026-06-13 13:50:53,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:50:53,258.258 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 13:50:57,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:50:57,292.292 INFO    ] Checking for system updates...
[2026-06-13 13:50:57,312.312 INFO    ] 200
[2026-06-13 13:50:57,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:57,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:57,345.345 INFO    ] No update needed
[2026-06-13 13:50:57,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 13:50:57,368.368 INFO    ] 200
[2026-06-13 13:50:57,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:50:57,393.393 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:50:57,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:50:57,440.440 INFO    ] No camera update needed
[2026-06-13 13:50:57,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:50:57,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:50:57,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:50:57,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:50:59,487.487 INFO    ] ================================================
[2026-06-13 13:50:59,503.503 INFO    ] Launching Daemon at Sat Jun 13 13:50:59 IST 2026
[2026-06-13 13:50:59,514.514 INFO    ] ================================================
[2026-06-13 13:50:59,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:50:59
[2026-06-13 13:51:00,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:00,292.292 INFO    ] Initializing speech engine...
[2026-06-13 13:51:00,297.297 INFO    ] 2026-06-13 13:51:00
[2026-06-13 13:51:00,527.527 INFO    ] 2026-06-13 13:51:00
[2026-06-13 13:51:00,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:00,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:00,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:00,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:00,948.948 INFO    ] time= 13/06/2026 13:51:00
[2026-06-13 13:51:00,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:01,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:01,085.085 INFO    ] No existing commands found in stream
[2026-06-13 13:51:06,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:51:06,099.099 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 13:51:10,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:51:10,360.360 INFO    ] Checking for system updates...
[2026-06-13 13:51:10,382.382 INFO    ] 200
[2026-06-13 13:51:10,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:10,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:10,417.417 INFO    ] No update needed
[2026-06-13 13:51:10,418.418 INFO    ] Checking for camera pi updates...
[2026-06-13 13:51:10,438.438 INFO    ] 200
[2026-06-13 13:51:10,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:10,467.467 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:51:10,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:10,514.514 INFO    ] No camera update needed
[2026-06-13 13:51:10,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:51:10,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:51:10,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:51:10,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:51:12,562.562 INFO    ] ================================================
[2026-06-13 13:51:12,578.578 INFO    ] Launching Daemon at Sat Jun 13 13:51:12 IST 2026
[2026-06-13 13:51:12,589.589 INFO    ] ================================================
[2026-06-13 13:51:12,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:51:12
[2026-06-13 13:51:13,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:13,425.425 INFO    ] Initializing speech engine...
[2026-06-13 13:51:13,430.430 INFO    ] 2026-06-13 13:51:13
[2026-06-13 13:51:13,636.636 INFO    ] 2026-06-13 13:51:13
[2026-06-13 13:51:13,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:13,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:13,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:14,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:14,058.058 INFO    ] time= 13/06/2026 13:51:14
[2026-06-13 13:51:14,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:14,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:14,265.265 INFO    ] No existing commands found in stream
[2026-06-13 13:51:19,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:51:19,277.277 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 13:51:21,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:51:21,163.163 INFO    ] Checking for system updates...
[2026-06-13 13:51:21,184.184 INFO    ] 200
[2026-06-13 13:51:21,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:21,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:21,217.217 INFO    ] No update needed
[2026-06-13 13:51:21,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 13:51:21,238.238 INFO    ] 200
[2026-06-13 13:51:21,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:21,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:51:21,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:21,302.302 INFO    ] No camera update needed
[2026-06-13 13:51:21,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:51:21,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:51:21,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:51:21,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:51:23,350.350 INFO    ] ================================================
[2026-06-13 13:51:23,365.365 INFO    ] Launching Daemon at Sat Jun 13 13:51:23 IST 2026
[2026-06-13 13:51:23,376.376 INFO    ] ================================================
[2026-06-13 13:51:23,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:51:23
[2026-06-13 13:51:24,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:24,196.196 INFO    ] Initializing speech engine...
[2026-06-13 13:51:24,201.201 INFO    ] 2026-06-13 13:51:24
[2026-06-13 13:51:24,411.411 INFO    ] 2026-06-13 13:51:24
[2026-06-13 13:51:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:24,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:24,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:24,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:24,861.861 INFO    ] time= 13/06/2026 13:51:24
[2026-06-13 13:51:24,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:24,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:24,996.996 INFO    ] No existing commands found in stream
[2026-06-13 13:51:30,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:51:30,010.010 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 13:51:30,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:51:30,844.844 INFO    ] Checking for system updates...
[2026-06-13 13:51:30,866.866 INFO    ] 200
[2026-06-13 13:51:30,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:30,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:30,904.904 INFO    ] No update needed
[2026-06-13 13:51:30,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 13:51:30,929.929 INFO    ] 200
[2026-06-13 13:51:30,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:30,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:51:31,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:31,101.101 INFO    ] No camera update needed
[2026-06-13 13:51:31,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:51:31,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:51:31,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:51:31,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:51:33,143.143 INFO    ] ================================================
[2026-06-13 13:51:33,158.158 INFO    ] Launching Daemon at Sat Jun 13 13:51:33 IST 2026
[2026-06-13 13:51:33,169.169 INFO    ] ================================================
[2026-06-13 13:51:33,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:51:33
[2026-06-13 13:51:33,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:33,960.960 INFO    ] Initializing speech engine...
[2026-06-13 13:51:33,970.970 INFO    ] 2026-06-13 13:51:33
[2026-06-13 13:51:34,177.177 INFO    ] 2026-06-13 13:51:34
[2026-06-13 13:51:34,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:34,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:34,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:34,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:34,582.582 INFO    ] time= 13/06/2026 13:51:34
[2026-06-13 13:51:34,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:34,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:34,693.693 INFO    ] No existing commands found in stream
[2026-06-13 13:51:39,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:51:39,710.710 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 13:51:43,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:51:43,442.442 INFO    ] Checking for system updates...
[2026-06-13 13:51:43,463.463 INFO    ] 200
[2026-06-13 13:51:43,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:43,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:43,498.498 INFO    ] No update needed
[2026-06-13 13:51:43,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 13:51:43,519.519 INFO    ] 200
[2026-06-13 13:51:43,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:43,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:51:43,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:51:43,585.585 INFO    ] No camera update needed
[2026-06-13 13:51:43,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:51:43,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:51:43,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:51:43,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:51:45,632.632 INFO    ] ================================================
[2026-06-13 13:51:45,647.647 INFO    ] Launching Daemon at Sat Jun 13 13:51:45 IST 2026
[2026-06-13 13:51:45,658.658 INFO    ] ================================================
[2026-06-13 13:51:46,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:51:46
[2026-06-13 13:51:46,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:46,518.518 INFO    ] Initializing speech engine...
[2026-06-13 13:51:46,522.522 INFO    ] 2026-06-13 13:51:46
[2026-06-13 13:51:46,734.734 INFO    ] 2026-06-13 13:51:46
[2026-06-13 13:51:46,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:46,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:46,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:47,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:47,165.165 INFO    ] time= 13/06/2026 13:51:47
[2026-06-13 13:51:47,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:47,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:47,264.264 INFO    ] No existing commands found in stream
[2026-06-13 13:51:52,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:51:52,282.282 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 13:51:53,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:51:53,535.535 INFO    ] Checking for system updates...
[2026-06-13 13:51:53,556.556 INFO    ] 200
[2026-06-13 13:51:53,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:53,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:51:53,592.592 INFO    ] No update needed
[2026-06-13 13:51:53,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 13:51:53,614.614 INFO    ] 200
[2026-06-13 13:51:53,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:51:53,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:51:53,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:51:53,679.679 INFO    ] No camera update needed
[2026-06-13 13:51:53,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:51:53,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:51:53,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:51:53,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:51:55,723.723 INFO    ] ================================================
[2026-06-13 13:51:55,738.738 INFO    ] Launching Daemon at Sat Jun 13 13:51:55 IST 2026
[2026-06-13 13:51:55,749.749 INFO    ] ================================================
[2026-06-13 13:51:56,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:51:56
[2026-06-13 13:51:56,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:51:56,549.549 INFO    ] Initializing speech engine...
[2026-06-13 13:51:56,554.554 INFO    ] 2026-06-13 13:51:56
[2026-06-13 13:51:56,760.760 INFO    ] 2026-06-13 13:51:56
[2026-06-13 13:51:56,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:51:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:51:56,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:51:57,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:51:57,159.159 INFO    ] time= 13/06/2026 13:51:57
[2026-06-13 13:51:57,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:51:57,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:51:57,278.278 INFO    ] No existing commands found in stream
[2026-06-13 13:52:02,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:02,290.290 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 13:52:02,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:52:02,754.754 INFO    ] Checking for system updates...
[2026-06-13 13:52:02,776.776 INFO    ] 200
[2026-06-13 13:52:02,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:02,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:02,810.810 INFO    ] No update needed
[2026-06-13 13:52:02,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:02,830.830 INFO    ] 200
[2026-06-13 13:52:02,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:02,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:02,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:02,886.886 INFO    ] No camera update needed
[2026-06-13 13:52:02,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:02,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:02,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:02,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:04,935.935 INFO    ] ================================================
[2026-06-13 13:52:04,950.950 INFO    ] Launching Daemon at Sat Jun 13 13:52:04 IST 2026
[2026-06-13 13:52:04,961.961 INFO    ] ================================================
[2026-06-13 13:52:05,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:52:05
[2026-06-13 13:52:05,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:52:05,864.864 INFO    ] Initializing speech engine...
[2026-06-13 13:52:05,870.870 INFO    ] 2026-06-13 13:52:05
[2026-06-13 13:52:06,079.079 INFO    ] 2026-06-13 13:52:06
[2026-06-13 13:52:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:52:06,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:52:06,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:52:06,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:52:06,510.510 INFO    ] time= 13/06/2026 13:52:06
[2026-06-13 13:52:06,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:52:06,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:52:06,606.606 INFO    ] No existing commands found in stream
[2026-06-13 13:52:11,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:11,621.621 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 13:52:13,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:52:13,219.219 INFO    ] Checking for system updates...
[2026-06-13 13:52:13,240.240 INFO    ] 200
[2026-06-13 13:52:13,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:13,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:13,274.274 INFO    ] No update needed
[2026-06-13 13:52:13,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:13,296.296 INFO    ] 200
[2026-06-13 13:52:13,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:13,321.321 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:13,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:13,366.366 INFO    ] No camera update needed
[2026-06-13 13:52:13,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:13,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:13,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:13,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:15,418.418 INFO    ] ================================================
[2026-06-13 13:52:15,433.433 INFO    ] Launching Daemon at Sat Jun 13 13:52:15 IST 2026
[2026-06-13 13:52:15,444.444 INFO    ] ================================================
[2026-06-13 13:52:15,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:52:15
[2026-06-13 13:52:16,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:52:16,753.753 INFO    ] Initializing speech engine...
[2026-06-13 13:52:16,763.763 INFO    ] 2026-06-13 13:52:16
[2026-06-13 13:52:17,030.030 INFO    ] 2026-06-13 13:52:17
[2026-06-13 13:52:17,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:52:17,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:52:17,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:52:17,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:52:17,410.410 INFO    ] time= 13/06/2026 13:52:17
[2026-06-13 13:52:17,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:52:17,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:52:17,584.584 INFO    ] No existing commands found in stream
[2026-06-13 13:52:22,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:22,619.619 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 13:52:26,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:52:26,340.340 INFO    ] Checking for system updates...
[2026-06-13 13:52:26,360.360 INFO    ] 200
[2026-06-13 13:52:26,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:26,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:26,393.393 INFO    ] No update needed
[2026-06-13 13:52:26,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:26,414.414 INFO    ] 200
[2026-06-13 13:52:26,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:26,441.441 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:26,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:26,487.487 INFO    ] No camera update needed
[2026-06-13 13:52:26,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:26,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:26,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:26,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:28,534.534 INFO    ] ================================================
[2026-06-13 13:52:28,549.549 INFO    ] Launching Daemon at Sat Jun 13 13:52:28 IST 2026
[2026-06-13 13:52:28,560.560 INFO    ] ================================================
[2026-06-13 13:52:28,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:52:28
[2026-06-13 13:52:29,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:52:29,370.370 INFO    ] Initializing speech engine...
[2026-06-13 13:52:29,375.375 INFO    ] 2026-06-13 13:52:29
[2026-06-13 13:52:29,580.580 INFO    ] 2026-06-13 13:52:29
[2026-06-13 13:52:29,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:52:29,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:52:29,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:52:29,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:52:29,979.979 INFO    ] time= 13/06/2026 13:52:29
[2026-06-13 13:52:30,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:52:30,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:52:30,092.092 INFO    ] No existing commands found in stream
[2026-06-13 13:52:35,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:35,106.106 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 13:52:38,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:52:38,804.804 INFO    ] Checking for system updates...
[2026-06-13 13:52:38,824.824 INFO    ] 200
[2026-06-13 13:52:38,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:38,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:38,860.860 INFO    ] No update needed
[2026-06-13 13:52:38,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:38,881.881 INFO    ] 200
[2026-06-13 13:52:38,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:38,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:38,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:38,952.952 INFO    ] No camera update needed
[2026-06-13 13:52:38,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:38,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:38,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:38,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:41,998.998 INFO    ] ================================================
[2026-06-13 13:52:41,014.014 INFO    ] Launching Daemon at Sat Jun 13 13:52:41 IST 2026
[2026-06-13 13:52:41,025.025 INFO    ] ================================================
[2026-06-13 13:52:41,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:52:41
[2026-06-13 13:52:41,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:52:41,798.798 INFO    ] Initializing speech engine...
[2026-06-13 13:52:41,803.803 INFO    ] 2026-06-13 13:52:41
[2026-06-13 13:52:41,995.995 INFO    ] 2026-06-13 13:52:41
[2026-06-13 13:52:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:52:42,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:52:42,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:52:42,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:52:42,281.281 INFO    ] time= 13/06/2026 13:52:42
[2026-06-13 13:52:42,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:52:42,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:52:42,418.418 INFO    ] No existing commands found in stream
[2026-06-13 13:52:47,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:47,436.436 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 13:52:48,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:52:48,283.283 INFO    ] Checking for system updates...
[2026-06-13 13:52:48,304.304 INFO    ] 200
[2026-06-13 13:52:48,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:48,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:48,341.341 INFO    ] No update needed
[2026-06-13 13:52:48,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:48,365.365 INFO    ] 200
[2026-06-13 13:52:48,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:48,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:48,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:52:48,430.430 INFO    ] No camera update needed
[2026-06-13 13:52:48,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:48,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:48,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:48,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:50,480.480 INFO    ] ================================================
[2026-06-13 13:52:50,495.495 INFO    ] Launching Daemon at Sat Jun 13 13:52:50 IST 2026
[2026-06-13 13:52:50,506.506 INFO    ] ================================================
[2026-06-13 13:52:50,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:52:50
[2026-06-13 13:52:51,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:52:51,288.288 INFO    ] Initializing speech engine...
[2026-06-13 13:52:51,294.294 INFO    ] 2026-06-13 13:52:51
[2026-06-13 13:52:51,495.495 INFO    ] 2026-06-13 13:52:51
[2026-06-13 13:52:51,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:52:51,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:52:51,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:52:51,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:52:51,910.910 INFO    ] time= 13/06/2026 13:52:51
[2026-06-13 13:52:51,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:52:51,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:52:52,009.009 INFO    ] No existing commands found in stream
[2026-06-13 13:52:57,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:52:57,027.027 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 13:52:57,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:52:57,758.758 INFO    ] Checking for system updates...
[2026-06-13 13:52:57,780.780 INFO    ] 200
[2026-06-13 13:52:57,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:57,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:57,816.816 INFO    ] No update needed
[2026-06-13 13:52:57,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 13:52:57,838.838 INFO    ] 200
[2026-06-13 13:52:57,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:52:57,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:52:57,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:52:57,901.901 INFO    ] No camera update needed
[2026-06-13 13:52:57,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:52:57,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:52:57,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:52:57,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:52:59,948.948 INFO    ] ================================================
[2026-06-13 13:52:59,963.963 INFO    ] Launching Daemon at Sat Jun 13 13:52:59 IST 2026
[2026-06-13 13:52:59,974.974 INFO    ] ================================================
[2026-06-13 13:53:00,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:00
[2026-06-13 13:53:00,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:00,762.762 INFO    ] Initializing speech engine...
[2026-06-13 13:53:00,765.765 INFO    ] 2026-06-13 13:53:00
[2026-06-13 13:53:00,962.962 INFO    ] 2026-06-13 13:53:00
[2026-06-13 13:53:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:01,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:01,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:01,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:01,380.380 INFO    ] time= 13/06/2026 13:53:01
[2026-06-13 13:53:01,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:01,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:01,569.569 INFO    ] No existing commands found in stream
[2026-06-13 13:53:06,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:06,583.583 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 13:53:07,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:53:07,553.553 INFO    ] Checking for system updates...
[2026-06-13 13:53:07,574.574 INFO    ] 200
[2026-06-13 13:53:07,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:07,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:07,607.607 INFO    ] No update needed
[2026-06-13 13:53:07,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 13:53:07,629.629 INFO    ] 200
[2026-06-13 13:53:07,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:07,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:53:07,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:07,704.704 INFO    ] No camera update needed
[2026-06-13 13:53:07,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:53:07,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:53:07,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:53:07,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:53:09,751.751 INFO    ] ================================================
[2026-06-13 13:53:09,766.766 INFO    ] Launching Daemon at Sat Jun 13 13:53:09 IST 2026
[2026-06-13 13:53:09,777.777 INFO    ] ================================================
[2026-06-13 13:53:10,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:10
[2026-06-13 13:53:10,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:10,581.581 INFO    ] Initializing speech engine...
[2026-06-13 13:53:10,592.592 INFO    ] 2026-06-13 13:53:10
[2026-06-13 13:53:10,795.795 INFO    ] 2026-06-13 13:53:10
[2026-06-13 13:53:10,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:10,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:11,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:11,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:11,202.202 INFO    ] time= 13/06/2026 13:53:11
[2026-06-13 13:53:11,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:11,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:11,312.312 INFO    ] No existing commands found in stream
[2026-06-13 13:53:16,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:16,326.326 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 13:53:17,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:53:17,865.865 INFO    ] Checking for system updates...
[2026-06-13 13:53:17,887.887 INFO    ] 200
[2026-06-13 13:53:17,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:17,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:17,922.922 INFO    ] No update needed
[2026-06-13 13:53:17,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 13:53:17,943.943 INFO    ] 200
[2026-06-13 13:53:17,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:17,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:53:18,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:18,030.030 INFO    ] No camera update needed
[2026-06-13 13:53:18,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:53:18,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:53:18,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:53:18,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:53:20,079.079 INFO    ] ================================================
[2026-06-13 13:53:20,094.094 INFO    ] Launching Daemon at Sat Jun 13 13:53:20 IST 2026
[2026-06-13 13:53:20,105.105 INFO    ] ================================================
[2026-06-13 13:53:20,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:20
[2026-06-13 13:53:20,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:20,923.923 INFO    ] Initializing speech engine...
[2026-06-13 13:53:20,928.928 INFO    ] 2026-06-13 13:53:20
[2026-06-13 13:53:21,130.130 INFO    ] 2026-06-13 13:53:21
[2026-06-13 13:53:21,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:21,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:21,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:21,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:21,542.542 INFO    ] time= 13/06/2026 13:53:21
[2026-06-13 13:53:21,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:21,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:21,653.653 INFO    ] No existing commands found in stream
[2026-06-13 13:53:26,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:26,663.663 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 13:53:28,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:53:28,503.503 INFO    ] Checking for system updates...
[2026-06-13 13:53:28,531.531 INFO    ] 200
[2026-06-13 13:53:28,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:28,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:53:28,590.590 INFO    ] No update needed
[2026-06-13 13:53:28,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 13:53:28,630.630 INFO    ] 200
[2026-06-13 13:53:28,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:28,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:53:28,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:28,731.731 INFO    ] No camera update needed
[2026-06-13 13:53:28,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:53:28,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:53:28,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:53:28,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:53:30,794.794 INFO    ] ================================================
[2026-06-13 13:53:30,810.810 INFO    ] Launching Daemon at Sat Jun 13 13:53:30 IST 2026
[2026-06-13 13:53:30,825.825 INFO    ] ================================================
[2026-06-13 13:53:31,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:31
[2026-06-13 13:53:31,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:31,987.987 INFO    ] Initializing speech engine...
[2026-06-13 13:53:31,993.993 INFO    ] 2026-06-13 13:53:31
[2026-06-13 13:53:32,219.219 INFO    ] 2026-06-13 13:53:32
[2026-06-13 13:53:32,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:32,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:32,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:32,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:32,639.639 INFO    ] time= 13/06/2026 13:53:32
[2026-06-13 13:53:32,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:32,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:32,753.753 INFO    ] No existing commands found in stream
[2026-06-13 13:53:37,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:37,766.766 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 13:53:38,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:53:38,393.393 INFO    ] Checking for system updates...
[2026-06-13 13:53:38,415.415 INFO    ] 200
[2026-06-13 13:53:38,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:38,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:38,450.450 INFO    ] No update needed
[2026-06-13 13:53:38,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 13:53:38,472.472 INFO    ] 200
[2026-06-13 13:53:38,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:38,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:53:38,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:53:38,635.635 INFO    ] No camera update needed
[2026-06-13 13:53:38,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:53:38,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:53:38,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:53:38,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:53:40,683.683 INFO    ] ================================================
[2026-06-13 13:53:40,698.698 INFO    ] Launching Daemon at Sat Jun 13 13:53:40 IST 2026
[2026-06-13 13:53:40,709.709 INFO    ] ================================================
[2026-06-13 13:53:41,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:41
[2026-06-13 13:53:41,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:41,541.541 INFO    ] Initializing speech engine...
[2026-06-13 13:53:41,547.547 INFO    ] 2026-06-13 13:53:41
[2026-06-13 13:53:41,751.751 INFO    ] 2026-06-13 13:53:41
[2026-06-13 13:53:41,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:41,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:41,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:42,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:42,156.156 INFO    ] time= 13/06/2026 13:53:42
[2026-06-13 13:53:42,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:42,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:42,265.265 INFO    ] No existing commands found in stream
[2026-06-13 13:53:47,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:47,277.277 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 13:53:50,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:53:50,728.728 INFO    ] Checking for system updates...
[2026-06-13 13:53:50,749.749 INFO    ] 200
[2026-06-13 13:53:50,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:50,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:53:50,782.782 INFO    ] No update needed
[2026-06-13 13:53:50,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 13:53:50,804.804 INFO    ] 200
[2026-06-13 13:53:50,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:53:50,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:53:50,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:53:50,878.878 INFO    ] No camera update needed
[2026-06-13 13:53:50,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:53:50,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:53:50,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:53:50,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:53:52,924.924 INFO    ] ================================================
[2026-06-13 13:53:52,939.939 INFO    ] Launching Daemon at Sat Jun 13 13:53:52 IST 2026
[2026-06-13 13:53:52,950.950 INFO    ] ================================================
[2026-06-13 13:53:53,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:53:53
[2026-06-13 13:53:53,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:53:53,761.761 INFO    ] Initializing speech engine...
[2026-06-13 13:53:53,766.766 INFO    ] 2026-06-13 13:53:53
[2026-06-13 13:53:53,972.972 INFO    ] 2026-06-13 13:53:53
[2026-06-13 13:53:54,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:53:54,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:53:54,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:53:54,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:53:54,386.386 INFO    ] time= 13/06/2026 13:53:54
[2026-06-13 13:53:54,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:53:54,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:53:54,491.491 INFO    ] No existing commands found in stream
[2026-06-13 13:53:59,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:53:59,504.504 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 13:54:01,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:54:01,139.139 INFO    ] Checking for system updates...
[2026-06-13 13:54:01,161.161 INFO    ] 200
[2026-06-13 13:54:01,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:01,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:01,196.196 INFO    ] No update needed
[2026-06-13 13:54:01,198.198 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:01,218.218 INFO    ] 200
[2026-06-13 13:54:01,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:01,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:01,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:01,296.296 INFO    ] No camera update needed
[2026-06-13 13:54:01,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:01,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:01,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:01,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:03,348.348 INFO    ] ================================================
[2026-06-13 13:54:03,363.363 INFO    ] Launching Daemon at Sat Jun 13 13:54:03 IST 2026
[2026-06-13 13:54:03,375.375 INFO    ] ================================================
[2026-06-13 13:54:03,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:03
[2026-06-13 13:54:04,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:04,844.844 INFO    ] Initializing speech engine...
[2026-06-13 13:54:04,853.853 INFO    ] 2026-06-13 13:54:04
[2026-06-13 13:54:05,105.105 INFO    ] 2026-06-13 13:54:05
[2026-06-13 13:54:05,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:05,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:05,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:05,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:05,487.487 INFO    ] time= 13/06/2026 13:54:05
[2026-06-13 13:54:05,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:05,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:05,604.604 INFO    ] No existing commands found in stream
[2026-06-13 13:54:10,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:54:10,642.642 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 13:54:12,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:54:12,231.231 INFO    ] Checking for system updates...
[2026-06-13 13:54:12,252.252 INFO    ] 200
[2026-06-13 13:54:12,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:12,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:12,290.290 INFO    ] No update needed
[2026-06-13 13:54:12,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:12,311.311 INFO    ] 200
[2026-06-13 13:54:12,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:12,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:12,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:12,374.374 INFO    ] No camera update needed
[2026-06-13 13:54:12,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:12,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:12,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:12,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:14,423.423 INFO    ] ================================================
[2026-06-13 13:54:14,438.438 INFO    ] Launching Daemon at Sat Jun 13 13:54:14 IST 2026
[2026-06-13 13:54:14,449.449 INFO    ] ================================================
[2026-06-13 13:54:14,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:14
[2026-06-13 13:54:15,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:15,249.249 INFO    ] Initializing speech engine...
[2026-06-13 13:54:15,253.253 INFO    ] 2026-06-13 13:54:15
[2026-06-13 13:54:15,455.455 INFO    ] 2026-06-13 13:54:15
[2026-06-13 13:54:15,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:15,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:15,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:15,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:15,822.822 INFO    ] time= 13/06/2026 13:54:15
[2026-06-13 13:54:15,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:15,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:16,020.020 INFO    ] No existing commands found in stream
[2026-06-13 13:54:21,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:54:21,033.033 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 13:54:21,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:54:21,873.873 INFO    ] Checking for system updates...
[2026-06-13 13:54:21,895.895 INFO    ] 200
[2026-06-13 13:54:21,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:21,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:54:21,929.929 INFO    ] No update needed
[2026-06-13 13:54:21,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:21,950.950 INFO    ] 200
[2026-06-13 13:54:21,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:21,976.976 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:22,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:54:22,025.025 INFO    ] No camera update needed
[2026-06-13 13:54:22,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:22,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:22,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:22,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:24,072.072 INFO    ] ================================================
[2026-06-13 13:54:24,087.087 INFO    ] Launching Daemon at Sat Jun 13 13:54:24 IST 2026
[2026-06-13 13:54:24,098.098 INFO    ] ================================================
[2026-06-13 13:54:24,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:24
[2026-06-13 13:54:24,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:24,916.916 INFO    ] Initializing speech engine...
[2026-06-13 13:54:24,921.921 INFO    ] 2026-06-13 13:54:24
[2026-06-13 13:54:25,119.119 INFO    ] 2026-06-13 13:54:25
[2026-06-13 13:54:25,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:25,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:25,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:25,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:25,531.531 INFO    ] time= 13/06/2026 13:54:25
[2026-06-13 13:54:25,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:25,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:25,711.711 INFO    ] No existing commands found in stream
[2026-06-13 13:54:30,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:54:30,724.724 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 13:54:31,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:54:31,034.034 INFO    ] Checking for system updates...
[2026-06-13 13:54:31,056.056 INFO    ] 200
[2026-06-13 13:54:31,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:31,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:54:31,091.091 INFO    ] No update needed
[2026-06-13 13:54:31,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:31,113.113 INFO    ] 200
[2026-06-13 13:54:31,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:31,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:31,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:54:31,176.176 INFO    ] No camera update needed
[2026-06-13 13:54:31,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:31,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:31,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:31,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:33,216.216 INFO    ] ================================================
[2026-06-13 13:54:33,232.232 INFO    ] Launching Daemon at Sat Jun 13 13:54:33 IST 2026
[2026-06-13 13:54:33,242.242 INFO    ] ================================================
[2026-06-13 13:54:33,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:33
[2026-06-13 13:54:33,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:34,060.060 INFO    ] Initializing speech engine...
[2026-06-13 13:54:34,065.065 INFO    ] 2026-06-13 13:54:34
[2026-06-13 13:54:34,271.271 INFO    ] 2026-06-13 13:54:34
[2026-06-13 13:54:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:34,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:34,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:34,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:34,674.674 INFO    ] time= 13/06/2026 13:54:34
[2026-06-13 13:54:34,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:34,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:34,796.796 INFO    ] No existing commands found in stream
[2026-06-13 13:54:39,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:54:39,810.810 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 13:54:44,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:54:44,005.005 INFO    ] Checking for system updates...
[2026-06-13 13:54:44,026.026 INFO    ] 200
[2026-06-13 13:54:44,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:44,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:44,062.062 INFO    ] No update needed
[2026-06-13 13:54:44,063.063 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:44,082.082 INFO    ] 200
[2026-06-13 13:54:44,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:44,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:44,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:44,151.151 INFO    ] No camera update needed
[2026-06-13 13:54:44,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:44,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:44,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:44,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:46,198.198 INFO    ] ================================================
[2026-06-13 13:54:46,213.213 INFO    ] Launching Daemon at Sat Jun 13 13:54:46 IST 2026
[2026-06-13 13:54:46,224.224 INFO    ] ================================================
[2026-06-13 13:54:46,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:46
[2026-06-13 13:54:46,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:47,006.006 INFO    ] Initializing speech engine...
[2026-06-13 13:54:47,019.019 INFO    ] 2026-06-13 13:54:47
[2026-06-13 13:54:47,252.252 INFO    ] 2026-06-13 13:54:47
[2026-06-13 13:54:47,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:47,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:47,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:47,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:47,614.614 INFO    ] time= 13/06/2026 13:54:47
[2026-06-13 13:54:47,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:47,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:47,716.716 INFO    ] No existing commands found in stream
[2026-06-13 13:54:52,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:54:52,733.733 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 13:54:54,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:54:54,603.603 INFO    ] Checking for system updates...
[2026-06-13 13:54:54,626.626 INFO    ] 200
[2026-06-13 13:54:54,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:54,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:54:54,659.659 INFO    ] No update needed
[2026-06-13 13:54:54,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 13:54:54,680.680 INFO    ] 200
[2026-06-13 13:54:54,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:54:54,706.706 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:54:54,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:54:54,749.749 INFO    ] No camera update needed
[2026-06-13 13:54:54,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:54:54,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:54:54,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:54:54,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:54:56,795.795 INFO    ] ================================================
[2026-06-13 13:54:56,810.810 INFO    ] Launching Daemon at Sat Jun 13 13:54:56 IST 2026
[2026-06-13 13:54:56,821.821 INFO    ] ================================================
[2026-06-13 13:54:57,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:54:57
[2026-06-13 13:54:57,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:54:57,678.678 INFO    ] Initializing speech engine...
[2026-06-13 13:54:57,683.683 INFO    ] 2026-06-13 13:54:57
[2026-06-13 13:54:57,893.893 INFO    ] 2026-06-13 13:54:57
[2026-06-13 13:54:57,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:54:58,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:54:58,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:54:58,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:54:58,314.314 INFO    ] time= 13/06/2026 13:54:58
[2026-06-13 13:54:58,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:54:58,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:54:58,418.418 INFO    ] No existing commands found in stream
[2026-06-13 13:55:03,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:55:03,436.436 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 13:55:05,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:55:05,422.422 INFO    ] Checking for system updates...
[2026-06-13 13:55:05,475.475 INFO    ] 200
[2026-06-13 13:55:05,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:05,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:05,620.620 INFO    ] No update needed
[2026-06-13 13:55:05,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 13:55:05,649.649 INFO    ] 200
[2026-06-13 13:55:05,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:05,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:55:05,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:05,719.719 INFO    ] No camera update needed
[2026-06-13 13:55:05,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:55:05,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:55:05,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:55:05,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:55:07,776.776 INFO    ] ================================================
[2026-06-13 13:55:07,792.792 INFO    ] Launching Daemon at Sat Jun 13 13:55:07 IST 2026
[2026-06-13 13:55:07,803.803 INFO    ] ================================================
[2026-06-13 13:55:08,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:55:08
[2026-06-13 13:55:08,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:55:08,666.666 INFO    ] Initializing speech engine...
[2026-06-13 13:55:08,672.672 INFO    ] 2026-06-13 13:55:08
[2026-06-13 13:55:08,882.882 INFO    ] 2026-06-13 13:55:08
[2026-06-13 13:55:08,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:55:09,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:55:09,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:55:09,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:55:09,308.308 INFO    ] time= 13/06/2026 13:55:09
[2026-06-13 13:55:09,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:55:09,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:55:09,408.408 INFO    ] No existing commands found in stream
[2026-06-13 13:55:14,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:55:14,421.421 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 13:55:18,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:55:18,687.687 INFO    ] Checking for system updates...
[2026-06-13 13:55:18,716.716 INFO    ] 200
[2026-06-13 13:55:18,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:18,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:55:18,753.753 INFO    ] No update needed
[2026-06-13 13:55:18,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 13:55:18,775.775 INFO    ] 200
[2026-06-13 13:55:18,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:18,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:55:18,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:55:18,846.846 INFO    ] No camera update needed
[2026-06-13 13:55:18,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:55:18,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:55:18,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:55:18,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:55:20,894.894 INFO    ] ================================================
[2026-06-13 13:55:20,910.910 INFO    ] Launching Daemon at Sat Jun 13 13:55:20 IST 2026
[2026-06-13 13:55:20,921.921 INFO    ] ================================================
[2026-06-13 13:55:21,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:55:21
[2026-06-13 13:55:21,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:55:21,738.738 INFO    ] Initializing speech engine...
[2026-06-13 13:55:21,748.748 INFO    ] 2026-06-13 13:55:21
[2026-06-13 13:55:21,952.952 INFO    ] 2026-06-13 13:55:21
[2026-06-13 13:55:21,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:55:22,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:55:22,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:55:22,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:55:22,372.372 INFO    ] time= 13/06/2026 13:55:22
[2026-06-13 13:55:22,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:55:22,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:55:22,468.468 INFO    ] No existing commands found in stream
[2026-06-13 13:55:27,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:55:27,481.481 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 13:55:30,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:55:30,207.207 INFO    ] Checking for system updates...
[2026-06-13 13:55:30,229.229 INFO    ] 200
[2026-06-13 13:55:30,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:30,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:30,264.264 INFO    ] No update needed
[2026-06-13 13:55:30,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 13:55:30,287.287 INFO    ] 200
[2026-06-13 13:55:30,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:30,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:55:30,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:30,355.355 INFO    ] No camera update needed
[2026-06-13 13:55:30,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:55:30,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:55:30,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:55:30,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:55:32,406.406 INFO    ] ================================================
[2026-06-13 13:55:32,423.423 INFO    ] Launching Daemon at Sat Jun 13 13:55:32 IST 2026
[2026-06-13 13:55:32,443.443 INFO    ] ================================================
[2026-06-13 13:55:33,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:55:33
[2026-06-13 13:55:33,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:55:34,070.070 INFO    ] Initializing speech engine...
[2026-06-13 13:55:34,084.084 INFO    ] 2026-06-13 13:55:34
[2026-06-13 13:55:34,375.375 INFO    ] 2026-06-13 13:55:34
[2026-06-13 13:55:34,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:55:34,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:55:34,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:55:34,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:55:34,740.740 INFO    ] time= 13/06/2026 13:55:34
[2026-06-13 13:55:34,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:55:34,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:55:34,823.823 INFO    ] No existing commands found in stream
[2026-06-13 13:55:39,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:55:39,837.837 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 13:55:40,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:55:40,841.841 INFO    ] Checking for system updates...
[2026-06-13 13:55:40,863.863 INFO    ] 200
[2026-06-13 13:55:40,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:40,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:55:40,900.900 INFO    ] No update needed
[2026-06-13 13:55:40,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 13:55:40,921.921 INFO    ] 200
[2026-06-13 13:55:40,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:40,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:55:41,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:55:41,094.094 INFO    ] No camera update needed
[2026-06-13 13:55:41,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:55:41,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:55:41,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:55:41,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:55:43,144.144 INFO    ] ================================================
[2026-06-13 13:55:43,159.159 INFO    ] Launching Daemon at Sat Jun 13 13:55:43 IST 2026
[2026-06-13 13:55:43,171.171 INFO    ] ================================================
[2026-06-13 13:55:43,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:55:43
[2026-06-13 13:55:43,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:55:43,987.987 INFO    ] Initializing speech engine...
[2026-06-13 13:55:43,990.990 INFO    ] 2026-06-13 13:55:43
[2026-06-13 13:55:44,207.207 INFO    ] 2026-06-13 13:55:44
[2026-06-13 13:55:44,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:55:44,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:55:44,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:55:44,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:55:44,606.606 INFO    ] time= 13/06/2026 13:55:44
[2026-06-13 13:55:44,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:55:44,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:55:44,790.790 INFO    ] No existing commands found in stream
[2026-06-13 13:55:49,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:55:49,804.804 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 13:55:51,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:55:51,474.474 INFO    ] Checking for system updates...
[2026-06-13 13:55:51,495.495 INFO    ] 200
[2026-06-13 13:55:51,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:51,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:51,531.531 INFO    ] No update needed
[2026-06-13 13:55:51,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 13:55:51,553.553 INFO    ] 200
[2026-06-13 13:55:51,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:55:51,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:55:51,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:55:51,617.617 INFO    ] No camera update needed
[2026-06-13 13:55:51,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:55:51,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:55:51,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:55:51,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:55:53,666.666 INFO    ] ================================================
[2026-06-13 13:55:53,681.681 INFO    ] Launching Daemon at Sat Jun 13 13:55:53 IST 2026
[2026-06-13 13:55:53,691.691 INFO    ] ================================================
[2026-06-13 13:55:54,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:55:54
[2026-06-13 13:55:54,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:55:54,514.514 INFO    ] Initializing speech engine...
[2026-06-13 13:55:54,527.527 INFO    ] 2026-06-13 13:55:54
[2026-06-13 13:55:54,748.748 INFO    ] 2026-06-13 13:55:54
[2026-06-13 13:55:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:55:54,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:55:54,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:55:55,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:55:55,137.137 INFO    ] time= 13/06/2026 13:55:55
[2026-06-13 13:55:55,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:55:55,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:55:55,268.268 INFO    ] No existing commands found in stream
[2026-06-13 13:56:00,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:00,281.281 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 13:56:02,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:56:02,132.132 INFO    ] Checking for system updates...
[2026-06-13 13:56:02,159.159 INFO    ] 200
[2026-06-13 13:56:02,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:02,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:02,212.212 INFO    ] No update needed
[2026-06-13 13:56:02,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:02,241.241 INFO    ] 200
[2026-06-13 13:56:02,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:02,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:02,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:02,301.301 INFO    ] No camera update needed
[2026-06-13 13:56:02,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:02,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:02,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:02,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:56:04,352.352 INFO    ] ================================================
[2026-06-13 13:56:04,368.368 INFO    ] Launching Daemon at Sat Jun 13 13:56:04 IST 2026
[2026-06-13 13:56:04,381.381 INFO    ] ================================================
[2026-06-13 13:56:04,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:56:04
[2026-06-13 13:56:05,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:56:05,180.180 INFO    ] Initializing speech engine...
[2026-06-13 13:56:05,185.185 INFO    ] 2026-06-13 13:56:05
[2026-06-13 13:56:05,389.389 INFO    ] 2026-06-13 13:56:05
[2026-06-13 13:56:05,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:56:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:56:05,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:56:05,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:56:05,814.814 INFO    ] time= 13/06/2026 13:56:05
[2026-06-13 13:56:05,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:56:05,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:56:06,047.047 INFO    ] No existing commands found in stream
[2026-06-13 13:56:11,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:11,065.065 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 13:56:11,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:56:11,981.981 INFO    ] Checking for system updates...
[2026-06-13 13:56:12,002.002 INFO    ] 200
[2026-06-13 13:56:12,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:12,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:12,035.035 INFO    ] No update needed
[2026-06-13 13:56:12,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:12,058.058 INFO    ] 200
[2026-06-13 13:56:12,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:12,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:12,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:12,132.132 INFO    ] No camera update needed
[2026-06-13 13:56:12,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:12,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:12,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:12,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:56:14,179.179 INFO    ] ================================================
[2026-06-13 13:56:14,196.196 INFO    ] Launching Daemon at Sat Jun 13 13:56:14 IST 2026
[2026-06-13 13:56:14,207.207 INFO    ] ================================================
[2026-06-13 13:56:14,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:56:14
[2026-06-13 13:56:14,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:56:15,066.066 INFO    ] Initializing speech engine...
[2026-06-13 13:56:15,071.071 INFO    ] 2026-06-13 13:56:15
[2026-06-13 13:56:15,283.283 INFO    ] 2026-06-13 13:56:15
[2026-06-13 13:56:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:56:15,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:56:15,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:56:15,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:56:15,708.708 INFO    ] time= 13/06/2026 13:56:15
[2026-06-13 13:56:15,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:56:15,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:56:15,812.812 INFO    ] No existing commands found in stream
[2026-06-13 13:56:20,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:20,825.825 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 13:56:23,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:56:23,043.043 INFO    ] Checking for system updates...
[2026-06-13 13:56:23,065.065 INFO    ] 200
[2026-06-13 13:56:23,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:23,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:23,099.099 INFO    ] No update needed
[2026-06-13 13:56:23,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:23,120.120 INFO    ] 200
[2026-06-13 13:56:23,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:23,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:23,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:23,186.186 INFO    ] No camera update needed
[2026-06-13 13:56:23,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:23,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:23,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:23,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:56:25,234.234 INFO    ] ================================================
[2026-06-13 13:56:25,250.250 INFO    ] Launching Daemon at Sat Jun 13 13:56:25 IST 2026
[2026-06-13 13:56:25,262.262 INFO    ] ================================================
[2026-06-13 13:56:25,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:56:25
[2026-06-13 13:56:25,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:56:26,088.088 INFO    ] Initializing speech engine...
[2026-06-13 13:56:26,092.092 INFO    ] 2026-06-13 13:56:26
[2026-06-13 13:56:26,298.298 INFO    ] 2026-06-13 13:56:26
[2026-06-13 13:56:26,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:56:26,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:56:26,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:56:26,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:56:26,581.581 INFO    ] time= 13/06/2026 13:56:26
[2026-06-13 13:56:26,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:56:26,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:56:26,676.676 INFO    ] No existing commands found in stream
[2026-06-13 13:56:31,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:31,713.713 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 13:56:35,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:56:35,650.650 INFO    ] Checking for system updates...
[2026-06-13 13:56:35,671.671 INFO    ] 200
[2026-06-13 13:56:35,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:35,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:35,705.705 INFO    ] No update needed
[2026-06-13 13:56:35,706.706 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:35,727.727 INFO    ] 200
[2026-06-13 13:56:35,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:35,752.752 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:35,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:35,790.790 INFO    ] No camera update needed
[2026-06-13 13:56:35,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:35,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:35,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:35,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:56:37,838.838 INFO    ] ================================================
[2026-06-13 13:56:37,854.854 INFO    ] Launching Daemon at Sat Jun 13 13:56:37 IST 2026
[2026-06-13 13:56:37,865.865 INFO    ] ================================================
[2026-06-13 13:56:38,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:56:38
[2026-06-13 13:56:38,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:56:38,657.657 INFO    ] Initializing speech engine...
[2026-06-13 13:56:38,662.662 INFO    ] 2026-06-13 13:56:38
[2026-06-13 13:56:38,866.866 INFO    ] 2026-06-13 13:56:38
[2026-06-13 13:56:38,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:56:39,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:56:39,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:56:39,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:56:39,214.214 INFO    ] time= 13/06/2026 13:56:39
[2026-06-13 13:56:39,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:56:39,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:56:39,414.414 INFO    ] No existing commands found in stream
[2026-06-13 13:56:44,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:44,440.440 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 13:56:47,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:56:47,256.256 INFO    ] Checking for system updates...
[2026-06-13 13:56:47,279.279 INFO    ] 200
[2026-06-13 13:56:47,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:47,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:47,312.312 INFO    ] No update needed
[2026-06-13 13:56:47,313.313 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:47,333.333 INFO    ] 200
[2026-06-13 13:56:47,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:47,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:47,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:56:47,402.402 INFO    ] No camera update needed
[2026-06-13 13:56:47,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:47,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:47,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:47,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:56:49,450.450 INFO    ] ================================================
[2026-06-13 13:56:49,466.466 INFO    ] Launching Daemon at Sat Jun 13 13:56:49 IST 2026
[2026-06-13 13:56:49,478.478 INFO    ] ================================================
[2026-06-13 13:56:49,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:56:49
[2026-06-13 13:56:50,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:56:50,304.304 INFO    ] Initializing speech engine...
[2026-06-13 13:56:50,309.309 INFO    ] 2026-06-13 13:56:50
[2026-06-13 13:56:50,513.513 INFO    ] 2026-06-13 13:56:50
[2026-06-13 13:56:50,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:56:50,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:56:50,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:56:50,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:56:50,916.916 INFO    ] time= 13/06/2026 13:56:50
[2026-06-13 13:56:50,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:56:50,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:56:51,072.072 INFO    ] No existing commands found in stream
[2026-06-13 13:56:56,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:56:56,096.096 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 13:56:59,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:56:59,386.386 INFO    ] Checking for system updates...
[2026-06-13 13:56:59,409.409 INFO    ] 200
[2026-06-13 13:56:59,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:59,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:59,448.448 INFO    ] No update needed
[2026-06-13 13:56:59,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 13:56:59,471.471 INFO    ] 200
[2026-06-13 13:56:59,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:56:59,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:56:59,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:56:59,541.541 INFO    ] No camera update needed
[2026-06-13 13:56:59,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:56:59,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:56:59,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:56:59,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:01,589.589 INFO    ] ================================================
[2026-06-13 13:57:01,605.605 INFO    ] Launching Daemon at Sat Jun 13 13:57:01 IST 2026
[2026-06-13 13:57:01,617.617 INFO    ] ================================================
[2026-06-13 13:57:01,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:01
[2026-06-13 13:57:02,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:02,987.987 INFO    ] Initializing speech engine...
[2026-06-13 13:57:03,015.015 INFO    ] 2026-06-13 13:57:02
[2026-06-13 13:57:03,321.321 INFO    ] 2026-06-13 13:57:03
[2026-06-13 13:57:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:03,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:03,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:03,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:03,729.729 INFO    ] time= 13/06/2026 13:57:03
[2026-06-13 13:57:03,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:03,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:03,846.846 INFO    ] No existing commands found in stream
[2026-06-13 13:57:08,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:57:08,862.862 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 13:57:11,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:57:11,125.125 INFO    ] Checking for system updates...
[2026-06-13 13:57:11,147.147 INFO    ] 200
[2026-06-13 13:57:11,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:11,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:57:11,180.180 INFO    ] No update needed
[2026-06-13 13:57:11,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 13:57:11,201.201 INFO    ] 200
[2026-06-13 13:57:11,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:11,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:57:11,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:57:11,270.270 INFO    ] No camera update needed
[2026-06-13 13:57:11,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:57:11,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:57:11,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:57:11,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:13,318.318 INFO    ] ================================================
[2026-06-13 13:57:13,337.337 INFO    ] Launching Daemon at Sat Jun 13 13:57:13 IST 2026
[2026-06-13 13:57:13,348.348 INFO    ] ================================================
[2026-06-13 13:57:13,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:13
[2026-06-13 13:57:13,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:14,123.123 INFO    ] Initializing speech engine...
[2026-06-13 13:57:14,135.135 INFO    ] 2026-06-13 13:57:14
[2026-06-13 13:57:14,344.344 INFO    ] 2026-06-13 13:57:14
[2026-06-13 13:57:14,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:14,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:14,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:14,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:14,760.760 INFO    ] time= 13/06/2026 13:57:14
[2026-06-13 13:57:14,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:14,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:14,856.856 INFO    ] No existing commands found in stream
[2026-06-13 13:57:19,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:57:19,868.868 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 13:57:21,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:57:21,871.871 INFO    ] Checking for system updates...
[2026-06-13 13:57:21,891.891 INFO    ] 200
[2026-06-13 13:57:21,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:21,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:21,925.925 INFO    ] No update needed
[2026-06-13 13:57:21,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 13:57:21,947.947 INFO    ] 200
[2026-06-13 13:57:21,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:21,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:57:22,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:22,016.016 INFO    ] No camera update needed
[2026-06-13 13:57:22,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:57:22,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:57:22,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:57:22,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:24,065.065 INFO    ] ================================================
[2026-06-13 13:57:24,080.080 INFO    ] Launching Daemon at Sat Jun 13 13:57:24 IST 2026
[2026-06-13 13:57:24,091.091 INFO    ] ================================================
[2026-06-13 13:57:24,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:24
[2026-06-13 13:57:25,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:25,688.688 INFO    ] Initializing speech engine...
[2026-06-13 13:57:25,698.698 INFO    ] 2026-06-13 13:57:25
[2026-06-13 13:57:25,981.981 INFO    ] 2026-06-13 13:57:25
[2026-06-13 13:57:26,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:26,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:26,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:26,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:26,418.418 INFO    ] time= 13/06/2026 13:57:26
[2026-06-13 13:57:26,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:26,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:26,678.678 INFO    ] No existing commands found in stream
[2026-06-13 13:57:31,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:57:31,707.707 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 13:57:34,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:57:34,691.691 INFO    ] Checking for system updates...
[2026-06-13 13:57:34,712.712 INFO    ] 200
[2026-06-13 13:57:34,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:34,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:34,747.747 INFO    ] No update needed
[2026-06-13 13:57:34,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 13:57:34,771.771 INFO    ] 200
[2026-06-13 13:57:34,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:34,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:57:34,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:34,844.844 INFO    ] No camera update needed
[2026-06-13 13:57:34,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:57:34,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:57:34,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:57:34,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:36,892.892 INFO    ] ================================================
[2026-06-13 13:57:36,907.907 INFO    ] Launching Daemon at Sat Jun 13 13:57:36 IST 2026
[2026-06-13 13:57:36,917.917 INFO    ] ================================================
[2026-06-13 13:57:37,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:37
[2026-06-13 13:57:37,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:37,703.703 INFO    ] Initializing speech engine...
[2026-06-13 13:57:37,707.707 INFO    ] 2026-06-13 13:57:37
[2026-06-13 13:57:37,925.925 INFO    ] 2026-06-13 13:57:37
[2026-06-13 13:57:37,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:38,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:38,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:38,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:38,318.318 INFO    ] time= 13/06/2026 13:57:38
[2026-06-13 13:57:38,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:38,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:38,445.445 INFO    ] No existing commands found in stream
[2026-06-13 13:57:43,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:57:43,457.457 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 13:57:46,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:57:46,061.061 INFO    ] Checking for system updates...
[2026-06-13 13:57:46,083.083 INFO    ] 200
[2026-06-13 13:57:46,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:46,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:57:46,117.117 INFO    ] No update needed
[2026-06-13 13:57:46,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 13:57:46,138.138 INFO    ] 200
[2026-06-13 13:57:46,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:46,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:57:46,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:46,303.303 INFO    ] No camera update needed
[2026-06-13 13:57:46,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:57:46,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:57:46,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:57:46,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:48,350.350 INFO    ] ================================================
[2026-06-13 13:57:48,365.365 INFO    ] Launching Daemon at Sat Jun 13 13:57:48 IST 2026
[2026-06-13 13:57:48,376.376 INFO    ] ================================================
[2026-06-13 13:57:48,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:48
[2026-06-13 13:57:49,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:49,198.198 INFO    ] Initializing speech engine...
[2026-06-13 13:57:49,204.204 INFO    ] 2026-06-13 13:57:49
[2026-06-13 13:57:49,412.412 INFO    ] 2026-06-13 13:57:49
[2026-06-13 13:57:49,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:49,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:49,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:49,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:49,824.824 INFO    ] time= 13/06/2026 13:57:49
[2026-06-13 13:57:49,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:49,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:49,935.935 INFO    ] No existing commands found in stream
[2026-06-13 13:57:54,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:57:54,947.947 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 13:57:55,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:57:55,731.731 INFO    ] Checking for system updates...
[2026-06-13 13:57:55,753.753 INFO    ] 200
[2026-06-13 13:57:55,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:55,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:55,786.786 INFO    ] No update needed
[2026-06-13 13:57:55,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 13:57:55,807.807 INFO    ] 200
[2026-06-13 13:57:55,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:57:55,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:57:55,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:57:55,876.876 INFO    ] No camera update needed
[2026-06-13 13:57:55,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:57:55,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:57:55,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:57:55,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:57:57,924.924 INFO    ] ================================================
[2026-06-13 13:57:57,939.939 INFO    ] Launching Daemon at Sat Jun 13 13:57:57 IST 2026
[2026-06-13 13:57:57,950.950 INFO    ] ================================================
[2026-06-13 13:57:58,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:57:58
[2026-06-13 13:57:58,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:57:58,743.743 INFO    ] Initializing speech engine...
[2026-06-13 13:57:58,748.748 INFO    ] 2026-06-13 13:57:58
[2026-06-13 13:57:58,966.966 INFO    ] 2026-06-13 13:57:58
[2026-06-13 13:57:58,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:57:59,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:57:59,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:57:59,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:57:59,371.371 INFO    ] time= 13/06/2026 13:57:59
[2026-06-13 13:57:59,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:57:59,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:57:59,489.489 INFO    ] No existing commands found in stream
[2026-06-13 13:58:04,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:04,502.502 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 13:58:05,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 13:58:05,059.059 INFO    ] Checking for system updates...
[2026-06-13 13:58:05,080.080 INFO    ] 200
[2026-06-13 13:58:05,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:05,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:58:05,113.113 INFO    ] No update needed
[2026-06-13 13:58:05,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 13:58:05,133.133 INFO    ] 200
[2026-06-13 13:58:05,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:05,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:58:05,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:58:05,201.201 INFO    ] No camera update needed
[2026-06-13 13:58:05,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:58:05,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:58:05,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:58:05,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:58:07,247.247 INFO    ] ================================================
[2026-06-13 13:58:07,262.262 INFO    ] Launching Daemon at Sat Jun 13 13:58:07 IST 2026
[2026-06-13 13:58:07,273.273 INFO    ] ================================================
[2026-06-13 13:58:07,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:58:07
[2026-06-13 13:58:07,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:58:08,063.063 INFO    ] Initializing speech engine...
[2026-06-13 13:58:08,068.068 INFO    ] 2026-06-13 13:58:08
[2026-06-13 13:58:08,271.271 INFO    ] 2026-06-13 13:58:08
[2026-06-13 13:58:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:58:08,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:58:08,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:58:08,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:58:08,687.687 INFO    ] time= 13/06/2026 13:58:08
[2026-06-13 13:58:08,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:58:08,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:58:08,781.781 INFO    ] No existing commands found in stream
[2026-06-13 13:58:13,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:13,794.794 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 13:58:16,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:58:16,242.242 INFO    ] Checking for system updates...
[2026-06-13 13:58:16,265.265 INFO    ] 200
[2026-06-13 13:58:16,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:16,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:58:16,298.298 INFO    ] No update needed
[2026-06-13 13:58:16,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 13:58:16,319.319 INFO    ] 200
[2026-06-13 13:58:16,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:16,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:58:16,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:58:16,388.388 INFO    ] No camera update needed
[2026-06-13 13:58:16,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:58:16,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:58:16,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:58:16,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:58:18,435.435 INFO    ] ================================================
[2026-06-13 13:58:18,450.450 INFO    ] Launching Daemon at Sat Jun 13 13:58:18 IST 2026
[2026-06-13 13:58:18,460.460 INFO    ] ================================================
[2026-06-13 13:58:18,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:58:18
[2026-06-13 13:58:19,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:58:19,238.238 INFO    ] Initializing speech engine...
[2026-06-13 13:58:19,243.243 INFO    ] 2026-06-13 13:58:19
[2026-06-13 13:58:19,446.446 INFO    ] 2026-06-13 13:58:19
[2026-06-13 13:58:19,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:58:19,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:58:19,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:58:19,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:58:19,832.832 INFO    ] time= 13/06/2026 13:58:19
[2026-06-13 13:58:19,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:58:19,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:58:19,964.964 INFO    ] No existing commands found in stream
[2026-06-13 13:58:24,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:24,978.978 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 13:58:26,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:58:26,056.056 INFO    ] Checking for system updates...
[2026-06-13 13:58:26,077.077 INFO    ] 200
[2026-06-13 13:58:26,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:26,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:58:26,111.111 INFO    ] No update needed
[2026-06-13 13:58:26,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 13:58:26,132.132 INFO    ] 200
[2026-06-13 13:58:26,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:26,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:58:26,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:58:26,197.197 INFO    ] No camera update needed
[2026-06-13 13:58:26,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:58:26,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:58:26,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:58:26,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:58:28,243.243 INFO    ] ================================================
[2026-06-13 13:58:28,258.258 INFO    ] Launching Daemon at Sat Jun 13 13:58:28 IST 2026
[2026-06-13 13:58:28,269.269 INFO    ] ================================================
[2026-06-13 13:58:28,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:58:28
[2026-06-13 13:58:28,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:58:29,050.050 INFO    ] Initializing speech engine...
[2026-06-13 13:58:29,055.055 INFO    ] 2026-06-13 13:58:29
[2026-06-13 13:58:29,261.261 INFO    ] 2026-06-13 13:58:29
[2026-06-13 13:58:29,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:58:29,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:58:29,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:58:29,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:58:29,671.671 INFO    ] time= 13/06/2026 13:58:29
[2026-06-13 13:58:29,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:58:29,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:58:29,780.780 INFO    ] No existing commands found in stream
[2026-06-13 13:58:34,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:34,793.793 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 13:58:35,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:58:35,474.474 INFO    ] Checking for system updates...
[2026-06-13 13:58:35,494.494 INFO    ] 200
[2026-06-13 13:58:35,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:35,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:58:35,530.530 INFO    ] No update needed
[2026-06-13 13:58:35,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 13:58:35,551.551 INFO    ] 200
[2026-06-13 13:58:35,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:35,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:58:35,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:58:35,622.622 INFO    ] No camera update needed
[2026-06-13 13:58:35,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:58:35,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:58:35,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:58:35,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:58:37,671.671 INFO    ] ================================================
[2026-06-13 13:58:37,686.686 INFO    ] Launching Daemon at Sat Jun 13 13:58:37 IST 2026
[2026-06-13 13:58:37,699.699 INFO    ] ================================================
[2026-06-13 13:58:38,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:58:38
[2026-06-13 13:58:38,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:58:38,519.519 INFO    ] Initializing speech engine...
[2026-06-13 13:58:38,527.527 INFO    ] 2026-06-13 13:58:38
[2026-06-13 13:58:38,738.738 INFO    ] 2026-06-13 13:58:38
[2026-06-13 13:58:38,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:58:38,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:58:38,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:58:39,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:58:39,153.153 INFO    ] time= 13/06/2026 13:58:39
[2026-06-13 13:58:39,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:58:39,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:58:39,253.253 INFO    ] No existing commands found in stream
[2026-06-13 13:58:44,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:44,266.266 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 13:58:48,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 13:58:48,102.102 INFO    ] Checking for system updates...
[2026-06-13 13:58:48,123.123 INFO    ] 200
[2026-06-13 13:58:48,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:48,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:58:48,158.158 INFO    ] No update needed
[2026-06-13 13:58:48,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 13:58:48,179.179 INFO    ] 200
[2026-06-13 13:58:48,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:58:48,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:58:48,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:58:48,243.243 INFO    ] No camera update needed
[2026-06-13 13:58:48,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:58:48,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:58:48,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:58:48,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:58:50,290.290 INFO    ] ================================================
[2026-06-13 13:58:50,306.306 INFO    ] Launching Daemon at Sat Jun 13 13:58:50 IST 2026
[2026-06-13 13:58:50,317.317 INFO    ] ================================================
[2026-06-13 13:58:50,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:58:50
[2026-06-13 13:58:50,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:58:51,099.099 INFO    ] Initializing speech engine...
[2026-06-13 13:58:51,104.104 INFO    ] 2026-06-13 13:58:51
[2026-06-13 13:58:51,313.313 INFO    ] 2026-06-13 13:58:51
[2026-06-13 13:58:51,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:58:51,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:58:51,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:58:51,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:58:51,716.716 INFO    ] time= 13/06/2026 13:58:51
[2026-06-13 13:58:51,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:58:51,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:58:51,834.834 INFO    ] No existing commands found in stream
[2026-06-13 13:58:56,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:58:56,846.846 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 13:59:00,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:59:00,102.102 INFO    ] Checking for system updates...
[2026-06-13 13:59:00,124.124 INFO    ] 200
[2026-06-13 13:59:00,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:00,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:59:00,159.159 INFO    ] No update needed
[2026-06-13 13:59:00,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:00,180.180 INFO    ] 200
[2026-06-13 13:59:00,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:00,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:00,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:00,246.246 INFO    ] No camera update needed
[2026-06-13 13:59:00,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:00,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:00,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:00,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:02,290.290 INFO    ] ================================================
[2026-06-13 13:59:02,298.298 INFO    ] Launching Daemon at Sat Jun 13 13:59:02 IST 2026
[2026-06-13 13:59:02,304.304 INFO    ] ================================================
[2026-06-13 13:59:02,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:02
[2026-06-13 13:59:02,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:59:03,048.048 INFO    ] Initializing speech engine...
[2026-06-13 13:59:03,062.062 INFO    ] 2026-06-13 13:59:03
[2026-06-13 13:59:03,269.269 INFO    ] 2026-06-13 13:59:03
[2026-06-13 13:59:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:59:03,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:59:03,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:59:03,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:59:03,692.692 INFO    ] time= 13/06/2026 13:59:03
[2026-06-13 13:59:03,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:59:03,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:59:03,793.793 INFO    ] No existing commands found in stream
[2026-06-13 13:59:08,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:59:08,807.807 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 13:59:09,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 13:59:09,163.163 INFO    ] Checking for system updates...
[2026-06-13 13:59:09,186.186 INFO    ] 200
[2026-06-13 13:59:09,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:09,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:09,219.219 INFO    ] No update needed
[2026-06-13 13:59:09,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:09,240.240 INFO    ] 200
[2026-06-13 13:59:09,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:09,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:09,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:09,313.313 INFO    ] No camera update needed
[2026-06-13 13:59:09,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:09,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:09,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:09,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:11,361.361 INFO    ] ================================================
[2026-06-13 13:59:11,377.377 INFO    ] Launching Daemon at Sat Jun 13 13:59:11 IST 2026
[2026-06-13 13:59:11,388.388 INFO    ] ================================================
[2026-06-13 13:59:11,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:11
[2026-06-13 13:59:12,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:59:12,238.238 INFO    ] Initializing speech engine...
[2026-06-13 13:59:12,243.243 INFO    ] 2026-06-13 13:59:12
[2026-06-13 13:59:12,454.454 INFO    ] 2026-06-13 13:59:12
[2026-06-13 13:59:12,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:59:12,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:59:12,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:59:12,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:59:12,784.784 INFO    ] time= 13/06/2026 13:59:12
[2026-06-13 13:59:12,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:59:12,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:59:12,982.982 INFO    ] No existing commands found in stream
[2026-06-13 13:59:17,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:59:17,997.997 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 13:59:21,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 13:59:21,193.193 INFO    ] Checking for system updates...
[2026-06-13 13:59:21,215.215 INFO    ] 200
[2026-06-13 13:59:21,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:21,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:21,249.249 INFO    ] No update needed
[2026-06-13 13:59:21,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:21,270.270 INFO    ] 200
[2026-06-13 13:59:21,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:21,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:21,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:21,336.336 INFO    ] No camera update needed
[2026-06-13 13:59:21,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:21,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:21,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:21,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:23,385.385 INFO    ] ================================================
[2026-06-13 13:59:23,401.401 INFO    ] Launching Daemon at Sat Jun 13 13:59:23 IST 2026
[2026-06-13 13:59:23,412.412 INFO    ] ================================================
[2026-06-13 13:59:23,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:23
[2026-06-13 13:59:24,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:59:24,213.213 INFO    ] Initializing speech engine...
[2026-06-13 13:59:24,218.218 INFO    ] 2026-06-13 13:59:24
[2026-06-13 13:59:24,427.427 INFO    ] 2026-06-13 13:59:24
[2026-06-13 13:59:24,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:59:24,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:59:24,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:59:24,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:59:24,859.859 INFO    ] time= 13/06/2026 13:59:24
[2026-06-13 13:59:24,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:59:24,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:59:24,987.987 INFO    ] No existing commands found in stream
[2026-06-13 13:59:29,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:59:30,001.001 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 13:59:30,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:59:30,796.796 INFO    ] Checking for system updates...
[2026-06-13 13:59:30,818.818 INFO    ] 200
[2026-06-13 13:59:30,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:30,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:30,853.853 INFO    ] No update needed
[2026-06-13 13:59:30,854.854 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:30,874.874 INFO    ] 200
[2026-06-13 13:59:30,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:30,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:30,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:30,942.942 INFO    ] No camera update needed
[2026-06-13 13:59:30,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:30,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:30,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:30,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:32,983.983 INFO    ] ================================================
[2026-06-13 13:59:33,999.999 INFO    ] Launching Daemon at Sat Jun 13 13:59:32 IST 2026
[2026-06-13 13:59:33,010.010 INFO    ] ================================================
[2026-06-13 13:59:33,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:33
[2026-06-13 13:59:34,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:59:34,509.509 INFO    ] Initializing speech engine...
[2026-06-13 13:59:34,518.518 INFO    ] 2026-06-13 13:59:34
[2026-06-13 13:59:34,792.792 INFO    ] 2026-06-13 13:59:34
[2026-06-13 13:59:34,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:59:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:59:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:59:35,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:59:35,274.274 INFO    ] time= 13/06/2026 13:59:35
[2026-06-13 13:59:35,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:59:35,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:59:35,431.431 INFO    ] No existing commands found in stream
[2026-06-13 13:59:40,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:59:40,456.456 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 13:59:43,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 13:59:43,952.952 INFO    ] Checking for system updates...
[2026-06-13 13:59:43,973.973 INFO    ] 200
[2026-06-13 13:59:43,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:44,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:59:44,009.009 INFO    ] No update needed
[2026-06-13 13:59:44,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:44,031.031 INFO    ] 200
[2026-06-13 13:59:44,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:44,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:44,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:59:44,100.100 INFO    ] No camera update needed
[2026-06-13 13:59:44,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:44,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:44,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:44,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:46,148.148 INFO    ] ================================================
[2026-06-13 13:59:46,163.163 INFO    ] Launching Daemon at Sat Jun 13 13:59:46 IST 2026
[2026-06-13 13:59:46,174.174 INFO    ] ================================================
[2026-06-13 13:59:46,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:46
[2026-06-13 13:59:46,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 13:59:46,958.958 INFO    ] Initializing speech engine...
[2026-06-13 13:59:46,962.962 INFO    ] 2026-06-13 13:59:46
[2026-06-13 13:59:47,166.166 INFO    ] 2026-06-13 13:59:47
[2026-06-13 13:59:47,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 13:59:47,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 13:59:47,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 13:59:47,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 13:59:47,532.532 INFO    ] time= 13/06/2026 13:59:47
[2026-06-13 13:59:47,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 13:59:47,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 13:59:47,747.747 INFO    ] No existing commands found in stream
[2026-06-13 13:59:52,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 13:59:52,777.777 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 13:59:56,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 13:59:56,921.921 INFO    ] Checking for system updates...
[2026-06-13 13:59:56,943.943 INFO    ] 200
[2026-06-13 13:59:56,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:56,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 13:59:56,978.978 INFO    ] No update needed
[2026-06-13 13:59:56,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 13:59:56,999.999 INFO    ] 200
[2026-06-13 13:59:57,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 13:59:57,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 13:59:57,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 13:59:57,170.170 INFO    ] No camera update needed
[2026-06-13 13:59:57,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 13:59:57,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 13:59:57,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 13:59:57,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 13:59:59,217.217 INFO    ] ================================================
[2026-06-13 13:59:59,232.232 INFO    ] Launching Daemon at Sat Jun 13 13:59:59 IST 2026
[2026-06-13 13:59:59,243.243 INFO    ] ================================================
[2026-06-13 13:59:59,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 13:59:59
[2026-06-13 13:59:59,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:00:00,050.050 INFO    ] Initializing speech engine...
[2026-06-13 14:00:00,053.053 INFO    ] 2026-06-13 14:00:00
[2026-06-13 14:00:00,271.271 INFO    ] 2026-06-13 14:00:00
[2026-06-13 14:00:00,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:00:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:00:00,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:00:00,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:00:00,693.693 INFO    ] time= 13/06/2026 14:00:00
[2026-06-13 14:00:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:00:00,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:00:00,791.791 INFO    ] No existing commands found in stream
[2026-06-13 14:00:05,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:00:05,805.805 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 14:00:09,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:00:09,197.197 INFO    ] Checking for system updates...
[2026-06-13 14:00:09,218.218 INFO    ] 200
[2026-06-13 14:00:09,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:09,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:09,254.254 INFO    ] No update needed
[2026-06-13 14:00:09,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 14:00:09,278.278 INFO    ] 200
[2026-06-13 14:00:09,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:09,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:00:09,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:09,338.338 INFO    ] No camera update needed
[2026-06-13 14:00:09,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:00:09,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:00:09,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:00:09,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:00:11,387.387 INFO    ] ================================================
[2026-06-13 14:00:11,402.402 INFO    ] Launching Daemon at Sat Jun 13 14:00:11 IST 2026
[2026-06-13 14:00:11,413.413 INFO    ] ================================================
[2026-06-13 14:00:11,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:00:11
[2026-06-13 14:00:12,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:00:12,222.222 INFO    ] Initializing speech engine...
[2026-06-13 14:00:12,233.233 INFO    ] 2026-06-13 14:00:12
[2026-06-13 14:00:12,436.436 INFO    ] 2026-06-13 14:00:12
[2026-06-13 14:00:12,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:00:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:00:12,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:00:12,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:00:12,840.840 INFO    ] time= 13/06/2026 14:00:12
[2026-06-13 14:00:12,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:00:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:00:12,957.957 INFO    ] No existing commands found in stream
[2026-06-13 14:00:17,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:00:17,969.969 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 14:00:22,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:00:22,258.258 INFO    ] Checking for system updates...
[2026-06-13 14:00:22,278.278 INFO    ] 200
[2026-06-13 14:00:22,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:22,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:22,314.314 INFO    ] No update needed
[2026-06-13 14:00:22,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 14:00:22,336.336 INFO    ] 200
[2026-06-13 14:00:22,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:22,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:00:22,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:22,400.400 INFO    ] No camera update needed
[2026-06-13 14:00:22,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:00:22,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:00:22,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:00:22,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:00:24,450.450 INFO    ] ================================================
[2026-06-13 14:00:24,465.465 INFO    ] Launching Daemon at Sat Jun 13 14:00:24 IST 2026
[2026-06-13 14:00:24,476.476 INFO    ] ================================================
[2026-06-13 14:00:24,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:00:24
[2026-06-13 14:00:25,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:00:25,272.272 INFO    ] Initializing speech engine...
[2026-06-13 14:00:25,277.277 INFO    ] 2026-06-13 14:00:25
[2026-06-13 14:00:25,483.483 INFO    ] 2026-06-13 14:00:25
[2026-06-13 14:00:25,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:00:25,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:00:25,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:00:25,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:00:25,892.892 INFO    ] time= 13/06/2026 14:00:25
[2026-06-13 14:00:25,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:00:25,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:00:26,004.004 INFO    ] No existing commands found in stream
[2026-06-13 14:00:31,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:00:31,014.014 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 14:00:34,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:00:34,667.667 INFO    ] Checking for system updates...
[2026-06-13 14:00:34,688.688 INFO    ] 200
[2026-06-13 14:00:34,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:34,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:00:34,722.722 INFO    ] No update needed
[2026-06-13 14:00:34,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 14:00:34,743.743 INFO    ] 200
[2026-06-13 14:00:34,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:34,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:00:34,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:34,819.819 INFO    ] No camera update needed
[2026-06-13 14:00:34,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:00:34,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:00:34,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:00:34,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:00:36,867.867 INFO    ] ================================================
[2026-06-13 14:00:36,883.883 INFO    ] Launching Daemon at Sat Jun 13 14:00:36 IST 2026
[2026-06-13 14:00:36,894.894 INFO    ] ================================================
[2026-06-13 14:00:37,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:00:37
[2026-06-13 14:00:37,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:00:37,704.704 INFO    ] Initializing speech engine...
[2026-06-13 14:00:37,708.708 INFO    ] 2026-06-13 14:00:37
[2026-06-13 14:00:37,924.924 INFO    ] 2026-06-13 14:00:37
[2026-06-13 14:00:37,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:00:38,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:00:38,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:00:38,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:00:38,352.352 INFO    ] time= 13/06/2026 14:00:38
[2026-06-13 14:00:38,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:00:38,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:00:38,485.485 INFO    ] No existing commands found in stream
[2026-06-13 14:00:43,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:00:43,499.499 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 14:00:44,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:00:44,177.177 INFO    ] Checking for system updates...
[2026-06-13 14:00:44,200.200 INFO    ] 200
[2026-06-13 14:00:44,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:44,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:44,233.233 INFO    ] No update needed
[2026-06-13 14:00:44,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 14:00:44,254.254 INFO    ] 200
[2026-06-13 14:00:44,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:44,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:00:44,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:44,317.317 INFO    ] No camera update needed
[2026-06-13 14:00:44,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:00:44,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:00:44,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:00:44,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:00:46,365.365 INFO    ] ================================================
[2026-06-13 14:00:46,381.381 INFO    ] Launching Daemon at Sat Jun 13 14:00:46 IST 2026
[2026-06-13 14:00:46,391.391 INFO    ] ================================================
[2026-06-13 14:00:46,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:00:46
[2026-06-13 14:00:47,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:00:47,199.199 INFO    ] Initializing speech engine...
[2026-06-13 14:00:47,204.204 INFO    ] 2026-06-13 14:00:47
[2026-06-13 14:00:47,410.410 INFO    ] 2026-06-13 14:00:47
[2026-06-13 14:00:47,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:00:47,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:00:47,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:00:47,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:00:47,823.823 INFO    ] time= 13/06/2026 14:00:47
[2026-06-13 14:00:47,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:00:47,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:00:47,932.932 INFO    ] No existing commands found in stream
[2026-06-13 14:00:52,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:00:52,949.949 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 14:00:57,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:00:57,216.216 INFO    ] Checking for system updates...
[2026-06-13 14:00:57,239.239 INFO    ] 200
[2026-06-13 14:00:57,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:57,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:00:57,274.274 INFO    ] No update needed
[2026-06-13 14:00:57,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 14:00:57,295.295 INFO    ] 200
[2026-06-13 14:00:57,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:00:57,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:00:57,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:00:57,358.358 INFO    ] No camera update needed
[2026-06-13 14:00:57,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:00:57,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:00:57,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:00:57,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:00:59,404.404 INFO    ] ================================================
[2026-06-13 14:00:59,419.419 INFO    ] Launching Daemon at Sat Jun 13 14:00:59 IST 2026
[2026-06-13 14:00:59,430.430 INFO    ] ================================================
[2026-06-13 14:00:59,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:00:59
[2026-06-13 14:01:00,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:00,292.292 INFO    ] Initializing speech engine...
[2026-06-13 14:01:00,297.297 INFO    ] 2026-06-13 14:01:00
[2026-06-13 14:01:00,500.500 INFO    ] 2026-06-13 14:01:00
[2026-06-13 14:01:00,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:00,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:00,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:00,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:00,753.753 INFO    ] time= 13/06/2026 14:01:00
[2026-06-13 14:01:00,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:00,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:00,801.801 INFO    ] No existing commands found in stream
[2026-06-13 14:01:05,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:01:05,813.813 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 14:01:08,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:01:08,374.374 INFO    ] Checking for system updates...
[2026-06-13 14:01:08,395.395 INFO    ] 200
[2026-06-13 14:01:08,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:08,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:01:08,429.429 INFO    ] No update needed
[2026-06-13 14:01:08,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 14:01:08,450.450 INFO    ] 200
[2026-06-13 14:01:08,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:08,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:01:08,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:01:08,522.522 INFO    ] No camera update needed
[2026-06-13 14:01:08,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:01:08,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:01:08,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:01:08,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:01:10,570.570 INFO    ] ================================================
[2026-06-13 14:01:10,585.585 INFO    ] Launching Daemon at Sat Jun 13 14:01:10 IST 2026
[2026-06-13 14:01:10,596.596 INFO    ] ================================================
[2026-06-13 14:01:10,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:01:10
[2026-06-13 14:01:11,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:11,373.373 INFO    ] Initializing speech engine...
[2026-06-13 14:01:11,386.386 INFO    ] 2026-06-13 14:01:11
[2026-06-13 14:01:11,595.595 INFO    ] 2026-06-13 14:01:11
[2026-06-13 14:01:11,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:11,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:11,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:11,997.997 INFO    ] time= 13/06/2026 14:01:11
[2026-06-13 14:01:12,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:12,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:12,112.112 INFO    ] No existing commands found in stream
[2026-06-13 14:01:17,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:01:17,124.124 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 14:01:19,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:01:19,453.453 INFO    ] Checking for system updates...
[2026-06-13 14:01:19,476.476 INFO    ] 200
[2026-06-13 14:01:19,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:19,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:19,516.516 INFO    ] No update needed
[2026-06-13 14:01:19,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 14:01:19,539.539 INFO    ] 200
[2026-06-13 14:01:19,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:19,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:01:19,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:19,609.609 INFO    ] No camera update needed
[2026-06-13 14:01:19,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:01:19,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:01:19,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:01:19,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:01:21,653.653 INFO    ] ================================================
[2026-06-13 14:01:21,669.669 INFO    ] Launching Daemon at Sat Jun 13 14:01:21 IST 2026
[2026-06-13 14:01:21,680.680 INFO    ] ================================================
[2026-06-13 14:01:22,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:01:22
[2026-06-13 14:01:22,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:22,506.506 INFO    ] Initializing speech engine...
[2026-06-13 14:01:22,511.511 INFO    ] 2026-06-13 14:01:22
[2026-06-13 14:01:22,713.713 INFO    ] 2026-06-13 14:01:22
[2026-06-13 14:01:22,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:22,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:22,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:23,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:23,140.140 INFO    ] time= 13/06/2026 14:01:23
[2026-06-13 14:01:23,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:23,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:23,238.238 INFO    ] No existing commands found in stream
[2026-06-13 14:01:28,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:01:28,251.251 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 14:01:29,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:01:29,787.787 INFO    ] Checking for system updates...
[2026-06-13 14:01:29,810.810 INFO    ] 200
[2026-06-13 14:01:29,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:29,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:29,843.843 INFO    ] No update needed
[2026-06-13 14:01:29,845.845 INFO    ] Checking for camera pi updates...
[2026-06-13 14:01:29,869.869 INFO    ] 200
[2026-06-13 14:01:29,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:29,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:01:29,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:01:29,934.934 INFO    ] No camera update needed
[2026-06-13 14:01:29,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:01:29,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:01:29,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:01:29,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:01:31,983.983 INFO    ] ================================================
[2026-06-13 14:01:32,002.002 INFO    ] Launching Daemon at Sat Jun 13 14:01:31 IST 2026
[2026-06-13 14:01:32,015.015 INFO    ] ================================================
[2026-06-13 14:01:32,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:01:32
[2026-06-13 14:01:32,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:32,849.849 INFO    ] Initializing speech engine...
[2026-06-13 14:01:32,852.852 INFO    ] 2026-06-13 14:01:32
[2026-06-13 14:01:33,069.069 INFO    ] 2026-06-13 14:01:33
[2026-06-13 14:01:33,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:33,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:33,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:33,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:33,483.483 INFO    ] time= 13/06/2026 14:01:33
[2026-06-13 14:01:33,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:33,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:33,595.595 INFO    ] No existing commands found in stream
[2026-06-13 14:01:38,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:01:38,642.642 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 14:01:41,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:01:41,693.693 INFO    ] Checking for system updates...
[2026-06-13 14:01:41,713.713 INFO    ] 200
[2026-06-13 14:01:41,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:41,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:41,751.751 INFO    ] No update needed
[2026-06-13 14:01:41,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 14:01:41,772.772 INFO    ] 200
[2026-06-13 14:01:41,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:41,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:01:41,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:41,845.845 INFO    ] No camera update needed
[2026-06-13 14:01:41,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:01:41,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:01:41,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:01:41,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:01:43,893.893 INFO    ] ================================================
[2026-06-13 14:01:43,908.908 INFO    ] Launching Daemon at Sat Jun 13 14:01:43 IST 2026
[2026-06-13 14:01:43,920.920 INFO    ] ================================================
[2026-06-13 14:01:44,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:01:44
[2026-06-13 14:01:44,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:44,711.711 INFO    ] Initializing speech engine...
[2026-06-13 14:01:44,716.716 INFO    ] 2026-06-13 14:01:44
[2026-06-13 14:01:44,922.922 INFO    ] 2026-06-13 14:01:44
[2026-06-13 14:01:44,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:45,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:45,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:45,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:45,323.323 INFO    ] time= 13/06/2026 14:01:45
[2026-06-13 14:01:45,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:45,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:45,446.446 INFO    ] No existing commands found in stream
[2026-06-13 14:01:50,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:01:50,459.459 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 14:01:52,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:01:52,982.982 INFO    ] Checking for system updates...
[2026-06-13 14:01:53,004.004 INFO    ] 200
[2026-06-13 14:01:53,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:53,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:53,036.036 INFO    ] No update needed
[2026-06-13 14:01:53,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 14:01:53,059.059 INFO    ] 200
[2026-06-13 14:01:53,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:01:53,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:01:53,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:01:53,130.130 INFO    ] No camera update needed
[2026-06-13 14:01:53,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:01:53,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:01:53,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:01:53,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:01:55,179.179 INFO    ] ================================================
[2026-06-13 14:01:55,194.194 INFO    ] Launching Daemon at Sat Jun 13 14:01:55 IST 2026
[2026-06-13 14:01:55,204.204 INFO    ] ================================================
[2026-06-13 14:01:55,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:01:55
[2026-06-13 14:01:55,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:01:55,985.985 INFO    ] Initializing speech engine...
[2026-06-13 14:01:55,990.990 INFO    ] 2026-06-13 14:01:55
[2026-06-13 14:01:56,196.196 INFO    ] 2026-06-13 14:01:56
[2026-06-13 14:01:56,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:01:56,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:01:56,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:01:56,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:01:56,618.618 INFO    ] time= 13/06/2026 14:01:56
[2026-06-13 14:01:56,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:01:56,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:01:56,715.715 INFO    ] No existing commands found in stream
[2026-06-13 14:02:01,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:01,727.727 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 14:02:02,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:02:02,224.224 INFO    ] Checking for system updates...
[2026-06-13 14:02:02,245.245 INFO    ] 200
[2026-06-13 14:02:02,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:02,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:02:02,277.277 INFO    ] No update needed
[2026-06-13 14:02:02,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:02,299.299 INFO    ] 200
[2026-06-13 14:02:02,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:02,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:02,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:02,349.349 INFO    ] No camera update needed
[2026-06-13 14:02:02,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:02,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:02,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:02,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:04,401.401 INFO    ] ================================================
[2026-06-13 14:02:04,417.417 INFO    ] Launching Daemon at Sat Jun 13 14:02:04 IST 2026
[2026-06-13 14:02:04,427.427 INFO    ] ================================================
[2026-06-13 14:02:04,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:04
[2026-06-13 14:02:05,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:05,437.437 INFO    ] Initializing speech engine...
[2026-06-13 14:02:05,442.442 INFO    ] 2026-06-13 14:02:05
[2026-06-13 14:02:05,702.702 INFO    ] 2026-06-13 14:02:05
[2026-06-13 14:02:05,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:02:05,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:02:05,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:02:06,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:02:06,174.174 INFO    ] time= 13/06/2026 14:02:06
[2026-06-13 14:02:06,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:02:06,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:02:06,390.390 INFO    ] No existing commands found in stream
[2026-06-13 14:02:11,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:11,422.422 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 14:02:13,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:02:13,569.569 INFO    ] Checking for system updates...
[2026-06-13 14:02:13,590.590 INFO    ] 200
[2026-06-13 14:02:13,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:13,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:13,623.623 INFO    ] No update needed
[2026-06-13 14:02:13,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:13,644.644 INFO    ] 200
[2026-06-13 14:02:13,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:13,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:13,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:13,718.718 INFO    ] No camera update needed
[2026-06-13 14:02:13,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:13,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:13,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:13,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:15,767.767 INFO    ] ================================================
[2026-06-13 14:02:15,782.782 INFO    ] Launching Daemon at Sat Jun 13 14:02:15 IST 2026
[2026-06-13 14:02:15,793.793 INFO    ] ================================================
[2026-06-13 14:02:16,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:16
[2026-06-13 14:02:16,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:17,121.121 INFO    ] Initializing speech engine...
[2026-06-13 14:02:17,131.131 INFO    ] 2026-06-13 14:02:17
[2026-06-13 14:02:17,386.386 INFO    ] 2026-06-13 14:02:17
[2026-06-13 14:02:17,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:02:17,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:02:17,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:02:17,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:02:17,746.746 INFO    ] time= 13/06/2026 14:02:17
[2026-06-13 14:02:17,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:02:17,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:02:17,820.820 INFO    ] No existing commands found in stream
[2026-06-13 14:02:22,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:22,835.835 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 14:02:23,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:02:23,735.735 INFO    ] Checking for system updates...
[2026-06-13 14:02:23,756.756 INFO    ] 200
[2026-06-13 14:02:23,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:23,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:23,790.790 INFO    ] No update needed
[2026-06-13 14:02:23,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:23,812.812 INFO    ] 200
[2026-06-13 14:02:23,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:23,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:23,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:23,876.876 INFO    ] No camera update needed
[2026-06-13 14:02:23,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:23,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:23,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:23,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:25,917.917 INFO    ] ================================================
[2026-06-13 14:02:25,933.933 INFO    ] Launching Daemon at Sat Jun 13 14:02:25 IST 2026
[2026-06-13 14:02:25,944.944 INFO    ] ================================================
[2026-06-13 14:02:26,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:26
[2026-06-13 14:02:26,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:26,736.736 INFO    ] Initializing speech engine...
[2026-06-13 14:02:26,747.747 INFO    ] 2026-06-13 14:02:26
[2026-06-13 14:02:26,960.960 INFO    ] 2026-06-13 14:02:26
[2026-06-13 14:02:26,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:02:27,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:02:27,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:02:27,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:02:27,396.396 INFO    ] time= 13/06/2026 14:02:27
[2026-06-13 14:02:27,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:02:27,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:02:27,631.631 INFO    ] No existing commands found in stream
[2026-06-13 14:02:32,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:32,646.646 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 14:02:33,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:02:33,138.138 INFO    ] Checking for system updates...
[2026-06-13 14:02:33,159.159 INFO    ] 200
[2026-06-13 14:02:33,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:33,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:02:33,192.192 INFO    ] No update needed
[2026-06-13 14:02:33,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:33,213.213 INFO    ] 200
[2026-06-13 14:02:33,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:33,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:33,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:02:33,278.278 INFO    ] No camera update needed
[2026-06-13 14:02:33,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:33,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:33,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:33,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:35,320.320 INFO    ] ================================================
[2026-06-13 14:02:35,328.328 INFO    ] Launching Daemon at Sat Jun 13 14:02:35 IST 2026
[2026-06-13 14:02:35,334.334 INFO    ] ================================================
[2026-06-13 14:02:35,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:35
[2026-06-13 14:02:36,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:36,134.134 INFO    ] Initializing speech engine...
[2026-06-13 14:02:36,139.139 INFO    ] 2026-06-13 14:02:36
[2026-06-13 14:02:36,367.367 INFO    ] 2026-06-13 14:02:36
[2026-06-13 14:02:36,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:02:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:02:36,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:02:36,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:02:36,781.781 INFO    ] time= 13/06/2026 14:02:36
[2026-06-13 14:02:36,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:02:36,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:02:36,917.917 INFO    ] No existing commands found in stream
[2026-06-13 14:02:41,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:41,930.930 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 14:02:44,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:02:44,691.691 INFO    ] Checking for system updates...
[2026-06-13 14:02:44,713.713 INFO    ] 200
[2026-06-13 14:02:44,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:44,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:02:44,745.745 INFO    ] No update needed
[2026-06-13 14:02:44,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:44,766.766 INFO    ] 200
[2026-06-13 14:02:44,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:44,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:44,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:02:44,835.835 INFO    ] No camera update needed
[2026-06-13 14:02:44,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:44,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:44,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:44,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:46,883.883 INFO    ] ================================================
[2026-06-13 14:02:46,900.900 INFO    ] Launching Daemon at Sat Jun 13 14:02:46 IST 2026
[2026-06-13 14:02:46,910.910 INFO    ] ================================================
[2026-06-13 14:02:47,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:47
[2026-06-13 14:02:47,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:47,707.707 INFO    ] Initializing speech engine...
[2026-06-13 14:02:47,712.712 INFO    ] 2026-06-13 14:02:47
[2026-06-13 14:02:47,916.916 INFO    ] 2026-06-13 14:02:47
[2026-06-13 14:02:47,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:02:48,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:02:48,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:02:48,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:02:48,263.263 INFO    ] time= 13/06/2026 14:02:48
[2026-06-13 14:02:48,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:02:48,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:02:48,433.433 INFO    ] No existing commands found in stream
[2026-06-13 14:02:53,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:02:53,445.445 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 14:02:56,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:02:56,687.687 INFO    ] Checking for system updates...
[2026-06-13 14:02:56,709.709 INFO    ] 200
[2026-06-13 14:02:56,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:56,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:56,743.743 INFO    ] No update needed
[2026-06-13 14:02:56,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 14:02:56,765.765 INFO    ] 200
[2026-06-13 14:02:56,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:02:56,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:02:56,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:02:56,840.840 INFO    ] No camera update needed
[2026-06-13 14:02:56,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:02:56,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:02:56,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:02:56,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:02:58,889.889 INFO    ] ================================================
[2026-06-13 14:02:58,904.904 INFO    ] Launching Daemon at Sat Jun 13 14:02:58 IST 2026
[2026-06-13 14:02:58,916.916 INFO    ] ================================================
[2026-06-13 14:02:59,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:02:59
[2026-06-13 14:02:59,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:02:59,744.744 INFO    ] Initializing speech engine...
[2026-06-13 14:02:59,747.747 INFO    ] 2026-06-13 14:02:59
[2026-06-13 14:02:59,955.955 INFO    ] 2026-06-13 14:02:59
[2026-06-13 14:02:59,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:00,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:00,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:00,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:00,361.361 INFO    ] time= 13/06/2026 14:03:00
[2026-06-13 14:03:00,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:00,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:00,471.471 INFO    ] No existing commands found in stream
[2026-06-13 14:03:05,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:05,489.489 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 14:03:07,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:03:07,729.729 INFO    ] Checking for system updates...
[2026-06-13 14:03:07,750.750 INFO    ] 200
[2026-06-13 14:03:07,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:07,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:07,786.786 INFO    ] No update needed
[2026-06-13 14:03:07,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:07,810.810 INFO    ] 200
[2026-06-13 14:03:07,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:07,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:07,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:07,874.874 INFO    ] No camera update needed
[2026-06-13 14:03:07,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:07,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:07,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:07,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:09,921.921 INFO    ] ================================================
[2026-06-13 14:03:09,936.936 INFO    ] Launching Daemon at Sat Jun 13 14:03:09 IST 2026
[2026-06-13 14:03:09,947.947 INFO    ] ================================================
[2026-06-13 14:03:10,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:10
[2026-06-13 14:03:10,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:10,825.825 INFO    ] Initializing speech engine...
[2026-06-13 14:03:10,831.831 INFO    ] 2026-06-13 14:03:10
[2026-06-13 14:03:11,038.038 INFO    ] 2026-06-13 14:03:11
[2026-06-13 14:03:11,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:11,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:11,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:11,443.443 INFO    ] time= 13/06/2026 14:03:11
[2026-06-13 14:03:11,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:11,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:11,554.554 INFO    ] No existing commands found in stream
[2026-06-13 14:03:16,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:16,567.567 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 14:03:17,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:03:17,182.182 INFO    ] Checking for system updates...
[2026-06-13 14:03:17,203.203 INFO    ] 200
[2026-06-13 14:03:17,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:17,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:17,237.237 INFO    ] No update needed
[2026-06-13 14:03:17,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:17,259.259 INFO    ] 200
[2026-06-13 14:03:17,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:17,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:17,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:17,326.326 INFO    ] No camera update needed
[2026-06-13 14:03:17,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:17,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:17,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:17,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:19,376.376 INFO    ] ================================================
[2026-06-13 14:03:19,391.391 INFO    ] Launching Daemon at Sat Jun 13 14:03:19 IST 2026
[2026-06-13 14:03:19,402.402 INFO    ] ================================================
[2026-06-13 14:03:19,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:19
[2026-06-13 14:03:20,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:20,198.198 INFO    ] Initializing speech engine...
[2026-06-13 14:03:20,203.203 INFO    ] 2026-06-13 14:03:20
[2026-06-13 14:03:20,406.406 INFO    ] 2026-06-13 14:03:20
[2026-06-13 14:03:20,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:20,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:20,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:20,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:20,810.810 INFO    ] time= 13/06/2026 14:03:20
[2026-06-13 14:03:20,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:20,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:20,920.920 INFO    ] No existing commands found in stream
[2026-06-13 14:03:25,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:25,932.932 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 14:03:26,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:03:26,298.298 INFO    ] Checking for system updates...
[2026-06-13 14:03:26,320.320 INFO    ] 200
[2026-06-13 14:03:26,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:26,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:03:26,353.353 INFO    ] No update needed
[2026-06-13 14:03:26,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:26,373.373 INFO    ] 200
[2026-06-13 14:03:26,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:26,401.401 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:26,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:26,444.444 INFO    ] No camera update needed
[2026-06-13 14:03:26,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:26,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:26,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:26,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:28,494.494 INFO    ] ================================================
[2026-06-13 14:03:28,510.510 INFO    ] Launching Daemon at Sat Jun 13 14:03:28 IST 2026
[2026-06-13 14:03:28,520.520 INFO    ] ================================================
[2026-06-13 14:03:28,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:28
[2026-06-13 14:03:29,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:29,332.332 INFO    ] Initializing speech engine...
[2026-06-13 14:03:29,342.342 INFO    ] 2026-06-13 14:03:29
[2026-06-13 14:03:29,548.548 INFO    ] 2026-06-13 14:03:29
[2026-06-13 14:03:29,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:29,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:29,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:29,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:29,967.967 INFO    ] time= 13/06/2026 14:03:29
[2026-06-13 14:03:29,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:29,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:30,063.063 INFO    ] No existing commands found in stream
[2026-06-13 14:03:35,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:35,076.076 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 14:03:36,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:03:36,268.268 INFO    ] Checking for system updates...
[2026-06-13 14:03:36,289.289 INFO    ] 200
[2026-06-13 14:03:36,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:36,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:03:36,325.325 INFO    ] No update needed
[2026-06-13 14:03:36,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:36,346.346 INFO    ] 200
[2026-06-13 14:03:36,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:36,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:36,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:03:36,418.418 INFO    ] No camera update needed
[2026-06-13 14:03:36,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:36,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:36,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:36,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:38,466.466 INFO    ] ================================================
[2026-06-13 14:03:38,481.481 INFO    ] Launching Daemon at Sat Jun 13 14:03:38 IST 2026
[2026-06-13 14:03:38,492.492 INFO    ] ================================================
[2026-06-13 14:03:38,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:38
[2026-06-13 14:03:39,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:39,298.298 INFO    ] Initializing speech engine...
[2026-06-13 14:03:39,303.303 INFO    ] 2026-06-13 14:03:39
[2026-06-13 14:03:39,519.519 INFO    ] 2026-06-13 14:03:39
[2026-06-13 14:03:39,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:39,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:39,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:39,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:39,927.927 INFO    ] time= 13/06/2026 14:03:39
[2026-06-13 14:03:39,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:39,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:40,037.037 INFO    ] No existing commands found in stream
[2026-06-13 14:03:45,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:45,054.054 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 14:03:46,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:03:46,003.003 INFO    ] Checking for system updates...
[2026-06-13 14:03:46,026.026 INFO    ] 200
[2026-06-13 14:03:46,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:46,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:46,061.061 INFO    ] No update needed
[2026-06-13 14:03:46,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:46,082.082 INFO    ] 200
[2026-06-13 14:03:46,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:46,107.107 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:46,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:46,147.147 INFO    ] No camera update needed
[2026-06-13 14:03:46,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:46,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:46,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:46,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:48,197.197 INFO    ] ================================================
[2026-06-13 14:03:48,214.214 INFO    ] Launching Daemon at Sat Jun 13 14:03:48 IST 2026
[2026-06-13 14:03:48,225.225 INFO    ] ================================================
[2026-06-13 14:03:48,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:48
[2026-06-13 14:03:48,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:49,040.040 INFO    ] Initializing speech engine...
[2026-06-13 14:03:49,045.045 INFO    ] 2026-06-13 14:03:49
[2026-06-13 14:03:49,248.248 INFO    ] 2026-06-13 14:03:49
[2026-06-13 14:03:49,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:49,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:49,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:49,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:49,635.635 INFO    ] time= 13/06/2026 14:03:49
[2026-06-13 14:03:49,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:49,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:49,758.758 INFO    ] No existing commands found in stream
[2026-06-13 14:03:54,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:03:54,772.772 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 14:03:55,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:03:55,212.212 INFO    ] Checking for system updates...
[2026-06-13 14:03:55,232.232 INFO    ] 200
[2026-06-13 14:03:55,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:55,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:03:55,265.265 INFO    ] No update needed
[2026-06-13 14:03:55,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 14:03:55,288.288 INFO    ] 200
[2026-06-13 14:03:55,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:03:55,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:03:55,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:03:55,353.353 INFO    ] No camera update needed
[2026-06-13 14:03:55,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:03:55,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:03:55,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:03:55,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:03:57,401.401 INFO    ] ================================================
[2026-06-13 14:03:57,417.417 INFO    ] Launching Daemon at Sat Jun 13 14:03:57 IST 2026
[2026-06-13 14:03:57,428.428 INFO    ] ================================================
[2026-06-13 14:03:57,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:03:57
[2026-06-13 14:03:58,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:03:58,228.228 INFO    ] Initializing speech engine...
[2026-06-13 14:03:58,236.236 INFO    ] 2026-06-13 14:03:58
[2026-06-13 14:03:58,450.450 INFO    ] 2026-06-13 14:03:58
[2026-06-13 14:03:58,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:03:58,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:03:58,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:03:58,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:03:58,867.867 INFO    ] time= 13/06/2026 14:03:58
[2026-06-13 14:03:58,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:03:58,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:03:58,975.975 INFO    ] No existing commands found in stream
[2026-06-13 14:04:03,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:03,992.992 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 14:04:05,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:04:05,123.123 INFO    ] Checking for system updates...
[2026-06-13 14:04:05,144.144 INFO    ] 200
[2026-06-13 14:04:05,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:05,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:04:05,177.177 INFO    ] No update needed
[2026-06-13 14:04:05,178.178 INFO    ] Checking for camera pi updates...
[2026-06-13 14:04:05,199.199 INFO    ] 200
[2026-06-13 14:04:05,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:05,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:04:05,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:04:05,361.361 INFO    ] No camera update needed
[2026-06-13 14:04:05,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:04:05,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:04:05,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:04:05,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:04:07,416.416 INFO    ] ================================================
[2026-06-13 14:04:07,431.431 INFO    ] Launching Daemon at Sat Jun 13 14:04:07 IST 2026
[2026-06-13 14:04:07,443.443 INFO    ] ================================================
[2026-06-13 14:04:07,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:04:07
[2026-06-13 14:04:08,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:04:08,245.245 INFO    ] Initializing speech engine...
[2026-06-13 14:04:08,255.255 INFO    ] 2026-06-13 14:04:08
[2026-06-13 14:04:08,454.454 INFO    ] 2026-06-13 14:04:08
[2026-06-13 14:04:08,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:04:08,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:04:08,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:04:08,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:04:08,829.829 INFO    ] time= 13/06/2026 14:04:08
[2026-06-13 14:04:08,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:04:08,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:04:08,904.904 INFO    ] No existing commands found in stream
[2026-06-13 14:04:13,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:13,920.920 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 14:04:17,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:04:17,329.329 INFO    ] Checking for system updates...
[2026-06-13 14:04:17,349.349 INFO    ] 200
[2026-06-13 14:04:17,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:17,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:04:17,382.382 INFO    ] No update needed
[2026-06-13 14:04:17,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 14:04:17,403.403 INFO    ] 200
[2026-06-13 14:04:17,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:17,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:04:17,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:04:17,472.472 INFO    ] No camera update needed
[2026-06-13 14:04:17,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:04:17,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:04:17,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:04:17,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:04:19,524.524 INFO    ] ================================================
[2026-06-13 14:04:19,539.539 INFO    ] Launching Daemon at Sat Jun 13 14:04:19 IST 2026
[2026-06-13 14:04:19,549.549 INFO    ] ================================================
[2026-06-13 14:04:19,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:04:19
[2026-06-13 14:04:20,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:04:20,397.397 INFO    ] Initializing speech engine...
[2026-06-13 14:04:20,402.402 INFO    ] 2026-06-13 14:04:20
[2026-06-13 14:04:20,608.608 INFO    ] 2026-06-13 14:04:20
[2026-06-13 14:04:20,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:04:20,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:04:20,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:04:20,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:04:21,018.018 INFO    ] time= 13/06/2026 14:04:20
[2026-06-13 14:04:21,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:04:21,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:04:21,130.130 INFO    ] No existing commands found in stream
[2026-06-13 14:04:26,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:26,142.142 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 14:04:26,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:04:26,856.856 INFO    ] Checking for system updates...
[2026-06-13 14:04:26,878.878 INFO    ] 200
[2026-06-13 14:04:26,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:26,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:04:26,912.912 INFO    ] No update needed
[2026-06-13 14:04:26,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 14:04:26,933.933 INFO    ] 200
[2026-06-13 14:04:26,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:26,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:04:27,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:04:27,002.002 INFO    ] No camera update needed
[2026-06-13 14:04:27,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:04:27,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:04:27,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:04:27,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:04:29,051.051 INFO    ] ================================================
[2026-06-13 14:04:29,067.067 INFO    ] Launching Daemon at Sat Jun 13 14:04:29 IST 2026
[2026-06-13 14:04:29,078.078 INFO    ] ================================================
[2026-06-13 14:04:29,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:04:29
[2026-06-13 14:04:29,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:04:29,888.888 INFO    ] Initializing speech engine...
[2026-06-13 14:04:29,901.901 INFO    ] 2026-06-13 14:04:29
[2026-06-13 14:04:30,120.120 INFO    ] 2026-06-13 14:04:30
[2026-06-13 14:04:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:04:30,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:04:30,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:04:30,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:04:30,559.559 INFO    ] time= 13/06/2026 14:04:30
[2026-06-13 14:04:30,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:04:30,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:04:30,675.675 INFO    ] No existing commands found in stream
[2026-06-13 14:04:35,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:35,689.689 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 14:04:39,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:04:39,857.857 INFO    ] Checking for system updates...
[2026-06-13 14:04:39,878.878 INFO    ] 200
[2026-06-13 14:04:39,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:39,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:04:39,911.911 INFO    ] No update needed
[2026-06-13 14:04:39,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 14:04:39,932.932 INFO    ] 200
[2026-06-13 14:04:39,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:39,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:04:40,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:04:40,002.002 INFO    ] No camera update needed
[2026-06-13 14:04:40,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:04:40,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:04:40,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:04:40,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:04:42,050.050 INFO    ] ================================================
[2026-06-13 14:04:42,065.065 INFO    ] Launching Daemon at Sat Jun 13 14:04:42 IST 2026
[2026-06-13 14:04:42,077.077 INFO    ] ================================================
[2026-06-13 14:04:42,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:04:42
[2026-06-13 14:04:42,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:04:42,914.914 INFO    ] Initializing speech engine...
[2026-06-13 14:04:42,927.927 INFO    ] 2026-06-13 14:04:42
[2026-06-13 14:04:43,139.139 INFO    ] 2026-06-13 14:04:43
[2026-06-13 14:04:43,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:04:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:04:43,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:04:43,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:04:43,539.539 INFO    ] time= 13/06/2026 14:04:43
[2026-06-13 14:04:43,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:04:43,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:04:43,656.656 INFO    ] No existing commands found in stream
[2026-06-13 14:04:48,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:48,674.674 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 14:04:50,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:04:50,413.413 INFO    ] Checking for system updates...
[2026-06-13 14:04:50,434.434 INFO    ] 200
[2026-06-13 14:04:50,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:50,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:04:50,468.468 INFO    ] No update needed
[2026-06-13 14:04:50,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 14:04:50,489.489 INFO    ] 200
[2026-06-13 14:04:50,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:04:50,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:04:50,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:04:50,558.558 INFO    ] No camera update needed
[2026-06-13 14:04:50,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:04:50,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:04:50,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:04:50,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:04:52,607.607 INFO    ] ================================================
[2026-06-13 14:04:52,623.623 INFO    ] Launching Daemon at Sat Jun 13 14:04:52 IST 2026
[2026-06-13 14:04:52,634.634 INFO    ] ================================================
[2026-06-13 14:04:52,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:04:52
[2026-06-13 14:04:53,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:04:53,666.666 INFO    ] Initializing speech engine...
[2026-06-13 14:04:53,673.673 INFO    ] 2026-06-13 14:04:53
[2026-06-13 14:04:53,920.920 INFO    ] 2026-06-13 14:04:53
[2026-06-13 14:04:53,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:04:54,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:04:54,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:04:54,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:04:54,385.385 INFO    ] time= 13/06/2026 14:04:54
[2026-06-13 14:04:54,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:04:54,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:04:54,627.627 INFO    ] No existing commands found in stream
[2026-06-13 14:04:59,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:04:59,644.644 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 14:05:01,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:05:01,919.919 INFO    ] Checking for system updates...
[2026-06-13 14:05:01,946.946 INFO    ] 200
[2026-06-13 14:05:01,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:01,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:01,996.996 INFO    ] No update needed
[2026-06-13 14:05:01,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:02,032.032 INFO    ] 200
[2026-06-13 14:05:02,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:02,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:02,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:02,094.094 INFO    ] No camera update needed
[2026-06-13 14:05:02,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:02,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:02,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:02,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:04,147.147 INFO    ] ================================================
[2026-06-13 14:05:04,162.162 INFO    ] Launching Daemon at Sat Jun 13 14:05:04 IST 2026
[2026-06-13 14:05:04,174.174 INFO    ] ================================================
[2026-06-13 14:05:04,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:04
[2026-06-13 14:05:04,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:05,036.036 INFO    ] Initializing speech engine...
[2026-06-13 14:05:05,045.045 INFO    ] 2026-06-13 14:05:05
[2026-06-13 14:05:05,257.257 INFO    ] 2026-06-13 14:05:05
[2026-06-13 14:05:05,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:05,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:05,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:05,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:05,669.669 INFO    ] time= 13/06/2026 14:05:05
[2026-06-13 14:05:05,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:05,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:05,795.795 INFO    ] No existing commands found in stream
[2026-06-13 14:05:10,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:05:10,808.808 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 14:05:11,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:05:11,313.313 INFO    ] Checking for system updates...
[2026-06-13 14:05:11,334.334 INFO    ] 200
[2026-06-13 14:05:11,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:11,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:11,367.367 INFO    ] No update needed
[2026-06-13 14:05:11,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:11,390.390 INFO    ] 200
[2026-06-13 14:05:11,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:11,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:11,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:11,454.454 INFO    ] No camera update needed
[2026-06-13 14:05:11,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:11,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:11,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:11,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:13,501.501 INFO    ] ================================================
[2026-06-13 14:05:13,516.516 INFO    ] Launching Daemon at Sat Jun 13 14:05:13 IST 2026
[2026-06-13 14:05:13,527.527 INFO    ] ================================================
[2026-06-13 14:05:13,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:13
[2026-06-13 14:05:14,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:14,393.393 INFO    ] Initializing speech engine...
[2026-06-13 14:05:14,398.398 INFO    ] 2026-06-13 14:05:14
[2026-06-13 14:05:14,606.606 INFO    ] 2026-06-13 14:05:14
[2026-06-13 14:05:14,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:14,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:14,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:14,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:15,020.020 INFO    ] time= 13/06/2026 14:05:14
[2026-06-13 14:05:15,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:15,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:15,128.128 INFO    ] No existing commands found in stream
[2026-06-13 14:05:20,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:05:20,141.141 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 14:05:20,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:05:20,562.562 INFO    ] Checking for system updates...
[2026-06-13 14:05:20,583.583 INFO    ] 200
[2026-06-13 14:05:20,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:20,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:20,617.617 INFO    ] No update needed
[2026-06-13 14:05:20,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:20,638.638 INFO    ] 200
[2026-06-13 14:05:20,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:20,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:20,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:20,701.701 INFO    ] No camera update needed
[2026-06-13 14:05:20,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:20,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:20,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:20,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:22,750.750 INFO    ] ================================================
[2026-06-13 14:05:22,766.766 INFO    ] Launching Daemon at Sat Jun 13 14:05:22 IST 2026
[2026-06-13 14:05:22,777.777 INFO    ] ================================================
[2026-06-13 14:05:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:23
[2026-06-13 14:05:23,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:23,574.574 INFO    ] Initializing speech engine...
[2026-06-13 14:05:23,579.579 INFO    ] 2026-06-13 14:05:23
[2026-06-13 14:05:23,782.782 INFO    ] 2026-06-13 14:05:23
[2026-06-13 14:05:23,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:23,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:24,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:24,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:24,091.091 INFO    ] time= 13/06/2026 14:05:24
[2026-06-13 14:05:24,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:24,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:24,219.219 INFO    ] No existing commands found in stream
[2026-06-13 14:05:29,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:05:29,239.239 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 14:05:30,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:05:30,863.863 INFO    ] Checking for system updates...
[2026-06-13 14:05:30,884.884 INFO    ] 200
[2026-06-13 14:05:30,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:30,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:30,917.917 INFO    ] No update needed
[2026-06-13 14:05:30,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:30,938.938 INFO    ] 200
[2026-06-13 14:05:30,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:30,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:31,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:05:31,006.006 INFO    ] No camera update needed
[2026-06-13 14:05:31,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:31,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:31,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:31,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:33,040.040 INFO    ] ================================================
[2026-06-13 14:05:33,049.049 INFO    ] Launching Daemon at Sat Jun 13 14:05:33 IST 2026
[2026-06-13 14:05:33,056.056 INFO    ] ================================================
[2026-06-13 14:05:33,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:33
[2026-06-13 14:05:33,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:33,871.871 INFO    ] Initializing speech engine...
[2026-06-13 14:05:33,877.877 INFO    ] 2026-06-13 14:05:33
[2026-06-13 14:05:34,081.081 INFO    ] 2026-06-13 14:05:34
[2026-06-13 14:05:34,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:34,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:34,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:34,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:34,499.499 INFO    ] time= 13/06/2026 14:05:34
[2026-06-13 14:05:34,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:34,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:34,595.595 INFO    ] No existing commands found in stream
[2026-06-13 14:05:39,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:05:39,607.607 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 14:05:42,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:05:42,714.714 INFO    ] Checking for system updates...
[2026-06-13 14:05:42,735.735 INFO    ] 200
[2026-06-13 14:05:42,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:42,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:05:42,771.771 INFO    ] No update needed
[2026-06-13 14:05:42,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:42,791.791 INFO    ] 200
[2026-06-13 14:05:42,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:42,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:42,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:05:42,854.854 INFO    ] No camera update needed
[2026-06-13 14:05:42,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:42,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:42,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:42,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:44,910.910 INFO    ] ================================================
[2026-06-13 14:05:44,925.925 INFO    ] Launching Daemon at Sat Jun 13 14:05:44 IST 2026
[2026-06-13 14:05:44,936.936 INFO    ] ================================================
[2026-06-13 14:05:45,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:45
[2026-06-13 14:05:45,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:45,790.790 INFO    ] Initializing speech engine...
[2026-06-13 14:05:45,795.795 INFO    ] 2026-06-13 14:05:45
[2026-06-13 14:05:46,005.005 INFO    ] 2026-06-13 14:05:45
[2026-06-13 14:05:46,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:46,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:46,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:46,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:46,427.427 INFO    ] time= 13/06/2026 14:05:46
[2026-06-13 14:05:46,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:46,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:46,540.540 INFO    ] No existing commands found in stream
[2026-06-13 14:05:51,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:05:51,558.558 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 14:05:52,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:05:52,982.982 INFO    ] Checking for system updates...
[2026-06-13 14:05:53,003.003 INFO    ] 200
[2026-06-13 14:05:53,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:53,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:05:53,039.039 INFO    ] No update needed
[2026-06-13 14:05:53,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 14:05:53,062.062 INFO    ] 200
[2026-06-13 14:05:53,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:05:53,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:05:53,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:05:53,127.127 INFO    ] No camera update needed
[2026-06-13 14:05:53,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:05:53,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:05:53,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:05:53,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:05:55,174.174 INFO    ] ================================================
[2026-06-13 14:05:55,191.191 INFO    ] Launching Daemon at Sat Jun 13 14:05:55 IST 2026
[2026-06-13 14:05:55,203.203 INFO    ] ================================================
[2026-06-13 14:05:55,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:05:55
[2026-06-13 14:05:55,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:05:56,076.076 INFO    ] Initializing speech engine...
[2026-06-13 14:05:56,082.082 INFO    ] 2026-06-13 14:05:56
[2026-06-13 14:05:56,292.292 INFO    ] 2026-06-13 14:05:56
[2026-06-13 14:05:56,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:05:56,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:05:56,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:05:56,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:05:56,698.698 INFO    ] time= 13/06/2026 14:05:56
[2026-06-13 14:05:56,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:05:56,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:05:56,833.833 INFO    ] No existing commands found in stream
[2026-06-13 14:06:01,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:06:01,850.850 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 14:06:05,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:06:05,597.597 INFO    ] Checking for system updates...
[2026-06-13 14:06:05,618.618 INFO    ] 200
[2026-06-13 14:06:05,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:05,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:05,651.651 INFO    ] No update needed
[2026-06-13 14:06:05,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 14:06:05,672.672 INFO    ] 200
[2026-06-13 14:06:05,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:05,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:06:05,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:05,739.739 INFO    ] No camera update needed
[2026-06-13 14:06:05,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:06:05,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:06:05,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:06:05,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:06:07,787.787 INFO    ] ================================================
[2026-06-13 14:06:07,803.803 INFO    ] Launching Daemon at Sat Jun 13 14:06:07 IST 2026
[2026-06-13 14:06:07,814.814 INFO    ] ================================================
[2026-06-13 14:06:08,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:06:08
[2026-06-13 14:06:08,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:06:08,673.673 INFO    ] Initializing speech engine...
[2026-06-13 14:06:08,677.677 INFO    ] 2026-06-13 14:06:08
[2026-06-13 14:06:08,954.954 INFO    ] 2026-06-13 14:06:08
[2026-06-13 14:06:08,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:06:09,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:06:09,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:06:09,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:06:09,399.399 INFO    ] time= 13/06/2026 14:06:09
[2026-06-13 14:06:09,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:06:09,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:06:09,583.583 INFO    ] No existing commands found in stream
[2026-06-13 14:06:11,836.836 INFO    ] Received new command: ID=1781339771539-0
[2026-06-13 14:06:11,849.849 INFO    ] process_and_cleanup_command: msg_id=1781339771539-0
[2026-06-13 14:06:11,870.870 INFO    ] is_command_expired: timestamp=2026-06-13T08:36:11.219Z, expiry=30s
[2026-06-13 14:06:11,960.960 INFO    ] Command removed from stream: 1781339771539-0. returning for processing...
[2026-06-13 14:06:11,963.963 INFO    ] ***** get_valid_command
[2026-06-13 14:06:11,966.966 INFO    ] {'data': '{"request_id":"start-order-1781339771219-bkdouzwtx","orderId":"TM08202203260613140523753","is_vending":false}', 'command': 'start-order', 'timeout': '10', 'timestamp': '2026-06-13T08:36:11.219Z', 'source': 'webapp'}
[2026-06-13 14:06:11,969.969 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613140523753', 'request_id': 'start-order-1781339771219-bkdouzwtx', 'is_vending': False}
[2026-06-13 14:06:11,972.972 INFO    ] Handling start order...
[2026-06-13 14:06:11,974.974 INFO    ] handle_start_order_command
[2026-06-13 14:06:11,981.981 INFO    ] _send_start_order_success: request_id=start-order-1781339771219-bkdouzwtx, order_id=TM08202203260613140523753
[2026-06-13 14:06:11,984.984 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 14:06:12,042.042 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781339771995-0
[2026-06-13 14:06:12,043.043 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 14:06:12,045.045 INFO    ] Checking for system updates...
[2026-06-13 14:06:12,069.069 INFO    ] 200
[2026-06-13 14:06:12,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:12,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:12,103.103 INFO    ] No update needed
[2026-06-13 14:06:12,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 14:06:12,124.124 INFO    ] 200
[2026-06-13 14:06:12,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:12,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:06:12,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:12,288.288 INFO    ] No camera update needed
[2026-06-13 14:06:12,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:06:12,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:06:12,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:06:12,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:06:14,335.335 INFO    ] ================================================
[2026-06-13 14:06:14,351.351 INFO    ] Launching Daemon at Sat Jun 13 14:06:14 IST 2026
[2026-06-13 14:06:14,363.363 INFO    ] ================================================
[2026-06-13 14:06:14,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:06:14
[2026-06-13 14:06:15,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:06:15,140.140 INFO    ] Initializing speech engine...
[2026-06-13 14:06:15,145.145 INFO    ] 2026-06-13 14:06:15
[2026-06-13 14:06:15,376.376 INFO    ] 2026-06-13 14:06:15
[2026-06-13 14:06:15,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:06:15,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:06:15,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:06:15,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:06:15,782.782 INFO    ] time= 13/06/2026 14:06:15
[2026-06-13 14:06:15,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:06:15,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:06:15,938.938 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 14:06:15,941.941 INFO    ] Checking historical command: ID=1781339771995-0
[2026-06-13 14:06:15,969.969 INFO    ] process_and_cleanup_command: msg_id=1781339771995-0
[2026-06-13 14:06:15,971.971 INFO    ] is_command_expired: timestamp=2026-06-13T08:36:11.982811Z, expiry=30s
[2026-06-13 14:06:16,089.089 INFO    ] Command removed from stream: 1781339771995-0. returning for processing...
[2026-06-13 14:06:16,092.092 INFO    ] ***** get_valid_command
[2026-06-13 14:06:16,095.095 INFO    ] {'metadata_order_id': 'TM08202203260613140523753', 'status': 'success', 'timestamp': '2026-06-13T08:36:11.982811Z', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781339771219-bkdouzwtx', 'imei': 'TM08202203'}
[2026-06-13 14:06:16,099.099 INFO    ] Checking historical command: ID=1781339774081-0
[2026-06-13 14:06:16,103.103 INFO    ] process_and_cleanup_command: msg_id=1781339774081-0
[2026-06-13 14:06:16,107.107 INFO    ] is_command_expired: timestamp=2026-06-13T08:36:13.859Z, expiry=30s
[2026-06-13 14:06:16,153.153 INFO    ] Command removed from stream: 1781339774081-0. returning for processing...
[2026-06-13 14:06:16,156.156 INFO    ] ***** get_valid_command
[2026-06-13 14:06:16,159.159 INFO    ] {'timeout': '60', 'source': 'webapp', 'timestamp': '2026-06-13T08:36:13.859Z', 'data': '{"request_id":"process-order-1781339773859-vkolenwoe","orderId":"TM08202203260613140523753","is_vending":false,"accessCode":"60163631"}', 'command': 'process-order'}
[2026-06-13 14:06:16,162.162 INFO    ] ***** Parsed command data: {'accessCode': '60163631', 'orderId': 'TM08202203260613140523753', 'is_vending': False, 'request_id': 'process-order-1781339773859-vkolenwoe'}
[2026-06-13 14:06:16,165.165 INFO    ] Handling process order...
[2026-06-13 14:06:16,169.169 INFO    ] Processing process-order command...
[2026-06-13 14:06:16,173.173 INFO    ] 🔍 Lock file Order ID: TM08202203260613140523753, TS: 2026-06-13 14:06:11
[2026-06-13 14:06:16,181.181 INFO    ] ✅ Order lock valid for TM08202203260613140523753
[2026-06-13 14:06:16,184.184 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 14:06:16,187.187 INFO    ] processing access code 60163631 for order TM08202203260613140523753
[2026-06-13 14:06:16,191.191 INFO    ] 🔍 Lock file Order ID: TM08202203260613140523753, TS: 2026-06-13 14:06:11
[2026-06-13 14:06:16,194.194 INFO    ] ✅ Order lock valid for TM08202203260613140523753
[2026-06-13 14:06:16,197.197 INFO    ] 2026-06-13 14:06:16
[2026-06-13 14:06:16,224.224 INFO    ] 200
[2026-06-13 14:06:16,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:16,232.232 INFO    ] 60163631
[2026-06-13 14:06:16,237.237 INFO    ] 2026-06-13 14:06:16
[2026-06-13 14:06:16,241.241 INFO    ] session id :512941976
[2026-06-13 14:06:16,245.245 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=60163631&imei=TM08202203&session_id=512941976
[2026-06-13 14:06:16,822.822 INFO    ] 200
[2026-06-13 14:06:16,828.828 INFO    ] {"data": {"mobile": "8496947689", "order_id": "TM08202203260613140523753", "bill_amount": "20.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "60163631", "invoice_bill": "20.0"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 14:06:16,835.835 INFO    ] 20
[2026-06-13 14:06:16,859.859 INFO    ] TM08202203260613140523753
[2026-06-13 14:06:16,913.913 INFO    ] 8496947689
[2026-06-13 14:06:16,932.932 INFO    ] 2026-06-13 14:06:16
[2026-06-13 14:06:16,941.941 INFO    ] Door Opening for user mobile ending with  seven six eight nine 
[2026-06-13 14:06:16,947.947 INFO    ] Door Opening for user mobile ending with  seven six eight nine 
[2026-06-13 14:06:16,974.974 INFO    ] e8a37d30c95202c1155b2671578f4a62
[2026-06-13 14:06:16,981.981 INFO    ] 2026-06-13 14:06:16
[2026-06-13 14:06:16,986.986 INFO    ] creating audio file
[2026-06-13 14:06:17,875.875 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 14:06:18,975.975 INFO    ] gTTS API call completed successfully
[2026-06-13 14:06:19,879.879 INFO    ] 2026-06-13 14:06:19
[2026-06-13 14:06:19,880.880 INFO    ] playing audio file
[2026-06-13 14:06:19,890.890 INFO    ] 2026-06-13 14:06:19
[2026-06-13 14:06:19,892.892 INFO    ] 2026-06-13 14:06:19
[2026-06-13 14:06:19,894.894 INFO    ] publish_status: order_id=TM08202203260613140523753
[2026-06-13 14:06:19,896.896 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613140523753
[2026-06-13 14:06:19,974.974 INFO    ] [publish_status] Message added to stream with ID: 1781339779928-0
[2026-06-13 14:06:19,975.975 INFO    ] Published to order:TM08202203260613140523753: {'order_id': 'TM08202203260613140523753', 'server_status': 'order-started', 'server_response': '{"status": true, "msg": "Order Data", "data": {"access_code": "60163631", "bill_amount": "20.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_id": "", "offer_desc": "", "unit_price": 20, "skuid": "185993", "tray_id": "43", "sku_total": 20, "door_id": "2", "qty": 1, "mrp": "20"}], "invoice_bill": "20.0", "mobile": "8496947689", "order_id": "TM08202203260613140523753"}, "rstatus": true}', 'timestamp': '2026-06-13T08:36:19.893626Z'} (ID: 1781339779928-0)
[2026-06-13 14:06:20,285.285 INFO    ] {'order_id': 'TM08202203260613140523753', 'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'access_code': '60163631', 'bill_amount': '20.0', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_id': '', 'offer_desc': '', 'unit_price': 20, 'skuid': '185993', 'tray_id': '43', 'sku_total': 20, 'door_id': '2', 'qty': 1, 'mrp': '20'}], 'invoice_bill': '20.0', 'mobile': '8496947689', 'order_id': 'TM08202203260613140523753'}, 'rstatus': True}}
[2026-06-13 14:06:20,286.286 INFO    ] 200
[2026-06-13 14:06:20,287.287 INFO    ] {"data":{"order_id":"TM08202203260613140523753","server_status":"order-started","server_response":{"status":true,"msg":"Order Data","data":{"access_code":"60163631","bill_amount":"20.0","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","offer_id":"","offer_desc":"","unit_price":20,"skuid":"185993","tray_id":"43","sku_total":20,"door_id":"2","qty":1,"mrp":"20"}],"invoice_bill":"20.0","mobile":"8496947689","order_id":"TM08202203260613140523753"},"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 14:06:20,289.289 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613140523753', 'server_status': 'order-started', 'server_response': {'status': True, 'data': {'access_code': '60163631', 'bill_amount': '20.0', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_desc': '', 'unit_price': 20, 'offer_id': '', 'tray_id': '43', 'sku_total': 20, 'skuid': '185993', 'mrp': '20', 'door_id': '2', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'invoice_bill': '20.0', 'mobile': '8496947689', 'order_id': 'TM08202203260613140523753'}, 'msg': 'Order Data', 'rstatus': True}}}
[2026-06-13 14:06:20,291.291 INFO    ] 2026-06-13 14:06:20
[2026-06-13 14:06:20,317.317 INFO    ] 200
[2026-06-13 14:06:20,319.319 INFO    ] True
[2026-06-13 14:06:20,412.412 INFO    ] 200
[2026-06-13 14:06:20,414.414 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 14:06:20,418.418 INFO    ] {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': False}
[2026-06-13 14:06:20,421.421 INFO    ] *** process_order ***
[2026-06-13 14:06:21,591.591 INFO    ] 200
[2026-06-13 14:06:21,592.592 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 14:06:21,594.594 INFO    ] {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0}
[2026-06-13 14:06:21,595.595 INFO    ] *** process_order ***
[2026-06-13 14:06:21,596.596 INFO    ] publish_status: order_id=TM08202203260613140523753
[2026-06-13 14:06:21,598.598 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613140523753
[2026-06-13 14:06:21,674.674 INFO    ] [publish_status] Message added to stream with ID: 1781339781628-0
[2026-06-13 14:06:21,675.675 INFO    ] Published to order:TM08202203260613140523753: {'order_id': 'TM08202203260613140523753', 'server_status': 'doorOpened', 'server_response': '{"voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "rstatus": true}'} (ID: 1781339781628-0)
[2026-06-13 14:06:22,717.717 INFO    ] 2026-06-13 14:06:22
[2026-06-13 14:06:22,721.721 INFO    ] publish_status: order_id=TM08202203260613140523753
[2026-06-13 14:06:22,723.723 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613140523753
[2026-06-13 14:06:22,792.792 INFO    ] [publish_status] Message added to stream with ID: 1781339782745-0
[2026-06-13 14:06:22,795.795 INFO    ] Published to order:TM08202203260613140523753: {'order_id': 'TM08202203260613140523753', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True", "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  "}, "delay": 0}', 'timestamp': '2026-06-13T08:36:22.719364Z'} (ID: 1781339782745-0)
[2026-06-13 14:06:22,899.899 INFO    ] {'order_id': 'TM08202203260613140523753', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0}}
[2026-06-13 14:06:22,901.901 INFO    ] 200
[2026-06-13 14:06:22,902.902 INFO    ] {"data":{"order_id":"TM08202203260613140523753","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"status":"true","rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  "},"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 14:06:22,904.904 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613140523753', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'rstatus': True}}}
[2026-06-13 14:06:22,906.906 INFO    ] 2026-06-13 14:06:22
[2026-06-13 14:06:22,907.907 INFO    ] None
[2026-06-13 14:06:22,908.908 INFO    ] Opening Door now
[2026-06-13 14:06:22,910.910 INFO    ] Opening Door now
[2026-06-13 14:06:22,911.911 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 14:06:22,912.912 INFO    ] 2026-06-13 14:06:22
[2026-06-13 14:06:22,914.914 INFO    ] playing audio file
[2026-06-13 14:06:22,924.924 INFO    ] 2026-06-13 14:06:22
[2026-06-13 14:06:22,926.926 INFO    ] 2026-06-13 14:06:22
[2026-06-13 14:06:25,989.989 INFO    ] 200
[2026-06-13 14:06:25,992.992 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 14:06:25,995.995 INFO    ] {'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}
[2026-06-13 14:06:29,066.066 INFO    ] 200
[2026-06-13 14:06:29,069.069 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 14:06:29,071.071 INFO    ] {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}
[2026-06-13 14:06:32,112.112 INFO    ] 200
[2026-06-13 14:06:32,115.115 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 14:06:32,117.117 INFO    ] Please close door 2
[2026-06-13 14:06:32,119.119 INFO    ] Please close door 2
[2026-06-13 14:06:32,121.121 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 14:06:32,123.123 INFO    ] 2026-06-13 14:06:32
[2026-06-13 14:06:32,125.125 INFO    ] playing audio file
[2026-06-13 14:06:32,141.141 INFO    ] 2026-06-13 14:06:32
[2026-06-13 14:06:32,143.143 INFO    ] publish_status: order_id=TM08202203260613140523753
[2026-06-13 14:06:32,145.145 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613140523753
[2026-06-13 14:06:32,229.229 INFO    ] [publish_status] Message added to stream with ID: 1781339792183-0
[2026-06-13 14:06:32,231.231 INFO    ] Published to order:TM08202203260613140523753: {'order_id': 'TM08202203260613140523753', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "status": "False", "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}], "Header": "Pick the below items from the door"}, "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"}, "rstatus": false}', 'timestamp': '2026-06-13T08:36:32.142216Z'} (ID: 1781339792183-0)
[2026-06-13 14:06:32,563.563 INFO    ] {'order_id': 'TM08202203260613140523753', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}}
[2026-06-13 14:06:32,565.565 INFO    ] 200
[2026-06-13 14:06:32,567.567 INFO    ] {"data":{"order_id":"TM08202203260613140523753","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"false","SectionSKU":{"skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}],"Header":"Pick the below items from the door"},"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"},"rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 14:06:32,569.569 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613140523753', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'status': 'false', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}}}
[2026-06-13 14:06:32,571.571 INFO    ] {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}
[2026-06-13 14:06:35,632.632 INFO    ] 200
[2026-06-13 14:06:35,635.635 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 14:06:35,638.638 INFO    ] {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, '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'}, 'rstatus': False}
[2026-06-13 14:06:38,676.676 INFO    ] 200
[2026-06-13 14:06:38,677.677 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 14:06:38,679.679 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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}
[2026-06-13 14:06:38,680.680 INFO    ] 2026-06-13 14:06:38
[2026-06-13 14:06:38,682.682 INFO    ] Order Completed 
[2026-06-13 14:06:38,684.684 INFO    ] Order Completed 
[2026-06-13 14:06:38,685.685 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 14:06:38,687.687 INFO    ] 2026-06-13 14:06:38
[2026-06-13 14:06:38,692.692 INFO    ] playing audio file
[2026-06-13 14:06:38,703.703 INFO    ] 2026-06-13 14:06:38
[2026-06-13 14:06:38,705.705 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, '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}
[2026-06-13 14:06:38,708.708 INFO    ] 2026-06-13 14:06:38
[2026-06-13 14:06:39,406.406 INFO    ] 200
[2026-06-13 14:06:39,409.409 INFO    ] {"res": "True", "orderId": "TM08202203260613140523753", "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 50.0}
[2026-06-13 14:06:39,413.413 INFO    ] {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'tray_id': '40', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 20.0, 'door_id': '', 'qty': 1, 'mrp': '20'}], 'logic': 'WBL', 'orderId': 'TM08202203260613140523753', 'total_amount': 50.0, 'res': 'True', 'rstatus': True}
[2026-06-13 14:06:39,416.416 INFO    ] {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'tray_id': '40', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 20.0, 'door_id': '', 'qty': 1, 'mrp': '20'}], 'logic': 'WBL', 'orderId': 'TM08202203260613140523753', 'total_amount': 50.0, 'res': 'True', 'rstatus': True}
[2026-06-13 14:06:39,419.419 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,422.422 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,424.424 INFO    ] 20
[2026-06-13 14:06:39,425.425 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,427.427 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,428.428 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 50
[2026-06-13 14:06:39,429.429 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 50
[2026-06-13 14:06:39,432.432 INFO    ] 07fe7d7cb7781a3ff0e6680b250df58a
[2026-06-13 14:06:39,433.433 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,435.435 INFO    ] playing audio file
[2026-06-13 14:06:39,445.445 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,447.447 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:39,450.450 INFO    ] publish_status: order_id=TM08202203260613140523753
[2026-06-13 14:06:39,452.452 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613140523753
[2026-06-13 14:06:39,542.542 INFO    ] [publish_status] Message added to stream with ID: 1781339799496-0
[2026-06-13 14:06:39,544.544 INFO    ] Published to order:TM08202203260613140523753: {'order_id': 'TM08202203260613140523753', 'server_status': 'invoiceOrder', 'server_response': '{"anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "skuid": "186084", "tray_id": "40", "sku_total": 30.0, "door_id": "", "qty": 1, "mrp": "30"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "skuid": "185993", "tray_id": "43", "sku_total": 20.0, "door_id": "", "qty": 1, "mrp": "20"}], "logic": "WBL", "orderId": "TM08202203260613140523753", "total_amount": 50.0, "res": "True", "rstatus": true}', 'timestamp': '2026-06-13T08:36:39.448678Z'} (ID: 1781339799496-0)
[2026-06-13 14:06:39,860.860 INFO    ] {'order_id': 'TM08202203260613140523753', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'tray_id': '40', 'sku_total': 30.0, 'door_id': '', 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 20.0, 'door_id': '', 'qty': 1, 'mrp': '20'}], 'logic': 'WBL', 'orderId': 'TM08202203260613140523753', 'total_amount': 50.0, 'res': 'True', 'rstatus': True}}
[2026-06-13 14:06:39,862.862 INFO    ] 200
[2026-06-13 14:06:39,864.864 INFO    ] {"data":{"order_id":"TM08202203260613140523753","server_status":"invoiceOrder","server_response":{"anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","unit_price":"30","skuid":"186084","tray_id":"40","sku_total":30,"door_id":"","qty":1,"mrp":"30"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","unit_price":"20","skuid":"185993","tray_id":"43","sku_total":20,"door_id":"","qty":1,"mrp":"20"}],"logic":"WBL","orderId":"TM08202203260613140523753","total_amount":50,"res":"true","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 14:06:39,865.865 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613140523753', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202203260613140523753', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'tray_id': '40', 'sku_total': 30, 'door_id': '', 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 20, 'door_id': '', 'qty': 1, 'mrp': '20'}], 'anomaly': 0, 'logic': 'WBL', 'total_amount': 50, 'res': 'true', 'rstatus': True}}}
[2026-06-13 14:06:39,867.867 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613140523753', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202203260613140523753', 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'skuid': '186084', 'tray_id': '40', 'sku_total': 30, 'door_id': '', 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 20, 'door_id': '', 'qty': 1, 'mrp': '20'}], 'anomaly': 0, 'logic': 'WBL', 'total_amount': 50, 'res': 'true', 'rstatus': True}}}
[2026-06-13 14:06:39,869.869 INFO    ] 2026-06-13 14:06:39
[2026-06-13 14:06:51,865.865 INFO    ] 200
[2026-06-13 14:06:51,867.867 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753", "TM08202203260613140523753"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 14:06:51,871.871 INFO    ] 2026-06-13 14:06:51
[2026-06-13 14:06:51,966.966 INFO    ] 200
[2026-06-13 14:06:51,967.967 INFO    ] True
[2026-06-13 14:06:51,968.968 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613140523753
[2026-06-13 14:06:51,970.970 INFO    ] start order file deleted
[2026-06-13 14:06:51,972.972 INFO    ] Checking for system updates...
[2026-06-13 14:06:51,993.993 INFO    ] 200
[2026-06-13 14:06:51,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:52,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:52,026.026 INFO    ] No update needed
[2026-06-13 14:06:52,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 14:06:52,047.047 INFO    ] 200
[2026-06-13 14:06:52,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:06:52,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:06:52,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:06:52,114.114 INFO    ] No camera update needed
[2026-06-13 14:06:52,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:06:52,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:06:52,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:06:52,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:06:54,162.162 INFO    ] ================================================
[2026-06-13 14:06:54,178.178 INFO    ] Launching Daemon at Sat Jun 13 14:06:54 IST 2026
[2026-06-13 14:06:54,189.189 INFO    ] ================================================
[2026-06-13 14:06:55,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:06:54
[2026-06-13 14:06:56,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:06:56,356.356 INFO    ] Initializing speech engine...
[2026-06-13 14:06:56,364.364 INFO    ] 2026-06-13 14:06:56
[2026-06-13 14:06:56,569.569 INFO    ] 2026-06-13 14:06:56
[2026-06-13 14:06:56,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:06:56,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:06:56,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:06:56,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:06:56,894.894 INFO    ] time= 13/06/2026 14:06:56
[2026-06-13 14:06:56,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:06:56,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:06:57,042.042 INFO    ] No existing commands found in stream
[2026-06-13 14:07:02,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:07:02,061.061 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 14:07:04,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:07:04,956.956 INFO    ] Checking for system updates...
[2026-06-13 14:07:05,006.006 INFO    ] 200
[2026-06-13 14:07:05,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:05,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:07:05,181.181 INFO    ] No update needed
[2026-06-13 14:07:05,184.184 INFO    ] Checking for camera pi updates...
[2026-06-13 14:07:05,224.224 INFO    ] 200
[2026-06-13 14:07:05,227.227 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:05,231.231 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 14:07:05,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:07:05,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:07:05,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:07:05,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:07:07,275.275 INFO    ] ================================================
[2026-06-13 14:07:07,284.284 INFO    ] Launching Daemon at Sat Jun 13 14:07:07 IST 2026
[2026-06-13 14:07:07,290.290 INFO    ] ================================================
[2026-06-13 14:07:07,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:07:07
[2026-06-13 14:07:07,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:07:08,052.052 INFO    ] Initializing speech engine...
[2026-06-13 14:07:08,057.057 INFO    ] 2026-06-13 14:07:08
[2026-06-13 14:07:08,276.276 INFO    ] 2026-06-13 14:07:08
[2026-06-13 14:07:08,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:07:08,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:07:08,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:07:08,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:07:08,728.728 INFO    ] time= 13/06/2026 14:07:08
[2026-06-13 14:07:08,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:07:08,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:07:08,854.854 INFO    ] No existing commands found in stream
[2026-06-13 14:07:13,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:07:13,866.866 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 14:07:14,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:07:14,939.939 INFO    ] Checking for system updates...
[2026-06-13 14:07:14,960.960 INFO    ] 200
[2026-06-13 14:07:14,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:14,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:07:14,993.993 INFO    ] No update needed
[2026-06-13 14:07:14,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 14:07:15,013.013 INFO    ] 200
[2026-06-13 14:07:15,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:15,040.040 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:07:15,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:07:15,077.077 INFO    ] No camera update needed
[2026-06-13 14:07:15,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:07:15,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:07:15,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:07:15,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:07:17,126.126 INFO    ] ================================================
[2026-06-13 14:07:17,141.141 INFO    ] Launching Daemon at Sat Jun 13 14:07:17 IST 2026
[2026-06-13 14:07:17,152.152 INFO    ] ================================================
[2026-06-13 14:07:17,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:07:17
[2026-06-13 14:07:17,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:07:17,927.927 INFO    ] Initializing speech engine...
[2026-06-13 14:07:17,932.932 INFO    ] 2026-06-13 14:07:17
[2026-06-13 14:07:18,134.134 INFO    ] 2026-06-13 14:07:18
[2026-06-13 14:07:18,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:07:18,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:07:18,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:07:18,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:07:18,502.502 INFO    ] time= 13/06/2026 14:07:18
[2026-06-13 14:07:18,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:07:18,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:07:18,708.708 INFO    ] No existing commands found in stream
[2026-06-13 14:07:23,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:07:23,731.731 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 14:07:27,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:07:27,408.408 INFO    ] Checking for system updates...
[2026-06-13 14:07:27,430.430 INFO    ] 200
[2026-06-13 14:07:27,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:27,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:07:27,466.466 INFO    ] No update needed
[2026-06-13 14:07:27,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 14:07:27,486.486 INFO    ] 200
[2026-06-13 14:07:27,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:27,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:07:27,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:07:27,554.554 INFO    ] No camera update needed
[2026-06-13 14:07:27,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:07:27,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:07:27,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:07:27,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:07:29,602.602 INFO    ] ================================================
[2026-06-13 14:07:29,617.617 INFO    ] Launching Daemon at Sat Jun 13 14:07:29 IST 2026
[2026-06-13 14:07:29,629.629 INFO    ] ================================================
[2026-06-13 14:07:30,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:07:30
[2026-06-13 14:07:30,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:07:30,527.527 INFO    ] Initializing speech engine...
[2026-06-13 14:07:30,533.533 INFO    ] 2026-06-13 14:07:30
[2026-06-13 14:07:30,747.747 INFO    ] 2026-06-13 14:07:30
[2026-06-13 14:07:30,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:07:30,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:07:30,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:07:31,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:07:31,180.180 INFO    ] time= 13/06/2026 14:07:31
[2026-06-13 14:07:31,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:07:31,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:07:31,277.277 INFO    ] No existing commands found in stream
[2026-06-13 14:07:36,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:07:36,305.305 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 14:07:39,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:07:39,573.573 INFO    ] Checking for system updates...
[2026-06-13 14:07:39,594.594 INFO    ] 200
[2026-06-13 14:07:39,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:39,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:07:39,631.631 INFO    ] No update needed
[2026-06-13 14:07:39,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 14:07:39,652.652 INFO    ] 200
[2026-06-13 14:07:39,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:39,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:07:39,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:07:39,731.731 INFO    ] No camera update needed
[2026-06-13 14:07:39,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:07:39,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:07:39,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:07:39,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:07:41,780.780 INFO    ] ================================================
[2026-06-13 14:07:41,797.797 INFO    ] Launching Daemon at Sat Jun 13 14:07:41 IST 2026
[2026-06-13 14:07:41,809.809 INFO    ] ================================================
[2026-06-13 14:07:42,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:07:42
[2026-06-13 14:07:42,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:07:42,675.675 INFO    ] Initializing speech engine...
[2026-06-13 14:07:42,680.680 INFO    ] 2026-06-13 14:07:42
[2026-06-13 14:07:42,892.892 INFO    ] 2026-06-13 14:07:42
[2026-06-13 14:07:42,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:07:43,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:07:43,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:07:43,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:07:43,320.320 INFO    ] time= 13/06/2026 14:07:43
[2026-06-13 14:07:43,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:07:43,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:07:43,419.419 INFO    ] No existing commands found in stream
[2026-06-13 14:07:48,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:07:48,434.434 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 14:07:52,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:07:52,468.468 INFO    ] Checking for system updates...
[2026-06-13 14:07:52,493.493 INFO    ] 200
[2026-06-13 14:07:52,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:52,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:07:52,532.532 INFO    ] No update needed
[2026-06-13 14:07:52,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 14:07:52,556.556 INFO    ] 200
[2026-06-13 14:07:52,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:07:52,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:07:52,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:07:52,630.630 INFO    ] No camera update needed
[2026-06-13 14:07:52,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:07:52,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:07:52,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:07:52,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:07:54,668.668 INFO    ] ================================================
[2026-06-13 14:07:54,677.677 INFO    ] Launching Daemon at Sat Jun 13 14:07:54 IST 2026
[2026-06-13 14:07:54,684.684 INFO    ] ================================================
[2026-06-13 14:07:55,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:07:55
[2026-06-13 14:07:55,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:07:55,519.519 INFO    ] Initializing speech engine...
[2026-06-13 14:07:55,527.527 INFO    ] 2026-06-13 14:07:55
[2026-06-13 14:07:55,732.732 INFO    ] 2026-06-13 14:07:55
[2026-06-13 14:07:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:07:55,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:07:55,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:07:56,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:07:56,140.140 INFO    ] time= 13/06/2026 14:07:56
[2026-06-13 14:07:56,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:07:56,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:07:56,255.255 INFO    ] No existing commands found in stream
[2026-06-13 14:08:01,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:01,270.270 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 14:08:03,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:08:03,474.474 INFO    ] Checking for system updates...
[2026-06-13 14:08:03,496.496 INFO    ] 200
[2026-06-13 14:08:03,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:03,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:03,529.529 INFO    ] No update needed
[2026-06-13 14:08:03,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:03,550.550 INFO    ] 200
[2026-06-13 14:08:03,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:03,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:03,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:03,598.598 INFO    ] No camera update needed
[2026-06-13 14:08:03,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:03,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:03,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:03,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:05,645.645 INFO    ] ================================================
[2026-06-13 14:08:05,661.661 INFO    ] Launching Daemon at Sat Jun 13 14:08:05 IST 2026
[2026-06-13 14:08:05,667.667 INFO    ] ================================================
[2026-06-13 14:08:06,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:05
[2026-06-13 14:08:06,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:08:06,501.501 INFO    ] Initializing speech engine...
[2026-06-13 14:08:06,507.507 INFO    ] 2026-06-13 14:08:06
[2026-06-13 14:08:06,711.711 INFO    ] 2026-06-13 14:08:06
[2026-06-13 14:08:06,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:08:06,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:08:06,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:08:07,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:08:07,141.141 INFO    ] time= 13/06/2026 14:08:07
[2026-06-13 14:08:07,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:08:07,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:08:07,236.236 INFO    ] No existing commands found in stream
[2026-06-13 14:08:12,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:12,251.251 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 14:08:13,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:08:13,450.450 INFO    ] Checking for system updates...
[2026-06-13 14:08:13,471.471 INFO    ] 200
[2026-06-13 14:08:13,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:13,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:13,504.504 INFO    ] No update needed
[2026-06-13 14:08:13,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:13,527.527 INFO    ] 200
[2026-06-13 14:08:13,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:13,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:13,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:13,598.598 INFO    ] No camera update needed
[2026-06-13 14:08:13,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:13,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:13,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:13,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:15,638.638 INFO    ] ================================================
[2026-06-13 14:08:15,647.647 INFO    ] Launching Daemon at Sat Jun 13 14:08:15 IST 2026
[2026-06-13 14:08:15,653.653 INFO    ] ================================================
[2026-06-13 14:08:16,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:16
[2026-06-13 14:08:16,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:08:17,272.272 INFO    ] Initializing speech engine...
[2026-06-13 14:08:17,282.282 INFO    ] 2026-06-13 14:08:17
[2026-06-13 14:08:17,595.595 INFO    ] 2026-06-13 14:08:17
[2026-06-13 14:08:17,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:08:17,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:08:17,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:08:17,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:08:18,036.036 INFO    ] time= 13/06/2026 14:08:17
[2026-06-13 14:08:18,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:08:18,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:08:18,175.175 INFO    ] No existing commands found in stream
[2026-06-13 14:08:23,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:23,191.191 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 14:08:24,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:08:24,018.018 INFO    ] Checking for system updates...
[2026-06-13 14:08:24,039.039 INFO    ] 200
[2026-06-13 14:08:24,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:24,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:08:24,073.073 INFO    ] No update needed
[2026-06-13 14:08:24,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:24,094.094 INFO    ] 200
[2026-06-13 14:08:24,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:24,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:24,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:08:24,264.264 INFO    ] No camera update needed
[2026-06-13 14:08:24,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:24,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:24,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:24,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:26,312.312 INFO    ] ================================================
[2026-06-13 14:08:26,329.329 INFO    ] Launching Daemon at Sat Jun 13 14:08:26 IST 2026
[2026-06-13 14:08:26,339.339 INFO    ] ================================================
[2026-06-13 14:08:26,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:26
[2026-06-13 14:08:27,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:08:27,226.226 INFO    ] Initializing speech engine...
[2026-06-13 14:08:27,231.231 INFO    ] 2026-06-13 14:08:27
[2026-06-13 14:08:27,443.443 INFO    ] 2026-06-13 14:08:27
[2026-06-13 14:08:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:08:27,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:08:27,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:08:27,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:08:27,847.847 INFO    ] time= 13/06/2026 14:08:27
[2026-06-13 14:08:27,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:08:27,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:08:27,962.962 INFO    ] No existing commands found in stream
[2026-06-13 14:08:32,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:32,977.977 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 14:08:33,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:08:33,350.350 INFO    ] Checking for system updates...
[2026-06-13 14:08:33,371.371 INFO    ] 200
[2026-06-13 14:08:33,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:33,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:33,405.405 INFO    ] No update needed
[2026-06-13 14:08:33,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:33,427.427 INFO    ] 200
[2026-06-13 14:08:33,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:33,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:33,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:08:33,495.495 INFO    ] No camera update needed
[2026-06-13 14:08:33,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:33,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:33,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:33,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:35,542.542 INFO    ] ================================================
[2026-06-13 14:08:35,557.557 INFO    ] Launching Daemon at Sat Jun 13 14:08:35 IST 2026
[2026-06-13 14:08:35,568.568 INFO    ] ================================================
[2026-06-13 14:08:35,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:35
[2026-06-13 14:08:36,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:08:36,442.442 INFO    ] Initializing speech engine...
[2026-06-13 14:08:36,445.445 INFO    ] 2026-06-13 14:08:36
[2026-06-13 14:08:36,653.653 INFO    ] 2026-06-13 14:08:36
[2026-06-13 14:08:36,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:08:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:08:36,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:08:37,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:08:37,066.066 INFO    ] time= 13/06/2026 14:08:37
[2026-06-13 14:08:37,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:08:37,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:08:37,171.171 INFO    ] No existing commands found in stream
[2026-06-13 14:08:42,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:42,189.189 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 14:08:44,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:08:44,920.920 INFO    ] Checking for system updates...
[2026-06-13 14:08:44,942.942 INFO    ] 200
[2026-06-13 14:08:44,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:44,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:44,977.977 INFO    ] No update needed
[2026-06-13 14:08:44,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:45,000.000 INFO    ] 200
[2026-06-13 14:08:45,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:45,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:45,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:08:45,073.073 INFO    ] No camera update needed
[2026-06-13 14:08:45,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:45,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:45,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:45,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:47,120.120 INFO    ] ================================================
[2026-06-13 14:08:47,136.136 INFO    ] Launching Daemon at Sat Jun 13 14:08:47 IST 2026
[2026-06-13 14:08:47,146.146 INFO    ] ================================================
[2026-06-13 14:08:47,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:47
[2026-06-13 14:08:47,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:08:48,015.015 INFO    ] Initializing speech engine...
[2026-06-13 14:08:48,020.020 INFO    ] 2026-06-13 14:08:48
[2026-06-13 14:08:48,230.230 INFO    ] 2026-06-13 14:08:48
[2026-06-13 14:08:48,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:08:48,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:08:48,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:08:48,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:08:48,660.660 INFO    ] time= 13/06/2026 14:08:48
[2026-06-13 14:08:48,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:08:48,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:08:48,755.755 INFO    ] No existing commands found in stream
[2026-06-13 14:08:53,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:08:53,770.770 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 14:08:57,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:08:57,225.225 INFO    ] Checking for system updates...
[2026-06-13 14:08:57,246.246 INFO    ] 200
[2026-06-13 14:08:57,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:57,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:57,282.282 INFO    ] No update needed
[2026-06-13 14:08:57,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 14:08:57,303.303 INFO    ] 200
[2026-06-13 14:08:57,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:08:57,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:08:57,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:08:57,367.367 INFO    ] No camera update needed
[2026-06-13 14:08:57,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:08:57,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:08:57,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:08:57,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:08:59,414.414 INFO    ] ================================================
[2026-06-13 14:08:59,428.428 INFO    ] Launching Daemon at Sat Jun 13 14:08:59 IST 2026
[2026-06-13 14:08:59,439.439 INFO    ] ================================================
[2026-06-13 14:08:59,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:08:59
[2026-06-13 14:09:00,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:00,234.234 INFO    ] Initializing speech engine...
[2026-06-13 14:09:00,237.237 INFO    ] 2026-06-13 14:09:00
[2026-06-13 14:09:00,432.432 INFO    ] 2026-06-13 14:09:00
[2026-06-13 14:09:00,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:00,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:00,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:00,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:00,727.727 INFO    ] time= 13/06/2026 14:09:00
[2026-06-13 14:09:00,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:00,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:00,822.822 INFO    ] No existing commands found in stream
[2026-06-13 14:09:05,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:09:05,861.861 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 14:09:10,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:09:10,119.119 INFO    ] Checking for system updates...
[2026-06-13 14:09:10,140.140 INFO    ] 200
[2026-06-13 14:09:10,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:10,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:10,178.178 INFO    ] No update needed
[2026-06-13 14:09:10,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 14:09:10,199.199 INFO    ] 200
[2026-06-13 14:09:10,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:10,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:09:10,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:09:10,264.264 INFO    ] No camera update needed
[2026-06-13 14:09:10,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:09:10,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:09:10,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:09:10,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:09:12,311.311 INFO    ] ================================================
[2026-06-13 14:09:12,326.326 INFO    ] Launching Daemon at Sat Jun 13 14:09:12 IST 2026
[2026-06-13 14:09:12,337.337 INFO    ] ================================================
[2026-06-13 14:09:12,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:09:12
[2026-06-13 14:09:13,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:13,140.140 INFO    ] Initializing speech engine...
[2026-06-13 14:09:13,153.153 INFO    ] 2026-06-13 14:09:13
[2026-06-13 14:09:13,375.375 INFO    ] 2026-06-13 14:09:13
[2026-06-13 14:09:13,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:13,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:13,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:13,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:13,803.803 INFO    ] time= 13/06/2026 14:09:13
[2026-06-13 14:09:13,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:13,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:13,936.936 INFO    ] No existing commands found in stream
[2026-06-13 14:09:18,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:09:18,950.950 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 14:09:23,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:09:23,044.044 INFO    ] Checking for system updates...
[2026-06-13 14:09:23,066.066 INFO    ] 200
[2026-06-13 14:09:23,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:23,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:23,102.102 INFO    ] No update needed
[2026-06-13 14:09:23,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 14:09:23,123.123 INFO    ] 200
[2026-06-13 14:09:23,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:23,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:09:23,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:23,194.194 INFO    ] No camera update needed
[2026-06-13 14:09:23,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:09:23,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:09:23,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:09:23,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:09:25,242.242 INFO    ] ================================================
[2026-06-13 14:09:25,257.257 INFO    ] Launching Daemon at Sat Jun 13 14:09:25 IST 2026
[2026-06-13 14:09:25,268.268 INFO    ] ================================================
[2026-06-13 14:09:25,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:09:25
[2026-06-13 14:09:25,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:26,056.056 INFO    ] Initializing speech engine...
[2026-06-13 14:09:26,061.061 INFO    ] 2026-06-13 14:09:26
[2026-06-13 14:09:26,265.265 INFO    ] 2026-06-13 14:09:26
[2026-06-13 14:09:26,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:26,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:26,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:26,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:26,674.674 INFO    ] time= 13/06/2026 14:09:26
[2026-06-13 14:09:26,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:26,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:26,780.780 INFO    ] No existing commands found in stream
[2026-06-13 14:09:31,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:09:31,792.792 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 14:09:33,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:09:33,629.629 INFO    ] Checking for system updates...
[2026-06-13 14:09:33,652.652 INFO    ] 200
[2026-06-13 14:09:33,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:33,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:33,689.689 INFO    ] No update needed
[2026-06-13 14:09:33,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 14:09:33,711.711 INFO    ] 200
[2026-06-13 14:09:33,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:33,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:09:33,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:33,779.779 INFO    ] No camera update needed
[2026-06-13 14:09:33,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:09:33,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:09:33,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:09:33,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:09:35,833.833 INFO    ] ================================================
[2026-06-13 14:09:35,849.849 INFO    ] Launching Daemon at Sat Jun 13 14:09:35 IST 2026
[2026-06-13 14:09:35,860.860 INFO    ] ================================================
[2026-06-13 14:09:36,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:09:36
[2026-06-13 14:09:37,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:37,221.221 INFO    ] Initializing speech engine...
[2026-06-13 14:09:37,229.229 INFO    ] 2026-06-13 14:09:37
[2026-06-13 14:09:37,443.443 INFO    ] 2026-06-13 14:09:37
[2026-06-13 14:09:37,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:37,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:37,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:37,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:37,859.859 INFO    ] time= 13/06/2026 14:09:37
[2026-06-13 14:09:37,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:37,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:37,966.966 INFO    ] No existing commands found in stream
[2026-06-13 14:09:42,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:09:42,978.978 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 14:09:45,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:09:45,773.773 INFO    ] Checking for system updates...
[2026-06-13 14:09:45,794.794 INFO    ] 200
[2026-06-13 14:09:45,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:45,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:09:45,829.829 INFO    ] No update needed
[2026-06-13 14:09:45,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 14:09:45,850.850 INFO    ] 200
[2026-06-13 14:09:45,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:45,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:09:45,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:09:45,918.918 INFO    ] No camera update needed
[2026-06-13 14:09:45,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:09:45,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:09:45,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:09:45,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:09:47,964.964 INFO    ] ================================================
[2026-06-13 14:09:47,980.980 INFO    ] Launching Daemon at Sat Jun 13 14:09:47 IST 2026
[2026-06-13 14:09:47,991.991 INFO    ] ================================================
[2026-06-13 14:09:48,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:09:48
[2026-06-13 14:09:48,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:48,870.870 INFO    ] Initializing speech engine...
[2026-06-13 14:09:48,881.881 INFO    ] 2026-06-13 14:09:48
[2026-06-13 14:09:49,094.094 INFO    ] 2026-06-13 14:09:49
[2026-06-13 14:09:49,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:49,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:49,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:49,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:49,524.524 INFO    ] time= 13/06/2026 14:09:49
[2026-06-13 14:09:49,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:49,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:49,622.622 INFO    ] No existing commands found in stream
[2026-06-13 14:09:54,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:09:54,635.635 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 14:09:55,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:09:55,326.326 INFO    ] Checking for system updates...
[2026-06-13 14:09:55,348.348 INFO    ] 200
[2026-06-13 14:09:55,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:55,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:55,382.382 INFO    ] No update needed
[2026-06-13 14:09:55,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 14:09:55,404.404 INFO    ] 200
[2026-06-13 14:09:55,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:09:55,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:09:55,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:09:55,467.467 INFO    ] No camera update needed
[2026-06-13 14:09:55,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:09:55,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:09:55,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:09:55,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:09:57,514.514 INFO    ] ================================================
[2026-06-13 14:09:57,530.530 INFO    ] Launching Daemon at Sat Jun 13 14:09:57 IST 2026
[2026-06-13 14:09:57,540.540 INFO    ] ================================================
[2026-06-13 14:09:57,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:09:57
[2026-06-13 14:09:58,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:09:58,377.377 INFO    ] Initializing speech engine...
[2026-06-13 14:09:58,383.383 INFO    ] 2026-06-13 14:09:58
[2026-06-13 14:09:58,593.593 INFO    ] 2026-06-13 14:09:58
[2026-06-13 14:09:58,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:09:58,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:09:58,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:09:58,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:09:59,013.013 INFO    ] time= 13/06/2026 14:09:58
[2026-06-13 14:09:59,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:09:59,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:09:59,115.115 INFO    ] No existing commands found in stream
[2026-06-13 14:10:04,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:10:04,124.124 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 14:10:08,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:10:08,320.320 INFO    ] Checking for system updates...
[2026-06-13 14:10:08,341.341 INFO    ] 200
[2026-06-13 14:10:08,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:08,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:10:08,377.377 INFO    ] No update needed
[2026-06-13 14:10:08,378.378 INFO    ] Checking for camera pi updates...
[2026-06-13 14:10:08,398.398 INFO    ] 200
[2026-06-13 14:10:08,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:08,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:10:08,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:10:08,464.464 INFO    ] No camera update needed
[2026-06-13 14:10:08,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:10:08,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:10:08,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:10:08,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:10:10,510.510 INFO    ] ================================================
[2026-06-13 14:10:10,525.525 INFO    ] Launching Daemon at Sat Jun 13 14:10:10 IST 2026
[2026-06-13 14:10:10,537.537 INFO    ] ================================================
[2026-06-13 14:10:10,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:10:10
[2026-06-13 14:10:11,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:10:11,327.327 INFO    ] Initializing speech engine...
[2026-06-13 14:10:11,331.331 INFO    ] 2026-06-13 14:10:11
[2026-06-13 14:10:11,550.550 INFO    ] 2026-06-13 14:10:11
[2026-06-13 14:10:11,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:10:11,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:10:11,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:10:11,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:10:11,968.968 INFO    ] time= 13/06/2026 14:10:11
[2026-06-13 14:10:11,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:10:12,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:10:12,068.068 INFO    ] No existing commands found in stream
[2026-06-13 14:10:17,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:10:17,082.082 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 14:10:20,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:10:20,088.088 INFO    ] Checking for system updates...
[2026-06-13 14:10:20,109.109 INFO    ] 200
[2026-06-13 14:10:20,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:20,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:20,144.144 INFO    ] No update needed
[2026-06-13 14:10:20,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 14:10:20,167.167 INFO    ] 200
[2026-06-13 14:10:20,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:20,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:10:20,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:20,235.235 INFO    ] No camera update needed
[2026-06-13 14:10:20,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:10:20,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:10:20,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:10:20,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:10:22,281.281 INFO    ] ================================================
[2026-06-13 14:10:22,297.297 INFO    ] Launching Daemon at Sat Jun 13 14:10:22 IST 2026
[2026-06-13 14:10:22,307.307 INFO    ] ================================================
[2026-06-13 14:10:22,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:10:22
[2026-06-13 14:10:22,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:10:23,129.129 INFO    ] Initializing speech engine...
[2026-06-13 14:10:23,134.134 INFO    ] 2026-06-13 14:10:23
[2026-06-13 14:10:23,339.339 INFO    ] 2026-06-13 14:10:23
[2026-06-13 14:10:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:10:23,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:10:23,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:10:23,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:10:23,744.744 INFO    ] time= 13/06/2026 14:10:23
[2026-06-13 14:10:23,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:10:23,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:10:23,862.862 INFO    ] No existing commands found in stream
[2026-06-13 14:10:28,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:10:28,873.873 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 14:10:32,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:10:32,681.681 INFO    ] Checking for system updates...
[2026-06-13 14:10:32,707.707 INFO    ] 200
[2026-06-13 14:10:32,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:32,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:32,758.758 INFO    ] No update needed
[2026-06-13 14:10:32,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 14:10:32,782.782 INFO    ] 200
[2026-06-13 14:10:32,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:32,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:10:32,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:32,847.847 INFO    ] No camera update needed
[2026-06-13 14:10:32,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:10:32,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:10:32,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:10:32,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:10:34,893.893 INFO    ] ================================================
[2026-06-13 14:10:34,909.909 INFO    ] Launching Daemon at Sat Jun 13 14:10:34 IST 2026
[2026-06-13 14:10:34,919.919 INFO    ] ================================================
[2026-06-13 14:10:35,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:10:35
[2026-06-13 14:10:35,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:10:35,802.802 INFO    ] Initializing speech engine...
[2026-06-13 14:10:35,807.807 INFO    ] 2026-06-13 14:10:35
[2026-06-13 14:10:35,990.990 INFO    ] 2026-06-13 14:10:35
[2026-06-13 14:10:36,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:10:36,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:10:36,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:10:36,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:10:36,275.275 INFO    ] time= 13/06/2026 14:10:36
[2026-06-13 14:10:36,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:10:36,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:10:36,381.381 INFO    ] No existing commands found in stream
[2026-06-13 14:10:41,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:10:41,419.419 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 14:10:42,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:10:42,228.228 INFO    ] Checking for system updates...
[2026-06-13 14:10:42,249.249 INFO    ] 200
[2026-06-13 14:10:42,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:42,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:42,282.282 INFO    ] No update needed
[2026-06-13 14:10:42,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 14:10:42,304.304 INFO    ] 200
[2026-06-13 14:10:42,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:42,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:10:42,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:42,366.366 INFO    ] No camera update needed
[2026-06-13 14:10:42,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:10:42,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:10:42,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:10:42,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:10:44,415.415 INFO    ] ================================================
[2026-06-13 14:10:44,430.430 INFO    ] Launching Daemon at Sat Jun 13 14:10:44 IST 2026
[2026-06-13 14:10:44,441.441 INFO    ] ================================================
[2026-06-13 14:10:44,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:10:44
[2026-06-13 14:10:45,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:10:45,234.234 INFO    ] Initializing speech engine...
[2026-06-13 14:10:45,238.238 INFO    ] 2026-06-13 14:10:45
[2026-06-13 14:10:45,447.447 INFO    ] 2026-06-13 14:10:45
[2026-06-13 14:10:45,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:10:45,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:10:45,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:10:45,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:10:45,722.722 INFO    ] time= 13/06/2026 14:10:45
[2026-06-13 14:10:45,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:10:45,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:10:45,812.812 INFO    ] No existing commands found in stream
[2026-06-13 14:10:50,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:10:50,849.849 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 14:10:53,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:10:53,359.359 INFO    ] Checking for system updates...
[2026-06-13 14:10:53,380.380 INFO    ] 200
[2026-06-13 14:10:53,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:53,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:53,416.416 INFO    ] No update needed
[2026-06-13 14:10:53,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 14:10:53,436.436 INFO    ] 200
[2026-06-13 14:10:53,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:10:53,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:10:53,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:10:53,511.511 INFO    ] No camera update needed
[2026-06-13 14:10:53,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:10:53,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:10:53,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:10:53,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:10:55,559.559 INFO    ] ================================================
[2026-06-13 14:10:55,574.574 INFO    ] Launching Daemon at Sat Jun 13 14:10:55 IST 2026
[2026-06-13 14:10:55,585.585 INFO    ] ================================================
[2026-06-13 14:10:55,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:10:55
[2026-06-13 14:10:56,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:10:56,368.368 INFO    ] Initializing speech engine...
[2026-06-13 14:10:56,373.373 INFO    ] 2026-06-13 14:10:56
[2026-06-13 14:10:56,576.576 INFO    ] 2026-06-13 14:10:56
[2026-06-13 14:10:56,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:10:56,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:10:56,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:10:56,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:10:56,984.984 INFO    ] time= 13/06/2026 14:10:56
[2026-06-13 14:10:57,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:10:57,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:10:57,086.086 INFO    ] No existing commands found in stream
[2026-06-13 14:11:02,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:11:02,099.099 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 14:11:05,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:11:05,736.736 INFO    ] Checking for system updates...
[2026-06-13 14:11:05,757.757 INFO    ] 200
[2026-06-13 14:11:05,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:05,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:11:05,791.791 INFO    ] No update needed
[2026-06-13 14:11:05,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 14:11:05,814.814 INFO    ] 200
[2026-06-13 14:11:05,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:05,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:11:05,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:11:05,885.885 INFO    ] No camera update needed
[2026-06-13 14:11:05,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:11:05,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:11:05,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:11:05,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:11:07,935.935 INFO    ] ================================================
[2026-06-13 14:11:07,950.950 INFO    ] Launching Daemon at Sat Jun 13 14:11:07 IST 2026
[2026-06-13 14:11:07,961.961 INFO    ] ================================================
[2026-06-13 14:11:08,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:11:08
[2026-06-13 14:11:08,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:11:08,828.828 INFO    ] Initializing speech engine...
[2026-06-13 14:11:08,834.834 INFO    ] 2026-06-13 14:11:08
[2026-06-13 14:11:09,042.042 INFO    ] 2026-06-13 14:11:09
[2026-06-13 14:11:09,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:11:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:11:09,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:11:09,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:11:09,473.473 INFO    ] time= 13/06/2026 14:11:09
[2026-06-13 14:11:09,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:11:09,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:11:09,570.570 INFO    ] No existing commands found in stream
[2026-06-13 14:11:14,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:11:14,585.585 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 14:11:15,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:11:15,660.660 INFO    ] Checking for system updates...
[2026-06-13 14:11:15,685.685 INFO    ] 200
[2026-06-13 14:11:15,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:15,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:11:15,719.719 INFO    ] No update needed
[2026-06-13 14:11:15,720.720 INFO    ] Checking for camera pi updates...
[2026-06-13 14:11:15,740.740 INFO    ] 200
[2026-06-13 14:11:15,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:15,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:11:15,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:11:15,818.818 INFO    ] No camera update needed
[2026-06-13 14:11:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:11:15,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:11:15,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:11:15,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:11:17,866.866 INFO    ] ================================================
[2026-06-13 14:11:17,881.881 INFO    ] Launching Daemon at Sat Jun 13 14:11:17 IST 2026
[2026-06-13 14:11:17,892.892 INFO    ] ================================================
[2026-06-13 14:11:18,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:11:18
[2026-06-13 14:11:18,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:11:18,680.680 INFO    ] Initializing speech engine...
[2026-06-13 14:11:18,690.690 INFO    ] 2026-06-13 14:11:18
[2026-06-13 14:11:18,916.916 INFO    ] 2026-06-13 14:11:18
[2026-06-13 14:11:18,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:11:19,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:11:19,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:11:19,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:11:19,354.354 INFO    ] time= 13/06/2026 14:11:19
[2026-06-13 14:11:19,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:11:19,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:11:19,473.473 INFO    ] No existing commands found in stream
[2026-06-13 14:11:24,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:11:24,486.486 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 14:11:28,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:11:28,524.524 INFO    ] Checking for system updates...
[2026-06-13 14:11:28,545.545 INFO    ] 200
[2026-06-13 14:11:28,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:28,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:11:28,579.579 INFO    ] No update needed
[2026-06-13 14:11:28,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 14:11:28,601.601 INFO    ] 200
[2026-06-13 14:11:28,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:28,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:11:28,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:11:28,672.672 INFO    ] No camera update needed
[2026-06-13 14:11:28,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:11:28,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:11:28,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:11:28,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:11:30,719.719 INFO    ] ================================================
[2026-06-13 14:11:30,734.734 INFO    ] Launching Daemon at Sat Jun 13 14:11:30 IST 2026
[2026-06-13 14:11:30,745.745 INFO    ] ================================================
[2026-06-13 14:11:31,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:11:31
[2026-06-13 14:11:31,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:11:31,753.753 INFO    ] Initializing speech engine...
[2026-06-13 14:11:31,779.779 INFO    ] 2026-06-13 14:11:31
[2026-06-13 14:11:32,059.059 INFO    ] 2026-06-13 14:11:32
[2026-06-13 14:11:32,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:11:32,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:11:32,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:11:32,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:11:32,392.392 INFO    ] time= 13/06/2026 14:11:32
[2026-06-13 14:11:32,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:11:32,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:11:32,475.475 INFO    ] No existing commands found in stream
[2026-06-13 14:11:37,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:11:37,496.496 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 14:11:40,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:11:40,250.250 INFO    ] Checking for system updates...
[2026-06-13 14:11:40,271.271 INFO    ] 200
[2026-06-13 14:11:40,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:40,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:11:40,307.307 INFO    ] No update needed
[2026-06-13 14:11:40,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 14:11:40,328.328 INFO    ] 200
[2026-06-13 14:11:40,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:40,353.353 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:11:40,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:11:40,396.396 INFO    ] No camera update needed
[2026-06-13 14:11:40,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:11:40,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:11:40,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:11:40,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:11:42,443.443 INFO    ] ================================================
[2026-06-13 14:11:42,458.458 INFO    ] Launching Daemon at Sat Jun 13 14:11:42 IST 2026
[2026-06-13 14:11:42,470.470 INFO    ] ================================================
[2026-06-13 14:11:42,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:11:42
[2026-06-13 14:11:43,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:11:43,263.263 INFO    ] Initializing speech engine...
[2026-06-13 14:11:43,269.269 INFO    ] 2026-06-13 14:11:43
[2026-06-13 14:11:43,478.478 INFO    ] 2026-06-13 14:11:43
[2026-06-13 14:11:43,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:11:43,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:11:43,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:11:43,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:11:43,887.887 INFO    ] time= 13/06/2026 14:11:43
[2026-06-13 14:11:43,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:11:43,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:11:43,998.998 INFO    ] No existing commands found in stream
[2026-06-13 14:11:49,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:11:49,012.012 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 14:11:52,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:11:52,520.520 INFO    ] Checking for system updates...
[2026-06-13 14:11:52,540.540 INFO    ] 200
[2026-06-13 14:11:52,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:52,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:11:52,574.574 INFO    ] No update needed
[2026-06-13 14:11:52,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 14:11:52,595.595 INFO    ] 200
[2026-06-13 14:11:52,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:11:52,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:11:52,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:11:52,662.662 INFO    ] No camera update needed
[2026-06-13 14:11:52,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:11:52,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:11:52,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:11:52,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:11:54,708.708 INFO    ] ================================================
[2026-06-13 14:11:54,724.724 INFO    ] Launching Daemon at Sat Jun 13 14:11:54 IST 2026
[2026-06-13 14:11:54,734.734 INFO    ] ================================================
[2026-06-13 14:11:55,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:11:55
[2026-06-13 14:11:55,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:11:55,514.514 INFO    ] Initializing speech engine...
[2026-06-13 14:11:55,526.526 INFO    ] 2026-06-13 14:11:55
[2026-06-13 14:11:55,734.734 INFO    ] 2026-06-13 14:11:55
[2026-06-13 14:11:55,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:11:55,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:11:55,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:11:56,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:11:56,139.139 INFO    ] time= 13/06/2026 14:11:56
[2026-06-13 14:11:56,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:11:56,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:11:56,250.250 INFO    ] No existing commands found in stream
[2026-06-13 14:12:01,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:12:01,262.262 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 14:12:05,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:12:05,411.411 INFO    ] Checking for system updates...
[2026-06-13 14:12:05,433.433 INFO    ] 200
[2026-06-13 14:12:05,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:05,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:05,470.470 INFO    ] No update needed
[2026-06-13 14:12:05,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 14:12:05,491.491 INFO    ] 200
[2026-06-13 14:12:05,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:05,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:12:05,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:05,565.565 INFO    ] No camera update needed
[2026-06-13 14:12:05,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:12:05,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:12:05,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:12:05,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:12:07,621.621 INFO    ] ================================================
[2026-06-13 14:12:07,635.635 INFO    ] Launching Daemon at Sat Jun 13 14:12:07 IST 2026
[2026-06-13 14:12:07,647.647 INFO    ] ================================================
[2026-06-13 14:12:08,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:12:08
[2026-06-13 14:12:08,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:12:08,890.890 INFO    ] Initializing speech engine...
[2026-06-13 14:12:08,895.895 INFO    ] 2026-06-13 14:12:08
[2026-06-13 14:12:09,098.098 INFO    ] 2026-06-13 14:12:09
[2026-06-13 14:12:09,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:12:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:12:09,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:12:09,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:12:09,502.502 INFO    ] time= 13/06/2026 14:12:09
[2026-06-13 14:12:09,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:12:09,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:12:09,610.610 INFO    ] No existing commands found in stream
[2026-06-13 14:12:14,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:12:14,624.624 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 14:12:18,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:12:18,144.144 INFO    ] Checking for system updates...
[2026-06-13 14:12:18,167.167 INFO    ] 200
[2026-06-13 14:12:18,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:18,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:12:18,201.201 INFO    ] No update needed
[2026-06-13 14:12:18,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 14:12:18,223.223 INFO    ] 200
[2026-06-13 14:12:18,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:18,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:12:18,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:12:18,286.286 INFO    ] No camera update needed
[2026-06-13 14:12:18,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:12:18,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:12:18,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:12:18,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:12:20,333.333 INFO    ] ================================================
[2026-06-13 14:12:20,349.349 INFO    ] Launching Daemon at Sat Jun 13 14:12:20 IST 2026
[2026-06-13 14:12:20,361.361 INFO    ] ================================================
[2026-06-13 14:12:20,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:12:20
[2026-06-13 14:12:21,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:12:21,149.149 INFO    ] Initializing speech engine...
[2026-06-13 14:12:21,154.154 INFO    ] 2026-06-13 14:12:21
[2026-06-13 14:12:21,356.356 INFO    ] 2026-06-13 14:12:21
[2026-06-13 14:12:21,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:12:21,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:12:21,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:12:21,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:12:21,757.757 INFO    ] time= 13/06/2026 14:12:21
[2026-06-13 14:12:21,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:12:21,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:12:21,870.870 INFO    ] No existing commands found in stream
[2026-06-13 14:12:26,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:12:26,884.884 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 14:12:29,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:12:29,548.548 INFO    ] Checking for system updates...
[2026-06-13 14:12:29,569.569 INFO    ] 200
[2026-06-13 14:12:29,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:29,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:12:29,602.602 INFO    ] No update needed
[2026-06-13 14:12:29,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 14:12:29,624.624 INFO    ] 200
[2026-06-13 14:12:29,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:29,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:12:29,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:12:29,689.689 INFO    ] No camera update needed
[2026-06-13 14:12:29,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:12:29,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:12:29,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:12:29,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:12:31,731.731 INFO    ] ================================================
[2026-06-13 14:12:31,742.742 INFO    ] Launching Daemon at Sat Jun 13 14:12:31 IST 2026
[2026-06-13 14:12:31,749.749 INFO    ] ================================================
[2026-06-13 14:12:32,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:12:32
[2026-06-13 14:12:32,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:12:32,613.613 INFO    ] Initializing speech engine...
[2026-06-13 14:12:32,618.618 INFO    ] 2026-06-13 14:12:32
[2026-06-13 14:12:32,822.822 INFO    ] 2026-06-13 14:12:32
[2026-06-13 14:12:32,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:12:33,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:12:33,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:12:33,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:12:33,215.215 INFO    ] time= 13/06/2026 14:12:33
[2026-06-13 14:12:33,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:12:33,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:12:33,334.334 INFO    ] No existing commands found in stream
[2026-06-13 14:12:38,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:12:38,347.347 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 14:12:39,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:12:39,863.863 INFO    ] Checking for system updates...
[2026-06-13 14:12:39,885.885 INFO    ] 200
[2026-06-13 14:12:39,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:39,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:39,922.922 INFO    ] No update needed
[2026-06-13 14:12:39,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 14:12:39,945.945 INFO    ] 200
[2026-06-13 14:12:39,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:39,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:12:40,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:40,120.120 INFO    ] No camera update needed
[2026-06-13 14:12:40,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:12:40,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:12:40,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:12:40,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:12:42,169.169 INFO    ] ================================================
[2026-06-13 14:12:42,185.185 INFO    ] Launching Daemon at Sat Jun 13 14:12:42 IST 2026
[2026-06-13 14:12:42,196.196 INFO    ] ================================================
[2026-06-13 14:12:42,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:12:42
[2026-06-13 14:12:42,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:12:43,028.028 INFO    ] Initializing speech engine...
[2026-06-13 14:12:43,034.034 INFO    ] 2026-06-13 14:12:43
[2026-06-13 14:12:43,243.243 INFO    ] 2026-06-13 14:12:43
[2026-06-13 14:12:43,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:12:43,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:12:43,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:12:43,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:12:43,655.655 INFO    ] time= 13/06/2026 14:12:43
[2026-06-13 14:12:43,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:12:43,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:12:43,759.759 INFO    ] No existing commands found in stream
[2026-06-13 14:12:48,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:12:48,772.772 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 14:12:51,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:12:51,710.710 INFO    ] Checking for system updates...
[2026-06-13 14:12:51,731.731 INFO    ] 200
[2026-06-13 14:12:51,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:51,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:51,767.767 INFO    ] No update needed
[2026-06-13 14:12:51,769.769 INFO    ] Checking for camera pi updates...
[2026-06-13 14:12:51,793.793 INFO    ] 200
[2026-06-13 14:12:51,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:12:51,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:12:51,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:12:51,872.872 INFO    ] No camera update needed
[2026-06-13 14:12:51,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:12:51,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:12:51,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:12:51,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:12:53,928.928 INFO    ] ================================================
[2026-06-13 14:12:53,944.944 INFO    ] Launching Daemon at Sat Jun 13 14:12:53 IST 2026
[2026-06-13 14:12:53,955.955 INFO    ] ================================================
[2026-06-13 14:12:54,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:12:54
[2026-06-13 14:12:54,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:12:54,754.754 INFO    ] Initializing speech engine...
[2026-06-13 14:12:54,760.760 INFO    ] 2026-06-13 14:12:54
[2026-06-13 14:12:54,963.963 INFO    ] 2026-06-13 14:12:54
[2026-06-13 14:12:54,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:12:55,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:12:55,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:12:55,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:12:55,374.374 INFO    ] time= 13/06/2026 14:12:55
[2026-06-13 14:12:55,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:12:55,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:12:55,480.480 INFO    ] No existing commands found in stream
[2026-06-13 14:13:00,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:00,497.497 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 14:13:01,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:13:01,481.481 INFO    ] Checking for system updates...
[2026-06-13 14:13:01,501.501 INFO    ] 200
[2026-06-13 14:13:01,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:01,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:01,536.536 INFO    ] No update needed
[2026-06-13 14:13:01,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:01,557.557 INFO    ] 200
[2026-06-13 14:13:01,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:01,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:01,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:13:01,672.672 INFO    ] No camera update needed
[2026-06-13 14:13:01,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:01,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:01,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:01,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:03,764.764 INFO    ] ================================================
[2026-06-13 14:13:03,780.780 INFO    ] Launching Daemon at Sat Jun 13 14:13:03 IST 2026
[2026-06-13 14:13:03,790.790 INFO    ] ================================================
[2026-06-13 14:13:04,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:04
[2026-06-13 14:13:04,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:05,048.048 INFO    ] Initializing speech engine...
[2026-06-13 14:13:05,053.053 INFO    ] 2026-06-13 14:13:05
[2026-06-13 14:13:05,255.255 INFO    ] 2026-06-13 14:13:05
[2026-06-13 14:13:05,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:05,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:05,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:05,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:05,663.663 INFO    ] time= 13/06/2026 14:13:05
[2026-06-13 14:13:05,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:05,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:05,766.766 INFO    ] No existing commands found in stream
[2026-06-13 14:13:10,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:10,780.780 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 14:13:11,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:13:11,240.240 INFO    ] Checking for system updates...
[2026-06-13 14:13:11,260.260 INFO    ] 200
[2026-06-13 14:13:11,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:11,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:11,296.296 INFO    ] No update needed
[2026-06-13 14:13:11,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:11,317.317 INFO    ] 200
[2026-06-13 14:13:11,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:11,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:11,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:11,382.382 INFO    ] No camera update needed
[2026-06-13 14:13:11,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:11,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:11,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:11,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:13,429.429 INFO    ] ================================================
[2026-06-13 14:13:13,444.444 INFO    ] Launching Daemon at Sat Jun 13 14:13:13 IST 2026
[2026-06-13 14:13:13,455.455 INFO    ] ================================================
[2026-06-13 14:13:13,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:13
[2026-06-13 14:13:14,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:14,240.240 INFO    ] Initializing speech engine...
[2026-06-13 14:13:14,244.244 INFO    ] 2026-06-13 14:13:14
[2026-06-13 14:13:14,452.452 INFO    ] 2026-06-13 14:13:14
[2026-06-13 14:13:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:14,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:14,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:14,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:14,869.869 INFO    ] time= 13/06/2026 14:13:14
[2026-06-13 14:13:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:14,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:14,975.975 INFO    ] No existing commands found in stream
[2026-06-13 14:13:19,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:19,988.988 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 14:13:22,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:13:22,579.579 INFO    ] Checking for system updates...
[2026-06-13 14:13:22,601.601 INFO    ] 200
[2026-06-13 14:13:22,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:22,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:22,637.637 INFO    ] No update needed
[2026-06-13 14:13:22,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:22,658.658 INFO    ] 200
[2026-06-13 14:13:22,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:22,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:22,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:22,731.731 INFO    ] No camera update needed
[2026-06-13 14:13:22,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:22,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:22,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:22,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:24,779.779 INFO    ] ================================================
[2026-06-13 14:13:24,794.794 INFO    ] Launching Daemon at Sat Jun 13 14:13:24 IST 2026
[2026-06-13 14:13:24,805.805 INFO    ] ================================================
[2026-06-13 14:13:25,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:25
[2026-06-13 14:13:25,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:25,657.657 INFO    ] Initializing speech engine...
[2026-06-13 14:13:25,660.660 INFO    ] 2026-06-13 14:13:25
[2026-06-13 14:13:25,866.866 INFO    ] 2026-06-13 14:13:25
[2026-06-13 14:13:25,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:26,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:26,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:26,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:26,281.281 INFO    ] time= 13/06/2026 14:13:26
[2026-06-13 14:13:26,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:26,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:26,380.380 INFO    ] No existing commands found in stream
[2026-06-13 14:13:31,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:31,398.398 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 14:13:33,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:13:33,320.320 INFO    ] Checking for system updates...
[2026-06-13 14:13:33,342.342 INFO    ] 200
[2026-06-13 14:13:33,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:33,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:33,381.381 INFO    ] No update needed
[2026-06-13 14:13:33,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:33,405.405 INFO    ] 200
[2026-06-13 14:13:33,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:33,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:33,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:33,455.455 INFO    ] No camera update needed
[2026-06-13 14:13:33,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:33,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:33,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:33,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:35,504.504 INFO    ] ================================================
[2026-06-13 14:13:35,519.519 INFO    ] Launching Daemon at Sat Jun 13 14:13:35 IST 2026
[2026-06-13 14:13:35,531.531 INFO    ] ================================================
[2026-06-13 14:13:35,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:35
[2026-06-13 14:13:36,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:36,335.335 INFO    ] Initializing speech engine...
[2026-06-13 14:13:36,340.340 INFO    ] 2026-06-13 14:13:36
[2026-06-13 14:13:36,544.544 INFO    ] 2026-06-13 14:13:36
[2026-06-13 14:13:36,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:36,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:36,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:36,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:36,943.943 INFO    ] time= 13/06/2026 14:13:36
[2026-06-13 14:13:36,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:36,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:37,056.056 INFO    ] No existing commands found in stream
[2026-06-13 14:13:42,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:42,070.070 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 14:13:44,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:13:44,166.166 INFO    ] Checking for system updates...
[2026-06-13 14:13:44,186.186 INFO    ] 200
[2026-06-13 14:13:44,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:44,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:13:44,220.220 INFO    ] No update needed
[2026-06-13 14:13:44,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:44,243.243 INFO    ] 200
[2026-06-13 14:13:44,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:44,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:44,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:13:44,314.314 INFO    ] No camera update needed
[2026-06-13 14:13:44,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:44,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:44,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:44,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:46,362.362 INFO    ] ================================================
[2026-06-13 14:13:46,378.378 INFO    ] Launching Daemon at Sat Jun 13 14:13:46 IST 2026
[2026-06-13 14:13:46,390.390 INFO    ] ================================================
[2026-06-13 14:13:46,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:46
[2026-06-13 14:13:47,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:47,248.248 INFO    ] Initializing speech engine...
[2026-06-13 14:13:47,254.254 INFO    ] 2026-06-13 14:13:47
[2026-06-13 14:13:47,461.461 INFO    ] 2026-06-13 14:13:47
[2026-06-13 14:13:47,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:47,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:47,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:47,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:47,883.883 INFO    ] time= 13/06/2026 14:13:47
[2026-06-13 14:13:47,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:47,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:47,979.979 INFO    ] No existing commands found in stream
[2026-06-13 14:13:52,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:13:52,992.992 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 14:13:56,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:13:56,126.126 INFO    ] Checking for system updates...
[2026-06-13 14:13:56,147.147 INFO    ] 200
[2026-06-13 14:13:56,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:56,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:13:56,182.182 INFO    ] No update needed
[2026-06-13 14:13:56,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 14:13:56,204.204 INFO    ] 200
[2026-06-13 14:13:56,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:13:56,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:13:56,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:13:56,272.272 INFO    ] No camera update needed
[2026-06-13 14:13:56,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:13:56,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:13:56,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:13:56,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:13:58,322.322 INFO    ] ================================================
[2026-06-13 14:13:58,337.337 INFO    ] Launching Daemon at Sat Jun 13 14:13:58 IST 2026
[2026-06-13 14:13:58,349.349 INFO    ] ================================================
[2026-06-13 14:13:58,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:13:58
[2026-06-13 14:13:59,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:13:59,150.150 INFO    ] Initializing speech engine...
[2026-06-13 14:13:59,155.155 INFO    ] 2026-06-13 14:13:59
[2026-06-13 14:13:59,358.358 INFO    ] 2026-06-13 14:13:59
[2026-06-13 14:13:59,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:13:59,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:13:59,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:13:59,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:13:59,756.756 INFO    ] time= 13/06/2026 14:13:59
[2026-06-13 14:13:59,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:13:59,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:13:59,871.871 INFO    ] No existing commands found in stream
[2026-06-13 14:14:04,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:14:04,883.883 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 14:14:05,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:14:05,865.865 INFO    ] Checking for system updates...
[2026-06-13 14:14:05,888.888 INFO    ] 200
[2026-06-13 14:14:05,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:05,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:14:05,921.921 INFO    ] No update needed
[2026-06-13 14:14:05,922.922 INFO    ] Checking for camera pi updates...
[2026-06-13 14:14:05,941.941 INFO    ] 200
[2026-06-13 14:14:05,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:05,968.968 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:14:06,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:14:06,014.014 INFO    ] No camera update needed
[2026-06-13 14:14:06,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:14:06,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:14:06,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:14:06,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:14:08,064.064 INFO    ] ================================================
[2026-06-13 14:14:08,081.081 INFO    ] Launching Daemon at Sat Jun 13 14:14:08 IST 2026
[2026-06-13 14:14:08,092.092 INFO    ] ================================================
[2026-06-13 14:14:08,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:14:08
[2026-06-13 14:14:08,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:14:08,976.976 INFO    ] Initializing speech engine...
[2026-06-13 14:14:08,984.984 INFO    ] 2026-06-13 14:14:08
[2026-06-13 14:14:09,262.262 INFO    ] 2026-06-13 14:14:09
[2026-06-13 14:14:09,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:14:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:14:09,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:14:09,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:14:09,597.597 INFO    ] time= 13/06/2026 14:14:09
[2026-06-13 14:14:09,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:14:09,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:14:09,707.707 INFO    ] No existing commands found in stream
[2026-06-13 14:14:14,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:14:14,723.723 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 14:14:18,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:14:18,636.636 INFO    ] Checking for system updates...
[2026-06-13 14:14:18,658.658 INFO    ] 200
[2026-06-13 14:14:18,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:18,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:14:18,695.695 INFO    ] No update needed
[2026-06-13 14:14:18,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 14:14:18,716.716 INFO    ] 200
[2026-06-13 14:14:18,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:18,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:14:18,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:14:18,779.779 INFO    ] No camera update needed
[2026-06-13 14:14:18,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:14:18,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:14:18,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:14:18,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:14:20,830.830 INFO    ] ================================================
[2026-06-13 14:14:20,846.846 INFO    ] Launching Daemon at Sat Jun 13 14:14:20 IST 2026
[2026-06-13 14:14:20,857.857 INFO    ] ================================================
[2026-06-13 14:14:21,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:14:21
[2026-06-13 14:14:21,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:14:21,746.746 INFO    ] Initializing speech engine...
[2026-06-13 14:14:21,752.752 INFO    ] 2026-06-13 14:14:21
[2026-06-13 14:14:21,960.960 INFO    ] 2026-06-13 14:14:21
[2026-06-13 14:14:21,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:14:22,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:14:22,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:14:22,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:14:22,389.389 INFO    ] time= 13/06/2026 14:14:22
[2026-06-13 14:14:22,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:14:22,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:14:22,487.487 INFO    ] No existing commands found in stream
[2026-06-13 14:14:27,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:14:27,502.502 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 14:14:29,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:14:29,537.537 INFO    ] Checking for system updates...
[2026-06-13 14:14:29,559.559 INFO    ] 200
[2026-06-13 14:14:29,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:29,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:14:29,596.596 INFO    ] No update needed
[2026-06-13 14:14:29,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 14:14:29,618.618 INFO    ] 200
[2026-06-13 14:14:29,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:29,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:14:29,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:14:29,691.691 INFO    ] No camera update needed
[2026-06-13 14:14:29,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:14:29,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:14:29,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:14:29,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:14:31,734.734 INFO    ] ================================================
[2026-06-13 14:14:31,743.743 INFO    ] Launching Daemon at Sat Jun 13 14:14:31 IST 2026
[2026-06-13 14:14:31,751.751 INFO    ] ================================================
[2026-06-13 14:14:32,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:14:32
[2026-06-13 14:14:32,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:14:33,233.233 INFO    ] Initializing speech engine...
[2026-06-13 14:14:33,240.240 INFO    ] 2026-06-13 14:14:33
[2026-06-13 14:14:33,507.507 INFO    ] 2026-06-13 14:14:33
[2026-06-13 14:14:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:14:33,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:14:33,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:14:33,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:14:33,932.932 INFO    ] time= 13/06/2026 14:14:33
[2026-06-13 14:14:33,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:14:34,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:14:34,119.119 INFO    ] No existing commands found in stream
[2026-06-13 14:14:39,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:14:39,159.159 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 14:14:42,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:14:42,138.138 INFO    ] Checking for system updates...
[2026-06-13 14:14:42,161.161 INFO    ] 200
[2026-06-13 14:14:42,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:42,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:14:42,198.198 INFO    ] No update needed
[2026-06-13 14:14:42,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 14:14:42,220.220 INFO    ] 200
[2026-06-13 14:14:42,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:42,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:14:42,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:14:42,387.387 INFO    ] No camera update needed
[2026-06-13 14:14:42,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:14:42,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:14:42,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:14:42,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:14:44,436.436 INFO    ] ================================================
[2026-06-13 14:14:44,451.451 INFO    ] Launching Daemon at Sat Jun 13 14:14:44 IST 2026
[2026-06-13 14:14:44,462.462 INFO    ] ================================================
[2026-06-13 14:14:44,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:14:44
[2026-06-13 14:14:45,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:14:45,287.287 INFO    ] Initializing speech engine...
[2026-06-13 14:14:45,299.299 INFO    ] 2026-06-13 14:14:45
[2026-06-13 14:14:45,511.511 INFO    ] 2026-06-13 14:14:45
[2026-06-13 14:14:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:14:45,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:14:45,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:14:45,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:14:45,931.931 INFO    ] time= 13/06/2026 14:14:45
[2026-06-13 14:14:45,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:14:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:14:46,025.025 INFO    ] No existing commands found in stream
[2026-06-13 14:14:51,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:14:51,040.040 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 14:14:54,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:14:54,851.851 INFO    ] Checking for system updates...
[2026-06-13 14:14:54,872.872 INFO    ] 200
[2026-06-13 14:14:54,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:54,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:14:54,907.907 INFO    ] No update needed
[2026-06-13 14:14:54,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 14:14:54,929.929 INFO    ] 200
[2026-06-13 14:14:54,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:14:54,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:14:54,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:14:54,999.999 INFO    ] No camera update needed
[2026-06-13 14:14:55,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:14:55,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:14:55,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:14:55,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:14:57,048.048 INFO    ] ================================================
[2026-06-13 14:14:57,064.064 INFO    ] Launching Daemon at Sat Jun 13 14:14:57 IST 2026
[2026-06-13 14:14:57,075.075 INFO    ] ================================================
[2026-06-13 14:14:57,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:14:57
[2026-06-13 14:14:57,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:14:57,879.879 INFO    ] Initializing speech engine...
[2026-06-13 14:14:57,887.887 INFO    ] 2026-06-13 14:14:57
[2026-06-13 14:14:58,099.099 INFO    ] 2026-06-13 14:14:58
[2026-06-13 14:14:58,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:14:58,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:14:58,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:14:58,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:14:58,514.514 INFO    ] time= 13/06/2026 14:14:58
[2026-06-13 14:14:58,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:14:58,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:14:58,615.615 INFO    ] No existing commands found in stream
[2026-06-13 14:15:03,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:03,631.631 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 14:15:04,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:15:04,427.427 INFO    ] Checking for system updates...
[2026-06-13 14:15:04,448.448 INFO    ] 200
[2026-06-13 14:15:04,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:04,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:04,482.482 INFO    ] No update needed
[2026-06-13 14:15:04,483.483 INFO    ] Checking for camera pi updates...
[2026-06-13 14:15:04,503.503 INFO    ] 200
[2026-06-13 14:15:04,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:04,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:15:04,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:04,575.575 INFO    ] No camera update needed
[2026-06-13 14:15:04,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:15:04,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:15:04,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:15:04,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:15:06,625.625 INFO    ] ================================================
[2026-06-13 14:15:06,642.642 INFO    ] Launching Daemon at Sat Jun 13 14:15:06 IST 2026
[2026-06-13 14:15:06,653.653 INFO    ] ================================================
[2026-06-13 14:15:07,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:15:07
[2026-06-13 14:15:07,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:15:07,507.507 INFO    ] Initializing speech engine...
[2026-06-13 14:15:07,517.517 INFO    ] 2026-06-13 14:15:07
[2026-06-13 14:15:07,729.729 INFO    ] 2026-06-13 14:15:07
[2026-06-13 14:15:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:15:07,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:15:07,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:15:08,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:15:08,163.163 INFO    ] time= 13/06/2026 14:15:08
[2026-06-13 14:15:08,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:15:08,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:15:08,259.259 INFO    ] No existing commands found in stream
[2026-06-13 14:15:13,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:13,272.272 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 14:15:14,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:15:14,065.065 INFO    ] Checking for system updates...
[2026-06-13 14:15:14,090.090 INFO    ] 200
[2026-06-13 14:15:14,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:14,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:15:14,138.138 INFO    ] No update needed
[2026-06-13 14:15:14,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 14:15:14,162.162 INFO    ] 200
[2026-06-13 14:15:14,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:14,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:15:14,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:15:14,234.234 INFO    ] No camera update needed
[2026-06-13 14:15:14,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:15:14,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:15:14,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:15:14,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:15:16,292.292 INFO    ] ================================================
[2026-06-13 14:15:16,307.307 INFO    ] Launching Daemon at Sat Jun 13 14:15:16 IST 2026
[2026-06-13 14:15:16,319.319 INFO    ] ================================================
[2026-06-13 14:15:16,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:15:16
[2026-06-13 14:15:16,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:15:17,149.149 INFO    ] Initializing speech engine...
[2026-06-13 14:15:17,153.153 INFO    ] 2026-06-13 14:15:17
[2026-06-13 14:15:17,371.371 INFO    ] 2026-06-13 14:15:17
[2026-06-13 14:15:17,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:15:17,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:15:17,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:15:17,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:15:17,793.793 INFO    ] time= 13/06/2026 14:15:17
[2026-06-13 14:15:17,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:15:17,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:15:17,939.939 INFO    ] No existing commands found in stream
[2026-06-13 14:15:22,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:22,951.951 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 14:15:25,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:15:25,110.110 INFO    ] Checking for system updates...
[2026-06-13 14:15:25,131.131 INFO    ] 200
[2026-06-13 14:15:25,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:25,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:25,164.164 INFO    ] No update needed
[2026-06-13 14:15:25,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 14:15:25,185.185 INFO    ] 200
[2026-06-13 14:15:25,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:25,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:15:25,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:25,236.236 INFO    ] No camera update needed
[2026-06-13 14:15:25,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:15:25,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:15:25,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:15:25,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:15:27,282.282 INFO    ] ================================================
[2026-06-13 14:15:27,297.297 INFO    ] Launching Daemon at Sat Jun 13 14:15:27 IST 2026
[2026-06-13 14:15:27,308.308 INFO    ] ================================================
[2026-06-13 14:15:27,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:15:27
[2026-06-13 14:15:28,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:15:28,685.685 INFO    ] Initializing speech engine...
[2026-06-13 14:15:28,697.697 INFO    ] 2026-06-13 14:15:28
[2026-06-13 14:15:29,010.010 INFO    ] 2026-06-13 14:15:28
[2026-06-13 14:15:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:15:29,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:15:29,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:15:29,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:15:29,519.519 INFO    ] time= 13/06/2026 14:15:29
[2026-06-13 14:15:29,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:15:29,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:15:29,677.677 INFO    ] No existing commands found in stream
[2026-06-13 14:15:34,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:34,716.716 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 14:15:38,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:15:38,970.970 INFO    ] Checking for system updates...
[2026-06-13 14:15:38,992.992 INFO    ] 200
[2026-06-13 14:15:38,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:39,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:15:39,025.025 INFO    ] No update needed
[2026-06-13 14:15:39,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 14:15:39,047.047 INFO    ] 200
[2026-06-13 14:15:39,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:39,087.087 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:15:39,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:15:39,131.131 INFO    ] No camera update needed
[2026-06-13 14:15:39,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:15:39,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:15:39,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:15:39,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:15:41,185.185 INFO    ] ================================================
[2026-06-13 14:15:41,201.201 INFO    ] Launching Daemon at Sat Jun 13 14:15:41 IST 2026
[2026-06-13 14:15:41,212.212 INFO    ] ================================================
[2026-06-13 14:15:41,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:15:41
[2026-06-13 14:15:42,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:15:42,426.426 INFO    ] Initializing speech engine...
[2026-06-13 14:15:42,436.436 INFO    ] 2026-06-13 14:15:42
[2026-06-13 14:15:42,642.642 INFO    ] 2026-06-13 14:15:42
[2026-06-13 14:15:42,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:15:42,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:15:42,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:15:42,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:15:43,044.044 INFO    ] time= 13/06/2026 14:15:42
[2026-06-13 14:15:43,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:15:43,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:15:43,167.167 INFO    ] No existing commands found in stream
[2026-06-13 14:15:48,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:48,184.184 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 14:15:50,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:15:50,170.170 INFO    ] Checking for system updates...
[2026-06-13 14:15:50,192.192 INFO    ] 200
[2026-06-13 14:15:50,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:50,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:50,226.226 INFO    ] No update needed
[2026-06-13 14:15:50,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 14:15:50,249.249 INFO    ] 200
[2026-06-13 14:15:50,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:15:50,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:15:50,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:15:50,313.313 INFO    ] No camera update needed
[2026-06-13 14:15:50,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:15:50,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:15:50,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:15:50,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:15:52,361.361 INFO    ] ================================================
[2026-06-13 14:15:52,377.377 INFO    ] Launching Daemon at Sat Jun 13 14:15:52 IST 2026
[2026-06-13 14:15:52,388.388 INFO    ] ================================================
[2026-06-13 14:15:52,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:15:52
[2026-06-13 14:15:53,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:15:53,275.275 INFO    ] Initializing speech engine...
[2026-06-13 14:15:53,281.281 INFO    ] 2026-06-13 14:15:53
[2026-06-13 14:15:53,490.490 INFO    ] 2026-06-13 14:15:53
[2026-06-13 14:15:53,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:15:53,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:15:53,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:15:53,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:15:53,913.913 INFO    ] time= 13/06/2026 14:15:53
[2026-06-13 14:15:53,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:15:53,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:15:54,012.012 INFO    ] No existing commands found in stream
[2026-06-13 14:15:59,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:15:59,030.030 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 14:16:00,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:16:00,461.461 INFO    ] Checking for system updates...
[2026-06-13 14:16:00,483.483 INFO    ] 200
[2026-06-13 14:16:00,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:00,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:16:00,517.517 INFO    ] No update needed
[2026-06-13 14:16:00,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 14:16:00,539.539 INFO    ] 200
[2026-06-13 14:16:00,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:00,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:16:00,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:16:00,603.603 INFO    ] No camera update needed
[2026-06-13 14:16:00,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:16:00,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:16:00,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:16:00,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:16:02,654.654 INFO    ] ================================================
[2026-06-13 14:16:02,673.673 INFO    ] Launching Daemon at Sat Jun 13 14:16:02 IST 2026
[2026-06-13 14:16:02,686.686 INFO    ] ================================================
[2026-06-13 14:16:03,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:16:03
[2026-06-13 14:16:04,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:16:04,297.297 INFO    ] Initializing speech engine...
[2026-06-13 14:16:04,319.319 INFO    ] 2026-06-13 14:16:04
[2026-06-13 14:16:04,587.587 INFO    ] 2026-06-13 14:16:04
[2026-06-13 14:16:04,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:16:04,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:16:04,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:16:04,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:16:04,983.983 INFO    ] time= 13/06/2026 14:16:04
[2026-06-13 14:16:05,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:16:05,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:16:05,176.176 INFO    ] No existing commands found in stream
[2026-06-13 14:16:10,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:16:10,188.188 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 14:16:11,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:16:11,799.799 INFO    ] Checking for system updates...
[2026-06-13 14:16:11,820.820 INFO    ] 200
[2026-06-13 14:16:11,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:11,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:16:11,854.854 INFO    ] No update needed
[2026-06-13 14:16:11,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 14:16:11,876.876 INFO    ] 200
[2026-06-13 14:16:11,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:11,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:16:11,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:16:11,947.947 INFO    ] No camera update needed
[2026-06-13 14:16:11,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:16:11,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:16:11,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:16:11,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:16:14,996.996 INFO    ] ================================================
[2026-06-13 14:16:14,013.013 INFO    ] Launching Daemon at Sat Jun 13 14:16:14 IST 2026
[2026-06-13 14:16:14,024.024 INFO    ] ================================================
[2026-06-13 14:16:14,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:16:14
[2026-06-13 14:16:14,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:16:14,826.826 INFO    ] Initializing speech engine...
[2026-06-13 14:16:14,831.831 INFO    ] 2026-06-13 14:16:14
[2026-06-13 14:16:15,061.061 INFO    ] 2026-06-13 14:16:15
[2026-06-13 14:16:15,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:16:15,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:16:15,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:16:15,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:16:15,480.480 INFO    ] time= 13/06/2026 14:16:15
[2026-06-13 14:16:15,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:16:15,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:16:15,610.610 INFO    ] No existing commands found in stream
[2026-06-13 14:16:20,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:16:20,624.624 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 14:16:25,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:16:25,091.091 INFO    ] Checking for system updates...
[2026-06-13 14:16:25,127.127 INFO    ] 200
[2026-06-13 14:16:25,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:25,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:16:25,187.187 INFO    ] No update needed
[2026-06-13 14:16:25,189.189 INFO    ] Checking for camera pi updates...
[2026-06-13 14:16:25,224.224 INFO    ] 200
[2026-06-13 14:16:25,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:25,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:16:25,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:16:25,294.294 INFO    ] No camera update needed
[2026-06-13 14:16:25,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:16:25,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:16:25,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:16:25,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:16:27,341.341 INFO    ] ================================================
[2026-06-13 14:16:27,357.357 INFO    ] Launching Daemon at Sat Jun 13 14:16:27 IST 2026
[2026-06-13 14:16:27,369.369 INFO    ] ================================================
[2026-06-13 14:16:27,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:16:27
[2026-06-13 14:16:28,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:16:28,176.176 INFO    ] Initializing speech engine...
[2026-06-13 14:16:28,185.185 INFO    ] 2026-06-13 14:16:28
[2026-06-13 14:16:28,402.402 INFO    ] 2026-06-13 14:16:28
[2026-06-13 14:16:28,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:16:28,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:16:28,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:16:28,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:16:28,820.820 INFO    ] time= 13/06/2026 14:16:28
[2026-06-13 14:16:28,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:16:28,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:16:28,919.919 INFO    ] No existing commands found in stream
[2026-06-13 14:16:33,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:16:33,931.931 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 14:16:35,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:16:35,393.393 INFO    ] Checking for system updates...
[2026-06-13 14:16:35,414.414 INFO    ] 200
[2026-06-13 14:16:35,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:35,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:16:35,449.449 INFO    ] No update needed
[2026-06-13 14:16:35,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 14:16:35,470.470 INFO    ] 200
[2026-06-13 14:16:35,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:35,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:16:35,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:16:35,536.536 INFO    ] No camera update needed
[2026-06-13 14:16:35,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:16:35,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:16:35,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:16:35,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:16:37,582.582 INFO    ] ================================================
[2026-06-13 14:16:37,597.597 INFO    ] Launching Daemon at Sat Jun 13 14:16:37 IST 2026
[2026-06-13 14:16:37,609.609 INFO    ] ================================================
[2026-06-13 14:16:37,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:16:37
[2026-06-13 14:16:38,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:16:38,477.477 INFO    ] Initializing speech engine...
[2026-06-13 14:16:38,481.481 INFO    ] 2026-06-13 14:16:38
[2026-06-13 14:16:38,687.687 INFO    ] 2026-06-13 14:16:38
[2026-06-13 14:16:38,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:16:38,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:16:38,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:16:39,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:16:39,108.108 INFO    ] time= 13/06/2026 14:16:39
[2026-06-13 14:16:39,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:16:39,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:16:39,204.204 INFO    ] No existing commands found in stream
[2026-06-13 14:16:44,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:16:44,214.214 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 14:16:46,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:16:46,606.606 INFO    ] Checking for system updates...
[2026-06-13 14:16:46,646.646 INFO    ] 200
[2026-06-13 14:16:46,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:46,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:16:46,713.713 INFO    ] No update needed
[2026-06-13 14:16:46,716.716 INFO    ] Checking for camera pi updates...
[2026-06-13 14:16:46,754.754 INFO    ] 200
[2026-06-13 14:16:46,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:16:46,809.809 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:16:46,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:16:46,972.972 INFO    ] No camera update needed
[2026-06-13 14:16:46,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:16:46,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:16:46,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:16:46,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:16:49,039.039 INFO    ] ================================================
[2026-06-13 14:16:49,055.055 INFO    ] Launching Daemon at Sat Jun 13 14:16:49 IST 2026
[2026-06-13 14:16:49,067.067 INFO    ] ================================================
[2026-06-13 14:16:49,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:16:49
[2026-06-13 14:16:49,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:16:50,057.057 INFO    ] Initializing speech engine...
[2026-06-13 14:16:50,061.061 INFO    ] 2026-06-13 14:16:50
[2026-06-13 14:16:50,265.265 INFO    ] 2026-06-13 14:16:50
[2026-06-13 14:16:50,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:16:50,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:16:50,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:16:50,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:16:50,564.564 INFO    ] time= 13/06/2026 14:16:50
[2026-06-13 14:16:50,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:16:50,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:16:50,710.710 INFO    ] No existing commands found in stream
[2026-06-13 14:16:55,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:16:55,731.731 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 14:17:00,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:17:00,021.021 INFO    ] Checking for system updates...
[2026-06-13 14:17:00,042.042 INFO    ] 200
[2026-06-13 14:17:00,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:00,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:00,075.075 INFO    ] No update needed
[2026-06-13 14:17:00,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:00,095.095 INFO    ] 200
[2026-06-13 14:17:00,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:00,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:00,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:00,166.166 INFO    ] No camera update needed
[2026-06-13 14:17:00,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:00,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:00,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:00,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:02,207.207 INFO    ] ================================================
[2026-06-13 14:17:02,217.217 INFO    ] Launching Daemon at Sat Jun 13 14:17:02 IST 2026
[2026-06-13 14:17:02,225.225 INFO    ] ================================================
[2026-06-13 14:17:02,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:02
[2026-06-13 14:17:03,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:17:03,338.338 INFO    ] Initializing speech engine...
[2026-06-13 14:17:03,346.346 INFO    ] 2026-06-13 14:17:03
[2026-06-13 14:17:03,607.607 INFO    ] 2026-06-13 14:17:03
[2026-06-13 14:17:03,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:17:03,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:17:03,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:17:03,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:17:03,967.967 INFO    ] time= 13/06/2026 14:17:03
[2026-06-13 14:17:03,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:17:03,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:17:04,042.042 INFO    ] No existing commands found in stream
[2026-06-13 14:17:09,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:17:09,053.053 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 14:17:11,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:17:11,969.969 INFO    ] Checking for system updates...
[2026-06-13 14:17:11,990.990 INFO    ] 200
[2026-06-13 14:17:11,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:12,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:12,023.023 INFO    ] No update needed
[2026-06-13 14:17:12,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:12,045.045 INFO    ] 200
[2026-06-13 14:17:12,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:12,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:12,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:12,114.114 INFO    ] No camera update needed
[2026-06-13 14:17:12,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:12,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:12,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:12,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:14,162.162 INFO    ] ================================================
[2026-06-13 14:17:14,177.177 INFO    ] Launching Daemon at Sat Jun 13 14:17:14 IST 2026
[2026-06-13 14:17:14,189.189 INFO    ] ================================================
[2026-06-13 14:17:14,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:14
[2026-06-13 14:17:14,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:17:15,029.029 INFO    ] Initializing speech engine...
[2026-06-13 14:17:15,034.034 INFO    ] 2026-06-13 14:17:15
[2026-06-13 14:17:15,248.248 INFO    ] 2026-06-13 14:17:15
[2026-06-13 14:17:15,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:17:15,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:17:15,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:17:15,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:17:15,666.666 INFO    ] time= 13/06/2026 14:17:15
[2026-06-13 14:17:15,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:17:15,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:17:15,773.773 INFO    ] No existing commands found in stream
[2026-06-13 14:17:20,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:17:20,785.785 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 14:17:22,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:17:22,340.340 INFO    ] Checking for system updates...
[2026-06-13 14:17:22,361.361 INFO    ] 200
[2026-06-13 14:17:22,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:22,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:22,394.394 INFO    ] No update needed
[2026-06-13 14:17:22,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:22,415.415 INFO    ] 200
[2026-06-13 14:17:22,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:22,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:22,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:22,478.478 INFO    ] No camera update needed
[2026-06-13 14:17:22,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:22,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:22,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:22,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:24,528.528 INFO    ] ================================================
[2026-06-13 14:17:24,544.544 INFO    ] Launching Daemon at Sat Jun 13 14:17:24 IST 2026
[2026-06-13 14:17:24,555.555 INFO    ] ================================================
[2026-06-13 14:17:24,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:24
[2026-06-13 14:17:25,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:17:25,363.363 INFO    ] Initializing speech engine...
[2026-06-13 14:17:25,373.373 INFO    ] 2026-06-13 14:17:25
[2026-06-13 14:17:25,570.570 INFO    ] 2026-06-13 14:17:25
[2026-06-13 14:17:25,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:17:25,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:17:25,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:17:25,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:17:25,961.961 INFO    ] time= 13/06/2026 14:17:25
[2026-06-13 14:17:26,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:17:26,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:17:26,192.192 INFO    ] No existing commands found in stream
[2026-06-13 14:17:31,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:17:31,220.220 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 14:17:34,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:17:34,270.270 INFO    ] Checking for system updates...
[2026-06-13 14:17:34,292.292 INFO    ] 200
[2026-06-13 14:17:34,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:34,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:34,325.325 INFO    ] No update needed
[2026-06-13 14:17:34,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:34,346.346 INFO    ] 200
[2026-06-13 14:17:34,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:34,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:34,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:34,422.422 INFO    ] No camera update needed
[2026-06-13 14:17:34,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:34,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:34,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:34,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:36,469.469 INFO    ] ================================================
[2026-06-13 14:17:36,485.485 INFO    ] Launching Daemon at Sat Jun 13 14:17:36 IST 2026
[2026-06-13 14:17:36,495.495 INFO    ] ================================================
[2026-06-13 14:17:36,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:36
[2026-06-13 14:17:37,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:17:37,275.275 INFO    ] Initializing speech engine...
[2026-06-13 14:17:37,288.288 INFO    ] 2026-06-13 14:17:37
[2026-06-13 14:17:37,505.505 INFO    ] 2026-06-13 14:17:37
[2026-06-13 14:17:37,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:17:37,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:17:37,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:17:37,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:17:37,904.904 INFO    ] time= 13/06/2026 14:17:37
[2026-06-13 14:17:37,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:17:37,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:17:38,061.061 INFO    ] No existing commands found in stream
[2026-06-13 14:17:43,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:17:43,075.075 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 14:17:46,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:17:46,755.755 INFO    ] Checking for system updates...
[2026-06-13 14:17:46,776.776 INFO    ] 200
[2026-06-13 14:17:46,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:46,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:46,810.810 INFO    ] No update needed
[2026-06-13 14:17:46,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:46,831.831 INFO    ] 200
[2026-06-13 14:17:46,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:46,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:46,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:17:46,911.911 INFO    ] No camera update needed
[2026-06-13 14:17:46,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:46,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:46,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:46,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:48,961.961 INFO    ] ================================================
[2026-06-13 14:17:48,976.976 INFO    ] Launching Daemon at Sat Jun 13 14:17:48 IST 2026
[2026-06-13 14:17:48,986.986 INFO    ] ================================================
[2026-06-13 14:17:49,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:49
[2026-06-13 14:17:49,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:17:49,839.839 INFO    ] Initializing speech engine...
[2026-06-13 14:17:49,841.841 INFO    ] 2026-06-13 14:17:49
[2026-06-13 14:17:50,053.053 INFO    ] 2026-06-13 14:17:50
[2026-06-13 14:17:50,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:17:50,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:17:50,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:17:50,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:17:50,466.466 INFO    ] time= 13/06/2026 14:17:50
[2026-06-13 14:17:50,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:17:50,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:17:50,573.573 INFO    ] No existing commands found in stream
[2026-06-13 14:17:55,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:17:55,585.585 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 14:17:56,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:17:56,737.737 INFO    ] Checking for system updates...
[2026-06-13 14:17:56,759.759 INFO    ] 200
[2026-06-13 14:17:56,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:56,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:56,796.796 INFO    ] No update needed
[2026-06-13 14:17:56,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 14:17:56,817.817 INFO    ] 200
[2026-06-13 14:17:56,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:17:56,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:17:56,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:17:56,880.880 INFO    ] No camera update needed
[2026-06-13 14:17:56,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:17:56,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:17:56,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:17:56,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:17:58,929.929 INFO    ] ================================================
[2026-06-13 14:17:58,945.945 INFO    ] Launching Daemon at Sat Jun 13 14:17:58 IST 2026
[2026-06-13 14:17:58,956.956 INFO    ] ================================================
[2026-06-13 14:17:59,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:17:59
[2026-06-13 14:17:59,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:00,217.217 INFO    ] Initializing speech engine...
[2026-06-13 14:18:00,223.223 INFO    ] 2026-06-13 14:18:00
[2026-06-13 14:18:00,518.518 INFO    ] 2026-06-13 14:18:00
[2026-06-13 14:18:00,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:00,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:00,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:00,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:00,874.874 INFO    ] time= 13/06/2026 14:18:00
[2026-06-13 14:18:00,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:00,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:00,953.953 INFO    ] No existing commands found in stream
[2026-06-13 14:18:05,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:18:05,963.963 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 14:18:08,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:18:08,679.679 INFO    ] Checking for system updates...
[2026-06-13 14:18:08,700.700 INFO    ] 200
[2026-06-13 14:18:08,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:08,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:18:08,734.734 INFO    ] No update needed
[2026-06-13 14:18:08,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 14:18:08,754.754 INFO    ] 200
[2026-06-13 14:18:08,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:08,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:18:08,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:18:08,816.816 INFO    ] No camera update needed
[2026-06-13 14:18:08,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:18:08,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:18:08,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:18:08,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:18:10,863.863 INFO    ] ================================================
[2026-06-13 14:18:10,879.879 INFO    ] Launching Daemon at Sat Jun 13 14:18:10 IST 2026
[2026-06-13 14:18:10,890.890 INFO    ] ================================================
[2026-06-13 14:18:11,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:18:11
[2026-06-13 14:18:11,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:11,725.725 INFO    ] Initializing speech engine...
[2026-06-13 14:18:11,731.731 INFO    ] 2026-06-13 14:18:11
[2026-06-13 14:18:11,936.936 INFO    ] 2026-06-13 14:18:11
[2026-06-13 14:18:11,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:12,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:12,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:12,338.338 INFO    ] time= 13/06/2026 14:18:12
[2026-06-13 14:18:12,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:12,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:12,454.454 INFO    ] No existing commands found in stream
[2026-06-13 14:18:17,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:18:17,472.472 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 14:18:21,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:18:21,570.570 INFO    ] Checking for system updates...
[2026-06-13 14:18:21,591.591 INFO    ] 200
[2026-06-13 14:18:21,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:21,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:21,625.625 INFO    ] No update needed
[2026-06-13 14:18:21,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 14:18:21,650.650 INFO    ] 200
[2026-06-13 14:18:21,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:21,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:18:21,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:21,714.714 INFO    ] No camera update needed
[2026-06-13 14:18:21,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:18:21,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:18:21,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:18:21,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:18:23,763.763 INFO    ] ================================================
[2026-06-13 14:18:23,778.778 INFO    ] Launching Daemon at Sat Jun 13 14:18:23 IST 2026
[2026-06-13 14:18:23,789.789 INFO    ] ================================================
[2026-06-13 14:18:24,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:18:24
[2026-06-13 14:18:24,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:24,617.617 INFO    ] Initializing speech engine...
[2026-06-13 14:18:24,622.622 INFO    ] 2026-06-13 14:18:24
[2026-06-13 14:18:24,826.826 INFO    ] 2026-06-13 14:18:24
[2026-06-13 14:18:24,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:25,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:25,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:25,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:25,226.226 INFO    ] time= 13/06/2026 14:18:25
[2026-06-13 14:18:25,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:25,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:25,345.345 INFO    ] No existing commands found in stream
[2026-06-13 14:18:30,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:18:30,359.359 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 14:18:34,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:18:34,466.466 INFO    ] Checking for system updates...
[2026-06-13 14:18:34,487.487 INFO    ] 200
[2026-06-13 14:18:34,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:34,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:18:34,523.523 INFO    ] No update needed
[2026-06-13 14:18:34,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 14:18:34,547.547 INFO    ] 200
[2026-06-13 14:18:34,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:34,573.573 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:18:34,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:18:34,618.618 INFO    ] No camera update needed
[2026-06-13 14:18:34,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:18:34,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:18:34,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:18:34,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:18:36,666.666 INFO    ] ================================================
[2026-06-13 14:18:36,682.682 INFO    ] Launching Daemon at Sat Jun 13 14:18:36 IST 2026
[2026-06-13 14:18:36,693.693 INFO    ] ================================================
[2026-06-13 14:18:37,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:18:37
[2026-06-13 14:18:37,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:37,476.476 INFO    ] Initializing speech engine...
[2026-06-13 14:18:37,480.480 INFO    ] 2026-06-13 14:18:37
[2026-06-13 14:18:37,682.682 INFO    ] 2026-06-13 14:18:37
[2026-06-13 14:18:37,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:37,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:37,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:38,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:38,082.082 INFO    ] time= 13/06/2026 14:18:38
[2026-06-13 14:18:38,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:38,195.195 INFO    ] No existing commands found in stream
[2026-06-13 14:18:43,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:18:43,209.209 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 14:18:44,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:18:44,905.905 INFO    ] Checking for system updates...
[2026-06-13 14:18:44,926.926 INFO    ] 200
[2026-06-13 14:18:44,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:44,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:44,960.960 INFO    ] No update needed
[2026-06-13 14:18:44,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 14:18:44,985.985 INFO    ] 200
[2026-06-13 14:18:44,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:45,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:18:45,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:45,054.054 INFO    ] No camera update needed
[2026-06-13 14:18:45,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:18:45,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:18:45,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:18:45,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:18:47,101.101 INFO    ] ================================================
[2026-06-13 14:18:47,117.117 INFO    ] Launching Daemon at Sat Jun 13 14:18:47 IST 2026
[2026-06-13 14:18:47,128.128 INFO    ] ================================================
[2026-06-13 14:18:47,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:18:47
[2026-06-13 14:18:47,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:47,951.951 INFO    ] Initializing speech engine...
[2026-06-13 14:18:47,963.963 INFO    ] 2026-06-13 14:18:47
[2026-06-13 14:18:48,171.171 INFO    ] 2026-06-13 14:18:48
[2026-06-13 14:18:48,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:48,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:48,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:48,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:48,569.569 INFO    ] time= 13/06/2026 14:18:48
[2026-06-13 14:18:48,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:48,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:48,685.685 INFO    ] No existing commands found in stream
[2026-06-13 14:18:53,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:18:53,697.697 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 14:18:55,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:18:55,291.291 INFO    ] Checking for system updates...
[2026-06-13 14:18:55,313.313 INFO    ] 200
[2026-06-13 14:18:55,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:55,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:55,346.346 INFO    ] No update needed
[2026-06-13 14:18:55,347.347 INFO    ] Checking for camera pi updates...
[2026-06-13 14:18:55,367.367 INFO    ] 200
[2026-06-13 14:18:55,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:18:55,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:18:55,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:18:55,543.543 INFO    ] No camera update needed
[2026-06-13 14:18:55,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:18:55,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:18:55,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:18:55,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:18:57,592.592 INFO    ] ================================================
[2026-06-13 14:18:57,611.611 INFO    ] Launching Daemon at Sat Jun 13 14:18:57 IST 2026
[2026-06-13 14:18:57,623.623 INFO    ] ================================================
[2026-06-13 14:18:57,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:18:57
[2026-06-13 14:18:58,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:18:58,402.402 INFO    ] Initializing speech engine...
[2026-06-13 14:18:58,407.407 INFO    ] 2026-06-13 14:18:58
[2026-06-13 14:18:58,611.611 INFO    ] 2026-06-13 14:18:58
[2026-06-13 14:18:58,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:18:58,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:18:58,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:18:58,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:18:59,025.025 INFO    ] time= 13/06/2026 14:18:58
[2026-06-13 14:18:59,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:18:59,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:18:59,125.125 INFO    ] No existing commands found in stream
[2026-06-13 14:19:04,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:19:04,139.139 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 14:19:07,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:19:07,031.031 INFO    ] Checking for system updates...
[2026-06-13 14:19:07,053.053 INFO    ] 200
[2026-06-13 14:19:07,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:07,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:07,085.085 INFO    ] No update needed
[2026-06-13 14:19:07,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 14:19:07,109.109 INFO    ] 200
[2026-06-13 14:19:07,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:07,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:19:07,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:07,181.181 INFO    ] No camera update needed
[2026-06-13 14:19:07,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:19:07,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:19:07,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:19:07,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:19:09,229.229 INFO    ] ================================================
[2026-06-13 14:19:09,247.247 INFO    ] Launching Daemon at Sat Jun 13 14:19:09 IST 2026
[2026-06-13 14:19:09,258.258 INFO    ] ================================================
[2026-06-13 14:19:09,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:19:09
[2026-06-13 14:19:09,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:19:10,070.070 INFO    ] Initializing speech engine...
[2026-06-13 14:19:10,076.076 INFO    ] 2026-06-13 14:19:10
[2026-06-13 14:19:10,279.279 INFO    ] 2026-06-13 14:19:10
[2026-06-13 14:19:10,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:19:10,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:19:10,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:19:10,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:19:10,678.678 INFO    ] time= 13/06/2026 14:19:10
[2026-06-13 14:19:10,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:19:10,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:19:10,800.800 INFO    ] No existing commands found in stream
[2026-06-13 14:19:15,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:19:15,813.813 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 14:19:18,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:19:18,599.599 INFO    ] Checking for system updates...
[2026-06-13 14:19:18,620.620 INFO    ] 200
[2026-06-13 14:19:18,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:18,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:18,653.653 INFO    ] No update needed
[2026-06-13 14:19:18,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 14:19:18,675.675 INFO    ] 200
[2026-06-13 14:19:18,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:18,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:19:18,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:18,743.743 INFO    ] No camera update needed
[2026-06-13 14:19:18,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:19:18,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:19:18,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:19:18,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:19:20,791.791 INFO    ] ================================================
[2026-06-13 14:19:20,806.806 INFO    ] Launching Daemon at Sat Jun 13 14:19:20 IST 2026
[2026-06-13 14:19:20,816.816 INFO    ] ================================================
[2026-06-13 14:19:21,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:19:21
[2026-06-13 14:19:21,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:19:21,668.668 INFO    ] Initializing speech engine...
[2026-06-13 14:19:21,674.674 INFO    ] 2026-06-13 14:19:21
[2026-06-13 14:19:21,881.881 INFO    ] 2026-06-13 14:19:21
[2026-06-13 14:19:21,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:19:22,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:19:22,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:19:22,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:19:22,286.286 INFO    ] time= 13/06/2026 14:19:22
[2026-06-13 14:19:22,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:19:22,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:19:22,397.397 INFO    ] No existing commands found in stream
[2026-06-13 14:19:27,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:19:27,409.409 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 14:19:30,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:19:30,341.341 INFO    ] Checking for system updates...
[2026-06-13 14:19:30,362.362 INFO    ] 200
[2026-06-13 14:19:30,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:30,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:19:30,396.396 INFO    ] No update needed
[2026-06-13 14:19:30,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 14:19:30,418.418 INFO    ] 200
[2026-06-13 14:19:30,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:30,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:19:30,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:19:30,485.485 INFO    ] No camera update needed
[2026-06-13 14:19:30,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:19:30,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:19:30,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:19:30,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:19:32,525.525 INFO    ] ================================================
[2026-06-13 14:19:32,535.535 INFO    ] Launching Daemon at Sat Jun 13 14:19:32 IST 2026
[2026-06-13 14:19:32,541.541 INFO    ] ================================================
[2026-06-13 14:19:32,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:19:32
[2026-06-13 14:19:33,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:19:33,323.323 INFO    ] Initializing speech engine...
[2026-06-13 14:19:33,333.333 INFO    ] 2026-06-13 14:19:33
[2026-06-13 14:19:33,536.536 INFO    ] 2026-06-13 14:19:33
[2026-06-13 14:19:33,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:19:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:19:33,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:19:33,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:19:33,951.951 INFO    ] time= 13/06/2026 14:19:33
[2026-06-13 14:19:33,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:19:33,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:19:34,051.051 INFO    ] No existing commands found in stream
[2026-06-13 14:19:39,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:19:39,062.062 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 14:19:40,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:19:40,990.990 INFO    ] Checking for system updates...
[2026-06-13 14:19:41,011.011 INFO    ] 200
[2026-06-13 14:19:41,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:41,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:41,047.047 INFO    ] No update needed
[2026-06-13 14:19:41,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 14:19:41,069.069 INFO    ] 200
[2026-06-13 14:19:41,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:41,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:19:41,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:41,135.135 INFO    ] No camera update needed
[2026-06-13 14:19:41,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:19:41,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:19:41,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:19:41,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:19:43,182.182 INFO    ] ================================================
[2026-06-13 14:19:43,197.197 INFO    ] Launching Daemon at Sat Jun 13 14:19:43 IST 2026
[2026-06-13 14:19:43,207.207 INFO    ] ================================================
[2026-06-13 14:19:43,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:19:43
[2026-06-13 14:19:43,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:19:44,012.012 INFO    ] Initializing speech engine...
[2026-06-13 14:19:44,017.017 INFO    ] 2026-06-13 14:19:44
[2026-06-13 14:19:44,245.245 INFO    ] 2026-06-13 14:19:44
[2026-06-13 14:19:44,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:19:44,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:19:44,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:19:44,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:19:44,617.617 INFO    ] time= 13/06/2026 14:19:44
[2026-06-13 14:19:44,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:19:44,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:19:44,822.822 INFO    ] No existing commands found in stream
[2026-06-13 14:19:49,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:19:49,834.834 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 14:19:52,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:19:52,751.751 INFO    ] Checking for system updates...
[2026-06-13 14:19:52,772.772 INFO    ] 200
[2026-06-13 14:19:52,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:52,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:19:52,808.808 INFO    ] No update needed
[2026-06-13 14:19:52,809.809 INFO    ] Checking for camera pi updates...
[2026-06-13 14:19:52,829.829 INFO    ] 200
[2026-06-13 14:19:52,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:19:52,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:19:52,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:19:52,890.890 INFO    ] No camera update needed
[2026-06-13 14:19:52,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:19:52,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:19:52,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:19:52,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:19:54,936.936 INFO    ] ================================================
[2026-06-13 14:19:54,952.952 INFO    ] Launching Daemon at Sat Jun 13 14:19:54 IST 2026
[2026-06-13 14:19:54,963.963 INFO    ] ================================================
[2026-06-13 14:19:55,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:19:55
[2026-06-13 14:19:55,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:19:55,748.748 INFO    ] Initializing speech engine...
[2026-06-13 14:19:55,753.753 INFO    ] 2026-06-13 14:19:55
[2026-06-13 14:19:55,967.967 INFO    ] 2026-06-13 14:19:55
[2026-06-13 14:19:55,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:19:56,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:19:56,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:19:56,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:19:56,387.387 INFO    ] time= 13/06/2026 14:19:56
[2026-06-13 14:19:56,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:19:56,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:19:56,517.517 INFO    ] No existing commands found in stream
[2026-06-13 14:20:01,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:20:01,529.529 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 14:20:07,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:20:07,893.893 INFO    ] Checking for system updates...
[2026-06-13 14:20:07,929.929 INFO    ] 200
[2026-06-13 14:20:07,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:07,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:20:07,992.992 INFO    ] No update needed
[2026-06-13 14:20:07,993.993 INFO    ] Checking for camera pi updates...
[2026-06-13 14:20:08,021.021 INFO    ] 200
[2026-06-13 14:20:08,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:08,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:20:08,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:20:08,097.097 INFO    ] No camera update needed
[2026-06-13 14:20:08,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:20:08,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:20:08,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:20:08,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:20:10,153.153 INFO    ] ================================================
[2026-06-13 14:20:10,168.168 INFO    ] Launching Daemon at Sat Jun 13 14:20:10 IST 2026
[2026-06-13 14:20:10,179.179 INFO    ] ================================================
[2026-06-13 14:20:10,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:20:10
[2026-06-13 14:20:11,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:20:11,426.426 INFO    ] Initializing speech engine...
[2026-06-13 14:20:11,432.432 INFO    ] 2026-06-13 14:20:11
[2026-06-13 14:20:11,641.641 INFO    ] 2026-06-13 14:20:11
[2026-06-13 14:20:11,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:20:11,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:20:11,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:20:11,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:20:11,926.926 INFO    ] time= 13/06/2026 14:20:11
[2026-06-13 14:20:11,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:20:11,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:20:12,037.037 INFO    ] No existing commands found in stream
[2026-06-13 14:20:17,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:20:17,075.075 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 14:20:21,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:20:21,292.292 INFO    ] Checking for system updates...
[2026-06-13 14:20:21,313.313 INFO    ] 200
[2026-06-13 14:20:21,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:21,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:21,347.347 INFO    ] No update needed
[2026-06-13 14:20:21,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 14:20:21,369.369 INFO    ] 200
[2026-06-13 14:20:21,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:21,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:20:21,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:21,433.433 INFO    ] No camera update needed
[2026-06-13 14:20:21,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:20:21,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:20:21,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:20:21,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:20:23,480.480 INFO    ] ================================================
[2026-06-13 14:20:23,495.495 INFO    ] Launching Daemon at Sat Jun 13 14:20:23 IST 2026
[2026-06-13 14:20:23,505.505 INFO    ] ================================================
[2026-06-13 14:20:23,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:20:23
[2026-06-13 14:20:24,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:20:24,320.320 INFO    ] Initializing speech engine...
[2026-06-13 14:20:24,328.328 INFO    ] 2026-06-13 14:20:24
[2026-06-13 14:20:24,552.552 INFO    ] 2026-06-13 14:20:24
[2026-06-13 14:20:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:20:24,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:20:24,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:20:24,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:20:24,973.973 INFO    ] time= 13/06/2026 14:20:24
[2026-06-13 14:20:25,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:20:25,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:20:25,128.128 INFO    ] No existing commands found in stream
[2026-06-13 14:20:30,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:20:30,150.150 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 14:20:33,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:20:33,086.086 INFO    ] Checking for system updates...
[2026-06-13 14:20:33,107.107 INFO    ] 200
[2026-06-13 14:20:33,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:33,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:33,143.143 INFO    ] No update needed
[2026-06-13 14:20:33,144.144 INFO    ] Checking for camera pi updates...
[2026-06-13 14:20:33,163.163 INFO    ] 200
[2026-06-13 14:20:33,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:33,189.189 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:20:33,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:33,227.227 INFO    ] No camera update needed
[2026-06-13 14:20:33,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:20:33,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:20:33,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:20:33,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:20:35,272.272 INFO    ] ================================================
[2026-06-13 14:20:35,287.287 INFO    ] Launching Daemon at Sat Jun 13 14:20:35 IST 2026
[2026-06-13 14:20:35,297.297 INFO    ] ================================================
[2026-06-13 14:20:35,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:20:35
[2026-06-13 14:20:35,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:20:36,100.100 INFO    ] Initializing speech engine...
[2026-06-13 14:20:36,105.105 INFO    ] 2026-06-13 14:20:36
[2026-06-13 14:20:36,357.357 INFO    ] 2026-06-13 14:20:36
[2026-06-13 14:20:36,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:20:36,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:20:36,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:20:36,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:20:36,735.735 INFO    ] time= 13/06/2026 14:20:36
[2026-06-13 14:20:36,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:20:36,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:20:36,815.815 INFO    ] No existing commands found in stream
[2026-06-13 14:20:41,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:20:41,831.831 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 14:20:44,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:20:44,241.241 INFO    ] Checking for system updates...
[2026-06-13 14:20:44,262.262 INFO    ] 200
[2026-06-13 14:20:44,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:44,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:44,296.296 INFO    ] No update needed
[2026-06-13 14:20:44,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 14:20:44,316.316 INFO    ] 200
[2026-06-13 14:20:44,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:44,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:20:44,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:20:44,387.387 INFO    ] No camera update needed
[2026-06-13 14:20:44,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:20:44,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:20:44,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:20:44,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:20:46,434.434 INFO    ] ================================================
[2026-06-13 14:20:46,449.449 INFO    ] Launching Daemon at Sat Jun 13 14:20:46 IST 2026
[2026-06-13 14:20:46,460.460 INFO    ] ================================================
[2026-06-13 14:20:46,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:20:46
[2026-06-13 14:20:47,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:20:47,262.262 INFO    ] Initializing speech engine...
[2026-06-13 14:20:47,273.273 INFO    ] 2026-06-13 14:20:47
[2026-06-13 14:20:47,478.478 INFO    ] 2026-06-13 14:20:47
[2026-06-13 14:20:47,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:20:47,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:20:47,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:20:47,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:20:47,820.820 INFO    ] time= 13/06/2026 14:20:47
[2026-06-13 14:20:47,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:20:47,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:20:47,935.935 INFO    ] No existing commands found in stream
[2026-06-13 14:20:52,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:20:52,951.951 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 14:20:53,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:20:53,436.436 INFO    ] Checking for system updates...
[2026-06-13 14:20:53,457.457 INFO    ] 200
[2026-06-13 14:20:53,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:53,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:20:53,491.491 INFO    ] No update needed
[2026-06-13 14:20:53,493.493 INFO    ] Checking for camera pi updates...
[2026-06-13 14:20:53,512.512 INFO    ] 200
[2026-06-13 14:20:53,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:20:53,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:20:53,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:20:53,576.576 INFO    ] No camera update needed
[2026-06-13 14:20:53,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:20:53,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:20:53,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:20:53,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:20:55,622.622 INFO    ] ================================================
[2026-06-13 14:20:55,637.637 INFO    ] Launching Daemon at Sat Jun 13 14:20:55 IST 2026
[2026-06-13 14:20:55,648.648 INFO    ] ================================================
[2026-06-13 14:20:56,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:20:56
[2026-06-13 14:20:56,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:20:56,467.467 INFO    ] Initializing speech engine...
[2026-06-13 14:20:56,477.477 INFO    ] 2026-06-13 14:20:56
[2026-06-13 14:20:56,682.682 INFO    ] 2026-06-13 14:20:56
[2026-06-13 14:20:56,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:20:56,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:20:56,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:20:57,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:20:57,095.095 INFO    ] time= 13/06/2026 14:20:57
[2026-06-13 14:20:57,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:20:57,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:20:57,219.219 INFO    ] No existing commands found in stream
[2026-06-13 14:21:02,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:21:02,231.231 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 14:21:06,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:21:06,545.545 INFO    ] Checking for system updates...
[2026-06-13 14:21:06,568.568 INFO    ] 200
[2026-06-13 14:21:06,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:06,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:21:06,601.601 INFO    ] No update needed
[2026-06-13 14:21:06,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 14:21:06,625.625 INFO    ] 200
[2026-06-13 14:21:06,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:06,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:21:06,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:21:06,678.678 INFO    ] No camera update needed
[2026-06-13 14:21:06,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:21:06,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:21:06,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:21:06,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:21:08,726.726 INFO    ] ================================================
[2026-06-13 14:21:08,743.743 INFO    ] Launching Daemon at Sat Jun 13 14:21:08 IST 2026
[2026-06-13 14:21:08,754.754 INFO    ] ================================================
[2026-06-13 14:21:09,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:21:09
[2026-06-13 14:21:09,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:21:09,564.564 INFO    ] Initializing speech engine...
[2026-06-13 14:21:09,569.569 INFO    ] 2026-06-13 14:21:09
[2026-06-13 14:21:09,775.775 INFO    ] 2026-06-13 14:21:09
[2026-06-13 14:21:09,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:21:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:21:10,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:21:10,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:21:10,191.191 INFO    ] time= 13/06/2026 14:21:10
[2026-06-13 14:21:10,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:21:10,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:21:10,298.298 INFO    ] No existing commands found in stream
[2026-06-13 14:21:15,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:21:15,310.310 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 14:21:16,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:21:16,950.950 INFO    ] Checking for system updates...
[2026-06-13 14:21:16,970.970 INFO    ] 200
[2026-06-13 14:21:16,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:17,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:21:17,006.006 INFO    ] No update needed
[2026-06-13 14:21:17,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 14:21:17,027.027 INFO    ] 200
[2026-06-13 14:21:17,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:17,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:21:17,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:21:17,100.100 INFO    ] No camera update needed
[2026-06-13 14:21:17,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:21:17,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:21:17,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:21:17,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:21:19,149.149 INFO    ] ================================================
[2026-06-13 14:21:19,165.165 INFO    ] Launching Daemon at Sat Jun 13 14:21:19 IST 2026
[2026-06-13 14:21:19,176.176 INFO    ] ================================================
[2026-06-13 14:21:19,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:21:19
[2026-06-13 14:21:19,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:21:19,993.993 INFO    ] Initializing speech engine...
[2026-06-13 14:21:20,001.001 INFO    ] 2026-06-13 14:21:19
[2026-06-13 14:21:20,220.220 INFO    ] 2026-06-13 14:21:20
[2026-06-13 14:21:20,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:21:20,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:21:20,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:21:20,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:21:20,654.654 INFO    ] time= 13/06/2026 14:21:20
[2026-06-13 14:21:20,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:21:20,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:21:20,784.784 INFO    ] No existing commands found in stream
[2026-06-13 14:21:25,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:21:25,802.802 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 14:21:28,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:21:28,529.529 INFO    ] Checking for system updates...
[2026-06-13 14:21:28,550.550 INFO    ] 200
[2026-06-13 14:21:28,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:28,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:21:28,584.584 INFO    ] No update needed
[2026-06-13 14:21:28,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 14:21:28,605.605 INFO    ] 200
[2026-06-13 14:21:28,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:28,632.632 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:21:28,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:21:28,671.671 INFO    ] No camera update needed
[2026-06-13 14:21:28,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:21:28,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:21:28,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:21:28,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:21:30,718.718 INFO    ] ================================================
[2026-06-13 14:21:30,734.734 INFO    ] Launching Daemon at Sat Jun 13 14:21:30 IST 2026
[2026-06-13 14:21:30,745.745 INFO    ] ================================================
[2026-06-13 14:21:31,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:21:31
[2026-06-13 14:21:31,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:21:31,596.596 INFO    ] Initializing speech engine...
[2026-06-13 14:21:31,603.603 INFO    ] 2026-06-13 14:21:31
[2026-06-13 14:21:31,823.823 INFO    ] 2026-06-13 14:21:31
[2026-06-13 14:21:31,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:21:32,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:21:32,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:21:32,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:21:32,232.232 INFO    ] time= 13/06/2026 14:21:32
[2026-06-13 14:21:32,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:21:32,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:21:32,380.380 INFO    ] No existing commands found in stream
[2026-06-13 14:21:37,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:21:37,411.411 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 14:21:39,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:21:39,563.563 INFO    ] Checking for system updates...
[2026-06-13 14:21:39,583.583 INFO    ] 200
[2026-06-13 14:21:39,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:39,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:21:39,623.623 INFO    ] No update needed
[2026-06-13 14:21:39,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 14:21:39,644.644 INFO    ] 200
[2026-06-13 14:21:39,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:39,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:21:39,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:21:39,708.708 INFO    ] No camera update needed
[2026-06-13 14:21:39,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:21:39,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:21:39,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:21:39,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:21:41,757.757 INFO    ] ================================================
[2026-06-13 14:21:41,772.772 INFO    ] Launching Daemon at Sat Jun 13 14:21:41 IST 2026
[2026-06-13 14:21:41,784.784 INFO    ] ================================================
[2026-06-13 14:21:42,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:21:42
[2026-06-13 14:21:42,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:21:42,596.596 INFO    ] Initializing speech engine...
[2026-06-13 14:21:42,601.601 INFO    ] 2026-06-13 14:21:42
[2026-06-13 14:21:42,808.808 INFO    ] 2026-06-13 14:21:42
[2026-06-13 14:21:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:21:43,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:21:43,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:21:43,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:21:43,227.227 INFO    ] time= 13/06/2026 14:21:43
[2026-06-13 14:21:43,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:21:43,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:21:43,324.324 INFO    ] No existing commands found in stream
[2026-06-13 14:21:48,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:21:48,337.337 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 14:21:52,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:21:52,412.412 INFO    ] Checking for system updates...
[2026-06-13 14:21:52,433.433 INFO    ] 200
[2026-06-13 14:21:52,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:52,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:21:52,469.469 INFO    ] No update needed
[2026-06-13 14:21:52,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 14:21:52,491.491 INFO    ] 200
[2026-06-13 14:21:52,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:21:52,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:21:52,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:21:52,560.560 INFO    ] No camera update needed
[2026-06-13 14:21:52,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:21:52,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:21:52,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:21:52,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:21:54,607.607 INFO    ] ================================================
[2026-06-13 14:21:54,622.622 INFO    ] Launching Daemon at Sat Jun 13 14:21:54 IST 2026
[2026-06-13 14:21:54,634.634 INFO    ] ================================================
[2026-06-13 14:21:54,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:21:54
[2026-06-13 14:21:55,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:21:55,958.958 INFO    ] Initializing speech engine...
[2026-06-13 14:21:55,967.967 INFO    ] 2026-06-13 14:21:55
[2026-06-13 14:21:56,216.216 INFO    ] 2026-06-13 14:21:56
[2026-06-13 14:21:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:21:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:21:56,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:21:56,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:21:56,554.554 INFO    ] time= 13/06/2026 14:21:56
[2026-06-13 14:21:56,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:21:56,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:21:56,668.668 INFO    ] No existing commands found in stream
[2026-06-13 14:22:01,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:01,682.682 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 14:22:04,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:22:04,802.802 INFO    ] Checking for system updates...
[2026-06-13 14:22:04,823.823 INFO    ] 200
[2026-06-13 14:22:04,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:04,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:04,856.856 INFO    ] No update needed
[2026-06-13 14:22:04,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:04,879.879 INFO    ] 200
[2026-06-13 14:22:04,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:04,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:04,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:04,940.940 INFO    ] No camera update needed
[2026-06-13 14:22:04,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:04,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:04,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:22:06,989.989 INFO    ] ================================================
[2026-06-13 14:22:07,005.005 INFO    ] Launching Daemon at Sat Jun 13 14:22:06 IST 2026
[2026-06-13 14:22:07,016.016 INFO    ] ================================================
[2026-06-13 14:22:07,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:22:07
[2026-06-13 14:22:07,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:22:07,816.816 INFO    ] Initializing speech engine...
[2026-06-13 14:22:07,821.821 INFO    ] 2026-06-13 14:22:07
[2026-06-13 14:22:08,035.035 INFO    ] 2026-06-13 14:22:08
[2026-06-13 14:22:08,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:22:08,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:22:08,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:22:08,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:22:08,434.434 INFO    ] time= 13/06/2026 14:22:08
[2026-06-13 14:22:08,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:22:08,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:22:08,550.550 INFO    ] No existing commands found in stream
[2026-06-13 14:22:13,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:13,562.562 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 14:22:14,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:22:14,183.183 INFO    ] Checking for system updates...
[2026-06-13 14:22:14,204.204 INFO    ] 200
[2026-06-13 14:22:14,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:14,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:22:14,238.238 INFO    ] No update needed
[2026-06-13 14:22:14,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:14,262.262 INFO    ] 200
[2026-06-13 14:22:14,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:14,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:14,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:22:14,324.324 INFO    ] No camera update needed
[2026-06-13 14:22:14,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:14,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:14,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:14,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:22:16,372.372 INFO    ] ================================================
[2026-06-13 14:22:16,387.387 INFO    ] Launching Daemon at Sat Jun 13 14:22:16 IST 2026
[2026-06-13 14:22:16,398.398 INFO    ] ================================================
[2026-06-13 14:22:16,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:22:16
[2026-06-13 14:22:17,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:22:17,173.173 INFO    ] Initializing speech engine...
[2026-06-13 14:22:17,177.177 INFO    ] 2026-06-13 14:22:17
[2026-06-13 14:22:17,412.412 INFO    ] 2026-06-13 14:22:17
[2026-06-13 14:22:17,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:22:17,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:22:17,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:22:17,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:22:17,771.771 INFO    ] time= 13/06/2026 14:22:17
[2026-06-13 14:22:17,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:22:17,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:22:17,904.904 INFO    ] No existing commands found in stream
[2026-06-13 14:22:22,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:22,935.935 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 14:22:25,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:22:25,131.131 INFO    ] Checking for system updates...
[2026-06-13 14:22:25,153.153 INFO    ] 200
[2026-06-13 14:22:25,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:25,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:22:25,191.191 INFO    ] No update needed
[2026-06-13 14:22:25,192.192 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:25,214.214 INFO    ] 200
[2026-06-13 14:22:25,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:25,240.240 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:25,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:22:25,288.288 INFO    ] No camera update needed
[2026-06-13 14:22:25,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:25,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:25,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:25,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:22:27,337.337 INFO    ] ================================================
[2026-06-13 14:22:27,352.352 INFO    ] Launching Daemon at Sat Jun 13 14:22:27 IST 2026
[2026-06-13 14:22:27,363.363 INFO    ] ================================================
[2026-06-13 14:22:27,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:22:27
[2026-06-13 14:22:28,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:22:28,238.238 INFO    ] Initializing speech engine...
[2026-06-13 14:22:28,245.245 INFO    ] 2026-06-13 14:22:28
[2026-06-13 14:22:28,455.455 INFO    ] 2026-06-13 14:22:28
[2026-06-13 14:22:28,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:22:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:22:28,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:22:28,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:22:28,880.880 INFO    ] time= 13/06/2026 14:22:28
[2026-06-13 14:22:28,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:22:28,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:22:28,979.979 INFO    ] No existing commands found in stream
[2026-06-13 14:22:34,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:34,008.008 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 14:22:38,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:22:38,285.285 INFO    ] Checking for system updates...
[2026-06-13 14:22:38,306.306 INFO    ] 200
[2026-06-13 14:22:38,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:38,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:38,340.340 INFO    ] No update needed
[2026-06-13 14:22:38,341.341 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:38,361.361 INFO    ] 200
[2026-06-13 14:22:38,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:38,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:38,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:38,422.422 INFO    ] No camera update needed
[2026-06-13 14:22:38,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:38,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:38,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:38,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:22:40,472.472 INFO    ] ================================================
[2026-06-13 14:22:40,487.487 INFO    ] Launching Daemon at Sat Jun 13 14:22:40 IST 2026
[2026-06-13 14:22:40,498.498 INFO    ] ================================================
[2026-06-13 14:22:40,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:22:40
[2026-06-13 14:22:41,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:22:41,297.297 INFO    ] Initializing speech engine...
[2026-06-13 14:22:41,310.310 INFO    ] 2026-06-13 14:22:41
[2026-06-13 14:22:41,527.527 INFO    ] 2026-06-13 14:22:41
[2026-06-13 14:22:41,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:22:41,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:22:41,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:22:41,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:22:41,958.958 INFO    ] time= 13/06/2026 14:22:41
[2026-06-13 14:22:41,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:22:42,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:22:42,077.077 INFO    ] No existing commands found in stream
[2026-06-13 14:22:47,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:47,091.091 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 14:22:49,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:22:49,789.789 INFO    ] Checking for system updates...
[2026-06-13 14:22:49,810.810 INFO    ] 200
[2026-06-13 14:22:49,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:49,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:49,845.845 INFO    ] No update needed
[2026-06-13 14:22:49,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:49,865.865 INFO    ] 200
[2026-06-13 14:22:49,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:49,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:49,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:49,934.934 INFO    ] No camera update needed
[2026-06-13 14:22:49,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:49,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:49,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:49,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:22:51,982.982 INFO    ] ================================================
[2026-06-13 14:22:52,997.997 INFO    ] Launching Daemon at Sat Jun 13 14:22:51 IST 2026
[2026-06-13 14:22:52,007.007 INFO    ] ================================================
[2026-06-13 14:22:52,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:22:52
[2026-06-13 14:22:52,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:22:52,829.829 INFO    ] Initializing speech engine...
[2026-06-13 14:22:52,834.834 INFO    ] 2026-06-13 14:22:52
[2026-06-13 14:22:53,037.037 INFO    ] 2026-06-13 14:22:53
[2026-06-13 14:22:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:22:53,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:22:53,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:22:53,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:22:53,427.427 INFO    ] time= 13/06/2026 14:22:53
[2026-06-13 14:22:53,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:22:53,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:22:53,553.553 INFO    ] No existing commands found in stream
[2026-06-13 14:22:58,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:22:58,570.570 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 14:22:59,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:22:59,169.169 INFO    ] Checking for system updates...
[2026-06-13 14:22:59,190.190 INFO    ] 200
[2026-06-13 14:22:59,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:59,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:59,225.225 INFO    ] No update needed
[2026-06-13 14:22:59,227.227 INFO    ] Checking for camera pi updates...
[2026-06-13 14:22:59,255.255 INFO    ] 200
[2026-06-13 14:22:59,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:22:59,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:22:59,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:22:59,317.317 INFO    ] No camera update needed
[2026-06-13 14:22:59,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:22:59,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:22:59,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:22:59,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:01,366.366 INFO    ] ================================================
[2026-06-13 14:23:01,381.381 INFO    ] Launching Daemon at Sat Jun 13 14:23:01 IST 2026
[2026-06-13 14:23:01,392.392 INFO    ] ================================================
[2026-06-13 14:23:01,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:01
[2026-06-13 14:23:02,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:02,815.815 INFO    ] Initializing speech engine...
[2026-06-13 14:23:02,860.860 INFO    ] 2026-06-13 14:23:02
[2026-06-13 14:23:03,152.152 INFO    ] 2026-06-13 14:23:03
[2026-06-13 14:23:03,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:03,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:03,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:03,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:03,493.493 INFO    ] time= 13/06/2026 14:23:03
[2026-06-13 14:23:03,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:03,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:03,570.570 INFO    ] No existing commands found in stream
[2026-06-13 14:23:08,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:23:08,586.586 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 14:23:09,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:23:09,423.423 INFO    ] Checking for system updates...
[2026-06-13 14:23:09,444.444 INFO    ] 200
[2026-06-13 14:23:09,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:09,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:09,479.479 INFO    ] No update needed
[2026-06-13 14:23:09,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 14:23:09,500.500 INFO    ] 200
[2026-06-13 14:23:09,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:09,529.529 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:23:09,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:09,670.670 INFO    ] No camera update needed
[2026-06-13 14:23:09,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:23:09,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:23:09,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:23:09,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:11,717.717 INFO    ] ================================================
[2026-06-13 14:23:11,732.732 INFO    ] Launching Daemon at Sat Jun 13 14:23:11 IST 2026
[2026-06-13 14:23:11,743.743 INFO    ] ================================================
[2026-06-13 14:23:12,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:12
[2026-06-13 14:23:12,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:12,617.617 INFO    ] Initializing speech engine...
[2026-06-13 14:23:12,622.622 INFO    ] 2026-06-13 14:23:12
[2026-06-13 14:23:12,829.829 INFO    ] 2026-06-13 14:23:12
[2026-06-13 14:23:12,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:12,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:13,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:13,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:13,240.240 INFO    ] time= 13/06/2026 14:23:13
[2026-06-13 14:23:13,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:13,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:13,345.345 INFO    ] No existing commands found in stream
[2026-06-13 14:23:18,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:23:18,358.358 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 14:23:21,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:23:21,204.204 INFO    ] Checking for system updates...
[2026-06-13 14:23:21,226.226 INFO    ] 200
[2026-06-13 14:23:21,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:21,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:21,265.265 INFO    ] No update needed
[2026-06-13 14:23:21,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 14:23:21,288.288 INFO    ] 200
[2026-06-13 14:23:21,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:21,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:23:21,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:21,354.354 INFO    ] No camera update needed
[2026-06-13 14:23:21,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:23:21,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:23:21,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:23:21,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:23,402.402 INFO    ] ================================================
[2026-06-13 14:23:23,417.417 INFO    ] Launching Daemon at Sat Jun 13 14:23:23 IST 2026
[2026-06-13 14:23:23,427.427 INFO    ] ================================================
[2026-06-13 14:23:23,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:23
[2026-06-13 14:23:24,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:24,206.206 INFO    ] Initializing speech engine...
[2026-06-13 14:23:24,214.214 INFO    ] 2026-06-13 14:23:24
[2026-06-13 14:23:24,438.438 INFO    ] 2026-06-13 14:23:24
[2026-06-13 14:23:24,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:24,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:24,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:24,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:24,808.808 INFO    ] time= 13/06/2026 14:23:24
[2026-06-13 14:23:24,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:24,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:24,947.947 INFO    ] No existing commands found in stream
[2026-06-13 14:23:29,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:23:29,966.966 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 14:23:34,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:23:34,197.197 INFO    ] Checking for system updates...
[2026-06-13 14:23:34,217.217 INFO    ] 200
[2026-06-13 14:23:34,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:34,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:23:34,251.251 INFO    ] No update needed
[2026-06-13 14:23:34,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 14:23:34,272.272 INFO    ] 200
[2026-06-13 14:23:34,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:34,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:23:34,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:23:34,338.338 INFO    ] No camera update needed
[2026-06-13 14:23:34,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:23:34,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:23:34,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:23:34,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:36,386.386 INFO    ] ================================================
[2026-06-13 14:23:36,404.404 INFO    ] Launching Daemon at Sat Jun 13 14:23:36 IST 2026
[2026-06-13 14:23:36,416.416 INFO    ] ================================================
[2026-06-13 14:23:36,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:36
[2026-06-13 14:23:37,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:37,264.264 INFO    ] Initializing speech engine...
[2026-06-13 14:23:37,269.269 INFO    ] 2026-06-13 14:23:37
[2026-06-13 14:23:37,480.480 INFO    ] 2026-06-13 14:23:37
[2026-06-13 14:23:37,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:37,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:37,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:37,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:37,907.907 INFO    ] time= 13/06/2026 14:23:37
[2026-06-13 14:23:37,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:37,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:38,007.007 INFO    ] No existing commands found in stream
[2026-06-13 14:23:43,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:23:43,019.019 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 14:23:43,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:23:43,937.937 INFO    ] Checking for system updates...
[2026-06-13 14:23:43,959.959 INFO    ] 200
[2026-06-13 14:23:43,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:43,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:43,992.992 INFO    ] No update needed
[2026-06-13 14:23:43,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 14:23:44,014.014 INFO    ] 200
[2026-06-13 14:23:44,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:44,039.039 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:23:44,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:23:44,085.085 INFO    ] No camera update needed
[2026-06-13 14:23:44,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:23:44,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:23:44,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:23:44,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:46,135.135 INFO    ] ================================================
[2026-06-13 14:23:46,150.150 INFO    ] Launching Daemon at Sat Jun 13 14:23:46 IST 2026
[2026-06-13 14:23:46,162.162 INFO    ] ================================================
[2026-06-13 14:23:46,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:46
[2026-06-13 14:23:46,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:46,981.981 INFO    ] Initializing speech engine...
[2026-06-13 14:23:46,987.987 INFO    ] 2026-06-13 14:23:46
[2026-06-13 14:23:47,181.181 INFO    ] 2026-06-13 14:23:47
[2026-06-13 14:23:47,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:47,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:47,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:47,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:47,565.565 INFO    ] time= 13/06/2026 14:23:47
[2026-06-13 14:23:47,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:47,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:47,694.694 INFO    ] No existing commands found in stream
[2026-06-13 14:23:52,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:23:52,711.711 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 14:23:56,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:23:56,113.113 INFO    ] Checking for system updates...
[2026-06-13 14:23:56,134.134 INFO    ] 200
[2026-06-13 14:23:56,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:56,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:23:56,170.170 INFO    ] No update needed
[2026-06-13 14:23:56,172.172 INFO    ] Checking for camera pi updates...
[2026-06-13 14:23:56,194.194 INFO    ] 200
[2026-06-13 14:23:56,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:23:56,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:23:56,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:23:56,263.263 INFO    ] No camera update needed
[2026-06-13 14:23:56,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:23:56,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:23:56,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:23:56,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:23:58,313.313 INFO    ] ================================================
[2026-06-13 14:23:58,328.328 INFO    ] Launching Daemon at Sat Jun 13 14:23:58 IST 2026
[2026-06-13 14:23:58,339.339 INFO    ] ================================================
[2026-06-13 14:23:58,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:23:58
[2026-06-13 14:23:58,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:23:59,130.130 INFO    ] Initializing speech engine...
[2026-06-13 14:23:59,135.135 INFO    ] 2026-06-13 14:23:59
[2026-06-13 14:23:59,325.325 INFO    ] 2026-06-13 14:23:59
[2026-06-13 14:23:59,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:23:59,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:23:59,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:23:59,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:23:59,793.793 INFO    ] time= 13/06/2026 14:23:59
[2026-06-13 14:23:59,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:23:59,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:23:59,926.926 INFO    ] No existing commands found in stream
[2026-06-13 14:24:04,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:24:04,939.939 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 14:24:07,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:24:07,455.455 INFO    ] Checking for system updates...
[2026-06-13 14:24:07,476.476 INFO    ] 200
[2026-06-13 14:24:07,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:07,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:07,509.509 INFO    ] No update needed
[2026-06-13 14:24:07,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 14:24:07,530.530 INFO    ] 200
[2026-06-13 14:24:07,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:07,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:24:07,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:07,594.594 INFO    ] No camera update needed
[2026-06-13 14:24:07,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:24:07,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:24:07,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:24:07,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:24:09,640.640 INFO    ] ================================================
[2026-06-13 14:24:09,656.656 INFO    ] Launching Daemon at Sat Jun 13 14:24:09 IST 2026
[2026-06-13 14:24:09,667.667 INFO    ] ================================================
[2026-06-13 14:24:10,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:24:10
[2026-06-13 14:24:10,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:24:10,476.476 INFO    ] Initializing speech engine...
[2026-06-13 14:24:10,481.481 INFO    ] 2026-06-13 14:24:10
[2026-06-13 14:24:10,686.686 INFO    ] 2026-06-13 14:24:10
[2026-06-13 14:24:10,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:24:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:24:10,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:24:11,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:24:11,104.104 INFO    ] time= 13/06/2026 14:24:11
[2026-06-13 14:24:11,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:24:11,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:24:11,201.201 INFO    ] No existing commands found in stream
[2026-06-13 14:24:16,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:24:16,223.223 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 14:24:20,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:24:20,542.542 INFO    ] Checking for system updates...
[2026-06-13 14:24:20,564.564 INFO    ] 200
[2026-06-13 14:24:20,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:20,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:20,599.599 INFO    ] No update needed
[2026-06-13 14:24:20,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 14:24:20,620.620 INFO    ] 200
[2026-06-13 14:24:20,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:20,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:24:20,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:24:20,686.686 INFO    ] No camera update needed
[2026-06-13 14:24:20,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:24:20,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:24:20,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:24:20,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:24:22,734.734 INFO    ] ================================================
[2026-06-13 14:24:22,749.749 INFO    ] Launching Daemon at Sat Jun 13 14:24:22 IST 2026
[2026-06-13 14:24:22,760.760 INFO    ] ================================================
[2026-06-13 14:24:23,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:24:23
[2026-06-13 14:24:23,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:24:23,578.578 INFO    ] Initializing speech engine...
[2026-06-13 14:24:23,583.583 INFO    ] 2026-06-13 14:24:23
[2026-06-13 14:24:23,836.836 INFO    ] 2026-06-13 14:24:23
[2026-06-13 14:24:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:24:23,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:24:24,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:24:24,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:24:24,247.247 INFO    ] time= 13/06/2026 14:24:24
[2026-06-13 14:24:24,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:24:24,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:24:24,357.357 INFO    ] No existing commands found in stream
[2026-06-13 14:24:29,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:24:29,371.371 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 14:24:32,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:24:32,381.381 INFO    ] Checking for system updates...
[2026-06-13 14:24:32,402.402 INFO    ] 200
[2026-06-13 14:24:32,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:32,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:24:32,436.436 INFO    ] No update needed
[2026-06-13 14:24:32,438.438 INFO    ] Checking for camera pi updates...
[2026-06-13 14:24:32,459.459 INFO    ] 200
[2026-06-13 14:24:32,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:32,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:24:32,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:24:32,508.508 INFO    ] No camera update needed
[2026-06-13 14:24:32,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:24:32,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:24:32,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:24:32,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:24:34,556.556 INFO    ] ================================================
[2026-06-13 14:24:34,572.572 INFO    ] Launching Daemon at Sat Jun 13 14:24:34 IST 2026
[2026-06-13 14:24:34,583.583 INFO    ] ================================================
[2026-06-13 14:24:34,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:24:34
[2026-06-13 14:24:35,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:24:35,374.374 INFO    ] Initializing speech engine...
[2026-06-13 14:24:35,388.388 INFO    ] 2026-06-13 14:24:35
[2026-06-13 14:24:35,594.594 INFO    ] 2026-06-13 14:24:35
[2026-06-13 14:24:35,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:24:35,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:24:35,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:24:35,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:24:36,005.005 INFO    ] time= 13/06/2026 14:24:35
[2026-06-13 14:24:36,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:24:36,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:24:36,116.116 INFO    ] No existing commands found in stream
[2026-06-13 14:24:41,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:24:41,129.129 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 14:24:44,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:24:44,167.167 INFO    ] Checking for system updates...
[2026-06-13 14:24:44,189.189 INFO    ] 200
[2026-06-13 14:24:44,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:44,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:44,224.224 INFO    ] No update needed
[2026-06-13 14:24:44,225.225 INFO    ] Checking for camera pi updates...
[2026-06-13 14:24:44,246.246 INFO    ] 200
[2026-06-13 14:24:44,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:44,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:24:44,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:24:44,306.306 INFO    ] No camera update needed
[2026-06-13 14:24:44,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:24:44,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:24:44,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:24:44,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:24:46,355.355 INFO    ] ================================================
[2026-06-13 14:24:46,371.371 INFO    ] Launching Daemon at Sat Jun 13 14:24:46 IST 2026
[2026-06-13 14:24:46,382.382 INFO    ] ================================================
[2026-06-13 14:24:46,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:24:46
[2026-06-13 14:24:47,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:24:47,162.162 INFO    ] Initializing speech engine...
[2026-06-13 14:24:47,170.170 INFO    ] 2026-06-13 14:24:47
[2026-06-13 14:24:47,389.389 INFO    ] 2026-06-13 14:24:47
[2026-06-13 14:24:47,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:24:47,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:24:47,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:24:47,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:24:47,795.795 INFO    ] time= 13/06/2026 14:24:47
[2026-06-13 14:24:47,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:24:47,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:24:47,947.947 INFO    ] No existing commands found in stream
[2026-06-13 14:24:52,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:24:52,961.961 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 14:24:55,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:24:55,724.724 INFO    ] Checking for system updates...
[2026-06-13 14:24:55,747.747 INFO    ] 200
[2026-06-13 14:24:55,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:55,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:55,781.781 INFO    ] No update needed
[2026-06-13 14:24:55,782.782 INFO    ] Checking for camera pi updates...
[2026-06-13 14:24:55,803.803 INFO    ] 200
[2026-06-13 14:24:55,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:24:55,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:24:55,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:24:55,883.883 INFO    ] No camera update needed
[2026-06-13 14:24:55,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:24:55,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:24:55,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:24:55,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:24:57,932.932 INFO    ] ================================================
[2026-06-13 14:24:57,947.947 INFO    ] Launching Daemon at Sat Jun 13 14:24:57 IST 2026
[2026-06-13 14:24:57,958.958 INFO    ] ================================================
[2026-06-13 14:24:58,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:24:58
[2026-06-13 14:24:58,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:24:58,786.786 INFO    ] Initializing speech engine...
[2026-06-13 14:24:58,796.796 INFO    ] 2026-06-13 14:24:58
[2026-06-13 14:24:59,003.003 INFO    ] 2026-06-13 14:24:58
[2026-06-13 14:24:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:24:59,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:24:59,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:24:59,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:24:59,399.399 INFO    ] time= 13/06/2026 14:24:59
[2026-06-13 14:24:59,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:24:59,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:24:59,526.526 INFO    ] No existing commands found in stream
[2026-06-13 14:25:04,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:25:04,539.539 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 14:25:07,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:25:07,858.858 INFO    ] Checking for system updates...
[2026-06-13 14:25:07,879.879 INFO    ] 200
[2026-06-13 14:25:07,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:07,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:25:07,913.913 INFO    ] No update needed
[2026-06-13 14:25:07,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 14:25:07,934.934 INFO    ] 200
[2026-06-13 14:25:07,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:07,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:25:07,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:25:07,999.999 INFO    ] No camera update needed
[2026-06-13 14:25:08,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:25:08,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:25:08,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:25:08,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:25:10,047.047 INFO    ] ================================================
[2026-06-13 14:25:10,062.062 INFO    ] Launching Daemon at Sat Jun 13 14:25:10 IST 2026
[2026-06-13 14:25:10,072.072 INFO    ] ================================================
[2026-06-13 14:25:10,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:25:10
[2026-06-13 14:25:10,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:25:10,903.903 INFO    ] Initializing speech engine...
[2026-06-13 14:25:10,916.916 INFO    ] 2026-06-13 14:25:10
[2026-06-13 14:25:11,125.125 INFO    ] 2026-06-13 14:25:11
[2026-06-13 14:25:11,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:25:11,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:25:11,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:25:11,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:25:11,561.561 INFO    ] time= 13/06/2026 14:25:11
[2026-06-13 14:25:11,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:25:11,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:25:11,762.762 INFO    ] No existing commands found in stream
[2026-06-13 14:25:16,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:25:16,802.802 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 14:25:17,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:25:17,252.252 INFO    ] Checking for system updates...
[2026-06-13 14:25:17,275.275 INFO    ] 200
[2026-06-13 14:25:17,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:17,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:25:17,311.311 INFO    ] No update needed
[2026-06-13 14:25:17,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 14:25:17,334.334 INFO    ] 200
[2026-06-13 14:25:17,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:17,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:25:17,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:25:17,506.506 INFO    ] No camera update needed
[2026-06-13 14:25:17,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:25:17,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:25:17,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:25:17,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:25:19,556.556 INFO    ] ================================================
[2026-06-13 14:25:19,571.571 INFO    ] Launching Daemon at Sat Jun 13 14:25:19 IST 2026
[2026-06-13 14:25:19,583.583 INFO    ] ================================================
[2026-06-13 14:25:19,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:25:19
[2026-06-13 14:25:20,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:25:20,389.389 INFO    ] Initializing speech engine...
[2026-06-13 14:25:20,394.394 INFO    ] 2026-06-13 14:25:20
[2026-06-13 14:25:20,623.623 INFO    ] 2026-06-13 14:25:20
[2026-06-13 14:25:20,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:25:20,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:25:20,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:25:20,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:25:21,042.042 INFO    ] time= 13/06/2026 14:25:20
[2026-06-13 14:25:21,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:25:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:25:21,181.181 INFO    ] No existing commands found in stream
[2026-06-13 14:25:26,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:25:26,197.197 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 14:25:27,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:25:27,397.397 INFO    ] Checking for system updates...
[2026-06-13 14:25:27,417.417 INFO    ] 200
[2026-06-13 14:25:27,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:27,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:25:27,450.450 INFO    ] No update needed
[2026-06-13 14:25:27,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 14:25:27,471.471 INFO    ] 200
[2026-06-13 14:25:27,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:27,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:25:27,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:25:27,538.538 INFO    ] No camera update needed
[2026-06-13 14:25:27,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:25:27,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:25:27,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:25:27,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:25:29,585.585 INFO    ] ================================================
[2026-06-13 14:25:29,602.602 INFO    ] Launching Daemon at Sat Jun 13 14:25:29 IST 2026
[2026-06-13 14:25:29,613.613 INFO    ] ================================================
[2026-06-13 14:25:29,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:25:29
[2026-06-13 14:25:30,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:25:30,388.388 INFO    ] Initializing speech engine...
[2026-06-13 14:25:30,397.397 INFO    ] 2026-06-13 14:25:30
[2026-06-13 14:25:30,606.606 INFO    ] 2026-06-13 14:25:30
[2026-06-13 14:25:30,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:25:30,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:25:30,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:25:30,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:25:31,023.023 INFO    ] time= 13/06/2026 14:25:30
[2026-06-13 14:25:31,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:25:31,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:25:31,123.123 INFO    ] No existing commands found in stream
[2026-06-13 14:25:36,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:25:36,134.134 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 14:25:40,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:25:40,017.017 INFO    ] Checking for system updates...
[2026-06-13 14:25:40,040.040 INFO    ] 200
[2026-06-13 14:25:40,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:40,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:25:40,074.074 INFO    ] No update needed
[2026-06-13 14:25:40,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 14:25:40,096.096 INFO    ] 200
[2026-06-13 14:25:40,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:40,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:25:40,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:25:40,162.162 INFO    ] No camera update needed
[2026-06-13 14:25:40,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:25:40,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:25:40,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:25:40,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:25:42,212.212 INFO    ] ================================================
[2026-06-13 14:25:42,227.227 INFO    ] Launching Daemon at Sat Jun 13 14:25:42 IST 2026
[2026-06-13 14:25:42,238.238 INFO    ] ================================================
[2026-06-13 14:25:42,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:25:42
[2026-06-13 14:25:42,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:25:43,031.031 INFO    ] Initializing speech engine...
[2026-06-13 14:25:43,036.036 INFO    ] 2026-06-13 14:25:43
[2026-06-13 14:25:43,239.239 INFO    ] 2026-06-13 14:25:43
[2026-06-13 14:25:43,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:25:43,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:25:43,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:25:43,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:25:43,642.642 INFO    ] time= 13/06/2026 14:25:43
[2026-06-13 14:25:43,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:25:43,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:25:43,753.753 INFO    ] No existing commands found in stream
[2026-06-13 14:25:48,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:25:48,764.764 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 14:25:52,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:25:52,672.672 INFO    ] Checking for system updates...
[2026-06-13 14:25:52,694.694 INFO    ] 200
[2026-06-13 14:25:52,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:52,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:25:52,726.726 INFO    ] No update needed
[2026-06-13 14:25:52,728.728 INFO    ] Checking for camera pi updates...
[2026-06-13 14:25:52,748.748 INFO    ] 200
[2026-06-13 14:25:52,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:25:52,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:25:52,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:25:52,816.816 INFO    ] No camera update needed
[2026-06-13 14:25:52,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:25:52,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:25:52,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:25:52,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:25:54,864.864 INFO    ] ================================================
[2026-06-13 14:25:54,879.879 INFO    ] Launching Daemon at Sat Jun 13 14:25:54 IST 2026
[2026-06-13 14:25:54,890.890 INFO    ] ================================================
[2026-06-13 14:25:55,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:25:55
[2026-06-13 14:25:55,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:25:55,671.671 INFO    ] Initializing speech engine...
[2026-06-13 14:25:55,676.676 INFO    ] 2026-06-13 14:25:55
[2026-06-13 14:25:55,880.880 INFO    ] 2026-06-13 14:25:55
[2026-06-13 14:25:55,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:25:56,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:25:56,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:25:56,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:25:56,295.295 INFO    ] time= 13/06/2026 14:25:56
[2026-06-13 14:25:56,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:25:56,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:25:56,395.395 INFO    ] No existing commands found in stream
[2026-06-13 14:26:01,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:01,411.411 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 14:26:03,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:26:03,725.725 INFO    ] Checking for system updates...
[2026-06-13 14:26:03,764.764 INFO    ] 200
[2026-06-13 14:26:03,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:03,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:03,824.824 INFO    ] No update needed
[2026-06-13 14:26:03,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 14:26:03,862.862 INFO    ] 200
[2026-06-13 14:26:03,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:03,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:26:03,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:26:03,956.956 INFO    ] No camera update needed
[2026-06-13 14:26:03,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:26:03,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:26:03,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:26:03,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:26:06,018.018 INFO    ] ================================================
[2026-06-13 14:26:06,033.033 INFO    ] Launching Daemon at Sat Jun 13 14:26:06 IST 2026
[2026-06-13 14:26:06,044.044 INFO    ] ================================================
[2026-06-13 14:26:06,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:26:06
[2026-06-13 14:26:06,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:26:06,931.931 INFO    ] Initializing speech engine...
[2026-06-13 14:26:06,936.936 INFO    ] 2026-06-13 14:26:06
[2026-06-13 14:26:07,146.146 INFO    ] 2026-06-13 14:26:07
[2026-06-13 14:26:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:26:07,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:26:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:26:07,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:26:07,574.574 INFO    ] time= 13/06/2026 14:26:07
[2026-06-13 14:26:07,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:26:07,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:26:07,671.671 INFO    ] No existing commands found in stream
[2026-06-13 14:26:12,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:12,686.686 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 14:26:14,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:26:14,936.936 INFO    ] Checking for system updates...
[2026-06-13 14:26:14,957.957 INFO    ] 200
[2026-06-13 14:26:14,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:14,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:26:14,994.994 INFO    ] No update needed
[2026-06-13 14:26:14,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 14:26:15,017.017 INFO    ] 200
[2026-06-13 14:26:15,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:15,043.043 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:26:15,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:26:15,092.092 INFO    ] No camera update needed
[2026-06-13 14:26:15,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:26:15,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:26:15,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:26:15,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:26:17,140.140 INFO    ] ================================================
[2026-06-13 14:26:17,155.155 INFO    ] Launching Daemon at Sat Jun 13 14:26:17 IST 2026
[2026-06-13 14:26:17,166.166 INFO    ] ================================================
[2026-06-13 14:26:17,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:26:17
[2026-06-13 14:26:17,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:26:18,048.048 INFO    ] Initializing speech engine...
[2026-06-13 14:26:18,054.054 INFO    ] 2026-06-13 14:26:18
[2026-06-13 14:26:18,263.263 INFO    ] 2026-06-13 14:26:18
[2026-06-13 14:26:18,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:26:18,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:26:18,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:26:18,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:26:18,685.685 INFO    ] time= 13/06/2026 14:26:18
[2026-06-13 14:26:18,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:26:18,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:26:18,794.794 INFO    ] No existing commands found in stream
[2026-06-13 14:26:23,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:23,813.813 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 14:26:26,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:26:26,265.265 INFO    ] Checking for system updates...
[2026-06-13 14:26:26,290.290 INFO    ] 200
[2026-06-13 14:26:26,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:26,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:26,324.324 INFO    ] No update needed
[2026-06-13 14:26:26,326.326 INFO    ] Checking for camera pi updates...
[2026-06-13 14:26:26,347.347 INFO    ] 200
[2026-06-13 14:26:26,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:26,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:26:26,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:26,411.411 INFO    ] No camera update needed
[2026-06-13 14:26:26,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:26:26,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:26:26,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:26:26,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:26:28,464.464 INFO    ] ================================================
[2026-06-13 14:26:28,479.479 INFO    ] Launching Daemon at Sat Jun 13 14:26:28 IST 2026
[2026-06-13 14:26:28,490.490 INFO    ] ================================================
[2026-06-13 14:26:28,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:26:28
[2026-06-13 14:26:29,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:26:29,306.306 INFO    ] Initializing speech engine...
[2026-06-13 14:26:29,310.310 INFO    ] 2026-06-13 14:26:29
[2026-06-13 14:26:29,514.514 INFO    ] 2026-06-13 14:26:29
[2026-06-13 14:26:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:26:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:26:29,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:26:29,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:26:29,910.910 INFO    ] time= 13/06/2026 14:26:29
[2026-06-13 14:26:29,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:26:29,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:26:30,073.073 INFO    ] No existing commands found in stream
[2026-06-13 14:26:35,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:35,088.088 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 14:26:39,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:26:39,326.326 INFO    ] Checking for system updates...
[2026-06-13 14:26:39,347.347 INFO    ] 200
[2026-06-13 14:26:39,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:39,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:39,381.381 INFO    ] No update needed
[2026-06-13 14:26:39,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 14:26:39,402.402 INFO    ] 200
[2026-06-13 14:26:39,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:39,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:26:39,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:39,464.464 INFO    ] No camera update needed
[2026-06-13 14:26:39,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:26:39,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:26:39,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:26:39,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:26:41,511.511 INFO    ] ================================================
[2026-06-13 14:26:41,532.532 INFO    ] Launching Daemon at Sat Jun 13 14:26:41 IST 2026
[2026-06-13 14:26:41,543.543 INFO    ] ================================================
[2026-06-13 14:26:41,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:26:41
[2026-06-13 14:26:42,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:26:42,354.354 INFO    ] Initializing speech engine...
[2026-06-13 14:26:42,359.359 INFO    ] 2026-06-13 14:26:42
[2026-06-13 14:26:42,589.589 INFO    ] 2026-06-13 14:26:42
[2026-06-13 14:26:42,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:26:42,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:26:42,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:26:42,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:26:42,989.989 INFO    ] time= 13/06/2026 14:26:42
[2026-06-13 14:26:43,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:26:43,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:26:43,149.149 INFO    ] No existing commands found in stream
[2026-06-13 14:26:48,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:48,161.161 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 14:26:50,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:26:50,746.746 INFO    ] Checking for system updates...
[2026-06-13 14:26:50,767.767 INFO    ] 200
[2026-06-13 14:26:50,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:50,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:50,800.800 INFO    ] No update needed
[2026-06-13 14:26:50,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 14:26:50,821.821 INFO    ] 200
[2026-06-13 14:26:50,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:26:50,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:26:50,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:26:50,884.884 INFO    ] No camera update needed
[2026-06-13 14:26:50,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:26:50,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:26:50,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:26:50,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:26:52,932.932 INFO    ] ================================================
[2026-06-13 14:26:52,951.951 INFO    ] Launching Daemon at Sat Jun 13 14:26:52 IST 2026
[2026-06-13 14:26:52,962.962 INFO    ] ================================================
[2026-06-13 14:26:53,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:26:53
[2026-06-13 14:26:53,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:26:53,777.777 INFO    ] Initializing speech engine...
[2026-06-13 14:26:53,785.785 INFO    ] 2026-06-13 14:26:53
[2026-06-13 14:26:54,005.005 INFO    ] 2026-06-13 14:26:53
[2026-06-13 14:26:54,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:26:54,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:26:54,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:26:54,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:26:54,436.436 INFO    ] time= 13/06/2026 14:26:54
[2026-06-13 14:26:54,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:26:54,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:26:54,566.566 INFO    ] No existing commands found in stream
[2026-06-13 14:26:59,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:26:59,578.578 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 14:27:00,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:27:00,964.964 INFO    ] Checking for system updates...
[2026-06-13 14:27:00,985.985 INFO    ] 200
[2026-06-13 14:27:00,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:01,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:27:01,020.020 INFO    ] No update needed
[2026-06-13 14:27:01,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:01,041.041 INFO    ] 200
[2026-06-13 14:27:01,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:01,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:01,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:27:01,104.104 INFO    ] No camera update needed
[2026-06-13 14:27:01,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:01,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:01,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:01,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:27:03,140.140 INFO    ] ================================================
[2026-06-13 14:27:03,149.149 INFO    ] Launching Daemon at Sat Jun 13 14:27:03 IST 2026
[2026-06-13 14:27:03,155.155 INFO    ] ================================================
[2026-06-13 14:27:03,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:27:03
[2026-06-13 14:27:03,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:27:04,167.167 INFO    ] Initializing speech engine...
[2026-06-13 14:27:04,178.178 INFO    ] 2026-06-13 14:27:04
[2026-06-13 14:27:04,443.443 INFO    ] 2026-06-13 14:27:04
[2026-06-13 14:27:04,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:27:04,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:27:04,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:27:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:27:04,799.799 INFO    ] time= 13/06/2026 14:27:04
[2026-06-13 14:27:04,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:27:04,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:27:04,959.959 INFO    ] No existing commands found in stream
[2026-06-13 14:27:09,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:27:09,992.992 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 14:27:12,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:27:12,838.838 INFO    ] Checking for system updates...
[2026-06-13 14:27:12,874.874 INFO    ] 200
[2026-06-13 14:27:12,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:12,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:27:12,932.932 INFO    ] No update needed
[2026-06-13 14:27:12,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:12,964.964 INFO    ] 200
[2026-06-13 14:27:12,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:12,989.989 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:13,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:27:13,031.031 INFO    ] No camera update needed
[2026-06-13 14:27:13,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:13,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:13,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:13,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:27:15,079.079 INFO    ] ================================================
[2026-06-13 14:27:15,095.095 INFO    ] Launching Daemon at Sat Jun 13 14:27:15 IST 2026
[2026-06-13 14:27:15,106.106 INFO    ] ================================================
[2026-06-13 14:27:15,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:27:15
[2026-06-13 14:27:15,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:27:15,911.911 INFO    ] Initializing speech engine...
[2026-06-13 14:27:15,919.919 INFO    ] 2026-06-13 14:27:15
[2026-06-13 14:27:16,128.128 INFO    ] 2026-06-13 14:27:16
[2026-06-13 14:27:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:27:16,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:27:16,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:27:16,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:27:16,536.536 INFO    ] time= 13/06/2026 14:27:16
[2026-06-13 14:27:16,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:27:16,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:27:16,651.651 INFO    ] No existing commands found in stream
[2026-06-13 14:27:21,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:27:21,663.663 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 14:27:25,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:27:25,398.398 INFO    ] Checking for system updates...
[2026-06-13 14:27:25,419.419 INFO    ] 200
[2026-06-13 14:27:25,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:25,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:25,455.455 INFO    ] No update needed
[2026-06-13 14:27:25,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:25,478.478 INFO    ] 200
[2026-06-13 14:27:25,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:25,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:25,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:25,647.647 INFO    ] No camera update needed
[2026-06-13 14:27:25,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:25,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:25,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:25,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:27:27,694.694 INFO    ] ================================================
[2026-06-13 14:27:27,710.710 INFO    ] Launching Daemon at Sat Jun 13 14:27:27 IST 2026
[2026-06-13 14:27:27,721.721 INFO    ] ================================================
[2026-06-13 14:27:28,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:27:28
[2026-06-13 14:27:28,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:27:28,552.552 INFO    ] Initializing speech engine...
[2026-06-13 14:27:28,556.556 INFO    ] 2026-06-13 14:27:28
[2026-06-13 14:27:28,766.766 INFO    ] 2026-06-13 14:27:28
[2026-06-13 14:27:28,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:27:28,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:27:28,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:27:29,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:27:29,177.177 INFO    ] time= 13/06/2026 14:27:29
[2026-06-13 14:27:29,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:27:29,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:27:29,283.283 INFO    ] No existing commands found in stream
[2026-06-13 14:27:34,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:27:34,300.300 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 14:27:36,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:27:36,090.090 INFO    ] Checking for system updates...
[2026-06-13 14:27:36,111.111 INFO    ] 200
[2026-06-13 14:27:36,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:36,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:36,144.144 INFO    ] No update needed
[2026-06-13 14:27:36,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:36,165.165 INFO    ] 200
[2026-06-13 14:27:36,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:36,191.191 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:36,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:36,243.243 INFO    ] No camera update needed
[2026-06-13 14:27:36,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:36,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:36,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:36,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:27:38,292.292 INFO    ] ================================================
[2026-06-13 14:27:38,307.307 INFO    ] Launching Daemon at Sat Jun 13 14:27:38 IST 2026
[2026-06-13 14:27:38,318.318 INFO    ] ================================================
[2026-06-13 14:27:38,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:27:38
[2026-06-13 14:27:38,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:27:39,116.116 INFO    ] Initializing speech engine...
[2026-06-13 14:27:39,122.122 INFO    ] 2026-06-13 14:27:39
[2026-06-13 14:27:39,306.306 INFO    ] 2026-06-13 14:27:39
[2026-06-13 14:27:39,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:27:39,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:27:39,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:27:39,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:27:39,732.732 INFO    ] time= 13/06/2026 14:27:39
[2026-06-13 14:27:39,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:27:39,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:27:39,849.849 INFO    ] No existing commands found in stream
[2026-06-13 14:27:44,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:27:44,862.862 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 14:27:48,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:27:48,109.109 INFO    ] Checking for system updates...
[2026-06-13 14:27:48,129.129 INFO    ] 200
[2026-06-13 14:27:48,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:48,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:27:48,162.162 INFO    ] No update needed
[2026-06-13 14:27:48,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:48,183.183 INFO    ] 200
[2026-06-13 14:27:48,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:48,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:48,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:48,230.230 INFO    ] No camera update needed
[2026-06-13 14:27:48,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:48,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:48,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:48,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:27:50,278.278 INFO    ] ================================================
[2026-06-13 14:27:50,294.294 INFO    ] Launching Daemon at Sat Jun 13 14:27:50 IST 2026
[2026-06-13 14:27:50,305.305 INFO    ] ================================================
[2026-06-13 14:27:50,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:27:50
[2026-06-13 14:27:50,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:27:51,108.108 INFO    ] Initializing speech engine...
[2026-06-13 14:27:51,114.114 INFO    ] 2026-06-13 14:27:51
[2026-06-13 14:27:51,329.329 INFO    ] 2026-06-13 14:27:51
[2026-06-13 14:27:51,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:27:51,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:27:51,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:27:51,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:27:51,728.728 INFO    ] time= 13/06/2026 14:27:51
[2026-06-13 14:27:51,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:27:51,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:27:51,844.844 INFO    ] No existing commands found in stream
[2026-06-13 14:27:56,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:27:56,855.855 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 14:27:58,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:27:58,664.664 INFO    ] Checking for system updates...
[2026-06-13 14:27:58,684.684 INFO    ] 200
[2026-06-13 14:27:58,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:58,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:58,720.720 INFO    ] No update needed
[2026-06-13 14:27:58,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 14:27:58,741.741 INFO    ] 200
[2026-06-13 14:27:58,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:27:58,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:27:58,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:27:58,811.811 INFO    ] No camera update needed
[2026-06-13 14:27:58,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:27:58,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:27:58,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:27:58,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:00,857.857 INFO    ] ================================================
[2026-06-13 14:28:00,874.874 INFO    ] Launching Daemon at Sat Jun 13 14:28:00 IST 2026
[2026-06-13 14:28:00,885.885 INFO    ] ================================================
[2026-06-13 14:28:01,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:01
[2026-06-13 14:28:01,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:01,863.863 INFO    ] Initializing speech engine...
[2026-06-13 14:28:01,874.874 INFO    ] 2026-06-13 14:28:01
[2026-06-13 14:28:02,081.081 INFO    ] 2026-06-13 14:28:02
[2026-06-13 14:28:02,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:02,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:02,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:02,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:02,394.394 INFO    ] time= 13/06/2026 14:28:02
[2026-06-13 14:28:02,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:02,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:02,481.481 INFO    ] No existing commands found in stream
[2026-06-13 14:28:07,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:28:07,511.511 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 14:28:08,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:28:08,085.085 INFO    ] Checking for system updates...
[2026-06-13 14:28:08,106.106 INFO    ] 200
[2026-06-13 14:28:08,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:08,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:08,140.140 INFO    ] No update needed
[2026-06-13 14:28:08,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 14:28:08,161.161 INFO    ] 200
[2026-06-13 14:28:08,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:08,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:28:08,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:08,228.228 INFO    ] No camera update needed
[2026-06-13 14:28:08,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:28:08,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:28:08,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:28:08,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:10,274.274 INFO    ] ================================================
[2026-06-13 14:28:10,290.290 INFO    ] Launching Daemon at Sat Jun 13 14:28:10 IST 2026
[2026-06-13 14:28:10,301.301 INFO    ] ================================================
[2026-06-13 14:28:10,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:10
[2026-06-13 14:28:10,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:11,219.219 INFO    ] Initializing speech engine...
[2026-06-13 14:28:11,226.226 INFO    ] 2026-06-13 14:28:11
[2026-06-13 14:28:11,474.474 INFO    ] 2026-06-13 14:28:11
[2026-06-13 14:28:11,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:11,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:11,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:11,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:11,957.957 INFO    ] time= 13/06/2026 14:28:11
[2026-06-13 14:28:12,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:12,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:12,148.148 INFO    ] No existing commands found in stream
[2026-06-13 14:28:17,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:28:17,184.184 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 14:28:17,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:28:17,732.732 INFO    ] Checking for system updates...
[2026-06-13 14:28:17,757.757 INFO    ] 200
[2026-06-13 14:28:17,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:17,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:17,790.790 INFO    ] No update needed
[2026-06-13 14:28:17,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 14:28:17,811.811 INFO    ] 200
[2026-06-13 14:28:17,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:17,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:28:17,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:17,886.886 INFO    ] No camera update needed
[2026-06-13 14:28:17,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:28:17,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:28:17,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:28:17,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:19,934.934 INFO    ] ================================================
[2026-06-13 14:28:19,950.950 INFO    ] Launching Daemon at Sat Jun 13 14:28:19 IST 2026
[2026-06-13 14:28:19,961.961 INFO    ] ================================================
[2026-06-13 14:28:20,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:20
[2026-06-13 14:28:20,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:20,740.740 INFO    ] Initializing speech engine...
[2026-06-13 14:28:20,744.744 INFO    ] 2026-06-13 14:28:20
[2026-06-13 14:28:20,962.962 INFO    ] 2026-06-13 14:28:20
[2026-06-13 14:28:20,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:21,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:21,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:21,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:21,385.385 INFO    ] time= 13/06/2026 14:28:21
[2026-06-13 14:28:21,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:21,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:21,482.482 INFO    ] No existing commands found in stream
[2026-06-13 14:28:26,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:28:26,495.495 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 14:28:28,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:28:28,071.071 INFO    ] Checking for system updates...
[2026-06-13 14:28:28,094.094 INFO    ] 200
[2026-06-13 14:28:28,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:28,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:28,127.127 INFO    ] No update needed
[2026-06-13 14:28:28,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 14:28:28,148.148 INFO    ] 200
[2026-06-13 14:28:28,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:28,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:28:28,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:28,216.216 INFO    ] No camera update needed
[2026-06-13 14:28:28,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:28:28,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:28:28,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:28:28,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:30,262.262 INFO    ] ================================================
[2026-06-13 14:28:30,276.276 INFO    ] Launching Daemon at Sat Jun 13 14:28:30 IST 2026
[2026-06-13 14:28:30,288.288 INFO    ] ================================================
[2026-06-13 14:28:30,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:30
[2026-06-13 14:28:30,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:31,145.145 INFO    ] Initializing speech engine...
[2026-06-13 14:28:31,150.150 INFO    ] 2026-06-13 14:28:31
[2026-06-13 14:28:31,382.382 INFO    ] 2026-06-13 14:28:31
[2026-06-13 14:28:31,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:31,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:31,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:31,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:31,821.821 INFO    ] time= 13/06/2026 14:28:31
[2026-06-13 14:28:31,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:31,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:31,937.937 INFO    ] No existing commands found in stream
[2026-06-13 14:28:36,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:28:36,952.952 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 14:28:39,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:28:39,536.536 INFO    ] Checking for system updates...
[2026-06-13 14:28:39,557.557 INFO    ] 200
[2026-06-13 14:28:39,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:39,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:39,592.592 INFO    ] No update needed
[2026-06-13 14:28:39,594.594 INFO    ] Checking for camera pi updates...
[2026-06-13 14:28:39,614.614 INFO    ] 200
[2026-06-13 14:28:39,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:39,641.641 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:28:39,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:28:39,684.684 INFO    ] No camera update needed
[2026-06-13 14:28:39,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:28:39,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:28:39,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:28:39,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:41,732.732 INFO    ] ================================================
[2026-06-13 14:28:41,748.748 INFO    ] Launching Daemon at Sat Jun 13 14:28:41 IST 2026
[2026-06-13 14:28:41,759.759 INFO    ] ================================================
[2026-06-13 14:28:42,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:42
[2026-06-13 14:28:42,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:42,547.547 INFO    ] Initializing speech engine...
[2026-06-13 14:28:42,553.553 INFO    ] 2026-06-13 14:28:42
[2026-06-13 14:28:42,758.758 INFO    ] 2026-06-13 14:28:42
[2026-06-13 14:28:42,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:42,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:42,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:43,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:43,172.172 INFO    ] time= 13/06/2026 14:28:43
[2026-06-13 14:28:43,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:43,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:43,279.279 INFO    ] No existing commands found in stream
[2026-06-13 14:28:48,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:28:48,295.295 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 14:28:51,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:28:51,202.202 INFO    ] Checking for system updates...
[2026-06-13 14:28:51,223.223 INFO    ] 200
[2026-06-13 14:28:51,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:51,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:51,259.259 INFO    ] No update needed
[2026-06-13 14:28:51,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 14:28:51,280.280 INFO    ] 200
[2026-06-13 14:28:51,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:28:51,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:28:51,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:28:51,351.351 INFO    ] No camera update needed
[2026-06-13 14:28:51,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:28:51,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:28:51,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:28:51,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:28:53,400.400 INFO    ] ================================================
[2026-06-13 14:28:53,416.416 INFO    ] Launching Daemon at Sat Jun 13 14:28:53 IST 2026
[2026-06-13 14:28:53,426.426 INFO    ] ================================================
[2026-06-13 14:28:53,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:28:53
[2026-06-13 14:28:54,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:28:54,240.240 INFO    ] Initializing speech engine...
[2026-06-13 14:28:54,245.245 INFO    ] 2026-06-13 14:28:54
[2026-06-13 14:28:54,455.455 INFO    ] 2026-06-13 14:28:54
[2026-06-13 14:28:54,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:28:54,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:28:54,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:28:54,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:28:54,860.860 INFO    ] time= 13/06/2026 14:28:54
[2026-06-13 14:28:54,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:28:54,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:28:55,047.047 INFO    ] No existing commands found in stream
[2026-06-13 14:29:00,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:00,061.061 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 14:29:03,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:29:03,088.088 INFO    ] Checking for system updates...
[2026-06-13 14:29:03,124.124 INFO    ] 200
[2026-06-13 14:29:03,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:03,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:29:03,195.195 INFO    ] No update needed
[2026-06-13 14:29:03,198.198 INFO    ] Checking for camera pi updates...
[2026-06-13 14:29:03,232.232 INFO    ] 200
[2026-06-13 14:29:03,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:03,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:29:03,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:03,320.320 INFO    ] No camera update needed
[2026-06-13 14:29:03,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:29:03,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:29:03,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:29:03,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:29:05,375.375 INFO    ] ================================================
[2026-06-13 14:29:05,391.391 INFO    ] Launching Daemon at Sat Jun 13 14:29:05 IST 2026
[2026-06-13 14:29:05,402.402 INFO    ] ================================================
[2026-06-13 14:29:05,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:29:05
[2026-06-13 14:29:06,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:29:06,193.193 INFO    ] Initializing speech engine...
[2026-06-13 14:29:06,208.208 INFO    ] 2026-06-13 14:29:06
[2026-06-13 14:29:06,430.430 INFO    ] 2026-06-13 14:29:06
[2026-06-13 14:29:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:29:06,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:29:06,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:29:06,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:29:06,841.841 INFO    ] time= 13/06/2026 14:29:06
[2026-06-13 14:29:06,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:29:06,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:29:06,939.939 INFO    ] No existing commands found in stream
[2026-06-13 14:29:11,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:11,952.952 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 14:29:15,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:29:15,030.030 INFO    ] Checking for system updates...
[2026-06-13 14:29:15,052.052 INFO    ] 200
[2026-06-13 14:29:15,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:15,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:15,090.090 INFO    ] No update needed
[2026-06-13 14:29:15,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 14:29:15,112.112 INFO    ] 200
[2026-06-13 14:29:15,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:15,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:29:15,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:15,185.185 INFO    ] No camera update needed
[2026-06-13 14:29:15,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:29:15,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:29:15,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:29:15,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:29:17,234.234 INFO    ] ================================================
[2026-06-13 14:29:17,249.249 INFO    ] Launching Daemon at Sat Jun 13 14:29:17 IST 2026
[2026-06-13 14:29:17,261.261 INFO    ] ================================================
[2026-06-13 14:29:17,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:29:17
[2026-06-13 14:29:17,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:29:18,094.094 INFO    ] Initializing speech engine...
[2026-06-13 14:29:18,108.108 INFO    ] 2026-06-13 14:29:18
[2026-06-13 14:29:18,313.313 INFO    ] 2026-06-13 14:29:18
[2026-06-13 14:29:18,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:29:18,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:29:18,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:29:18,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:29:18,714.714 INFO    ] time= 13/06/2026 14:29:18
[2026-06-13 14:29:18,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:29:18,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:29:18,859.859 INFO    ] No existing commands found in stream
[2026-06-13 14:29:23,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:23,872.872 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 14:29:26,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:29:26,134.134 INFO    ] Checking for system updates...
[2026-06-13 14:29:26,155.155 INFO    ] 200
[2026-06-13 14:29:26,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:26,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:26,189.189 INFO    ] No update needed
[2026-06-13 14:29:26,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 14:29:26,209.209 INFO    ] 200
[2026-06-13 14:29:26,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:26,237.237 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:29:26,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:26,285.285 INFO    ] No camera update needed
[2026-06-13 14:29:26,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:29:26,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:29:26,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:29:26,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:29:28,332.332 INFO    ] ================================================
[2026-06-13 14:29:28,347.347 INFO    ] Launching Daemon at Sat Jun 13 14:29:28 IST 2026
[2026-06-13 14:29:28,358.358 INFO    ] ================================================
[2026-06-13 14:29:28,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:29:28
[2026-06-13 14:29:29,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:29:29,211.211 INFO    ] Initializing speech engine...
[2026-06-13 14:29:29,215.215 INFO    ] 2026-06-13 14:29:29
[2026-06-13 14:29:29,441.441 INFO    ] 2026-06-13 14:29:29
[2026-06-13 14:29:29,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:29:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:29:29,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:29:29,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:29:29,930.930 INFO    ] time= 13/06/2026 14:29:29
[2026-06-13 14:29:29,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:29:29,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:29:30,121.121 INFO    ] No existing commands found in stream
[2026-06-13 14:29:35,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:35,154.154 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 14:29:38,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:29:38,580.580 INFO    ] Checking for system updates...
[2026-06-13 14:29:38,601.601 INFO    ] 200
[2026-06-13 14:29:38,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:38,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:29:38,633.633 INFO    ] No update needed
[2026-06-13 14:29:38,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 14:29:38,656.656 INFO    ] 200
[2026-06-13 14:29:38,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:38,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:29:38,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:29:38,722.722 INFO    ] No camera update needed
[2026-06-13 14:29:38,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:29:38,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:29:38,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:29:38,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:29:40,773.773 INFO    ] ================================================
[2026-06-13 14:29:40,788.788 INFO    ] Launching Daemon at Sat Jun 13 14:29:40 IST 2026
[2026-06-13 14:29:40,799.799 INFO    ] ================================================
[2026-06-13 14:29:41,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:29:41
[2026-06-13 14:29:41,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:29:41,587.587 INFO    ] Initializing speech engine...
[2026-06-13 14:29:41,592.592 INFO    ] 2026-06-13 14:29:41
[2026-06-13 14:29:41,795.795 INFO    ] 2026-06-13 14:29:41
[2026-06-13 14:29:41,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:29:41,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:29:41,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:29:42,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:29:42,199.199 INFO    ] time= 13/06/2026 14:29:42
[2026-06-13 14:29:42,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:29:42,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:29:42,363.363 INFO    ] No existing commands found in stream
[2026-06-13 14:29:47,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:47,376.376 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 14:29:50,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:29:50,235.235 INFO    ] Checking for system updates...
[2026-06-13 14:29:50,256.256 INFO    ] 200
[2026-06-13 14:29:50,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:50,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:29:50,292.292 INFO    ] No update needed
[2026-06-13 14:29:50,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 14:29:50,315.315 INFO    ] 200
[2026-06-13 14:29:50,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:29:50,341.341 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:29:50,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:29:50,381.381 INFO    ] No camera update needed
[2026-06-13 14:29:50,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:29:50,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:29:50,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:29:50,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:29:52,430.430 INFO    ] ================================================
[2026-06-13 14:29:52,446.446 INFO    ] Launching Daemon at Sat Jun 13 14:29:52 IST 2026
[2026-06-13 14:29:52,457.457 INFO    ] ================================================
[2026-06-13 14:29:52,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:29:52
[2026-06-13 14:29:53,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:29:53,280.280 INFO    ] Initializing speech engine...
[2026-06-13 14:29:53,285.285 INFO    ] 2026-06-13 14:29:53
[2026-06-13 14:29:53,489.489 INFO    ] 2026-06-13 14:29:53
[2026-06-13 14:29:53,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:29:53,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:29:53,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:29:53,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:29:53,892.892 INFO    ] time= 13/06/2026 14:29:53
[2026-06-13 14:29:53,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:29:53,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:29:54,001.001 INFO    ] No existing commands found in stream
[2026-06-13 14:29:59,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:29:59,015.015 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 14:30:02,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:30:02,384.384 INFO    ] Checking for system updates...
[2026-06-13 14:30:02,441.441 INFO    ] 200
[2026-06-13 14:30:02,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:02,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:02,531.531 INFO    ] No update needed
[2026-06-13 14:30:02,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 14:30:02,585.585 INFO    ] 200
[2026-06-13 14:30:02,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:02,658.658 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:30:02,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:02,703.703 INFO    ] No camera update needed
[2026-06-13 14:30:02,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:30:02,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:30:02,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:30:02,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:30:04,773.773 INFO    ] ================================================
[2026-06-13 14:30:04,789.789 INFO    ] Launching Daemon at Sat Jun 13 14:30:04 IST 2026
[2026-06-13 14:30:04,800.800 INFO    ] ================================================
[2026-06-13 14:30:05,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:30:05
[2026-06-13 14:30:05,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:30:05,751.751 INFO    ] Initializing speech engine...
[2026-06-13 14:30:05,759.759 INFO    ] 2026-06-13 14:30:05
[2026-06-13 14:30:05,988.988 INFO    ] 2026-06-13 14:30:05
[2026-06-13 14:30:06,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:30:06,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:30:06,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:30:06,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:30:06,380.380 INFO    ] time= 13/06/2026 14:30:06
[2026-06-13 14:30:06,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:30:06,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:30:06,568.568 INFO    ] No existing commands found in stream
[2026-06-13 14:30:11,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:30:11,585.585 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 14:30:13,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:30:13,649.649 INFO    ] Checking for system updates...
[2026-06-13 14:30:13,669.669 INFO    ] 200
[2026-06-13 14:30:13,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:13,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:30:13,702.702 INFO    ] No update needed
[2026-06-13 14:30:13,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 14:30:13,725.725 INFO    ] 200
[2026-06-13 14:30:13,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:13,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:30:13,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:30:13,779.779 INFO    ] No camera update needed
[2026-06-13 14:30:13,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:30:13,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:30:13,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:30:13,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:30:15,826.826 INFO    ] ================================================
[2026-06-13 14:30:15,841.841 INFO    ] Launching Daemon at Sat Jun 13 14:30:15 IST 2026
[2026-06-13 14:30:15,851.851 INFO    ] ================================================
[2026-06-13 14:30:16,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:30:16
[2026-06-13 14:30:16,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:30:16,641.641 INFO    ] Initializing speech engine...
[2026-06-13 14:30:16,654.654 INFO    ] 2026-06-13 14:30:16
[2026-06-13 14:30:16,862.862 INFO    ] 2026-06-13 14:30:16
[2026-06-13 14:30:16,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:30:17,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:30:17,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:30:17,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:30:17,267.267 INFO    ] time= 13/06/2026 14:30:17
[2026-06-13 14:30:17,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:30:17,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:30:17,384.384 INFO    ] No existing commands found in stream
[2026-06-13 14:30:22,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:30:22,401.401 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 14:30:24,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:30:24,029.029 INFO    ] Checking for system updates...
[2026-06-13 14:30:24,050.050 INFO    ] 200
[2026-06-13 14:30:24,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:24,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:24,086.086 INFO    ] No update needed
[2026-06-13 14:30:24,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 14:30:24,107.107 INFO    ] 200
[2026-06-13 14:30:24,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:24,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:30:24,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:24,176.176 INFO    ] No camera update needed
[2026-06-13 14:30:24,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:30:24,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:30:24,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:30:24,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:30:26,224.224 INFO    ] ================================================
[2026-06-13 14:30:26,240.240 INFO    ] Launching Daemon at Sat Jun 13 14:30:26 IST 2026
[2026-06-13 14:30:26,251.251 INFO    ] ================================================
[2026-06-13 14:30:26,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:30:26
[2026-06-13 14:30:26,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:30:27,042.042 INFO    ] Initializing speech engine...
[2026-06-13 14:30:27,047.047 INFO    ] 2026-06-13 14:30:27
[2026-06-13 14:30:27,251.251 INFO    ] 2026-06-13 14:30:27
[2026-06-13 14:30:27,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:30:27,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:30:27,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:30:27,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:30:27,667.667 INFO    ] time= 13/06/2026 14:30:27
[2026-06-13 14:30:27,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:30:27,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:30:27,763.763 INFO    ] No existing commands found in stream
[2026-06-13 14:30:32,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:30:32,775.775 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 14:30:36,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:30:36,579.579 INFO    ] Checking for system updates...
[2026-06-13 14:30:36,600.600 INFO    ] 200
[2026-06-13 14:30:36,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:36,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:36,635.635 INFO    ] No update needed
[2026-06-13 14:30:36,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 14:30:36,656.656 INFO    ] 200
[2026-06-13 14:30:36,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:36,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:30:36,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:30:36,727.727 INFO    ] No camera update needed
[2026-06-13 14:30:36,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:30:36,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:30:36,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:30:36,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:30:38,776.776 INFO    ] ================================================
[2026-06-13 14:30:38,792.792 INFO    ] Launching Daemon at Sat Jun 13 14:30:38 IST 2026
[2026-06-13 14:30:38,802.802 INFO    ] ================================================
[2026-06-13 14:30:39,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:30:39
[2026-06-13 14:30:39,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:30:39,674.674 INFO    ] Initializing speech engine...
[2026-06-13 14:30:39,680.680 INFO    ] 2026-06-13 14:30:39
[2026-06-13 14:30:39,889.889 INFO    ] 2026-06-13 14:30:39
[2026-06-13 14:30:39,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:30:40,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:30:40,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:30:40,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:30:40,306.306 INFO    ] time= 13/06/2026 14:30:40
[2026-06-13 14:30:40,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:30:40,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:30:40,414.414 INFO    ] No existing commands found in stream
[2026-06-13 14:30:45,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:30:45,431.431 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 14:30:49,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:30:49,049.049 INFO    ] Checking for system updates...
[2026-06-13 14:30:49,070.070 INFO    ] 200
[2026-06-13 14:30:49,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:49,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:30:49,105.105 INFO    ] No update needed
[2026-06-13 14:30:49,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 14:30:49,127.127 INFO    ] 200
[2026-06-13 14:30:49,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:30:49,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:30:49,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:30:49,197.197 INFO    ] No camera update needed
[2026-06-13 14:30:49,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:30:49,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:30:49,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:30:49,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:30:51,245.245 INFO    ] ================================================
[2026-06-13 14:30:51,261.261 INFO    ] Launching Daemon at Sat Jun 13 14:30:51 IST 2026
[2026-06-13 14:30:51,272.272 INFO    ] ================================================
[2026-06-13 14:30:51,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:30:51
[2026-06-13 14:30:51,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:30:52,077.077 INFO    ] Initializing speech engine...
[2026-06-13 14:30:52,083.083 INFO    ] 2026-06-13 14:30:52
[2026-06-13 14:30:52,291.291 INFO    ] 2026-06-13 14:30:52
[2026-06-13 14:30:52,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:30:52,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:30:52,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:30:52,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:30:52,706.706 INFO    ] time= 13/06/2026 14:30:52
[2026-06-13 14:30:52,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:30:52,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:30:52,805.805 INFO    ] No existing commands found in stream
[2026-06-13 14:30:57,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:30:57,817.817 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 14:31:00,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:31:00,384.384 INFO    ] Checking for system updates...
[2026-06-13 14:31:00,407.407 INFO    ] 200
[2026-06-13 14:31:00,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:00,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:31:00,443.443 INFO    ] No update needed
[2026-06-13 14:31:00,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:00,467.467 INFO    ] 200
[2026-06-13 14:31:00,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:00,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:00,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:31:00,537.537 INFO    ] No camera update needed
[2026-06-13 14:31:00,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:00,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:00,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:00,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:02,581.581 INFO    ] ================================================
[2026-06-13 14:31:02,593.593 INFO    ] Launching Daemon at Sat Jun 13 14:31:02 IST 2026
[2026-06-13 14:31:02,601.601 INFO    ] ================================================
[2026-06-13 14:31:02,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:02
[2026-06-13 14:31:03,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:03,439.439 INFO    ] Initializing speech engine...
[2026-06-13 14:31:03,446.446 INFO    ] 2026-06-13 14:31:03
[2026-06-13 14:31:03,659.659 INFO    ] 2026-06-13 14:31:03
[2026-06-13 14:31:03,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:31:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:31:03,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:31:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:31:03,928.928 INFO    ] time= 13/06/2026 14:31:03
[2026-06-13 14:31:03,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:31:04,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:31:04,119.119 INFO    ] No existing commands found in stream
[2026-06-13 14:31:09,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:31:09,152.152 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 14:31:10,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:31:10,462.462 INFO    ] Checking for system updates...
[2026-06-13 14:31:10,483.483 INFO    ] 200
[2026-06-13 14:31:10,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:10,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:10,516.516 INFO    ] No update needed
[2026-06-13 14:31:10,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:10,538.538 INFO    ] 200
[2026-06-13 14:31:10,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:10,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:10,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:10,623.623 INFO    ] No camera update needed
[2026-06-13 14:31:10,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:10,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:10,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:10,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:12,679.679 INFO    ] ================================================
[2026-06-13 14:31:12,695.695 INFO    ] Launching Daemon at Sat Jun 13 14:31:12 IST 2026
[2026-06-13 14:31:12,707.707 INFO    ] ================================================
[2026-06-13 14:31:13,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:13
[2026-06-13 14:31:13,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:13,905.905 INFO    ] Initializing speech engine...
[2026-06-13 14:31:13,915.915 INFO    ] 2026-06-13 14:31:13
[2026-06-13 14:31:14,139.139 INFO    ] 2026-06-13 14:31:14
[2026-06-13 14:31:14,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:31:14,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:31:14,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:31:14,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:31:14,555.555 INFO    ] time= 13/06/2026 14:31:14
[2026-06-13 14:31:14,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:31:14,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:31:14,691.691 INFO    ] No existing commands found in stream
[2026-06-13 14:31:19,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:31:19,705.705 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 14:31:23,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:31:23,797.797 INFO    ] Checking for system updates...
[2026-06-13 14:31:23,819.819 INFO    ] 200
[2026-06-13 14:31:23,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:23,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:23,855.855 INFO    ] No update needed
[2026-06-13 14:31:23,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:23,876.876 INFO    ] 200
[2026-06-13 14:31:23,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:23,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:23,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:23,948.948 INFO    ] No camera update needed
[2026-06-13 14:31:23,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:23,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:23,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:23,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:26,999.999 INFO    ] ================================================
[2026-06-13 14:31:26,014.014 INFO    ] Launching Daemon at Sat Jun 13 14:31:26 IST 2026
[2026-06-13 14:31:26,026.026 INFO    ] ================================================
[2026-06-13 14:31:26,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:26
[2026-06-13 14:31:26,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:26,835.835 INFO    ] Initializing speech engine...
[2026-06-13 14:31:26,840.840 INFO    ] 2026-06-13 14:31:26
[2026-06-13 14:31:27,050.050 INFO    ] 2026-06-13 14:31:27
[2026-06-13 14:31:27,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:31:27,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:31:27,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:31:27,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:31:27,468.468 INFO    ] time= 13/06/2026 14:31:27
[2026-06-13 14:31:27,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:31:27,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:31:27,569.569 INFO    ] No existing commands found in stream
[2026-06-13 14:31:32,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:31:32,582.582 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 14:31:34,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:31:34,777.777 INFO    ] Checking for system updates...
[2026-06-13 14:31:34,799.799 INFO    ] 200
[2026-06-13 14:31:34,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:34,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:31:34,835.835 INFO    ] No update needed
[2026-06-13 14:31:34,837.837 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:34,856.856 INFO    ] 200
[2026-06-13 14:31:34,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:34,881.881 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:35,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:35,030.030 INFO    ] No camera update needed
[2026-06-13 14:31:35,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:35,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:35,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:35,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:37,079.079 INFO    ] ================================================
[2026-06-13 14:31:37,095.095 INFO    ] Launching Daemon at Sat Jun 13 14:31:37 IST 2026
[2026-06-13 14:31:37,106.106 INFO    ] ================================================
[2026-06-13 14:31:37,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:37
[2026-06-13 14:31:37,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:37,943.943 INFO    ] Initializing speech engine...
[2026-06-13 14:31:37,950.950 INFO    ] 2026-06-13 14:31:37
[2026-06-13 14:31:38,161.161 INFO    ] 2026-06-13 14:31:38
[2026-06-13 14:31:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:31:38,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:31:38,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:31:38,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:31:38,583.583 INFO    ] time= 13/06/2026 14:31:38
[2026-06-13 14:31:38,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:31:38,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:31:38,744.744 INFO    ] No existing commands found in stream
[2026-06-13 14:31:43,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:31:43,767.767 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 14:31:44,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:31:44,123.123 INFO    ] Checking for system updates...
[2026-06-13 14:31:44,145.145 INFO    ] 200
[2026-06-13 14:31:44,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:44,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:44,180.180 INFO    ] No update needed
[2026-06-13 14:31:44,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:44,201.201 INFO    ] 200
[2026-06-13 14:31:44,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:44,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:44,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:44,262.262 INFO    ] No camera update needed
[2026-06-13 14:31:44,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:44,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:44,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:44,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:46,310.310 INFO    ] ================================================
[2026-06-13 14:31:46,325.325 INFO    ] Launching Daemon at Sat Jun 13 14:31:46 IST 2026
[2026-06-13 14:31:46,336.336 INFO    ] ================================================
[2026-06-13 14:31:46,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:46
[2026-06-13 14:31:46,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:47,125.125 INFO    ] Initializing speech engine...
[2026-06-13 14:31:47,138.138 INFO    ] 2026-06-13 14:31:47
[2026-06-13 14:31:47,346.346 INFO    ] 2026-06-13 14:31:47
[2026-06-13 14:31:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:31:47,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:31:47,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:31:47,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:31:47,757.757 INFO    ] time= 13/06/2026 14:31:47
[2026-06-13 14:31:47,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:31:47,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:31:47,870.870 INFO    ] No existing commands found in stream
[2026-06-13 14:31:52,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:31:52,887.887 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 14:31:56,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:31:56,817.817 INFO    ] Checking for system updates...
[2026-06-13 14:31:56,837.837 INFO    ] 200
[2026-06-13 14:31:56,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:56,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:31:56,873.873 INFO    ] No update needed
[2026-06-13 14:31:56,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 14:31:56,895.895 INFO    ] 200
[2026-06-13 14:31:56,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:31:56,921.921 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:31:56,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:31:56,969.969 INFO    ] No camera update needed
[2026-06-13 14:31:56,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:31:56,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:31:56,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:31:56,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:31:59,018.018 INFO    ] ================================================
[2026-06-13 14:31:59,033.033 INFO    ] Launching Daemon at Sat Jun 13 14:31:59 IST 2026
[2026-06-13 14:31:59,044.044 INFO    ] ================================================
[2026-06-13 14:31:59,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:31:59
[2026-06-13 14:31:59,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:31:59,867.867 INFO    ] Initializing speech engine...
[2026-06-13 14:31:59,872.872 INFO    ] 2026-06-13 14:31:59
[2026-06-13 14:32:00,078.078 INFO    ] 2026-06-13 14:32:00
[2026-06-13 14:32:00,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:00,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:00,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:00,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:00,477.477 INFO    ] time= 13/06/2026 14:32:00
[2026-06-13 14:32:00,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:00,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:00,599.599 INFO    ] No existing commands found in stream
[2026-06-13 14:32:05,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:32:05,611.611 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 14:32:07,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:32:07,057.057 INFO    ] Checking for system updates...
[2026-06-13 14:32:07,077.077 INFO    ] 200
[2026-06-13 14:32:07,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:07,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:07,112.112 INFO    ] No update needed
[2026-06-13 14:32:07,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 14:32:07,133.133 INFO    ] 200
[2026-06-13 14:32:07,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:07,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:32:07,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:07,205.205 INFO    ] No camera update needed
[2026-06-13 14:32:07,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:32:07,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:32:07,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:32:07,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:32:09,254.254 INFO    ] ================================================
[2026-06-13 14:32:09,269.269 INFO    ] Launching Daemon at Sat Jun 13 14:32:09 IST 2026
[2026-06-13 14:32:09,280.280 INFO    ] ================================================
[2026-06-13 14:32:09,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:32:09
[2026-06-13 14:32:09,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:32:10,103.103 INFO    ] Initializing speech engine...
[2026-06-13 14:32:10,110.110 INFO    ] 2026-06-13 14:32:10
[2026-06-13 14:32:10,311.311 INFO    ] 2026-06-13 14:32:10
[2026-06-13 14:32:10,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:10,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:10,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:10,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:10,727.727 INFO    ] time= 13/06/2026 14:32:10
[2026-06-13 14:32:10,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:10,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:10,827.827 INFO    ] No existing commands found in stream
[2026-06-13 14:32:15,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:32:15,844.844 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 14:32:19,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:32:19,137.137 INFO    ] Checking for system updates...
[2026-06-13 14:32:19,159.159 INFO    ] 200
[2026-06-13 14:32:19,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:19,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:32:19,193.193 INFO    ] No update needed
[2026-06-13 14:32:19,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 14:32:19,214.214 INFO    ] 200
[2026-06-13 14:32:19,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:19,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:32:19,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:32:19,279.279 INFO    ] No camera update needed
[2026-06-13 14:32:19,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:32:19,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:32:19,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:32:19,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:32:21,327.327 INFO    ] ================================================
[2026-06-13 14:32:21,347.347 INFO    ] Launching Daemon at Sat Jun 13 14:32:21 IST 2026
[2026-06-13 14:32:21,358.358 INFO    ] ================================================
[2026-06-13 14:32:21,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:32:21
[2026-06-13 14:32:22,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:32:22,218.218 INFO    ] Initializing speech engine...
[2026-06-13 14:32:22,223.223 INFO    ] 2026-06-13 14:32:22
[2026-06-13 14:32:22,431.431 INFO    ] 2026-06-13 14:32:22
[2026-06-13 14:32:22,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:22,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:22,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:22,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:22,861.861 INFO    ] time= 13/06/2026 14:32:22
[2026-06-13 14:32:22,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:22,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:22,957.957 INFO    ] No existing commands found in stream
[2026-06-13 14:32:27,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:32:27,972.972 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 14:32:31,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:32:31,127.127 INFO    ] Checking for system updates...
[2026-06-13 14:32:31,148.148 INFO    ] 200
[2026-06-13 14:32:31,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:31,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:31,183.183 INFO    ] No update needed
[2026-06-13 14:32:31,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 14:32:31,205.205 INFO    ] 200
[2026-06-13 14:32:31,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:31,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:32:31,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:31,270.270 INFO    ] No camera update needed
[2026-06-13 14:32:31,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:32:31,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:32:31,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:32:31,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:32:33,303.303 INFO    ] ================================================
[2026-06-13 14:32:33,311.311 INFO    ] Launching Daemon at Sat Jun 13 14:32:33 IST 2026
[2026-06-13 14:32:33,317.317 INFO    ] ================================================
[2026-06-13 14:32:33,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:32:33
[2026-06-13 14:32:34,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:32:34,192.192 INFO    ] Initializing speech engine...
[2026-06-13 14:32:34,197.197 INFO    ] 2026-06-13 14:32:34
[2026-06-13 14:32:34,405.405 INFO    ] 2026-06-13 14:32:34
[2026-06-13 14:32:34,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:34,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:34,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:34,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:34,818.818 INFO    ] time= 13/06/2026 14:32:34
[2026-06-13 14:32:34,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:34,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:35,051.051 INFO    ] No existing commands found in stream
[2026-06-13 14:32:40,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:32:40,078.078 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 14:32:41,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:32:41,480.480 INFO    ] Checking for system updates...
[2026-06-13 14:32:41,502.502 INFO    ] 200
[2026-06-13 14:32:41,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:41,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:41,535.535 INFO    ] No update needed
[2026-06-13 14:32:41,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 14:32:41,556.556 INFO    ] 200
[2026-06-13 14:32:41,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:41,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:32:41,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:41,636.636 INFO    ] No camera update needed
[2026-06-13 14:32:41,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:32:41,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:32:41,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:32:41,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:32:43,684.684 INFO    ] ================================================
[2026-06-13 14:32:43,707.707 INFO    ] Launching Daemon at Sat Jun 13 14:32:43 IST 2026
[2026-06-13 14:32:43,718.718 INFO    ] ================================================
[2026-06-13 14:32:44,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:32:44
[2026-06-13 14:32:44,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:32:44,543.543 INFO    ] Initializing speech engine...
[2026-06-13 14:32:44,548.548 INFO    ] 2026-06-13 14:32:44
[2026-06-13 14:32:44,751.751 INFO    ] 2026-06-13 14:32:44
[2026-06-13 14:32:44,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:44,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:44,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:45,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:45,156.156 INFO    ] time= 13/06/2026 14:32:45
[2026-06-13 14:32:45,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:45,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:45,271.271 INFO    ] No existing commands found in stream
[2026-06-13 14:32:50,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:32:50,283.283 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 14:32:54,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:32:54,066.066 INFO    ] Checking for system updates...
[2026-06-13 14:32:54,086.086 INFO    ] 200
[2026-06-13 14:32:54,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:54,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:54,120.120 INFO    ] No update needed
[2026-06-13 14:32:54,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 14:32:54,141.141 INFO    ] 200
[2026-06-13 14:32:54,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:32:54,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:32:54,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:32:54,205.205 INFO    ] No camera update needed
[2026-06-13 14:32:54,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:32:54,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:32:54,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:32:54,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:32:56,254.254 INFO    ] ================================================
[2026-06-13 14:32:56,269.269 INFO    ] Launching Daemon at Sat Jun 13 14:32:56 IST 2026
[2026-06-13 14:32:56,280.280 INFO    ] ================================================
[2026-06-13 14:32:56,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:32:56
[2026-06-13 14:32:56,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:32:57,088.088 INFO    ] Initializing speech engine...
[2026-06-13 14:32:57,093.093 INFO    ] 2026-06-13 14:32:57
[2026-06-13 14:32:57,301.301 INFO    ] 2026-06-13 14:32:57
[2026-06-13 14:32:57,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:32:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:32:57,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:32:57,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:32:57,720.720 INFO    ] time= 13/06/2026 14:32:57
[2026-06-13 14:32:57,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:32:57,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:32:57,821.821 INFO    ] No existing commands found in stream
[2026-06-13 14:33:02,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:02,833.833 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 14:33:04,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:33:04,629.629 INFO    ] Checking for system updates...
[2026-06-13 14:33:04,650.650 INFO    ] 200
[2026-06-13 14:33:04,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:04,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:04,683.683 INFO    ] No update needed
[2026-06-13 14:33:04,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:04,705.705 INFO    ] 200
[2026-06-13 14:33:04,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:04,730.730 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:04,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:04,778.778 INFO    ] No camera update needed
[2026-06-13 14:33:04,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:04,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:04,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:04,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:33:06,826.826 INFO    ] ================================================
[2026-06-13 14:33:06,845.845 INFO    ] Launching Daemon at Sat Jun 13 14:33:06 IST 2026
[2026-06-13 14:33:06,856.856 INFO    ] ================================================
[2026-06-13 14:33:07,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:33:07
[2026-06-13 14:33:07,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:33:07,664.664 INFO    ] Initializing speech engine...
[2026-06-13 14:33:07,668.668 INFO    ] 2026-06-13 14:33:07
[2026-06-13 14:33:07,896.896 INFO    ] 2026-06-13 14:33:07
[2026-06-13 14:33:07,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:33:08,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:33:08,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:33:08,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:33:08,325.325 INFO    ] time= 13/06/2026 14:33:08
[2026-06-13 14:33:08,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:33:08,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:33:08,452.452 INFO    ] No existing commands found in stream
[2026-06-13 14:33:13,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:13,465.465 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 14:33:14,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:33:14,140.140 INFO    ] Checking for system updates...
[2026-06-13 14:33:14,161.161 INFO    ] 200
[2026-06-13 14:33:14,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:14,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:14,195.195 INFO    ] No update needed
[2026-06-13 14:33:14,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:14,218.218 INFO    ] 200
[2026-06-13 14:33:14,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:14,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:14,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:14,280.280 INFO    ] No camera update needed
[2026-06-13 14:33:14,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:14,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:14,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:14,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:33:16,328.328 INFO    ] ================================================
[2026-06-13 14:33:16,344.344 INFO    ] Launching Daemon at Sat Jun 13 14:33:16 IST 2026
[2026-06-13 14:33:16,355.355 INFO    ] ================================================
[2026-06-13 14:33:16,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:33:16
[2026-06-13 14:33:17,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:33:17,151.151 INFO    ] Initializing speech engine...
[2026-06-13 14:33:17,156.156 INFO    ] 2026-06-13 14:33:17
[2026-06-13 14:33:17,360.360 INFO    ] 2026-06-13 14:33:17
[2026-06-13 14:33:17,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:33:17,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:33:17,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:33:17,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:33:17,774.774 INFO    ] time= 13/06/2026 14:33:17
[2026-06-13 14:33:17,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:33:17,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:33:17,871.871 INFO    ] No existing commands found in stream
[2026-06-13 14:33:22,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:22,885.885 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 14:33:26,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:33:26,971.971 INFO    ] Checking for system updates...
[2026-06-13 14:33:26,992.992 INFO    ] 200
[2026-06-13 14:33:26,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:27,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:27,025.025 INFO    ] No update needed
[2026-06-13 14:33:27,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:27,047.047 INFO    ] 200
[2026-06-13 14:33:27,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:27,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:27,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:33:27,115.115 INFO    ] No camera update needed
[2026-06-13 14:33:27,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:27,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:27,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:27,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:33:29,165.165 INFO    ] ================================================
[2026-06-13 14:33:29,180.180 INFO    ] Launching Daemon at Sat Jun 13 14:33:29 IST 2026
[2026-06-13 14:33:29,191.191 INFO    ] ================================================
[2026-06-13 14:33:29,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:33:29
[2026-06-13 14:33:29,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:33:29,981.981 INFO    ] Initializing speech engine...
[2026-06-13 14:33:29,994.994 INFO    ] 2026-06-13 14:33:29
[2026-06-13 14:33:30,202.202 INFO    ] 2026-06-13 14:33:30
[2026-06-13 14:33:30,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:33:30,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:33:30,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:33:30,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:33:30,608.608 INFO    ] time= 13/06/2026 14:33:30
[2026-06-13 14:33:30,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:33:30,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:33:30,719.719 INFO    ] No existing commands found in stream
[2026-06-13 14:33:35,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:35,731.731 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 14:33:36,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:33:36,975.975 INFO    ] Checking for system updates...
[2026-06-13 14:33:37,000.000 INFO    ] 200
[2026-06-13 14:33:37,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:37,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:37,034.034 INFO    ] No update needed
[2026-06-13 14:33:37,035.035 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:37,055.055 INFO    ] 200
[2026-06-13 14:33:37,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:37,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:37,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:37,221.221 INFO    ] No camera update needed
[2026-06-13 14:33:37,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:37,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:37,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:37,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:33:39,270.270 INFO    ] ================================================
[2026-06-13 14:33:39,285.285 INFO    ] Launching Daemon at Sat Jun 13 14:33:39 IST 2026
[2026-06-13 14:33:39,296.296 INFO    ] ================================================
[2026-06-13 14:33:39,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:33:39
[2026-06-13 14:33:39,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:33:40,106.106 INFO    ] Initializing speech engine...
[2026-06-13 14:33:40,117.117 INFO    ] 2026-06-13 14:33:40
[2026-06-13 14:33:40,347.347 INFO    ] 2026-06-13 14:33:40
[2026-06-13 14:33:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:33:40,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:33:40,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:33:40,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:33:40,734.734 INFO    ] time= 13/06/2026 14:33:40
[2026-06-13 14:33:40,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:33:40,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:33:40,838.838 INFO    ] No existing commands found in stream
[2026-06-13 14:33:45,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:45,851.851 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 14:33:48,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:33:48,619.619 INFO    ] Checking for system updates...
[2026-06-13 14:33:48,640.640 INFO    ] 200
[2026-06-13 14:33:48,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:48,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:33:48,676.676 INFO    ] No update needed
[2026-06-13 14:33:48,678.678 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:48,698.698 INFO    ] 200
[2026-06-13 14:33:48,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:48,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:48,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:33:48,763.763 INFO    ] No camera update needed
[2026-06-13 14:33:48,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:48,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:48,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:48,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:33:50,812.812 INFO    ] ================================================
[2026-06-13 14:33:50,827.827 INFO    ] Launching Daemon at Sat Jun 13 14:33:50 IST 2026
[2026-06-13 14:33:50,838.838 INFO    ] ================================================
[2026-06-13 14:33:51,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:33:51
[2026-06-13 14:33:51,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:33:51,686.686 INFO    ] Initializing speech engine...
[2026-06-13 14:33:51,691.691 INFO    ] 2026-06-13 14:33:51
[2026-06-13 14:33:51,899.899 INFO    ] 2026-06-13 14:33:51
[2026-06-13 14:33:51,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:33:52,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:33:52,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:33:52,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:33:52,319.319 INFO    ] time= 13/06/2026 14:33:52
[2026-06-13 14:33:52,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:33:52,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:33:52,414.414 INFO    ] No existing commands found in stream
[2026-06-13 14:33:57,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:33:57,426.426 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 14:33:57,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:33:57,845.845 INFO    ] Checking for system updates...
[2026-06-13 14:33:57,866.866 INFO    ] 200
[2026-06-13 14:33:57,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:57,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:57,900.900 INFO    ] No update needed
[2026-06-13 14:33:57,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 14:33:57,922.922 INFO    ] 200
[2026-06-13 14:33:57,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:33:57,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:33:57,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:33:57,995.995 INFO    ] No camera update needed
[2026-06-13 14:33:57,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:33:57,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:33:58,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:33:58,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:00,043.043 INFO    ] ================================================
[2026-06-13 14:34:00,059.059 INFO    ] Launching Daemon at Sat Jun 13 14:34:00 IST 2026
[2026-06-13 14:34:00,070.070 INFO    ] ================================================
[2026-06-13 14:34:00,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:00
[2026-06-13 14:34:00,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:00,899.899 INFO    ] Initializing speech engine...
[2026-06-13 14:34:00,905.905 INFO    ] 2026-06-13 14:34:00
[2026-06-13 14:34:01,115.115 INFO    ] 2026-06-13 14:34:01
[2026-06-13 14:34:01,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:01,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:34:01,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:34:01,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:34:01,469.469 INFO    ] time= 13/06/2026 14:34:01
[2026-06-13 14:34:01,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:34:01,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:34:01,568.568 INFO    ] No existing commands found in stream
[2026-06-13 14:34:06,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:34:06,581.581 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 14:34:10,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:34:10,106.106 INFO    ] Checking for system updates...
[2026-06-13 14:34:10,129.129 INFO    ] 200
[2026-06-13 14:34:10,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:10,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:34:10,163.163 INFO    ] No update needed
[2026-06-13 14:34:10,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 14:34:10,187.187 INFO    ] 200
[2026-06-13 14:34:10,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:10,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:34:10,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:34:10,250.250 INFO    ] No camera update needed
[2026-06-13 14:34:10,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:34:10,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:10,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:10,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:12,302.302 INFO    ] ================================================
[2026-06-13 14:34:12,317.317 INFO    ] Launching Daemon at Sat Jun 13 14:34:12 IST 2026
[2026-06-13 14:34:12,328.328 INFO    ] ================================================
[2026-06-13 14:34:12,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:12
[2026-06-13 14:34:12,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:13,121.121 INFO    ] Initializing speech engine...
[2026-06-13 14:34:13,125.125 INFO    ] 2026-06-13 14:34:13
[2026-06-13 14:34:13,352.352 INFO    ] 2026-06-13 14:34:13
[2026-06-13 14:34:13,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:34:13,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:34:13,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:34:13,771.771 INFO    ] time= 13/06/2026 14:34:13
[2026-06-13 14:34:13,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:34:13,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:34:13,901.901 INFO    ] No existing commands found in stream
[2026-06-13 14:34:18,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:34:18,915.915 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 14:34:20,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:34:20,489.489 INFO    ] Checking for system updates...
[2026-06-13 14:34:20,510.510 INFO    ] 200
[2026-06-13 14:34:20,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:20,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:34:20,543.543 INFO    ] No update needed
[2026-06-13 14:34:20,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 14:34:20,564.564 INFO    ] 200
[2026-06-13 14:34:20,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:20,589.589 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:34:20,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:34:20,649.649 INFO    ] No camera update needed
[2026-06-13 14:34:20,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:34:20,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:20,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:20,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:22,696.696 INFO    ] ================================================
[2026-06-13 14:34:22,711.711 INFO    ] Launching Daemon at Sat Jun 13 14:34:22 IST 2026
[2026-06-13 14:34:22,722.722 INFO    ] ================================================
[2026-06-13 14:34:23,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:23
[2026-06-13 14:34:23,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:23,507.507 INFO    ] Initializing speech engine...
[2026-06-13 14:34:23,511.511 INFO    ] 2026-06-13 14:34:23
[2026-06-13 14:34:23,713.713 INFO    ] 2026-06-13 14:34:23
[2026-06-13 14:34:23,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:23,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:34:23,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:34:24,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:34:24,131.131 INFO    ] time= 13/06/2026 14:34:24
[2026-06-13 14:34:24,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:34:24,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:34:24,293.293 INFO    ] No existing commands found in stream
[2026-06-13 14:34:29,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:34:29,305.305 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 14:34:30,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:34:30,238.238 INFO    ] Checking for system updates...
[2026-06-13 14:34:30,258.258 INFO    ] 200
[2026-06-13 14:34:30,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:30,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:34:30,293.293 INFO    ] No update needed
[2026-06-13 14:34:30,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 14:34:30,319.319 INFO    ] 200
[2026-06-13 14:34:30,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:30,352.352 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:34:30,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:34:30,390.390 INFO    ] No camera update needed
[2026-06-13 14:34:30,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:34:30,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:30,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:30,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:32,431.431 INFO    ] ================================================
[2026-06-13 14:34:32,439.439 INFO    ] Launching Daemon at Sat Jun 13 14:34:32 IST 2026
[2026-06-13 14:34:32,445.445 INFO    ] ================================================
[2026-06-13 14:34:32,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:32
[2026-06-13 14:34:33,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:33,942.942 INFO    ] Initializing speech engine...
[2026-06-13 14:34:33,956.956 INFO    ] 2026-06-13 14:34:33
[2026-06-13 14:34:34,262.262 INFO    ] 2026-06-13 14:34:34
[2026-06-13 14:34:34,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:34,892.892 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-06-13 14:34:35,223.223 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 14:34:35,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:35,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:35,369.369 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 14:34:35,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:37,466.466 INFO    ] ================================================
[2026-06-13 14:34:37,481.481 INFO    ] Launching Daemon at Sat Jun 13 14:34:37 IST 2026
[2026-06-13 14:34:37,492.492 INFO    ] ================================================
[2026-06-13 14:34:37,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:37
[2026-06-13 14:34:38,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:38,364.364 INFO    ] Initializing speech engine...
[2026-06-13 14:34:38,370.370 INFO    ] 2026-06-13 14:34:38
[2026-06-13 14:34:38,579.579 INFO    ] 2026-06-13 14:34:38
[2026-06-13 14:34:38,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:38,697.697 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-06-13 14:34:38,835.835 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 14:34:38,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:38,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:38,979.979 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 14:34:39,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:41,084.084 INFO    ] ================================================
[2026-06-13 14:34:41,100.100 INFO    ] Launching Daemon at Sat Jun 13 14:34:41 IST 2026
[2026-06-13 14:34:41,111.111 INFO    ] ================================================
[2026-06-13 14:34:41,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:41
[2026-06-13 14:34:41,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:41,902.902 INFO    ] Initializing speech engine...
[2026-06-13 14:34:41,907.907 INFO    ] 2026-06-13 14:34:41
[2026-06-13 14:34:42,122.122 INFO    ] 2026-06-13 14:34:42
[2026-06-13 14:34:42,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:42,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:34:42,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:34:42,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:34:42,548.548 INFO    ] time= 13/06/2026 14:34:42
[2026-06-13 14:34:42,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:34:42,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:34:42,680.680 INFO    ] No existing commands found in stream
[2026-06-13 14:34:47,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:34:47,694.694 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 14:34:51,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:34:51,525.525 INFO    ] Checking for system updates...
[2026-06-13 14:34:51,547.547 INFO    ] 200
[2026-06-13 14:34:51,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:51,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:34:51,583.583 INFO    ] No update needed
[2026-06-13 14:34:51,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 14:34:51,603.603 INFO    ] 200
[2026-06-13 14:34:51,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:34:51,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:34:51,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:34:51,670.670 INFO    ] No camera update needed
[2026-06-13 14:34:51,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:34:51,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:34:51,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:34:51,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:34:53,718.718 INFO    ] ================================================
[2026-06-13 14:34:53,733.733 INFO    ] Launching Daemon at Sat Jun 13 14:34:53 IST 2026
[2026-06-13 14:34:53,744.744 INFO    ] ================================================
[2026-06-13 14:34:54,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:34:54
[2026-06-13 14:34:54,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:34:54,530.530 INFO    ] Initializing speech engine...
[2026-06-13 14:34:54,535.535 INFO    ] 2026-06-13 14:34:54
[2026-06-13 14:34:54,742.742 INFO    ] 2026-06-13 14:34:54
[2026-06-13 14:34:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:34:54,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:34:54,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:34:55,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:34:55,148.148 INFO    ] time= 13/06/2026 14:34:55
[2026-06-13 14:34:55,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:34:55,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:34:55,267.267 INFO    ] No existing commands found in stream
[2026-06-13 14:35:00,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:00,283.283 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 14:35:00,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:35:00,970.970 INFO    ] Checking for system updates...
[2026-06-13 14:35:00,991.991 INFO    ] 200
[2026-06-13 14:35:00,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:01,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:01,026.026 INFO    ] No update needed
[2026-06-13 14:35:01,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:01,050.050 INFO    ] 200
[2026-06-13 14:35:01,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:01,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:01,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:01,120.120 INFO    ] No camera update needed
[2026-06-13 14:35:01,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:01,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:01,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:01,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:03,163.163 INFO    ] ================================================
[2026-06-13 14:35:03,179.179 INFO    ] Launching Daemon at Sat Jun 13 14:35:03 IST 2026
[2026-06-13 14:35:03,190.190 INFO    ] ================================================
[2026-06-13 14:35:03,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:03
[2026-06-13 14:35:03,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:04,071.071 INFO    ] Initializing speech engine...
[2026-06-13 14:35:04,076.076 INFO    ] 2026-06-13 14:35:04
[2026-06-13 14:35:04,283.283 INFO    ] 2026-06-13 14:35:04
[2026-06-13 14:35:04,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:04,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:04,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:04,707.707 INFO    ] time= 13/06/2026 14:35:04
[2026-06-13 14:35:04,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:04,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:04,805.805 INFO    ] No existing commands found in stream
[2026-06-13 14:35:09,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:09,823.823 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 14:35:11,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:35:11,405.405 INFO    ] Checking for system updates...
[2026-06-13 14:35:11,427.427 INFO    ] 200
[2026-06-13 14:35:11,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:11,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:11,464.464 INFO    ] No update needed
[2026-06-13 14:35:11,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:11,488.488 INFO    ] 200
[2026-06-13 14:35:11,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:11,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:11,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:11,553.553 INFO    ] No camera update needed
[2026-06-13 14:35:11,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:11,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:11,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:11,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:13,603.603 INFO    ] ================================================
[2026-06-13 14:35:13,618.618 INFO    ] Launching Daemon at Sat Jun 13 14:35:13 IST 2026
[2026-06-13 14:35:13,629.629 INFO    ] ================================================
[2026-06-13 14:35:13,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:13
[2026-06-13 14:35:14,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:14,431.431 INFO    ] Initializing speech engine...
[2026-06-13 14:35:14,436.436 INFO    ] 2026-06-13 14:35:14
[2026-06-13 14:35:14,642.642 INFO    ] 2026-06-13 14:35:14
[2026-06-13 14:35:14,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:14,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:14,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:14,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:15,048.048 INFO    ] time= 13/06/2026 14:35:14
[2026-06-13 14:35:15,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:15,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:15,165.165 INFO    ] No existing commands found in stream
[2026-06-13 14:35:20,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:20,178.178 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 14:35:23,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:35:23,994.994 INFO    ] Checking for system updates...
[2026-06-13 14:35:24,014.014 INFO    ] 200
[2026-06-13 14:35:24,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:24,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:35:24,047.047 INFO    ] No update needed
[2026-06-13 14:35:24,049.049 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:24,068.068 INFO    ] 200
[2026-06-13 14:35:24,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:24,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:24,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:35:24,128.128 INFO    ] No camera update needed
[2026-06-13 14:35:24,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:24,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:24,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:24,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:26,178.178 INFO    ] ================================================
[2026-06-13 14:35:26,193.193 INFO    ] Launching Daemon at Sat Jun 13 14:35:26 IST 2026
[2026-06-13 14:35:26,204.204 INFO    ] ================================================
[2026-06-13 14:35:26,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:26
[2026-06-13 14:35:26,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:27,018.018 INFO    ] Initializing speech engine...
[2026-06-13 14:35:27,023.023 INFO    ] 2026-06-13 14:35:27
[2026-06-13 14:35:27,240.240 INFO    ] 2026-06-13 14:35:27
[2026-06-13 14:35:27,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:27,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:27,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:27,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:27,659.659 INFO    ] time= 13/06/2026 14:35:27
[2026-06-13 14:35:27,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:27,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:27,753.753 INFO    ] No existing commands found in stream
[2026-06-13 14:35:32,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:32,764.764 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 14:35:35,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:35:35,353.353 INFO    ] Checking for system updates...
[2026-06-13 14:35:35,374.374 INFO    ] 200
[2026-06-13 14:35:35,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:35,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:35,409.409 INFO    ] No update needed
[2026-06-13 14:35:35,410.410 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:35,431.431 INFO    ] 200
[2026-06-13 14:35:35,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:35,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:35,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:35,501.501 INFO    ] No camera update needed
[2026-06-13 14:35:35,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:35,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:35,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:35,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:37,552.552 INFO    ] ================================================
[2026-06-13 14:35:37,567.567 INFO    ] Launching Daemon at Sat Jun 13 14:35:37 IST 2026
[2026-06-13 14:35:37,577.577 INFO    ] ================================================
[2026-06-13 14:35:37,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:37
[2026-06-13 14:35:38,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:38,388.388 INFO    ] Initializing speech engine...
[2026-06-13 14:35:38,393.393 INFO    ] 2026-06-13 14:35:38
[2026-06-13 14:35:38,599.599 INFO    ] 2026-06-13 14:35:38
[2026-06-13 14:35:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:38,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:38,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:38,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:39,012.012 INFO    ] time= 13/06/2026 14:35:38
[2026-06-13 14:35:39,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:39,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:39,118.118 INFO    ] No existing commands found in stream
[2026-06-13 14:35:44,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:44,132.132 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 14:35:44,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:35:44,888.888 INFO    ] Checking for system updates...
[2026-06-13 14:35:44,910.910 INFO    ] 200
[2026-06-13 14:35:44,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:44,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:35:44,944.944 INFO    ] No update needed
[2026-06-13 14:35:44,945.945 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:44,967.967 INFO    ] 200
[2026-06-13 14:35:44,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:44,994.994 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:45,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:35:45,136.136 INFO    ] No camera update needed
[2026-06-13 14:35:45,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:45,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:45,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:45,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:47,187.187 INFO    ] ================================================
[2026-06-13 14:35:47,203.203 INFO    ] Launching Daemon at Sat Jun 13 14:35:47 IST 2026
[2026-06-13 14:35:47,214.214 INFO    ] ================================================
[2026-06-13 14:35:47,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:47
[2026-06-13 14:35:47,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:47,998.998 INFO    ] Initializing speech engine...
[2026-06-13 14:35:48,001.001 INFO    ] 2026-06-13 14:35:47
[2026-06-13 14:35:48,216.216 INFO    ] 2026-06-13 14:35:48
[2026-06-13 14:35:48,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:48,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:48,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:48,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:48,612.612 INFO    ] time= 13/06/2026 14:35:48
[2026-06-13 14:35:48,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:48,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:48,732.732 INFO    ] No existing commands found in stream
[2026-06-13 14:35:53,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:35:53,749.749 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 14:35:56,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:35:56,207.207 INFO    ] Checking for system updates...
[2026-06-13 14:35:56,227.227 INFO    ] 200
[2026-06-13 14:35:56,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:56,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:56,261.261 INFO    ] No update needed
[2026-06-13 14:35:56,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 14:35:56,281.281 INFO    ] 200
[2026-06-13 14:35:56,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:35:56,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:35:56,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:35:56,347.347 INFO    ] No camera update needed
[2026-06-13 14:35:56,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:35:56,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:35:56,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:35:56,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:35:58,395.395 INFO    ] ================================================
[2026-06-13 14:35:58,411.411 INFO    ] Launching Daemon at Sat Jun 13 14:35:58 IST 2026
[2026-06-13 14:35:58,422.422 INFO    ] ================================================
[2026-06-13 14:35:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:35:58
[2026-06-13 14:35:59,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:35:59,231.231 INFO    ] Initializing speech engine...
[2026-06-13 14:35:59,236.236 INFO    ] 2026-06-13 14:35:59
[2026-06-13 14:35:59,439.439 INFO    ] 2026-06-13 14:35:59
[2026-06-13 14:35:59,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:35:59,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:35:59,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:35:59,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:35:59,872.872 INFO    ] time= 13/06/2026 14:35:59
[2026-06-13 14:35:59,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:35:59,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:35:59,986.986 INFO    ] No existing commands found in stream
[2026-06-13 14:36:04,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:36:05,001.001 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 14:36:05,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:36:05,966.966 INFO    ] Checking for system updates...
[2026-06-13 14:36:05,987.987 INFO    ] 200
[2026-06-13 14:36:05,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:06,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:36:06,020.020 INFO    ] No update needed
[2026-06-13 14:36:06,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 14:36:06,044.044 INFO    ] 200
[2026-06-13 14:36:06,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:06,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:36:06,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:36:06,120.120 INFO    ] No camera update needed
[2026-06-13 14:36:06,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:36:06,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:36:06,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:36:06,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:36:08,169.169 INFO    ] ================================================
[2026-06-13 14:36:08,187.187 INFO    ] Launching Daemon at Sat Jun 13 14:36:08 IST 2026
[2026-06-13 14:36:08,198.198 INFO    ] ================================================
[2026-06-13 14:36:08,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:36:08
[2026-06-13 14:36:08,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:36:09,013.013 INFO    ] Initializing speech engine...
[2026-06-13 14:36:09,017.017 INFO    ] 2026-06-13 14:36:09
[2026-06-13 14:36:09,221.221 INFO    ] 2026-06-13 14:36:09
[2026-06-13 14:36:09,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:36:09,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:36:09,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:36:09,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:36:09,631.631 INFO    ] time= 13/06/2026 14:36:09
[2026-06-13 14:36:09,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:36:09,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:36:09,809.809 INFO    ] No existing commands found in stream
[2026-06-13 14:36:14,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:36:14,822.822 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 14:36:18,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:36:18,662.662 INFO    ] Checking for system updates...
[2026-06-13 14:36:18,683.683 INFO    ] 200
[2026-06-13 14:36:18,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:18,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:36:18,716.716 INFO    ] No update needed
[2026-06-13 14:36:18,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 14:36:18,737.737 INFO    ] 200
[2026-06-13 14:36:18,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:18,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:36:18,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:36:18,802.802 INFO    ] No camera update needed
[2026-06-13 14:36:18,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:36:18,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:36:18,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:36:18,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:36:20,850.850 INFO    ] ================================================
[2026-06-13 14:36:20,865.865 INFO    ] Launching Daemon at Sat Jun 13 14:36:20 IST 2026
[2026-06-13 14:36:20,876.876 INFO    ] ================================================
[2026-06-13 14:36:21,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:36:21
[2026-06-13 14:36:21,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:36:21,653.653 INFO    ] Initializing speech engine...
[2026-06-13 14:36:21,658.658 INFO    ] 2026-06-13 14:36:21
[2026-06-13 14:36:21,888.888 INFO    ] 2026-06-13 14:36:21
[2026-06-13 14:36:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:36:22,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:36:22,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:36:22,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:36:22,318.318 INFO    ] time= 13/06/2026 14:36:22
[2026-06-13 14:36:22,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:36:22,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:36:22,446.446 INFO    ] No existing commands found in stream
[2026-06-13 14:36:27,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:36:27,459.459 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 14:36:28,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:36:28,932.932 INFO    ] Checking for system updates...
[2026-06-13 14:36:28,954.954 INFO    ] 200
[2026-06-13 14:36:28,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:28,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:36:28,990.990 INFO    ] No update needed
[2026-06-13 14:36:28,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 14:36:29,010.010 INFO    ] 200
[2026-06-13 14:36:29,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:29,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:36:29,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:36:29,075.075 INFO    ] No camera update needed
[2026-06-13 14:36:29,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:36:29,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:36:29,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:36:29,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:36:31,115.115 INFO    ] ================================================
[2026-06-13 14:36:31,130.130 INFO    ] Launching Daemon at Sat Jun 13 14:36:31 IST 2026
[2026-06-13 14:36:31,141.141 INFO    ] ================================================
[2026-06-13 14:36:31,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:36:31
[2026-06-13 14:36:31,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:36:32,024.024 INFO    ] Initializing speech engine...
[2026-06-13 14:36:32,030.030 INFO    ] 2026-06-13 14:36:32
[2026-06-13 14:36:32,292.292 INFO    ] 2026-06-13 14:36:32
[2026-06-13 14:36:32,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:36:32,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:36:32,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:36:32,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:36:32,755.755 INFO    ] time= 13/06/2026 14:36:32
[2026-06-13 14:36:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:36:32,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:36:32,887.887 INFO    ] No existing commands found in stream
[2026-06-13 14:36:37,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:36:37,899.899 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 14:36:41,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:36:41,333.333 INFO    ] Checking for system updates...
[2026-06-13 14:36:41,355.355 INFO    ] 200
[2026-06-13 14:36:41,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:41,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:36:41,389.389 INFO    ] No update needed
[2026-06-13 14:36:41,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 14:36:41,410.410 INFO    ] 200
[2026-06-13 14:36:41,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:41,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:36:41,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:36:41,477.477 INFO    ] No camera update needed
[2026-06-13 14:36:41,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:36:41,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:36:41,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:36:41,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:36:43,524.524 INFO    ] ================================================
[2026-06-13 14:36:43,539.539 INFO    ] Launching Daemon at Sat Jun 13 14:36:43 IST 2026
[2026-06-13 14:36:43,550.550 INFO    ] ================================================
[2026-06-13 14:36:43,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:36:43
[2026-06-13 14:36:44,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:36:44,416.416 INFO    ] Initializing speech engine...
[2026-06-13 14:36:44,425.425 INFO    ] 2026-06-13 14:36:44
[2026-06-13 14:36:44,636.636 INFO    ] 2026-06-13 14:36:44
[2026-06-13 14:36:44,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:36:44,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:36:44,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:36:44,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:36:45,052.052 INFO    ] time= 13/06/2026 14:36:44
[2026-06-13 14:36:45,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:36:45,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:36:45,151.151 INFO    ] No existing commands found in stream
[2026-06-13 14:36:50,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:36:50,165.165 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 14:36:50,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:36:50,532.532 INFO    ] Checking for system updates...
[2026-06-13 14:36:50,559.559 INFO    ] 200
[2026-06-13 14:36:50,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:50,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:36:50,593.593 INFO    ] No update needed
[2026-06-13 14:36:50,594.594 INFO    ] Checking for camera pi updates...
[2026-06-13 14:36:50,613.613 INFO    ] 200
[2026-06-13 14:36:50,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:36:50,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:36:50,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:36:50,661.661 INFO    ] No camera update needed
[2026-06-13 14:36:50,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:36:50,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:36:50,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:36:50,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:36:52,710.710 INFO    ] ================================================
[2026-06-13 14:36:52,725.725 INFO    ] Launching Daemon at Sat Jun 13 14:36:52 IST 2026
[2026-06-13 14:36:52,736.736 INFO    ] ================================================
[2026-06-13 14:36:53,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:36:53
[2026-06-13 14:36:53,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:36:54,119.119 INFO    ] Initializing speech engine...
[2026-06-13 14:36:54,128.128 INFO    ] 2026-06-13 14:36:54
[2026-06-13 14:36:54,388.388 INFO    ] 2026-06-13 14:36:54
[2026-06-13 14:36:54,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:36:54,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:36:54,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:36:54,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:36:54,829.829 INFO    ] time= 13/06/2026 14:36:54
[2026-06-13 14:36:54,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:36:54,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:36:55,071.071 INFO    ] No existing commands found in stream
[2026-06-13 14:37:00,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:00,100.100 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 14:37:01,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:37:01,670.670 INFO    ] Checking for system updates...
[2026-06-13 14:37:01,697.697 INFO    ] 200
[2026-06-13 14:37:01,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:01,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:37:01,740.740 INFO    ] No update needed
[2026-06-13 14:37:01,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:01,782.782 INFO    ] 200
[2026-06-13 14:37:01,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:01,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:01,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:37:01,897.897 INFO    ] No camera update needed
[2026-06-13 14:37:01,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:01,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:01,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:01,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:03,954.954 INFO    ] ================================================
[2026-06-13 14:37:03,970.970 INFO    ] Launching Daemon at Sat Jun 13 14:37:03 IST 2026
[2026-06-13 14:37:03,981.981 INFO    ] ================================================
[2026-06-13 14:37:04,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:04
[2026-06-13 14:37:04,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:04,861.861 INFO    ] Initializing speech engine...
[2026-06-13 14:37:04,866.866 INFO    ] 2026-06-13 14:37:04
[2026-06-13 14:37:05,077.077 INFO    ] 2026-06-13 14:37:05
[2026-06-13 14:37:05,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:05,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:05,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:05,506.506 INFO    ] time= 13/06/2026 14:37:05
[2026-06-13 14:37:05,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:05,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:05,622.622 INFO    ] No existing commands found in stream
[2026-06-13 14:37:10,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:10,640.640 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 14:37:11,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:37:11,241.241 INFO    ] Checking for system updates...
[2026-06-13 14:37:11,262.262 INFO    ] 200
[2026-06-13 14:37:11,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:11,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:11,296.296 INFO    ] No update needed
[2026-06-13 14:37:11,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:11,318.318 INFO    ] 200
[2026-06-13 14:37:11,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:11,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:11,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:11,380.380 INFO    ] No camera update needed
[2026-06-13 14:37:11,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:11,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:11,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:11,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:13,426.426 INFO    ] ================================================
[2026-06-13 14:37:13,442.442 INFO    ] Launching Daemon at Sat Jun 13 14:37:13 IST 2026
[2026-06-13 14:37:13,453.453 INFO    ] ================================================
[2026-06-13 14:37:13,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:13
[2026-06-13 14:37:14,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:14,257.257 INFO    ] Initializing speech engine...
[2026-06-13 14:37:14,262.262 INFO    ] 2026-06-13 14:37:14
[2026-06-13 14:37:14,467.467 INFO    ] 2026-06-13 14:37:14
[2026-06-13 14:37:14,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:14,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:14,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:14,871.871 INFO    ] time= 13/06/2026 14:37:14
[2026-06-13 14:37:14,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:14,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:14,979.979 INFO    ] No existing commands found in stream
[2026-06-13 14:37:19,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:19,992.992 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 14:37:21,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:37:21,244.244 INFO    ] Checking for system updates...
[2026-06-13 14:37:21,282.282 INFO    ] 200
[2026-06-13 14:37:21,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:21,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:21,341.341 INFO    ] No update needed
[2026-06-13 14:37:21,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:21,379.379 INFO    ] 200
[2026-06-13 14:37:21,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:21,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:21,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:21,478.478 INFO    ] No camera update needed
[2026-06-13 14:37:21,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:21,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:21,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:21,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:23,537.537 INFO    ] ================================================
[2026-06-13 14:37:23,553.553 INFO    ] Launching Daemon at Sat Jun 13 14:37:23 IST 2026
[2026-06-13 14:37:23,564.564 INFO    ] ================================================
[2026-06-13 14:37:24,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:24
[2026-06-13 14:37:24,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:24,505.505 INFO    ] Initializing speech engine...
[2026-06-13 14:37:24,515.515 INFO    ] 2026-06-13 14:37:24
[2026-06-13 14:37:24,720.720 INFO    ] 2026-06-13 14:37:24
[2026-06-13 14:37:24,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:24,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:24,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:25,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:25,119.119 INFO    ] time= 13/06/2026 14:37:25
[2026-06-13 14:37:25,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:25,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:25,234.234 INFO    ] No existing commands found in stream
[2026-06-13 14:37:30,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:30,252.252 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 14:37:33,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:37:33,217.217 INFO    ] Checking for system updates...
[2026-06-13 14:37:33,238.238 INFO    ] 200
[2026-06-13 14:37:33,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:33,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:33,274.274 INFO    ] No update needed
[2026-06-13 14:37:33,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:33,295.295 INFO    ] 200
[2026-06-13 14:37:33,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:33,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:33,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:33,351.351 INFO    ] No camera update needed
[2026-06-13 14:37:33,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:33,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:33,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:33,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:35,400.400 INFO    ] ================================================
[2026-06-13 14:37:35,416.416 INFO    ] Launching Daemon at Sat Jun 13 14:37:35 IST 2026
[2026-06-13 14:37:35,427.427 INFO    ] ================================================
[2026-06-13 14:37:35,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:35
[2026-06-13 14:37:36,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:36,227.227 INFO    ] Initializing speech engine...
[2026-06-13 14:37:36,239.239 INFO    ] 2026-06-13 14:37:36
[2026-06-13 14:37:36,460.460 INFO    ] 2026-06-13 14:37:36
[2026-06-13 14:37:36,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:36,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:36,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:36,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:36,881.881 INFO    ] time= 13/06/2026 14:37:36
[2026-06-13 14:37:36,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:37,026.026 INFO    ] No existing commands found in stream
[2026-06-13 14:37:42,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:42,040.040 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 14:37:42,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:37:42,352.352 INFO    ] Checking for system updates...
[2026-06-13 14:37:42,374.374 INFO    ] 200
[2026-06-13 14:37:42,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:42,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:37:42,409.409 INFO    ] No update needed
[2026-06-13 14:37:42,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:42,430.430 INFO    ] 200
[2026-06-13 14:37:42,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:42,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:42,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:37:42,499.499 INFO    ] No camera update needed
[2026-06-13 14:37:42,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:42,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:42,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:42,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:44,538.538 INFO    ] ================================================
[2026-06-13 14:37:44,546.546 INFO    ] Launching Daemon at Sat Jun 13 14:37:44 IST 2026
[2026-06-13 14:37:44,553.553 INFO    ] ================================================
[2026-06-13 14:37:44,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:44
[2026-06-13 14:37:45,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:45,366.366 INFO    ] Initializing speech engine...
[2026-06-13 14:37:45,376.376 INFO    ] 2026-06-13 14:37:45
[2026-06-13 14:37:45,600.600 INFO    ] 2026-06-13 14:37:45
[2026-06-13 14:37:45,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:45,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:45,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:46,035.035 INFO    ] time= 13/06/2026 14:37:45
[2026-06-13 14:37:46,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:46,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:46,170.170 INFO    ] No existing commands found in stream
[2026-06-13 14:37:51,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:37:51,189.189 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 14:37:53,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:37:53,669.669 INFO    ] Checking for system updates...
[2026-06-13 14:37:53,690.690 INFO    ] 200
[2026-06-13 14:37:53,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:53,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:53,726.726 INFO    ] No update needed
[2026-06-13 14:37:53,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 14:37:53,748.748 INFO    ] 200
[2026-06-13 14:37:53,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:37:53,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:37:53,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:37:53,917.917 INFO    ] No camera update needed
[2026-06-13 14:37:53,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:37:53,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:37:53,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:37:53,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:37:55,965.965 INFO    ] ================================================
[2026-06-13 14:37:55,981.981 INFO    ] Launching Daemon at Sat Jun 13 14:37:55 IST 2026
[2026-06-13 14:37:55,992.992 INFO    ] ================================================
[2026-06-13 14:37:56,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:37:56
[2026-06-13 14:37:56,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:37:56,776.776 INFO    ] Initializing speech engine...
[2026-06-13 14:37:56,781.781 INFO    ] 2026-06-13 14:37:56
[2026-06-13 14:37:56,971.971 INFO    ] 2026-06-13 14:37:56
[2026-06-13 14:37:57,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:37:57,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:37:57,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:37:57,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:37:57,442.442 INFO    ] time= 13/06/2026 14:37:57
[2026-06-13 14:37:57,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:37:57,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:37:57,578.578 INFO    ] No existing commands found in stream
[2026-06-13 14:38:02,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:02,589.589 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 14:38:05,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:38:05,520.520 INFO    ] Checking for system updates...
[2026-06-13 14:38:05,554.554 INFO    ] 200
[2026-06-13 14:38:05,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:05,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:38:05,612.612 INFO    ] No update needed
[2026-06-13 14:38:05,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 14:38:05,633.633 INFO    ] 200
[2026-06-13 14:38:05,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:05,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:38:05,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:38:05,699.699 INFO    ] No camera update needed
[2026-06-13 14:38:05,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:38:05,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:38:05,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:38:05,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:38:07,746.746 INFO    ] ================================================
[2026-06-13 14:38:07,762.762 INFO    ] Launching Daemon at Sat Jun 13 14:38:07 IST 2026
[2026-06-13 14:38:07,773.773 INFO    ] ================================================
[2026-06-13 14:38:08,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:38:08
[2026-06-13 14:38:08,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:38:08,565.565 INFO    ] Initializing speech engine...
[2026-06-13 14:38:08,570.570 INFO    ] 2026-06-13 14:38:08
[2026-06-13 14:38:08,773.773 INFO    ] 2026-06-13 14:38:08
[2026-06-13 14:38:08,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:38:08,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:38:08,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:38:09,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:38:09,188.188 INFO    ] time= 13/06/2026 14:38:09
[2026-06-13 14:38:09,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:38:09,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:38:09,283.283 INFO    ] No existing commands found in stream
[2026-06-13 14:38:14,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:14,296.296 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 14:38:14,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:38:14,726.726 INFO    ] Checking for system updates...
[2026-06-13 14:38:14,747.747 INFO    ] 200
[2026-06-13 14:38:14,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:14,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:14,782.782 INFO    ] No update needed
[2026-06-13 14:38:14,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 14:38:14,804.804 INFO    ] 200
[2026-06-13 14:38:14,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:14,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:38:14,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:14,873.873 INFO    ] No camera update needed
[2026-06-13 14:38:14,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:38:14,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:38:14,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:38:14,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:38:16,921.921 INFO    ] ================================================
[2026-06-13 14:38:16,936.936 INFO    ] Launching Daemon at Sat Jun 13 14:38:16 IST 2026
[2026-06-13 14:38:16,947.947 INFO    ] ================================================
[2026-06-13 14:38:17,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:38:17
[2026-06-13 14:38:17,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:38:17,801.801 INFO    ] Initializing speech engine...
[2026-06-13 14:38:17,806.806 INFO    ] 2026-06-13 14:38:17
[2026-06-13 14:38:18,015.015 INFO    ] 2026-06-13 14:38:18
[2026-06-13 14:38:18,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:38:18,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:38:18,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:38:18,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:38:18,436.436 INFO    ] time= 13/06/2026 14:38:18
[2026-06-13 14:38:18,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:38:18,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:38:18,542.542 INFO    ] No existing commands found in stream
[2026-06-13 14:38:23,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:23,556.556 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 14:38:25,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:38:25,546.546 INFO    ] Checking for system updates...
[2026-06-13 14:38:25,568.568 INFO    ] 200
[2026-06-13 14:38:25,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:25,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:25,604.604 INFO    ] No update needed
[2026-06-13 14:38:25,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 14:38:25,626.626 INFO    ] 200
[2026-06-13 14:38:25,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:25,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:38:25,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:38:25,703.703 INFO    ] No camera update needed
[2026-06-13 14:38:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:38:25,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:38:25,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:38:25,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:38:27,752.752 INFO    ] ================================================
[2026-06-13 14:38:27,768.768 INFO    ] Launching Daemon at Sat Jun 13 14:38:27 IST 2026
[2026-06-13 14:38:27,779.779 INFO    ] ================================================
[2026-06-13 14:38:28,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:38:28
[2026-06-13 14:38:28,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:38:28,883.883 INFO    ] Initializing speech engine...
[2026-06-13 14:38:28,894.894 INFO    ] 2026-06-13 14:38:28
[2026-06-13 14:38:29,162.162 INFO    ] 2026-06-13 14:38:29
[2026-06-13 14:38:29,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:38:29,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:38:29,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:38:29,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:38:29,636.636 INFO    ] time= 13/06/2026 14:38:29
[2026-06-13 14:38:29,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:38:29,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:38:29,894.894 INFO    ] No existing commands found in stream
[2026-06-13 14:38:34,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:34,915.915 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-13 14:38:38,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:38:38,723.723 INFO    ] Checking for system updates...
[2026-06-13 14:38:38,745.745 INFO    ] 200
[2026-06-13 14:38:38,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:38,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:38:38,781.781 INFO    ] No update needed
[2026-06-13 14:38:38,782.782 INFO    ] Checking for camera pi updates...
[2026-06-13 14:38:38,804.804 INFO    ] 200
[2026-06-13 14:38:38,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:38,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:38:38,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:38,886.886 INFO    ] No camera update needed
[2026-06-13 14:38:38,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:38:38,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:38:38,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:38:38,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:38:40,938.938 INFO    ] ================================================
[2026-06-13 14:38:40,954.954 INFO    ] Launching Daemon at Sat Jun 13 14:38:40 IST 2026
[2026-06-13 14:38:40,965.965 INFO    ] ================================================
[2026-06-13 14:38:41,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:38:41
[2026-06-13 14:38:41,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:38:41,832.832 INFO    ] Initializing speech engine...
[2026-06-13 14:38:41,843.843 INFO    ] 2026-06-13 14:38:41
[2026-06-13 14:38:42,052.052 INFO    ] 2026-06-13 14:38:42
[2026-06-13 14:38:42,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:38:42,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:38:42,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:38:42,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:38:42,458.458 INFO    ] time= 13/06/2026 14:38:42
[2026-06-13 14:38:42,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:38:42,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:38:42,568.568 INFO    ] No existing commands found in stream
[2026-06-13 14:38:47,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:47,586.586 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 14:38:48,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:38:48,322.322 INFO    ] Checking for system updates...
[2026-06-13 14:38:48,343.343 INFO    ] 200
[2026-06-13 14:38:48,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:48,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:48,377.377 INFO    ] No update needed
[2026-06-13 14:38:48,378.378 INFO    ] Checking for camera pi updates...
[2026-06-13 14:38:48,399.399 INFO    ] 200
[2026-06-13 14:38:48,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:38:48,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:38:48,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:38:48,467.467 INFO    ] No camera update needed
[2026-06-13 14:38:48,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:38:48,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:38:48,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:38:48,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:38:50,515.515 INFO    ] ================================================
[2026-06-13 14:38:50,531.531 INFO    ] Launching Daemon at Sat Jun 13 14:38:50 IST 2026
[2026-06-13 14:38:50,542.542 INFO    ] ================================================
[2026-06-13 14:38:50,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:38:50
[2026-06-13 14:38:51,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:38:51,347.347 INFO    ] Initializing speech engine...
[2026-06-13 14:38:51,354.354 INFO    ] 2026-06-13 14:38:51
[2026-06-13 14:38:51,560.560 INFO    ] 2026-06-13 14:38:51
[2026-06-13 14:38:51,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:38:51,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:38:51,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:38:51,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:38:51,981.981 INFO    ] time= 13/06/2026 14:38:51
[2026-06-13 14:38:52,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:38:52,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:38:52,077.077 INFO    ] No existing commands found in stream
[2026-06-13 14:38:57,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:38:57,090.090 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 14:39:00,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:39:00,323.323 INFO    ] Checking for system updates...
[2026-06-13 14:39:00,343.343 INFO    ] 200
[2026-06-13 14:39:00,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:00,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:00,376.376 INFO    ] No update needed
[2026-06-13 14:39:00,377.377 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:00,397.397 INFO    ] 200
[2026-06-13 14:39:00,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:00,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:00,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:00,466.466 INFO    ] No camera update needed
[2026-06-13 14:39:00,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:00,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:00,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:00,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:39:02,522.522 INFO    ] ================================================
[2026-06-13 14:39:02,546.546 INFO    ] Launching Daemon at Sat Jun 13 14:39:02 IST 2026
[2026-06-13 14:39:02,560.560 INFO    ] ================================================
[2026-06-13 14:39:03,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:39:03
[2026-06-13 14:39:03,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:39:04,290.290 INFO    ] Initializing speech engine...
[2026-06-13 14:39:04,299.299 INFO    ] 2026-06-13 14:39:04
[2026-06-13 14:39:04,583.583 INFO    ] 2026-06-13 14:39:04
[2026-06-13 14:39:04,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:39:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:39:04,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:39:04,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:39:05,052.052 INFO    ] time= 13/06/2026 14:39:04
[2026-06-13 14:39:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:39:05,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:39:05,183.183 INFO    ] No existing commands found in stream
[2026-06-13 14:39:10,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:39:10,222.222 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 14:39:14,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:39:14,141.141 INFO    ] Checking for system updates...
[2026-06-13 14:39:14,161.161 INFO    ] 200
[2026-06-13 14:39:14,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:14,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:14,195.195 INFO    ] No update needed
[2026-06-13 14:39:14,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:14,217.217 INFO    ] 200
[2026-06-13 14:39:14,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:14,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:14,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:14,294.294 INFO    ] No camera update needed
[2026-06-13 14:39:14,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:14,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:14,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:14,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:39:16,341.341 INFO    ] ================================================
[2026-06-13 14:39:16,358.358 INFO    ] Launching Daemon at Sat Jun 13 14:39:16 IST 2026
[2026-06-13 14:39:16,369.369 INFO    ] ================================================
[2026-06-13 14:39:16,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:39:16
[2026-06-13 14:39:17,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:39:17,209.209 INFO    ] Initializing speech engine...
[2026-06-13 14:39:17,215.215 INFO    ] 2026-06-13 14:39:17
[2026-06-13 14:39:17,425.425 INFO    ] 2026-06-13 14:39:17
[2026-06-13 14:39:17,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:39:17,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:39:17,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:39:17,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:39:17,829.829 INFO    ] time= 13/06/2026 14:39:17
[2026-06-13 14:39:17,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:39:17,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:39:17,947.947 INFO    ] No existing commands found in stream
[2026-06-13 14:39:22,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:39:22,965.965 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 14:39:27,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:39:27,173.173 INFO    ] Checking for system updates...
[2026-06-13 14:39:27,194.194 INFO    ] 200
[2026-06-13 14:39:27,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:27,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:27,227.227 INFO    ] No update needed
[2026-06-13 14:39:27,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:27,248.248 INFO    ] 200
[2026-06-13 14:39:27,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:27,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:27,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:27,315.315 INFO    ] No camera update needed
[2026-06-13 14:39:27,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:27,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:27,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:27,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:39:29,364.364 INFO    ] ================================================
[2026-06-13 14:39:29,380.380 INFO    ] Launching Daemon at Sat Jun 13 14:39:29 IST 2026
[2026-06-13 14:39:29,391.391 INFO    ] ================================================
[2026-06-13 14:39:29,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:39:29
[2026-06-13 14:39:30,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:39:30,273.273 INFO    ] Initializing speech engine...
[2026-06-13 14:39:30,286.286 INFO    ] 2026-06-13 14:39:30
[2026-06-13 14:39:30,550.550 INFO    ] 2026-06-13 14:39:30
[2026-06-13 14:39:30,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:39:30,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:39:30,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:39:30,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:39:30,938.938 INFO    ] time= 13/06/2026 14:39:30
[2026-06-13 14:39:30,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:39:30,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:39:31,063.063 INFO    ] No existing commands found in stream
[2026-06-13 14:39:36,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:39:36,079.079 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 14:39:39,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:39:39,979.979 INFO    ] Checking for system updates...
[2026-06-13 14:39:40,001.001 INFO    ] 200
[2026-06-13 14:39:40,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:40,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:39:40,034.034 INFO    ] No update needed
[2026-06-13 14:39:40,035.035 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:40,055.055 INFO    ] 200
[2026-06-13 14:39:40,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:40,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:40,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:39:40,117.117 INFO    ] No camera update needed
[2026-06-13 14:39:40,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:40,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:40,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:40,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:39:42,166.166 INFO    ] ================================================
[2026-06-13 14:39:42,181.181 INFO    ] Launching Daemon at Sat Jun 13 14:39:42 IST 2026
[2026-06-13 14:39:42,191.191 INFO    ] ================================================
[2026-06-13 14:39:42,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:39:42
[2026-06-13 14:39:42,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:39:42,995.995 INFO    ] Initializing speech engine...
[2026-06-13 14:39:43,008.008 INFO    ] 2026-06-13 14:39:43
[2026-06-13 14:39:43,216.216 INFO    ] 2026-06-13 14:39:43
[2026-06-13 14:39:43,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:39:43,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:39:43,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:39:43,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:39:43,641.641 INFO    ] time= 13/06/2026 14:39:43
[2026-06-13 14:39:43,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:39:43,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:39:43,740.740 INFO    ] No existing commands found in stream
[2026-06-13 14:39:48,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:39:48,751.751 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 14:39:49,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:39:49,329.329 INFO    ] Checking for system updates...
[2026-06-13 14:39:49,349.349 INFO    ] 200
[2026-06-13 14:39:49,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:49,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:49,389.389 INFO    ] No update needed
[2026-06-13 14:39:49,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:49,410.410 INFO    ] 200
[2026-06-13 14:39:49,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:49,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:49,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:49,478.478 INFO    ] No camera update needed
[2026-06-13 14:39:49,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:49,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:49,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:49,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:39:51,526.526 INFO    ] ================================================
[2026-06-13 14:39:51,542.542 INFO    ] Launching Daemon at Sat Jun 13 14:39:51 IST 2026
[2026-06-13 14:39:51,552.552 INFO    ] ================================================
[2026-06-13 14:39:51,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:39:51
[2026-06-13 14:39:52,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:39:52,334.334 INFO    ] Initializing speech engine...
[2026-06-13 14:39:52,346.346 INFO    ] 2026-06-13 14:39:52
[2026-06-13 14:39:52,531.531 INFO    ] 2026-06-13 14:39:52
[2026-06-13 14:39:52,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:39:52,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:39:52,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:39:52,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:39:52,902.902 INFO    ] time= 13/06/2026 14:39:52
[2026-06-13 14:39:52,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:39:52,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:39:53,072.072 INFO    ] No existing commands found in stream
[2026-06-13 14:39:58,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:39:58,105.105 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 14:39:59,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:39:59,599.599 INFO    ] Checking for system updates...
[2026-06-13 14:39:59,620.620 INFO    ] 200
[2026-06-13 14:39:59,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:59,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:59,653.653 INFO    ] No update needed
[2026-06-13 14:39:59,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 14:39:59,677.677 INFO    ] 200
[2026-06-13 14:39:59,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:39:59,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:39:59,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:39:59,851.851 INFO    ] No camera update needed
[2026-06-13 14:39:59,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:39:59,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:39:59,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:39:59,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:01,899.899 INFO    ] ================================================
[2026-06-13 14:40:01,914.914 INFO    ] Launching Daemon at Sat Jun 13 14:40:01 IST 2026
[2026-06-13 14:40:01,925.925 INFO    ] ================================================
[2026-06-13 14:40:02,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:02
[2026-06-13 14:40:03,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:03,302.302 INFO    ] Initializing speech engine...
[2026-06-13 14:40:03,316.316 INFO    ] 2026-06-13 14:40:03
[2026-06-13 14:40:03,582.582 INFO    ] 2026-06-13 14:40:03
[2026-06-13 14:40:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:03,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:03,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:03,941.941 INFO    ] time= 13/06/2026 14:40:03
[2026-06-13 14:40:03,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:03,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:04,038.038 INFO    ] No existing commands found in stream
[2026-06-13 14:40:09,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:40:09,053.053 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 14:40:11,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:40:11,240.240 INFO    ] Checking for system updates...
[2026-06-13 14:40:11,260.260 INFO    ] 200
[2026-06-13 14:40:11,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:11,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:11,293.293 INFO    ] No update needed
[2026-06-13 14:40:11,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 14:40:11,313.313 INFO    ] 200
[2026-06-13 14:40:11,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:11,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:40:11,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:11,383.383 INFO    ] No camera update needed
[2026-06-13 14:40:11,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:40:11,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:40:11,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:40:11,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:13,430.430 INFO    ] ================================================
[2026-06-13 14:40:13,446.446 INFO    ] Launching Daemon at Sat Jun 13 14:40:13 IST 2026
[2026-06-13 14:40:13,457.457 INFO    ] ================================================
[2026-06-13 14:40:13,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:13
[2026-06-13 14:40:14,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:14,239.239 INFO    ] Initializing speech engine...
[2026-06-13 14:40:14,244.244 INFO    ] 2026-06-13 14:40:14
[2026-06-13 14:40:14,449.449 INFO    ] 2026-06-13 14:40:14
[2026-06-13 14:40:14,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:14,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:14,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:14,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:14,856.856 INFO    ] time= 13/06/2026 14:40:14
[2026-06-13 14:40:14,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:14,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:15,013.013 INFO    ] No existing commands found in stream
[2026-06-13 14:40:20,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:40:20,033.033 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 14:40:21,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:40:21,831.831 INFO    ] Checking for system updates...
[2026-06-13 14:40:21,854.854 INFO    ] 200
[2026-06-13 14:40:21,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:21,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:21,888.888 INFO    ] No update needed
[2026-06-13 14:40:21,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 14:40:21,909.909 INFO    ] 200
[2026-06-13 14:40:21,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:21,933.933 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:40:21,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:21,974.974 INFO    ] No camera update needed
[2026-06-13 14:40:21,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:40:21,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:40:21,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:40:21,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:24,021.021 INFO    ] ================================================
[2026-06-13 14:40:24,036.036 INFO    ] Launching Daemon at Sat Jun 13 14:40:24 IST 2026
[2026-06-13 14:40:24,047.047 INFO    ] ================================================
[2026-06-13 14:40:24,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:24
[2026-06-13 14:40:24,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:24,857.857 INFO    ] Initializing speech engine...
[2026-06-13 14:40:24,862.862 INFO    ] 2026-06-13 14:40:24
[2026-06-13 14:40:25,066.066 INFO    ] 2026-06-13 14:40:25
[2026-06-13 14:40:25,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:25,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:25,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:25,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:25,472.472 INFO    ] time= 13/06/2026 14:40:25
[2026-06-13 14:40:25,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:25,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:25,590.590 INFO    ] No existing commands found in stream
[2026-06-13 14:40:30,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:40:30,602.602 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 14:40:33,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:40:33,730.730 INFO    ] Checking for system updates...
[2026-06-13 14:40:33,765.765 INFO    ] 200
[2026-06-13 14:40:33,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:33,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:40:33,823.823 INFO    ] No update needed
[2026-06-13 14:40:33,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 14:40:33,860.860 INFO    ] 200
[2026-06-13 14:40:33,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:33,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:40:33,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:40:33,963.963 INFO    ] No camera update needed
[2026-06-13 14:40:33,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:40:33,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:40:33,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:40:33,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:36,018.018 INFO    ] ================================================
[2026-06-13 14:40:36,033.033 INFO    ] Launching Daemon at Sat Jun 13 14:40:36 IST 2026
[2026-06-13 14:40:36,044.044 INFO    ] ================================================
[2026-06-13 14:40:36,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:36
[2026-06-13 14:40:36,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:36,828.828 INFO    ] Initializing speech engine...
[2026-06-13 14:40:36,840.840 INFO    ] 2026-06-13 14:40:36
[2026-06-13 14:40:37,047.047 INFO    ] 2026-06-13 14:40:37
[2026-06-13 14:40:37,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:37,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:37,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:37,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:37,447.447 INFO    ] time= 13/06/2026 14:40:37
[2026-06-13 14:40:37,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:37,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:37,611.611 INFO    ] No existing commands found in stream
[2026-06-13 14:40:42,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:40:42,624.624 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 14:40:43,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:40:43,675.675 INFO    ] Checking for system updates...
[2026-06-13 14:40:43,696.696 INFO    ] 200
[2026-06-13 14:40:43,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:43,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:43,728.728 INFO    ] No update needed
[2026-06-13 14:40:43,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 14:40:43,749.749 INFO    ] 200
[2026-06-13 14:40:43,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:43,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:40:43,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:43,813.813 INFO    ] No camera update needed
[2026-06-13 14:40:43,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:40:43,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:40:43,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:40:43,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:45,859.859 INFO    ] ================================================
[2026-06-13 14:40:45,875.875 INFO    ] Launching Daemon at Sat Jun 13 14:40:45 IST 2026
[2026-06-13 14:40:45,886.886 INFO    ] ================================================
[2026-06-13 14:40:46,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:46
[2026-06-13 14:40:46,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:46,690.690 INFO    ] Initializing speech engine...
[2026-06-13 14:40:46,698.698 INFO    ] 2026-06-13 14:40:46
[2026-06-13 14:40:46,918.918 INFO    ] 2026-06-13 14:40:46
[2026-06-13 14:40:46,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:47,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:47,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:47,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:47,346.346 INFO    ] time= 13/06/2026 14:40:47
[2026-06-13 14:40:47,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:47,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:47,469.469 INFO    ] No existing commands found in stream
[2026-06-13 14:40:52,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:40:52,483.483 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 14:40:55,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:40:55,077.077 INFO    ] Checking for system updates...
[2026-06-13 14:40:55,116.116 INFO    ] 200
[2026-06-13 14:40:55,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:55,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:55,161.161 INFO    ] No update needed
[2026-06-13 14:40:55,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 14:40:55,182.182 INFO    ] 200
[2026-06-13 14:40:55,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:40:55,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:40:55,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:40:55,250.250 INFO    ] No camera update needed
[2026-06-13 14:40:55,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:40:55,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:40:55,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:40:55,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:40:57,295.295 INFO    ] ================================================
[2026-06-13 14:40:57,311.311 INFO    ] Launching Daemon at Sat Jun 13 14:40:57 IST 2026
[2026-06-13 14:40:57,322.322 INFO    ] ================================================
[2026-06-13 14:40:57,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:40:57
[2026-06-13 14:40:57,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:40:58,113.113 INFO    ] Initializing speech engine...
[2026-06-13 14:40:58,118.118 INFO    ] 2026-06-13 14:40:58
[2026-06-13 14:40:58,320.320 INFO    ] 2026-06-13 14:40:58
[2026-06-13 14:40:58,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:40:58,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:40:58,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:40:58,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:40:58,731.731 INFO    ] time= 13/06/2026 14:40:58
[2026-06-13 14:40:58,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:40:58,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:40:58,835.835 INFO    ] No existing commands found in stream
[2026-06-13 14:41:03,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:41:03,849.849 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 14:41:06,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:41:06,234.234 INFO    ] Checking for system updates...
[2026-06-13 14:41:06,257.257 INFO    ] 200
[2026-06-13 14:41:06,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:06,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:06,291.291 INFO    ] No update needed
[2026-06-13 14:41:06,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 14:41:06,313.313 INFO    ] 200
[2026-06-13 14:41:06,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:06,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:41:06,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:06,382.382 INFO    ] No camera update needed
[2026-06-13 14:41:06,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:41:06,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:41:06,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:41:06,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:41:08,429.429 INFO    ] ================================================
[2026-06-13 14:41:08,444.444 INFO    ] Launching Daemon at Sat Jun 13 14:41:08 IST 2026
[2026-06-13 14:41:08,455.455 INFO    ] ================================================
[2026-06-13 14:41:08,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:41:08
[2026-06-13 14:41:09,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:41:09,274.274 INFO    ] Initializing speech engine...
[2026-06-13 14:41:09,280.280 INFO    ] 2026-06-13 14:41:09
[2026-06-13 14:41:09,481.481 INFO    ] 2026-06-13 14:41:09
[2026-06-13 14:41:09,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:41:09,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:41:09,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:41:09,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:41:09,880.880 INFO    ] time= 13/06/2026 14:41:09
[2026-06-13 14:41:09,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:41:09,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:41:09,995.995 INFO    ] No existing commands found in stream
[2026-06-13 14:41:15,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:41:15,007.007 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 14:41:16,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:41:16,929.929 INFO    ] Checking for system updates...
[2026-06-13 14:41:16,950.950 INFO    ] 200
[2026-06-13 14:41:16,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:16,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:16,983.983 INFO    ] No update needed
[2026-06-13 14:41:16,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 14:41:17,004.004 INFO    ] 200
[2026-06-13 14:41:17,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:17,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:41:17,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:17,086.086 INFO    ] No camera update needed
[2026-06-13 14:41:17,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:41:17,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:41:17,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:41:17,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:41:19,134.134 INFO    ] ================================================
[2026-06-13 14:41:19,150.150 INFO    ] Launching Daemon at Sat Jun 13 14:41:19 IST 2026
[2026-06-13 14:41:19,161.161 INFO    ] ================================================
[2026-06-13 14:41:19,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:41:19
[2026-06-13 14:41:19,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:41:20,026.026 INFO    ] Initializing speech engine...
[2026-06-13 14:41:20,031.031 INFO    ] 2026-06-13 14:41:20
[2026-06-13 14:41:20,236.236 INFO    ] 2026-06-13 14:41:20
[2026-06-13 14:41:20,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:41:20,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:41:20,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:41:20,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:41:20,642.642 INFO    ] time= 13/06/2026 14:41:20
[2026-06-13 14:41:20,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:41:20,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:41:20,751.751 INFO    ] No existing commands found in stream
[2026-06-13 14:41:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:41:25,766.766 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 14:41:28,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:41:28,719.719 INFO    ] Checking for system updates...
[2026-06-13 14:41:28,741.741 INFO    ] 200
[2026-06-13 14:41:28,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:28,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:41:28,777.777 INFO    ] No update needed
[2026-06-13 14:41:28,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 14:41:28,799.799 INFO    ] 200
[2026-06-13 14:41:28,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:28,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:41:28,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:41:28,867.867 INFO    ] No camera update needed
[2026-06-13 14:41:28,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:41:28,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:41:28,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:41:28,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:41:30,915.915 INFO    ] ================================================
[2026-06-13 14:41:30,931.931 INFO    ] Launching Daemon at Sat Jun 13 14:41:30 IST 2026
[2026-06-13 14:41:30,941.941 INFO    ] ================================================
[2026-06-13 14:41:31,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:41:31
[2026-06-13 14:41:31,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:41:31,778.778 INFO    ] Initializing speech engine...
[2026-06-13 14:41:31,792.792 INFO    ] 2026-06-13 14:41:31
[2026-06-13 14:41:32,010.010 INFO    ] 2026-06-13 14:41:31
[2026-06-13 14:41:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:41:32,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:41:32,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:41:32,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:41:32,431.431 INFO    ] time= 13/06/2026 14:41:32
[2026-06-13 14:41:32,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:41:32,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:41:32,564.564 INFO    ] No existing commands found in stream
[2026-06-13 14:41:37,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:41:37,577.577 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 14:41:41,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:41:41,594.594 INFO    ] Checking for system updates...
[2026-06-13 14:41:41,615.615 INFO    ] 200
[2026-06-13 14:41:41,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:41,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:41:41,647.647 INFO    ] No update needed
[2026-06-13 14:41:41,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 14:41:41,670.670 INFO    ] 200
[2026-06-13 14:41:41,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:41,697.697 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:41:41,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:41:41,738.738 INFO    ] No camera update needed
[2026-06-13 14:41:41,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:41:41,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:41:41,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:41:41,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:41:43,786.786 INFO    ] ================================================
[2026-06-13 14:41:43,801.801 INFO    ] Launching Daemon at Sat Jun 13 14:41:43 IST 2026
[2026-06-13 14:41:43,812.812 INFO    ] ================================================
[2026-06-13 14:41:44,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:41:44
[2026-06-13 14:41:44,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:41:44,643.643 INFO    ] Initializing speech engine...
[2026-06-13 14:41:44,648.648 INFO    ] 2026-06-13 14:41:44
[2026-06-13 14:41:44,857.857 INFO    ] 2026-06-13 14:41:44
[2026-06-13 14:41:44,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:41:45,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:41:45,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:41:45,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:41:45,241.241 INFO    ] time= 13/06/2026 14:41:45
[2026-06-13 14:41:45,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:41:45,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:41:45,359.359 INFO    ] No existing commands found in stream
[2026-06-13 14:41:50,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:41:50,387.387 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 14:41:54,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:41:54,050.050 INFO    ] Checking for system updates...
[2026-06-13 14:41:54,073.073 INFO    ] 200
[2026-06-13 14:41:54,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:54,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:54,105.105 INFO    ] No update needed
[2026-06-13 14:41:54,107.107 INFO    ] Checking for camera pi updates...
[2026-06-13 14:41:54,126.126 INFO    ] 200
[2026-06-13 14:41:54,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:41:54,151.151 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:41:54,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:41:54,197.197 INFO    ] No camera update needed
[2026-06-13 14:41:54,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:41:54,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:41:54,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:41:54,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:41:56,244.244 INFO    ] ================================================
[2026-06-13 14:41:56,260.260 INFO    ] Launching Daemon at Sat Jun 13 14:41:56 IST 2026
[2026-06-13 14:41:56,271.271 INFO    ] ================================================
[2026-06-13 14:41:56,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:41:56
[2026-06-13 14:41:56,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:41:57,066.066 INFO    ] Initializing speech engine...
[2026-06-13 14:41:57,072.072 INFO    ] 2026-06-13 14:41:57
[2026-06-13 14:41:57,279.279 INFO    ] 2026-06-13 14:41:57
[2026-06-13 14:41:57,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:41:57,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:41:57,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:41:57,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:41:57,699.699 INFO    ] time= 13/06/2026 14:41:57
[2026-06-13 14:41:57,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:41:57,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:41:57,801.801 INFO    ] No existing commands found in stream
[2026-06-13 14:42:02,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:42:02,813.813 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 14:42:07,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:42:07,028.028 INFO    ] Checking for system updates...
[2026-06-13 14:42:07,049.049 INFO    ] 200
[2026-06-13 14:42:07,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:07,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:07,085.085 INFO    ] No update needed
[2026-06-13 14:42:07,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 14:42:07,106.106 INFO    ] 200
[2026-06-13 14:42:07,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:07,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:42:07,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:07,188.188 INFO    ] No camera update needed
[2026-06-13 14:42:07,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:42:07,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:42:07,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:42:07,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:42:09,249.249 INFO    ] ================================================
[2026-06-13 14:42:09,264.264 INFO    ] Launching Daemon at Sat Jun 13 14:42:09 IST 2026
[2026-06-13 14:42:09,276.276 INFO    ] ================================================
[2026-06-13 14:42:09,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:42:09
[2026-06-13 14:42:10,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:42:10,507.507 INFO    ] Initializing speech engine...
[2026-06-13 14:42:10,513.513 INFO    ] 2026-06-13 14:42:10
[2026-06-13 14:42:10,718.718 INFO    ] 2026-06-13 14:42:10
[2026-06-13 14:42:10,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:42:10,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:42:10,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:42:11,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:42:11,123.123 INFO    ] time= 13/06/2026 14:42:11
[2026-06-13 14:42:11,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:42:11,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:42:11,233.233 INFO    ] No existing commands found in stream
[2026-06-13 14:42:16,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:42:16,246.246 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 14:42:18,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:42:18,814.814 INFO    ] Checking for system updates...
[2026-06-13 14:42:18,835.835 INFO    ] 200
[2026-06-13 14:42:18,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:18,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:18,873.873 INFO    ] No update needed
[2026-06-13 14:42:18,874.874 INFO    ] Checking for camera pi updates...
[2026-06-13 14:42:18,895.895 INFO    ] 200
[2026-06-13 14:42:18,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:18,921.921 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:42:18,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:18,959.959 INFO    ] No camera update needed
[2026-06-13 14:42:18,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:42:18,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:42:18,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:42:18,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:42:21,007.007 INFO    ] ================================================
[2026-06-13 14:42:21,023.023 INFO    ] Launching Daemon at Sat Jun 13 14:42:21 IST 2026
[2026-06-13 14:42:21,034.034 INFO    ] ================================================
[2026-06-13 14:42:21,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:42:21
[2026-06-13 14:42:21,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:42:21,866.866 INFO    ] Initializing speech engine...
[2026-06-13 14:42:21,871.871 INFO    ] 2026-06-13 14:42:21
[2026-06-13 14:42:22,075.075 INFO    ] 2026-06-13 14:42:22
[2026-06-13 14:42:22,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:42:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:42:22,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:42:22,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:42:22,471.471 INFO    ] time= 13/06/2026 14:42:22
[2026-06-13 14:42:22,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:42:22,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:42:22,592.592 INFO    ] No existing commands found in stream
[2026-06-13 14:42:27,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:42:27,604.604 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 14:42:29,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:42:29,916.916 INFO    ] Checking for system updates...
[2026-06-13 14:42:29,938.938 INFO    ] 200
[2026-06-13 14:42:29,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:29,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:29,973.973 INFO    ] No update needed
[2026-06-13 14:42:29,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 14:42:29,994.994 INFO    ] 200
[2026-06-13 14:42:29,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:30,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:42:30,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:30,060.060 INFO    ] No camera update needed
[2026-06-13 14:42:30,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:42:30,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:42:30,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:42:30,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:42:32,091.091 INFO    ] ================================================
[2026-06-13 14:42:32,100.100 INFO    ] Launching Daemon at Sat Jun 13 14:42:32 IST 2026
[2026-06-13 14:42:32,106.106 INFO    ] ================================================
[2026-06-13 14:42:32,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:42:32
[2026-06-13 14:42:32,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:42:32,906.906 INFO    ] Initializing speech engine...
[2026-06-13 14:42:32,916.916 INFO    ] 2026-06-13 14:42:32
[2026-06-13 14:42:33,125.125 INFO    ] 2026-06-13 14:42:33
[2026-06-13 14:42:33,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:42:33,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:42:33,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:42:33,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:42:33,546.546 INFO    ] time= 13/06/2026 14:42:33
[2026-06-13 14:42:33,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:42:33,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:42:33,647.647 INFO    ] No existing commands found in stream
[2026-06-13 14:42:38,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:42:38,660.660 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 14:42:41,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:42:41,349.349 INFO    ] Checking for system updates...
[2026-06-13 14:42:41,371.371 INFO    ] 200
[2026-06-13 14:42:41,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:41,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:42:41,406.406 INFO    ] No update needed
[2026-06-13 14:42:41,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 14:42:41,427.427 INFO    ] 200
[2026-06-13 14:42:41,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:41,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:42:41,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:42:41,500.500 INFO    ] No camera update needed
[2026-06-13 14:42:41,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:42:41,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:42:41,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:42:41,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:42:43,547.547 INFO    ] ================================================
[2026-06-13 14:42:43,562.562 INFO    ] Launching Daemon at Sat Jun 13 14:42:43 IST 2026
[2026-06-13 14:42:43,572.572 INFO    ] ================================================
[2026-06-13 14:42:43,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:42:43
[2026-06-13 14:42:44,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:42:44,380.380 INFO    ] Initializing speech engine...
[2026-06-13 14:42:44,390.390 INFO    ] 2026-06-13 14:42:44
[2026-06-13 14:42:44,593.593 INFO    ] 2026-06-13 14:42:44
[2026-06-13 14:42:44,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:42:44,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:42:44,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:42:44,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:42:45,011.011 INFO    ] time= 13/06/2026 14:42:44
[2026-06-13 14:42:45,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:42:45,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:42:45,107.107 INFO    ] No existing commands found in stream
[2026-06-13 14:42:50,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:42:50,121.121 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 14:42:53,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:42:53,209.209 INFO    ] Checking for system updates...
[2026-06-13 14:42:53,231.231 INFO    ] 200
[2026-06-13 14:42:53,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:53,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:53,265.265 INFO    ] No update needed
[2026-06-13 14:42:53,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 14:42:53,286.286 INFO    ] 200
[2026-06-13 14:42:53,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:42:53,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:42:53,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:42:53,348.348 INFO    ] No camera update needed
[2026-06-13 14:42:53,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:42:53,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:42:53,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:42:53,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:42:55,396.396 INFO    ] ================================================
[2026-06-13 14:42:55,411.411 INFO    ] Launching Daemon at Sat Jun 13 14:42:55 IST 2026
[2026-06-13 14:42:55,421.421 INFO    ] ================================================
[2026-06-13 14:42:55,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:42:55
[2026-06-13 14:42:56,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:42:56,273.273 INFO    ] Initializing speech engine...
[2026-06-13 14:42:56,279.279 INFO    ] 2026-06-13 14:42:56
[2026-06-13 14:42:56,484.484 INFO    ] 2026-06-13 14:42:56
[2026-06-13 14:42:56,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:42:56,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:42:56,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:42:56,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:42:56,879.879 INFO    ] time= 13/06/2026 14:42:56
[2026-06-13 14:42:56,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:42:56,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:42:56,998.998 INFO    ] No existing commands found in stream
[2026-06-13 14:43:02,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:02,019.019 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 14:43:05,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:43:05,847.847 INFO    ] Checking for system updates...
[2026-06-13 14:43:05,872.872 INFO    ] 200
[2026-06-13 14:43:05,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:05,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:43:05,905.905 INFO    ] No update needed
[2026-06-13 14:43:05,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 14:43:05,929.929 INFO    ] 200
[2026-06-13 14:43:05,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:05,954.954 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:43:05,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:43:06,000.000 INFO    ] No camera update needed
[2026-06-13 14:43:06,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:43:06,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:43:06,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:43:06,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:43:08,046.046 INFO    ] ================================================
[2026-06-13 14:43:08,062.062 INFO    ] Launching Daemon at Sat Jun 13 14:43:08 IST 2026
[2026-06-13 14:43:08,073.073 INFO    ] ================================================
[2026-06-13 14:43:08,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:43:08
[2026-06-13 14:43:08,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:43:08,856.856 INFO    ] Initializing speech engine...
[2026-06-13 14:43:08,865.865 INFO    ] 2026-06-13 14:43:08
[2026-06-13 14:43:09,085.085 INFO    ] 2026-06-13 14:43:09
[2026-06-13 14:43:09,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:43:09,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:43:09,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:43:09,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:43:09,464.464 INFO    ] time= 13/06/2026 14:43:09
[2026-06-13 14:43:09,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:43:09,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:43:09,626.626 INFO    ] No existing commands found in stream
[2026-06-13 14:43:14,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:14,638.638 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 14:43:16,991.991 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 14:43:17,015.015 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d517d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 14:43:17,024.024 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d517d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 14:43:17,032.032 INFO    ] None
[2026-06-13 14:43:17,035.035 INFO    ] Checking for system updates...
[2026-06-13 14:43:17,077.077 INFO    ] 200
[2026-06-13 14:43:17,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:17,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:17,120.120 INFO    ] No update needed
[2026-06-13 14:43:17,121.121 INFO    ] Checking for camera pi updates...
[2026-06-13 14:43:17,140.140 INFO    ] 200
[2026-06-13 14:43:17,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:17,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:43:19,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:19,702.702 INFO    ] No camera update needed
[2026-06-13 14:43:19,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:43:19,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:43:19,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:43:19,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:43:21,760.760 INFO    ] ================================================
[2026-06-13 14:43:21,776.776 INFO    ] Launching Daemon at Sat Jun 13 14:43:21 IST 2026
[2026-06-13 14:43:21,787.787 INFO    ] ================================================
[2026-06-13 14:43:22,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:43:22
[2026-06-13 14:43:22,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:43:22,642.642 INFO    ] Initializing speech engine...
[2026-06-13 14:43:22,647.647 INFO    ] 2026-06-13 14:43:22
[2026-06-13 14:43:22,859.859 INFO    ] 2026-06-13 14:43:22
[2026-06-13 14:43:22,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:43:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:43:23,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:43:23,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:43:23,289.289 INFO    ] time= 13/06/2026 14:43:23
[2026-06-13 14:43:23,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:43:23,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:43:23,408.408 INFO    ] No existing commands found in stream
[2026-06-13 14:43:28,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:28,421.421 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 14:43:29,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:43:29,490.490 INFO    ] Checking for system updates...
[2026-06-13 14:43:29,511.511 INFO    ] 200
[2026-06-13 14:43:29,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:29,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:29,547.547 INFO    ] No update needed
[2026-06-13 14:43:29,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 14:43:29,569.569 INFO    ] 200
[2026-06-13 14:43:29,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:29,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:43:29,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:29,634.634 INFO    ] No camera update needed
[2026-06-13 14:43:29,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:43:29,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:43:29,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:43:29,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:43:31,684.684 INFO    ] ================================================
[2026-06-13 14:43:31,700.700 INFO    ] Launching Daemon at Sat Jun 13 14:43:31 IST 2026
[2026-06-13 14:43:31,712.712 INFO    ] ================================================
[2026-06-13 14:43:32,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:43:32
[2026-06-13 14:43:32,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:43:32,546.546 INFO    ] Initializing speech engine...
[2026-06-13 14:43:32,558.558 INFO    ] 2026-06-13 14:43:32
[2026-06-13 14:43:32,792.792 INFO    ] 2026-06-13 14:43:32
[2026-06-13 14:43:32,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:43:33,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:43:33,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:43:33,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:43:33,216.216 INFO    ] time= 13/06/2026 14:43:33
[2026-06-13 14:43:33,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:43:33,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:43:33,340.340 INFO    ] No existing commands found in stream
[2026-06-13 14:43:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:38,353.353 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 14:43:38,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:43:38,923.923 INFO    ] Checking for system updates...
[2026-06-13 14:43:38,944.944 INFO    ] 200
[2026-06-13 14:43:38,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:38,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:43:38,979.979 INFO    ] No update needed
[2026-06-13 14:43:38,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 14:43:39,001.001 INFO    ] 200
[2026-06-13 14:43:39,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:39,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:43:39,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:43:39,062.062 INFO    ] No camera update needed
[2026-06-13 14:43:39,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:43:39,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:43:39,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:43:39,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:43:41,111.111 INFO    ] ================================================
[2026-06-13 14:43:41,125.125 INFO    ] Launching Daemon at Sat Jun 13 14:43:41 IST 2026
[2026-06-13 14:43:41,136.136 INFO    ] ================================================
[2026-06-13 14:43:41,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:43:41
[2026-06-13 14:43:41,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:43:41,937.937 INFO    ] Initializing speech engine...
[2026-06-13 14:43:41,941.941 INFO    ] 2026-06-13 14:43:41
[2026-06-13 14:43:42,166.166 INFO    ] 2026-06-13 14:43:42
[2026-06-13 14:43:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:43:42,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:43:42,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:43:42,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:43:42,588.588 INFO    ] time= 13/06/2026 14:43:42
[2026-06-13 14:43:42,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:43:42,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:43:42,713.713 INFO    ] No existing commands found in stream
[2026-06-13 14:43:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:47,726.726 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 14:43:48,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:43:48,468.468 INFO    ] Checking for system updates...
[2026-06-13 14:43:48,489.489 INFO    ] 200
[2026-06-13 14:43:48,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:48,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:48,523.523 INFO    ] No update needed
[2026-06-13 14:43:48,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 14:43:48,544.544 INFO    ] 200
[2026-06-13 14:43:48,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:43:48,569.569 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:43:48,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:43:48,609.609 INFO    ] No camera update needed
[2026-06-13 14:43:48,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:43:48,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:43:48,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:43:48,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:43:50,656.656 INFO    ] ================================================
[2026-06-13 14:43:50,672.672 INFO    ] Launching Daemon at Sat Jun 13 14:43:50 IST 2026
[2026-06-13 14:43:50,682.682 INFO    ] ================================================
[2026-06-13 14:43:51,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:43:51
[2026-06-13 14:43:51,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:43:51,466.466 INFO    ] Initializing speech engine...
[2026-06-13 14:43:51,476.476 INFO    ] 2026-06-13 14:43:51
[2026-06-13 14:43:51,688.688 INFO    ] 2026-06-13 14:43:51
[2026-06-13 14:43:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:43:51,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:43:51,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:43:52,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:43:52,097.097 INFO    ] time= 13/06/2026 14:43:52
[2026-06-13 14:43:52,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:43:52,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:43:52,229.229 INFO    ] No existing commands found in stream
[2026-06-13 14:43:57,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:43:57,243.243 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 14:44:00,696.696 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 14:44:00,720.720 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 14:44:00,728.728 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 14:44:00,737.737 INFO    ] None
[2026-06-13 14:44:00,739.739 INFO    ] Checking for system updates...
[2026-06-13 14:44:00,784.784 INFO    ] 200
[2026-06-13 14:44:00,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:00,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:00,819.819 INFO    ] No update needed
[2026-06-13 14:44:00,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 14:44:00,842.842 INFO    ] 200
[2026-06-13 14:44:00,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:00,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:44:02,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:02,536.536 INFO    ] No camera update needed
[2026-06-13 14:44:02,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:44:02,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:44:02,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:44:02,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:44:04,582.582 INFO    ] ================================================
[2026-06-13 14:44:04,597.597 INFO    ] Launching Daemon at Sat Jun 13 14:44:04 IST 2026
[2026-06-13 14:44:04,607.607 INFO    ] ================================================
[2026-06-13 14:44:04,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:44:04
[2026-06-13 14:44:05,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:44:05,815.815 INFO    ] Initializing speech engine...
[2026-06-13 14:44:05,822.822 INFO    ] 2026-06-13 14:44:05
[2026-06-13 14:44:06,086.086 INFO    ] 2026-06-13 14:44:06
[2026-06-13 14:44:06,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:44:06,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:44:06,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:44:06,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:44:06,526.526 INFO    ] time= 13/06/2026 14:44:06
[2026-06-13 14:44:06,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:44:06,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:44:06,773.773 INFO    ] No existing commands found in stream
[2026-06-13 14:44:11,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:44:11,802.802 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 14:44:15,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:44:15,568.568 INFO    ] Checking for system updates...
[2026-06-13 14:44:15,589.589 INFO    ] 200
[2026-06-13 14:44:15,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:15,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:15,626.626 INFO    ] No update needed
[2026-06-13 14:44:15,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 14:44:15,651.651 INFO    ] 200
[2026-06-13 14:44:15,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:15,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:44:15,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:15,719.719 INFO    ] No camera update needed
[2026-06-13 14:44:15,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:44:15,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:44:15,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:44:15,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:44:17,772.772 INFO    ] ================================================
[2026-06-13 14:44:17,787.787 INFO    ] Launching Daemon at Sat Jun 13 14:44:17 IST 2026
[2026-06-13 14:44:17,798.798 INFO    ] ================================================
[2026-06-13 14:44:18,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:44:18
[2026-06-13 14:44:18,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:44:18,618.618 INFO    ] Initializing speech engine...
[2026-06-13 14:44:18,628.628 INFO    ] 2026-06-13 14:44:18
[2026-06-13 14:44:18,831.831 INFO    ] 2026-06-13 14:44:18
[2026-06-13 14:44:18,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:44:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:44:19,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:44:19,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:44:19,244.244 INFO    ] time= 13/06/2026 14:44:19
[2026-06-13 14:44:19,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:44:19,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:44:19,343.343 INFO    ] No existing commands found in stream
[2026-06-13 14:44:24,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:44:24,354.354 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 14:44:26,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:44:26,656.656 INFO    ] Checking for system updates...
[2026-06-13 14:44:26,677.677 INFO    ] 200
[2026-06-13 14:44:26,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:26,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:44:26,710.710 INFO    ] No update needed
[2026-06-13 14:44:26,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 14:44:26,731.731 INFO    ] 200
[2026-06-13 14:44:26,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:26,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:44:26,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:44:26,800.800 INFO    ] No camera update needed
[2026-06-13 14:44:26,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:44:26,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:44:26,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:44:26,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:44:28,850.850 INFO    ] ================================================
[2026-06-13 14:44:28,865.865 INFO    ] Launching Daemon at Sat Jun 13 14:44:28 IST 2026
[2026-06-13 14:44:28,876.876 INFO    ] ================================================
[2026-06-13 14:44:29,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:44:29
[2026-06-13 14:44:29,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:44:29,696.696 INFO    ] Initializing speech engine...
[2026-06-13 14:44:29,706.706 INFO    ] 2026-06-13 14:44:29
[2026-06-13 14:44:29,910.910 INFO    ] 2026-06-13 14:44:29
[2026-06-13 14:44:29,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:44:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:44:30,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:44:30,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:44:30,319.319 INFO    ] time= 13/06/2026 14:44:30
[2026-06-13 14:44:30,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:44:30,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:44:30,429.429 INFO    ] No existing commands found in stream
[2026-06-13 14:44:35,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:44:35,443.443 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 14:44:37,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:44:37,183.183 INFO    ] Checking for system updates...
[2026-06-13 14:44:37,204.204 INFO    ] 200
[2026-06-13 14:44:37,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:37,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:44:37,237.237 INFO    ] No update needed
[2026-06-13 14:44:37,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 14:44:37,261.261 INFO    ] 200
[2026-06-13 14:44:37,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:37,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:44:37,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:44:37,334.334 INFO    ] No camera update needed
[2026-06-13 14:44:37,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:44:37,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:44:37,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:44:37,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:44:39,382.382 INFO    ] ================================================
[2026-06-13 14:44:39,397.397 INFO    ] Launching Daemon at Sat Jun 13 14:44:39 IST 2026
[2026-06-13 14:44:39,408.408 INFO    ] ================================================
[2026-06-13 14:44:39,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:44:39
[2026-06-13 14:44:40,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:44:40,240.240 INFO    ] Initializing speech engine...
[2026-06-13 14:44:40,247.247 INFO    ] 2026-06-13 14:44:40
[2026-06-13 14:44:40,453.453 INFO    ] 2026-06-13 14:44:40
[2026-06-13 14:44:40,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:44:40,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:44:40,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:44:40,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:44:40,858.858 INFO    ] time= 13/06/2026 14:44:40
[2026-06-13 14:44:40,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:44:40,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:44:40,970.970 INFO    ] No existing commands found in stream
[2026-06-13 14:44:46,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:44:46,005.005 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 14:44:47,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:44:47,250.250 INFO    ] Checking for system updates...
[2026-06-13 14:44:47,271.271 INFO    ] 200
[2026-06-13 14:44:47,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:47,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:47,304.304 INFO    ] No update needed
[2026-06-13 14:44:47,306.306 INFO    ] Checking for camera pi updates...
[2026-06-13 14:44:47,327.327 INFO    ] 200
[2026-06-13 14:44:47,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:44:47,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:44:47,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:44:47,395.395 INFO    ] No camera update needed
[2026-06-13 14:44:47,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:44:47,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:44:47,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:44:47,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:44:49,441.441 INFO    ] ================================================
[2026-06-13 14:44:49,456.456 INFO    ] Launching Daemon at Sat Jun 13 14:44:49 IST 2026
[2026-06-13 14:44:49,466.466 INFO    ] ================================================
[2026-06-13 14:44:49,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:44:49
[2026-06-13 14:44:50,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:44:50,797.797 INFO    ] Initializing speech engine...
[2026-06-13 14:44:50,806.806 INFO    ] 2026-06-13 14:44:50
[2026-06-13 14:44:51,093.093 INFO    ] 2026-06-13 14:44:51
[2026-06-13 14:44:51,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:44:51,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:44:51,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:44:51,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:44:51,556.556 INFO    ] time= 13/06/2026 14:44:51
[2026-06-13 14:44:51,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:44:51,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:44:51,807.807 INFO    ] No existing commands found in stream
[2026-06-13 14:44:56,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:44:56,826.826 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 14:45:00,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:45:00,911.911 INFO    ] Checking for system updates...
[2026-06-13 14:45:00,933.933 INFO    ] 200
[2026-06-13 14:45:00,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:00,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:45:00,969.969 INFO    ] No update needed
[2026-06-13 14:45:00,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:00,990.990 INFO    ] 200
[2026-06-13 14:45:00,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:01,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:01,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:45:01,050.050 INFO    ] No camera update needed
[2026-06-13 14:45:01,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:01,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:01,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:01,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:03,124.124 INFO    ] ================================================
[2026-06-13 14:45:03,146.146 INFO    ] Launching Daemon at Sat Jun 13 14:45:03 IST 2026
[2026-06-13 14:45:03,162.162 INFO    ] ================================================
[2026-06-13 14:45:03,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:03
[2026-06-13 14:45:04,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:04,766.766 INFO    ] Initializing speech engine...
[2026-06-13 14:45:04,770.770 INFO    ] 2026-06-13 14:45:04
[2026-06-13 14:45:04,992.992 INFO    ] 2026-06-13 14:45:04
[2026-06-13 14:45:05,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:45:05,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:45:05,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:45:05,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:45:05,367.367 INFO    ] time= 13/06/2026 14:45:05
[2026-06-13 14:45:05,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:45:05,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:45:05,544.544 INFO    ] No existing commands found in stream
[2026-06-13 14:45:10,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:45:10,551.551 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 14:45:14,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:45:14,727.727 INFO    ] Checking for system updates...
[2026-06-13 14:45:14,748.748 INFO    ] 200
[2026-06-13 14:45:14,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:14,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:14,782.782 INFO    ] No update needed
[2026-06-13 14:45:14,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:14,803.803 INFO    ] 200
[2026-06-13 14:45:14,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:14,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:14,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:14,872.872 INFO    ] No camera update needed
[2026-06-13 14:45:14,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:14,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:14,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:14,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:16,922.922 INFO    ] ================================================
[2026-06-13 14:45:16,937.937 INFO    ] Launching Daemon at Sat Jun 13 14:45:16 IST 2026
[2026-06-13 14:45:16,949.949 INFO    ] ================================================
[2026-06-13 14:45:17,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:17
[2026-06-13 14:45:17,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:17,775.775 INFO    ] Initializing speech engine...
[2026-06-13 14:45:17,780.780 INFO    ] 2026-06-13 14:45:17
[2026-06-13 14:45:17,985.985 INFO    ] 2026-06-13 14:45:17
[2026-06-13 14:45:18,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:45:18,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:45:18,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:45:18,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:45:18,414.414 INFO    ] time= 13/06/2026 14:45:18
[2026-06-13 14:45:18,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:45:18,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:45:18,526.526 INFO    ] No existing commands found in stream
[2026-06-13 14:45:23,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:45:23,539.539 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 14:45:26,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:45:26,141.141 INFO    ] Checking for system updates...
[2026-06-13 14:45:26,162.162 INFO    ] 200
[2026-06-13 14:45:26,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:26,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:26,198.198 INFO    ] No update needed
[2026-06-13 14:45:26,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:26,219.219 INFO    ] 200
[2026-06-13 14:45:26,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:26,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:26,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:26,289.289 INFO    ] No camera update needed
[2026-06-13 14:45:26,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:26,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:26,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:26,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:28,338.338 INFO    ] ================================================
[2026-06-13 14:45:28,353.353 INFO    ] Launching Daemon at Sat Jun 13 14:45:28 IST 2026
[2026-06-13 14:45:28,365.365 INFO    ] ================================================
[2026-06-13 14:45:28,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:28
[2026-06-13 14:45:29,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:29,227.227 INFO    ] Initializing speech engine...
[2026-06-13 14:45:29,238.238 INFO    ] 2026-06-13 14:45:29
[2026-06-13 14:45:29,448.448 INFO    ] 2026-06-13 14:45:29
[2026-06-13 14:45:29,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:45:29,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:45:29,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:45:29,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:45:29,850.850 INFO    ] time= 13/06/2026 14:45:29
[2026-06-13 14:45:29,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:45:29,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:45:29,965.965 INFO    ] No existing commands found in stream
[2026-06-13 14:45:34,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:45:34,983.983 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 14:45:38,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:45:38,157.157 INFO    ] Checking for system updates...
[2026-06-13 14:45:38,178.178 INFO    ] 200
[2026-06-13 14:45:38,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:38,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:38,213.213 INFO    ] No update needed
[2026-06-13 14:45:38,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:38,234.234 INFO    ] 200
[2026-06-13 14:45:38,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:38,259.259 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:38,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:38,301.301 INFO    ] No camera update needed
[2026-06-13 14:45:38,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:38,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:38,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:38,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:40,350.350 INFO    ] ================================================
[2026-06-13 14:45:40,366.366 INFO    ] Launching Daemon at Sat Jun 13 14:45:40 IST 2026
[2026-06-13 14:45:40,377.377 INFO    ] ================================================
[2026-06-13 14:45:40,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:40
[2026-06-13 14:45:41,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:41,217.217 INFO    ] Initializing speech engine...
[2026-06-13 14:45:41,223.223 INFO    ] 2026-06-13 14:45:41
[2026-06-13 14:45:41,431.431 INFO    ] 2026-06-13 14:45:41
[2026-06-13 14:45:41,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:45:41,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:45:41,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:45:41,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:45:41,841.841 INFO    ] time= 13/06/2026 14:45:41
[2026-06-13 14:45:41,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:45:41,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:45:41,946.946 INFO    ] No existing commands found in stream
[2026-06-13 14:45:46,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:45:46,959.959 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 14:45:47,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:45:47,331.331 INFO    ] Checking for system updates...
[2026-06-13 14:45:47,352.352 INFO    ] 200
[2026-06-13 14:45:47,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:47,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:47,386.386 INFO    ] No update needed
[2026-06-13 14:45:47,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:47,407.407 INFO    ] 200
[2026-06-13 14:45:47,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:47,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:47,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:47,480.480 INFO    ] No camera update needed
[2026-06-13 14:45:47,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:47,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:47,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:49,529.529 INFO    ] ================================================
[2026-06-13 14:45:49,545.545 INFO    ] Launching Daemon at Sat Jun 13 14:45:49 IST 2026
[2026-06-13 14:45:49,555.555 INFO    ] ================================================
[2026-06-13 14:45:49,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:49
[2026-06-13 14:45:50,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:50,322.322 INFO    ] Initializing speech engine...
[2026-06-13 14:45:50,326.326 INFO    ] 2026-06-13 14:45:50
[2026-06-13 14:45:50,554.554 INFO    ] 2026-06-13 14:45:50
[2026-06-13 14:45:50,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:45:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:45:50,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:45:50,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:45:50,975.975 INFO    ] time= 13/06/2026 14:45:50
[2026-06-13 14:45:51,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:45:51,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:45:51,105.105 INFO    ] No existing commands found in stream
[2026-06-13 14:45:56,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:45:56,119.119 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 14:45:56,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:45:56,616.616 INFO    ] Checking for system updates...
[2026-06-13 14:45:56,637.637 INFO    ] 200
[2026-06-13 14:45:56,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:56,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:56,671.671 INFO    ] No update needed
[2026-06-13 14:45:56,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 14:45:56,692.692 INFO    ] 200
[2026-06-13 14:45:56,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:45:56,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:45:56,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:45:56,754.754 INFO    ] No camera update needed
[2026-06-13 14:45:56,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:45:56,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:45:56,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:45:56,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:45:58,802.802 INFO    ] ================================================
[2026-06-13 14:45:58,817.817 INFO    ] Launching Daemon at Sat Jun 13 14:45:58 IST 2026
[2026-06-13 14:45:58,828.828 INFO    ] ================================================
[2026-06-13 14:45:59,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:45:59
[2026-06-13 14:45:59,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:45:59,627.627 INFO    ] Initializing speech engine...
[2026-06-13 14:45:59,632.632 INFO    ] 2026-06-13 14:45:59
[2026-06-13 14:45:59,861.861 INFO    ] 2026-06-13 14:45:59
[2026-06-13 14:45:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:00,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:00,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:00,289.289 INFO    ] time= 13/06/2026 14:46:00
[2026-06-13 14:46:00,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:00,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:00,421.421 INFO    ] No existing commands found in stream
[2026-06-13 14:46:05,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:46:05,434.434 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 14:46:06,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:46:06,358.358 INFO    ] Checking for system updates...
[2026-06-13 14:46:06,379.379 INFO    ] 200
[2026-06-13 14:46:06,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:06,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:06,411.411 INFO    ] No update needed
[2026-06-13 14:46:06,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 14:46:06,432.432 INFO    ] 200
[2026-06-13 14:46:06,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:06,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:46:06,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:06,605.605 INFO    ] No camera update needed
[2026-06-13 14:46:06,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:46:06,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:46:06,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:46:06,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:46:08,654.654 INFO    ] ================================================
[2026-06-13 14:46:08,672.672 INFO    ] Launching Daemon at Sat Jun 13 14:46:08 IST 2026
[2026-06-13 14:46:08,684.684 INFO    ] ================================================
[2026-06-13 14:46:09,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:46:09
[2026-06-13 14:46:09,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:46:09,476.476 INFO    ] Initializing speech engine...
[2026-06-13 14:46:09,481.481 INFO    ] 2026-06-13 14:46:09
[2026-06-13 14:46:09,706.706 INFO    ] 2026-06-13 14:46:09
[2026-06-13 14:46:09,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:09,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:09,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:10,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:10,122.122 INFO    ] time= 13/06/2026 14:46:10
[2026-06-13 14:46:10,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:10,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:10,252.252 INFO    ] No existing commands found in stream
[2026-06-13 14:46:15,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:46:15,263.263 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 14:46:19,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:46:19,480.480 INFO    ] Checking for system updates...
[2026-06-13 14:46:19,504.504 INFO    ] 200
[2026-06-13 14:46:19,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:19,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:19,537.537 INFO    ] No update needed
[2026-06-13 14:46:19,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 14:46:19,558.558 INFO    ] 200
[2026-06-13 14:46:19,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:19,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:46:19,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:19,624.624 INFO    ] No camera update needed
[2026-06-13 14:46:19,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:46:19,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:46:19,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:46:19,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:46:21,670.670 INFO    ] ================================================
[2026-06-13 14:46:21,686.686 INFO    ] Launching Daemon at Sat Jun 13 14:46:21 IST 2026
[2026-06-13 14:46:21,697.697 INFO    ] ================================================
[2026-06-13 14:46:22,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:46:22
[2026-06-13 14:46:22,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:46:22,509.509 INFO    ] Initializing speech engine...
[2026-06-13 14:46:22,515.515 INFO    ] 2026-06-13 14:46:22
[2026-06-13 14:46:22,728.728 INFO    ] 2026-06-13 14:46:22
[2026-06-13 14:46:22,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:22,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:22,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:23,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:23,143.143 INFO    ] time= 13/06/2026 14:46:23
[2026-06-13 14:46:23,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:23,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:23,279.279 INFO    ] No existing commands found in stream
[2026-06-13 14:46:28,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:46:28,291.291 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 14:46:30,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:46:30,851.851 INFO    ] Checking for system updates...
[2026-06-13 14:46:30,873.873 INFO    ] 200
[2026-06-13 14:46:30,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:30,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:46:30,913.913 INFO    ] No update needed
[2026-06-13 14:46:30,916.916 INFO    ] Checking for camera pi updates...
[2026-06-13 14:46:30,952.952 INFO    ] 200
[2026-06-13 14:46:30,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:30,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:46:31,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:46:31,041.041 INFO    ] No camera update needed
[2026-06-13 14:46:31,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:46:31,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:46:31,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:46:31,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:46:33,102.102 INFO    ] ================================================
[2026-06-13 14:46:33,119.119 INFO    ] Launching Daemon at Sat Jun 13 14:46:33 IST 2026
[2026-06-13 14:46:33,130.130 INFO    ] ================================================
[2026-06-13 14:46:33,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:46:33
[2026-06-13 14:46:34,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:46:34,232.232 INFO    ] Initializing speech engine...
[2026-06-13 14:46:34,244.244 INFO    ] 2026-06-13 14:46:34
[2026-06-13 14:46:34,468.468 INFO    ] 2026-06-13 14:46:34
[2026-06-13 14:46:34,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:34,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:34,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:34,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:34,781.781 INFO    ] time= 13/06/2026 14:46:34
[2026-06-13 14:46:34,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:34,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:34,922.922 INFO    ] No existing commands found in stream
[2026-06-13 14:46:39,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:46:39,954.954 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 14:46:43,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:46:43,986.986 INFO    ] Checking for system updates...
[2026-06-13 14:46:44,007.007 INFO    ] 200
[2026-06-13 14:46:44,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:44,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:44,040.040 INFO    ] No update needed
[2026-06-13 14:46:44,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 14:46:44,061.061 INFO    ] 200
[2026-06-13 14:46:44,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:44,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:46:44,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:44,137.137 INFO    ] No camera update needed
[2026-06-13 14:46:44,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:46:44,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:46:44,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:46:44,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:46:46,185.185 INFO    ] ================================================
[2026-06-13 14:46:46,201.201 INFO    ] Launching Daemon at Sat Jun 13 14:46:46 IST 2026
[2026-06-13 14:46:46,211.211 INFO    ] ================================================
[2026-06-13 14:46:46,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:46:46
[2026-06-13 14:46:46,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:46:46,988.988 INFO    ] Initializing speech engine...
[2026-06-13 14:46:46,991.991 INFO    ] 2026-06-13 14:46:46
[2026-06-13 14:46:47,182.182 INFO    ] 2026-06-13 14:46:47
[2026-06-13 14:46:47,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:47,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:47,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:47,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:47,602.602 INFO    ] time= 13/06/2026 14:46:47
[2026-06-13 14:46:47,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:47,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:47,780.780 INFO    ] No existing commands found in stream
[2026-06-13 14:46:52,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:46:52,813.813 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 14:46:53,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:46:53,845.845 INFO    ] Checking for system updates...
[2026-06-13 14:46:53,865.865 INFO    ] 200
[2026-06-13 14:46:53,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:53,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:53,903.903 INFO    ] No update needed
[2026-06-13 14:46:53,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 14:46:53,925.925 INFO    ] 200
[2026-06-13 14:46:53,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:46:53,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:46:53,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:46:53,992.992 INFO    ] No camera update needed
[2026-06-13 14:46:53,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:46:53,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:46:53,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:46:54,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:46:56,040.040 INFO    ] ================================================
[2026-06-13 14:46:56,056.056 INFO    ] Launching Daemon at Sat Jun 13 14:46:56 IST 2026
[2026-06-13 14:46:56,067.067 INFO    ] ================================================
[2026-06-13 14:46:56,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:46:56
[2026-06-13 14:46:56,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:46:56,916.916 INFO    ] Initializing speech engine...
[2026-06-13 14:46:56,922.922 INFO    ] 2026-06-13 14:46:56
[2026-06-13 14:46:57,132.132 INFO    ] 2026-06-13 14:46:57
[2026-06-13 14:46:57,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:46:57,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:46:57,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:46:57,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:46:57,543.543 INFO    ] time= 13/06/2026 14:46:57
[2026-06-13 14:46:57,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:46:57,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:46:57,660.660 INFO    ] No existing commands found in stream
[2026-06-13 14:47:02,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:02,672.672 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 14:47:06,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:47:06,366.366 INFO    ] Checking for system updates...
[2026-06-13 14:47:06,387.387 INFO    ] 200
[2026-06-13 14:47:06,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:06,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:06,426.426 INFO    ] No update needed
[2026-06-13 14:47:06,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 14:47:06,447.447 INFO    ] 200
[2026-06-13 14:47:06,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:06,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:47:06,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:06,510.510 INFO    ] No camera update needed
[2026-06-13 14:47:06,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:47:06,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:47:06,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:47:06,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:47:08,560.560 INFO    ] ================================================
[2026-06-13 14:47:08,575.575 INFO    ] Launching Daemon at Sat Jun 13 14:47:08 IST 2026
[2026-06-13 14:47:08,587.587 INFO    ] ================================================
[2026-06-13 14:47:08,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:47:08
[2026-06-13 14:47:09,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:47:09,371.371 INFO    ] Initializing speech engine...
[2026-06-13 14:47:09,379.379 INFO    ] 2026-06-13 14:47:09
[2026-06-13 14:47:09,589.589 INFO    ] 2026-06-13 14:47:09
[2026-06-13 14:47:09,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:47:09,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:47:09,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:47:09,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:47:10,003.003 INFO    ] time= 13/06/2026 14:47:09
[2026-06-13 14:47:10,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:47:10,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:47:10,102.102 INFO    ] No existing commands found in stream
[2026-06-13 14:47:15,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:15,115.115 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 14:47:18,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:47:18,592.592 INFO    ] Checking for system updates...
[2026-06-13 14:47:18,629.629 INFO    ] 200
[2026-06-13 14:47:18,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:18,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:18,710.710 INFO    ] No update needed
[2026-06-13 14:47:18,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 14:47:18,748.748 INFO    ] 200
[2026-06-13 14:47:18,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:18,793.793 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:47:18,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:47:18,846.846 INFO    ] No camera update needed
[2026-06-13 14:47:18,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:47:18,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:47:18,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:47:18,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:47:20,908.908 INFO    ] ================================================
[2026-06-13 14:47:20,923.923 INFO    ] Launching Daemon at Sat Jun 13 14:47:20 IST 2026
[2026-06-13 14:47:20,933.933 INFO    ] ================================================
[2026-06-13 14:47:21,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:47:21
[2026-06-13 14:47:21,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:47:22,059.059 INFO    ] Initializing speech engine...
[2026-06-13 14:47:22,068.068 INFO    ] 2026-06-13 14:47:22
[2026-06-13 14:47:22,364.364 INFO    ] 2026-06-13 14:47:22
[2026-06-13 14:47:22,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:47:22,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:47:22,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:47:22,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:47:22,740.740 INFO    ] time= 13/06/2026 14:47:22
[2026-06-13 14:47:22,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:47:22,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:47:22,868.868 INFO    ] No existing commands found in stream
[2026-06-13 14:47:27,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:27,881.881 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 14:47:29,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:47:29,451.451 INFO    ] Checking for system updates...
[2026-06-13 14:47:29,471.471 INFO    ] 200
[2026-06-13 14:47:29,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:29,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:29,504.504 INFO    ] No update needed
[2026-06-13 14:47:29,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 14:47:29,525.525 INFO    ] 200
[2026-06-13 14:47:29,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:29,550.550 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:47:29,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:47:29,596.596 INFO    ] No camera update needed
[2026-06-13 14:47:29,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:47:29,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:47:29,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:47:29,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:47:31,636.636 INFO    ] ================================================
[2026-06-13 14:47:31,646.646 INFO    ] Launching Daemon at Sat Jun 13 14:47:31 IST 2026
[2026-06-13 14:47:31,653.653 INFO    ] ================================================
[2026-06-13 14:47:31,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:47:31
[2026-06-13 14:47:32,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:47:32,420.420 INFO    ] Initializing speech engine...
[2026-06-13 14:47:32,428.428 INFO    ] 2026-06-13 14:47:32
[2026-06-13 14:47:32,643.643 INFO    ] 2026-06-13 14:47:32
[2026-06-13 14:47:32,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:47:32,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:47:32,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:47:32,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:47:33,018.018 INFO    ] time= 13/06/2026 14:47:32
[2026-06-13 14:47:33,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:47:33,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:47:33,143.143 INFO    ] No existing commands found in stream
[2026-06-13 14:47:38,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:38,178.178 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 14:47:40,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:47:40,146.146 INFO    ] Checking for system updates...
[2026-06-13 14:47:40,167.167 INFO    ] 200
[2026-06-13 14:47:40,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:40,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:40,200.200 INFO    ] No update needed
[2026-06-13 14:47:40,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 14:47:40,221.221 INFO    ] 200
[2026-06-13 14:47:40,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:40,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:47:40,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:47:40,284.284 INFO    ] No camera update needed
[2026-06-13 14:47:40,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:47:40,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:47:40,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:47:40,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:47:42,332.332 INFO    ] ================================================
[2026-06-13 14:47:42,347.347 INFO    ] Launching Daemon at Sat Jun 13 14:47:42 IST 2026
[2026-06-13 14:47:42,358.358 INFO    ] ================================================
[2026-06-13 14:47:42,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:47:42
[2026-06-13 14:47:43,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:47:43,240.240 INFO    ] Initializing speech engine...
[2026-06-13 14:47:43,244.244 INFO    ] 2026-06-13 14:47:43
[2026-06-13 14:47:43,453.453 INFO    ] 2026-06-13 14:47:43
[2026-06-13 14:47:43,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:47:43,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:47:43,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:47:43,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:47:43,876.876 INFO    ] time= 13/06/2026 14:47:43
[2026-06-13 14:47:43,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:47:43,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:47:44,034.034 INFO    ] No existing commands found in stream
[2026-06-13 14:47:49,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:49,067.067 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 14:47:50,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:47:50,001.001 INFO    ] Checking for system updates...
[2026-06-13 14:47:50,024.024 INFO    ] 200
[2026-06-13 14:47:50,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:50,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:50,057.057 INFO    ] No update needed
[2026-06-13 14:47:50,059.059 INFO    ] Checking for camera pi updates...
[2026-06-13 14:47:50,079.079 INFO    ] 200
[2026-06-13 14:47:50,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:47:50,105.105 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:47:50,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:47:50,140.140 INFO    ] No camera update needed
[2026-06-13 14:47:50,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:47:50,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:47:50,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:47:50,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:47:52,187.187 INFO    ] ================================================
[2026-06-13 14:47:52,202.202 INFO    ] Launching Daemon at Sat Jun 13 14:47:52 IST 2026
[2026-06-13 14:47:52,213.213 INFO    ] ================================================
[2026-06-13 14:47:52,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:47:52
[2026-06-13 14:47:52,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:47:53,006.006 INFO    ] Initializing speech engine...
[2026-06-13 14:47:53,015.015 INFO    ] 2026-06-13 14:47:53
[2026-06-13 14:47:53,240.240 INFO    ] 2026-06-13 14:47:53
[2026-06-13 14:47:53,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:47:53,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:47:53,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:47:53,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:47:53,676.676 INFO    ] time= 13/06/2026 14:47:53
[2026-06-13 14:47:53,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:47:53,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:47:53,799.799 INFO    ] No existing commands found in stream
[2026-06-13 14:47:58,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:47:58,844.844 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 14:48:00,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:48:00,609.609 INFO    ] Checking for system updates...
[2026-06-13 14:48:00,631.631 INFO    ] 200
[2026-06-13 14:48:00,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:00,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:00,665.665 INFO    ] No update needed
[2026-06-13 14:48:00,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:00,687.687 INFO    ] 200
[2026-06-13 14:48:00,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:00,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:00,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:00,742.742 INFO    ] No camera update needed
[2026-06-13 14:48:00,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:00,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:00,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:00,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:02,806.806 INFO    ] ================================================
[2026-06-13 14:48:02,822.822 INFO    ] Launching Daemon at Sat Jun 13 14:48:02 IST 2026
[2026-06-13 14:48:02,833.833 INFO    ] ================================================
[2026-06-13 14:48:03,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:03
[2026-06-13 14:48:03,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:04,044.044 INFO    ] Initializing speech engine...
[2026-06-13 14:48:04,047.047 INFO    ] 2026-06-13 14:48:04
[2026-06-13 14:48:04,244.244 INFO    ] 2026-06-13 14:48:04
[2026-06-13 14:48:04,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:04,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:04,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:04,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:04,524.524 INFO    ] time= 13/06/2026 14:48:04
[2026-06-13 14:48:04,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:04,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:04,633.633 INFO    ] No existing commands found in stream
[2026-06-13 14:48:09,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:09,669.669 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 14:48:10,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:48:10,527.527 INFO    ] Checking for system updates...
[2026-06-13 14:48:10,548.548 INFO    ] 200
[2026-06-13 14:48:10,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:10,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:48:10,581.581 INFO    ] No update needed
[2026-06-13 14:48:10,582.582 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:10,604.604 INFO    ] 200
[2026-06-13 14:48:10,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:10,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:10,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:48:10,774.774 INFO    ] No camera update needed
[2026-06-13 14:48:10,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:10,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:10,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:10,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:12,815.815 INFO    ] ================================================
[2026-06-13 14:48:12,823.823 INFO    ] Launching Daemon at Sat Jun 13 14:48:12 IST 2026
[2026-06-13 14:48:12,829.829 INFO    ] ================================================
[2026-06-13 14:48:13,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:13
[2026-06-13 14:48:13,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:13,602.602 INFO    ] Initializing speech engine...
[2026-06-13 14:48:13,612.612 INFO    ] 2026-06-13 14:48:13
[2026-06-13 14:48:13,817.817 INFO    ] 2026-06-13 14:48:13
[2026-06-13 14:48:13,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:14,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:14,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:14,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:14,230.230 INFO    ] time= 13/06/2026 14:48:14
[2026-06-13 14:48:14,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:14,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:14,339.339 INFO    ] No existing commands found in stream
[2026-06-13 14:48:19,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:19,353.353 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 14:48:19,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:48:19,791.791 INFO    ] Checking for system updates...
[2026-06-13 14:48:19,813.813 INFO    ] 200
[2026-06-13 14:48:19,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:19,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:48:19,845.845 INFO    ] No update needed
[2026-06-13 14:48:19,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:19,866.866 INFO    ] 200
[2026-06-13 14:48:19,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:19,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:19,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:48:19,929.929 INFO    ] No camera update needed
[2026-06-13 14:48:19,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:19,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:19,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:19,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:21,977.977 INFO    ] ================================================
[2026-06-13 14:48:21,992.992 INFO    ] Launching Daemon at Sat Jun 13 14:48:21 IST 2026
[2026-06-13 14:48:22,002.002 INFO    ] ================================================
[2026-06-13 14:48:22,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:22
[2026-06-13 14:48:22,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:22,778.778 INFO    ] Initializing speech engine...
[2026-06-13 14:48:22,782.782 INFO    ] 2026-06-13 14:48:22
[2026-06-13 14:48:23,007.007 INFO    ] 2026-06-13 14:48:22
[2026-06-13 14:48:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:23,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:23,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:23,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:23,356.356 INFO    ] time= 13/06/2026 14:48:23
[2026-06-13 14:48:23,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:23,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:23,488.488 INFO    ] No existing commands found in stream
[2026-06-13 14:48:28,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:28,512.512 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 14:48:29,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:48:29,367.367 INFO    ] Checking for system updates...
[2026-06-13 14:48:29,388.388 INFO    ] 200
[2026-06-13 14:48:29,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:29,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:29,422.422 INFO    ] No update needed
[2026-06-13 14:48:29,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:29,443.443 INFO    ] 200
[2026-06-13 14:48:29,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:29,468.468 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:29,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:48:29,518.518 INFO    ] No camera update needed
[2026-06-13 14:48:29,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:29,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:29,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:29,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:31,558.558 INFO    ] ================================================
[2026-06-13 14:48:31,568.568 INFO    ] Launching Daemon at Sat Jun 13 14:48:31 IST 2026
[2026-06-13 14:48:31,574.574 INFO    ] ================================================
[2026-06-13 14:48:31,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:31
[2026-06-13 14:48:32,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:32,436.436 INFO    ] Initializing speech engine...
[2026-06-13 14:48:32,442.442 INFO    ] 2026-06-13 14:48:32
[2026-06-13 14:48:32,648.648 INFO    ] 2026-06-13 14:48:32
[2026-06-13 14:48:32,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:32,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:32,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:33,064.064 INFO    ] time= 13/06/2026 14:48:33
[2026-06-13 14:48:33,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:33,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:33,167.167 INFO    ] No existing commands found in stream
[2026-06-13 14:48:38,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:38,180.180 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 14:48:40,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:48:40,765.765 INFO    ] Checking for system updates...
[2026-06-13 14:48:40,805.805 INFO    ] 200
[2026-06-13 14:48:40,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:40,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:40,867.867 INFO    ] No update needed
[2026-06-13 14:48:40,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:40,893.893 INFO    ] 200
[2026-06-13 14:48:40,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:40,921.921 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:40,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:40,968.968 INFO    ] No camera update needed
[2026-06-13 14:48:40,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:40,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:40,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:40,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:43,016.016 INFO    ] ================================================
[2026-06-13 14:48:43,031.031 INFO    ] Launching Daemon at Sat Jun 13 14:48:43 IST 2026
[2026-06-13 14:48:43,042.042 INFO    ] ================================================
[2026-06-13 14:48:43,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:43
[2026-06-13 14:48:43,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:43,889.889 INFO    ] Initializing speech engine...
[2026-06-13 14:48:43,894.894 INFO    ] 2026-06-13 14:48:43
[2026-06-13 14:48:44,100.100 INFO    ] 2026-06-13 14:48:44
[2026-06-13 14:48:44,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:44,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:44,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:44,510.510 INFO    ] time= 13/06/2026 14:48:44
[2026-06-13 14:48:44,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:44,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:44,623.623 INFO    ] No existing commands found in stream
[2026-06-13 14:48:49,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:49,640.640 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 14:48:50,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:48:50,651.651 INFO    ] Checking for system updates...
[2026-06-13 14:48:50,671.671 INFO    ] 200
[2026-06-13 14:48:50,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:50,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:50,704.704 INFO    ] No update needed
[2026-06-13 14:48:50,706.706 INFO    ] Checking for camera pi updates...
[2026-06-13 14:48:50,725.725 INFO    ] 200
[2026-06-13 14:48:50,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:48:50,749.749 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:48:50,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:48:50,785.785 INFO    ] No camera update needed
[2026-06-13 14:48:50,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:48:50,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:48:50,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:48:50,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:48:52,832.832 INFO    ] ================================================
[2026-06-13 14:48:52,846.846 INFO    ] Launching Daemon at Sat Jun 13 14:48:52 IST 2026
[2026-06-13 14:48:52,857.857 INFO    ] ================================================
[2026-06-13 14:48:53,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:48:53
[2026-06-13 14:48:53,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:48:53,669.669 INFO    ] Initializing speech engine...
[2026-06-13 14:48:53,674.674 INFO    ] 2026-06-13 14:48:53
[2026-06-13 14:48:53,876.876 INFO    ] 2026-06-13 14:48:53
[2026-06-13 14:48:53,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:48:54,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:48:54,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:48:54,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:48:54,289.289 INFO    ] time= 13/06/2026 14:48:54
[2026-06-13 14:48:54,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:48:54,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:48:54,387.387 INFO    ] No existing commands found in stream
[2026-06-13 14:48:59,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:48:59,401.401 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 14:49:01,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:49:01,258.258 INFO    ] Checking for system updates...
[2026-06-13 14:49:01,291.291 INFO    ] 200
[2026-06-13 14:49:01,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:01,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:49:01,376.376 INFO    ] No update needed
[2026-06-13 14:49:01,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 14:49:01,414.414 INFO    ] 200
[2026-06-13 14:49:01,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:01,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:49:01,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:49:01,481.481 INFO    ] No camera update needed
[2026-06-13 14:49:01,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:49:01,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:49:01,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:49:01,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:49:03,527.527 INFO    ] ================================================
[2026-06-13 14:49:03,543.543 INFO    ] Launching Daemon at Sat Jun 13 14:49:03 IST 2026
[2026-06-13 14:49:03,554.554 INFO    ] ================================================
[2026-06-13 14:49:03,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:49:03
[2026-06-13 14:49:04,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:49:04,398.398 INFO    ] Initializing speech engine...
[2026-06-13 14:49:04,404.404 INFO    ] 2026-06-13 14:49:04
[2026-06-13 14:49:04,606.606 INFO    ] 2026-06-13 14:49:04
[2026-06-13 14:49:04,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:49:04,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:49:04,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:49:04,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:49:05,026.026 INFO    ] time= 13/06/2026 14:49:04
[2026-06-13 14:49:05,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:49:05,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:49:05,124.124 INFO    ] No existing commands found in stream
[2026-06-13 14:49:10,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:49:10,142.142 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 14:49:11,869.869 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:49:11,871.871 INFO    ] Checking for system updates...
[2026-06-13 14:49:11,891.891 INFO    ] 200
[2026-06-13 14:49:11,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:11,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:49:11,927.927 INFO    ] No update needed
[2026-06-13 14:49:11,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 14:49:11,948.948 INFO    ] 200
[2026-06-13 14:49:11,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:11,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:49:12,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:49:12,017.017 INFO    ] No camera update needed
[2026-06-13 14:49:12,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:49:12,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:49:12,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:49:12,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:49:14,065.065 INFO    ] ================================================
[2026-06-13 14:49:14,081.081 INFO    ] Launching Daemon at Sat Jun 13 14:49:14 IST 2026
[2026-06-13 14:49:14,092.092 INFO    ] ================================================
[2026-06-13 14:49:14,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:49:14
[2026-06-13 14:49:14,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:49:14,937.937 INFO    ] Initializing speech engine...
[2026-06-13 14:49:14,942.942 INFO    ] 2026-06-13 14:49:14
[2026-06-13 14:49:15,151.151 INFO    ] 2026-06-13 14:49:15
[2026-06-13 14:49:15,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:49:15,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:49:15,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:49:15,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:49:15,568.568 INFO    ] time= 13/06/2026 14:49:15
[2026-06-13 14:49:15,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:49:15,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:49:15,668.668 INFO    ] No existing commands found in stream
[2026-06-13 14:49:20,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:49:20,682.682 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 14:49:24,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:49:24,576.576 INFO    ] Checking for system updates...
[2026-06-13 14:49:24,599.599 INFO    ] 200
[2026-06-13 14:49:24,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:24,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:49:24,633.633 INFO    ] No update needed
[2026-06-13 14:49:24,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 14:49:24,653.653 INFO    ] 200
[2026-06-13 14:49:24,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:24,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:49:24,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:49:24,728.728 INFO    ] No camera update needed
[2026-06-13 14:49:24,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:49:24,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:49:24,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:49:24,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:49:26,774.774 INFO    ] ================================================
[2026-06-13 14:49:26,790.790 INFO    ] Launching Daemon at Sat Jun 13 14:49:26 IST 2026
[2026-06-13 14:49:26,801.801 INFO    ] ================================================
[2026-06-13 14:49:27,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:49:27
[2026-06-13 14:49:27,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:49:27,599.599 INFO    ] Initializing speech engine...
[2026-06-13 14:49:27,609.609 INFO    ] 2026-06-13 14:49:27
[2026-06-13 14:49:27,827.827 INFO    ] 2026-06-13 14:49:27
[2026-06-13 14:49:27,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:49:27,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:49:28,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:49:28,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:49:28,233.233 INFO    ] time= 13/06/2026 14:49:28
[2026-06-13 14:49:28,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:49:28,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:49:28,387.387 INFO    ] No existing commands found in stream
[2026-06-13 14:49:33,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:49:33,399.399 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 14:49:36,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:49:36,959.959 INFO    ] Checking for system updates...
[2026-06-13 14:49:36,980.980 INFO    ] 200
[2026-06-13 14:49:36,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:37,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:49:37,014.014 INFO    ] No update needed
[2026-06-13 14:49:37,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 14:49:37,037.037 INFO    ] 200
[2026-06-13 14:49:37,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:37,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:49:37,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:49:37,107.107 INFO    ] No camera update needed
[2026-06-13 14:49:37,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:49:37,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:49:37,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:49:37,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:49:39,154.154 INFO    ] ================================================
[2026-06-13 14:49:39,170.170 INFO    ] Launching Daemon at Sat Jun 13 14:49:39 IST 2026
[2026-06-13 14:49:39,180.180 INFO    ] ================================================
[2026-06-13 14:49:39,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:49:39
[2026-06-13 14:49:39,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:49:39,952.952 INFO    ] Initializing speech engine...
[2026-06-13 14:49:39,956.956 INFO    ] 2026-06-13 14:49:39
[2026-06-13 14:49:40,186.186 INFO    ] 2026-06-13 14:49:40
[2026-06-13 14:49:40,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:49:40,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:49:40,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:49:40,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:49:40,629.629 INFO    ] time= 13/06/2026 14:49:40
[2026-06-13 14:49:40,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:49:40,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:49:40,748.748 INFO    ] No existing commands found in stream
[2026-06-13 14:49:45,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:49:45,760.760 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 14:49:52,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:49:52,050.050 INFO    ] Checking for system updates...
[2026-06-13 14:49:52,070.070 INFO    ] 200
[2026-06-13 14:49:52,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:52,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:49:52,106.106 INFO    ] No update needed
[2026-06-13 14:49:52,107.107 INFO    ] Checking for camera pi updates...
[2026-06-13 14:49:52,127.127 INFO    ] 200
[2026-06-13 14:49:52,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:49:52,153.153 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:49:52,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:49:52,186.186 INFO    ] No camera update needed
[2026-06-13 14:49:52,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:49:52,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:49:52,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:49:52,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:49:54,237.237 INFO    ] ================================================
[2026-06-13 14:49:54,251.251 INFO    ] Launching Daemon at Sat Jun 13 14:49:54 IST 2026
[2026-06-13 14:49:54,262.262 INFO    ] ================================================
[2026-06-13 14:49:54,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:49:54
[2026-06-13 14:49:54,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:49:55,111.111 INFO    ] Initializing speech engine...
[2026-06-13 14:49:55,115.115 INFO    ] 2026-06-13 14:49:55
[2026-06-13 14:49:55,322.322 INFO    ] 2026-06-13 14:49:55
[2026-06-13 14:49:55,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:49:55,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:49:55,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:49:55,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:49:55,745.745 INFO    ] time= 13/06/2026 14:49:55
[2026-06-13 14:49:55,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:49:55,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:49:55,842.842 INFO    ] No existing commands found in stream
[2026-06-13 14:50:00,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:50:00,860.860 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 14:50:08,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:50:08,207.207 INFO    ] Checking for system updates...
[2026-06-13 14:50:08,244.244 INFO    ] 200
[2026-06-13 14:50:08,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:08,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:50:08,306.306 INFO    ] No update needed
[2026-06-13 14:50:08,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 14:50:08,344.344 INFO    ] 200
[2026-06-13 14:50:08,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:08,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:50:08,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:50:08,447.447 INFO    ] No camera update needed
[2026-06-13 14:50:08,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:50:08,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:50:08,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:50:08,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:50:10,497.497 INFO    ] ================================================
[2026-06-13 14:50:10,512.512 INFO    ] Launching Daemon at Sat Jun 13 14:50:10 IST 2026
[2026-06-13 14:50:10,523.523 INFO    ] ================================================
[2026-06-13 14:50:10,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:50:10
[2026-06-13 14:50:11,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:50:11,360.360 INFO    ] Initializing speech engine...
[2026-06-13 14:50:11,364.364 INFO    ] 2026-06-13 14:50:11
[2026-06-13 14:50:11,567.567 INFO    ] 2026-06-13 14:50:11
[2026-06-13 14:50:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:50:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:50:11,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:50:11,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:50:11,963.963 INFO    ] time= 13/06/2026 14:50:11
[2026-06-13 14:50:11,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:50:12,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:50:12,082.082 INFO    ] No existing commands found in stream
[2026-06-13 14:50:17,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:50:17,095.095 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 14:50:17,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:50:17,697.697 INFO    ] Checking for system updates...
[2026-06-13 14:50:17,719.719 INFO    ] 200
[2026-06-13 14:50:17,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:17,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:17,755.755 INFO    ] No update needed
[2026-06-13 14:50:17,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 14:50:17,779.779 INFO    ] 200
[2026-06-13 14:50:17,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:17,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:50:17,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:17,953.953 INFO    ] No camera update needed
[2026-06-13 14:50:17,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:50:17,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:50:17,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:50:17,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:50:20,004.004 INFO    ] ================================================
[2026-06-13 14:50:20,019.019 INFO    ] Launching Daemon at Sat Jun 13 14:50:20 IST 2026
[2026-06-13 14:50:20,030.030 INFO    ] ================================================
[2026-06-13 14:50:20,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:50:20
[2026-06-13 14:50:20,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:50:20,886.886 INFO    ] Initializing speech engine...
[2026-06-13 14:50:20,892.892 INFO    ] 2026-06-13 14:50:20
[2026-06-13 14:50:21,121.121 INFO    ] 2026-06-13 14:50:21
[2026-06-13 14:50:21,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:50:21,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:50:21,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:50:21,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:50:21,595.595 INFO    ] time= 13/06/2026 14:50:21
[2026-06-13 14:50:21,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:50:21,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:50:21,812.812 INFO    ] No existing commands found in stream
[2026-06-13 14:50:26,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:50:26,838.838 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 14:50:30,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:50:30,188.188 INFO    ] Checking for system updates...
[2026-06-13 14:50:30,210.210 INFO    ] 200
[2026-06-13 14:50:30,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:30,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:30,243.243 INFO    ] No update needed
[2026-06-13 14:50:30,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 14:50:30,265.265 INFO    ] 200
[2026-06-13 14:50:30,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:30,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:50:30,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:30,333.333 INFO    ] No camera update needed
[2026-06-13 14:50:30,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:50:30,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:50:30,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:50:30,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:50:32,383.383 INFO    ] ================================================
[2026-06-13 14:50:32,399.399 INFO    ] Launching Daemon at Sat Jun 13 14:50:32 IST 2026
[2026-06-13 14:50:32,410.410 INFO    ] ================================================
[2026-06-13 14:50:32,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:50:32
[2026-06-13 14:50:33,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:50:33,237.237 INFO    ] Initializing speech engine...
[2026-06-13 14:50:33,251.251 INFO    ] 2026-06-13 14:50:33
[2026-06-13 14:50:33,472.472 INFO    ] 2026-06-13 14:50:33
[2026-06-13 14:50:33,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:50:33,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:50:33,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:50:33,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:50:33,903.903 INFO    ] time= 13/06/2026 14:50:33
[2026-06-13 14:50:33,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:50:33,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:50:34,030.030 INFO    ] No existing commands found in stream
[2026-06-13 14:50:39,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:50:39,044.044 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 14:50:40,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:50:40,332.332 INFO    ] Checking for system updates...
[2026-06-13 14:50:40,353.353 INFO    ] 200
[2026-06-13 14:50:40,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:40,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:50:40,387.387 INFO    ] No update needed
[2026-06-13 14:50:40,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 14:50:40,408.408 INFO    ] 200
[2026-06-13 14:50:40,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:40,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:50:40,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:50:40,471.471 INFO    ] No camera update needed
[2026-06-13 14:50:40,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:50:40,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:50:40,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:50:40,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:50:42,521.521 INFO    ] ================================================
[2026-06-13 14:50:42,537.537 INFO    ] Launching Daemon at Sat Jun 13 14:50:42 IST 2026
[2026-06-13 14:50:42,548.548 INFO    ] ================================================
[2026-06-13 14:50:42,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:50:42
[2026-06-13 14:50:43,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:50:43,357.357 INFO    ] Initializing speech engine...
[2026-06-13 14:50:43,362.362 INFO    ] 2026-06-13 14:50:43
[2026-06-13 14:50:43,609.609 INFO    ] 2026-06-13 14:50:43
[2026-06-13 14:50:43,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:50:43,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:50:43,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:50:43,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:50:43,977.977 INFO    ] time= 13/06/2026 14:50:43
[2026-06-13 14:50:43,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:50:44,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:50:44,052.052 INFO    ] No existing commands found in stream
[2026-06-13 14:50:49,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:50:49,066.066 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 14:50:51,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:50:51,960.960 INFO    ] Checking for system updates...
[2026-06-13 14:50:51,982.982 INFO    ] 200
[2026-06-13 14:50:51,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:52,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:52,016.016 INFO    ] No update needed
[2026-06-13 14:50:52,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 14:50:52,038.038 INFO    ] 200
[2026-06-13 14:50:52,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:50:52,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:50:52,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:50:52,109.109 INFO    ] No camera update needed
[2026-06-13 14:50:52,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:50:52,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:50:52,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:50:52,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:50:54,157.157 INFO    ] ================================================
[2026-06-13 14:50:54,172.172 INFO    ] Launching Daemon at Sat Jun 13 14:50:54 IST 2026
[2026-06-13 14:50:54,183.183 INFO    ] ================================================
[2026-06-13 14:50:54,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:50:54
[2026-06-13 14:50:55,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:50:55,417.417 INFO    ] Initializing speech engine...
[2026-06-13 14:50:55,432.432 INFO    ] 2026-06-13 14:50:55
[2026-06-13 14:50:55,697.697 INFO    ] 2026-06-13 14:50:55
[2026-06-13 14:50:55,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:50:55,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:50:55,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:50:56,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:50:56,055.055 INFO    ] time= 13/06/2026 14:50:56
[2026-06-13 14:50:56,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:50:56,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:50:56,152.152 INFO    ] No existing commands found in stream
[2026-06-13 14:51:01,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:01,167.167 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 14:51:05,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:51:05,404.404 INFO    ] Checking for system updates...
[2026-06-13 14:51:05,425.425 INFO    ] 200
[2026-06-13 14:51:05,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:05,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:05,458.458 INFO    ] No update needed
[2026-06-13 14:51:05,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:05,479.479 INFO    ] 200
[2026-06-13 14:51:05,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:05,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:05,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:05,541.541 INFO    ] No camera update needed
[2026-06-13 14:51:05,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:05,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:05,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:05,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:07,589.589 INFO    ] ================================================
[2026-06-13 14:51:07,605.605 INFO    ] Launching Daemon at Sat Jun 13 14:51:07 IST 2026
[2026-06-13 14:51:07,616.616 INFO    ] ================================================
[2026-06-13 14:51:07,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:07
[2026-06-13 14:51:08,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:51:08,424.424 INFO    ] Initializing speech engine...
[2026-06-13 14:51:08,430.430 INFO    ] 2026-06-13 14:51:08
[2026-06-13 14:51:08,633.633 INFO    ] 2026-06-13 14:51:08
[2026-06-13 14:51:08,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:51:08,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:51:08,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:51:08,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:51:09,037.037 INFO    ] time= 13/06/2026 14:51:08
[2026-06-13 14:51:09,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:51:09,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:51:09,145.145 INFO    ] No existing commands found in stream
[2026-06-13 14:51:14,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:14,159.159 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 14:51:14,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:51:14,767.767 INFO    ] Checking for system updates...
[2026-06-13 14:51:14,790.790 INFO    ] 200
[2026-06-13 14:51:14,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:14,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:51:14,824.824 INFO    ] No update needed
[2026-06-13 14:51:14,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:14,847.847 INFO    ] 200
[2026-06-13 14:51:14,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:14,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:14,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:51:14,915.915 INFO    ] No camera update needed
[2026-06-13 14:51:14,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:14,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:14,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:14,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:16,964.964 INFO    ] ================================================
[2026-06-13 14:51:16,980.980 INFO    ] Launching Daemon at Sat Jun 13 14:51:16 IST 2026
[2026-06-13 14:51:16,992.992 INFO    ] ================================================
[2026-06-13 14:51:17,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:17
[2026-06-13 14:51:17,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:51:17,856.856 INFO    ] Initializing speech engine...
[2026-06-13 14:51:17,862.862 INFO    ] 2026-06-13 14:51:17
[2026-06-13 14:51:18,072.072 INFO    ] 2026-06-13 14:51:18
[2026-06-13 14:51:18,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:51:18,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:51:18,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:51:18,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:51:18,483.483 INFO    ] time= 13/06/2026 14:51:18
[2026-06-13 14:51:18,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:51:18,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:51:18,598.598 INFO    ] No existing commands found in stream
[2026-06-13 14:51:23,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:23,608.608 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 14:51:25,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:51:25,776.776 INFO    ] Checking for system updates...
[2026-06-13 14:51:25,797.797 INFO    ] 200
[2026-06-13 14:51:25,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:25,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:25,830.830 INFO    ] No update needed
[2026-06-13 14:51:25,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:25,851.851 INFO    ] 200
[2026-06-13 14:51:25,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:25,877.877 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:25,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:25,927.927 INFO    ] No camera update needed
[2026-06-13 14:51:25,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:25,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:25,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:25,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:27,961.961 INFO    ] ================================================
[2026-06-13 14:51:27,971.971 INFO    ] Launching Daemon at Sat Jun 13 14:51:27 IST 2026
[2026-06-13 14:51:27,978.978 INFO    ] ================================================
[2026-06-13 14:51:28,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:28
[2026-06-13 14:51:28,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:51:29,262.262 INFO    ] Initializing speech engine...
[2026-06-13 14:51:29,272.272 INFO    ] 2026-06-13 14:51:29
[2026-06-13 14:51:29,548.548 INFO    ] 2026-06-13 14:51:29
[2026-06-13 14:51:29,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:51:29,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:51:29,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:51:29,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:51:29,892.892 INFO    ] time= 13/06/2026 14:51:29
[2026-06-13 14:51:29,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:51:29,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:51:30,006.006 INFO    ] No existing commands found in stream
[2026-06-13 14:51:35,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:35,034.034 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 14:51:36,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:51:36,311.311 INFO    ] Checking for system updates...
[2026-06-13 14:51:36,333.333 INFO    ] 200
[2026-06-13 14:51:36,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:36,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:36,369.369 INFO    ] No update needed
[2026-06-13 14:51:36,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:36,393.393 INFO    ] 200
[2026-06-13 14:51:36,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:36,417.417 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:36,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:36,461.461 INFO    ] No camera update needed
[2026-06-13 14:51:36,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:36,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:36,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:36,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:38,510.510 INFO    ] ================================================
[2026-06-13 14:51:38,526.526 INFO    ] Launching Daemon at Sat Jun 13 14:51:38 IST 2026
[2026-06-13 14:51:38,537.537 INFO    ] ================================================
[2026-06-13 14:51:38,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:38
[2026-06-13 14:51:39,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:51:39,312.312 INFO    ] Initializing speech engine...
[2026-06-13 14:51:39,317.317 INFO    ] 2026-06-13 14:51:39
[2026-06-13 14:51:39,551.551 INFO    ] 2026-06-13 14:51:39
[2026-06-13 14:51:39,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:51:39,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:51:39,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:51:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:51:39,997.997 INFO    ] time= 13/06/2026 14:51:39
[2026-06-13 14:51:40,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:51:40,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:51:40,129.129 INFO    ] No existing commands found in stream
[2026-06-13 14:51:45,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:45,143.143 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 14:51:47,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:51:47,277.277 INFO    ] Checking for system updates...
[2026-06-13 14:51:47,297.297 INFO    ] 200
[2026-06-13 14:51:47,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:47,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:51:47,330.330 INFO    ] No update needed
[2026-06-13 14:51:47,332.332 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:47,351.351 INFO    ] 200
[2026-06-13 14:51:47,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:47,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:47,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:51:47,420.420 INFO    ] No camera update needed
[2026-06-13 14:51:47,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:47,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:47,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:47,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:49,468.468 INFO    ] ================================================
[2026-06-13 14:51:49,484.484 INFO    ] Launching Daemon at Sat Jun 13 14:51:49 IST 2026
[2026-06-13 14:51:49,496.496 INFO    ] ================================================
[2026-06-13 14:51:49,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:49
[2026-06-13 14:51:50,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:51:50,296.296 INFO    ] Initializing speech engine...
[2026-06-13 14:51:50,302.302 INFO    ] 2026-06-13 14:51:50
[2026-06-13 14:51:50,506.506 INFO    ] 2026-06-13 14:51:50
[2026-06-13 14:51:50,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:51:50,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:51:50,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:51:50,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:51:50,919.919 INFO    ] time= 13/06/2026 14:51:50
[2026-06-13 14:51:50,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:51:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:51:51,108.108 INFO    ] No existing commands found in stream
[2026-06-13 14:51:56,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:51:56,122.122 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 14:51:57,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:51:57,117.117 INFO    ] Checking for system updates...
[2026-06-13 14:51:57,139.139 INFO    ] 200
[2026-06-13 14:51:57,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:57,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:57,172.172 INFO    ] No update needed
[2026-06-13 14:51:57,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 14:51:57,193.193 INFO    ] 200
[2026-06-13 14:51:57,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:51:57,218.218 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:51:57,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:51:57,264.264 INFO    ] No camera update needed
[2026-06-13 14:51:57,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:51:57,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:51:57,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:51:57,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:51:59,314.314 INFO    ] ================================================
[2026-06-13 14:51:59,329.329 INFO    ] Launching Daemon at Sat Jun 13 14:51:59 IST 2026
[2026-06-13 14:51:59,340.340 INFO    ] ================================================
[2026-06-13 14:51:59,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:51:59
[2026-06-13 14:52:00,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:00,197.197 INFO    ] Initializing speech engine...
[2026-06-13 14:52:00,202.202 INFO    ] 2026-06-13 14:52:00
[2026-06-13 14:52:00,409.409 INFO    ] 2026-06-13 14:52:00
[2026-06-13 14:52:00,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:00,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:00,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:00,821.821 INFO    ] time= 13/06/2026 14:52:00
[2026-06-13 14:52:00,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:00,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:00,927.927 INFO    ] No existing commands found in stream
[2026-06-13 14:52:05,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:52:05,945.945 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 14:52:09,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:52:09,287.287 INFO    ] Checking for system updates...
[2026-06-13 14:52:09,308.308 INFO    ] 200
[2026-06-13 14:52:09,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:09,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:09,342.342 INFO    ] No update needed
[2026-06-13 14:52:09,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 14:52:09,363.363 INFO    ] 200
[2026-06-13 14:52:09,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:09,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:52:09,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:09,426.426 INFO    ] No camera update needed
[2026-06-13 14:52:09,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:52:09,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:52:09,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:52:09,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:52:11,467.467 INFO    ] ================================================
[2026-06-13 14:52:11,484.484 INFO    ] Launching Daemon at Sat Jun 13 14:52:11 IST 2026
[2026-06-13 14:52:11,495.495 INFO    ] ================================================
[2026-06-13 14:52:11,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:52:11
[2026-06-13 14:52:12,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:12,356.356 INFO    ] Initializing speech engine...
[2026-06-13 14:52:12,361.361 INFO    ] 2026-06-13 14:52:12
[2026-06-13 14:52:12,573.573 INFO    ] 2026-06-13 14:52:12
[2026-06-13 14:52:12,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:12,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:12,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:12,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:13,000.000 INFO    ] time= 13/06/2026 14:52:12
[2026-06-13 14:52:13,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:13,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:13,099.099 INFO    ] No existing commands found in stream
[2026-06-13 14:52:18,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:52:18,112.112 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 14:52:21,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:52:21,141.141 INFO    ] Checking for system updates...
[2026-06-13 14:52:21,162.162 INFO    ] 200
[2026-06-13 14:52:21,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:21,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:21,195.195 INFO    ] No update needed
[2026-06-13 14:52:21,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 14:52:21,219.219 INFO    ] 200
[2026-06-13 14:52:21,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:21,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:52:21,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:21,375.375 INFO    ] No camera update needed
[2026-06-13 14:52:21,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:52:21,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:52:21,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:52:21,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:52:23,425.425 INFO    ] ================================================
[2026-06-13 14:52:23,440.440 INFO    ] Launching Daemon at Sat Jun 13 14:52:23 IST 2026
[2026-06-13 14:52:23,451.451 INFO    ] ================================================
[2026-06-13 14:52:23,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:52:23
[2026-06-13 14:52:24,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:24,227.227 INFO    ] Initializing speech engine...
[2026-06-13 14:52:24,230.230 INFO    ] 2026-06-13 14:52:24
[2026-06-13 14:52:24,422.422 INFO    ] 2026-06-13 14:52:24
[2026-06-13 14:52:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:24,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:24,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:24,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:24,873.873 INFO    ] time= 13/06/2026 14:52:24
[2026-06-13 14:52:24,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:25,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:25,071.071 INFO    ] No existing commands found in stream
[2026-06-13 14:52:30,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:52:30,086.086 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 14:52:30,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:52:30,506.506 INFO    ] Checking for system updates...
[2026-06-13 14:52:30,527.527 INFO    ] 200
[2026-06-13 14:52:30,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:30,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:30,561.561 INFO    ] No update needed
[2026-06-13 14:52:30,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 14:52:30,583.583 INFO    ] 200
[2026-06-13 14:52:30,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:30,607.607 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:52:30,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:30,650.650 INFO    ] No camera update needed
[2026-06-13 14:52:30,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:52:30,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:52:30,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:52:30,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:52:32,691.691 INFO    ] ================================================
[2026-06-13 14:52:32,704.704 INFO    ] Launching Daemon at Sat Jun 13 14:52:32 IST 2026
[2026-06-13 14:52:32,716.716 INFO    ] ================================================
[2026-06-13 14:52:33,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:52:33
[2026-06-13 14:52:33,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:33,508.508 INFO    ] Initializing speech engine...
[2026-06-13 14:52:33,514.514 INFO    ] 2026-06-13 14:52:33
[2026-06-13 14:52:33,717.717 INFO    ] 2026-06-13 14:52:33
[2026-06-13 14:52:33,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:33,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:33,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:34,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:34,117.117 INFO    ] time= 13/06/2026 14:52:34
[2026-06-13 14:52:34,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:34,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:34,232.232 INFO    ] No existing commands found in stream
[2026-06-13 14:52:39,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:52:39,245.245 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 14:52:41,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:52:41,497.497 INFO    ] Checking for system updates...
[2026-06-13 14:52:41,517.517 INFO    ] 200
[2026-06-13 14:52:41,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:41,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:41,551.551 INFO    ] No update needed
[2026-06-13 14:52:41,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 14:52:41,572.572 INFO    ] 200
[2026-06-13 14:52:41,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:41,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:52:41,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:41,641.641 INFO    ] No camera update needed
[2026-06-13 14:52:41,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:52:41,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:52:41,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:52:41,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:52:43,689.689 INFO    ] ================================================
[2026-06-13 14:52:43,705.705 INFO    ] Launching Daemon at Sat Jun 13 14:52:43 IST 2026
[2026-06-13 14:52:43,716.716 INFO    ] ================================================
[2026-06-13 14:52:44,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:52:44
[2026-06-13 14:52:44,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:44,545.545 INFO    ] Initializing speech engine...
[2026-06-13 14:52:44,549.549 INFO    ] 2026-06-13 14:52:44
[2026-06-13 14:52:44,753.753 INFO    ] 2026-06-13 14:52:44
[2026-06-13 14:52:44,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:44,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:45,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:45,154.154 INFO    ] time= 13/06/2026 14:52:45
[2026-06-13 14:52:45,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:45,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:45,270.270 INFO    ] No existing commands found in stream
[2026-06-13 14:52:50,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:52:50,282.282 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 14:52:51,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:52:51,423.423 INFO    ] Checking for system updates...
[2026-06-13 14:52:51,444.444 INFO    ] 200
[2026-06-13 14:52:51,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:51,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:52:51,477.477 INFO    ] No update needed
[2026-06-13 14:52:51,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 14:52:51,498.498 INFO    ] 200
[2026-06-13 14:52:51,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:52:51,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:52:51,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:52:51,566.566 INFO    ] No camera update needed
[2026-06-13 14:52:51,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:52:51,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:52:51,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:52:51,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:52:53,614.614 INFO    ] ================================================
[2026-06-13 14:52:53,630.630 INFO    ] Launching Daemon at Sat Jun 13 14:52:53 IST 2026
[2026-06-13 14:52:53,640.640 INFO    ] ================================================
[2026-06-13 14:52:53,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:52:53
[2026-06-13 14:52:54,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:52:54,439.439 INFO    ] Initializing speech engine...
[2026-06-13 14:52:54,444.444 INFO    ] 2026-06-13 14:52:54
[2026-06-13 14:52:54,648.648 INFO    ] 2026-06-13 14:52:54
[2026-06-13 14:52:54,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:52:54,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:52:54,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:52:54,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:52:54,895.895 INFO    ] time= 13/06/2026 14:52:54
[2026-06-13 14:52:54,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:52:54,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:52:54,968.968 INFO    ] No existing commands found in stream
[2026-06-13 14:53:00,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:53:00,005.005 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 14:53:00,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:53:00,741.741 INFO    ] Checking for system updates...
[2026-06-13 14:53:00,761.761 INFO    ] 200
[2026-06-13 14:53:00,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:00,796.796 INFO    ] No update needed
[2026-06-13 14:53:00,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 14:53:00,820.820 INFO    ] 200
[2026-06-13 14:53:00,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:00,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:53:00,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:00,884.884 INFO    ] No camera update needed
[2026-06-13 14:53:00,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:53:00,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:53:00,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:53:00,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:53:02,918.918 INFO    ] ================================================
[2026-06-13 14:53:02,926.926 INFO    ] Launching Daemon at Sat Jun 13 14:53:02 IST 2026
[2026-06-13 14:53:02,932.932 INFO    ] ================================================
[2026-06-13 14:53:03,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:53:03
[2026-06-13 14:53:03,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:53:03,743.743 INFO    ] Initializing speech engine...
[2026-06-13 14:53:03,751.751 INFO    ] 2026-06-13 14:53:03
[2026-06-13 14:53:04,028.028 INFO    ] 2026-06-13 14:53:04
[2026-06-13 14:53:04,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:53:04,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:53:04,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:53:04,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:53:04,401.401 INFO    ] time= 13/06/2026 14:53:04
[2026-06-13 14:53:04,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:53:04,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:53:04,576.576 INFO    ] No existing commands found in stream
[2026-06-13 14:53:09,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:53:09,611.611 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 14:53:11,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:53:11,333.333 INFO    ] Checking for system updates...
[2026-06-13 14:53:11,354.354 INFO    ] 200
[2026-06-13 14:53:11,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:11,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:11,388.388 INFO    ] No update needed
[2026-06-13 14:53:11,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 14:53:11,412.412 INFO    ] 200
[2026-06-13 14:53:11,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:11,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:53:11,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:11,483.483 INFO    ] No camera update needed
[2026-06-13 14:53:11,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:53:11,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:53:11,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:53:11,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:53:13,530.530 INFO    ] ================================================
[2026-06-13 14:53:13,546.546 INFO    ] Launching Daemon at Sat Jun 13 14:53:13 IST 2026
[2026-06-13 14:53:13,557.557 INFO    ] ================================================
[2026-06-13 14:53:13,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:53:13
[2026-06-13 14:53:14,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:53:14,377.377 INFO    ] Initializing speech engine...
[2026-06-13 14:53:14,388.388 INFO    ] 2026-06-13 14:53:14
[2026-06-13 14:53:14,595.595 INFO    ] 2026-06-13 14:53:14
[2026-06-13 14:53:14,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:53:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:53:14,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:53:14,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:53:14,995.995 INFO    ] time= 13/06/2026 14:53:14
[2026-06-13 14:53:15,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:53:15,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:53:15,111.111 INFO    ] No existing commands found in stream
[2026-06-13 14:53:20,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:53:20,144.144 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 14:53:24,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:53:24,264.264 INFO    ] Checking for system updates...
[2026-06-13 14:53:24,286.286 INFO    ] 200
[2026-06-13 14:53:24,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:24,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:24,320.320 INFO    ] No update needed
[2026-06-13 14:53:24,321.321 INFO    ] Checking for camera pi updates...
[2026-06-13 14:53:24,341.341 INFO    ] 200
[2026-06-13 14:53:24,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:24,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:53:24,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:24,403.403 INFO    ] No camera update needed
[2026-06-13 14:53:24,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:53:24,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:53:24,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:53:24,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:53:26,451.451 INFO    ] ================================================
[2026-06-13 14:53:26,467.467 INFO    ] Launching Daemon at Sat Jun 13 14:53:26 IST 2026
[2026-06-13 14:53:26,479.479 INFO    ] ================================================
[2026-06-13 14:53:26,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:53:26
[2026-06-13 14:53:27,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:53:27,274.274 INFO    ] Initializing speech engine...
[2026-06-13 14:53:27,281.281 INFO    ] 2026-06-13 14:53:27
[2026-06-13 14:53:27,487.487 INFO    ] 2026-06-13 14:53:27
[2026-06-13 14:53:27,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:53:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:53:27,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:53:27,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:53:27,903.903 INFO    ] time= 13/06/2026 14:53:27
[2026-06-13 14:53:27,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:53:27,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:53:28,015.015 INFO    ] No existing commands found in stream
[2026-06-13 14:53:33,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:53:33,029.029 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 14:53:35,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:53:35,262.262 INFO    ] Checking for system updates...
[2026-06-13 14:53:35,283.283 INFO    ] 200
[2026-06-13 14:53:35,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:35,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:35,319.319 INFO    ] No update needed
[2026-06-13 14:53:35,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 14:53:35,340.340 INFO    ] 200
[2026-06-13 14:53:35,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:35,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:53:35,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:53:35,405.405 INFO    ] No camera update needed
[2026-06-13 14:53:35,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:53:35,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:53:35,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:53:35,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:53:37,454.454 INFO    ] ================================================
[2026-06-13 14:53:37,470.470 INFO    ] Launching Daemon at Sat Jun 13 14:53:37 IST 2026
[2026-06-13 14:53:37,481.481 INFO    ] ================================================
[2026-06-13 14:53:37,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:53:37
[2026-06-13 14:53:38,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:53:38,284.284 INFO    ] Initializing speech engine...
[2026-06-13 14:53:38,294.294 INFO    ] 2026-06-13 14:53:38
[2026-06-13 14:53:38,496.496 INFO    ] 2026-06-13 14:53:38
[2026-06-13 14:53:38,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:53:38,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:53:38,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:53:38,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:53:38,902.902 INFO    ] time= 13/06/2026 14:53:38
[2026-06-13 14:53:38,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:53:38,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:53:39,012.012 INFO    ] No existing commands found in stream
[2026-06-13 14:53:44,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:53:44,025.025 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 14:53:46,774.774 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 14:53:46,798.798 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d117d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 14:53:46,807.807 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d117d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 14:53:46,816.816 INFO    ] None
[2026-06-13 14:53:46,818.818 INFO    ] Checking for system updates...
[2026-06-13 14:53:46,860.860 INFO    ] 200
[2026-06-13 14:53:46,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:46,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:46,911.911 INFO    ] No update needed
[2026-06-13 14:53:46,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 14:53:46,933.933 INFO    ] 200
[2026-06-13 14:53:46,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:53:46,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:53:53,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:53:53,006.006 INFO    ] No camera update needed
[2026-06-13 14:53:53,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:53:53,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:53:53,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:53:53,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:53:55,053.053 INFO    ] ================================================
[2026-06-13 14:53:55,069.069 INFO    ] Launching Daemon at Sat Jun 13 14:53:55 IST 2026
[2026-06-13 14:53:55,079.079 INFO    ] ================================================
[2026-06-13 14:53:55,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:53:55
[2026-06-13 14:53:55,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:53:55,874.874 INFO    ] Initializing speech engine...
[2026-06-13 14:53:55,886.886 INFO    ] 2026-06-13 14:53:55
[2026-06-13 14:53:56,093.093 INFO    ] 2026-06-13 14:53:56
[2026-06-13 14:53:56,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:53:56,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:53:56,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:53:56,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:53:56,497.497 INFO    ] time= 13/06/2026 14:53:56
[2026-06-13 14:53:56,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:53:56,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:53:56,605.605 INFO    ] No existing commands found in stream
[2026-06-13 14:54:01,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:01,619.619 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 14:54:04,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:54:04,363.363 INFO    ] Checking for system updates...
[2026-06-13 14:54:04,401.401 INFO    ] 200
[2026-06-13 14:54:04,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:04,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:04,460.460 INFO    ] No update needed
[2026-06-13 14:54:04,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 14:54:04,489.489 INFO    ] 200
[2026-06-13 14:54:04,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:04,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:54:04,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:04,552.552 INFO    ] No camera update needed
[2026-06-13 14:54:04,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:54:04,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:54:04,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:54:04,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:54:06,600.600 INFO    ] ================================================
[2026-06-13 14:54:06,616.616 INFO    ] Launching Daemon at Sat Jun 13 14:54:06 IST 2026
[2026-06-13 14:54:06,627.627 INFO    ] ================================================
[2026-06-13 14:54:07,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:54:07
[2026-06-13 14:54:07,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:54:07,516.516 INFO    ] Initializing speech engine...
[2026-06-13 14:54:07,523.523 INFO    ] 2026-06-13 14:54:07
[2026-06-13 14:54:07,735.735 INFO    ] 2026-06-13 14:54:07
[2026-06-13 14:54:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:54:07,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:54:07,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:54:08,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:54:08,162.162 INFO    ] time= 13/06/2026 14:54:08
[2026-06-13 14:54:08,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:54:08,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:54:08,262.262 INFO    ] No existing commands found in stream
[2026-06-13 14:54:13,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:13,275.275 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 14:54:14,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:54:14,628.628 INFO    ] Checking for system updates...
[2026-06-13 14:54:14,650.650 INFO    ] 200
[2026-06-13 14:54:14,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:14,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:14,684.684 INFO    ] No update needed
[2026-06-13 14:54:14,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 14:54:14,705.705 INFO    ] 200
[2026-06-13 14:54:14,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:14,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:54:14,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:14,770.770 INFO    ] No camera update needed
[2026-06-13 14:54:14,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:54:14,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:54:14,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:54:14,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:54:16,817.817 INFO    ] ================================================
[2026-06-13 14:54:16,833.833 INFO    ] Launching Daemon at Sat Jun 13 14:54:16 IST 2026
[2026-06-13 14:54:16,844.844 INFO    ] ================================================
[2026-06-13 14:54:17,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:54:17
[2026-06-13 14:54:17,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:54:17,640.640 INFO    ] Initializing speech engine...
[2026-06-13 14:54:17,648.648 INFO    ] 2026-06-13 14:54:17
[2026-06-13 14:54:17,862.862 INFO    ] 2026-06-13 14:54:17
[2026-06-13 14:54:17,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:54:18,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:54:18,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:54:18,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:54:18,256.256 INFO    ] time= 13/06/2026 14:54:18
[2026-06-13 14:54:18,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:54:18,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:54:18,433.433 INFO    ] No existing commands found in stream
[2026-06-13 14:54:23,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:23,446.446 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 14:54:25,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:54:25,700.700 INFO    ] Checking for system updates...
[2026-06-13 14:54:25,721.721 INFO    ] 200
[2026-06-13 14:54:25,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:25,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:25,755.755 INFO    ] No update needed
[2026-06-13 14:54:25,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 14:54:25,777.777 INFO    ] 200
[2026-06-13 14:54:25,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:25,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:54:25,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:25,828.828 INFO    ] No camera update needed
[2026-06-13 14:54:25,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:54:25,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:54:25,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:54:25,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:54:27,874.874 INFO    ] ================================================
[2026-06-13 14:54:27,889.889 INFO    ] Launching Daemon at Sat Jun 13 14:54:27 IST 2026
[2026-06-13 14:54:27,900.900 INFO    ] ================================================
[2026-06-13 14:54:28,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:54:28
[2026-06-13 14:54:28,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:54:29,234.234 INFO    ] Initializing speech engine...
[2026-06-13 14:54:29,242.242 INFO    ] 2026-06-13 14:54:29
[2026-06-13 14:54:29,496.496 INFO    ] 2026-06-13 14:54:29
[2026-06-13 14:54:29,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:54:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:54:29,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:54:29,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:54:29,874.874 INFO    ] time= 13/06/2026 14:54:29
[2026-06-13 14:54:29,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:54:29,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:54:29,951.951 INFO    ] No existing commands found in stream
[2026-06-13 14:54:34,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:34,961.961 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 14:54:38,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:54:38,696.696 INFO    ] Checking for system updates...
[2026-06-13 14:54:38,718.718 INFO    ] 200
[2026-06-13 14:54:38,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:38,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:38,752.752 INFO    ] No update needed
[2026-06-13 14:54:38,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 14:54:38,774.774 INFO    ] 200
[2026-06-13 14:54:38,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:38,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:54:38,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:38,839.839 INFO    ] No camera update needed
[2026-06-13 14:54:38,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:54:38,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:54:38,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:54:38,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:54:40,886.886 INFO    ] ================================================
[2026-06-13 14:54:40,901.901 INFO    ] Launching Daemon at Sat Jun 13 14:54:40 IST 2026
[2026-06-13 14:54:40,912.912 INFO    ] ================================================
[2026-06-13 14:54:41,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:54:41
[2026-06-13 14:54:41,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:54:42,124.124 INFO    ] Initializing speech engine...
[2026-06-13 14:54:42,133.133 INFO    ] 2026-06-13 14:54:42
[2026-06-13 14:54:42,392.392 INFO    ] 2026-06-13 14:54:42
[2026-06-13 14:54:42,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:54:42,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:54:42,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:54:42,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:54:42,831.831 INFO    ] time= 13/06/2026 14:54:42
[2026-06-13 14:54:42,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:54:42,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:54:43,061.061 INFO    ] No existing commands found in stream
[2026-06-13 14:54:48,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:48,094.094 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 14:54:50,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:54:50,354.354 INFO    ] Checking for system updates...
[2026-06-13 14:54:50,375.375 INFO    ] 200
[2026-06-13 14:54:50,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:50,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:50,410.410 INFO    ] No update needed
[2026-06-13 14:54:50,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 14:54:50,432.432 INFO    ] 200
[2026-06-13 14:54:50,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:54:50,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:54:50,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:54:50,503.503 INFO    ] No camera update needed
[2026-06-13 14:54:50,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:54:50,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:54:50,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:54:50,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:54:52,553.553 INFO    ] ================================================
[2026-06-13 14:54:52,568.568 INFO    ] Launching Daemon at Sat Jun 13 14:54:52 IST 2026
[2026-06-13 14:54:52,579.579 INFO    ] ================================================
[2026-06-13 14:54:52,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:54:52
[2026-06-13 14:54:53,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:54:53,396.396 INFO    ] Initializing speech engine...
[2026-06-13 14:54:53,401.401 INFO    ] 2026-06-13 14:54:53
[2026-06-13 14:54:53,605.605 INFO    ] 2026-06-13 14:54:53
[2026-06-13 14:54:53,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:54:53,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:54:53,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:54:53,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:54:54,006.006 INFO    ] time= 13/06/2026 14:54:53
[2026-06-13 14:54:54,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:54:54,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:54:54,122.122 INFO    ] No existing commands found in stream
[2026-06-13 14:54:59,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:54:59,134.134 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 14:55:01,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:55:01,773.773 INFO    ] Checking for system updates...
[2026-06-13 14:55:01,794.794 INFO    ] 200
[2026-06-13 14:55:01,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:01,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:01,831.831 INFO    ] No update needed
[2026-06-13 14:55:01,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:01,852.852 INFO    ] 200
[2026-06-13 14:55:01,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:01,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:01,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:01,925.925 INFO    ] No camera update needed
[2026-06-13 14:55:01,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:01,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:01,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:01,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:04,024.024 INFO    ] ================================================
[2026-06-13 14:55:04,039.039 INFO    ] Launching Daemon at Sat Jun 13 14:55:04 IST 2026
[2026-06-13 14:55:04,051.051 INFO    ] ================================================
[2026-06-13 14:55:04,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:04
[2026-06-13 14:55:05,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:05,403.403 INFO    ] Initializing speech engine...
[2026-06-13 14:55:05,411.411 INFO    ] 2026-06-13 14:55:05
[2026-06-13 14:55:05,617.617 INFO    ] 2026-06-13 14:55:05
[2026-06-13 14:55:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:05,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:05,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:05,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:05,986.986 INFO    ] time= 13/06/2026 14:55:05
[2026-06-13 14:55:06,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:06,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:06,130.130 INFO    ] No existing commands found in stream
[2026-06-13 14:55:11,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:55:11,144.144 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 14:55:12,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:55:12,672.672 INFO    ] Checking for system updates...
[2026-06-13 14:55:12,693.693 INFO    ] 200
[2026-06-13 14:55:12,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:12,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:12,727.727 INFO    ] No update needed
[2026-06-13 14:55:12,729.729 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:12,749.749 INFO    ] 200
[2026-06-13 14:55:12,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:12,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:12,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:12,828.828 INFO    ] No camera update needed
[2026-06-13 14:55:12,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:12,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:12,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:12,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:14,888.888 INFO    ] ================================================
[2026-06-13 14:55:14,904.904 INFO    ] Launching Daemon at Sat Jun 13 14:55:14 IST 2026
[2026-06-13 14:55:14,915.915 INFO    ] ================================================
[2026-06-13 14:55:15,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:15
[2026-06-13 14:55:16,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:16,145.145 INFO    ] Initializing speech engine...
[2026-06-13 14:55:16,150.150 INFO    ] 2026-06-13 14:55:16
[2026-06-13 14:55:16,380.380 INFO    ] 2026-06-13 14:55:16
[2026-06-13 14:55:16,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:16,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:16,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:16,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:16,801.801 INFO    ] time= 13/06/2026 14:55:16
[2026-06-13 14:55:16,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:16,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:16,939.939 INFO    ] No existing commands found in stream
[2026-06-13 14:55:21,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:55:21,951.951 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 14:55:23,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:55:23,253.253 INFO    ] Checking for system updates...
[2026-06-13 14:55:23,274.274 INFO    ] 200
[2026-06-13 14:55:23,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:23,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:23,308.308 INFO    ] No update needed
[2026-06-13 14:55:23,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:23,332.332 INFO    ] 200
[2026-06-13 14:55:23,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:23,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:23,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:23,398.398 INFO    ] No camera update needed
[2026-06-13 14:55:23,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:23,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:23,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:23,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:25,447.447 INFO    ] ================================================
[2026-06-13 14:55:25,462.462 INFO    ] Launching Daemon at Sat Jun 13 14:55:25 IST 2026
[2026-06-13 14:55:25,474.474 INFO    ] ================================================
[2026-06-13 14:55:25,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:25
[2026-06-13 14:55:26,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:26,272.272 INFO    ] Initializing speech engine...
[2026-06-13 14:55:26,276.276 INFO    ] 2026-06-13 14:55:26
[2026-06-13 14:55:26,498.498 INFO    ] 2026-06-13 14:55:26
[2026-06-13 14:55:26,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:26,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:26,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:26,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:26,907.907 INFO    ] time= 13/06/2026 14:55:26
[2026-06-13 14:55:26,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:26,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:27,024.024 INFO    ] No existing commands found in stream
[2026-06-13 14:55:32,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:55:32,034.034 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 14:55:34,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:55:34,835.835 INFO    ] Checking for system updates...
[2026-06-13 14:55:34,857.857 INFO    ] 200
[2026-06-13 14:55:34,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:34,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:34,893.893 INFO    ] No update needed
[2026-06-13 14:55:34,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:34,913.913 INFO    ] 200
[2026-06-13 14:55:34,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:34,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:34,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:34,981.981 INFO    ] No camera update needed
[2026-06-13 14:55:34,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:34,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:34,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:34,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:37,032.032 INFO    ] ================================================
[2026-06-13 14:55:37,048.048 INFO    ] Launching Daemon at Sat Jun 13 14:55:37 IST 2026
[2026-06-13 14:55:37,059.059 INFO    ] ================================================
[2026-06-13 14:55:37,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:37
[2026-06-13 14:55:37,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:37,951.951 INFO    ] Initializing speech engine...
[2026-06-13 14:55:37,957.957 INFO    ] 2026-06-13 14:55:37
[2026-06-13 14:55:38,169.169 INFO    ] 2026-06-13 14:55:38
[2026-06-13 14:55:38,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:38,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:38,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:38,591.591 INFO    ] time= 13/06/2026 14:55:38
[2026-06-13 14:55:38,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:38,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:38,695.695 INFO    ] No existing commands found in stream
[2026-06-13 14:55:43,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:55:43,707.707 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 14:55:44,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:55:44,352.352 INFO    ] Checking for system updates...
[2026-06-13 14:55:44,373.373 INFO    ] 200
[2026-06-13 14:55:44,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:44,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:44,411.411 INFO    ] No update needed
[2026-06-13 14:55:44,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:44,433.433 INFO    ] 200
[2026-06-13 14:55:44,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:44,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:44,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:55:44,510.510 INFO    ] No camera update needed
[2026-06-13 14:55:44,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:44,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:44,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:44,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:46,560.560 INFO    ] ================================================
[2026-06-13 14:55:46,577.577 INFO    ] Launching Daemon at Sat Jun 13 14:55:46 IST 2026
[2026-06-13 14:55:46,587.587 INFO    ] ================================================
[2026-06-13 14:55:47,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:47
[2026-06-13 14:55:47,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:48,144.144 INFO    ] Initializing speech engine...
[2026-06-13 14:55:48,155.155 INFO    ] 2026-06-13 14:55:48
[2026-06-13 14:55:48,441.441 INFO    ] 2026-06-13 14:55:48
[2026-06-13 14:55:48,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:48,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:48,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:48,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:48,978.978 INFO    ] time= 13/06/2026 14:55:48
[2026-06-13 14:55:48,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:49,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:49,145.145 INFO    ] No existing commands found in stream
[2026-06-13 14:55:54,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:55:54,165.165 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 14:55:55,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:55:55,410.410 INFO    ] Checking for system updates...
[2026-06-13 14:55:55,431.431 INFO    ] 200
[2026-06-13 14:55:55,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:55,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:55,465.465 INFO    ] No update needed
[2026-06-13 14:55:55,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 14:55:55,486.486 INFO    ] 200
[2026-06-13 14:55:55,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:55:55,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:55:55,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:55:55,655.655 INFO    ] No camera update needed
[2026-06-13 14:55:55,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:55:55,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:55:55,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:55:55,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:55:57,703.703 INFO    ] ================================================
[2026-06-13 14:55:57,720.720 INFO    ] Launching Daemon at Sat Jun 13 14:55:57 IST 2026
[2026-06-13 14:55:57,731.731 INFO    ] ================================================
[2026-06-13 14:55:58,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:55:58
[2026-06-13 14:55:58,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:55:58,632.632 INFO    ] Initializing speech engine...
[2026-06-13 14:55:58,640.640 INFO    ] 2026-06-13 14:55:58
[2026-06-13 14:55:58,846.846 INFO    ] 2026-06-13 14:55:58
[2026-06-13 14:55:58,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:55:59,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:55:59,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:55:59,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:55:59,270.270 INFO    ] time= 13/06/2026 14:55:59
[2026-06-13 14:55:59,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:55:59,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:55:59,372.372 INFO    ] No existing commands found in stream
[2026-06-13 14:56:04,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:56:04,386.386 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 14:56:07,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:56:07,916.916 INFO    ] Checking for system updates...
[2026-06-13 14:56:07,939.939 INFO    ] 200
[2026-06-13 14:56:07,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:07,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:56:07,973.973 INFO    ] No update needed
[2026-06-13 14:56:07,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 14:56:07,995.995 INFO    ] 200
[2026-06-13 14:56:07,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:08,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:56:08,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:56:08,049.049 INFO    ] No camera update needed
[2026-06-13 14:56:08,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:56:08,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:56:08,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:56:08,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:56:10,097.097 INFO    ] ================================================
[2026-06-13 14:56:10,113.113 INFO    ] Launching Daemon at Sat Jun 13 14:56:10 IST 2026
[2026-06-13 14:56:10,124.124 INFO    ] ================================================
[2026-06-13 14:56:10,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:56:10
[2026-06-13 14:56:10,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:56:10,932.932 INFO    ] Initializing speech engine...
[2026-06-13 14:56:10,937.937 INFO    ] 2026-06-13 14:56:10
[2026-06-13 14:56:11,144.144 INFO    ] 2026-06-13 14:56:11
[2026-06-13 14:56:11,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:56:11,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:56:11,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:56:11,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:56:11,549.549 INFO    ] time= 13/06/2026 14:56:11
[2026-06-13 14:56:11,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:56:11,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:56:11,674.674 INFO    ] No existing commands found in stream
[2026-06-13 14:56:16,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:56:16,691.691 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 14:56:20,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:56:20,241.241 INFO    ] Checking for system updates...
[2026-06-13 14:56:20,262.262 INFO    ] 200
[2026-06-13 14:56:20,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:20,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:20,297.297 INFO    ] No update needed
[2026-06-13 14:56:20,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 14:56:20,320.320 INFO    ] 200
[2026-06-13 14:56:20,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:20,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:56:20,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:20,397.397 INFO    ] No camera update needed
[2026-06-13 14:56:20,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:56:20,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:56:20,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:56:20,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:56:22,445.445 INFO    ] ================================================
[2026-06-13 14:56:22,461.461 INFO    ] Launching Daemon at Sat Jun 13 14:56:22 IST 2026
[2026-06-13 14:56:22,472.472 INFO    ] ================================================
[2026-06-13 14:56:22,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:56:22
[2026-06-13 14:56:23,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:56:23,293.293 INFO    ] Initializing speech engine...
[2026-06-13 14:56:23,296.296 INFO    ] 2026-06-13 14:56:23
[2026-06-13 14:56:23,525.525 INFO    ] 2026-06-13 14:56:23
[2026-06-13 14:56:23,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:56:23,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:56:23,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:56:23,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:56:23,959.959 INFO    ] time= 13/06/2026 14:56:23
[2026-06-13 14:56:23,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:56:24,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:56:24,079.079 INFO    ] No existing commands found in stream
[2026-06-13 14:56:29,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:56:29,093.093 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 14:56:30,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:56:30,890.890 INFO    ] Checking for system updates...
[2026-06-13 14:56:30,914.914 INFO    ] 200
[2026-06-13 14:56:30,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:30,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:56:30,956.956 INFO    ] No update needed
[2026-06-13 14:56:30,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 14:56:30,980.980 INFO    ] 200
[2026-06-13 14:56:30,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:31,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:56:31,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:56:31,055.055 INFO    ] No camera update needed
[2026-06-13 14:56:31,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:56:31,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:56:31,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:56:31,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:56:33,096.096 INFO    ] ================================================
[2026-06-13 14:56:33,111.111 INFO    ] Launching Daemon at Sat Jun 13 14:56:33 IST 2026
[2026-06-13 14:56:33,122.122 INFO    ] ================================================
[2026-06-13 14:56:33,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:56:33
[2026-06-13 14:56:33,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:56:33,941.941 INFO    ] Initializing speech engine...
[2026-06-13 14:56:33,946.946 INFO    ] 2026-06-13 14:56:33
[2026-06-13 14:56:34,151.151 INFO    ] 2026-06-13 14:56:34
[2026-06-13 14:56:34,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:56:34,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:56:34,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:56:34,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:56:34,556.556 INFO    ] time= 13/06/2026 14:56:34
[2026-06-13 14:56:34,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:56:34,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:56:34,672.672 INFO    ] No existing commands found in stream
[2026-06-13 14:56:39,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:56:39,685.685 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 14:56:42,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:56:42,901.901 INFO    ] Checking for system updates...
[2026-06-13 14:56:42,922.922 INFO    ] 200
[2026-06-13 14:56:42,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:42,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:42,956.956 INFO    ] No update needed
[2026-06-13 14:56:42,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 14:56:42,979.979 INFO    ] 200
[2026-06-13 14:56:42,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:43,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:56:43,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:43,049.049 INFO    ] No camera update needed
[2026-06-13 14:56:43,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:56:43,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:56:43,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:56:43,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:56:45,095.095 INFO    ] ================================================
[2026-06-13 14:56:45,110.110 INFO    ] Launching Daemon at Sat Jun 13 14:56:45 IST 2026
[2026-06-13 14:56:45,121.121 INFO    ] ================================================
[2026-06-13 14:56:45,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:56:45
[2026-06-13 14:56:45,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:56:45,952.952 INFO    ] Initializing speech engine...
[2026-06-13 14:56:45,958.958 INFO    ] 2026-06-13 14:56:45
[2026-06-13 14:56:46,169.169 INFO    ] 2026-06-13 14:56:46
[2026-06-13 14:56:46,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:56:46,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:56:46,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:56:46,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:56:46,581.581 INFO    ] time= 13/06/2026 14:56:46
[2026-06-13 14:56:46,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:56:46,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:56:46,693.693 INFO    ] No existing commands found in stream
[2026-06-13 14:56:51,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:56:51,707.707 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 14:56:53,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:56:53,562.562 INFO    ] Checking for system updates...
[2026-06-13 14:56:53,582.582 INFO    ] 200
[2026-06-13 14:56:53,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:53,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:53,616.616 INFO    ] No update needed
[2026-06-13 14:56:53,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 14:56:53,637.637 INFO    ] 200
[2026-06-13 14:56:53,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:56:53,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:56:53,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:56:53,702.702 INFO    ] No camera update needed
[2026-06-13 14:56:53,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:56:53,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:56:53,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:56:53,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:56:55,750.750 INFO    ] ================================================
[2026-06-13 14:56:55,765.765 INFO    ] Launching Daemon at Sat Jun 13 14:56:55 IST 2026
[2026-06-13 14:56:55,778.778 INFO    ] ================================================
[2026-06-13 14:56:56,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:56:56
[2026-06-13 14:56:56,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:56:56,552.552 INFO    ] Initializing speech engine...
[2026-06-13 14:56:56,558.558 INFO    ] 2026-06-13 14:56:56
[2026-06-13 14:56:56,786.786 INFO    ] 2026-06-13 14:56:56
[2026-06-13 14:56:56,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:56:56,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:56:56,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:56:57,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:56:57,147.147 INFO    ] time= 13/06/2026 14:56:57
[2026-06-13 14:56:57,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:56:57,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:56:57,317.317 INFO    ] No existing commands found in stream
[2026-06-13 14:57:02,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:02,331.331 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 14:57:05,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:57:05,192.192 INFO    ] Checking for system updates...
[2026-06-13 14:57:05,214.214 INFO    ] 200
[2026-06-13 14:57:05,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:05,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:05,247.247 INFO    ] No update needed
[2026-06-13 14:57:05,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:05,268.268 INFO    ] 200
[2026-06-13 14:57:05,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:05,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:05,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:05,335.335 INFO    ] No camera update needed
[2026-06-13 14:57:05,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:05,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:05,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:05,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:07,382.382 INFO    ] ================================================
[2026-06-13 14:57:07,398.398 INFO    ] Launching Daemon at Sat Jun 13 14:57:07 IST 2026
[2026-06-13 14:57:07,409.409 INFO    ] ================================================
[2026-06-13 14:57:07,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:07
[2026-06-13 14:57:08,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:08,224.224 INFO    ] Initializing speech engine...
[2026-06-13 14:57:08,236.236 INFO    ] 2026-06-13 14:57:08
[2026-06-13 14:57:08,442.442 INFO    ] 2026-06-13 14:57:08
[2026-06-13 14:57:08,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:08,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:08,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:08,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:08,853.853 INFO    ] time= 13/06/2026 14:57:08
[2026-06-13 14:57:08,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:08,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:08,957.957 INFO    ] No existing commands found in stream
[2026-06-13 14:57:13,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:13,970.970 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 14:57:14,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:57:14,426.426 INFO    ] Checking for system updates...
[2026-06-13 14:57:14,447.447 INFO    ] 200
[2026-06-13 14:57:14,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:14,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:14,480.480 INFO    ] No update needed
[2026-06-13 14:57:14,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:14,501.501 INFO    ] 200
[2026-06-13 14:57:14,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:14,526.526 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:14,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:14,552.552 INFO    ] No camera update needed
[2026-06-13 14:57:14,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:14,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:14,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:14,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:16,602.602 INFO    ] ================================================
[2026-06-13 14:57:16,618.618 INFO    ] Launching Daemon at Sat Jun 13 14:57:16 IST 2026
[2026-06-13 14:57:16,630.630 INFO    ] ================================================
[2026-06-13 14:57:16,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:16
[2026-06-13 14:57:17,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:17,412.412 INFO    ] Initializing speech engine...
[2026-06-13 14:57:17,416.416 INFO    ] 2026-06-13 14:57:17
[2026-06-13 14:57:17,646.646 INFO    ] 2026-06-13 14:57:17
[2026-06-13 14:57:17,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:17,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:17,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:18,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:18,072.072 INFO    ] time= 13/06/2026 14:57:18
[2026-06-13 14:57:18,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:18,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:18,205.205 INFO    ] No existing commands found in stream
[2026-06-13 14:57:23,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:23,218.218 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 14:57:24,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:57:24,037.037 INFO    ] Checking for system updates...
[2026-06-13 14:57:24,057.057 INFO    ] 200
[2026-06-13 14:57:24,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:24,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:24,091.091 INFO    ] No update needed
[2026-06-13 14:57:24,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:24,111.111 INFO    ] 200
[2026-06-13 14:57:24,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:24,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:24,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:24,174.174 INFO    ] No camera update needed
[2026-06-13 14:57:24,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:24,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:24,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:24,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:26,221.221 INFO    ] ================================================
[2026-06-13 14:57:26,236.236 INFO    ] Launching Daemon at Sat Jun 13 14:57:26 IST 2026
[2026-06-13 14:57:26,246.246 INFO    ] ================================================
[2026-06-13 14:57:26,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:26
[2026-06-13 14:57:26,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:27,073.073 INFO    ] Initializing speech engine...
[2026-06-13 14:57:27,077.077 INFO    ] 2026-06-13 14:57:27
[2026-06-13 14:57:27,293.293 INFO    ] 2026-06-13 14:57:27
[2026-06-13 14:57:27,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:27,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:27,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:27,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:27,662.662 INFO    ] time= 13/06/2026 14:57:27
[2026-06-13 14:57:27,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:27,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:27,780.780 INFO    ] No existing commands found in stream
[2026-06-13 14:57:32,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:32,807.807 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 14:57:34,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:57:34,372.372 INFO    ] Checking for system updates...
[2026-06-13 14:57:34,392.392 INFO    ] 200
[2026-06-13 14:57:34,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:34,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:34,427.427 INFO    ] No update needed
[2026-06-13 14:57:34,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:34,449.449 INFO    ] 200
[2026-06-13 14:57:34,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:34,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:34,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:34,519.519 INFO    ] No camera update needed
[2026-06-13 14:57:34,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:34,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:34,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:34,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:36,567.567 INFO    ] ================================================
[2026-06-13 14:57:36,583.583 INFO    ] Launching Daemon at Sat Jun 13 14:57:36 IST 2026
[2026-06-13 14:57:36,594.594 INFO    ] ================================================
[2026-06-13 14:57:36,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:36
[2026-06-13 14:57:37,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:37,377.377 INFO    ] Initializing speech engine...
[2026-06-13 14:57:37,382.382 INFO    ] 2026-06-13 14:57:37
[2026-06-13 14:57:37,592.592 INFO    ] 2026-06-13 14:57:37
[2026-06-13 14:57:37,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:37,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:37,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:37,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:37,995.995 INFO    ] time= 13/06/2026 14:57:37
[2026-06-13 14:57:38,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:38,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:38,119.119 INFO    ] No existing commands found in stream
[2026-06-13 14:57:43,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:43,133.133 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 14:57:43,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:57:43,683.683 INFO    ] Checking for system updates...
[2026-06-13 14:57:43,704.704 INFO    ] 200
[2026-06-13 14:57:43,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:43,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:57:43,737.737 INFO    ] No update needed
[2026-06-13 14:57:43,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:43,758.758 INFO    ] 200
[2026-06-13 14:57:43,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:43,785.785 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:43,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:57:43,831.831 INFO    ] No camera update needed
[2026-06-13 14:57:43,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:43,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:43,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:43,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:45,879.879 INFO    ] ================================================
[2026-06-13 14:57:45,894.894 INFO    ] Launching Daemon at Sat Jun 13 14:57:45 IST 2026
[2026-06-13 14:57:45,907.907 INFO    ] ================================================
[2026-06-13 14:57:46,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:46
[2026-06-13 14:57:47,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:47,320.320 INFO    ] Initializing speech engine...
[2026-06-13 14:57:47,333.333 INFO    ] 2026-06-13 14:57:47
[2026-06-13 14:57:47,596.596 INFO    ] 2026-06-13 14:57:47
[2026-06-13 14:57:47,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:47,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:47,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:47,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:47,871.871 INFO    ] time= 13/06/2026 14:57:47
[2026-06-13 14:57:47,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:47,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:48,008.008 INFO    ] No existing commands found in stream
[2026-06-13 14:57:53,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:57:53,040.040 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 14:57:54,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:57:54,058.058 INFO    ] Checking for system updates...
[2026-06-13 14:57:54,079.079 INFO    ] 200
[2026-06-13 14:57:54,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:54,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:54,111.111 INFO    ] No update needed
[2026-06-13 14:57:54,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 14:57:54,134.134 INFO    ] 200
[2026-06-13 14:57:54,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:57:54,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:57:54,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:57:54,202.202 INFO    ] No camera update needed
[2026-06-13 14:57:54,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:57:54,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:57:54,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:57:54,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:57:56,249.249 INFO    ] ================================================
[2026-06-13 14:57:56,265.265 INFO    ] Launching Daemon at Sat Jun 13 14:57:56 IST 2026
[2026-06-13 14:57:56,278.278 INFO    ] ================================================
[2026-06-13 14:57:56,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:57:56
[2026-06-13 14:57:56,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:57:57,077.077 INFO    ] Initializing speech engine...
[2026-06-13 14:57:57,085.085 INFO    ] 2026-06-13 14:57:57
[2026-06-13 14:57:57,306.306 INFO    ] 2026-06-13 14:57:57
[2026-06-13 14:57:57,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:57:57,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:57:57,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:57:57,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:57:57,721.721 INFO    ] time= 13/06/2026 14:57:57
[2026-06-13 14:57:57,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:57:57,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:57:57,863.863 INFO    ] No existing commands found in stream
[2026-06-13 14:58:02,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:02,874.874 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 14:58:04,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 14:58:04,499.499 INFO    ] Checking for system updates...
[2026-06-13 14:58:04,521.521 INFO    ] 200
[2026-06-13 14:58:04,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:04,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:58:04,555.555 INFO    ] No update needed
[2026-06-13 14:58:04,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:04,575.575 INFO    ] 200
[2026-06-13 14:58:04,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:04,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:04,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:58:04,647.647 INFO    ] No camera update needed
[2026-06-13 14:58:04,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:04,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:04,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:04,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:58:06,696.696 INFO    ] ================================================
[2026-06-13 14:58:06,711.711 INFO    ] Launching Daemon at Sat Jun 13 14:58:06 IST 2026
[2026-06-13 14:58:06,722.722 INFO    ] ================================================
[2026-06-13 14:58:07,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:58:07
[2026-06-13 14:58:07,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:58:07,506.506 INFO    ] Initializing speech engine...
[2026-06-13 14:58:07,519.519 INFO    ] 2026-06-13 14:58:07
[2026-06-13 14:58:07,739.739 INFO    ] 2026-06-13 14:58:07
[2026-06-13 14:58:07,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:58:07,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:58:07,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:58:07,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:58:07,989.989 INFO    ] time= 13/06/2026 14:58:07
[2026-06-13 14:58:08,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:58:08,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:58:08,080.080 INFO    ] No existing commands found in stream
[2026-06-13 14:58:13,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:13,111.111 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 14:58:15,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:58:15,025.025 INFO    ] Checking for system updates...
[2026-06-13 14:58:15,046.046 INFO    ] 200
[2026-06-13 14:58:15,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:15,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:15,080.080 INFO    ] No update needed
[2026-06-13 14:58:15,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:15,100.100 INFO    ] 200
[2026-06-13 14:58:15,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:15,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:15,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:15,168.168 INFO    ] No camera update needed
[2026-06-13 14:58:15,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:15,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:15,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:15,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:58:17,217.217 INFO    ] ================================================
[2026-06-13 14:58:17,232.232 INFO    ] Launching Daemon at Sat Jun 13 14:58:17 IST 2026
[2026-06-13 14:58:17,243.243 INFO    ] ================================================
[2026-06-13 14:58:17,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:58:17
[2026-06-13 14:58:17,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:58:18,117.117 INFO    ] Initializing speech engine...
[2026-06-13 14:58:18,128.128 INFO    ] 2026-06-13 14:58:18
[2026-06-13 14:58:18,418.418 INFO    ] 2026-06-13 14:58:18
[2026-06-13 14:58:18,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:58:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:58:18,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:58:18,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:58:18,802.802 INFO    ] time= 13/06/2026 14:58:18
[2026-06-13 14:58:18,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:58:18,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:58:18,928.928 INFO    ] No existing commands found in stream
[2026-06-13 14:58:23,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:23,942.942 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 14:58:26,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:58:26,151.151 INFO    ] Checking for system updates...
[2026-06-13 14:58:26,172.172 INFO    ] 200
[2026-06-13 14:58:26,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:26,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:26,205.205 INFO    ] No update needed
[2026-06-13 14:58:26,206.206 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:26,226.226 INFO    ] 200
[2026-06-13 14:58:26,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:26,250.250 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:26,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:26,289.289 INFO    ] No camera update needed
[2026-06-13 14:58:26,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:26,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:26,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:26,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:58:28,334.334 INFO    ] ================================================
[2026-06-13 14:58:28,350.350 INFO    ] Launching Daemon at Sat Jun 13 14:58:28 IST 2026
[2026-06-13 14:58:28,361.361 INFO    ] ================================================
[2026-06-13 14:58:28,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:58:28
[2026-06-13 14:58:29,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:58:29,252.252 INFO    ] Initializing speech engine...
[2026-06-13 14:58:29,259.259 INFO    ] 2026-06-13 14:58:29
[2026-06-13 14:58:29,516.516 INFO    ] 2026-06-13 14:58:29
[2026-06-13 14:58:29,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:58:29,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:58:29,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:58:29,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:58:29,875.875 INFO    ] time= 13/06/2026 14:58:29
[2026-06-13 14:58:29,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:58:29,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:58:29,969.969 INFO    ] No existing commands found in stream
[2026-06-13 14:58:34,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:34,984.984 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 14:58:38,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 14:58:38,847.847 INFO    ] Checking for system updates...
[2026-06-13 14:58:38,868.868 INFO    ] 200
[2026-06-13 14:58:38,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:38,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:38,901.901 INFO    ] No update needed
[2026-06-13 14:58:38,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:38,923.923 INFO    ] 200
[2026-06-13 14:58:38,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:38,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:38,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:38,988.988 INFO    ] No camera update needed
[2026-06-13 14:58:38,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:38,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:38,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:38,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:58:41,035.035 INFO    ] ================================================
[2026-06-13 14:58:41,050.050 INFO    ] Launching Daemon at Sat Jun 13 14:58:41 IST 2026
[2026-06-13 14:58:41,061.061 INFO    ] ================================================
[2026-06-13 14:58:41,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:58:41
[2026-06-13 14:58:41,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:58:41,850.850 INFO    ] Initializing speech engine...
[2026-06-13 14:58:41,857.857 INFO    ] 2026-06-13 14:58:41
[2026-06-13 14:58:42,069.069 INFO    ] 2026-06-13 14:58:42
[2026-06-13 14:58:42,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:58:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:58:42,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:58:42,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:58:42,485.485 INFO    ] time= 13/06/2026 14:58:42
[2026-06-13 14:58:42,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:58:42,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:58:42,583.583 INFO    ] No existing commands found in stream
[2026-06-13 14:58:47,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:47,595.595 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 14:58:48,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:58:48,794.794 INFO    ] Checking for system updates...
[2026-06-13 14:58:48,815.815 INFO    ] 200
[2026-06-13 14:58:48,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:48,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:58:48,852.852 INFO    ] No update needed
[2026-06-13 14:58:48,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:48,875.875 INFO    ] 200
[2026-06-13 14:58:48,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:48,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:48,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:58:48,950.950 INFO    ] No camera update needed
[2026-06-13 14:58:48,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:48,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:48,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:48,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:58:51,999.999 INFO    ] ================================================
[2026-06-13 14:58:51,015.015 INFO    ] Launching Daemon at Sat Jun 13 14:58:51 IST 2026
[2026-06-13 14:58:51,025.025 INFO    ] ================================================
[2026-06-13 14:58:51,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:58:51
[2026-06-13 14:58:51,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:58:52,130.130 INFO    ] Initializing speech engine...
[2026-06-13 14:58:52,136.136 INFO    ] 2026-06-13 14:58:52
[2026-06-13 14:58:52,393.393 INFO    ] 2026-06-13 14:58:52
[2026-06-13 14:58:52,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:58:52,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:58:52,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:58:52,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:58:52,829.829 INFO    ] time= 13/06/2026 14:58:52
[2026-06-13 14:58:52,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:58:52,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:58:53,067.067 INFO    ] No existing commands found in stream
[2026-06-13 14:58:58,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:58:58,097.097 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 14:58:59,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 14:58:59,689.689 INFO    ] Checking for system updates...
[2026-06-13 14:58:59,711.711 INFO    ] 200
[2026-06-13 14:58:59,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:59,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:59,745.745 INFO    ] No update needed
[2026-06-13 14:58:59,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 14:58:59,766.766 INFO    ] 200
[2026-06-13 14:58:59,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:58:59,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:58:59,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:58:59,820.820 INFO    ] No camera update needed
[2026-06-13 14:58:59,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:58:59,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:58:59,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:58:59,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:01,859.859 INFO    ] ================================================
[2026-06-13 14:59:01,869.869 INFO    ] Launching Daemon at Sat Jun 13 14:59:01 IST 2026
[2026-06-13 14:59:01,875.875 INFO    ] ================================================
[2026-06-13 14:59:02,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:02
[2026-06-13 14:59:02,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:02,642.642 INFO    ] Initializing speech engine...
[2026-06-13 14:59:02,646.646 INFO    ] 2026-06-13 14:59:02
[2026-06-13 14:59:02,875.875 INFO    ] 2026-06-13 14:59:02
[2026-06-13 14:59:02,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:03,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:03,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:03,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:03,174.174 INFO    ] time= 13/06/2026 14:59:03
[2026-06-13 14:59:03,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:03,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:03,363.363 INFO    ] No existing commands found in stream
[2026-06-13 14:59:08,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:08,377.377 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 14:59:10,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 14:59:10,670.670 INFO    ] Checking for system updates...
[2026-06-13 14:59:10,691.691 INFO    ] 200
[2026-06-13 14:59:10,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:10,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:59:10,726.726 INFO    ] No update needed
[2026-06-13 14:59:10,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 14:59:10,747.747 INFO    ] 200
[2026-06-13 14:59:10,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:10,772.772 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:59:10,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:59:10,811.811 INFO    ] No camera update needed
[2026-06-13 14:59:10,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:59:10,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:59:10,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:59:10,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:12,857.857 INFO    ] ================================================
[2026-06-13 14:59:12,873.873 INFO    ] Launching Daemon at Sat Jun 13 14:59:12 IST 2026
[2026-06-13 14:59:12,884.884 INFO    ] ================================================
[2026-06-13 14:59:13,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:13
[2026-06-13 14:59:13,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:13,675.675 INFO    ] Initializing speech engine...
[2026-06-13 14:59:13,680.680 INFO    ] 2026-06-13 14:59:13
[2026-06-13 14:59:13,885.885 INFO    ] 2026-06-13 14:59:13
[2026-06-13 14:59:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:14,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:14,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:14,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:14,351.351 INFO    ] time= 13/06/2026 14:59:14
[2026-06-13 14:59:14,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:14,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:14,575.575 INFO    ] No existing commands found in stream
[2026-06-13 14:59:19,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:19,587.587 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 14:59:20,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:59:20,062.062 INFO    ] Checking for system updates...
[2026-06-13 14:59:20,085.085 INFO    ] 200
[2026-06-13 14:59:20,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:20,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:20,120.120 INFO    ] No update needed
[2026-06-13 14:59:20,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 14:59:20,142.142 INFO    ] 200
[2026-06-13 14:59:20,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:20,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:59:20,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:20,214.214 INFO    ] No camera update needed
[2026-06-13 14:59:20,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:59:20,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:59:20,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:59:20,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:22,263.263 INFO    ] ================================================
[2026-06-13 14:59:22,279.279 INFO    ] Launching Daemon at Sat Jun 13 14:59:22 IST 2026
[2026-06-13 14:59:22,290.290 INFO    ] ================================================
[2026-06-13 14:59:22,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:22
[2026-06-13 14:59:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:23,125.125 INFO    ] Initializing speech engine...
[2026-06-13 14:59:23,131.131 INFO    ] 2026-06-13 14:59:23
[2026-06-13 14:59:23,341.341 INFO    ] 2026-06-13 14:59:23
[2026-06-13 14:59:23,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:23,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:23,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:23,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:23,746.746 INFO    ] time= 13/06/2026 14:59:23
[2026-06-13 14:59:23,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:23,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:23,863.863 INFO    ] No existing commands found in stream
[2026-06-13 14:59:28,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:28,877.877 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 14:59:31,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:59:31,301.301 INFO    ] Checking for system updates...
[2026-06-13 14:59:31,325.325 INFO    ] 200
[2026-06-13 14:59:31,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:31,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:31,364.364 INFO    ] No update needed
[2026-06-13 14:59:31,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 14:59:31,388.388 INFO    ] 200
[2026-06-13 14:59:31,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:31,424.424 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:59:31,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:31,466.466 INFO    ] No camera update needed
[2026-06-13 14:59:31,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:59:31,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:59:31,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:59:31,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:33,516.516 INFO    ] ================================================
[2026-06-13 14:59:33,532.532 INFO    ] Launching Daemon at Sat Jun 13 14:59:33 IST 2026
[2026-06-13 14:59:33,543.543 INFO    ] ================================================
[2026-06-13 14:59:33,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:33
[2026-06-13 14:59:34,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:34,338.338 INFO    ] Initializing speech engine...
[2026-06-13 14:59:34,346.346 INFO    ] 2026-06-13 14:59:34
[2026-06-13 14:59:34,558.558 INFO    ] 2026-06-13 14:59:34
[2026-06-13 14:59:34,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:34,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:34,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:34,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:34,961.961 INFO    ] time= 13/06/2026 14:59:34
[2026-06-13 14:59:34,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:34,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:35,069.069 INFO    ] No existing commands found in stream
[2026-06-13 14:59:40,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:40,082.082 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 14:59:41,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 14:59:42,001.001 INFO    ] Checking for system updates...
[2026-06-13 14:59:42,022.022 INFO    ] 200
[2026-06-13 14:59:42,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:42,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:42,056.056 INFO    ] No update needed
[2026-06-13 14:59:42,057.057 INFO    ] Checking for camera pi updates...
[2026-06-13 14:59:42,079.079 INFO    ] 200
[2026-06-13 14:59:42,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:42,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:59:42,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:42,145.145 INFO    ] No camera update needed
[2026-06-13 14:59:42,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:59:42,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:59:42,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:59:42,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:44,193.193 INFO    ] ================================================
[2026-06-13 14:59:44,209.209 INFO    ] Launching Daemon at Sat Jun 13 14:59:44 IST 2026
[2026-06-13 14:59:44,220.220 INFO    ] ================================================
[2026-06-13 14:59:44,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:44
[2026-06-13 14:59:44,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:45,072.072 INFO    ] Initializing speech engine...
[2026-06-13 14:59:45,077.077 INFO    ] 2026-06-13 14:59:45
[2026-06-13 14:59:45,286.286 INFO    ] 2026-06-13 14:59:45
[2026-06-13 14:59:45,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:45,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:45,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:45,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:45,696.696 INFO    ] time= 13/06/2026 14:59:45
[2026-06-13 14:59:45,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:45,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:45,809.809 INFO    ] No existing commands found in stream
[2026-06-13 14:59:50,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:50,832.832 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 14:59:51,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 14:59:51,164.164 INFO    ] Checking for system updates...
[2026-06-13 14:59:51,185.185 INFO    ] 200
[2026-06-13 14:59:51,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:51,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 14:59:51,219.219 INFO    ] No update needed
[2026-06-13 14:59:51,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 14:59:51,240.240 INFO    ] 200
[2026-06-13 14:59:51,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 14:59:51,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 14:59:51,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 14:59:51,292.292 INFO    ] No camera update needed
[2026-06-13 14:59:51,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 14:59:51,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 14:59:51,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 14:59:51,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 14:59:53,341.341 INFO    ] ================================================
[2026-06-13 14:59:53,357.357 INFO    ] Launching Daemon at Sat Jun 13 14:59:53 IST 2026
[2026-06-13 14:59:53,368.368 INFO    ] ================================================
[2026-06-13 14:59:53,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 14:59:53
[2026-06-13 14:59:54,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 14:59:54,216.216 INFO    ] Initializing speech engine...
[2026-06-13 14:59:54,222.222 INFO    ] 2026-06-13 14:59:54
[2026-06-13 14:59:54,431.431 INFO    ] 2026-06-13 14:59:54
[2026-06-13 14:59:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 14:59:54,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 14:59:54,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 14:59:54,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 14:59:54,841.841 INFO    ] time= 13/06/2026 14:59:54
[2026-06-13 14:59:54,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 14:59:54,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-13 14:59:54,952.952 INFO    ] No existing commands found in stream
[2026-06-13 14:59:59,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 14:59:59,969.969 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 15:00:02,391.391 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 15:00:02,467.467 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d580b0>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-06-13 15:00:02,511.511 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d580b0>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-06-13 15:00:02,534.534 INFO    ] None
[2026-06-13 15:00:02,555.555 INFO    ] Checking for system updates...
[2026-06-13 15:00:02,760.760 INFO    ] 200
[2026-06-13 15:00:02,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:03,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:03,051.051 INFO    ] No update needed
[2026-06-13 15:00:03,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:03,279.279 INFO    ] 200
[2026-06-13 15:00:03,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:03,500.500 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:03,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:03,735.735 INFO    ] No camera update needed
[2026-06-13 15:00:03,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:03,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:03,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:03,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:00:05,878.878 INFO    ] ================================================
[2026-06-13 15:00:05,894.894 INFO    ] Launching Daemon at Sat Jun 13 15:00:05 IST 2026
[2026-06-13 15:00:05,906.906 INFO    ] ================================================
[2026-06-13 15:00:06,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:00:06
[2026-06-13 15:00:07,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:00:07,366.366 INFO    ] Initializing speech engine...
[2026-06-13 15:00:07,372.372 INFO    ] 2026-06-13 15:00:07
[2026-06-13 15:00:07,663.663 INFO    ] 2026-06-13 15:00:07
[2026-06-13 15:00:07,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:00:07,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:00:07,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:00:08,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:00:08,035.035 INFO    ] time= 13/06/2026 15:00:08
[2026-06-13 15:00:08,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:00:08,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:00:08,174.174 INFO    ] No existing commands found in stream
[2026-06-13 15:00:13,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:00:13,210.210 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 15:00:15,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:00:15,723.723 INFO    ] Checking for system updates...
[2026-06-13 15:00:15,755.755 INFO    ] 200
[2026-06-13 15:00:15,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:15,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:00:15,815.815 INFO    ] No update needed
[2026-06-13 15:00:15,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:15,851.851 INFO    ] 200
[2026-06-13 15:00:15,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:15,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:15,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:00:15,938.938 INFO    ] No camera update needed
[2026-06-13 15:00:15,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:15,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:15,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:15,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:00:18,995.995 INFO    ] ================================================
[2026-06-13 15:00:18,011.011 INFO    ] Launching Daemon at Sat Jun 13 15:00:18 IST 2026
[2026-06-13 15:00:18,022.022 INFO    ] ================================================
[2026-06-13 15:00:18,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:00:18
[2026-06-13 15:00:19,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:00:19,164.164 INFO    ] Initializing speech engine...
[2026-06-13 15:00:19,172.172 INFO    ] 2026-06-13 15:00:19
[2026-06-13 15:00:19,398.398 INFO    ] 2026-06-13 15:00:19
[2026-06-13 15:00:19,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:00:19,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:00:19,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:00:19,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:00:19,817.817 INFO    ] time= 13/06/2026 15:00:19
[2026-06-13 15:00:19,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:00:19,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:00:19,962.962 INFO    ] No existing commands found in stream
[2026-06-13 15:00:24,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:00:24,976.976 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 15:00:25,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:00:25,502.502 INFO    ] Checking for system updates...
[2026-06-13 15:00:25,524.524 INFO    ] 200
[2026-06-13 15:00:25,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:25,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:00:25,560.560 INFO    ] No update needed
[2026-06-13 15:00:25,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:25,581.581 INFO    ] 200
[2026-06-13 15:00:25,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:25,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:25,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:00:25,635.635 INFO    ] No camera update needed
[2026-06-13 15:00:25,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:25,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:25,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:25,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:00:27,684.684 INFO    ] ================================================
[2026-06-13 15:00:27,700.700 INFO    ] Launching Daemon at Sat Jun 13 15:00:27 IST 2026
[2026-06-13 15:00:27,711.711 INFO    ] ================================================
[2026-06-13 15:00:28,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:00:28
[2026-06-13 15:00:28,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:00:28,504.504 INFO    ] Initializing speech engine...
[2026-06-13 15:00:28,509.509 INFO    ] 2026-06-13 15:00:28
[2026-06-13 15:00:28,712.712 INFO    ] 2026-06-13 15:00:28
[2026-06-13 15:00:28,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:00:28,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:00:28,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:00:29,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:00:29,115.115 INFO    ] time= 13/06/2026 15:00:29
[2026-06-13 15:00:29,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:00:29,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:00:29,224.224 INFO    ] No existing commands found in stream
[2026-06-13 15:00:34,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:00:34,237.237 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 15:00:36,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:00:36,746.746 INFO    ] Checking for system updates...
[2026-06-13 15:00:36,767.767 INFO    ] 200
[2026-06-13 15:00:36,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:36,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:36,800.800 INFO    ] No update needed
[2026-06-13 15:00:36,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:36,821.821 INFO    ] 200
[2026-06-13 15:00:36,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:36,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:36,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:36,885.885 INFO    ] No camera update needed
[2026-06-13 15:00:36,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:36,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:36,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:36,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:00:38,940.940 INFO    ] ================================================
[2026-06-13 15:00:38,956.956 INFO    ] Launching Daemon at Sat Jun 13 15:00:38 IST 2026
[2026-06-13 15:00:38,968.968 INFO    ] ================================================
[2026-06-13 15:00:39,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:00:39
[2026-06-13 15:00:39,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:00:39,738.738 INFO    ] Initializing speech engine...
[2026-06-13 15:00:39,743.743 INFO    ] 2026-06-13 15:00:39
[2026-06-13 15:00:39,961.961 INFO    ] 2026-06-13 15:00:39
[2026-06-13 15:00:39,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:00:40,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:00:40,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:00:40,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:00:40,372.372 INFO    ] time= 13/06/2026 15:00:40
[2026-06-13 15:00:40,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:00:40,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:00:40,484.484 INFO    ] No existing commands found in stream
[2026-06-13 15:00:45,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:00:45,497.497 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 15:00:46,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:00:46,885.885 INFO    ] Checking for system updates...
[2026-06-13 15:00:46,907.907 INFO    ] 200
[2026-06-13 15:00:46,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:46,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:46,940.940 INFO    ] No update needed
[2026-06-13 15:00:46,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:46,961.961 INFO    ] 200
[2026-06-13 15:00:46,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:46,985.985 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:47,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:47,040.040 INFO    ] No camera update needed
[2026-06-13 15:00:47,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:47,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:47,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:47,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:00:49,088.088 INFO    ] ================================================
[2026-06-13 15:00:49,103.103 INFO    ] Launching Daemon at Sat Jun 13 15:00:49 IST 2026
[2026-06-13 15:00:49,114.114 INFO    ] ================================================
[2026-06-13 15:00:49,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:00:49
[2026-06-13 15:00:49,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:00:49,926.926 INFO    ] Initializing speech engine...
[2026-06-13 15:00:49,936.936 INFO    ] 2026-06-13 15:00:49
[2026-06-13 15:00:50,144.144 INFO    ] 2026-06-13 15:00:50
[2026-06-13 15:00:50,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:00:50,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:00:50,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:00:50,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:00:50,563.563 INFO    ] time= 13/06/2026 15:00:50
[2026-06-13 15:00:50,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:00:50,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:00:50,664.664 INFO    ] No existing commands found in stream
[2026-06-13 15:00:55,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:00:55,677.677 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 15:00:59,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:00:59,698.698 INFO    ] Checking for system updates...
[2026-06-13 15:00:59,721.721 INFO    ] 200
[2026-06-13 15:00:59,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:59,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:59,754.754 INFO    ] No update needed
[2026-06-13 15:00:59,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 15:00:59,774.774 INFO    ] 200
[2026-06-13 15:00:59,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:00:59,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:00:59,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:00:59,839.839 INFO    ] No camera update needed
[2026-06-13 15:00:59,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:00:59,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:00:59,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:00:59,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:01,894.894 INFO    ] ================================================
[2026-06-13 15:01:01,912.912 INFO    ] Launching Daemon at Sat Jun 13 15:01:01 IST 2026
[2026-06-13 15:01:01,931.931 INFO    ] ================================================
[2026-06-13 15:01:02,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:02
[2026-06-13 15:01:02,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:01:02,856.856 INFO    ] Initializing speech engine...
[2026-06-13 15:01:02,862.862 INFO    ] 2026-06-13 15:01:02
[2026-06-13 15:01:03,073.073 INFO    ] 2026-06-13 15:01:03
[2026-06-13 15:01:03,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:01:03,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:01:03,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:01:03,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:01:03,411.411 INFO    ] time= 13/06/2026 15:01:03
[2026-06-13 15:01:03,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:01:03,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:01:03,601.601 INFO    ] No existing commands found in stream
[2026-06-13 15:01:08,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:01:08,615.615 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 15:01:11,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:01:11,228.228 INFO    ] Checking for system updates...
[2026-06-13 15:01:11,249.249 INFO    ] 200
[2026-06-13 15:01:11,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:11,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:11,283.283 INFO    ] No update needed
[2026-06-13 15:01:11,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 15:01:11,304.304 INFO    ] 200
[2026-06-13 15:01:11,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:11,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:01:11,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:11,377.377 INFO    ] No camera update needed
[2026-06-13 15:01:11,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:01:11,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:01:11,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:01:11,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:13,426.426 INFO    ] ================================================
[2026-06-13 15:01:13,441.441 INFO    ] Launching Daemon at Sat Jun 13 15:01:13 IST 2026
[2026-06-13 15:01:13,451.451 INFO    ] ================================================
[2026-06-13 15:01:13,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:13
[2026-06-13 15:01:14,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:01:14,270.270 INFO    ] Initializing speech engine...
[2026-06-13 15:01:14,276.276 INFO    ] 2026-06-13 15:01:14
[2026-06-13 15:01:14,480.480 INFO    ] 2026-06-13 15:01:14
[2026-06-13 15:01:14,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:01:14,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:01:14,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:01:14,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:01:14,879.879 INFO    ] time= 13/06/2026 15:01:14
[2026-06-13 15:01:14,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:01:14,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:01:14,995.995 INFO    ] No existing commands found in stream
[2026-06-13 15:01:20,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:01:20,007.007 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 15:01:24,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:01:24,322.322 INFO    ] Checking for system updates...
[2026-06-13 15:01:24,345.345 INFO    ] 200
[2026-06-13 15:01:24,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:24,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:24,378.378 INFO    ] No update needed
[2026-06-13 15:01:24,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 15:01:24,399.399 INFO    ] 200
[2026-06-13 15:01:24,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:24,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:01:24,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:24,468.468 INFO    ] No camera update needed
[2026-06-13 15:01:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:01:24,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:01:24,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:01:24,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:26,517.517 INFO    ] ================================================
[2026-06-13 15:01:26,532.532 INFO    ] Launching Daemon at Sat Jun 13 15:01:26 IST 2026
[2026-06-13 15:01:26,542.542 INFO    ] ================================================
[2026-06-13 15:01:26,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:26
[2026-06-13 15:01:27,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:01:27,357.357 INFO    ] Initializing speech engine...
[2026-06-13 15:01:27,362.362 INFO    ] 2026-06-13 15:01:27
[2026-06-13 15:01:27,581.581 INFO    ] 2026-06-13 15:01:27
[2026-06-13 15:01:27,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:01:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:01:27,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:01:27,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:01:27,970.970 INFO    ] time= 13/06/2026 15:01:27
[2026-06-13 15:01:28,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:01:28,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:01:28,102.102 INFO    ] No existing commands found in stream
[2026-06-13 15:01:33,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:01:33,114.114 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 15:01:34,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:01:34,198.198 INFO    ] Checking for system updates...
[2026-06-13 15:01:34,218.218 INFO    ] 200
[2026-06-13 15:01:34,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:34,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:34,252.252 INFO    ] No update needed
[2026-06-13 15:01:34,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 15:01:34,272.272 INFO    ] 200
[2026-06-13 15:01:34,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:34,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:01:34,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:34,332.332 INFO    ] No camera update needed
[2026-06-13 15:01:34,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:01:34,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:01:34,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:01:34,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:36,380.380 INFO    ] ================================================
[2026-06-13 15:01:36,394.394 INFO    ] Launching Daemon at Sat Jun 13 15:01:36 IST 2026
[2026-06-13 15:01:36,405.405 INFO    ] ================================================
[2026-06-13 15:01:37,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:37
[2026-06-13 15:01:37,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:01:37,674.674 INFO    ] Initializing speech engine...
[2026-06-13 15:01:37,684.684 INFO    ] 2026-06-13 15:01:37
[2026-06-13 15:01:37,890.890 INFO    ] 2026-06-13 15:01:37
[2026-06-13 15:01:37,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:01:38,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:01:38,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:01:38,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:01:38,297.297 INFO    ] time= 13/06/2026 15:01:38
[2026-06-13 15:01:38,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:01:38,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:01:38,409.409 INFO    ] No existing commands found in stream
[2026-06-13 15:01:43,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:01:43,421.421 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 15:01:47,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:01:47,400.400 INFO    ] Checking for system updates...
[2026-06-13 15:01:47,442.442 INFO    ] 200
[2026-06-13 15:01:47,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:47,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:47,491.491 INFO    ] No update needed
[2026-06-13 15:01:47,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 15:01:47,528.528 INFO    ] 200
[2026-06-13 15:01:47,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:47,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:01:47,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:47,594.594 INFO    ] No camera update needed
[2026-06-13 15:01:47,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:01:47,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:01:47,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:01:47,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:49,641.641 INFO    ] ================================================
[2026-06-13 15:01:49,656.656 INFO    ] Launching Daemon at Sat Jun 13 15:01:49 IST 2026
[2026-06-13 15:01:49,666.666 INFO    ] ================================================
[2026-06-13 15:01:50,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:50
[2026-06-13 15:01:50,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:01:50,486.486 INFO    ] Initializing speech engine...
[2026-06-13 15:01:50,490.490 INFO    ] 2026-06-13 15:01:50
[2026-06-13 15:01:50,714.714 INFO    ] 2026-06-13 15:01:50
[2026-06-13 15:01:50,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:01:50,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:01:50,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:01:51,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:01:51,138.138 INFO    ] time= 13/06/2026 15:01:51
[2026-06-13 15:01:51,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:01:51,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:01:51,276.276 INFO    ] No existing commands found in stream
[2026-06-13 15:01:56,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:01:56,290.290 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 15:01:56,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:01:56,800.800 INFO    ] Checking for system updates...
[2026-06-13 15:01:56,840.840 INFO    ] 200
[2026-06-13 15:01:56,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:56,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:01:56,902.902 INFO    ] No update needed
[2026-06-13 15:01:56,904.904 INFO    ] Checking for camera pi updates...
[2026-06-13 15:01:56,939.939 INFO    ] 200
[2026-06-13 15:01:56,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:01:56,985.985 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:01:57,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:01:57,028.028 INFO    ] No camera update needed
[2026-06-13 15:01:57,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:01:57,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:01:57,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:01:57,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:01:59,084.084 INFO    ] ================================================
[2026-06-13 15:01:59,099.099 INFO    ] Launching Daemon at Sat Jun 13 15:01:59 IST 2026
[2026-06-13 15:01:59,110.110 INFO    ] ================================================
[2026-06-13 15:01:59,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:01:59
[2026-06-13 15:02:00,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:00,226.226 INFO    ] Initializing speech engine...
[2026-06-13 15:02:00,238.238 INFO    ] 2026-06-13 15:02:00
[2026-06-13 15:02:00,445.445 INFO    ] 2026-06-13 15:02:00
[2026-06-13 15:02:00,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:00,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:00,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:00,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:00,857.857 INFO    ] time= 13/06/2026 15:02:00
[2026-06-13 15:02:00,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:00,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:00,955.955 INFO    ] No existing commands found in stream
[2026-06-13 15:02:05,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:05,966.966 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 15:02:08,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:02:08,750.750 INFO    ] Checking for system updates...
[2026-06-13 15:02:08,771.771 INFO    ] 200
[2026-06-13 15:02:08,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:08,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:08,805.805 INFO    ] No update needed
[2026-06-13 15:02:08,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 15:02:08,829.829 INFO    ] 200
[2026-06-13 15:02:08,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:08,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:02:08,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:08,999.999 INFO    ] No camera update needed
[2026-06-13 15:02:09,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:02:09,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:02:09,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:02:09,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:02:11,048.048 INFO    ] ================================================
[2026-06-13 15:02:11,063.063 INFO    ] Launching Daemon at Sat Jun 13 15:02:11 IST 2026
[2026-06-13 15:02:11,074.074 INFO    ] ================================================
[2026-06-13 15:02:11,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:02:11
[2026-06-13 15:02:11,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:11,878.878 INFO    ] Initializing speech engine...
[2026-06-13 15:02:11,891.891 INFO    ] 2026-06-13 15:02:11
[2026-06-13 15:02:12,108.108 INFO    ] 2026-06-13 15:02:12
[2026-06-13 15:02:12,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:12,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:12,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:12,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:12,536.536 INFO    ] time= 13/06/2026 15:02:12
[2026-06-13 15:02:12,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:12,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:12,664.664 INFO    ] No existing commands found in stream
[2026-06-13 15:02:17,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:17,676.676 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 15:02:18,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:02:18,460.460 INFO    ] Checking for system updates...
[2026-06-13 15:02:18,481.481 INFO    ] 200
[2026-06-13 15:02:18,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:18,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:18,514.514 INFO    ] No update needed
[2026-06-13 15:02:18,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 15:02:18,534.534 INFO    ] 200
[2026-06-13 15:02:18,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:18,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:02:18,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:18,600.600 INFO    ] No camera update needed
[2026-06-13 15:02:18,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:02:18,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:02:18,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:02:18,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:02:20,647.647 INFO    ] ================================================
[2026-06-13 15:02:20,662.662 INFO    ] Launching Daemon at Sat Jun 13 15:02:20 IST 2026
[2026-06-13 15:02:20,673.673 INFO    ] ================================================
[2026-06-13 15:02:21,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:02:21
[2026-06-13 15:02:21,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:21,488.488 INFO    ] Initializing speech engine...
[2026-06-13 15:02:21,497.497 INFO    ] 2026-06-13 15:02:21
[2026-06-13 15:02:21,702.702 INFO    ] 2026-06-13 15:02:21
[2026-06-13 15:02:21,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:21,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:21,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:22,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:22,113.113 INFO    ] time= 13/06/2026 15:02:22
[2026-06-13 15:02:22,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:22,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:22,221.221 INFO    ] No existing commands found in stream
[2026-06-13 15:02:27,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:27,234.234 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 15:02:29,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:02:29,041.041 INFO    ] Checking for system updates...
[2026-06-13 15:02:29,061.061 INFO    ] 200
[2026-06-13 15:02:29,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:29,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:02:29,096.096 INFO    ] No update needed
[2026-06-13 15:02:29,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 15:02:29,118.118 INFO    ] 200
[2026-06-13 15:02:29,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:29,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:02:29,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:29,186.186 INFO    ] No camera update needed
[2026-06-13 15:02:29,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:02:29,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:02:29,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:02:29,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:02:31,234.234 INFO    ] ================================================
[2026-06-13 15:02:31,249.249 INFO    ] Launching Daemon at Sat Jun 13 15:02:31 IST 2026
[2026-06-13 15:02:31,260.260 INFO    ] ================================================
[2026-06-13 15:02:31,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:02:31
[2026-06-13 15:02:31,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:32,084.084 INFO    ] Initializing speech engine...
[2026-06-13 15:02:32,090.090 INFO    ] 2026-06-13 15:02:32
[2026-06-13 15:02:32,311.311 INFO    ] 2026-06-13 15:02:32
[2026-06-13 15:02:32,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:32,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:32,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:32,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:32,734.734 INFO    ] time= 13/06/2026 15:02:32
[2026-06-13 15:02:32,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:32,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:32,877.877 INFO    ] No existing commands found in stream
[2026-06-13 15:02:37,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:37,889.889 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 15:02:40,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:02:40,154.154 INFO    ] Checking for system updates...
[2026-06-13 15:02:40,175.175 INFO    ] 200
[2026-06-13 15:02:40,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:40,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:02:40,208.208 INFO    ] No update needed
[2026-06-13 15:02:40,209.209 INFO    ] Checking for camera pi updates...
[2026-06-13 15:02:40,231.231 INFO    ] 200
[2026-06-13 15:02:40,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:40,256.256 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:02:40,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:02:40,293.293 INFO    ] No camera update needed
[2026-06-13 15:02:40,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:02:40,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:02:40,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:02:40,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:02:42,339.339 INFO    ] ================================================
[2026-06-13 15:02:42,355.355 INFO    ] Launching Daemon at Sat Jun 13 15:02:42 IST 2026
[2026-06-13 15:02:42,365.365 INFO    ] ================================================
[2026-06-13 15:02:42,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:02:42
[2026-06-13 15:02:43,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:43,154.154 INFO    ] Initializing speech engine...
[2026-06-13 15:02:43,158.158 INFO    ] 2026-06-13 15:02:43
[2026-06-13 15:02:43,363.363 INFO    ] 2026-06-13 15:02:43
[2026-06-13 15:02:43,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:43,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:43,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:43,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:43,770.770 INFO    ] time= 13/06/2026 15:02:43
[2026-06-13 15:02:43,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:43,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:43,880.880 INFO    ] No existing commands found in stream
[2026-06-13 15:02:48,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:48,892.892 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 15:02:49,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:02:49,333.333 INFO    ] Checking for system updates...
[2026-06-13 15:02:49,354.354 INFO    ] 200
[2026-06-13 15:02:49,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:49,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:49,389.389 INFO    ] No update needed
[2026-06-13 15:02:49,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 15:02:49,410.410 INFO    ] 200
[2026-06-13 15:02:49,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:02:49,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:02:49,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:02:49,479.479 INFO    ] No camera update needed
[2026-06-13 15:02:49,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:02:49,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:02:49,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:02:49,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:02:51,519.519 INFO    ] ================================================
[2026-06-13 15:02:51,535.535 INFO    ] Launching Daemon at Sat Jun 13 15:02:51 IST 2026
[2026-06-13 15:02:51,546.546 INFO    ] ================================================
[2026-06-13 15:02:51,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:02:51
[2026-06-13 15:02:52,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:02:52,335.335 INFO    ] Initializing speech engine...
[2026-06-13 15:02:52,345.345 INFO    ] 2026-06-13 15:02:52
[2026-06-13 15:02:52,563.563 INFO    ] 2026-06-13 15:02:52
[2026-06-13 15:02:52,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:02:52,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:02:52,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:02:52,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:02:52,994.994 INFO    ] time= 13/06/2026 15:02:52
[2026-06-13 15:02:53,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:02:53,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:02:53,214.214 INFO    ] No existing commands found in stream
[2026-06-13 15:02:58,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:02:58,235.235 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 15:03:02,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:03:02,372.372 INFO    ] Checking for system updates...
[2026-06-13 15:03:02,395.395 INFO    ] 200
[2026-06-13 15:03:02,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:02,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:03:02,435.435 INFO    ] No update needed
[2026-06-13 15:03:02,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 15:03:02,455.455 INFO    ] 200
[2026-06-13 15:03:02,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:02,480.480 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:03:02,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:03:02,504.504 INFO    ] No camera update needed
[2026-06-13 15:03:02,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:03:02,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:03:02,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:03:02,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:03:04,556.556 INFO    ] ================================================
[2026-06-13 15:03:04,572.572 INFO    ] Launching Daemon at Sat Jun 13 15:03:04 IST 2026
[2026-06-13 15:03:04,582.582 INFO    ] ================================================
[2026-06-13 15:03:04,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:03:04
[2026-06-13 15:03:05,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:03:05,378.378 INFO    ] Initializing speech engine...
[2026-06-13 15:03:05,383.383 INFO    ] 2026-06-13 15:03:05
[2026-06-13 15:03:05,596.596 INFO    ] 2026-06-13 15:03:05
[2026-06-13 15:03:05,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:03:05,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:03:05,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:03:05,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:03:06,013.013 INFO    ] time= 13/06/2026 15:03:05
[2026-06-13 15:03:06,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:03:06,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:03:06,112.112 INFO    ] No existing commands found in stream
[2026-06-13 15:03:11,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:03:11,125.125 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 15:03:14,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:03:14,437.437 INFO    ] Checking for system updates...
[2026-06-13 15:03:14,458.458 INFO    ] 200
[2026-06-13 15:03:14,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:14,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:14,491.491 INFO    ] No update needed
[2026-06-13 15:03:14,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 15:03:14,512.512 INFO    ] 200
[2026-06-13 15:03:14,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:14,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:03:14,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:14,584.584 INFO    ] No camera update needed
[2026-06-13 15:03:14,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:03:14,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:03:14,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:03:14,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:03:16,633.633 INFO    ] ================================================
[2026-06-13 15:03:16,648.648 INFO    ] Launching Daemon at Sat Jun 13 15:03:16 IST 2026
[2026-06-13 15:03:16,659.659 INFO    ] ================================================
[2026-06-13 15:03:16,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:03:16
[2026-06-13 15:03:17,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:03:17,443.443 INFO    ] Initializing speech engine...
[2026-06-13 15:03:17,448.448 INFO    ] 2026-06-13 15:03:17
[2026-06-13 15:03:17,677.677 INFO    ] 2026-06-13 15:03:17
[2026-06-13 15:03:17,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:03:17,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:03:17,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:03:18,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:03:18,067.067 INFO    ] time= 13/06/2026 15:03:18
[2026-06-13 15:03:18,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:03:18,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:03:18,228.228 INFO    ] No existing commands found in stream
[2026-06-13 15:03:23,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:03:23,242.242 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 15:03:26,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:03:26,398.398 INFO    ] Checking for system updates...
[2026-06-13 15:03:26,420.420 INFO    ] 200
[2026-06-13 15:03:26,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:26,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:26,453.453 INFO    ] No update needed
[2026-06-13 15:03:26,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 15:03:26,474.474 INFO    ] 200
[2026-06-13 15:03:26,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:26,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:03:26,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:03:26,538.538 INFO    ] No camera update needed
[2026-06-13 15:03:26,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:03:26,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:03:26,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:03:26,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:03:28,573.573 INFO    ] ================================================
[2026-06-13 15:03:28,582.582 INFO    ] Launching Daemon at Sat Jun 13 15:03:28 IST 2026
[2026-06-13 15:03:28,589.589 INFO    ] ================================================
[2026-06-13 15:03:28,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:03:28
[2026-06-13 15:03:29,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:03:29,477.477 INFO    ] Initializing speech engine...
[2026-06-13 15:03:29,485.485 INFO    ] 2026-06-13 15:03:29
[2026-06-13 15:03:29,714.714 INFO    ] 2026-06-13 15:03:29
[2026-06-13 15:03:29,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:03:29,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:03:29,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:03:30,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:03:30,155.155 INFO    ] time= 13/06/2026 15:03:30
[2026-06-13 15:03:30,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:03:30,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:03:30,270.270 INFO    ] No existing commands found in stream
[2026-06-13 15:03:35,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:03:35,284.284 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 15:03:39,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:03:39,102.102 INFO    ] Checking for system updates...
[2026-06-13 15:03:39,128.128 INFO    ] 200
[2026-06-13 15:03:39,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:39,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:39,161.161 INFO    ] No update needed
[2026-06-13 15:03:39,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 15:03:39,182.182 INFO    ] 200
[2026-06-13 15:03:39,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:39,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:03:39,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:39,246.246 INFO    ] No camera update needed
[2026-06-13 15:03:39,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:03:39,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:03:39,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:03:39,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:03:41,292.292 INFO    ] ================================================
[2026-06-13 15:03:41,307.307 INFO    ] Launching Daemon at Sat Jun 13 15:03:41 IST 2026
[2026-06-13 15:03:41,318.318 INFO    ] ================================================
[2026-06-13 15:03:41,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:03:41
[2026-06-13 15:03:41,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:03:42,129.129 INFO    ] Initializing speech engine...
[2026-06-13 15:03:42,143.143 INFO    ] 2026-06-13 15:03:42
[2026-06-13 15:03:42,361.361 INFO    ] 2026-06-13 15:03:42
[2026-06-13 15:03:42,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:03:42,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:03:42,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:03:42,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:03:42,794.794 INFO    ] time= 13/06/2026 15:03:42
[2026-06-13 15:03:42,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:03:42,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:03:42,916.916 INFO    ] No existing commands found in stream
[2026-06-13 15:03:47,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:03:47,928.928 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 15:03:52,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:03:52,072.072 INFO    ] Checking for system updates...
[2026-06-13 15:03:52,093.093 INFO    ] 200
[2026-06-13 15:03:52,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:52,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:52,126.126 INFO    ] No update needed
[2026-06-13 15:03:52,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 15:03:52,147.147 INFO    ] 200
[2026-06-13 15:03:52,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:03:52,172.172 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:03:52,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:03:52,211.211 INFO    ] No camera update needed
[2026-06-13 15:03:52,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:03:52,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:03:52,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:03:52,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:03:54,257.257 INFO    ] ================================================
[2026-06-13 15:03:54,272.272 INFO    ] Launching Daemon at Sat Jun 13 15:03:54 IST 2026
[2026-06-13 15:03:54,282.282 INFO    ] ================================================
[2026-06-13 15:03:54,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:03:54
[2026-06-13 15:03:55,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:03:55,424.424 INFO    ] Initializing speech engine...
[2026-06-13 15:03:55,439.439 INFO    ] 2026-06-13 15:03:55
[2026-06-13 15:03:55,710.710 INFO    ] 2026-06-13 15:03:55
[2026-06-13 15:03:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:03:55,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:03:55,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:03:56,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:03:56,085.085 INFO    ] time= 13/06/2026 15:03:56
[2026-06-13 15:03:56,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:03:56,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:03:56,202.202 INFO    ] No existing commands found in stream
[2026-06-13 15:04:01,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:04:01,223.223 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 15:04:04,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:04:04,701.701 INFO    ] Checking for system updates...
[2026-06-13 15:04:04,722.722 INFO    ] 200
[2026-06-13 15:04:04,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:04,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:04:04,755.755 INFO    ] No update needed
[2026-06-13 15:04:04,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 15:04:04,776.776 INFO    ] 200
[2026-06-13 15:04:04,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:04,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:04:04,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:04:04,846.846 INFO    ] No camera update needed
[2026-06-13 15:04:04,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:04:04,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:04,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:04,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:06,894.894 INFO    ] ================================================
[2026-06-13 15:04:06,909.909 INFO    ] Launching Daemon at Sat Jun 13 15:04:06 IST 2026
[2026-06-13 15:04:06,920.920 INFO    ] ================================================
[2026-06-13 15:04:07,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:07
[2026-06-13 15:04:07,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:07,736.736 INFO    ] Initializing speech engine...
[2026-06-13 15:04:07,741.741 INFO    ] 2026-06-13 15:04:07
[2026-06-13 15:04:07,946.946 INFO    ] 2026-06-13 15:04:07
[2026-06-13 15:04:07,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:08,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:04:08,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:04:08,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:04:08,338.338 INFO    ] time= 13/06/2026 15:04:08
[2026-06-13 15:04:08,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:04:08,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:04:08,458.458 INFO    ] No existing commands found in stream
[2026-06-13 15:04:13,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:04:13,475.475 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 15:04:13,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:04:13,877.877 INFO    ] Checking for system updates...
[2026-06-13 15:04:13,899.899 INFO    ] 200
[2026-06-13 15:04:13,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:13,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:04:13,932.932 INFO    ] No update needed
[2026-06-13 15:04:13,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 15:04:13,953.953 INFO    ] 200
[2026-06-13 15:04:13,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:13,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:04:14,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:14,124.124 INFO    ] No camera update needed
[2026-06-13 15:04:14,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:04:14,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:14,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:14,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:16,172.172 INFO    ] ================================================
[2026-06-13 15:04:16,187.187 INFO    ] Launching Daemon at Sat Jun 13 15:04:16 IST 2026
[2026-06-13 15:04:16,198.198 INFO    ] ================================================
[2026-06-13 15:04:16,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:16
[2026-06-13 15:04:16,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:17,049.049 INFO    ] Initializing speech engine...
[2026-06-13 15:04:17,054.054 INFO    ] 2026-06-13 15:04:17
[2026-06-13 15:04:17,331.331 INFO    ] 2026-06-13 15:04:17
[2026-06-13 15:04:17,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:17,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:04:17,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:04:17,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:04:17,769.769 INFO    ] time= 13/06/2026 15:04:17
[2026-06-13 15:04:17,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:04:17,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:04:17,943.943 INFO    ] No existing commands found in stream
[2026-06-13 15:04:22,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:04:22,983.983 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 15:04:25,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:04:25,449.449 INFO    ] Checking for system updates...
[2026-06-13 15:04:25,470.470 INFO    ] 200
[2026-06-13 15:04:25,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:25,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:25,503.503 INFO    ] No update needed
[2026-06-13 15:04:25,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 15:04:25,524.524 INFO    ] 200
[2026-06-13 15:04:25,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:25,552.552 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:04:25,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:25,593.593 INFO    ] No camera update needed
[2026-06-13 15:04:25,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:04:25,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:25,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:25,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:27,632.632 INFO    ] ================================================
[2026-06-13 15:04:27,640.640 INFO    ] Launching Daemon at Sat Jun 13 15:04:27 IST 2026
[2026-06-13 15:04:27,646.646 INFO    ] ================================================
[2026-06-13 15:04:27,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:27
[2026-06-13 15:04:28,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:28,477.477 INFO    ] Initializing speech engine...
[2026-06-13 15:04:28,484.484 INFO    ] 2026-06-13 15:04:28
[2026-06-13 15:04:28,779.779 INFO    ] 2026-06-13 15:04:28
[2026-06-13 15:04:28,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:29,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:04:29,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:04:29,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:04:29,152.152 INFO    ] time= 13/06/2026 15:04:29
[2026-06-13 15:04:29,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:04:29,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:04:29,275.275 INFO    ] No existing commands found in stream
[2026-06-13 15:04:34,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:04:34,290.290 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 15:04:35,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:04:35,049.049 INFO    ] Checking for system updates...
[2026-06-13 15:04:35,070.070 INFO    ] 200
[2026-06-13 15:04:35,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:35,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:04:35,103.103 INFO    ] No update needed
[2026-06-13 15:04:35,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 15:04:35,124.124 INFO    ] 200
[2026-06-13 15:04:35,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:35,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:04:35,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:35,194.194 INFO    ] No camera update needed
[2026-06-13 15:04:35,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:04:35,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:35,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:35,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:37,242.242 INFO    ] ================================================
[2026-06-13 15:04:37,257.257 INFO    ] Launching Daemon at Sat Jun 13 15:04:37 IST 2026
[2026-06-13 15:04:37,269.269 INFO    ] ================================================
[2026-06-13 15:04:37,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:37
[2026-06-13 15:04:37,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:38,084.084 INFO    ] Initializing speech engine...
[2026-06-13 15:04:38,089.089 INFO    ] 2026-06-13 15:04:38
[2026-06-13 15:04:38,293.293 INFO    ] 2026-06-13 15:04:38
[2026-06-13 15:04:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:38,373.373 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 15:04:38,424.424 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 15:04:38,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:38,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:38,535.535 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 15:04:38,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:40,594.594 INFO    ] ================================================
[2026-06-13 15:04:40,610.610 INFO    ] Launching Daemon at Sat Jun 13 15:04:40 IST 2026
[2026-06-13 15:04:40,621.621 INFO    ] ================================================
[2026-06-13 15:04:40,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:40
[2026-06-13 15:04:41,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:41,453.453 INFO    ] Initializing speech engine...
[2026-06-13 15:04:41,457.457 INFO    ] 2026-06-13 15:04:41
[2026-06-13 15:04:41,662.662 INFO    ] 2026-06-13 15:04:41
[2026-06-13 15:04:41,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:41,743.743 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 15:04:41,786.786 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 15:04:41,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:41,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:41,844.844 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 15:04:41,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:43,957.957 INFO    ] ================================================
[2026-06-13 15:04:43,972.972 INFO    ] Launching Daemon at Sat Jun 13 15:04:43 IST 2026
[2026-06-13 15:04:43,983.983 INFO    ] ================================================
[2026-06-13 15:04:44,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:44
[2026-06-13 15:04:44,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:44,801.801 INFO    ] Initializing speech engine...
[2026-06-13 15:04:44,806.806 INFO    ] 2026-06-13 15:04:44
[2026-06-13 15:04:45,038.038 INFO    ] 2026-06-13 15:04:45
[2026-06-13 15:04:45,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:45,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:04:45,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:04:45,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:04:45,446.446 INFO    ] time= 13/06/2026 15:04:45
[2026-06-13 15:04:45,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:04:45,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:04:45,600.600 INFO    ] No existing commands found in stream
[2026-06-13 15:04:50,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:04:50,643.643 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 15:04:53,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:04:53,477.477 INFO    ] Checking for system updates...
[2026-06-13 15:04:53,497.497 INFO    ] 200
[2026-06-13 15:04:53,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:53,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:53,531.531 INFO    ] No update needed
[2026-06-13 15:04:53,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 15:04:53,552.552 INFO    ] 200
[2026-06-13 15:04:53,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:04:53,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:04:53,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:04:53,704.704 INFO    ] No camera update needed
[2026-06-13 15:04:53,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:04:53,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:04:53,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:04:53,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:04:55,751.751 INFO    ] ================================================
[2026-06-13 15:04:55,767.767 INFO    ] Launching Daemon at Sat Jun 13 15:04:55 IST 2026
[2026-06-13 15:04:55,778.778 INFO    ] ================================================
[2026-06-13 15:04:56,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:04:56
[2026-06-13 15:04:56,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:04:56,777.777 INFO    ] Initializing speech engine...
[2026-06-13 15:04:56,786.786 INFO    ] 2026-06-13 15:04:56
[2026-06-13 15:04:57,045.045 INFO    ] 2026-06-13 15:04:57
[2026-06-13 15:04:57,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:04:57,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:04:57,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:04:57,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:04:57,522.522 INFO    ] time= 13/06/2026 15:04:57
[2026-06-13 15:04:57,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:04:57,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:04:57,678.678 INFO    ] No existing commands found in stream
[2026-06-13 15:05:02,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:02,715.715 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 15:05:05,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:05:05,356.356 INFO    ] Checking for system updates...
[2026-06-13 15:05:05,379.379 INFO    ] 200
[2026-06-13 15:05:05,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:05,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:05,412.412 INFO    ] No update needed
[2026-06-13 15:05:05,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 15:05:05,433.433 INFO    ] 200
[2026-06-13 15:05:05,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:05,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:05:05,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:05,507.507 INFO    ] No camera update needed
[2026-06-13 15:05:05,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:05:05,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:05:05,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:05:05,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:05:07,556.556 INFO    ] ================================================
[2026-06-13 15:05:07,571.571 INFO    ] Launching Daemon at Sat Jun 13 15:05:07 IST 2026
[2026-06-13 15:05:07,582.582 INFO    ] ================================================
[2026-06-13 15:05:08,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:05:08
[2026-06-13 15:05:08,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:05:08,997.997 INFO    ] Initializing speech engine...
[2026-06-13 15:05:09,008.008 INFO    ] 2026-06-13 15:05:09
[2026-06-13 15:05:09,270.270 INFO    ] 2026-06-13 15:05:09
[2026-06-13 15:05:09,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:05:09,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:05:09,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:05:09,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:05:09,655.655 INFO    ] time= 13/06/2026 15:05:09
[2026-06-13 15:05:09,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:05:09,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:05:09,762.762 INFO    ] No existing commands found in stream
[2026-06-13 15:05:14,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:14,778.778 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 15:05:16,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:05:16,630.630 INFO    ] Checking for system updates...
[2026-06-13 15:05:16,651.651 INFO    ] 200
[2026-06-13 15:05:16,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:16,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:05:16,686.686 INFO    ] No update needed
[2026-06-13 15:05:16,687.687 INFO    ] Checking for camera pi updates...
[2026-06-13 15:05:16,709.709 INFO    ] 200
[2026-06-13 15:05:16,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:16,734.734 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:05:16,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:05:16,781.781 INFO    ] No camera update needed
[2026-06-13 15:05:16,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:05:16,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:05:16,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:05:16,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:05:18,829.829 INFO    ] ================================================
[2026-06-13 15:05:18,844.844 INFO    ] Launching Daemon at Sat Jun 13 15:05:18 IST 2026
[2026-06-13 15:05:18,855.855 INFO    ] ================================================
[2026-06-13 15:05:19,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:05:19
[2026-06-13 15:05:19,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:05:20,247.247 INFO    ] Initializing speech engine...
[2026-06-13 15:05:20,255.255 INFO    ] 2026-06-13 15:05:20
[2026-06-13 15:05:20,505.505 INFO    ] 2026-06-13 15:05:20
[2026-06-13 15:05:20,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:05:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:05:20,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:05:20,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:05:20,853.853 INFO    ] time= 13/06/2026 15:05:20
[2026-06-13 15:05:20,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:05:20,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:05:20,948.948 INFO    ] No existing commands found in stream
[2026-06-13 15:05:25,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:25,964.964 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 15:05:27,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:05:27,890.890 INFO    ] Checking for system updates...
[2026-06-13 15:05:27,917.917 INFO    ] 200
[2026-06-13 15:05:27,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:27,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:27,951.951 INFO    ] No update needed
[2026-06-13 15:05:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 15:05:27,981.981 INFO    ] 200
[2026-06-13 15:05:27,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:28,016.016 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:05:28,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:05:28,040.040 INFO    ] No camera update needed
[2026-06-13 15:05:28,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:05:28,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:05:28,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:05:28,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:05:30,089.089 INFO    ] ================================================
[2026-06-13 15:05:30,105.105 INFO    ] Launching Daemon at Sat Jun 13 15:05:30 IST 2026
[2026-06-13 15:05:30,116.116 INFO    ] ================================================
[2026-06-13 15:05:30,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:05:30
[2026-06-13 15:05:30,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:05:30,947.947 INFO    ] Initializing speech engine...
[2026-06-13 15:05:30,953.953 INFO    ] 2026-06-13 15:05:30
[2026-06-13 15:05:31,162.162 INFO    ] 2026-06-13 15:05:31
[2026-06-13 15:05:31,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:05:31,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:05:31,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:05:31,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:05:31,574.574 INFO    ] time= 13/06/2026 15:05:31
[2026-06-13 15:05:31,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:05:31,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:05:31,687.687 INFO    ] No existing commands found in stream
[2026-06-13 15:05:36,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:36,699.699 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 15:05:38,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:05:38,106.106 INFO    ] Checking for system updates...
[2026-06-13 15:05:38,127.127 INFO    ] 200
[2026-06-13 15:05:38,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:38,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:38,174.174 INFO    ] No update needed
[2026-06-13 15:05:38,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 15:05:38,195.195 INFO    ] 200
[2026-06-13 15:05:38,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:38,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:05:38,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:05:38,269.269 INFO    ] No camera update needed
[2026-06-13 15:05:38,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:05:38,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:05:38,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:05:38,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:05:40,318.318 INFO    ] ================================================
[2026-06-13 15:05:40,334.334 INFO    ] Launching Daemon at Sat Jun 13 15:05:40 IST 2026
[2026-06-13 15:05:40,345.345 INFO    ] ================================================
[2026-06-13 15:05:40,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:05:40
[2026-06-13 15:05:41,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:05:41,157.157 INFO    ] Initializing speech engine...
[2026-06-13 15:05:41,161.161 INFO    ] 2026-06-13 15:05:41
[2026-06-13 15:05:41,383.383 INFO    ] 2026-06-13 15:05:41
[2026-06-13 15:05:41,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:05:41,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:05:41,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:05:41,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:05:41,762.762 INFO    ] time= 13/06/2026 15:05:41
[2026-06-13 15:05:41,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:05:41,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:05:41,888.888 INFO    ] No existing commands found in stream
[2026-06-13 15:05:46,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:46,903.903 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 15:05:49,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:05:49,590.590 INFO    ] Checking for system updates...
[2026-06-13 15:05:49,611.611 INFO    ] 200
[2026-06-13 15:05:49,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:49,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:49,644.644 INFO    ] No update needed
[2026-06-13 15:05:49,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 15:05:49,665.665 INFO    ] 200
[2026-06-13 15:05:49,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:05:49,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:05:49,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:05:49,734.734 INFO    ] No camera update needed
[2026-06-13 15:05:49,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:05:49,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:05:49,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:05:49,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:05:51,782.782 INFO    ] ================================================
[2026-06-13 15:05:51,798.798 INFO    ] Launching Daemon at Sat Jun 13 15:05:51 IST 2026
[2026-06-13 15:05:51,808.808 INFO    ] ================================================
[2026-06-13 15:05:52,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:05:52
[2026-06-13 15:05:52,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:05:52,665.665 INFO    ] Initializing speech engine...
[2026-06-13 15:05:52,671.671 INFO    ] 2026-06-13 15:05:52
[2026-06-13 15:05:52,908.908 INFO    ] 2026-06-13 15:05:52
[2026-06-13 15:05:52,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:05:53,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:05:53,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:05:53,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:05:53,348.348 INFO    ] time= 13/06/2026 15:05:53
[2026-06-13 15:05:53,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:05:53,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:05:53,483.483 INFO    ] No existing commands found in stream
[2026-06-13 15:05:58,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:05:58,513.513 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 15:06:00,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:06:00,900.900 INFO    ] Checking for system updates...
[2026-06-13 15:06:00,921.921 INFO    ] 200
[2026-06-13 15:06:00,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:00,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:06:00,957.957 INFO    ] No update needed
[2026-06-13 15:06:00,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:00,981.981 INFO    ] 200
[2026-06-13 15:06:00,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:01,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:01,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:06:01,029.029 INFO    ] No camera update needed
[2026-06-13 15:06:01,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:01,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:01,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:06:03,063.063 INFO    ] ================================================
[2026-06-13 15:06:03,072.072 INFO    ] Launching Daemon at Sat Jun 13 15:06:03 IST 2026
[2026-06-13 15:06:03,078.078 INFO    ] ================================================
[2026-06-13 15:06:03,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:06:03
[2026-06-13 15:06:03,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:06:03,890.890 INFO    ] Initializing speech engine...
[2026-06-13 15:06:03,902.902 INFO    ] 2026-06-13 15:06:03
[2026-06-13 15:06:04,137.137 INFO    ] 2026-06-13 15:06:04
[2026-06-13 15:06:04,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:06:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:06:04,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:06:04,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:06:04,502.502 INFO    ] time= 13/06/2026 15:06:04
[2026-06-13 15:06:04,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:06:04,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:06:04,602.602 INFO    ] No existing commands found in stream
[2026-06-13 15:06:09,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:06:09,640.640 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 15:06:13,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:06:13,920.920 INFO    ] Checking for system updates...
[2026-06-13 15:06:13,941.941 INFO    ] 200
[2026-06-13 15:06:13,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:13,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:13,974.974 INFO    ] No update needed
[2026-06-13 15:06:13,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:13,994.994 INFO    ] 200
[2026-06-13 15:06:13,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:14,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:14,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:14,058.058 INFO    ] No camera update needed
[2026-06-13 15:06:14,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:14,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:14,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:14,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:06:16,104.104 INFO    ] ================================================
[2026-06-13 15:06:16,119.119 INFO    ] Launching Daemon at Sat Jun 13 15:06:16 IST 2026
[2026-06-13 15:06:16,131.131 INFO    ] ================================================
[2026-06-13 15:06:16,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:06:16
[2026-06-13 15:06:16,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:06:17,006.006 INFO    ] Initializing speech engine...
[2026-06-13 15:06:17,011.011 INFO    ] 2026-06-13 15:06:17
[2026-06-13 15:06:17,221.221 INFO    ] 2026-06-13 15:06:17
[2026-06-13 15:06:17,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:06:17,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:06:17,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:06:17,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:06:17,648.648 INFO    ] time= 13/06/2026 15:06:17
[2026-06-13 15:06:17,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:06:17,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:06:17,749.749 INFO    ] No existing commands found in stream
[2026-06-13 15:06:22,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:06:22,762.762 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 15:06:27,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:06:27,950.950 INFO    ] Checking for system updates...
[2026-06-13 15:06:27,986.986 INFO    ] 200
[2026-06-13 15:06:27,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:28,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:28,044.044 INFO    ] No update needed
[2026-06-13 15:06:28,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:28,081.081 INFO    ] 200
[2026-06-13 15:06:28,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:28,122.122 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:28,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:28,166.166 INFO    ] No camera update needed
[2026-06-13 15:06:28,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:28,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:28,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:28,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:06:30,214.214 INFO    ] ================================================
[2026-06-13 15:06:30,230.230 INFO    ] Launching Daemon at Sat Jun 13 15:06:30 IST 2026
[2026-06-13 15:06:30,241.241 INFO    ] ================================================
[2026-06-13 15:06:30,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:06:30
[2026-06-13 15:06:30,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:06:31,034.034 INFO    ] Initializing speech engine...
[2026-06-13 15:06:31,043.043 INFO    ] 2026-06-13 15:06:31
[2026-06-13 15:06:31,264.264 INFO    ] 2026-06-13 15:06:31
[2026-06-13 15:06:31,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:06:31,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:06:31,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:06:31,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:06:31,688.688 INFO    ] time= 13/06/2026 15:06:31
[2026-06-13 15:06:31,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:06:31,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:06:31,855.855 INFO    ] No existing commands found in stream
[2026-06-13 15:06:36,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:06:36,884.884 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 15:06:38,993.993 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:06:38,995.995 INFO    ] Checking for system updates...
[2026-06-13 15:06:39,017.017 INFO    ] 200
[2026-06-13 15:06:39,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:39,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:39,050.050 INFO    ] No update needed
[2026-06-13 15:06:39,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:39,071.071 INFO    ] 200
[2026-06-13 15:06:39,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:39,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:39,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:39,136.136 INFO    ] No camera update needed
[2026-06-13 15:06:39,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:39,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:39,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:39,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:06:41,184.184 INFO    ] ================================================
[2026-06-13 15:06:41,200.200 INFO    ] Launching Daemon at Sat Jun 13 15:06:41 IST 2026
[2026-06-13 15:06:41,211.211 INFO    ] ================================================
[2026-06-13 15:06:41,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:06:41
[2026-06-13 15:06:41,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:06:41,993.993 INFO    ] Initializing speech engine...
[2026-06-13 15:06:42,003.003 INFO    ] 2026-06-13 15:06:41
[2026-06-13 15:06:42,206.206 INFO    ] 2026-06-13 15:06:42
[2026-06-13 15:06:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:06:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:06:42,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:06:42,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:06:42,624.624 INFO    ] time= 13/06/2026 15:06:42
[2026-06-13 15:06:42,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:06:42,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:06:42,724.724 INFO    ] No existing commands found in stream
[2026-06-13 15:06:47,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:06:47,745.745 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 15:06:48,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:06:48,957.957 INFO    ] Checking for system updates...
[2026-06-13 15:06:48,979.979 INFO    ] 200
[2026-06-13 15:06:48,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:49,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:06:49,014.014 INFO    ] No update needed
[2026-06-13 15:06:49,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:49,037.037 INFO    ] 200
[2026-06-13 15:06:49,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:49,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:49,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:06:49,102.102 INFO    ] No camera update needed
[2026-06-13 15:06:49,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:49,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:49,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:49,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:06:51,158.158 INFO    ] ================================================
[2026-06-13 15:06:51,173.173 INFO    ] Launching Daemon at Sat Jun 13 15:06:51 IST 2026
[2026-06-13 15:06:51,189.189 INFO    ] ================================================
[2026-06-13 15:06:51,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:06:51
[2026-06-13 15:06:52,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:06:52,375.375 INFO    ] Initializing speech engine...
[2026-06-13 15:06:52,384.384 INFO    ] 2026-06-13 15:06:52
[2026-06-13 15:06:52,597.597 INFO    ] 2026-06-13 15:06:52
[2026-06-13 15:06:52,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:06:52,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:06:52,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:06:52,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:06:52,989.989 INFO    ] time= 13/06/2026 15:06:52
[2026-06-13 15:06:53,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:06:53,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:06:53,114.114 INFO    ] No existing commands found in stream
[2026-06-13 15:06:58,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:06:58,127.127 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 15:06:58,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:06:58,910.910 INFO    ] Checking for system updates...
[2026-06-13 15:06:58,932.932 INFO    ] 200
[2026-06-13 15:06:58,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:58,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:58,965.965 INFO    ] No update needed
[2026-06-13 15:06:58,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 15:06:58,987.987 INFO    ] 200
[2026-06-13 15:06:58,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:06:59,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:06:59,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:06:59,161.161 INFO    ] No camera update needed
[2026-06-13 15:06:59,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:06:59,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:06:59,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:06:59,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:01,209.209 INFO    ] ================================================
[2026-06-13 15:07:01,224.224 INFO    ] Launching Daemon at Sat Jun 13 15:07:01 IST 2026
[2026-06-13 15:07:01,235.235 INFO    ] ================================================
[2026-06-13 15:07:01,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:01
[2026-06-13 15:07:01,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:02,162.162 INFO    ] Initializing speech engine...
[2026-06-13 15:07:02,179.179 INFO    ] 2026-06-13 15:07:02
[2026-06-13 15:07:02,434.434 INFO    ] 2026-06-13 15:07:02
[2026-06-13 15:07:02,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:02,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:02,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:02,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:02,849.849 INFO    ] time= 13/06/2026 15:07:02
[2026-06-13 15:07:02,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:02,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:03,027.027 INFO    ] No existing commands found in stream
[2026-06-13 15:07:08,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:07:08,042.042 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 15:07:11,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:07:11,105.105 INFO    ] Checking for system updates...
[2026-06-13 15:07:11,126.126 INFO    ] 200
[2026-06-13 15:07:11,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:11,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:11,160.160 INFO    ] No update needed
[2026-06-13 15:07:11,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 15:07:11,182.182 INFO    ] 200
[2026-06-13 15:07:11,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:11,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:07:11,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:11,245.245 INFO    ] No camera update needed
[2026-06-13 15:07:11,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:07:11,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:07:11,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:07:11,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:13,295.295 INFO    ] ================================================
[2026-06-13 15:07:13,310.310 INFO    ] Launching Daemon at Sat Jun 13 15:07:13 IST 2026
[2026-06-13 15:07:13,321.321 INFO    ] ================================================
[2026-06-13 15:07:13,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:13
[2026-06-13 15:07:13,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:14,141.141 INFO    ] Initializing speech engine...
[2026-06-13 15:07:14,147.147 INFO    ] 2026-06-13 15:07:14
[2026-06-13 15:07:14,359.359 INFO    ] 2026-06-13 15:07:14
[2026-06-13 15:07:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:14,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:14,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:14,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:14,781.781 INFO    ] time= 13/06/2026 15:07:14
[2026-06-13 15:07:14,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:14,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:14,905.905 INFO    ] No existing commands found in stream
[2026-06-13 15:07:19,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:07:19,919.919 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 15:07:20,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:07:20,409.409 INFO    ] Checking for system updates...
[2026-06-13 15:07:20,430.430 INFO    ] 200
[2026-06-13 15:07:20,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:20,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:07:20,463.463 INFO    ] No update needed
[2026-06-13 15:07:20,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 15:07:20,486.486 INFO    ] 200
[2026-06-13 15:07:20,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:20,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:07:20,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:07:20,555.555 INFO    ] No camera update needed
[2026-06-13 15:07:20,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:07:20,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:07:20,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:07:20,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:22,601.601 INFO    ] ================================================
[2026-06-13 15:07:22,616.616 INFO    ] Launching Daemon at Sat Jun 13 15:07:22 IST 2026
[2026-06-13 15:07:22,627.627 INFO    ] ================================================
[2026-06-13 15:07:22,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:22
[2026-06-13 15:07:23,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:23,434.434 INFO    ] Initializing speech engine...
[2026-06-13 15:07:23,445.445 INFO    ] 2026-06-13 15:07:23
[2026-06-13 15:07:23,631.631 INFO    ] 2026-06-13 15:07:23
[2026-06-13 15:07:23,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:23,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:23,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:23,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:24,012.012 INFO    ] time= 13/06/2026 15:07:23
[2026-06-13 15:07:24,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:24,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:24,180.180 INFO    ] No existing commands found in stream
[2026-06-13 15:07:29,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:07:29,193.193 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 15:07:31,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:07:31,490.490 INFO    ] Checking for system updates...
[2026-06-13 15:07:31,511.511 INFO    ] 200
[2026-06-13 15:07:31,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:31,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:31,546.546 INFO    ] No update needed
[2026-06-13 15:07:31,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 15:07:31,567.567 INFO    ] 200
[2026-06-13 15:07:31,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:31,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:07:31,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:31,627.627 INFO    ] No camera update needed
[2026-06-13 15:07:31,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:07:31,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:07:31,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:07:31,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:33,667.667 INFO    ] ================================================
[2026-06-13 15:07:33,686.686 INFO    ] Launching Daemon at Sat Jun 13 15:07:33 IST 2026
[2026-06-13 15:07:33,697.697 INFO    ] ================================================
[2026-06-13 15:07:34,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:34
[2026-06-13 15:07:34,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:34,521.521 INFO    ] Initializing speech engine...
[2026-06-13 15:07:34,527.527 INFO    ] 2026-06-13 15:07:34
[2026-06-13 15:07:34,736.736 INFO    ] 2026-06-13 15:07:34
[2026-06-13 15:07:34,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:34,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:34,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:35,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:35,131.131 INFO    ] time= 13/06/2026 15:07:35
[2026-06-13 15:07:35,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:35,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:35,257.257 INFO    ] No existing commands found in stream
[2026-06-13 15:07:40,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:07:40,271.271 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 15:07:43,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:07:43,871.871 INFO    ] Checking for system updates...
[2026-06-13 15:07:43,892.892 INFO    ] 200
[2026-06-13 15:07:43,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:43,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:07:43,928.928 INFO    ] No update needed
[2026-06-13 15:07:43,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 15:07:43,949.949 INFO    ] 200
[2026-06-13 15:07:43,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:43,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:07:44,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:44,015.015 INFO    ] No camera update needed
[2026-06-13 15:07:44,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:07:44,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:07:44,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:07:44,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:46,061.061 INFO    ] ================================================
[2026-06-13 15:07:46,076.076 INFO    ] Launching Daemon at Sat Jun 13 15:07:46 IST 2026
[2026-06-13 15:07:46,087.087 INFO    ] ================================================
[2026-06-13 15:07:46,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:46
[2026-06-13 15:07:46,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:46,948.948 INFO    ] Initializing speech engine...
[2026-06-13 15:07:46,954.954 INFO    ] 2026-06-13 15:07:46
[2026-06-13 15:07:47,162.162 INFO    ] 2026-06-13 15:07:47
[2026-06-13 15:07:47,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:47,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:47,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:47,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:47,566.566 INFO    ] time= 13/06/2026 15:07:47
[2026-06-13 15:07:47,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:47,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:47,687.687 INFO    ] No existing commands found in stream
[2026-06-13 15:07:52,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:07:52,702.702 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 15:07:54,099.099 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:07:54,101.101 INFO    ] Checking for system updates...
[2026-06-13 15:07:54,121.121 INFO    ] 200
[2026-06-13 15:07:54,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:54,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:54,157.157 INFO    ] No update needed
[2026-06-13 15:07:54,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 15:07:54,178.178 INFO    ] 200
[2026-06-13 15:07:54,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:07:54,205.205 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:07:54,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:07:54,243.243 INFO    ] No camera update needed
[2026-06-13 15:07:54,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:07:54,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:07:54,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:07:54,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:07:56,289.289 INFO    ] ================================================
[2026-06-13 15:07:56,304.304 INFO    ] Launching Daemon at Sat Jun 13 15:07:56 IST 2026
[2026-06-13 15:07:56,315.315 INFO    ] ================================================
[2026-06-13 15:07:56,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:07:56
[2026-06-13 15:07:57,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:07:57,150.150 INFO    ] Initializing speech engine...
[2026-06-13 15:07:57,155.155 INFO    ] 2026-06-13 15:07:57
[2026-06-13 15:07:57,359.359 INFO    ] 2026-06-13 15:07:57
[2026-06-13 15:07:57,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:07:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:07:57,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:07:57,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:07:57,761.761 INFO    ] time= 13/06/2026 15:07:57
[2026-06-13 15:07:57,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:07:57,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:07:57,877.877 INFO    ] No existing commands found in stream
[2026-06-13 15:08:02,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:02,894.894 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 15:08:03,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:08:03,402.402 INFO    ] Checking for system updates...
[2026-06-13 15:08:03,442.442 INFO    ] 200
[2026-06-13 15:08:03,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:03,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:03,500.500 INFO    ] No update needed
[2026-06-13 15:08:03,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 15:08:03,538.538 INFO    ] 200
[2026-06-13 15:08:03,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:03,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:08:03,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:03,641.641 INFO    ] No camera update needed
[2026-06-13 15:08:03,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:08:03,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:08:03,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:08:03,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:08:05,696.696 INFO    ] ================================================
[2026-06-13 15:08:05,711.711 INFO    ] Launching Daemon at Sat Jun 13 15:08:05 IST 2026
[2026-06-13 15:08:05,722.722 INFO    ] ================================================
[2026-06-13 15:08:06,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:08:06
[2026-06-13 15:08:06,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:08:06,597.597 INFO    ] Initializing speech engine...
[2026-06-13 15:08:06,603.603 INFO    ] 2026-06-13 15:08:06
[2026-06-13 15:08:06,812.812 INFO    ] 2026-06-13 15:08:06
[2026-06-13 15:08:06,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:08:07,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:08:07,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:08:07,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:08:07,229.229 INFO    ] time= 13/06/2026 15:08:07
[2026-06-13 15:08:07,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:08:07,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:08:07,340.340 INFO    ] No existing commands found in stream
[2026-06-13 15:08:12,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:12,353.353 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 15:08:15,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:08:15,598.598 INFO    ] Checking for system updates...
[2026-06-13 15:08:15,634.634 INFO    ] 200
[2026-06-13 15:08:15,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:15,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:08:15,692.692 INFO    ] No update needed
[2026-06-13 15:08:15,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 15:08:15,729.729 INFO    ] 200
[2026-06-13 15:08:15,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:15,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:08:15,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:08:15,836.836 INFO    ] No camera update needed
[2026-06-13 15:08:15,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:08:15,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:08:15,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:08:15,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:08:17,891.891 INFO    ] ================================================
[2026-06-13 15:08:17,906.906 INFO    ] Launching Daemon at Sat Jun 13 15:08:17 IST 2026
[2026-06-13 15:08:17,916.916 INFO    ] ================================================
[2026-06-13 15:08:18,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:08:18
[2026-06-13 15:08:18,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:08:19,024.024 INFO    ] Initializing speech engine...
[2026-06-13 15:08:19,031.031 INFO    ] 2026-06-13 15:08:19
[2026-06-13 15:08:19,297.297 INFO    ] 2026-06-13 15:08:19
[2026-06-13 15:08:19,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:08:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:08:19,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:08:19,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:08:19,740.740 INFO    ] time= 13/06/2026 15:08:19
[2026-06-13 15:08:19,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:08:19,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:08:19,906.906 INFO    ] No existing commands found in stream
[2026-06-13 15:08:24,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:24,921.921 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 15:08:26,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:08:26,495.495 INFO    ] Checking for system updates...
[2026-06-13 15:08:26,516.516 INFO    ] 200
[2026-06-13 15:08:26,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:26,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:08:26,549.549 INFO    ] No update needed
[2026-06-13 15:08:26,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 15:08:26,572.572 INFO    ] 200
[2026-06-13 15:08:26,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:26,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:08:26,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:08:26,649.649 INFO    ] No camera update needed
[2026-06-13 15:08:26,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:08:26,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:08:26,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:08:26,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:08:28,698.698 INFO    ] ================================================
[2026-06-13 15:08:28,713.713 INFO    ] Launching Daemon at Sat Jun 13 15:08:28 IST 2026
[2026-06-13 15:08:28,723.723 INFO    ] ================================================
[2026-06-13 15:08:29,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:08:29
[2026-06-13 15:08:29,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:08:29,499.499 INFO    ] Initializing speech engine...
[2026-06-13 15:08:29,509.509 INFO    ] 2026-06-13 15:08:29
[2026-06-13 15:08:29,709.709 INFO    ] 2026-06-13 15:08:29
[2026-06-13 15:08:29,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:08:29,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:08:29,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:08:30,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:08:30,124.124 INFO    ] time= 13/06/2026 15:08:30
[2026-06-13 15:08:30,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:08:30,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:08:30,309.309 INFO    ] No existing commands found in stream
[2026-06-13 15:08:35,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:35,324.324 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 15:08:37,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:08:37,718.718 INFO    ] Checking for system updates...
[2026-06-13 15:08:37,739.739 INFO    ] 200
[2026-06-13 15:08:37,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:37,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:37,774.774 INFO    ] No update needed
[2026-06-13 15:08:37,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 15:08:37,796.796 INFO    ] 200
[2026-06-13 15:08:37,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:37,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:08:37,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:37,852.852 INFO    ] No camera update needed
[2026-06-13 15:08:37,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:08:37,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:08:37,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:08:37,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:08:39,899.899 INFO    ] ================================================
[2026-06-13 15:08:39,914.914 INFO    ] Launching Daemon at Sat Jun 13 15:08:39 IST 2026
[2026-06-13 15:08:39,925.925 INFO    ] ================================================
[2026-06-13 15:08:40,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:08:40
[2026-06-13 15:08:40,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:08:40,746.746 INFO    ] Initializing speech engine...
[2026-06-13 15:08:40,750.750 INFO    ] 2026-06-13 15:08:40
[2026-06-13 15:08:40,956.956 INFO    ] 2026-06-13 15:08:40
[2026-06-13 15:08:40,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:08:41,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:08:41,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:08:41,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:08:41,374.374 INFO    ] time= 13/06/2026 15:08:41
[2026-06-13 15:08:41,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:08:41,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:08:41,475.475 INFO    ] No existing commands found in stream
[2026-06-13 15:08:46,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:46,487.487 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 15:08:48,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:08:48,669.669 INFO    ] Checking for system updates...
[2026-06-13 15:08:48,689.689 INFO    ] 200
[2026-06-13 15:08:48,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:48,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:48,723.723 INFO    ] No update needed
[2026-06-13 15:08:48,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 15:08:48,743.743 INFO    ] 200
[2026-06-13 15:08:48,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:08:48,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:08:48,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:08:48,831.831 INFO    ] No camera update needed
[2026-06-13 15:08:48,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:08:48,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:08:48,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:08:48,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:08:50,879.879 INFO    ] ================================================
[2026-06-13 15:08:50,894.894 INFO    ] Launching Daemon at Sat Jun 13 15:08:50 IST 2026
[2026-06-13 15:08:50,905.905 INFO    ] ================================================
[2026-06-13 15:08:51,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:08:51
[2026-06-13 15:08:51,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:08:51,699.699 INFO    ] Initializing speech engine...
[2026-06-13 15:08:51,703.703 INFO    ] 2026-06-13 15:08:51
[2026-06-13 15:08:51,913.913 INFO    ] 2026-06-13 15:08:51
[2026-06-13 15:08:51,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:08:52,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:08:52,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:08:52,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:08:52,319.319 INFO    ] time= 13/06/2026 15:08:52
[2026-06-13 15:08:52,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:08:52,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:08:52,502.502 INFO    ] No existing commands found in stream
[2026-06-13 15:08:57,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:08:57,516.516 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 15:09:01,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:09:01,147.147 INFO    ] Checking for system updates...
[2026-06-13 15:09:01,167.167 INFO    ] 200
[2026-06-13 15:09:01,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:01,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:01,201.201 INFO    ] No update needed
[2026-06-13 15:09:01,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:01,221.221 INFO    ] 200
[2026-06-13 15:09:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:01,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:01,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:01,386.386 INFO    ] No camera update needed
[2026-06-13 15:09:01,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:01,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:01,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:01,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:03,429.429 INFO    ] ================================================
[2026-06-13 15:09:03,445.445 INFO    ] Launching Daemon at Sat Jun 13 15:09:03 IST 2026
[2026-06-13 15:09:03,456.456 INFO    ] ================================================
[2026-06-13 15:09:03,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:03
[2026-06-13 15:09:04,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:04,296.296 INFO    ] Initializing speech engine...
[2026-06-13 15:09:04,300.300 INFO    ] 2026-06-13 15:09:04
[2026-06-13 15:09:04,505.505 INFO    ] 2026-06-13 15:09:04
[2026-06-13 15:09:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:09:04,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:09:04,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:09:04,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:09:04,905.905 INFO    ] time= 13/06/2026 15:09:04
[2026-06-13 15:09:04,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:09:04,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:09:05,021.021 INFO    ] No existing commands found in stream
[2026-06-13 15:09:10,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:09:10,032.032 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 15:09:10,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:09:10,640.640 INFO    ] Checking for system updates...
[2026-06-13 15:09:10,661.661 INFO    ] 200
[2026-06-13 15:09:10,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:10,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:09:10,697.697 INFO    ] No update needed
[2026-06-13 15:09:10,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:10,718.718 INFO    ] 200
[2026-06-13 15:09:10,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:10,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:10,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:09:10,785.785 INFO    ] No camera update needed
[2026-06-13 15:09:10,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:10,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:10,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:10,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:12,835.835 INFO    ] ================================================
[2026-06-13 15:09:12,850.850 INFO    ] Launching Daemon at Sat Jun 13 15:09:12 IST 2026
[2026-06-13 15:09:12,860.860 INFO    ] ================================================
[2026-06-13 15:09:13,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:13
[2026-06-13 15:09:13,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:13,692.692 INFO    ] Initializing speech engine...
[2026-06-13 15:09:13,703.703 INFO    ] 2026-06-13 15:09:13
[2026-06-13 15:09:13,911.911 INFO    ] 2026-06-13 15:09:13
[2026-06-13 15:09:13,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:09:14,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:09:14,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:09:14,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:09:14,319.319 INFO    ] time= 13/06/2026 15:09:14
[2026-06-13 15:09:14,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:09:14,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:09:14,429.429 INFO    ] No existing commands found in stream
[2026-06-13 15:09:19,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:09:19,443.443 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 15:09:21,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:09:21,207.207 INFO    ] Checking for system updates...
[2026-06-13 15:09:21,229.229 INFO    ] 200
[2026-06-13 15:09:21,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:21,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:09:21,262.262 INFO    ] No update needed
[2026-06-13 15:09:21,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:21,285.285 INFO    ] 200
[2026-06-13 15:09:21,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:21,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:21,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:21,355.355 INFO    ] No camera update needed
[2026-06-13 15:09:21,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:21,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:21,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:21,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:23,403.403 INFO    ] ================================================
[2026-06-13 15:09:23,418.418 INFO    ] Launching Daemon at Sat Jun 13 15:09:23 IST 2026
[2026-06-13 15:09:23,429.429 INFO    ] ================================================
[2026-06-13 15:09:23,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:23
[2026-06-13 15:09:24,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:24,305.305 INFO    ] Initializing speech engine...
[2026-06-13 15:09:24,311.311 INFO    ] 2026-06-13 15:09:24
[2026-06-13 15:09:24,520.520 INFO    ] 2026-06-13 15:09:24
[2026-06-13 15:09:24,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:09:24,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:09:24,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:09:24,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:09:24,932.932 INFO    ] time= 13/06/2026 15:09:24
[2026-06-13 15:09:24,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:09:24,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:09:25,044.044 INFO    ] No existing commands found in stream
[2026-06-13 15:09:30,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:09:30,058.058 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 15:09:34,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:09:34,155.155 INFO    ] Checking for system updates...
[2026-06-13 15:09:34,179.179 INFO    ] 200
[2026-06-13 15:09:34,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:34,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:34,213.213 INFO    ] No update needed
[2026-06-13 15:09:34,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:34,235.235 INFO    ] 200
[2026-06-13 15:09:34,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:34,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:34,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:34,309.309 INFO    ] No camera update needed
[2026-06-13 15:09:34,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:34,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:34,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:34,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:36,356.356 INFO    ] ================================================
[2026-06-13 15:09:36,371.371 INFO    ] Launching Daemon at Sat Jun 13 15:09:36 IST 2026
[2026-06-13 15:09:36,382.382 INFO    ] ================================================
[2026-06-13 15:09:36,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:36
[2026-06-13 15:09:37,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:37,480.480 INFO    ] Initializing speech engine...
[2026-06-13 15:09:37,487.487 INFO    ] 2026-06-13 15:09:37
[2026-06-13 15:09:37,810.810 INFO    ] 2026-06-13 15:09:37
[2026-06-13 15:09:37,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:09:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:09:38,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:09:38,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:09:38,187.187 INFO    ] time= 13/06/2026 15:09:38
[2026-06-13 15:09:38,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:09:38,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:09:38,278.278 INFO    ] No existing commands found in stream
[2026-06-13 15:09:43,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:09:43,294.294 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 15:09:43,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:09:43,799.799 INFO    ] Checking for system updates...
[2026-06-13 15:09:43,821.821 INFO    ] 200
[2026-06-13 15:09:43,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:43,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:09:43,854.854 INFO    ] No update needed
[2026-06-13 15:09:43,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:43,875.875 INFO    ] 200
[2026-06-13 15:09:43,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:43,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:43,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:09:43,942.942 INFO    ] No camera update needed
[2026-06-13 15:09:43,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:43,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:43,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:43,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:45,990.990 INFO    ] ================================================
[2026-06-13 15:09:46,005.005 INFO    ] Launching Daemon at Sat Jun 13 15:09:46 IST 2026
[2026-06-13 15:09:46,016.016 INFO    ] ================================================
[2026-06-13 15:09:46,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:46
[2026-06-13 15:09:46,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:46,841.841 INFO    ] Initializing speech engine...
[2026-06-13 15:09:46,844.844 INFO    ] 2026-06-13 15:09:46
[2026-06-13 15:09:47,051.051 INFO    ] 2026-06-13 15:09:47
[2026-06-13 15:09:47,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:09:47,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:09:47,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:09:47,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:09:47,469.469 INFO    ] time= 13/06/2026 15:09:47
[2026-06-13 15:09:47,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:09:47,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:09:47,566.566 INFO    ] No existing commands found in stream
[2026-06-13 15:09:52,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:09:52,579.579 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 15:09:56,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:09:56,528.528 INFO    ] Checking for system updates...
[2026-06-13 15:09:56,549.549 INFO    ] 200
[2026-06-13 15:09:56,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:56,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:56,583.583 INFO    ] No update needed
[2026-06-13 15:09:56,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 15:09:56,604.604 INFO    ] 200
[2026-06-13 15:09:56,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:09:56,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:09:56,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:09:56,651.651 INFO    ] No camera update needed
[2026-06-13 15:09:56,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:09:56,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:09:56,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:09:56,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:09:58,698.698 INFO    ] ================================================
[2026-06-13 15:09:58,714.714 INFO    ] Launching Daemon at Sat Jun 13 15:09:58 IST 2026
[2026-06-13 15:09:58,725.725 INFO    ] ================================================
[2026-06-13 15:09:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:09:59
[2026-06-13 15:09:59,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:09:59,635.635 INFO    ] Initializing speech engine...
[2026-06-13 15:09:59,644.644 INFO    ] 2026-06-13 15:09:59
[2026-06-13 15:09:59,910.910 INFO    ] 2026-06-13 15:09:59
[2026-06-13 15:09:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:00,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:00,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:00,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:00,339.339 INFO    ] time= 13/06/2026 15:10:00
[2026-06-13 15:10:00,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:00,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:00,522.522 INFO    ] No existing commands found in stream
[2026-06-13 15:10:05,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:10:05,537.537 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 15:10:07,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:10:07,556.556 INFO    ] Checking for system updates...
[2026-06-13 15:10:07,592.592 INFO    ] 200
[2026-06-13 15:10:07,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:07,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:10:07,653.653 INFO    ] No update needed
[2026-06-13 15:10:07,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 15:10:07,675.675 INFO    ] 200
[2026-06-13 15:10:07,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:07,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:10:07,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:10:07,728.728 INFO    ] No camera update needed
[2026-06-13 15:10:07,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:10:07,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:10:07,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:10:07,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:10:09,778.778 INFO    ] ================================================
[2026-06-13 15:10:09,794.794 INFO    ] Launching Daemon at Sat Jun 13 15:10:09 IST 2026
[2026-06-13 15:10:09,806.806 INFO    ] ================================================
[2026-06-13 15:10:10,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:10:10
[2026-06-13 15:10:10,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:10:10,597.597 INFO    ] Initializing speech engine...
[2026-06-13 15:10:10,602.602 INFO    ] 2026-06-13 15:10:10
[2026-06-13 15:10:10,809.809 INFO    ] 2026-06-13 15:10:10
[2026-06-13 15:10:10,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:10,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:11,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:11,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:11,213.213 INFO    ] time= 13/06/2026 15:10:11
[2026-06-13 15:10:11,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:11,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:11,337.337 INFO    ] No existing commands found in stream
[2026-06-13 15:10:16,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:10:16,351.351 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 15:10:20,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:10:20,748.748 INFO    ] Checking for system updates...
[2026-06-13 15:10:20,769.769 INFO    ] 200
[2026-06-13 15:10:20,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:20,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:10:20,801.801 INFO    ] No update needed
[2026-06-13 15:10:20,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 15:10:20,822.822 INFO    ] 200
[2026-06-13 15:10:20,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:20,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:10:20,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:10:20,893.893 INFO    ] No camera update needed
[2026-06-13 15:10:20,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:10:20,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:10:20,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:10:20,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:10:22,940.940 INFO    ] ================================================
[2026-06-13 15:10:22,956.956 INFO    ] Launching Daemon at Sat Jun 13 15:10:22 IST 2026
[2026-06-13 15:10:22,967.967 INFO    ] ================================================
[2026-06-13 15:10:23,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:10:23
[2026-06-13 15:10:23,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:10:23,755.755 INFO    ] Initializing speech engine...
[2026-06-13 15:10:23,760.760 INFO    ] 2026-06-13 15:10:23
[2026-06-13 15:10:23,988.988 INFO    ] 2026-06-13 15:10:23
[2026-06-13 15:10:24,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:24,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:24,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:24,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:24,420.420 INFO    ] time= 13/06/2026 15:10:24
[2026-06-13 15:10:24,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:24,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:24,545.545 INFO    ] No existing commands found in stream
[2026-06-13 15:10:29,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:10:29,559.559 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 15:10:32,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:10:32,633.633 INFO    ] Checking for system updates...
[2026-06-13 15:10:32,660.660 INFO    ] 200
[2026-06-13 15:10:32,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:32,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:10:32,705.705 INFO    ] No update needed
[2026-06-13 15:10:32,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 15:10:32,729.729 INFO    ] 200
[2026-06-13 15:10:32,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:32,758.758 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:10:32,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:10:32,782.782 INFO    ] No camera update needed
[2026-06-13 15:10:32,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:10:32,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:10:32,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:10:32,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:10:34,830.830 INFO    ] ================================================
[2026-06-13 15:10:34,844.844 INFO    ] Launching Daemon at Sat Jun 13 15:10:34 IST 2026
[2026-06-13 15:10:34,855.855 INFO    ] ================================================
[2026-06-13 15:10:35,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:10:35
[2026-06-13 15:10:35,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:10:35,677.677 INFO    ] Initializing speech engine...
[2026-06-13 15:10:35,687.687 INFO    ] 2026-06-13 15:10:35
[2026-06-13 15:10:35,892.892 INFO    ] 2026-06-13 15:10:35
[2026-06-13 15:10:35,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:36,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:36,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:36,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:36,301.301 INFO    ] time= 13/06/2026 15:10:36
[2026-06-13 15:10:36,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:36,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:36,406.406 INFO    ] No existing commands found in stream
[2026-06-13 15:10:41,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:10:41,418.418 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 15:10:42,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:10:42,991.991 INFO    ] Checking for system updates...
[2026-06-13 15:10:43,013.013 INFO    ] 200
[2026-06-13 15:10:43,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:43,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:10:43,045.045 INFO    ] No update needed
[2026-06-13 15:10:43,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 15:10:43,068.068 INFO    ] 200
[2026-06-13 15:10:43,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:43,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:10:43,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:10:43,134.134 INFO    ] No camera update needed
[2026-06-13 15:10:43,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:10:43,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:10:43,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:10:43,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:10:45,181.181 INFO    ] ================================================
[2026-06-13 15:10:45,196.196 INFO    ] Launching Daemon at Sat Jun 13 15:10:45 IST 2026
[2026-06-13 15:10:45,206.206 INFO    ] ================================================
[2026-06-13 15:10:45,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:10:45
[2026-06-13 15:10:45,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:10:46,034.034 INFO    ] Initializing speech engine...
[2026-06-13 15:10:46,038.038 INFO    ] 2026-06-13 15:10:46
[2026-06-13 15:10:46,242.242 INFO    ] 2026-06-13 15:10:46
[2026-06-13 15:10:46,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:46,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:46,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:46,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:46,649.649 INFO    ] time= 13/06/2026 15:10:46
[2026-06-13 15:10:46,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:46,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:46,760.760 INFO    ] No existing commands found in stream
[2026-06-13 15:10:51,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:10:51,772.772 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 15:10:54,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:10:54,328.328 INFO    ] Checking for system updates...
[2026-06-13 15:10:54,350.350 INFO    ] 200
[2026-06-13 15:10:54,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:54,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:10:54,383.383 INFO    ] No update needed
[2026-06-13 15:10:54,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 15:10:54,403.403 INFO    ] 200
[2026-06-13 15:10:54,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:10:54,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:10:54,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:10:54,469.469 INFO    ] No camera update needed
[2026-06-13 15:10:54,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:10:54,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:10:54,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:10:54,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:10:56,522.522 INFO    ] ================================================
[2026-06-13 15:10:56,537.537 INFO    ] Launching Daemon at Sat Jun 13 15:10:56 IST 2026
[2026-06-13 15:10:56,552.552 INFO    ] ================================================
[2026-06-13 15:10:56,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:10:56
[2026-06-13 15:10:57,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:10:57,357.357 INFO    ] Initializing speech engine...
[2026-06-13 15:10:57,362.362 INFO    ] 2026-06-13 15:10:57
[2026-06-13 15:10:57,566.566 INFO    ] 2026-06-13 15:10:57
[2026-06-13 15:10:57,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:10:57,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:10:57,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:10:57,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:10:57,974.974 INFO    ] time= 13/06/2026 15:10:57
[2026-06-13 15:10:58,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:10:58,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:10:58,078.078 INFO    ] No existing commands found in stream
[2026-06-13 15:11:03,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:11:03,088.088 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 15:11:10,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:11:10,822.822 INFO    ] Checking for system updates...
[2026-06-13 15:11:10,857.857 INFO    ] 200
[2026-06-13 15:11:10,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:10,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:10,912.912 INFO    ] No update needed
[2026-06-13 15:11:10,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 15:11:10,933.933 INFO    ] 200
[2026-06-13 15:11:10,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:10,959.959 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:11:11,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:11,098.098 INFO    ] No camera update needed
[2026-06-13 15:11:11,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:11:11,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:11:11,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:11:11,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:11:13,144.144 INFO    ] ================================================
[2026-06-13 15:11:13,161.161 INFO    ] Launching Daemon at Sat Jun 13 15:11:13 IST 2026
[2026-06-13 15:11:13,172.172 INFO    ] ================================================
[2026-06-13 15:11:13,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:11:13
[2026-06-13 15:11:13,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:11:13,972.972 INFO    ] Initializing speech engine...
[2026-06-13 15:11:13,977.977 INFO    ] 2026-06-13 15:11:13
[2026-06-13 15:11:14,180.180 INFO    ] 2026-06-13 15:11:14
[2026-06-13 15:11:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:11:14,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:11:14,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:11:14,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:11:14,570.570 INFO    ] time= 13/06/2026 15:11:14
[2026-06-13 15:11:14,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:11:14,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:11:14,635.635 INFO    ] No existing commands found in stream
[2026-06-13 15:11:19,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:11:19,647.647 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 15:11:22,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:11:22,909.909 INFO    ] Checking for system updates...
[2026-06-13 15:11:22,930.930 INFO    ] 200
[2026-06-13 15:11:22,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:22,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:22,966.966 INFO    ] No update needed
[2026-06-13 15:11:22,967.967 INFO    ] Checking for camera pi updates...
[2026-06-13 15:11:22,988.988 INFO    ] 200
[2026-06-13 15:11:22,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:23,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:11:23,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:23,060.060 INFO    ] No camera update needed
[2026-06-13 15:11:23,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:11:23,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:11:23,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:11:23,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:11:25,110.110 INFO    ] ================================================
[2026-06-13 15:11:25,125.125 INFO    ] Launching Daemon at Sat Jun 13 15:11:25 IST 2026
[2026-06-13 15:11:25,137.137 INFO    ] ================================================
[2026-06-13 15:11:25,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:11:25
[2026-06-13 15:11:25,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:11:26,000.000 INFO    ] Initializing speech engine...
[2026-06-13 15:11:26,006.006 INFO    ] 2026-06-13 15:11:26
[2026-06-13 15:11:26,218.218 INFO    ] 2026-06-13 15:11:26
[2026-06-13 15:11:26,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:11:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:11:26,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:11:26,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:11:26,649.649 INFO    ] time= 13/06/2026 15:11:26
[2026-06-13 15:11:26,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:11:26,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:11:26,744.744 INFO    ] No existing commands found in stream
[2026-06-13 15:11:31,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:11:31,758.758 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 15:11:34,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:11:34,899.899 INFO    ] Checking for system updates...
[2026-06-13 15:11:34,921.921 INFO    ] 200
[2026-06-13 15:11:34,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:34,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:34,955.955 INFO    ] No update needed
[2026-06-13 15:11:34,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 15:11:34,977.977 INFO    ] 200
[2026-06-13 15:11:34,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:35,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:11:35,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:35,048.048 INFO    ] No camera update needed
[2026-06-13 15:11:35,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:11:35,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:11:35,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:11:35,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:11:37,100.100 INFO    ] ================================================
[2026-06-13 15:11:37,117.117 INFO    ] Launching Daemon at Sat Jun 13 15:11:37 IST 2026
[2026-06-13 15:11:37,129.129 INFO    ] ================================================
[2026-06-13 15:11:37,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:11:37
[2026-06-13 15:11:38,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:11:38,465.465 INFO    ] Initializing speech engine...
[2026-06-13 15:11:38,477.477 INFO    ] 2026-06-13 15:11:38
[2026-06-13 15:11:38,687.687 INFO    ] 2026-06-13 15:11:38
[2026-06-13 15:11:38,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:11:38,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:11:38,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:11:39,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:11:39,106.106 INFO    ] time= 13/06/2026 15:11:39
[2026-06-13 15:11:39,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:11:39,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:11:39,213.213 INFO    ] No existing commands found in stream
[2026-06-13 15:11:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:11:44,227.227 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 15:11:46,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:11:46,865.865 INFO    ] Checking for system updates...
[2026-06-13 15:11:46,886.886 INFO    ] 200
[2026-06-13 15:11:46,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:46,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:11:46,922.922 INFO    ] No update needed
[2026-06-13 15:11:46,924.924 INFO    ] Checking for camera pi updates...
[2026-06-13 15:11:46,948.948 INFO    ] 200
[2026-06-13 15:11:46,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:46,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:11:47,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:11:47,026.026 INFO    ] No camera update needed
[2026-06-13 15:11:47,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:11:47,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:11:47,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:11:47,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:11:49,075.075 INFO    ] ================================================
[2026-06-13 15:11:49,095.095 INFO    ] Launching Daemon at Sat Jun 13 15:11:49 IST 2026
[2026-06-13 15:11:49,107.107 INFO    ] ================================================
[2026-06-13 15:11:49,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:11:49
[2026-06-13 15:11:49,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:11:49,981.981 INFO    ] Initializing speech engine...
[2026-06-13 15:11:49,986.986 INFO    ] 2026-06-13 15:11:49
[2026-06-13 15:11:50,198.198 INFO    ] 2026-06-13 15:11:50
[2026-06-13 15:11:50,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:11:50,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:11:50,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:11:50,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:11:50,619.619 INFO    ] time= 13/06/2026 15:11:50
[2026-06-13 15:11:50,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:11:50,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:11:50,727.727 INFO    ] No existing commands found in stream
[2026-06-13 15:11:55,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:11:55,742.742 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 15:11:58,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:11:58,084.084 INFO    ] Checking for system updates...
[2026-06-13 15:11:58,107.107 INFO    ] 200
[2026-06-13 15:11:58,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:58,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:11:58,141.141 INFO    ] No update needed
[2026-06-13 15:11:58,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 15:11:58,164.164 INFO    ] 200
[2026-06-13 15:11:58,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:11:58,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:11:58,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:11:58,230.230 INFO    ] No camera update needed
[2026-06-13 15:11:58,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:11:58,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:11:58,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:11:58,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:00,279.279 INFO    ] ================================================
[2026-06-13 15:12:00,294.294 INFO    ] Launching Daemon at Sat Jun 13 15:12:00 IST 2026
[2026-06-13 15:12:00,306.306 INFO    ] ================================================
[2026-06-13 15:12:00,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:00
[2026-06-13 15:12:01,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:01,485.485 INFO    ] Initializing speech engine...
[2026-06-13 15:12:01,492.492 INFO    ] 2026-06-13 15:12:01
[2026-06-13 15:12:01,803.803 INFO    ] 2026-06-13 15:12:01
[2026-06-13 15:12:01,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:02,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:02,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:02,175.175 INFO    ] time= 13/06/2026 15:12:02
[2026-06-13 15:12:02,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:02,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:02,303.303 INFO    ] No existing commands found in stream
[2026-06-13 15:12:07,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:12:07,316.316 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 15:12:11,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:12:11,286.286 INFO    ] Checking for system updates...
[2026-06-13 15:12:11,306.306 INFO    ] 200
[2026-06-13 15:12:11,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:11,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:11,339.339 INFO    ] No update needed
[2026-06-13 15:12:11,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 15:12:11,360.360 INFO    ] 200
[2026-06-13 15:12:11,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:11,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:12:11,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:12:11,424.424 INFO    ] No camera update needed
[2026-06-13 15:12:11,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:12:11,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:12:11,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:12:11,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:13,471.471 INFO    ] ================================================
[2026-06-13 15:12:13,487.487 INFO    ] Launching Daemon at Sat Jun 13 15:12:13 IST 2026
[2026-06-13 15:12:13,498.498 INFO    ] ================================================
[2026-06-13 15:12:13,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:13
[2026-06-13 15:12:14,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:14,344.344 INFO    ] Initializing speech engine...
[2026-06-13 15:12:14,357.357 INFO    ] 2026-06-13 15:12:14
[2026-06-13 15:12:14,566.566 INFO    ] 2026-06-13 15:12:14
[2026-06-13 15:12:14,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:14,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:14,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:14,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:14,955.955 INFO    ] time= 13/06/2026 15:12:14
[2026-06-13 15:12:14,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:14,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:15,090.090 INFO    ] No existing commands found in stream
[2026-06-13 15:12:20,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:12:20,115.115 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 15:12:21,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:12:21,480.480 INFO    ] Checking for system updates...
[2026-06-13 15:12:21,502.502 INFO    ] 200
[2026-06-13 15:12:21,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:21,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:12:21,535.535 INFO    ] No update needed
[2026-06-13 15:12:21,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 15:12:21,556.556 INFO    ] 200
[2026-06-13 15:12:21,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:21,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:12:21,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:12:21,622.622 INFO    ] No camera update needed
[2026-06-13 15:12:21,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:12:21,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:12:21,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:12:21,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:23,672.672 INFO    ] ================================================
[2026-06-13 15:12:23,687.687 INFO    ] Launching Daemon at Sat Jun 13 15:12:23 IST 2026
[2026-06-13 15:12:23,698.698 INFO    ] ================================================
[2026-06-13 15:12:24,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:24
[2026-06-13 15:12:24,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:24,585.585 INFO    ] Initializing speech engine...
[2026-06-13 15:12:24,595.595 INFO    ] 2026-06-13 15:12:24
[2026-06-13 15:12:24,808.808 INFO    ] 2026-06-13 15:12:24
[2026-06-13 15:12:24,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:25,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:25,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:25,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:25,234.234 INFO    ] time= 13/06/2026 15:12:25
[2026-06-13 15:12:25,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:25,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:25,354.354 INFO    ] No existing commands found in stream
[2026-06-13 15:12:30,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:12:30,371.371 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 15:12:34,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:12:34,198.198 INFO    ] Checking for system updates...
[2026-06-13 15:12:34,219.219 INFO    ] 200
[2026-06-13 15:12:34,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:34,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:34,253.253 INFO    ] No update needed
[2026-06-13 15:12:34,254.254 INFO    ] Checking for camera pi updates...
[2026-06-13 15:12:34,276.276 INFO    ] 200
[2026-06-13 15:12:34,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:34,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:12:34,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:34,345.345 INFO    ] No camera update needed
[2026-06-13 15:12:34,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:12:34,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:12:34,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:12:34,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:36,394.394 INFO    ] ================================================
[2026-06-13 15:12:36,411.411 INFO    ] Launching Daemon at Sat Jun 13 15:12:36 IST 2026
[2026-06-13 15:12:36,422.422 INFO    ] ================================================
[2026-06-13 15:12:36,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:36
[2026-06-13 15:12:37,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:37,842.842 INFO    ] Initializing speech engine...
[2026-06-13 15:12:37,852.852 INFO    ] 2026-06-13 15:12:37
[2026-06-13 15:12:38,114.114 INFO    ] 2026-06-13 15:12:38
[2026-06-13 15:12:38,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:38,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:38,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:38,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:38,566.566 INFO    ] time= 13/06/2026 15:12:38
[2026-06-13 15:12:38,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:38,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:38,774.774 INFO    ] No existing commands found in stream
[2026-06-13 15:12:43,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:12:43,789.789 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 15:12:44,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:12:44,259.259 INFO    ] Checking for system updates...
[2026-06-13 15:12:44,280.280 INFO    ] 200
[2026-06-13 15:12:44,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:44,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:44,313.313 INFO    ] No update needed
[2026-06-13 15:12:44,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 15:12:44,333.333 INFO    ] 200
[2026-06-13 15:12:44,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:44,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:12:44,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:44,409.409 INFO    ] No camera update needed
[2026-06-13 15:12:44,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:12:44,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:12:44,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:12:44,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:46,457.457 INFO    ] ================================================
[2026-06-13 15:12:46,473.473 INFO    ] Launching Daemon at Sat Jun 13 15:12:46 IST 2026
[2026-06-13 15:12:46,484.484 INFO    ] ================================================
[2026-06-13 15:12:46,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:46
[2026-06-13 15:12:47,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:47,296.296 INFO    ] Initializing speech engine...
[2026-06-13 15:12:47,309.309 INFO    ] 2026-06-13 15:12:47
[2026-06-13 15:12:47,517.517 INFO    ] 2026-06-13 15:12:47
[2026-06-13 15:12:47,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:47,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:47,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:47,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:47,929.929 INFO    ] time= 13/06/2026 15:12:47
[2026-06-13 15:12:47,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:48,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:48,113.113 INFO    ] No existing commands found in stream
[2026-06-13 15:12:53,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:12:53,142.142 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 15:12:54,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:12:54,879.879 INFO    ] Checking for system updates...
[2026-06-13 15:12:54,901.901 INFO    ] 200
[2026-06-13 15:12:54,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:54,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:54,937.937 INFO    ] No update needed
[2026-06-13 15:12:54,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 15:12:54,991.991 INFO    ] 200
[2026-06-13 15:12:54,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:12:55,019.019 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:12:55,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:12:55,061.061 INFO    ] No camera update needed
[2026-06-13 15:12:55,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:12:55,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:12:55,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:12:55,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:12:57,111.111 INFO    ] ================================================
[2026-06-13 15:12:57,127.127 INFO    ] Launching Daemon at Sat Jun 13 15:12:57 IST 2026
[2026-06-13 15:12:57,138.138 INFO    ] ================================================
[2026-06-13 15:12:57,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:12:57
[2026-06-13 15:12:57,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:12:57,926.926 INFO    ] Initializing speech engine...
[2026-06-13 15:12:57,935.935 INFO    ] 2026-06-13 15:12:57
[2026-06-13 15:12:58,150.150 INFO    ] 2026-06-13 15:12:58
[2026-06-13 15:12:58,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:12:58,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:12:58,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:12:58,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:12:58,561.561 INFO    ] time= 13/06/2026 15:12:58
[2026-06-13 15:12:58,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:12:58,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:12:58,672.672 INFO    ] No existing commands found in stream
[2026-06-13 15:13:03,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:03,685.685 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 15:13:05,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:13:05,304.304 INFO    ] Checking for system updates...
[2026-06-13 15:13:05,327.327 INFO    ] 200
[2026-06-13 15:13:05,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:05,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:05,360.360 INFO    ] No update needed
[2026-06-13 15:13:05,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:05,383.383 INFO    ] 200
[2026-06-13 15:13:05,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:05,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:05,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:05,454.454 INFO    ] No camera update needed
[2026-06-13 15:13:05,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:05,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:05,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:05,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:07,510.510 INFO    ] ================================================
[2026-06-13 15:13:07,526.526 INFO    ] Launching Daemon at Sat Jun 13 15:13:07 IST 2026
[2026-06-13 15:13:07,538.538 INFO    ] ================================================
[2026-06-13 15:13:07,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:07
[2026-06-13 15:13:08,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:08,348.348 INFO    ] Initializing speech engine...
[2026-06-13 15:13:08,353.353 INFO    ] 2026-06-13 15:13:08
[2026-06-13 15:13:08,562.562 INFO    ] 2026-06-13 15:13:08
[2026-06-13 15:13:08,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:08,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:08,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:08,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:08,971.971 INFO    ] time= 13/06/2026 15:13:08
[2026-06-13 15:13:09,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:09,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:09,082.082 INFO    ] No existing commands found in stream
[2026-06-13 15:13:14,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:14,094.094 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 15:13:14,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:13:14,617.617 INFO    ] Checking for system updates...
[2026-06-13 15:13:14,638.638 INFO    ] 200
[2026-06-13 15:13:14,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:14,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:14,672.672 INFO    ] No update needed
[2026-06-13 15:13:14,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:14,696.696 INFO    ] 200
[2026-06-13 15:13:14,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:14,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:14,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:14,863.863 INFO    ] No camera update needed
[2026-06-13 15:13:14,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:14,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:14,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:14,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:16,913.913 INFO    ] ================================================
[2026-06-13 15:13:16,929.929 INFO    ] Launching Daemon at Sat Jun 13 15:13:16 IST 2026
[2026-06-13 15:13:16,940.940 INFO    ] ================================================
[2026-06-13 15:13:17,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:17
[2026-06-13 15:13:17,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:17,716.716 INFO    ] Initializing speech engine...
[2026-06-13 15:13:17,724.724 INFO    ] 2026-06-13 15:13:17
[2026-06-13 15:13:17,939.939 INFO    ] 2026-06-13 15:13:17
[2026-06-13 15:13:17,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:18,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:18,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:18,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:18,336.336 INFO    ] time= 13/06/2026 15:13:18
[2026-06-13 15:13:18,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:18,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:18,459.459 INFO    ] No existing commands found in stream
[2026-06-13 15:13:23,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:23,476.476 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 15:13:27,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:13:27,424.424 INFO    ] Checking for system updates...
[2026-06-13 15:13:27,448.448 INFO    ] 200
[2026-06-13 15:13:27,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:27,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:27,483.483 INFO    ] No update needed
[2026-06-13 15:13:27,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:27,507.507 INFO    ] 200
[2026-06-13 15:13:27,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:27,532.532 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:27,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:27,578.578 INFO    ] No camera update needed
[2026-06-13 15:13:27,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:27,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:27,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:27,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:29,618.618 INFO    ] ================================================
[2026-06-13 15:13:29,626.626 INFO    ] Launching Daemon at Sat Jun 13 15:13:29 IST 2026
[2026-06-13 15:13:29,632.632 INFO    ] ================================================
[2026-06-13 15:13:30,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:30
[2026-06-13 15:13:30,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:30,478.478 INFO    ] Initializing speech engine...
[2026-06-13 15:13:30,487.487 INFO    ] 2026-06-13 15:13:30
[2026-06-13 15:13:30,695.695 INFO    ] 2026-06-13 15:13:30
[2026-06-13 15:13:30,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:30,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:31,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:31,109.109 INFO    ] time= 13/06/2026 15:13:31
[2026-06-13 15:13:31,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:31,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:31,216.216 INFO    ] No existing commands found in stream
[2026-06-13 15:13:36,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:36,228.228 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 15:13:36,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:13:36,630.630 INFO    ] Checking for system updates...
[2026-06-13 15:13:36,651.651 INFO    ] 200
[2026-06-13 15:13:36,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:36,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:13:36,684.684 INFO    ] No update needed
[2026-06-13 15:13:36,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:36,704.704 INFO    ] 200
[2026-06-13 15:13:36,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:36,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:36,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:13:36,767.767 INFO    ] No camera update needed
[2026-06-13 15:13:36,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:36,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:36,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:36,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:38,814.814 INFO    ] ================================================
[2026-06-13 15:13:38,830.830 INFO    ] Launching Daemon at Sat Jun 13 15:13:38 IST 2026
[2026-06-13 15:13:38,841.841 INFO    ] ================================================
[2026-06-13 15:13:39,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:39
[2026-06-13 15:13:39,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:39,628.628 INFO    ] Initializing speech engine...
[2026-06-13 15:13:39,639.639 INFO    ] 2026-06-13 15:13:39
[2026-06-13 15:13:39,845.845 INFO    ] 2026-06-13 15:13:39
[2026-06-13 15:13:39,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:40,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:40,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:40,262.262 INFO    ] time= 13/06/2026 15:13:40
[2026-06-13 15:13:40,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:40,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:40,369.369 INFO    ] No existing commands found in stream
[2026-06-13 15:13:45,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:45,382.382 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 15:13:46,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:13:46,093.093 INFO    ] Checking for system updates...
[2026-06-13 15:13:46,114.114 INFO    ] 200
[2026-06-13 15:13:46,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:46,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:46,151.151 INFO    ] No update needed
[2026-06-13 15:13:46,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:46,172.172 INFO    ] 200
[2026-06-13 15:13:46,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:46,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:46,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:13:46,237.237 INFO    ] No camera update needed
[2026-06-13 15:13:46,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:46,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:46,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:46,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:48,284.284 INFO    ] ================================================
[2026-06-13 15:13:48,300.300 INFO    ] Launching Daemon at Sat Jun 13 15:13:48 IST 2026
[2026-06-13 15:13:48,312.312 INFO    ] ================================================
[2026-06-13 15:13:48,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:48
[2026-06-13 15:13:49,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:49,174.174 INFO    ] Initializing speech engine...
[2026-06-13 15:13:49,179.179 INFO    ] 2026-06-13 15:13:49
[2026-06-13 15:13:49,388.388 INFO    ] 2026-06-13 15:13:49
[2026-06-13 15:13:49,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:49,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:49,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:49,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:49,793.793 INFO    ] time= 13/06/2026 15:13:49
[2026-06-13 15:13:49,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:49,993.993 INFO    ] No existing commands found in stream
[2026-06-13 15:13:55,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:13:55,021.021 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 15:13:55,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:13:55,465.465 INFO    ] Checking for system updates...
[2026-06-13 15:13:55,487.487 INFO    ] 200
[2026-06-13 15:13:55,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:55,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:13:55,529.529 INFO    ] No update needed
[2026-06-13 15:13:55,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 15:13:55,551.551 INFO    ] 200
[2026-06-13 15:13:55,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:13:55,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:13:55,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:13:55,622.622 INFO    ] No camera update needed
[2026-06-13 15:13:55,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:13:55,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:13:55,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:13:55,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:13:57,670.670 INFO    ] ================================================
[2026-06-13 15:13:57,685.685 INFO    ] Launching Daemon at Sat Jun 13 15:13:57 IST 2026
[2026-06-13 15:13:57,697.697 INFO    ] ================================================
[2026-06-13 15:13:58,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:13:58
[2026-06-13 15:13:58,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:13:58,484.484 INFO    ] Initializing speech engine...
[2026-06-13 15:13:58,489.489 INFO    ] 2026-06-13 15:13:58
[2026-06-13 15:13:58,705.705 INFO    ] 2026-06-13 15:13:58
[2026-06-13 15:13:58,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:13:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:13:58,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:13:59,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:13:59,131.131 INFO    ] time= 13/06/2026 15:13:59
[2026-06-13 15:13:59,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:13:59,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:13:59,266.266 INFO    ] No existing commands found in stream
[2026-06-13 15:14:04,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:04,277.277 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 15:14:07,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:14:07,044.044 INFO    ] Checking for system updates...
[2026-06-13 15:14:07,065.065 INFO    ] 200
[2026-06-13 15:14:07,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:07,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:07,098.098 INFO    ] No update needed
[2026-06-13 15:14:07,099.099 INFO    ] Checking for camera pi updates...
[2026-06-13 15:14:07,121.121 INFO    ] 200
[2026-06-13 15:14:07,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:07,148.148 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:14:07,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:07,187.187 INFO    ] No camera update needed
[2026-06-13 15:14:07,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:14:07,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:14:07,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:14:07,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:14:09,234.234 INFO    ] ================================================
[2026-06-13 15:14:09,249.249 INFO    ] Launching Daemon at Sat Jun 13 15:14:09 IST 2026
[2026-06-13 15:14:09,260.260 INFO    ] ================================================
[2026-06-13 15:14:09,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:14:09
[2026-06-13 15:14:09,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:14:10,124.124 INFO    ] Initializing speech engine...
[2026-06-13 15:14:10,130.130 INFO    ] 2026-06-13 15:14:10
[2026-06-13 15:14:10,340.340 INFO    ] 2026-06-13 15:14:10
[2026-06-13 15:14:10,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:14:10,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:14:10,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:14:10,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:14:10,746.746 INFO    ] time= 13/06/2026 15:14:10
[2026-06-13 15:14:10,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:14:10,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:14:10,863.863 INFO    ] No existing commands found in stream
[2026-06-13 15:14:15,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:15,877.877 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 15:14:17,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:14:17,047.047 INFO    ] Checking for system updates...
[2026-06-13 15:14:17,069.069 INFO    ] 200
[2026-06-13 15:14:17,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:17,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:17,102.102 INFO    ] No update needed
[2026-06-13 15:14:17,104.104 INFO    ] Checking for camera pi updates...
[2026-06-13 15:14:17,123.123 INFO    ] 200
[2026-06-13 15:14:17,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:17,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:14:17,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:17,185.185 INFO    ] No camera update needed
[2026-06-13 15:14:17,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:14:17,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:14:17,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:14:17,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:14:19,233.233 INFO    ] ================================================
[2026-06-13 15:14:19,249.249 INFO    ] Launching Daemon at Sat Jun 13 15:14:19 IST 2026
[2026-06-13 15:14:19,260.260 INFO    ] ================================================
[2026-06-13 15:14:19,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:14:19
[2026-06-13 15:14:19,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:14:20,050.050 INFO    ] Initializing speech engine...
[2026-06-13 15:14:20,054.054 INFO    ] 2026-06-13 15:14:20
[2026-06-13 15:14:20,260.260 INFO    ] 2026-06-13 15:14:20
[2026-06-13 15:14:20,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:14:20,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:14:20,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:14:20,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:14:20,671.671 INFO    ] time= 13/06/2026 15:14:20
[2026-06-13 15:14:20,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:14:20,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:14:20,782.782 INFO    ] No existing commands found in stream
[2026-06-13 15:14:25,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:25,795.795 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 15:14:27,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:14:27,132.132 INFO    ] Checking for system updates...
[2026-06-13 15:14:27,153.153 INFO    ] 200
[2026-06-13 15:14:27,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:27,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:27,186.186 INFO    ] No update needed
[2026-06-13 15:14:27,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 15:14:27,208.208 INFO    ] 200
[2026-06-13 15:14:27,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:27,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:14:27,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:27,271.271 INFO    ] No camera update needed
[2026-06-13 15:14:27,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:14:27,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:14:27,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:14:27,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:14:29,320.320 INFO    ] ================================================
[2026-06-13 15:14:29,335.335 INFO    ] Launching Daemon at Sat Jun 13 15:14:29 IST 2026
[2026-06-13 15:14:29,346.346 INFO    ] ================================================
[2026-06-13 15:14:29,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:14:29
[2026-06-13 15:14:30,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:14:30,200.200 INFO    ] Initializing speech engine...
[2026-06-13 15:14:30,210.210 INFO    ] 2026-06-13 15:14:30
[2026-06-13 15:14:30,421.421 INFO    ] 2026-06-13 15:14:30
[2026-06-13 15:14:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:14:30,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:14:30,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:14:30,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:14:30,824.824 INFO    ] time= 13/06/2026 15:14:30
[2026-06-13 15:14:30,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:14:30,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:14:30,942.942 INFO    ] No existing commands found in stream
[2026-06-13 15:14:35,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:35,955.955 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 15:14:38,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:14:38,760.760 INFO    ] Checking for system updates...
[2026-06-13 15:14:38,781.781 INFO    ] 200
[2026-06-13 15:14:38,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:38,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:14:38,815.815 INFO    ] No update needed
[2026-06-13 15:14:38,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 15:14:38,839.839 INFO    ] 200
[2026-06-13 15:14:38,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:38,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:14:38,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:38,907.907 INFO    ] No camera update needed
[2026-06-13 15:14:38,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:14:38,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:14:38,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:14:38,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:14:40,957.957 INFO    ] ================================================
[2026-06-13 15:14:40,972.972 INFO    ] Launching Daemon at Sat Jun 13 15:14:40 IST 2026
[2026-06-13 15:14:40,983.983 INFO    ] ================================================
[2026-06-13 15:14:41,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:14:41
[2026-06-13 15:14:41,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:14:41,818.818 INFO    ] Initializing speech engine...
[2026-06-13 15:14:41,823.823 INFO    ] 2026-06-13 15:14:41
[2026-06-13 15:14:42,027.027 INFO    ] 2026-06-13 15:14:42
[2026-06-13 15:14:42,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:14:42,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:14:42,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:14:42,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:14:42,433.433 INFO    ] time= 13/06/2026 15:14:42
[2026-06-13 15:14:42,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:14:42,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:14:42,542.542 INFO    ] No existing commands found in stream
[2026-06-13 15:14:47,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:47,555.555 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 15:14:48,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:14:48,968.968 INFO    ] Checking for system updates...
[2026-06-13 15:14:48,990.990 INFO    ] 200
[2026-06-13 15:14:48,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:49,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:14:49,023.023 INFO    ] No update needed
[2026-06-13 15:14:49,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 15:14:49,043.043 INFO    ] 200
[2026-06-13 15:14:49,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:14:49,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:14:49,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:14:49,104.104 INFO    ] No camera update needed
[2026-06-13 15:14:49,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:14:49,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:14:49,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:14:49,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:14:51,153.153 INFO    ] ================================================
[2026-06-13 15:14:51,169.169 INFO    ] Launching Daemon at Sat Jun 13 15:14:51 IST 2026
[2026-06-13 15:14:51,182.182 INFO    ] ================================================
[2026-06-13 15:14:51,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:14:51
[2026-06-13 15:14:51,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:14:51,983.983 INFO    ] Initializing speech engine...
[2026-06-13 15:14:51,996.996 INFO    ] 2026-06-13 15:14:51
[2026-06-13 15:14:52,203.203 INFO    ] 2026-06-13 15:14:52
[2026-06-13 15:14:52,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:14:52,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:14:52,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:14:52,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:14:52,603.603 INFO    ] time= 13/06/2026 15:14:52
[2026-06-13 15:14:52,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:14:52,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:14:52,718.718 INFO    ] No existing commands found in stream
[2026-06-13 15:14:57,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:14:57,735.735 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 15:15:00,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:15:00,161.161 INFO    ] Checking for system updates...
[2026-06-13 15:15:00,182.182 INFO    ] 200
[2026-06-13 15:15:00,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:00,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:00,216.216 INFO    ] No update needed
[2026-06-13 15:15:00,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:00,237.237 INFO    ] 200
[2026-06-13 15:15:00,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:00,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:00,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:00,296.296 INFO    ] No camera update needed
[2026-06-13 15:15:00,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:00,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:00,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:00,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:02,339.339 INFO    ] ================================================
[2026-06-13 15:15:02,351.351 INFO    ] Launching Daemon at Sat Jun 13 15:15:02 IST 2026
[2026-06-13 15:15:02,364.364 INFO    ] ================================================
[2026-06-13 15:15:03,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:03
[2026-06-13 15:15:03,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:03,996.996 INFO    ] Initializing speech engine...
[2026-06-13 15:15:04,003.003 INFO    ] 2026-06-13 15:15:03
[2026-06-13 15:15:04,263.263 INFO    ] 2026-06-13 15:15:04
[2026-06-13 15:15:04,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:04,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:04,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:04,734.734 INFO    ] time= 13/06/2026 15:15:04
[2026-06-13 15:15:04,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:04,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:04,885.885 INFO    ] No existing commands found in stream
[2026-06-13 15:15:09,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:15:09,909.909 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 15:15:10,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:15:10,774.774 INFO    ] Checking for system updates...
[2026-06-13 15:15:10,795.795 INFO    ] 200
[2026-06-13 15:15:10,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:10,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:10,829.829 INFO    ] No update needed
[2026-06-13 15:15:10,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:10,850.850 INFO    ] 200
[2026-06-13 15:15:10,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:10,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:10,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:10,913.913 INFO    ] No camera update needed
[2026-06-13 15:15:10,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:10,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:10,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:10,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:12,960.960 INFO    ] ================================================
[2026-06-13 15:15:12,975.975 INFO    ] Launching Daemon at Sat Jun 13 15:15:12 IST 2026
[2026-06-13 15:15:12,987.987 INFO    ] ================================================
[2026-06-13 15:15:13,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:13
[2026-06-13 15:15:13,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:13,879.879 INFO    ] Initializing speech engine...
[2026-06-13 15:15:13,904.904 INFO    ] 2026-06-13 15:15:13
[2026-06-13 15:15:14,192.192 INFO    ] 2026-06-13 15:15:14
[2026-06-13 15:15:14,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:14,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:14,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:14,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:14,568.568 INFO    ] time= 13/06/2026 15:15:14
[2026-06-13 15:15:14,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:14,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:14,691.691 INFO    ] No existing commands found in stream
[2026-06-13 15:15:19,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:15:19,713.713 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 15:15:21,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:15:21,168.168 INFO    ] Checking for system updates...
[2026-06-13 15:15:21,190.190 INFO    ] 200
[2026-06-13 15:15:21,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:21,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:21,225.225 INFO    ] No update needed
[2026-06-13 15:15:21,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:21,247.247 INFO    ] 200
[2026-06-13 15:15:21,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:21,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:21,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:21,409.409 INFO    ] No camera update needed
[2026-06-13 15:15:21,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:21,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:21,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:21,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:23,456.456 INFO    ] ================================================
[2026-06-13 15:15:23,472.472 INFO    ] Launching Daemon at Sat Jun 13 15:15:23 IST 2026
[2026-06-13 15:15:23,483.483 INFO    ] ================================================
[2026-06-13 15:15:23,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:23
[2026-06-13 15:15:24,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:24,327.327 INFO    ] Initializing speech engine...
[2026-06-13 15:15:24,333.333 INFO    ] 2026-06-13 15:15:24
[2026-06-13 15:15:24,541.541 INFO    ] 2026-06-13 15:15:24
[2026-06-13 15:15:24,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:24,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:24,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:24,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:24,949.949 INFO    ] time= 13/06/2026 15:15:24
[2026-06-13 15:15:24,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:24,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:25,066.066 INFO    ] No existing commands found in stream
[2026-06-13 15:15:30,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:15:30,080.080 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 15:15:31,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:15:31,102.102 INFO    ] Checking for system updates...
[2026-06-13 15:15:31,123.123 INFO    ] 200
[2026-06-13 15:15:31,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:31,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:15:31,156.156 INFO    ] No update needed
[2026-06-13 15:15:31,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:31,178.178 INFO    ] 200
[2026-06-13 15:15:31,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:31,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:31,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:15:31,228.228 INFO    ] No camera update needed
[2026-06-13 15:15:31,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:31,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:31,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:31,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:33,262.262 INFO    ] ================================================
[2026-06-13 15:15:33,271.271 INFO    ] Launching Daemon at Sat Jun 13 15:15:33 IST 2026
[2026-06-13 15:15:33,277.277 INFO    ] ================================================
[2026-06-13 15:15:33,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:33
[2026-06-13 15:15:33,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:34,067.067 INFO    ] Initializing speech engine...
[2026-06-13 15:15:34,079.079 INFO    ] 2026-06-13 15:15:34
[2026-06-13 15:15:34,285.285 INFO    ] 2026-06-13 15:15:34
[2026-06-13 15:15:34,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:34,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:34,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:34,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:34,671.671 INFO    ] time= 13/06/2026 15:15:34
[2026-06-13 15:15:34,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:34,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:34,807.807 INFO    ] No existing commands found in stream
[2026-06-13 15:15:39,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:15:39,820.820 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 15:15:41,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:15:41,508.508 INFO    ] Checking for system updates...
[2026-06-13 15:15:41,530.530 INFO    ] 200
[2026-06-13 15:15:41,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:41,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:41,562.562 INFO    ] No update needed
[2026-06-13 15:15:41,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:41,583.583 INFO    ] 200
[2026-06-13 15:15:41,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:41,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:41,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:41,647.647 INFO    ] No camera update needed
[2026-06-13 15:15:41,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:41,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:41,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:41,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:43,697.697 INFO    ] ================================================
[2026-06-13 15:15:43,713.713 INFO    ] Launching Daemon at Sat Jun 13 15:15:43 IST 2026
[2026-06-13 15:15:43,724.724 INFO    ] ================================================
[2026-06-13 15:15:44,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:44
[2026-06-13 15:15:44,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:44,527.527 INFO    ] Initializing speech engine...
[2026-06-13 15:15:44,532.532 INFO    ] 2026-06-13 15:15:44
[2026-06-13 15:15:44,737.737 INFO    ] 2026-06-13 15:15:44
[2026-06-13 15:15:44,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:44,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:44,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:45,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:45,130.130 INFO    ] time= 13/06/2026 15:15:45
[2026-06-13 15:15:45,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:45,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:45,256.256 INFO    ] No existing commands found in stream
[2026-06-13 15:15:50,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:15:50,270.270 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 15:15:54,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:15:54,385.385 INFO    ] Checking for system updates...
[2026-06-13 15:15:54,405.405 INFO    ] 200
[2026-06-13 15:15:54,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:54,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:15:54,439.439 INFO    ] No update needed
[2026-06-13 15:15:54,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 15:15:54,460.460 INFO    ] 200
[2026-06-13 15:15:54,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:15:54,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:15:54,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:15:54,523.523 INFO    ] No camera update needed
[2026-06-13 15:15:54,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:15:54,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:15:54,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:15:54,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:15:56,572.572 INFO    ] ================================================
[2026-06-13 15:15:56,587.587 INFO    ] Launching Daemon at Sat Jun 13 15:15:56 IST 2026
[2026-06-13 15:15:56,598.598 INFO    ] ================================================
[2026-06-13 15:15:56,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:15:56
[2026-06-13 15:15:57,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:15:57,396.396 INFO    ] Initializing speech engine...
[2026-06-13 15:15:57,401.401 INFO    ] 2026-06-13 15:15:57
[2026-06-13 15:15:57,608.608 INFO    ] 2026-06-13 15:15:57
[2026-06-13 15:15:57,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:15:57,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:15:57,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:15:57,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:15:58,013.013 INFO    ] time= 13/06/2026 15:15:57
[2026-06-13 15:15:58,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:15:58,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:15:58,131.131 INFO    ] No existing commands found in stream
[2026-06-13 15:16:03,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:16:03,144.144 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 15:16:05,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:16:05,563.563 INFO    ] Checking for system updates...
[2026-06-13 15:16:05,584.584 INFO    ] 200
[2026-06-13 15:16:05,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:05,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:05,617.617 INFO    ] No update needed
[2026-06-13 15:16:05,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 15:16:05,642.642 INFO    ] 200
[2026-06-13 15:16:05,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:05,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:16:05,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:05,715.715 INFO    ] No camera update needed
[2026-06-13 15:16:05,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:16:05,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:16:05,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:16:05,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:16:07,763.763 INFO    ] ================================================
[2026-06-13 15:16:07,779.779 INFO    ] Launching Daemon at Sat Jun 13 15:16:07 IST 2026
[2026-06-13 15:16:07,790.790 INFO    ] ================================================
[2026-06-13 15:16:08,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:16:08
[2026-06-13 15:16:08,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:16:08,600.600 INFO    ] Initializing speech engine...
[2026-06-13 15:16:08,613.613 INFO    ] 2026-06-13 15:16:08
[2026-06-13 15:16:08,820.820 INFO    ] 2026-06-13 15:16:08
[2026-06-13 15:16:08,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:16:09,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:16:09,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:16:09,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:16:09,230.230 INFO    ] time= 13/06/2026 15:16:09
[2026-06-13 15:16:09,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:16:09,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:16:09,341.341 INFO    ] No existing commands found in stream
[2026-06-13 15:16:14,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:16:14,355.355 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 15:16:16,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:16:16,990.990 INFO    ] Checking for system updates...
[2026-06-13 15:16:17,011.011 INFO    ] 200
[2026-06-13 15:16:17,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:17,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:17,044.044 INFO    ] No update needed
[2026-06-13 15:16:17,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 15:16:17,066.066 INFO    ] 200
[2026-06-13 15:16:17,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:17,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:16:17,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:17,138.138 INFO    ] No camera update needed
[2026-06-13 15:16:17,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:16:17,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:16:17,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:16:17,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:16:19,186.186 INFO    ] ================================================
[2026-06-13 15:16:19,202.202 INFO    ] Launching Daemon at Sat Jun 13 15:16:19 IST 2026
[2026-06-13 15:16:19,213.213 INFO    ] ================================================
[2026-06-13 15:16:19,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:16:19
[2026-06-13 15:16:19,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:16:20,008.008 INFO    ] Initializing speech engine...
[2026-06-13 15:16:20,022.022 INFO    ] 2026-06-13 15:16:20
[2026-06-13 15:16:20,228.228 INFO    ] 2026-06-13 15:16:20
[2026-06-13 15:16:20,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:16:20,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:16:20,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:16:20,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:16:20,645.645 INFO    ] time= 13/06/2026 15:16:20
[2026-06-13 15:16:20,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:16:20,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:16:20,743.743 INFO    ] No existing commands found in stream
[2026-06-13 15:16:25,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:16:25,754.754 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 15:16:28,461.461 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 15:16:28,485.485 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 15:16:28,494.494 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 15:16:28,503.503 INFO    ] None
[2026-06-13 15:16:28,506.506 INFO    ] Checking for system updates...
[2026-06-13 15:16:28,550.550 INFO    ] 200
[2026-06-13 15:16:28,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:28,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:16:28,608.608 INFO    ] No update needed
[2026-06-13 15:16:28,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 15:16:28,648.648 INFO    ] 200
[2026-06-13 15:16:28,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:28,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:16:34,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:16:34,068.068 INFO    ] No camera update needed
[2026-06-13 15:16:34,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:16:34,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:16:34,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:16:34,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:16:36,133.133 INFO    ] ================================================
[2026-06-13 15:16:36,148.148 INFO    ] Launching Daemon at Sat Jun 13 15:16:36 IST 2026
[2026-06-13 15:16:36,159.159 INFO    ] ================================================
[2026-06-13 15:16:36,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:16:36
[2026-06-13 15:16:36,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:16:36,946.946 INFO    ] Initializing speech engine...
[2026-06-13 15:16:36,954.954 INFO    ] 2026-06-13 15:16:36
[2026-06-13 15:16:37,170.170 INFO    ] 2026-06-13 15:16:37
[2026-06-13 15:16:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:16:37,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:16:37,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:16:37,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:16:37,585.585 INFO    ] time= 13/06/2026 15:16:37
[2026-06-13 15:16:37,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:16:37,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:16:37,721.721 INFO    ] No existing commands found in stream
[2026-06-13 15:16:42,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:16:42,734.734 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 15:16:44,121.121 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 15:16:44,149.149 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 15:16:44,166.166 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 15:16:44,176.176 INFO    ] None
[2026-06-13 15:16:44,179.179 INFO    ] Checking for system updates...
[2026-06-13 15:16:44,237.237 INFO    ] 200
[2026-06-13 15:16:44,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:44,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:44,280.280 INFO    ] No update needed
[2026-06-13 15:16:44,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 15:16:44,301.301 INFO    ] 200
[2026-06-13 15:16:44,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:16:44,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:16:51,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:16:51,790.790 INFO    ] No camera update needed
[2026-06-13 15:16:51,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:16:51,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:16:51,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:16:51,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:16:53,855.855 INFO    ] ================================================
[2026-06-13 15:16:53,870.870 INFO    ] Launching Daemon at Sat Jun 13 15:16:53 IST 2026
[2026-06-13 15:16:53,881.881 INFO    ] ================================================
[2026-06-13 15:16:54,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:16:54
[2026-06-13 15:16:54,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:16:54,814.814 INFO    ] Initializing speech engine...
[2026-06-13 15:16:54,819.819 INFO    ] 2026-06-13 15:16:54
[2026-06-13 15:16:55,083.083 INFO    ] 2026-06-13 15:16:55
[2026-06-13 15:16:55,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:16:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:16:55,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:16:55,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:16:55,539.539 INFO    ] time= 13/06/2026 15:16:55
[2026-06-13 15:16:55,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:16:55,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:16:55,786.786 INFO    ] No existing commands found in stream
[2026-06-13 15:17:00,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:00,799.799 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 15:17:03,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:17:03,902.902 INFO    ] Checking for system updates...
[2026-06-13 15:17:03,925.925 INFO    ] 200
[2026-06-13 15:17:03,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:03,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:03,957.957 INFO    ] No update needed
[2026-06-13 15:17:03,959.959 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:03,979.979 INFO    ] 200
[2026-06-13 15:17:03,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:04,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:04,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:04,059.059 INFO    ] No camera update needed
[2026-06-13 15:17:04,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:04,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:04,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:04,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:17:06,099.099 INFO    ] ================================================
[2026-06-13 15:17:06,114.114 INFO    ] Launching Daemon at Sat Jun 13 15:17:06 IST 2026
[2026-06-13 15:17:06,125.125 INFO    ] ================================================
[2026-06-13 15:17:06,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:17:06
[2026-06-13 15:17:06,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:17:06,929.929 INFO    ] Initializing speech engine...
[2026-06-13 15:17:06,939.939 INFO    ] 2026-06-13 15:17:06
[2026-06-13 15:17:07,146.146 INFO    ] 2026-06-13 15:17:07
[2026-06-13 15:17:07,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:17:07,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:17:07,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:17:07,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:17:07,550.550 INFO    ] time= 13/06/2026 15:17:07
[2026-06-13 15:17:07,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:17:07,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:17:07,659.659 INFO    ] No existing commands found in stream
[2026-06-13 15:17:12,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:12,672.672 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 15:17:16,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:17:16,132.132 INFO    ] Checking for system updates...
[2026-06-13 15:17:16,154.154 INFO    ] 200
[2026-06-13 15:17:16,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:16,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:16,189.189 INFO    ] No update needed
[2026-06-13 15:17:16,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:16,210.210 INFO    ] 200
[2026-06-13 15:17:16,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:16,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:16,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:16,279.279 INFO    ] No camera update needed
[2026-06-13 15:17:16,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:16,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:16,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:16,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:17:18,329.329 INFO    ] ================================================
[2026-06-13 15:17:18,345.345 INFO    ] Launching Daemon at Sat Jun 13 15:17:18 IST 2026
[2026-06-13 15:17:18,356.356 INFO    ] ================================================
[2026-06-13 15:17:18,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:17:18
[2026-06-13 15:17:19,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:17:19,153.153 INFO    ] Initializing speech engine...
[2026-06-13 15:17:19,158.158 INFO    ] 2026-06-13 15:17:19
[2026-06-13 15:17:19,389.389 INFO    ] 2026-06-13 15:17:19
[2026-06-13 15:17:19,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:17:19,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:17:19,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:17:19,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:17:19,810.810 INFO    ] time= 13/06/2026 15:17:19
[2026-06-13 15:17:19,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:17:19,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:17:19,950.950 INFO    ] No existing commands found in stream
[2026-06-13 15:17:24,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:24,963.963 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 15:17:26,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:17:26,266.266 INFO    ] Checking for system updates...
[2026-06-13 15:17:26,286.286 INFO    ] 200
[2026-06-13 15:17:26,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:26,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:26,321.321 INFO    ] No update needed
[2026-06-13 15:17:26,322.322 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:26,343.343 INFO    ] 200
[2026-06-13 15:17:26,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:26,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:26,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:26,411.411 INFO    ] No camera update needed
[2026-06-13 15:17:26,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:26,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:26,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:26,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:17:28,450.450 INFO    ] ================================================
[2026-06-13 15:17:28,460.460 INFO    ] Launching Daemon at Sat Jun 13 15:17:28 IST 2026
[2026-06-13 15:17:28,468.468 INFO    ] ================================================
[2026-06-13 15:17:29,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:17:29
[2026-06-13 15:17:29,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:17:30,202.202 INFO    ] Initializing speech engine...
[2026-06-13 15:17:30,208.208 INFO    ] 2026-06-13 15:17:30
[2026-06-13 15:17:30,502.502 INFO    ] 2026-06-13 15:17:30
[2026-06-13 15:17:30,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:17:30,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:17:30,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:17:30,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:17:30,973.973 INFO    ] time= 13/06/2026 15:17:30
[2026-06-13 15:17:31,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:17:31,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:17:31,206.206 INFO    ] No existing commands found in stream
[2026-06-13 15:17:36,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:36,241.241 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 15:17:38,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:17:38,191.191 INFO    ] Checking for system updates...
[2026-06-13 15:17:38,213.213 INFO    ] 200
[2026-06-13 15:17:38,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:38,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:38,249.249 INFO    ] No update needed
[2026-06-13 15:17:38,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:38,271.271 INFO    ] 200
[2026-06-13 15:17:38,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:38,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:38,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:17:38,338.338 INFO    ] No camera update needed
[2026-06-13 15:17:38,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:38,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:38,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:38,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:17:40,387.387 INFO    ] ================================================
[2026-06-13 15:17:40,402.402 INFO    ] Launching Daemon at Sat Jun 13 15:17:40 IST 2026
[2026-06-13 15:17:40,413.413 INFO    ] ================================================
[2026-06-13 15:17:40,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:17:40
[2026-06-13 15:17:41,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:17:41,237.237 INFO    ] Initializing speech engine...
[2026-06-13 15:17:41,243.243 INFO    ] 2026-06-13 15:17:41
[2026-06-13 15:17:41,453.453 INFO    ] 2026-06-13 15:17:41
[2026-06-13 15:17:41,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:17:41,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:17:41,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:17:41,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:17:41,878.878 INFO    ] time= 13/06/2026 15:17:41
[2026-06-13 15:17:41,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:17:41,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:17:41,988.988 INFO    ] No existing commands found in stream
[2026-06-13 15:17:47,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:47,005.005 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 15:17:48,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:17:48,159.159 INFO    ] Checking for system updates...
[2026-06-13 15:17:48,181.181 INFO    ] 200
[2026-06-13 15:17:48,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:48,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:48,218.218 INFO    ] No update needed
[2026-06-13 15:17:48,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:48,239.239 INFO    ] 200
[2026-06-13 15:17:48,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:48,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:48,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:48,311.311 INFO    ] No camera update needed
[2026-06-13 15:17:48,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:48,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:48,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:48,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:17:50,351.351 INFO    ] ================================================
[2026-06-13 15:17:50,367.367 INFO    ] Launching Daemon at Sat Jun 13 15:17:50 IST 2026
[2026-06-13 15:17:50,377.377 INFO    ] ================================================
[2026-06-13 15:17:50,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:17:50
[2026-06-13 15:17:51,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:17:51,535.535 INFO    ] Initializing speech engine...
[2026-06-13 15:17:51,555.555 INFO    ] 2026-06-13 15:17:51
[2026-06-13 15:17:51,828.828 INFO    ] 2026-06-13 15:17:51
[2026-06-13 15:17:51,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:17:52,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:17:52,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:17:52,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:17:52,177.177 INFO    ] time= 13/06/2026 15:17:52
[2026-06-13 15:17:52,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:17:52,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:17:52,257.257 INFO    ] No existing commands found in stream
[2026-06-13 15:17:57,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:17:57,271.271 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 15:17:59,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:17:59,110.110 INFO    ] Checking for system updates...
[2026-06-13 15:17:59,131.131 INFO    ] 200
[2026-06-13 15:17:59,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:59,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:59,164.164 INFO    ] No update needed
[2026-06-13 15:17:59,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 15:17:59,189.189 INFO    ] 200
[2026-06-13 15:17:59,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:17:59,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:17:59,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:17:59,252.252 INFO    ] No camera update needed
[2026-06-13 15:17:59,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:17:59,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:17:59,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:17:59,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:18:01,292.292 INFO    ] ================================================
[2026-06-13 15:18:01,308.308 INFO    ] Launching Daemon at Sat Jun 13 15:18:01 IST 2026
[2026-06-13 15:18:01,320.320 INFO    ] ================================================
[2026-06-13 15:18:01,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:18:01
[2026-06-13 15:18:02,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:18:02,649.649 INFO    ] Initializing speech engine...
[2026-06-13 15:18:02,664.664 INFO    ] 2026-06-13 15:18:02
[2026-06-13 15:18:02,989.989 INFO    ] 2026-06-13 15:18:02
[2026-06-13 15:18:03,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:18:03,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:18:03,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:18:03,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:18:03,410.410 INFO    ] time= 13/06/2026 15:18:03
[2026-06-13 15:18:03,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:18:03,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:18:03,511.511 INFO    ] No existing commands found in stream
[2026-06-13 15:18:08,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:18:08,526.526 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 15:18:12,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:18:12,560.560 INFO    ] Checking for system updates...
[2026-06-13 15:18:12,582.582 INFO    ] 200
[2026-06-13 15:18:12,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:12,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:12,615.615 INFO    ] No update needed
[2026-06-13 15:18:12,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 15:18:12,636.636 INFO    ] 200
[2026-06-13 15:18:12,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:12,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:18:12,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:12,704.704 INFO    ] No camera update needed
[2026-06-13 15:18:12,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:18:12,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:18:12,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:18:12,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:18:14,755.755 INFO    ] ================================================
[2026-06-13 15:18:14,770.770 INFO    ] Launching Daemon at Sat Jun 13 15:18:14 IST 2026
[2026-06-13 15:18:14,781.781 INFO    ] ================================================
[2026-06-13 15:18:15,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:18:15
[2026-06-13 15:18:15,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:18:15,634.634 INFO    ] Initializing speech engine...
[2026-06-13 15:18:15,640.640 INFO    ] 2026-06-13 15:18:15
[2026-06-13 15:18:15,849.849 INFO    ] 2026-06-13 15:18:15
[2026-06-13 15:18:15,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:18:16,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:18:16,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:18:16,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:18:16,251.251 INFO    ] time= 13/06/2026 15:18:16
[2026-06-13 15:18:16,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:18:16,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:18:16,367.367 INFO    ] No existing commands found in stream
[2026-06-13 15:18:21,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:18:21,404.404 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 15:18:25,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:18:25,161.161 INFO    ] Checking for system updates...
[2026-06-13 15:18:25,182.182 INFO    ] 200
[2026-06-13 15:18:25,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:25,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:25,219.219 INFO    ] No update needed
[2026-06-13 15:18:25,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 15:18:25,240.240 INFO    ] 200
[2026-06-13 15:18:25,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:25,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:18:25,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:25,312.312 INFO    ] No camera update needed
[2026-06-13 15:18:25,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:18:25,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:18:25,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:18:25,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:18:27,358.358 INFO    ] ================================================
[2026-06-13 15:18:27,374.374 INFO    ] Launching Daemon at Sat Jun 13 15:18:27 IST 2026
[2026-06-13 15:18:27,385.385 INFO    ] ================================================
[2026-06-13 15:18:27,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:18:27
[2026-06-13 15:18:28,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:18:28,177.177 INFO    ] Initializing speech engine...
[2026-06-13 15:18:28,188.188 INFO    ] 2026-06-13 15:18:28
[2026-06-13 15:18:28,390.390 INFO    ] 2026-06-13 15:18:28
[2026-06-13 15:18:28,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:18:28,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:18:28,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:18:28,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:18:28,811.811 INFO    ] time= 13/06/2026 15:18:28
[2026-06-13 15:18:28,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:18:28,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:18:28,908.908 INFO    ] No existing commands found in stream
[2026-06-13 15:18:33,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:18:33,925.925 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 15:18:35,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:18:35,861.861 INFO    ] Checking for system updates...
[2026-06-13 15:18:35,884.884 INFO    ] 200
[2026-06-13 15:18:35,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:35,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:18:35,917.917 INFO    ] No update needed
[2026-06-13 15:18:35,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 15:18:35,938.938 INFO    ] 200
[2026-06-13 15:18:35,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:35,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:18:35,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:18:36,001.001 INFO    ] No camera update needed
[2026-06-13 15:18:36,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:18:36,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:18:36,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:18:36,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:18:38,048.048 INFO    ] ================================================
[2026-06-13 15:18:38,063.063 INFO    ] Launching Daemon at Sat Jun 13 15:18:38 IST 2026
[2026-06-13 15:18:38,074.074 INFO    ] ================================================
[2026-06-13 15:18:38,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:18:38
[2026-06-13 15:18:38,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:18:38,932.932 INFO    ] Initializing speech engine...
[2026-06-13 15:18:38,942.942 INFO    ] 2026-06-13 15:18:38
[2026-06-13 15:18:39,154.154 INFO    ] 2026-06-13 15:18:39
[2026-06-13 15:18:39,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:18:39,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:18:39,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:18:39,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:18:39,578.578 INFO    ] time= 13/06/2026 15:18:39
[2026-06-13 15:18:39,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:18:39,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:18:39,681.681 INFO    ] No existing commands found in stream
[2026-06-13 15:18:44,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:18:44,699.699 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 15:18:48,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:18:48,755.755 INFO    ] Checking for system updates...
[2026-06-13 15:18:48,776.776 INFO    ] 200
[2026-06-13 15:18:48,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:48,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:48,813.813 INFO    ] No update needed
[2026-06-13 15:18:48,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 15:18:48,834.834 INFO    ] 200
[2026-06-13 15:18:48,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:48,861.861 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:18:48,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:18:48,908.908 INFO    ] No camera update needed
[2026-06-13 15:18:48,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:18:48,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:18:48,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:18:48,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:18:50,958.958 INFO    ] ================================================
[2026-06-13 15:18:50,973.973 INFO    ] Launching Daemon at Sat Jun 13 15:18:50 IST 2026
[2026-06-13 15:18:50,984.984 INFO    ] ================================================
[2026-06-13 15:18:51,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:18:51
[2026-06-13 15:18:51,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:18:51,838.838 INFO    ] Initializing speech engine...
[2026-06-13 15:18:51,844.844 INFO    ] 2026-06-13 15:18:51
[2026-06-13 15:18:52,051.051 INFO    ] 2026-06-13 15:18:52
[2026-06-13 15:18:52,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:18:52,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:18:52,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:18:52,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:18:52,474.474 INFO    ] time= 13/06/2026 15:18:52
[2026-06-13 15:18:52,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:18:52,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:18:52,569.569 INFO    ] No existing commands found in stream
[2026-06-13 15:18:57,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:18:57,583.583 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 15:18:57,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:18:57,964.964 INFO    ] Checking for system updates...
[2026-06-13 15:18:57,986.986 INFO    ] 200
[2026-06-13 15:18:57,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:58,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:18:58,020.020 INFO    ] No update needed
[2026-06-13 15:18:58,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 15:18:58,043.043 INFO    ] 200
[2026-06-13 15:18:58,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:18:58,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:18:58,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:18:58,206.206 INFO    ] No camera update needed
[2026-06-13 15:18:58,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:18:58,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:18:58,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:18:58,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:00,258.258 INFO    ] ================================================
[2026-06-13 15:19:00,273.273 INFO    ] Launching Daemon at Sat Jun 13 15:19:00 IST 2026
[2026-06-13 15:19:00,284.284 INFO    ] ================================================
[2026-06-13 15:19:00,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:00
[2026-06-13 15:19:00,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:01,123.123 INFO    ] Initializing speech engine...
[2026-06-13 15:19:01,129.129 INFO    ] 2026-06-13 15:19:01
[2026-06-13 15:19:01,339.339 INFO    ] 2026-06-13 15:19:01
[2026-06-13 15:19:01,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:01,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:01,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:01,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:01,731.731 INFO    ] time= 13/06/2026 15:19:01
[2026-06-13 15:19:01,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:01,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:01,858.858 INFO    ] No existing commands found in stream
[2026-06-13 15:19:06,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:19:06,868.868 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 15:19:11,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:19:11,069.069 INFO    ] Checking for system updates...
[2026-06-13 15:19:11,090.090 INFO    ] 200
[2026-06-13 15:19:11,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:11,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:11,123.123 INFO    ] No update needed
[2026-06-13 15:19:11,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 15:19:11,146.146 INFO    ] 200
[2026-06-13 15:19:11,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:11,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:19:11,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:11,207.207 INFO    ] No camera update needed
[2026-06-13 15:19:11,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:19:11,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:19:11,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:19:11,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:13,255.255 INFO    ] ================================================
[2026-06-13 15:19:13,270.270 INFO    ] Launching Daemon at Sat Jun 13 15:19:13 IST 2026
[2026-06-13 15:19:13,281.281 INFO    ] ================================================
[2026-06-13 15:19:13,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:13
[2026-06-13 15:19:13,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:14,064.064 INFO    ] Initializing speech engine...
[2026-06-13 15:19:14,068.068 INFO    ] 2026-06-13 15:19:14
[2026-06-13 15:19:14,273.273 INFO    ] 2026-06-13 15:19:14
[2026-06-13 15:19:14,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:14,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:14,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:14,716.716 INFO    ] time= 13/06/2026 15:19:14
[2026-06-13 15:19:14,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:14,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:14,859.859 INFO    ] No existing commands found in stream
[2026-06-13 15:19:19,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:19:19,872.872 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 15:19:20,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:19:20,344.344 INFO    ] Checking for system updates...
[2026-06-13 15:19:20,365.365 INFO    ] 200
[2026-06-13 15:19:20,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:20,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:20,400.400 INFO    ] No update needed
[2026-06-13 15:19:20,401.401 INFO    ] Checking for camera pi updates...
[2026-06-13 15:19:20,423.423 INFO    ] 200
[2026-06-13 15:19:20,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:20,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:19:20,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:20,501.501 INFO    ] No camera update needed
[2026-06-13 15:19:20,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:19:20,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:19:20,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:19:20,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:22,549.549 INFO    ] ================================================
[2026-06-13 15:19:22,564.564 INFO    ] Launching Daemon at Sat Jun 13 15:19:22 IST 2026
[2026-06-13 15:19:22,575.575 INFO    ] ================================================
[2026-06-13 15:19:22,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:22
[2026-06-13 15:19:23,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:23,378.378 INFO    ] Initializing speech engine...
[2026-06-13 15:19:23,383.383 INFO    ] 2026-06-13 15:19:23
[2026-06-13 15:19:23,587.587 INFO    ] 2026-06-13 15:19:23
[2026-06-13 15:19:23,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:23,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:23,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:23,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:24,001.001 INFO    ] time= 13/06/2026 15:19:23
[2026-06-13 15:19:24,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:24,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:24,172.172 INFO    ] No existing commands found in stream
[2026-06-13 15:19:29,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:19:29,198.198 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 15:19:31,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:19:31,155.155 INFO    ] Checking for system updates...
[2026-06-13 15:19:31,176.176 INFO    ] 200
[2026-06-13 15:19:31,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:31,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:31,213.213 INFO    ] No update needed
[2026-06-13 15:19:31,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 15:19:31,234.234 INFO    ] 200
[2026-06-13 15:19:31,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:31,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:19:31,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:19:31,295.295 INFO    ] No camera update needed
[2026-06-13 15:19:31,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:19:31,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:19:31,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:19:31,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:33,327.327 INFO    ] ================================================
[2026-06-13 15:19:33,335.335 INFO    ] Launching Daemon at Sat Jun 13 15:19:33 IST 2026
[2026-06-13 15:19:33,341.341 INFO    ] ================================================
[2026-06-13 15:19:33,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:33
[2026-06-13 15:19:34,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:34,130.130 INFO    ] Initializing speech engine...
[2026-06-13 15:19:34,133.133 INFO    ] 2026-06-13 15:19:34
[2026-06-13 15:19:34,354.354 INFO    ] 2026-06-13 15:19:34
[2026-06-13 15:19:34,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:34,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:34,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:34,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:34,773.773 INFO    ] time= 13/06/2026 15:19:34
[2026-06-13 15:19:34,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:34,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:34,879.879 INFO    ] No existing commands found in stream
[2026-06-13 15:19:39,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:19:39,893.893 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 15:19:42,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:19:42,109.109 INFO    ] Checking for system updates...
[2026-06-13 15:19:42,129.129 INFO    ] 200
[2026-06-13 15:19:42,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:42,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:19:42,163.163 INFO    ] No update needed
[2026-06-13 15:19:42,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 15:19:42,184.184 INFO    ] 200
[2026-06-13 15:19:42,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:42,209.209 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:19:42,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:19:42,252.252 INFO    ] No camera update needed
[2026-06-13 15:19:42,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:19:42,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:19:42,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:19:42,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:44,300.300 INFO    ] ================================================
[2026-06-13 15:19:44,315.315 INFO    ] Launching Daemon at Sat Jun 13 15:19:44 IST 2026
[2026-06-13 15:19:44,326.326 INFO    ] ================================================
[2026-06-13 15:19:44,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:44
[2026-06-13 15:19:45,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:45,154.154 INFO    ] Initializing speech engine...
[2026-06-13 15:19:45,159.159 INFO    ] 2026-06-13 15:19:45
[2026-06-13 15:19:45,366.366 INFO    ] 2026-06-13 15:19:45
[2026-06-13 15:19:45,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:45,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:45,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:45,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:45,778.778 INFO    ] time= 13/06/2026 15:19:45
[2026-06-13 15:19:45,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:45,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:45,889.889 INFO    ] No existing commands found in stream
[2026-06-13 15:19:50,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:19:50,903.903 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 15:19:53,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:19:53,885.885 INFO    ] Checking for system updates...
[2026-06-13 15:19:53,905.905 INFO    ] 200
[2026-06-13 15:19:53,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:53,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:19:53,939.939 INFO    ] No update needed
[2026-06-13 15:19:53,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 15:19:53,960.960 INFO    ] 200
[2026-06-13 15:19:53,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:19:53,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:19:54,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:19:54,031.031 INFO    ] No camera update needed
[2026-06-13 15:19:54,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:19:54,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:19:54,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:19:54,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:19:56,076.076 INFO    ] ================================================
[2026-06-13 15:19:56,092.092 INFO    ] Launching Daemon at Sat Jun 13 15:19:56 IST 2026
[2026-06-13 15:19:56,103.103 INFO    ] ================================================
[2026-06-13 15:19:56,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:19:56
[2026-06-13 15:19:57,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:19:57,496.496 INFO    ] Initializing speech engine...
[2026-06-13 15:19:57,504.504 INFO    ] 2026-06-13 15:19:57
[2026-06-13 15:19:57,726.726 INFO    ] 2026-06-13 15:19:57
[2026-06-13 15:19:57,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:19:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:19:57,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:19:58,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:19:58,156.156 INFO    ] time= 13/06/2026 15:19:58
[2026-06-13 15:19:58,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:19:58,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:19:58,296.296 INFO    ] No existing commands found in stream
[2026-06-13 15:20:03,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:20:03,310.310 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 15:20:09,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:20:09,078.078 INFO    ] Checking for system updates...
[2026-06-13 15:20:09,115.115 INFO    ] 200
[2026-06-13 15:20:09,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:09,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:09,180.180 INFO    ] No update needed
[2026-06-13 15:20:09,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 15:20:09,221.221 INFO    ] 200
[2026-06-13 15:20:09,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:09,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:20:09,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:09,292.292 INFO    ] No camera update needed
[2026-06-13 15:20:09,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:20:09,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:20:09,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:20:09,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:20:11,340.340 INFO    ] ================================================
[2026-06-13 15:20:11,356.356 INFO    ] Launching Daemon at Sat Jun 13 15:20:11 IST 2026
[2026-06-13 15:20:11,367.367 INFO    ] ================================================
[2026-06-13 15:20:11,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:20:11
[2026-06-13 15:20:12,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:20:12,170.170 INFO    ] Initializing speech engine...
[2026-06-13 15:20:12,178.178 INFO    ] 2026-06-13 15:20:12
[2026-06-13 15:20:12,391.391 INFO    ] 2026-06-13 15:20:12
[2026-06-13 15:20:12,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:20:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:20:12,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:20:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:20:12,797.797 INFO    ] time= 13/06/2026 15:20:12
[2026-06-13 15:20:12,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:20:12,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:20:12,906.906 INFO    ] No existing commands found in stream
[2026-06-13 15:20:17,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:20:17,920.920 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 15:20:20,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:20:20,231.231 INFO    ] Checking for system updates...
[2026-06-13 15:20:20,252.252 INFO    ] 200
[2026-06-13 15:20:20,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:20,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:20,285.285 INFO    ] No update needed
[2026-06-13 15:20:20,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 15:20:20,308.308 INFO    ] 200
[2026-06-13 15:20:20,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:20,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:20:20,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:20,379.379 INFO    ] No camera update needed
[2026-06-13 15:20:20,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:20:20,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:20:20,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:20:20,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:20:22,426.426 INFO    ] ================================================
[2026-06-13 15:20:22,442.442 INFO    ] Launching Daemon at Sat Jun 13 15:20:22 IST 2026
[2026-06-13 15:20:22,453.453 INFO    ] ================================================
[2026-06-13 15:20:22,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:20:22
[2026-06-13 15:20:23,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:20:23,329.329 INFO    ] Initializing speech engine...
[2026-06-13 15:20:23,333.333 INFO    ] 2026-06-13 15:20:23
[2026-06-13 15:20:23,541.541 INFO    ] 2026-06-13 15:20:23
[2026-06-13 15:20:23,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:20:23,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:20:23,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:20:23,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:20:23,963.963 INFO    ] time= 13/06/2026 15:20:23
[2026-06-13 15:20:23,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:20:23,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:20:24,059.059 INFO    ] No existing commands found in stream
[2026-06-13 15:20:29,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:20:29,074.074 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 15:20:31,954.954 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 15:20:31,971.971 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d517d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 15:20:31,977.977 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d517d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 15:20:31,983.983 INFO    ] None
[2026-06-13 15:20:31,985.985 INFO    ] Checking for system updates...
[2026-06-13 15:20:32,014.014 INFO    ] 200
[2026-06-13 15:20:32,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:32,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:20:32,051.051 INFO    ] No update needed
[2026-06-13 15:20:32,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 15:20:32,075.075 INFO    ] 200
[2026-06-13 15:20:32,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:32,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:20:33,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:20:33,262.262 INFO    ] No camera update needed
[2026-06-13 15:20:33,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:20:33,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:20:33,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:20:33,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:20:35,316.316 INFO    ] ================================================
[2026-06-13 15:20:35,331.331 INFO    ] Launching Daemon at Sat Jun 13 15:20:35 IST 2026
[2026-06-13 15:20:35,343.343 INFO    ] ================================================
[2026-06-13 15:20:35,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:20:35
[2026-06-13 15:20:36,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:20:36,146.146 INFO    ] Initializing speech engine...
[2026-06-13 15:20:36,152.152 INFO    ] 2026-06-13 15:20:36
[2026-06-13 15:20:36,345.345 INFO    ] 2026-06-13 15:20:36
[2026-06-13 15:20:36,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:20:36,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:20:36,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:20:36,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:20:36,794.794 INFO    ] time= 13/06/2026 15:20:36
[2026-06-13 15:20:36,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:20:36,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:20:36,955.955 INFO    ] No existing commands found in stream
[2026-06-13 15:20:41,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:20:41,969.969 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 15:20:45,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:20:45,495.495 INFO    ] Checking for system updates...
[2026-06-13 15:20:45,519.519 INFO    ] 200
[2026-06-13 15:20:45,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:45,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:45,552.552 INFO    ] No update needed
[2026-06-13 15:20:45,553.553 INFO    ] Checking for camera pi updates...
[2026-06-13 15:20:45,573.573 INFO    ] 200
[2026-06-13 15:20:45,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:45,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:20:45,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:20:45,623.623 INFO    ] No camera update needed
[2026-06-13 15:20:45,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:20:45,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:20:45,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:20:45,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:20:47,671.671 INFO    ] ================================================
[2026-06-13 15:20:47,687.687 INFO    ] Launching Daemon at Sat Jun 13 15:20:47 IST 2026
[2026-06-13 15:20:47,698.698 INFO    ] ================================================
[2026-06-13 15:20:48,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:20:48
[2026-06-13 15:20:48,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:20:48,546.546 INFO    ] Initializing speech engine...
[2026-06-13 15:20:48,552.552 INFO    ] 2026-06-13 15:20:48
[2026-06-13 15:20:48,763.763 INFO    ] 2026-06-13 15:20:48
[2026-06-13 15:20:48,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:20:48,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:20:48,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:20:49,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:20:49,188.188 INFO    ] time= 13/06/2026 15:20:49
[2026-06-13 15:20:49,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:20:49,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:20:49,287.287 INFO    ] No existing commands found in stream
[2026-06-13 15:20:54,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:20:54,305.305 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 15:20:57,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:20:57,762.762 INFO    ] Checking for system updates...
[2026-06-13 15:20:57,785.785 INFO    ] 200
[2026-06-13 15:20:57,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:57,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:20:57,821.821 INFO    ] No update needed
[2026-06-13 15:20:57,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 15:20:57,843.843 INFO    ] 200
[2026-06-13 15:20:57,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:20:57,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:20:57,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:20:57,919.919 INFO    ] No camera update needed
[2026-06-13 15:20:57,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:20:57,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:20:57,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:20:57,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:20:59,969.969 INFO    ] ================================================
[2026-06-13 15:20:59,985.985 INFO    ] Launching Daemon at Sat Jun 13 15:20:59 IST 2026
[2026-06-13 15:21:00,997.997 INFO    ] ================================================
[2026-06-13 15:21:00,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:00
[2026-06-13 15:21:00,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:00,802.802 INFO    ] Initializing speech engine...
[2026-06-13 15:21:00,808.808 INFO    ] 2026-06-13 15:21:00
[2026-06-13 15:21:01,012.012 INFO    ] 2026-06-13 15:21:00
[2026-06-13 15:21:01,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:01,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:01,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:01,315.315 INFO    ] time= 13/06/2026 15:21:01
[2026-06-13 15:21:01,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:01,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:01,376.376 INFO    ] No existing commands found in stream
[2026-06-13 15:21:06,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:21:06,390.390 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 15:21:07,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:21:07,571.571 INFO    ] Checking for system updates...
[2026-06-13 15:21:07,592.592 INFO    ] 200
[2026-06-13 15:21:07,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:07,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:07,627.627 INFO    ] No update needed
[2026-06-13 15:21:07,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 15:21:07,652.652 INFO    ] 200
[2026-06-13 15:21:07,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:07,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:21:07,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:07,714.714 INFO    ] No camera update needed
[2026-06-13 15:21:07,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:21:07,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:21:07,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:21:07,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:21:09,765.765 INFO    ] ================================================
[2026-06-13 15:21:09,781.781 INFO    ] Launching Daemon at Sat Jun 13 15:21:09 IST 2026
[2026-06-13 15:21:09,793.793 INFO    ] ================================================
[2026-06-13 15:21:10,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:10
[2026-06-13 15:21:10,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:10,592.592 INFO    ] Initializing speech engine...
[2026-06-13 15:21:10,596.596 INFO    ] 2026-06-13 15:21:10
[2026-06-13 15:21:10,816.816 INFO    ] 2026-06-13 15:21:10
[2026-06-13 15:21:10,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:10,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:11,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:11,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:11,226.226 INFO    ] time= 13/06/2026 15:21:11
[2026-06-13 15:21:11,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:11,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:11,340.340 INFO    ] No existing commands found in stream
[2026-06-13 15:21:16,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:21:16,351.351 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 15:21:19,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:21:19,705.705 INFO    ] Checking for system updates...
[2026-06-13 15:21:19,726.726 INFO    ] 200
[2026-06-13 15:21:19,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:19,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:19,761.761 INFO    ] No update needed
[2026-06-13 15:21:19,762.762 INFO    ] Checking for camera pi updates...
[2026-06-13 15:21:19,782.782 INFO    ] 200
[2026-06-13 15:21:19,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:19,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:21:19,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:19,843.843 INFO    ] No camera update needed
[2026-06-13 15:21:19,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:21:19,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:21:19,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:21:19,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:21:21,885.885 INFO    ] ================================================
[2026-06-13 15:21:21,894.894 INFO    ] Launching Daemon at Sat Jun 13 15:21:21 IST 2026
[2026-06-13 15:21:21,900.900 INFO    ] ================================================
[2026-06-13 15:21:22,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:22
[2026-06-13 15:21:22,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:22,676.676 INFO    ] Initializing speech engine...
[2026-06-13 15:21:22,682.682 INFO    ] 2026-06-13 15:21:22
[2026-06-13 15:21:22,887.887 INFO    ] 2026-06-13 15:21:22
[2026-06-13 15:21:22,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:23,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:23,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:23,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:23,284.284 INFO    ] time= 13/06/2026 15:21:23
[2026-06-13 15:21:23,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:23,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:23,405.405 INFO    ] No existing commands found in stream
[2026-06-13 15:21:28,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:21:28,417.417 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 15:21:32,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:21:32,702.702 INFO    ] Checking for system updates...
[2026-06-13 15:21:32,722.722 INFO    ] 200
[2026-06-13 15:21:32,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:32,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:32,756.756 INFO    ] No update needed
[2026-06-13 15:21:32,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 15:21:32,777.777 INFO    ] 200
[2026-06-13 15:21:32,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:32,801.801 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:21:32,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:32,831.831 INFO    ] No camera update needed
[2026-06-13 15:21:32,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:21:32,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:21:32,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:21:32,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:21:34,881.881 INFO    ] ================================================
[2026-06-13 15:21:34,897.897 INFO    ] Launching Daemon at Sat Jun 13 15:21:34 IST 2026
[2026-06-13 15:21:34,908.908 INFO    ] ================================================
[2026-06-13 15:21:35,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:35
[2026-06-13 15:21:35,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:36,142.142 INFO    ] Initializing speech engine...
[2026-06-13 15:21:36,155.155 INFO    ] 2026-06-13 15:21:36
[2026-06-13 15:21:36,478.478 INFO    ] 2026-06-13 15:21:36
[2026-06-13 15:21:36,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:36,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:36,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:36,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:36,914.914 INFO    ] time= 13/06/2026 15:21:36
[2026-06-13 15:21:36,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:37,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:37,073.073 INFO    ] No existing commands found in stream
[2026-06-13 15:21:42,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:21:42,089.089 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 15:21:43,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:21:43,076.076 INFO    ] Checking for system updates...
[2026-06-13 15:21:43,100.100 INFO    ] 200
[2026-06-13 15:21:43,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:43,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:21:43,139.139 INFO    ] No update needed
[2026-06-13 15:21:43,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 15:21:43,160.160 INFO    ] 200
[2026-06-13 15:21:43,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:43,184.184 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:21:43,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:21:43,230.230 INFO    ] No camera update needed
[2026-06-13 15:21:43,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:21:43,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:21:43,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:21:43,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:21:45,276.276 INFO    ] ================================================
[2026-06-13 15:21:45,292.292 INFO    ] Launching Daemon at Sat Jun 13 15:21:45 IST 2026
[2026-06-13 15:21:45,303.303 INFO    ] ================================================
[2026-06-13 15:21:45,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:45
[2026-06-13 15:21:45,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:46,103.103 INFO    ] Initializing speech engine...
[2026-06-13 15:21:46,108.108 INFO    ] 2026-06-13 15:21:46
[2026-06-13 15:21:46,313.313 INFO    ] 2026-06-13 15:21:46
[2026-06-13 15:21:46,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:46,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:46,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:46,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:46,713.713 INFO    ] time= 13/06/2026 15:21:46
[2026-06-13 15:21:46,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:46,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:46,837.837 INFO    ] No existing commands found in stream
[2026-06-13 15:21:51,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:21:51,849.849 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 15:21:54,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:21:54,069.069 INFO    ] Checking for system updates...
[2026-06-13 15:21:54,092.092 INFO    ] 200
[2026-06-13 15:21:54,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:54,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:54,125.125 INFO    ] No update needed
[2026-06-13 15:21:54,126.126 INFO    ] Checking for camera pi updates...
[2026-06-13 15:21:54,146.146 INFO    ] 200
[2026-06-13 15:21:54,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:21:54,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:21:54,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:21:54,209.209 INFO    ] No camera update needed
[2026-06-13 15:21:54,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:21:54,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:21:54,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:21:54,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:21:56,256.256 INFO    ] ================================================
[2026-06-13 15:21:56,272.272 INFO    ] Launching Daemon at Sat Jun 13 15:21:56 IST 2026
[2026-06-13 15:21:56,284.284 INFO    ] ================================================
[2026-06-13 15:21:56,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:21:56
[2026-06-13 15:21:56,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:21:57,070.070 INFO    ] Initializing speech engine...
[2026-06-13 15:21:57,074.074 INFO    ] 2026-06-13 15:21:57
[2026-06-13 15:21:57,282.282 INFO    ] 2026-06-13 15:21:57
[2026-06-13 15:21:57,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:21:57,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:21:57,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:21:57,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:21:57,707.707 INFO    ] time= 13/06/2026 15:21:57
[2026-06-13 15:21:57,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:21:57,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:21:57,806.806 INFO    ] No existing commands found in stream
[2026-06-13 15:22:02,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:22:02,813.813 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 15:22:05,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:22:05,760.760 INFO    ] Checking for system updates...
[2026-06-13 15:22:05,781.781 INFO    ] 200
[2026-06-13 15:22:05,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:05,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:05,814.814 INFO    ] No update needed
[2026-06-13 15:22:05,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 15:22:05,836.836 INFO    ] 200
[2026-06-13 15:22:05,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:05,862.862 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:22:05,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:05,910.910 INFO    ] No camera update needed
[2026-06-13 15:22:05,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:22:05,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:22:05,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:22:05,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:22:07,957.957 INFO    ] ================================================
[2026-06-13 15:22:07,974.974 INFO    ] Launching Daemon at Sat Jun 13 15:22:07 IST 2026
[2026-06-13 15:22:07,985.985 INFO    ] ================================================
[2026-06-13 15:22:08,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:22:08
[2026-06-13 15:22:08,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:22:08,803.803 INFO    ] Initializing speech engine...
[2026-06-13 15:22:08,814.814 INFO    ] 2026-06-13 15:22:08
[2026-06-13 15:22:09,009.009 INFO    ] 2026-06-13 15:22:09
[2026-06-13 15:22:09,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:22:09,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:22:09,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:22:09,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:22:09,399.399 INFO    ] time= 13/06/2026 15:22:09
[2026-06-13 15:22:09,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:22:09,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:22:09,480.480 INFO    ] No existing commands found in stream
[2026-06-13 15:22:14,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:22:14,499.499 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 15:22:15,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:22:15,049.049 INFO    ] Checking for system updates...
[2026-06-13 15:22:15,073.073 INFO    ] 200
[2026-06-13 15:22:15,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:15,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:22:15,106.106 INFO    ] No update needed
[2026-06-13 15:22:15,108.108 INFO    ] Checking for camera pi updates...
[2026-06-13 15:22:15,128.128 INFO    ] 200
[2026-06-13 15:22:15,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:15,154.154 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:22:15,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:22:15,176.176 INFO    ] No camera update needed
[2026-06-13 15:22:15,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:22:15,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:22:15,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:22:15,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:22:17,224.224 INFO    ] ================================================
[2026-06-13 15:22:17,240.240 INFO    ] Launching Daemon at Sat Jun 13 15:22:17 IST 2026
[2026-06-13 15:22:17,251.251 INFO    ] ================================================
[2026-06-13 15:22:17,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:22:17
[2026-06-13 15:22:17,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:22:18,029.029 INFO    ] Initializing speech engine...
[2026-06-13 15:22:18,037.037 INFO    ] 2026-06-13 15:22:18
[2026-06-13 15:22:18,257.257 INFO    ] 2026-06-13 15:22:18
[2026-06-13 15:22:18,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:22:18,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:22:18,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:22:18,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:22:18,667.667 INFO    ] time= 13/06/2026 15:22:18
[2026-06-13 15:22:18,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:22:18,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:22:18,815.815 INFO    ] No existing commands found in stream
[2026-06-13 15:22:23,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:22:23,829.829 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 15:22:26,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:22:26,701.701 INFO    ] Checking for system updates...
[2026-06-13 15:22:26,721.721 INFO    ] 200
[2026-06-13 15:22:26,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:26,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:26,755.755 INFO    ] No update needed
[2026-06-13 15:22:26,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 15:22:26,778.778 INFO    ] 200
[2026-06-13 15:22:26,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:26,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:22:26,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:26,840.840 INFO    ] No camera update needed
[2026-06-13 15:22:26,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:22:26,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:22:26,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:22:26,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:22:28,889.889 INFO    ] ================================================
[2026-06-13 15:22:28,904.904 INFO    ] Launching Daemon at Sat Jun 13 15:22:28 IST 2026
[2026-06-13 15:22:28,915.915 INFO    ] ================================================
[2026-06-13 15:22:29,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:22:29
[2026-06-13 15:22:29,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:22:29,778.778 INFO    ] Initializing speech engine...
[2026-06-13 15:22:29,783.783 INFO    ] 2026-06-13 15:22:29
[2026-06-13 15:22:29,992.992 INFO    ] 2026-06-13 15:22:29
[2026-06-13 15:22:30,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:22:30,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:22:30,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:22:30,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:22:30,422.422 INFO    ] time= 13/06/2026 15:22:30
[2026-06-13 15:22:30,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:22:30,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:22:30,518.518 INFO    ] No existing commands found in stream
[2026-06-13 15:22:35,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:22:35,531.531 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 15:22:39,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:22:39,452.452 INFO    ] Checking for system updates...
[2026-06-13 15:22:39,474.474 INFO    ] 200
[2026-06-13 15:22:39,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:39,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:22:39,511.511 INFO    ] No update needed
[2026-06-13 15:22:39,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 15:22:39,533.533 INFO    ] 200
[2026-06-13 15:22:39,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:39,560.560 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:22:39,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:22:39,700.700 INFO    ] No camera update needed
[2026-06-13 15:22:39,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:22:39,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:22:39,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:22:39,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:22:41,750.750 INFO    ] ================================================
[2026-06-13 15:22:41,767.767 INFO    ] Launching Daemon at Sat Jun 13 15:22:41 IST 2026
[2026-06-13 15:22:41,779.779 INFO    ] ================================================
[2026-06-13 15:22:42,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:22:42
[2026-06-13 15:22:42,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:22:42,628.628 INFO    ] Initializing speech engine...
[2026-06-13 15:22:42,647.647 INFO    ] 2026-06-13 15:22:42
[2026-06-13 15:22:42,912.912 INFO    ] 2026-06-13 15:22:42
[2026-06-13 15:22:42,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:22:43,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:22:43,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:22:43,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:22:43,388.388 INFO    ] time= 13/06/2026 15:22:43
[2026-06-13 15:22:43,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:22:43,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:22:43,635.635 INFO    ] No existing commands found in stream
[2026-06-13 15:22:48,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:22:48,661.661 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 15:22:52,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:22:52,609.609 INFO    ] Checking for system updates...
[2026-06-13 15:22:52,630.630 INFO    ] 200
[2026-06-13 15:22:52,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:52,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:52,664.664 INFO    ] No update needed
[2026-06-13 15:22:52,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 15:22:52,685.685 INFO    ] 200
[2026-06-13 15:22:52,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:22:52,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:22:52,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:22:52,755.755 INFO    ] No camera update needed
[2026-06-13 15:22:52,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:22:52,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:22:52,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:22:52,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:22:54,805.805 INFO    ] ================================================
[2026-06-13 15:22:54,821.821 INFO    ] Launching Daemon at Sat Jun 13 15:22:54 IST 2026
[2026-06-13 15:22:54,832.832 INFO    ] ================================================
[2026-06-13 15:22:55,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:22:55
[2026-06-13 15:22:55,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:22:55,642.642 INFO    ] Initializing speech engine...
[2026-06-13 15:22:55,647.647 INFO    ] 2026-06-13 15:22:55
[2026-06-13 15:22:55,857.857 INFO    ] 2026-06-13 15:22:55
[2026-06-13 15:22:55,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:22:56,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:22:56,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:22:56,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:22:56,262.262 INFO    ] time= 13/06/2026 15:22:56
[2026-06-13 15:22:56,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:22:56,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:22:56,378.378 INFO    ] No existing commands found in stream
[2026-06-13 15:23:01,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:01,391.391 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 15:23:05,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:23:05,536.536 INFO    ] Checking for system updates...
[2026-06-13 15:23:05,561.561 INFO    ] 200
[2026-06-13 15:23:05,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:05,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:05,595.595 INFO    ] No update needed
[2026-06-13 15:23:05,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 15:23:05,616.616 INFO    ] 200
[2026-06-13 15:23:05,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:05,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:23:05,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:05,681.681 INFO    ] No camera update needed
[2026-06-13 15:23:05,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:23:05,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:23:05,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:23:05,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:23:07,730.730 INFO    ] ================================================
[2026-06-13 15:23:07,746.746 INFO    ] Launching Daemon at Sat Jun 13 15:23:07 IST 2026
[2026-06-13 15:23:07,757.757 INFO    ] ================================================
[2026-06-13 15:23:08,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:23:08
[2026-06-13 15:23:08,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:23:08,577.577 INFO    ] Initializing speech engine...
[2026-06-13 15:23:08,587.587 INFO    ] 2026-06-13 15:23:08
[2026-06-13 15:23:08,807.807 INFO    ] 2026-06-13 15:23:08
[2026-06-13 15:23:08,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:23:09,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:23:09,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:23:09,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:23:09,226.226 INFO    ] time= 13/06/2026 15:23:09
[2026-06-13 15:23:09,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:23:09,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:23:09,329.329 INFO    ] No existing commands found in stream
[2026-06-13 15:23:14,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:14,346.346 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 15:23:17,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:23:17,034.034 INFO    ] Checking for system updates...
[2026-06-13 15:23:17,055.055 INFO    ] 200
[2026-06-13 15:23:17,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:17,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:23:17,093.093 INFO    ] No update needed
[2026-06-13 15:23:17,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 15:23:17,115.115 INFO    ] 200
[2026-06-13 15:23:17,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:17,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:23:17,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:23:17,180.180 INFO    ] No camera update needed
[2026-06-13 15:23:17,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:23:17,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:23:17,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:23:17,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:23:19,228.228 INFO    ] ================================================
[2026-06-13 15:23:19,244.244 INFO    ] Launching Daemon at Sat Jun 13 15:23:19 IST 2026
[2026-06-13 15:23:19,255.255 INFO    ] ================================================
[2026-06-13 15:23:19,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:23:19
[2026-06-13 15:23:19,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:23:20,044.044 INFO    ] Initializing speech engine...
[2026-06-13 15:23:20,049.049 INFO    ] 2026-06-13 15:23:20
[2026-06-13 15:23:20,252.252 INFO    ] 2026-06-13 15:23:20
[2026-06-13 15:23:20,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:23:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:23:20,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:23:20,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:23:20,656.656 INFO    ] time= 13/06/2026 15:23:20
[2026-06-13 15:23:20,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:23:20,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:23:20,766.766 INFO    ] No existing commands found in stream
[2026-06-13 15:23:25,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:25,779.779 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 15:23:26,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:23:26,562.562 INFO    ] Checking for system updates...
[2026-06-13 15:23:26,583.583 INFO    ] 200
[2026-06-13 15:23:26,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:26,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:26,617.617 INFO    ] No update needed
[2026-06-13 15:23:26,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 15:23:26,638.638 INFO    ] 200
[2026-06-13 15:23:26,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:26,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:23:26,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:26,707.707 INFO    ] No camera update needed
[2026-06-13 15:23:26,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:23:26,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:23:26,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:23:26,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:23:28,764.764 INFO    ] ================================================
[2026-06-13 15:23:28,780.780 INFO    ] Launching Daemon at Sat Jun 13 15:23:28 IST 2026
[2026-06-13 15:23:28,792.792 INFO    ] ================================================
[2026-06-13 15:23:29,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:23:29
[2026-06-13 15:23:29,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:23:29,562.562 INFO    ] Initializing speech engine...
[2026-06-13 15:23:29,565.565 INFO    ] 2026-06-13 15:23:29
[2026-06-13 15:23:29,780.780 INFO    ] 2026-06-13 15:23:29
[2026-06-13 15:23:29,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:23:29,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:23:29,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:23:30,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:23:30,190.190 INFO    ] time= 13/06/2026 15:23:30
[2026-06-13 15:23:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:23:30,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:23:30,293.293 INFO    ] No existing commands found in stream
[2026-06-13 15:23:35,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:35,306.306 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 15:23:38,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:23:38,486.486 INFO    ] Checking for system updates...
[2026-06-13 15:23:38,507.507 INFO    ] 200
[2026-06-13 15:23:38,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:38,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:38,542.542 INFO    ] No update needed
[2026-06-13 15:23:38,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 15:23:38,563.563 INFO    ] 200
[2026-06-13 15:23:38,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:38,588.588 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:23:38,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:23:38,631.631 INFO    ] No camera update needed
[2026-06-13 15:23:38,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:23:38,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:23:38,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:23:38,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:23:40,679.679 INFO    ] ================================================
[2026-06-13 15:23:40,694.694 INFO    ] Launching Daemon at Sat Jun 13 15:23:40 IST 2026
[2026-06-13 15:23:40,705.705 INFO    ] ================================================
[2026-06-13 15:23:41,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:23:41
[2026-06-13 15:23:41,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:23:41,526.526 INFO    ] Initializing speech engine...
[2026-06-13 15:23:41,538.538 INFO    ] 2026-06-13 15:23:41
[2026-06-13 15:23:41,761.761 INFO    ] 2026-06-13 15:23:41
[2026-06-13 15:23:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:23:41,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:23:41,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:23:42,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:23:42,159.159 INFO    ] time= 13/06/2026 15:23:42
[2026-06-13 15:23:42,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:23:42,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:23:42,317.317 INFO    ] No existing commands found in stream
[2026-06-13 15:23:47,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:47,330.330 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 15:23:49,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:23:49,012.012 INFO    ] Checking for system updates...
[2026-06-13 15:23:49,033.033 INFO    ] 200
[2026-06-13 15:23:49,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:49,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:23:49,066.066 INFO    ] No update needed
[2026-06-13 15:23:49,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 15:23:49,088.088 INFO    ] 200
[2026-06-13 15:23:49,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:23:49,113.113 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:23:49,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:23:49,156.156 INFO    ] No camera update needed
[2026-06-13 15:23:49,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:23:49,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:23:49,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:23:49,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:23:51,203.203 INFO    ] ================================================
[2026-06-13 15:23:51,218.218 INFO    ] Launching Daemon at Sat Jun 13 15:23:51 IST 2026
[2026-06-13 15:23:51,228.228 INFO    ] ================================================
[2026-06-13 15:23:51,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:23:51
[2026-06-13 15:23:51,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:23:52,039.039 INFO    ] Initializing speech engine...
[2026-06-13 15:23:52,048.048 INFO    ] 2026-06-13 15:23:52
[2026-06-13 15:23:52,274.274 INFO    ] 2026-06-13 15:23:52
[2026-06-13 15:23:52,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:23:52,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:23:52,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:23:52,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:23:52,701.701 INFO    ] time= 13/06/2026 15:23:52
[2026-06-13 15:23:52,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:23:52,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:23:52,834.834 INFO    ] No existing commands found in stream
[2026-06-13 15:23:57,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:23:57,848.848 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 15:24:01,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:24:01,947.947 INFO    ] Checking for system updates...
[2026-06-13 15:24:01,999.999 INFO    ] 200
[2026-06-13 15:24:02,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:02,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:02,070.070 INFO    ] No update needed
[2026-06-13 15:24:02,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:02,129.129 INFO    ] 200
[2026-06-13 15:24:02,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:02,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:24:02,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:02,291.291 INFO    ] No camera update needed
[2026-06-13 15:24:02,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:02,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:02,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:02,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:24:04,359.359 INFO    ] ================================================
[2026-06-13 15:24:04,375.375 INFO    ] Launching Daemon at Sat Jun 13 15:24:04 IST 2026
[2026-06-13 15:24:04,391.391 INFO    ] ================================================
[2026-06-13 15:24:04,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:24:04
[2026-06-13 15:24:05,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:24:05,305.305 INFO    ] Initializing speech engine...
[2026-06-13 15:24:05,318.318 INFO    ] 2026-06-13 15:24:05
[2026-06-13 15:24:05,533.533 INFO    ] 2026-06-13 15:24:05
[2026-06-13 15:24:05,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:24:05,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:24:05,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:24:05,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:24:05,961.961 INFO    ] time= 13/06/2026 15:24:05
[2026-06-13 15:24:05,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:24:05,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:24:06,057.057 INFO    ] No existing commands found in stream
[2026-06-13 15:24:11,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:24:11,072.072 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 15:24:12,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:24:12,667.667 INFO    ] Checking for system updates...
[2026-06-13 15:24:12,688.688 INFO    ] 200
[2026-06-13 15:24:12,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:12,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:12,724.724 INFO    ] No update needed
[2026-06-13 15:24:12,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:12,748.748 INFO    ] 200
[2026-06-13 15:24:12,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:12,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:24:12,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:12,803.803 INFO    ] No camera update needed
[2026-06-13 15:24:12,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:12,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:12,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:12,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:24:14,851.851 INFO    ] ================================================
[2026-06-13 15:24:14,866.866 INFO    ] Launching Daemon at Sat Jun 13 15:24:14 IST 2026
[2026-06-13 15:24:14,876.876 INFO    ] ================================================
[2026-06-13 15:24:15,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:24:15
[2026-06-13 15:24:15,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:24:15,730.730 INFO    ] Initializing speech engine...
[2026-06-13 15:24:15,736.736 INFO    ] 2026-06-13 15:24:15
[2026-06-13 15:24:15,944.944 INFO    ] 2026-06-13 15:24:15
[2026-06-13 15:24:15,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:24:16,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:24:16,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:24:16,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:24:16,364.364 INFO    ] time= 13/06/2026 15:24:16
[2026-06-13 15:24:16,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:24:16,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:24:16,460.460 INFO    ] No existing commands found in stream
[2026-06-13 15:24:21,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:24:21,474.474 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 15:24:22,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:24:22,363.363 INFO    ] Checking for system updates...
[2026-06-13 15:24:22,385.385 INFO    ] 200
[2026-06-13 15:24:22,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:22,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:24:22,426.426 INFO    ] No update needed
[2026-06-13 15:24:22,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:22,447.447 INFO    ] 200
[2026-06-13 15:24:22,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:22,473.473 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:24:22,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:22,508.508 INFO    ] No camera update needed
[2026-06-13 15:24:22,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:22,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:22,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:22,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:24:24,555.555 INFO    ] ================================================
[2026-06-13 15:24:24,570.570 INFO    ] Launching Daemon at Sat Jun 13 15:24:24 IST 2026
[2026-06-13 15:24:24,581.581 INFO    ] ================================================
[2026-06-13 15:24:24,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:24:24
[2026-06-13 15:24:25,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:24:25,379.379 INFO    ] Initializing speech engine...
[2026-06-13 15:24:25,385.385 INFO    ] 2026-06-13 15:24:25
[2026-06-13 15:24:25,588.588 INFO    ] 2026-06-13 15:24:25
[2026-06-13 15:24:25,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:24:25,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:24:25,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:24:25,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:24:25,983.983 INFO    ] time= 13/06/2026 15:24:25
[2026-06-13 15:24:26,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:24:26,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:24:26,112.112 INFO    ] No existing commands found in stream
[2026-06-13 15:24:31,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:24:31,124.124 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 15:24:35,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:24:35,412.412 INFO    ] Checking for system updates...
[2026-06-13 15:24:35,433.433 INFO    ] 200
[2026-06-13 15:24:35,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:35,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:35,468.468 INFO    ] No update needed
[2026-06-13 15:24:35,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:35,489.489 INFO    ] 200
[2026-06-13 15:24:35,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:35,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:24:35,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:24:35,559.559 INFO    ] No camera update needed
[2026-06-13 15:24:35,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:35,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:35,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:35,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:24:37,605.605 INFO    ] ================================================
[2026-06-13 15:24:37,620.620 INFO    ] Launching Daemon at Sat Jun 13 15:24:37 IST 2026
[2026-06-13 15:24:37,631.631 INFO    ] ================================================
[2026-06-13 15:24:37,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:24:37
[2026-06-13 15:24:38,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:24:38,439.439 INFO    ] Initializing speech engine...
[2026-06-13 15:24:38,442.442 INFO    ] 2026-06-13 15:24:38
[2026-06-13 15:24:38,660.660 INFO    ] 2026-06-13 15:24:38
[2026-06-13 15:24:38,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:24:38,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:24:38,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:24:39,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:24:39,081.081 INFO    ] time= 13/06/2026 15:24:39
[2026-06-13 15:24:39,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:24:39,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:24:39,181.181 INFO    ] No existing commands found in stream
[2026-06-13 15:24:44,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:24:44,207.207 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 15:24:44,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:24:44,863.863 INFO    ] Checking for system updates...
[2026-06-13 15:24:44,895.895 INFO    ] 200
[2026-06-13 15:24:44,896.896 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:44,898.898 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 15:24:44,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:44,925.925 INFO    ] 200
[2026-06-13 15:24:44,927.927 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:44,929.929 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 15:24:44,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:44,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:44,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:44,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:24:46,971.971 INFO    ] ================================================
[2026-06-13 15:24:46,986.986 INFO    ] Launching Daemon at Sat Jun 13 15:24:46 IST 2026
[2026-06-13 15:24:47,997.997 INFO    ] ================================================
[2026-06-13 15:24:47,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:24:47
[2026-06-13 15:24:48,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:24:48,457.457 INFO    ] Initializing speech engine...
[2026-06-13 15:24:48,464.464 INFO    ] 2026-06-13 15:24:48
[2026-06-13 15:24:48,725.725 INFO    ] 2026-06-13 15:24:48
[2026-06-13 15:24:48,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:24:49,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:24:49,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:24:49,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:24:49,189.189 INFO    ] time= 13/06/2026 15:24:49
[2026-06-13 15:24:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:24:49,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:24:49,338.338 INFO    ] No existing commands found in stream
[2026-06-13 15:24:54,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:24:54,352.352 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 15:24:57,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:24:57,902.902 INFO    ] Checking for system updates...
[2026-06-13 15:24:57,924.924 INFO    ] 200
[2026-06-13 15:24:57,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:57,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:57,957.957 INFO    ] No update needed
[2026-06-13 15:24:57,959.959 INFO    ] Checking for camera pi updates...
[2026-06-13 15:24:57,980.980 INFO    ] 200
[2026-06-13 15:24:57,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:24:58,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:24:58,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:24:58,149.149 INFO    ] No camera update needed
[2026-06-13 15:24:58,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:24:58,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:24:58,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:24:58,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:00,197.197 INFO    ] ================================================
[2026-06-13 15:25:00,213.213 INFO    ] Launching Daemon at Sat Jun 13 15:25:00 IST 2026
[2026-06-13 15:25:00,224.224 INFO    ] ================================================
[2026-06-13 15:25:00,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:00
[2026-06-13 15:25:00,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:00,997.997 INFO    ] Initializing speech engine...
[2026-06-13 15:25:01,006.006 INFO    ] 2026-06-13 15:25:00
[2026-06-13 15:25:01,239.239 INFO    ] 2026-06-13 15:25:01
[2026-06-13 15:25:01,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:01,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:01,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:01,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:01,621.621 INFO    ] time= 13/06/2026 15:25:01
[2026-06-13 15:25:01,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:01,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:01,713.713 INFO    ] No existing commands found in stream
[2026-06-13 15:25:06,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:25:06,746.746 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 15:25:09,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:25:09,956.956 INFO    ] Checking for system updates...
[2026-06-13 15:25:09,977.977 INFO    ] 200
[2026-06-13 15:25:09,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:10,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:25:10,011.011 INFO    ] No update needed
[2026-06-13 15:25:10,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 15:25:10,033.033 INFO    ] 200
[2026-06-13 15:25:10,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:10,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:25:10,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:25:10,115.115 INFO    ] No camera update needed
[2026-06-13 15:25:10,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:25:10,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:25:10,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:25:10,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:12,162.162 INFO    ] ================================================
[2026-06-13 15:25:12,177.177 INFO    ] Launching Daemon at Sat Jun 13 15:25:12 IST 2026
[2026-06-13 15:25:12,188.188 INFO    ] ================================================
[2026-06-13 15:25:12,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:12
[2026-06-13 15:25:12,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:13,000.000 INFO    ] Initializing speech engine...
[2026-06-13 15:25:13,007.007 INFO    ] 2026-06-13 15:25:13
[2026-06-13 15:25:13,222.222 INFO    ] 2026-06-13 15:25:13
[2026-06-13 15:25:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:13,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:13,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:13,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:13,636.636 INFO    ] time= 13/06/2026 15:25:13
[2026-06-13 15:25:13,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:13,742.742 INFO    ] No existing commands found in stream
[2026-06-13 15:25:18,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:25:18,755.755 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 15:25:19,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:25:19,501.501 INFO    ] Checking for system updates...
[2026-06-13 15:25:19,521.521 INFO    ] 200
[2026-06-13 15:25:19,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:19,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:25:19,554.554 INFO    ] No update needed
[2026-06-13 15:25:19,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 15:25:19,578.578 INFO    ] 200
[2026-06-13 15:25:19,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:19,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:25:19,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:25:19,648.648 INFO    ] No camera update needed
[2026-06-13 15:25:19,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:25:19,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:25:19,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:25:19,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:21,694.694 INFO    ] ================================================
[2026-06-13 15:25:21,709.709 INFO    ] Launching Daemon at Sat Jun 13 15:25:21 IST 2026
[2026-06-13 15:25:21,719.719 INFO    ] ================================================
[2026-06-13 15:25:22,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:22
[2026-06-13 15:25:22,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:22,503.503 INFO    ] Initializing speech engine...
[2026-06-13 15:25:22,508.508 INFO    ] 2026-06-13 15:25:22
[2026-06-13 15:25:22,711.711 INFO    ] 2026-06-13 15:25:22
[2026-06-13 15:25:22,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:22,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:22,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:23,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:23,128.128 INFO    ] time= 13/06/2026 15:25:23
[2026-06-13 15:25:23,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:23,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:23,223.223 INFO    ] No existing commands found in stream
[2026-06-13 15:25:28,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:25:28,235.235 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 15:25:30,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:25:30,016.016 INFO    ] Checking for system updates...
[2026-06-13 15:25:30,052.052 INFO    ] 200
[2026-06-13 15:25:30,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:30,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:30,101.101 INFO    ] No update needed
[2026-06-13 15:25:30,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 15:25:30,124.124 INFO    ] 200
[2026-06-13 15:25:30,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:30,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:25:30,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:30,192.192 INFO    ] No camera update needed
[2026-06-13 15:25:30,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:25:30,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:25:30,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:25:30,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:32,239.239 INFO    ] ================================================
[2026-06-13 15:25:32,255.255 INFO    ] Launching Daemon at Sat Jun 13 15:25:32 IST 2026
[2026-06-13 15:25:32,266.266 INFO    ] ================================================
[2026-06-13 15:25:32,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:32
[2026-06-13 15:25:32,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:33,049.049 INFO    ] Initializing speech engine...
[2026-06-13 15:25:33,054.054 INFO    ] 2026-06-13 15:25:33
[2026-06-13 15:25:33,258.258 INFO    ] 2026-06-13 15:25:33
[2026-06-13 15:25:33,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:33,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:33,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:33,668.668 INFO    ] time= 13/06/2026 15:25:33
[2026-06-13 15:25:33,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:33,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:33,772.772 INFO    ] No existing commands found in stream
[2026-06-13 15:25:38,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:25:38,785.785 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 15:25:42,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:25:42,253.253 INFO    ] Checking for system updates...
[2026-06-13 15:25:42,275.275 INFO    ] 200
[2026-06-13 15:25:42,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:42,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:42,309.309 INFO    ] No update needed
[2026-06-13 15:25:42,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 15:25:42,330.330 INFO    ] 200
[2026-06-13 15:25:42,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:42,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:25:42,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:42,403.403 INFO    ] No camera update needed
[2026-06-13 15:25:42,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:25:42,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:25:42,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:25:42,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:44,452.452 INFO    ] ================================================
[2026-06-13 15:25:44,467.467 INFO    ] Launching Daemon at Sat Jun 13 15:25:44 IST 2026
[2026-06-13 15:25:44,478.478 INFO    ] ================================================
[2026-06-13 15:25:44,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:44
[2026-06-13 15:25:45,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:45,296.296 INFO    ] Initializing speech engine...
[2026-06-13 15:25:45,301.301 INFO    ] 2026-06-13 15:25:45
[2026-06-13 15:25:45,504.504 INFO    ] 2026-06-13 15:25:45
[2026-06-13 15:25:45,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:45,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:45,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:45,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:45,912.912 INFO    ] time= 13/06/2026 15:25:45
[2026-06-13 15:25:45,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:45,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:46,016.016 INFO    ] No existing commands found in stream
[2026-06-13 15:25:51,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:25:51,028.028 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 15:25:53,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:25:53,751.751 INFO    ] Checking for system updates...
[2026-06-13 15:25:53,772.772 INFO    ] 200
[2026-06-13 15:25:53,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:53,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:53,809.809 INFO    ] No update needed
[2026-06-13 15:25:53,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 15:25:53,830.830 INFO    ] 200
[2026-06-13 15:25:53,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:25:53,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:25:53,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:25:53,896.896 INFO    ] No camera update needed
[2026-06-13 15:25:53,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:25:53,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:25:53,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:25:53,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:25:55,946.946 INFO    ] ================================================
[2026-06-13 15:25:55,962.962 INFO    ] Launching Daemon at Sat Jun 13 15:25:55 IST 2026
[2026-06-13 15:25:55,972.972 INFO    ] ================================================
[2026-06-13 15:25:56,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:25:56
[2026-06-13 15:25:56,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:25:56,841.841 INFO    ] Initializing speech engine...
[2026-06-13 15:25:56,846.846 INFO    ] 2026-06-13 15:25:56
[2026-06-13 15:25:57,059.059 INFO    ] 2026-06-13 15:25:57
[2026-06-13 15:25:57,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:25:57,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:25:57,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:25:57,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:25:57,471.471 INFO    ] time= 13/06/2026 15:25:57
[2026-06-13 15:25:57,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:25:57,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:25:57,578.578 INFO    ] No existing commands found in stream
[2026-06-13 15:26:02,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:02,601.601 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 15:26:03,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:26:03,347.347 INFO    ] Checking for system updates...
[2026-06-13 15:26:03,368.368 INFO    ] 200
[2026-06-13 15:26:03,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:03,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:03,404.404 INFO    ] No update needed
[2026-06-13 15:26:03,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:03,429.429 INFO    ] 200
[2026-06-13 15:26:03,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:03,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:03,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:03,482.482 INFO    ] No camera update needed
[2026-06-13 15:26:03,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:03,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:03,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:03,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:26:05,531.531 INFO    ] ================================================
[2026-06-13 15:26:05,546.546 INFO    ] Launching Daemon at Sat Jun 13 15:26:05 IST 2026
[2026-06-13 15:26:05,558.558 INFO    ] ================================================
[2026-06-13 15:26:05,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:26:05
[2026-06-13 15:26:06,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:26:06,416.416 INFO    ] Initializing speech engine...
[2026-06-13 15:26:06,422.422 INFO    ] 2026-06-13 15:26:06
[2026-06-13 15:26:06,632.632 INFO    ] 2026-06-13 15:26:06
[2026-06-13 15:26:06,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:26:06,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:26:06,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:26:06,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:26:07,034.034 INFO    ] time= 13/06/2026 15:26:06
[2026-06-13 15:26:07,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:26:07,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:26:07,157.157 INFO    ] No existing commands found in stream
[2026-06-13 15:26:12,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:12,170.170 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 15:26:14,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:26:14,746.746 INFO    ] Checking for system updates...
[2026-06-13 15:26:14,787.787 INFO    ] 200
[2026-06-13 15:26:14,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:14,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:14,846.846 INFO    ] No update needed
[2026-06-13 15:26:14,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:14,869.869 INFO    ] 200
[2026-06-13 15:26:14,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:14,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:14,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:14,939.939 INFO    ] No camera update needed
[2026-06-13 15:26:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:14,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:14,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:14,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:26:16,987.987 INFO    ] ================================================
[2026-06-13 15:26:17,003.003 INFO    ] Launching Daemon at Sat Jun 13 15:26:16 IST 2026
[2026-06-13 15:26:17,014.014 INFO    ] ================================================
[2026-06-13 15:26:17,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:26:17
[2026-06-13 15:26:17,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:26:17,796.796 INFO    ] Initializing speech engine...
[2026-06-13 15:26:17,800.800 INFO    ] 2026-06-13 15:26:17
[2026-06-13 15:26:18,014.014 INFO    ] 2026-06-13 15:26:17
[2026-06-13 15:26:18,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:26:18,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:26:18,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:26:18,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:26:18,423.423 INFO    ] time= 13/06/2026 15:26:18
[2026-06-13 15:26:18,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:26:18,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:26:18,527.527 INFO    ] No existing commands found in stream
[2026-06-13 15:26:23,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:23,539.539 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 15:26:25,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:26:25,180.180 INFO    ] Checking for system updates...
[2026-06-13 15:26:25,202.202 INFO    ] 200
[2026-06-13 15:26:25,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:25,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:25,238.238 INFO    ] No update needed
[2026-06-13 15:26:25,239.239 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:25,260.260 INFO    ] 200
[2026-06-13 15:26:25,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:25,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:25,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:25,322.322 INFO    ] No camera update needed
[2026-06-13 15:26:25,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:25,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:25,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:25,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:26:27,369.369 INFO    ] ================================================
[2026-06-13 15:26:27,384.384 INFO    ] Launching Daemon at Sat Jun 13 15:26:27 IST 2026
[2026-06-13 15:26:27,396.396 INFO    ] ================================================
[2026-06-13 15:26:27,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:26:27
[2026-06-13 15:26:28,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:26:28,168.168 INFO    ] Initializing speech engine...
[2026-06-13 15:26:28,173.173 INFO    ] 2026-06-13 15:26:28
[2026-06-13 15:26:28,391.391 INFO    ] 2026-06-13 15:26:28
[2026-06-13 15:26:28,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:26:28,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:26:28,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:26:28,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:26:28,797.797 INFO    ] time= 13/06/2026 15:26:28
[2026-06-13 15:26:28,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:26:28,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:26:28,915.915 INFO    ] No existing commands found in stream
[2026-06-13 15:26:33,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:33,926.926 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 15:26:35,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:26:35,051.051 INFO    ] Checking for system updates...
[2026-06-13 15:26:35,072.072 INFO    ] 200
[2026-06-13 15:26:35,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:35,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:26:35,106.106 INFO    ] No update needed
[2026-06-13 15:26:35,107.107 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:35,128.128 INFO    ] 200
[2026-06-13 15:26:35,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:35,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:35,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:26:35,204.204 INFO    ] No camera update needed
[2026-06-13 15:26:35,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:35,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:35,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:35,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:26:37,253.253 INFO    ] ================================================
[2026-06-13 15:26:37,269.269 INFO    ] Launching Daemon at Sat Jun 13 15:26:37 IST 2026
[2026-06-13 15:26:37,279.279 INFO    ] ================================================
[2026-06-13 15:26:37,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:26:37
[2026-06-13 15:26:37,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:26:38,121.121 INFO    ] Initializing speech engine...
[2026-06-13 15:26:38,128.128 INFO    ] 2026-06-13 15:26:38
[2026-06-13 15:26:38,327.327 INFO    ] 2026-06-13 15:26:38
[2026-06-13 15:26:38,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:26:38,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:26:38,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:26:38,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:26:38,671.671 INFO    ] time= 13/06/2026 15:26:38
[2026-06-13 15:26:38,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:26:38,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:26:38,786.786 INFO    ] No existing commands found in stream
[2026-06-13 15:26:43,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:43,814.814 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 15:26:45,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:26:45,993.993 INFO    ] Checking for system updates...
[2026-06-13 15:26:46,015.015 INFO    ] 200
[2026-06-13 15:26:46,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:46,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:26:46,050.050 INFO    ] No update needed
[2026-06-13 15:26:46,052.052 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:46,071.071 INFO    ] 200
[2026-06-13 15:26:46,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:46,096.096 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:46,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:26:46,138.138 INFO    ] No camera update needed
[2026-06-13 15:26:46,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:46,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:46,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:46,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:26:48,186.186 INFO    ] ================================================
[2026-06-13 15:26:48,201.201 INFO    ] Launching Daemon at Sat Jun 13 15:26:48 IST 2026
[2026-06-13 15:26:48,212.212 INFO    ] ================================================
[2026-06-13 15:26:48,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:26:48
[2026-06-13 15:26:48,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:26:49,016.016 INFO    ] Initializing speech engine...
[2026-06-13 15:26:49,029.029 INFO    ] 2026-06-13 15:26:49
[2026-06-13 15:26:49,236.236 INFO    ] 2026-06-13 15:26:49
[2026-06-13 15:26:49,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:26:49,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:26:49,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:26:49,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:26:49,654.654 INFO    ] time= 13/06/2026 15:26:49
[2026-06-13 15:26:49,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:26:49,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:26:49,762.762 INFO    ] No existing commands found in stream
[2026-06-13 15:26:54,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:26:54,774.774 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 15:26:58,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:26:58,306.306 INFO    ] Checking for system updates...
[2026-06-13 15:26:58,328.328 INFO    ] 200
[2026-06-13 15:26:58,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:58,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:26:58,363.363 INFO    ] No update needed
[2026-06-13 15:26:58,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 15:26:58,384.384 INFO    ] 200
[2026-06-13 15:26:58,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:26:58,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:26:58,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:26:58,450.450 INFO    ] No camera update needed
[2026-06-13 15:26:58,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:26:58,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:26:58,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:26:58,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:00,499.499 INFO    ] ================================================
[2026-06-13 15:27:00,514.514 INFO    ] Launching Daemon at Sat Jun 13 15:27:00 IST 2026
[2026-06-13 15:27:00,525.525 INFO    ] ================================================
[2026-06-13 15:27:00,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:00
[2026-06-13 15:27:01,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:02,040.040 INFO    ] Initializing speech engine...
[2026-06-13 15:27:02,047.047 INFO    ] 2026-06-13 15:27:02
[2026-06-13 15:27:02,435.435 INFO    ] 2026-06-13 15:27:02
[2026-06-13 15:27:02,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:02,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:02,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:02,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:02,901.901 INFO    ] time= 13/06/2026 15:27:02
[2026-06-13 15:27:02,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:02,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:03,091.091 INFO    ] No existing commands found in stream
[2026-06-13 15:27:08,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:08,127.127 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 15:27:08,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:27:08,913.913 INFO    ] Checking for system updates...
[2026-06-13 15:27:08,934.934 INFO    ] 200
[2026-06-13 15:27:08,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:08,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:08,970.970 INFO    ] No update needed
[2026-06-13 15:27:08,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 15:27:08,993.993 INFO    ] 200
[2026-06-13 15:27:08,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:09,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:27:09,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:09,061.061 INFO    ] No camera update needed
[2026-06-13 15:27:09,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:27:09,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:27:09,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:27:09,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:11,108.108 INFO    ] ================================================
[2026-06-13 15:27:11,123.123 INFO    ] Launching Daemon at Sat Jun 13 15:27:11 IST 2026
[2026-06-13 15:27:11,134.134 INFO    ] ================================================
[2026-06-13 15:27:11,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:11
[2026-06-13 15:27:11,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:11,944.944 INFO    ] Initializing speech engine...
[2026-06-13 15:27:11,952.952 INFO    ] 2026-06-13 15:27:11
[2026-06-13 15:27:12,252.252 INFO    ] 2026-06-13 15:27:12
[2026-06-13 15:27:12,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:12,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:12,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:12,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:12,639.639 INFO    ] time= 13/06/2026 15:27:12
[2026-06-13 15:27:12,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:12,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:12,737.737 INFO    ] No existing commands found in stream
[2026-06-13 15:27:17,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:17,753.753 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 15:27:19,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:27:19,194.194 INFO    ] Checking for system updates...
[2026-06-13 15:27:19,215.215 INFO    ] 200
[2026-06-13 15:27:19,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:19,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:19,250.250 INFO    ] No update needed
[2026-06-13 15:27:19,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 15:27:19,271.271 INFO    ] 200
[2026-06-13 15:27:19,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:19,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:27:19,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:19,335.335 INFO    ] No camera update needed
[2026-06-13 15:27:19,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:27:19,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:27:19,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:27:19,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:21,381.381 INFO    ] ================================================
[2026-06-13 15:27:21,397.397 INFO    ] Launching Daemon at Sat Jun 13 15:27:21 IST 2026
[2026-06-13 15:27:21,408.408 INFO    ] ================================================
[2026-06-13 15:27:21,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:21
[2026-06-13 15:27:22,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:22,230.230 INFO    ] Initializing speech engine...
[2026-06-13 15:27:22,234.234 INFO    ] 2026-06-13 15:27:22
[2026-06-13 15:27:22,437.437 INFO    ] 2026-06-13 15:27:22
[2026-06-13 15:27:22,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:22,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:22,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:22,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:22,858.858 INFO    ] time= 13/06/2026 15:27:22
[2026-06-13 15:27:22,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:22,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:22,966.966 INFO    ] No existing commands found in stream
[2026-06-13 15:27:27,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:27,980.980 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 15:27:29,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:27:29,691.691 INFO    ] Checking for system updates...
[2026-06-13 15:27:29,712.712 INFO    ] 200
[2026-06-13 15:27:29,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:29,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:27:29,747.747 INFO    ] No update needed
[2026-06-13 15:27:29,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 15:27:29,768.768 INFO    ] 200
[2026-06-13 15:27:29,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:29,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:27:29,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:27:29,835.835 INFO    ] No camera update needed
[2026-06-13 15:27:29,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:27:29,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:27:29,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:27:29,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:31,884.884 INFO    ] ================================================
[2026-06-13 15:27:31,901.901 INFO    ] Launching Daemon at Sat Jun 13 15:27:31 IST 2026
[2026-06-13 15:27:31,913.913 INFO    ] ================================================
[2026-06-13 15:27:32,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:32
[2026-06-13 15:27:32,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:32,824.824 INFO    ] Initializing speech engine...
[2026-06-13 15:27:32,835.835 INFO    ] 2026-06-13 15:27:32
[2026-06-13 15:27:33,045.045 INFO    ] 2026-06-13 15:27:33
[2026-06-13 15:27:33,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:33,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:33,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:33,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:33,476.476 INFO    ] time= 13/06/2026 15:27:33
[2026-06-13 15:27:33,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:33,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:33,573.573 INFO    ] No existing commands found in stream
[2026-06-13 15:27:38,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:38,591.591 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 15:27:41,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:27:41,008.008 INFO    ] Checking for system updates...
[2026-06-13 15:27:41,029.029 INFO    ] 200
[2026-06-13 15:27:41,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:41,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:27:41,065.065 INFO    ] No update needed
[2026-06-13 15:27:41,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 15:27:41,088.088 INFO    ] 200
[2026-06-13 15:27:41,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:41,114.114 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:27:41,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:27:41,152.152 INFO    ] No camera update needed
[2026-06-13 15:27:41,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:27:41,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:27:41,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:27:41,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:43,200.200 INFO    ] ================================================
[2026-06-13 15:27:43,216.216 INFO    ] Launching Daemon at Sat Jun 13 15:27:43 IST 2026
[2026-06-13 15:27:43,227.227 INFO    ] ================================================
[2026-06-13 15:27:43,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:43
[2026-06-13 15:27:43,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:44,031.031 INFO    ] Initializing speech engine...
[2026-06-13 15:27:44,036.036 INFO    ] 2026-06-13 15:27:44
[2026-06-13 15:27:44,242.242 INFO    ] 2026-06-13 15:27:44
[2026-06-13 15:27:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:44,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:44,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:44,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:44,636.636 INFO    ] time= 13/06/2026 15:27:44
[2026-06-13 15:27:44,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:44,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:44,757.757 INFO    ] No existing commands found in stream
[2026-06-13 15:27:49,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:49,774.774 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 15:27:50,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:27:50,669.669 INFO    ] Checking for system updates...
[2026-06-13 15:27:50,690.690 INFO    ] 200
[2026-06-13 15:27:50,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:50,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:50,726.726 INFO    ] No update needed
[2026-06-13 15:27:50,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 15:27:50,748.748 INFO    ] 200
[2026-06-13 15:27:50,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:27:50,773.773 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:27:50,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:27:50,821.821 INFO    ] No camera update needed
[2026-06-13 15:27:50,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:27:50,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:27:50,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:27:50,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:27:52,868.868 INFO    ] ================================================
[2026-06-13 15:27:52,883.883 INFO    ] Launching Daemon at Sat Jun 13 15:27:52 IST 2026
[2026-06-13 15:27:52,894.894 INFO    ] ================================================
[2026-06-13 15:27:53,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:27:53
[2026-06-13 15:27:53,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:27:53,703.703 INFO    ] Initializing speech engine...
[2026-06-13 15:27:53,713.713 INFO    ] 2026-06-13 15:27:53
[2026-06-13 15:27:53,917.917 INFO    ] 2026-06-13 15:27:53
[2026-06-13 15:27:53,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:27:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:27:54,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:27:54,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:27:54,320.320 INFO    ] time= 13/06/2026 15:27:54
[2026-06-13 15:27:54,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:27:54,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:27:54,430.430 INFO    ] No existing commands found in stream
[2026-06-13 15:27:59,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:27:59,442.442 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 15:28:03,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:28:03,175.175 INFO    ] Checking for system updates...
[2026-06-13 15:28:03,212.212 INFO    ] 200
[2026-06-13 15:28:03,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:03,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:03,270.270 INFO    ] No update needed
[2026-06-13 15:28:03,273.273 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:03,310.310 INFO    ] 200
[2026-06-13 15:28:03,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:03,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:03,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:03,408.408 INFO    ] No camera update needed
[2026-06-13 15:28:03,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:03,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:03,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:03,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:28:05,464.464 INFO    ] ================================================
[2026-06-13 15:28:05,480.480 INFO    ] Launching Daemon at Sat Jun 13 15:28:05 IST 2026
[2026-06-13 15:28:05,491.491 INFO    ] ================================================
[2026-06-13 15:28:05,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:28:05
[2026-06-13 15:28:06,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:28:06,336.336 INFO    ] Initializing speech engine...
[2026-06-13 15:28:06,340.340 INFO    ] 2026-06-13 15:28:06
[2026-06-13 15:28:06,568.568 INFO    ] 2026-06-13 15:28:06
[2026-06-13 15:28:06,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:28:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:28:06,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:28:06,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:28:06,984.984 INFO    ] time= 13/06/2026 15:28:06
[2026-06-13 15:28:07,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:28:07,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:28:07,119.119 INFO    ] No existing commands found in stream
[2026-06-13 15:28:12,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:28:12,133.133 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 15:28:15,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:28:15,536.536 INFO    ] Checking for system updates...
[2026-06-13 15:28:15,556.556 INFO    ] 200
[2026-06-13 15:28:15,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:15,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:15,589.589 INFO    ] No update needed
[2026-06-13 15:28:15,591.591 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:15,610.610 INFO    ] 200
[2026-06-13 15:28:15,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:15,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:15,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:15,675.675 INFO    ] No camera update needed
[2026-06-13 15:28:15,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:15,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:15,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:15,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:28:17,723.723 INFO    ] ================================================
[2026-06-13 15:28:17,738.738 INFO    ] Launching Daemon at Sat Jun 13 15:28:17 IST 2026
[2026-06-13 15:28:17,749.749 INFO    ] ================================================
[2026-06-13 15:28:18,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:28:18
[2026-06-13 15:28:18,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:28:18,540.540 INFO    ] Initializing speech engine...
[2026-06-13 15:28:18,545.545 INFO    ] 2026-06-13 15:28:18
[2026-06-13 15:28:18,751.751 INFO    ] 2026-06-13 15:28:18
[2026-06-13 15:28:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:28:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:28:18,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:28:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:28:19,159.159 INFO    ] time= 13/06/2026 15:28:19
[2026-06-13 15:28:19,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:28:19,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:28:19,308.308 INFO    ] No existing commands found in stream
[2026-06-13 15:28:24,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:28:24,321.321 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 15:28:26,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:28:26,641.641 INFO    ] Checking for system updates...
[2026-06-13 15:28:26,663.663 INFO    ] 200
[2026-06-13 15:28:26,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:26,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:26,698.698 INFO    ] No update needed
[2026-06-13 15:28:26,700.700 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:26,719.719 INFO    ] 200
[2026-06-13 15:28:26,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:26,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:26,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:26,779.779 INFO    ] No camera update needed
[2026-06-13 15:28:26,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:26,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:26,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:26,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:28:28,825.825 INFO    ] ================================================
[2026-06-13 15:28:28,840.840 INFO    ] Launching Daemon at Sat Jun 13 15:28:28 IST 2026
[2026-06-13 15:28:28,852.852 INFO    ] ================================================
[2026-06-13 15:28:29,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:28:29
[2026-06-13 15:28:29,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:28:29,720.720 INFO    ] Initializing speech engine...
[2026-06-13 15:28:29,725.725 INFO    ] 2026-06-13 15:28:29
[2026-06-13 15:28:29,935.935 INFO    ] 2026-06-13 15:28:29
[2026-06-13 15:28:29,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:28:30,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:28:30,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:28:30,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:28:30,362.362 INFO    ] time= 13/06/2026 15:28:30
[2026-06-13 15:28:30,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:28:30,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:28:30,460.460 INFO    ] No existing commands found in stream
[2026-06-13 15:28:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:28:35,474.474 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 15:28:36,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:28:36,921.921 INFO    ] Checking for system updates...
[2026-06-13 15:28:36,942.942 INFO    ] 200
[2026-06-13 15:28:36,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:36,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:36,978.978 INFO    ] No update needed
[2026-06-13 15:28:36,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:37,001.001 INFO    ] 200
[2026-06-13 15:28:37,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:37,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:37,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:37,065.065 INFO    ] No camera update needed
[2026-06-13 15:28:37,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:37,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:37,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:37,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:28:39,112.112 INFO    ] ================================================
[2026-06-13 15:28:39,127.127 INFO    ] Launching Daemon at Sat Jun 13 15:28:39 IST 2026
[2026-06-13 15:28:39,138.138 INFO    ] ================================================
[2026-06-13 15:28:39,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:28:39
[2026-06-13 15:28:39,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:28:39,930.930 INFO    ] Initializing speech engine...
[2026-06-13 15:28:39,938.938 INFO    ] 2026-06-13 15:28:39
[2026-06-13 15:28:40,153.153 INFO    ] 2026-06-13 15:28:40
[2026-06-13 15:28:40,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:28:40,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:28:40,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:28:40,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:28:40,556.556 INFO    ] time= 13/06/2026 15:28:40
[2026-06-13 15:28:40,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:28:40,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:28:40,667.667 INFO    ] No existing commands found in stream
[2026-06-13 15:28:45,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:28:45,679.679 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 15:28:46,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:28:46,247.247 INFO    ] Checking for system updates...
[2026-06-13 15:28:46,267.267 INFO    ] 200
[2026-06-13 15:28:46,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:46,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:46,300.300 INFO    ] No update needed
[2026-06-13 15:28:46,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:46,321.321 INFO    ] 200
[2026-06-13 15:28:46,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:46,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:46,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:28:46,371.371 INFO    ] No camera update needed
[2026-06-13 15:28:46,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:46,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:46,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:46,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:28:48,419.419 INFO    ] ================================================
[2026-06-13 15:28:48,434.434 INFO    ] Launching Daemon at Sat Jun 13 15:28:48 IST 2026
[2026-06-13 15:28:48,445.445 INFO    ] ================================================
[2026-06-13 15:28:48,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:28:48
[2026-06-13 15:28:49,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:28:49,293.293 INFO    ] Initializing speech engine...
[2026-06-13 15:28:49,298.298 INFO    ] 2026-06-13 15:28:49
[2026-06-13 15:28:49,507.507 INFO    ] 2026-06-13 15:28:49
[2026-06-13 15:28:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:28:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:28:49,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:28:49,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:28:49,923.923 INFO    ] time= 13/06/2026 15:28:49
[2026-06-13 15:28:49,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:28:50,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:28:50,081.081 INFO    ] No existing commands found in stream
[2026-06-13 15:28:55,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:28:55,095.095 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 15:28:59,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:28:59,144.144 INFO    ] Checking for system updates...
[2026-06-13 15:28:59,165.165 INFO    ] 200
[2026-06-13 15:28:59,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:59,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:59,200.200 INFO    ] No update needed
[2026-06-13 15:28:59,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 15:28:59,222.222 INFO    ] 200
[2026-06-13 15:28:59,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:28:59,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:28:59,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:28:59,285.285 INFO    ] No camera update needed
[2026-06-13 15:28:59,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:28:59,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:28:59,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:28:59,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:01,330.330 INFO    ] ================================================
[2026-06-13 15:29:01,349.349 INFO    ] Launching Daemon at Sat Jun 13 15:29:01 IST 2026
[2026-06-13 15:29:01,358.358 INFO    ] ================================================
[2026-06-13 15:29:01,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:01
[2026-06-13 15:29:02,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:02,255.255 INFO    ] Initializing speech engine...
[2026-06-13 15:29:02,258.258 INFO    ] 2026-06-13 15:29:02
[2026-06-13 15:29:02,475.475 INFO    ] 2026-06-13 15:29:02
[2026-06-13 15:29:02,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:29:02,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:29:02,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:29:02,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:29:02,724.724 INFO    ] time= 13/06/2026 15:29:02
[2026-06-13 15:29:02,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:29:02,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:29:02,836.836 INFO    ] No existing commands found in stream
[2026-06-13 15:29:07,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:29:07,862.862 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 15:29:10,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:29:10,536.536 INFO    ] Checking for system updates...
[2026-06-13 15:29:10,558.558 INFO    ] 200
[2026-06-13 15:29:10,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:10,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:10,592.592 INFO    ] No update needed
[2026-06-13 15:29:10,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 15:29:10,615.615 INFO    ] 200
[2026-06-13 15:29:10,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:10,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:29:10,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:10,791.791 INFO    ] No camera update needed
[2026-06-13 15:29:10,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:29:10,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:29:10,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:29:10,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:12,838.838 INFO    ] ================================================
[2026-06-13 15:29:12,853.853 INFO    ] Launching Daemon at Sat Jun 13 15:29:12 IST 2026
[2026-06-13 15:29:12,864.864 INFO    ] ================================================
[2026-06-13 15:29:13,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:13
[2026-06-13 15:29:13,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:13,656.656 INFO    ] Initializing speech engine...
[2026-06-13 15:29:13,661.661 INFO    ] 2026-06-13 15:29:13
[2026-06-13 15:29:13,864.864 INFO    ] 2026-06-13 15:29:13
[2026-06-13 15:29:13,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:29:14,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:29:14,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:29:14,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:29:14,265.265 INFO    ] time= 13/06/2026 15:29:14
[2026-06-13 15:29:14,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:29:14,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:29:14,375.375 INFO    ] No existing commands found in stream
[2026-06-13 15:29:19,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:29:19,387.387 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 15:29:22,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:29:22,856.856 INFO    ] Checking for system updates...
[2026-06-13 15:29:22,877.877 INFO    ] 200
[2026-06-13 15:29:22,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:22,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:22,909.909 INFO    ] No update needed
[2026-06-13 15:29:22,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 15:29:22,930.930 INFO    ] 200
[2026-06-13 15:29:22,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:22,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:29:23,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:23,011.011 INFO    ] No camera update needed
[2026-06-13 15:29:23,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:29:23,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:29:23,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:29:23,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:25,059.059 INFO    ] ================================================
[2026-06-13 15:29:25,074.074 INFO    ] Launching Daemon at Sat Jun 13 15:29:25 IST 2026
[2026-06-13 15:29:25,085.085 INFO    ] ================================================
[2026-06-13 15:29:25,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:25
[2026-06-13 15:29:25,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:25,881.881 INFO    ] Initializing speech engine...
[2026-06-13 15:29:25,886.886 INFO    ] 2026-06-13 15:29:25
[2026-06-13 15:29:26,091.091 INFO    ] 2026-06-13 15:29:26
[2026-06-13 15:29:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:29:26,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:29:26,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:29:26,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:29:26,406.406 INFO    ] time= 13/06/2026 15:29:26
[2026-06-13 15:29:26,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:29:26,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:29:26,627.627 INFO    ] No existing commands found in stream
[2026-06-13 15:29:31,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:29:31,637.637 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 15:29:33,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:29:33,693.693 INFO    ] Checking for system updates...
[2026-06-13 15:29:33,715.715 INFO    ] 200
[2026-06-13 15:29:33,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:33,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:29:33,751.751 INFO    ] No update needed
[2026-06-13 15:29:33,752.752 INFO    ] Checking for camera pi updates...
[2026-06-13 15:29:33,772.772 INFO    ] 200
[2026-06-13 15:29:33,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:33,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:29:33,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:29:33,837.837 INFO    ] No camera update needed
[2026-06-13 15:29:33,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:29:33,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:29:33,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:29:33,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:35,883.883 INFO    ] ================================================
[2026-06-13 15:29:35,899.899 INFO    ] Launching Daemon at Sat Jun 13 15:29:35 IST 2026
[2026-06-13 15:29:35,909.909 INFO    ] ================================================
[2026-06-13 15:29:36,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:36
[2026-06-13 15:29:36,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:36,780.780 INFO    ] Initializing speech engine...
[2026-06-13 15:29:36,785.785 INFO    ] 2026-06-13 15:29:36
[2026-06-13 15:29:36,989.989 INFO    ] 2026-06-13 15:29:36
[2026-06-13 15:29:37,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:29:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:29:37,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:29:37,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:29:37,403.403 INFO    ] time= 13/06/2026 15:29:37
[2026-06-13 15:29:37,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:29:37,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:29:37,502.502 INFO    ] No existing commands found in stream
[2026-06-13 15:29:42,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:29:42,514.514 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 15:29:44,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:29:44,474.474 INFO    ] Checking for system updates...
[2026-06-13 15:29:44,496.496 INFO    ] 200
[2026-06-13 15:29:44,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:44,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:44,531.531 INFO    ] No update needed
[2026-06-13 15:29:44,533.533 INFO    ] Checking for camera pi updates...
[2026-06-13 15:29:44,555.555 INFO    ] 200
[2026-06-13 15:29:44,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:44,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:29:44,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:29:44,624.624 INFO    ] No camera update needed
[2026-06-13 15:29:44,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:29:44,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:29:44,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:29:44,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:46,672.672 INFO    ] ================================================
[2026-06-13 15:29:46,687.687 INFO    ] Launching Daemon at Sat Jun 13 15:29:46 IST 2026
[2026-06-13 15:29:46,697.697 INFO    ] ================================================
[2026-06-13 15:29:47,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:47
[2026-06-13 15:29:47,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:47,503.503 INFO    ] Initializing speech engine...
[2026-06-13 15:29:47,508.508 INFO    ] 2026-06-13 15:29:47
[2026-06-13 15:29:47,709.709 INFO    ] 2026-06-13 15:29:47
[2026-06-13 15:29:47,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:29:47,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:29:47,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:29:48,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:29:48,120.120 INFO    ] time= 13/06/2026 15:29:48
[2026-06-13 15:29:48,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:29:48,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:29:48,225.225 INFO    ] No existing commands found in stream
[2026-06-13 15:29:53,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:29:53,238.238 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 15:29:56,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:29:56,847.847 INFO    ] Checking for system updates...
[2026-06-13 15:29:56,869.869 INFO    ] 200
[2026-06-13 15:29:56,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:56,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:29:56,903.903 INFO    ] No update needed
[2026-06-13 15:29:56,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 15:29:56,924.924 INFO    ] 200
[2026-06-13 15:29:56,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:29:56,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:29:56,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:29:56,990.990 INFO    ] No camera update needed
[2026-06-13 15:29:56,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:29:56,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:29:56,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:29:56,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:29:59,037.037 INFO    ] ================================================
[2026-06-13 15:29:59,052.052 INFO    ] Launching Daemon at Sat Jun 13 15:29:59 IST 2026
[2026-06-13 15:29:59,063.063 INFO    ] ================================================
[2026-06-13 15:29:59,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:29:59
[2026-06-13 15:29:59,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:29:59,834.834 INFO    ] Initializing speech engine...
[2026-06-13 15:29:59,837.837 INFO    ] 2026-06-13 15:29:59
[2026-06-13 15:30:00,036.036 INFO    ] 2026-06-13 15:30:00
[2026-06-13 15:30:00,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:00,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:00,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:00,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:00,487.487 INFO    ] time= 13/06/2026 15:30:00
[2026-06-13 15:30:00,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:00,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:00,642.642 INFO    ] No existing commands found in stream
[2026-06-13 15:30:05,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:30:05,668.668 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 15:30:07,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:30:07,051.051 INFO    ] Checking for system updates...
[2026-06-13 15:30:07,088.088 INFO    ] 200
[2026-06-13 15:30:07,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:07,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:07,146.146 INFO    ] No update needed
[2026-06-13 15:30:07,149.149 INFO    ] Checking for camera pi updates...
[2026-06-13 15:30:07,183.183 INFO    ] 200
[2026-06-13 15:30:07,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:07,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:30:07,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:07,262.262 INFO    ] No camera update needed
[2026-06-13 15:30:07,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:30:07,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:30:07,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:30:07,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:30:09,316.316 INFO    ] ================================================
[2026-06-13 15:30:09,331.331 INFO    ] Launching Daemon at Sat Jun 13 15:30:09 IST 2026
[2026-06-13 15:30:09,342.342 INFO    ] ================================================
[2026-06-13 15:30:09,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:30:09
[2026-06-13 15:30:10,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:30:10,156.156 INFO    ] Initializing speech engine...
[2026-06-13 15:30:10,168.168 INFO    ] 2026-06-13 15:30:10
[2026-06-13 15:30:10,382.382 INFO    ] 2026-06-13 15:30:10
[2026-06-13 15:30:10,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:10,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:10,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:10,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:10,799.799 INFO    ] time= 13/06/2026 15:30:10
[2026-06-13 15:30:10,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:10,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:10,930.930 INFO    ] No existing commands found in stream
[2026-06-13 15:30:15,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:30:15,943.943 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 15:30:17,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:30:17,206.206 INFO    ] Checking for system updates...
[2026-06-13 15:30:17,227.227 INFO    ] 200
[2026-06-13 15:30:17,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:17,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:17,263.263 INFO    ] No update needed
[2026-06-13 15:30:17,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 15:30:17,285.285 INFO    ] 200
[2026-06-13 15:30:17,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:17,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:30:17,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:17,360.360 INFO    ] No camera update needed
[2026-06-13 15:30:17,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:30:17,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:30:17,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:30:17,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:30:19,407.407 INFO    ] ================================================
[2026-06-13 15:30:19,422.422 INFO    ] Launching Daemon at Sat Jun 13 15:30:19 IST 2026
[2026-06-13 15:30:19,432.432 INFO    ] ================================================
[2026-06-13 15:30:19,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:30:19
[2026-06-13 15:30:20,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:30:20,229.229 INFO    ] Initializing speech engine...
[2026-06-13 15:30:20,235.235 INFO    ] 2026-06-13 15:30:20
[2026-06-13 15:30:20,450.450 INFO    ] 2026-06-13 15:30:20
[2026-06-13 15:30:20,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:20,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:20,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:20,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:20,855.855 INFO    ] time= 13/06/2026 15:30:20
[2026-06-13 15:30:20,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:20,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:20,995.995 INFO    ] No existing commands found in stream
[2026-06-13 15:30:26,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:30:26,008.008 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 15:30:28,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:30:28,832.832 INFO    ] Checking for system updates...
[2026-06-13 15:30:28,853.853 INFO    ] 200
[2026-06-13 15:30:28,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:28,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:28,890.890 INFO    ] No update needed
[2026-06-13 15:30:28,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 15:30:28,917.917 INFO    ] 200
[2026-06-13 15:30:28,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:28,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:30:28,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:30:28,971.971 INFO    ] No camera update needed
[2026-06-13 15:30:28,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:30:28,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:30:28,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:30:28,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:30:31,017.017 INFO    ] ================================================
[2026-06-13 15:30:31,032.032 INFO    ] Launching Daemon at Sat Jun 13 15:30:31 IST 2026
[2026-06-13 15:30:31,043.043 INFO    ] ================================================
[2026-06-13 15:30:31,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:30:31
[2026-06-13 15:30:31,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:30:31,884.884 INFO    ] Initializing speech engine...
[2026-06-13 15:30:31,899.899 INFO    ] 2026-06-13 15:30:31
[2026-06-13 15:30:32,127.127 INFO    ] 2026-06-13 15:30:32
[2026-06-13 15:30:32,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:32,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:32,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:32,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:32,568.568 INFO    ] time= 13/06/2026 15:30:32
[2026-06-13 15:30:32,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:32,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:32,692.692 INFO    ] No existing commands found in stream
[2026-06-13 15:30:37,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:30:37,703.703 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 15:30:39,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:30:39,080.080 INFO    ] Checking for system updates...
[2026-06-13 15:30:39,117.117 INFO    ] 200
[2026-06-13 15:30:39,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:39,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:30:39,178.178 INFO    ] No update needed
[2026-06-13 15:30:39,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 15:30:39,220.220 INFO    ] 200
[2026-06-13 15:30:39,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:39,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:30:39,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:30:39,303.303 INFO    ] No camera update needed
[2026-06-13 15:30:39,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:30:39,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:30:39,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:30:39,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:30:41,364.364 INFO    ] ================================================
[2026-06-13 15:30:41,379.379 INFO    ] Launching Daemon at Sat Jun 13 15:30:41 IST 2026
[2026-06-13 15:30:41,390.390 INFO    ] ================================================
[2026-06-13 15:30:41,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:30:41
[2026-06-13 15:30:42,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:30:42,180.180 INFO    ] Initializing speech engine...
[2026-06-13 15:30:42,185.185 INFO    ] 2026-06-13 15:30:42
[2026-06-13 15:30:42,390.390 INFO    ] 2026-06-13 15:30:42
[2026-06-13 15:30:42,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:42,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:42,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:42,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:42,790.790 INFO    ] time= 13/06/2026 15:30:42
[2026-06-13 15:30:42,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:42,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:42,912.912 INFO    ] No existing commands found in stream
[2026-06-13 15:30:47,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:30:47,925.925 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 15:30:48,969.969 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 15:30:48,993.993 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 15:30:49,002.002 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd07d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 15:30:49,010.010 INFO    ] None
[2026-06-13 15:30:49,013.013 INFO    ] Checking for system updates...
[2026-06-13 15:30:49,044.044 INFO    ] 200
[2026-06-13 15:30:49,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:49,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:30:49,077.077 INFO    ] No update needed
[2026-06-13 15:30:49,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 15:30:49,098.098 INFO    ] 200
[2026-06-13 15:30:49,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:30:49,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:30:53,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:30:53,544.544 INFO    ] No camera update needed
[2026-06-13 15:30:53,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:30:53,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:30:53,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:30:53,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:30:55,606.606 INFO    ] ================================================
[2026-06-13 15:30:55,621.621 INFO    ] Launching Daemon at Sat Jun 13 15:30:55 IST 2026
[2026-06-13 15:30:55,632.632 INFO    ] ================================================
[2026-06-13 15:30:55,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:30:55
[2026-06-13 15:30:56,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:30:56,482.482 INFO    ] Initializing speech engine...
[2026-06-13 15:30:56,492.492 INFO    ] 2026-06-13 15:30:56
[2026-06-13 15:30:56,777.777 INFO    ] 2026-06-13 15:30:56
[2026-06-13 15:30:56,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:30:57,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:30:57,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:30:57,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:30:57,215.215 INFO    ] time= 13/06/2026 15:30:57
[2026-06-13 15:30:57,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:30:57,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:30:57,417.417 INFO    ] No existing commands found in stream
[2026-06-13 15:31:02,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:31:02,455.455 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 15:31:03,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:31:03,827.827 INFO    ] Checking for system updates...
[2026-06-13 15:31:03,869.869 INFO    ] 200
[2026-06-13 15:31:03,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:03,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:31:03,932.932 INFO    ] No update needed
[2026-06-13 15:31:03,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 15:31:03,970.970 INFO    ] 200
[2026-06-13 15:31:03,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:04,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:31:04,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:31:04,051.051 INFO    ] No camera update needed
[2026-06-13 15:31:04,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:31:04,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:31:04,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:31:04,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:31:06,112.112 INFO    ] ================================================
[2026-06-13 15:31:06,127.127 INFO    ] Launching Daemon at Sat Jun 13 15:31:06 IST 2026
[2026-06-13 15:31:06,139.139 INFO    ] ================================================
[2026-06-13 15:31:06,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:31:06
[2026-06-13 15:31:06,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:31:06,941.941 INFO    ] Initializing speech engine...
[2026-06-13 15:31:06,954.954 INFO    ] 2026-06-13 15:31:06
[2026-06-13 15:31:07,165.165 INFO    ] 2026-06-13 15:31:07
[2026-06-13 15:31:07,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:31:07,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:31:07,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:31:07,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:31:07,586.586 INFO    ] time= 13/06/2026 15:31:07
[2026-06-13 15:31:07,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:31:07,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:31:07,683.683 INFO    ] No existing commands found in stream
[2026-06-13 15:31:12,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:31:12,696.696 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 15:31:16,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:31:16,123.123 INFO    ] Checking for system updates...
[2026-06-13 15:31:16,145.145 INFO    ] 200
[2026-06-13 15:31:16,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:16,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:16,180.180 INFO    ] No update needed
[2026-06-13 15:31:16,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 15:31:16,201.201 INFO    ] 200
[2026-06-13 15:31:16,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:16,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:31:16,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:31:16,266.266 INFO    ] No camera update needed
[2026-06-13 15:31:16,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:31:16,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:31:16,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:31:16,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:31:18,314.314 INFO    ] ================================================
[2026-06-13 15:31:18,330.330 INFO    ] Launching Daemon at Sat Jun 13 15:31:18 IST 2026
[2026-06-13 15:31:18,341.341 INFO    ] ================================================
[2026-06-13 15:31:18,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:31:18
[2026-06-13 15:31:19,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:31:19,350.350 INFO    ] Initializing speech engine...
[2026-06-13 15:31:19,366.366 INFO    ] 2026-06-13 15:31:19
[2026-06-13 15:31:19,623.623 INFO    ] 2026-06-13 15:31:19
[2026-06-13 15:31:19,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:31:19,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:31:19,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:31:19,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:31:19,963.963 INFO    ] time= 13/06/2026 15:31:19
[2026-06-13 15:31:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:31:19,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:31:20,075.075 INFO    ] No existing commands found in stream
[2026-06-13 15:31:25,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:31:25,090.090 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 15:31:26,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:31:26,738.738 INFO    ] Checking for system updates...
[2026-06-13 15:31:26,759.759 INFO    ] 200
[2026-06-13 15:31:26,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:26,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:26,795.795 INFO    ] No update needed
[2026-06-13 15:31:26,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 15:31:26,819.819 INFO    ] 200
[2026-06-13 15:31:26,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:26,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:31:26,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:26,883.883 INFO    ] No camera update needed
[2026-06-13 15:31:26,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:31:26,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:31:26,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:31:26,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:31:28,932.932 INFO    ] ================================================
[2026-06-13 15:31:28,948.948 INFO    ] Launching Daemon at Sat Jun 13 15:31:28 IST 2026
[2026-06-13 15:31:28,959.959 INFO    ] ================================================
[2026-06-13 15:31:29,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:31:29
[2026-06-13 15:31:29,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:31:29,769.769 INFO    ] Initializing speech engine...
[2026-06-13 15:31:29,774.774 INFO    ] 2026-06-13 15:31:29
[2026-06-13 15:31:29,980.980 INFO    ] 2026-06-13 15:31:29
[2026-06-13 15:31:30,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:31:30,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:31:30,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:31:30,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:31:30,375.375 INFO    ] time= 13/06/2026 15:31:30
[2026-06-13 15:31:30,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:31:30,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:31:30,488.488 INFO    ] No existing commands found in stream
[2026-06-13 15:31:35,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:31:35,505.505 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 15:31:38,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:31:38,945.945 INFO    ] Checking for system updates...
[2026-06-13 15:31:38,967.967 INFO    ] 200
[2026-06-13 15:31:38,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:38,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:39,000.000 INFO    ] No update needed
[2026-06-13 15:31:39,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 15:31:39,021.021 INFO    ] 200
[2026-06-13 15:31:39,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:39,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:31:39,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:39,084.084 INFO    ] No camera update needed
[2026-06-13 15:31:39,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:31:39,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:31:39,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:31:39,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:31:41,132.132 INFO    ] ================================================
[2026-06-13 15:31:41,147.147 INFO    ] Launching Daemon at Sat Jun 13 15:31:41 IST 2026
[2026-06-13 15:31:41,158.158 INFO    ] ================================================
[2026-06-13 15:31:41,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:31:41
[2026-06-13 15:31:41,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:31:41,993.993 INFO    ] Initializing speech engine...
[2026-06-13 15:31:42,006.006 INFO    ] 2026-06-13 15:31:41
[2026-06-13 15:31:42,225.225 INFO    ] 2026-06-13 15:31:42
[2026-06-13 15:31:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:31:42,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:31:42,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:31:42,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:31:42,605.605 INFO    ] time= 13/06/2026 15:31:42
[2026-06-13 15:31:42,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:31:42,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:31:42,787.787 INFO    ] No existing commands found in stream
[2026-06-13 15:31:47,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:31:47,801.801 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 15:31:51,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:31:51,635.635 INFO    ] Checking for system updates...
[2026-06-13 15:31:51,656.656 INFO    ] 200
[2026-06-13 15:31:51,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:51,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:51,691.691 INFO    ] No update needed
[2026-06-13 15:31:51,693.693 INFO    ] Checking for camera pi updates...
[2026-06-13 15:31:51,712.712 INFO    ] 200
[2026-06-13 15:31:51,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:31:51,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:31:51,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:31:51,760.760 INFO    ] No camera update needed
[2026-06-13 15:31:51,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:31:51,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:31:51,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:31:51,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:31:53,806.806 INFO    ] ================================================
[2026-06-13 15:31:53,822.822 INFO    ] Launching Daemon at Sat Jun 13 15:31:53 IST 2026
[2026-06-13 15:31:53,832.832 INFO    ] ================================================
[2026-06-13 15:31:54,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:31:54
[2026-06-13 15:31:54,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:31:54,638.638 INFO    ] Initializing speech engine...
[2026-06-13 15:31:54,642.642 INFO    ] 2026-06-13 15:31:54
[2026-06-13 15:31:54,909.909 INFO    ] 2026-06-13 15:31:54
[2026-06-13 15:31:54,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:31:55,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:31:55,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:31:55,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:31:55,315.315 INFO    ] time= 13/06/2026 15:31:55
[2026-06-13 15:31:55,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:31:55,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:31:55,432.432 INFO    ] No existing commands found in stream
[2026-06-13 15:32:00,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:00,444.444 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 15:32:03,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:32:03,085.085 INFO    ] Checking for system updates...
[2026-06-13 15:32:03,107.107 INFO    ] 200
[2026-06-13 15:32:03,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:03,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:03,141.141 INFO    ] No update needed
[2026-06-13 15:32:03,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:03,162.162 INFO    ] 200
[2026-06-13 15:32:03,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:03,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:03,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:03,225.225 INFO    ] No camera update needed
[2026-06-13 15:32:03,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:03,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:03,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:03,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:32:05,274.274 INFO    ] ================================================
[2026-06-13 15:32:05,289.289 INFO    ] Launching Daemon at Sat Jun 13 15:32:05 IST 2026
[2026-06-13 15:32:05,300.300 INFO    ] ================================================
[2026-06-13 15:32:05,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:32:05
[2026-06-13 15:32:06,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:32:06,176.176 INFO    ] Initializing speech engine...
[2026-06-13 15:32:06,181.181 INFO    ] 2026-06-13 15:32:06
[2026-06-13 15:32:06,385.385 INFO    ] 2026-06-13 15:32:06
[2026-06-13 15:32:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:32:06,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:32:06,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:32:06,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:32:06,793.793 INFO    ] time= 13/06/2026 15:32:06
[2026-06-13 15:32:06,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:32:06,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:32:06,897.897 INFO    ] No existing commands found in stream
[2026-06-13 15:32:11,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:11,911.911 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 15:32:14,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:32:14,446.446 INFO    ] Checking for system updates...
[2026-06-13 15:32:14,470.470 INFO    ] 200
[2026-06-13 15:32:14,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:14,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:14,503.503 INFO    ] No update needed
[2026-06-13 15:32:14,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:14,524.524 INFO    ] 200
[2026-06-13 15:32:14,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:14,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:14,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:14,588.588 INFO    ] No camera update needed
[2026-06-13 15:32:14,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:14,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:14,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:14,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:32:16,636.636 INFO    ] ================================================
[2026-06-13 15:32:16,652.652 INFO    ] Launching Daemon at Sat Jun 13 15:32:16 IST 2026
[2026-06-13 15:32:16,663.663 INFO    ] ================================================
[2026-06-13 15:32:17,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:32:17
[2026-06-13 15:32:17,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:32:17,486.486 INFO    ] Initializing speech engine...
[2026-06-13 15:32:17,491.491 INFO    ] 2026-06-13 15:32:17
[2026-06-13 15:32:17,695.695 INFO    ] 2026-06-13 15:32:17
[2026-06-13 15:32:17,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:32:17,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:32:17,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:32:18,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:32:18,112.112 INFO    ] time= 13/06/2026 15:32:18
[2026-06-13 15:32:18,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:32:18,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:32:18,209.209 INFO    ] No existing commands found in stream
[2026-06-13 15:32:23,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:23,221.221 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 15:32:27,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:32:27,308.308 INFO    ] Checking for system updates...
[2026-06-13 15:32:27,329.329 INFO    ] 200
[2026-06-13 15:32:27,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:27,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:27,363.363 INFO    ] No update needed
[2026-06-13 15:32:27,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:27,385.385 INFO    ] 200
[2026-06-13 15:32:27,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:27,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:27,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:27,449.449 INFO    ] No camera update needed
[2026-06-13 15:32:27,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:27,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:27,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:27,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:32:29,497.497 INFO    ] ================================================
[2026-06-13 15:32:29,513.513 INFO    ] Launching Daemon at Sat Jun 13 15:32:29 IST 2026
[2026-06-13 15:32:29,524.524 INFO    ] ================================================
[2026-06-13 15:32:29,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:32:29
[2026-06-13 15:32:30,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:32:30,316.316 INFO    ] Initializing speech engine...
[2026-06-13 15:32:30,326.326 INFO    ] 2026-06-13 15:32:30
[2026-06-13 15:32:30,531.531 INFO    ] 2026-06-13 15:32:30
[2026-06-13 15:32:30,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:32:30,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:32:30,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:32:30,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:32:30,924.924 INFO    ] time= 13/06/2026 15:32:30
[2026-06-13 15:32:30,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:32:30,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:32:31,051.051 INFO    ] No existing commands found in stream
[2026-06-13 15:32:36,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:36,063.063 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 15:32:37,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:32:37,755.755 INFO    ] Checking for system updates...
[2026-06-13 15:32:37,776.776 INFO    ] 200
[2026-06-13 15:32:37,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:37,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:37,814.814 INFO    ] No update needed
[2026-06-13 15:32:37,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:37,836.836 INFO    ] 200
[2026-06-13 15:32:37,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:37,861.861 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:37,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:32:37,902.902 INFO    ] No camera update needed
[2026-06-13 15:32:37,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:37,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:37,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:37,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:32:39,952.952 INFO    ] ================================================
[2026-06-13 15:32:39,968.968 INFO    ] Launching Daemon at Sat Jun 13 15:32:39 IST 2026
[2026-06-13 15:32:39,979.979 INFO    ] ================================================
[2026-06-13 15:32:40,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:32:40
[2026-06-13 15:32:40,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:32:40,761.761 INFO    ] Initializing speech engine...
[2026-06-13 15:32:40,769.769 INFO    ] 2026-06-13 15:32:40
[2026-06-13 15:32:40,971.971 INFO    ] 2026-06-13 15:32:40
[2026-06-13 15:32:41,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:32:41,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:32:41,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:32:41,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:32:41,410.410 INFO    ] time= 13/06/2026 15:32:41
[2026-06-13 15:32:41,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:32:41,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:32:41,524.524 INFO    ] No existing commands found in stream
[2026-06-13 15:32:46,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:46,537.537 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 15:32:47,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:32:47,511.511 INFO    ] Checking for system updates...
[2026-06-13 15:32:47,532.532 INFO    ] 200
[2026-06-13 15:32:47,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:47,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:47,566.566 INFO    ] No update needed
[2026-06-13 15:32:47,567.567 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:47,589.589 INFO    ] 200
[2026-06-13 15:32:47,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:47,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:47,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:47,665.665 INFO    ] No camera update needed
[2026-06-13 15:32:47,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:47,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:47,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:47,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:32:49,713.713 INFO    ] ================================================
[2026-06-13 15:32:49,729.729 INFO    ] Launching Daemon at Sat Jun 13 15:32:49 IST 2026
[2026-06-13 15:32:49,741.741 INFO    ] ================================================
[2026-06-13 15:32:50,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:32:50
[2026-06-13 15:32:50,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:32:50,619.619 INFO    ] Initializing speech engine...
[2026-06-13 15:32:50,626.626 INFO    ] 2026-06-13 15:32:50
[2026-06-13 15:32:50,836.836 INFO    ] 2026-06-13 15:32:50
[2026-06-13 15:32:50,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:32:51,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:32:51,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:32:51,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:32:51,262.262 INFO    ] time= 13/06/2026 15:32:51
[2026-06-13 15:32:51,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:32:51,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:32:51,366.366 INFO    ] No existing commands found in stream
[2026-06-13 15:32:56,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:32:56,384.384 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 15:32:59,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:32:59,171.171 INFO    ] Checking for system updates...
[2026-06-13 15:32:59,191.191 INFO    ] 200
[2026-06-13 15:32:59,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:59,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:59,227.227 INFO    ] No update needed
[2026-06-13 15:32:59,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 15:32:59,250.250 INFO    ] 200
[2026-06-13 15:32:59,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:32:59,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:32:59,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:32:59,415.415 INFO    ] No camera update needed
[2026-06-13 15:32:59,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:32:59,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:32:59,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:32:59,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:01,459.459 INFO    ] ================================================
[2026-06-13 15:33:01,474.474 INFO    ] Launching Daemon at Sat Jun 13 15:33:01 IST 2026
[2026-06-13 15:33:01,486.486 INFO    ] ================================================
[2026-06-13 15:33:01,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:01
[2026-06-13 15:33:02,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:02,416.416 INFO    ] Initializing speech engine...
[2026-06-13 15:33:02,421.421 INFO    ] 2026-06-13 15:33:02
[2026-06-13 15:33:02,627.627 INFO    ] 2026-06-13 15:33:02
[2026-06-13 15:33:02,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:02,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:02,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:02,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:03,014.014 INFO    ] time= 13/06/2026 15:33:02
[2026-06-13 15:33:03,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:03,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:03,174.174 INFO    ] No existing commands found in stream
[2026-06-13 15:33:08,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:33:08,187.187 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 15:33:10,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:33:10,920.920 INFO    ] Checking for system updates...
[2026-06-13 15:33:10,941.941 INFO    ] 200
[2026-06-13 15:33:10,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:10,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:10,974.974 INFO    ] No update needed
[2026-06-13 15:33:10,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 15:33:10,995.995 INFO    ] 200
[2026-06-13 15:33:10,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:11,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:33:11,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:11,069.069 INFO    ] No camera update needed
[2026-06-13 15:33:11,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:33:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:33:11,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:33:11,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:13,130.130 INFO    ] ================================================
[2026-06-13 15:33:13,145.145 INFO    ] Launching Daemon at Sat Jun 13 15:33:13 IST 2026
[2026-06-13 15:33:13,156.156 INFO    ] ================================================
[2026-06-13 15:33:13,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:13
[2026-06-13 15:33:14,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:14,408.408 INFO    ] Initializing speech engine...
[2026-06-13 15:33:14,418.418 INFO    ] 2026-06-13 15:33:14
[2026-06-13 15:33:14,621.621 INFO    ] 2026-06-13 15:33:14
[2026-06-13 15:33:14,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:14,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:14,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:14,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:15,019.019 INFO    ] time= 13/06/2026 15:33:14
[2026-06-13 15:33:15,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:15,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:15,135.135 INFO    ] No existing commands found in stream
[2026-06-13 15:33:20,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:33:20,152.152 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 15:33:22,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:33:22,936.936 INFO    ] Checking for system updates...
[2026-06-13 15:33:22,957.957 INFO    ] 200
[2026-06-13 15:33:22,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:22,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:22,990.990 INFO    ] No update needed
[2026-06-13 15:33:22,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 15:33:23,015.015 INFO    ] 200
[2026-06-13 15:33:23,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:23,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:33:23,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:23,081.081 INFO    ] No camera update needed
[2026-06-13 15:33:23,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:33:23,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:33:23,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:33:23,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:25,122.122 INFO    ] ================================================
[2026-06-13 15:33:25,131.131 INFO    ] Launching Daemon at Sat Jun 13 15:33:25 IST 2026
[2026-06-13 15:33:25,138.138 INFO    ] ================================================
[2026-06-13 15:33:25,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:25
[2026-06-13 15:33:25,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:25,982.982 INFO    ] Initializing speech engine...
[2026-06-13 15:33:25,993.993 INFO    ] 2026-06-13 15:33:25
[2026-06-13 15:33:26,215.215 INFO    ] 2026-06-13 15:33:26
[2026-06-13 15:33:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:26,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:26,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:26,611.611 INFO    ] time= 13/06/2026 15:33:26
[2026-06-13 15:33:26,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:26,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:26,780.780 INFO    ] No existing commands found in stream
[2026-06-13 15:33:31,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:33:31,790.790 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 15:33:33,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:33:33,267.267 INFO    ] Checking for system updates...
[2026-06-13 15:33:33,289.289 INFO    ] 200
[2026-06-13 15:33:33,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:33,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:33,325.325 INFO    ] No update needed
[2026-06-13 15:33:33,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 15:33:33,347.347 INFO    ] 200
[2026-06-13 15:33:33,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:33,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:33:33,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:33,413.413 INFO    ] No camera update needed
[2026-06-13 15:33:33,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:33:33,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:33:33,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:33:33,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:35,461.461 INFO    ] ================================================
[2026-06-13 15:33:35,477.477 INFO    ] Launching Daemon at Sat Jun 13 15:33:35 IST 2026
[2026-06-13 15:33:35,488.488 INFO    ] ================================================
[2026-06-13 15:33:35,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:35
[2026-06-13 15:33:36,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:36,334.334 INFO    ] Initializing speech engine...
[2026-06-13 15:33:36,339.339 INFO    ] 2026-06-13 15:33:36
[2026-06-13 15:33:36,525.525 INFO    ] 2026-06-13 15:33:36
[2026-06-13 15:33:36,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:36,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:36,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:36,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:36,796.796 INFO    ] time= 13/06/2026 15:33:36
[2026-06-13 15:33:36,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:36,974.974 INFO    ] No existing commands found in stream
[2026-06-13 15:33:41,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:33:41,994.994 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 15:33:42,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:33:42,827.827 INFO    ] Checking for system updates...
[2026-06-13 15:33:42,851.851 INFO    ] 200
[2026-06-13 15:33:42,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:42,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:42,886.886 INFO    ] No update needed
[2026-06-13 15:33:42,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 15:33:42,908.908 INFO    ] 200
[2026-06-13 15:33:42,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:42,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:33:42,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:42,974.974 INFO    ] No camera update needed
[2026-06-13 15:33:42,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:33:42,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:33:42,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:33:42,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:45,022.022 INFO    ] ================================================
[2026-06-13 15:33:45,037.037 INFO    ] Launching Daemon at Sat Jun 13 15:33:45 IST 2026
[2026-06-13 15:33:45,048.048 INFO    ] ================================================
[2026-06-13 15:33:45,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:45
[2026-06-13 15:33:45,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:45,849.849 INFO    ] Initializing speech engine...
[2026-06-13 15:33:45,854.854 INFO    ] 2026-06-13 15:33:45
[2026-06-13 15:33:46,059.059 INFO    ] 2026-06-13 15:33:46
[2026-06-13 15:33:46,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:46,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:46,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:46,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:46,380.380 INFO    ] time= 13/06/2026 15:33:46
[2026-06-13 15:33:46,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:46,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:46,554.554 INFO    ] No existing commands found in stream
[2026-06-13 15:33:51,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:33:51,572.572 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 15:33:55,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:33:55,600.600 INFO    ] Checking for system updates...
[2026-06-13 15:33:55,622.622 INFO    ] 200
[2026-06-13 15:33:55,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:55,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:33:55,655.655 INFO    ] No update needed
[2026-06-13 15:33:55,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 15:33:55,676.676 INFO    ] 200
[2026-06-13 15:33:55,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:33:55,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:33:55,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:33:55,740.740 INFO    ] No camera update needed
[2026-06-13 15:33:55,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:33:55,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:33:55,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:33:55,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:33:57,786.786 INFO    ] ================================================
[2026-06-13 15:33:57,801.801 INFO    ] Launching Daemon at Sat Jun 13 15:33:57 IST 2026
[2026-06-13 15:33:57,812.812 INFO    ] ================================================
[2026-06-13 15:33:58,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:33:58
[2026-06-13 15:33:58,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:33:58,619.619 INFO    ] Initializing speech engine...
[2026-06-13 15:33:58,629.629 INFO    ] 2026-06-13 15:33:58
[2026-06-13 15:33:58,844.844 INFO    ] 2026-06-13 15:33:58
[2026-06-13 15:33:58,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:33:59,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:33:59,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:33:59,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:33:59,261.261 INFO    ] time= 13/06/2026 15:33:59
[2026-06-13 15:33:59,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:33:59,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:33:59,398.398 INFO    ] No existing commands found in stream
[2026-06-13 15:34:04,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:34:04,411.411 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 15:34:08,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:34:08,211.211 INFO    ] Checking for system updates...
[2026-06-13 15:34:08,232.232 INFO    ] 200
[2026-06-13 15:34:08,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:08,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:08,265.265 INFO    ] No update needed
[2026-06-13 15:34:08,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 15:34:08,288.288 INFO    ] 200
[2026-06-13 15:34:08,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:08,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:34:08,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:08,351.351 INFO    ] No camera update needed
[2026-06-13 15:34:08,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:34:08,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:34:08,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:34:08,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:34:10,398.398 INFO    ] ================================================
[2026-06-13 15:34:10,413.413 INFO    ] Launching Daemon at Sat Jun 13 15:34:10 IST 2026
[2026-06-13 15:34:10,424.424 INFO    ] ================================================
[2026-06-13 15:34:10,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:34:10
[2026-06-13 15:34:11,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:34:11,263.263 INFO    ] Initializing speech engine...
[2026-06-13 15:34:11,268.268 INFO    ] 2026-06-13 15:34:11
[2026-06-13 15:34:11,476.476 INFO    ] 2026-06-13 15:34:11
[2026-06-13 15:34:11,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:34:11,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:34:11,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:34:11,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:34:11,873.873 INFO    ] time= 13/06/2026 15:34:11
[2026-06-13 15:34:11,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:34:11,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:34:11,989.989 INFO    ] No existing commands found in stream
[2026-06-13 15:34:17,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:34:17,006.006 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 15:34:20,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:34:20,546.546 INFO    ] Checking for system updates...
[2026-06-13 15:34:20,567.567 INFO    ] 200
[2026-06-13 15:34:20,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:20,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:20,602.602 INFO    ] No update needed
[2026-06-13 15:34:20,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 15:34:20,623.623 INFO    ] 200
[2026-06-13 15:34:20,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:20,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:34:20,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:20,690.690 INFO    ] No camera update needed
[2026-06-13 15:34:20,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:34:20,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:34:20,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:34:20,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:34:22,738.738 INFO    ] ================================================
[2026-06-13 15:34:22,753.753 INFO    ] Launching Daemon at Sat Jun 13 15:34:22 IST 2026
[2026-06-13 15:34:22,764.764 INFO    ] ================================================
[2026-06-13 15:34:23,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:34:23
[2026-06-13 15:34:23,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:34:23,551.551 INFO    ] Initializing speech engine...
[2026-06-13 15:34:23,556.556 INFO    ] 2026-06-13 15:34:23
[2026-06-13 15:34:23,757.757 INFO    ] 2026-06-13 15:34:23
[2026-06-13 15:34:23,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:34:23,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:34:23,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:34:24,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:34:24,168.168 INFO    ] time= 13/06/2026 15:34:24
[2026-06-13 15:34:24,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:34:24,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:34:24,363.363 INFO    ] No existing commands found in stream
[2026-06-13 15:34:29,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:34:29,384.384 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 15:34:30,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:34:30,911.911 INFO    ] Checking for system updates...
[2026-06-13 15:34:30,933.933 INFO    ] 200
[2026-06-13 15:34:30,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:30,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:30,966.966 INFO    ] No update needed
[2026-06-13 15:34:30,967.967 INFO    ] Checking for camera pi updates...
[2026-06-13 15:34:30,989.989 INFO    ] 200
[2026-06-13 15:34:30,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:31,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:34:31,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:31,057.057 INFO    ] No camera update needed
[2026-06-13 15:34:31,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:34:31,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:34:31,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:34:31,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:34:33,097.097 INFO    ] ================================================
[2026-06-13 15:34:33,112.112 INFO    ] Launching Daemon at Sat Jun 13 15:34:33 IST 2026
[2026-06-13 15:34:33,123.123 INFO    ] ================================================
[2026-06-13 15:34:33,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:34:33
[2026-06-13 15:34:33,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:34:33,902.902 INFO    ] Initializing speech engine...
[2026-06-13 15:34:33,910.910 INFO    ] 2026-06-13 15:34:33
[2026-06-13 15:34:34,122.122 INFO    ] 2026-06-13 15:34:34
[2026-06-13 15:34:34,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:34:34,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:34:34,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:34:34,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:34:34,528.528 INFO    ] time= 13/06/2026 15:34:34
[2026-06-13 15:34:34,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:34:34,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:34:34,636.636 INFO    ] No existing commands found in stream
[2026-06-13 15:34:39,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:34:39,650.650 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 15:34:42,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:34:42,935.935 INFO    ] Checking for system updates...
[2026-06-13 15:34:42,957.957 INFO    ] 200
[2026-06-13 15:34:42,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:42,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:42,990.990 INFO    ] No update needed
[2026-06-13 15:34:42,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 15:34:43,011.011 INFO    ] 200
[2026-06-13 15:34:43,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:43,035.035 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:34:43,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:34:43,078.078 INFO    ] No camera update needed
[2026-06-13 15:34:43,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:34:43,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:34:43,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:34:43,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:34:45,124.124 INFO    ] ================================================
[2026-06-13 15:34:45,139.139 INFO    ] Launching Daemon at Sat Jun 13 15:34:45 IST 2026
[2026-06-13 15:34:45,150.150 INFO    ] ================================================
[2026-06-13 15:34:45,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:34:45
[2026-06-13 15:34:45,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:34:45,923.923 INFO    ] Initializing speech engine...
[2026-06-13 15:34:45,931.931 INFO    ] 2026-06-13 15:34:45
[2026-06-13 15:34:46,152.152 INFO    ] 2026-06-13 15:34:46
[2026-06-13 15:34:46,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:34:46,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:34:46,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:34:46,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:34:46,971.971 INFO    ] time= 13/06/2026 15:34:46
[2026-06-13 15:34:46,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:34:47,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:34:47,096.096 INFO    ] No existing commands found in stream
[2026-06-13 15:34:52,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:34:52,110.110 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 15:34:55,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:34:55,521.521 INFO    ] Checking for system updates...
[2026-06-13 15:34:55,542.542 INFO    ] 200
[2026-06-13 15:34:55,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:55,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:34:55,576.576 INFO    ] No update needed
[2026-06-13 15:34:55,577.577 INFO    ] Checking for camera pi updates...
[2026-06-13 15:34:55,597.597 INFO    ] 200
[2026-06-13 15:34:55,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:34:55,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:34:55,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:34:55,666.666 INFO    ] No camera update needed
[2026-06-13 15:34:55,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:34:55,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:34:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:34:55,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:34:57,715.715 INFO    ] ================================================
[2026-06-13 15:34:57,730.730 INFO    ] Launching Daemon at Sat Jun 13 15:34:57 IST 2026
[2026-06-13 15:34:57,740.740 INFO    ] ================================================
[2026-06-13 15:34:58,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:34:58
[2026-06-13 15:34:58,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:34:58,530.530 INFO    ] Initializing speech engine...
[2026-06-13 15:34:58,535.535 INFO    ] 2026-06-13 15:34:58
[2026-06-13 15:34:58,740.740 INFO    ] 2026-06-13 15:34:58
[2026-06-13 15:34:58,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:34:58,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:34:58,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:34:59,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:34:59,148.148 INFO    ] time= 13/06/2026 15:34:59
[2026-06-13 15:34:59,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:34:59,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:34:59,259.259 INFO    ] No existing commands found in stream
[2026-06-13 15:35:04,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:04,272.272 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 15:35:04,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:35:04,899.899 INFO    ] Checking for system updates...
[2026-06-13 15:35:04,921.921 INFO    ] 200
[2026-06-13 15:35:04,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:04,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:35:04,955.955 INFO    ] No update needed
[2026-06-13 15:35:04,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 15:35:04,976.976 INFO    ] 200
[2026-06-13 15:35:04,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:05,002.002 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:35:05,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:35:05,025.025 INFO    ] No camera update needed
[2026-06-13 15:35:05,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:35:05,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:35:05,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:35:05,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:35:07,059.059 INFO    ] ================================================
[2026-06-13 15:35:07,067.067 INFO    ] Launching Daemon at Sat Jun 13 15:35:07 IST 2026
[2026-06-13 15:35:07,073.073 INFO    ] ================================================
[2026-06-13 15:35:07,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:35:07
[2026-06-13 15:35:07,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:35:07,865.865 INFO    ] Initializing speech engine...
[2026-06-13 15:35:07,877.877 INFO    ] 2026-06-13 15:35:07
[2026-06-13 15:35:08,085.085 INFO    ] 2026-06-13 15:35:08
[2026-06-13 15:35:08,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:35:08,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:35:08,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:35:08,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:35:08,497.497 INFO    ] time= 13/06/2026 15:35:08
[2026-06-13 15:35:08,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:35:08,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:35:08,608.608 INFO    ] No existing commands found in stream
[2026-06-13 15:35:13,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:13,622.622 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 15:35:17,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:35:17,604.604 INFO    ] Checking for system updates...
[2026-06-13 15:35:17,625.625 INFO    ] 200
[2026-06-13 15:35:17,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:17,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:35:17,660.660 INFO    ] No update needed
[2026-06-13 15:35:17,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 15:35:17,682.682 INFO    ] 200
[2026-06-13 15:35:17,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:17,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:35:17,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:35:17,751.751 INFO    ] No camera update needed
[2026-06-13 15:35:17,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:35:17,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:35:17,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:35:17,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:35:19,799.799 INFO    ] ================================================
[2026-06-13 15:35:19,815.815 INFO    ] Launching Daemon at Sat Jun 13 15:35:19 IST 2026
[2026-06-13 15:35:19,826.826 INFO    ] ================================================
[2026-06-13 15:35:20,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:35:20
[2026-06-13 15:35:20,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:35:20,645.645 INFO    ] Initializing speech engine...
[2026-06-13 15:35:20,650.650 INFO    ] 2026-06-13 15:35:20
[2026-06-13 15:35:20,875.875 INFO    ] 2026-06-13 15:35:20
[2026-06-13 15:35:20,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:35:21,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:35:21,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:35:21,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:35:21,292.292 INFO    ] time= 13/06/2026 15:35:21
[2026-06-13 15:35:21,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:35:21,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:35:21,419.419 INFO    ] No existing commands found in stream
[2026-06-13 15:35:26,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:26,432.432 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 15:35:28,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:35:28,672.672 INFO    ] Checking for system updates...
[2026-06-13 15:35:28,695.695 INFO    ] 200
[2026-06-13 15:35:28,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:28,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:35:28,730.730 INFO    ] No update needed
[2026-06-13 15:35:28,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 15:35:28,751.751 INFO    ] 200
[2026-06-13 15:35:28,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:28,776.776 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:35:28,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:35:28,828.828 INFO    ] No camera update needed
[2026-06-13 15:35:28,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:35:28,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:35:28,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:35:28,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:35:30,875.875 INFO    ] ================================================
[2026-06-13 15:35:30,891.891 INFO    ] Launching Daemon at Sat Jun 13 15:35:30 IST 2026
[2026-06-13 15:35:30,902.902 INFO    ] ================================================
[2026-06-13 15:35:31,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:35:31
[2026-06-13 15:35:31,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:35:31,937.937 INFO    ] Initializing speech engine...
[2026-06-13 15:35:31,961.961 INFO    ] 2026-06-13 15:35:31
[2026-06-13 15:35:32,240.240 INFO    ] 2026-06-13 15:35:32
[2026-06-13 15:35:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:35:32,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:35:32,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:35:32,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:35:32,627.627 INFO    ] time= 13/06/2026 15:35:32
[2026-06-13 15:35:32,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:35:32,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:35:32,755.755 INFO    ] No existing commands found in stream
[2026-06-13 15:35:37,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:37,771.771 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 15:35:41,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:35:41,551.551 INFO    ] Checking for system updates...
[2026-06-13 15:35:41,572.572 INFO    ] 200
[2026-06-13 15:35:41,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:41,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:35:41,606.606 INFO    ] No update needed
[2026-06-13 15:35:41,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 15:35:41,626.626 INFO    ] 200
[2026-06-13 15:35:41,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:41,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:35:41,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:35:41,697.697 INFO    ] No camera update needed
[2026-06-13 15:35:41,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:35:41,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:35:41,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:35:41,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:35:43,744.744 INFO    ] ================================================
[2026-06-13 15:35:43,760.760 INFO    ] Launching Daemon at Sat Jun 13 15:35:43 IST 2026
[2026-06-13 15:35:43,771.771 INFO    ] ================================================
[2026-06-13 15:35:44,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:35:44
[2026-06-13 15:35:44,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:35:44,590.590 INFO    ] Initializing speech engine...
[2026-06-13 15:35:44,596.596 INFO    ] 2026-06-13 15:35:44
[2026-06-13 15:35:44,803.803 INFO    ] 2026-06-13 15:35:44
[2026-06-13 15:35:44,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:35:45,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:35:45,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:35:45,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:35:45,222.222 INFO    ] time= 13/06/2026 15:35:45
[2026-06-13 15:35:45,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:35:45,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:35:45,324.324 INFO    ] No existing commands found in stream
[2026-06-13 15:35:50,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:50,337.337 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 15:35:51,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:35:51,171.171 INFO    ] Checking for system updates...
[2026-06-13 15:35:51,192.192 INFO    ] 200
[2026-06-13 15:35:51,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:51,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:35:51,229.229 INFO    ] No update needed
[2026-06-13 15:35:51,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 15:35:51,250.250 INFO    ] 200
[2026-06-13 15:35:51,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:35:51,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:35:51,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:35:51,318.318 INFO    ] No camera update needed
[2026-06-13 15:35:51,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:35:51,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:35:51,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:35:51,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:35:53,365.365 INFO    ] ================================================
[2026-06-13 15:35:53,380.380 INFO    ] Launching Daemon at Sat Jun 13 15:35:53 IST 2026
[2026-06-13 15:35:53,392.392 INFO    ] ================================================
[2026-06-13 15:35:53,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:35:53
[2026-06-13 15:35:54,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:35:54,210.210 INFO    ] Initializing speech engine...
[2026-06-13 15:35:54,215.215 INFO    ] 2026-06-13 15:35:54
[2026-06-13 15:35:54,422.422 INFO    ] 2026-06-13 15:35:54
[2026-06-13 15:35:54,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:35:54,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:35:54,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:35:54,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:35:54,829.829 INFO    ] time= 13/06/2026 15:35:54
[2026-06-13 15:35:54,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:35:54,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:35:54,940.940 INFO    ] No existing commands found in stream
[2026-06-13 15:35:59,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:35:59,953.953 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 15:36:00,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:36:00,836.836 INFO    ] Checking for system updates...
[2026-06-13 15:36:00,860.860 INFO    ] 200
[2026-06-13 15:36:00,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:00,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:00,893.893 INFO    ] No update needed
[2026-06-13 15:36:00,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:00,915.915 INFO    ] 200
[2026-06-13 15:36:00,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:00,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:00,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:00,985.985 INFO    ] No camera update needed
[2026-06-13 15:36:00,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:00,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:00,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:00,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:36:03,027.027 INFO    ] ================================================
[2026-06-13 15:36:03,044.044 INFO    ] Launching Daemon at Sat Jun 13 15:36:03 IST 2026
[2026-06-13 15:36:03,055.055 INFO    ] ================================================
[2026-06-13 15:36:03,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:36:03
[2026-06-13 15:36:03,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:36:03,886.886 INFO    ] Initializing speech engine...
[2026-06-13 15:36:03,891.891 INFO    ] 2026-06-13 15:36:03
[2026-06-13 15:36:04,096.096 INFO    ] 2026-06-13 15:36:04
[2026-06-13 15:36:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:36:04,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:36:04,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:36:04,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:36:04,511.511 INFO    ] time= 13/06/2026 15:36:04
[2026-06-13 15:36:04,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:36:04,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:36:04,606.606 INFO    ] No existing commands found in stream
[2026-06-13 15:36:09,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:36:09,620.620 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 15:36:13,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:36:13,299.299 INFO    ] Checking for system updates...
[2026-06-13 15:36:13,320.320 INFO    ] 200
[2026-06-13 15:36:13,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:13,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:13,353.353 INFO    ] No update needed
[2026-06-13 15:36:13,354.354 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:13,374.374 INFO    ] 200
[2026-06-13 15:36:13,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:13,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:13,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:13,444.444 INFO    ] No camera update needed
[2026-06-13 15:36:13,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:13,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:13,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:13,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:36:15,492.492 INFO    ] ================================================
[2026-06-13 15:36:15,508.508 INFO    ] Launching Daemon at Sat Jun 13 15:36:15 IST 2026
[2026-06-13 15:36:15,519.519 INFO    ] ================================================
[2026-06-13 15:36:15,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:36:15
[2026-06-13 15:36:16,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:36:16,321.321 INFO    ] Initializing speech engine...
[2026-06-13 15:36:16,326.326 INFO    ] 2026-06-13 15:36:16
[2026-06-13 15:36:16,533.533 INFO    ] 2026-06-13 15:36:16
[2026-06-13 15:36:16,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:36:16,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:36:16,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:36:16,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:36:16,887.887 INFO    ] time= 13/06/2026 15:36:16
[2026-06-13 15:36:16,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:36:16,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:36:17,057.057 INFO    ] No existing commands found in stream
[2026-06-13 15:36:22,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:36:22,071.071 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 15:36:25,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:36:25,460.460 INFO    ] Checking for system updates...
[2026-06-13 15:36:25,481.481 INFO    ] 200
[2026-06-13 15:36:25,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:25,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:25,514.514 INFO    ] No update needed
[2026-06-13 15:36:25,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:25,535.535 INFO    ] 200
[2026-06-13 15:36:25,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:25,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:25,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:25,598.598 INFO    ] No camera update needed
[2026-06-13 15:36:25,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:25,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:25,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:25,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:36:27,648.648 INFO    ] ================================================
[2026-06-13 15:36:27,665.665 INFO    ] Launching Daemon at Sat Jun 13 15:36:27 IST 2026
[2026-06-13 15:36:27,676.676 INFO    ] ================================================
[2026-06-13 15:36:28,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:36:28
[2026-06-13 15:36:28,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:36:28,506.506 INFO    ] Initializing speech engine...
[2026-06-13 15:36:28,509.509 INFO    ] 2026-06-13 15:36:28
[2026-06-13 15:36:28,717.717 INFO    ] 2026-06-13 15:36:28
[2026-06-13 15:36:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:36:28,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:36:28,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:36:29,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:36:29,122.122 INFO    ] time= 13/06/2026 15:36:29
[2026-06-13 15:36:29,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:36:29,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:36:29,230.230 INFO    ] No existing commands found in stream
[2026-06-13 15:36:34,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:36:34,244.244 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 15:36:36,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:36:36,199.199 INFO    ] Checking for system updates...
[2026-06-13 15:36:36,219.219 INFO    ] 200
[2026-06-13 15:36:36,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:36,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:36,254.254 INFO    ] No update needed
[2026-06-13 15:36:36,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:36,276.276 INFO    ] 200
[2026-06-13 15:36:36,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:36,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:36,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:36,344.344 INFO    ] No camera update needed
[2026-06-13 15:36:36,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:36,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:36,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:36,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:36:38,384.384 INFO    ] ================================================
[2026-06-13 15:36:38,394.394 INFO    ] Launching Daemon at Sat Jun 13 15:36:38 IST 2026
[2026-06-13 15:36:38,401.401 INFO    ] ================================================
[2026-06-13 15:36:38,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:36:38
[2026-06-13 15:36:39,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:36:39,806.806 INFO    ] Initializing speech engine...
[2026-06-13 15:36:39,820.820 INFO    ] 2026-06-13 15:36:39
[2026-06-13 15:36:40,099.099 INFO    ] 2026-06-13 15:36:40
[2026-06-13 15:36:40,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:36:40,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:36:40,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:36:40,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:36:40,551.551 INFO    ] time= 13/06/2026 15:36:40
[2026-06-13 15:36:40,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:36:40,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:36:40,711.711 INFO    ] No existing commands found in stream
[2026-06-13 15:36:45,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:36:45,727.727 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 15:36:48,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:36:48,087.087 INFO    ] Checking for system updates...
[2026-06-13 15:36:48,124.124 INFO    ] 200
[2026-06-13 15:36:48,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:48,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:48,189.189 INFO    ] No update needed
[2026-06-13 15:36:48,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:48,210.210 INFO    ] 200
[2026-06-13 15:36:48,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:48,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:48,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:36:48,285.285 INFO    ] No camera update needed
[2026-06-13 15:36:48,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:48,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:48,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:48,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:36:50,334.334 INFO    ] ================================================
[2026-06-13 15:36:50,350.350 INFO    ] Launching Daemon at Sat Jun 13 15:36:50 IST 2026
[2026-06-13 15:36:50,360.360 INFO    ] ================================================
[2026-06-13 15:36:50,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:36:50
[2026-06-13 15:36:51,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:36:51,154.154 INFO    ] Initializing speech engine...
[2026-06-13 15:36:51,160.160 INFO    ] 2026-06-13 15:36:51
[2026-06-13 15:36:51,366.366 INFO    ] 2026-06-13 15:36:51
[2026-06-13 15:36:51,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:36:51,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:36:51,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:36:51,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:36:51,765.765 INFO    ] time= 13/06/2026 15:36:51
[2026-06-13 15:36:51,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:36:51,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:36:51,881.881 INFO    ] No existing commands found in stream
[2026-06-13 15:36:56,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:36:56,895.895 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 15:36:58,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:36:58,133.133 INFO    ] Checking for system updates...
[2026-06-13 15:36:58,154.154 INFO    ] 200
[2026-06-13 15:36:58,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:58,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:58,189.189 INFO    ] No update needed
[2026-06-13 15:36:58,190.190 INFO    ] Checking for camera pi updates...
[2026-06-13 15:36:58,211.211 INFO    ] 200
[2026-06-13 15:36:58,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:36:58,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:36:58,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:36:58,276.276 INFO    ] No camera update needed
[2026-06-13 15:36:58,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:36:58,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:36:58,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:36:58,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:00,324.324 INFO    ] ================================================
[2026-06-13 15:37:00,340.340 INFO    ] Launching Daemon at Sat Jun 13 15:37:00 IST 2026
[2026-06-13 15:37:00,351.351 INFO    ] ================================================
[2026-06-13 15:37:00,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:00
[2026-06-13 15:37:01,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:01,185.185 INFO    ] Initializing speech engine...
[2026-06-13 15:37:01,196.196 INFO    ] 2026-06-13 15:37:01
[2026-06-13 15:37:01,409.409 INFO    ] 2026-06-13 15:37:01
[2026-06-13 15:37:01,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:01,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:01,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:01,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:01,720.720 INFO    ] time= 13/06/2026 15:37:01
[2026-06-13 15:37:01,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:01,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:01,797.797 INFO    ] No existing commands found in stream
[2026-06-13 15:37:06,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:37:06,810.810 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 15:37:09,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:37:09,992.992 INFO    ] Checking for system updates...
[2026-06-13 15:37:10,014.014 INFO    ] 200
[2026-06-13 15:37:10,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:10,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:10,047.047 INFO    ] No update needed
[2026-06-13 15:37:10,049.049 INFO    ] Checking for camera pi updates...
[2026-06-13 15:37:10,069.069 INFO    ] 200
[2026-06-13 15:37:10,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:10,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:37:10,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:10,238.238 INFO    ] No camera update needed
[2026-06-13 15:37:10,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:37:10,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:37:10,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:37:10,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:12,286.286 INFO    ] ================================================
[2026-06-13 15:37:12,302.302 INFO    ] Launching Daemon at Sat Jun 13 15:37:12 IST 2026
[2026-06-13 15:37:12,313.313 INFO    ] ================================================
[2026-06-13 15:37:12,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:12
[2026-06-13 15:37:13,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:13,189.189 INFO    ] Initializing speech engine...
[2026-06-13 15:37:13,195.195 INFO    ] 2026-06-13 15:37:13
[2026-06-13 15:37:13,401.401 INFO    ] 2026-06-13 15:37:13
[2026-06-13 15:37:13,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:13,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:13,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:13,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:13,818.818 INFO    ] time= 13/06/2026 15:37:13
[2026-06-13 15:37:13,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:13,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:13,917.917 INFO    ] No existing commands found in stream
[2026-06-13 15:37:18,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:37:18,932.932 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 15:37:19,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:37:19,530.530 INFO    ] Checking for system updates...
[2026-06-13 15:37:19,551.551 INFO    ] 200
[2026-06-13 15:37:19,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:19,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:19,584.584 INFO    ] No update needed
[2026-06-13 15:37:19,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 15:37:19,605.605 INFO    ] 200
[2026-06-13 15:37:19,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:19,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:37:19,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:19,671.671 INFO    ] No camera update needed
[2026-06-13 15:37:19,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:37:19,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:37:19,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:37:19,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:21,719.719 INFO    ] ================================================
[2026-06-13 15:37:21,735.735 INFO    ] Launching Daemon at Sat Jun 13 15:37:21 IST 2026
[2026-06-13 15:37:21,746.746 INFO    ] ================================================
[2026-06-13 15:37:22,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:22
[2026-06-13 15:37:22,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:22,546.546 INFO    ] Initializing speech engine...
[2026-06-13 15:37:22,559.559 INFO    ] 2026-06-13 15:37:22
[2026-06-13 15:37:22,777.777 INFO    ] 2026-06-13 15:37:22
[2026-06-13 15:37:22,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:22,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:23,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:23,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:23,181.181 INFO    ] time= 13/06/2026 15:37:23
[2026-06-13 15:37:23,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:23,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:23,333.333 INFO    ] No existing commands found in stream
[2026-06-13 15:37:28,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:37:28,343.343 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 15:37:30,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:37:30,393.393 INFO    ] Checking for system updates...
[2026-06-13 15:37:30,414.414 INFO    ] 200
[2026-06-13 15:37:30,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:30,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:30,449.449 INFO    ] No update needed
[2026-06-13 15:37:30,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 15:37:30,470.470 INFO    ] 200
[2026-06-13 15:37:30,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:30,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:37:30,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:30,542.542 INFO    ] No camera update needed
[2026-06-13 15:37:30,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:37:30,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:37:30,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:37:30,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:32,590.590 INFO    ] ================================================
[2026-06-13 15:37:32,605.605 INFO    ] Launching Daemon at Sat Jun 13 15:37:32 IST 2026
[2026-06-13 15:37:32,616.616 INFO    ] ================================================
[2026-06-13 15:37:32,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:32
[2026-06-13 15:37:33,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:33,401.401 INFO    ] Initializing speech engine...
[2026-06-13 15:37:33,410.410 INFO    ] 2026-06-13 15:37:33
[2026-06-13 15:37:33,627.627 INFO    ] 2026-06-13 15:37:33
[2026-06-13 15:37:33,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:33,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:33,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:34,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:34,052.052 INFO    ] time= 13/06/2026 15:37:34
[2026-06-13 15:37:34,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:34,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:34,184.184 INFO    ] No existing commands found in stream
[2026-06-13 15:37:39,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:37:39,197.197 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 15:37:41,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:37:41,500.500 INFO    ] Checking for system updates...
[2026-06-13 15:37:41,522.522 INFO    ] 200
[2026-06-13 15:37:41,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:41,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:41,555.555 INFO    ] No update needed
[2026-06-13 15:37:41,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 15:37:41,575.575 INFO    ] 200
[2026-06-13 15:37:41,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:41,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:37:41,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:37:41,641.641 INFO    ] No camera update needed
[2026-06-13 15:37:41,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:37:41,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:37:41,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:37:41,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:43,690.690 INFO    ] ================================================
[2026-06-13 15:37:43,705.705 INFO    ] Launching Daemon at Sat Jun 13 15:37:43 IST 2026
[2026-06-13 15:37:43,716.716 INFO    ] ================================================
[2026-06-13 15:37:44,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:44
[2026-06-13 15:37:44,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:44,562.562 INFO    ] Initializing speech engine...
[2026-06-13 15:37:44,567.567 INFO    ] 2026-06-13 15:37:44
[2026-06-13 15:37:44,775.775 INFO    ] 2026-06-13 15:37:44
[2026-06-13 15:37:44,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:44,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:44,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:45,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:45,195.195 INFO    ] time= 13/06/2026 15:37:45
[2026-06-13 15:37:45,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:45,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:45,292.292 INFO    ] No existing commands found in stream
[2026-06-13 15:37:50,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:37:50,305.305 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 15:37:51,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:37:51,682.682 INFO    ] Checking for system updates...
[2026-06-13 15:37:51,704.704 INFO    ] 200
[2026-06-13 15:37:51,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:51,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:37:51,739.739 INFO    ] No update needed
[2026-06-13 15:37:51,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 15:37:51,761.761 INFO    ] 200
[2026-06-13 15:37:51,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:37:51,786.786 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:37:51,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:37:51,827.827 INFO    ] No camera update needed
[2026-06-13 15:37:51,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:37:51,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:37:51,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:37:51,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:37:53,878.878 INFO    ] ================================================
[2026-06-13 15:37:53,894.894 INFO    ] Launching Daemon at Sat Jun 13 15:37:53 IST 2026
[2026-06-13 15:37:53,906.906 INFO    ] ================================================
[2026-06-13 15:37:54,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:37:54
[2026-06-13 15:37:54,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:37:54,703.703 INFO    ] Initializing speech engine...
[2026-06-13 15:37:54,707.707 INFO    ] 2026-06-13 15:37:54
[2026-06-13 15:37:54,938.938 INFO    ] 2026-06-13 15:37:54
[2026-06-13 15:37:54,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:37:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:37:55,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:37:55,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:37:55,379.379 INFO    ] time= 13/06/2026 15:37:55
[2026-06-13 15:37:55,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:37:55,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:37:55,496.496 INFO    ] No existing commands found in stream
[2026-06-13 15:38:00,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:00,509.509 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 15:38:01,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:38:01,345.345 INFO    ] Checking for system updates...
[2026-06-13 15:38:01,366.366 INFO    ] 200
[2026-06-13 15:38:01,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:01,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:38:01,400.400 INFO    ] No update needed
[2026-06-13 15:38:01,401.401 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:01,422.422 INFO    ] 200
[2026-06-13 15:38:01,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:01,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:01,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:38:01,476.476 INFO    ] No camera update needed
[2026-06-13 15:38:01,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:01,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:01,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:01,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:03,517.517 INFO    ] ================================================
[2026-06-13 15:38:03,538.538 INFO    ] Launching Daemon at Sat Jun 13 15:38:03 IST 2026
[2026-06-13 15:38:03,549.549 INFO    ] ================================================
[2026-06-13 15:38:03,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:03
[2026-06-13 15:38:04,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:38:04,402.402 INFO    ] Initializing speech engine...
[2026-06-13 15:38:04,407.407 INFO    ] 2026-06-13 15:38:04
[2026-06-13 15:38:04,615.615 INFO    ] 2026-06-13 15:38:04
[2026-06-13 15:38:04,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:38:04,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:38:04,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:38:04,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:38:05,024.024 INFO    ] time= 13/06/2026 15:38:04
[2026-06-13 15:38:05,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:38:05,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:38:05,162.162 INFO    ] No existing commands found in stream
[2026-06-13 15:38:10,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:10,174.174 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 15:38:11,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:38:11,460.460 INFO    ] Checking for system updates...
[2026-06-13 15:38:11,480.480 INFO    ] 200
[2026-06-13 15:38:11,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:11,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:38:11,514.514 INFO    ] No update needed
[2026-06-13 15:38:11,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:11,535.535 INFO    ] 200
[2026-06-13 15:38:11,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:11,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:11,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:11,597.597 INFO    ] No camera update needed
[2026-06-13 15:38:11,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:11,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:11,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:11,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:13,636.636 INFO    ] ================================================
[2026-06-13 15:38:13,645.645 INFO    ] Launching Daemon at Sat Jun 13 15:38:13 IST 2026
[2026-06-13 15:38:13,651.651 INFO    ] ================================================
[2026-06-13 15:38:14,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:14
[2026-06-13 15:38:14,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:38:14,693.693 INFO    ] Initializing speech engine...
[2026-06-13 15:38:14,698.698 INFO    ] 2026-06-13 15:38:14
[2026-06-13 15:38:15,007.007 INFO    ] 2026-06-13 15:38:14
[2026-06-13 15:38:15,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:38:15,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:38:15,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:38:15,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:38:15,512.512 INFO    ] time= 13/06/2026 15:38:15
[2026-06-13 15:38:15,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:38:15,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:38:15,659.659 INFO    ] No existing commands found in stream
[2026-06-13 15:38:20,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:20,683.683 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 15:38:21,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:38:21,503.503 INFO    ] Checking for system updates...
[2026-06-13 15:38:21,524.524 INFO    ] 200
[2026-06-13 15:38:21,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:21,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:21,558.558 INFO    ] No update needed
[2026-06-13 15:38:21,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:21,584.584 INFO    ] 200
[2026-06-13 15:38:21,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:21,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:21,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:38:21,654.654 INFO    ] No camera update needed
[2026-06-13 15:38:21,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:21,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:21,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:21,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:23,703.703 INFO    ] ================================================
[2026-06-13 15:38:23,719.719 INFO    ] Launching Daemon at Sat Jun 13 15:38:23 IST 2026
[2026-06-13 15:38:23,730.730 INFO    ] ================================================
[2026-06-13 15:38:24,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:24
[2026-06-13 15:38:24,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:38:24,602.602 INFO    ] Initializing speech engine...
[2026-06-13 15:38:24,607.607 INFO    ] 2026-06-13 15:38:24
[2026-06-13 15:38:24,818.818 INFO    ] 2026-06-13 15:38:24
[2026-06-13 15:38:24,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:38:25,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:38:25,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:38:25,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:38:25,246.246 INFO    ] time= 13/06/2026 15:38:25
[2026-06-13 15:38:25,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:38:25,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:38:25,400.400 INFO    ] No existing commands found in stream
[2026-06-13 15:38:30,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:30,427.427 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 15:38:34,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:38:34,435.435 INFO    ] Checking for system updates...
[2026-06-13 15:38:34,456.456 INFO    ] 200
[2026-06-13 15:38:34,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:34,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:34,490.490 INFO    ] No update needed
[2026-06-13 15:38:34,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:34,512.512 INFO    ] 200
[2026-06-13 15:38:34,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:34,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:34,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:34,585.585 INFO    ] No camera update needed
[2026-06-13 15:38:34,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:34,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:34,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:34,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:36,636.636 INFO    ] ================================================
[2026-06-13 15:38:36,652.652 INFO    ] Launching Daemon at Sat Jun 13 15:38:36 IST 2026
[2026-06-13 15:38:36,664.664 INFO    ] ================================================
[2026-06-13 15:38:37,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:37
[2026-06-13 15:38:37,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:38:37,555.555 INFO    ] Initializing speech engine...
[2026-06-13 15:38:37,560.560 INFO    ] 2026-06-13 15:38:37
[2026-06-13 15:38:37,773.773 INFO    ] 2026-06-13 15:38:37
[2026-06-13 15:38:37,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:38:37,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:38:37,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:38:37,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:38:37,994.994 INFO    ] time= 13/06/2026 15:38:37
[2026-06-13 15:38:37,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:38:37,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:38:38,043.043 INFO    ] No existing commands found in stream
[2026-06-13 15:38:43,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:43,056.056 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 15:38:44,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:38:44,686.686 INFO    ] Checking for system updates...
[2026-06-13 15:38:44,707.707 INFO    ] 200
[2026-06-13 15:38:44,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:44,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:44,741.741 INFO    ] No update needed
[2026-06-13 15:38:44,742.742 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:44,762.762 INFO    ] 200
[2026-06-13 15:38:44,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:44,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:44,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:44,827.827 INFO    ] No camera update needed
[2026-06-13 15:38:44,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:44,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:44,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:44,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:46,878.878 INFO    ] ================================================
[2026-06-13 15:38:46,894.894 INFO    ] Launching Daemon at Sat Jun 13 15:38:46 IST 2026
[2026-06-13 15:38:46,905.905 INFO    ] ================================================
[2026-06-13 15:38:47,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:47
[2026-06-13 15:38:47,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:38:47,748.748 INFO    ] Initializing speech engine...
[2026-06-13 15:38:47,753.753 INFO    ] 2026-06-13 15:38:47
[2026-06-13 15:38:47,964.964 INFO    ] 2026-06-13 15:38:47
[2026-06-13 15:38:47,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:38:48,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:38:48,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:38:48,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:38:48,385.385 INFO    ] time= 13/06/2026 15:38:48
[2026-06-13 15:38:48,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:38:48,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:38:48,663.663 INFO    ] No existing commands found in stream
[2026-06-13 15:38:53,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:38:53,698.698 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 15:38:57,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:38:57,418.418 INFO    ] Checking for system updates...
[2026-06-13 15:38:57,442.442 INFO    ] 200
[2026-06-13 15:38:57,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:57,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:38:57,483.483 INFO    ] No update needed
[2026-06-13 15:38:57,485.485 INFO    ] Checking for camera pi updates...
[2026-06-13 15:38:57,512.512 INFO    ] 200
[2026-06-13 15:38:57,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:38:57,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:38:57,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:38:57,587.587 INFO    ] No camera update needed
[2026-06-13 15:38:57,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:38:57,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:38:57,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:38:57,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:38:59,623.623 INFO    ] ================================================
[2026-06-13 15:38:59,633.633 INFO    ] Launching Daemon at Sat Jun 13 15:38:59 IST 2026
[2026-06-13 15:38:59,640.640 INFO    ] ================================================
[2026-06-13 15:38:59,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:38:59
[2026-06-13 15:39:00,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:39:00,452.452 INFO    ] Initializing speech engine...
[2026-06-13 15:39:00,454.454 INFO    ] 2026-06-13 15:39:00
[2026-06-13 15:39:00,656.656 INFO    ] 2026-06-13 15:39:00
[2026-06-13 15:39:00,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:39:00,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:39:00,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:39:00,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:39:00,947.947 INFO    ] time= 13/06/2026 15:39:00
[2026-06-13 15:39:00,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:39:00,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:39:01,064.064 INFO    ] No existing commands found in stream
[2026-06-13 15:39:06,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:39:06,095.095 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 15:39:10,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:39:10,006.006 INFO    ] Checking for system updates...
[2026-06-13 15:39:10,027.027 INFO    ] 200
[2026-06-13 15:39:10,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:10,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:10,060.060 INFO    ] No update needed
[2026-06-13 15:39:10,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 15:39:10,082.082 INFO    ] 200
[2026-06-13 15:39:10,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:10,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:39:10,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:10,147.147 INFO    ] No camera update needed
[2026-06-13 15:39:10,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:39:10,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:39:10,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:39:10,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:39:12,196.196 INFO    ] ================================================
[2026-06-13 15:39:12,212.212 INFO    ] Launching Daemon at Sat Jun 13 15:39:12 IST 2026
[2026-06-13 15:39:12,223.223 INFO    ] ================================================
[2026-06-13 15:39:12,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:39:12
[2026-06-13 15:39:12,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:39:13,017.017 INFO    ] Initializing speech engine...
[2026-06-13 15:39:13,022.022 INFO    ] 2026-06-13 15:39:13
[2026-06-13 15:39:13,246.246 INFO    ] 2026-06-13 15:39:13
[2026-06-13 15:39:13,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:39:13,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:39:13,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:39:13,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:39:13,616.616 INFO    ] time= 13/06/2026 15:39:13
[2026-06-13 15:39:13,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:39:13,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:39:13,741.741 INFO    ] No existing commands found in stream
[2026-06-13 15:39:18,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:39:18,752.752 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 15:39:20,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:39:20,814.814 INFO    ] Checking for system updates...
[2026-06-13 15:39:20,835.835 INFO    ] 200
[2026-06-13 15:39:20,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:20,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:20,868.868 INFO    ] No update needed
[2026-06-13 15:39:20,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 15:39:20,889.889 INFO    ] 200
[2026-06-13 15:39:20,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:20,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:39:21,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:21,056.056 INFO    ] No camera update needed
[2026-06-13 15:39:21,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:39:21,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:39:21,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:39:21,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:39:23,105.105 INFO    ] ================================================
[2026-06-13 15:39:23,121.121 INFO    ] Launching Daemon at Sat Jun 13 15:39:23 IST 2026
[2026-06-13 15:39:23,132.132 INFO    ] ================================================
[2026-06-13 15:39:23,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:39:23
[2026-06-13 15:39:23,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:39:23,921.921 INFO    ] Initializing speech engine...
[2026-06-13 15:39:23,925.925 INFO    ] 2026-06-13 15:39:23
[2026-06-13 15:39:24,134.134 INFO    ] 2026-06-13 15:39:24
[2026-06-13 15:39:24,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:39:24,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:39:24,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:39:24,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:39:24,513.513 INFO    ] time= 13/06/2026 15:39:24
[2026-06-13 15:39:24,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:39:24,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:39:24,563.563 INFO    ] No existing commands found in stream
[2026-06-13 15:39:29,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:39:29,574.574 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 15:39:33,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:39:33,063.063 INFO    ] Checking for system updates...
[2026-06-13 15:39:33,103.103 INFO    ] 200
[2026-06-13 15:39:33,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:33,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:39:33,145.145 INFO    ] No update needed
[2026-06-13 15:39:33,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 15:39:33,167.167 INFO    ] 200
[2026-06-13 15:39:33,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:33,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:39:33,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:33,215.215 INFO    ] No camera update needed
[2026-06-13 15:39:33,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:39:33,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:39:33,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:39:33,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:39:35,262.262 INFO    ] ================================================
[2026-06-13 15:39:35,277.277 INFO    ] Launching Daemon at Sat Jun 13 15:39:35 IST 2026
[2026-06-13 15:39:35,288.288 INFO    ] ================================================
[2026-06-13 15:39:35,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:39:35
[2026-06-13 15:39:35,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:39:36,119.119 INFO    ] Initializing speech engine...
[2026-06-13 15:39:36,124.124 INFO    ] 2026-06-13 15:39:36
[2026-06-13 15:39:36,334.334 INFO    ] 2026-06-13 15:39:36
[2026-06-13 15:39:36,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:39:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:39:36,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:39:36,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:39:36,734.734 INFO    ] time= 13/06/2026 15:39:36
[2026-06-13 15:39:36,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:39:36,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:39:36,859.859 INFO    ] No existing commands found in stream
[2026-06-13 15:39:41,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:39:41,886.886 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 15:39:45,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:39:45,460.460 INFO    ] Checking for system updates...
[2026-06-13 15:39:45,482.482 INFO    ] 200
[2026-06-13 15:39:45,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:45,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:45,519.519 INFO    ] No update needed
[2026-06-13 15:39:45,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 15:39:45,540.540 INFO    ] 200
[2026-06-13 15:39:45,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:45,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:39:45,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:39:45,823.823 INFO    ] No camera update needed
[2026-06-13 15:39:45,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:39:45,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:39:45,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:39:45,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:39:47,872.872 INFO    ] ================================================
[2026-06-13 15:39:47,889.889 INFO    ] Launching Daemon at Sat Jun 13 15:39:47 IST 2026
[2026-06-13 15:39:47,900.900 INFO    ] ================================================
[2026-06-13 15:39:48,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:39:48
[2026-06-13 15:39:48,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:39:48,724.724 INFO    ] Initializing speech engine...
[2026-06-13 15:39:48,730.730 INFO    ] 2026-06-13 15:39:48
[2026-06-13 15:39:48,932.932 INFO    ] 2026-06-13 15:39:48
[2026-06-13 15:39:48,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:39:49,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:39:49,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:39:49,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:39:49,340.340 INFO    ] time= 13/06/2026 15:39:49
[2026-06-13 15:39:49,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:39:49,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:39:49,447.447 INFO    ] No existing commands found in stream
[2026-06-13 15:39:54,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:39:54,463.463 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 15:39:57,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:39:57,470.470 INFO    ] Checking for system updates...
[2026-06-13 15:39:57,491.491 INFO    ] 200
[2026-06-13 15:39:57,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:57,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:39:57,524.524 INFO    ] No update needed
[2026-06-13 15:39:57,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 15:39:57,545.545 INFO    ] 200
[2026-06-13 15:39:57,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:39:57,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:39:57,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:39:57,622.622 INFO    ] No camera update needed
[2026-06-13 15:39:57,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:39:57,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:39:57,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:39:57,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:39:59,668.668 INFO    ] ================================================
[2026-06-13 15:39:59,683.683 INFO    ] Launching Daemon at Sat Jun 13 15:39:59 IST 2026
[2026-06-13 15:39:59,695.695 INFO    ] ================================================
[2026-06-13 15:40:00,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:00
[2026-06-13 15:40:00,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:00,507.507 INFO    ] Initializing speech engine...
[2026-06-13 15:40:00,512.512 INFO    ] 2026-06-13 15:40:00
[2026-06-13 15:40:00,729.729 INFO    ] 2026-06-13 15:40:00
[2026-06-13 15:40:00,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:01,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:01,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:01,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:01,244.244 INFO    ] time= 13/06/2026 15:40:01
[2026-06-13 15:40:01,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:01,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:01,383.383 INFO    ] No existing commands found in stream
[2026-06-13 15:40:06,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:40:06,412.412 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 15:40:08,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:40:08,680.680 INFO    ] Checking for system updates...
[2026-06-13 15:40:08,702.702 INFO    ] 200
[2026-06-13 15:40:08,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:08,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:08,735.735 INFO    ] No update needed
[2026-06-13 15:40:08,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 15:40:08,756.756 INFO    ] 200
[2026-06-13 15:40:08,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:08,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:40:08,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:08,819.819 INFO    ] No camera update needed
[2026-06-13 15:40:08,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:40:08,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:40:08,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:40:08,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:40:10,866.866 INFO    ] ================================================
[2026-06-13 15:40:10,881.881 INFO    ] Launching Daemon at Sat Jun 13 15:40:10 IST 2026
[2026-06-13 15:40:10,892.892 INFO    ] ================================================
[2026-06-13 15:40:11,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:11
[2026-06-13 15:40:11,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:11,725.725 INFO    ] Initializing speech engine...
[2026-06-13 15:40:11,731.731 INFO    ] 2026-06-13 15:40:11
[2026-06-13 15:40:11,947.947 INFO    ] 2026-06-13 15:40:11
[2026-06-13 15:40:12,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:12,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:12,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:12,377.377 INFO    ] time= 13/06/2026 15:40:12
[2026-06-13 15:40:12,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:12,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:12,530.530 INFO    ] No existing commands found in stream
[2026-06-13 15:40:17,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:40:17,547.547 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 15:40:18,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:40:18,262.262 INFO    ] Checking for system updates...
[2026-06-13 15:40:18,283.283 INFO    ] 200
[2026-06-13 15:40:18,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:18,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:18,316.316 INFO    ] No update needed
[2026-06-13 15:40:18,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 15:40:18,337.337 INFO    ] 200
[2026-06-13 15:40:18,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:18,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:40:18,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:18,401.401 INFO    ] No camera update needed
[2026-06-13 15:40:18,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:40:18,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:40:18,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:40:18,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:40:20,447.447 INFO    ] ================================================
[2026-06-13 15:40:20,462.462 INFO    ] Launching Daemon at Sat Jun 13 15:40:20 IST 2026
[2026-06-13 15:40:20,473.473 INFO    ] ================================================
[2026-06-13 15:40:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:20
[2026-06-13 15:40:21,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:21,270.270 INFO    ] Initializing speech engine...
[2026-06-13 15:40:21,274.274 INFO    ] 2026-06-13 15:40:21
[2026-06-13 15:40:21,499.499 INFO    ] 2026-06-13 15:40:21
[2026-06-13 15:40:21,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:21,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:21,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:21,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:21,916.916 INFO    ] time= 13/06/2026 15:40:21
[2026-06-13 15:40:21,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:21,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:22,045.045 INFO    ] No existing commands found in stream
[2026-06-13 15:40:27,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:40:27,060.060 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 15:40:27,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:40:27,434.434 INFO    ] Checking for system updates...
[2026-06-13 15:40:27,455.455 INFO    ] 200
[2026-06-13 15:40:27,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:27,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:27,488.488 INFO    ] No update needed
[2026-06-13 15:40:27,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 15:40:27,508.508 INFO    ] 200
[2026-06-13 15:40:27,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:27,534.534 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:40:27,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:27,577.577 INFO    ] No camera update needed
[2026-06-13 15:40:27,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:40:27,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:40:27,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:40:27,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:40:29,624.624 INFO    ] ================================================
[2026-06-13 15:40:29,640.640 INFO    ] Launching Daemon at Sat Jun 13 15:40:29 IST 2026
[2026-06-13 15:40:29,651.651 INFO    ] ================================================
[2026-06-13 15:40:29,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:29
[2026-06-13 15:40:30,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:30,452.452 INFO    ] Initializing speech engine...
[2026-06-13 15:40:30,457.457 INFO    ] 2026-06-13 15:40:30
[2026-06-13 15:40:30,660.660 INFO    ] 2026-06-13 15:40:30
[2026-06-13 15:40:30,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:30,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:30,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:31,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:31,061.061 INFO    ] time= 13/06/2026 15:40:31
[2026-06-13 15:40:31,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:31,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:31,177.177 INFO    ] No existing commands found in stream
[2026-06-13 15:40:36,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:40:36,189.189 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 15:40:37,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:40:37,354.354 INFO    ] Checking for system updates...
[2026-06-13 15:40:37,375.375 INFO    ] 200
[2026-06-13 15:40:37,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:37,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:40:37,412.412 INFO    ] No update needed
[2026-06-13 15:40:37,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 15:40:37,432.432 INFO    ] 200
[2026-06-13 15:40:37,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:37,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:40:37,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:40:37,498.498 INFO    ] No camera update needed
[2026-06-13 15:40:37,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:40:37,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:40:37,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:40:37,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:40:39,545.545 INFO    ] ================================================
[2026-06-13 15:40:39,561.561 INFO    ] Launching Daemon at Sat Jun 13 15:40:39 IST 2026
[2026-06-13 15:40:39,571.571 INFO    ] ================================================
[2026-06-13 15:40:39,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:39
[2026-06-13 15:40:40,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:40,825.825 INFO    ] Initializing speech engine...
[2026-06-13 15:40:40,834.834 INFO    ] 2026-06-13 15:40:40
[2026-06-13 15:40:41,108.108 INFO    ] 2026-06-13 15:40:41
[2026-06-13 15:40:41,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:41,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:41,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:41,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:41,546.546 INFO    ] time= 13/06/2026 15:40:41
[2026-06-13 15:40:41,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:41,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:41,694.694 INFO    ] No existing commands found in stream
[2026-06-13 15:40:46,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:40:46,709.709 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 15:40:50,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:40:50,695.695 INFO    ] Checking for system updates...
[2026-06-13 15:40:50,717.717 INFO    ] 200
[2026-06-13 15:40:50,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:50,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:50,750.750 INFO    ] No update needed
[2026-06-13 15:40:50,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 15:40:50,770.770 INFO    ] 200
[2026-06-13 15:40:50,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:40:50,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:40:50,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:40:50,837.837 INFO    ] No camera update needed
[2026-06-13 15:40:50,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:40:50,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:40:50,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:40:50,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:40:52,885.885 INFO    ] ================================================
[2026-06-13 15:40:52,901.901 INFO    ] Launching Daemon at Sat Jun 13 15:40:52 IST 2026
[2026-06-13 15:40:52,912.912 INFO    ] ================================================
[2026-06-13 15:40:53,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:40:53
[2026-06-13 15:40:54,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:40:54,324.324 INFO    ] Initializing speech engine...
[2026-06-13 15:40:54,338.338 INFO    ] 2026-06-13 15:40:54
[2026-06-13 15:40:54,561.561 INFO    ] 2026-06-13 15:40:54
[2026-06-13 15:40:54,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:40:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:40:54,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:40:54,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:40:54,964.964 INFO    ] time= 13/06/2026 15:40:54
[2026-06-13 15:40:54,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:40:55,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:40:55,072.072 INFO    ] No existing commands found in stream
[2026-06-13 15:41:00,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:00,085.085 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 15:41:01,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:41:01,175.175 INFO    ] Checking for system updates...
[2026-06-13 15:41:01,196.196 INFO    ] 200
[2026-06-13 15:41:01,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:01,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:01,229.229 INFO    ] No update needed
[2026-06-13 15:41:01,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:01,249.249 INFO    ] 200
[2026-06-13 15:41:01,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:01,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:01,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:01,306.306 INFO    ] No camera update needed
[2026-06-13 15:41:01,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:01,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:01,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:01,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:03,345.345 INFO    ] ================================================
[2026-06-13 15:41:03,360.360 INFO    ] Launching Daemon at Sat Jun 13 15:41:03 IST 2026
[2026-06-13 15:41:03,371.371 INFO    ] ================================================
[2026-06-13 15:41:04,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:04
[2026-06-13 15:41:04,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:04,849.849 INFO    ] Initializing speech engine...
[2026-06-13 15:41:04,858.858 INFO    ] 2026-06-13 15:41:04
[2026-06-13 15:41:05,149.149 INFO    ] 2026-06-13 15:41:05
[2026-06-13 15:41:05,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:05,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:05,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:05,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:05,466.466 INFO    ] time= 13/06/2026 15:41:05
[2026-06-13 15:41:05,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:05,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:05,537.537 INFO    ] No existing commands found in stream
[2026-06-13 15:41:10,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:10,574.574 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 15:41:11,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:41:11,906.906 INFO    ] Checking for system updates...
[2026-06-13 15:41:11,928.928 INFO    ] 200
[2026-06-13 15:41:11,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:11,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:41:11,961.961 INFO    ] No update needed
[2026-06-13 15:41:11,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:11,982.982 INFO    ] 200
[2026-06-13 15:41:11,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:12,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:12,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:41:12,049.049 INFO    ] No camera update needed
[2026-06-13 15:41:12,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:12,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:12,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:12,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:14,097.097 INFO    ] ================================================
[2026-06-13 15:41:14,113.113 INFO    ] Launching Daemon at Sat Jun 13 15:41:14 IST 2026
[2026-06-13 15:41:14,124.124 INFO    ] ================================================
[2026-06-13 15:41:14,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:14
[2026-06-13 15:41:14,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:14,892.892 INFO    ] Initializing speech engine...
[2026-06-13 15:41:14,895.895 INFO    ] 2026-06-13 15:41:14
[2026-06-13 15:41:15,111.111 INFO    ] 2026-06-13 15:41:15
[2026-06-13 15:41:15,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:15,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:15,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:15,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:15,519.519 INFO    ] time= 13/06/2026 15:41:15
[2026-06-13 15:41:15,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:15,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:15,624.624 INFO    ] No existing commands found in stream
[2026-06-13 15:41:20,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:20,635.635 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 15:41:24,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:41:24,725.725 INFO    ] Checking for system updates...
[2026-06-13 15:41:24,745.745 INFO    ] 200
[2026-06-13 15:41:24,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:24,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:41:24,779.779 INFO    ] No update needed
[2026-06-13 15:41:24,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:24,800.800 INFO    ] 200
[2026-06-13 15:41:24,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:24,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:24,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:24,969.969 INFO    ] No camera update needed
[2026-06-13 15:41:24,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:24,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:24,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:24,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:27,015.015 INFO    ] ================================================
[2026-06-13 15:41:27,030.030 INFO    ] Launching Daemon at Sat Jun 13 15:41:27 IST 2026
[2026-06-13 15:41:27,041.041 INFO    ] ================================================
[2026-06-13 15:41:27,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:27
[2026-06-13 15:41:27,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:27,841.841 INFO    ] Initializing speech engine...
[2026-06-13 15:41:27,846.846 INFO    ] 2026-06-13 15:41:27
[2026-06-13 15:41:28,049.049 INFO    ] 2026-06-13 15:41:28
[2026-06-13 15:41:28,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:28,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:28,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:28,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:28,460.460 INFO    ] time= 13/06/2026 15:41:28
[2026-06-13 15:41:28,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:28,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:28,564.564 INFO    ] No existing commands found in stream
[2026-06-13 15:41:33,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:33,577.577 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 15:41:34,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:41:34,966.966 INFO    ] Checking for system updates...
[2026-06-13 15:41:34,987.987 INFO    ] 200
[2026-06-13 15:41:34,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:35,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:35,020.020 INFO    ] No update needed
[2026-06-13 15:41:35,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:35,041.041 INFO    ] 200
[2026-06-13 15:41:35,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:35,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:35,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:35,109.109 INFO    ] No camera update needed
[2026-06-13 15:41:35,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:35,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:35,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:35,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:37,157.157 INFO    ] ================================================
[2026-06-13 15:41:37,173.173 INFO    ] Launching Daemon at Sat Jun 13 15:41:37 IST 2026
[2026-06-13 15:41:37,185.185 INFO    ] ================================================
[2026-06-13 15:41:37,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:37
[2026-06-13 15:41:37,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:37,964.964 INFO    ] Initializing speech engine...
[2026-06-13 15:41:37,969.969 INFO    ] 2026-06-13 15:41:37
[2026-06-13 15:41:38,172.172 INFO    ] 2026-06-13 15:41:38
[2026-06-13 15:41:38,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:38,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:38,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:38,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:38,591.591 INFO    ] time= 13/06/2026 15:41:38
[2026-06-13 15:41:38,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:38,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:38,689.689 INFO    ] No existing commands found in stream
[2026-06-13 15:41:43,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:43,702.702 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 15:41:44,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:41:44,861.861 INFO    ] Checking for system updates...
[2026-06-13 15:41:44,882.882 INFO    ] 200
[2026-06-13 15:41:44,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:44,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:44,917.917 INFO    ] No update needed
[2026-06-13 15:41:44,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:44,938.938 INFO    ] 200
[2026-06-13 15:41:44,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:44,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:45,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:45,009.009 INFO    ] No camera update needed
[2026-06-13 15:41:45,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:45,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:45,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:45,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:47,056.056 INFO    ] ================================================
[2026-06-13 15:41:47,072.072 INFO    ] Launching Daemon at Sat Jun 13 15:41:47 IST 2026
[2026-06-13 15:41:47,083.083 INFO    ] ================================================
[2026-06-13 15:41:47,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:47
[2026-06-13 15:41:48,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:48,484.484 INFO    ] Initializing speech engine...
[2026-06-13 15:41:48,495.495 INFO    ] 2026-06-13 15:41:48
[2026-06-13 15:41:48,762.762 INFO    ] 2026-06-13 15:41:48
[2026-06-13 15:41:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:48,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:49,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:49,113.113 INFO    ] time= 13/06/2026 15:41:49
[2026-06-13 15:41:49,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:49,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:49,223.223 INFO    ] No existing commands found in stream
[2026-06-13 15:41:54,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:41:54,238.238 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 15:41:54,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:41:54,679.679 INFO    ] Checking for system updates...
[2026-06-13 15:41:54,700.700 INFO    ] 200
[2026-06-13 15:41:54,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:54,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:54,733.733 INFO    ] No update needed
[2026-06-13 15:41:54,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 15:41:54,753.753 INFO    ] 200
[2026-06-13 15:41:54,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:41:54,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:41:54,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:41:54,820.820 INFO    ] No camera update needed
[2026-06-13 15:41:54,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:41:54,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:41:54,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:41:54,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:41:56,865.865 INFO    ] ================================================
[2026-06-13 15:41:56,881.881 INFO    ] Launching Daemon at Sat Jun 13 15:41:56 IST 2026
[2026-06-13 15:41:56,897.897 INFO    ] ================================================
[2026-06-13 15:41:57,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:41:57
[2026-06-13 15:41:57,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:41:57,702.702 INFO    ] Initializing speech engine...
[2026-06-13 15:41:57,712.712 INFO    ] 2026-06-13 15:41:57
[2026-06-13 15:41:57,924.924 INFO    ] 2026-06-13 15:41:57
[2026-06-13 15:41:57,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:41:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:41:58,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:41:58,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:41:58,307.307 INFO    ] time= 13/06/2026 15:41:58
[2026-06-13 15:41:58,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:41:58,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:41:58,485.485 INFO    ] No existing commands found in stream
[2026-06-13 15:42:03,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:42:03,496.496 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 15:42:05,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:42:05,960.960 INFO    ] Checking for system updates...
[2026-06-13 15:42:05,981.981 INFO    ] 200
[2026-06-13 15:42:05,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:06,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:42:06,014.014 INFO    ] No update needed
[2026-06-13 15:42:06,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 15:42:06,037.037 INFO    ] 200
[2026-06-13 15:42:06,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:06,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:42:06,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:06,099.099 INFO    ] No camera update needed
[2026-06-13 15:42:06,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:42:06,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:42:06,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:42:06,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:42:08,144.144 INFO    ] ================================================
[2026-06-13 15:42:08,160.160 INFO    ] Launching Daemon at Sat Jun 13 15:42:08 IST 2026
[2026-06-13 15:42:08,170.170 INFO    ] ================================================
[2026-06-13 15:42:08,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:42:08
[2026-06-13 15:42:08,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:42:08,950.950 INFO    ] Initializing speech engine...
[2026-06-13 15:42:08,955.955 INFO    ] 2026-06-13 15:42:08
[2026-06-13 15:42:09,180.180 INFO    ] 2026-06-13 15:42:09
[2026-06-13 15:42:09,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:42:09,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:42:09,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:42:09,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:42:09,604.604 INFO    ] time= 13/06/2026 15:42:09
[2026-06-13 15:42:09,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:42:09,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:42:09,728.728 INFO    ] No existing commands found in stream
[2026-06-13 15:42:14,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:42:14,742.742 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 15:42:18,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:42:18,700.700 INFO    ] Checking for system updates...
[2026-06-13 15:42:18,722.722 INFO    ] 200
[2026-06-13 15:42:18,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:18,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:18,755.755 INFO    ] No update needed
[2026-06-13 15:42:18,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 15:42:18,776.776 INFO    ] 200
[2026-06-13 15:42:18,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:18,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:42:18,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:18,842.842 INFO    ] No camera update needed
[2026-06-13 15:42:18,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:42:18,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:42:18,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:42:18,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:42:20,889.889 INFO    ] ================================================
[2026-06-13 15:42:20,904.904 INFO    ] Launching Daemon at Sat Jun 13 15:42:20 IST 2026
[2026-06-13 15:42:20,915.915 INFO    ] ================================================
[2026-06-13 15:42:21,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:42:21
[2026-06-13 15:42:22,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:42:22,370.370 INFO    ] Initializing speech engine...
[2026-06-13 15:42:22,381.381 INFO    ] 2026-06-13 15:42:22
[2026-06-13 15:42:22,642.642 INFO    ] 2026-06-13 15:42:22
[2026-06-13 15:42:22,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:42:22,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:42:22,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:42:23,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:42:23,088.088 INFO    ] time= 13/06/2026 15:42:23
[2026-06-13 15:42:23,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:42:23,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:42:23,283.283 INFO    ] No existing commands found in stream
[2026-06-13 15:42:28,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:42:28,299.299 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 15:42:30,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:42:30,922.922 INFO    ] Checking for system updates...
[2026-06-13 15:42:30,942.942 INFO    ] 200
[2026-06-13 15:42:30,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:30,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:42:30,976.976 INFO    ] No update needed
[2026-06-13 15:42:30,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 15:42:30,996.996 INFO    ] 200
[2026-06-13 15:42:30,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:31,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:42:31,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:42:31,061.061 INFO    ] No camera update needed
[2026-06-13 15:42:31,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:42:31,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:42:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:42:31,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:42:33,101.101 INFO    ] ================================================
[2026-06-13 15:42:33,116.116 INFO    ] Launching Daemon at Sat Jun 13 15:42:33 IST 2026
[2026-06-13 15:42:33,127.127 INFO    ] ================================================
[2026-06-13 15:42:33,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:42:33
[2026-06-13 15:42:34,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:42:34,546.546 INFO    ] Initializing speech engine...
[2026-06-13 15:42:34,555.555 INFO    ] 2026-06-13 15:42:34
[2026-06-13 15:42:34,801.801 INFO    ] 2026-06-13 15:42:34
[2026-06-13 15:42:34,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:42:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:42:35,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:42:35,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:42:35,277.277 INFO    ] time= 13/06/2026 15:42:35
[2026-06-13 15:42:35,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:42:35,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:42:35,413.413 INFO    ] No existing commands found in stream
[2026-06-13 15:42:40,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:42:40,446.446 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 15:42:44,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:42:44,196.196 INFO    ] Checking for system updates...
[2026-06-13 15:42:44,217.217 INFO    ] 200
[2026-06-13 15:42:44,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:44,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:44,252.252 INFO    ] No update needed
[2026-06-13 15:42:44,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 15:42:44,272.272 INFO    ] 200
[2026-06-13 15:42:44,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:44,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:42:44,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:42:44,332.332 INFO    ] No camera update needed
[2026-06-13 15:42:44,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:42:44,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:42:44,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:42:44,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:42:46,377.377 INFO    ] ================================================
[2026-06-13 15:42:46,392.392 INFO    ] Launching Daemon at Sat Jun 13 15:42:46 IST 2026
[2026-06-13 15:42:46,403.403 INFO    ] ================================================
[2026-06-13 15:42:46,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:42:46
[2026-06-13 15:42:47,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:42:47,184.184 INFO    ] Initializing speech engine...
[2026-06-13 15:42:47,199.199 INFO    ] 2026-06-13 15:42:47
[2026-06-13 15:42:47,403.403 INFO    ] 2026-06-13 15:42:47
[2026-06-13 15:42:47,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:42:47,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:42:47,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:42:47,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:42:47,817.817 INFO    ] time= 13/06/2026 15:42:47
[2026-06-13 15:42:47,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:42:47,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:42:47,917.917 INFO    ] No existing commands found in stream
[2026-06-13 15:42:52,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:42:52,929.929 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 15:42:54,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:42:54,508.508 INFO    ] Checking for system updates...
[2026-06-13 15:42:54,529.529 INFO    ] 200
[2026-06-13 15:42:54,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:54,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:54,585.585 INFO    ] No update needed
[2026-06-13 15:42:54,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 15:42:54,621.621 INFO    ] 200
[2026-06-13 15:42:54,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:42:54,665.665 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:42:54,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:42:54,710.710 INFO    ] No camera update needed
[2026-06-13 15:42:54,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:42:54,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:42:54,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:42:54,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:42:56,766.766 INFO    ] ================================================
[2026-06-13 15:42:56,781.781 INFO    ] Launching Daemon at Sat Jun 13 15:42:56 IST 2026
[2026-06-13 15:42:56,792.792 INFO    ] ================================================
[2026-06-13 15:42:57,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:42:57
[2026-06-13 15:42:57,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:42:57,885.885 INFO    ] Initializing speech engine...
[2026-06-13 15:42:57,897.897 INFO    ] 2026-06-13 15:42:57
[2026-06-13 15:42:58,105.105 INFO    ] 2026-06-13 15:42:58
[2026-06-13 15:42:58,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:42:58,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:42:58,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:42:58,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:42:58,513.513 INFO    ] time= 13/06/2026 15:42:58
[2026-06-13 15:42:58,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:42:58,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:42:58,634.634 INFO    ] No existing commands found in stream
[2026-06-13 15:43:03,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:03,645.645 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 15:43:06,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:43:06,893.893 INFO    ] Checking for system updates...
[2026-06-13 15:43:06,932.932 INFO    ] 200
[2026-06-13 15:43:06,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:06,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:06,990.990 INFO    ] No update needed
[2026-06-13 15:43:06,993.993 INFO    ] Checking for camera pi updates...
[2026-06-13 15:43:07,027.027 INFO    ] 200
[2026-06-13 15:43:07,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:07,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:43:07,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:07,124.124 INFO    ] No camera update needed
[2026-06-13 15:43:07,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:43:07,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:43:07,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:43:07,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:43:09,179.179 INFO    ] ================================================
[2026-06-13 15:43:09,194.194 INFO    ] Launching Daemon at Sat Jun 13 15:43:09 IST 2026
[2026-06-13 15:43:09,204.204 INFO    ] ================================================
[2026-06-13 15:43:09,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:43:09
[2026-06-13 15:43:09,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:43:09,985.985 INFO    ] Initializing speech engine...
[2026-06-13 15:43:09,999.999 INFO    ] 2026-06-13 15:43:09
[2026-06-13 15:43:10,203.203 INFO    ] 2026-06-13 15:43:10
[2026-06-13 15:43:10,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:43:10,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:43:10,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:43:10,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:43:10,520.520 INFO    ] time= 13/06/2026 15:43:10
[2026-06-13 15:43:10,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:43:10,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:43:10,770.770 INFO    ] No existing commands found in stream
[2026-06-13 15:43:15,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:15,798.798 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 15:43:17,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:43:17,430.430 INFO    ] Checking for system updates...
[2026-06-13 15:43:17,454.454 INFO    ] 200
[2026-06-13 15:43:17,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:17,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:17,489.489 INFO    ] No update needed
[2026-06-13 15:43:17,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 15:43:17,510.510 INFO    ] 200
[2026-06-13 15:43:17,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:17,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:43:17,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:17,579.579 INFO    ] No camera update needed
[2026-06-13 15:43:17,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:43:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:43:17,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:43:17,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:43:19,626.626 INFO    ] ================================================
[2026-06-13 15:43:19,641.641 INFO    ] Launching Daemon at Sat Jun 13 15:43:19 IST 2026
[2026-06-13 15:43:19,652.652 INFO    ] ================================================
[2026-06-13 15:43:20,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:43:20
[2026-06-13 15:43:20,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:43:20,474.474 INFO    ] Initializing speech engine...
[2026-06-13 15:43:20,479.479 INFO    ] 2026-06-13 15:43:20
[2026-06-13 15:43:20,682.682 INFO    ] 2026-06-13 15:43:20
[2026-06-13 15:43:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:43:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:43:20,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:43:21,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:43:21,101.101 INFO    ] time= 13/06/2026 15:43:21
[2026-06-13 15:43:21,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:43:21,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:43:21,195.195 INFO    ] No existing commands found in stream
[2026-06-13 15:43:26,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:26,210.210 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 15:43:28,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:43:28,436.436 INFO    ] Checking for system updates...
[2026-06-13 15:43:28,457.457 INFO    ] 200
[2026-06-13 15:43:28,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:28,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:28,496.496 INFO    ] No update needed
[2026-06-13 15:43:28,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 15:43:28,518.518 INFO    ] 200
[2026-06-13 15:43:28,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:28,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:43:28,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:28,712.712 INFO    ] No camera update needed
[2026-06-13 15:43:28,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:43:28,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:43:28,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:43:28,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:43:30,771.771 INFO    ] ================================================
[2026-06-13 15:43:30,787.787 INFO    ] Launching Daemon at Sat Jun 13 15:43:30 IST 2026
[2026-06-13 15:43:30,797.797 INFO    ] ================================================
[2026-06-13 15:43:31,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:43:31
[2026-06-13 15:43:31,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:43:31,980.980 INFO    ] Initializing speech engine...
[2026-06-13 15:43:31,983.983 INFO    ] 2026-06-13 15:43:31
[2026-06-13 15:43:32,207.207 INFO    ] 2026-06-13 15:43:32
[2026-06-13 15:43:32,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:43:32,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:43:32,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:43:32,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:43:32,597.597 INFO    ] time= 13/06/2026 15:43:32
[2026-06-13 15:43:32,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:43:32,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:43:32,765.765 INFO    ] No existing commands found in stream
[2026-06-13 15:43:37,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:37,779.779 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 15:43:38,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:43:38,337.337 INFO    ] Checking for system updates...
[2026-06-13 15:43:38,358.358 INFO    ] 200
[2026-06-13 15:43:38,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:38,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:38,393.393 INFO    ] No update needed
[2026-06-13 15:43:38,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 15:43:38,414.414 INFO    ] 200
[2026-06-13 15:43:38,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:38,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:43:38,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:43:38,482.482 INFO    ] No camera update needed
[2026-06-13 15:43:38,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:43:38,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:43:38,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:43:38,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:43:40,531.531 INFO    ] ================================================
[2026-06-13 15:43:40,547.547 INFO    ] Launching Daemon at Sat Jun 13 15:43:40 IST 2026
[2026-06-13 15:43:40,557.557 INFO    ] ================================================
[2026-06-13 15:43:40,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:43:40
[2026-06-13 15:43:41,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:43:41,351.351 INFO    ] Initializing speech engine...
[2026-06-13 15:43:41,359.359 INFO    ] 2026-06-13 15:43:41
[2026-06-13 15:43:41,569.569 INFO    ] 2026-06-13 15:43:41
[2026-06-13 15:43:41,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:43:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:43:41,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:43:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:43:41,971.971 INFO    ] time= 13/06/2026 15:43:41
[2026-06-13 15:43:41,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:43:42,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:43:42,085.085 INFO    ] No existing commands found in stream
[2026-06-13 15:43:47,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:47,097.097 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 15:43:50,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:43:50,216.216 INFO    ] Checking for system updates...
[2026-06-13 15:43:50,237.237 INFO    ] 200
[2026-06-13 15:43:50,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:50,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:43:50,270.270 INFO    ] No update needed
[2026-06-13 15:43:50,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 15:43:50,291.291 INFO    ] 200
[2026-06-13 15:43:50,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:43:50,315.315 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:43:50,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:43:50,359.359 INFO    ] No camera update needed
[2026-06-13 15:43:50,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:43:50,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:43:50,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:43:50,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:43:52,406.406 INFO    ] ================================================
[2026-06-13 15:43:52,420.420 INFO    ] Launching Daemon at Sat Jun 13 15:43:52 IST 2026
[2026-06-13 15:43:52,431.431 INFO    ] ================================================
[2026-06-13 15:43:52,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:43:52
[2026-06-13 15:43:53,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:43:53,221.221 INFO    ] Initializing speech engine...
[2026-06-13 15:43:53,229.229 INFO    ] 2026-06-13 15:43:53
[2026-06-13 15:43:53,441.441 INFO    ] 2026-06-13 15:43:53
[2026-06-13 15:43:53,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:43:53,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:43:53,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:43:53,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:43:53,848.848 INFO    ] time= 13/06/2026 15:43:53
[2026-06-13 15:43:53,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:43:53,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:43:53,981.981 INFO    ] No existing commands found in stream
[2026-06-13 15:43:58,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:43:58,999.999 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 15:44:01,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:44:01,815.815 INFO    ] Checking for system updates...
[2026-06-13 15:44:01,849.849 INFO    ] 200
[2026-06-13 15:44:01,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:01,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:01,918.918 INFO    ] No update needed
[2026-06-13 15:44:01,921.921 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:01,961.961 INFO    ] 200
[2026-06-13 15:44:01,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:02,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:02,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:02,049.049 INFO    ] No camera update needed
[2026-06-13 15:44:02,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:02,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:02,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:02,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:04,106.106 INFO    ] ================================================
[2026-06-13 15:44:04,121.121 INFO    ] Launching Daemon at Sat Jun 13 15:44:04 IST 2026
[2026-06-13 15:44:04,132.132 INFO    ] ================================================
[2026-06-13 15:44:04,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:04
[2026-06-13 15:44:05,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:05,301.301 INFO    ] Initializing speech engine...
[2026-06-13 15:44:05,316.316 INFO    ] 2026-06-13 15:44:05
[2026-06-13 15:44:05,538.538 INFO    ] 2026-06-13 15:44:05
[2026-06-13 15:44:05,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:44:05,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:44:05,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:44:05,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:44:05,964.964 INFO    ] time= 13/06/2026 15:44:05
[2026-06-13 15:44:05,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:44:05,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:44:06,066.066 INFO    ] No existing commands found in stream
[2026-06-13 15:44:11,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:44:11,078.078 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 15:44:13,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:44:13,031.031 INFO    ] Checking for system updates...
[2026-06-13 15:44:13,052.052 INFO    ] 200
[2026-06-13 15:44:13,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:13,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:13,086.086 INFO    ] No update needed
[2026-06-13 15:44:13,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:13,108.108 INFO    ] 200
[2026-06-13 15:44:13,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:13,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:13,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:13,185.185 INFO    ] No camera update needed
[2026-06-13 15:44:13,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:13,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:13,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:13,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:15,237.237 INFO    ] ================================================
[2026-06-13 15:44:15,252.252 INFO    ] Launching Daemon at Sat Jun 13 15:44:15 IST 2026
[2026-06-13 15:44:15,262.262 INFO    ] ================================================
[2026-06-13 15:44:15,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:15
[2026-06-13 15:44:15,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:16,041.041 INFO    ] Initializing speech engine...
[2026-06-13 15:44:16,046.046 INFO    ] 2026-06-13 15:44:16
[2026-06-13 15:44:16,251.251 INFO    ] 2026-06-13 15:44:16
[2026-06-13 15:44:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:44:16,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:44:16,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:44:16,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:44:16,661.661 INFO    ] time= 13/06/2026 15:44:16
[2026-06-13 15:44:16,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:44:16,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:44:16,766.766 INFO    ] No existing commands found in stream
[2026-06-13 15:44:21,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:44:21,779.779 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 15:44:24,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:44:24,926.926 INFO    ] Checking for system updates...
[2026-06-13 15:44:24,947.947 INFO    ] 200
[2026-06-13 15:44:24,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:24,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:24,980.980 INFO    ] No update needed
[2026-06-13 15:44:24,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:25,001.001 INFO    ] 200
[2026-06-13 15:44:25,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:25,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:25,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:25,050.050 INFO    ] No camera update needed
[2026-06-13 15:44:25,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:25,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:25,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:25,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:27,097.097 INFO    ] ================================================
[2026-06-13 15:44:27,113.113 INFO    ] Launching Daemon at Sat Jun 13 15:44:27 IST 2026
[2026-06-13 15:44:27,123.123 INFO    ] ================================================
[2026-06-13 15:44:27,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:27
[2026-06-13 15:44:27,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:27,911.911 INFO    ] Initializing speech engine...
[2026-06-13 15:44:27,915.915 INFO    ] 2026-06-13 15:44:27
[2026-06-13 15:44:28,133.133 INFO    ] 2026-06-13 15:44:28
[2026-06-13 15:44:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:44:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:44:28,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:44:28,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:44:28,543.543 INFO    ] time= 13/06/2026 15:44:28
[2026-06-13 15:44:28,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:44:28,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:44:28,655.655 INFO    ] No existing commands found in stream
[2026-06-13 15:44:33,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:44:33,663.663 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 15:44:36,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:44:36,670.670 INFO    ] Checking for system updates...
[2026-06-13 15:44:36,691.691 INFO    ] 200
[2026-06-13 15:44:36,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:36,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:44:36,727.727 INFO    ] No update needed
[2026-06-13 15:44:36,728.728 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:36,751.751 INFO    ] 200
[2026-06-13 15:44:36,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:36,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:36,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:44:36,819.819 INFO    ] No camera update needed
[2026-06-13 15:44:36,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:36,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:36,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:36,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:38,866.866 INFO    ] ================================================
[2026-06-13 15:44:38,881.881 INFO    ] Launching Daemon at Sat Jun 13 15:44:38 IST 2026
[2026-06-13 15:44:38,892.892 INFO    ] ================================================
[2026-06-13 15:44:39,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:39
[2026-06-13 15:44:39,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:39,698.698 INFO    ] Initializing speech engine...
[2026-06-13 15:44:39,708.708 INFO    ] 2026-06-13 15:44:39
[2026-06-13 15:44:39,912.912 INFO    ] 2026-06-13 15:44:39
[2026-06-13 15:44:39,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:44:40,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:44:40,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:44:40,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:44:40,322.322 INFO    ] time= 13/06/2026 15:44:40
[2026-06-13 15:44:40,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:44:40,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:44:40,427.427 INFO    ] No existing commands found in stream
[2026-06-13 15:44:45,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:44:45,440.440 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 15:44:46,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:44:46,925.925 INFO    ] Checking for system updates...
[2026-06-13 15:44:46,947.947 INFO    ] 200
[2026-06-13 15:44:46,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:46,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:46,983.983 INFO    ] No update needed
[2026-06-13 15:44:46,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:47,004.004 INFO    ] 200
[2026-06-13 15:44:47,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:47,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:47,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:44:47,076.076 INFO    ] No camera update needed
[2026-06-13 15:44:47,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:47,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:47,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:47,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:49,135.135 INFO    ] ================================================
[2026-06-13 15:44:49,150.150 INFO    ] Launching Daemon at Sat Jun 13 15:44:49 IST 2026
[2026-06-13 15:44:49,160.160 INFO    ] ================================================
[2026-06-13 15:44:49,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:49
[2026-06-13 15:44:50,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:50,379.379 INFO    ] Initializing speech engine...
[2026-06-13 15:44:50,384.384 INFO    ] 2026-06-13 15:44:50
[2026-06-13 15:44:50,602.602 INFO    ] 2026-06-13 15:44:50
[2026-06-13 15:44:50,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:44:50,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:44:50,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:44:50,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:44:51,001.001 INFO    ] time= 13/06/2026 15:44:50
[2026-06-13 15:44:51,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:44:51,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:44:51,123.123 INFO    ] No existing commands found in stream
[2026-06-13 15:44:56,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:44:56,136.136 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 15:44:56,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:44:56,599.599 INFO    ] Checking for system updates...
[2026-06-13 15:44:56,620.620 INFO    ] 200
[2026-06-13 15:44:56,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:56,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:56,653.653 INFO    ] No update needed
[2026-06-13 15:44:56,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 15:44:56,675.675 INFO    ] 200
[2026-06-13 15:44:56,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:44:56,701.701 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:44:56,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:44:56,742.742 INFO    ] No camera update needed
[2026-06-13 15:44:56,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:44:56,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:44:56,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:44:56,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:44:58,789.789 INFO    ] ================================================
[2026-06-13 15:44:58,804.804 INFO    ] Launching Daemon at Sat Jun 13 15:44:58 IST 2026
[2026-06-13 15:44:58,815.815 INFO    ] ================================================
[2026-06-13 15:44:59,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:44:59
[2026-06-13 15:44:59,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:44:59,601.601 INFO    ] Initializing speech engine...
[2026-06-13 15:44:59,606.606 INFO    ] 2026-06-13 15:44:59
[2026-06-13 15:44:59,823.823 INFO    ] 2026-06-13 15:44:59
[2026-06-13 15:44:59,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:00,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:00,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:00,239.239 INFO    ] time= 13/06/2026 15:45:00
[2026-06-13 15:45:00,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:00,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:00,344.344 INFO    ] No existing commands found in stream
[2026-06-13 15:45:05,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:45:05,357.357 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 15:45:08,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:45:08,740.740 INFO    ] Checking for system updates...
[2026-06-13 15:45:08,761.761 INFO    ] 200
[2026-06-13 15:45:08,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:08,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:08,794.794 INFO    ] No update needed
[2026-06-13 15:45:08,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 15:45:08,819.819 INFO    ] 200
[2026-06-13 15:45:08,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:08,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:45:08,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:08,883.883 INFO    ] No camera update needed
[2026-06-13 15:45:08,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:45:08,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:45:08,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:45:08,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:45:10,930.930 INFO    ] ================================================
[2026-06-13 15:45:10,945.945 INFO    ] Launching Daemon at Sat Jun 13 15:45:10 IST 2026
[2026-06-13 15:45:10,955.955 INFO    ] ================================================
[2026-06-13 15:45:11,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:45:11
[2026-06-13 15:45:11,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:45:11,739.739 INFO    ] Initializing speech engine...
[2026-06-13 15:45:11,744.744 INFO    ] 2026-06-13 15:45:11
[2026-06-13 15:45:11,959.959 INFO    ] 2026-06-13 15:45:11
[2026-06-13 15:45:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:12,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:12,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:12,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:12,388.388 INFO    ] time= 13/06/2026 15:45:12
[2026-06-13 15:45:12,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:12,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:12,488.488 INFO    ] No existing commands found in stream
[2026-06-13 15:45:17,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:45:17,500.500 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 15:45:18,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:45:18,570.570 INFO    ] Checking for system updates...
[2026-06-13 15:45:18,591.591 INFO    ] 200
[2026-06-13 15:45:18,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:18,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:18,626.626 INFO    ] No update needed
[2026-06-13 15:45:18,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 15:45:18,648.648 INFO    ] 200
[2026-06-13 15:45:18,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:18,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:45:18,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:18,712.712 INFO    ] No camera update needed
[2026-06-13 15:45:18,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:45:18,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:45:18,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:45:18,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:45:20,759.759 INFO    ] ================================================
[2026-06-13 15:45:20,774.774 INFO    ] Launching Daemon at Sat Jun 13 15:45:20 IST 2026
[2026-06-13 15:45:20,785.785 INFO    ] ================================================
[2026-06-13 15:45:21,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:45:21
[2026-06-13 15:45:21,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:45:21,592.592 INFO    ] Initializing speech engine...
[2026-06-13 15:45:21,597.597 INFO    ] 2026-06-13 15:45:21
[2026-06-13 15:45:21,802.802 INFO    ] 2026-06-13 15:45:21
[2026-06-13 15:45:21,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:21,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:22,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:22,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:22,207.207 INFO    ] time= 13/06/2026 15:45:22
[2026-06-13 15:45:22,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:22,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:22,317.317 INFO    ] No existing commands found in stream
[2026-06-13 15:45:27,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:45:27,329.329 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 15:45:29,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:45:29,646.646 INFO    ] Checking for system updates...
[2026-06-13 15:45:29,668.668 INFO    ] 200
[2026-06-13 15:45:29,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:29,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:45:29,703.703 INFO    ] No update needed
[2026-06-13 15:45:29,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 15:45:29,723.723 INFO    ] 200
[2026-06-13 15:45:29,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:29,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:45:29,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:45:29,884.884 INFO    ] No camera update needed
[2026-06-13 15:45:29,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:45:29,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:45:29,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:45:29,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:45:31,924.924 INFO    ] ================================================
[2026-06-13 15:45:31,933.933 INFO    ] Launching Daemon at Sat Jun 13 15:45:31 IST 2026
[2026-06-13 15:45:31,940.940 INFO    ] ================================================
[2026-06-13 15:45:32,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:45:32
[2026-06-13 15:45:33,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:45:33,379.379 INFO    ] Initializing speech engine...
[2026-06-13 15:45:33,386.386 INFO    ] 2026-06-13 15:45:33
[2026-06-13 15:45:33,677.677 INFO    ] 2026-06-13 15:45:33
[2026-06-13 15:45:33,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:33,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:33,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:34,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:34,028.028 INFO    ] time= 13/06/2026 15:45:34
[2026-06-13 15:45:34,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:34,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:34,107.107 INFO    ] No existing commands found in stream
[2026-06-13 15:45:39,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:45:39,121.121 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 15:45:42,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:45:42,320.320 INFO    ] Checking for system updates...
[2026-06-13 15:45:42,341.341 INFO    ] 200
[2026-06-13 15:45:42,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:42,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:42,374.374 INFO    ] No update needed
[2026-06-13 15:45:42,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 15:45:42,395.395 INFO    ] 200
[2026-06-13 15:45:42,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:42,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:45:42,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:42,466.466 INFO    ] No camera update needed
[2026-06-13 15:45:42,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:45:42,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:45:42,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:45:42,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:45:44,513.513 INFO    ] ================================================
[2026-06-13 15:45:44,528.528 INFO    ] Launching Daemon at Sat Jun 13 15:45:44 IST 2026
[2026-06-13 15:45:44,539.539 INFO    ] ================================================
[2026-06-13 15:45:44,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:45:44
[2026-06-13 15:45:45,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:45:45,362.362 INFO    ] Initializing speech engine...
[2026-06-13 15:45:45,367.367 INFO    ] 2026-06-13 15:45:45
[2026-06-13 15:45:45,573.573 INFO    ] 2026-06-13 15:45:45
[2026-06-13 15:45:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:45,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:45,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:45,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:45,966.966 INFO    ] time= 13/06/2026 15:45:45
[2026-06-13 15:45:46,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:46,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:46,085.085 INFO    ] No existing commands found in stream
[2026-06-13 15:45:51,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:45:51,099.099 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 15:45:52,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:45:52,033.033 INFO    ] Checking for system updates...
[2026-06-13 15:45:52,054.054 INFO    ] 200
[2026-06-13 15:45:52,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:52,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:45:52,089.089 INFO    ] No update needed
[2026-06-13 15:45:52,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 15:45:52,111.111 INFO    ] 200
[2026-06-13 15:45:52,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:45:52,136.136 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:45:52,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:45:52,170.170 INFO    ] No camera update needed
[2026-06-13 15:45:52,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:45:52,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:45:52,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:45:52,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:45:54,217.217 INFO    ] ================================================
[2026-06-13 15:45:54,233.233 INFO    ] Launching Daemon at Sat Jun 13 15:45:54 IST 2026
[2026-06-13 15:45:54,243.243 INFO    ] ================================================
[2026-06-13 15:45:54,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:45:54
[2026-06-13 15:45:55,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:45:55,537.537 INFO    ] Initializing speech engine...
[2026-06-13 15:45:55,546.546 INFO    ] 2026-06-13 15:45:55
[2026-06-13 15:45:55,802.802 INFO    ] 2026-06-13 15:45:55
[2026-06-13 15:45:55,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:45:56,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:45:56,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:45:56,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:45:56,241.241 INFO    ] time= 13/06/2026 15:45:56
[2026-06-13 15:45:56,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:45:56,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:45:56,412.412 INFO    ] No existing commands found in stream
[2026-06-13 15:46:01,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:01,430.430 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 15:46:03,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:46:03,372.372 INFO    ] Checking for system updates...
[2026-06-13 15:46:03,413.413 INFO    ] 200
[2026-06-13 15:46:03,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:03,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:46:03,474.474 INFO    ] No update needed
[2026-06-13 15:46:03,477.477 INFO    ] Checking for camera pi updates...
[2026-06-13 15:46:03,514.514 INFO    ] 200
[2026-06-13 15:46:03,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:03,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:46:03,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:46:03,610.610 INFO    ] No camera update needed
[2026-06-13 15:46:03,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:46:03,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:46:03,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:46:03,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:46:05,659.659 INFO    ] ================================================
[2026-06-13 15:46:05,675.675 INFO    ] Launching Daemon at Sat Jun 13 15:46:05 IST 2026
[2026-06-13 15:46:05,686.686 INFO    ] ================================================
[2026-06-13 15:46:06,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:46:06
[2026-06-13 15:46:06,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:46:07,231.231 INFO    ] Initializing speech engine...
[2026-06-13 15:46:07,247.247 INFO    ] 2026-06-13 15:46:07
[2026-06-13 15:46:07,503.503 INFO    ] 2026-06-13 15:46:07
[2026-06-13 15:46:07,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:46:07,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:46:07,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:46:07,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:46:07,844.844 INFO    ] time= 13/06/2026 15:46:07
[2026-06-13 15:46:07,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:46:07,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:46:07,958.958 INFO    ] No existing commands found in stream
[2026-06-13 15:46:12,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:12,973.973 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 15:46:15,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:46:15,024.024 INFO    ] Checking for system updates...
[2026-06-13 15:46:15,045.045 INFO    ] 200
[2026-06-13 15:46:15,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:15,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:15,079.079 INFO    ] No update needed
[2026-06-13 15:46:15,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 15:46:15,101.101 INFO    ] 200
[2026-06-13 15:46:15,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:15,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:46:15,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:15,164.164 INFO    ] No camera update needed
[2026-06-13 15:46:15,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:46:15,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:46:15,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:46:15,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:46:17,212.212 INFO    ] ================================================
[2026-06-13 15:46:17,228.228 INFO    ] Launching Daemon at Sat Jun 13 15:46:17 IST 2026
[2026-06-13 15:46:17,239.239 INFO    ] ================================================
[2026-06-13 15:46:17,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:46:17
[2026-06-13 15:46:17,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:46:18,072.072 INFO    ] Initializing speech engine...
[2026-06-13 15:46:18,077.077 INFO    ] 2026-06-13 15:46:18
[2026-06-13 15:46:18,283.283 INFO    ] 2026-06-13 15:46:18
[2026-06-13 15:46:18,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:46:18,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:46:18,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:46:18,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:46:18,675.675 INFO    ] time= 13/06/2026 15:46:18
[2026-06-13 15:46:18,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:46:18,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:46:18,802.802 INFO    ] No existing commands found in stream
[2026-06-13 15:46:23,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:23,819.819 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 15:46:27,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:46:27,775.775 INFO    ] Checking for system updates...
[2026-06-13 15:46:27,800.800 INFO    ] 200
[2026-06-13 15:46:27,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:27,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:27,837.837 INFO    ] No update needed
[2026-06-13 15:46:27,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 15:46:27,860.860 INFO    ] 200
[2026-06-13 15:46:27,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:27,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:46:27,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:27,911.911 INFO    ] No camera update needed
[2026-06-13 15:46:27,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:46:27,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:46:27,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:46:27,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:46:29,961.961 INFO    ] ================================================
[2026-06-13 15:46:29,980.980 INFO    ] Launching Daemon at Sat Jun 13 15:46:29 IST 2026
[2026-06-13 15:46:29,991.991 INFO    ] ================================================
[2026-06-13 15:46:30,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:46:30
[2026-06-13 15:46:30,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:46:30,766.766 INFO    ] Initializing speech engine...
[2026-06-13 15:46:30,780.780 INFO    ] 2026-06-13 15:46:30
[2026-06-13 15:46:30,986.986 INFO    ] 2026-06-13 15:46:30
[2026-06-13 15:46:31,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:46:31,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:46:31,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:46:31,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:46:31,420.420 INFO    ] time= 13/06/2026 15:46:31
[2026-06-13 15:46:31,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:46:31,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:46:31,576.576 INFO    ] No existing commands found in stream
[2026-06-13 15:46:36,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:36,594.594 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 15:46:39,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:46:39,885.885 INFO    ] Checking for system updates...
[2026-06-13 15:46:39,907.907 INFO    ] 200
[2026-06-13 15:46:39,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:39,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:39,941.941 INFO    ] No update needed
[2026-06-13 15:46:39,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 15:46:39,961.961 INFO    ] 200
[2026-06-13 15:46:39,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:39,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:46:40,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:40,028.028 INFO    ] No camera update needed
[2026-06-13 15:46:40,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:46:40,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:46:40,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:46:40,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:46:42,077.077 INFO    ] ================================================
[2026-06-13 15:46:42,092.092 INFO    ] Launching Daemon at Sat Jun 13 15:46:42 IST 2026
[2026-06-13 15:46:42,103.103 INFO    ] ================================================
[2026-06-13 15:46:42,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:46:42
[2026-06-13 15:46:42,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:46:42,907.907 INFO    ] Initializing speech engine...
[2026-06-13 15:46:42,917.917 INFO    ] 2026-06-13 15:46:42
[2026-06-13 15:46:43,120.120 INFO    ] 2026-06-13 15:46:43
[2026-06-13 15:46:43,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:46:43,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:46:43,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:46:43,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:46:43,537.537 INFO    ] time= 13/06/2026 15:46:43
[2026-06-13 15:46:43,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:46:43,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:46:43,637.637 INFO    ] No existing commands found in stream
[2026-06-13 15:46:48,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:48,652.652 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 15:46:50,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:46:50,946.946 INFO    ] Checking for system updates...
[2026-06-13 15:46:50,994.994 INFO    ] 200
[2026-06-13 15:46:50,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:51,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:46:51,062.062 INFO    ] No update needed
[2026-06-13 15:46:51,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 15:46:51,103.103 INFO    ] 200
[2026-06-13 15:46:51,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:46:51,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:46:51,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:46:51,211.211 INFO    ] No camera update needed
[2026-06-13 15:46:51,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:46:51,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:46:51,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:46:51,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:46:53,276.276 INFO    ] ================================================
[2026-06-13 15:46:53,291.291 INFO    ] Launching Daemon at Sat Jun 13 15:46:53 IST 2026
[2026-06-13 15:46:53,302.302 INFO    ] ================================================
[2026-06-13 15:46:53,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:46:53
[2026-06-13 15:46:53,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:46:54,096.096 INFO    ] Initializing speech engine...
[2026-06-13 15:46:54,104.104 INFO    ] 2026-06-13 15:46:54
[2026-06-13 15:46:54,322.322 INFO    ] 2026-06-13 15:46:54
[2026-06-13 15:46:54,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:46:54,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:46:54,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:46:54,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:46:54,755.755 INFO    ] time= 13/06/2026 15:46:54
[2026-06-13 15:46:54,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:46:54,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:46:54,881.881 INFO    ] No existing commands found in stream
[2026-06-13 15:46:59,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:46:59,895.895 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 15:47:02,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:47:02,152.152 INFO    ] Checking for system updates...
[2026-06-13 15:47:02,229.229 INFO    ] 200
[2026-06-13 15:47:02,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:02,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:02,350.350 INFO    ] No update needed
[2026-06-13 15:47:02,353.353 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:02,391.391 INFO    ] 200
[2026-06-13 15:47:02,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:02,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:02,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:02,486.486 INFO    ] No camera update needed
[2026-06-13 15:47:02,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:02,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:02,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:02,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:47:04,549.549 INFO    ] ================================================
[2026-06-13 15:47:04,564.564 INFO    ] Launching Daemon at Sat Jun 13 15:47:04 IST 2026
[2026-06-13 15:47:04,575.575 INFO    ] ================================================
[2026-06-13 15:47:05,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:47:05
[2026-06-13 15:47:05,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:47:05,607.607 INFO    ] Initializing speech engine...
[2026-06-13 15:47:05,612.612 INFO    ] 2026-06-13 15:47:05
[2026-06-13 15:47:05,815.815 INFO    ] 2026-06-13 15:47:05
[2026-06-13 15:47:05,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:47:05,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:47:06,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:47:06,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:47:06,212.212 INFO    ] time= 13/06/2026 15:47:06
[2026-06-13 15:47:06,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:47:06,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:47:06,331.331 INFO    ] No existing commands found in stream
[2026-06-13 15:47:11,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:47:11,344.344 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 15:47:15,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:47:15,133.133 INFO    ] Checking for system updates...
[2026-06-13 15:47:15,154.154 INFO    ] 200
[2026-06-13 15:47:15,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:15,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:15,187.187 INFO    ] No update needed
[2026-06-13 15:47:15,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:15,208.208 INFO    ] 200
[2026-06-13 15:47:15,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:15,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:15,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:15,277.277 INFO    ] No camera update needed
[2026-06-13 15:47:15,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:15,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:15,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:15,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:47:17,318.318 INFO    ] ================================================
[2026-06-13 15:47:17,326.326 INFO    ] Launching Daemon at Sat Jun 13 15:47:17 IST 2026
[2026-06-13 15:47:17,332.332 INFO    ] ================================================
[2026-06-13 15:47:17,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:47:17
[2026-06-13 15:47:17,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:47:18,092.092 INFO    ] Initializing speech engine...
[2026-06-13 15:47:18,101.101 INFO    ] 2026-06-13 15:47:18
[2026-06-13 15:47:18,308.308 INFO    ] 2026-06-13 15:47:18
[2026-06-13 15:47:18,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:47:18,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:47:18,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:47:18,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:47:18,703.703 INFO    ] time= 13/06/2026 15:47:18
[2026-06-13 15:47:18,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:47:18,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:47:18,856.856 INFO    ] No existing commands found in stream
[2026-06-13 15:47:23,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:47:23,874.874 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 15:47:25,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:47:25,853.853 INFO    ] Checking for system updates...
[2026-06-13 15:47:25,874.874 INFO    ] 200
[2026-06-13 15:47:25,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:25,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:47:25,908.908 INFO    ] No update needed
[2026-06-13 15:47:25,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:25,930.930 INFO    ] 200
[2026-06-13 15:47:25,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:25,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:25,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:47:25,998.998 INFO    ] No camera update needed
[2026-06-13 15:47:26,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:26,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:26,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:26,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:47:28,046.046 INFO    ] ================================================
[2026-06-13 15:47:28,062.062 INFO    ] Launching Daemon at Sat Jun 13 15:47:28 IST 2026
[2026-06-13 15:47:28,073.073 INFO    ] ================================================
[2026-06-13 15:47:28,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:47:28
[2026-06-13 15:47:28,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:47:28,887.887 INFO    ] Initializing speech engine...
[2026-06-13 15:47:28,893.893 INFO    ] 2026-06-13 15:47:28
[2026-06-13 15:47:29,095.095 INFO    ] 2026-06-13 15:47:29
[2026-06-13 15:47:29,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:47:29,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:47:29,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:47:29,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:47:29,502.502 INFO    ] time= 13/06/2026 15:47:29
[2026-06-13 15:47:29,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:47:29,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:47:29,677.677 INFO    ] No existing commands found in stream
[2026-06-13 15:47:34,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:47:34,692.692 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 15:47:37,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:47:37,577.577 INFO    ] Checking for system updates...
[2026-06-13 15:47:37,599.599 INFO    ] 200
[2026-06-13 15:47:37,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:37,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:37,632.632 INFO    ] No update needed
[2026-06-13 15:47:37,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:37,653.653 INFO    ] 200
[2026-06-13 15:47:37,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:37,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:37,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:37,725.725 INFO    ] No camera update needed
[2026-06-13 15:47:37,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:37,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:37,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:37,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:47:39,772.772 INFO    ] ================================================
[2026-06-13 15:47:39,787.787 INFO    ] Launching Daemon at Sat Jun 13 15:47:39 IST 2026
[2026-06-13 15:47:39,797.797 INFO    ] ================================================
[2026-06-13 15:47:40,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:47:40
[2026-06-13 15:47:40,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:47:40,650.650 INFO    ] Initializing speech engine...
[2026-06-13 15:47:40,655.655 INFO    ] 2026-06-13 15:47:40
[2026-06-13 15:47:40,895.895 INFO    ] 2026-06-13 15:47:40
[2026-06-13 15:47:40,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:47:41,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:47:41,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:47:41,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:47:41,333.333 INFO    ] time= 13/06/2026 15:47:41
[2026-06-13 15:47:41,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:47:41,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:47:41,477.477 INFO    ] No existing commands found in stream
[2026-06-13 15:47:46,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:47:46,500.500 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 15:47:48,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:47:48,253.253 INFO    ] Checking for system updates...
[2026-06-13 15:47:48,274.274 INFO    ] 200
[2026-06-13 15:47:48,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:48,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:48,307.307 INFO    ] No update needed
[2026-06-13 15:47:48,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:48,330.330 INFO    ] 200
[2026-06-13 15:47:48,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:48,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:48,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:48,404.404 INFO    ] No camera update needed
[2026-06-13 15:47:48,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:48,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:48,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:48,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:47:50,450.450 INFO    ] ================================================
[2026-06-13 15:47:50,465.465 INFO    ] Launching Daemon at Sat Jun 13 15:47:50 IST 2026
[2026-06-13 15:47:50,476.476 INFO    ] ================================================
[2026-06-13 15:47:50,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:47:50
[2026-06-13 15:47:51,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:47:51,260.260 INFO    ] Initializing speech engine...
[2026-06-13 15:47:51,270.270 INFO    ] 2026-06-13 15:47:51
[2026-06-13 15:47:51,497.497 INFO    ] 2026-06-13 15:47:51
[2026-06-13 15:47:51,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:47:51,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:47:51,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:47:51,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:47:51,905.905 INFO    ] time= 13/06/2026 15:47:51
[2026-06-13 15:47:51,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:47:51,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:47:52,059.059 INFO    ] No existing commands found in stream
[2026-06-13 15:47:57,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:47:57,072.072 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 15:47:59,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:47:59,484.484 INFO    ] Checking for system updates...
[2026-06-13 15:47:59,520.520 INFO    ] 200
[2026-06-13 15:47:59,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:59,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:59,578.578 INFO    ] No update needed
[2026-06-13 15:47:59,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 15:47:59,608.608 INFO    ] 200
[2026-06-13 15:47:59,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:47:59,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:47:59,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:47:59,675.675 INFO    ] No camera update needed
[2026-06-13 15:47:59,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:47:59,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:47:59,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:47:59,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:01,733.733 INFO    ] ================================================
[2026-06-13 15:48:01,775.775 INFO    ] Launching Daemon at Sat Jun 13 15:48:01 IST 2026
[2026-06-13 15:48:01,799.799 INFO    ] ================================================
[2026-06-13 15:48:02,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:02
[2026-06-13 15:48:02,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:02,756.756 INFO    ] Initializing speech engine...
[2026-06-13 15:48:02,761.761 INFO    ] 2026-06-13 15:48:02
[2026-06-13 15:48:02,951.951 INFO    ] 2026-06-13 15:48:02
[2026-06-13 15:48:02,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:03,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:03,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:03,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:03,243.243 INFO    ] time= 13/06/2026 15:48:03
[2026-06-13 15:48:03,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:03,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:03,334.334 INFO    ] No existing commands found in stream
[2026-06-13 15:48:08,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:08,372.372 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 15:48:09,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:48:09,668.668 INFO    ] Checking for system updates...
[2026-06-13 15:48:09,689.689 INFO    ] 200
[2026-06-13 15:48:09,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:09,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:09,722.722 INFO    ] No update needed
[2026-06-13 15:48:09,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:09,743.743 INFO    ] 200
[2026-06-13 15:48:09,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:09,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:09,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:09,818.818 INFO    ] No camera update needed
[2026-06-13 15:48:09,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:09,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:09,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:09,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:11,864.864 INFO    ] ================================================
[2026-06-13 15:48:11,880.880 INFO    ] Launching Daemon at Sat Jun 13 15:48:11 IST 2026
[2026-06-13 15:48:11,891.891 INFO    ] ================================================
[2026-06-13 15:48:12,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:12
[2026-06-13 15:48:12,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:12,694.694 INFO    ] Initializing speech engine...
[2026-06-13 15:48:12,700.700 INFO    ] 2026-06-13 15:48:12
[2026-06-13 15:48:12,904.904 INFO    ] 2026-06-13 15:48:12
[2026-06-13 15:48:12,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:13,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:13,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:13,315.315 INFO    ] time= 13/06/2026 15:48:13
[2026-06-13 15:48:13,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:13,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:13,422.422 INFO    ] No existing commands found in stream
[2026-06-13 15:48:18,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:18,435.435 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 15:48:20,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:48:20,605.605 INFO    ] Checking for system updates...
[2026-06-13 15:48:20,628.628 INFO    ] 200
[2026-06-13 15:48:20,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:20,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:20,662.662 INFO    ] No update needed
[2026-06-13 15:48:20,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:20,683.683 INFO    ] 200
[2026-06-13 15:48:20,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:20,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:20,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:20,747.747 INFO    ] No camera update needed
[2026-06-13 15:48:20,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:20,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:20,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:20,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:22,794.794 INFO    ] ================================================
[2026-06-13 15:48:22,809.809 INFO    ] Launching Daemon at Sat Jun 13 15:48:22 IST 2026
[2026-06-13 15:48:22,819.819 INFO    ] ================================================
[2026-06-13 15:48:23,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:23
[2026-06-13 15:48:23,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:23,634.634 INFO    ] Initializing speech engine...
[2026-06-13 15:48:23,639.639 INFO    ] 2026-06-13 15:48:23
[2026-06-13 15:48:23,843.843 INFO    ] 2026-06-13 15:48:23
[2026-06-13 15:48:23,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:24,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:24,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:24,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:24,244.244 INFO    ] time= 13/06/2026 15:48:24
[2026-06-13 15:48:24,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:24,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:24,356.356 INFO    ] No existing commands found in stream
[2026-06-13 15:48:29,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:29,374.374 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 15:48:29,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:48:29,990.990 INFO    ] Checking for system updates...
[2026-06-13 15:48:30,010.010 INFO    ] 200
[2026-06-13 15:48:30,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:30,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:30,044.044 INFO    ] No update needed
[2026-06-13 15:48:30,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:30,068.068 INFO    ] 200
[2026-06-13 15:48:30,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:30,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:30,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:30,131.131 INFO    ] No camera update needed
[2026-06-13 15:48:30,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:30,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:30,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:30,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:32,171.171 INFO    ] ================================================
[2026-06-13 15:48:32,181.181 INFO    ] Launching Daemon at Sat Jun 13 15:48:32 IST 2026
[2026-06-13 15:48:32,188.188 INFO    ] ================================================
[2026-06-13 15:48:32,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:32
[2026-06-13 15:48:32,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:32,991.991 INFO    ] Initializing speech engine...
[2026-06-13 15:48:32,996.996 INFO    ] 2026-06-13 15:48:32
[2026-06-13 15:48:33,205.205 INFO    ] 2026-06-13 15:48:33
[2026-06-13 15:48:33,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:33,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:33,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:33,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:33,614.614 INFO    ] time= 13/06/2026 15:48:33
[2026-06-13 15:48:33,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:33,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:33,726.726 INFO    ] No existing commands found in stream
[2026-06-13 15:48:38,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:38,738.738 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 15:48:39,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:48:39,712.712 INFO    ] Checking for system updates...
[2026-06-13 15:48:39,732.732 INFO    ] 200
[2026-06-13 15:48:39,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:39,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:39,766.766 INFO    ] No update needed
[2026-06-13 15:48:39,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:39,789.789 INFO    ] 200
[2026-06-13 15:48:39,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:39,814.814 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:39,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:48:39,839.839 INFO    ] No camera update needed
[2026-06-13 15:48:39,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:39,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:39,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:39,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:41,880.880 INFO    ] ================================================
[2026-06-13 15:48:41,895.895 INFO    ] Launching Daemon at Sat Jun 13 15:48:41 IST 2026
[2026-06-13 15:48:41,906.906 INFO    ] ================================================
[2026-06-13 15:48:42,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:42
[2026-06-13 15:48:42,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:42,718.718 INFO    ] Initializing speech engine...
[2026-06-13 15:48:42,731.731 INFO    ] 2026-06-13 15:48:42
[2026-06-13 15:48:42,938.938 INFO    ] 2026-06-13 15:48:42
[2026-06-13 15:48:42,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:43,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:43,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:43,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:43,339.339 INFO    ] time= 13/06/2026 15:48:43
[2026-06-13 15:48:43,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:43,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:43,453.453 INFO    ] No existing commands found in stream
[2026-06-13 15:48:48,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:48,467.467 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 15:48:49,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:48:49,666.666 INFO    ] Checking for system updates...
[2026-06-13 15:48:49,687.687 INFO    ] 200
[2026-06-13 15:48:49,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:49,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:49,720.720 INFO    ] No update needed
[2026-06-13 15:48:49,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:49,741.741 INFO    ] 200
[2026-06-13 15:48:49,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:49,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:49,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:49,804.804 INFO    ] No camera update needed
[2026-06-13 15:48:49,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:49,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:49,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:49,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:48:51,852.852 INFO    ] ================================================
[2026-06-13 15:48:51,867.867 INFO    ] Launching Daemon at Sat Jun 13 15:48:51 IST 2026
[2026-06-13 15:48:51,878.878 INFO    ] ================================================
[2026-06-13 15:48:52,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:48:52
[2026-06-13 15:48:52,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:48:52,685.685 INFO    ] Initializing speech engine...
[2026-06-13 15:48:52,695.695 INFO    ] 2026-06-13 15:48:52
[2026-06-13 15:48:52,900.900 INFO    ] 2026-06-13 15:48:52
[2026-06-13 15:48:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:48:53,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:48:53,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:48:53,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:48:53,290.290 INFO    ] time= 13/06/2026 15:48:53
[2026-06-13 15:48:53,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:48:53,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:48:53,415.415 INFO    ] No existing commands found in stream
[2026-06-13 15:48:58,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:48:58,429.429 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 15:48:58,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:48:58,749.749 INFO    ] Checking for system updates...
[2026-06-13 15:48:58,770.770 INFO    ] 200
[2026-06-13 15:48:58,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:58,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:58,803.803 INFO    ] No update needed
[2026-06-13 15:48:58,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 15:48:58,826.826 INFO    ] 200
[2026-06-13 15:48:58,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:48:58,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:48:58,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:48:58,899.899 INFO    ] No camera update needed
[2026-06-13 15:48:58,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:48:58,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:48:58,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:48:58,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:00,948.948 INFO    ] ================================================
[2026-06-13 15:49:00,963.963 INFO    ] Launching Daemon at Sat Jun 13 15:49:00 IST 2026
[2026-06-13 15:49:00,975.975 INFO    ] ================================================
[2026-06-13 15:49:01,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:01
[2026-06-13 15:49:01,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:01,760.760 INFO    ] Initializing speech engine...
[2026-06-13 15:49:01,765.765 INFO    ] 2026-06-13 15:49:01
[2026-06-13 15:49:01,992.992 INFO    ] 2026-06-13 15:49:01
[2026-06-13 15:49:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:02,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:02,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:02,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:02,342.342 INFO    ] time= 13/06/2026 15:49:02
[2026-06-13 15:49:02,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:02,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:02,475.475 INFO    ] No existing commands found in stream
[2026-06-13 15:49:07,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:49:07,505.505 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 15:49:09,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:49:09,696.696 INFO    ] Checking for system updates...
[2026-06-13 15:49:09,717.717 INFO    ] 200
[2026-06-13 15:49:09,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:09,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:49:09,751.751 INFO    ] No update needed
[2026-06-13 15:49:09,753.753 INFO    ] Checking for camera pi updates...
[2026-06-13 15:49:09,772.772 INFO    ] 200
[2026-06-13 15:49:09,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:09,798.798 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:49:09,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:49:09,840.840 INFO    ] No camera update needed
[2026-06-13 15:49:09,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:49:09,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:49:09,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:49:09,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:11,891.891 INFO    ] ================================================
[2026-06-13 15:49:11,906.906 INFO    ] Launching Daemon at Sat Jun 13 15:49:11 IST 2026
[2026-06-13 15:49:11,917.917 INFO    ] ================================================
[2026-06-13 15:49:12,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:12
[2026-06-13 15:49:12,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:12,707.707 INFO    ] Initializing speech engine...
[2026-06-13 15:49:12,712.712 INFO    ] 2026-06-13 15:49:12
[2026-06-13 15:49:12,918.918 INFO    ] 2026-06-13 15:49:12
[2026-06-13 15:49:12,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:13,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:13,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:13,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:13,323.323 INFO    ] time= 13/06/2026 15:49:13
[2026-06-13 15:49:13,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:13,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:13,432.432 INFO    ] No existing commands found in stream
[2026-06-13 15:49:18,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:49:18,446.446 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 15:49:21,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:49:21,749.749 INFO    ] Checking for system updates...
[2026-06-13 15:49:21,770.770 INFO    ] 200
[2026-06-13 15:49:21,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:21,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:21,805.805 INFO    ] No update needed
[2026-06-13 15:49:21,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 15:49:21,826.826 INFO    ] 200
[2026-06-13 15:49:21,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:21,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:49:21,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:21,901.901 INFO    ] No camera update needed
[2026-06-13 15:49:21,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:49:21,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:49:21,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:49:21,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:23,950.950 INFO    ] ================================================
[2026-06-13 15:49:23,966.966 INFO    ] Launching Daemon at Sat Jun 13 15:49:23 IST 2026
[2026-06-13 15:49:23,977.977 INFO    ] ================================================
[2026-06-13 15:49:24,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:24
[2026-06-13 15:49:24,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:24,769.769 INFO    ] Initializing speech engine...
[2026-06-13 15:49:24,774.774 INFO    ] 2026-06-13 15:49:24
[2026-06-13 15:49:24,976.976 INFO    ] 2026-06-13 15:49:24
[2026-06-13 15:49:25,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:25,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:25,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:25,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:25,426.426 INFO    ] time= 13/06/2026 15:49:25
[2026-06-13 15:49:25,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:25,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:25,563.563 INFO    ] No existing commands found in stream
[2026-06-13 15:49:30,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:49:30,577.577 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 15:49:32,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:49:32,002.002 INFO    ] Checking for system updates...
[2026-06-13 15:49:32,024.024 INFO    ] 200
[2026-06-13 15:49:32,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:32,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:32,076.076 INFO    ] No update needed
[2026-06-13 15:49:32,078.078 INFO    ] Checking for camera pi updates...
[2026-06-13 15:49:32,100.100 INFO    ] 200
[2026-06-13 15:49:32,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:32,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:49:32,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:32,160.160 INFO    ] No camera update needed
[2026-06-13 15:49:32,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:49:32,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:49:32,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:49:32,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:34,205.205 INFO    ] ================================================
[2026-06-13 15:49:34,221.221 INFO    ] Launching Daemon at Sat Jun 13 15:49:34 IST 2026
[2026-06-13 15:49:34,231.231 INFO    ] ================================================
[2026-06-13 15:49:34,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:34
[2026-06-13 15:49:34,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:35,001.001 INFO    ] Initializing speech engine...
[2026-06-13 15:49:35,005.005 INFO    ] 2026-06-13 15:49:35
[2026-06-13 15:49:35,207.207 INFO    ] 2026-06-13 15:49:35
[2026-06-13 15:49:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:35,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:35,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:35,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:35,478.478 INFO    ] time= 13/06/2026 15:49:35
[2026-06-13 15:49:35,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:35,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:35,584.584 INFO    ] No existing commands found in stream
[2026-06-13 15:49:40,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:49:40,621.621 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 15:49:41,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:49:41,139.139 INFO    ] Checking for system updates...
[2026-06-13 15:49:41,160.160 INFO    ] 200
[2026-06-13 15:49:41,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:41,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:41,195.195 INFO    ] No update needed
[2026-06-13 15:49:41,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 15:49:41,222.222 INFO    ] 200
[2026-06-13 15:49:41,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:41,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:49:41,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:49:41,389.389 INFO    ] No camera update needed
[2026-06-13 15:49:41,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:49:41,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:49:41,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:49:41,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:43,444.444 INFO    ] ================================================
[2026-06-13 15:49:43,459.459 INFO    ] Launching Daemon at Sat Jun 13 15:49:43 IST 2026
[2026-06-13 15:49:43,471.471 INFO    ] ================================================
[2026-06-13 15:49:43,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:43
[2026-06-13 15:49:44,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:44,488.488 INFO    ] Initializing speech engine...
[2026-06-13 15:49:44,502.502 INFO    ] 2026-06-13 15:49:44
[2026-06-13 15:49:44,790.790 INFO    ] 2026-06-13 15:49:44
[2026-06-13 15:49:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:45,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:45,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:45,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:45,301.301 INFO    ] time= 13/06/2026 15:49:45
[2026-06-13 15:49:45,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:45,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:45,462.462 INFO    ] No existing commands found in stream
[2026-06-13 15:49:50,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:49:50,492.492 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 15:49:51,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:49:51,884.884 INFO    ] Checking for system updates...
[2026-06-13 15:49:51,905.905 INFO    ] 200
[2026-06-13 15:49:51,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:51,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:49:51,938.938 INFO    ] No update needed
[2026-06-13 15:49:51,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 15:49:51,959.959 INFO    ] 200
[2026-06-13 15:49:51,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:49:51,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:49:52,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:49:52,019.019 INFO    ] No camera update needed
[2026-06-13 15:49:52,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:49:52,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:49:52,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:49:52,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:49:54,070.070 INFO    ] ================================================
[2026-06-13 15:49:54,085.085 INFO    ] Launching Daemon at Sat Jun 13 15:49:54 IST 2026
[2026-06-13 15:49:54,096.096 INFO    ] ================================================
[2026-06-13 15:49:54,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:49:54
[2026-06-13 15:49:54,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:49:54,916.916 INFO    ] Initializing speech engine...
[2026-06-13 15:49:54,931.931 INFO    ] 2026-06-13 15:49:54
[2026-06-13 15:49:55,136.136 INFO    ] 2026-06-13 15:49:55
[2026-06-13 15:49:55,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:49:55,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:49:55,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:49:55,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:49:55,637.637 INFO    ] time= 13/06/2026 15:49:55
[2026-06-13 15:49:55,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:49:55,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:49:55,818.818 INFO    ] No existing commands found in stream
[2026-06-13 15:50:00,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:50:00,839.839 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 15:50:08,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:50:08,860.860 INFO    ] Checking for system updates...
[2026-06-13 15:50:08,901.901 INFO    ] 200
[2026-06-13 15:50:08,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:08,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:08,959.959 INFO    ] No update needed
[2026-06-13 15:50:08,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 15:50:08,980.980 INFO    ] 200
[2026-06-13 15:50:08,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:09,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:50:09,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:09,053.053 INFO    ] No camera update needed
[2026-06-13 15:50:09,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:50:09,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:50:09,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:50:09,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:50:11,103.103 INFO    ] ================================================
[2026-06-13 15:50:11,120.120 INFO    ] Launching Daemon at Sat Jun 13 15:50:11 IST 2026
[2026-06-13 15:50:11,131.131 INFO    ] ================================================
[2026-06-13 15:50:11,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:50:11
[2026-06-13 15:50:11,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:50:12,033.033 INFO    ] Initializing speech engine...
[2026-06-13 15:50:12,050.050 INFO    ] 2026-06-13 15:50:12
[2026-06-13 15:50:12,284.284 INFO    ] 2026-06-13 15:50:12
[2026-06-13 15:50:12,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:50:12,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:50:12,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:50:12,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:50:12,717.717 INFO    ] time= 13/06/2026 15:50:12
[2026-06-13 15:50:12,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:50:12,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:50:12,857.857 INFO    ] No existing commands found in stream
[2026-06-13 15:50:17,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:50:17,871.871 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 15:50:20,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:50:20,678.678 INFO    ] Checking for system updates...
[2026-06-13 15:50:20,700.700 INFO    ] 200
[2026-06-13 15:50:20,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:20,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:50:20,733.733 INFO    ] No update needed
[2026-06-13 15:50:20,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 15:50:20,755.755 INFO    ] 200
[2026-06-13 15:50:20,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:20,780.780 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:50:20,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:50:20,826.826 INFO    ] No camera update needed
[2026-06-13 15:50:20,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:50:20,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:50:20,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:50:20,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:50:22,875.875 INFO    ] ================================================
[2026-06-13 15:50:22,890.890 INFO    ] Launching Daemon at Sat Jun 13 15:50:22 IST 2026
[2026-06-13 15:50:22,901.901 INFO    ] ================================================
[2026-06-13 15:50:23,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:50:23
[2026-06-13 15:50:23,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:50:24,142.142 INFO    ] Initializing speech engine...
[2026-06-13 15:50:24,146.146 INFO    ] 2026-06-13 15:50:24
[2026-06-13 15:50:24,409.409 INFO    ] 2026-06-13 15:50:24
[2026-06-13 15:50:24,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:50:24,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:50:24,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:50:24,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:50:24,864.864 INFO    ] time= 13/06/2026 15:50:24
[2026-06-13 15:50:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:50:24,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:50:25,090.090 INFO    ] No existing commands found in stream
[2026-06-13 15:50:30,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:50:30,123.123 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 15:50:31,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:50:31,189.189 INFO    ] Checking for system updates...
[2026-06-13 15:50:31,210.210 INFO    ] 200
[2026-06-13 15:50:31,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:31,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:31,243.243 INFO    ] No update needed
[2026-06-13 15:50:31,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 15:50:31,265.265 INFO    ] 200
[2026-06-13 15:50:31,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:31,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:50:31,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:31,348.348 INFO    ] No camera update needed
[2026-06-13 15:50:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:50:31,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:50:31,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:50:31,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:50:33,389.389 INFO    ] ================================================
[2026-06-13 15:50:33,405.405 INFO    ] Launching Daemon at Sat Jun 13 15:50:33 IST 2026
[2026-06-13 15:50:33,416.416 INFO    ] ================================================
[2026-06-13 15:50:33,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:50:33
[2026-06-13 15:50:34,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:50:34,208.208 INFO    ] Initializing speech engine...
[2026-06-13 15:50:34,220.220 INFO    ] 2026-06-13 15:50:34
[2026-06-13 15:50:34,427.427 INFO    ] 2026-06-13 15:50:34
[2026-06-13 15:50:34,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:50:34,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:50:34,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:50:34,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:50:34,844.844 INFO    ] time= 13/06/2026 15:50:34
[2026-06-13 15:50:34,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:50:34,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:50:34,961.961 INFO    ] No existing commands found in stream
[2026-06-13 15:50:39,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:50:39,972.972 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 15:50:42,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:50:42,577.577 INFO    ] Checking for system updates...
[2026-06-13 15:50:42,600.600 INFO    ] 200
[2026-06-13 15:50:42,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:42,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:42,635.635 INFO    ] No update needed
[2026-06-13 15:50:42,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 15:50:42,659.659 INFO    ] 200
[2026-06-13 15:50:42,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:42,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:50:42,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:42,722.722 INFO    ] No camera update needed
[2026-06-13 15:50:42,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:50:42,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:50:42,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:50:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:50:44,770.770 INFO    ] ================================================
[2026-06-13 15:50:44,785.785 INFO    ] Launching Daemon at Sat Jun 13 15:50:44 IST 2026
[2026-06-13 15:50:44,797.797 INFO    ] ================================================
[2026-06-13 15:50:45,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:50:45
[2026-06-13 15:50:45,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:50:45,594.594 INFO    ] Initializing speech engine...
[2026-06-13 15:50:45,598.598 INFO    ] 2026-06-13 15:50:45
[2026-06-13 15:50:45,819.819 INFO    ] 2026-06-13 15:50:45
[2026-06-13 15:50:45,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:50:46,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:50:46,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:50:46,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:50:46,240.240 INFO    ] time= 13/06/2026 15:50:46
[2026-06-13 15:50:46,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:50:46,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:50:46,466.466 INFO    ] No existing commands found in stream
[2026-06-13 15:50:51,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:50:51,505.505 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 15:50:51,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:50:51,870.870 INFO    ] Checking for system updates...
[2026-06-13 15:50:51,891.891 INFO    ] 200
[2026-06-13 15:50:51,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:51,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:51,924.924 INFO    ] No update needed
[2026-06-13 15:50:51,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 15:50:51,946.946 INFO    ] 200
[2026-06-13 15:50:51,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:50:51,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:50:52,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:50:52,036.036 INFO    ] No camera update needed
[2026-06-13 15:50:52,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:50:52,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:50:52,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:50:52,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:50:54,093.093 INFO    ] ================================================
[2026-06-13 15:50:54,109.109 INFO    ] Launching Daemon at Sat Jun 13 15:50:54 IST 2026
[2026-06-13 15:50:54,120.120 INFO    ] ================================================
[2026-06-13 15:50:54,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:50:54
[2026-06-13 15:50:55,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:50:55,319.319 INFO    ] Initializing speech engine...
[2026-06-13 15:50:55,323.323 INFO    ] 2026-06-13 15:50:55
[2026-06-13 15:50:55,554.554 INFO    ] 2026-06-13 15:50:55
[2026-06-13 15:50:55,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:50:55,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:50:55,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:50:55,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:50:55,993.993 INFO    ] time= 13/06/2026 15:50:55
[2026-06-13 15:50:56,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:50:56,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:50:56,090.090 INFO    ] No existing commands found in stream
[2026-06-13 15:51:01,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:01,102.102 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 15:51:04,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:51:04,075.075 INFO    ] Checking for system updates...
[2026-06-13 15:51:04,095.095 INFO    ] 200
[2026-06-13 15:51:04,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:04,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:04,131.131 INFO    ] No update needed
[2026-06-13 15:51:04,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:04,154.154 INFO    ] 200
[2026-06-13 15:51:04,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:04,179.179 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:04,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:04,214.214 INFO    ] No camera update needed
[2026-06-13 15:51:04,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:04,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:04,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:04,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:06,262.262 INFO    ] ================================================
[2026-06-13 15:51:06,278.278 INFO    ] Launching Daemon at Sat Jun 13 15:51:06 IST 2026
[2026-06-13 15:51:06,289.289 INFO    ] ================================================
[2026-06-13 15:51:06,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:06
[2026-06-13 15:51:06,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:07,097.097 INFO    ] Initializing speech engine...
[2026-06-13 15:51:07,102.102 INFO    ] 2026-06-13 15:51:07
[2026-06-13 15:51:07,307.307 INFO    ] 2026-06-13 15:51:07
[2026-06-13 15:51:07,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:07,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:07,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:07,720.720 INFO    ] time= 13/06/2026 15:51:07
[2026-06-13 15:51:07,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:07,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:07,822.822 INFO    ] No existing commands found in stream
[2026-06-13 15:51:12,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:12,835.835 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 15:51:13,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:51:13,181.181 INFO    ] Checking for system updates...
[2026-06-13 15:51:13,203.203 INFO    ] 200
[2026-06-13 15:51:13,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:13,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:51:13,237.237 INFO    ] No update needed
[2026-06-13 15:51:13,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:13,258.258 INFO    ] 200
[2026-06-13 15:51:13,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:13,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:13,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:51:13,322.322 INFO    ] No camera update needed
[2026-06-13 15:51:13,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:13,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:13,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:13,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:15,370.370 INFO    ] ================================================
[2026-06-13 15:51:15,386.386 INFO    ] Launching Daemon at Sat Jun 13 15:51:15 IST 2026
[2026-06-13 15:51:15,398.398 INFO    ] ================================================
[2026-06-13 15:51:15,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:15
[2026-06-13 15:51:16,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:16,265.265 INFO    ] Initializing speech engine...
[2026-06-13 15:51:16,272.272 INFO    ] 2026-06-13 15:51:16
[2026-06-13 15:51:16,481.481 INFO    ] 2026-06-13 15:51:16
[2026-06-13 15:51:16,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:16,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:16,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:16,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:16,903.903 INFO    ] time= 13/06/2026 15:51:16
[2026-06-13 15:51:16,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:16,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:17,004.004 INFO    ] No existing commands found in stream
[2026-06-13 15:51:22,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:22,016.016 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 15:51:22,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:51:22,702.702 INFO    ] Checking for system updates...
[2026-06-13 15:51:22,723.723 INFO    ] 200
[2026-06-13 15:51:22,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:22,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:22,756.756 INFO    ] No update needed
[2026-06-13 15:51:22,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:22,779.779 INFO    ] 200
[2026-06-13 15:51:22,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:22,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:22,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:22,855.855 INFO    ] No camera update needed
[2026-06-13 15:51:22,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:22,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:22,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:22,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:24,906.906 INFO    ] ================================================
[2026-06-13 15:51:24,922.922 INFO    ] Launching Daemon at Sat Jun 13 15:51:24 IST 2026
[2026-06-13 15:51:24,934.934 INFO    ] ================================================
[2026-06-13 15:51:25,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:25
[2026-06-13 15:51:25,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:26,213.213 INFO    ] Initializing speech engine...
[2026-06-13 15:51:26,220.220 INFO    ] 2026-06-13 15:51:26
[2026-06-13 15:51:26,521.521 INFO    ] 2026-06-13 15:51:26
[2026-06-13 15:51:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:26,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:26,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:26,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:26,892.892 INFO    ] time= 13/06/2026 15:51:26
[2026-06-13 15:51:26,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:26,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:26,973.973 INFO    ] No existing commands found in stream
[2026-06-13 15:51:31,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:31,981.981 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 15:51:34,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:51:34,240.240 INFO    ] Checking for system updates...
[2026-06-13 15:51:34,263.263 INFO    ] 200
[2026-06-13 15:51:34,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:34,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:34,296.296 INFO    ] No update needed
[2026-06-13 15:51:34,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:34,320.320 INFO    ] 200
[2026-06-13 15:51:34,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:34,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:34,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:51:34,367.367 INFO    ] No camera update needed
[2026-06-13 15:51:34,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:34,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:34,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:34,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:36,414.414 INFO    ] ================================================
[2026-06-13 15:51:36,430.430 INFO    ] Launching Daemon at Sat Jun 13 15:51:36 IST 2026
[2026-06-13 15:51:36,443.443 INFO    ] ================================================
[2026-06-13 15:51:37,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:37
[2026-06-13 15:51:37,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:37,911.911 INFO    ] Initializing speech engine...
[2026-06-13 15:51:37,920.920 INFO    ] 2026-06-13 15:51:37
[2026-06-13 15:51:38,179.179 INFO    ] 2026-06-13 15:51:38
[2026-06-13 15:51:38,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:38,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:38,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:38,612.612 INFO    ] time= 13/06/2026 15:51:38
[2026-06-13 15:51:38,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:38,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:38,785.785 INFO    ] No existing commands found in stream
[2026-06-13 15:51:43,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:43,799.799 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 15:51:44,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:51:44,285.285 INFO    ] Checking for system updates...
[2026-06-13 15:51:44,307.307 INFO    ] 200
[2026-06-13 15:51:44,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:44,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:44,341.341 INFO    ] No update needed
[2026-06-13 15:51:44,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:44,362.362 INFO    ] 200
[2026-06-13 15:51:44,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:44,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:44,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:51:44,540.540 INFO    ] No camera update needed
[2026-06-13 15:51:44,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:44,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:44,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:44,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:46,590.590 INFO    ] ================================================
[2026-06-13 15:51:46,605.605 INFO    ] Launching Daemon at Sat Jun 13 15:51:46 IST 2026
[2026-06-13 15:51:46,616.616 INFO    ] ================================================
[2026-06-13 15:51:46,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:46
[2026-06-13 15:51:47,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:47,415.415 INFO    ] Initializing speech engine...
[2026-06-13 15:51:47,423.423 INFO    ] 2026-06-13 15:51:47
[2026-06-13 15:51:47,638.638 INFO    ] 2026-06-13 15:51:47
[2026-06-13 15:51:47,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:47,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:47,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:47,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:48,020.020 INFO    ] time= 13/06/2026 15:51:47
[2026-06-13 15:51:48,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:48,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:48,177.177 INFO    ] No existing commands found in stream
[2026-06-13 15:51:53,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:51:53,196.196 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 15:51:55,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:51:55,740.740 INFO    ] Checking for system updates...
[2026-06-13 15:51:55,761.761 INFO    ] 200
[2026-06-13 15:51:55,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:55,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:51:55,796.796 INFO    ] No update needed
[2026-06-13 15:51:55,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 15:51:55,817.817 INFO    ] 200
[2026-06-13 15:51:55,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:51:55,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:51:55,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:51:55,881.881 INFO    ] No camera update needed
[2026-06-13 15:51:55,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:51:55,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:51:55,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:51:55,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:51:57,929.929 INFO    ] ================================================
[2026-06-13 15:51:57,944.944 INFO    ] Launching Daemon at Sat Jun 13 15:51:57 IST 2026
[2026-06-13 15:51:57,955.955 INFO    ] ================================================
[2026-06-13 15:51:58,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:51:58
[2026-06-13 15:51:58,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:51:58,744.744 INFO    ] Initializing speech engine...
[2026-06-13 15:51:58,750.750 INFO    ] 2026-06-13 15:51:58
[2026-06-13 15:51:58,940.940 INFO    ] 2026-06-13 15:51:58
[2026-06-13 15:51:59,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:51:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:51:59,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:51:59,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:51:59,330.330 INFO    ] time= 13/06/2026 15:51:59
[2026-06-13 15:51:59,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:51:59,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:51:59,511.511 INFO    ] No existing commands found in stream
[2026-06-13 15:52:04,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:04,525.525 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 15:52:06,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:52:06,316.316 INFO    ] Checking for system updates...
[2026-06-13 15:52:06,337.337 INFO    ] 200
[2026-06-13 15:52:06,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:06,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:52:06,371.371 INFO    ] No update needed
[2026-06-13 15:52:06,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:06,394.394 INFO    ] 200
[2026-06-13 15:52:06,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:06,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:52:06,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:52:06,462.462 INFO    ] No camera update needed
[2026-06-13 15:52:06,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:06,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:06,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:06,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:52:08,510.510 INFO    ] ================================================
[2026-06-13 15:52:08,526.526 INFO    ] Launching Daemon at Sat Jun 13 15:52:08 IST 2026
[2026-06-13 15:52:08,537.537 INFO    ] ================================================
[2026-06-13 15:52:08,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:52:08
[2026-06-13 15:52:09,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:52:09,320.320 INFO    ] Initializing speech engine...
[2026-06-13 15:52:09,325.325 INFO    ] 2026-06-13 15:52:09
[2026-06-13 15:52:09,529.529 INFO    ] 2026-06-13 15:52:09
[2026-06-13 15:52:09,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:52:09,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:52:09,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:52:09,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:52:09,951.951 INFO    ] time= 13/06/2026 15:52:09
[2026-06-13 15:52:09,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:52:09,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:52:10,048.048 INFO    ] No existing commands found in stream
[2026-06-13 15:52:15,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:15,060.060 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 15:52:17,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:52:17,316.316 INFO    ] Checking for system updates...
[2026-06-13 15:52:17,337.337 INFO    ] 200
[2026-06-13 15:52:17,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:17,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:52:17,370.370 INFO    ] No update needed
[2026-06-13 15:52:17,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:17,395.395 INFO    ] 200
[2026-06-13 15:52:17,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:17,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:52:17,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:17,460.460 INFO    ] No camera update needed
[2026-06-13 15:52:17,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:17,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:17,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:17,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:52:19,508.508 INFO    ] ================================================
[2026-06-13 15:52:19,524.524 INFO    ] Launching Daemon at Sat Jun 13 15:52:19 IST 2026
[2026-06-13 15:52:19,535.535 INFO    ] ================================================
[2026-06-13 15:52:19,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:52:19
[2026-06-13 15:52:20,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:52:20,338.338 INFO    ] Initializing speech engine...
[2026-06-13 15:52:20,341.341 INFO    ] 2026-06-13 15:52:20
[2026-06-13 15:52:20,547.547 INFO    ] 2026-06-13 15:52:20
[2026-06-13 15:52:20,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:52:20,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:52:20,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:52:20,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:52:20,962.962 INFO    ] time= 13/06/2026 15:52:20
[2026-06-13 15:52:20,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:52:20,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:52:21,024.024 INFO    ] No existing commands found in stream
[2026-06-13 15:52:26,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:26,036.036 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 15:52:27,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:52:27,546.546 INFO    ] Checking for system updates...
[2026-06-13 15:52:27,568.568 INFO    ] 200
[2026-06-13 15:52:27,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:27,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:27,604.604 INFO    ] No update needed
[2026-06-13 15:52:27,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:27,625.625 INFO    ] 200
[2026-06-13 15:52:27,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:27,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:52:27,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:52:27,693.693 INFO    ] No camera update needed
[2026-06-13 15:52:27,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:27,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:27,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:27,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:52:29,741.741 INFO    ] ================================================
[2026-06-13 15:52:29,757.757 INFO    ] Launching Daemon at Sat Jun 13 15:52:29 IST 2026
[2026-06-13 15:52:29,767.767 INFO    ] ================================================
[2026-06-13 15:52:30,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:52:30
[2026-06-13 15:52:30,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:52:30,626.626 INFO    ] Initializing speech engine...
[2026-06-13 15:52:30,631.631 INFO    ] 2026-06-13 15:52:30
[2026-06-13 15:52:30,838.838 INFO    ] 2026-06-13 15:52:30
[2026-06-13 15:52:30,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:52:31,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:52:31,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:52:31,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:52:31,269.269 INFO    ] time= 13/06/2026 15:52:31
[2026-06-13 15:52:31,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:52:31,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:52:31,373.373 INFO    ] No existing commands found in stream
[2026-06-13 15:52:36,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:36,386.386 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 15:52:38,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:52:38,801.801 INFO    ] Checking for system updates...
[2026-06-13 15:52:38,822.822 INFO    ] 200
[2026-06-13 15:52:38,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:38,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:38,856.856 INFO    ] No update needed
[2026-06-13 15:52:38,858.858 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:38,878.878 INFO    ] 200
[2026-06-13 15:52:38,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:38,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:52:38,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:38,943.943 INFO    ] No camera update needed
[2026-06-13 15:52:38,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:38,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:38,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:38,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:52:40,990.990 INFO    ] ================================================
[2026-06-13 15:52:41,006.006 INFO    ] Launching Daemon at Sat Jun 13 15:52:41 IST 2026
[2026-06-13 15:52:41,018.018 INFO    ] ================================================
[2026-06-13 15:52:41,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:52:41
[2026-06-13 15:52:41,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:52:41,876.876 INFO    ] Initializing speech engine...
[2026-06-13 15:52:41,881.881 INFO    ] 2026-06-13 15:52:41
[2026-06-13 15:52:42,089.089 INFO    ] 2026-06-13 15:52:42
[2026-06-13 15:52:42,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:52:42,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:52:42,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:52:42,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:52:42,497.497 INFO    ] time= 13/06/2026 15:52:42
[2026-06-13 15:52:42,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:52:42,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:52:42,613.613 INFO    ] No existing commands found in stream
[2026-06-13 15:52:47,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:47,627.627 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 15:52:48,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:52:48,142.142 INFO    ] Checking for system updates...
[2026-06-13 15:52:48,163.163 INFO    ] 200
[2026-06-13 15:52:48,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:48,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:48,197.197 INFO    ] No update needed
[2026-06-13 15:52:48,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:48,219.219 INFO    ] 200
[2026-06-13 15:52:48,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:48,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:52:48,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:52:48,283.283 INFO    ] No camera update needed
[2026-06-13 15:52:48,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:48,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:48,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:48,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:52:50,332.332 INFO    ] ================================================
[2026-06-13 15:52:50,347.347 INFO    ] Launching Daemon at Sat Jun 13 15:52:50 IST 2026
[2026-06-13 15:52:50,358.358 INFO    ] ================================================
[2026-06-13 15:52:50,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:52:50
[2026-06-13 15:52:51,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:52:51,224.224 INFO    ] Initializing speech engine...
[2026-06-13 15:52:51,230.230 INFO    ] 2026-06-13 15:52:51
[2026-06-13 15:52:51,439.439 INFO    ] 2026-06-13 15:52:51
[2026-06-13 15:52:51,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:52:51,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:52:51,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:52:51,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:52:51,849.849 INFO    ] time= 13/06/2026 15:52:51
[2026-06-13 15:52:51,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:52:51,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:52:51,955.955 INFO    ] No existing commands found in stream
[2026-06-13 15:52:56,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:52:56,968.968 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 15:52:58,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:52:58,691.691 INFO    ] Checking for system updates...
[2026-06-13 15:52:58,718.718 INFO    ] 200
[2026-06-13 15:52:58,720.720 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:58,722.722 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 15:52:58,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 15:52:58,749.749 INFO    ] 200
[2026-06-13 15:52:58,750.750 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 15:52:58,752.752 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 15:52:58,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:52:58,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:52:58,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:52:58,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:53:00,795.795 INFO    ] ================================================
[2026-06-13 15:53:00,811.811 INFO    ] Launching Daemon at Sat Jun 13 15:53:00 IST 2026
[2026-06-13 15:53:00,822.822 INFO    ] ================================================
[2026-06-13 15:53:01,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:53:01
[2026-06-13 15:53:02,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:53:02,480.480 INFO    ] Initializing speech engine...
[2026-06-13 15:53:02,483.483 INFO    ] 2026-06-13 15:53:02
[2026-06-13 15:53:02,809.809 INFO    ] 2026-06-13 15:53:02
[2026-06-13 15:53:02,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:53:03,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:53:03,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:53:03,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:53:03,236.236 INFO    ] time= 13/06/2026 15:53:03
[2026-06-13 15:53:03,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:53:03,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:53:03,395.395 INFO    ] No existing commands found in stream
[2026-06-13 15:53:08,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:53:08,429.429 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 15:53:12,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:53:12,479.479 INFO    ] Checking for system updates...
[2026-06-13 15:53:12,501.501 INFO    ] 200
[2026-06-13 15:53:12,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:12,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:12,534.534 INFO    ] No update needed
[2026-06-13 15:53:12,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 15:53:12,556.556 INFO    ] 200
[2026-06-13 15:53:12,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:12,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:53:12,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:12,624.624 INFO    ] No camera update needed
[2026-06-13 15:53:12,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:53:12,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:53:12,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:53:12,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:53:14,674.674 INFO    ] ================================================
[2026-06-13 15:53:14,690.690 INFO    ] Launching Daemon at Sat Jun 13 15:53:14 IST 2026
[2026-06-13 15:53:14,702.702 INFO    ] ================================================
[2026-06-13 15:53:15,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:53:15
[2026-06-13 15:53:15,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:53:15,495.495 INFO    ] Initializing speech engine...
[2026-06-13 15:53:15,507.507 INFO    ] 2026-06-13 15:53:15
[2026-06-13 15:53:15,714.714 INFO    ] 2026-06-13 15:53:15
[2026-06-13 15:53:15,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:53:15,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:53:15,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:53:16,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:53:16,132.132 INFO    ] time= 13/06/2026 15:53:16
[2026-06-13 15:53:16,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:53:16,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:53:16,229.229 INFO    ] No existing commands found in stream
[2026-06-13 15:53:21,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:53:21,246.246 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 15:53:23,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:53:23,380.380 INFO    ] Checking for system updates...
[2026-06-13 15:53:23,418.418 INFO    ] 200
[2026-06-13 15:53:23,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:23,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:53:23,476.476 INFO    ] No update needed
[2026-06-13 15:53:23,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 15:53:23,517.517 INFO    ] 200
[2026-06-13 15:53:23,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:23,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:53:23,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:53:23,609.609 INFO    ] No camera update needed
[2026-06-13 15:53:23,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:53:23,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:53:23,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:53:23,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:53:25,676.676 INFO    ] ================================================
[2026-06-13 15:53:25,694.694 INFO    ] Launching Daemon at Sat Jun 13 15:53:25 IST 2026
[2026-06-13 15:53:25,701.701 INFO    ] ================================================
[2026-06-13 15:53:26,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:53:26
[2026-06-13 15:53:26,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:53:26,473.473 INFO    ] Initializing speech engine...
[2026-06-13 15:53:26,477.477 INFO    ] 2026-06-13 15:53:26
[2026-06-13 15:53:26,682.682 INFO    ] 2026-06-13 15:53:26
[2026-06-13 15:53:26,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:53:26,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:53:26,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:53:27,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:53:27,085.085 INFO    ] time= 13/06/2026 15:53:27
[2026-06-13 15:53:27,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:53:27,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:53:27,197.197 INFO    ] No existing commands found in stream
[2026-06-13 15:53:32,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:53:32,206.206 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 15:53:35,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:53:35,425.425 INFO    ] Checking for system updates...
[2026-06-13 15:53:35,465.465 INFO    ] 200
[2026-06-13 15:53:35,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:35,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:35,530.530 INFO    ] No update needed
[2026-06-13 15:53:35,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 15:53:35,567.567 INFO    ] 200
[2026-06-13 15:53:35,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:35,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:53:35,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:35,632.632 INFO    ] No camera update needed
[2026-06-13 15:53:35,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:53:35,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:53:35,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:53:35,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:53:37,678.678 INFO    ] ================================================
[2026-06-13 15:53:37,693.693 INFO    ] Launching Daemon at Sat Jun 13 15:53:37 IST 2026
[2026-06-13 15:53:37,705.705 INFO    ] ================================================
[2026-06-13 15:53:38,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:53:38
[2026-06-13 15:53:38,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:53:38,588.588 INFO    ] Initializing speech engine...
[2026-06-13 15:53:38,592.592 INFO    ] 2026-06-13 15:53:38
[2026-06-13 15:53:38,794.794 INFO    ] 2026-06-13 15:53:38
[2026-06-13 15:53:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:53:39,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:53:39,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:53:39,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:53:39,204.204 INFO    ] time= 13/06/2026 15:53:39
[2026-06-13 15:53:39,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:53:39,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:53:39,307.307 INFO    ] No existing commands found in stream
[2026-06-13 15:53:44,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:53:44,321.321 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 15:53:47,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:53:47,626.626 INFO    ] Checking for system updates...
[2026-06-13 15:53:47,647.647 INFO    ] 200
[2026-06-13 15:53:47,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:47,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:47,681.681 INFO    ] No update needed
[2026-06-13 15:53:47,683.683 INFO    ] Checking for camera pi updates...
[2026-06-13 15:53:47,704.704 INFO    ] 200
[2026-06-13 15:53:47,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:47,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:53:47,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:47,873.873 INFO    ] No camera update needed
[2026-06-13 15:53:47,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:53:47,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:53:47,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:53:47,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:53:49,920.920 INFO    ] ================================================
[2026-06-13 15:53:49,936.936 INFO    ] Launching Daemon at Sat Jun 13 15:53:49 IST 2026
[2026-06-13 15:53:49,947.947 INFO    ] ================================================
[2026-06-13 15:53:50,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:53:50
[2026-06-13 15:53:50,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:53:50,774.774 INFO    ] Initializing speech engine...
[2026-06-13 15:53:50,788.788 INFO    ] 2026-06-13 15:53:50
[2026-06-13 15:53:51,020.020 INFO    ] 2026-06-13 15:53:50
[2026-06-13 15:53:51,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:53:51,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:53:51,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:53:51,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:53:51,510.510 INFO    ] time= 13/06/2026 15:53:51
[2026-06-13 15:53:51,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:53:51,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:53:51,745.745 INFO    ] No existing commands found in stream
[2026-06-13 15:53:56,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:53:56,774.774 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 15:53:58,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:53:58,316.316 INFO    ] Checking for system updates...
[2026-06-13 15:53:58,337.337 INFO    ] 200
[2026-06-13 15:53:58,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:58,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:58,374.374 INFO    ] No update needed
[2026-06-13 15:53:58,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 15:53:58,396.396 INFO    ] 200
[2026-06-13 15:53:58,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:53:58,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:53:58,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:53:58,459.459 INFO    ] No camera update needed
[2026-06-13 15:53:58,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:53:58,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:53:58,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:53:58,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:00,506.506 INFO    ] ================================================
[2026-06-13 15:54:00,521.521 INFO    ] Launching Daemon at Sat Jun 13 15:54:00 IST 2026
[2026-06-13 15:54:00,532.532 INFO    ] ================================================
[2026-06-13 15:54:00,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:00
[2026-06-13 15:54:01,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:01,353.353 INFO    ] Initializing speech engine...
[2026-06-13 15:54:01,369.369 INFO    ] 2026-06-13 15:54:01
[2026-06-13 15:54:01,724.724 INFO    ] 2026-06-13 15:54:01
[2026-06-13 15:54:01,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:02,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:02,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:02,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:02,239.239 INFO    ] time= 13/06/2026 15:54:02
[2026-06-13 15:54:02,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:02,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:02,418.418 INFO    ] No existing commands found in stream
[2026-06-13 15:54:07,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:54:07,434.434 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 15:54:08,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:54:08,806.806 INFO    ] Checking for system updates...
[2026-06-13 15:54:08,827.827 INFO    ] 200
[2026-06-13 15:54:08,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:08,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:08,861.861 INFO    ] No update needed
[2026-06-13 15:54:08,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 15:54:08,882.882 INFO    ] 200
[2026-06-13 15:54:08,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:08,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:54:08,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:08,947.947 INFO    ] No camera update needed
[2026-06-13 15:54:08,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:54:08,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:54:08,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:54:08,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:10,994.994 INFO    ] ================================================
[2026-06-13 15:54:11,009.009 INFO    ] Launching Daemon at Sat Jun 13 15:54:11 IST 2026
[2026-06-13 15:54:11,020.020 INFO    ] ================================================
[2026-06-13 15:54:11,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:11
[2026-06-13 15:54:11,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:11,864.864 INFO    ] Initializing speech engine...
[2026-06-13 15:54:11,869.869 INFO    ] 2026-06-13 15:54:11
[2026-06-13 15:54:12,077.077 INFO    ] 2026-06-13 15:54:12
[2026-06-13 15:54:12,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:12,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:12,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:12,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:12,496.496 INFO    ] time= 13/06/2026 15:54:12
[2026-06-13 15:54:12,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:12,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:12,591.591 INFO    ] No existing commands found in stream
[2026-06-13 15:54:17,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:54:17,606.606 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 15:54:19,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:54:19,269.269 INFO    ] Checking for system updates...
[2026-06-13 15:54:19,291.291 INFO    ] 200
[2026-06-13 15:54:19,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:19,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:19,327.327 INFO    ] No update needed
[2026-06-13 15:54:19,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 15:54:19,349.349 INFO    ] 200
[2026-06-13 15:54:19,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:19,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:54:19,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:19,411.411 INFO    ] No camera update needed
[2026-06-13 15:54:19,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:54:19,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:54:19,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:54:19,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:21,460.460 INFO    ] ================================================
[2026-06-13 15:54:21,476.476 INFO    ] Launching Daemon at Sat Jun 13 15:54:21 IST 2026
[2026-06-13 15:54:21,488.488 INFO    ] ================================================
[2026-06-13 15:54:21,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:21
[2026-06-13 15:54:22,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:22,715.715 INFO    ] Initializing speech engine...
[2026-06-13 15:54:22,728.728 INFO    ] 2026-06-13 15:54:22
[2026-06-13 15:54:23,043.043 INFO    ] 2026-06-13 15:54:23
[2026-06-13 15:54:23,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:23,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:23,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:23,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:23,477.477 INFO    ] time= 13/06/2026 15:54:23
[2026-06-13 15:54:23,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:23,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:23,645.645 INFO    ] No existing commands found in stream
[2026-06-13 15:54:28,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:54:28,661.661 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 15:54:29,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:54:29,023.023 INFO    ] Checking for system updates...
[2026-06-13 15:54:29,044.044 INFO    ] 200
[2026-06-13 15:54:29,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:29,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:29,078.078 INFO    ] No update needed
[2026-06-13 15:54:29,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 15:54:29,103.103 INFO    ] 200
[2026-06-13 15:54:29,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:29,129.129 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:54:29,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:29,174.174 INFO    ] No camera update needed
[2026-06-13 15:54:29,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:54:29,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:54:29,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:54:29,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:31,221.221 INFO    ] ================================================
[2026-06-13 15:54:31,237.237 INFO    ] Launching Daemon at Sat Jun 13 15:54:31 IST 2026
[2026-06-13 15:54:31,247.247 INFO    ] ================================================
[2026-06-13 15:54:31,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:31
[2026-06-13 15:54:31,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:32,138.138 INFO    ] Initializing speech engine...
[2026-06-13 15:54:32,142.142 INFO    ] 2026-06-13 15:54:32
[2026-06-13 15:54:32,345.345 INFO    ] 2026-06-13 15:54:32
[2026-06-13 15:54:32,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:32,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:32,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:32,738.738 INFO    ] time= 13/06/2026 15:54:32
[2026-06-13 15:54:32,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:32,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:32,859.859 INFO    ] No existing commands found in stream
[2026-06-13 15:54:37,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:54:37,871.871 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 15:54:42,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:54:42,123.123 INFO    ] Checking for system updates...
[2026-06-13 15:54:42,144.144 INFO    ] 200
[2026-06-13 15:54:42,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:42,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:42,182.182 INFO    ] No update needed
[2026-06-13 15:54:42,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 15:54:42,204.204 INFO    ] 200
[2026-06-13 15:54:42,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:42,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:54:42,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:42,268.268 INFO    ] No camera update needed
[2026-06-13 15:54:42,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:54:42,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:54:42,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:54:42,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:44,314.314 INFO    ] ================================================
[2026-06-13 15:54:44,330.330 INFO    ] Launching Daemon at Sat Jun 13 15:54:44 IST 2026
[2026-06-13 15:54:44,341.341 INFO    ] ================================================
[2026-06-13 15:54:44,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:44
[2026-06-13 15:54:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:45,164.164 INFO    ] Initializing speech engine...
[2026-06-13 15:54:45,170.170 INFO    ] 2026-06-13 15:54:45
[2026-06-13 15:54:45,374.374 INFO    ] 2026-06-13 15:54:45
[2026-06-13 15:54:45,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:45,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:45,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:45,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:45,796.796 INFO    ] time= 13/06/2026 15:54:45
[2026-06-13 15:54:45,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:45,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:45,897.897 INFO    ] No existing commands found in stream
[2026-06-13 15:54:50,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:54:50,910.910 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 15:54:55,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:54:55,153.153 INFO    ] Checking for system updates...
[2026-06-13 15:54:55,175.175 INFO    ] 200
[2026-06-13 15:54:55,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:55,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:55,209.209 INFO    ] No update needed
[2026-06-13 15:54:55,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 15:54:55,230.230 INFO    ] 200
[2026-06-13 15:54:55,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:54:55,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:54:55,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:54:55,302.302 INFO    ] No camera update needed
[2026-06-13 15:54:55,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:54:55,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:54:55,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:54:55,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:54:57,347.347 INFO    ] ================================================
[2026-06-13 15:54:57,363.363 INFO    ] Launching Daemon at Sat Jun 13 15:54:57 IST 2026
[2026-06-13 15:54:57,373.373 INFO    ] ================================================
[2026-06-13 15:54:57,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:54:57
[2026-06-13 15:54:58,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:54:58,176.176 INFO    ] Initializing speech engine...
[2026-06-13 15:54:58,185.185 INFO    ] 2026-06-13 15:54:58
[2026-06-13 15:54:58,390.390 INFO    ] 2026-06-13 15:54:58
[2026-06-13 15:54:58,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:54:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:54:58,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:54:58,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:54:58,776.776 INFO    ] time= 13/06/2026 15:54:58
[2026-06-13 15:54:58,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:54:58,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:54:58,922.922 INFO    ] No existing commands found in stream
[2026-06-13 15:55:03,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:55:03,946.946 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 15:55:05,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:55:05,276.276 INFO    ] Checking for system updates...
[2026-06-13 15:55:05,298.298 INFO    ] 200
[2026-06-13 15:55:05,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:05,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:55:05,332.332 INFO    ] No update needed
[2026-06-13 15:55:05,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 15:55:05,354.354 INFO    ] 200
[2026-06-13 15:55:05,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:05,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:55:05,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:55:05,421.421 INFO    ] No camera update needed
[2026-06-13 15:55:05,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:55:05,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:55:05,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:55:05,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:55:07,469.469 INFO    ] ================================================
[2026-06-13 15:55:07,484.484 INFO    ] Launching Daemon at Sat Jun 13 15:55:07 IST 2026
[2026-06-13 15:55:07,494.494 INFO    ] ================================================
[2026-06-13 15:55:07,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:55:07
[2026-06-13 15:55:08,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:55:08,277.277 INFO    ] Initializing speech engine...
[2026-06-13 15:55:08,289.289 INFO    ] 2026-06-13 15:55:08
[2026-06-13 15:55:08,496.496 INFO    ] 2026-06-13 15:55:08
[2026-06-13 15:55:08,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:55:08,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:55:08,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:55:08,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:55:08,913.913 INFO    ] time= 13/06/2026 15:55:08
[2026-06-13 15:55:08,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:55:08,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:55:09,011.011 INFO    ] No existing commands found in stream
[2026-06-13 15:55:14,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:55:14,025.025 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 15:55:18,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:55:18,191.191 INFO    ] Checking for system updates...
[2026-06-13 15:55:18,212.212 INFO    ] 200
[2026-06-13 15:55:18,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:18,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:55:18,247.247 INFO    ] No update needed
[2026-06-13 15:55:18,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 15:55:18,269.269 INFO    ] 200
[2026-06-13 15:55:18,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:18,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:55:18,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:55:18,320.320 INFO    ] No camera update needed
[2026-06-13 15:55:18,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:55:18,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:55:18,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:55:18,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:55:20,368.368 INFO    ] ================================================
[2026-06-13 15:55:20,384.384 INFO    ] Launching Daemon at Sat Jun 13 15:55:20 IST 2026
[2026-06-13 15:55:20,394.394 INFO    ] ================================================
[2026-06-13 15:55:20,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:55:20
[2026-06-13 15:55:21,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:55:21,423.423 INFO    ] Initializing speech engine...
[2026-06-13 15:55:21,432.432 INFO    ] 2026-06-13 15:55:21
[2026-06-13 15:55:21,706.706 INFO    ] 2026-06-13 15:55:21
[2026-06-13 15:55:21,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:55:21,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:55:21,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:55:22,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:55:22,066.066 INFO    ] time= 13/06/2026 15:55:22
[2026-06-13 15:55:22,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:55:22,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:55:22,175.175 INFO    ] No existing commands found in stream
[2026-06-13 15:55:27,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:55:27,190.190 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 15:55:29,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:55:29,503.503 INFO    ] Checking for system updates...
[2026-06-13 15:55:29,525.525 INFO    ] 200
[2026-06-13 15:55:29,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:29,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:55:29,561.561 INFO    ] No update needed
[2026-06-13 15:55:29,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 15:55:29,582.582 INFO    ] 200
[2026-06-13 15:55:29,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:29,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:55:29,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:55:29,644.644 INFO    ] No camera update needed
[2026-06-13 15:55:29,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:55:29,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:55:29,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:55:29,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:55:31,684.684 INFO    ] ================================================
[2026-06-13 15:55:31,693.693 INFO    ] Launching Daemon at Sat Jun 13 15:55:31 IST 2026
[2026-06-13 15:55:31,700.700 INFO    ] ================================================
[2026-06-13 15:55:32,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:55:32
[2026-06-13 15:55:32,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:55:32,862.862 INFO    ] Initializing speech engine...
[2026-06-13 15:55:32,873.873 INFO    ] 2026-06-13 15:55:32
[2026-06-13 15:55:33,114.114 INFO    ] 2026-06-13 15:55:33
[2026-06-13 15:55:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:55:33,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:55:33,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:55:33,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:55:33,554.554 INFO    ] time= 13/06/2026 15:55:33
[2026-06-13 15:55:33,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:55:33,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:55:33,801.801 INFO    ] No existing commands found in stream
[2026-06-13 15:55:38,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:55:38,836.836 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 15:55:42,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 15:55:42,225.225 INFO    ] Checking for system updates...
[2026-06-13 15:55:42,247.247 INFO    ] 200
[2026-06-13 15:55:42,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:42,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:55:42,283.283 INFO    ] No update needed
[2026-06-13 15:55:42,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 15:55:42,303.303 INFO    ] 200
[2026-06-13 15:55:42,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:42,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:55:42,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:55:42,368.368 INFO    ] No camera update needed
[2026-06-13 15:55:42,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:55:42,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:55:42,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:55:42,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:55:44,415.415 INFO    ] ================================================
[2026-06-13 15:55:44,430.430 INFO    ] Launching Daemon at Sat Jun 13 15:55:44 IST 2026
[2026-06-13 15:55:44,441.441 INFO    ] ================================================
[2026-06-13 15:55:44,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:55:44
[2026-06-13 15:55:45,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:55:45,256.256 INFO    ] Initializing speech engine...
[2026-06-13 15:55:45,261.261 INFO    ] 2026-06-13 15:55:45
[2026-06-13 15:55:45,466.466 INFO    ] 2026-06-13 15:55:45
[2026-06-13 15:55:45,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:55:45,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:55:45,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:55:45,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:55:45,866.866 INFO    ] time= 13/06/2026 15:55:45
[2026-06-13 15:55:45,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:55:45,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:55:45,980.980 INFO    ] No existing commands found in stream
[2026-06-13 15:55:50,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:55:50,992.992 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 15:55:53,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:55:53,681.681 INFO    ] Checking for system updates...
[2026-06-13 15:55:53,703.703 INFO    ] 200
[2026-06-13 15:55:53,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:53,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:55:53,736.736 INFO    ] No update needed
[2026-06-13 15:55:53,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 15:55:53,759.759 INFO    ] 200
[2026-06-13 15:55:53,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:55:53,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:55:53,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:55:53,935.935 INFO    ] No camera update needed
[2026-06-13 15:55:53,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:55:53,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:55:53,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:55:53,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:55:55,985.985 INFO    ] ================================================
[2026-06-13 15:55:56,000.000 INFO    ] Launching Daemon at Sat Jun 13 15:55:55 IST 2026
[2026-06-13 15:55:56,011.011 INFO    ] ================================================
[2026-06-13 15:55:56,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:55:56
[2026-06-13 15:55:56,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:55:56,806.806 INFO    ] Initializing speech engine...
[2026-06-13 15:55:56,816.816 INFO    ] 2026-06-13 15:55:56
[2026-06-13 15:55:57,020.020 INFO    ] 2026-06-13 15:55:57
[2026-06-13 15:55:57,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:55:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:55:57,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:55:57,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:55:57,419.419 INFO    ] time= 13/06/2026 15:55:57
[2026-06-13 15:55:57,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:55:57,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:55:57,534.534 INFO    ] No existing commands found in stream
[2026-06-13 15:56:02,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:02,543.543 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 15:56:04,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:56:04,895.895 INFO    ] Checking for system updates...
[2026-06-13 15:56:04,917.917 INFO    ] 200
[2026-06-13 15:56:04,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:04,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:04,953.953 INFO    ] No update needed
[2026-06-13 15:56:04,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 15:56:04,975.975 INFO    ] 200
[2026-06-13 15:56:04,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:05,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:56:05,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:05,045.045 INFO    ] No camera update needed
[2026-06-13 15:56:05,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:56:05,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:56:05,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:56:05,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:56:07,094.094 INFO    ] ================================================
[2026-06-13 15:56:07,108.108 INFO    ] Launching Daemon at Sat Jun 13 15:56:07 IST 2026
[2026-06-13 15:56:07,120.120 INFO    ] ================================================
[2026-06-13 15:56:07,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:56:07
[2026-06-13 15:56:07,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:56:07,941.941 INFO    ] Initializing speech engine...
[2026-06-13 15:56:07,946.946 INFO    ] 2026-06-13 15:56:07
[2026-06-13 15:56:08,159.159 INFO    ] 2026-06-13 15:56:08
[2026-06-13 15:56:08,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:56:08,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:56:08,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:56:08,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:56:08,576.576 INFO    ] time= 13/06/2026 15:56:08
[2026-06-13 15:56:08,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:56:08,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:56:08,682.682 INFO    ] No existing commands found in stream
[2026-06-13 15:56:13,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:13,696.696 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 15:56:17,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:56:17,671.671 INFO    ] Checking for system updates...
[2026-06-13 15:56:17,693.693 INFO    ] 200
[2026-06-13 15:56:17,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:17,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:17,729.729 INFO    ] No update needed
[2026-06-13 15:56:17,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 15:56:17,751.751 INFO    ] 200
[2026-06-13 15:56:17,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:17,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:56:17,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:17,817.817 INFO    ] No camera update needed
[2026-06-13 15:56:17,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:56:17,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:56:17,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:56:17,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:56:19,864.864 INFO    ] ================================================
[2026-06-13 15:56:19,880.880 INFO    ] Launching Daemon at Sat Jun 13 15:56:19 IST 2026
[2026-06-13 15:56:19,891.891 INFO    ] ================================================
[2026-06-13 15:56:20,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:56:20
[2026-06-13 15:56:20,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:56:20,696.696 INFO    ] Initializing speech engine...
[2026-06-13 15:56:20,701.701 INFO    ] 2026-06-13 15:56:20
[2026-06-13 15:56:20,905.905 INFO    ] 2026-06-13 15:56:20
[2026-06-13 15:56:20,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:56:21,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:56:21,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:56:21,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:56:21,320.320 INFO    ] time= 13/06/2026 15:56:21
[2026-06-13 15:56:21,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:56:21,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:56:21,424.424 INFO    ] No existing commands found in stream
[2026-06-13 15:56:26,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:26,437.437 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 15:56:27,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:56:27,250.250 INFO    ] Checking for system updates...
[2026-06-13 15:56:27,270.270 INFO    ] 200
[2026-06-13 15:56:27,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:27,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:56:27,308.308 INFO    ] No update needed
[2026-06-13 15:56:27,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 15:56:27,330.330 INFO    ] 200
[2026-06-13 15:56:27,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:27,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:56:27,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:56:27,398.398 INFO    ] No camera update needed
[2026-06-13 15:56:27,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:56:27,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:56:27,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:56:27,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:56:29,448.448 INFO    ] ================================================
[2026-06-13 15:56:29,463.463 INFO    ] Launching Daemon at Sat Jun 13 15:56:29 IST 2026
[2026-06-13 15:56:29,473.473 INFO    ] ================================================
[2026-06-13 15:56:29,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:56:29
[2026-06-13 15:56:30,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:56:30,252.252 INFO    ] Initializing speech engine...
[2026-06-13 15:56:30,256.256 INFO    ] 2026-06-13 15:56:30
[2026-06-13 15:56:30,474.474 INFO    ] 2026-06-13 15:56:30
[2026-06-13 15:56:30,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:56:30,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:56:30,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:56:30,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:56:30,879.879 INFO    ] time= 13/06/2026 15:56:30
[2026-06-13 15:56:30,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:56:30,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:56:30,997.997 INFO    ] No existing commands found in stream
[2026-06-13 15:56:36,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:36,009.009 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 15:56:38,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:56:38,506.506 INFO    ] Checking for system updates...
[2026-06-13 15:56:38,528.528 INFO    ] 200
[2026-06-13 15:56:38,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:38,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:56:38,563.563 INFO    ] No update needed
[2026-06-13 15:56:38,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 15:56:38,585.585 INFO    ] 200
[2026-06-13 15:56:38,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:38,612.612 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:56:38,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:56:38,653.653 INFO    ] No camera update needed
[2026-06-13 15:56:38,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:56:38,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:56:38,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:56:38,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:56:40,699.699 INFO    ] ================================================
[2026-06-13 15:56:40,714.714 INFO    ] Launching Daemon at Sat Jun 13 15:56:40 IST 2026
[2026-06-13 15:56:40,724.724 INFO    ] ================================================
[2026-06-13 15:56:41,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:56:41
[2026-06-13 15:56:41,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:56:41,521.521 INFO    ] Initializing speech engine...
[2026-06-13 15:56:41,526.526 INFO    ] 2026-06-13 15:56:41
[2026-06-13 15:56:41,729.729 INFO    ] 2026-06-13 15:56:41
[2026-06-13 15:56:41,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:56:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:56:41,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:56:42,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:56:42,133.133 INFO    ] time= 13/06/2026 15:56:42
[2026-06-13 15:56:42,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:56:42,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:56:42,241.241 INFO    ] No existing commands found in stream
[2026-06-13 15:56:47,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:47,255.255 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 15:56:49,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:56:49,615.615 INFO    ] Checking for system updates...
[2026-06-13 15:56:49,637.637 INFO    ] 200
[2026-06-13 15:56:49,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:49,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:49,673.673 INFO    ] No update needed
[2026-06-13 15:56:49,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 15:56:49,695.695 INFO    ] 200
[2026-06-13 15:56:49,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:56:49,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:56:49,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:56:49,760.760 INFO    ] No camera update needed
[2026-06-13 15:56:49,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:56:49,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:56:49,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:56:49,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:56:51,806.806 INFO    ] ================================================
[2026-06-13 15:56:51,821.821 INFO    ] Launching Daemon at Sat Jun 13 15:56:51 IST 2026
[2026-06-13 15:56:51,832.832 INFO    ] ================================================
[2026-06-13 15:56:52,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:56:52
[2026-06-13 15:56:52,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:56:52,639.639 INFO    ] Initializing speech engine...
[2026-06-13 15:56:52,654.654 INFO    ] 2026-06-13 15:56:52
[2026-06-13 15:56:52,857.857 INFO    ] 2026-06-13 15:56:52
[2026-06-13 15:56:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:56:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:56:53,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:56:53,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:56:53,259.259 INFO    ] time= 13/06/2026 15:56:53
[2026-06-13 15:56:53,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:56:53,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:56:53,374.374 INFO    ] No existing commands found in stream
[2026-06-13 15:56:58,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:56:58,396.396 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 15:57:00,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:57:00,821.821 INFO    ] Checking for system updates...
[2026-06-13 15:57:00,842.842 INFO    ] 200
[2026-06-13 15:57:00,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:00,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:00,877.877 INFO    ] No update needed
[2026-06-13 15:57:00,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 15:57:00,900.900 INFO    ] 200
[2026-06-13 15:57:00,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:00,925.925 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:57:00,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:00,962.962 INFO    ] No camera update needed
[2026-06-13 15:57:00,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:57:00,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:57:00,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:57:00,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:57:03,048.048 INFO    ] ================================================
[2026-06-13 15:57:03,066.066 INFO    ] Launching Daemon at Sat Jun 13 15:57:03 IST 2026
[2026-06-13 15:57:03,082.082 INFO    ] ================================================
[2026-06-13 15:57:03,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:57:03
[2026-06-13 15:57:04,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:57:04,761.761 INFO    ] Initializing speech engine...
[2026-06-13 15:57:04,767.767 INFO    ] 2026-06-13 15:57:04
[2026-06-13 15:57:05,039.039 INFO    ] 2026-06-13 15:57:05
[2026-06-13 15:57:05,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:57:05,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:57:05,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:57:05,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:57:05,520.520 INFO    ] time= 13/06/2026 15:57:05
[2026-06-13 15:57:05,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:57:05,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:57:05,625.625 INFO    ] No existing commands found in stream
[2026-06-13 15:57:10,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:57:10,663.663 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 15:57:14,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:57:14,004.004 INFO    ] Checking for system updates...
[2026-06-13 15:57:14,026.026 INFO    ] 200
[2026-06-13 15:57:14,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:14,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:57:14,064.064 INFO    ] No update needed
[2026-06-13 15:57:14,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 15:57:14,089.089 INFO    ] 200
[2026-06-13 15:57:14,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:14,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:57:14,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:57:14,152.152 INFO    ] No camera update needed
[2026-06-13 15:57:14,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:57:14,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:57:14,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:57:14,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:57:16,199.199 INFO    ] ================================================
[2026-06-13 15:57:16,214.214 INFO    ] Launching Daemon at Sat Jun 13 15:57:16 IST 2026
[2026-06-13 15:57:16,225.225 INFO    ] ================================================
[2026-06-13 15:57:16,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:57:16
[2026-06-13 15:57:16,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:57:17,063.063 INFO    ] Initializing speech engine...
[2026-06-13 15:57:17,068.068 INFO    ] 2026-06-13 15:57:17
[2026-06-13 15:57:17,276.276 INFO    ] 2026-06-13 15:57:17
[2026-06-13 15:57:17,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:57:17,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:57:17,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:57:17,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:57:17,693.693 INFO    ] time= 13/06/2026 15:57:17
[2026-06-13 15:57:17,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:57:17,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:57:17,792.792 INFO    ] No existing commands found in stream
[2026-06-13 15:57:22,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:57:22,820.820 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 15:57:24,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:57:24,683.683 INFO    ] Checking for system updates...
[2026-06-13 15:57:24,705.705 INFO    ] 200
[2026-06-13 15:57:24,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:24,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:57:24,744.744 INFO    ] No update needed
[2026-06-13 15:57:24,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 15:57:24,767.767 INFO    ] 200
[2026-06-13 15:57:24,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:24,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:57:24,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:24,847.847 INFO    ] No camera update needed
[2026-06-13 15:57:24,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:57:24,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:57:24,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:57:24,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:57:26,896.896 INFO    ] ================================================
[2026-06-13 15:57:26,913.913 INFO    ] Launching Daemon at Sat Jun 13 15:57:26 IST 2026
[2026-06-13 15:57:26,924.924 INFO    ] ================================================
[2026-06-13 15:57:27,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:57:27
[2026-06-13 15:57:27,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:57:27,749.749 INFO    ] Initializing speech engine...
[2026-06-13 15:57:27,754.754 INFO    ] 2026-06-13 15:57:27
[2026-06-13 15:57:27,961.961 INFO    ] 2026-06-13 15:57:27
[2026-06-13 15:57:27,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:57:28,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:57:28,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:57:28,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:57:28,374.374 INFO    ] time= 13/06/2026 15:57:28
[2026-06-13 15:57:28,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:57:28,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:57:28,482.482 INFO    ] No existing commands found in stream
[2026-06-13 15:57:33,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:57:33,491.491 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 15:57:35,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:57:35,608.608 INFO    ] Checking for system updates...
[2026-06-13 15:57:35,628.628 INFO    ] 200
[2026-06-13 15:57:35,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:35,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:35,664.664 INFO    ] No update needed
[2026-06-13 15:57:35,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 15:57:35,684.684 INFO    ] 200
[2026-06-13 15:57:35,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:35,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:57:35,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:35,749.749 INFO    ] No camera update needed
[2026-06-13 15:57:35,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:57:35,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:57:35,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:57:35,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:57:37,797.797 INFO    ] ================================================
[2026-06-13 15:57:37,812.812 INFO    ] Launching Daemon at Sat Jun 13 15:57:37 IST 2026
[2026-06-13 15:57:37,824.824 INFO    ] ================================================
[2026-06-13 15:57:38,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:57:38
[2026-06-13 15:57:38,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:57:38,621.621 INFO    ] Initializing speech engine...
[2026-06-13 15:57:38,626.626 INFO    ] 2026-06-13 15:57:38
[2026-06-13 15:57:38,830.830 INFO    ] 2026-06-13 15:57:38
[2026-06-13 15:57:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:57:39,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:57:39,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:57:39,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:57:39,233.233 INFO    ] time= 13/06/2026 15:57:39
[2026-06-13 15:57:39,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:57:39,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:57:39,342.342 INFO    ] No existing commands found in stream
[2026-06-13 15:57:44,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:57:44,355.355 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 15:57:48,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:57:48,586.586 INFO    ] Checking for system updates...
[2026-06-13 15:57:48,608.608 INFO    ] 200
[2026-06-13 15:57:48,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:48,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:48,644.644 INFO    ] No update needed
[2026-06-13 15:57:48,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 15:57:48,665.665 INFO    ] 200
[2026-06-13 15:57:48,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:57:48,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:57:48,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:57:48,729.729 INFO    ] No camera update needed
[2026-06-13 15:57:48,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:57:48,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:57:48,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:57:48,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:57:50,777.777 INFO    ] ================================================
[2026-06-13 15:57:50,793.793 INFO    ] Launching Daemon at Sat Jun 13 15:57:50 IST 2026
[2026-06-13 15:57:50,804.804 INFO    ] ================================================
[2026-06-13 15:57:51,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:57:51
[2026-06-13 15:57:51,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:57:51,584.584 INFO    ] Initializing speech engine...
[2026-06-13 15:57:51,590.590 INFO    ] 2026-06-13 15:57:51
[2026-06-13 15:57:51,792.792 INFO    ] 2026-06-13 15:57:51
[2026-06-13 15:57:51,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:57:52,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:57:52,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:57:52,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:57:52,190.190 INFO    ] time= 13/06/2026 15:57:52
[2026-06-13 15:57:52,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:57:52,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:57:52,305.305 INFO    ] No existing commands found in stream
[2026-06-13 15:57:57,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:57:57,317.317 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 15:58:00,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:58:00,741.741 INFO    ] Checking for system updates...
[2026-06-13 15:58:00,762.762 INFO    ] 200
[2026-06-13 15:58:00,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:00,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:58:00,796.796 INFO    ] No update needed
[2026-06-13 15:58:00,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:00,817.817 INFO    ] 200
[2026-06-13 15:58:00,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:00,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:00,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:00,990.990 INFO    ] No camera update needed
[2026-06-13 15:58:00,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:00,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:00,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:00,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:58:03,025.025 INFO    ] ================================================
[2026-06-13 15:58:03,034.034 INFO    ] Launching Daemon at Sat Jun 13 15:58:03 IST 2026
[2026-06-13 15:58:03,040.040 INFO    ] ================================================
[2026-06-13 15:58:03,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:58:03
[2026-06-13 15:58:03,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:58:03,854.854 INFO    ] Initializing speech engine...
[2026-06-13 15:58:03,859.859 INFO    ] 2026-06-13 15:58:03
[2026-06-13 15:58:04,066.066 INFO    ] 2026-06-13 15:58:04
[2026-06-13 15:58:04,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:58:04,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:58:04,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:58:04,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:58:04,451.451 INFO    ] time= 13/06/2026 15:58:04
[2026-06-13 15:58:04,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:58:04,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:58:04,596.596 INFO    ] No existing commands found in stream
[2026-06-13 15:58:09,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:58:09,619.619 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 15:58:13,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:58:13,692.692 INFO    ] Checking for system updates...
[2026-06-13 15:58:13,714.714 INFO    ] 200
[2026-06-13 15:58:13,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:13,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:13,749.749 INFO    ] No update needed
[2026-06-13 15:58:13,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:13,770.770 INFO    ] 200
[2026-06-13 15:58:13,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:13,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:13,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:13,936.936 INFO    ] No camera update needed
[2026-06-13 15:58:13,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:13,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:13,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:13,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:58:15,985.985 INFO    ] ================================================
[2026-06-13 15:58:16,001.001 INFO    ] Launching Daemon at Sat Jun 13 15:58:15 IST 2026
[2026-06-13 15:58:16,013.013 INFO    ] ================================================
[2026-06-13 15:58:16,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:58:16
[2026-06-13 15:58:16,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:58:16,818.818 INFO    ] Initializing speech engine...
[2026-06-13 15:58:16,823.823 INFO    ] 2026-06-13 15:58:16
[2026-06-13 15:58:17,029.029 INFO    ] 2026-06-13 15:58:17
[2026-06-13 15:58:17,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:58:17,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:58:17,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:58:17,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:58:17,455.455 INFO    ] time= 13/06/2026 15:58:17
[2026-06-13 15:58:17,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:58:17,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:58:17,552.552 INFO    ] No existing commands found in stream
[2026-06-13 15:58:22,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:58:22,565.565 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 15:58:25,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 15:58:25,102.102 INFO    ] Checking for system updates...
[2026-06-13 15:58:25,124.124 INFO    ] 200
[2026-06-13 15:58:25,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:25,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:25,160.160 INFO    ] No update needed
[2026-06-13 15:58:25,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:25,182.182 INFO    ] 200
[2026-06-13 15:58:25,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:25,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:25,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:25,255.255 INFO    ] No camera update needed
[2026-06-13 15:58:25,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:25,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:25,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:25,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:58:27,302.302 INFO    ] ================================================
[2026-06-13 15:58:27,319.319 INFO    ] Launching Daemon at Sat Jun 13 15:58:27 IST 2026
[2026-06-13 15:58:27,331.331 INFO    ] ================================================
[2026-06-13 15:58:27,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:58:27
[2026-06-13 15:58:27,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:58:28,118.118 INFO    ] Initializing speech engine...
[2026-06-13 15:58:28,130.130 INFO    ] 2026-06-13 15:58:28
[2026-06-13 15:58:28,335.335 INFO    ] 2026-06-13 15:58:28
[2026-06-13 15:58:28,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:58:28,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:58:28,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:58:28,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:58:28,746.746 INFO    ] time= 13/06/2026 15:58:28
[2026-06-13 15:58:28,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:58:28,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:58:28,851.851 INFO    ] No existing commands found in stream
[2026-06-13 15:58:33,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:58:33,868.868 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 15:58:35,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:58:35,551.551 INFO    ] Checking for system updates...
[2026-06-13 15:58:35,572.572 INFO    ] 200
[2026-06-13 15:58:35,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:35,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:35,605.605 INFO    ] No update needed
[2026-06-13 15:58:35,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:35,626.626 INFO    ] 200
[2026-06-13 15:58:35,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:35,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:35,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:58:35,687.687 INFO    ] No camera update needed
[2026-06-13 15:58:35,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:35,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:35,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:35,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:58:37,736.736 INFO    ] ================================================
[2026-06-13 15:58:37,753.753 INFO    ] Launching Daemon at Sat Jun 13 15:58:37 IST 2026
[2026-06-13 15:58:37,764.764 INFO    ] ================================================
[2026-06-13 15:58:38,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:58:38
[2026-06-13 15:58:38,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:58:38,560.560 INFO    ] Initializing speech engine...
[2026-06-13 15:58:38,571.571 INFO    ] 2026-06-13 15:58:38
[2026-06-13 15:58:38,779.779 INFO    ] 2026-06-13 15:58:38
[2026-06-13 15:58:38,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:58:38,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:58:39,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:58:39,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:58:39,177.177 INFO    ] time= 13/06/2026 15:58:39
[2026-06-13 15:58:39,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:58:39,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:58:39,298.298 INFO    ] No existing commands found in stream
[2026-06-13 15:58:44,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:58:44,321.321 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 15:58:48,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:58:48,196.196 INFO    ] Checking for system updates...
[2026-06-13 15:58:48,217.217 INFO    ] 200
[2026-06-13 15:58:48,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:48,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:58:48,253.253 INFO    ] No update needed
[2026-06-13 15:58:48,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:48,279.279 INFO    ] 200
[2026-06-13 15:58:48,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:48,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:48,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:58:48,343.343 INFO    ] No camera update needed
[2026-06-13 15:58:48,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:48,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:48,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:48,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:58:50,390.390 INFO    ] ================================================
[2026-06-13 15:58:50,405.405 INFO    ] Launching Daemon at Sat Jun 13 15:58:50 IST 2026
[2026-06-13 15:58:50,415.415 INFO    ] ================================================
[2026-06-13 15:58:50,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:58:50
[2026-06-13 15:58:51,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:58:51,232.232 INFO    ] Initializing speech engine...
[2026-06-13 15:58:51,240.240 INFO    ] 2026-06-13 15:58:51
[2026-06-13 15:58:51,446.446 INFO    ] 2026-06-13 15:58:51
[2026-06-13 15:58:51,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:58:51,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:58:51,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:58:51,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:58:51,841.841 INFO    ] time= 13/06/2026 15:58:51
[2026-06-13 15:58:51,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:58:51,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:58:51,961.961 INFO    ] No existing commands found in stream
[2026-06-13 15:58:56,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:58:56,973.973 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 15:58:59,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:58:59,221.221 INFO    ] Checking for system updates...
[2026-06-13 15:58:59,242.242 INFO    ] 200
[2026-06-13 15:58:59,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:59,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:58:59,277.277 INFO    ] No update needed
[2026-06-13 15:58:59,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 15:58:59,299.299 INFO    ] 200
[2026-06-13 15:58:59,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:58:59,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:58:59,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:58:59,366.366 INFO    ] No camera update needed
[2026-06-13 15:58:59,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:58:59,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:58:59,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:58:59,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:01,414.414 INFO    ] ================================================
[2026-06-13 15:59:01,429.429 INFO    ] Launching Daemon at Sat Jun 13 15:59:01 IST 2026
[2026-06-13 15:59:01,440.440 INFO    ] ================================================
[2026-06-13 15:59:01,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:59:01
[2026-06-13 15:59:02,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:59:02,422.422 INFO    ] Initializing speech engine...
[2026-06-13 15:59:02,431.431 INFO    ] 2026-06-13 15:59:02
[2026-06-13 15:59:02,695.695 INFO    ] 2026-06-13 15:59:02
[2026-06-13 15:59:02,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:59:02,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:59:02,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:59:03,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:59:03,095.095 INFO    ] time= 13/06/2026 15:59:03
[2026-06-13 15:59:03,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:59:03,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:59:03,283.283 INFO    ] No existing commands found in stream
[2026-06-13 15:59:08,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:59:08,296.296 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 15:59:11,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 15:59:11,847.847 INFO    ] Checking for system updates...
[2026-06-13 15:59:11,868.868 INFO    ] 200
[2026-06-13 15:59:11,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:11,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:59:11,901.901 INFO    ] No update needed
[2026-06-13 15:59:11,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 15:59:11,921.921 INFO    ] 200
[2026-06-13 15:59:11,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:11,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:59:11,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 15:59:11,984.984 INFO    ] No camera update needed
[2026-06-13 15:59:11,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:59:11,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:59:11,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:59:11,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:14,032.032 INFO    ] ================================================
[2026-06-13 15:59:14,048.048 INFO    ] Launching Daemon at Sat Jun 13 15:59:14 IST 2026
[2026-06-13 15:59:14,060.060 INFO    ] ================================================
[2026-06-13 15:59:14,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:59:14
[2026-06-13 15:59:14,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:59:14,915.915 INFO    ] Initializing speech engine...
[2026-06-13 15:59:14,919.919 INFO    ] 2026-06-13 15:59:14
[2026-06-13 15:59:15,128.128 INFO    ] 2026-06-13 15:59:15
[2026-06-13 15:59:15,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:59:15,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:59:15,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:59:15,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:59:15,549.549 INFO    ] time= 13/06/2026 15:59:15
[2026-06-13 15:59:15,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:59:15,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:59:15,652.652 INFO    ] No existing commands found in stream
[2026-06-13 15:59:20,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:59:20,665.665 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 15:59:21,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 15:59:21,111.111 INFO    ] Checking for system updates...
[2026-06-13 15:59:21,134.134 INFO    ] 200
[2026-06-13 15:59:21,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:21,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:21,167.167 INFO    ] No update needed
[2026-06-13 15:59:21,168.168 INFO    ] Checking for camera pi updates...
[2026-06-13 15:59:21,188.188 INFO    ] 200
[2026-06-13 15:59:21,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:21,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:59:21,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:21,254.254 INFO    ] No camera update needed
[2026-06-13 15:59:21,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:59:21,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:59:21,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:59:21,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:23,300.300 INFO    ] ================================================
[2026-06-13 15:59:23,315.315 INFO    ] Launching Daemon at Sat Jun 13 15:59:23 IST 2026
[2026-06-13 15:59:23,326.326 INFO    ] ================================================
[2026-06-13 15:59:23,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:59:23
[2026-06-13 15:59:23,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:59:24,121.121 INFO    ] Initializing speech engine...
[2026-06-13 15:59:24,126.126 INFO    ] 2026-06-13 15:59:24
[2026-06-13 15:59:24,329.329 INFO    ] 2026-06-13 15:59:24
[2026-06-13 15:59:24,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:59:24,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:59:24,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:59:24,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:59:24,740.740 INFO    ] time= 13/06/2026 15:59:24
[2026-06-13 15:59:24,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:59:24,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:59:24,844.844 INFO    ] No existing commands found in stream
[2026-06-13 15:59:29,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:59:29,856.856 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 15:59:33,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:59:33,837.837 INFO    ] Checking for system updates...
[2026-06-13 15:59:33,861.861 INFO    ] 200
[2026-06-13 15:59:33,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:33,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:33,899.899 INFO    ] No update needed
[2026-06-13 15:59:33,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 15:59:33,921.921 INFO    ] 200
[2026-06-13 15:59:33,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:33,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:59:33,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:33,992.992 INFO    ] No camera update needed
[2026-06-13 15:59:33,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:59:33,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:59:33,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:59:34,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:36,041.041 INFO    ] ================================================
[2026-06-13 15:59:36,056.056 INFO    ] Launching Daemon at Sat Jun 13 15:59:36 IST 2026
[2026-06-13 15:59:36,067.067 INFO    ] ================================================
[2026-06-13 15:59:36,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:59:36
[2026-06-13 15:59:36,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:59:36,872.872 INFO    ] Initializing speech engine...
[2026-06-13 15:59:36,876.876 INFO    ] 2026-06-13 15:59:36
[2026-06-13 15:59:37,104.104 INFO    ] 2026-06-13 15:59:37
[2026-06-13 15:59:37,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:59:37,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:59:37,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:59:37,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:59:37,504.504 INFO    ] time= 13/06/2026 15:59:37
[2026-06-13 15:59:37,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:59:37,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:59:37,655.655 INFO    ] No existing commands found in stream
[2026-06-13 15:59:42,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:59:42,669.669 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 15:59:46,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 15:59:46,141.141 INFO    ] Checking for system updates...
[2026-06-13 15:59:46,162.162 INFO    ] 200
[2026-06-13 15:59:46,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:46,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:46,197.197 INFO    ] No update needed
[2026-06-13 15:59:46,199.199 INFO    ] Checking for camera pi updates...
[2026-06-13 15:59:46,220.220 INFO    ] 200
[2026-06-13 15:59:46,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:46,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:59:46,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:46,291.291 INFO    ] No camera update needed
[2026-06-13 15:59:46,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:59:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:59:46,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:59:46,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:48,342.342 INFO    ] ================================================
[2026-06-13 15:59:48,357.357 INFO    ] Launching Daemon at Sat Jun 13 15:59:48 IST 2026
[2026-06-13 15:59:48,367.367 INFO    ] ================================================
[2026-06-13 15:59:48,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 15:59:48
[2026-06-13 15:59:49,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 15:59:49,176.176 INFO    ] Initializing speech engine...
[2026-06-13 15:59:49,182.182 INFO    ] 2026-06-13 15:59:49
[2026-06-13 15:59:49,384.384 INFO    ] 2026-06-13 15:59:49
[2026-06-13 15:59:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 15:59:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 15:59:49,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 15:59:49,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 15:59:49,772.772 INFO    ] time= 13/06/2026 15:59:49
[2026-06-13 15:59:49,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 15:59:49,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 15:59:49,903.903 INFO    ] No existing commands found in stream
[2026-06-13 15:59:54,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 15:59:54,915.915 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 15:59:57,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 15:59:57,690.690 INFO    ] Checking for system updates...
[2026-06-13 15:59:57,711.711 INFO    ] 200
[2026-06-13 15:59:57,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:57,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:57,747.747 INFO    ] No update needed
[2026-06-13 15:59:57,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 15:59:57,769.769 INFO    ] 200
[2026-06-13 15:59:57,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 15:59:57,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 15:59:57,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 15:59:57,834.834 INFO    ] No camera update needed
[2026-06-13 15:59:57,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-13 15:59:57,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 15:59:57,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 15:59:57,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 15:59:59,882.882 INFO    ] ================================================
[2026-06-13 15:59:59,897.897 INFO    ] Launching Daemon at Sat Jun 13 15:59:59 IST 2026
[2026-06-13 15:59:59,908.908 INFO    ] ================================================
[2026-06-13 16:00:00,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:00
[2026-06-13 16:00:00,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:00,768.768 INFO    ] Initializing speech engine...
[2026-06-13 16:00:00,772.772 INFO    ] 2026-06-13 16:00:00
[2026-06-13 16:00:00,981.981 INFO    ] 2026-06-13 16:00:00
[2026-06-13 16:00:01,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:01,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:01,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:01,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:01,386.386 INFO    ] time= 13/06/2026 16:00:01
[2026-06-13 16:00:01,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:01,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:01,479.479 INFO    ] No existing commands found in stream
[2026-06-13 16:00:06,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:00:06,503.503 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 16:00:09,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:00:09,792.792 INFO    ] Checking for system updates...
[2026-06-13 16:00:09,828.828 INFO    ] 200
[2026-06-13 16:00:09,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:09,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:00:09,877.877 INFO    ] No update needed
[2026-06-13 16:00:09,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 16:00:09,898.898 INFO    ] 200
[2026-06-13 16:00:09,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:09,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:00:09,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:00:09,961.961 INFO    ] No camera update needed
[2026-06-13 16:00:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:00:09,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:00:09,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:00:09,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:00:12,010.010 INFO    ] ================================================
[2026-06-13 16:00:12,025.025 INFO    ] Launching Daemon at Sat Jun 13 16:00:12 IST 2026
[2026-06-13 16:00:12,036.036 INFO    ] ================================================
[2026-06-13 16:00:12,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:12
[2026-06-13 16:00:12,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:12,970.970 INFO    ] Initializing speech engine...
[2026-06-13 16:00:12,981.981 INFO    ] 2026-06-13 16:00:12
[2026-06-13 16:00:13,231.231 INFO    ] 2026-06-13 16:00:13
[2026-06-13 16:00:13,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:13,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:13,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:13,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:13,574.574 INFO    ] time= 13/06/2026 16:00:13
[2026-06-13 16:00:13,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:13,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:13,686.686 INFO    ] No existing commands found in stream
[2026-06-13 16:00:18,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:00:18,702.702 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 16:00:22,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:00:22,549.549 INFO    ] Checking for system updates...
[2026-06-13 16:00:22,585.585 INFO    ] 200
[2026-06-13 16:00:22,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:22,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:22,646.646 INFO    ] No update needed
[2026-06-13 16:00:22,648.648 INFO    ] Checking for camera pi updates...
[2026-06-13 16:00:22,683.683 INFO    ] 200
[2026-06-13 16:00:22,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:22,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:00:22,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:22,857.857 INFO    ] No camera update needed
[2026-06-13 16:00:22,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:00:22,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:00:22,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:00:22,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:00:24,904.904 INFO    ] ================================================
[2026-06-13 16:00:24,920.920 INFO    ] Launching Daemon at Sat Jun 13 16:00:24 IST 2026
[2026-06-13 16:00:24,930.930 INFO    ] ================================================
[2026-06-13 16:00:25,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:25
[2026-06-13 16:00:25,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:25,760.760 INFO    ] Initializing speech engine...
[2026-06-13 16:00:25,764.764 INFO    ] 2026-06-13 16:00:25
[2026-06-13 16:00:25,968.968 INFO    ] 2026-06-13 16:00:25
[2026-06-13 16:00:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:26,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:26,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:26,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:26,371.371 INFO    ] time= 13/06/2026 16:00:26
[2026-06-13 16:00:26,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:26,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:26,487.487 INFO    ] No existing commands found in stream
[2026-06-13 16:00:31,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:00:31,499.499 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 16:00:34,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:00:34,677.677 INFO    ] Checking for system updates...
[2026-06-13 16:00:34,697.697 INFO    ] 200
[2026-06-13 16:00:34,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:34,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:34,733.733 INFO    ] No update needed
[2026-06-13 16:00:34,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 16:00:34,755.755 INFO    ] 200
[2026-06-13 16:00:34,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:34,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:00:34,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:34,819.819 INFO    ] No camera update needed
[2026-06-13 16:00:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:00:34,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:00:34,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:00:34,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:00:36,867.867 INFO    ] ================================================
[2026-06-13 16:00:36,883.883 INFO    ] Launching Daemon at Sat Jun 13 16:00:36 IST 2026
[2026-06-13 16:00:36,894.894 INFO    ] ================================================
[2026-06-13 16:00:37,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:37
[2026-06-13 16:00:37,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:37,679.679 INFO    ] Initializing speech engine...
[2026-06-13 16:00:37,683.683 INFO    ] 2026-06-13 16:00:37
[2026-06-13 16:00:37,888.888 INFO    ] 2026-06-13 16:00:37
[2026-06-13 16:00:37,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:38,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:38,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:38,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:38,296.296 INFO    ] time= 13/06/2026 16:00:38
[2026-06-13 16:00:38,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:38,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:38,399.399 INFO    ] No existing commands found in stream
[2026-06-13 16:00:43,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:00:43,412.412 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 16:00:45,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:00:45,530.530 INFO    ] Checking for system updates...
[2026-06-13 16:00:45,551.551 INFO    ] 200
[2026-06-13 16:00:45,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:45,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:00:45,584.584 INFO    ] No update needed
[2026-06-13 16:00:45,585.585 INFO    ] Checking for camera pi updates...
[2026-06-13 16:00:45,605.605 INFO    ] 200
[2026-06-13 16:00:45,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:45,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:00:45,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:00:45,669.669 INFO    ] No camera update needed
[2026-06-13 16:00:45,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:00:45,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:00:45,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:00:45,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:00:47,716.716 INFO    ] ================================================
[2026-06-13 16:00:47,731.731 INFO    ] Launching Daemon at Sat Jun 13 16:00:47 IST 2026
[2026-06-13 16:00:47,742.742 INFO    ] ================================================
[2026-06-13 16:00:48,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:48
[2026-06-13 16:00:48,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:48,532.532 INFO    ] Initializing speech engine...
[2026-06-13 16:00:48,537.537 INFO    ] 2026-06-13 16:00:48
[2026-06-13 16:00:48,756.756 INFO    ] 2026-06-13 16:00:48
[2026-06-13 16:00:48,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:48,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:48,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:49,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:49,162.162 INFO    ] time= 13/06/2026 16:00:49
[2026-06-13 16:00:49,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:49,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:49,278.278 INFO    ] No existing commands found in stream
[2026-06-13 16:00:54,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:00:54,292.292 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 16:00:55,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:00:55,163.163 INFO    ] Checking for system updates...
[2026-06-13 16:00:55,184.184 INFO    ] 200
[2026-06-13 16:00:55,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:55,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:55,221.221 INFO    ] No update needed
[2026-06-13 16:00:55,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 16:00:55,242.242 INFO    ] 200
[2026-06-13 16:00:55,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:00:55,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:00:55,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:00:55,312.312 INFO    ] No camera update needed
[2026-06-13 16:00:55,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:00:55,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:00:55,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:00:55,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:00:57,361.361 INFO    ] ================================================
[2026-06-13 16:00:57,376.376 INFO    ] Launching Daemon at Sat Jun 13 16:00:57 IST 2026
[2026-06-13 16:00:57,387.387 INFO    ] ================================================
[2026-06-13 16:00:57,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:00:57
[2026-06-13 16:00:58,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:00:58,245.245 INFO    ] Initializing speech engine...
[2026-06-13 16:00:58,251.251 INFO    ] 2026-06-13 16:00:58
[2026-06-13 16:00:58,459.459 INFO    ] 2026-06-13 16:00:58
[2026-06-13 16:00:58,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:00:58,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:00:58,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:00:58,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:00:58,882.882 INFO    ] time= 13/06/2026 16:00:58
[2026-06-13 16:00:58,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:00:58,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:00:58,984.984 INFO    ] No existing commands found in stream
[2026-06-13 16:01:03,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:01:03,997.997 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 16:01:08,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:01:08,267.267 INFO    ] Checking for system updates...
[2026-06-13 16:01:08,290.290 INFO    ] 200
[2026-06-13 16:01:08,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:08,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:08,324.324 INFO    ] No update needed
[2026-06-13 16:01:08,325.325 INFO    ] Checking for camera pi updates...
[2026-06-13 16:01:08,346.346 INFO    ] 200
[2026-06-13 16:01:08,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:08,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:01:08,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:08,413.413 INFO    ] No camera update needed
[2026-06-13 16:01:08,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:01:08,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:01:08,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:01:08,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:01:10,464.464 INFO    ] ================================================
[2026-06-13 16:01:10,479.479 INFO    ] Launching Daemon at Sat Jun 13 16:01:10 IST 2026
[2026-06-13 16:01:10,491.491 INFO    ] ================================================
[2026-06-13 16:01:10,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:01:10
[2026-06-13 16:01:11,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:01:11,328.328 INFO    ] Initializing speech engine...
[2026-06-13 16:01:11,333.333 INFO    ] 2026-06-13 16:01:11
[2026-06-13 16:01:11,542.542 INFO    ] 2026-06-13 16:01:11
[2026-06-13 16:01:11,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:01:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:01:11,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:01:11,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:01:11,946.946 INFO    ] time= 13/06/2026 16:01:11
[2026-06-13 16:01:11,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:01:11,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:01:12,056.056 INFO    ] No existing commands found in stream
[2026-06-13 16:01:17,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:01:17,069.069 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 16:01:19,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:01:19,261.261 INFO    ] Checking for system updates...
[2026-06-13 16:01:19,283.283 INFO    ] 200
[2026-06-13 16:01:19,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:19,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:19,319.319 INFO    ] No update needed
[2026-06-13 16:01:19,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 16:01:19,343.343 INFO    ] 200
[2026-06-13 16:01:19,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:19,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:01:19,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:19,410.410 INFO    ] No camera update needed
[2026-06-13 16:01:19,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:01:19,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:01:19,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:01:19,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:01:21,459.459 INFO    ] ================================================
[2026-06-13 16:01:21,474.474 INFO    ] Launching Daemon at Sat Jun 13 16:01:21 IST 2026
[2026-06-13 16:01:21,485.485 INFO    ] ================================================
[2026-06-13 16:01:21,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:01:21
[2026-06-13 16:01:22,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:01:22,276.276 INFO    ] Initializing speech engine...
[2026-06-13 16:01:22,281.281 INFO    ] 2026-06-13 16:01:22
[2026-06-13 16:01:22,483.483 INFO    ] 2026-06-13 16:01:22
[2026-06-13 16:01:22,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:01:22,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:01:22,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:01:22,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:01:22,881.881 INFO    ] time= 13/06/2026 16:01:22
[2026-06-13 16:01:22,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:01:22,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:01:22,996.996 INFO    ] No existing commands found in stream
[2026-06-13 16:01:28,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:01:28,008.008 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 16:01:28,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:01:28,811.811 INFO    ] Checking for system updates...
[2026-06-13 16:01:28,833.833 INFO    ] 200
[2026-06-13 16:01:28,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:28,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:01:28,866.866 INFO    ] No update needed
[2026-06-13 16:01:28,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 16:01:28,889.889 INFO    ] 200
[2026-06-13 16:01:28,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:28,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:01:28,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:01:28,958.958 INFO    ] No camera update needed
[2026-06-13 16:01:28,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:01:28,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:01:28,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:01:28,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:01:31,008.008 INFO    ] ================================================
[2026-06-13 16:01:31,024.024 INFO    ] Launching Daemon at Sat Jun 13 16:01:31 IST 2026
[2026-06-13 16:01:31,035.035 INFO    ] ================================================
[2026-06-13 16:01:31,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:01:31
[2026-06-13 16:01:31,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:01:32,236.236 INFO    ] Initializing speech engine...
[2026-06-13 16:01:32,247.247 INFO    ] 2026-06-13 16:01:32
[2026-06-13 16:01:32,518.518 INFO    ] 2026-06-13 16:01:32
[2026-06-13 16:01:32,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:01:32,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:01:32,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:01:32,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:01:32,901.901 INFO    ] time= 13/06/2026 16:01:32
[2026-06-13 16:01:32,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:01:32,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:01:32,982.982 INFO    ] No existing commands found in stream
[2026-06-13 16:01:37,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:01:37,997.997 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 16:01:39,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:01:39,221.221 INFO    ] Checking for system updates...
[2026-06-13 16:01:39,242.242 INFO    ] 200
[2026-06-13 16:01:39,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:39,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:39,275.275 INFO    ] No update needed
[2026-06-13 16:01:39,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 16:01:39,299.299 INFO    ] 200
[2026-06-13 16:01:39,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:39,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:01:39,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:39,366.366 INFO    ] No camera update needed
[2026-06-13 16:01:39,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:01:39,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:01:39,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:01:39,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:01:41,417.417 INFO    ] ================================================
[2026-06-13 16:01:41,433.433 INFO    ] Launching Daemon at Sat Jun 13 16:01:41 IST 2026
[2026-06-13 16:01:41,444.444 INFO    ] ================================================
[2026-06-13 16:01:41,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:01:41
[2026-06-13 16:01:42,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:01:42,224.224 INFO    ] Initializing speech engine...
[2026-06-13 16:01:42,236.236 INFO    ] 2026-06-13 16:01:42
[2026-06-13 16:01:42,444.444 INFO    ] 2026-06-13 16:01:42
[2026-06-13 16:01:42,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:01:42,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:01:42,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:01:42,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:01:42,855.855 INFO    ] time= 13/06/2026 16:01:42
[2026-06-13 16:01:42,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:01:42,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:01:42,968.968 INFO    ] No existing commands found in stream
[2026-06-13 16:01:47,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:01:47,980.980 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 16:01:52,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:01:52,253.253 INFO    ] Checking for system updates...
[2026-06-13 16:01:52,274.274 INFO    ] 200
[2026-06-13 16:01:52,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:52,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:01:52,310.310 INFO    ] No update needed
[2026-06-13 16:01:52,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 16:01:52,334.334 INFO    ] 200
[2026-06-13 16:01:52,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:01:52,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:01:52,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:01:52,398.398 INFO    ] No camera update needed
[2026-06-13 16:01:52,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:01:52,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:01:52,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:01:52,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:01:54,447.447 INFO    ] ================================================
[2026-06-13 16:01:54,463.463 INFO    ] Launching Daemon at Sat Jun 13 16:01:54 IST 2026
[2026-06-13 16:01:54,475.475 INFO    ] ================================================
[2026-06-13 16:01:54,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:01:54
[2026-06-13 16:01:55,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:01:55,281.281 INFO    ] Initializing speech engine...
[2026-06-13 16:01:55,291.291 INFO    ] 2026-06-13 16:01:55
[2026-06-13 16:01:55,497.497 INFO    ] 2026-06-13 16:01:55
[2026-06-13 16:01:55,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:01:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:01:55,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:01:55,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:01:55,908.908 INFO    ] time= 13/06/2026 16:01:55
[2026-06-13 16:01:55,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:01:55,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:01:56,014.014 INFO    ] No existing commands found in stream
[2026-06-13 16:02:01,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:01,021.021 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 16:02:03,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:02:03,273.273 INFO    ] Checking for system updates...
[2026-06-13 16:02:03,317.317 INFO    ] 200
[2026-06-13 16:02:03,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:03,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:03,391.391 INFO    ] No update needed
[2026-06-13 16:02:03,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 16:02:03,442.442 INFO    ] 200
[2026-06-13 16:02:03,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:03,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:02:03,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:03,539.539 INFO    ] No camera update needed
[2026-06-13 16:02:03,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:02:03,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:02:03,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:02:03,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:02:05,601.601 INFO    ] ================================================
[2026-06-13 16:02:05,617.617 INFO    ] Launching Daemon at Sat Jun 13 16:02:05 IST 2026
[2026-06-13 16:02:05,628.628 INFO    ] ================================================
[2026-06-13 16:02:05,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:02:05
[2026-06-13 16:02:06,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:02:06,434.434 INFO    ] Initializing speech engine...
[2026-06-13 16:02:06,439.439 INFO    ] 2026-06-13 16:02:06
[2026-06-13 16:02:06,642.642 INFO    ] 2026-06-13 16:02:06
[2026-06-13 16:02:06,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:02:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:02:06,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:02:06,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:02:07,045.045 INFO    ] time= 13/06/2026 16:02:06
[2026-06-13 16:02:07,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:02:07,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:02:07,178.178 INFO    ] No existing commands found in stream
[2026-06-13 16:02:12,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:12,192.192 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 16:02:12,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:02:12,571.571 INFO    ] Checking for system updates...
[2026-06-13 16:02:12,592.592 INFO    ] 200
[2026-06-13 16:02:12,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:12,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:02:12,626.626 INFO    ] No update needed
[2026-06-13 16:02:12,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 16:02:12,648.648 INFO    ] 200
[2026-06-13 16:02:12,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:12,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:02:12,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:12,713.713 INFO    ] No camera update needed
[2026-06-13 16:02:12,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:02:12,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:02:12,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:02:12,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:02:14,763.763 INFO    ] ================================================
[2026-06-13 16:02:14,778.778 INFO    ] Launching Daemon at Sat Jun 13 16:02:14 IST 2026
[2026-06-13 16:02:14,790.790 INFO    ] ================================================
[2026-06-13 16:02:15,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:02:15
[2026-06-13 16:02:15,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:02:15,587.587 INFO    ] Initializing speech engine...
[2026-06-13 16:02:15,592.592 INFO    ] 2026-06-13 16:02:15
[2026-06-13 16:02:15,796.796 INFO    ] 2026-06-13 16:02:15
[2026-06-13 16:02:15,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:02:16,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:02:16,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:02:16,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:02:16,213.213 INFO    ] time= 13/06/2026 16:02:16
[2026-06-13 16:02:16,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:02:16,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:02:16,309.309 INFO    ] No existing commands found in stream
[2026-06-13 16:02:21,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:21,323.323 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 16:02:24,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:02:24,680.680 INFO    ] Checking for system updates...
[2026-06-13 16:02:24,702.702 INFO    ] 200
[2026-06-13 16:02:24,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:24,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:24,745.745 INFO    ] No update needed
[2026-06-13 16:02:24,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 16:02:24,769.769 INFO    ] 200
[2026-06-13 16:02:24,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:24,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:02:24,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:24,933.933 INFO    ] No camera update needed
[2026-06-13 16:02:24,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:02:24,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:02:24,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:02:24,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:02:26,981.981 INFO    ] ================================================
[2026-06-13 16:02:27,996.996 INFO    ] Launching Daemon at Sat Jun 13 16:02:26 IST 2026
[2026-06-13 16:02:27,008.008 INFO    ] ================================================
[2026-06-13 16:02:27,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:02:27
[2026-06-13 16:02:27,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:02:27,972.972 INFO    ] Initializing speech engine...
[2026-06-13 16:02:27,982.982 INFO    ] 2026-06-13 16:02:27
[2026-06-13 16:02:28,229.229 INFO    ] 2026-06-13 16:02:28
[2026-06-13 16:02:28,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:02:28,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:02:28,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:02:28,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:02:28,597.597 INFO    ] time= 13/06/2026 16:02:28
[2026-06-13 16:02:28,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:02:28,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:02:28,671.671 INFO    ] No existing commands found in stream
[2026-06-13 16:02:33,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:33,687.687 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 16:02:36,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:02:36,196.196 INFO    ] Checking for system updates...
[2026-06-13 16:02:36,216.216 INFO    ] 200
[2026-06-13 16:02:36,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:36,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:02:36,250.250 INFO    ] No update needed
[2026-06-13 16:02:36,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 16:02:36,271.271 INFO    ] 200
[2026-06-13 16:02:36,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:36,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:02:36,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:36,335.335 INFO    ] No camera update needed
[2026-06-13 16:02:36,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:02:36,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:02:36,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:02:36,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:02:38,382.382 INFO    ] ================================================
[2026-06-13 16:02:38,399.399 INFO    ] Launching Daemon at Sat Jun 13 16:02:38 IST 2026
[2026-06-13 16:02:38,410.410 INFO    ] ================================================
[2026-06-13 16:02:38,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:02:38
[2026-06-13 16:02:39,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:02:39,559.559 INFO    ] Initializing speech engine...
[2026-06-13 16:02:39,574.574 INFO    ] 2026-06-13 16:02:39
[2026-06-13 16:02:39,837.837 INFO    ] 2026-06-13 16:02:39
[2026-06-13 16:02:39,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:02:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:02:40,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:02:40,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:02:40,205.205 INFO    ] time= 13/06/2026 16:02:40
[2026-06-13 16:02:40,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:02:40,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:02:40,283.283 INFO    ] No existing commands found in stream
[2026-06-13 16:02:45,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:45,301.301 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 16:02:49,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:02:49,490.490 INFO    ] Checking for system updates...
[2026-06-13 16:02:49,511.511 INFO    ] 200
[2026-06-13 16:02:49,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:49,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:49,547.547 INFO    ] No update needed
[2026-06-13 16:02:49,548.548 INFO    ] Checking for camera pi updates...
[2026-06-13 16:02:49,568.568 INFO    ] 200
[2026-06-13 16:02:49,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:02:49,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:02:49,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:02:49,633.633 INFO    ] No camera update needed
[2026-06-13 16:02:49,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:02:49,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:02:49,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:02:49,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:02:51,682.682 INFO    ] ================================================
[2026-06-13 16:02:51,697.697 INFO    ] Launching Daemon at Sat Jun 13 16:02:51 IST 2026
[2026-06-13 16:02:51,707.707 INFO    ] ================================================
[2026-06-13 16:02:52,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:02:52
[2026-06-13 16:02:52,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:02:52,518.518 INFO    ] Initializing speech engine...
[2026-06-13 16:02:52,523.523 INFO    ] 2026-06-13 16:02:52
[2026-06-13 16:02:52,740.740 INFO    ] 2026-06-13 16:02:52
[2026-06-13 16:02:52,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:02:52,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:02:52,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:02:53,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:02:53,156.156 INFO    ] time= 13/06/2026 16:02:53
[2026-06-13 16:02:53,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:02:53,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:02:53,263.263 INFO    ] No existing commands found in stream
[2026-06-13 16:02:58,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:02:58,275.275 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 16:03:02,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:03:02,630.630 INFO    ] Checking for system updates...
[2026-06-13 16:03:02,687.687 INFO    ] 200
[2026-06-13 16:03:02,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:02,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:02,765.765 INFO    ] No update needed
[2026-06-13 16:03:02,768.768 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:02,805.805 INFO    ] 200
[2026-06-13 16:03:02,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:02,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:02,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:02,904.904 INFO    ] No camera update needed
[2026-06-13 16:03:02,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:02,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:02,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:02,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:03:04,965.965 INFO    ] ================================================
[2026-06-13 16:03:04,980.980 INFO    ] Launching Daemon at Sat Jun 13 16:03:04 IST 2026
[2026-06-13 16:03:04,990.990 INFO    ] ================================================
[2026-06-13 16:03:05,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:03:05
[2026-06-13 16:03:05,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:03:05,811.811 INFO    ] Initializing speech engine...
[2026-06-13 16:03:05,814.814 INFO    ] 2026-06-13 16:03:05
[2026-06-13 16:03:06,044.044 INFO    ] 2026-06-13 16:03:06
[2026-06-13 16:03:06,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:03:06,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:03:06,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:03:06,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:03:06,475.475 INFO    ] time= 13/06/2026 16:03:06
[2026-06-13 16:03:06,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:03:06,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:03:06,629.629 INFO    ] No existing commands found in stream
[2026-06-13 16:03:11,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:03:11,642.642 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 16:03:15,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:03:15,338.338 INFO    ] Checking for system updates...
[2026-06-13 16:03:15,361.361 INFO    ] 200
[2026-06-13 16:03:15,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:15,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:15,397.397 INFO    ] No update needed
[2026-06-13 16:03:15,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:15,418.418 INFO    ] 200
[2026-06-13 16:03:15,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:15,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:15,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:15,501.501 INFO    ] No camera update needed
[2026-06-13 16:03:15,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:15,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:15,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:15,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:03:17,554.554 INFO    ] ================================================
[2026-06-13 16:03:17,569.569 INFO    ] Launching Daemon at Sat Jun 13 16:03:17 IST 2026
[2026-06-13 16:03:17,580.580 INFO    ] ================================================
[2026-06-13 16:03:17,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:03:17
[2026-06-13 16:03:18,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:03:18,402.402 INFO    ] Initializing speech engine...
[2026-06-13 16:03:18,408.408 INFO    ] 2026-06-13 16:03:18
[2026-06-13 16:03:18,639.639 INFO    ] 2026-06-13 16:03:18
[2026-06-13 16:03:18,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:03:18,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:03:18,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:03:19,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:03:19,094.094 INFO    ] time= 13/06/2026 16:03:19
[2026-06-13 16:03:19,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:03:19,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:03:19,329.329 INFO    ] No existing commands found in stream
[2026-06-13 16:03:24,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:03:24,354.354 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 16:03:27,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:03:27,096.096 INFO    ] Checking for system updates...
[2026-06-13 16:03:27,133.133 INFO    ] 200
[2026-06-13 16:03:27,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:27,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:27,181.181 INFO    ] No update needed
[2026-06-13 16:03:27,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:27,202.202 INFO    ] 200
[2026-06-13 16:03:27,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:27,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:27,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:27,251.251 INFO    ] No camera update needed
[2026-06-13 16:03:27,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:27,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:27,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:27,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:03:29,300.300 INFO    ] ================================================
[2026-06-13 16:03:29,316.316 INFO    ] Launching Daemon at Sat Jun 13 16:03:29 IST 2026
[2026-06-13 16:03:29,328.328 INFO    ] ================================================
[2026-06-13 16:03:29,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:03:29
[2026-06-13 16:03:30,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:03:30,138.138 INFO    ] Initializing speech engine...
[2026-06-13 16:03:30,151.151 INFO    ] 2026-06-13 16:03:30
[2026-06-13 16:03:30,372.372 INFO    ] 2026-06-13 16:03:30
[2026-06-13 16:03:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:03:30,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:03:30,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:03:30,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:03:30,796.796 INFO    ] time= 13/06/2026 16:03:30
[2026-06-13 16:03:30,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:03:30,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:03:30,935.935 INFO    ] No existing commands found in stream
[2026-06-13 16:03:35,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:03:35,948.948 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 16:03:37,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:03:37,971.971 INFO    ] Checking for system updates...
[2026-06-13 16:03:37,992.992 INFO    ] 200
[2026-06-13 16:03:37,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:38,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:38,025.025 INFO    ] No update needed
[2026-06-13 16:03:38,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:38,046.046 INFO    ] 200
[2026-06-13 16:03:38,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:38,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:38,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:38,109.109 INFO    ] No camera update needed
[2026-06-13 16:03:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:38,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:38,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:38,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:03:40,157.157 INFO    ] ================================================
[2026-06-13 16:03:40,173.173 INFO    ] Launching Daemon at Sat Jun 13 16:03:40 IST 2026
[2026-06-13 16:03:40,185.185 INFO    ] ================================================
[2026-06-13 16:03:40,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:03:40
[2026-06-13 16:03:40,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:03:41,015.015 INFO    ] Initializing speech engine...
[2026-06-13 16:03:41,021.021 INFO    ] 2026-06-13 16:03:41
[2026-06-13 16:03:41,225.225 INFO    ] 2026-06-13 16:03:41
[2026-06-13 16:03:41,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:03:41,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:03:41,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:03:41,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:03:41,627.627 INFO    ] time= 13/06/2026 16:03:41
[2026-06-13 16:03:41,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:03:41,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:03:41,742.742 INFO    ] No existing commands found in stream
[2026-06-13 16:03:46,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:03:46,755.755 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 16:03:49,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:03:49,631.631 INFO    ] Checking for system updates...
[2026-06-13 16:03:49,653.653 INFO    ] 200
[2026-06-13 16:03:49,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:49,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:03:49,687.687 INFO    ] No update needed
[2026-06-13 16:03:49,689.689 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:49,709.709 INFO    ] 200
[2026-06-13 16:03:49,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:49,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:49,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:03:49,773.773 INFO    ] No camera update needed
[2026-06-13 16:03:49,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:49,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:49,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:49,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:03:51,821.821 INFO    ] ================================================
[2026-06-13 16:03:51,837.837 INFO    ] Launching Daemon at Sat Jun 13 16:03:51 IST 2026
[2026-06-13 16:03:51,848.848 INFO    ] ================================================
[2026-06-13 16:03:52,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:03:52
[2026-06-13 16:03:52,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:03:52,663.663 INFO    ] Initializing speech engine...
[2026-06-13 16:03:52,666.666 INFO    ] 2026-06-13 16:03:52
[2026-06-13 16:03:52,864.864 INFO    ] 2026-06-13 16:03:52
[2026-06-13 16:03:52,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:03:53,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:03:53,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:03:53,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:03:53,173.173 INFO    ] time= 13/06/2026 16:03:53
[2026-06-13 16:03:53,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:03:53,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:03:53,342.342 INFO    ] No existing commands found in stream
[2026-06-13 16:03:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:03:58,368.368 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 16:03:59,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:03:59,843.843 INFO    ] Checking for system updates...
[2026-06-13 16:03:59,863.863 INFO    ] 200
[2026-06-13 16:03:59,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:59,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:03:59,899.899 INFO    ] No update needed
[2026-06-13 16:03:59,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 16:03:59,920.920 INFO    ] 200
[2026-06-13 16:03:59,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:03:59,945.945 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:03:59,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:03:59,983.983 INFO    ] No camera update needed
[2026-06-13 16:03:59,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:03:59,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:03:59,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:03:59,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:04:02,023.023 INFO    ] ================================================
[2026-06-13 16:04:02,032.032 INFO    ] Launching Daemon at Sat Jun 13 16:04:02 IST 2026
[2026-06-13 16:04:02,039.039 INFO    ] ================================================
[2026-06-13 16:04:02,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:04:02
[2026-06-13 16:04:02,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:04:02,871.871 INFO    ] Initializing speech engine...
[2026-06-13 16:04:02,877.877 INFO    ] 2026-06-13 16:04:02
[2026-06-13 16:04:03,089.089 INFO    ] 2026-06-13 16:04:03
[2026-06-13 16:04:03,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:04:03,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:04:03,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:04:03,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:04:03,508.508 INFO    ] time= 13/06/2026 16:04:03
[2026-06-13 16:04:03,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:04:03,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:04:03,614.614 INFO    ] No existing commands found in stream
[2026-06-13 16:04:08,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:04:08,624.624 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 16:04:12,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:04:12,694.694 INFO    ] Checking for system updates...
[2026-06-13 16:04:12,715.715 INFO    ] 200
[2026-06-13 16:04:12,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:12,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:12,749.749 INFO    ] No update needed
[2026-06-13 16:04:12,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 16:04:12,770.770 INFO    ] 200
[2026-06-13 16:04:12,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:12,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:04:12,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:04:12,833.833 INFO    ] No camera update needed
[2026-06-13 16:04:12,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:04:12,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:04:12,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:04:12,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:04:14,882.882 INFO    ] ================================================
[2026-06-13 16:04:14,898.898 INFO    ] Launching Daemon at Sat Jun 13 16:04:14 IST 2026
[2026-06-13 16:04:14,909.909 INFO    ] ================================================
[2026-06-13 16:04:15,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:04:15
[2026-06-13 16:04:15,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:04:15,747.747 INFO    ] Initializing speech engine...
[2026-06-13 16:04:15,749.749 INFO    ] 2026-06-13 16:04:15
[2026-06-13 16:04:15,961.961 INFO    ] 2026-06-13 16:04:15
[2026-06-13 16:04:15,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:04:16,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:04:16,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:04:16,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:04:16,380.380 INFO    ] time= 13/06/2026 16:04:16
[2026-06-13 16:04:16,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:04:16,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:04:16,477.477 INFO    ] No existing commands found in stream
[2026-06-13 16:04:21,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:04:21,490.490 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 16:04:24,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:04:24,613.613 INFO    ] Checking for system updates...
[2026-06-13 16:04:24,633.633 INFO    ] 200
[2026-06-13 16:04:24,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:24,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:24,667.667 INFO    ] No update needed
[2026-06-13 16:04:24,668.668 INFO    ] Checking for camera pi updates...
[2026-06-13 16:04:24,692.692 INFO    ] 200
[2026-06-13 16:04:24,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:24,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:04:24,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:24,761.761 INFO    ] No camera update needed
[2026-06-13 16:04:24,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:04:24,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:04:24,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:04:24,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:04:26,810.810 INFO    ] ================================================
[2026-06-13 16:04:26,826.826 INFO    ] Launching Daemon at Sat Jun 13 16:04:26 IST 2026
[2026-06-13 16:04:26,837.837 INFO    ] ================================================
[2026-06-13 16:04:27,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:04:27
[2026-06-13 16:04:27,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:04:27,614.614 INFO    ] Initializing speech engine...
[2026-06-13 16:04:27,625.625 INFO    ] 2026-06-13 16:04:27
[2026-06-13 16:04:27,828.828 INFO    ] 2026-06-13 16:04:27
[2026-06-13 16:04:27,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:04:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:04:28,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:04:28,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:04:28,242.242 INFO    ] time= 13/06/2026 16:04:28
[2026-06-13 16:04:28,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:04:28,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:04:28,365.365 INFO    ] No existing commands found in stream
[2026-06-13 16:04:33,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:04:33,376.376 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 16:04:34,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:04:34,721.721 INFO    ] Checking for system updates...
[2026-06-13 16:04:34,741.741 INFO    ] 200
[2026-06-13 16:04:34,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:34,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:34,774.774 INFO    ] No update needed
[2026-06-13 16:04:34,776.776 INFO    ] Checking for camera pi updates...
[2026-06-13 16:04:34,795.795 INFO    ] 200
[2026-06-13 16:04:34,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:34,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:04:34,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:34,871.871 INFO    ] No camera update needed
[2026-06-13 16:04:34,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:04:34,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:04:34,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:04:34,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:04:36,919.919 INFO    ] ================================================
[2026-06-13 16:04:36,935.935 INFO    ] Launching Daemon at Sat Jun 13 16:04:36 IST 2026
[2026-06-13 16:04:36,947.947 INFO    ] ================================================
[2026-06-13 16:04:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:04:37
[2026-06-13 16:04:37,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:04:37,799.799 INFO    ] Initializing speech engine...
[2026-06-13 16:04:37,803.803 INFO    ] 2026-06-13 16:04:37
[2026-06-13 16:04:38,012.012 INFO    ] 2026-06-13 16:04:37
[2026-06-13 16:04:38,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:04:38,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:04:38,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:04:38,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:04:38,433.433 INFO    ] time= 13/06/2026 16:04:38
[2026-06-13 16:04:38,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:04:38,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:04:38,531.531 INFO    ] No existing commands found in stream
[2026-06-13 16:04:43,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:04:43,549.549 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 16:04:45,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:04:45,382.382 INFO    ] Checking for system updates...
[2026-06-13 16:04:45,403.403 INFO    ] 200
[2026-06-13 16:04:45,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:45,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:45,436.436 INFO    ] No update needed
[2026-06-13 16:04:45,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 16:04:45,459.459 INFO    ] 200
[2026-06-13 16:04:45,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:45,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:04:45,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:45,533.533 INFO    ] No camera update needed
[2026-06-13 16:04:45,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:04:45,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:04:45,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:04:45,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:04:47,581.581 INFO    ] ================================================
[2026-06-13 16:04:47,596.596 INFO    ] Launching Daemon at Sat Jun 13 16:04:47 IST 2026
[2026-06-13 16:04:47,608.608 INFO    ] ================================================
[2026-06-13 16:04:48,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:04:48
[2026-06-13 16:04:48,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:04:49,027.027 INFO    ] Initializing speech engine...
[2026-06-13 16:04:49,034.034 INFO    ] 2026-06-13 16:04:49
[2026-06-13 16:04:49,326.326 INFO    ] 2026-06-13 16:04:49
[2026-06-13 16:04:49,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:04:49,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:04:49,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:04:49,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:04:49,701.701 INFO    ] time= 13/06/2026 16:04:49
[2026-06-13 16:04:49,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:04:49,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:04:49,825.825 INFO    ] No existing commands found in stream
[2026-06-13 16:04:54,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:04:54,837.837 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 16:04:58,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:04:58,166.166 INFO    ] Checking for system updates...
[2026-06-13 16:04:58,187.187 INFO    ] 200
[2026-06-13 16:04:58,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:58,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:58,222.222 INFO    ] No update needed
[2026-06-13 16:04:58,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 16:04:58,243.243 INFO    ] 200
[2026-06-13 16:04:58,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:04:58,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:04:58,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:04:58,315.315 INFO    ] No camera update needed
[2026-06-13 16:04:58,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:04:58,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:04:58,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:04:58,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:00,362.362 INFO    ] ================================================
[2026-06-13 16:05:00,376.376 INFO    ] Launching Daemon at Sat Jun 13 16:05:00 IST 2026
[2026-06-13 16:05:00,387.387 INFO    ] ================================================
[2026-06-13 16:05:00,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:00
[2026-06-13 16:05:01,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:01,255.255 INFO    ] Initializing speech engine...
[2026-06-13 16:05:01,259.259 INFO    ] 2026-06-13 16:05:01
[2026-06-13 16:05:01,465.465 INFO    ] 2026-06-13 16:05:01
[2026-06-13 16:05:01,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:01,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:01,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:01,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:01,944.944 INFO    ] time= 13/06/2026 16:05:01
[2026-06-13 16:05:01,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:01,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:02,056.056 INFO    ] No existing commands found in stream
[2026-06-13 16:05:07,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:05:07,096.096 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 16:05:08,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:05:08,122.122 INFO    ] Checking for system updates...
[2026-06-13 16:05:08,143.143 INFO    ] 200
[2026-06-13 16:05:08,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:08,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:05:08,180.180 INFO    ] No update needed
[2026-06-13 16:05:08,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 16:05:08,203.203 INFO    ] 200
[2026-06-13 16:05:08,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:08,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:05:08,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:05:08,276.276 INFO    ] No camera update needed
[2026-06-13 16:05:08,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:05:08,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:05:08,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:05:08,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:10,324.324 INFO    ] ================================================
[2026-06-13 16:05:10,340.340 INFO    ] Launching Daemon at Sat Jun 13 16:05:10 IST 2026
[2026-06-13 16:05:10,351.351 INFO    ] ================================================
[2026-06-13 16:05:10,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:10
[2026-06-13 16:05:11,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:11,182.182 INFO    ] Initializing speech engine...
[2026-06-13 16:05:11,196.196 INFO    ] 2026-06-13 16:05:11
[2026-06-13 16:05:11,414.414 INFO    ] 2026-06-13 16:05:11
[2026-06-13 16:05:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:11,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:11,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:11,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:11,816.816 INFO    ] time= 13/06/2026 16:05:11
[2026-06-13 16:05:11,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:11,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:11,974.974 INFO    ] No existing commands found in stream
[2026-06-13 16:05:16,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:05:16,988.988 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 16:05:17,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:05:17,874.874 INFO    ] Checking for system updates...
[2026-06-13 16:05:17,895.895 INFO    ] 200
[2026-06-13 16:05:17,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:17,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:17,929.929 INFO    ] No update needed
[2026-06-13 16:05:17,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 16:05:17,951.951 INFO    ] 200
[2026-06-13 16:05:17,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:17,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:05:18,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:18,017.017 INFO    ] No camera update needed
[2026-06-13 16:05:18,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:05:18,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:05:18,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:05:18,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:20,063.063 INFO    ] ================================================
[2026-06-13 16:05:20,079.079 INFO    ] Launching Daemon at Sat Jun 13 16:05:20 IST 2026
[2026-06-13 16:05:20,090.090 INFO    ] ================================================
[2026-06-13 16:05:20,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:20
[2026-06-13 16:05:20,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:20,887.887 INFO    ] Initializing speech engine...
[2026-06-13 16:05:20,892.892 INFO    ] 2026-06-13 16:05:20
[2026-06-13 16:05:21,097.097 INFO    ] 2026-06-13 16:05:21
[2026-06-13 16:05:21,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:21,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:21,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:21,497.497 INFO    ] time= 13/06/2026 16:05:21
[2026-06-13 16:05:21,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:21,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:21,720.720 INFO    ] No existing commands found in stream
[2026-06-13 16:05:26,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:05:26,741.741 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 16:05:30,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:05:30,425.425 INFO    ] Checking for system updates...
[2026-06-13 16:05:30,445.445 INFO    ] 200
[2026-06-13 16:05:30,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:30,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:05:30,481.481 INFO    ] No update needed
[2026-06-13 16:05:30,482.482 INFO    ] Checking for camera pi updates...
[2026-06-13 16:05:30,501.501 INFO    ] 200
[2026-06-13 16:05:30,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:30,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:05:30,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:05:30,572.572 INFO    ] No camera update needed
[2026-06-13 16:05:30,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:05:30,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:05:30,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:05:30,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:32,620.620 INFO    ] ================================================
[2026-06-13 16:05:32,636.636 INFO    ] Launching Daemon at Sat Jun 13 16:05:32 IST 2026
[2026-06-13 16:05:32,646.646 INFO    ] ================================================
[2026-06-13 16:05:32,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:32
[2026-06-13 16:05:33,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:33,453.453 INFO    ] Initializing speech engine...
[2026-06-13 16:05:33,464.464 INFO    ] 2026-06-13 16:05:33
[2026-06-13 16:05:33,681.681 INFO    ] 2026-06-13 16:05:33
[2026-06-13 16:05:33,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:33,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:33,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:34,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:34,115.115 INFO    ] time= 13/06/2026 16:05:34
[2026-06-13 16:05:34,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:34,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:34,237.237 INFO    ] No existing commands found in stream
[2026-06-13 16:05:39,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:05:39,251.251 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 16:05:42,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:05:42,204.204 INFO    ] Checking for system updates...
[2026-06-13 16:05:42,227.227 INFO    ] 200
[2026-06-13 16:05:42,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:42,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:42,268.268 INFO    ] No update needed
[2026-06-13 16:05:42,270.270 INFO    ] Checking for camera pi updates...
[2026-06-13 16:05:42,293.293 INFO    ] 200
[2026-06-13 16:05:42,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:42,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:05:42,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:42,360.360 INFO    ] No camera update needed
[2026-06-13 16:05:42,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:05:42,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:05:42,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:05:42,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:44,405.405 INFO    ] ================================================
[2026-06-13 16:05:44,421.421 INFO    ] Launching Daemon at Sat Jun 13 16:05:44 IST 2026
[2026-06-13 16:05:44,433.433 INFO    ] ================================================
[2026-06-13 16:05:45,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:45
[2026-06-13 16:05:45,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:45,994.994 INFO    ] Initializing speech engine...
[2026-06-13 16:05:46,003.003 INFO    ] 2026-06-13 16:05:45
[2026-06-13 16:05:46,250.250 INFO    ] 2026-06-13 16:05:46
[2026-06-13 16:05:46,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:46,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:46,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:46,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:46,704.704 INFO    ] time= 13/06/2026 16:05:46
[2026-06-13 16:05:46,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:46,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:46,873.873 INFO    ] No existing commands found in stream
[2026-06-13 16:05:51,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:05:51,887.887 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 16:05:55,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:05:55,708.708 INFO    ] Checking for system updates...
[2026-06-13 16:05:55,731.731 INFO    ] 200
[2026-06-13 16:05:55,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:55,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:55,764.764 INFO    ] No update needed
[2026-06-13 16:05:55,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 16:05:55,787.787 INFO    ] 200
[2026-06-13 16:05:55,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:05:55,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:05:55,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:05:55,852.852 INFO    ] No camera update needed
[2026-06-13 16:05:55,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:05:55,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:05:55,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:05:55,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:05:57,902.902 INFO    ] ================================================
[2026-06-13 16:05:57,917.917 INFO    ] Launching Daemon at Sat Jun 13 16:05:57 IST 2026
[2026-06-13 16:05:57,927.927 INFO    ] ================================================
[2026-06-13 16:05:58,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:05:58
[2026-06-13 16:05:58,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:05:58,721.721 INFO    ] Initializing speech engine...
[2026-06-13 16:05:58,726.726 INFO    ] 2026-06-13 16:05:58
[2026-06-13 16:05:58,931.931 INFO    ] 2026-06-13 16:05:58
[2026-06-13 16:05:58,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:05:59,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:05:59,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:05:59,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:05:59,351.351 INFO    ] time= 13/06/2026 16:05:59
[2026-06-13 16:05:59,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:05:59,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:05:59,458.458 INFO    ] No existing commands found in stream
[2026-06-13 16:06:04,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:06:04,470.470 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 16:06:05,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:06:05,553.553 INFO    ] Checking for system updates...
[2026-06-13 16:06:05,575.575 INFO    ] 200
[2026-06-13 16:06:05,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:05,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:05,609.609 INFO    ] No update needed
[2026-06-13 16:06:05,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 16:06:05,631.631 INFO    ] 200
[2026-06-13 16:06:05,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:05,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:06:05,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:05,696.696 INFO    ] No camera update needed
[2026-06-13 16:06:05,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:06:05,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:06:05,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:06:05,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:06:07,743.743 INFO    ] ================================================
[2026-06-13 16:06:07,758.758 INFO    ] Launching Daemon at Sat Jun 13 16:06:07 IST 2026
[2026-06-13 16:06:07,769.769 INFO    ] ================================================
[2026-06-13 16:06:08,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:06:08
[2026-06-13 16:06:08,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:06:08,558.558 INFO    ] Initializing speech engine...
[2026-06-13 16:06:08,563.563 INFO    ] 2026-06-13 16:06:08
[2026-06-13 16:06:08,767.767 INFO    ] 2026-06-13 16:06:08
[2026-06-13 16:06:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:06:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:06:08,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:06:09,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:06:09,170.170 INFO    ] time= 13/06/2026 16:06:09
[2026-06-13 16:06:09,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:06:09,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:06:09,281.281 INFO    ] No existing commands found in stream
[2026-06-13 16:06:14,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:06:14,292.292 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 16:06:16,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:06:16,130.130 INFO    ] Checking for system updates...
[2026-06-13 16:06:16,151.151 INFO    ] 200
[2026-06-13 16:06:16,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:16,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:16,187.187 INFO    ] No update needed
[2026-06-13 16:06:16,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 16:06:16,209.209 INFO    ] 200
[2026-06-13 16:06:16,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:16,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:06:16,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:16,276.276 INFO    ] No camera update needed
[2026-06-13 16:06:16,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:06:16,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:06:16,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:06:16,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:06:18,325.325 INFO    ] ================================================
[2026-06-13 16:06:18,341.341 INFO    ] Launching Daemon at Sat Jun 13 16:06:18 IST 2026
[2026-06-13 16:06:18,353.353 INFO    ] ================================================
[2026-06-13 16:06:18,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:06:18
[2026-06-13 16:06:19,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:06:19,144.144 INFO    ] Initializing speech engine...
[2026-06-13 16:06:19,154.154 INFO    ] 2026-06-13 16:06:19
[2026-06-13 16:06:19,361.361 INFO    ] 2026-06-13 16:06:19
[2026-06-13 16:06:19,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:06:19,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:06:19,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:06:19,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:06:19,770.770 INFO    ] time= 13/06/2026 16:06:19
[2026-06-13 16:06:19,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:06:19,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:06:19,883.883 INFO    ] No existing commands found in stream
[2026-06-13 16:06:24,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:06:24,904.904 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 16:06:28,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:06:28,596.596 INFO    ] Checking for system updates...
[2026-06-13 16:06:28,618.618 INFO    ] 200
[2026-06-13 16:06:28,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:28,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:06:28,652.652 INFO    ] No update needed
[2026-06-13 16:06:28,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 16:06:28,673.673 INFO    ] 200
[2026-06-13 16:06:28,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:28,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:06:28,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:06:28,745.745 INFO    ] No camera update needed
[2026-06-13 16:06:28,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:06:28,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:06:28,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:06:28,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:06:30,794.794 INFO    ] ================================================
[2026-06-13 16:06:30,809.809 INFO    ] Launching Daemon at Sat Jun 13 16:06:30 IST 2026
[2026-06-13 16:06:30,821.821 INFO    ] ================================================
[2026-06-13 16:06:31,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:06:31
[2026-06-13 16:06:31,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:06:31,681.681 INFO    ] Initializing speech engine...
[2026-06-13 16:06:31,687.687 INFO    ] 2026-06-13 16:06:31
[2026-06-13 16:06:31,908.908 INFO    ] 2026-06-13 16:06:31
[2026-06-13 16:06:31,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:06:32,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:06:32,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:06:32,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:06:32,367.367 INFO    ] time= 13/06/2026 16:06:32
[2026-06-13 16:06:32,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:06:32,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:06:32,480.480 INFO    ] No existing commands found in stream
[2026-06-13 16:06:37,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:06:37,498.498 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 16:06:39,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:06:39,696.696 INFO    ] Checking for system updates...
[2026-06-13 16:06:39,719.719 INFO    ] 200
[2026-06-13 16:06:39,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:39,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:06:39,753.753 INFO    ] No update needed
[2026-06-13 16:06:39,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 16:06:39,776.776 INFO    ] 200
[2026-06-13 16:06:39,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:39,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:06:39,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:06:39,945.945 INFO    ] No camera update needed
[2026-06-13 16:06:39,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:06:39,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:06:39,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:06:39,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:06:42,005.005 INFO    ] ================================================
[2026-06-13 16:06:42,021.021 INFO    ] Launching Daemon at Sat Jun 13 16:06:42 IST 2026
[2026-06-13 16:06:42,032.032 INFO    ] ================================================
[2026-06-13 16:06:42,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:06:42
[2026-06-13 16:06:42,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:06:42,846.846 INFO    ] Initializing speech engine...
[2026-06-13 16:06:42,857.857 INFO    ] 2026-06-13 16:06:42
[2026-06-13 16:06:43,044.044 INFO    ] 2026-06-13 16:06:43
[2026-06-13 16:06:43,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:06:43,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:06:43,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:06:43,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:06:43,452.452 INFO    ] time= 13/06/2026 16:06:43
[2026-06-13 16:06:43,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:06:43,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:06:43,637.637 INFO    ] No existing commands found in stream
[2026-06-13 16:06:48,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:06:48,649.649 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 16:06:51,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:06:51,441.441 INFO    ] Checking for system updates...
[2026-06-13 16:06:51,461.461 INFO    ] 200
[2026-06-13 16:06:51,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:51,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:51,495.495 INFO    ] No update needed
[2026-06-13 16:06:51,496.496 INFO    ] Checking for camera pi updates...
[2026-06-13 16:06:51,520.520 INFO    ] 200
[2026-06-13 16:06:51,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:06:51,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:06:51,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:06:51,588.588 INFO    ] No camera update needed
[2026-06-13 16:06:51,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:06:51,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:06:51,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:06:51,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:06:53,637.637 INFO    ] ================================================
[2026-06-13 16:06:53,652.652 INFO    ] Launching Daemon at Sat Jun 13 16:06:53 IST 2026
[2026-06-13 16:06:53,663.663 INFO    ] ================================================
[2026-06-13 16:06:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:06:53
[2026-06-13 16:06:54,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:06:54,432.432 INFO    ] Initializing speech engine...
[2026-06-13 16:06:54,437.437 INFO    ] 2026-06-13 16:06:54
[2026-06-13 16:06:54,675.675 INFO    ] 2026-06-13 16:06:54
[2026-06-13 16:06:54,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:06:54,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:06:54,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:06:55,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:06:55,084.084 INFO    ] time= 13/06/2026 16:06:55
[2026-06-13 16:06:55,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:06:55,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:06:55,239.239 INFO    ] No existing commands found in stream
[2026-06-13 16:07:00,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:00,252.252 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 16:07:04,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:07:04,367.367 INFO    ] Checking for system updates...
[2026-06-13 16:07:04,403.403 INFO    ] 200
[2026-06-13 16:07:04,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:04,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:07:04,461.461 INFO    ] No update needed
[2026-06-13 16:07:04,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 16:07:04,497.497 INFO    ] 200
[2026-06-13 16:07:04,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:04,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:07:04,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:07:04,592.592 INFO    ] No camera update needed
[2026-06-13 16:07:04,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:07:04,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:07:04,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:07:04,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:07:06,649.649 INFO    ] ================================================
[2026-06-13 16:07:06,664.664 INFO    ] Launching Daemon at Sat Jun 13 16:07:06 IST 2026
[2026-06-13 16:07:06,676.676 INFO    ] ================================================
[2026-06-13 16:07:07,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:07:07
[2026-06-13 16:07:07,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:07:07,540.540 INFO    ] Initializing speech engine...
[2026-06-13 16:07:07,547.547 INFO    ] 2026-06-13 16:07:07
[2026-06-13 16:07:07,757.757 INFO    ] 2026-06-13 16:07:07
[2026-06-13 16:07:07,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:07:07,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:07:08,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:07:08,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:07:08,194.194 INFO    ] time= 13/06/2026 16:07:08
[2026-06-13 16:07:08,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:07:08,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:07:08,414.414 INFO    ] No existing commands found in stream
[2026-06-13 16:07:13,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:13,431.431 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 16:07:16,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:07:16,803.803 INFO    ] Checking for system updates...
[2026-06-13 16:07:16,824.824 INFO    ] 200
[2026-06-13 16:07:16,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:16,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:16,861.861 INFO    ] No update needed
[2026-06-13 16:07:16,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 16:07:16,883.883 INFO    ] 200
[2026-06-13 16:07:16,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:16,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:07:16,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:16,952.952 INFO    ] No camera update needed
[2026-06-13 16:07:16,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:07:16,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:07:16,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:07:16,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:07:19,000.000 INFO    ] ================================================
[2026-06-13 16:07:19,016.016 INFO    ] Launching Daemon at Sat Jun 13 16:07:19 IST 2026
[2026-06-13 16:07:19,027.027 INFO    ] ================================================
[2026-06-13 16:07:19,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:07:19
[2026-06-13 16:07:19,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:07:19,910.910 INFO    ] Initializing speech engine...
[2026-06-13 16:07:19,923.923 INFO    ] 2026-06-13 16:07:19
[2026-06-13 16:07:20,137.137 INFO    ] 2026-06-13 16:07:20
[2026-06-13 16:07:20,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:07:20,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:07:20,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:07:20,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:07:20,548.548 INFO    ] time= 13/06/2026 16:07:20
[2026-06-13 16:07:20,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:07:20,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:07:20,660.660 INFO    ] No existing commands found in stream
[2026-06-13 16:07:25,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:25,673.673 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 16:07:27,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:07:27,686.686 INFO    ] Checking for system updates...
[2026-06-13 16:07:27,707.707 INFO    ] 200
[2026-06-13 16:07:27,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:27,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:27,745.745 INFO    ] No update needed
[2026-06-13 16:07:27,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 16:07:27,769.769 INFO    ] 200
[2026-06-13 16:07:27,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:27,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:07:27,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:27,831.831 INFO    ] No camera update needed
[2026-06-13 16:07:27,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:07:27,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:07:27,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:07:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:07:29,879.879 INFO    ] ================================================
[2026-06-13 16:07:29,895.895 INFO    ] Launching Daemon at Sat Jun 13 16:07:29 IST 2026
[2026-06-13 16:07:29,907.907 INFO    ] ================================================
[2026-06-13 16:07:30,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:07:30
[2026-06-13 16:07:30,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:07:30,961.961 INFO    ] Initializing speech engine...
[2026-06-13 16:07:30,970.970 INFO    ] 2026-06-13 16:07:30
[2026-06-13 16:07:31,245.245 INFO    ] 2026-06-13 16:07:31
[2026-06-13 16:07:31,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:07:31,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:07:31,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:07:31,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:07:31,696.696 INFO    ] time= 13/06/2026 16:07:31
[2026-06-13 16:07:31,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:07:31,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:07:31,927.927 INFO    ] No existing commands found in stream
[2026-06-13 16:07:36,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:36,958.958 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 16:07:40,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:07:40,400.400 INFO    ] Checking for system updates...
[2026-06-13 16:07:40,421.421 INFO    ] 200
[2026-06-13 16:07:40,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:40,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:07:40,454.454 INFO    ] No update needed
[2026-06-13 16:07:40,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 16:07:40,475.475 INFO    ] 200
[2026-06-13 16:07:40,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:40,500.500 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:07:40,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:07:40,523.523 INFO    ] No camera update needed
[2026-06-13 16:07:40,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:07:40,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:07:40,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:07:40,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:07:42,572.572 INFO    ] ================================================
[2026-06-13 16:07:42,588.588 INFO    ] Launching Daemon at Sat Jun 13 16:07:42 IST 2026
[2026-06-13 16:07:42,600.600 INFO    ] ================================================
[2026-06-13 16:07:42,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:07:42
[2026-06-13 16:07:43,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:07:43,410.410 INFO    ] Initializing speech engine...
[2026-06-13 16:07:43,415.415 INFO    ] 2026-06-13 16:07:43
[2026-06-13 16:07:43,618.618 INFO    ] 2026-06-13 16:07:43
[2026-06-13 16:07:43,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:07:43,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:07:43,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:07:43,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:07:44,028.028 INFO    ] time= 13/06/2026 16:07:43
[2026-06-13 16:07:44,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:07:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:07:44,133.133 INFO    ] No existing commands found in stream
[2026-06-13 16:07:49,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:49,145.145 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 16:07:50,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:07:50,319.319 INFO    ] Checking for system updates...
[2026-06-13 16:07:50,340.340 INFO    ] 200
[2026-06-13 16:07:50,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:50,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:50,373.373 INFO    ] No update needed
[2026-06-13 16:07:50,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 16:07:50,396.396 INFO    ] 200
[2026-06-13 16:07:50,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:07:50,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:07:50,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:07:50,469.469 INFO    ] No camera update needed
[2026-06-13 16:07:50,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:07:50,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:07:50,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:07:50,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:07:52,515.515 INFO    ] ================================================
[2026-06-13 16:07:52,531.531 INFO    ] Launching Daemon at Sat Jun 13 16:07:52 IST 2026
[2026-06-13 16:07:52,541.541 INFO    ] ================================================
[2026-06-13 16:07:52,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:07:52
[2026-06-13 16:07:53,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:07:53,418.418 INFO    ] Initializing speech engine...
[2026-06-13 16:07:53,427.427 INFO    ] 2026-06-13 16:07:53
[2026-06-13 16:07:53,697.697 INFO    ] 2026-06-13 16:07:53
[2026-06-13 16:07:53,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:07:53,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:07:53,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:07:54,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:07:54,058.058 INFO    ] time= 13/06/2026 16:07:54
[2026-06-13 16:07:54,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:07:54,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:07:54,171.171 INFO    ] No existing commands found in stream
[2026-06-13 16:07:59,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:07:59,185.185 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 16:08:00,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:08:00,614.614 INFO    ] Checking for system updates...
[2026-06-13 16:08:00,635.635 INFO    ] 200
[2026-06-13 16:08:00,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:00,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:00,669.669 INFO    ] No update needed
[2026-06-13 16:08:00,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:00,691.691 INFO    ] 200
[2026-06-13 16:08:00,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:00,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:00,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:08:00,758.758 INFO    ] No camera update needed
[2026-06-13 16:08:00,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:00,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:00,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:00,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:08:02,791.791 INFO    ] ================================================
[2026-06-13 16:08:02,800.800 INFO    ] Launching Daemon at Sat Jun 13 16:08:02 IST 2026
[2026-06-13 16:08:02,805.805 INFO    ] ================================================
[2026-06-13 16:08:03,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:08:03
[2026-06-13 16:08:03,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:08:03,679.679 INFO    ] Initializing speech engine...
[2026-06-13 16:08:03,684.684 INFO    ] 2026-06-13 16:08:03
[2026-06-13 16:08:03,889.889 INFO    ] 2026-06-13 16:08:03
[2026-06-13 16:08:03,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:08:04,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:08:04,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:08:04,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:08:04,325.325 INFO    ] time= 13/06/2026 16:08:04
[2026-06-13 16:08:04,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:08:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:08:04,536.536 INFO    ] No existing commands found in stream
[2026-06-13 16:08:09,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:08:09,569.569 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 16:08:13,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:08:13,131.131 INFO    ] Checking for system updates...
[2026-06-13 16:08:13,153.153 INFO    ] 200
[2026-06-13 16:08:13,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:13,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:08:13,187.187 INFO    ] No update needed
[2026-06-13 16:08:13,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:13,208.208 INFO    ] 200
[2026-06-13 16:08:13,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:13,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:13,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:08:13,278.278 INFO    ] No camera update needed
[2026-06-13 16:08:13,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:13,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:13,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:13,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:08:15,329.329 INFO    ] ================================================
[2026-06-13 16:08:15,344.344 INFO    ] Launching Daemon at Sat Jun 13 16:08:15 IST 2026
[2026-06-13 16:08:15,355.355 INFO    ] ================================================
[2026-06-13 16:08:15,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:08:15
[2026-06-13 16:08:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:08:16,570.570 INFO    ] Initializing speech engine...
[2026-06-13 16:08:16,579.579 INFO    ] 2026-06-13 16:08:16
[2026-06-13 16:08:16,824.824 INFO    ] 2026-06-13 16:08:16
[2026-06-13 16:08:16,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:08:17,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:08:17,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:08:17,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:08:17,301.301 INFO    ] time= 13/06/2026 16:08:17
[2026-06-13 16:08:17,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:08:17,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:08:17,447.447 INFO    ] No existing commands found in stream
[2026-06-13 16:08:22,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:08:22,475.475 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 16:08:26,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:08:26,294.294 INFO    ] Checking for system updates...
[2026-06-13 16:08:26,316.316 INFO    ] 200
[2026-06-13 16:08:26,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:26,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:26,350.350 INFO    ] No update needed
[2026-06-13 16:08:26,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:26,371.371 INFO    ] 200
[2026-06-13 16:08:26,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:26,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:26,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:26,435.435 INFO    ] No camera update needed
[2026-06-13 16:08:26,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:26,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:26,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:26,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:08:28,483.483 INFO    ] ================================================
[2026-06-13 16:08:28,499.499 INFO    ] Launching Daemon at Sat Jun 13 16:08:28 IST 2026
[2026-06-13 16:08:28,509.509 INFO    ] ================================================
[2026-06-13 16:08:28,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:08:28
[2026-06-13 16:08:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:08:29,287.287 INFO    ] Initializing speech engine...
[2026-06-13 16:08:29,300.300 INFO    ] 2026-06-13 16:08:29
[2026-06-13 16:08:29,508.508 INFO    ] 2026-06-13 16:08:29
[2026-06-13 16:08:29,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:08:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:08:29,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:08:29,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:08:29,916.916 INFO    ] time= 13/06/2026 16:08:29
[2026-06-13 16:08:29,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:08:29,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:08:30,036.036 INFO    ] No existing commands found in stream
[2026-06-13 16:08:35,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:08:35,047.047 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 16:08:36,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:08:36,142.142 INFO    ] Checking for system updates...
[2026-06-13 16:08:36,163.163 INFO    ] 200
[2026-06-13 16:08:36,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:36,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:36,199.199 INFO    ] No update needed
[2026-06-13 16:08:36,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:36,219.219 INFO    ] 200
[2026-06-13 16:08:36,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:36,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:36,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:36,287.287 INFO    ] No camera update needed
[2026-06-13 16:08:36,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:36,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:36,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:36,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:08:38,333.333 INFO    ] ================================================
[2026-06-13 16:08:38,348.348 INFO    ] Launching Daemon at Sat Jun 13 16:08:38 IST 2026
[2026-06-13 16:08:38,359.359 INFO    ] ================================================
[2026-06-13 16:08:38,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:08:38
[2026-06-13 16:08:39,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:08:39,136.136 INFO    ] Initializing speech engine...
[2026-06-13 16:08:39,141.141 INFO    ] 2026-06-13 16:08:39
[2026-06-13 16:08:39,361.361 INFO    ] 2026-06-13 16:08:39
[2026-06-13 16:08:39,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:08:39,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:08:39,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:08:39,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:08:39,768.768 INFO    ] time= 13/06/2026 16:08:39
[2026-06-13 16:08:39,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:08:39,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:08:39,880.880 INFO    ] No existing commands found in stream
[2026-06-13 16:08:44,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:08:44,892.892 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 16:08:47,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:08:47,874.874 INFO    ] Checking for system updates...
[2026-06-13 16:08:47,895.895 INFO    ] 200
[2026-06-13 16:08:47,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:47,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:08:47,930.930 INFO    ] No update needed
[2026-06-13 16:08:47,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:47,951.951 INFO    ] 200
[2026-06-13 16:08:47,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:47,978.978 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:48,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:08:48,120.120 INFO    ] No camera update needed
[2026-06-13 16:08:48,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:48,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:48,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:48,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:08:50,167.167 INFO    ] ================================================
[2026-06-13 16:08:50,183.183 INFO    ] Launching Daemon at Sat Jun 13 16:08:50 IST 2026
[2026-06-13 16:08:50,194.194 INFO    ] ================================================
[2026-06-13 16:08:50,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:08:50
[2026-06-13 16:08:50,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:08:51,009.009 INFO    ] Initializing speech engine...
[2026-06-13 16:08:51,014.014 INFO    ] 2026-06-13 16:08:51
[2026-06-13 16:08:51,219.219 INFO    ] 2026-06-13 16:08:51
[2026-06-13 16:08:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:08:51,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:08:51,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:08:51,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:08:51,632.632 INFO    ] time= 13/06/2026 16:08:51
[2026-06-13 16:08:51,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:08:51,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:08:51,755.755 INFO    ] No existing commands found in stream
[2026-06-13 16:08:56,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:08:56,767.767 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 16:08:59,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:08:59,153.153 INFO    ] Checking for system updates...
[2026-06-13 16:08:59,174.174 INFO    ] 200
[2026-06-13 16:08:59,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:59,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:59,211.211 INFO    ] No update needed
[2026-06-13 16:08:59,212.212 INFO    ] Checking for camera pi updates...
[2026-06-13 16:08:59,232.232 INFO    ] 200
[2026-06-13 16:08:59,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:08:59,257.257 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:08:59,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:08:59,296.296 INFO    ] No camera update needed
[2026-06-13 16:08:59,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:08:59,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:08:59,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:08:59,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:01,345.345 INFO    ] ================================================
[2026-06-13 16:09:01,361.361 INFO    ] Launching Daemon at Sat Jun 13 16:09:01 IST 2026
[2026-06-13 16:09:01,372.372 INFO    ] ================================================
[2026-06-13 16:09:01,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:01
[2026-06-13 16:09:02,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:02,320.320 INFO    ] Initializing speech engine...
[2026-06-13 16:09:02,335.335 INFO    ] 2026-06-13 16:09:02
[2026-06-13 16:09:02,551.551 INFO    ] 2026-06-13 16:09:02
[2026-06-13 16:09:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:02,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:02,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:02,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:02,847.847 INFO    ] time= 13/06/2026 16:09:02
[2026-06-13 16:09:02,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:02,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:02,948.948 INFO    ] No existing commands found in stream
[2026-06-13 16:09:07,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:09:07,985.985 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 16:09:09,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:09:09,594.594 INFO    ] Checking for system updates...
[2026-06-13 16:09:09,616.616 INFO    ] 200
[2026-06-13 16:09:09,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:09,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:09:09,650.650 INFO    ] No update needed
[2026-06-13 16:09:09,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 16:09:09,672.672 INFO    ] 200
[2026-06-13 16:09:09,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:09,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:09:09,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:09:09,734.734 INFO    ] No camera update needed
[2026-06-13 16:09:09,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:09:09,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:09:09,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:09:09,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:11,781.781 INFO    ] ================================================
[2026-06-13 16:09:11,796.796 INFO    ] Launching Daemon at Sat Jun 13 16:09:11 IST 2026
[2026-06-13 16:09:11,807.807 INFO    ] ================================================
[2026-06-13 16:09:12,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:12
[2026-06-13 16:09:12,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:12,584.584 INFO    ] Initializing speech engine...
[2026-06-13 16:09:12,589.589 INFO    ] 2026-06-13 16:09:12
[2026-06-13 16:09:12,791.791 INFO    ] 2026-06-13 16:09:12
[2026-06-13 16:09:12,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:13,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:13,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:13,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:13,184.184 INFO    ] time= 13/06/2026 16:09:13
[2026-06-13 16:09:13,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:13,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:13,306.306 INFO    ] No existing commands found in stream
[2026-06-13 16:09:18,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:09:18,317.317 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 16:09:19,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:09:19,527.527 INFO    ] Checking for system updates...
[2026-06-13 16:09:19,548.548 INFO    ] 200
[2026-06-13 16:09:19,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:19,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:19,582.582 INFO    ] No update needed
[2026-06-13 16:09:19,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 16:09:19,603.603 INFO    ] 200
[2026-06-13 16:09:19,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:19,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:09:19,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:19,674.674 INFO    ] No camera update needed
[2026-06-13 16:09:19,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:09:19,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:09:19,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:09:19,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:21,722.722 INFO    ] ================================================
[2026-06-13 16:09:21,737.737 INFO    ] Launching Daemon at Sat Jun 13 16:09:21 IST 2026
[2026-06-13 16:09:21,748.748 INFO    ] ================================================
[2026-06-13 16:09:22,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:22
[2026-06-13 16:09:22,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:22,606.606 INFO    ] Initializing speech engine...
[2026-06-13 16:09:22,611.611 INFO    ] 2026-06-13 16:09:22
[2026-06-13 16:09:22,837.837 INFO    ] 2026-06-13 16:09:22
[2026-06-13 16:09:22,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:23,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:23,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:23,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:23,214.214 INFO    ] time= 13/06/2026 16:09:23
[2026-06-13 16:09:23,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:23,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:23,389.389 INFO    ] No existing commands found in stream
[2026-06-13 16:09:28,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:09:28,417.417 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 16:09:31,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:09:31,957.957 INFO    ] Checking for system updates...
[2026-06-13 16:09:31,983.983 INFO    ] 200
[2026-06-13 16:09:31,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:32,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:32,021.021 INFO    ] No update needed
[2026-06-13 16:09:32,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 16:09:32,044.044 INFO    ] 200
[2026-06-13 16:09:32,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:32,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:09:32,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:32,107.107 INFO    ] No camera update needed
[2026-06-13 16:09:32,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:09:32,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:09:32,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:09:32,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:34,152.152 INFO    ] ================================================
[2026-06-13 16:09:34,167.167 INFO    ] Launching Daemon at Sat Jun 13 16:09:34 IST 2026
[2026-06-13 16:09:34,178.178 INFO    ] ================================================
[2026-06-13 16:09:34,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:34
[2026-06-13 16:09:34,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:35,006.006 INFO    ] Initializing speech engine...
[2026-06-13 16:09:35,014.014 INFO    ] 2026-06-13 16:09:35
[2026-06-13 16:09:35,226.226 INFO    ] 2026-06-13 16:09:35
[2026-06-13 16:09:35,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:35,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:35,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:35,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:35,633.633 INFO    ] time= 13/06/2026 16:09:35
[2026-06-13 16:09:35,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:35,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:35,744.744 INFO    ] No existing commands found in stream
[2026-06-13 16:09:40,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:09:40,756.756 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 16:09:42,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:09:42,241.241 INFO    ] Checking for system updates...
[2026-06-13 16:09:42,261.261 INFO    ] 200
[2026-06-13 16:09:42,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:42,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:42,295.295 INFO    ] No update needed
[2026-06-13 16:09:42,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 16:09:42,316.316 INFO    ] 200
[2026-06-13 16:09:42,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:42,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:09:42,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:09:42,384.384 INFO    ] No camera update needed
[2026-06-13 16:09:42,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:09:42,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:09:42,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:09:42,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:44,430.430 INFO    ] ================================================
[2026-06-13 16:09:44,445.445 INFO    ] Launching Daemon at Sat Jun 13 16:09:44 IST 2026
[2026-06-13 16:09:44,457.457 INFO    ] ================================================
[2026-06-13 16:09:44,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:44
[2026-06-13 16:09:45,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:45,395.395 INFO    ] Initializing speech engine...
[2026-06-13 16:09:45,402.402 INFO    ] 2026-06-13 16:09:45
[2026-06-13 16:09:45,653.653 INFO    ] 2026-06-13 16:09:45
[2026-06-13 16:09:45,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:45,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:45,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:45,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:45,997.997 INFO    ] time= 13/06/2026 16:09:45
[2026-06-13 16:09:46,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:46,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:46,110.110 INFO    ] No existing commands found in stream
[2026-06-13 16:09:51,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:09:51,126.126 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 16:09:54,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:09:54,807.807 INFO    ] Checking for system updates...
[2026-06-13 16:09:54,829.829 INFO    ] 200
[2026-06-13 16:09:54,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:54,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:09:54,862.862 INFO    ] No update needed
[2026-06-13 16:09:54,863.863 INFO    ] Checking for camera pi updates...
[2026-06-13 16:09:54,884.884 INFO    ] 200
[2026-06-13 16:09:54,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:09:54,909.909 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:09:54,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:09:54,947.947 INFO    ] No camera update needed
[2026-06-13 16:09:54,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:09:54,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:09:54,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:09:54,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:09:56,993.993 INFO    ] ================================================
[2026-06-13 16:09:57,008.008 INFO    ] Launching Daemon at Sat Jun 13 16:09:57 IST 2026
[2026-06-13 16:09:57,019.019 INFO    ] ================================================
[2026-06-13 16:09:57,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:09:57
[2026-06-13 16:09:57,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:09:57,821.821 INFO    ] Initializing speech engine...
[2026-06-13 16:09:57,826.826 INFO    ] 2026-06-13 16:09:57
[2026-06-13 16:09:58,031.031 INFO    ] 2026-06-13 16:09:58
[2026-06-13 16:09:58,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:09:58,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:09:58,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:09:58,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:09:58,435.435 INFO    ] time= 13/06/2026 16:09:58
[2026-06-13 16:09:58,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:09:58,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:09:58,545.545 INFO    ] No existing commands found in stream
[2026-06-13 16:10:03,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:03,557.557 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 16:10:08,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:10:08,136.136 INFO    ] Checking for system updates...
[2026-06-13 16:10:08,172.172 INFO    ] 200
[2026-06-13 16:10:08,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:08,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:10:08,241.241 INFO    ] No update needed
[2026-06-13 16:10:08,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 16:10:08,278.278 INFO    ] 200
[2026-06-13 16:10:08,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:08,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:10:08,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:10:08,348.348 INFO    ] No camera update needed
[2026-06-13 16:10:08,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:10:08,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:10:08,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:10:08,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:10:10,396.396 INFO    ] ================================================
[2026-06-13 16:10:10,411.411 INFO    ] Launching Daemon at Sat Jun 13 16:10:10 IST 2026
[2026-06-13 16:10:10,421.421 INFO    ] ================================================
[2026-06-13 16:10:10,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:10:10
[2026-06-13 16:10:11,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:10:11,237.237 INFO    ] Initializing speech engine...
[2026-06-13 16:10:11,242.242 INFO    ] 2026-06-13 16:10:11
[2026-06-13 16:10:11,444.444 INFO    ] 2026-06-13 16:10:11
[2026-06-13 16:10:11,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:10:11,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:10:11,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:10:11,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:10:11,844.844 INFO    ] time= 13/06/2026 16:10:11
[2026-06-13 16:10:11,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:10:11,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:10:11,960.960 INFO    ] No existing commands found in stream
[2026-06-13 16:10:16,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:16,972.972 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 16:10:18,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:10:18,231.231 INFO    ] Checking for system updates...
[2026-06-13 16:10:18,252.252 INFO    ] 200
[2026-06-13 16:10:18,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:18,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:10:18,286.286 INFO    ] No update needed
[2026-06-13 16:10:18,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 16:10:18,306.306 INFO    ] 200
[2026-06-13 16:10:18,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:18,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:10:18,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:10:18,368.368 INFO    ] No camera update needed
[2026-06-13 16:10:18,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:10:18,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:10:18,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:10:18,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:10:20,416.416 INFO    ] ================================================
[2026-06-13 16:10:20,431.431 INFO    ] Launching Daemon at Sat Jun 13 16:10:20 IST 2026
[2026-06-13 16:10:20,442.442 INFO    ] ================================================
[2026-06-13 16:10:20,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:10:20
[2026-06-13 16:10:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:10:21,254.254 INFO    ] Initializing speech engine...
[2026-06-13 16:10:21,259.259 INFO    ] 2026-06-13 16:10:21
[2026-06-13 16:10:21,468.468 INFO    ] 2026-06-13 16:10:21
[2026-06-13 16:10:21,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:10:21,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:10:21,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:10:21,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:10:21,854.854 INFO    ] time= 13/06/2026 16:10:21
[2026-06-13 16:10:21,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:10:21,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:10:22,011.011 INFO    ] No existing commands found in stream
[2026-06-13 16:10:27,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:27,024.024 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 16:10:27,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:10:27,847.847 INFO    ] Checking for system updates...
[2026-06-13 16:10:27,868.868 INFO    ] 200
[2026-06-13 16:10:27,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:27,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:27,901.901 INFO    ] No update needed
[2026-06-13 16:10:27,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 16:10:27,921.921 INFO    ] 200
[2026-06-13 16:10:27,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:27,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:10:27,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:27,985.985 INFO    ] No camera update needed
[2026-06-13 16:10:27,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:10:27,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:10:27,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:10:27,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:10:30,031.031 INFO    ] ================================================
[2026-06-13 16:10:30,047.047 INFO    ] Launching Daemon at Sat Jun 13 16:10:30 IST 2026
[2026-06-13 16:10:30,058.058 INFO    ] ================================================
[2026-06-13 16:10:30,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:10:30
[2026-06-13 16:10:30,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:10:30,939.939 INFO    ] Initializing speech engine...
[2026-06-13 16:10:30,946.946 INFO    ] 2026-06-13 16:10:30
[2026-06-13 16:10:31,161.161 INFO    ] 2026-06-13 16:10:31
[2026-06-13 16:10:31,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:10:31,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:10:31,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:10:31,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:10:31,628.628 INFO    ] time= 13/06/2026 16:10:31
[2026-06-13 16:10:31,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:10:31,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:10:31,721.721 INFO    ] No existing commands found in stream
[2026-06-13 16:10:36,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:36,733.733 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 16:10:39,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:10:39,777.777 INFO    ] Checking for system updates...
[2026-06-13 16:10:39,798.798 INFO    ] 200
[2026-06-13 16:10:39,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:39,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:39,831.831 INFO    ] No update needed
[2026-06-13 16:10:39,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 16:10:39,854.854 INFO    ] 200
[2026-06-13 16:10:39,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:39,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:10:39,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:39,926.926 INFO    ] No camera update needed
[2026-06-13 16:10:39,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:10:39,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:10:39,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:10:39,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:10:41,965.965 INFO    ] ================================================
[2026-06-13 16:10:41,974.974 INFO    ] Launching Daemon at Sat Jun 13 16:10:41 IST 2026
[2026-06-13 16:10:41,984.984 INFO    ] ================================================
[2026-06-13 16:10:42,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:10:42
[2026-06-13 16:10:42,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:10:42,748.748 INFO    ] Initializing speech engine...
[2026-06-13 16:10:42,757.757 INFO    ] 2026-06-13 16:10:42
[2026-06-13 16:10:42,960.960 INFO    ] 2026-06-13 16:10:42
[2026-06-13 16:10:42,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:10:43,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:10:43,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:10:43,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:10:43,365.365 INFO    ] time= 13/06/2026 16:10:43
[2026-06-13 16:10:43,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:10:43,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:10:43,474.474 INFO    ] No existing commands found in stream
[2026-06-13 16:10:48,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:48,486.486 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 16:10:50,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:10:50,528.528 INFO    ] Checking for system updates...
[2026-06-13 16:10:50,551.551 INFO    ] 200
[2026-06-13 16:10:50,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:50,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:50,586.586 INFO    ] No update needed
[2026-06-13 16:10:50,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 16:10:50,609.609 INFO    ] 200
[2026-06-13 16:10:50,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:10:50,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:10:50,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:10:50,786.786 INFO    ] No camera update needed
[2026-06-13 16:10:50,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:10:50,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:10:50,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:10:50,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:10:52,835.835 INFO    ] ================================================
[2026-06-13 16:10:52,851.851 INFO    ] Launching Daemon at Sat Jun 13 16:10:52 IST 2026
[2026-06-13 16:10:52,865.865 INFO    ] ================================================
[2026-06-13 16:10:53,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:10:53
[2026-06-13 16:10:53,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:10:53,665.665 INFO    ] Initializing speech engine...
[2026-06-13 16:10:53,670.670 INFO    ] 2026-06-13 16:10:53
[2026-06-13 16:10:53,873.873 INFO    ] 2026-06-13 16:10:53
[2026-06-13 16:10:53,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:10:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:10:54,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:10:54,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:10:54,279.279 INFO    ] time= 13/06/2026 16:10:54
[2026-06-13 16:10:54,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:10:54,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:10:54,389.389 INFO    ] No existing commands found in stream
[2026-06-13 16:10:59,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:10:59,406.406 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 16:11:00,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:11:00,799.799 INFO    ] Checking for system updates...
[2026-06-13 16:11:00,821.821 INFO    ] 200
[2026-06-13 16:11:00,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:00,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:00,856.856 INFO    ] No update needed
[2026-06-13 16:11:00,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:00,876.876 INFO    ] 200
[2026-06-13 16:11:00,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:00,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:00,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:00,943.943 INFO    ] No camera update needed
[2026-06-13 16:11:00,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:00,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:00,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:00,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:11:02,980.980 INFO    ] ================================================
[2026-06-13 16:11:02,988.988 INFO    ] Launching Daemon at Sat Jun 13 16:11:02 IST 2026
[2026-06-13 16:11:02,994.994 INFO    ] ================================================
[2026-06-13 16:11:03,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:11:03
[2026-06-13 16:11:03,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:11:03,952.952 INFO    ] Initializing speech engine...
[2026-06-13 16:11:03,958.958 INFO    ] 2026-06-13 16:11:03
[2026-06-13 16:11:04,210.210 INFO    ] 2026-06-13 16:11:04
[2026-06-13 16:11:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:11:04,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:11:04,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:11:04,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:11:04,544.544 INFO    ] time= 13/06/2026 16:11:04
[2026-06-13 16:11:04,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:11:04,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:11:04,657.657 INFO    ] No existing commands found in stream
[2026-06-13 16:11:09,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:11:09,690.690 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 16:11:13,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:11:13,374.374 INFO    ] Checking for system updates...
[2026-06-13 16:11:13,395.395 INFO    ] 200
[2026-06-13 16:11:13,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:13,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:13,432.432 INFO    ] No update needed
[2026-06-13 16:11:13,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:13,453.453 INFO    ] 200
[2026-06-13 16:11:13,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:13,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:13,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:13,520.520 INFO    ] No camera update needed
[2026-06-13 16:11:13,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:13,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:13,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:13,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:11:15,571.571 INFO    ] ================================================
[2026-06-13 16:11:15,587.587 INFO    ] Launching Daemon at Sat Jun 13 16:11:15 IST 2026
[2026-06-13 16:11:15,598.598 INFO    ] ================================================
[2026-06-13 16:11:15,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:11:15
[2026-06-13 16:11:16,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:11:16,451.451 INFO    ] Initializing speech engine...
[2026-06-13 16:11:16,456.456 INFO    ] 2026-06-13 16:11:16
[2026-06-13 16:11:16,665.665 INFO    ] 2026-06-13 16:11:16
[2026-06-13 16:11:16,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:11:16,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:11:16,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:11:17,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:11:17,063.063 INFO    ] time= 13/06/2026 16:11:17
[2026-06-13 16:11:17,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:11:17,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:11:17,185.185 INFO    ] No existing commands found in stream
[2026-06-13 16:11:22,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:11:22,198.198 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 16:11:25,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:11:25,854.854 INFO    ] Checking for system updates...
[2026-06-13 16:11:25,876.876 INFO    ] 200
[2026-06-13 16:11:25,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:25,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:25,913.913 INFO    ] No update needed
[2026-06-13 16:11:25,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:25,937.937 INFO    ] 200
[2026-06-13 16:11:25,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:25,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:25,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:26,000.000 INFO    ] No camera update needed
[2026-06-13 16:11:26,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:26,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:26,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:26,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:11:28,048.048 INFO    ] ================================================
[2026-06-13 16:11:28,064.064 INFO    ] Launching Daemon at Sat Jun 13 16:11:28 IST 2026
[2026-06-13 16:11:28,075.075 INFO    ] ================================================
[2026-06-13 16:11:28,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:11:28
[2026-06-13 16:11:28,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:11:28,886.886 INFO    ] Initializing speech engine...
[2026-06-13 16:11:28,898.898 INFO    ] 2026-06-13 16:11:28
[2026-06-13 16:11:29,116.116 INFO    ] 2026-06-13 16:11:29
[2026-06-13 16:11:29,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:11:29,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:11:29,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:11:29,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:11:29,526.526 INFO    ] time= 13/06/2026 16:11:29
[2026-06-13 16:11:29,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:11:29,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:11:29,680.680 INFO    ] No existing commands found in stream
[2026-06-13 16:11:34,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:11:34,694.694 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 16:11:36,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:11:36,553.553 INFO    ] Checking for system updates...
[2026-06-13 16:11:36,575.575 INFO    ] 200
[2026-06-13 16:11:36,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:36,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:36,608.608 INFO    ] No update needed
[2026-06-13 16:11:36,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:36,631.631 INFO    ] 200
[2026-06-13 16:11:36,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:36,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:36,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:11:36,694.694 INFO    ] No camera update needed
[2026-06-13 16:11:36,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:36,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:36,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:36,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:11:38,740.740 INFO    ] ================================================
[2026-06-13 16:11:38,755.755 INFO    ] Launching Daemon at Sat Jun 13 16:11:38 IST 2026
[2026-06-13 16:11:38,766.766 INFO    ] ================================================
[2026-06-13 16:11:39,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:11:39
[2026-06-13 16:11:39,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:11:39,629.629 INFO    ] Initializing speech engine...
[2026-06-13 16:11:39,635.635 INFO    ] 2026-06-13 16:11:39
[2026-06-13 16:11:39,842.842 INFO    ] 2026-06-13 16:11:39
[2026-06-13 16:11:39,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:11:40,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:11:40,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:11:40,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:11:40,195.195 INFO    ] time= 13/06/2026 16:11:40
[2026-06-13 16:11:40,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:11:40,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:11:40,415.415 INFO    ] No existing commands found in stream
[2026-06-13 16:11:45,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:11:45,430.430 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 16:11:48,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:11:48,329.329 INFO    ] Checking for system updates...
[2026-06-13 16:11:48,350.350 INFO    ] 200
[2026-06-13 16:11:48,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:48,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:11:48,384.384 INFO    ] No update needed
[2026-06-13 16:11:48,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:48,405.405 INFO    ] 200
[2026-06-13 16:11:48,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:48,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:48,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:11:48,472.472 INFO    ] No camera update needed
[2026-06-13 16:11:48,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:48,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:48,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:48,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:11:50,521.521 INFO    ] ================================================
[2026-06-13 16:11:50,536.536 INFO    ] Launching Daemon at Sat Jun 13 16:11:50 IST 2026
[2026-06-13 16:11:50,547.547 INFO    ] ================================================
[2026-06-13 16:11:50,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:11:50
[2026-06-13 16:11:51,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:11:51,362.362 INFO    ] Initializing speech engine...
[2026-06-13 16:11:51,367.367 INFO    ] 2026-06-13 16:11:51
[2026-06-13 16:11:51,571.571 INFO    ] 2026-06-13 16:11:51
[2026-06-13 16:11:51,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:11:51,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:11:51,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:11:51,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:11:51,825.825 INFO    ] time= 13/06/2026 16:11:51
[2026-06-13 16:11:51,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:11:51,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:11:51,898.898 INFO    ] No existing commands found in stream
[2026-06-13 16:11:56,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:11:56,931.931 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 16:11:58,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:11:58,717.717 INFO    ] Checking for system updates...
[2026-06-13 16:11:58,739.739 INFO    ] 200
[2026-06-13 16:11:58,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:58,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:11:58,773.773 INFO    ] No update needed
[2026-06-13 16:11:58,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 16:11:58,795.795 INFO    ] 200
[2026-06-13 16:11:58,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:11:58,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:11:58,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:11:58,862.862 INFO    ] No camera update needed
[2026-06-13 16:11:58,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:11:58,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:11:58,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:11:58,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:00,910.910 INFO    ] ================================================
[2026-06-13 16:12:00,925.925 INFO    ] Launching Daemon at Sat Jun 13 16:12:00 IST 2026
[2026-06-13 16:12:00,936.936 INFO    ] ================================================
[2026-06-13 16:12:01,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:01
[2026-06-13 16:12:01,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:01,796.796 INFO    ] Initializing speech engine...
[2026-06-13 16:12:01,807.807 INFO    ] 2026-06-13 16:12:01
[2026-06-13 16:12:02,039.039 INFO    ] 2026-06-13 16:12:02
[2026-06-13 16:12:02,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:02,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:02,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:02,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:02,303.303 INFO    ] time= 13/06/2026 16:12:02
[2026-06-13 16:12:02,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:02,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:02,425.425 INFO    ] No existing commands found in stream
[2026-06-13 16:12:07,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:12:07,444.444 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 16:12:09,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:12:09,055.055 INFO    ] Checking for system updates...
[2026-06-13 16:12:09,076.076 INFO    ] 200
[2026-06-13 16:12:09,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:09,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:09,113.113 INFO    ] No update needed
[2026-06-13 16:12:09,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 16:12:09,135.135 INFO    ] 200
[2026-06-13 16:12:09,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:09,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:12:09,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:09,218.218 INFO    ] No camera update needed
[2026-06-13 16:12:09,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:12:09,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:12:09,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:12:09,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:11,266.266 INFO    ] ================================================
[2026-06-13 16:12:11,281.281 INFO    ] Launching Daemon at Sat Jun 13 16:12:11 IST 2026
[2026-06-13 16:12:11,293.293 INFO    ] ================================================
[2026-06-13 16:12:11,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:11
[2026-06-13 16:12:12,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:12,162.162 INFO    ] Initializing speech engine...
[2026-06-13 16:12:12,165.165 INFO    ] 2026-06-13 16:12:12
[2026-06-13 16:12:12,376.376 INFO    ] 2026-06-13 16:12:12
[2026-06-13 16:12:12,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:12,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:12,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:12,799.799 INFO    ] time= 13/06/2026 16:12:12
[2026-06-13 16:12:12,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:12,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:12,895.895 INFO    ] No existing commands found in stream
[2026-06-13 16:12:17,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:12:17,911.911 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 16:12:18,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:12:18,707.707 INFO    ] Checking for system updates...
[2026-06-13 16:12:18,728.728 INFO    ] 200
[2026-06-13 16:12:18,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:18,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:18,762.762 INFO    ] No update needed
[2026-06-13 16:12:18,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 16:12:18,783.783 INFO    ] 200
[2026-06-13 16:12:18,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:18,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:12:18,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:18,849.849 INFO    ] No camera update needed
[2026-06-13 16:12:18,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:12:18,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:12:18,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:12:18,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:20,897.897 INFO    ] ================================================
[2026-06-13 16:12:20,913.913 INFO    ] Launching Daemon at Sat Jun 13 16:12:20 IST 2026
[2026-06-13 16:12:20,924.924 INFO    ] ================================================
[2026-06-13 16:12:21,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:21
[2026-06-13 16:12:21,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:21,703.703 INFO    ] Initializing speech engine...
[2026-06-13 16:12:21,709.709 INFO    ] 2026-06-13 16:12:21
[2026-06-13 16:12:21,930.930 INFO    ] 2026-06-13 16:12:21
[2026-06-13 16:12:21,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:22,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:22,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:22,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:22,355.355 INFO    ] time= 13/06/2026 16:12:22
[2026-06-13 16:12:22,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:22,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:22,541.541 INFO    ] No existing commands found in stream
[2026-06-13 16:12:27,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:12:27,568.568 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 16:12:29,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:12:29,861.861 INFO    ] Checking for system updates...
[2026-06-13 16:12:29,882.882 INFO    ] 200
[2026-06-13 16:12:29,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:29,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:12:29,919.919 INFO    ] No update needed
[2026-06-13 16:12:29,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 16:12:29,940.940 INFO    ] 200
[2026-06-13 16:12:29,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:29,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:12:29,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:12:29,990.990 INFO    ] No camera update needed
[2026-06-13 16:12:29,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:12:29,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:12:29,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:12:29,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:32,038.038 INFO    ] ================================================
[2026-06-13 16:12:32,055.055 INFO    ] Launching Daemon at Sat Jun 13 16:12:32 IST 2026
[2026-06-13 16:12:32,067.067 INFO    ] ================================================
[2026-06-13 16:12:32,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:32
[2026-06-13 16:12:32,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:32,982.982 INFO    ] Initializing speech engine...
[2026-06-13 16:12:32,987.987 INFO    ] 2026-06-13 16:12:32
[2026-06-13 16:12:33,191.191 INFO    ] 2026-06-13 16:12:33
[2026-06-13 16:12:33,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:33,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:33,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:33,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:33,600.600 INFO    ] time= 13/06/2026 16:12:33
[2026-06-13 16:12:33,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:33,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:33,792.792 INFO    ] No existing commands found in stream
[2026-06-13 16:12:38,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:12:38,814.814 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 16:12:41,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:12:41,757.757 INFO    ] Checking for system updates...
[2026-06-13 16:12:41,779.779 INFO    ] 200
[2026-06-13 16:12:41,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:41,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:41,815.815 INFO    ] No update needed
[2026-06-13 16:12:41,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 16:12:41,837.837 INFO    ] 200
[2026-06-13 16:12:41,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:41,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:12:41,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:41,910.910 INFO    ] No camera update needed
[2026-06-13 16:12:41,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:12:41,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:12:41,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:12:41,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:43,960.960 INFO    ] ================================================
[2026-06-13 16:12:43,975.975 INFO    ] Launching Daemon at Sat Jun 13 16:12:43 IST 2026
[2026-06-13 16:12:43,987.987 INFO    ] ================================================
[2026-06-13 16:12:44,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:44
[2026-06-13 16:12:44,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:44,861.861 INFO    ] Initializing speech engine...
[2026-06-13 16:12:44,866.866 INFO    ] 2026-06-13 16:12:44
[2026-06-13 16:12:45,077.077 INFO    ] 2026-06-13 16:12:45
[2026-06-13 16:12:45,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:45,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:45,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:45,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:45,492.492 INFO    ] time= 13/06/2026 16:12:45
[2026-06-13 16:12:45,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:45,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:45,599.599 INFO    ] No existing commands found in stream
[2026-06-13 16:12:50,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:12:50,617.617 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 16:12:54,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:12:54,456.456 INFO    ] Checking for system updates...
[2026-06-13 16:12:54,477.477 INFO    ] 200
[2026-06-13 16:12:54,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:54,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:54,512.512 INFO    ] No update needed
[2026-06-13 16:12:54,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 16:12:54,533.533 INFO    ] 200
[2026-06-13 16:12:54,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:12:54,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:12:54,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:12:54,702.702 INFO    ] No camera update needed
[2026-06-13 16:12:54,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:12:54,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:12:54,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:12:54,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:12:56,751.751 INFO    ] ================================================
[2026-06-13 16:12:56,767.767 INFO    ] Launching Daemon at Sat Jun 13 16:12:56 IST 2026
[2026-06-13 16:12:56,778.778 INFO    ] ================================================
[2026-06-13 16:12:57,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:12:57
[2026-06-13 16:12:57,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:12:57,605.605 INFO    ] Initializing speech engine...
[2026-06-13 16:12:57,610.610 INFO    ] 2026-06-13 16:12:57
[2026-06-13 16:12:57,814.814 INFO    ] 2026-06-13 16:12:57
[2026-06-13 16:12:57,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:12:57,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:12:58,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:12:58,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:12:58,230.230 INFO    ] time= 13/06/2026 16:12:58
[2026-06-13 16:12:58,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:12:58,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:12:58,327.327 INFO    ] No existing commands found in stream
[2026-06-13 16:13:03,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:03,339.339 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 16:13:05,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:13:05,190.190 INFO    ] Checking for system updates...
[2026-06-13 16:13:05,213.213 INFO    ] 200
[2026-06-13 16:13:05,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:05,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:13:05,246.246 INFO    ] No update needed
[2026-06-13 16:13:05,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 16:13:05,269.269 INFO    ] 200
[2026-06-13 16:13:05,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:05,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:13:05,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:13:05,338.338 INFO    ] No camera update needed
[2026-06-13 16:13:05,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:13:05,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:13:05,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:13:05,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:13:07,387.387 INFO    ] ================================================
[2026-06-13 16:13:07,402.402 INFO    ] Launching Daemon at Sat Jun 13 16:13:07 IST 2026
[2026-06-13 16:13:07,413.413 INFO    ] ================================================
[2026-06-13 16:13:07,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:13:07
[2026-06-13 16:13:08,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:13:08,221.221 INFO    ] Initializing speech engine...
[2026-06-13 16:13:08,225.225 INFO    ] 2026-06-13 16:13:08
[2026-06-13 16:13:08,444.444 INFO    ] 2026-06-13 16:13:08
[2026-06-13 16:13:08,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:13:08,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:13:08,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:13:08,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:13:08,869.869 INFO    ] time= 13/06/2026 16:13:08
[2026-06-13 16:13:08,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:13:08,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:13:08,966.966 INFO    ] No existing commands found in stream
[2026-06-13 16:13:13,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:13,978.978 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 16:13:17,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:13:17,457.457 INFO    ] Checking for system updates...
[2026-06-13 16:13:17,484.484 INFO    ] 200
[2026-06-13 16:13:17,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:17,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:17,525.525 INFO    ] No update needed
[2026-06-13 16:13:17,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 16:13:17,546.546 INFO    ] 200
[2026-06-13 16:13:17,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:17,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:13:17,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:17,617.617 INFO    ] No camera update needed
[2026-06-13 16:13:17,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:13:17,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:13:17,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:13:17,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:13:19,666.666 INFO    ] ================================================
[2026-06-13 16:13:19,681.681 INFO    ] Launching Daemon at Sat Jun 13 16:13:19 IST 2026
[2026-06-13 16:13:19,692.692 INFO    ] ================================================
[2026-06-13 16:13:20,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:13:20
[2026-06-13 16:13:20,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:13:20,502.502 INFO    ] Initializing speech engine...
[2026-06-13 16:13:20,515.515 INFO    ] 2026-06-13 16:13:20
[2026-06-13 16:13:20,735.735 INFO    ] 2026-06-13 16:13:20
[2026-06-13 16:13:20,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:13:20,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:13:20,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:13:21,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:13:21,164.164 INFO    ] time= 13/06/2026 16:13:21
[2026-06-13 16:13:21,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:13:21,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:13:21,298.298 INFO    ] No existing commands found in stream
[2026-06-13 16:13:26,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:26,311.311 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 16:13:27,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:13:27,131.131 INFO    ] Checking for system updates...
[2026-06-13 16:13:27,152.152 INFO    ] 200
[2026-06-13 16:13:27,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:27,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:27,185.185 INFO    ] No update needed
[2026-06-13 16:13:27,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 16:13:27,207.207 INFO    ] 200
[2026-06-13 16:13:27,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:27,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:13:27,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:27,280.280 INFO    ] No camera update needed
[2026-06-13 16:13:27,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:13:27,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:13:27,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:13:27,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:13:29,327.327 INFO    ] ================================================
[2026-06-13 16:13:29,343.343 INFO    ] Launching Daemon at Sat Jun 13 16:13:29 IST 2026
[2026-06-13 16:13:29,353.353 INFO    ] ================================================
[2026-06-13 16:13:29,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:13:29
[2026-06-13 16:13:30,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:13:30,214.214 INFO    ] Initializing speech engine...
[2026-06-13 16:13:30,220.220 INFO    ] 2026-06-13 16:13:30
[2026-06-13 16:13:30,431.431 INFO    ] 2026-06-13 16:13:30
[2026-06-13 16:13:30,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:13:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:13:30,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:13:30,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:13:30,842.842 INFO    ] time= 13/06/2026 16:13:30
[2026-06-13 16:13:30,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:13:30,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:13:30,955.955 INFO    ] No existing commands found in stream
[2026-06-13 16:13:35,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:35,973.973 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 16:13:39,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:13:39,922.922 INFO    ] Checking for system updates...
[2026-06-13 16:13:39,945.945 INFO    ] 200
[2026-06-13 16:13:39,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:39,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:13:39,980.980 INFO    ] No update needed
[2026-06-13 16:13:39,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 16:13:40,001.001 INFO    ] 200
[2026-06-13 16:13:40,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:40,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:13:40,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:40,065.065 INFO    ] No camera update needed
[2026-06-13 16:13:40,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:13:40,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:13:40,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:13:40,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:13:42,111.111 INFO    ] ================================================
[2026-06-13 16:13:42,127.127 INFO    ] Launching Daemon at Sat Jun 13 16:13:42 IST 2026
[2026-06-13 16:13:42,137.137 INFO    ] ================================================
[2026-06-13 16:13:42,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:13:42
[2026-06-13 16:13:42,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:13:42,955.955 INFO    ] Initializing speech engine...
[2026-06-13 16:13:42,965.965 INFO    ] 2026-06-13 16:13:42
[2026-06-13 16:13:43,169.169 INFO    ] 2026-06-13 16:13:43
[2026-06-13 16:13:43,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:13:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:13:43,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:13:43,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:13:43,585.585 INFO    ] time= 13/06/2026 16:13:43
[2026-06-13 16:13:43,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:13:43,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:13:43,680.680 INFO    ] No existing commands found in stream
[2026-06-13 16:13:48,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:48,693.693 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 16:13:50,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:13:50,736.736 INFO    ] Checking for system updates...
[2026-06-13 16:13:50,760.760 INFO    ] 200
[2026-06-13 16:13:50,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:50,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:50,799.799 INFO    ] No update needed
[2026-06-13 16:13:50,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 16:13:50,823.823 INFO    ] 200
[2026-06-13 16:13:50,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:13:50,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:13:50,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:13:50,886.886 INFO    ] No camera update needed
[2026-06-13 16:13:50,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:13:50,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:13:50,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:13:50,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:13:52,936.936 INFO    ] ================================================
[2026-06-13 16:13:52,951.951 INFO    ] Launching Daemon at Sat Jun 13 16:13:52 IST 2026
[2026-06-13 16:13:52,962.962 INFO    ] ================================================
[2026-06-13 16:13:53,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:13:53
[2026-06-13 16:13:53,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:13:53,777.777 INFO    ] Initializing speech engine...
[2026-06-13 16:13:53,782.782 INFO    ] 2026-06-13 16:13:53
[2026-06-13 16:13:54,000.000 INFO    ] 2026-06-13 16:13:53
[2026-06-13 16:13:54,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:13:54,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:13:54,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:13:54,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:13:54,434.434 INFO    ] time= 13/06/2026 16:13:54
[2026-06-13 16:13:54,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:13:54,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:13:54,562.562 INFO    ] No existing commands found in stream
[2026-06-13 16:13:59,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:13:59,576.576 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 16:14:03,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:14:03,099.099 INFO    ] Checking for system updates...
[2026-06-13 16:14:03,120.120 INFO    ] 200
[2026-06-13 16:14:03,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:03,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:14:03,157.157 INFO    ] No update needed
[2026-06-13 16:14:03,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 16:14:03,178.178 INFO    ] 200
[2026-06-13 16:14:03,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:03,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:14:03,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:14:03,248.248 INFO    ] No camera update needed
[2026-06-13 16:14:03,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:14:03,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:14:03,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:14:03,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:14:05,296.296 INFO    ] ================================================
[2026-06-13 16:14:05,311.311 INFO    ] Launching Daemon at Sat Jun 13 16:14:05 IST 2026
[2026-06-13 16:14:05,321.321 INFO    ] ================================================
[2026-06-13 16:14:05,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:14:05
[2026-06-13 16:14:06,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:14:06,643.643 INFO    ] Initializing speech engine...
[2026-06-13 16:14:06,651.651 INFO    ] 2026-06-13 16:14:06
[2026-06-13 16:14:06,906.906 INFO    ] 2026-06-13 16:14:06
[2026-06-13 16:14:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:14:07,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:14:07,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:14:07,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:14:07,354.354 INFO    ] time= 13/06/2026 16:14:07
[2026-06-13 16:14:07,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:14:07,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:14:07,486.486 INFO    ] No existing commands found in stream
[2026-06-13 16:14:12,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:14:12,500.500 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 16:14:16,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:14:16,524.524 INFO    ] Checking for system updates...
[2026-06-13 16:14:16,545.545 INFO    ] 200
[2026-06-13 16:14:16,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:16,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:14:16,578.578 INFO    ] No update needed
[2026-06-13 16:14:16,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 16:14:16,600.600 INFO    ] 200
[2026-06-13 16:14:16,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:16,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:14:16,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:14:16,665.665 INFO    ] No camera update needed
[2026-06-13 16:14:16,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:14:16,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:14:16,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:14:16,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:14:18,712.712 INFO    ] ================================================
[2026-06-13 16:14:18,727.727 INFO    ] Launching Daemon at Sat Jun 13 16:14:18 IST 2026
[2026-06-13 16:14:18,738.738 INFO    ] ================================================
[2026-06-13 16:14:19,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:14:19
[2026-06-13 16:14:19,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:14:19,544.544 INFO    ] Initializing speech engine...
[2026-06-13 16:14:19,548.548 INFO    ] 2026-06-13 16:14:19
[2026-06-13 16:14:19,752.752 INFO    ] 2026-06-13 16:14:19
[2026-06-13 16:14:19,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:14:19,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:14:19,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:14:20,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:14:20,172.172 INFO    ] time= 13/06/2026 16:14:20
[2026-06-13 16:14:20,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:14:20,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:14:20,267.267 INFO    ] No existing commands found in stream
[2026-06-13 16:14:25,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:14:25,281.281 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 16:14:27,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:14:27,950.950 INFO    ] Checking for system updates...
[2026-06-13 16:14:27,990.990 INFO    ] 200
[2026-06-13 16:14:27,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:28,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:28,054.054 INFO    ] No update needed
[2026-06-13 16:14:28,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 16:14:28,090.090 INFO    ] 200
[2026-06-13 16:14:28,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:28,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:14:28,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:28,161.161 INFO    ] No camera update needed
[2026-06-13 16:14:28,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:14:28,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:14:28,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:14:28,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:14:30,209.209 INFO    ] ================================================
[2026-06-13 16:14:30,224.224 INFO    ] Launching Daemon at Sat Jun 13 16:14:30 IST 2026
[2026-06-13 16:14:30,235.235 INFO    ] ================================================
[2026-06-13 16:14:30,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:14:30
[2026-06-13 16:14:30,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:14:31,080.080 INFO    ] Initializing speech engine...
[2026-06-13 16:14:31,085.085 INFO    ] 2026-06-13 16:14:31
[2026-06-13 16:14:31,308.308 INFO    ] 2026-06-13 16:14:31
[2026-06-13 16:14:31,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:14:31,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:14:31,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:14:31,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:14:31,752.752 INFO    ] time= 13/06/2026 16:14:31
[2026-06-13 16:14:31,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:14:31,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:14:31,908.908 INFO    ] No existing commands found in stream
[2026-06-13 16:14:36,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:14:36,928.928 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 16:14:38,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:14:38,615.615 INFO    ] Checking for system updates...
[2026-06-13 16:14:38,638.638 INFO    ] 200
[2026-06-13 16:14:38,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:38,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:38,672.672 INFO    ] No update needed
[2026-06-13 16:14:38,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 16:14:38,694.694 INFO    ] 200
[2026-06-13 16:14:38,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:38,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:14:38,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:38,765.765 INFO    ] No camera update needed
[2026-06-13 16:14:38,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:14:38,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:14:38,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:14:38,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:14:40,812.812 INFO    ] ================================================
[2026-06-13 16:14:40,827.827 INFO    ] Launching Daemon at Sat Jun 13 16:14:40 IST 2026
[2026-06-13 16:14:40,838.838 INFO    ] ================================================
[2026-06-13 16:14:41,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:14:41
[2026-06-13 16:14:41,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:14:41,721.721 INFO    ] Initializing speech engine...
[2026-06-13 16:14:41,727.727 INFO    ] 2026-06-13 16:14:41
[2026-06-13 16:14:41,937.937 INFO    ] 2026-06-13 16:14:41
[2026-06-13 16:14:41,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:14:42,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:14:42,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:14:42,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:14:42,364.364 INFO    ] time= 13/06/2026 16:14:42
[2026-06-13 16:14:42,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:14:42,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:14:42,461.461 INFO    ] No existing commands found in stream
[2026-06-13 16:14:47,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:14:47,475.475 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 16:14:48,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:14:48,589.589 INFO    ] Checking for system updates...
[2026-06-13 16:14:48,611.611 INFO    ] 200
[2026-06-13 16:14:48,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:48,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:48,645.645 INFO    ] No update needed
[2026-06-13 16:14:48,646.646 INFO    ] Checking for camera pi updates...
[2026-06-13 16:14:48,667.667 INFO    ] 200
[2026-06-13 16:14:48,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:14:48,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:14:48,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:14:48,736.736 INFO    ] No camera update needed
[2026-06-13 16:14:48,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:14:48,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:14:48,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:14:48,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:14:50,785.785 INFO    ] ================================================
[2026-06-13 16:14:50,800.800 INFO    ] Launching Daemon at Sat Jun 13 16:14:50 IST 2026
[2026-06-13 16:14:50,811.811 INFO    ] ================================================
[2026-06-13 16:14:51,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:14:51
[2026-06-13 16:14:51,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:14:51,619.619 INFO    ] Initializing speech engine...
[2026-06-13 16:14:51,623.623 INFO    ] 2026-06-13 16:14:51
[2026-06-13 16:14:51,828.828 INFO    ] 2026-06-13 16:14:51
[2026-06-13 16:14:51,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:14:52,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:14:52,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:14:52,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:14:52,247.247 INFO    ] time= 13/06/2026 16:14:52
[2026-06-13 16:14:52,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:14:52,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:14:52,341.341 INFO    ] No existing commands found in stream
[2026-06-13 16:14:57,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:14:57,353.353 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 16:15:01,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:15:01,256.256 INFO    ] Checking for system updates...
[2026-06-13 16:15:01,381.381 INFO    ] 200
[2026-06-13 16:15:01,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:01,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:15:01,490.490 INFO    ] No update needed
[2026-06-13 16:15:01,493.493 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:01,590.590 INFO    ] 200
[2026-06-13 16:15:01,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:01,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:01,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:15:01,819.819 INFO    ] No camera update needed
[2026-06-13 16:15:01,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:01,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:01,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:01,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:15:03,867.867 INFO    ] ================================================
[2026-06-13 16:15:03,882.882 INFO    ] Launching Daemon at Sat Jun 13 16:15:03 IST 2026
[2026-06-13 16:15:03,892.892 INFO    ] ================================================
[2026-06-13 16:15:04,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:15:04
[2026-06-13 16:15:04,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:15:04,675.675 INFO    ] Initializing speech engine...
[2026-06-13 16:15:04,685.685 INFO    ] 2026-06-13 16:15:04
[2026-06-13 16:15:04,890.890 INFO    ] 2026-06-13 16:15:04
[2026-06-13 16:15:04,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:15:05,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:15:05,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:15:05,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:15:05,277.277 INFO    ] time= 13/06/2026 16:15:05
[2026-06-13 16:15:05,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:15:05,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:15:05,414.414 INFO    ] No existing commands found in stream
[2026-06-13 16:15:10,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:15:10,435.435 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 16:15:14,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:15:14,300.300 INFO    ] Checking for system updates...
[2026-06-13 16:15:14,321.321 INFO    ] 200
[2026-06-13 16:15:14,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:14,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:14,355.355 INFO    ] No update needed
[2026-06-13 16:15:14,356.356 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:14,375.375 INFO    ] 200
[2026-06-13 16:15:14,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:14,400.400 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:14,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:14,442.442 INFO    ] No camera update needed
[2026-06-13 16:15:14,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:14,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:14,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:14,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:15:16,489.489 INFO    ] ================================================
[2026-06-13 16:15:16,504.504 INFO    ] Launching Daemon at Sat Jun 13 16:15:16 IST 2026
[2026-06-13 16:15:16,515.515 INFO    ] ================================================
[2026-06-13 16:15:16,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:15:16
[2026-06-13 16:15:17,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:15:17,281.281 INFO    ] Initializing speech engine...
[2026-06-13 16:15:17,289.289 INFO    ] 2026-06-13 16:15:17
[2026-06-13 16:15:17,502.502 INFO    ] 2026-06-13 16:15:17
[2026-06-13 16:15:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:15:17,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:15:17,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:15:17,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:15:17,928.928 INFO    ] time= 13/06/2026 16:15:17
[2026-06-13 16:15:17,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:15:17,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:15:18,025.025 INFO    ] No existing commands found in stream
[2026-06-13 16:15:23,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:15:23,038.038 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 16:15:26,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:15:26,467.467 INFO    ] Checking for system updates...
[2026-06-13 16:15:26,489.489 INFO    ] 200
[2026-06-13 16:15:26,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:26,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:26,524.524 INFO    ] No update needed
[2026-06-13 16:15:26,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:26,546.546 INFO    ] 200
[2026-06-13 16:15:26,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:26,571.571 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:26,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:26,611.611 INFO    ] No camera update needed
[2026-06-13 16:15:26,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:26,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:26,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:26,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:15:28,659.659 INFO    ] ================================================
[2026-06-13 16:15:28,674.674 INFO    ] Launching Daemon at Sat Jun 13 16:15:28 IST 2026
[2026-06-13 16:15:28,684.684 INFO    ] ================================================
[2026-06-13 16:15:29,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:15:29
[2026-06-13 16:15:29,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:15:29,495.495 INFO    ] Initializing speech engine...
[2026-06-13 16:15:29,500.500 INFO    ] 2026-06-13 16:15:29
[2026-06-13 16:15:29,704.704 INFO    ] 2026-06-13 16:15:29
[2026-06-13 16:15:29,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:15:29,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:15:29,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:15:30,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:15:30,113.113 INFO    ] time= 13/06/2026 16:15:30
[2026-06-13 16:15:30,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:15:30,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:15:30,218.218 INFO    ] No existing commands found in stream
[2026-06-13 16:15:35,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:15:35,231.231 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 16:15:37,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:15:37,846.846 INFO    ] Checking for system updates...
[2026-06-13 16:15:37,867.867 INFO    ] 200
[2026-06-13 16:15:37,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:37,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:37,901.901 INFO    ] No update needed
[2026-06-13 16:15:37,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:37,923.923 INFO    ] 200
[2026-06-13 16:15:37,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:37,949.949 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:37,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:15:37,993.993 INFO    ] No camera update needed
[2026-06-13 16:15:37,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:37,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:37,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:38,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:15:40,041.041 INFO    ] ================================================
[2026-06-13 16:15:40,056.056 INFO    ] Launching Daemon at Sat Jun 13 16:15:40 IST 2026
[2026-06-13 16:15:40,067.067 INFO    ] ================================================
[2026-06-13 16:15:40,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:15:40
[2026-06-13 16:15:40,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:15:40,868.868 INFO    ] Initializing speech engine...
[2026-06-13 16:15:40,876.876 INFO    ] 2026-06-13 16:15:40
[2026-06-13 16:15:41,101.101 INFO    ] 2026-06-13 16:15:41
[2026-06-13 16:15:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:15:41,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:15:41,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:15:41,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:15:41,516.516 INFO    ] time= 13/06/2026 16:15:41
[2026-06-13 16:15:41,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:15:41,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:15:41,658.658 INFO    ] No existing commands found in stream
[2026-06-13 16:15:46,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:15:46,672.672 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 16:15:47,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:15:47,615.615 INFO    ] Checking for system updates...
[2026-06-13 16:15:47,636.636 INFO    ] 200
[2026-06-13 16:15:47,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:47,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:47,669.669 INFO    ] No update needed
[2026-06-13 16:15:47,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:47,692.692 INFO    ] 200
[2026-06-13 16:15:47,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:47,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:47,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:15:47,764.764 INFO    ] No camera update needed
[2026-06-13 16:15:47,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:47,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:47,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:47,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:15:49,812.812 INFO    ] ================================================
[2026-06-13 16:15:49,828.828 INFO    ] Launching Daemon at Sat Jun 13 16:15:49 IST 2026
[2026-06-13 16:15:49,840.840 INFO    ] ================================================
[2026-06-13 16:15:50,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:15:50
[2026-06-13 16:15:50,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:15:50,646.646 INFO    ] Initializing speech engine...
[2026-06-13 16:15:50,652.652 INFO    ] 2026-06-13 16:15:50
[2026-06-13 16:15:50,856.856 INFO    ] 2026-06-13 16:15:50
[2026-06-13 16:15:50,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:15:51,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:15:51,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:15:51,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:15:51,274.274 INFO    ] time= 13/06/2026 16:15:51
[2026-06-13 16:15:51,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:15:51,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:15:51,375.375 INFO    ] No existing commands found in stream
[2026-06-13 16:15:56,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:15:56,392.392 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 16:15:58,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:15:58,315.315 INFO    ] Checking for system updates...
[2026-06-13 16:15:58,337.337 INFO    ] 200
[2026-06-13 16:15:58,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:58,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:15:58,373.373 INFO    ] No update needed
[2026-06-13 16:15:58,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 16:15:58,394.394 INFO    ] 200
[2026-06-13 16:15:58,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:15:58,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:15:58,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:15:58,466.466 INFO    ] No camera update needed
[2026-06-13 16:15:58,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:15:58,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:15:58,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:15:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:00,515.515 INFO    ] ================================================
[2026-06-13 16:16:00,530.530 INFO    ] Launching Daemon at Sat Jun 13 16:16:00 IST 2026
[2026-06-13 16:16:00,541.541 INFO    ] ================================================
[2026-06-13 16:16:00,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:00
[2026-06-13 16:16:01,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:01,527.527 INFO    ] Initializing speech engine...
[2026-06-13 16:16:01,554.554 INFO    ] 2026-06-13 16:16:01
[2026-06-13 16:16:01,978.978 INFO    ] 2026-06-13 16:16:01
[2026-06-13 16:16:02,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:02,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:02,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:02,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:02,543.543 INFO    ] time= 13/06/2026 16:16:02
[2026-06-13 16:16:02,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:02,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:02,713.713 INFO    ] No existing commands found in stream
[2026-06-13 16:16:07,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:07,728.728 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 16:16:08,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:16:08,517.517 INFO    ] Checking for system updates...
[2026-06-13 16:16:08,538.538 INFO    ] 200
[2026-06-13 16:16:08,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:08,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:08,571.571 INFO    ] No update needed
[2026-06-13 16:16:08,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 16:16:08,593.593 INFO    ] 200
[2026-06-13 16:16:08,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:08,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:16:08,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:08,654.654 INFO    ] No camera update needed
[2026-06-13 16:16:08,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:16:08,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:16:08,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:16:08,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:10,702.702 INFO    ] ================================================
[2026-06-13 16:16:10,716.716 INFO    ] Launching Daemon at Sat Jun 13 16:16:10 IST 2026
[2026-06-13 16:16:10,727.727 INFO    ] ================================================
[2026-06-13 16:16:11,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:11
[2026-06-13 16:16:11,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:11,577.577 INFO    ] Initializing speech engine...
[2026-06-13 16:16:11,581.581 INFO    ] 2026-06-13 16:16:11
[2026-06-13 16:16:11,790.790 INFO    ] 2026-06-13 16:16:11
[2026-06-13 16:16:11,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:12,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:12,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:12,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:12,213.213 INFO    ] time= 13/06/2026 16:16:12
[2026-06-13 16:16:12,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:12,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:12,316.316 INFO    ] No existing commands found in stream
[2026-06-13 16:16:17,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:17,334.334 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 16:16:18,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:16:18,598.598 INFO    ] Checking for system updates...
[2026-06-13 16:16:18,619.619 INFO    ] 200
[2026-06-13 16:16:18,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:18,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:16:18,656.656 INFO    ] No update needed
[2026-06-13 16:16:18,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 16:16:18,678.678 INFO    ] 200
[2026-06-13 16:16:18,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:18,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:16:18,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:16:18,740.740 INFO    ] No camera update needed
[2026-06-13 16:16:18,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:16:18,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:16:18,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:16:18,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:20,787.787 INFO    ] ================================================
[2026-06-13 16:16:20,802.802 INFO    ] Launching Daemon at Sat Jun 13 16:16:20 IST 2026
[2026-06-13 16:16:20,813.813 INFO    ] ================================================
[2026-06-13 16:16:21,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:21
[2026-06-13 16:16:21,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:21,649.649 INFO    ] Initializing speech engine...
[2026-06-13 16:16:21,655.655 INFO    ] 2026-06-13 16:16:21
[2026-06-13 16:16:21,860.860 INFO    ] 2026-06-13 16:16:21
[2026-06-13 16:16:21,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:22,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:22,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:22,282.282 INFO    ] time= 13/06/2026 16:16:22
[2026-06-13 16:16:22,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:22,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:22,381.381 INFO    ] No existing commands found in stream
[2026-06-13 16:16:27,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:27,398.398 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 16:16:28,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:16:28,758.758 INFO    ] Checking for system updates...
[2026-06-13 16:16:28,780.780 INFO    ] 200
[2026-06-13 16:16:28,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:28,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:28,813.813 INFO    ] No update needed
[2026-06-13 16:16:28,815.815 INFO    ] Checking for camera pi updates...
[2026-06-13 16:16:28,834.834 INFO    ] 200
[2026-06-13 16:16:28,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:28,859.859 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:16:28,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:28,895.895 INFO    ] No camera update needed
[2026-06-13 16:16:28,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:16:28,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:16:28,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:16:28,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:30,941.941 INFO    ] ================================================
[2026-06-13 16:16:30,957.957 INFO    ] Launching Daemon at Sat Jun 13 16:16:30 IST 2026
[2026-06-13 16:16:30,968.968 INFO    ] ================================================
[2026-06-13 16:16:31,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:31
[2026-06-13 16:16:31,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:31,817.817 INFO    ] Initializing speech engine...
[2026-06-13 16:16:31,831.831 INFO    ] 2026-06-13 16:16:31
[2026-06-13 16:16:32,063.063 INFO    ] 2026-06-13 16:16:32
[2026-06-13 16:16:32,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:32,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:32,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:32,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:32,515.515 INFO    ] time= 13/06/2026 16:16:32
[2026-06-13 16:16:32,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:32,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:32,616.616 INFO    ] No existing commands found in stream
[2026-06-13 16:16:37,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:37,629.629 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 16:16:38,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:16:38,900.900 INFO    ] Checking for system updates...
[2026-06-13 16:16:38,921.921 INFO    ] 200
[2026-06-13 16:16:38,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:38,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:38,955.955 INFO    ] No update needed
[2026-06-13 16:16:38,956.956 INFO    ] Checking for camera pi updates...
[2026-06-13 16:16:38,975.975 INFO    ] 200
[2026-06-13 16:16:38,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:39,002.002 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:16:39,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:39,046.046 INFO    ] No camera update needed
[2026-06-13 16:16:39,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:16:39,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:16:39,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:16:39,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:41,094.094 INFO    ] ================================================
[2026-06-13 16:16:41,110.110 INFO    ] Launching Daemon at Sat Jun 13 16:16:41 IST 2026
[2026-06-13 16:16:41,120.120 INFO    ] ================================================
[2026-06-13 16:16:41,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:41
[2026-06-13 16:16:41,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:41,971.971 INFO    ] Initializing speech engine...
[2026-06-13 16:16:41,976.976 INFO    ] 2026-06-13 16:16:41
[2026-06-13 16:16:42,183.183 INFO    ] 2026-06-13 16:16:42
[2026-06-13 16:16:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:42,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:42,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:42,604.604 INFO    ] time= 13/06/2026 16:16:42
[2026-06-13 16:16:42,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:42,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:42,700.700 INFO    ] No existing commands found in stream
[2026-06-13 16:16:47,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:47,712.712 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 16:16:50,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:16:50,407.407 INFO    ] Checking for system updates...
[2026-06-13 16:16:50,428.428 INFO    ] 200
[2026-06-13 16:16:50,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:50,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:16:50,461.461 INFO    ] No update needed
[2026-06-13 16:16:50,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 16:16:50,482.482 INFO    ] 200
[2026-06-13 16:16:50,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:16:50,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:16:50,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:16:50,545.545 INFO    ] No camera update needed
[2026-06-13 16:16:50,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:16:50,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:16:50,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:16:50,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:16:52,592.592 INFO    ] ================================================
[2026-06-13 16:16:52,607.607 INFO    ] Launching Daemon at Sat Jun 13 16:16:52 IST 2026
[2026-06-13 16:16:52,617.617 INFO    ] ================================================
[2026-06-13 16:16:52,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:16:52
[2026-06-13 16:16:53,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:16:53,465.465 INFO    ] Initializing speech engine...
[2026-06-13 16:16:53,470.470 INFO    ] 2026-06-13 16:16:53
[2026-06-13 16:16:53,680.680 INFO    ] 2026-06-13 16:16:53
[2026-06-13 16:16:53,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:16:53,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:16:53,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:16:54,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:16:54,084.084 INFO    ] time= 13/06/2026 16:16:54
[2026-06-13 16:16:54,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:16:54,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:16:54,192.192 INFO    ] No existing commands found in stream
[2026-06-13 16:16:59,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:16:59,204.204 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 16:17:02,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:17:02,169.169 INFO    ] Checking for system updates...
[2026-06-13 16:17:02,198.198 INFO    ] 200
[2026-06-13 16:17:02,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:02,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:17:02,240.240 INFO    ] No update needed
[2026-06-13 16:17:02,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 16:17:02,265.265 INFO    ] 200
[2026-06-13 16:17:02,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:02,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:17:02,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:17:02,335.335 INFO    ] No camera update needed
[2026-06-13 16:17:02,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:17:02,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:17:02,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:17:02,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:17:04,388.388 INFO    ] ================================================
[2026-06-13 16:17:04,403.403 INFO    ] Launching Daemon at Sat Jun 13 16:17:04 IST 2026
[2026-06-13 16:17:04,414.414 INFO    ] ================================================
[2026-06-13 16:17:04,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:17:04
[2026-06-13 16:17:05,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:17:05,243.243 INFO    ] Initializing speech engine...
[2026-06-13 16:17:05,248.248 INFO    ] 2026-06-13 16:17:05
[2026-06-13 16:17:05,455.455 INFO    ] 2026-06-13 16:17:05
[2026-06-13 16:17:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:17:05,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:17:05,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:17:05,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:17:05,908.908 INFO    ] time= 13/06/2026 16:17:05
[2026-06-13 16:17:05,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:17:05,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:17:05,983.983 INFO    ] No existing commands found in stream
[2026-06-13 16:17:10,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:17:11,000.000 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 16:17:14,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:17:14,815.815 INFO    ] Checking for system updates...
[2026-06-13 16:17:14,836.836 INFO    ] 200
[2026-06-13 16:17:14,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:14,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:17:14,870.870 INFO    ] No update needed
[2026-06-13 16:17:14,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 16:17:14,894.894 INFO    ] 200
[2026-06-13 16:17:14,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:14,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:17:15,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:17:15,062.062 INFO    ] No camera update needed
[2026-06-13 16:17:15,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:17:15,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:17:15,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:17:15,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:17:17,108.108 INFO    ] ================================================
[2026-06-13 16:17:17,124.124 INFO    ] Launching Daemon at Sat Jun 13 16:17:17 IST 2026
[2026-06-13 16:17:17,134.134 INFO    ] ================================================
[2026-06-13 16:17:17,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:17:17
[2026-06-13 16:17:17,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:17:17,950.950 INFO    ] Initializing speech engine...
[2026-06-13 16:17:17,963.963 INFO    ] 2026-06-13 16:17:17
[2026-06-13 16:17:18,212.212 INFO    ] 2026-06-13 16:17:18
[2026-06-13 16:17:18,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:17:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:17:18,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:17:18,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:17:18,619.619 INFO    ] time= 13/06/2026 16:17:18
[2026-06-13 16:17:18,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:17:18,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:17:18,730.730 INFO    ] No existing commands found in stream
[2026-06-13 16:17:23,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:17:23,746.746 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 16:17:26,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:17:26,840.840 INFO    ] Checking for system updates...
[2026-06-13 16:17:26,861.861 INFO    ] 200
[2026-06-13 16:17:26,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:26,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:17:26,893.893 INFO    ] No update needed
[2026-06-13 16:17:26,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 16:17:26,916.916 INFO    ] 200
[2026-06-13 16:17:26,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:26,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:17:26,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:17:26,982.982 INFO    ] No camera update needed
[2026-06-13 16:17:26,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:17:26,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:17:26,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:17:26,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:17:29,030.030 INFO    ] ================================================
[2026-06-13 16:17:29,045.045 INFO    ] Launching Daemon at Sat Jun 13 16:17:29 IST 2026
[2026-06-13 16:17:29,056.056 INFO    ] ================================================
[2026-06-13 16:17:29,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:17:29
[2026-06-13 16:17:29,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:17:29,865.865 INFO    ] Initializing speech engine...
[2026-06-13 16:17:29,874.874 INFO    ] 2026-06-13 16:17:29
[2026-06-13 16:17:30,079.079 INFO    ] 2026-06-13 16:17:30
[2026-06-13 16:17:30,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:17:30,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:17:30,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:17:30,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:17:30,487.487 INFO    ] time= 13/06/2026 16:17:30
[2026-06-13 16:17:30,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:17:30,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:17:30,590.590 INFO    ] No existing commands found in stream
[2026-06-13 16:17:35,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:17:35,604.604 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 16:17:38,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:17:38,662.662 INFO    ] Checking for system updates...
[2026-06-13 16:17:38,684.684 INFO    ] 200
[2026-06-13 16:17:38,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:38,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:17:38,717.717 INFO    ] No update needed
[2026-06-13 16:17:38,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 16:17:38,738.738 INFO    ] 200
[2026-06-13 16:17:38,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:38,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:17:38,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:17:38,803.803 INFO    ] No camera update needed
[2026-06-13 16:17:38,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:17:38,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:17:38,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:17:38,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:17:40,852.852 INFO    ] ================================================
[2026-06-13 16:17:40,867.867 INFO    ] Launching Daemon at Sat Jun 13 16:17:40 IST 2026
[2026-06-13 16:17:40,878.878 INFO    ] ================================================
[2026-06-13 16:17:41,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:17:41
[2026-06-13 16:17:41,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:17:41,693.693 INFO    ] Initializing speech engine...
[2026-06-13 16:17:41,699.699 INFO    ] 2026-06-13 16:17:41
[2026-06-13 16:17:41,914.914 INFO    ] 2026-06-13 16:17:41
[2026-06-13 16:17:41,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:17:42,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:17:42,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:17:42,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:17:42,346.346 INFO    ] time= 13/06/2026 16:17:42
[2026-06-13 16:17:42,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:17:42,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:17:42,443.443 INFO    ] No existing commands found in stream
[2026-06-13 16:17:47,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:17:47,464.464 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 16:17:48,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:17:48,509.509 INFO    ] Checking for system updates...
[2026-06-13 16:17:48,552.552 INFO    ] 200
[2026-06-13 16:17:48,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:48,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:17:48,637.637 INFO    ] No update needed
[2026-06-13 16:17:48,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 16:17:48,677.677 INFO    ] 200
[2026-06-13 16:17:48,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:17:48,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:17:48,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:17:48,772.772 INFO    ] No camera update needed
[2026-06-13 16:17:48,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:17:48,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:17:48,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:17:48,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:17:50,831.831 INFO    ] ================================================
[2026-06-13 16:17:50,848.848 INFO    ] Launching Daemon at Sat Jun 13 16:17:50 IST 2026
[2026-06-13 16:17:50,860.860 INFO    ] ================================================
[2026-06-13 16:17:51,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:17:51
[2026-06-13 16:17:51,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:17:51,832.832 INFO    ] Initializing speech engine...
[2026-06-13 16:17:51,838.838 INFO    ] 2026-06-13 16:17:51
[2026-06-13 16:17:52,053.053 INFO    ] 2026-06-13 16:17:52
[2026-06-13 16:17:52,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:17:52,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:17:52,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:17:52,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:17:52,436.436 INFO    ] time= 13/06/2026 16:17:52
[2026-06-13 16:17:52,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:17:52,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:17:52,600.600 INFO    ] No existing commands found in stream
[2026-06-13 16:17:57,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:17:57,613.613 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 16:18:01,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:18:01,270.270 INFO    ] Checking for system updates...
[2026-06-13 16:18:01,291.291 INFO    ] 200
[2026-06-13 16:18:01,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:01,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:01,328.328 INFO    ] No update needed
[2026-06-13 16:18:01,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:01,350.350 INFO    ] 200
[2026-06-13 16:18:01,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:01,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:01,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:01,418.418 INFO    ] No camera update needed
[2026-06-13 16:18:01,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:01,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:01,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:01,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:03,459.459 INFO    ] ================================================
[2026-06-13 16:18:03,474.474 INFO    ] Launching Daemon at Sat Jun 13 16:18:03 IST 2026
[2026-06-13 16:18:03,485.485 INFO    ] ================================================
[2026-06-13 16:18:03,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:03
[2026-06-13 16:18:04,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:04,307.307 INFO    ] Initializing speech engine...
[2026-06-13 16:18:04,312.312 INFO    ] 2026-06-13 16:18:04
[2026-06-13 16:18:04,517.517 INFO    ] 2026-06-13 16:18:04
[2026-06-13 16:18:04,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:04,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:04,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:04,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:04,892.892 INFO    ] time= 13/06/2026 16:18:04
[2026-06-13 16:18:04,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:04,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:05,051.051 INFO    ] No existing commands found in stream
[2026-06-13 16:18:10,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:18:10,069.069 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 16:18:11,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:18:11,827.827 INFO    ] Checking for system updates...
[2026-06-13 16:18:11,848.848 INFO    ] 200
[2026-06-13 16:18:11,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:11,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:11,882.882 INFO    ] No update needed
[2026-06-13 16:18:11,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:11,906.906 INFO    ] 200
[2026-06-13 16:18:11,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:11,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:11,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:11,973.973 INFO    ] No camera update needed
[2026-06-13 16:18:11,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:11,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:11,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:11,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:14,019.019 INFO    ] ================================================
[2026-06-13 16:18:14,034.034 INFO    ] Launching Daemon at Sat Jun 13 16:18:14 IST 2026
[2026-06-13 16:18:14,045.045 INFO    ] ================================================
[2026-06-13 16:18:14,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:14
[2026-06-13 16:18:14,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:14,868.868 INFO    ] Initializing speech engine...
[2026-06-13 16:18:14,873.873 INFO    ] 2026-06-13 16:18:14
[2026-06-13 16:18:15,075.075 INFO    ] 2026-06-13 16:18:15
[2026-06-13 16:18:15,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:15,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:15,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:15,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:15,492.492 INFO    ] time= 13/06/2026 16:18:15
[2026-06-13 16:18:15,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:15,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:15,592.592 INFO    ] No existing commands found in stream
[2026-06-13 16:18:20,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:18:20,603.603 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 16:18:22,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:18:22,664.664 INFO    ] Checking for system updates...
[2026-06-13 16:18:22,686.686 INFO    ] 200
[2026-06-13 16:18:22,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:22,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:22,720.720 INFO    ] No update needed
[2026-06-13 16:18:22,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:22,741.741 INFO    ] 200
[2026-06-13 16:18:22,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:22,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:22,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:22,815.815 INFO    ] No camera update needed
[2026-06-13 16:18:22,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:22,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:22,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:22,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:24,863.863 INFO    ] ================================================
[2026-06-13 16:18:24,878.878 INFO    ] Launching Daemon at Sat Jun 13 16:18:24 IST 2026
[2026-06-13 16:18:24,889.889 INFO    ] ================================================
[2026-06-13 16:18:25,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:25
[2026-06-13 16:18:25,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:25,697.697 INFO    ] Initializing speech engine...
[2026-06-13 16:18:25,702.702 INFO    ] 2026-06-13 16:18:25
[2026-06-13 16:18:25,904.904 INFO    ] 2026-06-13 16:18:25
[2026-06-13 16:18:25,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:26,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:26,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:26,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:26,315.315 INFO    ] time= 13/06/2026 16:18:26
[2026-06-13 16:18:26,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:26,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:26,420.420 INFO    ] No existing commands found in stream
[2026-06-13 16:18:31,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:18:31,436.436 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 16:18:32,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:18:32,450.450 INFO    ] Checking for system updates...
[2026-06-13 16:18:32,474.474 INFO    ] 200
[2026-06-13 16:18:32,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:32,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:32,511.511 INFO    ] No update needed
[2026-06-13 16:18:32,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:32,537.537 INFO    ] 200
[2026-06-13 16:18:32,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:32,567.567 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:32,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:18:32,599.599 INFO    ] No camera update needed
[2026-06-13 16:18:32,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:32,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:32,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:32,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:34,650.650 INFO    ] ================================================
[2026-06-13 16:18:34,665.665 INFO    ] Launching Daemon at Sat Jun 13 16:18:34 IST 2026
[2026-06-13 16:18:34,676.676 INFO    ] ================================================
[2026-06-13 16:18:35,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:35
[2026-06-13 16:18:35,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:35,927.927 INFO    ] Initializing speech engine...
[2026-06-13 16:18:35,932.932 INFO    ] 2026-06-13 16:18:35
[2026-06-13 16:18:36,135.135 INFO    ] 2026-06-13 16:18:36
[2026-06-13 16:18:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:36,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:36,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:36,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:36,549.549 INFO    ] time= 13/06/2026 16:18:36
[2026-06-13 16:18:36,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:36,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:36,649.649 INFO    ] No existing commands found in stream
[2026-06-13 16:18:41,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:18:41,658.658 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 16:18:42,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:18:42,136.136 INFO    ] Checking for system updates...
[2026-06-13 16:18:42,156.156 INFO    ] 200
[2026-06-13 16:18:42,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:42,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:42,196.196 INFO    ] No update needed
[2026-06-13 16:18:42,198.198 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:42,217.217 INFO    ] 200
[2026-06-13 16:18:42,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:42,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:42,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:42,283.283 INFO    ] No camera update needed
[2026-06-13 16:18:42,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:42,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:42,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:42,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:44,330.330 INFO    ] ================================================
[2026-06-13 16:18:44,345.345 INFO    ] Launching Daemon at Sat Jun 13 16:18:44 IST 2026
[2026-06-13 16:18:44,355.355 INFO    ] ================================================
[2026-06-13 16:18:44,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:44
[2026-06-13 16:18:45,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:45,170.170 INFO    ] Initializing speech engine...
[2026-06-13 16:18:45,175.175 INFO    ] 2026-06-13 16:18:45
[2026-06-13 16:18:45,404.404 INFO    ] 2026-06-13 16:18:45
[2026-06-13 16:18:45,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:45,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:45,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:45,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:45,817.817 INFO    ] time= 13/06/2026 16:18:45
[2026-06-13 16:18:45,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:45,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:45,953.953 INFO    ] No existing commands found in stream
[2026-06-13 16:18:50,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:18:50,966.966 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 16:18:54,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:18:54,055.055 INFO    ] Checking for system updates...
[2026-06-13 16:18:54,076.076 INFO    ] 200
[2026-06-13 16:18:54,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:54,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:54,111.111 INFO    ] No update needed
[2026-06-13 16:18:54,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 16:18:54,131.131 INFO    ] 200
[2026-06-13 16:18:54,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:18:54,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:18:54,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:18:54,195.195 INFO    ] No camera update needed
[2026-06-13 16:18:54,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:18:54,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:18:54,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:18:54,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:18:56,244.244 INFO    ] ================================================
[2026-06-13 16:18:56,259.259 INFO    ] Launching Daemon at Sat Jun 13 16:18:56 IST 2026
[2026-06-13 16:18:56,269.269 INFO    ] ================================================
[2026-06-13 16:18:56,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:18:56
[2026-06-13 16:18:56,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:18:57,028.028 INFO    ] Initializing speech engine...
[2026-06-13 16:18:57,032.032 INFO    ] 2026-06-13 16:18:57
[2026-06-13 16:18:57,248.248 INFO    ] 2026-06-13 16:18:57
[2026-06-13 16:18:57,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:18:57,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:18:57,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:18:57,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:18:57,669.669 INFO    ] time= 13/06/2026 16:18:57
[2026-06-13 16:18:57,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:18:57,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:18:57,767.767 INFO    ] No existing commands found in stream
[2026-06-13 16:19:02,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:02,777.777 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 16:19:04,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:19:04,100.100 INFO    ] Checking for system updates...
[2026-06-13 16:19:04,121.121 INFO    ] 200
[2026-06-13 16:19:04,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:04,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:04,155.155 INFO    ] No update needed
[2026-06-13 16:19:04,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 16:19:04,177.177 INFO    ] 200
[2026-06-13 16:19:04,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:04,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:19:04,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:04,243.243 INFO    ] No camera update needed
[2026-06-13 16:19:04,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:19:04,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:19:04,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:19:04,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:19:06,292.292 INFO    ] ================================================
[2026-06-13 16:19:06,308.308 INFO    ] Launching Daemon at Sat Jun 13 16:19:06 IST 2026
[2026-06-13 16:19:06,319.319 INFO    ] ================================================
[2026-06-13 16:19:06,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:19:06
[2026-06-13 16:19:06,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:19:07,127.127 INFO    ] Initializing speech engine...
[2026-06-13 16:19:07,132.132 INFO    ] 2026-06-13 16:19:07
[2026-06-13 16:19:07,360.360 INFO    ] 2026-06-13 16:19:07
[2026-06-13 16:19:07,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:19:07,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:19:07,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:19:07,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:19:07,793.793 INFO    ] time= 13/06/2026 16:19:07
[2026-06-13 16:19:07,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:19:07,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:19:07,913.913 INFO    ] No existing commands found in stream
[2026-06-13 16:19:12,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:12,926.926 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 16:19:14,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:19:14,749.749 INFO    ] Checking for system updates...
[2026-06-13 16:19:14,770.770 INFO    ] 200
[2026-06-13 16:19:14,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:14,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:14,803.803 INFO    ] No update needed
[2026-06-13 16:19:14,804.804 INFO    ] Checking for camera pi updates...
[2026-06-13 16:19:14,827.827 INFO    ] 200
[2026-06-13 16:19:14,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:14,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:19:14,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:14,896.896 INFO    ] No camera update needed
[2026-06-13 16:19:14,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:19:14,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:19:14,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:19:14,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:19:16,943.943 INFO    ] ================================================
[2026-06-13 16:19:16,959.959 INFO    ] Launching Daemon at Sat Jun 13 16:19:16 IST 2026
[2026-06-13 16:19:16,970.970 INFO    ] ================================================
[2026-06-13 16:19:17,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:19:17
[2026-06-13 16:19:17,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:19:17,769.769 INFO    ] Initializing speech engine...
[2026-06-13 16:19:17,781.781 INFO    ] 2026-06-13 16:19:17
[2026-06-13 16:19:17,995.995 INFO    ] 2026-06-13 16:19:17
[2026-06-13 16:19:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:19:18,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:19:18,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:19:18,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:19:18,404.404 INFO    ] time= 13/06/2026 16:19:18
[2026-06-13 16:19:18,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:19:18,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:19:18,520.520 INFO    ] No existing commands found in stream
[2026-06-13 16:19:23,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:23,532.532 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 16:19:24,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:19:24,782.782 INFO    ] Checking for system updates...
[2026-06-13 16:19:24,803.803 INFO    ] 200
[2026-06-13 16:19:24,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:24,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:24,837.837 INFO    ] No update needed
[2026-06-13 16:19:24,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 16:19:24,859.859 INFO    ] 200
[2026-06-13 16:19:24,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:24,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:19:25,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:25,031.031 INFO    ] No camera update needed
[2026-06-13 16:19:25,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:19:25,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:19:25,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:19:25,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:19:27,079.079 INFO    ] ================================================
[2026-06-13 16:19:27,094.094 INFO    ] Launching Daemon at Sat Jun 13 16:19:27 IST 2026
[2026-06-13 16:19:27,105.105 INFO    ] ================================================
[2026-06-13 16:19:27,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:19:27
[2026-06-13 16:19:27,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:19:27,941.941 INFO    ] Initializing speech engine...
[2026-06-13 16:19:27,946.946 INFO    ] 2026-06-13 16:19:27
[2026-06-13 16:19:28,150.150 INFO    ] 2026-06-13 16:19:28
[2026-06-13 16:19:28,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:19:28,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:19:28,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:19:28,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:19:28,544.544 INFO    ] time= 13/06/2026 16:19:28
[2026-06-13 16:19:28,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:19:28,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:19:28,663.663 INFO    ] No existing commands found in stream
[2026-06-13 16:19:33,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:33,677.677 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 16:19:36,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:19:36,656.656 INFO    ] Checking for system updates...
[2026-06-13 16:19:36,677.677 INFO    ] 200
[2026-06-13 16:19:36,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:36,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:36,710.710 INFO    ] No update needed
[2026-06-13 16:19:36,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 16:19:36,731.731 INFO    ] 200
[2026-06-13 16:19:36,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:36,758.758 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:19:36,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:19:36,805.805 INFO    ] No camera update needed
[2026-06-13 16:19:36,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:19:36,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:19:36,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:19:36,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:19:38,852.852 INFO    ] ================================================
[2026-06-13 16:19:38,867.867 INFO    ] Launching Daemon at Sat Jun 13 16:19:38 IST 2026
[2026-06-13 16:19:38,878.878 INFO    ] ================================================
[2026-06-13 16:19:39,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:19:39
[2026-06-13 16:19:39,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:19:39,643.643 INFO    ] Initializing speech engine...
[2026-06-13 16:19:39,656.656 INFO    ] 2026-06-13 16:19:39
[2026-06-13 16:19:39,865.865 INFO    ] 2026-06-13 16:19:39
[2026-06-13 16:19:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:19:40,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:19:40,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:19:40,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:19:40,286.286 INFO    ] time= 13/06/2026 16:19:40
[2026-06-13 16:19:40,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:19:40,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:19:40,497.497 INFO    ] No existing commands found in stream
[2026-06-13 16:19:45,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:45,510.510 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 16:19:48,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:19:48,744.744 INFO    ] Checking for system updates...
[2026-06-13 16:19:48,764.764 INFO    ] 200
[2026-06-13 16:19:48,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:48,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:19:48,798.798 INFO    ] No update needed
[2026-06-13 16:19:48,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 16:19:48,819.819 INFO    ] 200
[2026-06-13 16:19:48,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:19:48,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:19:48,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:19:48,885.885 INFO    ] No camera update needed
[2026-06-13 16:19:48,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:19:48,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:19:48,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:19:48,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:19:50,931.931 INFO    ] ================================================
[2026-06-13 16:19:50,946.946 INFO    ] Launching Daemon at Sat Jun 13 16:19:50 IST 2026
[2026-06-13 16:19:50,957.957 INFO    ] ================================================
[2026-06-13 16:19:51,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:19:51
[2026-06-13 16:19:51,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:19:51,748.748 INFO    ] Initializing speech engine...
[2026-06-13 16:19:51,753.753 INFO    ] 2026-06-13 16:19:51
[2026-06-13 16:19:51,981.981 INFO    ] 2026-06-13 16:19:51
[2026-06-13 16:19:52,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:19:52,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:19:52,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:19:52,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:19:52,402.402 INFO    ] time= 13/06/2026 16:19:52
[2026-06-13 16:19:52,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:19:52,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:19:52,533.533 INFO    ] No existing commands found in stream
[2026-06-13 16:19:57,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:19:57,546.546 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 16:20:01,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:20:01,663.663 INFO    ] Checking for system updates...
[2026-06-13 16:20:01,740.740 INFO    ] 200
[2026-06-13 16:20:01,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:01,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:01,854.854 INFO    ] No update needed
[2026-06-13 16:20:01,877.877 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:01,925.925 INFO    ] 200
[2026-06-13 16:20:01,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:01,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:02,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:02,166.166 INFO    ] No camera update needed
[2026-06-13 16:20:02,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:02,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:02,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:02,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:20:04,229.229 INFO    ] ================================================
[2026-06-13 16:20:04,244.244 INFO    ] Launching Daemon at Sat Jun 13 16:20:04 IST 2026
[2026-06-13 16:20:04,255.255 INFO    ] ================================================
[2026-06-13 16:20:04,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:20:04
[2026-06-13 16:20:05,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:20:05,188.188 INFO    ] Initializing speech engine...
[2026-06-13 16:20:05,197.197 INFO    ] 2026-06-13 16:20:05
[2026-06-13 16:20:05,412.412 INFO    ] 2026-06-13 16:20:05
[2026-06-13 16:20:05,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:20:05,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:20:05,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:20:05,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:20:05,826.826 INFO    ] time= 13/06/2026 16:20:05
[2026-06-13 16:20:05,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:20:05,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:20:05,931.931 INFO    ] No existing commands found in stream
[2026-06-13 16:20:10,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:20:10,943.943 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 16:20:15,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:20:15,778.778 INFO    ] Checking for system updates...
[2026-06-13 16:20:15,814.814 INFO    ] 200
[2026-06-13 16:20:15,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:15,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:15,879.879 INFO    ] No update needed
[2026-06-13 16:20:15,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:15,916.916 INFO    ] 200
[2026-06-13 16:20:15,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:15,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:15,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:15,984.984 INFO    ] No camera update needed
[2026-06-13 16:20:15,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:15,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:15,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:15,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:20:18,032.032 INFO    ] ================================================
[2026-06-13 16:20:18,047.047 INFO    ] Launching Daemon at Sat Jun 13 16:20:18 IST 2026
[2026-06-13 16:20:18,058.058 INFO    ] ================================================
[2026-06-13 16:20:18,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:20:18
[2026-06-13 16:20:18,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:20:18,829.829 INFO    ] Initializing speech engine...
[2026-06-13 16:20:18,842.842 INFO    ] 2026-06-13 16:20:18
[2026-06-13 16:20:19,060.060 INFO    ] 2026-06-13 16:20:19
[2026-06-13 16:20:19,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:20:19,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:20:19,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:20:19,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:20:19,502.502 INFO    ] time= 13/06/2026 16:20:19
[2026-06-13 16:20:19,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:20:19,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:20:19,627.627 INFO    ] No existing commands found in stream
[2026-06-13 16:20:24,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:20:24,640.640 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 16:20:26,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:20:26,827.827 INFO    ] Checking for system updates...
[2026-06-13 16:20:26,853.853 INFO    ] 200
[2026-06-13 16:20:26,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:26,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:26,889.889 INFO    ] No update needed
[2026-06-13 16:20:26,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:26,912.912 INFO    ] 200
[2026-06-13 16:20:26,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:26,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:26,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:26,980.980 INFO    ] No camera update needed
[2026-06-13 16:20:26,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:26,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:26,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:26,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:20:29,030.030 INFO    ] ================================================
[2026-06-13 16:20:29,045.045 INFO    ] Launching Daemon at Sat Jun 13 16:20:29 IST 2026
[2026-06-13 16:20:29,057.057 INFO    ] ================================================
[2026-06-13 16:20:29,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:20:29
[2026-06-13 16:20:29,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:20:29,844.844 INFO    ] Initializing speech engine...
[2026-06-13 16:20:29,852.852 INFO    ] 2026-06-13 16:20:29
[2026-06-13 16:20:30,070.070 INFO    ] 2026-06-13 16:20:30
[2026-06-13 16:20:30,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:20:30,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:20:30,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:20:30,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:20:30,474.474 INFO    ] time= 13/06/2026 16:20:30
[2026-06-13 16:20:30,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:20:30,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:20:30,625.625 INFO    ] No existing commands found in stream
[2026-06-13 16:20:35,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:20:35,639.639 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 16:20:36,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:20:36,739.739 INFO    ] Checking for system updates...
[2026-06-13 16:20:36,760.760 INFO    ] 200
[2026-06-13 16:20:36,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:36,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:36,793.793 INFO    ] No update needed
[2026-06-13 16:20:36,794.794 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:36,814.814 INFO    ] 200
[2026-06-13 16:20:36,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:36,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:36,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:36,882.882 INFO    ] No camera update needed
[2026-06-13 16:20:36,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:36,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:36,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:36,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:20:38,922.922 INFO    ] ================================================
[2026-06-13 16:20:38,938.938 INFO    ] Launching Daemon at Sat Jun 13 16:20:38 IST 2026
[2026-06-13 16:20:38,948.948 INFO    ] ================================================
[2026-06-13 16:20:39,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:20:39
[2026-06-13 16:20:39,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:20:39,804.804 INFO    ] Initializing speech engine...
[2026-06-13 16:20:39,810.810 INFO    ] 2026-06-13 16:20:39
[2026-06-13 16:20:40,016.016 INFO    ] 2026-06-13 16:20:39
[2026-06-13 16:20:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:20:40,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:20:40,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:20:40,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:20:40,435.435 INFO    ] time= 13/06/2026 16:20:40
[2026-06-13 16:20:40,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:20:40,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:20:40,533.533 INFO    ] No existing commands found in stream
[2026-06-13 16:20:45,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:20:45,550.550 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 16:20:47,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:20:47,434.434 INFO    ] Checking for system updates...
[2026-06-13 16:20:47,456.456 INFO    ] 200
[2026-06-13 16:20:47,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:47,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:47,493.493 INFO    ] No update needed
[2026-06-13 16:20:47,494.494 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:47,517.517 INFO    ] 200
[2026-06-13 16:20:47,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:47,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:47,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:20:47,594.594 INFO    ] No camera update needed
[2026-06-13 16:20:47,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:47,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:47,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:47,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:20:49,642.642 INFO    ] ================================================
[2026-06-13 16:20:49,657.657 INFO    ] Launching Daemon at Sat Jun 13 16:20:49 IST 2026
[2026-06-13 16:20:49,667.667 INFO    ] ================================================
[2026-06-13 16:20:50,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:20:50
[2026-06-13 16:20:50,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:20:50,539.539 INFO    ] Initializing speech engine...
[2026-06-13 16:20:50,543.543 INFO    ] 2026-06-13 16:20:50
[2026-06-13 16:20:50,748.748 INFO    ] 2026-06-13 16:20:50
[2026-06-13 16:20:50,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:20:50,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:20:50,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:20:51,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:20:51,155.155 INFO    ] time= 13/06/2026 16:20:51
[2026-06-13 16:20:51,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:20:51,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:20:51,267.267 INFO    ] No existing commands found in stream
[2026-06-13 16:20:56,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:20:56,303.303 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 16:20:58,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:20:58,995.995 INFO    ] Checking for system updates...
[2026-06-13 16:20:59,015.015 INFO    ] 200
[2026-06-13 16:20:59,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:59,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:59,049.049 INFO    ] No update needed
[2026-06-13 16:20:59,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 16:20:59,073.073 INFO    ] 200
[2026-06-13 16:20:59,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:20:59,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:20:59,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:20:59,163.163 INFO    ] No camera update needed
[2026-06-13 16:20:59,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:20:59,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:20:59,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:20:59,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:01,241.241 INFO    ] ================================================
[2026-06-13 16:21:01,265.265 INFO    ] Launching Daemon at Sat Jun 13 16:21:01 IST 2026
[2026-06-13 16:21:01,281.281 INFO    ] ================================================
[2026-06-13 16:21:01,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:01
[2026-06-13 16:21:02,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:02,241.241 INFO    ] Initializing speech engine...
[2026-06-13 16:21:02,246.246 INFO    ] 2026-06-13 16:21:02
[2026-06-13 16:21:02,453.453 INFO    ] 2026-06-13 16:21:02
[2026-06-13 16:21:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:02,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:02,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:02,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:02,875.875 INFO    ] time= 13/06/2026 16:21:02
[2026-06-13 16:21:02,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:02,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:02,978.978 INFO    ] No existing commands found in stream
[2026-06-13 16:21:07,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:21:07,992.992 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 16:21:09,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:21:09,964.964 INFO    ] Checking for system updates...
[2026-06-13 16:21:09,985.985 INFO    ] 200
[2026-06-13 16:21:09,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:10,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:10,020.020 INFO    ] No update needed
[2026-06-13 16:21:10,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 16:21:10,041.041 INFO    ] 200
[2026-06-13 16:21:10,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:10,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:21:10,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:10,110.110 INFO    ] No camera update needed
[2026-06-13 16:21:10,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:21:10,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:21:10,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:21:10,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:12,165.165 INFO    ] ================================================
[2026-06-13 16:21:12,180.180 INFO    ] Launching Daemon at Sat Jun 13 16:21:12 IST 2026
[2026-06-13 16:21:12,191.191 INFO    ] ================================================
[2026-06-13 16:21:12,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:12
[2026-06-13 16:21:12,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:12,991.991 INFO    ] Initializing speech engine...
[2026-06-13 16:21:13,000.000 INFO    ] 2026-06-13 16:21:12
[2026-06-13 16:21:13,220.220 INFO    ] 2026-06-13 16:21:13
[2026-06-13 16:21:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:13,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:13,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:13,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:13,633.633 INFO    ] time= 13/06/2026 16:21:13
[2026-06-13 16:21:13,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:13,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:13,762.762 INFO    ] No existing commands found in stream
[2026-06-13 16:21:18,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:21:18,775.775 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 16:21:22,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:21:22,112.112 INFO    ] Checking for system updates...
[2026-06-13 16:21:22,134.134 INFO    ] 200
[2026-06-13 16:21:22,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:22,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:22,167.167 INFO    ] No update needed
[2026-06-13 16:21:22,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 16:21:22,189.189 INFO    ] 200
[2026-06-13 16:21:22,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:22,214.214 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:21:22,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:22,256.256 INFO    ] No camera update needed
[2026-06-13 16:21:22,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:21:22,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:21:22,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:21:22,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:24,302.302 INFO    ] ================================================
[2026-06-13 16:21:24,317.317 INFO    ] Launching Daemon at Sat Jun 13 16:21:24 IST 2026
[2026-06-13 16:21:24,327.327 INFO    ] ================================================
[2026-06-13 16:21:24,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:24
[2026-06-13 16:21:24,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:25,121.121 INFO    ] Initializing speech engine...
[2026-06-13 16:21:25,126.126 INFO    ] 2026-06-13 16:21:25
[2026-06-13 16:21:25,330.330 INFO    ] 2026-06-13 16:21:25
[2026-06-13 16:21:25,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:25,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:25,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:25,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:25,737.737 INFO    ] time= 13/06/2026 16:21:25
[2026-06-13 16:21:25,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:25,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:25,840.840 INFO    ] No existing commands found in stream
[2026-06-13 16:21:30,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:21:30,854.854 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 16:21:31,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:21:31,625.625 INFO    ] Checking for system updates...
[2026-06-13 16:21:31,651.651 INFO    ] 200
[2026-06-13 16:21:31,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:31,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:21:31,689.689 INFO    ] No update needed
[2026-06-13 16:21:31,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 16:21:31,712.712 INFO    ] 200
[2026-06-13 16:21:31,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:31,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:21:31,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:21:31,890.890 INFO    ] No camera update needed
[2026-06-13 16:21:31,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:21:31,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:21:31,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:21:31,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:33,939.939 INFO    ] ================================================
[2026-06-13 16:21:33,954.954 INFO    ] Launching Daemon at Sat Jun 13 16:21:33 IST 2026
[2026-06-13 16:21:33,965.965 INFO    ] ================================================
[2026-06-13 16:21:34,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:34
[2026-06-13 16:21:34,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:34,749.749 INFO    ] Initializing speech engine...
[2026-06-13 16:21:34,758.758 INFO    ] 2026-06-13 16:21:34
[2026-06-13 16:21:34,965.965 INFO    ] 2026-06-13 16:21:34
[2026-06-13 16:21:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:35,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:35,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:35,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:35,366.366 INFO    ] time= 13/06/2026 16:21:35
[2026-06-13 16:21:35,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:35,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:35,488.488 INFO    ] No existing commands found in stream
[2026-06-13 16:21:40,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:21:40,501.501 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 16:21:40,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:21:40,963.963 INFO    ] Checking for system updates...
[2026-06-13 16:21:40,984.984 INFO    ] 200
[2026-06-13 16:21:40,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:41,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:41,018.018 INFO    ] No update needed
[2026-06-13 16:21:41,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 16:21:41,040.040 INFO    ] 200
[2026-06-13 16:21:41,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:41,065.065 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:21:41,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:41,108.108 INFO    ] No camera update needed
[2026-06-13 16:21:41,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:21:41,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:21:41,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:21:41,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:43,158.158 INFO    ] ================================================
[2026-06-13 16:21:43,173.173 INFO    ] Launching Daemon at Sat Jun 13 16:21:43 IST 2026
[2026-06-13 16:21:43,184.184 INFO    ] ================================================
[2026-06-13 16:21:43,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:43
[2026-06-13 16:21:43,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:43,974.974 INFO    ] Initializing speech engine...
[2026-06-13 16:21:43,979.979 INFO    ] 2026-06-13 16:21:43
[2026-06-13 16:21:44,182.182 INFO    ] 2026-06-13 16:21:44
[2026-06-13 16:21:44,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:44,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:44,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:44,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:44,597.597 INFO    ] time= 13/06/2026 16:21:44
[2026-06-13 16:21:44,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:44,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:44,693.693 INFO    ] No existing commands found in stream
[2026-06-13 16:21:49,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:21:49,706.706 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 16:21:53,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:21:53,414.414 INFO    ] Checking for system updates...
[2026-06-13 16:21:53,435.435 INFO    ] 200
[2026-06-13 16:21:53,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:53,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:53,472.472 INFO    ] No update needed
[2026-06-13 16:21:53,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 16:21:53,494.494 INFO    ] 200
[2026-06-13 16:21:53,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:21:53,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:21:53,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:21:53,558.558 INFO    ] No camera update needed
[2026-06-13 16:21:53,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:21:53,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:21:53,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:21:53,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:21:55,605.605 INFO    ] ================================================
[2026-06-13 16:21:55,619.619 INFO    ] Launching Daemon at Sat Jun 13 16:21:55 IST 2026
[2026-06-13 16:21:55,630.630 INFO    ] ================================================
[2026-06-13 16:21:55,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:21:55
[2026-06-13 16:21:56,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:21:56,427.427 INFO    ] Initializing speech engine...
[2026-06-13 16:21:56,440.440 INFO    ] 2026-06-13 16:21:56
[2026-06-13 16:21:56,660.660 INFO    ] 2026-06-13 16:21:56
[2026-06-13 16:21:56,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:21:56,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:21:56,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:21:57,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:21:57,080.080 INFO    ] time= 13/06/2026 16:21:57
[2026-06-13 16:21:57,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:21:57,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:21:57,211.211 INFO    ] No existing commands found in stream
[2026-06-13 16:22:02,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:22:02,222.222 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 16:22:03,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:22:03,978.978 INFO    ] Checking for system updates...
[2026-06-13 16:22:03,999.999 INFO    ] 200
[2026-06-13 16:22:04,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:04,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:22:04,032.032 INFO    ] No update needed
[2026-06-13 16:22:04,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 16:22:04,055.055 INFO    ] 200
[2026-06-13 16:22:04,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:04,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:22:04,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:22:04,122.122 INFO    ] No camera update needed
[2026-06-13 16:22:04,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:22:04,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:22:04,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:22:04,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:22:06,169.169 INFO    ] ================================================
[2026-06-13 16:22:06,183.183 INFO    ] Launching Daemon at Sat Jun 13 16:22:06 IST 2026
[2026-06-13 16:22:06,194.194 INFO    ] ================================================
[2026-06-13 16:22:06,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:22:06
[2026-06-13 16:22:06,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:22:06,986.986 INFO    ] Initializing speech engine...
[2026-06-13 16:22:06,991.991 INFO    ] 2026-06-13 16:22:06
[2026-06-13 16:22:07,195.195 INFO    ] 2026-06-13 16:22:07
[2026-06-13 16:22:07,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:22:07,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:22:07,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:22:07,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:22:07,614.614 INFO    ] time= 13/06/2026 16:22:07
[2026-06-13 16:22:07,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:22:07,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:22:07,717.717 INFO    ] No existing commands found in stream
[2026-06-13 16:22:12,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:22:12,729.729 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 16:22:15,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:22:15,876.876 INFO    ] Checking for system updates...
[2026-06-13 16:22:15,897.897 INFO    ] 200
[2026-06-13 16:22:15,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:15,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:15,936.936 INFO    ] No update needed
[2026-06-13 16:22:15,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 16:22:15,957.957 INFO    ] 200
[2026-06-13 16:22:15,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:15,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:22:16,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:22:16,021.021 INFO    ] No camera update needed
[2026-06-13 16:22:16,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:22:16,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:22:16,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:22:16,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:22:18,068.068 INFO    ] ================================================
[2026-06-13 16:22:18,083.083 INFO    ] Launching Daemon at Sat Jun 13 16:22:18 IST 2026
[2026-06-13 16:22:18,094.094 INFO    ] ================================================
[2026-06-13 16:22:18,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:22:18
[2026-06-13 16:22:18,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:22:18,860.860 INFO    ] Initializing speech engine...
[2026-06-13 16:22:18,863.863 INFO    ] 2026-06-13 16:22:18
[2026-06-13 16:22:19,081.081 INFO    ] 2026-06-13 16:22:19
[2026-06-13 16:22:19,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:22:19,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:22:19,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:22:19,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:22:19,490.490 INFO    ] time= 13/06/2026 16:22:19
[2026-06-13 16:22:19,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:22:19,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:22:19,607.607 INFO    ] No existing commands found in stream
[2026-06-13 16:22:24,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:22:24,621.621 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 16:22:28,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:22:28,467.467 INFO    ] Checking for system updates...
[2026-06-13 16:22:28,488.488 INFO    ] 200
[2026-06-13 16:22:28,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:28,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:28,526.526 INFO    ] No update needed
[2026-06-13 16:22:28,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 16:22:28,548.548 INFO    ] 200
[2026-06-13 16:22:28,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:28,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:22:28,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:28,626.626 INFO    ] No camera update needed
[2026-06-13 16:22:28,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:22:28,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:22:28,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:22:28,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:22:30,682.682 INFO    ] ================================================
[2026-06-13 16:22:30,697.697 INFO    ] Launching Daemon at Sat Jun 13 16:22:30 IST 2026
[2026-06-13 16:22:30,707.707 INFO    ] ================================================
[2026-06-13 16:22:31,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:22:31
[2026-06-13 16:22:31,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:22:32,000.000 INFO    ] Initializing speech engine...
[2026-06-13 16:22:32,004.004 INFO    ] 2026-06-13 16:22:32
[2026-06-13 16:22:32,237.237 INFO    ] 2026-06-13 16:22:32
[2026-06-13 16:22:32,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:22:32,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:22:32,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:22:32,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:22:32,570.570 INFO    ] time= 13/06/2026 16:22:32
[2026-06-13 16:22:32,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:22:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:22:32,733.733 INFO    ] No existing commands found in stream
[2026-06-13 16:22:37,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:22:37,745.745 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 16:22:41,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:22:41,614.614 INFO    ] Checking for system updates...
[2026-06-13 16:22:41,635.635 INFO    ] 200
[2026-06-13 16:22:41,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:41,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:41,668.668 INFO    ] No update needed
[2026-06-13 16:22:41,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 16:22:41,689.689 INFO    ] 200
[2026-06-13 16:22:41,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:41,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:22:41,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:41,755.755 INFO    ] No camera update needed
[2026-06-13 16:22:41,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:22:41,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:22:41,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:22:41,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:22:43,802.802 INFO    ] ================================================
[2026-06-13 16:22:43,817.817 INFO    ] Launching Daemon at Sat Jun 13 16:22:43 IST 2026
[2026-06-13 16:22:43,828.828 INFO    ] ================================================
[2026-06-13 16:22:44,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:22:44
[2026-06-13 16:22:44,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:22:44,602.602 INFO    ] Initializing speech engine...
[2026-06-13 16:22:44,606.606 INFO    ] 2026-06-13 16:22:44
[2026-06-13 16:22:44,835.835 INFO    ] 2026-06-13 16:22:44
[2026-06-13 16:22:44,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:22:45,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:22:45,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:22:45,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:22:45,256.256 INFO    ] time= 13/06/2026 16:22:45
[2026-06-13 16:22:45,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:22:45,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:22:45,388.388 INFO    ] No existing commands found in stream
[2026-06-13 16:22:50,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:22:50,402.402 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 16:22:54,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:22:54,220.220 INFO    ] Checking for system updates...
[2026-06-13 16:22:54,241.241 INFO    ] 200
[2026-06-13 16:22:54,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:54,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:54,274.274 INFO    ] No update needed
[2026-06-13 16:22:54,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 16:22:54,296.296 INFO    ] 200
[2026-06-13 16:22:54,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:22:54,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:22:54,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:22:54,361.361 INFO    ] No camera update needed
[2026-06-13 16:22:54,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:22:54,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:22:54,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:22:54,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:22:56,408.408 INFO    ] ================================================
[2026-06-13 16:22:56,423.423 INFO    ] Launching Daemon at Sat Jun 13 16:22:56 IST 2026
[2026-06-13 16:22:56,434.434 INFO    ] ================================================
[2026-06-13 16:22:56,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:22:56
[2026-06-13 16:22:57,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:22:57,220.220 INFO    ] Initializing speech engine...
[2026-06-13 16:22:57,232.232 INFO    ] 2026-06-13 16:22:57
[2026-06-13 16:22:57,440.440 INFO    ] 2026-06-13 16:22:57
[2026-06-13 16:22:57,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:22:57,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:22:57,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:22:57,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:22:57,851.851 INFO    ] time= 13/06/2026 16:22:57
[2026-06-13 16:22:57,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:22:57,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:22:57,964.964 INFO    ] No existing commands found in stream
[2026-06-13 16:23:02,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:02,974.974 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 16:23:03,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:23:03,390.390 INFO    ] Checking for system updates...
[2026-06-13 16:23:03,429.429 INFO    ] 200
[2026-06-13 16:23:03,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:03,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:03,487.487 INFO    ] No update needed
[2026-06-13 16:23:03,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 16:23:03,526.526 INFO    ] 200
[2026-06-13 16:23:03,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:03,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:23:03,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:03,631.631 INFO    ] No camera update needed
[2026-06-13 16:23:03,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:23:03,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:23:03,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:23:03,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:23:05,687.687 INFO    ] ================================================
[2026-06-13 16:23:05,702.702 INFO    ] Launching Daemon at Sat Jun 13 16:23:05 IST 2026
[2026-06-13 16:23:05,713.713 INFO    ] ================================================
[2026-06-13 16:23:06,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:23:06
[2026-06-13 16:23:06,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:23:06,540.540 INFO    ] Initializing speech engine...
[2026-06-13 16:23:06,545.545 INFO    ] 2026-06-13 16:23:06
[2026-06-13 16:23:06,751.751 INFO    ] 2026-06-13 16:23:06
[2026-06-13 16:23:06,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:23:06,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:23:06,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:23:07,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:23:07,178.178 INFO    ] time= 13/06/2026 16:23:07
[2026-06-13 16:23:07,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:23:07,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:23:07,275.275 INFO    ] No existing commands found in stream
[2026-06-13 16:23:12,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:12,293.293 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 16:23:14,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:23:14,128.128 INFO    ] Checking for system updates...
[2026-06-13 16:23:14,149.149 INFO    ] 200
[2026-06-13 16:23:14,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:14,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:14,185.185 INFO    ] No update needed
[2026-06-13 16:23:14,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 16:23:14,206.206 INFO    ] 200
[2026-06-13 16:23:14,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:14,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:23:14,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:14,273.273 INFO    ] No camera update needed
[2026-06-13 16:23:14,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:23:14,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:23:14,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:23:14,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:23:16,318.318 INFO    ] ================================================
[2026-06-13 16:23:16,334.334 INFO    ] Launching Daemon at Sat Jun 13 16:23:16 IST 2026
[2026-06-13 16:23:16,344.344 INFO    ] ================================================
[2026-06-13 16:23:16,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:23:16
[2026-06-13 16:23:17,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:23:17,744.744 INFO    ] Initializing speech engine...
[2026-06-13 16:23:17,765.765 INFO    ] 2026-06-13 16:23:17
[2026-06-13 16:23:17,980.980 INFO    ] 2026-06-13 16:23:17
[2026-06-13 16:23:18,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:23:18,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:23:18,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:23:18,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:23:18,372.372 INFO    ] time= 13/06/2026 16:23:18
[2026-06-13 16:23:18,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:23:18,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:23:18,498.498 INFO    ] No existing commands found in stream
[2026-06-13 16:23:23,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:23,511.511 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 16:23:24,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:23:24,167.167 INFO    ] Checking for system updates...
[2026-06-13 16:23:24,188.188 INFO    ] 200
[2026-06-13 16:23:24,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:24,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:23:24,223.223 INFO    ] No update needed
[2026-06-13 16:23:24,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 16:23:24,244.244 INFO    ] 200
[2026-06-13 16:23:24,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:24,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:23:24,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:23:24,314.314 INFO    ] No camera update needed
[2026-06-13 16:23:24,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:23:24,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:23:24,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:23:24,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:23:26,364.364 INFO    ] ================================================
[2026-06-13 16:23:26,379.379 INFO    ] Launching Daemon at Sat Jun 13 16:23:26 IST 2026
[2026-06-13 16:23:26,390.390 INFO    ] ================================================
[2026-06-13 16:23:26,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:23:26
[2026-06-13 16:23:27,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:23:27,177.177 INFO    ] Initializing speech engine...
[2026-06-13 16:23:27,191.191 INFO    ] 2026-06-13 16:23:27
[2026-06-13 16:23:27,409.409 INFO    ] 2026-06-13 16:23:27
[2026-06-13 16:23:27,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:23:27,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:23:27,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:23:27,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:23:27,794.794 INFO    ] time= 13/06/2026 16:23:27
[2026-06-13 16:23:27,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:23:27,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:23:27,959.959 INFO    ] No existing commands found in stream
[2026-06-13 16:23:32,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:32,973.973 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 16:23:36,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:23:36,014.014 INFO    ] Checking for system updates...
[2026-06-13 16:23:36,036.036 INFO    ] 200
[2026-06-13 16:23:36,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:36,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:36,070.070 INFO    ] No update needed
[2026-06-13 16:23:36,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 16:23:36,096.096 INFO    ] 200
[2026-06-13 16:23:36,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:36,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:23:36,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:36,270.270 INFO    ] No camera update needed
[2026-06-13 16:23:36,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:23:36,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:23:36,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:23:36,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:23:38,327.327 INFO    ] ================================================
[2026-06-13 16:23:38,342.342 INFO    ] Launching Daemon at Sat Jun 13 16:23:38 IST 2026
[2026-06-13 16:23:38,353.353 INFO    ] ================================================
[2026-06-13 16:23:38,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:23:38
[2026-06-13 16:23:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:23:39,519.519 INFO    ] Initializing speech engine...
[2026-06-13 16:23:39,524.524 INFO    ] 2026-06-13 16:23:39
[2026-06-13 16:23:39,751.751 INFO    ] 2026-06-13 16:23:39
[2026-06-13 16:23:39,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:23:39,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:23:39,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:23:40,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:23:40,173.173 INFO    ] time= 13/06/2026 16:23:40
[2026-06-13 16:23:40,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:23:40,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:23:40,304.304 INFO    ] No existing commands found in stream
[2026-06-13 16:23:45,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:45,318.318 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 16:23:46,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:23:46,986.986 INFO    ] Checking for system updates...
[2026-06-13 16:23:47,007.007 INFO    ] 200
[2026-06-13 16:23:47,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:47,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:23:47,040.040 INFO    ] No update needed
[2026-06-13 16:23:47,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 16:23:47,063.063 INFO    ] 200
[2026-06-13 16:23:47,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:23:47,088.088 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:23:47,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:23:47,130.130 INFO    ] No camera update needed
[2026-06-13 16:23:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:23:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:23:47,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:23:47,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:23:49,176.176 INFO    ] ================================================
[2026-06-13 16:23:49,191.191 INFO    ] Launching Daemon at Sat Jun 13 16:23:49 IST 2026
[2026-06-13 16:23:49,202.202 INFO    ] ================================================
[2026-06-13 16:23:49,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:23:49
[2026-06-13 16:23:49,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:23:50,109.109 INFO    ] Initializing speech engine...
[2026-06-13 16:23:50,131.131 INFO    ] 2026-06-13 16:23:50
[2026-06-13 16:23:50,350.350 INFO    ] 2026-06-13 16:23:50
[2026-06-13 16:23:50,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:23:50,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:23:50,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:23:50,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:23:50,696.696 INFO    ] time= 13/06/2026 16:23:50
[2026-06-13 16:23:50,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:23:50,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:23:50,872.872 INFO    ] No existing commands found in stream
[2026-06-13 16:23:55,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:23:55,889.889 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 16:23:59,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:23:59,998.998 INFO    ] Checking for system updates...
[2026-06-13 16:24:00,425.425 INFO    ] 200
[2026-06-13 16:24:00,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:00,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:00,458.458 INFO    ] No update needed
[2026-06-13 16:24:00,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:00,480.480 INFO    ] 200
[2026-06-13 16:24:00,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:00,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:00,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:00,546.546 INFO    ] No camera update needed
[2026-06-13 16:24:00,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:00,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:00,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:00,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:02,584.584 INFO    ] ================================================
[2026-06-13 16:24:02,593.593 INFO    ] Launching Daemon at Sat Jun 13 16:24:02 IST 2026
[2026-06-13 16:24:02,599.599 INFO    ] ================================================
[2026-06-13 16:24:02,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:02
[2026-06-13 16:24:03,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:03,434.434 INFO    ] Initializing speech engine...
[2026-06-13 16:24:03,440.440 INFO    ] 2026-06-13 16:24:03
[2026-06-13 16:24:03,647.647 INFO    ] 2026-06-13 16:24:03
[2026-06-13 16:24:03,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:03,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:03,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:24:03,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:24:04,027.027 INFO    ] time= 13/06/2026 16:24:04
[2026-06-13 16:24:04,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:24:04,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:24:04,181.181 INFO    ] No existing commands found in stream
[2026-06-13 16:24:09,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:24:09,215.215 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 16:24:10,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:24:10,609.609 INFO    ] Checking for system updates...
[2026-06-13 16:24:10,631.631 INFO    ] 200
[2026-06-13 16:24:10,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:10,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:10,665.665 INFO    ] No update needed
[2026-06-13 16:24:10,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:10,687.687 INFO    ] 200
[2026-06-13 16:24:10,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:10,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:10,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:10,762.762 INFO    ] No camera update needed
[2026-06-13 16:24:10,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:10,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:10,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:10,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:12,811.811 INFO    ] ================================================
[2026-06-13 16:24:12,825.825 INFO    ] Launching Daemon at Sat Jun 13 16:24:12 IST 2026
[2026-06-13 16:24:12,836.836 INFO    ] ================================================
[2026-06-13 16:24:13,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:13
[2026-06-13 16:24:13,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:13,613.613 INFO    ] Initializing speech engine...
[2026-06-13 16:24:13,623.623 INFO    ] 2026-06-13 16:24:13
[2026-06-13 16:24:13,831.831 INFO    ] 2026-06-13 16:24:13
[2026-06-13 16:24:13,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:13,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:14,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:24:14,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:24:14,212.212 INFO    ] time= 13/06/2026 16:24:14
[2026-06-13 16:24:14,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:24:14,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:24:14,384.384 INFO    ] No existing commands found in stream
[2026-06-13 16:24:19,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:24:19,398.398 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 16:24:23,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:24:23,333.333 INFO    ] Checking for system updates...
[2026-06-13 16:24:23,354.354 INFO    ] 200
[2026-06-13 16:24:23,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:23,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:23,387.387 INFO    ] No update needed
[2026-06-13 16:24:23,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:23,411.411 INFO    ] 200
[2026-06-13 16:24:23,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:23,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:23,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:23,488.488 INFO    ] No camera update needed
[2026-06-13 16:24:23,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:23,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:23,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:23,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:25,536.536 INFO    ] ================================================
[2026-06-13 16:24:25,553.553 INFO    ] Launching Daemon at Sat Jun 13 16:24:25 IST 2026
[2026-06-13 16:24:25,563.563 INFO    ] ================================================
[2026-06-13 16:24:25,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:25
[2026-06-13 16:24:26,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:26,404.404 INFO    ] Initializing speech engine...
[2026-06-13 16:24:26,411.411 INFO    ] 2026-06-13 16:24:26
[2026-06-13 16:24:26,616.616 INFO    ] 2026-06-13 16:24:26
[2026-06-13 16:24:26,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:26,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:26,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:24:27,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:24:27,016.016 INFO    ] time= 13/06/2026 16:24:27
[2026-06-13 16:24:27,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:24:27,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:24:27,200.200 INFO    ] No existing commands found in stream
[2026-06-13 16:24:32,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:24:32,217.217 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 16:24:35,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:24:35,889.889 INFO    ] Checking for system updates...
[2026-06-13 16:24:35,910.910 INFO    ] 200
[2026-06-13 16:24:35,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:35,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:35,946.946 INFO    ] No update needed
[2026-06-13 16:24:35,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:35,970.970 INFO    ] 200
[2026-06-13 16:24:35,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:35,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:36,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:24:36,041.041 INFO    ] No camera update needed
[2026-06-13 16:24:36,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:36,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:36,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:36,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:38,089.089 INFO    ] ================================================
[2026-06-13 16:24:38,104.104 INFO    ] Launching Daemon at Sat Jun 13 16:24:38 IST 2026
[2026-06-13 16:24:38,115.115 INFO    ] ================================================
[2026-06-13 16:24:38,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:38
[2026-06-13 16:24:38,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:38,907.907 INFO    ] Initializing speech engine...
[2026-06-13 16:24:38,917.917 INFO    ] 2026-06-13 16:24:38
[2026-06-13 16:24:39,128.128 INFO    ] 2026-06-13 16:24:39
[2026-06-13 16:24:39,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:39,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:39,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:24:39,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:24:39,568.568 INFO    ] time= 13/06/2026 16:24:39
[2026-06-13 16:24:39,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:24:39,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:24:39,685.685 INFO    ] No existing commands found in stream
[2026-06-13 16:24:44,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:24:44,697.697 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 16:24:46,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:24:46,462.462 INFO    ] Checking for system updates...
[2026-06-13 16:24:46,483.483 INFO    ] 200
[2026-06-13 16:24:46,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:46,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:24:46,518.518 INFO    ] No update needed
[2026-06-13 16:24:46,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:46,539.539 INFO    ] 200
[2026-06-13 16:24:46,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:46,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:46,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:24:46,607.607 INFO    ] No camera update needed
[2026-06-13 16:24:46,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:46,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:46,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:48,659.659 INFO    ] ================================================
[2026-06-13 16:24:48,675.675 INFO    ] Launching Daemon at Sat Jun 13 16:24:48 IST 2026
[2026-06-13 16:24:48,686.686 INFO    ] ================================================
[2026-06-13 16:24:49,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:49
[2026-06-13 16:24:49,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:50,000.000 INFO    ] Initializing speech engine...
[2026-06-13 16:24:50,009.009 INFO    ] 2026-06-13 16:24:50
[2026-06-13 16:24:50,256.256 INFO    ] 2026-06-13 16:24:50
[2026-06-13 16:24:50,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:50,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:50,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:24:50,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:24:50,715.715 INFO    ] time= 13/06/2026 16:24:50
[2026-06-13 16:24:50,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:24:50,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:24:50,960.960 INFO    ] No existing commands found in stream
[2026-06-13 16:24:55,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:24:55,988.988 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 16:24:56,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:24:56,518.518 INFO    ] Checking for system updates...
[2026-06-13 16:24:56,540.540 INFO    ] 200
[2026-06-13 16:24:56,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:56,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:24:56,573.573 INFO    ] No update needed
[2026-06-13 16:24:56,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 16:24:56,597.597 INFO    ] 200
[2026-06-13 16:24:56,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:24:56,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:24:56,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:24:56,663.663 INFO    ] No camera update needed
[2026-06-13 16:24:56,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:24:56,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:24:56,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:24:56,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:24:58,711.711 INFO    ] ================================================
[2026-06-13 16:24:58,726.726 INFO    ] Launching Daemon at Sat Jun 13 16:24:58 IST 2026
[2026-06-13 16:24:58,737.737 INFO    ] ================================================
[2026-06-13 16:24:59,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:24:59
[2026-06-13 16:24:59,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:24:59,540.540 INFO    ] Initializing speech engine...
[2026-06-13 16:24:59,545.545 INFO    ] 2026-06-13 16:24:59
[2026-06-13 16:24:59,749.749 INFO    ] 2026-06-13 16:24:59
[2026-06-13 16:24:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:24:59,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:24:59,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:00,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:00,154.154 INFO    ] time= 13/06/2026 16:25:00
[2026-06-13 16:25:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:00,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:00,412.412 INFO    ] No existing commands found in stream
[2026-06-13 16:25:05,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:25:05,432.432 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 16:25:06,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:25:06,570.570 INFO    ] Checking for system updates...
[2026-06-13 16:25:06,591.591 INFO    ] 200
[2026-06-13 16:25:06,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:06,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:06,624.624 INFO    ] No update needed
[2026-06-13 16:25:06,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 16:25:06,644.644 INFO    ] 200
[2026-06-13 16:25:06,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:06,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:25:06,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:06,714.714 INFO    ] No camera update needed
[2026-06-13 16:25:06,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:25:06,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:25:06,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:25:06,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:25:08,761.761 INFO    ] ================================================
[2026-06-13 16:25:08,776.776 INFO    ] Launching Daemon at Sat Jun 13 16:25:08 IST 2026
[2026-06-13 16:25:08,786.786 INFO    ] ================================================
[2026-06-13 16:25:09,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:25:09
[2026-06-13 16:25:09,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:25:09,568.568 INFO    ] Initializing speech engine...
[2026-06-13 16:25:09,574.574 INFO    ] 2026-06-13 16:25:09
[2026-06-13 16:25:09,776.776 INFO    ] 2026-06-13 16:25:09
[2026-06-13 16:25:09,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:25:09,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:25:09,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:10,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:10,169.169 INFO    ] time= 13/06/2026 16:25:10
[2026-06-13 16:25:10,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:10,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:10,290.290 INFO    ] No existing commands found in stream
[2026-06-13 16:25:15,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:25:15,302.302 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 16:25:19,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:25:19,100.100 INFO    ] Checking for system updates...
[2026-06-13 16:25:19,120.120 INFO    ] 200
[2026-06-13 16:25:19,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:19,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:19,154.154 INFO    ] No update needed
[2026-06-13 16:25:19,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 16:25:19,176.176 INFO    ] 200
[2026-06-13 16:25:19,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:19,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:25:19,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:19,235.235 INFO    ] No camera update needed
[2026-06-13 16:25:19,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:25:19,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:25:19,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:25:19,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:25:21,282.282 INFO    ] ================================================
[2026-06-13 16:25:21,296.296 INFO    ] Launching Daemon at Sat Jun 13 16:25:21 IST 2026
[2026-06-13 16:25:21,307.307 INFO    ] ================================================
[2026-06-13 16:25:21,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:25:21
[2026-06-13 16:25:21,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:25:22,119.119 INFO    ] Initializing speech engine...
[2026-06-13 16:25:22,125.125 INFO    ] 2026-06-13 16:25:22
[2026-06-13 16:25:22,330.330 INFO    ] 2026-06-13 16:25:22
[2026-06-13 16:25:22,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:25:22,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:25:22,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:22,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:22,700.700 INFO    ] time= 13/06/2026 16:25:22
[2026-06-13 16:25:22,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:22,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:22,852.852 INFO    ] No existing commands found in stream
[2026-06-13 16:25:27,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:25:27,871.871 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 16:25:30,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:25:30,686.686 INFO    ] Checking for system updates...
[2026-06-13 16:25:30,709.709 INFO    ] 200
[2026-06-13 16:25:30,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:30,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:25:30,744.744 INFO    ] No update needed
[2026-06-13 16:25:30,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 16:25:30,768.768 INFO    ] 200
[2026-06-13 16:25:30,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:30,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:25:30,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:25:30,843.843 INFO    ] No camera update needed
[2026-06-13 16:25:30,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:25:30,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:25:30,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:25:30,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:25:32,876.876 INFO    ] ================================================
[2026-06-13 16:25:32,884.884 INFO    ] Launching Daemon at Sat Jun 13 16:25:32 IST 2026
[2026-06-13 16:25:32,890.890 INFO    ] ================================================
[2026-06-13 16:25:33,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:25:33
[2026-06-13 16:25:33,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:25:33,752.752 INFO    ] Initializing speech engine...
[2026-06-13 16:25:33,758.758 INFO    ] 2026-06-13 16:25:33
[2026-06-13 16:25:33,970.970 INFO    ] 2026-06-13 16:25:33
[2026-06-13 16:25:34,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:25:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:25:34,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:34,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:34,389.389 INFO    ] time= 13/06/2026 16:25:34
[2026-06-13 16:25:34,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:34,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:34,491.491 INFO    ] No existing commands found in stream
[2026-06-13 16:25:39,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:25:39,505.505 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 16:25:43,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:25:43,173.173 INFO    ] Checking for system updates...
[2026-06-13 16:25:43,211.211 INFO    ] 200
[2026-06-13 16:25:43,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:43,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:43,265.265 INFO    ] No update needed
[2026-06-13 16:25:43,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 16:25:43,286.286 INFO    ] 200
[2026-06-13 16:25:43,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:43,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:25:43,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:25:43,450.450 INFO    ] No camera update needed
[2026-06-13 16:25:43,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:25:43,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:25:43,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:25:43,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:25:45,499.499 INFO    ] ================================================
[2026-06-13 16:25:45,514.514 INFO    ] Launching Daemon at Sat Jun 13 16:25:45 IST 2026
[2026-06-13 16:25:45,525.525 INFO    ] ================================================
[2026-06-13 16:25:45,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:25:45
[2026-06-13 16:25:46,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:25:46,386.386 INFO    ] Initializing speech engine...
[2026-06-13 16:25:46,392.392 INFO    ] 2026-06-13 16:25:46
[2026-06-13 16:25:46,603.603 INFO    ] 2026-06-13 16:25:46
[2026-06-13 16:25:46,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:25:46,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:25:46,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:46,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:46,965.965 INFO    ] time= 13/06/2026 16:25:46
[2026-06-13 16:25:47,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:47,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:47,146.146 INFO    ] No existing commands found in stream
[2026-06-13 16:25:52,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:25:52,160.160 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 16:25:54,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:25:54,069.069 INFO    ] Checking for system updates...
[2026-06-13 16:25:54,090.090 INFO    ] 200
[2026-06-13 16:25:54,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:54,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:54,123.123 INFO    ] No update needed
[2026-06-13 16:25:54,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 16:25:54,144.144 INFO    ] 200
[2026-06-13 16:25:54,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:25:54,171.171 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:25:54,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:25:54,208.208 INFO    ] No camera update needed
[2026-06-13 16:25:54,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:25:54,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:25:54,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:25:54,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:25:56,257.257 INFO    ] ================================================
[2026-06-13 16:25:56,273.273 INFO    ] Launching Daemon at Sat Jun 13 16:25:56 IST 2026
[2026-06-13 16:25:56,284.284 INFO    ] ================================================
[2026-06-13 16:25:56,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:25:56
[2026-06-13 16:25:56,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:25:57,089.089 INFO    ] Initializing speech engine...
[2026-06-13 16:25:57,095.095 INFO    ] 2026-06-13 16:25:57
[2026-06-13 16:25:57,300.300 INFO    ] 2026-06-13 16:25:57
[2026-06-13 16:25:57,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:25:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:25:57,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:25:57,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:25:57,700.700 INFO    ] time= 13/06/2026 16:25:57
[2026-06-13 16:25:57,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:25:57,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:25:57,820.820 INFO    ] No existing commands found in stream
[2026-06-13 16:26:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:26:02,835.835 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 16:26:07,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:26:07,129.129 INFO    ] Checking for system updates...
[2026-06-13 16:26:07,534.534 INFO    ] 200
[2026-06-13 16:26:07,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:07,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:07,572.572 INFO    ] No update needed
[2026-06-13 16:26:07,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 16:26:07,594.594 INFO    ] 200
[2026-06-13 16:26:07,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:07,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:26:07,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:07,657.657 INFO    ] No camera update needed
[2026-06-13 16:26:07,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:26:07,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:26:07,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:26:07,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:26:09,706.706 INFO    ] ================================================
[2026-06-13 16:26:09,722.722 INFO    ] Launching Daemon at Sat Jun 13 16:26:09 IST 2026
[2026-06-13 16:26:09,733.733 INFO    ] ================================================
[2026-06-13 16:26:10,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:26:10
[2026-06-13 16:26:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:26:10,603.603 INFO    ] Initializing speech engine...
[2026-06-13 16:26:10,607.607 INFO    ] 2026-06-13 16:26:10
[2026-06-13 16:26:10,813.813 INFO    ] 2026-06-13 16:26:10
[2026-06-13 16:26:10,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:26:11,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:26:11,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:26:11,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:26:11,235.235 INFO    ] time= 13/06/2026 16:26:11
[2026-06-13 16:26:11,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:26:11,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:26:11,332.332 INFO    ] No existing commands found in stream
[2026-06-13 16:26:16,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:26:16,346.346 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 16:26:19,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:26:19,139.139 INFO    ] Checking for system updates...
[2026-06-13 16:26:19,160.160 INFO    ] 200
[2026-06-13 16:26:19,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:19,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:19,193.193 INFO    ] No update needed
[2026-06-13 16:26:19,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 16:26:19,214.214 INFO    ] 200
[2026-06-13 16:26:19,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:19,241.241 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:26:19,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:19,282.282 INFO    ] No camera update needed
[2026-06-13 16:26:19,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:26:19,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:26:19,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:26:19,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:26:21,331.331 INFO    ] ================================================
[2026-06-13 16:26:21,346.346 INFO    ] Launching Daemon at Sat Jun 13 16:26:21 IST 2026
[2026-06-13 16:26:21,357.357 INFO    ] ================================================
[2026-06-13 16:26:21,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:26:21
[2026-06-13 16:26:22,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:26:22,182.182 INFO    ] Initializing speech engine...
[2026-06-13 16:26:22,188.188 INFO    ] 2026-06-13 16:26:22
[2026-06-13 16:26:22,394.394 INFO    ] 2026-06-13 16:26:22
[2026-06-13 16:26:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:26:22,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:26:22,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:26:22,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:26:22,804.804 INFO    ] time= 13/06/2026 16:26:22
[2026-06-13 16:26:22,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:26:22,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:26:22,907.907 INFO    ] No existing commands found in stream
[2026-06-13 16:26:27,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:26:27,921.921 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 16:26:30,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:26:30,136.136 INFO    ] Checking for system updates...
[2026-06-13 16:26:30,157.157 INFO    ] 200
[2026-06-13 16:26:30,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:30,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:30,191.191 INFO    ] No update needed
[2026-06-13 16:26:30,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 16:26:30,213.213 INFO    ] 200
[2026-06-13 16:26:30,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:30,242.242 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:26:30,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:30,282.282 INFO    ] No camera update needed
[2026-06-13 16:26:30,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:26:30,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:26:30,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:26:30,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:26:32,328.328 INFO    ] ================================================
[2026-06-13 16:26:32,336.336 INFO    ] Launching Daemon at Sat Jun 13 16:26:32 IST 2026
[2026-06-13 16:26:32,342.342 INFO    ] ================================================
[2026-06-13 16:26:32,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:26:32
[2026-06-13 16:26:33,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:26:33,161.161 INFO    ] Initializing speech engine...
[2026-06-13 16:26:33,167.167 INFO    ] 2026-06-13 16:26:33
[2026-06-13 16:26:33,372.372 INFO    ] 2026-06-13 16:26:33
[2026-06-13 16:26:33,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:26:33,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:26:33,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:26:33,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:26:33,786.786 INFO    ] time= 13/06/2026 16:26:33
[2026-06-13 16:26:33,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:26:33,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:26:33,885.885 INFO    ] No existing commands found in stream
[2026-06-13 16:26:38,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:26:38,897.897 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 16:26:42,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:26:42,562.562 INFO    ] Checking for system updates...
[2026-06-13 16:26:42,584.584 INFO    ] 200
[2026-06-13 16:26:42,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:42,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:42,617.617 INFO    ] No update needed
[2026-06-13 16:26:42,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 16:26:42,638.638 INFO    ] 200
[2026-06-13 16:26:42,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:42,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:26:42,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:26:42,706.706 INFO    ] No camera update needed
[2026-06-13 16:26:42,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:26:42,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:26:42,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:26:42,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:26:44,752.752 INFO    ] ================================================
[2026-06-13 16:26:44,768.768 INFO    ] Launching Daemon at Sat Jun 13 16:26:44 IST 2026
[2026-06-13 16:26:44,778.778 INFO    ] ================================================
[2026-06-13 16:26:45,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:26:45
[2026-06-13 16:26:45,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:26:45,571.571 INFO    ] Initializing speech engine...
[2026-06-13 16:26:45,575.575 INFO    ] 2026-06-13 16:26:45
[2026-06-13 16:26:45,805.805 INFO    ] 2026-06-13 16:26:45
[2026-06-13 16:26:45,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:26:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:26:46,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:26:46,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:26:46,232.232 INFO    ] time= 13/06/2026 16:26:46
[2026-06-13 16:26:46,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:26:46,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:26:46,357.357 INFO    ] No existing commands found in stream
[2026-06-13 16:26:51,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:26:51,371.371 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 16:26:53,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:26:53,563.563 INFO    ] Checking for system updates...
[2026-06-13 16:26:53,583.583 INFO    ] 200
[2026-06-13 16:26:53,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:53,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:26:53,616.616 INFO    ] No update needed
[2026-06-13 16:26:53,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 16:26:53,637.637 INFO    ] 200
[2026-06-13 16:26:53,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:26:53,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:26:53,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:26:53,711.711 INFO    ] No camera update needed
[2026-06-13 16:26:53,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:26:53,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:26:53,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:26:53,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:26:55,759.759 INFO    ] ================================================
[2026-06-13 16:26:55,774.774 INFO    ] Launching Daemon at Sat Jun 13 16:26:55 IST 2026
[2026-06-13 16:26:55,785.785 INFO    ] ================================================
[2026-06-13 16:26:56,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:26:56
[2026-06-13 16:26:56,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:26:56,624.624 INFO    ] Initializing speech engine...
[2026-06-13 16:26:56,629.629 INFO    ] 2026-06-13 16:26:56
[2026-06-13 16:26:56,835.835 INFO    ] 2026-06-13 16:26:56
[2026-06-13 16:26:56,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:26:56,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:26:57,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:26:57,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:26:57,238.238 INFO    ] time= 13/06/2026 16:26:57
[2026-06-13 16:26:57,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:26:57,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:26:57,353.353 INFO    ] No existing commands found in stream
[2026-06-13 16:27:02,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:27:02,361.361 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 16:27:04,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:27:04,014.014 INFO    ] Checking for system updates...
[2026-06-13 16:27:04,035.035 INFO    ] 200
[2026-06-13 16:27:04,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:04,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:04,069.069 INFO    ] No update needed
[2026-06-13 16:27:04,071.071 INFO    ] Checking for camera pi updates...
[2026-06-13 16:27:04,090.090 INFO    ] 200
[2026-06-13 16:27:04,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:04,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:27:04,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:04,160.160 INFO    ] No camera update needed
[2026-06-13 16:27:04,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:27:04,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:27:04,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:27:04,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:27:06,210.210 INFO    ] ================================================
[2026-06-13 16:27:06,227.227 INFO    ] Launching Daemon at Sat Jun 13 16:27:06 IST 2026
[2026-06-13 16:27:06,241.241 INFO    ] ================================================
[2026-06-13 16:27:06,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:27:06
[2026-06-13 16:27:06,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:27:07,109.109 INFO    ] Initializing speech engine...
[2026-06-13 16:27:07,112.112 INFO    ] 2026-06-13 16:27:07
[2026-06-13 16:27:07,321.321 INFO    ] 2026-06-13 16:27:07
[2026-06-13 16:27:07,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:27:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:27:07,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:27:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:27:07,732.732 INFO    ] time= 13/06/2026 16:27:07
[2026-06-13 16:27:07,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:27:07,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:27:07,849.849 INFO    ] No existing commands found in stream
[2026-06-13 16:27:12,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:27:12,863.863 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 16:27:16,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:27:16,633.633 INFO    ] Checking for system updates...
[2026-06-13 16:27:16,654.654 INFO    ] 200
[2026-06-13 16:27:16,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:16,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:27:16,690.690 INFO    ] No update needed
[2026-06-13 16:27:16,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 16:27:16,711.711 INFO    ] 200
[2026-06-13 16:27:16,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:16,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:27:16,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:27:16,774.774 INFO    ] No camera update needed
[2026-06-13 16:27:16,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:27:16,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:27:16,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:27:16,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:27:18,822.822 INFO    ] ================================================
[2026-06-13 16:27:18,837.837 INFO    ] Launching Daemon at Sat Jun 13 16:27:18 IST 2026
[2026-06-13 16:27:18,848.848 INFO    ] ================================================
[2026-06-13 16:27:19,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:27:19
[2026-06-13 16:27:19,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:27:19,623.623 INFO    ] Initializing speech engine...
[2026-06-13 16:27:19,632.632 INFO    ] 2026-06-13 16:27:19
[2026-06-13 16:27:19,838.838 INFO    ] 2026-06-13 16:27:19
[2026-06-13 16:27:19,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:27:20,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:27:20,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:27:20,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:27:20,251.251 INFO    ] time= 13/06/2026 16:27:20
[2026-06-13 16:27:20,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:27:20,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:27:20,454.454 INFO    ] No existing commands found in stream
[2026-06-13 16:27:25,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:27:25,474.474 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 16:27:29,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:27:29,194.194 INFO    ] Checking for system updates...
[2026-06-13 16:27:29,214.214 INFO    ] 200
[2026-06-13 16:27:29,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:29,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:27:29,248.248 INFO    ] No update needed
[2026-06-13 16:27:29,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 16:27:29,269.269 INFO    ] 200
[2026-06-13 16:27:29,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:29,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:27:29,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:29,333.333 INFO    ] No camera update needed
[2026-06-13 16:27:29,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:27:29,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:27:29,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:27:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:27:31,380.380 INFO    ] ================================================
[2026-06-13 16:27:31,397.397 INFO    ] Launching Daemon at Sat Jun 13 16:27:31 IST 2026
[2026-06-13 16:27:31,410.410 INFO    ] ================================================
[2026-06-13 16:27:31,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:27:31
[2026-06-13 16:27:32,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:27:32,829.829 INFO    ] Initializing speech engine...
[2026-06-13 16:27:32,847.847 INFO    ] 2026-06-13 16:27:32
[2026-06-13 16:27:33,094.094 INFO    ] 2026-06-13 16:27:33
[2026-06-13 16:27:33,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:27:33,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:27:33,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:27:33,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:27:33,531.531 INFO    ] time= 13/06/2026 16:27:33
[2026-06-13 16:27:33,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:27:33,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:27:33,714.714 INFO    ] No existing commands found in stream
[2026-06-13 16:27:38,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:27:38,729.729 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 16:27:39,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:27:39,358.358 INFO    ] Checking for system updates...
[2026-06-13 16:27:39,380.380 INFO    ] 200
[2026-06-13 16:27:39,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:39,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:39,412.412 INFO    ] No update needed
[2026-06-13 16:27:39,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 16:27:39,433.433 INFO    ] 200
[2026-06-13 16:27:39,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:39,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:27:39,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:27:39,497.497 INFO    ] No camera update needed
[2026-06-13 16:27:39,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:27:39,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:27:39,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:27:39,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:27:41,545.545 INFO    ] ================================================
[2026-06-13 16:27:41,560.560 INFO    ] Launching Daemon at Sat Jun 13 16:27:41 IST 2026
[2026-06-13 16:27:41,571.571 INFO    ] ================================================
[2026-06-13 16:27:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:27:41
[2026-06-13 16:27:42,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:27:42,411.411 INFO    ] Initializing speech engine...
[2026-06-13 16:27:42,416.416 INFO    ] 2026-06-13 16:27:42
[2026-06-13 16:27:42,620.620 INFO    ] 2026-06-13 16:27:42
[2026-06-13 16:27:42,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:27:42,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:27:42,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:27:42,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:27:42,964.964 INFO    ] time= 13/06/2026 16:27:42
[2026-06-13 16:27:42,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:27:42,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:27:43,102.102 INFO    ] No existing commands found in stream
[2026-06-13 16:27:48,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:27:48,120.120 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-13 16:27:52,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:27:52,217.217 INFO    ] Checking for system updates...
[2026-06-13 16:27:52,239.239 INFO    ] 200
[2026-06-13 16:27:52,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:52,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:52,272.272 INFO    ] No update needed
[2026-06-13 16:27:52,273.273 INFO    ] Checking for camera pi updates...
[2026-06-13 16:27:52,294.294 INFO    ] 200
[2026-06-13 16:27:52,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:27:52,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:27:52,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:27:52,460.460 INFO    ] No camera update needed
[2026-06-13 16:27:52,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:27:52,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:27:52,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:27:52,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:27:54,509.509 INFO    ] ================================================
[2026-06-13 16:27:54,524.524 INFO    ] Launching Daemon at Sat Jun 13 16:27:54 IST 2026
[2026-06-13 16:27:54,536.536 INFO    ] ================================================
[2026-06-13 16:27:54,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:27:54
[2026-06-13 16:27:55,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:27:55,399.399 INFO    ] Initializing speech engine...
[2026-06-13 16:27:55,405.405 INFO    ] 2026-06-13 16:27:55
[2026-06-13 16:27:55,617.617 INFO    ] 2026-06-13 16:27:55
[2026-06-13 16:27:55,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:27:55,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:27:55,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:27:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:27:56,029.029 INFO    ] time= 13/06/2026 16:27:55
[2026-06-13 16:27:56,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:27:56,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:27:56,140.140 INFO    ] No existing commands found in stream
[2026-06-13 16:28:01,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:01,155.155 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 16:28:02,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:28:02,064.064 INFO    ] Checking for system updates...
[2026-06-13 16:28:02,090.090 INFO    ] 200
[2026-06-13 16:28:02,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:02,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:02,136.136 INFO    ] No update needed
[2026-06-13 16:28:02,138.138 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:02,168.168 INFO    ] 200
[2026-06-13 16:28:02,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:02,206.206 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:02,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:02,256.256 INFO    ] No camera update needed
[2026-06-13 16:28:02,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:02,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:02,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:02,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:28:04,319.319 INFO    ] ================================================
[2026-06-13 16:28:04,335.335 INFO    ] Launching Daemon at Sat Jun 13 16:28:04 IST 2026
[2026-06-13 16:28:04,347.347 INFO    ] ================================================
[2026-06-13 16:28:04,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:28:04
[2026-06-13 16:28:05,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:28:05,134.134 INFO    ] Initializing speech engine...
[2026-06-13 16:28:05,138.138 INFO    ] 2026-06-13 16:28:05
[2026-06-13 16:28:05,358.358 INFO    ] 2026-06-13 16:28:05
[2026-06-13 16:28:05,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:28:05,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:28:05,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:28:05,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:28:05,766.766 INFO    ] time= 13/06/2026 16:28:05
[2026-06-13 16:28:05,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:28:05,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:28:05,898.898 INFO    ] No existing commands found in stream
[2026-06-13 16:28:10,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:10,931.931 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 16:28:14,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:28:14,419.419 INFO    ] Checking for system updates...
[2026-06-13 16:28:14,440.440 INFO    ] 200
[2026-06-13 16:28:14,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:14,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:14,474.474 INFO    ] No update needed
[2026-06-13 16:28:14,475.475 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:14,495.495 INFO    ] 200
[2026-06-13 16:28:14,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:14,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:14,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:14,561.561 INFO    ] No camera update needed
[2026-06-13 16:28:14,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:14,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:14,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:14,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:28:16,609.609 INFO    ] ================================================
[2026-06-13 16:28:16,626.626 INFO    ] Launching Daemon at Sat Jun 13 16:28:16 IST 2026
[2026-06-13 16:28:16,636.636 INFO    ] ================================================
[2026-06-13 16:28:17,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:28:16
[2026-06-13 16:28:17,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:28:17,443.443 INFO    ] Initializing speech engine...
[2026-06-13 16:28:17,451.451 INFO    ] 2026-06-13 16:28:17
[2026-06-13 16:28:17,664.664 INFO    ] 2026-06-13 16:28:17
[2026-06-13 16:28:17,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:28:17,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:28:17,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:28:18,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:28:18,063.063 INFO    ] time= 13/06/2026 16:28:18
[2026-06-13 16:28:18,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:28:18,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:28:18,185.185 INFO    ] No existing commands found in stream
[2026-06-13 16:28:23,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:23,198.198 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 16:28:23,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:28:23,852.852 INFO    ] Checking for system updates...
[2026-06-13 16:28:23,874.874 INFO    ] 200
[2026-06-13 16:28:23,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:23,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:23,908.908 INFO    ] No update needed
[2026-06-13 16:28:23,909.909 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:23,929.929 INFO    ] 200
[2026-06-13 16:28:23,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:23,956.956 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:23,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:23,999.999 INFO    ] No camera update needed
[2026-06-13 16:28:24,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:24,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:24,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:24,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:28:26,047.047 INFO    ] ================================================
[2026-06-13 16:28:26,062.062 INFO    ] Launching Daemon at Sat Jun 13 16:28:26 IST 2026
[2026-06-13 16:28:26,073.073 INFO    ] ================================================
[2026-06-13 16:28:26,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:28:26
[2026-06-13 16:28:26,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:28:26,881.881 INFO    ] Initializing speech engine...
[2026-06-13 16:28:26,890.890 INFO    ] 2026-06-13 16:28:26
[2026-06-13 16:28:27,104.104 INFO    ] 2026-06-13 16:28:27
[2026-06-13 16:28:27,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:28:27,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:28:27,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:28:27,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:28:27,518.518 INFO    ] time= 13/06/2026 16:28:27
[2026-06-13 16:28:27,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:28:27,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:28:27,658.658 INFO    ] No existing commands found in stream
[2026-06-13 16:28:32,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:32,671.671 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 16:28:34,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:28:34,557.557 INFO    ] Checking for system updates...
[2026-06-13 16:28:34,578.578 INFO    ] 200
[2026-06-13 16:28:34,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:34,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:34,612.612 INFO    ] No update needed
[2026-06-13 16:28:34,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:34,635.635 INFO    ] 200
[2026-06-13 16:28:34,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:34,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:34,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:34,701.701 INFO    ] No camera update needed
[2026-06-13 16:28:34,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:34,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:34,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:34,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:28:36,750.750 INFO    ] ================================================
[2026-06-13 16:28:36,765.765 INFO    ] Launching Daemon at Sat Jun 13 16:28:36 IST 2026
[2026-06-13 16:28:36,776.776 INFO    ] ================================================
[2026-06-13 16:28:37,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:28:37
[2026-06-13 16:28:37,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:28:37,593.593 INFO    ] Initializing speech engine...
[2026-06-13 16:28:37,598.598 INFO    ] 2026-06-13 16:28:37
[2026-06-13 16:28:37,805.805 INFO    ] 2026-06-13 16:28:37
[2026-06-13 16:28:37,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:28:38,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:28:38,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:28:38,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:28:38,214.214 INFO    ] time= 13/06/2026 16:28:38
[2026-06-13 16:28:38,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:28:38,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:28:38,317.317 INFO    ] No existing commands found in stream
[2026-06-13 16:28:43,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:43,331.331 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 16:28:47,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:28:47,628.628 INFO    ] Checking for system updates...
[2026-06-13 16:28:47,649.649 INFO    ] 200
[2026-06-13 16:28:47,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:47,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:47,684.684 INFO    ] No update needed
[2026-06-13 16:28:47,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:47,706.706 INFO    ] 200
[2026-06-13 16:28:47,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:47,730.730 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:47,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:28:47,767.767 INFO    ] No camera update needed
[2026-06-13 16:28:47,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:47,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:47,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:47,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:28:49,813.813 INFO    ] ================================================
[2026-06-13 16:28:49,828.828 INFO    ] Launching Daemon at Sat Jun 13 16:28:49 IST 2026
[2026-06-13 16:28:49,839.839 INFO    ] ================================================
[2026-06-13 16:28:50,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:28:50
[2026-06-13 16:28:50,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:28:50,679.679 INFO    ] Initializing speech engine...
[2026-06-13 16:28:50,684.684 INFO    ] 2026-06-13 16:28:50
[2026-06-13 16:28:50,889.889 INFO    ] 2026-06-13 16:28:50
[2026-06-13 16:28:50,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:28:51,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:28:51,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:28:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:28:51,283.283 INFO    ] time= 13/06/2026 16:28:51
[2026-06-13 16:28:51,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:28:51,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:28:51,404.404 INFO    ] No existing commands found in stream
[2026-06-13 16:28:56,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:28:56,415.415 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 16:28:59,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:28:59,083.083 INFO    ] Checking for system updates...
[2026-06-13 16:28:59,104.104 INFO    ] 200
[2026-06-13 16:28:59,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:59,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:59,137.137 INFO    ] No update needed
[2026-06-13 16:28:59,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 16:28:59,158.158 INFO    ] 200
[2026-06-13 16:28:59,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:28:59,183.183 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:28:59,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:28:59,224.224 INFO    ] No camera update needed
[2026-06-13 16:28:59,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:28:59,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:28:59,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:28:59,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:01,275.275 INFO    ] ================================================
[2026-06-13 16:29:01,291.291 INFO    ] Launching Daemon at Sat Jun 13 16:29:01 IST 2026
[2026-06-13 16:29:01,302.302 INFO    ] ================================================
[2026-06-13 16:29:01,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:01
[2026-06-13 16:29:02,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:02,665.665 INFO    ] Initializing speech engine...
[2026-06-13 16:29:02,690.690 INFO    ] 2026-06-13 16:29:02
[2026-06-13 16:29:03,000.000 INFO    ] 2026-06-13 16:29:02
[2026-06-13 16:29:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:03,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:03,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:03,491.491 INFO    ] time= 13/06/2026 16:29:03
[2026-06-13 16:29:03,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:03,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:03,680.680 INFO    ] No existing commands found in stream
[2026-06-13 16:29:08,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:29:08,695.695 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 16:29:10,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:29:10,053.053 INFO    ] Checking for system updates...
[2026-06-13 16:29:10,075.075 INFO    ] 200
[2026-06-13 16:29:10,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:10,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:10,110.110 INFO    ] No update needed
[2026-06-13 16:29:10,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 16:29:10,131.131 INFO    ] 200
[2026-06-13 16:29:10,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:10,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:29:10,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:10,197.197 INFO    ] No camera update needed
[2026-06-13 16:29:10,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:29:10,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:29:10,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:29:10,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:12,245.245 INFO    ] ================================================
[2026-06-13 16:29:12,261.261 INFO    ] Launching Daemon at Sat Jun 13 16:29:12 IST 2026
[2026-06-13 16:29:12,272.272 INFO    ] ================================================
[2026-06-13 16:29:12,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:12
[2026-06-13 16:29:12,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:13,064.064 INFO    ] Initializing speech engine...
[2026-06-13 16:29:13,078.078 INFO    ] 2026-06-13 16:29:13
[2026-06-13 16:29:13,286.286 INFO    ] 2026-06-13 16:29:13
[2026-06-13 16:29:13,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:13,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:13,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:13,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:13,691.691 INFO    ] time= 13/06/2026 16:29:13
[2026-06-13 16:29:13,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:13,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:13,802.802 INFO    ] No existing commands found in stream
[2026-06-13 16:29:18,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:29:18,814.814 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 16:29:23,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:29:23,117.117 INFO    ] Checking for system updates...
[2026-06-13 16:29:23,139.139 INFO    ] 200
[2026-06-13 16:29:23,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:23,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:23,174.174 INFO    ] No update needed
[2026-06-13 16:29:23,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 16:29:23,195.195 INFO    ] 200
[2026-06-13 16:29:23,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:23,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:29:23,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:29:23,269.269 INFO    ] No camera update needed
[2026-06-13 16:29:23,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:29:23,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:29:23,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:29:23,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:25,318.318 INFO    ] ================================================
[2026-06-13 16:29:25,334.334 INFO    ] Launching Daemon at Sat Jun 13 16:29:25 IST 2026
[2026-06-13 16:29:25,345.345 INFO    ] ================================================
[2026-06-13 16:29:25,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:25
[2026-06-13 16:29:26,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:26,197.197 INFO    ] Initializing speech engine...
[2026-06-13 16:29:26,202.202 INFO    ] 2026-06-13 16:29:26
[2026-06-13 16:29:26,410.410 INFO    ] 2026-06-13 16:29:26
[2026-06-13 16:29:26,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:26,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:26,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:26,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:26,680.680 INFO    ] time= 13/06/2026 16:29:26
[2026-06-13 16:29:26,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:26,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:26,858.858 INFO    ] No existing commands found in stream
[2026-06-13 16:29:31,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:29:31,881.881 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 16:29:32,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:29:32,436.436 INFO    ] Checking for system updates...
[2026-06-13 16:29:32,462.462 INFO    ] 200
[2026-06-13 16:29:32,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:32,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:32,495.495 INFO    ] No update needed
[2026-06-13 16:29:32,497.497 INFO    ] Checking for camera pi updates...
[2026-06-13 16:29:32,516.516 INFO    ] 200
[2026-06-13 16:29:32,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:32,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:29:32,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:32,574.574 INFO    ] No camera update needed
[2026-06-13 16:29:32,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:29:32,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:29:32,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:29:32,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:34,622.622 INFO    ] ================================================
[2026-06-13 16:29:34,638.638 INFO    ] Launching Daemon at Sat Jun 13 16:29:34 IST 2026
[2026-06-13 16:29:34,648.648 INFO    ] ================================================
[2026-06-13 16:29:35,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:35
[2026-06-13 16:29:35,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:35,488.488 INFO    ] Initializing speech engine...
[2026-06-13 16:29:35,500.500 INFO    ] 2026-06-13 16:29:35
[2026-06-13 16:29:35,706.706 INFO    ] 2026-06-13 16:29:35
[2026-06-13 16:29:35,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:35,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:35,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:36,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:36,109.109 INFO    ] time= 13/06/2026 16:29:36
[2026-06-13 16:29:36,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:36,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:36,219.219 INFO    ] No existing commands found in stream
[2026-06-13 16:29:41,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:29:41,231.231 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 16:29:42,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:29:42,953.953 INFO    ] Checking for system updates...
[2026-06-13 16:29:42,973.973 INFO    ] 200
[2026-06-13 16:29:42,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:43,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:29:43,007.007 INFO    ] No update needed
[2026-06-13 16:29:43,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 16:29:43,028.028 INFO    ] 200
[2026-06-13 16:29:43,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:43,053.053 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:29:43,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:29:43,096.096 INFO    ] No camera update needed
[2026-06-13 16:29:43,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:29:43,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:29:43,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:29:43,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:45,143.143 INFO    ] ================================================
[2026-06-13 16:29:45,159.159 INFO    ] Launching Daemon at Sat Jun 13 16:29:45 IST 2026
[2026-06-13 16:29:45,169.169 INFO    ] ================================================
[2026-06-13 16:29:45,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:45
[2026-06-13 16:29:45,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:45,961.961 INFO    ] Initializing speech engine...
[2026-06-13 16:29:45,974.974 INFO    ] 2026-06-13 16:29:45
[2026-06-13 16:29:46,198.198 INFO    ] 2026-06-13 16:29:46
[2026-06-13 16:29:46,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:46,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:46,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:46,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:46,604.604 INFO    ] time= 13/06/2026 16:29:46
[2026-06-13 16:29:46,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:46,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:46,749.749 INFO    ] No existing commands found in stream
[2026-06-13 16:29:51,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:29:51,763.763 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 16:29:54,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:29:54,722.722 INFO    ] Checking for system updates...
[2026-06-13 16:29:54,744.744 INFO    ] 200
[2026-06-13 16:29:54,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:54,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:54,779.779 INFO    ] No update needed
[2026-06-13 16:29:54,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 16:29:54,801.801 INFO    ] 200
[2026-06-13 16:29:54,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:29:54,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:29:54,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:29:54,970.970 INFO    ] No camera update needed
[2026-06-13 16:29:54,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:29:54,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:29:54,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:29:54,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:29:57,017.017 INFO    ] ================================================
[2026-06-13 16:29:57,033.033 INFO    ] Launching Daemon at Sat Jun 13 16:29:57 IST 2026
[2026-06-13 16:29:57,044.044 INFO    ] ================================================
[2026-06-13 16:29:57,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:29:57
[2026-06-13 16:29:57,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:29:57,837.837 INFO    ] Initializing speech engine...
[2026-06-13 16:29:57,840.840 INFO    ] 2026-06-13 16:29:57
[2026-06-13 16:29:58,045.045 INFO    ] 2026-06-13 16:29:58
[2026-06-13 16:29:58,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:29:58,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:29:58,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:29:58,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:29:58,455.455 INFO    ] time= 13/06/2026 16:29:58
[2026-06-13 16:29:58,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:29:58,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:29:58,632.632 INFO    ] No existing commands found in stream
[2026-06-13 16:30:03,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:30:03,646.646 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 16:30:08,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:30:08,738.738 INFO    ] Checking for system updates...
[2026-06-13 16:30:08,780.780 INFO    ] 200
[2026-06-13 16:30:08,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:08,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:08,848.848 INFO    ] No update needed
[2026-06-13 16:30:08,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 16:30:08,885.885 INFO    ] 200
[2026-06-13 16:30:08,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:08,910.910 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:30:08,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:08,949.949 INFO    ] No camera update needed
[2026-06-13 16:30:08,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:30:08,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:30:08,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:30:08,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:30:11,996.996 INFO    ] ================================================
[2026-06-13 16:30:11,011.011 INFO    ] Launching Daemon at Sat Jun 13 16:30:11 IST 2026
[2026-06-13 16:30:11,028.028 INFO    ] ================================================
[2026-06-13 16:30:11,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:30:11
[2026-06-13 16:30:11,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:30:11,911.911 INFO    ] Initializing speech engine...
[2026-06-13 16:30:11,915.915 INFO    ] 2026-06-13 16:30:11
[2026-06-13 16:30:12,122.122 INFO    ] 2026-06-13 16:30:12
[2026-06-13 16:30:12,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:30:12,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:30:12,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:30:12,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:30:12,528.528 INFO    ] time= 13/06/2026 16:30:12
[2026-06-13 16:30:12,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:30:12,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:30:12,645.645 INFO    ] No existing commands found in stream
[2026-06-13 16:30:17,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:30:17,663.663 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 16:30:21,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:30:21,868.868 INFO    ] Checking for system updates...
[2026-06-13 16:30:21,890.890 INFO    ] 200
[2026-06-13 16:30:21,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:21,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:21,923.923 INFO    ] No update needed
[2026-06-13 16:30:21,925.925 INFO    ] Checking for camera pi updates...
[2026-06-13 16:30:21,945.945 INFO    ] 200
[2026-06-13 16:30:21,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:21,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:30:22,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:22,017.017 INFO    ] No camera update needed
[2026-06-13 16:30:22,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:30:22,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:30:22,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:30:22,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:30:24,064.064 INFO    ] ================================================
[2026-06-13 16:30:24,080.080 INFO    ] Launching Daemon at Sat Jun 13 16:30:24 IST 2026
[2026-06-13 16:30:24,090.090 INFO    ] ================================================
[2026-06-13 16:30:24,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:30:24
[2026-06-13 16:30:24,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:30:24,904.904 INFO    ] Initializing speech engine...
[2026-06-13 16:30:24,917.917 INFO    ] 2026-06-13 16:30:24
[2026-06-13 16:30:25,124.124 INFO    ] 2026-06-13 16:30:25
[2026-06-13 16:30:25,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:30:25,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:30:25,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:30:25,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:30:25,526.526 INFO    ] time= 13/06/2026 16:30:25
[2026-06-13 16:30:25,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:30:25,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:30:25,734.734 INFO    ] No existing commands found in stream
[2026-06-13 16:30:30,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:30:30,747.747 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 16:30:31,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:30:31,315.315 INFO    ] Checking for system updates...
[2026-06-13 16:30:31,335.335 INFO    ] 200
[2026-06-13 16:30:31,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:31,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:30:31,369.369 INFO    ] No update needed
[2026-06-13 16:30:31,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 16:30:31,391.391 INFO    ] 200
[2026-06-13 16:30:31,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:31,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:30:31,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:30:31,461.461 INFO    ] No camera update needed
[2026-06-13 16:30:31,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:30:31,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:30:31,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:30:31,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:30:33,497.497 INFO    ] ================================================
[2026-06-13 16:30:33,505.505 INFO    ] Launching Daemon at Sat Jun 13 16:30:33 IST 2026
[2026-06-13 16:30:33,511.511 INFO    ] ================================================
[2026-06-13 16:30:33,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:30:33
[2026-06-13 16:30:34,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:30:34,367.367 INFO    ] Initializing speech engine...
[2026-06-13 16:30:34,377.377 INFO    ] 2026-06-13 16:30:34
[2026-06-13 16:30:34,587.587 INFO    ] 2026-06-13 16:30:34
[2026-06-13 16:30:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:30:34,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:30:34,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:30:34,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:30:35,007.007 INFO    ] time= 13/06/2026 16:30:34
[2026-06-13 16:30:35,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:30:35,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:30:35,102.102 INFO    ] No existing commands found in stream
[2026-06-13 16:30:40,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:30:40,116.116 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 16:30:41,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:30:41,024.024 INFO    ] Checking for system updates...
[2026-06-13 16:30:41,046.046 INFO    ] 200
[2026-06-13 16:30:41,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:41,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:30:41,082.082 INFO    ] No update needed
[2026-06-13 16:30:41,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 16:30:41,104.104 INFO    ] 200
[2026-06-13 16:30:41,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:41,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:30:41,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:30:41,167.167 INFO    ] No camera update needed
[2026-06-13 16:30:41,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:30:41,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:30:41,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:30:41,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:30:43,215.215 INFO    ] ================================================
[2026-06-13 16:30:43,230.230 INFO    ] Launching Daemon at Sat Jun 13 16:30:43 IST 2026
[2026-06-13 16:30:43,241.241 INFO    ] ================================================
[2026-06-13 16:30:43,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:30:43
[2026-06-13 16:30:43,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:30:44,080.080 INFO    ] Initializing speech engine...
[2026-06-13 16:30:44,085.085 INFO    ] 2026-06-13 16:30:44
[2026-06-13 16:30:44,288.288 INFO    ] 2026-06-13 16:30:44
[2026-06-13 16:30:44,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:30:44,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:30:44,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:30:44,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:30:44,705.705 INFO    ] time= 13/06/2026 16:30:44
[2026-06-13 16:30:44,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:30:44,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:30:44,804.804 INFO    ] No existing commands found in stream
[2026-06-13 16:30:49,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:30:49,817.817 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 16:30:50,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:30:50,872.872 INFO    ] Checking for system updates...
[2026-06-13 16:30:50,893.893 INFO    ] 200
[2026-06-13 16:30:50,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:50,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:50,928.928 INFO    ] No update needed
[2026-06-13 16:30:50,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 16:30:50,951.951 INFO    ] 200
[2026-06-13 16:30:50,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:30:50,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:30:51,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:30:51,016.016 INFO    ] No camera update needed
[2026-06-13 16:30:51,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:30:51,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:30:51,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:30:51,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:30:53,063.063 INFO    ] ================================================
[2026-06-13 16:30:53,078.078 INFO    ] Launching Daemon at Sat Jun 13 16:30:53 IST 2026
[2026-06-13 16:30:53,089.089 INFO    ] ================================================
[2026-06-13 16:30:53,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:30:53
[2026-06-13 16:30:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:30:54,207.207 INFO    ] Initializing speech engine...
[2026-06-13 16:30:54,218.218 INFO    ] 2026-06-13 16:30:54
[2026-06-13 16:30:54,480.480 INFO    ] 2026-06-13 16:30:54
[2026-06-13 16:30:54,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:30:54,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:30:54,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:30:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:30:54,953.953 INFO    ] time= 13/06/2026 16:30:54
[2026-06-13 16:30:55,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:30:55,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:30:55,164.164 INFO    ] No existing commands found in stream
[2026-06-13 16:31:00,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:00,195.195 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 16:31:03,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:31:03,187.187 INFO    ] Checking for system updates...
[2026-06-13 16:31:03,208.208 INFO    ] 200
[2026-06-13 16:31:03,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:03,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:31:03,241.241 INFO    ] No update needed
[2026-06-13 16:31:03,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:03,264.264 INFO    ] 200
[2026-06-13 16:31:03,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:03,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:03,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:31:03,313.313 INFO    ] No camera update needed
[2026-06-13 16:31:03,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:03,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:03,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:03,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:31:05,362.362 INFO    ] ================================================
[2026-06-13 16:31:05,379.379 INFO    ] Launching Daemon at Sat Jun 13 16:31:05 IST 2026
[2026-06-13 16:31:05,395.395 INFO    ] ================================================
[2026-06-13 16:31:05,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:31:05
[2026-06-13 16:31:06,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:31:06,196.196 INFO    ] Initializing speech engine...
[2026-06-13 16:31:06,202.202 INFO    ] 2026-06-13 16:31:06
[2026-06-13 16:31:06,408.408 INFO    ] 2026-06-13 16:31:06
[2026-06-13 16:31:06,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:31:06,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:31:06,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:31:06,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:31:06,813.813 INFO    ] time= 13/06/2026 16:31:06
[2026-06-13 16:31:06,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:31:06,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:31:06,929.929 INFO    ] No existing commands found in stream
[2026-06-13 16:31:11,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:11,942.942 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 16:31:12,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:31:12,642.642 INFO    ] Checking for system updates...
[2026-06-13 16:31:12,663.663 INFO    ] 200
[2026-06-13 16:31:12,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:12,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:31:12,696.696 INFO    ] No update needed
[2026-06-13 16:31:12,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:12,718.718 INFO    ] 200
[2026-06-13 16:31:12,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:12,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:12,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:31:12,788.788 INFO    ] No camera update needed
[2026-06-13 16:31:12,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:12,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:12,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:31:14,835.835 INFO    ] ================================================
[2026-06-13 16:31:14,850.850 INFO    ] Launching Daemon at Sat Jun 13 16:31:14 IST 2026
[2026-06-13 16:31:14,861.861 INFO    ] ================================================
[2026-06-13 16:31:15,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:31:15
[2026-06-13 16:31:15,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:31:15,708.708 INFO    ] Initializing speech engine...
[2026-06-13 16:31:15,719.719 INFO    ] 2026-06-13 16:31:15
[2026-06-13 16:31:15,927.927 INFO    ] 2026-06-13 16:31:15
[2026-06-13 16:31:15,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:31:16,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:31:16,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:31:16,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:31:16,343.343 INFO    ] time= 13/06/2026 16:31:16
[2026-06-13 16:31:16,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:31:16,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:31:16,457.457 INFO    ] No existing commands found in stream
[2026-06-13 16:31:21,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:21,469.469 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 16:31:25,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:31:25,559.559 INFO    ] Checking for system updates...
[2026-06-13 16:31:25,581.581 INFO    ] 200
[2026-06-13 16:31:25,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:25,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:25,619.619 INFO    ] No update needed
[2026-06-13 16:31:25,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:25,641.641 INFO    ] 200
[2026-06-13 16:31:25,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:25,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:25,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:25,704.704 INFO    ] No camera update needed
[2026-06-13 16:31:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:25,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:25,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:25,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:31:27,750.750 INFO    ] ================================================
[2026-06-13 16:31:27,765.765 INFO    ] Launching Daemon at Sat Jun 13 16:31:27 IST 2026
[2026-06-13 16:31:27,775.775 INFO    ] ================================================
[2026-06-13 16:31:28,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:31:28
[2026-06-13 16:31:28,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:31:28,585.585 INFO    ] Initializing speech engine...
[2026-06-13 16:31:28,590.590 INFO    ] 2026-06-13 16:31:28
[2026-06-13 16:31:28,793.793 INFO    ] 2026-06-13 16:31:28
[2026-06-13 16:31:28,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:31:28,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:31:29,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:31:29,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:31:29,188.188 INFO    ] time= 13/06/2026 16:31:29
[2026-06-13 16:31:29,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:31:29,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:31:29,307.307 INFO    ] No existing commands found in stream
[2026-06-13 16:31:34,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:34,321.321 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 16:31:36,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:31:36,553.553 INFO    ] Checking for system updates...
[2026-06-13 16:31:36,575.575 INFO    ] 200
[2026-06-13 16:31:36,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:36,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:36,608.608 INFO    ] No update needed
[2026-06-13 16:31:36,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:36,629.629 INFO    ] 200
[2026-06-13 16:31:36,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:36,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:36,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:36,694.694 INFO    ] No camera update needed
[2026-06-13 16:31:36,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:36,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:36,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:36,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:31:38,740.740 INFO    ] ================================================
[2026-06-13 16:31:38,755.755 INFO    ] Launching Daemon at Sat Jun 13 16:31:38 IST 2026
[2026-06-13 16:31:38,766.766 INFO    ] ================================================
[2026-06-13 16:31:39,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:31:39
[2026-06-13 16:31:39,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:31:39,559.559 INFO    ] Initializing speech engine...
[2026-06-13 16:31:39,564.564 INFO    ] 2026-06-13 16:31:39
[2026-06-13 16:31:39,769.769 INFO    ] 2026-06-13 16:31:39
[2026-06-13 16:31:39,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:31:39,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:31:39,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:31:40,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:31:40,114.114 INFO    ] time= 13/06/2026 16:31:40
[2026-06-13 16:31:40,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:31:40,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:31:40,283.283 INFO    ] No existing commands found in stream
[2026-06-13 16:31:45,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:45,295.295 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 16:31:47,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:31:47,783.783 INFO    ] Checking for system updates...
[2026-06-13 16:31:47,805.805 INFO    ] 200
[2026-06-13 16:31:47,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:47,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:47,841.841 INFO    ] No update needed
[2026-06-13 16:31:47,842.842 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:47,864.864 INFO    ] 200
[2026-06-13 16:31:47,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:47,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:47,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:47,931.931 INFO    ] No camera update needed
[2026-06-13 16:31:47,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:47,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:47,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:47,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:31:49,978.978 INFO    ] ================================================
[2026-06-13 16:31:49,993.993 INFO    ] Launching Daemon at Sat Jun 13 16:31:49 IST 2026
[2026-06-13 16:31:50,004.004 INFO    ] ================================================
[2026-06-13 16:31:50,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:31:50
[2026-06-13 16:31:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:31:50,806.806 INFO    ] Initializing speech engine...
[2026-06-13 16:31:50,819.819 INFO    ] 2026-06-13 16:31:50
[2026-06-13 16:31:51,038.038 INFO    ] 2026-06-13 16:31:51
[2026-06-13 16:31:51,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:31:51,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:31:51,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:31:51,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:31:51,441.441 INFO    ] time= 13/06/2026 16:31:51
[2026-06-13 16:31:51,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:31:51,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:31:51,595.595 INFO    ] No existing commands found in stream
[2026-06-13 16:31:56,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:31:56,606.606 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 16:31:58,460.460 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 16:31:58,485.485 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d907d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 16:31:58,494.494 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d907d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 16:31:58,502.502 INFO    ] None
[2026-06-13 16:31:58,505.505 INFO    ] Checking for system updates...
[2026-06-13 16:31:58,531.531 INFO    ] 200
[2026-06-13 16:31:58,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:58,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:58,567.567 INFO    ] No update needed
[2026-06-13 16:31:58,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 16:31:58,589.589 INFO    ] 200
[2026-06-13 16:31:58,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:31:58,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:31:58,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:31:58,903.903 INFO    ] No camera update needed
[2026-06-13 16:31:58,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:31:58,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:31:58,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:31:58,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:32:00,949.949 INFO    ] ================================================
[2026-06-13 16:32:00,964.964 INFO    ] Launching Daemon at Sat Jun 13 16:32:00 IST 2026
[2026-06-13 16:32:00,975.975 INFO    ] ================================================
[2026-06-13 16:32:01,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:32:01
[2026-06-13 16:32:02,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:32:02,585.585 INFO    ] Initializing speech engine...
[2026-06-13 16:32:02,597.597 INFO    ] 2026-06-13 16:32:02
[2026-06-13 16:32:02,901.901 INFO    ] 2026-06-13 16:32:02
[2026-06-13 16:32:02,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:32:03,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:32:03,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:32:03,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:32:03,413.413 INFO    ] time= 13/06/2026 16:32:03
[2026-06-13 16:32:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:32:03,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:32:03,562.562 INFO    ] No existing commands found in stream
[2026-06-13 16:32:08,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:32:08,577.577 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 16:32:09,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:32:09,743.743 INFO    ] Checking for system updates...
[2026-06-13 16:32:09,764.764 INFO    ] 200
[2026-06-13 16:32:09,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:09,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:09,796.796 INFO    ] No update needed
[2026-06-13 16:32:09,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 16:32:09,818.818 INFO    ] 200
[2026-06-13 16:32:09,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:09,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:32:09,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:09,883.883 INFO    ] No camera update needed
[2026-06-13 16:32:09,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:32:09,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:32:09,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:32:09,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:32:11,930.930 INFO    ] ================================================
[2026-06-13 16:32:11,945.945 INFO    ] Launching Daemon at Sat Jun 13 16:32:11 IST 2026
[2026-06-13 16:32:11,955.955 INFO    ] ================================================
[2026-06-13 16:32:12,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:32:12
[2026-06-13 16:32:12,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:32:12,781.781 INFO    ] Initializing speech engine...
[2026-06-13 16:32:12,786.786 INFO    ] 2026-06-13 16:32:12
[2026-06-13 16:32:12,991.991 INFO    ] 2026-06-13 16:32:12
[2026-06-13 16:32:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:32:13,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:32:13,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:32:13,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:32:13,399.399 INFO    ] time= 13/06/2026 16:32:13
[2026-06-13 16:32:13,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:32:13,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:32:13,502.502 INFO    ] No existing commands found in stream
[2026-06-13 16:32:18,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:32:18,516.516 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 16:32:22,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:32:22,119.119 INFO    ] Checking for system updates...
[2026-06-13 16:32:22,141.141 INFO    ] 200
[2026-06-13 16:32:22,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:22,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:32:22,176.176 INFO    ] No update needed
[2026-06-13 16:32:22,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 16:32:22,196.196 INFO    ] 200
[2026-06-13 16:32:22,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:22,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:32:22,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:32:22,245.245 INFO    ] No camera update needed
[2026-06-13 16:32:22,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:32:22,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:32:22,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:32:22,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:32:24,296.296 INFO    ] ================================================
[2026-06-13 16:32:24,311.311 INFO    ] Launching Daemon at Sat Jun 13 16:32:24 IST 2026
[2026-06-13 16:32:24,322.322 INFO    ] ================================================
[2026-06-13 16:32:24,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:32:24
[2026-06-13 16:32:24,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:32:25,139.139 INFO    ] Initializing speech engine...
[2026-06-13 16:32:25,147.147 INFO    ] 2026-06-13 16:32:25
[2026-06-13 16:32:25,365.365 INFO    ] 2026-06-13 16:32:25
[2026-06-13 16:32:25,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:32:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:32:25,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:32:25,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:32:25,780.780 INFO    ] time= 13/06/2026 16:32:25
[2026-06-13 16:32:25,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:32:25,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:32:25,916.916 INFO    ] No existing commands found in stream
[2026-06-13 16:32:30,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:32:30,929.929 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 16:32:34,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:32:34,595.595 INFO    ] Checking for system updates...
[2026-06-13 16:32:34,636.636 INFO    ] 200
[2026-06-13 16:32:34,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:34,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:34,704.704 INFO    ] No update needed
[2026-06-13 16:32:34,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 16:32:34,747.747 INFO    ] 200
[2026-06-13 16:32:34,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:34,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:32:34,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:34,820.820 INFO    ] No camera update needed
[2026-06-13 16:32:34,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:32:34,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:32:34,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:32:34,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:32:36,877.877 INFO    ] ================================================
[2026-06-13 16:32:36,892.892 INFO    ] Launching Daemon at Sat Jun 13 16:32:36 IST 2026
[2026-06-13 16:32:36,903.903 INFO    ] ================================================
[2026-06-13 16:32:37,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:32:37
[2026-06-13 16:32:37,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:32:37,994.994 INFO    ] Initializing speech engine...
[2026-06-13 16:32:37,999.999 INFO    ] 2026-06-13 16:32:37
[2026-06-13 16:32:38,203.203 INFO    ] 2026-06-13 16:32:38
[2026-06-13 16:32:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:32:38,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:32:38,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:32:38,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:32:38,601.601 INFO    ] time= 13/06/2026 16:32:38
[2026-06-13 16:32:38,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:32:38,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:32:38,714.714 INFO    ] No existing commands found in stream
[2026-06-13 16:32:43,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:32:43,728.728 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 16:32:46,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:32:46,804.804 INFO    ] Checking for system updates...
[2026-06-13 16:32:46,827.827 INFO    ] 200
[2026-06-13 16:32:46,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:46,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:46,860.860 INFO    ] No update needed
[2026-06-13 16:32:46,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 16:32:46,881.881 INFO    ] 200
[2026-06-13 16:32:46,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:46,907.907 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:32:46,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:32:46,951.951 INFO    ] No camera update needed
[2026-06-13 16:32:46,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:32:46,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:32:46,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:32:46,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:32:49,998.998 INFO    ] ================================================
[2026-06-13 16:32:49,015.015 INFO    ] Launching Daemon at Sat Jun 13 16:32:49 IST 2026
[2026-06-13 16:32:49,026.026 INFO    ] ================================================
[2026-06-13 16:32:49,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:32:49
[2026-06-13 16:32:49,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:32:49,862.862 INFO    ] Initializing speech engine...
[2026-06-13 16:32:49,876.876 INFO    ] 2026-06-13 16:32:49
[2026-06-13 16:32:50,089.089 INFO    ] 2026-06-13 16:32:50
[2026-06-13 16:32:50,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:32:50,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:32:50,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:32:50,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:32:50,494.494 INFO    ] time= 13/06/2026 16:32:50
[2026-06-13 16:32:50,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:32:50,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:32:50,611.611 INFO    ] No existing commands found in stream
[2026-06-13 16:32:55,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:32:55,621.621 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 16:32:58,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:32:58,904.904 INFO    ] Checking for system updates...
[2026-06-13 16:32:58,926.926 INFO    ] 200
[2026-06-13 16:32:58,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:58,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:32:58,960.960 INFO    ] No update needed
[2026-06-13 16:32:58,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 16:32:58,984.984 INFO    ] 200
[2026-06-13 16:32:58,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:32:59,010.010 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:32:59,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:32:59,048.048 INFO    ] No camera update needed
[2026-06-13 16:32:59,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:32:59,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:32:59,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:32:59,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:01,095.095 INFO    ] ================================================
[2026-06-13 16:33:01,110.110 INFO    ] Launching Daemon at Sat Jun 13 16:33:01 IST 2026
[2026-06-13 16:33:01,120.120 INFO    ] ================================================
[2026-06-13 16:33:01,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:01
[2026-06-13 16:33:01,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:02,096.096 INFO    ] Initializing speech engine...
[2026-06-13 16:33:02,101.101 INFO    ] 2026-06-13 16:33:02
[2026-06-13 16:33:02,340.340 INFO    ] 2026-06-13 16:33:02
[2026-06-13 16:33:02,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:02,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:02,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:02,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:02,643.643 INFO    ] time= 13/06/2026 16:33:02
[2026-06-13 16:33:02,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:02,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:02,734.734 INFO    ] No existing commands found in stream
[2026-06-13 16:33:07,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:33:07,749.749 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 16:33:09,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:33:09,837.837 INFO    ] Checking for system updates...
[2026-06-13 16:33:09,859.859 INFO    ] 200
[2026-06-13 16:33:09,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:09,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:09,894.894 INFO    ] No update needed
[2026-06-13 16:33:09,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 16:33:09,915.915 INFO    ] 200
[2026-06-13 16:33:09,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:09,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:33:09,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:09,981.981 INFO    ] No camera update needed
[2026-06-13 16:33:09,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:33:09,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:33:09,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:33:09,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:12,027.027 INFO    ] ================================================
[2026-06-13 16:33:12,043.043 INFO    ] Launching Daemon at Sat Jun 13 16:33:12 IST 2026
[2026-06-13 16:33:12,053.053 INFO    ] ================================================
[2026-06-13 16:33:12,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:12
[2026-06-13 16:33:12,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:12,865.865 INFO    ] Initializing speech engine...
[2026-06-13 16:33:12,873.873 INFO    ] 2026-06-13 16:33:12
[2026-06-13 16:33:13,071.071 INFO    ] 2026-06-13 16:33:13
[2026-06-13 16:33:13,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:13,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:13,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:13,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:13,474.474 INFO    ] time= 13/06/2026 16:33:13
[2026-06-13 16:33:13,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:13,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:13,583.583 INFO    ] No existing commands found in stream
[2026-06-13 16:33:18,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:33:18,596.596 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 16:33:20,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:33:20,259.259 INFO    ] Checking for system updates...
[2026-06-13 16:33:20,283.283 INFO    ] 200
[2026-06-13 16:33:20,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:20,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:20,319.319 INFO    ] No update needed
[2026-06-13 16:33:20,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 16:33:20,340.340 INFO    ] 200
[2026-06-13 16:33:20,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:20,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:33:20,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:20,403.403 INFO    ] No camera update needed
[2026-06-13 16:33:20,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:33:20,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:33:20,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:33:20,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:22,450.450 INFO    ] ================================================
[2026-06-13 16:33:22,465.465 INFO    ] Launching Daemon at Sat Jun 13 16:33:22 IST 2026
[2026-06-13 16:33:22,476.476 INFO    ] ================================================
[2026-06-13 16:33:22,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:22
[2026-06-13 16:33:23,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:23,346.346 INFO    ] Initializing speech engine...
[2026-06-13 16:33:23,351.351 INFO    ] 2026-06-13 16:33:23
[2026-06-13 16:33:23,558.558 INFO    ] 2026-06-13 16:33:23
[2026-06-13 16:33:23,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:23,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:23,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:23,979.979 INFO    ] time= 13/06/2026 16:33:23
[2026-06-13 16:33:24,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:24,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:24,076.076 INFO    ] No existing commands found in stream
[2026-06-13 16:33:29,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:33:29,089.089 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 16:33:32,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:33:32,075.075 INFO    ] Checking for system updates...
[2026-06-13 16:33:32,098.098 INFO    ] 200
[2026-06-13 16:33:32,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:32,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:32,139.139 INFO    ] No update needed
[2026-06-13 16:33:32,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 16:33:32,164.164 INFO    ] 200
[2026-06-13 16:33:32,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:32,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:33:32,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:32,221.221 INFO    ] No camera update needed
[2026-06-13 16:33:32,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:33:32,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:33:32,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:33:32,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:34,270.270 INFO    ] ================================================
[2026-06-13 16:33:34,285.285 INFO    ] Launching Daemon at Sat Jun 13 16:33:34 IST 2026
[2026-06-13 16:33:34,296.296 INFO    ] ================================================
[2026-06-13 16:33:34,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:34
[2026-06-13 16:33:34,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:35,113.113 INFO    ] Initializing speech engine...
[2026-06-13 16:33:35,118.118 INFO    ] 2026-06-13 16:33:35
[2026-06-13 16:33:35,327.327 INFO    ] 2026-06-13 16:33:35
[2026-06-13 16:33:35,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:35,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:35,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:35,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:35,727.727 INFO    ] time= 13/06/2026 16:33:35
[2026-06-13 16:33:35,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:35,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:35,911.911 INFO    ] No existing commands found in stream
[2026-06-13 16:33:40,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:33:40,923.923 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 16:33:42,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:33:42,222.222 INFO    ] Checking for system updates...
[2026-06-13 16:33:42,244.244 INFO    ] 200
[2026-06-13 16:33:42,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:42,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:42,282.282 INFO    ] No update needed
[2026-06-13 16:33:42,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 16:33:42,303.303 INFO    ] 200
[2026-06-13 16:33:42,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:42,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:33:42,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:42,370.370 INFO    ] No camera update needed
[2026-06-13 16:33:42,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:33:42,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:33:42,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:33:42,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:44,420.420 INFO    ] ================================================
[2026-06-13 16:33:44,435.435 INFO    ] Launching Daemon at Sat Jun 13 16:33:44 IST 2026
[2026-06-13 16:33:44,446.446 INFO    ] ================================================
[2026-06-13 16:33:44,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:44
[2026-06-13 16:33:45,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:45,286.286 INFO    ] Initializing speech engine...
[2026-06-13 16:33:45,295.295 INFO    ] 2026-06-13 16:33:45
[2026-06-13 16:33:45,509.509 INFO    ] 2026-06-13 16:33:45
[2026-06-13 16:33:45,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:45,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:45,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:45,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:45,928.928 INFO    ] time= 13/06/2026 16:33:45
[2026-06-13 16:33:45,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:45,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:46,038.038 INFO    ] No existing commands found in stream
[2026-06-13 16:33:51,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:33:51,055.055 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 16:33:51,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:33:51,683.683 INFO    ] Checking for system updates...
[2026-06-13 16:33:51,706.706 INFO    ] 200
[2026-06-13 16:33:51,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:51,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:51,742.742 INFO    ] No update needed
[2026-06-13 16:33:51,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 16:33:51,764.764 INFO    ] 200
[2026-06-13 16:33:51,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:33:51,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:33:51,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:33:51,832.832 INFO    ] No camera update needed
[2026-06-13 16:33:51,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:33:51,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:33:51,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:33:51,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:33:53,881.881 INFO    ] ================================================
[2026-06-13 16:33:53,896.896 INFO    ] Launching Daemon at Sat Jun 13 16:33:53 IST 2026
[2026-06-13 16:33:53,907.907 INFO    ] ================================================
[2026-06-13 16:33:54,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:33:54
[2026-06-13 16:33:54,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:33:54,733.733 INFO    ] Initializing speech engine...
[2026-06-13 16:33:54,743.743 INFO    ] 2026-06-13 16:33:54
[2026-06-13 16:33:54,949.949 INFO    ] 2026-06-13 16:33:54
[2026-06-13 16:33:54,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:33:55,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:33:55,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:33:55,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:33:55,348.348 INFO    ] time= 13/06/2026 16:33:55
[2026-06-13 16:33:55,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:33:55,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:33:55,463.463 INFO    ] No existing commands found in stream
[2026-06-13 16:34:00,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:00,475.475 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 16:34:02,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:34:02,677.677 INFO    ] Checking for system updates...
[2026-06-13 16:34:02,710.710 INFO    ] 200
[2026-06-13 16:34:02,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:02,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:34:02,774.774 INFO    ] No update needed
[2026-06-13 16:34:02,776.776 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:02,802.802 INFO    ] 200
[2026-06-13 16:34:02,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:02,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:02,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:34:02,869.869 INFO    ] No camera update needed
[2026-06-13 16:34:02,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:02,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:02,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:02,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:04,922.922 INFO    ] ================================================
[2026-06-13 16:34:04,938.938 INFO    ] Launching Daemon at Sat Jun 13 16:34:04 IST 2026
[2026-06-13 16:34:04,949.949 INFO    ] ================================================
[2026-06-13 16:34:05,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:05
[2026-06-13 16:34:05,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:05,761.761 INFO    ] Initializing speech engine...
[2026-06-13 16:34:05,774.774 INFO    ] 2026-06-13 16:34:05
[2026-06-13 16:34:05,990.990 INFO    ] 2026-06-13 16:34:05
[2026-06-13 16:34:06,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:06,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:06,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:06,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:06,226.226 INFO    ] time= 13/06/2026 16:34:06
[2026-06-13 16:34:06,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:06,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:06,316.316 INFO    ] No existing commands found in stream
[2026-06-13 16:34:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:11,353.353 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 16:34:11,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:34:11,797.797 INFO    ] Checking for system updates...
[2026-06-13 16:34:11,821.821 INFO    ] 200
[2026-06-13 16:34:11,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:11,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:11,854.854 INFO    ] No update needed
[2026-06-13 16:34:11,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:11,876.876 INFO    ] 200
[2026-06-13 16:34:11,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:11,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:11,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:11,943.943 INFO    ] No camera update needed
[2026-06-13 16:34:11,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:11,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:11,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:11,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:13,993.993 INFO    ] ================================================
[2026-06-13 16:34:14,009.009 INFO    ] Launching Daemon at Sat Jun 13 16:34:14 IST 2026
[2026-06-13 16:34:14,020.020 INFO    ] ================================================
[2026-06-13 16:34:14,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:14
[2026-06-13 16:34:14,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:14,806.806 INFO    ] Initializing speech engine...
[2026-06-13 16:34:14,814.814 INFO    ] 2026-06-13 16:34:14
[2026-06-13 16:34:15,037.037 INFO    ] 2026-06-13 16:34:15
[2026-06-13 16:34:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:15,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:15,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:15,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:15,457.457 INFO    ] time= 13/06/2026 16:34:15
[2026-06-13 16:34:15,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:15,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:15,588.588 INFO    ] No existing commands found in stream
[2026-06-13 16:34:20,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:20,602.602 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 16:34:22,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:34:22,400.400 INFO    ] Checking for system updates...
[2026-06-13 16:34:22,424.424 INFO    ] 200
[2026-06-13 16:34:22,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:22,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:22,461.461 INFO    ] No update needed
[2026-06-13 16:34:22,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:22,485.485 INFO    ] 200
[2026-06-13 16:34:22,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:22,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:22,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:22,560.560 INFO    ] No camera update needed
[2026-06-13 16:34:22,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:22,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:22,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:22,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:24,611.611 INFO    ] ================================================
[2026-06-13 16:34:24,626.626 INFO    ] Launching Daemon at Sat Jun 13 16:34:24 IST 2026
[2026-06-13 16:34:24,637.637 INFO    ] ================================================
[2026-06-13 16:34:24,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:24
[2026-06-13 16:34:25,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:25,422.422 INFO    ] Initializing speech engine...
[2026-06-13 16:34:25,426.426 INFO    ] 2026-06-13 16:34:25
[2026-06-13 16:34:25,653.653 INFO    ] 2026-06-13 16:34:25
[2026-06-13 16:34:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:25,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:25,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:26,022.022 INFO    ] time= 13/06/2026 16:34:26
[2026-06-13 16:34:26,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:26,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:26,201.201 INFO    ] No existing commands found in stream
[2026-06-13 16:34:31,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:31,213.213 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 16:34:32,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:34:32,481.481 INFO    ] Checking for system updates...
[2026-06-13 16:34:32,520.520 INFO    ] 200
[2026-06-13 16:34:32,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:32,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:32,586.586 INFO    ] No update needed
[2026-06-13 16:34:32,589.589 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:32,626.626 INFO    ] 200
[2026-06-13 16:34:32,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:32,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:32,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:32,708.708 INFO    ] No camera update needed
[2026-06-13 16:34:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:32,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:32,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:32,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:34,769.769 INFO    ] ================================================
[2026-06-13 16:34:34,784.784 INFO    ] Launching Daemon at Sat Jun 13 16:34:34 IST 2026
[2026-06-13 16:34:34,794.794 INFO    ] ================================================
[2026-06-13 16:34:35,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:35
[2026-06-13 16:34:35,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:35,846.846 INFO    ] Initializing speech engine...
[2026-06-13 16:34:35,850.850 INFO    ] 2026-06-13 16:34:35
[2026-06-13 16:34:36,077.077 INFO    ] 2026-06-13 16:34:36
[2026-06-13 16:34:36,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:36,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:36,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:36,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:36,501.501 INFO    ] time= 13/06/2026 16:34:36
[2026-06-13 16:34:36,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:36,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:36,624.624 INFO    ] No existing commands found in stream
[2026-06-13 16:34:41,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:41,637.637 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 16:34:43,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:34:43,568.568 INFO    ] Checking for system updates...
[2026-06-13 16:34:43,590.590 INFO    ] 200
[2026-06-13 16:34:43,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:43,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:43,623.623 INFO    ] No update needed
[2026-06-13 16:34:43,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:43,644.644 INFO    ] 200
[2026-06-13 16:34:43,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:43,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:43,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:43,711.711 INFO    ] No camera update needed
[2026-06-13 16:34:43,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:43,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:43,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:43,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:45,760.760 INFO    ] ================================================
[2026-06-13 16:34:45,775.775 INFO    ] Launching Daemon at Sat Jun 13 16:34:45 IST 2026
[2026-06-13 16:34:45,786.786 INFO    ] ================================================
[2026-06-13 16:34:46,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:46
[2026-06-13 16:34:46,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:46,565.565 INFO    ] Initializing speech engine...
[2026-06-13 16:34:46,570.570 INFO    ] 2026-06-13 16:34:46
[2026-06-13 16:34:46,796.796 INFO    ] 2026-06-13 16:34:46
[2026-06-13 16:34:46,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:47,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:47,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:47,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:47,530.530 INFO    ] time= 13/06/2026 16:34:47
[2026-06-13 16:34:47,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:47,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:47,638.638 INFO    ] No existing commands found in stream
[2026-06-13 16:34:52,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:34:52,652.652 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 16:34:53,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:34:53,963.963 INFO    ] Checking for system updates...
[2026-06-13 16:34:53,987.987 INFO    ] 200
[2026-06-13 16:34:53,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:54,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:54,022.022 INFO    ] No update needed
[2026-06-13 16:34:54,023.023 INFO    ] Checking for camera pi updates...
[2026-06-13 16:34:54,044.044 INFO    ] 200
[2026-06-13 16:34:54,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:34:54,070.070 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:34:54,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:34:54,108.108 INFO    ] No camera update needed
[2026-06-13 16:34:54,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:34:54,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:34:54,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:34:54,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:34:56,156.156 INFO    ] ================================================
[2026-06-13 16:34:56,171.171 INFO    ] Launching Daemon at Sat Jun 13 16:34:56 IST 2026
[2026-06-13 16:34:56,182.182 INFO    ] ================================================
[2026-06-13 16:34:56,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:34:56
[2026-06-13 16:34:56,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:34:56,978.978 INFO    ] Initializing speech engine...
[2026-06-13 16:34:56,984.984 INFO    ] 2026-06-13 16:34:56
[2026-06-13 16:34:57,189.189 INFO    ] 2026-06-13 16:34:57
[2026-06-13 16:34:57,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:34:57,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:34:57,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:34:57,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:34:57,590.590 INFO    ] time= 13/06/2026 16:34:57
[2026-06-13 16:34:57,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:34:57,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:34:57,707.707 INFO    ] No existing commands found in stream
[2026-06-13 16:35:02,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:02,724.724 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 16:35:03,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:35:03,735.735 INFO    ] Checking for system updates...
[2026-06-13 16:35:03,756.756 INFO    ] 200
[2026-06-13 16:35:03,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:03,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:03,790.790 INFO    ] No update needed
[2026-06-13 16:35:03,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:03,811.811 INFO    ] 200
[2026-06-13 16:35:03,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:03,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:35:03,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:03,874.874 INFO    ] No camera update needed
[2026-06-13 16:35:03,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:35:03,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:35:03,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:35:03,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:35:05,921.921 INFO    ] ================================================
[2026-06-13 16:35:05,937.937 INFO    ] Launching Daemon at Sat Jun 13 16:35:05 IST 2026
[2026-06-13 16:35:05,948.948 INFO    ] ================================================
[2026-06-13 16:35:06,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:35:06
[2026-06-13 16:35:06,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:35:06,804.804 INFO    ] Initializing speech engine...
[2026-06-13 16:35:06,808.808 INFO    ] 2026-06-13 16:35:06
[2026-06-13 16:35:07,014.014 INFO    ] 2026-06-13 16:35:06
[2026-06-13 16:35:07,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:35:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:35:07,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:35:07,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:35:07,406.406 INFO    ] time= 13/06/2026 16:35:07
[2026-06-13 16:35:07,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:35:07,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:35:07,532.532 INFO    ] No existing commands found in stream
[2026-06-13 16:35:12,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:12,545.545 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 16:35:13,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:35:13,467.467 INFO    ] Checking for system updates...
[2026-06-13 16:35:13,489.489 INFO    ] 200
[2026-06-13 16:35:13,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:13,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:35:13,524.524 INFO    ] No update needed
[2026-06-13 16:35:13,525.525 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:13,544.544 INFO    ] 200
[2026-06-13 16:35:13,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:13,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:35:13,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:35:13,611.611 INFO    ] No camera update needed
[2026-06-13 16:35:13,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:35:13,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:35:13,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:35:13,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:35:15,658.658 INFO    ] ================================================
[2026-06-13 16:35:15,674.674 INFO    ] Launching Daemon at Sat Jun 13 16:35:15 IST 2026
[2026-06-13 16:35:15,684.684 INFO    ] ================================================
[2026-06-13 16:35:16,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:35:16
[2026-06-13 16:35:16,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:35:16,499.499 INFO    ] Initializing speech engine...
[2026-06-13 16:35:16,509.509 INFO    ] 2026-06-13 16:35:16
[2026-06-13 16:35:16,713.713 INFO    ] 2026-06-13 16:35:16
[2026-06-13 16:35:16,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:35:16,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:35:16,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:35:17,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:35:17,118.118 INFO    ] time= 13/06/2026 16:35:17
[2026-06-13 16:35:17,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:35:17,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:35:17,228.228 INFO    ] No existing commands found in stream
[2026-06-13 16:35:22,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:22,242.242 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 16:35:25,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:35:25,713.713 INFO    ] Checking for system updates...
[2026-06-13 16:35:25,734.734 INFO    ] 200
[2026-06-13 16:35:25,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:25,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:35:25,768.768 INFO    ] No update needed
[2026-06-13 16:35:25,769.769 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:25,789.789 INFO    ] 200
[2026-06-13 16:35:25,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:25,814.814 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:35:25,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:35:25,852.852 INFO    ] No camera update needed
[2026-06-13 16:35:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:35:25,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:35:25,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:35:25,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:35:27,900.900 INFO    ] ================================================
[2026-06-13 16:35:27,915.915 INFO    ] Launching Daemon at Sat Jun 13 16:35:27 IST 2026
[2026-06-13 16:35:27,926.926 INFO    ] ================================================
[2026-06-13 16:35:28,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:35:28
[2026-06-13 16:35:28,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:35:28,756.756 INFO    ] Initializing speech engine...
[2026-06-13 16:35:28,761.761 INFO    ] 2026-06-13 16:35:28
[2026-06-13 16:35:28,973.973 INFO    ] 2026-06-13 16:35:28
[2026-06-13 16:35:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:35:29,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:35:29,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:35:29,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:35:29,371.371 INFO    ] time= 13/06/2026 16:35:29
[2026-06-13 16:35:29,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:35:29,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:35:29,480.480 INFO    ] No existing commands found in stream
[2026-06-13 16:35:34,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:34,492.492 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 16:35:37,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:35:37,487.487 INFO    ] Checking for system updates...
[2026-06-13 16:35:37,508.508 INFO    ] 200
[2026-06-13 16:35:37,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:37,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:37,541.541 INFO    ] No update needed
[2026-06-13 16:35:37,543.543 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:37,562.562 INFO    ] 200
[2026-06-13 16:35:37,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:37,589.589 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:35:37,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:37,624.624 INFO    ] No camera update needed
[2026-06-13 16:35:37,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:35:37,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:35:37,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:35:37,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:35:39,673.673 INFO    ] ================================================
[2026-06-13 16:35:39,689.689 INFO    ] Launching Daemon at Sat Jun 13 16:35:39 IST 2026
[2026-06-13 16:35:39,700.700 INFO    ] ================================================
[2026-06-13 16:35:40,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:35:40
[2026-06-13 16:35:40,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:35:40,535.535 INFO    ] Initializing speech engine...
[2026-06-13 16:35:40,541.541 INFO    ] 2026-06-13 16:35:40
[2026-06-13 16:35:40,748.748 INFO    ] 2026-06-13 16:35:40
[2026-06-13 16:35:40,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:35:40,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:35:40,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:35:41,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:35:41,143.143 INFO    ] time= 13/06/2026 16:35:41
[2026-06-13 16:35:41,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:35:41,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:35:41,262.262 INFO    ] No existing commands found in stream
[2026-06-13 16:35:46,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:46,276.276 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 16:35:48,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:35:48,698.698 INFO    ] Checking for system updates...
[2026-06-13 16:35:48,720.720 INFO    ] 200
[2026-06-13 16:35:48,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:48,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:48,753.753 INFO    ] No update needed
[2026-06-13 16:35:48,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:48,775.775 INFO    ] 200
[2026-06-13 16:35:48,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:48,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:35:48,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:48,843.843 INFO    ] No camera update needed
[2026-06-13 16:35:48,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:35:48,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:35:48,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:35:48,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:35:50,891.891 INFO    ] ================================================
[2026-06-13 16:35:50,907.907 INFO    ] Launching Daemon at Sat Jun 13 16:35:50 IST 2026
[2026-06-13 16:35:50,917.917 INFO    ] ================================================
[2026-06-13 16:35:51,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:35:51
[2026-06-13 16:35:52,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:35:52,295.295 INFO    ] Initializing speech engine...
[2026-06-13 16:35:52,304.304 INFO    ] 2026-06-13 16:35:52
[2026-06-13 16:35:52,549.549 INFO    ] 2026-06-13 16:35:52
[2026-06-13 16:35:52,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:35:52,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:35:52,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:35:52,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:35:52,997.997 INFO    ] time= 13/06/2026 16:35:52
[2026-06-13 16:35:53,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:35:53,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:35:53,251.251 INFO    ] No existing commands found in stream
[2026-06-13 16:35:58,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:35:58,269.269 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 16:35:59,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:35:59,899.899 INFO    ] Checking for system updates...
[2026-06-13 16:35:59,921.921 INFO    ] 200
[2026-06-13 16:35:59,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:35:59,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:35:59,954.954 INFO    ] No update needed
[2026-06-13 16:35:59,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 16:35:59,975.975 INFO    ] 200
[2026-06-13 16:35:59,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:00,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:00,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:00,040.040 INFO    ] No camera update needed
[2026-06-13 16:36:00,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:00,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:00,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:00,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:02,085.085 INFO    ] ================================================
[2026-06-13 16:36:02,098.098 INFO    ] Launching Daemon at Sat Jun 13 16:36:02 IST 2026
[2026-06-13 16:36:02,111.111 INFO    ] ================================================
[2026-06-13 16:36:02,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:02
[2026-06-13 16:36:03,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:03,599.599 INFO    ] Initializing speech engine...
[2026-06-13 16:36:03,604.604 INFO    ] 2026-06-13 16:36:03
[2026-06-13 16:36:03,904.904 INFO    ] 2026-06-13 16:36:03
[2026-06-13 16:36:03,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:04,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:04,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:04,260.260 INFO    ] time= 13/06/2026 16:36:04
[2026-06-13 16:36:04,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:04,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:04,340.340 INFO    ] No existing commands found in stream
[2026-06-13 16:36:09,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:36:09,354.354 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 16:36:10,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:36:10,130.130 INFO    ] Checking for system updates...
[2026-06-13 16:36:10,151.151 INFO    ] 200
[2026-06-13 16:36:10,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:10,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:36:10,184.184 INFO    ] No update needed
[2026-06-13 16:36:10,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 16:36:10,207.207 INFO    ] 200
[2026-06-13 16:36:10,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:10,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:10,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:10,371.371 INFO    ] No camera update needed
[2026-06-13 16:36:10,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:10,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:10,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:10,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:12,418.418 INFO    ] ================================================
[2026-06-13 16:36:12,434.434 INFO    ] Launching Daemon at Sat Jun 13 16:36:12 IST 2026
[2026-06-13 16:36:12,444.444 INFO    ] ================================================
[2026-06-13 16:36:12,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:12
[2026-06-13 16:36:13,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:13,260.260 INFO    ] Initializing speech engine...
[2026-06-13 16:36:13,265.265 INFO    ] 2026-06-13 16:36:13
[2026-06-13 16:36:13,519.519 INFO    ] 2026-06-13 16:36:13
[2026-06-13 16:36:13,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:13,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:13,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:13,915.915 INFO    ] time= 13/06/2026 16:36:13
[2026-06-13 16:36:13,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:13,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:14,035.035 INFO    ] No existing commands found in stream
[2026-06-13 16:36:19,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:36:19,057.057 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 16:36:21,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:36:21,157.157 INFO    ] Checking for system updates...
[2026-06-13 16:36:21,177.177 INFO    ] 200
[2026-06-13 16:36:21,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:21,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:36:21,211.211 INFO    ] No update needed
[2026-06-13 16:36:21,212.212 INFO    ] Checking for camera pi updates...
[2026-06-13 16:36:21,233.233 INFO    ] 200
[2026-06-13 16:36:21,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:21,259.259 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:21,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:36:21,296.296 INFO    ] No camera update needed
[2026-06-13 16:36:21,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:21,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:21,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:21,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:23,344.344 INFO    ] ================================================
[2026-06-13 16:36:23,359.359 INFO    ] Launching Daemon at Sat Jun 13 16:36:23 IST 2026
[2026-06-13 16:36:23,370.370 INFO    ] ================================================
[2026-06-13 16:36:23,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:23
[2026-06-13 16:36:24,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:24,209.209 INFO    ] Initializing speech engine...
[2026-06-13 16:36:24,225.225 INFO    ] 2026-06-13 16:36:24
[2026-06-13 16:36:24,469.469 INFO    ] 2026-06-13 16:36:24
[2026-06-13 16:36:24,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:24,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:24,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:24,993.993 INFO    ] time= 13/06/2026 16:36:24
[2026-06-13 16:36:25,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:25,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:25,190.190 INFO    ] No existing commands found in stream
[2026-06-13 16:36:30,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:36:30,228.228 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 16:36:31,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:36:31,801.801 INFO    ] Checking for system updates...
[2026-06-13 16:36:31,826.826 INFO    ] 200
[2026-06-13 16:36:31,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:31,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:31,870.870 INFO    ] No update needed
[2026-06-13 16:36:31,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 16:36:31,894.894 INFO    ] 200
[2026-06-13 16:36:31,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:31,925.925 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:31,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:31,950.950 INFO    ] No camera update needed
[2026-06-13 16:36:31,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:31,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:31,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:31,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:33,994.994 INFO    ] ================================================
[2026-06-13 16:36:34,009.009 INFO    ] Launching Daemon at Sat Jun 13 16:36:34 IST 2026
[2026-06-13 16:36:34,019.019 INFO    ] ================================================
[2026-06-13 16:36:34,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:34
[2026-06-13 16:36:34,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:34,797.797 INFO    ] Initializing speech engine...
[2026-06-13 16:36:34,810.810 INFO    ] 2026-06-13 16:36:34
[2026-06-13 16:36:35,029.029 INFO    ] 2026-06-13 16:36:34
[2026-06-13 16:36:35,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:35,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:35,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:35,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:35,407.407 INFO    ] time= 13/06/2026 16:36:35
[2026-06-13 16:36:35,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:35,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:35,588.588 INFO    ] No existing commands found in stream
[2026-06-13 16:36:40,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:36:40,602.602 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 16:36:44,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:36:44,642.642 INFO    ] Checking for system updates...
[2026-06-13 16:36:44,663.663 INFO    ] 200
[2026-06-13 16:36:44,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:44,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:36:44,698.698 INFO    ] No update needed
[2026-06-13 16:36:44,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 16:36:44,719.719 INFO    ] 200
[2026-06-13 16:36:44,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:44,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:44,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:36:44,787.787 INFO    ] No camera update needed
[2026-06-13 16:36:44,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:44,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:44,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:44,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:46,834.834 INFO    ] ================================================
[2026-06-13 16:36:46,850.850 INFO    ] Launching Daemon at Sat Jun 13 16:36:46 IST 2026
[2026-06-13 16:36:46,861.861 INFO    ] ================================================
[2026-06-13 16:36:47,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:47
[2026-06-13 16:36:47,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:48,234.234 INFO    ] Initializing speech engine...
[2026-06-13 16:36:48,242.242 INFO    ] 2026-06-13 16:36:48
[2026-06-13 16:36:48,539.539 INFO    ] 2026-06-13 16:36:48
[2026-06-13 16:36:48,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:48,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:48,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:48,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:48,872.872 INFO    ] time= 13/06/2026 16:36:48
[2026-06-13 16:36:48,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:48,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:48,943.943 INFO    ] No existing commands found in stream
[2026-06-13 16:36:53,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:36:53,956.956 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 16:36:55,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:36:55,202.202 INFO    ] Checking for system updates...
[2026-06-13 16:36:55,223.223 INFO    ] 200
[2026-06-13 16:36:55,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:55,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:55,256.256 INFO    ] No update needed
[2026-06-13 16:36:55,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 16:36:55,277.277 INFO    ] 200
[2026-06-13 16:36:55,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:36:55,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:36:55,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:36:55,343.343 INFO    ] No camera update needed
[2026-06-13 16:36:55,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:36:55,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:36:55,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:36:55,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:36:57,396.396 INFO    ] ================================================
[2026-06-13 16:36:57,411.411 INFO    ] Launching Daemon at Sat Jun 13 16:36:57 IST 2026
[2026-06-13 16:36:57,422.422 INFO    ] ================================================
[2026-06-13 16:36:57,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:36:57
[2026-06-13 16:36:58,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:36:58,245.245 INFO    ] Initializing speech engine...
[2026-06-13 16:36:58,256.256 INFO    ] 2026-06-13 16:36:58
[2026-06-13 16:36:58,478.478 INFO    ] 2026-06-13 16:36:58
[2026-06-13 16:36:58,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:36:58,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:36:58,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:36:58,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:36:58,822.822 INFO    ] time= 13/06/2026 16:36:58
[2026-06-13 16:36:58,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:36:58,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:36:58,935.935 INFO    ] No existing commands found in stream
[2026-06-13 16:37:03,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:03,961.961 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 16:37:04,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:37:04,977.977 INFO    ] Checking for system updates...
[2026-06-13 16:37:05,000.000 INFO    ] 200
[2026-06-13 16:37:05,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:05,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:37:05,038.038 INFO    ] No update needed
[2026-06-13 16:37:05,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 16:37:05,061.061 INFO    ] 200
[2026-06-13 16:37:05,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:05,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:37:05,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:05,132.132 INFO    ] No camera update needed
[2026-06-13 16:37:05,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:37:05,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:37:05,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:37:05,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:37:07,176.176 INFO    ] ================================================
[2026-06-13 16:37:07,192.192 INFO    ] Launching Daemon at Sat Jun 13 16:37:07 IST 2026
[2026-06-13 16:37:07,208.208 INFO    ] ================================================
[2026-06-13 16:37:07,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:37:07
[2026-06-13 16:37:07,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:37:08,043.043 INFO    ] Initializing speech engine...
[2026-06-13 16:37:08,046.046 INFO    ] 2026-06-13 16:37:08
[2026-06-13 16:37:08,245.245 INFO    ] 2026-06-13 16:37:08
[2026-06-13 16:37:08,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:37:08,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:37:08,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:37:08,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:37:08,522.522 INFO    ] time= 13/06/2026 16:37:08
[2026-06-13 16:37:08,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:37:08,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:37:08,630.630 INFO    ] No existing commands found in stream
[2026-06-13 16:37:13,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:13,667.667 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 16:37:17,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:37:17,523.523 INFO    ] Checking for system updates...
[2026-06-13 16:37:17,544.544 INFO    ] 200
[2026-06-13 16:37:17,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:17,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:17,580.580 INFO    ] No update needed
[2026-06-13 16:37:17,581.581 INFO    ] Checking for camera pi updates...
[2026-06-13 16:37:17,601.601 INFO    ] 200
[2026-06-13 16:37:17,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:17,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:37:17,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:17,654.654 INFO    ] No camera update needed
[2026-06-13 16:37:17,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:37:17,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:37:17,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:37:17,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:37:19,701.701 INFO    ] ================================================
[2026-06-13 16:37:19,716.716 INFO    ] Launching Daemon at Sat Jun 13 16:37:19 IST 2026
[2026-06-13 16:37:19,727.727 INFO    ] ================================================
[2026-06-13 16:37:20,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:37:20
[2026-06-13 16:37:20,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:37:20,546.546 INFO    ] Initializing speech engine...
[2026-06-13 16:37:20,551.551 INFO    ] 2026-06-13 16:37:20
[2026-06-13 16:37:20,758.758 INFO    ] 2026-06-13 16:37:20
[2026-06-13 16:37:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:37:20,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:37:20,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:37:21,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:37:21,156.156 INFO    ] time= 13/06/2026 16:37:21
[2026-06-13 16:37:21,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:37:21,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:37:21,286.286 INFO    ] No existing commands found in stream
[2026-06-13 16:37:26,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:26,298.298 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 16:37:27,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:37:27,853.853 INFO    ] Checking for system updates...
[2026-06-13 16:37:27,875.875 INFO    ] 200
[2026-06-13 16:37:27,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:27,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:27,909.909 INFO    ] No update needed
[2026-06-13 16:37:27,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 16:37:27,932.932 INFO    ] 200
[2026-06-13 16:37:27,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:27,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:37:27,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:27,994.994 INFO    ] No camera update needed
[2026-06-13 16:37:27,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:37:27,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:37:28,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:37:28,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:37:30,041.041 INFO    ] ================================================
[2026-06-13 16:37:30,057.057 INFO    ] Launching Daemon at Sat Jun 13 16:37:30 IST 2026
[2026-06-13 16:37:30,069.069 INFO    ] ================================================
[2026-06-13 16:37:30,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:37:30
[2026-06-13 16:37:30,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:37:30,859.859 INFO    ] Initializing speech engine...
[2026-06-13 16:37:30,864.864 INFO    ] 2026-06-13 16:37:30
[2026-06-13 16:37:31,067.067 INFO    ] 2026-06-13 16:37:31
[2026-06-13 16:37:31,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:37:31,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:37:31,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:37:31,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:37:31,469.469 INFO    ] time= 13/06/2026 16:37:31
[2026-06-13 16:37:31,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:37:31,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:37:31,584.584 INFO    ] No existing commands found in stream
[2026-06-13 16:37:36,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:36,595.595 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 16:37:37,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:37:37,207.207 INFO    ] Checking for system updates...
[2026-06-13 16:37:37,228.228 INFO    ] 200
[2026-06-13 16:37:37,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:37,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:37,261.261 INFO    ] No update needed
[2026-06-13 16:37:37,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 16:37:37,284.284 INFO    ] 200
[2026-06-13 16:37:37,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:37,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:37:37,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:37:37,347.347 INFO    ] No camera update needed
[2026-06-13 16:37:37,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:37:37,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:37:37,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:37:37,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:37:39,395.395 INFO    ] ================================================
[2026-06-13 16:37:39,410.410 INFO    ] Launching Daemon at Sat Jun 13 16:37:39 IST 2026
[2026-06-13 16:37:39,421.421 INFO    ] ================================================
[2026-06-13 16:37:39,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:37:39
[2026-06-13 16:37:40,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:37:40,235.235 INFO    ] Initializing speech engine...
[2026-06-13 16:37:40,240.240 INFO    ] 2026-06-13 16:37:40
[2026-06-13 16:37:40,451.451 INFO    ] 2026-06-13 16:37:40
[2026-06-13 16:37:40,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:37:40,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:37:40,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:37:40,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:37:40,806.806 INFO    ] time= 13/06/2026 16:37:40
[2026-06-13 16:37:40,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:37:40,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:37:40,975.975 INFO    ] No existing commands found in stream
[2026-06-13 16:37:45,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:45,990.990 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 16:37:49,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:37:49,677.677 INFO    ] Checking for system updates...
[2026-06-13 16:37:49,698.698 INFO    ] 200
[2026-06-13 16:37:49,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:49,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:37:49,733.733 INFO    ] No update needed
[2026-06-13 16:37:49,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 16:37:49,755.755 INFO    ] 200
[2026-06-13 16:37:49,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:37:49,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:37:49,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:37:49,831.831 INFO    ] No camera update needed
[2026-06-13 16:37:49,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:37:49,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:37:49,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:37:49,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:37:51,880.880 INFO    ] ================================================
[2026-06-13 16:37:51,895.895 INFO    ] Launching Daemon at Sat Jun 13 16:37:51 IST 2026
[2026-06-13 16:37:51,906.906 INFO    ] ================================================
[2026-06-13 16:37:52,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:37:52
[2026-06-13 16:37:52,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:37:52,714.714 INFO    ] Initializing speech engine...
[2026-06-13 16:37:52,719.719 INFO    ] 2026-06-13 16:37:52
[2026-06-13 16:37:52,924.924 INFO    ] 2026-06-13 16:37:52
[2026-06-13 16:37:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:37:53,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:37:53,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:37:53,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:37:53,333.333 INFO    ] time= 13/06/2026 16:37:53
[2026-06-13 16:37:53,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:37:53,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:37:53,438.438 INFO    ] No existing commands found in stream
[2026-06-13 16:37:58,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:37:58,450.450 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 16:38:00,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:38:00,113.113 INFO    ] Checking for system updates...
[2026-06-13 16:38:00,151.151 INFO    ] 200
[2026-06-13 16:38:00,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:00,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:00,219.219 INFO    ] No update needed
[2026-06-13 16:38:00,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:00,257.257 INFO    ] 200
[2026-06-13 16:38:00,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:00,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:00,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:00,348.348 INFO    ] No camera update needed
[2026-06-13 16:38:00,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:00,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:00,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:00,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:38:02,409.409 INFO    ] ================================================
[2026-06-13 16:38:02,430.430 INFO    ] Launching Daemon at Sat Jun 13 16:38:02 IST 2026
[2026-06-13 16:38:02,446.446 INFO    ] ================================================
[2026-06-13 16:38:03,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:38:03
[2026-06-13 16:38:03,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:38:03,605.605 INFO    ] Initializing speech engine...
[2026-06-13 16:38:03,610.610 INFO    ] 2026-06-13 16:38:03
[2026-06-13 16:38:03,818.818 INFO    ] 2026-06-13 16:38:03
[2026-06-13 16:38:03,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:38:03,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:38:03,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:38:04,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:38:04,089.089 INFO    ] time= 13/06/2026 16:38:04
[2026-06-13 16:38:04,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:38:04,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:38:04,178.178 INFO    ] No existing commands found in stream
[2026-06-13 16:38:09,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:38:09,213.213 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 16:38:12,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:38:12,837.837 INFO    ] Checking for system updates...
[2026-06-13 16:38:12,858.858 INFO    ] 200
[2026-06-13 16:38:12,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:12,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:12,894.894 INFO    ] No update needed
[2026-06-13 16:38:12,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:12,915.915 INFO    ] 200
[2026-06-13 16:38:12,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:12,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:13,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:13,084.084 INFO    ] No camera update needed
[2026-06-13 16:38:13,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:13,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:13,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:13,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:38:15,132.132 INFO    ] ================================================
[2026-06-13 16:38:15,147.147 INFO    ] Launching Daemon at Sat Jun 13 16:38:15 IST 2026
[2026-06-13 16:38:15,158.158 INFO    ] ================================================
[2026-06-13 16:38:15,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:38:15
[2026-06-13 16:38:15,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:38:16,008.008 INFO    ] Initializing speech engine...
[2026-06-13 16:38:16,013.013 INFO    ] 2026-06-13 16:38:16
[2026-06-13 16:38:16,219.219 INFO    ] 2026-06-13 16:38:16
[2026-06-13 16:38:16,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:38:16,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:38:16,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:38:16,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:38:16,614.614 INFO    ] time= 13/06/2026 16:38:16
[2026-06-13 16:38:16,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:38:16,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:38:16,733.733 INFO    ] No existing commands found in stream
[2026-06-13 16:38:21,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:38:21,746.746 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 16:38:23,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:38:23,436.436 INFO    ] Checking for system updates...
[2026-06-13 16:38:23,456.456 INFO    ] 200
[2026-06-13 16:38:23,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:23,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:23,490.490 INFO    ] No update needed
[2026-06-13 16:38:23,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:23,511.511 INFO    ] 200
[2026-06-13 16:38:23,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:23,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:23,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:23,584.584 INFO    ] No camera update needed
[2026-06-13 16:38:23,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:23,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:23,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:23,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:38:25,632.632 INFO    ] ================================================
[2026-06-13 16:38:25,647.647 INFO    ] Launching Daemon at Sat Jun 13 16:38:25 IST 2026
[2026-06-13 16:38:25,658.658 INFO    ] ================================================
[2026-06-13 16:38:26,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:38:26
[2026-06-13 16:38:26,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:38:26,458.458 INFO    ] Initializing speech engine...
[2026-06-13 16:38:26,462.462 INFO    ] 2026-06-13 16:38:26
[2026-06-13 16:38:26,653.653 INFO    ] 2026-06-13 16:38:26
[2026-06-13 16:38:26,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:38:26,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:38:26,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:38:27,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:38:27,101.101 INFO    ] time= 13/06/2026 16:38:27
[2026-06-13 16:38:27,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:38:27,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:38:27,212.212 INFO    ] No existing commands found in stream
[2026-06-13 16:38:32,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:38:32,221.221 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 16:38:35,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:38:35,068.068 INFO    ] Checking for system updates...
[2026-06-13 16:38:35,104.104 INFO    ] 200
[2026-06-13 16:38:35,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:35,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:38:35,170.170 INFO    ] No update needed
[2026-06-13 16:38:35,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:35,199.199 INFO    ] 200
[2026-06-13 16:38:35,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:35,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:35,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:38:35,261.261 INFO    ] No camera update needed
[2026-06-13 16:38:35,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:35,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:35,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:35,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:38:37,310.310 INFO    ] ================================================
[2026-06-13 16:38:37,326.326 INFO    ] Launching Daemon at Sat Jun 13 16:38:37 IST 2026
[2026-06-13 16:38:37,336.336 INFO    ] ================================================
[2026-06-13 16:38:37,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:38:37
[2026-06-13 16:38:38,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:38:38,218.218 INFO    ] Initializing speech engine...
[2026-06-13 16:38:38,223.223 INFO    ] 2026-06-13 16:38:38
[2026-06-13 16:38:38,434.434 INFO    ] 2026-06-13 16:38:38
[2026-06-13 16:38:38,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:38:38,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:38:38,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:38:38,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:38:38,846.846 INFO    ] time= 13/06/2026 16:38:38
[2026-06-13 16:38:38,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:38:38,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:38:38,958.958 INFO    ] No existing commands found in stream
[2026-06-13 16:38:43,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:38:43,972.972 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 16:38:46,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:38:46,485.485 INFO    ] Checking for system updates...
[2026-06-13 16:38:46,508.508 INFO    ] 200
[2026-06-13 16:38:46,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:46,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:38:46,542.542 INFO    ] No update needed
[2026-06-13 16:38:46,543.543 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:46,594.594 INFO    ] 200
[2026-06-13 16:38:46,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:46,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:46,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:38:46,655.655 INFO    ] No camera update needed
[2026-06-13 16:38:46,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:46,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:46,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:46,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:38:48,703.703 INFO    ] ================================================
[2026-06-13 16:38:48,718.718 INFO    ] Launching Daemon at Sat Jun 13 16:38:48 IST 2026
[2026-06-13 16:38:48,729.729 INFO    ] ================================================
[2026-06-13 16:38:49,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:38:49
[2026-06-13 16:38:49,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:38:49,530.530 INFO    ] Initializing speech engine...
[2026-06-13 16:38:49,535.535 INFO    ] 2026-06-13 16:38:49
[2026-06-13 16:38:49,767.767 INFO    ] 2026-06-13 16:38:49
[2026-06-13 16:38:49,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:38:49,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:38:50,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:38:50,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:38:50,175.175 INFO    ] time= 13/06/2026 16:38:50
[2026-06-13 16:38:50,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:38:50,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:38:50,334.334 INFO    ] No existing commands found in stream
[2026-06-13 16:38:55,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:38:55,348.348 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 16:38:59,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:38:59,440.440 INFO    ] Checking for system updates...
[2026-06-13 16:38:59,460.460 INFO    ] 200
[2026-06-13 16:38:59,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:59,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:59,494.494 INFO    ] No update needed
[2026-06-13 16:38:59,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 16:38:59,515.515 INFO    ] 200
[2026-06-13 16:38:59,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:38:59,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:38:59,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:38:59,581.581 INFO    ] No camera update needed
[2026-06-13 16:38:59,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:38:59,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:38:59,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:38:59,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:39:01,629.629 INFO    ] ================================================
[2026-06-13 16:39:01,654.654 INFO    ] Launching Daemon at Sat Jun 13 16:39:01 IST 2026
[2026-06-13 16:39:01,703.703 INFO    ] ================================================
[2026-06-13 16:39:02,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:39:02
[2026-06-13 16:39:03,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:39:03,316.316 INFO    ] Initializing speech engine...
[2026-06-13 16:39:03,322.322 INFO    ] 2026-06-13 16:39:03
[2026-06-13 16:39:03,612.612 INFO    ] 2026-06-13 16:39:03
[2026-06-13 16:39:03,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:39:03,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:39:03,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:39:03,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:39:03,950.950 INFO    ] time= 13/06/2026 16:39:03
[2026-06-13 16:39:03,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:39:03,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:39:04,061.061 INFO    ] No existing commands found in stream
[2026-06-13 16:39:09,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:39:09,077.077 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 16:39:11,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:39:11,160.160 INFO    ] Checking for system updates...
[2026-06-13 16:39:11,182.182 INFO    ] 200
[2026-06-13 16:39:11,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:11,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:39:11,216.216 INFO    ] No update needed
[2026-06-13 16:39:11,217.217 INFO    ] Checking for camera pi updates...
[2026-06-13 16:39:11,237.237 INFO    ] 200
[2026-06-13 16:39:11,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:11,262.262 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:39:11,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:39:11,302.302 INFO    ] No camera update needed
[2026-06-13 16:39:11,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:39:11,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:39:11,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:39:11,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:39:13,350.350 INFO    ] ================================================
[2026-06-13 16:39:13,366.366 INFO    ] Launching Daemon at Sat Jun 13 16:39:13 IST 2026
[2026-06-13 16:39:13,377.377 INFO    ] ================================================
[2026-06-13 16:39:13,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:39:13
[2026-06-13 16:39:14,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:39:14,196.196 INFO    ] Initializing speech engine...
[2026-06-13 16:39:14,204.204 INFO    ] 2026-06-13 16:39:14
[2026-06-13 16:39:14,430.430 INFO    ] 2026-06-13 16:39:14
[2026-06-13 16:39:14,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:39:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:39:14,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:39:14,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:39:14,861.861 INFO    ] time= 13/06/2026 16:39:14
[2026-06-13 16:39:14,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:39:14,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:39:14,988.988 INFO    ] No existing commands found in stream
[2026-06-13 16:39:19,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:39:20,002.002 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 16:39:23,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:39:23,318.318 INFO    ] Checking for system updates...
[2026-06-13 16:39:23,338.338 INFO    ] 200
[2026-06-13 16:39:23,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:23,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:39:23,373.373 INFO    ] No update needed
[2026-06-13 16:39:23,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 16:39:23,393.393 INFO    ] 200
[2026-06-13 16:39:23,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:23,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:39:23,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:39:23,455.455 INFO    ] No camera update needed
[2026-06-13 16:39:23,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:39:23,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:39:23,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:39:23,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:39:25,502.502 INFO    ] ================================================
[2026-06-13 16:39:25,518.518 INFO    ] Launching Daemon at Sat Jun 13 16:39:25 IST 2026
[2026-06-13 16:39:25,530.530 INFO    ] ================================================
[2026-06-13 16:39:25,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:39:25
[2026-06-13 16:39:26,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:39:26,320.320 INFO    ] Initializing speech engine...
[2026-06-13 16:39:26,325.325 INFO    ] 2026-06-13 16:39:26
[2026-06-13 16:39:26,533.533 INFO    ] 2026-06-13 16:39:26
[2026-06-13 16:39:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:39:26,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:39:26,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:39:26,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:39:26,933.933 INFO    ] time= 13/06/2026 16:39:26
[2026-06-13 16:39:26,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:39:27,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:39:27,115.115 INFO    ] No existing commands found in stream
[2026-06-13 16:39:32,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:39:32,127.127 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 16:39:35,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:39:35,870.870 INFO    ] Checking for system updates...
[2026-06-13 16:39:35,891.891 INFO    ] 200
[2026-06-13 16:39:35,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:35,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:39:35,927.927 INFO    ] No update needed
[2026-06-13 16:39:35,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 16:39:35,950.950 INFO    ] 200
[2026-06-13 16:39:35,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:35,986.986 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:39:36,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:39:36,036.036 INFO    ] No camera update needed
[2026-06-13 16:39:36,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:39:36,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:39:36,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:39:36,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:39:38,095.095 INFO    ] ================================================
[2026-06-13 16:39:38,112.112 INFO    ] Launching Daemon at Sat Jun 13 16:39:38 IST 2026
[2026-06-13 16:39:38,125.125 INFO    ] ================================================
[2026-06-13 16:39:38,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:39:38
[2026-06-13 16:39:39,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:39:39,407.407 INFO    ] Initializing speech engine...
[2026-06-13 16:39:39,413.413 INFO    ] 2026-06-13 16:39:39
[2026-06-13 16:39:39,637.637 INFO    ] 2026-06-13 16:39:39
[2026-06-13 16:39:39,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:39:39,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:39:39,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:39:40,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:39:40,061.061 INFO    ] time= 13/06/2026 16:39:40
[2026-06-13 16:39:40,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:39:40,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:39:40,188.188 INFO    ] No existing commands found in stream
[2026-06-13 16:39:45,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:39:45,203.203 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 16:39:48,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:39:48,549.549 INFO    ] Checking for system updates...
[2026-06-13 16:39:48,570.570 INFO    ] 200
[2026-06-13 16:39:48,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:48,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:39:48,603.603 INFO    ] No update needed
[2026-06-13 16:39:48,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 16:39:48,624.624 INFO    ] 200
[2026-06-13 16:39:48,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:39:48,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:39:48,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:39:48,690.690 INFO    ] No camera update needed
[2026-06-13 16:39:48,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:39:48,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:39:48,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:39:48,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:39:50,739.739 INFO    ] ================================================
[2026-06-13 16:39:50,754.754 INFO    ] Launching Daemon at Sat Jun 13 16:39:50 IST 2026
[2026-06-13 16:39:50,765.765 INFO    ] ================================================
[2026-06-13 16:39:51,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:39:51
[2026-06-13 16:39:51,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:39:51,576.576 INFO    ] Initializing speech engine...
[2026-06-13 16:39:51,580.580 INFO    ] 2026-06-13 16:39:51
[2026-06-13 16:39:51,808.808 INFO    ] 2026-06-13 16:39:51
[2026-06-13 16:39:51,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:39:51,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:39:52,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:39:52,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:39:52,208.208 INFO    ] time= 13/06/2026 16:39:52
[2026-06-13 16:39:52,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:39:52,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:39:52,366.366 INFO    ] No existing commands found in stream
[2026-06-13 16:39:57,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:39:57,380.380 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 16:40:01,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:40:01,158.158 INFO    ] Checking for system updates...
[2026-06-13 16:40:01,179.179 INFO    ] 200
[2026-06-13 16:40:01,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:01,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:40:01,215.215 INFO    ] No update needed
[2026-06-13 16:40:01,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 16:40:01,237.237 INFO    ] 200
[2026-06-13 16:40:01,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:01,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:40:01,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:40:01,303.303 INFO    ] No camera update needed
[2026-06-13 16:40:01,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:40:01,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:40:01,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:40:01,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:40:03,345.345 INFO    ] ================================================
[2026-06-13 16:40:03,360.360 INFO    ] Launching Daemon at Sat Jun 13 16:40:03 IST 2026
[2026-06-13 16:40:03,372.372 INFO    ] ================================================
[2026-06-13 16:40:03,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:40:03
[2026-06-13 16:40:04,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:40:04,628.628 INFO    ] Initializing speech engine...
[2026-06-13 16:40:04,633.633 INFO    ] 2026-06-13 16:40:04
[2026-06-13 16:40:04,895.895 INFO    ] 2026-06-13 16:40:04
[2026-06-13 16:40:04,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:40:05,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:40:05,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:40:05,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:40:05,321.321 INFO    ] time= 13/06/2026 16:40:05
[2026-06-13 16:40:05,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:40:05,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:40:05,582.582 INFO    ] No existing commands found in stream
[2026-06-13 16:40:10,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:40:10,610.610 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-13 16:40:12,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:40:12,599.599 INFO    ] Checking for system updates...
[2026-06-13 16:40:12,621.621 INFO    ] 200
[2026-06-13 16:40:12,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:12,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:12,657.657 INFO    ] No update needed
[2026-06-13 16:40:12,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 16:40:12,680.680 INFO    ] 200
[2026-06-13 16:40:12,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:12,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:40:12,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:12,743.743 INFO    ] No camera update needed
[2026-06-13 16:40:12,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:40:12,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:40:12,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:40:12,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:40:14,794.794 INFO    ] ================================================
[2026-06-13 16:40:14,810.810 INFO    ] Launching Daemon at Sat Jun 13 16:40:14 IST 2026
[2026-06-13 16:40:14,821.821 INFO    ] ================================================
[2026-06-13 16:40:15,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:40:15
[2026-06-13 16:40:15,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:40:15,631.631 INFO    ] Initializing speech engine...
[2026-06-13 16:40:15,636.636 INFO    ] 2026-06-13 16:40:15
[2026-06-13 16:40:15,837.837 INFO    ] 2026-06-13 16:40:15
[2026-06-13 16:40:15,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:40:16,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:40:16,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:40:16,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:40:16,243.243 INFO    ] time= 13/06/2026 16:40:16
[2026-06-13 16:40:16,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:40:16,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:40:16,351.351 INFO    ] No existing commands found in stream
[2026-06-13 16:40:21,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:40:21,364.364 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 16:40:25,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:40:25,348.348 INFO    ] Checking for system updates...
[2026-06-13 16:40:25,369.369 INFO    ] 200
[2026-06-13 16:40:25,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:25,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:25,404.404 INFO    ] No update needed
[2026-06-13 16:40:25,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 16:40:25,425.425 INFO    ] 200
[2026-06-13 16:40:25,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:25,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:40:25,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:25,598.598 INFO    ] No camera update needed
[2026-06-13 16:40:25,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:40:25,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:40:25,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:40:25,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:40:27,649.649 INFO    ] ================================================
[2026-06-13 16:40:27,665.665 INFO    ] Launching Daemon at Sat Jun 13 16:40:27 IST 2026
[2026-06-13 16:40:27,676.676 INFO    ] ================================================
[2026-06-13 16:40:28,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:40:28
[2026-06-13 16:40:28,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:40:28,479.479 INFO    ] Initializing speech engine...
[2026-06-13 16:40:28,487.487 INFO    ] 2026-06-13 16:40:28
[2026-06-13 16:40:28,699.699 INFO    ] 2026-06-13 16:40:28
[2026-06-13 16:40:28,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:40:28,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:40:28,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:40:29,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:40:29,108.108 INFO    ] time= 13/06/2026 16:40:29
[2026-06-13 16:40:29,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:40:29,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:40:29,212.212 INFO    ] No existing commands found in stream
[2026-06-13 16:40:34,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:40:34,225.225 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 16:40:35,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:40:35,967.967 INFO    ] Checking for system updates...
[2026-06-13 16:40:35,990.990 INFO    ] 200
[2026-06-13 16:40:35,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:36,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:36,025.025 INFO    ] No update needed
[2026-06-13 16:40:36,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 16:40:36,046.046 INFO    ] 200
[2026-06-13 16:40:36,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:36,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:40:36,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:40:36,112.112 INFO    ] No camera update needed
[2026-06-13 16:40:36,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:40:36,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:40:36,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:40:36,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:40:38,160.160 INFO    ] ================================================
[2026-06-13 16:40:38,175.175 INFO    ] Launching Daemon at Sat Jun 13 16:40:38 IST 2026
[2026-06-13 16:40:38,186.186 INFO    ] ================================================
[2026-06-13 16:40:38,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:40:38
[2026-06-13 16:40:38,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:40:38,976.976 INFO    ] Initializing speech engine...
[2026-06-13 16:40:38,981.981 INFO    ] 2026-06-13 16:40:38
[2026-06-13 16:40:39,211.211 INFO    ] 2026-06-13 16:40:39
[2026-06-13 16:40:39,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:40:39,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:40:39,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:40:39,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:40:39,641.641 INFO    ] time= 13/06/2026 16:40:39
[2026-06-13 16:40:39,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:40:39,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:40:39,768.768 INFO    ] No existing commands found in stream
[2026-06-13 16:40:44,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:40:44,782.782 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 16:40:47,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:40:47,551.551 INFO    ] Checking for system updates...
[2026-06-13 16:40:47,571.571 INFO    ] 200
[2026-06-13 16:40:47,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:47,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:40:47,605.605 INFO    ] No update needed
[2026-06-13 16:40:47,606.606 INFO    ] Checking for camera pi updates...
[2026-06-13 16:40:47,626.626 INFO    ] 200
[2026-06-13 16:40:47,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:40:47,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:40:47,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:40:47,685.685 INFO    ] No camera update needed
[2026-06-13 16:40:47,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:40:47,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:40:47,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:40:47,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:40:49,738.738 INFO    ] ================================================
[2026-06-13 16:40:49,753.753 INFO    ] Launching Daemon at Sat Jun 13 16:40:49 IST 2026
[2026-06-13 16:40:49,770.770 INFO    ] ================================================
[2026-06-13 16:40:50,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:40:50
[2026-06-13 16:40:50,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:40:50,580.580 INFO    ] Initializing speech engine...
[2026-06-13 16:40:50,585.585 INFO    ] 2026-06-13 16:40:50
[2026-06-13 16:40:50,788.788 INFO    ] 2026-06-13 16:40:50
[2026-06-13 16:40:50,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:40:50,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:40:51,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:40:51,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:40:51,190.190 INFO    ] time= 13/06/2026 16:40:51
[2026-06-13 16:40:51,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:40:51,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:40:51,299.299 INFO    ] No existing commands found in stream
[2026-06-13 16:40:56,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:40:56,312.312 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 16:41:00,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:41:00,292.292 INFO    ] Checking for system updates...
[2026-06-13 16:41:00,327.327 INFO    ] 200
[2026-06-13 16:41:00,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:00,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:41:00,385.385 INFO    ] No update needed
[2026-06-13 16:41:00,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 16:41:00,425.425 INFO    ] 200
[2026-06-13 16:41:00,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:00,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:41:00,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:41:00,493.493 INFO    ] No camera update needed
[2026-06-13 16:41:00,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:41:00,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:41:00,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:41:00,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:41:02,536.536 INFO    ] ================================================
[2026-06-13 16:41:02,546.546 INFO    ] Launching Daemon at Sat Jun 13 16:41:02 IST 2026
[2026-06-13 16:41:02,553.553 INFO    ] ================================================
[2026-06-13 16:41:02,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:41:02
[2026-06-13 16:41:03,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:41:03,375.375 INFO    ] Initializing speech engine...
[2026-06-13 16:41:03,380.380 INFO    ] 2026-06-13 16:41:03
[2026-06-13 16:41:03,581.581 INFO    ] 2026-06-13 16:41:03
[2026-06-13 16:41:03,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:41:03,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:41:03,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:41:03,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:41:03,831.831 INFO    ] time= 13/06/2026 16:41:03
[2026-06-13 16:41:03,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:41:03,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:41:04,008.008 INFO    ] No existing commands found in stream
[2026-06-13 16:41:09,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:41:09,026.026 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 16:41:10,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:41:10,946.946 INFO    ] Checking for system updates...
[2026-06-13 16:41:10,966.966 INFO    ] 200
[2026-06-13 16:41:10,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:10,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:11,000.000 INFO    ] No update needed
[2026-06-13 16:41:11,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 16:41:11,023.023 INFO    ] 200
[2026-06-13 16:41:11,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:11,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:41:11,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:11,093.093 INFO    ] No camera update needed
[2026-06-13 16:41:11,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:41:11,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:41:11,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:41:11,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:41:13,140.140 INFO    ] ================================================
[2026-06-13 16:41:13,156.156 INFO    ] Launching Daemon at Sat Jun 13 16:41:13 IST 2026
[2026-06-13 16:41:13,166.166 INFO    ] ================================================
[2026-06-13 16:41:13,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:41:13
[2026-06-13 16:41:13,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:41:13,930.930 INFO    ] Initializing speech engine...
[2026-06-13 16:41:13,934.934 INFO    ] 2026-06-13 16:41:13
[2026-06-13 16:41:14,163.163 INFO    ] 2026-06-13 16:41:14
[2026-06-13 16:41:14,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:41:14,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:41:14,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:41:14,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:41:14,535.535 INFO    ] time= 13/06/2026 16:41:14
[2026-06-13 16:41:14,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:41:14,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:41:14,714.714 INFO    ] No existing commands found in stream
[2026-06-13 16:41:19,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:41:19,727.727 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 16:41:20,660.660 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 16:41:20,684.684 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d527d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 16:41:20,693.693 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d527d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 16:41:20,701.701 INFO    ] None
[2026-06-13 16:41:20,704.704 INFO    ] Checking for system updates...
[2026-06-13 16:41:20,738.738 INFO    ] 200
[2026-06-13 16:41:20,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:20,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:20,772.772 INFO    ] No update needed
[2026-06-13 16:41:20,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 16:41:20,795.795 INFO    ] 200
[2026-06-13 16:41:20,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:20,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:41:26,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:26,263.263 INFO    ] No camera update needed
[2026-06-13 16:41:26,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:41:26,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:41:26,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:41:26,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:41:28,326.326 INFO    ] ================================================
[2026-06-13 16:41:28,341.341 INFO    ] Launching Daemon at Sat Jun 13 16:41:28 IST 2026
[2026-06-13 16:41:28,352.352 INFO    ] ================================================
[2026-06-13 16:41:28,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:41:28
[2026-06-13 16:41:29,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:41:29,147.147 INFO    ] Initializing speech engine...
[2026-06-13 16:41:29,157.157 INFO    ] 2026-06-13 16:41:29
[2026-06-13 16:41:29,370.370 INFO    ] 2026-06-13 16:41:29
[2026-06-13 16:41:29,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:41:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:41:29,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:41:29,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:41:29,788.788 INFO    ] time= 13/06/2026 16:41:29
[2026-06-13 16:41:29,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:41:29,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:41:29,917.917 INFO    ] No existing commands found in stream
[2026-06-13 16:41:34,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:41:34,931.931 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 16:41:39,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:41:39,611.611 INFO    ] Checking for system updates...
[2026-06-13 16:41:39,646.646 INFO    ] 200
[2026-06-13 16:41:39,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:39,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:39,705.705 INFO    ] No update needed
[2026-06-13 16:41:39,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 16:41:39,744.744 INFO    ] 200
[2026-06-13 16:41:39,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:39,788.788 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:41:39,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:39,832.832 INFO    ] No camera update needed
[2026-06-13 16:41:39,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:41:39,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:41:39,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:41:39,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:41:41,887.887 INFO    ] ================================================
[2026-06-13 16:41:41,902.902 INFO    ] Launching Daemon at Sat Jun 13 16:41:41 IST 2026
[2026-06-13 16:41:41,913.913 INFO    ] ================================================
[2026-06-13 16:41:42,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:41:42
[2026-06-13 16:41:42,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:41:42,714.714 INFO    ] Initializing speech engine...
[2026-06-13 16:41:42,719.719 INFO    ] 2026-06-13 16:41:42
[2026-06-13 16:41:42,945.945 INFO    ] 2026-06-13 16:41:42
[2026-06-13 16:41:42,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:41:43,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:41:43,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:41:43,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:41:43,359.359 INFO    ] time= 13/06/2026 16:41:43
[2026-06-13 16:41:43,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:41:43,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:41:43,494.494 INFO    ] No existing commands found in stream
[2026-06-13 16:41:48,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:41:48,507.507 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 16:41:52,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:41:52,132.132 INFO    ] Checking for system updates...
[2026-06-13 16:41:52,152.152 INFO    ] 200
[2026-06-13 16:41:52,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:52,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:52,188.188 INFO    ] No update needed
[2026-06-13 16:41:52,189.189 INFO    ] Checking for camera pi updates...
[2026-06-13 16:41:52,209.209 INFO    ] 200
[2026-06-13 16:41:52,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:41:52,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:41:52,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:41:52,278.278 INFO    ] No camera update needed
[2026-06-13 16:41:52,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:41:52,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:41:52,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:41:52,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:41:54,324.324 INFO    ] ================================================
[2026-06-13 16:41:54,340.340 INFO    ] Launching Daemon at Sat Jun 13 16:41:54 IST 2026
[2026-06-13 16:41:54,350.350 INFO    ] ================================================
[2026-06-13 16:41:54,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:41:54
[2026-06-13 16:41:55,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:41:55,142.142 INFO    ] Initializing speech engine...
[2026-06-13 16:41:55,146.146 INFO    ] 2026-06-13 16:41:55
[2026-06-13 16:41:55,369.369 INFO    ] 2026-06-13 16:41:55
[2026-06-13 16:41:55,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:41:55,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:41:55,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:41:55,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:41:55,785.785 INFO    ] time= 13/06/2026 16:41:55
[2026-06-13 16:41:55,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:41:55,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:41:55,965.965 INFO    ] No existing commands found in stream
[2026-06-13 16:42:00,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:01,001.001 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 16:42:03,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:42:03,800.800 INFO    ] Checking for system updates...
[2026-06-13 16:42:03,836.836 INFO    ] 200
[2026-06-13 16:42:03,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:03,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:42:03,900.900 INFO    ] No update needed
[2026-06-13 16:42:03,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:03,936.936 INFO    ] 200
[2026-06-13 16:42:03,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:03,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:42:04,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:42:04,031.031 INFO    ] No camera update needed
[2026-06-13 16:42:04,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:42:04,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:42:04,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:42:04,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:42:06,088.088 INFO    ] ================================================
[2026-06-13 16:42:06,104.104 INFO    ] Launching Daemon at Sat Jun 13 16:42:06 IST 2026
[2026-06-13 16:42:06,115.115 INFO    ] ================================================
[2026-06-13 16:42:06,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:42:06
[2026-06-13 16:42:06,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:42:06,937.937 INFO    ] Initializing speech engine...
[2026-06-13 16:42:06,943.943 INFO    ] 2026-06-13 16:42:06
[2026-06-13 16:42:07,154.154 INFO    ] 2026-06-13 16:42:07
[2026-06-13 16:42:07,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:42:07,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:42:07,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:42:07,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:42:07,560.560 INFO    ] time= 13/06/2026 16:42:07
[2026-06-13 16:42:07,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:42:07,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:42:07,676.676 INFO    ] No existing commands found in stream
[2026-06-13 16:42:12,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:12,694.694 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 16:42:15,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:42:15,731.731 INFO    ] Checking for system updates...
[2026-06-13 16:42:15,752.752 INFO    ] 200
[2026-06-13 16:42:15,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:15,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:15,787.787 INFO    ] No update needed
[2026-06-13 16:42:15,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:15,811.811 INFO    ] 200
[2026-06-13 16:42:15,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:15,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:42:15,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:15,883.883 INFO    ] No camera update needed
[2026-06-13 16:42:15,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:42:15,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:42:15,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:42:15,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:42:17,923.923 INFO    ] ================================================
[2026-06-13 16:42:17,932.932 INFO    ] Launching Daemon at Sat Jun 13 16:42:17 IST 2026
[2026-06-13 16:42:17,937.937 INFO    ] ================================================
[2026-06-13 16:42:18,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:42:18
[2026-06-13 16:42:18,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:42:18,749.749 INFO    ] Initializing speech engine...
[2026-06-13 16:42:18,757.757 INFO    ] 2026-06-13 16:42:18
[2026-06-13 16:42:18,969.969 INFO    ] 2026-06-13 16:42:18
[2026-06-13 16:42:18,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:42:19,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:42:19,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:42:19,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:42:19,386.386 INFO    ] time= 13/06/2026 16:42:19
[2026-06-13 16:42:19,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:42:19,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:42:19,495.495 INFO    ] No existing commands found in stream
[2026-06-13 16:42:24,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:24,509.509 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 16:42:24,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:42:24,944.944 INFO    ] Checking for system updates...
[2026-06-13 16:42:24,965.965 INFO    ] 200
[2026-06-13 16:42:24,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:24,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:24,998.998 INFO    ] No update needed
[2026-06-13 16:42:24,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:25,018.018 INFO    ] 200
[2026-06-13 16:42:25,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:25,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:42:25,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:25,080.080 INFO    ] No camera update needed
[2026-06-13 16:42:25,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:42:25,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:42:25,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:42:25,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:42:27,127.127 INFO    ] ================================================
[2026-06-13 16:42:27,142.142 INFO    ] Launching Daemon at Sat Jun 13 16:42:27 IST 2026
[2026-06-13 16:42:27,160.160 INFO    ] ================================================
[2026-06-13 16:42:27,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:42:27
[2026-06-13 16:42:27,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:42:27,949.949 INFO    ] Initializing speech engine...
[2026-06-13 16:42:27,953.953 INFO    ] 2026-06-13 16:42:27
[2026-06-13 16:42:28,157.157 INFO    ] 2026-06-13 16:42:28
[2026-06-13 16:42:28,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:42:28,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:42:28,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:42:28,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:42:28,567.567 INFO    ] time= 13/06/2026 16:42:28
[2026-06-13 16:42:28,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:42:28,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:42:28,672.672 INFO    ] No existing commands found in stream
[2026-06-13 16:42:33,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:33,684.684 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 16:42:35,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:42:35,109.109 INFO    ] Checking for system updates...
[2026-06-13 16:42:35,130.130 INFO    ] 200
[2026-06-13 16:42:35,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:35,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:35,163.163 INFO    ] No update needed
[2026-06-13 16:42:35,164.164 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:35,184.184 INFO    ] 200
[2026-06-13 16:42:35,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:35,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:42:35,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:42:35,379.379 INFO    ] No camera update needed
[2026-06-13 16:42:35,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:42:35,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:42:35,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:42:35,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:42:37,437.437 INFO    ] ================================================
[2026-06-13 16:42:37,452.452 INFO    ] Launching Daemon at Sat Jun 13 16:42:37 IST 2026
[2026-06-13 16:42:37,463.463 INFO    ] ================================================
[2026-06-13 16:42:38,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:42:38
[2026-06-13 16:42:38,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:42:38,612.612 INFO    ] Initializing speech engine...
[2026-06-13 16:42:38,620.620 INFO    ] 2026-06-13 16:42:38
[2026-06-13 16:42:38,827.827 INFO    ] 2026-06-13 16:42:38
[2026-06-13 16:42:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:42:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:42:39,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:42:39,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:42:39,229.229 INFO    ] time= 13/06/2026 16:42:39
[2026-06-13 16:42:39,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:42:39,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:42:39,350.350 INFO    ] No existing commands found in stream
[2026-06-13 16:42:44,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:44,363.363 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 16:42:47,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:42:47,912.912 INFO    ] Checking for system updates...
[2026-06-13 16:42:47,933.933 INFO    ] 200
[2026-06-13 16:42:47,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:47,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:42:47,966.966 INFO    ] No update needed
[2026-06-13 16:42:47,967.967 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:47,987.987 INFO    ] 200
[2026-06-13 16:42:47,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:48,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:42:48,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:42:48,054.054 INFO    ] No camera update needed
[2026-06-13 16:42:48,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:42:48,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:42:48,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:42:48,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:42:50,101.101 INFO    ] ================================================
[2026-06-13 16:42:50,116.116 INFO    ] Launching Daemon at Sat Jun 13 16:42:50 IST 2026
[2026-06-13 16:42:50,126.126 INFO    ] ================================================
[2026-06-13 16:42:50,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:42:50
[2026-06-13 16:42:50,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:42:50,961.961 INFO    ] Initializing speech engine...
[2026-06-13 16:42:50,970.970 INFO    ] 2026-06-13 16:42:50
[2026-06-13 16:42:51,183.183 INFO    ] 2026-06-13 16:42:51
[2026-06-13 16:42:51,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:42:51,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:42:51,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:42:51,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:42:51,600.600 INFO    ] time= 13/06/2026 16:42:51
[2026-06-13 16:42:51,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:42:51,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:42:51,725.725 INFO    ] No existing commands found in stream
[2026-06-13 16:42:56,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:42:56,738.738 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 16:42:58,214.214 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 16:42:58,237.237 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 16:42:58,246.246 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 16:42:58,254.254 INFO    ] None
[2026-06-13 16:42:58,257.257 INFO    ] Checking for system updates...
[2026-06-13 16:42:58,293.293 INFO    ] 200
[2026-06-13 16:42:58,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:58,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:42:58,326.326 INFO    ] No update needed
[2026-06-13 16:42:58,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 16:42:58,347.347 INFO    ] 200
[2026-06-13 16:42:58,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:42:58,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:43:00,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:43:00,564.564 INFO    ] No camera update needed
[2026-06-13 16:43:00,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:43:00,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:43:00,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:43:00,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:43:02,613.613 INFO    ] ================================================
[2026-06-13 16:43:02,622.622 INFO    ] Launching Daemon at Sat Jun 13 16:43:02 IST 2026
[2026-06-13 16:43:02,627.627 INFO    ] ================================================
[2026-06-13 16:43:02,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:43:02
[2026-06-13 16:43:03,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:43:03,571.571 INFO    ] Initializing speech engine...
[2026-06-13 16:43:03,582.582 INFO    ] 2026-06-13 16:43:03
[2026-06-13 16:43:03,845.845 INFO    ] 2026-06-13 16:43:03
[2026-06-13 16:43:03,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:43:04,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:43:04,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:43:04,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:43:04,203.203 INFO    ] time= 13/06/2026 16:43:04
[2026-06-13 16:43:04,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:43:04,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:43:04,343.343 INFO    ] No existing commands found in stream
[2026-06-13 16:43:09,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:43:09,371.371 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 16:43:12,276.276 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 16:43:12,301.301 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 16:43:12,310.310 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d0f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 16:43:12,319.319 INFO    ] None
[2026-06-13 16:43:12,321.321 INFO    ] Checking for system updates...
[2026-06-13 16:43:12,348.348 INFO    ] 200
[2026-06-13 16:43:12,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:12,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:43:12,381.381 INFO    ] No update needed
[2026-06-13 16:43:12,382.382 INFO    ] Checking for camera pi updates...
[2026-06-13 16:43:12,402.402 INFO    ] 200
[2026-06-13 16:43:12,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:12,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:43:14,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:43:14,198.198 INFO    ] No camera update needed
[2026-06-13 16:43:14,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:43:14,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:43:14,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:43:14,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:43:16,259.259 INFO    ] ================================================
[2026-06-13 16:43:16,274.274 INFO    ] Launching Daemon at Sat Jun 13 16:43:16 IST 2026
[2026-06-13 16:43:16,285.285 INFO    ] ================================================
[2026-06-13 16:43:16,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:43:16
[2026-06-13 16:43:16,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:43:17,052.052 INFO    ] Initializing speech engine...
[2026-06-13 16:43:17,066.066 INFO    ] 2026-06-13 16:43:17
[2026-06-13 16:43:17,273.273 INFO    ] 2026-06-13 16:43:17
[2026-06-13 16:43:17,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:43:17,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:43:17,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:43:17,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:43:17,696.696 INFO    ] time= 13/06/2026 16:43:17
[2026-06-13 16:43:17,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:43:17,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:43:17,797.797 INFO    ] No existing commands found in stream
[2026-06-13 16:43:22,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:43:22,810.810 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 16:43:23,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:43:23,348.348 INFO    ] Checking for system updates...
[2026-06-13 16:43:23,370.370 INFO    ] 200
[2026-06-13 16:43:23,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:23,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:43:23,403.403 INFO    ] No update needed
[2026-06-13 16:43:23,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 16:43:23,423.423 INFO    ] 200
[2026-06-13 16:43:23,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:23,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:43:23,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:43:23,496.496 INFO    ] No camera update needed
[2026-06-13 16:43:23,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:43:23,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:43:23,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:43:23,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:43:25,543.543 INFO    ] ================================================
[2026-06-13 16:43:25,558.558 INFO    ] Launching Daemon at Sat Jun 13 16:43:25 IST 2026
[2026-06-13 16:43:25,569.569 INFO    ] ================================================
[2026-06-13 16:43:25,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:43:25
[2026-06-13 16:43:26,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:43:26,379.379 INFO    ] Initializing speech engine...
[2026-06-13 16:43:26,384.384 INFO    ] 2026-06-13 16:43:26
[2026-06-13 16:43:26,589.589 INFO    ] 2026-06-13 16:43:26
[2026-06-13 16:43:26,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:43:26,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:43:26,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:43:26,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:43:26,994.994 INFO    ] time= 13/06/2026 16:43:26
[2026-06-13 16:43:27,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:43:27,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:43:27,103.103 INFO    ] No existing commands found in stream
[2026-06-13 16:43:32,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:43:32,117.117 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 16:43:33,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:43:33,352.352 INFO    ] Checking for system updates...
[2026-06-13 16:43:33,373.373 INFO    ] 200
[2026-06-13 16:43:33,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:33,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:43:33,406.406 INFO    ] No update needed
[2026-06-13 16:43:33,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 16:43:33,426.426 INFO    ] 200
[2026-06-13 16:43:33,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:33,451.451 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:43:33,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:43:33,488.488 INFO    ] No camera update needed
[2026-06-13 16:43:33,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:43:33,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:43:33,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:43:33,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:43:35,535.535 INFO    ] ================================================
[2026-06-13 16:43:35,551.551 INFO    ] Launching Daemon at Sat Jun 13 16:43:35 IST 2026
[2026-06-13 16:43:35,562.562 INFO    ] ================================================
[2026-06-13 16:43:35,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:43:35
[2026-06-13 16:43:36,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:43:36,348.348 INFO    ] Initializing speech engine...
[2026-06-13 16:43:36,357.357 INFO    ] 2026-06-13 16:43:36
[2026-06-13 16:43:36,559.559 INFO    ] 2026-06-13 16:43:36
[2026-06-13 16:43:36,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:43:36,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:43:36,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:43:36,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:43:36,935.935 INFO    ] time= 13/06/2026 16:43:36
[2026-06-13 16:43:36,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:43:37,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:43:37,128.128 INFO    ] No existing commands found in stream
[2026-06-13 16:43:42,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:43:42,153.153 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 16:43:46,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:43:46,968.968 INFO    ] Checking for system updates...
[2026-06-13 16:43:47,004.004 INFO    ] 200
[2026-06-13 16:43:47,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:47,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:43:47,061.061 INFO    ] No update needed
[2026-06-13 16:43:47,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 16:43:47,081.081 INFO    ] 200
[2026-06-13 16:43:47,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:43:47,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:43:47,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:43:47,151.151 INFO    ] No camera update needed
[2026-06-13 16:43:47,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:43:47,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:43:47,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:43:47,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:43:49,200.200 INFO    ] ================================================
[2026-06-13 16:43:49,214.214 INFO    ] Launching Daemon at Sat Jun 13 16:43:49 IST 2026
[2026-06-13 16:43:49,225.225 INFO    ] ================================================
[2026-06-13 16:43:49,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:43:49
[2026-06-13 16:43:49,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:43:50,041.041 INFO    ] Initializing speech engine...
[2026-06-13 16:43:50,051.051 INFO    ] 2026-06-13 16:43:50
[2026-06-13 16:43:50,265.265 INFO    ] 2026-06-13 16:43:50
[2026-06-13 16:43:50,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:43:50,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:43:50,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:43:50,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:43:50,670.670 INFO    ] time= 13/06/2026 16:43:50
[2026-06-13 16:43:50,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:43:50,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:43:50,842.842 INFO    ] No existing commands found in stream
[2026-06-13 16:43:55,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:43:55,859.859 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 16:44:00,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:44:00,707.707 INFO    ] Checking for system updates...
[2026-06-13 16:44:00,744.744 INFO    ] 200
[2026-06-13 16:44:00,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:00,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:44:00,821.821 INFO    ] No update needed
[2026-06-13 16:44:00,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 16:44:00,857.857 INFO    ] 200
[2026-06-13 16:44:00,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:00,901.901 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:44:00,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:44:00,949.949 INFO    ] No camera update needed
[2026-06-13 16:44:00,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:44:00,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:00,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:00,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:03,998.998 INFO    ] ================================================
[2026-06-13 16:44:03,013.013 INFO    ] Launching Daemon at Sat Jun 13 16:44:03 IST 2026
[2026-06-13 16:44:03,024.024 INFO    ] ================================================
[2026-06-13 16:44:03,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:03
[2026-06-13 16:44:03,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:03,884.884 INFO    ] Initializing speech engine...
[2026-06-13 16:44:03,889.889 INFO    ] 2026-06-13 16:44:03
[2026-06-13 16:44:04,096.096 INFO    ] 2026-06-13 16:44:04
[2026-06-13 16:44:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:04,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:44:04,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:44:04,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:44:04,501.501 INFO    ] time= 13/06/2026 16:44:04
[2026-06-13 16:44:04,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:44:04,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:44:04,612.612 INFO    ] No existing commands found in stream
[2026-06-13 16:44:09,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:44:09,629.629 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 16:44:10,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:44:10,281.281 INFO    ] Checking for system updates...
[2026-06-13 16:44:10,303.303 INFO    ] 200
[2026-06-13 16:44:10,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:10,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:44:10,337.337 INFO    ] No update needed
[2026-06-13 16:44:10,339.339 INFO    ] Checking for camera pi updates...
[2026-06-13 16:44:10,369.369 INFO    ] 200
[2026-06-13 16:44:10,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:10,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:44:10,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:44:10,460.460 INFO    ] No camera update needed
[2026-06-13 16:44:10,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:44:10,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:10,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:10,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:12,520.520 INFO    ] ================================================
[2026-06-13 16:44:12,535.535 INFO    ] Launching Daemon at Sat Jun 13 16:44:12 IST 2026
[2026-06-13 16:44:12,546.546 INFO    ] ================================================
[2026-06-13 16:44:13,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:13
[2026-06-13 16:44:13,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:13,737.737 INFO    ] Initializing speech engine...
[2026-06-13 16:44:13,745.745 INFO    ] 2026-06-13 16:44:13
[2026-06-13 16:44:13,984.984 INFO    ] 2026-06-13 16:44:13
[2026-06-13 16:44:14,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:14,071.071 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 16:44:14,105.105 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 16:44:14,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:14,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:14,166.166 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 16:44:14,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:16,278.278 INFO    ] ================================================
[2026-06-13 16:44:16,293.293 INFO    ] Launching Daemon at Sat Jun 13 16:44:16 IST 2026
[2026-06-13 16:44:16,304.304 INFO    ] ================================================
[2026-06-13 16:44:16,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:16
[2026-06-13 16:44:16,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:17,100.100 INFO    ] Initializing speech engine...
[2026-06-13 16:44:17,113.113 INFO    ] 2026-06-13 16:44:17
[2026-06-13 16:44:17,330.330 INFO    ] 2026-06-13 16:44:17
[2026-06-13 16:44:17,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:17,417.417 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 16:44:17,463.463 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 16:44:17,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:17,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:17,525.525 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 16:44:17,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:19,639.639 INFO    ] ================================================
[2026-06-13 16:44:19,654.654 INFO    ] Launching Daemon at Sat Jun 13 16:44:19 IST 2026
[2026-06-13 16:44:19,665.665 INFO    ] ================================================
[2026-06-13 16:44:19,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:19
[2026-06-13 16:44:20,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:20,470.470 INFO    ] Initializing speech engine...
[2026-06-13 16:44:20,481.481 INFO    ] 2026-06-13 16:44:20
[2026-06-13 16:44:20,688.688 INFO    ] 2026-06-13 16:44:20
[2026-06-13 16:44:20,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:20,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:44:20,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:44:21,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:44:21,101.101 INFO    ] time= 13/06/2026 16:44:21
[2026-06-13 16:44:21,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:44:21,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:44:21,206.206 INFO    ] No existing commands found in stream
[2026-06-13 16:44:26,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:44:26,218.218 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 16:44:26,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:44:26,685.685 INFO    ] Checking for system updates...
[2026-06-13 16:44:26,705.705 INFO    ] 200
[2026-06-13 16:44:26,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:26,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:44:26,738.738 INFO    ] No update needed
[2026-06-13 16:44:26,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 16:44:26,759.759 INFO    ] 200
[2026-06-13 16:44:26,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:26,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:44:26,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:44:26,932.932 INFO    ] No camera update needed
[2026-06-13 16:44:26,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:44:26,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:26,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:26,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:28,977.977 INFO    ] ================================================
[2026-06-13 16:44:28,993.993 INFO    ] Launching Daemon at Sat Jun 13 16:44:28 IST 2026
[2026-06-13 16:44:29,003.003 INFO    ] ================================================
[2026-06-13 16:44:29,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:29
[2026-06-13 16:44:29,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:29,779.779 INFO    ] Initializing speech engine...
[2026-06-13 16:44:29,789.789 INFO    ] 2026-06-13 16:44:29
[2026-06-13 16:44:29,992.992 INFO    ] 2026-06-13 16:44:29
[2026-06-13 16:44:30,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:30,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:44:30,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:44:30,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:44:30,399.399 INFO    ] time= 13/06/2026 16:44:30
[2026-06-13 16:44:30,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:44:30,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:44:30,502.502 INFO    ] No existing commands found in stream
[2026-06-13 16:44:35,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:44:35,514.514 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 16:44:39,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:44:39,115.115 INFO    ] Checking for system updates...
[2026-06-13 16:44:39,136.136 INFO    ] 200
[2026-06-13 16:44:39,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:39,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:44:39,170.170 INFO    ] No update needed
[2026-06-13 16:44:39,171.171 INFO    ] Checking for camera pi updates...
[2026-06-13 16:44:39,190.190 INFO    ] 200
[2026-06-13 16:44:39,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:39,215.215 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:44:39,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:44:39,255.255 INFO    ] No camera update needed
[2026-06-13 16:44:39,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:44:39,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:39,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:39,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:41,303.303 INFO    ] ================================================
[2026-06-13 16:44:41,318.318 INFO    ] Launching Daemon at Sat Jun 13 16:44:41 IST 2026
[2026-06-13 16:44:41,329.329 INFO    ] ================================================
[2026-06-13 16:44:41,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:41
[2026-06-13 16:44:41,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:42,115.115 INFO    ] Initializing speech engine...
[2026-06-13 16:44:42,120.120 INFO    ] 2026-06-13 16:44:42
[2026-06-13 16:44:42,324.324 INFO    ] 2026-06-13 16:44:42
[2026-06-13 16:44:42,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:42,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:44:42,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:44:42,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:44:42,732.732 INFO    ] time= 13/06/2026 16:44:42
[2026-06-13 16:44:42,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:44:42,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:44:42,838.838 INFO    ] No existing commands found in stream
[2026-06-13 16:44:47,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:44:47,850.850 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 16:44:50,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:44:50,271.271 INFO    ] Checking for system updates...
[2026-06-13 16:44:50,292.292 INFO    ] 200
[2026-06-13 16:44:50,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:50,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:44:50,328.328 INFO    ] No update needed
[2026-06-13 16:44:50,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 16:44:50,349.349 INFO    ] 200
[2026-06-13 16:44:50,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:44:50,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:44:50,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:44:50,420.420 INFO    ] No camera update needed
[2026-06-13 16:44:50,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:44:50,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:44:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:44:50,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:44:52,468.468 INFO    ] ================================================
[2026-06-13 16:44:52,483.483 INFO    ] Launching Daemon at Sat Jun 13 16:44:52 IST 2026
[2026-06-13 16:44:52,494.494 INFO    ] ================================================
[2026-06-13 16:44:52,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:44:52
[2026-06-13 16:44:53,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:44:53,295.295 INFO    ] Initializing speech engine...
[2026-06-13 16:44:53,307.307 INFO    ] 2026-06-13 16:44:53
[2026-06-13 16:44:53,523.523 INFO    ] 2026-06-13 16:44:53
[2026-06-13 16:44:53,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:44:53,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:44:53,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:44:53,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:44:53,942.942 INFO    ] time= 13/06/2026 16:44:53
[2026-06-13 16:44:53,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:44:53,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:44:54,073.073 INFO    ] No existing commands found in stream
[2026-06-13 16:44:59,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:44:59,087.087 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 16:45:01,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:45:01,402.402 INFO    ] Checking for system updates...
[2026-06-13 16:45:01,425.425 INFO    ] 200
[2026-06-13 16:45:01,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:01,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:01,459.459 INFO    ] No update needed
[2026-06-13 16:45:01,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:01,481.481 INFO    ] 200
[2026-06-13 16:45:01,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:01,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:01,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:01,647.647 INFO    ] No camera update needed
[2026-06-13 16:45:01,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:01,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:01,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:01,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:45:03,786.786 INFO    ] ================================================
[2026-06-13 16:45:03,801.801 INFO    ] Launching Daemon at Sat Jun 13 16:45:03 IST 2026
[2026-06-13 16:45:03,811.811 INFO    ] ================================================
[2026-06-13 16:45:04,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:45:04
[2026-06-13 16:45:04,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:45:04,582.582 INFO    ] Initializing speech engine...
[2026-06-13 16:45:04,586.586 INFO    ] 2026-06-13 16:45:04
[2026-06-13 16:45:04,814.814 INFO    ] 2026-06-13 16:45:04
[2026-06-13 16:45:04,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:45:04,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:45:05,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:45:05,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:45:05,260.260 INFO    ] time= 13/06/2026 16:45:05
[2026-06-13 16:45:05,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:45:05,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:45:05,415.415 INFO    ] No existing commands found in stream
[2026-06-13 16:45:10,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:45:10,426.426 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 16:45:12,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:45:12,511.511 INFO    ] Checking for system updates...
[2026-06-13 16:45:12,533.533 INFO    ] 200
[2026-06-13 16:45:12,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:12,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:12,567.567 INFO    ] No update needed
[2026-06-13 16:45:12,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:12,590.590 INFO    ] 200
[2026-06-13 16:45:12,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:12,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:12,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:12,660.660 INFO    ] No camera update needed
[2026-06-13 16:45:12,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:12,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:12,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:12,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:45:14,715.715 INFO    ] ================================================
[2026-06-13 16:45:14,730.730 INFO    ] Launching Daemon at Sat Jun 13 16:45:14 IST 2026
[2026-06-13 16:45:14,740.740 INFO    ] ================================================
[2026-06-13 16:45:15,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:45:15
[2026-06-13 16:45:15,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:45:15,872.872 INFO    ] Initializing speech engine...
[2026-06-13 16:45:15,880.880 INFO    ] 2026-06-13 16:45:15
[2026-06-13 16:45:16,100.100 INFO    ] 2026-06-13 16:45:16
[2026-06-13 16:45:16,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:45:16,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:45:16,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:45:16,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:45:16,515.515 INFO    ] time= 13/06/2026 16:45:16
[2026-06-13 16:45:16,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:45:16,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:45:16,643.643 INFO    ] No existing commands found in stream
[2026-06-13 16:45:21,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:45:21,656.656 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 16:45:25,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:45:25,176.176 INFO    ] Checking for system updates...
[2026-06-13 16:45:25,197.197 INFO    ] 200
[2026-06-13 16:45:25,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:25,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:25,231.231 INFO    ] No update needed
[2026-06-13 16:45:25,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:25,251.251 INFO    ] 200
[2026-06-13 16:45:25,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:25,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:25,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:25,316.316 INFO    ] No camera update needed
[2026-06-13 16:45:25,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:25,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:25,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:25,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:45:27,362.362 INFO    ] ================================================
[2026-06-13 16:45:27,377.377 INFO    ] Launching Daemon at Sat Jun 13 16:45:27 IST 2026
[2026-06-13 16:45:27,388.388 INFO    ] ================================================
[2026-06-13 16:45:27,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:45:27
[2026-06-13 16:45:28,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:45:28,158.158 INFO    ] Initializing speech engine...
[2026-06-13 16:45:28,168.168 INFO    ] 2026-06-13 16:45:28
[2026-06-13 16:45:28,383.383 INFO    ] 2026-06-13 16:45:28
[2026-06-13 16:45:28,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:45:28,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:45:28,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:45:28,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:45:28,763.763 INFO    ] time= 13/06/2026 16:45:28
[2026-06-13 16:45:28,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:45:28,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:45:28,936.936 INFO    ] No existing commands found in stream
[2026-06-13 16:45:33,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:45:33,950.950 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 16:45:36,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:45:36,820.820 INFO    ] Checking for system updates...
[2026-06-13 16:45:36,841.841 INFO    ] 200
[2026-06-13 16:45:36,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:36,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:36,874.874 INFO    ] No update needed
[2026-06-13 16:45:36,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:36,896.896 INFO    ] 200
[2026-06-13 16:45:36,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:36,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:36,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:45:36,960.960 INFO    ] No camera update needed
[2026-06-13 16:45:36,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:36,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:36,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:36,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:45:39,007.007 INFO    ] ================================================
[2026-06-13 16:45:39,023.023 INFO    ] Launching Daemon at Sat Jun 13 16:45:39 IST 2026
[2026-06-13 16:45:39,033.033 INFO    ] ================================================
[2026-06-13 16:45:39,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:45:39
[2026-06-13 16:45:39,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:45:39,819.819 INFO    ] Initializing speech engine...
[2026-06-13 16:45:39,824.824 INFO    ] 2026-06-13 16:45:39
[2026-06-13 16:45:40,027.027 INFO    ] 2026-06-13 16:45:40
[2026-06-13 16:45:40,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:45:40,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:45:40,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:45:40,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:45:40,380.380 INFO    ] time= 13/06/2026 16:45:40
[2026-06-13 16:45:40,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:45:40,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:45:40,567.567 INFO    ] No existing commands found in stream
[2026-06-13 16:45:45,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:45:45,595.595 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 16:45:47,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:45:47,730.730 INFO    ] Checking for system updates...
[2026-06-13 16:45:47,750.750 INFO    ] 200
[2026-06-13 16:45:47,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:47,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:47,783.783 INFO    ] No update needed
[2026-06-13 16:45:47,784.784 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:47,806.806 INFO    ] 200
[2026-06-13 16:45:47,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:47,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:47,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:47,854.854 INFO    ] No camera update needed
[2026-06-13 16:45:47,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:47,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:47,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:47,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:45:49,903.903 INFO    ] ================================================
[2026-06-13 16:45:49,917.917 INFO    ] Launching Daemon at Sat Jun 13 16:45:49 IST 2026
[2026-06-13 16:45:49,928.928 INFO    ] ================================================
[2026-06-13 16:45:50,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:45:50
[2026-06-13 16:45:50,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:45:50,694.694 INFO    ] Initializing speech engine...
[2026-06-13 16:45:50,699.699 INFO    ] 2026-06-13 16:45:50
[2026-06-13 16:45:50,925.925 INFO    ] 2026-06-13 16:45:50
[2026-06-13 16:45:50,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:45:51,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:45:51,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:45:51,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:45:51,359.359 INFO    ] time= 13/06/2026 16:45:51
[2026-06-13 16:45:51,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:45:51,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:45:51,486.486 INFO    ] No existing commands found in stream
[2026-06-13 16:45:56,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:45:56,502.502 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 16:45:59,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:45:59,732.732 INFO    ] Checking for system updates...
[2026-06-13 16:45:59,752.752 INFO    ] 200
[2026-06-13 16:45:59,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:59,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:59,785.785 INFO    ] No update needed
[2026-06-13 16:45:59,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 16:45:59,806.806 INFO    ] 200
[2026-06-13 16:45:59,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:45:59,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:45:59,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:45:59,875.875 INFO    ] No camera update needed
[2026-06-13 16:45:59,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:45:59,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:45:59,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:45:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:01,931.931 INFO    ] ================================================
[2026-06-13 16:46:01,965.965 INFO    ] Launching Daemon at Sat Jun 13 16:46:01 IST 2026
[2026-06-13 16:46:02,992.992 INFO    ] ================================================
[2026-06-13 16:46:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:02
[2026-06-13 16:46:02,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:03,245.245 INFO    ] Initializing speech engine...
[2026-06-13 16:46:03,256.256 INFO    ] 2026-06-13 16:46:03
[2026-06-13 16:46:03,512.512 INFO    ] 2026-06-13 16:46:03
[2026-06-13 16:46:03,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:03,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:03,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:03,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:03,850.850 INFO    ] time= 13/06/2026 16:46:03
[2026-06-13 16:46:03,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:03,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:03,961.961 INFO    ] No existing commands found in stream
[2026-06-13 16:46:08,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:46:08,976.976 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 16:46:11,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:46:11,944.944 INFO    ] Checking for system updates...
[2026-06-13 16:46:11,966.966 INFO    ] 200
[2026-06-13 16:46:11,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:11,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:46:11,999.999 INFO    ] No update needed
[2026-06-13 16:46:12,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 16:46:12,022.022 INFO    ] 200
[2026-06-13 16:46:12,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:12,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:46:12,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:12,083.083 INFO    ] No camera update needed
[2026-06-13 16:46:12,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:46:12,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:46:12,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:46:12,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:14,132.132 INFO    ] ================================================
[2026-06-13 16:46:14,148.148 INFO    ] Launching Daemon at Sat Jun 13 16:46:14 IST 2026
[2026-06-13 16:46:14,159.159 INFO    ] ================================================
[2026-06-13 16:46:14,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:14
[2026-06-13 16:46:14,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:14,949.949 INFO    ] Initializing speech engine...
[2026-06-13 16:46:14,954.954 INFO    ] 2026-06-13 16:46:14
[2026-06-13 16:46:15,157.157 INFO    ] 2026-06-13 16:46:15
[2026-06-13 16:46:15,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:15,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:15,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:15,567.567 INFO    ] time= 13/06/2026 16:46:15
[2026-06-13 16:46:15,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:15,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:15,671.671 INFO    ] No existing commands found in stream
[2026-06-13 16:46:20,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:46:20,684.684 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 16:46:21,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:46:21,349.349 INFO    ] Checking for system updates...
[2026-06-13 16:46:21,369.369 INFO    ] 200
[2026-06-13 16:46:21,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:21,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:21,402.402 INFO    ] No update needed
[2026-06-13 16:46:21,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 16:46:21,423.423 INFO    ] 200
[2026-06-13 16:46:21,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:21,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:46:21,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:21,494.494 INFO    ] No camera update needed
[2026-06-13 16:46:21,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:46:21,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:46:21,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:46:21,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:23,541.541 INFO    ] ================================================
[2026-06-13 16:46:23,556.556 INFO    ] Launching Daemon at Sat Jun 13 16:46:23 IST 2026
[2026-06-13 16:46:23,567.567 INFO    ] ================================================
[2026-06-13 16:46:23,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:23
[2026-06-13 16:46:24,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:24,426.426 INFO    ] Initializing speech engine...
[2026-06-13 16:46:24,431.431 INFO    ] 2026-06-13 16:46:24
[2026-06-13 16:46:24,634.634 INFO    ] 2026-06-13 16:46:24
[2026-06-13 16:46:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:24,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:24,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:24,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:25,034.034 INFO    ] time= 13/06/2026 16:46:24
[2026-06-13 16:46:25,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:25,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:25,236.236 INFO    ] No existing commands found in stream
[2026-06-13 16:46:30,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:46:30,270.270 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 16:46:33,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:46:33,346.346 INFO    ] Checking for system updates...
[2026-06-13 16:46:33,366.366 INFO    ] 200
[2026-06-13 16:46:33,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:33,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:46:33,401.401 INFO    ] No update needed
[2026-06-13 16:46:33,402.402 INFO    ] Checking for camera pi updates...
[2026-06-13 16:46:33,422.422 INFO    ] 200
[2026-06-13 16:46:33,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:33,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:46:33,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:46:33,487.487 INFO    ] No camera update needed
[2026-06-13 16:46:33,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:46:33,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:46:33,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:46:33,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:35,538.538 INFO    ] ================================================
[2026-06-13 16:46:35,553.553 INFO    ] Launching Daemon at Sat Jun 13 16:46:35 IST 2026
[2026-06-13 16:46:35,563.563 INFO    ] ================================================
[2026-06-13 16:46:35,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:35
[2026-06-13 16:46:36,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:36,364.364 INFO    ] Initializing speech engine...
[2026-06-13 16:46:36,379.379 INFO    ] 2026-06-13 16:46:36
[2026-06-13 16:46:36,653.653 INFO    ] 2026-06-13 16:46:36
[2026-06-13 16:46:36,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:36,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:36,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:36,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:36,997.997 INFO    ] time= 13/06/2026 16:46:36
[2026-06-13 16:46:37,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:37,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:37,112.112 INFO    ] No existing commands found in stream
[2026-06-13 16:46:42,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:46:42,145.145 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 16:46:42,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:46:42,700.700 INFO    ] Checking for system updates...
[2026-06-13 16:46:42,721.721 INFO    ] 200
[2026-06-13 16:46:42,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:42,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:42,757.757 INFO    ] No update needed
[2026-06-13 16:46:42,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 16:46:42,777.777 INFO    ] 200
[2026-06-13 16:46:42,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:42,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:46:42,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:42,842.842 INFO    ] No camera update needed
[2026-06-13 16:46:42,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:46:42,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:46:42,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:46:42,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:44,890.890 INFO    ] ================================================
[2026-06-13 16:46:44,905.905 INFO    ] Launching Daemon at Sat Jun 13 16:46:44 IST 2026
[2026-06-13 16:46:44,916.916 INFO    ] ================================================
[2026-06-13 16:46:45,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:45
[2026-06-13 16:46:45,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:45,717.717 INFO    ] Initializing speech engine...
[2026-06-13 16:46:45,722.722 INFO    ] 2026-06-13 16:46:45
[2026-06-13 16:46:45,928.928 INFO    ] 2026-06-13 16:46:45
[2026-06-13 16:46:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:46,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:46,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:46,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:46,332.332 INFO    ] time= 13/06/2026 16:46:46
[2026-06-13 16:46:46,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:46,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:46,449.449 INFO    ] No existing commands found in stream
[2026-06-13 16:46:51,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:46:51,461.461 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 16:46:53,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:46:53,525.525 INFO    ] Checking for system updates...
[2026-06-13 16:46:53,546.546 INFO    ] 200
[2026-06-13 16:46:53,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:53,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:53,582.582 INFO    ] No update needed
[2026-06-13 16:46:53,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 16:46:53,602.602 INFO    ] 200
[2026-06-13 16:46:53,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:46:53,630.630 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:46:53,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:46:53,672.672 INFO    ] No camera update needed
[2026-06-13 16:46:53,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:46:53,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:46:53,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:46:53,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:46:55,719.719 INFO    ] ================================================
[2026-06-13 16:46:55,734.734 INFO    ] Launching Daemon at Sat Jun 13 16:46:55 IST 2026
[2026-06-13 16:46:55,745.745 INFO    ] ================================================
[2026-06-13 16:46:56,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:46:56
[2026-06-13 16:46:56,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:46:56,555.555 INFO    ] Initializing speech engine...
[2026-06-13 16:46:56,559.559 INFO    ] 2026-06-13 16:46:56
[2026-06-13 16:46:56,782.782 INFO    ] 2026-06-13 16:46:56
[2026-06-13 16:46:56,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:46:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:46:56,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:46:57,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:46:57,191.191 INFO    ] time= 13/06/2026 16:46:57
[2026-06-13 16:46:57,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:46:57,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:46:57,299.299 INFO    ] No existing commands found in stream
[2026-06-13 16:47:02,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:47:02,311.311 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 16:47:05,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:47:05,378.378 INFO    ] Checking for system updates...
[2026-06-13 16:47:05,399.399 INFO    ] 200
[2026-06-13 16:47:05,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:05,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:05,434.434 INFO    ] No update needed
[2026-06-13 16:47:05,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 16:47:05,458.458 INFO    ] 200
[2026-06-13 16:47:05,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:05,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:47:05,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:05,531.531 INFO    ] No camera update needed
[2026-06-13 16:47:05,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:47:05,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:47:05,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:47:05,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:47:07,579.579 INFO    ] ================================================
[2026-06-13 16:47:07,593.593 INFO    ] Launching Daemon at Sat Jun 13 16:47:07 IST 2026
[2026-06-13 16:47:07,604.604 INFO    ] ================================================
[2026-06-13 16:47:07,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:47:07
[2026-06-13 16:47:08,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:47:08,469.469 INFO    ] Initializing speech engine...
[2026-06-13 16:47:08,475.475 INFO    ] 2026-06-13 16:47:08
[2026-06-13 16:47:08,687.687 INFO    ] 2026-06-13 16:47:08
[2026-06-13 16:47:08,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:47:08,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:47:08,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:47:09,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:47:09,110.110 INFO    ] time= 13/06/2026 16:47:09
[2026-06-13 16:47:09,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:47:09,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:47:09,209.209 INFO    ] No existing commands found in stream
[2026-06-13 16:47:14,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:47:14,223.223 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 16:47:17,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:47:17,615.615 INFO    ] Checking for system updates...
[2026-06-13 16:47:17,637.637 INFO    ] 200
[2026-06-13 16:47:17,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:17,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:47:17,673.673 INFO    ] No update needed
[2026-06-13 16:47:17,674.674 INFO    ] Checking for camera pi updates...
[2026-06-13 16:47:17,694.694 INFO    ] 200
[2026-06-13 16:47:17,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:17,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:47:17,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:47:17,770.770 INFO    ] No camera update needed
[2026-06-13 16:47:17,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:47:17,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:47:17,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:47:17,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:47:19,819.819 INFO    ] ================================================
[2026-06-13 16:47:19,834.834 INFO    ] Launching Daemon at Sat Jun 13 16:47:19 IST 2026
[2026-06-13 16:47:19,845.845 INFO    ] ================================================
[2026-06-13 16:47:20,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:47:20
[2026-06-13 16:47:20,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:47:20,661.661 INFO    ] Initializing speech engine...
[2026-06-13 16:47:20,663.663 INFO    ] 2026-06-13 16:47:20
[2026-06-13 16:47:20,876.876 INFO    ] 2026-06-13 16:47:20
[2026-06-13 16:47:20,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:47:21,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:47:21,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:47:21,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:47:21,304.304 INFO    ] time= 13/06/2026 16:47:21
[2026-06-13 16:47:21,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:47:21,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:47:21,490.490 INFO    ] No existing commands found in stream
[2026-06-13 16:47:26,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:47:26,503.503 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 16:47:29,528.528 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:47:29,531.531 INFO    ] Checking for system updates...
[2026-06-13 16:47:29,567.567 INFO    ] 200
[2026-06-13 16:47:29,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:29,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:29,632.632 INFO    ] No update needed
[2026-06-13 16:47:29,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 16:47:29,668.668 INFO    ] 200
[2026-06-13 16:47:29,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:29,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:47:29,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:29,764.764 INFO    ] No camera update needed
[2026-06-13 16:47:29,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:47:29,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:47:29,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:47:29,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:47:31,812.812 INFO    ] ================================================
[2026-06-13 16:47:31,821.821 INFO    ] Launching Daemon at Sat Jun 13 16:47:31 IST 2026
[2026-06-13 16:47:31,828.828 INFO    ] ================================================
[2026-06-13 16:47:32,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:47:32
[2026-06-13 16:47:32,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:47:33,025.025 INFO    ] Initializing speech engine...
[2026-06-13 16:47:33,036.036 INFO    ] 2026-06-13 16:47:33
[2026-06-13 16:47:33,309.309 INFO    ] 2026-06-13 16:47:33
[2026-06-13 16:47:33,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:47:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:47:33,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:47:33,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:47:33,757.757 INFO    ] time= 13/06/2026 16:47:33
[2026-06-13 16:47:33,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:47:33,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:47:34,002.002 INFO    ] No existing commands found in stream
[2026-06-13 16:47:39,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:47:39,026.026 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 16:47:42,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:47:42,270.270 INFO    ] Checking for system updates...
[2026-06-13 16:47:42,292.292 INFO    ] 200
[2026-06-13 16:47:42,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:42,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:42,329.329 INFO    ] No update needed
[2026-06-13 16:47:42,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 16:47:42,351.351 INFO    ] 200
[2026-06-13 16:47:42,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:42,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:47:42,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:47:42,414.414 INFO    ] No camera update needed
[2026-06-13 16:47:42,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:47:42,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:47:42,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:47:42,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:47:44,462.462 INFO    ] ================================================
[2026-06-13 16:47:44,483.483 INFO    ] Launching Daemon at Sat Jun 13 16:47:44 IST 2026
[2026-06-13 16:47:44,493.493 INFO    ] ================================================
[2026-06-13 16:47:44,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:47:44
[2026-06-13 16:47:45,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:47:45,318.318 INFO    ] Initializing speech engine...
[2026-06-13 16:47:45,331.331 INFO    ] 2026-06-13 16:47:45
[2026-06-13 16:47:45,542.542 INFO    ] 2026-06-13 16:47:45
[2026-06-13 16:47:45,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:47:45,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:47:45,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:47:45,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:47:45,947.947 INFO    ] time= 13/06/2026 16:47:45
[2026-06-13 16:47:45,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:47:45,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:47:46,063.063 INFO    ] No existing commands found in stream
[2026-06-13 16:47:51,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:47:51,076.076 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 16:47:55,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:47:55,013.013 INFO    ] Checking for system updates...
[2026-06-13 16:47:55,036.036 INFO    ] 200
[2026-06-13 16:47:55,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:55,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:47:55,075.075 INFO    ] No update needed
[2026-06-13 16:47:55,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 16:47:55,097.097 INFO    ] 200
[2026-06-13 16:47:55,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:47:55,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:47:55,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:47:55,167.167 INFO    ] No camera update needed
[2026-06-13 16:47:55,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:47:55,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:47:55,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:47:55,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:47:57,209.209 INFO    ] ================================================
[2026-06-13 16:47:57,217.217 INFO    ] Launching Daemon at Sat Jun 13 16:47:57 IST 2026
[2026-06-13 16:47:57,223.223 INFO    ] ================================================
[2026-06-13 16:47:57,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:47:57
[2026-06-13 16:47:57,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:47:58,033.033 INFO    ] Initializing speech engine...
[2026-06-13 16:47:58,038.038 INFO    ] 2026-06-13 16:47:58
[2026-06-13 16:47:58,246.246 INFO    ] 2026-06-13 16:47:58
[2026-06-13 16:47:58,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:47:58,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:47:58,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:47:58,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:47:58,653.653 INFO    ] time= 13/06/2026 16:47:58
[2026-06-13 16:47:58,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:47:58,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:47:58,765.765 INFO    ] No existing commands found in stream
[2026-06-13 16:48:03,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:48:03,783.783 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 16:48:04,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:48:04,698.698 INFO    ] Checking for system updates...
[2026-06-13 16:48:04,720.720 INFO    ] 200
[2026-06-13 16:48:04,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:04,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:48:04,759.759 INFO    ] No update needed
[2026-06-13 16:48:04,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 16:48:04,783.783 INFO    ] 200
[2026-06-13 16:48:04,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:04,811.811 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:48:04,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:48:04,852.852 INFO    ] No camera update needed
[2026-06-13 16:48:04,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:48:04,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:48:04,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:48:04,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:48:06,903.903 INFO    ] ================================================
[2026-06-13 16:48:06,917.917 INFO    ] Launching Daemon at Sat Jun 13 16:48:06 IST 2026
[2026-06-13 16:48:06,928.928 INFO    ] ================================================
[2026-06-13 16:48:07,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:48:07
[2026-06-13 16:48:07,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:48:07,805.805 INFO    ] Initializing speech engine...
[2026-06-13 16:48:07,809.809 INFO    ] 2026-06-13 16:48:07
[2026-06-13 16:48:08,017.017 INFO    ] 2026-06-13 16:48:07
[2026-06-13 16:48:08,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:48:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:48:08,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:48:08,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:48:08,429.429 INFO    ] time= 13/06/2026 16:48:08
[2026-06-13 16:48:08,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:48:08,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:48:08,534.534 INFO    ] No existing commands found in stream
[2026-06-13 16:48:13,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:48:13,548.548 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 16:48:15,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:48:15,098.098 INFO    ] Checking for system updates...
[2026-06-13 16:48:15,119.119 INFO    ] 200
[2026-06-13 16:48:15,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:15,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:15,155.155 INFO    ] No update needed
[2026-06-13 16:48:15,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 16:48:15,177.177 INFO    ] 200
[2026-06-13 16:48:15,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:15,205.205 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:48:15,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:15,250.250 INFO    ] No camera update needed
[2026-06-13 16:48:15,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:48:15,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:48:15,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:48:15,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:48:17,297.297 INFO    ] ================================================
[2026-06-13 16:48:17,313.313 INFO    ] Launching Daemon at Sat Jun 13 16:48:17 IST 2026
[2026-06-13 16:48:17,324.324 INFO    ] ================================================
[2026-06-13 16:48:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:48:17
[2026-06-13 16:48:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:48:18,142.142 INFO    ] Initializing speech engine...
[2026-06-13 16:48:18,148.148 INFO    ] 2026-06-13 16:48:18
[2026-06-13 16:48:18,351.351 INFO    ] 2026-06-13 16:48:18
[2026-06-13 16:48:18,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:48:18,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:48:18,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:48:18,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:48:18,783.783 INFO    ] time= 13/06/2026 16:48:18
[2026-06-13 16:48:18,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:48:18,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:48:18,911.911 INFO    ] No existing commands found in stream
[2026-06-13 16:48:23,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:48:23,925.925 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 16:48:26,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:48:26,411.411 INFO    ] Checking for system updates...
[2026-06-13 16:48:26,432.432 INFO    ] 200
[2026-06-13 16:48:26,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:26,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:48:26,466.466 INFO    ] No update needed
[2026-06-13 16:48:26,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 16:48:26,487.487 INFO    ] 200
[2026-06-13 16:48:26,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:26,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:48:26,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:48:26,549.549 INFO    ] No camera update needed
[2026-06-13 16:48:26,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:48:26,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:48:26,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:48:26,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:48:28,595.595 INFO    ] ================================================
[2026-06-13 16:48:28,610.610 INFO    ] Launching Daemon at Sat Jun 13 16:48:28 IST 2026
[2026-06-13 16:48:28,621.621 INFO    ] ================================================
[2026-06-13 16:48:28,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:48:28
[2026-06-13 16:48:29,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:48:29,493.493 INFO    ] Initializing speech engine...
[2026-06-13 16:48:29,499.499 INFO    ] 2026-06-13 16:48:29
[2026-06-13 16:48:29,711.711 INFO    ] 2026-06-13 16:48:29
[2026-06-13 16:48:29,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:48:29,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:48:29,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:48:30,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:48:30,130.130 INFO    ] time= 13/06/2026 16:48:30
[2026-06-13 16:48:30,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:48:30,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:48:30,239.239 INFO    ] No existing commands found in stream
[2026-06-13 16:48:35,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:48:35,252.252 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 16:48:39,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:48:39,757.757 INFO    ] Checking for system updates...
[2026-06-13 16:48:39,795.795 INFO    ] 200
[2026-06-13 16:48:39,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:39,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:39,865.865 INFO    ] No update needed
[2026-06-13 16:48:39,867.867 INFO    ] Checking for camera pi updates...
[2026-06-13 16:48:39,902.902 INFO    ] 200
[2026-06-13 16:48:39,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:39,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:48:40,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:40,082.082 INFO    ] No camera update needed
[2026-06-13 16:48:40,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:48:40,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:48:40,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:48:40,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:48:42,129.129 INFO    ] ================================================
[2026-06-13 16:48:42,144.144 INFO    ] Launching Daemon at Sat Jun 13 16:48:42 IST 2026
[2026-06-13 16:48:42,155.155 INFO    ] ================================================
[2026-06-13 16:48:42,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:48:42
[2026-06-13 16:48:42,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:48:42,978.978 INFO    ] Initializing speech engine...
[2026-06-13 16:48:42,983.983 INFO    ] 2026-06-13 16:48:42
[2026-06-13 16:48:43,187.187 INFO    ] 2026-06-13 16:48:43
[2026-06-13 16:48:43,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:48:43,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:48:43,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:48:43,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:48:43,589.589 INFO    ] time= 13/06/2026 16:48:43
[2026-06-13 16:48:43,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:48:43,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:48:43,697.697 INFO    ] No existing commands found in stream
[2026-06-13 16:48:48,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:48:48,711.711 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 16:48:52,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:48:52,012.012 INFO    ] Checking for system updates...
[2026-06-13 16:48:52,032.032 INFO    ] 200
[2026-06-13 16:48:52,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:52,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:52,067.067 INFO    ] No update needed
[2026-06-13 16:48:52,068.068 INFO    ] Checking for camera pi updates...
[2026-06-13 16:48:52,097.097 INFO    ] 200
[2026-06-13 16:48:52,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:48:52,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:48:52,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:48:52,160.160 INFO    ] No camera update needed
[2026-06-13 16:48:52,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:48:52,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:48:52,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:48:52,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:48:54,208.208 INFO    ] ================================================
[2026-06-13 16:48:54,223.223 INFO    ] Launching Daemon at Sat Jun 13 16:48:54 IST 2026
[2026-06-13 16:48:54,234.234 INFO    ] ================================================
[2026-06-13 16:48:54,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:48:54
[2026-06-13 16:48:54,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:48:55,041.041 INFO    ] Initializing speech engine...
[2026-06-13 16:48:55,047.047 INFO    ] 2026-06-13 16:48:55
[2026-06-13 16:48:55,251.251 INFO    ] 2026-06-13 16:48:55
[2026-06-13 16:48:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:48:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:48:55,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:48:55,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:48:55,663.663 INFO    ] time= 13/06/2026 16:48:55
[2026-06-13 16:48:55,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:48:55,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:48:55,769.769 INFO    ] No existing commands found in stream
[2026-06-13 16:49:00,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:00,782.782 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 16:49:03,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:49:03,191.191 INFO    ] Checking for system updates...
[2026-06-13 16:49:03,236.236 INFO    ] 200
[2026-06-13 16:49:03,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:03,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:03,305.305 INFO    ] No update needed
[2026-06-13 16:49:03,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:03,348.348 INFO    ] 200
[2026-06-13 16:49:03,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:03,401.401 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:03,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:03,456.456 INFO    ] No camera update needed
[2026-06-13 16:49:03,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:03,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:03,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:03,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:49:05,503.503 INFO    ] ================================================
[2026-06-13 16:49:05,511.511 INFO    ] Launching Daemon at Sat Jun 13 16:49:05 IST 2026
[2026-06-13 16:49:05,517.517 INFO    ] ================================================
[2026-06-13 16:49:05,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:49:05
[2026-06-13 16:49:06,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:49:06,373.373 INFO    ] Initializing speech engine...
[2026-06-13 16:49:06,379.379 INFO    ] 2026-06-13 16:49:06
[2026-06-13 16:49:06,604.604 INFO    ] 2026-06-13 16:49:06
[2026-06-13 16:49:06,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:49:06,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:49:06,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:49:06,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:49:07,004.004 INFO    ] time= 13/06/2026 16:49:06
[2026-06-13 16:49:07,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:49:07,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:49:07,125.125 INFO    ] No existing commands found in stream
[2026-06-13 16:49:12,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:12,165.165 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 16:49:15,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:49:15,109.109 INFO    ] Checking for system updates...
[2026-06-13 16:49:15,131.131 INFO    ] 200
[2026-06-13 16:49:15,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:15,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:15,164.164 INFO    ] No update needed
[2026-06-13 16:49:15,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:15,187.187 INFO    ] 200
[2026-06-13 16:49:15,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:15,212.212 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:15,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:15,250.250 INFO    ] No camera update needed
[2026-06-13 16:49:15,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:15,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:15,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:15,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:49:17,296.296 INFO    ] ================================================
[2026-06-13 16:49:17,311.311 INFO    ] Launching Daemon at Sat Jun 13 16:49:17 IST 2026
[2026-06-13 16:49:17,326.326 INFO    ] ================================================
[2026-06-13 16:49:17,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:49:17
[2026-06-13 16:49:18,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:49:18,172.172 INFO    ] Initializing speech engine...
[2026-06-13 16:49:18,178.178 INFO    ] 2026-06-13 16:49:18
[2026-06-13 16:49:18,384.384 INFO    ] 2026-06-13 16:49:18
[2026-06-13 16:49:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:49:18,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:49:18,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:49:18,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:49:18,793.793 INFO    ] time= 13/06/2026 16:49:18
[2026-06-13 16:49:18,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:49:18,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:49:18,896.896 INFO    ] No existing commands found in stream
[2026-06-13 16:49:23,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:23,910.910 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 16:49:25,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:49:25,955.955 INFO    ] Checking for system updates...
[2026-06-13 16:49:25,977.977 INFO    ] 200
[2026-06-13 16:49:25,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:26,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:26,010.010 INFO    ] No update needed
[2026-06-13 16:49:26,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:26,032.032 INFO    ] 200
[2026-06-13 16:49:26,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:26,058.058 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:26,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:26,099.099 INFO    ] No camera update needed
[2026-06-13 16:49:26,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:26,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:26,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:26,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:49:28,146.146 INFO    ] ================================================
[2026-06-13 16:49:28,162.162 INFO    ] Launching Daemon at Sat Jun 13 16:49:28 IST 2026
[2026-06-13 16:49:28,173.173 INFO    ] ================================================
[2026-06-13 16:49:28,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:49:28
[2026-06-13 16:49:28,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:49:28,984.984 INFO    ] Initializing speech engine...
[2026-06-13 16:49:28,992.992 INFO    ] 2026-06-13 16:49:28
[2026-06-13 16:49:29,211.211 INFO    ] 2026-06-13 16:49:29
[2026-06-13 16:49:29,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:49:29,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:49:29,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:49:29,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:49:29,634.634 INFO    ] time= 13/06/2026 16:49:29
[2026-06-13 16:49:29,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:49:29,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:49:29,773.773 INFO    ] No existing commands found in stream
[2026-06-13 16:49:34,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:34,786.786 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 16:49:38,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:49:38,451.451 INFO    ] Checking for system updates...
[2026-06-13 16:49:38,472.472 INFO    ] 200
[2026-06-13 16:49:38,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:38,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:38,505.505 INFO    ] No update needed
[2026-06-13 16:49:38,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:38,527.527 INFO    ] 200
[2026-06-13 16:49:38,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:38,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:38,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:38,596.596 INFO    ] No camera update needed
[2026-06-13 16:49:38,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:38,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:38,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:38,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:49:40,643.643 INFO    ] ================================================
[2026-06-13 16:49:40,658.658 INFO    ] Launching Daemon at Sat Jun 13 16:49:40 IST 2026
[2026-06-13 16:49:40,669.669 INFO    ] ================================================
[2026-06-13 16:49:41,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:49:41
[2026-06-13 16:49:41,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:49:41,518.518 INFO    ] Initializing speech engine...
[2026-06-13 16:49:41,539.539 INFO    ] 2026-06-13 16:49:41
[2026-06-13 16:49:41,814.814 INFO    ] 2026-06-13 16:49:41
[2026-06-13 16:49:41,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:49:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:49:42,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:49:42,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:49:42,266.266 INFO    ] time= 13/06/2026 16:49:42
[2026-06-13 16:49:42,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:49:42,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:49:42,509.509 INFO    ] No existing commands found in stream
[2026-06-13 16:49:47,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:47,541.541 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 16:49:48,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:49:48,237.237 INFO    ] Checking for system updates...
[2026-06-13 16:49:48,257.257 INFO    ] 200
[2026-06-13 16:49:48,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:48,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:48,291.291 INFO    ] No update needed
[2026-06-13 16:49:48,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:48,312.312 INFO    ] 200
[2026-06-13 16:49:48,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:48,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:48,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:49:48,387.387 INFO    ] No camera update needed
[2026-06-13 16:49:48,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:48,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:48,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:48,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:49:50,435.435 INFO    ] ================================================
[2026-06-13 16:49:50,450.450 INFO    ] Launching Daemon at Sat Jun 13 16:49:50 IST 2026
[2026-06-13 16:49:50,462.462 INFO    ] ================================================
[2026-06-13 16:49:50,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:49:50
[2026-06-13 16:49:51,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:49:51,246.246 INFO    ] Initializing speech engine...
[2026-06-13 16:49:51,257.257 INFO    ] 2026-06-13 16:49:51
[2026-06-13 16:49:51,462.462 INFO    ] 2026-06-13 16:49:51
[2026-06-13 16:49:51,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:49:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:49:51,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:49:51,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:49:51,870.870 INFO    ] time= 13/06/2026 16:49:51
[2026-06-13 16:49:51,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:49:51,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:49:51,973.973 INFO    ] No existing commands found in stream
[2026-06-13 16:49:56,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:49:56,986.986 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 16:49:58,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:49:58,657.657 INFO    ] Checking for system updates...
[2026-06-13 16:49:58,677.677 INFO    ] 200
[2026-06-13 16:49:58,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:58,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:58,715.715 INFO    ] No update needed
[2026-06-13 16:49:58,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 16:49:58,738.738 INFO    ] 200
[2026-06-13 16:49:58,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:49:58,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:49:58,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:49:58,804.804 INFO    ] No camera update needed
[2026-06-13 16:49:58,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:49:58,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:49:58,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:49:58,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:00,854.854 INFO    ] ================================================
[2026-06-13 16:50:00,869.869 INFO    ] Launching Daemon at Sat Jun 13 16:50:00 IST 2026
[2026-06-13 16:50:00,880.880 INFO    ] ================================================
[2026-06-13 16:50:01,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:01
[2026-06-13 16:50:01,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:02,011.011 INFO    ] Initializing speech engine...
[2026-06-13 16:50:02,013.013 INFO    ] 2026-06-13 16:50:02
[2026-06-13 16:50:02,320.320 INFO    ] 2026-06-13 16:50:02
[2026-06-13 16:50:02,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:02,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:02,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:02,564.564 INFO    ] time= 13/06/2026 16:50:02
[2026-06-13 16:50:02,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:02,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:02,621.621 INFO    ] No existing commands found in stream
[2026-06-13 16:50:07,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:50:07,634.634 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 16:50:09,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:50:09,023.023 INFO    ] Checking for system updates...
[2026-06-13 16:50:09,047.047 INFO    ] 200
[2026-06-13 16:50:09,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:09,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:50:09,084.084 INFO    ] No update needed
[2026-06-13 16:50:09,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 16:50:09,104.104 INFO    ] 200
[2026-06-13 16:50:09,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:09,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:50:09,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:50:09,170.170 INFO    ] No camera update needed
[2026-06-13 16:50:09,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:50:09,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:50:09,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:50:09,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:11,219.219 INFO    ] ================================================
[2026-06-13 16:50:11,235.235 INFO    ] Launching Daemon at Sat Jun 13 16:50:11 IST 2026
[2026-06-13 16:50:11,246.246 INFO    ] ================================================
[2026-06-13 16:50:11,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:11
[2026-06-13 16:50:11,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:12,047.047 INFO    ] Initializing speech engine...
[2026-06-13 16:50:12,057.057 INFO    ] 2026-06-13 16:50:12
[2026-06-13 16:50:12,262.262 INFO    ] 2026-06-13 16:50:12
[2026-06-13 16:50:12,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:12,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:12,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:12,668.668 INFO    ] time= 13/06/2026 16:50:12
[2026-06-13 16:50:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:12,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:12,834.834 INFO    ] No existing commands found in stream
[2026-06-13 16:50:17,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:50:17,847.847 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 16:50:19,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:50:19,624.624 INFO    ] Checking for system updates...
[2026-06-13 16:50:19,666.666 INFO    ] 200
[2026-06-13 16:50:19,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:19,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:19,712.712 INFO    ] No update needed
[2026-06-13 16:50:19,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 16:50:19,734.734 INFO    ] 200
[2026-06-13 16:50:19,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:19,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:50:19,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:19,805.805 INFO    ] No camera update needed
[2026-06-13 16:50:19,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:50:19,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:50:19,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:50:19,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:21,854.854 INFO    ] ================================================
[2026-06-13 16:50:21,870.870 INFO    ] Launching Daemon at Sat Jun 13 16:50:21 IST 2026
[2026-06-13 16:50:21,880.880 INFO    ] ================================================
[2026-06-13 16:50:22,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:22
[2026-06-13 16:50:22,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:22,659.659 INFO    ] Initializing speech engine...
[2026-06-13 16:50:22,675.675 INFO    ] 2026-06-13 16:50:22
[2026-06-13 16:50:22,898.898 INFO    ] 2026-06-13 16:50:22
[2026-06-13 16:50:22,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:23,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:23,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:23,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:23,307.307 INFO    ] time= 13/06/2026 16:50:23
[2026-06-13 16:50:23,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:23,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:23,469.469 INFO    ] No existing commands found in stream
[2026-06-13 16:50:28,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:50:28,483.483 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 16:50:29,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:50:29,415.415 INFO    ] Checking for system updates...
[2026-06-13 16:50:29,436.436 INFO    ] 200
[2026-06-13 16:50:29,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:29,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:29,469.469 INFO    ] No update needed
[2026-06-13 16:50:29,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 16:50:29,491.491 INFO    ] 200
[2026-06-13 16:50:29,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:29,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:50:29,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:29,557.557 INFO    ] No camera update needed
[2026-06-13 16:50:29,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:50:29,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:50:29,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:50:29,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:31,607.607 INFO    ] ================================================
[2026-06-13 16:50:31,625.625 INFO    ] Launching Daemon at Sat Jun 13 16:50:31 IST 2026
[2026-06-13 16:50:31,637.637 INFO    ] ================================================
[2026-06-13 16:50:32,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:32
[2026-06-13 16:50:32,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:33,187.187 INFO    ] Initializing speech engine...
[2026-06-13 16:50:33,195.195 INFO    ] 2026-06-13 16:50:33
[2026-06-13 16:50:33,455.455 INFO    ] 2026-06-13 16:50:33
[2026-06-13 16:50:33,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:33,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:33,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:33,824.824 INFO    ] time= 13/06/2026 16:50:33
[2026-06-13 16:50:33,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:33,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:33,937.937 INFO    ] No existing commands found in stream
[2026-06-13 16:50:38,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:50:38,960.960 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 16:50:39,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:50:39,932.932 INFO    ] Checking for system updates...
[2026-06-13 16:50:39,954.954 INFO    ] 200
[2026-06-13 16:50:39,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:39,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:39,987.987 INFO    ] No update needed
[2026-06-13 16:50:39,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 16:50:40,009.009 INFO    ] 200
[2026-06-13 16:50:40,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:40,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:50:40,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:40,074.074 INFO    ] No camera update needed
[2026-06-13 16:50:40,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:50:40,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:50:40,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:50:40,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:42,121.121 INFO    ] ================================================
[2026-06-13 16:50:42,136.136 INFO    ] Launching Daemon at Sat Jun 13 16:50:42 IST 2026
[2026-06-13 16:50:42,147.147 INFO    ] ================================================
[2026-06-13 16:50:42,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:42
[2026-06-13 16:50:42,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:42,963.963 INFO    ] Initializing speech engine...
[2026-06-13 16:50:42,969.969 INFO    ] 2026-06-13 16:50:42
[2026-06-13 16:50:43,166.166 INFO    ] 2026-06-13 16:50:43
[2026-06-13 16:50:43,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:43,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:43,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:43,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:43,579.579 INFO    ] time= 13/06/2026 16:50:43
[2026-06-13 16:50:43,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:43,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:43,722.722 INFO    ] No existing commands found in stream
[2026-06-13 16:50:48,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:50:48,750.750 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 16:50:51,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:50:51,561.561 INFO    ] Checking for system updates...
[2026-06-13 16:50:51,583.583 INFO    ] 200
[2026-06-13 16:50:51,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:51,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:51,619.619 INFO    ] No update needed
[2026-06-13 16:50:51,621.621 INFO    ] Checking for camera pi updates...
[2026-06-13 16:50:51,641.641 INFO    ] 200
[2026-06-13 16:50:51,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:50:51,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:50:51,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:50:51,811.811 INFO    ] No camera update needed
[2026-06-13 16:50:51,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:50:51,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:50:51,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:50:51,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:50:53,860.860 INFO    ] ================================================
[2026-06-13 16:50:53,875.875 INFO    ] Launching Daemon at Sat Jun 13 16:50:53 IST 2026
[2026-06-13 16:50:53,886.886 INFO    ] ================================================
[2026-06-13 16:50:54,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:50:54
[2026-06-13 16:50:54,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:50:54,665.665 INFO    ] Initializing speech engine...
[2026-06-13 16:50:54,668.668 INFO    ] 2026-06-13 16:50:54
[2026-06-13 16:50:54,890.890 INFO    ] 2026-06-13 16:50:54
[2026-06-13 16:50:54,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:50:55,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:50:55,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:50:55,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:50:55,293.293 INFO    ] time= 13/06/2026 16:50:55
[2026-06-13 16:50:55,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:50:55,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:50:55,417.417 INFO    ] No existing commands found in stream
[2026-06-13 16:51:00,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:00,429.429 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 16:51:02,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:51:02,395.395 INFO    ] Checking for system updates...
[2026-06-13 16:51:02,418.418 INFO    ] 200
[2026-06-13 16:51:02,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:02,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:51:02,453.453 INFO    ] No update needed
[2026-06-13 16:51:02,454.454 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:02,475.475 INFO    ] 200
[2026-06-13 16:51:02,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:02,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:02,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:02,529.529 INFO    ] No camera update needed
[2026-06-13 16:51:02,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:02,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:02,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:02,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:51:04,580.580 INFO    ] ================================================
[2026-06-13 16:51:04,596.596 INFO    ] Launching Daemon at Sat Jun 13 16:51:04 IST 2026
[2026-06-13 16:51:04,607.607 INFO    ] ================================================
[2026-06-13 16:51:04,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:51:04
[2026-06-13 16:51:05,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:51:05,421.421 INFO    ] Initializing speech engine...
[2026-06-13 16:51:05,432.432 INFO    ] 2026-06-13 16:51:05
[2026-06-13 16:51:05,657.657 INFO    ] 2026-06-13 16:51:05
[2026-06-13 16:51:05,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:51:05,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:51:05,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:51:06,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:51:06,103.103 INFO    ] time= 13/06/2026 16:51:06
[2026-06-13 16:51:06,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:51:06,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:51:06,215.215 INFO    ] No existing commands found in stream
[2026-06-13 16:51:11,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:11,223.223 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 16:51:14,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:51:14,661.661 INFO    ] Checking for system updates...
[2026-06-13 16:51:14,684.684 INFO    ] 200
[2026-06-13 16:51:14,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:14,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:14,723.723 INFO    ] No update needed
[2026-06-13 16:51:14,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:14,749.749 INFO    ] 200
[2026-06-13 16:51:14,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:14,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:14,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:14,820.820 INFO    ] No camera update needed
[2026-06-13 16:51:14,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:14,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:14,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:14,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:51:16,870.870 INFO    ] ================================================
[2026-06-13 16:51:16,887.887 INFO    ] Launching Daemon at Sat Jun 13 16:51:16 IST 2026
[2026-06-13 16:51:16,898.898 INFO    ] ================================================
[2026-06-13 16:51:17,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:51:17
[2026-06-13 16:51:17,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:51:17,801.801 INFO    ] Initializing speech engine...
[2026-06-13 16:51:17,806.806 INFO    ] 2026-06-13 16:51:17
[2026-06-13 16:51:18,019.019 INFO    ] 2026-06-13 16:51:17
[2026-06-13 16:51:18,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:51:18,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:51:18,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:51:18,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:51:18,448.448 INFO    ] time= 13/06/2026 16:51:18
[2026-06-13 16:51:18,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:51:18,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:51:18,546.546 INFO    ] No existing commands found in stream
[2026-06-13 16:51:23,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:23,564.564 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 16:51:26,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:51:26,511.511 INFO    ] Checking for system updates...
[2026-06-13 16:51:26,534.534 INFO    ] 200
[2026-06-13 16:51:26,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:26,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:26,573.573 INFO    ] No update needed
[2026-06-13 16:51:26,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:26,599.599 INFO    ] 200
[2026-06-13 16:51:26,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:26,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:26,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:26,666.666 INFO    ] No camera update needed
[2026-06-13 16:51:26,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:26,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:26,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:26,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:51:28,716.716 INFO    ] ================================================
[2026-06-13 16:51:28,732.732 INFO    ] Launching Daemon at Sat Jun 13 16:51:28 IST 2026
[2026-06-13 16:51:28,744.744 INFO    ] ================================================
[2026-06-13 16:51:29,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:51:29
[2026-06-13 16:51:29,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:51:29,602.602 INFO    ] Initializing speech engine...
[2026-06-13 16:51:29,608.608 INFO    ] 2026-06-13 16:51:29
[2026-06-13 16:51:29,820.820 INFO    ] 2026-06-13 16:51:29
[2026-06-13 16:51:29,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:51:30,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:51:30,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:51:30,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:51:30,247.247 INFO    ] time= 13/06/2026 16:51:30
[2026-06-13 16:51:30,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:51:30,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:51:30,346.346 INFO    ] No existing commands found in stream
[2026-06-13 16:51:35,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:35,364.364 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 16:51:37,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:51:37,525.525 INFO    ] Checking for system updates...
[2026-06-13 16:51:37,547.547 INFO    ] 200
[2026-06-13 16:51:37,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:37,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:37,581.581 INFO    ] No update needed
[2026-06-13 16:51:37,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:37,603.603 INFO    ] 200
[2026-06-13 16:51:37,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:37,631.631 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:37,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:37,676.676 INFO    ] No camera update needed
[2026-06-13 16:51:37,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:37,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:37,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:37,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:51:39,726.726 INFO    ] ================================================
[2026-06-13 16:51:39,742.742 INFO    ] Launching Daemon at Sat Jun 13 16:51:39 IST 2026
[2026-06-13 16:51:39,753.753 INFO    ] ================================================
[2026-06-13 16:51:40,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:51:40
[2026-06-13 16:51:40,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:51:40,552.552 INFO    ] Initializing speech engine...
[2026-06-13 16:51:40,558.558 INFO    ] 2026-06-13 16:51:40
[2026-06-13 16:51:40,764.764 INFO    ] 2026-06-13 16:51:40
[2026-06-13 16:51:40,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:51:40,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:51:40,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:51:41,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:51:41,177.177 INFO    ] time= 13/06/2026 16:51:41
[2026-06-13 16:51:41,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:51:41,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:51:41,290.290 INFO    ] No existing commands found in stream
[2026-06-13 16:51:46,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:46,302.302 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 16:51:49,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:51:49,887.887 INFO    ] Checking for system updates...
[2026-06-13 16:51:49,910.910 INFO    ] 200
[2026-06-13 16:51:49,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:49,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:51:49,946.946 INFO    ] No update needed
[2026-06-13 16:51:49,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:49,970.970 INFO    ] 200
[2026-06-13 16:51:49,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:49,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:50,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:50,034.034 INFO    ] No camera update needed
[2026-06-13 16:51:50,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:50,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:50,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:50,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:51:52,084.084 INFO    ] ================================================
[2026-06-13 16:51:52,099.099 INFO    ] Launching Daemon at Sat Jun 13 16:51:52 IST 2026
[2026-06-13 16:51:52,111.111 INFO    ] ================================================
[2026-06-13 16:51:52,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:51:52
[2026-06-13 16:51:52,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:51:52,979.979 INFO    ] Initializing speech engine...
[2026-06-13 16:51:52,990.990 INFO    ] 2026-06-13 16:51:52
[2026-06-13 16:51:53,199.199 INFO    ] 2026-06-13 16:51:53
[2026-06-13 16:51:53,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:51:53,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:51:53,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:51:53,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:51:53,619.619 INFO    ] time= 13/06/2026 16:51:53
[2026-06-13 16:51:53,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:51:53,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:51:53,715.715 INFO    ] No existing commands found in stream
[2026-06-13 16:51:58,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:51:58,730.730 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 16:51:59,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:51:59,307.307 INFO    ] Checking for system updates...
[2026-06-13 16:51:59,330.330 INFO    ] 200
[2026-06-13 16:51:59,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:59,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:59,367.367 INFO    ] No update needed
[2026-06-13 16:51:59,369.369 INFO    ] Checking for camera pi updates...
[2026-06-13 16:51:59,390.390 INFO    ] 200
[2026-06-13 16:51:59,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:51:59,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:51:59,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:51:59,453.453 INFO    ] No camera update needed
[2026-06-13 16:51:59,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:51:59,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:51:59,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:51:59,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:01,509.509 INFO    ] ================================================
[2026-06-13 16:52:01,533.533 INFO    ] Launching Daemon at Sat Jun 13 16:52:01 IST 2026
[2026-06-13 16:52:01,566.566 INFO    ] ================================================
[2026-06-13 16:52:02,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:52:02
[2026-06-13 16:52:02,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:52:03,225.225 INFO    ] Initializing speech engine...
[2026-06-13 16:52:03,248.248 INFO    ] 2026-06-13 16:52:03
[2026-06-13 16:52:03,512.512 INFO    ] 2026-06-13 16:52:03
[2026-06-13 16:52:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:52:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:52:03,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:52:03,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:52:03,894.894 INFO    ] time= 13/06/2026 16:52:03
[2026-06-13 16:52:03,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:52:03,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:52:04,047.047 INFO    ] No existing commands found in stream
[2026-06-13 16:52:09,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:52:09,087.087 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 16:52:11,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:52:11,436.436 INFO    ] Checking for system updates...
[2026-06-13 16:52:11,458.458 INFO    ] 200
[2026-06-13 16:52:11,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:11,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:11,492.492 INFO    ] No update needed
[2026-06-13 16:52:11,494.494 INFO    ] Checking for camera pi updates...
[2026-06-13 16:52:11,514.514 INFO    ] 200
[2026-06-13 16:52:11,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:11,539.539 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:52:11,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:11,577.577 INFO    ] No camera update needed
[2026-06-13 16:52:11,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:52:11,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:52:11,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:52:11,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:13,626.626 INFO    ] ================================================
[2026-06-13 16:52:13,641.641 INFO    ] Launching Daemon at Sat Jun 13 16:52:13 IST 2026
[2026-06-13 16:52:13,651.651 INFO    ] ================================================
[2026-06-13 16:52:13,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:52:13
[2026-06-13 16:52:14,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:52:14,440.440 INFO    ] Initializing speech engine...
[2026-06-13 16:52:14,445.445 INFO    ] 2026-06-13 16:52:14
[2026-06-13 16:52:14,652.652 INFO    ] 2026-06-13 16:52:14
[2026-06-13 16:52:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:52:14,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:52:14,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:52:15,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:52:15,055.055 INFO    ] time= 13/06/2026 16:52:15
[2026-06-13 16:52:15,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:52:15,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:52:15,170.170 INFO    ] No existing commands found in stream
[2026-06-13 16:52:20,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:52:20,184.184 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 16:52:21,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:52:21,594.594 INFO    ] Checking for system updates...
[2026-06-13 16:52:21,615.615 INFO    ] 200
[2026-06-13 16:52:21,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:21,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:52:21,651.651 INFO    ] No update needed
[2026-06-13 16:52:21,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 16:52:21,673.673 INFO    ] 200
[2026-06-13 16:52:21,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:21,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:52:21,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:21,739.739 INFO    ] No camera update needed
[2026-06-13 16:52:21,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:52:21,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:52:21,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:52:21,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:23,788.788 INFO    ] ================================================
[2026-06-13 16:52:23,804.804 INFO    ] Launching Daemon at Sat Jun 13 16:52:23 IST 2026
[2026-06-13 16:52:23,815.815 INFO    ] ================================================
[2026-06-13 16:52:24,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:52:24
[2026-06-13 16:52:24,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:52:24,698.698 INFO    ] Initializing speech engine...
[2026-06-13 16:52:24,703.703 INFO    ] 2026-06-13 16:52:24
[2026-06-13 16:52:24,912.912 INFO    ] 2026-06-13 16:52:24
[2026-06-13 16:52:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:52:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:52:25,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:52:25,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:52:25,334.334 INFO    ] time= 13/06/2026 16:52:25
[2026-06-13 16:52:25,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:52:25,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:52:25,433.433 INFO    ] No existing commands found in stream
[2026-06-13 16:52:30,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:52:30,445.445 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 16:52:32,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:52:32,536.536 INFO    ] Checking for system updates...
[2026-06-13 16:52:32,575.575 INFO    ] 200
[2026-06-13 16:52:32,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:32,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:32,633.633 INFO    ] No update needed
[2026-06-13 16:52:32,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 16:52:32,656.656 INFO    ] 200
[2026-06-13 16:52:32,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:32,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:52:32,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:52:32,722.722 INFO    ] No camera update needed
[2026-06-13 16:52:32,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:52:32,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:52:32,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:52:32,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:34,763.763 INFO    ] ================================================
[2026-06-13 16:52:34,779.779 INFO    ] Launching Daemon at Sat Jun 13 16:52:34 IST 2026
[2026-06-13 16:52:34,789.789 INFO    ] ================================================
[2026-06-13 16:52:35,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:52:35
[2026-06-13 16:52:35,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:52:35,938.938 INFO    ] Initializing speech engine...
[2026-06-13 16:52:35,947.947 INFO    ] 2026-06-13 16:52:35
[2026-06-13 16:52:36,229.229 INFO    ] 2026-06-13 16:52:36
[2026-06-13 16:52:36,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:52:36,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:52:36,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:52:36,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:52:36,685.685 INFO    ] time= 13/06/2026 16:52:36
[2026-06-13 16:52:36,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:52:36,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:52:36,913.913 INFO    ] No existing commands found in stream
[2026-06-13 16:52:41,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:52:41,945.945 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 16:52:46,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:52:46,032.032 INFO    ] Checking for system updates...
[2026-06-13 16:52:46,053.053 INFO    ] 200
[2026-06-13 16:52:46,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:46,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:46,086.086 INFO    ] No update needed
[2026-06-13 16:52:46,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 16:52:46,108.108 INFO    ] 200
[2026-06-13 16:52:46,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:46,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:52:46,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:52:46,170.170 INFO    ] No camera update needed
[2026-06-13 16:52:46,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:52:46,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:52:46,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:52:46,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:48,219.219 INFO    ] ================================================
[2026-06-13 16:52:48,236.236 INFO    ] Launching Daemon at Sat Jun 13 16:52:48 IST 2026
[2026-06-13 16:52:48,246.246 INFO    ] ================================================
[2026-06-13 16:52:48,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:52:48
[2026-06-13 16:52:48,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:52:49,034.034 INFO    ] Initializing speech engine...
[2026-06-13 16:52:49,048.048 INFO    ] 2026-06-13 16:52:49
[2026-06-13 16:52:49,266.266 INFO    ] 2026-06-13 16:52:49
[2026-06-13 16:52:49,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:52:49,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:52:49,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:52:49,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:52:49,699.699 INFO    ] time= 13/06/2026 16:52:49
[2026-06-13 16:52:49,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:52:49,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:52:49,819.819 INFO    ] No existing commands found in stream
[2026-06-13 16:52:54,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:52:54,832.832 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 16:52:57,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:52:57,495.495 INFO    ] Checking for system updates...
[2026-06-13 16:52:57,515.515 INFO    ] 200
[2026-06-13 16:52:57,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:57,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:52:57,551.551 INFO    ] No update needed
[2026-06-13 16:52:57,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 16:52:57,572.572 INFO    ] 200
[2026-06-13 16:52:57,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:52:57,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:52:57,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:52:57,737.737 INFO    ] No camera update needed
[2026-06-13 16:52:57,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:52:57,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:52:57,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:52:57,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:52:59,784.784 INFO    ] ================================================
[2026-06-13 16:52:59,800.800 INFO    ] Launching Daemon at Sat Jun 13 16:52:59 IST 2026
[2026-06-13 16:52:59,810.810 INFO    ] ================================================
[2026-06-13 16:53:00,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:00
[2026-06-13 16:53:00,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:00,618.618 INFO    ] Initializing speech engine...
[2026-06-13 16:53:00,623.623 INFO    ] 2026-06-13 16:53:00
[2026-06-13 16:53:00,828.828 INFO    ] 2026-06-13 16:53:00
[2026-06-13 16:53:00,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:53:01,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:53:01,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:53:01,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:53:01,244.244 INFO    ] time= 13/06/2026 16:53:01
[2026-06-13 16:53:01,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:53:01,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:53:01,345.345 INFO    ] No existing commands found in stream
[2026-06-13 16:53:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:53:06,374.374 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 16:53:10,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:53:10,204.204 INFO    ] Checking for system updates...
[2026-06-13 16:53:10,225.225 INFO    ] 200
[2026-06-13 16:53:10,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:10,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:10,258.258 INFO    ] No update needed
[2026-06-13 16:53:10,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 16:53:10,279.279 INFO    ] 200
[2026-06-13 16:53:10,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:10,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:53:10,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:10,340.340 INFO    ] No camera update needed
[2026-06-13 16:53:10,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:53:10,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:53:10,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:53:10,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:53:12,374.374 INFO    ] ================================================
[2026-06-13 16:53:12,383.383 INFO    ] Launching Daemon at Sat Jun 13 16:53:12 IST 2026
[2026-06-13 16:53:12,390.390 INFO    ] ================================================
[2026-06-13 16:53:12,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:12
[2026-06-13 16:53:13,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:13,264.264 INFO    ] Initializing speech engine...
[2026-06-13 16:53:13,274.274 INFO    ] 2026-06-13 16:53:13
[2026-06-13 16:53:13,497.497 INFO    ] 2026-06-13 16:53:13
[2026-06-13 16:53:13,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:53:13,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:53:13,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:53:13,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:53:13,900.900 INFO    ] time= 13/06/2026 16:53:13
[2026-06-13 16:53:13,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:53:13,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:53:14,024.024 INFO    ] No existing commands found in stream
[2026-06-13 16:53:19,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:53:19,037.037 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 16:53:23,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:53:23,169.169 INFO    ] Checking for system updates...
[2026-06-13 16:53:23,190.190 INFO    ] 200
[2026-06-13 16:53:23,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:23,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:23,226.226 INFO    ] No update needed
[2026-06-13 16:53:23,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 16:53:23,253.253 INFO    ] 200
[2026-06-13 16:53:23,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:23,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:53:23,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:23,323.323 INFO    ] No camera update needed
[2026-06-13 16:53:23,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:53:23,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:53:23,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:53:23,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:53:25,372.372 INFO    ] ================================================
[2026-06-13 16:53:25,387.387 INFO    ] Launching Daemon at Sat Jun 13 16:53:25 IST 2026
[2026-06-13 16:53:25,398.398 INFO    ] ================================================
[2026-06-13 16:53:25,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:25
[2026-06-13 16:53:26,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:26,234.234 INFO    ] Initializing speech engine...
[2026-06-13 16:53:26,239.239 INFO    ] 2026-06-13 16:53:26
[2026-06-13 16:53:26,446.446 INFO    ] 2026-06-13 16:53:26
[2026-06-13 16:53:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:53:26,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:53:26,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:53:26,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:53:26,863.863 INFO    ] time= 13/06/2026 16:53:26
[2026-06-13 16:53:26,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:53:26,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:53:26,961.961 INFO    ] No existing commands found in stream
[2026-06-13 16:53:31,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:53:31,973.973 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 16:53:34,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:53:34,542.542 INFO    ] Checking for system updates...
[2026-06-13 16:53:34,580.580 INFO    ] 200
[2026-06-13 16:53:34,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:34,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:34,642.642 INFO    ] No update needed
[2026-06-13 16:53:34,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 16:53:34,680.680 INFO    ] 200
[2026-06-13 16:53:34,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:34,726.726 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:53:34,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:53:34,774.774 INFO    ] No camera update needed
[2026-06-13 16:53:34,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:53:34,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:53:34,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:53:34,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:53:36,833.833 INFO    ] ================================================
[2026-06-13 16:53:36,848.848 INFO    ] Launching Daemon at Sat Jun 13 16:53:36 IST 2026
[2026-06-13 16:53:36,859.859 INFO    ] ================================================
[2026-06-13 16:53:37,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:37
[2026-06-13 16:53:37,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:37,682.682 INFO    ] Initializing speech engine...
[2026-06-13 16:53:37,697.697 INFO    ] 2026-06-13 16:53:37
[2026-06-13 16:53:37,908.908 INFO    ] 2026-06-13 16:53:37
[2026-06-13 16:53:37,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:53:38,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:53:38,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:53:38,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:53:38,326.326 INFO    ] time= 13/06/2026 16:53:38
[2026-06-13 16:53:38,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:53:38,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:53:38,426.426 INFO    ] No existing commands found in stream
[2026-06-13 16:53:43,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:53:43,441.441 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 16:53:44,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:53:44,120.120 INFO    ] Checking for system updates...
[2026-06-13 16:53:44,141.141 INFO    ] 200
[2026-06-13 16:53:44,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:44,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:44,175.175 INFO    ] No update needed
[2026-06-13 16:53:44,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 16:53:44,197.197 INFO    ] 200
[2026-06-13 16:53:44,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:44,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:53:44,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:53:44,260.260 INFO    ] No camera update needed
[2026-06-13 16:53:44,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:53:44,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:53:44,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:53:44,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:53:46,307.307 INFO    ] ================================================
[2026-06-13 16:53:46,322.322 INFO    ] Launching Daemon at Sat Jun 13 16:53:46 IST 2026
[2026-06-13 16:53:46,333.333 INFO    ] ================================================
[2026-06-13 16:53:46,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:46
[2026-06-13 16:53:47,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:47,142.142 INFO    ] Initializing speech engine...
[2026-06-13 16:53:47,152.152 INFO    ] 2026-06-13 16:53:47
[2026-06-13 16:53:47,357.357 INFO    ] 2026-06-13 16:53:47
[2026-06-13 16:53:47,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:53:47,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:53:47,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:53:47,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:53:47,761.761 INFO    ] time= 13/06/2026 16:53:47
[2026-06-13 16:53:47,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:53:47,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:53:47,871.871 INFO    ] No existing commands found in stream
[2026-06-13 16:53:52,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:53:52,882.882 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 16:53:56,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:53:56,624.624 INFO    ] Checking for system updates...
[2026-06-13 16:53:56,644.644 INFO    ] 200
[2026-06-13 16:53:56,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:56,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:53:56,680.680 INFO    ] No update needed
[2026-06-13 16:53:56,681.681 INFO    ] Checking for camera pi updates...
[2026-06-13 16:53:56,702.702 INFO    ] 200
[2026-06-13 16:53:56,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:53:56,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:53:56,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:53:56,777.777 INFO    ] No camera update needed
[2026-06-13 16:53:56,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:53:56,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:53:56,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:53:56,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:53:58,823.823 INFO    ] ================================================
[2026-06-13 16:53:58,838.838 INFO    ] Launching Daemon at Sat Jun 13 16:53:58 IST 2026
[2026-06-13 16:53:58,849.849 INFO    ] ================================================
[2026-06-13 16:53:59,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:53:59
[2026-06-13 16:53:59,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:53:59,881.881 INFO    ] Initializing speech engine...
[2026-06-13 16:53:59,895.895 INFO    ] 2026-06-13 16:53:59
[2026-06-13 16:54:00,165.165 INFO    ] 2026-06-13 16:54:00
[2026-06-13 16:54:00,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:00,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:00,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:00,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:00,610.610 INFO    ] time= 13/06/2026 16:54:00
[2026-06-13 16:54:00,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:00,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:00,773.773 INFO    ] No existing commands found in stream
[2026-06-13 16:54:05,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:54:05,783.783 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 16:54:08,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:54:08,583.583 INFO    ] Checking for system updates...
[2026-06-13 16:54:08,622.622 INFO    ] 200
[2026-06-13 16:54:08,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:08,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:54:08,685.685 INFO    ] No update needed
[2026-06-13 16:54:08,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 16:54:08,730.730 INFO    ] 200
[2026-06-13 16:54:08,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:08,777.777 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:54:08,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:54:08,826.826 INFO    ] No camera update needed
[2026-06-13 16:54:08,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:54:08,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:54:08,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:54:08,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:54:10,879.879 INFO    ] ================================================
[2026-06-13 16:54:10,894.894 INFO    ] Launching Daemon at Sat Jun 13 16:54:10 IST 2026
[2026-06-13 16:54:10,905.905 INFO    ] ================================================
[2026-06-13 16:54:11,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:54:11
[2026-06-13 16:54:11,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:54:11,733.733 INFO    ] Initializing speech engine...
[2026-06-13 16:54:11,747.747 INFO    ] 2026-06-13 16:54:11
[2026-06-13 16:54:11,960.960 INFO    ] 2026-06-13 16:54:11
[2026-06-13 16:54:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:12,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:12,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:12,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:12,214.214 INFO    ] time= 13/06/2026 16:54:12
[2026-06-13 16:54:12,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:12,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:12,302.302 INFO    ] No existing commands found in stream
[2026-06-13 16:54:17,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:54:17,339.339 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 16:54:18,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:54:18,420.420 INFO    ] Checking for system updates...
[2026-06-13 16:54:18,441.441 INFO    ] 200
[2026-06-13 16:54:18,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:18,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:18,484.484 INFO    ] No update needed
[2026-06-13 16:54:18,485.485 INFO    ] Checking for camera pi updates...
[2026-06-13 16:54:18,505.505 INFO    ] 200
[2026-06-13 16:54:18,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:18,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:54:18,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:18,569.569 INFO    ] No camera update needed
[2026-06-13 16:54:18,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:54:18,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:54:18,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:54:18,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:54:20,620.620 INFO    ] ================================================
[2026-06-13 16:54:20,635.635 INFO    ] Launching Daemon at Sat Jun 13 16:54:20 IST 2026
[2026-06-13 16:54:20,646.646 INFO    ] ================================================
[2026-06-13 16:54:21,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:54:21
[2026-06-13 16:54:21,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:54:21,538.538 INFO    ] Initializing speech engine...
[2026-06-13 16:54:21,544.544 INFO    ] 2026-06-13 16:54:21
[2026-06-13 16:54:21,754.754 INFO    ] 2026-06-13 16:54:21
[2026-06-13 16:54:21,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:21,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:22,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:22,174.174 INFO    ] time= 13/06/2026 16:54:22
[2026-06-13 16:54:22,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:22,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:22,385.385 INFO    ] No existing commands found in stream
[2026-06-13 16:54:27,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:54:27,400.400 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 16:54:30,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:54:30,182.182 INFO    ] Checking for system updates...
[2026-06-13 16:54:30,208.208 INFO    ] 200
[2026-06-13 16:54:30,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:30,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:54:30,250.250 INFO    ] No update needed
[2026-06-13 16:54:30,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 16:54:30,274.274 INFO    ] 200
[2026-06-13 16:54:30,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:30,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:54:30,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:54:30,343.343 INFO    ] No camera update needed
[2026-06-13 16:54:30,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:54:30,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:54:30,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:54:30,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:54:32,382.382 INFO    ] ================================================
[2026-06-13 16:54:32,390.390 INFO    ] Launching Daemon at Sat Jun 13 16:54:32 IST 2026
[2026-06-13 16:54:32,396.396 INFO    ] ================================================
[2026-06-13 16:54:32,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:54:32
[2026-06-13 16:54:33,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:54:33,196.196 INFO    ] Initializing speech engine...
[2026-06-13 16:54:33,207.207 INFO    ] 2026-06-13 16:54:33
[2026-06-13 16:54:33,416.416 INFO    ] 2026-06-13 16:54:33
[2026-06-13 16:54:33,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:33,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:33,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:33,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:33,842.842 INFO    ] time= 13/06/2026 16:54:33
[2026-06-13 16:54:33,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:33,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:33,964.964 INFO    ] No existing commands found in stream
[2026-06-13 16:54:38,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:54:38,989.989 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 16:54:42,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:54:42,879.879 INFO    ] Checking for system updates...
[2026-06-13 16:54:42,900.900 INFO    ] 200
[2026-06-13 16:54:42,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:42,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:42,933.933 INFO    ] No update needed
[2026-06-13 16:54:42,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 16:54:42,954.954 INFO    ] 200
[2026-06-13 16:54:42,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:42,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:54:43,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:43,015.015 INFO    ] No camera update needed
[2026-06-13 16:54:43,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:54:43,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:54:43,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:54:43,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:54:45,055.055 INFO    ] ================================================
[2026-06-13 16:54:45,064.064 INFO    ] Launching Daemon at Sat Jun 13 16:54:45 IST 2026
[2026-06-13 16:54:45,071.071 INFO    ] ================================================
[2026-06-13 16:54:45,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:54:45
[2026-06-13 16:54:45,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:54:45,892.892 INFO    ] Initializing speech engine...
[2026-06-13 16:54:45,900.900 INFO    ] 2026-06-13 16:54:45
[2026-06-13 16:54:46,103.103 INFO    ] 2026-06-13 16:54:46
[2026-06-13 16:54:46,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:46,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:46,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:46,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:46,403.403 INFO    ] time= 13/06/2026 16:54:46
[2026-06-13 16:54:46,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:46,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:46,537.537 INFO    ] No existing commands found in stream
[2026-06-13 16:54:51,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:54:51,563.563 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 16:54:52,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:54:52,893.893 INFO    ] Checking for system updates...
[2026-06-13 16:54:52,914.914 INFO    ] 200
[2026-06-13 16:54:52,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:52,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:52,949.949 INFO    ] No update needed
[2026-06-13 16:54:52,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 16:54:52,970.970 INFO    ] 200
[2026-06-13 16:54:52,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:54:52,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:54:53,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:54:53,035.035 INFO    ] No camera update needed
[2026-06-13 16:54:53,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:54:53,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:54:53,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:54:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:54:55,083.083 INFO    ] ================================================
[2026-06-13 16:54:55,098.098 INFO    ] Launching Daemon at Sat Jun 13 16:54:55 IST 2026
[2026-06-13 16:54:55,109.109 INFO    ] ================================================
[2026-06-13 16:54:55,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:54:55
[2026-06-13 16:54:55,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:54:56,018.018 INFO    ] Initializing speech engine...
[2026-06-13 16:54:56,028.028 INFO    ] 2026-06-13 16:54:56
[2026-06-13 16:54:56,284.284 INFO    ] 2026-06-13 16:54:56
[2026-06-13 16:54:56,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:54:56,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:54:56,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:54:56,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:54:56,629.629 INFO    ] time= 13/06/2026 16:54:56
[2026-06-13 16:54:56,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:54:56,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:54:56,742.742 INFO    ] No existing commands found in stream
[2026-06-13 16:55:01,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:01,755.755 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 16:55:05,413.413 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:55:05,415.415 INFO    ] Checking for system updates...
[2026-06-13 16:55:05,436.436 INFO    ] 200
[2026-06-13 16:55:05,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:05,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:05,472.472 INFO    ] No update needed
[2026-06-13 16:55:05,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:05,492.492 INFO    ] 200
[2026-06-13 16:55:05,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:05,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:05,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:05,559.559 INFO    ] No camera update needed
[2026-06-13 16:55:05,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:05,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:05,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:05,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:55:07,606.606 INFO    ] ================================================
[2026-06-13 16:55:07,622.622 INFO    ] Launching Daemon at Sat Jun 13 16:55:07 IST 2026
[2026-06-13 16:55:07,632.632 INFO    ] ================================================
[2026-06-13 16:55:07,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:55:07
[2026-06-13 16:55:08,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:55:08,403.403 INFO    ] Initializing speech engine...
[2026-06-13 16:55:08,407.407 INFO    ] 2026-06-13 16:55:08
[2026-06-13 16:55:08,628.628 INFO    ] 2026-06-13 16:55:08
[2026-06-13 16:55:08,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:55:08,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:55:08,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:55:08,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:55:09,042.042 INFO    ] time= 13/06/2026 16:55:08
[2026-06-13 16:55:09,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:55:09,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:55:09,155.155 INFO    ] No existing commands found in stream
[2026-06-13 16:55:14,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:14,167.167 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 16:55:15,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:55:15,805.805 INFO    ] Checking for system updates...
[2026-06-13 16:55:15,827.827 INFO    ] 200
[2026-06-13 16:55:15,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:15,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:15,861.861 INFO    ] No update needed
[2026-06-13 16:55:15,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:15,882.882 INFO    ] 200
[2026-06-13 16:55:15,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:15,907.907 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:15,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:15,948.948 INFO    ] No camera update needed
[2026-06-13 16:55:15,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:15,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:15,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:15,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:55:18,997.997 INFO    ] ================================================
[2026-06-13 16:55:18,013.013 INFO    ] Launching Daemon at Sat Jun 13 16:55:18 IST 2026
[2026-06-13 16:55:18,025.025 INFO    ] ================================================
[2026-06-13 16:55:18,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:55:18
[2026-06-13 16:55:18,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:55:18,845.845 INFO    ] Initializing speech engine...
[2026-06-13 16:55:18,855.855 INFO    ] 2026-06-13 16:55:18
[2026-06-13 16:55:19,060.060 INFO    ] 2026-06-13 16:55:19
[2026-06-13 16:55:19,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:55:19,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:55:19,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:55:19,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:55:19,460.460 INFO    ] time= 13/06/2026 16:55:19
[2026-06-13 16:55:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:55:19,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:55:19,574.574 INFO    ] No existing commands found in stream
[2026-06-13 16:55:24,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:24,588.588 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 16:55:27,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:55:27,069.069 INFO    ] Checking for system updates...
[2026-06-13 16:55:27,091.091 INFO    ] 200
[2026-06-13 16:55:27,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:27,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:27,127.127 INFO    ] No update needed
[2026-06-13 16:55:27,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:27,148.148 INFO    ] 200
[2026-06-13 16:55:27,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:27,173.173 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:27,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:27,211.211 INFO    ] No camera update needed
[2026-06-13 16:55:27,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:27,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:27,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:27,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:55:29,259.259 INFO    ] ================================================
[2026-06-13 16:55:29,275.275 INFO    ] Launching Daemon at Sat Jun 13 16:55:29 IST 2026
[2026-06-13 16:55:29,287.287 INFO    ] ================================================
[2026-06-13 16:55:29,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:55:29
[2026-06-13 16:55:30,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:55:30,195.195 INFO    ] Initializing speech engine...
[2026-06-13 16:55:30,200.200 INFO    ] 2026-06-13 16:55:30
[2026-06-13 16:55:30,409.409 INFO    ] 2026-06-13 16:55:30
[2026-06-13 16:55:30,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:55:30,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:55:30,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:55:30,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:55:30,819.819 INFO    ] time= 13/06/2026 16:55:30
[2026-06-13 16:55:30,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:55:30,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:55:30,937.937 INFO    ] No existing commands found in stream
[2026-06-13 16:55:35,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:35,951.951 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 16:55:36,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:55:36,801.801 INFO    ] Checking for system updates...
[2026-06-13 16:55:36,821.821 INFO    ] 200
[2026-06-13 16:55:36,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:36,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:36,855.855 INFO    ] No update needed
[2026-06-13 16:55:36,856.856 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:36,877.877 INFO    ] 200
[2026-06-13 16:55:36,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:36,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:36,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:36,939.939 INFO    ] No camera update needed
[2026-06-13 16:55:36,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:36,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:36,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:36,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:55:38,986.986 INFO    ] ================================================
[2026-06-13 16:55:39,001.001 INFO    ] Launching Daemon at Sat Jun 13 16:55:38 IST 2026
[2026-06-13 16:55:39,013.013 INFO    ] ================================================
[2026-06-13 16:55:39,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:55:39
[2026-06-13 16:55:39,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:55:39,822.822 INFO    ] Initializing speech engine...
[2026-06-13 16:55:39,827.827 INFO    ] 2026-06-13 16:55:39
[2026-06-13 16:55:40,033.033 INFO    ] 2026-06-13 16:55:40
[2026-06-13 16:55:40,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:55:40,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:55:40,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:55:40,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:55:40,434.434 INFO    ] time= 13/06/2026 16:55:40
[2026-06-13 16:55:40,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:55:40,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:55:40,556.556 INFO    ] No existing commands found in stream
[2026-06-13 16:55:45,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:45,570.570 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 16:55:47,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:55:47,099.099 INFO    ] Checking for system updates...
[2026-06-13 16:55:47,120.120 INFO    ] 200
[2026-06-13 16:55:47,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:47,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:47,157.157 INFO    ] No update needed
[2026-06-13 16:55:47,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:47,178.178 INFO    ] 200
[2026-06-13 16:55:47,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:47,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:47,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:47,247.247 INFO    ] No camera update needed
[2026-06-13 16:55:47,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:47,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:47,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:47,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:55:49,294.294 INFO    ] ================================================
[2026-06-13 16:55:49,310.310 INFO    ] Launching Daemon at Sat Jun 13 16:55:49 IST 2026
[2026-06-13 16:55:49,321.321 INFO    ] ================================================
[2026-06-13 16:55:49,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:55:49
[2026-06-13 16:55:49,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:55:50,130.130 INFO    ] Initializing speech engine...
[2026-06-13 16:55:50,135.135 INFO    ] 2026-06-13 16:55:50
[2026-06-13 16:55:50,366.366 INFO    ] 2026-06-13 16:55:50
[2026-06-13 16:55:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:55:50,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:55:50,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:55:50,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:55:50,748.748 INFO    ] time= 13/06/2026 16:55:50
[2026-06-13 16:55:50,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:55:50,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:55:50,932.932 INFO    ] No existing commands found in stream
[2026-06-13 16:55:55,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:55:55,945.945 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 16:55:57,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:55:57,979.979 INFO    ] Checking for system updates...
[2026-06-13 16:55:58,001.001 INFO    ] 200
[2026-06-13 16:55:58,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:58,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:55:58,036.036 INFO    ] No update needed
[2026-06-13 16:55:58,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 16:55:58,058.058 INFO    ] 200
[2026-06-13 16:55:58,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:55:58,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:55:58,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:55:58,122.122 INFO    ] No camera update needed
[2026-06-13 16:55:58,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:55:58,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:55:58,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:55:58,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:00,169.169 INFO    ] ================================================
[2026-06-13 16:56:00,184.184 INFO    ] Launching Daemon at Sat Jun 13 16:56:00 IST 2026
[2026-06-13 16:56:00,195.195 INFO    ] ================================================
[2026-06-13 16:56:00,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:00
[2026-06-13 16:56:00,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:00,990.990 INFO    ] Initializing speech engine...
[2026-06-13 16:56:00,995.995 INFO    ] 2026-06-13 16:56:00
[2026-06-13 16:56:01,199.199 INFO    ] 2026-06-13 16:56:01
[2026-06-13 16:56:01,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:01,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:01,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:01,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:01,577.577 INFO    ] time= 13/06/2026 16:56:01
[2026-06-13 16:56:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:01,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:01,661.661 INFO    ] No existing commands found in stream
[2026-06-13 16:56:06,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:06,676.676 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 16:56:07,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:56:07,732.732 INFO    ] Checking for system updates...
[2026-06-13 16:56:07,755.755 INFO    ] 200
[2026-06-13 16:56:07,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:07,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:56:07,791.791 INFO    ] No update needed
[2026-06-13 16:56:07,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 16:56:07,812.812 INFO    ] 200
[2026-06-13 16:56:07,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:07,839.839 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:56:07,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:56:07,886.886 INFO    ] No camera update needed
[2026-06-13 16:56:07,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:56:07,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:56:07,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:56:07,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:09,935.935 INFO    ] ================================================
[2026-06-13 16:56:09,951.951 INFO    ] Launching Daemon at Sat Jun 13 16:56:09 IST 2026
[2026-06-13 16:56:09,961.961 INFO    ] ================================================
[2026-06-13 16:56:10,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:10
[2026-06-13 16:56:10,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:10,817.817 INFO    ] Initializing speech engine...
[2026-06-13 16:56:10,823.823 INFO    ] 2026-06-13 16:56:10
[2026-06-13 16:56:11,031.031 INFO    ] 2026-06-13 16:56:11
[2026-06-13 16:56:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:11,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:11,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:11,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:11,442.442 INFO    ] time= 13/06/2026 16:56:11
[2026-06-13 16:56:11,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:11,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:11,547.547 INFO    ] No existing commands found in stream
[2026-06-13 16:56:16,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:16,561.561 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 16:56:20,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:56:20,049.049 INFO    ] Checking for system updates...
[2026-06-13 16:56:20,072.072 INFO    ] 200
[2026-06-13 16:56:20,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:20,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:56:20,109.109 INFO    ] No update needed
[2026-06-13 16:56:20,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 16:56:20,132.132 INFO    ] 200
[2026-06-13 16:56:20,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:20,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:56:20,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:56:20,198.198 INFO    ] No camera update needed
[2026-06-13 16:56:20,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:56:20,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:56:20,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:56:20,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:22,245.245 INFO    ] ================================================
[2026-06-13 16:56:22,260.260 INFO    ] Launching Daemon at Sat Jun 13 16:56:22 IST 2026
[2026-06-13 16:56:22,271.271 INFO    ] ================================================
[2026-06-13 16:56:22,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:22
[2026-06-13 16:56:22,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:23,135.135 INFO    ] Initializing speech engine...
[2026-06-13 16:56:23,140.140 INFO    ] 2026-06-13 16:56:23
[2026-06-13 16:56:23,355.355 INFO    ] 2026-06-13 16:56:23
[2026-06-13 16:56:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:23,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:23,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:23,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:23,767.767 INFO    ] time= 13/06/2026 16:56:23
[2026-06-13 16:56:23,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:23,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:23,877.877 INFO    ] No existing commands found in stream
[2026-06-13 16:56:28,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:28,892.892 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 16:56:30,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:56:30,142.142 INFO    ] Checking for system updates...
[2026-06-13 16:56:30,164.164 INFO    ] 200
[2026-06-13 16:56:30,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:30,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:56:30,200.200 INFO    ] No update needed
[2026-06-13 16:56:30,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 16:56:30,221.221 INFO    ] 200
[2026-06-13 16:56:30,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:30,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:56:30,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:56:30,290.290 INFO    ] No camera update needed
[2026-06-13 16:56:30,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:56:30,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:56:30,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:56:30,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:32,341.341 INFO    ] ================================================
[2026-06-13 16:56:32,357.357 INFO    ] Launching Daemon at Sat Jun 13 16:56:32 IST 2026
[2026-06-13 16:56:32,367.367 INFO    ] ================================================
[2026-06-13 16:56:32,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:32
[2026-06-13 16:56:33,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:33,189.189 INFO    ] Initializing speech engine...
[2026-06-13 16:56:33,197.197 INFO    ] 2026-06-13 16:56:33
[2026-06-13 16:56:33,405.405 INFO    ] 2026-06-13 16:56:33
[2026-06-13 16:56:33,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:33,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:33,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:33,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:33,824.824 INFO    ] time= 13/06/2026 16:56:33
[2026-06-13 16:56:33,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:33,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:33,926.926 INFO    ] No existing commands found in stream
[2026-06-13 16:56:38,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:38,937.937 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 16:56:40,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:56:40,548.548 INFO    ] Checking for system updates...
[2026-06-13 16:56:40,569.569 INFO    ] 200
[2026-06-13 16:56:40,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:40,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:56:40,605.605 INFO    ] No update needed
[2026-06-13 16:56:40,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 16:56:40,628.628 INFO    ] 200
[2026-06-13 16:56:40,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:40,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:56:40,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:56:40,689.689 INFO    ] No camera update needed
[2026-06-13 16:56:40,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:56:40,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:56:40,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:56:40,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:42,736.736 INFO    ] ================================================
[2026-06-13 16:56:42,752.752 INFO    ] Launching Daemon at Sat Jun 13 16:56:42 IST 2026
[2026-06-13 16:56:42,763.763 INFO    ] ================================================
[2026-06-13 16:56:43,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:43
[2026-06-13 16:56:43,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:43,627.627 INFO    ] Initializing speech engine...
[2026-06-13 16:56:43,638.638 INFO    ] 2026-06-13 16:56:43
[2026-06-13 16:56:43,849.849 INFO    ] 2026-06-13 16:56:43
[2026-06-13 16:56:43,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:44,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:44,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:44,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:44,155.155 INFO    ] time= 13/06/2026 16:56:44
[2026-06-13 16:56:44,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:44,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:44,310.310 INFO    ] No existing commands found in stream
[2026-06-13 16:56:49,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:49,323.323 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 16:56:50,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:56:50,224.224 INFO    ] Checking for system updates...
[2026-06-13 16:56:50,245.245 INFO    ] 200
[2026-06-13 16:56:50,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:50,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:56:50,282.282 INFO    ] No update needed
[2026-06-13 16:56:50,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 16:56:50,304.304 INFO    ] 200
[2026-06-13 16:56:50,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:56:50,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:56:50,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:56:50,369.369 INFO    ] No camera update needed
[2026-06-13 16:56:50,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:56:50,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:56:50,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:56:50,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:56:52,416.416 INFO    ] ================================================
[2026-06-13 16:56:52,433.433 INFO    ] Launching Daemon at Sat Jun 13 16:56:52 IST 2026
[2026-06-13 16:56:52,443.443 INFO    ] ================================================
[2026-06-13 16:56:52,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:56:52
[2026-06-13 16:56:53,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:56:53,245.245 INFO    ] Initializing speech engine...
[2026-06-13 16:56:53,250.250 INFO    ] 2026-06-13 16:56:53
[2026-06-13 16:56:53,455.455 INFO    ] 2026-06-13 16:56:53
[2026-06-13 16:56:53,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:56:53,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:56:53,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:56:53,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:56:53,831.831 INFO    ] time= 13/06/2026 16:56:53
[2026-06-13 16:56:53,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:56:53,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:56:53,959.959 INFO    ] No existing commands found in stream
[2026-06-13 16:56:58,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:56:58,986.986 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 16:57:02,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:57:02,985.985 INFO    ] Checking for system updates...
[2026-06-13 16:57:03,007.007 INFO    ] 200
[2026-06-13 16:57:03,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:03,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:57:03,040.040 INFO    ] No update needed
[2026-06-13 16:57:03,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 16:57:03,061.061 INFO    ] 200
[2026-06-13 16:57:03,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:03,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:57:03,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:57:03,109.109 INFO    ] No camera update needed
[2026-06-13 16:57:03,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:57:03,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:57:03,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:57:03,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:57:05,159.159 INFO    ] ================================================
[2026-06-13 16:57:05,175.175 INFO    ] Launching Daemon at Sat Jun 13 16:57:05 IST 2026
[2026-06-13 16:57:05,185.185 INFO    ] ================================================
[2026-06-13 16:57:05,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:57:05
[2026-06-13 16:57:05,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:57:06,045.045 INFO    ] Initializing speech engine...
[2026-06-13 16:57:06,065.065 INFO    ] 2026-06-13 16:57:06
[2026-06-13 16:57:06,305.305 INFO    ] 2026-06-13 16:57:06
[2026-06-13 16:57:06,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:57:06,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:57:06,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:57:06,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:57:06,549.549 INFO    ] time= 13/06/2026 16:57:06
[2026-06-13 16:57:06,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:57:06,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:57:06,650.650 INFO    ] No existing commands found in stream
[2026-06-13 16:57:11,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:57:11,688.688 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 16:57:15,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:57:15,462.462 INFO    ] Checking for system updates...
[2026-06-13 16:57:15,482.482 INFO    ] 200
[2026-06-13 16:57:15,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:15,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:15,518.518 INFO    ] No update needed
[2026-06-13 16:57:15,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 16:57:15,541.541 INFO    ] 200
[2026-06-13 16:57:15,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:15,567.567 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:57:15,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:15,707.707 INFO    ] No camera update needed
[2026-06-13 16:57:15,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:57:15,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:57:15,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:57:15,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:57:17,755.755 INFO    ] ================================================
[2026-06-13 16:57:17,772.772 INFO    ] Launching Daemon at Sat Jun 13 16:57:17 IST 2026
[2026-06-13 16:57:17,783.783 INFO    ] ================================================
[2026-06-13 16:57:18,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:57:18
[2026-06-13 16:57:18,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:57:18,577.577 INFO    ] Initializing speech engine...
[2026-06-13 16:57:18,585.585 INFO    ] 2026-06-13 16:57:18
[2026-06-13 16:57:18,790.790 INFO    ] 2026-06-13 16:57:18
[2026-06-13 16:57:18,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:57:19,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:57:19,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:57:19,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:57:19,203.203 INFO    ] time= 13/06/2026 16:57:19
[2026-06-13 16:57:19,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:57:19,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:57:19,303.303 INFO    ] No existing commands found in stream
[2026-06-13 16:57:24,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:57:24,320.320 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 16:57:25,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:57:25,182.182 INFO    ] Checking for system updates...
[2026-06-13 16:57:25,205.205 INFO    ] 200
[2026-06-13 16:57:25,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:25,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:25,241.241 INFO    ] No update needed
[2026-06-13 16:57:25,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 16:57:25,263.263 INFO    ] 200
[2026-06-13 16:57:25,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:25,288.288 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:57:25,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:25,334.334 INFO    ] No camera update needed
[2026-06-13 16:57:25,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:57:25,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:57:25,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:57:25,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:57:27,383.383 INFO    ] ================================================
[2026-06-13 16:57:27,399.399 INFO    ] Launching Daemon at Sat Jun 13 16:57:27 IST 2026
[2026-06-13 16:57:27,411.411 INFO    ] ================================================
[2026-06-13 16:57:27,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:57:27
[2026-06-13 16:57:28,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:57:28,205.205 INFO    ] Initializing speech engine...
[2026-06-13 16:57:28,210.210 INFO    ] 2026-06-13 16:57:28
[2026-06-13 16:57:28,412.412 INFO    ] 2026-06-13 16:57:28
[2026-06-13 16:57:28,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:57:28,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:57:28,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:57:28,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:57:28,824.824 INFO    ] time= 13/06/2026 16:57:28
[2026-06-13 16:57:28,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:57:28,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:57:28,923.923 INFO    ] No existing commands found in stream
[2026-06-13 16:57:33,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:57:33,935.935 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 16:57:37,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:57:37,525.525 INFO    ] Checking for system updates...
[2026-06-13 16:57:37,546.546 INFO    ] 200
[2026-06-13 16:57:37,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:37,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:57:37,579.579 INFO    ] No update needed
[2026-06-13 16:57:37,580.580 INFO    ] Checking for camera pi updates...
[2026-06-13 16:57:37,601.601 INFO    ] 200
[2026-06-13 16:57:37,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:37,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:57:37,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:57:37,663.663 INFO    ] No camera update needed
[2026-06-13 16:57:37,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:57:37,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:57:37,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:57:37,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:57:39,713.713 INFO    ] ================================================
[2026-06-13 16:57:39,729.729 INFO    ] Launching Daemon at Sat Jun 13 16:57:39 IST 2026
[2026-06-13 16:57:39,740.740 INFO    ] ================================================
[2026-06-13 16:57:40,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:57:40
[2026-06-13 16:57:40,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:57:40,546.546 INFO    ] Initializing speech engine...
[2026-06-13 16:57:40,556.556 INFO    ] 2026-06-13 16:57:40
[2026-06-13 16:57:40,760.760 INFO    ] 2026-06-13 16:57:40
[2026-06-13 16:57:40,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:57:40,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:57:40,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:57:41,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:57:41,170.170 INFO    ] time= 13/06/2026 16:57:41
[2026-06-13 16:57:41,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:57:41,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:57:41,275.275 INFO    ] No existing commands found in stream
[2026-06-13 16:57:46,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:57:46,292.292 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 16:57:50,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:57:50,885.885 INFO    ] Checking for system updates...
[2026-06-13 16:57:50,921.921 INFO    ] 200
[2026-06-13 16:57:50,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:50,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:50,980.980 INFO    ] No update needed
[2026-06-13 16:57:50,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 16:57:51,022.022 INFO    ] 200
[2026-06-13 16:57:51,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:57:51,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:57:51,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:57:51,112.112 INFO    ] No camera update needed
[2026-06-13 16:57:51,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:57:51,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:57:51,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:57:51,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:57:53,159.159 INFO    ] ================================================
[2026-06-13 16:57:53,174.174 INFO    ] Launching Daemon at Sat Jun 13 16:57:53 IST 2026
[2026-06-13 16:57:53,186.186 INFO    ] ================================================
[2026-06-13 16:57:53,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:57:53
[2026-06-13 16:57:53,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:57:54,010.010 INFO    ] Initializing speech engine...
[2026-06-13 16:57:54,019.019 INFO    ] 2026-06-13 16:57:54
[2026-06-13 16:57:54,225.225 INFO    ] 2026-06-13 16:57:54
[2026-06-13 16:57:54,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:57:54,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:57:54,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:57:54,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:57:54,642.642 INFO    ] time= 13/06/2026 16:57:54
[2026-06-13 16:57:54,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:57:54,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:57:54,743.743 INFO    ] No existing commands found in stream
[2026-06-13 16:57:59,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:57:59,760.760 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 16:58:00,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:58:00,906.906 INFO    ] Checking for system updates...
[2026-06-13 16:58:00,927.927 INFO    ] 200
[2026-06-13 16:58:00,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:00,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:00,967.967 INFO    ] No update needed
[2026-06-13 16:58:00,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 16:58:00,990.990 INFO    ] 200
[2026-06-13 16:58:00,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:01,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:58:01,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:01,061.061 INFO    ] No camera update needed
[2026-06-13 16:58:01,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:58:01,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:58:01,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:58:01,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:58:03,114.114 INFO    ] ================================================
[2026-06-13 16:58:03,133.133 INFO    ] Launching Daemon at Sat Jun 13 16:58:03 IST 2026
[2026-06-13 16:58:03,145.145 INFO    ] ================================================
[2026-06-13 16:58:03,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:58:03
[2026-06-13 16:58:04,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:58:04,571.571 INFO    ] Initializing speech engine...
[2026-06-13 16:58:04,579.579 INFO    ] 2026-06-13 16:58:04
[2026-06-13 16:58:04,847.847 INFO    ] 2026-06-13 16:58:04
[2026-06-13 16:58:04,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:58:04,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:58:05,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:58:05,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:58:05,246.246 INFO    ] time= 13/06/2026 16:58:05
[2026-06-13 16:58:05,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:58:05,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:58:05,358.358 INFO    ] No existing commands found in stream
[2026-06-13 16:58:10,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:58:10,372.372 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 16:58:10,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:58:10,700.700 INFO    ] Checking for system updates...
[2026-06-13 16:58:10,722.722 INFO    ] 200
[2026-06-13 16:58:10,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:10,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:10,756.756 INFO    ] No update needed
[2026-06-13 16:58:10,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 16:58:10,776.776 INFO    ] 200
[2026-06-13 16:58:10,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:10,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:58:10,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:10,853.853 INFO    ] No camera update needed
[2026-06-13 16:58:10,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:58:10,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:58:10,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:58:10,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:58:12,903.903 INFO    ] ================================================
[2026-06-13 16:58:12,918.918 INFO    ] Launching Daemon at Sat Jun 13 16:58:12 IST 2026
[2026-06-13 16:58:12,929.929 INFO    ] ================================================
[2026-06-13 16:58:13,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:58:13
[2026-06-13 16:58:13,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:58:13,737.737 INFO    ] Initializing speech engine...
[2026-06-13 16:58:13,741.741 INFO    ] 2026-06-13 16:58:13
[2026-06-13 16:58:13,957.957 INFO    ] 2026-06-13 16:58:13
[2026-06-13 16:58:13,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:58:14,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:58:14,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:58:14,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:58:14,374.374 INFO    ] time= 13/06/2026 16:58:14
[2026-06-13 16:58:14,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:58:14,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:58:14,471.471 INFO    ] No existing commands found in stream
[2026-06-13 16:58:19,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:58:19,483.483 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 16:58:22,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:58:22,626.626 INFO    ] Checking for system updates...
[2026-06-13 16:58:22,650.650 INFO    ] 200
[2026-06-13 16:58:22,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:22,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:22,687.687 INFO    ] No update needed
[2026-06-13 16:58:22,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 16:58:22,712.712 INFO    ] 200
[2026-06-13 16:58:22,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:22,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:58:22,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:22,780.780 INFO    ] No camera update needed
[2026-06-13 16:58:22,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:58:22,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:58:22,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:58:22,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:58:24,829.829 INFO    ] ================================================
[2026-06-13 16:58:24,845.845 INFO    ] Launching Daemon at Sat Jun 13 16:58:24 IST 2026
[2026-06-13 16:58:24,856.856 INFO    ] ================================================
[2026-06-13 16:58:25,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:58:25
[2026-06-13 16:58:25,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:58:25,667.667 INFO    ] Initializing speech engine...
[2026-06-13 16:58:25,673.673 INFO    ] 2026-06-13 16:58:25
[2026-06-13 16:58:25,877.877 INFO    ] 2026-06-13 16:58:25
[2026-06-13 16:58:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:58:26,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:58:26,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:58:26,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:58:26,269.269 INFO    ] time= 13/06/2026 16:58:26
[2026-06-13 16:58:26,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:58:26,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:58:26,387.387 INFO    ] No existing commands found in stream
[2026-06-13 16:58:31,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:58:31,401.401 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 16:58:34,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:58:34,882.882 INFO    ] Checking for system updates...
[2026-06-13 16:58:34,903.903 INFO    ] 200
[2026-06-13 16:58:34,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:34,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:34,940.940 INFO    ] No update needed
[2026-06-13 16:58:34,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 16:58:34,962.962 INFO    ] 200
[2026-06-13 16:58:34,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:34,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:58:35,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:35,031.031 INFO    ] No camera update needed
[2026-06-13 16:58:35,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:58:35,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:58:35,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:58:35,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:58:37,079.079 INFO    ] ================================================
[2026-06-13 16:58:37,097.097 INFO    ] Launching Daemon at Sat Jun 13 16:58:37 IST 2026
[2026-06-13 16:58:37,108.108 INFO    ] ================================================
[2026-06-13 16:58:37,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:58:37
[2026-06-13 16:58:37,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:58:37,974.974 INFO    ] Initializing speech engine...
[2026-06-13 16:58:37,980.980 INFO    ] 2026-06-13 16:58:37
[2026-06-13 16:58:38,182.182 INFO    ] 2026-06-13 16:58:38
[2026-06-13 16:58:38,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:58:38,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:58:38,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:58:38,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:58:38,575.575 INFO    ] time= 13/06/2026 16:58:38
[2026-06-13 16:58:38,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:58:38,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:58:38,695.695 INFO    ] No existing commands found in stream
[2026-06-13 16:58:43,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:58:43,708.708 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 16:58:47,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:58:47,766.766 INFO    ] Checking for system updates...
[2026-06-13 16:58:47,786.786 INFO    ] 200
[2026-06-13 16:58:47,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:47,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:47,822.822 INFO    ] No update needed
[2026-06-13 16:58:47,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 16:58:47,843.843 INFO    ] 200
[2026-06-13 16:58:47,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:58:47,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:58:47,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:58:47,916.916 INFO    ] No camera update needed
[2026-06-13 16:58:47,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:58:47,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:58:47,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:58:47,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:58:49,966.966 INFO    ] ================================================
[2026-06-13 16:58:49,981.981 INFO    ] Launching Daemon at Sat Jun 13 16:58:49 IST 2026
[2026-06-13 16:58:49,993.993 INFO    ] ================================================
[2026-06-13 16:58:50,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:58:50
[2026-06-13 16:58:50,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:58:50,816.816 INFO    ] Initializing speech engine...
[2026-06-13 16:58:50,821.821 INFO    ] 2026-06-13 16:58:50
[2026-06-13 16:58:51,024.024 INFO    ] 2026-06-13 16:58:51
[2026-06-13 16:58:51,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:58:51,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:58:51,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:58:51,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:58:51,431.431 INFO    ] time= 13/06/2026 16:58:51
[2026-06-13 16:58:51,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:58:51,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:58:51,541.541 INFO    ] No existing commands found in stream
[2026-06-13 16:58:56,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:58:56,553.553 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 16:59:00,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 16:59:00,832.832 INFO    ] Checking for system updates...
[2026-06-13 16:59:00,852.852 INFO    ] 200
[2026-06-13 16:59:00,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:00,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:00,885.885 INFO    ] No update needed
[2026-06-13 16:59:00,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:00,907.907 INFO    ] 200
[2026-06-13 16:59:00,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:00,933.933 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:00,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:00,975.975 INFO    ] No camera update needed
[2026-06-13 16:59:00,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:00,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:00,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:03,019.019 INFO    ] ================================================
[2026-06-13 16:59:03,034.034 INFO    ] Launching Daemon at Sat Jun 13 16:59:03 IST 2026
[2026-06-13 16:59:03,045.045 INFO    ] ================================================
[2026-06-13 16:59:03,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:03
[2026-06-13 16:59:03,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:03,819.819 INFO    ] Initializing speech engine...
[2026-06-13 16:59:03,824.824 INFO    ] 2026-06-13 16:59:03
[2026-06-13 16:59:04,042.042 INFO    ] 2026-06-13 16:59:04
[2026-06-13 16:59:04,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:04,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:04,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:04,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:04,459.459 INFO    ] time= 13/06/2026 16:59:04
[2026-06-13 16:59:04,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:04,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:04,565.565 INFO    ] No existing commands found in stream
[2026-06-13 16:59:09,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:59:09,578.578 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 16:59:11,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 16:59:11,217.217 INFO    ] Checking for system updates...
[2026-06-13 16:59:11,238.238 INFO    ] 200
[2026-06-13 16:59:11,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:11,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:11,271.271 INFO    ] No update needed
[2026-06-13 16:59:11,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:11,292.292 INFO    ] 200
[2026-06-13 16:59:11,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:11,317.317 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:11,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:11,356.356 INFO    ] No camera update needed
[2026-06-13 16:59:11,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:11,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:11,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:11,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:13,404.404 INFO    ] ================================================
[2026-06-13 16:59:13,419.419 INFO    ] Launching Daemon at Sat Jun 13 16:59:13 IST 2026
[2026-06-13 16:59:13,430.430 INFO    ] ================================================
[2026-06-13 16:59:13,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:13
[2026-06-13 16:59:14,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:14,639.639 INFO    ] Initializing speech engine...
[2026-06-13 16:59:14,645.645 INFO    ] 2026-06-13 16:59:14
[2026-06-13 16:59:14,896.896 INFO    ] 2026-06-13 16:59:14
[2026-06-13 16:59:14,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:15,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:15,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:15,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:15,238.238 INFO    ] time= 13/06/2026 16:59:15
[2026-06-13 16:59:15,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:15,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:15,351.351 INFO    ] No existing commands found in stream
[2026-06-13 16:59:20,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:59:20,366.366 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 16:59:21,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 16:59:21,663.663 INFO    ] Checking for system updates...
[2026-06-13 16:59:21,685.685 INFO    ] 200
[2026-06-13 16:59:21,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:21,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:21,721.721 INFO    ] No update needed
[2026-06-13 16:59:21,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:21,742.742 INFO    ] 200
[2026-06-13 16:59:21,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:21,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:21,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:21,908.908 INFO    ] No camera update needed
[2026-06-13 16:59:21,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:21,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:21,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:21,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:23,955.955 INFO    ] ================================================
[2026-06-13 16:59:23,970.970 INFO    ] Launching Daemon at Sat Jun 13 16:59:23 IST 2026
[2026-06-13 16:59:23,981.981 INFO    ] ================================================
[2026-06-13 16:59:24,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:24
[2026-06-13 16:59:24,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:24,805.805 INFO    ] Initializing speech engine...
[2026-06-13 16:59:24,816.816 INFO    ] 2026-06-13 16:59:24
[2026-06-13 16:59:25,023.023 INFO    ] 2026-06-13 16:59:25
[2026-06-13 16:59:25,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:25,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:25,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:25,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:25,416.416 INFO    ] time= 13/06/2026 16:59:25
[2026-06-13 16:59:25,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:25,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:25,571.571 INFO    ] No existing commands found in stream
[2026-06-13 16:59:30,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:59:30,592.592 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 16:59:32,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 16:59:32,195.195 INFO    ] Checking for system updates...
[2026-06-13 16:59:32,231.231 INFO    ] 200
[2026-06-13 16:59:32,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:32,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:32,295.295 INFO    ] No update needed
[2026-06-13 16:59:32,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:32,335.335 INFO    ] 200
[2026-06-13 16:59:32,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:32,367.367 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:32,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:32,393.393 INFO    ] No camera update needed
[2026-06-13 16:59:32,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:32,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:32,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:32,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:34,441.441 INFO    ] ================================================
[2026-06-13 16:59:34,457.457 INFO    ] Launching Daemon at Sat Jun 13 16:59:34 IST 2026
[2026-06-13 16:59:34,468.468 INFO    ] ================================================
[2026-06-13 16:59:34,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:34
[2026-06-13 16:59:35,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:35,287.287 INFO    ] Initializing speech engine...
[2026-06-13 16:59:35,292.292 INFO    ] 2026-06-13 16:59:35
[2026-06-13 16:59:35,498.498 INFO    ] 2026-06-13 16:59:35
[2026-06-13 16:59:35,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:35,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:35,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:35,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:35,909.909 INFO    ] time= 13/06/2026 16:59:35
[2026-06-13 16:59:35,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:35,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:36,019.019 INFO    ] No existing commands found in stream
[2026-06-13 16:59:41,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:59:41,032.032 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 16:59:42,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 16:59:42,838.838 INFO    ] Checking for system updates...
[2026-06-13 16:59:42,859.859 INFO    ] 200
[2026-06-13 16:59:42,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:42,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:42,893.893 INFO    ] No update needed
[2026-06-13 16:59:42,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:42,914.914 INFO    ] 200
[2026-06-13 16:59:42,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:42,940.940 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:42,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:42,966.966 INFO    ] No camera update needed
[2026-06-13 16:59:42,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:42,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:42,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:42,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:45,013.013 INFO    ] ================================================
[2026-06-13 16:59:45,028.028 INFO    ] Launching Daemon at Sat Jun 13 16:59:45 IST 2026
[2026-06-13 16:59:45,039.039 INFO    ] ================================================
[2026-06-13 16:59:45,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:45
[2026-06-13 16:59:45,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:45,910.910 INFO    ] Initializing speech engine...
[2026-06-13 16:59:45,915.915 INFO    ] 2026-06-13 16:59:45
[2026-06-13 16:59:46,120.120 INFO    ] 2026-06-13 16:59:46
[2026-06-13 16:59:46,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:46,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:46,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:46,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:46,537.537 INFO    ] time= 13/06/2026 16:59:46
[2026-06-13 16:59:46,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:46,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:46,638.638 INFO    ] No existing commands found in stream
[2026-06-13 16:59:51,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 16:59:51,650.650 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 16:59:55,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 16:59:55,503.503 INFO    ] Checking for system updates...
[2026-06-13 16:59:55,524.524 INFO    ] 200
[2026-06-13 16:59:55,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:55,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 16:59:55,558.558 INFO    ] No update needed
[2026-06-13 16:59:55,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 16:59:55,580.580 INFO    ] 200
[2026-06-13 16:59:55,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 16:59:55,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 16:59:55,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 16:59:55,644.644 INFO    ] No camera update needed
[2026-06-13 16:59:55,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 16:59:55,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 16:59:55,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 16:59:55,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 16:59:57,700.700 INFO    ] ================================================
[2026-06-13 16:59:57,715.715 INFO    ] Launching Daemon at Sat Jun 13 16:59:57 IST 2026
[2026-06-13 16:59:57,725.725 INFO    ] ================================================
[2026-06-13 16:59:58,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 16:59:58
[2026-06-13 16:59:58,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 16:59:58,497.497 INFO    ] Initializing speech engine...
[2026-06-13 16:59:58,510.510 INFO    ] 2026-06-13 16:59:58
[2026-06-13 16:59:58,719.719 INFO    ] 2026-06-13 16:59:58
[2026-06-13 16:59:58,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 16:59:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 16:59:58,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 16:59:59,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 16:59:59,120.120 INFO    ] time= 13/06/2026 16:59:59
[2026-06-13 16:59:59,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 16:59:59,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 16:59:59,242.242 INFO    ] No existing commands found in stream
[2026-06-13 17:00:04,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:04,254.254 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 17:00:06,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:00:06,995.995 INFO    ] Checking for system updates...
[2026-06-13 17:00:07,035.035 INFO    ] 200
[2026-06-13 17:00:07,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:07,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:00:07,094.094 INFO    ] No update needed
[2026-06-13 17:00:07,097.097 INFO    ] Checking for camera pi updates...
[2026-06-13 17:00:07,131.131 INFO    ] 200
[2026-06-13 17:00:07,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:07,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:00:07,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:00:07,218.218 INFO    ] No camera update needed
[2026-06-13 17:00:07,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:00:07,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:00:07,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:00:07,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:00:09,273.273 INFO    ] ================================================
[2026-06-13 17:00:09,287.287 INFO    ] Launching Daemon at Sat Jun 13 17:00:09 IST 2026
[2026-06-13 17:00:09,298.298 INFO    ] ================================================
[2026-06-13 17:00:09,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:00:09
[2026-06-13 17:00:10,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:00:10,291.291 INFO    ] Initializing speech engine...
[2026-06-13 17:00:10,298.298 INFO    ] 2026-06-13 17:00:10
[2026-06-13 17:00:10,570.570 INFO    ] 2026-06-13 17:00:10
[2026-06-13 17:00:10,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:00:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:00:10,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:00:10,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:00:10,955.955 INFO    ] time= 13/06/2026 17:00:10
[2026-06-13 17:00:10,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:00:11,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:00:11,082.082 INFO    ] No existing commands found in stream
[2026-06-13 17:00:16,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:16,096.096 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 17:00:17,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:00:17,381.381 INFO    ] Checking for system updates...
[2026-06-13 17:00:17,403.403 INFO    ] 200
[2026-06-13 17:00:17,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:17,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:00:17,436.436 INFO    ] No update needed
[2026-06-13 17:00:17,438.438 INFO    ] Checking for camera pi updates...
[2026-06-13 17:00:17,458.458 INFO    ] 200
[2026-06-13 17:00:17,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:17,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:00:17,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:00:17,520.520 INFO    ] No camera update needed
[2026-06-13 17:00:17,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:00:17,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:00:17,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:00:17,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:00:19,568.568 INFO    ] ================================================
[2026-06-13 17:00:19,584.584 INFO    ] Launching Daemon at Sat Jun 13 17:00:19 IST 2026
[2026-06-13 17:00:19,595.595 INFO    ] ================================================
[2026-06-13 17:00:19,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:00:19
[2026-06-13 17:00:20,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:00:20,461.461 INFO    ] Initializing speech engine...
[2026-06-13 17:00:20,467.467 INFO    ] 2026-06-13 17:00:20
[2026-06-13 17:00:20,671.671 INFO    ] 2026-06-13 17:00:20
[2026-06-13 17:00:20,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:00:20,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:00:20,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:00:21,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:00:21,075.075 INFO    ] time= 13/06/2026 17:00:21
[2026-06-13 17:00:21,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:00:21,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:00:21,185.185 INFO    ] No existing commands found in stream
[2026-06-13 17:00:26,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:26,199.199 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 17:00:27,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:00:27,527.527 INFO    ] Checking for system updates...
[2026-06-13 17:00:27,547.547 INFO    ] 200
[2026-06-13 17:00:27,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:27,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:00:27,581.581 INFO    ] No update needed
[2026-06-13 17:00:27,582.582 INFO    ] Checking for camera pi updates...
[2026-06-13 17:00:27,602.602 INFO    ] 200
[2026-06-13 17:00:27,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:27,629.629 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:00:27,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:00:27,665.665 INFO    ] No camera update needed
[2026-06-13 17:00:27,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:00:27,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:00:27,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:00:27,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:00:29,713.713 INFO    ] ================================================
[2026-06-13 17:00:29,728.728 INFO    ] Launching Daemon at Sat Jun 13 17:00:29 IST 2026
[2026-06-13 17:00:29,739.739 INFO    ] ================================================
[2026-06-13 17:00:30,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:00:30
[2026-06-13 17:00:30,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:00:30,549.549 INFO    ] Initializing speech engine...
[2026-06-13 17:00:30,554.554 INFO    ] 2026-06-13 17:00:30
[2026-06-13 17:00:30,757.757 INFO    ] 2026-06-13 17:00:30
[2026-06-13 17:00:30,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:00:30,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:00:30,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:00:31,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:00:31,178.178 INFO    ] time= 13/06/2026 17:00:31
[2026-06-13 17:00:31,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:00:31,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:00:31,273.273 INFO    ] No existing commands found in stream
[2026-06-13 17:00:36,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:36,286.286 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 17:00:38,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:00:38,731.731 INFO    ] Checking for system updates...
[2026-06-13 17:00:38,751.751 INFO    ] 200
[2026-06-13 17:00:38,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:38,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:00:38,785.785 INFO    ] No update needed
[2026-06-13 17:00:38,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 17:00:38,810.810 INFO    ] 200
[2026-06-13 17:00:38,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:38,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:00:38,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:00:38,878.878 INFO    ] No camera update needed
[2026-06-13 17:00:38,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:00:38,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:00:38,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:00:38,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:00:40,926.926 INFO    ] ================================================
[2026-06-13 17:00:40,941.941 INFO    ] Launching Daemon at Sat Jun 13 17:00:40 IST 2026
[2026-06-13 17:00:40,952.952 INFO    ] ================================================
[2026-06-13 17:00:41,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:00:41
[2026-06-13 17:00:41,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:00:41,731.731 INFO    ] Initializing speech engine...
[2026-06-13 17:00:41,736.736 INFO    ] 2026-06-13 17:00:41
[2026-06-13 17:00:41,950.950 INFO    ] 2026-06-13 17:00:41
[2026-06-13 17:00:41,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:00:42,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:00:42,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:00:42,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:00:42,361.361 INFO    ] time= 13/06/2026 17:00:42
[2026-06-13 17:00:42,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:00:42,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:00:42,474.474 INFO    ] No existing commands found in stream
[2026-06-13 17:00:47,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:47,486.486 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 17:00:49,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:00:49,603.603 INFO    ] Checking for system updates...
[2026-06-13 17:00:49,625.625 INFO    ] 200
[2026-06-13 17:00:49,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:49,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:00:49,660.660 INFO    ] No update needed
[2026-06-13 17:00:49,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 17:00:49,683.683 INFO    ] 200
[2026-06-13 17:00:49,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:00:49,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:00:49,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:00:49,758.758 INFO    ] No camera update needed
[2026-06-13 17:00:49,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:00:49,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:00:49,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:00:49,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:00:51,806.806 INFO    ] ================================================
[2026-06-13 17:00:51,821.821 INFO    ] Launching Daemon at Sat Jun 13 17:00:51 IST 2026
[2026-06-13 17:00:51,832.832 INFO    ] ================================================
[2026-06-13 17:00:52,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:00:52
[2026-06-13 17:00:52,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:00:52,606.606 INFO    ] Initializing speech engine...
[2026-06-13 17:00:52,614.614 INFO    ] 2026-06-13 17:00:52
[2026-06-13 17:00:52,833.833 INFO    ] 2026-06-13 17:00:52
[2026-06-13 17:00:52,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:00:53,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:00:53,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:00:53,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:00:53,260.260 INFO    ] time= 13/06/2026 17:00:53
[2026-06-13 17:00:53,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:00:53,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:00:53,386.386 INFO    ] No existing commands found in stream
[2026-06-13 17:00:58,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:00:58,399.399 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 17:01:01,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:01:01,943.943 INFO    ] Checking for system updates...
[2026-06-13 17:01:01,981.981 INFO    ] 200
[2026-06-13 17:01:01,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:02,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:02,031.031 INFO    ] No update needed
[2026-06-13 17:01:02,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:02,056.056 INFO    ] 200
[2026-06-13 17:01:02,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:02,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:02,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:02,116.116 INFO    ] No camera update needed
[2026-06-13 17:01:02,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:02,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:02,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:01:04,160.160 INFO    ] ================================================
[2026-06-13 17:01:04,175.175 INFO    ] Launching Daemon at Sat Jun 13 17:01:04 IST 2026
[2026-06-13 17:01:04,186.186 INFO    ] ================================================
[2026-06-13 17:01:04,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:01:04
[2026-06-13 17:01:04,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:01:04,990.990 INFO    ] Initializing speech engine...
[2026-06-13 17:01:04,995.995 INFO    ] 2026-06-13 17:01:04
[2026-06-13 17:01:05,211.211 INFO    ] 2026-06-13 17:01:05
[2026-06-13 17:01:05,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:01:05,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:01:05,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:01:05,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:01:05,603.603 INFO    ] time= 13/06/2026 17:01:05
[2026-06-13 17:01:05,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:01:05,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:01:05,764.764 INFO    ] No existing commands found in stream
[2026-06-13 17:01:10,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:01:10,777.777 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 17:01:12,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:01:12,791.791 INFO    ] Checking for system updates...
[2026-06-13 17:01:12,812.812 INFO    ] 200
[2026-06-13 17:01:12,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:12,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:12,846.846 INFO    ] No update needed
[2026-06-13 17:01:12,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:12,868.868 INFO    ] 200
[2026-06-13 17:01:12,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:12,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:12,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:12,945.945 INFO    ] No camera update needed
[2026-06-13 17:01:12,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:12,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:12,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:12,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:01:14,994.994 INFO    ] ================================================
[2026-06-13 17:01:15,010.010 INFO    ] Launching Daemon at Sat Jun 13 17:01:15 IST 2026
[2026-06-13 17:01:15,021.021 INFO    ] ================================================
[2026-06-13 17:01:15,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:01:15
[2026-06-13 17:01:15,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:01:15,810.810 INFO    ] Initializing speech engine...
[2026-06-13 17:01:15,816.816 INFO    ] 2026-06-13 17:01:15
[2026-06-13 17:01:16,019.019 INFO    ] 2026-06-13 17:01:16
[2026-06-13 17:01:16,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:01:16,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:01:16,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:01:16,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:01:16,415.415 INFO    ] time= 13/06/2026 17:01:16
[2026-06-13 17:01:16,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:01:16,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:01:16,535.535 INFO    ] No existing commands found in stream
[2026-06-13 17:01:21,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:01:21,547.547 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 17:01:23,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:01:23,572.572 INFO    ] Checking for system updates...
[2026-06-13 17:01:23,610.610 INFO    ] 200
[2026-06-13 17:01:23,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:23,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:01:23,672.672 INFO    ] No update needed
[2026-06-13 17:01:23,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:23,711.711 INFO    ] 200
[2026-06-13 17:01:23,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:23,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:23,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:01:23,908.908 INFO    ] No camera update needed
[2026-06-13 17:01:23,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:23,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:23,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:23,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:01:25,971.971 INFO    ] ================================================
[2026-06-13 17:01:25,987.987 INFO    ] Launching Daemon at Sat Jun 13 17:01:25 IST 2026
[2026-06-13 17:01:26,997.997 INFO    ] ================================================
[2026-06-13 17:01:26,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:01:26
[2026-06-13 17:01:26,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:01:26,794.794 INFO    ] Initializing speech engine...
[2026-06-13 17:01:26,799.799 INFO    ] 2026-06-13 17:01:26
[2026-06-13 17:01:27,014.014 INFO    ] 2026-06-13 17:01:26
[2026-06-13 17:01:27,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:01:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:01:27,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:01:27,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:01:27,414.414 INFO    ] time= 13/06/2026 17:01:27
[2026-06-13 17:01:27,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:01:27,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:01:27,517.517 INFO    ] No existing commands found in stream
[2026-06-13 17:01:32,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:01:32,526.526 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 17:01:34,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:01:34,093.093 INFO    ] Checking for system updates...
[2026-06-13 17:01:34,115.115 INFO    ] 200
[2026-06-13 17:01:34,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:34,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:34,149.149 INFO    ] No update needed
[2026-06-13 17:01:34,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:34,170.170 INFO    ] 200
[2026-06-13 17:01:34,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:34,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:34,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:01:34,243.243 INFO    ] No camera update needed
[2026-06-13 17:01:34,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:34,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:34,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:34,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:01:36,300.300 INFO    ] ================================================
[2026-06-13 17:01:36,317.317 INFO    ] Launching Daemon at Sat Jun 13 17:01:36 IST 2026
[2026-06-13 17:01:36,328.328 INFO    ] ================================================
[2026-06-13 17:01:36,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:01:36
[2026-06-13 17:01:37,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:01:37,611.611 INFO    ] Initializing speech engine...
[2026-06-13 17:01:37,619.619 INFO    ] 2026-06-13 17:01:37
[2026-06-13 17:01:37,832.832 INFO    ] 2026-06-13 17:01:37
[2026-06-13 17:01:37,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:01:38,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:01:38,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:01:38,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:01:38,249.249 INFO    ] time= 13/06/2026 17:01:38
[2026-06-13 17:01:38,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:01:38,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:01:38,355.355 INFO    ] No existing commands found in stream
[2026-06-13 17:01:43,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:01:43,369.369 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 17:01:47,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:01:47,346.346 INFO    ] Checking for system updates...
[2026-06-13 17:01:47,368.368 INFO    ] 200
[2026-06-13 17:01:47,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:47,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:47,404.404 INFO    ] No update needed
[2026-06-13 17:01:47,406.406 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:47,425.425 INFO    ] 200
[2026-06-13 17:01:47,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:47,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:47,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:47,494.494 INFO    ] No camera update needed
[2026-06-13 17:01:47,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:47,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:47,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:47,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:01:49,535.535 INFO    ] ================================================
[2026-06-13 17:01:49,551.551 INFO    ] Launching Daemon at Sat Jun 13 17:01:49 IST 2026
[2026-06-13 17:01:49,562.562 INFO    ] ================================================
[2026-06-13 17:01:49,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:01:49
[2026-06-13 17:01:50,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:01:50,362.362 INFO    ] Initializing speech engine...
[2026-06-13 17:01:50,365.365 INFO    ] 2026-06-13 17:01:50
[2026-06-13 17:01:50,582.582 INFO    ] 2026-06-13 17:01:50
[2026-06-13 17:01:50,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:01:50,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:01:50,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:01:50,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:01:50,941.941 INFO    ] time= 13/06/2026 17:01:50
[2026-06-13 17:01:50,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:01:51,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:01:51,154.154 INFO    ] No existing commands found in stream
[2026-06-13 17:01:56,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:01:56,168.168 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 17:01:59,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:01:59,197.197 INFO    ] Checking for system updates...
[2026-06-13 17:01:59,220.220 INFO    ] 200
[2026-06-13 17:01:59,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:59,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:59,254.254 INFO    ] No update needed
[2026-06-13 17:01:59,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 17:01:59,277.277 INFO    ] 200
[2026-06-13 17:01:59,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:01:59,305.305 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:01:59,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:01:59,347.347 INFO    ] No camera update needed
[2026-06-13 17:01:59,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:01:59,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:01:59,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:01:59,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:01,398.398 INFO    ] ================================================
[2026-06-13 17:02:01,414.414 INFO    ] Launching Daemon at Sat Jun 13 17:02:01 IST 2026
[2026-06-13 17:02:01,426.426 INFO    ] ================================================
[2026-06-13 17:02:01,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:01
[2026-06-13 17:02:02,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:02,679.679 INFO    ] Initializing speech engine...
[2026-06-13 17:02:02,690.690 INFO    ] 2026-06-13 17:02:02
[2026-06-13 17:02:03,050.050 INFO    ] 2026-06-13 17:02:03
[2026-06-13 17:02:03,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:03,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:03,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:03,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:03,404.404 INFO    ] time= 13/06/2026 17:02:03
[2026-06-13 17:02:03,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:02:03,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:02:03,523.523 INFO    ] No existing commands found in stream
[2026-06-13 17:02:08,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:02:08,536.536 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 17:02:10,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:02:10,212.212 INFO    ] Checking for system updates...
[2026-06-13 17:02:10,232.232 INFO    ] 200
[2026-06-13 17:02:10,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:10,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:02:10,266.266 INFO    ] No update needed
[2026-06-13 17:02:10,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 17:02:10,287.287 INFO    ] 200
[2026-06-13 17:02:10,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:10,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:02:10,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:02:10,359.359 INFO    ] No camera update needed
[2026-06-13 17:02:10,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:02:10,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:02:10,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:02:10,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:12,406.406 INFO    ] ================================================
[2026-06-13 17:02:12,427.427 INFO    ] Launching Daemon at Sat Jun 13 17:02:12 IST 2026
[2026-06-13 17:02:12,439.439 INFO    ] ================================================
[2026-06-13 17:02:12,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:12
[2026-06-13 17:02:13,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:13,248.248 INFO    ] Initializing speech engine...
[2026-06-13 17:02:13,253.253 INFO    ] 2026-06-13 17:02:13
[2026-06-13 17:02:13,463.463 INFO    ] 2026-06-13 17:02:13
[2026-06-13 17:02:13,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:13,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:13,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:13,870.870 INFO    ] time= 13/06/2026 17:02:13
[2026-06-13 17:02:13,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:02:13,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:02:14,056.056 INFO    ] No existing commands found in stream
[2026-06-13 17:02:19,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:02:19,070.070 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 17:02:22,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:02:22,927.927 INFO    ] Checking for system updates...
[2026-06-13 17:02:22,952.952 INFO    ] 200
[2026-06-13 17:02:22,953.953 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:22,955.955 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 17:02:22,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 17:02:22,982.982 INFO    ] 200
[2026-06-13 17:02:22,983.983 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:22,985.985 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 17:02:22,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:02:22,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:02:22,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:02:22,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:25,018.018 INFO    ] ================================================
[2026-06-13 17:02:25,027.027 INFO    ] Launching Daemon at Sat Jun 13 17:02:25 IST 2026
[2026-06-13 17:02:25,033.033 INFO    ] ================================================
[2026-06-13 17:02:25,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:25
[2026-06-13 17:02:25,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:25,862.862 INFO    ] Initializing speech engine...
[2026-06-13 17:02:25,867.867 INFO    ] 2026-06-13 17:02:25
[2026-06-13 17:02:26,089.089 INFO    ] 2026-06-13 17:02:26
[2026-06-13 17:02:26,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:26,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:26,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:26,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:26,538.538 INFO    ] time= 13/06/2026 17:02:26
[2026-06-13 17:02:26,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:02:26,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:02:26,661.661 INFO    ] No existing commands found in stream
[2026-06-13 17:02:31,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:02:31,675.675 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 17:02:33,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:02:33,740.740 INFO    ] Checking for system updates...
[2026-06-13 17:02:33,761.761 INFO    ] 200
[2026-06-13 17:02:33,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:33,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:02:33,795.795 INFO    ] No update needed
[2026-06-13 17:02:33,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 17:02:33,817.817 INFO    ] 200
[2026-06-13 17:02:33,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:33,842.842 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:02:33,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:02:33,884.884 INFO    ] No camera update needed
[2026-06-13 17:02:33,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:02:33,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:02:33,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:02:33,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:35,932.932 INFO    ] ================================================
[2026-06-13 17:02:35,948.948 INFO    ] Launching Daemon at Sat Jun 13 17:02:35 IST 2026
[2026-06-13 17:02:35,959.959 INFO    ] ================================================
[2026-06-13 17:02:36,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:36
[2026-06-13 17:02:36,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:36,781.781 INFO    ] Initializing speech engine...
[2026-06-13 17:02:36,786.786 INFO    ] 2026-06-13 17:02:36
[2026-06-13 17:02:36,997.997 INFO    ] 2026-06-13 17:02:36
[2026-06-13 17:02:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:37,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:37,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:37,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:37,429.429 INFO    ] time= 13/06/2026 17:02:37
[2026-06-13 17:02:37,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:02:37,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:02:37,583.583 INFO    ] No existing commands found in stream
[2026-06-13 17:02:42,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:02:42,597.597 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 17:02:45,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:02:45,120.120 INFO    ] Checking for system updates...
[2026-06-13 17:02:45,144.144 INFO    ] 200
[2026-06-13 17:02:45,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:45,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:02:45,178.178 INFO    ] No update needed
[2026-06-13 17:02:45,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 17:02:45,200.200 INFO    ] 200
[2026-06-13 17:02:45,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:45,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:02:45,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:02:45,271.271 INFO    ] No camera update needed
[2026-06-13 17:02:45,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:02:45,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:02:45,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:02:45,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:47,318.318 INFO    ] ================================================
[2026-06-13 17:02:47,334.334 INFO    ] Launching Daemon at Sat Jun 13 17:02:47 IST 2026
[2026-06-13 17:02:47,346.346 INFO    ] ================================================
[2026-06-13 17:02:47,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:47
[2026-06-13 17:02:47,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:48,126.126 INFO    ] Initializing speech engine...
[2026-06-13 17:02:48,137.137 INFO    ] 2026-06-13 17:02:48
[2026-06-13 17:02:48,345.345 INFO    ] 2026-06-13 17:02:48
[2026-06-13 17:02:48,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:48,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:48,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:48,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:48,748.748 INFO    ] time= 13/06/2026 17:02:48
[2026-06-13 17:02:48,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:02:48,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:02:48,858.858 INFO    ] No existing commands found in stream
[2026-06-13 17:02:53,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:02:53,870.870 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 17:02:56,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:02:56,362.362 INFO    ] Checking for system updates...
[2026-06-13 17:02:56,382.382 INFO    ] 200
[2026-06-13 17:02:56,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:56,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:02:56,415.415 INFO    ] No update needed
[2026-06-13 17:02:56,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 17:02:56,436.436 INFO    ] 200
[2026-06-13 17:02:56,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:02:56,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:02:56,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:02:56,505.505 INFO    ] No camera update needed
[2026-06-13 17:02:56,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:02:56,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:02:56,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:02:56,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:02:58,554.554 INFO    ] ================================================
[2026-06-13 17:02:58,570.570 INFO    ] Launching Daemon at Sat Jun 13 17:02:58 IST 2026
[2026-06-13 17:02:58,581.581 INFO    ] ================================================
[2026-06-13 17:02:58,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:02:58
[2026-06-13 17:02:59,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:02:59,380.380 INFO    ] Initializing speech engine...
[2026-06-13 17:02:59,385.385 INFO    ] 2026-06-13 17:02:59
[2026-06-13 17:02:59,590.590 INFO    ] 2026-06-13 17:02:59
[2026-06-13 17:02:59,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:02:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:02:59,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:02:59,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:02:59,993.993 INFO    ] time= 13/06/2026 17:02:59
[2026-06-13 17:03:00,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:00,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:00,102.102 INFO    ] No existing commands found in stream
[2026-06-13 17:03:05,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:05,114.114 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 17:03:05,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:03:05,560.560 INFO    ] Checking for system updates...
[2026-06-13 17:03:05,580.580 INFO    ] 200
[2026-06-13 17:03:05,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:05,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:03:05,614.614 INFO    ] No update needed
[2026-06-13 17:03:05,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 17:03:05,635.635 INFO    ] 200
[2026-06-13 17:03:05,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:05,660.660 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:03:05,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:03:05,702.702 INFO    ] No camera update needed
[2026-06-13 17:03:05,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:03:05,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:03:05,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:03:05,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:03:07,751.751 INFO    ] ================================================
[2026-06-13 17:03:07,766.766 INFO    ] Launching Daemon at Sat Jun 13 17:03:07 IST 2026
[2026-06-13 17:03:07,777.777 INFO    ] ================================================
[2026-06-13 17:03:08,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:03:08
[2026-06-13 17:03:08,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:03:08,563.563 INFO    ] Initializing speech engine...
[2026-06-13 17:03:08,573.573 INFO    ] 2026-06-13 17:03:08
[2026-06-13 17:03:08,778.778 INFO    ] 2026-06-13 17:03:08
[2026-06-13 17:03:08,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:03:08,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:03:08,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:03:09,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:03:09,183.183 INFO    ] time= 13/06/2026 17:03:09
[2026-06-13 17:03:09,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:09,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:09,294.294 INFO    ] No existing commands found in stream
[2026-06-13 17:03:14,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:14,311.311 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 17:03:17,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:03:17,411.411 INFO    ] Checking for system updates...
[2026-06-13 17:03:17,432.432 INFO    ] 200
[2026-06-13 17:03:17,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:17,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:17,467.467 INFO    ] No update needed
[2026-06-13 17:03:17,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 17:03:17,490.490 INFO    ] 200
[2026-06-13 17:03:17,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:17,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:03:17,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:17,554.554 INFO    ] No camera update needed
[2026-06-13 17:03:17,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:03:17,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:03:17,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:03:17,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:03:19,602.602 INFO    ] ================================================
[2026-06-13 17:03:19,617.617 INFO    ] Launching Daemon at Sat Jun 13 17:03:19 IST 2026
[2026-06-13 17:03:19,628.628 INFO    ] ================================================
[2026-06-13 17:03:19,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:03:19
[2026-06-13 17:03:20,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:03:20,411.411 INFO    ] Initializing speech engine...
[2026-06-13 17:03:20,415.415 INFO    ] 2026-06-13 17:03:20
[2026-06-13 17:03:20,634.634 INFO    ] 2026-06-13 17:03:20
[2026-06-13 17:03:20,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:03:20,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:03:20,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:03:21,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:03:21,037.037 INFO    ] time= 13/06/2026 17:03:21
[2026-06-13 17:03:21,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:21,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:21,241.241 INFO    ] No existing commands found in stream
[2026-06-13 17:03:26,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:26,259.259 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 17:03:28,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:03:28,382.382 INFO    ] Checking for system updates...
[2026-06-13 17:03:28,402.402 INFO    ] 200
[2026-06-13 17:03:28,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:28,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:28,436.436 INFO    ] No update needed
[2026-06-13 17:03:28,438.438 INFO    ] Checking for camera pi updates...
[2026-06-13 17:03:28,459.459 INFO    ] 200
[2026-06-13 17:03:28,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:28,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:03:28,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:28,640.640 INFO    ] No camera update needed
[2026-06-13 17:03:28,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:03:28,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:03:28,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:03:28,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:03:30,688.688 INFO    ] ================================================
[2026-06-13 17:03:30,703.703 INFO    ] Launching Daemon at Sat Jun 13 17:03:30 IST 2026
[2026-06-13 17:03:30,714.714 INFO    ] ================================================
[2026-06-13 17:03:31,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:03:31
[2026-06-13 17:03:31,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:03:31,527.527 INFO    ] Initializing speech engine...
[2026-06-13 17:03:31,539.539 INFO    ] 2026-06-13 17:03:31
[2026-06-13 17:03:31,757.757 INFO    ] 2026-06-13 17:03:31
[2026-06-13 17:03:31,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:03:31,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:03:31,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:03:32,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:03:32,204.204 INFO    ] time= 13/06/2026 17:03:32
[2026-06-13 17:03:32,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:32,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:32,402.402 INFO    ] No existing commands found in stream
[2026-06-13 17:03:37,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:37,424.424 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 17:03:38,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:03:38,325.325 INFO    ] Checking for system updates...
[2026-06-13 17:03:38,347.347 INFO    ] 200
[2026-06-13 17:03:38,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:38,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:38,380.380 INFO    ] No update needed
[2026-06-13 17:03:38,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 17:03:38,402.402 INFO    ] 200
[2026-06-13 17:03:38,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:38,426.426 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:03:38,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:38,467.467 INFO    ] No camera update needed
[2026-06-13 17:03:38,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:03:38,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:03:38,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:03:38,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:03:40,516.516 INFO    ] ================================================
[2026-06-13 17:03:40,531.531 INFO    ] Launching Daemon at Sat Jun 13 17:03:40 IST 2026
[2026-06-13 17:03:40,541.541 INFO    ] ================================================
[2026-06-13 17:03:40,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:03:40
[2026-06-13 17:03:41,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:03:41,361.361 INFO    ] Initializing speech engine...
[2026-06-13 17:03:41,370.370 INFO    ] 2026-06-13 17:03:41
[2026-06-13 17:03:41,595.595 INFO    ] 2026-06-13 17:03:41
[2026-06-13 17:03:41,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:03:41,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:03:41,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:03:41,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:03:42,018.018 INFO    ] time= 13/06/2026 17:03:41
[2026-06-13 17:03:42,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:42,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:42,150.150 INFO    ] No existing commands found in stream
[2026-06-13 17:03:47,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:47,164.164 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 17:03:50,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:03:50,080.080 INFO    ] Checking for system updates...
[2026-06-13 17:03:50,102.102 INFO    ] 200
[2026-06-13 17:03:50,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:50,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:50,137.137 INFO    ] No update needed
[2026-06-13 17:03:50,138.138 INFO    ] Checking for camera pi updates...
[2026-06-13 17:03:50,158.158 INFO    ] 200
[2026-06-13 17:03:50,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:03:50,184.184 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:03:50,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:03:50,226.226 INFO    ] No camera update needed
[2026-06-13 17:03:50,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:03:50,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:03:50,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:03:50,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:03:52,274.274 INFO    ] ================================================
[2026-06-13 17:03:52,290.290 INFO    ] Launching Daemon at Sat Jun 13 17:03:52 IST 2026
[2026-06-13 17:03:52,300.300 INFO    ] ================================================
[2026-06-13 17:03:52,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:03:52
[2026-06-13 17:03:52,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:03:53,104.104 INFO    ] Initializing speech engine...
[2026-06-13 17:03:53,110.110 INFO    ] 2026-06-13 17:03:53
[2026-06-13 17:03:53,313.313 INFO    ] 2026-06-13 17:03:53
[2026-06-13 17:03:53,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:03:53,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:03:53,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:03:53,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:03:53,716.716 INFO    ] time= 13/06/2026 17:03:53
[2026-06-13 17:03:53,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:03:53,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:03:53,825.825 INFO    ] No existing commands found in stream
[2026-06-13 17:03:58,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:03:58,836.836 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 17:04:02,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:04:02,422.422 INFO    ] Checking for system updates...
[2026-06-13 17:04:02,446.446 INFO    ] 200
[2026-06-13 17:04:02,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:02,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:02,490.490 INFO    ] No update needed
[2026-06-13 17:04:02,492.492 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:02,515.515 INFO    ] 200
[2026-06-13 17:04:02,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:02,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:02,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:02,594.594 INFO    ] No camera update needed
[2026-06-13 17:04:02,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:02,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:02,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:02,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:04,650.650 INFO    ] ================================================
[2026-06-13 17:04:04,665.665 INFO    ] Launching Daemon at Sat Jun 13 17:04:04 IST 2026
[2026-06-13 17:04:04,676.676 INFO    ] ================================================
[2026-06-13 17:04:05,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:04:05
[2026-06-13 17:04:05,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:04:05,482.482 INFO    ] Initializing speech engine...
[2026-06-13 17:04:05,491.491 INFO    ] 2026-06-13 17:04:05
[2026-06-13 17:04:05,698.698 INFO    ] 2026-06-13 17:04:05
[2026-06-13 17:04:05,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:04:05,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:04:05,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:04:06,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:04:06,143.143 INFO    ] time= 13/06/2026 17:04:06
[2026-06-13 17:04:06,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:04:06,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:04:06,299.299 INFO    ] No existing commands found in stream
[2026-06-13 17:04:11,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:04:11,318.318 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 17:04:12,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:04:12,315.315 INFO    ] Checking for system updates...
[2026-06-13 17:04:12,335.335 INFO    ] 200
[2026-06-13 17:04:12,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:12,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:12,371.371 INFO    ] No update needed
[2026-06-13 17:04:12,372.372 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:12,392.392 INFO    ] 200
[2026-06-13 17:04:12,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:12,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:12,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:12,466.466 INFO    ] No camera update needed
[2026-06-13 17:04:12,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:12,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:12,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:12,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:14,514.514 INFO    ] ================================================
[2026-06-13 17:04:14,529.529 INFO    ] Launching Daemon at Sat Jun 13 17:04:14 IST 2026
[2026-06-13 17:04:14,540.540 INFO    ] ================================================
[2026-06-13 17:04:14,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:04:14
[2026-06-13 17:04:15,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:04:15,383.383 INFO    ] Initializing speech engine...
[2026-06-13 17:04:15,387.387 INFO    ] 2026-06-13 17:04:15
[2026-06-13 17:04:15,593.593 INFO    ] 2026-06-13 17:04:15
[2026-06-13 17:04:15,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:04:15,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:04:15,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:04:15,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:04:16,012.012 INFO    ] time= 13/06/2026 17:04:15
[2026-06-13 17:04:16,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:04:16,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:04:16,134.134 INFO    ] No existing commands found in stream
[2026-06-13 17:04:21,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:04:21,151.151 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 17:04:25,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:04:25,226.226 INFO    ] Checking for system updates...
[2026-06-13 17:04:25,250.250 INFO    ] 200
[2026-06-13 17:04:25,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:25,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:04:25,284.284 INFO    ] No update needed
[2026-06-13 17:04:25,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:25,307.307 INFO    ] 200
[2026-06-13 17:04:25,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:25,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:25,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:04:25,384.384 INFO    ] No camera update needed
[2026-06-13 17:04:25,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:25,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:25,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:25,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:27,433.433 INFO    ] ================================================
[2026-06-13 17:04:27,448.448 INFO    ] Launching Daemon at Sat Jun 13 17:04:27 IST 2026
[2026-06-13 17:04:27,458.458 INFO    ] ================================================
[2026-06-13 17:04:27,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:04:27
[2026-06-13 17:04:28,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:04:28,329.329 INFO    ] Initializing speech engine...
[2026-06-13 17:04:28,340.340 INFO    ] 2026-06-13 17:04:28
[2026-06-13 17:04:28,539.539 INFO    ] 2026-06-13 17:04:28
[2026-06-13 17:04:28,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:04:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:04:28,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:04:28,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:04:28,930.930 INFO    ] time= 13/06/2026 17:04:28
[2026-06-13 17:04:28,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:04:28,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:04:29,069.069 INFO    ] No existing commands found in stream
[2026-06-13 17:04:34,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:04:34,084.084 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 17:04:35,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:04:35,550.550 INFO    ] Checking for system updates...
[2026-06-13 17:04:35,573.573 INFO    ] 200
[2026-06-13 17:04:35,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:35,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:04:35,609.609 INFO    ] No update needed
[2026-06-13 17:04:35,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:35,631.631 INFO    ] 200
[2026-06-13 17:04:35,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:35,657.657 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:35,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:04:35,703.703 INFO    ] No camera update needed
[2026-06-13 17:04:35,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:35,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:35,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:35,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:37,751.751 INFO    ] ================================================
[2026-06-13 17:04:37,766.766 INFO    ] Launching Daemon at Sat Jun 13 17:04:37 IST 2026
[2026-06-13 17:04:37,776.776 INFO    ] ================================================
[2026-06-13 17:04:38,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:04:38
[2026-06-13 17:04:38,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:04:38,563.563 INFO    ] Initializing speech engine...
[2026-06-13 17:04:38,574.574 INFO    ] 2026-06-13 17:04:38
[2026-06-13 17:04:38,781.781 INFO    ] 2026-06-13 17:04:38
[2026-06-13 17:04:38,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:04:38,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:04:39,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:04:39,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:04:39,203.203 INFO    ] time= 13/06/2026 17:04:39
[2026-06-13 17:04:39,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:04:39,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:04:39,337.337 INFO    ] No existing commands found in stream
[2026-06-13 17:04:44,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:04:44,349.349 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 17:04:47,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:04:47,369.369 INFO    ] Checking for system updates...
[2026-06-13 17:04:47,391.391 INFO    ] 200
[2026-06-13 17:04:47,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:47,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:47,426.426 INFO    ] No update needed
[2026-06-13 17:04:47,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:47,448.448 INFO    ] 200
[2026-06-13 17:04:47,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:47,474.474 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:47,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:04:47,517.517 INFO    ] No camera update needed
[2026-06-13 17:04:47,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:47,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:47,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:47,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:49,563.563 INFO    ] ================================================
[2026-06-13 17:04:49,578.578 INFO    ] Launching Daemon at Sat Jun 13 17:04:49 IST 2026
[2026-06-13 17:04:49,589.589 INFO    ] ================================================
[2026-06-13 17:04:49,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:04:49
[2026-06-13 17:04:50,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:04:50,435.435 INFO    ] Initializing speech engine...
[2026-06-13 17:04:50,440.440 INFO    ] 2026-06-13 17:04:50
[2026-06-13 17:04:50,650.650 INFO    ] 2026-06-13 17:04:50
[2026-06-13 17:04:50,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:04:50,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:04:50,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:04:51,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:04:51,058.058 INFO    ] time= 13/06/2026 17:04:51
[2026-06-13 17:04:51,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:04:51,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:04:51,196.196 INFO    ] No existing commands found in stream
[2026-06-13 17:04:56,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:04:56,240.240 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 17:04:57,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:04:57,775.775 INFO    ] Checking for system updates...
[2026-06-13 17:04:57,796.796 INFO    ] 200
[2026-06-13 17:04:57,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:57,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:57,834.834 INFO    ] No update needed
[2026-06-13 17:04:57,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 17:04:57,854.854 INFO    ] 200
[2026-06-13 17:04:57,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:04:57,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:04:57,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:04:57,923.923 INFO    ] No camera update needed
[2026-06-13 17:04:57,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:04:57,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:04:57,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:04:57,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:04:59,970.970 INFO    ] ================================================
[2026-06-13 17:04:59,986.986 INFO    ] Launching Daemon at Sat Jun 13 17:04:59 IST 2026
[2026-06-13 17:05:00,996.996 INFO    ] ================================================
[2026-06-13 17:05:00,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:05:00
[2026-06-13 17:05:00,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:05:00,836.836 INFO    ] Initializing speech engine...
[2026-06-13 17:05:00,840.840 INFO    ] 2026-06-13 17:05:00
[2026-06-13 17:05:01,034.034 INFO    ] 2026-06-13 17:05:01
[2026-06-13 17:05:01,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:05:01,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:05:01,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:05:01,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:05:01,470.470 INFO    ] time= 13/06/2026 17:05:01
[2026-06-13 17:05:01,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:05:01,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:05:01,554.554 INFO    ] No existing commands found in stream
[2026-06-13 17:05:06,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:05:06,563.563 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 17:05:09,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:05:09,279.279 INFO    ] Checking for system updates...
[2026-06-13 17:05:09,300.300 INFO    ] 200
[2026-06-13 17:05:09,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:09,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:09,334.334 INFO    ] No update needed
[2026-06-13 17:05:09,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 17:05:09,356.356 INFO    ] 200
[2026-06-13 17:05:09,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:09,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:05:09,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:09,421.421 INFO    ] No camera update needed
[2026-06-13 17:05:09,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:05:09,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:05:09,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:05:09,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:05:11,468.468 INFO    ] ================================================
[2026-06-13 17:05:11,484.484 INFO    ] Launching Daemon at Sat Jun 13 17:05:11 IST 2026
[2026-06-13 17:05:11,494.494 INFO    ] ================================================
[2026-06-13 17:05:11,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:05:11
[2026-06-13 17:05:12,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:05:12,343.343 INFO    ] Initializing speech engine...
[2026-06-13 17:05:12,350.350 INFO    ] 2026-06-13 17:05:12
[2026-06-13 17:05:12,555.555 INFO    ] 2026-06-13 17:05:12
[2026-06-13 17:05:12,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:05:12,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:05:12,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:05:12,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:05:12,954.954 INFO    ] time= 13/06/2026 17:05:12
[2026-06-13 17:05:13,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:05:13,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:05:13,077.077 INFO    ] No existing commands found in stream
[2026-06-13 17:05:18,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:05:18,095.095 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 17:05:21,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:05:21,596.596 INFO    ] Checking for system updates...
[2026-06-13 17:05:21,618.618 INFO    ] 200
[2026-06-13 17:05:21,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:21,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:21,654.654 INFO    ] No update needed
[2026-06-13 17:05:21,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 17:05:21,678.678 INFO    ] 200
[2026-06-13 17:05:21,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:21,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:05:21,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:05:21,755.755 INFO    ] No camera update needed
[2026-06-13 17:05:21,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:05:21,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:05:21,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:05:21,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:05:23,803.803 INFO    ] ================================================
[2026-06-13 17:05:23,818.818 INFO    ] Launching Daemon at Sat Jun 13 17:05:23 IST 2026
[2026-06-13 17:05:23,828.828 INFO    ] ================================================
[2026-06-13 17:05:24,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:05:24
[2026-06-13 17:05:24,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:05:24,887.887 INFO    ] Initializing speech engine...
[2026-06-13 17:05:24,897.897 INFO    ] 2026-06-13 17:05:24
[2026-06-13 17:05:25,151.151 INFO    ] 2026-06-13 17:05:25
[2026-06-13 17:05:25,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:05:25,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:05:25,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:05:25,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:05:25,484.484 INFO    ] time= 13/06/2026 17:05:25
[2026-06-13 17:05:25,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:05:25,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:05:25,596.596 INFO    ] No existing commands found in stream
[2026-06-13 17:05:30,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:05:30,613.613 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 17:05:33,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:05:33,645.645 INFO    ] Checking for system updates...
[2026-06-13 17:05:33,681.681 INFO    ] 200
[2026-06-13 17:05:33,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:33,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:33,746.746 INFO    ] No update needed
[2026-06-13 17:05:33,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 17:05:33,783.783 INFO    ] 200
[2026-06-13 17:05:33,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:33,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:05:33,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:33,870.870 INFO    ] No camera update needed
[2026-06-13 17:05:33,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:05:33,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:05:33,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:05:33,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:05:35,927.927 INFO    ] ================================================
[2026-06-13 17:05:35,942.942 INFO    ] Launching Daemon at Sat Jun 13 17:05:35 IST 2026
[2026-06-13 17:05:35,953.953 INFO    ] ================================================
[2026-06-13 17:05:36,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:05:36
[2026-06-13 17:05:36,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:05:36,793.793 INFO    ] Initializing speech engine...
[2026-06-13 17:05:36,797.797 INFO    ] 2026-06-13 17:05:36
[2026-06-13 17:05:37,001.001 INFO    ] 2026-06-13 17:05:36
[2026-06-13 17:05:37,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:05:37,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:05:37,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:05:37,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:05:37,405.405 INFO    ] time= 13/06/2026 17:05:37
[2026-06-13 17:05:37,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:05:37,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:05:37,515.515 INFO    ] No existing commands found in stream
[2026-06-13 17:05:42,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:05:42,527.527 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 17:05:46,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:05:46,859.859 INFO    ] Checking for system updates...
[2026-06-13 17:05:46,881.881 INFO    ] 200
[2026-06-13 17:05:46,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:46,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:46,916.916 INFO    ] No update needed
[2026-06-13 17:05:46,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 17:05:46,938.938 INFO    ] 200
[2026-06-13 17:05:46,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:46,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:05:47,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:05:47,006.006 INFO    ] No camera update needed
[2026-06-13 17:05:47,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:05:47,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:05:47,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:05:47,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:05:49,055.055 INFO    ] ================================================
[2026-06-13 17:05:49,070.070 INFO    ] Launching Daemon at Sat Jun 13 17:05:49 IST 2026
[2026-06-13 17:05:49,082.082 INFO    ] ================================================
[2026-06-13 17:05:49,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:05:49
[2026-06-13 17:05:49,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:05:49,924.924 INFO    ] Initializing speech engine...
[2026-06-13 17:05:49,930.930 INFO    ] 2026-06-13 17:05:49
[2026-06-13 17:05:50,138.138 INFO    ] 2026-06-13 17:05:50
[2026-06-13 17:05:50,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:05:50,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:05:50,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:05:50,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:05:50,558.558 INFO    ] time= 13/06/2026 17:05:50
[2026-06-13 17:05:50,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:05:50,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:05:50,655.655 INFO    ] No existing commands found in stream
[2026-06-13 17:05:55,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:05:55,673.673 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 17:05:59,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:05:59,865.865 INFO    ] Checking for system updates...
[2026-06-13 17:05:59,887.887 INFO    ] 200
[2026-06-13 17:05:59,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:59,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:05:59,922.922 INFO    ] No update needed
[2026-06-13 17:05:59,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 17:05:59,943.943 INFO    ] 200
[2026-06-13 17:05:59,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:05:59,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:00,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:00,016.016 INFO    ] No camera update needed
[2026-06-13 17:06:00,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:00,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:00,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:00,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:02,081.081 INFO    ] ================================================
[2026-06-13 17:06:02,113.113 INFO    ] Launching Daemon at Sat Jun 13 17:06:02 IST 2026
[2026-06-13 17:06:02,134.134 INFO    ] ================================================
[2026-06-13 17:06:02,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:02
[2026-06-13 17:06:02,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:03,107.107 INFO    ] Initializing speech engine...
[2026-06-13 17:06:03,116.116 INFO    ] 2026-06-13 17:06:03
[2026-06-13 17:06:03,335.335 INFO    ] 2026-06-13 17:06:03
[2026-06-13 17:06:03,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:03,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:03,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:03,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:03,565.565 INFO    ] time= 13/06/2026 17:06:03
[2026-06-13 17:06:03,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:03,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:03,656.656 INFO    ] No existing commands found in stream
[2026-06-13 17:06:08,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:06:08,693.693 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 17:06:11,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:06:11,310.310 INFO    ] Checking for system updates...
[2026-06-13 17:06:11,331.331 INFO    ] 200
[2026-06-13 17:06:11,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:11,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:06:11,367.367 INFO    ] No update needed
[2026-06-13 17:06:11,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 17:06:11,391.391 INFO    ] 200
[2026-06-13 17:06:11,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:11,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:11,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:06:11,462.462 INFO    ] No camera update needed
[2026-06-13 17:06:11,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:11,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:11,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:11,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:13,510.510 INFO    ] ================================================
[2026-06-13 17:06:13,526.526 INFO    ] Launching Daemon at Sat Jun 13 17:06:13 IST 2026
[2026-06-13 17:06:13,538.538 INFO    ] ================================================
[2026-06-13 17:06:13,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:13
[2026-06-13 17:06:14,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:14,381.381 INFO    ] Initializing speech engine...
[2026-06-13 17:06:14,386.386 INFO    ] 2026-06-13 17:06:14
[2026-06-13 17:06:14,596.596 INFO    ] 2026-06-13 17:06:14
[2026-06-13 17:06:14,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:14,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:14,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:14,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:15,009.009 INFO    ] time= 13/06/2026 17:06:14
[2026-06-13 17:06:15,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:15,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:15,124.124 INFO    ] No existing commands found in stream
[2026-06-13 17:06:20,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:06:20,141.141 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 17:06:21,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:06:21,354.354 INFO    ] Checking for system updates...
[2026-06-13 17:06:21,376.376 INFO    ] 200
[2026-06-13 17:06:21,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:21,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:21,414.414 INFO    ] No update needed
[2026-06-13 17:06:21,415.415 INFO    ] Checking for camera pi updates...
[2026-06-13 17:06:21,436.436 INFO    ] 200
[2026-06-13 17:06:21,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:21,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:21,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:21,509.509 INFO    ] No camera update needed
[2026-06-13 17:06:21,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:21,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:21,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:21,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:23,557.557 INFO    ] ================================================
[2026-06-13 17:06:23,574.574 INFO    ] Launching Daemon at Sat Jun 13 17:06:23 IST 2026
[2026-06-13 17:06:23,584.584 INFO    ] ================================================
[2026-06-13 17:06:23,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:23
[2026-06-13 17:06:24,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:24,409.409 INFO    ] Initializing speech engine...
[2026-06-13 17:06:24,413.413 INFO    ] 2026-06-13 17:06:24
[2026-06-13 17:06:24,619.619 INFO    ] 2026-06-13 17:06:24
[2026-06-13 17:06:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:24,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:24,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:24,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:25,032.032 INFO    ] time= 13/06/2026 17:06:24
[2026-06-13 17:06:25,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:25,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:25,130.130 INFO    ] No existing commands found in stream
[2026-06-13 17:06:30,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:06:30,143.143 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 17:06:33,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:06:33,764.764 INFO    ] Checking for system updates...
[2026-06-13 17:06:33,784.784 INFO    ] 200
[2026-06-13 17:06:33,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:33,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:33,820.820 INFO    ] No update needed
[2026-06-13 17:06:33,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 17:06:33,841.841 INFO    ] 200
[2026-06-13 17:06:33,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:33,866.866 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:33,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:33,903.903 INFO    ] No camera update needed
[2026-06-13 17:06:33,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:33,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:33,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:33,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:35,950.950 INFO    ] ================================================
[2026-06-13 17:06:35,966.966 INFO    ] Launching Daemon at Sat Jun 13 17:06:35 IST 2026
[2026-06-13 17:06:35,977.977 INFO    ] ================================================
[2026-06-13 17:06:36,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:36
[2026-06-13 17:06:36,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:36,812.812 INFO    ] Initializing speech engine...
[2026-06-13 17:06:36,816.816 INFO    ] 2026-06-13 17:06:36
[2026-06-13 17:06:37,024.024 INFO    ] 2026-06-13 17:06:37
[2026-06-13 17:06:37,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:37,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:37,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:37,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:37,444.444 INFO    ] time= 13/06/2026 17:06:37
[2026-06-13 17:06:37,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:37,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:37,545.545 INFO    ] No existing commands found in stream
[2026-06-13 17:06:42,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:06:42,559.559 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 17:06:44,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:06:44,034.034 INFO    ] Checking for system updates...
[2026-06-13 17:06:44,055.055 INFO    ] 200
[2026-06-13 17:06:44,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:44,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:06:44,091.091 INFO    ] No update needed
[2026-06-13 17:06:44,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 17:06:44,112.112 INFO    ] 200
[2026-06-13 17:06:44,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:44,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:44,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:06:44,185.185 INFO    ] No camera update needed
[2026-06-13 17:06:44,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:44,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:44,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:44,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:46,231.231 INFO    ] ================================================
[2026-06-13 17:06:46,247.247 INFO    ] Launching Daemon at Sat Jun 13 17:06:46 IST 2026
[2026-06-13 17:06:46,258.258 INFO    ] ================================================
[2026-06-13 17:06:46,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:46
[2026-06-13 17:06:46,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:47,057.057 INFO    ] Initializing speech engine...
[2026-06-13 17:06:47,066.066 INFO    ] 2026-06-13 17:06:47
[2026-06-13 17:06:47,286.286 INFO    ] 2026-06-13 17:06:47
[2026-06-13 17:06:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:47,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:47,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:47,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:47,703.703 INFO    ] time= 13/06/2026 17:06:47
[2026-06-13 17:06:47,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:47,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:47,830.830 INFO    ] No existing commands found in stream
[2026-06-13 17:06:52,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:06:52,844.844 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 17:06:53,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:06:53,444.444 INFO    ] Checking for system updates...
[2026-06-13 17:06:53,465.465 INFO    ] 200
[2026-06-13 17:06:53,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:53,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:53,500.500 INFO    ] No update needed
[2026-06-13 17:06:53,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 17:06:53,521.521 INFO    ] 200
[2026-06-13 17:06:53,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:06:53,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:06:53,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:06:53,589.589 INFO    ] No camera update needed
[2026-06-13 17:06:53,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:06:53,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:06:53,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:06:53,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:06:55,636.636 INFO    ] ================================================
[2026-06-13 17:06:55,651.651 INFO    ] Launching Daemon at Sat Jun 13 17:06:55 IST 2026
[2026-06-13 17:06:55,663.663 INFO    ] ================================================
[2026-06-13 17:06:55,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:06:55
[2026-06-13 17:06:56,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:06:56,435.435 INFO    ] Initializing speech engine...
[2026-06-13 17:06:56,443.443 INFO    ] 2026-06-13 17:06:56
[2026-06-13 17:06:56,656.656 INFO    ] 2026-06-13 17:06:56
[2026-06-13 17:06:56,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:06:56,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:06:56,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:06:57,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:06:57,068.068 INFO    ] time= 13/06/2026 17:06:57
[2026-06-13 17:06:57,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:06:57,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:06:57,182.182 INFO    ] No existing commands found in stream
[2026-06-13 17:07:02,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:07:02,192.192 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 17:07:03,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:07:03,654.654 INFO    ] Checking for system updates...
[2026-06-13 17:07:03,675.675 INFO    ] 200
[2026-06-13 17:07:03,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:03,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:03,708.708 INFO    ] No update needed
[2026-06-13 17:07:03,710.710 INFO    ] Checking for camera pi updates...
[2026-06-13 17:07:03,729.729 INFO    ] 200
[2026-06-13 17:07:03,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:03,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:07:03,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:03,802.802 INFO    ] No camera update needed
[2026-06-13 17:07:03,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:07:03,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:07:03,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:07:03,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:07:05,849.849 INFO    ] ================================================
[2026-06-13 17:07:05,865.865 INFO    ] Launching Daemon at Sat Jun 13 17:07:05 IST 2026
[2026-06-13 17:07:05,877.877 INFO    ] ================================================
[2026-06-13 17:07:06,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:07:06
[2026-06-13 17:07:06,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:07:06,731.731 INFO    ] Initializing speech engine...
[2026-06-13 17:07:06,736.736 INFO    ] 2026-06-13 17:07:06
[2026-06-13 17:07:06,941.941 INFO    ] 2026-06-13 17:07:06
[2026-06-13 17:07:06,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:07:07,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:07:07,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:07:07,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:07:07,351.351 INFO    ] time= 13/06/2026 17:07:07
[2026-06-13 17:07:07,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:07:07,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:07:07,456.456 INFO    ] No existing commands found in stream
[2026-06-13 17:07:12,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:07:12,469.469 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 17:07:16,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:07:16,781.781 INFO    ] Checking for system updates...
[2026-06-13 17:07:16,803.803 INFO    ] 200
[2026-06-13 17:07:16,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:16,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:16,838.838 INFO    ] No update needed
[2026-06-13 17:07:16,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 17:07:16,860.860 INFO    ] 200
[2026-06-13 17:07:16,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:16,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:07:16,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:16,941.941 INFO    ] No camera update needed
[2026-06-13 17:07:16,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:07:16,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:07:16,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:07:16,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:07:19,996.996 INFO    ] ================================================
[2026-06-13 17:07:19,011.011 INFO    ] Launching Daemon at Sat Jun 13 17:07:19 IST 2026
[2026-06-13 17:07:19,022.022 INFO    ] ================================================
[2026-06-13 17:07:19,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:07:19
[2026-06-13 17:07:20,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:07:20,231.231 INFO    ] Initializing speech engine...
[2026-06-13 17:07:20,239.239 INFO    ] 2026-06-13 17:07:20
[2026-06-13 17:07:20,461.461 INFO    ] 2026-06-13 17:07:20
[2026-06-13 17:07:20,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:07:20,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:07:20,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:07:20,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:07:20,850.850 INFO    ] time= 13/06/2026 17:07:20
[2026-06-13 17:07:20,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:07:20,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:07:21,011.011 INFO    ] No existing commands found in stream
[2026-06-13 17:07:26,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:07:26,024.024 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 17:07:27,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:07:27,419.419 INFO    ] Checking for system updates...
[2026-06-13 17:07:27,440.440 INFO    ] 200
[2026-06-13 17:07:27,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:27,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:27,473.473 INFO    ] No update needed
[2026-06-13 17:07:27,475.475 INFO    ] Checking for camera pi updates...
[2026-06-13 17:07:27,495.495 INFO    ] 200
[2026-06-13 17:07:27,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:27,520.520 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:07:27,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:07:27,558.558 INFO    ] No camera update needed
[2026-06-13 17:07:27,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:07:27,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:07:27,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:07:27,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:07:29,607.607 INFO    ] ================================================
[2026-06-13 17:07:29,621.621 INFO    ] Launching Daemon at Sat Jun 13 17:07:29 IST 2026
[2026-06-13 17:07:29,632.632 INFO    ] ================================================
[2026-06-13 17:07:30,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:07:30
[2026-06-13 17:07:30,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:07:31,082.082 INFO    ] Initializing speech engine...
[2026-06-13 17:07:31,093.093 INFO    ] 2026-06-13 17:07:31
[2026-06-13 17:07:31,298.298 INFO    ] 2026-06-13 17:07:31
[2026-06-13 17:07:31,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:07:31,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:07:31,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:07:31,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:07:31,724.724 INFO    ] time= 13/06/2026 17:07:31
[2026-06-13 17:07:31,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:07:31,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:07:31,854.854 INFO    ] No existing commands found in stream
[2026-06-13 17:07:36,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:07:36,868.868 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 17:07:40,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:07:40,454.454 INFO    ] Checking for system updates...
[2026-06-13 17:07:40,475.475 INFO    ] 200
[2026-06-13 17:07:40,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:40,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:07:40,510.510 INFO    ] No update needed
[2026-06-13 17:07:40,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 17:07:40,531.531 INFO    ] 200
[2026-06-13 17:07:40,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:40,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:07:40,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:07:40,700.700 INFO    ] No camera update needed
[2026-06-13 17:07:40,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:07:40,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:07:40,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:07:40,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:07:42,749.749 INFO    ] ================================================
[2026-06-13 17:07:42,764.764 INFO    ] Launching Daemon at Sat Jun 13 17:07:42 IST 2026
[2026-06-13 17:07:42,776.776 INFO    ] ================================================
[2026-06-13 17:07:43,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:07:43
[2026-06-13 17:07:43,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:07:43,615.615 INFO    ] Initializing speech engine...
[2026-06-13 17:07:43,620.620 INFO    ] 2026-06-13 17:07:43
[2026-06-13 17:07:43,829.829 INFO    ] 2026-06-13 17:07:43
[2026-06-13 17:07:43,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:07:44,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:07:44,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:07:44,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:07:44,278.278 INFO    ] time= 13/06/2026 17:07:44
[2026-06-13 17:07:44,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:07:44,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:07:44,352.352 INFO    ] No existing commands found in stream
[2026-06-13 17:07:49,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:07:49,366.366 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 17:07:53,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:07:53,156.156 INFO    ] Checking for system updates...
[2026-06-13 17:07:53,177.177 INFO    ] 200
[2026-06-13 17:07:53,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:53,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:53,214.214 INFO    ] No update needed
[2026-06-13 17:07:53,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 17:07:53,239.239 INFO    ] 200
[2026-06-13 17:07:53,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:07:53,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:07:53,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:07:53,311.311 INFO    ] No camera update needed
[2026-06-13 17:07:53,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:07:53,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:07:53,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:07:53,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:07:55,358.358 INFO    ] ================================================
[2026-06-13 17:07:55,374.374 INFO    ] Launching Daemon at Sat Jun 13 17:07:55 IST 2026
[2026-06-13 17:07:55,385.385 INFO    ] ================================================
[2026-06-13 17:07:55,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:07:55
[2026-06-13 17:07:56,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:07:56,596.596 INFO    ] Initializing speech engine...
[2026-06-13 17:07:56,604.604 INFO    ] 2026-06-13 17:07:56
[2026-06-13 17:07:56,878.878 INFO    ] 2026-06-13 17:07:56
[2026-06-13 17:07:56,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:07:57,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:07:57,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:07:57,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:07:57,387.387 INFO    ] time= 13/06/2026 17:07:57
[2026-06-13 17:07:57,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:07:57,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:07:57,593.593 INFO    ] No existing commands found in stream
[2026-06-13 17:08:02,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:02,620.620 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 17:08:03,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:08:03,143.143 INFO    ] Checking for system updates...
[2026-06-13 17:08:03,180.180 INFO    ] 200
[2026-06-13 17:08:03,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:03,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:08:03,257.257 INFO    ] No update needed
[2026-06-13 17:08:03,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 17:08:03,294.294 INFO    ] 200
[2026-06-13 17:08:03,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:03,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:08:03,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:08:03,383.383 INFO    ] No camera update needed
[2026-06-13 17:08:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:08:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:08:03,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:08:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:08:05,440.440 INFO    ] ================================================
[2026-06-13 17:08:05,456.456 INFO    ] Launching Daemon at Sat Jun 13 17:08:05 IST 2026
[2026-06-13 17:08:05,467.467 INFO    ] ================================================
[2026-06-13 17:08:05,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:08:05
[2026-06-13 17:08:06,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:08:06,280.280 INFO    ] Initializing speech engine...
[2026-06-13 17:08:06,285.285 INFO    ] 2026-06-13 17:08:06
[2026-06-13 17:08:06,515.515 INFO    ] 2026-06-13 17:08:06
[2026-06-13 17:08:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:08:06,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:08:06,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:08:06,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:08:06,936.936 INFO    ] time= 13/06/2026 17:08:06
[2026-06-13 17:08:06,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:08:06,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:08:07,069.069 INFO    ] No existing commands found in stream
[2026-06-13 17:08:12,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:12,081.081 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 17:08:14,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:08:14,845.845 INFO    ] Checking for system updates...
[2026-06-13 17:08:14,867.867 INFO    ] 200
[2026-06-13 17:08:14,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:14,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:14,900.900 INFO    ] No update needed
[2026-06-13 17:08:14,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 17:08:14,921.921 INFO    ] 200
[2026-06-13 17:08:14,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:14,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:08:14,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:14,986.986 INFO    ] No camera update needed
[2026-06-13 17:08:14,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:08:14,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:08:14,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:08:14,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:08:17,035.035 INFO    ] ================================================
[2026-06-13 17:08:17,051.051 INFO    ] Launching Daemon at Sat Jun 13 17:08:17 IST 2026
[2026-06-13 17:08:17,062.062 INFO    ] ================================================
[2026-06-13 17:08:17,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:08:17
[2026-06-13 17:08:17,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:08:17,834.834 INFO    ] Initializing speech engine...
[2026-06-13 17:08:17,838.838 INFO    ] 2026-06-13 17:08:17
[2026-06-13 17:08:18,064.064 INFO    ] 2026-06-13 17:08:18
[2026-06-13 17:08:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:08:18,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:08:18,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:08:18,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:08:18,497.497 INFO    ] time= 13/06/2026 17:08:18
[2026-06-13 17:08:18,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:08:18,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:08:18,618.618 INFO    ] No existing commands found in stream
[2026-06-13 17:08:23,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:23,632.632 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 17:08:25,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:08:25,494.494 INFO    ] Checking for system updates...
[2026-06-13 17:08:25,514.514 INFO    ] 200
[2026-06-13 17:08:25,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:25,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:25,549.549 INFO    ] No update needed
[2026-06-13 17:08:25,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 17:08:25,571.571 INFO    ] 200
[2026-06-13 17:08:25,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:25,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:08:25,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:25,652.652 INFO    ] No camera update needed
[2026-06-13 17:08:25,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:08:25,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:08:25,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:08:25,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:08:27,701.701 INFO    ] ================================================
[2026-06-13 17:08:27,716.716 INFO    ] Launching Daemon at Sat Jun 13 17:08:27 IST 2026
[2026-06-13 17:08:27,727.727 INFO    ] ================================================
[2026-06-13 17:08:28,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:08:28
[2026-06-13 17:08:28,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:08:28,497.497 INFO    ] Initializing speech engine...
[2026-06-13 17:08:28,507.507 INFO    ] 2026-06-13 17:08:28
[2026-06-13 17:08:28,709.709 INFO    ] 2026-06-13 17:08:28
[2026-06-13 17:08:28,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:08:28,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:08:28,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:08:29,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:08:29,103.103 INFO    ] time= 13/06/2026 17:08:29
[2026-06-13 17:08:29,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:08:29,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:08:29,222.222 INFO    ] No existing commands found in stream
[2026-06-13 17:08:34,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:34,235.235 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 17:08:37,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:08:37,260.260 INFO    ] Checking for system updates...
[2026-06-13 17:08:37,281.281 INFO    ] 200
[2026-06-13 17:08:37,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:37,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:08:37,314.314 INFO    ] No update needed
[2026-06-13 17:08:37,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 17:08:37,338.338 INFO    ] 200
[2026-06-13 17:08:37,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:37,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:08:37,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:37,403.403 INFO    ] No camera update needed
[2026-06-13 17:08:37,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:08:37,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:08:37,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:08:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:08:39,451.451 INFO    ] ================================================
[2026-06-13 17:08:39,466.466 INFO    ] Launching Daemon at Sat Jun 13 17:08:39 IST 2026
[2026-06-13 17:08:39,477.477 INFO    ] ================================================
[2026-06-13 17:08:39,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:08:39
[2026-06-13 17:08:40,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:08:40,261.261 INFO    ] Initializing speech engine...
[2026-06-13 17:08:40,265.265 INFO    ] 2026-06-13 17:08:40
[2026-06-13 17:08:40,481.481 INFO    ] 2026-06-13 17:08:40
[2026-06-13 17:08:40,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:08:40,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:08:40,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:08:40,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:08:40,878.878 INFO    ] time= 13/06/2026 17:08:40
[2026-06-13 17:08:40,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:08:40,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:08:41,011.011 INFO    ] No existing commands found in stream
[2026-06-13 17:08:46,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:46,023.023 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 17:08:47,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:08:47,340.340 INFO    ] Checking for system updates...
[2026-06-13 17:08:47,361.361 INFO    ] 200
[2026-06-13 17:08:47,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:47,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:47,395.395 INFO    ] No update needed
[2026-06-13 17:08:47,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 17:08:47,415.415 INFO    ] 200
[2026-06-13 17:08:47,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:08:47,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:08:47,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:08:47,481.481 INFO    ] No camera update needed
[2026-06-13 17:08:47,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:08:47,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:08:47,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:08:47,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:08:49,532.532 INFO    ] ================================================
[2026-06-13 17:08:49,547.547 INFO    ] Launching Daemon at Sat Jun 13 17:08:49 IST 2026
[2026-06-13 17:08:49,557.557 INFO    ] ================================================
[2026-06-13 17:08:49,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:08:49
[2026-06-13 17:08:50,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:08:50,349.349 INFO    ] Initializing speech engine...
[2026-06-13 17:08:50,355.355 INFO    ] 2026-06-13 17:08:50
[2026-06-13 17:08:50,571.571 INFO    ] 2026-06-13 17:08:50
[2026-06-13 17:08:50,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:08:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:08:50,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:08:50,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:08:50,947.947 INFO    ] time= 13/06/2026 17:08:50
[2026-06-13 17:08:51,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:08:51,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:08:51,128.128 INFO    ] No existing commands found in stream
[2026-06-13 17:08:56,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:08:56,142.142 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 17:09:00,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:09:00,131.131 INFO    ] Checking for system updates...
[2026-06-13 17:09:00,153.153 INFO    ] 200
[2026-06-13 17:09:00,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:00,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:00,190.190 INFO    ] No update needed
[2026-06-13 17:09:00,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 17:09:00,211.211 INFO    ] 200
[2026-06-13 17:09:00,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:00,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:09:00,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:00,282.282 INFO    ] No camera update needed
[2026-06-13 17:09:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:09:00,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:09:00,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:09:00,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:09:02,335.335 INFO    ] ================================================
[2026-06-13 17:09:02,345.345 INFO    ] Launching Daemon at Sat Jun 13 17:09:02 IST 2026
[2026-06-13 17:09:02,353.353 INFO    ] ================================================
[2026-06-13 17:09:02,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:09:02
[2026-06-13 17:09:03,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:09:03,199.199 INFO    ] Initializing speech engine...
[2026-06-13 17:09:03,209.209 INFO    ] 2026-06-13 17:09:03
[2026-06-13 17:09:03,442.442 INFO    ] 2026-06-13 17:09:03
[2026-06-13 17:09:03,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:09:03,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:09:03,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:09:03,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:09:03,808.808 INFO    ] time= 13/06/2026 17:09:03
[2026-06-13 17:09:03,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:09:03,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:09:03,907.907 INFO    ] No existing commands found in stream
[2026-06-13 17:09:08,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:09:08,946.946 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 17:09:12,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:09:12,136.136 INFO    ] Checking for system updates...
[2026-06-13 17:09:12,157.157 INFO    ] 200
[2026-06-13 17:09:12,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:12,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:12,193.193 INFO    ] No update needed
[2026-06-13 17:09:12,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 17:09:12,219.219 INFO    ] 200
[2026-06-13 17:09:12,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:12,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:09:12,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:12,286.286 INFO    ] No camera update needed
[2026-06-13 17:09:12,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:09:12,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:09:12,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:09:12,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:09:14,334.334 INFO    ] ================================================
[2026-06-13 17:09:14,349.349 INFO    ] Launching Daemon at Sat Jun 13 17:09:14 IST 2026
[2026-06-13 17:09:14,359.359 INFO    ] ================================================
[2026-06-13 17:09:14,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:09:14
[2026-06-13 17:09:15,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:09:15,191.191 INFO    ] Initializing speech engine...
[2026-06-13 17:09:15,199.199 INFO    ] 2026-06-13 17:09:15
[2026-06-13 17:09:15,424.424 INFO    ] 2026-06-13 17:09:15
[2026-06-13 17:09:15,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:09:15,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:09:15,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:09:15,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:09:15,824.824 INFO    ] time= 13/06/2026 17:09:15
[2026-06-13 17:09:15,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:09:15,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:09:15,939.939 INFO    ] No existing commands found in stream
[2026-06-13 17:09:20,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:09:20,951.951 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 17:09:24,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:09:24,059.059 INFO    ] Checking for system updates...
[2026-06-13 17:09:24,080.080 INFO    ] 200
[2026-06-13 17:09:24,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:24,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:24,113.113 INFO    ] No update needed
[2026-06-13 17:09:24,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 17:09:24,133.133 INFO    ] 200
[2026-06-13 17:09:24,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:24,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:09:24,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:24,197.197 INFO    ] No camera update needed
[2026-06-13 17:09:24,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:09:24,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:09:24,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:09:24,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:09:26,249.249 INFO    ] ================================================
[2026-06-13 17:09:26,264.264 INFO    ] Launching Daemon at Sat Jun 13 17:09:26 IST 2026
[2026-06-13 17:09:26,274.274 INFO    ] ================================================
[2026-06-13 17:09:26,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:09:26
[2026-06-13 17:09:26,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:09:27,140.140 INFO    ] Initializing speech engine...
[2026-06-13 17:09:27,145.145 INFO    ] 2026-06-13 17:09:27
[2026-06-13 17:09:27,349.349 INFO    ] 2026-06-13 17:09:27
[2026-06-13 17:09:27,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:09:27,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:09:27,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:09:27,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:09:27,760.760 INFO    ] time= 13/06/2026 17:09:27
[2026-06-13 17:09:27,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:09:27,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:09:27,865.865 INFO    ] No existing commands found in stream
[2026-06-13 17:09:32,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:09:32,877.877 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 17:09:36,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:09:36,515.515 INFO    ] Checking for system updates...
[2026-06-13 17:09:36,537.537 INFO    ] 200
[2026-06-13 17:09:36,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:36,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:09:36,570.570 INFO    ] No update needed
[2026-06-13 17:09:36,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 17:09:36,591.591 INFO    ] 200
[2026-06-13 17:09:36,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:36,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:09:36,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:36,656.656 INFO    ] No camera update needed
[2026-06-13 17:09:36,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:09:36,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:09:36,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:09:36,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:09:38,703.703 INFO    ] ================================================
[2026-06-13 17:09:38,718.718 INFO    ] Launching Daemon at Sat Jun 13 17:09:38 IST 2026
[2026-06-13 17:09:38,728.728 INFO    ] ================================================
[2026-06-13 17:09:39,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:09:39
[2026-06-13 17:09:39,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:09:39,531.531 INFO    ] Initializing speech engine...
[2026-06-13 17:09:39,536.536 INFO    ] 2026-06-13 17:09:39
[2026-06-13 17:09:39,741.741 INFO    ] 2026-06-13 17:09:39
[2026-06-13 17:09:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:09:39,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:09:39,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:09:40,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:09:40,159.159 INFO    ] time= 13/06/2026 17:09:40
[2026-06-13 17:09:40,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:09:40,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:09:40,266.266 INFO    ] No existing commands found in stream
[2026-06-13 17:09:40,578.578 INFO    ] Received new command: ID=1781350780546-0
[2026-06-13 17:09:40,580.580 INFO    ] process_and_cleanup_command: msg_id=1781350780546-0
[2026-06-13 17:09:40,606.606 INFO    ] is_command_expired: timestamp=2026-06-13T11:39:40.322Z, expiry=30s
[2026-06-13 17:09:40,691.691 INFO    ] Command removed from stream: 1781350780546-0. returning for processing...
[2026-06-13 17:09:40,694.694 INFO    ] ***** get_valid_command
[2026-06-13 17:09:40,699.699 INFO    ] {'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1781350780322-klaz0mo5e","orderId":"TM08202203260613170835152","is_vending":false}', 'timeout': '10', 'timestamp': '2026-06-13T11:39:40.322Z'}
[2026-06-13 17:09:40,702.702 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781350780322-klaz0mo5e', 'orderId': 'TM08202203260613170835152'}
[2026-06-13 17:09:40,706.706 INFO    ] Handling start order...
[2026-06-13 17:09:40,709.709 INFO    ] handle_start_order_command
[2026-06-13 17:09:40,715.715 INFO    ] _send_start_order_success: request_id=start-order-1781350780322-klaz0mo5e, order_id=TM08202203260613170835152
[2026-06-13 17:09:40,718.718 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 17:09:40,808.808 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781350780768-0
[2026-06-13 17:09:40,817.817 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 17:09:40,822.822 INFO    ] Checking for system updates...
[2026-06-13 17:09:40,856.856 INFO    ] 200
[2026-06-13 17:09:40,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:40,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:40,914.914 INFO    ] No update needed
[2026-06-13 17:09:40,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 17:09:40,968.968 INFO    ] 200
[2026-06-13 17:09:40,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:41,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:09:41,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:09:41,073.073 INFO    ] No camera update needed
[2026-06-13 17:09:41,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:09:41,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:09:41,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:09:41,145.145 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:09:41,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:09:43,208.208 INFO    ] ================================================
[2026-06-13 17:09:43,223.223 INFO    ] Launching Daemon at Sat Jun 13 17:09:43 IST 2026
[2026-06-13 17:09:43,234.234 INFO    ] ================================================
[2026-06-13 17:09:43,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:09:43
[2026-06-13 17:09:43,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:09:44,074.074 INFO    ] Initializing speech engine...
[2026-06-13 17:09:44,079.079 INFO    ] 2026-06-13 17:09:44
[2026-06-13 17:09:44,287.287 INFO    ] 2026-06-13 17:09:44
[2026-06-13 17:09:44,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:09:44,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:09:44,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:09:44,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:09:44,677.677 INFO    ] time= 13/06/2026 17:09:44
[2026-06-13 17:09:44,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:09:44,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:09:44,805.805 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 17:09:44,807.807 INFO    ] Checking historical command: ID=1781350780768-0
[2026-06-13 17:09:44,832.832 INFO    ] process_and_cleanup_command: msg_id=1781350780768-0
[2026-06-13 17:09:44,857.857 INFO    ] is_command_expired: timestamp=2026-06-13T11:39:40.716479Z, expiry=30s
[2026-06-13 17:09:44,943.943 INFO    ] Command removed from stream: 1781350780768-0. returning for processing...
[2026-06-13 17:09:44,947.947 INFO    ] ***** get_valid_command
[2026-06-13 17:09:44,951.951 INFO    ] {'status': 'success', 'imei': 'TM08202203', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613170835152', 'metadata_request_id': 'start-order-1781350780322-klaz0mo5e', 'timestamp': '2026-06-13T11:39:40.716479Z'}
[2026-06-13 17:09:44,956.956 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 17:09:45,030.030 INFO    ] Received new command: ID=1781350785016-0
[2026-06-13 17:09:45,035.035 INFO    ] process_and_cleanup_command: msg_id=1781350785016-0
[2026-06-13 17:09:45,038.038 INFO    ] is_command_expired: timestamp=2026-06-13T11:39:44.881Z, expiry=30s
[2026-06-13 17:09:45,124.124 INFO    ] Command removed from stream: 1781350785016-0. returning for processing...
[2026-06-13 17:09:45,127.127 INFO    ] ***** get_valid_command
[2026-06-13 17:09:45,152.152 INFO    ] {'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-13T11:39:44.881Z', 'data': '{"request_id":"process-order-1781350784881-nov2kdumo","orderId":"TM08202203260613170835152","is_vending":false,"accessCode":"74308407"}', 'source': 'webapp'}
[2026-06-13 17:09:45,159.159 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '74308407', 'request_id': 'process-order-1781350784881-nov2kdumo', 'orderId': 'TM08202203260613170835152'}
[2026-06-13 17:09:45,180.180 INFO    ] Handling process order...
[2026-06-13 17:09:45,182.182 INFO    ] Processing process-order command...
[2026-06-13 17:09:45,186.186 INFO    ] 🔍 Lock file Order ID: TM08202203260613170835152, TS: 2026-06-13 17:09:40
[2026-06-13 17:09:45,195.195 INFO    ] ✅ Order lock valid for TM08202203260613170835152
[2026-06-13 17:09:45,198.198 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 17:09:45,201.201 INFO    ] processing access code 74308407 for order TM08202203260613170835152
[2026-06-13 17:09:45,205.205 INFO    ] 🔍 Lock file Order ID: TM08202203260613170835152, TS: 2026-06-13 17:09:40
[2026-06-13 17:09:45,208.208 INFO    ] ✅ Order lock valid for TM08202203260613170835152
[2026-06-13 17:09:45,211.211 INFO    ] 2026-06-13 17:09:45
[2026-06-13 17:09:45,283.283 INFO    ] 200
[2026-06-13 17:09:45,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:09:45,289.289 INFO    ] 74308407
[2026-06-13 17:09:45,293.293 INFO    ] 2026-06-13 17:09:45
[2026-06-13 17:09:45,297.297 INFO    ] session id :938524735
[2026-06-13 17:09:45,301.301 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=74308407&imei=TM08202203&session_id=938524735
[2026-06-13 17:09:47,516.516 INFO    ] 200
[2026-06-13 17:09:47,517.517 INFO    ] {"data": {"mobile": "8768026072", "order_id": "TM08202203260613170835152", "bill_amount": "95", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500623-9349.webp", "skuid": "4500623", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "tray_id": "14", "unit_price": 19, "qty": 5, "sku_total": 95, "offer_id": "4500623_0803"}], "access_code": "74308407", "invoice_bill": "95"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 17:09:47,519.519 INFO    ] 95
[2026-06-13 17:09:47,521.521 INFO    ] TM08202203260613170835152
[2026-06-13 17:09:47,522.522 INFO    ] 8768026072
[2026-06-13 17:09:47,523.523 INFO    ] 2026-06-13 17:09:47
[2026-06-13 17:09:47,525.525 INFO    ] Door Opening for user mobile ending with  six zero seven two 
[2026-06-13 17:09:47,526.526 INFO    ] Door Opening for user mobile ending with  six zero seven two 
[2026-06-13 17:09:47,528.528 INFO    ] 050e5f33f8ebbc38b209c8d8e85845b4
[2026-06-13 17:09:47,529.529 INFO    ] 2026-06-13 17:09:47
[2026-06-13 17:09:47,530.530 INFO    ] playing audio file
[2026-06-13 17:09:47,541.541 INFO    ] 2026-06-13 17:09:47
[2026-06-13 17:09:47,542.542 INFO    ] 2026-06-13 17:09:47
[2026-06-13 17:09:47,545.545 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:09:47,546.546 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:09:47,614.614 INFO    ] [publish_status] Message added to stream with ID: 1781350787603-0
[2026-06-13 17:09:47,616.616 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"invoice_bill": "95", "proposed_sku_json": [{"skuid": "4500623", "sku_total": 95, "tray_id": "14", "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "door_id": "1", "offer_desc": "", "qty": 5, "mrp": "20", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "unit_price": 19, "offer_id": "4500623_0803"}], "order_id": "TM08202203260613170835152", "mobile": "8768026072", "bill_amount": "95", "access_code": "74308407"}}', 'order_id': 'TM08202203260613170835152', 'server_status': 'order-started', 'timestamp': '2026-06-13T11:39:47.543794Z'} (ID: 1781350787603-0)
[2026-06-13 17:09:47,945.945 INFO    ] {'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'invoice_bill': '95', 'proposed_sku_json': [{'skuid': '4500623', 'sku_total': 95, 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '1', 'offer_desc': '', 'qty': 5, 'mrp': '20', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'unit_price': 19, 'offer_id': '4500623_0803'}], 'order_id': 'TM08202203260613170835152', 'mobile': '8768026072', 'bill_amount': '95', 'access_code': '74308407'}}, 'order_id': 'TM08202203260613170835152', 'server_status': 'order-started'}
[2026-06-13 17:09:47,947.947 INFO    ] 200
[2026-06-13 17:09:47,950.950 INFO    ] {"data":{"server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"invoice_bill":"95","proposed_sku_json":[{"skuid":"4500623","sku_total":95,"tray_id":"14","image_url":"https:\/\/images.tinymart.in\/product\/4500623-9349.webp","door_id":"1","offer_desc":"","qty":5,"mrp":"20","name":"Madmix Lemon Mirchi Millet Bhujia 27gm","unit_price":19,"offer_id":"4500623_0803"}],"order_id":"TM08202203260613170835152","mobile":"8768026072","bill_amount":"95","access_code":"74308407"}},"order_id":"TM08202203260613170835152","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 17:09:47,954.954 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'invoice_bill': '95', 'proposed_sku_json': [{'skuid': '4500623', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '1', 'offer_desc': '', 'unit_price': 19, 'sku_total': 95, 'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'mrp': '20', 'offer_id': '4500623_0803'}], 'order_id': 'TM08202203260613170835152', 'mobile': '8768026072', 'bill_amount': '95', 'access_code': '74308407'}}, 'server_status': 'order-started'}}
[2026-06-13 17:09:47,957.957 INFO    ] 2026-06-13 17:09:47
[2026-06-13 17:09:48,001.001 INFO    ] 200
[2026-06-13 17:09:48,004.004 INFO    ] True
[2026-06-13 17:09:48,120.120 INFO    ] 200
[2026-06-13 17:09:48,122.122 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 17:09:48,124.124 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:09:48,126.126 INFO    ] *** process_order ***
[2026-06-13 17:09:49,326.326 INFO    ] 200
[2026-06-13 17:09:49,329.329 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 17:09:49,333.333 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'delay': 0, 'rstatus': True}
[2026-06-13 17:09:49,335.335 INFO    ] *** process_order ***
[2026-06-13 17:09:49,339.339 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:09:49,341.341 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:09:49,408.408 INFO    ] [publish_status] Message added to stream with ID: 1781350789396-0
[2026-06-13 17:09:49,411.411 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "delay": 0, "rstatus": true}', 'order_id': 'TM08202203260613170835152', 'server_status': 'doorOpened'} (ID: 1781350789396-0)
[2026-06-13 17:09:50,452.452 INFO    ] 2026-06-13 17:09:50
[2026-06-13 17:09:50,455.455 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:09:50,459.459 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:09:50,512.512 INFO    ] [publish_status] Message added to stream with ID: 1781350790500-0
[2026-06-13 17:09:50,515.515 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": ""}, "delay": 0, "rstatus": true}', 'order_id': 'TM08202203260613170835152', 'server_status': 'processOrder', 'timestamp': '2026-06-13T11:39:50.454137Z'} (ID: 1781350790500-0)
[2026-06-13 17:09:50,619.619 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': ''}, 'delay': 0, 'rstatus': True}, 'order_id': 'TM08202203260613170835152', 'server_status': 'processOrder'}
[2026-06-13 17:09:50,622.622 INFO    ] 200
[2026-06-13 17:09:50,625.625 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":"","UI_Header":""},"delay":0,"rstatus":true},"order_id":"TM08202203260613170835152","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 17:09:50,629.629 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'rstatus': True}, 'server_status': 'processOrder'}}
[2026-06-13 17:09:50,632.632 INFO    ] 2026-06-13 17:09:50
[2026-06-13 17:09:50,635.635 INFO    ] None
[2026-06-13 17:09:50,637.637 INFO    ] Opening Door now
[2026-06-13 17:09:50,641.641 INFO    ] Opening Door now
[2026-06-13 17:09:50,644.644 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 17:09:50,647.647 INFO    ] 2026-06-13 17:09:50
[2026-06-13 17:09:50,650.650 INFO    ] playing audio file
[2026-06-13 17:09:50,670.670 INFO    ] 2026-06-13 17:09:50
[2026-06-13 17:09:50,674.674 INFO    ] 2026-06-13 17:09:50
[2026-06-13 17:09:53,718.718 INFO    ] 200
[2026-06-13 17:09:53,720.720 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 17:09:53,722.722 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:09:56,803.803 INFO    ] 200
[2026-06-13 17:09:56,805.805 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 17:09:56,806.806 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:09:59,882.882 INFO    ] 200
[2026-06-13 17:09:59,885.885 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 17:09:59,889.889 INFO    ] Please close door 1
[2026-06-13 17:09:59,892.892 INFO    ] Please close door 1
[2026-06-13 17:09:59,895.895 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 17:09:59,899.899 INFO    ] 2026-06-13 17:09:59
[2026-06-13 17:09:59,903.903 INFO    ] playing audio file
[2026-06-13 17:09:59,930.930 INFO    ] 2026-06-13 17:09:59
[2026-06-13 17:09:59,935.935 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:09:59,940.940 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:09:59,987.987 INFO    ] [publish_status] Message added to stream with ID: 1781350799975-0
[2026-06-13 17:09:59,992.992 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "SectionSKU": {"skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}, "rstatus": false}', 'order_id': 'TM08202203260613170835152', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T11:39:59.933070Z'} (ID: 1781350799975-0)
[2026-06-13 17:10:00,449.449 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}, 'order_id': 'TM08202203260613170835152', 'server_status': 'OrderStatus'}
[2026-06-13 17:10:00,453.453 INFO    ] 200
[2026-06-13 17:10:00,456.456 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","status":"false","SectionSKU":{"skus":[{"qty":5,"name":"Madmix Lemon Mirchi Millet Bhujia 27gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"rstatus":false},"order_id":"TM08202203260613170835152","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 17:10:00,461.461 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': []}, 'rstatus': False}, 'server_status': 'OrderStatus'}}
[2026-06-13 17:10:00,466.466 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:10:03,646.646 INFO    ] 200
[2026-06-13 17:10:03,650.650 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 17:10:03,654.654 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:10:06,685.685 INFO    ] 200
[2026-06-13 17:10:06,687.687 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 5, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 17:10:06,688.688 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 5, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}, 'rstatus': False}
[2026-06-13 17:10:09,738.738 INFO    ] 200
[2026-06-13 17:10:09,740.740 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 17:10:09,742.742 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:10:09,744.744 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:10:09,794.794 INFO    ] [publish_status] Message added to stream with ID: 1781350809783-0
[2026-06-13 17:10:09,795.795 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "status": "True", "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionStatus": {"Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": ""}, "delay": 100, "rstatus": true}', 'order_id': 'TM08202203260613170835152', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T11:40:09.741440Z'} (ID: 1781350809783-0)
[2026-06-13 17:10:10,093.093 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'delay': 100, 'rstatus': True}, 'order_id': 'TM08202203260613170835152', 'server_status': 'OrderStatus'}
[2026-06-13 17:10:10,094.094 INFO    ] 200
[2026-06-13 17:10:10,095.095 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Closed"},"voiceNote":"Transaction Completed","status":"true","SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionStatus":{"Header":" Order is complete ","SubHeader":"Please wait for invoice to generate","Note":"If any due amount, clear at https:\/\/go.tinymart.in","UI_Header":""},"delay":100,"rstatus":true},"order_id":"TM08202203260613170835152","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 17:10:10,097.097 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'rstatus': True}, 'server_status': 'OrderStatus'}}
[2026-06-13 17:10:10,098.098 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'delay': 100, 'rstatus': True}
[2026-06-13 17:10:10,100.100 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,101.101 INFO    ] Order Completed 
[2026-06-13 17:10:10,102.102 INFO    ] Order Completed 
[2026-06-13 17:10:10,104.104 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 17:10:10,105.105 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,107.107 INFO    ] playing audio file
[2026-06-13 17:10:10,124.124 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,128.128 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'delay': 100, 'rstatus': True}
[2026-06-13 17:10:10,131.131 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,805.805 INFO    ] 200
[2026-06-13 17:10:10,808.808 INFO    ] {"res": true, "bill_amount": 100, "orderId": "TM08202203260613170835152", "skus": [{"image_url": "https://images.tinymart.in/product/4500623-9349.webp", "unit_price": "19", "door_id": "", "mrp": "20", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm per peice", "offer_desc": "5% OFF", "skuid": "4500623", "tray_id": "14", "sku_total": 95, "qty": "5", "offer_id": "4500623_0803"}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 95, "order_status": "", "userId": "8768026072", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 17:10:10,812.812 INFO    ] {'total_amount': 95, 'anomaly': 0, 'rstatus': True, 'res': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'userId': '8768026072', 'bill_amount': 100, 'order_status': '', 'skus': [{'skuid': '4500623', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'qty': '5', 'sku_total': 95, 'unit_price': '19', 'offer_desc': '5% OFF', 'mrp': '20', 'offer_id': '4500623_0803'}], 'orderId': 'TM08202203260613170835152'}
[2026-06-13 17:10:10,815.815 INFO    ] {'total_amount': 95, 'anomaly': 0, 'rstatus': True, 'res': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'userId': '8768026072', 'bill_amount': 100, 'order_status': '', 'skus': [{'skuid': '4500623', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'qty': '5', 'sku_total': 95, 'unit_price': '19', 'offer_desc': '5% OFF', 'mrp': '20', 'offer_id': '4500623_0803'}], 'orderId': 'TM08202203260613170835152'}
[2026-06-13 17:10:10,818.818 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,822.822 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,827.827 INFO    ] 95
[2026-06-13 17:10:10,831.831 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,835.835 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,839.839 INFO    ]  Your Bill Amount is 95
[2026-06-13 17:10:10,843.843 INFO    ]  Your Bill Amount is 95
[2026-06-13 17:10:10,846.846 INFO    ] 4ffb9d6b882f850b566336b47e3bd2c1
[2026-06-13 17:10:10,850.850 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,853.853 INFO    ] playing audio file
[2026-06-13 17:10:10,873.873 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,878.878 INFO    ] 2026-06-13 17:10:10
[2026-06-13 17:10:10,883.883 INFO    ] publish_status: order_id=TM08202203260613170835152
[2026-06-13 17:10:10,887.887 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613170835152
[2026-06-13 17:10:10,958.958 INFO    ] [publish_status] Message added to stream with ID: 1781350810945-0
[2026-06-13 17:10:10,962.962 INFO    ] Published to order:TM08202203260613170835152: {'server_response': '{"total_amount": 95, "anomaly": 0, "rstatus": true, "res": true, "imei": "TM08202203", "cart_offer_desc": "", "userId": "8768026072", "bill_amount": 100, "order_status": "", "skus": [{"skuid": "4500623", "tray_id": "14", "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "door_id": "", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm per peice", "qty": "5", "sku_total": 95, "unit_price": "19", "offer_desc": "5% OFF", "mrp": "20", "offer_id": "4500623_0803"}], "orderId": "TM08202203260613170835152"}', 'order_id': 'TM08202203260613170835152', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T11:40:10.880682Z'} (ID: 1781350810945-0)
[2026-06-13 17:10:11,084.084 INFO    ] {'server_response': {'total_amount': 95, 'anomaly': 0, 'rstatus': True, 'res': True, 'imei': 'TM08202203', 'cart_offer_desc': '', 'userId': '8768026072', 'bill_amount': 100, 'order_status': '', 'skus': [{'skuid': '4500623', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'qty': '5', 'sku_total': 95, 'unit_price': '19', 'offer_desc': '5% OFF', 'mrp': '20', 'offer_id': '4500623_0803'}], 'orderId': 'TM08202203260613170835152'}, 'order_id': 'TM08202203260613170835152', 'server_status': 'invoiceOrder'}
[2026-06-13 17:10:11,087.087 INFO    ] 200
[2026-06-13 17:10:11,090.090 INFO    ] {"data":{"server_response":{"total_amount":95,"anomaly":0,"rstatus":true,"res":true,"imei":"TM08202203","cart_offer_desc":"","userId":"8768026072","bill_amount":100,"order_status":"","skus":[{"skuid":"4500623","tray_id":"14","image_url":"https:\/\/images.tinymart.in\/product\/4500623-9349.webp","door_id":"","name":"Madmix Lemon Mirchi Millet Bhujia 27gm per peice","qty":"5","sku_total":95,"unit_price":"19","offer_desc":"5% OFF","mrp":"20","offer_id":"4500623_0803"}],"orderId":"TM08202203260613170835152"},"order_id":"TM08202203260613170835152","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 17:10:11,093.093 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'total_amount': 95, 'anomaly': 0, 'res': True, 'skus': [{'skuid': '4500623', 'sku_total': 95, 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'qty': '5', 'unit_price': '19', 'offer_desc': '5% OFF', 'mrp': '20', 'offer_id': '4500623_0803'}], 'cart_offer_desc': '', 'bill_amount': 100, 'userId': '8768026072', 'rstatus': True, 'order_status': '', 'imei': 'TM08202203', 'orderId': 'TM08202203260613170835152'}, 'server_status': 'invoiceOrder'}}
[2026-06-13 17:10:11,097.097 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613170835152', 'server_response': {'total_amount': 95, 'anomaly': 0, 'res': True, 'skus': [{'skuid': '4500623', 'sku_total': 95, 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'door_id': '', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm per peice', 'qty': '5', 'unit_price': '19', 'offer_desc': '5% OFF', 'mrp': '20', 'offer_id': '4500623_0803'}], 'cart_offer_desc': '', 'bill_amount': 100, 'userId': '8768026072', 'rstatus': True, 'order_status': '', 'imei': 'TM08202203', 'orderId': 'TM08202203260613170835152'}, 'server_status': 'invoiceOrder'}}
[2026-06-13 17:10:11,100.100 INFO    ] 2026-06-13 17:10:11
[2026-06-13 17:10:12,373.373 INFO    ] 200
[2026-06-13 17:10:12,375.375 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 17:10:12,378.378 INFO    ] 2026-06-13 17:10:12
[2026-06-13 17:10:12,489.489 INFO    ] 200
[2026-06-13 17:10:12,491.491 INFO    ] True
[2026-06-13 17:10:12,494.494 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613170835152
[2026-06-13 17:10:12,497.497 INFO    ] start order file deleted
[2026-06-13 17:10:12,500.500 INFO    ] Checking for system updates...
[2026-06-13 17:10:12,535.535 INFO    ] 200
[2026-06-13 17:10:12,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:12,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:10:12,612.612 INFO    ] No update needed
[2026-06-13 17:10:12,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 17:10:12,657.657 INFO    ] 200
[2026-06-13 17:10:12,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:12,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:10:12,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:10:12,779.779 INFO    ] No camera update needed
[2026-06-13 17:10:12,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:10:12,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:10:12,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:10:12,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:10:14,836.836 INFO    ] ================================================
[2026-06-13 17:10:14,852.852 INFO    ] Launching Daemon at Sat Jun 13 17:10:14 IST 2026
[2026-06-13 17:10:14,862.862 INFO    ] ================================================
[2026-06-13 17:10:15,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:10:15
[2026-06-13 17:10:15,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:10:15,684.684 INFO    ] Initializing speech engine...
[2026-06-13 17:10:15,690.690 INFO    ] 2026-06-13 17:10:15
[2026-06-13 17:10:15,896.896 INFO    ] 2026-06-13 17:10:15
[2026-06-13 17:10:15,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:10:16,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:10:16,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:10:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:10:16,321.321 INFO    ] time= 13/06/2026 17:10:16
[2026-06-13 17:10:16,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:10:16,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:10:16,462.462 INFO    ] No existing commands found in stream
[2026-06-13 17:10:21,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:10:21,483.483 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 17:10:24,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:10:24,543.543 INFO    ] Checking for system updates...
[2026-06-13 17:10:24,564.564 INFO    ] 200
[2026-06-13 17:10:24,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:24,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:24,597.597 INFO    ] No update needed
[2026-06-13 17:10:24,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 17:10:24,619.619 INFO    ] 200
[2026-06-13 17:10:24,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:24,644.644 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:10:24,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:24,687.687 INFO    ] No camera update needed
[2026-06-13 17:10:24,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:10:24,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:10:24,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:10:24,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:10:26,737.737 INFO    ] ================================================
[2026-06-13 17:10:26,753.753 INFO    ] Launching Daemon at Sat Jun 13 17:10:26 IST 2026
[2026-06-13 17:10:26,764.764 INFO    ] ================================================
[2026-06-13 17:10:27,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:10:27
[2026-06-13 17:10:27,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:10:27,657.657 INFO    ] Initializing speech engine...
[2026-06-13 17:10:27,667.667 INFO    ] 2026-06-13 17:10:27
[2026-06-13 17:10:27,883.883 INFO    ] 2026-06-13 17:10:27
[2026-06-13 17:10:27,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:10:28,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:10:28,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:10:28,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:10:28,308.308 INFO    ] time= 13/06/2026 17:10:28
[2026-06-13 17:10:28,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:10:28,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:10:28,408.408 INFO    ] No existing commands found in stream
[2026-06-13 17:10:33,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:10:33,420.420 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 17:10:36,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:10:36,457.457 INFO    ] Checking for system updates...
[2026-06-13 17:10:36,478.478 INFO    ] 200
[2026-06-13 17:10:36,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:36,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:36,515.515 INFO    ] No update needed
[2026-06-13 17:10:36,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 17:10:36,537.537 INFO    ] 200
[2026-06-13 17:10:36,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:36,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:10:36,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:36,601.601 INFO    ] No camera update needed
[2026-06-13 17:10:36,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:10:36,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:10:36,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:10:36,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:10:38,650.650 INFO    ] ================================================
[2026-06-13 17:10:38,666.666 INFO    ] Launching Daemon at Sat Jun 13 17:10:38 IST 2026
[2026-06-13 17:10:38,677.677 INFO    ] ================================================
[2026-06-13 17:10:39,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:10:39
[2026-06-13 17:10:39,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:10:39,568.568 INFO    ] Initializing speech engine...
[2026-06-13 17:10:39,573.573 INFO    ] 2026-06-13 17:10:39
[2026-06-13 17:10:39,783.783 INFO    ] 2026-06-13 17:10:39
[2026-06-13 17:10:39,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:10:39,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:10:40,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:10:40,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:10:40,210.210 INFO    ] time= 13/06/2026 17:10:40
[2026-06-13 17:10:40,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:10:40,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:10:40,312.312 INFO    ] No existing commands found in stream
[2026-06-13 17:10:45,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:10:45,326.326 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 17:10:45,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:10:45,645.645 INFO    ] Checking for system updates...
[2026-06-13 17:10:45,666.666 INFO    ] 200
[2026-06-13 17:10:45,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:45,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:45,700.700 INFO    ] No update needed
[2026-06-13 17:10:45,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 17:10:45,723.723 INFO    ] 200
[2026-06-13 17:10:45,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:45,751.751 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:10:45,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:45,795.795 INFO    ] No camera update needed
[2026-06-13 17:10:45,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:10:45,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:10:45,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:10:45,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:10:47,844.844 INFO    ] ================================================
[2026-06-13 17:10:47,860.860 INFO    ] Launching Daemon at Sat Jun 13 17:10:47 IST 2026
[2026-06-13 17:10:47,870.870 INFO    ] ================================================
[2026-06-13 17:10:48,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:10:48
[2026-06-13 17:10:48,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:10:48,746.746 INFO    ] Initializing speech engine...
[2026-06-13 17:10:48,753.753 INFO    ] 2026-06-13 17:10:48
[2026-06-13 17:10:48,955.955 INFO    ] 2026-06-13 17:10:48
[2026-06-13 17:10:48,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:10:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:10:49,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:10:49,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:10:49,356.356 INFO    ] time= 13/06/2026 17:10:49
[2026-06-13 17:10:49,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:10:49,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:10:49,470.470 INFO    ] No existing commands found in stream
[2026-06-13 17:10:54,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:10:54,483.483 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 17:10:55,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:10:55,058.058 INFO    ] Checking for system updates...
[2026-06-13 17:10:55,079.079 INFO    ] 200
[2026-06-13 17:10:55,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:55,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:55,112.112 INFO    ] No update needed
[2026-06-13 17:10:55,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 17:10:55,133.133 INFO    ] 200
[2026-06-13 17:10:55,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:10:55,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:10:55,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:10:55,196.196 INFO    ] No camera update needed
[2026-06-13 17:10:55,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:10:55,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:10:55,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:10:55,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:10:57,244.244 INFO    ] ================================================
[2026-06-13 17:10:57,259.259 INFO    ] Launching Daemon at Sat Jun 13 17:10:57 IST 2026
[2026-06-13 17:10:57,270.270 INFO    ] ================================================
[2026-06-13 17:10:57,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:10:57
[2026-06-13 17:10:57,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:10:58,142.142 INFO    ] Initializing speech engine...
[2026-06-13 17:10:58,148.148 INFO    ] 2026-06-13 17:10:58
[2026-06-13 17:10:58,359.359 INFO    ] 2026-06-13 17:10:58
[2026-06-13 17:10:58,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:10:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:10:58,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:10:58,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:10:58,768.768 INFO    ] time= 13/06/2026 17:10:58
[2026-06-13 17:10:58,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:10:58,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:10:58,886.886 INFO    ] No existing commands found in stream
[2026-06-13 17:11:03,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:11:03,901.901 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 17:11:07,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:11:07,726.726 INFO    ] Checking for system updates...
[2026-06-13 17:11:07,747.747 INFO    ] 200
[2026-06-13 17:11:07,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:07,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:07,782.782 INFO    ] No update needed
[2026-06-13 17:11:07,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 17:11:07,803.803 INFO    ] 200
[2026-06-13 17:11:07,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:07,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:11:07,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:11:07,869.869 INFO    ] No camera update needed
[2026-06-13 17:11:07,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:11:07,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:11:07,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:11:07,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:11:09,919.919 INFO    ] ================================================
[2026-06-13 17:11:09,934.934 INFO    ] Launching Daemon at Sat Jun 13 17:11:09 IST 2026
[2026-06-13 17:11:09,945.945 INFO    ] ================================================
[2026-06-13 17:11:10,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:11:10
[2026-06-13 17:11:10,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:11:10,731.731 INFO    ] Initializing speech engine...
[2026-06-13 17:11:10,739.739 INFO    ] 2026-06-13 17:11:10
[2026-06-13 17:11:10,954.954 INFO    ] 2026-06-13 17:11:10
[2026-06-13 17:11:10,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:11:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:11:11,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:11:11,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:11:11,372.372 INFO    ] time= 13/06/2026 17:11:11
[2026-06-13 17:11:11,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:11:11,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:11:11,478.478 INFO    ] No existing commands found in stream
[2026-06-13 17:11:16,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:11:16,491.491 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 17:11:19,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:11:19,788.788 INFO    ] Checking for system updates...
[2026-06-13 17:11:19,809.809 INFO    ] 200
[2026-06-13 17:11:19,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:19,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:19,845.845 INFO    ] No update needed
[2026-06-13 17:11:19,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 17:11:19,866.866 INFO    ] 200
[2026-06-13 17:11:19,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:19,891.891 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:11:19,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:19,943.943 INFO    ] No camera update needed
[2026-06-13 17:11:19,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:11:19,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:11:19,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:11:19,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:11:21,992.992 INFO    ] ================================================
[2026-06-13 17:11:22,007.007 INFO    ] Launching Daemon at Sat Jun 13 17:11:22 IST 2026
[2026-06-13 17:11:22,019.019 INFO    ] ================================================
[2026-06-13 17:11:22,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:11:22
[2026-06-13 17:11:22,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:11:22,813.813 INFO    ] Initializing speech engine...
[2026-06-13 17:11:22,818.818 INFO    ] 2026-06-13 17:11:22
[2026-06-13 17:11:23,022.022 INFO    ] 2026-06-13 17:11:23
[2026-06-13 17:11:23,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:11:23,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:11:23,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:11:23,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:11:23,408.408 INFO    ] time= 13/06/2026 17:11:23
[2026-06-13 17:11:23,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:11:23,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:11:23,553.553 INFO    ] No existing commands found in stream
[2026-06-13 17:11:28,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:11:28,566.566 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 17:11:30,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:11:30,215.215 INFO    ] Checking for system updates...
[2026-06-13 17:11:30,237.237 INFO    ] 200
[2026-06-13 17:11:30,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:30,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:11:30,273.273 INFO    ] No update needed
[2026-06-13 17:11:30,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 17:11:30,294.294 INFO    ] 200
[2026-06-13 17:11:30,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:30,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:11:30,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:11:30,364.364 INFO    ] No camera update needed
[2026-06-13 17:11:30,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:11:30,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:11:30,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:11:30,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:11:32,412.412 INFO    ] ================================================
[2026-06-13 17:11:32,428.428 INFO    ] Launching Daemon at Sat Jun 13 17:11:32 IST 2026
[2026-06-13 17:11:32,439.439 INFO    ] ================================================
[2026-06-13 17:11:32,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:11:32
[2026-06-13 17:11:33,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:11:33,245.245 INFO    ] Initializing speech engine...
[2026-06-13 17:11:33,257.257 INFO    ] 2026-06-13 17:11:33
[2026-06-13 17:11:33,469.469 INFO    ] 2026-06-13 17:11:33
[2026-06-13 17:11:33,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:11:33,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:11:33,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:11:33,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:11:33,909.909 INFO    ] time= 13/06/2026 17:11:33
[2026-06-13 17:11:33,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:11:33,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:11:34,028.028 INFO    ] No existing commands found in stream
[2026-06-13 17:11:39,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:11:39,043.043 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 17:11:40,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:11:40,258.258 INFO    ] Checking for system updates...
[2026-06-13 17:11:40,279.279 INFO    ] 200
[2026-06-13 17:11:40,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:40,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:40,314.314 INFO    ] No update needed
[2026-06-13 17:11:40,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 17:11:40,336.336 INFO    ] 200
[2026-06-13 17:11:40,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:40,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:11:40,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:40,403.403 INFO    ] No camera update needed
[2026-06-13 17:11:40,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:11:40,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:11:40,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:11:40,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:11:42,453.453 INFO    ] ================================================
[2026-06-13 17:11:42,467.467 INFO    ] Launching Daemon at Sat Jun 13 17:11:42 IST 2026
[2026-06-13 17:11:42,478.478 INFO    ] ================================================
[2026-06-13 17:11:42,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:11:42
[2026-06-13 17:11:43,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:11:43,273.273 INFO    ] Initializing speech engine...
[2026-06-13 17:11:43,277.277 INFO    ] 2026-06-13 17:11:43
[2026-06-13 17:11:43,487.487 INFO    ] 2026-06-13 17:11:43
[2026-06-13 17:11:43,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:11:43,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:11:43,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:11:43,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:11:43,895.895 INFO    ] time= 13/06/2026 17:11:43
[2026-06-13 17:11:43,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:11:43,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:11:44,005.005 INFO    ] No existing commands found in stream
[2026-06-13 17:11:49,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:11:49,019.019 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 17:11:52,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:11:52,061.061 INFO    ] Checking for system updates...
[2026-06-13 17:11:52,082.082 INFO    ] 200
[2026-06-13 17:11:52,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:52,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:52,115.115 INFO    ] No update needed
[2026-06-13 17:11:52,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 17:11:52,138.138 INFO    ] 200
[2026-06-13 17:11:52,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:11:52,164.164 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:11:52,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:11:52,305.305 INFO    ] No camera update needed
[2026-06-13 17:11:52,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:11:52,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:11:52,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:11:52,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:11:54,353.353 INFO    ] ================================================
[2026-06-13 17:11:54,367.367 INFO    ] Launching Daemon at Sat Jun 13 17:11:54 IST 2026
[2026-06-13 17:11:54,378.378 INFO    ] ================================================
[2026-06-13 17:11:54,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:11:54
[2026-06-13 17:11:55,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:11:55,170.170 INFO    ] Initializing speech engine...
[2026-06-13 17:11:55,176.176 INFO    ] 2026-06-13 17:11:55
[2026-06-13 17:11:55,380.380 INFO    ] 2026-06-13 17:11:55
[2026-06-13 17:11:55,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:11:55,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:11:55,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:11:55,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:11:55,812.812 INFO    ] time= 13/06/2026 17:11:55
[2026-06-13 17:11:55,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:11:55,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:11:55,910.910 INFO    ] No existing commands found in stream
[2026-06-13 17:12:00,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:00,928.928 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 17:12:03,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:12:03,588.588 INFO    ] Checking for system updates...
[2026-06-13 17:12:03,625.625 INFO    ] 200
[2026-06-13 17:12:03,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:03,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:03,693.693 INFO    ] No update needed
[2026-06-13 17:12:03,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:03,736.736 INFO    ] 200
[2026-06-13 17:12:03,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:03,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:03,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:03,831.831 INFO    ] No camera update needed
[2026-06-13 17:12:03,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:03,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:03,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:03,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:12:05,893.893 INFO    ] ================================================
[2026-06-13 17:12:05,908.908 INFO    ] Launching Daemon at Sat Jun 13 17:12:05 IST 2026
[2026-06-13 17:12:05,919.919 INFO    ] ================================================
[2026-06-13 17:12:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:12:06
[2026-06-13 17:12:06,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:12:06,738.738 INFO    ] Initializing speech engine...
[2026-06-13 17:12:06,741.741 INFO    ] 2026-06-13 17:12:06
[2026-06-13 17:12:06,958.958 INFO    ] 2026-06-13 17:12:06
[2026-06-13 17:12:06,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:12:07,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:12:07,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:12:07,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:12:07,378.378 INFO    ] time= 13/06/2026 17:12:07
[2026-06-13 17:12:07,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:12:07,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:12:07,477.477 INFO    ] No existing commands found in stream
[2026-06-13 17:12:12,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:12,491.491 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 17:12:14,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:12:14,374.374 INFO    ] Checking for system updates...
[2026-06-13 17:12:14,395.395 INFO    ] 200
[2026-06-13 17:12:14,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:14,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:14,430.430 INFO    ] No update needed
[2026-06-13 17:12:14,431.431 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:14,451.451 INFO    ] 200
[2026-06-13 17:12:14,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:14,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:14,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:14,522.522 INFO    ] No camera update needed
[2026-06-13 17:12:14,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:14,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:14,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:14,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:12:16,571.571 INFO    ] ================================================
[2026-06-13 17:12:16,586.586 INFO    ] Launching Daemon at Sat Jun 13 17:12:16 IST 2026
[2026-06-13 17:12:16,597.597 INFO    ] ================================================
[2026-06-13 17:12:16,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:12:16
[2026-06-13 17:12:17,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:12:17,441.441 INFO    ] Initializing speech engine...
[2026-06-13 17:12:17,446.446 INFO    ] 2026-06-13 17:12:17
[2026-06-13 17:12:17,657.657 INFO    ] 2026-06-13 17:12:17
[2026-06-13 17:12:17,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:12:17,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:12:17,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:12:18,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:12:18,083.083 INFO    ] time= 13/06/2026 17:12:18
[2026-06-13 17:12:18,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:12:18,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:12:18,181.181 INFO    ] No existing commands found in stream
[2026-06-13 17:12:23,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:23,199.199 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 17:12:23,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:12:23,760.760 INFO    ] Checking for system updates...
[2026-06-13 17:12:23,782.782 INFO    ] 200
[2026-06-13 17:12:23,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:23,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:23,815.815 INFO    ] No update needed
[2026-06-13 17:12:23,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:23,838.838 INFO    ] 200
[2026-06-13 17:12:23,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:23,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:23,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:23,888.888 INFO    ] No camera update needed
[2026-06-13 17:12:23,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:23,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:23,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:23,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:12:25,938.938 INFO    ] ================================================
[2026-06-13 17:12:25,954.954 INFO    ] Launching Daemon at Sat Jun 13 17:12:25 IST 2026
[2026-06-13 17:12:25,965.965 INFO    ] ================================================
[2026-06-13 17:12:26,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:12:26
[2026-06-13 17:12:26,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:12:26,747.747 INFO    ] Initializing speech engine...
[2026-06-13 17:12:26,757.757 INFO    ] 2026-06-13 17:12:26
[2026-06-13 17:12:26,959.959 INFO    ] 2026-06-13 17:12:26
[2026-06-13 17:12:26,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:12:27,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:12:27,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:12:27,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:12:27,363.363 INFO    ] time= 13/06/2026 17:12:27
[2026-06-13 17:12:27,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:12:27,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:12:27,473.473 INFO    ] No existing commands found in stream
[2026-06-13 17:12:32,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:32,481.481 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 17:12:34,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:12:34,319.319 INFO    ] Checking for system updates...
[2026-06-13 17:12:34,340.340 INFO    ] 200
[2026-06-13 17:12:34,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:34,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:12:34,374.374 INFO    ] No update needed
[2026-06-13 17:12:34,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:34,395.395 INFO    ] 200
[2026-06-13 17:12:34,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:34,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:34,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:12:34,468.468 INFO    ] No camera update needed
[2026-06-13 17:12:34,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:34,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:34,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:34,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:12:36,521.521 INFO    ] ================================================
[2026-06-13 17:12:36,537.537 INFO    ] Launching Daemon at Sat Jun 13 17:12:36 IST 2026
[2026-06-13 17:12:36,548.548 INFO    ] ================================================
[2026-06-13 17:12:36,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:12:36
[2026-06-13 17:12:37,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:12:37,341.341 INFO    ] Initializing speech engine...
[2026-06-13 17:12:37,344.344 INFO    ] 2026-06-13 17:12:37
[2026-06-13 17:12:37,536.536 INFO    ] 2026-06-13 17:12:37
[2026-06-13 17:12:37,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:12:37,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:12:37,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:12:37,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:12:37,957.957 INFO    ] time= 13/06/2026 17:12:37
[2026-06-13 17:12:37,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:12:38,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:12:38,129.129 INFO    ] No existing commands found in stream
[2026-06-13 17:12:43,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:43,142.142 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 17:12:47,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:12:47,404.404 INFO    ] Checking for system updates...
[2026-06-13 17:12:47,426.426 INFO    ] 200
[2026-06-13 17:12:47,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:47,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:47,460.460 INFO    ] No update needed
[2026-06-13 17:12:47,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:47,481.481 INFO    ] 200
[2026-06-13 17:12:47,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:47,507.507 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:47,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:47,553.553 INFO    ] No camera update needed
[2026-06-13 17:12:47,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:47,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:47,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:47,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:12:49,603.603 INFO    ] ================================================
[2026-06-13 17:12:49,619.619 INFO    ] Launching Daemon at Sat Jun 13 17:12:49 IST 2026
[2026-06-13 17:12:49,630.630 INFO    ] ================================================
[2026-06-13 17:12:49,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:12:49
[2026-06-13 17:12:50,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:12:50,439.439 INFO    ] Initializing speech engine...
[2026-06-13 17:12:50,449.449 INFO    ] 2026-06-13 17:12:50
[2026-06-13 17:12:50,667.667 INFO    ] 2026-06-13 17:12:50
[2026-06-13 17:12:50,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:12:50,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:12:50,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:12:51,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:12:51,055.055 INFO    ] time= 13/06/2026 17:12:51
[2026-06-13 17:12:51,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:12:51,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:12:51,236.236 INFO    ] No existing commands found in stream
[2026-06-13 17:12:56,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:12:56,250.250 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 17:12:59,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:12:59,742.742 INFO    ] Checking for system updates...
[2026-06-13 17:12:59,764.764 INFO    ] 200
[2026-06-13 17:12:59,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:59,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:59,797.797 INFO    ] No update needed
[2026-06-13 17:12:59,799.799 INFO    ] Checking for camera pi updates...
[2026-06-13 17:12:59,818.818 INFO    ] 200
[2026-06-13 17:12:59,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:12:59,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:12:59,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:12:59,868.868 INFO    ] No camera update needed
[2026-06-13 17:12:59,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:12:59,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:12:59,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:12:59,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:13:01,911.911 INFO    ] ================================================
[2026-06-13 17:13:01,925.925 INFO    ] Launching Daemon at Sat Jun 13 17:13:01 IST 2026
[2026-06-13 17:13:01,934.934 INFO    ] ================================================
[2026-06-13 17:13:02,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:13:02
[2026-06-13 17:13:02,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:13:02,709.709 INFO    ] Initializing speech engine...
[2026-06-13 17:13:02,723.723 INFO    ] 2026-06-13 17:13:02
[2026-06-13 17:13:02,932.932 INFO    ] 2026-06-13 17:13:02
[2026-06-13 17:13:02,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:13:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:13:03,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:13:03,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:13:03,184.184 INFO    ] time= 13/06/2026 17:13:03
[2026-06-13 17:13:03,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:13:03,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:13:03,360.360 INFO    ] No existing commands found in stream
[2026-06-13 17:13:08,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:13:08,379.379 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 17:13:09,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:13:09,161.161 INFO    ] Checking for system updates...
[2026-06-13 17:13:09,182.182 INFO    ] 200
[2026-06-13 17:13:09,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:09,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:09,218.218 INFO    ] No update needed
[2026-06-13 17:13:09,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 17:13:09,239.239 INFO    ] 200
[2026-06-13 17:13:09,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:09,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:13:09,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:09,315.315 INFO    ] No camera update needed
[2026-06-13 17:13:09,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:13:09,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:13:09,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:13:09,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:13:11,364.364 INFO    ] ================================================
[2026-06-13 17:13:11,379.379 INFO    ] Launching Daemon at Sat Jun 13 17:13:11 IST 2026
[2026-06-13 17:13:11,390.390 INFO    ] ================================================
[2026-06-13 17:13:11,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:13:11
[2026-06-13 17:13:12,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:13:12,263.263 INFO    ] Initializing speech engine...
[2026-06-13 17:13:12,274.274 INFO    ] 2026-06-13 17:13:12
[2026-06-13 17:13:12,483.483 INFO    ] 2026-06-13 17:13:12
[2026-06-13 17:13:12,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:13:12,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:13:12,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:13:12,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:13:12,895.895 INFO    ] time= 13/06/2026 17:13:12
[2026-06-13 17:13:12,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:13:12,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:13:13,006.006 INFO    ] No existing commands found in stream
[2026-06-13 17:13:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:13:18,021.021 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 17:13:20,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:13:20,188.188 INFO    ] Checking for system updates...
[2026-06-13 17:13:20,209.209 INFO    ] 200
[2026-06-13 17:13:20,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:20,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:13:20,243.243 INFO    ] No update needed
[2026-06-13 17:13:20,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 17:13:20,265.265 INFO    ] 200
[2026-06-13 17:13:20,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:20,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:13:20,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:13:20,327.327 INFO    ] No camera update needed
[2026-06-13 17:13:20,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:13:20,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:13:20,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:13:20,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:13:22,375.375 INFO    ] ================================================
[2026-06-13 17:13:22,391.391 INFO    ] Launching Daemon at Sat Jun 13 17:13:22 IST 2026
[2026-06-13 17:13:22,404.404 INFO    ] ================================================
[2026-06-13 17:13:22,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:13:22
[2026-06-13 17:13:23,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:13:23,260.260 INFO    ] Initializing speech engine...
[2026-06-13 17:13:23,270.270 INFO    ] 2026-06-13 17:13:23
[2026-06-13 17:13:23,482.482 INFO    ] 2026-06-13 17:13:23
[2026-06-13 17:13:23,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:13:23,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:13:23,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:13:23,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:13:23,885.885 INFO    ] time= 13/06/2026 17:13:23
[2026-06-13 17:13:23,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:13:23,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:13:24,011.011 INFO    ] No existing commands found in stream
[2026-06-13 17:13:29,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:13:29,024.024 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 17:13:31,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:13:31,695.695 INFO    ] Checking for system updates...
[2026-06-13 17:13:31,721.721 INFO    ] 200
[2026-06-13 17:13:31,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:31,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:13:31,761.761 INFO    ] No update needed
[2026-06-13 17:13:31,762.762 INFO    ] Checking for camera pi updates...
[2026-06-13 17:13:31,785.785 INFO    ] 200
[2026-06-13 17:13:31,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:31,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:13:31,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:13:31,840.840 INFO    ] No camera update needed
[2026-06-13 17:13:31,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:13:31,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:13:31,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:13:31,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:13:33,891.891 INFO    ] ================================================
[2026-06-13 17:13:33,910.910 INFO    ] Launching Daemon at Sat Jun 13 17:13:33 IST 2026
[2026-06-13 17:13:33,925.925 INFO    ] ================================================
[2026-06-13 17:13:34,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:13:34
[2026-06-13 17:13:34,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:13:34,754.754 INFO    ] Initializing speech engine...
[2026-06-13 17:13:34,759.759 INFO    ] 2026-06-13 17:13:34
[2026-06-13 17:13:34,962.962 INFO    ] 2026-06-13 17:13:34
[2026-06-13 17:13:34,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:13:35,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:13:35,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:13:35,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:13:35,367.367 INFO    ] time= 13/06/2026 17:13:35
[2026-06-13 17:13:35,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:13:35,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:13:35,476.476 INFO    ] No existing commands found in stream
[2026-06-13 17:13:40,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:13:40,490.490 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 17:13:43,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:13:43,865.865 INFO    ] Checking for system updates...
[2026-06-13 17:13:43,887.887 INFO    ] 200
[2026-06-13 17:13:43,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:43,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:43,944.944 INFO    ] No update needed
[2026-06-13 17:13:43,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 17:13:43,991.991 INFO    ] 200
[2026-06-13 17:13:43,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:44,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:13:44,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:44,087.087 INFO    ] No camera update needed
[2026-06-13 17:13:44,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:13:44,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:13:44,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:13:44,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:13:46,144.144 INFO    ] ================================================
[2026-06-13 17:13:46,159.159 INFO    ] Launching Daemon at Sat Jun 13 17:13:46 IST 2026
[2026-06-13 17:13:46,170.170 INFO    ] ================================================
[2026-06-13 17:13:46,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:13:46
[2026-06-13 17:13:47,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:13:47,284.284 INFO    ] Initializing speech engine...
[2026-06-13 17:13:47,293.293 INFO    ] 2026-06-13 17:13:47
[2026-06-13 17:13:47,516.516 INFO    ] 2026-06-13 17:13:47
[2026-06-13 17:13:47,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:13:47,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:13:47,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:13:47,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:13:47,946.946 INFO    ] time= 13/06/2026 17:13:47
[2026-06-13 17:13:47,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:13:47,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:13:48,074.074 INFO    ] No existing commands found in stream
[2026-06-13 17:13:53,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:13:53,087.087 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 17:13:58,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:13:58,183.183 INFO    ] Checking for system updates...
[2026-06-13 17:13:58,219.219 INFO    ] 200
[2026-06-13 17:13:58,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:58,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:58,277.277 INFO    ] No update needed
[2026-06-13 17:13:58,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 17:13:58,313.313 INFO    ] 200
[2026-06-13 17:13:58,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:13:58,358.358 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:13:58,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:13:58,507.507 INFO    ] No camera update needed
[2026-06-13 17:13:58,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:13:58,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:13:58,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:13:58,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:00,563.563 INFO    ] ================================================
[2026-06-13 17:14:00,578.578 INFO    ] Launching Daemon at Sat Jun 13 17:14:00 IST 2026
[2026-06-13 17:14:00,588.588 INFO    ] ================================================
[2026-06-13 17:14:00,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:14:00
[2026-06-13 17:14:01,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:14:01,975.975 INFO    ] Initializing speech engine...
[2026-06-13 17:14:01,989.989 INFO    ] 2026-06-13 17:14:01
[2026-06-13 17:14:02,296.296 INFO    ] 2026-06-13 17:14:02
[2026-06-13 17:14:02,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:14:02,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:14:02,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:14:02,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:14:02,794.794 INFO    ] time= 13/06/2026 17:14:02
[2026-06-13 17:14:02,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:14:02,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:14:03,005.005 INFO    ] No existing commands found in stream
[2026-06-13 17:14:08,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:14:08,026.026 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 17:14:12,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:14:12,053.053 INFO    ] Checking for system updates...
[2026-06-13 17:14:12,074.074 INFO    ] 200
[2026-06-13 17:14:12,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:12,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:14:12,108.108 INFO    ] No update needed
[2026-06-13 17:14:12,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 17:14:12,133.133 INFO    ] 200
[2026-06-13 17:14:12,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:12,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:14:12,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:14:12,200.200 INFO    ] No camera update needed
[2026-06-13 17:14:12,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:14:12,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:14:12,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:14:12,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:14,249.249 INFO    ] ================================================
[2026-06-13 17:14:14,264.264 INFO    ] Launching Daemon at Sat Jun 13 17:14:14 IST 2026
[2026-06-13 17:14:14,275.275 INFO    ] ================================================
[2026-06-13 17:14:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:14:14
[2026-06-13 17:14:14,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:14:15,090.090 INFO    ] Initializing speech engine...
[2026-06-13 17:14:15,098.098 INFO    ] 2026-06-13 17:14:15
[2026-06-13 17:14:15,309.309 INFO    ] 2026-06-13 17:14:15
[2026-06-13 17:14:15,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:14:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:14:15,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:14:15,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:14:15,711.711 INFO    ] time= 13/06/2026 17:14:15
[2026-06-13 17:14:15,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:14:15,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:14:15,826.826 INFO    ] No existing commands found in stream
[2026-06-13 17:14:20,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:14:20,838.838 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 17:14:23,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:14:23,363.363 INFO    ] Checking for system updates...
[2026-06-13 17:14:23,384.384 INFO    ] 200
[2026-06-13 17:14:23,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:23,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:14:23,418.418 INFO    ] No update needed
[2026-06-13 17:14:23,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 17:14:23,441.441 INFO    ] 200
[2026-06-13 17:14:23,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:23,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:14:23,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:14:23,504.504 INFO    ] No camera update needed
[2026-06-13 17:14:23,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:14:23,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:14:23,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:14:23,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:25,552.552 INFO    ] ================================================
[2026-06-13 17:14:25,567.567 INFO    ] Launching Daemon at Sat Jun 13 17:14:25 IST 2026
[2026-06-13 17:14:25,577.577 INFO    ] ================================================
[2026-06-13 17:14:25,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:14:25
[2026-06-13 17:14:26,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:14:26,369.369 INFO    ] Initializing speech engine...
[2026-06-13 17:14:26,379.379 INFO    ] 2026-06-13 17:14:26
[2026-06-13 17:14:26,582.582 INFO    ] 2026-06-13 17:14:26
[2026-06-13 17:14:26,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:14:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:14:26,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:14:26,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:14:26,985.985 INFO    ] time= 13/06/2026 17:14:26
[2026-06-13 17:14:27,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:14:27,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:14:27,094.094 INFO    ] No existing commands found in stream
[2026-06-13 17:14:32,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:14:32,102.102 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 17:14:34,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:14:34,009.009 INFO    ] Checking for system updates...
[2026-06-13 17:14:34,030.030 INFO    ] 200
[2026-06-13 17:14:34,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:34,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:14:34,063.063 INFO    ] No update needed
[2026-06-13 17:14:34,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 17:14:34,084.084 INFO    ] 200
[2026-06-13 17:14:34,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:34,109.109 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:14:34,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:14:34,156.156 INFO    ] No camera update needed
[2026-06-13 17:14:34,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:14:34,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:14:34,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:14:34,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:36,204.204 INFO    ] ================================================
[2026-06-13 17:14:36,219.219 INFO    ] Launching Daemon at Sat Jun 13 17:14:36 IST 2026
[2026-06-13 17:14:36,230.230 INFO    ] ================================================
[2026-06-13 17:14:36,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:14:36
[2026-06-13 17:14:36,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:14:37,048.048 INFO    ] Initializing speech engine...
[2026-06-13 17:14:37,053.053 INFO    ] 2026-06-13 17:14:37
[2026-06-13 17:14:37,259.259 INFO    ] 2026-06-13 17:14:37
[2026-06-13 17:14:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:14:37,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:14:37,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:14:37,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:14:37,674.674 INFO    ] time= 13/06/2026 17:14:37
[2026-06-13 17:14:37,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:14:37,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:14:37,780.780 INFO    ] No existing commands found in stream
[2026-06-13 17:14:42,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:14:42,793.793 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 17:14:46,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:14:46,222.222 INFO    ] Checking for system updates...
[2026-06-13 17:14:46,243.243 INFO    ] 200
[2026-06-13 17:14:46,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:46,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:14:46,276.276 INFO    ] No update needed
[2026-06-13 17:14:46,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 17:14:46,299.299 INFO    ] 200
[2026-06-13 17:14:46,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:46,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:14:46,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:14:46,367.367 INFO    ] No camera update needed
[2026-06-13 17:14:46,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:14:46,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:14:46,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:14:46,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:48,413.413 INFO    ] ================================================
[2026-06-13 17:14:48,428.428 INFO    ] Launching Daemon at Sat Jun 13 17:14:48 IST 2026
[2026-06-13 17:14:48,439.439 INFO    ] ================================================
[2026-06-13 17:14:48,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:14:48
[2026-06-13 17:14:49,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:14:49,219.219 INFO    ] Initializing speech engine...
[2026-06-13 17:14:49,224.224 INFO    ] 2026-06-13 17:14:49
[2026-06-13 17:14:49,428.428 INFO    ] 2026-06-13 17:14:49
[2026-06-13 17:14:49,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:14:49,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:14:49,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:14:49,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:14:49,830.830 INFO    ] time= 13/06/2026 17:14:49
[2026-06-13 17:14:49,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:14:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:14:49,939.939 INFO    ] No existing commands found in stream
[2026-06-13 17:14:54,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:14:54,952.952 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 17:14:57,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:14:57,802.802 INFO    ] Checking for system updates...
[2026-06-13 17:14:57,822.822 INFO    ] 200
[2026-06-13 17:14:57,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:57,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:14:57,855.855 INFO    ] No update needed
[2026-06-13 17:14:57,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 17:14:57,876.876 INFO    ] 200
[2026-06-13 17:14:57,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:14:57,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:14:57,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:14:57,943.943 INFO    ] No camera update needed
[2026-06-13 17:14:57,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:14:57,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:14:57,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:14:57,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:14:59,989.989 INFO    ] ================================================
[2026-06-13 17:15:00,004.004 INFO    ] Launching Daemon at Sat Jun 13 17:14:59 IST 2026
[2026-06-13 17:15:00,015.015 INFO    ] ================================================
[2026-06-13 17:15:00,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:00
[2026-06-13 17:15:00,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:00,843.843 INFO    ] Initializing speech engine...
[2026-06-13 17:15:00,848.848 INFO    ] 2026-06-13 17:15:00
[2026-06-13 17:15:01,052.052 INFO    ] 2026-06-13 17:15:01
[2026-06-13 17:15:01,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:01,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:01,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:01,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:01,465.465 INFO    ] time= 13/06/2026 17:15:01
[2026-06-13 17:15:01,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:01,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:01,689.689 INFO    ] No existing commands found in stream
[2026-06-13 17:15:06,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:15:06,702.702 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 17:15:09,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:15:09,842.842 INFO    ] Checking for system updates...
[2026-06-13 17:15:09,881.881 INFO    ] 200
[2026-06-13 17:15:09,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:09,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:09,939.939 INFO    ] No update needed
[2026-06-13 17:15:09,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 17:15:09,980.980 INFO    ] 200
[2026-06-13 17:15:09,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:10,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:15:10,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:10,067.067 INFO    ] No camera update needed
[2026-06-13 17:15:10,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:15:10,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:15:10,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:15:10,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:15:12,122.122 INFO    ] ================================================
[2026-06-13 17:15:12,137.137 INFO    ] Launching Daemon at Sat Jun 13 17:15:12 IST 2026
[2026-06-13 17:15:12,148.148 INFO    ] ================================================
[2026-06-13 17:15:12,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:12
[2026-06-13 17:15:12,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:12,931.931 INFO    ] Initializing speech engine...
[2026-06-13 17:15:12,936.936 INFO    ] 2026-06-13 17:15:12
[2026-06-13 17:15:13,139.139 INFO    ] 2026-06-13 17:15:13
[2026-06-13 17:15:13,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:13,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:13,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:13,537.537 INFO    ] time= 13/06/2026 17:15:13
[2026-06-13 17:15:13,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:13,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:13,653.653 INFO    ] No existing commands found in stream
[2026-06-13 17:15:18,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:15:18,666.666 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 17:15:19,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:15:19,371.371 INFO    ] Checking for system updates...
[2026-06-13 17:15:19,397.397 INFO    ] 200
[2026-06-13 17:15:19,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:19,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:19,440.440 INFO    ] No update needed
[2026-06-13 17:15:19,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 17:15:19,462.462 INFO    ] 200
[2026-06-13 17:15:19,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:19,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:15:19,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:19,531.531 INFO    ] No camera update needed
[2026-06-13 17:15:19,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:15:19,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:15:19,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:15:19,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:15:21,580.580 INFO    ] ================================================
[2026-06-13 17:15:21,596.596 INFO    ] Launching Daemon at Sat Jun 13 17:15:21 IST 2026
[2026-06-13 17:15:21,607.607 INFO    ] ================================================
[2026-06-13 17:15:21,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:21
[2026-06-13 17:15:22,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:22,388.388 INFO    ] Initializing speech engine...
[2026-06-13 17:15:22,392.392 INFO    ] 2026-06-13 17:15:22
[2026-06-13 17:15:22,623.623 INFO    ] 2026-06-13 17:15:22
[2026-06-13 17:15:22,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:22,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:22,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:22,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:23,041.041 INFO    ] time= 13/06/2026 17:15:23
[2026-06-13 17:15:23,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:23,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:23,184.184 INFO    ] No existing commands found in stream
[2026-06-13 17:15:28,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:15:28,198.198 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 17:15:29,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:15:29,704.704 INFO    ] Checking for system updates...
[2026-06-13 17:15:29,726.726 INFO    ] 200
[2026-06-13 17:15:29,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:29,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:15:29,762.762 INFO    ] No update needed
[2026-06-13 17:15:29,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 17:15:29,784.784 INFO    ] 200
[2026-06-13 17:15:29,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:29,810.810 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:15:29,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:29,846.846 INFO    ] No camera update needed
[2026-06-13 17:15:29,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:15:29,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:15:29,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:15:29,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:15:31,888.888 INFO    ] ================================================
[2026-06-13 17:15:31,897.897 INFO    ] Launching Daemon at Sat Jun 13 17:15:31 IST 2026
[2026-06-13 17:15:31,904.904 INFO    ] ================================================
[2026-06-13 17:15:32,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:32
[2026-06-13 17:15:32,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:32,694.694 INFO    ] Initializing speech engine...
[2026-06-13 17:15:32,699.699 INFO    ] 2026-06-13 17:15:32
[2026-06-13 17:15:32,903.903 INFO    ] 2026-06-13 17:15:32
[2026-06-13 17:15:32,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:33,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:33,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:33,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:33,317.317 INFO    ] time= 13/06/2026 17:15:33
[2026-06-13 17:15:33,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:33,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:33,415.415 INFO    ] No existing commands found in stream
[2026-06-13 17:15:38,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:15:38,429.429 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 17:15:42,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:15:42,229.229 INFO    ] Checking for system updates...
[2026-06-13 17:15:42,250.250 INFO    ] 200
[2026-06-13 17:15:42,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:42,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:15:42,286.286 INFO    ] No update needed
[2026-06-13 17:15:42,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 17:15:42,307.307 INFO    ] 200
[2026-06-13 17:15:42,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:42,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:15:42,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:42,372.372 INFO    ] No camera update needed
[2026-06-13 17:15:42,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:15:42,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:15:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:15:42,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:15:44,420.420 INFO    ] ================================================
[2026-06-13 17:15:44,435.435 INFO    ] Launching Daemon at Sat Jun 13 17:15:44 IST 2026
[2026-06-13 17:15:44,446.446 INFO    ] ================================================
[2026-06-13 17:15:44,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:44
[2026-06-13 17:15:45,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:45,226.226 INFO    ] Initializing speech engine...
[2026-06-13 17:15:45,235.235 INFO    ] 2026-06-13 17:15:45
[2026-06-13 17:15:45,454.454 INFO    ] 2026-06-13 17:15:45
[2026-06-13 17:15:45,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:45,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:45,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:45,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:45,841.841 INFO    ] time= 13/06/2026 17:15:45
[2026-06-13 17:15:45,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:45,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:46,015.015 INFO    ] No existing commands found in stream
[2026-06-13 17:15:51,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:15:51,029.029 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 17:15:52,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:15:52,933.933 INFO    ] Checking for system updates...
[2026-06-13 17:15:52,955.955 INFO    ] 200
[2026-06-13 17:15:52,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:52,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:52,988.988 INFO    ] No update needed
[2026-06-13 17:15:52,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 17:15:53,010.010 INFO    ] 200
[2026-06-13 17:15:53,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:15:53,035.035 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:15:53,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:15:53,071.071 INFO    ] No camera update needed
[2026-06-13 17:15:53,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:15:53,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:15:53,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:15:53,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:15:55,118.118 INFO    ] ================================================
[2026-06-13 17:15:55,134.134 INFO    ] Launching Daemon at Sat Jun 13 17:15:55 IST 2026
[2026-06-13 17:15:55,145.145 INFO    ] ================================================
[2026-06-13 17:15:55,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:15:55
[2026-06-13 17:15:55,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:15:56,002.002 INFO    ] Initializing speech engine...
[2026-06-13 17:15:56,006.006 INFO    ] 2026-06-13 17:15:56
[2026-06-13 17:15:56,219.219 INFO    ] 2026-06-13 17:15:56
[2026-06-13 17:15:56,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:15:56,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:15:56,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:15:56,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:15:56,607.607 INFO    ] time= 13/06/2026 17:15:56
[2026-06-13 17:15:56,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:15:56,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:15:56,746.746 INFO    ] No existing commands found in stream
[2026-06-13 17:16:01,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:16:01,762.762 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 17:16:03,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:16:03,397.397 INFO    ] Checking for system updates...
[2026-06-13 17:16:03,418.418 INFO    ] 200
[2026-06-13 17:16:03,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:03,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:03,454.454 INFO    ] No update needed
[2026-06-13 17:16:03,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 17:16:03,477.477 INFO    ] 200
[2026-06-13 17:16:03,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:03,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:16:03,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:16:03,546.546 INFO    ] No camera update needed
[2026-06-13 17:16:03,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:16:03,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:16:03,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:16:03,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:16:05,596.596 INFO    ] ================================================
[2026-06-13 17:16:05,612.612 INFO    ] Launching Daemon at Sat Jun 13 17:16:05 IST 2026
[2026-06-13 17:16:05,622.622 INFO    ] ================================================
[2026-06-13 17:16:05,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:16:05
[2026-06-13 17:16:06,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:16:06,429.429 INFO    ] Initializing speech engine...
[2026-06-13 17:16:06,438.438 INFO    ] 2026-06-13 17:16:06
[2026-06-13 17:16:06,655.655 INFO    ] 2026-06-13 17:16:06
[2026-06-13 17:16:06,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:16:06,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:16:06,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:16:07,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:16:07,075.075 INFO    ] time= 13/06/2026 17:16:07
[2026-06-13 17:16:07,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:16:07,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:16:07,211.211 INFO    ] No existing commands found in stream
[2026-06-13 17:16:12,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:16:12,224.224 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 17:16:16,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:16:16,349.349 INFO    ] Checking for system updates...
[2026-06-13 17:16:16,370.370 INFO    ] 200
[2026-06-13 17:16:16,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:16,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:16,403.403 INFO    ] No update needed
[2026-06-13 17:16:16,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 17:16:16,427.427 INFO    ] 200
[2026-06-13 17:16:16,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:16,452.452 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:16:16,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:16,490.490 INFO    ] No camera update needed
[2026-06-13 17:16:16,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:16:16,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:16:16,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:16:16,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:16:18,536.536 INFO    ] ================================================
[2026-06-13 17:16:18,552.552 INFO    ] Launching Daemon at Sat Jun 13 17:16:18 IST 2026
[2026-06-13 17:16:18,565.565 INFO    ] ================================================
[2026-06-13 17:16:18,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:16:18
[2026-06-13 17:16:19,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:16:19,400.400 INFO    ] Initializing speech engine...
[2026-06-13 17:16:19,405.405 INFO    ] 2026-06-13 17:16:19
[2026-06-13 17:16:19,613.613 INFO    ] 2026-06-13 17:16:19
[2026-06-13 17:16:19,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:16:19,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:16:19,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:16:19,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:16:20,035.035 INFO    ] time= 13/06/2026 17:16:19
[2026-06-13 17:16:20,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:16:20,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:16:20,132.132 INFO    ] No existing commands found in stream
[2026-06-13 17:16:25,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:16:25,150.150 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 17:16:29,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:16:29,349.349 INFO    ] Checking for system updates...
[2026-06-13 17:16:29,371.371 INFO    ] 200
[2026-06-13 17:16:29,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:29,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:16:29,407.407 INFO    ] No update needed
[2026-06-13 17:16:29,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 17:16:29,428.428 INFO    ] 200
[2026-06-13 17:16:29,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:29,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:16:29,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:16:29,494.494 INFO    ] No camera update needed
[2026-06-13 17:16:29,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:16:29,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:16:29,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:16:29,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:16:31,542.542 INFO    ] ================================================
[2026-06-13 17:16:31,559.559 INFO    ] Launching Daemon at Sat Jun 13 17:16:31 IST 2026
[2026-06-13 17:16:31,567.567 INFO    ] ================================================
[2026-06-13 17:16:31,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:16:31
[2026-06-13 17:16:32,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:16:32,771.771 INFO    ] Initializing speech engine...
[2026-06-13 17:16:32,785.785 INFO    ] 2026-06-13 17:16:32
[2026-06-13 17:16:33,066.066 INFO    ] 2026-06-13 17:16:33
[2026-06-13 17:16:33,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:16:33,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:16:33,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:16:33,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:16:33,509.509 INFO    ] time= 13/06/2026 17:16:33
[2026-06-13 17:16:33,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:16:33,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:16:33,758.758 INFO    ] No existing commands found in stream
[2026-06-13 17:16:38,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:16:38,792.792 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 17:16:42,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:16:42,065.065 INFO    ] Checking for system updates...
[2026-06-13 17:16:42,087.087 INFO    ] 200
[2026-06-13 17:16:42,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:42,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:42,121.121 INFO    ] No update needed
[2026-06-13 17:16:42,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 17:16:42,142.142 INFO    ] 200
[2026-06-13 17:16:42,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:42,168.168 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:16:42,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:42,214.214 INFO    ] No camera update needed
[2026-06-13 17:16:42,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:16:42,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:16:42,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:16:42,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:16:44,255.255 INFO    ] ================================================
[2026-06-13 17:16:44,263.263 INFO    ] Launching Daemon at Sat Jun 13 17:16:44 IST 2026
[2026-06-13 17:16:44,269.269 INFO    ] ================================================
[2026-06-13 17:16:44,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:16:44
[2026-06-13 17:16:44,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:16:45,134.134 INFO    ] Initializing speech engine...
[2026-06-13 17:16:45,145.145 INFO    ] 2026-06-13 17:16:45
[2026-06-13 17:16:45,355.355 INFO    ] 2026-06-13 17:16:45
[2026-06-13 17:16:45,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:16:45,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:16:45,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:16:45,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:16:45,780.780 INFO    ] time= 13/06/2026 17:16:45
[2026-06-13 17:16:45,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:16:45,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:16:45,877.877 INFO    ] No existing commands found in stream
[2026-06-13 17:16:50,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:16:50,890.890 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 17:16:51,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:16:51,921.921 INFO    ] Checking for system updates...
[2026-06-13 17:16:51,942.942 INFO    ] 200
[2026-06-13 17:16:51,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:51,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:16:51,976.976 INFO    ] No update needed
[2026-06-13 17:16:51,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 17:16:51,997.997 INFO    ] 200
[2026-06-13 17:16:51,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:16:52,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:16:52,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:16:52,058.058 INFO    ] No camera update needed
[2026-06-13 17:16:52,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:16:52,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:16:52,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:16:52,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:16:54,106.106 INFO    ] ================================================
[2026-06-13 17:16:54,129.129 INFO    ] Launching Daemon at Sat Jun 13 17:16:54 IST 2026
[2026-06-13 17:16:54,140.140 INFO    ] ================================================
[2026-06-13 17:16:54,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:16:54
[2026-06-13 17:16:55,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:16:55,364.364 INFO    ] Initializing speech engine...
[2026-06-13 17:16:55,371.371 INFO    ] 2026-06-13 17:16:55
[2026-06-13 17:16:55,622.622 INFO    ] 2026-06-13 17:16:55
[2026-06-13 17:16:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:16:55,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:16:55,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:16:55,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:16:55,961.961 INFO    ] time= 13/06/2026 17:16:55
[2026-06-13 17:16:55,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:16:56,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:16:56,073.073 INFO    ] No existing commands found in stream
[2026-06-13 17:17:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:01,089.089 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 17:17:02,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:17:02,565.565 INFO    ] Checking for system updates...
[2026-06-13 17:17:02,589.589 INFO    ] 200
[2026-06-13 17:17:02,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:02,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:02,623.623 INFO    ] No update needed
[2026-06-13 17:17:02,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 17:17:02,644.644 INFO    ] 200
[2026-06-13 17:17:02,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:02,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:17:02,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:02,704.704 INFO    ] No camera update needed
[2026-06-13 17:17:02,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:17:02,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:17:02,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:17:02,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:17:04,756.756 INFO    ] ================================================
[2026-06-13 17:17:04,772.772 INFO    ] Launching Daemon at Sat Jun 13 17:17:04 IST 2026
[2026-06-13 17:17:04,783.783 INFO    ] ================================================
[2026-06-13 17:17:05,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:17:05
[2026-06-13 17:17:05,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:17:05,610.610 INFO    ] Initializing speech engine...
[2026-06-13 17:17:05,619.619 INFO    ] 2026-06-13 17:17:05
[2026-06-13 17:17:05,865.865 INFO    ] 2026-06-13 17:17:05
[2026-06-13 17:17:05,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:17:06,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:17:06,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:17:06,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:17:06,256.256 INFO    ] time= 13/06/2026 17:17:06
[2026-06-13 17:17:06,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:17:06,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:17:06,414.414 INFO    ] No existing commands found in stream
[2026-06-13 17:17:11,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:11,451.451 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 17:17:11,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:17:11,806.806 INFO    ] Checking for system updates...
[2026-06-13 17:17:11,829.829 INFO    ] 200
[2026-06-13 17:17:11,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:11,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:17:11,867.867 INFO    ] No update needed
[2026-06-13 17:17:11,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 17:17:11,890.890 INFO    ] 200
[2026-06-13 17:17:11,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:11,917.917 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:17:11,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:17:11,967.967 INFO    ] No camera update needed
[2026-06-13 17:17:11,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:17:11,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:17:11,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:17:11,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:17:14,016.016 INFO    ] ================================================
[2026-06-13 17:17:14,031.031 INFO    ] Launching Daemon at Sat Jun 13 17:17:14 IST 2026
[2026-06-13 17:17:14,043.043 INFO    ] ================================================
[2026-06-13 17:17:14,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:17:14
[2026-06-13 17:17:14,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:17:14,848.848 INFO    ] Initializing speech engine...
[2026-06-13 17:17:14,853.853 INFO    ] 2026-06-13 17:17:14
[2026-06-13 17:17:15,059.059 INFO    ] 2026-06-13 17:17:15
[2026-06-13 17:17:15,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:17:15,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:17:15,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:17:15,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:17:15,472.472 INFO    ] time= 13/06/2026 17:17:15
[2026-06-13 17:17:15,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:17:15,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:17:15,589.589 INFO    ] No existing commands found in stream
[2026-06-13 17:17:20,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:20,602.602 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 17:17:24,253.253 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 17:17:24,277.277 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd17d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 17:17:24,286.286 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd17d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 17:17:24,295.295 INFO    ] None
[2026-06-13 17:17:24,297.297 INFO    ] Checking for system updates...
[2026-06-13 17:17:24,335.335 INFO    ] 200
[2026-06-13 17:17:24,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:24,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:24,368.368 INFO    ] No update needed
[2026-06-13 17:17:24,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 17:17:24,390.390 INFO    ] 200
[2026-06-13 17:17:24,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:24,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:17:26,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:17:26,215.215 INFO    ] No camera update needed
[2026-06-13 17:17:26,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:17:26,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:17:26,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:17:26,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:17:28,278.278 INFO    ] ================================================
[2026-06-13 17:17:28,293.293 INFO    ] Launching Daemon at Sat Jun 13 17:17:28 IST 2026
[2026-06-13 17:17:28,304.304 INFO    ] ================================================
[2026-06-13 17:17:28,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:17:28
[2026-06-13 17:17:29,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:17:29,661.661 INFO    ] Initializing speech engine...
[2026-06-13 17:17:29,667.667 INFO    ] 2026-06-13 17:17:29
[2026-06-13 17:17:29,927.927 INFO    ] 2026-06-13 17:17:29
[2026-06-13 17:17:29,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:17:30,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:17:30,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:17:30,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:17:30,401.401 INFO    ] time= 13/06/2026 17:17:30
[2026-06-13 17:17:30,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:17:30,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:17:30,542.542 INFO    ] No existing commands found in stream
[2026-06-13 17:17:35,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:35,556.556 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 17:17:37,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:17:37,600.600 INFO    ] Checking for system updates...
[2026-06-13 17:17:37,621.621 INFO    ] 200
[2026-06-13 17:17:37,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:37,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:37,654.654 INFO    ] No update needed
[2026-06-13 17:17:37,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 17:17:37,675.675 INFO    ] 200
[2026-06-13 17:17:37,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:37,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:17:37,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:37,743.743 INFO    ] No camera update needed
[2026-06-13 17:17:37,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:17:37,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:17:37,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:17:37,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:17:39,789.789 INFO    ] ================================================
[2026-06-13 17:17:39,804.804 INFO    ] Launching Daemon at Sat Jun 13 17:17:39 IST 2026
[2026-06-13 17:17:39,815.815 INFO    ] ================================================
[2026-06-13 17:17:40,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:17:40
[2026-06-13 17:17:40,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:17:40,650.650 INFO    ] Initializing speech engine...
[2026-06-13 17:17:40,654.654 INFO    ] 2026-06-13 17:17:40
[2026-06-13 17:17:40,859.859 INFO    ] 2026-06-13 17:17:40
[2026-06-13 17:17:40,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:17:41,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:17:41,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:17:41,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:17:41,256.256 INFO    ] time= 13/06/2026 17:17:41
[2026-06-13 17:17:41,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:17:41,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:17:41,375.375 INFO    ] No existing commands found in stream
[2026-06-13 17:17:46,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:46,388.388 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 17:17:48,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:17:48,458.458 INFO    ] Checking for system updates...
[2026-06-13 17:17:48,479.479 INFO    ] 200
[2026-06-13 17:17:48,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:48,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:48,513.513 INFO    ] No update needed
[2026-06-13 17:17:48,514.514 INFO    ] Checking for camera pi updates...
[2026-06-13 17:17:48,533.533 INFO    ] 200
[2026-06-13 17:17:48,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:17:48,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:17:48,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:17:48,601.601 INFO    ] No camera update needed
[2026-06-13 17:17:48,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:17:48,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:17:48,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:17:48,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:17:50,648.648 INFO    ] ================================================
[2026-06-13 17:17:50,666.666 INFO    ] Launching Daemon at Sat Jun 13 17:17:50 IST 2026
[2026-06-13 17:17:50,676.676 INFO    ] ================================================
[2026-06-13 17:17:51,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:17:51
[2026-06-13 17:17:51,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:17:51,487.487 INFO    ] Initializing speech engine...
[2026-06-13 17:17:51,492.492 INFO    ] 2026-06-13 17:17:51
[2026-06-13 17:17:51,696.696 INFO    ] 2026-06-13 17:17:51
[2026-06-13 17:17:51,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:17:51,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:17:51,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:17:52,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:17:52,107.107 INFO    ] time= 13/06/2026 17:17:52
[2026-06-13 17:17:52,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:17:52,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:17:52,211.211 INFO    ] No existing commands found in stream
[2026-06-13 17:17:57,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:17:57,224.224 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 17:18:00,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:18:00,072.072 INFO    ] Checking for system updates...
[2026-06-13 17:18:00,092.092 INFO    ] 200
[2026-06-13 17:18:00,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:00,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:18:00,126.126 INFO    ] No update needed
[2026-06-13 17:18:00,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 17:18:00,147.147 INFO    ] 200
[2026-06-13 17:18:00,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:00,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:18:00,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:00,222.222 INFO    ] No camera update needed
[2026-06-13 17:18:00,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:18:00,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:00,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:00,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:02,272.272 INFO    ] ================================================
[2026-06-13 17:18:02,292.292 INFO    ] Launching Daemon at Sat Jun 13 17:18:02 IST 2026
[2026-06-13 17:18:02,305.305 INFO    ] ================================================
[2026-06-13 17:18:03,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:03
[2026-06-13 17:18:03,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:03,878.878 INFO    ] Initializing speech engine...
[2026-06-13 17:18:03,901.901 INFO    ] 2026-06-13 17:18:03
[2026-06-13 17:18:04,159.159 INFO    ] 2026-06-13 17:18:04
[2026-06-13 17:18:04,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:04,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:18:04,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:18:04,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:18:04,500.500 INFO    ] time= 13/06/2026 17:18:04
[2026-06-13 17:18:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:18:04,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:18:04,613.613 INFO    ] No existing commands found in stream
[2026-06-13 17:18:09,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:18:09,627.627 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 17:18:11,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:18:11,812.812 INFO    ] Checking for system updates...
[2026-06-13 17:18:11,833.833 INFO    ] 200
[2026-06-13 17:18:11,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:11,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:11,867.867 INFO    ] No update needed
[2026-06-13 17:18:11,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 17:18:11,888.888 INFO    ] 200
[2026-06-13 17:18:11,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:11,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:18:11,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:11,956.956 INFO    ] No camera update needed
[2026-06-13 17:18:11,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:18:11,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:11,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:11,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:14,002.002 INFO    ] ================================================
[2026-06-13 17:18:14,017.017 INFO    ] Launching Daemon at Sat Jun 13 17:18:14 IST 2026
[2026-06-13 17:18:14,027.027 INFO    ] ================================================
[2026-06-13 17:18:14,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:14
[2026-06-13 17:18:14,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:14,844.844 INFO    ] Initializing speech engine...
[2026-06-13 17:18:14,855.855 INFO    ] 2026-06-13 17:18:14
[2026-06-13 17:18:15,088.088 INFO    ] 2026-06-13 17:18:15
[2026-06-13 17:18:15,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:15,179.179 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 17:18:15,230.230 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 17:18:15,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:15,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:15,349.349 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:18:15,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:17,404.404 INFO    ] ================================================
[2026-06-13 17:18:17,420.420 INFO    ] Launching Daemon at Sat Jun 13 17:18:17 IST 2026
[2026-06-13 17:18:17,431.431 INFO    ] ================================================
[2026-06-13 17:18:17,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:17
[2026-06-13 17:18:18,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:18,223.223 INFO    ] Initializing speech engine...
[2026-06-13 17:18:18,228.228 INFO    ] 2026-06-13 17:18:18
[2026-06-13 17:18:18,436.436 INFO    ] 2026-06-13 17:18:18
[2026-06-13 17:18:18,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:18,505.505 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 17:18:18,550.550 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 17:18:18,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:18,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:18,618.618 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:18:18,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:20,729.729 INFO    ] ================================================
[2026-06-13 17:18:20,744.744 INFO    ] Launching Daemon at Sat Jun 13 17:18:20 IST 2026
[2026-06-13 17:18:20,755.755 INFO    ] ================================================
[2026-06-13 17:18:21,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:21
[2026-06-13 17:18:21,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:21,557.557 INFO    ] Initializing speech engine...
[2026-06-13 17:18:21,567.567 INFO    ] 2026-06-13 17:18:21
[2026-06-13 17:18:21,782.782 INFO    ] 2026-06-13 17:18:21
[2026-06-13 17:18:21,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:21,839.839 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 17:18:21,904.904 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 17:18:21,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:21,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:21,945.945 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:18:22,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:24,085.085 INFO    ] ================================================
[2026-06-13 17:18:24,100.100 INFO    ] Launching Daemon at Sat Jun 13 17:18:24 IST 2026
[2026-06-13 17:18:24,111.111 INFO    ] ================================================
[2026-06-13 17:18:24,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:24
[2026-06-13 17:18:24,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:24,915.915 INFO    ] Initializing speech engine...
[2026-06-13 17:18:24,920.920 INFO    ] 2026-06-13 17:18:24
[2026-06-13 17:18:25,151.151 INFO    ] 2026-06-13 17:18:25
[2026-06-13 17:18:25,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:25,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:18:25,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:18:25,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:18:25,456.456 INFO    ] time= 13/06/2026 17:18:25
[2026-06-13 17:18:25,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:18:25,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:18:25,559.559 INFO    ] No existing commands found in stream
[2026-06-13 17:18:30,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:18:30,571.571 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 17:18:33,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:18:33,487.487 INFO    ] Checking for system updates...
[2026-06-13 17:18:33,508.508 INFO    ] 200
[2026-06-13 17:18:33,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:33,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:33,542.542 INFO    ] No update needed
[2026-06-13 17:18:33,543.543 INFO    ] Checking for camera pi updates...
[2026-06-13 17:18:33,566.566 INFO    ] 200
[2026-06-13 17:18:33,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:33,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:18:33,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:33,732.732 INFO    ] No camera update needed
[2026-06-13 17:18:33,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:18:33,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:33,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:33,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:35,780.780 INFO    ] ================================================
[2026-06-13 17:18:35,795.795 INFO    ] Launching Daemon at Sat Jun 13 17:18:35 IST 2026
[2026-06-13 17:18:35,806.806 INFO    ] ================================================
[2026-06-13 17:18:36,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:36
[2026-06-13 17:18:36,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:36,643.643 INFO    ] Initializing speech engine...
[2026-06-13 17:18:36,656.656 INFO    ] 2026-06-13 17:18:36
[2026-06-13 17:18:36,874.874 INFO    ] 2026-06-13 17:18:36
[2026-06-13 17:18:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:37,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:18:37,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:18:37,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:18:37,250.250 INFO    ] time= 13/06/2026 17:18:37
[2026-06-13 17:18:37,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:18:37,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:18:37,430.430 INFO    ] No existing commands found in stream
[2026-06-13 17:18:42,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:18:42,443.443 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 17:18:45,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:18:45,783.783 INFO    ] Checking for system updates...
[2026-06-13 17:18:45,804.804 INFO    ] 200
[2026-06-13 17:18:45,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:45,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:45,837.837 INFO    ] No update needed
[2026-06-13 17:18:45,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 17:18:45,860.860 INFO    ] 200
[2026-06-13 17:18:45,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:45,884.884 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:18:45,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:18:45,934.934 INFO    ] No camera update needed
[2026-06-13 17:18:45,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:18:45,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:45,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:45,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:18:47,980.980 INFO    ] ================================================
[2026-06-13 17:18:48,996.996 INFO    ] Launching Daemon at Sat Jun 13 17:18:47 IST 2026
[2026-06-13 17:18:48,007.007 INFO    ] ================================================
[2026-06-13 17:18:48,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:18:48
[2026-06-13 17:18:48,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:18:48,808.808 INFO    ] Initializing speech engine...
[2026-06-13 17:18:48,813.813 INFO    ] 2026-06-13 17:18:48
[2026-06-13 17:18:49,016.016 INFO    ] 2026-06-13 17:18:48
[2026-06-13 17:18:49,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:18:49,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:18:49,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:18:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:18:49,425.425 INFO    ] time= 13/06/2026 17:18:49
[2026-06-13 17:18:49,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:18:49,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:18:49,541.541 INFO    ] No existing commands found in stream
[2026-06-13 17:18:54,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:18:54,555.555 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 17:18:58,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:18:58,458.458 INFO    ] Checking for system updates...
[2026-06-13 17:18:58,481.481 INFO    ] 200
[2026-06-13 17:18:58,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:58,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:18:58,515.515 INFO    ] No update needed
[2026-06-13 17:18:58,517.517 INFO    ] Checking for camera pi updates...
[2026-06-13 17:18:58,545.545 INFO    ] 200
[2026-06-13 17:18:58,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:18:58,590.590 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:18:58,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:18:58,633.633 INFO    ] No camera update needed
[2026-06-13 17:18:58,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:18:58,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:18:58,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:18:58,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:00,690.690 INFO    ] ================================================
[2026-06-13 17:19:00,704.704 INFO    ] Launching Daemon at Sat Jun 13 17:19:00 IST 2026
[2026-06-13 17:19:00,715.715 INFO    ] ================================================
[2026-06-13 17:19:01,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:01
[2026-06-13 17:19:01,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:02,062.062 INFO    ] Initializing speech engine...
[2026-06-13 17:19:02,069.069 INFO    ] 2026-06-13 17:19:02
[2026-06-13 17:19:02,312.312 INFO    ] 2026-06-13 17:19:02
[2026-06-13 17:19:02,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:02,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:02,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:02,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:02,757.757 INFO    ] time= 13/06/2026 17:19:02
[2026-06-13 17:19:02,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:02,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:02,872.872 INFO    ] No existing commands found in stream
[2026-06-13 17:19:07,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:19:07,885.885 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 17:19:11,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:19:11,589.589 INFO    ] Checking for system updates...
[2026-06-13 17:19:11,610.610 INFO    ] 200
[2026-06-13 17:19:11,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:11,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:11,644.644 INFO    ] No update needed
[2026-06-13 17:19:11,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 17:19:11,665.665 INFO    ] 200
[2026-06-13 17:19:11,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:11,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:19:11,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:11,746.746 INFO    ] No camera update needed
[2026-06-13 17:19:11,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:19:11,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:19:11,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:19:11,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:13,794.794 INFO    ] ================================================
[2026-06-13 17:19:13,809.809 INFO    ] Launching Daemon at Sat Jun 13 17:19:13 IST 2026
[2026-06-13 17:19:13,820.820 INFO    ] ================================================
[2026-06-13 17:19:14,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:14
[2026-06-13 17:19:14,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:14,674.674 INFO    ] Initializing speech engine...
[2026-06-13 17:19:14,680.680 INFO    ] 2026-06-13 17:19:14
[2026-06-13 17:19:14,890.890 INFO    ] 2026-06-13 17:19:14
[2026-06-13 17:19:14,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:15,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:15,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:15,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:15,312.312 INFO    ] time= 13/06/2026 17:19:15
[2026-06-13 17:19:15,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:15,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:15,416.416 INFO    ] No existing commands found in stream
[2026-06-13 17:19:20,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:19:20,433.433 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 17:19:21,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:19:21,306.306 INFO    ] Checking for system updates...
[2026-06-13 17:19:21,327.327 INFO    ] 200
[2026-06-13 17:19:21,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:21,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:19:21,361.361 INFO    ] No update needed
[2026-06-13 17:19:21,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 17:19:21,384.384 INFO    ] 200
[2026-06-13 17:19:21,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:21,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:19:21,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:19:21,449.449 INFO    ] No camera update needed
[2026-06-13 17:19:21,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:19:21,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:19:21,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:19:21,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:23,499.499 INFO    ] ================================================
[2026-06-13 17:19:23,514.514 INFO    ] Launching Daemon at Sat Jun 13 17:19:23 IST 2026
[2026-06-13 17:19:23,525.525 INFO    ] ================================================
[2026-06-13 17:19:23,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:23
[2026-06-13 17:19:24,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:24,346.346 INFO    ] Initializing speech engine...
[2026-06-13 17:19:24,351.351 INFO    ] 2026-06-13 17:19:24
[2026-06-13 17:19:24,555.555 INFO    ] 2026-06-13 17:19:24
[2026-06-13 17:19:24,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:24,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:24,960.960 INFO    ] time= 13/06/2026 17:19:24
[2026-06-13 17:19:24,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:25,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:25,070.070 INFO    ] No existing commands found in stream
[2026-06-13 17:19:30,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:19:30,083.083 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 17:19:31,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:19:31,523.523 INFO    ] Checking for system updates...
[2026-06-13 17:19:31,549.549 INFO    ] 200
[2026-06-13 17:19:31,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:31,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:31,590.590 INFO    ] No update needed
[2026-06-13 17:19:31,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 17:19:31,614.614 INFO    ] 200
[2026-06-13 17:19:31,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:31,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:19:31,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:31,673.673 INFO    ] No camera update needed
[2026-06-13 17:19:31,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:19:31,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:19:31,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:19:31,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:33,723.723 INFO    ] ================================================
[2026-06-13 17:19:33,738.738 INFO    ] Launching Daemon at Sat Jun 13 17:19:33 IST 2026
[2026-06-13 17:19:33,749.749 INFO    ] ================================================
[2026-06-13 17:19:34,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:34
[2026-06-13 17:19:34,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:34,939.939 INFO    ] Initializing speech engine...
[2026-06-13 17:19:34,943.943 INFO    ] 2026-06-13 17:19:34
[2026-06-13 17:19:35,148.148 INFO    ] 2026-06-13 17:19:35
[2026-06-13 17:19:35,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:35,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:35,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:35,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:35,563.563 INFO    ] time= 13/06/2026 17:19:35
[2026-06-13 17:19:35,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:35,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:35,663.663 INFO    ] No existing commands found in stream
[2026-06-13 17:19:40,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:19:40,675.675 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 17:19:41,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:19:41,593.593 INFO    ] Checking for system updates...
[2026-06-13 17:19:41,614.614 INFO    ] 200
[2026-06-13 17:19:41,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:41,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:41,648.648 INFO    ] No update needed
[2026-06-13 17:19:41,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 17:19:41,669.669 INFO    ] 200
[2026-06-13 17:19:41,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:41,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:19:41,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:19:41,731.731 INFO    ] No camera update needed
[2026-06-13 17:19:41,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:19:41,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:19:41,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:19:41,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:43,778.778 INFO    ] ================================================
[2026-06-13 17:19:43,793.793 INFO    ] Launching Daemon at Sat Jun 13 17:19:43 IST 2026
[2026-06-13 17:19:43,804.804 INFO    ] ================================================
[2026-06-13 17:19:44,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:44
[2026-06-13 17:19:44,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:44,587.587 INFO    ] Initializing speech engine...
[2026-06-13 17:19:44,590.590 INFO    ] 2026-06-13 17:19:44
[2026-06-13 17:19:44,794.794 INFO    ] 2026-06-13 17:19:44
[2026-06-13 17:19:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:44,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:45,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:45,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:45,256.256 INFO    ] time= 13/06/2026 17:19:45
[2026-06-13 17:19:45,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:45,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:45,378.378 INFO    ] No existing commands found in stream
[2026-06-13 17:19:50,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:19:50,392.392 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 17:19:54,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:19:54,203.203 INFO    ] Checking for system updates...
[2026-06-13 17:19:54,224.224 INFO    ] 200
[2026-06-13 17:19:54,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:54,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:19:54,258.258 INFO    ] No update needed
[2026-06-13 17:19:54,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 17:19:54,279.279 INFO    ] 200
[2026-06-13 17:19:54,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:19:54,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:19:54,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:19:54,346.346 INFO    ] No camera update needed
[2026-06-13 17:19:54,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:19:54,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:19:54,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:19:54,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:19:56,392.392 INFO    ] ================================================
[2026-06-13 17:19:56,407.407 INFO    ] Launching Daemon at Sat Jun 13 17:19:56 IST 2026
[2026-06-13 17:19:56,417.417 INFO    ] ================================================
[2026-06-13 17:19:56,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:19:56
[2026-06-13 17:19:57,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:19:57,244.244 INFO    ] Initializing speech engine...
[2026-06-13 17:19:57,248.248 INFO    ] 2026-06-13 17:19:57
[2026-06-13 17:19:57,454.454 INFO    ] 2026-06-13 17:19:57
[2026-06-13 17:19:57,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:19:57,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:19:57,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:19:57,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:19:57,874.874 INFO    ] time= 13/06/2026 17:19:57
[2026-06-13 17:19:57,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:19:57,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:19:57,971.971 INFO    ] No existing commands found in stream
[2026-06-13 17:20:02,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:20:02,981.981 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 17:20:08,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:20:08,106.106 INFO    ] Checking for system updates...
[2026-06-13 17:20:08,143.143 INFO    ] 200
[2026-06-13 17:20:08,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:08,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:08,203.203 INFO    ] No update needed
[2026-06-13 17:20:08,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 17:20:08,241.241 INFO    ] 200
[2026-06-13 17:20:08,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:08,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:20:08,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:08,336.336 INFO    ] No camera update needed
[2026-06-13 17:20:08,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:20:08,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:20:08,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:20:08,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:20:10,396.396 INFO    ] ================================================
[2026-06-13 17:20:10,411.411 INFO    ] Launching Daemon at Sat Jun 13 17:20:10 IST 2026
[2026-06-13 17:20:10,422.422 INFO    ] ================================================
[2026-06-13 17:20:10,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:20:10
[2026-06-13 17:20:11,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:20:11,411.411 INFO    ] Initializing speech engine...
[2026-06-13 17:20:11,435.435 INFO    ] 2026-06-13 17:20:11
[2026-06-13 17:20:11,690.690 INFO    ] 2026-06-13 17:20:11
[2026-06-13 17:20:11,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:20:11,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:20:11,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:20:12,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:20:12,125.125 INFO    ] time= 13/06/2026 17:20:12
[2026-06-13 17:20:12,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:20:12,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:20:12,304.304 INFO    ] No existing commands found in stream
[2026-06-13 17:20:17,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:20:17,318.318 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 17:20:20,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:20:20,401.401 INFO    ] Checking for system updates...
[2026-06-13 17:20:20,422.422 INFO    ] 200
[2026-06-13 17:20:20,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:20,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:20,457.457 INFO    ] No update needed
[2026-06-13 17:20:20,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 17:20:20,479.479 INFO    ] 200
[2026-06-13 17:20:20,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:20,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:20:20,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:20,542.542 INFO    ] No camera update needed
[2026-06-13 17:20:20,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:20:20,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:20:20,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:20:20,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:20:22,589.589 INFO    ] ================================================
[2026-06-13 17:20:22,604.604 INFO    ] Launching Daemon at Sat Jun 13 17:20:22 IST 2026
[2026-06-13 17:20:22,615.615 INFO    ] ================================================
[2026-06-13 17:20:22,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:20:22
[2026-06-13 17:20:23,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:20:23,416.416 INFO    ] Initializing speech engine...
[2026-06-13 17:20:23,421.421 INFO    ] 2026-06-13 17:20:23
[2026-06-13 17:20:23,626.626 INFO    ] 2026-06-13 17:20:23
[2026-06-13 17:20:23,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:20:23,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:20:23,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:20:23,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:20:24,027.027 INFO    ] time= 13/06/2026 17:20:23
[2026-06-13 17:20:24,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:20:24,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:20:24,142.142 INFO    ] No existing commands found in stream
[2026-06-13 17:20:29,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:20:29,155.155 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 17:20:33,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:20:33,359.359 INFO    ] Checking for system updates...
[2026-06-13 17:20:33,380.380 INFO    ] 200
[2026-06-13 17:20:33,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:33,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:33,414.414 INFO    ] No update needed
[2026-06-13 17:20:33,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 17:20:33,437.437 INFO    ] 200
[2026-06-13 17:20:33,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:33,465.465 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:20:33,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:33,511.511 INFO    ] No camera update needed
[2026-06-13 17:20:33,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:20:33,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:20:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:20:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:20:35,571.571 INFO    ] ================================================
[2026-06-13 17:20:35,587.587 INFO    ] Launching Daemon at Sat Jun 13 17:20:35 IST 2026
[2026-06-13 17:20:35,598.598 INFO    ] ================================================
[2026-06-13 17:20:36,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:20:36
[2026-06-13 17:20:36,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:20:36,789.789 INFO    ] Initializing speech engine...
[2026-06-13 17:20:36,795.795 INFO    ] 2026-06-13 17:20:36
[2026-06-13 17:20:37,007.007 INFO    ] 2026-06-13 17:20:36
[2026-06-13 17:20:37,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:20:37,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:20:37,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:20:37,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:20:37,428.428 INFO    ] time= 13/06/2026 17:20:37
[2026-06-13 17:20:37,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:20:37,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:20:37,545.545 INFO    ] No existing commands found in stream
[2026-06-13 17:20:42,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:20:42,551.551 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 17:20:45,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:20:45,490.490 INFO    ] Checking for system updates...
[2026-06-13 17:20:45,530.530 INFO    ] 200
[2026-06-13 17:20:45,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:45,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:45,595.595 INFO    ] No update needed
[2026-06-13 17:20:45,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 17:20:45,635.635 INFO    ] 200
[2026-06-13 17:20:45,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:45,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:20:45,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:20:45,837.837 INFO    ] No camera update needed
[2026-06-13 17:20:45,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:20:45,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:20:45,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:20:45,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:20:47,888.888 INFO    ] ================================================
[2026-06-13 17:20:47,897.897 INFO    ] Launching Daemon at Sat Jun 13 17:20:47 IST 2026
[2026-06-13 17:20:47,903.903 INFO    ] ================================================
[2026-06-13 17:20:48,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:20:48
[2026-06-13 17:20:48,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:20:48,732.732 INFO    ] Initializing speech engine...
[2026-06-13 17:20:48,736.736 INFO    ] 2026-06-13 17:20:48
[2026-06-13 17:20:48,946.946 INFO    ] 2026-06-13 17:20:48
[2026-06-13 17:20:48,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:20:49,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:20:49,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:20:49,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:20:49,365.365 INFO    ] time= 13/06/2026 17:20:49
[2026-06-13 17:20:49,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:20:49,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:20:49,472.472 INFO    ] No existing commands found in stream
[2026-06-13 17:20:54,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:20:54,485.485 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 17:20:56,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:20:56,971.971 INFO    ] Checking for system updates...
[2026-06-13 17:20:56,992.992 INFO    ] 200
[2026-06-13 17:20:56,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:57,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:20:57,026.026 INFO    ] No update needed
[2026-06-13 17:20:57,027.027 INFO    ] Checking for camera pi updates...
[2026-06-13 17:20:57,047.047 INFO    ] 200
[2026-06-13 17:20:57,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:20:57,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:20:57,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:20:57,119.119 INFO    ] No camera update needed
[2026-06-13 17:20:57,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:20:57,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:20:57,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:20:57,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:20:59,169.169 INFO    ] ================================================
[2026-06-13 17:20:59,184.184 INFO    ] Launching Daemon at Sat Jun 13 17:20:59 IST 2026
[2026-06-13 17:20:59,196.196 INFO    ] ================================================
[2026-06-13 17:20:59,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:20:59
[2026-06-13 17:20:59,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:00,013.013 INFO    ] Initializing speech engine...
[2026-06-13 17:21:00,018.018 INFO    ] 2026-06-13 17:21:00
[2026-06-13 17:21:00,222.222 INFO    ] 2026-06-13 17:21:00
[2026-06-13 17:21:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:00,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:00,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:00,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:00,631.631 INFO    ] time= 13/06/2026 17:21:00
[2026-06-13 17:21:00,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:00,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:00,736.736 INFO    ] No existing commands found in stream
[2026-06-13 17:21:05,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:05,748.748 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 17:21:06,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:21:06,217.217 INFO    ] Checking for system updates...
[2026-06-13 17:21:06,238.238 INFO    ] 200
[2026-06-13 17:21:06,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:06,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:21:06,271.271 INFO    ] No update needed
[2026-06-13 17:21:06,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 17:21:06,292.292 INFO    ] 200
[2026-06-13 17:21:06,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:06,317.317 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:21:06,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:21:06,365.365 INFO    ] No camera update needed
[2026-06-13 17:21:06,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:21:06,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:21:06,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:21:06,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:21:08,414.414 INFO    ] ================================================
[2026-06-13 17:21:08,430.430 INFO    ] Launching Daemon at Sat Jun 13 17:21:08 IST 2026
[2026-06-13 17:21:08,441.441 INFO    ] ================================================
[2026-06-13 17:21:08,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:21:08
[2026-06-13 17:21:09,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:09,252.252 INFO    ] Initializing speech engine...
[2026-06-13 17:21:09,254.254 INFO    ] 2026-06-13 17:21:09
[2026-06-13 17:21:09,446.446 INFO    ] 2026-06-13 17:21:09
[2026-06-13 17:21:09,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:09,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:09,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:09,866.866 INFO    ] time= 13/06/2026 17:21:09
[2026-06-13 17:21:09,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:09,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:10,049.049 INFO    ] No existing commands found in stream
[2026-06-13 17:21:15,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:15,062.062 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 17:21:18,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:21:18,796.796 INFO    ] Checking for system updates...
[2026-06-13 17:21:18,818.818 INFO    ] 200
[2026-06-13 17:21:18,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:18,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:18,857.857 INFO    ] No update needed
[2026-06-13 17:21:18,858.858 INFO    ] Checking for camera pi updates...
[2026-06-13 17:21:18,881.881 INFO    ] 200
[2026-06-13 17:21:18,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:18,908.908 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:21:18,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:18,953.953 INFO    ] No camera update needed
[2026-06-13 17:21:18,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:21:18,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:21:18,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:21:18,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:21:21,001.001 INFO    ] ================================================
[2026-06-13 17:21:21,016.016 INFO    ] Launching Daemon at Sat Jun 13 17:21:21 IST 2026
[2026-06-13 17:21:21,027.027 INFO    ] ================================================
[2026-06-13 17:21:21,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:21:21
[2026-06-13 17:21:21,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:21,828.828 INFO    ] Initializing speech engine...
[2026-06-13 17:21:21,842.842 INFO    ] 2026-06-13 17:21:21
[2026-06-13 17:21:22,049.049 INFO    ] 2026-06-13 17:21:22
[2026-06-13 17:21:22,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:22,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:22,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:22,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:22,457.457 INFO    ] time= 13/06/2026 17:21:22
[2026-06-13 17:21:22,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:22,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:22,567.567 INFO    ] No existing commands found in stream
[2026-06-13 17:21:27,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:27,581.581 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 17:21:28,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:21:28,045.045 INFO    ] Checking for system updates...
[2026-06-13 17:21:28,066.066 INFO    ] 200
[2026-06-13 17:21:28,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:28,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:28,100.100 INFO    ] No update needed
[2026-06-13 17:21:28,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 17:21:28,121.121 INFO    ] 200
[2026-06-13 17:21:28,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:28,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:21:28,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:28,185.185 INFO    ] No camera update needed
[2026-06-13 17:21:28,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:21:28,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:21:28,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:21:28,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:21:30,235.235 INFO    ] ================================================
[2026-06-13 17:21:30,250.250 INFO    ] Launching Daemon at Sat Jun 13 17:21:30 IST 2026
[2026-06-13 17:21:30,262.262 INFO    ] ================================================
[2026-06-13 17:21:30,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:21:30
[2026-06-13 17:21:30,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:31,091.091 INFO    ] Initializing speech engine...
[2026-06-13 17:21:31,095.095 INFO    ] 2026-06-13 17:21:31
[2026-06-13 17:21:31,313.313 INFO    ] 2026-06-13 17:21:31
[2026-06-13 17:21:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:31,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:31,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:31,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:31,752.752 INFO    ] time= 13/06/2026 17:21:31
[2026-06-13 17:21:31,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:31,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:31,864.864 INFO    ] No existing commands found in stream
[2026-06-13 17:21:36,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:36,881.881 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 17:21:39,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:21:39,631.631 INFO    ] Checking for system updates...
[2026-06-13 17:21:39,651.651 INFO    ] 200
[2026-06-13 17:21:39,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:39,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:39,685.685 INFO    ] No update needed
[2026-06-13 17:21:39,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 17:21:39,707.707 INFO    ] 200
[2026-06-13 17:21:39,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:39,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:21:39,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:39,785.785 INFO    ] No camera update needed
[2026-06-13 17:21:39,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:21:39,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:21:39,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:21:39,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:21:41,833.833 INFO    ] ================================================
[2026-06-13 17:21:41,849.849 INFO    ] Launching Daemon at Sat Jun 13 17:21:41 IST 2026
[2026-06-13 17:21:41,860.860 INFO    ] ================================================
[2026-06-13 17:21:42,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:21:42
[2026-06-13 17:21:42,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:42,659.659 INFO    ] Initializing speech engine...
[2026-06-13 17:21:42,671.671 INFO    ] 2026-06-13 17:21:42
[2026-06-13 17:21:42,877.877 INFO    ] 2026-06-13 17:21:42
[2026-06-13 17:21:42,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:43,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:43,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:43,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:43,277.277 INFO    ] time= 13/06/2026 17:21:43
[2026-06-13 17:21:43,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:43,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:43,392.392 INFO    ] No existing commands found in stream
[2026-06-13 17:21:48,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:48,404.404 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 17:21:49,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:21:49,167.167 INFO    ] Checking for system updates...
[2026-06-13 17:21:49,188.188 INFO    ] 200
[2026-06-13 17:21:49,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:49,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:49,221.221 INFO    ] No update needed
[2026-06-13 17:21:49,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 17:21:49,246.246 INFO    ] 200
[2026-06-13 17:21:49,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:21:49,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:21:49,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:21:49,316.316 INFO    ] No camera update needed
[2026-06-13 17:21:49,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:21:49,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:21:49,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:21:49,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:21:51,363.363 INFO    ] ================================================
[2026-06-13 17:21:51,379.379 INFO    ] Launching Daemon at Sat Jun 13 17:21:51 IST 2026
[2026-06-13 17:21:51,390.390 INFO    ] ================================================
[2026-06-13 17:21:51,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:21:51
[2026-06-13 17:21:52,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:21:52,298.298 INFO    ] Initializing speech engine...
[2026-06-13 17:21:52,311.311 INFO    ] 2026-06-13 17:21:52
[2026-06-13 17:21:52,580.580 INFO    ] 2026-06-13 17:21:52
[2026-06-13 17:21:52,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:21:52,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:21:52,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:21:53,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:21:53,058.058 INFO    ] time= 13/06/2026 17:21:53
[2026-06-13 17:21:53,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:21:53,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:21:53,284.284 INFO    ] No existing commands found in stream
[2026-06-13 17:21:58,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:21:58,313.313 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 17:22:00,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:22:00,058.058 INFO    ] Checking for system updates...
[2026-06-13 17:22:00,079.079 INFO    ] 200
[2026-06-13 17:22:00,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:00,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:00,114.114 INFO    ] No update needed
[2026-06-13 17:22:00,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:00,138.138 INFO    ] 200
[2026-06-13 17:22:00,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:00,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:00,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:00,203.203 INFO    ] No camera update needed
[2026-06-13 17:22:00,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:00,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:00,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:00,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:02,244.244 INFO    ] ================================================
[2026-06-13 17:22:02,257.257 INFO    ] Launching Daemon at Sat Jun 13 17:22:02 IST 2026
[2026-06-13 17:22:02,267.267 INFO    ] ================================================
[2026-06-13 17:22:02,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:02
[2026-06-13 17:22:02,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:03,134.134 INFO    ] Initializing speech engine...
[2026-06-13 17:22:03,138.138 INFO    ] 2026-06-13 17:22:03
[2026-06-13 17:22:03,336.336 INFO    ] 2026-06-13 17:22:03
[2026-06-13 17:22:03,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:03,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:03,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:03,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:03,634.634 INFO    ] time= 13/06/2026 17:22:03
[2026-06-13 17:22:03,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:03,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:03,718.718 INFO    ] No existing commands found in stream
[2026-06-13 17:22:08,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:22:08,743.743 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 17:22:09,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:22:09,496.496 INFO    ] Checking for system updates...
[2026-06-13 17:22:09,516.516 INFO    ] 200
[2026-06-13 17:22:09,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:09,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:22:09,553.553 INFO    ] No update needed
[2026-06-13 17:22:09,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:09,574.574 INFO    ] 200
[2026-06-13 17:22:09,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:09,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:09,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:22:09,647.647 INFO    ] No camera update needed
[2026-06-13 17:22:09,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:09,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:09,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:09,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:11,701.701 INFO    ] ================================================
[2026-06-13 17:22:11,716.716 INFO    ] Launching Daemon at Sat Jun 13 17:22:11 IST 2026
[2026-06-13 17:22:11,727.727 INFO    ] ================================================
[2026-06-13 17:22:12,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:12
[2026-06-13 17:22:12,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:12,507.507 INFO    ] Initializing speech engine...
[2026-06-13 17:22:12,516.516 INFO    ] 2026-06-13 17:22:12
[2026-06-13 17:22:12,744.744 INFO    ] 2026-06-13 17:22:12
[2026-06-13 17:22:12,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:12,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:12,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:13,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:13,142.142 INFO    ] time= 13/06/2026 17:22:13
[2026-06-13 17:22:13,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:13,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:13,307.307 INFO    ] No existing commands found in stream
[2026-06-13 17:22:18,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:22:18,321.321 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 17:22:20,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:22:20,546.546 INFO    ] Checking for system updates...
[2026-06-13 17:22:20,568.568 INFO    ] 200
[2026-06-13 17:22:20,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:20,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:20,607.607 INFO    ] No update needed
[2026-06-13 17:22:20,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:20,629.629 INFO    ] 200
[2026-06-13 17:22:20,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:20,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:20,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:22:20,695.695 INFO    ] No camera update needed
[2026-06-13 17:22:20,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:20,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:20,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:20,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:22,745.745 INFO    ] ================================================
[2026-06-13 17:22:22,760.760 INFO    ] Launching Daemon at Sat Jun 13 17:22:22 IST 2026
[2026-06-13 17:22:22,771.771 INFO    ] ================================================
[2026-06-13 17:22:23,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:23
[2026-06-13 17:22:23,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:23,592.592 INFO    ] Initializing speech engine...
[2026-06-13 17:22:23,605.605 INFO    ] 2026-06-13 17:22:23
[2026-06-13 17:22:23,829.829 INFO    ] 2026-06-13 17:22:23
[2026-06-13 17:22:23,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:24,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:24,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:24,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:24,237.237 INFO    ] time= 13/06/2026 17:22:24
[2026-06-13 17:22:24,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:24,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:24,390.390 INFO    ] No existing commands found in stream
[2026-06-13 17:22:29,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:22:29,404.404 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 17:22:32,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:22:32,537.537 INFO    ] Checking for system updates...
[2026-06-13 17:22:32,560.560 INFO    ] 200
[2026-06-13 17:22:32,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:32,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:22:32,602.602 INFO    ] No update needed
[2026-06-13 17:22:32,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:32,628.628 INFO    ] 200
[2026-06-13 17:22:32,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:32,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:32,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:22:32,692.692 INFO    ] No camera update needed
[2026-06-13 17:22:32,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:32,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:32,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:32,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:34,739.739 INFO    ] ================================================
[2026-06-13 17:22:34,754.754 INFO    ] Launching Daemon at Sat Jun 13 17:22:34 IST 2026
[2026-06-13 17:22:34,765.765 INFO    ] ================================================
[2026-06-13 17:22:35,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:35
[2026-06-13 17:22:35,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:35,635.635 INFO    ] Initializing speech engine...
[2026-06-13 17:22:35,641.641 INFO    ] 2026-06-13 17:22:35
[2026-06-13 17:22:35,853.853 INFO    ] 2026-06-13 17:22:35
[2026-06-13 17:22:35,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:36,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:36,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:36,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:36,212.212 INFO    ] time= 13/06/2026 17:22:36
[2026-06-13 17:22:36,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:36,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:36,380.380 INFO    ] No existing commands found in stream
[2026-06-13 17:22:41,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:22:41,394.394 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 17:22:42,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:22:42,796.796 INFO    ] Checking for system updates...
[2026-06-13 17:22:42,817.817 INFO    ] 200
[2026-06-13 17:22:42,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:42,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:42,851.851 INFO    ] No update needed
[2026-06-13 17:22:42,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:42,873.873 INFO    ] 200
[2026-06-13 17:22:42,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:42,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:42,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:42,941.941 INFO    ] No camera update needed
[2026-06-13 17:22:42,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:42,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:42,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:42,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:44,989.989 INFO    ] ================================================
[2026-06-13 17:22:45,004.004 INFO    ] Launching Daemon at Sat Jun 13 17:22:44 IST 2026
[2026-06-13 17:22:45,014.014 INFO    ] ================================================
[2026-06-13 17:22:45,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:45
[2026-06-13 17:22:45,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:45,812.812 INFO    ] Initializing speech engine...
[2026-06-13 17:22:45,818.818 INFO    ] 2026-06-13 17:22:45
[2026-06-13 17:22:46,023.023 INFO    ] 2026-06-13 17:22:46
[2026-06-13 17:22:46,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:46,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:46,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:46,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:46,428.428 INFO    ] time= 13/06/2026 17:22:46
[2026-06-13 17:22:46,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:46,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:46,539.539 INFO    ] No existing commands found in stream
[2026-06-13 17:22:51,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:22:51,551.551 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 17:22:54,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:22:54,566.566 INFO    ] Checking for system updates...
[2026-06-13 17:22:54,588.588 INFO    ] 200
[2026-06-13 17:22:54,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:54,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:54,623.623 INFO    ] No update needed
[2026-06-13 17:22:54,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 17:22:54,644.644 INFO    ] 200
[2026-06-13 17:22:54,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:22:54,668.668 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:22:54,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:22:54,812.812 INFO    ] No camera update needed
[2026-06-13 17:22:54,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:22:54,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:22:54,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:22:54,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:22:56,859.859 INFO    ] ================================================
[2026-06-13 17:22:56,874.874 INFO    ] Launching Daemon at Sat Jun 13 17:22:56 IST 2026
[2026-06-13 17:22:56,885.885 INFO    ] ================================================
[2026-06-13 17:22:57,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:22:57
[2026-06-13 17:22:57,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:22:57,670.670 INFO    ] Initializing speech engine...
[2026-06-13 17:22:57,679.679 INFO    ] 2026-06-13 17:22:57
[2026-06-13 17:22:57,883.883 INFO    ] 2026-06-13 17:22:57
[2026-06-13 17:22:57,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:22:58,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:22:58,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:22:58,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:22:58,287.287 INFO    ] time= 13/06/2026 17:22:58
[2026-06-13 17:22:58,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:22:58,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:22:58,395.395 INFO    ] No existing commands found in stream
[2026-06-13 17:23:03,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:23:03,409.409 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 17:23:06,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:23:06,027.027 INFO    ] Checking for system updates...
[2026-06-13 17:23:06,049.049 INFO    ] 200
[2026-06-13 17:23:06,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:06,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:23:06,082.082 INFO    ] No update needed
[2026-06-13 17:23:06,083.083 INFO    ] Checking for camera pi updates...
[2026-06-13 17:23:06,103.103 INFO    ] 200
[2026-06-13 17:23:06,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:06,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:23:06,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:23:06,168.168 INFO    ] No camera update needed
[2026-06-13 17:23:06,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:23:06,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:23:06,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:23:06,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:23:08,216.216 INFO    ] ================================================
[2026-06-13 17:23:08,232.232 INFO    ] Launching Daemon at Sat Jun 13 17:23:08 IST 2026
[2026-06-13 17:23:08,244.244 INFO    ] ================================================
[2026-06-13 17:23:08,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:23:08
[2026-06-13 17:23:08,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:23:09,030.030 INFO    ] Initializing speech engine...
[2026-06-13 17:23:09,035.035 INFO    ] 2026-06-13 17:23:09
[2026-06-13 17:23:09,238.238 INFO    ] 2026-06-13 17:23:09
[2026-06-13 17:23:09,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:23:09,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:23:09,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:23:09,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:23:09,651.651 INFO    ] time= 13/06/2026 17:23:09
[2026-06-13 17:23:09,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:23:09,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:23:09,749.749 INFO    ] No existing commands found in stream
[2026-06-13 17:23:14,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:23:14,762.762 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 17:23:17,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:23:17,531.531 INFO    ] Checking for system updates...
[2026-06-13 17:23:17,552.552 INFO    ] 200
[2026-06-13 17:23:17,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:17,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:17,587.587 INFO    ] No update needed
[2026-06-13 17:23:17,589.589 INFO    ] Checking for camera pi updates...
[2026-06-13 17:23:17,608.608 INFO    ] 200
[2026-06-13 17:23:17,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:17,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:23:17,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:17,676.676 INFO    ] No camera update needed
[2026-06-13 17:23:17,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:23:17,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:23:17,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:23:17,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:23:19,724.724 INFO    ] ================================================
[2026-06-13 17:23:19,740.740 INFO    ] Launching Daemon at Sat Jun 13 17:23:19 IST 2026
[2026-06-13 17:23:19,752.752 INFO    ] ================================================
[2026-06-13 17:23:20,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:23:20
[2026-06-13 17:23:20,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:23:20,559.559 INFO    ] Initializing speech engine...
[2026-06-13 17:23:20,567.567 INFO    ] 2026-06-13 17:23:20
[2026-06-13 17:23:20,795.795 INFO    ] 2026-06-13 17:23:20
[2026-06-13 17:23:20,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:23:20,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:23:21,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:23:21,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:23:21,219.219 INFO    ] time= 13/06/2026 17:23:21
[2026-06-13 17:23:21,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:23:21,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:23:21,357.357 INFO    ] No existing commands found in stream
[2026-06-13 17:23:26,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:23:26,371.371 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 17:23:30,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:23:30,523.523 INFO    ] Checking for system updates...
[2026-06-13 17:23:30,543.543 INFO    ] 200
[2026-06-13 17:23:30,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:30,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:23:30,577.577 INFO    ] No update needed
[2026-06-13 17:23:30,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 17:23:30,598.598 INFO    ] 200
[2026-06-13 17:23:30,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:30,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:23:30,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:23:30,665.665 INFO    ] No camera update needed
[2026-06-13 17:23:30,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:23:30,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:23:30,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:23:30,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:23:32,698.698 INFO    ] ================================================
[2026-06-13 17:23:32,707.707 INFO    ] Launching Daemon at Sat Jun 13 17:23:32 IST 2026
[2026-06-13 17:23:32,713.713 INFO    ] ================================================
[2026-06-13 17:23:33,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:23:33
[2026-06-13 17:23:33,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:23:33,531.531 INFO    ] Initializing speech engine...
[2026-06-13 17:23:33,550.550 INFO    ] 2026-06-13 17:23:33
[2026-06-13 17:23:33,801.801 INFO    ] 2026-06-13 17:23:33
[2026-06-13 17:23:33,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:23:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:23:34,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:23:34,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:23:34,143.143 INFO    ] time= 13/06/2026 17:23:34
[2026-06-13 17:23:34,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:23:34,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:23:34,258.258 INFO    ] No existing commands found in stream
[2026-06-13 17:23:39,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:23:39,292.292 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 17:23:40,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:23:40,663.663 INFO    ] Checking for system updates...
[2026-06-13 17:23:40,684.684 INFO    ] 200
[2026-06-13 17:23:40,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:40,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:40,721.721 INFO    ] No update needed
[2026-06-13 17:23:40,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 17:23:40,742.742 INFO    ] 200
[2026-06-13 17:23:40,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:40,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:23:40,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:40,810.810 INFO    ] No camera update needed
[2026-06-13 17:23:40,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:23:40,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:23:40,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:23:40,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:23:42,857.857 INFO    ] ================================================
[2026-06-13 17:23:42,872.872 INFO    ] Launching Daemon at Sat Jun 13 17:23:42 IST 2026
[2026-06-13 17:23:42,884.884 INFO    ] ================================================
[2026-06-13 17:23:43,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:23:43
[2026-06-13 17:23:43,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:23:43,750.750 INFO    ] Initializing speech engine...
[2026-06-13 17:23:43,756.756 INFO    ] 2026-06-13 17:23:43
[2026-06-13 17:23:43,967.967 INFO    ] 2026-06-13 17:23:43
[2026-06-13 17:23:43,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:23:44,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:23:44,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:23:44,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:23:44,396.396 INFO    ] time= 13/06/2026 17:23:44
[2026-06-13 17:23:44,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:23:44,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:23:44,621.621 INFO    ] No existing commands found in stream
[2026-06-13 17:23:49,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:23:49,662.662 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 17:23:52,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:23:52,459.459 INFO    ] Checking for system updates...
[2026-06-13 17:23:52,481.481 INFO    ] 200
[2026-06-13 17:23:52,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:52,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:52,514.514 INFO    ] No update needed
[2026-06-13 17:23:52,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 17:23:52,536.536 INFO    ] 200
[2026-06-13 17:23:52,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:23:52,561.561 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:23:52,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:23:52,609.609 INFO    ] No camera update needed
[2026-06-13 17:23:52,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:23:52,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:23:52,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:23:52,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:23:54,655.655 INFO    ] ================================================
[2026-06-13 17:23:54,671.671 INFO    ] Launching Daemon at Sat Jun 13 17:23:54 IST 2026
[2026-06-13 17:23:54,682.682 INFO    ] ================================================
[2026-06-13 17:23:55,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:23:55
[2026-06-13 17:23:55,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:23:55,472.472 INFO    ] Initializing speech engine...
[2026-06-13 17:23:55,477.477 INFO    ] 2026-06-13 17:23:55
[2026-06-13 17:23:55,712.712 INFO    ] 2026-06-13 17:23:55
[2026-06-13 17:23:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:23:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:23:56,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:23:56,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:23:56,165.165 INFO    ] time= 13/06/2026 17:23:56
[2026-06-13 17:23:56,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:23:56,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:23:56,400.400 INFO    ] No existing commands found in stream
[2026-06-13 17:24:01,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:24:01,433.433 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 17:24:04,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:24:04,882.882 INFO    ] Checking for system updates...
[2026-06-13 17:24:04,902.902 INFO    ] 200
[2026-06-13 17:24:04,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:04,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:24:04,939.939 INFO    ] No update needed
[2026-06-13 17:24:04,941.941 INFO    ] Checking for camera pi updates...
[2026-06-13 17:24:04,961.961 INFO    ] 200
[2026-06-13 17:24:04,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:04,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:24:05,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:24:05,031.031 INFO    ] No camera update needed
[2026-06-13 17:24:05,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:24:05,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:24:05,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:24:05,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:24:07,080.080 INFO    ] ================================================
[2026-06-13 17:24:07,096.096 INFO    ] Launching Daemon at Sat Jun 13 17:24:07 IST 2026
[2026-06-13 17:24:07,108.108 INFO    ] ================================================
[2026-06-13 17:24:07,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:24:07
[2026-06-13 17:24:07,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:24:07,941.941 INFO    ] Initializing speech engine...
[2026-06-13 17:24:07,954.954 INFO    ] 2026-06-13 17:24:07
[2026-06-13 17:24:08,166.166 INFO    ] 2026-06-13 17:24:08
[2026-06-13 17:24:08,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:24:08,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:24:08,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:24:08,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:24:08,568.568 INFO    ] time= 13/06/2026 17:24:08
[2026-06-13 17:24:08,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:24:08,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:24:08,684.684 INFO    ] No existing commands found in stream
[2026-06-13 17:24:13,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:24:13,698.698 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 17:24:17,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:24:17,167.167 INFO    ] Checking for system updates...
[2026-06-13 17:24:17,188.188 INFO    ] 200
[2026-06-13 17:24:17,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:17,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:24:17,222.222 INFO    ] No update needed
[2026-06-13 17:24:17,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 17:24:17,243.243 INFO    ] 200
[2026-06-13 17:24:17,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:17,268.268 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:24:17,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:24:17,296.296 INFO    ] No camera update needed
[2026-06-13 17:24:17,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:24:17,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:24:17,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:24:17,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:24:19,347.347 INFO    ] ================================================
[2026-06-13 17:24:19,362.362 INFO    ] Launching Daemon at Sat Jun 13 17:24:19 IST 2026
[2026-06-13 17:24:19,373.373 INFO    ] ================================================
[2026-06-13 17:24:19,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:24:19
[2026-06-13 17:24:20,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:24:20,173.173 INFO    ] Initializing speech engine...
[2026-06-13 17:24:20,177.177 INFO    ] 2026-06-13 17:24:20
[2026-06-13 17:24:20,407.407 INFO    ] 2026-06-13 17:24:20
[2026-06-13 17:24:20,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:24:20,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:24:20,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:24:20,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:24:20,654.654 INFO    ] time= 13/06/2026 17:24:20
[2026-06-13 17:24:20,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:24:20,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:24:20,735.735 INFO    ] No existing commands found in stream
[2026-06-13 17:24:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:24:25,764.764 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 17:24:27,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:24:27,805.805 INFO    ] Checking for system updates...
[2026-06-13 17:24:27,826.826 INFO    ] 200
[2026-06-13 17:24:27,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:27,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:24:27,860.860 INFO    ] No update needed
[2026-06-13 17:24:27,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 17:24:27,881.881 INFO    ] 200
[2026-06-13 17:24:27,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:27,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:24:27,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:24:27,944.944 INFO    ] No camera update needed
[2026-06-13 17:24:27,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:24:27,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:24:27,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:24:27,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:24:29,992.992 INFO    ] ================================================
[2026-06-13 17:24:30,009.009 INFO    ] Launching Daemon at Sat Jun 13 17:24:30 IST 2026
[2026-06-13 17:24:30,023.023 INFO    ] ================================================
[2026-06-13 17:24:30,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:24:30
[2026-06-13 17:24:30,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:24:30,852.852 INFO    ] Initializing speech engine...
[2026-06-13 17:24:30,858.858 INFO    ] 2026-06-13 17:24:30
[2026-06-13 17:24:31,061.061 INFO    ] 2026-06-13 17:24:31
[2026-06-13 17:24:31,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:24:31,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:24:31,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:24:31,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:24:31,415.415 INFO    ] time= 13/06/2026 17:24:31
[2026-06-13 17:24:31,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:24:31,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:24:31,590.590 INFO    ] No existing commands found in stream
[2026-06-13 17:24:36,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:24:36,603.603 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 17:24:40,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:24:40,526.526 INFO    ] Checking for system updates...
[2026-06-13 17:24:40,566.566 INFO    ] 200
[2026-06-13 17:24:40,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:40,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:24:40,626.626 INFO    ] No update needed
[2026-06-13 17:24:40,628.628 INFO    ] Checking for camera pi updates...
[2026-06-13 17:24:40,660.660 INFO    ] 200
[2026-06-13 17:24:40,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:40,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:24:40,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:24:40,731.731 INFO    ] No camera update needed
[2026-06-13 17:24:40,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:24:40,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:24:40,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:24:40,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:24:42,781.781 INFO    ] ================================================
[2026-06-13 17:24:42,797.797 INFO    ] Launching Daemon at Sat Jun 13 17:24:42 IST 2026
[2026-06-13 17:24:42,809.809 INFO    ] ================================================
[2026-06-13 17:24:43,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:24:43
[2026-06-13 17:24:43,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:24:43,644.644 INFO    ] Initializing speech engine...
[2026-06-13 17:24:43,648.648 INFO    ] 2026-06-13 17:24:43
[2026-06-13 17:24:43,880.880 INFO    ] 2026-06-13 17:24:43
[2026-06-13 17:24:43,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:24:44,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:24:44,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:24:44,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:24:44,120.120 INFO    ] time= 13/06/2026 17:24:44
[2026-06-13 17:24:44,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:24:44,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:24:44,216.216 INFO    ] No existing commands found in stream
[2026-06-13 17:24:49,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:24:49,252.252 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 17:24:51,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:24:51,264.264 INFO    ] Checking for system updates...
[2026-06-13 17:24:51,285.285 INFO    ] 200
[2026-06-13 17:24:51,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:51,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:24:51,321.321 INFO    ] No update needed
[2026-06-13 17:24:51,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 17:24:51,343.343 INFO    ] 200
[2026-06-13 17:24:51,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:24:51,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:24:51,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:24:51,402.402 INFO    ] No camera update needed
[2026-06-13 17:24:51,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:24:51,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:24:51,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:24:51,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:24:53,450.450 INFO    ] ================================================
[2026-06-13 17:24:53,465.465 INFO    ] Launching Daemon at Sat Jun 13 17:24:53 IST 2026
[2026-06-13 17:24:53,477.477 INFO    ] ================================================
[2026-06-13 17:24:53,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:24:53
[2026-06-13 17:24:54,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:24:54,303.303 INFO    ] Initializing speech engine...
[2026-06-13 17:24:54,309.309 INFO    ] 2026-06-13 17:24:54
[2026-06-13 17:24:54,512.512 INFO    ] 2026-06-13 17:24:54
[2026-06-13 17:24:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:24:54,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:24:54,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:24:54,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:24:54,912.912 INFO    ] time= 13/06/2026 17:24:54
[2026-06-13 17:24:54,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:24:54,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:24:55,028.028 INFO    ] No existing commands found in stream
[2026-06-13 17:25:00,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:00,040.040 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 17:25:00,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:25:00,421.421 INFO    ] Checking for system updates...
[2026-06-13 17:25:00,441.441 INFO    ] 200
[2026-06-13 17:25:00,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:00,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:00,475.475 INFO    ] No update needed
[2026-06-13 17:25:00,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 17:25:00,497.497 INFO    ] 200
[2026-06-13 17:25:00,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:00,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:25:00,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:00,664.664 INFO    ] No camera update needed
[2026-06-13 17:25:00,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:25:00,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:25:00,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:25:00,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:25:02,698.698 INFO    ] ================================================
[2026-06-13 17:25:02,707.707 INFO    ] Launching Daemon at Sat Jun 13 17:25:02 IST 2026
[2026-06-13 17:25:02,713.713 INFO    ] ================================================
[2026-06-13 17:25:03,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:25:03
[2026-06-13 17:25:03,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:25:03,538.538 INFO    ] Initializing speech engine...
[2026-06-13 17:25:03,541.541 INFO    ] 2026-06-13 17:25:03
[2026-06-13 17:25:03,746.746 INFO    ] 2026-06-13 17:25:03
[2026-06-13 17:25:03,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:25:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:25:03,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:25:04,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:25:04,087.087 INFO    ] time= 13/06/2026 17:25:04
[2026-06-13 17:25:04,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:25:04,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:25:04,262.262 INFO    ] No existing commands found in stream
[2026-06-13 17:25:09,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:09,275.275 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 17:25:13,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:25:13,357.357 INFO    ] Checking for system updates...
[2026-06-13 17:25:13,377.377 INFO    ] 200
[2026-06-13 17:25:13,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:13,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:25:13,413.413 INFO    ] No update needed
[2026-06-13 17:25:13,415.415 INFO    ] Checking for camera pi updates...
[2026-06-13 17:25:13,434.434 INFO    ] 200
[2026-06-13 17:25:13,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:13,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:25:13,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:25:13,501.501 INFO    ] No camera update needed
[2026-06-13 17:25:13,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:25:13,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:25:13,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:25:13,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:25:15,549.549 INFO    ] ================================================
[2026-06-13 17:25:15,563.563 INFO    ] Launching Daemon at Sat Jun 13 17:25:15 IST 2026
[2026-06-13 17:25:15,574.574 INFO    ] ================================================
[2026-06-13 17:25:15,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:25:15
[2026-06-13 17:25:16,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:25:16,382.382 INFO    ] Initializing speech engine...
[2026-06-13 17:25:16,387.387 INFO    ] 2026-06-13 17:25:16
[2026-06-13 17:25:16,594.594 INFO    ] 2026-06-13 17:25:16
[2026-06-13 17:25:16,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:25:16,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:25:16,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:25:16,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:25:16,992.992 INFO    ] time= 13/06/2026 17:25:16
[2026-06-13 17:25:17,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:25:17,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:25:17,111.111 INFO    ] No existing commands found in stream
[2026-06-13 17:25:22,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:22,124.124 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 17:25:25,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:25:25,364.364 INFO    ] Checking for system updates...
[2026-06-13 17:25:25,385.385 INFO    ] 200
[2026-06-13 17:25:25,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:25,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:25,419.419 INFO    ] No update needed
[2026-06-13 17:25:25,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 17:25:25,441.441 INFO    ] 200
[2026-06-13 17:25:25,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:25,466.466 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:25:25,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:25,491.491 INFO    ] No camera update needed
[2026-06-13 17:25:25,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:25:25,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:25:25,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:25:25,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:25:27,539.539 INFO    ] ================================================
[2026-06-13 17:25:27,554.554 INFO    ] Launching Daemon at Sat Jun 13 17:25:27 IST 2026
[2026-06-13 17:25:27,565.565 INFO    ] ================================================
[2026-06-13 17:25:27,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:25:27
[2026-06-13 17:25:28,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:25:28,379.379 INFO    ] Initializing speech engine...
[2026-06-13 17:25:28,384.384 INFO    ] 2026-06-13 17:25:28
[2026-06-13 17:25:28,587.587 INFO    ] 2026-06-13 17:25:28
[2026-06-13 17:25:28,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:25:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:25:28,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:25:28,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:25:28,992.992 INFO    ] time= 13/06/2026 17:25:28
[2026-06-13 17:25:29,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:25:29,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:25:29,103.103 INFO    ] No existing commands found in stream
[2026-06-13 17:25:34,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:34,114.114 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 17:25:37,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:25:37,775.775 INFO    ] Checking for system updates...
[2026-06-13 17:25:37,797.797 INFO    ] 200
[2026-06-13 17:25:37,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:37,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:25:37,830.830 INFO    ] No update needed
[2026-06-13 17:25:37,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 17:25:37,851.851 INFO    ] 200
[2026-06-13 17:25:37,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:37,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:25:37,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:25:37,914.914 INFO    ] No camera update needed
[2026-06-13 17:25:37,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:25:37,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:25:37,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:25:37,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:25:39,961.961 INFO    ] ================================================
[2026-06-13 17:25:39,976.976 INFO    ] Launching Daemon at Sat Jun 13 17:25:39 IST 2026
[2026-06-13 17:25:39,987.987 INFO    ] ================================================
[2026-06-13 17:25:40,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:25:40
[2026-06-13 17:25:40,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:25:40,772.772 INFO    ] Initializing speech engine...
[2026-06-13 17:25:40,782.782 INFO    ] 2026-06-13 17:25:40
[2026-06-13 17:25:40,987.987 INFO    ] 2026-06-13 17:25:40
[2026-06-13 17:25:41,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:25:41,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:25:41,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:25:41,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:25:41,396.396 INFO    ] time= 13/06/2026 17:25:41
[2026-06-13 17:25:41,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:25:41,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:25:41,499.499 INFO    ] No existing commands found in stream
[2026-06-13 17:25:46,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:46,512.512 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 17:25:49,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:25:49,494.494 INFO    ] Checking for system updates...
[2026-06-13 17:25:49,515.515 INFO    ] 200
[2026-06-13 17:25:49,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:49,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:49,549.549 INFO    ] No update needed
[2026-06-13 17:25:49,550.550 INFO    ] Checking for camera pi updates...
[2026-06-13 17:25:49,573.573 INFO    ] 200
[2026-06-13 17:25:49,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:25:49,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:25:49,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:25:49,639.639 INFO    ] No camera update needed
[2026-06-13 17:25:49,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:25:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:25:49,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:25:49,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:25:51,687.687 INFO    ] ================================================
[2026-06-13 17:25:51,702.702 INFO    ] Launching Daemon at Sat Jun 13 17:25:51 IST 2026
[2026-06-13 17:25:51,713.713 INFO    ] ================================================
[2026-06-13 17:25:52,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:25:52
[2026-06-13 17:25:52,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:25:52,502.502 INFO    ] Initializing speech engine...
[2026-06-13 17:25:52,510.510 INFO    ] 2026-06-13 17:25:52
[2026-06-13 17:25:52,734.734 INFO    ] 2026-06-13 17:25:52
[2026-06-13 17:25:52,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:25:52,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:25:52,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:25:53,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:25:53,156.156 INFO    ] time= 13/06/2026 17:25:53
[2026-06-13 17:25:53,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:25:53,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:25:53,296.296 INFO    ] No existing commands found in stream
[2026-06-13 17:25:58,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:25:58,308.308 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 17:26:01,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:26:01,784.784 INFO    ] Checking for system updates...
[2026-06-13 17:26:01,829.829 INFO    ] 200
[2026-06-13 17:26:01,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:01,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:01,874.874 INFO    ] No update needed
[2026-06-13 17:26:01,876.876 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:01,901.901 INFO    ] 200
[2026-06-13 17:26:01,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:01,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:01,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:01,967.967 INFO    ] No camera update needed
[2026-06-13 17:26:01,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:01,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:01,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:01,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:04,014.014 INFO    ] ================================================
[2026-06-13 17:26:04,029.029 INFO    ] Launching Daemon at Sat Jun 13 17:26:04 IST 2026
[2026-06-13 17:26:04,040.040 INFO    ] ================================================
[2026-06-13 17:26:04,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:04
[2026-06-13 17:26:04,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:26:05,199.199 INFO    ] Initializing speech engine...
[2026-06-13 17:26:05,211.211 INFO    ] 2026-06-13 17:26:05
[2026-06-13 17:26:05,498.498 INFO    ] 2026-06-13 17:26:05
[2026-06-13 17:26:05,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:26:05,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:26:05,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:26:05,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:26:05,886.886 INFO    ] time= 13/06/2026 17:26:05
[2026-06-13 17:26:05,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:26:05,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:26:06,045.045 INFO    ] No existing commands found in stream
[2026-06-13 17:26:11,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:26:11,076.076 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 17:26:14,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:26:14,868.868 INFO    ] Checking for system updates...
[2026-06-13 17:26:14,889.889 INFO    ] 200
[2026-06-13 17:26:14,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:14,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:26:14,922.922 INFO    ] No update needed
[2026-06-13 17:26:14,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:14,943.943 INFO    ] 200
[2026-06-13 17:26:14,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:14,968.968 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:15,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:26:15,010.010 INFO    ] No camera update needed
[2026-06-13 17:26:15,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:15,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:15,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:15,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:17,056.056 INFO    ] ================================================
[2026-06-13 17:26:17,075.075 INFO    ] Launching Daemon at Sat Jun 13 17:26:17 IST 2026
[2026-06-13 17:26:17,086.086 INFO    ] ================================================
[2026-06-13 17:26:17,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:17
[2026-06-13 17:26:17,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:26:17,889.889 INFO    ] Initializing speech engine...
[2026-06-13 17:26:17,901.901 INFO    ] 2026-06-13 17:26:17
[2026-06-13 17:26:18,107.107 INFO    ] 2026-06-13 17:26:18
[2026-06-13 17:26:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:26:18,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:26:18,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:26:18,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:26:18,506.506 INFO    ] time= 13/06/2026 17:26:18
[2026-06-13 17:26:18,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:26:18,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:26:18,622.622 INFO    ] No existing commands found in stream
[2026-06-13 17:26:23,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:26:23,633.633 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 17:26:24,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:26:24,116.116 INFO    ] Checking for system updates...
[2026-06-13 17:26:24,137.137 INFO    ] 200
[2026-06-13 17:26:24,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:24,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:26:24,173.173 INFO    ] No update needed
[2026-06-13 17:26:24,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:24,194.194 INFO    ] 200
[2026-06-13 17:26:24,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:24,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:24,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:26:24,261.261 INFO    ] No camera update needed
[2026-06-13 17:26:24,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:24,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:24,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:24,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:26,311.311 INFO    ] ================================================
[2026-06-13 17:26:26,327.327 INFO    ] Launching Daemon at Sat Jun 13 17:26:26 IST 2026
[2026-06-13 17:26:26,338.338 INFO    ] ================================================
[2026-06-13 17:26:26,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:26
[2026-06-13 17:26:27,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:26:27,297.297 INFO    ] Initializing speech engine...
[2026-06-13 17:26:27,302.302 INFO    ] 2026-06-13 17:26:27
[2026-06-13 17:26:27,571.571 INFO    ] 2026-06-13 17:26:27
[2026-06-13 17:26:27,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:26:27,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:26:27,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:26:27,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:26:27,926.926 INFO    ] time= 13/06/2026 17:26:27
[2026-06-13 17:26:27,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:26:27,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:26:28,006.006 INFO    ] No existing commands found in stream
[2026-06-13 17:26:33,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:26:33,020.020 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 17:26:36,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:26:36,315.315 INFO    ] Checking for system updates...
[2026-06-13 17:26:36,336.336 INFO    ] 200
[2026-06-13 17:26:36,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:36,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:36,370.370 INFO    ] No update needed
[2026-06-13 17:26:36,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:36,393.393 INFO    ] 200
[2026-06-13 17:26:36,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:36,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:36,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:36,462.462 INFO    ] No camera update needed
[2026-06-13 17:26:36,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:36,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:36,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:36,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:38,512.512 INFO    ] ================================================
[2026-06-13 17:26:38,527.527 INFO    ] Launching Daemon at Sat Jun 13 17:26:38 IST 2026
[2026-06-13 17:26:38,538.538 INFO    ] ================================================
[2026-06-13 17:26:38,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:38
[2026-06-13 17:26:39,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:26:39,314.314 INFO    ] Initializing speech engine...
[2026-06-13 17:26:39,317.317 INFO    ] 2026-06-13 17:26:39
[2026-06-13 17:26:39,548.548 INFO    ] 2026-06-13 17:26:39
[2026-06-13 17:26:39,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:26:39,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:26:39,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:26:39,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:26:39,973.973 INFO    ] time= 13/06/2026 17:26:39
[2026-06-13 17:26:40,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:26:40,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:26:40,104.104 INFO    ] No existing commands found in stream
[2026-06-13 17:26:45,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:26:45,115.115 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 17:26:47,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:26:47,532.532 INFO    ] Checking for system updates...
[2026-06-13 17:26:47,563.563 INFO    ] 200
[2026-06-13 17:26:47,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:47,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:47,596.596 INFO    ] No update needed
[2026-06-13 17:26:47,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:47,617.617 INFO    ] 200
[2026-06-13 17:26:47,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:47,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:47,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:47,682.682 INFO    ] No camera update needed
[2026-06-13 17:26:47,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:47,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:47,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:47,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:49,730.730 INFO    ] ================================================
[2026-06-13 17:26:49,747.747 INFO    ] Launching Daemon at Sat Jun 13 17:26:49 IST 2026
[2026-06-13 17:26:49,758.758 INFO    ] ================================================
[2026-06-13 17:26:50,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:50
[2026-06-13 17:26:50,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:26:50,549.549 INFO    ] Initializing speech engine...
[2026-06-13 17:26:50,554.554 INFO    ] 2026-06-13 17:26:50
[2026-06-13 17:26:50,758.758 INFO    ] 2026-06-13 17:26:50
[2026-06-13 17:26:50,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:26:50,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:26:50,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:26:51,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:26:51,159.159 INFO    ] time= 13/06/2026 17:26:51
[2026-06-13 17:26:51,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:26:51,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:26:51,272.272 INFO    ] No existing commands found in stream
[2026-06-13 17:26:56,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:26:56,285.285 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 17:26:57,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:26:57,307.307 INFO    ] Checking for system updates...
[2026-06-13 17:26:57,327.327 INFO    ] 200
[2026-06-13 17:26:57,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:57,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:57,361.361 INFO    ] No update needed
[2026-06-13 17:26:57,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 17:26:57,386.386 INFO    ] 200
[2026-06-13 17:26:57,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:26:57,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:26:57,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:26:57,449.449 INFO    ] No camera update needed
[2026-06-13 17:26:57,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:26:57,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:26:57,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:26:57,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:26:59,498.498 INFO    ] ================================================
[2026-06-13 17:26:59,513.513 INFO    ] Launching Daemon at Sat Jun 13 17:26:59 IST 2026
[2026-06-13 17:26:59,523.523 INFO    ] ================================================
[2026-06-13 17:26:59,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:26:59
[2026-06-13 17:27:00,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:00,337.337 INFO    ] Initializing speech engine...
[2026-06-13 17:27:00,345.345 INFO    ] 2026-06-13 17:27:00
[2026-06-13 17:27:00,557.557 INFO    ] 2026-06-13 17:27:00
[2026-06-13 17:27:00,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:00,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:00,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:00,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:00,920.920 INFO    ] time= 13/06/2026 17:27:00
[2026-06-13 17:27:00,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:00,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:01,107.107 INFO    ] No existing commands found in stream
[2026-06-13 17:27:06,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:27:06,137.137 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 17:27:09,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:27:09,606.606 INFO    ] Checking for system updates...
[2026-06-13 17:27:09,626.626 INFO    ] 200
[2026-06-13 17:27:09,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:09,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:09,659.659 INFO    ] No update needed
[2026-06-13 17:27:09,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 17:27:09,680.680 INFO    ] 200
[2026-06-13 17:27:09,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:09,706.706 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:27:09,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:09,744.744 INFO    ] No camera update needed
[2026-06-13 17:27:09,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:27:09,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:27:09,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:27:09,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:27:11,795.795 INFO    ] ================================================
[2026-06-13 17:27:11,811.811 INFO    ] Launching Daemon at Sat Jun 13 17:27:11 IST 2026
[2026-06-13 17:27:11,822.822 INFO    ] ================================================
[2026-06-13 17:27:12,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:27:12
[2026-06-13 17:27:12,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:12,698.698 INFO    ] Initializing speech engine...
[2026-06-13 17:27:12,701.701 INFO    ] 2026-06-13 17:27:12
[2026-06-13 17:27:12,911.911 INFO    ] 2026-06-13 17:27:12
[2026-06-13 17:27:12,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:13,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:13,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:13,310.310 INFO    ] time= 13/06/2026 17:27:13
[2026-06-13 17:27:13,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:13,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:13,431.431 INFO    ] No existing commands found in stream
[2026-06-13 17:27:18,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:27:18,445.445 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 17:27:19,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:27:19,652.652 INFO    ] Checking for system updates...
[2026-06-13 17:27:19,673.673 INFO    ] 200
[2026-06-13 17:27:19,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:19,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:19,707.707 INFO    ] No update needed
[2026-06-13 17:27:19,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 17:27:19,727.727 INFO    ] 200
[2026-06-13 17:27:19,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:19,752.752 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:27:19,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:19,795.795 INFO    ] No camera update needed
[2026-06-13 17:27:19,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:27:19,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:27:19,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:27:19,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:27:21,847.847 INFO    ] ================================================
[2026-06-13 17:27:21,862.862 INFO    ] Launching Daemon at Sat Jun 13 17:27:21 IST 2026
[2026-06-13 17:27:21,873.873 INFO    ] ================================================
[2026-06-13 17:27:22,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:27:22
[2026-06-13 17:27:22,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:22,686.686 INFO    ] Initializing speech engine...
[2026-06-13 17:27:22,697.697 INFO    ] 2026-06-13 17:27:22
[2026-06-13 17:27:22,883.883 INFO    ] 2026-06-13 17:27:22
[2026-06-13 17:27:22,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:23,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:23,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:23,255.255 INFO    ] time= 13/06/2026 17:27:23
[2026-06-13 17:27:23,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:23,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:23,368.368 INFO    ] No existing commands found in stream
[2026-06-13 17:27:28,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:27:28,392.392 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 17:27:32,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:27:32,485.485 INFO    ] Checking for system updates...
[2026-06-13 17:27:32,511.511 INFO    ] 200
[2026-06-13 17:27:32,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:32,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:27:32,562.562 INFO    ] No update needed
[2026-06-13 17:27:32,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 17:27:32,588.588 INFO    ] 200
[2026-06-13 17:27:32,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:32,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:27:32,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:27:32,637.637 INFO    ] No camera update needed
[2026-06-13 17:27:32,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:27:32,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:27:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:27:32,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:27:34,687.687 INFO    ] ================================================
[2026-06-13 17:27:34,703.703 INFO    ] Launching Daemon at Sat Jun 13 17:27:34 IST 2026
[2026-06-13 17:27:34,715.715 INFO    ] ================================================
[2026-06-13 17:27:35,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:27:35
[2026-06-13 17:27:35,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:35,572.572 INFO    ] Initializing speech engine...
[2026-06-13 17:27:35,577.577 INFO    ] 2026-06-13 17:27:35
[2026-06-13 17:27:35,783.783 INFO    ] 2026-06-13 17:27:35
[2026-06-13 17:27:35,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:35,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:36,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:36,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:36,186.186 INFO    ] time= 13/06/2026 17:27:36
[2026-06-13 17:27:36,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:36,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:36,302.302 INFO    ] No existing commands found in stream
[2026-06-13 17:27:41,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:27:41,321.321 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 17:27:43,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:27:43,921.921 INFO    ] Checking for system updates...
[2026-06-13 17:27:43,942.942 INFO    ] 200
[2026-06-13 17:27:43,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:43,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:43,976.976 INFO    ] No update needed
[2026-06-13 17:27:43,978.978 INFO    ] Checking for camera pi updates...
[2026-06-13 17:27:43,998.998 INFO    ] 200
[2026-06-13 17:27:43,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:44,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:27:44,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:44,065.065 INFO    ] No camera update needed
[2026-06-13 17:27:44,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:27:44,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:27:44,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:27:44,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:27:46,113.113 INFO    ] ================================================
[2026-06-13 17:27:46,128.128 INFO    ] Launching Daemon at Sat Jun 13 17:27:46 IST 2026
[2026-06-13 17:27:46,139.139 INFO    ] ================================================
[2026-06-13 17:27:46,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:27:46
[2026-06-13 17:27:46,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:47,012.012 INFO    ] Initializing speech engine...
[2026-06-13 17:27:47,020.020 INFO    ] 2026-06-13 17:27:47
[2026-06-13 17:27:47,223.223 INFO    ] 2026-06-13 17:27:47
[2026-06-13 17:27:47,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:47,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:47,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:47,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:47,630.630 INFO    ] time= 13/06/2026 17:27:47
[2026-06-13 17:27:47,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:47,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:47,739.739 INFO    ] No existing commands found in stream
[2026-06-13 17:27:52,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:27:52,753.753 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 17:27:55,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:27:55,193.193 INFO    ] Checking for system updates...
[2026-06-13 17:27:55,214.214 INFO    ] 200
[2026-06-13 17:27:55,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:55,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:27:55,246.246 INFO    ] No update needed
[2026-06-13 17:27:55,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 17:27:55,267.267 INFO    ] 200
[2026-06-13 17:27:55,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:27:55,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:27:55,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:27:55,335.335 INFO    ] No camera update needed
[2026-06-13 17:27:55,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:27:55,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:27:55,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:27:55,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:27:57,382.382 INFO    ] ================================================
[2026-06-13 17:27:57,398.398 INFO    ] Launching Daemon at Sat Jun 13 17:27:57 IST 2026
[2026-06-13 17:27:57,408.408 INFO    ] ================================================
[2026-06-13 17:27:57,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:27:57
[2026-06-13 17:27:58,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:27:58,186.186 INFO    ] Initializing speech engine...
[2026-06-13 17:27:58,191.191 INFO    ] 2026-06-13 17:27:58
[2026-06-13 17:27:58,395.395 INFO    ] 2026-06-13 17:27:58
[2026-06-13 17:27:58,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:27:58,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:27:58,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:27:58,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:27:58,812.812 INFO    ] time= 13/06/2026 17:27:58
[2026-06-13 17:27:58,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:27:58,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:27:58,914.914 INFO    ] No existing commands found in stream
[2026-06-13 17:28:03,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:03,925.925 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 17:28:07,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:28:07,486.486 INFO    ] Checking for system updates...
[2026-06-13 17:28:07,507.507 INFO    ] 200
[2026-06-13 17:28:07,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:07,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:28:07,540.540 INFO    ] No update needed
[2026-06-13 17:28:07,541.541 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:07,561.561 INFO    ] 200
[2026-06-13 17:28:07,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:07,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:07,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:28:07,626.626 INFO    ] No camera update needed
[2026-06-13 17:28:07,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:07,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:07,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:07,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:28:09,675.675 INFO    ] ================================================
[2026-06-13 17:28:09,690.690 INFO    ] Launching Daemon at Sat Jun 13 17:28:09 IST 2026
[2026-06-13 17:28:09,700.700 INFO    ] ================================================
[2026-06-13 17:28:10,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:28:10
[2026-06-13 17:28:10,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:28:10,514.514 INFO    ] Initializing speech engine...
[2026-06-13 17:28:10,528.528 INFO    ] 2026-06-13 17:28:10
[2026-06-13 17:28:10,751.751 INFO    ] 2026-06-13 17:28:10
[2026-06-13 17:28:10,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:28:10,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:28:10,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:28:11,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:28:11,141.141 INFO    ] time= 13/06/2026 17:28:11
[2026-06-13 17:28:11,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:28:11,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:28:11,321.321 INFO    ] No existing commands found in stream
[2026-06-13 17:28:16,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:16,335.335 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 17:28:18,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:28:18,035.035 INFO    ] Checking for system updates...
[2026-06-13 17:28:18,071.071 INFO    ] 200
[2026-06-13 17:28:18,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:18,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:18,128.128 INFO    ] No update needed
[2026-06-13 17:28:18,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:18,165.165 INFO    ] 200
[2026-06-13 17:28:18,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:18,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:18,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:18,244.244 INFO    ] No camera update needed
[2026-06-13 17:28:18,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:18,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:18,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:18,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:28:20,291.291 INFO    ] ================================================
[2026-06-13 17:28:20,307.307 INFO    ] Launching Daemon at Sat Jun 13 17:28:20 IST 2026
[2026-06-13 17:28:20,318.318 INFO    ] ================================================
[2026-06-13 17:28:20,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:28:20
[2026-06-13 17:28:20,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:28:21,115.115 INFO    ] Initializing speech engine...
[2026-06-13 17:28:21,118.118 INFO    ] 2026-06-13 17:28:21
[2026-06-13 17:28:21,333.333 INFO    ] 2026-06-13 17:28:21
[2026-06-13 17:28:21,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:28:21,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:28:21,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:28:21,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:28:21,747.747 INFO    ] time= 13/06/2026 17:28:21
[2026-06-13 17:28:21,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:28:21,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:28:21,912.912 INFO    ] No existing commands found in stream
[2026-06-13 17:28:26,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:26,926.926 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 17:28:27,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:28:27,262.262 INFO    ] Checking for system updates...
[2026-06-13 17:28:27,282.282 INFO    ] 200
[2026-06-13 17:28:27,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:27,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:28:27,315.315 INFO    ] No update needed
[2026-06-13 17:28:27,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:27,336.336 INFO    ] 200
[2026-06-13 17:28:27,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:27,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:27,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:28:27,399.399 INFO    ] No camera update needed
[2026-06-13 17:28:27,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:27,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:27,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:27,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:28:29,446.446 INFO    ] ================================================
[2026-06-13 17:28:29,462.462 INFO    ] Launching Daemon at Sat Jun 13 17:28:29 IST 2026
[2026-06-13 17:28:29,474.474 INFO    ] ================================================
[2026-06-13 17:28:29,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:28:29
[2026-06-13 17:28:30,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:28:30,339.339 INFO    ] Initializing speech engine...
[2026-06-13 17:28:30,344.344 INFO    ] 2026-06-13 17:28:30
[2026-06-13 17:28:30,582.582 INFO    ] 2026-06-13 17:28:30
[2026-06-13 17:28:30,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:28:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:28:30,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:28:30,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:28:31,046.046 INFO    ] time= 13/06/2026 17:28:30
[2026-06-13 17:28:31,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:28:31,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:28:31,145.145 INFO    ] No existing commands found in stream
[2026-06-13 17:28:36,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:36,160.160 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 17:28:38,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:28:38,456.456 INFO    ] Checking for system updates...
[2026-06-13 17:28:38,477.477 INFO    ] 200
[2026-06-13 17:28:38,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:38,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:38,510.510 INFO    ] No update needed
[2026-06-13 17:28:38,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:38,531.531 INFO    ] 200
[2026-06-13 17:28:38,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:38,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:38,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:38,581.581 INFO    ] No camera update needed
[2026-06-13 17:28:38,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:38,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:38,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:38,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:28:40,628.628 INFO    ] ================================================
[2026-06-13 17:28:40,644.644 INFO    ] Launching Daemon at Sat Jun 13 17:28:40 IST 2026
[2026-06-13 17:28:40,656.656 INFO    ] ================================================
[2026-06-13 17:28:40,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:28:40
[2026-06-13 17:28:41,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:28:41,447.447 INFO    ] Initializing speech engine...
[2026-06-13 17:28:41,453.453 INFO    ] 2026-06-13 17:28:41
[2026-06-13 17:28:41,657.657 INFO    ] 2026-06-13 17:28:41
[2026-06-13 17:28:41,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:28:41,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:28:41,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:28:42,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:28:42,048.048 INFO    ] time= 13/06/2026 17:28:42
[2026-06-13 17:28:42,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:28:42,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:28:42,184.184 INFO    ] No existing commands found in stream
[2026-06-13 17:28:47,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:47,222.222 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 17:28:47,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:28:47,995.995 INFO    ] Checking for system updates...
[2026-06-13 17:28:48,026.026 INFO    ] 200
[2026-06-13 17:28:48,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:48,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:48,062.062 INFO    ] No update needed
[2026-06-13 17:28:48,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:48,085.085 INFO    ] 200
[2026-06-13 17:28:48,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:48,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:48,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:48,153.153 INFO    ] No camera update needed
[2026-06-13 17:28:48,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:48,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:48,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:48,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:28:50,200.200 INFO    ] ================================================
[2026-06-13 17:28:50,216.216 INFO    ] Launching Daemon at Sat Jun 13 17:28:50 IST 2026
[2026-06-13 17:28:50,226.226 INFO    ] ================================================
[2026-06-13 17:28:50,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:28:50
[2026-06-13 17:28:50,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:28:51,102.102 INFO    ] Initializing speech engine...
[2026-06-13 17:28:51,107.107 INFO    ] 2026-06-13 17:28:51
[2026-06-13 17:28:51,318.318 INFO    ] 2026-06-13 17:28:51
[2026-06-13 17:28:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:28:51,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:28:51,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:28:51,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:28:51,719.719 INFO    ] time= 13/06/2026 17:28:51
[2026-06-13 17:28:51,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:28:51,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:28:51,841.841 INFO    ] No existing commands found in stream
[2026-06-13 17:28:56,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:28:56,856.856 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 17:28:59,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:28:59,197.197 INFO    ] Checking for system updates...
[2026-06-13 17:28:59,218.218 INFO    ] 200
[2026-06-13 17:28:59,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:59,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:59,252.252 INFO    ] No update needed
[2026-06-13 17:28:59,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 17:28:59,272.272 INFO    ] 200
[2026-06-13 17:28:59,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:28:59,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:28:59,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:28:59,338.338 INFO    ] No camera update needed
[2026-06-13 17:28:59,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:28:59,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:28:59,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:28:59,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:01,392.392 INFO    ] ================================================
[2026-06-13 17:29:01,409.409 INFO    ] Launching Daemon at Sat Jun 13 17:29:01 IST 2026
[2026-06-13 17:29:01,425.425 INFO    ] ================================================
[2026-06-13 17:29:01,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:01
[2026-06-13 17:29:02,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:02,303.303 INFO    ] Initializing speech engine...
[2026-06-13 17:29:02,307.307 INFO    ] 2026-06-13 17:29:02
[2026-06-13 17:29:02,527.527 INFO    ] 2026-06-13 17:29:02
[2026-06-13 17:29:02,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:02,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:02,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:02,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:02,760.760 INFO    ] time= 13/06/2026 17:29:02
[2026-06-13 17:29:02,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:02,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:02,847.847 INFO    ] No existing commands found in stream
[2026-06-13 17:29:07,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:29:07,880.880 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 17:29:08,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:29:08,202.202 INFO    ] Checking for system updates...
[2026-06-13 17:29:08,223.223 INFO    ] 200
[2026-06-13 17:29:08,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:08,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:08,256.256 INFO    ] No update needed
[2026-06-13 17:29:08,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 17:29:08,278.278 INFO    ] 200
[2026-06-13 17:29:08,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:08,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:29:08,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:08,443.443 INFO    ] No camera update needed
[2026-06-13 17:29:08,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:29:08,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:29:08,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:29:08,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:10,491.491 INFO    ] ================================================
[2026-06-13 17:29:10,505.505 INFO    ] Launching Daemon at Sat Jun 13 17:29:10 IST 2026
[2026-06-13 17:29:10,516.516 INFO    ] ================================================
[2026-06-13 17:29:10,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:10
[2026-06-13 17:29:11,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:11,363.363 INFO    ] Initializing speech engine...
[2026-06-13 17:29:11,368.368 INFO    ] 2026-06-13 17:29:11
[2026-06-13 17:29:11,577.577 INFO    ] 2026-06-13 17:29:11
[2026-06-13 17:29:11,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:11,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:11,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:11,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:11,982.982 INFO    ] time= 13/06/2026 17:29:11
[2026-06-13 17:29:12,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:12,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:12,093.093 INFO    ] No existing commands found in stream
[2026-06-13 17:29:17,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:29:17,111.111 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 17:29:19,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:29:19,085.085 INFO    ] Checking for system updates...
[2026-06-13 17:29:19,107.107 INFO    ] 200
[2026-06-13 17:29:19,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:19,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:29:19,141.141 INFO    ] No update needed
[2026-06-13 17:29:19,142.142 INFO    ] Checking for camera pi updates...
[2026-06-13 17:29:19,162.162 INFO    ] 200
[2026-06-13 17:29:19,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:19,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:29:19,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:29:19,226.226 INFO    ] No camera update needed
[2026-06-13 17:29:19,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:29:19,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:29:19,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:29:19,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:21,273.273 INFO    ] ================================================
[2026-06-13 17:29:21,289.289 INFO    ] Launching Daemon at Sat Jun 13 17:29:21 IST 2026
[2026-06-13 17:29:21,299.299 INFO    ] ================================================
[2026-06-13 17:29:21,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:21
[2026-06-13 17:29:22,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:22,133.133 INFO    ] Initializing speech engine...
[2026-06-13 17:29:22,137.137 INFO    ] 2026-06-13 17:29:22
[2026-06-13 17:29:22,353.353 INFO    ] 2026-06-13 17:29:22
[2026-06-13 17:29:22,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:22,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:22,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:22,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:22,795.795 INFO    ] time= 13/06/2026 17:29:22
[2026-06-13 17:29:22,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:22,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:22,927.927 INFO    ] No existing commands found in stream
[2026-06-13 17:29:27,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:29:27,941.941 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 17:29:28,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:29:28,510.510 INFO    ] Checking for system updates...
[2026-06-13 17:29:28,531.531 INFO    ] 200
[2026-06-13 17:29:28,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:28,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:28,564.564 INFO    ] No update needed
[2026-06-13 17:29:28,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 17:29:28,585.585 INFO    ] 200
[2026-06-13 17:29:28,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:28,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:29:28,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:28,665.665 INFO    ] No camera update needed
[2026-06-13 17:29:28,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:29:28,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:29:28,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:29:28,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:30,714.714 INFO    ] ================================================
[2026-06-13 17:29:30,729.729 INFO    ] Launching Daemon at Sat Jun 13 17:29:30 IST 2026
[2026-06-13 17:29:30,740.740 INFO    ] ================================================
[2026-06-13 17:29:31,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:31
[2026-06-13 17:29:31,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:31,590.590 INFO    ] Initializing speech engine...
[2026-06-13 17:29:31,598.598 INFO    ] 2026-06-13 17:29:31
[2026-06-13 17:29:31,817.817 INFO    ] 2026-06-13 17:29:31
[2026-06-13 17:29:31,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:31,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:32,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:32,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:32,235.235 INFO    ] time= 13/06/2026 17:29:32
[2026-06-13 17:29:32,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:32,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:32,468.468 INFO    ] No existing commands found in stream
[2026-06-13 17:29:37,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:29:37,501.501 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 17:29:41,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:29:41,025.025 INFO    ] Checking for system updates...
[2026-06-13 17:29:41,046.046 INFO    ] 200
[2026-06-13 17:29:41,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:41,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:29:41,079.079 INFO    ] No update needed
[2026-06-13 17:29:41,081.081 INFO    ] Checking for camera pi updates...
[2026-06-13 17:29:41,102.102 INFO    ] 200
[2026-06-13 17:29:41,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:41,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:29:41,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:29:41,173.173 INFO    ] No camera update needed
[2026-06-13 17:29:41,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:29:41,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:29:41,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:29:41,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:43,223.223 INFO    ] ================================================
[2026-06-13 17:29:43,242.242 INFO    ] Launching Daemon at Sat Jun 13 17:29:43 IST 2026
[2026-06-13 17:29:43,253.253 INFO    ] ================================================
[2026-06-13 17:29:43,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:43
[2026-06-13 17:29:43,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:44,051.051 INFO    ] Initializing speech engine...
[2026-06-13 17:29:44,055.055 INFO    ] 2026-06-13 17:29:44
[2026-06-13 17:29:44,246.246 INFO    ] 2026-06-13 17:29:44
[2026-06-13 17:29:44,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:44,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:44,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:44,660.660 INFO    ] time= 13/06/2026 17:29:44
[2026-06-13 17:29:44,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:44,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:44,841.841 INFO    ] No existing commands found in stream
[2026-06-13 17:29:49,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:29:49,854.854 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 17:29:52,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:29:52,447.447 INFO    ] Checking for system updates...
[2026-06-13 17:29:52,468.468 INFO    ] 200
[2026-06-13 17:29:52,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:52,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:52,502.502 INFO    ] No update needed
[2026-06-13 17:29:52,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 17:29:52,523.523 INFO    ] 200
[2026-06-13 17:29:52,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:29:52,550.550 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:29:52,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:29:52,586.586 INFO    ] No camera update needed
[2026-06-13 17:29:52,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:29:52,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:29:52,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:29:52,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:29:54,634.634 INFO    ] ================================================
[2026-06-13 17:29:54,649.649 INFO    ] Launching Daemon at Sat Jun 13 17:29:54 IST 2026
[2026-06-13 17:29:54,660.660 INFO    ] ================================================
[2026-06-13 17:29:54,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:29:54
[2026-06-13 17:29:55,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:29:55,451.451 INFO    ] Initializing speech engine...
[2026-06-13 17:29:55,461.461 INFO    ] 2026-06-13 17:29:55
[2026-06-13 17:29:55,679.679 INFO    ] 2026-06-13 17:29:55
[2026-06-13 17:29:55,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:29:55,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:29:55,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:29:56,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:29:56,081.081 INFO    ] time= 13/06/2026 17:29:56
[2026-06-13 17:29:56,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:29:56,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:29:56,240.240 INFO    ] No existing commands found in stream
[2026-06-13 17:30:01,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:01,254.254 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 17:30:02,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:30:02,127.127 INFO    ] Checking for system updates...
[2026-06-13 17:30:02,156.156 INFO    ] 200
[2026-06-13 17:30:02,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:02,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:02,204.204 INFO    ] No update needed
[2026-06-13 17:30:02,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:02,238.238 INFO    ] 200
[2026-06-13 17:30:02,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:02,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:02,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:02,506.506 INFO    ] No camera update needed
[2026-06-13 17:30:02,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:02,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:02,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:02,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:04,552.552 INFO    ] ================================================
[2026-06-13 17:30:04,567.567 INFO    ] Launching Daemon at Sat Jun 13 17:30:04 IST 2026
[2026-06-13 17:30:04,577.577 INFO    ] ================================================
[2026-06-13 17:30:04,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:04
[2026-06-13 17:30:05,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:05,401.401 INFO    ] Initializing speech engine...
[2026-06-13 17:30:05,407.407 INFO    ] 2026-06-13 17:30:05
[2026-06-13 17:30:05,612.612 INFO    ] 2026-06-13 17:30:05
[2026-06-13 17:30:05,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:05,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:05,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:05,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:06,026.026 INFO    ] time= 13/06/2026 17:30:05
[2026-06-13 17:30:06,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:06,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:06,220.220 INFO    ] No existing commands found in stream
[2026-06-13 17:30:11,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:11,237.237 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 17:30:14,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:30:14,169.169 INFO    ] Checking for system updates...
[2026-06-13 17:30:14,189.189 INFO    ] 200
[2026-06-13 17:30:14,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:14,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:30:14,223.223 INFO    ] No update needed
[2026-06-13 17:30:14,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:14,244.244 INFO    ] 200
[2026-06-13 17:30:14,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:14,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:14,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:30:14,307.307 INFO    ] No camera update needed
[2026-06-13 17:30:14,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:14,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:14,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:14,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:16,355.355 INFO    ] ================================================
[2026-06-13 17:30:16,375.375 INFO    ] Launching Daemon at Sat Jun 13 17:30:16 IST 2026
[2026-06-13 17:30:16,386.386 INFO    ] ================================================
[2026-06-13 17:30:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:16
[2026-06-13 17:30:17,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:17,237.237 INFO    ] Initializing speech engine...
[2026-06-13 17:30:17,244.244 INFO    ] 2026-06-13 17:30:17
[2026-06-13 17:30:17,459.459 INFO    ] 2026-06-13 17:30:17
[2026-06-13 17:30:17,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:17,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:17,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:17,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:17,965.965 INFO    ] time= 13/06/2026 17:30:17
[2026-06-13 17:30:17,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:18,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:18,120.120 INFO    ] No existing commands found in stream
[2026-06-13 17:30:23,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:23,136.136 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 17:30:23,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:30:23,623.623 INFO    ] Checking for system updates...
[2026-06-13 17:30:23,645.645 INFO    ] 200
[2026-06-13 17:30:23,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:23,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:30:23,678.678 INFO    ] No update needed
[2026-06-13 17:30:23,680.680 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:23,701.701 INFO    ] 200
[2026-06-13 17:30:23,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:23,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:23,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:30:23,759.759 INFO    ] No camera update needed
[2026-06-13 17:30:23,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:23,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:23,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:23,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:25,809.809 INFO    ] ================================================
[2026-06-13 17:30:25,824.824 INFO    ] Launching Daemon at Sat Jun 13 17:30:25 IST 2026
[2026-06-13 17:30:25,835.835 INFO    ] ================================================
[2026-06-13 17:30:26,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:26
[2026-06-13 17:30:26,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:26,680.680 INFO    ] Initializing speech engine...
[2026-06-13 17:30:26,686.686 INFO    ] 2026-06-13 17:30:26
[2026-06-13 17:30:26,898.898 INFO    ] 2026-06-13 17:30:26
[2026-06-13 17:30:26,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:27,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:27,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:27,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:27,308.308 INFO    ] time= 13/06/2026 17:30:27
[2026-06-13 17:30:27,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:27,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:27,424.424 INFO    ] No existing commands found in stream
[2026-06-13 17:30:32,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:32,436.436 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 17:30:33,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:30:33,939.939 INFO    ] Checking for system updates...
[2026-06-13 17:30:33,960.960 INFO    ] 200
[2026-06-13 17:30:33,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:33,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:33,995.995 INFO    ] No update needed
[2026-06-13 17:30:33,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:34,017.017 INFO    ] 200
[2026-06-13 17:30:34,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:34,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:34,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:34,080.080 INFO    ] No camera update needed
[2026-06-13 17:30:34,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:34,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:34,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:34,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:36,130.130 INFO    ] ================================================
[2026-06-13 17:30:36,145.145 INFO    ] Launching Daemon at Sat Jun 13 17:30:36 IST 2026
[2026-06-13 17:30:36,156.156 INFO    ] ================================================
[2026-06-13 17:30:36,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:36
[2026-06-13 17:30:36,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:36,976.976 INFO    ] Initializing speech engine...
[2026-06-13 17:30:36,981.981 INFO    ] 2026-06-13 17:30:36
[2026-06-13 17:30:37,184.184 INFO    ] 2026-06-13 17:30:37
[2026-06-13 17:30:37,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:37,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:37,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:37,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:37,600.600 INFO    ] time= 13/06/2026 17:30:37
[2026-06-13 17:30:37,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:37,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:37,699.699 INFO    ] No existing commands found in stream
[2026-06-13 17:30:42,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:42,712.712 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 17:30:43,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:30:43,859.859 INFO    ] Checking for system updates...
[2026-06-13 17:30:43,880.880 INFO    ] 200
[2026-06-13 17:30:43,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:43,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:43,913.913 INFO    ] No update needed
[2026-06-13 17:30:43,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:43,935.935 INFO    ] 200
[2026-06-13 17:30:43,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:43,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:44,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:44,013.013 INFO    ] No camera update needed
[2026-06-13 17:30:44,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:44,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:44,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:44,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:46,063.063 INFO    ] ================================================
[2026-06-13 17:30:46,079.079 INFO    ] Launching Daemon at Sat Jun 13 17:30:46 IST 2026
[2026-06-13 17:30:46,090.090 INFO    ] ================================================
[2026-06-13 17:30:46,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:46
[2026-06-13 17:30:46,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:46,878.878 INFO    ] Initializing speech engine...
[2026-06-13 17:30:46,884.884 INFO    ] 2026-06-13 17:30:46
[2026-06-13 17:30:47,089.089 INFO    ] 2026-06-13 17:30:47
[2026-06-13 17:30:47,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:47,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:47,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:47,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:47,499.499 INFO    ] time= 13/06/2026 17:30:47
[2026-06-13 17:30:47,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:47,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:47,610.610 INFO    ] No existing commands found in stream
[2026-06-13 17:30:52,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:30:52,620.620 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 17:30:55,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:30:55,477.477 INFO    ] Checking for system updates...
[2026-06-13 17:30:55,498.498 INFO    ] 200
[2026-06-13 17:30:55,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:55,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:55,534.534 INFO    ] No update needed
[2026-06-13 17:30:55,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 17:30:55,555.555 INFO    ] 200
[2026-06-13 17:30:55,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:30:55,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:30:55,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:30:55,611.611 INFO    ] No camera update needed
[2026-06-13 17:30:55,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:30:55,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:30:55,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:30:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:30:57,660.660 INFO    ] ================================================
[2026-06-13 17:30:57,675.675 INFO    ] Launching Daemon at Sat Jun 13 17:30:57 IST 2026
[2026-06-13 17:30:57,685.685 INFO    ] ================================================
[2026-06-13 17:30:58,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:30:58
[2026-06-13 17:30:58,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:30:58,524.524 INFO    ] Initializing speech engine...
[2026-06-13 17:30:58,536.536 INFO    ] 2026-06-13 17:30:58
[2026-06-13 17:30:58,744.744 INFO    ] 2026-06-13 17:30:58
[2026-06-13 17:30:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:30:58,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:30:58,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:30:59,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:30:59,150.150 INFO    ] time= 13/06/2026 17:30:59
[2026-06-13 17:30:59,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:30:59,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:30:59,259.259 INFO    ] No existing commands found in stream
[2026-06-13 17:31:04,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:04,272.272 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 17:31:06,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:31:06,332.332 INFO    ] Checking for system updates...
[2026-06-13 17:31:06,353.353 INFO    ] 200
[2026-06-13 17:31:06,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:06,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:31:06,386.386 INFO    ] No update needed
[2026-06-13 17:31:06,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 17:31:06,409.409 INFO    ] 200
[2026-06-13 17:31:06,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:06,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:31:06,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:31:06,485.485 INFO    ] No camera update needed
[2026-06-13 17:31:06,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:31:06,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:31:06,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:31:06,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:31:08,532.532 INFO    ] ================================================
[2026-06-13 17:31:08,549.549 INFO    ] Launching Daemon at Sat Jun 13 17:31:08 IST 2026
[2026-06-13 17:31:08,565.565 INFO    ] ================================================
[2026-06-13 17:31:08,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:31:08
[2026-06-13 17:31:09,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:31:09,383.383 INFO    ] Initializing speech engine...
[2026-06-13 17:31:09,386.386 INFO    ] 2026-06-13 17:31:09
[2026-06-13 17:31:09,593.593 INFO    ] 2026-06-13 17:31:09
[2026-06-13 17:31:09,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:31:09,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:31:09,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:31:09,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:31:10,026.026 INFO    ] time= 13/06/2026 17:31:09
[2026-06-13 17:31:10,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:31:10,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:31:10,179.179 INFO    ] No existing commands found in stream
[2026-06-13 17:31:15,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:15,193.193 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 17:31:15,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:31:15,962.962 INFO    ] Checking for system updates...
[2026-06-13 17:31:15,986.986 INFO    ] 200
[2026-06-13 17:31:15,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:16,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:31:16,023.023 INFO    ] No update needed
[2026-06-13 17:31:16,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 17:31:16,043.043 INFO    ] 200
[2026-06-13 17:31:16,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:16,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:31:16,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:31:16,212.212 INFO    ] No camera update needed
[2026-06-13 17:31:16,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:31:16,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:31:16,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:31:16,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:31:18,259.259 INFO    ] ================================================
[2026-06-13 17:31:18,274.274 INFO    ] Launching Daemon at Sat Jun 13 17:31:18 IST 2026
[2026-06-13 17:31:18,284.284 INFO    ] ================================================
[2026-06-13 17:31:18,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:31:18
[2026-06-13 17:31:19,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:31:19,495.495 INFO    ] Initializing speech engine...
[2026-06-13 17:31:19,503.503 INFO    ] 2026-06-13 17:31:19
[2026-06-13 17:31:19,822.822 INFO    ] 2026-06-13 17:31:19
[2026-06-13 17:31:19,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:31:20,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:31:20,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:31:20,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:31:20,214.214 INFO    ] time= 13/06/2026 17:31:20
[2026-06-13 17:31:20,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:31:20,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:31:20,384.384 INFO    ] No existing commands found in stream
[2026-06-13 17:31:25,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:25,401.401 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 17:31:29,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:31:29,278.278 INFO    ] Checking for system updates...
[2026-06-13 17:31:29,301.301 INFO    ] 200
[2026-06-13 17:31:29,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:29,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:31:29,337.337 INFO    ] No update needed
[2026-06-13 17:31:29,338.338 INFO    ] Checking for camera pi updates...
[2026-06-13 17:31:29,358.358 INFO    ] 200
[2026-06-13 17:31:29,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:29,386.386 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:31:29,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:31:29,433.433 INFO    ] No camera update needed
[2026-06-13 17:31:29,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:31:29,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:31:29,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:31:29,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:31:31,473.473 INFO    ] ================================================
[2026-06-13 17:31:31,483.483 INFO    ] Launching Daemon at Sat Jun 13 17:31:31 IST 2026
[2026-06-13 17:31:31,489.489 INFO    ] ================================================
[2026-06-13 17:31:31,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:31:31
[2026-06-13 17:31:32,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:31:32,352.352 INFO    ] Initializing speech engine...
[2026-06-13 17:31:32,357.357 INFO    ] 2026-06-13 17:31:32
[2026-06-13 17:31:32,568.568 INFO    ] 2026-06-13 17:31:32
[2026-06-13 17:31:32,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:31:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:31:32,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:31:32,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:31:32,986.986 INFO    ] time= 13/06/2026 17:31:32
[2026-06-13 17:31:33,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:31:33,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:31:33,095.095 INFO    ] No existing commands found in stream
[2026-06-13 17:31:38,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:38,107.107 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 17:31:39,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:31:39,502.502 INFO    ] Checking for system updates...
[2026-06-13 17:31:39,523.523 INFO    ] 200
[2026-06-13 17:31:39,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:39,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:31:39,556.556 INFO    ] No update needed
[2026-06-13 17:31:39,558.558 INFO    ] Checking for camera pi updates...
[2026-06-13 17:31:39,578.578 INFO    ] 200
[2026-06-13 17:31:39,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:39,604.604 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:31:39,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:31:39,642.642 INFO    ] No camera update needed
[2026-06-13 17:31:39,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:31:39,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:31:39,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:31:39,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:31:41,692.692 INFO    ] ================================================
[2026-06-13 17:31:41,707.707 INFO    ] Launching Daemon at Sat Jun 13 17:31:41 IST 2026
[2026-06-13 17:31:41,718.718 INFO    ] ================================================
[2026-06-13 17:31:42,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:31:42
[2026-06-13 17:31:42,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:31:43,062.062 INFO    ] Initializing speech engine...
[2026-06-13 17:31:43,068.068 INFO    ] 2026-06-13 17:31:43
[2026-06-13 17:31:43,270.270 INFO    ] 2026-06-13 17:31:43
[2026-06-13 17:31:43,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:31:43,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:31:43,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:31:43,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:31:43,676.676 INFO    ] time= 13/06/2026 17:31:43
[2026-06-13 17:31:43,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:31:43,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:31:43,786.786 INFO    ] No existing commands found in stream
[2026-06-13 17:31:48,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:48,800.800 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 17:31:50,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:31:50,081.081 INFO    ] Checking for system updates...
[2026-06-13 17:31:50,102.102 INFO    ] 200
[2026-06-13 17:31:50,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:50,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:31:50,138.138 INFO    ] No update needed
[2026-06-13 17:31:50,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 17:31:50,159.159 INFO    ] 200
[2026-06-13 17:31:50,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:31:50,184.184 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:31:50,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:31:50,229.229 INFO    ] No camera update needed
[2026-06-13 17:31:50,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:31:50,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:31:50,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:31:50,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:31:52,277.277 INFO    ] ================================================
[2026-06-13 17:31:52,292.292 INFO    ] Launching Daemon at Sat Jun 13 17:31:52 IST 2026
[2026-06-13 17:31:52,303.303 INFO    ] ================================================
[2026-06-13 17:31:52,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:31:52
[2026-06-13 17:31:53,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:31:53,673.673 INFO    ] Initializing speech engine...
[2026-06-13 17:31:53,690.690 INFO    ] 2026-06-13 17:31:53
[2026-06-13 17:31:53,955.955 INFO    ] 2026-06-13 17:31:53
[2026-06-13 17:31:53,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:31:54,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:31:54,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:31:54,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:31:54,311.311 INFO    ] time= 13/06/2026 17:31:54
[2026-06-13 17:31:54,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:31:54,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:31:54,407.407 INFO    ] No existing commands found in stream
[2026-06-13 17:31:59,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:31:59,422.422 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 17:32:03,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:32:03,136.136 INFO    ] Checking for system updates...
[2026-06-13 17:32:03,158.158 INFO    ] 200
[2026-06-13 17:32:03,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:03,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:03,192.192 INFO    ] No update needed
[2026-06-13 17:32:03,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 17:32:03,212.212 INFO    ] 200
[2026-06-13 17:32:03,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:03,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:32:03,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:03,262.262 INFO    ] No camera update needed
[2026-06-13 17:32:03,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:32:03,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:32:03,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:32:03,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:32:05,311.311 INFO    ] ================================================
[2026-06-13 17:32:05,326.326 INFO    ] Launching Daemon at Sat Jun 13 17:32:05 IST 2026
[2026-06-13 17:32:05,336.336 INFO    ] ================================================
[2026-06-13 17:32:05,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:32:05
[2026-06-13 17:32:06,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:32:06,158.158 INFO    ] Initializing speech engine...
[2026-06-13 17:32:06,161.161 INFO    ] 2026-06-13 17:32:06
[2026-06-13 17:32:06,355.355 INFO    ] 2026-06-13 17:32:06
[2026-06-13 17:32:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:32:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:32:06,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:32:06,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:32:06,644.644 INFO    ] time= 13/06/2026 17:32:06
[2026-06-13 17:32:06,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:32:06,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:32:06,725.725 INFO    ] No existing commands found in stream
[2026-06-13 17:32:11,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:32:11,755.755 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 17:32:15,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:32:15,896.896 INFO    ] Checking for system updates...
[2026-06-13 17:32:15,917.917 INFO    ] 200
[2026-06-13 17:32:15,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:15,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:15,951.951 INFO    ] No update needed
[2026-06-13 17:32:15,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 17:32:15,971.971 INFO    ] 200
[2026-06-13 17:32:15,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:15,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:32:16,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:16,035.035 INFO    ] No camera update needed
[2026-06-13 17:32:16,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:32:16,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:32:16,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:32:16,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:32:18,082.082 INFO    ] ================================================
[2026-06-13 17:32:18,098.098 INFO    ] Launching Daemon at Sat Jun 13 17:32:18 IST 2026
[2026-06-13 17:32:18,109.109 INFO    ] ================================================
[2026-06-13 17:32:18,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:32:18
[2026-06-13 17:32:18,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:32:18,942.942 INFO    ] Initializing speech engine...
[2026-06-13 17:32:18,947.947 INFO    ] 2026-06-13 17:32:18
[2026-06-13 17:32:19,152.152 INFO    ] 2026-06-13 17:32:19
[2026-06-13 17:32:19,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:32:19,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:32:19,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:32:19,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:32:19,560.560 INFO    ] time= 13/06/2026 17:32:19
[2026-06-13 17:32:19,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:32:19,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:32:19,666.666 INFO    ] No existing commands found in stream
[2026-06-13 17:32:24,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:32:24,678.678 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 17:32:28,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:32:28,852.852 INFO    ] Checking for system updates...
[2026-06-13 17:32:28,876.876 INFO    ] 200
[2026-06-13 17:32:28,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:28,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:28,915.915 INFO    ] No update needed
[2026-06-13 17:32:28,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 17:32:28,936.936 INFO    ] 200
[2026-06-13 17:32:28,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:28,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:32:29,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:29,011.011 INFO    ] No camera update needed
[2026-06-13 17:32:29,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:32:29,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:32:29,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:32:29,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:32:31,061.061 INFO    ] ================================================
[2026-06-13 17:32:31,076.076 INFO    ] Launching Daemon at Sat Jun 13 17:32:31 IST 2026
[2026-06-13 17:32:31,087.087 INFO    ] ================================================
[2026-06-13 17:32:31,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:32:31
[2026-06-13 17:32:31,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:32:32,212.212 INFO    ] Initializing speech engine...
[2026-06-13 17:32:32,234.234 INFO    ] 2026-06-13 17:32:32
[2026-06-13 17:32:32,525.525 INFO    ] 2026-06-13 17:32:32
[2026-06-13 17:32:32,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:32:32,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:32:32,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:32:32,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:32:32,906.906 INFO    ] time= 13/06/2026 17:32:32
[2026-06-13 17:32:32,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:32:32,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:32:33,032.032 INFO    ] No existing commands found in stream
[2026-06-13 17:32:38,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:32:38,047.047 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 17:32:42,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:32:42,306.306 INFO    ] Checking for system updates...
[2026-06-13 17:32:42,327.327 INFO    ] 200
[2026-06-13 17:32:42,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:42,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:42,361.361 INFO    ] No update needed
[2026-06-13 17:32:42,362.362 INFO    ] Checking for camera pi updates...
[2026-06-13 17:32:42,381.381 INFO    ] 200
[2026-06-13 17:32:42,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:42,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:32:42,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:42,445.445 INFO    ] No camera update needed
[2026-06-13 17:32:42,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:32:42,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:32:42,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:32:42,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:32:44,496.496 INFO    ] ================================================
[2026-06-13 17:32:44,511.511 INFO    ] Launching Daemon at Sat Jun 13 17:32:44 IST 2026
[2026-06-13 17:32:44,522.522 INFO    ] ================================================
[2026-06-13 17:32:44,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:32:44
[2026-06-13 17:32:45,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:32:45,383.383 INFO    ] Initializing speech engine...
[2026-06-13 17:32:45,393.393 INFO    ] 2026-06-13 17:32:45
[2026-06-13 17:32:45,601.601 INFO    ] 2026-06-13 17:32:45
[2026-06-13 17:32:45,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:32:45,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:32:45,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:32:45,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:32:46,022.022 INFO    ] time= 13/06/2026 17:32:45
[2026-06-13 17:32:46,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:32:46,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:32:46,123.123 INFO    ] No existing commands found in stream
[2026-06-13 17:32:51,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:32:51,146.146 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 17:32:53,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:32:53,380.380 INFO    ] Checking for system updates...
[2026-06-13 17:32:53,400.400 INFO    ] 200
[2026-06-13 17:32:53,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:53,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:53,436.436 INFO    ] No update needed
[2026-06-13 17:32:53,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 17:32:53,459.459 INFO    ] 200
[2026-06-13 17:32:53,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:32:53,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:32:53,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:32:53,529.529 INFO    ] No camera update needed
[2026-06-13 17:32:53,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:32:53,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:32:53,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:32:53,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:32:55,576.576 INFO    ] ================================================
[2026-06-13 17:32:55,593.593 INFO    ] Launching Daemon at Sat Jun 13 17:32:55 IST 2026
[2026-06-13 17:32:55,603.603 INFO    ] ================================================
[2026-06-13 17:32:55,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:32:55
[2026-06-13 17:32:56,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:32:56,445.445 INFO    ] Initializing speech engine...
[2026-06-13 17:32:56,451.451 INFO    ] 2026-06-13 17:32:56
[2026-06-13 17:32:56,657.657 INFO    ] 2026-06-13 17:32:56
[2026-06-13 17:32:56,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:32:56,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:32:56,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:32:57,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:32:57,068.068 INFO    ] time= 13/06/2026 17:32:57
[2026-06-13 17:32:57,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:32:57,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:32:57,172.172 INFO    ] No existing commands found in stream
[2026-06-13 17:33:02,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:02,182.182 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 17:33:03,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:33:03,845.845 INFO    ] Checking for system updates...
[2026-06-13 17:33:03,868.868 INFO    ] 200
[2026-06-13 17:33:03,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:03,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:03,904.904 INFO    ] No update needed
[2026-06-13 17:33:03,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:03,926.926 INFO    ] 200
[2026-06-13 17:33:03,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:03,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:03,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:03,991.991 INFO    ] No camera update needed
[2026-06-13 17:33:03,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:03,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:04,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:04,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:33:06,044.044 INFO    ] ================================================
[2026-06-13 17:33:06,060.060 INFO    ] Launching Daemon at Sat Jun 13 17:33:06 IST 2026
[2026-06-13 17:33:06,070.070 INFO    ] ================================================
[2026-06-13 17:33:06,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:33:06
[2026-06-13 17:33:06,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:33:06,877.877 INFO    ] Initializing speech engine...
[2026-06-13 17:33:06,882.882 INFO    ] 2026-06-13 17:33:06
[2026-06-13 17:33:07,086.086 INFO    ] 2026-06-13 17:33:07
[2026-06-13 17:33:07,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:33:07,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:33:07,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:33:07,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:33:07,481.481 INFO    ] time= 13/06/2026 17:33:07
[2026-06-13 17:33:07,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:33:07,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:33:07,601.601 INFO    ] No existing commands found in stream
[2026-06-13 17:33:12,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:12,614.614 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 17:33:15,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:33:15,515.515 INFO    ] Checking for system updates...
[2026-06-13 17:33:15,536.536 INFO    ] 200
[2026-06-13 17:33:15,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:15,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:15,570.570 INFO    ] No update needed
[2026-06-13 17:33:15,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:15,591.591 INFO    ] 200
[2026-06-13 17:33:15,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:15,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:15,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:15,668.668 INFO    ] No camera update needed
[2026-06-13 17:33:15,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:15,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:15,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:15,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:33:17,718.718 INFO    ] ================================================
[2026-06-13 17:33:17,734.734 INFO    ] Launching Daemon at Sat Jun 13 17:33:17 IST 2026
[2026-06-13 17:33:17,745.745 INFO    ] ================================================
[2026-06-13 17:33:18,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:33:18
[2026-06-13 17:33:18,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:33:18,568.568 INFO    ] Initializing speech engine...
[2026-06-13 17:33:18,577.577 INFO    ] 2026-06-13 17:33:18
[2026-06-13 17:33:18,799.799 INFO    ] 2026-06-13 17:33:18
[2026-06-13 17:33:18,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:33:18,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:33:19,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:33:19,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:33:19,214.214 INFO    ] time= 13/06/2026 17:33:19
[2026-06-13 17:33:19,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:33:19,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:33:19,355.355 INFO    ] No existing commands found in stream
[2026-06-13 17:33:24,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:24,367.367 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 17:33:27,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:33:27,344.344 INFO    ] Checking for system updates...
[2026-06-13 17:33:27,364.364 INFO    ] 200
[2026-06-13 17:33:27,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:27,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:27,398.398 INFO    ] No update needed
[2026-06-13 17:33:27,399.399 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:27,419.419 INFO    ] 200
[2026-06-13 17:33:27,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:27,446.446 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:27,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:27,586.586 INFO    ] No camera update needed
[2026-06-13 17:33:27,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:27,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:27,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:27,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:33:29,620.620 INFO    ] ================================================
[2026-06-13 17:33:29,630.630 INFO    ] Launching Daemon at Sat Jun 13 17:33:29 IST 2026
[2026-06-13 17:33:29,636.636 INFO    ] ================================================
[2026-06-13 17:33:29,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:33:29
[2026-06-13 17:33:30,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:33:30,449.449 INFO    ] Initializing speech engine...
[2026-06-13 17:33:30,462.462 INFO    ] 2026-06-13 17:33:30
[2026-06-13 17:33:30,690.690 INFO    ] 2026-06-13 17:33:30
[2026-06-13 17:33:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:33:30,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:33:30,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:33:31,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:33:31,056.056 INFO    ] time= 13/06/2026 17:33:31
[2026-06-13 17:33:31,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:33:31,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:33:31,266.266 INFO    ] No existing commands found in stream
[2026-06-13 17:33:36,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:36,280.280 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 17:33:39,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:33:39,347.347 INFO    ] Checking for system updates...
[2026-06-13 17:33:39,368.368 INFO    ] 200
[2026-06-13 17:33:39,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:39,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:39,402.402 INFO    ] No update needed
[2026-06-13 17:33:39,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:39,424.424 INFO    ] 200
[2026-06-13 17:33:39,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:39,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:39,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:39,488.488 INFO    ] No camera update needed
[2026-06-13 17:33:39,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:39,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:39,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:39,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:33:41,536.536 INFO    ] ================================================
[2026-06-13 17:33:41,552.552 INFO    ] Launching Daemon at Sat Jun 13 17:33:41 IST 2026
[2026-06-13 17:33:41,563.563 INFO    ] ================================================
[2026-06-13 17:33:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:33:41
[2026-06-13 17:33:42,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:33:42,387.387 INFO    ] Initializing speech engine...
[2026-06-13 17:33:42,393.393 INFO    ] 2026-06-13 17:33:42
[2026-06-13 17:33:42,597.597 INFO    ] 2026-06-13 17:33:42
[2026-06-13 17:33:42,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:33:42,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:33:42,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:33:42,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:33:43,012.012 INFO    ] time= 13/06/2026 17:33:42
[2026-06-13 17:33:43,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:33:43,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:33:43,111.111 INFO    ] No existing commands found in stream
[2026-06-13 17:33:48,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:48,124.124 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 17:33:48,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:33:48,465.465 INFO    ] Checking for system updates...
[2026-06-13 17:33:48,486.486 INFO    ] 200
[2026-06-13 17:33:48,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:48,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:48,519.519 INFO    ] No update needed
[2026-06-13 17:33:48,520.520 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:48,541.541 INFO    ] 200
[2026-06-13 17:33:48,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:48,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:48,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:33:48,613.613 INFO    ] No camera update needed
[2026-06-13 17:33:48,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:48,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:48,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:48,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:33:50,662.662 INFO    ] ================================================
[2026-06-13 17:33:50,678.678 INFO    ] Launching Daemon at Sat Jun 13 17:33:50 IST 2026
[2026-06-13 17:33:50,691.691 INFO    ] ================================================
[2026-06-13 17:33:51,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:33:51
[2026-06-13 17:33:51,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:33:51,498.498 INFO    ] Initializing speech engine...
[2026-06-13 17:33:51,507.507 INFO    ] 2026-06-13 17:33:51
[2026-06-13 17:33:51,713.713 INFO    ] 2026-06-13 17:33:51
[2026-06-13 17:33:51,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:33:51,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:33:51,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:33:52,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:33:52,102.102 INFO    ] time= 13/06/2026 17:33:52
[2026-06-13 17:33:52,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:33:52,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:33:52,227.227 INFO    ] No existing commands found in stream
[2026-06-13 17:33:57,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:33:57,240.240 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 17:33:58,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:33:58,644.644 INFO    ] Checking for system updates...
[2026-06-13 17:33:58,664.664 INFO    ] 200
[2026-06-13 17:33:58,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:58,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:33:58,698.698 INFO    ] No update needed
[2026-06-13 17:33:58,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 17:33:58,721.721 INFO    ] 200
[2026-06-13 17:33:58,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:33:58,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:33:58,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:33:58,789.789 INFO    ] No camera update needed
[2026-06-13 17:33:58,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:33:58,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:33:58,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:33:58,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:00,838.838 INFO    ] ================================================
[2026-06-13 17:34:00,853.853 INFO    ] Launching Daemon at Sat Jun 13 17:34:00 IST 2026
[2026-06-13 17:34:00,864.864 INFO    ] ================================================
[2026-06-13 17:34:01,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:01
[2026-06-13 17:34:01,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:34:02,040.040 INFO    ] Initializing speech engine...
[2026-06-13 17:34:02,044.044 INFO    ] 2026-06-13 17:34:02
[2026-06-13 17:34:02,421.421 INFO    ] 2026-06-13 17:34:02
[2026-06-13 17:34:02,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:34:02,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:34:02,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:34:02,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:34:02,821.821 INFO    ] time= 13/06/2026 17:34:02
[2026-06-13 17:34:02,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:34:02,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:34:03,041.041 INFO    ] No existing commands found in stream
[2026-06-13 17:34:08,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:34:08,070.070 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 17:34:09,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:34:09,680.680 INFO    ] Checking for system updates...
[2026-06-13 17:34:09,701.701 INFO    ] 200
[2026-06-13 17:34:09,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:09,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:34:09,734.734 INFO    ] No update needed
[2026-06-13 17:34:09,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 17:34:09,758.758 INFO    ] 200
[2026-06-13 17:34:09,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:09,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:34:09,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:34:09,824.824 INFO    ] No camera update needed
[2026-06-13 17:34:09,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:34:09,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:34:09,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:34:09,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:11,872.872 INFO    ] ================================================
[2026-06-13 17:34:11,887.887 INFO    ] Launching Daemon at Sat Jun 13 17:34:11 IST 2026
[2026-06-13 17:34:11,898.898 INFO    ] ================================================
[2026-06-13 17:34:12,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:12
[2026-06-13 17:34:12,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:34:12,750.750 INFO    ] Initializing speech engine...
[2026-06-13 17:34:12,755.755 INFO    ] 2026-06-13 17:34:12
[2026-06-13 17:34:12,966.966 INFO    ] 2026-06-13 17:34:12
[2026-06-13 17:34:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:34:13,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:34:13,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:34:13,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:34:13,373.373 INFO    ] time= 13/06/2026 17:34:13
[2026-06-13 17:34:13,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:34:13,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:34:13,484.484 INFO    ] No existing commands found in stream
[2026-06-13 17:34:18,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:34:18,502.502 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 17:34:23,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:34:23,460.460 INFO    ] Checking for system updates...
[2026-06-13 17:34:23,481.481 INFO    ] 200
[2026-06-13 17:34:23,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:23,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:34:23,517.517 INFO    ] No update needed
[2026-06-13 17:34:23,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 17:34:23,544.544 INFO    ] 200
[2026-06-13 17:34:23,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:23,581.581 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:34:23,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:34:23,624.624 INFO    ] No camera update needed
[2026-06-13 17:34:23,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:34:23,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:34:23,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:34:23,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:25,665.665 INFO    ] ================================================
[2026-06-13 17:34:25,674.674 INFO    ] Launching Daemon at Sat Jun 13 17:34:25 IST 2026
[2026-06-13 17:34:25,680.680 INFO    ] ================================================
[2026-06-13 17:34:26,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:26
[2026-06-13 17:34:26,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:34:26,878.878 INFO    ] Initializing speech engine...
[2026-06-13 17:34:26,887.887 INFO    ] 2026-06-13 17:34:26
[2026-06-13 17:34:27,132.132 INFO    ] 2026-06-13 17:34:27
[2026-06-13 17:34:27,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:34:27,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:34:27,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:34:27,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:34:27,495.495 INFO    ] time= 13/06/2026 17:34:27
[2026-06-13 17:34:27,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:34:27,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:34:27,573.573 INFO    ] No existing commands found in stream
[2026-06-13 17:34:32,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:34:32,588.588 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 17:34:35,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:34:35,043.043 INFO    ] Checking for system updates...
[2026-06-13 17:34:35,065.065 INFO    ] 200
[2026-06-13 17:34:35,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:35,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:34:35,101.101 INFO    ] No update needed
[2026-06-13 17:34:35,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 17:34:35,123.123 INFO    ] 200
[2026-06-13 17:34:35,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:35,148.148 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:34:35,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:34:35,187.187 INFO    ] No camera update needed
[2026-06-13 17:34:35,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:34:35,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:34:35,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:34:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:37,241.241 INFO    ] ================================================
[2026-06-13 17:34:37,256.256 INFO    ] Launching Daemon at Sat Jun 13 17:34:37 IST 2026
[2026-06-13 17:34:37,267.267 INFO    ] ================================================
[2026-06-13 17:34:37,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:37
[2026-06-13 17:34:37,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:34:38,136.136 INFO    ] Initializing speech engine...
[2026-06-13 17:34:38,140.140 INFO    ] 2026-06-13 17:34:38
[2026-06-13 17:34:38,349.349 INFO    ] 2026-06-13 17:34:38
[2026-06-13 17:34:38,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:34:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:34:38,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:34:38,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:34:38,746.746 INFO    ] time= 13/06/2026 17:34:38
[2026-06-13 17:34:38,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:34:38,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:34:38,869.869 INFO    ] No existing commands found in stream
[2026-06-13 17:34:43,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:34:43,887.887 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 17:34:45,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:34:45,255.255 INFO    ] Checking for system updates...
[2026-06-13 17:34:45,276.276 INFO    ] 200
[2026-06-13 17:34:45,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:45,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:34:45,310.310 INFO    ] No update needed
[2026-06-13 17:34:45,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 17:34:45,332.332 INFO    ] 200
[2026-06-13 17:34:45,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:45,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:34:45,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:34:45,402.402 INFO    ] No camera update needed
[2026-06-13 17:34:45,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:34:45,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:34:45,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:34:45,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:47,452.452 INFO    ] ================================================
[2026-06-13 17:34:47,468.468 INFO    ] Launching Daemon at Sat Jun 13 17:34:47 IST 2026
[2026-06-13 17:34:47,479.479 INFO    ] ================================================
[2026-06-13 17:34:47,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:47
[2026-06-13 17:34:48,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:34:48,334.334 INFO    ] Initializing speech engine...
[2026-06-13 17:34:48,337.337 INFO    ] 2026-06-13 17:34:48
[2026-06-13 17:34:48,545.545 INFO    ] 2026-06-13 17:34:48
[2026-06-13 17:34:48,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:34:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:34:49,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:34:49,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:34:49,457.457 INFO    ] time= 13/06/2026 17:34:49
[2026-06-13 17:34:49,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:34:49,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:34:49,507.507 INFO    ] No existing commands found in stream
[2026-06-13 17:34:54,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:34:54,520.520 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 17:34:57,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:34:57,152.152 INFO    ] Checking for system updates...
[2026-06-13 17:34:57,173.173 INFO    ] 200
[2026-06-13 17:34:57,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:57,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:34:57,206.206 INFO    ] No update needed
[2026-06-13 17:34:57,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 17:34:57,227.227 INFO    ] 200
[2026-06-13 17:34:57,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:34:57,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:34:57,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:34:57,289.289 INFO    ] No camera update needed
[2026-06-13 17:34:57,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:34:57,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:34:57,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:34:57,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:34:59,337.337 INFO    ] ================================================
[2026-06-13 17:34:59,352.352 INFO    ] Launching Daemon at Sat Jun 13 17:34:59 IST 2026
[2026-06-13 17:34:59,363.363 INFO    ] ================================================
[2026-06-13 17:34:59,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:34:59
[2026-06-13 17:35:00,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:00,223.223 INFO    ] Initializing speech engine...
[2026-06-13 17:35:00,228.228 INFO    ] 2026-06-13 17:35:00
[2026-06-13 17:35:00,438.438 INFO    ] 2026-06-13 17:35:00
[2026-06-13 17:35:00,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:00,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:00,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:00,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:00,853.853 INFO    ] time= 13/06/2026 17:35:00
[2026-06-13 17:35:00,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:00,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:00,953.953 INFO    ] No existing commands found in stream
[2026-06-13 17:35:05,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:35:05,972.972 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 17:35:09,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:35:09,563.563 INFO    ] Checking for system updates...
[2026-06-13 17:35:09,600.600 INFO    ] 200
[2026-06-13 17:35:09,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:09,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:35:09,660.660 INFO    ] No update needed
[2026-06-13 17:35:09,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 17:35:09,698.698 INFO    ] 200
[2026-06-13 17:35:09,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:09,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:35:09,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:35:09,788.788 INFO    ] No camera update needed
[2026-06-13 17:35:09,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:35:09,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:35:09,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:35:09,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:35:11,847.847 INFO    ] ================================================
[2026-06-13 17:35:11,862.862 INFO    ] Launching Daemon at Sat Jun 13 17:35:11 IST 2026
[2026-06-13 17:35:11,873.873 INFO    ] ================================================
[2026-06-13 17:35:12,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:35:12
[2026-06-13 17:35:12,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:12,812.812 INFO    ] Initializing speech engine...
[2026-06-13 17:35:12,815.815 INFO    ] 2026-06-13 17:35:12
[2026-06-13 17:35:13,026.026 INFO    ] 2026-06-13 17:35:13
[2026-06-13 17:35:13,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:13,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:13,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:13,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:13,514.514 INFO    ] time= 13/06/2026 17:35:13
[2026-06-13 17:35:13,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:13,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:13,682.682 INFO    ] No existing commands found in stream
[2026-06-13 17:35:18,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:35:18,700.700 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 17:35:22,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:35:22,932.932 INFO    ] Checking for system updates...
[2026-06-13 17:35:22,953.953 INFO    ] 200
[2026-06-13 17:35:22,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:22,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:22,987.987 INFO    ] No update needed
[2026-06-13 17:35:22,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 17:35:23,007.007 INFO    ] 200
[2026-06-13 17:35:23,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:23,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:35:23,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:23,069.069 INFO    ] No camera update needed
[2026-06-13 17:35:23,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:35:23,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:35:23,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:35:23,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:35:25,117.117 INFO    ] ================================================
[2026-06-13 17:35:25,133.133 INFO    ] Launching Daemon at Sat Jun 13 17:35:25 IST 2026
[2026-06-13 17:35:25,144.144 INFO    ] ================================================
[2026-06-13 17:35:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:35:25
[2026-06-13 17:35:26,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:26,414.414 INFO    ] Initializing speech engine...
[2026-06-13 17:35:26,426.426 INFO    ] 2026-06-13 17:35:26
[2026-06-13 17:35:26,713.713 INFO    ] 2026-06-13 17:35:26
[2026-06-13 17:35:26,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:27,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:27,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:27,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:27,229.229 INFO    ] time= 13/06/2026 17:35:27
[2026-06-13 17:35:27,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:27,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:27,409.409 INFO    ] No existing commands found in stream
[2026-06-13 17:35:32,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:35:32,435.435 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 17:35:33,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:35:33,948.948 INFO    ] Checking for system updates...
[2026-06-13 17:35:33,969.969 INFO    ] 200
[2026-06-13 17:35:33,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:34,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:35:34,005.005 INFO    ] No update needed
[2026-06-13 17:35:34,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 17:35:34,028.028 INFO    ] 200
[2026-06-13 17:35:34,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:34,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:35:34,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:35:34,092.092 INFO    ] No camera update needed
[2026-06-13 17:35:34,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:35:34,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:35:34,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:35:34,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:35:36,140.140 INFO    ] ================================================
[2026-06-13 17:35:36,155.155 INFO    ] Launching Daemon at Sat Jun 13 17:35:36 IST 2026
[2026-06-13 17:35:36,166.166 INFO    ] ================================================
[2026-06-13 17:35:36,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:35:36
[2026-06-13 17:35:36,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:36,959.959 INFO    ] Initializing speech engine...
[2026-06-13 17:35:36,964.964 INFO    ] 2026-06-13 17:35:36
[2026-06-13 17:35:37,154.154 INFO    ] 2026-06-13 17:35:37
[2026-06-13 17:35:37,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:37,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:37,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:37,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:37,589.589 INFO    ] time= 13/06/2026 17:35:37
[2026-06-13 17:35:37,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:37,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:37,743.743 INFO    ] No existing commands found in stream
[2026-06-13 17:35:42,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:35:42,756.756 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 17:35:43,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:35:43,638.638 INFO    ] Checking for system updates...
[2026-06-13 17:35:43,660.660 INFO    ] 200
[2026-06-13 17:35:43,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:43,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:43,693.693 INFO    ] No update needed
[2026-06-13 17:35:43,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 17:35:43,715.715 INFO    ] 200
[2026-06-13 17:35:43,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:43,740.740 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:35:43,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:43,778.778 INFO    ] No camera update needed
[2026-06-13 17:35:43,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:35:43,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:35:43,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:35:43,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:35:45,828.828 INFO    ] ================================================
[2026-06-13 17:35:45,843.843 INFO    ] Launching Daemon at Sat Jun 13 17:35:45 IST 2026
[2026-06-13 17:35:45,855.855 INFO    ] ================================================
[2026-06-13 17:35:46,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:35:46
[2026-06-13 17:35:46,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:46,649.649 INFO    ] Initializing speech engine...
[2026-06-13 17:35:46,655.655 INFO    ] 2026-06-13 17:35:46
[2026-06-13 17:35:46,872.872 INFO    ] 2026-06-13 17:35:46
[2026-06-13 17:35:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:47,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:47,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:47,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:47,294.294 INFO    ] time= 13/06/2026 17:35:47
[2026-06-13 17:35:47,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:47,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:47,399.399 INFO    ] No existing commands found in stream
[2026-06-13 17:35:52,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:35:52,411.411 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 17:35:53,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:35:53,850.850 INFO    ] Checking for system updates...
[2026-06-13 17:35:53,872.872 INFO    ] 200
[2026-06-13 17:35:53,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:53,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:53,912.912 INFO    ] No update needed
[2026-06-13 17:35:53,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 17:35:53,935.935 INFO    ] 200
[2026-06-13 17:35:53,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:35:53,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:35:54,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:35:54,004.004 INFO    ] No camera update needed
[2026-06-13 17:35:54,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:35:54,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:35:54,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:35:54,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:35:56,066.066 INFO    ] ================================================
[2026-06-13 17:35:56,081.081 INFO    ] Launching Daemon at Sat Jun 13 17:35:56 IST 2026
[2026-06-13 17:35:56,092.092 INFO    ] ================================================
[2026-06-13 17:35:56,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:35:56
[2026-06-13 17:35:57,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:35:57,311.311 INFO    ] Initializing speech engine...
[2026-06-13 17:35:57,314.314 INFO    ] 2026-06-13 17:35:57
[2026-06-13 17:35:57,506.506 INFO    ] 2026-06-13 17:35:57
[2026-06-13 17:35:57,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:35:57,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:35:57,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:35:57,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:35:57,847.847 INFO    ] time= 13/06/2026 17:35:57
[2026-06-13 17:35:57,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:35:57,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:35:57,962.962 INFO    ] No existing commands found in stream
[2026-06-13 17:36:02,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:02,994.994 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 17:36:05,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:36:05,947.947 INFO    ] Checking for system updates...
[2026-06-13 17:36:05,968.968 INFO    ] 200
[2026-06-13 17:36:05,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:06,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:36:06,001.001 INFO    ] No update needed
[2026-06-13 17:36:06,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 17:36:06,025.025 INFO    ] 200
[2026-06-13 17:36:06,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:06,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:36:06,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:36:06,092.092 INFO    ] No camera update needed
[2026-06-13 17:36:06,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:36:06,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:36:06,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:36:06,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:36:08,139.139 INFO    ] ================================================
[2026-06-13 17:36:08,154.154 INFO    ] Launching Daemon at Sat Jun 13 17:36:08 IST 2026
[2026-06-13 17:36:08,165.165 INFO    ] ================================================
[2026-06-13 17:36:08,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:36:08
[2026-06-13 17:36:08,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:36:08,938.938 INFO    ] Initializing speech engine...
[2026-06-13 17:36:08,942.942 INFO    ] 2026-06-13 17:36:08
[2026-06-13 17:36:09,132.132 INFO    ] 2026-06-13 17:36:09
[2026-06-13 17:36:09,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:36:09,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:36:09,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:36:09,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:36:09,423.423 INFO    ] time= 13/06/2026 17:36:09
[2026-06-13 17:36:09,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:36:09,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:36:09,511.511 INFO    ] No existing commands found in stream
[2026-06-13 17:36:14,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:14,543.543 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 17:36:15,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:36:15,277.277 INFO    ] Checking for system updates...
[2026-06-13 17:36:15,298.298 INFO    ] 200
[2026-06-13 17:36:15,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:15,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:15,334.334 INFO    ] No update needed
[2026-06-13 17:36:15,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 17:36:15,355.355 INFO    ] 200
[2026-06-13 17:36:15,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:15,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:36:15,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:15,437.437 INFO    ] No camera update needed
[2026-06-13 17:36:15,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:36:15,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:36:15,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:36:15,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:36:17,483.483 INFO    ] ================================================
[2026-06-13 17:36:17,499.499 INFO    ] Launching Daemon at Sat Jun 13 17:36:17 IST 2026
[2026-06-13 17:36:17,509.509 INFO    ] ================================================
[2026-06-13 17:36:17,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:36:17
[2026-06-13 17:36:18,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:36:18,382.382 INFO    ] Initializing speech engine...
[2026-06-13 17:36:18,389.389 INFO    ] 2026-06-13 17:36:18
[2026-06-13 17:36:18,600.600 INFO    ] 2026-06-13 17:36:18
[2026-06-13 17:36:18,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:36:18,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:36:18,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:36:18,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:36:19,018.018 INFO    ] time= 13/06/2026 17:36:18
[2026-06-13 17:36:19,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:36:19,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:36:19,126.126 INFO    ] No existing commands found in stream
[2026-06-13 17:36:24,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:24,139.139 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 17:36:28,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:36:28,217.217 INFO    ] Checking for system updates...
[2026-06-13 17:36:28,238.238 INFO    ] 200
[2026-06-13 17:36:28,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:28,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:28,272.272 INFO    ] No update needed
[2026-06-13 17:36:28,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 17:36:28,294.294 INFO    ] 200
[2026-06-13 17:36:28,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:28,319.319 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:36:28,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:28,357.357 INFO    ] No camera update needed
[2026-06-13 17:36:28,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:36:28,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:36:28,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:36:28,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:36:30,405.405 INFO    ] ================================================
[2026-06-13 17:36:30,420.420 INFO    ] Launching Daemon at Sat Jun 13 17:36:30 IST 2026
[2026-06-13 17:36:30,430.430 INFO    ] ================================================
[2026-06-13 17:36:30,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:36:30
[2026-06-13 17:36:31,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:36:31,346.346 INFO    ] Initializing speech engine...
[2026-06-13 17:36:31,351.351 INFO    ] 2026-06-13 17:36:31
[2026-06-13 17:36:31,570.570 INFO    ] 2026-06-13 17:36:31
[2026-06-13 17:36:31,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:36:31,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:36:31,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:36:31,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:36:32,029.029 INFO    ] time= 13/06/2026 17:36:31
[2026-06-13 17:36:32,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:36:32,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:36:32,152.152 INFO    ] No existing commands found in stream
[2026-06-13 17:36:37,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:37,170.170 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 17:36:38,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:36:38,914.914 INFO    ] Checking for system updates...
[2026-06-13 17:36:38,936.936 INFO    ] 200
[2026-06-13 17:36:38,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:38,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:38,970.970 INFO    ] No update needed
[2026-06-13 17:36:38,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 17:36:38,990.990 INFO    ] 200
[2026-06-13 17:36:38,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:39,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:36:39,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:39,062.062 INFO    ] No camera update needed
[2026-06-13 17:36:39,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:36:39,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:36:39,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:36:39,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:36:41,110.110 INFO    ] ================================================
[2026-06-13 17:36:41,125.125 INFO    ] Launching Daemon at Sat Jun 13 17:36:41 IST 2026
[2026-06-13 17:36:41,136.136 INFO    ] ================================================
[2026-06-13 17:36:41,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:36:41
[2026-06-13 17:36:41,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:36:42,029.029 INFO    ] Initializing speech engine...
[2026-06-13 17:36:42,035.035 INFO    ] 2026-06-13 17:36:42
[2026-06-13 17:36:42,246.246 INFO    ] 2026-06-13 17:36:42
[2026-06-13 17:36:42,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:36:42,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:36:42,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:36:42,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:36:42,655.655 INFO    ] time= 13/06/2026 17:36:42
[2026-06-13 17:36:42,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:36:42,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:36:42,764.764 INFO    ] No existing commands found in stream
[2026-06-13 17:36:47,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:47,779.779 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 17:36:50,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:36:50,453.453 INFO    ] Checking for system updates...
[2026-06-13 17:36:50,474.474 INFO    ] 200
[2026-06-13 17:36:50,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:50,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:36:50,508.508 INFO    ] No update needed
[2026-06-13 17:36:50,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 17:36:50,530.530 INFO    ] 200
[2026-06-13 17:36:50,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:36:50,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:36:50,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:36:50,591.591 INFO    ] No camera update needed
[2026-06-13 17:36:50,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:36:50,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:36:50,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:36:50,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:36:52,638.638 INFO    ] ================================================
[2026-06-13 17:36:52,653.653 INFO    ] Launching Daemon at Sat Jun 13 17:36:52 IST 2026
[2026-06-13 17:36:52,664.664 INFO    ] ================================================
[2026-06-13 17:36:52,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:36:52
[2026-06-13 17:36:53,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:36:53,439.439 INFO    ] Initializing speech engine...
[2026-06-13 17:36:53,448.448 INFO    ] 2026-06-13 17:36:53
[2026-06-13 17:36:53,654.654 INFO    ] 2026-06-13 17:36:53
[2026-06-13 17:36:53,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:36:53,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:36:53,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:36:54,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:36:54,059.059 INFO    ] time= 13/06/2026 17:36:54
[2026-06-13 17:36:54,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:36:54,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:36:54,175.175 INFO    ] No existing commands found in stream
[2026-06-13 17:36:59,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:36:59,189.189 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 17:37:01,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:37:01,148.148 INFO    ] Checking for system updates...
[2026-06-13 17:37:01,186.186 INFO    ] 200
[2026-06-13 17:37:01,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:01,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:01,245.245 INFO    ] No update needed
[2026-06-13 17:37:01,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 17:37:01,311.311 INFO    ] 200
[2026-06-13 17:37:01,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:01,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:37:01,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:01,474.474 INFO    ] No camera update needed
[2026-06-13 17:37:01,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:37:01,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:37:01,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:37:01,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:37:03,548.548 INFO    ] ================================================
[2026-06-13 17:37:03,563.563 INFO    ] Launching Daemon at Sat Jun 13 17:37:03 IST 2026
[2026-06-13 17:37:03,574.574 INFO    ] ================================================
[2026-06-13 17:37:04,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:37:04
[2026-06-13 17:37:04,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:37:04,665.665 INFO    ] Initializing speech engine...
[2026-06-13 17:37:04,671.671 INFO    ] 2026-06-13 17:37:04
[2026-06-13 17:37:04,881.881 INFO    ] 2026-06-13 17:37:04
[2026-06-13 17:37:04,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:37:05,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:37:05,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:37:05,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:37:05,247.247 INFO    ] time= 13/06/2026 17:37:05
[2026-06-13 17:37:05,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:37:05,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:37:05,447.447 INFO    ] No existing commands found in stream
[2026-06-13 17:37:10,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:37:10,465.465 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 17:37:14,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:37:14,609.609 INFO    ] Checking for system updates...
[2026-06-13 17:37:14,630.630 INFO    ] 200
[2026-06-13 17:37:14,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:14,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:14,663.663 INFO    ] No update needed
[2026-06-13 17:37:14,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 17:37:14,685.685 INFO    ] 200
[2026-06-13 17:37:14,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:14,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:37:14,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:14,757.757 INFO    ] No camera update needed
[2026-06-13 17:37:14,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:37:14,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:37:14,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:37:14,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:37:16,803.803 INFO    ] ================================================
[2026-06-13 17:37:16,819.819 INFO    ] Launching Daemon at Sat Jun 13 17:37:16 IST 2026
[2026-06-13 17:37:16,830.830 INFO    ] ================================================
[2026-06-13 17:37:17,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:37:17
[2026-06-13 17:37:17,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:37:17,649.649 INFO    ] Initializing speech engine...
[2026-06-13 17:37:17,654.654 INFO    ] 2026-06-13 17:37:17
[2026-06-13 17:37:17,884.884 INFO    ] 2026-06-13 17:37:17
[2026-06-13 17:37:17,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:37:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:37:18,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:37:18,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:37:18,324.324 INFO    ] time= 13/06/2026 17:37:18
[2026-06-13 17:37:18,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:37:18,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:37:18,471.471 INFO    ] No existing commands found in stream
[2026-06-13 17:37:23,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:37:23,494.494 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 17:37:25,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:37:25,495.495 INFO    ] Checking for system updates...
[2026-06-13 17:37:25,517.517 INFO    ] 200
[2026-06-13 17:37:25,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:25,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:25,551.551 INFO    ] No update needed
[2026-06-13 17:37:25,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 17:37:25,572.572 INFO    ] 200
[2026-06-13 17:37:25,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:25,597.597 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:37:25,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:25,624.624 INFO    ] No camera update needed
[2026-06-13 17:37:25,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:37:25,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:37:25,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:37:25,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:37:27,672.672 INFO    ] ================================================
[2026-06-13 17:37:27,687.687 INFO    ] Launching Daemon at Sat Jun 13 17:37:27 IST 2026
[2026-06-13 17:37:27,698.698 INFO    ] ================================================
[2026-06-13 17:37:28,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:37:28
[2026-06-13 17:37:28,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:37:28,530.530 INFO    ] Initializing speech engine...
[2026-06-13 17:37:28,538.538 INFO    ] 2026-06-13 17:37:28
[2026-06-13 17:37:28,760.760 INFO    ] 2026-06-13 17:37:28
[2026-06-13 17:37:28,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:37:28,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:37:28,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:37:29,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:37:29,193.193 INFO    ] time= 13/06/2026 17:37:29
[2026-06-13 17:37:29,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:37:29,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:37:29,374.374 INFO    ] No existing commands found in stream
[2026-06-13 17:37:34,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:37:34,387.387 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 17:37:38,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:37:38,537.537 INFO    ] Checking for system updates...
[2026-06-13 17:37:38,558.558 INFO    ] 200
[2026-06-13 17:37:38,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:38,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:38,591.591 INFO    ] No update needed
[2026-06-13 17:37:38,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 17:37:38,614.614 INFO    ] 200
[2026-06-13 17:37:38,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:38,642.642 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:37:38,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:37:38,784.784 INFO    ] No camera update needed
[2026-06-13 17:37:38,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:37:38,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:37:38,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:37:38,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:37:40,831.831 INFO    ] ================================================
[2026-06-13 17:37:40,846.846 INFO    ] Launching Daemon at Sat Jun 13 17:37:40 IST 2026
[2026-06-13 17:37:40,858.858 INFO    ] ================================================
[2026-06-13 17:37:41,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:37:41
[2026-06-13 17:37:41,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:37:41,703.703 INFO    ] Initializing speech engine...
[2026-06-13 17:37:41,709.709 INFO    ] 2026-06-13 17:37:41
[2026-06-13 17:37:41,914.914 INFO    ] 2026-06-13 17:37:41
[2026-06-13 17:37:41,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:37:42,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:37:42,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:37:42,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:37:42,323.323 INFO    ] time= 13/06/2026 17:37:42
[2026-06-13 17:37:42,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:37:42,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:37:42,426.426 INFO    ] No existing commands found in stream
[2026-06-13 17:37:47,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:37:47,441.441 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 17:37:51,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:37:51,611.611 INFO    ] Checking for system updates...
[2026-06-13 17:37:51,633.633 INFO    ] 200
[2026-06-13 17:37:51,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:51,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:37:51,667.667 INFO    ] No update needed
[2026-06-13 17:37:51,668.668 INFO    ] Checking for camera pi updates...
[2026-06-13 17:37:51,688.688 INFO    ] 200
[2026-06-13 17:37:51,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:37:51,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:37:51,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:37:51,749.749 INFO    ] No camera update needed
[2026-06-13 17:37:51,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:37:51,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:37:51,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:37:51,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:37:53,796.796 INFO    ] ================================================
[2026-06-13 17:37:53,811.811 INFO    ] Launching Daemon at Sat Jun 13 17:37:53 IST 2026
[2026-06-13 17:37:53,822.822 INFO    ] ================================================
[2026-06-13 17:37:54,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:37:54
[2026-06-13 17:37:54,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:37:54,649.649 INFO    ] Initializing speech engine...
[2026-06-13 17:37:54,655.655 INFO    ] 2026-06-13 17:37:54
[2026-06-13 17:37:54,864.864 INFO    ] 2026-06-13 17:37:54
[2026-06-13 17:37:54,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:37:55,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:37:55,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:37:55,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:37:55,277.277 INFO    ] time= 13/06/2026 17:37:55
[2026-06-13 17:37:55,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:37:55,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:37:55,387.387 INFO    ] No existing commands found in stream
[2026-06-13 17:38:00,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:00,400.400 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 17:38:02,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:38:02,564.564 INFO    ] Checking for system updates...
[2026-06-13 17:38:02,601.601 INFO    ] 200
[2026-06-13 17:38:02,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:02,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:38:02,660.660 INFO    ] No update needed
[2026-06-13 17:38:02,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 17:38:02,705.705 INFO    ] 200
[2026-06-13 17:38:02,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:02,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:38:02,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:38:02,793.793 INFO    ] No camera update needed
[2026-06-13 17:38:02,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:38:02,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:38:02,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:38:02,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:38:04,841.841 INFO    ] ================================================
[2026-06-13 17:38:04,856.856 INFO    ] Launching Daemon at Sat Jun 13 17:38:04 IST 2026
[2026-06-13 17:38:04,867.867 INFO    ] ================================================
[2026-06-13 17:38:05,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:38:05
[2026-06-13 17:38:05,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:38:05,697.697 INFO    ] Initializing speech engine...
[2026-06-13 17:38:05,707.707 INFO    ] 2026-06-13 17:38:05
[2026-06-13 17:38:05,913.913 INFO    ] 2026-06-13 17:38:05
[2026-06-13 17:38:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:38:06,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:38:06,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:38:06,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:38:06,328.328 INFO    ] time= 13/06/2026 17:38:06
[2026-06-13 17:38:06,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:38:06,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:38:06,424.424 INFO    ] No existing commands found in stream
[2026-06-13 17:38:11,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:11,438.438 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 17:38:13,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:38:13,129.129 INFO    ] Checking for system updates...
[2026-06-13 17:38:13,150.150 INFO    ] 200
[2026-06-13 17:38:13,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:13,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:13,183.183 INFO    ] No update needed
[2026-06-13 17:38:13,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 17:38:13,205.205 INFO    ] 200
[2026-06-13 17:38:13,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:13,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:38:13,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:13,286.286 INFO    ] No camera update needed
[2026-06-13 17:38:13,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:38:13,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:38:13,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:38:13,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:38:15,333.333 INFO    ] ================================================
[2026-06-13 17:38:15,349.349 INFO    ] Launching Daemon at Sat Jun 13 17:38:15 IST 2026
[2026-06-13 17:38:15,361.361 INFO    ] ================================================
[2026-06-13 17:38:15,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:38:15
[2026-06-13 17:38:15,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:38:16,137.137 INFO    ] Initializing speech engine...
[2026-06-13 17:38:16,147.147 INFO    ] 2026-06-13 17:38:16
[2026-06-13 17:38:16,360.360 INFO    ] 2026-06-13 17:38:16
[2026-06-13 17:38:16,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:38:16,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:38:16,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:38:16,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:38:16,782.782 INFO    ] time= 13/06/2026 17:38:16
[2026-06-13 17:38:16,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:38:16,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:38:16,900.900 INFO    ] No existing commands found in stream
[2026-06-13 17:38:21,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:21,912.912 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 17:38:25,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:38:25,451.451 INFO    ] Checking for system updates...
[2026-06-13 17:38:25,473.473 INFO    ] 200
[2026-06-13 17:38:25,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:25,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:38:25,509.509 INFO    ] No update needed
[2026-06-13 17:38:25,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 17:38:25,530.530 INFO    ] 200
[2026-06-13 17:38:25,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:25,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:38:25,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:38:25,596.596 INFO    ] No camera update needed
[2026-06-13 17:38:25,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:38:25,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:38:25,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:38:25,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:38:27,645.645 INFO    ] ================================================
[2026-06-13 17:38:27,661.661 INFO    ] Launching Daemon at Sat Jun 13 17:38:27 IST 2026
[2026-06-13 17:38:27,672.672 INFO    ] ================================================
[2026-06-13 17:38:28,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:38:27
[2026-06-13 17:38:28,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:38:28,460.460 INFO    ] Initializing speech engine...
[2026-06-13 17:38:28,465.465 INFO    ] 2026-06-13 17:38:28
[2026-06-13 17:38:28,668.668 INFO    ] 2026-06-13 17:38:28
[2026-06-13 17:38:28,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:38:28,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:38:28,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:38:29,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:38:29,071.071 INFO    ] time= 13/06/2026 17:38:29
[2026-06-13 17:38:29,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:38:29,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:38:29,180.180 INFO    ] No existing commands found in stream
[2026-06-13 17:38:34,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:34,192.192 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 17:38:37,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:38:37,671.671 INFO    ] Checking for system updates...
[2026-06-13 17:38:37,707.707 INFO    ] 200
[2026-06-13 17:38:37,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:37,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:37,755.755 INFO    ] No update needed
[2026-06-13 17:38:37,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 17:38:37,776.776 INFO    ] 200
[2026-06-13 17:38:37,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:37,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:38:37,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:37,848.848 INFO    ] No camera update needed
[2026-06-13 17:38:37,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:38:37,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:38:37,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:38:37,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:38:39,896.896 INFO    ] ================================================
[2026-06-13 17:38:39,912.912 INFO    ] Launching Daemon at Sat Jun 13 17:38:39 IST 2026
[2026-06-13 17:38:39,923.923 INFO    ] ================================================
[2026-06-13 17:38:40,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:38:40
[2026-06-13 17:38:40,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:38:40,705.705 INFO    ] Initializing speech engine...
[2026-06-13 17:38:40,716.716 INFO    ] 2026-06-13 17:38:40
[2026-06-13 17:38:40,927.927 INFO    ] 2026-06-13 17:38:40
[2026-06-13 17:38:40,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:38:41,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:38:41,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:38:41,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:38:41,340.340 INFO    ] time= 13/06/2026 17:38:41
[2026-06-13 17:38:41,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:38:41,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:38:41,467.467 INFO    ] No existing commands found in stream
[2026-06-13 17:38:46,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:46,481.481 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 17:38:50,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:38:50,714.714 INFO    ] Checking for system updates...
[2026-06-13 17:38:50,735.735 INFO    ] 200
[2026-06-13 17:38:50,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:50,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:50,768.768 INFO    ] No update needed
[2026-06-13 17:38:50,769.769 INFO    ] Checking for camera pi updates...
[2026-06-13 17:38:50,792.792 INFO    ] 200
[2026-06-13 17:38:50,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:38:50,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:38:50,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:38:50,857.857 INFO    ] No camera update needed
[2026-06-13 17:38:50,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:38:50,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:38:50,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:38:50,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:38:52,904.904 INFO    ] ================================================
[2026-06-13 17:38:52,919.919 INFO    ] Launching Daemon at Sat Jun 13 17:38:52 IST 2026
[2026-06-13 17:38:52,931.931 INFO    ] ================================================
[2026-06-13 17:38:53,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:38:53
[2026-06-13 17:38:53,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:38:53,821.821 INFO    ] Initializing speech engine...
[2026-06-13 17:38:53,825.825 INFO    ] 2026-06-13 17:38:53
[2026-06-13 17:38:54,030.030 INFO    ] 2026-06-13 17:38:54
[2026-06-13 17:38:54,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:38:54,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:38:54,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:38:54,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:38:54,441.441 INFO    ] time= 13/06/2026 17:38:54
[2026-06-13 17:38:54,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:38:54,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:38:54,546.546 INFO    ] No existing commands found in stream
[2026-06-13 17:38:59,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:38:59,559.559 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 17:39:02,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:39:02,185.185 INFO    ] Checking for system updates...
[2026-06-13 17:39:02,206.206 INFO    ] 200
[2026-06-13 17:39:02,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:02,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:02,241.241 INFO    ] No update needed
[2026-06-13 17:39:02,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:02,267.267 INFO    ] 200
[2026-06-13 17:39:02,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:02,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:02,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:02,321.321 INFO    ] No camera update needed
[2026-06-13 17:39:02,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:02,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:02,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:02,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:39:04,368.368 INFO    ] ================================================
[2026-06-13 17:39:04,384.384 INFO    ] Launching Daemon at Sat Jun 13 17:39:04 IST 2026
[2026-06-13 17:39:04,395.395 INFO    ] ================================================
[2026-06-13 17:39:04,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:39:04
[2026-06-13 17:39:05,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:39:05,271.271 INFO    ] Initializing speech engine...
[2026-06-13 17:39:05,278.278 INFO    ] 2026-06-13 17:39:05
[2026-06-13 17:39:05,502.502 INFO    ] 2026-06-13 17:39:05
[2026-06-13 17:39:05,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:39:05,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:39:05,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:39:05,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:39:05,916.916 INFO    ] time= 13/06/2026 17:39:05
[2026-06-13 17:39:05,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:39:05,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:39:06,021.021 INFO    ] No existing commands found in stream
[2026-06-13 17:39:11,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:39:11,034.034 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 17:39:14,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:39:14,478.478 INFO    ] Checking for system updates...
[2026-06-13 17:39:14,501.501 INFO    ] 200
[2026-06-13 17:39:14,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:14,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:39:14,534.534 INFO    ] No update needed
[2026-06-13 17:39:14,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:14,555.555 INFO    ] 200
[2026-06-13 17:39:14,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:14,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:14,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:39:14,623.623 INFO    ] No camera update needed
[2026-06-13 17:39:14,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:14,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:14,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:39:16,671.671 INFO    ] ================================================
[2026-06-13 17:39:16,687.687 INFO    ] Launching Daemon at Sat Jun 13 17:39:16 IST 2026
[2026-06-13 17:39:16,698.698 INFO    ] ================================================
[2026-06-13 17:39:17,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:39:17
[2026-06-13 17:39:17,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:39:17,516.516 INFO    ] Initializing speech engine...
[2026-06-13 17:39:17,527.527 INFO    ] 2026-06-13 17:39:17
[2026-06-13 17:39:17,733.733 INFO    ] 2026-06-13 17:39:17
[2026-06-13 17:39:17,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:39:17,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:39:17,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:39:18,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:39:18,149.149 INFO    ] time= 13/06/2026 17:39:18
[2026-06-13 17:39:18,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:39:18,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:39:18,247.247 INFO    ] No existing commands found in stream
[2026-06-13 17:39:23,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:39:23,265.265 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 17:39:25,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:39:25,390.390 INFO    ] Checking for system updates...
[2026-06-13 17:39:25,412.412 INFO    ] 200
[2026-06-13 17:39:25,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:25,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:25,448.448 INFO    ] No update needed
[2026-06-13 17:39:25,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:25,470.470 INFO    ] 200
[2026-06-13 17:39:25,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:25,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:25,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:25,541.541 INFO    ] No camera update needed
[2026-06-13 17:39:25,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:25,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:25,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:25,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:39:27,592.592 INFO    ] ================================================
[2026-06-13 17:39:27,607.607 INFO    ] Launching Daemon at Sat Jun 13 17:39:27 IST 2026
[2026-06-13 17:39:27,618.618 INFO    ] ================================================
[2026-06-13 17:39:27,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:39:27
[2026-06-13 17:39:28,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:39:28,468.468 INFO    ] Initializing speech engine...
[2026-06-13 17:39:28,486.486 INFO    ] 2026-06-13 17:39:28
[2026-06-13 17:39:28,694.694 INFO    ] 2026-06-13 17:39:28
[2026-06-13 17:39:28,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:39:28,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:39:28,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:39:29,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:39:29,098.098 INFO    ] time= 13/06/2026 17:39:29
[2026-06-13 17:39:29,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:39:29,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:39:29,207.207 INFO    ] No existing commands found in stream
[2026-06-13 17:39:34,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:39:34,222.222 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 17:39:36,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:39:36,401.401 INFO    ] Checking for system updates...
[2026-06-13 17:39:36,423.423 INFO    ] 200
[2026-06-13 17:39:36,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:36,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:36,457.457 INFO    ] No update needed
[2026-06-13 17:39:36,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:36,479.479 INFO    ] 200
[2026-06-13 17:39:36,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:36,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:36,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:36,547.547 INFO    ] No camera update needed
[2026-06-13 17:39:36,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:36,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:36,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:36,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:39:38,596.596 INFO    ] ================================================
[2026-06-13 17:39:38,612.612 INFO    ] Launching Daemon at Sat Jun 13 17:39:38 IST 2026
[2026-06-13 17:39:38,622.622 INFO    ] ================================================
[2026-06-13 17:39:38,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:39:38
[2026-06-13 17:39:39,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:39:39,419.419 INFO    ] Initializing speech engine...
[2026-06-13 17:39:39,424.424 INFO    ] 2026-06-13 17:39:39
[2026-06-13 17:39:39,626.626 INFO    ] 2026-06-13 17:39:39
[2026-06-13 17:39:39,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:39:39,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:39:39,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:39:39,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:39:40,040.040 INFO    ] time= 13/06/2026 17:39:39
[2026-06-13 17:39:40,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:39:40,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:39:40,139.139 INFO    ] No existing commands found in stream
[2026-06-13 17:39:45,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:39:45,152.152 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 17:39:47,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:39:47,960.960 INFO    ] Checking for system updates...
[2026-06-13 17:39:47,981.981 INFO    ] 200
[2026-06-13 17:39:47,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:48,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:39:48,016.016 INFO    ] No update needed
[2026-06-13 17:39:48,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:48,037.037 INFO    ] 200
[2026-06-13 17:39:48,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:48,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:48,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:39:48,208.208 INFO    ] No camera update needed
[2026-06-13 17:39:48,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:48,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:48,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:48,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:39:50,256.256 INFO    ] ================================================
[2026-06-13 17:39:50,271.271 INFO    ] Launching Daemon at Sat Jun 13 17:39:50 IST 2026
[2026-06-13 17:39:50,282.282 INFO    ] ================================================
[2026-06-13 17:39:50,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:39:50
[2026-06-13 17:39:50,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:39:51,060.060 INFO    ] Initializing speech engine...
[2026-06-13 17:39:51,065.065 INFO    ] 2026-06-13 17:39:51
[2026-06-13 17:39:51,269.269 INFO    ] 2026-06-13 17:39:51
[2026-06-13 17:39:51,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:39:51,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:39:51,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:39:51,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:39:51,665.665 INFO    ] time= 13/06/2026 17:39:51
[2026-06-13 17:39:51,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:39:51,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:39:51,787.787 INFO    ] No existing commands found in stream
[2026-06-13 17:39:56,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:39:56,799.799 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 17:39:59,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:39:59,226.226 INFO    ] Checking for system updates...
[2026-06-13 17:39:59,246.246 INFO    ] 200
[2026-06-13 17:39:59,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:59,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:39:59,285.285 INFO    ] No update needed
[2026-06-13 17:39:59,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 17:39:59,306.306 INFO    ] 200
[2026-06-13 17:39:59,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:39:59,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:39:59,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:39:59,372.372 INFO    ] No camera update needed
[2026-06-13 17:39:59,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:39:59,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:39:59,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:39:59,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:01,460.460 INFO    ] ================================================
[2026-06-13 17:40:01,512.512 INFO    ] Launching Daemon at Sat Jun 13 17:40:01 IST 2026
[2026-06-13 17:40:01,534.534 INFO    ] ================================================
[2026-06-13 17:40:02,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:02
[2026-06-13 17:40:02,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:03,209.209 INFO    ] Initializing speech engine...
[2026-06-13 17:40:03,214.214 INFO    ] 2026-06-13 17:40:03
[2026-06-13 17:40:03,501.501 INFO    ] 2026-06-13 17:40:03
[2026-06-13 17:40:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:03,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:03,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:03,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:03,850.850 INFO    ] time= 13/06/2026 17:40:03
[2026-06-13 17:40:03,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:03,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:03,945.945 INFO    ] No existing commands found in stream
[2026-06-13 17:40:08,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:40:08,960.960 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 17:40:10,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:40:10,277.277 INFO    ] Checking for system updates...
[2026-06-13 17:40:10,314.314 INFO    ] 200
[2026-06-13 17:40:10,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:10,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:40:10,373.373 INFO    ] No update needed
[2026-06-13 17:40:10,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 17:40:10,410.410 INFO    ] 200
[2026-06-13 17:40:10,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:10,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:40:10,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:40:10,462.462 INFO    ] No camera update needed
[2026-06-13 17:40:10,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:40:10,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:40:10,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:40:10,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:12,509.509 INFO    ] ================================================
[2026-06-13 17:40:12,525.525 INFO    ] Launching Daemon at Sat Jun 13 17:40:12 IST 2026
[2026-06-13 17:40:12,536.536 INFO    ] ================================================
[2026-06-13 17:40:12,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:12
[2026-06-13 17:40:13,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:13,357.357 INFO    ] Initializing speech engine...
[2026-06-13 17:40:13,362.362 INFO    ] 2026-06-13 17:40:13
[2026-06-13 17:40:13,567.567 INFO    ] 2026-06-13 17:40:13
[2026-06-13 17:40:13,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:13,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:13,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:13,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:13,976.976 INFO    ] time= 13/06/2026 17:40:13
[2026-06-13 17:40:14,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:14,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:14,081.081 INFO    ] No existing commands found in stream
[2026-06-13 17:40:19,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:40:19,097.097 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 17:40:22,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:40:22,175.175 INFO    ] Checking for system updates...
[2026-06-13 17:40:22,195.195 INFO    ] 200
[2026-06-13 17:40:22,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:22,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:40:22,231.231 INFO    ] No update needed
[2026-06-13 17:40:22,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 17:40:22,252.252 INFO    ] 200
[2026-06-13 17:40:22,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:22,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:40:22,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:40:22,327.327 INFO    ] No camera update needed
[2026-06-13 17:40:22,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:40:22,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:40:22,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:40:22,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:24,375.375 INFO    ] ================================================
[2026-06-13 17:40:24,391.391 INFO    ] Launching Daemon at Sat Jun 13 17:40:24 IST 2026
[2026-06-13 17:40:24,402.402 INFO    ] ================================================
[2026-06-13 17:40:24,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:24
[2026-06-13 17:40:25,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:25,172.172 INFO    ] Initializing speech engine...
[2026-06-13 17:40:25,182.182 INFO    ] 2026-06-13 17:40:25
[2026-06-13 17:40:25,406.406 INFO    ] 2026-06-13 17:40:25
[2026-06-13 17:40:25,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:25,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:25,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:25,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:25,715.715 INFO    ] time= 13/06/2026 17:40:25
[2026-06-13 17:40:25,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:25,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:25,870.870 INFO    ] No existing commands found in stream
[2026-06-13 17:40:30,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:40:30,903.903 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 17:40:35,025.025 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:40:35,027.027 INFO    ] Checking for system updates...
[2026-06-13 17:40:35,050.050 INFO    ] 200
[2026-06-13 17:40:35,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:35,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:40:35,086.086 INFO    ] No update needed
[2026-06-13 17:40:35,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 17:40:35,109.109 INFO    ] 200
[2026-06-13 17:40:35,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:35,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:40:35,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:40:35,172.172 INFO    ] No camera update needed
[2026-06-13 17:40:35,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:40:35,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:40:35,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:40:35,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:37,221.221 INFO    ] ================================================
[2026-06-13 17:40:37,236.236 INFO    ] Launching Daemon at Sat Jun 13 17:40:37 IST 2026
[2026-06-13 17:40:37,247.247 INFO    ] ================================================
[2026-06-13 17:40:37,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:37
[2026-06-13 17:40:37,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:38,054.054 INFO    ] Initializing speech engine...
[2026-06-13 17:40:38,059.059 INFO    ] 2026-06-13 17:40:38
[2026-06-13 17:40:38,289.289 INFO    ] 2026-06-13 17:40:38
[2026-06-13 17:40:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:38,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:38,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:38,726.726 INFO    ] time= 13/06/2026 17:40:38
[2026-06-13 17:40:38,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:38,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:38,847.847 INFO    ] No existing commands found in stream
[2026-06-13 17:40:43,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:40:43,861.861 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 17:40:45,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:40:45,196.196 INFO    ] Checking for system updates...
[2026-06-13 17:40:45,217.217 INFO    ] 200
[2026-06-13 17:40:45,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:45,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:40:45,251.251 INFO    ] No update needed
[2026-06-13 17:40:45,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 17:40:45,273.273 INFO    ] 200
[2026-06-13 17:40:45,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:45,298.298 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:40:45,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:40:45,343.343 INFO    ] No camera update needed
[2026-06-13 17:40:45,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:40:45,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:40:45,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:40:45,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:47,391.391 INFO    ] ================================================
[2026-06-13 17:40:47,407.407 INFO    ] Launching Daemon at Sat Jun 13 17:40:47 IST 2026
[2026-06-13 17:40:47,419.419 INFO    ] ================================================
[2026-06-13 17:40:47,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:47
[2026-06-13 17:40:48,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:48,252.252 INFO    ] Initializing speech engine...
[2026-06-13 17:40:48,255.255 INFO    ] 2026-06-13 17:40:48
[2026-06-13 17:40:48,483.483 INFO    ] 2026-06-13 17:40:48
[2026-06-13 17:40:48,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:48,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:48,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:48,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:48,918.918 INFO    ] time= 13/06/2026 17:40:48
[2026-06-13 17:40:48,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:48,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:49,041.041 INFO    ] No existing commands found in stream
[2026-06-13 17:40:54,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:40:54,053.053 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 17:40:55,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:40:55,715.715 INFO    ] Checking for system updates...
[2026-06-13 17:40:55,753.753 INFO    ] 200
[2026-06-13 17:40:55,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:55,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:40:55,807.807 INFO    ] No update needed
[2026-06-13 17:40:55,809.809 INFO    ] Checking for camera pi updates...
[2026-06-13 17:40:55,829.829 INFO    ] 200
[2026-06-13 17:40:55,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:40:55,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:40:55,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:40:55,899.899 INFO    ] No camera update needed
[2026-06-13 17:40:55,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:40:55,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:40:55,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:40:55,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:40:57,948.948 INFO    ] ================================================
[2026-06-13 17:40:57,964.964 INFO    ] Launching Daemon at Sat Jun 13 17:40:57 IST 2026
[2026-06-13 17:40:57,975.975 INFO    ] ================================================
[2026-06-13 17:40:58,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:40:58
[2026-06-13 17:40:58,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:40:58,783.783 INFO    ] Initializing speech engine...
[2026-06-13 17:40:58,787.787 INFO    ] 2026-06-13 17:40:58
[2026-06-13 17:40:58,998.998 INFO    ] 2026-06-13 17:40:58
[2026-06-13 17:40:59,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:40:59,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:40:59,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:40:59,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:40:59,268.268 INFO    ] time= 13/06/2026 17:40:59
[2026-06-13 17:40:59,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:40:59,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:40:59,382.382 INFO    ] No existing commands found in stream
[2026-06-13 17:41:04,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:41:04,414.414 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 17:41:05,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:41:05,823.823 INFO    ] Checking for system updates...
[2026-06-13 17:41:05,844.844 INFO    ] 200
[2026-06-13 17:41:05,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:05,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:05,877.877 INFO    ] No update needed
[2026-06-13 17:41:05,878.878 INFO    ] Checking for camera pi updates...
[2026-06-13 17:41:05,902.902 INFO    ] 200
[2026-06-13 17:41:05,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:05,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:41:05,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:05,966.966 INFO    ] No camera update needed
[2026-06-13 17:41:05,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:41:05,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:41:05,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:41:05,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:41:08,014.014 INFO    ] ================================================
[2026-06-13 17:41:08,029.029 INFO    ] Launching Daemon at Sat Jun 13 17:41:08 IST 2026
[2026-06-13 17:41:08,041.041 INFO    ] ================================================
[2026-06-13 17:41:08,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:41:08
[2026-06-13 17:41:08,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:41:08,830.830 INFO    ] Initializing speech engine...
[2026-06-13 17:41:08,835.835 INFO    ] 2026-06-13 17:41:08
[2026-06-13 17:41:09,048.048 INFO    ] 2026-06-13 17:41:09
[2026-06-13 17:41:09,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:41:09,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:41:09,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:41:09,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:41:09,488.488 INFO    ] time= 13/06/2026 17:41:09
[2026-06-13 17:41:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:41:09,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:41:09,597.597 INFO    ] No existing commands found in stream
[2026-06-13 17:41:14,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:41:14,611.611 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 17:41:18,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:41:18,345.345 INFO    ] Checking for system updates...
[2026-06-13 17:41:18,366.366 INFO    ] 200
[2026-06-13 17:41:18,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:18,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:18,401.401 INFO    ] No update needed
[2026-06-13 17:41:18,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 17:41:18,422.422 INFO    ] 200
[2026-06-13 17:41:18,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:18,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:41:18,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:18,488.488 INFO    ] No camera update needed
[2026-06-13 17:41:18,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:41:18,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:41:18,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:41:18,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:41:20,535.535 INFO    ] ================================================
[2026-06-13 17:41:20,551.551 INFO    ] Launching Daemon at Sat Jun 13 17:41:20 IST 2026
[2026-06-13 17:41:20,562.562 INFO    ] ================================================
[2026-06-13 17:41:20,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:41:20
[2026-06-13 17:41:21,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:41:21,356.356 INFO    ] Initializing speech engine...
[2026-06-13 17:41:21,362.362 INFO    ] 2026-06-13 17:41:21
[2026-06-13 17:41:21,564.564 INFO    ] 2026-06-13 17:41:21
[2026-06-13 17:41:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:41:21,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:41:21,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:41:21,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:41:21,980.980 INFO    ] time= 13/06/2026 17:41:21
[2026-06-13 17:41:22,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:41:22,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:41:22,077.077 INFO    ] No existing commands found in stream
[2026-06-13 17:41:27,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:41:27,089.089 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 17:41:30,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:41:30,372.372 INFO    ] Checking for system updates...
[2026-06-13 17:41:30,393.393 INFO    ] 200
[2026-06-13 17:41:30,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:30,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:30,426.426 INFO    ] No update needed
[2026-06-13 17:41:30,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 17:41:30,447.447 INFO    ] 200
[2026-06-13 17:41:30,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:30,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:41:30,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:30,535.535 INFO    ] No camera update needed
[2026-06-13 17:41:30,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:41:30,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:41:30,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:41:30,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:41:32,592.592 INFO    ] ================================================
[2026-06-13 17:41:32,609.609 INFO    ] Launching Daemon at Sat Jun 13 17:41:32 IST 2026
[2026-06-13 17:41:32,620.620 INFO    ] ================================================
[2026-06-13 17:41:33,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:41:33
[2026-06-13 17:41:33,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:41:33,829.829 INFO    ] Initializing speech engine...
[2026-06-13 17:41:33,833.833 INFO    ] 2026-06-13 17:41:33
[2026-06-13 17:41:34,059.059 INFO    ] 2026-06-13 17:41:34
[2026-06-13 17:41:34,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:41:34,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:41:34,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:41:34,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:41:34,507.507 INFO    ] time= 13/06/2026 17:41:34
[2026-06-13 17:41:34,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:41:34,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:41:34,608.608 INFO    ] No existing commands found in stream
[2026-06-13 17:41:39,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:41:39,622.622 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 17:41:40,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:41:40,632.632 INFO    ] Checking for system updates...
[2026-06-13 17:41:40,654.654 INFO    ] 200
[2026-06-13 17:41:40,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:40,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:40,687.687 INFO    ] No update needed
[2026-06-13 17:41:40,689.689 INFO    ] Checking for camera pi updates...
[2026-06-13 17:41:40,709.709 INFO    ] 200
[2026-06-13 17:41:40,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:40,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:41:40,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:40,779.779 INFO    ] No camera update needed
[2026-06-13 17:41:40,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:41:40,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:41:40,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:41:40,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:41:42,830.830 INFO    ] ================================================
[2026-06-13 17:41:42,845.845 INFO    ] Launching Daemon at Sat Jun 13 17:41:42 IST 2026
[2026-06-13 17:41:42,857.857 INFO    ] ================================================
[2026-06-13 17:41:43,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:41:43
[2026-06-13 17:41:43,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:41:43,641.641 INFO    ] Initializing speech engine...
[2026-06-13 17:41:43,654.654 INFO    ] 2026-06-13 17:41:43
[2026-06-13 17:41:43,861.861 INFO    ] 2026-06-13 17:41:43
[2026-06-13 17:41:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:41:44,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:41:44,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:41:44,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:41:44,258.258 INFO    ] time= 13/06/2026 17:41:44
[2026-06-13 17:41:44,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:41:44,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:41:44,379.379 INFO    ] No existing commands found in stream
[2026-06-13 17:41:49,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:41:49,396.396 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 17:41:52,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:41:52,148.148 INFO    ] Checking for system updates...
[2026-06-13 17:41:52,170.170 INFO    ] 200
[2026-06-13 17:41:52,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:52,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:52,204.204 INFO    ] No update needed
[2026-06-13 17:41:52,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 17:41:52,227.227 INFO    ] 200
[2026-06-13 17:41:52,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:41:52,252.252 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:41:52,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:41:52,403.403 INFO    ] No camera update needed
[2026-06-13 17:41:52,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:41:52,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:41:52,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:41:52,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:41:54,453.453 INFO    ] ================================================
[2026-06-13 17:41:54,468.468 INFO    ] Launching Daemon at Sat Jun 13 17:41:54 IST 2026
[2026-06-13 17:41:54,479.479 INFO    ] ================================================
[2026-06-13 17:41:54,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:41:54
[2026-06-13 17:41:55,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:41:55,333.333 INFO    ] Initializing speech engine...
[2026-06-13 17:41:55,338.338 INFO    ] 2026-06-13 17:41:55
[2026-06-13 17:41:55,549.549 INFO    ] 2026-06-13 17:41:55
[2026-06-13 17:41:55,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:41:55,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:41:55,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:41:55,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:41:55,956.956 INFO    ] time= 13/06/2026 17:41:55
[2026-06-13 17:41:56,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:41:56,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:41:56,075.075 INFO    ] No existing commands found in stream
[2026-06-13 17:42:01,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:01,097.097 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 17:42:01,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:42:01,921.921 INFO    ] Checking for system updates...
[2026-06-13 17:42:01,946.946 INFO    ] 200
[2026-06-13 17:42:01,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:01,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:01,987.987 INFO    ] No update needed
[2026-06-13 17:42:01,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:02,016.016 INFO    ] 200
[2026-06-13 17:42:02,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:02,055.055 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:02,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:02,081.081 INFO    ] No camera update needed
[2026-06-13 17:42:02,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:02,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:02,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:02,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:42:04,130.130 INFO    ] ================================================
[2026-06-13 17:42:04,146.146 INFO    ] Launching Daemon at Sat Jun 13 17:42:04 IST 2026
[2026-06-13 17:42:04,157.157 INFO    ] ================================================
[2026-06-13 17:42:04,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:42:04
[2026-06-13 17:42:04,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:42:04,997.997 INFO    ] Initializing speech engine...
[2026-06-13 17:42:05,002.002 INFO    ] 2026-06-13 17:42:04
[2026-06-13 17:42:05,206.206 INFO    ] 2026-06-13 17:42:05
[2026-06-13 17:42:05,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:42:05,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:42:05,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:42:05,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:42:05,625.625 INFO    ] time= 13/06/2026 17:42:05
[2026-06-13 17:42:05,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:42:05,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:42:05,725.725 INFO    ] No existing commands found in stream
[2026-06-13 17:42:10,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:10,737.737 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 17:42:13,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:42:13,816.816 INFO    ] Checking for system updates...
[2026-06-13 17:42:13,836.836 INFO    ] 200
[2026-06-13 17:42:13,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:13,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:13,871.871 INFO    ] No update needed
[2026-06-13 17:42:13,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:13,892.892 INFO    ] 200
[2026-06-13 17:42:13,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:13,917.917 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:13,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:13,953.953 INFO    ] No camera update needed
[2026-06-13 17:42:13,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:13,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:13,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:13,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:42:16,001.001 INFO    ] ================================================
[2026-06-13 17:42:16,017.017 INFO    ] Launching Daemon at Sat Jun 13 17:42:16 IST 2026
[2026-06-13 17:42:16,027.027 INFO    ] ================================================
[2026-06-13 17:42:16,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:42:16
[2026-06-13 17:42:16,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:42:16,854.854 INFO    ] Initializing speech engine...
[2026-06-13 17:42:16,860.860 INFO    ] 2026-06-13 17:42:16
[2026-06-13 17:42:17,064.064 INFO    ] 2026-06-13 17:42:17
[2026-06-13 17:42:17,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:42:17,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:42:17,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:42:17,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:42:17,472.472 INFO    ] time= 13/06/2026 17:42:17
[2026-06-13 17:42:17,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:42:17,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:42:17,577.577 INFO    ] No existing commands found in stream
[2026-06-13 17:42:22,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:22,594.594 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 17:42:25,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:42:25,562.562 INFO    ] Checking for system updates...
[2026-06-13 17:42:25,583.583 INFO    ] 200
[2026-06-13 17:42:25,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:25,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:25,616.616 INFO    ] No update needed
[2026-06-13 17:42:25,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:25,636.636 INFO    ] 200
[2026-06-13 17:42:25,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:25,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:25,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:25,701.701 INFO    ] No camera update needed
[2026-06-13 17:42:25,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:25,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:25,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:25,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:42:27,750.750 INFO    ] ================================================
[2026-06-13 17:42:27,766.766 INFO    ] Launching Daemon at Sat Jun 13 17:42:27 IST 2026
[2026-06-13 17:42:27,776.776 INFO    ] ================================================
[2026-06-13 17:42:28,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:42:28
[2026-06-13 17:42:28,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:42:28,596.596 INFO    ] Initializing speech engine...
[2026-06-13 17:42:28,600.600 INFO    ] 2026-06-13 17:42:28
[2026-06-13 17:42:28,801.801 INFO    ] 2026-06-13 17:42:28
[2026-06-13 17:42:28,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:42:29,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:42:29,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:42:29,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:42:29,199.199 INFO    ] time= 13/06/2026 17:42:29
[2026-06-13 17:42:29,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:42:29,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:42:29,314.314 INFO    ] No existing commands found in stream
[2026-06-13 17:42:34,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:34,331.331 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 17:42:35,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:42:35,968.968 INFO    ] Checking for system updates...
[2026-06-13 17:42:36,006.006 INFO    ] 200
[2026-06-13 17:42:36,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:36,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:36,070.070 INFO    ] No update needed
[2026-06-13 17:42:36,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:36,092.092 INFO    ] 200
[2026-06-13 17:42:36,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:36,118.118 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:36,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:36,161.161 INFO    ] No camera update needed
[2026-06-13 17:42:36,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:36,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:36,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:36,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:42:38,207.207 INFO    ] ================================================
[2026-06-13 17:42:38,222.222 INFO    ] Launching Daemon at Sat Jun 13 17:42:38 IST 2026
[2026-06-13 17:42:38,233.233 INFO    ] ================================================
[2026-06-13 17:42:38,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:42:38
[2026-06-13 17:42:38,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:42:39,047.047 INFO    ] Initializing speech engine...
[2026-06-13 17:42:39,060.060 INFO    ] 2026-06-13 17:42:39
[2026-06-13 17:42:39,279.279 INFO    ] 2026-06-13 17:42:39
[2026-06-13 17:42:39,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:42:39,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:42:39,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:42:39,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:42:39,710.710 INFO    ] time= 13/06/2026 17:42:39
[2026-06-13 17:42:39,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:42:39,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:42:39,829.829 INFO    ] No existing commands found in stream
[2026-06-13 17:42:44,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:44,843.843 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 17:42:45,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:42:45,958.958 INFO    ] Checking for system updates...
[2026-06-13 17:42:45,979.979 INFO    ] 200
[2026-06-13 17:42:45,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:46,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:46,015.015 INFO    ] No update needed
[2026-06-13 17:42:46,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:46,035.035 INFO    ] 200
[2026-06-13 17:42:46,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:46,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:46,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:46,108.108 INFO    ] No camera update needed
[2026-06-13 17:42:46,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:46,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:46,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:46,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:42:48,156.156 INFO    ] ================================================
[2026-06-13 17:42:48,171.171 INFO    ] Launching Daemon at Sat Jun 13 17:42:48 IST 2026
[2026-06-13 17:42:48,182.182 INFO    ] ================================================
[2026-06-13 17:42:48,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:42:48
[2026-06-13 17:42:48,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:42:48,975.975 INFO    ] Initializing speech engine...
[2026-06-13 17:42:48,988.988 INFO    ] 2026-06-13 17:42:48
[2026-06-13 17:42:49,282.282 INFO    ] 2026-06-13 17:42:49
[2026-06-13 17:42:49,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:42:49,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:42:49,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:42:49,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:42:49,647.647 INFO    ] time= 13/06/2026 17:42:49
[2026-06-13 17:42:49,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:42:49,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:42:49,729.729 INFO    ] No existing commands found in stream
[2026-06-13 17:42:54,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:42:54,744.744 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 17:42:58,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:42:58,692.692 INFO    ] Checking for system updates...
[2026-06-13 17:42:58,713.713 INFO    ] 200
[2026-06-13 17:42:58,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:58,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:42:58,745.745 INFO    ] No update needed
[2026-06-13 17:42:58,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 17:42:58,766.766 INFO    ] 200
[2026-06-13 17:42:58,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:42:58,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:42:58,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:42:58,836.836 INFO    ] No camera update needed
[2026-06-13 17:42:58,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:42:58,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:42:58,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:42:58,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:00,883.883 INFO    ] ================================================
[2026-06-13 17:43:00,898.898 INFO    ] Launching Daemon at Sat Jun 13 17:43:00 IST 2026
[2026-06-13 17:43:00,908.908 INFO    ] ================================================
[2026-06-13 17:43:01,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:01
[2026-06-13 17:43:01,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:01,700.700 INFO    ] Initializing speech engine...
[2026-06-13 17:43:01,710.710 INFO    ] 2026-06-13 17:43:01
[2026-06-13 17:43:01,907.907 INFO    ] 2026-06-13 17:43:01
[2026-06-13 17:43:01,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:02,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:02,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:02,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:02,191.191 INFO    ] time= 13/06/2026 17:43:02
[2026-06-13 17:43:02,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:02,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:02,250.250 INFO    ] No existing commands found in stream
[2026-06-13 17:43:07,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:43:07,262.262 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 17:43:11,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:43:11,393.393 INFO    ] Checking for system updates...
[2026-06-13 17:43:11,415.415 INFO    ] 200
[2026-06-13 17:43:11,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:11,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:11,451.451 INFO    ] No update needed
[2026-06-13 17:43:11,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 17:43:11,472.472 INFO    ] 200
[2026-06-13 17:43:11,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:11,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:43:11,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:11,533.533 INFO    ] No camera update needed
[2026-06-13 17:43:11,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:43:11,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:43:11,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:43:11,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:13,580.580 INFO    ] ================================================
[2026-06-13 17:43:13,596.596 INFO    ] Launching Daemon at Sat Jun 13 17:43:13 IST 2026
[2026-06-13 17:43:13,607.607 INFO    ] ================================================
[2026-06-13 17:43:13,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:13
[2026-06-13 17:43:14,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:14,378.378 INFO    ] Initializing speech engine...
[2026-06-13 17:43:14,392.392 INFO    ] 2026-06-13 17:43:14
[2026-06-13 17:43:14,597.597 INFO    ] 2026-06-13 17:43:14
[2026-06-13 17:43:14,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:14,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:14,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:14,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:15,006.006 INFO    ] time= 13/06/2026 17:43:14
[2026-06-13 17:43:15,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:15,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:15,117.117 INFO    ] No existing commands found in stream
[2026-06-13 17:43:20,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:43:20,131.131 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 17:43:20,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:43:20,891.891 INFO    ] Checking for system updates...
[2026-06-13 17:43:20,913.913 INFO    ] 200
[2026-06-13 17:43:20,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:20,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:20,946.946 INFO    ] No update needed
[2026-06-13 17:43:20,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 17:43:20,968.968 INFO    ] 200
[2026-06-13 17:43:20,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:20,994.994 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:43:21,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:21,035.035 INFO    ] No camera update needed
[2026-06-13 17:43:21,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:43:21,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:43:21,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:43:21,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:23,083.083 INFO    ] ================================================
[2026-06-13 17:43:23,098.098 INFO    ] Launching Daemon at Sat Jun 13 17:43:23 IST 2026
[2026-06-13 17:43:23,109.109 INFO    ] ================================================
[2026-06-13 17:43:23,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:23
[2026-06-13 17:43:23,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:23,907.907 INFO    ] Initializing speech engine...
[2026-06-13 17:43:23,912.912 INFO    ] 2026-06-13 17:43:23
[2026-06-13 17:43:24,119.119 INFO    ] 2026-06-13 17:43:24
[2026-06-13 17:43:24,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:24,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:24,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:24,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:24,575.575 INFO    ] time= 13/06/2026 17:43:24
[2026-06-13 17:43:24,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:24,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:24,695.695 INFO    ] No existing commands found in stream
[2026-06-13 17:43:29,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:43:29,709.709 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 17:43:33,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:43:33,899.899 INFO    ] Checking for system updates...
[2026-06-13 17:43:33,920.920 INFO    ] 200
[2026-06-13 17:43:33,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:33,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:43:33,954.954 INFO    ] No update needed
[2026-06-13 17:43:33,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 17:43:33,975.975 INFO    ] 200
[2026-06-13 17:43:33,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:34,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:43:34,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:43:34,040.040 INFO    ] No camera update needed
[2026-06-13 17:43:34,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:43:34,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:43:34,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:43:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:36,087.087 INFO    ] ================================================
[2026-06-13 17:43:36,103.103 INFO    ] Launching Daemon at Sat Jun 13 17:43:36 IST 2026
[2026-06-13 17:43:36,113.113 INFO    ] ================================================
[2026-06-13 17:43:36,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:36
[2026-06-13 17:43:36,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:36,980.980 INFO    ] Initializing speech engine...
[2026-06-13 17:43:36,985.985 INFO    ] 2026-06-13 17:43:36
[2026-06-13 17:43:37,194.194 INFO    ] 2026-06-13 17:43:37
[2026-06-13 17:43:37,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:37,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:37,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:37,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:37,613.613 INFO    ] time= 13/06/2026 17:43:37
[2026-06-13 17:43:37,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:37,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:37,712.712 INFO    ] No existing commands found in stream
[2026-06-13 17:43:42,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:43:42,740.740 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 17:43:44,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:43:44,667.667 INFO    ] Checking for system updates...
[2026-06-13 17:43:44,689.689 INFO    ] 200
[2026-06-13 17:43:44,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:44,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:43:44,725.725 INFO    ] No update needed
[2026-06-13 17:43:44,726.726 INFO    ] Checking for camera pi updates...
[2026-06-13 17:43:44,750.750 INFO    ] 200
[2026-06-13 17:43:44,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:44,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:43:44,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:43:44,815.815 INFO    ] No camera update needed
[2026-06-13 17:43:44,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:43:44,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:43:44,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:43:44,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:46,863.863 INFO    ] ================================================
[2026-06-13 17:43:46,878.878 INFO    ] Launching Daemon at Sat Jun 13 17:43:46 IST 2026
[2026-06-13 17:43:46,888.888 INFO    ] ================================================
[2026-06-13 17:43:47,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:47
[2026-06-13 17:43:47,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:47,684.684 INFO    ] Initializing speech engine...
[2026-06-13 17:43:47,689.689 INFO    ] 2026-06-13 17:43:47
[2026-06-13 17:43:47,897.897 INFO    ] 2026-06-13 17:43:47
[2026-06-13 17:43:47,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:48,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:48,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:48,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:48,265.265 INFO    ] time= 13/06/2026 17:43:48
[2026-06-13 17:43:48,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:48,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:48,422.422 INFO    ] No existing commands found in stream
[2026-06-13 17:43:53,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:43:53,436.436 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 17:43:55,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:43:55,584.584 INFO    ] Checking for system updates...
[2026-06-13 17:43:55,605.605 INFO    ] 200
[2026-06-13 17:43:55,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:55,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:55,640.640 INFO    ] No update needed
[2026-06-13 17:43:55,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 17:43:55,664.664 INFO    ] 200
[2026-06-13 17:43:55,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:43:55,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:43:55,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:43:55,831.831 INFO    ] No camera update needed
[2026-06-13 17:43:55,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:43:55,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:43:55,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:43:55,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:43:57,878.878 INFO    ] ================================================
[2026-06-13 17:43:57,894.894 INFO    ] Launching Daemon at Sat Jun 13 17:43:57 IST 2026
[2026-06-13 17:43:57,906.906 INFO    ] ================================================
[2026-06-13 17:43:58,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:43:58
[2026-06-13 17:43:58,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:43:58,744.744 INFO    ] Initializing speech engine...
[2026-06-13 17:43:58,751.751 INFO    ] 2026-06-13 17:43:58
[2026-06-13 17:43:58,958.958 INFO    ] 2026-06-13 17:43:58
[2026-06-13 17:43:58,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:43:59,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:43:59,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:43:59,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:43:59,375.375 INFO    ] time= 13/06/2026 17:43:59
[2026-06-13 17:43:59,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:43:59,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:43:59,535.535 INFO    ] No existing commands found in stream
[2026-06-13 17:44:04,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:44:04,548.548 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 17:44:07,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:44:07,358.358 INFO    ] Checking for system updates...
[2026-06-13 17:44:07,382.382 INFO    ] 200
[2026-06-13 17:44:07,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:07,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:07,415.415 INFO    ] No update needed
[2026-06-13 17:44:07,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 17:44:07,437.437 INFO    ] 200
[2026-06-13 17:44:07,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:07,464.464 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:44:07,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:07,517.517 INFO    ] No camera update needed
[2026-06-13 17:44:07,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:44:07,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:44:07,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:44:07,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:44:09,577.577 INFO    ] ================================================
[2026-06-13 17:44:09,592.592 INFO    ] Launching Daemon at Sat Jun 13 17:44:09 IST 2026
[2026-06-13 17:44:09,603.603 INFO    ] ================================================
[2026-06-13 17:44:10,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:44:10
[2026-06-13 17:44:10,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:44:10,931.931 INFO    ] Initializing speech engine...
[2026-06-13 17:44:10,934.934 INFO    ] 2026-06-13 17:44:10
[2026-06-13 17:44:11,142.142 INFO    ] 2026-06-13 17:44:11
[2026-06-13 17:44:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:44:11,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:44:11,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:44:11,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:44:11,560.560 INFO    ] time= 13/06/2026 17:44:11
[2026-06-13 17:44:11,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:44:11,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:44:11,657.657 INFO    ] No existing commands found in stream
[2026-06-13 17:44:16,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:44:16,681.681 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 17:44:19,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:44:19,179.179 INFO    ] Checking for system updates...
[2026-06-13 17:44:19,202.202 INFO    ] 200
[2026-06-13 17:44:19,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:19,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:19,239.239 INFO    ] No update needed
[2026-06-13 17:44:19,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 17:44:19,265.265 INFO    ] 200
[2026-06-13 17:44:19,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:19,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:44:19,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:19,330.330 INFO    ] No camera update needed
[2026-06-13 17:44:19,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:44:19,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:44:19,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:44:19,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:44:21,383.383 INFO    ] ================================================
[2026-06-13 17:44:21,399.399 INFO    ] Launching Daemon at Sat Jun 13 17:44:21 IST 2026
[2026-06-13 17:44:21,409.409 INFO    ] ================================================
[2026-06-13 17:44:21,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:44:21
[2026-06-13 17:44:22,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:44:22,270.270 INFO    ] Initializing speech engine...
[2026-06-13 17:44:22,276.276 INFO    ] 2026-06-13 17:44:22
[2026-06-13 17:44:22,481.481 INFO    ] 2026-06-13 17:44:22
[2026-06-13 17:44:22,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:44:22,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:44:22,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:44:22,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:44:22,903.903 INFO    ] time= 13/06/2026 17:44:22
[2026-06-13 17:44:22,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:44:22,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:44:23,025.025 INFO    ] No existing commands found in stream
[2026-06-13 17:44:28,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:44:28,037.037 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 17:44:30,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:44:30,364.364 INFO    ] Checking for system updates...
[2026-06-13 17:44:30,398.398 INFO    ] 200
[2026-06-13 17:44:30,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:30,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:30,460.460 INFO    ] No update needed
[2026-06-13 17:44:30,463.463 INFO    ] Checking for camera pi updates...
[2026-06-13 17:44:30,504.504 INFO    ] 200
[2026-06-13 17:44:30,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:30,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:44:30,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:30,600.600 INFO    ] No camera update needed
[2026-06-13 17:44:30,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:44:30,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:44:30,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:44:30,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:44:32,660.660 INFO    ] ================================================
[2026-06-13 17:44:32,675.675 INFO    ] Launching Daemon at Sat Jun 13 17:44:32 IST 2026
[2026-06-13 17:44:32,686.686 INFO    ] ================================================
[2026-06-13 17:44:33,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:44:33
[2026-06-13 17:44:33,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:44:33,809.809 INFO    ] Initializing speech engine...
[2026-06-13 17:44:33,815.815 INFO    ] 2026-06-13 17:44:33
[2026-06-13 17:44:34,023.023 INFO    ] 2026-06-13 17:44:34
[2026-06-13 17:44:34,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:44:34,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:44:34,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:44:34,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:44:34,430.430 INFO    ] time= 13/06/2026 17:44:34
[2026-06-13 17:44:34,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:44:34,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:44:34,542.542 INFO    ] No existing commands found in stream
[2026-06-13 17:44:39,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:44:39,560.560 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 17:44:43,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:44:43,818.818 INFO    ] Checking for system updates...
[2026-06-13 17:44:43,839.839 INFO    ] 200
[2026-06-13 17:44:43,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:43,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:44:43,872.872 INFO    ] No update needed
[2026-06-13 17:44:43,874.874 INFO    ] Checking for camera pi updates...
[2026-06-13 17:44:43,894.894 INFO    ] 200
[2026-06-13 17:44:43,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:43,919.919 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:44:43,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:44:43,960.960 INFO    ] No camera update needed
[2026-06-13 17:44:43,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:44:43,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:44:43,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:44:43,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:44:46,009.009 INFO    ] ================================================
[2026-06-13 17:44:46,024.024 INFO    ] Launching Daemon at Sat Jun 13 17:44:46 IST 2026
[2026-06-13 17:44:46,035.035 INFO    ] ================================================
[2026-06-13 17:44:46,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:44:46
[2026-06-13 17:44:46,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:44:46,968.968 INFO    ] Initializing speech engine...
[2026-06-13 17:44:46,982.982 INFO    ] 2026-06-13 17:44:46
[2026-06-13 17:44:47,270.270 INFO    ] 2026-06-13 17:44:47
[2026-06-13 17:44:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:44:47,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:44:47,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:44:47,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:44:47,720.720 INFO    ] time= 13/06/2026 17:44:47
[2026-06-13 17:44:47,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:44:47,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:44:47,946.946 INFO    ] No existing commands found in stream
[2026-06-13 17:44:52,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:44:52,980.980 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 17:44:55,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:44:55,943.943 INFO    ] Checking for system updates...
[2026-06-13 17:44:55,964.964 INFO    ] 200
[2026-06-13 17:44:55,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:55,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:55,998.998 INFO    ] No update needed
[2026-06-13 17:44:56,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 17:44:56,021.021 INFO    ] 200
[2026-06-13 17:44:56,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:44:56,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:44:56,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:44:56,090.090 INFO    ] No camera update needed
[2026-06-13 17:44:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:44:56,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:44:56,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:44:56,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:44:58,137.137 INFO    ] ================================================
[2026-06-13 17:44:58,153.153 INFO    ] Launching Daemon at Sat Jun 13 17:44:58 IST 2026
[2026-06-13 17:44:58,164.164 INFO    ] ================================================
[2026-06-13 17:44:58,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:44:58
[2026-06-13 17:44:58,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:44:58,971.971 INFO    ] Initializing speech engine...
[2026-06-13 17:44:58,976.976 INFO    ] 2026-06-13 17:44:58
[2026-06-13 17:44:59,177.177 INFO    ] 2026-06-13 17:44:59
[2026-06-13 17:44:59,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:44:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:44:59,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:44:59,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:44:59,579.579 INFO    ] time= 13/06/2026 17:44:59
[2026-06-13 17:44:59,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:44:59,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:44:59,689.689 INFO    ] No existing commands found in stream
[2026-06-13 17:45:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:45:04,699.699 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 17:45:07,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:45:07,417.417 INFO    ] Checking for system updates...
[2026-06-13 17:45:07,438.438 INFO    ] 200
[2026-06-13 17:45:07,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:07,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:45:07,471.471 INFO    ] No update needed
[2026-06-13 17:45:07,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 17:45:07,491.491 INFO    ] 200
[2026-06-13 17:45:07,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:07,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:45:07,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:45:07,556.556 INFO    ] No camera update needed
[2026-06-13 17:45:07,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:45:07,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:45:07,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:45:07,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:45:09,604.604 INFO    ] ================================================
[2026-06-13 17:45:09,619.619 INFO    ] Launching Daemon at Sat Jun 13 17:45:09 IST 2026
[2026-06-13 17:45:09,629.629 INFO    ] ================================================
[2026-06-13 17:45:09,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:45:09
[2026-06-13 17:45:10,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:45:10,441.441 INFO    ] Initializing speech engine...
[2026-06-13 17:45:10,446.446 INFO    ] 2026-06-13 17:45:10
[2026-06-13 17:45:10,651.651 INFO    ] 2026-06-13 17:45:10
[2026-06-13 17:45:10,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:45:10,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:45:10,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:45:11,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:45:11,070.070 INFO    ] time= 13/06/2026 17:45:11
[2026-06-13 17:45:11,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:45:11,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:45:11,167.167 INFO    ] No existing commands found in stream
[2026-06-13 17:45:16,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:45:16,202.202 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 17:45:18,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:45:18,405.405 INFO    ] Checking for system updates...
[2026-06-13 17:45:18,426.426 INFO    ] 200
[2026-06-13 17:45:18,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:18,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:45:18,460.460 INFO    ] No update needed
[2026-06-13 17:45:18,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 17:45:18,483.483 INFO    ] 200
[2026-06-13 17:45:18,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:18,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:45:18,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:45:18,550.550 INFO    ] No camera update needed
[2026-06-13 17:45:18,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:45:18,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:45:18,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:45:18,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:45:20,599.599 INFO    ] ================================================
[2026-06-13 17:45:20,615.615 INFO    ] Launching Daemon at Sat Jun 13 17:45:20 IST 2026
[2026-06-13 17:45:20,627.627 INFO    ] ================================================
[2026-06-13 17:45:20,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:45:20
[2026-06-13 17:45:21,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:45:21,486.486 INFO    ] Initializing speech engine...
[2026-06-13 17:45:21,493.493 INFO    ] 2026-06-13 17:45:21
[2026-06-13 17:45:21,696.696 INFO    ] 2026-06-13 17:45:21
[2026-06-13 17:45:21,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:45:21,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:45:21,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:45:22,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:45:22,118.118 INFO    ] time= 13/06/2026 17:45:22
[2026-06-13 17:45:22,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:45:22,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:45:22,216.216 INFO    ] No existing commands found in stream
[2026-06-13 17:45:27,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:45:27,228.228 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 17:45:29,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:45:29,583.583 INFO    ] Checking for system updates...
[2026-06-13 17:45:29,604.604 INFO    ] 200
[2026-06-13 17:45:29,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:29,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:45:29,638.638 INFO    ] No update needed
[2026-06-13 17:45:29,640.640 INFO    ] Checking for camera pi updates...
[2026-06-13 17:45:29,660.660 INFO    ] 200
[2026-06-13 17:45:29,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:29,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:45:29,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:45:29,733.733 INFO    ] No camera update needed
[2026-06-13 17:45:29,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:45:29,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:45:29,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:45:29,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:45:31,776.776 INFO    ] ================================================
[2026-06-13 17:45:31,786.786 INFO    ] Launching Daemon at Sat Jun 13 17:45:31 IST 2026
[2026-06-13 17:45:31,792.792 INFO    ] ================================================
[2026-06-13 17:45:32,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:45:32
[2026-06-13 17:45:33,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:45:33,333.333 INFO    ] Initializing speech engine...
[2026-06-13 17:45:33,346.346 INFO    ] 2026-06-13 17:45:33
[2026-06-13 17:45:33,597.597 INFO    ] 2026-06-13 17:45:33
[2026-06-13 17:45:33,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:45:33,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:45:33,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:45:33,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:45:33,973.973 INFO    ] time= 13/06/2026 17:45:33
[2026-06-13 17:45:33,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:45:33,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:45:34,053.053 INFO    ] No existing commands found in stream
[2026-06-13 17:45:39,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:45:39,069.069 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 17:45:43,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:45:43,172.172 INFO    ] Checking for system updates...
[2026-06-13 17:45:43,193.193 INFO    ] 200
[2026-06-13 17:45:43,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:43,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:45:43,226.226 INFO    ] No update needed
[2026-06-13 17:45:43,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 17:45:43,248.248 INFO    ] 200
[2026-06-13 17:45:43,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:43,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:45:43,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:45:43,296.296 INFO    ] No camera update needed
[2026-06-13 17:45:43,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:45:43,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:45:43,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:45:43,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:45:45,344.344 INFO    ] ================================================
[2026-06-13 17:45:45,359.359 INFO    ] Launching Daemon at Sat Jun 13 17:45:45 IST 2026
[2026-06-13 17:45:45,370.370 INFO    ] ================================================
[2026-06-13 17:45:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:45:45
[2026-06-13 17:45:46,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:45:46,156.156 INFO    ] Initializing speech engine...
[2026-06-13 17:45:46,161.161 INFO    ] 2026-06-13 17:45:46
[2026-06-13 17:45:46,364.364 INFO    ] 2026-06-13 17:45:46
[2026-06-13 17:45:46,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:45:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:45:46,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:45:46,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:45:46,762.762 INFO    ] time= 13/06/2026 17:45:46
[2026-06-13 17:45:46,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:45:46,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:45:46,876.876 INFO    ] No existing commands found in stream
[2026-06-13 17:45:51,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:45:51,893.893 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 17:45:56,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:45:56,191.191 INFO    ] Checking for system updates...
[2026-06-13 17:45:56,212.212 INFO    ] 200
[2026-06-13 17:45:56,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:56,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:45:56,245.245 INFO    ] No update needed
[2026-06-13 17:45:56,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 17:45:56,268.268 INFO    ] 200
[2026-06-13 17:45:56,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:45:56,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:45:56,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:45:56,331.331 INFO    ] No camera update needed
[2026-06-13 17:45:56,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:45:56,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:45:56,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:45:56,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:45:58,380.380 INFO    ] ================================================
[2026-06-13 17:45:58,395.395 INFO    ] Launching Daemon at Sat Jun 13 17:45:58 IST 2026
[2026-06-13 17:45:58,405.405 INFO    ] ================================================
[2026-06-13 17:45:58,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:45:58
[2026-06-13 17:45:59,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:45:59,216.216 INFO    ] Initializing speech engine...
[2026-06-13 17:45:59,224.224 INFO    ] 2026-06-13 17:45:59
[2026-06-13 17:45:59,445.445 INFO    ] 2026-06-13 17:45:59
[2026-06-13 17:45:59,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:45:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:45:59,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:45:59,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:45:59,883.883 INFO    ] time= 13/06/2026 17:45:59
[2026-06-13 17:45:59,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:45:59,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:00,080.080 INFO    ] No existing commands found in stream
[2026-06-13 17:46:05,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:46:05,114.114 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 17:46:07,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:46:07,949.949 INFO    ] Checking for system updates...
[2026-06-13 17:46:07,970.970 INFO    ] 200
[2026-06-13 17:46:07,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:08,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:46:08,004.004 INFO    ] No update needed
[2026-06-13 17:46:08,005.005 INFO    ] Checking for camera pi updates...
[2026-06-13 17:46:08,025.025 INFO    ] 200
[2026-06-13 17:46:08,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:08,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:46:08,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:46:08,101.101 INFO    ] No camera update needed
[2026-06-13 17:46:08,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:46:08,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:46:08,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:46:08,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:46:10,150.150 INFO    ] ================================================
[2026-06-13 17:46:10,165.165 INFO    ] Launching Daemon at Sat Jun 13 17:46:10 IST 2026
[2026-06-13 17:46:10,176.176 INFO    ] ================================================
[2026-06-13 17:46:10,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:46:10
[2026-06-13 17:46:10,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:46:11,057.057 INFO    ] Initializing speech engine...
[2026-06-13 17:46:11,061.061 INFO    ] 2026-06-13 17:46:11
[2026-06-13 17:46:11,271.271 INFO    ] 2026-06-13 17:46:11
[2026-06-13 17:46:11,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:46:11,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:46:11,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:46:11,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:46:11,649.649 INFO    ] time= 13/06/2026 17:46:11
[2026-06-13 17:46:11,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:46:11,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:11,800.800 INFO    ] No existing commands found in stream
[2026-06-13 17:46:16,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:46:16,834.834 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 17:46:21,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:46:21,022.022 INFO    ] Checking for system updates...
[2026-06-13 17:46:21,043.043 INFO    ] 200
[2026-06-13 17:46:21,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:21,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:21,077.077 INFO    ] No update needed
[2026-06-13 17:46:21,078.078 INFO    ] Checking for camera pi updates...
[2026-06-13 17:46:21,098.098 INFO    ] 200
[2026-06-13 17:46:21,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:21,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:46:21,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:21,164.164 INFO    ] No camera update needed
[2026-06-13 17:46:21,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:46:21,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:46:21,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:46:21,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:46:23,213.213 INFO    ] ================================================
[2026-06-13 17:46:23,228.228 INFO    ] Launching Daemon at Sat Jun 13 17:46:23 IST 2026
[2026-06-13 17:46:23,238.238 INFO    ] ================================================
[2026-06-13 17:46:23,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:46:23
[2026-06-13 17:46:23,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:46:24,019.019 INFO    ] Initializing speech engine...
[2026-06-13 17:46:24,023.023 INFO    ] 2026-06-13 17:46:24
[2026-06-13 17:46:24,232.232 INFO    ] 2026-06-13 17:46:24
[2026-06-13 17:46:24,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:46:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:46:24,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:46:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:46:24,690.690 INFO    ] time= 13/06/2026 17:46:24
[2026-06-13 17:46:24,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:46:24,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:24,806.806 INFO    ] No existing commands found in stream
[2026-06-13 17:46:29,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:46:29,818.818 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 17:46:30,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:46:30,829.829 INFO    ] Checking for system updates...
[2026-06-13 17:46:30,851.851 INFO    ] 200
[2026-06-13 17:46:30,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:30,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:30,884.884 INFO    ] No update needed
[2026-06-13 17:46:30,885.885 INFO    ] Checking for camera pi updates...
[2026-06-13 17:46:30,905.905 INFO    ] 200
[2026-06-13 17:46:30,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:30,930.930 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:46:30,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:30,972.972 INFO    ] No camera update needed
[2026-06-13 17:46:30,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:46:30,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:46:30,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:46:30,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:46:33,020.020 INFO    ] ================================================
[2026-06-13 17:46:33,036.036 INFO    ] Launching Daemon at Sat Jun 13 17:46:33 IST 2026
[2026-06-13 17:46:33,046.046 INFO    ] ================================================
[2026-06-13 17:46:33,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:46:33
[2026-06-13 17:46:33,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:46:33,865.865 INFO    ] Initializing speech engine...
[2026-06-13 17:46:33,869.869 INFO    ] 2026-06-13 17:46:33
[2026-06-13 17:46:34,098.098 INFO    ] 2026-06-13 17:46:34
[2026-06-13 17:46:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:46:34,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:46:34,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:46:34,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:46:34,529.529 INFO    ] time= 13/06/2026 17:46:34
[2026-06-13 17:46:34,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:46:34,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:34,628.628 INFO    ] No existing commands found in stream
[2026-06-13 17:46:39,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:46:39,646.646 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 17:46:40,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:46:40,653.653 INFO    ] Checking for system updates...
[2026-06-13 17:46:40,674.674 INFO    ] 200
[2026-06-13 17:46:40,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:40,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:46:40,710.710 INFO    ] No update needed
[2026-06-13 17:46:40,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 17:46:40,734.734 INFO    ] 200
[2026-06-13 17:46:40,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:40,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:46:40,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:46:40,802.802 INFO    ] No camera update needed
[2026-06-13 17:46:40,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:46:40,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:46:40,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:46:40,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:46:42,851.851 INFO    ] ================================================
[2026-06-13 17:46:42,867.867 INFO    ] Launching Daemon at Sat Jun 13 17:46:42 IST 2026
[2026-06-13 17:46:42,877.877 INFO    ] ================================================
[2026-06-13 17:46:43,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:46:43
[2026-06-13 17:46:43,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:46:43,662.662 INFO    ] Initializing speech engine...
[2026-06-13 17:46:43,675.675 INFO    ] 2026-06-13 17:46:43
[2026-06-13 17:46:43,897.897 INFO    ] 2026-06-13 17:46:43
[2026-06-13 17:46:43,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:46:44,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:46:44,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:46:44,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:46:44,331.331 INFO    ] time= 13/06/2026 17:46:44
[2026-06-13 17:46:44,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:46:44,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:44,460.460 INFO    ] No existing commands found in stream
[2026-06-13 17:46:49,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:46:49,473.473 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 17:46:51,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:46:51,934.934 INFO    ] Checking for system updates...
[2026-06-13 17:46:51,954.954 INFO    ] 200
[2026-06-13 17:46:51,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:51,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:51,987.987 INFO    ] No update needed
[2026-06-13 17:46:51,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 17:46:52,008.008 INFO    ] 200
[2026-06-13 17:46:52,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:46:52,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:46:52,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:46:52,080.080 INFO    ] No camera update needed
[2026-06-13 17:46:52,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:46:52,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:46:52,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:46:52,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:46:54,128.128 INFO    ] ================================================
[2026-06-13 17:46:54,143.143 INFO    ] Launching Daemon at Sat Jun 13 17:46:54 IST 2026
[2026-06-13 17:46:54,154.154 INFO    ] ================================================
[2026-06-13 17:46:54,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:46:54
[2026-06-13 17:46:54,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:46:54,979.979 INFO    ] Initializing speech engine...
[2026-06-13 17:46:54,984.984 INFO    ] 2026-06-13 17:46:54
[2026-06-13 17:46:55,186.186 INFO    ] 2026-06-13 17:46:55
[2026-06-13 17:46:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:46:55,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:46:55,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:46:55,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:46:55,598.598 INFO    ] time= 13/06/2026 17:46:55
[2026-06-13 17:46:55,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:46:55,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:46:55,705.705 INFO    ] No existing commands found in stream
[2026-06-13 17:47:00,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:47:00,711.711 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 17:47:04,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:47:04,509.509 INFO    ] Checking for system updates...
[2026-06-13 17:47:04,553.553 INFO    ] 200
[2026-06-13 17:47:04,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:04,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:04,620.620 INFO    ] No update needed
[2026-06-13 17:47:04,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 17:47:04,662.662 INFO    ] 200
[2026-06-13 17:47:04,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:04,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:47:04,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:04,773.773 INFO    ] No camera update needed
[2026-06-13 17:47:04,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:47:04,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:47:04,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:47:04,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:47:06,807.807 INFO    ] ================================================
[2026-06-13 17:47:06,816.816 INFO    ] Launching Daemon at Sat Jun 13 17:47:06 IST 2026
[2026-06-13 17:47:06,822.822 INFO    ] ================================================
[2026-06-13 17:47:07,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:47:07
[2026-06-13 17:47:07,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:47:08,030.030 INFO    ] Initializing speech engine...
[2026-06-13 17:47:08,044.044 INFO    ] 2026-06-13 17:47:08
[2026-06-13 17:47:08,319.319 INFO    ] 2026-06-13 17:47:08
[2026-06-13 17:47:08,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:47:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:47:08,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:47:08,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:47:08,699.699 INFO    ] time= 13/06/2026 17:47:08
[2026-06-13 17:47:08,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:47:08,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:47:08,778.778 INFO    ] No existing commands found in stream
[2026-06-13 17:47:13,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:47:13,811.811 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 17:47:15,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:47:15,505.505 INFO    ] Checking for system updates...
[2026-06-13 17:47:15,526.526 INFO    ] 200
[2026-06-13 17:47:15,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:15,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:47:15,560.560 INFO    ] No update needed
[2026-06-13 17:47:15,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 17:47:15,581.581 INFO    ] 200
[2026-06-13 17:47:15,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:15,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:47:15,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:47:15,653.653 INFO    ] No camera update needed
[2026-06-13 17:47:15,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:47:15,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:47:15,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:47:15,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:47:17,700.700 INFO    ] ================================================
[2026-06-13 17:47:17,716.716 INFO    ] Launching Daemon at Sat Jun 13 17:47:17 IST 2026
[2026-06-13 17:47:17,726.726 INFO    ] ================================================
[2026-06-13 17:47:18,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:47:18
[2026-06-13 17:47:18,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:47:18,858.858 INFO    ] Initializing speech engine...
[2026-06-13 17:47:18,869.869 INFO    ] 2026-06-13 17:47:18
[2026-06-13 17:47:19,184.184 INFO    ] 2026-06-13 17:47:19
[2026-06-13 17:47:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:47:19,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:47:19,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:47:19,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:47:19,639.639 INFO    ] time= 13/06/2026 17:47:19
[2026-06-13 17:47:19,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:47:19,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:47:19,852.852 INFO    ] No existing commands found in stream
[2026-06-13 17:47:24,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:47:24,882.882 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 17:47:29,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:47:29,110.110 INFO    ] Checking for system updates...
[2026-06-13 17:47:29,132.132 INFO    ] 200
[2026-06-13 17:47:29,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:29,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:29,165.165 INFO    ] No update needed
[2026-06-13 17:47:29,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 17:47:29,186.186 INFO    ] 200
[2026-06-13 17:47:29,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:29,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:47:29,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:29,255.255 INFO    ] No camera update needed
[2026-06-13 17:47:29,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:47:29,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:47:29,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:47:29,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:47:31,302.302 INFO    ] ================================================
[2026-06-13 17:47:31,317.317 INFO    ] Launching Daemon at Sat Jun 13 17:47:31 IST 2026
[2026-06-13 17:47:31,328.328 INFO    ] ================================================
[2026-06-13 17:47:31,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:47:31
[2026-06-13 17:47:32,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:47:32,804.804 INFO    ] Initializing speech engine...
[2026-06-13 17:47:32,811.811 INFO    ] 2026-06-13 17:47:32
[2026-06-13 17:47:33,030.030 INFO    ] 2026-06-13 17:47:33
[2026-06-13 17:47:33,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:47:33,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:47:33,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:47:33,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:47:33,387.387 INFO    ] time= 13/06/2026 17:47:33
[2026-06-13 17:47:33,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:47:33,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:47:33,573.573 INFO    ] No existing commands found in stream
[2026-06-13 17:47:38,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:47:38,585.585 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 17:47:42,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:47:42,942.942 INFO    ] Checking for system updates...
[2026-06-13 17:47:42,977.977 INFO    ] 200
[2026-06-13 17:47:42,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:43,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:47:43,028.028 INFO    ] No update needed
[2026-06-13 17:47:43,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 17:47:43,051.051 INFO    ] 200
[2026-06-13 17:47:43,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:43,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:47:43,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:47:43,114.114 INFO    ] No camera update needed
[2026-06-13 17:47:43,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:47:43,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:47:43,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:47:43,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:47:45,163.163 INFO    ] ================================================
[2026-06-13 17:47:45,178.178 INFO    ] Launching Daemon at Sat Jun 13 17:47:45 IST 2026
[2026-06-13 17:47:45,189.189 INFO    ] ================================================
[2026-06-13 17:47:45,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:47:45
[2026-06-13 17:47:45,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:47:46,007.007 INFO    ] Initializing speech engine...
[2026-06-13 17:47:46,013.013 INFO    ] 2026-06-13 17:47:46
[2026-06-13 17:47:46,216.216 INFO    ] 2026-06-13 17:47:46
[2026-06-13 17:47:46,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:47:46,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:47:46,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:47:46,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:47:46,637.637 INFO    ] time= 13/06/2026 17:47:46
[2026-06-13 17:47:46,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:47:46,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:47:46,734.734 INFO    ] No existing commands found in stream
[2026-06-13 17:47:51,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:47:51,746.746 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 17:47:52,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:47:52,673.673 INFO    ] Checking for system updates...
[2026-06-13 17:47:52,694.694 INFO    ] 200
[2026-06-13 17:47:52,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:52,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:52,735.735 INFO    ] No update needed
[2026-06-13 17:47:52,736.736 INFO    ] Checking for camera pi updates...
[2026-06-13 17:47:52,758.758 INFO    ] 200
[2026-06-13 17:47:52,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:47:52,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:47:52,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:47:52,825.825 INFO    ] No camera update needed
[2026-06-13 17:47:52,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:47:52,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:47:52,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:47:52,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:47:54,875.875 INFO    ] ================================================
[2026-06-13 17:47:54,890.890 INFO    ] Launching Daemon at Sat Jun 13 17:47:54 IST 2026
[2026-06-13 17:47:54,900.900 INFO    ] ================================================
[2026-06-13 17:47:55,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:47:55
[2026-06-13 17:47:55,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:47:55,702.702 INFO    ] Initializing speech engine...
[2026-06-13 17:47:55,715.715 INFO    ] 2026-06-13 17:47:55
[2026-06-13 17:47:55,934.934 INFO    ] 2026-06-13 17:47:55
[2026-06-13 17:47:55,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:47:56,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:47:56,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:47:56,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:47:56,366.366 INFO    ] time= 13/06/2026 17:47:56
[2026-06-13 17:47:56,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:47:56,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:47:56,494.494 INFO    ] No existing commands found in stream
[2026-06-13 17:48:01,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:01,506.506 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 17:48:03,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:48:03,329.329 INFO    ] Checking for system updates...
[2026-06-13 17:48:03,350.350 INFO    ] 200
[2026-06-13 17:48:03,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:03,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:48:03,384.384 INFO    ] No update needed
[2026-06-13 17:48:03,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 17:48:03,407.407 INFO    ] 200
[2026-06-13 17:48:03,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:03,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:48:03,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:48:03,457.457 INFO    ] No camera update needed
[2026-06-13 17:48:03,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:48:03,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:48:03,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:48:03,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:48:05,505.505 INFO    ] ================================================
[2026-06-13 17:48:05,521.521 INFO    ] Launching Daemon at Sat Jun 13 17:48:05 IST 2026
[2026-06-13 17:48:05,531.531 INFO    ] ================================================
[2026-06-13 17:48:06,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:48:06
[2026-06-13 17:48:06,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:48:06,748.748 INFO    ] Initializing speech engine...
[2026-06-13 17:48:06,752.752 INFO    ] 2026-06-13 17:48:06
[2026-06-13 17:48:06,969.969 INFO    ] 2026-06-13 17:48:06
[2026-06-13 17:48:06,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:48:07,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:48:07,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:48:07,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:48:07,382.382 INFO    ] time= 13/06/2026 17:48:07
[2026-06-13 17:48:07,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:48:07,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:48:07,481.481 INFO    ] No existing commands found in stream
[2026-06-13 17:48:12,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:12,494.494 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 17:48:15,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:48:15,019.019 INFO    ] Checking for system updates...
[2026-06-13 17:48:15,040.040 INFO    ] 200
[2026-06-13 17:48:15,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:15,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:15,077.077 INFO    ] No update needed
[2026-06-13 17:48:15,078.078 INFO    ] Checking for camera pi updates...
[2026-06-13 17:48:15,097.097 INFO    ] 200
[2026-06-13 17:48:15,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:15,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:48:15,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:15,262.262 INFO    ] No camera update needed
[2026-06-13 17:48:15,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:48:15,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:48:15,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:48:15,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:48:17,310.310 INFO    ] ================================================
[2026-06-13 17:48:17,325.325 INFO    ] Launching Daemon at Sat Jun 13 17:48:17 IST 2026
[2026-06-13 17:48:17,336.336 INFO    ] ================================================
[2026-06-13 17:48:17,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:48:17
[2026-06-13 17:48:18,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:48:18,191.191 INFO    ] Initializing speech engine...
[2026-06-13 17:48:18,197.197 INFO    ] 2026-06-13 17:48:18
[2026-06-13 17:48:18,406.406 INFO    ] 2026-06-13 17:48:18
[2026-06-13 17:48:18,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:48:18,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:48:18,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:48:18,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:48:18,826.826 INFO    ] time= 13/06/2026 17:48:18
[2026-06-13 17:48:18,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:48:18,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:48:18,924.924 INFO    ] No existing commands found in stream
[2026-06-13 17:48:23,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:23,942.942 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 17:48:27,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:48:27,146.146 INFO    ] Checking for system updates...
[2026-06-13 17:48:27,167.167 INFO    ] 200
[2026-06-13 17:48:27,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:27,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:27,202.202 INFO    ] No update needed
[2026-06-13 17:48:27,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 17:48:27,224.224 INFO    ] 200
[2026-06-13 17:48:27,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:27,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:48:27,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:27,297.297 INFO    ] No camera update needed
[2026-06-13 17:48:27,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:48:27,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:48:27,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:48:27,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:48:29,346.346 INFO    ] ================================================
[2026-06-13 17:48:29,362.362 INFO    ] Launching Daemon at Sat Jun 13 17:48:29 IST 2026
[2026-06-13 17:48:29,373.373 INFO    ] ================================================
[2026-06-13 17:48:29,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:48:29
[2026-06-13 17:48:30,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:48:30,144.144 INFO    ] Initializing speech engine...
[2026-06-13 17:48:30,159.159 INFO    ] 2026-06-13 17:48:30
[2026-06-13 17:48:30,363.363 INFO    ] 2026-06-13 17:48:30
[2026-06-13 17:48:30,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:48:30,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:48:30,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:48:30,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:48:30,771.771 INFO    ] time= 13/06/2026 17:48:30
[2026-06-13 17:48:30,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:48:30,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:48:30,881.881 INFO    ] No existing commands found in stream
[2026-06-13 17:48:35,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:35,897.897 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 17:48:39,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:48:39,821.821 INFO    ] Checking for system updates...
[2026-06-13 17:48:39,842.842 INFO    ] 200
[2026-06-13 17:48:39,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:39,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:39,876.876 INFO    ] No update needed
[2026-06-13 17:48:39,877.877 INFO    ] Checking for camera pi updates...
[2026-06-13 17:48:39,896.896 INFO    ] 200
[2026-06-13 17:48:39,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:39,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:48:39,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:48:39,960.960 INFO    ] No camera update needed
[2026-06-13 17:48:39,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:48:39,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:48:39,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:48:39,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:48:42,009.009 INFO    ] ================================================
[2026-06-13 17:48:42,024.024 INFO    ] Launching Daemon at Sat Jun 13 17:48:42 IST 2026
[2026-06-13 17:48:42,035.035 INFO    ] ================================================
[2026-06-13 17:48:42,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:48:42
[2026-06-13 17:48:42,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:48:43,142.142 INFO    ] Initializing speech engine...
[2026-06-13 17:48:43,149.149 INFO    ] 2026-06-13 17:48:43
[2026-06-13 17:48:43,403.403 INFO    ] 2026-06-13 17:48:43
[2026-06-13 17:48:43,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:48:43,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:48:43,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:48:43,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:48:43,782.782 INFO    ] time= 13/06/2026 17:48:43
[2026-06-13 17:48:43,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:48:43,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:48:43,857.857 INFO    ] No existing commands found in stream
[2026-06-13 17:48:48,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:48,873.873 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 17:48:50,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:48:50,584.584 INFO    ] Checking for system updates...
[2026-06-13 17:48:50,606.606 INFO    ] 200
[2026-06-13 17:48:50,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:50,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:48:50,640.640 INFO    ] No update needed
[2026-06-13 17:48:50,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 17:48:50,663.663 INFO    ] 200
[2026-06-13 17:48:50,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:48:50,688.688 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:48:50,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:48:50,732.732 INFO    ] No camera update needed
[2026-06-13 17:48:50,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:48:50,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:48:50,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:48:50,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:48:52,779.779 INFO    ] ================================================
[2026-06-13 17:48:52,795.795 INFO    ] Launching Daemon at Sat Jun 13 17:48:52 IST 2026
[2026-06-13 17:48:52,806.806 INFO    ] ================================================
[2026-06-13 17:48:53,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:48:53
[2026-06-13 17:48:53,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:48:53,612.612 INFO    ] Initializing speech engine...
[2026-06-13 17:48:53,625.625 INFO    ] 2026-06-13 17:48:53
[2026-06-13 17:48:53,835.835 INFO    ] 2026-06-13 17:48:53
[2026-06-13 17:48:53,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:48:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:48:54,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:48:54,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:48:54,322.322 INFO    ] time= 13/06/2026 17:48:54
[2026-06-13 17:48:54,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:48:54,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:48:54,539.539 INFO    ] No existing commands found in stream
[2026-06-13 17:48:59,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:48:59,573.573 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 17:49:01,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:49:01,280.280 INFO    ] Checking for system updates...
[2026-06-13 17:49:01,300.300 INFO    ] 200
[2026-06-13 17:49:01,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:01,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:01,334.334 INFO    ] No update needed
[2026-06-13 17:49:01,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:01,355.355 INFO    ] 200
[2026-06-13 17:49:01,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:01,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:49:01,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:01,414.414 INFO    ] No camera update needed
[2026-06-13 17:49:01,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:01,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:01,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:01,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:49:03,458.458 INFO    ] ================================================
[2026-06-13 17:49:03,473.473 INFO    ] Launching Daemon at Sat Jun 13 17:49:03 IST 2026
[2026-06-13 17:49:03,484.484 INFO    ] ================================================
[2026-06-13 17:49:03,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:49:03
[2026-06-13 17:49:04,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:49:04,275.275 INFO    ] Initializing speech engine...
[2026-06-13 17:49:04,289.289 INFO    ] 2026-06-13 17:49:04
[2026-06-13 17:49:04,506.506 INFO    ] 2026-06-13 17:49:04
[2026-06-13 17:49:04,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:49:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:49:04,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:49:04,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:49:04,937.937 INFO    ] time= 13/06/2026 17:49:04
[2026-06-13 17:49:04,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:49:04,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:49:05,066.066 INFO    ] No existing commands found in stream
[2026-06-13 17:49:10,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:49:10,078.078 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 17:49:11,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:49:11,252.252 INFO    ] Checking for system updates...
[2026-06-13 17:49:11,277.277 INFO    ] 200
[2026-06-13 17:49:11,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:11,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:49:11,317.317 INFO    ] No update needed
[2026-06-13 17:49:11,319.319 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:11,355.355 INFO    ] 200
[2026-06-13 17:49:11,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:11,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:49:11,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:49:11,442.442 INFO    ] No camera update needed
[2026-06-13 17:49:11,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:11,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:11,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:11,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:49:13,499.499 INFO    ] ================================================
[2026-06-13 17:49:13,514.514 INFO    ] Launching Daemon at Sat Jun 13 17:49:13 IST 2026
[2026-06-13 17:49:13,525.525 INFO    ] ================================================
[2026-06-13 17:49:13,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:49:13
[2026-06-13 17:49:14,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:49:14,332.332 INFO    ] Initializing speech engine...
[2026-06-13 17:49:14,344.344 INFO    ] 2026-06-13 17:49:14
[2026-06-13 17:49:14,562.562 INFO    ] 2026-06-13 17:49:14
[2026-06-13 17:49:14,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:49:14,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:49:14,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:49:14,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:49:14,985.985 INFO    ] time= 13/06/2026 17:49:14
[2026-06-13 17:49:15,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:49:15,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:49:15,117.117 INFO    ] No existing commands found in stream
[2026-06-13 17:49:20,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:49:20,131.131 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 17:49:24,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:49:24,368.368 INFO    ] Checking for system updates...
[2026-06-13 17:49:24,417.417 INFO    ] 200
[2026-06-13 17:49:24,420.420 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:24,423.423 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 17:49:24,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:24,476.476 INFO    ] 200
[2026-06-13 17:49:24,479.479 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:24,481.481 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 17:49:24,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:24,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:24,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:24,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:49:26,524.524 INFO    ] ================================================
[2026-06-13 17:49:26,533.533 INFO    ] Launching Daemon at Sat Jun 13 17:49:26 IST 2026
[2026-06-13 17:49:26,539.539 INFO    ] ================================================
[2026-06-13 17:49:26,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:49:26
[2026-06-13 17:49:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:49:27,342.342 INFO    ] Initializing speech engine...
[2026-06-13 17:49:27,345.345 INFO    ] 2026-06-13 17:49:27
[2026-06-13 17:49:27,540.540 INFO    ] 2026-06-13 17:49:27
[2026-06-13 17:49:27,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:49:27,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:49:27,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:49:27,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:49:27,982.982 INFO    ] time= 13/06/2026 17:49:27
[2026-06-13 17:49:28,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:49:28,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:49:28,180.180 INFO    ] No existing commands found in stream
[2026-06-13 17:49:33,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:49:33,194.194 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 17:49:37,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:49:37,026.026 INFO    ] Checking for system updates...
[2026-06-13 17:49:37,048.048 INFO    ] 200
[2026-06-13 17:49:37,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:37,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:37,081.081 INFO    ] No update needed
[2026-06-13 17:49:37,083.083 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:37,103.103 INFO    ] 200
[2026-06-13 17:49:37,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:37,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:49:37,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:37,166.166 INFO    ] No camera update needed
[2026-06-13 17:49:37,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:37,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:37,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:37,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:49:39,213.213 INFO    ] ================================================
[2026-06-13 17:49:39,229.229 INFO    ] Launching Daemon at Sat Jun 13 17:49:39 IST 2026
[2026-06-13 17:49:39,240.240 INFO    ] ================================================
[2026-06-13 17:49:39,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:49:39
[2026-06-13 17:49:39,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:49:40,063.063 INFO    ] Initializing speech engine...
[2026-06-13 17:49:40,068.068 INFO    ] 2026-06-13 17:49:40
[2026-06-13 17:49:40,270.270 INFO    ] 2026-06-13 17:49:40
[2026-06-13 17:49:40,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:49:40,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:49:40,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:49:40,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:49:40,691.691 INFO    ] time= 13/06/2026 17:49:40
[2026-06-13 17:49:40,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:49:40,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:49:40,789.789 INFO    ] No existing commands found in stream
[2026-06-13 17:49:45,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:49:45,806.806 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 17:49:46,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:49:46,435.435 INFO    ] Checking for system updates...
[2026-06-13 17:49:46,456.456 INFO    ] 200
[2026-06-13 17:49:46,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:46,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:46,490.490 INFO    ] No update needed
[2026-06-13 17:49:46,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:46,510.510 INFO    ] 200
[2026-06-13 17:49:46,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:46,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:49:46,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:49:46,572.572 INFO    ] No camera update needed
[2026-06-13 17:49:46,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:46,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:46,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:46,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:49:48,621.621 INFO    ] ================================================
[2026-06-13 17:49:48,637.637 INFO    ] Launching Daemon at Sat Jun 13 17:49:48 IST 2026
[2026-06-13 17:49:48,647.647 INFO    ] ================================================
[2026-06-13 17:49:48,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:49:48
[2026-06-13 17:49:49,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:49:49,418.418 INFO    ] Initializing speech engine...
[2026-06-13 17:49:49,426.426 INFO    ] 2026-06-13 17:49:49
[2026-06-13 17:49:49,644.644 INFO    ] 2026-06-13 17:49:49
[2026-06-13 17:49:49,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:49:49,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:49:49,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:49:50,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:49:50,007.007 INFO    ] time= 13/06/2026 17:49:50
[2026-06-13 17:49:50,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:49:50,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:49:50,143.143 INFO    ] No existing commands found in stream
[2026-06-13 17:49:55,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:49:55,167.167 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 17:49:59,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:49:59,111.111 INFO    ] Checking for system updates...
[2026-06-13 17:49:59,132.132 INFO    ] 200
[2026-06-13 17:49:59,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:59,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:49:59,167.167 INFO    ] No update needed
[2026-06-13 17:49:59,169.169 INFO    ] Checking for camera pi updates...
[2026-06-13 17:49:59,189.189 INFO    ] 200
[2026-06-13 17:49:59,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:49:59,213.213 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:49:59,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:49:59,261.261 INFO    ] No camera update needed
[2026-06-13 17:49:59,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:49:59,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:49:59,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:49:59,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:50:01,319.319 INFO    ] ================================================
[2026-06-13 17:50:01,335.335 INFO    ] Launching Daemon at Sat Jun 13 17:50:01 IST 2026
[2026-06-13 17:50:01,346.346 INFO    ] ================================================
[2026-06-13 17:50:01,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:50:01
[2026-06-13 17:50:02,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:50:03,052.052 INFO    ] Initializing speech engine...
[2026-06-13 17:50:03,055.055 INFO    ] 2026-06-13 17:50:03
[2026-06-13 17:50:03,373.373 INFO    ] 2026-06-13 17:50:03
[2026-06-13 17:50:03,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:50:03,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:50:03,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:50:03,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:50:03,941.941 INFO    ] time= 13/06/2026 17:50:03
[2026-06-13 17:50:03,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:50:03,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:50:04,081.081 INFO    ] No existing commands found in stream
[2026-06-13 17:50:09,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:50:09,103.103 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 17:50:11,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:50:11,286.286 INFO    ] Checking for system updates...
[2026-06-13 17:50:11,307.307 INFO    ] 200
[2026-06-13 17:50:11,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:11,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:11,340.340 INFO    ] No update needed
[2026-06-13 17:50:11,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 17:50:11,362.362 INFO    ] 200
[2026-06-13 17:50:11,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:11,387.387 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:50:11,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:11,424.424 INFO    ] No camera update needed
[2026-06-13 17:50:11,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:50:11,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:50:11,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:50:11,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:50:13,472.472 INFO    ] ================================================
[2026-06-13 17:50:13,488.488 INFO    ] Launching Daemon at Sat Jun 13 17:50:13 IST 2026
[2026-06-13 17:50:13,499.499 INFO    ] ================================================
[2026-06-13 17:50:13,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:50:13
[2026-06-13 17:50:14,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:50:14,288.288 INFO    ] Initializing speech engine...
[2026-06-13 17:50:14,293.293 INFO    ] 2026-06-13 17:50:14
[2026-06-13 17:50:14,524.524 INFO    ] 2026-06-13 17:50:14
[2026-06-13 17:50:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:50:14,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:50:14,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:50:14,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:50:14,927.927 INFO    ] time= 13/06/2026 17:50:14
[2026-06-13 17:50:14,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:50:15,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:50:15,086.086 INFO    ] No existing commands found in stream
[2026-06-13 17:50:20,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:50:20,100.100 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 17:50:22,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:50:22,502.502 INFO    ] Checking for system updates...
[2026-06-13 17:50:22,523.523 INFO    ] 200
[2026-06-13 17:50:22,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:22,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:50:22,559.559 INFO    ] No update needed
[2026-06-13 17:50:22,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 17:50:22,580.580 INFO    ] 200
[2026-06-13 17:50:22,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:22,604.604 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:50:22,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:22,744.744 INFO    ] No camera update needed
[2026-06-13 17:50:22,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:50:22,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:50:22,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:50:22,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:50:24,791.791 INFO    ] ================================================
[2026-06-13 17:50:24,807.807 INFO    ] Launching Daemon at Sat Jun 13 17:50:24 IST 2026
[2026-06-13 17:50:24,818.818 INFO    ] ================================================
[2026-06-13 17:50:25,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:50:25
[2026-06-13 17:50:25,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:50:25,612.612 INFO    ] Initializing speech engine...
[2026-06-13 17:50:25,622.622 INFO    ] 2026-06-13 17:50:25
[2026-06-13 17:50:25,829.829 INFO    ] 2026-06-13 17:50:25
[2026-06-13 17:50:25,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:50:26,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:50:26,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:50:26,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:50:26,239.239 INFO    ] time= 13/06/2026 17:50:26
[2026-06-13 17:50:26,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:50:26,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:50:26,351.351 INFO    ] No existing commands found in stream
[2026-06-13 17:50:31,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:50:31,363.363 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 17:50:35,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:50:35,117.117 INFO    ] Checking for system updates...
[2026-06-13 17:50:35,139.139 INFO    ] 200
[2026-06-13 17:50:35,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:35,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:50:35,173.173 INFO    ] No update needed
[2026-06-13 17:50:35,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 17:50:35,194.194 INFO    ] 200
[2026-06-13 17:50:35,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:35,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:50:35,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:35,267.267 INFO    ] No camera update needed
[2026-06-13 17:50:35,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:50:35,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:50:35,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:50:35,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:50:37,317.317 INFO    ] ================================================
[2026-06-13 17:50:37,332.332 INFO    ] Launching Daemon at Sat Jun 13 17:50:37 IST 2026
[2026-06-13 17:50:37,343.343 INFO    ] ================================================
[2026-06-13 17:50:37,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:50:37
[2026-06-13 17:50:38,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:50:38,131.131 INFO    ] Initializing speech engine...
[2026-06-13 17:50:38,139.139 INFO    ] 2026-06-13 17:50:38
[2026-06-13 17:50:38,354.354 INFO    ] 2026-06-13 17:50:38
[2026-06-13 17:50:38,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:50:38,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:50:38,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:50:38,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:50:38,755.755 INFO    ] time= 13/06/2026 17:50:38
[2026-06-13 17:50:38,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:50:38,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:50:38,878.878 INFO    ] No existing commands found in stream
[2026-06-13 17:50:43,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:50:43,890.890 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 17:50:45,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:50:45,780.780 INFO    ] Checking for system updates...
[2026-06-13 17:50:45,801.801 INFO    ] 200
[2026-06-13 17:50:45,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:45,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:45,837.837 INFO    ] No update needed
[2026-06-13 17:50:45,838.838 INFO    ] Checking for camera pi updates...
[2026-06-13 17:50:45,858.858 INFO    ] 200
[2026-06-13 17:50:45,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:45,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:50:45,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:50:45,927.927 INFO    ] No camera update needed
[2026-06-13 17:50:45,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:50:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:50:45,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:50:45,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:50:47,985.985 INFO    ] ================================================
[2026-06-13 17:50:48,002.002 INFO    ] Launching Daemon at Sat Jun 13 17:50:47 IST 2026
[2026-06-13 17:50:48,013.013 INFO    ] ================================================
[2026-06-13 17:50:48,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:50:48
[2026-06-13 17:50:49,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:50:49,359.359 INFO    ] Initializing speech engine...
[2026-06-13 17:50:49,365.365 INFO    ] 2026-06-13 17:50:49
[2026-06-13 17:50:49,572.572 INFO    ] 2026-06-13 17:50:49
[2026-06-13 17:50:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:50:49,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:50:49,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:50:49,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:50:49,990.990 INFO    ] time= 13/06/2026 17:50:49
[2026-06-13 17:50:50,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:50:50,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:50:50,092.092 INFO    ] No existing commands found in stream
[2026-06-13 17:50:55,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:50:55,111.111 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 17:50:58,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:50:58,071.071 INFO    ] Checking for system updates...
[2026-06-13 17:50:58,092.092 INFO    ] 200
[2026-06-13 17:50:58,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:58,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:50:58,126.126 INFO    ] No update needed
[2026-06-13 17:50:58,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 17:50:58,147.147 INFO    ] 200
[2026-06-13 17:50:58,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:50:58,172.172 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:50:58,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:50:58,210.210 INFO    ] No camera update needed
[2026-06-13 17:50:58,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:50:58,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:50:58,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:50:58,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:00,258.258 INFO    ] ================================================
[2026-06-13 17:51:00,273.273 INFO    ] Launching Daemon at Sat Jun 13 17:51:00 IST 2026
[2026-06-13 17:51:00,284.284 INFO    ] ================================================
[2026-06-13 17:51:00,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:00
[2026-06-13 17:51:00,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:01,199.199 INFO    ] Initializing speech engine...
[2026-06-13 17:51:01,202.202 INFO    ] 2026-06-13 17:51:01
[2026-06-13 17:51:01,473.473 INFO    ] 2026-06-13 17:51:01
[2026-06-13 17:51:01,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:01,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:01,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:01,925.925 INFO    ] time= 13/06/2026 17:51:01
[2026-06-13 17:51:01,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:02,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:02,107.107 INFO    ] No existing commands found in stream
[2026-06-13 17:51:07,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:51:07,121.121 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 17:51:10,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:51:10,335.335 INFO    ] Checking for system updates...
[2026-06-13 17:51:10,356.356 INFO    ] 200
[2026-06-13 17:51:10,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:10,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:51:10,393.393 INFO    ] No update needed
[2026-06-13 17:51:10,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 17:51:10,414.414 INFO    ] 200
[2026-06-13 17:51:10,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:10,441.441 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:51:10,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:51:10,492.492 INFO    ] No camera update needed
[2026-06-13 17:51:10,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:51:10,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:51:10,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:51:10,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:12,542.542 INFO    ] ================================================
[2026-06-13 17:51:12,557.557 INFO    ] Launching Daemon at Sat Jun 13 17:51:12 IST 2026
[2026-06-13 17:51:12,568.568 INFO    ] ================================================
[2026-06-13 17:51:12,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:12
[2026-06-13 17:51:13,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:13,393.393 INFO    ] Initializing speech engine...
[2026-06-13 17:51:13,403.403 INFO    ] 2026-06-13 17:51:13
[2026-06-13 17:51:13,608.608 INFO    ] 2026-06-13 17:51:13
[2026-06-13 17:51:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:13,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:13,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:13,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:14,006.006 INFO    ] time= 13/06/2026 17:51:13
[2026-06-13 17:51:14,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:14,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:14,211.211 INFO    ] No existing commands found in stream
[2026-06-13 17:51:19,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:51:19,229.229 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 17:51:20,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:51:20,715.715 INFO    ] Checking for system updates...
[2026-06-13 17:51:20,736.736 INFO    ] 200
[2026-06-13 17:51:20,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:20,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:51:20,770.770 INFO    ] No update needed
[2026-06-13 17:51:20,772.772 INFO    ] Checking for camera pi updates...
[2026-06-13 17:51:20,792.792 INFO    ] 200
[2026-06-13 17:51:20,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:20,818.818 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:51:20,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:51:20,860.860 INFO    ] No camera update needed
[2026-06-13 17:51:20,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:51:20,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:51:20,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:51:20,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:22,910.910 INFO    ] ================================================
[2026-06-13 17:51:22,925.925 INFO    ] Launching Daemon at Sat Jun 13 17:51:22 IST 2026
[2026-06-13 17:51:22,937.937 INFO    ] ================================================
[2026-06-13 17:51:23,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:23
[2026-06-13 17:51:23,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:23,733.733 INFO    ] Initializing speech engine...
[2026-06-13 17:51:23,743.743 INFO    ] 2026-06-13 17:51:23
[2026-06-13 17:51:23,959.959 INFO    ] 2026-06-13 17:51:23
[2026-06-13 17:51:23,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:24,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:24,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:24,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:24,366.366 INFO    ] time= 13/06/2026 17:51:24
[2026-06-13 17:51:24,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:24,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:24,484.484 INFO    ] No existing commands found in stream
[2026-06-13 17:51:29,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:51:29,496.496 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 17:51:30,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:51:30,881.881 INFO    ] Checking for system updates...
[2026-06-13 17:51:30,902.902 INFO    ] 200
[2026-06-13 17:51:30,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:30,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:51:30,936.936 INFO    ] No update needed
[2026-06-13 17:51:30,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 17:51:30,959.959 INFO    ] 200
[2026-06-13 17:51:30,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:30,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:51:31,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:51:31,029.029 INFO    ] No camera update needed
[2026-06-13 17:51:31,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:51:31,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:51:31,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:51:31,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:33,069.069 INFO    ] ================================================
[2026-06-13 17:51:33,085.085 INFO    ] Launching Daemon at Sat Jun 13 17:51:33 IST 2026
[2026-06-13 17:51:33,096.096 INFO    ] ================================================
[2026-06-13 17:51:33,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:33
[2026-06-13 17:51:33,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:33,900.900 INFO    ] Initializing speech engine...
[2026-06-13 17:51:33,905.905 INFO    ] 2026-06-13 17:51:33
[2026-06-13 17:51:34,108.108 INFO    ] 2026-06-13 17:51:34
[2026-06-13 17:51:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:34,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:34,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:34,510.510 INFO    ] time= 13/06/2026 17:51:34
[2026-06-13 17:51:34,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:34,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:34,626.626 INFO    ] No existing commands found in stream
[2026-06-13 17:51:39,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:51:39,639.639 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 17:51:40,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:51:40,640.640 INFO    ] Checking for system updates...
[2026-06-13 17:51:40,662.662 INFO    ] 200
[2026-06-13 17:51:40,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:40,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:51:40,695.695 INFO    ] No update needed
[2026-06-13 17:51:40,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 17:51:40,716.716 INFO    ] 200
[2026-06-13 17:51:40,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:40,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:51:40,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:51:40,778.778 INFO    ] No camera update needed
[2026-06-13 17:51:40,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:51:40,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:51:40,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:51:40,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:42,827.827 INFO    ] ================================================
[2026-06-13 17:51:42,844.844 INFO    ] Launching Daemon at Sat Jun 13 17:51:42 IST 2026
[2026-06-13 17:51:42,854.854 INFO    ] ================================================
[2026-06-13 17:51:43,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:43
[2026-06-13 17:51:43,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:43,660.660 INFO    ] Initializing speech engine...
[2026-06-13 17:51:43,665.665 INFO    ] 2026-06-13 17:51:43
[2026-06-13 17:51:43,871.871 INFO    ] 2026-06-13 17:51:43
[2026-06-13 17:51:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:44,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:44,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:44,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:44,279.279 INFO    ] time= 13/06/2026 17:51:44
[2026-06-13 17:51:44,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:44,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:44,382.382 INFO    ] No existing commands found in stream
[2026-06-13 17:51:49,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:51:49,396.396 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 17:51:52,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:51:52,436.436 INFO    ] Checking for system updates...
[2026-06-13 17:51:52,457.457 INFO    ] 200
[2026-06-13 17:51:52,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:52,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:51:52,490.490 INFO    ] No update needed
[2026-06-13 17:51:52,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 17:51:52,511.511 INFO    ] 200
[2026-06-13 17:51:52,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:51:52,536.536 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:51:52,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:51:52,582.582 INFO    ] No camera update needed
[2026-06-13 17:51:52,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:51:52,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:51:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:51:52,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:51:54,631.631 INFO    ] ================================================
[2026-06-13 17:51:54,647.647 INFO    ] Launching Daemon at Sat Jun 13 17:51:54 IST 2026
[2026-06-13 17:51:54,658.658 INFO    ] ================================================
[2026-06-13 17:51:55,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:51:55
[2026-06-13 17:51:55,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:51:55,520.520 INFO    ] Initializing speech engine...
[2026-06-13 17:51:55,525.525 INFO    ] 2026-06-13 17:51:55
[2026-06-13 17:51:55,732.732 INFO    ] 2026-06-13 17:51:55
[2026-06-13 17:51:55,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:51:55,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:51:55,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:51:56,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:51:56,148.148 INFO    ] time= 13/06/2026 17:51:56
[2026-06-13 17:51:56,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:51:56,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:51:56,249.249 INFO    ] No existing commands found in stream
[2026-06-13 17:52:01,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:52:01,267.267 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 17:52:05,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:52:05,605.605 INFO    ] Checking for system updates...
[2026-06-13 17:52:05,626.626 INFO    ] 200
[2026-06-13 17:52:05,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:05,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:05,660.660 INFO    ] No update needed
[2026-06-13 17:52:05,661.661 INFO    ] Checking for camera pi updates...
[2026-06-13 17:52:05,682.682 INFO    ] 200
[2026-06-13 17:52:05,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:05,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:52:05,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:05,748.748 INFO    ] No camera update needed
[2026-06-13 17:52:05,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:52:05,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:52:05,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:52:05,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:52:07,795.795 INFO    ] ================================================
[2026-06-13 17:52:07,812.812 INFO    ] Launching Daemon at Sat Jun 13 17:52:07 IST 2026
[2026-06-13 17:52:07,824.824 INFO    ] ================================================
[2026-06-13 17:52:08,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:52:08
[2026-06-13 17:52:08,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:52:08,591.591 INFO    ] Initializing speech engine...
[2026-06-13 17:52:08,595.595 INFO    ] 2026-06-13 17:52:08
[2026-06-13 17:52:08,814.814 INFO    ] 2026-06-13 17:52:08
[2026-06-13 17:52:08,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:52:09,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:52:09,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:52:09,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:52:09,219.219 INFO    ] time= 13/06/2026 17:52:09
[2026-06-13 17:52:09,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:52:09,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:52:09,336.336 INFO    ] No existing commands found in stream
[2026-06-13 17:52:14,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:52:14,348.348 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 17:52:18,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:52:18,224.224 INFO    ] Checking for system updates...
[2026-06-13 17:52:18,245.245 INFO    ] 200
[2026-06-13 17:52:18,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:18,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:52:18,281.281 INFO    ] No update needed
[2026-06-13 17:52:18,282.282 INFO    ] Checking for camera pi updates...
[2026-06-13 17:52:18,302.302 INFO    ] 200
[2026-06-13 17:52:18,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:18,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:52:18,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:52:18,353.353 INFO    ] No camera update needed
[2026-06-13 17:52:18,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:52:18,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:52:18,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:52:18,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:52:20,401.401 INFO    ] ================================================
[2026-06-13 17:52:20,417.417 INFO    ] Launching Daemon at Sat Jun 13 17:52:20 IST 2026
[2026-06-13 17:52:20,428.428 INFO    ] ================================================
[2026-06-13 17:52:20,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:52:20
[2026-06-13 17:52:21,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:52:21,302.302 INFO    ] Initializing speech engine...
[2026-06-13 17:52:21,308.308 INFO    ] 2026-06-13 17:52:21
[2026-06-13 17:52:21,532.532 INFO    ] 2026-06-13 17:52:21
[2026-06-13 17:52:21,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:52:21,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:52:21,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:52:21,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:52:22,033.033 INFO    ] time= 13/06/2026 17:52:21
[2026-06-13 17:52:22,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:52:22,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:52:22,242.242 INFO    ] No existing commands found in stream
[2026-06-13 17:52:27,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:52:27,276.276 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 17:52:30,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:52:30,119.119 INFO    ] Checking for system updates...
[2026-06-13 17:52:30,140.140 INFO    ] 200
[2026-06-13 17:52:30,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:30,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:30,174.174 INFO    ] No update needed
[2026-06-13 17:52:30,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 17:52:30,195.195 INFO    ] 200
[2026-06-13 17:52:30,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:30,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:52:30,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:30,347.347 INFO    ] No camera update needed
[2026-06-13 17:52:30,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:52:30,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:52:30,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:52:30,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:52:32,396.396 INFO    ] ================================================
[2026-06-13 17:52:32,413.413 INFO    ] Launching Daemon at Sat Jun 13 17:52:32 IST 2026
[2026-06-13 17:52:32,424.424 INFO    ] ================================================
[2026-06-13 17:52:32,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:52:32
[2026-06-13 17:52:33,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:52:33,228.228 INFO    ] Initializing speech engine...
[2026-06-13 17:52:33,232.232 INFO    ] 2026-06-13 17:52:33
[2026-06-13 17:52:33,451.451 INFO    ] 2026-06-13 17:52:33
[2026-06-13 17:52:33,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:52:33,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:52:33,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:52:33,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:52:33,856.856 INFO    ] time= 13/06/2026 17:52:33
[2026-06-13 17:52:33,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:52:33,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:52:33,976.976 INFO    ] No existing commands found in stream
[2026-06-13 17:52:38,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:52:38,988.988 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 17:52:41,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:52:41,718.718 INFO    ] Checking for system updates...
[2026-06-13 17:52:41,738.738 INFO    ] 200
[2026-06-13 17:52:41,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:41,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:52:41,773.773 INFO    ] No update needed
[2026-06-13 17:52:41,774.774 INFO    ] Checking for camera pi updates...
[2026-06-13 17:52:41,795.795 INFO    ] 200
[2026-06-13 17:52:41,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:41,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:52:41,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:52:41,863.863 INFO    ] No camera update needed
[2026-06-13 17:52:41,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:52:41,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:52:41,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:52:41,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:52:43,913.913 INFO    ] ================================================
[2026-06-13 17:52:43,929.929 INFO    ] Launching Daemon at Sat Jun 13 17:52:43 IST 2026
[2026-06-13 17:52:43,939.939 INFO    ] ================================================
[2026-06-13 17:52:44,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:52:44
[2026-06-13 17:52:44,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:52:45,228.228 INFO    ] Initializing speech engine...
[2026-06-13 17:52:45,240.240 INFO    ] 2026-06-13 17:52:45
[2026-06-13 17:52:45,504.504 INFO    ] 2026-06-13 17:52:45
[2026-06-13 17:52:45,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:52:45,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:52:45,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:52:45,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:52:45,867.867 INFO    ] time= 13/06/2026 17:52:45
[2026-06-13 17:52:45,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:52:45,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:52:45,947.947 INFO    ] No existing commands found in stream
[2026-06-13 17:52:50,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:52:50,963.963 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 17:52:51,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:52:51,684.684 INFO    ] Checking for system updates...
[2026-06-13 17:52:51,706.706 INFO    ] 200
[2026-06-13 17:52:51,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:51,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:51,739.739 INFO    ] No update needed
[2026-06-13 17:52:51,741.741 INFO    ] Checking for camera pi updates...
[2026-06-13 17:52:51,762.762 INFO    ] 200
[2026-06-13 17:52:51,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:52:51,790.790 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:52:51,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:52:51,829.829 INFO    ] No camera update needed
[2026-06-13 17:52:51,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:52:51,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:52:51,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:52:51,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:52:53,882.882 INFO    ] ================================================
[2026-06-13 17:52:53,898.898 INFO    ] Launching Daemon at Sat Jun 13 17:52:53 IST 2026
[2026-06-13 17:52:53,910.910 INFO    ] ================================================
[2026-06-13 17:52:54,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:52:54
[2026-06-13 17:52:54,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:52:54,717.717 INFO    ] Initializing speech engine...
[2026-06-13 17:52:54,731.731 INFO    ] 2026-06-13 17:52:54
[2026-06-13 17:52:54,953.953 INFO    ] 2026-06-13 17:52:54
[2026-06-13 17:52:54,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:52:55,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:52:55,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:52:55,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:52:55,353.353 INFO    ] time= 13/06/2026 17:52:55
[2026-06-13 17:52:55,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:52:55,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:52:55,448.448 INFO    ] No existing commands found in stream
[2026-06-13 17:53:00,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:53:00,463.463 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 17:53:02,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:53:02,654.654 INFO    ] Checking for system updates...
[2026-06-13 17:53:02,675.675 INFO    ] 200
[2026-06-13 17:53:02,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:02,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:53:02,709.709 INFO    ] No update needed
[2026-06-13 17:53:02,710.710 INFO    ] Checking for camera pi updates...
[2026-06-13 17:53:02,731.731 INFO    ] 200
[2026-06-13 17:53:02,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:02,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:53:02,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:53:02,782.782 INFO    ] No camera update needed
[2026-06-13 17:53:02,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:53:02,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:02,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:02,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:04,831.831 INFO    ] ================================================
[2026-06-13 17:53:04,847.847 INFO    ] Launching Daemon at Sat Jun 13 17:53:04 IST 2026
[2026-06-13 17:53:04,858.858 INFO    ] ================================================
[2026-06-13 17:53:05,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:05
[2026-06-13 17:53:05,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:05,658.658 INFO    ] Initializing speech engine...
[2026-06-13 17:53:05,665.665 INFO    ] 2026-06-13 17:53:05
[2026-06-13 17:53:05,878.878 INFO    ] 2026-06-13 17:53:05
[2026-06-13 17:53:05,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:06,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:53:06,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:53:06,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:53:06,298.298 INFO    ] time= 13/06/2026 17:53:06
[2026-06-13 17:53:06,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:53:06,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:53:06,409.409 INFO    ] No existing commands found in stream
[2026-06-13 17:53:11,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:53:11,422.422 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 17:53:13,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:53:13,773.773 INFO    ] Checking for system updates...
[2026-06-13 17:53:13,794.794 INFO    ] 200
[2026-06-13 17:53:13,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:13,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:13,827.827 INFO    ] No update needed
[2026-06-13 17:53:13,828.828 INFO    ] Checking for camera pi updates...
[2026-06-13 17:53:13,849.849 INFO    ] 200
[2026-06-13 17:53:13,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:13,874.874 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:53:13,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:13,913.913 INFO    ] No camera update needed
[2026-06-13 17:53:13,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:53:13,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:13,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:13,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:15,963.963 INFO    ] ================================================
[2026-06-13 17:53:15,977.977 INFO    ] Launching Daemon at Sat Jun 13 17:53:15 IST 2026
[2026-06-13 17:53:15,988.988 INFO    ] ================================================
[2026-06-13 17:53:16,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:16
[2026-06-13 17:53:16,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:16,778.778 INFO    ] Initializing speech engine...
[2026-06-13 17:53:16,783.783 INFO    ] 2026-06-13 17:53:16
[2026-06-13 17:53:16,991.991 INFO    ] 2026-06-13 17:53:16
[2026-06-13 17:53:17,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:53:17,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:53:17,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:53:17,407.407 INFO    ] time= 13/06/2026 17:53:17
[2026-06-13 17:53:17,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:53:17,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:53:17,516.516 INFO    ] No existing commands found in stream
[2026-06-13 17:53:22,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:53:22,533.533 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 17:53:26,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:53:26,031.031 INFO    ] Checking for system updates...
[2026-06-13 17:53:26,052.052 INFO    ] 200
[2026-06-13 17:53:26,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:26,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:26,086.086 INFO    ] No update needed
[2026-06-13 17:53:26,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 17:53:26,107.107 INFO    ] 200
[2026-06-13 17:53:26,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:26,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:53:26,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:26,175.175 INFO    ] No camera update needed
[2026-06-13 17:53:26,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:53:26,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:26,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:26,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:28,226.226 INFO    ] ================================================
[2026-06-13 17:53:28,241.241 INFO    ] Launching Daemon at Sat Jun 13 17:53:28 IST 2026
[2026-06-13 17:53:28,253.253 INFO    ] ================================================
[2026-06-13 17:53:28,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:28
[2026-06-13 17:53:29,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:29,391.391 INFO    ] Initializing speech engine...
[2026-06-13 17:53:29,403.403 INFO    ] 2026-06-13 17:53:29
[2026-06-13 17:53:29,668.668 INFO    ] 2026-06-13 17:53:29
[2026-06-13 17:53:29,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:29,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:53:29,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:53:30,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:53:30,130.130 INFO    ] time= 13/06/2026 17:53:30
[2026-06-13 17:53:30,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:53:30,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:53:30,279.279 INFO    ] No existing commands found in stream
[2026-06-13 17:53:35,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:53:35,295.295 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 17:53:36,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:53:36,438.438 INFO    ] Checking for system updates...
[2026-06-13 17:53:36,460.460 INFO    ] 200
[2026-06-13 17:53:36,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:36,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:53:36,494.494 INFO    ] No update needed
[2026-06-13 17:53:36,496.496 INFO    ] Checking for camera pi updates...
[2026-06-13 17:53:36,516.516 INFO    ] 200
[2026-06-13 17:53:36,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:36,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:53:36,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:53:36,588.588 INFO    ] No camera update needed
[2026-06-13 17:53:36,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:53:36,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:36,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:36,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:38,638.638 INFO    ] ================================================
[2026-06-13 17:53:38,653.653 INFO    ] Launching Daemon at Sat Jun 13 17:53:38 IST 2026
[2026-06-13 17:53:38,665.665 INFO    ] ================================================
[2026-06-13 17:53:38,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:38
[2026-06-13 17:53:39,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:39,466.466 INFO    ] Initializing speech engine...
[2026-06-13 17:53:39,470.470 INFO    ] 2026-06-13 17:53:39
[2026-06-13 17:53:39,672.672 INFO    ] 2026-06-13 17:53:39
[2026-06-13 17:53:39,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:39,755.755 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 17:53:39,798.798 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 17:53:39,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:39,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:39,864.864 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:53:39,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:41,971.971 INFO    ] ================================================
[2026-06-13 17:53:41,986.986 INFO    ] Launching Daemon at Sat Jun 13 17:53:41 IST 2026
[2026-06-13 17:53:42,997.997 INFO    ] ================================================
[2026-06-13 17:53:42,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:42
[2026-06-13 17:53:42,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:42,782.782 INFO    ] Initializing speech engine...
[2026-06-13 17:53:42,790.790 INFO    ] 2026-06-13 17:53:42
[2026-06-13 17:53:43,004.004 INFO    ] 2026-06-13 17:53:42
[2026-06-13 17:53:43,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:43,074.074 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 17:53:43,130.130 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 17:53:43,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:43,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:43,230.230 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 17:53:43,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:45,309.309 INFO    ] ================================================
[2026-06-13 17:53:45,324.324 INFO    ] Launching Daemon at Sat Jun 13 17:53:45 IST 2026
[2026-06-13 17:53:45,335.335 INFO    ] ================================================
[2026-06-13 17:53:45,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:45
[2026-06-13 17:53:46,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:46,720.720 INFO    ] Initializing speech engine...
[2026-06-13 17:53:46,729.729 INFO    ] 2026-06-13 17:53:46
[2026-06-13 17:53:46,980.980 INFO    ] 2026-06-13 17:53:46
[2026-06-13 17:53:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:53:47,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:53:47,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:53:47,321.321 INFO    ] time= 13/06/2026 17:53:47
[2026-06-13 17:53:47,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:53:47,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:53:47,434.434 INFO    ] No existing commands found in stream
[2026-06-13 17:53:52,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:53:52,450.450 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 17:53:56,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:53:56,262.262 INFO    ] Checking for system updates...
[2026-06-13 17:53:56,283.283 INFO    ] 200
[2026-06-13 17:53:56,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:56,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:56,316.316 INFO    ] No update needed
[2026-06-13 17:53:56,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 17:53:56,338.338 INFO    ] 200
[2026-06-13 17:53:56,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:53:56,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:53:56,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:53:56,515.515 INFO    ] No camera update needed
[2026-06-13 17:53:56,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:53:56,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:53:56,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:53:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:53:58,562.562 INFO    ] ================================================
[2026-06-13 17:53:58,579.579 INFO    ] Launching Daemon at Sat Jun 13 17:53:58 IST 2026
[2026-06-13 17:53:58,590.590 INFO    ] ================================================
[2026-06-13 17:53:58,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:53:58
[2026-06-13 17:53:59,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:53:59,387.387 INFO    ] Initializing speech engine...
[2026-06-13 17:53:59,392.392 INFO    ] 2026-06-13 17:53:59
[2026-06-13 17:53:59,620.620 INFO    ] 2026-06-13 17:53:59
[2026-06-13 17:53:59,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:53:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:53:59,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:53:59,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:00,053.053 INFO    ] time= 13/06/2026 17:53:59
[2026-06-13 17:54:00,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:00,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:00,174.174 INFO    ] No existing commands found in stream
[2026-06-13 17:54:05,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:54:05,188.188 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 17:54:07,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:54:07,527.527 INFO    ] Checking for system updates...
[2026-06-13 17:54:07,548.548 INFO    ] 200
[2026-06-13 17:54:07,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:07,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:54:07,585.585 INFO    ] No update needed
[2026-06-13 17:54:07,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 17:54:07,608.608 INFO    ] 200
[2026-06-13 17:54:07,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:07,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:54:07,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:54:07,674.674 INFO    ] No camera update needed
[2026-06-13 17:54:07,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:54:07,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:54:07,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:54:07,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:54:09,723.723 INFO    ] ================================================
[2026-06-13 17:54:09,741.741 INFO    ] Launching Daemon at Sat Jun 13 17:54:09 IST 2026
[2026-06-13 17:54:09,752.752 INFO    ] ================================================
[2026-06-13 17:54:10,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:54:10
[2026-06-13 17:54:10,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:54:10,539.539 INFO    ] Initializing speech engine...
[2026-06-13 17:54:10,544.544 INFO    ] 2026-06-13 17:54:10
[2026-06-13 17:54:10,748.748 INFO    ] 2026-06-13 17:54:10
[2026-06-13 17:54:10,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:54:10,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:54:10,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:54:11,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:11,151.151 INFO    ] time= 13/06/2026 17:54:11
[2026-06-13 17:54:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:11,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:11,309.309 INFO    ] No existing commands found in stream
[2026-06-13 17:54:16,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:54:16,327.327 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 17:54:20,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:54:20,262.262 INFO    ] Checking for system updates...
[2026-06-13 17:54:20,283.283 INFO    ] 200
[2026-06-13 17:54:20,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:20,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:54:20,317.317 INFO    ] No update needed
[2026-06-13 17:54:20,318.318 INFO    ] Checking for camera pi updates...
[2026-06-13 17:54:20,337.337 INFO    ] 200
[2026-06-13 17:54:20,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:20,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:54:20,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:54:20,408.408 INFO    ] No camera update needed
[2026-06-13 17:54:20,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:54:20,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:54:20,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:54:20,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:54:22,456.456 INFO    ] ================================================
[2026-06-13 17:54:22,472.472 INFO    ] Launching Daemon at Sat Jun 13 17:54:22 IST 2026
[2026-06-13 17:54:22,483.483 INFO    ] ================================================
[2026-06-13 17:54:22,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:54:22
[2026-06-13 17:54:23,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:54:23,273.273 INFO    ] Initializing speech engine...
[2026-06-13 17:54:23,276.276 INFO    ] 2026-06-13 17:54:23
[2026-06-13 17:54:23,506.506 INFO    ] 2026-06-13 17:54:23
[2026-06-13 17:54:23,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:54:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:54:23,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:54:23,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:23,913.913 INFO    ] time= 13/06/2026 17:54:23
[2026-06-13 17:54:23,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:23,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:24,066.066 INFO    ] No existing commands found in stream
[2026-06-13 17:54:29,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:54:29,080.080 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 17:54:32,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:54:32,876.876 INFO    ] Checking for system updates...
[2026-06-13 17:54:32,897.897 INFO    ] 200
[2026-06-13 17:54:32,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:32,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:54:32,931.931 INFO    ] No update needed
[2026-06-13 17:54:32,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 17:54:32,952.952 INFO    ] 200
[2026-06-13 17:54:32,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:32,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:54:33,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:54:33,017.017 INFO    ] No camera update needed
[2026-06-13 17:54:33,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:54:33,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:54:33,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:54:33,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:54:35,065.065 INFO    ] ================================================
[2026-06-13 17:54:35,081.081 INFO    ] Launching Daemon at Sat Jun 13 17:54:35 IST 2026
[2026-06-13 17:54:35,092.092 INFO    ] ================================================
[2026-06-13 17:54:35,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:54:35
[2026-06-13 17:54:35,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:54:35,988.988 INFO    ] Initializing speech engine...
[2026-06-13 17:54:35,994.994 INFO    ] 2026-06-13 17:54:35
[2026-06-13 17:54:36,207.207 INFO    ] 2026-06-13 17:54:36
[2026-06-13 17:54:36,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:54:36,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:54:36,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:54:36,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:36,622.622 INFO    ] time= 13/06/2026 17:54:36
[2026-06-13 17:54:36,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:36,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:36,736.736 INFO    ] No existing commands found in stream
[2026-06-13 17:54:41,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:54:41,754.754 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 17:54:42,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:54:42,939.939 INFO    ] Checking for system updates...
[2026-06-13 17:54:42,960.960 INFO    ] 200
[2026-06-13 17:54:42,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:42,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:54:42,993.993 INFO    ] No update needed
[2026-06-13 17:54:42,994.994 INFO    ] Checking for camera pi updates...
[2026-06-13 17:54:43,017.017 INFO    ] 200
[2026-06-13 17:54:43,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:43,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:54:43,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:54:43,090.090 INFO    ] No camera update needed
[2026-06-13 17:54:43,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:54:43,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:54:43,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:54:43,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:54:45,138.138 INFO    ] ================================================
[2026-06-13 17:54:45,154.154 INFO    ] Launching Daemon at Sat Jun 13 17:54:45 IST 2026
[2026-06-13 17:54:45,166.166 INFO    ] ================================================
[2026-06-13 17:54:45,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:54:45
[2026-06-13 17:54:45,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:54:45,963.963 INFO    ] Initializing speech engine...
[2026-06-13 17:54:45,969.969 INFO    ] 2026-06-13 17:54:45
[2026-06-13 17:54:46,172.172 INFO    ] 2026-06-13 17:54:46
[2026-06-13 17:54:46,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:54:46,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:54:46,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:54:46,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:46,582.582 INFO    ] time= 13/06/2026 17:54:46
[2026-06-13 17:54:46,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:46,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:46,688.688 INFO    ] No existing commands found in stream
[2026-06-13 17:54:51,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:54:51,700.700 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 17:54:55,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:54:55,545.545 INFO    ] Checking for system updates...
[2026-06-13 17:54:55,566.566 INFO    ] 200
[2026-06-13 17:54:55,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:55,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:54:55,600.600 INFO    ] No update needed
[2026-06-13 17:54:55,601.601 INFO    ] Checking for camera pi updates...
[2026-06-13 17:54:55,625.625 INFO    ] 200
[2026-06-13 17:54:55,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:54:55,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:54:55,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:54:55,691.691 INFO    ] No camera update needed
[2026-06-13 17:54:55,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:54:55,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:54:55,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:54:55,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:54:57,739.739 INFO    ] ================================================
[2026-06-13 17:54:57,755.755 INFO    ] Launching Daemon at Sat Jun 13 17:54:57 IST 2026
[2026-06-13 17:54:57,767.767 INFO    ] ================================================
[2026-06-13 17:54:58,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:54:58
[2026-06-13 17:54:58,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:54:58,589.589 INFO    ] Initializing speech engine...
[2026-06-13 17:54:58,599.599 INFO    ] 2026-06-13 17:54:58
[2026-06-13 17:54:58,808.808 INFO    ] 2026-06-13 17:54:58
[2026-06-13 17:54:58,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:54:59,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:54:59,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:54:59,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:54:59,222.222 INFO    ] time= 13/06/2026 17:54:59
[2026-06-13 17:54:59,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:54:59,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:54:59,381.381 INFO    ] No existing commands found in stream
[2026-06-13 17:55:04,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:55:04,396.396 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 17:55:08,165.165 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:55:08,166.166 INFO    ] Checking for system updates...
[2026-06-13 17:55:08,187.187 INFO    ] 200
[2026-06-13 17:55:08,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:08,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:08,223.223 INFO    ] No update needed
[2026-06-13 17:55:08,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 17:55:08,245.245 INFO    ] 200
[2026-06-13 17:55:08,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:08,272.272 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:55:08,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:08,317.317 INFO    ] No camera update needed
[2026-06-13 17:55:08,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:55:08,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:55:08,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:55:08,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:55:10,364.364 INFO    ] ================================================
[2026-06-13 17:55:10,380.380 INFO    ] Launching Daemon at Sat Jun 13 17:55:10 IST 2026
[2026-06-13 17:55:10,391.391 INFO    ] ================================================
[2026-06-13 17:55:10,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:55:10
[2026-06-13 17:55:11,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:55:11,165.165 INFO    ] Initializing speech engine...
[2026-06-13 17:55:11,169.169 INFO    ] 2026-06-13 17:55:11
[2026-06-13 17:55:11,362.362 INFO    ] 2026-06-13 17:55:11
[2026-06-13 17:55:11,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:55:11,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:55:11,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:55:11,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:55:11,710.710 INFO    ] time= 13/06/2026 17:55:11
[2026-06-13 17:55:11,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:55:11,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:55:11,878.878 INFO    ] No existing commands found in stream
[2026-06-13 17:55:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:55:16,891.891 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 17:55:19,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:55:19,255.255 INFO    ] Checking for system updates...
[2026-06-13 17:55:19,276.276 INFO    ] 200
[2026-06-13 17:55:19,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:19,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:19,310.310 INFO    ] No update needed
[2026-06-13 17:55:19,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 17:55:19,331.331 INFO    ] 200
[2026-06-13 17:55:19,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:19,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:55:19,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:55:19,395.395 INFO    ] No camera update needed
[2026-06-13 17:55:19,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:55:19,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:55:19,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:55:19,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:55:21,444.444 INFO    ] ================================================
[2026-06-13 17:55:21,460.460 INFO    ] Launching Daemon at Sat Jun 13 17:55:21 IST 2026
[2026-06-13 17:55:21,472.472 INFO    ] ================================================
[2026-06-13 17:55:21,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:55:21
[2026-06-13 17:55:22,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:55:22,282.282 INFO    ] Initializing speech engine...
[2026-06-13 17:55:22,287.287 INFO    ] 2026-06-13 17:55:22
[2026-06-13 17:55:22,491.491 INFO    ] 2026-06-13 17:55:22
[2026-06-13 17:55:22,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:55:22,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:55:22,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:55:22,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:55:22,906.906 INFO    ] time= 13/06/2026 17:55:22
[2026-06-13 17:55:22,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:55:22,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:55:23,006.006 INFO    ] No existing commands found in stream
[2026-06-13 17:55:28,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:55:28,017.017 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 17:55:31,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:55:31,638.638 INFO    ] Checking for system updates...
[2026-06-13 17:55:31,662.662 INFO    ] 200
[2026-06-13 17:55:31,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:31,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:31,701.701 INFO    ] No update needed
[2026-06-13 17:55:31,703.703 INFO    ] Checking for camera pi updates...
[2026-06-13 17:55:31,726.726 INFO    ] 200
[2026-06-13 17:55:31,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:31,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:55:31,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:31,795.795 INFO    ] No camera update needed
[2026-06-13 17:55:31,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:55:31,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:55:31,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:55:31,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:55:33,848.848 INFO    ] ================================================
[2026-06-13 17:55:33,863.863 INFO    ] Launching Daemon at Sat Jun 13 17:55:33 IST 2026
[2026-06-13 17:55:33,875.875 INFO    ] ================================================
[2026-06-13 17:55:34,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:55:34
[2026-06-13 17:55:34,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:55:34,771.771 INFO    ] Initializing speech engine...
[2026-06-13 17:55:34,776.776 INFO    ] 2026-06-13 17:55:34
[2026-06-13 17:55:34,988.988 INFO    ] 2026-06-13 17:55:34
[2026-06-13 17:55:35,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:55:35,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:55:35,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:55:35,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:55:35,394.394 INFO    ] time= 13/06/2026 17:55:35
[2026-06-13 17:55:35,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:55:35,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:55:35,519.519 INFO    ] No existing commands found in stream
[2026-06-13 17:55:40,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:55:40,537.537 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 17:55:44,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:55:44,102.102 INFO    ] Checking for system updates...
[2026-06-13 17:55:44,123.123 INFO    ] 200
[2026-06-13 17:55:44,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:44,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:44,157.157 INFO    ] No update needed
[2026-06-13 17:55:44,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 17:55:44,181.181 INFO    ] 200
[2026-06-13 17:55:44,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:44,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:55:44,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:55:44,247.247 INFO    ] No camera update needed
[2026-06-13 17:55:44,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:55:44,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:55:44,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:55:44,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:55:46,297.297 INFO    ] ================================================
[2026-06-13 17:55:46,314.314 INFO    ] Launching Daemon at Sat Jun 13 17:55:46 IST 2026
[2026-06-13 17:55:46,325.325 INFO    ] ================================================
[2026-06-13 17:55:46,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:55:46
[2026-06-13 17:55:46,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:55:47,116.116 INFO    ] Initializing speech engine...
[2026-06-13 17:55:47,122.122 INFO    ] 2026-06-13 17:55:47
[2026-06-13 17:55:47,326.326 INFO    ] 2026-06-13 17:55:47
[2026-06-13 17:55:47,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:55:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:55:47,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:55:47,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:55:47,739.739 INFO    ] time= 13/06/2026 17:55:47
[2026-06-13 17:55:47,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:55:47,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:55:47,868.868 INFO    ] No existing commands found in stream
[2026-06-13 17:55:52,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:55:52,881.881 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 17:55:54,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:55:54,731.731 INFO    ] Checking for system updates...
[2026-06-13 17:55:54,755.755 INFO    ] 200
[2026-06-13 17:55:54,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:54,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:55:54,790.790 INFO    ] No update needed
[2026-06-13 17:55:54,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 17:55:54,811.811 INFO    ] 200
[2026-06-13 17:55:54,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:55:54,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:55:54,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:55:54,884.884 INFO    ] No camera update needed
[2026-06-13 17:55:54,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:55:54,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:55:54,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:55:54,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:55:56,942.942 INFO    ] ================================================
[2026-06-13 17:55:56,957.957 INFO    ] Launching Daemon at Sat Jun 13 17:55:56 IST 2026
[2026-06-13 17:55:56,968.968 INFO    ] ================================================
[2026-06-13 17:55:57,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:55:57
[2026-06-13 17:55:58,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:55:58,264.264 INFO    ] Initializing speech engine...
[2026-06-13 17:55:58,270.270 INFO    ] 2026-06-13 17:55:58
[2026-06-13 17:55:58,481.481 INFO    ] 2026-06-13 17:55:58
[2026-06-13 17:55:58,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:55:58,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:55:58,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:55:58,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:55:58,901.901 INFO    ] time= 13/06/2026 17:55:58
[2026-06-13 17:55:58,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:55:58,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:55:59,011.011 INFO    ] No existing commands found in stream
[2026-06-13 17:56:04,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:56:04,024.024 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 17:56:07,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:56:07,169.169 INFO    ] Checking for system updates...
[2026-06-13 17:56:07,190.190 INFO    ] 200
[2026-06-13 17:56:07,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:07,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:07,225.225 INFO    ] No update needed
[2026-06-13 17:56:07,226.226 INFO    ] Checking for camera pi updates...
[2026-06-13 17:56:07,246.246 INFO    ] 200
[2026-06-13 17:56:07,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:07,271.271 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:56:07,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:07,320.320 INFO    ] No camera update needed
[2026-06-13 17:56:07,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:56:07,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:56:07,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:56:07,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:56:09,370.370 INFO    ] ================================================
[2026-06-13 17:56:09,386.386 INFO    ] Launching Daemon at Sat Jun 13 17:56:09 IST 2026
[2026-06-13 17:56:09,397.397 INFO    ] ================================================
[2026-06-13 17:56:09,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:56:09
[2026-06-13 17:56:10,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:56:10,210.210 INFO    ] Initializing speech engine...
[2026-06-13 17:56:10,216.216 INFO    ] 2026-06-13 17:56:10
[2026-06-13 17:56:10,421.421 INFO    ] 2026-06-13 17:56:10
[2026-06-13 17:56:10,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:56:10,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:56:10,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:56:10,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:56:10,826.826 INFO    ] time= 13/06/2026 17:56:10
[2026-06-13 17:56:10,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:56:10,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:56:10,936.936 INFO    ] No existing commands found in stream
[2026-06-13 17:56:15,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:56:15,947.947 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 17:56:18,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:56:18,020.020 INFO    ] Checking for system updates...
[2026-06-13 17:56:18,040.040 INFO    ] 200
[2026-06-13 17:56:18,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:18,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:18,076.076 INFO    ] No update needed
[2026-06-13 17:56:18,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 17:56:18,099.099 INFO    ] 200
[2026-06-13 17:56:18,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:18,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:56:18,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:18,162.162 INFO    ] No camera update needed
[2026-06-13 17:56:18,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:56:18,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:56:18,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:56:18,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:56:20,211.211 INFO    ] ================================================
[2026-06-13 17:56:20,228.228 INFO    ] Launching Daemon at Sat Jun 13 17:56:20 IST 2026
[2026-06-13 17:56:20,239.239 INFO    ] ================================================
[2026-06-13 17:56:20,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:56:20
[2026-06-13 17:56:20,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:56:21,056.056 INFO    ] Initializing speech engine...
[2026-06-13 17:56:21,061.061 INFO    ] 2026-06-13 17:56:21
[2026-06-13 17:56:21,265.265 INFO    ] 2026-06-13 17:56:21
[2026-06-13 17:56:21,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:56:21,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:56:21,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:56:21,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:56:21,674.674 INFO    ] time= 13/06/2026 17:56:21
[2026-06-13 17:56:21,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:56:21,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:56:21,777.777 INFO    ] No existing commands found in stream
[2026-06-13 17:56:26,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:56:26,790.790 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 17:56:30,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:56:30,995.995 INFO    ] Checking for system updates...
[2026-06-13 17:56:31,016.016 INFO    ] 200
[2026-06-13 17:56:31,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:31,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:56:31,052.052 INFO    ] No update needed
[2026-06-13 17:56:31,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 17:56:31,073.073 INFO    ] 200
[2026-06-13 17:56:31,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:31,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:56:31,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:56:31,145.145 INFO    ] No camera update needed
[2026-06-13 17:56:31,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:56:31,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:56:31,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:56:31,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:56:33,187.187 INFO    ] ================================================
[2026-06-13 17:56:33,203.203 INFO    ] Launching Daemon at Sat Jun 13 17:56:33 IST 2026
[2026-06-13 17:56:33,214.214 INFO    ] ================================================
[2026-06-13 17:56:33,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:56:33
[2026-06-13 17:56:33,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:56:34,165.165 INFO    ] Initializing speech engine...
[2026-06-13 17:56:34,175.175 INFO    ] 2026-06-13 17:56:34
[2026-06-13 17:56:34,424.424 INFO    ] 2026-06-13 17:56:34
[2026-06-13 17:56:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:56:34,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:56:34,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:56:34,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:56:34,793.793 INFO    ] time= 13/06/2026 17:56:34
[2026-06-13 17:56:34,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:56:34,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:56:34,871.871 INFO    ] No existing commands found in stream
[2026-06-13 17:56:39,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:56:39,889.889 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 17:56:42,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:56:42,854.854 INFO    ] Checking for system updates...
[2026-06-13 17:56:42,875.875 INFO    ] 200
[2026-06-13 17:56:42,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:42,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:42,909.909 INFO    ] No update needed
[2026-06-13 17:56:42,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 17:56:42,930.930 INFO    ] 200
[2026-06-13 17:56:42,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:42,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:56:42,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:56:42,994.994 INFO    ] No camera update needed
[2026-06-13 17:56:42,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:56:42,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:56:43,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:56:43,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:56:45,042.042 INFO    ] ================================================
[2026-06-13 17:56:45,058.058 INFO    ] Launching Daemon at Sat Jun 13 17:56:45 IST 2026
[2026-06-13 17:56:45,070.070 INFO    ] ================================================
[2026-06-13 17:56:45,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:56:45
[2026-06-13 17:56:45,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:56:45,890.890 INFO    ] Initializing speech engine...
[2026-06-13 17:56:45,895.895 INFO    ] 2026-06-13 17:56:45
[2026-06-13 17:56:46,102.102 INFO    ] 2026-06-13 17:56:46
[2026-06-13 17:56:46,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:56:46,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:56:46,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:56:46,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:56:46,510.510 INFO    ] time= 13/06/2026 17:56:46
[2026-06-13 17:56:46,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:56:46,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:56:46,625.625 INFO    ] No existing commands found in stream
[2026-06-13 17:56:51,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:56:51,637.637 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 17:56:54,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:56:54,879.879 INFO    ] Checking for system updates...
[2026-06-13 17:56:54,900.900 INFO    ] 200
[2026-06-13 17:56:54,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:54,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:56:54,937.937 INFO    ] No update needed
[2026-06-13 17:56:54,939.939 INFO    ] Checking for camera pi updates...
[2026-06-13 17:56:54,960.960 INFO    ] 200
[2026-06-13 17:56:54,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:56:54,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:56:55,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:56:55,032.032 INFO    ] No camera update needed
[2026-06-13 17:56:55,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:56:55,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:56:55,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:56:55,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:56:57,081.081 INFO    ] ================================================
[2026-06-13 17:56:57,097.097 INFO    ] Launching Daemon at Sat Jun 13 17:56:57 IST 2026
[2026-06-13 17:56:57,108.108 INFO    ] ================================================
[2026-06-13 17:56:57,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:56:57
[2026-06-13 17:56:57,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:56:57,891.891 INFO    ] Initializing speech engine...
[2026-06-13 17:56:57,899.899 INFO    ] 2026-06-13 17:56:57
[2026-06-13 17:56:58,123.123 INFO    ] 2026-06-13 17:56:58
[2026-06-13 17:56:58,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:56:58,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:56:58,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:56:58,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:56:58,499.499 INFO    ] time= 13/06/2026 17:56:58
[2026-06-13 17:56:58,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:56:58,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:56:58,681.681 INFO    ] No existing commands found in stream
[2026-06-13 17:57:03,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:03,693.693 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 17:57:04,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:57:04,508.508 INFO    ] Checking for system updates...
[2026-06-13 17:57:04,547.547 INFO    ] 200
[2026-06-13 17:57:04,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:04,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:57:04,607.607 INFO    ] No update needed
[2026-06-13 17:57:04,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 17:57:04,647.647 INFO    ] 200
[2026-06-13 17:57:04,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:04,696.696 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:57:04,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:57:04,742.742 INFO    ] No camera update needed
[2026-06-13 17:57:04,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:57:04,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:57:04,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:57:04,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:57:06,797.797 INFO    ] ================================================
[2026-06-13 17:57:06,812.812 INFO    ] Launching Daemon at Sat Jun 13 17:57:06 IST 2026
[2026-06-13 17:57:06,823.823 INFO    ] ================================================
[2026-06-13 17:57:07,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:57:07
[2026-06-13 17:57:07,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:57:07,874.874 INFO    ] Initializing speech engine...
[2026-06-13 17:57:07,882.882 INFO    ] 2026-06-13 17:57:07
[2026-06-13 17:57:08,171.171 INFO    ] 2026-06-13 17:57:08
[2026-06-13 17:57:08,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:57:08,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:57:08,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:57:08,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:57:08,636.636 INFO    ] time= 13/06/2026 17:57:08
[2026-06-13 17:57:08,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:57:08,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:57:08,826.826 INFO    ] No existing commands found in stream
[2026-06-13 17:57:13,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:13,862.862 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 17:57:18,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:57:18,862.862 INFO    ] Checking for system updates...
[2026-06-13 17:57:18,900.900 INFO    ] 200
[2026-06-13 17:57:18,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:18,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:57:18,950.950 INFO    ] No update needed
[2026-06-13 17:57:18,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 17:57:18,972.972 INFO    ] 200
[2026-06-13 17:57:18,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:18,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:57:19,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:19,032.032 INFO    ] No camera update needed
[2026-06-13 17:57:19,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:57:19,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:57:19,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:57:19,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:57:21,080.080 INFO    ] ================================================
[2026-06-13 17:57:21,096.096 INFO    ] Launching Daemon at Sat Jun 13 17:57:21 IST 2026
[2026-06-13 17:57:21,108.108 INFO    ] ================================================
[2026-06-13 17:57:21,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:57:21
[2026-06-13 17:57:21,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:57:21,905.905 INFO    ] Initializing speech engine...
[2026-06-13 17:57:21,910.910 INFO    ] 2026-06-13 17:57:21
[2026-06-13 17:57:22,111.111 INFO    ] 2026-06-13 17:57:22
[2026-06-13 17:57:22,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:57:22,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:57:22,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:57:22,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:57:22,514.514 INFO    ] time= 13/06/2026 17:57:22
[2026-06-13 17:57:22,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:57:22,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:57:22,624.624 INFO    ] No existing commands found in stream
[2026-06-13 17:57:27,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:27,641.641 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 17:57:30,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:57:30,434.434 INFO    ] Checking for system updates...
[2026-06-13 17:57:30,456.456 INFO    ] 200
[2026-06-13 17:57:30,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:30,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:30,493.493 INFO    ] No update needed
[2026-06-13 17:57:30,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 17:57:30,514.514 INFO    ] 200
[2026-06-13 17:57:30,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:30,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:57:30,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:30,582.582 INFO    ] No camera update needed
[2026-06-13 17:57:30,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:57:30,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:57:30,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:57:30,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:57:32,624.624 INFO    ] ================================================
[2026-06-13 17:57:32,634.634 INFO    ] Launching Daemon at Sat Jun 13 17:57:32 IST 2026
[2026-06-13 17:57:32,641.641 INFO    ] ================================================
[2026-06-13 17:57:32,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:57:32
[2026-06-13 17:57:33,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:57:33,472.472 INFO    ] Initializing speech engine...
[2026-06-13 17:57:33,483.483 INFO    ] 2026-06-13 17:57:33
[2026-06-13 17:57:33,695.695 INFO    ] 2026-06-13 17:57:33
[2026-06-13 17:57:33,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:57:33,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:57:33,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:57:34,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:57:34,125.125 INFO    ] time= 13/06/2026 17:57:34
[2026-06-13 17:57:34,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:57:34,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:57:34,224.224 INFO    ] No existing commands found in stream
[2026-06-13 17:57:39,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:39,242.242 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 17:57:40,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:57:40,590.590 INFO    ] Checking for system updates...
[2026-06-13 17:57:40,611.611 INFO    ] 200
[2026-06-13 17:57:40,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:40,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:57:40,646.646 INFO    ] No update needed
[2026-06-13 17:57:40,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 17:57:40,667.667 INFO    ] 200
[2026-06-13 17:57:40,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:40,695.695 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:57:40,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:40,734.734 INFO    ] No camera update needed
[2026-06-13 17:57:40,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:57:40,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:57:40,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:57:40,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:57:42,784.784 INFO    ] ================================================
[2026-06-13 17:57:42,800.800 INFO    ] Launching Daemon at Sat Jun 13 17:57:42 IST 2026
[2026-06-13 17:57:42,810.810 INFO    ] ================================================
[2026-06-13 17:57:43,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:57:43
[2026-06-13 17:57:43,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:57:43,654.654 INFO    ] Initializing speech engine...
[2026-06-13 17:57:43,660.660 INFO    ] 2026-06-13 17:57:43
[2026-06-13 17:57:43,870.870 INFO    ] 2026-06-13 17:57:43
[2026-06-13 17:57:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:57:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:57:44,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:57:44,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:57:44,296.296 INFO    ] time= 13/06/2026 17:57:44
[2026-06-13 17:57:44,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:57:44,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:57:44,395.395 INFO    ] No existing commands found in stream
[2026-06-13 17:57:49,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:49,413.413 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 17:57:50,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:57:50,235.235 INFO    ] Checking for system updates...
[2026-06-13 17:57:50,256.256 INFO    ] 200
[2026-06-13 17:57:50,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:50,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:50,290.290 INFO    ] No update needed
[2026-06-13 17:57:50,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 17:57:50,311.311 INFO    ] 200
[2026-06-13 17:57:50,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:57:50,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:57:50,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:57:50,385.385 INFO    ] No camera update needed
[2026-06-13 17:57:50,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:57:50,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:57:50,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:57:50,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:57:52,434.434 INFO    ] ================================================
[2026-06-13 17:57:52,449.449 INFO    ] Launching Daemon at Sat Jun 13 17:57:52 IST 2026
[2026-06-13 17:57:52,461.461 INFO    ] ================================================
[2026-06-13 17:57:52,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:57:52
[2026-06-13 17:57:53,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:57:53,298.298 INFO    ] Initializing speech engine...
[2026-06-13 17:57:53,303.303 INFO    ] 2026-06-13 17:57:53
[2026-06-13 17:57:53,509.509 INFO    ] 2026-06-13 17:57:53
[2026-06-13 17:57:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:57:53,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:57:53,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:57:53,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:57:53,919.919 INFO    ] time= 13/06/2026 17:57:53
[2026-06-13 17:57:53,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:57:53,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:57:54,024.024 INFO    ] No existing commands found in stream
[2026-06-13 17:57:59,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:57:59,036.036 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 17:58:00,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:58:00,385.385 INFO    ] Checking for system updates...
[2026-06-13 17:58:00,406.406 INFO    ] 200
[2026-06-13 17:58:00,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:00,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:00,440.440 INFO    ] No update needed
[2026-06-13 17:58:00,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:00,463.463 INFO    ] 200
[2026-06-13 17:58:00,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:00,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:00,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:00,525.525 INFO    ] No camera update needed
[2026-06-13 17:58:00,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:00,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:00,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:00,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:02,568.568 INFO    ] ================================================
[2026-06-13 17:58:02,581.581 INFO    ] Launching Daemon at Sat Jun 13 17:58:02 IST 2026
[2026-06-13 17:58:02,590.590 INFO    ] ================================================
[2026-06-13 17:58:02,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:02
[2026-06-13 17:58:03,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:03,387.387 INFO    ] Initializing speech engine...
[2026-06-13 17:58:03,391.391 INFO    ] 2026-06-13 17:58:03
[2026-06-13 17:58:03,624.624 INFO    ] 2026-06-13 17:58:03
[2026-06-13 17:58:03,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:03,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:03,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:03,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:03,972.972 INFO    ] time= 13/06/2026 17:58:03
[2026-06-13 17:58:03,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:04,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:04,129.129 INFO    ] No existing commands found in stream
[2026-06-13 17:58:09,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:58:09,143.143 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 17:58:09,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:58:09,734.734 INFO    ] Checking for system updates...
[2026-06-13 17:58:09,755.755 INFO    ] 200
[2026-06-13 17:58:09,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:09,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:09,790.790 INFO    ] No update needed
[2026-06-13 17:58:09,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:09,812.812 INFO    ] 200
[2026-06-13 17:58:09,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:09,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:09,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:09,976.976 INFO    ] No camera update needed
[2026-06-13 17:58:09,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:09,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:09,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:09,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:12,023.023 INFO    ] ================================================
[2026-06-13 17:58:12,038.038 INFO    ] Launching Daemon at Sat Jun 13 17:58:12 IST 2026
[2026-06-13 17:58:12,050.050 INFO    ] ================================================
[2026-06-13 17:58:12,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:12
[2026-06-13 17:58:12,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:12,841.841 INFO    ] Initializing speech engine...
[2026-06-13 17:58:12,854.854 INFO    ] 2026-06-13 17:58:12
[2026-06-13 17:58:13,071.071 INFO    ] 2026-06-13 17:58:13
[2026-06-13 17:58:13,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:13,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:13,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:13,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:13,508.508 INFO    ] time= 13/06/2026 17:58:13
[2026-06-13 17:58:13,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:13,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:13,622.622 INFO    ] No existing commands found in stream
[2026-06-13 17:58:18,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:58:18,633.633 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 17:58:22,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:58:22,329.329 INFO    ] Checking for system updates...
[2026-06-13 17:58:22,351.351 INFO    ] 200
[2026-06-13 17:58:22,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:22,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:22,384.384 INFO    ] No update needed
[2026-06-13 17:58:22,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:22,405.405 INFO    ] 200
[2026-06-13 17:58:22,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:22,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:22,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:22,469.469 INFO    ] No camera update needed
[2026-06-13 17:58:22,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:22,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:22,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:22,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:24,517.517 INFO    ] ================================================
[2026-06-13 17:58:24,533.533 INFO    ] Launching Daemon at Sat Jun 13 17:58:24 IST 2026
[2026-06-13 17:58:24,545.545 INFO    ] ================================================
[2026-06-13 17:58:24,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:24
[2026-06-13 17:58:25,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:25,396.396 INFO    ] Initializing speech engine...
[2026-06-13 17:58:25,401.401 INFO    ] 2026-06-13 17:58:25
[2026-06-13 17:58:25,606.606 INFO    ] 2026-06-13 17:58:25
[2026-06-13 17:58:25,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:25,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:25,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:25,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:26,021.021 INFO    ] time= 13/06/2026 17:58:25
[2026-06-13 17:58:26,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:26,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:26,168.168 INFO    ] No existing commands found in stream
[2026-06-13 17:58:31,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:58:31,183.183 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 17:58:34,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:58:34,429.429 INFO    ] Checking for system updates...
[2026-06-13 17:58:34,450.450 INFO    ] 200
[2026-06-13 17:58:34,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:34,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:34,486.486 INFO    ] No update needed
[2026-06-13 17:58:34,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:34,510.510 INFO    ] 200
[2026-06-13 17:58:34,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:34,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:34,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:34,574.574 INFO    ] No camera update needed
[2026-06-13 17:58:34,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:34,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:34,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:34,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:36,623.623 INFO    ] ================================================
[2026-06-13 17:58:36,639.639 INFO    ] Launching Daemon at Sat Jun 13 17:58:36 IST 2026
[2026-06-13 17:58:36,651.651 INFO    ] ================================================
[2026-06-13 17:58:37,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:36
[2026-06-13 17:58:37,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:37,708.708 INFO    ] Initializing speech engine...
[2026-06-13 17:58:37,718.718 INFO    ] 2026-06-13 17:58:37
[2026-06-13 17:58:38,011.011 INFO    ] 2026-06-13 17:58:37
[2026-06-13 17:58:38,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:38,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:38,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:38,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:38,473.473 INFO    ] time= 13/06/2026 17:58:38
[2026-06-13 17:58:38,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:38,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:38,628.628 INFO    ] No existing commands found in stream
[2026-06-13 17:58:43,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:58:43,643.643 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 17:58:45,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 17:58:45,202.202 INFO    ] Checking for system updates...
[2026-06-13 17:58:45,223.223 INFO    ] 200
[2026-06-13 17:58:45,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:45,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:45,258.258 INFO    ] No update needed
[2026-06-13 17:58:45,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:45,280.280 INFO    ] 200
[2026-06-13 17:58:45,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:45,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:45,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:58:45,345.345 INFO    ] No camera update needed
[2026-06-13 17:58:45,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:45,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:45,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:45,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:47,399.399 INFO    ] ================================================
[2026-06-13 17:58:47,414.414 INFO    ] Launching Daemon at Sat Jun 13 17:58:47 IST 2026
[2026-06-13 17:58:47,425.425 INFO    ] ================================================
[2026-06-13 17:58:47,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:47
[2026-06-13 17:58:48,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:48,226.226 INFO    ] Initializing speech engine...
[2026-06-13 17:58:48,231.231 INFO    ] 2026-06-13 17:58:48
[2026-06-13 17:58:48,435.435 INFO    ] 2026-06-13 17:58:48
[2026-06-13 17:58:48,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:48,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:48,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:48,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:48,804.804 INFO    ] time= 13/06/2026 17:58:48
[2026-06-13 17:58:48,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:48,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:49,015.015 INFO    ] No existing commands found in stream
[2026-06-13 17:58:54,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:58:54,033.033 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 17:58:55,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:58:55,659.659 INFO    ] Checking for system updates...
[2026-06-13 17:58:55,680.680 INFO    ] 200
[2026-06-13 17:58:55,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:55,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:55,713.713 INFO    ] No update needed
[2026-06-13 17:58:55,714.714 INFO    ] Checking for camera pi updates...
[2026-06-13 17:58:55,734.734 INFO    ] 200
[2026-06-13 17:58:55,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:58:55,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:58:55,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:58:55,797.797 INFO    ] No camera update needed
[2026-06-13 17:58:55,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:58:55,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:58:55,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:58:55,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:58:57,845.845 INFO    ] ================================================
[2026-06-13 17:58:57,860.860 INFO    ] Launching Daemon at Sat Jun 13 17:58:57 IST 2026
[2026-06-13 17:58:57,871.871 INFO    ] ================================================
[2026-06-13 17:58:58,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:58:58
[2026-06-13 17:58:58,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:58:58,646.646 INFO    ] Initializing speech engine...
[2026-06-13 17:58:58,651.651 INFO    ] 2026-06-13 17:58:58
[2026-06-13 17:58:58,869.869 INFO    ] 2026-06-13 17:58:58
[2026-06-13 17:58:58,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:58:59,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:58:59,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:58:59,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:58:59,289.289 INFO    ] time= 13/06/2026 17:58:59
[2026-06-13 17:58:59,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:58:59,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:58:59,391.391 INFO    ] No existing commands found in stream
[2026-06-13 17:59:04,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:04,403.403 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 17:59:06,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 17:59:06,913.913 INFO    ] Checking for system updates...
[2026-06-13 17:59:06,935.935 INFO    ] 200
[2026-06-13 17:59:06,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:06,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:06,968.968 INFO    ] No update needed
[2026-06-13 17:59:06,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:06,989.989 INFO    ] 200
[2026-06-13 17:59:06,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:07,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:07,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:07,052.052 INFO    ] No camera update needed
[2026-06-13 17:59:07,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:07,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:07,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:07,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:59:09,101.101 INFO    ] ================================================
[2026-06-13 17:59:09,116.116 INFO    ] Launching Daemon at Sat Jun 13 17:59:09 IST 2026
[2026-06-13 17:59:09,127.127 INFO    ] ================================================
[2026-06-13 17:59:09,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:59:09
[2026-06-13 17:59:09,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:59:09,994.994 INFO    ] Initializing speech engine...
[2026-06-13 17:59:09,998.998 INFO    ] 2026-06-13 17:59:09
[2026-06-13 17:59:10,207.207 INFO    ] 2026-06-13 17:59:10
[2026-06-13 17:59:10,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:59:10,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:59:10,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:59:10,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:59:10,630.630 INFO    ] time= 13/06/2026 17:59:10
[2026-06-13 17:59:10,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:59:10,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:59:10,780.780 INFO    ] No existing commands found in stream
[2026-06-13 17:59:15,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:15,794.794 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 17:59:16,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 17:59:16,374.374 INFO    ] Checking for system updates...
[2026-06-13 17:59:16,396.396 INFO    ] 200
[2026-06-13 17:59:16,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:16,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:16,433.433 INFO    ] No update needed
[2026-06-13 17:59:16,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:16,455.455 INFO    ] 200
[2026-06-13 17:59:16,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:16,481.481 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:16,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:16,525.525 INFO    ] No camera update needed
[2026-06-13 17:59:16,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:16,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:16,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:16,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:59:18,573.573 INFO    ] ================================================
[2026-06-13 17:59:18,589.589 INFO    ] Launching Daemon at Sat Jun 13 17:59:18 IST 2026
[2026-06-13 17:59:18,600.600 INFO    ] ================================================
[2026-06-13 17:59:19,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:59:19
[2026-06-13 17:59:19,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:59:19,888.888 INFO    ] Initializing speech engine...
[2026-06-13 17:59:19,893.893 INFO    ] 2026-06-13 17:59:19
[2026-06-13 17:59:20,096.096 INFO    ] 2026-06-13 17:59:20
[2026-06-13 17:59:20,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:59:20,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:59:20,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:59:20,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:59:20,514.514 INFO    ] time= 13/06/2026 17:59:20
[2026-06-13 17:59:20,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:59:20,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:59:20,610.610 INFO    ] No existing commands found in stream
[2026-06-13 17:59:25,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:25,622.622 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 17:59:28,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:59:28,354.354 INFO    ] Checking for system updates...
[2026-06-13 17:59:28,375.375 INFO    ] 200
[2026-06-13 17:59:28,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:28,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:28,410.410 INFO    ] No update needed
[2026-06-13 17:59:28,412.412 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:28,431.431 INFO    ] 200
[2026-06-13 17:59:28,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:28,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:28,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:28,495.495 INFO    ] No camera update needed
[2026-06-13 17:59:28,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:28,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:28,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:59:30,545.545 INFO    ] ================================================
[2026-06-13 17:59:30,560.560 INFO    ] Launching Daemon at Sat Jun 13 17:59:30 IST 2026
[2026-06-13 17:59:30,571.571 INFO    ] ================================================
[2026-06-13 17:59:30,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:59:30
[2026-06-13 17:59:31,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:59:31,497.497 INFO    ] Initializing speech engine...
[2026-06-13 17:59:31,503.503 INFO    ] 2026-06-13 17:59:31
[2026-06-13 17:59:31,728.728 INFO    ] 2026-06-13 17:59:31
[2026-06-13 17:59:31,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:59:31,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:59:31,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:59:32,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:59:32,161.161 INFO    ] time= 13/06/2026 17:59:32
[2026-06-13 17:59:32,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:59:32,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:59:32,258.258 INFO    ] No existing commands found in stream
[2026-06-13 17:59:37,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:37,271.271 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 17:59:38,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 17:59:38,323.323 INFO    ] Checking for system updates...
[2026-06-13 17:59:38,345.345 INFO    ] 200
[2026-06-13 17:59:38,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:38,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:38,382.382 INFO    ] No update needed
[2026-06-13 17:59:38,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:38,403.403 INFO    ] 200
[2026-06-13 17:59:38,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:38,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:38,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 17:59:38,470.470 INFO    ] No camera update needed
[2026-06-13 17:59:38,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:38,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:38,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:38,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:59:40,520.520 INFO    ] ================================================
[2026-06-13 17:59:40,535.535 INFO    ] Launching Daemon at Sat Jun 13 17:59:40 IST 2026
[2026-06-13 17:59:40,546.546 INFO    ] ================================================
[2026-06-13 17:59:40,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:59:40
[2026-06-13 17:59:41,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:59:41,417.417 INFO    ] Initializing speech engine...
[2026-06-13 17:59:41,422.422 INFO    ] 2026-06-13 17:59:41
[2026-06-13 17:59:41,628.628 INFO    ] 2026-06-13 17:59:41
[2026-06-13 17:59:41,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:59:41,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:59:41,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:59:41,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:59:42,040.040 INFO    ] time= 13/06/2026 17:59:41
[2026-06-13 17:59:42,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:59:42,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:59:42,145.145 INFO    ] No existing commands found in stream
[2026-06-13 17:59:47,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:47,163.163 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 17:59:49,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 17:59:49,143.143 INFO    ] Checking for system updates...
[2026-06-13 17:59:49,164.164 INFO    ] 200
[2026-06-13 17:59:49,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:49,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:49,198.198 INFO    ] No update needed
[2026-06-13 17:59:49,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:49,220.220 INFO    ] 200
[2026-06-13 17:59:49,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:49,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:49,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:49,283.283 INFO    ] No camera update needed
[2026-06-13 17:59:49,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:49,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:49,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:49,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 17:59:51,331.331 INFO    ] ================================================
[2026-06-13 17:59:51,351.351 INFO    ] Launching Daemon at Sat Jun 13 17:59:51 IST 2026
[2026-06-13 17:59:51,363.363 INFO    ] ================================================
[2026-06-13 17:59:51,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 17:59:51
[2026-06-13 17:59:52,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 17:59:52,254.254 INFO    ] Initializing speech engine...
[2026-06-13 17:59:52,260.260 INFO    ] 2026-06-13 17:59:52
[2026-06-13 17:59:52,466.466 INFO    ] 2026-06-13 17:59:52
[2026-06-13 17:59:52,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 17:59:52,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 17:59:52,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 17:59:52,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 17:59:52,881.881 INFO    ] time= 13/06/2026 17:59:52
[2026-06-13 17:59:52,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 17:59:52,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-13 17:59:52,981.981 INFO    ] No existing commands found in stream
[2026-06-13 17:59:57,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 17:59:57,993.993 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 17:59:59,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 17:59:59,373.373 INFO    ] Checking for system updates...
[2026-06-13 17:59:59,394.394 INFO    ] 200
[2026-06-13 17:59:59,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:59,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:59,428.428 INFO    ] No update needed
[2026-06-13 17:59:59,430.430 INFO    ] Checking for camera pi updates...
[2026-06-13 17:59:59,450.450 INFO    ] 200
[2026-06-13 17:59:59,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 17:59:59,475.475 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 17:59:59,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 17:59:59,518.518 INFO    ] No camera update needed
[2026-06-13 17:59:59,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 17:59:59,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 17:59:59,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 17:59:59,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:01,565.565 INFO    ] ================================================
[2026-06-13 18:00:01,580.580 INFO    ] Launching Daemon at Sat Jun 13 18:00:01 IST 2026
[2026-06-13 18:00:01,591.591 INFO    ] ================================================
[2026-06-13 18:00:01,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:01
[2026-06-13 18:00:04,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:05,983.983 INFO    ] Initializing speech engine...
[2026-06-13 18:00:05,998.998 INFO    ] 2026-06-13 18:00:05
[2026-06-13 18:00:06,448.448 INFO    ] 2026-06-13 18:00:06
[2026-06-13 18:00:06,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:06,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:06,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:06,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:06,872.872 INFO    ] time= 13/06/2026 18:00:06
[2026-06-13 18:00:06,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:06,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:07,037.037 INFO    ] No existing commands found in stream
[2026-06-13 18:00:12,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:00:12,052.052 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 18:00:13,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:00:13,072.072 INFO    ] Checking for system updates...
[2026-06-13 18:00:13,093.093 INFO    ] 200
[2026-06-13 18:00:13,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:13,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:00:13,129.129 INFO    ] No update needed
[2026-06-13 18:00:13,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 18:00:13,150.150 INFO    ] 200
[2026-06-13 18:00:13,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:13,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:00:13,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:00:13,315.315 INFO    ] No camera update needed
[2026-06-13 18:00:13,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:00:13,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:00:13,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:00:13,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:15,363.363 INFO    ] ================================================
[2026-06-13 18:00:15,382.382 INFO    ] Launching Daemon at Sat Jun 13 18:00:15 IST 2026
[2026-06-13 18:00:15,392.392 INFO    ] ================================================
[2026-06-13 18:00:15,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:15
[2026-06-13 18:00:16,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:16,236.236 INFO    ] Initializing speech engine...
[2026-06-13 18:00:16,243.243 INFO    ] 2026-06-13 18:00:16
[2026-06-13 18:00:16,450.450 INFO    ] 2026-06-13 18:00:16
[2026-06-13 18:00:16,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:16,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:16,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:16,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:16,851.851 INFO    ] time= 13/06/2026 18:00:16
[2026-06-13 18:00:16,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:16,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:17,003.003 INFO    ] No existing commands found in stream
[2026-06-13 18:00:22,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:00:22,016.016 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 18:00:25,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:00:25,041.041 INFO    ] Checking for system updates...
[2026-06-13 18:00:25,061.061 INFO    ] 200
[2026-06-13 18:00:25,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:25,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:25,094.094 INFO    ] No update needed
[2026-06-13 18:00:25,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 18:00:25,115.115 INFO    ] 200
[2026-06-13 18:00:25,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:25,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:00:25,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:25,177.177 INFO    ] No camera update needed
[2026-06-13 18:00:25,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:00:25,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:00:25,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:00:25,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:27,224.224 INFO    ] ================================================
[2026-06-13 18:00:27,240.240 INFO    ] Launching Daemon at Sat Jun 13 18:00:27 IST 2026
[2026-06-13 18:00:27,252.252 INFO    ] ================================================
[2026-06-13 18:00:27,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:27
[2026-06-13 18:00:27,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:28,106.106 INFO    ] Initializing speech engine...
[2026-06-13 18:00:28,117.117 INFO    ] 2026-06-13 18:00:28
[2026-06-13 18:00:28,326.326 INFO    ] 2026-06-13 18:00:28
[2026-06-13 18:00:28,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:28,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:28,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:28,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:28,734.734 INFO    ] time= 13/06/2026 18:00:28
[2026-06-13 18:00:28,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:28,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:28,851.851 INFO    ] No existing commands found in stream
[2026-06-13 18:00:33,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:00:33,865.865 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 18:00:34,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:00:34,578.578 INFO    ] Checking for system updates...
[2026-06-13 18:00:34,599.599 INFO    ] 200
[2026-06-13 18:00:34,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:34,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:00:34,636.636 INFO    ] No update needed
[2026-06-13 18:00:34,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 18:00:34,658.658 INFO    ] 200
[2026-06-13 18:00:34,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:34,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:00:34,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:00:34,724.724 INFO    ] No camera update needed
[2026-06-13 18:00:34,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:00:34,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:00:34,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:00:34,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:36,774.774 INFO    ] ================================================
[2026-06-13 18:00:36,790.790 INFO    ] Launching Daemon at Sat Jun 13 18:00:36 IST 2026
[2026-06-13 18:00:36,801.801 INFO    ] ================================================
[2026-06-13 18:00:37,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:37
[2026-06-13 18:00:37,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:37,606.606 INFO    ] Initializing speech engine...
[2026-06-13 18:00:37,611.611 INFO    ] 2026-06-13 18:00:37
[2026-06-13 18:00:37,840.840 INFO    ] 2026-06-13 18:00:37
[2026-06-13 18:00:37,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:38,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:38,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:38,244.244 INFO    ] time= 13/06/2026 18:00:38
[2026-06-13 18:00:38,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:38,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:38,396.396 INFO    ] No existing commands found in stream
[2026-06-13 18:00:43,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:00:43,408.408 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 18:00:44,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:00:44,753.753 INFO    ] Checking for system updates...
[2026-06-13 18:00:44,773.773 INFO    ] 200
[2026-06-13 18:00:44,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:44,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:44,807.807 INFO    ] No update needed
[2026-06-13 18:00:44,809.809 INFO    ] Checking for camera pi updates...
[2026-06-13 18:00:44,829.829 INFO    ] 200
[2026-06-13 18:00:44,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:44,855.855 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:00:44,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:44,897.897 INFO    ] No camera update needed
[2026-06-13 18:00:44,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:00:44,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:00:44,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:00:44,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:46,949.949 INFO    ] ================================================
[2026-06-13 18:00:46,965.965 INFO    ] Launching Daemon at Sat Jun 13 18:00:46 IST 2026
[2026-06-13 18:00:46,976.976 INFO    ] ================================================
[2026-06-13 18:00:47,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:47
[2026-06-13 18:00:47,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:47,772.772 INFO    ] Initializing speech engine...
[2026-06-13 18:00:47,777.777 INFO    ] 2026-06-13 18:00:47
[2026-06-13 18:00:47,982.982 INFO    ] 2026-06-13 18:00:47
[2026-06-13 18:00:48,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:48,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:48,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:48,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:48,396.396 INFO    ] time= 13/06/2026 18:00:48
[2026-06-13 18:00:48,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:48,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:48,499.499 INFO    ] No existing commands found in stream
[2026-06-13 18:00:53,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:00:53,513.513 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 18:00:55,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:00:55,646.646 INFO    ] Checking for system updates...
[2026-06-13 18:00:55,667.667 INFO    ] 200
[2026-06-13 18:00:55,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:55,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:55,703.703 INFO    ] No update needed
[2026-06-13 18:00:55,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 18:00:55,723.723 INFO    ] 200
[2026-06-13 18:00:55,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:00:55,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:00:55,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:00:55,790.790 INFO    ] No camera update needed
[2026-06-13 18:00:55,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:00:55,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:00:55,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:00:55,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:00:57,839.839 INFO    ] ================================================
[2026-06-13 18:00:57,855.855 INFO    ] Launching Daemon at Sat Jun 13 18:00:57 IST 2026
[2026-06-13 18:00:57,873.873 INFO    ] ================================================
[2026-06-13 18:00:58,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:00:58
[2026-06-13 18:00:58,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:00:58,685.685 INFO    ] Initializing speech engine...
[2026-06-13 18:00:58,694.694 INFO    ] 2026-06-13 18:00:58
[2026-06-13 18:00:58,900.900 INFO    ] 2026-06-13 18:00:58
[2026-06-13 18:00:58,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:00:59,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:00:59,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:00:59,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:00:59,331.331 INFO    ] time= 13/06/2026 18:00:59
[2026-06-13 18:00:59,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:00:59,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:00:59,484.484 INFO    ] No existing commands found in stream
[2026-06-13 18:01:04,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:01:04,512.512 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 18:01:06,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:01:06,814.814 INFO    ] Checking for system updates...
[2026-06-13 18:01:06,834.834 INFO    ] 200
[2026-06-13 18:01:06,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:06,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:06,867.867 INFO    ] No update needed
[2026-06-13 18:01:06,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 18:01:06,889.889 INFO    ] 200
[2026-06-13 18:01:06,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:06,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:01:06,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:06,968.968 INFO    ] No camera update needed
[2026-06-13 18:01:06,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:01:06,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:01:06,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:01:06,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:01:09,016.016 INFO    ] ================================================
[2026-06-13 18:01:09,032.032 INFO    ] Launching Daemon at Sat Jun 13 18:01:09 IST 2026
[2026-06-13 18:01:09,044.044 INFO    ] ================================================
[2026-06-13 18:01:09,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:01:09
[2026-06-13 18:01:09,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:01:09,845.845 INFO    ] Initializing speech engine...
[2026-06-13 18:01:09,850.850 INFO    ] 2026-06-13 18:01:09
[2026-06-13 18:01:10,054.054 INFO    ] 2026-06-13 18:01:10
[2026-06-13 18:01:10,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:01:10,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:01:10,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:01:10,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:01:10,466.466 INFO    ] time= 13/06/2026 18:01:10
[2026-06-13 18:01:10,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:01:10,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:01:10,572.572 INFO    ] No existing commands found in stream
[2026-06-13 18:01:15,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:01:15,589.589 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 18:01:19,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:01:19,893.893 INFO    ] Checking for system updates...
[2026-06-13 18:01:19,914.914 INFO    ] 200
[2026-06-13 18:01:19,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:19,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:19,950.950 INFO    ] No update needed
[2026-06-13 18:01:19,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 18:01:19,971.971 INFO    ] 200
[2026-06-13 18:01:19,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:19,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:01:20,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:20,034.034 INFO    ] No camera update needed
[2026-06-13 18:01:20,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:01:20,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:01:20,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:01:20,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:01:22,084.084 INFO    ] ================================================
[2026-06-13 18:01:22,100.100 INFO    ] Launching Daemon at Sat Jun 13 18:01:22 IST 2026
[2026-06-13 18:01:22,111.111 INFO    ] ================================================
[2026-06-13 18:01:22,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:01:22
[2026-06-13 18:01:22,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:01:22,964.964 INFO    ] Initializing speech engine...
[2026-06-13 18:01:22,970.970 INFO    ] 2026-06-13 18:01:22
[2026-06-13 18:01:23,180.180 INFO    ] 2026-06-13 18:01:23
[2026-06-13 18:01:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:01:23,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:01:23,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:01:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:01:23,601.601 INFO    ] time= 13/06/2026 18:01:23
[2026-06-13 18:01:23,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:01:23,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:01:23,703.703 INFO    ] No existing commands found in stream
[2026-06-13 18:01:28,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:01:28,715.715 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 18:01:30,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:01:30,925.925 INFO    ] Checking for system updates...
[2026-06-13 18:01:30,946.946 INFO    ] 200
[2026-06-13 18:01:30,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:30,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:01:30,981.981 INFO    ] No update needed
[2026-06-13 18:01:30,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 18:01:31,002.002 INFO    ] 200
[2026-06-13 18:01:31,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:31,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:01:31,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:01:31,067.067 INFO    ] No camera update needed
[2026-06-13 18:01:31,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:01:31,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:01:31,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:01:31,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:01:33,116.116 INFO    ] ================================================
[2026-06-13 18:01:33,132.132 INFO    ] Launching Daemon at Sat Jun 13 18:01:33 IST 2026
[2026-06-13 18:01:33,143.143 INFO    ] ================================================
[2026-06-13 18:01:33,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:01:33
[2026-06-13 18:01:33,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:01:34,005.005 INFO    ] Initializing speech engine...
[2026-06-13 18:01:34,015.015 INFO    ] 2026-06-13 18:01:34
[2026-06-13 18:01:34,223.223 INFO    ] 2026-06-13 18:01:34
[2026-06-13 18:01:34,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:01:34,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:01:34,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:01:34,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:01:34,643.643 INFO    ] time= 13/06/2026 18:01:34
[2026-06-13 18:01:34,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:01:34,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:01:34,744.744 INFO    ] No existing commands found in stream
[2026-06-13 18:01:39,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:01:39,762.762 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 18:01:41,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:01:41,492.492 INFO    ] Checking for system updates...
[2026-06-13 18:01:41,512.512 INFO    ] 200
[2026-06-13 18:01:41,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:41,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:01:41,546.546 INFO    ] No update needed
[2026-06-13 18:01:41,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 18:01:41,567.567 INFO    ] 200
[2026-06-13 18:01:41,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:41,594.594 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:01:41,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:41,642.642 INFO    ] No camera update needed
[2026-06-13 18:01:41,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:01:41,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:01:41,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:01:41,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:01:43,690.690 INFO    ] ================================================
[2026-06-13 18:01:43,706.706 INFO    ] Launching Daemon at Sat Jun 13 18:01:43 IST 2026
[2026-06-13 18:01:43,717.717 INFO    ] ================================================
[2026-06-13 18:01:44,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:01:44
[2026-06-13 18:01:44,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:01:44,542.542 INFO    ] Initializing speech engine...
[2026-06-13 18:01:44,547.547 INFO    ] 2026-06-13 18:01:44
[2026-06-13 18:01:44,763.763 INFO    ] 2026-06-13 18:01:44
[2026-06-13 18:01:44,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:01:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:01:44,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:01:45,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:01:45,198.198 INFO    ] time= 13/06/2026 18:01:45
[2026-06-13 18:01:45,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:01:45,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:01:45,312.312 INFO    ] No existing commands found in stream
[2026-06-13 18:01:50,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:01:50,325.325 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 18:01:52,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:01:52,720.720 INFO    ] Checking for system updates...
[2026-06-13 18:01:52,740.740 INFO    ] 200
[2026-06-13 18:01:52,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:52,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:01:52,773.773 INFO    ] No update needed
[2026-06-13 18:01:52,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 18:01:52,797.797 INFO    ] 200
[2026-06-13 18:01:52,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:01:52,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:01:52,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:01:52,871.871 INFO    ] No camera update needed
[2026-06-13 18:01:52,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:01:52,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:01:52,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:01:52,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:01:54,918.918 INFO    ] ================================================
[2026-06-13 18:01:54,934.934 INFO    ] Launching Daemon at Sat Jun 13 18:01:54 IST 2026
[2026-06-13 18:01:54,945.945 INFO    ] ================================================
[2026-06-13 18:01:55,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:01:55
[2026-06-13 18:01:55,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:01:55,721.721 INFO    ] Initializing speech engine...
[2026-06-13 18:01:55,725.725 INFO    ] 2026-06-13 18:01:55
[2026-06-13 18:01:55,942.942 INFO    ] 2026-06-13 18:01:55
[2026-06-13 18:01:55,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:01:56,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:01:56,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:01:56,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:01:56,355.355 INFO    ] time= 13/06/2026 18:01:56
[2026-06-13 18:01:56,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:01:56,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:01:56,462.462 INFO    ] No existing commands found in stream
[2026-06-13 18:02:01,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:01,471.471 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 18:02:02,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:02:02,304.304 INFO    ] Checking for system updates...
[2026-06-13 18:02:02,330.330 INFO    ] 200
[2026-06-13 18:02:02,332.332 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:02,334.334 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 18:02:02,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:02,360.360 INFO    ] 200
[2026-06-13 18:02:02,361.361 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:02,363.363 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 18:02:02,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:02,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:02,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:04,405.405 INFO    ] ================================================
[2026-06-13 18:02:04,421.421 INFO    ] Launching Daemon at Sat Jun 13 18:02:04 IST 2026
[2026-06-13 18:02:04,432.432 INFO    ] ================================================
[2026-06-13 18:02:04,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:02:04
[2026-06-13 18:02:05,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:02:05,661.661 INFO    ] Initializing speech engine...
[2026-06-13 18:02:05,671.671 INFO    ] 2026-06-13 18:02:05
[2026-06-13 18:02:05,961.961 INFO    ] 2026-06-13 18:02:05
[2026-06-13 18:02:06,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:02:06,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:02:06,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:02:06,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:02:06,407.407 INFO    ] time= 13/06/2026 18:02:06
[2026-06-13 18:02:06,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:02:06,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:02:06,646.646 INFO    ] No existing commands found in stream
[2026-06-13 18:02:11,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:11,675.675 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 18:02:15,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:02:15,441.441 INFO    ] Checking for system updates...
[2026-06-13 18:02:15,463.463 INFO    ] 200
[2026-06-13 18:02:15,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:15,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:15,496.496 INFO    ] No update needed
[2026-06-13 18:02:15,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:15,520.520 INFO    ] 200
[2026-06-13 18:02:15,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:15,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:02:15,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:15,696.696 INFO    ] No camera update needed
[2026-06-13 18:02:15,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:15,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:15,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:15,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:17,745.745 INFO    ] ================================================
[2026-06-13 18:02:17,760.760 INFO    ] Launching Daemon at Sat Jun 13 18:02:17 IST 2026
[2026-06-13 18:02:17,771.771 INFO    ] ================================================
[2026-06-13 18:02:18,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:02:18
[2026-06-13 18:02:18,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:02:18,613.613 INFO    ] Initializing speech engine...
[2026-06-13 18:02:18,616.616 INFO    ] 2026-06-13 18:02:18
[2026-06-13 18:02:18,811.811 INFO    ] 2026-06-13 18:02:18
[2026-06-13 18:02:18,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:02:19,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:02:19,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:02:19,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:02:19,223.223 INFO    ] time= 13/06/2026 18:02:19
[2026-06-13 18:02:19,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:02:19,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:02:19,418.418 INFO    ] No existing commands found in stream
[2026-06-13 18:02:24,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:24,432.432 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 18:02:28,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:02:28,128.128 INFO    ] Checking for system updates...
[2026-06-13 18:02:28,150.150 INFO    ] 200
[2026-06-13 18:02:28,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:28,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:28,186.186 INFO    ] No update needed
[2026-06-13 18:02:28,187.187 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:28,207.207 INFO    ] 200
[2026-06-13 18:02:28,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:28,231.231 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:02:28,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:28,274.274 INFO    ] No camera update needed
[2026-06-13 18:02:28,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:28,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:28,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:28,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:30,322.322 INFO    ] ================================================
[2026-06-13 18:02:30,338.338 INFO    ] Launching Daemon at Sat Jun 13 18:02:30 IST 2026
[2026-06-13 18:02:30,349.349 INFO    ] ================================================
[2026-06-13 18:02:30,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:02:30
[2026-06-13 18:02:31,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:02:31,215.215 INFO    ] Initializing speech engine...
[2026-06-13 18:02:31,219.219 INFO    ] 2026-06-13 18:02:31
[2026-06-13 18:02:31,439.439 INFO    ] 2026-06-13 18:02:31
[2026-06-13 18:02:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:02:31,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:02:31,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:02:31,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:02:31,865.865 INFO    ] time= 13/06/2026 18:02:31
[2026-06-13 18:02:31,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:02:31,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:02:31,993.993 INFO    ] No existing commands found in stream
[2026-06-13 18:02:37,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:37,008.008 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 18:02:38,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:02:38,356.356 INFO    ] Checking for system updates...
[2026-06-13 18:02:38,376.376 INFO    ] 200
[2026-06-13 18:02:38,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:38,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:38,410.410 INFO    ] No update needed
[2026-06-13 18:02:38,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:38,431.431 INFO    ] 200
[2026-06-13 18:02:38,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:38,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:02:38,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:02:38,486.486 INFO    ] No camera update needed
[2026-06-13 18:02:38,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:38,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:38,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:38,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:40,535.535 INFO    ] ================================================
[2026-06-13 18:02:40,551.551 INFO    ] Launching Daemon at Sat Jun 13 18:02:40 IST 2026
[2026-06-13 18:02:40,562.562 INFO    ] ================================================
[2026-06-13 18:02:40,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:02:40
[2026-06-13 18:02:41,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:02:41,357.357 INFO    ] Initializing speech engine...
[2026-06-13 18:02:41,361.361 INFO    ] 2026-06-13 18:02:41
[2026-06-13 18:02:41,569.569 INFO    ] 2026-06-13 18:02:41
[2026-06-13 18:02:41,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:02:41,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:02:41,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:02:41,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:02:42,001.001 INFO    ] time= 13/06/2026 18:02:41
[2026-06-13 18:02:42,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:02:42,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:02:42,149.149 INFO    ] No existing commands found in stream
[2026-06-13 18:02:47,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:47,163.163 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 18:02:47,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:02:47,712.712 INFO    ] Checking for system updates...
[2026-06-13 18:02:47,733.733 INFO    ] 200
[2026-06-13 18:02:47,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:47,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:02:47,765.765 INFO    ] No update needed
[2026-06-13 18:02:47,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:47,787.787 INFO    ] 200
[2026-06-13 18:02:47,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:47,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:02:47,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:02:47,850.850 INFO    ] No camera update needed
[2026-06-13 18:02:47,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:47,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:47,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:47,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:49,898.898 INFO    ] ================================================
[2026-06-13 18:02:49,913.913 INFO    ] Launching Daemon at Sat Jun 13 18:02:49 IST 2026
[2026-06-13 18:02:49,925.925 INFO    ] ================================================
[2026-06-13 18:02:50,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:02:50
[2026-06-13 18:02:50,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:02:50,807.807 INFO    ] Initializing speech engine...
[2026-06-13 18:02:50,813.813 INFO    ] 2026-06-13 18:02:50
[2026-06-13 18:02:51,020.020 INFO    ] 2026-06-13 18:02:51
[2026-06-13 18:02:51,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:02:51,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:02:51,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:02:51,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:02:51,438.438 INFO    ] time= 13/06/2026 18:02:51
[2026-06-13 18:02:51,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:02:51,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:02:51,535.535 INFO    ] No existing commands found in stream
[2026-06-13 18:02:56,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:02:56,548.548 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 18:02:57,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:02:57,739.739 INFO    ] Checking for system updates...
[2026-06-13 18:02:57,760.760 INFO    ] 200
[2026-06-13 18:02:57,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:57,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:02:57,797.797 INFO    ] No update needed
[2026-06-13 18:02:57,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 18:02:57,820.820 INFO    ] 200
[2026-06-13 18:02:57,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:02:57,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:02:57,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:02:57,891.891 INFO    ] No camera update needed
[2026-06-13 18:02:57,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:02:57,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:02:57,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:02:57,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:02:59,940.940 INFO    ] ================================================
[2026-06-13 18:02:59,956.956 INFO    ] Launching Daemon at Sat Jun 13 18:02:59 IST 2026
[2026-06-13 18:02:59,967.967 INFO    ] ================================================
[2026-06-13 18:03:00,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:03:00
[2026-06-13 18:03:00,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:03:00,759.759 INFO    ] Initializing speech engine...
[2026-06-13 18:03:00,772.772 INFO    ] 2026-06-13 18:03:00
[2026-06-13 18:03:00,993.993 INFO    ] 2026-06-13 18:03:00
[2026-06-13 18:03:01,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:03:01,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:03:01,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:03:01,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:03:01,402.402 INFO    ] time= 13/06/2026 18:03:01
[2026-06-13 18:03:01,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:03:01,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:03:01,509.509 INFO    ] No existing commands found in stream
[2026-06-13 18:03:06,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:03:06,529.529 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 18:03:10,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:03:10,373.373 INFO    ] Checking for system updates...
[2026-06-13 18:03:10,395.395 INFO    ] 200
[2026-06-13 18:03:10,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:10,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:10,431.431 INFO    ] No update needed
[2026-06-13 18:03:10,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 18:03:10,454.454 INFO    ] 200
[2026-06-13 18:03:10,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:10,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:03:10,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:10,527.527 INFO    ] No camera update needed
[2026-06-13 18:03:10,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:03:10,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:03:10,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:03:10,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:03:12,578.578 INFO    ] ================================================
[2026-06-13 18:03:12,593.593 INFO    ] Launching Daemon at Sat Jun 13 18:03:12 IST 2026
[2026-06-13 18:03:12,604.604 INFO    ] ================================================
[2026-06-13 18:03:12,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:03:12
[2026-06-13 18:03:13,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:03:13,402.402 INFO    ] Initializing speech engine...
[2026-06-13 18:03:13,414.414 INFO    ] 2026-06-13 18:03:13
[2026-06-13 18:03:13,619.619 INFO    ] 2026-06-13 18:03:13
[2026-06-13 18:03:13,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:03:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:03:13,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:03:13,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:03:14,023.023 INFO    ] time= 13/06/2026 18:03:13
[2026-06-13 18:03:14,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:03:14,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:03:14,132.132 INFO    ] No existing commands found in stream
[2026-06-13 18:03:19,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:03:19,149.149 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 18:03:23,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:03:23,308.308 INFO    ] Checking for system updates...
[2026-06-13 18:03:23,329.329 INFO    ] 200
[2026-06-13 18:03:23,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:23,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:23,365.365 INFO    ] No update needed
[2026-06-13 18:03:23,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 18:03:23,386.386 INFO    ] 200
[2026-06-13 18:03:23,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:23,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:03:23,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:23,455.455 INFO    ] No camera update needed
[2026-06-13 18:03:23,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:03:23,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:03:23,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:03:23,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:03:25,505.505 INFO    ] ================================================
[2026-06-13 18:03:25,520.520 INFO    ] Launching Daemon at Sat Jun 13 18:03:25 IST 2026
[2026-06-13 18:03:25,531.531 INFO    ] ================================================
[2026-06-13 18:03:25,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:03:25
[2026-06-13 18:03:26,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:03:26,387.387 INFO    ] Initializing speech engine...
[2026-06-13 18:03:26,392.392 INFO    ] 2026-06-13 18:03:26
[2026-06-13 18:03:26,599.599 INFO    ] 2026-06-13 18:03:26
[2026-06-13 18:03:26,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:03:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:03:26,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:03:26,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:03:26,997.997 INFO    ] time= 13/06/2026 18:03:26
[2026-06-13 18:03:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:03:27,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:03:27,120.120 INFO    ] No existing commands found in stream
[2026-06-13 18:03:32,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:03:32,135.135 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 18:03:35,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:03:35,639.639 INFO    ] Checking for system updates...
[2026-06-13 18:03:35,660.660 INFO    ] 200
[2026-06-13 18:03:35,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:35,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:35,694.694 INFO    ] No update needed
[2026-06-13 18:03:35,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 18:03:35,715.715 INFO    ] 200
[2026-06-13 18:03:35,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:35,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:03:35,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:35,780.780 INFO    ] No camera update needed
[2026-06-13 18:03:35,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:03:35,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:03:35,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:03:35,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:03:37,828.828 INFO    ] ================================================
[2026-06-13 18:03:37,844.844 INFO    ] Launching Daemon at Sat Jun 13 18:03:37 IST 2026
[2026-06-13 18:03:37,856.856 INFO    ] ================================================
[2026-06-13 18:03:38,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:03:38
[2026-06-13 18:03:38,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:03:38,652.652 INFO    ] Initializing speech engine...
[2026-06-13 18:03:38,659.659 INFO    ] 2026-06-13 18:03:38
[2026-06-13 18:03:38,876.876 INFO    ] 2026-06-13 18:03:38
[2026-06-13 18:03:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:03:39,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:03:39,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:03:39,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:03:39,247.247 INFO    ] time= 13/06/2026 18:03:39
[2026-06-13 18:03:39,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:03:39,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:03:39,434.434 INFO    ] No existing commands found in stream
[2026-06-13 18:03:44,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:03:44,447.447 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 18:03:48,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:03:48,708.708 INFO    ] Checking for system updates...
[2026-06-13 18:03:48,730.730 INFO    ] 200
[2026-06-13 18:03:48,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:48,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:48,764.764 INFO    ] No update needed
[2026-06-13 18:03:48,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 18:03:48,786.786 INFO    ] 200
[2026-06-13 18:03:48,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:03:48,811.811 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:03:48,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:03:48,853.853 INFO    ] No camera update needed
[2026-06-13 18:03:48,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:03:48,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:03:48,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:03:48,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:03:50,899.899 INFO    ] ================================================
[2026-06-13 18:03:50,914.914 INFO    ] Launching Daemon at Sat Jun 13 18:03:50 IST 2026
[2026-06-13 18:03:50,925.925 INFO    ] ================================================
[2026-06-13 18:03:51,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:03:51
[2026-06-13 18:03:51,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:03:51,720.720 INFO    ] Initializing speech engine...
[2026-06-13 18:03:51,733.733 INFO    ] 2026-06-13 18:03:51
[2026-06-13 18:03:51,988.988 INFO    ] 2026-06-13 18:03:51
[2026-06-13 18:03:52,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:03:52,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:03:52,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:03:52,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:03:52,344.344 INFO    ] time= 13/06/2026 18:03:52
[2026-06-13 18:03:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:03:52,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:03:52,523.523 INFO    ] No existing commands found in stream
[2026-06-13 18:03:57,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:03:57,533.533 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 18:04:00,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:04:00,993.993 INFO    ] Checking for system updates...
[2026-06-13 18:04:01,014.014 INFO    ] 200
[2026-06-13 18:04:01,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:01,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:04:01,047.047 INFO    ] No update needed
[2026-06-13 18:04:01,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:01,069.069 INFO    ] 200
[2026-06-13 18:04:01,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:01,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:01,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:04:01,140.140 INFO    ] No camera update needed
[2026-06-13 18:04:01,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:01,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:01,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:01,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:03,183.183 INFO    ] ================================================
[2026-06-13 18:04:03,199.199 INFO    ] Launching Daemon at Sat Jun 13 18:04:03 IST 2026
[2026-06-13 18:04:03,210.210 INFO    ] ================================================
[2026-06-13 18:04:03,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:03
[2026-06-13 18:04:03,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:03,987.987 INFO    ] Initializing speech engine...
[2026-06-13 18:04:03,995.995 INFO    ] 2026-06-13 18:04:03
[2026-06-13 18:04:04,219.219 INFO    ] 2026-06-13 18:04:04
[2026-06-13 18:04:04,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:04,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:04,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:04,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:04,631.631 INFO    ] time= 13/06/2026 18:04:04
[2026-06-13 18:04:04,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:04,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:04,771.771 INFO    ] No existing commands found in stream
[2026-06-13 18:04:09,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:04:09,784.784 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 18:04:10,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:04:10,601.601 INFO    ] Checking for system updates...
[2026-06-13 18:04:10,622.622 INFO    ] 200
[2026-06-13 18:04:10,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:10,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:10,656.656 INFO    ] No update needed
[2026-06-13 18:04:10,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:10,677.677 INFO    ] 200
[2026-06-13 18:04:10,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:10,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:10,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:10,749.749 INFO    ] No camera update needed
[2026-06-13 18:04:10,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:10,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:10,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:10,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:12,799.799 INFO    ] ================================================
[2026-06-13 18:04:12,814.814 INFO    ] Launching Daemon at Sat Jun 13 18:04:12 IST 2026
[2026-06-13 18:04:12,825.825 INFO    ] ================================================
[2026-06-13 18:04:13,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:13
[2026-06-13 18:04:13,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:13,611.611 INFO    ] Initializing speech engine...
[2026-06-13 18:04:13,619.619 INFO    ] 2026-06-13 18:04:13
[2026-06-13 18:04:13,830.830 INFO    ] 2026-06-13 18:04:13
[2026-06-13 18:04:13,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:14,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:14,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:14,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:14,245.245 INFO    ] time= 13/06/2026 18:04:14
[2026-06-13 18:04:14,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:14,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:14,495.495 INFO    ] No existing commands found in stream
[2026-06-13 18:04:19,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:04:19,513.513 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 18:04:22,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:04:22,097.097 INFO    ] Checking for system updates...
[2026-06-13 18:04:22,118.118 INFO    ] 200
[2026-06-13 18:04:22,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:22,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:04:22,152.152 INFO    ] No update needed
[2026-06-13 18:04:22,153.153 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:22,173.173 INFO    ] 200
[2026-06-13 18:04:22,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:22,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:22,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:04:22,338.338 INFO    ] No camera update needed
[2026-06-13 18:04:22,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:22,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:22,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:22,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:24,381.381 INFO    ] ================================================
[2026-06-13 18:04:24,396.396 INFO    ] Launching Daemon at Sat Jun 13 18:04:24 IST 2026
[2026-06-13 18:04:24,406.406 INFO    ] ================================================
[2026-06-13 18:04:24,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:24
[2026-06-13 18:04:25,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:25,256.256 INFO    ] Initializing speech engine...
[2026-06-13 18:04:25,262.262 INFO    ] 2026-06-13 18:04:25
[2026-06-13 18:04:25,472.472 INFO    ] 2026-06-13 18:04:25
[2026-06-13 18:04:25,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:25,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:25,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:25,875.875 INFO    ] time= 13/06/2026 18:04:25
[2026-06-13 18:04:25,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:26,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:26,165.165 INFO    ] No existing commands found in stream
[2026-06-13 18:04:31,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:04:31,200.200 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 18:04:32,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:04:32,781.781 INFO    ] Checking for system updates...
[2026-06-13 18:04:32,802.802 INFO    ] 200
[2026-06-13 18:04:32,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:32,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:32,838.838 INFO    ] No update needed
[2026-06-13 18:04:32,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:32,859.859 INFO    ] 200
[2026-06-13 18:04:32,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:32,884.884 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:32,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:32,946.946 INFO    ] No camera update needed
[2026-06-13 18:04:32,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:32,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:32,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:32,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:35,996.996 INFO    ] ================================================
[2026-06-13 18:04:35,011.011 INFO    ] Launching Daemon at Sat Jun 13 18:04:35 IST 2026
[2026-06-13 18:04:35,022.022 INFO    ] ================================================
[2026-06-13 18:04:35,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:35
[2026-06-13 18:04:35,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:35,861.861 INFO    ] Initializing speech engine...
[2026-06-13 18:04:35,872.872 INFO    ] 2026-06-13 18:04:35
[2026-06-13 18:04:36,088.088 INFO    ] 2026-06-13 18:04:36
[2026-06-13 18:04:36,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:36,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:36,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:36,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:36,519.519 INFO    ] time= 13/06/2026 18:04:36
[2026-06-13 18:04:36,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:36,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:36,639.639 INFO    ] No existing commands found in stream
[2026-06-13 18:04:41,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:04:41,653.653 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 18:04:45,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:04:45,397.397 INFO    ] Checking for system updates...
[2026-06-13 18:04:45,418.418 INFO    ] 200
[2026-06-13 18:04:45,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:45,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:45,454.454 INFO    ] No update needed
[2026-06-13 18:04:45,455.455 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:45,474.474 INFO    ] 200
[2026-06-13 18:04:45,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:45,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:45,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:45,527.527 INFO    ] No camera update needed
[2026-06-13 18:04:45,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:45,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:45,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:45,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:47,573.573 INFO    ] ================================================
[2026-06-13 18:04:47,588.588 INFO    ] Launching Daemon at Sat Jun 13 18:04:47 IST 2026
[2026-06-13 18:04:47,599.599 INFO    ] ================================================
[2026-06-13 18:04:47,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:47
[2026-06-13 18:04:48,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:48,393.393 INFO    ] Initializing speech engine...
[2026-06-13 18:04:48,405.405 INFO    ] 2026-06-13 18:04:48
[2026-06-13 18:04:48,621.621 INFO    ] 2026-06-13 18:04:48
[2026-06-13 18:04:48,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:48,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:48,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:48,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:48,885.885 INFO    ] time= 13/06/2026 18:04:48
[2026-06-13 18:04:48,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:48,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:48,972.972 INFO    ] No existing commands found in stream
[2026-06-13 18:04:54,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:04:54,009.009 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 18:04:55,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:04:55,032.032 INFO    ] Checking for system updates...
[2026-06-13 18:04:55,053.053 INFO    ] 200
[2026-06-13 18:04:55,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:55,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:55,086.086 INFO    ] No update needed
[2026-06-13 18:04:55,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 18:04:55,110.110 INFO    ] 200
[2026-06-13 18:04:55,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:04:55,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:04:55,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:04:55,179.179 INFO    ] No camera update needed
[2026-06-13 18:04:55,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:04:55,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:04:55,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:04:55,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:04:57,225.225 INFO    ] ================================================
[2026-06-13 18:04:57,242.242 INFO    ] Launching Daemon at Sat Jun 13 18:04:57 IST 2026
[2026-06-13 18:04:57,253.253 INFO    ] ================================================
[2026-06-13 18:04:57,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:04:57
[2026-06-13 18:04:57,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:04:58,038.038 INFO    ] Initializing speech engine...
[2026-06-13 18:04:58,051.051 INFO    ] 2026-06-13 18:04:58
[2026-06-13 18:04:58,269.269 INFO    ] 2026-06-13 18:04:58
[2026-06-13 18:04:58,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:04:58,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:04:58,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:04:58,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:04:58,704.704 INFO    ] time= 13/06/2026 18:04:58
[2026-06-13 18:04:58,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:04:58,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:04:58,824.824 INFO    ] No existing commands found in stream
[2026-06-13 18:05:03,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:03,837.837 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 18:05:04,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:05:04,580.580 INFO    ] Checking for system updates...
[2026-06-13 18:05:04,601.601 INFO    ] 200
[2026-06-13 18:05:04,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:04,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:05:04,637.637 INFO    ] No update needed
[2026-06-13 18:05:04,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 18:05:04,658.658 INFO    ] 200
[2026-06-13 18:05:04,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:04,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:05:04,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:05:04,723.723 INFO    ] No camera update needed
[2026-06-13 18:05:04,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:05:04,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:05:04,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:05:04,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:05:06,770.770 INFO    ] ================================================
[2026-06-13 18:05:06,785.785 INFO    ] Launching Daemon at Sat Jun 13 18:05:06 IST 2026
[2026-06-13 18:05:06,796.796 INFO    ] ================================================
[2026-06-13 18:05:07,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:05:07
[2026-06-13 18:05:07,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:05:07,596.596 INFO    ] Initializing speech engine...
[2026-06-13 18:05:07,608.608 INFO    ] 2026-06-13 18:05:07
[2026-06-13 18:05:07,817.817 INFO    ] 2026-06-13 18:05:07
[2026-06-13 18:05:07,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:05:07,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:05:08,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:05:08,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:05:08,218.218 INFO    ] time= 13/06/2026 18:05:08
[2026-06-13 18:05:08,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:05:08,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:05:08,334.334 INFO    ] No existing commands found in stream
[2026-06-13 18:05:13,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:13,343.343 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 18:05:14,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:05:14,749.749 INFO    ] Checking for system updates...
[2026-06-13 18:05:14,770.770 INFO    ] 200
[2026-06-13 18:05:14,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:14,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:14,806.806 INFO    ] No update needed
[2026-06-13 18:05:14,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 18:05:14,827.827 INFO    ] 200
[2026-06-13 18:05:14,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:14,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:05:14,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:14,891.891 INFO    ] No camera update needed
[2026-06-13 18:05:14,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:05:14,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:05:14,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:05:14,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:05:16,938.938 INFO    ] ================================================
[2026-06-13 18:05:16,953.953 INFO    ] Launching Daemon at Sat Jun 13 18:05:16 IST 2026
[2026-06-13 18:05:16,964.964 INFO    ] ================================================
[2026-06-13 18:05:17,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:05:17
[2026-06-13 18:05:17,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:05:17,745.745 INFO    ] Initializing speech engine...
[2026-06-13 18:05:17,753.753 INFO    ] 2026-06-13 18:05:17
[2026-06-13 18:05:17,968.968 INFO    ] 2026-06-13 18:05:17
[2026-06-13 18:05:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:05:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:05:18,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:05:18,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:05:18,371.371 INFO    ] time= 13/06/2026 18:05:18
[2026-06-13 18:05:18,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:05:18,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:05:18,494.494 INFO    ] No existing commands found in stream
[2026-06-13 18:05:23,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:23,506.506 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 18:05:27,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:05:27,030.030 INFO    ] Checking for system updates...
[2026-06-13 18:05:27,051.051 INFO    ] 200
[2026-06-13 18:05:27,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:27,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:27,084.084 INFO    ] No update needed
[2026-06-13 18:05:27,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 18:05:27,107.107 INFO    ] 200
[2026-06-13 18:05:27,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:27,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:05:27,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:27,176.176 INFO    ] No camera update needed
[2026-06-13 18:05:27,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:05:27,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:05:27,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:05:27,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:05:29,225.225 INFO    ] ================================================
[2026-06-13 18:05:29,240.240 INFO    ] Launching Daemon at Sat Jun 13 18:05:29 IST 2026
[2026-06-13 18:05:29,250.250 INFO    ] ================================================
[2026-06-13 18:05:29,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:05:29
[2026-06-13 18:05:29,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:05:30,052.052 INFO    ] Initializing speech engine...
[2026-06-13 18:05:30,064.064 INFO    ] 2026-06-13 18:05:30
[2026-06-13 18:05:30,271.271 INFO    ] 2026-06-13 18:05:30
[2026-06-13 18:05:30,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:05:30,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:05:30,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:05:30,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:05:30,676.676 INFO    ] time= 13/06/2026 18:05:30
[2026-06-13 18:05:30,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:05:30,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:05:30,786.786 INFO    ] No existing commands found in stream
[2026-06-13 18:05:35,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:35,803.803 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 18:05:39,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:05:39,090.090 INFO    ] Checking for system updates...
[2026-06-13 18:05:39,126.126 INFO    ] 200
[2026-06-13 18:05:39,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:39,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:39,185.185 INFO    ] No update needed
[2026-06-13 18:05:39,187.187 INFO    ] Checking for camera pi updates...
[2026-06-13 18:05:39,222.222 INFO    ] 200
[2026-06-13 18:05:39,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:39,259.259 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:05:39,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:05:39,296.296 INFO    ] No camera update needed
[2026-06-13 18:05:39,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:05:39,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:05:39,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:05:39,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:05:41,348.348 INFO    ] ================================================
[2026-06-13 18:05:41,363.363 INFO    ] Launching Daemon at Sat Jun 13 18:05:41 IST 2026
[2026-06-13 18:05:41,373.373 INFO    ] ================================================
[2026-06-13 18:05:41,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:05:41
[2026-06-13 18:05:42,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:05:42,154.154 INFO    ] Initializing speech engine...
[2026-06-13 18:05:42,167.167 INFO    ] 2026-06-13 18:05:42
[2026-06-13 18:05:42,374.374 INFO    ] 2026-06-13 18:05:42
[2026-06-13 18:05:42,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:05:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:05:42,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:05:42,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:05:42,791.791 INFO    ] time= 13/06/2026 18:05:42
[2026-06-13 18:05:42,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:05:42,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:05:42,887.887 INFO    ] No existing commands found in stream
[2026-06-13 18:05:47,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:47,901.901 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 18:05:50,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:05:50,725.725 INFO    ] Checking for system updates...
[2026-06-13 18:05:50,747.747 INFO    ] 200
[2026-06-13 18:05:50,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:50,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:05:50,780.780 INFO    ] No update needed
[2026-06-13 18:05:50,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 18:05:50,801.801 INFO    ] 200
[2026-06-13 18:05:50,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:05:50,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:05:50,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:05:50,864.864 INFO    ] No camera update needed
[2026-06-13 18:05:50,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:05:50,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:05:50,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:05:50,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:05:52,912.912 INFO    ] ================================================
[2026-06-13 18:05:52,927.927 INFO    ] Launching Daemon at Sat Jun 13 18:05:52 IST 2026
[2026-06-13 18:05:52,938.938 INFO    ] ================================================
[2026-06-13 18:05:53,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:05:53
[2026-06-13 18:05:53,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:05:53,735.735 INFO    ] Initializing speech engine...
[2026-06-13 18:05:53,745.745 INFO    ] 2026-06-13 18:05:53
[2026-06-13 18:05:53,950.950 INFO    ] 2026-06-13 18:05:53
[2026-06-13 18:05:53,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:05:54,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:05:54,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:05:54,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:05:54,367.367 INFO    ] time= 13/06/2026 18:05:54
[2026-06-13 18:05:54,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:05:54,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:05:54,465.465 INFO    ] No existing commands found in stream
[2026-06-13 18:05:59,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:05:59,477.477 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 18:06:03,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:06:03,392.392 INFO    ] Checking for system updates...
[2026-06-13 18:06:03,413.413 INFO    ] 200
[2026-06-13 18:06:03,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:03,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:06:03,449.449 INFO    ] No update needed
[2026-06-13 18:06:03,450.450 INFO    ] Checking for camera pi updates...
[2026-06-13 18:06:03,469.469 INFO    ] 200
[2026-06-13 18:06:03,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:03,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:06:03,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:06:03,532.532 INFO    ] No camera update needed
[2026-06-13 18:06:03,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:06:03,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:06:03,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:06:03,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:06:05,581.581 INFO    ] ================================================
[2026-06-13 18:06:05,596.596 INFO    ] Launching Daemon at Sat Jun 13 18:06:05 IST 2026
[2026-06-13 18:06:05,608.608 INFO    ] ================================================
[2026-06-13 18:06:05,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:06:05
[2026-06-13 18:06:06,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:06:06,407.407 INFO    ] Initializing speech engine...
[2026-06-13 18:06:06,412.412 INFO    ] 2026-06-13 18:06:06
[2026-06-13 18:06:06,615.615 INFO    ] 2026-06-13 18:06:06
[2026-06-13 18:06:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:06:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:06:06,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:06:06,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:06:07,032.032 INFO    ] time= 13/06/2026 18:06:06
[2026-06-13 18:06:07,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:06:07,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:06:07,138.138 INFO    ] No existing commands found in stream
[2026-06-13 18:06:12,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:06:12,158.158 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-13 18:06:14,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:06:14,532.532 INFO    ] Checking for system updates...
[2026-06-13 18:06:14,553.553 INFO    ] 200
[2026-06-13 18:06:14,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:14,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:06:14,659.659 INFO    ] No update needed
[2026-06-13 18:06:14,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 18:06:14,681.681 INFO    ] 200
[2026-06-13 18:06:14,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:14,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:06:14,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:06:14,746.746 INFO    ] No camera update needed
[2026-06-13 18:06:14,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:06:14,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:06:14,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:06:14,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:06:16,794.794 INFO    ] ================================================
[2026-06-13 18:06:16,810.810 INFO    ] Launching Daemon at Sat Jun 13 18:06:16 IST 2026
[2026-06-13 18:06:16,822.822 INFO    ] ================================================
[2026-06-13 18:06:17,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:06:17
[2026-06-13 18:06:17,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:06:17,735.735 INFO    ] Initializing speech engine...
[2026-06-13 18:06:17,750.750 INFO    ] 2026-06-13 18:06:17
[2026-06-13 18:06:18,048.048 INFO    ] 2026-06-13 18:06:18
[2026-06-13 18:06:18,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:06:18,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:06:18,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:06:18,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:06:18,386.386 INFO    ] time= 13/06/2026 18:06:18
[2026-06-13 18:06:18,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:06:18,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:06:18,498.498 INFO    ] No existing commands found in stream
[2026-06-13 18:06:23,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:06:23,516.516 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 18:06:26,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:06:26,390.390 INFO    ] Checking for system updates...
[2026-06-13 18:06:26,410.410 INFO    ] 200
[2026-06-13 18:06:26,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:26,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:06:26,443.443 INFO    ] No update needed
[2026-06-13 18:06:26,445.445 INFO    ] Checking for camera pi updates...
[2026-06-13 18:06:26,464.464 INFO    ] 200
[2026-06-13 18:06:26,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:26,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:06:26,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:06:26,639.639 INFO    ] No camera update needed
[2026-06-13 18:06:26,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:06:26,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:06:26,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:06:26,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:06:28,686.686 INFO    ] ================================================
[2026-06-13 18:06:28,702.702 INFO    ] Launching Daemon at Sat Jun 13 18:06:28 IST 2026
[2026-06-13 18:06:28,713.713 INFO    ] ================================================
[2026-06-13 18:06:29,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:06:29
[2026-06-13 18:06:29,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:06:30,153.153 INFO    ] Initializing speech engine...
[2026-06-13 18:06:30,159.159 INFO    ] 2026-06-13 18:06:30
[2026-06-13 18:06:30,406.406 INFO    ] 2026-06-13 18:06:30
[2026-06-13 18:06:30,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:06:30,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:06:30,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:06:30,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:06:30,785.785 INFO    ] time= 13/06/2026 18:06:30
[2026-06-13 18:06:30,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:06:30,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:06:30,864.864 INFO    ] No existing commands found in stream
[2026-06-13 18:06:35,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:06:35,897.897 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-13 18:06:39,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:06:39,610.610 INFO    ] Checking for system updates...
[2026-06-13 18:06:39,632.632 INFO    ] 200
[2026-06-13 18:06:39,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:39,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:06:39,665.665 INFO    ] No update needed
[2026-06-13 18:06:39,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 18:06:39,687.687 INFO    ] 200
[2026-06-13 18:06:39,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:39,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:06:39,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:06:39,759.759 INFO    ] No camera update needed
[2026-06-13 18:06:39,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:06:39,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:06:39,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:06:39,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:06:41,806.806 INFO    ] ================================================
[2026-06-13 18:06:41,821.821 INFO    ] Launching Daemon at Sat Jun 13 18:06:41 IST 2026
[2026-06-13 18:06:41,832.832 INFO    ] ================================================
[2026-06-13 18:06:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:06:42
[2026-06-13 18:06:42,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:06:42,633.633 INFO    ] Initializing speech engine...
[2026-06-13 18:06:42,643.643 INFO    ] 2026-06-13 18:06:42
[2026-06-13 18:06:42,848.848 INFO    ] 2026-06-13 18:06:42
[2026-06-13 18:06:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:06:43,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:06:43,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:06:43,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:06:43,174.174 INFO    ] time= 13/06/2026 18:06:43
[2026-06-13 18:06:43,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:06:43,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:06:43,282.282 INFO    ] No existing commands found in stream
[2026-06-13 18:06:48,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:06:48,313.313 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 18:06:51,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:06:51,119.119 INFO    ] Checking for system updates...
[2026-06-13 18:06:51,165.165 INFO    ] 200
[2026-06-13 18:06:51,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:51,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:06:51,202.202 INFO    ] No update needed
[2026-06-13 18:06:51,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 18:06:51,223.223 INFO    ] 200
[2026-06-13 18:06:51,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:06:51,250.250 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:06:51,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:06:51,291.291 INFO    ] No camera update needed
[2026-06-13 18:06:51,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:06:51,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:06:51,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:06:51,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:06:53,338.338 INFO    ] ================================================
[2026-06-13 18:06:53,354.354 INFO    ] Launching Daemon at Sat Jun 13 18:06:53 IST 2026
[2026-06-13 18:06:53,366.366 INFO    ] ================================================
[2026-06-13 18:06:53,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:06:53
[2026-06-13 18:06:54,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:06:54,247.247 INFO    ] Initializing speech engine...
[2026-06-13 18:06:54,257.257 INFO    ] 2026-06-13 18:06:54
[2026-06-13 18:06:54,469.469 INFO    ] 2026-06-13 18:06:54
[2026-06-13 18:06:54,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:06:54,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:06:54,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:06:54,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:06:54,880.880 INFO    ] time= 13/06/2026 18:06:54
[2026-06-13 18:06:54,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:06:54,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:06:54,992.992 INFO    ] No existing commands found in stream
[2026-06-13 18:07:00,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:00,020.020 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 18:07:02,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:07:02,831.831 INFO    ] Checking for system updates...
[2026-06-13 18:07:02,872.872 INFO    ] 200
[2026-06-13 18:07:02,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:02,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:07:02,941.941 INFO    ] No update needed
[2026-06-13 18:07:02,944.944 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:02,979.979 INFO    ] 200
[2026-06-13 18:07:02,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:03,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:03,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:07:03,053.053 INFO    ] No camera update needed
[2026-06-13 18:07:03,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:03,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:03,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:03,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:05,110.110 INFO    ] ================================================
[2026-06-13 18:07:05,126.126 INFO    ] Launching Daemon at Sat Jun 13 18:07:05 IST 2026
[2026-06-13 18:07:05,137.137 INFO    ] ================================================
[2026-06-13 18:07:05,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:05
[2026-06-13 18:07:05,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:05,985.985 INFO    ] Initializing speech engine...
[2026-06-13 18:07:05,991.991 INFO    ] 2026-06-13 18:07:05
[2026-06-13 18:07:06,192.192 INFO    ] 2026-06-13 18:07:06
[2026-06-13 18:07:06,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:06,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:07:06,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:07:06,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:07:06,598.598 INFO    ] time= 13/06/2026 18:07:06
[2026-06-13 18:07:06,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:07:06,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:07:06,707.707 INFO    ] No existing commands found in stream
[2026-06-13 18:07:11,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:11,721.721 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 18:07:15,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:07:15,907.907 INFO    ] Checking for system updates...
[2026-06-13 18:07:15,930.930 INFO    ] 200
[2026-06-13 18:07:15,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:15,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:15,965.965 INFO    ] No update needed
[2026-06-13 18:07:15,966.966 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:15,986.986 INFO    ] 200
[2026-06-13 18:07:15,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:16,011.011 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:16,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:16,048.048 INFO    ] No camera update needed
[2026-06-13 18:07:16,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:16,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:16,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:16,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:18,096.096 INFO    ] ================================================
[2026-06-13 18:07:18,111.111 INFO    ] Launching Daemon at Sat Jun 13 18:07:18 IST 2026
[2026-06-13 18:07:18,122.122 INFO    ] ================================================
[2026-06-13 18:07:18,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:18
[2026-06-13 18:07:18,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:18,916.916 INFO    ] Initializing speech engine...
[2026-06-13 18:07:18,926.926 INFO    ] 2026-06-13 18:07:18
[2026-06-13 18:07:19,141.141 INFO    ] 2026-06-13 18:07:19
[2026-06-13 18:07:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:19,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:07:19,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:07:19,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:07:19,515.515 INFO    ] time= 13/06/2026 18:07:19
[2026-06-13 18:07:19,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:07:19,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:07:19,672.672 INFO    ] No existing commands found in stream
[2026-06-13 18:07:24,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:24,698.698 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 18:07:25,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:07:25,309.309 INFO    ] Checking for system updates...
[2026-06-13 18:07:25,330.330 INFO    ] 200
[2026-06-13 18:07:25,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:25,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:07:25,363.363 INFO    ] No update needed
[2026-06-13 18:07:25,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:25,383.383 INFO    ] 200
[2026-06-13 18:07:25,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:25,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:25,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:25,446.446 INFO    ] No camera update needed
[2026-06-13 18:07:25,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:25,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:25,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:25,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:27,492.492 INFO    ] ================================================
[2026-06-13 18:07:27,508.508 INFO    ] Launching Daemon at Sat Jun 13 18:07:27 IST 2026
[2026-06-13 18:07:27,519.519 INFO    ] ================================================
[2026-06-13 18:07:27,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:27
[2026-06-13 18:07:28,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:28,281.281 INFO    ] Initializing speech engine...
[2026-06-13 18:07:28,285.285 INFO    ] 2026-06-13 18:07:28
[2026-06-13 18:07:28,507.507 INFO    ] 2026-06-13 18:07:28
[2026-06-13 18:07:28,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:28,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:07:28,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:07:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:07:28,918.918 INFO    ] time= 13/06/2026 18:07:28
[2026-06-13 18:07:28,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:07:28,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:07:29,023.023 INFO    ] No existing commands found in stream
[2026-06-13 18:07:34,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:34,040.040 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 18:07:34,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:07:34,882.882 INFO    ] Checking for system updates...
[2026-06-13 18:07:34,902.902 INFO    ] 200
[2026-06-13 18:07:34,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:34,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:34,937.937 INFO    ] No update needed
[2026-06-13 18:07:34,939.939 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:34,959.959 INFO    ] 200
[2026-06-13 18:07:34,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:34,985.985 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:35,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:35,020.020 INFO    ] No camera update needed
[2026-06-13 18:07:35,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:35,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:35,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:35,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:37,070.070 INFO    ] ================================================
[2026-06-13 18:07:37,086.086 INFO    ] Launching Daemon at Sat Jun 13 18:07:37 IST 2026
[2026-06-13 18:07:37,097.097 INFO    ] ================================================
[2026-06-13 18:07:37,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:37
[2026-06-13 18:07:37,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:37,906.906 INFO    ] Initializing speech engine...
[2026-06-13 18:07:37,912.912 INFO    ] 2026-06-13 18:07:37
[2026-06-13 18:07:38,117.117 INFO    ] 2026-06-13 18:07:38
[2026-06-13 18:07:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:38,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:07:38,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:07:38,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:07:38,524.524 INFO    ] time= 13/06/2026 18:07:38
[2026-06-13 18:07:38,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:07:38,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:07:38,633.633 INFO    ] No existing commands found in stream
[2026-06-13 18:07:43,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:43,646.646 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 18:07:45,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:07:45,304.304 INFO    ] Checking for system updates...
[2026-06-13 18:07:45,325.325 INFO    ] 200
[2026-06-13 18:07:45,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:45,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:07:45,359.359 INFO    ] No update needed
[2026-06-13 18:07:45,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:45,380.380 INFO    ] 200
[2026-06-13 18:07:45,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:45,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:45,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:45,447.447 INFO    ] No camera update needed
[2026-06-13 18:07:45,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:45,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:45,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:45,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:47,497.497 INFO    ] ================================================
[2026-06-13 18:07:47,513.513 INFO    ] Launching Daemon at Sat Jun 13 18:07:47 IST 2026
[2026-06-13 18:07:47,525.525 INFO    ] ================================================
[2026-06-13 18:07:47,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:47
[2026-06-13 18:07:48,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:48,309.309 INFO    ] Initializing speech engine...
[2026-06-13 18:07:48,318.318 INFO    ] 2026-06-13 18:07:48
[2026-06-13 18:07:48,530.530 INFO    ] 2026-06-13 18:07:48
[2026-06-13 18:07:48,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:48,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:07:48,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:07:48,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:07:48,861.861 INFO    ] time= 13/06/2026 18:07:48
[2026-06-13 18:07:48,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:07:48,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:07:49,050.050 INFO    ] No existing commands found in stream
[2026-06-13 18:07:54,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:07:54,063.063 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 18:07:56,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:07:56,576.576 INFO    ] Checking for system updates...
[2026-06-13 18:07:56,596.596 INFO    ] 200
[2026-06-13 18:07:56,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:56,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:56,629.629 INFO    ] No update needed
[2026-06-13 18:07:56,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 18:07:56,650.650 INFO    ] 200
[2026-06-13 18:07:56,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:07:56,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:07:56,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:07:56,717.717 INFO    ] No camera update needed
[2026-06-13 18:07:56,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:07:56,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:07:56,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:07:56,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:07:58,765.765 INFO    ] ================================================
[2026-06-13 18:07:58,780.780 INFO    ] Launching Daemon at Sat Jun 13 18:07:58 IST 2026
[2026-06-13 18:07:58,791.791 INFO    ] ================================================
[2026-06-13 18:07:59,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:07:59
[2026-06-13 18:07:59,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:07:59,607.607 INFO    ] Initializing speech engine...
[2026-06-13 18:07:59,616.616 INFO    ] 2026-06-13 18:07:59
[2026-06-13 18:07:59,824.824 INFO    ] 2026-06-13 18:07:59
[2026-06-13 18:07:59,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:07:59,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:00,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:00,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:00,226.226 INFO    ] time= 13/06/2026 18:08:00
[2026-06-13 18:08:00,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:00,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:00,342.342 INFO    ] No existing commands found in stream
[2026-06-13 18:08:05,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:08:05,356.356 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 18:08:08,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:08:08,461.461 INFO    ] Checking for system updates...
[2026-06-13 18:08:08,490.490 INFO    ] 200
[2026-06-13 18:08:08,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:08,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:08,529.529 INFO    ] No update needed
[2026-06-13 18:08:08,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 18:08:08,551.551 INFO    ] 200
[2026-06-13 18:08:08,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:08,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:08:08,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:08,614.614 INFO    ] No camera update needed
[2026-06-13 18:08:08,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:08:08,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:08:08,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:08:08,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:08:10,661.661 INFO    ] ================================================
[2026-06-13 18:08:10,676.676 INFO    ] Launching Daemon at Sat Jun 13 18:08:10 IST 2026
[2026-06-13 18:08:10,687.687 INFO    ] ================================================
[2026-06-13 18:08:11,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:08:11
[2026-06-13 18:08:11,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:08:11,469.469 INFO    ] Initializing speech engine...
[2026-06-13 18:08:11,475.475 INFO    ] 2026-06-13 18:08:11
[2026-06-13 18:08:11,678.678 INFO    ] 2026-06-13 18:08:11
[2026-06-13 18:08:11,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:08:11,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:11,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:12,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:12,080.080 INFO    ] time= 13/06/2026 18:08:12
[2026-06-13 18:08:12,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:12,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:12,196.196 INFO    ] No existing commands found in stream
[2026-06-13 18:08:17,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:08:17,208.208 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 18:08:20,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:08:20,344.344 INFO    ] Checking for system updates...
[2026-06-13 18:08:20,366.366 INFO    ] 200
[2026-06-13 18:08:20,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:20,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:20,399.399 INFO    ] No update needed
[2026-06-13 18:08:20,401.401 INFO    ] Checking for camera pi updates...
[2026-06-13 18:08:20,420.420 INFO    ] 200
[2026-06-13 18:08:20,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:20,447.447 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:08:20,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:20,482.482 INFO    ] No camera update needed
[2026-06-13 18:08:20,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:08:20,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:08:20,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:08:20,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:08:22,530.530 INFO    ] ================================================
[2026-06-13 18:08:22,546.546 INFO    ] Launching Daemon at Sat Jun 13 18:08:22 IST 2026
[2026-06-13 18:08:22,557.557 INFO    ] ================================================
[2026-06-13 18:08:22,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:08:22
[2026-06-13 18:08:23,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:08:23,336.336 INFO    ] Initializing speech engine...
[2026-06-13 18:08:23,346.346 INFO    ] 2026-06-13 18:08:23
[2026-06-13 18:08:23,554.554 INFO    ] 2026-06-13 18:08:23
[2026-06-13 18:08:23,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:08:23,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:23,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:23,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:23,958.958 INFO    ] time= 13/06/2026 18:08:23
[2026-06-13 18:08:23,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:24,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:24,073.073 INFO    ] No existing commands found in stream
[2026-06-13 18:08:29,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:08:29,085.085 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 18:08:30,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:08:30,442.442 INFO    ] Checking for system updates...
[2026-06-13 18:08:30,463.463 INFO    ] 200
[2026-06-13 18:08:30,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:30,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:30,499.499 INFO    ] No update needed
[2026-06-13 18:08:30,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 18:08:30,519.519 INFO    ] 200
[2026-06-13 18:08:30,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:30,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:08:30,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:30,682.682 INFO    ] No camera update needed
[2026-06-13 18:08:30,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:08:30,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:08:30,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:08:30,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:08:32,729.729 INFO    ] ================================================
[2026-06-13 18:08:32,745.745 INFO    ] Launching Daemon at Sat Jun 13 18:08:32 IST 2026
[2026-06-13 18:08:32,763.763 INFO    ] ================================================
[2026-06-13 18:08:33,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:08:33
[2026-06-13 18:08:33,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:08:33,561.561 INFO    ] Initializing speech engine...
[2026-06-13 18:08:33,566.566 INFO    ] 2026-06-13 18:08:33
[2026-06-13 18:08:33,779.779 INFO    ] 2026-06-13 18:08:33
[2026-06-13 18:08:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:08:33,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:33,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:34,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:34,175.175 INFO    ] time= 13/06/2026 18:08:34
[2026-06-13 18:08:34,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:34,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:34,295.295 INFO    ] No existing commands found in stream
[2026-06-13 18:08:39,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:08:39,308.308 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 18:08:41,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:08:41,418.418 INFO    ] Checking for system updates...
[2026-06-13 18:08:41,439.439 INFO    ] 200
[2026-06-13 18:08:41,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:41,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:08:41,472.472 INFO    ] No update needed
[2026-06-13 18:08:41,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 18:08:41,493.493 INFO    ] 200
[2026-06-13 18:08:41,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:41,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:08:41,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:08:41,559.559 INFO    ] No camera update needed
[2026-06-13 18:08:41,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:08:41,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:08:41,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:08:41,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:08:43,608.608 INFO    ] ================================================
[2026-06-13 18:08:43,623.623 INFO    ] Launching Daemon at Sat Jun 13 18:08:43 IST 2026
[2026-06-13 18:08:43,639.639 INFO    ] ================================================
[2026-06-13 18:08:44,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:08:44
[2026-06-13 18:08:44,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:08:44,492.492 INFO    ] Initializing speech engine...
[2026-06-13 18:08:44,497.497 INFO    ] 2026-06-13 18:08:44
[2026-06-13 18:08:44,705.705 INFO    ] 2026-06-13 18:08:44
[2026-06-13 18:08:44,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:08:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:44,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:45,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:45,113.113 INFO    ] time= 13/06/2026 18:08:45
[2026-06-13 18:08:45,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:45,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:45,219.219 INFO    ] No existing commands found in stream
[2026-06-13 18:08:50,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:08:50,232.232 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 18:08:51,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:08:51,663.663 INFO    ] Checking for system updates...
[2026-06-13 18:08:51,685.685 INFO    ] 200
[2026-06-13 18:08:51,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:51,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:51,721.721 INFO    ] No update needed
[2026-06-13 18:08:51,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 18:08:51,742.742 INFO    ] 200
[2026-06-13 18:08:51,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:08:51,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:08:51,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:08:51,811.811 INFO    ] No camera update needed
[2026-06-13 18:08:51,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:08:51,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:08:51,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:08:51,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:08:53,861.861 INFO    ] ================================================
[2026-06-13 18:08:53,876.876 INFO    ] Launching Daemon at Sat Jun 13 18:08:53 IST 2026
[2026-06-13 18:08:53,887.887 INFO    ] ================================================
[2026-06-13 18:08:54,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:08:54
[2026-06-13 18:08:54,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:08:54,766.766 INFO    ] Initializing speech engine...
[2026-06-13 18:08:54,776.776 INFO    ] 2026-06-13 18:08:54
[2026-06-13 18:08:55,023.023 INFO    ] 2026-06-13 18:08:55
[2026-06-13 18:08:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:08:55,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:08:55,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:08:55,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:08:55,491.491 INFO    ] time= 13/06/2026 18:08:55
[2026-06-13 18:08:55,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:08:55,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:08:55,675.675 INFO    ] No existing commands found in stream
[2026-06-13 18:09:00,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:00,692.692 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 18:09:04,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:09:04,171.171 INFO    ] Checking for system updates...
[2026-06-13 18:09:04,191.191 INFO    ] 200
[2026-06-13 18:09:04,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:04,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:09:04,226.226 INFO    ] No update needed
[2026-06-13 18:09:04,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:04,248.248 INFO    ] 200
[2026-06-13 18:09:04,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:04,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:04,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:09:04,311.311 INFO    ] No camera update needed
[2026-06-13 18:09:04,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:04,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:04,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:04,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:06,359.359 INFO    ] ================================================
[2026-06-13 18:09:06,375.375 INFO    ] Launching Daemon at Sat Jun 13 18:09:06 IST 2026
[2026-06-13 18:09:06,386.386 INFO    ] ================================================
[2026-06-13 18:09:06,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:06
[2026-06-13 18:09:07,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:07,250.250 INFO    ] Initializing speech engine...
[2026-06-13 18:09:07,255.255 INFO    ] 2026-06-13 18:09:07
[2026-06-13 18:09:07,461.461 INFO    ] 2026-06-13 18:09:07
[2026-06-13 18:09:07,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:07,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:07,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:07,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:07,871.871 INFO    ] time= 13/06/2026 18:09:07
[2026-06-13 18:09:07,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:07,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:07,976.976 INFO    ] No existing commands found in stream
[2026-06-13 18:09:12,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:12,993.993 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 18:09:13,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:09:13,867.867 INFO    ] Checking for system updates...
[2026-06-13 18:09:13,888.888 INFO    ] 200
[2026-06-13 18:09:13,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:13,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:09:13,921.921 INFO    ] No update needed
[2026-06-13 18:09:13,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:13,942.942 INFO    ] 200
[2026-06-13 18:09:13,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:13,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:14,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:14,017.017 INFO    ] No camera update needed
[2026-06-13 18:09:14,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:14,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:14,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:14,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:16,065.065 INFO    ] ================================================
[2026-06-13 18:09:16,080.080 INFO    ] Launching Daemon at Sat Jun 13 18:09:16 IST 2026
[2026-06-13 18:09:16,091.091 INFO    ] ================================================
[2026-06-13 18:09:16,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:16
[2026-06-13 18:09:16,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:16,920.920 INFO    ] Initializing speech engine...
[2026-06-13 18:09:16,924.924 INFO    ] 2026-06-13 18:09:16
[2026-06-13 18:09:17,132.132 INFO    ] 2026-06-13 18:09:17
[2026-06-13 18:09:17,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:17,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:17,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:17,540.540 INFO    ] time= 13/06/2026 18:09:17
[2026-06-13 18:09:17,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:17,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:17,661.661 INFO    ] No existing commands found in stream
[2026-06-13 18:09:22,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:22,681.681 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 18:09:23,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:09:23,831.831 INFO    ] Checking for system updates...
[2026-06-13 18:09:23,852.852 INFO    ] 200
[2026-06-13 18:09:23,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:23,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:23,890.890 INFO    ] No update needed
[2026-06-13 18:09:23,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:23,911.911 INFO    ] 200
[2026-06-13 18:09:23,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:23,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:23,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:23,985.985 INFO    ] No camera update needed
[2026-06-13 18:09:23,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:23,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:23,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:23,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:26,031.031 INFO    ] ================================================
[2026-06-13 18:09:26,046.046 INFO    ] Launching Daemon at Sat Jun 13 18:09:26 IST 2026
[2026-06-13 18:09:26,057.057 INFO    ] ================================================
[2026-06-13 18:09:26,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:26
[2026-06-13 18:09:26,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:26,885.885 INFO    ] Initializing speech engine...
[2026-06-13 18:09:26,890.890 INFO    ] 2026-06-13 18:09:26
[2026-06-13 18:09:27,092.092 INFO    ] 2026-06-13 18:09:27
[2026-06-13 18:09:27,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:27,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:27,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:27,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:27,506.506 INFO    ] time= 13/06/2026 18:09:27
[2026-06-13 18:09:27,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:27,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:27,612.612 INFO    ] No existing commands found in stream
[2026-06-13 18:09:32,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:32,621.621 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 18:09:34,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:09:34,477.477 INFO    ] Checking for system updates...
[2026-06-13 18:09:34,497.497 INFO    ] 200
[2026-06-13 18:09:34,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:34,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:09:34,530.530 INFO    ] No update needed
[2026-06-13 18:09:34,532.532 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:34,551.551 INFO    ] 200
[2026-06-13 18:09:34,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:34,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:34,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:09:34,616.616 INFO    ] No camera update needed
[2026-06-13 18:09:34,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:34,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:34,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:34,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:36,663.663 INFO    ] ================================================
[2026-06-13 18:09:36,678.678 INFO    ] Launching Daemon at Sat Jun 13 18:09:36 IST 2026
[2026-06-13 18:09:36,689.689 INFO    ] ================================================
[2026-06-13 18:09:37,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:37
[2026-06-13 18:09:37,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:37,557.557 INFO    ] Initializing speech engine...
[2026-06-13 18:09:37,563.563 INFO    ] 2026-06-13 18:09:37
[2026-06-13 18:09:37,771.771 INFO    ] 2026-06-13 18:09:37
[2026-06-13 18:09:37,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:37,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:37,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:38,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:38,197.197 INFO    ] time= 13/06/2026 18:09:38
[2026-06-13 18:09:38,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:38,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:38,297.297 INFO    ] No existing commands found in stream
[2026-06-13 18:09:43,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:43,312.312 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 18:09:44,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:09:44,568.568 INFO    ] Checking for system updates...
[2026-06-13 18:09:44,593.593 INFO    ] 200
[2026-06-13 18:09:44,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:44,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:44,631.631 INFO    ] No update needed
[2026-06-13 18:09:44,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:44,656.656 INFO    ] 200
[2026-06-13 18:09:44,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:44,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:44,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:44,727.727 INFO    ] No camera update needed
[2026-06-13 18:09:44,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:44,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:44,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:44,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:46,771.771 INFO    ] ================================================
[2026-06-13 18:09:46,779.779 INFO    ] Launching Daemon at Sat Jun 13 18:09:46 IST 2026
[2026-06-13 18:09:46,785.785 INFO    ] ================================================
[2026-06-13 18:09:47,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:47
[2026-06-13 18:09:47,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:47,542.542 INFO    ] Initializing speech engine...
[2026-06-13 18:09:47,556.556 INFO    ] 2026-06-13 18:09:47
[2026-06-13 18:09:47,780.780 INFO    ] 2026-06-13 18:09:47
[2026-06-13 18:09:47,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:47,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:48,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:48,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:48,151.151 INFO    ] time= 13/06/2026 18:09:48
[2026-06-13 18:09:48,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:48,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:48,330.330 INFO    ] No existing commands found in stream
[2026-06-13 18:09:53,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:09:53,344.344 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 18:09:54,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:09:54,533.533 INFO    ] Checking for system updates...
[2026-06-13 18:09:54,554.554 INFO    ] 200
[2026-06-13 18:09:54,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:54,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:54,587.587 INFO    ] No update needed
[2026-06-13 18:09:54,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 18:09:54,608.608 INFO    ] 200
[2026-06-13 18:09:54,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:09:54,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:09:54,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:09:54,672.672 INFO    ] No camera update needed
[2026-06-13 18:09:54,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:09:54,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:09:54,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:09:54,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:09:56,721.721 INFO    ] ================================================
[2026-06-13 18:09:56,736.736 INFO    ] Launching Daemon at Sat Jun 13 18:09:56 IST 2026
[2026-06-13 18:09:56,746.746 INFO    ] ================================================
[2026-06-13 18:09:57,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:09:57
[2026-06-13 18:09:57,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:09:57,609.609 INFO    ] Initializing speech engine...
[2026-06-13 18:09:57,614.614 INFO    ] 2026-06-13 18:09:57
[2026-06-13 18:09:57,821.821 INFO    ] 2026-06-13 18:09:57
[2026-06-13 18:09:57,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:09:58,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:09:58,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:09:58,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:09:58,226.226 INFO    ] time= 13/06/2026 18:09:58
[2026-06-13 18:09:58,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:09:58,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:09:58,336.336 INFO    ] No existing commands found in stream
[2026-06-13 18:10:03,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:10:03,355.355 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 18:10:08,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:10:08,797.797 INFO    ] Checking for system updates...
[2026-06-13 18:10:08,834.834 INFO    ] 200
[2026-06-13 18:10:08,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:08,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:10:08,890.890 INFO    ] No update needed
[2026-06-13 18:10:08,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 18:10:08,911.911 INFO    ] 200
[2026-06-13 18:10:08,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:08,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:10:08,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:10:08,975.975 INFO    ] No camera update needed
[2026-06-13 18:10:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:10:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:10:08,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:10:08,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:10:11,023.023 INFO    ] ================================================
[2026-06-13 18:10:11,039.039 INFO    ] Launching Daemon at Sat Jun 13 18:10:11 IST 2026
[2026-06-13 18:10:11,049.049 INFO    ] ================================================
[2026-06-13 18:10:11,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:10:11
[2026-06-13 18:10:11,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:10:11,870.870 INFO    ] Initializing speech engine...
[2026-06-13 18:10:11,875.875 INFO    ] 2026-06-13 18:10:11
[2026-06-13 18:10:12,080.080 INFO    ] 2026-06-13 18:10:12
[2026-06-13 18:10:12,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:10:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:10:12,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:10:12,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:10:12,491.491 INFO    ] time= 13/06/2026 18:10:12
[2026-06-13 18:10:12,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:10:12,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:10:12,605.605 INFO    ] No existing commands found in stream
[2026-06-13 18:10:17,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:10:17,616.616 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 18:10:18,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:10:18,432.432 INFO    ] Checking for system updates...
[2026-06-13 18:10:18,453.453 INFO    ] 200
[2026-06-13 18:10:18,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:18,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:10:18,485.485 INFO    ] No update needed
[2026-06-13 18:10:18,487.487 INFO    ] Checking for camera pi updates...
[2026-06-13 18:10:18,506.506 INFO    ] 200
[2026-06-13 18:10:18,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:18,532.532 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:10:18,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:18,571.571 INFO    ] No camera update needed
[2026-06-13 18:10:18,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:10:18,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:10:18,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:10:18,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:10:20,619.619 INFO    ] ================================================
[2026-06-13 18:10:20,634.634 INFO    ] Launching Daemon at Sat Jun 13 18:10:20 IST 2026
[2026-06-13 18:10:20,645.645 INFO    ] ================================================
[2026-06-13 18:10:20,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:10:20
[2026-06-13 18:10:21,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:10:21,432.432 INFO    ] Initializing speech engine...
[2026-06-13 18:10:21,440.440 INFO    ] 2026-06-13 18:10:21
[2026-06-13 18:10:21,663.663 INFO    ] 2026-06-13 18:10:21
[2026-06-13 18:10:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:10:21,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:10:21,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:10:22,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:10:22,091.091 INFO    ] time= 13/06/2026 18:10:22
[2026-06-13 18:10:22,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:10:22,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:10:22,209.209 INFO    ] No existing commands found in stream
[2026-06-13 18:10:27,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:10:27,223.223 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 18:10:31,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:10:31,605.605 INFO    ] Checking for system updates...
[2026-06-13 18:10:31,645.645 INFO    ] 200
[2026-06-13 18:10:31,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:31,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:31,709.709 INFO    ] No update needed
[2026-06-13 18:10:31,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 18:10:31,745.745 INFO    ] 200
[2026-06-13 18:10:31,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:31,789.789 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:10:31,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:31,824.824 INFO    ] No camera update needed
[2026-06-13 18:10:31,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:10:31,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:10:31,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:10:31,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:10:33,872.872 INFO    ] ================================================
[2026-06-13 18:10:33,880.880 INFO    ] Launching Daemon at Sat Jun 13 18:10:33 IST 2026
[2026-06-13 18:10:33,886.886 INFO    ] ================================================
[2026-06-13 18:10:34,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:10:34
[2026-06-13 18:10:34,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:10:34,685.685 INFO    ] Initializing speech engine...
[2026-06-13 18:10:34,695.695 INFO    ] 2026-06-13 18:10:34
[2026-06-13 18:10:34,901.901 INFO    ] 2026-06-13 18:10:34
[2026-06-13 18:10:34,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:10:35,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:10:35,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:10:35,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:10:35,324.324 INFO    ] time= 13/06/2026 18:10:35
[2026-06-13 18:10:35,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:10:35,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:10:35,422.422 INFO    ] No existing commands found in stream
[2026-06-13 18:10:40,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:10:40,434.434 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 18:10:44,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:10:44,592.592 INFO    ] Checking for system updates...
[2026-06-13 18:10:44,629.629 INFO    ] 200
[2026-06-13 18:10:44,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:44,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:44,687.687 INFO    ] No update needed
[2026-06-13 18:10:44,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 18:10:44,725.725 INFO    ] 200
[2026-06-13 18:10:44,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:44,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:10:44,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:44,804.804 INFO    ] No camera update needed
[2026-06-13 18:10:44,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:10:44,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:10:44,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:10:44,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:10:46,851.851 INFO    ] ================================================
[2026-06-13 18:10:46,867.867 INFO    ] Launching Daemon at Sat Jun 13 18:10:46 IST 2026
[2026-06-13 18:10:46,878.878 INFO    ] ================================================
[2026-06-13 18:10:47,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:10:47
[2026-06-13 18:10:47,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:10:47,677.677 INFO    ] Initializing speech engine...
[2026-06-13 18:10:47,687.687 INFO    ] 2026-06-13 18:10:47
[2026-06-13 18:10:47,892.892 INFO    ] 2026-06-13 18:10:47
[2026-06-13 18:10:47,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:10:48,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:10:48,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:10:48,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:10:48,300.300 INFO    ] time= 13/06/2026 18:10:48
[2026-06-13 18:10:48,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:10:48,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:10:48,405.405 INFO    ] No existing commands found in stream
[2026-06-13 18:10:53,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:10:53,422.422 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 18:10:56,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:10:56,476.476 INFO    ] Checking for system updates...
[2026-06-13 18:10:56,500.500 INFO    ] 200
[2026-06-13 18:10:56,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:56,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:56,534.534 INFO    ] No update needed
[2026-06-13 18:10:56,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 18:10:56,555.555 INFO    ] 200
[2026-06-13 18:10:56,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:10:56,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:10:56,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:10:56,621.621 INFO    ] No camera update needed
[2026-06-13 18:10:56,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:10:56,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:10:56,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:10:56,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:10:58,671.671 INFO    ] ================================================
[2026-06-13 18:10:58,686.686 INFO    ] Launching Daemon at Sat Jun 13 18:10:58 IST 2026
[2026-06-13 18:10:58,696.696 INFO    ] ================================================
[2026-06-13 18:10:59,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:10:59
[2026-06-13 18:10:59,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:10:59,507.507 INFO    ] Initializing speech engine...
[2026-06-13 18:10:59,511.511 INFO    ] 2026-06-13 18:10:59
[2026-06-13 18:10:59,740.740 INFO    ] 2026-06-13 18:10:59
[2026-06-13 18:10:59,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:10:59,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:10:59,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:00,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:00,149.149 INFO    ] time= 13/06/2026 18:11:00
[2026-06-13 18:11:00,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:00,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:00,288.288 INFO    ] No existing commands found in stream
[2026-06-13 18:11:05,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:11:05,302.302 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 18:11:08,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:11:08,716.716 INFO    ] Checking for system updates...
[2026-06-13 18:11:08,738.738 INFO    ] 200
[2026-06-13 18:11:08,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:08,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:11:08,771.771 INFO    ] No update needed
[2026-06-13 18:11:08,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 18:11:08,792.792 INFO    ] 200
[2026-06-13 18:11:08,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:08,816.816 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:11:08,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:11:08,856.856 INFO    ] No camera update needed
[2026-06-13 18:11:08,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:11:08,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:11:08,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:11:08,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:11:10,903.903 INFO    ] ================================================
[2026-06-13 18:11:10,919.919 INFO    ] Launching Daemon at Sat Jun 13 18:11:10 IST 2026
[2026-06-13 18:11:10,932.932 INFO    ] ================================================
[2026-06-13 18:11:11,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:11:11
[2026-06-13 18:11:11,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:11:11,774.774 INFO    ] Initializing speech engine...
[2026-06-13 18:11:11,785.785 INFO    ] 2026-06-13 18:11:11
[2026-06-13 18:11:11,990.990 INFO    ] 2026-06-13 18:11:11
[2026-06-13 18:11:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:11:12,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:11:12,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:12,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:12,411.411 INFO    ] time= 13/06/2026 18:11:12
[2026-06-13 18:11:12,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:12,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:12,507.507 INFO    ] No existing commands found in stream
[2026-06-13 18:11:17,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:11:17,522.522 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 18:11:18,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:11:18,092.092 INFO    ] Checking for system updates...
[2026-06-13 18:11:18,113.113 INFO    ] 200
[2026-06-13 18:11:18,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:18,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:11:18,147.147 INFO    ] No update needed
[2026-06-13 18:11:18,148.148 INFO    ] Checking for camera pi updates...
[2026-06-13 18:11:18,168.168 INFO    ] 200
[2026-06-13 18:11:18,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:18,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:11:18,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:11:18,240.240 INFO    ] No camera update needed
[2026-06-13 18:11:18,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:11:18,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:11:18,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:11:18,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:11:20,289.289 INFO    ] ================================================
[2026-06-13 18:11:20,304.304 INFO    ] Launching Daemon at Sat Jun 13 18:11:20 IST 2026
[2026-06-13 18:11:20,316.316 INFO    ] ================================================
[2026-06-13 18:11:20,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:11:20
[2026-06-13 18:11:21,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:11:21,634.634 INFO    ] Initializing speech engine...
[2026-06-13 18:11:21,654.654 INFO    ] 2026-06-13 18:11:21
[2026-06-13 18:11:21,920.920 INFO    ] 2026-06-13 18:11:21
[2026-06-13 18:11:21,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:11:22,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:11:22,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:22,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:22,295.295 INFO    ] time= 13/06/2026 18:11:22
[2026-06-13 18:11:22,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:22,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:22,420.420 INFO    ] No existing commands found in stream
[2026-06-13 18:11:27,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:11:27,433.433 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 18:11:28,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:11:28,894.894 INFO    ] Checking for system updates...
[2026-06-13 18:11:28,915.915 INFO    ] 200
[2026-06-13 18:11:28,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:28,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:11:28,949.949 INFO    ] No update needed
[2026-06-13 18:11:28,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 18:11:28,971.971 INFO    ] 200
[2026-06-13 18:11:28,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:28,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:11:29,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:11:29,038.038 INFO    ] No camera update needed
[2026-06-13 18:11:29,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:11:29,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:11:29,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:11:29,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:11:31,088.088 INFO    ] ================================================
[2026-06-13 18:11:31,104.104 INFO    ] Launching Daemon at Sat Jun 13 18:11:31 IST 2026
[2026-06-13 18:11:31,115.115 INFO    ] ================================================
[2026-06-13 18:11:31,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:11:31
[2026-06-13 18:11:31,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:11:32,143.143 INFO    ] Initializing speech engine...
[2026-06-13 18:11:32,152.152 INFO    ] 2026-06-13 18:11:32
[2026-06-13 18:11:32,434.434 INFO    ] 2026-06-13 18:11:32
[2026-06-13 18:11:32,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:11:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:11:32,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:32,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:32,797.797 INFO    ] time= 13/06/2026 18:11:32
[2026-06-13 18:11:32,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:32,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:32,894.894 INFO    ] No existing commands found in stream
[2026-06-13 18:11:37,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:11:37,912.912 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 18:11:38,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:11:38,485.485 INFO    ] Checking for system updates...
[2026-06-13 18:11:38,507.507 INFO    ] 200
[2026-06-13 18:11:38,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:38,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:11:38,542.542 INFO    ] No update needed
[2026-06-13 18:11:38,544.544 INFO    ] Checking for camera pi updates...
[2026-06-13 18:11:38,563.563 INFO    ] 200
[2026-06-13 18:11:38,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:38,588.588 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:11:38,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:11:38,627.627 INFO    ] No camera update needed
[2026-06-13 18:11:38,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:11:38,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:11:38,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:11:38,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:11:40,675.675 INFO    ] ================================================
[2026-06-13 18:11:40,691.691 INFO    ] Launching Daemon at Sat Jun 13 18:11:40 IST 2026
[2026-06-13 18:11:40,702.702 INFO    ] ================================================
[2026-06-13 18:11:41,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:11:41
[2026-06-13 18:11:41,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:11:41,508.508 INFO    ] Initializing speech engine...
[2026-06-13 18:11:41,517.517 INFO    ] 2026-06-13 18:11:41
[2026-06-13 18:11:41,733.733 INFO    ] 2026-06-13 18:11:41
[2026-06-13 18:11:41,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:11:41,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:11:41,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:41,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:41,999.999 INFO    ] time= 13/06/2026 18:11:41
[2026-06-13 18:11:42,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:42,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:42,116.116 INFO    ] No existing commands found in stream
[2026-06-13 18:11:47,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:11:47,137.137 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 18:11:51,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:11:51,126.126 INFO    ] Checking for system updates...
[2026-06-13 18:11:51,147.147 INFO    ] 200
[2026-06-13 18:11:51,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:51,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:11:51,182.182 INFO    ] No update needed
[2026-06-13 18:11:51,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 18:11:51,202.202 INFO    ] 200
[2026-06-13 18:11:51,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:11:51,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:11:51,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:11:51,273.273 INFO    ] No camera update needed
[2026-06-13 18:11:51,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:11:51,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:11:51,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:11:51,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:11:53,320.320 INFO    ] ================================================
[2026-06-13 18:11:53,336.336 INFO    ] Launching Daemon at Sat Jun 13 18:11:53 IST 2026
[2026-06-13 18:11:53,347.347 INFO    ] ================================================
[2026-06-13 18:11:53,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:11:53
[2026-06-13 18:11:54,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:11:54,221.221 INFO    ] Initializing speech engine...
[2026-06-13 18:11:54,224.224 INFO    ] 2026-06-13 18:11:54
[2026-06-13 18:11:54,445.445 INFO    ] 2026-06-13 18:11:54
[2026-06-13 18:11:54,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:11:54,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:11:54,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:11:54,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:11:54,889.889 INFO    ] time= 13/06/2026 18:11:54
[2026-06-13 18:11:54,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:11:54,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:11:55,045.045 INFO    ] No existing commands found in stream
[2026-06-13 18:12:00,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:00,074.074 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 18:12:00,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:12:00,623.623 INFO    ] Checking for system updates...
[2026-06-13 18:12:00,646.646 INFO    ] 200
[2026-06-13 18:12:00,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:00,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:12:00,680.680 INFO    ] No update needed
[2026-06-13 18:12:00,682.682 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:00,701.701 INFO    ] 200
[2026-06-13 18:12:00,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:00,726.726 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:00,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:12:00,767.767 INFO    ] No camera update needed
[2026-06-13 18:12:00,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:00,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:00,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:00,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:02,811.811 INFO    ] ================================================
[2026-06-13 18:12:02,827.827 INFO    ] Launching Daemon at Sat Jun 13 18:12:02 IST 2026
[2026-06-13 18:12:02,838.838 INFO    ] ================================================
[2026-06-13 18:12:03,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:03
[2026-06-13 18:12:03,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:03,712.712 INFO    ] Initializing speech engine...
[2026-06-13 18:12:03,716.716 INFO    ] 2026-06-13 18:12:03
[2026-06-13 18:12:03,925.925 INFO    ] 2026-06-13 18:12:03
[2026-06-13 18:12:03,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:04,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:04,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:04,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:04,329.329 INFO    ] time= 13/06/2026 18:12:04
[2026-06-13 18:12:04,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:12:04,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:12:04,443.443 INFO    ] No existing commands found in stream
[2026-06-13 18:12:09,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:09,457.457 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 18:12:12,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:12:12,464.464 INFO    ] Checking for system updates...
[2026-06-13 18:12:12,486.486 INFO    ] 200
[2026-06-13 18:12:12,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:12,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:12,521.521 INFO    ] No update needed
[2026-06-13 18:12:12,522.522 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:12,541.541 INFO    ] 200
[2026-06-13 18:12:12,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:12,566.566 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:12,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:12,609.609 INFO    ] No camera update needed
[2026-06-13 18:12:12,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:12,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:12,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:12,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:14,658.658 INFO    ] ================================================
[2026-06-13 18:12:14,674.674 INFO    ] Launching Daemon at Sat Jun 13 18:12:14 IST 2026
[2026-06-13 18:12:14,689.689 INFO    ] ================================================
[2026-06-13 18:12:15,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:15
[2026-06-13 18:12:15,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:15,487.487 INFO    ] Initializing speech engine...
[2026-06-13 18:12:15,499.499 INFO    ] 2026-06-13 18:12:15
[2026-06-13 18:12:15,704.704 INFO    ] 2026-06-13 18:12:15
[2026-06-13 18:12:15,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:15,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:15,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:16,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:16,109.109 INFO    ] time= 13/06/2026 18:12:16
[2026-06-13 18:12:16,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:12:16,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:12:16,220.220 INFO    ] No existing commands found in stream
[2026-06-13 18:12:21,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:21,236.236 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 18:12:22,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:12:22,341.341 INFO    ] Checking for system updates...
[2026-06-13 18:12:22,363.363 INFO    ] 200
[2026-06-13 18:12:22,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:22,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:12:22,397.397 INFO    ] No update needed
[2026-06-13 18:12:22,399.399 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:22,419.419 INFO    ] 200
[2026-06-13 18:12:22,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:22,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:22,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:12:22,480.480 INFO    ] No camera update needed
[2026-06-13 18:12:22,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:22,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:22,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:22,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:24,535.535 INFO    ] ================================================
[2026-06-13 18:12:24,551.551 INFO    ] Launching Daemon at Sat Jun 13 18:12:24 IST 2026
[2026-06-13 18:12:24,562.562 INFO    ] ================================================
[2026-06-13 18:12:24,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:24
[2026-06-13 18:12:25,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:25,377.377 INFO    ] Initializing speech engine...
[2026-06-13 18:12:25,391.391 INFO    ] 2026-06-13 18:12:25
[2026-06-13 18:12:25,609.609 INFO    ] 2026-06-13 18:12:25
[2026-06-13 18:12:25,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:25,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:25,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:26,023.023 INFO    ] time= 13/06/2026 18:12:25
[2026-06-13 18:12:26,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:12:26,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:12:26,135.135 INFO    ] No existing commands found in stream
[2026-06-13 18:12:31,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:31,150.150 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 18:12:33,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:12:33,348.348 INFO    ] Checking for system updates...
[2026-06-13 18:12:33,369.369 INFO    ] 200
[2026-06-13 18:12:33,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:33,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:33,403.403 INFO    ] No update needed
[2026-06-13 18:12:33,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:33,424.424 INFO    ] 200
[2026-06-13 18:12:33,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:33,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:33,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:33,487.487 INFO    ] No camera update needed
[2026-06-13 18:12:33,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:33,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:33,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:33,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:35,536.536 INFO    ] ================================================
[2026-06-13 18:12:35,552.552 INFO    ] Launching Daemon at Sat Jun 13 18:12:35 IST 2026
[2026-06-13 18:12:35,563.563 INFO    ] ================================================
[2026-06-13 18:12:36,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:36
[2026-06-13 18:12:36,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:36,717.717 INFO    ] Initializing speech engine...
[2026-06-13 18:12:36,722.722 INFO    ] 2026-06-13 18:12:36
[2026-06-13 18:12:36,929.929 INFO    ] 2026-06-13 18:12:36
[2026-06-13 18:12:36,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:37,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:37,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:37,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:37,333.333 INFO    ] time= 13/06/2026 18:12:37
[2026-06-13 18:12:37,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:12:37,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:12:37,442.442 INFO    ] No existing commands found in stream
[2026-06-13 18:12:42,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:42,454.454 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 18:12:45,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:12:45,553.553 INFO    ] Checking for system updates...
[2026-06-13 18:12:45,575.575 INFO    ] 200
[2026-06-13 18:12:45,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:45,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:45,610.610 INFO    ] No update needed
[2026-06-13 18:12:45,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:45,631.631 INFO    ] 200
[2026-06-13 18:12:45,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:45,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:45,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:12:45,800.800 INFO    ] No camera update needed
[2026-06-13 18:12:45,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:45,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:45,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:45,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:47,858.858 INFO    ] ================================================
[2026-06-13 18:12:47,874.874 INFO    ] Launching Daemon at Sat Jun 13 18:12:47 IST 2026
[2026-06-13 18:12:47,886.886 INFO    ] ================================================
[2026-06-13 18:12:48,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:48
[2026-06-13 18:12:48,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:48,695.695 INFO    ] Initializing speech engine...
[2026-06-13 18:12:48,708.708 INFO    ] 2026-06-13 18:12:48
[2026-06-13 18:12:48,912.912 INFO    ] 2026-06-13 18:12:48
[2026-06-13 18:12:48,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:49,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:49,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:49,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:49,328.328 INFO    ] time= 13/06/2026 18:12:49
[2026-06-13 18:12:49,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:12:49,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:12:49,427.427 INFO    ] No existing commands found in stream
[2026-06-13 18:12:54,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:12:54,441.441 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 18:12:55,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:12:55,809.809 INFO    ] Checking for system updates...
[2026-06-13 18:12:55,830.830 INFO    ] 200
[2026-06-13 18:12:55,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:55,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:55,864.864 INFO    ] No update needed
[2026-06-13 18:12:55,865.865 INFO    ] Checking for camera pi updates...
[2026-06-13 18:12:55,884.884 INFO    ] 200
[2026-06-13 18:12:55,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:12:55,909.909 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:12:55,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:12:55,952.952 INFO    ] No camera update needed
[2026-06-13 18:12:55,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:12:55,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:12:55,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:12:55,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:12:58,009.009 INFO    ] ================================================
[2026-06-13 18:12:58,025.025 INFO    ] Launching Daemon at Sat Jun 13 18:12:58 IST 2026
[2026-06-13 18:12:58,036.036 INFO    ] ================================================
[2026-06-13 18:12:58,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:12:58
[2026-06-13 18:12:59,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:12:59,344.344 INFO    ] Initializing speech engine...
[2026-06-13 18:12:59,349.349 INFO    ] 2026-06-13 18:12:59
[2026-06-13 18:12:59,552.552 INFO    ] 2026-06-13 18:12:59
[2026-06-13 18:12:59,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:12:59,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:12:59,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:12:59,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:12:59,950.950 INFO    ] time= 13/06/2026 18:12:59
[2026-06-13 18:12:59,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:00,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:00,069.069 INFO    ] No existing commands found in stream
[2026-06-13 18:13:05,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:13:05,083.083 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 18:13:05,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:13:05,814.814 INFO    ] Checking for system updates...
[2026-06-13 18:13:05,835.835 INFO    ] 200
[2026-06-13 18:13:05,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:05,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:13:05,868.868 INFO    ] No update needed
[2026-06-13 18:13:05,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 18:13:05,889.889 INFO    ] 200
[2026-06-13 18:13:05,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:05,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:13:05,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:13:05,955.955 INFO    ] No camera update needed
[2026-06-13 18:13:05,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:13:05,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:13:05,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:13:05,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:13:08,004.004 INFO    ] ================================================
[2026-06-13 18:13:08,019.019 INFO    ] Launching Daemon at Sat Jun 13 18:13:08 IST 2026
[2026-06-13 18:13:08,031.031 INFO    ] ================================================
[2026-06-13 18:13:08,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:13:08
[2026-06-13 18:13:08,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:13:08,870.870 INFO    ] Initializing speech engine...
[2026-06-13 18:13:08,874.874 INFO    ] 2026-06-13 18:13:08
[2026-06-13 18:13:09,079.079 INFO    ] 2026-06-13 18:13:09
[2026-06-13 18:13:09,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:13:09,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:13:09,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:13:09,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:13:09,486.486 INFO    ] time= 13/06/2026 18:13:09
[2026-06-13 18:13:09,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:09,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:09,596.596 INFO    ] No existing commands found in stream
[2026-06-13 18:13:14,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:13:14,610.610 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 18:13:18,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:13:18,229.229 INFO    ] Checking for system updates...
[2026-06-13 18:13:18,250.250 INFO    ] 200
[2026-06-13 18:13:18,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:18,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:18,283.283 INFO    ] No update needed
[2026-06-13 18:13:18,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 18:13:18,305.305 INFO    ] 200
[2026-06-13 18:13:18,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:18,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:13:18,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:18,368.368 INFO    ] No camera update needed
[2026-06-13 18:13:18,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:13:18,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:13:18,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:13:18,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:13:20,416.416 INFO    ] ================================================
[2026-06-13 18:13:20,432.432 INFO    ] Launching Daemon at Sat Jun 13 18:13:20 IST 2026
[2026-06-13 18:13:20,444.444 INFO    ] ================================================
[2026-06-13 18:13:21,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:13:21
[2026-06-13 18:13:21,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:13:21,736.736 INFO    ] Initializing speech engine...
[2026-06-13 18:13:21,741.741 INFO    ] 2026-06-13 18:13:21
[2026-06-13 18:13:21,947.947 INFO    ] 2026-06-13 18:13:21
[2026-06-13 18:13:21,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:13:22,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:13:22,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:13:22,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:13:22,370.370 INFO    ] time= 13/06/2026 18:13:22
[2026-06-13 18:13:22,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:22,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:22,473.473 INFO    ] No existing commands found in stream
[2026-06-13 18:13:27,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:13:27,490.490 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 18:13:31,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:13:31,816.816 INFO    ] Checking for system updates...
[2026-06-13 18:13:31,841.841 INFO    ] 200
[2026-06-13 18:13:31,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:31,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:31,884.884 INFO    ] No update needed
[2026-06-13 18:13:31,885.885 INFO    ] Checking for camera pi updates...
[2026-06-13 18:13:31,908.908 INFO    ] 200
[2026-06-13 18:13:31,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:31,939.939 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:13:31,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:31,963.963 INFO    ] No camera update needed
[2026-06-13 18:13:31,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:13:31,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:13:31,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:13:31,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:13:34,014.014 INFO    ] ================================================
[2026-06-13 18:13:34,030.030 INFO    ] Launching Daemon at Sat Jun 13 18:13:34 IST 2026
[2026-06-13 18:13:34,041.041 INFO    ] ================================================
[2026-06-13 18:13:34,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:13:34
[2026-06-13 18:13:34,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:13:34,856.856 INFO    ] Initializing speech engine...
[2026-06-13 18:13:34,871.871 INFO    ] 2026-06-13 18:13:34
[2026-06-13 18:13:35,077.077 INFO    ] 2026-06-13 18:13:35
[2026-06-13 18:13:35,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:13:35,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:13:35,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:13:35,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:13:35,484.484 INFO    ] time= 13/06/2026 18:13:35
[2026-06-13 18:13:35,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:35,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:35,601.601 INFO    ] No existing commands found in stream
[2026-06-13 18:13:40,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:13:40,613.613 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 18:13:42,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:13:42,155.155 INFO    ] Checking for system updates...
[2026-06-13 18:13:42,178.178 INFO    ] 200
[2026-06-13 18:13:42,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:42,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:13:42,211.211 INFO    ] No update needed
[2026-06-13 18:13:42,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 18:13:42,232.232 INFO    ] 200
[2026-06-13 18:13:42,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:42,256.256 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:13:42,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:42,299.299 INFO    ] No camera update needed
[2026-06-13 18:13:42,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:13:42,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:13:42,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:13:42,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:13:44,347.347 INFO    ] ================================================
[2026-06-13 18:13:44,362.362 INFO    ] Launching Daemon at Sat Jun 13 18:13:44 IST 2026
[2026-06-13 18:13:44,374.374 INFO    ] ================================================
[2026-06-13 18:13:44,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:13:44
[2026-06-13 18:13:45,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:13:45,205.205 INFO    ] Initializing speech engine...
[2026-06-13 18:13:45,210.210 INFO    ] 2026-06-13 18:13:45
[2026-06-13 18:13:45,413.413 INFO    ] 2026-06-13 18:13:45
[2026-06-13 18:13:45,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:13:45,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:13:45,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:13:45,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:13:45,803.803 INFO    ] time= 13/06/2026 18:13:45
[2026-06-13 18:13:45,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:45,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:45,929.929 INFO    ] No existing commands found in stream
[2026-06-13 18:13:50,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:13:50,946.946 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 18:13:55,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:13:55,034.034 INFO    ] Checking for system updates...
[2026-06-13 18:13:55,056.056 INFO    ] 200
[2026-06-13 18:13:55,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:55,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:13:55,090.090 INFO    ] No update needed
[2026-06-13 18:13:55,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 18:13:55,111.111 INFO    ] 200
[2026-06-13 18:13:55,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:13:55,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:13:55,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:13:55,173.173 INFO    ] No camera update needed
[2026-06-13 18:13:55,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:13:55,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:13:55,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:13:55,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:13:57,223.223 INFO    ] ================================================
[2026-06-13 18:13:57,238.238 INFO    ] Launching Daemon at Sat Jun 13 18:13:57 IST 2026
[2026-06-13 18:13:57,249.249 INFO    ] ================================================
[2026-06-13 18:13:57,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:13:57
[2026-06-13 18:13:57,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:13:58,072.072 INFO    ] Initializing speech engine...
[2026-06-13 18:13:58,080.080 INFO    ] 2026-06-13 18:13:58
[2026-06-13 18:13:58,332.332 INFO    ] 2026-06-13 18:13:58
[2026-06-13 18:13:58,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:13:58,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:13:58,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:13:58,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:13:58,809.809 INFO    ] time= 13/06/2026 18:13:58
[2026-06-13 18:13:58,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:13:58,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:13:59,012.012 INFO    ] No existing commands found in stream
[2026-06-13 18:14:04,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:14:04,038.038 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 18:14:05,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:14:05,865.865 INFO    ] Checking for system updates...
[2026-06-13 18:14:05,885.885 INFO    ] 200
[2026-06-13 18:14:05,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:05,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:14:05,919.919 INFO    ] No update needed
[2026-06-13 18:14:05,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 18:14:05,942.942 INFO    ] 200
[2026-06-13 18:14:05,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:05,968.968 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:14:06,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:14:06,007.007 INFO    ] No camera update needed
[2026-06-13 18:14:06,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:14:06,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:14:06,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:14:06,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:14:08,055.055 INFO    ] ================================================
[2026-06-13 18:14:08,070.070 INFO    ] Launching Daemon at Sat Jun 13 18:14:08 IST 2026
[2026-06-13 18:14:08,081.081 INFO    ] ================================================
[2026-06-13 18:14:08,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:14:08
[2026-06-13 18:14:08,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:14:08,961.961 INFO    ] Initializing speech engine...
[2026-06-13 18:14:08,966.966 INFO    ] 2026-06-13 18:14:08
[2026-06-13 18:14:09,179.179 INFO    ] 2026-06-13 18:14:09
[2026-06-13 18:14:09,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:14:09,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:14:09,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:14:09,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:14:09,602.602 INFO    ] time= 13/06/2026 18:14:09
[2026-06-13 18:14:09,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:14:09,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:14:09,749.749 INFO    ] No existing commands found in stream
[2026-06-13 18:14:14,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:14:14,763.763 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 18:14:16,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:14:16,893.893 INFO    ] Checking for system updates...
[2026-06-13 18:14:16,913.913 INFO    ] 200
[2026-06-13 18:14:16,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:16,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:16,947.947 INFO    ] No update needed
[2026-06-13 18:14:16,948.948 INFO    ] Checking for camera pi updates...
[2026-06-13 18:14:16,968.968 INFO    ] 200
[2026-06-13 18:14:16,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:16,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:14:17,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:17,031.031 INFO    ] No camera update needed
[2026-06-13 18:14:17,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:14:17,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:14:17,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:14:17,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:14:19,077.077 INFO    ] ================================================
[2026-06-13 18:14:19,093.093 INFO    ] Launching Daemon at Sat Jun 13 18:14:19 IST 2026
[2026-06-13 18:14:19,104.104 INFO    ] ================================================
[2026-06-13 18:14:19,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:14:19
[2026-06-13 18:14:19,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:14:19,878.878 INFO    ] Initializing speech engine...
[2026-06-13 18:14:19,886.886 INFO    ] 2026-06-13 18:14:19
[2026-06-13 18:14:20,096.096 INFO    ] 2026-06-13 18:14:20
[2026-06-13 18:14:20,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:14:20,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:14:20,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:14:20,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:14:20,524.524 INFO    ] time= 13/06/2026 18:14:20
[2026-06-13 18:14:20,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:14:20,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:14:20,665.665 INFO    ] No existing commands found in stream
[2026-06-13 18:14:25,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:14:25,692.692 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 18:14:29,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:14:29,881.881 INFO    ] Checking for system updates...
[2026-06-13 18:14:29,902.902 INFO    ] 200
[2026-06-13 18:14:29,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:29,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:14:29,935.935 INFO    ] No update needed
[2026-06-13 18:14:29,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 18:14:29,956.956 INFO    ] 200
[2026-06-13 18:14:29,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:29,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:14:30,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:30,022.022 INFO    ] No camera update needed
[2026-06-13 18:14:30,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:14:30,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:14:30,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:14:30,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:14:32,062.062 INFO    ] ================================================
[2026-06-13 18:14:32,071.071 INFO    ] Launching Daemon at Sat Jun 13 18:14:32 IST 2026
[2026-06-13 18:14:32,077.077 INFO    ] ================================================
[2026-06-13 18:14:32,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:14:32
[2026-06-13 18:14:32,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:14:32,874.874 INFO    ] Initializing speech engine...
[2026-06-13 18:14:32,879.879 INFO    ] 2026-06-13 18:14:32
[2026-06-13 18:14:33,101.101 INFO    ] 2026-06-13 18:14:33
[2026-06-13 18:14:33,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:14:33,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:14:33,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:14:33,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:14:33,511.511 INFO    ] time= 13/06/2026 18:14:33
[2026-06-13 18:14:33,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:14:33,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:14:33,617.617 INFO    ] No existing commands found in stream
[2026-06-13 18:14:38,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:14:38,629.629 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 18:14:41,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:14:41,343.343 INFO    ] Checking for system updates...
[2026-06-13 18:14:41,364.364 INFO    ] 200
[2026-06-13 18:14:41,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:41,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:41,397.397 INFO    ] No update needed
[2026-06-13 18:14:41,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 18:14:41,419.419 INFO    ] 200
[2026-06-13 18:14:41,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:41,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:14:41,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:41,484.484 INFO    ] No camera update needed
[2026-06-13 18:14:41,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:14:41,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:14:41,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:14:41,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:14:43,532.532 INFO    ] ================================================
[2026-06-13 18:14:43,547.547 INFO    ] Launching Daemon at Sat Jun 13 18:14:43 IST 2026
[2026-06-13 18:14:43,557.557 INFO    ] ================================================
[2026-06-13 18:14:43,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:14:43
[2026-06-13 18:14:44,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:14:44,355.355 INFO    ] Initializing speech engine...
[2026-06-13 18:14:44,365.365 INFO    ] 2026-06-13 18:14:44
[2026-06-13 18:14:44,587.587 INFO    ] 2026-06-13 18:14:44
[2026-06-13 18:14:44,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:14:44,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:14:44,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:14:44,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:14:44,996.996 INFO    ] time= 13/06/2026 18:14:44
[2026-06-13 18:14:45,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:14:45,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:14:45,141.141 INFO    ] No existing commands found in stream
[2026-06-13 18:14:50,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:14:50,153.153 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 18:14:51,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:14:51,592.592 INFO    ] Checking for system updates...
[2026-06-13 18:14:51,613.613 INFO    ] 200
[2026-06-13 18:14:51,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:51,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:51,646.646 INFO    ] No update needed
[2026-06-13 18:14:51,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 18:14:51,666.666 INFO    ] 200
[2026-06-13 18:14:51,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:14:51,692.692 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:14:51,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:14:51,832.832 INFO    ] No camera update needed
[2026-06-13 18:14:51,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:14:51,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:14:51,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:14:51,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:14:53,882.882 INFO    ] ================================================
[2026-06-13 18:14:53,897.897 INFO    ] Launching Daemon at Sat Jun 13 18:14:53 IST 2026
[2026-06-13 18:14:53,908.908 INFO    ] ================================================
[2026-06-13 18:14:54,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:14:54
[2026-06-13 18:14:54,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:14:54,686.686 INFO    ] Initializing speech engine...
[2026-06-13 18:14:54,700.700 INFO    ] 2026-06-13 18:14:54
[2026-06-13 18:14:54,915.915 INFO    ] 2026-06-13 18:14:54
[2026-06-13 18:14:54,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:14:55,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:14:55,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:14:55,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:14:55,274.274 INFO    ] time= 13/06/2026 18:14:55
[2026-06-13 18:14:55,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:14:55,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:14:55,472.472 INFO    ] No existing commands found in stream
[2026-06-13 18:15:00,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:00,500.500 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 18:15:00,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:15:00,869.869 INFO    ] Checking for system updates...
[2026-06-13 18:15:00,891.891 INFO    ] 200
[2026-06-13 18:15:00,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:00,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:00,926.926 INFO    ] No update needed
[2026-06-13 18:15:00,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:00,947.947 INFO    ] 200
[2026-06-13 18:15:00,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:00,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:01,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:15:01,009.009 INFO    ] No camera update needed
[2026-06-13 18:15:01,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:01,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:01,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:01,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:03,051.051 INFO    ] ================================================
[2026-06-13 18:15:03,066.066 INFO    ] Launching Daemon at Sat Jun 13 18:15:03 IST 2026
[2026-06-13 18:15:03,077.077 INFO    ] ================================================
[2026-06-13 18:15:03,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:03
[2026-06-13 18:15:03,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:03,870.870 INFO    ] Initializing speech engine...
[2026-06-13 18:15:03,875.875 INFO    ] 2026-06-13 18:15:03
[2026-06-13 18:15:04,082.082 INFO    ] 2026-06-13 18:15:04
[2026-06-13 18:15:04,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:04,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:04,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:04,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:04,490.490 INFO    ] time= 13/06/2026 18:15:04
[2026-06-13 18:15:04,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:04,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:04,607.607 INFO    ] No existing commands found in stream
[2026-06-13 18:15:09,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:09,621.621 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 18:15:11,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:15:11,606.606 INFO    ] Checking for system updates...
[2026-06-13 18:15:11,627.627 INFO    ] 200
[2026-06-13 18:15:11,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:11,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:11,663.663 INFO    ] No update needed
[2026-06-13 18:15:11,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:11,684.684 INFO    ] 200
[2026-06-13 18:15:11,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:11,708.708 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:11,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:15:11,749.749 INFO    ] No camera update needed
[2026-06-13 18:15:11,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:11,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:11,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:11,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:13,789.789 INFO    ] ================================================
[2026-06-13 18:15:13,797.797 INFO    ] Launching Daemon at Sat Jun 13 18:15:13 IST 2026
[2026-06-13 18:15:13,803.803 INFO    ] ================================================
[2026-06-13 18:15:14,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:14
[2026-06-13 18:15:14,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:14,577.577 INFO    ] Initializing speech engine...
[2026-06-13 18:15:14,582.582 INFO    ] 2026-06-13 18:15:14
[2026-06-13 18:15:14,789.789 INFO    ] 2026-06-13 18:15:14
[2026-06-13 18:15:14,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:15,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:15,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:15,198.198 INFO    ] time= 13/06/2026 18:15:15
[2026-06-13 18:15:15,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:15,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:15,309.309 INFO    ] No existing commands found in stream
[2026-06-13 18:15:20,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:20,322.322 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 18:15:23,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:15:23,765.765 INFO    ] Checking for system updates...
[2026-06-13 18:15:23,786.786 INFO    ] 200
[2026-06-13 18:15:23,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:23,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:23,823.823 INFO    ] No update needed
[2026-06-13 18:15:23,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:23,846.846 INFO    ] 200
[2026-06-13 18:15:23,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:23,874.874 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:23,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:23,916.916 INFO    ] No camera update needed
[2026-06-13 18:15:23,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:23,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:23,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:23,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:25,964.964 INFO    ] ================================================
[2026-06-13 18:15:25,979.979 INFO    ] Launching Daemon at Sat Jun 13 18:15:25 IST 2026
[2026-06-13 18:15:25,990.990 INFO    ] ================================================
[2026-06-13 18:15:26,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:26
[2026-06-13 18:15:26,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:26,780.780 INFO    ] Initializing speech engine...
[2026-06-13 18:15:26,785.785 INFO    ] 2026-06-13 18:15:26
[2026-06-13 18:15:26,989.989 INFO    ] 2026-06-13 18:15:26
[2026-06-13 18:15:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:27,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:27,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:27,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:27,410.410 INFO    ] time= 13/06/2026 18:15:27
[2026-06-13 18:15:27,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:27,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:27,507.507 INFO    ] No existing commands found in stream
[2026-06-13 18:15:32,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:32,531.531 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 18:15:34,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:15:34,479.479 INFO    ] Checking for system updates...
[2026-06-13 18:15:34,500.500 INFO    ] 200
[2026-06-13 18:15:34,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:34,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:15:34,533.533 INFO    ] No update needed
[2026-06-13 18:15:34,535.535 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:34,554.554 INFO    ] 200
[2026-06-13 18:15:34,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:34,581.581 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:34,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:15:34,620.620 INFO    ] No camera update needed
[2026-06-13 18:15:34,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:34,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:34,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:34,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:36,668.668 INFO    ] ================================================
[2026-06-13 18:15:36,684.684 INFO    ] Launching Daemon at Sat Jun 13 18:15:36 IST 2026
[2026-06-13 18:15:36,694.694 INFO    ] ================================================
[2026-06-13 18:15:37,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:37
[2026-06-13 18:15:37,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:37,556.556 INFO    ] Initializing speech engine...
[2026-06-13 18:15:37,561.561 INFO    ] 2026-06-13 18:15:37
[2026-06-13 18:15:37,771.771 INFO    ] 2026-06-13 18:15:37
[2026-06-13 18:15:37,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:37,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:37,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:38,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:38,196.196 INFO    ] time= 13/06/2026 18:15:38
[2026-06-13 18:15:38,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:38,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:38,295.295 INFO    ] No existing commands found in stream
[2026-06-13 18:15:43,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:43,309.309 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 18:15:43,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:15:43,663.663 INFO    ] Checking for system updates...
[2026-06-13 18:15:43,684.684 INFO    ] 200
[2026-06-13 18:15:43,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:43,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:43,721.721 INFO    ] No update needed
[2026-06-13 18:15:43,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:43,745.745 INFO    ] 200
[2026-06-13 18:15:43,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:43,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:43,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:43,811.811 INFO    ] No camera update needed
[2026-06-13 18:15:43,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:43,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:43,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:43,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:45,863.863 INFO    ] ================================================
[2026-06-13 18:15:45,879.879 INFO    ] Launching Daemon at Sat Jun 13 18:15:45 IST 2026
[2026-06-13 18:15:45,890.890 INFO    ] ================================================
[2026-06-13 18:15:46,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:46
[2026-06-13 18:15:46,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:46,743.743 INFO    ] Initializing speech engine...
[2026-06-13 18:15:46,747.747 INFO    ] 2026-06-13 18:15:46
[2026-06-13 18:15:46,957.957 INFO    ] 2026-06-13 18:15:46
[2026-06-13 18:15:46,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:47,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:47,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:47,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:47,376.376 INFO    ] time= 13/06/2026 18:15:47
[2026-06-13 18:15:47,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:47,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:47,472.472 INFO    ] No existing commands found in stream
[2026-06-13 18:15:52,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:15:52,486.486 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 18:15:53,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:15:53,175.175 INFO    ] Checking for system updates...
[2026-06-13 18:15:53,199.199 INFO    ] 200
[2026-06-13 18:15:53,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:53,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:15:53,235.235 INFO    ] No update needed
[2026-06-13 18:15:53,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 18:15:53,259.259 INFO    ] 200
[2026-06-13 18:15:53,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:15:53,283.283 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:15:53,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:15:53,321.321 INFO    ] No camera update needed
[2026-06-13 18:15:53,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:15:53,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:15:53,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:15:53,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:15:55,368.368 INFO    ] ================================================
[2026-06-13 18:15:55,384.384 INFO    ] Launching Daemon at Sat Jun 13 18:15:55 IST 2026
[2026-06-13 18:15:55,395.395 INFO    ] ================================================
[2026-06-13 18:15:55,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:15:55
[2026-06-13 18:15:56,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:15:56,230.230 INFO    ] Initializing speech engine...
[2026-06-13 18:15:56,235.235 INFO    ] 2026-06-13 18:15:56
[2026-06-13 18:15:56,440.440 INFO    ] 2026-06-13 18:15:56
[2026-06-13 18:15:56,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:15:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:15:56,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:15:56,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:15:56,855.855 INFO    ] time= 13/06/2026 18:15:56
[2026-06-13 18:15:56,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:15:56,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:15:56,955.955 INFO    ] No existing commands found in stream
[2026-06-13 18:16:01,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:01,963.963 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 18:16:04,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:16:04,177.177 INFO    ] Checking for system updates...
[2026-06-13 18:16:04,198.198 INFO    ] 200
[2026-06-13 18:16:04,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:04,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:04,234.234 INFO    ] No update needed
[2026-06-13 18:16:04,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 18:16:04,256.256 INFO    ] 200
[2026-06-13 18:16:04,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:04,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:16:04,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:16:04,312.312 INFO    ] No camera update needed
[2026-06-13 18:16:04,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:16:04,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:16:04,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:16:04,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:16:06,361.361 INFO    ] ================================================
[2026-06-13 18:16:06,378.378 INFO    ] Launching Daemon at Sat Jun 13 18:16:06 IST 2026
[2026-06-13 18:16:06,390.390 INFO    ] ================================================
[2026-06-13 18:16:06,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:16:06
[2026-06-13 18:16:07,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:16:07,799.799 INFO    ] Initializing speech engine...
[2026-06-13 18:16:07,812.812 INFO    ] 2026-06-13 18:16:07
[2026-06-13 18:16:08,094.094 INFO    ] 2026-06-13 18:16:08
[2026-06-13 18:16:08,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:16:08,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:16:08,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:16:08,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:16:08,552.552 INFO    ] time= 13/06/2026 18:16:08
[2026-06-13 18:16:08,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:16:08,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:16:08,715.715 INFO    ] No existing commands found in stream
[2026-06-13 18:16:13,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:13,756.756 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 18:16:17,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:16:17,061.061 INFO    ] Checking for system updates...
[2026-06-13 18:16:17,083.083 INFO    ] 200
[2026-06-13 18:16:17,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:17,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:17,116.116 INFO    ] No update needed
[2026-06-13 18:16:17,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 18:16:17,137.137 INFO    ] 200
[2026-06-13 18:16:17,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:17,164.164 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:16:17,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:17,198.198 INFO    ] No camera update needed
[2026-06-13 18:16:17,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:16:17,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:16:17,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:16:17,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:16:19,246.246 INFO    ] ================================================
[2026-06-13 18:16:19,263.263 INFO    ] Launching Daemon at Sat Jun 13 18:16:19 IST 2026
[2026-06-13 18:16:19,274.274 INFO    ] ================================================
[2026-06-13 18:16:19,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:16:19
[2026-06-13 18:16:19,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:16:20,063.063 INFO    ] Initializing speech engine...
[2026-06-13 18:16:20,079.079 INFO    ] 2026-06-13 18:16:20
[2026-06-13 18:16:20,285.285 INFO    ] 2026-06-13 18:16:20
[2026-06-13 18:16:20,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:16:20,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:16:20,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:16:20,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:16:20,651.651 INFO    ] time= 13/06/2026 18:16:20
[2026-06-13 18:16:20,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:16:20,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:16:20,809.809 INFO    ] No existing commands found in stream
[2026-06-13 18:16:25,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:25,832.832 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 18:16:28,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:16:28,753.753 INFO    ] Checking for system updates...
[2026-06-13 18:16:28,774.774 INFO    ] 200
[2026-06-13 18:16:28,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:28,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:28,810.810 INFO    ] No update needed
[2026-06-13 18:16:28,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 18:16:28,831.831 INFO    ] 200
[2026-06-13 18:16:28,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:28,857.857 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:16:28,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:16:28,899.899 INFO    ] No camera update needed
[2026-06-13 18:16:28,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:16:28,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:16:28,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:16:28,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:16:30,947.947 INFO    ] ================================================
[2026-06-13 18:16:30,963.963 INFO    ] Launching Daemon at Sat Jun 13 18:16:30 IST 2026
[2026-06-13 18:16:30,973.973 INFO    ] ================================================
[2026-06-13 18:16:31,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:16:31
[2026-06-13 18:16:31,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:16:31,797.797 INFO    ] Initializing speech engine...
[2026-06-13 18:16:31,807.807 INFO    ] 2026-06-13 18:16:31
[2026-06-13 18:16:32,025.025 INFO    ] 2026-06-13 18:16:31
[2026-06-13 18:16:32,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:16:32,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:16:32,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:16:32,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:16:32,433.433 INFO    ] time= 13/06/2026 18:16:32
[2026-06-13 18:16:32,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:16:32,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:16:32,635.635 INFO    ] No existing commands found in stream
[2026-06-13 18:16:37,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:37,648.648 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 18:16:38,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:16:38,723.723 INFO    ] Checking for system updates...
[2026-06-13 18:16:38,748.748 INFO    ] 200
[2026-06-13 18:16:38,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:38,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:38,808.808 INFO    ] No update needed
[2026-06-13 18:16:38,810.810 INFO    ] Checking for camera pi updates...
[2026-06-13 18:16:38,837.837 INFO    ] 200
[2026-06-13 18:16:38,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:38,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:16:38,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:16:38,922.922 INFO    ] No camera update needed
[2026-06-13 18:16:38,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:16:38,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:16:38,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:16:38,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:16:40,973.973 INFO    ] ================================================
[2026-06-13 18:16:40,989.989 INFO    ] Launching Daemon at Sat Jun 13 18:16:40 IST 2026
[2026-06-13 18:16:41,000.000 INFO    ] ================================================
[2026-06-13 18:16:41,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:16:41
[2026-06-13 18:16:41,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:16:41,805.805 INFO    ] Initializing speech engine...
[2026-06-13 18:16:41,811.811 INFO    ] 2026-06-13 18:16:41
[2026-06-13 18:16:42,014.014 INFO    ] 2026-06-13 18:16:41
[2026-06-13 18:16:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:16:42,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:16:42,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:16:42,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:16:42,412.412 INFO    ] time= 13/06/2026 18:16:42
[2026-06-13 18:16:42,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:16:42,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:16:42,527.527 INFO    ] No existing commands found in stream
[2026-06-13 18:16:47,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:47,544.544 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 18:16:49,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:16:49,747.747 INFO    ] Checking for system updates...
[2026-06-13 18:16:49,768.768 INFO    ] 200
[2026-06-13 18:16:49,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:49,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:16:49,803.803 INFO    ] No update needed
[2026-06-13 18:16:49,805.805 INFO    ] Checking for camera pi updates...
[2026-06-13 18:16:49,824.824 INFO    ] 200
[2026-06-13 18:16:49,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:16:49,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:16:49,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:16:49,897.897 INFO    ] No camera update needed
[2026-06-13 18:16:49,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:16:49,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:16:49,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:16:49,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:16:51,945.945 INFO    ] ================================================
[2026-06-13 18:16:51,960.960 INFO    ] Launching Daemon at Sat Jun 13 18:16:51 IST 2026
[2026-06-13 18:16:51,971.971 INFO    ] ================================================
[2026-06-13 18:16:52,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:16:52
[2026-06-13 18:16:52,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:16:52,825.825 INFO    ] Initializing speech engine...
[2026-06-13 18:16:52,833.833 INFO    ] 2026-06-13 18:16:52
[2026-06-13 18:16:53,035.035 INFO    ] 2026-06-13 18:16:53
[2026-06-13 18:16:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:16:53,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:16:53,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:16:53,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:16:53,449.449 INFO    ] time= 13/06/2026 18:16:53
[2026-06-13 18:16:53,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:16:53,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:16:53,547.547 INFO    ] No existing commands found in stream
[2026-06-13 18:16:58,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:16:58,562.562 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 18:17:00,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:17:00,151.151 INFO    ] Checking for system updates...
[2026-06-13 18:17:00,173.173 INFO    ] 200
[2026-06-13 18:17:00,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:00,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:00,207.207 INFO    ] No update needed
[2026-06-13 18:17:00,209.209 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:00,230.230 INFO    ] 200
[2026-06-13 18:17:00,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:00,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:00,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:00,393.393 INFO    ] No camera update needed
[2026-06-13 18:17:00,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:00,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:00,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:00,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:17:02,427.427 INFO    ] ================================================
[2026-06-13 18:17:02,436.436 INFO    ] Launching Daemon at Sat Jun 13 18:17:02 IST 2026
[2026-06-13 18:17:02,442.442 INFO    ] ================================================
[2026-06-13 18:17:02,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:17:02
[2026-06-13 18:17:03,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:17:03,621.621 INFO    ] Initializing speech engine...
[2026-06-13 18:17:03,644.644 INFO    ] 2026-06-13 18:17:03
[2026-06-13 18:17:03,896.896 INFO    ] 2026-06-13 18:17:03
[2026-06-13 18:17:03,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:17:04,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:17:04,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:17:04,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:17:04,262.262 INFO    ] time= 13/06/2026 18:17:04
[2026-06-13 18:17:04,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:17:04,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:17:04,336.336 INFO    ] No existing commands found in stream
[2026-06-13 18:17:09,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:17:09,352.352 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 18:17:12,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:17:12,664.664 INFO    ] Checking for system updates...
[2026-06-13 18:17:12,685.685 INFO    ] 200
[2026-06-13 18:17:12,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:12,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:12,746.746 INFO    ] No update needed
[2026-06-13 18:17:12,748.748 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:12,783.783 INFO    ] 200
[2026-06-13 18:17:12,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:12,815.815 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:12,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:12,855.855 INFO    ] No camera update needed
[2026-06-13 18:17:12,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:12,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:12,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:12,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:17:14,901.901 INFO    ] ================================================
[2026-06-13 18:17:14,916.916 INFO    ] Launching Daemon at Sat Jun 13 18:17:14 IST 2026
[2026-06-13 18:17:14,926.926 INFO    ] ================================================
[2026-06-13 18:17:15,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:17:15
[2026-06-13 18:17:15,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:17:15,818.818 INFO    ] Initializing speech engine...
[2026-06-13 18:17:15,824.824 INFO    ] 2026-06-13 18:17:15
[2026-06-13 18:17:16,035.035 INFO    ] 2026-06-13 18:17:16
[2026-06-13 18:17:16,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:17:16,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:17:16,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:17:16,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:17:16,441.441 INFO    ] time= 13/06/2026 18:17:16
[2026-06-13 18:17:16,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:17:16,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:17:16,550.550 INFO    ] No existing commands found in stream
[2026-06-13 18:17:21,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:17:21,565.565 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 18:17:22,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:17:22,510.510 INFO    ] Checking for system updates...
[2026-06-13 18:17:22,546.546 INFO    ] 200
[2026-06-13 18:17:22,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:22,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:22,604.604 INFO    ] No update needed
[2026-06-13 18:17:22,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:22,646.646 INFO    ] 200
[2026-06-13 18:17:22,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:22,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:22,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:22,717.717 INFO    ] No camera update needed
[2026-06-13 18:17:22,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:22,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:22,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:22,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:17:24,763.763 INFO    ] ================================================
[2026-06-13 18:17:24,778.778 INFO    ] Launching Daemon at Sat Jun 13 18:17:24 IST 2026
[2026-06-13 18:17:24,789.789 INFO    ] ================================================
[2026-06-13 18:17:25,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:17:25
[2026-06-13 18:17:25,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:17:25,565.565 INFO    ] Initializing speech engine...
[2026-06-13 18:17:25,568.568 INFO    ] 2026-06-13 18:17:25
[2026-06-13 18:17:25,773.773 INFO    ] 2026-06-13 18:17:25
[2026-06-13 18:17:25,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:17:26,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:17:26,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:17:26,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:17:26,222.222 INFO    ] time= 13/06/2026 18:17:26
[2026-06-13 18:17:26,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:17:26,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:17:26,372.372 INFO    ] No existing commands found in stream
[2026-06-13 18:17:31,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:17:31,381.381 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 18:17:35,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:17:35,676.676 INFO    ] Checking for system updates...
[2026-06-13 18:17:35,699.699 INFO    ] 200
[2026-06-13 18:17:35,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:35,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:17:35,732.732 INFO    ] No update needed
[2026-06-13 18:17:35,733.733 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:35,753.753 INFO    ] 200
[2026-06-13 18:17:35,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:35,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:35,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:35,817.817 INFO    ] No camera update needed
[2026-06-13 18:17:35,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:35,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:35,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:35,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:17:37,867.867 INFO    ] ================================================
[2026-06-13 18:17:37,882.882 INFO    ] Launching Daemon at Sat Jun 13 18:17:37 IST 2026
[2026-06-13 18:17:37,893.893 INFO    ] ================================================
[2026-06-13 18:17:38,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:17:38
[2026-06-13 18:17:38,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:17:38,681.681 INFO    ] Initializing speech engine...
[2026-06-13 18:17:38,686.686 INFO    ] 2026-06-13 18:17:38
[2026-06-13 18:17:38,889.889 INFO    ] 2026-06-13 18:17:38
[2026-06-13 18:17:38,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:17:39,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:17:39,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:17:39,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:17:39,305.305 INFO    ] time= 13/06/2026 18:17:39
[2026-06-13 18:17:39,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:17:39,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:17:39,400.400 INFO    ] No existing commands found in stream
[2026-06-13 18:17:44,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:17:44,413.413 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 18:17:47,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:17:47,325.325 INFO    ] Checking for system updates...
[2026-06-13 18:17:47,346.346 INFO    ] 200
[2026-06-13 18:17:47,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:47,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:47,380.380 INFO    ] No update needed
[2026-06-13 18:17:47,381.381 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:47,402.402 INFO    ] 200
[2026-06-13 18:17:47,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:47,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:47,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:47,473.473 INFO    ] No camera update needed
[2026-06-13 18:17:47,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:47,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:47,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:47,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:17:49,522.522 INFO    ] ================================================
[2026-06-13 18:17:49,538.538 INFO    ] Launching Daemon at Sat Jun 13 18:17:49 IST 2026
[2026-06-13 18:17:49,550.550 INFO    ] ================================================
[2026-06-13 18:17:49,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:17:49
[2026-06-13 18:17:50,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:17:50,373.373 INFO    ] Initializing speech engine...
[2026-06-13 18:17:50,384.384 INFO    ] 2026-06-13 18:17:50
[2026-06-13 18:17:50,589.589 INFO    ] 2026-06-13 18:17:50
[2026-06-13 18:17:50,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:17:50,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:17:50,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:17:50,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:17:50,994.994 INFO    ] time= 13/06/2026 18:17:50
[2026-06-13 18:17:51,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:17:51,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:17:51,105.105 INFO    ] No existing commands found in stream
[2026-06-13 18:17:56,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:17:56,119.119 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 18:17:57,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:17:57,969.969 INFO    ] Checking for system updates...
[2026-06-13 18:17:57,991.991 INFO    ] 200
[2026-06-13 18:17:57,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:58,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:58,025.025 INFO    ] No update needed
[2026-06-13 18:17:58,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 18:17:58,046.046 INFO    ] 200
[2026-06-13 18:17:58,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:17:58,073.073 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:17:58,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:17:58,113.113 INFO    ] No camera update needed
[2026-06-13 18:17:58,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:17:58,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:17:58,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:17:58,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:00,162.162 INFO    ] ================================================
[2026-06-13 18:18:00,177.177 INFO    ] Launching Daemon at Sat Jun 13 18:18:00 IST 2026
[2026-06-13 18:18:00,187.187 INFO    ] ================================================
[2026-06-13 18:18:00,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:00
[2026-06-13 18:18:00,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:01,004.004 INFO    ] Initializing speech engine...
[2026-06-13 18:18:01,010.010 INFO    ] 2026-06-13 18:18:01
[2026-06-13 18:18:01,215.215 INFO    ] 2026-06-13 18:18:01
[2026-06-13 18:18:01,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:01,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:01,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:01,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:01,565.565 INFO    ] time= 13/06/2026 18:18:01
[2026-06-13 18:18:01,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:01,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:01,723.723 INFO    ] No existing commands found in stream
[2026-06-13 18:18:06,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:18:06,757.757 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 18:18:10,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:18:10,427.427 INFO    ] Checking for system updates...
[2026-06-13 18:18:10,449.449 INFO    ] 200
[2026-06-13 18:18:10,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:10,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:10,484.484 INFO    ] No update needed
[2026-06-13 18:18:10,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 18:18:10,508.508 INFO    ] 200
[2026-06-13 18:18:10,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:10,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:18:10,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:10,573.573 INFO    ] No camera update needed
[2026-06-13 18:18:10,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:18:10,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:18:10,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:18:10,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:12,622.622 INFO    ] ================================================
[2026-06-13 18:18:12,637.637 INFO    ] Launching Daemon at Sat Jun 13 18:18:12 IST 2026
[2026-06-13 18:18:12,647.647 INFO    ] ================================================
[2026-06-13 18:18:12,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:12
[2026-06-13 18:18:13,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:13,461.461 INFO    ] Initializing speech engine...
[2026-06-13 18:18:13,467.467 INFO    ] 2026-06-13 18:18:13
[2026-06-13 18:18:13,682.682 INFO    ] 2026-06-13 18:18:13
[2026-06-13 18:18:13,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:13,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:13,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:14,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:14,083.083 INFO    ] time= 13/06/2026 18:18:14
[2026-06-13 18:18:14,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:14,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:14,234.234 INFO    ] No existing commands found in stream
[2026-06-13 18:18:19,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:18:19,248.248 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 18:18:20,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:18:20,401.401 INFO    ] Checking for system updates...
[2026-06-13 18:18:20,422.422 INFO    ] 200
[2026-06-13 18:18:20,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:20,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:20,457.457 INFO    ] No update needed
[2026-06-13 18:18:20,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 18:18:20,478.478 INFO    ] 200
[2026-06-13 18:18:20,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:20,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:18:20,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:20,545.545 INFO    ] No camera update needed
[2026-06-13 18:18:20,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:18:20,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:18:20,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:18:20,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:22,593.593 INFO    ] ================================================
[2026-06-13 18:18:22,608.608 INFO    ] Launching Daemon at Sat Jun 13 18:18:22 IST 2026
[2026-06-13 18:18:22,619.619 INFO    ] ================================================
[2026-06-13 18:18:22,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:22
[2026-06-13 18:18:23,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:23,411.411 INFO    ] Initializing speech engine...
[2026-06-13 18:18:23,424.424 INFO    ] 2026-06-13 18:18:23
[2026-06-13 18:18:23,642.642 INFO    ] 2026-06-13 18:18:23
[2026-06-13 18:18:23,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:23,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:23,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:24,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:24,063.063 INFO    ] time= 13/06/2026 18:18:24
[2026-06-13 18:18:24,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:24,192.192 INFO    ] No existing commands found in stream
[2026-06-13 18:18:29,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:18:29,205.205 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 18:18:30,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:18:30,121.121 INFO    ] Checking for system updates...
[2026-06-13 18:18:30,141.141 INFO    ] 200
[2026-06-13 18:18:30,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:30,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:18:30,174.174 INFO    ] No update needed
[2026-06-13 18:18:30,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 18:18:30,195.195 INFO    ] 200
[2026-06-13 18:18:30,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:30,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:18:30,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:18:30,255.255 INFO    ] No camera update needed
[2026-06-13 18:18:30,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:18:30,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:18:30,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:18:30,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:32,303.303 INFO    ] ================================================
[2026-06-13 18:18:32,318.318 INFO    ] Launching Daemon at Sat Jun 13 18:18:32 IST 2026
[2026-06-13 18:18:32,329.329 INFO    ] ================================================
[2026-06-13 18:18:32,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:32
[2026-06-13 18:18:32,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:33,114.114 INFO    ] Initializing speech engine...
[2026-06-13 18:18:33,122.122 INFO    ] 2026-06-13 18:18:33
[2026-06-13 18:18:33,401.401 INFO    ] 2026-06-13 18:18:33
[2026-06-13 18:18:33,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:33,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:33,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:33,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:33,776.776 INFO    ] time= 13/06/2026 18:18:33
[2026-06-13 18:18:33,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:33,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:33,900.900 INFO    ] No existing commands found in stream
[2026-06-13 18:18:38,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:18:38,915.915 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 18:18:42,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:18:42,702.702 INFO    ] Checking for system updates...
[2026-06-13 18:18:42,723.723 INFO    ] 200
[2026-06-13 18:18:42,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:42,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:42,758.758 INFO    ] No update needed
[2026-06-13 18:18:42,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 18:18:42,779.779 INFO    ] 200
[2026-06-13 18:18:42,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:42,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:18:42,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:42,845.845 INFO    ] No camera update needed
[2026-06-13 18:18:42,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:18:42,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:18:42,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:18:42,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:44,892.892 INFO    ] ================================================
[2026-06-13 18:18:44,907.907 INFO    ] Launching Daemon at Sat Jun 13 18:18:44 IST 2026
[2026-06-13 18:18:44,918.918 INFO    ] ================================================
[2026-06-13 18:18:45,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:45
[2026-06-13 18:18:45,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:45,688.688 INFO    ] Initializing speech engine...
[2026-06-13 18:18:45,702.702 INFO    ] 2026-06-13 18:18:45
[2026-06-13 18:18:45,918.918 INFO    ] 2026-06-13 18:18:45
[2026-06-13 18:18:45,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:46,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:46,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:46,329.329 INFO    ] time= 13/06/2026 18:18:46
[2026-06-13 18:18:46,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:46,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:46,472.472 INFO    ] No existing commands found in stream
[2026-06-13 18:18:51,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:18:51,499.499 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 18:18:54,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:18:54,086.086 INFO    ] Checking for system updates...
[2026-06-13 18:18:54,108.108 INFO    ] 200
[2026-06-13 18:18:54,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:54,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:54,142.142 INFO    ] No update needed
[2026-06-13 18:18:54,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 18:18:54,163.163 INFO    ] 200
[2026-06-13 18:18:54,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:18:54,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:18:54,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:18:54,230.230 INFO    ] No camera update needed
[2026-06-13 18:18:54,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:18:54,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:18:54,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:18:54,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:18:56,277.277 INFO    ] ================================================
[2026-06-13 18:18:56,292.292 INFO    ] Launching Daemon at Sat Jun 13 18:18:56 IST 2026
[2026-06-13 18:18:56,303.303 INFO    ] ================================================
[2026-06-13 18:18:56,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:18:56
[2026-06-13 18:18:56,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:18:57,141.141 INFO    ] Initializing speech engine...
[2026-06-13 18:18:57,147.147 INFO    ] 2026-06-13 18:18:57
[2026-06-13 18:18:57,357.357 INFO    ] 2026-06-13 18:18:57
[2026-06-13 18:18:57,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:18:57,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:18:57,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:18:57,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:18:57,774.774 INFO    ] time= 13/06/2026 18:18:57
[2026-06-13 18:18:57,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:18:57,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:18:57,883.883 INFO    ] No existing commands found in stream
[2026-06-13 18:19:02,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:02,898.898 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 18:19:03,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:19:03,593.593 INFO    ] Checking for system updates...
[2026-06-13 18:19:03,614.614 INFO    ] 200
[2026-06-13 18:19:03,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:03,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:03,647.647 INFO    ] No update needed
[2026-06-13 18:19:03,649.649 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:03,673.673 INFO    ] 200
[2026-06-13 18:19:03,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:03,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:03,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:19:03,736.736 INFO    ] No camera update needed
[2026-06-13 18:19:03,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:03,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:03,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:03,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:19:05,785.785 INFO    ] ================================================
[2026-06-13 18:19:05,800.800 INFO    ] Launching Daemon at Sat Jun 13 18:19:05 IST 2026
[2026-06-13 18:19:05,810.810 INFO    ] ================================================
[2026-06-13 18:19:06,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:19:06
[2026-06-13 18:19:06,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:19:06,906.906 INFO    ] Initializing speech engine...
[2026-06-13 18:19:06,915.915 INFO    ] 2026-06-13 18:19:06
[2026-06-13 18:19:07,177.177 INFO    ] 2026-06-13 18:19:07
[2026-06-13 18:19:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:19:07,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:19:07,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:19:07,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:19:07,642.642 INFO    ] time= 13/06/2026 18:19:07
[2026-06-13 18:19:07,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:19:07,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:19:07,781.781 INFO    ] No existing commands found in stream
[2026-06-13 18:19:12,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:12,795.795 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 18:19:13,579.579 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 18:19:13,604.604 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d907d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 18:19:13,613.613 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d907d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 18:19:13,621.621 INFO    ] None
[2026-06-13 18:19:13,624.624 INFO    ] Checking for system updates...
[2026-06-13 18:19:13,650.650 INFO    ] 200
[2026-06-13 18:19:13,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:13,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:13,683.683 INFO    ] No update needed
[2026-06-13 18:19:13,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:13,705.705 INFO    ] 200
[2026-06-13 18:19:13,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:13,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:16,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:16,038.038 INFO    ] No camera update needed
[2026-06-13 18:19:16,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:16,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:16,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:16,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:19:18,101.101 INFO    ] ================================================
[2026-06-13 18:19:18,116.116 INFO    ] Launching Daemon at Sat Jun 13 18:19:18 IST 2026
[2026-06-13 18:19:18,127.127 INFO    ] ================================================
[2026-06-13 18:19:18,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:19:18
[2026-06-13 18:19:18,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:19:18,921.921 INFO    ] Initializing speech engine...
[2026-06-13 18:19:18,925.925 INFO    ] 2026-06-13 18:19:18
[2026-06-13 18:19:19,143.143 INFO    ] 2026-06-13 18:19:19
[2026-06-13 18:19:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:19:19,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:19:19,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:19:19,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:19:19,548.548 INFO    ] time= 13/06/2026 18:19:19
[2026-06-13 18:19:19,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:19:19,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:19:19,666.666 INFO    ] No existing commands found in stream
[2026-06-13 18:19:24,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:24,677.677 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 18:19:27,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:19:27,970.970 INFO    ] Checking for system updates...
[2026-06-13 18:19:27,991.991 INFO    ] 200
[2026-06-13 18:19:27,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:28,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:28,024.024 INFO    ] No update needed
[2026-06-13 18:19:28,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:28,044.044 INFO    ] 200
[2026-06-13 18:19:28,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:28,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:28,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:28,120.120 INFO    ] No camera update needed
[2026-06-13 18:19:28,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:28,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:28,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:28,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:19:30,166.166 INFO    ] ================================================
[2026-06-13 18:19:30,182.182 INFO    ] Launching Daemon at Sat Jun 13 18:19:30 IST 2026
[2026-06-13 18:19:30,194.194 INFO    ] ================================================
[2026-06-13 18:19:30,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:19:30
[2026-06-13 18:19:30,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:19:31,060.060 INFO    ] Initializing speech engine...
[2026-06-13 18:19:31,072.072 INFO    ] 2026-06-13 18:19:31
[2026-06-13 18:19:31,283.283 INFO    ] 2026-06-13 18:19:31
[2026-06-13 18:19:31,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:19:31,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:19:31,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:19:31,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:19:31,708.708 INFO    ] time= 13/06/2026 18:19:31
[2026-06-13 18:19:31,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:19:31,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:19:31,827.827 INFO    ] No existing commands found in stream
[2026-06-13 18:19:36,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:36,841.841 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 18:19:40,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:19:40,649.649 INFO    ] Checking for system updates...
[2026-06-13 18:19:40,670.670 INFO    ] 200
[2026-06-13 18:19:40,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:40,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:19:40,703.703 INFO    ] No update needed
[2026-06-13 18:19:40,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:40,724.724 INFO    ] 200
[2026-06-13 18:19:40,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:40,749.749 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:40,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:40,793.793 INFO    ] No camera update needed
[2026-06-13 18:19:40,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:40,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:40,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:40,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:19:42,841.841 INFO    ] ================================================
[2026-06-13 18:19:42,857.857 INFO    ] Launching Daemon at Sat Jun 13 18:19:42 IST 2026
[2026-06-13 18:19:42,867.867 INFO    ] ================================================
[2026-06-13 18:19:43,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:19:43
[2026-06-13 18:19:43,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:19:43,712.712 INFO    ] Initializing speech engine...
[2026-06-13 18:19:43,717.717 INFO    ] 2026-06-13 18:19:43
[2026-06-13 18:19:43,924.924 INFO    ] 2026-06-13 18:19:43
[2026-06-13 18:19:43,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:19:44,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:19:44,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:19:44,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:19:44,332.332 INFO    ] time= 13/06/2026 18:19:44
[2026-06-13 18:19:44,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:19:44,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:19:44,437.437 INFO    ] No existing commands found in stream
[2026-06-13 18:19:49,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:49,450.450 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 18:19:50,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:19:50,339.339 INFO    ] Checking for system updates...
[2026-06-13 18:19:50,361.361 INFO    ] 200
[2026-06-13 18:19:50,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:50,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:50,394.394 INFO    ] No update needed
[2026-06-13 18:19:50,395.395 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:50,417.417 INFO    ] 200
[2026-06-13 18:19:50,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:50,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:50,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:50,483.483 INFO    ] No camera update needed
[2026-06-13 18:19:50,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:50,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:50,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:50,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:19:52,531.531 INFO    ] ================================================
[2026-06-13 18:19:52,547.547 INFO    ] Launching Daemon at Sat Jun 13 18:19:52 IST 2026
[2026-06-13 18:19:52,559.559 INFO    ] ================================================
[2026-06-13 18:19:52,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:19:52
[2026-06-13 18:19:53,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:19:53,423.423 INFO    ] Initializing speech engine...
[2026-06-13 18:19:53,427.427 INFO    ] 2026-06-13 18:19:53
[2026-06-13 18:19:53,633.633 INFO    ] 2026-06-13 18:19:53
[2026-06-13 18:19:53,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:19:53,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:19:53,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:19:53,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:19:54,050.050 INFO    ] time= 13/06/2026 18:19:54
[2026-06-13 18:19:54,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:19:54,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:19:54,148.148 INFO    ] No existing commands found in stream
[2026-06-13 18:19:59,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:19:59,160.160 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 18:19:59,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:19:59,511.511 INFO    ] Checking for system updates...
[2026-06-13 18:19:59,532.532 INFO    ] 200
[2026-06-13 18:19:59,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:59,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:59,568.568 INFO    ] No update needed
[2026-06-13 18:19:59,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 18:19:59,591.591 INFO    ] 200
[2026-06-13 18:19:59,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:19:59,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:19:59,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:19:59,659.659 INFO    ] No camera update needed
[2026-06-13 18:19:59,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:19:59,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:19:59,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:19:59,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:01,733.733 INFO    ] ================================================
[2026-06-13 18:20:01,774.774 INFO    ] Launching Daemon at Sat Jun 13 18:20:01 IST 2026
[2026-06-13 18:20:01,817.817 INFO    ] ================================================
[2026-06-13 18:20:02,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:02
[2026-06-13 18:20:03,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:03,379.379 INFO    ] Initializing speech engine...
[2026-06-13 18:20:03,384.384 INFO    ] 2026-06-13 18:20:03
[2026-06-13 18:20:03,664.664 INFO    ] 2026-06-13 18:20:03
[2026-06-13 18:20:03,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:20:03,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:20:03,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:20:03,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:20:03,995.995 INFO    ] time= 13/06/2026 18:20:03
[2026-06-13 18:20:04,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:20:04,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:20:04,067.067 INFO    ] No existing commands found in stream
[2026-06-13 18:20:09,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:20:09,081.081 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 18:20:10,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:20:10,571.571 INFO    ] Checking for system updates...
[2026-06-13 18:20:10,592.592 INFO    ] 200
[2026-06-13 18:20:10,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:10,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:10,625.625 INFO    ] No update needed
[2026-06-13 18:20:10,626.626 INFO    ] Checking for camera pi updates...
[2026-06-13 18:20:10,647.647 INFO    ] 200
[2026-06-13 18:20:10,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:10,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:20:10,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:10,709.709 INFO    ] No camera update needed
[2026-06-13 18:20:10,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:20:10,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:20:10,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:20:10,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:12,756.756 INFO    ] ================================================
[2026-06-13 18:20:12,772.772 INFO    ] Launching Daemon at Sat Jun 13 18:20:12 IST 2026
[2026-06-13 18:20:12,783.783 INFO    ] ================================================
[2026-06-13 18:20:13,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:13
[2026-06-13 18:20:13,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:13,779.779 INFO    ] Initializing speech engine...
[2026-06-13 18:20:13,786.786 INFO    ] 2026-06-13 18:20:13
[2026-06-13 18:20:14,065.065 INFO    ] 2026-06-13 18:20:14
[2026-06-13 18:20:14,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:20:14,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:20:14,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:20:14,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:20:14,494.494 INFO    ] time= 13/06/2026 18:20:14
[2026-06-13 18:20:14,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:20:14,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:20:14,767.767 INFO    ] No existing commands found in stream
[2026-06-13 18:20:19,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:20:19,789.789 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 18:20:21,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:20:21,980.980 INFO    ] Checking for system updates...
[2026-06-13 18:20:22,003.003 INFO    ] 200
[2026-06-13 18:20:22,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:22,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:22,041.041 INFO    ] No update needed
[2026-06-13 18:20:22,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 18:20:22,063.063 INFO    ] 200
[2026-06-13 18:20:22,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:22,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:20:22,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:22,139.139 INFO    ] No camera update needed
[2026-06-13 18:20:22,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:20:22,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:20:22,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:20:22,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:24,188.188 INFO    ] ================================================
[2026-06-13 18:20:24,204.204 INFO    ] Launching Daemon at Sat Jun 13 18:20:24 IST 2026
[2026-06-13 18:20:24,215.215 INFO    ] ================================================
[2026-06-13 18:20:24,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:24
[2026-06-13 18:20:24,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:25,252.252 INFO    ] Initializing speech engine...
[2026-06-13 18:20:25,258.258 INFO    ] 2026-06-13 18:20:25
[2026-06-13 18:20:25,562.562 INFO    ] 2026-06-13 18:20:25
[2026-06-13 18:20:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:20:25,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:20:25,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:20:25,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:20:25,924.924 INFO    ] time= 13/06/2026 18:20:25
[2026-06-13 18:20:25,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:20:25,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:20:26,005.005 INFO    ] No existing commands found in stream
[2026-06-13 18:20:31,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:20:31,019.019 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 18:20:33,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:20:33,796.796 INFO    ] Checking for system updates...
[2026-06-13 18:20:33,816.816 INFO    ] 200
[2026-06-13 18:20:33,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:33,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:20:33,850.850 INFO    ] No update needed
[2026-06-13 18:20:33,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 18:20:33,871.871 INFO    ] 200
[2026-06-13 18:20:33,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:33,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:20:33,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:20:33,936.936 INFO    ] No camera update needed
[2026-06-13 18:20:33,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:20:33,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:20:33,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:20:33,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:35,988.988 INFO    ] ================================================
[2026-06-13 18:20:36,004.004 INFO    ] Launching Daemon at Sat Jun 13 18:20:35 IST 2026
[2026-06-13 18:20:36,017.017 INFO    ] ================================================
[2026-06-13 18:20:36,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:36
[2026-06-13 18:20:37,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:37,657.657 INFO    ] Initializing speech engine...
[2026-06-13 18:20:37,665.665 INFO    ] 2026-06-13 18:20:37
[2026-06-13 18:20:37,952.952 INFO    ] 2026-06-13 18:20:37
[2026-06-13 18:20:38,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:20:38,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:20:38,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:20:38,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:20:38,495.495 INFO    ] time= 13/06/2026 18:20:38
[2026-06-13 18:20:38,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:20:38,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:20:38,651.651 INFO    ] No existing commands found in stream
[2026-06-13 18:20:43,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:20:43,673.673 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 18:20:45,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:20:45,272.272 INFO    ] Checking for system updates...
[2026-06-13 18:20:45,293.293 INFO    ] 200
[2026-06-13 18:20:45,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:45,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:45,327.327 INFO    ] No update needed
[2026-06-13 18:20:45,329.329 INFO    ] Checking for camera pi updates...
[2026-06-13 18:20:45,349.349 INFO    ] 200
[2026-06-13 18:20:45,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:45,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:20:45,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:20:45,427.427 INFO    ] No camera update needed
[2026-06-13 18:20:45,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:20:45,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:20:45,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:20:45,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:47,477.477 INFO    ] ================================================
[2026-06-13 18:20:47,493.493 INFO    ] Launching Daemon at Sat Jun 13 18:20:47 IST 2026
[2026-06-13 18:20:47,505.505 INFO    ] ================================================
[2026-06-13 18:20:47,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:47
[2026-06-13 18:20:48,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:48,316.316 INFO    ] Initializing speech engine...
[2026-06-13 18:20:48,327.327 INFO    ] 2026-06-13 18:20:48
[2026-06-13 18:20:48,532.532 INFO    ] 2026-06-13 18:20:48
[2026-06-13 18:20:48,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:20:48,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:20:48,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:20:48,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:20:48,942.942 INFO    ] time= 13/06/2026 18:20:48
[2026-06-13 18:20:48,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:20:48,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:20:49,048.048 INFO    ] No existing commands found in stream
[2026-06-13 18:20:54,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:20:54,065.065 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 18:20:56,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:20:56,798.798 INFO    ] Checking for system updates...
[2026-06-13 18:20:56,820.820 INFO    ] 200
[2026-06-13 18:20:56,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:56,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:20:56,854.854 INFO    ] No update needed
[2026-06-13 18:20:56,855.855 INFO    ] Checking for camera pi updates...
[2026-06-13 18:20:56,877.877 INFO    ] 200
[2026-06-13 18:20:56,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:20:56,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:20:56,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:20:56,943.943 INFO    ] No camera update needed
[2026-06-13 18:20:56,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:20:56,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:20:56,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:20:56,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:20:58,990.990 INFO    ] ================================================
[2026-06-13 18:20:59,005.005 INFO    ] Launching Daemon at Sat Jun 13 18:20:59 IST 2026
[2026-06-13 18:20:59,018.018 INFO    ] ================================================
[2026-06-13 18:20:59,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:20:59
[2026-06-13 18:20:59,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:20:59,843.843 INFO    ] Initializing speech engine...
[2026-06-13 18:20:59,848.848 INFO    ] 2026-06-13 18:20:59
[2026-06-13 18:21:00,053.053 INFO    ] 2026-06-13 18:21:00
[2026-06-13 18:21:00,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:00,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:00,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:00,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:00,373.373 INFO    ] time= 13/06/2026 18:21:00
[2026-06-13 18:21:00,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:00,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:00,474.474 INFO    ] No existing commands found in stream
[2026-06-13 18:21:05,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:21:05,491.491 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 18:21:09,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:21:09,451.451 INFO    ] Checking for system updates...
[2026-06-13 18:21:09,472.472 INFO    ] 200
[2026-06-13 18:21:09,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:09,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:09,507.507 INFO    ] No update needed
[2026-06-13 18:21:09,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 18:21:09,530.530 INFO    ] 200
[2026-06-13 18:21:09,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:09,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:21:09,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:09,593.593 INFO    ] No camera update needed
[2026-06-13 18:21:09,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:21:09,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:21:09,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:21:09,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:21:11,641.641 INFO    ] ================================================
[2026-06-13 18:21:11,656.656 INFO    ] Launching Daemon at Sat Jun 13 18:21:11 IST 2026
[2026-06-13 18:21:11,667.667 INFO    ] ================================================
[2026-06-13 18:21:11,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:21:11
[2026-06-13 18:21:12,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:21:12,477.477 INFO    ] Initializing speech engine...
[2026-06-13 18:21:12,490.490 INFO    ] 2026-06-13 18:21:12
[2026-06-13 18:21:12,701.701 INFO    ] 2026-06-13 18:21:12
[2026-06-13 18:21:12,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:12,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:12,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:13,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:13,124.124 INFO    ] time= 13/06/2026 18:21:13
[2026-06-13 18:21:13,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:13,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:13,220.220 INFO    ] No existing commands found in stream
[2026-06-13 18:21:18,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:21:18,233.233 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 18:21:21,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:21:21,236.236 INFO    ] Checking for system updates...
[2026-06-13 18:21:21,258.258 INFO    ] 200
[2026-06-13 18:21:21,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:21,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:21,293.293 INFO    ] No update needed
[2026-06-13 18:21:21,294.294 INFO    ] Checking for camera pi updates...
[2026-06-13 18:21:21,315.315 INFO    ] 200
[2026-06-13 18:21:21,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:21,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:21:21,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:21,483.483 INFO    ] No camera update needed
[2026-06-13 18:21:21,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:21:21,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:21:21,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:21:21,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:21:23,532.532 INFO    ] ================================================
[2026-06-13 18:21:23,547.547 INFO    ] Launching Daemon at Sat Jun 13 18:21:23 IST 2026
[2026-06-13 18:21:23,558.558 INFO    ] ================================================
[2026-06-13 18:21:23,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:21:23
[2026-06-13 18:21:24,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:21:24,332.332 INFO    ] Initializing speech engine...
[2026-06-13 18:21:24,337.337 INFO    ] 2026-06-13 18:21:24
[2026-06-13 18:21:24,529.529 INFO    ] 2026-06-13 18:21:24
[2026-06-13 18:21:24,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:24,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:24,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:24,947.947 INFO    ] time= 13/06/2026 18:21:24
[2026-06-13 18:21:24,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:25,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:25,129.129 INFO    ] No existing commands found in stream
[2026-06-13 18:21:30,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:21:30,141.141 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 18:21:31,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:21:31,699.699 INFO    ] Checking for system updates...
[2026-06-13 18:21:31,732.732 INFO    ] 200
[2026-06-13 18:21:31,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:31,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:31,771.771 INFO    ] No update needed
[2026-06-13 18:21:31,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 18:21:31,795.795 INFO    ] 200
[2026-06-13 18:21:31,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:31,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:21:31,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:31,885.885 INFO    ] No camera update needed
[2026-06-13 18:21:31,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:21:31,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:21:31,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:21:31,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:21:33,936.936 INFO    ] ================================================
[2026-06-13 18:21:33,951.951 INFO    ] Launching Daemon at Sat Jun 13 18:21:33 IST 2026
[2026-06-13 18:21:33,961.961 INFO    ] ================================================
[2026-06-13 18:21:34,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:21:34
[2026-06-13 18:21:35,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:21:35,298.298 INFO    ] Initializing speech engine...
[2026-06-13 18:21:35,303.303 INFO    ] 2026-06-13 18:21:35
[2026-06-13 18:21:35,509.509 INFO    ] 2026-06-13 18:21:35
[2026-06-13 18:21:35,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:35,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:35,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:35,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:35,914.914 INFO    ] time= 13/06/2026 18:21:35
[2026-06-13 18:21:35,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:35,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:36,031.031 INFO    ] No existing commands found in stream
[2026-06-13 18:21:41,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:21:41,043.043 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 18:21:41,552.552 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:21:41,554.554 INFO    ] Checking for system updates...
[2026-06-13 18:21:41,575.575 INFO    ] 200
[2026-06-13 18:21:41,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:41,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:41,611.611 INFO    ] No update needed
[2026-06-13 18:21:41,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 18:21:41,633.633 INFO    ] 200
[2026-06-13 18:21:41,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:41,658.658 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:21:41,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:21:41,696.696 INFO    ] No camera update needed
[2026-06-13 18:21:41,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:21:41,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:21:41,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:21:41,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:21:43,744.744 INFO    ] ================================================
[2026-06-13 18:21:43,761.761 INFO    ] Launching Daemon at Sat Jun 13 18:21:43 IST 2026
[2026-06-13 18:21:43,773.773 INFO    ] ================================================
[2026-06-13 18:21:44,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:21:44
[2026-06-13 18:21:44,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:21:44,585.585 INFO    ] Initializing speech engine...
[2026-06-13 18:21:44,589.589 INFO    ] 2026-06-13 18:21:44
[2026-06-13 18:21:44,820.820 INFO    ] 2026-06-13 18:21:44
[2026-06-13 18:21:44,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:45,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:45,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:45,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:45,258.258 INFO    ] time= 13/06/2026 18:21:45
[2026-06-13 18:21:45,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:45,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:45,383.383 INFO    ] No existing commands found in stream
[2026-06-13 18:21:50,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:21:50,396.396 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 18:21:52,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:21:52,192.192 INFO    ] Checking for system updates...
[2026-06-13 18:21:52,213.213 INFO    ] 200
[2026-06-13 18:21:52,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:52,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:21:52,246.246 INFO    ] No update needed
[2026-06-13 18:21:52,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 18:21:52,267.267 INFO    ] 200
[2026-06-13 18:21:52,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:21:52,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:21:52,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:21:52,329.329 INFO    ] No camera update needed
[2026-06-13 18:21:52,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:21:52,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:21:52,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:21:52,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:21:54,376.376 INFO    ] ================================================
[2026-06-13 18:21:54,391.391 INFO    ] Launching Daemon at Sat Jun 13 18:21:54 IST 2026
[2026-06-13 18:21:54,402.402 INFO    ] ================================================
[2026-06-13 18:21:55,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:21:55
[2026-06-13 18:21:55,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:21:56,045.045 INFO    ] Initializing speech engine...
[2026-06-13 18:21:56,057.057 INFO    ] 2026-06-13 18:21:56
[2026-06-13 18:21:56,344.344 INFO    ] 2026-06-13 18:21:56
[2026-06-13 18:21:56,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:21:56,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:21:56,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:21:56,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:21:56,817.817 INFO    ] time= 13/06/2026 18:21:56
[2026-06-13 18:21:56,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:21:56,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:21:56,975.975 INFO    ] No existing commands found in stream
[2026-06-13 18:22:02,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:22:02,011.011 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 18:22:05,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:22:05,963.963 INFO    ] Checking for system updates...
[2026-06-13 18:22:06,021.021 INFO    ] 200
[2026-06-13 18:22:06,024.024 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:06,028.028 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 18:22:06,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 18:22:06,077.077 INFO    ] 200
[2026-06-13 18:22:06,080.080 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:06,083.083 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 18:22:06,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:22:06,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:22:06,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:22:06,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:22:08,141.141 INFO    ] ================================================
[2026-06-13 18:22:08,156.156 INFO    ] Launching Daemon at Sat Jun 13 18:22:08 IST 2026
[2026-06-13 18:22:08,167.167 INFO    ] ================================================
[2026-06-13 18:22:08,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:22:08
[2026-06-13 18:22:09,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:22:09,147.147 INFO    ] Initializing speech engine...
[2026-06-13 18:22:09,156.156 INFO    ] 2026-06-13 18:22:09
[2026-06-13 18:22:09,381.381 INFO    ] 2026-06-13 18:22:09
[2026-06-13 18:22:09,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:22:09,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:22:09,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:22:09,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:22:09,786.786 INFO    ] time= 13/06/2026 18:22:09
[2026-06-13 18:22:09,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:22:09,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:22:09,938.938 INFO    ] No existing commands found in stream
[2026-06-13 18:22:14,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:22:14,952.952 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 18:22:19,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:22:19,293.293 INFO    ] Checking for system updates...
[2026-06-13 18:22:19,314.314 INFO    ] 200
[2026-06-13 18:22:19,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:19,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:22:19,348.348 INFO    ] No update needed
[2026-06-13 18:22:19,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 18:22:19,371.371 INFO    ] 200
[2026-06-13 18:22:19,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:19,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:22:19,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:22:19,436.436 INFO    ] No camera update needed
[2026-06-13 18:22:19,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:22:19,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:22:19,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:22:19,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:22:21,483.483 INFO    ] ================================================
[2026-06-13 18:22:21,498.498 INFO    ] Launching Daemon at Sat Jun 13 18:22:21 IST 2026
[2026-06-13 18:22:21,509.509 INFO    ] ================================================
[2026-06-13 18:22:21,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:22:21
[2026-06-13 18:22:22,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:22:22,303.303 INFO    ] Initializing speech engine...
[2026-06-13 18:22:22,316.316 INFO    ] 2026-06-13 18:22:22
[2026-06-13 18:22:22,535.535 INFO    ] 2026-06-13 18:22:22
[2026-06-13 18:22:22,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:22:22,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:22:22,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:22:22,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:22:22,972.972 INFO    ] time= 13/06/2026 18:22:22
[2026-06-13 18:22:23,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:22:23,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:22:23,101.101 INFO    ] No existing commands found in stream
[2026-06-13 18:22:28,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:22:28,114.114 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 18:22:29,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:22:29,298.298 INFO    ] Checking for system updates...
[2026-06-13 18:22:29,319.319 INFO    ] 200
[2026-06-13 18:22:29,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:29,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:22:29,356.356 INFO    ] No update needed
[2026-06-13 18:22:29,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 18:22:29,378.378 INFO    ] 200
[2026-06-13 18:22:29,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:29,405.405 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:22:29,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:22:29,448.448 INFO    ] No camera update needed
[2026-06-13 18:22:29,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:22:29,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:22:29,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:22:29,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:22:31,496.496 INFO    ] ================================================
[2026-06-13 18:22:31,511.511 INFO    ] Launching Daemon at Sat Jun 13 18:22:31 IST 2026
[2026-06-13 18:22:31,522.522 INFO    ] ================================================
[2026-06-13 18:22:31,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:22:31
[2026-06-13 18:22:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:22:32,373.373 INFO    ] Initializing speech engine...
[2026-06-13 18:22:32,380.380 INFO    ] 2026-06-13 18:22:32
[2026-06-13 18:22:32,633.633 INFO    ] 2026-06-13 18:22:32
[2026-06-13 18:22:32,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:22:32,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:22:32,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:22:32,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:22:33,059.059 INFO    ] time= 13/06/2026 18:22:32
[2026-06-13 18:22:33,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:22:33,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:22:33,155.155 INFO    ] No existing commands found in stream
[2026-06-13 18:22:38,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:22:38,169.169 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 18:22:40,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:22:40,454.454 INFO    ] Checking for system updates...
[2026-06-13 18:22:40,475.475 INFO    ] 200
[2026-06-13 18:22:40,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:40,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:22:40,511.511 INFO    ] No update needed
[2026-06-13 18:22:40,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 18:22:40,533.533 INFO    ] 200
[2026-06-13 18:22:40,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:40,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:22:40,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:22:40,595.595 INFO    ] No camera update needed
[2026-06-13 18:22:40,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:22:40,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:22:40,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:22:40,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:22:42,643.643 INFO    ] ================================================
[2026-06-13 18:22:42,658.658 INFO    ] Launching Daemon at Sat Jun 13 18:22:42 IST 2026
[2026-06-13 18:22:42,669.669 INFO    ] ================================================
[2026-06-13 18:22:43,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:22:43
[2026-06-13 18:22:43,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:22:43,473.473 INFO    ] Initializing speech engine...
[2026-06-13 18:22:43,479.479 INFO    ] 2026-06-13 18:22:43
[2026-06-13 18:22:43,683.683 INFO    ] 2026-06-13 18:22:43
[2026-06-13 18:22:43,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:22:43,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:22:43,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:22:44,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:22:44,093.093 INFO    ] time= 13/06/2026 18:22:44
[2026-06-13 18:22:44,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:22:44,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:22:44,205.205 INFO    ] No existing commands found in stream
[2026-06-13 18:22:49,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:22:49,219.219 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 18:22:51,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:22:51,513.513 INFO    ] Checking for system updates...
[2026-06-13 18:22:51,535.535 INFO    ] 200
[2026-06-13 18:22:51,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:51,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:22:51,568.568 INFO    ] No update needed
[2026-06-13 18:22:51,570.570 INFO    ] Checking for camera pi updates...
[2026-06-13 18:22:51,589.589 INFO    ] 200
[2026-06-13 18:22:51,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:22:51,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:22:51,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:22:51,651.651 INFO    ] No camera update needed
[2026-06-13 18:22:51,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:22:51,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:22:51,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:22:51,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:22:53,699.699 INFO    ] ================================================
[2026-06-13 18:22:53,714.714 INFO    ] Launching Daemon at Sat Jun 13 18:22:53 IST 2026
[2026-06-13 18:22:53,725.725 INFO    ] ================================================
[2026-06-13 18:22:54,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:22:54
[2026-06-13 18:22:54,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:22:54,586.586 INFO    ] Initializing speech engine...
[2026-06-13 18:22:54,591.591 INFO    ] 2026-06-13 18:22:54
[2026-06-13 18:22:54,799.799 INFO    ] 2026-06-13 18:22:54
[2026-06-13 18:22:54,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:22:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:22:55,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:22:55,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:22:55,214.214 INFO    ] time= 13/06/2026 18:22:55
[2026-06-13 18:22:55,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:22:55,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:22:55,315.315 INFO    ] No existing commands found in stream
[2026-06-13 18:23:00,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:00,330.330 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 18:23:00,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:23:00,934.934 INFO    ] Checking for system updates...
[2026-06-13 18:23:00,955.955 INFO    ] 200
[2026-06-13 18:23:00,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:00,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:00,989.989 INFO    ] No update needed
[2026-06-13 18:23:00,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:01,022.022 INFO    ] 200
[2026-06-13 18:23:01,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:01,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:01,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:01,140.140 INFO    ] No camera update needed
[2026-06-13 18:23:01,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:01,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:01,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:01,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:03,203.203 INFO    ] ================================================
[2026-06-13 18:23:03,218.218 INFO    ] Launching Daemon at Sat Jun 13 18:23:03 IST 2026
[2026-06-13 18:23:03,229.229 INFO    ] ================================================
[2026-06-13 18:23:03,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:23:03
[2026-06-13 18:23:04,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:23:04,663.663 INFO    ] Initializing speech engine...
[2026-06-13 18:23:04,672.672 INFO    ] 2026-06-13 18:23:04
[2026-06-13 18:23:04,924.924 INFO    ] 2026-06-13 18:23:04
[2026-06-13 18:23:04,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:23:05,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:23:05,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:23:05,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:23:05,315.315 INFO    ] time= 13/06/2026 18:23:05
[2026-06-13 18:23:05,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:23:05,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:23:05,445.445 INFO    ] No existing commands found in stream
[2026-06-13 18:23:10,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:10,461.461 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 18:23:10,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:23:10,960.960 INFO    ] Checking for system updates...
[2026-06-13 18:23:10,981.981 INFO    ] 200
[2026-06-13 18:23:10,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:11,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:11,014.014 INFO    ] No update needed
[2026-06-13 18:23:11,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:11,036.036 INFO    ] 200
[2026-06-13 18:23:11,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:11,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:11,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:11,096.096 INFO    ] No camera update needed
[2026-06-13 18:23:11,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:11,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:11,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:11,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:13,144.144 INFO    ] ================================================
[2026-06-13 18:23:13,160.160 INFO    ] Launching Daemon at Sat Jun 13 18:23:13 IST 2026
[2026-06-13 18:23:13,171.171 INFO    ] ================================================
[2026-06-13 18:23:13,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:23:13
[2026-06-13 18:23:13,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:23:13,982.982 INFO    ] Initializing speech engine...
[2026-06-13 18:23:13,990.990 INFO    ] 2026-06-13 18:23:13
[2026-06-13 18:23:14,195.195 INFO    ] 2026-06-13 18:23:14
[2026-06-13 18:23:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:23:14,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:23:14,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:23:14,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:23:14,602.602 INFO    ] time= 13/06/2026 18:23:14
[2026-06-13 18:23:14,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:23:14,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:23:14,711.711 INFO    ] No existing commands found in stream
[2026-06-13 18:23:19,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:19,724.724 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 18:23:23,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:23:23,373.373 INFO    ] Checking for system updates...
[2026-06-13 18:23:23,394.394 INFO    ] 200
[2026-06-13 18:23:23,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:23,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:23:23,428.428 INFO    ] No update needed
[2026-06-13 18:23:23,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:23,449.449 INFO    ] 200
[2026-06-13 18:23:23,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:23,476.476 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:23,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:23:23,624.624 INFO    ] No camera update needed
[2026-06-13 18:23:23,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:23,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:23,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:23,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:25,672.672 INFO    ] ================================================
[2026-06-13 18:23:25,687.687 INFO    ] Launching Daemon at Sat Jun 13 18:23:25 IST 2026
[2026-06-13 18:23:25,698.698 INFO    ] ================================================
[2026-06-13 18:23:26,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:23:26
[2026-06-13 18:23:26,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:23:26,495.495 INFO    ] Initializing speech engine...
[2026-06-13 18:23:26,500.500 INFO    ] 2026-06-13 18:23:26
[2026-06-13 18:23:26,717.717 INFO    ] 2026-06-13 18:23:26
[2026-06-13 18:23:26,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:23:26,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:23:26,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:23:27,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:23:27,145.145 INFO    ] time= 13/06/2026 18:23:27
[2026-06-13 18:23:27,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:23:27,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:23:27,241.241 INFO    ] No existing commands found in stream
[2026-06-13 18:23:32,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:32,253.253 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 18:23:32,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:23:32,860.860 INFO    ] Checking for system updates...
[2026-06-13 18:23:32,883.883 INFO    ] 200
[2026-06-13 18:23:32,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:32,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:32,918.918 INFO    ] No update needed
[2026-06-13 18:23:32,920.920 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:32,939.939 INFO    ] 200
[2026-06-13 18:23:32,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:32,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:33,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:23:33,008.008 INFO    ] No camera update needed
[2026-06-13 18:23:33,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:33,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:33,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:33,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:35,057.057 INFO    ] ================================================
[2026-06-13 18:23:35,072.072 INFO    ] Launching Daemon at Sat Jun 13 18:23:35 IST 2026
[2026-06-13 18:23:35,083.083 INFO    ] ================================================
[2026-06-13 18:23:35,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:23:35
[2026-06-13 18:23:36,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:23:36,339.339 INFO    ] Initializing speech engine...
[2026-06-13 18:23:36,345.345 INFO    ] 2026-06-13 18:23:36
[2026-06-13 18:23:36,602.602 INFO    ] 2026-06-13 18:23:36
[2026-06-13 18:23:36,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:23:36,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:23:36,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:23:36,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:23:36,978.978 INFO    ] time= 13/06/2026 18:23:36
[2026-06-13 18:23:37,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:23:37,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:23:37,145.145 INFO    ] No existing commands found in stream
[2026-06-13 18:23:42,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:42,173.173 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 18:23:44,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:23:44,696.696 INFO    ] Checking for system updates...
[2026-06-13 18:23:44,719.719 INFO    ] 200
[2026-06-13 18:23:44,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:44,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:23:44,754.754 INFO    ] No update needed
[2026-06-13 18:23:44,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:44,775.775 INFO    ] 200
[2026-06-13 18:23:44,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:44,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:44,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:23:44,838.838 INFO    ] No camera update needed
[2026-06-13 18:23:44,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:44,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:44,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:44,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:46,885.885 INFO    ] ================================================
[2026-06-13 18:23:46,900.900 INFO    ] Launching Daemon at Sat Jun 13 18:23:46 IST 2026
[2026-06-13 18:23:46,912.912 INFO    ] ================================================
[2026-06-13 18:23:47,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:23:47
[2026-06-13 18:23:47,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:23:48,059.059 INFO    ] Initializing speech engine...
[2026-06-13 18:23:48,067.067 INFO    ] 2026-06-13 18:23:48
[2026-06-13 18:23:48,367.367 INFO    ] 2026-06-13 18:23:48
[2026-06-13 18:23:48,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:23:48,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:23:48,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:23:48,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:23:48,749.749 INFO    ] time= 13/06/2026 18:23:48
[2026-06-13 18:23:48,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:23:48,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:23:48,874.874 INFO    ] No existing commands found in stream
[2026-06-13 18:23:53,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:23:53,889.889 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 18:23:57,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:23:57,485.485 INFO    ] Checking for system updates...
[2026-06-13 18:23:57,507.507 INFO    ] 200
[2026-06-13 18:23:57,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:57,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:57,541.541 INFO    ] No update needed
[2026-06-13 18:23:57,542.542 INFO    ] Checking for camera pi updates...
[2026-06-13 18:23:57,562.562 INFO    ] 200
[2026-06-13 18:23:57,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:23:57,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:23:57,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:23:57,627.627 INFO    ] No camera update needed
[2026-06-13 18:23:57,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:23:57,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:23:57,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:23:57,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:23:59,676.676 INFO    ] ================================================
[2026-06-13 18:23:59,692.692 INFO    ] Launching Daemon at Sat Jun 13 18:23:59 IST 2026
[2026-06-13 18:23:59,704.704 INFO    ] ================================================
[2026-06-13 18:24:00,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:00
[2026-06-13 18:24:00,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:00,473.473 INFO    ] Initializing speech engine...
[2026-06-13 18:24:00,477.477 INFO    ] 2026-06-13 18:24:00
[2026-06-13 18:24:00,699.699 INFO    ] 2026-06-13 18:24:00
[2026-06-13 18:24:00,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:00,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:00,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:01,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:01,112.112 INFO    ] time= 13/06/2026 18:24:01
[2026-06-13 18:24:01,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:01,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:01,210.210 INFO    ] No existing commands found in stream
[2026-06-13 18:24:06,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:24:06,233.233 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 18:24:08,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:24:08,033.033 INFO    ] Checking for system updates...
[2026-06-13 18:24:08,055.055 INFO    ] 200
[2026-06-13 18:24:08,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:08,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:08,089.089 INFO    ] No update needed
[2026-06-13 18:24:08,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 18:24:08,112.112 INFO    ] 200
[2026-06-13 18:24:08,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:08,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:24:08,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:08,184.184 INFO    ] No camera update needed
[2026-06-13 18:24:08,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:24:08,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:24:08,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:24:08,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:24:10,232.232 INFO    ] ================================================
[2026-06-13 18:24:10,248.248 INFO    ] Launching Daemon at Sat Jun 13 18:24:10 IST 2026
[2026-06-13 18:24:10,258.258 INFO    ] ================================================
[2026-06-13 18:24:10,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:10
[2026-06-13 18:24:10,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:11,092.092 INFO    ] Initializing speech engine...
[2026-06-13 18:24:11,098.098 INFO    ] 2026-06-13 18:24:11
[2026-06-13 18:24:11,308.308 INFO    ] 2026-06-13 18:24:11
[2026-06-13 18:24:11,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:11,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:11,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:11,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:11,715.715 INFO    ] time= 13/06/2026 18:24:11
[2026-06-13 18:24:11,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:11,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:11,834.834 INFO    ] No existing commands found in stream
[2026-06-13 18:24:16,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:24:16,847.847 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 18:24:20,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:24:20,412.412 INFO    ] Checking for system updates...
[2026-06-13 18:24:20,441.441 INFO    ] 200
[2026-06-13 18:24:20,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:20,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:24:20,476.476 INFO    ] No update needed
[2026-06-13 18:24:20,478.478 INFO    ] Checking for camera pi updates...
[2026-06-13 18:24:20,498.498 INFO    ] 200
[2026-06-13 18:24:20,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:20,523.523 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:24:20,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:24:20,565.565 INFO    ] No camera update needed
[2026-06-13 18:24:20,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:24:20,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:24:20,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:24:20,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:24:22,613.613 INFO    ] ================================================
[2026-06-13 18:24:22,629.629 INFO    ] Launching Daemon at Sat Jun 13 18:24:22 IST 2026
[2026-06-13 18:24:22,640.640 INFO    ] ================================================
[2026-06-13 18:24:22,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:22
[2026-06-13 18:24:23,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:23,445.445 INFO    ] Initializing speech engine...
[2026-06-13 18:24:23,451.451 INFO    ] 2026-06-13 18:24:23
[2026-06-13 18:24:23,661.661 INFO    ] 2026-06-13 18:24:23
[2026-06-13 18:24:23,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:23,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:23,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:24,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:24,093.093 INFO    ] time= 13/06/2026 18:24:24
[2026-06-13 18:24:24,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:24,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:24,213.213 INFO    ] No existing commands found in stream
[2026-06-13 18:24:29,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:24:29,226.226 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 18:24:33,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:24:33,624.624 INFO    ] Checking for system updates...
[2026-06-13 18:24:33,661.661 INFO    ] 200
[2026-06-13 18:24:33,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:33,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:33,724.724 INFO    ] No update needed
[2026-06-13 18:24:33,726.726 INFO    ] Checking for camera pi updates...
[2026-06-13 18:24:33,764.764 INFO    ] 200
[2026-06-13 18:24:33,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:33,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:24:33,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:33,859.859 INFO    ] No camera update needed
[2026-06-13 18:24:33,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:24:33,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:24:33,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:24:33,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:24:35,916.916 INFO    ] ================================================
[2026-06-13 18:24:35,931.931 INFO    ] Launching Daemon at Sat Jun 13 18:24:35 IST 2026
[2026-06-13 18:24:35,942.942 INFO    ] ================================================
[2026-06-13 18:24:36,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:36
[2026-06-13 18:24:36,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:36,741.741 INFO    ] Initializing speech engine...
[2026-06-13 18:24:36,752.752 INFO    ] 2026-06-13 18:24:36
[2026-06-13 18:24:36,966.966 INFO    ] 2026-06-13 18:24:36
[2026-06-13 18:24:36,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:37,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:37,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:37,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:37,344.344 INFO    ] time= 13/06/2026 18:24:37
[2026-06-13 18:24:37,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:37,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:37,574.574 INFO    ] No existing commands found in stream
[2026-06-13 18:24:42,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:24:42,591.591 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 18:24:44,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:24:44,031.031 INFO    ] Checking for system updates...
[2026-06-13 18:24:44,052.052 INFO    ] 200
[2026-06-13 18:24:44,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:44,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:24:44,085.085 INFO    ] No update needed
[2026-06-13 18:24:44,087.087 INFO    ] Checking for camera pi updates...
[2026-06-13 18:24:44,107.107 INFO    ] 200
[2026-06-13 18:24:44,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:44,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:24:44,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:24:44,179.179 INFO    ] No camera update needed
[2026-06-13 18:24:44,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:24:44,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:24:44,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:24:44,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:24:46,227.227 INFO    ] ================================================
[2026-06-13 18:24:46,242.242 INFO    ] Launching Daemon at Sat Jun 13 18:24:46 IST 2026
[2026-06-13 18:24:46,253.253 INFO    ] ================================================
[2026-06-13 18:24:46,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:46
[2026-06-13 18:24:46,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:47,094.094 INFO    ] Initializing speech engine...
[2026-06-13 18:24:47,099.099 INFO    ] 2026-06-13 18:24:47
[2026-06-13 18:24:47,306.306 INFO    ] 2026-06-13 18:24:47
[2026-06-13 18:24:47,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:47,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:47,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:47,717.717 INFO    ] time= 13/06/2026 18:24:47
[2026-06-13 18:24:47,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:47,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:47,821.821 INFO    ] No existing commands found in stream
[2026-06-13 18:24:52,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:24:52,832.832 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 18:24:55,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:24:55,625.625 INFO    ] Checking for system updates...
[2026-06-13 18:24:55,665.665 INFO    ] 200
[2026-06-13 18:24:55,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:55,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:55,730.730 INFO    ] No update needed
[2026-06-13 18:24:55,733.733 INFO    ] Checking for camera pi updates...
[2026-06-13 18:24:55,771.771 INFO    ] 200
[2026-06-13 18:24:55,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:24:55,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:24:55,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:24:55,868.868 INFO    ] No camera update needed
[2026-06-13 18:24:55,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:24:55,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:24:55,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:24:55,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:24:57,931.931 INFO    ] ================================================
[2026-06-13 18:24:57,946.946 INFO    ] Launching Daemon at Sat Jun 13 18:24:57 IST 2026
[2026-06-13 18:24:57,962.962 INFO    ] ================================================
[2026-06-13 18:24:58,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:24:58
[2026-06-13 18:24:58,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:24:58,804.804 INFO    ] Initializing speech engine...
[2026-06-13 18:24:58,812.812 INFO    ] 2026-06-13 18:24:58
[2026-06-13 18:24:59,027.027 INFO    ] 2026-06-13 18:24:59
[2026-06-13 18:24:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:24:59,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:24:59,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:24:59,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:24:59,395.395 INFO    ] time= 13/06/2026 18:24:59
[2026-06-13 18:24:59,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:24:59,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:24:59,564.564 INFO    ] No existing commands found in stream
[2026-06-13 18:25:04,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:25:04,578.578 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 18:25:06,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:25:06,792.792 INFO    ] Checking for system updates...
[2026-06-13 18:25:06,813.813 INFO    ] 200
[2026-06-13 18:25:06,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:06,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:06,848.848 INFO    ] No update needed
[2026-06-13 18:25:06,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 18:25:06,869.869 INFO    ] 200
[2026-06-13 18:25:06,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:06,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:25:06,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:06,942.942 INFO    ] No camera update needed
[2026-06-13 18:25:06,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:25:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:25:06,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:25:06,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:25:08,989.989 INFO    ] ================================================
[2026-06-13 18:25:09,004.004 INFO    ] Launching Daemon at Sat Jun 13 18:25:08 IST 2026
[2026-06-13 18:25:09,015.015 INFO    ] ================================================
[2026-06-13 18:25:09,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:25:09
[2026-06-13 18:25:09,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:25:09,823.823 INFO    ] Initializing speech engine...
[2026-06-13 18:25:09,829.829 INFO    ] 2026-06-13 18:25:09
[2026-06-13 18:25:10,033.033 INFO    ] 2026-06-13 18:25:10
[2026-06-13 18:25:10,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:25:10,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:25:10,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:25:10,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:25:10,421.421 INFO    ] time= 13/06/2026 18:25:10
[2026-06-13 18:25:10,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:25:10,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:25:10,548.548 INFO    ] No existing commands found in stream
[2026-06-13 18:25:15,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:25:15,565.565 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 18:25:19,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:25:19,646.646 INFO    ] Checking for system updates...
[2026-06-13 18:25:19,682.682 INFO    ] 200
[2026-06-13 18:25:19,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:19,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:19,742.742 INFO    ] No update needed
[2026-06-13 18:25:19,745.745 INFO    ] Checking for camera pi updates...
[2026-06-13 18:25:19,779.779 INFO    ] 200
[2026-06-13 18:25:19,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:19,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:25:19,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:19,857.857 INFO    ] No camera update needed
[2026-06-13 18:25:19,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:25:19,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:25:19,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:25:19,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:25:21,906.906 INFO    ] ================================================
[2026-06-13 18:25:21,921.921 INFO    ] Launching Daemon at Sat Jun 13 18:25:21 IST 2026
[2026-06-13 18:25:21,932.932 INFO    ] ================================================
[2026-06-13 18:25:22,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:25:22
[2026-06-13 18:25:22,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:25:23,193.193 INFO    ] Initializing speech engine...
[2026-06-13 18:25:23,202.202 INFO    ] 2026-06-13 18:25:23
[2026-06-13 18:25:23,451.451 INFO    ] 2026-06-13 18:25:23
[2026-06-13 18:25:23,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:25:23,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:25:23,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:25:23,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:25:23,923.923 INFO    ] time= 13/06/2026 18:25:23
[2026-06-13 18:25:23,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:25:24,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:25:24,153.153 INFO    ] No existing commands found in stream
[2026-06-13 18:25:29,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:25:29,177.177 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 18:25:32,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:25:32,126.126 INFO    ] Checking for system updates...
[2026-06-13 18:25:32,166.166 INFO    ] 200
[2026-06-13 18:25:32,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:32,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:32,226.226 INFO    ] No update needed
[2026-06-13 18:25:32,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 18:25:32,263.263 INFO    ] 200
[2026-06-13 18:25:32,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:32,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:25:32,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:32,446.446 INFO    ] No camera update needed
[2026-06-13 18:25:32,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:25:32,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:25:32,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:25:32,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:25:34,506.506 INFO    ] ================================================
[2026-06-13 18:25:34,521.521 INFO    ] Launching Daemon at Sat Jun 13 18:25:34 IST 2026
[2026-06-13 18:25:34,532.532 INFO    ] ================================================
[2026-06-13 18:25:34,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:25:34
[2026-06-13 18:25:35,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:25:35,332.332 INFO    ] Initializing speech engine...
[2026-06-13 18:25:35,339.339 INFO    ] 2026-06-13 18:25:35
[2026-06-13 18:25:35,555.555 INFO    ] 2026-06-13 18:25:35
[2026-06-13 18:25:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:25:35,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:25:35,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:25:35,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:25:35,954.954 INFO    ] time= 13/06/2026 18:25:35
[2026-06-13 18:25:36,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:25:36,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:25:36,105.105 INFO    ] No existing commands found in stream
[2026-06-13 18:25:41,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:25:41,116.116 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 18:25:42,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:25:42,581.581 INFO    ] Checking for system updates...
[2026-06-13 18:25:42,601.601 INFO    ] 200
[2026-06-13 18:25:42,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:42,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:42,634.634 INFO    ] No update needed
[2026-06-13 18:25:42,635.635 INFO    ] Checking for camera pi updates...
[2026-06-13 18:25:42,656.656 INFO    ] 200
[2026-06-13 18:25:42,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:42,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:25:42,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:25:42,730.730 INFO    ] No camera update needed
[2026-06-13 18:25:42,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:25:42,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:25:42,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:25:42,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:25:44,777.777 INFO    ] ================================================
[2026-06-13 18:25:44,791.791 INFO    ] Launching Daemon at Sat Jun 13 18:25:44 IST 2026
[2026-06-13 18:25:44,803.803 INFO    ] ================================================
[2026-06-13 18:25:45,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:25:45
[2026-06-13 18:25:45,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:25:45,591.591 INFO    ] Initializing speech engine...
[2026-06-13 18:25:45,603.603 INFO    ] 2026-06-13 18:25:45
[2026-06-13 18:25:45,820.820 INFO    ] 2026-06-13 18:25:45
[2026-06-13 18:25:45,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:25:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:25:46,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:25:46,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:25:46,243.243 INFO    ] time= 13/06/2026 18:25:46
[2026-06-13 18:25:46,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:25:46,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:25:46,369.369 INFO    ] No existing commands found in stream
[2026-06-13 18:25:51,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:25:51,381.381 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 18:25:52,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:25:52,936.936 INFO    ] Checking for system updates...
[2026-06-13 18:25:52,958.958 INFO    ] 200
[2026-06-13 18:25:52,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:52,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:25:52,991.991 INFO    ] No update needed
[2026-06-13 18:25:52,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 18:25:53,012.012 INFO    ] 200
[2026-06-13 18:25:53,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:25:53,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:25:53,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:25:53,069.069 INFO    ] No camera update needed
[2026-06-13 18:25:53,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:25:53,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:25:53,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:25:53,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:25:55,116.116 INFO    ] ================================================
[2026-06-13 18:25:55,131.131 INFO    ] Launching Daemon at Sat Jun 13 18:25:55 IST 2026
[2026-06-13 18:25:55,143.143 INFO    ] ================================================
[2026-06-13 18:25:55,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:25:55
[2026-06-13 18:25:55,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:25:56,063.063 INFO    ] Initializing speech engine...
[2026-06-13 18:25:56,069.069 INFO    ] 2026-06-13 18:25:56
[2026-06-13 18:25:56,332.332 INFO    ] 2026-06-13 18:25:56
[2026-06-13 18:25:56,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:25:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:25:56,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:25:56,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:25:56,765.765 INFO    ] time= 13/06/2026 18:25:56
[2026-06-13 18:25:56,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:25:56,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:25:56,972.972 INFO    ] No existing commands found in stream
[2026-06-13 18:26:02,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:26:02,004.004 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 18:26:04,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:26:04,695.695 INFO    ] Checking for system updates...
[2026-06-13 18:26:04,716.716 INFO    ] 200
[2026-06-13 18:26:04,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:04,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:04,749.749 INFO    ] No update needed
[2026-06-13 18:26:04,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 18:26:04,770.770 INFO    ] 200
[2026-06-13 18:26:04,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:04,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:26:04,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:26:04,838.838 INFO    ] No camera update needed
[2026-06-13 18:26:04,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:26:04,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:26:04,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:26:04,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:26:06,886.886 INFO    ] ================================================
[2026-06-13 18:26:06,901.901 INFO    ] Launching Daemon at Sat Jun 13 18:26:06 IST 2026
[2026-06-13 18:26:06,912.912 INFO    ] ================================================
[2026-06-13 18:26:07,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:26:07
[2026-06-13 18:26:08,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:26:08,264.264 INFO    ] Initializing speech engine...
[2026-06-13 18:26:08,277.277 INFO    ] 2026-06-13 18:26:08
[2026-06-13 18:26:08,542.542 INFO    ] 2026-06-13 18:26:08
[2026-06-13 18:26:08,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:26:08,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:26:08,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:26:08,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:26:08,885.885 INFO    ] time= 13/06/2026 18:26:08
[2026-06-13 18:26:08,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:26:08,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:26:08,997.997 INFO    ] No existing commands found in stream
[2026-06-13 18:26:14,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:26:14,013.013 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 18:26:17,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:26:17,981.981 INFO    ] Checking for system updates...
[2026-06-13 18:26:18,001.001 INFO    ] 200
[2026-06-13 18:26:18,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:18,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:18,036.036 INFO    ] No update needed
[2026-06-13 18:26:18,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 18:26:18,057.057 INFO    ] 200
[2026-06-13 18:26:18,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:18,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:26:18,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:18,119.119 INFO    ] No camera update needed
[2026-06-13 18:26:18,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:26:18,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:26:18,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:26:18,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:26:20,167.167 INFO    ] ================================================
[2026-06-13 18:26:20,182.182 INFO    ] Launching Daemon at Sat Jun 13 18:26:20 IST 2026
[2026-06-13 18:26:20,193.193 INFO    ] ================================================
[2026-06-13 18:26:20,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:26:20
[2026-06-13 18:26:20,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:26:20,988.988 INFO    ] Initializing speech engine...
[2026-06-13 18:26:20,992.992 INFO    ] 2026-06-13 18:26:20
[2026-06-13 18:26:21,207.207 INFO    ] 2026-06-13 18:26:21
[2026-06-13 18:26:21,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:26:21,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:26:21,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:26:21,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:26:21,609.609 INFO    ] time= 13/06/2026 18:26:21
[2026-06-13 18:26:21,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:26:21,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:26:21,725.725 INFO    ] No existing commands found in stream
[2026-06-13 18:26:26,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:26:26,742.742 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 18:26:28,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:26:28,203.203 INFO    ] Checking for system updates...
[2026-06-13 18:26:28,224.224 INFO    ] 200
[2026-06-13 18:26:28,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:28,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:26:28,257.257 INFO    ] No update needed
[2026-06-13 18:26:28,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 18:26:28,278.278 INFO    ] 200
[2026-06-13 18:26:28,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:28,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:26:28,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:26:28,331.331 INFO    ] No camera update needed
[2026-06-13 18:26:28,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:26:28,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:26:28,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:26:28,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:26:30,383.383 INFO    ] ================================================
[2026-06-13 18:26:30,398.398 INFO    ] Launching Daemon at Sat Jun 13 18:26:30 IST 2026
[2026-06-13 18:26:30,409.409 INFO    ] ================================================
[2026-06-13 18:26:30,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:26:30
[2026-06-13 18:26:31,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:26:31,242.242 INFO    ] Initializing speech engine...
[2026-06-13 18:26:31,248.248 INFO    ] 2026-06-13 18:26:31
[2026-06-13 18:26:31,471.471 INFO    ] 2026-06-13 18:26:31
[2026-06-13 18:26:31,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:26:31,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:26:31,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:26:31,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:26:31,927.927 INFO    ] time= 13/06/2026 18:26:31
[2026-06-13 18:26:31,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:26:31,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:26:32,035.035 INFO    ] No existing commands found in stream
[2026-06-13 18:26:37,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:26:37,052.052 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 18:26:39,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:26:39,552.552 INFO    ] Checking for system updates...
[2026-06-13 18:26:39,573.573 INFO    ] 200
[2026-06-13 18:26:39,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:39,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:39,607.607 INFO    ] No update needed
[2026-06-13 18:26:39,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 18:26:39,628.628 INFO    ] 200
[2026-06-13 18:26:39,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:39,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:26:39,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:39,704.704 INFO    ] No camera update needed
[2026-06-13 18:26:39,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:26:39,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:26:39,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:26:39,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:26:41,752.752 INFO    ] ================================================
[2026-06-13 18:26:41,767.767 INFO    ] Launching Daemon at Sat Jun 13 18:26:41 IST 2026
[2026-06-13 18:26:41,778.778 INFO    ] ================================================
[2026-06-13 18:26:42,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:26:42
[2026-06-13 18:26:42,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:26:42,625.625 INFO    ] Initializing speech engine...
[2026-06-13 18:26:42,630.630 INFO    ] 2026-06-13 18:26:42
[2026-06-13 18:26:42,838.838 INFO    ] 2026-06-13 18:26:42
[2026-06-13 18:26:42,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:26:43,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:26:43,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:26:43,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:26:43,241.241 INFO    ] time= 13/06/2026 18:26:43
[2026-06-13 18:26:43,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:26:43,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:26:43,359.359 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 18:26:43,366.366 INFO    ] Checking historical command: ID=1781355398802-0
[2026-06-13 18:26:43,386.386 INFO    ] process_and_cleanup_command: msg_id=1781355398802-0
[2026-06-13 18:26:43,408.408 INFO    ] is_command_expired: timestamp=2026-06-13T12:56:39.033Z, expiry=30s
[2026-06-13 18:26:43,500.500 INFO    ] Command removed from stream: 1781355398802-0. returning for processing...
[2026-06-13 18:26:43,503.503 INFO    ] ***** get_valid_command
[2026-06-13 18:26:43,506.506 INFO    ] {'command': 'start-order', 'source': 'webapp', 'timeout': '10', 'timestamp': '2026-06-13T12:56:39.033Z', 'data': '{"request_id":"start-order-1781355399033-m59v1qflk","orderId":"TM08202203260613182244765","is_vending":false}'}
[2026-06-13 18:26:43,511.511 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781355399033-m59v1qflk', 'is_vending': False, 'orderId': 'TM08202203260613182244765'}
[2026-06-13 18:26:43,516.516 INFO    ] Handling start order...
[2026-06-13 18:26:43,520.520 INFO    ] handle_start_order_command
[2026-06-13 18:26:43,526.526 INFO    ] _send_start_order_success: request_id=start-order-1781355399033-m59v1qflk, order_id=TM08202203260613182244765
[2026-06-13 18:26:43,530.530 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 18:26:43,579.579 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781355403555-0
[2026-06-13 18:26:43,582.582 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 18:26:43,585.585 INFO    ] Checking for system updates...
[2026-06-13 18:26:43,613.613 INFO    ] 200
[2026-06-13 18:26:43,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:43,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:43,657.657 INFO    ] No update needed
[2026-06-13 18:26:43,662.662 INFO    ] Checking for camera pi updates...
[2026-06-13 18:26:43,732.732 INFO    ] 200
[2026-06-13 18:26:43,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:43,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:26:43,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:26:43,870.870 INFO    ] No camera update needed
[2026-06-13 18:26:43,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:26:43,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:26:43,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:26:43,893.893 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 18:26:43,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:26:45,935.935 INFO    ] ================================================
[2026-06-13 18:26:45,950.950 INFO    ] Launching Daemon at Sat Jun 13 18:26:45 IST 2026
[2026-06-13 18:26:45,961.961 INFO    ] ================================================
[2026-06-13 18:26:46,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:26:46
[2026-06-13 18:26:46,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:26:47,194.194 INFO    ] Initializing speech engine...
[2026-06-13 18:26:47,202.202 INFO    ] 2026-06-13 18:26:47
[2026-06-13 18:26:47,488.488 INFO    ] 2026-06-13 18:26:47
[2026-06-13 18:26:47,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:26:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:26:47,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:26:47,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:26:47,951.951 INFO    ] time= 13/06/2026 18:26:47
[2026-06-13 18:26:47,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:26:48,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:26:48,097.097 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 18:26:48,110.110 INFO    ] Checking historical command: ID=1781355403555-0
[2026-06-13 18:26:48,181.181 INFO    ] process_and_cleanup_command: msg_id=1781355403555-0
[2026-06-13 18:26:48,233.233 INFO    ] is_command_expired: timestamp=2026-06-13T12:56:43.528031Z, expiry=30s
[2026-06-13 18:26:48,472.472 INFO    ] Command removed from stream: 1781355403555-0. returning for processing...
[2026-06-13 18:26:48,507.507 INFO    ] ***** get_valid_command
[2026-06-13 18:26:48,544.544 INFO    ] {'timestamp': '2026-06-13T12:56:43.528031Z', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781355399033-m59v1qflk', 'message_type': 'command_response', 'status': 'success', 'metadata_order_id': 'TM08202203260613182244765', 'imei': 'TM08202203'}
[2026-06-13 18:26:48,556.556 INFO    ] Checking historical command: ID=1781355406938-0
[2026-06-13 18:26:48,560.560 INFO    ] process_and_cleanup_command: msg_id=1781355406938-0
[2026-06-13 18:26:48,563.563 INFO    ] is_command_expired: timestamp=2026-06-13T12:56:47.205Z, expiry=30s
[2026-06-13 18:26:48,679.679 INFO    ] Command removed from stream: 1781355406938-0. returning for processing...
[2026-06-13 18:26:48,700.700 INFO    ] ***** get_valid_command
[2026-06-13 18:26:48,709.709 INFO    ] {'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781355407205-leish7qu7","orderId":"TM08202203260613182244765","is_vending":false,"accessCode":"25851297"}', 'timeout': '60', 'timestamp': '2026-06-13T12:56:47.205Z'}
[2026-06-13 18:26:48,756.756 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781355407205-leish7qu7', 'accessCode': '25851297', 'is_vending': False, 'orderId': 'TM08202203260613182244765'}
[2026-06-13 18:26:48,760.760 INFO    ] Handling process order...
[2026-06-13 18:26:48,799.799 INFO    ] Processing process-order command...
[2026-06-13 18:26:48,818.818 INFO    ] 🔍 Lock file Order ID: TM08202203260613182244765, TS: 2026-06-13 18:26:43
[2026-06-13 18:26:48,837.837 INFO    ] ✅ Order lock valid for TM08202203260613182244765
[2026-06-13 18:26:48,843.843 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 18:26:48,848.848 INFO    ] processing access code 25851297 for order TM08202203260613182244765
[2026-06-13 18:26:48,855.855 INFO    ] 🔍 Lock file Order ID: TM08202203260613182244765, TS: 2026-06-13 18:26:43
[2026-06-13 18:26:48,859.859 INFO    ] ✅ Order lock valid for TM08202203260613182244765
[2026-06-13 18:26:48,865.865 INFO    ] 2026-06-13 18:26:48
[2026-06-13 18:26:49,002.002 INFO    ] 200
[2026-06-13 18:26:49,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:26:49,028.028 INFO    ] 25851297
[2026-06-13 18:26:49,034.034 INFO    ] 2026-06-13 18:26:49
[2026-06-13 18:26:49,043.043 INFO    ] session id :331264678
[2026-06-13 18:26:49,050.050 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=25851297&imei=TM08202203&session_id=331264678
[2026-06-13 18:26:49,917.917 INFO    ] 200
[2026-06-13 18:26:49,923.923 INFO    ] {"data": {"mobile": "9113540261", "order_id": "TM08202203260613182244765", "bill_amount": "95", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500651-8004.webp", "skuid": "4500651", "door_id": "2", "mrp": "45", "offer_desc": "", "name": "Sunfeast Breakfast protein Smoothie with Oats", "tray_id": "44", "unit_price": 45, "qty": 1, "sku_total": 45, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "25851297", "invoice_bill": "95"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 18:26:49,926.926 INFO    ] 95
[2026-06-13 18:26:49,935.935 INFO    ] TM08202203260613182244765
[2026-06-13 18:26:49,947.947 INFO    ] 9113540261
[2026-06-13 18:26:49,954.954 INFO    ] 2026-06-13 18:26:49
[2026-06-13 18:26:49,964.964 INFO    ] Door Opening for user mobile ending with  zero two six one 
[2026-06-13 18:26:49,968.968 INFO    ] Door Opening for user mobile ending with  zero two six one 
[2026-06-13 18:26:49,972.972 INFO    ] 7ad6c71e5303dd36ac2a4bd735ba264f
[2026-06-13 18:26:49,995.995 INFO    ] 2026-06-13 18:26:49
[2026-06-13 18:26:50,001.001 INFO    ] creating audio file
[2026-06-13 18:26:50,263.263 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 18:26:51,280.280 INFO    ] gTTS API call completed successfully
[2026-06-13 18:26:51,975.975 INFO    ] 2026-06-13 18:26:51
[2026-06-13 18:26:51,976.976 INFO    ] playing audio file
[2026-06-13 18:26:51,987.987 INFO    ] 2026-06-13 18:26:51
[2026-06-13 18:26:51,989.989 INFO    ] 2026-06-13 18:26:51
[2026-06-13 18:26:51,991.991 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:26:51,992.992 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:26:52,070.070 INFO    ] [publish_status] Message added to stream with ID: 1781355412049-0
[2026-06-13 18:26:52,071.071 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'order-started', 'server_response': '{"data": {"bill_amount": "95", "access_code": "25851297", "invoice_bill": "95", "mobile": "9113540261", "proposed_sku_json": [{"sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_id": "", "door_id": "2", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "mrp": "30", "skuid": "186084", "qty": 1}, {"sku_total": 45, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "offer_id": "", "door_id": "2", "offer_desc": "", "name": "Sunfeast Breakfast protein Smoothie with Oats", "tray_id": "44", "unit_price": 45, "mrp": "45", "skuid": "4500651", "qty": 1}, {"sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "offer_id": "", "door_id": "2", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "mrp": "20", "skuid": "185993", "qty": 1}], "order_id": "TM08202203260613182244765"}, "msg": "Order Data", "rstatus": true, "status": true}', 'order_id': 'TM08202203260613182244765', 'timestamp': '2026-06-13T12:56:51.990031Z'} (ID: 1781355412049-0)
[2026-06-13 18:26:52,381.381 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'bill_amount': '95', 'access_code': '25851297', 'invoice_bill': '95', 'mobile': '9113540261', 'proposed_sku_json': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '40', 'unit_price': 30, 'mrp': '30', 'skuid': '186084', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'tray_id': '44', 'unit_price': 45, 'mrp': '45', 'skuid': '4500651', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'door_id': '2', 'offer_desc': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'unit_price': 20, 'mrp': '20', 'skuid': '185993', 'qty': 1}], 'order_id': 'TM08202203260613182244765'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613182244765'}
[2026-06-13 18:26:52,383.383 INFO    ] 200
[2026-06-13 18:26:52,384.384 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"bill_amount":"95","access_code":"25851297","invoice_bill":"95","mobile":"9113540261","proposed_sku_json":[{"sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_id":"","door_id":"2","offer_desc":"","name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"40","unit_price":30,"mrp":"30","skuid":"186084","qty":1},{"sku_total":45,"image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","offer_id":"","door_id":"2","offer_desc":"","name":"Sunfeast Breakfast protein Smoothie with Oats","tray_id":"44","unit_price":45,"mrp":"45","skuid":"4500651","qty":1},{"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","offer_id":"","door_id":"2","offer_desc":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","unit_price":20,"mrp":"20","skuid":"185993","qty":1}],"order_id":"TM08202203260613182244765"},"msg":"Order Data","rstatus":true,"status":true},"order_id":"TM08202203260613182244765"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 18:26:52,386.386 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'data': {'bill_amount': '95', 'access_code': '25851297', 'invoice_bill': '95', 'order_id': 'TM08202203260613182244765', 'proposed_sku_json': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'door_id': '2', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '40', 'offer_desc': '', 'unit_price': 30, 'mrp': '30', 'skuid': '186084', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'offer_id': '', 'door_id': '2', 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'tray_id': '44', 'offer_desc': '', 'unit_price': 45, 'mrp': '45', 'skuid': '4500651', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'offer_desc': '', 'unit_price': 20, 'mrp': '20', 'skuid': '185993', 'qty': 1}], 'mobile': '9113540261'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:26:52,388.388 INFO    ] 2026-06-13 18:26:52
[2026-06-13 18:26:52,415.415 INFO    ] 200
[2026-06-13 18:26:52,417.417 INFO    ] True
[2026-06-13 18:26:52,566.566 INFO    ] 200
[2026-06-13 18:26:52,570.570 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 18:26:52,574.574 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 18:26:52,577.577 INFO    ] *** process_order ***
[2026-06-13 18:26:53,781.781 INFO    ] 200
[2026-06-13 18:26:53,784.784 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 18:26:53,787.787 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'delay': 0}
[2026-06-13 18:26:53,790.790 INFO    ] *** process_order ***
[2026-06-13 18:26:53,793.793 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:26:53,796.796 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:26:53,873.873 INFO    ] [publish_status] Message added to stream with ID: 1781355413851-0
[2026-06-13 18:26:53,875.875 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}}', 'order_id': 'TM08202203260613182244765'} (ID: 1781355413851-0)
[2026-06-13 18:26:54,920.920 INFO    ] 2026-06-13 18:26:54
[2026-06-13 18:26:54,924.924 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:26:54,927.927 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:26:55,001.001 INFO    ] [publish_status] Message added to stream with ID: 1781355414977-0
[2026-06-13 18:26:55,004.004 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "delay": 0}', 'order_id': 'TM08202203260613182244765', 'timestamp': '2026-06-13T12:56:54.921881Z'} (ID: 1781355414977-0)
[2026-06-13 18:26:55,123.123 INFO    ] {'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'delay': 0}, 'order_id': 'TM08202203260613182244765'}
[2026-06-13 18:26:55,125.125 INFO    ] 200
[2026-06-13 18:26:55,128.128 INFO    ] {"data":{"server_status":"processOrder","server_response":{"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","SectionMain":{"Header":"Processing Order"},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"},"rstatus":true,"delay":0},"order_id":"TM08202203260613182244765"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 18:26:55,131.131 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:26:55,135.135 INFO    ] 2026-06-13 18:26:55
[2026-06-13 18:26:55,139.139 INFO    ] None
[2026-06-13 18:26:55,142.142 INFO    ] Opening Door now
[2026-06-13 18:26:55,145.145 INFO    ] Opening Door now
[2026-06-13 18:26:55,149.149 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 18:26:55,152.152 INFO    ] 2026-06-13 18:26:55
[2026-06-13 18:26:55,155.155 INFO    ] playing audio file
[2026-06-13 18:26:55,173.173 INFO    ] 2026-06-13 18:26:55
[2026-06-13 18:26:55,175.175 INFO    ] 2026-06-13 18:26:55
[2026-06-13 18:26:58,281.281 INFO    ] 200
[2026-06-13 18:26:58,282.282 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 18:26:58,284.284 INFO    ] {'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 18:27:01,561.561 INFO    ] 200
[2026-06-13 18:27:01,565.565 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 18:27:01,570.570 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 18:27:04,607.607 INFO    ] 200
[2026-06-13 18:27:04,608.608 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 18:27:04,610.610 INFO    ] Please close door 2
[2026-06-13 18:27:04,612.612 INFO    ] Please close door 2
[2026-06-13 18:27:04,614.614 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 18:27:04,615.615 INFO    ] 2026-06-13 18:27:04
[2026-06-13 18:27:04,617.617 INFO    ] playing audio file
[2026-06-13 18:27:04,629.629 INFO    ] 2026-06-13 18:27:04
[2026-06-13 18:27:04,631.631 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:27:04,633.633 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:27:04,701.701 INFO    ] [publish_status] Message added to stream with ID: 1781355424679-0
[2026-06-13 18:27:04,702.702 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "status": "False", "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}}', 'order_id': 'TM08202203260613182244765', 'timestamp': '2026-06-13T12:57:04.630551Z'} (ID: 1781355424679-0)
[2026-06-13 18:27:05,033.033 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613182244765'}
[2026-06-13 18:27:05,034.034 INFO    ] 200
[2026-06-13 18:27:05,036.036 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"Sunfeast Breakfast protein Smoothie with Oats"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"status":"false","rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613182244765"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 18:27:05,037.037 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:27:05,039.039 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 18:27:08,071.071 INFO    ] 200
[2026-06-13 18:27:08,072.072 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 18:27:08,074.074 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 18:27:11,114.114 INFO    ] 200
[2026-06-13 18:27:11,115.115 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 18:27:11,117.117 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 18:27:14,154.154 INFO    ] 200
[2026-06-13 18:27:14,156.156 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 18:27:14,157.157 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:27:14,159.159 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:27:14,220.220 INFO    ] [publish_status] Message added to stream with ID: 1781355434199-0
[2026-06-13 18:27:14,221.221 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Transaction Completed", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "delay": 100}', 'order_id': 'TM08202203260613182244765', 'timestamp': '2026-06-13T12:57:14.156902Z'} (ID: 1781355434199-0)
[2026-06-13 18:27:14,564.564 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'delay': 100}, 'order_id': 'TM08202203260613182244765'}
[2026-06-13 18:27:14,566.566 INFO    ] 200
[2026-06-13 18:27:14,567.567 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"voiceNote":"Transaction Completed","SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"status":"true","SectionMain":{"Header":"Door Closed"},"SectionStatus":{"UI_Header":"","Header":" Order is complete ","Note":"If any due amount, clear at https:\/\/go.tinymart.in","SubHeader":"Please wait for invoice to generate"},"rstatus":true,"delay":100},"order_id":"TM08202203260613182244765"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 18:27:14,569.569 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'status': 'true', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:27:14,571.571 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'delay': 100}
[2026-06-13 18:27:14,573.573 INFO    ] 2026-06-13 18:27:14
[2026-06-13 18:27:14,575.575 INFO    ] Order Completed 
[2026-06-13 18:27:14,576.576 INFO    ] Order Completed 
[2026-06-13 18:27:14,577.577 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 18:27:14,579.579 INFO    ] 2026-06-13 18:27:14
[2026-06-13 18:27:14,581.581 INFO    ] playing audio file
[2026-06-13 18:27:14,591.591 INFO    ] 2026-06-13 18:27:14
[2026-06-13 18:27:14,593.593 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'delay': 100}
[2026-06-13 18:27:14,595.595 INFO    ] 2026-06-13 18:27:14
[2026-06-13 18:27:15,069.069 INFO    ] 200
[2026-06-13 18:27:15,073.073 INFO    ] {"res": true, "bill_amount": 95, "orderId": "TM08202203260613182244765", "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "door_id": "", "mrp": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "tray_id": "40", "sku_total": 30, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "unit_price": "20", "door_id": "", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "skuid": "185993", "tray_id": "43", "sku_total": 20, "qty": 1, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500651-8004.webp", "unit_price": "45", "door_id": "", "mrp": "45", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "skuid": "4500651", "tray_id": "44", "sku_total": 45, "qty": 1, "offer_id": ""}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 95, "order_status": "", "userId": "9113540261", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 18:27:15,077.077 INFO    ] {'bill_amount': 95, 'res': True, 'userId': '9113540261', 'total_amount': 95, 'anomaly': 0, 'cart_offer_desc': '', 'order_status': '', 'imei': 'TM08202203', 'skus': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'unit_price': '30', 'mrp': '30', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'skuid': '185993', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'offer_id': '', 'skuid': '4500651', 'door_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '44', 'unit_price': '45', 'mrp': '45', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613182244765'}
[2026-06-13 18:27:15,080.080 INFO    ] {'bill_amount': 95, 'res': True, 'userId': '9113540261', 'total_amount': 95, 'anomaly': 0, 'cart_offer_desc': '', 'order_status': '', 'imei': 'TM08202203', 'skus': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'unit_price': '30', 'mrp': '30', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'skuid': '185993', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'offer_id': '', 'skuid': '4500651', 'door_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '44', 'unit_price': '45', 'mrp': '45', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613182244765'}
[2026-06-13 18:27:15,085.085 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,088.088 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,091.091 INFO    ] 95
[2026-06-13 18:27:15,095.095 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,098.098 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,101.101 INFO    ]  Your Bill Amount is 95
[2026-06-13 18:27:15,105.105 INFO    ]  Your Bill Amount is 95
[2026-06-13 18:27:15,108.108 INFO    ] 4ffb9d6b882f850b566336b47e3bd2c1
[2026-06-13 18:27:15,111.111 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,115.115 INFO    ] playing audio file
[2026-06-13 18:27:15,134.134 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,138.138 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:15,142.142 INFO    ] publish_status: order_id=TM08202203260613182244765
[2026-06-13 18:27:15,146.146 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613182244765
[2026-06-13 18:27:15,214.214 INFO    ] [publish_status] Message added to stream with ID: 1781355435188-0
[2026-06-13 18:27:15,218.218 INFO    ] Published to order:TM08202203260613182244765: {'server_status': 'invoiceOrder', 'server_response': '{"bill_amount": 95, "res": true, "userId": "9113540261", "total_amount": 95, "anomaly": 0, "cart_offer_desc": "", "order_status": "", "imei": "TM08202203", "skus": [{"sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_id": "", "skuid": "186084", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "tray_id": "40", "unit_price": "30", "mrp": "30", "qty": 1}, {"sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "offer_id": "", "skuid": "185993", "door_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "tray_id": "43", "unit_price": "20", "mrp": "20", "qty": 1}, {"sku_total": 45, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "offer_id": "", "skuid": "4500651", "door_id": "", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "tray_id": "44", "unit_price": "45", "mrp": "45", "qty": 1}], "rstatus": true, "orderId": "TM08202203260613182244765"}', 'order_id': 'TM08202203260613182244765', 'timestamp': '2026-06-13T12:57:15.140470Z'} (ID: 1781355435188-0)
[2026-06-13 18:27:15,343.343 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 95, 'res': True, 'userId': '9113540261', 'total_amount': 95, 'anomaly': 0, 'cart_offer_desc': '', 'order_status': '', 'imei': 'TM08202203', 'skus': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'unit_price': '30', 'mrp': '30', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'offer_id': '', 'skuid': '185993', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'offer_id': '', 'skuid': '4500651', 'door_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '44', 'unit_price': '45', 'mrp': '45', 'qty': 1}], 'rstatus': True, 'orderId': 'TM08202203260613182244765'}, 'order_id': 'TM08202203260613182244765'}
[2026-06-13 18:27:15,347.347 INFO    ] 200
[2026-06-13 18:27:15,350.350 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"bill_amount":95,"res":true,"userId":"9113540261","total_amount":95,"anomaly":0,"cart_offer_desc":"","order_status":"","imei":"TM08202203","skus":[{"sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_id":"","skuid":"186084","door_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","tray_id":"40","unit_price":"30","mrp":"30","qty":1},{"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","offer_id":"","skuid":"185993","door_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","tray_id":"43","unit_price":"20","mrp":"20","qty":1},{"sku_total":45,"image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","offer_id":"","skuid":"4500651","door_id":"","name":"Sunfeast Breakfast protein Smoothie with Oats per peice","tray_id":"44","unit_price":"45","mrp":"45","qty":1}],"rstatus":true,"orderId":"TM08202203260613182244765"},"order_id":"TM08202203260613182244765"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 18:27:15,354.354 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 95, 'res': True, 'userId': '9113540261', 'orderId': 'TM08202203260613182244765', 'total_amount': 95, 'anomaly': 0, 'cart_offer_desc': '', 'imei': 'TM08202203', 'skus': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'offer_id': '', 'mrp': '30', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'offer_id': '', 'mrp': '20', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'unit_price': '45', 'skuid': '4500651', 'door_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '44', 'offer_id': '', 'mrp': '45', 'qty': 1}], 'rstatus': True, 'order_status': ''}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:27:15,358.358 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 95, 'res': True, 'userId': '9113540261', 'orderId': 'TM08202203260613182244765', 'total_amount': 95, 'anomaly': 0, 'cart_offer_desc': '', 'imei': 'TM08202203', 'skus': [{'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'skuid': '186084', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '40', 'offer_id': '', 'mrp': '30', 'qty': 1}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'skuid': '185993', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'offer_id': '', 'mrp': '20', 'qty': 1}, {'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'unit_price': '45', 'skuid': '4500651', 'door_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '44', 'offer_id': '', 'mrp': '45', 'qty': 1}], 'rstatus': True, 'order_status': ''}, 'order_id': 'TM08202203260613182244765'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 18:27:15,362.362 INFO    ] 2026-06-13 18:27:15
[2026-06-13 18:27:18,194.194 INFO    ] 200
[2026-06-13 18:27:18,197.197 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765", "TM08202203260613182244765"], "orders_synced": [], "order_items_synced": ["TM08202203260613182244765_0", "TM08202203260613182244765_1", "TM08202203260613182244765_2"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 18:27:18,200.200 INFO    ] 2026-06-13 18:27:18
[2026-06-13 18:27:18,323.323 INFO    ] 200
[2026-06-13 18:27:18,326.326 INFO    ] True
[2026-06-13 18:27:18,329.329 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613182244765
[2026-06-13 18:27:18,333.333 INFO    ] start order file deleted
[2026-06-13 18:27:18,336.336 INFO    ] Checking for system updates...
[2026-06-13 18:27:18,375.375 INFO    ] 200
[2026-06-13 18:27:18,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:18,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:27:18,444.444 INFO    ] No update needed
[2026-06-13 18:27:18,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 18:27:18,486.486 INFO    ] 200
[2026-06-13 18:27:18,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:18,532.532 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:27:18,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:27:18,583.583 INFO    ] No camera update needed
[2026-06-13 18:27:18,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:27:18,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:27:18,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:27:18,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:27:20,645.645 INFO    ] ================================================
[2026-06-13 18:27:20,661.661 INFO    ] Launching Daemon at Sat Jun 13 18:27:20 IST 2026
[2026-06-13 18:27:20,672.672 INFO    ] ================================================
[2026-06-13 18:27:21,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:27:21
[2026-06-13 18:27:21,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:27:21,688.688 INFO    ] Initializing speech engine...
[2026-06-13 18:27:21,693.693 INFO    ] 2026-06-13 18:27:21
[2026-06-13 18:27:21,904.904 INFO    ] 2026-06-13 18:27:21
[2026-06-13 18:27:21,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:27:22,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:27:22,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:27:22,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:27:22,317.317 INFO    ] time= 13/06/2026 18:27:22
[2026-06-13 18:27:22,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:27:22,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:27:22,429.429 INFO    ] No existing commands found in stream
[2026-06-13 18:27:27,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:27:27,443.443 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 18:27:30,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:27:30,301.301 INFO    ] Checking for system updates...
[2026-06-13 18:27:30,322.322 INFO    ] 200
[2026-06-13 18:27:30,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:30,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:27:30,355.355 INFO    ] No update needed
[2026-06-13 18:27:30,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 18:27:30,378.378 INFO    ] 200
[2026-06-13 18:27:30,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:30,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:27:30,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:27:30,454.454 INFO    ] No camera update needed
[2026-06-13 18:27:30,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:27:30,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:27:30,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:27:30,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:27:32,496.496 INFO    ] ================================================
[2026-06-13 18:27:32,511.511 INFO    ] Launching Daemon at Sat Jun 13 18:27:32 IST 2026
[2026-06-13 18:27:32,522.522 INFO    ] ================================================
[2026-06-13 18:27:33,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:27:33
[2026-06-13 18:27:33,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:27:34,075.075 INFO    ] Initializing speech engine...
[2026-06-13 18:27:34,098.098 INFO    ] 2026-06-13 18:27:34
[2026-06-13 18:27:34,354.354 INFO    ] 2026-06-13 18:27:34
[2026-06-13 18:27:34,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:27:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:27:34,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:27:34,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:27:34,694.694 INFO    ] time= 13/06/2026 18:27:34
[2026-06-13 18:27:34,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:27:34,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:27:34,800.800 INFO    ] No existing commands found in stream
[2026-06-13 18:27:39,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:27:39,827.827 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 18:27:40,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:27:40,648.648 INFO    ] Checking for system updates...
[2026-06-13 18:27:40,670.670 INFO    ] 200
[2026-06-13 18:27:40,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:40,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:27:40,703.703 INFO    ] No update needed
[2026-06-13 18:27:40,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 18:27:40,725.725 INFO    ] 200
[2026-06-13 18:27:40,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:40,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:27:40,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:27:40,903.903 INFO    ] No camera update needed
[2026-06-13 18:27:40,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:27:40,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:27:40,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:27:40,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:27:42,952.952 INFO    ] ================================================
[2026-06-13 18:27:42,967.967 INFO    ] Launching Daemon at Sat Jun 13 18:27:42 IST 2026
[2026-06-13 18:27:42,979.979 INFO    ] ================================================
[2026-06-13 18:27:43,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:27:43
[2026-06-13 18:27:43,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:27:43,793.793 INFO    ] Initializing speech engine...
[2026-06-13 18:27:43,806.806 INFO    ] 2026-06-13 18:27:43
[2026-06-13 18:27:44,014.014 INFO    ] 2026-06-13 18:27:43
[2026-06-13 18:27:44,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:27:44,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:27:44,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:27:44,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:27:44,418.418 INFO    ] time= 13/06/2026 18:27:44
[2026-06-13 18:27:44,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:27:44,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:27:44,529.529 INFO    ] No existing commands found in stream
[2026-06-13 18:27:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:27:49,541.541 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 18:27:52,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:27:52,387.387 INFO    ] Checking for system updates...
[2026-06-13 18:27:52,407.407 INFO    ] 200
[2026-06-13 18:27:52,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:52,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:27:52,441.441 INFO    ] No update needed
[2026-06-13 18:27:52,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 18:27:52,465.465 INFO    ] 200
[2026-06-13 18:27:52,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:27:52,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:27:52,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:27:52,531.531 INFO    ] No camera update needed
[2026-06-13 18:27:52,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:27:52,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:27:52,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:27:52,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:27:54,579.579 INFO    ] ================================================
[2026-06-13 18:27:54,594.594 INFO    ] Launching Daemon at Sat Jun 13 18:27:54 IST 2026
[2026-06-13 18:27:54,605.605 INFO    ] ================================================
[2026-06-13 18:27:54,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:27:54
[2026-06-13 18:27:55,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:27:55,400.400 INFO    ] Initializing speech engine...
[2026-06-13 18:27:55,408.408 INFO    ] 2026-06-13 18:27:55
[2026-06-13 18:27:55,618.618 INFO    ] 2026-06-13 18:27:55
[2026-06-13 18:27:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:27:55,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:27:55,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:27:55,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:27:56,038.038 INFO    ] time= 13/06/2026 18:27:55
[2026-06-13 18:27:56,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:27:56,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:27:56,136.136 INFO    ] No existing commands found in stream
[2026-06-13 18:28:01,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:01,153.153 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 18:28:04,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:28:04,022.022 INFO    ] Checking for system updates...
[2026-06-13 18:28:04,043.043 INFO    ] 200
[2026-06-13 18:28:04,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:04,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:04,076.076 INFO    ] No update needed
[2026-06-13 18:28:04,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 18:28:04,097.097 INFO    ] 200
[2026-06-13 18:28:04,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:04,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:28:04,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:04,165.165 INFO    ] No camera update needed
[2026-06-13 18:28:04,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:28:04,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:28:04,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:28:04,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:28:06,218.218 INFO    ] ================================================
[2026-06-13 18:28:06,233.233 INFO    ] Launching Daemon at Sat Jun 13 18:28:06 IST 2026
[2026-06-13 18:28:06,244.244 INFO    ] ================================================
[2026-06-13 18:28:06,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:28:06
[2026-06-13 18:28:06,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:28:07,032.032 INFO    ] Initializing speech engine...
[2026-06-13 18:28:07,042.042 INFO    ] 2026-06-13 18:28:07
[2026-06-13 18:28:07,249.249 INFO    ] 2026-06-13 18:28:07
[2026-06-13 18:28:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:28:07,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:28:07,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:28:07,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:28:07,648.648 INFO    ] time= 13/06/2026 18:28:07
[2026-06-13 18:28:07,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:28:07,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:28:07,771.771 INFO    ] No existing commands found in stream
[2026-06-13 18:28:12,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:12,783.783 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 18:28:15,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:28:15,468.468 INFO    ] Checking for system updates...
[2026-06-13 18:28:15,488.488 INFO    ] 200
[2026-06-13 18:28:15,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:15,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:15,521.521 INFO    ] No update needed
[2026-06-13 18:28:15,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 18:28:15,543.543 INFO    ] 200
[2026-06-13 18:28:15,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:15,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:28:15,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:15,610.610 INFO    ] No camera update needed
[2026-06-13 18:28:15,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:28:15,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:28:15,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:28:15,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:28:17,659.659 INFO    ] ================================================
[2026-06-13 18:28:17,674.674 INFO    ] Launching Daemon at Sat Jun 13 18:28:17 IST 2026
[2026-06-13 18:28:17,685.685 INFO    ] ================================================
[2026-06-13 18:28:18,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:28:18
[2026-06-13 18:28:18,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:28:18,504.504 INFO    ] Initializing speech engine...
[2026-06-13 18:28:18,516.516 INFO    ] 2026-06-13 18:28:18
[2026-06-13 18:28:18,729.729 INFO    ] 2026-06-13 18:28:18
[2026-06-13 18:28:18,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:28:18,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:28:18,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:28:19,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:28:19,143.143 INFO    ] time= 13/06/2026 18:28:19
[2026-06-13 18:28:19,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:28:19,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:28:19,256.256 INFO    ] No existing commands found in stream
[2026-06-13 18:28:24,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:24,274.274 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 18:28:27,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:28:27,086.086 INFO    ] Checking for system updates...
[2026-06-13 18:28:27,107.107 INFO    ] 200
[2026-06-13 18:28:27,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:27,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:28:27,141.141 INFO    ] No update needed
[2026-06-13 18:28:27,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 18:28:27,162.162 INFO    ] 200
[2026-06-13 18:28:27,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:27,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:28:27,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:28:27,228.228 INFO    ] No camera update needed
[2026-06-13 18:28:27,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:28:27,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:28:27,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:28:27,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:28:29,277.277 INFO    ] ================================================
[2026-06-13 18:28:29,292.292 INFO    ] Launching Daemon at Sat Jun 13 18:28:29 IST 2026
[2026-06-13 18:28:29,303.303 INFO    ] ================================================
[2026-06-13 18:28:29,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:28:29
[2026-06-13 18:28:29,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:28:30,099.099 INFO    ] Initializing speech engine...
[2026-06-13 18:28:30,103.103 INFO    ] 2026-06-13 18:28:30
[2026-06-13 18:28:30,323.323 INFO    ] 2026-06-13 18:28:30
[2026-06-13 18:28:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:28:30,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:28:30,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:28:30,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:28:30,731.731 INFO    ] time= 13/06/2026 18:28:30
[2026-06-13 18:28:30,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:28:30,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:28:30,843.843 INFO    ] No existing commands found in stream
[2026-06-13 18:28:35,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:35,854.854 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 18:28:37,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:28:37,973.973 INFO    ] Checking for system updates...
[2026-06-13 18:28:37,994.994 INFO    ] 200
[2026-06-13 18:28:37,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:38,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:28:38,027.027 INFO    ] No update needed
[2026-06-13 18:28:38,028.028 INFO    ] Checking for camera pi updates...
[2026-06-13 18:28:38,047.047 INFO    ] 200
[2026-06-13 18:28:38,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:38,072.072 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:28:38,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:28:38,111.111 INFO    ] No camera update needed
[2026-06-13 18:28:38,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:28:38,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:28:38,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:28:38,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:28:40,160.160 INFO    ] ================================================
[2026-06-13 18:28:40,177.177 INFO    ] Launching Daemon at Sat Jun 13 18:28:40 IST 2026
[2026-06-13 18:28:40,189.189 INFO    ] ================================================
[2026-06-13 18:28:40,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:28:40
[2026-06-13 18:28:40,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:28:41,003.003 INFO    ] Initializing speech engine...
[2026-06-13 18:28:41,007.007 INFO    ] 2026-06-13 18:28:41
[2026-06-13 18:28:41,210.210 INFO    ] 2026-06-13 18:28:41
[2026-06-13 18:28:41,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:28:41,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:28:41,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:28:41,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:28:41,607.607 INFO    ] time= 13/06/2026 18:28:41
[2026-06-13 18:28:41,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:28:41,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:28:41,728.728 INFO    ] No existing commands found in stream
[2026-06-13 18:28:46,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:46,741.741 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 18:28:49,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:28:49,308.308 INFO    ] Checking for system updates...
[2026-06-13 18:28:49,330.330 INFO    ] 200
[2026-06-13 18:28:49,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:49,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:49,363.363 INFO    ] No update needed
[2026-06-13 18:28:49,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 18:28:49,384.384 INFO    ] 200
[2026-06-13 18:28:49,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:28:49,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:28:49,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:28:49,456.456 INFO    ] No camera update needed
[2026-06-13 18:28:49,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:28:49,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:28:49,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:28:49,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:28:51,505.505 INFO    ] ================================================
[2026-06-13 18:28:51,521.521 INFO    ] Launching Daemon at Sat Jun 13 18:28:51 IST 2026
[2026-06-13 18:28:51,533.533 INFO    ] ================================================
[2026-06-13 18:28:51,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:28:51
[2026-06-13 18:28:52,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:28:52,327.327 INFO    ] Initializing speech engine...
[2026-06-13 18:28:52,333.333 INFO    ] 2026-06-13 18:28:52
[2026-06-13 18:28:52,538.538 INFO    ] 2026-06-13 18:28:52
[2026-06-13 18:28:52,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:28:52,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:28:52,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:28:52,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:28:52,936.936 INFO    ] time= 13/06/2026 18:28:52
[2026-06-13 18:28:52,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:28:52,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:28:53,058.058 INFO    ] No existing commands found in stream
[2026-06-13 18:28:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:28:58,071.071 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 18:29:02,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:29:02,148.148 INFO    ] Checking for system updates...
[2026-06-13 18:29:02,190.190 INFO    ] 200
[2026-06-13 18:29:02,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:02,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:29:02,259.259 INFO    ] No update needed
[2026-06-13 18:29:02,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:02,304.304 INFO    ] 200
[2026-06-13 18:29:02,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:02,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:02,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:29:02,390.390 INFO    ] No camera update needed
[2026-06-13 18:29:02,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:02,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:02,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:02,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:04,452.452 INFO    ] ================================================
[2026-06-13 18:29:04,468.468 INFO    ] Launching Daemon at Sat Jun 13 18:29:04 IST 2026
[2026-06-13 18:29:04,480.480 INFO    ] ================================================
[2026-06-13 18:29:04,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:04
[2026-06-13 18:29:05,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:05,309.309 INFO    ] Initializing speech engine...
[2026-06-13 18:29:05,315.315 INFO    ] 2026-06-13 18:29:05
[2026-06-13 18:29:05,524.524 INFO    ] 2026-06-13 18:29:05
[2026-06-13 18:29:05,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:05,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:05,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:05,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:05,931.931 INFO    ] time= 13/06/2026 18:29:05
[2026-06-13 18:29:05,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:05,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:06,056.056 INFO    ] No existing commands found in stream
[2026-06-13 18:29:11,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:29:11,068.068 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 18:29:12,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:29:12,391.391 INFO    ] Checking for system updates...
[2026-06-13 18:29:12,412.412 INFO    ] 200
[2026-06-13 18:29:12,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:12,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:29:12,445.445 INFO    ] No update needed
[2026-06-13 18:29:12,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:12,466.466 INFO    ] 200
[2026-06-13 18:29:12,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:12,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:12,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:29:12,535.535 INFO    ] No camera update needed
[2026-06-13 18:29:12,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:12,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:12,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:12,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:14,582.582 INFO    ] ================================================
[2026-06-13 18:29:14,597.597 INFO    ] Launching Daemon at Sat Jun 13 18:29:14 IST 2026
[2026-06-13 18:29:14,608.608 INFO    ] ================================================
[2026-06-13 18:29:14,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:14
[2026-06-13 18:29:15,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:15,400.400 INFO    ] Initializing speech engine...
[2026-06-13 18:29:15,405.405 INFO    ] 2026-06-13 18:29:15
[2026-06-13 18:29:15,625.625 INFO    ] 2026-06-13 18:29:15
[2026-06-13 18:29:15,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:15,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:15,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:15,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:16,033.033 INFO    ] time= 13/06/2026 18:29:15
[2026-06-13 18:29:16,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:16,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:16,149.149 INFO    ] No existing commands found in stream
[2026-06-13 18:29:21,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:29:21,163.163 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 18:29:25,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:29:25,617.617 INFO    ] Checking for system updates...
[2026-06-13 18:29:25,653.653 INFO    ] 200
[2026-06-13 18:29:25,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:25,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:25,711.711 INFO    ] No update needed
[2026-06-13 18:29:25,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:25,748.748 INFO    ] 200
[2026-06-13 18:29:25,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:25,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:25,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:25,841.841 INFO    ] No camera update needed
[2026-06-13 18:29:25,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:25,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:25,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:25,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:27,898.898 INFO    ] ================================================
[2026-06-13 18:29:27,914.914 INFO    ] Launching Daemon at Sat Jun 13 18:29:27 IST 2026
[2026-06-13 18:29:27,925.925 INFO    ] ================================================
[2026-06-13 18:29:28,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:28
[2026-06-13 18:29:28,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:28,704.704 INFO    ] Initializing speech engine...
[2026-06-13 18:29:28,708.708 INFO    ] 2026-06-13 18:29:28
[2026-06-13 18:29:28,900.900 INFO    ] 2026-06-13 18:29:28
[2026-06-13 18:29:28,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:29,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:29,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:29,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:29,313.313 INFO    ] time= 13/06/2026 18:29:29
[2026-06-13 18:29:29,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:29,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:29,456.456 INFO    ] No existing commands found in stream
[2026-06-13 18:29:34,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:29:34,484.484 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 18:29:35,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:29:35,119.119 INFO    ] Checking for system updates...
[2026-06-13 18:29:35,141.141 INFO    ] 200
[2026-06-13 18:29:35,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:35,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:35,175.175 INFO    ] No update needed
[2026-06-13 18:29:35,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:35,196.196 INFO    ] 200
[2026-06-13 18:29:35,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:35,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:35,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:35,247.247 INFO    ] No camera update needed
[2026-06-13 18:29:35,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:35,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:35,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:35,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:37,294.294 INFO    ] ================================================
[2026-06-13 18:29:37,310.310 INFO    ] Launching Daemon at Sat Jun 13 18:29:37 IST 2026
[2026-06-13 18:29:37,322.322 INFO    ] ================================================
[2026-06-13 18:29:37,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:37
[2026-06-13 18:29:37,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:38,103.103 INFO    ] Initializing speech engine...
[2026-06-13 18:29:38,117.117 INFO    ] 2026-06-13 18:29:38
[2026-06-13 18:29:38,324.324 INFO    ] 2026-06-13 18:29:38
[2026-06-13 18:29:38,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:38,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:38,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:38,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:38,743.743 INFO    ] time= 13/06/2026 18:29:38
[2026-06-13 18:29:38,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:38,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:38,843.843 INFO    ] No existing commands found in stream
[2026-06-13 18:29:43,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:29:43,856.856 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 18:29:45,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:29:45,401.401 INFO    ] Checking for system updates...
[2026-06-13 18:29:45,421.421 INFO    ] 200
[2026-06-13 18:29:45,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:45,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:29:45,458.458 INFO    ] No update needed
[2026-06-13 18:29:45,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:45,483.483 INFO    ] 200
[2026-06-13 18:29:45,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:45,511.511 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:45,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:45,660.660 INFO    ] No camera update needed
[2026-06-13 18:29:45,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:45,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:45,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:45,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:47,712.712 INFO    ] ================================================
[2026-06-13 18:29:47,729.729 INFO    ] Launching Daemon at Sat Jun 13 18:29:47 IST 2026
[2026-06-13 18:29:47,740.740 INFO    ] ================================================
[2026-06-13 18:29:48,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:48
[2026-06-13 18:29:48,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:48,613.613 INFO    ] Initializing speech engine...
[2026-06-13 18:29:48,618.618 INFO    ] 2026-06-13 18:29:48
[2026-06-13 18:29:48,826.826 INFO    ] 2026-06-13 18:29:48
[2026-06-13 18:29:48,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:49,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:49,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:49,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:49,254.254 INFO    ] time= 13/06/2026 18:29:49
[2026-06-13 18:29:49,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:49,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:49,352.352 INFO    ] No existing commands found in stream
[2026-06-13 18:29:54,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:29:54,367.367 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 18:29:55,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:29:55,961.961 INFO    ] Checking for system updates...
[2026-06-13 18:29:55,982.982 INFO    ] 200
[2026-06-13 18:29:55,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:56,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:56,016.016 INFO    ] No update needed
[2026-06-13 18:29:56,018.018 INFO    ] Checking for camera pi updates...
[2026-06-13 18:29:56,038.038 INFO    ] 200
[2026-06-13 18:29:56,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:29:56,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:29:56,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:29:56,108.108 INFO    ] No camera update needed
[2026-06-13 18:29:56,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:29:56,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:29:56,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:29:56,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:29:58,157.157 INFO    ] ================================================
[2026-06-13 18:29:58,172.172 INFO    ] Launching Daemon at Sat Jun 13 18:29:58 IST 2026
[2026-06-13 18:29:58,183.183 INFO    ] ================================================
[2026-06-13 18:29:58,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:29:58
[2026-06-13 18:29:58,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:29:58,957.957 INFO    ] Initializing speech engine...
[2026-06-13 18:29:58,968.968 INFO    ] 2026-06-13 18:29:58
[2026-06-13 18:29:59,174.174 INFO    ] 2026-06-13 18:29:59
[2026-06-13 18:29:59,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:29:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:29:59,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:29:59,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:29:59,581.581 INFO    ] time= 13/06/2026 18:29:59
[2026-06-13 18:29:59,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:29:59,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:29:59,699.699 INFO    ] No existing commands found in stream
[2026-06-13 18:30:04,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:30:04,716.716 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 18:30:08,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:30:08,076.076 INFO    ] Checking for system updates...
[2026-06-13 18:30:08,097.097 INFO    ] 200
[2026-06-13 18:30:08,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:08,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:08,130.130 INFO    ] No update needed
[2026-06-13 18:30:08,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 18:30:08,151.151 INFO    ] 200
[2026-06-13 18:30:08,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:08,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:30:08,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:08,214.214 INFO    ] No camera update needed
[2026-06-13 18:30:08,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:30:08,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:30:08,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:30:08,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:30:10,260.260 INFO    ] ================================================
[2026-06-13 18:30:10,276.276 INFO    ] Launching Daemon at Sat Jun 13 18:30:10 IST 2026
[2026-06-13 18:30:10,286.286 INFO    ] ================================================
[2026-06-13 18:30:10,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:30:10
[2026-06-13 18:30:10,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:30:11,081.081 INFO    ] Initializing speech engine...
[2026-06-13 18:30:11,086.086 INFO    ] 2026-06-13 18:30:11
[2026-06-13 18:30:11,292.292 INFO    ] 2026-06-13 18:30:11
[2026-06-13 18:30:11,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:30:11,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:30:11,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:30:11,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:30:11,698.698 INFO    ] time= 13/06/2026 18:30:11
[2026-06-13 18:30:11,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:30:11,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:30:11,816.816 INFO    ] No existing commands found in stream
[2026-06-13 18:30:16,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:30:16,828.828 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 18:30:19,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:30:19,619.619 INFO    ] Checking for system updates...
[2026-06-13 18:30:19,641.641 INFO    ] 200
[2026-06-13 18:30:19,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:19,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:19,675.675 INFO    ] No update needed
[2026-06-13 18:30:19,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 18:30:19,697.697 INFO    ] 200
[2026-06-13 18:30:19,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:19,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:30:19,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:19,764.764 INFO    ] No camera update needed
[2026-06-13 18:30:19,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:30:19,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:30:19,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:30:19,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:30:21,812.812 INFO    ] ================================================
[2026-06-13 18:30:21,827.827 INFO    ] Launching Daemon at Sat Jun 13 18:30:21 IST 2026
[2026-06-13 18:30:21,838.838 INFO    ] ================================================
[2026-06-13 18:30:22,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:30:22
[2026-06-13 18:30:22,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:30:22,654.654 INFO    ] Initializing speech engine...
[2026-06-13 18:30:22,666.666 INFO    ] 2026-06-13 18:30:22
[2026-06-13 18:30:22,875.875 INFO    ] 2026-06-13 18:30:22
[2026-06-13 18:30:22,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:30:23,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:30:23,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:30:23,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:30:23,298.298 INFO    ] time= 13/06/2026 18:30:23
[2026-06-13 18:30:23,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:30:23,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:30:23,397.397 INFO    ] No existing commands found in stream
[2026-06-13 18:30:28,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:30:28,409.409 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 18:30:31,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:30:31,332.332 INFO    ] Checking for system updates...
[2026-06-13 18:30:31,356.356 INFO    ] 200
[2026-06-13 18:30:31,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:31,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:31,399.399 INFO    ] No update needed
[2026-06-13 18:30:31,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 18:30:31,427.427 INFO    ] 200
[2026-06-13 18:30:31,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:31,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:30:31,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:31,486.486 INFO    ] No camera update needed
[2026-06-13 18:30:31,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:30:31,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:30:31,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:30:31,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:30:33,535.535 INFO    ] ================================================
[2026-06-13 18:30:33,551.551 INFO    ] Launching Daemon at Sat Jun 13 18:30:33 IST 2026
[2026-06-13 18:30:33,561.561 INFO    ] ================================================
[2026-06-13 18:30:33,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:30:33
[2026-06-13 18:30:34,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:30:34,362.362 INFO    ] Initializing speech engine...
[2026-06-13 18:30:34,367.367 INFO    ] 2026-06-13 18:30:34
[2026-06-13 18:30:34,574.574 INFO    ] 2026-06-13 18:30:34
[2026-06-13 18:30:34,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:30:34,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:30:34,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:30:34,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:30:34,973.973 INFO    ] time= 13/06/2026 18:30:34
[2026-06-13 18:30:35,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:30:35,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:30:35,089.089 INFO    ] No existing commands found in stream
[2026-06-13 18:30:40,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:30:40,101.101 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 18:30:44,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:30:44,025.025 INFO    ] Checking for system updates...
[2026-06-13 18:30:44,046.046 INFO    ] 200
[2026-06-13 18:30:44,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:44,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:44,081.081 INFO    ] No update needed
[2026-06-13 18:30:44,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 18:30:44,103.103 INFO    ] 200
[2026-06-13 18:30:44,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:44,128.128 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:30:44,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:30:44,174.174 INFO    ] No camera update needed
[2026-06-13 18:30:44,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:30:44,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:30:44,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:30:44,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:30:46,221.221 INFO    ] ================================================
[2026-06-13 18:30:46,236.236 INFO    ] Launching Daemon at Sat Jun 13 18:30:46 IST 2026
[2026-06-13 18:30:46,247.247 INFO    ] ================================================
[2026-06-13 18:30:46,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:30:46
[2026-06-13 18:30:46,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:30:47,038.038 INFO    ] Initializing speech engine...
[2026-06-13 18:30:47,045.045 INFO    ] 2026-06-13 18:30:47
[2026-06-13 18:30:47,251.251 INFO    ] 2026-06-13 18:30:47
[2026-06-13 18:30:47,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:30:47,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:30:47,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:30:47,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:30:47,650.650 INFO    ] time= 13/06/2026 18:30:47
[2026-06-13 18:30:47,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:30:47,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:30:47,766.766 INFO    ] No existing commands found in stream
[2026-06-13 18:30:52,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:30:52,783.783 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 18:30:55,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:30:55,731.731 INFO    ] Checking for system updates...
[2026-06-13 18:30:55,751.751 INFO    ] 200
[2026-06-13 18:30:55,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:55,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:30:55,785.785 INFO    ] No update needed
[2026-06-13 18:30:55,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 18:30:55,806.806 INFO    ] 200
[2026-06-13 18:30:55,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:30:55,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:30:55,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:30:55,869.869 INFO    ] No camera update needed
[2026-06-13 18:30:55,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:30:55,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:30:55,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:30:55,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:30:57,917.917 INFO    ] ================================================
[2026-06-13 18:30:57,932.932 INFO    ] Launching Daemon at Sat Jun 13 18:30:57 IST 2026
[2026-06-13 18:30:57,943.943 INFO    ] ================================================
[2026-06-13 18:30:58,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:30:58
[2026-06-13 18:30:58,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:30:58,813.813 INFO    ] Initializing speech engine...
[2026-06-13 18:30:58,817.817 INFO    ] 2026-06-13 18:30:58
[2026-06-13 18:30:59,027.027 INFO    ] 2026-06-13 18:30:59
[2026-06-13 18:30:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:30:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:30:59,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:30:59,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:30:59,453.453 INFO    ] time= 13/06/2026 18:30:59
[2026-06-13 18:30:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:30:59,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:30:59,548.548 INFO    ] No existing commands found in stream
[2026-06-13 18:31:04,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:31:04,566.566 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 18:31:07,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:31:07,869.869 INFO    ] Checking for system updates...
[2026-06-13 18:31:07,892.892 INFO    ] 200
[2026-06-13 18:31:07,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:07,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:07,931.931 INFO    ] No update needed
[2026-06-13 18:31:07,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 18:31:07,955.955 INFO    ] 200
[2026-06-13 18:31:07,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:07,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:31:08,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:08,023.023 INFO    ] No camera update needed
[2026-06-13 18:31:08,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:31:08,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:31:08,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:31:08,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:31:10,071.071 INFO    ] ================================================
[2026-06-13 18:31:10,086.086 INFO    ] Launching Daemon at Sat Jun 13 18:31:10 IST 2026
[2026-06-13 18:31:10,097.097 INFO    ] ================================================
[2026-06-13 18:31:10,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:31:10
[2026-06-13 18:31:10,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:31:10,906.906 INFO    ] Initializing speech engine...
[2026-06-13 18:31:10,911.911 INFO    ] 2026-06-13 18:31:10
[2026-06-13 18:31:11,116.116 INFO    ] 2026-06-13 18:31:11
[2026-06-13 18:31:11,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:31:11,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:31:11,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:31:11,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:31:11,533.533 INFO    ] time= 13/06/2026 18:31:11
[2026-06-13 18:31:11,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:31:11,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:31:11,640.640 INFO    ] No existing commands found in stream
[2026-06-13 18:31:16,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:31:16,652.652 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 18:31:20,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:31:20,057.057 INFO    ] Checking for system updates...
[2026-06-13 18:31:20,078.078 INFO    ] 200
[2026-06-13 18:31:20,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:20,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:31:20,114.114 INFO    ] No update needed
[2026-06-13 18:31:20,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 18:31:20,136.136 INFO    ] 200
[2026-06-13 18:31:20,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:20,161.161 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:31:20,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:31:20,208.208 INFO    ] No camera update needed
[2026-06-13 18:31:20,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:31:20,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:31:20,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:31:20,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:31:22,254.254 INFO    ] ================================================
[2026-06-13 18:31:22,270.270 INFO    ] Launching Daemon at Sat Jun 13 18:31:22 IST 2026
[2026-06-13 18:31:22,280.280 INFO    ] ================================================
[2026-06-13 18:31:22,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:31:22
[2026-06-13 18:31:22,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:31:23,088.088 INFO    ] Initializing speech engine...
[2026-06-13 18:31:23,093.093 INFO    ] 2026-06-13 18:31:23
[2026-06-13 18:31:23,298.298 INFO    ] 2026-06-13 18:31:23
[2026-06-13 18:31:23,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:31:23,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:31:23,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:31:23,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:31:23,713.713 INFO    ] time= 13/06/2026 18:31:23
[2026-06-13 18:31:23,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:31:23,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:31:23,808.808 INFO    ] No existing commands found in stream
[2026-06-13 18:31:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:31:28,822.822 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 18:31:29,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:31:29,538.538 INFO    ] Checking for system updates...
[2026-06-13 18:31:29,560.560 INFO    ] 200
[2026-06-13 18:31:29,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:29,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:29,594.594 INFO    ] No update needed
[2026-06-13 18:31:29,596.596 INFO    ] Checking for camera pi updates...
[2026-06-13 18:31:29,622.622 INFO    ] 200
[2026-06-13 18:31:29,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:29,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:31:29,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:29,688.688 INFO    ] No camera update needed
[2026-06-13 18:31:29,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:31:29,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:31:29,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:31:29,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:31:31,741.741 INFO    ] ================================================
[2026-06-13 18:31:31,757.757 INFO    ] Launching Daemon at Sat Jun 13 18:31:31 IST 2026
[2026-06-13 18:31:31,769.769 INFO    ] ================================================
[2026-06-13 18:31:32,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:31:32
[2026-06-13 18:31:32,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:31:32,873.873 INFO    ] Initializing speech engine...
[2026-06-13 18:31:32,884.884 INFO    ] 2026-06-13 18:31:32
[2026-06-13 18:31:33,185.185 INFO    ] 2026-06-13 18:31:33
[2026-06-13 18:31:33,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:31:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:31:33,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:31:33,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:31:33,716.716 INFO    ] time= 13/06/2026 18:31:33
[2026-06-13 18:31:33,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:31:33,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:31:33,899.899 INFO    ] No existing commands found in stream
[2026-06-13 18:31:38,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:31:38,934.934 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 18:31:41,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:31:41,054.054 INFO    ] Checking for system updates...
[2026-06-13 18:31:41,076.076 INFO    ] 200
[2026-06-13 18:31:41,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:41,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:41,110.110 INFO    ] No update needed
[2026-06-13 18:31:41,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 18:31:41,133.133 INFO    ] 200
[2026-06-13 18:31:41,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:41,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:31:41,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:31:41,202.202 INFO    ] No camera update needed
[2026-06-13 18:31:41,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:31:41,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:31:41,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:31:41,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:31:43,251.251 INFO    ] ================================================
[2026-06-13 18:31:43,267.267 INFO    ] Launching Daemon at Sat Jun 13 18:31:43 IST 2026
[2026-06-13 18:31:43,278.278 INFO    ] ================================================
[2026-06-13 18:31:43,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:31:43
[2026-06-13 18:31:43,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:31:44,107.107 INFO    ] Initializing speech engine...
[2026-06-13 18:31:44,113.113 INFO    ] 2026-06-13 18:31:44
[2026-06-13 18:31:44,320.320 INFO    ] 2026-06-13 18:31:44
[2026-06-13 18:31:44,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:31:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:31:44,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:31:44,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:31:44,737.737 INFO    ] time= 13/06/2026 18:31:44
[2026-06-13 18:31:44,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:31:44,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:31:44,832.832 INFO    ] No existing commands found in stream
[2026-06-13 18:31:49,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:31:49,846.846 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 18:31:53,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:31:53,397.397 INFO    ] Checking for system updates...
[2026-06-13 18:31:53,420.420 INFO    ] 200
[2026-06-13 18:31:53,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:53,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:31:53,459.459 INFO    ] No update needed
[2026-06-13 18:31:53,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 18:31:53,479.479 INFO    ] 200
[2026-06-13 18:31:53,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:31:53,504.504 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:31:53,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:31:53,647.647 INFO    ] No camera update needed
[2026-06-13 18:31:53,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:31:53,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:31:53,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:31:53,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:31:55,695.695 INFO    ] ================================================
[2026-06-13 18:31:55,711.711 INFO    ] Launching Daemon at Sat Jun 13 18:31:55 IST 2026
[2026-06-13 18:31:55,722.722 INFO    ] ================================================
[2026-06-13 18:31:56,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:31:56
[2026-06-13 18:31:56,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:31:56,536.536 INFO    ] Initializing speech engine...
[2026-06-13 18:31:56,541.541 INFO    ] 2026-06-13 18:31:56
[2026-06-13 18:31:56,733.733 INFO    ] 2026-06-13 18:31:56
[2026-06-13 18:31:56,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:31:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:31:56,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:31:57,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:31:57,207.207 INFO    ] time= 13/06/2026 18:31:57
[2026-06-13 18:31:57,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:31:57,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:31:57,327.327 INFO    ] No existing commands found in stream
[2026-06-13 18:32:02,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:32:02,342.342 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 18:32:04,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:32:04,760.760 INFO    ] Checking for system updates...
[2026-06-13 18:32:04,782.782 INFO    ] 200
[2026-06-13 18:32:04,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:04,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:04,815.815 INFO    ] No update needed
[2026-06-13 18:32:04,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 18:32:04,836.836 INFO    ] 200
[2026-06-13 18:32:04,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:04,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:32:04,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:04,908.908 INFO    ] No camera update needed
[2026-06-13 18:32:04,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:32:04,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:32:04,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:32:04,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:32:06,961.961 INFO    ] ================================================
[2026-06-13 18:32:06,976.976 INFO    ] Launching Daemon at Sat Jun 13 18:32:06 IST 2026
[2026-06-13 18:32:06,987.987 INFO    ] ================================================
[2026-06-13 18:32:07,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:32:07
[2026-06-13 18:32:07,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:32:07,840.840 INFO    ] Initializing speech engine...
[2026-06-13 18:32:07,846.846 INFO    ] 2026-06-13 18:32:07
[2026-06-13 18:32:08,054.054 INFO    ] 2026-06-13 18:32:08
[2026-06-13 18:32:08,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:32:08,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:32:08,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:32:08,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:32:08,471.471 INFO    ] time= 13/06/2026 18:32:08
[2026-06-13 18:32:08,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:32:08,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:32:08,572.572 INFO    ] No existing commands found in stream
[2026-06-13 18:32:13,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:32:13,600.600 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 18:32:14,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:32:14,978.978 INFO    ] Checking for system updates...
[2026-06-13 18:32:15,001.001 INFO    ] 200
[2026-06-13 18:32:15,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:15,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:32:15,037.037 INFO    ] No update needed
[2026-06-13 18:32:15,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 18:32:15,063.063 INFO    ] 200
[2026-06-13 18:32:15,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:15,090.090 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:32:15,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:32:15,133.133 INFO    ] No camera update needed
[2026-06-13 18:32:15,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:32:15,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:32:15,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:32:15,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:32:17,183.183 INFO    ] ================================================
[2026-06-13 18:32:17,200.200 INFO    ] Launching Daemon at Sat Jun 13 18:32:17 IST 2026
[2026-06-13 18:32:17,211.211 INFO    ] ================================================
[2026-06-13 18:32:17,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:32:17
[2026-06-13 18:32:17,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:32:17,993.993 INFO    ] Initializing speech engine...
[2026-06-13 18:32:18,002.002 INFO    ] 2026-06-13 18:32:17
[2026-06-13 18:32:18,207.207 INFO    ] 2026-06-13 18:32:18
[2026-06-13 18:32:18,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:32:18,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:32:18,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:32:18,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:32:18,609.609 INFO    ] time= 13/06/2026 18:32:18
[2026-06-13 18:32:18,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:32:18,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:32:18,792.792 INFO    ] No existing commands found in stream
[2026-06-13 18:32:23,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:32:23,805.805 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 18:32:27,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:32:27,643.643 INFO    ] Checking for system updates...
[2026-06-13 18:32:27,664.664 INFO    ] 200
[2026-06-13 18:32:27,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:27,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:27,698.698 INFO    ] No update needed
[2026-06-13 18:32:27,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 18:32:27,720.720 INFO    ] 200
[2026-06-13 18:32:27,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:27,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:32:27,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:27,793.793 INFO    ] No camera update needed
[2026-06-13 18:32:27,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:32:27,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:32:27,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:32:27,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:32:29,842.842 INFO    ] ================================================
[2026-06-13 18:32:29,863.863 INFO    ] Launching Daemon at Sat Jun 13 18:32:29 IST 2026
[2026-06-13 18:32:29,874.874 INFO    ] ================================================
[2026-06-13 18:32:30,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:32:30
[2026-06-13 18:32:30,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:32:30,684.684 INFO    ] Initializing speech engine...
[2026-06-13 18:32:30,698.698 INFO    ] 2026-06-13 18:32:30
[2026-06-13 18:32:30,918.918 INFO    ] 2026-06-13 18:32:30
[2026-06-13 18:32:30,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:32:31,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:32:31,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:32:31,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:32:31,325.325 INFO    ] time= 13/06/2026 18:32:31
[2026-06-13 18:32:31,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:32:31,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:32:31,479.479 INFO    ] No existing commands found in stream
[2026-06-13 18:32:36,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:32:36,492.492 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 18:32:40,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:32:40,168.168 INFO    ] Checking for system updates...
[2026-06-13 18:32:40,190.190 INFO    ] 200
[2026-06-13 18:32:40,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:40,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:40,226.226 INFO    ] No update needed
[2026-06-13 18:32:40,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 18:32:40,248.248 INFO    ] 200
[2026-06-13 18:32:40,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:40,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:32:40,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:32:40,313.313 INFO    ] No camera update needed
[2026-06-13 18:32:40,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:32:40,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:32:40,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:32:40,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:32:42,361.361 INFO    ] ================================================
[2026-06-13 18:32:42,376.376 INFO    ] Launching Daemon at Sat Jun 13 18:32:42 IST 2026
[2026-06-13 18:32:42,387.387 INFO    ] ================================================
[2026-06-13 18:32:42,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:32:42
[2026-06-13 18:32:43,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:32:43,214.214 INFO    ] Initializing speech engine...
[2026-06-13 18:32:43,223.223 INFO    ] 2026-06-13 18:32:43
[2026-06-13 18:32:43,441.441 INFO    ] 2026-06-13 18:32:43
[2026-06-13 18:32:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:32:43,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:32:43,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:32:43,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:32:43,863.863 INFO    ] time= 13/06/2026 18:32:43
[2026-06-13 18:32:43,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:32:43,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:32:44,002.002 INFO    ] No existing commands found in stream
[2026-06-13 18:32:49,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:32:49,015.015 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 18:32:52,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:32:52,729.729 INFO    ] Checking for system updates...
[2026-06-13 18:32:52,750.750 INFO    ] 200
[2026-06-13 18:32:52,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:52,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:32:52,785.785 INFO    ] No update needed
[2026-06-13 18:32:52,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 18:32:52,808.808 INFO    ] 200
[2026-06-13 18:32:52,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:32:52,834.834 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:32:52,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:32:52,872.872 INFO    ] No camera update needed
[2026-06-13 18:32:52,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:32:52,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:32:52,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:32:52,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:32:54,921.921 INFO    ] ================================================
[2026-06-13 18:32:54,942.942 INFO    ] Launching Daemon at Sat Jun 13 18:32:54 IST 2026
[2026-06-13 18:32:54,958.958 INFO    ] ================================================
[2026-06-13 18:32:55,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:32:55
[2026-06-13 18:32:55,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:32:55,734.734 INFO    ] Initializing speech engine...
[2026-06-13 18:32:55,744.744 INFO    ] 2026-06-13 18:32:55
[2026-06-13 18:32:55,947.947 INFO    ] 2026-06-13 18:32:55
[2026-06-13 18:32:55,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:32:56,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:32:56,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:32:56,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:32:56,355.355 INFO    ] time= 13/06/2026 18:32:56
[2026-06-13 18:32:56,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:32:56,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:32:56,458.458 INFO    ] No existing commands found in stream
[2026-06-13 18:33:01,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:01,471.471 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 18:33:04,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:33:04,302.302 INFO    ] Checking for system updates...
[2026-06-13 18:33:04,323.323 INFO    ] 200
[2026-06-13 18:33:04,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:04,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:04,359.359 INFO    ] No update needed
[2026-06-13 18:33:04,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:04,380.380 INFO    ] 200
[2026-06-13 18:33:04,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:04,407.407 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:04,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:04,446.446 INFO    ] No camera update needed
[2026-06-13 18:33:04,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:04,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:04,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:04,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:06,496.496 INFO    ] ================================================
[2026-06-13 18:33:06,512.512 INFO    ] Launching Daemon at Sat Jun 13 18:33:06 IST 2026
[2026-06-13 18:33:06,522.522 INFO    ] ================================================
[2026-06-13 18:33:06,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:06
[2026-06-13 18:33:07,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:07,326.326 INFO    ] Initializing speech engine...
[2026-06-13 18:33:07,331.331 INFO    ] 2026-06-13 18:33:07
[2026-06-13 18:33:07,535.535 INFO    ] 2026-06-13 18:33:07
[2026-06-13 18:33:07,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:33:07,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:33:07,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:33:07,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:33:07,934.934 INFO    ] time= 13/06/2026 18:33:07
[2026-06-13 18:33:07,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:33:08,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:33:08,157.157 INFO    ] No existing commands found in stream
[2026-06-13 18:33:13,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:13,178.178 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 18:33:13,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:33:13,910.910 INFO    ] Checking for system updates...
[2026-06-13 18:33:13,933.933 INFO    ] 200
[2026-06-13 18:33:13,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:13,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:13,969.969 INFO    ] No update needed
[2026-06-13 18:33:13,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:13,992.992 INFO    ] 200
[2026-06-13 18:33:13,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:14,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:14,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:33:14,060.060 INFO    ] No camera update needed
[2026-06-13 18:33:14,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:14,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:14,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:14,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:16,112.112 INFO    ] ================================================
[2026-06-13 18:33:16,128.128 INFO    ] Launching Daemon at Sat Jun 13 18:33:16 IST 2026
[2026-06-13 18:33:16,138.138 INFO    ] ================================================
[2026-06-13 18:33:16,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:16
[2026-06-13 18:33:16,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:16,936.936 INFO    ] Initializing speech engine...
[2026-06-13 18:33:16,940.940 INFO    ] 2026-06-13 18:33:16
[2026-06-13 18:33:17,158.158 INFO    ] 2026-06-13 18:33:17
[2026-06-13 18:33:17,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:33:17,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:33:17,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:33:17,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:33:17,580.580 INFO    ] time= 13/06/2026 18:33:17
[2026-06-13 18:33:17,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:33:17,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:33:17,672.672 INFO    ] No existing commands found in stream
[2026-06-13 18:33:22,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:22,682.682 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 18:33:24,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:33:24,467.467 INFO    ] Checking for system updates...
[2026-06-13 18:33:24,489.489 INFO    ] 200
[2026-06-13 18:33:24,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:24,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:24,522.522 INFO    ] No update needed
[2026-06-13 18:33:24,524.524 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:24,543.543 INFO    ] 200
[2026-06-13 18:33:24,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:24,570.570 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:24,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:24,612.612 INFO    ] No camera update needed
[2026-06-13 18:33:24,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:24,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:24,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:24,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:26,661.661 INFO    ] ================================================
[2026-06-13 18:33:26,676.676 INFO    ] Launching Daemon at Sat Jun 13 18:33:26 IST 2026
[2026-06-13 18:33:26,687.687 INFO    ] ================================================
[2026-06-13 18:33:27,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:27
[2026-06-13 18:33:27,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:27,494.494 INFO    ] Initializing speech engine...
[2026-06-13 18:33:27,500.500 INFO    ] 2026-06-13 18:33:27
[2026-06-13 18:33:27,706.706 INFO    ] 2026-06-13 18:33:27
[2026-06-13 18:33:27,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:33:27,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:33:27,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:33:28,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:33:28,121.121 INFO    ] time= 13/06/2026 18:33:28
[2026-06-13 18:33:28,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:33:28,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:33:28,221.221 INFO    ] No existing commands found in stream
[2026-06-13 18:33:33,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:33,233.233 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 18:33:35,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:33:35,856.856 INFO    ] Checking for system updates...
[2026-06-13 18:33:35,879.879 INFO    ] 200
[2026-06-13 18:33:35,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:35,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:35,912.912 INFO    ] No update needed
[2026-06-13 18:33:35,913.913 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:35,935.935 INFO    ] 200
[2026-06-13 18:33:35,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:35,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:36,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:36,008.008 INFO    ] No camera update needed
[2026-06-13 18:33:36,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:36,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:36,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:36,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:38,058.058 INFO    ] ================================================
[2026-06-13 18:33:38,073.073 INFO    ] Launching Daemon at Sat Jun 13 18:33:38 IST 2026
[2026-06-13 18:33:38,084.084 INFO    ] ================================================
[2026-06-13 18:33:38,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:38
[2026-06-13 18:33:38,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:38,880.880 INFO    ] Initializing speech engine...
[2026-06-13 18:33:38,888.888 INFO    ] 2026-06-13 18:33:38
[2026-06-13 18:33:39,115.115 INFO    ] 2026-06-13 18:33:39
[2026-06-13 18:33:39,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:33:39,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:33:39,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:33:39,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:33:39,369.369 INFO    ] time= 13/06/2026 18:33:39
[2026-06-13 18:33:39,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:33:39,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:33:39,459.459 INFO    ] No existing commands found in stream
[2026-06-13 18:33:44,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:44,496.496 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 18:33:46,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:33:46,676.676 INFO    ] Checking for system updates...
[2026-06-13 18:33:46,697.697 INFO    ] 200
[2026-06-13 18:33:46,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:46,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:33:46,730.730 INFO    ] No update needed
[2026-06-13 18:33:46,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:46,751.751 INFO    ] 200
[2026-06-13 18:33:46,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:46,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:46,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:33:46,818.818 INFO    ] No camera update needed
[2026-06-13 18:33:46,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:46,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:46,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:46,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:48,865.865 INFO    ] ================================================
[2026-06-13 18:33:48,881.881 INFO    ] Launching Daemon at Sat Jun 13 18:33:48 IST 2026
[2026-06-13 18:33:48,892.892 INFO    ] ================================================
[2026-06-13 18:33:49,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:49
[2026-06-13 18:33:49,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:49,699.699 INFO    ] Initializing speech engine...
[2026-06-13 18:33:49,704.704 INFO    ] 2026-06-13 18:33:49
[2026-06-13 18:33:49,935.935 INFO    ] 2026-06-13 18:33:49
[2026-06-13 18:33:49,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:33:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:33:50,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:33:50,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:33:50,292.292 INFO    ] time= 13/06/2026 18:33:50
[2026-06-13 18:33:50,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:33:50,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:33:50,502.502 INFO    ] No existing commands found in stream
[2026-06-13 18:33:55,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:33:55,516.516 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 18:33:56,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:33:56,702.702 INFO    ] Checking for system updates...
[2026-06-13 18:33:56,723.723 INFO    ] 200
[2026-06-13 18:33:56,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:56,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:56,756.756 INFO    ] No update needed
[2026-06-13 18:33:56,758.758 INFO    ] Checking for camera pi updates...
[2026-06-13 18:33:56,778.778 INFO    ] 200
[2026-06-13 18:33:56,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:33:56,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:33:56,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:33:56,943.943 INFO    ] No camera update needed
[2026-06-13 18:33:56,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:33:56,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:33:56,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:33:56,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:33:58,989.989 INFO    ] ================================================
[2026-06-13 18:33:59,005.005 INFO    ] Launching Daemon at Sat Jun 13 18:33:58 IST 2026
[2026-06-13 18:33:59,016.016 INFO    ] ================================================
[2026-06-13 18:33:59,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:33:59
[2026-06-13 18:33:59,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:33:59,793.793 INFO    ] Initializing speech engine...
[2026-06-13 18:33:59,797.797 INFO    ] 2026-06-13 18:33:59
[2026-06-13 18:34:00,004.004 INFO    ] 2026-06-13 18:33:59
[2026-06-13 18:34:00,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:00,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:00,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:00,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:00,427.427 INFO    ] time= 13/06/2026 18:34:00
[2026-06-13 18:34:00,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:00,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:00,549.549 INFO    ] No existing commands found in stream
[2026-06-13 18:34:05,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:34:05,582.582 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 18:34:07,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:34:07,954.954 INFO    ] Checking for system updates...
[2026-06-13 18:34:07,974.974 INFO    ] 200
[2026-06-13 18:34:07,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:08,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:08,012.012 INFO    ] No update needed
[2026-06-13 18:34:08,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 18:34:08,034.034 INFO    ] 200
[2026-06-13 18:34:08,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:08,060.060 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:34:08,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:08,102.102 INFO    ] No camera update needed
[2026-06-13 18:34:08,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:34:08,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:34:08,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:34:08,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:34:10,150.150 INFO    ] ================================================
[2026-06-13 18:34:10,166.166 INFO    ] Launching Daemon at Sat Jun 13 18:34:10 IST 2026
[2026-06-13 18:34:10,177.177 INFO    ] ================================================
[2026-06-13 18:34:10,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:34:10
[2026-06-13 18:34:10,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:34:10,983.983 INFO    ] Initializing speech engine...
[2026-06-13 18:34:10,997.997 INFO    ] 2026-06-13 18:34:10
[2026-06-13 18:34:11,214.214 INFO    ] 2026-06-13 18:34:11
[2026-06-13 18:34:11,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:11,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:11,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:11,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:11,597.597 INFO    ] time= 13/06/2026 18:34:11
[2026-06-13 18:34:11,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:11,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:11,770.770 INFO    ] No existing commands found in stream
[2026-06-13 18:34:16,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:34:16,787.787 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 18:34:17,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:34:17,503.503 INFO    ] Checking for system updates...
[2026-06-13 18:34:17,523.523 INFO    ] 200
[2026-06-13 18:34:17,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:17,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:34:17,556.556 INFO    ] No update needed
[2026-06-13 18:34:17,557.557 INFO    ] Checking for camera pi updates...
[2026-06-13 18:34:17,577.577 INFO    ] 200
[2026-06-13 18:34:17,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:17,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:34:17,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:34:17,639.639 INFO    ] No camera update needed
[2026-06-13 18:34:17,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:34:17,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:34:17,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:34:17,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:34:19,687.687 INFO    ] ================================================
[2026-06-13 18:34:19,702.702 INFO    ] Launching Daemon at Sat Jun 13 18:34:19 IST 2026
[2026-06-13 18:34:19,713.713 INFO    ] ================================================
[2026-06-13 18:34:20,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:34:20
[2026-06-13 18:34:20,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:34:20,547.547 INFO    ] Initializing speech engine...
[2026-06-13 18:34:20,558.558 INFO    ] 2026-06-13 18:34:20
[2026-06-13 18:34:20,766.766 INFO    ] 2026-06-13 18:34:20
[2026-06-13 18:34:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:20,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:21,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:21,163.163 INFO    ] time= 13/06/2026 18:34:21
[2026-06-13 18:34:21,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:21,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:21,292.292 INFO    ] No existing commands found in stream
[2026-06-13 18:34:26,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:34:26,304.304 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 18:34:29,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:34:29,918.918 INFO    ] Checking for system updates...
[2026-06-13 18:34:29,940.940 INFO    ] 200
[2026-06-13 18:34:29,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:29,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:34:29,974.974 INFO    ] No update needed
[2026-06-13 18:34:29,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 18:34:29,996.996 INFO    ] 200
[2026-06-13 18:34:29,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:30,022.022 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:34:30,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:34:30,064.064 INFO    ] No camera update needed
[2026-06-13 18:34:30,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:34:30,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:34:30,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:34:30,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:34:32,103.103 INFO    ] ================================================
[2026-06-13 18:34:32,111.111 INFO    ] Launching Daemon at Sat Jun 13 18:34:32 IST 2026
[2026-06-13 18:34:32,117.117 INFO    ] ================================================
[2026-06-13 18:34:32,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:34:32
[2026-06-13 18:34:32,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:34:32,952.952 INFO    ] Initializing speech engine...
[2026-06-13 18:34:32,965.965 INFO    ] 2026-06-13 18:34:32
[2026-06-13 18:34:33,174.174 INFO    ] 2026-06-13 18:34:33
[2026-06-13 18:34:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:33,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:33,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:33,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:33,585.585 INFO    ] time= 13/06/2026 18:34:33
[2026-06-13 18:34:33,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:33,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:33,702.702 INFO    ] No existing commands found in stream
[2026-06-13 18:34:38,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:34:38,715.715 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 18:34:40,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:34:40,740.740 INFO    ] Checking for system updates...
[2026-06-13 18:34:40,762.762 INFO    ] 200
[2026-06-13 18:34:40,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:40,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:40,795.795 INFO    ] No update needed
[2026-06-13 18:34:40,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 18:34:40,817.817 INFO    ] 200
[2026-06-13 18:34:40,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:40,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:34:40,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:40,883.883 INFO    ] No camera update needed
[2026-06-13 18:34:40,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:34:40,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:34:40,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:34:40,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:34:42,930.930 INFO    ] ================================================
[2026-06-13 18:34:42,944.944 INFO    ] Launching Daemon at Sat Jun 13 18:34:42 IST 2026
[2026-06-13 18:34:42,955.955 INFO    ] ================================================
[2026-06-13 18:34:43,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:34:43
[2026-06-13 18:34:43,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:34:44,117.117 INFO    ] Initializing speech engine...
[2026-06-13 18:34:44,126.126 INFO    ] 2026-06-13 18:34:44
[2026-06-13 18:34:44,371.371 INFO    ] 2026-06-13 18:34:44
[2026-06-13 18:34:44,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:44,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:44,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:44,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:44,812.812 INFO    ] time= 13/06/2026 18:34:44
[2026-06-13 18:34:44,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:44,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:45,078.078 INFO    ] No existing commands found in stream
[2026-06-13 18:34:50,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:34:50,104.104 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 18:34:50,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:34:51,000.000 INFO    ] Checking for system updates...
[2026-06-13 18:34:51,021.021 INFO    ] 200
[2026-06-13 18:34:51,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:51,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:51,053.053 INFO    ] No update needed
[2026-06-13 18:34:51,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 18:34:51,074.074 INFO    ] 200
[2026-06-13 18:34:51,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:34:51,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:34:51,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:34:51,150.150 INFO    ] No camera update needed
[2026-06-13 18:34:51,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:34:51,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:34:51,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:34:51,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:34:53,197.197 INFO    ] ================================================
[2026-06-13 18:34:53,212.212 INFO    ] Launching Daemon at Sat Jun 13 18:34:53 IST 2026
[2026-06-13 18:34:53,223.223 INFO    ] ================================================
[2026-06-13 18:34:53,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:34:53
[2026-06-13 18:34:53,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:34:54,027.027 INFO    ] Initializing speech engine...
[2026-06-13 18:34:54,032.032 INFO    ] 2026-06-13 18:34:54
[2026-06-13 18:34:54,236.236 INFO    ] 2026-06-13 18:34:54
[2026-06-13 18:34:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:34:54,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:34:54,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:34:54,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:34:54,907.907 INFO    ] time= 13/06/2026 18:34:54
[2026-06-13 18:34:54,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:34:54,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:34:55,017.017 INFO    ] No existing commands found in stream
[2026-06-13 18:35:00,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:00,031.031 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 18:35:01,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:35:01,257.257 INFO    ] Checking for system updates...
[2026-06-13 18:35:01,279.279 INFO    ] 200
[2026-06-13 18:35:01,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:01,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:01,313.313 INFO    ] No update needed
[2026-06-13 18:35:01,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:01,334.334 INFO    ] 200
[2026-06-13 18:35:01,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:01,359.359 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:01,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:01,401.401 INFO    ] No camera update needed
[2026-06-13 18:35:01,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:01,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:01,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:01,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:35:03,443.443 INFO    ] ================================================
[2026-06-13 18:35:03,459.459 INFO    ] Launching Daemon at Sat Jun 13 18:35:03 IST 2026
[2026-06-13 18:35:03,469.469 INFO    ] ================================================
[2026-06-13 18:35:03,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:35:03
[2026-06-13 18:35:04,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:35:04,292.292 INFO    ] Initializing speech engine...
[2026-06-13 18:35:04,297.297 INFO    ] 2026-06-13 18:35:04
[2026-06-13 18:35:04,502.502 INFO    ] 2026-06-13 18:35:04
[2026-06-13 18:35:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:35:04,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:35:04,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:35:04,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:35:04,905.905 INFO    ] time= 13/06/2026 18:35:04
[2026-06-13 18:35:04,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:35:04,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:35:05,015.015 INFO    ] No existing commands found in stream
[2026-06-13 18:35:10,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:10,027.027 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 18:35:12,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:35:12,549.549 INFO    ] Checking for system updates...
[2026-06-13 18:35:12,571.571 INFO    ] 200
[2026-06-13 18:35:12,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:12,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:35:12,607.607 INFO    ] No update needed
[2026-06-13 18:35:12,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:12,628.628 INFO    ] 200
[2026-06-13 18:35:12,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:12,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:12,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:35:12,693.693 INFO    ] No camera update needed
[2026-06-13 18:35:12,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:12,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:12,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:12,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:35:14,741.741 INFO    ] ================================================
[2026-06-13 18:35:14,756.756 INFO    ] Launching Daemon at Sat Jun 13 18:35:14 IST 2026
[2026-06-13 18:35:14,767.767 INFO    ] ================================================
[2026-06-13 18:35:15,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:35:15
[2026-06-13 18:35:15,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:35:15,571.571 INFO    ] Initializing speech engine...
[2026-06-13 18:35:15,576.576 INFO    ] 2026-06-13 18:35:15
[2026-06-13 18:35:15,778.778 INFO    ] 2026-06-13 18:35:15
[2026-06-13 18:35:15,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:35:15,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:35:16,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:35:16,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:35:16,183.183 INFO    ] time= 13/06/2026 18:35:16
[2026-06-13 18:35:16,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:35:16,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:35:16,294.294 INFO    ] No existing commands found in stream
[2026-06-13 18:35:21,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:21,311.311 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 18:35:24,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:35:24,502.502 INFO    ] Checking for system updates...
[2026-06-13 18:35:24,523.523 INFO    ] 200
[2026-06-13 18:35:24,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:24,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:35:24,559.559 INFO    ] No update needed
[2026-06-13 18:35:24,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:24,580.580 INFO    ] 200
[2026-06-13 18:35:24,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:24,607.607 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:24,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:24,644.644 INFO    ] No camera update needed
[2026-06-13 18:35:24,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:24,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:24,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:24,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:35:26,693.693 INFO    ] ================================================
[2026-06-13 18:35:26,708.708 INFO    ] Launching Daemon at Sat Jun 13 18:35:26 IST 2026
[2026-06-13 18:35:26,719.719 INFO    ] ================================================
[2026-06-13 18:35:27,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:35:27
[2026-06-13 18:35:27,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:35:27,597.597 INFO    ] Initializing speech engine...
[2026-06-13 18:35:27,603.603 INFO    ] 2026-06-13 18:35:27
[2026-06-13 18:35:27,811.811 INFO    ] 2026-06-13 18:35:27
[2026-06-13 18:35:27,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:35:28,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:35:28,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:35:28,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:35:28,235.235 INFO    ] time= 13/06/2026 18:35:28
[2026-06-13 18:35:28,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:35:28,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:35:28,332.332 INFO    ] No existing commands found in stream
[2026-06-13 18:35:33,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:33,347.347 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 18:35:35,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:35:35,254.254 INFO    ] Checking for system updates...
[2026-06-13 18:35:35,275.275 INFO    ] 200
[2026-06-13 18:35:35,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:35,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:35,309.309 INFO    ] No update needed
[2026-06-13 18:35:35,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:35,331.331 INFO    ] 200
[2026-06-13 18:35:35,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:35,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:35,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:35,395.395 INFO    ] No camera update needed
[2026-06-13 18:35:35,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:35,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:35,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:35,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:35:37,444.444 INFO    ] ================================================
[2026-06-13 18:35:37,459.459 INFO    ] Launching Daemon at Sat Jun 13 18:35:37 IST 2026
[2026-06-13 18:35:37,470.470 INFO    ] ================================================
[2026-06-13 18:35:37,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:35:37
[2026-06-13 18:35:38,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:35:38,258.258 INFO    ] Initializing speech engine...
[2026-06-13 18:35:38,263.263 INFO    ] 2026-06-13 18:35:38
[2026-06-13 18:35:38,469.469 INFO    ] 2026-06-13 18:35:38
[2026-06-13 18:35:38,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:35:38,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:35:38,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:35:38,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:35:38,870.870 INFO    ] time= 13/06/2026 18:35:38
[2026-06-13 18:35:38,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:35:38,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:35:38,987.987 INFO    ] No existing commands found in stream
[2026-06-13 18:35:44,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:44,004.004 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 18:35:46,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:35:46,062.062 INFO    ] Checking for system updates...
[2026-06-13 18:35:46,084.084 INFO    ] 200
[2026-06-13 18:35:46,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:46,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:35:46,120.120 INFO    ] No update needed
[2026-06-13 18:35:46,122.122 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:46,142.142 INFO    ] 200
[2026-06-13 18:35:46,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:46,167.167 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:46,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:35:46,208.208 INFO    ] No camera update needed
[2026-06-13 18:35:46,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:46,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:46,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:46,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:35:48,256.256 INFO    ] ================================================
[2026-06-13 18:35:48,272.272 INFO    ] Launching Daemon at Sat Jun 13 18:35:48 IST 2026
[2026-06-13 18:35:48,282.282 INFO    ] ================================================
[2026-06-13 18:35:48,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:35:48
[2026-06-13 18:35:48,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:35:49,070.070 INFO    ] Initializing speech engine...
[2026-06-13 18:35:49,076.076 INFO    ] 2026-06-13 18:35:49
[2026-06-13 18:35:49,280.280 INFO    ] 2026-06-13 18:35:49
[2026-06-13 18:35:49,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:35:49,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:35:49,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:35:49,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:35:49,612.612 INFO    ] time= 13/06/2026 18:35:49
[2026-06-13 18:35:49,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:35:49,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:35:49,666.666 INFO    ] No existing commands found in stream
[2026-06-13 18:35:54,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:35:54,678.678 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 18:35:58,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:35:58,463.463 INFO    ] Checking for system updates...
[2026-06-13 18:35:58,484.484 INFO    ] 200
[2026-06-13 18:35:58,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:58,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:58,520.520 INFO    ] No update needed
[2026-06-13 18:35:58,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 18:35:58,541.541 INFO    ] 200
[2026-06-13 18:35:58,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:35:58,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:35:58,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:35:58,701.701 INFO    ] No camera update needed
[2026-06-13 18:35:58,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:35:58,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:35:58,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:35:58,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:00,749.749 INFO    ] ================================================
[2026-06-13 18:36:00,765.765 INFO    ] Launching Daemon at Sat Jun 13 18:36:00 IST 2026
[2026-06-13 18:36:00,775.775 INFO    ] ================================================
[2026-06-13 18:36:01,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:01
[2026-06-13 18:36:01,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:01,606.606 INFO    ] Initializing speech engine...
[2026-06-13 18:36:01,616.616 INFO    ] 2026-06-13 18:36:01
[2026-06-13 18:36:01,894.894 INFO    ] 2026-06-13 18:36:01
[2026-06-13 18:36:01,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:02,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:02,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:02,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:02,300.300 INFO    ] time= 13/06/2026 18:36:02
[2026-06-13 18:36:02,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:02,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:02,479.479 INFO    ] No existing commands found in stream
[2026-06-13 18:36:07,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:36:07,513.513 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 18:36:09,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:36:09,504.504 INFO    ] Checking for system updates...
[2026-06-13 18:36:09,570.570 INFO    ] 200
[2026-06-13 18:36:09,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:09,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:09,631.631 INFO    ] No update needed
[2026-06-13 18:36:09,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 18:36:09,670.670 INFO    ] 200
[2026-06-13 18:36:09,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:09,695.695 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:36:09,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:09,730.730 INFO    ] No camera update needed
[2026-06-13 18:36:09,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:36:09,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:36:09,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:36:09,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:11,781.781 INFO    ] ================================================
[2026-06-13 18:36:11,796.796 INFO    ] Launching Daemon at Sat Jun 13 18:36:11 IST 2026
[2026-06-13 18:36:11,807.807 INFO    ] ================================================
[2026-06-13 18:36:12,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:12
[2026-06-13 18:36:12,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:12,585.585 INFO    ] Initializing speech engine...
[2026-06-13 18:36:12,598.598 INFO    ] 2026-06-13 18:36:12
[2026-06-13 18:36:12,817.817 INFO    ] 2026-06-13 18:36:12
[2026-06-13 18:36:12,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:12,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:13,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:13,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:13,261.261 INFO    ] time= 13/06/2026 18:36:13
[2026-06-13 18:36:13,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:13,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:13,465.465 INFO    ] No existing commands found in stream
[2026-06-13 18:36:18,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:36:18,494.494 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 18:36:20,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:36:20,922.922 INFO    ] Checking for system updates...
[2026-06-13 18:36:20,944.944 INFO    ] 200
[2026-06-13 18:36:20,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:20,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:36:20,980.980 INFO    ] No update needed
[2026-06-13 18:36:20,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 18:36:21,001.001 INFO    ] 200
[2026-06-13 18:36:21,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:21,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:36:21,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:36:21,077.077 INFO    ] No camera update needed
[2026-06-13 18:36:21,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:36:21,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:36:21,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:36:21,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:23,124.124 INFO    ] ================================================
[2026-06-13 18:36:23,139.139 INFO    ] Launching Daemon at Sat Jun 13 18:36:23 IST 2026
[2026-06-13 18:36:23,150.150 INFO    ] ================================================
[2026-06-13 18:36:23,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:23
[2026-06-13 18:36:23,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:24,031.031 INFO    ] Initializing speech engine...
[2026-06-13 18:36:24,035.035 INFO    ] 2026-06-13 18:36:24
[2026-06-13 18:36:24,245.245 INFO    ] 2026-06-13 18:36:24
[2026-06-13 18:36:24,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:24,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:24,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:24,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:24,742.742 INFO    ] time= 13/06/2026 18:36:24
[2026-06-13 18:36:24,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:24,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:25,007.007 INFO    ] No existing commands found in stream
[2026-06-13 18:36:30,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:36:30,022.022 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 18:36:30,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:36:30,496.496 INFO    ] Checking for system updates...
[2026-06-13 18:36:30,534.534 INFO    ] 200
[2026-06-13 18:36:30,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:30,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:30,592.592 INFO    ] No update needed
[2026-06-13 18:36:30,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 18:36:30,629.629 INFO    ] 200
[2026-06-13 18:36:30,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:30,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:36:30,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:30,726.726 INFO    ] No camera update needed
[2026-06-13 18:36:30,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:36:30,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:36:30,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:36:30,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:32,787.787 INFO    ] ================================================
[2026-06-13 18:36:32,805.805 INFO    ] Launching Daemon at Sat Jun 13 18:36:32 IST 2026
[2026-06-13 18:36:32,817.817 INFO    ] ================================================
[2026-06-13 18:36:33,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:33
[2026-06-13 18:36:33,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:34,026.026 INFO    ] Initializing speech engine...
[2026-06-13 18:36:34,031.031 INFO    ] 2026-06-13 18:36:34
[2026-06-13 18:36:34,252.252 INFO    ] 2026-06-13 18:36:34
[2026-06-13 18:36:34,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:34,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:34,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:34,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:34,668.668 INFO    ] time= 13/06/2026 18:36:34
[2026-06-13 18:36:34,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:34,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:34,804.804 INFO    ] No existing commands found in stream
[2026-06-13 18:36:39,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:36:39,817.817 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 18:36:43,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:36:43,537.537 INFO    ] Checking for system updates...
[2026-06-13 18:36:43,559.559 INFO    ] 200
[2026-06-13 18:36:43,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:43,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:43,593.593 INFO    ] No update needed
[2026-06-13 18:36:43,595.595 INFO    ] Checking for camera pi updates...
[2026-06-13 18:36:43,615.615 INFO    ] 200
[2026-06-13 18:36:43,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:43,640.640 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:36:43,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:43,679.679 INFO    ] No camera update needed
[2026-06-13 18:36:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:36:43,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:36:43,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:36:43,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:45,730.730 INFO    ] ================================================
[2026-06-13 18:36:45,746.746 INFO    ] Launching Daemon at Sat Jun 13 18:36:45 IST 2026
[2026-06-13 18:36:45,757.757 INFO    ] ================================================
[2026-06-13 18:36:46,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:46
[2026-06-13 18:36:46,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:46,534.534 INFO    ] Initializing speech engine...
[2026-06-13 18:36:46,542.542 INFO    ] 2026-06-13 18:36:46
[2026-06-13 18:36:46,748.748 INFO    ] 2026-06-13 18:36:46
[2026-06-13 18:36:46,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:46,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:46,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:47,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:47,050.050 INFO    ] time= 13/06/2026 18:36:47
[2026-06-13 18:36:47,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:47,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:47,158.158 INFO    ] No existing commands found in stream
[2026-06-13 18:36:52,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:36:52,192.192 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 18:36:53,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:36:53,517.517 INFO    ] Checking for system updates...
[2026-06-13 18:36:53,540.540 INFO    ] 200
[2026-06-13 18:36:53,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:53,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:53,573.573 INFO    ] No update needed
[2026-06-13 18:36:53,574.574 INFO    ] Checking for camera pi updates...
[2026-06-13 18:36:53,593.593 INFO    ] 200
[2026-06-13 18:36:53,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:36:53,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:36:53,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:36:53,667.667 INFO    ] No camera update needed
[2026-06-13 18:36:53,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:36:53,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:36:53,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:36:53,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:36:55,715.715 INFO    ] ================================================
[2026-06-13 18:36:55,730.730 INFO    ] Launching Daemon at Sat Jun 13 18:36:55 IST 2026
[2026-06-13 18:36:55,741.741 INFO    ] ================================================
[2026-06-13 18:36:56,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:36:56
[2026-06-13 18:36:56,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:36:56,645.645 INFO    ] Initializing speech engine...
[2026-06-13 18:36:56,649.649 INFO    ] 2026-06-13 18:36:56
[2026-06-13 18:36:56,843.843 INFO    ] 2026-06-13 18:36:56
[2026-06-13 18:36:56,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:36:57,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:36:57,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:36:57,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:36:57,135.135 INFO    ] time= 13/06/2026 18:36:57
[2026-06-13 18:36:57,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:36:57,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:36:57,234.234 INFO    ] No existing commands found in stream
[2026-06-13 18:37:02,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:37:02,263.263 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 18:37:06,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:37:06,430.430 INFO    ] Checking for system updates...
[2026-06-13 18:37:06,453.453 INFO    ] 200
[2026-06-13 18:37:06,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:06,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:37:06,511.511 INFO    ] No update needed
[2026-06-13 18:37:06,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 18:37:06,537.537 INFO    ] 200
[2026-06-13 18:37:06,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:06,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:37:06,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:37:06,602.602 INFO    ] No camera update needed
[2026-06-13 18:37:06,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:37:06,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:37:06,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:37:06,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:37:08,650.650 INFO    ] ================================================
[2026-06-13 18:37:08,666.666 INFO    ] Launching Daemon at Sat Jun 13 18:37:08 IST 2026
[2026-06-13 18:37:08,677.677 INFO    ] ================================================
[2026-06-13 18:37:09,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:37:09
[2026-06-13 18:37:09,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:37:09,556.556 INFO    ] Initializing speech engine...
[2026-06-13 18:37:09,561.561 INFO    ] 2026-06-13 18:37:09
[2026-06-13 18:37:09,823.823 INFO    ] 2026-06-13 18:37:09
[2026-06-13 18:37:09,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:37:10,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:37:10,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:37:10,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:37:10,185.185 INFO    ] time= 13/06/2026 18:37:10
[2026-06-13 18:37:10,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:37:10,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:37:10,286.286 INFO    ] No existing commands found in stream
[2026-06-13 18:37:15,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:37:15,324.324 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 18:37:17,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:37:17,617.617 INFO    ] Checking for system updates...
[2026-06-13 18:37:17,639.639 INFO    ] 200
[2026-06-13 18:37:17,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:17,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:37:17,675.675 INFO    ] No update needed
[2026-06-13 18:37:17,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 18:37:17,697.697 INFO    ] 200
[2026-06-13 18:37:17,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:17,723.723 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:37:17,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:37:17,761.761 INFO    ] No camera update needed
[2026-06-13 18:37:17,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:37:17,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:37:17,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:37:17,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:37:19,811.811 INFO    ] ================================================
[2026-06-13 18:37:19,827.827 INFO    ] Launching Daemon at Sat Jun 13 18:37:19 IST 2026
[2026-06-13 18:37:19,837.837 INFO    ] ================================================
[2026-06-13 18:37:20,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:37:20
[2026-06-13 18:37:20,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:37:20,716.716 INFO    ] Initializing speech engine...
[2026-06-13 18:37:20,719.719 INFO    ] 2026-06-13 18:37:20
[2026-06-13 18:37:20,923.923 INFO    ] 2026-06-13 18:37:20
[2026-06-13 18:37:20,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:37:21,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:37:21,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:37:21,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:37:21,354.354 INFO    ] time= 13/06/2026 18:37:21
[2026-06-13 18:37:21,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:37:21,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:37:21,454.454 INFO    ] No existing commands found in stream
[2026-06-13 18:37:26,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:37:26,469.469 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 18:37:29,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:37:29,589.589 INFO    ] Checking for system updates...
[2026-06-13 18:37:29,609.609 INFO    ] 200
[2026-06-13 18:37:29,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:29,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:37:29,644.644 INFO    ] No update needed
[2026-06-13 18:37:29,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 18:37:29,664.664 INFO    ] 200
[2026-06-13 18:37:29,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:29,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:37:29,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:37:29,736.736 INFO    ] No camera update needed
[2026-06-13 18:37:29,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:37:29,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:37:29,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:37:29,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:37:31,789.789 INFO    ] ================================================
[2026-06-13 18:37:31,808.808 INFO    ] Launching Daemon at Sat Jun 13 18:37:31 IST 2026
[2026-06-13 18:37:31,819.819 INFO    ] ================================================
[2026-06-13 18:37:32,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:37:32
[2026-06-13 18:37:32,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:37:32,746.746 INFO    ] Initializing speech engine...
[2026-06-13 18:37:32,751.751 INFO    ] 2026-06-13 18:37:32
[2026-06-13 18:37:32,947.947 INFO    ] 2026-06-13 18:37:32
[2026-06-13 18:37:32,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:37:33,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:37:33,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:37:33,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:37:33,349.349 INFO    ] time= 13/06/2026 18:37:33
[2026-06-13 18:37:33,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:37:33,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:37:33,465.465 INFO    ] No existing commands found in stream
[2026-06-13 18:37:38,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:37:38,477.477 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 18:37:41,295.295 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:37:41,297.297 INFO    ] Checking for system updates...
[2026-06-13 18:37:41,325.325 INFO    ] 200
[2026-06-13 18:37:41,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:41,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:37:41,362.362 INFO    ] No update needed
[2026-06-13 18:37:41,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 18:37:41,384.384 INFO    ] 200
[2026-06-13 18:37:41,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:41,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:37:41,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:37:41,461.461 INFO    ] No camera update needed
[2026-06-13 18:37:41,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:37:41,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:37:41,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:37:41,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:37:43,508.508 INFO    ] ================================================
[2026-06-13 18:37:43,524.524 INFO    ] Launching Daemon at Sat Jun 13 18:37:43 IST 2026
[2026-06-13 18:37:43,535.535 INFO    ] ================================================
[2026-06-13 18:37:43,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:37:43
[2026-06-13 18:37:44,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:37:44,320.320 INFO    ] Initializing speech engine...
[2026-06-13 18:37:44,325.325 INFO    ] 2026-06-13 18:37:44
[2026-06-13 18:37:44,530.530 INFO    ] 2026-06-13 18:37:44
[2026-06-13 18:37:44,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:37:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:37:44,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:37:44,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:37:44,941.941 INFO    ] time= 13/06/2026 18:37:44
[2026-06-13 18:37:44,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:37:44,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:37:45,054.054 INFO    ] No existing commands found in stream
[2026-06-13 18:37:50,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:37:50,066.066 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 18:37:53,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:37:53,938.938 INFO    ] Checking for system updates...
[2026-06-13 18:37:53,959.959 INFO    ] 200
[2026-06-13 18:37:53,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:53,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:37:53,995.995 INFO    ] No update needed
[2026-06-13 18:37:53,996.996 INFO    ] Checking for camera pi updates...
[2026-06-13 18:37:54,017.017 INFO    ] 200
[2026-06-13 18:37:54,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:37:54,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:37:54,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:37:54,082.082 INFO    ] No camera update needed
[2026-06-13 18:37:54,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:37:54,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:37:54,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:37:54,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:37:56,130.130 INFO    ] ================================================
[2026-06-13 18:37:56,145.145 INFO    ] Launching Daemon at Sat Jun 13 18:37:56 IST 2026
[2026-06-13 18:37:56,156.156 INFO    ] ================================================
[2026-06-13 18:37:56,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:37:56
[2026-06-13 18:37:56,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:37:56,943.943 INFO    ] Initializing speech engine...
[2026-06-13 18:37:56,953.953 INFO    ] 2026-06-13 18:37:56
[2026-06-13 18:37:57,158.158 INFO    ] 2026-06-13 18:37:57
[2026-06-13 18:37:57,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:37:57,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:37:57,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:37:57,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:37:57,567.567 INFO    ] time= 13/06/2026 18:37:57
[2026-06-13 18:37:57,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:37:57,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:37:57,670.670 INFO    ] No existing commands found in stream
[2026-06-13 18:38:02,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:02,681.681 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 18:38:06,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:38:06,137.137 INFO    ] Checking for system updates...
[2026-06-13 18:38:06,159.159 INFO    ] 200
[2026-06-13 18:38:06,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:06,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:06,192.192 INFO    ] No update needed
[2026-06-13 18:38:06,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:06,214.214 INFO    ] 200
[2026-06-13 18:38:06,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:06,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:06,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:06,265.265 INFO    ] No camera update needed
[2026-06-13 18:38:06,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:06,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:06,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:06,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:38:08,313.313 INFO    ] ================================================
[2026-06-13 18:38:08,328.328 INFO    ] Launching Daemon at Sat Jun 13 18:38:08 IST 2026
[2026-06-13 18:38:08,339.339 INFO    ] ================================================
[2026-06-13 18:38:08,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:38:08
[2026-06-13 18:38:09,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:38:09,192.192 INFO    ] Initializing speech engine...
[2026-06-13 18:38:09,202.202 INFO    ] 2026-06-13 18:38:09
[2026-06-13 18:38:09,419.419 INFO    ] 2026-06-13 18:38:09
[2026-06-13 18:38:09,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:38:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:38:09,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:38:09,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:38:09,822.822 INFO    ] time= 13/06/2026 18:38:09
[2026-06-13 18:38:09,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:38:09,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:38:09,939.939 INFO    ] No existing commands found in stream
[2026-06-13 18:38:14,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:14,952.952 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 18:38:18,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:38:18,478.478 INFO    ] Checking for system updates...
[2026-06-13 18:38:18,499.499 INFO    ] 200
[2026-06-13 18:38:18,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:18,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:38:18,534.534 INFO    ] No update needed
[2026-06-13 18:38:18,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:18,555.555 INFO    ] 200
[2026-06-13 18:38:18,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:18,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:18,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:38:18,630.630 INFO    ] No camera update needed
[2026-06-13 18:38:18,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:18,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:18,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:38:20,677.677 INFO    ] ================================================
[2026-06-13 18:38:20,693.693 INFO    ] Launching Daemon at Sat Jun 13 18:38:20 IST 2026
[2026-06-13 18:38:20,704.704 INFO    ] ================================================
[2026-06-13 18:38:21,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:38:21
[2026-06-13 18:38:21,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:38:21,526.526 INFO    ] Initializing speech engine...
[2026-06-13 18:38:21,531.531 INFO    ] 2026-06-13 18:38:21
[2026-06-13 18:38:21,735.735 INFO    ] 2026-06-13 18:38:21
[2026-06-13 18:38:21,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:38:21,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:38:21,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:38:22,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:38:22,150.150 INFO    ] time= 13/06/2026 18:38:22
[2026-06-13 18:38:22,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:38:22,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:38:22,249.249 INFO    ] No existing commands found in stream
[2026-06-13 18:38:27,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:27,262.262 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 18:38:29,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:38:29,922.922 INFO    ] Checking for system updates...
[2026-06-13 18:38:29,943.943 INFO    ] 200
[2026-06-13 18:38:29,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:29,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:38:29,976.976 INFO    ] No update needed
[2026-06-13 18:38:29,978.978 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:29,998.998 INFO    ] 200
[2026-06-13 18:38:30,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:30,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:30,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:38:30,062.062 INFO    ] No camera update needed
[2026-06-13 18:38:30,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:30,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:30,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:30,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:38:32,112.112 INFO    ] ================================================
[2026-06-13 18:38:32,122.122 INFO    ] Launching Daemon at Sat Jun 13 18:38:32 IST 2026
[2026-06-13 18:38:32,129.129 INFO    ] ================================================
[2026-06-13 18:38:32,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:38:32
[2026-06-13 18:38:32,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:38:32,931.931 INFO    ] Initializing speech engine...
[2026-06-13 18:38:32,938.938 INFO    ] 2026-06-13 18:38:32
[2026-06-13 18:38:33,151.151 INFO    ] 2026-06-13 18:38:33
[2026-06-13 18:38:33,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:38:33,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:38:33,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:38:33,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:38:33,568.568 INFO    ] time= 13/06/2026 18:38:33
[2026-06-13 18:38:33,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:38:33,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:38:33,670.670 INFO    ] No existing commands found in stream
[2026-06-13 18:38:38,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:38,687.687 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 18:38:39,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:38:39,401.401 INFO    ] Checking for system updates...
[2026-06-13 18:38:39,422.422 INFO    ] 200
[2026-06-13 18:38:39,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:39,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:39,460.460 INFO    ] No update needed
[2026-06-13 18:38:39,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:39,481.481 INFO    ] 200
[2026-06-13 18:38:39,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:39,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:39,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:39,544.544 INFO    ] No camera update needed
[2026-06-13 18:38:39,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:39,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:39,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:39,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:38:41,594.594 INFO    ] ================================================
[2026-06-13 18:38:41,610.610 INFO    ] Launching Daemon at Sat Jun 13 18:38:41 IST 2026
[2026-06-13 18:38:41,621.621 INFO    ] ================================================
[2026-06-13 18:38:42,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:38:42
[2026-06-13 18:38:42,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:38:42,493.493 INFO    ] Initializing speech engine...
[2026-06-13 18:38:42,497.497 INFO    ] 2026-06-13 18:38:42
[2026-06-13 18:38:42,699.699 INFO    ] 2026-06-13 18:38:42
[2026-06-13 18:38:42,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:38:42,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:38:42,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:38:43,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:38:43,119.119 INFO    ] time= 13/06/2026 18:38:43
[2026-06-13 18:38:43,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:38:43,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:38:43,219.219 INFO    ] No existing commands found in stream
[2026-06-13 18:38:48,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:48,232.232 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 18:38:48,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:38:48,782.782 INFO    ] Checking for system updates...
[2026-06-13 18:38:48,803.803 INFO    ] 200
[2026-06-13 18:38:48,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:48,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:48,836.836 INFO    ] No update needed
[2026-06-13 18:38:48,837.837 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:48,857.857 INFO    ] 200
[2026-06-13 18:38:48,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:48,882.882 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:48,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:48,933.933 INFO    ] No camera update needed
[2026-06-13 18:38:48,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:48,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:48,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:48,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:38:50,972.972 INFO    ] ================================================
[2026-06-13 18:38:50,988.988 INFO    ] Launching Daemon at Sat Jun 13 18:38:50 IST 2026
[2026-06-13 18:38:51,000.000 INFO    ] ================================================
[2026-06-13 18:38:51,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:38:51
[2026-06-13 18:38:51,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:38:51,909.909 INFO    ] Initializing speech engine...
[2026-06-13 18:38:51,916.916 INFO    ] 2026-06-13 18:38:51
[2026-06-13 18:38:52,130.130 INFO    ] 2026-06-13 18:38:52
[2026-06-13 18:38:52,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:38:52,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:38:52,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:38:52,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:38:52,522.522 INFO    ] time= 13/06/2026 18:38:52
[2026-06-13 18:38:52,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:38:52,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:38:52,652.652 INFO    ] No existing commands found in stream
[2026-06-13 18:38:57,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:38:57,667.667 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 18:38:59,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:38:59,613.613 INFO    ] Checking for system updates...
[2026-06-13 18:38:59,634.634 INFO    ] 200
[2026-06-13 18:38:59,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:59,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:59,669.669 INFO    ] No update needed
[2026-06-13 18:38:59,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 18:38:59,691.691 INFO    ] 200
[2026-06-13 18:38:59,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:38:59,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:38:59,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:38:59,764.764 INFO    ] No camera update needed
[2026-06-13 18:38:59,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:38:59,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:38:59,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:38:59,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:39:01,811.811 INFO    ] ================================================
[2026-06-13 18:39:01,827.827 INFO    ] Launching Daemon at Sat Jun 13 18:39:01 IST 2026
[2026-06-13 18:39:01,838.838 INFO    ] ================================================
[2026-06-13 18:39:02,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:39:02
[2026-06-13 18:39:02,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:39:03,212.212 INFO    ] Initializing speech engine...
[2026-06-13 18:39:03,218.218 INFO    ] 2026-06-13 18:39:03
[2026-06-13 18:39:03,521.521 INFO    ] 2026-06-13 18:39:03
[2026-06-13 18:39:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:39:03,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:39:03,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:39:03,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:39:03,895.895 INFO    ] time= 13/06/2026 18:39:03
[2026-06-13 18:39:03,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:39:03,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:39:03,971.971 INFO    ] No existing commands found in stream
[2026-06-13 18:39:08,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:39:08,986.986 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 18:39:13,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:39:13,224.224 INFO    ] Checking for system updates...
[2026-06-13 18:39:13,261.261 INFO    ] 200
[2026-06-13 18:39:13,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:13,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:13,319.319 INFO    ] No update needed
[2026-06-13 18:39:13,322.322 INFO    ] Checking for camera pi updates...
[2026-06-13 18:39:13,357.357 INFO    ] 200
[2026-06-13 18:39:13,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:13,400.400 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:39:13,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:13,445.445 INFO    ] No camera update needed
[2026-06-13 18:39:13,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:39:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:39:13,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:39:13,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:39:15,499.499 INFO    ] ================================================
[2026-06-13 18:39:15,514.514 INFO    ] Launching Daemon at Sat Jun 13 18:39:15 IST 2026
[2026-06-13 18:39:15,524.524 INFO    ] ================================================
[2026-06-13 18:39:16,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:39:16
[2026-06-13 18:39:16,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:39:16,637.637 INFO    ] Initializing speech engine...
[2026-06-13 18:39:16,642.642 INFO    ] 2026-06-13 18:39:16
[2026-06-13 18:39:16,847.847 INFO    ] 2026-06-13 18:39:16
[2026-06-13 18:39:16,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:39:17,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:39:17,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:39:17,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:39:17,250.250 INFO    ] time= 13/06/2026 18:39:17
[2026-06-13 18:39:17,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:39:17,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:39:17,359.359 INFO    ] No existing commands found in stream
[2026-06-13 18:39:22,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:39:22,372.372 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 18:39:26,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:39:26,083.083 INFO    ] Checking for system updates...
[2026-06-13 18:39:26,105.105 INFO    ] 200
[2026-06-13 18:39:26,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:26,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:39:26,139.139 INFO    ] No update needed
[2026-06-13 18:39:26,140.140 INFO    ] Checking for camera pi updates...
[2026-06-13 18:39:26,161.161 INFO    ] 200
[2026-06-13 18:39:26,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:26,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:39:26,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:39:26,233.233 INFO    ] No camera update needed
[2026-06-13 18:39:26,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:39:26,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:39:26,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:39:26,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:39:28,280.280 INFO    ] ================================================
[2026-06-13 18:39:28,295.295 INFO    ] Launching Daemon at Sat Jun 13 18:39:28 IST 2026
[2026-06-13 18:39:28,306.306 INFO    ] ================================================
[2026-06-13 18:39:28,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:39:28
[2026-06-13 18:39:28,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:39:29,084.084 INFO    ] Initializing speech engine...
[2026-06-13 18:39:29,090.090 INFO    ] 2026-06-13 18:39:29
[2026-06-13 18:39:29,293.293 INFO    ] 2026-06-13 18:39:29
[2026-06-13 18:39:29,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:39:29,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:39:29,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:39:29,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:39:29,684.684 INFO    ] time= 13/06/2026 18:39:29
[2026-06-13 18:39:29,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:39:29,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:39:29,889.889 INFO    ] No existing commands found in stream
[2026-06-13 18:39:34,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:39:34,902.902 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 18:39:39,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:39:39,007.007 INFO    ] Checking for system updates...
[2026-06-13 18:39:39,029.029 INFO    ] 200
[2026-06-13 18:39:39,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:39,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:39,062.062 INFO    ] No update needed
[2026-06-13 18:39:39,063.063 INFO    ] Checking for camera pi updates...
[2026-06-13 18:39:39,084.084 INFO    ] 200
[2026-06-13 18:39:39,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:39,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:39:39,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:39,153.153 INFO    ] No camera update needed
[2026-06-13 18:39:39,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:39:39,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:39:39,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:39:39,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:39:41,209.209 INFO    ] ================================================
[2026-06-13 18:39:41,224.224 INFO    ] Launching Daemon at Sat Jun 13 18:39:41 IST 2026
[2026-06-13 18:39:41,235.235 INFO    ] ================================================
[2026-06-13 18:39:41,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:39:41
[2026-06-13 18:39:41,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:39:42,025.025 INFO    ] Initializing speech engine...
[2026-06-13 18:39:42,037.037 INFO    ] 2026-06-13 18:39:42
[2026-06-13 18:39:42,245.245 INFO    ] 2026-06-13 18:39:42
[2026-06-13 18:39:42,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:39:42,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:39:42,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:39:42,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:39:42,654.654 INFO    ] time= 13/06/2026 18:39:42
[2026-06-13 18:39:42,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:39:42,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:39:42,765.765 INFO    ] No existing commands found in stream
[2026-06-13 18:39:47,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:39:47,779.779 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 18:39:50,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:39:50,821.821 INFO    ] Checking for system updates...
[2026-06-13 18:39:50,843.843 INFO    ] 200
[2026-06-13 18:39:50,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:50,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:50,876.876 INFO    ] No update needed
[2026-06-13 18:39:50,878.878 INFO    ] Checking for camera pi updates...
[2026-06-13 18:39:50,897.897 INFO    ] 200
[2026-06-13 18:39:50,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:39:50,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:39:50,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:39:50,965.965 INFO    ] No camera update needed
[2026-06-13 18:39:50,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:39:50,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:39:50,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:39:50,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:39:53,010.010 INFO    ] ================================================
[2026-06-13 18:39:53,025.025 INFO    ] Launching Daemon at Sat Jun 13 18:39:53 IST 2026
[2026-06-13 18:39:53,036.036 INFO    ] ================================================
[2026-06-13 18:39:53,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:39:53
[2026-06-13 18:39:53,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:39:53,846.846 INFO    ] Initializing speech engine...
[2026-06-13 18:39:53,851.851 INFO    ] 2026-06-13 18:39:53
[2026-06-13 18:39:54,057.057 INFO    ] 2026-06-13 18:39:54
[2026-06-13 18:39:54,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:39:54,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:39:54,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:39:54,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:39:54,463.463 INFO    ] time= 13/06/2026 18:39:54
[2026-06-13 18:39:54,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:39:54,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:39:54,573.573 INFO    ] No existing commands found in stream
[2026-06-13 18:39:59,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:39:59,591.591 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 18:40:00,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:40:00,928.928 INFO    ] Checking for system updates...
[2026-06-13 18:40:00,950.950 INFO    ] 200
[2026-06-13 18:40:00,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:00,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:00,987.987 INFO    ] No update needed
[2026-06-13 18:40:00,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:01,009.009 INFO    ] 200
[2026-06-13 18:40:01,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:01,036.036 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:01,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:01,078.078 INFO    ] No camera update needed
[2026-06-13 18:40:01,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:01,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:01,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:01,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:40:03,132.132 INFO    ] ================================================
[2026-06-13 18:40:03,141.141 INFO    ] Launching Daemon at Sat Jun 13 18:40:03 IST 2026
[2026-06-13 18:40:03,146.146 INFO    ] ================================================
[2026-06-13 18:40:03,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:40:03
[2026-06-13 18:40:03,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:40:03,967.967 INFO    ] Initializing speech engine...
[2026-06-13 18:40:03,972.972 INFO    ] 2026-06-13 18:40:03
[2026-06-13 18:40:04,175.175 INFO    ] 2026-06-13 18:40:04
[2026-06-13 18:40:04,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:40:04,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:40:04,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:40:04,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:40:04,582.582 INFO    ] time= 13/06/2026 18:40:04
[2026-06-13 18:40:04,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:40:04,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:40:04,691.691 INFO    ] No existing commands found in stream
[2026-06-13 18:40:09,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:40:09,704.704 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 18:40:13,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:40:13,545.545 INFO    ] Checking for system updates...
[2026-06-13 18:40:13,568.568 INFO    ] 200
[2026-06-13 18:40:13,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:13,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:13,601.601 INFO    ] No update needed
[2026-06-13 18:40:13,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:13,623.623 INFO    ] 200
[2026-06-13 18:40:13,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:13,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:13,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:13,798.798 INFO    ] No camera update needed
[2026-06-13 18:40:13,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:13,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:13,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:13,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:40:15,847.847 INFO    ] ================================================
[2026-06-13 18:40:15,863.863 INFO    ] Launching Daemon at Sat Jun 13 18:40:15 IST 2026
[2026-06-13 18:40:15,874.874 INFO    ] ================================================
[2026-06-13 18:40:16,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:40:16
[2026-06-13 18:40:16,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:40:16,687.687 INFO    ] Initializing speech engine...
[2026-06-13 18:40:16,692.692 INFO    ] 2026-06-13 18:40:16
[2026-06-13 18:40:16,895.895 INFO    ] 2026-06-13 18:40:16
[2026-06-13 18:40:16,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:40:17,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:40:17,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:40:17,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:40:17,300.300 INFO    ] time= 13/06/2026 18:40:17
[2026-06-13 18:40:17,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:40:17,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:40:17,408.408 INFO    ] No existing commands found in stream
[2026-06-13 18:40:22,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:40:22,421.421 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 18:40:26,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:40:26,167.167 INFO    ] Checking for system updates...
[2026-06-13 18:40:26,190.190 INFO    ] 200
[2026-06-13 18:40:26,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:26,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:40:26,223.223 INFO    ] No update needed
[2026-06-13 18:40:26,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:26,244.244 INFO    ] 200
[2026-06-13 18:40:26,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:26,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:26,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:40:26,312.312 INFO    ] No camera update needed
[2026-06-13 18:40:26,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:26,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:26,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:26,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:40:28,361.361 INFO    ] ================================================
[2026-06-13 18:40:28,377.377 INFO    ] Launching Daemon at Sat Jun 13 18:40:28 IST 2026
[2026-06-13 18:40:28,388.388 INFO    ] ================================================
[2026-06-13 18:40:28,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:40:28
[2026-06-13 18:40:29,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:40:29,228.228 INFO    ] Initializing speech engine...
[2026-06-13 18:40:29,233.233 INFO    ] 2026-06-13 18:40:29
[2026-06-13 18:40:29,439.439 INFO    ] 2026-06-13 18:40:29
[2026-06-13 18:40:29,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:40:29,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:40:29,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:40:29,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:40:29,853.853 INFO    ] time= 13/06/2026 18:40:29
[2026-06-13 18:40:29,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:40:29,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:40:29,959.959 INFO    ] No existing commands found in stream
[2026-06-13 18:40:34,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:40:34,972.972 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 18:40:36,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:40:36,394.394 INFO    ] Checking for system updates...
[2026-06-13 18:40:36,416.416 INFO    ] 200
[2026-06-13 18:40:36,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:36,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:36,451.451 INFO    ] No update needed
[2026-06-13 18:40:36,453.453 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:36,472.472 INFO    ] 200
[2026-06-13 18:40:36,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:36,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:36,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:36,537.537 INFO    ] No camera update needed
[2026-06-13 18:40:36,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:36,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:36,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:36,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:40:38,583.583 INFO    ] ================================================
[2026-06-13 18:40:38,598.598 INFO    ] Launching Daemon at Sat Jun 13 18:40:38 IST 2026
[2026-06-13 18:40:38,610.610 INFO    ] ================================================
[2026-06-13 18:40:38,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:40:38
[2026-06-13 18:40:39,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:40:39,462.462 INFO    ] Initializing speech engine...
[2026-06-13 18:40:39,467.467 INFO    ] 2026-06-13 18:40:39
[2026-06-13 18:40:39,679.679 INFO    ] 2026-06-13 18:40:39
[2026-06-13 18:40:39,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:40:39,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:40:39,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:40:40,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:40:40,105.105 INFO    ] time= 13/06/2026 18:40:40
[2026-06-13 18:40:40,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:40:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:40:40,204.204 INFO    ] No existing commands found in stream
[2026-06-13 18:40:45,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:40:45,216.216 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 18:40:46,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:40:46,490.490 INFO    ] Checking for system updates...
[2026-06-13 18:40:46,512.512 INFO    ] 200
[2026-06-13 18:40:46,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:46,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:40:46,547.547 INFO    ] No update needed
[2026-06-13 18:40:46,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:46,568.568 INFO    ] 200
[2026-06-13 18:40:46,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:46,596.596 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:46,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:40:46,644.644 INFO    ] No camera update needed
[2026-06-13 18:40:46,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:46,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:46,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:46,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:40:48,693.693 INFO    ] ================================================
[2026-06-13 18:40:48,708.708 INFO    ] Launching Daemon at Sat Jun 13 18:40:48 IST 2026
[2026-06-13 18:40:48,719.719 INFO    ] ================================================
[2026-06-13 18:40:49,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:40:49
[2026-06-13 18:40:49,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:40:49,557.557 INFO    ] Initializing speech engine...
[2026-06-13 18:40:49,561.561 INFO    ] 2026-06-13 18:40:49
[2026-06-13 18:40:49,766.766 INFO    ] 2026-06-13 18:40:49
[2026-06-13 18:40:49,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:40:49,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:40:49,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:40:50,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:40:50,189.189 INFO    ] time= 13/06/2026 18:40:50
[2026-06-13 18:40:50,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:40:50,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:40:50,286.286 INFO    ] No existing commands found in stream
[2026-06-13 18:40:55,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:40:55,299.299 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 18:40:58,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:40:58,900.900 INFO    ] Checking for system updates...
[2026-06-13 18:40:58,921.921 INFO    ] 200
[2026-06-13 18:40:58,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:58,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:40:58,954.954 INFO    ] No update needed
[2026-06-13 18:40:58,956.956 INFO    ] Checking for camera pi updates...
[2026-06-13 18:40:58,975.975 INFO    ] 200
[2026-06-13 18:40:58,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:40:59,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:40:59,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:40:59,042.042 INFO    ] No camera update needed
[2026-06-13 18:40:59,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:40:59,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:40:59,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:40:59,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:01,088.088 INFO    ] ================================================
[2026-06-13 18:41:01,104.104 INFO    ] Launching Daemon at Sat Jun 13 18:41:01 IST 2026
[2026-06-13 18:41:01,115.115 INFO    ] ================================================
[2026-06-13 18:41:01,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:01
[2026-06-13 18:41:01,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:01,912.912 INFO    ] Initializing speech engine...
[2026-06-13 18:41:01,917.917 INFO    ] 2026-06-13 18:41:01
[2026-06-13 18:41:02,123.123 INFO    ] 2026-06-13 18:41:02
[2026-06-13 18:41:02,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:02,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:02,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:02,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:02,549.549 INFO    ] time= 13/06/2026 18:41:02
[2026-06-13 18:41:02,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:02,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:02,666.666 INFO    ] No existing commands found in stream
[2026-06-13 18:41:07,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:41:07,680.680 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 18:41:08,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:41:08,812.812 INFO    ] Checking for system updates...
[2026-06-13 18:41:08,833.833 INFO    ] 200
[2026-06-13 18:41:08,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:08,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:41:08,869.869 INFO    ] No update needed
[2026-06-13 18:41:08,870.870 INFO    ] Checking for camera pi updates...
[2026-06-13 18:41:08,891.891 INFO    ] 200
[2026-06-13 18:41:08,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:08,915.915 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:41:08,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:41:08,953.953 INFO    ] No camera update needed
[2026-06-13 18:41:08,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:41:08,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:41:08,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:41:08,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:11,001.001 INFO    ] ================================================
[2026-06-13 18:41:11,017.017 INFO    ] Launching Daemon at Sat Jun 13 18:41:11 IST 2026
[2026-06-13 18:41:11,028.028 INFO    ] ================================================
[2026-06-13 18:41:11,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:11
[2026-06-13 18:41:11,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:11,881.881 INFO    ] Initializing speech engine...
[2026-06-13 18:41:11,886.886 INFO    ] 2026-06-13 18:41:11
[2026-06-13 18:41:12,096.096 INFO    ] 2026-06-13 18:41:12
[2026-06-13 18:41:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:12,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:12,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:12,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:12,463.463 INFO    ] time= 13/06/2026 18:41:12
[2026-06-13 18:41:12,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:12,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:12,643.643 INFO    ] No existing commands found in stream
[2026-06-13 18:41:17,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:41:17,657.657 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 18:41:21,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:41:21,197.197 INFO    ] Checking for system updates...
[2026-06-13 18:41:21,219.219 INFO    ] 200
[2026-06-13 18:41:21,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:21,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:21,256.256 INFO    ] No update needed
[2026-06-13 18:41:21,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 18:41:21,278.278 INFO    ] 200
[2026-06-13 18:41:21,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:21,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:41:21,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:21,350.350 INFO    ] No camera update needed
[2026-06-13 18:41:21,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:41:21,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:41:21,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:41:21,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:23,398.398 INFO    ] ================================================
[2026-06-13 18:41:23,414.414 INFO    ] Launching Daemon at Sat Jun 13 18:41:23 IST 2026
[2026-06-13 18:41:23,425.425 INFO    ] ================================================
[2026-06-13 18:41:23,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:23
[2026-06-13 18:41:24,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:24,255.255 INFO    ] Initializing speech engine...
[2026-06-13 18:41:24,260.260 INFO    ] 2026-06-13 18:41:24
[2026-06-13 18:41:24,463.463 INFO    ] 2026-06-13 18:41:24
[2026-06-13 18:41:24,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:24,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:24,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:24,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:24,873.873 INFO    ] time= 13/06/2026 18:41:24
[2026-06-13 18:41:24,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:24,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:24,976.976 INFO    ] No existing commands found in stream
[2026-06-13 18:41:29,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:41:29,989.989 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 18:41:31,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:41:31,294.294 INFO    ] Checking for system updates...
[2026-06-13 18:41:31,314.314 INFO    ] 200
[2026-06-13 18:41:31,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:31,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:41:31,347.347 INFO    ] No update needed
[2026-06-13 18:41:31,348.348 INFO    ] Checking for camera pi updates...
[2026-06-13 18:41:31,368.368 INFO    ] 200
[2026-06-13 18:41:31,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:31,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:41:31,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:41:31,442.442 INFO    ] No camera update needed
[2026-06-13 18:41:31,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:41:31,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:41:31,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:41:31,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:33,487.487 INFO    ] ================================================
[2026-06-13 18:41:33,503.503 INFO    ] Launching Daemon at Sat Jun 13 18:41:33 IST 2026
[2026-06-13 18:41:33,515.515 INFO    ] ================================================
[2026-06-13 18:41:33,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:33
[2026-06-13 18:41:34,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:34,349.349 INFO    ] Initializing speech engine...
[2026-06-13 18:41:34,352.352 INFO    ] 2026-06-13 18:41:34
[2026-06-13 18:41:34,559.559 INFO    ] 2026-06-13 18:41:34
[2026-06-13 18:41:34,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:34,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:34,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:34,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:34,977.977 INFO    ] time= 13/06/2026 18:41:34
[2026-06-13 18:41:35,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:35,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:35,075.075 INFO    ] No existing commands found in stream
[2026-06-13 18:41:40,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:41:40,089.089 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 18:41:42,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:41:42,134.134 INFO    ] Checking for system updates...
[2026-06-13 18:41:42,156.156 INFO    ] 200
[2026-06-13 18:41:42,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:42,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:42,193.193 INFO    ] No update needed
[2026-06-13 18:41:42,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 18:41:42,216.216 INFO    ] 200
[2026-06-13 18:41:42,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:42,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:41:42,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:42,282.282 INFO    ] No camera update needed
[2026-06-13 18:41:42,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:41:42,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:41:42,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:41:42,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:44,331.331 INFO    ] ================================================
[2026-06-13 18:41:44,346.346 INFO    ] Launching Daemon at Sat Jun 13 18:41:44 IST 2026
[2026-06-13 18:41:44,357.357 INFO    ] ================================================
[2026-06-13 18:41:44,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:44
[2026-06-13 18:41:45,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:45,202.202 INFO    ] Initializing speech engine...
[2026-06-13 18:41:45,207.207 INFO    ] 2026-06-13 18:41:45
[2026-06-13 18:41:45,394.394 INFO    ] 2026-06-13 18:41:45
[2026-06-13 18:41:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:45,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:45,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:45,827.827 INFO    ] time= 13/06/2026 18:41:45
[2026-06-13 18:41:45,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:45,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:45,938.938 INFO    ] No existing commands found in stream
[2026-06-13 18:41:50,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:41:50,965.965 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 18:41:54,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:41:54,237.237 INFO    ] Checking for system updates...
[2026-06-13 18:41:54,259.259 INFO    ] 200
[2026-06-13 18:41:54,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:54,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:54,294.294 INFO    ] No update needed
[2026-06-13 18:41:54,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 18:41:54,316.316 INFO    ] 200
[2026-06-13 18:41:54,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:41:54,343.343 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:41:54,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:41:54,381.381 INFO    ] No camera update needed
[2026-06-13 18:41:54,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:41:54,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:41:54,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:41:54,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:41:56,430.430 INFO    ] ================================================
[2026-06-13 18:41:56,445.445 INFO    ] Launching Daemon at Sat Jun 13 18:41:56 IST 2026
[2026-06-13 18:41:56,456.456 INFO    ] ================================================
[2026-06-13 18:41:56,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:41:56
[2026-06-13 18:41:57,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:41:57,230.230 INFO    ] Initializing speech engine...
[2026-06-13 18:41:57,238.238 INFO    ] 2026-06-13 18:41:57
[2026-06-13 18:41:57,451.451 INFO    ] 2026-06-13 18:41:57
[2026-06-13 18:41:57,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:41:57,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:41:57,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:41:57,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:41:57,866.866 INFO    ] time= 13/06/2026 18:41:57
[2026-06-13 18:41:57,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:41:57,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:41:57,964.964 INFO    ] No existing commands found in stream
[2026-06-13 18:42:02,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:42:02,973.973 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 18:42:07,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:42:07,032.032 INFO    ] Checking for system updates...
[2026-06-13 18:42:07,058.058 INFO    ] 200
[2026-06-13 18:42:07,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:07,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:42:07,092.092 INFO    ] No update needed
[2026-06-13 18:42:07,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 18:42:07,114.114 INFO    ] 200
[2026-06-13 18:42:07,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:07,140.140 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:42:07,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:42:07,166.166 INFO    ] No camera update needed
[2026-06-13 18:42:07,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:42:07,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:42:07,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:42:07,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:42:09,214.214 INFO    ] ================================================
[2026-06-13 18:42:09,230.230 INFO    ] Launching Daemon at Sat Jun 13 18:42:09 IST 2026
[2026-06-13 18:42:09,240.240 INFO    ] ================================================
[2026-06-13 18:42:09,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:42:09
[2026-06-13 18:42:09,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:42:10,038.038 INFO    ] Initializing speech engine...
[2026-06-13 18:42:10,043.043 INFO    ] 2026-06-13 18:42:10
[2026-06-13 18:42:10,246.246 INFO    ] 2026-06-13 18:42:10
[2026-06-13 18:42:10,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:42:10,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:42:10,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:42:10,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:42:10,651.651 INFO    ] time= 13/06/2026 18:42:10
[2026-06-13 18:42:10,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:42:10,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:42:10,759.759 INFO    ] No existing commands found in stream
[2026-06-13 18:42:15,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:42:15,773.773 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 18:42:18,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:42:18,767.767 INFO    ] Checking for system updates...
[2026-06-13 18:42:18,788.788 INFO    ] 200
[2026-06-13 18:42:18,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:18,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:18,821.821 INFO    ] No update needed
[2026-06-13 18:42:18,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 18:42:18,844.844 INFO    ] 200
[2026-06-13 18:42:18,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:18,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:42:19,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:19,016.016 INFO    ] No camera update needed
[2026-06-13 18:42:19,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:42:19,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:42:19,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:42:19,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:42:21,062.062 INFO    ] ================================================
[2026-06-13 18:42:21,077.077 INFO    ] Launching Daemon at Sat Jun 13 18:42:21 IST 2026
[2026-06-13 18:42:21,088.088 INFO    ] ================================================
[2026-06-13 18:42:21,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:42:21
[2026-06-13 18:42:21,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:42:21,881.881 INFO    ] Initializing speech engine...
[2026-06-13 18:42:21,886.886 INFO    ] 2026-06-13 18:42:21
[2026-06-13 18:42:22,090.090 INFO    ] 2026-06-13 18:42:22
[2026-06-13 18:42:22,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:42:22,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:42:22,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:42:22,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:42:22,505.505 INFO    ] time= 13/06/2026 18:42:22
[2026-06-13 18:42:22,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:42:22,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:42:22,604.604 INFO    ] No existing commands found in stream
[2026-06-13 18:42:27,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:42:27,616.616 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 18:42:30,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:42:30,567.567 INFO    ] Checking for system updates...
[2026-06-13 18:42:30,589.589 INFO    ] 200
[2026-06-13 18:42:30,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:30,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:42:30,622.622 INFO    ] No update needed
[2026-06-13 18:42:30,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 18:42:30,643.643 INFO    ] 200
[2026-06-13 18:42:30,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:30,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:42:30,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:42:30,714.714 INFO    ] No camera update needed
[2026-06-13 18:42:30,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:42:30,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:42:30,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:42:30,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:42:32,764.764 INFO    ] ================================================
[2026-06-13 18:42:32,776.776 INFO    ] Launching Daemon at Sat Jun 13 18:42:32 IST 2026
[2026-06-13 18:42:32,783.783 INFO    ] ================================================
[2026-06-13 18:42:33,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:42:33
[2026-06-13 18:42:33,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:42:33,582.582 INFO    ] Initializing speech engine...
[2026-06-13 18:42:33,589.589 INFO    ] 2026-06-13 18:42:33
[2026-06-13 18:42:33,803.803 INFO    ] 2026-06-13 18:42:33
[2026-06-13 18:42:33,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:42:33,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:42:34,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:42:34,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:42:34,210.210 INFO    ] time= 13/06/2026 18:42:34
[2026-06-13 18:42:34,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:42:34,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:42:34,328.328 INFO    ] No existing commands found in stream
[2026-06-13 18:42:39,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:42:39,345.345 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 18:42:40,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:42:40,517.517 INFO    ] Checking for system updates...
[2026-06-13 18:42:40,538.538 INFO    ] 200
[2026-06-13 18:42:40,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:40,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:40,574.574 INFO    ] No update needed
[2026-06-13 18:42:40,576.576 INFO    ] Checking for camera pi updates...
[2026-06-13 18:42:40,596.596 INFO    ] 200
[2026-06-13 18:42:40,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:40,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:42:40,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:40,664.664 INFO    ] No camera update needed
[2026-06-13 18:42:40,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:42:40,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:42:40,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:42:40,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:42:42,714.714 INFO    ] ================================================
[2026-06-13 18:42:42,729.729 INFO    ] Launching Daemon at Sat Jun 13 18:42:42 IST 2026
[2026-06-13 18:42:42,741.741 INFO    ] ================================================
[2026-06-13 18:42:43,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:42:43
[2026-06-13 18:42:43,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:42:43,592.592 INFO    ] Initializing speech engine...
[2026-06-13 18:42:43,598.598 INFO    ] 2026-06-13 18:42:43
[2026-06-13 18:42:43,808.808 INFO    ] 2026-06-13 18:42:43
[2026-06-13 18:42:43,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:42:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:42:44,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:42:44,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:42:44,226.226 INFO    ] time= 13/06/2026 18:42:44
[2026-06-13 18:42:44,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:42:44,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:42:44,335.335 INFO    ] No existing commands found in stream
[2026-06-13 18:42:49,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:42:49,347.347 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 18:42:51,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:42:51,848.848 INFO    ] Checking for system updates...
[2026-06-13 18:42:51,871.871 INFO    ] 200
[2026-06-13 18:42:51,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:51,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:51,910.910 INFO    ] No update needed
[2026-06-13 18:42:51,911.911 INFO    ] Checking for camera pi updates...
[2026-06-13 18:42:51,931.931 INFO    ] 200
[2026-06-13 18:42:51,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:42:51,957.957 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:42:51,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:42:51,996.996 INFO    ] No camera update needed
[2026-06-13 18:42:51,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:42:51,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:42:52,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:42:52,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:42:54,045.045 INFO    ] ================================================
[2026-06-13 18:42:54,060.060 INFO    ] Launching Daemon at Sat Jun 13 18:42:54 IST 2026
[2026-06-13 18:42:54,071.071 INFO    ] ================================================
[2026-06-13 18:42:54,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:42:54
[2026-06-13 18:42:54,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:42:54,888.888 INFO    ] Initializing speech engine...
[2026-06-13 18:42:54,893.893 INFO    ] 2026-06-13 18:42:54
[2026-06-13 18:42:55,096.096 INFO    ] 2026-06-13 18:42:55
[2026-06-13 18:42:55,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:42:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:42:55,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:42:55,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:42:55,504.504 INFO    ] time= 13/06/2026 18:42:55
[2026-06-13 18:42:55,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:42:55,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:42:55,608.608 INFO    ] No existing commands found in stream
[2026-06-13 18:43:00,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:00,620.620 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 18:43:02,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:43:02,346.346 INFO    ] Checking for system updates...
[2026-06-13 18:43:02,371.371 INFO    ] 200
[2026-06-13 18:43:02,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:02,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:43:02,414.414 INFO    ] No update needed
[2026-06-13 18:43:02,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:02,439.439 INFO    ] 200
[2026-06-13 18:43:02,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:02,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:02,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:43:02,497.497 INFO    ] No camera update needed
[2026-06-13 18:43:02,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:02,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:02,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:02,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:43:04,548.548 INFO    ] ================================================
[2026-06-13 18:43:04,564.564 INFO    ] Launching Daemon at Sat Jun 13 18:43:04 IST 2026
[2026-06-13 18:43:04,576.576 INFO    ] ================================================
[2026-06-13 18:43:04,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:43:04
[2026-06-13 18:43:05,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:43:05,412.412 INFO    ] Initializing speech engine...
[2026-06-13 18:43:05,422.422 INFO    ] 2026-06-13 18:43:05
[2026-06-13 18:43:05,626.626 INFO    ] 2026-06-13 18:43:05
[2026-06-13 18:43:05,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:43:05,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:43:05,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:43:05,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:43:06,032.032 INFO    ] time= 13/06/2026 18:43:05
[2026-06-13 18:43:06,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:43:06,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:43:06,152.152 INFO    ] No existing commands found in stream
[2026-06-13 18:43:11,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:11,164.164 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 18:43:13,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:43:13,951.951 INFO    ] Checking for system updates...
[2026-06-13 18:43:13,972.972 INFO    ] 200
[2026-06-13 18:43:13,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:14,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:14,005.005 INFO    ] No update needed
[2026-06-13 18:43:14,006.006 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:14,026.026 INFO    ] 200
[2026-06-13 18:43:14,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:14,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:14,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:14,089.089 INFO    ] No camera update needed
[2026-06-13 18:43:14,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:14,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:14,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:14,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:43:16,138.138 INFO    ] ================================================
[2026-06-13 18:43:16,153.153 INFO    ] Launching Daemon at Sat Jun 13 18:43:16 IST 2026
[2026-06-13 18:43:16,164.164 INFO    ] ================================================
[2026-06-13 18:43:16,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:43:16
[2026-06-13 18:43:16,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:43:17,000.000 INFO    ] Initializing speech engine...
[2026-06-13 18:43:17,005.005 INFO    ] 2026-06-13 18:43:17
[2026-06-13 18:43:17,209.209 INFO    ] 2026-06-13 18:43:17
[2026-06-13 18:43:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:43:17,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:43:17,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:43:17,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:43:17,608.608 INFO    ] time= 13/06/2026 18:43:17
[2026-06-13 18:43:17,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:43:17,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:43:17,723.723 INFO    ] No existing commands found in stream
[2026-06-13 18:43:22,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:22,741.741 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 18:43:26,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:43:26,869.869 INFO    ] Checking for system updates...
[2026-06-13 18:43:26,891.891 INFO    ] 200
[2026-06-13 18:43:26,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:26,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:26,924.924 INFO    ] No update needed
[2026-06-13 18:43:26,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:26,946.946 INFO    ] 200
[2026-06-13 18:43:26,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:26,970.970 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:27,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:27,012.012 INFO    ] No camera update needed
[2026-06-13 18:43:27,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:27,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:27,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:27,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:43:29,059.059 INFO    ] ================================================
[2026-06-13 18:43:29,075.075 INFO    ] Launching Daemon at Sat Jun 13 18:43:29 IST 2026
[2026-06-13 18:43:29,086.086 INFO    ] ================================================
[2026-06-13 18:43:29,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:43:29
[2026-06-13 18:43:29,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:43:29,875.875 INFO    ] Initializing speech engine...
[2026-06-13 18:43:29,880.880 INFO    ] 2026-06-13 18:43:29
[2026-06-13 18:43:30,083.083 INFO    ] 2026-06-13 18:43:30
[2026-06-13 18:43:30,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:43:30,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:43:30,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:43:30,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:43:30,483.483 INFO    ] time= 13/06/2026 18:43:30
[2026-06-13 18:43:30,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:43:30,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:43:30,598.598 INFO    ] No existing commands found in stream
[2026-06-13 18:43:35,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:35,610.610 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 18:43:37,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:43:37,058.058 INFO    ] Checking for system updates...
[2026-06-13 18:43:37,095.095 INFO    ] 200
[2026-06-13 18:43:37,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:37,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:37,173.173 INFO    ] No update needed
[2026-06-13 18:43:37,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:37,215.215 INFO    ] 200
[2026-06-13 18:43:37,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:37,261.261 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:37,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:37,316.316 INFO    ] No camera update needed
[2026-06-13 18:43:37,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:37,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:37,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:37,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:43:39,376.376 INFO    ] ================================================
[2026-06-13 18:43:39,392.392 INFO    ] Launching Daemon at Sat Jun 13 18:43:39 IST 2026
[2026-06-13 18:43:39,404.404 INFO    ] ================================================
[2026-06-13 18:43:39,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:43:39
[2026-06-13 18:43:40,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:43:40,481.481 INFO    ] Initializing speech engine...
[2026-06-13 18:43:40,486.486 INFO    ] 2026-06-13 18:43:40
[2026-06-13 18:43:40,690.690 INFO    ] 2026-06-13 18:43:40
[2026-06-13 18:43:40,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:43:40,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:43:40,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:43:41,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:43:41,105.105 INFO    ] time= 13/06/2026 18:43:41
[2026-06-13 18:43:41,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:43:41,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:43:41,229.229 INFO    ] No existing commands found in stream
[2026-06-13 18:43:46,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:46,241.241 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 18:43:48,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:43:48,711.711 INFO    ] Checking for system updates...
[2026-06-13 18:43:48,732.732 INFO    ] 200
[2026-06-13 18:43:48,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:48,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:43:48,766.766 INFO    ] No update needed
[2026-06-13 18:43:48,768.768 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:48,788.788 INFO    ] 200
[2026-06-13 18:43:48,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:48,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:48,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:43:48,853.853 INFO    ] No camera update needed
[2026-06-13 18:43:48,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:48,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:48,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:48,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:43:50,903.903 INFO    ] ================================================
[2026-06-13 18:43:50,919.919 INFO    ] Launching Daemon at Sat Jun 13 18:43:50 IST 2026
[2026-06-13 18:43:50,930.930 INFO    ] ================================================
[2026-06-13 18:43:51,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:43:51
[2026-06-13 18:43:51,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:43:51,758.758 INFO    ] Initializing speech engine...
[2026-06-13 18:43:51,770.770 INFO    ] 2026-06-13 18:43:51
[2026-06-13 18:43:51,975.975 INFO    ] 2026-06-13 18:43:51
[2026-06-13 18:43:52,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:43:52,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:43:52,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:43:52,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:43:52,394.394 INFO    ] time= 13/06/2026 18:43:52
[2026-06-13 18:43:52,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:43:52,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:43:52,491.491 INFO    ] No existing commands found in stream
[2026-06-13 18:43:57,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:43:57,509.509 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 18:43:59,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:43:59,343.343 INFO    ] Checking for system updates...
[2026-06-13 18:43:59,366.366 INFO    ] 200
[2026-06-13 18:43:59,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:59,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:43:59,402.402 INFO    ] No update needed
[2026-06-13 18:43:59,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 18:43:59,424.424 INFO    ] 200
[2026-06-13 18:43:59,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:43:59,450.450 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:43:59,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:43:59,490.490 INFO    ] No camera update needed
[2026-06-13 18:43:59,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:43:59,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:43:59,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:43:59,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:01,537.537 INFO    ] ================================================
[2026-06-13 18:44:01,549.549 INFO    ] Launching Daemon at Sat Jun 13 18:44:01 IST 2026
[2026-06-13 18:44:01,558.558 INFO    ] ================================================
[2026-06-13 18:44:01,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:01
[2026-06-13 18:44:02,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:02,464.464 INFO    ] Initializing speech engine...
[2026-06-13 18:44:02,472.472 INFO    ] 2026-06-13 18:44:02
[2026-06-13 18:44:02,691.691 INFO    ] 2026-06-13 18:44:02
[2026-06-13 18:44:02,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:02,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:03,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:03,119.119 INFO    ] time= 13/06/2026 18:44:03
[2026-06-13 18:44:03,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:03,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:03,218.218 INFO    ] No existing commands found in stream
[2026-06-13 18:44:08,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:44:08,231.231 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 18:44:12,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:44:12,119.119 INFO    ] Checking for system updates...
[2026-06-13 18:44:12,140.140 INFO    ] 200
[2026-06-13 18:44:12,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:12,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:44:12,174.174 INFO    ] No update needed
[2026-06-13 18:44:12,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 18:44:12,195.195 INFO    ] 200
[2026-06-13 18:44:12,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:12,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:44:12,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:44:12,260.260 INFO    ] No camera update needed
[2026-06-13 18:44:12,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:44:12,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:44:12,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:44:12,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:14,310.310 INFO    ] ================================================
[2026-06-13 18:44:14,325.325 INFO    ] Launching Daemon at Sat Jun 13 18:44:14 IST 2026
[2026-06-13 18:44:14,337.337 INFO    ] ================================================
[2026-06-13 18:44:14,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:14
[2026-06-13 18:44:15,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:15,170.170 INFO    ] Initializing speech engine...
[2026-06-13 18:44:15,175.175 INFO    ] 2026-06-13 18:44:15
[2026-06-13 18:44:15,379.379 INFO    ] 2026-06-13 18:44:15
[2026-06-13 18:44:15,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:15,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:15,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:15,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:15,796.796 INFO    ] time= 13/06/2026 18:44:15
[2026-06-13 18:44:15,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:15,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:15,893.893 INFO    ] No existing commands found in stream
[2026-06-13 18:44:20,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:44:20,915.915 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 18:44:23,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:44:23,047.047 INFO    ] Checking for system updates...
[2026-06-13 18:44:23,068.068 INFO    ] 200
[2026-06-13 18:44:23,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:23,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:23,104.104 INFO    ] No update needed
[2026-06-13 18:44:23,105.105 INFO    ] Checking for camera pi updates...
[2026-06-13 18:44:23,125.125 INFO    ] 200
[2026-06-13 18:44:23,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:23,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:44:23,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:23,291.291 INFO    ] No camera update needed
[2026-06-13 18:44:23,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:44:23,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:44:23,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:44:23,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:25,337.337 INFO    ] ================================================
[2026-06-13 18:44:25,352.352 INFO    ] Launching Daemon at Sat Jun 13 18:44:25 IST 2026
[2026-06-13 18:44:25,363.363 INFO    ] ================================================
[2026-06-13 18:44:25,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:25
[2026-06-13 18:44:26,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:26,159.159 INFO    ] Initializing speech engine...
[2026-06-13 18:44:26,164.164 INFO    ] 2026-06-13 18:44:26
[2026-06-13 18:44:26,370.370 INFO    ] 2026-06-13 18:44:26
[2026-06-13 18:44:26,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:26,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:26,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:26,780.780 INFO    ] time= 13/06/2026 18:44:26
[2026-06-13 18:44:26,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:26,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:26,893.893 INFO    ] No existing commands found in stream
[2026-06-13 18:44:31,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:44:31,901.901 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 18:44:32,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:44:32,407.407 INFO    ] Checking for system updates...
[2026-06-13 18:44:32,427.427 INFO    ] 200
[2026-06-13 18:44:32,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:32,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:44:32,461.461 INFO    ] No update needed
[2026-06-13 18:44:32,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 18:44:32,482.482 INFO    ] 200
[2026-06-13 18:44:32,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:32,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:44:32,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:44:32,538.538 INFO    ] No camera update needed
[2026-06-13 18:44:32,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:44:32,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:44:32,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:44:32,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:34,584.584 INFO    ] ================================================
[2026-06-13 18:44:34,599.599 INFO    ] Launching Daemon at Sat Jun 13 18:44:34 IST 2026
[2026-06-13 18:44:34,611.611 INFO    ] ================================================
[2026-06-13 18:44:34,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:34
[2026-06-13 18:44:35,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:35,403.403 INFO    ] Initializing speech engine...
[2026-06-13 18:44:35,407.407 INFO    ] 2026-06-13 18:44:35
[2026-06-13 18:44:35,607.607 INFO    ] 2026-06-13 18:44:35
[2026-06-13 18:44:35,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:35,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:35,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:35,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:36,023.023 INFO    ] time= 13/06/2026 18:44:35
[2026-06-13 18:44:36,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:36,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:36,123.123 INFO    ] No existing commands found in stream
[2026-06-13 18:44:41,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:44:41,134.134 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 18:44:44,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:44:44,703.703 INFO    ] Checking for system updates...
[2026-06-13 18:44:44,724.724 INFO    ] 200
[2026-06-13 18:44:44,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:44,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:44,758.758 INFO    ] No update needed
[2026-06-13 18:44:44,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 18:44:44,780.780 INFO    ] 200
[2026-06-13 18:44:44,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:44,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:44:44,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:44,843.843 INFO    ] No camera update needed
[2026-06-13 18:44:44,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:44:44,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:44:44,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:44:44,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:46,892.892 INFO    ] ================================================
[2026-06-13 18:44:46,907.907 INFO    ] Launching Daemon at Sat Jun 13 18:44:46 IST 2026
[2026-06-13 18:44:46,918.918 INFO    ] ================================================
[2026-06-13 18:44:47,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:47
[2026-06-13 18:44:47,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:47,703.703 INFO    ] Initializing speech engine...
[2026-06-13 18:44:47,709.709 INFO    ] 2026-06-13 18:44:47
[2026-06-13 18:44:47,939.939 INFO    ] 2026-06-13 18:44:47
[2026-06-13 18:44:47,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:48,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:48,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:48,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:48,346.346 INFO    ] time= 13/06/2026 18:44:48
[2026-06-13 18:44:48,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:48,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:48,504.504 INFO    ] No existing commands found in stream
[2026-06-13 18:44:53,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:44:53,517.517 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 18:44:53,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:44:53,945.945 INFO    ] Checking for system updates...
[2026-06-13 18:44:53,966.966 INFO    ] 200
[2026-06-13 18:44:53,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:54,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:54,002.002 INFO    ] No update needed
[2026-06-13 18:44:54,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 18:44:54,023.023 INFO    ] 200
[2026-06-13 18:44:54,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:44:54,048.048 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:44:54,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:44:54,094.094 INFO    ] No camera update needed
[2026-06-13 18:44:54,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:44:54,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:44:54,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:44:54,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:44:56,143.143 INFO    ] ================================================
[2026-06-13 18:44:56,159.159 INFO    ] Launching Daemon at Sat Jun 13 18:44:56 IST 2026
[2026-06-13 18:44:56,170.170 INFO    ] ================================================
[2026-06-13 18:44:56,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:44:56
[2026-06-13 18:44:56,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:44:57,022.022 INFO    ] Initializing speech engine...
[2026-06-13 18:44:57,026.026 INFO    ] 2026-06-13 18:44:57
[2026-06-13 18:44:57,232.232 INFO    ] 2026-06-13 18:44:57
[2026-06-13 18:44:57,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:44:57,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:44:57,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:44:57,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:44:57,646.646 INFO    ] time= 13/06/2026 18:44:57
[2026-06-13 18:44:57,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:44:57,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:44:57,747.747 INFO    ] No existing commands found in stream
[2026-06-13 18:45:02,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:45:02,764.764 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 18:45:03,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:45:03,544.544 INFO    ] Checking for system updates...
[2026-06-13 18:45:03,581.581 INFO    ] 200
[2026-06-13 18:45:03,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:03,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:03,642.642 INFO    ] No update needed
[2026-06-13 18:45:03,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 18:45:03,680.680 INFO    ] 200
[2026-06-13 18:45:03,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:03,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:45:03,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:03,774.774 INFO    ] No camera update needed
[2026-06-13 18:45:03,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:45:03,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:45:03,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:45:03,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:45:05,833.833 INFO    ] ================================================
[2026-06-13 18:45:05,849.849 INFO    ] Launching Daemon at Sat Jun 13 18:45:05 IST 2026
[2026-06-13 18:45:05,860.860 INFO    ] ================================================
[2026-06-13 18:45:06,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:45:06
[2026-06-13 18:45:06,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:45:06,882.882 INFO    ] Initializing speech engine...
[2026-06-13 18:45:06,890.890 INFO    ] 2026-06-13 18:45:06
[2026-06-13 18:45:07,158.158 INFO    ] 2026-06-13 18:45:07
[2026-06-13 18:45:07,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:45:07,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:45:07,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:45:07,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:45:07,543.543 INFO    ] time= 13/06/2026 18:45:07
[2026-06-13 18:45:07,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:45:07,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:45:07,670.670 INFO    ] No existing commands found in stream
[2026-06-13 18:45:12,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:45:12,685.685 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 18:45:15,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:45:15,581.581 INFO    ] Checking for system updates...
[2026-06-13 18:45:15,602.602 INFO    ] 200
[2026-06-13 18:45:15,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:15,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:15,636.636 INFO    ] No update needed
[2026-06-13 18:45:15,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 18:45:15,656.656 INFO    ] 200
[2026-06-13 18:45:15,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:15,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:45:15,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:15,728.728 INFO    ] No camera update needed
[2026-06-13 18:45:15,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:45:15,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:45:15,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:45:15,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:45:17,776.776 INFO    ] ================================================
[2026-06-13 18:45:17,791.791 INFO    ] Launching Daemon at Sat Jun 13 18:45:17 IST 2026
[2026-06-13 18:45:17,803.803 INFO    ] ================================================
[2026-06-13 18:45:18,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:45:18
[2026-06-13 18:45:18,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:45:18,604.604 INFO    ] Initializing speech engine...
[2026-06-13 18:45:18,607.607 INFO    ] 2026-06-13 18:45:18
[2026-06-13 18:45:18,814.814 INFO    ] 2026-06-13 18:45:18
[2026-06-13 18:45:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:45:20,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:45:20,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:45:20,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:45:20,179.179 INFO    ] time= 13/06/2026 18:45:20
[2026-06-13 18:45:20,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:45:20,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:45:20,246.246 INFO    ] No existing commands found in stream
[2026-06-13 18:45:25,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:45:25,257.257 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 18:45:29,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:45:29,344.344 INFO    ] Checking for system updates...
[2026-06-13 18:45:29,365.365 INFO    ] 200
[2026-06-13 18:45:29,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:29,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:45:29,399.399 INFO    ] No update needed
[2026-06-13 18:45:29,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 18:45:29,420.420 INFO    ] 200
[2026-06-13 18:45:29,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:29,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:45:29,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:45:29,489.489 INFO    ] No camera update needed
[2026-06-13 18:45:29,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:45:29,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:45:29,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:45:29,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:45:31,550.550 INFO    ] ================================================
[2026-06-13 18:45:31,567.567 INFO    ] Launching Daemon at Sat Jun 13 18:45:31 IST 2026
[2026-06-13 18:45:31,580.580 INFO    ] ================================================
[2026-06-13 18:45:32,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:45:32
[2026-06-13 18:45:32,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:45:32,817.817 INFO    ] Initializing speech engine...
[2026-06-13 18:45:32,822.822 INFO    ] 2026-06-13 18:45:32
[2026-06-13 18:45:33,028.028 INFO    ] 2026-06-13 18:45:33
[2026-06-13 18:45:33,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:45:33,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:45:33,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:45:33,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:45:33,444.444 INFO    ] time= 13/06/2026 18:45:33
[2026-06-13 18:45:33,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:45:33,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:45:33,551.551 INFO    ] No existing commands found in stream
[2026-06-13 18:45:38,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:45:38,563.563 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 18:45:41,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:45:41,759.759 INFO    ] Checking for system updates...
[2026-06-13 18:45:41,779.779 INFO    ] 200
[2026-06-13 18:45:41,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:41,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:45:41,813.813 INFO    ] No update needed
[2026-06-13 18:45:41,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 18:45:41,834.834 INFO    ] 200
[2026-06-13 18:45:41,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:41,861.861 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:45:41,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:45:41,907.907 INFO    ] No camera update needed
[2026-06-13 18:45:41,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:45:41,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:45:41,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:45:41,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:45:43,955.955 INFO    ] ================================================
[2026-06-13 18:45:43,970.970 INFO    ] Launching Daemon at Sat Jun 13 18:45:43 IST 2026
[2026-06-13 18:45:43,982.982 INFO    ] ================================================
[2026-06-13 18:45:44,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:45:44
[2026-06-13 18:45:44,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:45:44,770.770 INFO    ] Initializing speech engine...
[2026-06-13 18:45:44,775.775 INFO    ] 2026-06-13 18:45:44
[2026-06-13 18:45:44,979.979 INFO    ] 2026-06-13 18:45:44
[2026-06-13 18:45:45,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:45:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:45:45,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:45:45,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:45:45,382.382 INFO    ] time= 13/06/2026 18:45:45
[2026-06-13 18:45:45,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:45:45,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:45:45,492.492 INFO    ] No existing commands found in stream
[2026-06-13 18:45:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:45:50,503.503 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 18:45:53,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:45:53,984.984 INFO    ] Checking for system updates...
[2026-06-13 18:45:54,005.005 INFO    ] 200
[2026-06-13 18:45:54,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:54,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:54,041.041 INFO    ] No update needed
[2026-06-13 18:45:54,042.042 INFO    ] Checking for camera pi updates...
[2026-06-13 18:45:54,062.062 INFO    ] 200
[2026-06-13 18:45:54,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:45:54,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:45:54,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:45:54,127.127 INFO    ] No camera update needed
[2026-06-13 18:45:54,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:45:54,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:45:54,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:45:54,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:45:56,175.175 INFO    ] ================================================
[2026-06-13 18:45:56,191.191 INFO    ] Launching Daemon at Sat Jun 13 18:45:56 IST 2026
[2026-06-13 18:45:56,202.202 INFO    ] ================================================
[2026-06-13 18:45:56,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:45:56
[2026-06-13 18:45:56,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:45:57,003.003 INFO    ] Initializing speech engine...
[2026-06-13 18:45:57,022.022 INFO    ] 2026-06-13 18:45:57
[2026-06-13 18:45:57,274.274 INFO    ] 2026-06-13 18:45:57
[2026-06-13 18:45:57,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:45:57,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:45:57,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:45:57,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:45:57,634.634 INFO    ] time= 13/06/2026 18:45:57
[2026-06-13 18:45:57,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:45:57,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:45:57,729.729 INFO    ] No existing commands found in stream
[2026-06-13 18:46:02,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:02,743.743 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 18:46:04,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:46:04,136.136 INFO    ] Checking for system updates...
[2026-06-13 18:46:04,173.173 INFO    ] 200
[2026-06-13 18:46:04,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:04,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:04,235.235 INFO    ] No update needed
[2026-06-13 18:46:04,237.237 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:04,271.271 INFO    ] 200
[2026-06-13 18:46:04,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:04,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:04,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:04,374.374 INFO    ] No camera update needed
[2026-06-13 18:46:04,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:04,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:04,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:04,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:06,432.432 INFO    ] ================================================
[2026-06-13 18:46:06,448.448 INFO    ] Launching Daemon at Sat Jun 13 18:46:06 IST 2026
[2026-06-13 18:46:06,459.459 INFO    ] ================================================
[2026-06-13 18:46:06,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:06
[2026-06-13 18:46:07,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:07,284.284 INFO    ] Initializing speech engine...
[2026-06-13 18:46:07,295.295 INFO    ] 2026-06-13 18:46:07
[2026-06-13 18:46:07,501.501 INFO    ] 2026-06-13 18:46:07
[2026-06-13 18:46:07,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:07,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:07,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:07,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:07,923.923 INFO    ] time= 13/06/2026 18:46:07
[2026-06-13 18:46:07,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:07,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:08,025.025 INFO    ] No existing commands found in stream
[2026-06-13 18:46:13,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:13,039.039 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 18:46:13,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:46:13,461.461 INFO    ] Checking for system updates...
[2026-06-13 18:46:13,492.492 INFO    ] 200
[2026-06-13 18:46:13,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:13,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:13,525.525 INFO    ] No update needed
[2026-06-13 18:46:13,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:13,551.551 INFO    ] 200
[2026-06-13 18:46:13,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:13,578.578 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:13,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:13,624.624 INFO    ] No camera update needed
[2026-06-13 18:46:13,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:13,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:13,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:13,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:15,672.672 INFO    ] ================================================
[2026-06-13 18:46:15,687.687 INFO    ] Launching Daemon at Sat Jun 13 18:46:15 IST 2026
[2026-06-13 18:46:15,698.698 INFO    ] ================================================
[2026-06-13 18:46:16,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:16
[2026-06-13 18:46:16,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:16,488.488 INFO    ] Initializing speech engine...
[2026-06-13 18:46:16,493.493 INFO    ] 2026-06-13 18:46:16
[2026-06-13 18:46:16,700.700 INFO    ] 2026-06-13 18:46:16
[2026-06-13 18:46:16,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:16,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:16,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:17,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:17,110.110 INFO    ] time= 13/06/2026 18:46:17
[2026-06-13 18:46:17,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:17,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:17,224.224 INFO    ] No existing commands found in stream
[2026-06-13 18:46:22,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:22,236.236 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 18:46:23,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:46:23,229.229 INFO    ] Checking for system updates...
[2026-06-13 18:46:23,251.251 INFO    ] 200
[2026-06-13 18:46:23,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:23,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:23,284.284 INFO    ] No update needed
[2026-06-13 18:46:23,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:23,307.307 INFO    ] 200
[2026-06-13 18:46:23,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:23,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:23,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:23,372.372 INFO    ] No camera update needed
[2026-06-13 18:46:23,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:23,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:23,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:23,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:25,419.419 INFO    ] ================================================
[2026-06-13 18:46:25,435.435 INFO    ] Launching Daemon at Sat Jun 13 18:46:25 IST 2026
[2026-06-13 18:46:25,448.448 INFO    ] ================================================
[2026-06-13 18:46:25,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:25
[2026-06-13 18:46:26,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:26,302.302 INFO    ] Initializing speech engine...
[2026-06-13 18:46:26,308.308 INFO    ] 2026-06-13 18:46:26
[2026-06-13 18:46:26,516.516 INFO    ] 2026-06-13 18:46:26
[2026-06-13 18:46:26,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:26,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:26,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:26,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:26,928.928 INFO    ] time= 13/06/2026 18:46:26
[2026-06-13 18:46:26,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:26,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:27,043.043 INFO    ] No existing commands found in stream
[2026-06-13 18:46:32,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:32,059.059 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 18:46:32,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:46:32,798.798 INFO    ] Checking for system updates...
[2026-06-13 18:46:32,819.819 INFO    ] 200
[2026-06-13 18:46:32,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:32,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:32,855.855 INFO    ] No update needed
[2026-06-13 18:46:32,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:32,879.879 INFO    ] 200
[2026-06-13 18:46:32,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:32,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:32,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:32,932.932 INFO    ] No camera update needed
[2026-06-13 18:46:32,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:32,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:32,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:32,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:34,981.981 INFO    ] ================================================
[2026-06-13 18:46:35,998.998 INFO    ] Launching Daemon at Sat Jun 13 18:46:34 IST 2026
[2026-06-13 18:46:35,009.009 INFO    ] ================================================
[2026-06-13 18:46:35,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:35
[2026-06-13 18:46:35,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:35,823.823 INFO    ] Initializing speech engine...
[2026-06-13 18:46:35,828.828 INFO    ] 2026-06-13 18:46:35
[2026-06-13 18:46:36,032.032 INFO    ] 2026-06-13 18:46:36
[2026-06-13 18:46:36,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:36,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:36,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:36,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:36,446.446 INFO    ] time= 13/06/2026 18:46:36
[2026-06-13 18:46:36,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:36,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:36,629.629 INFO    ] No existing commands found in stream
[2026-06-13 18:46:41,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:41,669.669 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 18:46:42,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:46:42,090.090 INFO    ] Checking for system updates...
[2026-06-13 18:46:42,111.111 INFO    ] 200
[2026-06-13 18:46:42,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:42,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:42,148.148 INFO    ] No update needed
[2026-06-13 18:46:42,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:42,171.171 INFO    ] 200
[2026-06-13 18:46:42,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:42,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:42,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:46:42,238.238 INFO    ] No camera update needed
[2026-06-13 18:46:42,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:42,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:42,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:42,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:44,290.290 INFO    ] ================================================
[2026-06-13 18:46:44,306.306 INFO    ] Launching Daemon at Sat Jun 13 18:46:44 IST 2026
[2026-06-13 18:46:44,318.318 INFO    ] ================================================
[2026-06-13 18:46:44,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:44
[2026-06-13 18:46:45,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:45,182.182 INFO    ] Initializing speech engine...
[2026-06-13 18:46:45,188.188 INFO    ] 2026-06-13 18:46:45
[2026-06-13 18:46:45,398.398 INFO    ] 2026-06-13 18:46:45
[2026-06-13 18:46:45,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:45,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:45,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:45,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:45,822.822 INFO    ] time= 13/06/2026 18:46:45
[2026-06-13 18:46:45,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:45,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:45,925.925 INFO    ] No existing commands found in stream
[2026-06-13 18:46:50,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:46:50,948.948 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 18:46:53,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:46:53,594.594 INFO    ] Checking for system updates...
[2026-06-13 18:46:53,616.616 INFO    ] 200
[2026-06-13 18:46:53,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:53,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:53,658.658 INFO    ] No update needed
[2026-06-13 18:46:53,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 18:46:53,680.680 INFO    ] 200
[2026-06-13 18:46:53,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:46:53,707.707 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:46:53,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:46:53,731.731 INFO    ] No camera update needed
[2026-06-13 18:46:53,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:46:53,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:46:53,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:46:53,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:46:55,780.780 INFO    ] ================================================
[2026-06-13 18:46:55,796.796 INFO    ] Launching Daemon at Sat Jun 13 18:46:55 IST 2026
[2026-06-13 18:46:55,808.808 INFO    ] ================================================
[2026-06-13 18:46:56,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:46:56
[2026-06-13 18:46:56,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:46:56,601.601 INFO    ] Initializing speech engine...
[2026-06-13 18:46:56,609.609 INFO    ] 2026-06-13 18:46:56
[2026-06-13 18:46:56,820.820 INFO    ] 2026-06-13 18:46:56
[2026-06-13 18:46:56,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:46:57,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:46:57,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:46:57,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:46:57,221.221 INFO    ] time= 13/06/2026 18:46:57
[2026-06-13 18:46:57,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:46:57,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:46:57,337.337 INFO    ] No existing commands found in stream
[2026-06-13 18:47:02,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:02,351.351 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 18:47:04,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:47:04,717.717 INFO    ] Checking for system updates...
[2026-06-13 18:47:04,738.738 INFO    ] 200
[2026-06-13 18:47:04,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:04,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:47:04,772.772 INFO    ] No update needed
[2026-06-13 18:47:04,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 18:47:04,793.793 INFO    ] 200
[2026-06-13 18:47:04,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:04,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:47:04,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:47:04,863.863 INFO    ] No camera update needed
[2026-06-13 18:47:04,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:47:04,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:47:04,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:47:04,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:47:06,910.910 INFO    ] ================================================
[2026-06-13 18:47:06,926.926 INFO    ] Launching Daemon at Sat Jun 13 18:47:06 IST 2026
[2026-06-13 18:47:06,938.938 INFO    ] ================================================
[2026-06-13 18:47:07,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:47:07
[2026-06-13 18:47:07,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:47:07,783.783 INFO    ] Initializing speech engine...
[2026-06-13 18:47:07,792.792 INFO    ] 2026-06-13 18:47:07
[2026-06-13 18:47:08,002.002 INFO    ] 2026-06-13 18:47:07
[2026-06-13 18:47:08,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:47:08,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:47:08,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:47:08,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:47:08,424.424 INFO    ] time= 13/06/2026 18:47:08
[2026-06-13 18:47:08,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:47:08,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:47:08,521.521 INFO    ] No existing commands found in stream
[2026-06-13 18:47:13,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:13,539.539 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 18:47:15,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:47:15,062.062 INFO    ] Checking for system updates...
[2026-06-13 18:47:15,082.082 INFO    ] 200
[2026-06-13 18:47:15,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:15,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:15,118.118 INFO    ] No update needed
[2026-06-13 18:47:15,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 18:47:15,139.139 INFO    ] 200
[2026-06-13 18:47:15,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:15,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:47:15,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:15,205.205 INFO    ] No camera update needed
[2026-06-13 18:47:15,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:47:15,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:47:15,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:47:15,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:47:17,252.252 INFO    ] ================================================
[2026-06-13 18:47:17,267.267 INFO    ] Launching Daemon at Sat Jun 13 18:47:17 IST 2026
[2026-06-13 18:47:17,278.278 INFO    ] ================================================
[2026-06-13 18:47:17,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:47:17
[2026-06-13 18:47:17,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:47:18,082.082 INFO    ] Initializing speech engine...
[2026-06-13 18:47:18,087.087 INFO    ] 2026-06-13 18:47:18
[2026-06-13 18:47:18,315.315 INFO    ] 2026-06-13 18:47:18
[2026-06-13 18:47:18,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:47:18,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:47:18,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:47:18,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:47:18,731.731 INFO    ] time= 13/06/2026 18:47:18
[2026-06-13 18:47:18,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:47:18,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:47:18,870.870 INFO    ] No existing commands found in stream
[2026-06-13 18:47:23,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:23,882.882 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 18:47:25,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:47:25,200.200 INFO    ] Checking for system updates...
[2026-06-13 18:47:25,221.221 INFO    ] 200
[2026-06-13 18:47:25,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:25,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:25,254.254 INFO    ] No update needed
[2026-06-13 18:47:25,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 18:47:25,277.277 INFO    ] 200
[2026-06-13 18:47:25,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:25,302.302 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:47:25,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:25,350.350 INFO    ] No camera update needed
[2026-06-13 18:47:25,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:47:25,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:47:25,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:47:25,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:47:27,398.398 INFO    ] ================================================
[2026-06-13 18:47:27,413.413 INFO    ] Launching Daemon at Sat Jun 13 18:47:27 IST 2026
[2026-06-13 18:47:27,423.423 INFO    ] ================================================
[2026-06-13 18:47:27,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:47:27
[2026-06-13 18:47:28,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:47:28,233.233 INFO    ] Initializing speech engine...
[2026-06-13 18:47:28,246.246 INFO    ] 2026-06-13 18:47:28
[2026-06-13 18:47:28,464.464 INFO    ] 2026-06-13 18:47:28
[2026-06-13 18:47:28,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:47:28,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:47:28,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:47:28,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:47:28,815.815 INFO    ] time= 13/06/2026 18:47:28
[2026-06-13 18:47:28,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:47:28,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:47:28,995.995 INFO    ] No existing commands found in stream
[2026-06-13 18:47:34,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:34,009.009 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 18:47:36,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:47:36,562.562 INFO    ] Checking for system updates...
[2026-06-13 18:47:36,583.583 INFO    ] 200
[2026-06-13 18:47:36,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:36,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:36,616.616 INFO    ] No update needed
[2026-06-13 18:47:36,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 18:47:36,639.639 INFO    ] 200
[2026-06-13 18:47:36,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:36,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:47:36,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:36,714.714 INFO    ] No camera update needed
[2026-06-13 18:47:36,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:47:36,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:47:36,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:47:36,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:47:38,762.762 INFO    ] ================================================
[2026-06-13 18:47:38,777.777 INFO    ] Launching Daemon at Sat Jun 13 18:47:38 IST 2026
[2026-06-13 18:47:38,788.788 INFO    ] ================================================
[2026-06-13 18:47:39,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:47:39
[2026-06-13 18:47:39,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:47:39,580.580 INFO    ] Initializing speech engine...
[2026-06-13 18:47:39,588.588 INFO    ] 2026-06-13 18:47:39
[2026-06-13 18:47:39,803.803 INFO    ] 2026-06-13 18:47:39
[2026-06-13 18:47:39,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:47:40,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:47:40,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:47:40,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:47:40,203.203 INFO    ] time= 13/06/2026 18:47:40
[2026-06-13 18:47:40,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:47:40,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:47:40,325.325 INFO    ] No existing commands found in stream
[2026-06-13 18:47:45,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:45,335.335 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 18:47:48,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:47:48,587.587 INFO    ] Checking for system updates...
[2026-06-13 18:47:48,612.612 INFO    ] 200
[2026-06-13 18:47:48,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:48,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:47:48,650.650 INFO    ] No update needed
[2026-06-13 18:47:48,651.651 INFO    ] Checking for camera pi updates...
[2026-06-13 18:47:48,672.672 INFO    ] 200
[2026-06-13 18:47:48,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:47:48,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:47:48,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:47:48,745.745 INFO    ] No camera update needed
[2026-06-13 18:47:48,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:47:48,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:47:48,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:47:48,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:47:50,785.785 INFO    ] ================================================
[2026-06-13 18:47:50,800.800 INFO    ] Launching Daemon at Sat Jun 13 18:47:50 IST 2026
[2026-06-13 18:47:50,811.811 INFO    ] ================================================
[2026-06-13 18:47:51,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:47:51
[2026-06-13 18:47:51,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:47:51,591.591 INFO    ] Initializing speech engine...
[2026-06-13 18:47:51,600.600 INFO    ] 2026-06-13 18:47:51
[2026-06-13 18:47:51,813.813 INFO    ] 2026-06-13 18:47:51
[2026-06-13 18:47:51,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:47:52,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:47:52,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:47:52,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:47:52,208.208 INFO    ] time= 13/06/2026 18:47:52
[2026-06-13 18:47:52,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:47:52,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:47:52,335.335 INFO    ] No existing commands found in stream
[2026-06-13 18:47:57,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:47:57,349.349 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 18:48:01,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:48:01,513.513 INFO    ] Checking for system updates...
[2026-06-13 18:48:01,545.545 INFO    ] 200
[2026-06-13 18:48:01,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:01,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:01,597.597 INFO    ] No update needed
[2026-06-13 18:48:01,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:01,626.626 INFO    ] 200
[2026-06-13 18:48:01,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:01,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:01,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:01,692.692 INFO    ] No camera update needed
[2026-06-13 18:48:01,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:01,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:01,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:01,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:03,744.744 INFO    ] ================================================
[2026-06-13 18:48:03,759.759 INFO    ] Launching Daemon at Sat Jun 13 18:48:03 IST 2026
[2026-06-13 18:48:03,770.770 INFO    ] ================================================
[2026-06-13 18:48:04,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:04
[2026-06-13 18:48:04,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:48:04,545.545 INFO    ] Initializing speech engine...
[2026-06-13 18:48:04,550.550 INFO    ] 2026-06-13 18:48:04
[2026-06-13 18:48:04,751.751 INFO    ] 2026-06-13 18:48:04
[2026-06-13 18:48:04,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:48:04,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:48:04,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:48:05,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:48:05,160.160 INFO    ] time= 13/06/2026 18:48:05
[2026-06-13 18:48:05,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:48:05,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:48:05,266.266 INFO    ] No existing commands found in stream
[2026-06-13 18:48:10,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:48:10,277.277 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 18:48:11,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:48:11,833.833 INFO    ] Checking for system updates...
[2026-06-13 18:48:11,854.854 INFO    ] 200
[2026-06-13 18:48:11,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:11,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:11,890.890 INFO    ] No update needed
[2026-06-13 18:48:11,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:11,910.910 INFO    ] 200
[2026-06-13 18:48:11,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:11,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:11,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:11,974.974 INFO    ] No camera update needed
[2026-06-13 18:48:11,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:11,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:11,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:11,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:14,022.022 INFO    ] ================================================
[2026-06-13 18:48:14,038.038 INFO    ] Launching Daemon at Sat Jun 13 18:48:14 IST 2026
[2026-06-13 18:48:14,049.049 INFO    ] ================================================
[2026-06-13 18:48:14,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:14
[2026-06-13 18:48:14,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:48:14,853.853 INFO    ] Initializing speech engine...
[2026-06-13 18:48:14,861.861 INFO    ] 2026-06-13 18:48:14
[2026-06-13 18:48:15,080.080 INFO    ] 2026-06-13 18:48:15
[2026-06-13 18:48:15,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:48:15,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:48:15,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:48:15,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:48:15,450.450 INFO    ] time= 13/06/2026 18:48:15
[2026-06-13 18:48:15,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:48:15,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:48:15,617.617 INFO    ] No existing commands found in stream
[2026-06-13 18:48:20,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:48:20,630.630 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 18:48:23,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:48:23,727.727 INFO    ] Checking for system updates...
[2026-06-13 18:48:23,748.748 INFO    ] 200
[2026-06-13 18:48:23,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:23,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:23,781.781 INFO    ] No update needed
[2026-06-13 18:48:23,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:23,803.803 INFO    ] 200
[2026-06-13 18:48:23,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:23,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:23,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:23,875.875 INFO    ] No camera update needed
[2026-06-13 18:48:23,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:23,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:23,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:23,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:25,923.923 INFO    ] ================================================
[2026-06-13 18:48:25,939.939 INFO    ] Launching Daemon at Sat Jun 13 18:48:25 IST 2026
[2026-06-13 18:48:25,949.949 INFO    ] ================================================
[2026-06-13 18:48:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:26
[2026-06-13 18:48:26,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:48:26,752.752 INFO    ] Initializing speech engine...
[2026-06-13 18:48:26,754.754 INFO    ] 2026-06-13 18:48:26
[2026-06-13 18:48:26,947.947 INFO    ] 2026-06-13 18:48:26
[2026-06-13 18:48:26,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:48:27,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:48:27,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:48:27,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:48:27,367.367 INFO    ] time= 13/06/2026 18:48:27
[2026-06-13 18:48:27,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:48:27,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:48:27,551.551 INFO    ] No existing commands found in stream
[2026-06-13 18:48:32,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:48:32,561.561 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 18:48:35,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:48:35,077.077 INFO    ] Checking for system updates...
[2026-06-13 18:48:35,097.097 INFO    ] 200
[2026-06-13 18:48:35,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:35,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:35,131.131 INFO    ] No update needed
[2026-06-13 18:48:35,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:35,153.153 INFO    ] 200
[2026-06-13 18:48:35,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:35,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:35,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:35,321.321 INFO    ] No camera update needed
[2026-06-13 18:48:35,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:35,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:35,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:35,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:37,369.369 INFO    ] ================================================
[2026-06-13 18:48:37,384.384 INFO    ] Launching Daemon at Sat Jun 13 18:48:37 IST 2026
[2026-06-13 18:48:37,395.395 INFO    ] ================================================
[2026-06-13 18:48:37,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:37
[2026-06-13 18:48:38,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:48:38,236.236 INFO    ] Initializing speech engine...
[2026-06-13 18:48:38,241.241 INFO    ] 2026-06-13 18:48:38
[2026-06-13 18:48:38,448.448 INFO    ] 2026-06-13 18:48:38
[2026-06-13 18:48:38,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:48:38,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:48:38,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:48:38,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:48:38,871.871 INFO    ] time= 13/06/2026 18:48:38
[2026-06-13 18:48:38,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:48:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:48:38,965.965 INFO    ] No existing commands found in stream
[2026-06-13 18:48:43,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:48:43,978.978 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 18:48:47,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:48:47,432.432 INFO    ] Checking for system updates...
[2026-06-13 18:48:47,453.453 INFO    ] 200
[2026-06-13 18:48:47,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:47,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:47,487.487 INFO    ] No update needed
[2026-06-13 18:48:47,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:47,511.511 INFO    ] 200
[2026-06-13 18:48:47,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:47,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:47,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:48:47,579.579 INFO    ] No camera update needed
[2026-06-13 18:48:47,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:47,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:47,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:47,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:49,629.629 INFO    ] ================================================
[2026-06-13 18:48:49,645.645 INFO    ] Launching Daemon at Sat Jun 13 18:48:49 IST 2026
[2026-06-13 18:48:49,655.655 INFO    ] ================================================
[2026-06-13 18:48:49,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:49
[2026-06-13 18:48:50,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:48:50,444.444 INFO    ] Initializing speech engine...
[2026-06-13 18:48:50,454.454 INFO    ] 2026-06-13 18:48:50
[2026-06-13 18:48:50,659.659 INFO    ] 2026-06-13 18:48:50
[2026-06-13 18:48:50,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:48:50,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:48:50,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:48:51,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:48:51,061.061 INFO    ] time= 13/06/2026 18:48:51
[2026-06-13 18:48:51,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:48:51,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:48:51,305.305 INFO    ] No existing commands found in stream
[2026-06-13 18:48:56,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:48:56,325.325 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 18:48:57,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:48:57,036.036 INFO    ] Checking for system updates...
[2026-06-13 18:48:57,059.059 INFO    ] 200
[2026-06-13 18:48:57,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:57,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:57,092.092 INFO    ] No update needed
[2026-06-13 18:48:57,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 18:48:57,113.113 INFO    ] 200
[2026-06-13 18:48:57,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:48:57,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:48:57,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:48:57,183.183 INFO    ] No camera update needed
[2026-06-13 18:48:57,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:48:57,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:48:57,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:48:57,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:48:59,232.232 INFO    ] ================================================
[2026-06-13 18:48:59,247.247 INFO    ] Launching Daemon at Sat Jun 13 18:48:59 IST 2026
[2026-06-13 18:48:59,258.258 INFO    ] ================================================
[2026-06-13 18:48:59,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:48:59
[2026-06-13 18:48:59,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:00,053.053 INFO    ] Initializing speech engine...
[2026-06-13 18:49:00,056.056 INFO    ] 2026-06-13 18:49:00
[2026-06-13 18:49:00,272.272 INFO    ] 2026-06-13 18:49:00
[2026-06-13 18:49:00,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:00,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:00,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:00,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:00,682.682 INFO    ] time= 13/06/2026 18:49:00
[2026-06-13 18:49:00,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:00,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:00,788.788 INFO    ] No existing commands found in stream
[2026-06-13 18:49:05,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:49:05,800.800 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 18:49:07,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:49:07,626.626 INFO    ] Checking for system updates...
[2026-06-13 18:49:07,647.647 INFO    ] 200
[2026-06-13 18:49:07,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:07,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:49:07,681.681 INFO    ] No update needed
[2026-06-13 18:49:07,683.683 INFO    ] Checking for camera pi updates...
[2026-06-13 18:49:07,702.702 INFO    ] 200
[2026-06-13 18:49:07,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:07,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:49:07,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:49:07,774.774 INFO    ] No camera update needed
[2026-06-13 18:49:07,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:49:07,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:49:07,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:49:07,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:49:09,823.823 INFO    ] ================================================
[2026-06-13 18:49:09,838.838 INFO    ] Launching Daemon at Sat Jun 13 18:49:09 IST 2026
[2026-06-13 18:49:09,849.849 INFO    ] ================================================
[2026-06-13 18:49:10,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:49:10
[2026-06-13 18:49:10,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:10,658.658 INFO    ] Initializing speech engine...
[2026-06-13 18:49:10,663.663 INFO    ] 2026-06-13 18:49:10
[2026-06-13 18:49:10,865.865 INFO    ] 2026-06-13 18:49:10
[2026-06-13 18:49:10,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:11,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:11,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:11,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:11,270.270 INFO    ] time= 13/06/2026 18:49:11
[2026-06-13 18:49:11,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:11,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:11,379.379 INFO    ] No existing commands found in stream
[2026-06-13 18:49:16,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:49:16,392.392 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 18:49:19,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:49:19,169.169 INFO    ] Checking for system updates...
[2026-06-13 18:49:19,191.191 INFO    ] 200
[2026-06-13 18:49:19,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:19,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:49:19,246.246 INFO    ] No update needed
[2026-06-13 18:49:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 18:49:19,267.267 INFO    ] 200
[2026-06-13 18:49:19,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:19,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:49:19,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:49:19,338.338 INFO    ] No camera update needed
[2026-06-13 18:49:19,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:49:19,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:49:19,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:49:19,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:49:21,388.388 INFO    ] ================================================
[2026-06-13 18:49:21,403.403 INFO    ] Launching Daemon at Sat Jun 13 18:49:21 IST 2026
[2026-06-13 18:49:21,414.414 INFO    ] ================================================
[2026-06-13 18:49:21,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:49:21
[2026-06-13 18:49:22,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:22,288.288 INFO    ] Initializing speech engine...
[2026-06-13 18:49:22,299.299 INFO    ] 2026-06-13 18:49:22
[2026-06-13 18:49:22,514.514 INFO    ] 2026-06-13 18:49:22
[2026-06-13 18:49:22,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:22,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:22,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:22,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:22,834.834 INFO    ] time= 13/06/2026 18:49:22
[2026-06-13 18:49:22,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:22,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:22,972.972 INFO    ] No existing commands found in stream
[2026-06-13 18:49:27,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:49:27,989.989 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 18:49:29,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:49:29,964.964 INFO    ] Checking for system updates...
[2026-06-13 18:49:29,985.985 INFO    ] 200
[2026-06-13 18:49:29,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:30,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:49:30,024.024 INFO    ] No update needed
[2026-06-13 18:49:30,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 18:49:30,045.045 INFO    ] 200
[2026-06-13 18:49:30,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:30,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:49:30,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:49:30,108.108 INFO    ] No camera update needed
[2026-06-13 18:49:30,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:49:30,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:49:30,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:49:30,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:49:32,141.141 INFO    ] ================================================
[2026-06-13 18:49:32,150.150 INFO    ] Launching Daemon at Sat Jun 13 18:49:32 IST 2026
[2026-06-13 18:49:32,156.156 INFO    ] ================================================
[2026-06-13 18:49:32,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:49:32
[2026-06-13 18:49:32,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:32,953.953 INFO    ] Initializing speech engine...
[2026-06-13 18:49:32,966.966 INFO    ] 2026-06-13 18:49:32
[2026-06-13 18:49:33,184.184 INFO    ] 2026-06-13 18:49:33
[2026-06-13 18:49:33,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:33,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:33,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:33,557.557 INFO    ] time= 13/06/2026 18:49:33
[2026-06-13 18:49:33,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:33,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:33,738.738 INFO    ] No existing commands found in stream
[2026-06-13 18:49:38,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:49:38,751.751 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 18:49:40,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:49:40,184.184 INFO    ] Checking for system updates...
[2026-06-13 18:49:40,220.220 INFO    ] 200
[2026-06-13 18:49:40,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:40,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:49:40,278.278 INFO    ] No update needed
[2026-06-13 18:49:40,280.280 INFO    ] Checking for camera pi updates...
[2026-06-13 18:49:40,314.314 INFO    ] 200
[2026-06-13 18:49:40,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:40,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:49:40,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:49:40,400.400 INFO    ] No camera update needed
[2026-06-13 18:49:40,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:49:40,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:49:40,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:49:40,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:49:42,447.447 INFO    ] ================================================
[2026-06-13 18:49:42,462.462 INFO    ] Launching Daemon at Sat Jun 13 18:49:42 IST 2026
[2026-06-13 18:49:42,473.473 INFO    ] ================================================
[2026-06-13 18:49:42,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:49:42
[2026-06-13 18:49:43,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:43,284.284 INFO    ] Initializing speech engine...
[2026-06-13 18:49:43,292.292 INFO    ] 2026-06-13 18:49:43
[2026-06-13 18:49:43,516.516 INFO    ] 2026-06-13 18:49:43
[2026-06-13 18:49:43,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:43,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:43,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:43,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:43,941.941 INFO    ] time= 13/06/2026 18:49:43
[2026-06-13 18:49:43,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:43,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:44,074.074 INFO    ] No existing commands found in stream
[2026-06-13 18:49:49,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:49:49,087.087 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 18:49:52,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:49:52,243.243 INFO    ] Checking for system updates...
[2026-06-13 18:49:52,264.264 INFO    ] 200
[2026-06-13 18:49:52,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:52,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:49:52,298.298 INFO    ] No update needed
[2026-06-13 18:49:52,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 18:49:52,319.319 INFO    ] 200
[2026-06-13 18:49:52,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:49:52,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:49:52,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:49:52,387.387 INFO    ] No camera update needed
[2026-06-13 18:49:52,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:49:52,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:49:52,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:49:52,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:49:54,433.433 INFO    ] ================================================
[2026-06-13 18:49:54,448.448 INFO    ] Launching Daemon at Sat Jun 13 18:49:54 IST 2026
[2026-06-13 18:49:54,459.459 INFO    ] ================================================
[2026-06-13 18:49:54,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:49:54
[2026-06-13 18:49:55,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:49:55,246.246 INFO    ] Initializing speech engine...
[2026-06-13 18:49:55,254.254 INFO    ] 2026-06-13 18:49:55
[2026-06-13 18:49:55,473.473 INFO    ] 2026-06-13 18:49:55
[2026-06-13 18:49:55,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:49:55,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:49:55,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:49:55,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:49:55,887.887 INFO    ] time= 13/06/2026 18:49:55
[2026-06-13 18:49:55,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:49:55,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:49:56,029.029 INFO    ] No existing commands found in stream
[2026-06-13 18:50:01,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:50:01,043.043 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 18:50:08,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:50:08,816.816 INFO    ] Checking for system updates...
[2026-06-13 18:50:08,852.852 INFO    ] 200
[2026-06-13 18:50:08,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:08,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:08,901.901 INFO    ] No update needed
[2026-06-13 18:50:08,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 18:50:08,923.923 INFO    ] 200
[2026-06-13 18:50:08,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:08,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:50:08,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:08,995.995 INFO    ] No camera update needed
[2026-06-13 18:50:08,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:50:08,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:50:09,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:50:09,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:50:11,042.042 INFO    ] ================================================
[2026-06-13 18:50:11,057.057 INFO    ] Launching Daemon at Sat Jun 13 18:50:11 IST 2026
[2026-06-13 18:50:11,067.067 INFO    ] ================================================
[2026-06-13 18:50:11,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:50:11
[2026-06-13 18:50:12,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:50:12,508.508 INFO    ] Initializing speech engine...
[2026-06-13 18:50:12,516.516 INFO    ] 2026-06-13 18:50:12
[2026-06-13 18:50:12,797.797 INFO    ] 2026-06-13 18:50:12
[2026-06-13 18:50:12,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:50:13,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:50:13,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:50:13,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:50:13,214.214 INFO    ] time= 13/06/2026 18:50:13
[2026-06-13 18:50:13,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:50:13,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:50:13,312.312 INFO    ] No existing commands found in stream
[2026-06-13 18:50:18,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:50:18,325.325 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 18:50:20,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:50:20,892.892 INFO    ] Checking for system updates...
[2026-06-13 18:50:20,915.915 INFO    ] 200
[2026-06-13 18:50:20,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:20,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:50:20,948.948 INFO    ] No update needed
[2026-06-13 18:50:20,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 18:50:20,970.970 INFO    ] 200
[2026-06-13 18:50:20,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:20,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:50:21,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:50:21,040.040 INFO    ] No camera update needed
[2026-06-13 18:50:21,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:50:21,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:50:21,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:50:21,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:50:23,088.088 INFO    ] ================================================
[2026-06-13 18:50:23,103.103 INFO    ] Launching Daemon at Sat Jun 13 18:50:23 IST 2026
[2026-06-13 18:50:23,114.114 INFO    ] ================================================
[2026-06-13 18:50:23,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:50:23
[2026-06-13 18:50:23,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:50:23,938.938 INFO    ] Initializing speech engine...
[2026-06-13 18:50:23,948.948 INFO    ] 2026-06-13 18:50:23
[2026-06-13 18:50:24,167.167 INFO    ] 2026-06-13 18:50:24
[2026-06-13 18:50:24,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:50:24,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:50:24,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:50:24,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:50:24,601.601 INFO    ] time= 13/06/2026 18:50:24
[2026-06-13 18:50:24,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:50:24,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:50:24,711.711 INFO    ] No existing commands found in stream
[2026-06-13 18:50:29,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:50:29,724.724 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 18:50:31,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:50:31,299.299 INFO    ] Checking for system updates...
[2026-06-13 18:50:31,320.320 INFO    ] 200
[2026-06-13 18:50:31,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:31,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:31,357.357 INFO    ] No update needed
[2026-06-13 18:50:31,359.359 INFO    ] Checking for camera pi updates...
[2026-06-13 18:50:31,379.379 INFO    ] 200
[2026-06-13 18:50:31,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:31,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:50:31,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:31,459.459 INFO    ] No camera update needed
[2026-06-13 18:50:31,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:50:31,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:50:31,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:50:31,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:50:33,506.506 INFO    ] ================================================
[2026-06-13 18:50:33,521.521 INFO    ] Launching Daemon at Sat Jun 13 18:50:33 IST 2026
[2026-06-13 18:50:33,532.532 INFO    ] ================================================
[2026-06-13 18:50:34,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:50:34
[2026-06-13 18:50:34,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:50:34,974.974 INFO    ] Initializing speech engine...
[2026-06-13 18:50:34,979.979 INFO    ] 2026-06-13 18:50:34
[2026-06-13 18:50:35,207.207 INFO    ] 2026-06-13 18:50:35
[2026-06-13 18:50:35,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:50:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:50:35,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:50:35,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:50:35,629.629 INFO    ] time= 13/06/2026 18:50:35
[2026-06-13 18:50:35,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:50:35,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:50:35,760.760 INFO    ] No existing commands found in stream
[2026-06-13 18:50:40,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:50:40,773.773 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 18:50:42,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:50:42,232.232 INFO    ] Checking for system updates...
[2026-06-13 18:50:42,252.252 INFO    ] 200
[2026-06-13 18:50:42,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:42,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:42,286.286 INFO    ] No update needed
[2026-06-13 18:50:42,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 18:50:42,308.308 INFO    ] 200
[2026-06-13 18:50:42,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:42,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:50:42,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:42,474.474 INFO    ] No camera update needed
[2026-06-13 18:50:42,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:50:42,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:50:42,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:50:42,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:50:44,521.521 INFO    ] ================================================
[2026-06-13 18:50:44,536.536 INFO    ] Launching Daemon at Sat Jun 13 18:50:44 IST 2026
[2026-06-13 18:50:44,554.554 INFO    ] ================================================
[2026-06-13 18:50:44,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:50:44
[2026-06-13 18:50:45,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:50:45,423.423 INFO    ] Initializing speech engine...
[2026-06-13 18:50:45,429.429 INFO    ] 2026-06-13 18:50:45
[2026-06-13 18:50:45,636.636 INFO    ] 2026-06-13 18:50:45
[2026-06-13 18:50:45,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:50:45,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:50:45,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:50:45,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:50:46,048.048 INFO    ] time= 13/06/2026 18:50:45
[2026-06-13 18:50:46,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:50:46,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:50:46,154.154 INFO    ] No existing commands found in stream
[2026-06-13 18:50:51,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:50:51,166.166 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 18:50:53,414.414 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 18:50:53,442.442 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd17d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 18:50:53,452.452 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73cd17d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 18:50:53,461.461 INFO    ] None
[2026-06-13 18:50:53,464.464 INFO    ] Checking for system updates...
[2026-06-13 18:50:53,496.496 INFO    ] 200
[2026-06-13 18:50:53,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:53,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:53,529.529 INFO    ] No update needed
[2026-06-13 18:50:53,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 18:50:53,550.550 INFO    ] 200
[2026-06-13 18:50:53,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:50:53,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:50:56,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:50:56,142.142 INFO    ] No camera update needed
[2026-06-13 18:50:56,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:50:56,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:50:56,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:50:56,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:50:58,200.200 INFO    ] ================================================
[2026-06-13 18:50:58,216.216 INFO    ] Launching Daemon at Sat Jun 13 18:50:58 IST 2026
[2026-06-13 18:50:58,227.227 INFO    ] ================================================
[2026-06-13 18:50:58,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:50:58
[2026-06-13 18:50:58,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:50:59,024.024 INFO    ] Initializing speech engine...
[2026-06-13 18:50:59,035.035 INFO    ] 2026-06-13 18:50:59
[2026-06-13 18:50:59,250.250 INFO    ] 2026-06-13 18:50:59
[2026-06-13 18:50:59,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:50:59,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:50:59,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:50:59,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:50:59,681.681 INFO    ] time= 13/06/2026 18:50:59
[2026-06-13 18:50:59,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:50:59,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:50:59,806.806 INFO    ] No existing commands found in stream
[2026-06-13 18:51:04,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:51:04,821.821 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 18:51:09,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:51:09,284.284 INFO    ] Checking for system updates...
[2026-06-13 18:51:09,320.320 INFO    ] 200
[2026-06-13 18:51:09,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:09,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:09,370.370 INFO    ] No update needed
[2026-06-13 18:51:09,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 18:51:09,391.391 INFO    ] 200
[2026-06-13 18:51:09,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:09,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:51:09,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:09,464.464 INFO    ] No camera update needed
[2026-06-13 18:51:09,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:51:09,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:51:09,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:51:09,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:51:11,512.512 INFO    ] ================================================
[2026-06-13 18:51:11,527.527 INFO    ] Launching Daemon at Sat Jun 13 18:51:11 IST 2026
[2026-06-13 18:51:11,538.538 INFO    ] ================================================
[2026-06-13 18:51:11,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:51:11
[2026-06-13 18:51:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:51:12,383.383 INFO    ] Initializing speech engine...
[2026-06-13 18:51:12,389.389 INFO    ] 2026-06-13 18:51:12
[2026-06-13 18:51:12,595.595 INFO    ] 2026-06-13 18:51:12
[2026-06-13 18:51:12,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:51:12,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:51:12,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:51:12,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:51:13,013.013 INFO    ] time= 13/06/2026 18:51:12
[2026-06-13 18:51:13,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:51:13,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:51:13,114.114 INFO    ] No existing commands found in stream
[2026-06-13 18:51:18,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:51:18,132.132 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 18:51:18,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:51:18,951.951 INFO    ] Checking for system updates...
[2026-06-13 18:51:18,974.974 INFO    ] 200
[2026-06-13 18:51:18,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:19,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:19,010.010 INFO    ] No update needed
[2026-06-13 18:51:19,012.012 INFO    ] Checking for camera pi updates...
[2026-06-13 18:51:19,033.033 INFO    ] 200
[2026-06-13 18:51:19,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:19,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:51:19,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:19,110.110 INFO    ] No camera update needed
[2026-06-13 18:51:19,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:51:19,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:51:19,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:51:19,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:51:21,161.161 INFO    ] ================================================
[2026-06-13 18:51:21,176.176 INFO    ] Launching Daemon at Sat Jun 13 18:51:21 IST 2026
[2026-06-13 18:51:21,187.187 INFO    ] ================================================
[2026-06-13 18:51:21,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:51:21
[2026-06-13 18:51:21,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:51:22,026.026 INFO    ] Initializing speech engine...
[2026-06-13 18:51:22,030.030 INFO    ] 2026-06-13 18:51:22
[2026-06-13 18:51:22,238.238 INFO    ] 2026-06-13 18:51:22
[2026-06-13 18:51:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:51:22,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:51:22,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:51:22,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:51:22,652.652 INFO    ] time= 13/06/2026 18:51:22
[2026-06-13 18:51:22,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:51:22,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:51:22,765.765 INFO    ] No existing commands found in stream
[2026-06-13 18:51:27,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:51:27,780.780 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 18:51:30,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:51:30,982.982 INFO    ] Checking for system updates...
[2026-06-13 18:51:31,004.004 INFO    ] 200
[2026-06-13 18:51:31,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:31,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:31,040.040 INFO    ] No update needed
[2026-06-13 18:51:31,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 18:51:31,064.064 INFO    ] 200
[2026-06-13 18:51:31,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:31,099.099 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:51:31,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:51:31,147.147 INFO    ] No camera update needed
[2026-06-13 18:51:31,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:51:31,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:51:31,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:51:31,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:51:33,183.183 INFO    ] ================================================
[2026-06-13 18:51:33,192.192 INFO    ] Launching Daemon at Sat Jun 13 18:51:33 IST 2026
[2026-06-13 18:51:33,199.199 INFO    ] ================================================
[2026-06-13 18:51:33,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:51:33
[2026-06-13 18:51:34,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:51:34,565.565 INFO    ] Initializing speech engine...
[2026-06-13 18:51:34,574.574 INFO    ] 2026-06-13 18:51:34
[2026-06-13 18:51:34,899.899 INFO    ] 2026-06-13 18:51:34
[2026-06-13 18:51:34,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:51:35,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:51:35,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:51:35,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:51:35,377.377 INFO    ] time= 13/06/2026 18:51:35
[2026-06-13 18:51:35,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:51:35,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:51:35,526.526 INFO    ] No existing commands found in stream
[2026-06-13 18:51:40,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:51:40,556.556 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 18:51:42,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:51:42,214.214 INFO    ] Checking for system updates...
[2026-06-13 18:51:42,235.235 INFO    ] 200
[2026-06-13 18:51:42,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:42,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:42,270.270 INFO    ] No update needed
[2026-06-13 18:51:42,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 18:51:42,293.293 INFO    ] 200
[2026-06-13 18:51:42,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:42,321.321 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:51:42,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:42,366.366 INFO    ] No camera update needed
[2026-06-13 18:51:42,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:51:42,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:51:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:51:42,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:51:44,427.427 INFO    ] ================================================
[2026-06-13 18:51:44,442.442 INFO    ] Launching Daemon at Sat Jun 13 18:51:44 IST 2026
[2026-06-13 18:51:44,453.453 INFO    ] ================================================
[2026-06-13 18:51:44,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:51:44
[2026-06-13 18:51:45,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:51:45,865.865 INFO    ] Initializing speech engine...
[2026-06-13 18:51:45,871.871 INFO    ] 2026-06-13 18:51:45
[2026-06-13 18:51:46,186.186 INFO    ] 2026-06-13 18:51:46
[2026-06-13 18:51:46,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:51:46,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:51:46,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:51:46,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:51:46,695.695 INFO    ] time= 13/06/2026 18:51:46
[2026-06-13 18:51:46,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:51:46,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:51:46,851.851 INFO    ] No existing commands found in stream
[2026-06-13 18:51:51,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:51:51,875.875 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 18:51:52,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:51:52,744.744 INFO    ] Checking for system updates...
[2026-06-13 18:51:52,765.765 INFO    ] 200
[2026-06-13 18:51:52,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:52,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:51:52,801.801 INFO    ] No update needed
[2026-06-13 18:51:52,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 18:51:52,827.827 INFO    ] 200
[2026-06-13 18:51:52,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:51:52,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:51:52,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:51:52,892.892 INFO    ] No camera update needed
[2026-06-13 18:51:52,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:51:52,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:51:52,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:51:52,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:51:54,944.944 INFO    ] ================================================
[2026-06-13 18:51:54,961.961 INFO    ] Launching Daemon at Sat Jun 13 18:51:54 IST 2026
[2026-06-13 18:51:54,972.972 INFO    ] ================================================
[2026-06-13 18:51:55,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:51:55
[2026-06-13 18:51:55,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:51:55,787.787 INFO    ] Initializing speech engine...
[2026-06-13 18:51:55,792.792 INFO    ] 2026-06-13 18:51:55
[2026-06-13 18:51:55,998.998 INFO    ] 2026-06-13 18:51:55
[2026-06-13 18:51:56,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:51:56,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:51:56,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:51:56,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:51:56,500.500 INFO    ] time= 13/06/2026 18:51:56
[2026-06-13 18:51:56,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:51:56,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:51:56,720.720 INFO    ] No existing commands found in stream
[2026-06-13 18:52:01,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:01,753.753 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 18:52:05,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:52:05,785.785 INFO    ] Checking for system updates...
[2026-06-13 18:52:05,806.806 INFO    ] 200
[2026-06-13 18:52:05,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:05,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:05,839.839 INFO    ] No update needed
[2026-06-13 18:52:05,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 18:52:05,860.860 INFO    ] 200
[2026-06-13 18:52:05,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:05,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:52:05,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:05,927.927 INFO    ] No camera update needed
[2026-06-13 18:52:05,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:52:05,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:52:05,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:52:05,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:52:07,976.976 INFO    ] ================================================
[2026-06-13 18:52:07,991.991 INFO    ] Launching Daemon at Sat Jun 13 18:52:07 IST 2026
[2026-06-13 18:52:08,003.003 INFO    ] ================================================
[2026-06-13 18:52:08,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:52:08
[2026-06-13 18:52:08,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:52:08,866.866 INFO    ] Initializing speech engine...
[2026-06-13 18:52:08,872.872 INFO    ] 2026-06-13 18:52:08
[2026-06-13 18:52:09,080.080 INFO    ] 2026-06-13 18:52:09
[2026-06-13 18:52:09,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:52:09,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:52:09,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:52:09,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:52:09,511.511 INFO    ] time= 13/06/2026 18:52:09
[2026-06-13 18:52:09,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:52:09,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:52:09,609.609 INFO    ] No existing commands found in stream
[2026-06-13 18:52:14,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:14,622.622 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 18:52:18,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:52:18,123.123 INFO    ] Checking for system updates...
[2026-06-13 18:52:18,145.145 INFO    ] 200
[2026-06-13 18:52:18,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:18,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:18,181.181 INFO    ] No update needed
[2026-06-13 18:52:18,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 18:52:18,202.202 INFO    ] 200
[2026-06-13 18:52:18,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:18,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:52:18,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:18,269.269 INFO    ] No camera update needed
[2026-06-13 18:52:18,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:52:18,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:52:18,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:52:18,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:52:20,308.308 INFO    ] ================================================
[2026-06-13 18:52:20,317.317 INFO    ] Launching Daemon at Sat Jun 13 18:52:20 IST 2026
[2026-06-13 18:52:20,324.324 INFO    ] ================================================
[2026-06-13 18:52:20,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:52:20
[2026-06-13 18:52:20,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:52:21,122.122 INFO    ] Initializing speech engine...
[2026-06-13 18:52:21,127.127 INFO    ] 2026-06-13 18:52:21
[2026-06-13 18:52:21,336.336 INFO    ] 2026-06-13 18:52:21
[2026-06-13 18:52:21,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:52:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:52:21,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:52:21,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:52:21,758.758 INFO    ] time= 13/06/2026 18:52:21
[2026-06-13 18:52:21,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:52:21,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:52:21,923.923 INFO    ] No existing commands found in stream
[2026-06-13 18:52:26,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:26,936.936 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 18:52:29,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:52:29,487.487 INFO    ] Checking for system updates...
[2026-06-13 18:52:29,509.509 INFO    ] 200
[2026-06-13 18:52:29,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:29,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:29,544.544 INFO    ] No update needed
[2026-06-13 18:52:29,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 18:52:29,566.566 INFO    ] 200
[2026-06-13 18:52:29,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:29,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:52:29,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:29,640.640 INFO    ] No camera update needed
[2026-06-13 18:52:29,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:52:29,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:52:29,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:52:29,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:52:31,673.673 INFO    ] ================================================
[2026-06-13 18:52:31,683.683 INFO    ] Launching Daemon at Sat Jun 13 18:52:31 IST 2026
[2026-06-13 18:52:31,690.690 INFO    ] ================================================
[2026-06-13 18:52:32,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:52:32
[2026-06-13 18:52:32,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:52:32,479.479 INFO    ] Initializing speech engine...
[2026-06-13 18:52:32,492.492 INFO    ] 2026-06-13 18:52:32
[2026-06-13 18:52:32,712.712 INFO    ] 2026-06-13 18:52:32
[2026-06-13 18:52:32,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:52:32,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:52:32,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:52:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:52:33,124.124 INFO    ] time= 13/06/2026 18:52:33
[2026-06-13 18:52:33,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:52:33,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:52:33,273.273 INFO    ] No existing commands found in stream
[2026-06-13 18:52:38,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:38,287.287 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 18:52:39,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:52:39,770.770 INFO    ] Checking for system updates...
[2026-06-13 18:52:39,791.791 INFO    ] 200
[2026-06-13 18:52:39,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:39,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:52:39,824.824 INFO    ] No update needed
[2026-06-13 18:52:39,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 18:52:39,847.847 INFO    ] 200
[2026-06-13 18:52:39,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:39,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:52:40,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:52:40,007.007 INFO    ] No camera update needed
[2026-06-13 18:52:40,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:52:40,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:52:40,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:52:40,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:52:42,061.061 INFO    ] ================================================
[2026-06-13 18:52:42,077.077 INFO    ] Launching Daemon at Sat Jun 13 18:52:42 IST 2026
[2026-06-13 18:52:42,089.089 INFO    ] ================================================
[2026-06-13 18:52:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:52:42
[2026-06-13 18:52:42,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:52:42,871.871 INFO    ] Initializing speech engine...
[2026-06-13 18:52:42,884.884 INFO    ] 2026-06-13 18:52:42
[2026-06-13 18:52:43,103.103 INFO    ] 2026-06-13 18:52:43
[2026-06-13 18:52:43,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:52:43,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:52:43,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:52:43,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:52:43,484.484 INFO    ] time= 13/06/2026 18:52:43
[2026-06-13 18:52:43,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:52:43,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:52:43,667.667 INFO    ] No existing commands found in stream
[2026-06-13 18:52:48,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:48,680.680 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 18:52:49,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:52:49,975.975 INFO    ] Checking for system updates...
[2026-06-13 18:52:49,997.997 INFO    ] 200
[2026-06-13 18:52:49,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:50,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:52:50,031.031 INFO    ] No update needed
[2026-06-13 18:52:50,033.033 INFO    ] Checking for camera pi updates...
[2026-06-13 18:52:50,057.057 INFO    ] 200
[2026-06-13 18:52:50,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:52:50,087.087 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:52:50,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:52:50,134.134 INFO    ] No camera update needed
[2026-06-13 18:52:50,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:52:50,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:52:50,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:52:50,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:52:52,185.185 INFO    ] ================================================
[2026-06-13 18:52:52,201.201 INFO    ] Launching Daemon at Sat Jun 13 18:52:52 IST 2026
[2026-06-13 18:52:52,213.213 INFO    ] ================================================
[2026-06-13 18:52:52,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:52:52
[2026-06-13 18:52:52,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:52:53,052.052 INFO    ] Initializing speech engine...
[2026-06-13 18:52:53,057.057 INFO    ] 2026-06-13 18:52:53
[2026-06-13 18:52:53,262.262 INFO    ] 2026-06-13 18:52:53
[2026-06-13 18:52:53,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:52:53,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:52:53,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:52:53,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:52:53,668.668 INFO    ] time= 13/06/2026 18:52:53
[2026-06-13 18:52:53,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:52:53,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:52:53,778.778 INFO    ] No existing commands found in stream
[2026-06-13 18:52:58,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:52:58,792.792 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 18:53:01,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:53:01,858.858 INFO    ] Checking for system updates...
[2026-06-13 18:53:01,888.888 INFO    ] 200
[2026-06-13 18:53:01,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:01,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:01,978.978 INFO    ] No update needed
[2026-06-13 18:53:01,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:02,014.014 INFO    ] 200
[2026-06-13 18:53:02,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:02,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:02,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:02,171.171 INFO    ] No camera update needed
[2026-06-13 18:53:02,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:02,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:02,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:02,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:04,226.226 INFO    ] ================================================
[2026-06-13 18:53:04,242.242 INFO    ] Launching Daemon at Sat Jun 13 18:53:04 IST 2026
[2026-06-13 18:53:04,254.254 INFO    ] ================================================
[2026-06-13 18:53:04,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:04
[2026-06-13 18:53:04,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:05,027.027 INFO    ] Initializing speech engine...
[2026-06-13 18:53:05,032.032 INFO    ] 2026-06-13 18:53:05
[2026-06-13 18:53:05,259.259 INFO    ] 2026-06-13 18:53:05
[2026-06-13 18:53:05,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:05,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:05,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:05,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:05,669.669 INFO    ] time= 13/06/2026 18:53:05
[2026-06-13 18:53:05,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:05,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:05,779.779 INFO    ] No existing commands found in stream
[2026-06-13 18:53:10,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:53:10,792.792 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 18:53:12,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:53:12,312.312 INFO    ] Checking for system updates...
[2026-06-13 18:53:12,332.332 INFO    ] 200
[2026-06-13 18:53:12,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:12,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:12,365.365 INFO    ] No update needed
[2026-06-13 18:53:12,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:12,386.386 INFO    ] 200
[2026-06-13 18:53:12,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:12,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:12,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:12,461.461 INFO    ] No camera update needed
[2026-06-13 18:53:12,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:12,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:12,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:12,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:14,509.509 INFO    ] ================================================
[2026-06-13 18:53:14,525.525 INFO    ] Launching Daemon at Sat Jun 13 18:53:14 IST 2026
[2026-06-13 18:53:14,537.537 INFO    ] ================================================
[2026-06-13 18:53:14,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:14
[2026-06-13 18:53:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:15,337.337 INFO    ] Initializing speech engine...
[2026-06-13 18:53:15,342.342 INFO    ] 2026-06-13 18:53:15
[2026-06-13 18:53:15,540.540 INFO    ] 2026-06-13 18:53:15
[2026-06-13 18:53:15,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:15,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:15,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:15,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:15,838.838 INFO    ] time= 13/06/2026 18:53:15
[2026-06-13 18:53:15,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:15,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:16,034.034 INFO    ] No existing commands found in stream
[2026-06-13 18:53:21,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:53:21,051.051 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 18:53:22,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:53:22,553.553 INFO    ] Checking for system updates...
[2026-06-13 18:53:22,574.574 INFO    ] 200
[2026-06-13 18:53:22,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:22,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:22,611.611 INFO    ] No update needed
[2026-06-13 18:53:22,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:22,636.636 INFO    ] 200
[2026-06-13 18:53:22,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:22,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:22,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:22,707.707 INFO    ] No camera update needed
[2026-06-13 18:53:22,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:22,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:22,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:22,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:24,755.755 INFO    ] ================================================
[2026-06-13 18:53:24,770.770 INFO    ] Launching Daemon at Sat Jun 13 18:53:24 IST 2026
[2026-06-13 18:53:24,781.781 INFO    ] ================================================
[2026-06-13 18:53:25,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:25
[2026-06-13 18:53:25,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:25,634.634 INFO    ] Initializing speech engine...
[2026-06-13 18:53:25,639.639 INFO    ] 2026-06-13 18:53:25
[2026-06-13 18:53:25,848.848 INFO    ] 2026-06-13 18:53:25
[2026-06-13 18:53:25,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:26,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:26,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:26,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:26,262.262 INFO    ] time= 13/06/2026 18:53:26
[2026-06-13 18:53:26,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:26,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:26,376.376 INFO    ] No existing commands found in stream
[2026-06-13 18:53:31,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:53:31,407.407 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 18:53:32,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:53:32,962.962 INFO    ] Checking for system updates...
[2026-06-13 18:53:32,999.999 INFO    ] 200
[2026-06-13 18:53:33,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:33,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:33,059.059 INFO    ] No update needed
[2026-06-13 18:53:33,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:33,099.099 INFO    ] 200
[2026-06-13 18:53:33,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:33,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:33,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:33,171.171 INFO    ] No camera update needed
[2026-06-13 18:53:33,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:33,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:33,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:33,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:35,227.227 INFO    ] ================================================
[2026-06-13 18:53:35,243.243 INFO    ] Launching Daemon at Sat Jun 13 18:53:35 IST 2026
[2026-06-13 18:53:35,254.254 INFO    ] ================================================
[2026-06-13 18:53:35,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:35
[2026-06-13 18:53:35,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:36,043.043 INFO    ] Initializing speech engine...
[2026-06-13 18:53:36,046.046 INFO    ] 2026-06-13 18:53:36
[2026-06-13 18:53:36,277.277 INFO    ] 2026-06-13 18:53:36
[2026-06-13 18:53:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:36,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:36,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:36,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:36,708.708 INFO    ] time= 13/06/2026 18:53:36
[2026-06-13 18:53:36,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:36,835.835 INFO    ] No existing commands found in stream
[2026-06-13 18:53:41,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:53:41,848.848 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 18:53:45,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:53:45,433.433 INFO    ] Checking for system updates...
[2026-06-13 18:53:45,453.453 INFO    ] 200
[2026-06-13 18:53:45,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:45,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:45,486.486 INFO    ] No update needed
[2026-06-13 18:53:45,488.488 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:45,510.510 INFO    ] 200
[2026-06-13 18:53:45,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:45,537.537 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:45,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:53:45,587.587 INFO    ] No camera update needed
[2026-06-13 18:53:45,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:45,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:45,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:45,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:47,635.635 INFO    ] ================================================
[2026-06-13 18:53:47,651.651 INFO    ] Launching Daemon at Sat Jun 13 18:53:47 IST 2026
[2026-06-13 18:53:47,663.663 INFO    ] ================================================
[2026-06-13 18:53:48,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:48
[2026-06-13 18:53:48,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:48,469.469 INFO    ] Initializing speech engine...
[2026-06-13 18:53:48,472.472 INFO    ] 2026-06-13 18:53:48
[2026-06-13 18:53:48,702.702 INFO    ] 2026-06-13 18:53:48
[2026-06-13 18:53:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:48,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:49,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:49,111.111 INFO    ] time= 13/06/2026 18:53:49
[2026-06-13 18:53:49,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:49,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:49,220.220 INFO    ] No existing commands found in stream
[2026-06-13 18:53:54,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:53:54,236.236 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 18:53:55,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:53:55,023.023 INFO    ] Checking for system updates...
[2026-06-13 18:53:55,048.048 INFO    ] 200
[2026-06-13 18:53:55,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:55,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:55,083.083 INFO    ] No update needed
[2026-06-13 18:53:55,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 18:53:55,105.105 INFO    ] 200
[2026-06-13 18:53:55,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:53:55,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:53:55,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:53:55,179.179 INFO    ] No camera update needed
[2026-06-13 18:53:55,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:53:55,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:53:55,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:53:55,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:53:57,227.227 INFO    ] ================================================
[2026-06-13 18:53:57,243.243 INFO    ] Launching Daemon at Sat Jun 13 18:53:57 IST 2026
[2026-06-13 18:53:57,254.254 INFO    ] ================================================
[2026-06-13 18:53:57,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:53:57
[2026-06-13 18:53:57,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:53:58,081.081 INFO    ] Initializing speech engine...
[2026-06-13 18:53:58,089.089 INFO    ] 2026-06-13 18:53:58
[2026-06-13 18:53:58,296.296 INFO    ] 2026-06-13 18:53:58
[2026-06-13 18:53:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:53:58,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:53:58,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:53:58,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:53:58,742.742 INFO    ] time= 13/06/2026 18:53:58
[2026-06-13 18:53:58,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:53:58,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:53:58,837.837 INFO    ] No existing commands found in stream
[2026-06-13 18:54:03,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:54:03,862.862 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 18:54:07,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:54:07,790.790 INFO    ] Checking for system updates...
[2026-06-13 18:54:07,811.811 INFO    ] 200
[2026-06-13 18:54:07,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:07,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:07,844.844 INFO    ] No update needed
[2026-06-13 18:54:07,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 18:54:07,868.868 INFO    ] 200
[2026-06-13 18:54:07,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:07,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:54:07,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:07,923.923 INFO    ] No camera update needed
[2026-06-13 18:54:07,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:54:07,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:54:07,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:54:07,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:54:09,973.973 INFO    ] ================================================
[2026-06-13 18:54:09,988.988 INFO    ] Launching Daemon at Sat Jun 13 18:54:09 IST 2026
[2026-06-13 18:54:10,000.000 INFO    ] ================================================
[2026-06-13 18:54:10,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:54:10
[2026-06-13 18:54:10,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:54:10,808.808 INFO    ] Initializing speech engine...
[2026-06-13 18:54:10,814.814 INFO    ] 2026-06-13 18:54:10
[2026-06-13 18:54:11,020.020 INFO    ] 2026-06-13 18:54:10
[2026-06-13 18:54:11,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:54:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:54:11,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:54:11,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:54:11,467.467 INFO    ] time= 13/06/2026 18:54:11
[2026-06-13 18:54:11,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:54:11,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:54:11,565.565 INFO    ] No existing commands found in stream
[2026-06-13 18:54:16,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:54:16,582.582 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 18:54:20,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:54:20,895.895 INFO    ] Checking for system updates...
[2026-06-13 18:54:20,916.916 INFO    ] 200
[2026-06-13 18:54:20,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:20,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:20,952.952 INFO    ] No update needed
[2026-06-13 18:54:20,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 18:54:20,974.974 INFO    ] 200
[2026-06-13 18:54:20,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:21,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:54:21,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:21,037.037 INFO    ] No camera update needed
[2026-06-13 18:54:21,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:54:21,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:54:21,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:54:21,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:54:23,086.086 INFO    ] ================================================
[2026-06-13 18:54:23,106.106 INFO    ] Launching Daemon at Sat Jun 13 18:54:23 IST 2026
[2026-06-13 18:54:23,118.118 INFO    ] ================================================
[2026-06-13 18:54:23,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:54:23
[2026-06-13 18:54:23,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:54:23,929.929 INFO    ] Initializing speech engine...
[2026-06-13 18:54:23,932.932 INFO    ] 2026-06-13 18:54:23
[2026-06-13 18:54:24,137.137 INFO    ] 2026-06-13 18:54:24
[2026-06-13 18:54:24,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:54:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:54:24,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:54:24,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:54:24,648.648 INFO    ] time= 13/06/2026 18:54:24
[2026-06-13 18:54:24,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:54:24,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:54:24,755.755 INFO    ] No existing commands found in stream
[2026-06-13 18:54:29,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:54:29,772.772 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 18:54:32,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:54:32,715.715 INFO    ] Checking for system updates...
[2026-06-13 18:54:32,737.737 INFO    ] 200
[2026-06-13 18:54:32,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:32,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:32,774.774 INFO    ] No update needed
[2026-06-13 18:54:32,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 18:54:32,796.796 INFO    ] 200
[2026-06-13 18:54:32,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:32,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:54:32,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:32,854.854 INFO    ] No camera update needed
[2026-06-13 18:54:32,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:54:32,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:54:32,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:54:32,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:54:34,913.913 INFO    ] ================================================
[2026-06-13 18:54:34,929.929 INFO    ] Launching Daemon at Sat Jun 13 18:54:34 IST 2026
[2026-06-13 18:54:34,940.940 INFO    ] ================================================
[2026-06-13 18:54:35,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:54:35
[2026-06-13 18:54:35,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:54:35,785.785 INFO    ] Initializing speech engine...
[2026-06-13 18:54:35,796.796 INFO    ] 2026-06-13 18:54:35
[2026-06-13 18:54:36,005.005 INFO    ] 2026-06-13 18:54:35
[2026-06-13 18:54:36,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:54:36,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:54:36,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:54:36,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:54:36,449.449 INFO    ] time= 13/06/2026 18:54:36
[2026-06-13 18:54:36,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:54:36,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:54:36,544.544 INFO    ] No existing commands found in stream
[2026-06-13 18:54:41,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:54:41,562.562 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 18:54:45,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:54:45,972.972 INFO    ] Checking for system updates...
[2026-06-13 18:54:45,994.994 INFO    ] 200
[2026-06-13 18:54:45,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:46,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:46,027.027 INFO    ] No update needed
[2026-06-13 18:54:46,029.029 INFO    ] Checking for camera pi updates...
[2026-06-13 18:54:46,049.049 INFO    ] 200
[2026-06-13 18:54:46,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:46,074.074 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:54:46,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:46,119.119 INFO    ] No camera update needed
[2026-06-13 18:54:46,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:54:46,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:54:46,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:54:46,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:54:48,170.170 INFO    ] ================================================
[2026-06-13 18:54:48,186.186 INFO    ] Launching Daemon at Sat Jun 13 18:54:48 IST 2026
[2026-06-13 18:54:48,197.197 INFO    ] ================================================
[2026-06-13 18:54:48,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:54:48
[2026-06-13 18:54:48,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:54:48,978.978 INFO    ] Initializing speech engine...
[2026-06-13 18:54:48,988.988 INFO    ] 2026-06-13 18:54:48
[2026-06-13 18:54:49,192.192 INFO    ] 2026-06-13 18:54:49
[2026-06-13 18:54:49,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:54:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:54:49,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:54:49,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:54:49,628.628 INFO    ] time= 13/06/2026 18:54:49
[2026-06-13 18:54:49,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:54:49,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:54:49,725.725 INFO    ] No existing commands found in stream
[2026-06-13 18:54:54,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:54:54,742.742 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-13 18:54:55,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:54:55,523.523 INFO    ] Checking for system updates...
[2026-06-13 18:54:55,544.544 INFO    ] 200
[2026-06-13 18:54:55,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:55,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:55,581.581 INFO    ] No update needed
[2026-06-13 18:54:55,583.583 INFO    ] Checking for camera pi updates...
[2026-06-13 18:54:55,604.604 INFO    ] 200
[2026-06-13 18:54:55,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:54:55,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:54:55,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:54:55,685.685 INFO    ] No camera update needed
[2026-06-13 18:54:55,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:54:55,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:54:55,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:54:55,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:54:57,735.735 INFO    ] ================================================
[2026-06-13 18:54:57,751.751 INFO    ] Launching Daemon at Sat Jun 13 18:54:57 IST 2026
[2026-06-13 18:54:57,762.762 INFO    ] ================================================
[2026-06-13 18:54:58,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:54:58
[2026-06-13 18:54:58,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:54:58,567.567 INFO    ] Initializing speech engine...
[2026-06-13 18:54:58,573.573 INFO    ] 2026-06-13 18:54:58
[2026-06-13 18:54:58,775.775 INFO    ] 2026-06-13 18:54:58
[2026-06-13 18:54:58,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:54:58,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:54:59,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:54:59,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:54:59,210.210 INFO    ] time= 13/06/2026 18:54:59
[2026-06-13 18:54:59,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:54:59,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:54:59,308.308 INFO    ] No existing commands found in stream
[2026-06-13 18:55:04,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:55:04,320.320 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 18:55:08,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:55:08,618.618 INFO    ] Checking for system updates...
[2026-06-13 18:55:08,639.639 INFO    ] 200
[2026-06-13 18:55:08,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:08,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:08,672.672 INFO    ] No update needed
[2026-06-13 18:55:08,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 18:55:08,693.693 INFO    ] 200
[2026-06-13 18:55:08,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:08,718.718 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:55:08,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:08,857.857 INFO    ] No camera update needed
[2026-06-13 18:55:08,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:55:08,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:55:08,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:55:08,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:55:10,907.907 INFO    ] ================================================
[2026-06-13 18:55:10,922.922 INFO    ] Launching Daemon at Sat Jun 13 18:55:10 IST 2026
[2026-06-13 18:55:10,933.933 INFO    ] ================================================
[2026-06-13 18:55:11,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:55:11
[2026-06-13 18:55:11,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:55:11,786.786 INFO    ] Initializing speech engine...
[2026-06-13 18:55:11,792.792 INFO    ] 2026-06-13 18:55:11
[2026-06-13 18:55:12,000.000 INFO    ] 2026-06-13 18:55:11
[2026-06-13 18:55:12,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:55:12,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:55:12,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:55:12,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:55:12,439.439 INFO    ] time= 13/06/2026 18:55:12
[2026-06-13 18:55:12,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:55:12,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:55:12,556.556 INFO    ] No existing commands found in stream
[2026-06-13 18:55:17,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:55:17,576.576 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 18:55:21,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:55:21,873.873 INFO    ] Checking for system updates...
[2026-06-13 18:55:21,894.894 INFO    ] 200
[2026-06-13 18:55:21,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:21,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:21,931.931 INFO    ] No update needed
[2026-06-13 18:55:21,933.933 INFO    ] Checking for camera pi updates...
[2026-06-13 18:55:21,953.953 INFO    ] 200
[2026-06-13 18:55:21,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:21,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:55:22,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:22,035.035 INFO    ] No camera update needed
[2026-06-13 18:55:22,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:55:22,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:55:22,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:55:22,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:55:24,085.085 INFO    ] ================================================
[2026-06-13 18:55:24,100.100 INFO    ] Launching Daemon at Sat Jun 13 18:55:24 IST 2026
[2026-06-13 18:55:24,111.111 INFO    ] ================================================
[2026-06-13 18:55:24,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:55:24
[2026-06-13 18:55:24,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:55:24,915.915 INFO    ] Initializing speech engine...
[2026-06-13 18:55:24,920.920 INFO    ] 2026-06-13 18:55:24
[2026-06-13 18:55:25,139.139 INFO    ] 2026-06-13 18:55:25
[2026-06-13 18:55:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:55:25,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:55:25,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:55:25,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:55:25,621.621 INFO    ] time= 13/06/2026 18:55:25
[2026-06-13 18:55:25,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:55:25,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:55:25,699.699 INFO    ] No existing commands found in stream
[2026-06-13 18:55:30,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:55:30,711.711 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 18:55:35,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:55:35,015.015 INFO    ] Checking for system updates...
[2026-06-13 18:55:35,036.036 INFO    ] 200
[2026-06-13 18:55:35,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:35,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:35,072.072 INFO    ] No update needed
[2026-06-13 18:55:35,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 18:55:35,093.093 INFO    ] 200
[2026-06-13 18:55:35,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:35,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:55:35,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:35,164.164 INFO    ] No camera update needed
[2026-06-13 18:55:35,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:55:35,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:55:35,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:55:35,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:55:37,211.211 INFO    ] ================================================
[2026-06-13 18:55:37,227.227 INFO    ] Launching Daemon at Sat Jun 13 18:55:37 IST 2026
[2026-06-13 18:55:37,237.237 INFO    ] ================================================
[2026-06-13 18:55:37,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:55:37
[2026-06-13 18:55:37,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:55:38,021.021 INFO    ] Initializing speech engine...
[2026-06-13 18:55:38,025.025 INFO    ] 2026-06-13 18:55:38
[2026-06-13 18:55:38,218.218 INFO    ] 2026-06-13 18:55:38
[2026-06-13 18:55:38,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:55:38,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:55:38,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:55:38,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:55:38,709.709 INFO    ] time= 13/06/2026 18:55:38
[2026-06-13 18:55:38,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:55:38,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:55:38,843.843 INFO    ] No existing commands found in stream
[2026-06-13 18:55:43,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:55:43,860.860 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 18:55:45,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:55:45,641.641 INFO    ] Checking for system updates...
[2026-06-13 18:55:45,662.662 INFO    ] 200
[2026-06-13 18:55:45,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:45,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:45,695.695 INFO    ] No update needed
[2026-06-13 18:55:45,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 18:55:45,716.716 INFO    ] 200
[2026-06-13 18:55:45,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:45,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:55:45,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:45,783.783 INFO    ] No camera update needed
[2026-06-13 18:55:45,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:55:45,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:55:45,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:55:45,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:55:47,830.830 INFO    ] ================================================
[2026-06-13 18:55:47,846.846 INFO    ] Launching Daemon at Sat Jun 13 18:55:47 IST 2026
[2026-06-13 18:55:47,857.857 INFO    ] ================================================
[2026-06-13 18:55:48,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:55:48
[2026-06-13 18:55:48,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:55:48,733.733 INFO    ] Initializing speech engine...
[2026-06-13 18:55:48,739.739 INFO    ] 2026-06-13 18:55:48
[2026-06-13 18:55:48,948.948 INFO    ] 2026-06-13 18:55:48
[2026-06-13 18:55:48,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:55:49,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:55:49,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:55:49,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:55:49,393.393 INFO    ] time= 13/06/2026 18:55:49
[2026-06-13 18:55:49,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:55:49,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:55:49,488.488 INFO    ] No existing commands found in stream
[2026-06-13 18:55:54,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:55:54,501.501 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 18:55:56,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:55:56,384.384 INFO    ] Checking for system updates...
[2026-06-13 18:55:56,405.405 INFO    ] 200
[2026-06-13 18:55:56,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:56,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:55:56,439.439 INFO    ] No update needed
[2026-06-13 18:55:56,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 18:55:56,460.460 INFO    ] 200
[2026-06-13 18:55:56,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:55:56,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:55:56,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:55:56,524.524 INFO    ] No camera update needed
[2026-06-13 18:55:56,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:55:56,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:55:56,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:55:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:55:58,570.570 INFO    ] ================================================
[2026-06-13 18:55:58,586.586 INFO    ] Launching Daemon at Sat Jun 13 18:55:58 IST 2026
[2026-06-13 18:55:58,598.598 INFO    ] ================================================
[2026-06-13 18:55:58,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:55:58
[2026-06-13 18:55:59,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:55:59,404.404 INFO    ] Initializing speech engine...
[2026-06-13 18:55:59,414.414 INFO    ] 2026-06-13 18:55:59
[2026-06-13 18:55:59,621.621 INFO    ] 2026-06-13 18:55:59
[2026-06-13 18:55:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:55:59,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:55:59,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:00,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:00,061.061 INFO    ] time= 13/06/2026 18:56:00
[2026-06-13 18:56:00,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:00,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:00,160.160 INFO    ] No existing commands found in stream
[2026-06-13 18:56:05,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:56:05,173.173 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 18:56:08,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:56:08,664.664 INFO    ] Checking for system updates...
[2026-06-13 18:56:08,687.687 INFO    ] 200
[2026-06-13 18:56:08,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:08,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:08,721.721 INFO    ] No update needed
[2026-06-13 18:56:08,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 18:56:08,745.745 INFO    ] 200
[2026-06-13 18:56:08,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:08,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:56:08,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:08,811.811 INFO    ] No camera update needed
[2026-06-13 18:56:08,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:56:08,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:56:08,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:56:08,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:56:10,859.859 INFO    ] ================================================
[2026-06-13 18:56:10,876.876 INFO    ] Launching Daemon at Sat Jun 13 18:56:10 IST 2026
[2026-06-13 18:56:10,886.886 INFO    ] ================================================
[2026-06-13 18:56:11,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:56:11
[2026-06-13 18:56:11,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:56:11,688.688 INFO    ] Initializing speech engine...
[2026-06-13 18:56:11,692.692 INFO    ] 2026-06-13 18:56:11
[2026-06-13 18:56:11,883.883 INFO    ] 2026-06-13 18:56:11
[2026-06-13 18:56:11,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:56:12,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:56:12,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:12,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:12,401.401 INFO    ] time= 13/06/2026 18:56:12
[2026-06-13 18:56:12,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:12,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:12,499.499 INFO    ] No existing commands found in stream
[2026-06-13 18:56:17,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:56:17,516.516 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 18:56:21,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:56:21,428.428 INFO    ] Checking for system updates...
[2026-06-13 18:56:21,449.449 INFO    ] 200
[2026-06-13 18:56:21,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:21,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:21,482.482 INFO    ] No update needed
[2026-06-13 18:56:21,483.483 INFO    ] Checking for camera pi updates...
[2026-06-13 18:56:21,502.502 INFO    ] 200
[2026-06-13 18:56:21,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:21,527.527 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:56:21,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:21,576.576 INFO    ] No camera update needed
[2026-06-13 18:56:21,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:56:21,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:56:21,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:56:21,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:56:23,622.622 INFO    ] ================================================
[2026-06-13 18:56:23,637.637 INFO    ] Launching Daemon at Sat Jun 13 18:56:23 IST 2026
[2026-06-13 18:56:23,648.648 INFO    ] ================================================
[2026-06-13 18:56:24,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:56:24
[2026-06-13 18:56:24,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:56:24,461.461 INFO    ] Initializing speech engine...
[2026-06-13 18:56:24,469.469 INFO    ] 2026-06-13 18:56:24
[2026-06-13 18:56:24,677.677 INFO    ] 2026-06-13 18:56:24
[2026-06-13 18:56:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:56:24,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:56:24,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:25,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:25,126.126 INFO    ] time= 13/06/2026 18:56:25
[2026-06-13 18:56:25,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:25,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:25,222.222 INFO    ] No existing commands found in stream
[2026-06-13 18:56:30,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:56:30,238.238 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 18:56:31,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:56:31,907.907 INFO    ] Checking for system updates...
[2026-06-13 18:56:31,931.931 INFO    ] 200
[2026-06-13 18:56:31,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:31,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:31,967.967 INFO    ] No update needed
[2026-06-13 18:56:31,968.968 INFO    ] Checking for camera pi updates...
[2026-06-13 18:56:31,989.989 INFO    ] 200
[2026-06-13 18:56:31,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:32,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:56:32,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:32,043.043 INFO    ] No camera update needed
[2026-06-13 18:56:32,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:56:32,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:56:32,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:56:32,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:56:34,091.091 INFO    ] ================================================
[2026-06-13 18:56:34,106.106 INFO    ] Launching Daemon at Sat Jun 13 18:56:34 IST 2026
[2026-06-13 18:56:34,117.117 INFO    ] ================================================
[2026-06-13 18:56:34,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:56:34
[2026-06-13 18:56:34,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:56:34,929.929 INFO    ] Initializing speech engine...
[2026-06-13 18:56:34,937.937 INFO    ] 2026-06-13 18:56:34
[2026-06-13 18:56:35,158.158 INFO    ] 2026-06-13 18:56:35
[2026-06-13 18:56:35,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:56:35,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:56:35,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:35,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:35,636.636 INFO    ] time= 13/06/2026 18:56:35
[2026-06-13 18:56:35,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:35,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:35,742.742 INFO    ] No existing commands found in stream
[2026-06-13 18:56:40,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:56:40,754.754 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 18:56:42,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:56:42,666.666 INFO    ] Checking for system updates...
[2026-06-13 18:56:42,687.687 INFO    ] 200
[2026-06-13 18:56:42,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:42,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:56:42,724.724 INFO    ] No update needed
[2026-06-13 18:56:42,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 18:56:42,747.747 INFO    ] 200
[2026-06-13 18:56:42,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:42,772.772 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:56:42,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:56:42,810.810 INFO    ] No camera update needed
[2026-06-13 18:56:42,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:56:42,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:56:42,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:56:42,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:56:44,858.858 INFO    ] ================================================
[2026-06-13 18:56:44,873.873 INFO    ] Launching Daemon at Sat Jun 13 18:56:44 IST 2026
[2026-06-13 18:56:44,883.883 INFO    ] ================================================
[2026-06-13 18:56:45,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:56:45
[2026-06-13 18:56:45,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:56:45,713.713 INFO    ] Initializing speech engine...
[2026-06-13 18:56:45,719.719 INFO    ] 2026-06-13 18:56:45
[2026-06-13 18:56:45,921.921 INFO    ] 2026-06-13 18:56:45
[2026-06-13 18:56:45,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:56:46,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:56:46,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:46,363.363 INFO    ] time= 13/06/2026 18:56:46
[2026-06-13 18:56:46,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:46,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:46,462.462 INFO    ] No existing commands found in stream
[2026-06-13 18:56:51,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:56:51,479.479 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 18:56:53,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:56:53,057.057 INFO    ] Checking for system updates...
[2026-06-13 18:56:53,078.078 INFO    ] 200
[2026-06-13 18:56:53,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:53,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:53,111.111 INFO    ] No update needed
[2026-06-13 18:56:53,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 18:56:53,132.132 INFO    ] 200
[2026-06-13 18:56:53,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:56:53,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:56:53,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:56:53,199.199 INFO    ] No camera update needed
[2026-06-13 18:56:53,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:56:53,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:56:53,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:56:53,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:56:55,245.245 INFO    ] ================================================
[2026-06-13 18:56:55,260.260 INFO    ] Launching Daemon at Sat Jun 13 18:56:55 IST 2026
[2026-06-13 18:56:55,271.271 INFO    ] ================================================
[2026-06-13 18:56:55,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:56:55
[2026-06-13 18:56:55,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:56:56,052.052 INFO    ] Initializing speech engine...
[2026-06-13 18:56:56,056.056 INFO    ] 2026-06-13 18:56:56
[2026-06-13 18:56:56,276.276 INFO    ] 2026-06-13 18:56:56
[2026-06-13 18:56:56,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:56:56,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:56:56,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:56:56,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:56:56,725.725 INFO    ] time= 13/06/2026 18:56:56
[2026-06-13 18:56:56,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:56:56,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:56:56,825.825 INFO    ] No existing commands found in stream
[2026-06-13 18:57:01,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:01,831.831 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 18:57:03,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:57:03,666.666 INFO    ] Checking for system updates...
[2026-06-13 18:57:03,686.686 INFO    ] 200
[2026-06-13 18:57:03,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:03,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:03,719.719 INFO    ] No update needed
[2026-06-13 18:57:03,721.721 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:03,741.741 INFO    ] 200
[2026-06-13 18:57:03,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:03,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:03,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:03,811.811 INFO    ] No camera update needed
[2026-06-13 18:57:03,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:03,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:03,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:03,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:05,857.857 INFO    ] ================================================
[2026-06-13 18:57:05,875.875 INFO    ] Launching Daemon at Sat Jun 13 18:57:05 IST 2026
[2026-06-13 18:57:05,886.886 INFO    ] ================================================
[2026-06-13 18:57:06,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:06
[2026-06-13 18:57:06,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:06,719.719 INFO    ] Initializing speech engine...
[2026-06-13 18:57:06,723.723 INFO    ] 2026-06-13 18:57:06
[2026-06-13 18:57:06,929.929 INFO    ] 2026-06-13 18:57:06
[2026-06-13 18:57:06,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:07,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:07,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:07,376.376 INFO    ] time= 13/06/2026 18:57:07
[2026-06-13 18:57:07,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:07,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:07,475.475 INFO    ] No existing commands found in stream
[2026-06-13 18:57:12,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:12,486.486 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 18:57:14,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:57:14,322.322 INFO    ] Checking for system updates...
[2026-06-13 18:57:14,344.344 INFO    ] 200
[2026-06-13 18:57:14,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:14,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:14,379.379 INFO    ] No update needed
[2026-06-13 18:57:14,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:14,400.400 INFO    ] 200
[2026-06-13 18:57:14,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:14,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:14,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:14,572.572 INFO    ] No camera update needed
[2026-06-13 18:57:14,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:14,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:14,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:14,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:16,618.618 INFO    ] ================================================
[2026-06-13 18:57:16,633.633 INFO    ] Launching Daemon at Sat Jun 13 18:57:16 IST 2026
[2026-06-13 18:57:16,644.644 INFO    ] ================================================
[2026-06-13 18:57:16,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:16
[2026-06-13 18:57:17,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:17,427.427 INFO    ] Initializing speech engine...
[2026-06-13 18:57:17,432.432 INFO    ] 2026-06-13 18:57:17
[2026-06-13 18:57:17,634.634 INFO    ] 2026-06-13 18:57:17
[2026-06-13 18:57:17,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:17,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:17,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:18,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:18,072.072 INFO    ] time= 13/06/2026 18:57:18
[2026-06-13 18:57:18,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:18,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:18,170.170 INFO    ] No existing commands found in stream
[2026-06-13 18:57:23,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:23,182.182 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 18:57:23,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:57:23,707.707 INFO    ] Checking for system updates...
[2026-06-13 18:57:23,728.728 INFO    ] 200
[2026-06-13 18:57:23,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:23,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:23,764.764 INFO    ] No update needed
[2026-06-13 18:57:23,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:23,785.785 INFO    ] 200
[2026-06-13 18:57:23,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:23,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:23,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:23,855.855 INFO    ] No camera update needed
[2026-06-13 18:57:23,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:23,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:23,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:23,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:25,902.902 INFO    ] ================================================
[2026-06-13 18:57:25,917.917 INFO    ] Launching Daemon at Sat Jun 13 18:57:25 IST 2026
[2026-06-13 18:57:25,934.934 INFO    ] ================================================
[2026-06-13 18:57:26,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:26
[2026-06-13 18:57:26,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:26,743.743 INFO    ] Initializing speech engine...
[2026-06-13 18:57:26,753.753 INFO    ] 2026-06-13 18:57:26
[2026-06-13 18:57:26,956.956 INFO    ] 2026-06-13 18:57:26
[2026-06-13 18:57:26,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:27,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:27,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:27,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:27,445.445 INFO    ] time= 13/06/2026 18:57:27
[2026-06-13 18:57:27,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:27,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:27,752.752 INFO    ] No existing commands found in stream
[2026-06-13 18:57:32,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:32,785.785 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 18:57:36,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:57:36,199.199 INFO    ] Checking for system updates...
[2026-06-13 18:57:36,222.222 INFO    ] 200
[2026-06-13 18:57:36,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:36,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:57:36,255.255 INFO    ] No update needed
[2026-06-13 18:57:36,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:36,285.285 INFO    ] 200
[2026-06-13 18:57:36,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:36,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:36,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:57:36,358.358 INFO    ] No camera update needed
[2026-06-13 18:57:36,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:36,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:36,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:36,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:38,397.397 INFO    ] ================================================
[2026-06-13 18:57:38,406.406 INFO    ] Launching Daemon at Sat Jun 13 18:57:38 IST 2026
[2026-06-13 18:57:38,412.412 INFO    ] ================================================
[2026-06-13 18:57:38,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:38
[2026-06-13 18:57:39,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:39,208.208 INFO    ] Initializing speech engine...
[2026-06-13 18:57:39,215.215 INFO    ] 2026-06-13 18:57:39
[2026-06-13 18:57:39,428.428 INFO    ] 2026-06-13 18:57:39
[2026-06-13 18:57:39,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:39,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:39,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:39,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:39,883.883 INFO    ] time= 13/06/2026 18:57:39
[2026-06-13 18:57:39,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:39,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:39,981.981 INFO    ] No existing commands found in stream
[2026-06-13 18:57:44,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:44,997.997 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 18:57:45,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:57:45,950.950 INFO    ] Checking for system updates...
[2026-06-13 18:57:45,972.972 INFO    ] 200
[2026-06-13 18:57:45,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:46,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:57:46,006.006 INFO    ] No update needed
[2026-06-13 18:57:46,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:46,029.029 INFO    ] 200
[2026-06-13 18:57:46,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:46,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:46,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:57:46,095.095 INFO    ] No camera update needed
[2026-06-13 18:57:46,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:46,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:46,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:46,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:48,143.143 INFO    ] ================================================
[2026-06-13 18:57:48,159.159 INFO    ] Launching Daemon at Sat Jun 13 18:57:48 IST 2026
[2026-06-13 18:57:48,169.169 INFO    ] ================================================
[2026-06-13 18:57:48,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:48
[2026-06-13 18:57:48,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:48,948.948 INFO    ] Initializing speech engine...
[2026-06-13 18:57:48,953.953 INFO    ] 2026-06-13 18:57:48
[2026-06-13 18:57:49,159.159 INFO    ] 2026-06-13 18:57:49
[2026-06-13 18:57:49,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:49,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:49,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:49,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:49,606.606 INFO    ] time= 13/06/2026 18:57:49
[2026-06-13 18:57:49,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:49,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:49,726.726 INFO    ] No existing commands found in stream
[2026-06-13 18:57:54,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:57:54,739.739 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 18:57:55,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:57:55,174.174 INFO    ] Checking for system updates...
[2026-06-13 18:57:55,197.197 INFO    ] 200
[2026-06-13 18:57:55,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:55,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:57:55,232.232 INFO    ] No update needed
[2026-06-13 18:57:55,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 18:57:55,254.254 INFO    ] 200
[2026-06-13 18:57:55,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:57:55,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:57:55,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:57:55,321.321 INFO    ] No camera update needed
[2026-06-13 18:57:55,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:57:55,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:57:55,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:57:55,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:57:57,369.369 INFO    ] ================================================
[2026-06-13 18:57:57,384.384 INFO    ] Launching Daemon at Sat Jun 13 18:57:57 IST 2026
[2026-06-13 18:57:57,394.394 INFO    ] ================================================
[2026-06-13 18:57:57,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:57:57
[2026-06-13 18:57:58,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:57:58,197.197 INFO    ] Initializing speech engine...
[2026-06-13 18:57:58,205.205 INFO    ] 2026-06-13 18:57:58
[2026-06-13 18:57:58,411.411 INFO    ] 2026-06-13 18:57:58
[2026-06-13 18:57:58,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:57:58,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:57:58,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:57:58,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:57:58,850.850 INFO    ] time= 13/06/2026 18:57:58
[2026-06-13 18:57:58,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:57:58,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:57:58,948.948 INFO    ] No existing commands found in stream
[2026-06-13 18:58:03,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:58:03,960.960 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 18:58:08,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 18:58:08,044.044 INFO    ] Checking for system updates...
[2026-06-13 18:58:08,066.066 INFO    ] 200
[2026-06-13 18:58:08,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:08,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:58:08,101.101 INFO    ] No update needed
[2026-06-13 18:58:08,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 18:58:08,123.123 INFO    ] 200
[2026-06-13 18:58:08,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:08,148.148 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:58:08,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:58:08,196.196 INFO    ] No camera update needed
[2026-06-13 18:58:08,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:58:08,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:58:08,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:58:08,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:58:10,245.245 INFO    ] ================================================
[2026-06-13 18:58:10,261.261 INFO    ] Launching Daemon at Sat Jun 13 18:58:10 IST 2026
[2026-06-13 18:58:10,272.272 INFO    ] ================================================
[2026-06-13 18:58:10,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:58:10
[2026-06-13 18:58:10,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:58:11,048.048 INFO    ] Initializing speech engine...
[2026-06-13 18:58:11,052.052 INFO    ] 2026-06-13 18:58:11
[2026-06-13 18:58:11,270.270 INFO    ] 2026-06-13 18:58:11
[2026-06-13 18:58:11,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:58:11,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:58:11,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:58:11,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:58:11,707.707 INFO    ] time= 13/06/2026 18:58:11
[2026-06-13 18:58:11,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:58:11,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:58:11,781.781 INFO    ] No existing commands found in stream
[2026-06-13 18:58:16,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:58:16,808.808 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 18:58:20,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 18:58:20,379.379 INFO    ] Checking for system updates...
[2026-06-13 18:58:20,401.401 INFO    ] 200
[2026-06-13 18:58:20,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:20,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:58:20,434.434 INFO    ] No update needed
[2026-06-13 18:58:20,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 18:58:20,456.456 INFO    ] 200
[2026-06-13 18:58:20,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:20,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:58:20,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:58:20,520.520 INFO    ] No camera update needed
[2026-06-13 18:58:20,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:58:20,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:58:20,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:58:20,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:58:22,565.565 INFO    ] ================================================
[2026-06-13 18:58:22,581.581 INFO    ] Launching Daemon at Sat Jun 13 18:58:22 IST 2026
[2026-06-13 18:58:22,591.591 INFO    ] ================================================
[2026-06-13 18:58:22,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:58:22
[2026-06-13 18:58:23,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:58:23,408.408 INFO    ] Initializing speech engine...
[2026-06-13 18:58:23,414.414 INFO    ] 2026-06-13 18:58:23
[2026-06-13 18:58:23,622.622 INFO    ] 2026-06-13 18:58:23
[2026-06-13 18:58:23,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:58:23,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:58:23,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:58:24,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:58:24,066.066 INFO    ] time= 13/06/2026 18:58:24
[2026-06-13 18:58:24,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:58:24,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:58:24,166.166 INFO    ] No existing commands found in stream
[2026-06-13 18:58:29,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:58:29,183.183 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 18:58:30,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:58:30,024.024 INFO    ] Checking for system updates...
[2026-06-13 18:58:30,046.046 INFO    ] 200
[2026-06-13 18:58:30,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:30,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:58:30,081.081 INFO    ] No update needed
[2026-06-13 18:58:30,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 18:58:30,103.103 INFO    ] 200
[2026-06-13 18:58:30,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:30,129.129 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:58:30,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:58:30,167.167 INFO    ] No camera update needed
[2026-06-13 18:58:30,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:58:30,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:58:30,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:58:30,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:58:32,207.207 INFO    ] ================================================
[2026-06-13 18:58:32,217.217 INFO    ] Launching Daemon at Sat Jun 13 18:58:32 IST 2026
[2026-06-13 18:58:32,223.223 INFO    ] ================================================
[2026-06-13 18:58:32,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:58:32
[2026-06-13 18:58:32,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:58:32,977.977 INFO    ] Initializing speech engine...
[2026-06-13 18:58:32,982.982 INFO    ] 2026-06-13 18:58:32
[2026-06-13 18:58:33,184.184 INFO    ] 2026-06-13 18:58:33
[2026-06-13 18:58:33,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:58:33,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:58:33,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:58:33,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:58:33,619.619 INFO    ] time= 13/06/2026 18:58:33
[2026-06-13 18:58:33,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:58:33,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:58:33,717.717 INFO    ] No existing commands found in stream
[2026-06-13 18:58:38,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:58:38,729.729 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 18:58:40,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 18:58:40,146.146 INFO    ] Checking for system updates...
[2026-06-13 18:58:40,168.168 INFO    ] 200
[2026-06-13 18:58:40,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:40,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:58:40,204.204 INFO    ] No update needed
[2026-06-13 18:58:40,205.205 INFO    ] Checking for camera pi updates...
[2026-06-13 18:58:40,225.225 INFO    ] 200
[2026-06-13 18:58:40,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:40,250.250 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:58:40,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:58:40,288.288 INFO    ] No camera update needed
[2026-06-13 18:58:40,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:58:40,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:58:40,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:58:40,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:58:42,334.334 INFO    ] ================================================
[2026-06-13 18:58:42,349.349 INFO    ] Launching Daemon at Sat Jun 13 18:58:42 IST 2026
[2026-06-13 18:58:42,360.360 INFO    ] ================================================
[2026-06-13 18:58:42,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:58:42
[2026-06-13 18:58:42,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:58:43,126.126 INFO    ] Initializing speech engine...
[2026-06-13 18:58:43,138.138 INFO    ] 2026-06-13 18:58:43
[2026-06-13 18:58:43,346.346 INFO    ] 2026-06-13 18:58:43
[2026-06-13 18:58:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:58:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:58:43,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:58:43,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:58:43,791.791 INFO    ] time= 13/06/2026 18:58:43
[2026-06-13 18:58:43,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:58:43,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:58:43,866.866 INFO    ] No existing commands found in stream
[2026-06-13 18:58:48,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:58:48,899.899 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 18:58:52,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:58:52,729.729 INFO    ] Checking for system updates...
[2026-06-13 18:58:52,750.750 INFO    ] 200
[2026-06-13 18:58:52,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:52,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:58:52,785.785 INFO    ] No update needed
[2026-06-13 18:58:52,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 18:58:52,806.806 INFO    ] 200
[2026-06-13 18:58:52,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:58:52,832.832 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:58:52,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:58:52,855.855 INFO    ] No camera update needed
[2026-06-13 18:58:52,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:58:52,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:58:52,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:58:52,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:58:54,900.900 INFO    ] ================================================
[2026-06-13 18:58:54,916.916 INFO    ] Launching Daemon at Sat Jun 13 18:58:54 IST 2026
[2026-06-13 18:58:54,928.928 INFO    ] ================================================
[2026-06-13 18:58:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:58:55
[2026-06-13 18:58:55,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:58:55,716.716 INFO    ] Initializing speech engine...
[2026-06-13 18:58:55,721.721 INFO    ] 2026-06-13 18:58:55
[2026-06-13 18:58:55,936.936 INFO    ] 2026-06-13 18:58:55
[2026-06-13 18:58:55,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:58:56,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:58:56,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:58:56,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:58:56,374.374 INFO    ] time= 13/06/2026 18:58:56
[2026-06-13 18:58:56,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:58:56,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:58:56,472.472 INFO    ] No existing commands found in stream
[2026-06-13 18:59:01,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:01,484.484 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 18:59:04,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:59:04,450.450 INFO    ] Checking for system updates...
[2026-06-13 18:59:04,472.472 INFO    ] 200
[2026-06-13 18:59:04,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:04,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:04,507.507 INFO    ] No update needed
[2026-06-13 18:59:04,509.509 INFO    ] Checking for camera pi updates...
[2026-06-13 18:59:04,529.529 INFO    ] 200
[2026-06-13 18:59:04,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:04,554.554 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:59:04,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:04,595.595 INFO    ] No camera update needed
[2026-06-13 18:59:04,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:59:04,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:59:04,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:59:04,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:59:06,643.643 INFO    ] ================================================
[2026-06-13 18:59:06,666.666 INFO    ] Launching Daemon at Sat Jun 13 18:59:06 IST 2026
[2026-06-13 18:59:06,677.677 INFO    ] ================================================
[2026-06-13 18:59:07,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:59:07
[2026-06-13 18:59:07,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:59:07,486.486 INFO    ] Initializing speech engine...
[2026-06-13 18:59:07,497.497 INFO    ] 2026-06-13 18:59:07
[2026-06-13 18:59:07,711.711 INFO    ] 2026-06-13 18:59:07
[2026-06-13 18:59:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:59:07,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:59:07,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:59:08,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:59:08,198.198 INFO    ] time= 13/06/2026 18:59:08
[2026-06-13 18:59:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:59:08,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:59:08,371.371 INFO    ] No existing commands found in stream
[2026-06-13 18:59:13,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:13,387.387 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 18:59:16,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:59:16,593.593 INFO    ] Checking for system updates...
[2026-06-13 18:59:16,615.615 INFO    ] 200
[2026-06-13 18:59:16,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:16,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:59:16,649.649 INFO    ] No update needed
[2026-06-13 18:59:16,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 18:59:16,672.672 INFO    ] 200
[2026-06-13 18:59:16,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:16,708.708 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:59:16,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:16,851.851 INFO    ] No camera update needed
[2026-06-13 18:59:16,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:59:16,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:59:16,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:59:16,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:59:18,900.900 INFO    ] ================================================
[2026-06-13 18:59:18,915.915 INFO    ] Launching Daemon at Sat Jun 13 18:59:18 IST 2026
[2026-06-13 18:59:18,926.926 INFO    ] ================================================
[2026-06-13 18:59:19,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:59:19
[2026-06-13 18:59:19,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:59:20,038.038 INFO    ] Initializing speech engine...
[2026-06-13 18:59:20,051.051 INFO    ] 2026-06-13 18:59:20
[2026-06-13 18:59:20,299.299 INFO    ] 2026-06-13 18:59:20
[2026-06-13 18:59:20,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:59:20,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:59:20,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:59:20,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:59:20,835.835 INFO    ] time= 13/06/2026 18:59:20
[2026-06-13 18:59:20,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:59:20,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:59:21,007.007 INFO    ] No existing commands found in stream
[2026-06-13 18:59:26,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:26,025.025 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 18:59:28,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 18:59:28,710.710 INFO    ] Checking for system updates...
[2026-06-13 18:59:28,732.732 INFO    ] 200
[2026-06-13 18:59:28,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:28,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:28,765.765 INFO    ] No update needed
[2026-06-13 18:59:28,767.767 INFO    ] Checking for camera pi updates...
[2026-06-13 18:59:28,787.787 INFO    ] 200
[2026-06-13 18:59:28,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:28,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:59:28,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:28,852.852 INFO    ] No camera update needed
[2026-06-13 18:59:28,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:59:28,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:59:28,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:59:28,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:59:30,900.900 INFO    ] ================================================
[2026-06-13 18:59:30,916.916 INFO    ] Launching Daemon at Sat Jun 13 18:59:30 IST 2026
[2026-06-13 18:59:30,927.927 INFO    ] ================================================
[2026-06-13 18:59:31,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:59:31
[2026-06-13 18:59:31,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:59:31,774.774 INFO    ] Initializing speech engine...
[2026-06-13 18:59:31,777.777 INFO    ] 2026-06-13 18:59:31
[2026-06-13 18:59:32,001.001 INFO    ] 2026-06-13 18:59:31
[2026-06-13 18:59:32,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:59:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:59:32,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:59:32,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:59:32,476.476 INFO    ] time= 13/06/2026 18:59:32
[2026-06-13 18:59:32,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:59:32,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:59:32,574.574 INFO    ] No existing commands found in stream
[2026-06-13 18:59:37,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:37,586.586 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 18:59:40,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 18:59:40,190.190 INFO    ] Checking for system updates...
[2026-06-13 18:59:40,210.210 INFO    ] 200
[2026-06-13 18:59:40,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:40,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:40,246.246 INFO    ] No update needed
[2026-06-13 18:59:40,247.247 INFO    ] Checking for camera pi updates...
[2026-06-13 18:59:40,267.267 INFO    ] 200
[2026-06-13 18:59:40,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:40,294.294 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:59:40,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 18:59:40,334.334 INFO    ] No camera update needed
[2026-06-13 18:59:40,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:59:40,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:59:40,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:59:40,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:59:42,381.381 INFO    ] ================================================
[2026-06-13 18:59:42,396.396 INFO    ] Launching Daemon at Sat Jun 13 18:59:42 IST 2026
[2026-06-13 18:59:42,407.407 INFO    ] ================================================
[2026-06-13 18:59:42,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:59:42
[2026-06-13 18:59:43,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:59:43,248.248 INFO    ] Initializing speech engine...
[2026-06-13 18:59:43,262.262 INFO    ] 2026-06-13 18:59:43
[2026-06-13 18:59:43,465.465 INFO    ] 2026-06-13 18:59:43
[2026-06-13 18:59:43,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:59:43,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:59:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:59:43,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:59:43,904.904 INFO    ] time= 13/06/2026 18:59:43
[2026-06-13 18:59:43,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:59:43,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:59:43,998.998 INFO    ] No existing commands found in stream
[2026-06-13 18:59:49,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:49,015.015 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 18:59:50,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 18:59:50,028.028 INFO    ] Checking for system updates...
[2026-06-13 18:59:50,050.050 INFO    ] 200
[2026-06-13 18:59:50,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:50,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:59:50,085.085 INFO    ] No update needed
[2026-06-13 18:59:50,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 18:59:50,106.106 INFO    ] 200
[2026-06-13 18:59:50,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 18:59:50,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 18:59:50,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 18:59:50,167.167 INFO    ] No camera update needed
[2026-06-13 18:59:50,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-13 18:59:50,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 18:59:50,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 18:59:50,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 18:59:52,214.214 INFO    ] ================================================
[2026-06-13 18:59:52,229.229 INFO    ] Launching Daemon at Sat Jun 13 18:59:52 IST 2026
[2026-06-13 18:59:52,240.240 INFO    ] ================================================
[2026-06-13 18:59:52,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 18:59:52
[2026-06-13 18:59:52,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 18:59:53,191.191 INFO    ] Initializing speech engine...
[2026-06-13 18:59:53,201.201 INFO    ] 2026-06-13 18:59:53
[2026-06-13 18:59:53,468.468 INFO    ] 2026-06-13 18:59:53
[2026-06-13 18:59:53,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 18:59:53,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 18:59:53,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 18:59:53,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 18:59:54,030.030 INFO    ] time= 13/06/2026 18:59:53
[2026-06-13 18:59:54,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 18:59:54,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 18:59:54,189.189 INFO    ] No existing commands found in stream
[2026-06-13 18:59:59,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 18:59:59,220.220 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 19:00:02,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:00:02,045.045 INFO    ] Checking for system updates...
[2026-06-13 19:00:02,157.157 INFO    ] 200
[2026-06-13 19:00:02,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:02,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:02,919.919 INFO    ] No update needed
[2026-06-13 19:00:02,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 19:00:03,126.126 INFO    ] 200
[2026-06-13 19:00:03,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:03,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:00:03,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:03,764.764 INFO    ] No camera update needed
[2026-06-13 19:00:03,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:00:03,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:00:03,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:00:03,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:00:05,903.903 INFO    ] ================================================
[2026-06-13 19:00:05,920.920 INFO    ] Launching Daemon at Sat Jun 13 19:00:05 IST 2026
[2026-06-13 19:00:05,933.933 INFO    ] ================================================
[2026-06-13 19:00:06,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:00:06
[2026-06-13 19:00:07,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:00:07,431.431 INFO    ] Initializing speech engine...
[2026-06-13 19:00:07,441.441 INFO    ] 2026-06-13 19:00:07
[2026-06-13 19:00:07,694.694 INFO    ] 2026-06-13 19:00:07
[2026-06-13 19:00:07,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:00:07,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:00:07,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:00:08,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:00:08,134.134 INFO    ] time= 13/06/2026 19:00:08
[2026-06-13 19:00:08,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:00:08,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:00:08,234.234 INFO    ] No existing commands found in stream
[2026-06-13 19:00:13,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:00:13,252.252 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 19:00:14,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:00:14,377.377 INFO    ] Checking for system updates...
[2026-06-13 19:00:14,399.399 INFO    ] 200
[2026-06-13 19:00:14,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:14,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:00:14,436.436 INFO    ] No update needed
[2026-06-13 19:00:14,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 19:00:14,458.458 INFO    ] 200
[2026-06-13 19:00:14,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:14,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:00:14,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:00:14,530.530 INFO    ] No camera update needed
[2026-06-13 19:00:14,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:00:14,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:00:14,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:00:14,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:00:16,580.580 INFO    ] ================================================
[2026-06-13 19:00:16,595.595 INFO    ] Launching Daemon at Sat Jun 13 19:00:16 IST 2026
[2026-06-13 19:00:16,605.605 INFO    ] ================================================
[2026-06-13 19:00:16,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:00:16
[2026-06-13 19:00:17,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:00:17,462.462 INFO    ] Initializing speech engine...
[2026-06-13 19:00:17,472.472 INFO    ] 2026-06-13 19:00:17
[2026-06-13 19:00:17,679.679 INFO    ] 2026-06-13 19:00:17
[2026-06-13 19:00:17,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:00:17,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:00:17,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:00:18,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:00:18,117.117 INFO    ] time= 13/06/2026 19:00:18
[2026-06-13 19:00:18,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:00:18,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:00:18,215.215 INFO    ] No existing commands found in stream
[2026-06-13 19:00:23,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:00:23,232.232 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 19:00:26,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:00:26,485.485 INFO    ] Checking for system updates...
[2026-06-13 19:00:26,506.506 INFO    ] 200
[2026-06-13 19:00:26,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:26,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:00:26,540.540 INFO    ] No update needed
[2026-06-13 19:00:26,542.542 INFO    ] Checking for camera pi updates...
[2026-06-13 19:00:26,561.561 INFO    ] 200
[2026-06-13 19:00:26,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:26,588.588 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:00:26,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:00:26,629.629 INFO    ] No camera update needed
[2026-06-13 19:00:26,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:00:26,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:00:26,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:00:26,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:00:28,675.675 INFO    ] ================================================
[2026-06-13 19:00:28,691.691 INFO    ] Launching Daemon at Sat Jun 13 19:00:28 IST 2026
[2026-06-13 19:00:28,701.701 INFO    ] ================================================
[2026-06-13 19:00:29,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:00:29
[2026-06-13 19:00:29,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:00:29,490.490 INFO    ] Initializing speech engine...
[2026-06-13 19:00:29,499.499 INFO    ] 2026-06-13 19:00:29
[2026-06-13 19:00:29,720.720 INFO    ] 2026-06-13 19:00:29
[2026-06-13 19:00:29,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:00:29,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:00:29,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:00:30,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:00:30,187.187 INFO    ] time= 13/06/2026 19:00:30
[2026-06-13 19:00:30,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:00:30,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:00:30,290.290 INFO    ] No existing commands found in stream
[2026-06-13 19:00:35,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:00:35,302.302 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 19:00:38,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:00:38,458.458 INFO    ] Checking for system updates...
[2026-06-13 19:00:38,479.479 INFO    ] 200
[2026-06-13 19:00:38,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:38,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:38,517.517 INFO    ] No update needed
[2026-06-13 19:00:38,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 19:00:38,539.539 INFO    ] 200
[2026-06-13 19:00:38,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:38,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:00:38,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:38,604.604 INFO    ] No camera update needed
[2026-06-13 19:00:38,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:00:38,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:00:38,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:00:38,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:00:40,651.651 INFO    ] ================================================
[2026-06-13 19:00:40,666.666 INFO    ] Launching Daemon at Sat Jun 13 19:00:40 IST 2026
[2026-06-13 19:00:40,677.677 INFO    ] ================================================
[2026-06-13 19:00:41,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:00:41
[2026-06-13 19:00:41,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:00:41,489.489 INFO    ] Initializing speech engine...
[2026-06-13 19:00:41,494.494 INFO    ] 2026-06-13 19:00:41
[2026-06-13 19:00:41,697.697 INFO    ] 2026-06-13 19:00:41
[2026-06-13 19:00:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:00:41,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:00:41,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:00:42,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:00:42,101.101 INFO    ] time= 13/06/2026 19:00:42
[2026-06-13 19:00:42,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:00:42,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:00:42,211.211 INFO    ] No existing commands found in stream
[2026-06-13 19:00:47,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:00:47,225.225 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 19:00:48,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:00:48,717.717 INFO    ] Checking for system updates...
[2026-06-13 19:00:48,739.739 INFO    ] 200
[2026-06-13 19:00:48,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:48,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:48,774.774 INFO    ] No update needed
[2026-06-13 19:00:48,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 19:00:48,795.795 INFO    ] 200
[2026-06-13 19:00:48,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:00:48,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:00:48,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:00:48,861.861 INFO    ] No camera update needed
[2026-06-13 19:00:48,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:00:48,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:00:48,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:00:48,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:00:50,910.910 INFO    ] ================================================
[2026-06-13 19:00:50,925.925 INFO    ] Launching Daemon at Sat Jun 13 19:00:50 IST 2026
[2026-06-13 19:00:50,936.936 INFO    ] ================================================
[2026-06-13 19:00:51,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:00:51
[2026-06-13 19:00:51,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:00:51,709.709 INFO    ] Initializing speech engine...
[2026-06-13 19:00:51,713.713 INFO    ] 2026-06-13 19:00:51
[2026-06-13 19:00:51,932.932 INFO    ] 2026-06-13 19:00:51
[2026-06-13 19:00:51,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:00:52,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:00:52,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:00:52,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:00:52,340.340 INFO    ] time= 13/06/2026 19:00:52
[2026-06-13 19:00:52,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:00:52,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:00:52,452.452 INFO    ] No existing commands found in stream
[2026-06-13 19:00:57,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:00:57,464.464 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 19:01:01,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:01:01,143.143 INFO    ] Checking for system updates...
[2026-06-13 19:01:01,164.164 INFO    ] 200
[2026-06-13 19:01:01,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:01,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:01,201.201 INFO    ] No update needed
[2026-06-13 19:01:01,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:01,222.222 INFO    ] 200
[2026-06-13 19:01:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:01,247.247 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:01,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:01,294.294 INFO    ] No camera update needed
[2026-06-13 19:01:01,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:01,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:01,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:01,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:01:03,337.337 INFO    ] ================================================
[2026-06-13 19:01:03,353.353 INFO    ] Launching Daemon at Sat Jun 13 19:01:03 IST 2026
[2026-06-13 19:01:03,363.363 INFO    ] ================================================
[2026-06-13 19:01:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:01:03
[2026-06-13 19:01:04,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:01:04,150.150 INFO    ] Initializing speech engine...
[2026-06-13 19:01:04,158.158 INFO    ] 2026-06-13 19:01:04
[2026-06-13 19:01:04,381.381 INFO    ] 2026-06-13 19:01:04
[2026-06-13 19:01:04,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:01:04,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:01:04,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:01:04,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:01:04,812.812 INFO    ] time= 13/06/2026 19:01:04
[2026-06-13 19:01:04,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:01:04,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:01:04,932.932 INFO    ] No existing commands found in stream
[2026-06-13 19:01:09,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:01:09,945.945 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 19:01:14,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:01:14,181.181 INFO    ] Checking for system updates...
[2026-06-13 19:01:14,202.202 INFO    ] 200
[2026-06-13 19:01:14,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:14,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:14,238.238 INFO    ] No update needed
[2026-06-13 19:01:14,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:14,260.260 INFO    ] 200
[2026-06-13 19:01:14,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:14,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:14,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:14,324.324 INFO    ] No camera update needed
[2026-06-13 19:01:14,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:14,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:14,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:14,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:01:16,373.373 INFO    ] ================================================
[2026-06-13 19:01:16,389.389 INFO    ] Launching Daemon at Sat Jun 13 19:01:16 IST 2026
[2026-06-13 19:01:16,400.400 INFO    ] ================================================
[2026-06-13 19:01:16,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:01:16
[2026-06-13 19:01:17,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:01:17,171.171 INFO    ] Initializing speech engine...
[2026-06-13 19:01:17,176.176 INFO    ] 2026-06-13 19:01:17
[2026-06-13 19:01:17,372.372 INFO    ] 2026-06-13 19:01:17
[2026-06-13 19:01:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:01:17,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:01:17,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:01:17,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:01:17,757.757 INFO    ] time= 13/06/2026 19:01:17
[2026-06-13 19:01:17,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:01:17,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:01:17,889.889 INFO    ] No existing commands found in stream
[2026-06-13 19:01:22,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:01:22,903.903 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 19:01:24,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:01:24,894.894 INFO    ] Checking for system updates...
[2026-06-13 19:01:24,916.916 INFO    ] 200
[2026-06-13 19:01:24,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:24,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:01:24,950.950 INFO    ] No update needed
[2026-06-13 19:01:24,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:24,972.972 INFO    ] 200
[2026-06-13 19:01:24,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:24,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:25,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:25,141.141 INFO    ] No camera update needed
[2026-06-13 19:01:25,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:25,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:25,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:25,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:01:27,189.189 INFO    ] ================================================
[2026-06-13 19:01:27,204.204 INFO    ] Launching Daemon at Sat Jun 13 19:01:27 IST 2026
[2026-06-13 19:01:27,215.215 INFO    ] ================================================
[2026-06-13 19:01:27,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:01:27
[2026-06-13 19:01:27,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:01:27,986.986 INFO    ] Initializing speech engine...
[2026-06-13 19:01:27,996.996 INFO    ] 2026-06-13 19:01:27
[2026-06-13 19:01:28,218.218 INFO    ] 2026-06-13 19:01:28
[2026-06-13 19:01:28,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:01:28,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:01:28,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:01:28,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:01:28,465.465 INFO    ] time= 13/06/2026 19:01:28
[2026-06-13 19:01:28,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:01:28,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:01:28,574.574 INFO    ] No existing commands found in stream
[2026-06-13 19:01:33,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:01:33,611.611 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 19:01:36,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:01:36,061.061 INFO    ] Checking for system updates...
[2026-06-13 19:01:36,082.082 INFO    ] 200
[2026-06-13 19:01:36,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:36,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:36,116.116 INFO    ] No update needed
[2026-06-13 19:01:36,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:36,137.137 INFO    ] 200
[2026-06-13 19:01:36,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:36,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:36,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:36,199.199 INFO    ] No camera update needed
[2026-06-13 19:01:36,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:36,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:36,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:36,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:01:38,246.246 INFO    ] ================================================
[2026-06-13 19:01:38,262.262 INFO    ] Launching Daemon at Sat Jun 13 19:01:38 IST 2026
[2026-06-13 19:01:38,273.273 INFO    ] ================================================
[2026-06-13 19:01:38,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:01:38
[2026-06-13 19:01:38,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:01:39,104.104 INFO    ] Initializing speech engine...
[2026-06-13 19:01:39,114.114 INFO    ] 2026-06-13 19:01:39
[2026-06-13 19:01:39,323.323 INFO    ] 2026-06-13 19:01:39
[2026-06-13 19:01:39,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:01:39,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:01:39,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:01:39,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:01:39,739.739 INFO    ] time= 13/06/2026 19:01:39
[2026-06-13 19:01:39,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:01:39,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:01:39,897.897 INFO    ] No existing commands found in stream
[2026-06-13 19:01:44,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:01:44,920.920 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 19:01:47,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:01:47,246.246 INFO    ] Checking for system updates...
[2026-06-13 19:01:47,268.268 INFO    ] 200
[2026-06-13 19:01:47,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:47,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:01:47,304.304 INFO    ] No update needed
[2026-06-13 19:01:47,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:47,328.328 INFO    ] 200
[2026-06-13 19:01:47,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:47,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:47,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:47,405.405 INFO    ] No camera update needed
[2026-06-13 19:01:47,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:47,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:47,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:47,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:01:49,453.453 INFO    ] ================================================
[2026-06-13 19:01:49,469.469 INFO    ] Launching Daemon at Sat Jun 13 19:01:49 IST 2026
[2026-06-13 19:01:49,479.479 INFO    ] ================================================
[2026-06-13 19:01:49,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:01:49
[2026-06-13 19:01:50,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:01:50,279.279 INFO    ] Initializing speech engine...
[2026-06-13 19:01:50,284.284 INFO    ] 2026-06-13 19:01:50
[2026-06-13 19:01:50,490.490 INFO    ] 2026-06-13 19:01:50
[2026-06-13 19:01:50,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:01:50,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:01:50,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:01:50,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:01:50,894.894 INFO    ] time= 13/06/2026 19:01:50
[2026-06-13 19:01:50,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:01:50,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:01:51,005.005 INFO    ] No existing commands found in stream
[2026-06-13 19:01:56,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:01:56,018.018 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 19:01:58,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:01:58,273.273 INFO    ] Checking for system updates...
[2026-06-13 19:01:58,294.294 INFO    ] 200
[2026-06-13 19:01:58,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:58,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:58,329.329 INFO    ] No update needed
[2026-06-13 19:01:58,331.331 INFO    ] Checking for camera pi updates...
[2026-06-13 19:01:58,352.352 INFO    ] 200
[2026-06-13 19:01:58,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:01:58,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:01:58,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:01:58,419.419 INFO    ] No camera update needed
[2026-06-13 19:01:58,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:01:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:01:58,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:01:58,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:00,468.468 INFO    ] ================================================
[2026-06-13 19:02:00,483.483 INFO    ] Launching Daemon at Sat Jun 13 19:02:00 IST 2026
[2026-06-13 19:02:00,494.494 INFO    ] ================================================
[2026-06-13 19:02:00,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:00
[2026-06-13 19:02:01,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:01,303.303 INFO    ] Initializing speech engine...
[2026-06-13 19:02:01,306.306 INFO    ] 2026-06-13 19:02:01
[2026-06-13 19:02:01,534.534 INFO    ] 2026-06-13 19:02:01
[2026-06-13 19:02:01,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:02:01,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:02:01,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:02:01,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:02:01,800.800 INFO    ] time= 13/06/2026 19:02:01
[2026-06-13 19:02:01,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:02:01,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:02:01,856.856 INFO    ] No existing commands found in stream
[2026-06-13 19:02:06,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:02:06,868.868 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 19:02:11,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:02:11,054.054 INFO    ] Checking for system updates...
[2026-06-13 19:02:11,074.074 INFO    ] 200
[2026-06-13 19:02:11,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:11,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:02:11,107.107 INFO    ] No update needed
[2026-06-13 19:02:11,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 19:02:11,130.130 INFO    ] 200
[2026-06-13 19:02:11,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:11,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:02:11,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:02:11,198.198 INFO    ] No camera update needed
[2026-06-13 19:02:11,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:02:11,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:02:11,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:02:11,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:13,245.245 INFO    ] ================================================
[2026-06-13 19:02:13,260.260 INFO    ] Launching Daemon at Sat Jun 13 19:02:13 IST 2026
[2026-06-13 19:02:13,271.271 INFO    ] ================================================
[2026-06-13 19:02:13,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:13
[2026-06-13 19:02:13,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:14,103.103 INFO    ] Initializing speech engine...
[2026-06-13 19:02:14,107.107 INFO    ] 2026-06-13 19:02:14
[2026-06-13 19:02:14,309.309 INFO    ] 2026-06-13 19:02:14
[2026-06-13 19:02:14,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:02:14,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:02:14,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:02:14,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:02:14,728.728 INFO    ] time= 13/06/2026 19:02:14
[2026-06-13 19:02:14,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:02:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:02:14,823.823 INFO    ] No existing commands found in stream
[2026-06-13 19:02:19,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:02:19,836.836 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 19:02:21,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:02:21,183.183 INFO    ] Checking for system updates...
[2026-06-13 19:02:21,204.204 INFO    ] 200
[2026-06-13 19:02:21,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:21,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:02:21,238.238 INFO    ] No update needed
[2026-06-13 19:02:21,240.240 INFO    ] Checking for camera pi updates...
[2026-06-13 19:02:21,260.260 INFO    ] 200
[2026-06-13 19:02:21,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:21,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:02:21,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:02:21,327.327 INFO    ] No camera update needed
[2026-06-13 19:02:21,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:02:21,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:02:21,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:02:21,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:23,376.376 INFO    ] ================================================
[2026-06-13 19:02:23,391.391 INFO    ] Launching Daemon at Sat Jun 13 19:02:23 IST 2026
[2026-06-13 19:02:23,402.402 INFO    ] ================================================
[2026-06-13 19:02:23,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:23
[2026-06-13 19:02:24,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:24,215.215 INFO    ] Initializing speech engine...
[2026-06-13 19:02:24,224.224 INFO    ] 2026-06-13 19:02:24
[2026-06-13 19:02:24,452.452 INFO    ] 2026-06-13 19:02:24
[2026-06-13 19:02:24,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:02:24,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:02:24,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:02:24,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:02:24,863.863 INFO    ] time= 13/06/2026 19:02:24
[2026-06-13 19:02:24,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:02:24,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:02:25,070.070 INFO    ] No existing commands found in stream
[2026-06-13 19:02:30,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:02:30,103.103 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 19:02:33,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:02:33,421.421 INFO    ] Checking for system updates...
[2026-06-13 19:02:33,442.442 INFO    ] 200
[2026-06-13 19:02:33,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:33,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:02:33,479.479 INFO    ] No update needed
[2026-06-13 19:02:33,480.480 INFO    ] Checking for camera pi updates...
[2026-06-13 19:02:33,500.500 INFO    ] 200
[2026-06-13 19:02:33,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:33,525.525 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:02:33,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:02:33,573.573 INFO    ] No camera update needed
[2026-06-13 19:02:33,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:02:33,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:02:33,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:02:33,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:35,622.622 INFO    ] ================================================
[2026-06-13 19:02:35,637.637 INFO    ] Launching Daemon at Sat Jun 13 19:02:35 IST 2026
[2026-06-13 19:02:35,649.649 INFO    ] ================================================
[2026-06-13 19:02:36,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:36
[2026-06-13 19:02:36,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:37,175.175 INFO    ] Initializing speech engine...
[2026-06-13 19:02:37,184.184 INFO    ] 2026-06-13 19:02:37
[2026-06-13 19:02:37,490.490 INFO    ] 2026-06-13 19:02:37
[2026-06-13 19:02:37,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:02:37,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:02:37,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:02:37,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:02:37,927.927 INFO    ] time= 13/06/2026 19:02:37
[2026-06-13 19:02:37,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:02:38,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:02:38,082.082 INFO    ] No existing commands found in stream
[2026-06-13 19:02:43,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:02:43,108.108 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 19:02:44,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:02:44,757.757 INFO    ] Checking for system updates...
[2026-06-13 19:02:44,778.778 INFO    ] 200
[2026-06-13 19:02:44,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:44,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:02:44,811.811 INFO    ] No update needed
[2026-06-13 19:02:44,812.812 INFO    ] Checking for camera pi updates...
[2026-06-13 19:02:44,832.832 INFO    ] 200
[2026-06-13 19:02:44,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:44,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:02:44,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:02:44,896.896 INFO    ] No camera update needed
[2026-06-13 19:02:44,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:02:44,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:02:44,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:02:44,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:46,944.944 INFO    ] ================================================
[2026-06-13 19:02:46,960.960 INFO    ] Launching Daemon at Sat Jun 13 19:02:46 IST 2026
[2026-06-13 19:02:46,971.971 INFO    ] ================================================
[2026-06-13 19:02:47,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:47
[2026-06-13 19:02:48,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:48,413.413 INFO    ] Initializing speech engine...
[2026-06-13 19:02:48,422.422 INFO    ] 2026-06-13 19:02:48
[2026-06-13 19:02:48,673.673 INFO    ] 2026-06-13 19:02:48
[2026-06-13 19:02:48,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:02:48,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:02:48,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:02:49,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:02:49,147.147 INFO    ] time= 13/06/2026 19:02:49
[2026-06-13 19:02:49,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:02:49,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:02:49,313.313 INFO    ] No existing commands found in stream
[2026-06-13 19:02:54,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:02:54,352.352 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 19:02:56,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:02:56,573.573 INFO    ] Checking for system updates...
[2026-06-13 19:02:56,594.594 INFO    ] 200
[2026-06-13 19:02:56,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:56,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:02:56,628.628 INFO    ] No update needed
[2026-06-13 19:02:56,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 19:02:56,650.650 INFO    ] 200
[2026-06-13 19:02:56,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:02:56,676.676 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:02:56,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:02:56,727.727 INFO    ] No camera update needed
[2026-06-13 19:02:56,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:02:56,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:02:56,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:02:56,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:02:58,779.779 INFO    ] ================================================
[2026-06-13 19:02:58,795.795 INFO    ] Launching Daemon at Sat Jun 13 19:02:58 IST 2026
[2026-06-13 19:02:58,806.806 INFO    ] ================================================
[2026-06-13 19:02:59,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:02:59
[2026-06-13 19:02:59,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:02:59,595.595 INFO    ] Initializing speech engine...
[2026-06-13 19:02:59,600.600 INFO    ] 2026-06-13 19:02:59
[2026-06-13 19:02:59,801.801 INFO    ] 2026-06-13 19:02:59
[2026-06-13 19:02:59,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:00,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:00,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:00,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:00,210.210 INFO    ] time= 13/06/2026 19:03:00
[2026-06-13 19:03:00,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:00,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:00,315.315 INFO    ] No existing commands found in stream
[2026-06-13 19:03:05,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:03:05,323.323 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 19:03:07,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:03:07,612.612 INFO    ] Checking for system updates...
[2026-06-13 19:03:07,633.633 INFO    ] 200
[2026-06-13 19:03:07,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:07,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:07,670.670 INFO    ] No update needed
[2026-06-13 19:03:07,671.671 INFO    ] Checking for camera pi updates...
[2026-06-13 19:03:07,694.694 INFO    ] 200
[2026-06-13 19:03:07,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:07,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:03:07,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:03:07,759.759 INFO    ] No camera update needed
[2026-06-13 19:03:07,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:03:07,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:03:07,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:03:07,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:03:09,810.810 INFO    ] ================================================
[2026-06-13 19:03:09,827.827 INFO    ] Launching Daemon at Sat Jun 13 19:03:09 IST 2026
[2026-06-13 19:03:09,839.839 INFO    ] ================================================
[2026-06-13 19:03:10,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:03:10
[2026-06-13 19:03:10,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:03:10,690.690 INFO    ] Initializing speech engine...
[2026-06-13 19:03:10,695.695 INFO    ] 2026-06-13 19:03:10
[2026-06-13 19:03:10,903.903 INFO    ] 2026-06-13 19:03:10
[2026-06-13 19:03:10,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:11,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:11,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:11,305.305 INFO    ] time= 13/06/2026 19:03:11
[2026-06-13 19:03:11,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:11,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:11,421.421 INFO    ] No existing commands found in stream
[2026-06-13 19:03:16,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:03:16,439.439 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 19:03:18,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:03:18,962.962 INFO    ] Checking for system updates...
[2026-06-13 19:03:18,983.983 INFO    ] 200
[2026-06-13 19:03:18,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:19,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:19,018.018 INFO    ] No update needed
[2026-06-13 19:03:19,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 19:03:19,039.039 INFO    ] 200
[2026-06-13 19:03:19,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:19,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:03:19,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:19,105.105 INFO    ] No camera update needed
[2026-06-13 19:03:19,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:03:19,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:03:19,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:03:19,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:03:21,155.155 INFO    ] ================================================
[2026-06-13 19:03:21,171.171 INFO    ] Launching Daemon at Sat Jun 13 19:03:21 IST 2026
[2026-06-13 19:03:21,182.182 INFO    ] ================================================
[2026-06-13 19:03:21,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:03:21
[2026-06-13 19:03:21,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:03:22,059.059 INFO    ] Initializing speech engine...
[2026-06-13 19:03:22,063.063 INFO    ] 2026-06-13 19:03:22
[2026-06-13 19:03:22,271.271 INFO    ] 2026-06-13 19:03:22
[2026-06-13 19:03:22,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:22,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:22,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:22,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:22,691.691 INFO    ] time= 13/06/2026 19:03:22
[2026-06-13 19:03:22,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:22,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:22,790.790 INFO    ] No existing commands found in stream
[2026-06-13 19:03:27,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:03:27,802.802 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 19:03:28,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:03:28,853.853 INFO    ] Checking for system updates...
[2026-06-13 19:03:28,874.874 INFO    ] 200
[2026-06-13 19:03:28,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:28,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:28,908.908 INFO    ] No update needed
[2026-06-13 19:03:28,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 19:03:28,930.930 INFO    ] 200
[2026-06-13 19:03:28,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:28,956.956 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:03:29,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:29,099.099 INFO    ] No camera update needed
[2026-06-13 19:03:29,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:03:29,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:03:29,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:03:29,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:03:31,148.148 INFO    ] ================================================
[2026-06-13 19:03:31,164.164 INFO    ] Launching Daemon at Sat Jun 13 19:03:31 IST 2026
[2026-06-13 19:03:31,176.176 INFO    ] ================================================
[2026-06-13 19:03:31,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:03:31
[2026-06-13 19:03:31,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:03:32,028.028 INFO    ] Initializing speech engine...
[2026-06-13 19:03:32,039.039 INFO    ] 2026-06-13 19:03:32
[2026-06-13 19:03:32,271.271 INFO    ] 2026-06-13 19:03:32
[2026-06-13 19:03:32,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:32,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:32,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:32,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:32,618.618 INFO    ] time= 13/06/2026 19:03:32
[2026-06-13 19:03:32,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:32,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:32,734.734 INFO    ] No existing commands found in stream
[2026-06-13 19:03:37,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:03:37,750.750 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 19:03:41,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:03:41,293.293 INFO    ] Checking for system updates...
[2026-06-13 19:03:41,314.314 INFO    ] 200
[2026-06-13 19:03:41,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:41,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:03:41,347.347 INFO    ] No update needed
[2026-06-13 19:03:41,349.349 INFO    ] Checking for camera pi updates...
[2026-06-13 19:03:41,370.370 INFO    ] 200
[2026-06-13 19:03:41,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:41,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:03:41,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:03:41,435.435 INFO    ] No camera update needed
[2026-06-13 19:03:41,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:03:41,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:03:41,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:03:41,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:03:43,482.482 INFO    ] ================================================
[2026-06-13 19:03:43,499.499 INFO    ] Launching Daemon at Sat Jun 13 19:03:43 IST 2026
[2026-06-13 19:03:43,511.511 INFO    ] ================================================
[2026-06-13 19:03:43,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:03:43
[2026-06-13 19:03:44,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:03:44,323.323 INFO    ] Initializing speech engine...
[2026-06-13 19:03:44,327.327 INFO    ] 2026-06-13 19:03:44
[2026-06-13 19:03:44,519.519 INFO    ] 2026-06-13 19:03:44
[2026-06-13 19:03:44,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:44,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:44,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:44,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:44,807.807 INFO    ] time= 13/06/2026 19:03:44
[2026-06-13 19:03:44,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:44,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:44,892.892 INFO    ] No existing commands found in stream
[2026-06-13 19:03:49,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:03:49,923.923 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 19:03:54,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:03:54,169.169 INFO    ] Checking for system updates...
[2026-06-13 19:03:54,190.190 INFO    ] 200
[2026-06-13 19:03:54,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:54,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:03:54,224.224 INFO    ] No update needed
[2026-06-13 19:03:54,225.225 INFO    ] Checking for camera pi updates...
[2026-06-13 19:03:54,245.245 INFO    ] 200
[2026-06-13 19:03:54,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:03:54,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:03:54,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:03:54,317.317 INFO    ] No camera update needed
[2026-06-13 19:03:54,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:03:54,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:03:54,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:03:54,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:03:56,365.365 INFO    ] ================================================
[2026-06-13 19:03:56,381.381 INFO    ] Launching Daemon at Sat Jun 13 19:03:56 IST 2026
[2026-06-13 19:03:56,392.392 INFO    ] ================================================
[2026-06-13 19:03:56,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:03:56
[2026-06-13 19:03:57,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:03:57,184.184 INFO    ] Initializing speech engine...
[2026-06-13 19:03:57,189.189 INFO    ] 2026-06-13 19:03:57
[2026-06-13 19:03:57,393.393 INFO    ] 2026-06-13 19:03:57
[2026-06-13 19:03:57,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:03:57,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:03:57,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:03:57,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:03:57,805.805 INFO    ] time= 13/06/2026 19:03:57
[2026-06-13 19:03:57,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:03:57,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:03:57,909.909 INFO    ] No existing commands found in stream
[2026-06-13 19:04:02,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:04:02,922.922 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 19:04:06,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:04:06,204.204 INFO    ] Checking for system updates...
[2026-06-13 19:04:06,225.225 INFO    ] 200
[2026-06-13 19:04:06,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:06,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:06,260.260 INFO    ] No update needed
[2026-06-13 19:04:06,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 19:04:06,282.282 INFO    ] 200
[2026-06-13 19:04:06,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:06,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:04:06,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:06,354.354 INFO    ] No camera update needed
[2026-06-13 19:04:06,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:04:06,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:04:06,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:04:06,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:04:08,403.403 INFO    ] ================================================
[2026-06-13 19:04:08,419.419 INFO    ] Launching Daemon at Sat Jun 13 19:04:08 IST 2026
[2026-06-13 19:04:08,431.431 INFO    ] ================================================
[2026-06-13 19:04:08,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:04:08
[2026-06-13 19:04:09,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:04:09,293.293 INFO    ] Initializing speech engine...
[2026-06-13 19:04:09,299.299 INFO    ] 2026-06-13 19:04:09
[2026-06-13 19:04:09,509.509 INFO    ] 2026-06-13 19:04:09
[2026-06-13 19:04:09,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:04:09,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:04:09,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:04:09,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:04:09,928.928 INFO    ] time= 13/06/2026 19:04:09
[2026-06-13 19:04:09,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:04:09,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:04:10,025.025 INFO    ] No existing commands found in stream
[2026-06-13 19:04:15,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:04:15,048.048 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 19:04:18,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:04:18,183.183 INFO    ] Checking for system updates...
[2026-06-13 19:04:18,204.204 INFO    ] 200
[2026-06-13 19:04:18,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:18,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:18,239.239 INFO    ] No update needed
[2026-06-13 19:04:18,241.241 INFO    ] Checking for camera pi updates...
[2026-06-13 19:04:18,260.260 INFO    ] 200
[2026-06-13 19:04:18,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:18,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:04:18,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:18,334.334 INFO    ] No camera update needed
[2026-06-13 19:04:18,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:04:18,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:04:18,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:04:18,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:04:20,381.381 INFO    ] ================================================
[2026-06-13 19:04:20,389.389 INFO    ] Launching Daemon at Sat Jun 13 19:04:20 IST 2026
[2026-06-13 19:04:20,396.396 INFO    ] ================================================
[2026-06-13 19:04:20,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:04:20
[2026-06-13 19:04:21,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:04:21,194.194 INFO    ] Initializing speech engine...
[2026-06-13 19:04:21,199.199 INFO    ] 2026-06-13 19:04:21
[2026-06-13 19:04:21,403.403 INFO    ] 2026-06-13 19:04:21
[2026-06-13 19:04:21,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:04:21,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:04:21,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:04:21,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:04:21,781.781 INFO    ] time= 13/06/2026 19:04:21
[2026-06-13 19:04:21,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:04:21,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:04:21,916.916 INFO    ] No existing commands found in stream
[2026-06-13 19:04:26,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:04:26,933.933 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 19:04:29,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:04:29,608.608 INFO    ] Checking for system updates...
[2026-06-13 19:04:29,629.629 INFO    ] 200
[2026-06-13 19:04:29,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:29,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:04:29,665.665 INFO    ] No update needed
[2026-06-13 19:04:29,666.666 INFO    ] Checking for camera pi updates...
[2026-06-13 19:04:29,688.688 INFO    ] 200
[2026-06-13 19:04:29,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:29,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:04:29,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:04:29,747.747 INFO    ] No camera update needed
[2026-06-13 19:04:29,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:04:29,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:04:29,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:04:29,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:04:31,791.791 INFO    ] ================================================
[2026-06-13 19:04:31,800.800 INFO    ] Launching Daemon at Sat Jun 13 19:04:31 IST 2026
[2026-06-13 19:04:31,807.807 INFO    ] ================================================
[2026-06-13 19:04:32,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:04:32
[2026-06-13 19:04:32,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:04:32,615.615 INFO    ] Initializing speech engine...
[2026-06-13 19:04:32,620.620 INFO    ] 2026-06-13 19:04:32
[2026-06-13 19:04:32,821.821 INFO    ] 2026-06-13 19:04:32
[2026-06-13 19:04:32,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:04:32,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:04:33,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:04:33,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:04:33,238.238 INFO    ] time= 13/06/2026 19:04:33
[2026-06-13 19:04:33,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:04:33,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:04:33,342.342 INFO    ] No existing commands found in stream
[2026-06-13 19:04:38,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:04:38,354.354 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 19:04:41,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:04:41,276.276 INFO    ] Checking for system updates...
[2026-06-13 19:04:41,298.298 INFO    ] 200
[2026-06-13 19:04:41,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:41,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:04:41,331.331 INFO    ] No update needed
[2026-06-13 19:04:41,332.332 INFO    ] Checking for camera pi updates...
[2026-06-13 19:04:41,352.352 INFO    ] 200
[2026-06-13 19:04:41,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:41,376.376 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:04:41,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:04:41,416.416 INFO    ] No camera update needed
[2026-06-13 19:04:41,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:04:41,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:04:41,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:04:41,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:04:43,463.463 INFO    ] ================================================
[2026-06-13 19:04:43,479.479 INFO    ] Launching Daemon at Sat Jun 13 19:04:43 IST 2026
[2026-06-13 19:04:43,490.490 INFO    ] ================================================
[2026-06-13 19:04:43,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:04:43
[2026-06-13 19:04:44,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:04:44,334.334 INFO    ] Initializing speech engine...
[2026-06-13 19:04:44,339.339 INFO    ] 2026-06-13 19:04:44
[2026-06-13 19:04:44,545.545 INFO    ] 2026-06-13 19:04:44
[2026-06-13 19:04:44,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:04:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:04:44,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:04:44,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:04:44,955.955 INFO    ] time= 13/06/2026 19:04:44
[2026-06-13 19:04:44,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:04:44,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:04:45,086.086 INFO    ] No existing commands found in stream
[2026-06-13 19:04:50,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:04:50,104.104 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 19:04:51,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:04:51,324.324 INFO    ] Checking for system updates...
[2026-06-13 19:04:51,345.345 INFO    ] 200
[2026-06-13 19:04:51,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:51,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:51,379.379 INFO    ] No update needed
[2026-06-13 19:04:51,380.380 INFO    ] Checking for camera pi updates...
[2026-06-13 19:04:51,400.400 INFO    ] 200
[2026-06-13 19:04:51,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:04:51,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:04:51,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:04:51,464.464 INFO    ] No camera update needed
[2026-06-13 19:04:51,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:04:51,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:04:51,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:04:51,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:04:53,512.512 INFO    ] ================================================
[2026-06-13 19:04:53,527.527 INFO    ] Launching Daemon at Sat Jun 13 19:04:53 IST 2026
[2026-06-13 19:04:53,539.539 INFO    ] ================================================
[2026-06-13 19:04:53,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:04:53
[2026-06-13 19:04:54,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:04:54,369.369 INFO    ] Initializing speech engine...
[2026-06-13 19:04:54,374.374 INFO    ] 2026-06-13 19:04:54
[2026-06-13 19:04:54,578.578 INFO    ] 2026-06-13 19:04:54
[2026-06-13 19:04:54,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:04:54,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:04:54,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:04:54,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:04:54,987.987 INFO    ] time= 13/06/2026 19:04:54
[2026-06-13 19:04:55,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:04:55,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:04:55,102.102 INFO    ] No existing commands found in stream
[2026-06-13 19:05:00,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:00,113.113 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 19:05:02,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:05:02,158.158 INFO    ] Checking for system updates...
[2026-06-13 19:05:02,208.208 INFO    ] 200
[2026-06-13 19:05:02,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:02,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:02,296.296 INFO    ] No update needed
[2026-06-13 19:05:02,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:02,339.339 INFO    ] 200
[2026-06-13 19:05:02,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:02,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:02,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:02,529.529 INFO    ] No camera update needed
[2026-06-13 19:05:02,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:02,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:02,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:02,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:05:04,592.592 INFO    ] ================================================
[2026-06-13 19:05:04,607.607 INFO    ] Launching Daemon at Sat Jun 13 19:05:04 IST 2026
[2026-06-13 19:05:04,618.618 INFO    ] ================================================
[2026-06-13 19:05:05,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:05:05
[2026-06-13 19:05:05,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:05:05,598.598 INFO    ] Initializing speech engine...
[2026-06-13 19:05:05,604.604 INFO    ] 2026-06-13 19:05:05
[2026-06-13 19:05:05,810.810 INFO    ] 2026-06-13 19:05:05
[2026-06-13 19:05:05,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:05:06,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:05:06,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:05:06,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:05:06,216.216 INFO    ] time= 13/06/2026 19:05:06
[2026-06-13 19:05:06,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:05:06,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:05:06,326.326 INFO    ] No existing commands found in stream
[2026-06-13 19:05:11,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:11,344.344 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 19:05:13,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:05:13,442.442 INFO    ] Checking for system updates...
[2026-06-13 19:05:13,463.463 INFO    ] 200
[2026-06-13 19:05:13,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:13,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:13,498.498 INFO    ] No update needed
[2026-06-13 19:05:13,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:13,520.520 INFO    ] 200
[2026-06-13 19:05:13,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:13,545.545 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:13,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:13,583.583 INFO    ] No camera update needed
[2026-06-13 19:05:13,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:13,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:13,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:13,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:05:15,635.635 INFO    ] ================================================
[2026-06-13 19:05:15,650.650 INFO    ] Launching Daemon at Sat Jun 13 19:05:15 IST 2026
[2026-06-13 19:05:15,660.660 INFO    ] ================================================
[2026-06-13 19:05:16,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:05:16
[2026-06-13 19:05:16,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:05:16,468.468 INFO    ] Initializing speech engine...
[2026-06-13 19:05:16,473.473 INFO    ] 2026-06-13 19:05:16
[2026-06-13 19:05:16,677.677 INFO    ] 2026-06-13 19:05:16
[2026-06-13 19:05:16,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:05:16,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:05:16,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:05:17,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:05:17,086.086 INFO    ] time= 13/06/2026 19:05:17
[2026-06-13 19:05:17,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:05:17,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:05:17,190.190 INFO    ] No existing commands found in stream
[2026-06-13 19:05:22,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:22,206.206 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 19:05:24,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:05:24,173.173 INFO    ] Checking for system updates...
[2026-06-13 19:05:24,194.194 INFO    ] 200
[2026-06-13 19:05:24,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:24,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:24,228.228 INFO    ] No update needed
[2026-06-13 19:05:24,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:24,249.249 INFO    ] 200
[2026-06-13 19:05:24,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:24,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:24,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:24,326.326 INFO    ] No camera update needed
[2026-06-13 19:05:24,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:24,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:24,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:24,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:05:26,382.382 INFO    ] ================================================
[2026-06-13 19:05:26,397.397 INFO    ] Launching Daemon at Sat Jun 13 19:05:26 IST 2026
[2026-06-13 19:05:26,407.407 INFO    ] ================================================
[2026-06-13 19:05:26,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:05:26
[2026-06-13 19:05:27,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:05:27,653.653 INFO    ] Initializing speech engine...
[2026-06-13 19:05:27,659.659 INFO    ] 2026-06-13 19:05:27
[2026-06-13 19:05:27,861.861 INFO    ] 2026-06-13 19:05:27
[2026-06-13 19:05:27,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:05:28,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:05:28,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:05:28,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:05:28,269.269 INFO    ] time= 13/06/2026 19:05:28
[2026-06-13 19:05:28,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:05:28,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:05:28,374.374 INFO    ] No existing commands found in stream
[2026-06-13 19:05:33,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:33,387.387 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 19:05:37,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:05:37,532.532 INFO    ] Checking for system updates...
[2026-06-13 19:05:37,553.553 INFO    ] 200
[2026-06-13 19:05:37,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:37,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:37,589.589 INFO    ] No update needed
[2026-06-13 19:05:37,590.590 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:37,611.611 INFO    ] 200
[2026-06-13 19:05:37,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:37,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:37,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:05:37,677.677 INFO    ] No camera update needed
[2026-06-13 19:05:37,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:37,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:37,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:37,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:05:39,726.726 INFO    ] ================================================
[2026-06-13 19:05:39,742.742 INFO    ] Launching Daemon at Sat Jun 13 19:05:39 IST 2026
[2026-06-13 19:05:39,752.752 INFO    ] ================================================
[2026-06-13 19:05:40,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:05:40
[2026-06-13 19:05:40,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:05:40,572.572 INFO    ] Initializing speech engine...
[2026-06-13 19:05:40,580.580 INFO    ] 2026-06-13 19:05:40
[2026-06-13 19:05:40,777.777 INFO    ] 2026-06-13 19:05:40
[2026-06-13 19:05:40,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:05:40,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:05:41,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:05:41,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:05:41,235.235 INFO    ] time= 13/06/2026 19:05:41
[2026-06-13 19:05:41,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:05:41,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:05:41,430.430 INFO    ] No existing commands found in stream
[2026-06-13 19:05:46,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:46,463.463 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 19:05:47,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:05:47,731.731 INFO    ] Checking for system updates...
[2026-06-13 19:05:47,752.752 INFO    ] 200
[2026-06-13 19:05:47,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:47,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:47,785.785 INFO    ] No update needed
[2026-06-13 19:05:47,786.786 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:47,808.808 INFO    ] 200
[2026-06-13 19:05:47,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:47,833.833 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:47,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:47,870.870 INFO    ] No camera update needed
[2026-06-13 19:05:47,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:47,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:47,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:47,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:05:49,916.916 INFO    ] ================================================
[2026-06-13 19:05:49,931.931 INFO    ] Launching Daemon at Sat Jun 13 19:05:49 IST 2026
[2026-06-13 19:05:49,941.941 INFO    ] ================================================
[2026-06-13 19:05:50,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:05:50
[2026-06-13 19:05:50,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:05:50,715.715 INFO    ] Initializing speech engine...
[2026-06-13 19:05:50,723.723 INFO    ] 2026-06-13 19:05:50
[2026-06-13 19:05:50,931.931 INFO    ] 2026-06-13 19:05:50
[2026-06-13 19:05:50,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:05:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:05:51,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:05:51,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:05:51,338.338 INFO    ] time= 13/06/2026 19:05:51
[2026-06-13 19:05:51,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:05:51,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:05:51,454.454 INFO    ] No existing commands found in stream
[2026-06-13 19:05:56,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:05:56,467.467 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 19:05:57,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:05:57,923.923 INFO    ] Checking for system updates...
[2026-06-13 19:05:57,947.947 INFO    ] 200
[2026-06-13 19:05:57,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:57,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:57,980.980 INFO    ] No update needed
[2026-06-13 19:05:57,981.981 INFO    ] Checking for camera pi updates...
[2026-06-13 19:05:58,001.001 INFO    ] 200
[2026-06-13 19:05:58,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:05:58,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:05:58,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:05:58,067.067 INFO    ] No camera update needed
[2026-06-13 19:05:58,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:05:58,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:05:58,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:05:58,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:00,115.115 INFO    ] ================================================
[2026-06-13 19:06:00,130.130 INFO    ] Launching Daemon at Sat Jun 13 19:06:00 IST 2026
[2026-06-13 19:06:00,141.141 INFO    ] ================================================
[2026-06-13 19:06:00,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:00
[2026-06-13 19:06:00,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:00,933.933 INFO    ] Initializing speech engine...
[2026-06-13 19:06:00,941.941 INFO    ] 2026-06-13 19:06:00
[2026-06-13 19:06:01,153.153 INFO    ] 2026-06-13 19:06:01
[2026-06-13 19:06:01,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:01,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:06:01,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:06:01,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:06:01,544.544 INFO    ] time= 13/06/2026 19:06:01
[2026-06-13 19:06:01,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:06:01,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:06:01,657.657 INFO    ] No existing commands found in stream
[2026-06-13 19:06:06,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:06:06,675.675 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 19:06:09,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:06:09,849.849 INFO    ] Checking for system updates...
[2026-06-13 19:06:09,875.875 INFO    ] 200
[2026-06-13 19:06:09,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:09,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:09,913.913 INFO    ] No update needed
[2026-06-13 19:06:09,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 19:06:09,937.937 INFO    ] 200
[2026-06-13 19:06:09,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:09,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:06:10,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:10,007.007 INFO    ] No camera update needed
[2026-06-13 19:06:10,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:06:10,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:10,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:10,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:12,057.057 INFO    ] ================================================
[2026-06-13 19:06:12,072.072 INFO    ] Launching Daemon at Sat Jun 13 19:06:12 IST 2026
[2026-06-13 19:06:12,083.083 INFO    ] ================================================
[2026-06-13 19:06:12,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:12
[2026-06-13 19:06:12,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:12,925.925 INFO    ] Initializing speech engine...
[2026-06-13 19:06:12,930.930 INFO    ] 2026-06-13 19:06:12
[2026-06-13 19:06:13,148.148 INFO    ] 2026-06-13 19:06:13
[2026-06-13 19:06:13,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:13,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:06:13,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:06:13,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:06:13,518.518 INFO    ] time= 13/06/2026 19:06:13
[2026-06-13 19:06:13,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:06:13,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:06:13,701.701 INFO    ] No existing commands found in stream
[2026-06-13 19:06:18,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:06:18,713.713 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 19:06:19,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:06:19,176.176 INFO    ] Checking for system updates...
[2026-06-13 19:06:19,198.198 INFO    ] 200
[2026-06-13 19:06:19,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:19,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:06:19,231.231 INFO    ] No update needed
[2026-06-13 19:06:19,233.233 INFO    ] Checking for camera pi updates...
[2026-06-13 19:06:19,254.254 INFO    ] 200
[2026-06-13 19:06:19,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:19,279.279 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:06:19,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:06:19,320.320 INFO    ] No camera update needed
[2026-06-13 19:06:19,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:06:19,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:19,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:19,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:21,367.367 INFO    ] ================================================
[2026-06-13 19:06:21,383.383 INFO    ] Launching Daemon at Sat Jun 13 19:06:21 IST 2026
[2026-06-13 19:06:21,393.393 INFO    ] ================================================
[2026-06-13 19:06:21,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:21
[2026-06-13 19:06:22,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:22,245.245 INFO    ] Initializing speech engine...
[2026-06-13 19:06:22,251.251 INFO    ] 2026-06-13 19:06:22
[2026-06-13 19:06:22,460.460 INFO    ] 2026-06-13 19:06:22
[2026-06-13 19:06:22,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:06:22,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:06:22,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:06:22,878.878 INFO    ] time= 13/06/2026 19:06:22
[2026-06-13 19:06:22,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:06:22,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:06:22,975.975 INFO    ] No existing commands found in stream
[2026-06-13 19:06:27,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:06:27,989.989 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 19:06:29,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:06:29,908.908 INFO    ] Checking for system updates...
[2026-06-13 19:06:29,931.931 INFO    ] 200
[2026-06-13 19:06:29,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:29,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:29,970.970 INFO    ] No update needed
[2026-06-13 19:06:29,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 19:06:29,992.992 INFO    ] 200
[2026-06-13 19:06:29,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:30,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:06:30,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:30,057.057 INFO    ] No camera update needed
[2026-06-13 19:06:30,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:06:30,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:30,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:30,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:32,102.102 INFO    ] ================================================
[2026-06-13 19:06:32,112.112 INFO    ] Launching Daemon at Sat Jun 13 19:06:32 IST 2026
[2026-06-13 19:06:32,119.119 INFO    ] ================================================
[2026-06-13 19:06:32,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:32
[2026-06-13 19:06:33,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:33,584.584 INFO    ] Initializing speech engine...
[2026-06-13 19:06:33,592.592 INFO    ] 2026-06-13 19:06:33
[2026-06-13 19:06:33,842.842 INFO    ] 2026-06-13 19:06:33
[2026-06-13 19:06:33,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:34,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:06:34,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:06:34,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:06:34,276.276 INFO    ] time= 13/06/2026 19:06:34
[2026-06-13 19:06:34,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:06:34,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:06:34,459.459 INFO    ] No existing commands found in stream
[2026-06-13 19:06:39,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:06:39,474.474 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 19:06:42,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:06:42,277.277 INFO    ] Checking for system updates...
[2026-06-13 19:06:42,298.298 INFO    ] 200
[2026-06-13 19:06:42,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:42,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:06:42,334.334 INFO    ] No update needed
[2026-06-13 19:06:42,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 19:06:42,354.354 INFO    ] 200
[2026-06-13 19:06:42,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:42,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:06:42,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:06:42,419.419 INFO    ] No camera update needed
[2026-06-13 19:06:42,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:06:42,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:42,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:42,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:44,466.466 INFO    ] ================================================
[2026-06-13 19:06:44,481.481 INFO    ] Launching Daemon at Sat Jun 13 19:06:44 IST 2026
[2026-06-13 19:06:44,491.491 INFO    ] ================================================
[2026-06-13 19:06:44,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:44
[2026-06-13 19:06:45,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:45,291.291 INFO    ] Initializing speech engine...
[2026-06-13 19:06:45,297.297 INFO    ] 2026-06-13 19:06:45
[2026-06-13 19:06:45,501.501 INFO    ] 2026-06-13 19:06:45
[2026-06-13 19:06:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:45,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:06:45,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:06:45,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:06:45,906.906 INFO    ] time= 13/06/2026 19:06:45
[2026-06-13 19:06:45,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:06:45,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:06:46,016.016 INFO    ] No existing commands found in stream
[2026-06-13 19:06:51,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:06:51,028.028 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 19:06:54,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:06:54,299.299 INFO    ] Checking for system updates...
[2026-06-13 19:06:54,320.320 INFO    ] 200
[2026-06-13 19:06:54,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:54,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:54,358.358 INFO    ] No update needed
[2026-06-13 19:06:54,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 19:06:54,379.379 INFO    ] 200
[2026-06-13 19:06:54,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:06:54,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:06:54,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:06:54,448.448 INFO    ] No camera update needed
[2026-06-13 19:06:54,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:06:54,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:54,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:54,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:56,487.487 INFO    ] ================================================
[2026-06-13 19:06:56,496.496 INFO    ] Launching Daemon at Sat Jun 13 19:06:56 IST 2026
[2026-06-13 19:06:56,502.502 INFO    ] ================================================
[2026-06-13 19:06:56,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:06:56
[2026-06-13 19:06:57,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:06:57,259.259 INFO    ] Initializing speech engine...
[2026-06-13 19:06:57,264.264 INFO    ] 2026-06-13 19:06:57
[2026-06-13 19:06:57,467.467 INFO    ] 2026-06-13 19:06:57
[2026-06-13 19:06:57,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:06:57,545.545 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 19:06:57,589.589 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 19:06:57,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:06:57,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:06:57,665.665 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 19:06:57,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:06:59,762.762 INFO    ] ================================================
[2026-06-13 19:06:59,778.778 INFO    ] Launching Daemon at Sat Jun 13 19:06:59 IST 2026
[2026-06-13 19:06:59,789.789 INFO    ] ================================================
[2026-06-13 19:07:00,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:00
[2026-06-13 19:07:00,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:00,628.628 INFO    ] Initializing speech engine...
[2026-06-13 19:07:00,634.634 INFO    ] 2026-06-13 19:07:00
[2026-06-13 19:07:00,838.838 INFO    ] 2026-06-13 19:07:00
[2026-06-13 19:07:00,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:00,920.920 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 19:07:00,975.975 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 19:07:00,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:01,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:01,086.086 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 19:07:01,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:07:03,157.157 INFO    ] ================================================
[2026-06-13 19:07:03,165.165 INFO    ] Launching Daemon at Sat Jun 13 19:07:03 IST 2026
[2026-06-13 19:07:03,171.171 INFO    ] ================================================
[2026-06-13 19:07:03,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:03
[2026-06-13 19:07:03,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:04,063.063 INFO    ] Initializing speech engine...
[2026-06-13 19:07:04,071.071 INFO    ] 2026-06-13 19:07:04
[2026-06-13 19:07:04,282.282 INFO    ] 2026-06-13 19:07:04
[2026-06-13 19:07:04,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:04,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:07:04,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:07:04,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:07:04,704.704 INFO    ] time= 13/06/2026 19:07:04
[2026-06-13 19:07:04,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:07:04,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:07:04,802.802 INFO    ] No existing commands found in stream
[2026-06-13 19:07:09,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:07:09,821.821 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 19:07:13,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:07:13,120.120 INFO    ] Checking for system updates...
[2026-06-13 19:07:13,158.158 INFO    ] 200
[2026-06-13 19:07:13,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:13,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:13,219.219 INFO    ] No update needed
[2026-06-13 19:07:13,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 19:07:13,250.250 INFO    ] 200
[2026-06-13 19:07:13,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:13,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:07:13,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:13,425.425 INFO    ] No camera update needed
[2026-06-13 19:07:13,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:07:13,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:13,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:13,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:07:15,474.474 INFO    ] ================================================
[2026-06-13 19:07:15,490.490 INFO    ] Launching Daemon at Sat Jun 13 19:07:15 IST 2026
[2026-06-13 19:07:15,501.501 INFO    ] ================================================
[2026-06-13 19:07:15,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:15
[2026-06-13 19:07:16,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:16,319.319 INFO    ] Initializing speech engine...
[2026-06-13 19:07:16,328.328 INFO    ] 2026-06-13 19:07:16
[2026-06-13 19:07:16,520.520 INFO    ] 2026-06-13 19:07:16
[2026-06-13 19:07:16,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:16,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:07:16,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:07:16,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:07:16,942.942 INFO    ] time= 13/06/2026 19:07:16
[2026-06-13 19:07:17,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:07:17,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:07:17,092.092 INFO    ] No existing commands found in stream
[2026-06-13 19:07:22,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:07:22,120.120 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 19:07:25,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:07:25,337.337 INFO    ] Checking for system updates...
[2026-06-13 19:07:25,359.359 INFO    ] 200
[2026-06-13 19:07:25,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:25,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:25,392.392 INFO    ] No update needed
[2026-06-13 19:07:25,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 19:07:25,417.417 INFO    ] 200
[2026-06-13 19:07:25,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:25,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:07:25,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:25,485.485 INFO    ] No camera update needed
[2026-06-13 19:07:25,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:07:25,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:25,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:25,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:07:27,535.535 INFO    ] ================================================
[2026-06-13 19:07:27,551.551 INFO    ] Launching Daemon at Sat Jun 13 19:07:27 IST 2026
[2026-06-13 19:07:27,562.562 INFO    ] ================================================
[2026-06-13 19:07:27,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:27
[2026-06-13 19:07:28,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:28,394.394 INFO    ] Initializing speech engine...
[2026-06-13 19:07:28,399.399 INFO    ] 2026-06-13 19:07:28
[2026-06-13 19:07:28,602.602 INFO    ] 2026-06-13 19:07:28
[2026-06-13 19:07:28,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:28,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:07:28,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:07:28,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:07:29,019.019 INFO    ] time= 13/06/2026 19:07:28
[2026-06-13 19:07:29,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:07:29,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:07:29,120.120 INFO    ] No existing commands found in stream
[2026-06-13 19:07:34,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:07:34,136.136 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 19:07:36,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:07:36,344.344 INFO    ] Checking for system updates...
[2026-06-13 19:07:36,364.364 INFO    ] 200
[2026-06-13 19:07:36,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:36,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:07:36,397.397 INFO    ] No update needed
[2026-06-13 19:07:36,399.399 INFO    ] Checking for camera pi updates...
[2026-06-13 19:07:36,418.418 INFO    ] 200
[2026-06-13 19:07:36,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:36,443.443 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:07:36,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:07:36,486.486 INFO    ] No camera update needed
[2026-06-13 19:07:36,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:07:36,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:36,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:36,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:07:38,534.534 INFO    ] ================================================
[2026-06-13 19:07:38,550.550 INFO    ] Launching Daemon at Sat Jun 13 19:07:38 IST 2026
[2026-06-13 19:07:38,561.561 INFO    ] ================================================
[2026-06-13 19:07:38,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:38
[2026-06-13 19:07:39,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:39,403.403 INFO    ] Initializing speech engine...
[2026-06-13 19:07:39,412.412 INFO    ] 2026-06-13 19:07:39
[2026-06-13 19:07:39,624.624 INFO    ] 2026-06-13 19:07:39
[2026-06-13 19:07:39,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:39,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:07:39,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:07:39,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:07:40,046.046 INFO    ] time= 13/06/2026 19:07:39
[2026-06-13 19:07:40,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:07:40,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:07:40,144.144 INFO    ] No existing commands found in stream
[2026-06-13 19:07:45,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:07:45,156.156 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 19:07:47,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:07:47,667.667 INFO    ] Checking for system updates...
[2026-06-13 19:07:47,689.689 INFO    ] 200
[2026-06-13 19:07:47,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:47,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:47,723.723 INFO    ] No update needed
[2026-06-13 19:07:47,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 19:07:47,744.744 INFO    ] 200
[2026-06-13 19:07:47,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:47,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:07:47,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:07:47,811.811 INFO    ] No camera update needed
[2026-06-13 19:07:47,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:07:47,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:47,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:47,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:07:49,859.859 INFO    ] ================================================
[2026-06-13 19:07:49,875.875 INFO    ] Launching Daemon at Sat Jun 13 19:07:49 IST 2026
[2026-06-13 19:07:49,885.885 INFO    ] ================================================
[2026-06-13 19:07:50,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:07:50
[2026-06-13 19:07:50,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:07:50,711.711 INFO    ] Initializing speech engine...
[2026-06-13 19:07:50,717.717 INFO    ] 2026-06-13 19:07:50
[2026-06-13 19:07:50,921.921 INFO    ] 2026-06-13 19:07:50
[2026-06-13 19:07:50,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:07:51,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:07:51,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:07:51,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:07:51,313.313 INFO    ] time= 13/06/2026 19:07:51
[2026-06-13 19:07:51,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:07:51,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:07:51,434.434 INFO    ] No existing commands found in stream
[2026-06-13 19:07:56,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:07:56,451.451 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 19:07:58,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:07:58,154.154 INFO    ] Checking for system updates...
[2026-06-13 19:07:58,193.193 INFO    ] 200
[2026-06-13 19:07:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:58,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:07:58,252.252 INFO    ] No update needed
[2026-06-13 19:07:58,254.254 INFO    ] Checking for camera pi updates...
[2026-06-13 19:07:58,288.288 INFO    ] 200
[2026-06-13 19:07:58,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:07:58,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:07:58,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:07:58,360.360 INFO    ] No camera update needed
[2026-06-13 19:07:58,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:07:58,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:07:58,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:07:58,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:08:00,411.411 INFO    ] ================================================
[2026-06-13 19:08:00,427.427 INFO    ] Launching Daemon at Sat Jun 13 19:08:00 IST 2026
[2026-06-13 19:08:00,438.438 INFO    ] ================================================
[2026-06-13 19:08:00,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:08:00
[2026-06-13 19:08:01,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:08:01,454.454 INFO    ] Initializing speech engine...
[2026-06-13 19:08:01,458.458 INFO    ] 2026-06-13 19:08:01
[2026-06-13 19:08:01,898.898 INFO    ] 2026-06-13 19:08:01
[2026-06-13 19:08:01,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:08:02,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:08:02,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:08:02,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:08:02,360.360 INFO    ] time= 13/06/2026 19:08:02
[2026-06-13 19:08:02,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:08:02,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:08:02,564.564 INFO    ] No existing commands found in stream
[2026-06-13 19:08:07,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:08:07,606.606 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 19:08:09,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:08:09,397.397 INFO    ] Checking for system updates...
[2026-06-13 19:08:09,418.418 INFO    ] 200
[2026-06-13 19:08:09,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:09,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:09,451.451 INFO    ] No update needed
[2026-06-13 19:08:09,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 19:08:09,473.473 INFO    ] 200
[2026-06-13 19:08:09,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:09,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:08:09,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:09,546.546 INFO    ] No camera update needed
[2026-06-13 19:08:09,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:08:09,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:08:09,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:08:09,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:08:11,596.596 INFO    ] ================================================
[2026-06-13 19:08:11,612.612 INFO    ] Launching Daemon at Sat Jun 13 19:08:11 IST 2026
[2026-06-13 19:08:11,622.622 INFO    ] ================================================
[2026-06-13 19:08:11,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:08:11
[2026-06-13 19:08:12,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:08:12,451.451 INFO    ] Initializing speech engine...
[2026-06-13 19:08:12,461.461 INFO    ] 2026-06-13 19:08:12
[2026-06-13 19:08:12,673.673 INFO    ] 2026-06-13 19:08:12
[2026-06-13 19:08:12,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:08:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:08:12,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:08:13,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:08:13,090.090 INFO    ] time= 13/06/2026 19:08:13
[2026-06-13 19:08:13,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:08:13,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:08:13,205.205 INFO    ] No existing commands found in stream
[2026-06-13 19:08:18,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:08:18,222.222 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 19:08:21,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:08:21,498.498 INFO    ] Checking for system updates...
[2026-06-13 19:08:21,519.519 INFO    ] 200
[2026-06-13 19:08:21,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:21,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:08:21,553.553 INFO    ] No update needed
[2026-06-13 19:08:21,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 19:08:21,575.575 INFO    ] 200
[2026-06-13 19:08:21,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:21,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:08:21,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:08:21,638.638 INFO    ] No camera update needed
[2026-06-13 19:08:21,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:08:21,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:08:21,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:08:21,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:08:23,678.678 INFO    ] ================================================
[2026-06-13 19:08:23,694.694 INFO    ] Launching Daemon at Sat Jun 13 19:08:23 IST 2026
[2026-06-13 19:08:23,704.704 INFO    ] ================================================
[2026-06-13 19:08:24,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:08:24
[2026-06-13 19:08:24,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:08:25,240.240 INFO    ] Initializing speech engine...
[2026-06-13 19:08:25,264.264 INFO    ] 2026-06-13 19:08:25
[2026-06-13 19:08:25,531.531 INFO    ] 2026-06-13 19:08:25
[2026-06-13 19:08:25,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:08:25,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:08:25,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:08:25,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:08:25,882.882 INFO    ] time= 13/06/2026 19:08:25
[2026-06-13 19:08:25,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:08:25,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:08:26,001.001 INFO    ] No existing commands found in stream
[2026-06-13 19:08:31,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:08:31,016.016 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 19:08:31,413.413 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:08:31,439.439 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 19:08:31,448.448 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4f7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 19:08:31,457.457 INFO    ] None
[2026-06-13 19:08:31,460.460 INFO    ] Checking for system updates...
[2026-06-13 19:08:31,510.510 INFO    ] 200
[2026-06-13 19:08:31,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:31,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:31,584.584 INFO    ] No update needed
[2026-06-13 19:08:31,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 19:08:31,631.631 INFO    ] 200
[2026-06-13 19:08:31,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:31,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:08:36,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:36,804.804 INFO    ] No camera update needed
[2026-06-13 19:08:36,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:08:36,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:08:36,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:08:36,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:08:38,859.859 INFO    ] ================================================
[2026-06-13 19:08:38,874.874 INFO    ] Launching Daemon at Sat Jun 13 19:08:38 IST 2026
[2026-06-13 19:08:38,885.885 INFO    ] ================================================
[2026-06-13 19:08:39,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:08:39
[2026-06-13 19:08:39,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:08:39,732.732 INFO    ] Initializing speech engine...
[2026-06-13 19:08:39,737.737 INFO    ] 2026-06-13 19:08:39
[2026-06-13 19:08:39,945.945 INFO    ] 2026-06-13 19:08:39
[2026-06-13 19:08:39,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:08:40,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:08:40,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:08:40,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:08:40,338.338 INFO    ] time= 13/06/2026 19:08:40
[2026-06-13 19:08:40,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:08:40,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:08:40,465.465 INFO    ] No existing commands found in stream
[2026-06-13 19:08:45,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:08:45,480.480 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 19:08:47,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:08:47,503.503 INFO    ] Checking for system updates...
[2026-06-13 19:08:47,524.524 INFO    ] 200
[2026-06-13 19:08:47,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:47,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:08:47,557.557 INFO    ] No update needed
[2026-06-13 19:08:47,558.558 INFO    ] Checking for camera pi updates...
[2026-06-13 19:08:47,578.578 INFO    ] 200
[2026-06-13 19:08:47,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:47,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:08:47,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:08:47,744.744 INFO    ] No camera update needed
[2026-06-13 19:08:47,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:08:47,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:08:47,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:08:47,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:08:49,795.795 INFO    ] ================================================
[2026-06-13 19:08:49,810.810 INFO    ] Launching Daemon at Sat Jun 13 19:08:49 IST 2026
[2026-06-13 19:08:49,820.820 INFO    ] ================================================
[2026-06-13 19:08:50,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:08:50
[2026-06-13 19:08:50,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:08:50,659.659 INFO    ] Initializing speech engine...
[2026-06-13 19:08:50,662.662 INFO    ] 2026-06-13 19:08:50
[2026-06-13 19:08:50,869.869 INFO    ] 2026-06-13 19:08:50
[2026-06-13 19:08:50,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:08:51,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:08:51,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:08:51,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:08:51,281.281 INFO    ] time= 13/06/2026 19:08:51
[2026-06-13 19:08:51,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:08:51,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:08:51,387.387 INFO    ] No existing commands found in stream
[2026-06-13 19:08:56,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:08:56,397.397 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 19:08:59,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:08:59,395.395 INFO    ] Checking for system updates...
[2026-06-13 19:08:59,418.418 INFO    ] 200
[2026-06-13 19:08:59,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:59,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:59,451.451 INFO    ] No update needed
[2026-06-13 19:08:59,453.453 INFO    ] Checking for camera pi updates...
[2026-06-13 19:08:59,473.473 INFO    ] 200
[2026-06-13 19:08:59,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:08:59,497.497 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:08:59,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:08:59,535.535 INFO    ] No camera update needed
[2026-06-13 19:08:59,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:08:59,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:08:59,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:08:59,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:01,577.577 INFO    ] ================================================
[2026-06-13 19:09:01,588.588 INFO    ] Launching Daemon at Sat Jun 13 19:09:01 IST 2026
[2026-06-13 19:09:01,596.596 INFO    ] ================================================
[2026-06-13 19:09:01,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:01
[2026-06-13 19:09:02,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:02,436.436 INFO    ] Initializing speech engine...
[2026-06-13 19:09:02,440.440 INFO    ] 2026-06-13 19:09:02
[2026-06-13 19:09:02,655.655 INFO    ] 2026-06-13 19:09:02
[2026-06-13 19:09:02,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:02,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:02,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:03,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:03,057.057 INFO    ] time= 13/06/2026 19:09:03
[2026-06-13 19:09:03,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:03,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:03,204.204 INFO    ] No existing commands found in stream
[2026-06-13 19:09:08,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:09:08,232.232 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 19:09:11,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:09:11,928.928 INFO    ] Checking for system updates...
[2026-06-13 19:09:11,949.949 INFO    ] 200
[2026-06-13 19:09:11,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:11,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:09:11,982.982 INFO    ] No update needed
[2026-06-13 19:09:11,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 19:09:12,002.002 INFO    ] 200
[2026-06-13 19:09:12,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:12,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:09:12,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:09:12,071.071 INFO    ] No camera update needed
[2026-06-13 19:09:12,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:09:12,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:09:12,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:09:12,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:14,119.119 INFO    ] ================================================
[2026-06-13 19:09:14,134.134 INFO    ] Launching Daemon at Sat Jun 13 19:09:14 IST 2026
[2026-06-13 19:09:14,145.145 INFO    ] ================================================
[2026-06-13 19:09:14,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:14
[2026-06-13 19:09:14,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:14,988.988 INFO    ] Initializing speech engine...
[2026-06-13 19:09:14,994.994 INFO    ] 2026-06-13 19:09:14
[2026-06-13 19:09:15,201.201 INFO    ] 2026-06-13 19:09:15
[2026-06-13 19:09:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:15,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:15,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:15,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:15,619.619 INFO    ] time= 13/06/2026 19:09:15
[2026-06-13 19:09:15,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:15,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:15,720.720 INFO    ] No existing commands found in stream
[2026-06-13 19:09:20,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:09:20,732.732 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 19:09:21,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:09:21,604.604 INFO    ] Checking for system updates...
[2026-06-13 19:09:21,627.627 INFO    ] 200
[2026-06-13 19:09:21,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:21,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:09:21,663.663 INFO    ] No update needed
[2026-06-13 19:09:21,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 19:09:21,686.686 INFO    ] 200
[2026-06-13 19:09:21,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:21,712.712 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:09:21,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:09:21,761.761 INFO    ] No camera update needed
[2026-06-13 19:09:21,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:09:21,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:09:21,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:09:21,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:23,808.808 INFO    ] ================================================
[2026-06-13 19:09:23,823.823 INFO    ] Launching Daemon at Sat Jun 13 19:09:23 IST 2026
[2026-06-13 19:09:23,834.834 INFO    ] ================================================
[2026-06-13 19:09:24,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:24
[2026-06-13 19:09:24,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:24,630.630 INFO    ] Initializing speech engine...
[2026-06-13 19:09:24,634.634 INFO    ] 2026-06-13 19:09:24
[2026-06-13 19:09:24,861.861 INFO    ] 2026-06-13 19:09:24
[2026-06-13 19:09:24,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:25,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:25,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:25,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:25,287.287 INFO    ] time= 13/06/2026 19:09:25
[2026-06-13 19:09:25,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:25,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:25,409.409 INFO    ] No existing commands found in stream
[2026-06-13 19:09:30,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:09:30,423.423 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 19:09:32,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:09:32,253.253 INFO    ] Checking for system updates...
[2026-06-13 19:09:32,273.273 INFO    ] 200
[2026-06-13 19:09:32,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:32,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:09:32,308.308 INFO    ] No update needed
[2026-06-13 19:09:32,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 19:09:32,330.330 INFO    ] 200
[2026-06-13 19:09:32,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:32,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:09:32,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:09:32,380.380 INFO    ] No camera update needed
[2026-06-13 19:09:32,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:09:32,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:09:32,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:09:32,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:34,427.427 INFO    ] ================================================
[2026-06-13 19:09:34,442.442 INFO    ] Launching Daemon at Sat Jun 13 19:09:34 IST 2026
[2026-06-13 19:09:34,453.453 INFO    ] ================================================
[2026-06-13 19:09:34,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:34
[2026-06-13 19:09:35,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:35,245.245 INFO    ] Initializing speech engine...
[2026-06-13 19:09:35,251.251 INFO    ] 2026-06-13 19:09:35
[2026-06-13 19:09:35,457.457 INFO    ] 2026-06-13 19:09:35
[2026-06-13 19:09:35,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:35,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:35,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:35,879.879 INFO    ] time= 13/06/2026 19:09:35
[2026-06-13 19:09:35,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:35,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:35,976.976 INFO    ] No existing commands found in stream
[2026-06-13 19:09:40,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:09:40,990.990 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 19:09:42,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:09:42,255.255 INFO    ] Checking for system updates...
[2026-06-13 19:09:42,277.277 INFO    ] 200
[2026-06-13 19:09:42,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:42,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:09:42,311.311 INFO    ] No update needed
[2026-06-13 19:09:42,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 19:09:42,332.332 INFO    ] 200
[2026-06-13 19:09:42,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:42,373.373 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:09:42,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:09:42,416.416 INFO    ] No camera update needed
[2026-06-13 19:09:42,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:09:42,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:09:42,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:09:42,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:44,472.472 INFO    ] ================================================
[2026-06-13 19:09:44,487.487 INFO    ] Launching Daemon at Sat Jun 13 19:09:44 IST 2026
[2026-06-13 19:09:44,498.498 INFO    ] ================================================
[2026-06-13 19:09:45,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:45
[2026-06-13 19:09:45,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:45,721.721 INFO    ] Initializing speech engine...
[2026-06-13 19:09:45,734.734 INFO    ] 2026-06-13 19:09:45
[2026-06-13 19:09:45,938.938 INFO    ] 2026-06-13 19:09:45
[2026-06-13 19:09:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:46,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:46,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:46,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:46,360.360 INFO    ] time= 13/06/2026 19:09:46
[2026-06-13 19:09:46,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:46,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:46,456.456 INFO    ] No existing commands found in stream
[2026-06-13 19:09:51,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:09:51,468.468 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 19:09:54,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:09:54,912.912 INFO    ] Checking for system updates...
[2026-06-13 19:09:54,935.935 INFO    ] 200
[2026-06-13 19:09:54,937.937 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:54,939.939 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 19:09:54,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 19:09:54,962.962 INFO    ] 200
[2026-06-13 19:09:54,964.964 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 19:09:54,965.965 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 19:09:54,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:09:54,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:09:54,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:09:54,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:09:57,010.010 INFO    ] ================================================
[2026-06-13 19:09:57,025.025 INFO    ] Launching Daemon at Sat Jun 13 19:09:57 IST 2026
[2026-06-13 19:09:57,036.036 INFO    ] ================================================
[2026-06-13 19:09:57,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:09:57
[2026-06-13 19:09:57,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:09:57,848.848 INFO    ] Initializing speech engine...
[2026-06-13 19:09:57,851.851 INFO    ] 2026-06-13 19:09:57
[2026-06-13 19:09:58,044.044 INFO    ] 2026-06-13 19:09:58
[2026-06-13 19:09:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:09:58,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:09:58,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:09:58,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:09:58,471.471 INFO    ] time= 13/06/2026 19:09:58
[2026-06-13 19:09:58,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:09:58,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:09:58,646.646 INFO    ] No existing commands found in stream
[2026-06-13 19:10:03,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:10:03,660.660 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 19:10:07,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:10:07,939.939 INFO    ] Checking for system updates...
[2026-06-13 19:10:07,975.975 INFO    ] 200
[2026-06-13 19:10:07,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:08,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:08,015.015 INFO    ] No update needed
[2026-06-13 19:10:08,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 19:10:08,037.037 INFO    ] 200
[2026-06-13 19:10:08,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:08,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:10:08,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:08,098.098 INFO    ] No camera update needed
[2026-06-13 19:10:08,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:10:08,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:10:08,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:10:08,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:10:10,145.145 INFO    ] ================================================
[2026-06-13 19:10:10,161.161 INFO    ] Launching Daemon at Sat Jun 13 19:10:10 IST 2026
[2026-06-13 19:10:10,171.171 INFO    ] ================================================
[2026-06-13 19:10:10,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:10:10
[2026-06-13 19:10:10,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:10:10,997.997 INFO    ] Initializing speech engine...
[2026-06-13 19:10:11,002.002 INFO    ] 2026-06-13 19:10:10
[2026-06-13 19:10:11,207.207 INFO    ] 2026-06-13 19:10:11
[2026-06-13 19:10:11,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:10:11,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:10:11,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:10:11,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:10:11,625.625 INFO    ] time= 13/06/2026 19:10:11
[2026-06-13 19:10:11,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:10:11,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:10:11,721.721 INFO    ] No existing commands found in stream
[2026-06-13 19:10:16,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:10:16,735.735 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 19:10:20,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:10:20,463.463 INFO    ] Checking for system updates...
[2026-06-13 19:10:20,485.485 INFO    ] 200
[2026-06-13 19:10:20,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:20,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:10:20,518.518 INFO    ] No update needed
[2026-06-13 19:10:20,519.519 INFO    ] Checking for camera pi updates...
[2026-06-13 19:10:20,540.540 INFO    ] 200
[2026-06-13 19:10:20,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:20,565.565 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:10:20,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:10:20,605.605 INFO    ] No camera update needed
[2026-06-13 19:10:20,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:10:20,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:10:20,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:10:20,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:10:22,655.655 INFO    ] ================================================
[2026-06-13 19:10:22,670.670 INFO    ] Launching Daemon at Sat Jun 13 19:10:22 IST 2026
[2026-06-13 19:10:22,681.681 INFO    ] ================================================
[2026-06-13 19:10:23,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:10:23
[2026-06-13 19:10:23,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:10:23,565.565 INFO    ] Initializing speech engine...
[2026-06-13 19:10:23,571.571 INFO    ] 2026-06-13 19:10:23
[2026-06-13 19:10:23,779.779 INFO    ] 2026-06-13 19:10:23
[2026-06-13 19:10:23,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:10:23,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:10:23,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:10:24,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:10:24,186.186 INFO    ] time= 13/06/2026 19:10:24
[2026-06-13 19:10:24,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:10:24,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:10:24,299.299 INFO    ] No existing commands found in stream
[2026-06-13 19:10:29,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:10:29,317.317 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 19:10:33,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:10:33,116.116 INFO    ] Checking for system updates...
[2026-06-13 19:10:33,138.138 INFO    ] 200
[2026-06-13 19:10:33,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:33,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:33,175.175 INFO    ] No update needed
[2026-06-13 19:10:33,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 19:10:33,198.198 INFO    ] 200
[2026-06-13 19:10:33,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:33,223.223 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:10:33,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:33,262.262 INFO    ] No camera update needed
[2026-06-13 19:10:33,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:10:33,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:10:33,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:10:33,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:10:35,312.312 INFO    ] ================================================
[2026-06-13 19:10:35,327.327 INFO    ] Launching Daemon at Sat Jun 13 19:10:35 IST 2026
[2026-06-13 19:10:35,337.337 INFO    ] ================================================
[2026-06-13 19:10:35,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:10:35
[2026-06-13 19:10:36,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:10:36,191.191 INFO    ] Initializing speech engine...
[2026-06-13 19:10:36,206.206 INFO    ] 2026-06-13 19:10:36
[2026-06-13 19:10:36,415.415 INFO    ] 2026-06-13 19:10:36
[2026-06-13 19:10:36,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:10:36,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:10:36,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:10:36,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:10:36,726.726 INFO    ] time= 13/06/2026 19:10:36
[2026-06-13 19:10:36,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:10:36,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:10:36,871.871 INFO    ] No existing commands found in stream
[2026-06-13 19:10:41,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:10:41,888.888 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 19:10:44,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:10:44,909.909 INFO    ] Checking for system updates...
[2026-06-13 19:10:44,930.930 INFO    ] 200
[2026-06-13 19:10:44,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:44,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:44,964.964 INFO    ] No update needed
[2026-06-13 19:10:44,965.965 INFO    ] Checking for camera pi updates...
[2026-06-13 19:10:44,985.985 INFO    ] 200
[2026-06-13 19:10:44,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:45,012.012 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:10:45,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:10:45,051.051 INFO    ] No camera update needed
[2026-06-13 19:10:45,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:10:45,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:10:45,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:10:45,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:10:47,100.100 INFO    ] ================================================
[2026-06-13 19:10:47,116.116 INFO    ] Launching Daemon at Sat Jun 13 19:10:47 IST 2026
[2026-06-13 19:10:47,127.127 INFO    ] ================================================
[2026-06-13 19:10:47,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:10:47
[2026-06-13 19:10:47,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:10:47,913.913 INFO    ] Initializing speech engine...
[2026-06-13 19:10:47,924.924 INFO    ] 2026-06-13 19:10:47
[2026-06-13 19:10:48,129.129 INFO    ] 2026-06-13 19:10:48
[2026-06-13 19:10:48,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:10:48,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:10:48,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:10:48,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:10:48,479.479 INFO    ] time= 13/06/2026 19:10:48
[2026-06-13 19:10:48,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:10:48,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:10:48,662.662 INFO    ] No existing commands found in stream
[2026-06-13 19:10:53,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:10:53,674.674 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 19:10:57,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:10:57,597.597 INFO    ] Checking for system updates...
[2026-06-13 19:10:57,619.619 INFO    ] 200
[2026-06-13 19:10:57,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:57,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:10:57,655.655 INFO    ] No update needed
[2026-06-13 19:10:57,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 19:10:57,677.677 INFO    ] 200
[2026-06-13 19:10:57,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:10:57,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:10:57,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:10:57,847.847 INFO    ] No camera update needed
[2026-06-13 19:10:57,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:10:57,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:10:57,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:10:57,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:10:59,897.897 INFO    ] ================================================
[2026-06-13 19:10:59,912.912 INFO    ] Launching Daemon at Sat Jun 13 19:10:59 IST 2026
[2026-06-13 19:10:59,923.923 INFO    ] ================================================
[2026-06-13 19:11:00,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:00
[2026-06-13 19:11:00,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:00,726.726 INFO    ] Initializing speech engine...
[2026-06-13 19:11:00,736.736 INFO    ] 2026-06-13 19:11:00
[2026-06-13 19:11:00,953.953 INFO    ] 2026-06-13 19:11:00
[2026-06-13 19:11:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:01,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:01,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:01,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:01,314.314 INFO    ] time= 13/06/2026 19:11:01
[2026-06-13 19:11:01,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:01,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:01,517.517 INFO    ] No existing commands found in stream
[2026-06-13 19:11:06,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:11:06,533.533 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 19:11:09,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:11:09,504.504 INFO    ] Checking for system updates...
[2026-06-13 19:11:09,525.525 INFO    ] 200
[2026-06-13 19:11:09,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:09,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:09,559.559 INFO    ] No update needed
[2026-06-13 19:11:09,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 19:11:09,580.580 INFO    ] 200
[2026-06-13 19:11:09,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:09,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:11:09,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:09,673.673 INFO    ] No camera update needed
[2026-06-13 19:11:09,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:11:09,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:11:09,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:11:09,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:11:11,722.722 INFO    ] ================================================
[2026-06-13 19:11:11,737.737 INFO    ] Launching Daemon at Sat Jun 13 19:11:11 IST 2026
[2026-06-13 19:11:11,747.747 INFO    ] ================================================
[2026-06-13 19:11:12,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:12
[2026-06-13 19:11:12,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:12,527.527 INFO    ] Initializing speech engine...
[2026-06-13 19:11:12,532.532 INFO    ] 2026-06-13 19:11:12
[2026-06-13 19:11:12,740.740 INFO    ] 2026-06-13 19:11:12
[2026-06-13 19:11:12,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:12,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:12,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:13,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:13,143.143 INFO    ] time= 13/06/2026 19:11:13
[2026-06-13 19:11:13,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:13,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:13,259.259 INFO    ] No existing commands found in stream
[2026-06-13 19:11:18,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:11:18,274.274 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 19:11:19,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:11:19,785.785 INFO    ] Checking for system updates...
[2026-06-13 19:11:19,806.806 INFO    ] 200
[2026-06-13 19:11:19,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:19,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:19,840.840 INFO    ] No update needed
[2026-06-13 19:11:19,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 19:11:19,861.861 INFO    ] 200
[2026-06-13 19:11:19,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:19,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:11:19,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:19,935.935 INFO    ] No camera update needed
[2026-06-13 19:11:19,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:11:19,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:11:19,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:11:19,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:11:21,984.984 INFO    ] ================================================
[2026-06-13 19:11:22,999.999 INFO    ] Launching Daemon at Sat Jun 13 19:11:21 IST 2026
[2026-06-13 19:11:22,009.009 INFO    ] ================================================
[2026-06-13 19:11:22,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:22
[2026-06-13 19:11:22,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:22,829.829 INFO    ] Initializing speech engine...
[2026-06-13 19:11:22,840.840 INFO    ] 2026-06-13 19:11:22
[2026-06-13 19:11:23,042.042 INFO    ] 2026-06-13 19:11:23
[2026-06-13 19:11:23,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:23,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:23,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:23,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:23,441.441 INFO    ] time= 13/06/2026 19:11:23
[2026-06-13 19:11:23,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:23,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:23,564.564 INFO    ] No existing commands found in stream
[2026-06-13 19:11:28,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:11:28,577.577 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 19:11:29,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:11:29,702.702 INFO    ] Checking for system updates...
[2026-06-13 19:11:29,722.722 INFO    ] 200
[2026-06-13 19:11:29,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:29,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:11:29,757.757 INFO    ] No update needed
[2026-06-13 19:11:29,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 19:11:29,781.781 INFO    ] 200
[2026-06-13 19:11:29,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:29,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:11:29,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:11:29,843.843 INFO    ] No camera update needed
[2026-06-13 19:11:29,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:11:29,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:11:29,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:11:29,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:11:31,893.893 INFO    ] ================================================
[2026-06-13 19:11:31,909.909 INFO    ] Launching Daemon at Sat Jun 13 19:11:31 IST 2026
[2026-06-13 19:11:31,921.921 INFO    ] ================================================
[2026-06-13 19:11:32,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:32
[2026-06-13 19:11:32,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:32,815.815 INFO    ] Initializing speech engine...
[2026-06-13 19:11:32,821.821 INFO    ] 2026-06-13 19:11:32
[2026-06-13 19:11:33,027.027 INFO    ] 2026-06-13 19:11:33
[2026-06-13 19:11:33,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:33,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:33,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:33,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:33,448.448 INFO    ] time= 13/06/2026 19:11:33
[2026-06-13 19:11:33,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:33,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:33,545.545 INFO    ] No existing commands found in stream
[2026-06-13 19:11:38,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:11:38,573.573 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 19:11:42,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:11:42,164.164 INFO    ] Checking for system updates...
[2026-06-13 19:11:42,185.185 INFO    ] 200
[2026-06-13 19:11:42,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:42,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:11:42,219.219 INFO    ] No update needed
[2026-06-13 19:11:42,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 19:11:42,241.241 INFO    ] 200
[2026-06-13 19:11:42,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:42,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:11:42,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:11:42,304.304 INFO    ] No camera update needed
[2026-06-13 19:11:42,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:11:42,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:11:42,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:11:42,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:11:44,351.351 INFO    ] ================================================
[2026-06-13 19:11:44,366.366 INFO    ] Launching Daemon at Sat Jun 13 19:11:44 IST 2026
[2026-06-13 19:11:44,377.377 INFO    ] ================================================
[2026-06-13 19:11:44,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:44
[2026-06-13 19:11:45,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:45,187.187 INFO    ] Initializing speech engine...
[2026-06-13 19:11:45,192.192 INFO    ] 2026-06-13 19:11:45
[2026-06-13 19:11:45,395.395 INFO    ] 2026-06-13 19:11:45
[2026-06-13 19:11:45,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:45,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:45,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:45,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:45,801.801 INFO    ] time= 13/06/2026 19:11:45
[2026-06-13 19:11:45,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:45,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:45,993.993 INFO    ] No existing commands found in stream
[2026-06-13 19:11:51,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:11:51,015.015 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 19:11:55,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:11:55,101.101 INFO    ] Checking for system updates...
[2026-06-13 19:11:55,122.122 INFO    ] 200
[2026-06-13 19:11:55,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:55,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:55,155.155 INFO    ] No update needed
[2026-06-13 19:11:55,157.157 INFO    ] Checking for camera pi updates...
[2026-06-13 19:11:55,176.176 INFO    ] 200
[2026-06-13 19:11:55,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:11:55,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:11:55,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:11:55,249.249 INFO    ] No camera update needed
[2026-06-13 19:11:55,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:11:55,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:11:55,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:11:55,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:11:57,300.300 INFO    ] ================================================
[2026-06-13 19:11:57,315.315 INFO    ] Launching Daemon at Sat Jun 13 19:11:57 IST 2026
[2026-06-13 19:11:57,326.326 INFO    ] ================================================
[2026-06-13 19:11:57,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:11:57
[2026-06-13 19:11:58,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:11:58,163.163 INFO    ] Initializing speech engine...
[2026-06-13 19:11:58,169.169 INFO    ] 2026-06-13 19:11:58
[2026-06-13 19:11:58,378.378 INFO    ] 2026-06-13 19:11:58
[2026-06-13 19:11:58,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:11:58,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:11:58,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:11:58,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:11:58,800.800 INFO    ] time= 13/06/2026 19:11:58
[2026-06-13 19:11:58,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:11:58,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:11:58,903.903 INFO    ] No existing commands found in stream
[2026-06-13 19:12:03,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:03,915.915 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 19:12:04,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:12:04,463.463 INFO    ] Checking for system updates...
[2026-06-13 19:12:04,499.499 INFO    ] 200
[2026-06-13 19:12:04,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:04,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:04,561.561 INFO    ] No update needed
[2026-06-13 19:12:04,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 19:12:04,597.597 INFO    ] 200
[2026-06-13 19:12:04,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:04,641.641 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:12:04,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:04,684.684 INFO    ] No camera update needed
[2026-06-13 19:12:04,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:12:04,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:12:04,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:12:04,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:12:06,742.742 INFO    ] ================================================
[2026-06-13 19:12:06,756.756 INFO    ] Launching Daemon at Sat Jun 13 19:12:06 IST 2026
[2026-06-13 19:12:06,767.767 INFO    ] ================================================
[2026-06-13 19:12:07,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:12:07
[2026-06-13 19:12:07,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:12:07,560.560 INFO    ] Initializing speech engine...
[2026-06-13 19:12:07,566.566 INFO    ] 2026-06-13 19:12:07
[2026-06-13 19:12:07,771.771 INFO    ] 2026-06-13 19:12:07
[2026-06-13 19:12:07,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:12:07,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:12:07,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:12:08,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:12:08,180.180 INFO    ] time= 13/06/2026 19:12:08
[2026-06-13 19:12:08,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:12:08,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:12:08,293.293 INFO    ] No existing commands found in stream
[2026-06-13 19:12:13,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:13,306.306 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 19:12:14,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:12:14,441.441 INFO    ] Checking for system updates...
[2026-06-13 19:12:14,461.461 INFO    ] 200
[2026-06-13 19:12:14,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:14,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:14,494.494 INFO    ] No update needed
[2026-06-13 19:12:14,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 19:12:14,515.515 INFO    ] 200
[2026-06-13 19:12:14,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:14,543.543 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:12:14,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:12:14,583.583 INFO    ] No camera update needed
[2026-06-13 19:12:14,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:12:14,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:12:14,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:12:14,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:12:16,631.631 INFO    ] ================================================
[2026-06-13 19:12:16,647.647 INFO    ] Launching Daemon at Sat Jun 13 19:12:16 IST 2026
[2026-06-13 19:12:16,658.658 INFO    ] ================================================
[2026-06-13 19:12:17,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:12:17
[2026-06-13 19:12:17,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:12:17,480.480 INFO    ] Initializing speech engine...
[2026-06-13 19:12:17,491.491 INFO    ] 2026-06-13 19:12:17
[2026-06-13 19:12:17,701.701 INFO    ] 2026-06-13 19:12:17
[2026-06-13 19:12:17,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:12:17,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:12:17,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:12:18,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:12:18,105.105 INFO    ] time= 13/06/2026 19:12:18
[2026-06-13 19:12:18,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:12:18,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:12:18,223.223 INFO    ] No existing commands found in stream
[2026-06-13 19:12:23,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:23,241.241 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 19:12:27,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:12:27,289.289 INFO    ] Checking for system updates...
[2026-06-13 19:12:27,310.310 INFO    ] 200
[2026-06-13 19:12:27,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:27,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:27,345.345 INFO    ] No update needed
[2026-06-13 19:12:27,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 19:12:27,367.367 INFO    ] 200
[2026-06-13 19:12:27,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:27,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:12:27,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:27,432.432 INFO    ] No camera update needed
[2026-06-13 19:12:27,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:12:27,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:12:27,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:12:27,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:12:29,479.479 INFO    ] ================================================
[2026-06-13 19:12:29,494.494 INFO    ] Launching Daemon at Sat Jun 13 19:12:29 IST 2026
[2026-06-13 19:12:29,505.505 INFO    ] ================================================
[2026-06-13 19:12:29,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:12:29
[2026-06-13 19:12:30,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:12:30,323.323 INFO    ] Initializing speech engine...
[2026-06-13 19:12:30,329.329 INFO    ] 2026-06-13 19:12:30
[2026-06-13 19:12:30,528.528 INFO    ] 2026-06-13 19:12:30
[2026-06-13 19:12:30,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:12:30,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:12:30,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:12:30,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:12:30,873.873 INFO    ] time= 13/06/2026 19:12:30
[2026-06-13 19:12:30,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:12:30,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:12:31,043.043 INFO    ] No existing commands found in stream
[2026-06-13 19:12:36,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:36,071.071 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 19:12:37,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:12:37,357.357 INFO    ] Checking for system updates...
[2026-06-13 19:12:37,377.377 INFO    ] 200
[2026-06-13 19:12:37,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:37,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:37,410.410 INFO    ] No update needed
[2026-06-13 19:12:37,412.412 INFO    ] Checking for camera pi updates...
[2026-06-13 19:12:37,431.431 INFO    ] 200
[2026-06-13 19:12:37,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:37,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:12:37,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:12:37,496.496 INFO    ] No camera update needed
[2026-06-13 19:12:37,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:12:37,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:12:37,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:12:37,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:12:39,541.541 INFO    ] ================================================
[2026-06-13 19:12:39,556.556 INFO    ] Launching Daemon at Sat Jun 13 19:12:39 IST 2026
[2026-06-13 19:12:39,567.567 INFO    ] ================================================
[2026-06-13 19:12:39,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:12:39
[2026-06-13 19:12:40,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:12:40,410.410 INFO    ] Initializing speech engine...
[2026-06-13 19:12:40,414.414 INFO    ] 2026-06-13 19:12:40
[2026-06-13 19:12:40,629.629 INFO    ] 2026-06-13 19:12:40
[2026-06-13 19:12:40,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:12:40,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:12:40,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:12:40,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:12:41,033.033 INFO    ] time= 13/06/2026 19:12:40
[2026-06-13 19:12:41,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:12:41,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:12:41,143.143 INFO    ] No existing commands found in stream
[2026-06-13 19:12:46,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:46,154.154 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 19:12:50,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:12:50,023.023 INFO    ] Checking for system updates...
[2026-06-13 19:12:50,045.045 INFO    ] 200
[2026-06-13 19:12:50,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:50,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:50,079.079 INFO    ] No update needed
[2026-06-13 19:12:50,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 19:12:50,100.100 INFO    ] 200
[2026-06-13 19:12:50,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:12:50,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:12:50,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:12:50,171.171 INFO    ] No camera update needed
[2026-06-13 19:12:50,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:12:50,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:12:50,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:12:50,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:12:52,218.218 INFO    ] ================================================
[2026-06-13 19:12:52,233.233 INFO    ] Launching Daemon at Sat Jun 13 19:12:52 IST 2026
[2026-06-13 19:12:52,243.243 INFO    ] ================================================
[2026-06-13 19:12:52,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:12:52
[2026-06-13 19:12:52,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:12:53,038.038 INFO    ] Initializing speech engine...
[2026-06-13 19:12:53,048.048 INFO    ] 2026-06-13 19:12:53
[2026-06-13 19:12:53,256.256 INFO    ] 2026-06-13 19:12:53
[2026-06-13 19:12:53,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:12:53,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:12:53,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:12:53,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:12:53,683.683 INFO    ] time= 13/06/2026 19:12:53
[2026-06-13 19:12:53,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:12:53,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:12:53,834.834 INFO    ] No existing commands found in stream
[2026-06-13 19:12:58,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:12:58,852.852 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 19:13:01,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:13:01,682.682 INFO    ] Checking for system updates...
[2026-06-13 19:13:01,704.704 INFO    ] 200
[2026-06-13 19:13:01,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:01,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:01,739.739 INFO    ] No update needed
[2026-06-13 19:13:01,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 19:13:01,761.761 INFO    ] 200
[2026-06-13 19:13:01,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:01,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:13:01,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:01,930.930 INFO    ] No camera update needed
[2026-06-13 19:13:01,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:13:01,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:13:01,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:13:01,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:13:03,980.980 INFO    ] ================================================
[2026-06-13 19:13:04,996.996 INFO    ] Launching Daemon at Sat Jun 13 19:13:03 IST 2026
[2026-06-13 19:13:04,006.006 INFO    ] ================================================
[2026-06-13 19:13:04,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:13:04
[2026-06-13 19:13:04,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:13:05,260.260 INFO    ] Initializing speech engine...
[2026-06-13 19:13:05,269.269 INFO    ] 2026-06-13 19:13:05
[2026-06-13 19:13:05,520.520 INFO    ] 2026-06-13 19:13:05
[2026-06-13 19:13:05,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:13:05,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:13:05,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:13:05,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:13:05,907.907 INFO    ] time= 13/06/2026 19:13:05
[2026-06-13 19:13:05,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:13:05,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:13:06,111.111 INFO    ] No existing commands found in stream
[2026-06-13 19:13:11,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:13:11,132.132 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 19:13:14,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:13:14,794.794 INFO    ] Checking for system updates...
[2026-06-13 19:13:14,816.816 INFO    ] 200
[2026-06-13 19:13:14,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:14,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:13:14,851.851 INFO    ] No update needed
[2026-06-13 19:13:14,852.852 INFO    ] Checking for camera pi updates...
[2026-06-13 19:13:14,872.872 INFO    ] 200
[2026-06-13 19:13:14,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:14,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:13:14,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:13:14,940.940 INFO    ] No camera update needed
[2026-06-13 19:13:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:13:14,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:13:14,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:13:14,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:13:16,988.988 INFO    ] ================================================
[2026-06-13 19:13:17,004.004 INFO    ] Launching Daemon at Sat Jun 13 19:13:16 IST 2026
[2026-06-13 19:13:17,014.014 INFO    ] ================================================
[2026-06-13 19:13:17,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:13:17
[2026-06-13 19:13:17,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:13:17,832.832 INFO    ] Initializing speech engine...
[2026-06-13 19:13:17,843.843 INFO    ] 2026-06-13 19:13:17
[2026-06-13 19:13:18,048.048 INFO    ] 2026-06-13 19:13:18
[2026-06-13 19:13:18,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:13:18,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:13:18,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:13:18,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:13:18,463.463 INFO    ] time= 13/06/2026 19:13:18
[2026-06-13 19:13:18,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:13:18,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:13:18,572.572 INFO    ] No existing commands found in stream
[2026-06-13 19:13:23,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:13:23,583.583 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 19:13:27,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:13:27,120.120 INFO    ] Checking for system updates...
[2026-06-13 19:13:27,141.141 INFO    ] 200
[2026-06-13 19:13:27,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:27,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:13:27,176.176 INFO    ] No update needed
[2026-06-13 19:13:27,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 19:13:27,199.199 INFO    ] 200
[2026-06-13 19:13:27,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:27,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:13:27,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:13:27,269.269 INFO    ] No camera update needed
[2026-06-13 19:13:27,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:13:27,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:13:27,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:13:27,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:13:29,316.316 INFO    ] ================================================
[2026-06-13 19:13:29,331.331 INFO    ] Launching Daemon at Sat Jun 13 19:13:29 IST 2026
[2026-06-13 19:13:29,342.342 INFO    ] ================================================
[2026-06-13 19:13:29,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:13:29
[2026-06-13 19:13:29,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:13:30,110.110 INFO    ] Initializing speech engine...
[2026-06-13 19:13:30,113.113 INFO    ] 2026-06-13 19:13:30
[2026-06-13 19:13:30,327.327 INFO    ] 2026-06-13 19:13:30
[2026-06-13 19:13:30,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:13:30,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:13:30,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:13:30,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:13:30,729.729 INFO    ] time= 13/06/2026 19:13:30
[2026-06-13 19:13:30,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:13:30,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:13:30,843.843 INFO    ] No existing commands found in stream
[2026-06-13 19:13:35,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:13:35,856.856 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 19:13:40,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:13:40,073.073 INFO    ] Checking for system updates...
[2026-06-13 19:13:40,094.094 INFO    ] 200
[2026-06-13 19:13:40,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:40,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:40,130.130 INFO    ] No update needed
[2026-06-13 19:13:40,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 19:13:40,151.151 INFO    ] 200
[2026-06-13 19:13:40,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:40,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:13:40,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:40,220.220 INFO    ] No camera update needed
[2026-06-13 19:13:40,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:13:40,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:13:40,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:13:40,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:13:42,270.270 INFO    ] ================================================
[2026-06-13 19:13:42,285.285 INFO    ] Launching Daemon at Sat Jun 13 19:13:42 IST 2026
[2026-06-13 19:13:42,295.295 INFO    ] ================================================
[2026-06-13 19:13:42,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:13:42
[2026-06-13 19:13:42,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:13:43,098.098 INFO    ] Initializing speech engine...
[2026-06-13 19:13:43,103.103 INFO    ] 2026-06-13 19:13:43
[2026-06-13 19:13:43,306.306 INFO    ] 2026-06-13 19:13:43
[2026-06-13 19:13:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:13:43,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:13:43,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:13:43,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:13:43,718.718 INFO    ] time= 13/06/2026 19:13:43
[2026-06-13 19:13:43,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:13:43,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:13:43,940.940 INFO    ] No existing commands found in stream
[2026-06-13 19:13:48,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:13:48,970.970 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 19:13:52,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:13:52,852.852 INFO    ] Checking for system updates...
[2026-06-13 19:13:52,873.873 INFO    ] 200
[2026-06-13 19:13:52,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:52,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:52,906.906 INFO    ] No update needed
[2026-06-13 19:13:52,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 19:13:52,927.927 INFO    ] 200
[2026-06-13 19:13:52,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:13:52,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:13:52,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:13:52,990.990 INFO    ] No camera update needed
[2026-06-13 19:13:52,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:13:52,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:13:52,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:13:52,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:13:55,038.038 INFO    ] ================================================
[2026-06-13 19:13:55,054.054 INFO    ] Launching Daemon at Sat Jun 13 19:13:55 IST 2026
[2026-06-13 19:13:55,065.065 INFO    ] ================================================
[2026-06-13 19:13:55,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:13:55
[2026-06-13 19:13:55,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:13:55,851.851 INFO    ] Initializing speech engine...
[2026-06-13 19:13:55,858.858 INFO    ] 2026-06-13 19:13:55
[2026-06-13 19:13:56,056.056 INFO    ] 2026-06-13 19:13:56
[2026-06-13 19:13:56,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:13:56,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:13:56,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:13:56,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:13:56,453.453 INFO    ] time= 13/06/2026 19:13:56
[2026-06-13 19:13:56,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:13:56,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:13:56,566.566 INFO    ] No existing commands found in stream
[2026-06-13 19:14:01,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:01,578.578 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 19:14:04,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:14:04,561.561 INFO    ] Checking for system updates...
[2026-06-13 19:14:04,583.583 INFO    ] 200
[2026-06-13 19:14:04,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:04,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:14:04,618.618 INFO    ] No update needed
[2026-06-13 19:14:04,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 19:14:04,640.640 INFO    ] 200
[2026-06-13 19:14:04,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:04,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:14:04,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:14:04,707.707 INFO    ] No camera update needed
[2026-06-13 19:14:04,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:14:04,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:14:04,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:14:04,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:14:06,755.755 INFO    ] ================================================
[2026-06-13 19:14:06,770.770 INFO    ] Launching Daemon at Sat Jun 13 19:14:06 IST 2026
[2026-06-13 19:14:06,784.784 INFO    ] ================================================
[2026-06-13 19:14:07,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:14:07
[2026-06-13 19:14:07,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:14:07,566.566 INFO    ] Initializing speech engine...
[2026-06-13 19:14:07,579.579 INFO    ] 2026-06-13 19:14:07
[2026-06-13 19:14:07,787.787 INFO    ] 2026-06-13 19:14:07
[2026-06-13 19:14:07,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:14:08,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:14:08,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:14:08,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:14:08,200.200 INFO    ] time= 13/06/2026 19:14:08
[2026-06-13 19:14:08,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:14:08,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:14:08,307.307 INFO    ] No existing commands found in stream
[2026-06-13 19:14:13,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:13,320.320 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 19:14:15,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:14:15,214.214 INFO    ] Checking for system updates...
[2026-06-13 19:14:15,236.236 INFO    ] 200
[2026-06-13 19:14:15,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:15,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:14:15,271.271 INFO    ] No update needed
[2026-06-13 19:14:15,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 19:14:15,291.291 INFO    ] 200
[2026-06-13 19:14:15,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:15,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:14:15,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:15,369.369 INFO    ] No camera update needed
[2026-06-13 19:14:15,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:14:15,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:14:15,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:14:15,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:14:17,418.418 INFO    ] ================================================
[2026-06-13 19:14:17,433.433 INFO    ] Launching Daemon at Sat Jun 13 19:14:17 IST 2026
[2026-06-13 19:14:17,444.444 INFO    ] ================================================
[2026-06-13 19:14:17,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:14:17
[2026-06-13 19:14:18,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:14:18,651.651 INFO    ] Initializing speech engine...
[2026-06-13 19:14:18,658.658 INFO    ] 2026-06-13 19:14:18
[2026-06-13 19:14:18,951.951 INFO    ] 2026-06-13 19:14:18
[2026-06-13 19:14:18,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:14:19,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:14:19,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:14:19,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:14:19,328.328 INFO    ] time= 13/06/2026 19:14:19
[2026-06-13 19:14:19,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:14:19,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:14:19,452.452 INFO    ] No existing commands found in stream
[2026-06-13 19:14:24,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:24,466.466 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 19:14:27,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:14:27,666.666 INFO    ] Checking for system updates...
[2026-06-13 19:14:27,687.687 INFO    ] 200
[2026-06-13 19:14:27,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:27,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:27,720.720 INFO    ] No update needed
[2026-06-13 19:14:27,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 19:14:27,741.741 INFO    ] 200
[2026-06-13 19:14:27,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:27,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:14:27,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:27,802.802 INFO    ] No camera update needed
[2026-06-13 19:14:27,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:14:27,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:14:27,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:14:27,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:14:29,853.853 INFO    ] ================================================
[2026-06-13 19:14:29,868.868 INFO    ] Launching Daemon at Sat Jun 13 19:14:29 IST 2026
[2026-06-13 19:14:29,879.879 INFO    ] ================================================
[2026-06-13 19:14:30,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:14:30
[2026-06-13 19:14:30,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:14:30,704.704 INFO    ] Initializing speech engine...
[2026-06-13 19:14:30,709.709 INFO    ] 2026-06-13 19:14:30
[2026-06-13 19:14:30,914.914 INFO    ] 2026-06-13 19:14:30
[2026-06-13 19:14:30,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:14:31,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:14:31,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:14:31,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:14:31,315.315 INFO    ] time= 13/06/2026 19:14:31
[2026-06-13 19:14:31,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:14:31,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:14:31,428.428 INFO    ] No existing commands found in stream
[2026-06-13 19:14:36,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:36,442.442 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 19:14:38,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:14:38,792.792 INFO    ] Checking for system updates...
[2026-06-13 19:14:38,812.812 INFO    ] 200
[2026-06-13 19:14:38,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:38,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:38,847.847 INFO    ] No update needed
[2026-06-13 19:14:38,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 19:14:38,870.870 INFO    ] 200
[2026-06-13 19:14:38,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:38,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:14:38,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:14:38,934.934 INFO    ] No camera update needed
[2026-06-13 19:14:38,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:14:38,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:14:38,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:14:38,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:14:40,980.980 INFO    ] ================================================
[2026-06-13 19:14:41,996.996 INFO    ] Launching Daemon at Sat Jun 13 19:14:40 IST 2026
[2026-06-13 19:14:41,006.006 INFO    ] ================================================
[2026-06-13 19:14:41,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:14:41
[2026-06-13 19:14:41,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:14:41,801.801 INFO    ] Initializing speech engine...
[2026-06-13 19:14:41,806.806 INFO    ] 2026-06-13 19:14:41
[2026-06-13 19:14:42,007.007 INFO    ] 2026-06-13 19:14:41
[2026-06-13 19:14:42,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:14:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:14:42,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:14:42,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:14:42,397.397 INFO    ] time= 13/06/2026 19:14:42
[2026-06-13 19:14:42,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:14:42,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:14:42,529.529 INFO    ] No existing commands found in stream
[2026-06-13 19:14:47,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:47,547.547 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-13 19:14:50,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:14:50,752.752 INFO    ] Checking for system updates...
[2026-06-13 19:14:50,774.774 INFO    ] 200
[2026-06-13 19:14:50,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:50,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:50,809.809 INFO    ] No update needed
[2026-06-13 19:14:50,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 19:14:50,831.831 INFO    ] 200
[2026-06-13 19:14:50,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:14:50,856.856 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:14:50,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:14:50,893.893 INFO    ] No camera update needed
[2026-06-13 19:14:50,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:14:50,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:14:50,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:14:50,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:14:52,941.941 INFO    ] ================================================
[2026-06-13 19:14:52,956.956 INFO    ] Launching Daemon at Sat Jun 13 19:14:52 IST 2026
[2026-06-13 19:14:52,967.967 INFO    ] ================================================
[2026-06-13 19:14:53,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:14:53
[2026-06-13 19:14:53,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:14:53,817.817 INFO    ] Initializing speech engine...
[2026-06-13 19:14:53,822.822 INFO    ] 2026-06-13 19:14:53
[2026-06-13 19:14:54,037.037 INFO    ] 2026-06-13 19:14:54
[2026-06-13 19:14:54,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:14:54,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:14:54,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:14:54,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:14:54,454.454 INFO    ] time= 13/06/2026 19:14:54
[2026-06-13 19:14:54,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:14:54,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:14:54,590.590 INFO    ] No existing commands found in stream
[2026-06-13 19:14:59,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:14:59,617.617 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 19:15:02,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:15:02,022.022 INFO    ] Checking for system updates...
[2026-06-13 19:15:02,047.047 INFO    ] 200
[2026-06-13 19:15:02,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:02,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:15:02,099.099 INFO    ] No update needed
[2026-06-13 19:15:02,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 19:15:02,125.125 INFO    ] 200
[2026-06-13 19:15:02,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:02,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:15:02,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:15:02,192.192 INFO    ] No camera update needed
[2026-06-13 19:15:02,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:15:02,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:15:02,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:15:02,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:15:04,243.243 INFO    ] ================================================
[2026-06-13 19:15:04,265.265 INFO    ] Launching Daemon at Sat Jun 13 19:15:04 IST 2026
[2026-06-13 19:15:04,276.276 INFO    ] ================================================
[2026-06-13 19:15:04,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:15:04
[2026-06-13 19:15:05,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:15:05,630.630 INFO    ] Initializing speech engine...
[2026-06-13 19:15:05,636.636 INFO    ] 2026-06-13 19:15:05
[2026-06-13 19:15:05,864.864 INFO    ] 2026-06-13 19:15:05
[2026-06-13 19:15:05,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:15:06,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:15:06,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:15:06,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:15:06,277.277 INFO    ] time= 13/06/2026 19:15:06
[2026-06-13 19:15:06,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:15:06,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:15:06,387.387 INFO    ] No existing commands found in stream
[2026-06-13 19:15:11,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:15:11,405.405 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 19:15:15,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:15:15,697.697 INFO    ] Checking for system updates...
[2026-06-13 19:15:15,719.719 INFO    ] 200
[2026-06-13 19:15:15,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:15,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:15:15,757.757 INFO    ] No update needed
[2026-06-13 19:15:15,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 19:15:15,780.780 INFO    ] 200
[2026-06-13 19:15:15,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:15,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:15:15,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:15:15,945.945 INFO    ] No camera update needed
[2026-06-13 19:15:15,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:15:15,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:15:15,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:15:15,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:15:17,992.992 INFO    ] ================================================
[2026-06-13 19:15:18,007.007 INFO    ] Launching Daemon at Sat Jun 13 19:15:18 IST 2026
[2026-06-13 19:15:18,018.018 INFO    ] ================================================
[2026-06-13 19:15:18,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:15:18
[2026-06-13 19:15:18,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:15:18,870.870 INFO    ] Initializing speech engine...
[2026-06-13 19:15:18,878.878 INFO    ] 2026-06-13 19:15:18
[2026-06-13 19:15:19,109.109 INFO    ] 2026-06-13 19:15:19
[2026-06-13 19:15:19,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:15:19,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:15:19,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:15:19,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:15:19,554.554 INFO    ] time= 13/06/2026 19:15:19
[2026-06-13 19:15:19,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:15:19,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:15:19,691.691 INFO    ] No existing commands found in stream
[2026-06-13 19:15:24,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:15:24,722.722 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 19:15:27,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:15:27,362.362 INFO    ] Checking for system updates...
[2026-06-13 19:15:27,384.384 INFO    ] 200
[2026-06-13 19:15:27,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:27,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:15:27,417.417 INFO    ] No update needed
[2026-06-13 19:15:27,419.419 INFO    ] Checking for camera pi updates...
[2026-06-13 19:15:27,438.438 INFO    ] 200
[2026-06-13 19:15:27,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:27,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:15:27,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:15:27,501.501 INFO    ] No camera update needed
[2026-06-13 19:15:27,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:15:27,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:15:27,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:15:27,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:15:29,547.547 INFO    ] ================================================
[2026-06-13 19:15:29,563.563 INFO    ] Launching Daemon at Sat Jun 13 19:15:29 IST 2026
[2026-06-13 19:15:29,574.574 INFO    ] ================================================
[2026-06-13 19:15:29,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:15:29
[2026-06-13 19:15:30,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:15:30,428.428 INFO    ] Initializing speech engine...
[2026-06-13 19:15:30,432.432 INFO    ] 2026-06-13 19:15:30
[2026-06-13 19:15:30,643.643 INFO    ] 2026-06-13 19:15:30
[2026-06-13 19:15:30,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:15:30,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:15:30,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:15:30,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:15:31,024.024 INFO    ] time= 13/06/2026 19:15:30
[2026-06-13 19:15:31,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:15:31,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:15:31,166.166 INFO    ] No existing commands found in stream
[2026-06-13 19:15:36,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:15:36,194.194 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 19:15:39,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:15:39,914.914 INFO    ] Checking for system updates...
[2026-06-13 19:15:39,936.936 INFO    ] 200
[2026-06-13 19:15:39,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:39,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:15:39,973.973 INFO    ] No update needed
[2026-06-13 19:15:39,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 19:15:39,997.997 INFO    ] 200
[2026-06-13 19:15:39,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:40,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:15:40,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:15:40,065.065 INFO    ] No camera update needed
[2026-06-13 19:15:40,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:15:40,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:15:40,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:15:40,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:15:42,111.111 INFO    ] ================================================
[2026-06-13 19:15:42,126.126 INFO    ] Launching Daemon at Sat Jun 13 19:15:42 IST 2026
[2026-06-13 19:15:42,137.137 INFO    ] ================================================
[2026-06-13 19:15:42,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:15:42
[2026-06-13 19:15:42,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:15:42,933.933 INFO    ] Initializing speech engine...
[2026-06-13 19:15:42,939.939 INFO    ] 2026-06-13 19:15:42
[2026-06-13 19:15:43,155.155 INFO    ] 2026-06-13 19:15:43
[2026-06-13 19:15:43,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:15:43,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:15:43,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:15:43,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:15:43,472.472 INFO    ] time= 13/06/2026 19:15:43
[2026-06-13 19:15:43,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:15:43,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:15:43,522.522 INFO    ] No existing commands found in stream
[2026-06-13 19:15:48,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:15:48,533.533 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 19:15:52,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:15:52,243.243 INFO    ] Checking for system updates...
[2026-06-13 19:15:52,265.265 INFO    ] 200
[2026-06-13 19:15:52,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:52,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:15:52,300.300 INFO    ] No update needed
[2026-06-13 19:15:52,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 19:15:52,322.322 INFO    ] 200
[2026-06-13 19:15:52,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:15:52,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:15:52,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:15:52,395.395 INFO    ] No camera update needed
[2026-06-13 19:15:52,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:15:52,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:15:52,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:15:52,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:15:54,441.441 INFO    ] ================================================
[2026-06-13 19:15:54,456.456 INFO    ] Launching Daemon at Sat Jun 13 19:15:54 IST 2026
[2026-06-13 19:15:54,467.467 INFO    ] ================================================
[2026-06-13 19:15:55,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:15:55
[2026-06-13 19:15:55,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:15:55,911.911 INFO    ] Initializing speech engine...
[2026-06-13 19:15:55,916.916 INFO    ] 2026-06-13 19:15:55
[2026-06-13 19:15:56,119.119 INFO    ] 2026-06-13 19:15:56
[2026-06-13 19:15:56,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:15:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:15:56,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:15:56,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:15:56,529.529 INFO    ] time= 13/06/2026 19:15:56
[2026-06-13 19:15:56,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:15:56,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:15:56,642.642 INFO    ] No existing commands found in stream
[2026-06-13 19:16:01,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:01,654.654 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 19:16:02,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:16:02,974.974 INFO    ] Checking for system updates...
[2026-06-13 19:16:02,995.995 INFO    ] 200
[2026-06-13 19:16:02,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:03,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:03,030.030 INFO    ] No update needed
[2026-06-13 19:16:03,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 19:16:03,051.051 INFO    ] 200
[2026-06-13 19:16:03,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:03,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:16:03,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:03,117.117 INFO    ] No camera update needed
[2026-06-13 19:16:03,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:16:03,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:16:03,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:16:03,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:16:05,165.165 INFO    ] ================================================
[2026-06-13 19:16:05,180.180 INFO    ] Launching Daemon at Sat Jun 13 19:16:05 IST 2026
[2026-06-13 19:16:05,192.192 INFO    ] ================================================
[2026-06-13 19:16:05,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:16:05
[2026-06-13 19:16:05,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:16:06,049.049 INFO    ] Initializing speech engine...
[2026-06-13 19:16:06,054.054 INFO    ] 2026-06-13 19:16:06
[2026-06-13 19:16:06,261.261 INFO    ] 2026-06-13 19:16:06
[2026-06-13 19:16:06,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:16:06,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:16:06,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:16:06,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:16:06,672.672 INFO    ] time= 13/06/2026 19:16:06
[2026-06-13 19:16:06,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:16:06,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:16:06,776.776 INFO    ] No existing commands found in stream
[2026-06-13 19:16:11,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:11,790.790 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 19:16:13,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:16:13,913.913 INFO    ] Checking for system updates...
[2026-06-13 19:16:13,934.934 INFO    ] 200
[2026-06-13 19:16:13,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:13,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:13,970.970 INFO    ] No update needed
[2026-06-13 19:16:13,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 19:16:13,994.994 INFO    ] 200
[2026-06-13 19:16:13,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:14,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:16:14,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:14,063.063 INFO    ] No camera update needed
[2026-06-13 19:16:14,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:16:14,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:16:14,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:16:14,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:16:16,111.111 INFO    ] ================================================
[2026-06-13 19:16:16,126.126 INFO    ] Launching Daemon at Sat Jun 13 19:16:16 IST 2026
[2026-06-13 19:16:16,137.137 INFO    ] ================================================
[2026-06-13 19:16:16,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:16:16
[2026-06-13 19:16:16,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:16:16,952.952 INFO    ] Initializing speech engine...
[2026-06-13 19:16:16,958.958 INFO    ] 2026-06-13 19:16:16
[2026-06-13 19:16:17,163.163 INFO    ] 2026-06-13 19:16:17
[2026-06-13 19:16:17,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:16:17,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:16:17,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:16:17,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:16:17,547.547 INFO    ] time= 13/06/2026 19:16:17
[2026-06-13 19:16:17,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:16:17,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:16:17,621.621 INFO    ] No existing commands found in stream
[2026-06-13 19:16:22,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:22,637.637 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 19:16:26,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:16:26,554.554 INFO    ] Checking for system updates...
[2026-06-13 19:16:26,577.577 INFO    ] 200
[2026-06-13 19:16:26,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:26,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:26,614.614 INFO    ] No update needed
[2026-06-13 19:16:26,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 19:16:26,636.636 INFO    ] 200
[2026-06-13 19:16:26,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:26,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:16:26,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:26,701.701 INFO    ] No camera update needed
[2026-06-13 19:16:26,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:16:26,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:16:26,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:16:26,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:16:28,750.750 INFO    ] ================================================
[2026-06-13 19:16:28,765.765 INFO    ] Launching Daemon at Sat Jun 13 19:16:28 IST 2026
[2026-06-13 19:16:28,775.775 INFO    ] ================================================
[2026-06-13 19:16:29,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:16:29
[2026-06-13 19:16:29,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:16:29,568.568 INFO    ] Initializing speech engine...
[2026-06-13 19:16:29,573.573 INFO    ] 2026-06-13 19:16:29
[2026-06-13 19:16:29,787.787 INFO    ] 2026-06-13 19:16:29
[2026-06-13 19:16:29,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:16:29,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:16:29,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:16:30,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:16:30,160.160 INFO    ] time= 13/06/2026 19:16:30
[2026-06-13 19:16:30,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:16:30,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:16:30,341.341 INFO    ] No existing commands found in stream
[2026-06-13 19:16:35,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:35,353.353 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 19:16:38,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:16:38,453.453 INFO    ] Checking for system updates...
[2026-06-13 19:16:38,475.475 INFO    ] 200
[2026-06-13 19:16:38,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:38,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:38,508.508 INFO    ] No update needed
[2026-06-13 19:16:38,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 19:16:38,529.529 INFO    ] 200
[2026-06-13 19:16:38,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:38,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:16:38,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:16:38,594.594 INFO    ] No camera update needed
[2026-06-13 19:16:38,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:16:38,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:16:38,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:16:38,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:16:40,642.642 INFO    ] ================================================
[2026-06-13 19:16:40,657.657 INFO    ] Launching Daemon at Sat Jun 13 19:16:40 IST 2026
[2026-06-13 19:16:40,668.668 INFO    ] ================================================
[2026-06-13 19:16:41,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:16:41
[2026-06-13 19:16:41,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:16:41,471.471 INFO    ] Initializing speech engine...
[2026-06-13 19:16:41,475.475 INFO    ] 2026-06-13 19:16:41
[2026-06-13 19:16:41,681.681 INFO    ] 2026-06-13 19:16:41
[2026-06-13 19:16:41,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:16:41,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:16:41,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:16:42,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:16:42,101.101 INFO    ] time= 13/06/2026 19:16:42
[2026-06-13 19:16:42,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:16:42,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:16:42,199.199 INFO    ] No existing commands found in stream
[2026-06-13 19:16:47,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:47,212.212 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 19:16:49,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:16:49,299.299 INFO    ] Checking for system updates...
[2026-06-13 19:16:49,323.323 INFO    ] 200
[2026-06-13 19:16:49,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:49,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:16:49,362.362 INFO    ] No update needed
[2026-06-13 19:16:49,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 19:16:49,384.384 INFO    ] 200
[2026-06-13 19:16:49,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:16:49,413.413 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:16:49,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:16:49,451.451 INFO    ] No camera update needed
[2026-06-13 19:16:49,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:16:49,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:16:49,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:16:49,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:16:51,499.499 INFO    ] ================================================
[2026-06-13 19:16:51,515.515 INFO    ] Launching Daemon at Sat Jun 13 19:16:51 IST 2026
[2026-06-13 19:16:51,525.525 INFO    ] ================================================
[2026-06-13 19:16:51,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:16:51
[2026-06-13 19:16:52,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:16:52,370.370 INFO    ] Initializing speech engine...
[2026-06-13 19:16:52,374.374 INFO    ] 2026-06-13 19:16:52
[2026-06-13 19:16:52,582.582 INFO    ] 2026-06-13 19:16:52
[2026-06-13 19:16:52,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:16:52,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:16:52,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:16:52,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:16:52,994.994 INFO    ] time= 13/06/2026 19:16:52
[2026-06-13 19:16:53,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:16:53,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:16:53,101.101 INFO    ] No existing commands found in stream
[2026-06-13 19:16:58,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:16:58,118.118 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 19:17:01,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:17:01,735.735 INFO    ] Checking for system updates...
[2026-06-13 19:17:01,772.772 INFO    ] 200
[2026-06-13 19:17:01,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:01,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:01,831.831 INFO    ] No update needed
[2026-06-13 19:17:01,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:01,870.870 INFO    ] 200
[2026-06-13 19:17:01,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:01,934.934 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:01,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:01,989.989 INFO    ] No camera update needed
[2026-06-13 19:17:02,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:02,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:02,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:02,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:04,083.083 INFO    ] ================================================
[2026-06-13 19:17:04,099.099 INFO    ] Launching Daemon at Sat Jun 13 19:17:04 IST 2026
[2026-06-13 19:17:04,110.110 INFO    ] ================================================
[2026-06-13 19:17:04,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:04
[2026-06-13 19:17:04,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:04,916.916 INFO    ] Initializing speech engine...
[2026-06-13 19:17:04,921.921 INFO    ] 2026-06-13 19:17:04
[2026-06-13 19:17:05,125.125 INFO    ] 2026-06-13 19:17:05
[2026-06-13 19:17:05,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:05,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:05,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:05,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:05,540.540 INFO    ] time= 13/06/2026 19:17:05
[2026-06-13 19:17:05,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:05,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:05,644.644 INFO    ] No existing commands found in stream
[2026-06-13 19:17:10,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:17:10,657.657 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 19:17:12,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:17:12,176.176 INFO    ] Checking for system updates...
[2026-06-13 19:17:12,198.198 INFO    ] 200
[2026-06-13 19:17:12,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:12,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:17:12,231.231 INFO    ] No update needed
[2026-06-13 19:17:12,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:12,255.255 INFO    ] 200
[2026-06-13 19:17:12,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:12,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:12,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:17:12,327.327 INFO    ] No camera update needed
[2026-06-13 19:17:12,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:12,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:12,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:12,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:14,374.374 INFO    ] ================================================
[2026-06-13 19:17:14,389.389 INFO    ] Launching Daemon at Sat Jun 13 19:17:14 IST 2026
[2026-06-13 19:17:14,400.400 INFO    ] ================================================
[2026-06-13 19:17:14,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:14
[2026-06-13 19:17:15,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:15,220.220 INFO    ] Initializing speech engine...
[2026-06-13 19:17:15,226.226 INFO    ] 2026-06-13 19:17:15
[2026-06-13 19:17:15,429.429 INFO    ] 2026-06-13 19:17:15
[2026-06-13 19:17:15,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:15,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:15,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:15,835.835 INFO    ] time= 13/06/2026 19:17:15
[2026-06-13 19:17:15,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:15,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:15,946.946 INFO    ] No existing commands found in stream
[2026-06-13 19:17:20,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:17:20,958.958 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 19:17:22,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:17:22,052.052 INFO    ] Checking for system updates...
[2026-06-13 19:17:22,076.076 INFO    ] 200
[2026-06-13 19:17:22,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:22,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:22,111.111 INFO    ] No update needed
[2026-06-13 19:17:22,113.113 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:22,133.133 INFO    ] 200
[2026-06-13 19:17:22,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:22,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:22,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:22,297.297 INFO    ] No camera update needed
[2026-06-13 19:17:22,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:22,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:22,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:22,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:24,347.347 INFO    ] ================================================
[2026-06-13 19:17:24,363.363 INFO    ] Launching Daemon at Sat Jun 13 19:17:24 IST 2026
[2026-06-13 19:17:24,374.374 INFO    ] ================================================
[2026-06-13 19:17:24,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:24
[2026-06-13 19:17:25,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:25,158.158 INFO    ] Initializing speech engine...
[2026-06-13 19:17:25,166.166 INFO    ] 2026-06-13 19:17:25
[2026-06-13 19:17:25,383.383 INFO    ] 2026-06-13 19:17:25
[2026-06-13 19:17:25,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:25,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:25,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:25,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:25,793.793 INFO    ] time= 13/06/2026 19:17:25
[2026-06-13 19:17:25,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:25,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:25,904.904 INFO    ] No existing commands found in stream
[2026-06-13 19:17:30,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:17:30,917.917 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 19:17:32,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:17:32,669.669 INFO    ] Checking for system updates...
[2026-06-13 19:17:32,695.695 INFO    ] 200
[2026-06-13 19:17:32,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:32,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:32,745.745 INFO    ] No update needed
[2026-06-13 19:17:32,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:32,779.779 INFO    ] 200
[2026-06-13 19:17:32,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:32,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:32,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:32,828.828 INFO    ] No camera update needed
[2026-06-13 19:17:32,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:32,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:32,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:32,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:34,877.877 INFO    ] ================================================
[2026-06-13 19:17:34,893.893 INFO    ] Launching Daemon at Sat Jun 13 19:17:34 IST 2026
[2026-06-13 19:17:34,903.903 INFO    ] ================================================
[2026-06-13 19:17:35,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:35
[2026-06-13 19:17:35,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:35,685.685 INFO    ] Initializing speech engine...
[2026-06-13 19:17:35,695.695 INFO    ] 2026-06-13 19:17:35
[2026-06-13 19:17:35,898.898 INFO    ] 2026-06-13 19:17:35
[2026-06-13 19:17:35,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:36,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:36,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:36,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:36,307.307 INFO    ] time= 13/06/2026 19:17:36
[2026-06-13 19:17:36,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:36,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:36,419.419 INFO    ] No existing commands found in stream
[2026-06-13 19:17:41,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:17:41,431.431 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 19:17:43,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:17:43,314.314 INFO    ] Checking for system updates...
[2026-06-13 19:17:43,335.335 INFO    ] 200
[2026-06-13 19:17:43,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:43,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:17:43,370.370 INFO    ] No update needed
[2026-06-13 19:17:43,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:43,391.391 INFO    ] 200
[2026-06-13 19:17:43,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:43,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:43,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:17:43,455.455 INFO    ] No camera update needed
[2026-06-13 19:17:43,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:43,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:43,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:43,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:45,507.507 INFO    ] ================================================
[2026-06-13 19:17:45,522.522 INFO    ] Launching Daemon at Sat Jun 13 19:17:45 IST 2026
[2026-06-13 19:17:45,533.533 INFO    ] ================================================
[2026-06-13 19:17:45,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:45
[2026-06-13 19:17:46,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:46,370.370 INFO    ] Initializing speech engine...
[2026-06-13 19:17:46,375.375 INFO    ] 2026-06-13 19:17:46
[2026-06-13 19:17:46,604.604 INFO    ] 2026-06-13 19:17:46
[2026-06-13 19:17:46,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:46,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:46,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:46,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:47,036.036 INFO    ] time= 13/06/2026 19:17:46
[2026-06-13 19:17:47,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:47,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:47,161.161 INFO    ] No existing commands found in stream
[2026-06-13 19:17:52,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:17:52,175.175 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-13 19:17:54,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:17:54,137.137 INFO    ] Checking for system updates...
[2026-06-13 19:17:54,158.158 INFO    ] 200
[2026-06-13 19:17:54,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:54,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:54,194.194 INFO    ] No update needed
[2026-06-13 19:17:54,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 19:17:54,214.214 INFO    ] 200
[2026-06-13 19:17:54,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:17:54,241.241 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:17:54,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:17:54,279.279 INFO    ] No camera update needed
[2026-06-13 19:17:54,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:17:54,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:17:54,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:17:54,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:17:56,326.326 INFO    ] ================================================
[2026-06-13 19:17:56,342.342 INFO    ] Launching Daemon at Sat Jun 13 19:17:56 IST 2026
[2026-06-13 19:17:56,353.353 INFO    ] ================================================
[2026-06-13 19:17:56,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:17:56
[2026-06-13 19:17:57,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:17:57,143.143 INFO    ] Initializing speech engine...
[2026-06-13 19:17:57,156.156 INFO    ] 2026-06-13 19:17:57
[2026-06-13 19:17:57,365.365 INFO    ] 2026-06-13 19:17:57
[2026-06-13 19:17:57,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:17:57,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:17:57,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:17:57,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:17:57,775.775 INFO    ] time= 13/06/2026 19:17:57
[2026-06-13 19:17:57,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:17:57,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:17:57,886.886 INFO    ] No existing commands found in stream
[2026-06-13 19:18:02,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:18:02,899.899 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 19:18:06,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:18:06,103.103 INFO    ] Checking for system updates...
[2026-06-13 19:18:06,124.124 INFO    ] 200
[2026-06-13 19:18:06,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:06,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:18:06,160.160 INFO    ] No update needed
[2026-06-13 19:18:06,161.161 INFO    ] Checking for camera pi updates...
[2026-06-13 19:18:06,181.181 INFO    ] 200
[2026-06-13 19:18:06,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:06,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:18:06,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:18:06,263.263 INFO    ] No camera update needed
[2026-06-13 19:18:06,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:18:06,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:18:06,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:18:06,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:18:08,314.314 INFO    ] ================================================
[2026-06-13 19:18:08,329.329 INFO    ] Launching Daemon at Sat Jun 13 19:18:08 IST 2026
[2026-06-13 19:18:08,340.340 INFO    ] ================================================
[2026-06-13 19:18:08,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:18:08
[2026-06-13 19:18:08,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:18:09,125.125 INFO    ] Initializing speech engine...
[2026-06-13 19:18:09,135.135 INFO    ] 2026-06-13 19:18:09
[2026-06-13 19:18:09,351.351 INFO    ] 2026-06-13 19:18:09
[2026-06-13 19:18:09,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:18:09,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:18:09,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:18:09,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:18:09,761.761 INFO    ] time= 13/06/2026 19:18:09
[2026-06-13 19:18:09,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:18:09,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:18:09,909.909 INFO    ] No existing commands found in stream
[2026-06-13 19:18:14,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:18:14,922.922 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 19:18:16,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:18:16,210.210 INFO    ] Checking for system updates...
[2026-06-13 19:18:16,232.232 INFO    ] 200
[2026-06-13 19:18:16,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:16,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:18:16,267.267 INFO    ] No update needed
[2026-06-13 19:18:16,268.268 INFO    ] Checking for camera pi updates...
[2026-06-13 19:18:16,288.288 INFO    ] 200
[2026-06-13 19:18:16,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:16,312.312 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:18:16,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:18:16,353.353 INFO    ] No camera update needed
[2026-06-13 19:18:16,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:18:16,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:18:16,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:18:16,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:18:18,400.400 INFO    ] ================================================
[2026-06-13 19:18:18,416.416 INFO    ] Launching Daemon at Sat Jun 13 19:18:18 IST 2026
[2026-06-13 19:18:18,427.427 INFO    ] ================================================
[2026-06-13 19:18:18,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:18:18
[2026-06-13 19:18:19,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:18:19,274.274 INFO    ] Initializing speech engine...
[2026-06-13 19:18:19,279.279 INFO    ] 2026-06-13 19:18:19
[2026-06-13 19:18:19,484.484 INFO    ] 2026-06-13 19:18:19
[2026-06-13 19:18:19,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:18:19,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:18:19,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:18:19,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:18:19,901.901 INFO    ] time= 13/06/2026 19:18:19
[2026-06-13 19:18:19,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:18:19,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:18:20,009.009 INFO    ] No existing commands found in stream
[2026-06-13 19:18:25,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:18:25,021.021 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 19:18:28,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:18:28,614.614 INFO    ] Checking for system updates...
[2026-06-13 19:18:28,636.636 INFO    ] 200
[2026-06-13 19:18:28,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:28,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:18:28,670.670 INFO    ] No update needed
[2026-06-13 19:18:28,671.671 INFO    ] Checking for camera pi updates...
[2026-06-13 19:18:28,692.692 INFO    ] 200
[2026-06-13 19:18:28,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:28,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:18:28,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:18:28,770.770 INFO    ] No camera update needed
[2026-06-13 19:18:28,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:18:28,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:18:28,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:18:28,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:18:30,819.819 INFO    ] ================================================
[2026-06-13 19:18:30,835.835 INFO    ] Launching Daemon at Sat Jun 13 19:18:30 IST 2026
[2026-06-13 19:18:30,846.846 INFO    ] ================================================
[2026-06-13 19:18:31,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:18:31
[2026-06-13 19:18:31,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:18:31,633.633 INFO    ] Initializing speech engine...
[2026-06-13 19:18:31,643.643 INFO    ] 2026-06-13 19:18:31
[2026-06-13 19:18:31,854.854 INFO    ] 2026-06-13 19:18:31
[2026-06-13 19:18:31,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:18:32,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:18:32,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:18:32,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:18:32,149.149 INFO    ] time= 13/06/2026 19:18:32
[2026-06-13 19:18:32,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:18:32,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:18:32,258.258 INFO    ] No existing commands found in stream
[2026-06-13 19:18:34,818.818 INFO    ] Received new command: ID=1781358514766-0
[2026-06-13 19:18:34,821.821 INFO    ] process_and_cleanup_command: msg_id=1781358514766-0
[2026-06-13 19:18:34,823.823 INFO    ] is_command_expired: timestamp=2026-06-13T13:48:34.633Z, expiry=30s
[2026-06-13 19:18:34,890.890 INFO    ] Command removed from stream: 1781358514766-0. returning for processing...
[2026-06-13 19:18:34,892.892 INFO    ] ***** get_valid_command
[2026-06-13 19:18:34,895.895 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781358514633-4j72qalgg","orderId":"TM08202203260613191754463","is_vending":false}', 'timestamp': '2026-06-13T13:48:34.633Z', 'timeout': '10', 'source': 'webapp'}
[2026-06-13 19:18:34,897.897 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781358514633-4j72qalgg', 'orderId': 'TM08202203260613191754463', 'is_vending': False}
[2026-06-13 19:18:34,900.900 INFO    ] Handling start order...
[2026-06-13 19:18:34,902.902 INFO    ] handle_start_order_command
[2026-06-13 19:18:34,908.908 INFO    ] _send_start_order_success: request_id=start-order-1781358514633-4j72qalgg, order_id=TM08202203260613191754463
[2026-06-13 19:18:34,910.910 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 19:18:34,958.958 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781358514935-0
[2026-06-13 19:18:34,960.960 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 19:18:34,963.963 INFO    ] Checking for system updates...
[2026-06-13 19:18:35,005.005 INFO    ] 200
[2026-06-13 19:18:35,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:35,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:18:35,063.063 INFO    ] No update needed
[2026-06-13 19:18:35,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 19:18:35,106.106 INFO    ] 200
[2026-06-13 19:18:35,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:35,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:18:35,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:18:35,180.180 INFO    ] No camera update needed
[2026-06-13 19:18:35,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:18:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:18:35,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:18:35,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:18:37,228.228 INFO    ] ================================================
[2026-06-13 19:18:37,244.244 INFO    ] Launching Daemon at Sat Jun 13 19:18:37 IST 2026
[2026-06-13 19:18:37,255.255 INFO    ] ================================================
[2026-06-13 19:18:37,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:18:37
[2026-06-13 19:18:37,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:18:38,053.053 INFO    ] Initializing speech engine...
[2026-06-13 19:18:38,057.057 INFO    ] 2026-06-13 19:18:38
[2026-06-13 19:18:38,286.286 INFO    ] 2026-06-13 19:18:38
[2026-06-13 19:18:38,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:18:38,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:18:38,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:18:38,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:18:38,639.639 INFO    ] time= 13/06/2026 19:18:38
[2026-06-13 19:18:38,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:18:38,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:18:38,839.839 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 19:18:38,843.843 INFO    ] Checking historical command: ID=1781358514935-0
[2026-06-13 19:18:38,844.844 INFO    ] process_and_cleanup_command: msg_id=1781358514935-0
[2026-06-13 19:18:38,872.872 INFO    ] is_command_expired: timestamp=2026-06-13T13:48:34.909348Z, expiry=30s
[2026-06-13 19:18:38,987.987 INFO    ] Command removed from stream: 1781358514935-0. returning for processing...
[2026-06-13 19:18:38,991.991 INFO    ] ***** get_valid_command
[2026-06-13 19:18:38,995.995 INFO    ] {'timestamp': '2026-06-13T13:48:34.909348Z', 'message': 'start-order success', 'status': 'success', 'metadata_order_id': 'TM08202203260613191754463', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781358514633-4j72qalgg', 'imei': 'TM08202203'}
[2026-06-13 19:18:38,999.999 INFO    ] Checking historical command: ID=1781358516996-0
[2026-06-13 19:18:39,003.003 INFO    ] process_and_cleanup_command: msg_id=1781358516996-0
[2026-06-13 19:18:39,007.007 INFO    ] is_command_expired: timestamp=2026-06-13T13:48:36.864Z, expiry=30s
[2026-06-13 19:18:39,051.051 INFO    ] Command removed from stream: 1781358516996-0. returning for processing...
[2026-06-13 19:18:39,054.054 INFO    ] ***** get_valid_command
[2026-06-13 19:18:39,057.057 INFO    ] {'timestamp': '2026-06-13T13:48:36.864Z', 'data': '{"request_id":"process-order-1781358516863-jxwspkpeh","orderId":"TM08202203260613191754463","is_vending":false,"accessCode":"58698189"}', 'source': 'webapp', 'timeout': '60', 'command': 'process-order'}
[2026-06-13 19:18:39,060.060 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1781358516863-jxwspkpeh', 'accessCode': '58698189', 'orderId': 'TM08202203260613191754463'}
[2026-06-13 19:18:39,063.063 INFO    ] Handling process order...
[2026-06-13 19:18:39,066.066 INFO    ] Processing process-order command...
[2026-06-13 19:18:39,070.070 INFO    ] 🔍 Lock file Order ID: TM08202203260613191754463, TS: 2026-06-13 19:18:34
[2026-06-13 19:18:39,078.078 INFO    ] ✅ Order lock valid for TM08202203260613191754463
[2026-06-13 19:18:39,081.081 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 19:18:39,084.084 INFO    ] processing access code 58698189 for order TM08202203260613191754463
[2026-06-13 19:18:39,088.088 INFO    ] 🔍 Lock file Order ID: TM08202203260613191754463, TS: 2026-06-13 19:18:34
[2026-06-13 19:18:39,091.091 INFO    ] ✅ Order lock valid for TM08202203260613191754463
[2026-06-13 19:18:39,094.094 INFO    ] 2026-06-13 19:18:39
[2026-06-13 19:18:39,122.122 INFO    ] 200
[2026-06-13 19:18:39,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:18:39,130.130 INFO    ] 58698189
[2026-06-13 19:18:39,134.134 INFO    ] 2026-06-13 19:18:39
[2026-06-13 19:18:39,137.137 INFO    ] session id :638908965
[2026-06-13 19:18:39,141.141 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=58698189&imei=TM08202203&session_id=638908965
[2026-06-13 19:18:39,990.990 INFO    ] 200
[2026-06-13 19:18:39,993.993 INFO    ] {"data": {"mobile": "7338185084", "order_id": "TM08202203260613191754463", "bill_amount": "60", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500656-2520.webp", "skuid": "4500656", "door_id": "2", "mrp": "60", "offer_desc": "", "name": "BRU Cold Coffee Classic 200ml", "tray_id": "46", "unit_price": 60, "qty": 1, "sku_total": 60, "offer_id": ""}], "access_code": "58698189", "invoice_bill": "60"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 19:18:39,995.995 INFO    ] 60
[2026-06-13 19:18:39,998.998 INFO    ] TM08202203260613191754463
[2026-06-13 19:18:40,000.000 INFO    ] 7338185084
[2026-06-13 19:18:40,002.002 INFO    ] 2026-06-13 19:18:40
[2026-06-13 19:18:40,005.005 INFO    ] Door Opening for user mobile ending with  five zero eight four 
[2026-06-13 19:18:40,007.007 INFO    ] Door Opening for user mobile ending with  five zero eight four 
[2026-06-13 19:18:40,009.009 INFO    ] 9bb8f20fae8644208db8cc80308aa6be
[2026-06-13 19:18:40,012.012 INFO    ] 2026-06-13 19:18:40
[2026-06-13 19:18:40,014.014 INFO    ] playing audio file
[2026-06-13 19:18:40,030.030 INFO    ] 2026-06-13 19:18:40
[2026-06-13 19:18:40,034.034 INFO    ] 2026-06-13 19:18:40
[2026-06-13 19:18:40,037.037 INFO    ] publish_status: order_id=TM08202203260613191754463
[2026-06-13 19:18:40,040.040 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613191754463
[2026-06-13 19:18:40,125.125 INFO    ] [publish_status] Message added to stream with ID: 1781358520101-0
[2026-06-13 19:18:40,127.127 INFO    ] Published to order:TM08202203260613191754463: {'server_response': '{"data": {"access_code": "58698189", "proposed_sku_json": [{"offer_id": "", "mrp": "60", "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "unit_price": 60, "tray_id": "46", "qty": 1, "skuid": "4500656", "door_id": "2", "name": "BRU Cold Coffee Classic 200ml", "sku_total": 60, "offer_desc": ""}], "mobile": "7338185084", "order_id": "TM08202203260613191754463", "invoice_bill": "60", "bill_amount": "60"}, "status": true, "msg": "Order Data", "rstatus": true}', 'order_id': 'TM08202203260613191754463', 'server_status': 'order-started', 'timestamp': '2026-06-13T13:48:40.035628Z'} (ID: 1781358520101-0)
[2026-06-13 19:18:40,510.510 INFO    ] {'server_response': {'data': {'access_code': '58698189', 'proposed_sku_json': [{'offer_id': '', 'mrp': '60', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': 60, 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'door_id': '2', 'name': 'BRU Cold Coffee Classic 200ml', 'sku_total': 60, 'offer_desc': ''}], 'mobile': '7338185084', 'order_id': 'TM08202203260613191754463', 'invoice_bill': '60', 'bill_amount': '60'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM08202203260613191754463', 'server_status': 'order-started'}
[2026-06-13 19:18:40,512.512 INFO    ] 200
[2026-06-13 19:18:40,515.515 INFO    ] {"data":{"server_response":{"data":{"access_code":"58698189","proposed_sku_json":[{"offer_id":"","mrp":"60","image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","unit_price":60,"tray_id":"46","qty":1,"skuid":"4500656","door_id":"2","name":"BRU Cold Coffee Classic 200ml","sku_total":60,"offer_desc":""}],"mobile":"7338185084","order_id":"TM08202203260613191754463","invoice_bill":"60","bill_amount":"60"},"status":true,"msg":"Order Data","rstatus":true},"order_id":"TM08202203260613191754463","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 19:18:40,517.517 INFO    ] {'data': {'server_response': {'data': {'access_code': '58698189', 'proposed_sku_json': [{'offer_id': '', 'mrp': '60', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': 60, 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'offer_desc': '', 'name': 'BRU Cold Coffee Classic 200ml', 'sku_total': 60, 'door_id': '2'}], 'mobile': '7338185084', 'order_id': 'TM08202203260613191754463', 'invoice_bill': '60', 'bill_amount': '60'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM08202203260613191754463', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 19:18:40,520.520 INFO    ] 2026-06-13 19:18:40
[2026-06-13 19:18:40,569.569 INFO    ] 200
[2026-06-13 19:18:40,572.572 INFO    ] True
[2026-06-13 19:18:40,733.733 INFO    ] 200
[2026-06-13 19:18:40,736.736 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 19:18:40,740.740 INFO    ] {'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait'}
[2026-06-13 19:18:40,743.743 INFO    ] *** process_order ***
[2026-06-13 19:18:41,957.957 INFO    ] 200
[2026-06-13 19:18:41,960.960 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 19:18:41,963.963 INFO    ] {'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait'}
[2026-06-13 19:18:41,966.966 INFO    ] *** process_order ***
[2026-06-13 19:18:41,969.969 INFO    ] publish_status: order_id=TM08202203260613191754463
[2026-06-13 19:18:41,972.972 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613191754463
[2026-06-13 19:18:42,054.054 INFO    ] [publish_status] Message added to stream with ID: 1781358522031-0
[2026-06-13 19:18:42,057.057 INFO    ] Published to order:TM08202203260613191754463: {'server_response': '{"status": "True", "rstatus": 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, "voiceNote": "Door is open..."}', 'order_id': 'TM08202203260613191754463', 'server_status': 'doorOpened'} (ID: 1781358522031-0)
[2026-06-13 19:18:43,102.102 INFO    ] 2026-06-13 19:18:43
[2026-06-13 19:18:43,105.105 INFO    ] publish_status: order_id=TM08202203260613191754463
[2026-06-13 19:18:43,109.109 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613191754463
[2026-06-13 19:18:43,167.167 INFO    ] [publish_status] Message added to stream with ID: 1781358523143-0
[2026-06-13 19:18:43,172.172 INFO    ] Published to order:TM08202203260613191754463: {'server_response': '{"status": "True", "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}', 'order_id': 'TM08202203260613191754463', 'server_status': 'processOrder', 'timestamp': '2026-06-13T13:48:43.103760Z'} (ID: 1781358523143-0)
[2026-06-13 19:18:43,283.283 INFO    ] {'server_response': {'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'processOrder'}
[2026-06-13 19:18:43,285.285 INFO    ] 200
[2026-06-13 19:18:43,287.287 INFO    ] {"data":{"server_response":{"status":"true","SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"},"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"voiceNote":"Please Wait"},"order_id":"TM08202203260613191754463","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 19:18:43,290.290 INFO    ] {'data': {'server_response': {'status': 'true', 'rstatus': True, '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': []}, 'delay': 0, 'voiceNote': 'Please Wait'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 19:18:43,292.292 INFO    ] 2026-06-13 19:18:43
[2026-06-13 19:18:43,293.293 INFO    ] None
[2026-06-13 19:18:43,295.295 INFO    ] Opening Door now
[2026-06-13 19:18:43,297.297 INFO    ] Opening Door now
[2026-06-13 19:18:43,299.299 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 19:18:43,301.301 INFO    ] 2026-06-13 19:18:43
[2026-06-13 19:18:43,302.302 INFO    ] playing audio file
[2026-06-13 19:18:43,313.313 INFO    ] 2026-06-13 19:18:43
[2026-06-13 19:18:43,315.315 INFO    ] 2026-06-13 19:18:43
[2026-06-13 19:18:46,400.400 INFO    ] 200
[2026-06-13 19:18:46,402.402 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 19:18:46,405.405 INFO    ] {'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'BRU Cold Coffee Classic 200ml', 'qty': 1}]}, 'voiceNote': 'Door 2 is open now'}
[2026-06-13 19:18:49,500.500 INFO    ] 200
[2026-06-13 19:18:49,503.503 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 19:18:49,507.507 INFO    ] {'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'BRU Cold Coffee Classic 200ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2'}
[2026-06-13 19:18:52,600.600 INFO    ] 200
[2026-06-13 19:18:52,604.604 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "BRU Cold Coffee Classic 200ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 19:18:52,607.607 INFO    ] Please close door 2
[2026-06-13 19:18:52,611.611 INFO    ] Please close door 2
[2026-06-13 19:18:52,614.614 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 19:18:52,618.618 INFO    ] 2026-06-13 19:18:52
[2026-06-13 19:18:52,623.623 INFO    ] playing audio file
[2026-06-13 19:18:52,643.643 INFO    ] 2026-06-13 19:18:52
[2026-06-13 19:18:52,648.648 INFO    ] publish_status: order_id=TM08202203260613191754463
[2026-06-13 19:18:52,652.652 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613191754463
[2026-06-13 19:18:52,738.738 INFO    ] [publish_status] Message added to stream with ID: 1781358532714-0
[2026-06-13 19:18:52,741.741 INFO    ] Published to order:TM08202203260613191754463: {'server_response': '{"error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "BRU Cold Coffee Classic 200ml", "qty": 1}]}, "voiceNote": "Please close door 2"}', 'order_id': 'TM08202203260613191754463', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T13:48:52.645783Z'} (ID: 1781358532714-0)
[2026-06-13 19:18:53,173.173 INFO    ] {'server_response': {'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'BRU Cold Coffee Classic 200ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'OrderStatus'}
[2026-06-13 19:18:53,175.175 INFO    ] 200
[2026-06-13 19:18:53,178.178 INFO    ] {"data":{"server_response":{"error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"SectionMain":{"Header":"Door Open"},"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"BRU Cold Coffee Classic 200ml","qty":1}]},"voiceNote":"Please close door 2"},"order_id":"TM08202203260613191754463","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 19:18:53,182.182 INFO    ] {'data': {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'BRU Cold Coffee Classic 200ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 19:18:53,184.184 INFO    ] {'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'BRU Cold Coffee Classic 200ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2'}
[2026-06-13 19:18:56,220.220 INFO    ] 200
[2026-06-13 19:18:56,222.222 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 19:18:56,224.224 INFO    ] {'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-13 19:18:56,226.226 INFO    ] 2026-06-13 19:18:56
[2026-06-13 19:18:56,227.227 INFO    ] Order Completed 
[2026-06-13 19:18:56,229.229 INFO    ] Order Completed 
[2026-06-13 19:18:56,230.230 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 19:18:56,232.232 INFO    ] 2026-06-13 19:18:56
[2026-06-13 19:18:56,234.234 INFO    ] playing audio file
[2026-06-13 19:18:56,245.245 INFO    ] 2026-06-13 19:18:56
[2026-06-13 19:18:56,247.247 INFO    ] {'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-13 19:18:56,248.248 INFO    ] 2026-06-13 19:18:56
[2026-06-13 19:18:57,765.765 INFO    ] 200
[2026-06-13 19:18:57,768.768 INFO    ] {"res": "True", "orderId": "TM08202203260613191754463", "skus": [{"image_url": "https://images.tinymart.in/product/4500656-2520.webp", "skuid": "4500656", "door_id": "", "tray_id": "46", "name": "BRU Cold Coffee Classic 200ml per peice", "unit_price": "60", "mrp": "60", "qty": 1, "sku_total": 60.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 60.0}
[2026-06-13 19:18:57,771.771 INFO    ] {'anomaly': 0, 'skus': [{'name': 'BRU Cold Coffee Classic 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': '60', 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'mrp': '60', 'sku_total': 60.0, 'door_id': ''}], 'logic': 'WBL', 'total_amount': 60.0, 'rstatus': True, 'orderId': 'TM08202203260613191754463', 'res': 'True'}
[2026-06-13 19:18:57,773.773 INFO    ] {'anomaly': 0, 'skus': [{'name': 'BRU Cold Coffee Classic 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': '60', 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'mrp': '60', 'sku_total': 60.0, 'door_id': ''}], 'logic': 'WBL', 'total_amount': 60.0, 'rstatus': True, 'orderId': 'TM08202203260613191754463', 'res': 'True'}
[2026-06-13 19:18:57,776.776 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,778.778 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,781.781 INFO    ] 60
[2026-06-13 19:18:57,783.783 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,786.786 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,788.788 INFO    ]  Your Bill Amount is 60
[2026-06-13 19:18:57,790.790 INFO    ]  Your Bill Amount is 60
[2026-06-13 19:18:57,793.793 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-13 19:18:57,796.796 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,798.798 INFO    ] playing audio file
[2026-06-13 19:18:57,816.816 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,820.820 INFO    ] 2026-06-13 19:18:57
[2026-06-13 19:18:57,824.824 INFO    ] publish_status: order_id=TM08202203260613191754463
[2026-06-13 19:18:57,827.827 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613191754463
[2026-06-13 19:18:57,886.886 INFO    ] [publish_status] Message added to stream with ID: 1781358537863-0
[2026-06-13 19:18:57,890.890 INFO    ] Published to order:TM08202203260613191754463: {'server_response': '{"anomaly": 0, "skus": [{"name": "BRU Cold Coffee Classic 200ml per peice", "image_url": "https://images.tinymart.in/product/4500656-2520.webp", "unit_price": "60", "tray_id": "46", "qty": 1, "skuid": "4500656", "mrp": "60", "sku_total": 60.0, "door_id": ""}], "logic": "WBL", "total_amount": 60.0, "rstatus": true, "orderId": "TM08202203260613191754463", "res": "True"}', 'order_id': 'TM08202203260613191754463', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T13:48:57.821615Z'} (ID: 1781358537863-0)
[2026-06-13 19:18:58,006.006 INFO    ] {'server_response': {'anomaly': 0, 'skus': [{'name': 'BRU Cold Coffee Classic 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': '60', 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'mrp': '60', 'sku_total': 60.0, 'door_id': ''}], 'logic': 'WBL', 'total_amount': 60.0, 'rstatus': True, 'orderId': 'TM08202203260613191754463', 'res': 'True'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'invoiceOrder'}
[2026-06-13 19:18:58,009.009 INFO    ] 200
[2026-06-13 19:18:58,012.012 INFO    ] {"data":{"server_response":{"anomaly":0,"skus":[{"name":"BRU Cold Coffee Classic 200ml per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500656-2520.webp","unit_price":"60","tray_id":"46","qty":1,"skuid":"4500656","mrp":"60","sku_total":60,"door_id":""}],"logic":"WBL","total_amount":60,"rstatus":true,"orderId":"TM08202203260613191754463","res":"true"},"order_id":"TM08202203260613191754463","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 19:18:58,015.015 INFO    ] {'data': {'server_response': {'logic': 'WBL', 'anomaly': 0, 'total_amount': 60, 'rstatus': True, 'skus': [{'name': 'BRU Cold Coffee Classic 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': '60', 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'mrp': '60', 'sku_total': 60, 'door_id': ''}], 'orderId': 'TM08202203260613191754463', 'res': 'true'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 19:18:58,019.019 INFO    ] {'data': {'server_response': {'logic': 'WBL', 'anomaly': 0, 'total_amount': 60, 'rstatus': True, 'skus': [{'name': 'BRU Cold Coffee Classic 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500656-2520.webp', 'unit_price': '60', 'tray_id': '46', 'qty': 1, 'skuid': '4500656', 'mrp': '60', 'sku_total': 60, 'door_id': ''}], 'orderId': 'TM08202203260613191754463', 'res': 'true'}, 'order_id': 'TM08202203260613191754463', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}}
[2026-06-13 19:18:58,022.022 INFO    ] 2026-06-13 19:18:58
[2026-06-13 19:19:00,541.541 INFO    ] 200
[2026-06-13 19:19:00,544.544 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463", "TM08202203260613191754463"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 19:19:00,547.547 INFO    ] 2026-06-13 19:19:00
[2026-06-13 19:19:00,704.704 INFO    ] 200
[2026-06-13 19:19:00,707.707 INFO    ] True
[2026-06-13 19:19:00,710.710 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613191754463
[2026-06-13 19:19:00,714.714 INFO    ] start order file deleted
[2026-06-13 19:19:00,717.717 INFO    ] Checking for system updates...
[2026-06-13 19:19:00,762.762 INFO    ] 200
[2026-06-13 19:19:00,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:00,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:19:00,863.863 INFO    ] No update needed
[2026-06-13 19:19:00,864.864 INFO    ] Checking for camera pi updates...
[2026-06-13 19:19:00,889.889 INFO    ] 200
[2026-06-13 19:19:00,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:00,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:19:00,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:19:00,961.961 INFO    ] No camera update needed
[2026-06-13 19:19:00,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:19:00,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:19:00,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:19:00,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:19:03,016.016 INFO    ] ================================================
[2026-06-13 19:19:03,036.036 INFO    ] Launching Daemon at Sat Jun 13 19:19:03 IST 2026
[2026-06-13 19:19:03,047.047 INFO    ] ================================================
[2026-06-13 19:19:03,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:19:03
[2026-06-13 19:19:04,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:19:04,544.544 INFO    ] Initializing speech engine...
[2026-06-13 19:19:04,555.555 INFO    ] 2026-06-13 19:19:04
[2026-06-13 19:19:04,772.772 INFO    ] 2026-06-13 19:19:04
[2026-06-13 19:19:04,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:19:04,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:19:04,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:19:05,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:19:05,191.191 INFO    ] time= 13/06/2026 19:19:05
[2026-06-13 19:19:05,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:19:05,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:19:05,293.293 INFO    ] No existing commands found in stream
[2026-06-13 19:19:10,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:19:10,306.306 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 19:19:11,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:19:11,720.720 INFO    ] Checking for system updates...
[2026-06-13 19:19:11,743.743 INFO    ] 200
[2026-06-13 19:19:11,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:11,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:11,777.777 INFO    ] No update needed
[2026-06-13 19:19:11,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 19:19:11,799.799 INFO    ] 200
[2026-06-13 19:19:11,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:11,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:19:11,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:11,865.865 INFO    ] No camera update needed
[2026-06-13 19:19:11,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:19:11,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:19:11,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:19:11,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:19:13,915.915 INFO    ] ================================================
[2026-06-13 19:19:13,931.931 INFO    ] Launching Daemon at Sat Jun 13 19:19:13 IST 2026
[2026-06-13 19:19:13,942.942 INFO    ] ================================================
[2026-06-13 19:19:14,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:19:14
[2026-06-13 19:19:14,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:19:14,857.857 INFO    ] Initializing speech engine...
[2026-06-13 19:19:14,868.868 INFO    ] 2026-06-13 19:19:14
[2026-06-13 19:19:15,121.121 INFO    ] 2026-06-13 19:19:15
[2026-06-13 19:19:15,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:19:15,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:19:15,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:19:15,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:19:15,459.459 INFO    ] time= 13/06/2026 19:19:15
[2026-06-13 19:19:15,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:19:15,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:19:15,570.570 INFO    ] No existing commands found in stream
[2026-06-13 19:19:20,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:19:20,585.585 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 19:19:23,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:19:23,507.507 INFO    ] Checking for system updates...
[2026-06-13 19:19:23,528.528 INFO    ] 200
[2026-06-13 19:19:23,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:23,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:23,563.563 INFO    ] No update needed
[2026-06-13 19:19:23,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 19:19:23,584.584 INFO    ] 200
[2026-06-13 19:19:23,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:23,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:19:23,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:23,752.752 INFO    ] No camera update needed
[2026-06-13 19:19:23,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:19:23,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:19:23,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:19:23,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:19:25,801.801 INFO    ] ================================================
[2026-06-13 19:19:25,817.817 INFO    ] Launching Daemon at Sat Jun 13 19:19:25 IST 2026
[2026-06-13 19:19:25,828.828 INFO    ] ================================================
[2026-06-13 19:19:26,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:19:26
[2026-06-13 19:19:26,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:19:26,716.716 INFO    ] Initializing speech engine...
[2026-06-13 19:19:26,722.722 INFO    ] 2026-06-13 19:19:26
[2026-06-13 19:19:26,930.930 INFO    ] 2026-06-13 19:19:26
[2026-06-13 19:19:26,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:19:27,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:19:27,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:19:27,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:19:27,357.357 INFO    ] time= 13/06/2026 19:19:27
[2026-06-13 19:19:27,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:19:27,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:19:27,454.454 INFO    ] No existing commands found in stream
[2026-06-13 19:19:32,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:19:32,464.464 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 19:19:34,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:19:34,967.967 INFO    ] Checking for system updates...
[2026-06-13 19:19:34,988.988 INFO    ] 200
[2026-06-13 19:19:34,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:35,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:35,022.022 INFO    ] No update needed
[2026-06-13 19:19:35,023.023 INFO    ] Checking for camera pi updates...
[2026-06-13 19:19:35,043.043 INFO    ] 200
[2026-06-13 19:19:35,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:35,068.068 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:19:35,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:35,108.108 INFO    ] No camera update needed
[2026-06-13 19:19:35,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:19:35,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:19:35,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:19:35,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:19:37,158.158 INFO    ] ================================================
[2026-06-13 19:19:37,173.173 INFO    ] Launching Daemon at Sat Jun 13 19:19:37 IST 2026
[2026-06-13 19:19:37,184.184 INFO    ] ================================================
[2026-06-13 19:19:37,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:19:37
[2026-06-13 19:19:37,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:19:38,005.005 INFO    ] Initializing speech engine...
[2026-06-13 19:19:38,011.011 INFO    ] 2026-06-13 19:19:38
[2026-06-13 19:19:38,215.215 INFO    ] 2026-06-13 19:19:38
[2026-06-13 19:19:38,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:19:38,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:19:38,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:19:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:19:38,623.623 INFO    ] time= 13/06/2026 19:19:38
[2026-06-13 19:19:38,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:19:38,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:19:38,734.734 INFO    ] No existing commands found in stream
[2026-06-13 19:19:43,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:19:43,746.746 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 19:19:47,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:19:47,973.973 INFO    ] Checking for system updates...
[2026-06-13 19:19:47,994.994 INFO    ] 200
[2026-06-13 19:19:47,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:48,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:48,028.028 INFO    ] No update needed
[2026-06-13 19:19:48,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 19:19:48,049.049 INFO    ] 200
[2026-06-13 19:19:48,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:19:48,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:19:48,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:19:48,115.115 INFO    ] No camera update needed
[2026-06-13 19:19:48,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:19:48,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:19:48,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:19:48,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:19:50,165.165 INFO    ] ================================================
[2026-06-13 19:19:50,181.181 INFO    ] Launching Daemon at Sat Jun 13 19:19:50 IST 2026
[2026-06-13 19:19:50,192.192 INFO    ] ================================================
[2026-06-13 19:19:50,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:19:50
[2026-06-13 19:19:50,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:19:51,004.004 INFO    ] Initializing speech engine...
[2026-06-13 19:19:51,008.008 INFO    ] 2026-06-13 19:19:51
[2026-06-13 19:19:51,207.207 INFO    ] 2026-06-13 19:19:51
[2026-06-13 19:19:51,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:19:51,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:19:51,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:19:51,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:19:51,493.493 INFO    ] time= 13/06/2026 19:19:51
[2026-06-13 19:19:51,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:19:51,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:19:51,580.580 INFO    ] No existing commands found in stream
[2026-06-13 19:19:56,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:19:56,614.614 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 19:20:00,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:20:00,831.831 INFO    ] Checking for system updates...
[2026-06-13 19:20:00,852.852 INFO    ] 200
[2026-06-13 19:20:00,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:00,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:00,887.887 INFO    ] No update needed
[2026-06-13 19:20:00,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:00,910.910 INFO    ] 200
[2026-06-13 19:20:00,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:00,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:00,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:00,974.974 INFO    ] No camera update needed
[2026-06-13 19:20:00,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:00,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:00,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:00,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:20:03,019.019 INFO    ] ================================================
[2026-06-13 19:20:03,035.035 INFO    ] Launching Daemon at Sat Jun 13 19:20:03 IST 2026
[2026-06-13 19:20:03,046.046 INFO    ] ================================================
[2026-06-13 19:20:03,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:20:03
[2026-06-13 19:20:03,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:20:03,836.836 INFO    ] Initializing speech engine...
[2026-06-13 19:20:03,840.840 INFO    ] 2026-06-13 19:20:03
[2026-06-13 19:20:04,069.069 INFO    ] 2026-06-13 19:20:04
[2026-06-13 19:20:04,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:20:04,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:20:04,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:20:04,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:20:04,481.481 INFO    ] time= 13/06/2026 19:20:04
[2026-06-13 19:20:04,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:20:04,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:20:04,629.629 INFO    ] No existing commands found in stream
[2026-06-13 19:20:09,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:20:09,642.642 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 19:20:13,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:20:13,287.287 INFO    ] Checking for system updates...
[2026-06-13 19:20:13,316.316 INFO    ] 200
[2026-06-13 19:20:13,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:13,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:13,350.350 INFO    ] No update needed
[2026-06-13 19:20:13,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:13,371.371 INFO    ] 200
[2026-06-13 19:20:13,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:13,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:13,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:20:13,434.434 INFO    ] No camera update needed
[2026-06-13 19:20:13,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:13,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:13,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:13,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:20:15,486.486 INFO    ] ================================================
[2026-06-13 19:20:15,502.502 INFO    ] Launching Daemon at Sat Jun 13 19:20:15 IST 2026
[2026-06-13 19:20:15,513.513 INFO    ] ================================================
[2026-06-13 19:20:15,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:20:15
[2026-06-13 19:20:16,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:20:16,406.406 INFO    ] Initializing speech engine...
[2026-06-13 19:20:16,419.419 INFO    ] 2026-06-13 19:20:16
[2026-06-13 19:20:16,699.699 INFO    ] 2026-06-13 19:20:16
[2026-06-13 19:20:16,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:20:16,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:20:17,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:20:17,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:20:17,167.167 INFO    ] time= 13/06/2026 19:20:17
[2026-06-13 19:20:17,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:20:17,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:20:17,382.382 INFO    ] No existing commands found in stream
[2026-06-13 19:20:22,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:20:22,407.407 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 19:20:24,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:20:24,597.597 INFO    ] Checking for system updates...
[2026-06-13 19:20:24,618.618 INFO    ] 200
[2026-06-13 19:20:24,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:24,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:24,651.651 INFO    ] No update needed
[2026-06-13 19:20:24,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:24,673.673 INFO    ] 200
[2026-06-13 19:20:24,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:24,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:24,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:24,738.738 INFO    ] No camera update needed
[2026-06-13 19:20:24,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:24,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:24,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:24,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:20:26,787.787 INFO    ] ================================================
[2026-06-13 19:20:26,803.803 INFO    ] Launching Daemon at Sat Jun 13 19:20:26 IST 2026
[2026-06-13 19:20:26,814.814 INFO    ] ================================================
[2026-06-13 19:20:27,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:20:27
[2026-06-13 19:20:27,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:20:27,709.709 INFO    ] Initializing speech engine...
[2026-06-13 19:20:27,716.716 INFO    ] 2026-06-13 19:20:27
[2026-06-13 19:20:27,994.994 INFO    ] 2026-06-13 19:20:27
[2026-06-13 19:20:28,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:20:28,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:20:28,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:20:28,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:20:28,486.486 INFO    ] time= 13/06/2026 19:20:28
[2026-06-13 19:20:28,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:20:28,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:20:28,709.709 INFO    ] No existing commands found in stream
[2026-06-13 19:20:33,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:20:33,735.735 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 19:20:37,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:20:37,645.645 INFO    ] Checking for system updates...
[2026-06-13 19:20:37,669.669 INFO    ] 200
[2026-06-13 19:20:37,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:37,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:20:37,710.710 INFO    ] No update needed
[2026-06-13 19:20:37,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:37,735.735 INFO    ] 200
[2026-06-13 19:20:37,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:37,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:37,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:20:37,803.803 INFO    ] No camera update needed
[2026-06-13 19:20:37,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:37,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:37,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:37,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:20:39,853.853 INFO    ] ================================================
[2026-06-13 19:20:39,869.869 INFO    ] Launching Daemon at Sat Jun 13 19:20:39 IST 2026
[2026-06-13 19:20:39,880.880 INFO    ] ================================================
[2026-06-13 19:20:40,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:20:40
[2026-06-13 19:20:40,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:20:40,679.679 INFO    ] Initializing speech engine...
[2026-06-13 19:20:40,687.687 INFO    ] 2026-06-13 19:20:40
[2026-06-13 19:20:40,904.904 INFO    ] 2026-06-13 19:20:40
[2026-06-13 19:20:40,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:20:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:20:41,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:20:41,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:20:41,334.334 INFO    ] time= 13/06/2026 19:20:41
[2026-06-13 19:20:41,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:20:41,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:20:41,461.461 INFO    ] No existing commands found in stream
[2026-06-13 19:20:46,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:20:46,475.475 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 19:20:47,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:20:47,127.127 INFO    ] Checking for system updates...
[2026-06-13 19:20:47,148.148 INFO    ] 200
[2026-06-13 19:20:47,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:47,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:20:47,181.181 INFO    ] No update needed
[2026-06-13 19:20:47,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:47,203.203 INFO    ] 200
[2026-06-13 19:20:47,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:47,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:47,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:20:47,276.276 INFO    ] No camera update needed
[2026-06-13 19:20:47,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:47,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:47,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:47,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:20:49,323.323 INFO    ] ================================================
[2026-06-13 19:20:49,339.339 INFO    ] Launching Daemon at Sat Jun 13 19:20:49 IST 2026
[2026-06-13 19:20:49,349.349 INFO    ] ================================================
[2026-06-13 19:20:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:20:49
[2026-06-13 19:20:50,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:20:50,242.242 INFO    ] Initializing speech engine...
[2026-06-13 19:20:50,267.267 INFO    ] 2026-06-13 19:20:50
[2026-06-13 19:20:50,552.552 INFO    ] 2026-06-13 19:20:50
[2026-06-13 19:20:50,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:20:50,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:20:50,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:20:50,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:20:50,912.912 INFO    ] time= 13/06/2026 19:20:50
[2026-06-13 19:20:50,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:20:50,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:20:50,993.993 INFO    ] No existing commands found in stream
[2026-06-13 19:20:56,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:20:56,006.006 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 19:20:58,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:20:58,692.692 INFO    ] Checking for system updates...
[2026-06-13 19:20:58,713.713 INFO    ] 200
[2026-06-13 19:20:58,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:58,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:58,749.749 INFO    ] No update needed
[2026-06-13 19:20:58,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 19:20:58,773.773 INFO    ] 200
[2026-06-13 19:20:58,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:20:58,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:20:58,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:20:58,841.841 INFO    ] No camera update needed
[2026-06-13 19:20:58,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:20:58,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:20:58,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:20:58,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:00,891.891 INFO    ] ================================================
[2026-06-13 19:21:00,907.907 INFO    ] Launching Daemon at Sat Jun 13 19:21:00 IST 2026
[2026-06-13 19:21:00,918.918 INFO    ] ================================================
[2026-06-13 19:21:01,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:01
[2026-06-13 19:21:02,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:02,350.350 INFO    ] Initializing speech engine...
[2026-06-13 19:21:02,359.359 INFO    ] 2026-06-13 19:21:02
[2026-06-13 19:21:02,658.658 INFO    ] 2026-06-13 19:21:02
[2026-06-13 19:21:02,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:02,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:02,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:03,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:03,027.027 INFO    ] time= 13/06/2026 19:21:03
[2026-06-13 19:21:03,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:03,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:03,122.122 INFO    ] No existing commands found in stream
[2026-06-13 19:21:08,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:21:08,163.163 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 19:21:09,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:21:09,301.301 INFO    ] Checking for system updates...
[2026-06-13 19:21:09,322.322 INFO    ] 200
[2026-06-13 19:21:09,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:09,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:21:09,359.359 INFO    ] No update needed
[2026-06-13 19:21:09,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 19:21:09,380.380 INFO    ] 200
[2026-06-13 19:21:09,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:09,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:21:09,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:21:09,442.442 INFO    ] No camera update needed
[2026-06-13 19:21:09,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:21:09,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:21:09,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:21:09,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:11,489.489 INFO    ] ================================================
[2026-06-13 19:21:11,505.505 INFO    ] Launching Daemon at Sat Jun 13 19:21:11 IST 2026
[2026-06-13 19:21:11,515.515 INFO    ] ================================================
[2026-06-13 19:21:11,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:11
[2026-06-13 19:21:12,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:12,302.302 INFO    ] Initializing speech engine...
[2026-06-13 19:21:12,310.310 INFO    ] 2026-06-13 19:21:12
[2026-06-13 19:21:12,524.524 INFO    ] 2026-06-13 19:21:12
[2026-06-13 19:21:12,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:12,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:12,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:12,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:12,933.933 INFO    ] time= 13/06/2026 19:21:12
[2026-06-13 19:21:12,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:12,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:13,051.051 INFO    ] No existing commands found in stream
[2026-06-13 19:21:18,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:21:18,064.064 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-13 19:21:19,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:21:19,037.037 INFO    ] Checking for system updates...
[2026-06-13 19:21:19,057.057 INFO    ] 200
[2026-06-13 19:21:19,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:19,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:21:19,093.093 INFO    ] No update needed
[2026-06-13 19:21:19,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 19:21:19,116.116 INFO    ] 200
[2026-06-13 19:21:19,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:19,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:21:19,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:21:19,182.182 INFO    ] No camera update needed
[2026-06-13 19:21:19,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:21:19,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:21:19,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:21:19,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:21,230.230 INFO    ] ================================================
[2026-06-13 19:21:21,246.246 INFO    ] Launching Daemon at Sat Jun 13 19:21:21 IST 2026
[2026-06-13 19:21:21,257.257 INFO    ] ================================================
[2026-06-13 19:21:21,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:21
[2026-06-13 19:21:21,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:22,061.061 INFO    ] Initializing speech engine...
[2026-06-13 19:21:22,071.071 INFO    ] 2026-06-13 19:21:22
[2026-06-13 19:21:22,279.279 INFO    ] 2026-06-13 19:21:22
[2026-06-13 19:21:22,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:22,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:22,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:22,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:22,691.691 INFO    ] time= 13/06/2026 19:21:22
[2026-06-13 19:21:22,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:22,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:22,803.803 INFO    ] No existing commands found in stream
[2026-06-13 19:21:27,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:21:27,813.813 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 19:21:30,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:21:30,837.837 INFO    ] Checking for system updates...
[2026-06-13 19:21:30,874.874 INFO    ] 200
[2026-06-13 19:21:30,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:30,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:21:30,908.908 INFO    ] No update needed
[2026-06-13 19:21:30,909.909 INFO    ] Checking for camera pi updates...
[2026-06-13 19:21:30,930.930 INFO    ] 200
[2026-06-13 19:21:30,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:30,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:21:31,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:21:31,094.094 INFO    ] No camera update needed
[2026-06-13 19:21:31,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:21:31,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:21:31,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:21:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:33,128.128 INFO    ] ================================================
[2026-06-13 19:21:33,136.136 INFO    ] Launching Daemon at Sat Jun 13 19:21:33 IST 2026
[2026-06-13 19:21:33,143.143 INFO    ] ================================================
[2026-06-13 19:21:33,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:33
[2026-06-13 19:21:33,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:33,936.936 INFO    ] Initializing speech engine...
[2026-06-13 19:21:33,948.948 INFO    ] 2026-06-13 19:21:33
[2026-06-13 19:21:34,158.158 INFO    ] 2026-06-13 19:21:34
[2026-06-13 19:21:34,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:34,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:34,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:34,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:34,549.549 INFO    ] time= 13/06/2026 19:21:34
[2026-06-13 19:21:34,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:34,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:34,675.675 INFO    ] No existing commands found in stream
[2026-06-13 19:21:39,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:21:39,687.687 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 19:21:42,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:21:42,766.766 INFO    ] Checking for system updates...
[2026-06-13 19:21:42,786.786 INFO    ] 200
[2026-06-13 19:21:42,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:42,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:21:42,820.820 INFO    ] No update needed
[2026-06-13 19:21:42,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 19:21:42,841.841 INFO    ] 200
[2026-06-13 19:21:42,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:42,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:21:42,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:21:42,905.905 INFO    ] No camera update needed
[2026-06-13 19:21:42,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:21:42,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:21:42,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:21:42,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:44,954.954 INFO    ] ================================================
[2026-06-13 19:21:44,969.969 INFO    ] Launching Daemon at Sat Jun 13 19:21:44 IST 2026
[2026-06-13 19:21:44,980.980 INFO    ] ================================================
[2026-06-13 19:21:45,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:45
[2026-06-13 19:21:45,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:45,764.764 INFO    ] Initializing speech engine...
[2026-06-13 19:21:45,774.774 INFO    ] 2026-06-13 19:21:45
[2026-06-13 19:21:45,979.979 INFO    ] 2026-06-13 19:21:45
[2026-06-13 19:21:46,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:46,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:46,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:46,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:46,392.392 INFO    ] time= 13/06/2026 19:21:46
[2026-06-13 19:21:46,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:46,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:46,504.504 INFO    ] No existing commands found in stream
[2026-06-13 19:21:51,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:21:51,516.516 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 19:21:51,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:21:51,972.972 INFO    ] Checking for system updates...
[2026-06-13 19:21:51,995.995 INFO    ] 200
[2026-06-13 19:21:51,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:52,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:21:52,028.028 INFO    ] No update needed
[2026-06-13 19:21:52,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 19:21:52,050.050 INFO    ] 200
[2026-06-13 19:21:52,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:21:52,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:21:52,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:21:52,112.112 INFO    ] No camera update needed
[2026-06-13 19:21:52,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:21:52,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:21:52,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:21:52,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:21:54,161.161 INFO    ] ================================================
[2026-06-13 19:21:54,177.177 INFO    ] Launching Daemon at Sat Jun 13 19:21:54 IST 2026
[2026-06-13 19:21:54,188.188 INFO    ] ================================================
[2026-06-13 19:21:54,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:21:54
[2026-06-13 19:21:54,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:21:55,064.064 INFO    ] Initializing speech engine...
[2026-06-13 19:21:55,070.070 INFO    ] 2026-06-13 19:21:55
[2026-06-13 19:21:55,279.279 INFO    ] 2026-06-13 19:21:55
[2026-06-13 19:21:55,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:21:55,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:21:55,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:21:55,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:21:55,689.689 INFO    ] time= 13/06/2026 19:21:55
[2026-06-13 19:21:55,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:21:55,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:21:55,802.802 INFO    ] No existing commands found in stream
[2026-06-13 19:22:00,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:00,819.819 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 19:22:03,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:22:03,670.670 INFO    ] Checking for system updates...
[2026-06-13 19:22:03,691.691 INFO    ] 200
[2026-06-13 19:22:03,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:03,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:22:03,724.724 INFO    ] No update needed
[2026-06-13 19:22:03,726.726 INFO    ] Checking for camera pi updates...
[2026-06-13 19:22:03,745.745 INFO    ] 200
[2026-06-13 19:22:03,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:03,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:22:03,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:03,808.808 INFO    ] No camera update needed
[2026-06-13 19:22:03,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:22:03,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:22:03,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:22:03,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:22:05,857.857 INFO    ] ================================================
[2026-06-13 19:22:05,873.873 INFO    ] Launching Daemon at Sat Jun 13 19:22:05 IST 2026
[2026-06-13 19:22:05,884.884 INFO    ] ================================================
[2026-06-13 19:22:06,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:22:06
[2026-06-13 19:22:06,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:22:06,697.697 INFO    ] Initializing speech engine...
[2026-06-13 19:22:06,706.706 INFO    ] 2026-06-13 19:22:06
[2026-06-13 19:22:06,930.930 INFO    ] 2026-06-13 19:22:06
[2026-06-13 19:22:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:22:07,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:22:07,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:22:07,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:22:07,350.350 INFO    ] time= 13/06/2026 19:22:07
[2026-06-13 19:22:07,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:22:07,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:22:07,486.486 INFO    ] No existing commands found in stream
[2026-06-13 19:22:12,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:12,500.500 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 19:22:15,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:22:15,511.511 INFO    ] Checking for system updates...
[2026-06-13 19:22:15,531.531 INFO    ] 200
[2026-06-13 19:22:15,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:15,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:22:15,564.564 INFO    ] No update needed
[2026-06-13 19:22:15,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 19:22:15,586.586 INFO    ] 200
[2026-06-13 19:22:15,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:15,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:22:15,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:15,661.661 INFO    ] No camera update needed
[2026-06-13 19:22:15,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:22:15,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:22:15,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:22:15,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:22:17,710.710 INFO    ] ================================================
[2026-06-13 19:22:17,726.726 INFO    ] Launching Daemon at Sat Jun 13 19:22:17 IST 2026
[2026-06-13 19:22:17,737.737 INFO    ] ================================================
[2026-06-13 19:22:18,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:22:18
[2026-06-13 19:22:18,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:22:18,562.562 INFO    ] Initializing speech engine...
[2026-06-13 19:22:18,567.567 INFO    ] 2026-06-13 19:22:18
[2026-06-13 19:22:18,771.771 INFO    ] 2026-06-13 19:22:18
[2026-06-13 19:22:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:22:18,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:22:18,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:22:19,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:22:19,189.189 INFO    ] time= 13/06/2026 19:22:19
[2026-06-13 19:22:19,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:22:19,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:22:19,284.284 INFO    ] No existing commands found in stream
[2026-06-13 19:22:24,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:24,299.299 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 19:22:26,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:22:26,613.613 INFO    ] Checking for system updates...
[2026-06-13 19:22:26,634.634 INFO    ] 200
[2026-06-13 19:22:26,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:26,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:26,668.668 INFO    ] No update needed
[2026-06-13 19:22:26,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 19:22:26,689.689 INFO    ] 200
[2026-06-13 19:22:26,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:26,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:22:26,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:26,755.755 INFO    ] No camera update needed
[2026-06-13 19:22:26,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:22:26,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:22:26,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:22:26,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:22:28,806.806 INFO    ] ================================================
[2026-06-13 19:22:28,821.821 INFO    ] Launching Daemon at Sat Jun 13 19:22:28 IST 2026
[2026-06-13 19:22:28,833.833 INFO    ] ================================================
[2026-06-13 19:22:29,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:22:29
[2026-06-13 19:22:29,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:22:29,610.610 INFO    ] Initializing speech engine...
[2026-06-13 19:22:29,615.615 INFO    ] 2026-06-13 19:22:29
[2026-06-13 19:22:29,812.812 INFO    ] 2026-06-13 19:22:29
[2026-06-13 19:22:29,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:22:30,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:22:30,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:22:30,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:22:30,264.264 INFO    ] time= 13/06/2026 19:22:30
[2026-06-13 19:22:30,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:22:30,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:22:30,407.407 INFO    ] No existing commands found in stream
[2026-06-13 19:22:35,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:35,420.420 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 19:22:39,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:22:39,570.570 INFO    ] Checking for system updates...
[2026-06-13 19:22:39,606.606 INFO    ] 200
[2026-06-13 19:22:39,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:39,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:39,664.664 INFO    ] No update needed
[2026-06-13 19:22:39,667.667 INFO    ] Checking for camera pi updates...
[2026-06-13 19:22:39,695.695 INFO    ] 200
[2026-06-13 19:22:39,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:39,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:22:39,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:22:39,762.762 INFO    ] No camera update needed
[2026-06-13 19:22:39,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:22:39,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:22:39,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:22:39,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:22:41,810.810 INFO    ] ================================================
[2026-06-13 19:22:41,825.825 INFO    ] Launching Daemon at Sat Jun 13 19:22:41 IST 2026
[2026-06-13 19:22:41,835.835 INFO    ] ================================================
[2026-06-13 19:22:42,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:22:42
[2026-06-13 19:22:42,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:22:42,839.839 INFO    ] Initializing speech engine...
[2026-06-13 19:22:42,853.853 INFO    ] 2026-06-13 19:22:42
[2026-06-13 19:22:43,160.160 INFO    ] 2026-06-13 19:22:43
[2026-06-13 19:22:43,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:22:43,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:22:43,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:22:43,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:22:43,668.668 INFO    ] time= 13/06/2026 19:22:43
[2026-06-13 19:22:43,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:22:43,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:22:43,810.810 INFO    ] No existing commands found in stream
[2026-06-13 19:22:48,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:48,840.840 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 19:22:50,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:22:50,296.296 INFO    ] Checking for system updates...
[2026-06-13 19:22:50,319.319 INFO    ] 200
[2026-06-13 19:22:50,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:50,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:50,355.355 INFO    ] No update needed
[2026-06-13 19:22:50,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 19:22:50,378.378 INFO    ] 200
[2026-06-13 19:22:50,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:22:50,406.406 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:22:50,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:22:50,446.446 INFO    ] No camera update needed
[2026-06-13 19:22:50,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:22:50,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:22:50,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:22:50,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:22:52,495.495 INFO    ] ================================================
[2026-06-13 19:22:52,510.510 INFO    ] Launching Daemon at Sat Jun 13 19:22:52 IST 2026
[2026-06-13 19:22:52,521.521 INFO    ] ================================================
[2026-06-13 19:22:52,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:22:52
[2026-06-13 19:22:53,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:22:53,300.300 INFO    ] Initializing speech engine...
[2026-06-13 19:22:53,303.303 INFO    ] 2026-06-13 19:22:53
[2026-06-13 19:22:53,497.497 INFO    ] 2026-06-13 19:22:53
[2026-06-13 19:22:53,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:22:53,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:22:53,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:22:53,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:22:53,954.954 INFO    ] time= 13/06/2026 19:22:53
[2026-06-13 19:22:54,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:22:54,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:22:54,104.104 INFO    ] No existing commands found in stream
[2026-06-13 19:22:59,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:22:59,113.113 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 19:23:01,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:23:01,840.840 INFO    ] Checking for system updates...
[2026-06-13 19:23:01,882.882 INFO    ] 200
[2026-06-13 19:23:01,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:01,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:01,944.944 INFO    ] No update needed
[2026-06-13 19:23:01,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:01,991.991 INFO    ] 200
[2026-06-13 19:23:01,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:02,056.056 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:02,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:02,092.092 INFO    ] No camera update needed
[2026-06-13 19:23:02,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:02,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:02,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:02,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:04,150.150 INFO    ] ================================================
[2026-06-13 19:23:04,165.165 INFO    ] Launching Daemon at Sat Jun 13 19:23:04 IST 2026
[2026-06-13 19:23:04,176.176 INFO    ] ================================================
[2026-06-13 19:23:04,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:04
[2026-06-13 19:23:04,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:05,020.020 INFO    ] Initializing speech engine...
[2026-06-13 19:23:05,026.026 INFO    ] 2026-06-13 19:23:05
[2026-06-13 19:23:05,236.236 INFO    ] 2026-06-13 19:23:05
[2026-06-13 19:23:05,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:23:05,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:23:05,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:23:05,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:23:05,657.657 INFO    ] time= 13/06/2026 19:23:05
[2026-06-13 19:23:05,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:23:05,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:23:05,752.752 INFO    ] No existing commands found in stream
[2026-06-13 19:23:10,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:23:10,770.770 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 19:23:13,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:23:13,193.193 INFO    ] Checking for system updates...
[2026-06-13 19:23:13,214.214 INFO    ] 200
[2026-06-13 19:23:13,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:13,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:13,250.250 INFO    ] No update needed
[2026-06-13 19:23:13,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:13,272.272 INFO    ] 200
[2026-06-13 19:23:13,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:13,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:13,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:13,345.345 INFO    ] No camera update needed
[2026-06-13 19:23:13,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:13,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:13,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:13,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:15,394.394 INFO    ] ================================================
[2026-06-13 19:23:15,409.409 INFO    ] Launching Daemon at Sat Jun 13 19:23:15 IST 2026
[2026-06-13 19:23:15,420.420 INFO    ] ================================================
[2026-06-13 19:23:15,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:15
[2026-06-13 19:23:16,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:16,201.201 INFO    ] Initializing speech engine...
[2026-06-13 19:23:16,205.205 INFO    ] 2026-06-13 19:23:16
[2026-06-13 19:23:16,399.399 INFO    ] 2026-06-13 19:23:16
[2026-06-13 19:23:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:23:16,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:23:16,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:23:16,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:23:16,823.823 INFO    ] time= 13/06/2026 19:23:16
[2026-06-13 19:23:16,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:23:16,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:23:16,929.929 INFO    ] No existing commands found in stream
[2026-06-13 19:23:21,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:23:21,943.943 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 19:23:24,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:23:24,905.905 INFO    ] Checking for system updates...
[2026-06-13 19:23:24,941.941 INFO    ] 200
[2026-06-13 19:23:24,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:24,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:24,999.999 INFO    ] No update needed
[2026-06-13 19:23:25,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:25,025.025 INFO    ] 200
[2026-06-13 19:23:25,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:25,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:25,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:25,088.088 INFO    ] No camera update needed
[2026-06-13 19:23:25,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:25,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:25,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:25,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:27,135.135 INFO    ] ================================================
[2026-06-13 19:23:27,151.151 INFO    ] Launching Daemon at Sat Jun 13 19:23:27 IST 2026
[2026-06-13 19:23:27,162.162 INFO    ] ================================================
[2026-06-13 19:23:27,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:27
[2026-06-13 19:23:28,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:28,374.374 INFO    ] Initializing speech engine...
[2026-06-13 19:23:28,377.377 INFO    ] 2026-06-13 19:23:28
[2026-06-13 19:23:28,659.659 INFO    ] 2026-06-13 19:23:28
[2026-06-13 19:23:28,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:23:28,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:23:28,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:23:28,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:23:29,002.002 INFO    ] time= 13/06/2026 19:23:28
[2026-06-13 19:23:29,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:23:29,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:23:29,113.113 INFO    ] No existing commands found in stream
[2026-06-13 19:23:34,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:23:34,129.129 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 19:23:37,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:23:37,591.591 INFO    ] Checking for system updates...
[2026-06-13 19:23:37,613.613 INFO    ] 200
[2026-06-13 19:23:37,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:37,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:37,648.648 INFO    ] No update needed
[2026-06-13 19:23:37,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:37,669.669 INFO    ] 200
[2026-06-13 19:23:37,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:37,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:37,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:23:37,736.736 INFO    ] No camera update needed
[2026-06-13 19:23:37,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:37,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:37,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:37,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:39,785.785 INFO    ] ================================================
[2026-06-13 19:23:39,801.801 INFO    ] Launching Daemon at Sat Jun 13 19:23:39 IST 2026
[2026-06-13 19:23:39,813.813 INFO    ] ================================================
[2026-06-13 19:23:40,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:40
[2026-06-13 19:23:40,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:40,614.614 INFO    ] Initializing speech engine...
[2026-06-13 19:23:40,619.619 INFO    ] 2026-06-13 19:23:40
[2026-06-13 19:23:40,823.823 INFO    ] 2026-06-13 19:23:40
[2026-06-13 19:23:40,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:23:40,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:23:41,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:23:41,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:23:41,233.233 INFO    ] time= 13/06/2026 19:23:41
[2026-06-13 19:23:41,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:23:41,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:23:41,338.338 INFO    ] No existing commands found in stream
[2026-06-13 19:23:46,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:23:46,350.350 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 19:23:47,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:23:47,770.770 INFO    ] Checking for system updates...
[2026-06-13 19:23:47,791.791 INFO    ] 200
[2026-06-13 19:23:47,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:47,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:47,823.823 INFO    ] No update needed
[2026-06-13 19:23:47,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:47,844.844 INFO    ] 200
[2026-06-13 19:23:47,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:47,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:47,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:47,907.907 INFO    ] No camera update needed
[2026-06-13 19:23:47,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:47,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:47,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:47,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:49,953.953 INFO    ] ================================================
[2026-06-13 19:23:49,969.969 INFO    ] Launching Daemon at Sat Jun 13 19:23:49 IST 2026
[2026-06-13 19:23:49,980.980 INFO    ] ================================================
[2026-06-13 19:23:50,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:50
[2026-06-13 19:23:50,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:50,860.860 INFO    ] Initializing speech engine...
[2026-06-13 19:23:50,866.866 INFO    ] 2026-06-13 19:23:50
[2026-06-13 19:23:51,073.073 INFO    ] 2026-06-13 19:23:51
[2026-06-13 19:23:51,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:23:51,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:23:51,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:23:51,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:23:51,486.486 INFO    ] time= 13/06/2026 19:23:51
[2026-06-13 19:23:51,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:23:51,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:23:51,592.592 INFO    ] No existing commands found in stream
[2026-06-13 19:23:56,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:23:56,605.605 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 19:23:56,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:23:56,984.984 INFO    ] Checking for system updates...
[2026-06-13 19:23:57,006.006 INFO    ] 200
[2026-06-13 19:23:57,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:57,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:57,039.039 INFO    ] No update needed
[2026-06-13 19:23:57,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 19:23:57,061.061 INFO    ] 200
[2026-06-13 19:23:57,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:23:57,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:23:57,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:23:57,126.126 INFO    ] No camera update needed
[2026-06-13 19:23:57,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:23:57,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:23:57,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:23:57,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:23:59,175.175 INFO    ] ================================================
[2026-06-13 19:23:59,190.190 INFO    ] Launching Daemon at Sat Jun 13 19:23:59 IST 2026
[2026-06-13 19:23:59,202.202 INFO    ] ================================================
[2026-06-13 19:23:59,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:23:59
[2026-06-13 19:23:59,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:23:59,990.990 INFO    ] Initializing speech engine...
[2026-06-13 19:23:59,995.995 INFO    ] 2026-06-13 19:23:59
[2026-06-13 19:24:00,211.211 INFO    ] 2026-06-13 19:24:00
[2026-06-13 19:24:00,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:00,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:00,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:00,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:00,650.650 INFO    ] time= 13/06/2026 19:24:00
[2026-06-13 19:24:00,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:00,767.767 INFO    ] No existing commands found in stream
[2026-06-13 19:24:05,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:24:05,781.781 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 19:24:09,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:24:09,546.546 INFO    ] Checking for system updates...
[2026-06-13 19:24:09,590.590 INFO    ] 200
[2026-06-13 19:24:09,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:09,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:09,654.654 INFO    ] No update needed
[2026-06-13 19:24:09,656.656 INFO    ] Checking for camera pi updates...
[2026-06-13 19:24:09,694.694 INFO    ] 200
[2026-06-13 19:24:09,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:09,753.753 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:24:09,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:09,807.807 INFO    ] No camera update needed
[2026-06-13 19:24:09,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:24:09,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:24:09,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:24:09,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:24:11,851.851 INFO    ] ================================================
[2026-06-13 19:24:11,861.861 INFO    ] Launching Daemon at Sat Jun 13 19:24:11 IST 2026
[2026-06-13 19:24:11,867.867 INFO    ] ================================================
[2026-06-13 19:24:12,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:24:12
[2026-06-13 19:24:12,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:24:13,275.275 INFO    ] Initializing speech engine...
[2026-06-13 19:24:13,284.284 INFO    ] 2026-06-13 19:24:13
[2026-06-13 19:24:13,622.622 INFO    ] 2026-06-13 19:24:13
[2026-06-13 19:24:13,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:13,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:13,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:14,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:14,154.154 INFO    ] time= 13/06/2026 19:24:14
[2026-06-13 19:24:14,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:14,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:14,301.301 INFO    ] No existing commands found in stream
[2026-06-13 19:24:19,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:24:19,333.333 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 19:24:21,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:24:21,345.345 INFO    ] Checking for system updates...
[2026-06-13 19:24:21,366.366 INFO    ] 200
[2026-06-13 19:24:21,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:21,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:24:21,401.401 INFO    ] No update needed
[2026-06-13 19:24:21,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 19:24:21,422.422 INFO    ] 200
[2026-06-13 19:24:21,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:21,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:24:21,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:21,489.489 INFO    ] No camera update needed
[2026-06-13 19:24:21,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:24:21,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:24:21,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:24:21,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:24:23,539.539 INFO    ] ================================================
[2026-06-13 19:24:23,554.554 INFO    ] Launching Daemon at Sat Jun 13 19:24:23 IST 2026
[2026-06-13 19:24:23,565.565 INFO    ] ================================================
[2026-06-13 19:24:23,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:24:23
[2026-06-13 19:24:24,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:24:24,362.362 INFO    ] Initializing speech engine...
[2026-06-13 19:24:24,372.372 INFO    ] 2026-06-13 19:24:24
[2026-06-13 19:24:24,576.576 INFO    ] 2026-06-13 19:24:24
[2026-06-13 19:24:24,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:24,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:24,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:24,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:24,979.979 INFO    ] time= 13/06/2026 19:24:24
[2026-06-13 19:24:25,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:25,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:25,088.088 INFO    ] No existing commands found in stream
[2026-06-13 19:24:30,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:24:30,101.101 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 19:24:30,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:24:30,663.663 INFO    ] Checking for system updates...
[2026-06-13 19:24:30,684.684 INFO    ] 200
[2026-06-13 19:24:30,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:30,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:24:30,718.718 INFO    ] No update needed
[2026-06-13 19:24:30,719.719 INFO    ] Checking for camera pi updates...
[2026-06-13 19:24:30,740.740 INFO    ] 200
[2026-06-13 19:24:30,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:30,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:24:30,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:24:30,806.806 INFO    ] No camera update needed
[2026-06-13 19:24:30,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:24:30,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:24:30,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:24:30,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:24:32,846.846 INFO    ] ================================================
[2026-06-13 19:24:32,854.854 INFO    ] Launching Daemon at Sat Jun 13 19:24:32 IST 2026
[2026-06-13 19:24:32,861.861 INFO    ] ================================================
[2026-06-13 19:24:33,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:24:33
[2026-06-13 19:24:33,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:24:33,650.650 INFO    ] Initializing speech engine...
[2026-06-13 19:24:33,658.658 INFO    ] 2026-06-13 19:24:33
[2026-06-13 19:24:33,853.853 INFO    ] 2026-06-13 19:24:33
[2026-06-13 19:24:33,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:34,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:34,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:34,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:34,301.301 INFO    ] time= 13/06/2026 19:24:34
[2026-06-13 19:24:34,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:34,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:34,456.456 INFO    ] No existing commands found in stream
[2026-06-13 19:24:39,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:24:39,469.469 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 19:24:43,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:24:43,173.173 INFO    ] Checking for system updates...
[2026-06-13 19:24:43,195.195 INFO    ] 200
[2026-06-13 19:24:43,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:43,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:43,231.231 INFO    ] No update needed
[2026-06-13 19:24:43,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 19:24:43,252.252 INFO    ] 200
[2026-06-13 19:24:43,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:43,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:24:43,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:43,315.315 INFO    ] No camera update needed
[2026-06-13 19:24:43,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:24:43,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:24:43,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:24:43,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:24:45,362.362 INFO    ] ================================================
[2026-06-13 19:24:45,378.378 INFO    ] Launching Daemon at Sat Jun 13 19:24:45 IST 2026
[2026-06-13 19:24:45,389.389 INFO    ] ================================================
[2026-06-13 19:24:45,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:24:45
[2026-06-13 19:24:46,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:24:46,183.183 INFO    ] Initializing speech engine...
[2026-06-13 19:24:46,188.188 INFO    ] 2026-06-13 19:24:46
[2026-06-13 19:24:46,393.393 INFO    ] 2026-06-13 19:24:46
[2026-06-13 19:24:46,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:46,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:46,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:46,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:46,796.796 INFO    ] time= 13/06/2026 19:24:46
[2026-06-13 19:24:46,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:46,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:46,905.905 INFO    ] No existing commands found in stream
[2026-06-13 19:24:51,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:24:51,913.913 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 19:24:55,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:24:55,059.059 INFO    ] Checking for system updates...
[2026-06-13 19:24:55,080.080 INFO    ] 200
[2026-06-13 19:24:55,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:55,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:55,113.113 INFO    ] No update needed
[2026-06-13 19:24:55,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 19:24:55,134.134 INFO    ] 200
[2026-06-13 19:24:55,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:24:55,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:24:55,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:24:55,202.202 INFO    ] No camera update needed
[2026-06-13 19:24:55,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:24:55,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:24:55,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:24:55,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:24:57,249.249 INFO    ] ================================================
[2026-06-13 19:24:57,266.266 INFO    ] Launching Daemon at Sat Jun 13 19:24:57 IST 2026
[2026-06-13 19:24:57,277.277 INFO    ] ================================================
[2026-06-13 19:24:57,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:24:57
[2026-06-13 19:24:58,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:24:58,160.160 INFO    ] Initializing speech engine...
[2026-06-13 19:24:58,166.166 INFO    ] 2026-06-13 19:24:58
[2026-06-13 19:24:58,375.375 INFO    ] 2026-06-13 19:24:58
[2026-06-13 19:24:58,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:24:58,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:24:58,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:24:58,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:24:58,775.775 INFO    ] time= 13/06/2026 19:24:58
[2026-06-13 19:24:58,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:24:58,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:24:58,894.894 INFO    ] No existing commands found in stream
[2026-06-13 19:25:03,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:03,908.908 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 19:25:04,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:25:04,834.834 INFO    ] Checking for system updates...
[2026-06-13 19:25:04,871.871 INFO    ] 200
[2026-06-13 19:25:04,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:04,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:04,933.933 INFO    ] No update needed
[2026-06-13 19:25:04,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:04,975.975 INFO    ] 200
[2026-06-13 19:25:04,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:05,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:05,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:05,072.072 INFO    ] No camera update needed
[2026-06-13 19:25:05,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:05,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:05,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:05,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:25:07,133.133 INFO    ] ================================================
[2026-06-13 19:25:07,149.149 INFO    ] Launching Daemon at Sat Jun 13 19:25:07 IST 2026
[2026-06-13 19:25:07,160.160 INFO    ] ================================================
[2026-06-13 19:25:07,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:25:07
[2026-06-13 19:25:07,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:25:07,978.978 INFO    ] Initializing speech engine...
[2026-06-13 19:25:07,984.984 INFO    ] 2026-06-13 19:25:07
[2026-06-13 19:25:08,195.195 INFO    ] 2026-06-13 19:25:08
[2026-06-13 19:25:08,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:25:08,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:25:08,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:25:08,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:25:08,596.596 INFO    ] time= 13/06/2026 19:25:08
[2026-06-13 19:25:08,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:25:08,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:25:08,734.734 INFO    ] No existing commands found in stream
[2026-06-13 19:25:13,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:13,749.749 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 19:25:15,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:25:15,743.743 INFO    ] Checking for system updates...
[2026-06-13 19:25:15,764.764 INFO    ] 200
[2026-06-13 19:25:15,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:15,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:15,801.801 INFO    ] No update needed
[2026-06-13 19:25:15,802.802 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:15,825.825 INFO    ] 200
[2026-06-13 19:25:15,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:15,850.850 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:15,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:15,891.891 INFO    ] No camera update needed
[2026-06-13 19:25:15,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:15,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:15,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:15,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:25:17,940.940 INFO    ] ================================================
[2026-06-13 19:25:17,956.956 INFO    ] Launching Daemon at Sat Jun 13 19:25:17 IST 2026
[2026-06-13 19:25:17,967.967 INFO    ] ================================================
[2026-06-13 19:25:18,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:25:18
[2026-06-13 19:25:18,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:25:18,755.755 INFO    ] Initializing speech engine...
[2026-06-13 19:25:18,763.763 INFO    ] 2026-06-13 19:25:18
[2026-06-13 19:25:18,980.980 INFO    ] 2026-06-13 19:25:18
[2026-06-13 19:25:19,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:25:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:25:19,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:25:19,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:25:19,391.391 INFO    ] time= 13/06/2026 19:25:19
[2026-06-13 19:25:19,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:25:19,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:25:19,501.501 INFO    ] No existing commands found in stream
[2026-06-13 19:25:24,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:24,515.515 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 19:25:26,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:25:26,357.357 INFO    ] Checking for system updates...
[2026-06-13 19:25:26,378.378 INFO    ] 200
[2026-06-13 19:25:26,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:26,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:26,411.411 INFO    ] No update needed
[2026-06-13 19:25:26,412.412 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:26,432.432 INFO    ] 200
[2026-06-13 19:25:26,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:26,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:26,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:26,506.506 INFO    ] No camera update needed
[2026-06-13 19:25:26,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:26,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:26,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:26,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:25:28,553.553 INFO    ] ================================================
[2026-06-13 19:25:28,569.569 INFO    ] Launching Daemon at Sat Jun 13 19:25:28 IST 2026
[2026-06-13 19:25:28,580.580 INFO    ] ================================================
[2026-06-13 19:25:28,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:25:28
[2026-06-13 19:25:29,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:25:29,427.427 INFO    ] Initializing speech engine...
[2026-06-13 19:25:29,434.434 INFO    ] 2026-06-13 19:25:29
[2026-06-13 19:25:29,659.659 INFO    ] 2026-06-13 19:25:29
[2026-06-13 19:25:29,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:25:29,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:25:29,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:25:30,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:25:30,078.078 INFO    ] time= 13/06/2026 19:25:30
[2026-06-13 19:25:30,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:25:30,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:25:30,221.221 INFO    ] No existing commands found in stream
[2026-06-13 19:25:35,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:35,234.234 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 19:25:36,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:25:36,553.553 INFO    ] Checking for system updates...
[2026-06-13 19:25:36,574.574 INFO    ] 200
[2026-06-13 19:25:36,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:36,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:36,608.608 INFO    ] No update needed
[2026-06-13 19:25:36,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:36,631.631 INFO    ] 200
[2026-06-13 19:25:36,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:36,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:36,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:36,816.816 INFO    ] No camera update needed
[2026-06-13 19:25:36,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:36,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:36,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:36,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:25:38,876.876 INFO    ] ================================================
[2026-06-13 19:25:38,892.892 INFO    ] Launching Daemon at Sat Jun 13 19:25:38 IST 2026
[2026-06-13 19:25:38,908.908 INFO    ] ================================================
[2026-06-13 19:25:39,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:25:39
[2026-06-13 19:25:40,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:25:40,165.165 INFO    ] Initializing speech engine...
[2026-06-13 19:25:40,170.170 INFO    ] 2026-06-13 19:25:40
[2026-06-13 19:25:40,378.378 INFO    ] 2026-06-13 19:25:40
[2026-06-13 19:25:40,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:25:40,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:25:40,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:25:40,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:25:40,796.796 INFO    ] time= 13/06/2026 19:25:40
[2026-06-13 19:25:40,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:25:40,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:25:40,898.898 INFO    ] No existing commands found in stream
[2026-06-13 19:25:45,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:45,916.916 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 19:25:47,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:25:47,777.777 INFO    ] Checking for system updates...
[2026-06-13 19:25:47,798.798 INFO    ] 200
[2026-06-13 19:25:47,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:47,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:47,833.833 INFO    ] No update needed
[2026-06-13 19:25:47,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:47,859.859 INFO    ] 200
[2026-06-13 19:25:47,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:47,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:47,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:25:47,927.927 INFO    ] No camera update needed
[2026-06-13 19:25:47,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:47,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:47,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:47,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:25:49,976.976 INFO    ] ================================================
[2026-06-13 19:25:49,991.991 INFO    ] Launching Daemon at Sat Jun 13 19:25:49 IST 2026
[2026-06-13 19:25:50,002.002 INFO    ] ================================================
[2026-06-13 19:25:50,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:25:50
[2026-06-13 19:25:50,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:25:50,817.817 INFO    ] Initializing speech engine...
[2026-06-13 19:25:50,821.821 INFO    ] 2026-06-13 19:25:50
[2026-06-13 19:25:51,025.025 INFO    ] 2026-06-13 19:25:51
[2026-06-13 19:25:51,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:25:51,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:25:51,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:25:51,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:25:51,427.427 INFO    ] time= 13/06/2026 19:25:51
[2026-06-13 19:25:51,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:25:51,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:25:51,536.536 INFO    ] No existing commands found in stream
[2026-06-13 19:25:56,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:25:56,548.548 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 19:25:58,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:25:58,599.599 INFO    ] Checking for system updates...
[2026-06-13 19:25:58,630.630 INFO    ] 200
[2026-06-13 19:25:58,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:58,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:58,664.664 INFO    ] No update needed
[2026-06-13 19:25:58,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 19:25:58,685.685 INFO    ] 200
[2026-06-13 19:25:58,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:25:58,711.711 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:25:58,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:25:58,753.753 INFO    ] No camera update needed
[2026-06-13 19:25:58,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:25:58,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:25:58,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:25:58,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:00,801.801 INFO    ] ================================================
[2026-06-13 19:26:00,817.817 INFO    ] Launching Daemon at Sat Jun 13 19:26:00 IST 2026
[2026-06-13 19:26:00,827.827 INFO    ] ================================================
[2026-06-13 19:26:01,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:26:01
[2026-06-13 19:26:01,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:26:01,816.816 INFO    ] Initializing speech engine...
[2026-06-13 19:26:01,821.821 INFO    ] 2026-06-13 19:26:01
[2026-06-13 19:26:02,073.073 INFO    ] 2026-06-13 19:26:02
[2026-06-13 19:26:02,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:26:02,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:26:02,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:26:02,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:26:02,408.408 INFO    ] time= 13/06/2026 19:26:02
[2026-06-13 19:26:02,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:26:02,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:26:02,547.547 INFO    ] No existing commands found in stream
[2026-06-13 19:26:07,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:26:07,563.563 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-13 19:26:10,772.772 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:26:10,774.774 INFO    ] Checking for system updates...
[2026-06-13 19:26:10,795.795 INFO    ] 200
[2026-06-13 19:26:10,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:10,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:10,829.829 INFO    ] No update needed
[2026-06-13 19:26:10,831.831 INFO    ] Checking for camera pi updates...
[2026-06-13 19:26:10,851.851 INFO    ] 200
[2026-06-13 19:26:10,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:10,877.877 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:26:10,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:26:10,919.919 INFO    ] No camera update needed
[2026-06-13 19:26:10,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:26:10,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:26:10,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:26:10,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:12,966.966 INFO    ] ================================================
[2026-06-13 19:26:12,981.981 INFO    ] Launching Daemon at Sat Jun 13 19:26:12 IST 2026
[2026-06-13 19:26:12,993.993 INFO    ] ================================================
[2026-06-13 19:26:13,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:26:13
[2026-06-13 19:26:13,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:26:13,809.809 INFO    ] Initializing speech engine...
[2026-06-13 19:26:13,814.814 INFO    ] 2026-06-13 19:26:13
[2026-06-13 19:26:14,019.019 INFO    ] 2026-06-13 19:26:13
[2026-06-13 19:26:14,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:26:14,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:26:14,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:26:14,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:26:14,424.424 INFO    ] time= 13/06/2026 19:26:14
[2026-06-13 19:26:14,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:26:14,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:26:14,533.533 INFO    ] No existing commands found in stream
[2026-06-13 19:26:19,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:26:19,547.547 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 19:26:23,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:26:23,596.596 INFO    ] Checking for system updates...
[2026-06-13 19:26:23,617.617 INFO    ] 200
[2026-06-13 19:26:23,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:23,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:26:23,651.651 INFO    ] No update needed
[2026-06-13 19:26:23,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 19:26:23,672.672 INFO    ] 200
[2026-06-13 19:26:23,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:23,697.697 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:26:23,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:23,735.735 INFO    ] No camera update needed
[2026-06-13 19:26:23,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:26:23,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:26:23,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:26:23,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:25,783.783 INFO    ] ================================================
[2026-06-13 19:26:25,799.799 INFO    ] Launching Daemon at Sat Jun 13 19:26:25 IST 2026
[2026-06-13 19:26:25,810.810 INFO    ] ================================================
[2026-06-13 19:26:26,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:26:26
[2026-06-13 19:26:26,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:26:26,622.622 INFO    ] Initializing speech engine...
[2026-06-13 19:26:26,631.631 INFO    ] 2026-06-13 19:26:26
[2026-06-13 19:26:26,846.846 INFO    ] 2026-06-13 19:26:26
[2026-06-13 19:26:26,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:26:27,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:26:27,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:26:27,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:26:27,265.265 INFO    ] time= 13/06/2026 19:26:27
[2026-06-13 19:26:27,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:26:27,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:26:27,371.371 INFO    ] No existing commands found in stream
[2026-06-13 19:26:32,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:26:32,385.385 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 19:26:34,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:26:34,642.642 INFO    ] Checking for system updates...
[2026-06-13 19:26:34,664.664 INFO    ] 200
[2026-06-13 19:26:34,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:34,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:26:34,698.698 INFO    ] No update needed
[2026-06-13 19:26:34,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 19:26:34,719.719 INFO    ] 200
[2026-06-13 19:26:34,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:34,745.745 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:26:34,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:26:34,787.787 INFO    ] No camera update needed
[2026-06-13 19:26:34,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:26:34,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:26:34,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:26:34,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:36,838.838 INFO    ] ================================================
[2026-06-13 19:26:36,854.854 INFO    ] Launching Daemon at Sat Jun 13 19:26:36 IST 2026
[2026-06-13 19:26:36,864.864 INFO    ] ================================================
[2026-06-13 19:26:37,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:26:37
[2026-06-13 19:26:37,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:26:37,684.684 INFO    ] Initializing speech engine...
[2026-06-13 19:26:37,694.694 INFO    ] 2026-06-13 19:26:37
[2026-06-13 19:26:37,902.902 INFO    ] 2026-06-13 19:26:37
[2026-06-13 19:26:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:26:38,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:26:38,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:26:38,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:26:38,308.308 INFO    ] time= 13/06/2026 19:26:38
[2026-06-13 19:26:38,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:26:38,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:26:38,425.425 INFO    ] No existing commands found in stream
[2026-06-13 19:26:43,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:26:43,439.439 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 19:26:47,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:26:47,693.693 INFO    ] Checking for system updates...
[2026-06-13 19:26:47,714.714 INFO    ] 200
[2026-06-13 19:26:47,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:47,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:47,748.748 INFO    ] No update needed
[2026-06-13 19:26:47,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 19:26:47,770.770 INFO    ] 200
[2026-06-13 19:26:47,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:47,795.795 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:26:47,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:47,843.843 INFO    ] No camera update needed
[2026-06-13 19:26:47,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:26:47,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:26:47,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:26:47,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:49,892.892 INFO    ] ================================================
[2026-06-13 19:26:49,907.907 INFO    ] Launching Daemon at Sat Jun 13 19:26:49 IST 2026
[2026-06-13 19:26:49,919.919 INFO    ] ================================================
[2026-06-13 19:26:50,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:26:50
[2026-06-13 19:26:50,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:26:50,771.771 INFO    ] Initializing speech engine...
[2026-06-13 19:26:50,775.775 INFO    ] 2026-06-13 19:26:50
[2026-06-13 19:26:50,984.984 INFO    ] 2026-06-13 19:26:50
[2026-06-13 19:26:51,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:26:51,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:26:51,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:26:51,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:26:51,405.405 INFO    ] time= 13/06/2026 19:26:51
[2026-06-13 19:26:51,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:26:51,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:26:51,502.502 INFO    ] No existing commands found in stream
[2026-06-13 19:26:56,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:26:56,520.520 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 19:26:57,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:26:57,522.522 INFO    ] Checking for system updates...
[2026-06-13 19:26:57,543.543 INFO    ] 200
[2026-06-13 19:26:57,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:57,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:57,577.577 INFO    ] No update needed
[2026-06-13 19:26:57,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 19:26:57,598.598 INFO    ] 200
[2026-06-13 19:26:57,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:26:57,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:26:57,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:26:57,659.659 INFO    ] No camera update needed
[2026-06-13 19:26:57,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:26:57,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:26:57,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:26:57,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:26:59,705.705 INFO    ] ================================================
[2026-06-13 19:26:59,721.721 INFO    ] Launching Daemon at Sat Jun 13 19:26:59 IST 2026
[2026-06-13 19:26:59,732.732 INFO    ] ================================================
[2026-06-13 19:27:00,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:00
[2026-06-13 19:27:00,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:00,530.530 INFO    ] Initializing speech engine...
[2026-06-13 19:27:00,542.542 INFO    ] 2026-06-13 19:27:00
[2026-06-13 19:27:00,791.791 INFO    ] 2026-06-13 19:27:00
[2026-06-13 19:27:00,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:01,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:01,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:01,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:01,223.223 INFO    ] time= 13/06/2026 19:27:01
[2026-06-13 19:27:01,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:01,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:01,352.352 INFO    ] No existing commands found in stream
[2026-06-13 19:27:06,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:27:06,385.385 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 19:27:08,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:27:08,391.391 INFO    ] Checking for system updates...
[2026-06-13 19:27:08,412.412 INFO    ] 200
[2026-06-13 19:27:08,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:08,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:08,446.446 INFO    ] No update needed
[2026-06-13 19:27:08,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 19:27:08,467.467 INFO    ] 200
[2026-06-13 19:27:08,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:08,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:27:08,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:08,536.536 INFO    ] No camera update needed
[2026-06-13 19:27:08,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:27:08,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:27:08,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:27:08,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:27:10,585.585 INFO    ] ================================================
[2026-06-13 19:27:10,600.600 INFO    ] Launching Daemon at Sat Jun 13 19:27:10 IST 2026
[2026-06-13 19:27:10,610.610 INFO    ] ================================================
[2026-06-13 19:27:10,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:10
[2026-06-13 19:27:11,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:11,415.415 INFO    ] Initializing speech engine...
[2026-06-13 19:27:11,421.421 INFO    ] 2026-06-13 19:27:11
[2026-06-13 19:27:11,630.630 INFO    ] 2026-06-13 19:27:11
[2026-06-13 19:27:11,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:11,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:11,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:11,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:12,053.053 INFO    ] time= 13/06/2026 19:27:11
[2026-06-13 19:27:12,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:12,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:12,151.151 INFO    ] No existing commands found in stream
[2026-06-13 19:27:17,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:27:17,163.163 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 19:27:20,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:27:20,556.556 INFO    ] Checking for system updates...
[2026-06-13 19:27:20,577.577 INFO    ] 200
[2026-06-13 19:27:20,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:20,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:27:20,611.611 INFO    ] No update needed
[2026-06-13 19:27:20,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 19:27:20,632.632 INFO    ] 200
[2026-06-13 19:27:20,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:20,656.656 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:27:20,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:27:20,699.699 INFO    ] No camera update needed
[2026-06-13 19:27:20,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:27:20,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:27:20,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:27:20,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:27:22,746.746 INFO    ] ================================================
[2026-06-13 19:27:22,763.763 INFO    ] Launching Daemon at Sat Jun 13 19:27:22 IST 2026
[2026-06-13 19:27:22,774.774 INFO    ] ================================================
[2026-06-13 19:27:23,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:23
[2026-06-13 19:27:23,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:23,557.557 INFO    ] Initializing speech engine...
[2026-06-13 19:27:23,563.563 INFO    ] 2026-06-13 19:27:23
[2026-06-13 19:27:23,765.765 INFO    ] 2026-06-13 19:27:23
[2026-06-13 19:27:23,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:23,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:23,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:24,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:24,179.179 INFO    ] time= 13/06/2026 19:27:24
[2026-06-13 19:27:24,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:24,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:24,277.277 INFO    ] No existing commands found in stream
[2026-06-13 19:27:29,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:27:29,291.291 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 19:27:32,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:27:32,085.085 INFO    ] Checking for system updates...
[2026-06-13 19:27:32,108.108 INFO    ] 200
[2026-06-13 19:27:32,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:32,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:32,146.146 INFO    ] No update needed
[2026-06-13 19:27:32,148.148 INFO    ] Checking for camera pi updates...
[2026-06-13 19:27:32,175.175 INFO    ] 200
[2026-06-13 19:27:32,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:32,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:27:32,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:32,233.233 INFO    ] No camera update needed
[2026-06-13 19:27:32,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:27:32,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:27:32,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:27:32,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:27:34,283.283 INFO    ] ================================================
[2026-06-13 19:27:34,298.298 INFO    ] Launching Daemon at Sat Jun 13 19:27:34 IST 2026
[2026-06-13 19:27:34,309.309 INFO    ] ================================================
[2026-06-13 19:27:34,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:34
[2026-06-13 19:27:34,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:35,114.114 INFO    ] Initializing speech engine...
[2026-06-13 19:27:35,120.120 INFO    ] 2026-06-13 19:27:35
[2026-06-13 19:27:35,324.324 INFO    ] 2026-06-13 19:27:35
[2026-06-13 19:27:35,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:35,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:35,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:35,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:35,736.736 INFO    ] time= 13/06/2026 19:27:35
[2026-06-13 19:27:35,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:35,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:35,842.842 INFO    ] No existing commands found in stream
[2026-06-13 19:27:40,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:27:40,859.859 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 19:27:42,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:27:42,193.193 INFO    ] Checking for system updates...
[2026-06-13 19:27:42,214.214 INFO    ] 200
[2026-06-13 19:27:42,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:42,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:42,251.251 INFO    ] No update needed
[2026-06-13 19:27:42,252.252 INFO    ] Checking for camera pi updates...
[2026-06-13 19:27:42,271.271 INFO    ] 200
[2026-06-13 19:27:42,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:42,297.297 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:27:42,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:27:42,436.436 INFO    ] No camera update needed
[2026-06-13 19:27:42,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:27:42,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:27:42,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:27:42,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:27:44,488.488 INFO    ] ================================================
[2026-06-13 19:27:44,503.503 INFO    ] Launching Daemon at Sat Jun 13 19:27:44 IST 2026
[2026-06-13 19:27:44,514.514 INFO    ] ================================================
[2026-06-13 19:27:44,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:44
[2026-06-13 19:27:45,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:45,465.465 INFO    ] Initializing speech engine...
[2026-06-13 19:27:45,478.478 INFO    ] 2026-06-13 19:27:45
[2026-06-13 19:27:45,767.767 INFO    ] 2026-06-13 19:27:45
[2026-06-13 19:27:45,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:46,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:46,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:46,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:46,241.241 INFO    ] time= 13/06/2026 19:27:46
[2026-06-13 19:27:46,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:46,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:46,449.449 INFO    ] No existing commands found in stream
[2026-06-13 19:27:51,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:27:51,472.472 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 19:27:53,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:27:53,523.523 INFO    ] Checking for system updates...
[2026-06-13 19:27:53,544.544 INFO    ] 200
[2026-06-13 19:27:53,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:53,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:27:53,578.578 INFO    ] No update needed
[2026-06-13 19:27:53,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 19:27:53,598.598 INFO    ] 200
[2026-06-13 19:27:53,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:27:53,623.623 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:27:53,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:27:53,660.660 INFO    ] No camera update needed
[2026-06-13 19:27:53,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:27:53,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:27:53,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:27:53,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:27:55,714.714 INFO    ] ================================================
[2026-06-13 19:27:55,729.729 INFO    ] Launching Daemon at Sat Jun 13 19:27:55 IST 2026
[2026-06-13 19:27:55,740.740 INFO    ] ================================================
[2026-06-13 19:27:56,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:27:56
[2026-06-13 19:27:56,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:27:56,545.545 INFO    ] Initializing speech engine...
[2026-06-13 19:27:56,553.553 INFO    ] 2026-06-13 19:27:56
[2026-06-13 19:27:56,777.777 INFO    ] 2026-06-13 19:27:56
[2026-06-13 19:27:56,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:27:56,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:27:56,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:27:57,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:27:57,210.210 INFO    ] time= 13/06/2026 19:27:57
[2026-06-13 19:27:57,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:27:57,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:27:57,338.338 INFO    ] No existing commands found in stream
[2026-06-13 19:28:02,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:28:02,352.352 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 19:28:05,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:28:05,470.470 INFO    ] Checking for system updates...
[2026-06-13 19:28:05,491.491 INFO    ] 200
[2026-06-13 19:28:05,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:05,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:05,528.528 INFO    ] No update needed
[2026-06-13 19:28:05,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 19:28:05,549.549 INFO    ] 200
[2026-06-13 19:28:05,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:05,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:28:05,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:05,616.616 INFO    ] No camera update needed
[2026-06-13 19:28:05,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:28:05,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:28:05,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:28:05,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:28:07,665.665 INFO    ] ================================================
[2026-06-13 19:28:07,681.681 INFO    ] Launching Daemon at Sat Jun 13 19:28:07 IST 2026
[2026-06-13 19:28:07,692.692 INFO    ] ================================================
[2026-06-13 19:28:08,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:28:08
[2026-06-13 19:28:08,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:28:08,498.498 INFO    ] Initializing speech engine...
[2026-06-13 19:28:08,503.503 INFO    ] 2026-06-13 19:28:08
[2026-06-13 19:28:08,726.726 INFO    ] 2026-06-13 19:28:08
[2026-06-13 19:28:08,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:28:08,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:28:08,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:28:09,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:28:09,133.133 INFO    ] time= 13/06/2026 19:28:09
[2026-06-13 19:28:09,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:28:09,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:28:09,229.229 INFO    ] No existing commands found in stream
[2026-06-13 19:28:14,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:28:14,243.243 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 19:28:17,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:28:17,998.998 INFO    ] Checking for system updates...
[2026-06-13 19:28:18,020.020 INFO    ] 200
[2026-06-13 19:28:18,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:18,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:18,053.053 INFO    ] No update needed
[2026-06-13 19:28:18,054.054 INFO    ] Checking for camera pi updates...
[2026-06-13 19:28:18,075.075 INFO    ] 200
[2026-06-13 19:28:18,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:18,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:28:18,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:28:18,135.135 INFO    ] No camera update needed
[2026-06-13 19:28:18,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:28:18,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:28:18,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:28:18,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:28:20,183.183 INFO    ] ================================================
[2026-06-13 19:28:20,198.198 INFO    ] Launching Daemon at Sat Jun 13 19:28:20 IST 2026
[2026-06-13 19:28:20,209.209 INFO    ] ================================================
[2026-06-13 19:28:20,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:28:20
[2026-06-13 19:28:20,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:28:21,027.027 INFO    ] Initializing speech engine...
[2026-06-13 19:28:21,032.032 INFO    ] 2026-06-13 19:28:21
[2026-06-13 19:28:21,235.235 INFO    ] 2026-06-13 19:28:21
[2026-06-13 19:28:21,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:28:21,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:28:21,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:28:21,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:28:21,642.642 INFO    ] time= 13/06/2026 19:28:21
[2026-06-13 19:28:21,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:28:21,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:28:21,750.750 INFO    ] No existing commands found in stream
[2026-06-13 19:28:26,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:28:26,764.764 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 19:28:29,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:28:29,273.273 INFO    ] Checking for system updates...
[2026-06-13 19:28:29,293.293 INFO    ] 200
[2026-06-13 19:28:29,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:29,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:28:29,326.326 INFO    ] No update needed
[2026-06-13 19:28:29,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 19:28:29,347.347 INFO    ] 200
[2026-06-13 19:28:29,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:29,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:28:29,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:28:29,421.421 INFO    ] No camera update needed
[2026-06-13 19:28:29,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:28:29,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:28:29,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:28:29,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:28:31,469.469 INFO    ] ================================================
[2026-06-13 19:28:31,484.484 INFO    ] Launching Daemon at Sat Jun 13 19:28:31 IST 2026
[2026-06-13 19:28:31,495.495 INFO    ] ================================================
[2026-06-13 19:28:31,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:28:31
[2026-06-13 19:28:32,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:28:32,343.343 INFO    ] Initializing speech engine...
[2026-06-13 19:28:32,349.349 INFO    ] 2026-06-13 19:28:32
[2026-06-13 19:28:32,563.563 INFO    ] 2026-06-13 19:28:32
[2026-06-13 19:28:32,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:28:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:28:32,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:28:32,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:28:32,994.994 INFO    ] time= 13/06/2026 19:28:32
[2026-06-13 19:28:33,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:28:33,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:28:33,091.091 INFO    ] No existing commands found in stream
[2026-06-13 19:28:38,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:28:38,104.104 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 19:28:39,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:28:39,398.398 INFO    ] Checking for system updates...
[2026-06-13 19:28:39,419.419 INFO    ] 200
[2026-06-13 19:28:39,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:39,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:39,453.453 INFO    ] No update needed
[2026-06-13 19:28:39,454.454 INFO    ] Checking for camera pi updates...
[2026-06-13 19:28:39,473.473 INFO    ] 200
[2026-06-13 19:28:39,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:39,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:28:39,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:39,550.550 INFO    ] No camera update needed
[2026-06-13 19:28:39,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:28:39,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:28:39,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:28:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:28:41,604.604 INFO    ] ================================================
[2026-06-13 19:28:41,619.619 INFO    ] Launching Daemon at Sat Jun 13 19:28:41 IST 2026
[2026-06-13 19:28:41,630.630 INFO    ] ================================================
[2026-06-13 19:28:42,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:28:42
[2026-06-13 19:28:42,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:28:42,898.898 INFO    ] Initializing speech engine...
[2026-06-13 19:28:42,908.908 INFO    ] 2026-06-13 19:28:42
[2026-06-13 19:28:43,155.155 INFO    ] 2026-06-13 19:28:43
[2026-06-13 19:28:43,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:28:43,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:28:43,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:28:43,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:28:43,603.603 INFO    ] time= 13/06/2026 19:28:43
[2026-06-13 19:28:43,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:28:43,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:28:43,780.780 INFO    ] No existing commands found in stream
[2026-06-13 19:28:48,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:28:48,794.794 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 19:28:51,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:28:51,617.617 INFO    ] Checking for system updates...
[2026-06-13 19:28:51,638.638 INFO    ] 200
[2026-06-13 19:28:51,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:51,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:28:51,674.674 INFO    ] No update needed
[2026-06-13 19:28:51,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 19:28:51,694.694 INFO    ] 200
[2026-06-13 19:28:51,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:28:51,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:28:51,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:28:51,764.764 INFO    ] No camera update needed
[2026-06-13 19:28:51,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:28:51,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:28:51,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:28:51,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:28:53,815.815 INFO    ] ================================================
[2026-06-13 19:28:53,830.830 INFO    ] Launching Daemon at Sat Jun 13 19:28:53 IST 2026
[2026-06-13 19:28:53,841.841 INFO    ] ================================================
[2026-06-13 19:28:54,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:28:54
[2026-06-13 19:28:54,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:28:54,621.621 INFO    ] Initializing speech engine...
[2026-06-13 19:28:54,626.626 INFO    ] 2026-06-13 19:28:54
[2026-06-13 19:28:54,832.832 INFO    ] 2026-06-13 19:28:54
[2026-06-13 19:28:54,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:28:55,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:28:55,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:28:55,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:28:55,241.241 INFO    ] time= 13/06/2026 19:28:55
[2026-06-13 19:28:55,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:28:55,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:28:55,344.344 INFO    ] No existing commands found in stream
[2026-06-13 19:29:00,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:00,358.358 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 19:29:02,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:29:02,625.625 INFO    ] Checking for system updates...
[2026-06-13 19:29:02,661.661 INFO    ] 200
[2026-06-13 19:29:02,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:02,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:02,715.715 INFO    ] No update needed
[2026-06-13 19:29:02,716.716 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:02,738.738 INFO    ] 200
[2026-06-13 19:29:02,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:02,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:02,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:02,805.805 INFO    ] No camera update needed
[2026-06-13 19:29:02,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:02,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:02,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:02,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:29:04,853.853 INFO    ] ================================================
[2026-06-13 19:29:04,868.868 INFO    ] Launching Daemon at Sat Jun 13 19:29:04 IST 2026
[2026-06-13 19:29:04,879.879 INFO    ] ================================================
[2026-06-13 19:29:05,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:29:05
[2026-06-13 19:29:05,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:29:05,680.680 INFO    ] Initializing speech engine...
[2026-06-13 19:29:05,688.688 INFO    ] 2026-06-13 19:29:05
[2026-06-13 19:29:05,901.901 INFO    ] 2026-06-13 19:29:05
[2026-06-13 19:29:05,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:29:06,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:29:06,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:29:06,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:29:06,300.300 INFO    ] time= 13/06/2026 19:29:06
[2026-06-13 19:29:06,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:29:06,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:29:06,421.421 INFO    ] No existing commands found in stream
[2026-06-13 19:29:11,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:11,434.434 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 19:29:13,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:29:13,044.044 INFO    ] Checking for system updates...
[2026-06-13 19:29:13,065.065 INFO    ] 200
[2026-06-13 19:29:13,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:13,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:13,101.101 INFO    ] No update needed
[2026-06-13 19:29:13,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:13,121.121 INFO    ] 200
[2026-06-13 19:29:13,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:13,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:13,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:13,190.190 INFO    ] No camera update needed
[2026-06-13 19:29:13,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:13,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:13,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:13,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:29:15,237.237 INFO    ] ================================================
[2026-06-13 19:29:15,253.253 INFO    ] Launching Daemon at Sat Jun 13 19:29:15 IST 2026
[2026-06-13 19:29:15,265.265 INFO    ] ================================================
[2026-06-13 19:29:15,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:29:15
[2026-06-13 19:29:16,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:29:16,702.702 INFO    ] Initializing speech engine...
[2026-06-13 19:29:16,710.710 INFO    ] 2026-06-13 19:29:16
[2026-06-13 19:29:16,969.969 INFO    ] 2026-06-13 19:29:16
[2026-06-13 19:29:16,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:29:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:29:17,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:29:17,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:29:17,429.429 INFO    ] time= 13/06/2026 19:29:17
[2026-06-13 19:29:17,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:29:17,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:29:17,579.579 INFO    ] No existing commands found in stream
[2026-06-13 19:29:22,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:22,602.602 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 19:29:24,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:29:24,604.604 INFO    ] Checking for system updates...
[2026-06-13 19:29:24,645.645 INFO    ] 200
[2026-06-13 19:29:24,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:24,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:29:24,711.711 INFO    ] No update needed
[2026-06-13 19:29:24,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:24,752.752 INFO    ] 200
[2026-06-13 19:29:24,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:24,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:24,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:29:24,830.830 INFO    ] No camera update needed
[2026-06-13 19:29:24,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:24,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:24,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:24,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:29:26,880.880 INFO    ] ================================================
[2026-06-13 19:29:26,894.894 INFO    ] Launching Daemon at Sat Jun 13 19:29:26 IST 2026
[2026-06-13 19:29:26,906.906 INFO    ] ================================================
[2026-06-13 19:29:27,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:29:27
[2026-06-13 19:29:27,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:29:27,679.679 INFO    ] Initializing speech engine...
[2026-06-13 19:29:27,683.683 INFO    ] 2026-06-13 19:29:27
[2026-06-13 19:29:27,887.887 INFO    ] 2026-06-13 19:29:27
[2026-06-13 19:29:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:29:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:29:28,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:29:28,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:29:28,286.286 INFO    ] time= 13/06/2026 19:29:28
[2026-06-13 19:29:28,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:29:28,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:29:28,401.401 INFO    ] No existing commands found in stream
[2026-06-13 19:29:33,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:33,413.413 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 19:29:36,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:29:36,824.824 INFO    ] Checking for system updates...
[2026-06-13 19:29:36,845.845 INFO    ] 200
[2026-06-13 19:29:36,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:36,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:36,879.879 INFO    ] No update needed
[2026-06-13 19:29:36,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:36,901.901 INFO    ] 200
[2026-06-13 19:29:36,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:36,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:36,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:36,966.966 INFO    ] No camera update needed
[2026-06-13 19:29:36,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:36,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:36,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:36,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:29:39,013.013 INFO    ] ================================================
[2026-06-13 19:29:39,028.028 INFO    ] Launching Daemon at Sat Jun 13 19:29:39 IST 2026
[2026-06-13 19:29:39,039.039 INFO    ] ================================================
[2026-06-13 19:29:39,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:29:39
[2026-06-13 19:29:39,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:29:39,808.808 INFO    ] Initializing speech engine...
[2026-06-13 19:29:39,817.817 INFO    ] 2026-06-13 19:29:39
[2026-06-13 19:29:40,032.032 INFO    ] 2026-06-13 19:29:40
[2026-06-13 19:29:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:29:40,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:29:40,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:29:40,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:29:40,449.449 INFO    ] time= 13/06/2026 19:29:40
[2026-06-13 19:29:40,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:29:40,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:29:40,557.557 INFO    ] No existing commands found in stream
[2026-06-13 19:29:45,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:45,570.570 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 19:29:48,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:29:48,444.444 INFO    ] Checking for system updates...
[2026-06-13 19:29:48,466.466 INFO    ] 200
[2026-06-13 19:29:48,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:48,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:29:48,499.499 INFO    ] No update needed
[2026-06-13 19:29:48,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:48,523.523 INFO    ] 200
[2026-06-13 19:29:48,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:48,547.547 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:48,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:29:48,696.696 INFO    ] No camera update needed
[2026-06-13 19:29:48,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:48,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:48,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:48,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:29:50,745.745 INFO    ] ================================================
[2026-06-13 19:29:50,760.760 INFO    ] Launching Daemon at Sat Jun 13 19:29:50 IST 2026
[2026-06-13 19:29:50,771.771 INFO    ] ================================================
[2026-06-13 19:29:51,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:29:51
[2026-06-13 19:29:51,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:29:51,560.560 INFO    ] Initializing speech engine...
[2026-06-13 19:29:51,566.566 INFO    ] 2026-06-13 19:29:51
[2026-06-13 19:29:51,768.768 INFO    ] 2026-06-13 19:29:51
[2026-06-13 19:29:51,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:29:51,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:29:51,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:29:52,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:29:52,176.176 INFO    ] time= 13/06/2026 19:29:52
[2026-06-13 19:29:52,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:29:52,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:29:52,281.281 INFO    ] No existing commands found in stream
[2026-06-13 19:29:57,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:29:57,293.293 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 19:29:57,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:29:57,888.888 INFO    ] Checking for system updates...
[2026-06-13 19:29:57,910.910 INFO    ] 200
[2026-06-13 19:29:57,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:57,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:57,945.945 INFO    ] No update needed
[2026-06-13 19:29:57,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 19:29:57,966.966 INFO    ] 200
[2026-06-13 19:29:57,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:29:57,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:29:58,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:29:58,034.034 INFO    ] No camera update needed
[2026-06-13 19:29:58,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:29:58,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:29:58,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:29:58,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:00,080.080 INFO    ] ================================================
[2026-06-13 19:30:00,095.095 INFO    ] Launching Daemon at Sat Jun 13 19:30:00 IST 2026
[2026-06-13 19:30:00,105.105 INFO    ] ================================================
[2026-06-13 19:30:00,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:00
[2026-06-13 19:30:00,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:00,895.895 INFO    ] Initializing speech engine...
[2026-06-13 19:30:00,909.909 INFO    ] 2026-06-13 19:30:00
[2026-06-13 19:30:01,118.118 INFO    ] 2026-06-13 19:30:01
[2026-06-13 19:30:01,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:01,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:01,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:01,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:01,511.511 INFO    ] time= 13/06/2026 19:30:01
[2026-06-13 19:30:01,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:01,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:01,845.845 INFO    ] No existing commands found in stream
[2026-06-13 19:30:06,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:30:06,857.857 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 19:30:08,915.915 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:30:08,918.918 INFO    ] Checking for system updates...
[2026-06-13 19:30:08,955.955 INFO    ] 200
[2026-06-13 19:30:08,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:08,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:08,995.995 INFO    ] No update needed
[2026-06-13 19:30:08,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 19:30:09,019.019 INFO    ] 200
[2026-06-13 19:30:09,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:09,044.044 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:30:09,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:09,086.086 INFO    ] No camera update needed
[2026-06-13 19:30:09,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:30:09,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:30:09,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:30:09,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:11,135.135 INFO    ] ================================================
[2026-06-13 19:30:11,150.150 INFO    ] Launching Daemon at Sat Jun 13 19:30:11 IST 2026
[2026-06-13 19:30:11,162.162 INFO    ] ================================================
[2026-06-13 19:30:11,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:11
[2026-06-13 19:30:12,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:12,545.545 INFO    ] Initializing speech engine...
[2026-06-13 19:30:12,558.558 INFO    ] 2026-06-13 19:30:12
[2026-06-13 19:30:12,811.811 INFO    ] 2026-06-13 19:30:12
[2026-06-13 19:30:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:13,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:13,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:13,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:13,168.168 INFO    ] time= 13/06/2026 19:30:13
[2026-06-13 19:30:13,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:13,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:13,266.266 INFO    ] No existing commands found in stream
[2026-06-13 19:30:18,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:30:18,282.282 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 19:30:19,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:30:19,400.400 INFO    ] Checking for system updates...
[2026-06-13 19:30:19,421.421 INFO    ] 200
[2026-06-13 19:30:19,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:19,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:30:19,455.455 INFO    ] No update needed
[2026-06-13 19:30:19,457.457 INFO    ] Checking for camera pi updates...
[2026-06-13 19:30:19,476.476 INFO    ] 200
[2026-06-13 19:30:19,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:19,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:30:19,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:19,542.542 INFO    ] No camera update needed
[2026-06-13 19:30:19,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:30:19,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:30:19,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:30:19,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:21,591.591 INFO    ] ================================================
[2026-06-13 19:30:21,607.607 INFO    ] Launching Daemon at Sat Jun 13 19:30:21 IST 2026
[2026-06-13 19:30:21,619.619 INFO    ] ================================================
[2026-06-13 19:30:22,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:22
[2026-06-13 19:30:22,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:22,508.508 INFO    ] Initializing speech engine...
[2026-06-13 19:30:22,511.511 INFO    ] 2026-06-13 19:30:22
[2026-06-13 19:30:22,724.724 INFO    ] 2026-06-13 19:30:22
[2026-06-13 19:30:22,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:22,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:23,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:23,135.135 INFO    ] time= 13/06/2026 19:30:23
[2026-06-13 19:30:23,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:23,248.248 INFO    ] No existing commands found in stream
[2026-06-13 19:30:28,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:30:28,276.276 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 19:30:31,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:30:31,382.382 INFO    ] Checking for system updates...
[2026-06-13 19:30:31,406.406 INFO    ] 200
[2026-06-13 19:30:31,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:31,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:31,446.446 INFO    ] No update needed
[2026-06-13 19:30:31,448.448 INFO    ] Checking for camera pi updates...
[2026-06-13 19:30:31,470.470 INFO    ] 200
[2026-06-13 19:30:31,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:31,500.500 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:30:31,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:31,541.541 INFO    ] No camera update needed
[2026-06-13 19:30:31,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:30:31,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:30:31,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:30:31,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:33,586.586 INFO    ] ================================================
[2026-06-13 19:30:33,602.602 INFO    ] Launching Daemon at Sat Jun 13 19:30:33 IST 2026
[2026-06-13 19:30:33,613.613 INFO    ] ================================================
[2026-06-13 19:30:33,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:33
[2026-06-13 19:30:34,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:34,420.420 INFO    ] Initializing speech engine...
[2026-06-13 19:30:34,425.425 INFO    ] 2026-06-13 19:30:34
[2026-06-13 19:30:34,632.632 INFO    ] 2026-06-13 19:30:34
[2026-06-13 19:30:34,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:34,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:34,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:35,037.037 INFO    ] time= 13/06/2026 19:30:34
[2026-06-13 19:30:35,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:35,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:35,142.142 INFO    ] No existing commands found in stream
[2026-06-13 19:30:40,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:30:40,154.154 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 19:30:40,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:30:40,502.502 INFO    ] Checking for system updates...
[2026-06-13 19:30:40,523.523 INFO    ] 200
[2026-06-13 19:30:40,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:40,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:30:40,556.556 INFO    ] No update needed
[2026-06-13 19:30:40,558.558 INFO    ] Checking for camera pi updates...
[2026-06-13 19:30:40,579.579 INFO    ] 200
[2026-06-13 19:30:40,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:40,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:30:40,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:30:40,644.644 INFO    ] No camera update needed
[2026-06-13 19:30:40,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:30:40,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:30:40,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:30:40,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:42,692.692 INFO    ] ================================================
[2026-06-13 19:30:42,708.708 INFO    ] Launching Daemon at Sat Jun 13 19:30:42 IST 2026
[2026-06-13 19:30:42,720.720 INFO    ] ================================================
[2026-06-13 19:30:43,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:43
[2026-06-13 19:30:43,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:43,591.591 INFO    ] Initializing speech engine...
[2026-06-13 19:30:43,596.596 INFO    ] 2026-06-13 19:30:43
[2026-06-13 19:30:43,807.807 INFO    ] 2026-06-13 19:30:43
[2026-06-13 19:30:43,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:44,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:44,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:44,234.234 INFO    ] time= 13/06/2026 19:30:44
[2026-06-13 19:30:44,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:44,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:44,333.333 INFO    ] No existing commands found in stream
[2026-06-13 19:30:49,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:30:49,351.351 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 19:30:52,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:30:52,739.739 INFO    ] Checking for system updates...
[2026-06-13 19:30:52,760.760 INFO    ] 200
[2026-06-13 19:30:52,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:52,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:52,797.797 INFO    ] No update needed
[2026-06-13 19:30:52,798.798 INFO    ] Checking for camera pi updates...
[2026-06-13 19:30:52,821.821 INFO    ] 200
[2026-06-13 19:30:52,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:30:52,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:30:52,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:30:52,884.884 INFO    ] No camera update needed
[2026-06-13 19:30:52,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:30:52,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:30:52,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:30:52,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:30:54,926.926 INFO    ] ================================================
[2026-06-13 19:30:54,942.942 INFO    ] Launching Daemon at Sat Jun 13 19:30:54 IST 2026
[2026-06-13 19:30:54,953.953 INFO    ] ================================================
[2026-06-13 19:30:55,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:30:55
[2026-06-13 19:30:55,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:30:55,735.735 INFO    ] Initializing speech engine...
[2026-06-13 19:30:55,739.739 INFO    ] 2026-06-13 19:30:55
[2026-06-13 19:30:55,955.955 INFO    ] 2026-06-13 19:30:55
[2026-06-13 19:30:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:30:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:30:56,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:30:56,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:30:56,427.427 INFO    ] time= 13/06/2026 19:30:56
[2026-06-13 19:30:56,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:30:56,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:30:56,694.694 INFO    ] No existing commands found in stream
[2026-06-13 19:31:01,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:01,727.727 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 19:31:03,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:31:03,290.290 INFO    ] Checking for system updates...
[2026-06-13 19:31:03,327.327 INFO    ] 200
[2026-06-13 19:31:03,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:03,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:03,392.392 INFO    ] No update needed
[2026-06-13 19:31:03,395.395 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:03,429.429 INFO    ] 200
[2026-06-13 19:31:03,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:03,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:03,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:03,517.517 INFO    ] No camera update needed
[2026-06-13 19:31:03,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:03,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:03,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:03,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:31:05,572.572 INFO    ] ================================================
[2026-06-13 19:31:05,588.588 INFO    ] Launching Daemon at Sat Jun 13 19:31:05 IST 2026
[2026-06-13 19:31:05,600.600 INFO    ] ================================================
[2026-06-13 19:31:05,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:31:05
[2026-06-13 19:31:06,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:31:06,409.409 INFO    ] Initializing speech engine...
[2026-06-13 19:31:06,417.417 INFO    ] 2026-06-13 19:31:06
[2026-06-13 19:31:06,641.641 INFO    ] 2026-06-13 19:31:06
[2026-06-13 19:31:06,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:31:06,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:31:06,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:31:07,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:31:07,057.057 INFO    ] time= 13/06/2026 19:31:07
[2026-06-13 19:31:07,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:31:07,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:31:07,173.173 INFO    ] No existing commands found in stream
[2026-06-13 19:31:12,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:12,185.185 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 19:31:14,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:31:14,093.093 INFO    ] Checking for system updates...
[2026-06-13 19:31:14,114.114 INFO    ] 200
[2026-06-13 19:31:14,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:14,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:14,150.150 INFO    ] No update needed
[2026-06-13 19:31:14,151.151 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:14,170.170 INFO    ] 200
[2026-06-13 19:31:14,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:14,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:14,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:14,232.232 INFO    ] No camera update needed
[2026-06-13 19:31:14,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:14,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:14,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:31:16,281.281 INFO    ] ================================================
[2026-06-13 19:31:16,296.296 INFO    ] Launching Daemon at Sat Jun 13 19:31:16 IST 2026
[2026-06-13 19:31:16,307.307 INFO    ] ================================================
[2026-06-13 19:31:16,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:31:16
[2026-06-13 19:31:16,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:31:17,149.149 INFO    ] Initializing speech engine...
[2026-06-13 19:31:17,155.155 INFO    ] 2026-06-13 19:31:17
[2026-06-13 19:31:17,365.365 INFO    ] 2026-06-13 19:31:17
[2026-06-13 19:31:17,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:31:17,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:31:17,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:31:17,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:31:17,788.788 INFO    ] time= 13/06/2026 19:31:17
[2026-06-13 19:31:17,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:31:17,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:31:17,889.889 INFO    ] No existing commands found in stream
[2026-06-13 19:31:22,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:22,900.900 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 19:31:25,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:31:25,161.161 INFO    ] Checking for system updates...
[2026-06-13 19:31:25,181.181 INFO    ] 200
[2026-06-13 19:31:25,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:25,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:25,218.218 INFO    ] No update needed
[2026-06-13 19:31:25,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:25,239.239 INFO    ] 200
[2026-06-13 19:31:25,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:25,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:25,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:25,304.304 INFO    ] No camera update needed
[2026-06-13 19:31:25,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:25,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:25,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:31:27,351.351 INFO    ] ================================================
[2026-06-13 19:31:27,367.367 INFO    ] Launching Daemon at Sat Jun 13 19:31:27 IST 2026
[2026-06-13 19:31:27,378.378 INFO    ] ================================================
[2026-06-13 19:31:27,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:31:27
[2026-06-13 19:31:28,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:31:28,249.249 INFO    ] Initializing speech engine...
[2026-06-13 19:31:28,262.262 INFO    ] 2026-06-13 19:31:28
[2026-06-13 19:31:28,472.472 INFO    ] 2026-06-13 19:31:28
[2026-06-13 19:31:28,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:31:28,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:31:28,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:31:28,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:31:28,885.885 INFO    ] time= 13/06/2026 19:31:28
[2026-06-13 19:31:28,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:31:28,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:31:28,989.989 INFO    ] No existing commands found in stream
[2026-06-13 19:31:34,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:34,003.003 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 19:31:38,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:31:38,109.109 INFO    ] Checking for system updates...
[2026-06-13 19:31:38,130.130 INFO    ] 200
[2026-06-13 19:31:38,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:38,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:38,164.164 INFO    ] No update needed
[2026-06-13 19:31:38,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:38,186.186 INFO    ] 200
[2026-06-13 19:31:38,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:38,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:38,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:38,260.260 INFO    ] No camera update needed
[2026-06-13 19:31:38,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:38,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:38,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:38,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:31:40,307.307 INFO    ] ================================================
[2026-06-13 19:31:40,322.322 INFO    ] Launching Daemon at Sat Jun 13 19:31:40 IST 2026
[2026-06-13 19:31:40,335.335 INFO    ] ================================================
[2026-06-13 19:31:40,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:31:40
[2026-06-13 19:31:41,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:31:41,242.242 INFO    ] Initializing speech engine...
[2026-06-13 19:31:41,247.247 INFO    ] 2026-06-13 19:31:41
[2026-06-13 19:31:41,453.453 INFO    ] 2026-06-13 19:31:41
[2026-06-13 19:31:41,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:31:41,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:31:41,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:31:41,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:31:41,844.844 INFO    ] time= 13/06/2026 19:31:41
[2026-06-13 19:31:41,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:31:41,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:31:41,969.969 INFO    ] No existing commands found in stream
[2026-06-13 19:31:46,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:46,983.983 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 19:31:47,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:31:47,964.964 INFO    ] Checking for system updates...
[2026-06-13 19:31:47,985.985 INFO    ] 200
[2026-06-13 19:31:47,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:48,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:48,021.021 INFO    ] No update needed
[2026-06-13 19:31:48,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:48,043.043 INFO    ] 200
[2026-06-13 19:31:48,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:48,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:48,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:48,110.110 INFO    ] No camera update needed
[2026-06-13 19:31:48,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:48,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:48,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:48,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:31:50,156.156 INFO    ] ================================================
[2026-06-13 19:31:50,171.171 INFO    ] Launching Daemon at Sat Jun 13 19:31:50 IST 2026
[2026-06-13 19:31:50,182.182 INFO    ] ================================================
[2026-06-13 19:31:50,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:31:50
[2026-06-13 19:31:50,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:31:50,971.971 INFO    ] Initializing speech engine...
[2026-06-13 19:31:50,976.976 INFO    ] 2026-06-13 19:31:50
[2026-06-13 19:31:51,178.178 INFO    ] 2026-06-13 19:31:51
[2026-06-13 19:31:51,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:31:51,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:31:51,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:31:51,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:31:51,592.592 INFO    ] time= 13/06/2026 19:31:51
[2026-06-13 19:31:51,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:31:51,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:31:51,689.689 INFO    ] No existing commands found in stream
[2026-06-13 19:31:56,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:31:56,703.703 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 19:31:58,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:31:58,719.719 INFO    ] Checking for system updates...
[2026-06-13 19:31:58,741.741 INFO    ] 200
[2026-06-13 19:31:58,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:58,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:31:58,778.778 INFO    ] No update needed
[2026-06-13 19:31:58,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 19:31:58,800.800 INFO    ] 200
[2026-06-13 19:31:58,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:31:58,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:31:58,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:31:58,970.970 INFO    ] No camera update needed
[2026-06-13 19:31:58,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:31:58,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:31:58,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:31:58,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:01,026.026 INFO    ] ================================================
[2026-06-13 19:32:01,060.060 INFO    ] Launching Daemon at Sat Jun 13 19:32:01 IST 2026
[2026-06-13 19:32:01,080.080 INFO    ] ================================================
[2026-06-13 19:32:01,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:01
[2026-06-13 19:32:01,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:02,093.093 INFO    ] Initializing speech engine...
[2026-06-13 19:32:02,100.100 INFO    ] 2026-06-13 19:32:02
[2026-06-13 19:32:02,313.313 INFO    ] 2026-06-13 19:32:02
[2026-06-13 19:32:02,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:02,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:02,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:02,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:02,706.706 INFO    ] time= 13/06/2026 19:32:02
[2026-06-13 19:32:02,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:02,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:02,840.840 INFO    ] No existing commands found in stream
[2026-06-13 19:32:07,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:32:07,854.854 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 19:32:09,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:32:09,757.757 INFO    ] Checking for system updates...
[2026-06-13 19:32:09,779.779 INFO    ] 200
[2026-06-13 19:32:09,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:09,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:09,815.815 INFO    ] No update needed
[2026-06-13 19:32:09,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 19:32:09,837.837 INFO    ] 200
[2026-06-13 19:32:09,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:09,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:32:09,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:09,910.910 INFO    ] No camera update needed
[2026-06-13 19:32:09,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:32:09,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:32:09,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:32:09,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:11,958.958 INFO    ] ================================================
[2026-06-13 19:32:11,973.973 INFO    ] Launching Daemon at Sat Jun 13 19:32:11 IST 2026
[2026-06-13 19:32:11,984.984 INFO    ] ================================================
[2026-06-13 19:32:12,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:12
[2026-06-13 19:32:12,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:12,794.794 INFO    ] Initializing speech engine...
[2026-06-13 19:32:12,799.799 INFO    ] 2026-06-13 19:32:12
[2026-06-13 19:32:13,004.004 INFO    ] 2026-06-13 19:32:12
[2026-06-13 19:32:13,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:13,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:13,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:13,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:13,409.409 INFO    ] time= 13/06/2026 19:32:13
[2026-06-13 19:32:13,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:13,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:13,569.569 INFO    ] No existing commands found in stream
[2026-06-13 19:32:18,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:32:18,582.582 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 19:32:22,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:32:22,491.491 INFO    ] Checking for system updates...
[2026-06-13 19:32:22,512.512 INFO    ] 200
[2026-06-13 19:32:22,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:22,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:32:22,550.550 INFO    ] No update needed
[2026-06-13 19:32:22,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 19:32:22,574.574 INFO    ] 200
[2026-06-13 19:32:22,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:22,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:32:22,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:32:22,637.637 INFO    ] No camera update needed
[2026-06-13 19:32:22,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:32:22,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:32:22,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:32:22,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:24,684.684 INFO    ] ================================================
[2026-06-13 19:32:24,699.699 INFO    ] Launching Daemon at Sat Jun 13 19:32:24 IST 2026
[2026-06-13 19:32:24,710.710 INFO    ] ================================================
[2026-06-13 19:32:25,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:25
[2026-06-13 19:32:25,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:25,497.497 INFO    ] Initializing speech engine...
[2026-06-13 19:32:25,502.502 INFO    ] 2026-06-13 19:32:25
[2026-06-13 19:32:25,717.717 INFO    ] 2026-06-13 19:32:25
[2026-06-13 19:32:25,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:25,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:26,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:26,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:26,230.230 INFO    ] time= 13/06/2026 19:32:26
[2026-06-13 19:32:26,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:26,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:26,437.437 INFO    ] No existing commands found in stream
[2026-06-13 19:32:31,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:32:31,468.468 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-13 19:32:33,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:32:33,661.661 INFO    ] Checking for system updates...
[2026-06-13 19:32:33,682.682 INFO    ] 200
[2026-06-13 19:32:33,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:33,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:33,716.716 INFO    ] No update needed
[2026-06-13 19:32:33,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 19:32:33,737.737 INFO    ] 200
[2026-06-13 19:32:33,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:33,762.762 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:32:33,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:32:33,800.800 INFO    ] No camera update needed
[2026-06-13 19:32:33,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:32:33,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:32:33,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:32:33,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:35,841.841 INFO    ] ================================================
[2026-06-13 19:32:35,856.856 INFO    ] Launching Daemon at Sat Jun 13 19:32:35 IST 2026
[2026-06-13 19:32:35,866.866 INFO    ] ================================================
[2026-06-13 19:32:36,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:36
[2026-06-13 19:32:36,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:36,666.666 INFO    ] Initializing speech engine...
[2026-06-13 19:32:36,676.676 INFO    ] 2026-06-13 19:32:36
[2026-06-13 19:32:36,881.881 INFO    ] 2026-06-13 19:32:36
[2026-06-13 19:32:36,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:37,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:37,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:37,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:37,314.314 INFO    ] time= 13/06/2026 19:32:37
[2026-06-13 19:32:37,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:37,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:37,510.510 INFO    ] No existing commands found in stream
[2026-06-13 19:32:42,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:32:42,544.544 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 19:32:43,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:32:43,202.202 INFO    ] Checking for system updates...
[2026-06-13 19:32:43,225.225 INFO    ] 200
[2026-06-13 19:32:43,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:43,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:43,261.261 INFO    ] No update needed
[2026-06-13 19:32:43,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 19:32:43,282.282 INFO    ] 200
[2026-06-13 19:32:43,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:43,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:32:43,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:43,345.345 INFO    ] No camera update needed
[2026-06-13 19:32:43,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:32:43,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:32:43,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:32:43,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:45,393.393 INFO    ] ================================================
[2026-06-13 19:32:45,416.416 INFO    ] Launching Daemon at Sat Jun 13 19:32:45 IST 2026
[2026-06-13 19:32:45,426.426 INFO    ] ================================================
[2026-06-13 19:32:45,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:45
[2026-06-13 19:32:46,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:46,211.211 INFO    ] Initializing speech engine...
[2026-06-13 19:32:46,221.221 INFO    ] 2026-06-13 19:32:46
[2026-06-13 19:32:46,426.426 INFO    ] 2026-06-13 19:32:46
[2026-06-13 19:32:46,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:46,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:46,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:46,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:46,830.830 INFO    ] time= 13/06/2026 19:32:46
[2026-06-13 19:32:46,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:46,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:46,940.940 INFO    ] No existing commands found in stream
[2026-06-13 19:32:51,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:32:51,952.952 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 19:32:52,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:32:52,298.298 INFO    ] Checking for system updates...
[2026-06-13 19:32:52,320.320 INFO    ] 200
[2026-06-13 19:32:52,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:52,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:52,353.353 INFO    ] No update needed
[2026-06-13 19:32:52,355.355 INFO    ] Checking for camera pi updates...
[2026-06-13 19:32:52,376.376 INFO    ] 200
[2026-06-13 19:32:52,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:32:52,403.403 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:32:52,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:32:52,441.441 INFO    ] No camera update needed
[2026-06-13 19:32:52,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:32:52,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:32:52,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:32:52,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:32:54,489.489 INFO    ] ================================================
[2026-06-13 19:32:54,504.504 INFO    ] Launching Daemon at Sat Jun 13 19:32:54 IST 2026
[2026-06-13 19:32:54,515.515 INFO    ] ================================================
[2026-06-13 19:32:54,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:32:54
[2026-06-13 19:32:55,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:32:55,310.310 INFO    ] Initializing speech engine...
[2026-06-13 19:32:55,316.316 INFO    ] 2026-06-13 19:32:55
[2026-06-13 19:32:55,517.517 INFO    ] 2026-06-13 19:32:55
[2026-06-13 19:32:55,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:32:55,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:32:55,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:32:55,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:32:55,929.929 INFO    ] time= 13/06/2026 19:32:55
[2026-06-13 19:32:55,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:32:55,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:32:56,034.034 INFO    ] No existing commands found in stream
[2026-06-13 19:33:01,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:01,046.046 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 19:33:01,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:33:01,860.860 INFO    ] Checking for system updates...
[2026-06-13 19:33:01,889.889 INFO    ] 200
[2026-06-13 19:33:01,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:01,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:33:01,933.933 INFO    ] No update needed
[2026-06-13 19:33:01,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:01,958.958 INFO    ] 200
[2026-06-13 19:33:01,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:01,990.990 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:02,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:33:02,018.018 INFO    ] No camera update needed
[2026-06-13 19:33:02,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:02,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:02,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:02,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:33:04,074.074 INFO    ] ================================================
[2026-06-13 19:33:04,089.089 INFO    ] Launching Daemon at Sat Jun 13 19:33:04 IST 2026
[2026-06-13 19:33:04,100.100 INFO    ] ================================================
[2026-06-13 19:33:04,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:33:04
[2026-06-13 19:33:04,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:33:04,876.876 INFO    ] Initializing speech engine...
[2026-06-13 19:33:04,882.882 INFO    ] 2026-06-13 19:33:04
[2026-06-13 19:33:05,088.088 INFO    ] 2026-06-13 19:33:05
[2026-06-13 19:33:05,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:33:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:33:05,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:33:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:33:05,502.502 INFO    ] time= 13/06/2026 19:33:05
[2026-06-13 19:33:05,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:33:05,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:33:05,751.751 INFO    ] No existing commands found in stream
[2026-06-13 19:33:10,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:10,776.776 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 19:33:13,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:33:13,038.038 INFO    ] Checking for system updates...
[2026-06-13 19:33:13,060.060 INFO    ] 200
[2026-06-13 19:33:13,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:13,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:13,095.095 INFO    ] No update needed
[2026-06-13 19:33:13,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:13,116.116 INFO    ] 200
[2026-06-13 19:33:13,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:13,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:13,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:13,182.182 INFO    ] No camera update needed
[2026-06-13 19:33:13,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:13,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:13,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:13,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:33:15,231.231 INFO    ] ================================================
[2026-06-13 19:33:15,246.246 INFO    ] Launching Daemon at Sat Jun 13 19:33:15 IST 2026
[2026-06-13 19:33:15,256.256 INFO    ] ================================================
[2026-06-13 19:33:15,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:33:15
[2026-06-13 19:33:15,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:33:16,087.087 INFO    ] Initializing speech engine...
[2026-06-13 19:33:16,092.092 INFO    ] 2026-06-13 19:33:16
[2026-06-13 19:33:16,299.299 INFO    ] 2026-06-13 19:33:16
[2026-06-13 19:33:16,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:33:16,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:33:16,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:33:16,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:33:16,676.676 INFO    ] time= 13/06/2026 19:33:16
[2026-06-13 19:33:16,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:33:16,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:33:16,828.828 INFO    ] No existing commands found in stream
[2026-06-13 19:33:21,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:21,844.844 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 19:33:25,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:33:25,207.207 INFO    ] Checking for system updates...
[2026-06-13 19:33:25,242.242 INFO    ] 200
[2026-06-13 19:33:25,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:25,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:33:25,285.285 INFO    ] No update needed
[2026-06-13 19:33:25,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:25,310.310 INFO    ] 200
[2026-06-13 19:33:25,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:25,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:25,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:33:25,379.379 INFO    ] No camera update needed
[2026-06-13 19:33:25,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:25,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:25,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:25,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:33:27,414.414 INFO    ] ================================================
[2026-06-13 19:33:27,424.424 INFO    ] Launching Daemon at Sat Jun 13 19:33:27 IST 2026
[2026-06-13 19:33:27,430.430 INFO    ] ================================================
[2026-06-13 19:33:27,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:33:27
[2026-06-13 19:33:28,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:33:28,876.876 INFO    ] Initializing speech engine...
[2026-06-13 19:33:28,883.883 INFO    ] 2026-06-13 19:33:28
[2026-06-13 19:33:29,145.145 INFO    ] 2026-06-13 19:33:29
[2026-06-13 19:33:29,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:33:29,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:33:29,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:33:29,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:33:29,539.539 INFO    ] time= 13/06/2026 19:33:29
[2026-06-13 19:33:29,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:33:29,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:33:29,713.713 INFO    ] No existing commands found in stream
[2026-06-13 19:33:34,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:34,752.752 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 19:33:35,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:33:35,414.414 INFO    ] Checking for system updates...
[2026-06-13 19:33:35,435.435 INFO    ] 200
[2026-06-13 19:33:35,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:35,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:35,469.469 INFO    ] No update needed
[2026-06-13 19:33:35,471.471 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:35,492.492 INFO    ] 200
[2026-06-13 19:33:35,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:35,519.519 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:35,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:35,561.561 INFO    ] No camera update needed
[2026-06-13 19:33:35,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:35,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:35,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:35,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:33:37,601.601 INFO    ] ================================================
[2026-06-13 19:33:37,616.616 INFO    ] Launching Daemon at Sat Jun 13 19:33:37 IST 2026
[2026-06-13 19:33:37,627.627 INFO    ] ================================================
[2026-06-13 19:33:37,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:33:37
[2026-06-13 19:33:38,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:33:38,402.402 INFO    ] Initializing speech engine...
[2026-06-13 19:33:38,410.410 INFO    ] 2026-06-13 19:33:38
[2026-06-13 19:33:38,620.620 INFO    ] 2026-06-13 19:33:38
[2026-06-13 19:33:38,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:33:38,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:33:38,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:33:38,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:33:39,051.051 INFO    ] time= 13/06/2026 19:33:38
[2026-06-13 19:33:39,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:33:39,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:33:39,147.147 INFO    ] No existing commands found in stream
[2026-06-13 19:33:44,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:44,161.161 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 19:33:46,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:33:46,105.105 INFO    ] Checking for system updates...
[2026-06-13 19:33:46,127.127 INFO    ] 200
[2026-06-13 19:33:46,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:46,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:33:46,160.160 INFO    ] No update needed
[2026-06-13 19:33:46,162.162 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:46,181.181 INFO    ] 200
[2026-06-13 19:33:46,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:46,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:46,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:46,250.250 INFO    ] No camera update needed
[2026-06-13 19:33:46,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:46,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:46,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:46,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:33:48,299.299 INFO    ] ================================================
[2026-06-13 19:33:48,315.315 INFO    ] Launching Daemon at Sat Jun 13 19:33:48 IST 2026
[2026-06-13 19:33:48,326.326 INFO    ] ================================================
[2026-06-13 19:33:48,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:33:48
[2026-06-13 19:33:48,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:33:49,136.136 INFO    ] Initializing speech engine...
[2026-06-13 19:33:49,142.142 INFO    ] 2026-06-13 19:33:49
[2026-06-13 19:33:49,348.348 INFO    ] 2026-06-13 19:33:49
[2026-06-13 19:33:49,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:33:49,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:33:49,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:33:49,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:33:49,759.759 INFO    ] time= 13/06/2026 19:33:49
[2026-06-13 19:33:49,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:33:49,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:33:49,870.870 INFO    ] No existing commands found in stream
[2026-06-13 19:33:54,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:33:54,883.883 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 19:33:58,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:33:58,763.763 INFO    ] Checking for system updates...
[2026-06-13 19:33:58,785.785 INFO    ] 200
[2026-06-13 19:33:58,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:58,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:58,819.819 INFO    ] No update needed
[2026-06-13 19:33:58,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 19:33:58,840.840 INFO    ] 200
[2026-06-13 19:33:58,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:33:58,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:33:58,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:33:58,903.903 INFO    ] No camera update needed
[2026-06-13 19:33:58,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:33:58,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:33:58,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:33:58,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:00,953.953 INFO    ] ================================================
[2026-06-13 19:34:00,969.969 INFO    ] Launching Daemon at Sat Jun 13 19:34:00 IST 2026
[2026-06-13 19:34:00,980.980 INFO    ] ================================================
[2026-06-13 19:34:01,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:01
[2026-06-13 19:34:01,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:02,320.320 INFO    ] Initializing speech engine...
[2026-06-13 19:34:02,334.334 INFO    ] 2026-06-13 19:34:02
[2026-06-13 19:34:02,615.615 INFO    ] 2026-06-13 19:34:02
[2026-06-13 19:34:02,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:02,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:02,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:34:03,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:34:03,007.007 INFO    ] time= 13/06/2026 19:34:03
[2026-06-13 19:34:03,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:34:03,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:34:03,136.136 INFO    ] No existing commands found in stream
[2026-06-13 19:34:08,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:34:08,159.159 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 19:34:11,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:34:11,567.567 INFO    ] Checking for system updates...
[2026-06-13 19:34:11,588.588 INFO    ] 200
[2026-06-13 19:34:11,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:11,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:11,621.621 INFO    ] No update needed
[2026-06-13 19:34:11,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 19:34:11,642.642 INFO    ] 200
[2026-06-13 19:34:11,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:11,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:34:11,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:11,711.711 INFO    ] No camera update needed
[2026-06-13 19:34:11,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:34:11,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:34:11,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:34:11,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:13,760.760 INFO    ] ================================================
[2026-06-13 19:34:13,775.775 INFO    ] Launching Daemon at Sat Jun 13 19:34:13 IST 2026
[2026-06-13 19:34:13,786.786 INFO    ] ================================================
[2026-06-13 19:34:14,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:14
[2026-06-13 19:34:14,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:14,568.568 INFO    ] Initializing speech engine...
[2026-06-13 19:34:14,572.572 INFO    ] 2026-06-13 19:34:14
[2026-06-13 19:34:14,799.799 INFO    ] 2026-06-13 19:34:14
[2026-06-13 19:34:14,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:15,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:34:15,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:34:15,209.209 INFO    ] time= 13/06/2026 19:34:15
[2026-06-13 19:34:15,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:34:15,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:34:15,348.348 INFO    ] No existing commands found in stream
[2026-06-13 19:34:20,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:34:20,362.362 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 19:34:21,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:34:21,523.523 INFO    ] Checking for system updates...
[2026-06-13 19:34:21,544.544 INFO    ] 200
[2026-06-13 19:34:21,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:21,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:34:21,577.577 INFO    ] No update needed
[2026-06-13 19:34:21,578.578 INFO    ] Checking for camera pi updates...
[2026-06-13 19:34:21,600.600 INFO    ] 200
[2026-06-13 19:34:21,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:21,627.627 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:34:21,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:34:21,664.664 INFO    ] No camera update needed
[2026-06-13 19:34:21,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:34:21,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:34:21,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:34:21,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:23,711.711 INFO    ] ================================================
[2026-06-13 19:34:23,727.727 INFO    ] Launching Daemon at Sat Jun 13 19:34:23 IST 2026
[2026-06-13 19:34:23,737.737 INFO    ] ================================================
[2026-06-13 19:34:24,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:24
[2026-06-13 19:34:24,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:25,059.059 INFO    ] Initializing speech engine...
[2026-06-13 19:34:25,069.069 INFO    ] 2026-06-13 19:34:25
[2026-06-13 19:34:25,320.320 INFO    ] 2026-06-13 19:34:25
[2026-06-13 19:34:25,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:25,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:25,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:34:25,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:34:25,698.698 INFO    ] time= 13/06/2026 19:34:25
[2026-06-13 19:34:25,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:34:25,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:34:25,775.775 INFO    ] No existing commands found in stream
[2026-06-13 19:34:30,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:34:30,790.790 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 19:34:33,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:34:33,204.204 INFO    ] Checking for system updates...
[2026-06-13 19:34:33,224.224 INFO    ] 200
[2026-06-13 19:34:33,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:33,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:34:33,258.258 INFO    ] No update needed
[2026-06-13 19:34:33,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 19:34:33,279.279 INFO    ] 200
[2026-06-13 19:34:33,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:33,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:34:33,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:34:33,353.353 INFO    ] No camera update needed
[2026-06-13 19:34:33,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:34:33,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:34:33,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:34:33,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:35,402.402 INFO    ] ================================================
[2026-06-13 19:34:35,417.417 INFO    ] Launching Daemon at Sat Jun 13 19:34:35 IST 2026
[2026-06-13 19:34:35,427.427 INFO    ] ================================================
[2026-06-13 19:34:35,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:35
[2026-06-13 19:34:36,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:36,200.200 INFO    ] Initializing speech engine...
[2026-06-13 19:34:36,205.205 INFO    ] 2026-06-13 19:34:36
[2026-06-13 19:34:36,434.434 INFO    ] 2026-06-13 19:34:36
[2026-06-13 19:34:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:36,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:36,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:34:36,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:34:36,855.855 INFO    ] time= 13/06/2026 19:34:36
[2026-06-13 19:34:36,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:34:36,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:34:36,986.986 INFO    ] No existing commands found in stream
[2026-06-13 19:34:41,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:34:41,999.999 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 19:34:43,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:34:43,639.639 INFO    ] Checking for system updates...
[2026-06-13 19:34:43,660.660 INFO    ] 200
[2026-06-13 19:34:43,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:43,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:43,696.696 INFO    ] No update needed
[2026-06-13 19:34:43,698.698 INFO    ] Checking for camera pi updates...
[2026-06-13 19:34:43,717.717 INFO    ] 200
[2026-06-13 19:34:43,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:43,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:34:43,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:43,782.782 INFO    ] No camera update needed
[2026-06-13 19:34:43,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:34:43,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:34:43,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:34:43,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:45,830.830 INFO    ] ================================================
[2026-06-13 19:34:45,845.845 INFO    ] Launching Daemon at Sat Jun 13 19:34:45 IST 2026
[2026-06-13 19:34:45,855.855 INFO    ] ================================================
[2026-06-13 19:34:46,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:46
[2026-06-13 19:34:47,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:47,293.293 INFO    ] Initializing speech engine...
[2026-06-13 19:34:47,303.303 INFO    ] 2026-06-13 19:34:47
[2026-06-13 19:34:47,565.565 INFO    ] 2026-06-13 19:34:47
[2026-06-13 19:34:47,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:47,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:47,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:34:48,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:34:48,067.067 INFO    ] time= 13/06/2026 19:34:48
[2026-06-13 19:34:48,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:34:48,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:34:48,204.204 INFO    ] No existing commands found in stream
[2026-06-13 19:34:53,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:34:53,220.220 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 19:34:56,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:34:56,052.052 INFO    ] Checking for system updates...
[2026-06-13 19:34:56,091.091 INFO    ] 200
[2026-06-13 19:34:56,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:56,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:56,169.169 INFO    ] No update needed
[2026-06-13 19:34:56,172.172 INFO    ] Checking for camera pi updates...
[2026-06-13 19:34:56,205.205 INFO    ] 200
[2026-06-13 19:34:56,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:34:56,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:34:56,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:34:56,275.275 INFO    ] No camera update needed
[2026-06-13 19:34:56,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:34:56,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:34:56,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:34:56,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:34:58,323.323 INFO    ] ================================================
[2026-06-13 19:34:58,339.339 INFO    ] Launching Daemon at Sat Jun 13 19:34:58 IST 2026
[2026-06-13 19:34:58,349.349 INFO    ] ================================================
[2026-06-13 19:34:58,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:34:58
[2026-06-13 19:34:59,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:34:59,154.154 INFO    ] Initializing speech engine...
[2026-06-13 19:34:59,162.162 INFO    ] 2026-06-13 19:34:59
[2026-06-13 19:34:59,387.387 INFO    ] 2026-06-13 19:34:59
[2026-06-13 19:34:59,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:34:59,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:34:59,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:00,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:00,062.062 INFO    ] time= 13/06/2026 19:35:00
[2026-06-13 19:35:00,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:00,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:00,117.117 INFO    ] No existing commands found in stream
[2026-06-13 19:35:05,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:35:05,130.130 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 19:35:06,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:35:06,075.075 INFO    ] Checking for system updates...
[2026-06-13 19:35:06,096.096 INFO    ] 200
[2026-06-13 19:35:06,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:06,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:06,130.130 INFO    ] No update needed
[2026-06-13 19:35:06,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 19:35:06,157.157 INFO    ] 200
[2026-06-13 19:35:06,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:06,186.186 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:35:06,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:06,230.230 INFO    ] No camera update needed
[2026-06-13 19:35:06,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:35:06,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:35:06,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:35:06,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:35:08,279.279 INFO    ] ================================================
[2026-06-13 19:35:08,295.295 INFO    ] Launching Daemon at Sat Jun 13 19:35:08 IST 2026
[2026-06-13 19:35:08,305.305 INFO    ] ================================================
[2026-06-13 19:35:08,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:35:08
[2026-06-13 19:35:08,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:35:09,096.096 INFO    ] Initializing speech engine...
[2026-06-13 19:35:09,101.101 INFO    ] 2026-06-13 19:35:09
[2026-06-13 19:35:09,304.304 INFO    ] 2026-06-13 19:35:09
[2026-06-13 19:35:09,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:35:09,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:35:09,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:09,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:09,585.585 INFO    ] time= 13/06/2026 19:35:09
[2026-06-13 19:35:09,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:09,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:09,686.686 INFO    ] No existing commands found in stream
[2026-06-13 19:35:14,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:35:14,723.723 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 19:35:16,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:35:16,664.664 INFO    ] Checking for system updates...
[2026-06-13 19:35:16,687.687 INFO    ] 200
[2026-06-13 19:35:16,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:16,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:16,721.721 INFO    ] No update needed
[2026-06-13 19:35:16,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 19:35:16,742.742 INFO    ] 200
[2026-06-13 19:35:16,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:16,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:35:16,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:16,808.808 INFO    ] No camera update needed
[2026-06-13 19:35:16,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:35:16,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:35:16,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:35:16,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:35:18,857.857 INFO    ] ================================================
[2026-06-13 19:35:18,872.872 INFO    ] Launching Daemon at Sat Jun 13 19:35:18 IST 2026
[2026-06-13 19:35:18,883.883 INFO    ] ================================================
[2026-06-13 19:35:19,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:35:19
[2026-06-13 19:35:19,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:35:19,694.694 INFO    ] Initializing speech engine...
[2026-06-13 19:35:19,703.703 INFO    ] 2026-06-13 19:35:19
[2026-06-13 19:35:19,942.942 INFO    ] 2026-06-13 19:35:19
[2026-06-13 19:35:19,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:35:20,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:35:20,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:20,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:20,341.341 INFO    ] time= 13/06/2026 19:35:20
[2026-06-13 19:35:20,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:20,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:20,468.468 INFO    ] No existing commands found in stream
[2026-06-13 19:35:25,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:35:25,483.483 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 19:35:29,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:35:29,560.560 INFO    ] Checking for system updates...
[2026-06-13 19:35:29,582.582 INFO    ] 200
[2026-06-13 19:35:29,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:29,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:35:29,616.616 INFO    ] No update needed
[2026-06-13 19:35:29,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 19:35:29,637.637 INFO    ] 200
[2026-06-13 19:35:29,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:29,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:35:29,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:35:29,696.696 INFO    ] No camera update needed
[2026-06-13 19:35:29,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:35:29,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:35:29,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:35:29,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:35:31,745.745 INFO    ] ================================================
[2026-06-13 19:35:31,756.756 INFO    ] Launching Daemon at Sat Jun 13 19:35:31 IST 2026
[2026-06-13 19:35:31,763.763 INFO    ] ================================================
[2026-06-13 19:35:32,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:35:32
[2026-06-13 19:35:32,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:35:32,642.642 INFO    ] Initializing speech engine...
[2026-06-13 19:35:32,648.648 INFO    ] 2026-06-13 19:35:32
[2026-06-13 19:35:32,858.858 INFO    ] 2026-06-13 19:35:32
[2026-06-13 19:35:32,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:35:33,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:35:33,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:33,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:33,270.270 INFO    ] time= 13/06/2026 19:35:33
[2026-06-13 19:35:33,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:33,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:33,384.384 INFO    ] No existing commands found in stream
[2026-06-13 19:35:38,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:35:38,397.397 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 19:35:41,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:35:41,891.891 INFO    ] Checking for system updates...
[2026-06-13 19:35:41,912.912 INFO    ] 200
[2026-06-13 19:35:41,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:41,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:41,946.946 INFO    ] No update needed
[2026-06-13 19:35:41,947.947 INFO    ] Checking for camera pi updates...
[2026-06-13 19:35:41,969.969 INFO    ] 200
[2026-06-13 19:35:41,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:41,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:35:42,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:35:42,034.034 INFO    ] No camera update needed
[2026-06-13 19:35:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:35:42,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:35:42,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:35:42,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:35:44,082.082 INFO    ] ================================================
[2026-06-13 19:35:44,098.098 INFO    ] Launching Daemon at Sat Jun 13 19:35:44 IST 2026
[2026-06-13 19:35:44,109.109 INFO    ] ================================================
[2026-06-13 19:35:44,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:35:44
[2026-06-13 19:35:44,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:35:44,957.957 INFO    ] Initializing speech engine...
[2026-06-13 19:35:44,967.967 INFO    ] 2026-06-13 19:35:44
[2026-06-13 19:35:45,180.180 INFO    ] 2026-06-13 19:35:45
[2026-06-13 19:35:45,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:35:45,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:35:45,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:45,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:45,596.596 INFO    ] time= 13/06/2026 19:35:45
[2026-06-13 19:35:45,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:45,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:45,697.697 INFO    ] No existing commands found in stream
[2026-06-13 19:35:50,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:35:50,710.710 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 19:35:54,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:35:54,906.906 INFO    ] Checking for system updates...
[2026-06-13 19:35:54,927.927 INFO    ] 200
[2026-06-13 19:35:54,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:54,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:35:54,960.960 INFO    ] No update needed
[2026-06-13 19:35:54,961.961 INFO    ] Checking for camera pi updates...
[2026-06-13 19:35:54,981.981 INFO    ] 200
[2026-06-13 19:35:54,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:35:55,005.005 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:35:55,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:35:55,042.042 INFO    ] No camera update needed
[2026-06-13 19:35:55,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:35:55,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:35:55,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:35:55,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:35:57,091.091 INFO    ] ================================================
[2026-06-13 19:35:57,106.106 INFO    ] Launching Daemon at Sat Jun 13 19:35:57 IST 2026
[2026-06-13 19:35:57,117.117 INFO    ] ================================================
[2026-06-13 19:35:57,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:35:57
[2026-06-13 19:35:57,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:35:57,927.927 INFO    ] Initializing speech engine...
[2026-06-13 19:35:57,931.931 INFO    ] 2026-06-13 19:35:57
[2026-06-13 19:35:58,133.133 INFO    ] 2026-06-13 19:35:58
[2026-06-13 19:35:58,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:35:58,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:35:58,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:35:58,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:35:58,538.538 INFO    ] time= 13/06/2026 19:35:58
[2026-06-13 19:35:58,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:35:58,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:35:58,649.649 INFO    ] No existing commands found in stream
[2026-06-13 19:36:03,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:36:03,662.662 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 19:36:04,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:36:04,454.454 INFO    ] Checking for system updates...
[2026-06-13 19:36:04,475.475 INFO    ] 200
[2026-06-13 19:36:04,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:04,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:04,508.508 INFO    ] No update needed
[2026-06-13 19:36:04,509.509 INFO    ] Checking for camera pi updates...
[2026-06-13 19:36:04,529.529 INFO    ] 200
[2026-06-13 19:36:04,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:04,555.555 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:36:04,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:04,694.694 INFO    ] No camera update needed
[2026-06-13 19:36:04,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:36:04,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:36:04,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:36:04,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:36:06,744.744 INFO    ] ================================================
[2026-06-13 19:36:06,759.759 INFO    ] Launching Daemon at Sat Jun 13 19:36:06 IST 2026
[2026-06-13 19:36:06,770.770 INFO    ] ================================================
[2026-06-13 19:36:07,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:36:07
[2026-06-13 19:36:07,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:36:07,578.578 INFO    ] Initializing speech engine...
[2026-06-13 19:36:07,583.583 INFO    ] 2026-06-13 19:36:07
[2026-06-13 19:36:07,786.786 INFO    ] 2026-06-13 19:36:07
[2026-06-13 19:36:07,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:36:07,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:36:07,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:36:08,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:36:08,185.185 INFO    ] time= 13/06/2026 19:36:08
[2026-06-13 19:36:08,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:36:08,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:36:08,299.299 INFO    ] No existing commands found in stream
[2026-06-13 19:36:13,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:36:13,311.311 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 19:36:15,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:36:15,736.736 INFO    ] Checking for system updates...
[2026-06-13 19:36:15,772.772 INFO    ] 200
[2026-06-13 19:36:15,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:15,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:15,832.832 INFO    ] No update needed
[2026-06-13 19:36:15,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 19:36:15,874.874 INFO    ] 200
[2026-06-13 19:36:15,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:15,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:36:15,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:15,942.942 INFO    ] No camera update needed
[2026-06-13 19:36:15,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:36:15,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:36:15,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:36:15,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:36:17,990.990 INFO    ] ================================================
[2026-06-13 19:36:18,005.005 INFO    ] Launching Daemon at Sat Jun 13 19:36:18 IST 2026
[2026-06-13 19:36:18,016.016 INFO    ] ================================================
[2026-06-13 19:36:18,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:36:18
[2026-06-13 19:36:18,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:36:18,811.811 INFO    ] Initializing speech engine...
[2026-06-13 19:36:18,824.824 INFO    ] 2026-06-13 19:36:18
[2026-06-13 19:36:19,043.043 INFO    ] 2026-06-13 19:36:19
[2026-06-13 19:36:19,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:36:19,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:36:19,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:36:19,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:36:19,470.470 INFO    ] time= 13/06/2026 19:36:19
[2026-06-13 19:36:19,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:36:19,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:36:19,598.598 INFO    ] No existing commands found in stream
[2026-06-13 19:36:24,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:36:24,611.611 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 19:36:26,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:36:26,440.440 INFO    ] Checking for system updates...
[2026-06-13 19:36:26,461.461 INFO    ] 200
[2026-06-13 19:36:26,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:26,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:36:26,507.507 INFO    ] No update needed
[2026-06-13 19:36:26,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 19:36:26,528.528 INFO    ] 200
[2026-06-13 19:36:26,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:26,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:36:26,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:36:26,580.580 INFO    ] No camera update needed
[2026-06-13 19:36:26,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:36:26,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:36:26,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:36:26,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:36:28,629.629 INFO    ] ================================================
[2026-06-13 19:36:28,645.645 INFO    ] Launching Daemon at Sat Jun 13 19:36:28 IST 2026
[2026-06-13 19:36:28,655.655 INFO    ] ================================================
[2026-06-13 19:36:29,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:36:29
[2026-06-13 19:36:29,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:36:29,452.452 INFO    ] Initializing speech engine...
[2026-06-13 19:36:29,462.462 INFO    ] 2026-06-13 19:36:29
[2026-06-13 19:36:29,690.690 INFO    ] 2026-06-13 19:36:29
[2026-06-13 19:36:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:36:29,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:36:29,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:36:30,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:36:30,115.115 INFO    ] time= 13/06/2026 19:36:30
[2026-06-13 19:36:30,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:36:30,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:36:30,248.248 INFO    ] No existing commands found in stream
[2026-06-13 19:36:35,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:36:35,262.262 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 19:36:39,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:36:39,209.209 INFO    ] Checking for system updates...
[2026-06-13 19:36:39,230.230 INFO    ] 200
[2026-06-13 19:36:39,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:39,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:39,264.264 INFO    ] No update needed
[2026-06-13 19:36:39,265.265 INFO    ] Checking for camera pi updates...
[2026-06-13 19:36:39,284.284 INFO    ] 200
[2026-06-13 19:36:39,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:39,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:36:39,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:36:39,347.347 INFO    ] No camera update needed
[2026-06-13 19:36:39,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:36:39,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:36:39,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:36:39,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:36:41,395.395 INFO    ] ================================================
[2026-06-13 19:36:41,412.412 INFO    ] Launching Daemon at Sat Jun 13 19:36:41 IST 2026
[2026-06-13 19:36:41,423.423 INFO    ] ================================================
[2026-06-13 19:36:41,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:36:41
[2026-06-13 19:36:42,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:36:42,245.245 INFO    ] Initializing speech engine...
[2026-06-13 19:36:42,250.250 INFO    ] 2026-06-13 19:36:42
[2026-06-13 19:36:42,456.456 INFO    ] 2026-06-13 19:36:42
[2026-06-13 19:36:42,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:36:42,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:36:42,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:36:42,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:36:42,864.864 INFO    ] time= 13/06/2026 19:36:42
[2026-06-13 19:36:42,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:36:42,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:36:42,991.991 INFO    ] No existing commands found in stream
[2026-06-13 19:36:48,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:36:48,004.004 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 19:36:52,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:36:52,359.359 INFO    ] Checking for system updates...
[2026-06-13 19:36:52,380.380 INFO    ] 200
[2026-06-13 19:36:52,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:52,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:36:52,416.416 INFO    ] No update needed
[2026-06-13 19:36:52,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 19:36:52,437.437 INFO    ] 200
[2026-06-13 19:36:52,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:36:52,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:36:52,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:36:52,504.504 INFO    ] No camera update needed
[2026-06-13 19:36:52,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:36:52,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:36:52,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:36:52,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:36:54,553.553 INFO    ] ================================================
[2026-06-13 19:36:54,569.569 INFO    ] Launching Daemon at Sat Jun 13 19:36:54 IST 2026
[2026-06-13 19:36:54,581.581 INFO    ] ================================================
[2026-06-13 19:36:54,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:36:54
[2026-06-13 19:36:55,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:36:55,426.426 INFO    ] Initializing speech engine...
[2026-06-13 19:36:55,436.436 INFO    ] 2026-06-13 19:36:55
[2026-06-13 19:36:55,653.653 INFO    ] 2026-06-13 19:36:55
[2026-06-13 19:36:55,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:36:55,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:36:55,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:36:56,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:36:56,078.078 INFO    ] time= 13/06/2026 19:36:56
[2026-06-13 19:36:56,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:36:56,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:36:56,171.171 INFO    ] No existing commands found in stream
[2026-06-13 19:37:01,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:01,191.191 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 19:37:02,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:37:02,330.330 INFO    ] Checking for system updates...
[2026-06-13 19:37:02,376.376 INFO    ] 200
[2026-06-13 19:37:02,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:02,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:37:02,456.456 INFO    ] No update needed
[2026-06-13 19:37:02,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:02,522.522 INFO    ] 200
[2026-06-13 19:37:02,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:02,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:02,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:37:02,604.604 INFO    ] No camera update needed
[2026-06-13 19:37:02,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:02,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:02,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:02,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:04,671.671 INFO    ] ================================================
[2026-06-13 19:37:04,686.686 INFO    ] Launching Daemon at Sat Jun 13 19:37:04 IST 2026
[2026-06-13 19:37:04,697.697 INFO    ] ================================================
[2026-06-13 19:37:05,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:05
[2026-06-13 19:37:05,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:05,496.496 INFO    ] Initializing speech engine...
[2026-06-13 19:37:05,504.504 INFO    ] 2026-06-13 19:37:05
[2026-06-13 19:37:05,721.721 INFO    ] 2026-06-13 19:37:05
[2026-06-13 19:37:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:37:05,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:37:05,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:37:06,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:37:06,136.136 INFO    ] time= 13/06/2026 19:37:06
[2026-06-13 19:37:06,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:37:06,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:37:06,303.303 INFO    ] No existing commands found in stream
[2026-06-13 19:37:11,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:11,316.316 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 19:37:12,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:37:12,175.175 INFO    ] Checking for system updates...
[2026-06-13 19:37:12,197.197 INFO    ] 200
[2026-06-13 19:37:12,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:12,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:37:12,231.231 INFO    ] No update needed
[2026-06-13 19:37:12,232.232 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:12,252.252 INFO    ] 200
[2026-06-13 19:37:12,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:12,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:12,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:37:12,319.319 INFO    ] No camera update needed
[2026-06-13 19:37:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:12,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:12,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:12,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:14,365.365 INFO    ] ================================================
[2026-06-13 19:37:14,380.380 INFO    ] Launching Daemon at Sat Jun 13 19:37:14 IST 2026
[2026-06-13 19:37:14,390.390 INFO    ] ================================================
[2026-06-13 19:37:14,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:14
[2026-06-13 19:37:15,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:15,199.199 INFO    ] Initializing speech engine...
[2026-06-13 19:37:15,205.205 INFO    ] 2026-06-13 19:37:15
[2026-06-13 19:37:15,408.408 INFO    ] 2026-06-13 19:37:15
[2026-06-13 19:37:15,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:37:15,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:37:15,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:37:15,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:37:15,829.829 INFO    ] time= 13/06/2026 19:37:15
[2026-06-13 19:37:15,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:37:15,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:37:15,925.925 INFO    ] No existing commands found in stream
[2026-06-13 19:37:20,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:20,939.939 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 19:37:24,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:37:24,290.290 INFO    ] Checking for system updates...
[2026-06-13 19:37:24,311.311 INFO    ] 200
[2026-06-13 19:37:24,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:24,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:24,345.345 INFO    ] No update needed
[2026-06-13 19:37:24,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:24,366.366 INFO    ] 200
[2026-06-13 19:37:24,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:24,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:24,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:24,432.432 INFO    ] No camera update needed
[2026-06-13 19:37:24,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:24,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:24,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:24,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:26,484.484 INFO    ] ================================================
[2026-06-13 19:37:26,499.499 INFO    ] Launching Daemon at Sat Jun 13 19:37:26 IST 2026
[2026-06-13 19:37:26,509.509 INFO    ] ================================================
[2026-06-13 19:37:26,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:26
[2026-06-13 19:37:27,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:27,318.318 INFO    ] Initializing speech engine...
[2026-06-13 19:37:27,324.324 INFO    ] 2026-06-13 19:37:27
[2026-06-13 19:37:27,527.527 INFO    ] 2026-06-13 19:37:27
[2026-06-13 19:37:27,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:37:27,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:37:27,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:37:27,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:37:27,950.950 INFO    ] time= 13/06/2026 19:37:27
[2026-06-13 19:37:27,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:37:27,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:37:28,048.048 INFO    ] No existing commands found in stream
[2026-06-13 19:37:33,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:33,065.065 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 19:37:36,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:37:36,411.411 INFO    ] Checking for system updates...
[2026-06-13 19:37:36,431.431 INFO    ] 200
[2026-06-13 19:37:36,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:36,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:36,465.465 INFO    ] No update needed
[2026-06-13 19:37:36,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:36,488.488 INFO    ] 200
[2026-06-13 19:37:36,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:36,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:36,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:36,555.555 INFO    ] No camera update needed
[2026-06-13 19:37:36,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:36,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:36,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:36,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:38,603.603 INFO    ] ================================================
[2026-06-13 19:37:38,618.618 INFO    ] Launching Daemon at Sat Jun 13 19:37:38 IST 2026
[2026-06-13 19:37:38,629.629 INFO    ] ================================================
[2026-06-13 19:37:38,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:38
[2026-06-13 19:37:39,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:39,414.414 INFO    ] Initializing speech engine...
[2026-06-13 19:37:39,418.418 INFO    ] 2026-06-13 19:37:39
[2026-06-13 19:37:39,647.647 INFO    ] 2026-06-13 19:37:39
[2026-06-13 19:37:39,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:37:39,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:37:39,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:37:40,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:37:40,067.067 INFO    ] time= 13/06/2026 19:37:40
[2026-06-13 19:37:40,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:37:40,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:37:40,304.304 INFO    ] No existing commands found in stream
[2026-06-13 19:37:45,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:45,332.332 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 19:37:46,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:37:46,436.436 INFO    ] Checking for system updates...
[2026-06-13 19:37:46,457.457 INFO    ] 200
[2026-06-13 19:37:46,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:46,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:37:46,490.490 INFO    ] No update needed
[2026-06-13 19:37:46,491.491 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:46,513.513 INFO    ] 200
[2026-06-13 19:37:46,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:46,538.538 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:46,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:46,580.580 INFO    ] No camera update needed
[2026-06-13 19:37:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:46,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:46,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:46,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:48,628.628 INFO    ] ================================================
[2026-06-13 19:37:48,644.644 INFO    ] Launching Daemon at Sat Jun 13 19:37:48 IST 2026
[2026-06-13 19:37:48,654.654 INFO    ] ================================================
[2026-06-13 19:37:48,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:48
[2026-06-13 19:37:49,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:49,480.480 INFO    ] Initializing speech engine...
[2026-06-13 19:37:49,485.485 INFO    ] 2026-06-13 19:37:49
[2026-06-13 19:37:49,692.692 INFO    ] 2026-06-13 19:37:49
[2026-06-13 19:37:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:37:49,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:37:49,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:37:50,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:37:50,092.092 INFO    ] time= 13/06/2026 19:37:50
[2026-06-13 19:37:50,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:37:50,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:37:50,206.206 INFO    ] No existing commands found in stream
[2026-06-13 19:37:55,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:37:55,220.220 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 19:37:56,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:37:56,891.891 INFO    ] Checking for system updates...
[2026-06-13 19:37:56,912.912 INFO    ] 200
[2026-06-13 19:37:56,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:56,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:56,950.950 INFO    ] No update needed
[2026-06-13 19:37:56,951.951 INFO    ] Checking for camera pi updates...
[2026-06-13 19:37:56,971.971 INFO    ] 200
[2026-06-13 19:37:56,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:37:56,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:37:57,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:37:57,044.044 INFO    ] No camera update needed
[2026-06-13 19:37:57,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:37:57,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:37:57,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:37:57,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:37:59,091.091 INFO    ] ================================================
[2026-06-13 19:37:59,106.106 INFO    ] Launching Daemon at Sat Jun 13 19:37:59 IST 2026
[2026-06-13 19:37:59,117.117 INFO    ] ================================================
[2026-06-13 19:37:59,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:37:59
[2026-06-13 19:37:59,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:37:59,926.926 INFO    ] Initializing speech engine...
[2026-06-13 19:37:59,939.939 INFO    ] 2026-06-13 19:37:59
[2026-06-13 19:38:00,155.155 INFO    ] 2026-06-13 19:38:00
[2026-06-13 19:38:00,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:00,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:00,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:00,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:00,561.561 INFO    ] time= 13/06/2026 19:38:00
[2026-06-13 19:38:00,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:00,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:00,706.706 INFO    ] No existing commands found in stream
[2026-06-13 19:38:05,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:38:05,720.720 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 19:38:07,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:38:07,811.811 INFO    ] Checking for system updates...
[2026-06-13 19:38:07,832.832 INFO    ] 200
[2026-06-13 19:38:07,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:07,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:07,867.867 INFO    ] No update needed
[2026-06-13 19:38:07,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 19:38:07,891.891 INFO    ] 200
[2026-06-13 19:38:07,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:07,917.917 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:38:08,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:08,062.062 INFO    ] No camera update needed
[2026-06-13 19:38:08,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:38:08,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:38:08,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:38:08,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:38:10,110.110 INFO    ] ================================================
[2026-06-13 19:38:10,125.125 INFO    ] Launching Daemon at Sat Jun 13 19:38:10 IST 2026
[2026-06-13 19:38:10,135.135 INFO    ] ================================================
[2026-06-13 19:38:10,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:38:10
[2026-06-13 19:38:10,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:38:10,921.921 INFO    ] Initializing speech engine...
[2026-06-13 19:38:10,926.926 INFO    ] 2026-06-13 19:38:10
[2026-06-13 19:38:11,141.141 INFO    ] 2026-06-13 19:38:11
[2026-06-13 19:38:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:11,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:11,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:11,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:11,561.561 INFO    ] time= 13/06/2026 19:38:11
[2026-06-13 19:38:11,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:11,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:11,692.692 INFO    ] No existing commands found in stream
[2026-06-13 19:38:16,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:38:16,705.705 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 19:38:18,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:38:18,510.510 INFO    ] Checking for system updates...
[2026-06-13 19:38:18,533.533 INFO    ] 200
[2026-06-13 19:38:18,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:18,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:38:18,568.568 INFO    ] No update needed
[2026-06-13 19:38:18,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 19:38:18,589.589 INFO    ] 200
[2026-06-13 19:38:18,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:18,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:38:18,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:18,653.653 INFO    ] No camera update needed
[2026-06-13 19:38:18,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:38:18,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:38:18,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:38:18,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:38:20,700.700 INFO    ] ================================================
[2026-06-13 19:38:20,715.715 INFO    ] Launching Daemon at Sat Jun 13 19:38:20 IST 2026
[2026-06-13 19:38:20,726.726 INFO    ] ================================================
[2026-06-13 19:38:21,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:38:21
[2026-06-13 19:38:21,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:38:21,566.566 INFO    ] Initializing speech engine...
[2026-06-13 19:38:21,572.572 INFO    ] 2026-06-13 19:38:21
[2026-06-13 19:38:21,778.778 INFO    ] 2026-06-13 19:38:21
[2026-06-13 19:38:21,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:21,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:22,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:22,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:22,198.198 INFO    ] time= 13/06/2026 19:38:22
[2026-06-13 19:38:22,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:22,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:22,293.293 INFO    ] No existing commands found in stream
[2026-06-13 19:38:27,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:38:27,307.307 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 19:38:28,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:38:28,404.404 INFO    ] Checking for system updates...
[2026-06-13 19:38:28,426.426 INFO    ] 200
[2026-06-13 19:38:28,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:28,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:38:28,462.462 INFO    ] No update needed
[2026-06-13 19:38:28,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 19:38:28,484.484 INFO    ] 200
[2026-06-13 19:38:28,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:28,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:38:28,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:38:28,549.549 INFO    ] No camera update needed
[2026-06-13 19:38:28,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:38:28,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:38:28,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:38:28,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:38:30,597.597 INFO    ] ================================================
[2026-06-13 19:38:30,614.614 INFO    ] Launching Daemon at Sat Jun 13 19:38:30 IST 2026
[2026-06-13 19:38:30,624.624 INFO    ] ================================================
[2026-06-13 19:38:31,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:38:31
[2026-06-13 19:38:31,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:38:31,825.825 INFO    ] Initializing speech engine...
[2026-06-13 19:38:31,830.830 INFO    ] 2026-06-13 19:38:31
[2026-06-13 19:38:32,096.096 INFO    ] 2026-06-13 19:38:32
[2026-06-13 19:38:32,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:32,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:32,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:32,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:32,487.487 INFO    ] time= 13/06/2026 19:38:32
[2026-06-13 19:38:32,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:32,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:32,681.681 INFO    ] No existing commands found in stream
[2026-06-13 19:38:37,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:38:37,710.710 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 19:38:40,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:38:40,065.065 INFO    ] Checking for system updates...
[2026-06-13 19:38:40,085.085 INFO    ] 200
[2026-06-13 19:38:40,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:40,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:40,119.119 INFO    ] No update needed
[2026-06-13 19:38:40,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 19:38:40,141.141 INFO    ] 200
[2026-06-13 19:38:40,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:40,166.166 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:38:40,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:40,204.204 INFO    ] No camera update needed
[2026-06-13 19:38:40,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:38:40,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:38:40,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:38:40,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:38:42,253.253 INFO    ] ================================================
[2026-06-13 19:38:42,269.269 INFO    ] Launching Daemon at Sat Jun 13 19:38:42 IST 2026
[2026-06-13 19:38:42,280.280 INFO    ] ================================================
[2026-06-13 19:38:42,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:38:42
[2026-06-13 19:38:43,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:38:43,159.159 INFO    ] Initializing speech engine...
[2026-06-13 19:38:43,165.165 INFO    ] 2026-06-13 19:38:43
[2026-06-13 19:38:43,373.373 INFO    ] 2026-06-13 19:38:43
[2026-06-13 19:38:43,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:43,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:43,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:43,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:43,787.787 INFO    ] time= 13/06/2026 19:38:43
[2026-06-13 19:38:43,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:43,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:43,888.888 INFO    ] No existing commands found in stream
[2026-06-13 19:38:48,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:38:48,906.906 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 19:38:51,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:38:51,267.267 INFO    ] Checking for system updates...
[2026-06-13 19:38:51,289.289 INFO    ] 200
[2026-06-13 19:38:51,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:51,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:51,323.323 INFO    ] No update needed
[2026-06-13 19:38:51,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 19:38:51,344.344 INFO    ] 200
[2026-06-13 19:38:51,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:38:51,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:38:51,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:38:51,411.411 INFO    ] No camera update needed
[2026-06-13 19:38:51,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:38:51,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:38:51,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:38:51,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:38:53,465.465 INFO    ] ================================================
[2026-06-13 19:38:53,481.481 INFO    ] Launching Daemon at Sat Jun 13 19:38:53 IST 2026
[2026-06-13 19:38:53,492.492 INFO    ] ================================================
[2026-06-13 19:38:53,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:38:53
[2026-06-13 19:38:54,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:38:54,284.284 INFO    ] Initializing speech engine...
[2026-06-13 19:38:54,289.289 INFO    ] 2026-06-13 19:38:54
[2026-06-13 19:38:54,520.520 INFO    ] 2026-06-13 19:38:54
[2026-06-13 19:38:54,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:38:54,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:38:54,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:38:54,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:38:54,918.918 INFO    ] time= 13/06/2026 19:38:54
[2026-06-13 19:38:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:38:55,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:38:55,076.076 INFO    ] No existing commands found in stream
[2026-06-13 19:39:00,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:39:00,089.089 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 19:39:04,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:39:04,277.277 INFO    ] Checking for system updates...
[2026-06-13 19:39:04,299.299 INFO    ] 200
[2026-06-13 19:39:04,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:04,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:39:04,333.333 INFO    ] No update needed
[2026-06-13 19:39:04,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 19:39:04,358.358 INFO    ] 200
[2026-06-13 19:39:04,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:04,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:39:04,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:39:04,425.425 INFO    ] No camera update needed
[2026-06-13 19:39:04,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:39:04,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:39:04,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:39:04,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:39:06,472.472 INFO    ] ================================================
[2026-06-13 19:39:06,487.487 INFO    ] Launching Daemon at Sat Jun 13 19:39:06 IST 2026
[2026-06-13 19:39:06,497.497 INFO    ] ================================================
[2026-06-13 19:39:06,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:39:06
[2026-06-13 19:39:07,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:39:07,290.290 INFO    ] Initializing speech engine...
[2026-06-13 19:39:07,295.295 INFO    ] 2026-06-13 19:39:07
[2026-06-13 19:39:07,511.511 INFO    ] 2026-06-13 19:39:07
[2026-06-13 19:39:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:39:07,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:39:07,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:39:07,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:39:07,882.882 INFO    ] time= 13/06/2026 19:39:07
[2026-06-13 19:39:07,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:39:07,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:39:08,017.017 INFO    ] No existing commands found in stream
[2026-06-13 19:39:13,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:39:13,047.047 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 19:39:16,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:39:16,272.272 INFO    ] Checking for system updates...
[2026-06-13 19:39:16,293.293 INFO    ] 200
[2026-06-13 19:39:16,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:16,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:16,327.327 INFO    ] No update needed
[2026-06-13 19:39:16,328.328 INFO    ] Checking for camera pi updates...
[2026-06-13 19:39:16,348.348 INFO    ] 200
[2026-06-13 19:39:16,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:16,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:39:16,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:16,419.419 INFO    ] No camera update needed
[2026-06-13 19:39:16,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:39:16,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:39:16,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:39:16,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:39:18,466.466 INFO    ] ================================================
[2026-06-13 19:39:18,481.481 INFO    ] Launching Daemon at Sat Jun 13 19:39:18 IST 2026
[2026-06-13 19:39:18,492.492 INFO    ] ================================================
[2026-06-13 19:39:18,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:39:18
[2026-06-13 19:39:19,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:39:19,333.333 INFO    ] Initializing speech engine...
[2026-06-13 19:39:19,339.339 INFO    ] 2026-06-13 19:39:19
[2026-06-13 19:39:19,546.546 INFO    ] 2026-06-13 19:39:19
[2026-06-13 19:39:19,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:39:19,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:39:19,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:39:19,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:39:19,948.948 INFO    ] time= 13/06/2026 19:39:19
[2026-06-13 19:39:19,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:39:20,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:39:20,070.070 INFO    ] No existing commands found in stream
[2026-06-13 19:39:25,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:39:25,084.084 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 19:39:28,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:39:28,945.945 INFO    ] Checking for system updates...
[2026-06-13 19:39:28,981.981 INFO    ] 200
[2026-06-13 19:39:28,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:29,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:39:29,045.045 INFO    ] No update needed
[2026-06-13 19:39:29,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 19:39:29,083.083 INFO    ] 200
[2026-06-13 19:39:29,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:29,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:39:29,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:29,179.179 INFO    ] No camera update needed
[2026-06-13 19:39:29,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:39:29,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:39:29,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:39:29,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:39:31,235.235 INFO    ] ================================================
[2026-06-13 19:39:31,251.251 INFO    ] Launching Daemon at Sat Jun 13 19:39:31 IST 2026
[2026-06-13 19:39:31,262.262 INFO    ] ================================================
[2026-06-13 19:39:31,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:39:31
[2026-06-13 19:39:31,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:39:32,102.102 INFO    ] Initializing speech engine...
[2026-06-13 19:39:32,107.107 INFO    ] 2026-06-13 19:39:32
[2026-06-13 19:39:32,325.325 INFO    ] 2026-06-13 19:39:32
[2026-06-13 19:39:32,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:39:32,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:39:32,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:39:32,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:39:32,708.708 INFO    ] time= 13/06/2026 19:39:32
[2026-06-13 19:39:32,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:39:32,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:39:32,809.809 INFO    ] No existing commands found in stream
[2026-06-13 19:39:37,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:39:37,838.838 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 19:39:39,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:39:39,473.473 INFO    ] Checking for system updates...
[2026-06-13 19:39:39,494.494 INFO    ] 200
[2026-06-13 19:39:39,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:39,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:39,528.528 INFO    ] No update needed
[2026-06-13 19:39:39,529.529 INFO    ] Checking for camera pi updates...
[2026-06-13 19:39:39,549.549 INFO    ] 200
[2026-06-13 19:39:39,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:39,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:39:39,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:39:39,612.612 INFO    ] No camera update needed
[2026-06-13 19:39:39,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:39:39,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:39:39,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:39:39,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:39:41,660.660 INFO    ] ================================================
[2026-06-13 19:39:41,676.676 INFO    ] Launching Daemon at Sat Jun 13 19:39:41 IST 2026
[2026-06-13 19:39:41,687.687 INFO    ] ================================================
[2026-06-13 19:39:42,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:39:42
[2026-06-13 19:39:42,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:39:42,482.482 INFO    ] Initializing speech engine...
[2026-06-13 19:39:42,487.487 INFO    ] 2026-06-13 19:39:42
[2026-06-13 19:39:42,691.691 INFO    ] 2026-06-13 19:39:42
[2026-06-13 19:39:42,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:39:42,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:39:42,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:39:43,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:39:43,106.106 INFO    ] time= 13/06/2026 19:39:43
[2026-06-13 19:39:43,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:39:43,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:39:43,201.201 INFO    ] No existing commands found in stream
[2026-06-13 19:39:48,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:39:48,214.214 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 19:39:51,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:39:51,463.463 INFO    ] Checking for system updates...
[2026-06-13 19:39:51,484.484 INFO    ] 200
[2026-06-13 19:39:51,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:51,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:51,520.520 INFO    ] No update needed
[2026-06-13 19:39:51,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 19:39:51,542.542 INFO    ] 200
[2026-06-13 19:39:51,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:39:51,567.567 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:39:51,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:39:51,605.605 INFO    ] No camera update needed
[2026-06-13 19:39:51,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:39:51,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:39:51,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:39:51,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:39:53,651.651 INFO    ] ================================================
[2026-06-13 19:39:53,667.667 INFO    ] Launching Daemon at Sat Jun 13 19:39:53 IST 2026
[2026-06-13 19:39:53,678.678 INFO    ] ================================================
[2026-06-13 19:39:54,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:39:54
[2026-06-13 19:39:54,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:39:54,462.462 INFO    ] Initializing speech engine...
[2026-06-13 19:39:54,467.467 INFO    ] 2026-06-13 19:39:54
[2026-06-13 19:39:54,707.707 INFO    ] 2026-06-13 19:39:54
[2026-06-13 19:39:54,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:39:54,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:39:54,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:39:55,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:39:55,154.154 INFO    ] time= 13/06/2026 19:39:55
[2026-06-13 19:39:55,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:39:55,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:39:55,302.302 INFO    ] No existing commands found in stream
[2026-06-13 19:40:00,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:40:00,325.325 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 19:40:04,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:40:04,702.702 INFO    ] Checking for system updates...
[2026-06-13 19:40:04,742.742 INFO    ] 200
[2026-06-13 19:40:04,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:04,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:40:04,805.805 INFO    ] No update needed
[2026-06-13 19:40:04,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 19:40:04,845.845 INFO    ] 200
[2026-06-13 19:40:04,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:04,893.893 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:40:04,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:40:04,941.941 INFO    ] No camera update needed
[2026-06-13 19:40:04,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:40:04,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:40:04,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:40:04,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:40:07,998.998 INFO    ] ================================================
[2026-06-13 19:40:07,014.014 INFO    ] Launching Daemon at Sat Jun 13 19:40:07 IST 2026
[2026-06-13 19:40:07,026.026 INFO    ] ================================================
[2026-06-13 19:40:07,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:40:07
[2026-06-13 19:40:07,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:40:07,822.822 INFO    ] Initializing speech engine...
[2026-06-13 19:40:07,827.827 INFO    ] 2026-06-13 19:40:07
[2026-06-13 19:40:08,030.030 INFO    ] 2026-06-13 19:40:08
[2026-06-13 19:40:08,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:40:08,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:40:08,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:40:08,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:40:08,431.431 INFO    ] time= 13/06/2026 19:40:08
[2026-06-13 19:40:08,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:40:08,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:40:08,548.548 INFO    ] No existing commands found in stream
[2026-06-13 19:40:13,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:40:13,562.562 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 19:40:16,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:40:16,603.603 INFO    ] Checking for system updates...
[2026-06-13 19:40:16,623.623 INFO    ] 200
[2026-06-13 19:40:16,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:16,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:40:16,656.656 INFO    ] No update needed
[2026-06-13 19:40:16,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 19:40:16,677.677 INFO    ] 200
[2026-06-13 19:40:16,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:16,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:40:16,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:40:16,839.839 INFO    ] No camera update needed
[2026-06-13 19:40:16,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:40:16,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:40:16,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:40:16,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:40:18,885.885 INFO    ] ================================================
[2026-06-13 19:40:18,901.901 INFO    ] Launching Daemon at Sat Jun 13 19:40:18 IST 2026
[2026-06-13 19:40:18,911.911 INFO    ] ================================================
[2026-06-13 19:40:19,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:40:19
[2026-06-13 19:40:19,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:40:19,686.686 INFO    ] Initializing speech engine...
[2026-06-13 19:40:19,691.691 INFO    ] 2026-06-13 19:40:19
[2026-06-13 19:40:19,893.893 INFO    ] 2026-06-13 19:40:19
[2026-06-13 19:40:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:40:20,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:40:20,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:40:20,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:40:20,293.293 INFO    ] time= 13/06/2026 19:40:20
[2026-06-13 19:40:20,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:40:20,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:40:20,407.407 INFO    ] No existing commands found in stream
[2026-06-13 19:40:25,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:40:25,420.420 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 19:40:29,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:40:29,017.017 INFO    ] Checking for system updates...
[2026-06-13 19:40:29,038.038 INFO    ] 200
[2026-06-13 19:40:29,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:29,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:40:29,072.072 INFO    ] No update needed
[2026-06-13 19:40:29,073.073 INFO    ] Checking for camera pi updates...
[2026-06-13 19:40:29,093.093 INFO    ] 200
[2026-06-13 19:40:29,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:29,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:40:29,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:40:29,158.158 INFO    ] No camera update needed
[2026-06-13 19:40:29,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:40:29,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:40:29,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:40:29,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:40:31,207.207 INFO    ] ================================================
[2026-06-13 19:40:31,223.223 INFO    ] Launching Daemon at Sat Jun 13 19:40:31 IST 2026
[2026-06-13 19:40:31,234.234 INFO    ] ================================================
[2026-06-13 19:40:31,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:40:31
[2026-06-13 19:40:31,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:40:32,083.083 INFO    ] Initializing speech engine...
[2026-06-13 19:40:32,088.088 INFO    ] 2026-06-13 19:40:32
[2026-06-13 19:40:32,279.279 INFO    ] 2026-06-13 19:40:32
[2026-06-13 19:40:32,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:40:32,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:40:32,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:40:32,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:40:32,577.577 INFO    ] time= 13/06/2026 19:40:32
[2026-06-13 19:40:32,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:40:32,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:40:32,679.679 INFO    ] No existing commands found in stream
[2026-06-13 19:40:37,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:40:37,716.716 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 19:40:42,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:40:42,058.058 INFO    ] Checking for system updates...
[2026-06-13 19:40:42,081.081 INFO    ] 200
[2026-06-13 19:40:42,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:42,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:40:42,116.116 INFO    ] No update needed
[2026-06-13 19:40:42,118.118 INFO    ] Checking for camera pi updates...
[2026-06-13 19:40:42,137.137 INFO    ] 200
[2026-06-13 19:40:42,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:42,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:40:42,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:40:42,213.213 INFO    ] No camera update needed
[2026-06-13 19:40:42,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:40:42,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:40:42,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:40:42,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:40:44,260.260 INFO    ] ================================================
[2026-06-13 19:40:44,276.276 INFO    ] Launching Daemon at Sat Jun 13 19:40:44 IST 2026
[2026-06-13 19:40:44,286.286 INFO    ] ================================================
[2026-06-13 19:40:44,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:40:44
[2026-06-13 19:40:44,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:40:45,106.106 INFO    ] Initializing speech engine...
[2026-06-13 19:40:45,110.110 INFO    ] 2026-06-13 19:40:45
[2026-06-13 19:40:45,315.315 INFO    ] 2026-06-13 19:40:45
[2026-06-13 19:40:45,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:40:45,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:40:45,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:40:45,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:40:45,665.665 INFO    ] time= 13/06/2026 19:40:45
[2026-06-13 19:40:45,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:40:45,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:40:45,836.836 INFO    ] No existing commands found in stream
[2026-06-13 19:40:50,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:40:50,847.847 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-13 19:40:54,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:40:54,856.856 INFO    ] Checking for system updates...
[2026-06-13 19:40:54,878.878 INFO    ] 200
[2026-06-13 19:40:54,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:54,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:40:54,911.911 INFO    ] No update needed
[2026-06-13 19:40:54,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 19:40:54,931.931 INFO    ] 200
[2026-06-13 19:40:54,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:40:54,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:40:55,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:40:55,003.003 INFO    ] No camera update needed
[2026-06-13 19:40:55,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:40:55,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:40:55,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:40:55,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:40:57,052.052 INFO    ] ================================================
[2026-06-13 19:40:57,067.067 INFO    ] Launching Daemon at Sat Jun 13 19:40:57 IST 2026
[2026-06-13 19:40:57,078.078 INFO    ] ================================================
[2026-06-13 19:40:57,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:40:57
[2026-06-13 19:40:57,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:40:57,891.891 INFO    ] Initializing speech engine...
[2026-06-13 19:40:57,897.897 INFO    ] 2026-06-13 19:40:57
[2026-06-13 19:40:58,101.101 INFO    ] 2026-06-13 19:40:58
[2026-06-13 19:40:58,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:40:58,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:40:58,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:40:58,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:40:58,513.513 INFO    ] time= 13/06/2026 19:40:58
[2026-06-13 19:40:58,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:40:58,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:40:58,612.612 INFO    ] No existing commands found in stream
[2026-06-13 19:41:03,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:41:03,629.629 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 19:41:05,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:41:05,924.924 INFO    ] Checking for system updates...
[2026-06-13 19:41:05,949.949 INFO    ] 200
[2026-06-13 19:41:05,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:05,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:41:05,983.983 INFO    ] No update needed
[2026-06-13 19:41:05,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 19:41:06,005.005 INFO    ] 200
[2026-06-13 19:41:06,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:06,033.033 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:41:06,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:41:06,076.076 INFO    ] No camera update needed
[2026-06-13 19:41:06,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:41:06,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:41:06,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:41:06,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:41:08,125.125 INFO    ] ================================================
[2026-06-13 19:41:08,140.140 INFO    ] Launching Daemon at Sat Jun 13 19:41:08 IST 2026
[2026-06-13 19:41:08,151.151 INFO    ] ================================================
[2026-06-13 19:41:08,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:41:08
[2026-06-13 19:41:08,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:41:08,949.949 INFO    ] Initializing speech engine...
[2026-06-13 19:41:08,960.960 INFO    ] 2026-06-13 19:41:08
[2026-06-13 19:41:09,165.165 INFO    ] 2026-06-13 19:41:09
[2026-06-13 19:41:09,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:41:09,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:41:09,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:41:09,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:41:09,588.588 INFO    ] time= 13/06/2026 19:41:09
[2026-06-13 19:41:09,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:41:09,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:41:09,686.686 INFO    ] No existing commands found in stream
[2026-06-13 19:41:14,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:41:14,697.697 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 19:41:17,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:41:17,543.543 INFO    ] Checking for system updates...
[2026-06-13 19:41:17,564.564 INFO    ] 200
[2026-06-13 19:41:17,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:17,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:17,598.598 INFO    ] No update needed
[2026-06-13 19:41:17,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 19:41:17,619.619 INFO    ] 200
[2026-06-13 19:41:17,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:17,650.650 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:41:17,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:17,691.691 INFO    ] No camera update needed
[2026-06-13 19:41:17,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:41:17,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:41:17,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:41:17,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:41:19,737.737 INFO    ] ================================================
[2026-06-13 19:41:19,752.752 INFO    ] Launching Daemon at Sat Jun 13 19:41:19 IST 2026
[2026-06-13 19:41:19,763.763 INFO    ] ================================================
[2026-06-13 19:41:20,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:41:20
[2026-06-13 19:41:20,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:41:20,578.578 INFO    ] Initializing speech engine...
[2026-06-13 19:41:20,583.583 INFO    ] 2026-06-13 19:41:20
[2026-06-13 19:41:20,788.788 INFO    ] 2026-06-13 19:41:20
[2026-06-13 19:41:20,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:41:20,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:41:21,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:41:21,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:41:21,192.192 INFO    ] time= 13/06/2026 19:41:21
[2026-06-13 19:41:21,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:41:21,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:41:21,309.309 INFO    ] No existing commands found in stream
[2026-06-13 19:41:26,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:41:26,321.321 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 19:41:28,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:41:28,473.473 INFO    ] Checking for system updates...
[2026-06-13 19:41:28,493.493 INFO    ] 200
[2026-06-13 19:41:28,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:28,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:28,527.527 INFO    ] No update needed
[2026-06-13 19:41:28,528.528 INFO    ] Checking for camera pi updates...
[2026-06-13 19:41:28,549.549 INFO    ] 200
[2026-06-13 19:41:28,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:28,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:41:28,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:28,614.614 INFO    ] No camera update needed
[2026-06-13 19:41:28,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:41:28,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:41:28,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:41:28,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:41:30,660.660 INFO    ] ================================================
[2026-06-13 19:41:30,676.676 INFO    ] Launching Daemon at Sat Jun 13 19:41:30 IST 2026
[2026-06-13 19:41:30,687.687 INFO    ] ================================================
[2026-06-13 19:41:31,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:41:31
[2026-06-13 19:41:31,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:41:31,486.486 INFO    ] Initializing speech engine...
[2026-06-13 19:41:31,490.490 INFO    ] 2026-06-13 19:41:31
[2026-06-13 19:41:31,726.726 INFO    ] 2026-06-13 19:41:31
[2026-06-13 19:41:31,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:41:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:41:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:41:32,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:41:32,168.168 INFO    ] time= 13/06/2026 19:41:32
[2026-06-13 19:41:32,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:41:32,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:41:32,279.279 INFO    ] No existing commands found in stream
[2026-06-13 19:41:37,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:41:37,293.293 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 19:41:38,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:41:38,289.289 INFO    ] Checking for system updates...
[2026-06-13 19:41:38,309.309 INFO    ] 200
[2026-06-13 19:41:38,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:38,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:41:38,345.345 INFO    ] No update needed
[2026-06-13 19:41:38,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 19:41:38,365.365 INFO    ] 200
[2026-06-13 19:41:38,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:38,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:41:38,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:41:38,433.433 INFO    ] No camera update needed
[2026-06-13 19:41:38,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:41:38,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:41:38,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:41:38,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:41:40,481.481 INFO    ] ================================================
[2026-06-13 19:41:40,496.496 INFO    ] Launching Daemon at Sat Jun 13 19:41:40 IST 2026
[2026-06-13 19:41:40,507.507 INFO    ] ================================================
[2026-06-13 19:41:40,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:41:40
[2026-06-13 19:41:41,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:41:41,323.323 INFO    ] Initializing speech engine...
[2026-06-13 19:41:41,346.346 INFO    ] 2026-06-13 19:41:41
[2026-06-13 19:41:41,606.606 INFO    ] 2026-06-13 19:41:41
[2026-06-13 19:41:41,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:41:41,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:41:41,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:41:41,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:41:41,986.986 INFO    ] time= 13/06/2026 19:41:41
[2026-06-13 19:41:41,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:41:42,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:41:42,160.160 INFO    ] No existing commands found in stream
[2026-06-13 19:41:47,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:41:47,193.193 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 19:41:51,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:41:51,339.339 INFO    ] Checking for system updates...
[2026-06-13 19:41:51,359.359 INFO    ] 200
[2026-06-13 19:41:51,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:51,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:51,395.395 INFO    ] No update needed
[2026-06-13 19:41:51,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 19:41:51,416.416 INFO    ] 200
[2026-06-13 19:41:51,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:41:51,442.442 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:41:51,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:41:51,484.484 INFO    ] No camera update needed
[2026-06-13 19:41:51,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:41:51,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:41:51,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:41:51,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:41:53,533.533 INFO    ] ================================================
[2026-06-13 19:41:53,549.549 INFO    ] Launching Daemon at Sat Jun 13 19:41:53 IST 2026
[2026-06-13 19:41:53,560.560 INFO    ] ================================================
[2026-06-13 19:41:53,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:41:53
[2026-06-13 19:41:54,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:41:54,391.391 INFO    ] Initializing speech engine...
[2026-06-13 19:41:54,396.396 INFO    ] 2026-06-13 19:41:54
[2026-06-13 19:41:54,600.600 INFO    ] 2026-06-13 19:41:54
[2026-06-13 19:41:54,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:41:54,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:41:54,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:41:54,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:41:54,995.995 INFO    ] time= 13/06/2026 19:41:54
[2026-06-13 19:41:55,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:41:55,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:41:55,115.115 INFO    ] No existing commands found in stream
[2026-06-13 19:42:00,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:00,129.129 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 19:42:01,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:42:01,910.910 INFO    ] Checking for system updates...
[2026-06-13 19:42:01,935.935 INFO    ] 200
[2026-06-13 19:42:01,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:01,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:01,992.992 INFO    ] No update needed
[2026-06-13 19:42:01,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:02,038.038 INFO    ] 200
[2026-06-13 19:42:02,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:02,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:02,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:02,105.105 INFO    ] No camera update needed
[2026-06-13 19:42:02,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:02,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:02,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:02,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:04,162.162 INFO    ] ================================================
[2026-06-13 19:42:04,177.177 INFO    ] Launching Daemon at Sat Jun 13 19:42:04 IST 2026
[2026-06-13 19:42:04,188.188 INFO    ] ================================================
[2026-06-13 19:42:04,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:04
[2026-06-13 19:42:04,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:05,056.056 INFO    ] Initializing speech engine...
[2026-06-13 19:42:05,061.061 INFO    ] 2026-06-13 19:42:05
[2026-06-13 19:42:05,270.270 INFO    ] 2026-06-13 19:42:05
[2026-06-13 19:42:05,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:05,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:05,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:05,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:05,691.691 INFO    ] time= 13/06/2026 19:42:05
[2026-06-13 19:42:05,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:05,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:05,837.837 INFO    ] No existing commands found in stream
[2026-06-13 19:42:10,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:10,851.851 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 19:42:11,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:42:11,686.686 INFO    ] Checking for system updates...
[2026-06-13 19:42:11,708.708 INFO    ] 200
[2026-06-13 19:42:11,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:11,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:11,741.741 INFO    ] No update needed
[2026-06-13 19:42:11,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:11,763.763 INFO    ] 200
[2026-06-13 19:42:11,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:11,788.788 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:11,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:11,825.825 INFO    ] No camera update needed
[2026-06-13 19:42:11,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:11,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:11,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:11,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:13,873.873 INFO    ] ================================================
[2026-06-13 19:42:13,888.888 INFO    ] Launching Daemon at Sat Jun 13 19:42:13 IST 2026
[2026-06-13 19:42:13,899.899 INFO    ] ================================================
[2026-06-13 19:42:14,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:14
[2026-06-13 19:42:14,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:14,692.692 INFO    ] Initializing speech engine...
[2026-06-13 19:42:14,702.702 INFO    ] 2026-06-13 19:42:14
[2026-06-13 19:42:14,907.907 INFO    ] 2026-06-13 19:42:14
[2026-06-13 19:42:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:15,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:15,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:15,297.297 INFO    ] time= 13/06/2026 19:42:15
[2026-06-13 19:42:15,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:15,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:15,427.427 INFO    ] No existing commands found in stream
[2026-06-13 19:42:20,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:20,461.461 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 19:42:22,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:42:22,878.878 INFO    ] Checking for system updates...
[2026-06-13 19:42:22,901.901 INFO    ] 200
[2026-06-13 19:42:22,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:22,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:22,941.941 INFO    ] No update needed
[2026-06-13 19:42:22,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:22,963.963 INFO    ] 200
[2026-06-13 19:42:22,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:22,989.989 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:23,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:42:23,129.129 INFO    ] No camera update needed
[2026-06-13 19:42:23,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:23,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:23,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:23,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:25,177.177 INFO    ] ================================================
[2026-06-13 19:42:25,193.193 INFO    ] Launching Daemon at Sat Jun 13 19:42:25 IST 2026
[2026-06-13 19:42:25,204.204 INFO    ] ================================================
[2026-06-13 19:42:25,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:25
[2026-06-13 19:42:25,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:25,996.996 INFO    ] Initializing speech engine...
[2026-06-13 19:42:26,002.002 INFO    ] 2026-06-13 19:42:25
[2026-06-13 19:42:26,235.235 INFO    ] 2026-06-13 19:42:26
[2026-06-13 19:42:26,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:26,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:26,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:26,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:26,674.674 INFO    ] time= 13/06/2026 19:42:26
[2026-06-13 19:42:26,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:26,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:26,804.804 INFO    ] No existing commands found in stream
[2026-06-13 19:42:31,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:31,843.843 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 19:42:33,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:42:33,069.069 INFO    ] Checking for system updates...
[2026-06-13 19:42:33,106.106 INFO    ] 200
[2026-06-13 19:42:33,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:33,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:33,167.167 INFO    ] No update needed
[2026-06-13 19:42:33,170.170 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:33,209.209 INFO    ] 200
[2026-06-13 19:42:33,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:33,258.258 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:33,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:33,310.310 INFO    ] No camera update needed
[2026-06-13 19:42:33,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:33,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:33,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:33,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:35,366.366 INFO    ] ================================================
[2026-06-13 19:42:35,381.381 INFO    ] Launching Daemon at Sat Jun 13 19:42:35 IST 2026
[2026-06-13 19:42:35,392.392 INFO    ] ================================================
[2026-06-13 19:42:35,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:35
[2026-06-13 19:42:36,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:36,180.180 INFO    ] Initializing speech engine...
[2026-06-13 19:42:36,191.191 INFO    ] 2026-06-13 19:42:36
[2026-06-13 19:42:36,397.397 INFO    ] 2026-06-13 19:42:36
[2026-06-13 19:42:36,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:36,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:36,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:36,803.803 INFO    ] time= 13/06/2026 19:42:36
[2026-06-13 19:42:36,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:36,919.919 INFO    ] No existing commands found in stream
[2026-06-13 19:42:41,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:41,932.932 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 19:42:45,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:42:45,358.358 INFO    ] Checking for system updates...
[2026-06-13 19:42:45,380.380 INFO    ] 200
[2026-06-13 19:42:45,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:45,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:45,415.415 INFO    ] No update needed
[2026-06-13 19:42:45,416.416 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:45,435.435 INFO    ] 200
[2026-06-13 19:42:45,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:45,460.460 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:45,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:45,501.501 INFO    ] No camera update needed
[2026-06-13 19:42:45,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:45,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:45,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:45,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:47,549.549 INFO    ] ================================================
[2026-06-13 19:42:47,565.565 INFO    ] Launching Daemon at Sat Jun 13 19:42:47 IST 2026
[2026-06-13 19:42:47,576.576 INFO    ] ================================================
[2026-06-13 19:42:48,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:48
[2026-06-13 19:42:48,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:48,997.997 INFO    ] Initializing speech engine...
[2026-06-13 19:42:49,003.003 INFO    ] 2026-06-13 19:42:48
[2026-06-13 19:42:49,211.211 INFO    ] 2026-06-13 19:42:49
[2026-06-13 19:42:49,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:49,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:49,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:49,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:49,608.608 INFO    ] time= 13/06/2026 19:42:49
[2026-06-13 19:42:49,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:49,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:49,736.736 INFO    ] No existing commands found in stream
[2026-06-13 19:42:54,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:42:54,750.750 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 19:42:55,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:42:55,619.619 INFO    ] Checking for system updates...
[2026-06-13 19:42:55,642.642 INFO    ] 200
[2026-06-13 19:42:55,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:55,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:42:55,677.677 INFO    ] No update needed
[2026-06-13 19:42:55,678.678 INFO    ] Checking for camera pi updates...
[2026-06-13 19:42:55,699.699 INFO    ] 200
[2026-06-13 19:42:55,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:42:55,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:42:55,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:42:55,762.762 INFO    ] No camera update needed
[2026-06-13 19:42:55,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:42:55,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:42:55,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:42:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:42:57,809.809 INFO    ] ================================================
[2026-06-13 19:42:57,825.825 INFO    ] Launching Daemon at Sat Jun 13 19:42:57 IST 2026
[2026-06-13 19:42:57,835.835 INFO    ] ================================================
[2026-06-13 19:42:58,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:42:58
[2026-06-13 19:42:58,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:42:58,669.669 INFO    ] Initializing speech engine...
[2026-06-13 19:42:58,675.675 INFO    ] 2026-06-13 19:42:58
[2026-06-13 19:42:58,885.885 INFO    ] 2026-06-13 19:42:58
[2026-06-13 19:42:58,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:42:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:42:59,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:42:59,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:42:59,300.300 INFO    ] time= 13/06/2026 19:42:59
[2026-06-13 19:42:59,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:42:59,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:42:59,413.413 INFO    ] No existing commands found in stream
[2026-06-13 19:43:04,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:43:04,431.431 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 19:43:05,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:43:05,625.625 INFO    ] Checking for system updates...
[2026-06-13 19:43:05,648.648 INFO    ] 200
[2026-06-13 19:43:05,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:05,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:43:05,684.684 INFO    ] No update needed
[2026-06-13 19:43:05,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 19:43:05,706.706 INFO    ] 200
[2026-06-13 19:43:05,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:05,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:43:05,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:43:05,779.779 INFO    ] No camera update needed
[2026-06-13 19:43:05,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:43:05,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:43:05,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:43:05,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:43:07,825.825 INFO    ] ================================================
[2026-06-13 19:43:07,840.840 INFO    ] Launching Daemon at Sat Jun 13 19:43:07 IST 2026
[2026-06-13 19:43:07,851.851 INFO    ] ================================================
[2026-06-13 19:43:08,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:43:08
[2026-06-13 19:43:08,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:43:08,623.623 INFO    ] Initializing speech engine...
[2026-06-13 19:43:08,635.635 INFO    ] 2026-06-13 19:43:08
[2026-06-13 19:43:08,844.844 INFO    ] 2026-06-13 19:43:08
[2026-06-13 19:43:08,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:43:09,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:43:09,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:43:09,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:43:09,263.263 INFO    ] time= 13/06/2026 19:43:09
[2026-06-13 19:43:09,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:43:09,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:43:09,365.365 INFO    ] No existing commands found in stream
[2026-06-13 19:43:14,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:43:14,382.382 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 19:43:15,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:43:15,438.438 INFO    ] Checking for system updates...
[2026-06-13 19:43:15,460.460 INFO    ] 200
[2026-06-13 19:43:15,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:15,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:15,493.493 INFO    ] No update needed
[2026-06-13 19:43:15,494.494 INFO    ] Checking for camera pi updates...
[2026-06-13 19:43:15,516.516 INFO    ] 200
[2026-06-13 19:43:15,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:15,542.542 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:43:15,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:15,565.565 INFO    ] No camera update needed
[2026-06-13 19:43:15,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:43:15,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:43:15,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:43:15,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:43:17,613.613 INFO    ] ================================================
[2026-06-13 19:43:17,628.628 INFO    ] Launching Daemon at Sat Jun 13 19:43:17 IST 2026
[2026-06-13 19:43:17,639.639 INFO    ] ================================================
[2026-06-13 19:43:17,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:43:17
[2026-06-13 19:43:18,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:43:18,468.468 INFO    ] Initializing speech engine...
[2026-06-13 19:43:18,474.474 INFO    ] 2026-06-13 19:43:18
[2026-06-13 19:43:18,684.684 INFO    ] 2026-06-13 19:43:18
[2026-06-13 19:43:18,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:43:18,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:43:18,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:43:19,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:43:19,092.092 INFO    ] time= 13/06/2026 19:43:19
[2026-06-13 19:43:19,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:43:19,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:43:19,210.210 INFO    ] No existing commands found in stream
[2026-06-13 19:43:24,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:43:24,223.223 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 19:43:28,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:43:28,183.183 INFO    ] Checking for system updates...
[2026-06-13 19:43:28,205.205 INFO    ] 200
[2026-06-13 19:43:28,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:28,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:43:28,241.241 INFO    ] No update needed
[2026-06-13 19:43:28,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 19:43:28,270.270 INFO    ] 200
[2026-06-13 19:43:28,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:28,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:43:28,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:43:28,366.366 INFO    ] No camera update needed
[2026-06-13 19:43:28,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:43:28,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:43:28,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:43:28,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:43:30,421.421 INFO    ] ================================================
[2026-06-13 19:43:30,436.436 INFO    ] Launching Daemon at Sat Jun 13 19:43:30 IST 2026
[2026-06-13 19:43:30,447.447 INFO    ] ================================================
[2026-06-13 19:43:31,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:43:31
[2026-06-13 19:43:31,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:43:31,701.701 INFO    ] Initializing speech engine...
[2026-06-13 19:43:31,706.706 INFO    ] 2026-06-13 19:43:31
[2026-06-13 19:43:31,935.935 INFO    ] 2026-06-13 19:43:31
[2026-06-13 19:43:31,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:43:32,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:43:32,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:43:32,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:43:32,357.357 INFO    ] time= 13/06/2026 19:43:32
[2026-06-13 19:43:32,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:43:32,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:43:32,472.472 INFO    ] No existing commands found in stream
[2026-06-13 19:43:37,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:43:37,483.483 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 19:43:41,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:43:41,199.199 INFO    ] Checking for system updates...
[2026-06-13 19:43:41,220.220 INFO    ] 200
[2026-06-13 19:43:41,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:41,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:41,255.255 INFO    ] No update needed
[2026-06-13 19:43:41,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 19:43:41,277.277 INFO    ] 200
[2026-06-13 19:43:41,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:41,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:43:41,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:41,343.343 INFO    ] No camera update needed
[2026-06-13 19:43:41,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:43:41,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:43:41,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:43:41,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:43:43,389.389 INFO    ] ================================================
[2026-06-13 19:43:43,404.404 INFO    ] Launching Daemon at Sat Jun 13 19:43:43 IST 2026
[2026-06-13 19:43:43,415.415 INFO    ] ================================================
[2026-06-13 19:43:43,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:43:43
[2026-06-13 19:43:44,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:43:44,192.192 INFO    ] Initializing speech engine...
[2026-06-13 19:43:44,201.201 INFO    ] 2026-06-13 19:43:44
[2026-06-13 19:43:44,423.423 INFO    ] 2026-06-13 19:43:44
[2026-06-13 19:43:44,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:43:44,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:43:44,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:43:44,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:43:44,851.851 INFO    ] time= 13/06/2026 19:43:44
[2026-06-13 19:43:44,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:43:44,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:43:45,073.073 INFO    ] No existing commands found in stream
[2026-06-13 19:43:50,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:43:50,089.089 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 19:43:52,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:43:52,094.094 INFO    ] Checking for system updates...
[2026-06-13 19:43:52,116.116 INFO    ] 200
[2026-06-13 19:43:52,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:52,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:52,151.151 INFO    ] No update needed
[2026-06-13 19:43:52,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 19:43:52,173.173 INFO    ] 200
[2026-06-13 19:43:52,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:43:52,200.200 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:43:52,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:43:52,243.243 INFO    ] No camera update needed
[2026-06-13 19:43:52,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:43:52,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:43:52,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:43:52,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:43:54,292.292 INFO    ] ================================================
[2026-06-13 19:43:54,307.307 INFO    ] Launching Daemon at Sat Jun 13 19:43:54 IST 2026
[2026-06-13 19:43:54,318.318 INFO    ] ================================================
[2026-06-13 19:43:54,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:43:54
[2026-06-13 19:43:54,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:43:55,135.135 INFO    ] Initializing speech engine...
[2026-06-13 19:43:55,140.140 INFO    ] 2026-06-13 19:43:55
[2026-06-13 19:43:55,343.343 INFO    ] 2026-06-13 19:43:55
[2026-06-13 19:43:55,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:43:55,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:43:55,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:43:55,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:43:55,745.745 INFO    ] time= 13/06/2026 19:43:55
[2026-06-13 19:43:55,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:43:55,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:43:55,868.868 INFO    ] No existing commands found in stream
[2026-06-13 19:44:00,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:44:00,882.882 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 19:44:03,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:44:03,727.727 INFO    ] Checking for system updates...
[2026-06-13 19:44:03,766.766 INFO    ] 200
[2026-06-13 19:44:03,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:03,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:03,831.831 INFO    ] No update needed
[2026-06-13 19:44:03,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 19:44:03,868.868 INFO    ] 200
[2026-06-13 19:44:03,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:03,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:44:03,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:03,958.958 INFO    ] No camera update needed
[2026-06-13 19:44:03,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:44:03,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:44:03,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:44:03,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:44:06,015.015 INFO    ] ================================================
[2026-06-13 19:44:06,031.031 INFO    ] Launching Daemon at Sat Jun 13 19:44:06 IST 2026
[2026-06-13 19:44:06,043.043 INFO    ] ================================================
[2026-06-13 19:44:06,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:44:06
[2026-06-13 19:44:06,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:44:06,894.894 INFO    ] Initializing speech engine...
[2026-06-13 19:44:06,899.899 INFO    ] 2026-06-13 19:44:06
[2026-06-13 19:44:07,107.107 INFO    ] 2026-06-13 19:44:07
[2026-06-13 19:44:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:44:07,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:44:07,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:44:07,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:44:07,488.488 INFO    ] time= 13/06/2026 19:44:07
[2026-06-13 19:44:07,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:44:07,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:44:07,631.631 INFO    ] No existing commands found in stream
[2026-06-13 19:44:12,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:44:12,661.661 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 19:44:16,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:44:16,885.885 INFO    ] Checking for system updates...
[2026-06-13 19:44:16,907.907 INFO    ] 200
[2026-06-13 19:44:16,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:16,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:44:16,945.945 INFO    ] No update needed
[2026-06-13 19:44:16,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 19:44:16,967.967 INFO    ] 200
[2026-06-13 19:44:16,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:16,996.996 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:44:17,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:44:17,044.044 INFO    ] No camera update needed
[2026-06-13 19:44:17,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:44:17,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:44:17,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:44:17,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:44:19,093.093 INFO    ] ================================================
[2026-06-13 19:44:19,108.108 INFO    ] Launching Daemon at Sat Jun 13 19:44:19 IST 2026
[2026-06-13 19:44:19,119.119 INFO    ] ================================================
[2026-06-13 19:44:19,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:44:19
[2026-06-13 19:44:19,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:44:19,967.967 INFO    ] Initializing speech engine...
[2026-06-13 19:44:19,971.971 INFO    ] 2026-06-13 19:44:19
[2026-06-13 19:44:20,180.180 INFO    ] 2026-06-13 19:44:20
[2026-06-13 19:44:20,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:44:20,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:44:20,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:44:20,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:44:20,596.596 INFO    ] time= 13/06/2026 19:44:20
[2026-06-13 19:44:20,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:44:20,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:44:20,697.697 INFO    ] No existing commands found in stream
[2026-06-13 19:44:25,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:44:25,707.707 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 19:44:27,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:44:27,123.123 INFO    ] Checking for system updates...
[2026-06-13 19:44:27,145.145 INFO    ] 200
[2026-06-13 19:44:27,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:27,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:44:27,181.181 INFO    ] No update needed
[2026-06-13 19:44:27,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 19:44:27,203.203 INFO    ] 200
[2026-06-13 19:44:27,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:27,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:44:27,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:27,380.380 INFO    ] No camera update needed
[2026-06-13 19:44:27,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:44:27,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:44:27,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:44:27,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:44:29,428.428 INFO    ] ================================================
[2026-06-13 19:44:29,444.444 INFO    ] Launching Daemon at Sat Jun 13 19:44:29 IST 2026
[2026-06-13 19:44:29,455.455 INFO    ] ================================================
[2026-06-13 19:44:29,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:44:29
[2026-06-13 19:44:30,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:44:30,262.262 INFO    ] Initializing speech engine...
[2026-06-13 19:44:30,270.270 INFO    ] 2026-06-13 19:44:30
[2026-06-13 19:44:30,483.483 INFO    ] 2026-06-13 19:44:30
[2026-06-13 19:44:30,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:44:30,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:44:30,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:44:30,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:44:30,903.903 INFO    ] time= 13/06/2026 19:44:30
[2026-06-13 19:44:30,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:44:30,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:44:31,082.082 INFO    ] No existing commands found in stream
[2026-06-13 19:44:36,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:44:36,095.095 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 19:44:38,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:44:38,644.644 INFO    ] Checking for system updates...
[2026-06-13 19:44:38,667.667 INFO    ] 200
[2026-06-13 19:44:38,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:38,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:38,701.701 INFO    ] No update needed
[2026-06-13 19:44:38,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 19:44:38,725.725 INFO    ] 200
[2026-06-13 19:44:38,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:38,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:44:38,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:38,790.790 INFO    ] No camera update needed
[2026-06-13 19:44:38,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:44:38,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:44:38,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:44:38,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:44:40,837.837 INFO    ] ================================================
[2026-06-13 19:44:40,852.852 INFO    ] Launching Daemon at Sat Jun 13 19:44:40 IST 2026
[2026-06-13 19:44:40,863.863 INFO    ] ================================================
[2026-06-13 19:44:41,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:44:41
[2026-06-13 19:44:41,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:44:41,728.728 INFO    ] Initializing speech engine...
[2026-06-13 19:44:41,738.738 INFO    ] 2026-06-13 19:44:41
[2026-06-13 19:44:41,943.943 INFO    ] 2026-06-13 19:44:41
[2026-06-13 19:44:41,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:44:42,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:44:42,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:44:42,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:44:42,343.343 INFO    ] time= 13/06/2026 19:44:42
[2026-06-13 19:44:42,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:44:42,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:44:42,462.462 INFO    ] No existing commands found in stream
[2026-06-13 19:44:47,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:44:47,475.475 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 19:44:51,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:44:51,877.877 INFO    ] Checking for system updates...
[2026-06-13 19:44:51,918.918 INFO    ] 200
[2026-06-13 19:44:51,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:51,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:51,968.968 INFO    ] No update needed
[2026-06-13 19:44:51,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 19:44:51,991.991 INFO    ] 200
[2026-06-13 19:44:51,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:44:52,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:44:52,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:44:52,065.065 INFO    ] No camera update needed
[2026-06-13 19:44:52,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:44:52,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:44:52,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:44:52,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:44:54,122.122 INFO    ] ================================================
[2026-06-13 19:44:54,137.137 INFO    ] Launching Daemon at Sat Jun 13 19:44:54 IST 2026
[2026-06-13 19:44:54,148.148 INFO    ] ================================================
[2026-06-13 19:44:54,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:44:54
[2026-06-13 19:44:55,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:44:55,359.359 INFO    ] Initializing speech engine...
[2026-06-13 19:44:55,362.362 INFO    ] 2026-06-13 19:44:55
[2026-06-13 19:44:55,572.572 INFO    ] 2026-06-13 19:44:55
[2026-06-13 19:44:55,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:44:55,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:44:55,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:44:55,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:44:55,908.908 INFO    ] time= 13/06/2026 19:44:55
[2026-06-13 19:44:55,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:44:55,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:44:56,080.080 INFO    ] No existing commands found in stream
[2026-06-13 19:45:01,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:01,092.092 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 19:45:03,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:45:03,411.411 INFO    ] Checking for system updates...
[2026-06-13 19:45:03,433.433 INFO    ] 200
[2026-06-13 19:45:03,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:03,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:03,467.467 INFO    ] No update needed
[2026-06-13 19:45:03,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:03,490.490 INFO    ] 200
[2026-06-13 19:45:03,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:03,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:03,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:03,542.542 INFO    ] No camera update needed
[2026-06-13 19:45:03,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:03,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:03,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:03,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:45:05,595.595 INFO    ] ================================================
[2026-06-13 19:45:05,618.618 INFO    ] Launching Daemon at Sat Jun 13 19:45:05 IST 2026
[2026-06-13 19:45:05,631.631 INFO    ] ================================================
[2026-06-13 19:45:06,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:45:06
[2026-06-13 19:45:06,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:45:06,868.868 INFO    ] Initializing speech engine...
[2026-06-13 19:45:06,873.873 INFO    ] 2026-06-13 19:45:06
[2026-06-13 19:45:07,077.077 INFO    ] 2026-06-13 19:45:07
[2026-06-13 19:45:07,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:45:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:45:07,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:45:07,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:45:07,488.488 INFO    ] time= 13/06/2026 19:45:07
[2026-06-13 19:45:07,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:45:07,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:45:07,593.593 INFO    ] No existing commands found in stream
[2026-06-13 19:45:12,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:12,607.607 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 19:45:15,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:45:15,930.930 INFO    ] Checking for system updates...
[2026-06-13 19:45:15,954.954 INFO    ] 200
[2026-06-13 19:45:15,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:15,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:15,989.989 INFO    ] No update needed
[2026-06-13 19:45:15,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:16,011.011 INFO    ] 200
[2026-06-13 19:45:16,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:16,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:16,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:16,076.076 INFO    ] No camera update needed
[2026-06-13 19:45:16,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:16,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:16,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:16,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:45:18,124.124 INFO    ] ================================================
[2026-06-13 19:45:18,139.139 INFO    ] Launching Daemon at Sat Jun 13 19:45:18 IST 2026
[2026-06-13 19:45:18,150.150 INFO    ] ================================================
[2026-06-13 19:45:18,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:45:18
[2026-06-13 19:45:18,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:45:18,979.979 INFO    ] Initializing speech engine...
[2026-06-13 19:45:18,984.984 INFO    ] 2026-06-13 19:45:18
[2026-06-13 19:45:19,188.188 INFO    ] 2026-06-13 19:45:19
[2026-06-13 19:45:19,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:45:19,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:45:19,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:45:19,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:45:19,588.588 INFO    ] time= 13/06/2026 19:45:19
[2026-06-13 19:45:19,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:45:19,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:45:19,704.704 INFO    ] No existing commands found in stream
[2026-06-13 19:45:24,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:24,716.716 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 19:45:28,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:45:28,753.753 INFO    ] Checking for system updates...
[2026-06-13 19:45:28,780.780 INFO    ] 200
[2026-06-13 19:45:28,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:28,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:28,816.816 INFO    ] No update needed
[2026-06-13 19:45:28,817.817 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:28,840.840 INFO    ] 200
[2026-06-13 19:45:28,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:28,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:28,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:28,906.906 INFO    ] No camera update needed
[2026-06-13 19:45:28,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:28,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:28,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:28,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:45:30,955.955 INFO    ] ================================================
[2026-06-13 19:45:30,970.970 INFO    ] Launching Daemon at Sat Jun 13 19:45:30 IST 2026
[2026-06-13 19:45:30,981.981 INFO    ] ================================================
[2026-06-13 19:45:31,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:45:31
[2026-06-13 19:45:32,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:45:32,339.339 INFO    ] Initializing speech engine...
[2026-06-13 19:45:32,351.351 INFO    ] 2026-06-13 19:45:32
[2026-06-13 19:45:32,630.630 INFO    ] 2026-06-13 19:45:32
[2026-06-13 19:45:32,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:45:32,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:45:32,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:45:33,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:45:33,047.047 INFO    ] time= 13/06/2026 19:45:33
[2026-06-13 19:45:33,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:45:33,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:45:33,248.248 INFO    ] No existing commands found in stream
[2026-06-13 19:45:38,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:38,272.272 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 19:45:38,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:45:38,959.959 INFO    ] Checking for system updates...
[2026-06-13 19:45:38,981.981 INFO    ] 200
[2026-06-13 19:45:38,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:39,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:39,016.016 INFO    ] No update needed
[2026-06-13 19:45:39,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:39,036.036 INFO    ] 200
[2026-06-13 19:45:39,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:39,063.063 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:39,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:39,101.101 INFO    ] No camera update needed
[2026-06-13 19:45:39,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:39,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:39,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:39,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:45:41,149.149 INFO    ] ================================================
[2026-06-13 19:45:41,164.164 INFO    ] Launching Daemon at Sat Jun 13 19:45:41 IST 2026
[2026-06-13 19:45:41,175.175 INFO    ] ================================================
[2026-06-13 19:45:41,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:45:41
[2026-06-13 19:45:41,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:45:42,041.041 INFO    ] Initializing speech engine...
[2026-06-13 19:45:42,047.047 INFO    ] 2026-06-13 19:45:42
[2026-06-13 19:45:42,255.255 INFO    ] 2026-06-13 19:45:42
[2026-06-13 19:45:42,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:45:42,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:45:42,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:45:42,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:45:42,661.661 INFO    ] time= 13/06/2026 19:45:42
[2026-06-13 19:45:42,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:45:42,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:45:42,873.873 INFO    ] No existing commands found in stream
[2026-06-13 19:45:47,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:47,887.887 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 19:45:49,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:45:49,920.920 INFO    ] Checking for system updates...
[2026-06-13 19:45:49,943.943 INFO    ] 200
[2026-06-13 19:45:49,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:49,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:49,981.981 INFO    ] No update needed
[2026-06-13 19:45:49,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:50,003.003 INFO    ] 200
[2026-06-13 19:45:50,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:50,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:50,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:45:50,080.080 INFO    ] No camera update needed
[2026-06-13 19:45:50,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:50,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:50,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:50,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:45:52,129.129 INFO    ] ================================================
[2026-06-13 19:45:52,144.144 INFO    ] Launching Daemon at Sat Jun 13 19:45:52 IST 2026
[2026-06-13 19:45:52,154.154 INFO    ] ================================================
[2026-06-13 19:45:52,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:45:52
[2026-06-13 19:45:52,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:45:52,952.952 INFO    ] Initializing speech engine...
[2026-06-13 19:45:52,955.955 INFO    ] 2026-06-13 19:45:52
[2026-06-13 19:45:53,183.183 INFO    ] 2026-06-13 19:45:53
[2026-06-13 19:45:53,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:45:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:45:53,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:45:53,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:45:53,609.609 INFO    ] time= 13/06/2026 19:45:53
[2026-06-13 19:45:53,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:45:53,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:45:53,737.737 INFO    ] No existing commands found in stream
[2026-06-13 19:45:58,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:45:58,751.751 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 19:45:59,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:45:59,199.199 INFO    ] Checking for system updates...
[2026-06-13 19:45:59,219.219 INFO    ] 200
[2026-06-13 19:45:59,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:59,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:59,255.255 INFO    ] No update needed
[2026-06-13 19:45:59,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 19:45:59,276.276 INFO    ] 200
[2026-06-13 19:45:59,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:45:59,302.302 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:45:59,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:45:59,340.340 INFO    ] No camera update needed
[2026-06-13 19:45:59,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:45:59,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:45:59,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:45:59,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:46:01,388.388 INFO    ] ================================================
[2026-06-13 19:46:01,403.403 INFO    ] Launching Daemon at Sat Jun 13 19:46:01 IST 2026
[2026-06-13 19:46:01,414.414 INFO    ] ================================================
[2026-06-13 19:46:01,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:46:01
[2026-06-13 19:46:02,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:46:02,367.367 INFO    ] Initializing speech engine...
[2026-06-13 19:46:02,372.372 INFO    ] 2026-06-13 19:46:02
[2026-06-13 19:46:02,611.611 INFO    ] 2026-06-13 19:46:02
[2026-06-13 19:46:02,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:46:02,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:46:02,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:46:02,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:46:02,922.922 INFO    ] time= 13/06/2026 19:46:02
[2026-06-13 19:46:02,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:46:02,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:46:03,006.006 INFO    ] No existing commands found in stream
[2026-06-13 19:46:08,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:46:08,033.033 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-13 19:46:12,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:46:12,365.365 INFO    ] Checking for system updates...
[2026-06-13 19:46:12,387.387 INFO    ] 200
[2026-06-13 19:46:12,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:12,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:12,420.420 INFO    ] No update needed
[2026-06-13 19:46:12,422.422 INFO    ] Checking for camera pi updates...
[2026-06-13 19:46:12,442.442 INFO    ] 200
[2026-06-13 19:46:12,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:12,470.470 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:46:12,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:12,516.516 INFO    ] No camera update needed
[2026-06-13 19:46:12,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:46:12,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:46:12,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:46:12,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:46:14,564.564 INFO    ] ================================================
[2026-06-13 19:46:14,580.580 INFO    ] Launching Daemon at Sat Jun 13 19:46:14 IST 2026
[2026-06-13 19:46:14,591.591 INFO    ] ================================================
[2026-06-13 19:46:14,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:46:14
[2026-06-13 19:46:15,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:46:15,462.462 INFO    ] Initializing speech engine...
[2026-06-13 19:46:15,468.468 INFO    ] 2026-06-13 19:46:15
[2026-06-13 19:46:15,677.677 INFO    ] 2026-06-13 19:46:15
[2026-06-13 19:46:15,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:46:15,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:46:15,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:46:16,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:46:16,096.096 INFO    ] time= 13/06/2026 19:46:16
[2026-06-13 19:46:16,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:46:16,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:46:16,195.195 INFO    ] No existing commands found in stream
[2026-06-13 19:46:21,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:46:21,208.208 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 19:46:22,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:46:22,685.685 INFO    ] Checking for system updates...
[2026-06-13 19:46:22,706.706 INFO    ] 200
[2026-06-13 19:46:22,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:22,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:22,742.742 INFO    ] No update needed
[2026-06-13 19:46:22,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 19:46:22,765.765 INFO    ] 200
[2026-06-13 19:46:22,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:22,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:46:22,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:22,836.836 INFO    ] No camera update needed
[2026-06-13 19:46:22,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:46:22,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:46:22,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:46:22,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:46:24,884.884 INFO    ] ================================================
[2026-06-13 19:46:24,899.899 INFO    ] Launching Daemon at Sat Jun 13 19:46:24 IST 2026
[2026-06-13 19:46:24,910.910 INFO    ] ================================================
[2026-06-13 19:46:25,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:46:25
[2026-06-13 19:46:25,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:46:25,711.711 INFO    ] Initializing speech engine...
[2026-06-13 19:46:25,722.722 INFO    ] 2026-06-13 19:46:25
[2026-06-13 19:46:25,925.925 INFO    ] 2026-06-13 19:46:25
[2026-06-13 19:46:25,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:46:26,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:46:26,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:46:26,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:46:26,327.327 INFO    ] time= 13/06/2026 19:46:26
[2026-06-13 19:46:26,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:46:26,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:46:26,443.443 INFO    ] No existing commands found in stream
[2026-06-13 19:46:31,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:46:31,455.455 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 19:46:43,081.081 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:46:43,109.109 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:46:43,119.119 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:46:43,139.139 INFO    ] None
[2026-06-13 19:46:43,142.142 INFO    ] Checking for system updates...
[2026-06-13 19:46:43,187.187 INFO    ] 200
[2026-06-13 19:46:43,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:43,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:43,246.246 INFO    ] No update needed
[2026-06-13 19:46:43,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 19:46:43,283.283 INFO    ] 200
[2026-06-13 19:46:43,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:46:43,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:46:43,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:46:43,377.377 INFO    ] No camera update needed
[2026-06-13 19:46:43,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:46:43,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:46:43,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:46:43,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:46:45,435.435 INFO    ] ================================================
[2026-06-13 19:46:45,451.451 INFO    ] Launching Daemon at Sat Jun 13 19:46:45 IST 2026
[2026-06-13 19:46:45,463.463 INFO    ] ================================================
[2026-06-13 19:46:45,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:46:45
[2026-06-13 19:46:46,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:46:46,250.250 INFO    ] Initializing speech engine...
[2026-06-13 19:46:46,254.254 INFO    ] 2026-06-13 19:46:46
[2026-06-13 19:46:46,459.459 INFO    ] 2026-06-13 19:46:46
[2026-06-13 19:46:46,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:46:46,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:46:46,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:46:46,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:46:46,870.870 INFO    ] time= 13/06/2026 19:46:46
[2026-06-13 19:46:46,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:46:46,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:46:46,976.976 INFO    ] No existing commands found in stream
[2026-06-13 19:46:51,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:46:51,989.989 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 19:47:04,869.869 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:47:04,897.897 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:47:04,907.907 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:47:04,924.924 INFO    ] None
[2026-06-13 19:47:04,925.925 INFO    ] Checking for system updates...
[2026-06-13 19:47:04,948.948 INFO    ] 200
[2026-06-13 19:47:04,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:04,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:04,984.984 INFO    ] No update needed
[2026-06-13 19:47:04,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 19:47:05,005.005 INFO    ] 200
[2026-06-13 19:47:05,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:05,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:47:05,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:05,081.081 INFO    ] No camera update needed
[2026-06-13 19:47:05,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:47:05,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:47:05,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:47:05,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:47:07,137.137 INFO    ] ================================================
[2026-06-13 19:47:07,154.154 INFO    ] Launching Daemon at Sat Jun 13 19:47:07 IST 2026
[2026-06-13 19:47:07,166.166 INFO    ] ================================================
[2026-06-13 19:47:07,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:47:07
[2026-06-13 19:47:07,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:47:07,986.986 INFO    ] Initializing speech engine...
[2026-06-13 19:47:07,991.991 INFO    ] 2026-06-13 19:47:07
[2026-06-13 19:47:08,195.195 INFO    ] 2026-06-13 19:47:08
[2026-06-13 19:47:08,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:47:08,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:47:08,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:47:08,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:47:08,596.596 INFO    ] time= 13/06/2026 19:47:08
[2026-06-13 19:47:08,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:47:08,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:47:08,710.710 INFO    ] No existing commands found in stream
[2026-06-13 19:47:13,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:47:13,724.724 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 19:47:24,277.277 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:47:24,306.306 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:47:24,316.316 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:47:24,336.336 INFO    ] None
[2026-06-13 19:47:24,339.339 INFO    ] Checking for system updates...
[2026-06-13 19:47:24,378.378 INFO    ] 200
[2026-06-13 19:47:24,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:24,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:24,411.411 INFO    ] No update needed
[2026-06-13 19:47:24,412.412 INFO    ] Checking for camera pi updates...
[2026-06-13 19:47:24,433.433 INFO    ] 200
[2026-06-13 19:47:24,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:24,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:47:24,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:24,486.486 INFO    ] No camera update needed
[2026-06-13 19:47:24,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:47:24,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:47:24,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:47:24,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:47:26,538.538 INFO    ] ================================================
[2026-06-13 19:47:26,554.554 INFO    ] Launching Daemon at Sat Jun 13 19:47:26 IST 2026
[2026-06-13 19:47:26,565.565 INFO    ] ================================================
[2026-06-13 19:47:26,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:47:26
[2026-06-13 19:47:27,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:47:27,359.359 INFO    ] Initializing speech engine...
[2026-06-13 19:47:27,372.372 INFO    ] 2026-06-13 19:47:27
[2026-06-13 19:47:27,593.593 INFO    ] 2026-06-13 19:47:27
[2026-06-13 19:47:27,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:47:27,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:47:27,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:47:27,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:47:28,006.006 INFO    ] time= 13/06/2026 19:47:27
[2026-06-13 19:47:28,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:47:28,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:47:28,155.155 INFO    ] No existing commands found in stream
[2026-06-13 19:47:33,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:47:33,166.166 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-13 19:47:43,519.519 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:47:43,547.547 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:47:43,556.556 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:47:43,576.576 INFO    ] None
[2026-06-13 19:47:43,579.579 INFO    ] Checking for system updates...
[2026-06-13 19:47:43,620.620 INFO    ] 200
[2026-06-13 19:47:43,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:43,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:43,656.656 INFO    ] No update needed
[2026-06-13 19:47:43,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 19:47:43,677.677 INFO    ] 200
[2026-06-13 19:47:43,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:47:43,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:47:43,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:47:43,747.747 INFO    ] No camera update needed
[2026-06-13 19:47:43,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:47:43,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:47:43,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:47:43,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:47:45,795.795 INFO    ] ================================================
[2026-06-13 19:47:45,810.810 INFO    ] Launching Daemon at Sat Jun 13 19:47:45 IST 2026
[2026-06-13 19:47:45,821.821 INFO    ] ================================================
[2026-06-13 19:47:46,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:47:46
[2026-06-13 19:47:47,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:47:47,332.332 INFO    ] Initializing speech engine...
[2026-06-13 19:47:47,342.342 INFO    ] 2026-06-13 19:47:47
[2026-06-13 19:47:47,625.625 INFO    ] 2026-06-13 19:47:47
[2026-06-13 19:47:47,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:47:47,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:47:47,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:47:48,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:47:48,100.100 INFO    ] time= 13/06/2026 19:47:48
[2026-06-13 19:47:48,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:47:48,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:47:48,304.304 INFO    ] No existing commands found in stream
[2026-06-13 19:47:53,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:47:53,338.338 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 19:48:06,851.851 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:48:06,883.883 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:48:06,894.894 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:48:06,916.916 INFO    ] None
[2026-06-13 19:48:06,919.919 INFO    ] Checking for system updates...
[2026-06-13 19:48:06,962.962 INFO    ] 200
[2026-06-13 19:48:06,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:06,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:06,995.995 INFO    ] No update needed
[2026-06-13 19:48:06,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 19:48:07,017.017 INFO    ] 200
[2026-06-13 19:48:07,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:07,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:48:07,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:07,082.082 INFO    ] No camera update needed
[2026-06-13 19:48:07,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:48:07,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:48:07,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:48:07,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:48:09,132.132 INFO    ] ================================================
[2026-06-13 19:48:09,147.147 INFO    ] Launching Daemon at Sat Jun 13 19:48:09 IST 2026
[2026-06-13 19:48:09,158.158 INFO    ] ================================================
[2026-06-13 19:48:09,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:48:09
[2026-06-13 19:48:09,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:48:09,941.941 INFO    ] Initializing speech engine...
[2026-06-13 19:48:09,951.951 INFO    ] 2026-06-13 19:48:09
[2026-06-13 19:48:10,156.156 INFO    ] 2026-06-13 19:48:10
[2026-06-13 19:48:10,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:48:10,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:48:10,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:48:10,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:48:10,575.575 INFO    ] time= 13/06/2026 19:48:10
[2026-06-13 19:48:10,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:48:10,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:48:10,673.673 INFO    ] No existing commands found in stream
[2026-06-13 19:48:15,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:48:15,684.684 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 19:48:27,075.075 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 19:48:27,103.103 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 19:48:27,112.112 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 19:48:27,131.131 INFO    ] None
[2026-06-13 19:48:27,134.134 INFO    ] Checking for system updates...
[2026-06-13 19:48:27,159.159 INFO    ] 200
[2026-06-13 19:48:27,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:27,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:27,195.195 INFO    ] No update needed
[2026-06-13 19:48:27,196.196 INFO    ] Checking for camera pi updates...
[2026-06-13 19:48:27,217.217 INFO    ] 200
[2026-06-13 19:48:27,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:27,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:48:27,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:27,307.307 INFO    ] No camera update needed
[2026-06-13 19:48:27,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:48:27,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:48:27,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:48:27,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:48:29,355.355 INFO    ] ================================================
[2026-06-13 19:48:29,370.370 INFO    ] Launching Daemon at Sat Jun 13 19:48:29 IST 2026
[2026-06-13 19:48:29,381.381 INFO    ] ================================================
[2026-06-13 19:48:29,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:48:29
[2026-06-13 19:48:30,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:48:30,220.220 INFO    ] Initializing speech engine...
[2026-06-13 19:48:30,224.224 INFO    ] 2026-06-13 19:48:30
[2026-06-13 19:48:30,430.430 INFO    ] 2026-06-13 19:48:30
[2026-06-13 19:48:30,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:48:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:48:30,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:48:30,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:48:30,855.855 INFO    ] time= 13/06/2026 19:48:30
[2026-06-13 19:48:30,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:48:30,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:48:30,972.972 INFO    ] No existing commands found in stream
[2026-06-13 19:48:35,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:48:35,987.987 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 19:48:47,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:48:47,521.521 INFO    ] Checking for system updates...
[2026-06-13 19:48:47,556.556 INFO    ] 200
[2026-06-13 19:48:47,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:47,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:47,623.623 INFO    ] No update needed
[2026-06-13 19:48:47,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 19:48:47,660.660 INFO    ] 200
[2026-06-13 19:48:47,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:47,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:48:47,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:48:47,857.857 INFO    ] No camera update needed
[2026-06-13 19:48:47,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:48:47,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:48:47,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:48:47,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:48:49,903.903 INFO    ] ================================================
[2026-06-13 19:48:49,918.918 INFO    ] Launching Daemon at Sat Jun 13 19:48:49 IST 2026
[2026-06-13 19:48:49,929.929 INFO    ] ================================================
[2026-06-13 19:48:50,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:48:50
[2026-06-13 19:48:50,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:48:50,729.729 INFO    ] Initializing speech engine...
[2026-06-13 19:48:50,735.735 INFO    ] 2026-06-13 19:48:50
[2026-06-13 19:48:50,940.940 INFO    ] 2026-06-13 19:48:50
[2026-06-13 19:48:50,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:48:51,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:48:51,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:48:51,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:48:51,342.342 INFO    ] time= 13/06/2026 19:48:51
[2026-06-13 19:48:51,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:48:51,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:48:51,456.456 INFO    ] No existing commands found in stream
[2026-06-13 19:48:56,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:48:56,471.471 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 19:48:58,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:48:58,619.619 INFO    ] Checking for system updates...
[2026-06-13 19:48:58,640.640 INFO    ] 200
[2026-06-13 19:48:58,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:58,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:48:58,675.675 INFO    ] No update needed
[2026-06-13 19:48:58,676.676 INFO    ] Checking for camera pi updates...
[2026-06-13 19:48:58,695.695 INFO    ] 200
[2026-06-13 19:48:58,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:48:58,720.720 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:48:58,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:48:58,771.771 INFO    ] No camera update needed
[2026-06-13 19:48:58,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:48:58,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:48:58,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:48:58,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:00,817.817 INFO    ] ================================================
[2026-06-13 19:49:00,832.832 INFO    ] Launching Daemon at Sat Jun 13 19:49:00 IST 2026
[2026-06-13 19:49:00,843.843 INFO    ] ================================================
[2026-06-13 19:49:01,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:01
[2026-06-13 19:49:01,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:01,797.797 INFO    ] Initializing speech engine...
[2026-06-13 19:49:01,804.804 INFO    ] 2026-06-13 19:49:01
[2026-06-13 19:49:02,038.038 INFO    ] 2026-06-13 19:49:02
[2026-06-13 19:49:02,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:02,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:02,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:02,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:02,516.516 INFO    ] time= 13/06/2026 19:49:02
[2026-06-13 19:49:02,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:02,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:02,626.626 INFO    ] No existing commands found in stream
[2026-06-13 19:49:07,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:49:07,640.640 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 19:49:10,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:49:10,196.196 INFO    ] Checking for system updates...
[2026-06-13 19:49:10,220.220 INFO    ] 200
[2026-06-13 19:49:10,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:10,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:10,258.258 INFO    ] No update needed
[2026-06-13 19:49:10,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 19:49:10,286.286 INFO    ] 200
[2026-06-13 19:49:10,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:10,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:49:10,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:10,360.360 INFO    ] No camera update needed
[2026-06-13 19:49:10,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:49:10,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:49:10,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:49:10,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:12,422.422 INFO    ] ================================================
[2026-06-13 19:49:12,438.438 INFO    ] Launching Daemon at Sat Jun 13 19:49:12 IST 2026
[2026-06-13 19:49:12,450.450 INFO    ] ================================================
[2026-06-13 19:49:13,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:13
[2026-06-13 19:49:13,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:13,729.729 INFO    ] Initializing speech engine...
[2026-06-13 19:49:13,738.738 INFO    ] 2026-06-13 19:49:13
[2026-06-13 19:49:13,964.964 INFO    ] 2026-06-13 19:49:13
[2026-06-13 19:49:13,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:14,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:14,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:14,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:14,397.397 INFO    ] time= 13/06/2026 19:49:14
[2026-06-13 19:49:14,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:14,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:14,524.524 INFO    ] No existing commands found in stream
[2026-06-13 19:49:19,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:49:19,538.538 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 19:49:19,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:49:19,850.850 INFO    ] Checking for system updates...
[2026-06-13 19:49:19,872.872 INFO    ] 200
[2026-06-13 19:49:19,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:19,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:19,905.905 INFO    ] No update needed
[2026-06-13 19:49:19,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 19:49:19,926.926 INFO    ] 200
[2026-06-13 19:49:19,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:19,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:49:19,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:19,976.976 INFO    ] No camera update needed
[2026-06-13 19:49:19,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:49:19,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:49:19,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:49:19,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:22,024.024 INFO    ] ================================================
[2026-06-13 19:49:22,039.039 INFO    ] Launching Daemon at Sat Jun 13 19:49:22 IST 2026
[2026-06-13 19:49:22,051.051 INFO    ] ================================================
[2026-06-13 19:49:22,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:22
[2026-06-13 19:49:22,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:22,915.915 INFO    ] Initializing speech engine...
[2026-06-13 19:49:22,921.921 INFO    ] 2026-06-13 19:49:22
[2026-06-13 19:49:23,129.129 INFO    ] 2026-06-13 19:49:23
[2026-06-13 19:49:23,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:23,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:23,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:23,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:23,534.534 INFO    ] time= 13/06/2026 19:49:23
[2026-06-13 19:49:23,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:23,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:23,645.645 INFO    ] No existing commands found in stream
[2026-06-13 19:49:28,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:49:28,663.663 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 19:49:32,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:49:32,184.184 INFO    ] Checking for system updates...
[2026-06-13 19:49:32,205.205 INFO    ] 200
[2026-06-13 19:49:32,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:32,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:49:32,244.244 INFO    ] No update needed
[2026-06-13 19:49:32,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 19:49:32,285.285 INFO    ] 200
[2026-06-13 19:49:32,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:32,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:49:32,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:49:32,360.360 INFO    ] No camera update needed
[2026-06-13 19:49:32,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:49:32,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:49:32,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:49:32,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:34,415.415 INFO    ] ================================================
[2026-06-13 19:49:34,431.431 INFO    ] Launching Daemon at Sat Jun 13 19:49:34 IST 2026
[2026-06-13 19:49:34,442.442 INFO    ] ================================================
[2026-06-13 19:49:34,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:34
[2026-06-13 19:49:35,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:35,218.218 INFO    ] Initializing speech engine...
[2026-06-13 19:49:35,231.231 INFO    ] 2026-06-13 19:49:35
[2026-06-13 19:49:35,438.438 INFO    ] 2026-06-13 19:49:35
[2026-06-13 19:49:35,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:35,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:35,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:35,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:35,848.848 INFO    ] time= 13/06/2026 19:49:35
[2026-06-13 19:49:35,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:35,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:35,959.959 INFO    ] No existing commands found in stream
[2026-06-13 19:49:40,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:49:40,973.973 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 19:49:41,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:49:41,871.871 INFO    ] Checking for system updates...
[2026-06-13 19:49:41,891.891 INFO    ] 200
[2026-06-13 19:49:41,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:41,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:41,930.930 INFO    ] No update needed
[2026-06-13 19:49:41,931.931 INFO    ] Checking for camera pi updates...
[2026-06-13 19:49:41,950.950 INFO    ] 200
[2026-06-13 19:49:41,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:41,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:49:42,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:49:42,026.026 INFO    ] No camera update needed
[2026-06-13 19:49:42,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:49:42,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:49:42,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:49:42,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:44,075.075 INFO    ] ================================================
[2026-06-13 19:49:44,092.092 INFO    ] Launching Daemon at Sat Jun 13 19:49:44 IST 2026
[2026-06-13 19:49:44,102.102 INFO    ] ================================================
[2026-06-13 19:49:44,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:44
[2026-06-13 19:49:45,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:45,331.331 INFO    ] Initializing speech engine...
[2026-06-13 19:49:45,342.342 INFO    ] 2026-06-13 19:49:45
[2026-06-13 19:49:45,610.610 INFO    ] 2026-06-13 19:49:45
[2026-06-13 19:49:45,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:45,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:45,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:45,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:45,990.990 INFO    ] time= 13/06/2026 19:49:45
[2026-06-13 19:49:46,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:46,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:46,121.121 INFO    ] No existing commands found in stream
[2026-06-13 19:49:51,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:49:51,137.137 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 19:49:54,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:49:54,377.377 INFO    ] Checking for system updates...
[2026-06-13 19:49:54,399.399 INFO    ] 200
[2026-06-13 19:49:54,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:54,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:49:54,433.433 INFO    ] No update needed
[2026-06-13 19:49:54,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 19:49:54,454.454 INFO    ] 200
[2026-06-13 19:49:54,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:49:54,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:49:54,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:49:54,517.517 INFO    ] No camera update needed
[2026-06-13 19:49:54,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:49:54,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:49:54,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:49:54,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:49:56,566.566 INFO    ] ================================================
[2026-06-13 19:49:56,582.582 INFO    ] Launching Daemon at Sat Jun 13 19:49:56 IST 2026
[2026-06-13 19:49:56,592.592 INFO    ] ================================================
[2026-06-13 19:49:56,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:49:56
[2026-06-13 19:49:57,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:49:57,406.406 INFO    ] Initializing speech engine...
[2026-06-13 19:49:57,410.410 INFO    ] 2026-06-13 19:49:57
[2026-06-13 19:49:57,643.643 INFO    ] 2026-06-13 19:49:57
[2026-06-13 19:49:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:49:57,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:49:57,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:49:58,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:49:58,045.045 INFO    ] time= 13/06/2026 19:49:58
[2026-06-13 19:49:58,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:49:58,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:49:58,205.205 INFO    ] No existing commands found in stream
[2026-06-13 19:50:03,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:50:03,216.216 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 19:50:05,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:50:05,445.445 INFO    ] Checking for system updates...
[2026-06-13 19:50:05,466.466 INFO    ] 200
[2026-06-13 19:50:05,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:05,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:50:05,502.502 INFO    ] No update needed
[2026-06-13 19:50:05,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 19:50:05,522.522 INFO    ] 200
[2026-06-13 19:50:05,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:05,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:50:05,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:05,596.596 INFO    ] No camera update needed
[2026-06-13 19:50:05,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:50:05,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:50:05,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:50:05,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:50:07,645.645 INFO    ] ================================================
[2026-06-13 19:50:07,662.662 INFO    ] Launching Daemon at Sat Jun 13 19:50:07 IST 2026
[2026-06-13 19:50:07,673.673 INFO    ] ================================================
[2026-06-13 19:50:08,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:50:08
[2026-06-13 19:50:08,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:50:08,500.500 INFO    ] Initializing speech engine...
[2026-06-13 19:50:08,513.513 INFO    ] 2026-06-13 19:50:08
[2026-06-13 19:50:08,734.734 INFO    ] 2026-06-13 19:50:08
[2026-06-13 19:50:08,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:50:08,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:50:08,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:50:08,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:50:08,985.985 INFO    ] time= 13/06/2026 19:50:08
[2026-06-13 19:50:09,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:50:09,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:50:09,072.072 INFO    ] No existing commands found in stream
[2026-06-13 19:50:14,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:50:14,107.107 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 19:50:17,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:50:17,655.655 INFO    ] Checking for system updates...
[2026-06-13 19:50:17,676.676 INFO    ] 200
[2026-06-13 19:50:17,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:17,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:50:17,710.710 INFO    ] No update needed
[2026-06-13 19:50:17,712.712 INFO    ] Checking for camera pi updates...
[2026-06-13 19:50:17,731.731 INFO    ] 200
[2026-06-13 19:50:17,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:17,756.756 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:50:17,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:50:17,794.794 INFO    ] No camera update needed
[2026-06-13 19:50:17,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:50:17,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:50:17,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:50:17,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:50:19,843.843 INFO    ] ================================================
[2026-06-13 19:50:19,858.858 INFO    ] Launching Daemon at Sat Jun 13 19:50:19 IST 2026
[2026-06-13 19:50:19,869.869 INFO    ] ================================================
[2026-06-13 19:50:20,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:50:20
[2026-06-13 19:50:20,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:50:20,647.647 INFO    ] Initializing speech engine...
[2026-06-13 19:50:20,658.658 INFO    ] 2026-06-13 19:50:20
[2026-06-13 19:50:20,861.861 INFO    ] 2026-06-13 19:50:20
[2026-06-13 19:50:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:50:21,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:50:21,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:50:21,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:50:21,264.264 INFO    ] time= 13/06/2026 19:50:21
[2026-06-13 19:50:21,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:50:21,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:50:21,375.375 INFO    ] No existing commands found in stream
[2026-06-13 19:50:26,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:50:26,386.386 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 19:50:30,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:50:30,265.265 INFO    ] Checking for system updates...
[2026-06-13 19:50:30,287.287 INFO    ] 200
[2026-06-13 19:50:30,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:30,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:30,321.321 INFO    ] No update needed
[2026-06-13 19:50:30,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 19:50:30,342.342 INFO    ] 200
[2026-06-13 19:50:30,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:30,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:50:30,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:30,406.406 INFO    ] No camera update needed
[2026-06-13 19:50:30,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:50:30,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:50:30,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:50:30,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:50:32,454.454 INFO    ] ================================================
[2026-06-13 19:50:32,469.469 INFO    ] Launching Daemon at Sat Jun 13 19:50:32 IST 2026
[2026-06-13 19:50:32,480.480 INFO    ] ================================================
[2026-06-13 19:50:32,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:50:32
[2026-06-13 19:50:33,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:50:33,251.251 INFO    ] Initializing speech engine...
[2026-06-13 19:50:33,259.259 INFO    ] 2026-06-13 19:50:33
[2026-06-13 19:50:33,472.472 INFO    ] 2026-06-13 19:50:33
[2026-06-13 19:50:33,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:50:33,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:50:33,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:50:33,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:50:33,888.888 INFO    ] time= 13/06/2026 19:50:33
[2026-06-13 19:50:33,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:50:33,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:50:33,998.998 INFO    ] No existing commands found in stream
[2026-06-13 19:50:39,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:50:39,010.010 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 19:50:40,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:50:40,623.623 INFO    ] Checking for system updates...
[2026-06-13 19:50:40,645.645 INFO    ] 200
[2026-06-13 19:50:40,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:40,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:40,678.678 INFO    ] No update needed
[2026-06-13 19:50:40,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 19:50:40,702.702 INFO    ] 200
[2026-06-13 19:50:40,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:40,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:50:40,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:50:40,764.764 INFO    ] No camera update needed
[2026-06-13 19:50:40,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:50:40,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:50:40,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:50:40,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:50:42,804.804 INFO    ] ================================================
[2026-06-13 19:50:42,812.812 INFO    ] Launching Daemon at Sat Jun 13 19:50:42 IST 2026
[2026-06-13 19:50:42,818.818 INFO    ] ================================================
[2026-06-13 19:50:43,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:50:43
[2026-06-13 19:50:43,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:50:43,583.583 INFO    ] Initializing speech engine...
[2026-06-13 19:50:43,587.587 INFO    ] 2026-06-13 19:50:43
[2026-06-13 19:50:43,792.792 INFO    ] 2026-06-13 19:50:43
[2026-06-13 19:50:43,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:50:43,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:50:43,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:50:44,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:50:44,161.161 INFO    ] time= 13/06/2026 19:50:44
[2026-06-13 19:50:44,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:50:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:50:44,306.306 INFO    ] No existing commands found in stream
[2026-06-13 19:50:49,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:50:49,319.319 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 19:50:53,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:50:53,242.242 INFO    ] Checking for system updates...
[2026-06-13 19:50:53,265.265 INFO    ] 200
[2026-06-13 19:50:53,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:53,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:53,300.300 INFO    ] No update needed
[2026-06-13 19:50:53,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 19:50:53,333.333 INFO    ] 200
[2026-06-13 19:50:53,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:50:53,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:50:53,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:50:53,511.511 INFO    ] No camera update needed
[2026-06-13 19:50:53,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:50:53,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:50:53,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:50:53,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:50:55,567.567 INFO    ] ================================================
[2026-06-13 19:50:55,582.582 INFO    ] Launching Daemon at Sat Jun 13 19:50:55 IST 2026
[2026-06-13 19:50:55,593.593 INFO    ] ================================================
[2026-06-13 19:50:55,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:50:55
[2026-06-13 19:50:56,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:50:56,452.452 INFO    ] Initializing speech engine...
[2026-06-13 19:50:56,458.458 INFO    ] 2026-06-13 19:50:56
[2026-06-13 19:50:56,665.665 INFO    ] 2026-06-13 19:50:56
[2026-06-13 19:50:56,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:50:56,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:50:56,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:50:57,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:50:57,084.084 INFO    ] time= 13/06/2026 19:50:57
[2026-06-13 19:50:57,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:50:57,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:50:57,190.190 INFO    ] No existing commands found in stream
[2026-06-13 19:51:02,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:02,201.201 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 19:51:06,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:51:06,181.181 INFO    ] Checking for system updates...
[2026-06-13 19:51:06,203.203 INFO    ] 200
[2026-06-13 19:51:06,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:06,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:51:06,247.247 INFO    ] No update needed
[2026-06-13 19:51:06,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 19:51:06,277.277 INFO    ] 200
[2026-06-13 19:51:06,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:06,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:51:06,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:51:06,347.347 INFO    ] No camera update needed
[2026-06-13 19:51:06,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:51:06,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:51:06,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:51:06,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:51:08,398.398 INFO    ] ================================================
[2026-06-13 19:51:08,414.414 INFO    ] Launching Daemon at Sat Jun 13 19:51:08 IST 2026
[2026-06-13 19:51:08,425.425 INFO    ] ================================================
[2026-06-13 19:51:08,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:51:08
[2026-06-13 19:51:09,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:51:09,209.209 INFO    ] Initializing speech engine...
[2026-06-13 19:51:09,219.219 INFO    ] 2026-06-13 19:51:09
[2026-06-13 19:51:09,425.425 INFO    ] 2026-06-13 19:51:09
[2026-06-13 19:51:09,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:51:09,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:51:09,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:51:09,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:51:09,842.842 INFO    ] time= 13/06/2026 19:51:09
[2026-06-13 19:51:09,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:51:09,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:51:09,939.939 INFO    ] No existing commands found in stream
[2026-06-13 19:51:14,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:14,951.951 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 19:51:16,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:51:16,737.737 INFO    ] Checking for system updates...
[2026-06-13 19:51:16,758.758 INFO    ] 200
[2026-06-13 19:51:16,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:16,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:51:16,792.792 INFO    ] No update needed
[2026-06-13 19:51:16,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 19:51:16,816.816 INFO    ] 200
[2026-06-13 19:51:16,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:16,841.841 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:51:16,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:51:16,883.883 INFO    ] No camera update needed
[2026-06-13 19:51:16,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:51:16,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:51:16,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:51:16,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:51:18,931.931 INFO    ] ================================================
[2026-06-13 19:51:18,946.946 INFO    ] Launching Daemon at Sat Jun 13 19:51:18 IST 2026
[2026-06-13 19:51:18,958.958 INFO    ] ================================================
[2026-06-13 19:51:19,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:51:19
[2026-06-13 19:51:20,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:51:20,331.331 INFO    ] Initializing speech engine...
[2026-06-13 19:51:20,339.339 INFO    ] 2026-06-13 19:51:20
[2026-06-13 19:51:20,655.655 INFO    ] 2026-06-13 19:51:20
[2026-06-13 19:51:20,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:51:20,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:51:20,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:51:21,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:51:21,163.163 INFO    ] time= 13/06/2026 19:51:21
[2026-06-13 19:51:21,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:51:21,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:51:21,316.316 INFO    ] No existing commands found in stream
[2026-06-13 19:51:26,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:26,335.335 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 19:51:29,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:51:29,416.416 INFO    ] Checking for system updates...
[2026-06-13 19:51:29,438.438 INFO    ] 200
[2026-06-13 19:51:29,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:29,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:51:29,471.471 INFO    ] No update needed
[2026-06-13 19:51:29,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 19:51:29,492.492 INFO    ] 200
[2026-06-13 19:51:29,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:29,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:51:29,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:51:29,541.541 INFO    ] No camera update needed
[2026-06-13 19:51:29,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:51:29,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:51:29,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:51:29,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:51:31,589.589 INFO    ] ================================================
[2026-06-13 19:51:31,604.604 INFO    ] Launching Daemon at Sat Jun 13 19:51:31 IST 2026
[2026-06-13 19:51:31,615.615 INFO    ] ================================================
[2026-06-13 19:51:31,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:51:31
[2026-06-13 19:51:32,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:51:32,470.470 INFO    ] Initializing speech engine...
[2026-06-13 19:51:32,478.478 INFO    ] 2026-06-13 19:51:32
[2026-06-13 19:51:32,677.677 INFO    ] 2026-06-13 19:51:32
[2026-06-13 19:51:32,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:51:32,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:51:32,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:51:33,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:51:33,067.067 INFO    ] time= 13/06/2026 19:51:33
[2026-06-13 19:51:33,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:51:33,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:51:33,238.238 INFO    ] No existing commands found in stream
[2026-06-13 19:51:38,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:38,265.265 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 19:51:39,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:51:39,030.030 INFO    ] Checking for system updates...
[2026-06-13 19:51:39,054.054 INFO    ] 200
[2026-06-13 19:51:39,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:39,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:51:39,089.089 INFO    ] No update needed
[2026-06-13 19:51:39,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 19:51:39,110.110 INFO    ] 200
[2026-06-13 19:51:39,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:39,134.134 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:51:39,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:51:39,172.172 INFO    ] No camera update needed
[2026-06-13 19:51:39,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:51:39,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:51:39,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:51:39,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:51:41,221.221 INFO    ] ================================================
[2026-06-13 19:51:41,237.237 INFO    ] Launching Daemon at Sat Jun 13 19:51:41 IST 2026
[2026-06-13 19:51:41,248.248 INFO    ] ================================================
[2026-06-13 19:51:41,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:51:41
[2026-06-13 19:51:42,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:51:42,509.509 INFO    ] Initializing speech engine...
[2026-06-13 19:51:42,522.522 INFO    ] 2026-06-13 19:51:42
[2026-06-13 19:51:42,794.794 INFO    ] 2026-06-13 19:51:42
[2026-06-13 19:51:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:51:42,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:51:43,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:51:43,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:51:43,133.133 INFO    ] time= 13/06/2026 19:51:43
[2026-06-13 19:51:43,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:51:43,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:51:43,270.270 INFO    ] No existing commands found in stream
[2026-06-13 19:51:48,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:48,285.285 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-13 19:51:50,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:51:50,736.736 INFO    ] Checking for system updates...
[2026-06-13 19:51:50,759.759 INFO    ] 200
[2026-06-13 19:51:50,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:50,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:51:50,792.792 INFO    ] No update needed
[2026-06-13 19:51:50,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 19:51:50,815.815 INFO    ] 200
[2026-06-13 19:51:50,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:51:50,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:51:50,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:51:50,885.885 INFO    ] No camera update needed
[2026-06-13 19:51:50,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:51:50,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:51:50,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:51:50,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:51:52,933.933 INFO    ] ================================================
[2026-06-13 19:51:52,949.949 INFO    ] Launching Daemon at Sat Jun 13 19:51:52 IST 2026
[2026-06-13 19:51:52,960.960 INFO    ] ================================================
[2026-06-13 19:51:53,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:51:53
[2026-06-13 19:51:53,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:51:53,756.756 INFO    ] Initializing speech engine...
[2026-06-13 19:51:53,768.768 INFO    ] 2026-06-13 19:51:53
[2026-06-13 19:51:53,974.974 INFO    ] 2026-06-13 19:51:53
[2026-06-13 19:51:54,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:51:54,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:51:54,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:51:54,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:51:54,383.383 INFO    ] time= 13/06/2026 19:51:54
[2026-06-13 19:51:54,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:51:54,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:51:54,592.592 INFO    ] No existing commands found in stream
[2026-06-13 19:51:59,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:51:59,620.620 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 19:52:03,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:52:03,055.055 INFO    ] Checking for system updates...
[2026-06-13 19:52:03,076.076 INFO    ] 200
[2026-06-13 19:52:03,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:03,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:03,111.111 INFO    ] No update needed
[2026-06-13 19:52:03,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:03,132.132 INFO    ] 200
[2026-06-13 19:52:03,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:03,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:03,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:52:03,203.203 INFO    ] No camera update needed
[2026-06-13 19:52:03,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:03,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:03,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:03,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:52:05,251.251 INFO    ] ================================================
[2026-06-13 19:52:05,266.266 INFO    ] Launching Daemon at Sat Jun 13 19:52:05 IST 2026
[2026-06-13 19:52:05,277.277 INFO    ] ================================================
[2026-06-13 19:52:05,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:52:05
[2026-06-13 19:52:05,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:52:06,101.101 INFO    ] Initializing speech engine...
[2026-06-13 19:52:06,105.105 INFO    ] 2026-06-13 19:52:06
[2026-06-13 19:52:06,309.309 INFO    ] 2026-06-13 19:52:06
[2026-06-13 19:52:06,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:52:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:52:06,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:52:06,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:52:06,710.710 INFO    ] time= 13/06/2026 19:52:06
[2026-06-13 19:52:06,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:52:06,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:52:06,824.824 INFO    ] No existing commands found in stream
[2026-06-13 19:52:11,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:52:11,837.837 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 19:52:14,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:52:14,740.740 INFO    ] Checking for system updates...
[2026-06-13 19:52:14,761.761 INFO    ] 200
[2026-06-13 19:52:14,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:14,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:14,794.794 INFO    ] No update needed
[2026-06-13 19:52:14,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:14,819.819 INFO    ] 200
[2026-06-13 19:52:14,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:14,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:14,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:14,881.881 INFO    ] No camera update needed
[2026-06-13 19:52:14,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:14,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:14,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:14,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:52:16,931.931 INFO    ] ================================================
[2026-06-13 19:52:16,947.947 INFO    ] Launching Daemon at Sat Jun 13 19:52:16 IST 2026
[2026-06-13 19:52:16,958.958 INFO    ] ================================================
[2026-06-13 19:52:17,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:52:17
[2026-06-13 19:52:17,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:52:17,741.741 INFO    ] Initializing speech engine...
[2026-06-13 19:52:17,746.746 INFO    ] 2026-06-13 19:52:17
[2026-06-13 19:52:17,964.964 INFO    ] 2026-06-13 19:52:17
[2026-06-13 19:52:17,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:52:18,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:52:18,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:52:18,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:52:18,372.372 INFO    ] time= 13/06/2026 19:52:18
[2026-06-13 19:52:18,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:52:18,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:52:18,501.501 INFO    ] No existing commands found in stream
[2026-06-13 19:52:23,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:52:23,513.513 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 19:52:27,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:52:27,811.811 INFO    ] Checking for system updates...
[2026-06-13 19:52:27,834.834 INFO    ] 200
[2026-06-13 19:52:27,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:27,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:27,867.867 INFO    ] No update needed
[2026-06-13 19:52:27,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:27,888.888 INFO    ] 200
[2026-06-13 19:52:27,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:27,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:27,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:52:27,952.952 INFO    ] No camera update needed
[2026-06-13 19:52:27,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:27,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:27,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:27,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:52:30,001.001 INFO    ] ================================================
[2026-06-13 19:52:30,016.016 INFO    ] Launching Daemon at Sat Jun 13 19:52:30 IST 2026
[2026-06-13 19:52:30,027.027 INFO    ] ================================================
[2026-06-13 19:52:30,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:52:30
[2026-06-13 19:52:30,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:52:30,887.887 INFO    ] Initializing speech engine...
[2026-06-13 19:52:30,891.891 INFO    ] 2026-06-13 19:52:30
[2026-06-13 19:52:31,104.104 INFO    ] 2026-06-13 19:52:31
[2026-06-13 19:52:31,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:52:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:52:31,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:52:31,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:52:31,536.536 INFO    ] time= 13/06/2026 19:52:31
[2026-06-13 19:52:31,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:52:31,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:52:31,647.647 INFO    ] No existing commands found in stream
[2026-06-13 19:52:36,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:52:36,661.661 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 19:52:38,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:52:38,468.468 INFO    ] Checking for system updates...
[2026-06-13 19:52:38,489.489 INFO    ] 200
[2026-06-13 19:52:38,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:38,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:38,521.521 INFO    ] No update needed
[2026-06-13 19:52:38,523.523 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:38,542.542 INFO    ] 200
[2026-06-13 19:52:38,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:38,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:38,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:52:38,607.607 INFO    ] No camera update needed
[2026-06-13 19:52:38,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:38,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:38,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:38,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:52:40,655.655 INFO    ] ================================================
[2026-06-13 19:52:40,672.672 INFO    ] Launching Daemon at Sat Jun 13 19:52:40 IST 2026
[2026-06-13 19:52:40,684.684 INFO    ] ================================================
[2026-06-13 19:52:41,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:52:41
[2026-06-13 19:52:41,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:52:41,466.466 INFO    ] Initializing speech engine...
[2026-06-13 19:52:41,471.471 INFO    ] 2026-06-13 19:52:41
[2026-06-13 19:52:41,699.699 INFO    ] 2026-06-13 19:52:41
[2026-06-13 19:52:41,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:52:41,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:52:41,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:52:42,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:52:42,124.124 INFO    ] time= 13/06/2026 19:52:42
[2026-06-13 19:52:42,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:52:42,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:52:42,251.251 INFO    ] No existing commands found in stream
[2026-06-13 19:52:47,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:52:47,263.263 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 19:52:48,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:52:48,196.196 INFO    ] Checking for system updates...
[2026-06-13 19:52:48,219.219 INFO    ] 200
[2026-06-13 19:52:48,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:48,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:48,252.252 INFO    ] No update needed
[2026-06-13 19:52:48,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:48,273.273 INFO    ] 200
[2026-06-13 19:52:48,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:48,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:48,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:52:48,342.342 INFO    ] No camera update needed
[2026-06-13 19:52:48,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:48,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:48,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:48,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:52:50,389.389 INFO    ] ================================================
[2026-06-13 19:52:50,404.404 INFO    ] Launching Daemon at Sat Jun 13 19:52:50 IST 2026
[2026-06-13 19:52:50,415.415 INFO    ] ================================================
[2026-06-13 19:52:50,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:52:50
[2026-06-13 19:52:51,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:52:51,192.192 INFO    ] Initializing speech engine...
[2026-06-13 19:52:51,196.196 INFO    ] 2026-06-13 19:52:51
[2026-06-13 19:52:51,424.424 INFO    ] 2026-06-13 19:52:51
[2026-06-13 19:52:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:52:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:52:51,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:52:51,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:52:51,847.847 INFO    ] time= 13/06/2026 19:52:51
[2026-06-13 19:52:51,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:52:51,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:52:51,977.977 INFO    ] No existing commands found in stream
[2026-06-13 19:52:56,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:52:56,990.990 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 19:52:58,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:52:58,496.496 INFO    ] Checking for system updates...
[2026-06-13 19:52:58,518.518 INFO    ] 200
[2026-06-13 19:52:58,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:58,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:52:58,554.554 INFO    ] No update needed
[2026-06-13 19:52:58,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 19:52:58,578.578 INFO    ] 200
[2026-06-13 19:52:58,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:52:58,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:52:58,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:52:58,746.746 INFO    ] No camera update needed
[2026-06-13 19:52:58,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:52:58,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:52:58,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:52:58,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:00,794.794 INFO    ] ================================================
[2026-06-13 19:53:00,810.810 INFO    ] Launching Daemon at Sat Jun 13 19:53:00 IST 2026
[2026-06-13 19:53:00,821.821 INFO    ] ================================================
[2026-06-13 19:53:01,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:01
[2026-06-13 19:53:01,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:02,011.011 INFO    ] Initializing speech engine...
[2026-06-13 19:53:02,018.018 INFO    ] 2026-06-13 19:53:02
[2026-06-13 19:53:02,326.326 INFO    ] 2026-06-13 19:53:02
[2026-06-13 19:53:02,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:02,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:02,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:02,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:02,789.789 INFO    ] time= 13/06/2026 19:53:02
[2026-06-13 19:53:02,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:02,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:02,982.982 INFO    ] No existing commands found in stream
[2026-06-13 19:53:08,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:53:08,012.012 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 19:53:08,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:53:08,581.581 INFO    ] Checking for system updates...
[2026-06-13 19:53:08,603.603 INFO    ] 200
[2026-06-13 19:53:08,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:08,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:53:08,636.636 INFO    ] No update needed
[2026-06-13 19:53:08,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 19:53:08,659.659 INFO    ] 200
[2026-06-13 19:53:08,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:08,686.686 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:53:08,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:53:08,730.730 INFO    ] No camera update needed
[2026-06-13 19:53:08,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:53:08,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:53:08,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:53:08,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:10,778.778 INFO    ] ================================================
[2026-06-13 19:53:10,800.800 INFO    ] Launching Daemon at Sat Jun 13 19:53:10 IST 2026
[2026-06-13 19:53:10,816.816 INFO    ] ================================================
[2026-06-13 19:53:11,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:11
[2026-06-13 19:53:11,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:11,815.815 INFO    ] Initializing speech engine...
[2026-06-13 19:53:11,831.831 INFO    ] 2026-06-13 19:53:11
[2026-06-13 19:53:12,101.101 INFO    ] 2026-06-13 19:53:12
[2026-06-13 19:53:12,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:12,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:12,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:12,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:12,473.473 INFO    ] time= 13/06/2026 19:53:12
[2026-06-13 19:53:12,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:12,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:12,654.654 INFO    ] No existing commands found in stream
[2026-06-13 19:53:17,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:53:17,682.682 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 19:53:20,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:53:20,004.004 INFO    ] Checking for system updates...
[2026-06-13 19:53:20,024.024 INFO    ] 200
[2026-06-13 19:53:20,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:20,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:53:20,060.060 INFO    ] No update needed
[2026-06-13 19:53:20,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 19:53:20,082.082 INFO    ] 200
[2026-06-13 19:53:20,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:20,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:53:20,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:53:20,133.133 INFO    ] No camera update needed
[2026-06-13 19:53:20,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:53:20,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:53:20,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:53:20,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:22,183.183 INFO    ] ================================================
[2026-06-13 19:53:22,198.198 INFO    ] Launching Daemon at Sat Jun 13 19:53:22 IST 2026
[2026-06-13 19:53:22,209.209 INFO    ] ================================================
[2026-06-13 19:53:22,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:22
[2026-06-13 19:53:22,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:23,058.058 INFO    ] Initializing speech engine...
[2026-06-13 19:53:23,063.063 INFO    ] 2026-06-13 19:53:23
[2026-06-13 19:53:23,277.277 INFO    ] 2026-06-13 19:53:23
[2026-06-13 19:53:23,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:23,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:23,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:23,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:23,700.700 INFO    ] time= 13/06/2026 19:53:23
[2026-06-13 19:53:23,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:23,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:23,803.803 INFO    ] No existing commands found in stream
[2026-06-13 19:53:28,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:53:28,815.815 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 19:53:31,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:53:31,263.263 INFO    ] Checking for system updates...
[2026-06-13 19:53:31,286.286 INFO    ] 200
[2026-06-13 19:53:31,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:31,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:53:31,319.319 INFO    ] No update needed
[2026-06-13 19:53:31,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 19:53:31,339.339 INFO    ] 200
[2026-06-13 19:53:31,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:31,364.364 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:53:31,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:53:31,417.417 INFO    ] No camera update needed
[2026-06-13 19:53:31,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:53:31,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:53:31,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:53:31,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:33,456.456 INFO    ] ================================================
[2026-06-13 19:53:33,471.471 INFO    ] Launching Daemon at Sat Jun 13 19:53:33 IST 2026
[2026-06-13 19:53:33,482.482 INFO    ] ================================================
[2026-06-13 19:53:33,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:33
[2026-06-13 19:53:34,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:34,293.293 INFO    ] Initializing speech engine...
[2026-06-13 19:53:34,298.298 INFO    ] 2026-06-13 19:53:34
[2026-06-13 19:53:34,507.507 INFO    ] 2026-06-13 19:53:34
[2026-06-13 19:53:34,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:34,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:34,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:34,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:34,912.912 INFO    ] time= 13/06/2026 19:53:34
[2026-06-13 19:53:34,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:34,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:35,021.021 INFO    ] No existing commands found in stream
[2026-06-13 19:53:40,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:53:40,034.034 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 19:53:43,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:53:43,680.680 INFO    ] Checking for system updates...
[2026-06-13 19:53:43,701.701 INFO    ] 200
[2026-06-13 19:53:43,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:43,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:53:43,736.736 INFO    ] No update needed
[2026-06-13 19:53:43,738.738 INFO    ] Checking for camera pi updates...
[2026-06-13 19:53:43,757.757 INFO    ] 200
[2026-06-13 19:53:43,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:43,784.784 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:53:43,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:53:43,826.826 INFO    ] No camera update needed
[2026-06-13 19:53:43,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:53:43,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:53:43,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:53:43,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:45,876.876 INFO    ] ================================================
[2026-06-13 19:53:45,891.891 INFO    ] Launching Daemon at Sat Jun 13 19:53:45 IST 2026
[2026-06-13 19:53:45,902.902 INFO    ] ================================================
[2026-06-13 19:53:46,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:46
[2026-06-13 19:53:46,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:46,778.778 INFO    ] Initializing speech engine...
[2026-06-13 19:53:46,784.784 INFO    ] 2026-06-13 19:53:46
[2026-06-13 19:53:46,991.991 INFO    ] 2026-06-13 19:53:46
[2026-06-13 19:53:47,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:47,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:47,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:47,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:47,409.409 INFO    ] time= 13/06/2026 19:53:47
[2026-06-13 19:53:47,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:47,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:47,510.510 INFO    ] No existing commands found in stream
[2026-06-13 19:53:52,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:53:52,528.528 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 19:53:55,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:53:55,901.901 INFO    ] Checking for system updates...
[2026-06-13 19:53:55,923.923 INFO    ] 200
[2026-06-13 19:53:55,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:55,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:53:55,957.957 INFO    ] No update needed
[2026-06-13 19:53:55,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 19:53:55,980.980 INFO    ] 200
[2026-06-13 19:53:55,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:53:56,013.013 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:53:56,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:53:56,055.055 INFO    ] No camera update needed
[2026-06-13 19:53:56,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:53:56,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:53:56,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:53:56,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:53:58,104.104 INFO    ] ================================================
[2026-06-13 19:53:58,120.120 INFO    ] Launching Daemon at Sat Jun 13 19:53:58 IST 2026
[2026-06-13 19:53:58,131.131 INFO    ] ================================================
[2026-06-13 19:53:58,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:53:58
[2026-06-13 19:53:58,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:53:58,991.991 INFO    ] Initializing speech engine...
[2026-06-13 19:53:58,997.997 INFO    ] 2026-06-13 19:53:58
[2026-06-13 19:53:59,206.206 INFO    ] 2026-06-13 19:53:59
[2026-06-13 19:53:59,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:53:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:53:59,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:53:59,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:53:59,624.624 INFO    ] time= 13/06/2026 19:53:59
[2026-06-13 19:53:59,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:53:59,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:53:59,723.723 INFO    ] No existing commands found in stream
[2026-06-13 19:54:04,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:04,737.737 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 19:54:08,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:54:08,186.186 INFO    ] Checking for system updates...
[2026-06-13 19:54:08,208.208 INFO    ] 200
[2026-06-13 19:54:08,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:08,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:08,241.241 INFO    ] No update needed
[2026-06-13 19:54:08,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 19:54:08,261.261 INFO    ] 200
[2026-06-13 19:54:08,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:08,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:54:08,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:08,325.325 INFO    ] No camera update needed
[2026-06-13 19:54:08,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:54:08,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:54:08,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:54:08,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:54:10,365.365 INFO    ] ================================================
[2026-06-13 19:54:10,374.374 INFO    ] Launching Daemon at Sat Jun 13 19:54:10 IST 2026
[2026-06-13 19:54:10,385.385 INFO    ] ================================================
[2026-06-13 19:54:10,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:54:10
[2026-06-13 19:54:11,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:54:11,194.194 INFO    ] Initializing speech engine...
[2026-06-13 19:54:11,203.203 INFO    ] 2026-06-13 19:54:11
[2026-06-13 19:54:11,422.422 INFO    ] 2026-06-13 19:54:11
[2026-06-13 19:54:11,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:54:11,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:54:11,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:54:11,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:54:11,798.798 INFO    ] time= 13/06/2026 19:54:11
[2026-06-13 19:54:11,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:54:11,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:54:12,007.007 INFO    ] No existing commands found in stream
[2026-06-13 19:54:17,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:17,019.019 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 19:54:20,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:54:20,423.423 INFO    ] Checking for system updates...
[2026-06-13 19:54:20,445.445 INFO    ] 200
[2026-06-13 19:54:20,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:20,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:20,481.481 INFO    ] No update needed
[2026-06-13 19:54:20,482.482 INFO    ] Checking for camera pi updates...
[2026-06-13 19:54:20,502.502 INFO    ] 200
[2026-06-13 19:54:20,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:20,526.526 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:54:20,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:20,563.563 INFO    ] No camera update needed
[2026-06-13 19:54:20,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:54:20,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:54:20,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:54:20,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:54:22,610.610 INFO    ] ================================================
[2026-06-13 19:54:22,625.625 INFO    ] Launching Daemon at Sat Jun 13 19:54:22 IST 2026
[2026-06-13 19:54:22,636.636 INFO    ] ================================================
[2026-06-13 19:54:22,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:54:22
[2026-06-13 19:54:23,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:54:23,411.411 INFO    ] Initializing speech engine...
[2026-06-13 19:54:23,424.424 INFO    ] 2026-06-13 19:54:23
[2026-06-13 19:54:23,643.643 INFO    ] 2026-06-13 19:54:23
[2026-06-13 19:54:23,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:54:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:54:23,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:54:23,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:54:23,911.911 INFO    ] time= 13/06/2026 19:54:23
[2026-06-13 19:54:23,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:54:23,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:54:24,033.033 INFO    ] No existing commands found in stream
[2026-06-13 19:54:29,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:29,061.061 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 19:54:30,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:54:30,182.182 INFO    ] Checking for system updates...
[2026-06-13 19:54:30,202.202 INFO    ] 200
[2026-06-13 19:54:30,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:30,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:54:30,237.237 INFO    ] No update needed
[2026-06-13 19:54:30,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 19:54:30,260.260 INFO    ] 200
[2026-06-13 19:54:30,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:30,286.286 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:54:30,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:54:30,332.332 INFO    ] No camera update needed
[2026-06-13 19:54:30,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:54:30,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:54:30,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:54:30,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:54:32,380.380 INFO    ] ================================================
[2026-06-13 19:54:32,396.396 INFO    ] Launching Daemon at Sat Jun 13 19:54:32 IST 2026
[2026-06-13 19:54:32,407.407 INFO    ] ================================================
[2026-06-13 19:54:32,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:54:32
[2026-06-13 19:54:33,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:54:33,266.266 INFO    ] Initializing speech engine...
[2026-06-13 19:54:33,272.272 INFO    ] 2026-06-13 19:54:33
[2026-06-13 19:54:33,479.479 INFO    ] 2026-06-13 19:54:33
[2026-06-13 19:54:33,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:54:33,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:54:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:54:33,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:54:33,900.900 INFO    ] time= 13/06/2026 19:54:33
[2026-06-13 19:54:33,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:54:33,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:54:33,994.994 INFO    ] No existing commands found in stream
[2026-06-13 19:54:39,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:39,023.023 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 19:54:39,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:54:39,617.617 INFO    ] Checking for system updates...
[2026-06-13 19:54:39,638.638 INFO    ] 200
[2026-06-13 19:54:39,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:39,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:54:39,671.671 INFO    ] No update needed
[2026-06-13 19:54:39,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 19:54:39,694.694 INFO    ] 200
[2026-06-13 19:54:39,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:39,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:54:39,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:54:39,763.763 INFO    ] No camera update needed
[2026-06-13 19:54:39,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:54:39,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:54:39,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:54:39,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:54:41,814.814 INFO    ] ================================================
[2026-06-13 19:54:41,830.830 INFO    ] Launching Daemon at Sat Jun 13 19:54:41 IST 2026
[2026-06-13 19:54:41,841.841 INFO    ] ================================================
[2026-06-13 19:54:42,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:54:42
[2026-06-13 19:54:42,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:54:42,639.639 INFO    ] Initializing speech engine...
[2026-06-13 19:54:42,649.649 INFO    ] 2026-06-13 19:54:42
[2026-06-13 19:54:42,853.853 INFO    ] 2026-06-13 19:54:42
[2026-06-13 19:54:42,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:54:43,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:54:43,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:54:43,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:54:43,246.246 INFO    ] time= 13/06/2026 19:54:43
[2026-06-13 19:54:43,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:54:43,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:54:43,366.366 INFO    ] No existing commands found in stream
[2026-06-13 19:54:48,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:48,378.378 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 19:54:50,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:54:50,327.327 INFO    ] Checking for system updates...
[2026-06-13 19:54:50,348.348 INFO    ] 200
[2026-06-13 19:54:50,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:50,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:50,384.384 INFO    ] No update needed
[2026-06-13 19:54:50,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 19:54:50,409.409 INFO    ] 200
[2026-06-13 19:54:50,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:54:50,437.437 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:54:50,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:54:50,473.473 INFO    ] No camera update needed
[2026-06-13 19:54:50,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:54:50,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:54:50,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:54:50,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:54:52,522.522 INFO    ] ================================================
[2026-06-13 19:54:52,537.537 INFO    ] Launching Daemon at Sat Jun 13 19:54:52 IST 2026
[2026-06-13 19:54:52,548.548 INFO    ] ================================================
[2026-06-13 19:54:52,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:54:52
[2026-06-13 19:54:53,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:54:53,358.358 INFO    ] Initializing speech engine...
[2026-06-13 19:54:53,371.371 INFO    ] 2026-06-13 19:54:53
[2026-06-13 19:54:53,584.584 INFO    ] 2026-06-13 19:54:53
[2026-06-13 19:54:53,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:54:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:54:53,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:54:53,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:54:54,006.006 INFO    ] time= 13/06/2026 19:54:53
[2026-06-13 19:54:54,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:54:54,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:54:54,114.114 INFO    ] No existing commands found in stream
[2026-06-13 19:54:59,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:54:59,128.128 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 19:55:01,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:55:01,790.790 INFO    ] Checking for system updates...
[2026-06-13 19:55:01,812.812 INFO    ] 200
[2026-06-13 19:55:01,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:01,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:55:01,849.849 INFO    ] No update needed
[2026-06-13 19:55:01,851.851 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:01,871.871 INFO    ] 200
[2026-06-13 19:55:01,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:01,897.897 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:02,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:55:02,104.104 INFO    ] No camera update needed
[2026-06-13 19:55:02,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:02,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:02,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:02,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:55:04,171.171 INFO    ] ================================================
[2026-06-13 19:55:04,186.186 INFO    ] Launching Daemon at Sat Jun 13 19:55:04 IST 2026
[2026-06-13 19:55:04,197.197 INFO    ] ================================================
[2026-06-13 19:55:04,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:55:04
[2026-06-13 19:55:04,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:55:04,975.975 INFO    ] Initializing speech engine...
[2026-06-13 19:55:04,987.987 INFO    ] 2026-06-13 19:55:04
[2026-06-13 19:55:05,192.192 INFO    ] 2026-06-13 19:55:05
[2026-06-13 19:55:05,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:55:05,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:55:05,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:55:05,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:55:05,610.610 INFO    ] time= 13/06/2026 19:55:05
[2026-06-13 19:55:05,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:55:05,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:55:05,706.706 INFO    ] No existing commands found in stream
[2026-06-13 19:55:10,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:55:10,718.718 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 19:55:11,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:55:11,606.606 INFO    ] Checking for system updates...
[2026-06-13 19:55:11,627.627 INFO    ] 200
[2026-06-13 19:55:11,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:11,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:55:11,664.664 INFO    ] No update needed
[2026-06-13 19:55:11,665.665 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:11,684.684 INFO    ] 200
[2026-06-13 19:55:11,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:11,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:11,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:55:11,749.749 INFO    ] No camera update needed
[2026-06-13 19:55:11,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:11,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:11,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:11,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:55:13,797.797 INFO    ] ================================================
[2026-06-13 19:55:13,813.813 INFO    ] Launching Daemon at Sat Jun 13 19:55:13 IST 2026
[2026-06-13 19:55:13,824.824 INFO    ] ================================================
[2026-06-13 19:55:14,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:55:14
[2026-06-13 19:55:14,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:55:14,628.628 INFO    ] Initializing speech engine...
[2026-06-13 19:55:14,638.638 INFO    ] 2026-06-13 19:55:14
[2026-06-13 19:55:14,861.861 INFO    ] 2026-06-13 19:55:14
[2026-06-13 19:55:14,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:55:15,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:55:15,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:55:15,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:55:15,326.326 INFO    ] time= 13/06/2026 19:55:15
[2026-06-13 19:55:15,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:55:15,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:55:15,470.470 INFO    ] No existing commands found in stream
[2026-06-13 19:55:20,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:55:20,497.497 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 19:55:24,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:55:24,053.053 INFO    ] Checking for system updates...
[2026-06-13 19:55:24,094.094 INFO    ] 200
[2026-06-13 19:55:24,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:24,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:24,154.154 INFO    ] No update needed
[2026-06-13 19:55:24,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:24,191.191 INFO    ] 200
[2026-06-13 19:55:24,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:24,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:24,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:24,260.260 INFO    ] No camera update needed
[2026-06-13 19:55:24,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:24,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:24,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:24,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:55:26,308.308 INFO    ] ================================================
[2026-06-13 19:55:26,323.323 INFO    ] Launching Daemon at Sat Jun 13 19:55:26 IST 2026
[2026-06-13 19:55:26,335.335 INFO    ] ================================================
[2026-06-13 19:55:26,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:55:26
[2026-06-13 19:55:27,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:55:27,150.150 INFO    ] Initializing speech engine...
[2026-06-13 19:55:27,158.158 INFO    ] 2026-06-13 19:55:27
[2026-06-13 19:55:27,369.369 INFO    ] 2026-06-13 19:55:27
[2026-06-13 19:55:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:55:27,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:55:27,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:55:27,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:55:27,756.756 INFO    ] time= 13/06/2026 19:55:27
[2026-06-13 19:55:27,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:55:27,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:55:27,887.887 INFO    ] No existing commands found in stream
[2026-06-13 19:55:32,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:55:32,899.899 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 19:55:36,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:55:36,907.907 INFO    ] Checking for system updates...
[2026-06-13 19:55:36,944.944 INFO    ] 200
[2026-06-13 19:55:36,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:37,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:37,012.012 INFO    ] No update needed
[2026-06-13 19:55:37,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:37,048.048 INFO    ] 200
[2026-06-13 19:55:37,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:37,077.077 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:37,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:37,115.115 INFO    ] No camera update needed
[2026-06-13 19:55:37,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:37,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:37,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:37,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:55:39,165.165 INFO    ] ================================================
[2026-06-13 19:55:39,181.181 INFO    ] Launching Daemon at Sat Jun 13 19:55:39 IST 2026
[2026-06-13 19:55:39,192.192 INFO    ] ================================================
[2026-06-13 19:55:39,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:55:39
[2026-06-13 19:55:39,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:55:39,993.993 INFO    ] Initializing speech engine...
[2026-06-13 19:55:40,002.002 INFO    ] 2026-06-13 19:55:39
[2026-06-13 19:55:40,216.216 INFO    ] 2026-06-13 19:55:40
[2026-06-13 19:55:40,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:55:40,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:55:40,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:55:40,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:55:40,614.614 INFO    ] time= 13/06/2026 19:55:40
[2026-06-13 19:55:40,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:55:40,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:55:40,736.736 INFO    ] No existing commands found in stream
[2026-06-13 19:55:45,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:55:45,754.754 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 19:55:49,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:55:49,356.356 INFO    ] Checking for system updates...
[2026-06-13 19:55:49,379.379 INFO    ] 200
[2026-06-13 19:55:49,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:49,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:49,412.412 INFO    ] No update needed
[2026-06-13 19:55:49,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:49,434.434 INFO    ] 200
[2026-06-13 19:55:49,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:49,461.461 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:49,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:55:49,506.506 INFO    ] No camera update needed
[2026-06-13 19:55:49,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:49,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:49,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:49,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:55:51,555.555 INFO    ] ================================================
[2026-06-13 19:55:51,571.571 INFO    ] Launching Daemon at Sat Jun 13 19:55:51 IST 2026
[2026-06-13 19:55:51,582.582 INFO    ] ================================================
[2026-06-13 19:55:51,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:55:51
[2026-06-13 19:55:52,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:55:52,379.379 INFO    ] Initializing speech engine...
[2026-06-13 19:55:52,384.384 INFO    ] 2026-06-13 19:55:52
[2026-06-13 19:55:52,589.589 INFO    ] 2026-06-13 19:55:52
[2026-06-13 19:55:52,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:55:52,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:55:52,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:55:52,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:55:53,001.001 INFO    ] time= 13/06/2026 19:55:52
[2026-06-13 19:55:53,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:55:53,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:55:53,107.107 INFO    ] No existing commands found in stream
[2026-06-13 19:55:58,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:55:58,124.124 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-13 19:55:59,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:55:59,560.560 INFO    ] Checking for system updates...
[2026-06-13 19:55:59,581.581 INFO    ] 200
[2026-06-13 19:55:59,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:59,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:59,617.617 INFO    ] No update needed
[2026-06-13 19:55:59,618.618 INFO    ] Checking for camera pi updates...
[2026-06-13 19:55:59,639.639 INFO    ] 200
[2026-06-13 19:55:59,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:55:59,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:55:59,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:55:59,704.704 INFO    ] No camera update needed
[2026-06-13 19:55:59,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:55:59,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:55:59,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:55:59,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:01,748.748 INFO    ] ================================================
[2026-06-13 19:56:01,759.759 INFO    ] Launching Daemon at Sat Jun 13 19:56:01 IST 2026
[2026-06-13 19:56:01,766.766 INFO    ] ================================================
[2026-06-13 19:56:02,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:02
[2026-06-13 19:56:02,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:02,593.593 INFO    ] Initializing speech engine...
[2026-06-13 19:56:02,596.596 INFO    ] 2026-06-13 19:56:02
[2026-06-13 19:56:02,798.798 INFO    ] 2026-06-13 19:56:02
[2026-06-13 19:56:02,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:02,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:02,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:03,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:03,076.076 INFO    ] time= 13/06/2026 19:56:03
[2026-06-13 19:56:03,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:03,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:03,158.158 INFO    ] No existing commands found in stream
[2026-06-13 19:56:08,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:56:08,188.188 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 19:56:10,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:56:10,751.751 INFO    ] Checking for system updates...
[2026-06-13 19:56:10,773.773 INFO    ] 200
[2026-06-13 19:56:10,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:10,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:10,806.806 INFO    ] No update needed
[2026-06-13 19:56:10,807.807 INFO    ] Checking for camera pi updates...
[2026-06-13 19:56:10,828.828 INFO    ] 200
[2026-06-13 19:56:10,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:10,855.855 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:56:10,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:10,896.896 INFO    ] No camera update needed
[2026-06-13 19:56:10,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:56:10,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:56:10,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:56:10,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:12,942.942 INFO    ] ================================================
[2026-06-13 19:56:12,957.957 INFO    ] Launching Daemon at Sat Jun 13 19:56:12 IST 2026
[2026-06-13 19:56:12,968.968 INFO    ] ================================================
[2026-06-13 19:56:13,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:13
[2026-06-13 19:56:13,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:13,773.773 INFO    ] Initializing speech engine...
[2026-06-13 19:56:13,777.777 INFO    ] 2026-06-13 19:56:13
[2026-06-13 19:56:13,968.968 INFO    ] 2026-06-13 19:56:13
[2026-06-13 19:56:14,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:14,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:14,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:14,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:14,389.389 INFO    ] time= 13/06/2026 19:56:14
[2026-06-13 19:56:14,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:14,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:14,571.571 INFO    ] No existing commands found in stream
[2026-06-13 19:56:19,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:56:19,584.584 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 19:56:19,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:56:19,931.931 INFO    ] Checking for system updates...
[2026-06-13 19:56:19,952.952 INFO    ] 200
[2026-06-13 19:56:19,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:19,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:19,987.987 INFO    ] No update needed
[2026-06-13 19:56:19,989.989 INFO    ] Checking for camera pi updates...
[2026-06-13 19:56:20,010.010 INFO    ] 200
[2026-06-13 19:56:20,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:20,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:56:20,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:20,070.070 INFO    ] No camera update needed
[2026-06-13 19:56:20,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:56:20,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:56:20,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:56:20,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:22,118.118 INFO    ] ================================================
[2026-06-13 19:56:22,133.133 INFO    ] Launching Daemon at Sat Jun 13 19:56:22 IST 2026
[2026-06-13 19:56:22,144.144 INFO    ] ================================================
[2026-06-13 19:56:22,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:22
[2026-06-13 19:56:22,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:22,977.977 INFO    ] Initializing speech engine...
[2026-06-13 19:56:22,988.988 INFO    ] 2026-06-13 19:56:22
[2026-06-13 19:56:23,204.204 INFO    ] 2026-06-13 19:56:23
[2026-06-13 19:56:23,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:23,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:23,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:23,583.583 INFO    ] time= 13/06/2026 19:56:23
[2026-06-13 19:56:23,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:23,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:23,764.764 INFO    ] No existing commands found in stream
[2026-06-13 19:56:28,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:56:28,783.783 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 19:56:30,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:56:30,481.481 INFO    ] Checking for system updates...
[2026-06-13 19:56:30,503.503 INFO    ] 200
[2026-06-13 19:56:30,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:30,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:30,537.537 INFO    ] No update needed
[2026-06-13 19:56:30,538.538 INFO    ] Checking for camera pi updates...
[2026-06-13 19:56:30,557.557 INFO    ] 200
[2026-06-13 19:56:30,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:30,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:56:30,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:30,621.621 INFO    ] No camera update needed
[2026-06-13 19:56:30,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:56:30,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:56:30,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:56:30,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:32,663.663 INFO    ] ================================================
[2026-06-13 19:56:32,678.678 INFO    ] Launching Daemon at Sat Jun 13 19:56:32 IST 2026
[2026-06-13 19:56:32,689.689 INFO    ] ================================================
[2026-06-13 19:56:33,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:33
[2026-06-13 19:56:33,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:33,599.599 INFO    ] Initializing speech engine...
[2026-06-13 19:56:33,609.609 INFO    ] 2026-06-13 19:56:33
[2026-06-13 19:56:33,874.874 INFO    ] 2026-06-13 19:56:33
[2026-06-13 19:56:33,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:34,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:34,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:34,250.250 INFO    ] time= 13/06/2026 19:56:34
[2026-06-13 19:56:34,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:34,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:34,419.419 INFO    ] No existing commands found in stream
[2026-06-13 19:56:39,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:56:39,461.461 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 19:56:40,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:56:40,928.928 INFO    ] Checking for system updates...
[2026-06-13 19:56:40,948.948 INFO    ] 200
[2026-06-13 19:56:40,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:40,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:40,984.984 INFO    ] No update needed
[2026-06-13 19:56:40,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 19:56:41,004.004 INFO    ] 200
[2026-06-13 19:56:41,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:41,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:56:41,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:41,068.068 INFO    ] No camera update needed
[2026-06-13 19:56:41,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:56:41,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:56:41,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:56:41,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:43,117.117 INFO    ] ================================================
[2026-06-13 19:56:43,132.132 INFO    ] Launching Daemon at Sat Jun 13 19:56:43 IST 2026
[2026-06-13 19:56:43,142.142 INFO    ] ================================================
[2026-06-13 19:56:43,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:43
[2026-06-13 19:56:43,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:43,972.972 INFO    ] Initializing speech engine...
[2026-06-13 19:56:43,977.977 INFO    ] 2026-06-13 19:56:43
[2026-06-13 19:56:44,182.182 INFO    ] 2026-06-13 19:56:44
[2026-06-13 19:56:44,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:44,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:44,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:44,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:44,599.599 INFO    ] time= 13/06/2026 19:56:44
[2026-06-13 19:56:44,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:44,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:44,792.792 INFO    ] No existing commands found in stream
[2026-06-13 19:56:49,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:56:49,829.829 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 19:56:53,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:56:53,007.007 INFO    ] Checking for system updates...
[2026-06-13 19:56:53,029.029 INFO    ] 200
[2026-06-13 19:56:53,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:53,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:53,062.062 INFO    ] No update needed
[2026-06-13 19:56:53,063.063 INFO    ] Checking for camera pi updates...
[2026-06-13 19:56:53,084.084 INFO    ] 200
[2026-06-13 19:56:53,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:56:53,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:56:53,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:56:53,155.155 INFO    ] No camera update needed
[2026-06-13 19:56:53,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:56:53,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:56:53,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:56:53,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:56:55,205.205 INFO    ] ================================================
[2026-06-13 19:56:55,220.220 INFO    ] Launching Daemon at Sat Jun 13 19:56:55 IST 2026
[2026-06-13 19:56:55,232.232 INFO    ] ================================================
[2026-06-13 19:56:55,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:56:55
[2026-06-13 19:56:55,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:56:56,115.115 INFO    ] Initializing speech engine...
[2026-06-13 19:56:56,121.121 INFO    ] 2026-06-13 19:56:56
[2026-06-13 19:56:56,331.331 INFO    ] 2026-06-13 19:56:56
[2026-06-13 19:56:56,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:56:56,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:56:56,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:56:56,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:56:56,750.750 INFO    ] time= 13/06/2026 19:56:56
[2026-06-13 19:56:56,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:56:56,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:56:56,969.969 INFO    ] No existing commands found in stream
[2026-06-13 19:57:01,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:01,984.984 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 19:57:04,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:57:04,730.730 INFO    ] Checking for system updates...
[2026-06-13 19:57:04,760.760 INFO    ] 200
[2026-06-13 19:57:04,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:04,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:57:04,794.794 INFO    ] No update needed
[2026-06-13 19:57:04,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 19:57:04,817.817 INFO    ] 200
[2026-06-13 19:57:04,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:04,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:57:04,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:57:04,986.986 INFO    ] No camera update needed
[2026-06-13 19:57:04,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:57:04,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:57:04,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:57:04,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:57:07,034.034 INFO    ] ================================================
[2026-06-13 19:57:07,050.050 INFO    ] Launching Daemon at Sat Jun 13 19:57:07 IST 2026
[2026-06-13 19:57:07,061.061 INFO    ] ================================================
[2026-06-13 19:57:07,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:57:07
[2026-06-13 19:57:07,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:57:07,897.897 INFO    ] Initializing speech engine...
[2026-06-13 19:57:07,903.903 INFO    ] 2026-06-13 19:57:07
[2026-06-13 19:57:08,107.107 INFO    ] 2026-06-13 19:57:08
[2026-06-13 19:57:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:57:08,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:57:08,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:57:08,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:57:08,512.512 INFO    ] time= 13/06/2026 19:57:08
[2026-06-13 19:57:08,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:57:08,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:57:08,623.623 INFO    ] No existing commands found in stream
[2026-06-13 19:57:13,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:13,634.634 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 19:57:17,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:57:17,058.058 INFO    ] Checking for system updates...
[2026-06-13 19:57:17,080.080 INFO    ] 200
[2026-06-13 19:57:17,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:17,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:57:17,114.114 INFO    ] No update needed
[2026-06-13 19:57:17,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 19:57:17,136.136 INFO    ] 200
[2026-06-13 19:57:17,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:17,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:57:17,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:57:17,200.200 INFO    ] No camera update needed
[2026-06-13 19:57:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:57:17,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:57:17,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:57:17,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:57:19,251.251 INFO    ] ================================================
[2026-06-13 19:57:19,267.267 INFO    ] Launching Daemon at Sat Jun 13 19:57:19 IST 2026
[2026-06-13 19:57:19,278.278 INFO    ] ================================================
[2026-06-13 19:57:19,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:57:19
[2026-06-13 19:57:20,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:57:20,162.162 INFO    ] Initializing speech engine...
[2026-06-13 19:57:20,167.167 INFO    ] 2026-06-13 19:57:20
[2026-06-13 19:57:20,374.374 INFO    ] 2026-06-13 19:57:20
[2026-06-13 19:57:20,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:57:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:57:20,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:57:20,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:57:20,787.787 INFO    ] time= 13/06/2026 19:57:20
[2026-06-13 19:57:20,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:57:20,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:57:20,892.892 INFO    ] No existing commands found in stream
[2026-06-13 19:57:25,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:25,908.908 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 19:57:28,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:57:28,927.927 INFO    ] Checking for system updates...
[2026-06-13 19:57:28,949.949 INFO    ] 200
[2026-06-13 19:57:28,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:28,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:57:28,984.984 INFO    ] No update needed
[2026-06-13 19:57:28,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 19:57:29,005.005 INFO    ] 200
[2026-06-13 19:57:29,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:29,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:57:29,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:57:29,071.071 INFO    ] No camera update needed
[2026-06-13 19:57:29,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:57:29,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:57:29,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:57:29,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:57:31,117.117 INFO    ] ================================================
[2026-06-13 19:57:31,132.132 INFO    ] Launching Daemon at Sat Jun 13 19:57:31 IST 2026
[2026-06-13 19:57:31,143.143 INFO    ] ================================================
[2026-06-13 19:57:31,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:57:31
[2026-06-13 19:57:31,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:57:32,042.042 INFO    ] Initializing speech engine...
[2026-06-13 19:57:32,052.052 INFO    ] 2026-06-13 19:57:32
[2026-06-13 19:57:32,256.256 INFO    ] 2026-06-13 19:57:32
[2026-06-13 19:57:32,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:57:32,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:57:32,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:57:32,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:57:32,553.553 INFO    ] time= 13/06/2026 19:57:32
[2026-06-13 19:57:32,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:57:32,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:57:32,647.647 INFO    ] No existing commands found in stream
[2026-06-13 19:57:37,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:37,685.685 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 19:57:40,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:57:40,092.092 INFO    ] Checking for system updates...
[2026-06-13 19:57:40,114.114 INFO    ] 200
[2026-06-13 19:57:40,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:40,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:57:40,148.148 INFO    ] No update needed
[2026-06-13 19:57:40,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 19:57:40,169.169 INFO    ] 200
[2026-06-13 19:57:40,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:40,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:57:40,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:57:40,232.232 INFO    ] No camera update needed
[2026-06-13 19:57:40,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:57:40,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:57:40,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:57:40,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:57:42,279.279 INFO    ] ================================================
[2026-06-13 19:57:42,295.295 INFO    ] Launching Daemon at Sat Jun 13 19:57:42 IST 2026
[2026-06-13 19:57:42,306.306 INFO    ] ================================================
[2026-06-13 19:57:42,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:57:42
[2026-06-13 19:57:43,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:57:43,195.195 INFO    ] Initializing speech engine...
[2026-06-13 19:57:43,200.200 INFO    ] 2026-06-13 19:57:43
[2026-06-13 19:57:43,409.409 INFO    ] 2026-06-13 19:57:43
[2026-06-13 19:57:43,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:57:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:57:43,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:57:43,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:57:43,830.830 INFO    ] time= 13/06/2026 19:57:43
[2026-06-13 19:57:43,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:57:43,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:57:43,927.927 INFO    ] No existing commands found in stream
[2026-06-13 19:57:48,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:48,941.941 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 19:57:51,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:57:51,085.085 INFO    ] Checking for system updates...
[2026-06-13 19:57:51,106.106 INFO    ] 200
[2026-06-13 19:57:51,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:51,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:57:51,142.142 INFO    ] No update needed
[2026-06-13 19:57:51,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 19:57:51,164.164 INFO    ] 200
[2026-06-13 19:57:51,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:57:51,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:57:51,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:57:51,232.232 INFO    ] No camera update needed
[2026-06-13 19:57:51,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:57:51,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:57:51,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:57:51,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:57:53,280.280 INFO    ] ================================================
[2026-06-13 19:57:53,295.295 INFO    ] Launching Daemon at Sat Jun 13 19:57:53 IST 2026
[2026-06-13 19:57:53,305.305 INFO    ] ================================================
[2026-06-13 19:57:53,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:57:53
[2026-06-13 19:57:53,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:57:54,135.135 INFO    ] Initializing speech engine...
[2026-06-13 19:57:54,141.141 INFO    ] 2026-06-13 19:57:54
[2026-06-13 19:57:54,342.342 INFO    ] 2026-06-13 19:57:54
[2026-06-13 19:57:54,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:57:54,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:57:54,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:57:54,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:57:54,752.752 INFO    ] time= 13/06/2026 19:57:54
[2026-06-13 19:57:54,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:57:54,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:57:54,856.856 INFO    ] No existing commands found in stream
[2026-06-13 19:57:59,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:57:59,870.870 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 19:58:02,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 19:58:02,442.442 INFO    ] Checking for system updates...
[2026-06-13 19:58:02,464.464 INFO    ] 200
[2026-06-13 19:58:02,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:02,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:02,500.500 INFO    ] No update needed
[2026-06-13 19:58:02,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:02,521.521 INFO    ] 200
[2026-06-13 19:58:02,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:02,550.550 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:02,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:02,574.574 INFO    ] No camera update needed
[2026-06-13 19:58:02,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:02,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:02,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:02,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:58:04,621.621 INFO    ] ================================================
[2026-06-13 19:58:04,637.637 INFO    ] Launching Daemon at Sat Jun 13 19:58:04 IST 2026
[2026-06-13 19:58:04,648.648 INFO    ] ================================================
[2026-06-13 19:58:05,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:58:05
[2026-06-13 19:58:05,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:58:05,497.497 INFO    ] Initializing speech engine...
[2026-06-13 19:58:05,507.507 INFO    ] 2026-06-13 19:58:05
[2026-06-13 19:58:05,711.711 INFO    ] 2026-06-13 19:58:05
[2026-06-13 19:58:05,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:58:05,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:58:05,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:58:06,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:58:06,113.113 INFO    ] time= 13/06/2026 19:58:06
[2026-06-13 19:58:06,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:58:06,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:58:06,228.228 INFO    ] No existing commands found in stream
[2026-06-13 19:58:11,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:58:11,242.242 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 19:58:15,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:58:15,418.418 INFO    ] Checking for system updates...
[2026-06-13 19:58:15,459.459 INFO    ] 200
[2026-06-13 19:58:15,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:15,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:15,518.518 INFO    ] No update needed
[2026-06-13 19:58:15,521.521 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:15,560.560 INFO    ] 200
[2026-06-13 19:58:15,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:15,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:15,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:15,654.654 INFO    ] No camera update needed
[2026-06-13 19:58:15,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:15,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:15,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:15,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:58:17,710.710 INFO    ] ================================================
[2026-06-13 19:58:17,726.726 INFO    ] Launching Daemon at Sat Jun 13 19:58:17 IST 2026
[2026-06-13 19:58:17,737.737 INFO    ] ================================================
[2026-06-13 19:58:18,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:58:18
[2026-06-13 19:58:18,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:58:18,533.533 INFO    ] Initializing speech engine...
[2026-06-13 19:58:18,538.538 INFO    ] 2026-06-13 19:58:18
[2026-06-13 19:58:18,743.743 INFO    ] 2026-06-13 19:58:18
[2026-06-13 19:58:18,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:58:18,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:58:18,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:58:19,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:58:19,155.155 INFO    ] time= 13/06/2026 19:58:19
[2026-06-13 19:58:19,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:58:19,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:58:19,258.258 INFO    ] No existing commands found in stream
[2026-06-13 19:58:24,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:58:24,272.272 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-13 19:58:26,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:58:26,492.492 INFO    ] Checking for system updates...
[2026-06-13 19:58:26,513.513 INFO    ] 200
[2026-06-13 19:58:26,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:26,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:26,550.550 INFO    ] No update needed
[2026-06-13 19:58:26,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:26,573.573 INFO    ] 200
[2026-06-13 19:58:26,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:26,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:26,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:26,641.641 INFO    ] No camera update needed
[2026-06-13 19:58:26,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:26,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:26,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:26,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:58:28,688.688 INFO    ] ================================================
[2026-06-13 19:58:28,704.704 INFO    ] Launching Daemon at Sat Jun 13 19:58:28 IST 2026
[2026-06-13 19:58:28,716.716 INFO    ] ================================================
[2026-06-13 19:58:29,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:58:29
[2026-06-13 19:58:29,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:58:29,540.540 INFO    ] Initializing speech engine...
[2026-06-13 19:58:29,546.546 INFO    ] 2026-06-13 19:58:29
[2026-06-13 19:58:29,747.747 INFO    ] 2026-06-13 19:58:29
[2026-06-13 19:58:29,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:58:29,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:58:29,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:58:30,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:58:30,147.147 INFO    ] time= 13/06/2026 19:58:30
[2026-06-13 19:58:30,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:58:30,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:58:30,263.263 INFO    ] No existing commands found in stream
[2026-06-13 19:58:35,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:58:35,276.276 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 19:58:36,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 19:58:36,158.158 INFO    ] Checking for system updates...
[2026-06-13 19:58:36,179.179 INFO    ] 200
[2026-06-13 19:58:36,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:36,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:36,216.216 INFO    ] No update needed
[2026-06-13 19:58:36,218.218 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:36,241.241 INFO    ] 200
[2026-06-13 19:58:36,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:36,266.266 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:36,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:36,303.303 INFO    ] No camera update needed
[2026-06-13 19:58:36,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:36,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:36,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:36,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:58:38,354.354 INFO    ] ================================================
[2026-06-13 19:58:38,370.370 INFO    ] Launching Daemon at Sat Jun 13 19:58:38 IST 2026
[2026-06-13 19:58:38,381.381 INFO    ] ================================================
[2026-06-13 19:58:38,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:58:38
[2026-06-13 19:58:39,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:58:39,200.200 INFO    ] Initializing speech engine...
[2026-06-13 19:58:39,205.205 INFO    ] 2026-06-13 19:58:39
[2026-06-13 19:58:39,411.411 INFO    ] 2026-06-13 19:58:39
[2026-06-13 19:58:39,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:58:39,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:58:39,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:58:39,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:58:39,826.826 INFO    ] time= 13/06/2026 19:58:39
[2026-06-13 19:58:39,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:58:39,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:58:39,926.926 INFO    ] No existing commands found in stream
[2026-06-13 19:58:44,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:58:44,938.938 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 19:58:48,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:58:48,732.732 INFO    ] Checking for system updates...
[2026-06-13 19:58:48,754.754 INFO    ] 200
[2026-06-13 19:58:48,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:48,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:48,789.789 INFO    ] No update needed
[2026-06-13 19:58:48,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:48,810.810 INFO    ] 200
[2026-06-13 19:58:48,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:48,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:48,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:58:48,874.874 INFO    ] No camera update needed
[2026-06-13 19:58:48,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:48,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:48,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:48,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:58:50,920.920 INFO    ] ================================================
[2026-06-13 19:58:50,936.936 INFO    ] Launching Daemon at Sat Jun 13 19:58:50 IST 2026
[2026-06-13 19:58:50,947.947 INFO    ] ================================================
[2026-06-13 19:58:51,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:58:51
[2026-06-13 19:58:51,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:58:51,822.822 INFO    ] Initializing speech engine...
[2026-06-13 19:58:51,833.833 INFO    ] 2026-06-13 19:58:51
[2026-06-13 19:58:52,043.043 INFO    ] 2026-06-13 19:58:52
[2026-06-13 19:58:52,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:58:52,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:58:52,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:58:52,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:58:52,455.455 INFO    ] time= 13/06/2026 19:58:52
[2026-06-13 19:58:52,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:58:52,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:58:52,568.568 INFO    ] No existing commands found in stream
[2026-06-13 19:58:57,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:58:57,585.585 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 19:58:58,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 19:58:58,823.823 INFO    ] Checking for system updates...
[2026-06-13 19:58:58,844.844 INFO    ] 200
[2026-06-13 19:58:58,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:58,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:58,878.878 INFO    ] No update needed
[2026-06-13 19:58:58,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 19:58:58,901.901 INFO    ] 200
[2026-06-13 19:58:58,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:58:58,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:58:58,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:58:58,965.965 INFO    ] No camera update needed
[2026-06-13 19:58:58,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:58:58,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:58:58,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:58:58,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:01,013.013 INFO    ] ================================================
[2026-06-13 19:59:01,029.029 INFO    ] Launching Daemon at Sat Jun 13 19:59:01 IST 2026
[2026-06-13 19:59:01,040.040 INFO    ] ================================================
[2026-06-13 19:59:01,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:01
[2026-06-13 19:59:01,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:02,005.005 INFO    ] Initializing speech engine...
[2026-06-13 19:59:02,018.018 INFO    ] 2026-06-13 19:59:02
[2026-06-13 19:59:02,280.280 INFO    ] 2026-06-13 19:59:02
[2026-06-13 19:59:02,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:02,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:02,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:02,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:02,702.702 INFO    ] time= 13/06/2026 19:59:02
[2026-06-13 19:59:02,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:02,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:02,869.869 INFO    ] No existing commands found in stream
[2026-06-13 19:59:07,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:07,882.882 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 19:59:10,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:59:10,572.572 INFO    ] Checking for system updates...
[2026-06-13 19:59:10,594.594 INFO    ] 200
[2026-06-13 19:59:10,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:10,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:10,631.631 INFO    ] No update needed
[2026-06-13 19:59:10,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 19:59:10,652.652 INFO    ] 200
[2026-06-13 19:59:10,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:10,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:59:10,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:10,821.821 INFO    ] No camera update needed
[2026-06-13 19:59:10,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:59:10,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:59:10,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:59:10,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:12,869.869 INFO    ] ================================================
[2026-06-13 19:59:12,885.885 INFO    ] Launching Daemon at Sat Jun 13 19:59:12 IST 2026
[2026-06-13 19:59:12,897.897 INFO    ] ================================================
[2026-06-13 19:59:13,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:13
[2026-06-13 19:59:13,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:13,732.732 INFO    ] Initializing speech engine...
[2026-06-13 19:59:13,737.737 INFO    ] 2026-06-13 19:59:13
[2026-06-13 19:59:13,942.942 INFO    ] 2026-06-13 19:59:13
[2026-06-13 19:59:13,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:14,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:14,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:14,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:14,359.359 INFO    ] time= 13/06/2026 19:59:14
[2026-06-13 19:59:14,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:14,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:14,457.457 INFO    ] No existing commands found in stream
[2026-06-13 19:59:19,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:19,470.470 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 19:59:20,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:59:20,657.657 INFO    ] Checking for system updates...
[2026-06-13 19:59:20,679.679 INFO    ] 200
[2026-06-13 19:59:20,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:20,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:20,715.715 INFO    ] No update needed
[2026-06-13 19:59:20,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 19:59:20,738.738 INFO    ] 200
[2026-06-13 19:59:20,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:20,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:59:20,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:20,808.808 INFO    ] No camera update needed
[2026-06-13 19:59:20,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:59:20,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:59:20,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:59:20,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:22,858.858 INFO    ] ================================================
[2026-06-13 19:59:22,875.875 INFO    ] Launching Daemon at Sat Jun 13 19:59:22 IST 2026
[2026-06-13 19:59:22,886.886 INFO    ] ================================================
[2026-06-13 19:59:23,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:23
[2026-06-13 19:59:23,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:23,697.697 INFO    ] Initializing speech engine...
[2026-06-13 19:59:23,705.705 INFO    ] 2026-06-13 19:59:23
[2026-06-13 19:59:23,921.921 INFO    ] 2026-06-13 19:59:23
[2026-06-13 19:59:23,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:24,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:24,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:24,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:24,360.360 INFO    ] time= 13/06/2026 19:59:24
[2026-06-13 19:59:24,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:24,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:24,476.476 INFO    ] No existing commands found in stream
[2026-06-13 19:59:29,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:29,490.490 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 19:59:31,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 19:59:31,021.021 INFO    ] Checking for system updates...
[2026-06-13 19:59:31,043.043 INFO    ] 200
[2026-06-13 19:59:31,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:31,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:59:31,078.078 INFO    ] No update needed
[2026-06-13 19:59:31,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 19:59:31,099.099 INFO    ] 200
[2026-06-13 19:59:31,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:31,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:59:31,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:59:31,164.164 INFO    ] No camera update needed
[2026-06-13 19:59:31,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:59:31,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:59:31,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:59:31,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:33,207.207 INFO    ] ================================================
[2026-06-13 19:59:33,223.223 INFO    ] Launching Daemon at Sat Jun 13 19:59:33 IST 2026
[2026-06-13 19:59:33,234.234 INFO    ] ================================================
[2026-06-13 19:59:33,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:33
[2026-06-13 19:59:33,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:34,071.071 INFO    ] Initializing speech engine...
[2026-06-13 19:59:34,077.077 INFO    ] 2026-06-13 19:59:34
[2026-06-13 19:59:34,280.280 INFO    ] 2026-06-13 19:59:34
[2026-06-13 19:59:34,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:34,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:34,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:34,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:34,678.678 INFO    ] time= 13/06/2026 19:59:34
[2026-06-13 19:59:34,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:34,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:34,793.793 INFO    ] No existing commands found in stream
[2026-06-13 19:59:39,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:39,807.807 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 19:59:41,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 19:59:41,522.522 INFO    ] Checking for system updates...
[2026-06-13 19:59:41,542.542 INFO    ] 200
[2026-06-13 19:59:41,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:41,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:59:41,577.577 INFO    ] No update needed
[2026-06-13 19:59:41,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 19:59:41,599.599 INFO    ] 200
[2026-06-13 19:59:41,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:41,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:59:41,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 19:59:41,663.663 INFO    ] No camera update needed
[2026-06-13 19:59:41,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:59:41,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:59:41,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:59:41,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:43,711.711 INFO    ] ================================================
[2026-06-13 19:59:43,727.727 INFO    ] Launching Daemon at Sat Jun 13 19:59:43 IST 2026
[2026-06-13 19:59:43,739.739 INFO    ] ================================================
[2026-06-13 19:59:44,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:44
[2026-06-13 19:59:44,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:44,588.588 INFO    ] Initializing speech engine...
[2026-06-13 19:59:44,594.594 INFO    ] 2026-06-13 19:59:44
[2026-06-13 19:59:44,805.805 INFO    ] 2026-06-13 19:59:44
[2026-06-13 19:59:44,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:45,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:45,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:45,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:45,210.210 INFO    ] time= 13/06/2026 19:59:45
[2026-06-13 19:59:45,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:45,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:45,328.328 INFO    ] No existing commands found in stream
[2026-06-13 19:59:50,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:50,344.344 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 19:59:51,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 19:59:51,149.149 INFO    ] Checking for system updates...
[2026-06-13 19:59:51,171.171 INFO    ] 200
[2026-06-13 19:59:51,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:51,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:51,206.206 INFO    ] No update needed
[2026-06-13 19:59:51,208.208 INFO    ] Checking for camera pi updates...
[2026-06-13 19:59:51,228.228 INFO    ] 200
[2026-06-13 19:59:51,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 19:59:51,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 19:59:51,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 19:59:51,296.296 INFO    ] No camera update needed
[2026-06-13 19:59:51,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 19:59:51,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 19:59:51,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 19:59:51,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 19:59:53,346.346 INFO    ] ================================================
[2026-06-13 19:59:53,362.362 INFO    ] Launching Daemon at Sat Jun 13 19:59:53 IST 2026
[2026-06-13 19:59:53,373.373 INFO    ] ================================================
[2026-06-13 19:59:53,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 19:59:53
[2026-06-13 19:59:54,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 19:59:54,144.144 INFO    ] Initializing speech engine...
[2026-06-13 19:59:54,147.147 INFO    ] 2026-06-13 19:59:54
[2026-06-13 19:59:54,374.374 INFO    ] 2026-06-13 19:59:54
[2026-06-13 19:59:54,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 19:59:54,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 19:59:54,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 19:59:54,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 19:59:54,810.810 INFO    ] time= 13/06/2026 19:59:54
[2026-06-13 19:59:54,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 19:59:54,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-13 19:59:54,924.924 INFO    ] No existing commands found in stream
[2026-06-13 19:59:59,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 19:59:59,937.937 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 20:00:03,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:00:03,132.132 INFO    ] Checking for system updates...
[2026-06-13 20:00:03,316.316 INFO    ] 200
[2026-06-13 20:00:03,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:03,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:03,635.635 INFO    ] No update needed
[2026-06-13 20:00:03,668.668 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:03,821.821 INFO    ] 200
[2026-06-13 20:00:03,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:04,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:04,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:04,297.297 INFO    ] No camera update needed
[2026-06-13 20:00:04,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:04,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:04,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:04,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:00:06,494.494 INFO    ] ================================================
[2026-06-13 20:00:06,502.502 INFO    ] Launching Daemon at Sat Jun 13 20:00:06 IST 2026
[2026-06-13 20:00:06,508.508 INFO    ] ================================================
[2026-06-13 20:00:07,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:00:07
[2026-06-13 20:00:07,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:00:08,114.114 INFO    ] Initializing speech engine...
[2026-06-13 20:00:08,122.122 INFO    ] 2026-06-13 20:00:08
[2026-06-13 20:00:08,395.395 INFO    ] 2026-06-13 20:00:08
[2026-06-13 20:00:08,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:00:08,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:00:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:00:08,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:00:08,905.905 INFO    ] time= 13/06/2026 20:00:08
[2026-06-13 20:00:08,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:00:08,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:00:09,132.132 INFO    ] No existing commands found in stream
[2026-06-13 20:00:14,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:00:14,155.155 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 20:00:15,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:00:15,549.549 INFO    ] Checking for system updates...
[2026-06-13 20:00:15,569.569 INFO    ] 200
[2026-06-13 20:00:15,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:15,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:15,602.602 INFO    ] No update needed
[2026-06-13 20:00:15,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:15,623.623 INFO    ] 200
[2026-06-13 20:00:15,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:15,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:15,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:15,695.695 INFO    ] No camera update needed
[2026-06-13 20:00:15,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:15,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:15,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:15,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:00:17,741.741 INFO    ] ================================================
[2026-06-13 20:00:17,757.757 INFO    ] Launching Daemon at Sat Jun 13 20:00:17 IST 2026
[2026-06-13 20:00:17,768.768 INFO    ] ================================================
[2026-06-13 20:00:18,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:00:18
[2026-06-13 20:00:18,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:00:18,612.612 INFO    ] Initializing speech engine...
[2026-06-13 20:00:18,617.617 INFO    ] 2026-06-13 20:00:18
[2026-06-13 20:00:18,821.821 INFO    ] 2026-06-13 20:00:18
[2026-06-13 20:00:18,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:00:19,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:00:19,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:00:19,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:00:19,235.235 INFO    ] time= 13/06/2026 20:00:19
[2026-06-13 20:00:19,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:00:19,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:00:19,335.335 INFO    ] No existing commands found in stream
[2026-06-13 20:00:24,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:00:24,347.347 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 20:00:28,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:00:28,343.343 INFO    ] Checking for system updates...
[2026-06-13 20:00:28,363.363 INFO    ] 200
[2026-06-13 20:00:28,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:28,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:28,397.397 INFO    ] No update needed
[2026-06-13 20:00:28,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:28,420.420 INFO    ] 200
[2026-06-13 20:00:28,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:28,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:28,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:28,482.482 INFO    ] No camera update needed
[2026-06-13 20:00:28,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:28,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:28,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:28,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:00:30,530.530 INFO    ] ================================================
[2026-06-13 20:00:30,546.546 INFO    ] Launching Daemon at Sat Jun 13 20:00:30 IST 2026
[2026-06-13 20:00:30,557.557 INFO    ] ================================================
[2026-06-13 20:00:30,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:00:30
[2026-06-13 20:00:31,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:00:31,414.414 INFO    ] Initializing speech engine...
[2026-06-13 20:00:31,420.420 INFO    ] 2026-06-13 20:00:31
[2026-06-13 20:00:31,629.629 INFO    ] 2026-06-13 20:00:31
[2026-06-13 20:00:31,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:00:31,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:00:31,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:00:31,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:00:32,061.061 INFO    ] time= 13/06/2026 20:00:32
[2026-06-13 20:00:32,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:00:32,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:00:32,175.175 INFO    ] No existing commands found in stream
[2026-06-13 20:00:37,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:00:37,190.190 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 20:00:39,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:00:39,339.339 INFO    ] Checking for system updates...
[2026-06-13 20:00:39,360.360 INFO    ] 200
[2026-06-13 20:00:39,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:39,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:00:39,392.392 INFO    ] No update needed
[2026-06-13 20:00:39,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:39,414.414 INFO    ] 200
[2026-06-13 20:00:39,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:39,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:39,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:00:39,478.478 INFO    ] No camera update needed
[2026-06-13 20:00:39,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:39,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:39,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:39,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:00:41,528.528 INFO    ] ================================================
[2026-06-13 20:00:41,543.543 INFO    ] Launching Daemon at Sat Jun 13 20:00:41 IST 2026
[2026-06-13 20:00:41,554.554 INFO    ] ================================================
[2026-06-13 20:00:41,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:00:41
[2026-06-13 20:00:42,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:00:42,353.353 INFO    ] Initializing speech engine...
[2026-06-13 20:00:42,357.357 INFO    ] 2026-06-13 20:00:42
[2026-06-13 20:00:42,585.585 INFO    ] 2026-06-13 20:00:42
[2026-06-13 20:00:42,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:00:42,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:00:42,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:00:42,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:00:42,999.999 INFO    ] time= 13/06/2026 20:00:42
[2026-06-13 20:00:43,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:00:43,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:00:43,134.134 INFO    ] No existing commands found in stream
[2026-06-13 20:00:48,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:00:48,142.142 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 20:00:48,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:00:48,729.729 INFO    ] Checking for system updates...
[2026-06-13 20:00:48,750.750 INFO    ] 200
[2026-06-13 20:00:48,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:48,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:00:48,785.785 INFO    ] No update needed
[2026-06-13 20:00:48,787.787 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:48,813.813 INFO    ] 200
[2026-06-13 20:00:48,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:48,863.863 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:48,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:00:48,906.906 INFO    ] No camera update needed
[2026-06-13 20:00:48,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:48,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:48,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:48,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:00:50,964.964 INFO    ] ================================================
[2026-06-13 20:00:50,980.980 INFO    ] Launching Daemon at Sat Jun 13 20:00:50 IST 2026
[2026-06-13 20:00:50,991.991 INFO    ] ================================================
[2026-06-13 20:00:51,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:00:51
[2026-06-13 20:00:51,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:00:51,783.783 INFO    ] Initializing speech engine...
[2026-06-13 20:00:51,793.793 INFO    ] 2026-06-13 20:00:51
[2026-06-13 20:00:52,035.035 INFO    ] 2026-06-13 20:00:51
[2026-06-13 20:00:52,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:00:52,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:00:52,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:00:52,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:00:52,481.481 INFO    ] time= 13/06/2026 20:00:52
[2026-06-13 20:00:52,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:00:52,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:00:52,640.640 INFO    ] No existing commands found in stream
[2026-06-13 20:00:57,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:00:57,663.663 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 20:00:58,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:00:58,695.695 INFO    ] Checking for system updates...
[2026-06-13 20:00:58,716.716 INFO    ] 200
[2026-06-13 20:00:58,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:58,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:58,750.750 INFO    ] No update needed
[2026-06-13 20:00:58,751.751 INFO    ] Checking for camera pi updates...
[2026-06-13 20:00:58,770.770 INFO    ] 200
[2026-06-13 20:00:58,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:00:58,797.797 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:00:58,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:00:58,820.820 INFO    ] No camera update needed
[2026-06-13 20:00:58,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:00:58,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:00:58,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:00:58,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:00,868.868 INFO    ] ================================================
[2026-06-13 20:01:00,883.883 INFO    ] Launching Daemon at Sat Jun 13 20:01:00 IST 2026
[2026-06-13 20:01:00,894.894 INFO    ] ================================================
[2026-06-13 20:01:01,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:01
[2026-06-13 20:01:01,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:01,695.695 INFO    ] Initializing speech engine...
[2026-06-13 20:01:01,700.700 INFO    ] 2026-06-13 20:01:01
[2026-06-13 20:01:01,896.896 INFO    ] 2026-06-13 20:01:01
[2026-06-13 20:01:01,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:02,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:02,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:02,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:02,212.212 INFO    ] time= 13/06/2026 20:01:02
[2026-06-13 20:01:02,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:02,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:02,411.411 INFO    ] No existing commands found in stream
[2026-06-13 20:01:07,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:01:07,444.444 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 20:01:09,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:01:09,211.211 INFO    ] Checking for system updates...
[2026-06-13 20:01:09,232.232 INFO    ] 200
[2026-06-13 20:01:09,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:09,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:09,267.267 INFO    ] No update needed
[2026-06-13 20:01:09,269.269 INFO    ] Checking for camera pi updates...
[2026-06-13 20:01:09,289.289 INFO    ] 200
[2026-06-13 20:01:09,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:09,314.314 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:01:09,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:01:09,348.348 INFO    ] No camera update needed
[2026-06-13 20:01:09,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:01:09,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:01:09,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:01:09,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:11,397.397 INFO    ] ================================================
[2026-06-13 20:01:11,412.412 INFO    ] Launching Daemon at Sat Jun 13 20:01:11 IST 2026
[2026-06-13 20:01:11,424.424 INFO    ] ================================================
[2026-06-13 20:01:11,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:11
[2026-06-13 20:01:12,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:12,235.235 INFO    ] Initializing speech engine...
[2026-06-13 20:01:12,240.240 INFO    ] 2026-06-13 20:01:12
[2026-06-13 20:01:12,443.443 INFO    ] 2026-06-13 20:01:12
[2026-06-13 20:01:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:12,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:12,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:12,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:12,861.861 INFO    ] time= 13/06/2026 20:01:12
[2026-06-13 20:01:12,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:12,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:12,980.980 INFO    ] No existing commands found in stream
[2026-06-13 20:01:17,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:01:17,993.993 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 20:01:19,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:01:19,933.933 INFO    ] Checking for system updates...
[2026-06-13 20:01:19,955.955 INFO    ] 200
[2026-06-13 20:01:19,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:19,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:19,993.993 INFO    ] No update needed
[2026-06-13 20:01:19,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 20:01:20,016.016 INFO    ] 200
[2026-06-13 20:01:20,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:20,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:01:20,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:20,186.186 INFO    ] No camera update needed
[2026-06-13 20:01:20,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:01:20,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:01:20,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:01:20,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:22,235.235 INFO    ] ================================================
[2026-06-13 20:01:22,251.251 INFO    ] Launching Daemon at Sat Jun 13 20:01:22 IST 2026
[2026-06-13 20:01:22,261.261 INFO    ] ================================================
[2026-06-13 20:01:22,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:22
[2026-06-13 20:01:22,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:23,056.056 INFO    ] Initializing speech engine...
[2026-06-13 20:01:23,066.066 INFO    ] 2026-06-13 20:01:23
[2026-06-13 20:01:23,270.270 INFO    ] 2026-06-13 20:01:23
[2026-06-13 20:01:23,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:23,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:23,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:23,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:23,680.680 INFO    ] time= 13/06/2026 20:01:23
[2026-06-13 20:01:23,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:23,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:23,784.784 INFO    ] No existing commands found in stream
[2026-06-13 20:01:28,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:01:28,797.797 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 20:01:30,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:01:30,164.164 INFO    ] Checking for system updates...
[2026-06-13 20:01:30,185.185 INFO    ] 200
[2026-06-13 20:01:30,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:30,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:01:30,222.222 INFO    ] No update needed
[2026-06-13 20:01:30,223.223 INFO    ] Checking for camera pi updates...
[2026-06-13 20:01:30,245.245 INFO    ] 200
[2026-06-13 20:01:30,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:30,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:01:30,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:01:30,322.322 INFO    ] No camera update needed
[2026-06-13 20:01:30,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:01:30,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:01:30,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:01:30,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:32,365.365 INFO    ] ================================================
[2026-06-13 20:01:32,374.374 INFO    ] Launching Daemon at Sat Jun 13 20:01:32 IST 2026
[2026-06-13 20:01:32,381.381 INFO    ] ================================================
[2026-06-13 20:01:32,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:32
[2026-06-13 20:01:33,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:33,186.186 INFO    ] Initializing speech engine...
[2026-06-13 20:01:33,192.192 INFO    ] 2026-06-13 20:01:33
[2026-06-13 20:01:33,398.398 INFO    ] 2026-06-13 20:01:33
[2026-06-13 20:01:33,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:33,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:33,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:33,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:33,817.817 INFO    ] time= 13/06/2026 20:01:33
[2026-06-13 20:01:33,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:33,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:33,912.912 INFO    ] No existing commands found in stream
[2026-06-13 20:01:38,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:01:38,926.926 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 20:01:39,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:01:39,724.724 INFO    ] Checking for system updates...
[2026-06-13 20:01:39,745.745 INFO    ] 200
[2026-06-13 20:01:39,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:39,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:39,781.781 INFO    ] No update needed
[2026-06-13 20:01:39,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 20:01:39,803.803 INFO    ] 200
[2026-06-13 20:01:39,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:39,832.832 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:01:39,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:01:39,874.874 INFO    ] No camera update needed
[2026-06-13 20:01:39,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:01:39,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:01:39,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:01:39,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:41,922.922 INFO    ] ================================================
[2026-06-13 20:01:41,937.937 INFO    ] Launching Daemon at Sat Jun 13 20:01:41 IST 2026
[2026-06-13 20:01:41,948.948 INFO    ] ================================================
[2026-06-13 20:01:42,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:42
[2026-06-13 20:01:42,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:42,768.768 INFO    ] Initializing speech engine...
[2026-06-13 20:01:42,774.774 INFO    ] 2026-06-13 20:01:42
[2026-06-13 20:01:42,978.978 INFO    ] 2026-06-13 20:01:42
[2026-06-13 20:01:43,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:43,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:43,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:43,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:43,229.229 INFO    ] time= 13/06/2026 20:01:43
[2026-06-13 20:01:43,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:43,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:43,405.405 INFO    ] No existing commands found in stream
[2026-06-13 20:01:48,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:01:48,424.424 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 20:01:50,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:01:50,822.822 INFO    ] Checking for system updates...
[2026-06-13 20:01:50,843.843 INFO    ] 200
[2026-06-13 20:01:50,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:50,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:50,878.878 INFO    ] No update needed
[2026-06-13 20:01:50,880.880 INFO    ] Checking for camera pi updates...
[2026-06-13 20:01:50,901.901 INFO    ] 200
[2026-06-13 20:01:50,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:01:50,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:01:50,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:01:50,969.969 INFO    ] No camera update needed
[2026-06-13 20:01:50,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:01:50,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:01:50,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:01:50,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:01:53,016.016 INFO    ] ================================================
[2026-06-13 20:01:53,032.032 INFO    ] Launching Daemon at Sat Jun 13 20:01:53 IST 2026
[2026-06-13 20:01:53,043.043 INFO    ] ================================================
[2026-06-13 20:01:53,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:01:53
[2026-06-13 20:01:54,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:01:54,461.461 INFO    ] Initializing speech engine...
[2026-06-13 20:01:54,479.479 INFO    ] 2026-06-13 20:01:54
[2026-06-13 20:01:54,743.743 INFO    ] 2026-06-13 20:01:54
[2026-06-13 20:01:54,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:01:54,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:01:54,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:01:55,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:01:55,108.108 INFO    ] time= 13/06/2026 20:01:55
[2026-06-13 20:01:55,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:01:55,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:01:55,229.229 INFO    ] No existing commands found in stream
[2026-06-13 20:02:00,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:00,243.243 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 20:02:02,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:02:02,174.174 INFO    ] Checking for system updates...
[2026-06-13 20:02:02,195.195 INFO    ] 200
[2026-06-13 20:02:02,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:02,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:02,230.230 INFO    ] No update needed
[2026-06-13 20:02:02,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:02,251.251 INFO    ] 200
[2026-06-13 20:02:02,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:02,276.276 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:02,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:02,300.300 INFO    ] No camera update needed
[2026-06-13 20:02:02,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:02,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:02,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:02,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:02:04,348.348 INFO    ] ================================================
[2026-06-13 20:02:04,363.363 INFO    ] Launching Daemon at Sat Jun 13 20:02:04 IST 2026
[2026-06-13 20:02:04,374.374 INFO    ] ================================================
[2026-06-13 20:02:04,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:02:04
[2026-06-13 20:02:05,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:02:05,189.189 INFO    ] Initializing speech engine...
[2026-06-13 20:02:05,194.194 INFO    ] 2026-06-13 20:02:05
[2026-06-13 20:02:05,398.398 INFO    ] 2026-06-13 20:02:05
[2026-06-13 20:02:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:02:05,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:02:05,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:02:05,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:02:05,808.808 INFO    ] time= 13/06/2026 20:02:05
[2026-06-13 20:02:05,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:02:05,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:02:05,919.919 INFO    ] No existing commands found in stream
[2026-06-13 20:02:10,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:10,931.931 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 20:02:13,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:02:13,692.692 INFO    ] Checking for system updates...
[2026-06-13 20:02:13,713.713 INFO    ] 200
[2026-06-13 20:02:13,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:13,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:02:13,746.746 INFO    ] No update needed
[2026-06-13 20:02:13,748.748 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:13,767.767 INFO    ] 200
[2026-06-13 20:02:13,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:13,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:13,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:02:13,829.829 INFO    ] No camera update needed
[2026-06-13 20:02:13,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:13,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:13,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:13,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:02:15,878.878 INFO    ] ================================================
[2026-06-13 20:02:15,893.893 INFO    ] Launching Daemon at Sat Jun 13 20:02:15 IST 2026
[2026-06-13 20:02:15,904.904 INFO    ] ================================================
[2026-06-13 20:02:16,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:02:16
[2026-06-13 20:02:16,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:02:16,772.772 INFO    ] Initializing speech engine...
[2026-06-13 20:02:16,776.776 INFO    ] 2026-06-13 20:02:16
[2026-06-13 20:02:16,985.985 INFO    ] 2026-06-13 20:02:16
[2026-06-13 20:02:17,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:02:17,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:02:17,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:02:17,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:02:17,390.390 INFO    ] time= 13/06/2026 20:02:17
[2026-06-13 20:02:17,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:02:17,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:02:17,507.507 INFO    ] No existing commands found in stream
[2026-06-13 20:02:22,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:22,520.520 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 20:02:25,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:02:25,644.644 INFO    ] Checking for system updates...
[2026-06-13 20:02:25,667.667 INFO    ] 200
[2026-06-13 20:02:25,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:25,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:25,706.706 INFO    ] No update needed
[2026-06-13 20:02:25,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:25,731.731 INFO    ] 200
[2026-06-13 20:02:25,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:25,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:25,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:25,804.804 INFO    ] No camera update needed
[2026-06-13 20:02:25,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:25,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:25,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:25,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:02:27,856.856 INFO    ] ================================================
[2026-06-13 20:02:27,872.872 INFO    ] Launching Daemon at Sat Jun 13 20:02:27 IST 2026
[2026-06-13 20:02:27,883.883 INFO    ] ================================================
[2026-06-13 20:02:28,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:02:28
[2026-06-13 20:02:29,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:02:29,382.382 INFO    ] Initializing speech engine...
[2026-06-13 20:02:29,402.402 INFO    ] 2026-06-13 20:02:29
[2026-06-13 20:02:29,629.629 INFO    ] 2026-06-13 20:02:29
[2026-06-13 20:02:29,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:02:29,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:02:29,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:02:29,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:02:30,059.059 INFO    ] time= 13/06/2026 20:02:30
[2026-06-13 20:02:30,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:02:30,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:02:30,179.179 INFO    ] No existing commands found in stream
[2026-06-13 20:02:35,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:35,193.193 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 20:02:37,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:02:37,214.214 INFO    ] Checking for system updates...
[2026-06-13 20:02:37,237.237 INFO    ] 200
[2026-06-13 20:02:37,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:37,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:02:37,274.274 INFO    ] No update needed
[2026-06-13 20:02:37,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:37,295.295 INFO    ] 200
[2026-06-13 20:02:37,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:37,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:37,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:02:37,360.360 INFO    ] No camera update needed
[2026-06-13 20:02:37,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:37,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:37,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:37,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:02:39,400.400 INFO    ] ================================================
[2026-06-13 20:02:39,415.415 INFO    ] Launching Daemon at Sat Jun 13 20:02:39 IST 2026
[2026-06-13 20:02:39,425.425 INFO    ] ================================================
[2026-06-13 20:02:39,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:02:39
[2026-06-13 20:02:40,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:02:40,960.960 INFO    ] Initializing speech engine...
[2026-06-13 20:02:40,968.968 INFO    ] 2026-06-13 20:02:40
[2026-06-13 20:02:41,237.237 INFO    ] 2026-06-13 20:02:41
[2026-06-13 20:02:41,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:02:41,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:02:41,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:02:41,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:02:41,676.676 INFO    ] time= 13/06/2026 20:02:41
[2026-06-13 20:02:41,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:02:41,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:02:41,794.794 INFO    ] No existing commands found in stream
[2026-06-13 20:02:46,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:46,814.814 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 20:02:47,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:02:47,766.766 INFO    ] Checking for system updates...
[2026-06-13 20:02:47,787.787 INFO    ] 200
[2026-06-13 20:02:47,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:47,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:47,820.820 INFO    ] No update needed
[2026-06-13 20:02:47,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:47,841.841 INFO    ] 200
[2026-06-13 20:02:47,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:47,866.866 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:47,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:47,895.895 INFO    ] No camera update needed
[2026-06-13 20:02:47,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:47,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:47,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:47,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:02:49,944.944 INFO    ] ================================================
[2026-06-13 20:02:49,960.960 INFO    ] Launching Daemon at Sat Jun 13 20:02:49 IST 2026
[2026-06-13 20:02:49,971.971 INFO    ] ================================================
[2026-06-13 20:02:50,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:02:50
[2026-06-13 20:02:50,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:02:50,781.781 INFO    ] Initializing speech engine...
[2026-06-13 20:02:50,792.792 INFO    ] 2026-06-13 20:02:50
[2026-06-13 20:02:50,998.998 INFO    ] 2026-06-13 20:02:50
[2026-06-13 20:02:51,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:02:51,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:02:51,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:02:51,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:02:51,413.413 INFO    ] time= 13/06/2026 20:02:51
[2026-06-13 20:02:51,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:02:51,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:02:51,520.520 INFO    ] No existing commands found in stream
[2026-06-13 20:02:56,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:02:56,529.529 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 20:02:58,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:02:58,857.857 INFO    ] Checking for system updates...
[2026-06-13 20:02:58,877.877 INFO    ] 200
[2026-06-13 20:02:58,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:58,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:02:58,912.912 INFO    ] No update needed
[2026-06-13 20:02:58,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 20:02:58,933.933 INFO    ] 200
[2026-06-13 20:02:58,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:02:58,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:02:58,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:02:58,997.997 INFO    ] No camera update needed
[2026-06-13 20:02:58,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:02:59,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:02:59,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:02:59,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:01,046.046 INFO    ] ================================================
[2026-06-13 20:03:01,063.063 INFO    ] Launching Daemon at Sat Jun 13 20:03:01 IST 2026
[2026-06-13 20:03:01,075.075 INFO    ] ================================================
[2026-06-13 20:03:01,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:01
[2026-06-13 20:03:01,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:02,074.074 INFO    ] Initializing speech engine...
[2026-06-13 20:03:02,078.078 INFO    ] 2026-06-13 20:03:02
[2026-06-13 20:03:02,296.296 INFO    ] 2026-06-13 20:03:02
[2026-06-13 20:03:02,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:02,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:02,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:02,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:02,580.580 INFO    ] time= 13/06/2026 20:03:02
[2026-06-13 20:03:02,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:02,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:02,682.682 INFO    ] No existing commands found in stream
[2026-06-13 20:03:07,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:03:07,716.716 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 20:03:11,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:03:11,193.193 INFO    ] Checking for system updates...
[2026-06-13 20:03:11,215.215 INFO    ] 200
[2026-06-13 20:03:11,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:11,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:11,249.249 INFO    ] No update needed
[2026-06-13 20:03:11,250.250 INFO    ] Checking for camera pi updates...
[2026-06-13 20:03:11,274.274 INFO    ] 200
[2026-06-13 20:03:11,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:11,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:03:11,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:11,338.338 INFO    ] No camera update needed
[2026-06-13 20:03:11,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:03:11,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:03:11,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:03:11,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:13,381.381 INFO    ] ================================================
[2026-06-13 20:03:13,391.391 INFO    ] Launching Daemon at Sat Jun 13 20:03:13 IST 2026
[2026-06-13 20:03:13,398.398 INFO    ] ================================================
[2026-06-13 20:03:13,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:13
[2026-06-13 20:03:14,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:14,172.172 INFO    ] Initializing speech engine...
[2026-06-13 20:03:14,177.177 INFO    ] 2026-06-13 20:03:14
[2026-06-13 20:03:14,384.384 INFO    ] 2026-06-13 20:03:14
[2026-06-13 20:03:14,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:14,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:14,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:14,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:14,787.787 INFO    ] time= 13/06/2026 20:03:14
[2026-06-13 20:03:14,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:14,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:14,909.909 INFO    ] No existing commands found in stream
[2026-06-13 20:03:19,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:03:19,925.925 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 20:03:22,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:03:22,185.185 INFO    ] Checking for system updates...
[2026-06-13 20:03:22,208.208 INFO    ] 200
[2026-06-13 20:03:22,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:22,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:22,242.242 INFO    ] No update needed
[2026-06-13 20:03:22,243.243 INFO    ] Checking for camera pi updates...
[2026-06-13 20:03:22,263.263 INFO    ] 200
[2026-06-13 20:03:22,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:22,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:03:22,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:22,438.438 INFO    ] No camera update needed
[2026-06-13 20:03:22,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:03:22,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:03:22,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:03:22,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:24,486.486 INFO    ] ================================================
[2026-06-13 20:03:24,503.503 INFO    ] Launching Daemon at Sat Jun 13 20:03:24 IST 2026
[2026-06-13 20:03:24,514.514 INFO    ] ================================================
[2026-06-13 20:03:24,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:24
[2026-06-13 20:03:25,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:25,326.326 INFO    ] Initializing speech engine...
[2026-06-13 20:03:25,339.339 INFO    ] 2026-06-13 20:03:25
[2026-06-13 20:03:25,557.557 INFO    ] 2026-06-13 20:03:25
[2026-06-13 20:03:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:25,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:25,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:25,935.935 INFO    ] time= 13/06/2026 20:03:25
[2026-06-13 20:03:25,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:26,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:26,138.138 INFO    ] No existing commands found in stream
[2026-06-13 20:03:31,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:03:31,150.150 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 20:03:33,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:03:33,685.685 INFO    ] Checking for system updates...
[2026-06-13 20:03:33,705.705 INFO    ] 200
[2026-06-13 20:03:33,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:33,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:33,738.738 INFO    ] No update needed
[2026-06-13 20:03:33,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 20:03:33,763.763 INFO    ] 200
[2026-06-13 20:03:33,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:33,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:03:33,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:33,818.818 INFO    ] No camera update needed
[2026-06-13 20:03:33,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:03:33,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:03:33,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:03:33,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:35,866.866 INFO    ] ================================================
[2026-06-13 20:03:35,881.881 INFO    ] Launching Daemon at Sat Jun 13 20:03:35 IST 2026
[2026-06-13 20:03:35,892.892 INFO    ] ================================================
[2026-06-13 20:03:36,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:36
[2026-06-13 20:03:36,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:36,716.716 INFO    ] Initializing speech engine...
[2026-06-13 20:03:36,720.720 INFO    ] 2026-06-13 20:03:36
[2026-06-13 20:03:36,948.948 INFO    ] 2026-06-13 20:03:36
[2026-06-13 20:03:36,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:37,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:37,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:37,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:37,378.378 INFO    ] time= 13/06/2026 20:03:37
[2026-06-13 20:03:37,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:37,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:37,498.498 INFO    ] No existing commands found in stream
[2026-06-13 20:03:42,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:03:42,512.512 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 20:03:43,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:03:43,922.922 INFO    ] Checking for system updates...
[2026-06-13 20:03:43,944.944 INFO    ] 200
[2026-06-13 20:03:43,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:43,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:43,977.977 INFO    ] No update needed
[2026-06-13 20:03:43,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 20:03:43,998.998 INFO    ] 200
[2026-06-13 20:03:44,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:44,025.025 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:03:44,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:44,060.060 INFO    ] No camera update needed
[2026-06-13 20:03:44,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:03:44,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:03:44,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:03:44,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:46,107.107 INFO    ] ================================================
[2026-06-13 20:03:46,123.123 INFO    ] Launching Daemon at Sat Jun 13 20:03:46 IST 2026
[2026-06-13 20:03:46,134.134 INFO    ] ================================================
[2026-06-13 20:03:46,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:46
[2026-06-13 20:03:46,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:46,913.913 INFO    ] Initializing speech engine...
[2026-06-13 20:03:46,921.921 INFO    ] 2026-06-13 20:03:46
[2026-06-13 20:03:47,138.138 INFO    ] 2026-06-13 20:03:47
[2026-06-13 20:03:47,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:47,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:47,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:47,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:47,562.562 INFO    ] time= 13/06/2026 20:03:47
[2026-06-13 20:03:47,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:47,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:47,692.692 INFO    ] No existing commands found in stream
[2026-06-13 20:03:52,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:03:52,705.705 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 20:03:53,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:03:53,806.806 INFO    ] Checking for system updates...
[2026-06-13 20:03:53,842.842 INFO    ] 200
[2026-06-13 20:03:53,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:53,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:53,900.900 INFO    ] No update needed
[2026-06-13 20:03:53,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 20:03:53,937.937 INFO    ] 200
[2026-06-13 20:03:53,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:03:53,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:03:54,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:03:54,010.010 INFO    ] No camera update needed
[2026-06-13 20:03:54,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:03:54,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:03:54,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:03:54,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:03:56,056.056 INFO    ] ================================================
[2026-06-13 20:03:56,071.071 INFO    ] Launching Daemon at Sat Jun 13 20:03:56 IST 2026
[2026-06-13 20:03:56,082.082 INFO    ] ================================================
[2026-06-13 20:03:56,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:03:56
[2026-06-13 20:03:56,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:03:56,913.913 INFO    ] Initializing speech engine...
[2026-06-13 20:03:56,924.924 INFO    ] 2026-06-13 20:03:56
[2026-06-13 20:03:57,129.129 INFO    ] 2026-06-13 20:03:57
[2026-06-13 20:03:57,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:03:57,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:03:57,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:03:57,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:03:57,543.543 INFO    ] time= 13/06/2026 20:03:57
[2026-06-13 20:03:57,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:03:57,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:03:57,648.648 INFO    ] No existing commands found in stream
[2026-06-13 20:04:02,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:02,660.660 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 20:04:04,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:04:04,786.786 INFO    ] Checking for system updates...
[2026-06-13 20:04:04,823.823 INFO    ] 200
[2026-06-13 20:04:04,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:04,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:04,885.885 INFO    ] No update needed
[2026-06-13 20:04:04,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 20:04:04,922.922 INFO    ] 200
[2026-06-13 20:04:04,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:04,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:04:05,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:05,011.011 INFO    ] No camera update needed
[2026-06-13 20:04:05,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:04:05,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:04:05,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:04:05,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:04:07,068.068 INFO    ] ================================================
[2026-06-13 20:04:07,083.083 INFO    ] Launching Daemon at Sat Jun 13 20:04:07 IST 2026
[2026-06-13 20:04:07,094.094 INFO    ] ================================================
[2026-06-13 20:04:07,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:04:07
[2026-06-13 20:04:07,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:04:07,884.884 INFO    ] Initializing speech engine...
[2026-06-13 20:04:07,888.888 INFO    ] 2026-06-13 20:04:07
[2026-06-13 20:04:08,091.091 INFO    ] 2026-06-13 20:04:08
[2026-06-13 20:04:08,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:04:08,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:04:08,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:04:08,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:04:08,472.472 INFO    ] time= 13/06/2026 20:04:08
[2026-06-13 20:04:08,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:04:08,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:04:08,598.598 INFO    ] No existing commands found in stream
[2026-06-13 20:04:13,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:13,613.613 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 20:04:16,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:04:16,154.154 INFO    ] Checking for system updates...
[2026-06-13 20:04:16,175.175 INFO    ] 200
[2026-06-13 20:04:16,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:16,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:04:16,208.208 INFO    ] No update needed
[2026-06-13 20:04:16,210.210 INFO    ] Checking for camera pi updates...
[2026-06-13 20:04:16,231.231 INFO    ] 200
[2026-06-13 20:04:16,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:16,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:04:16,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:04:16,295.295 INFO    ] No camera update needed
[2026-06-13 20:04:16,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:04:16,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:04:16,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:04:16,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:04:18,340.340 INFO    ] ================================================
[2026-06-13 20:04:18,356.356 INFO    ] Launching Daemon at Sat Jun 13 20:04:18 IST 2026
[2026-06-13 20:04:18,367.367 INFO    ] ================================================
[2026-06-13 20:04:18,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:04:18
[2026-06-13 20:04:19,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:04:19,183.183 INFO    ] Initializing speech engine...
[2026-06-13 20:04:19,191.191 INFO    ] 2026-06-13 20:04:19
[2026-06-13 20:04:19,444.444 INFO    ] 2026-06-13 20:04:19
[2026-06-13 20:04:19,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:04:19,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:04:19,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:04:19,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:04:19,788.788 INFO    ] time= 13/06/2026 20:04:19
[2026-06-13 20:04:19,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:04:19,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:04:19,899.899 INFO    ] No existing commands found in stream
[2026-06-13 20:04:24,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:24,914.914 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 20:04:25,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:04:25,953.953 INFO    ] Checking for system updates...
[2026-06-13 20:04:25,974.974 INFO    ] 200
[2026-06-13 20:04:25,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:26,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:04:26,010.010 INFO    ] No update needed
[2026-06-13 20:04:26,011.011 INFO    ] Checking for camera pi updates...
[2026-06-13 20:04:26,031.031 INFO    ] 200
[2026-06-13 20:04:26,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:26,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:04:26,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:04:26,092.092 INFO    ] No camera update needed
[2026-06-13 20:04:26,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:04:26,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:04:26,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:04:26,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:04:28,139.139 INFO    ] ================================================
[2026-06-13 20:04:28,154.154 INFO    ] Launching Daemon at Sat Jun 13 20:04:28 IST 2026
[2026-06-13 20:04:28,165.165 INFO    ] ================================================
[2026-06-13 20:04:28,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:04:28
[2026-06-13 20:04:28,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:04:28,992.992 INFO    ] Initializing speech engine...
[2026-06-13 20:04:28,996.996 INFO    ] 2026-06-13 20:04:28
[2026-06-13 20:04:29,200.200 INFO    ] 2026-06-13 20:04:29
[2026-06-13 20:04:29,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:04:29,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:04:29,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:04:29,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:04:29,606.606 INFO    ] time= 13/06/2026 20:04:29
[2026-06-13 20:04:29,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:04:29,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:04:29,714.714 INFO    ] No existing commands found in stream
[2026-06-13 20:04:34,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:34,728.728 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 20:04:36,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:04:36,843.843 INFO    ] Checking for system updates...
[2026-06-13 20:04:36,865.865 INFO    ] 200
[2026-06-13 20:04:36,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:36,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:36,898.898 INFO    ] No update needed
[2026-06-13 20:04:36,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 20:04:36,919.919 INFO    ] 200
[2026-06-13 20:04:36,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:36,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:04:36,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:36,987.987 INFO    ] No camera update needed
[2026-06-13 20:04:36,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:04:36,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:04:36,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:04:36,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:04:39,025.025 INFO    ] ================================================
[2026-06-13 20:04:39,033.033 INFO    ] Launching Daemon at Sat Jun 13 20:04:39 IST 2026
[2026-06-13 20:04:39,039.039 INFO    ] ================================================
[2026-06-13 20:04:39,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:04:39
[2026-06-13 20:04:39,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:04:39,890.890 INFO    ] Initializing speech engine...
[2026-06-13 20:04:39,895.895 INFO    ] 2026-06-13 20:04:39
[2026-06-13 20:04:40,103.103 INFO    ] 2026-06-13 20:04:40
[2026-06-13 20:04:40,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:04:40,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:04:40,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:04:40,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:04:40,509.509 INFO    ] time= 13/06/2026 20:04:40
[2026-06-13 20:04:40,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:04:40,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:04:40,627.627 INFO    ] No existing commands found in stream
[2026-06-13 20:04:45,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:45,639.639 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 20:04:49,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:04:49,670.670 INFO    ] Checking for system updates...
[2026-06-13 20:04:49,691.691 INFO    ] 200
[2026-06-13 20:04:49,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:49,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:49,724.724 INFO    ] No update needed
[2026-06-13 20:04:49,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 20:04:49,745.745 INFO    ] 200
[2026-06-13 20:04:49,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:04:49,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:04:49,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:04:49,817.817 INFO    ] No camera update needed
[2026-06-13 20:04:49,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:04:49,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:04:49,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:04:49,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:04:51,864.864 INFO    ] ================================================
[2026-06-13 20:04:51,880.880 INFO    ] Launching Daemon at Sat Jun 13 20:04:51 IST 2026
[2026-06-13 20:04:51,890.890 INFO    ] ================================================
[2026-06-13 20:04:52,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:04:52
[2026-06-13 20:04:52,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:04:52,738.738 INFO    ] Initializing speech engine...
[2026-06-13 20:04:52,748.748 INFO    ] 2026-06-13 20:04:52
[2026-06-13 20:04:52,949.949 INFO    ] 2026-06-13 20:04:52
[2026-06-13 20:04:53,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:04:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:04:53,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:04:53,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:04:53,394.394 INFO    ] time= 13/06/2026 20:04:53
[2026-06-13 20:04:53,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:04:53,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:04:53,525.525 INFO    ] No existing commands found in stream
[2026-06-13 20:04:58,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:04:58,561.561 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 20:05:01,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:05:01,451.451 INFO    ] Checking for system updates...
[2026-06-13 20:05:01,472.472 INFO    ] 200
[2026-06-13 20:05:01,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:01,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:01,506.506 INFO    ] No update needed
[2026-06-13 20:05:01,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:01,528.528 INFO    ] 200
[2026-06-13 20:05:01,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:01,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:01,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:01,609.609 INFO    ] No camera update needed
[2026-06-13 20:05:01,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:01,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:01,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:01,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:05:03,653.653 INFO    ] ================================================
[2026-06-13 20:05:03,668.668 INFO    ] Launching Daemon at Sat Jun 13 20:05:03 IST 2026
[2026-06-13 20:05:03,680.680 INFO    ] ================================================
[2026-06-13 20:05:04,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:05:04
[2026-06-13 20:05:04,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:05:04,485.485 INFO    ] Initializing speech engine...
[2026-06-13 20:05:04,490.490 INFO    ] 2026-06-13 20:05:04
[2026-06-13 20:05:04,698.698 INFO    ] 2026-06-13 20:05:04
[2026-06-13 20:05:04,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:05:04,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:05:04,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:05:05,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:05:05,102.102 INFO    ] time= 13/06/2026 20:05:05
[2026-06-13 20:05:05,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:05:05,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:05:05,220.220 INFO    ] No existing commands found in stream
[2026-06-13 20:05:10,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:05:10,237.237 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 20:05:12,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:05:12,694.694 INFO    ] Checking for system updates...
[2026-06-13 20:05:12,715.715 INFO    ] 200
[2026-06-13 20:05:12,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:12,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:05:12,749.749 INFO    ] No update needed
[2026-06-13 20:05:12,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:12,770.770 INFO    ] 200
[2026-06-13 20:05:12,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:12,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:12,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:05:12,833.833 INFO    ] No camera update needed
[2026-06-13 20:05:12,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:12,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:12,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:12,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:05:14,881.881 INFO    ] ================================================
[2026-06-13 20:05:14,896.896 INFO    ] Launching Daemon at Sat Jun 13 20:05:14 IST 2026
[2026-06-13 20:05:14,907.907 INFO    ] ================================================
[2026-06-13 20:05:15,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:05:15
[2026-06-13 20:05:15,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:05:15,734.734 INFO    ] Initializing speech engine...
[2026-06-13 20:05:15,744.744 INFO    ] 2026-06-13 20:05:15
[2026-06-13 20:05:15,951.951 INFO    ] 2026-06-13 20:05:15
[2026-06-13 20:05:15,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:05:16,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:05:16,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:05:16,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:05:16,359.359 INFO    ] time= 13/06/2026 20:05:16
[2026-06-13 20:05:16,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:05:16,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:05:16,469.469 INFO    ] No existing commands found in stream
[2026-06-13 20:05:21,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:05:21,480.480 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 20:05:22,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:05:22,778.778 INFO    ] Checking for system updates...
[2026-06-13 20:05:22,799.799 INFO    ] 200
[2026-06-13 20:05:22,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:22,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:22,831.831 INFO    ] No update needed
[2026-06-13 20:05:22,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:22,854.854 INFO    ] 200
[2026-06-13 20:05:22,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:22,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:22,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:22,921.921 INFO    ] No camera update needed
[2026-06-13 20:05:22,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:22,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:22,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:22,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:05:24,970.970 INFO    ] ================================================
[2026-06-13 20:05:24,986.986 INFO    ] Launching Daemon at Sat Jun 13 20:05:24 IST 2026
[2026-06-13 20:05:25,996.996 INFO    ] ================================================
[2026-06-13 20:05:25,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:05:25
[2026-06-13 20:05:25,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:05:25,787.787 INFO    ] Initializing speech engine...
[2026-06-13 20:05:25,797.797 INFO    ] 2026-06-13 20:05:25
[2026-06-13 20:05:26,002.002 INFO    ] 2026-06-13 20:05:25
[2026-06-13 20:05:26,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:05:26,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:05:26,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:05:26,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:05:26,417.417 INFO    ] time= 13/06/2026 20:05:26
[2026-06-13 20:05:26,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:05:26,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:05:26,524.524 INFO    ] No existing commands found in stream
[2026-06-13 20:05:31,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:05:31,536.536 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 20:05:35,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:05:35,477.477 INFO    ] Checking for system updates...
[2026-06-13 20:05:35,497.497 INFO    ] 200
[2026-06-13 20:05:35,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:35,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:35,533.533 INFO    ] No update needed
[2026-06-13 20:05:35,534.534 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:35,554.554 INFO    ] 200
[2026-06-13 20:05:35,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:35,581.581 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:35,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:35,620.620 INFO    ] No camera update needed
[2026-06-13 20:05:35,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:35,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:35,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:35,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:05:37,668.668 INFO    ] ================================================
[2026-06-13 20:05:37,685.685 INFO    ] Launching Daemon at Sat Jun 13 20:05:37 IST 2026
[2026-06-13 20:05:37,696.696 INFO    ] ================================================
[2026-06-13 20:05:38,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:05:38
[2026-06-13 20:05:38,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:05:38,930.930 INFO    ] Initializing speech engine...
[2026-06-13 20:05:38,939.939 INFO    ] 2026-06-13 20:05:38
[2026-06-13 20:05:39,186.186 INFO    ] 2026-06-13 20:05:39
[2026-06-13 20:05:39,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:05:39,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:05:39,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:05:39,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:05:39,637.637 INFO    ] time= 13/06/2026 20:05:39
[2026-06-13 20:05:39,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:05:39,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:05:39,807.807 INFO    ] No existing commands found in stream
[2026-06-13 20:05:44,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:05:44,822.822 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 20:05:46,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:05:46,852.852 INFO    ] Checking for system updates...
[2026-06-13 20:05:46,873.873 INFO    ] 200
[2026-06-13 20:05:46,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:46,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:05:46,906.906 INFO    ] No update needed
[2026-06-13 20:05:46,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:46,928.928 INFO    ] 200
[2026-06-13 20:05:46,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:46,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:46,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:05:46,991.991 INFO    ] No camera update needed
[2026-06-13 20:05:46,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:46,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:46,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:05:49,038.038 INFO    ] ================================================
[2026-06-13 20:05:49,054.054 INFO    ] Launching Daemon at Sat Jun 13 20:05:49 IST 2026
[2026-06-13 20:05:49,066.066 INFO    ] ================================================
[2026-06-13 20:05:49,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:05:49
[2026-06-13 20:05:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:05:49,874.874 INFO    ] Initializing speech engine...
[2026-06-13 20:05:49,879.879 INFO    ] 2026-06-13 20:05:49
[2026-06-13 20:05:50,084.084 INFO    ] 2026-06-13 20:05:50
[2026-06-13 20:05:50,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:05:50,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:05:50,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:05:50,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:05:50,474.474 INFO    ] time= 13/06/2026 20:05:50
[2026-06-13 20:05:50,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:05:50,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:05:50,606.606 INFO    ] No existing commands found in stream
[2026-06-13 20:05:55,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:05:55,618.618 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 20:05:58,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:05:58,927.927 INFO    ] Checking for system updates...
[2026-06-13 20:05:58,947.947 INFO    ] 200
[2026-06-13 20:05:58,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:58,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:58,983.983 INFO    ] No update needed
[2026-06-13 20:05:58,984.984 INFO    ] Checking for camera pi updates...
[2026-06-13 20:05:59,022.022 INFO    ] 200
[2026-06-13 20:05:59,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:05:59,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:05:59,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:05:59,112.112 INFO    ] No camera update needed
[2026-06-13 20:05:59,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:05:59,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:05:59,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:05:59,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:01,187.187 INFO    ] ================================================
[2026-06-13 20:06:01,202.202 INFO    ] Launching Daemon at Sat Jun 13 20:06:01 IST 2026
[2026-06-13 20:06:01,213.213 INFO    ] ================================================
[2026-06-13 20:06:01,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:01
[2026-06-13 20:06:01,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:02,033.033 INFO    ] Initializing speech engine...
[2026-06-13 20:06:02,036.036 INFO    ] 2026-06-13 20:06:02
[2026-06-13 20:06:02,341.341 INFO    ] 2026-06-13 20:06:02
[2026-06-13 20:06:02,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:02,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:02,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:06:02,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:06:02,675.675 INFO    ] time= 13/06/2026 20:06:02
[2026-06-13 20:06:02,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:06:02,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:06:02,818.818 INFO    ] No existing commands found in stream
[2026-06-13 20:06:07,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:06:07,846.846 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 20:06:08,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:06:08,329.329 INFO    ] Checking for system updates...
[2026-06-13 20:06:08,350.350 INFO    ] 200
[2026-06-13 20:06:08,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:08,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:06:08,385.385 INFO    ] No update needed
[2026-06-13 20:06:08,386.386 INFO    ] Checking for camera pi updates...
[2026-06-13 20:06:08,406.406 INFO    ] 200
[2026-06-13 20:06:08,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:08,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:06:08,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:06:08,479.479 INFO    ] No camera update needed
[2026-06-13 20:06:08,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:06:08,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:06:08,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:06:08,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:10,528.528 INFO    ] ================================================
[2026-06-13 20:06:10,976.976 INFO    ] Launching Daemon at Sat Jun 13 20:06:10 IST 2026
[2026-06-13 20:06:10,990.990 INFO    ] ================================================
[2026-06-13 20:06:11,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:11
[2026-06-13 20:06:11,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:12,150.150 INFO    ] Initializing speech engine...
[2026-06-13 20:06:12,158.158 INFO    ] 2026-06-13 20:06:12
[2026-06-13 20:06:12,410.410 INFO    ] 2026-06-13 20:06:12
[2026-06-13 20:06:12,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:12,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:06:12,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:06:12,855.855 INFO    ] time= 13/06/2026 20:06:12
[2026-06-13 20:06:12,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:06:12,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:06:13,038.038 INFO    ] No existing commands found in stream
[2026-06-13 20:06:18,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:06:18,052.052 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 20:06:21,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:06:21,500.500 INFO    ] Checking for system updates...
[2026-06-13 20:06:21,520.520 INFO    ] 200
[2026-06-13 20:06:21,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:21,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:06:21,553.553 INFO    ] No update needed
[2026-06-13 20:06:21,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 20:06:21,574.574 INFO    ] 200
[2026-06-13 20:06:21,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:21,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:06:21,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:21,640.640 INFO    ] No camera update needed
[2026-06-13 20:06:21,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:06:21,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:06:21,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:06:21,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:23,686.686 INFO    ] ================================================
[2026-06-13 20:06:23,702.702 INFO    ] Launching Daemon at Sat Jun 13 20:06:23 IST 2026
[2026-06-13 20:06:23,713.713 INFO    ] ================================================
[2026-06-13 20:06:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:24
[2026-06-13 20:06:24,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:24,501.501 INFO    ] Initializing speech engine...
[2026-06-13 20:06:24,508.508 INFO    ] 2026-06-13 20:06:24
[2026-06-13 20:06:24,721.721 INFO    ] 2026-06-13 20:06:24
[2026-06-13 20:06:24,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:24,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:24,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:06:25,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:06:25,129.129 INFO    ] time= 13/06/2026 20:06:25
[2026-06-13 20:06:25,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:06:25,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:06:25,240.240 INFO    ] No existing commands found in stream
[2026-06-13 20:06:30,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:06:30,252.252 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 20:06:33,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:06:33,263.263 INFO    ] Checking for system updates...
[2026-06-13 20:06:33,285.285 INFO    ] 200
[2026-06-13 20:06:33,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:33,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:33,319.319 INFO    ] No update needed
[2026-06-13 20:06:33,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 20:06:33,340.340 INFO    ] 200
[2026-06-13 20:06:33,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:33,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:06:33,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:33,403.403 INFO    ] No camera update needed
[2026-06-13 20:06:33,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:06:33,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:06:33,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:06:33,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:35,453.453 INFO    ] ================================================
[2026-06-13 20:06:35,469.469 INFO    ] Launching Daemon at Sat Jun 13 20:06:35 IST 2026
[2026-06-13 20:06:35,479.479 INFO    ] ================================================
[2026-06-13 20:06:35,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:35
[2026-06-13 20:06:36,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:36,324.324 INFO    ] Initializing speech engine...
[2026-06-13 20:06:36,333.333 INFO    ] 2026-06-13 20:06:36
[2026-06-13 20:06:36,538.538 INFO    ] 2026-06-13 20:06:36
[2026-06-13 20:06:36,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:36,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:06:36,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:06:36,950.950 INFO    ] time= 13/06/2026 20:06:36
[2026-06-13 20:06:36,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:06:36,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:06:37,061.061 INFO    ] No existing commands found in stream
[2026-06-13 20:06:42,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:06:42,073.073 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 20:06:44,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:06:44,226.226 INFO    ] Checking for system updates...
[2026-06-13 20:06:44,246.246 INFO    ] 200
[2026-06-13 20:06:44,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:44,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:44,280.280 INFO    ] No update needed
[2026-06-13 20:06:44,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 20:06:44,304.304 INFO    ] 200
[2026-06-13 20:06:44,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:44,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:06:44,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:44,368.368 INFO    ] No camera update needed
[2026-06-13 20:06:44,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:06:44,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:06:44,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:06:44,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:46,415.415 INFO    ] ================================================
[2026-06-13 20:06:46,431.431 INFO    ] Launching Daemon at Sat Jun 13 20:06:46 IST 2026
[2026-06-13 20:06:46,442.442 INFO    ] ================================================
[2026-06-13 20:06:46,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:46
[2026-06-13 20:06:47,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:47,250.250 INFO    ] Initializing speech engine...
[2026-06-13 20:06:47,255.255 INFO    ] 2026-06-13 20:06:47
[2026-06-13 20:06:47,459.459 INFO    ] 2026-06-13 20:06:47
[2026-06-13 20:06:47,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:47,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:47,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:06:47,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:06:47,876.876 INFO    ] time= 13/06/2026 20:06:47
[2026-06-13 20:06:47,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:06:47,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:06:47,975.975 INFO    ] No existing commands found in stream
[2026-06-13 20:06:52,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:06:52,986.986 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 20:06:56,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:06:56,260.260 INFO    ] Checking for system updates...
[2026-06-13 20:06:56,294.294 INFO    ] 200
[2026-06-13 20:06:56,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:56,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:56,331.331 INFO    ] No update needed
[2026-06-13 20:06:56,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 20:06:56,355.355 INFO    ] 200
[2026-06-13 20:06:56,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:06:56,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:06:56,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:06:56,423.423 INFO    ] No camera update needed
[2026-06-13 20:06:56,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:06:56,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:06:56,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:06:56,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:06:58,473.473 INFO    ] ================================================
[2026-06-13 20:06:58,489.489 INFO    ] Launching Daemon at Sat Jun 13 20:06:58 IST 2026
[2026-06-13 20:06:58,500.500 INFO    ] ================================================
[2026-06-13 20:06:58,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:06:58
[2026-06-13 20:06:59,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:06:59,379.379 INFO    ] Initializing speech engine...
[2026-06-13 20:06:59,387.387 INFO    ] 2026-06-13 20:06:59
[2026-06-13 20:06:59,587.587 INFO    ] 2026-06-13 20:06:59
[2026-06-13 20:06:59,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:06:59,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:06:59,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:00,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:00,052.052 INFO    ] time= 13/06/2026 20:07:00
[2026-06-13 20:07:00,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:00,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:00,175.175 INFO    ] No existing commands found in stream
[2026-06-13 20:07:05,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:07:05,212.212 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 20:07:09,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:07:09,025.025 INFO    ] Checking for system updates...
[2026-06-13 20:07:09,045.045 INFO    ] 200
[2026-06-13 20:07:09,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:09,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:07:09,081.081 INFO    ] No update needed
[2026-06-13 20:07:09,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 20:07:09,101.101 INFO    ] 200
[2026-06-13 20:07:09,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:09,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:07:09,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:07:09,171.171 INFO    ] No camera update needed
[2026-06-13 20:07:09,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:07:09,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:07:09,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:07:09,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:07:11,221.221 INFO    ] ================================================
[2026-06-13 20:07:11,237.237 INFO    ] Launching Daemon at Sat Jun 13 20:07:11 IST 2026
[2026-06-13 20:07:11,350.350 INFO    ] ================================================
[2026-06-13 20:07:11,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:07:11
[2026-06-13 20:07:12,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:07:12,180.180 INFO    ] Initializing speech engine...
[2026-06-13 20:07:12,185.185 INFO    ] 2026-06-13 20:07:12
[2026-06-13 20:07:12,390.390 INFO    ] 2026-06-13 20:07:12
[2026-06-13 20:07:12,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:07:12,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:07:12,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:12,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:12,790.790 INFO    ] time= 13/06/2026 20:07:12
[2026-06-13 20:07:12,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:12,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:12,905.905 INFO    ] No existing commands found in stream
[2026-06-13 20:07:17,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:07:17,917.917 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-13 20:07:20,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:07:20,441.441 INFO    ] Checking for system updates...
[2026-06-13 20:07:20,463.463 INFO    ] 200
[2026-06-13 20:07:20,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:20,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:07:20,499.499 INFO    ] No update needed
[2026-06-13 20:07:20,500.500 INFO    ] Checking for camera pi updates...
[2026-06-13 20:07:20,520.520 INFO    ] 200
[2026-06-13 20:07:20,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:20,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:07:20,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:07:20,587.587 INFO    ] No camera update needed
[2026-06-13 20:07:20,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:07:20,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:07:20,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:07:20,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:07:22,637.637 INFO    ] ================================================
[2026-06-13 20:07:22,654.654 INFO    ] Launching Daemon at Sat Jun 13 20:07:22 IST 2026
[2026-06-13 20:07:22,665.665 INFO    ] ================================================
[2026-06-13 20:07:22,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:07:22
[2026-06-13 20:07:23,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:07:23,439.439 INFO    ] Initializing speech engine...
[2026-06-13 20:07:23,444.444 INFO    ] 2026-06-13 20:07:23
[2026-06-13 20:07:23,649.649 INFO    ] 2026-06-13 20:07:23
[2026-06-13 20:07:23,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:07:23,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:07:23,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:24,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:24,070.070 INFO    ] time= 13/06/2026 20:07:24
[2026-06-13 20:07:24,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:24,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:24,202.202 INFO    ] No existing commands found in stream
[2026-06-13 20:07:29,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:07:29,215.215 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 20:07:32,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:07:32,610.610 INFO    ] Checking for system updates...
[2026-06-13 20:07:32,631.631 INFO    ] 200
[2026-06-13 20:07:32,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:32,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:07:32,667.667 INFO    ] No update needed
[2026-06-13 20:07:32,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 20:07:32,688.688 INFO    ] 200
[2026-06-13 20:07:32,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:32,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:07:32,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:07:32,847.847 INFO    ] No camera update needed
[2026-06-13 20:07:32,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:07:32,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:07:32,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:07:32,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:07:34,895.895 INFO    ] ================================================
[2026-06-13 20:07:34,911.911 INFO    ] Launching Daemon at Sat Jun 13 20:07:34 IST 2026
[2026-06-13 20:07:34,922.922 INFO    ] ================================================
[2026-06-13 20:07:35,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:07:35
[2026-06-13 20:07:35,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:07:35,902.902 INFO    ] Initializing speech engine...
[2026-06-13 20:07:35,929.929 INFO    ] 2026-06-13 20:07:35
[2026-06-13 20:07:36,219.219 INFO    ] 2026-06-13 20:07:36
[2026-06-13 20:07:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:07:36,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:07:36,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:36,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:36,587.587 INFO    ] time= 13/06/2026 20:07:36
[2026-06-13 20:07:36,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:36,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:36,670.670 INFO    ] No existing commands found in stream
[2026-06-13 20:07:41,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:07:41,683.683 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-13 20:07:42,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:07:42,630.630 INFO    ] Checking for system updates...
[2026-06-13 20:07:42,652.652 INFO    ] 200
[2026-06-13 20:07:42,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:42,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:07:42,685.685 INFO    ] No update needed
[2026-06-13 20:07:42,686.686 INFO    ] Checking for camera pi updates...
[2026-06-13 20:07:42,706.706 INFO    ] 200
[2026-06-13 20:07:42,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:42,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:07:42,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:07:42,776.776 INFO    ] No camera update needed
[2026-06-13 20:07:42,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:07:42,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:07:42,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:07:42,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:07:44,827.827 INFO    ] ================================================
[2026-06-13 20:07:44,842.842 INFO    ] Launching Daemon at Sat Jun 13 20:07:44 IST 2026
[2026-06-13 20:07:44,853.853 INFO    ] ================================================
[2026-06-13 20:07:45,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:07:45
[2026-06-13 20:07:45,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:07:45,659.659 INFO    ] Initializing speech engine...
[2026-06-13 20:07:45,663.663 INFO    ] 2026-06-13 20:07:45
[2026-06-13 20:07:45,854.854 INFO    ] 2026-06-13 20:07:45
[2026-06-13 20:07:45,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:07:46,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:07:46,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:46,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:46,146.146 INFO    ] time= 13/06/2026 20:07:46
[2026-06-13 20:07:46,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:46,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:46,232.232 INFO    ] No existing commands found in stream
[2026-06-13 20:07:51,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:07:51,267.267 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 20:07:54,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:07:54,282.282 INFO    ] Checking for system updates...
[2026-06-13 20:07:54,305.305 INFO    ] 200
[2026-06-13 20:07:54,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:54,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:07:54,338.338 INFO    ] No update needed
[2026-06-13 20:07:54,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 20:07:54,361.361 INFO    ] 200
[2026-06-13 20:07:54,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:07:54,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:07:54,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:07:54,423.423 INFO    ] No camera update needed
[2026-06-13 20:07:54,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:07:54,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:07:54,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:07:54,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:07:56,472.472 INFO    ] ================================================
[2026-06-13 20:07:56,488.488 INFO    ] Launching Daemon at Sat Jun 13 20:07:56 IST 2026
[2026-06-13 20:07:56,499.499 INFO    ] ================================================
[2026-06-13 20:07:56,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:07:56
[2026-06-13 20:07:57,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:07:57,329.329 INFO    ] Initializing speech engine...
[2026-06-13 20:07:57,334.334 INFO    ] 2026-06-13 20:07:57
[2026-06-13 20:07:57,539.539 INFO    ] 2026-06-13 20:07:57
[2026-06-13 20:07:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:07:57,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:07:57,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:07:57,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:07:57,950.950 INFO    ] time= 13/06/2026 20:07:57
[2026-06-13 20:07:57,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:07:57,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:07:58,057.057 INFO    ] No existing commands found in stream
[2026-06-13 20:08:03,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:03,072.072 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 20:08:04,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:08:04,395.395 INFO    ] Checking for system updates...
[2026-06-13 20:08:04,415.415 INFO    ] 200
[2026-06-13 20:08:04,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:04,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:08:04,449.449 INFO    ] No update needed
[2026-06-13 20:08:04,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 20:08:04,471.471 INFO    ] 200
[2026-06-13 20:08:04,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:04,496.496 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:08:04,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:08:04,537.537 INFO    ] No camera update needed
[2026-06-13 20:08:04,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:08:04,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:08:04,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:08:04,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:08:06,586.586 INFO    ] ================================================
[2026-06-13 20:08:06,601.601 INFO    ] Launching Daemon at Sat Jun 13 20:08:06 IST 2026
[2026-06-13 20:08:06,612.612 INFO    ] ================================================
[2026-06-13 20:08:06,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:08:06
[2026-06-13 20:08:07,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:08:07,490.490 INFO    ] Initializing speech engine...
[2026-06-13 20:08:07,495.495 INFO    ] 2026-06-13 20:08:07
[2026-06-13 20:08:07,704.704 INFO    ] 2026-06-13 20:08:07
[2026-06-13 20:08:07,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:08:07,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:08:07,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:08:08,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:08:08,110.110 INFO    ] time= 13/06/2026 20:08:08
[2026-06-13 20:08:08,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:08:08,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:08:08,222.222 INFO    ] No existing commands found in stream
[2026-06-13 20:08:13,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:13,234.234 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 20:08:16,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:08:16,460.460 INFO    ] Checking for system updates...
[2026-06-13 20:08:16,481.481 INFO    ] 200
[2026-06-13 20:08:16,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:16,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:08:16,515.515 INFO    ] No update needed
[2026-06-13 20:08:16,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 20:08:16,537.537 INFO    ] 200
[2026-06-13 20:08:16,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:16,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:08:16,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:08:16,602.602 INFO    ] No camera update needed
[2026-06-13 20:08:16,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:08:16,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:08:16,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:08:16,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:08:18,648.648 INFO    ] ================================================
[2026-06-13 20:08:18,663.663 INFO    ] Launching Daemon at Sat Jun 13 20:08:18 IST 2026
[2026-06-13 20:08:18,674.674 INFO    ] ================================================
[2026-06-13 20:08:19,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:08:19
[2026-06-13 20:08:19,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:08:19,485.485 INFO    ] Initializing speech engine...
[2026-06-13 20:08:19,490.490 INFO    ] 2026-06-13 20:08:19
[2026-06-13 20:08:19,699.699 INFO    ] 2026-06-13 20:08:19
[2026-06-13 20:08:19,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:08:19,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:08:19,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:08:20,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:08:20,147.147 INFO    ] time= 13/06/2026 20:08:20
[2026-06-13 20:08:20,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:08:20,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:08:20,267.267 INFO    ] No existing commands found in stream
[2026-06-13 20:08:25,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:25,287.287 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 20:08:25,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:08:25,649.649 INFO    ] Checking for system updates...
[2026-06-13 20:08:25,670.670 INFO    ] 200
[2026-06-13 20:08:25,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:25,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:25,705.705 INFO    ] No update needed
[2026-06-13 20:08:25,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 20:08:25,726.726 INFO    ] 200
[2026-06-13 20:08:25,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:25,751.751 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:08:25,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:25,789.789 INFO    ] No camera update needed
[2026-06-13 20:08:25,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:08:25,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:08:25,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:08:25,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:08:27,837.837 INFO    ] ================================================
[2026-06-13 20:08:27,852.852 INFO    ] Launching Daemon at Sat Jun 13 20:08:27 IST 2026
[2026-06-13 20:08:27,863.863 INFO    ] ================================================
[2026-06-13 20:08:28,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:08:28
[2026-06-13 20:08:28,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:08:28,667.667 INFO    ] Initializing speech engine...
[2026-06-13 20:08:28,680.680 INFO    ] 2026-06-13 20:08:28
[2026-06-13 20:08:28,902.902 INFO    ] 2026-06-13 20:08:28
[2026-06-13 20:08:28,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:08:29,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:08:29,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:08:29,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:08:29,320.320 INFO    ] time= 13/06/2026 20:08:29
[2026-06-13 20:08:29,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:08:29,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:08:29,462.462 INFO    ] No existing commands found in stream
[2026-06-13 20:08:34,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:34,475.475 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 20:08:35,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:08:35,657.657 INFO    ] Checking for system updates...
[2026-06-13 20:08:35,680.680 INFO    ] 200
[2026-06-13 20:08:35,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:35,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:35,714.714 INFO    ] No update needed
[2026-06-13 20:08:35,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 20:08:35,737.737 INFO    ] 200
[2026-06-13 20:08:35,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:35,764.764 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:08:35,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:35,805.805 INFO    ] No camera update needed
[2026-06-13 20:08:35,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:08:35,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:08:35,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:08:35,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:08:37,852.852 INFO    ] ================================================
[2026-06-13 20:08:37,867.867 INFO    ] Launching Daemon at Sat Jun 13 20:08:37 IST 2026
[2026-06-13 20:08:37,878.878 INFO    ] ================================================
[2026-06-13 20:08:38,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:08:38
[2026-06-13 20:08:38,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:08:38,663.663 INFO    ] Initializing speech engine...
[2026-06-13 20:08:38,677.677 INFO    ] 2026-06-13 20:08:38
[2026-06-13 20:08:38,896.896 INFO    ] 2026-06-13 20:08:38
[2026-06-13 20:08:38,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:08:39,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:08:39,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:08:39,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:08:39,321.321 INFO    ] time= 13/06/2026 20:08:39
[2026-06-13 20:08:39,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:08:39,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:08:39,453.453 INFO    ] No existing commands found in stream
[2026-06-13 20:08:44,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:44,467.467 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 20:08:48,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:08:48,489.489 INFO    ] Checking for system updates...
[2026-06-13 20:08:48,520.520 INFO    ] 200
[2026-06-13 20:08:48,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:48,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:48,555.555 INFO    ] No update needed
[2026-06-13 20:08:48,557.557 INFO    ] Checking for camera pi updates...
[2026-06-13 20:08:48,576.576 INFO    ] 200
[2026-06-13 20:08:48,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:08:48,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:08:48,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:08:48,650.650 INFO    ] No camera update needed
[2026-06-13 20:08:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:08:48,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:08:48,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:08:48,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:08:50,699.699 INFO    ] ================================================
[2026-06-13 20:08:50,714.714 INFO    ] Launching Daemon at Sat Jun 13 20:08:50 IST 2026
[2026-06-13 20:08:50,725.725 INFO    ] ================================================
[2026-06-13 20:08:51,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:08:51
[2026-06-13 20:08:51,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:08:51,587.587 INFO    ] Initializing speech engine...
[2026-06-13 20:08:51,593.593 INFO    ] 2026-06-13 20:08:51
[2026-06-13 20:08:51,801.801 INFO    ] 2026-06-13 20:08:51
[2026-06-13 20:08:51,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:08:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:08:52,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:08:52,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:08:52,221.221 INFO    ] time= 13/06/2026 20:08:52
[2026-06-13 20:08:52,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:08:52,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:08:52,323.323 INFO    ] No existing commands found in stream
[2026-06-13 20:08:57,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:08:57,341.341 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 20:09:00,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:09:00,300.300 INFO    ] Checking for system updates...
[2026-06-13 20:09:00,322.322 INFO    ] 200
[2026-06-13 20:09:00,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:00,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:00,359.359 INFO    ] No update needed
[2026-06-13 20:09:00,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 20:09:00,382.382 INFO    ] 200
[2026-06-13 20:09:00,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:00,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:09:00,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:00,449.449 INFO    ] No camera update needed
[2026-06-13 20:09:00,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:09:00,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:09:00,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:09:00,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:09:02,490.490 INFO    ] ================================================
[2026-06-13 20:09:02,503.503 INFO    ] Launching Daemon at Sat Jun 13 20:09:02 IST 2026
[2026-06-13 20:09:02,511.511 INFO    ] ================================================
[2026-06-13 20:09:02,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:09:02
[2026-06-13 20:09:03,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:09:03,321.321 INFO    ] Initializing speech engine...
[2026-06-13 20:09:03,326.326 INFO    ] 2026-06-13 20:09:03
[2026-06-13 20:09:03,555.555 INFO    ] 2026-06-13 20:09:03
[2026-06-13 20:09:03,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:09:03,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:09:03,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:09:03,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:09:03,797.797 INFO    ] time= 13/06/2026 20:09:03
[2026-06-13 20:09:03,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:09:03,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:09:03,898.898 INFO    ] No existing commands found in stream
[2026-06-13 20:09:08,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:09:08,931.931 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 20:09:11,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:09:11,554.554 INFO    ] Checking for system updates...
[2026-06-13 20:09:11,575.575 INFO    ] 200
[2026-06-13 20:09:11,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:11,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:11,608.608 INFO    ] No update needed
[2026-06-13 20:09:11,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 20:09:11,630.630 INFO    ] 200
[2026-06-13 20:09:11,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:11,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:09:11,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:11,699.699 INFO    ] No camera update needed
[2026-06-13 20:09:11,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:09:11,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:09:11,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:09:11,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:09:13,748.748 INFO    ] ================================================
[2026-06-13 20:09:13,764.764 INFO    ] Launching Daemon at Sat Jun 13 20:09:13 IST 2026
[2026-06-13 20:09:13,775.775 INFO    ] ================================================
[2026-06-13 20:09:14,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:09:14
[2026-06-13 20:09:14,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:09:14,620.620 INFO    ] Initializing speech engine...
[2026-06-13 20:09:14,625.625 INFO    ] 2026-06-13 20:09:14
[2026-06-13 20:09:14,835.835 INFO    ] 2026-06-13 20:09:14
[2026-06-13 20:09:14,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:09:15,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:09:15,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:09:15,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:09:15,245.245 INFO    ] time= 13/06/2026 20:09:15
[2026-06-13 20:09:15,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:09:15,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:09:15,363.363 INFO    ] No existing commands found in stream
[2026-06-13 20:09:20,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:09:20,377.377 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 20:09:24,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:09:24,624.624 INFO    ] Checking for system updates...
[2026-06-13 20:09:24,645.645 INFO    ] 200
[2026-06-13 20:09:24,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:24,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:24,679.679 INFO    ] No update needed
[2026-06-13 20:09:24,681.681 INFO    ] Checking for camera pi updates...
[2026-06-13 20:09:24,702.702 INFO    ] 200
[2026-06-13 20:09:24,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:24,726.726 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:09:24,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:09:24,767.767 INFO    ] No camera update needed
[2026-06-13 20:09:24,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:09:24,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:09:24,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:09:24,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:09:26,816.816 INFO    ] ================================================
[2026-06-13 20:09:26,832.832 INFO    ] Launching Daemon at Sat Jun 13 20:09:26 IST 2026
[2026-06-13 20:09:26,844.844 INFO    ] ================================================
[2026-06-13 20:09:27,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:09:27
[2026-06-13 20:09:27,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:09:27,647.647 INFO    ] Initializing speech engine...
[2026-06-13 20:09:27,656.656 INFO    ] 2026-06-13 20:09:27
[2026-06-13 20:09:27,894.894 INFO    ] 2026-06-13 20:09:27
[2026-06-13 20:09:27,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:09:28,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:09:28,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:09:28,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:09:28,328.328 INFO    ] time= 13/06/2026 20:09:28
[2026-06-13 20:09:28,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:09:28,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:09:28,466.466 INFO    ] No existing commands found in stream
[2026-06-13 20:09:32,889.889 INFO    ] Received new command: ID=1781361572689-0
[2026-06-13 20:09:32,891.891 INFO    ] process_and_cleanup_command: msg_id=1781361572689-0
[2026-06-13 20:09:32,894.894 INFO    ] is_command_expired: timestamp=2026-06-13T14:39:31.669Z, expiry=30s
[2026-06-13 20:09:32,961.961 INFO    ] Command removed from stream: 1781361572689-0. returning for processing...
[2026-06-13 20:09:32,963.963 INFO    ] ***** get_valid_command
[2026-06-13 20:09:32,965.965 INFO    ] {'data': '{"request_id":"start-order-1781361571669-nrstyfvkd","orderId":"TM08202203260613200708529","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-13T14:39:31.669Z', 'timeout': '10', 'command': 'start-order'}
[2026-06-13 20:09:32,968.968 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613200708529', 'request_id': 'start-order-1781361571669-nrstyfvkd'}
[2026-06-13 20:09:32,971.971 INFO    ] Handling start order...
[2026-06-13 20:09:32,973.973 INFO    ] handle_start_order_command
[2026-06-13 20:09:32,979.979 INFO    ] _send_start_order_success: request_id=start-order-1781361571669-nrstyfvkd, order_id=TM08202203260613200708529
[2026-06-13 20:09:32,981.981 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 20:09:33,029.029 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781361573000-0
[2026-06-13 20:09:33,031.031 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 20:09:33,034.034 INFO    ] Checking for system updates...
[2026-06-13 20:09:33,076.076 INFO    ] 200
[2026-06-13 20:09:33,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:33,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:33,135.135 INFO    ] No update needed
[2026-06-13 20:09:33,137.137 INFO    ] Checking for camera pi updates...
[2026-06-13 20:09:33,163.163 INFO    ] 200
[2026-06-13 20:09:33,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:33,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:09:33,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:09:33,328.328 INFO    ] No camera update needed
[2026-06-13 20:09:33,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:09:33,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:09:33,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:09:33,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:09:35,374.374 INFO    ] ================================================
[2026-06-13 20:09:35,390.390 INFO    ] Launching Daemon at Sat Jun 13 20:09:35 IST 2026
[2026-06-13 20:09:35,401.401 INFO    ] ================================================
[2026-06-13 20:09:35,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:09:35
[2026-06-13 20:09:36,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:09:36,286.286 INFO    ] Initializing speech engine...
[2026-06-13 20:09:36,291.291 INFO    ] 2026-06-13 20:09:36
[2026-06-13 20:09:36,501.501 INFO    ] 2026-06-13 20:09:36
[2026-06-13 20:09:36,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:09:36,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:09:36,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:09:36,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:09:36,921.921 INFO    ] time= 13/06/2026 20:09:36
[2026-06-13 20:09:36,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:09:36,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:09:37,019.019 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 20:09:37,022.022 INFO    ] Checking historical command: ID=1781361573000-0
[2026-06-13 20:09:37,048.048 INFO    ] process_and_cleanup_command: msg_id=1781361573000-0
[2026-06-13 20:09:37,050.050 INFO    ] is_command_expired: timestamp=2026-06-13T14:39:32.979990Z, expiry=30s
[2026-06-13 20:09:37,162.162 INFO    ] Command removed from stream: 1781361573000-0. returning for processing...
[2026-06-13 20:09:37,166.166 INFO    ] ***** get_valid_command
[2026-06-13 20:09:37,171.171 INFO    ] {'timestamp': '2026-06-13T14:39:32.979990Z', 'metadata_request_id': 'start-order-1781361571669-nrstyfvkd', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613200708529', 'imei': 'TM08202203', 'status': 'success', 'message': 'start-order success'}
[2026-06-13 20:09:37,175.175 INFO    ] Checking historical command: ID=1781361575416-0
[2026-06-13 20:09:37,179.179 INFO    ] process_and_cleanup_command: msg_id=1781361575416-0
[2026-06-13 20:09:37,182.182 INFO    ] is_command_expired: timestamp=2026-06-13T14:39:34.434Z, expiry=30s
[2026-06-13 20:09:37,227.227 INFO    ] Command removed from stream: 1781361575416-0. returning for processing...
[2026-06-13 20:09:37,231.231 INFO    ] ***** get_valid_command
[2026-06-13 20:09:37,234.234 INFO    ] {'timestamp': '2026-06-13T14:39:34.434Z', 'command': 'process-order', 'timeout': '60', 'data': '{"request_id":"process-order-1781361574434-5ac5c45jg","orderId":"TM08202203260613200708529","is_vending":false,"accessCode":"27364422"}', 'source': 'webapp'}
[2026-06-13 20:09:37,237.237 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613200708529', 'accessCode': '27364422', 'request_id': 'process-order-1781361574434-5ac5c45jg', 'is_vending': False}
[2026-06-13 20:09:37,241.241 INFO    ] Handling process order...
[2026-06-13 20:09:37,244.244 INFO    ] Processing process-order command...
[2026-06-13 20:09:37,248.248 INFO    ] 🔍 Lock file Order ID: TM08202203260613200708529, TS: 2026-06-13 20:09:32
[2026-06-13 20:09:37,258.258 INFO    ] ✅ Order lock valid for TM08202203260613200708529
[2026-06-13 20:09:37,261.261 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 20:09:37,264.264 INFO    ] processing access code 27364422 for order TM08202203260613200708529
[2026-06-13 20:09:37,269.269 INFO    ] 🔍 Lock file Order ID: TM08202203260613200708529, TS: 2026-06-13 20:09:32
[2026-06-13 20:09:37,273.273 INFO    ] ✅ Order lock valid for TM08202203260613200708529
[2026-06-13 20:09:37,278.278 INFO    ] 2026-06-13 20:09:37
[2026-06-13 20:09:37,306.306 INFO    ] 200
[2026-06-13 20:09:37,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:09:37,313.313 INFO    ] 27364422
[2026-06-13 20:09:37,317.317 INFO    ] 2026-06-13 20:09:37
[2026-06-13 20:09:37,323.323 INFO    ] session id :711440699
[2026-06-13 20:09:37,327.327 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=27364422&imei=TM08202203&session_id=711440699
[2026-06-13 20:09:38,210.210 INFO    ] 200
[2026-06-13 20:09:38,227.227 INFO    ] {"data": {"mobile": "9148760423", "order_id": "TM08202203260613200708529", "bill_amount": "89", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Roasted Channa 32g", "tray_id": "15", "unit_price": 10, "qty": 2, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500623-9349.webp", "skuid": "4500623", "door_id": "1", "mrp": "20", "offer_desc": "", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "tray_id": "14", "unit_price": 19, "qty": 1, "sku_total": 19, "offer_id": "4500623_0803"}], "access_code": "27364422", "invoice_bill": "89"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 20:09:38,239.239 INFO    ] 89
[2026-06-13 20:09:38,249.249 INFO    ] TM08202203260613200708529
[2026-06-13 20:09:38,251.251 INFO    ] 9148760423
[2026-06-13 20:09:38,254.254 INFO    ] 2026-06-13 20:09:38
[2026-06-13 20:09:38,257.257 INFO    ] Door Opening for user mobile ending with  zero four two three 
[2026-06-13 20:09:38,260.260 INFO    ] Door Opening for user mobile ending with  zero four two three 
[2026-06-13 20:09:38,262.262 INFO    ] 127d50dd50403c2d9832f02828343938
[2026-06-13 20:09:38,266.266 INFO    ] 2026-06-13 20:09:38
[2026-06-13 20:09:38,268.268 INFO    ] playing audio file
[2026-06-13 20:09:38,286.286 INFO    ] 2026-06-13 20:09:38
[2026-06-13 20:09:38,290.290 INFO    ] 2026-06-13 20:09:38
[2026-06-13 20:09:38,294.294 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:09:38,298.298 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:09:38,398.398 INFO    ] [publish_status] Message added to stream with ID: 1781361578359-0
[2026-06-13 20:09:38,401.401 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:39:38.292319Z', 'server_response': '{"msg": "Order Data", "status": true, "data": {"bill_amount": "89", "invoice_bill": "89", "access_code": "27364422", "order_id": "TM08202203260613200708529", "proposed_sku_json": [{"unit_price": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "sku_total": 30, "offer_id": "", "door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "qty": 1, "mrp": "30", "offer_desc": ""}, {"unit_price": 10, "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "sku_total": 20, "offer_id": "", "door_id": "1", "name": "Modern kitchens Roasted Channa 32g", "tray_id": "15", "qty": 2, "mrp": "10", "offer_desc": ""}, {"unit_price": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "sku_total": 20, "offer_id": "", "door_id": "2", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "qty": 1, "mrp": "20", "offer_desc": ""}, {"unit_price": 19, "image_url": "https://images.tinymart.in/product/4500623-9349.webp", "skuid": "4500623", "sku_total": 19, "offer_id": "4500623_0803", "door_id": "1", "name": "Madmix Lemon Mirchi Millet Bhujia 27gm", "tray_id": "14", "qty": 1, "mrp": "20", "offer_desc": ""}], "mobile": "9148760423"}, "rstatus": true}', 'server_status': 'order-started', 'order_id': 'TM08202203260613200708529'} (ID: 1781361578359-0)
[2026-06-13 20:09:38,803.803 INFO    ] {'server_response': {'msg': 'Order Data', 'status': True, 'data': {'bill_amount': '89', 'invoice_bill': '89', 'access_code': '27364422', 'order_id': 'TM08202203260613200708529', 'proposed_sku_json': [{'unit_price': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30, 'offer_id': '', 'door_id': '2', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '40', 'qty': 1, 'mrp': '30', 'offer_desc': ''}, {'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20, 'offer_id': '', 'door_id': '1', 'name': 'Modern kitchens Roasted Channa 32g', 'tray_id': '15', 'qty': 2, 'mrp': '10', 'offer_desc': ''}, {'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20, 'offer_id': '', 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'qty': 1, 'mrp': '20', 'offer_desc': ''}, {'unit_price': 19, 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'skuid': '4500623', 'sku_total': 19, 'offer_id': '4500623_0803', 'door_id': '1', 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'tray_id': '14', 'qty': 1, 'mrp': '20', 'offer_desc': ''}], 'mobile': '9148760423'}, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:09:38,806.806 INFO    ] 200
[2026-06-13 20:09:38,809.809 INFO    ] {"data":{"server_response":{"msg":"Order Data","status":true,"data":{"bill_amount":"89","invoice_bill":"89","access_code":"27364422","order_id":"TM08202203260613200708529","proposed_sku_json":[{"unit_price":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","skuid":"186084","sku_total":30,"offer_id":"","door_id":"2","name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"40","qty":1,"mrp":"30","offer_desc":""},{"unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","skuid":"4500647","sku_total":20,"offer_id":"","door_id":"1","name":"Modern kitchens Roasted Channa 32g","tray_id":"15","qty":2,"mrp":"10","offer_desc":""},{"unit_price":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","skuid":"185993","sku_total":20,"offer_id":"","door_id":"2","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","qty":1,"mrp":"20","offer_desc":""},{"unit_price":19,"image_url":"https:\/\/images.tinymart.in\/product\/4500623-9349.webp","skuid":"4500623","sku_total":19,"offer_id":"4500623_0803","door_id":"1","name":"Madmix Lemon Mirchi Millet Bhujia 27gm","tray_id":"14","qty":1,"mrp":"20","offer_desc":""}],"mobile":"9148760423"},"rstatus":true},"server_status":"order-started","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:09:38,812.812 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': '89', 'proposed_sku_json': [{'unit_price': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30, 'offer_id': '', 'offer_desc': '', 'door_id': '2', 'tray_id': '40', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'mrp': '30'}, {'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20, 'offer_id': '', 'offer_desc': '', 'door_id': '1', 'tray_id': '15', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g', 'mrp': '10'}, {'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20, 'offer_id': '', 'offer_desc': '', 'door_id': '2', 'tray_id': '43', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'mrp': '20'}, {'unit_price': 19, 'image_url': 'https://images.tinymart.in/product/4500623-9349.webp', 'skuid': '4500623', 'sku_total': 19, 'offer_id': '4500623_0803', 'offer_desc': '', 'door_id': '1', 'tray_id': '14', 'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm', 'mrp': '20'}], 'invoice_bill': '89', 'access_code': '27364422', 'mobile': '9148760423', 'order_id': 'TM08202203260613200708529'}, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:09:38,816.816 INFO    ] 2026-06-13 20:09:38
[2026-06-13 20:09:38,861.861 INFO    ] 200
[2026-06-13 20:09:38,864.864 INFO    ] True
[2026-06-13 20:09:39,009.009 INFO    ] 200
[2026-06-13 20:09:39,012.012 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:39,016.016 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-13 20:09:39,020.020 INFO    ] *** process_order ***
[2026-06-13 20:09:40,262.262 INFO    ] 200
[2026-06-13 20:09:40,265.265 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 20:09:40,269.269 INFO    ] {'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}
[2026-06-13 20:09:40,272.272 INFO    ] *** process_order ***
[2026-06-13 20:09:40,275.275 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:09:40,277.277 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:09:40,361.361 INFO    ] [publish_status] Message added to stream with ID: 1781361580330-0
[2026-06-13 20:09:40,363.363 INFO    ] Published to order:TM08202203260613200708529: {'server_response': '{"rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now.", "Note": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open...", "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613200708529'} (ID: 1781361580330-0)
[2026-06-13 20:09:41,414.414 INFO    ] 2026-06-13 20:09:41
[2026-06-13 20:09:41,416.416 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:09:41,417.417 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:09:41,468.468 INFO    ] [publish_status] Message added to stream with ID: 1781361581436-0
[2026-06-13 20:09:41,471.471 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:39:41.415033Z', 'server_response': '{"rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'server_status': 'processOrder', 'order_id': 'TM08202203260613200708529'} (ID: 1781361581436-0)
[2026-06-13 20:09:41,596.596 INFO    ] {'server_response': {'rstatus': True, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:09:41,599.599 INFO    ] 200
[2026-06-13 20:09:41,601.601 INFO    ] {"data":{"server_response":{"rstatus":true,"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"delay":0},"server_status":"processOrder","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:09:41,605.605 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:09:41,608.608 INFO    ] 2026-06-13 20:09:41
[2026-06-13 20:09:41,611.611 INFO    ] None
[2026-06-13 20:09:41,614.614 INFO    ] Opening Door now
[2026-06-13 20:09:41,616.616 INFO    ] Opening Door now
[2026-06-13 20:09:41,619.619 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 20:09:41,623.623 INFO    ] 2026-06-13 20:09:41
[2026-06-13 20:09:41,626.626 INFO    ] playing audio file
[2026-06-13 20:09:41,645.645 INFO    ] 2026-06-13 20:09:41
[2026-06-13 20:09:41,649.649 INFO    ] 2026-06-13 20:09:41
[2026-06-13 20:09:44,697.697 INFO    ] 200
[2026-06-13 20:09:44,699.699 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:44,702.702 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:09:47,850.850 INFO    ] 200
[2026-06-13 20:09:47,851.851 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:47,853.853 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:09:50,888.888 INFO    ] 200
[2026-06-13 20:09:50,890.890 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:50,892.892 INFO    ] Please close door 1
[2026-06-13 20:09:50,894.894 INFO    ] Please close door 1
[2026-06-13 20:09:50,896.896 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 20:09:50,898.898 INFO    ] 2026-06-13 20:09:50
[2026-06-13 20:09:50,899.899 INFO    ] playing audio file
[2026-06-13 20:09:50,910.910 INFO    ] 2026-06-13 20:09:50
[2026-06-13 20:09:50,912.912 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:09:50,914.914 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:09:50,975.975 INFO    ] [publish_status] Message added to stream with ID: 1781361590948-0
[2026-06-13 20:09:50,977.977 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:39:50.911525Z', 'server_response': '{"rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'} (ID: 1781361590948-0)
[2026-06-13 20:09:51,312.312 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:09:51,314.314 INFO    ] 200
[2026-06-13 20:09:51,315.315 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Modern kitchens Roasted Channa 32g"},{"qty":1,"name":"Madmix Lemon Mirchi Millet Bhujia 27gm"}]},"status":"false","voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:09:51,317.317 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:09:51,320.320 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:09:54,356.356 INFO    ] 200
[2026-06-13 20:09:54,357.357 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:54,359.359 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:09:57,468.468 INFO    ] 200
[2026-06-13 20:09:57,471.471 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:09:57,475.475 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:00,537.537 INFO    ] 200
[2026-06-13 20:10:00,539.539 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:00,541.541 INFO    ] Please close door 1
[2026-06-13 20:10:00,543.543 INFO    ] Please close door 1
[2026-06-13 20:10:00,545.545 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 20:10:00,546.546 INFO    ] 2026-06-13 20:10:00
[2026-06-13 20:10:00,550.550 INFO    ] playing audio file
[2026-06-13 20:10:00,561.561 INFO    ] 2026-06-13 20:10:00
[2026-06-13 20:10:00,563.563 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:10:00,565.565 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:10:00,610.610 INFO    ] [publish_status] Message added to stream with ID: 1781361600583-0
[2026-06-13 20:10:00,611.611 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:40:00.562311Z', 'server_response': '{"rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "status": "False", "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'} (ID: 1781361600583-0)
[2026-06-13 20:10:00,941.941 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:10:00,942.942 INFO    ] 200
[2026-06-13 20:10:00,944.944 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Modern kitchens Roasted Channa 32g"},{"qty":1,"name":"Madmix Lemon Mirchi Millet Bhujia 27gm"}]},"status":"false","voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:10:00,946.946 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:00,947.947 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:04,013.013 INFO    ] 200
[2026-06-13 20:10:04,016.016 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:04,020.020 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:07,055.055 INFO    ] 200
[2026-06-13 20:10:07,056.056 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Roasted Channa 32g"}, {"qty": 1, "name": "Madmix Lemon Mirchi Millet Bhujia 27gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:07,058.058 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g'}, {'qty': 1, 'name': 'Madmix Lemon Mirchi Millet Bhujia 27gm'}]}, 'status': 'False', 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:10,089.089 INFO    ] 200
[2026-06-13 20:10:10,090.090 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:10,092.092 INFO    ] Door 2 is open now
[2026-06-13 20:10:10,093.093 INFO    ] Door 2 is open now
[2026-06-13 20:10:10,095.095 INFO    ] c0b0c0995d30574d97edd3ece08dfc12
[2026-06-13 20:10:10,096.096 INFO    ] 2026-06-13 20:10:10
[2026-06-13 20:10:10,098.098 INFO    ] playing audio file
[2026-06-13 20:10:10,108.108 INFO    ] 2026-06-13 20:10:10
[2026-06-13 20:10:10,110.110 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:10:10,112.112 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:10:10,183.183 INFO    ] [publish_status] Message added to stream with ID: 1781361610156-0
[2026-06-13 20:10:10,185.185 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:40:10.109813Z', 'server_response': '{"rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'} (ID: 1781361610156-0)
[2026-06-13 20:10:10,509.509 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:10:10,510.510 INFO    ] 200
[2026-06-13 20:10:10,512.512 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","voiceNote":"Door 2 is open now","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:10:10,514.514 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:10,516.516 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:13,624.624 INFO    ] 200
[2026-06-13 20:10:13,627.627 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:13,632.632 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:16,664.664 INFO    ] 200
[2026-06-13 20:10:16,665.665 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:16,667.667 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:19,780.780 INFO    ] 200
[2026-06-13 20:10:19,782.782 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:19,783.783 INFO    ] Please close door 2
[2026-06-13 20:10:19,785.785 INFO    ] Please close door 2
[2026-06-13 20:10:19,787.787 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 20:10:19,789.789 INFO    ] 2026-06-13 20:10:19
[2026-06-13 20:10:19,790.790 INFO    ] playing audio file
[2026-06-13 20:10:19,803.803 INFO    ] 2026-06-13 20:10:19
[2026-06-13 20:10:19,807.807 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:10:19,811.811 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:10:19,893.893 INFO    ] [publish_status] Message added to stream with ID: 1781361619866-0
[2026-06-13 20:10:19,895.895 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:40:19.804565Z', 'server_response': '{"rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'} (ID: 1781361619866-0)
[2026-06-13 20:10:20,206.206 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:10:20,208.208 INFO    ] 200
[2026-06-13 20:10:20,210.210 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:10:20,212.212 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:20,214.214 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:23,245.245 INFO    ] 200
[2026-06-13 20:10:23,247.247 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:23,249.249 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:26,320.320 INFO    ] 200
[2026-06-13 20:10:26,323.323 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:26,327.327 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:29,379.379 INFO    ] 200
[2026-06-13 20:10:29,382.382 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 20:10:29,385.385 INFO    ] Please close door 2
[2026-06-13 20:10:29,387.387 INFO    ] Please close door 2
[2026-06-13 20:10:29,390.390 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 20:10:29,393.393 INFO    ] 2026-06-13 20:10:29
[2026-06-13 20:10:29,396.396 INFO    ] playing audio file
[2026-06-13 20:10:29,414.414 INFO    ] 2026-06-13 20:10:29
[2026-06-13 20:10:29,418.418 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:10:29,422.422 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:10:29,503.503 INFO    ] [publish_status] Message added to stream with ID: 1781361629476-0
[2026-06-13 20:10:29,505.505 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:40:29.416356Z', 'server_response': '{"rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'} (ID: 1781361629476-0)
[2026-06-13 20:10:29,821.821 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:10:29,822.822 INFO    ] 200
[2026-06-13 20:10:29,824.824 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"},{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:10:29,826.826 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'false', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:29,827.827 INFO    ] {'rstatus': False, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-13 20:10:32,866.866 INFO    ] 200
[2026-06-13 20:10:32,868.868 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 20:10:32,871.871 INFO    ] {'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-13 20:10:32,872.872 INFO    ] 2026-06-13 20:10:32
[2026-06-13 20:10:32,874.874 INFO    ] Order Completed 
[2026-06-13 20:10:32,876.876 INFO    ] Order Completed 
[2026-06-13 20:10:32,877.877 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 20:10:32,880.880 INFO    ] 2026-06-13 20:10:32
[2026-06-13 20:10:32,881.881 INFO    ] playing audio file
[2026-06-13 20:10:32,892.892 INFO    ] 2026-06-13 20:10:32
[2026-06-13 20:10:32,894.894 INFO    ] {'rstatus': True, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-13 20:10:32,896.896 INFO    ] 2026-06-13 20:10:32
[2026-06-13 20:10:34,725.725 INFO    ] 200
[2026-06-13 20:10:34,729.729 INFO    ] {"res": "True", "orderId": "TM08202203260613200708529", "skus": [{"image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "door_id": "", "tray_id": "15", "name": "Modern kitchens Roasted Channa 32g per peice", "unit_price": "10", "mrp": "10", "qty": 2, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "skuid": "4500407", "door_id": "", "tray_id": "34", "name": "Paper boat Alphonso Mango 160ml per peice", "unit_price": "25", "mrp": "25", "qty": 1, "sku_total": 25.0}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 95.0}
[2026-06-13 20:10:34,733.733 INFO    ] {'orderId': 'TM08202203260613200708529', 'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'total_amount': 95.0, 'skus': [{'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20.0, 'tray_id': '15', 'door_id': '', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10'}, {'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'skuid': '4500407', 'sku_total': 25.0, 'tray_id': '34', 'door_id': '', 'qty': 1, 'name': 'Paper boat Alphonso Mango 160ml per peice', 'mrp': '25'}, {'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30.0, 'tray_id': '40', 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30'}, {'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20.0, 'tray_id': '43', 'door_id': '', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20'}]}
[2026-06-13 20:10:34,736.736 INFO    ] {'orderId': 'TM08202203260613200708529', 'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'total_amount': 95.0, 'skus': [{'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20.0, 'tray_id': '15', 'door_id': '', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10'}, {'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'skuid': '4500407', 'sku_total': 25.0, 'tray_id': '34', 'door_id': '', 'qty': 1, 'name': 'Paper boat Alphonso Mango 160ml per peice', 'mrp': '25'}, {'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30.0, 'tray_id': '40', 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30'}, {'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20.0, 'tray_id': '43', 'door_id': '', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20'}]}
[2026-06-13 20:10:34,741.741 INFO    ] 2026-06-13 20:10:34
[2026-06-13 20:10:34,744.744 INFO    ] 2026-06-13 20:10:34
[2026-06-13 20:10:34,748.748 INFO    ] 89
[2026-06-13 20:10:34,751.751 INFO    ] 2026-06-13 20:10:34
[2026-06-13 20:10:34,755.755 INFO    ] 2026-06-13 20:10:34
[2026-06-13 20:10:34,758.758 INFO    ]  You had Picked Excess of 6 Your Bill Amount is 95
[2026-06-13 20:10:34,761.761 INFO    ]  You had Picked Excess of 6 Your Bill Amount is 95
[2026-06-13 20:10:34,764.764 INFO    ] f38fd6b17ee06d135d97077b1cef7e99
[2026-06-13 20:10:34,767.767 INFO    ] 2026-06-13 20:10:34
[2026-06-13 20:10:34,771.771 INFO    ] creating audio file
[2026-06-13 20:10:34,857.857 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 20:10:35,383.383 INFO    ] gTTS API call completed successfully
[2026-06-13 20:10:36,653.653 INFO    ] 2026-06-13 20:10:36
[2026-06-13 20:10:36,657.657 INFO    ] playing audio file
[2026-06-13 20:10:36,677.677 INFO    ] 2026-06-13 20:10:36
[2026-06-13 20:10:36,680.680 INFO    ] 2026-06-13 20:10:36
[2026-06-13 20:10:36,684.684 INFO    ] publish_status: order_id=TM08202203260613200708529
[2026-06-13 20:10:36,686.686 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613200708529
[2026-06-13 20:10:36,758.758 INFO    ] [publish_status] Message added to stream with ID: 1781361636731-0
[2026-06-13 20:10:36,761.761 INFO    ] Published to order:TM08202203260613200708529: {'timestamp': '2026-06-13T14:40:36.682431Z', 'server_response': '{"orderId": "TM08202203260613200708529", "anomaly": 0, "logic": "WBL", "rstatus": true, "res": "True", "total_amount": 95.0, "skus": [{"unit_price": "10", "image_url": "https://images.tinymart.in/product/4500647-5070.webp", "skuid": "4500647", "sku_total": 20.0, "tray_id": "15", "door_id": "", "qty": 2, "name": "Modern kitchens Roasted Channa 32g per peice", "mrp": "10"}, {"unit_price": "25", "image_url": "https://images.tinymart.in/product/4500407-2060.jpg", "skuid": "4500407", "sku_total": 25.0, "tray_id": "34", "door_id": "", "qty": 1, "name": "Paper boat Alphonso Mango 160ml per peice", "mrp": "25"}, {"unit_price": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "sku_total": 30.0, "tray_id": "40", "door_id": "", "qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "mrp": "30"}, {"unit_price": "20", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "sku_total": 20.0, "tray_id": "43", "door_id": "", "qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "mrp": "20"}]}', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613200708529'} (ID: 1781361636731-0)
[2026-06-13 20:10:37,164.164 INFO    ] {'server_response': {'orderId': 'TM08202203260613200708529', 'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'total_amount': 95.0, 'skus': [{'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20.0, 'tray_id': '15', 'door_id': '', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10'}, {'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'skuid': '4500407', 'sku_total': 25.0, 'tray_id': '34', 'door_id': '', 'qty': 1, 'name': 'Paper boat Alphonso Mango 160ml per peice', 'mrp': '25'}, {'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30.0, 'tray_id': '40', 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30'}, {'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20.0, 'tray_id': '43', 'door_id': '', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613200708529'}
[2026-06-13 20:10:37,166.166 INFO    ] 200
[2026-06-13 20:10:37,169.169 INFO    ] {"data":{"server_response":{"orderId":"TM08202203260613200708529","anomaly":0,"logic":"WBL","rstatus":true,"res":"true","total_amount":95,"skus":[{"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500647-5070.webp","skuid":"4500647","sku_total":20,"tray_id":"15","door_id":"","qty":2,"name":"Modern kitchens Roasted Channa 32g per peice","mrp":"10"},{"unit_price":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500407-2060.jpg","skuid":"4500407","sku_total":25,"tray_id":"34","door_id":"","qty":1,"name":"Paper boat Alphonso Mango 160ml per peice","mrp":"25"},{"unit_price":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","skuid":"186084","sku_total":30,"tray_id":"40","door_id":"","qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","mrp":"30"},{"unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","skuid":"185993","sku_total":20,"tray_id":"43","door_id":"","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","mrp":"20"}]},"server_status":"invoiceOrder","order_id":"TM08202203260613200708529"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:10:37,172.172 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613200708529', 'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'res': 'true', 'total_amount': 95, 'skus': [{'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20, 'tray_id': '15', 'door_id': '', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10'}, {'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'skuid': '4500407', 'sku_total': 25, 'tray_id': '34', 'door_id': '', 'qty': 1, 'name': 'Paper boat Alphonso Mango 160ml per peice', 'mrp': '25'}, {'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30, 'tray_id': '40', 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30'}, {'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20, 'tray_id': '43', 'door_id': '', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:37,175.175 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613200708529', 'anomaly': 0, 'logic': 'WBL', 'rstatus': True, 'res': 'true', 'total_amount': 95, 'skus': [{'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-5070.webp', 'skuid': '4500647', 'sku_total': 20, 'tray_id': '15', 'door_id': '', 'qty': 2, 'name': 'Modern kitchens Roasted Channa 32g per peice', 'mrp': '10'}, {'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500407-2060.jpg', 'skuid': '4500407', 'sku_total': 25, 'tray_id': '34', 'door_id': '', 'qty': 1, 'name': 'Paper boat Alphonso Mango 160ml per peice', 'mrp': '25'}, {'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'skuid': '186084', 'sku_total': 30, 'tray_id': '40', 'door_id': '', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30'}, {'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'sku_total': 20, 'tray_id': '43', 'door_id': '', 'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'mrp': '20'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613200708529'}}
[2026-06-13 20:10:37,177.177 INFO    ] 2026-06-13 20:10:37
[2026-06-13 20:10:41,302.302 INFO    ] 200
[2026-06-13 20:10:41,304.304 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 20:10:41,305.305 INFO    ] 2026-06-13 20:10:41
[2026-06-13 20:10:41,401.401 INFO    ] 200
[2026-06-13 20:10:41,402.402 INFO    ] True
[2026-06-13 20:10:41,403.403 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613200708529
[2026-06-13 20:10:41,405.405 INFO    ] start order file deleted
[2026-06-13 20:10:41,407.407 INFO    ] Checking for system updates...
[2026-06-13 20:10:41,428.428 INFO    ] 200
[2026-06-13 20:10:41,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:41,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:10:41,462.462 INFO    ] No update needed
[2026-06-13 20:10:41,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 20:10:41,484.484 INFO    ] 200
[2026-06-13 20:10:41,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:41,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:10:41,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:10:41,541.541 INFO    ] No camera update needed
[2026-06-13 20:10:41,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:10:41,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:10:41,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:10:41,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:10:43,590.590 INFO    ] ================================================
[2026-06-13 20:10:43,606.606 INFO    ] Launching Daemon at Sat Jun 13 20:10:43 IST 2026
[2026-06-13 20:10:43,617.617 INFO    ] ================================================
[2026-06-13 20:10:44,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:10:43
[2026-06-13 20:10:44,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:10:44,492.492 INFO    ] Initializing speech engine...
[2026-06-13 20:10:44,497.497 INFO    ] 2026-06-13 20:10:44
[2026-06-13 20:10:44,703.703 INFO    ] 2026-06-13 20:10:44
[2026-06-13 20:10:44,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:10:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:10:44,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:10:45,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:10:45,122.122 INFO    ] time= 13/06/2026 20:10:45
[2026-06-13 20:10:45,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:10:45,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:10:45,275.275 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 20:10:45,279.279 INFO    ] Checking historical command: ID=1781361630644-0
[2026-06-13 20:10:45,304.304 INFO    ] process_and_cleanup_command: msg_id=1781361630644-0
[2026-06-13 20:10:45,306.306 INFO    ] is_command_expired: timestamp=2026-06-13T14:40:29.683Z, expiry=30s
[2026-06-13 20:10:45,416.416 INFO    ] Command removed from stream: 1781361630644-0. returning for processing...
[2026-06-13 20:10:45,420.420 INFO    ] ***** get_valid_command
[2026-06-13 20:10:45,424.424 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-13T14:40:29.683Z', 'data': '{"request_id":"start-order-1781361629682-ur1as3bz8","orderId":"TM08202203260613200708529","is_vending":false}', 'timeout': '10', 'command': 'start-order'}
[2026-06-13 20:10:45,429.429 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781361629682-ur1as3bz8', 'orderId': 'TM08202203260613200708529', 'is_vending': False}
[2026-06-13 20:10:45,433.433 INFO    ] Handling start order...
[2026-06-13 20:10:45,437.437 INFO    ] handle_start_order_command
[2026-06-13 20:10:45,445.445 INFO    ] _send_start_order_success: request_id=start-order-1781361629682-ur1as3bz8, order_id=TM08202203260613200708529
[2026-06-13 20:10:45,448.448 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 20:10:45,505.505 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781361645475-0
[2026-06-13 20:10:45,510.510 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 20:10:45,515.515 INFO    ] Checking for system updates...
[2026-06-13 20:10:45,544.544 INFO    ] 200
[2026-06-13 20:10:45,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:45,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:10:45,624.624 INFO    ] No update needed
[2026-06-13 20:10:45,639.639 INFO    ] Checking for camera pi updates...
[2026-06-13 20:10:45,694.694 INFO    ] 200
[2026-06-13 20:10:45,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:45,724.724 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:10:45,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:10:45,794.794 INFO    ] No camera update needed
[2026-06-13 20:10:45,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:10:45,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:10:45,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:10:45,817.817 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 20:10:45,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:10:47,866.866 INFO    ] ================================================
[2026-06-13 20:10:47,882.882 INFO    ] Launching Daemon at Sat Jun 13 20:10:47 IST 2026
[2026-06-13 20:10:47,893.893 INFO    ] ================================================
[2026-06-13 20:10:48,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:10:48
[2026-06-13 20:10:49,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:10:49,521.521 INFO    ] Initializing speech engine...
[2026-06-13 20:10:49,527.527 INFO    ] 2026-06-13 20:10:49
[2026-06-13 20:10:49,728.728 INFO    ] 2026-06-13 20:10:49
[2026-06-13 20:10:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:10:49,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:10:49,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:10:49,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:10:50,039.039 INFO    ] time= 13/06/2026 20:10:49
[2026-06-13 20:10:50,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:10:50,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:10:50,199.199 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 20:10:50,201.201 INFO    ] Checking historical command: ID=1781361645475-0
[2026-06-13 20:10:50,202.202 INFO    ] process_and_cleanup_command: msg_id=1781361645475-0
[2026-06-13 20:10:50,259.259 INFO    ] is_command_expired: timestamp=2026-06-13T14:40:45.445996Z, expiry=30s
[2026-06-13 20:10:50,335.335 INFO    ] Command removed from stream: 1781361645475-0. returning for processing...
[2026-06-13 20:10:50,338.338 INFO    ] ***** get_valid_command
[2026-06-13 20:10:50,342.342 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781361629682-ur1as3bz8', 'metadata_order_id': 'TM08202203260613200708529', 'message': 'start-order success', 'imei': 'TM08202203', 'status': 'success', 'timestamp': '2026-06-13T14:40:45.445996Z'}
[2026-06-13 20:10:50,345.345 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 20:10:55,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:10:55,358.358 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 20:10:59,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:10:59,215.215 INFO    ] Checking for system updates...
[2026-06-13 20:10:59,236.236 INFO    ] 200
[2026-06-13 20:10:59,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:59,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:10:59,270.270 INFO    ] No update needed
[2026-06-13 20:10:59,271.271 INFO    ] Checking for camera pi updates...
[2026-06-13 20:10:59,291.291 INFO    ] 200
[2026-06-13 20:10:59,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:10:59,316.316 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:10:59,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:10:59,359.359 INFO    ] No camera update needed
[2026-06-13 20:10:59,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:10:59,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:10:59,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:10:59,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:01,410.410 INFO    ] ================================================
[2026-06-13 20:11:01,435.435 INFO    ] Launching Daemon at Sat Jun 13 20:11:01 IST 2026
[2026-06-13 20:11:01,447.447 INFO    ] ================================================
[2026-06-13 20:11:01,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:01
[2026-06-13 20:11:02,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:02,387.387 INFO    ] Initializing speech engine...
[2026-06-13 20:11:02,391.391 INFO    ] 2026-06-13 20:11:02
[2026-06-13 20:11:02,612.612 INFO    ] 2026-06-13 20:11:02
[2026-06-13 20:11:02,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:02,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:02,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:02,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:03,025.025 INFO    ] time= 13/06/2026 20:11:02
[2026-06-13 20:11:03,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:03,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:03,130.130 INFO    ] No existing commands found in stream
[2026-06-13 20:11:08,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:08,144.144 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 20:11:09,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:11:09,637.637 INFO    ] Checking for system updates...
[2026-06-13 20:11:09,659.659 INFO    ] 200
[2026-06-13 20:11:09,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:09,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:11:09,692.692 INFO    ] No update needed
[2026-06-13 20:11:09,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 20:11:09,715.715 INFO    ] 200
[2026-06-13 20:11:09,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:09,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:11:09,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:11:09,782.782 INFO    ] No camera update needed
[2026-06-13 20:11:09,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:11:09,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:11:09,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:11:09,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:11,830.830 INFO    ] ================================================
[2026-06-13 20:11:11,846.846 INFO    ] Launching Daemon at Sat Jun 13 20:11:11 IST 2026
[2026-06-13 20:11:11,857.857 INFO    ] ================================================
[2026-06-13 20:11:12,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:12
[2026-06-13 20:11:12,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:12,641.641 INFO    ] Initializing speech engine...
[2026-06-13 20:11:12,645.645 INFO    ] 2026-06-13 20:11:12
[2026-06-13 20:11:12,849.849 INFO    ] 2026-06-13 20:11:12
[2026-06-13 20:11:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:12,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:13,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:13,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:13,258.258 INFO    ] time= 13/06/2026 20:11:13
[2026-06-13 20:11:13,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:13,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:13,363.363 INFO    ] No existing commands found in stream
[2026-06-13 20:11:18,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:18,380.380 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 20:11:19,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:11:19,295.295 INFO    ] Checking for system updates...
[2026-06-13 20:11:19,316.316 INFO    ] 200
[2026-06-13 20:11:19,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:19,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:19,350.350 INFO    ] No update needed
[2026-06-13 20:11:19,351.351 INFO    ] Checking for camera pi updates...
[2026-06-13 20:11:19,373.373 INFO    ] 200
[2026-06-13 20:11:19,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:19,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:11:19,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:19,438.438 INFO    ] No camera update needed
[2026-06-13 20:11:19,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:11:19,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:11:19,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:11:19,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:21,488.488 INFO    ] ================================================
[2026-06-13 20:11:21,504.504 INFO    ] Launching Daemon at Sat Jun 13 20:11:21 IST 2026
[2026-06-13 20:11:21,515.515 INFO    ] ================================================
[2026-06-13 20:11:21,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:21
[2026-06-13 20:11:22,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:22,311.311 INFO    ] Initializing speech engine...
[2026-06-13 20:11:22,316.316 INFO    ] 2026-06-13 20:11:22
[2026-06-13 20:11:22,531.531 INFO    ] 2026-06-13 20:11:22
[2026-06-13 20:11:22,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:22,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:22,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:22,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:22,965.965 INFO    ] time= 13/06/2026 20:11:22
[2026-06-13 20:11:23,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:23,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:23,087.087 INFO    ] No existing commands found in stream
[2026-06-13 20:11:28,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:28,101.101 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 20:11:29,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:11:29,178.178 INFO    ] Checking for system updates...
[2026-06-13 20:11:29,200.200 INFO    ] 200
[2026-06-13 20:11:29,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:29,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:29,234.234 INFO    ] No update needed
[2026-06-13 20:11:29,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 20:11:29,255.255 INFO    ] 200
[2026-06-13 20:11:29,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:29,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:11:29,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:29,318.318 INFO    ] No camera update needed
[2026-06-13 20:11:29,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:11:29,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:11:29,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:11:29,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:31,369.369 INFO    ] ================================================
[2026-06-13 20:11:31,386.386 INFO    ] Launching Daemon at Sat Jun 13 20:11:31 IST 2026
[2026-06-13 20:11:31,399.399 INFO    ] ================================================
[2026-06-13 20:11:31,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:31
[2026-06-13 20:11:32,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:32,729.729 INFO    ] Initializing speech engine...
[2026-06-13 20:11:32,750.750 INFO    ] 2026-06-13 20:11:32
[2026-06-13 20:11:33,009.009 INFO    ] 2026-06-13 20:11:33
[2026-06-13 20:11:33,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:33,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:33,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:33,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:33,486.486 INFO    ] time= 13/06/2026 20:11:33
[2026-06-13 20:11:33,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:33,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:33,705.705 INFO    ] No existing commands found in stream
[2026-06-13 20:11:38,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:38,733.733 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 20:11:39,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:11:39,921.921 INFO    ] Lock file expired, elapsed: 54s, order: TM08202203260613200708529
[2026-06-13 20:11:39,924.924 INFO    ] Cancelling order TM08202203260613200708529 - Error 20101: Order timed out. Please try again.
[2026-06-13 20:11:39,997.997 INFO    ] {'order_id': 'TM08202203260613200708529', 'server_response': {'SectionStatus': {'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.', 'Note': ''}, 'error_message': 'Order timed out. Please try again.', 'error_code': 20101}, 'server_status': 'Cancelled'}
[2026-06-13 20:11:40,000.000 INFO    ] 200
[2026-06-13 20:11:40,003.003 INFO    ] {"data":{"order_id":"TM08202203260613200708529","server_response":{"SectionStatus":{"Header":"Order Failed","SubHeader":"[20101] Order timed out. Please try again.","Note":""},"error_message":"Order timed out. Please try again.","error_code":20101},"server_status":"Cancelled"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 20:11:40,005.005 INFO    ] {'data': {'order_id': 'TM08202203260613200708529', 'server_response': {'SectionStatus': {'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.', 'Note': ''}, 'error_message': 'Order timed out. Please try again.', 'error_code': 20101}, 'server_status': 'Cancelled'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-13 20:11:40,008.008 INFO    ] Expired start-order file deleted, server response code: ORDER_EXISTS
[2026-06-13 20:11:40,011.011 INFO    ] Checking for system updates...
[2026-06-13 20:11:40,048.048 INFO    ] 200
[2026-06-13 20:11:40,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:40,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:40,106.106 INFO    ] No update needed
[2026-06-13 20:11:40,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 20:11:40,132.132 INFO    ] 200
[2026-06-13 20:11:40,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:40,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:11:40,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:11:40,301.301 INFO    ] No camera update needed
[2026-06-13 20:11:40,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:11:40,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:11:40,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:11:40,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:42,349.349 INFO    ] ================================================
[2026-06-13 20:11:42,364.364 INFO    ] Launching Daemon at Sat Jun 13 20:11:42 IST 2026
[2026-06-13 20:11:42,376.376 INFO    ] ================================================
[2026-06-13 20:11:42,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:42
[2026-06-13 20:11:43,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:43,910.910 INFO    ] Initializing speech engine...
[2026-06-13 20:11:43,916.916 INFO    ] 2026-06-13 20:11:43
[2026-06-13 20:11:44,209.209 INFO    ] 2026-06-13 20:11:44
[2026-06-13 20:11:44,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:44,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:44,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:44,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:44,737.737 INFO    ] time= 13/06/2026 20:11:44
[2026-06-13 20:11:44,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:44,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:44,874.874 INFO    ] No existing commands found in stream
[2026-06-13 20:11:49,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:49,905.905 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 20:11:50,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:11:50,976.976 INFO    ] Checking for system updates...
[2026-06-13 20:11:50,997.997 INFO    ] 200
[2026-06-13 20:11:50,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:51,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:11:51,031.031 INFO    ] No update needed
[2026-06-13 20:11:51,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 20:11:51,053.053 INFO    ] 200
[2026-06-13 20:11:51,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:11:51,079.079 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:11:51,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:11:51,125.125 INFO    ] No camera update needed
[2026-06-13 20:11:51,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:11:51,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:11:51,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:11:51,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:11:53,176.176 INFO    ] ================================================
[2026-06-13 20:11:53,192.192 INFO    ] Launching Daemon at Sat Jun 13 20:11:53 IST 2026
[2026-06-13 20:11:53,204.204 INFO    ] ================================================
[2026-06-13 20:11:53,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:11:53
[2026-06-13 20:11:53,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:11:54,179.179 INFO    ] Initializing speech engine...
[2026-06-13 20:11:54,194.194 INFO    ] 2026-06-13 20:11:54
[2026-06-13 20:11:54,445.445 INFO    ] 2026-06-13 20:11:54
[2026-06-13 20:11:54,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:11:54,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:11:54,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:11:54,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:11:54,787.787 INFO    ] time= 13/06/2026 20:11:54
[2026-06-13 20:11:54,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:11:54,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:11:54,904.904 INFO    ] No existing commands found in stream
[2026-06-13 20:11:59,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:11:59,942.942 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 20:12:00,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:12:00,810.810 INFO    ] Checking for system updates...
[2026-06-13 20:12:00,830.830 INFO    ] 200
[2026-06-13 20:12:00,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:00,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:12:00,864.864 INFO    ] No update needed
[2026-06-13 20:12:00,865.865 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:00,885.885 INFO    ] 200
[2026-06-13 20:12:00,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:00,909.909 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:00,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:12:00,953.953 INFO    ] No camera update needed
[2026-06-13 20:12:00,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:00,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:00,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:00,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:02,986.986 INFO    ] ================================================
[2026-06-13 20:12:02,995.995 INFO    ] Launching Daemon at Sat Jun 13 20:12:02 IST 2026
[2026-06-13 20:12:03,001.001 INFO    ] ================================================
[2026-06-13 20:12:03,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:03
[2026-06-13 20:12:03,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:12:03,858.858 INFO    ] Initializing speech engine...
[2026-06-13 20:12:03,863.863 INFO    ] 2026-06-13 20:12:03
[2026-06-13 20:12:04,073.073 INFO    ] 2026-06-13 20:12:04
[2026-06-13 20:12:04,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:12:04,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:12:04,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:12:04,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:12:04,470.470 INFO    ] time= 13/06/2026 20:12:04
[2026-06-13 20:12:04,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:12:04,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:12:04,597.597 INFO    ] No existing commands found in stream
[2026-06-13 20:12:09,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:12:09,610.610 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-13 20:12:13,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:12:13,245.245 INFO    ] Checking for system updates...
[2026-06-13 20:12:13,266.266 INFO    ] 200
[2026-06-13 20:12:13,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:13,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:13,300.300 INFO    ] No update needed
[2026-06-13 20:12:13,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:13,322.322 INFO    ] 200
[2026-06-13 20:12:13,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:13,348.348 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:13,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:13,390.390 INFO    ] No camera update needed
[2026-06-13 20:12:13,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:13,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:13,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:13,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:15,439.439 INFO    ] ================================================
[2026-06-13 20:12:15,454.454 INFO    ] Launching Daemon at Sat Jun 13 20:12:15 IST 2026
[2026-06-13 20:12:15,465.465 INFO    ] ================================================
[2026-06-13 20:12:15,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:15
[2026-06-13 20:12:16,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:12:16,337.337 INFO    ] Initializing speech engine...
[2026-06-13 20:12:16,352.352 INFO    ] 2026-06-13 20:12:16
[2026-06-13 20:12:16,627.627 INFO    ] 2026-06-13 20:12:16
[2026-06-13 20:12:16,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:12:16,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:12:16,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:12:16,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:12:17,000.000 INFO    ] time= 13/06/2026 20:12:16
[2026-06-13 20:12:17,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:12:17,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:12:17,121.121 INFO    ] No existing commands found in stream
[2026-06-13 20:12:22,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:12:22,136.136 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 20:12:24,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:12:24,986.986 INFO    ] Checking for system updates...
[2026-06-13 20:12:25,007.007 INFO    ] 200
[2026-06-13 20:12:25,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:25,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:25,040.040 INFO    ] No update needed
[2026-06-13 20:12:25,041.041 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:25,061.061 INFO    ] 200
[2026-06-13 20:12:25,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:25,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:25,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:25,125.125 INFO    ] No camera update needed
[2026-06-13 20:12:25,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:25,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:25,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:25,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:27,174.174 INFO    ] ================================================
[2026-06-13 20:12:27,191.191 INFO    ] Launching Daemon at Sat Jun 13 20:12:27 IST 2026
[2026-06-13 20:12:27,202.202 INFO    ] ================================================
[2026-06-13 20:12:27,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:27
[2026-06-13 20:12:27,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:12:28,016.016 INFO    ] Initializing speech engine...
[2026-06-13 20:12:28,020.020 INFO    ] 2026-06-13 20:12:28
[2026-06-13 20:12:28,246.246 INFO    ] 2026-06-13 20:12:28
[2026-06-13 20:12:28,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:12:28,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:12:28,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:12:28,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:12:28,665.665 INFO    ] time= 13/06/2026 20:12:28
[2026-06-13 20:12:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:12:28,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:12:28,787.787 INFO    ] No existing commands found in stream
[2026-06-13 20:12:33,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:12:33,800.800 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 20:12:34,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:12:34,362.362 INFO    ] Checking for system updates...
[2026-06-13 20:12:34,383.383 INFO    ] 200
[2026-06-13 20:12:34,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:34,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:34,415.415 INFO    ] No update needed
[2026-06-13 20:12:34,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:34,437.437 INFO    ] 200
[2026-06-13 20:12:34,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:34,462.462 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:34,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:34,503.503 INFO    ] No camera update needed
[2026-06-13 20:12:34,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:34,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:34,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:34,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:36,555.555 INFO    ] ================================================
[2026-06-13 20:12:36,570.570 INFO    ] Launching Daemon at Sat Jun 13 20:12:36 IST 2026
[2026-06-13 20:12:36,581.581 INFO    ] ================================================
[2026-06-13 20:12:36,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:36
[2026-06-13 20:12:37,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:12:37,434.434 INFO    ] Initializing speech engine...
[2026-06-13 20:12:37,440.440 INFO    ] 2026-06-13 20:12:37
[2026-06-13 20:12:37,648.648 INFO    ] 2026-06-13 20:12:37
[2026-06-13 20:12:37,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:12:37,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:12:37,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:12:38,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:12:38,071.071 INFO    ] time= 13/06/2026 20:12:38
[2026-06-13 20:12:38,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:12:38,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:12:38,219.219 INFO    ] No existing commands found in stream
[2026-06-13 20:12:43,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:12:43,233.233 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 20:12:45,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:12:45,343.343 INFO    ] Checking for system updates...
[2026-06-13 20:12:45,364.364 INFO    ] 200
[2026-06-13 20:12:45,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:45,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:45,399.399 INFO    ] No update needed
[2026-06-13 20:12:45,400.400 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:45,420.420 INFO    ] 200
[2026-06-13 20:12:45,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:45,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:45,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:45,485.485 INFO    ] No camera update needed
[2026-06-13 20:12:45,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:45,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:45,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:45,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:47,533.533 INFO    ] ================================================
[2026-06-13 20:12:47,549.549 INFO    ] Launching Daemon at Sat Jun 13 20:12:47 IST 2026
[2026-06-13 20:12:47,560.560 INFO    ] ================================================
[2026-06-13 20:12:47,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:47
[2026-06-13 20:12:48,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:12:48,421.421 INFO    ] Initializing speech engine...
[2026-06-13 20:12:48,427.427 INFO    ] 2026-06-13 20:12:48
[2026-06-13 20:12:48,632.632 INFO    ] 2026-06-13 20:12:48
[2026-06-13 20:12:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:12:48,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:12:48,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:12:48,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:12:49,044.044 INFO    ] time= 13/06/2026 20:12:48
[2026-06-13 20:12:49,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:12:49,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:12:49,150.150 INFO    ] No existing commands found in stream
[2026-06-13 20:12:54,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:12:54,167.167 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 20:12:57,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:12:57,042.042 INFO    ] Checking for system updates...
[2026-06-13 20:12:57,063.063 INFO    ] 200
[2026-06-13 20:12:57,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:57,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:12:57,097.097 INFO    ] No update needed
[2026-06-13 20:12:57,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 20:12:57,118.118 INFO    ] 200
[2026-06-13 20:12:57,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:12:57,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:12:57,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:12:57,180.180 INFO    ] No camera update needed
[2026-06-13 20:12:57,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:12:57,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:12:57,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:12:57,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:12:59,229.229 INFO    ] ================================================
[2026-06-13 20:12:59,243.243 INFO    ] Launching Daemon at Sat Jun 13 20:12:59 IST 2026
[2026-06-13 20:12:59,254.254 INFO    ] ================================================
[2026-06-13 20:12:59,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:12:59
[2026-06-13 20:12:59,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:00,056.056 INFO    ] Initializing speech engine...
[2026-06-13 20:13:00,069.069 INFO    ] 2026-06-13 20:13:00
[2026-06-13 20:13:00,284.284 INFO    ] 2026-06-13 20:13:00
[2026-06-13 20:13:00,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:00,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:00,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:00,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:00,705.705 INFO    ] time= 13/06/2026 20:13:00
[2026-06-13 20:13:00,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:00,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:00,828.828 INFO    ] No existing commands found in stream
[2026-06-13 20:13:05,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:13:05,841.841 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 20:13:07,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:13:07,976.976 INFO    ] Checking for system updates...
[2026-06-13 20:13:08,011.011 INFO    ] 200
[2026-06-13 20:13:08,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:08,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:13:08,059.059 INFO    ] No update needed
[2026-06-13 20:13:08,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 20:13:08,080.080 INFO    ] 200
[2026-06-13 20:13:08,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:08,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:13:08,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:13:08,141.141 INFO    ] No camera update needed
[2026-06-13 20:13:08,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:13:08,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:13:08,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:13:08,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:13:10,189.189 INFO    ] ================================================
[2026-06-13 20:13:10,205.205 INFO    ] Launching Daemon at Sat Jun 13 20:13:10 IST 2026
[2026-06-13 20:13:10,216.216 INFO    ] ================================================
[2026-06-13 20:13:10,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:13:10
[2026-06-13 20:13:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:11,043.043 INFO    ] Initializing speech engine...
[2026-06-13 20:13:11,053.053 INFO    ] 2026-06-13 20:13:11
[2026-06-13 20:13:11,257.257 INFO    ] 2026-06-13 20:13:11
[2026-06-13 20:13:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:11,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:11,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:11,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:11,664.664 INFO    ] time= 13/06/2026 20:13:11
[2026-06-13 20:13:11,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:11,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:11,774.774 INFO    ] No existing commands found in stream
[2026-06-13 20:13:16,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:13:16,786.786 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 20:13:20,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:13:20,460.460 INFO    ] Checking for system updates...
[2026-06-13 20:13:20,481.481 INFO    ] 200
[2026-06-13 20:13:20,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:20,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:20,517.517 INFO    ] No update needed
[2026-06-13 20:13:20,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 20:13:20,538.538 INFO    ] 200
[2026-06-13 20:13:20,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:20,563.563 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:13:20,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:20,604.604 INFO    ] No camera update needed
[2026-06-13 20:13:20,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:13:20,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:13:20,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:13:20,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:13:22,658.658 INFO    ] ================================================
[2026-06-13 20:13:22,674.674 INFO    ] Launching Daemon at Sat Jun 13 20:13:22 IST 2026
[2026-06-13 20:13:22,685.685 INFO    ] ================================================
[2026-06-13 20:13:23,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:13:23
[2026-06-13 20:13:23,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:23,496.496 INFO    ] Initializing speech engine...
[2026-06-13 20:13:23,501.501 INFO    ] 2026-06-13 20:13:23
[2026-06-13 20:13:23,706.706 INFO    ] 2026-06-13 20:13:23
[2026-06-13 20:13:23,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:23,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:23,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:24,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:24,108.108 INFO    ] time= 13/06/2026 20:13:24
[2026-06-13 20:13:24,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:24,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:24,232.232 INFO    ] No existing commands found in stream
[2026-06-13 20:13:29,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:13:29,243.243 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 20:13:30,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:13:30,486.486 INFO    ] Checking for system updates...
[2026-06-13 20:13:30,507.507 INFO    ] 200
[2026-06-13 20:13:30,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:30,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:30,541.541 INFO    ] No update needed
[2026-06-13 20:13:30,542.542 INFO    ] Checking for camera pi updates...
[2026-06-13 20:13:30,562.562 INFO    ] 200
[2026-06-13 20:13:30,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:30,588.588 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:13:30,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:30,625.625 INFO    ] No camera update needed
[2026-06-13 20:13:30,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:13:30,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:13:30,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:13:30,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:13:32,666.666 INFO    ] ================================================
[2026-06-13 20:13:32,674.674 INFO    ] Launching Daemon at Sat Jun 13 20:13:32 IST 2026
[2026-06-13 20:13:32,680.680 INFO    ] ================================================
[2026-06-13 20:13:33,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:13:33
[2026-06-13 20:13:33,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:33,533.533 INFO    ] Initializing speech engine...
[2026-06-13 20:13:33,538.538 INFO    ] 2026-06-13 20:13:33
[2026-06-13 20:13:33,745.745 INFO    ] 2026-06-13 20:13:33
[2026-06-13 20:13:33,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:33,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:33,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:34,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:34,159.159 INFO    ] time= 13/06/2026 20:13:34
[2026-06-13 20:13:34,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:34,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:34,258.258 INFO    ] No existing commands found in stream
[2026-06-13 20:13:39,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:13:39,271.271 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 20:13:40,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:13:40,151.151 INFO    ] Checking for system updates...
[2026-06-13 20:13:40,172.172 INFO    ] 200
[2026-06-13 20:13:40,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:40,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:13:40,206.206 INFO    ] No update needed
[2026-06-13 20:13:40,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 20:13:40,228.228 INFO    ] 200
[2026-06-13 20:13:40,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:40,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:13:40,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:13:40,297.297 INFO    ] No camera update needed
[2026-06-13 20:13:40,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:13:40,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:13:40,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:13:40,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:13:42,346.346 INFO    ] ================================================
[2026-06-13 20:13:42,361.361 INFO    ] Launching Daemon at Sat Jun 13 20:13:42 IST 2026
[2026-06-13 20:13:42,372.372 INFO    ] ================================================
[2026-06-13 20:13:42,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:13:42
[2026-06-13 20:13:43,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:43,208.208 INFO    ] Initializing speech engine...
[2026-06-13 20:13:43,213.213 INFO    ] 2026-06-13 20:13:43
[2026-06-13 20:13:43,419.419 INFO    ] 2026-06-13 20:13:43
[2026-06-13 20:13:43,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:43,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:43,834.834 INFO    ] time= 13/06/2026 20:13:43
[2026-06-13 20:13:43,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:43,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:43,934.934 INFO    ] No existing commands found in stream
[2026-06-13 20:13:48,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:13:48,947.947 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 20:13:52,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:13:52,509.509 INFO    ] Checking for system updates...
[2026-06-13 20:13:52,530.530 INFO    ] 200
[2026-06-13 20:13:52,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:52,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:52,563.563 INFO    ] No update needed
[2026-06-13 20:13:52,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 20:13:52,585.585 INFO    ] 200
[2026-06-13 20:13:52,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:13:52,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:13:52,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:13:52,750.750 INFO    ] No camera update needed
[2026-06-13 20:13:52,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:13:52,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:13:52,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:13:52,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:13:54,798.798 INFO    ] ================================================
[2026-06-13 20:13:54,814.814 INFO    ] Launching Daemon at Sat Jun 13 20:13:54 IST 2026
[2026-06-13 20:13:54,825.825 INFO    ] ================================================
[2026-06-13 20:13:55,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:13:55
[2026-06-13 20:13:55,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:13:55,617.617 INFO    ] Initializing speech engine...
[2026-06-13 20:13:55,626.626 INFO    ] 2026-06-13 20:13:55
[2026-06-13 20:13:55,831.831 INFO    ] 2026-06-13 20:13:55
[2026-06-13 20:13:55,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:13:56,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:13:56,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:13:56,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:13:56,240.240 INFO    ] time= 13/06/2026 20:13:56
[2026-06-13 20:13:56,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:13:56,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:13:56,346.346 INFO    ] No existing commands found in stream
[2026-06-13 20:14:01,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:01,367.367 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 20:14:04,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:14:04,855.855 INFO    ] Checking for system updates...
[2026-06-13 20:14:04,891.891 INFO    ] 200
[2026-06-13 20:14:04,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:04,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:04,949.949 INFO    ] No update needed
[2026-06-13 20:14:04,952.952 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:04,986.986 INFO    ] 200
[2026-06-13 20:14:04,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:05,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:05,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:05,075.075 INFO    ] No camera update needed
[2026-06-13 20:14:05,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:05,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:05,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:05,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:07,131.131 INFO    ] ================================================
[2026-06-13 20:14:07,149.149 INFO    ] Launching Daemon at Sat Jun 13 20:14:07 IST 2026
[2026-06-13 20:14:07,161.161 INFO    ] ================================================
[2026-06-13 20:14:07,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:07
[2026-06-13 20:14:07,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:07,951.951 INFO    ] Initializing speech engine...
[2026-06-13 20:14:07,956.956 INFO    ] 2026-06-13 20:14:07
[2026-06-13 20:14:08,161.161 INFO    ] 2026-06-13 20:14:08
[2026-06-13 20:14:08,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:14:08,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:14:08,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:14:08,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:14:08,551.551 INFO    ] time= 13/06/2026 20:14:08
[2026-06-13 20:14:08,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:14:08,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:14:08,776.776 INFO    ] No existing commands found in stream
[2026-06-13 20:14:13,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:13,798.798 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 20:14:14,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:14:14,826.826 INFO    ] Checking for system updates...
[2026-06-13 20:14:14,847.847 INFO    ] 200
[2026-06-13 20:14:14,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:14,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:14,881.881 INFO    ] No update needed
[2026-06-13 20:14:14,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:14,904.904 INFO    ] 200
[2026-06-13 20:14:14,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:14,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:14,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:14,977.977 INFO    ] No camera update needed
[2026-06-13 20:14:14,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:14,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:14,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:14,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:17,025.025 INFO    ] ================================================
[2026-06-13 20:14:17,041.041 INFO    ] Launching Daemon at Sat Jun 13 20:14:17 IST 2026
[2026-06-13 20:14:17,052.052 INFO    ] ================================================
[2026-06-13 20:14:17,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:17
[2026-06-13 20:14:17,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:17,833.833 INFO    ] Initializing speech engine...
[2026-06-13 20:14:17,842.842 INFO    ] 2026-06-13 20:14:17
[2026-06-13 20:14:18,049.049 INFO    ] 2026-06-13 20:14:18
[2026-06-13 20:14:18,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:14:18,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:14:18,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:14:18,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:14:18,459.459 INFO    ] time= 13/06/2026 20:14:18
[2026-06-13 20:14:18,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:14:18,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:14:18,564.564 INFO    ] No existing commands found in stream
[2026-06-13 20:14:23,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:23,575.575 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 20:14:24,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:14:24,876.876 INFO    ] Checking for system updates...
[2026-06-13 20:14:24,897.897 INFO    ] 200
[2026-06-13 20:14:24,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:24,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:24,931.931 INFO    ] No update needed
[2026-06-13 20:14:24,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:24,952.952 INFO    ] 200
[2026-06-13 20:14:24,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:24,976.976 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:25,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:25,016.016 INFO    ] No camera update needed
[2026-06-13 20:14:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:25,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:25,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:25,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:27,062.062 INFO    ] ================================================
[2026-06-13 20:14:27,078.078 INFO    ] Launching Daemon at Sat Jun 13 20:14:27 IST 2026
[2026-06-13 20:14:27,089.089 INFO    ] ================================================
[2026-06-13 20:14:27,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:27
[2026-06-13 20:14:27,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:27,894.894 INFO    ] Initializing speech engine...
[2026-06-13 20:14:27,898.898 INFO    ] 2026-06-13 20:14:27
[2026-06-13 20:14:28,102.102 INFO    ] 2026-06-13 20:14:28
[2026-06-13 20:14:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:14:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:14:28,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:14:28,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:14:28,504.504 INFO    ] time= 13/06/2026 20:14:28
[2026-06-13 20:14:28,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:14:28,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:14:28,613.613 INFO    ] No existing commands found in stream
[2026-06-13 20:14:33,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:33,625.625 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 20:14:35,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:14:35,228.228 INFO    ] Checking for system updates...
[2026-06-13 20:14:35,249.249 INFO    ] 200
[2026-06-13 20:14:35,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:35,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:35,282.282 INFO    ] No update needed
[2026-06-13 20:14:35,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:35,303.303 INFO    ] 200
[2026-06-13 20:14:35,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:35,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:35,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:35,369.369 INFO    ] No camera update needed
[2026-06-13 20:14:35,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:35,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:35,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:35,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:37,418.418 INFO    ] ================================================
[2026-06-13 20:14:37,434.434 INFO    ] Launching Daemon at Sat Jun 13 20:14:37 IST 2026
[2026-06-13 20:14:37,445.445 INFO    ] ================================================
[2026-06-13 20:14:37,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:37
[2026-06-13 20:14:38,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:38,221.221 INFO    ] Initializing speech engine...
[2026-06-13 20:14:38,225.225 INFO    ] 2026-06-13 20:14:38
[2026-06-13 20:14:38,455.455 INFO    ] 2026-06-13 20:14:38
[2026-06-13 20:14:38,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:14:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:14:38,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:14:38,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:14:38,874.874 INFO    ] time= 13/06/2026 20:14:38
[2026-06-13 20:14:38,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:14:38,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:14:39,004.004 INFO    ] No existing commands found in stream
[2026-06-13 20:14:44,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:44,017.017 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 20:14:47,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:14:47,630.630 INFO    ] Checking for system updates...
[2026-06-13 20:14:47,678.678 INFO    ] 200
[2026-06-13 20:14:47,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:47,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:47,716.716 INFO    ] No update needed
[2026-06-13 20:14:47,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:47,739.739 INFO    ] 200
[2026-06-13 20:14:47,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:47,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:47,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:14:47,804.804 INFO    ] No camera update needed
[2026-06-13 20:14:47,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:47,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:47,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:47,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:49,851.851 INFO    ] ================================================
[2026-06-13 20:14:49,867.867 INFO    ] Launching Daemon at Sat Jun 13 20:14:49 IST 2026
[2026-06-13 20:14:49,878.878 INFO    ] ================================================
[2026-06-13 20:14:50,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:50
[2026-06-13 20:14:50,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:50,699.699 INFO    ] Initializing speech engine...
[2026-06-13 20:14:50,704.704 INFO    ] 2026-06-13 20:14:50
[2026-06-13 20:14:50,921.921 INFO    ] 2026-06-13 20:14:50
[2026-06-13 20:14:50,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:14:51,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:14:51,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:14:51,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:14:51,340.340 INFO    ] time= 13/06/2026 20:14:51
[2026-06-13 20:14:51,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:14:51,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:14:51,470.470 INFO    ] No existing commands found in stream
[2026-06-13 20:14:56,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:14:56,483.483 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 20:14:56,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:14:56,873.873 INFO    ] Checking for system updates...
[2026-06-13 20:14:56,894.894 INFO    ] 200
[2026-06-13 20:14:56,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:56,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:14:56,926.926 INFO    ] No update needed
[2026-06-13 20:14:56,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 20:14:56,947.947 INFO    ] 200
[2026-06-13 20:14:56,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:14:56,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:14:57,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:14:57,016.016 INFO    ] No camera update needed
[2026-06-13 20:14:57,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:14:57,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:14:57,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:14:57,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:14:59,064.064 INFO    ] ================================================
[2026-06-13 20:14:59,080.080 INFO    ] Launching Daemon at Sat Jun 13 20:14:59 IST 2026
[2026-06-13 20:14:59,092.092 INFO    ] ================================================
[2026-06-13 20:14:59,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:14:59
[2026-06-13 20:14:59,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:14:59,876.876 INFO    ] Initializing speech engine...
[2026-06-13 20:14:59,884.884 INFO    ] 2026-06-13 20:14:59
[2026-06-13 20:15:00,098.098 INFO    ] 2026-06-13 20:15:00
[2026-06-13 20:15:00,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:15:00,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:15:00,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:15:00,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:15:00,502.502 INFO    ] time= 13/06/2026 20:15:00
[2026-06-13 20:15:00,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:15:00,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:15:00,620.620 INFO    ] No existing commands found in stream
[2026-06-13 20:15:05,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:15:05,632.632 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 20:15:09,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:15:09,676.676 INFO    ] Checking for system updates...
[2026-06-13 20:15:09,704.704 INFO    ] 200
[2026-06-13 20:15:09,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:09,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:15:09,739.739 INFO    ] No update needed
[2026-06-13 20:15:09,741.741 INFO    ] Checking for camera pi updates...
[2026-06-13 20:15:09,761.761 INFO    ] 200
[2026-06-13 20:15:09,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:09,787.787 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:15:09,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:15:09,835.835 INFO    ] No camera update needed
[2026-06-13 20:15:09,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:15:09,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:15:09,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:15:09,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:15:11,884.884 INFO    ] ================================================
[2026-06-13 20:15:11,900.900 INFO    ] Launching Daemon at Sat Jun 13 20:15:11 IST 2026
[2026-06-13 20:15:11,911.911 INFO    ] ================================================
[2026-06-13 20:15:12,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:15:12
[2026-06-13 20:15:12,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:15:12,749.749 INFO    ] Initializing speech engine...
[2026-06-13 20:15:12,754.754 INFO    ] 2026-06-13 20:15:12
[2026-06-13 20:15:12,964.964 INFO    ] 2026-06-13 20:15:12
[2026-06-13 20:15:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:15:13,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:15:13,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:15:13,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:15:13,372.372 INFO    ] time= 13/06/2026 20:15:13
[2026-06-13 20:15:13,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:15:13,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:15:13,489.489 INFO    ] No existing commands found in stream
[2026-06-13 20:15:18,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:15:18,504.504 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 20:15:21,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:15:21,341.341 INFO    ] Checking for system updates...
[2026-06-13 20:15:21,363.363 INFO    ] 200
[2026-06-13 20:15:21,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:21,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:15:21,397.397 INFO    ] No update needed
[2026-06-13 20:15:21,398.398 INFO    ] Checking for camera pi updates...
[2026-06-13 20:15:21,419.419 INFO    ] 200
[2026-06-13 20:15:21,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:21,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:15:21,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:15:21,495.495 INFO    ] No camera update needed
[2026-06-13 20:15:21,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:15:21,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:15:21,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:15:21,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:15:23,544.544 INFO    ] ================================================
[2026-06-13 20:15:23,560.560 INFO    ] Launching Daemon at Sat Jun 13 20:15:23 IST 2026
[2026-06-13 20:15:23,572.572 INFO    ] ================================================
[2026-06-13 20:15:23,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:15:23
[2026-06-13 20:15:24,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:15:24,402.402 INFO    ] Initializing speech engine...
[2026-06-13 20:15:24,408.408 INFO    ] 2026-06-13 20:15:24
[2026-06-13 20:15:24,618.618 INFO    ] 2026-06-13 20:15:24
[2026-06-13 20:15:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:15:24,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:15:24,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:15:24,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:15:25,016.016 INFO    ] time= 13/06/2026 20:15:24
[2026-06-13 20:15:25,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:15:25,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:15:25,144.144 INFO    ] No existing commands found in stream
[2026-06-13 20:15:30,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:15:30,158.158 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 20:15:33,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:15:33,455.455 INFO    ] Checking for system updates...
[2026-06-13 20:15:33,477.477 INFO    ] 200
[2026-06-13 20:15:33,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:33,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:15:33,511.511 INFO    ] No update needed
[2026-06-13 20:15:33,513.513 INFO    ] Checking for camera pi updates...
[2026-06-13 20:15:33,533.533 INFO    ] 200
[2026-06-13 20:15:33,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:33,558.558 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:15:33,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:15:33,605.605 INFO    ] No camera update needed
[2026-06-13 20:15:33,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:15:33,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:15:33,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:15:33,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:15:35,655.655 INFO    ] ================================================
[2026-06-13 20:15:35,671.671 INFO    ] Launching Daemon at Sat Jun 13 20:15:35 IST 2026
[2026-06-13 20:15:35,683.683 INFO    ] ================================================
[2026-06-13 20:15:36,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:15:36
[2026-06-13 20:15:36,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:15:36,475.475 INFO    ] Initializing speech engine...
[2026-06-13 20:15:36,479.479 INFO    ] 2026-06-13 20:15:36
[2026-06-13 20:15:36,697.697 INFO    ] 2026-06-13 20:15:36
[2026-06-13 20:15:36,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:15:36,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:15:36,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:15:37,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:15:37,114.114 INFO    ] time= 13/06/2026 20:15:37
[2026-06-13 20:15:37,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:15:37,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:15:37,220.220 INFO    ] No existing commands found in stream
[2026-06-13 20:15:42,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:15:42,234.234 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 20:15:46,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:15:46,040.040 INFO    ] Checking for system updates...
[2026-06-13 20:15:46,060.060 INFO    ] 200
[2026-06-13 20:15:46,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:46,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:15:46,093.093 INFO    ] No update needed
[2026-06-13 20:15:46,095.095 INFO    ] Checking for camera pi updates...
[2026-06-13 20:15:46,118.118 INFO    ] 200
[2026-06-13 20:15:46,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:46,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:15:46,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:15:46,185.185 INFO    ] No camera update needed
[2026-06-13 20:15:46,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:15:46,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:15:46,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:15:46,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:15:48,234.234 INFO    ] ================================================
[2026-06-13 20:15:48,249.249 INFO    ] Launching Daemon at Sat Jun 13 20:15:48 IST 2026
[2026-06-13 20:15:48,260.260 INFO    ] ================================================
[2026-06-13 20:15:48,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:15:48
[2026-06-13 20:15:48,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:15:49,080.080 INFO    ] Initializing speech engine...
[2026-06-13 20:15:49,085.085 INFO    ] 2026-06-13 20:15:49
[2026-06-13 20:15:49,291.291 INFO    ] 2026-06-13 20:15:49
[2026-06-13 20:15:49,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:15:49,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:15:49,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:15:49,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:15:49,680.680 INFO    ] time= 13/06/2026 20:15:49
[2026-06-13 20:15:49,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:15:49,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:15:49,797.797 INFO    ] No existing commands found in stream
[2026-06-13 20:15:54,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:15:54,810.810 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 20:15:56,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:15:56,785.785 INFO    ] Checking for system updates...
[2026-06-13 20:15:56,806.806 INFO    ] 200
[2026-06-13 20:15:56,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:56,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:15:56,839.839 INFO    ] No update needed
[2026-06-13 20:15:56,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 20:15:56,860.860 INFO    ] 200
[2026-06-13 20:15:56,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:15:56,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:15:57,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:15:57,027.027 INFO    ] No camera update needed
[2026-06-13 20:15:57,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:15:57,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:15:57,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:15:57,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:15:59,075.075 INFO    ] ================================================
[2026-06-13 20:15:59,091.091 INFO    ] Launching Daemon at Sat Jun 13 20:15:59 IST 2026
[2026-06-13 20:15:59,101.101 INFO    ] ================================================
[2026-06-13 20:15:59,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:15:59
[2026-06-13 20:15:59,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:15:59,923.923 INFO    ] Initializing speech engine...
[2026-06-13 20:15:59,934.934 INFO    ] 2026-06-13 20:15:59
[2026-06-13 20:16:00,137.137 INFO    ] 2026-06-13 20:16:00
[2026-06-13 20:16:00,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:00,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:00,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:00,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:00,540.540 INFO    ] time= 13/06/2026 20:16:00
[2026-06-13 20:16:00,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:00,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:00,650.650 INFO    ] No existing commands found in stream
[2026-06-13 20:16:05,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:16:05,667.667 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 20:16:08,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:16:08,885.885 INFO    ] Checking for system updates...
[2026-06-13 20:16:08,905.905 INFO    ] 200
[2026-06-13 20:16:08,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:08,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:16:08,939.939 INFO    ] No update needed
[2026-06-13 20:16:08,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 20:16:08,960.960 INFO    ] 200
[2026-06-13 20:16:08,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:08,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:16:09,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:09,033.033 INFO    ] No camera update needed
[2026-06-13 20:16:09,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:16:09,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:16:09,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:16:09,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:16:11,080.080 INFO    ] ================================================
[2026-06-13 20:16:11,095.095 INFO    ] Launching Daemon at Sat Jun 13 20:16:11 IST 2026
[2026-06-13 20:16:11,106.106 INFO    ] ================================================
[2026-06-13 20:16:11,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:16:11
[2026-06-13 20:16:11,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:16:11,978.978 INFO    ] Initializing speech engine...
[2026-06-13 20:16:11,997.997 INFO    ] 2026-06-13 20:16:11
[2026-06-13 20:16:12,250.250 INFO    ] 2026-06-13 20:16:12
[2026-06-13 20:16:12,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:12,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:12,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:12,596.596 INFO    ] time= 13/06/2026 20:16:12
[2026-06-13 20:16:12,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:12,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:12,708.708 INFO    ] No existing commands found in stream
[2026-06-13 20:16:17,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:16:17,723.723 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 20:16:20,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:16:20,008.008 INFO    ] Checking for system updates...
[2026-06-13 20:16:20,030.030 INFO    ] 200
[2026-06-13 20:16:20,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:20,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:16:20,066.066 INFO    ] No update needed
[2026-06-13 20:16:20,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 20:16:20,087.087 INFO    ] 200
[2026-06-13 20:16:20,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:20,114.114 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:16:20,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:16:20,151.151 INFO    ] No camera update needed
[2026-06-13 20:16:20,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:16:20,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:16:20,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:16:20,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:16:22,199.199 INFO    ] ================================================
[2026-06-13 20:16:22,215.215 INFO    ] Launching Daemon at Sat Jun 13 20:16:22 IST 2026
[2026-06-13 20:16:22,226.226 INFO    ] ================================================
[2026-06-13 20:16:22,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:16:22
[2026-06-13 20:16:22,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:16:23,165.165 INFO    ] Initializing speech engine...
[2026-06-13 20:16:23,179.179 INFO    ] 2026-06-13 20:16:23
[2026-06-13 20:16:23,468.468 INFO    ] 2026-06-13 20:16:23
[2026-06-13 20:16:23,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:23,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:23,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:23,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:23,902.902 INFO    ] time= 13/06/2026 20:16:23
[2026-06-13 20:16:23,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:24,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:24,072.072 INFO    ] No existing commands found in stream
[2026-06-13 20:16:29,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:16:29,088.088 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 20:16:30,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:16:30,250.250 INFO    ] Checking for system updates...
[2026-06-13 20:16:30,271.271 INFO    ] 200
[2026-06-13 20:16:30,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:30,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:30,308.308 INFO    ] No update needed
[2026-06-13 20:16:30,309.309 INFO    ] Checking for camera pi updates...
[2026-06-13 20:16:30,331.331 INFO    ] 200
[2026-06-13 20:16:30,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:30,356.356 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:16:30,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:16:30,407.407 INFO    ] No camera update needed
[2026-06-13 20:16:30,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:16:30,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:16:30,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:16:30,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:16:32,448.448 INFO    ] ================================================
[2026-06-13 20:16:32,458.458 INFO    ] Launching Daemon at Sat Jun 13 20:16:32 IST 2026
[2026-06-13 20:16:32,465.465 INFO    ] ================================================
[2026-06-13 20:16:32,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:16:32
[2026-06-13 20:16:33,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:16:33,247.247 INFO    ] Initializing speech engine...
[2026-06-13 20:16:33,257.257 INFO    ] 2026-06-13 20:16:33
[2026-06-13 20:16:33,462.462 INFO    ] 2026-06-13 20:16:33
[2026-06-13 20:16:33,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:33,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:33,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:33,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:33,869.869 INFO    ] time= 13/06/2026 20:16:33
[2026-06-13 20:16:33,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:33,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:33,979.979 INFO    ] No existing commands found in stream
[2026-06-13 20:16:38,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:16:38,992.992 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 20:16:40,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:16:40,203.203 INFO    ] Checking for system updates...
[2026-06-13 20:16:40,224.224 INFO    ] 200
[2026-06-13 20:16:40,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:40,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:40,260.260 INFO    ] No update needed
[2026-06-13 20:16:40,261.261 INFO    ] Checking for camera pi updates...
[2026-06-13 20:16:40,282.282 INFO    ] 200
[2026-06-13 20:16:40,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:40,309.309 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:16:40,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:40,351.351 INFO    ] No camera update needed
[2026-06-13 20:16:40,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:16:40,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:16:40,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:16:40,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:16:42,397.397 INFO    ] ================================================
[2026-06-13 20:16:42,413.413 INFO    ] Launching Daemon at Sat Jun 13 20:16:42 IST 2026
[2026-06-13 20:16:42,425.425 INFO    ] ================================================
[2026-06-13 20:16:42,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:16:42
[2026-06-13 20:16:43,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:16:43,260.260 INFO    ] Initializing speech engine...
[2026-06-13 20:16:43,264.264 INFO    ] 2026-06-13 20:16:43
[2026-06-13 20:16:43,470.470 INFO    ] 2026-06-13 20:16:43
[2026-06-13 20:16:43,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:43,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:43,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:43,830.830 INFO    ] time= 13/06/2026 20:16:43
[2026-06-13 20:16:43,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:43,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:43,996.996 INFO    ] No existing commands found in stream
[2026-06-13 20:16:49,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:16:49,010.010 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 20:16:53,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:16:53,009.009 INFO    ] Checking for system updates...
[2026-06-13 20:16:53,030.030 INFO    ] 200
[2026-06-13 20:16:53,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:53,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:53,063.063 INFO    ] No update needed
[2026-06-13 20:16:53,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 20:16:53,083.083 INFO    ] 200
[2026-06-13 20:16:53,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:16:53,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:16:53,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:16:53,156.156 INFO    ] No camera update needed
[2026-06-13 20:16:53,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:16:53,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:16:53,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:16:53,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:16:55,204.204 INFO    ] ================================================
[2026-06-13 20:16:55,220.220 INFO    ] Launching Daemon at Sat Jun 13 20:16:55 IST 2026
[2026-06-13 20:16:55,232.232 INFO    ] ================================================
[2026-06-13 20:16:55,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:16:55
[2026-06-13 20:16:55,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:16:56,076.076 INFO    ] Initializing speech engine...
[2026-06-13 20:16:56,081.081 INFO    ] 2026-06-13 20:16:56
[2026-06-13 20:16:56,291.291 INFO    ] 2026-06-13 20:16:56
[2026-06-13 20:16:56,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:16:56,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:16:56,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:16:56,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:16:56,706.706 INFO    ] time= 13/06/2026 20:16:56
[2026-06-13 20:16:56,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:16:56,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:16:56,806.806 INFO    ] No existing commands found in stream
[2026-06-13 20:17:01,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:17:01,825.825 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 20:17:04,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:17:04,713.713 INFO    ] Checking for system updates...
[2026-06-13 20:17:04,755.755 INFO    ] 200
[2026-06-13 20:17:04,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:04,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:04,819.819 INFO    ] No update needed
[2026-06-13 20:17:04,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 20:17:04,857.857 INFO    ] 200
[2026-06-13 20:17:04,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:04,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:17:04,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:04,954.954 INFO    ] No camera update needed
[2026-06-13 20:17:04,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:17:04,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:17:04,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:17:04,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:17:07,013.013 INFO    ] ================================================
[2026-06-13 20:17:07,029.029 INFO    ] Launching Daemon at Sat Jun 13 20:17:07 IST 2026
[2026-06-13 20:17:07,040.040 INFO    ] ================================================
[2026-06-13 20:17:07,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:17:07
[2026-06-13 20:17:07,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:17:07,829.829 INFO    ] Initializing speech engine...
[2026-06-13 20:17:07,834.834 INFO    ] 2026-06-13 20:17:07
[2026-06-13 20:17:08,042.042 INFO    ] 2026-06-13 20:17:08
[2026-06-13 20:17:08,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:17:08,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:17:08,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:17:08,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:17:08,425.425 INFO    ] time= 13/06/2026 20:17:08
[2026-06-13 20:17:08,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:17:08,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:17:08,570.570 INFO    ] No existing commands found in stream
[2026-06-13 20:17:13,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:17:13,584.584 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 20:17:17,266.266 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:17:17,267.267 INFO    ] Checking for system updates...
[2026-06-13 20:17:17,289.289 INFO    ] 200
[2026-06-13 20:17:17,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:17,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:17:17,322.322 INFO    ] No update needed
[2026-06-13 20:17:17,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 20:17:17,345.345 INFO    ] 200
[2026-06-13 20:17:17,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:17,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:17:17,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:17:17,411.411 INFO    ] No camera update needed
[2026-06-13 20:17:17,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:17:17,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:17:17,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:17:17,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:17:19,459.459 INFO    ] ================================================
[2026-06-13 20:17:19,474.474 INFO    ] Launching Daemon at Sat Jun 13 20:17:19 IST 2026
[2026-06-13 20:17:19,486.486 INFO    ] ================================================
[2026-06-13 20:17:19,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:17:19
[2026-06-13 20:17:20,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:17:20,311.311 INFO    ] Initializing speech engine...
[2026-06-13 20:17:20,317.317 INFO    ] 2026-06-13 20:17:20
[2026-06-13 20:17:20,524.524 INFO    ] 2026-06-13 20:17:20
[2026-06-13 20:17:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:17:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:17:20,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:17:20,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:17:20,897.897 INFO    ] time= 13/06/2026 20:17:20
[2026-06-13 20:17:20,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:17:20,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:17:21,043.043 INFO    ] No existing commands found in stream
[2026-06-13 20:17:26,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:17:26,056.056 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 20:17:29,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:17:29,940.940 INFO    ] Checking for system updates...
[2026-06-13 20:17:29,961.961 INFO    ] 200
[2026-06-13 20:17:29,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:29,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:17:29,996.996 INFO    ] No update needed
[2026-06-13 20:17:29,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 20:17:30,017.017 INFO    ] 200
[2026-06-13 20:17:30,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:30,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:17:30,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:17:30,088.088 INFO    ] No camera update needed
[2026-06-13 20:17:30,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:17:30,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:17:30,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:17:30,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:17:32,129.129 INFO    ] ================================================
[2026-06-13 20:17:32,138.138 INFO    ] Launching Daemon at Sat Jun 13 20:17:32 IST 2026
[2026-06-13 20:17:32,145.145 INFO    ] ================================================
[2026-06-13 20:17:32,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:17:32
[2026-06-13 20:17:32,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:17:32,949.949 INFO    ] Initializing speech engine...
[2026-06-13 20:17:32,954.954 INFO    ] 2026-06-13 20:17:32
[2026-06-13 20:17:33,184.184 INFO    ] 2026-06-13 20:17:33
[2026-06-13 20:17:33,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:17:33,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:17:33,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:17:33,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:17:33,452.452 INFO    ] time= 13/06/2026 20:17:33
[2026-06-13 20:17:33,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:17:33,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:17:33,571.571 INFO    ] No existing commands found in stream
[2026-06-13 20:17:38,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:17:38,597.597 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 20:17:42,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:17:42,674.674 INFO    ] Checking for system updates...
[2026-06-13 20:17:42,695.695 INFO    ] 200
[2026-06-13 20:17:42,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:42,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:42,729.729 INFO    ] No update needed
[2026-06-13 20:17:42,731.731 INFO    ] Checking for camera pi updates...
[2026-06-13 20:17:42,752.752 INFO    ] 200
[2026-06-13 20:17:42,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:42,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:17:42,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:42,823.823 INFO    ] No camera update needed
[2026-06-13 20:17:42,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:17:42,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:17:42,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:17:42,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:17:44,872.872 INFO    ] ================================================
[2026-06-13 20:17:44,888.888 INFO    ] Launching Daemon at Sat Jun 13 20:17:44 IST 2026
[2026-06-13 20:17:44,899.899 INFO    ] ================================================
[2026-06-13 20:17:45,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:17:45
[2026-06-13 20:17:45,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:17:45,723.723 INFO    ] Initializing speech engine...
[2026-06-13 20:17:45,728.728 INFO    ] 2026-06-13 20:17:45
[2026-06-13 20:17:45,931.931 INFO    ] 2026-06-13 20:17:45
[2026-06-13 20:17:45,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:17:46,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:17:46,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:17:46,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:17:46,332.332 INFO    ] time= 13/06/2026 20:17:46
[2026-06-13 20:17:46,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:17:46,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:17:46,451.451 INFO    ] No existing commands found in stream
[2026-06-13 20:17:51,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:17:51,465.465 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 20:17:52,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:17:52,160.160 INFO    ] Checking for system updates...
[2026-06-13 20:17:52,180.180 INFO    ] 200
[2026-06-13 20:17:52,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:52,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:52,213.213 INFO    ] No update needed
[2026-06-13 20:17:52,215.215 INFO    ] Checking for camera pi updates...
[2026-06-13 20:17:52,236.236 INFO    ] 200
[2026-06-13 20:17:52,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:17:52,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:17:52,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:17:52,304.304 INFO    ] No camera update needed
[2026-06-13 20:17:52,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:17:52,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:17:52,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:17:52,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:17:54,353.353 INFO    ] ================================================
[2026-06-13 20:17:54,370.370 INFO    ] Launching Daemon at Sat Jun 13 20:17:54 IST 2026
[2026-06-13 20:17:54,380.380 INFO    ] ================================================
[2026-06-13 20:17:54,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:17:54
[2026-06-13 20:17:55,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:17:55,181.181 INFO    ] Initializing speech engine...
[2026-06-13 20:17:55,189.189 INFO    ] 2026-06-13 20:17:55
[2026-06-13 20:17:55,403.403 INFO    ] 2026-06-13 20:17:55
[2026-06-13 20:17:55,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:17:55,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:17:55,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:17:55,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:17:55,808.808 INFO    ] time= 13/06/2026 20:17:55
[2026-06-13 20:17:55,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:17:55,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:17:55,924.924 INFO    ] No existing commands found in stream
[2026-06-13 20:18:00,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:00,937.937 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 20:18:02,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:18:02,532.532 INFO    ] Checking for system updates...
[2026-06-13 20:18:02,553.553 INFO    ] 200
[2026-06-13 20:18:02,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:02,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:02,586.586 INFO    ] No update needed
[2026-06-13 20:18:02,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 20:18:02,608.608 INFO    ] 200
[2026-06-13 20:18:02,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:02,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:18:02,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:02,659.659 INFO    ] No camera update needed
[2026-06-13 20:18:02,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:18:02,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:18:02,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:18:02,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:18:04,708.708 INFO    ] ================================================
[2026-06-13 20:18:04,723.723 INFO    ] Launching Daemon at Sat Jun 13 20:18:04 IST 2026
[2026-06-13 20:18:04,735.735 INFO    ] ================================================
[2026-06-13 20:18:05,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:18:05
[2026-06-13 20:18:05,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:18:05,605.605 INFO    ] Initializing speech engine...
[2026-06-13 20:18:05,615.615 INFO    ] 2026-06-13 20:18:05
[2026-06-13 20:18:05,820.820 INFO    ] 2026-06-13 20:18:05
[2026-06-13 20:18:05,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:18:05,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:18:06,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:18:06,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:18:06,222.222 INFO    ] time= 13/06/2026 20:18:06
[2026-06-13 20:18:06,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:18:06,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:18:06,343.343 INFO    ] No existing commands found in stream
[2026-06-13 20:18:11,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:11,357.357 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 20:18:15,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:18:15,257.257 INFO    ] Checking for system updates...
[2026-06-13 20:18:15,278.278 INFO    ] 200
[2026-06-13 20:18:15,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:15,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:15,314.314 INFO    ] No update needed
[2026-06-13 20:18:15,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 20:18:15,336.336 INFO    ] 200
[2026-06-13 20:18:15,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:15,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:18:15,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:15,414.414 INFO    ] No camera update needed
[2026-06-13 20:18:15,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:18:15,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:18:15,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:18:15,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:18:17,472.472 INFO    ] ================================================
[2026-06-13 20:18:17,486.486 INFO    ] Launching Daemon at Sat Jun 13 20:18:17 IST 2026
[2026-06-13 20:18:17,497.497 INFO    ] ================================================
[2026-06-13 20:18:18,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:18:18
[2026-06-13 20:18:18,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:18:18,816.816 INFO    ] Initializing speech engine...
[2026-06-13 20:18:18,830.830 INFO    ] 2026-06-13 20:18:18
[2026-06-13 20:18:19,027.027 INFO    ] 2026-06-13 20:18:19
[2026-06-13 20:18:19,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:18:19,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:18:19,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:18:19,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:18:19,335.335 INFO    ] time= 13/06/2026 20:18:19
[2026-06-13 20:18:19,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:18:19,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:18:19,436.436 INFO    ] No existing commands found in stream
[2026-06-13 20:18:24,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:24,473.473 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 20:18:26,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:18:26,980.980 INFO    ] Checking for system updates...
[2026-06-13 20:18:27,002.002 INFO    ] 200
[2026-06-13 20:18:27,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:27,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:27,036.036 INFO    ] No update needed
[2026-06-13 20:18:27,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 20:18:27,058.058 INFO    ] 200
[2026-06-13 20:18:27,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:27,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:18:27,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:27,140.140 INFO    ] No camera update needed
[2026-06-13 20:18:27,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:18:27,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:18:27,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:18:27,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:18:29,189.189 INFO    ] ================================================
[2026-06-13 20:18:29,204.204 INFO    ] Launching Daemon at Sat Jun 13 20:18:29 IST 2026
[2026-06-13 20:18:29,215.215 INFO    ] ================================================
[2026-06-13 20:18:29,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:18:29
[2026-06-13 20:18:29,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:18:29,989.989 INFO    ] Initializing speech engine...
[2026-06-13 20:18:29,993.993 INFO    ] 2026-06-13 20:18:29
[2026-06-13 20:18:30,211.211 INFO    ] 2026-06-13 20:18:30
[2026-06-13 20:18:30,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:18:30,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:18:30,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:18:30,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:18:30,626.626 INFO    ] time= 13/06/2026 20:18:30
[2026-06-13 20:18:30,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:18:30,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:18:30,732.732 INFO    ] No existing commands found in stream
[2026-06-13 20:18:35,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:35,746.746 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 20:18:37,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:18:37,594.594 INFO    ] Checking for system updates...
[2026-06-13 20:18:37,615.615 INFO    ] 200
[2026-06-13 20:18:37,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:37,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:37,651.651 INFO    ] No update needed
[2026-06-13 20:18:37,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 20:18:37,676.676 INFO    ] 200
[2026-06-13 20:18:37,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:37,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:18:37,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:18:37,731.731 INFO    ] No camera update needed
[2026-06-13 20:18:37,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:18:37,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:18:37,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:18:37,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:18:39,778.778 INFO    ] ================================================
[2026-06-13 20:18:39,794.794 INFO    ] Launching Daemon at Sat Jun 13 20:18:39 IST 2026
[2026-06-13 20:18:39,809.809 INFO    ] ================================================
[2026-06-13 20:18:40,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:18:40
[2026-06-13 20:18:40,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:18:40,608.608 INFO    ] Initializing speech engine...
[2026-06-13 20:18:40,611.611 INFO    ] 2026-06-13 20:18:40
[2026-06-13 20:18:40,830.830 INFO    ] 2026-06-13 20:18:40
[2026-06-13 20:18:40,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:18:40,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:18:41,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:18:41,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:18:41,239.239 INFO    ] time= 13/06/2026 20:18:41
[2026-06-13 20:18:41,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:18:41,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:18:41,350.350 INFO    ] No existing commands found in stream
[2026-06-13 20:18:46,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:46,363.363 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 20:18:47,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:18:47,572.572 INFO    ] Checking for system updates...
[2026-06-13 20:18:47,594.594 INFO    ] 200
[2026-06-13 20:18:47,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:47,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:18:47,630.630 INFO    ] No update needed
[2026-06-13 20:18:47,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 20:18:47,653.653 INFO    ] 200
[2026-06-13 20:18:47,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:18:47,681.681 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:18:47,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:18:47,718.718 INFO    ] No camera update needed
[2026-06-13 20:18:47,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:18:47,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:18:47,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:18:47,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:18:49,770.770 INFO    ] ================================================
[2026-06-13 20:18:49,786.786 INFO    ] Launching Daemon at Sat Jun 13 20:18:49 IST 2026
[2026-06-13 20:18:49,797.797 INFO    ] ================================================
[2026-06-13 20:18:50,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:18:50
[2026-06-13 20:18:50,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:18:50,586.586 INFO    ] Initializing speech engine...
[2026-06-13 20:18:50,596.596 INFO    ] 2026-06-13 20:18:50
[2026-06-13 20:18:50,803.803 INFO    ] 2026-06-13 20:18:50
[2026-06-13 20:18:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:18:51,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:18:51,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:18:51,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:18:51,206.206 INFO    ] time= 13/06/2026 20:18:51
[2026-06-13 20:18:51,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:18:51,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:18:51,315.315 INFO    ] No existing commands found in stream
[2026-06-13 20:18:56,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:18:56,328.328 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 20:19:00,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:19:00,223.223 INFO    ] Checking for system updates...
[2026-06-13 20:19:00,244.244 INFO    ] 200
[2026-06-13 20:19:00,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:00,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:00,280.280 INFO    ] No update needed
[2026-06-13 20:19:00,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:00,301.301 INFO    ] 200
[2026-06-13 20:19:00,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:00,372.372 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:00,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:00,419.419 INFO    ] No camera update needed
[2026-06-13 20:19:00,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:00,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:00,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:00,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:02,508.508 INFO    ] ================================================
[2026-06-13 20:19:02,529.529 INFO    ] Launching Daemon at Sat Jun 13 20:19:02 IST 2026
[2026-06-13 20:19:02,545.545 INFO    ] ================================================
[2026-06-13 20:19:03,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:03
[2026-06-13 20:19:03,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:03,784.784 INFO    ] Initializing speech engine...
[2026-06-13 20:19:03,789.789 INFO    ] 2026-06-13 20:19:03
[2026-06-13 20:19:03,994.994 INFO    ] 2026-06-13 20:19:03
[2026-06-13 20:19:04,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:04,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:04,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:04,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:04,348.348 INFO    ] time= 13/06/2026 20:19:04
[2026-06-13 20:19:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:04,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:04,508.508 INFO    ] No existing commands found in stream
[2026-06-13 20:19:09,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:19:09,522.522 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-13 20:19:10,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:19:10,919.919 INFO    ] Checking for system updates...
[2026-06-13 20:19:10,940.940 INFO    ] 200
[2026-06-13 20:19:10,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:10,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:19:10,973.973 INFO    ] No update needed
[2026-06-13 20:19:10,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:10,994.994 INFO    ] 200
[2026-06-13 20:19:10,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:11,018.018 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:11,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:11,055.055 INFO    ] No camera update needed
[2026-06-13 20:19:11,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:11,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:11,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:11,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:13,105.105 INFO    ] ================================================
[2026-06-13 20:19:13,121.121 INFO    ] Launching Daemon at Sat Jun 13 20:19:13 IST 2026
[2026-06-13 20:19:13,132.132 INFO    ] ================================================
[2026-06-13 20:19:13,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:13
[2026-06-13 20:19:13,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:13,939.939 INFO    ] Initializing speech engine...
[2026-06-13 20:19:13,951.951 INFO    ] 2026-06-13 20:19:13
[2026-06-13 20:19:14,156.156 INFO    ] 2026-06-13 20:19:14
[2026-06-13 20:19:14,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:14,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:14,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:14,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:14,544.544 INFO    ] time= 13/06/2026 20:19:14
[2026-06-13 20:19:14,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:14,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:14,668.668 INFO    ] No existing commands found in stream
[2026-06-13 20:19:19,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:19:19,680.680 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 20:19:22,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:19:22,236.236 INFO    ] Checking for system updates...
[2026-06-13 20:19:22,256.256 INFO    ] 200
[2026-06-13 20:19:22,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:22,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:22,292.292 INFO    ] No update needed
[2026-06-13 20:19:22,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:22,314.314 INFO    ] 200
[2026-06-13 20:19:22,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:22,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:22,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:22,384.384 INFO    ] No camera update needed
[2026-06-13 20:19:22,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:22,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:22,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:22,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:24,433.433 INFO    ] ================================================
[2026-06-13 20:19:24,449.449 INFO    ] Launching Daemon at Sat Jun 13 20:19:24 IST 2026
[2026-06-13 20:19:24,460.460 INFO    ] ================================================
[2026-06-13 20:19:24,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:24
[2026-06-13 20:19:25,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:25,261.261 INFO    ] Initializing speech engine...
[2026-06-13 20:19:25,266.266 INFO    ] 2026-06-13 20:19:25
[2026-06-13 20:19:25,480.480 INFO    ] 2026-06-13 20:19:25
[2026-06-13 20:19:25,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:25,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:25,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:25,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:25,881.881 INFO    ] time= 13/06/2026 20:19:25
[2026-06-13 20:19:25,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:25,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:26,032.032 INFO    ] No existing commands found in stream
[2026-06-13 20:19:31,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:19:31,046.046 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 20:19:32,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:19:32,908.908 INFO    ] Checking for system updates...
[2026-06-13 20:19:32,929.929 INFO    ] 200
[2026-06-13 20:19:32,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:32,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:19:32,962.962 INFO    ] No update needed
[2026-06-13 20:19:32,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:32,984.984 INFO    ] 200
[2026-06-13 20:19:32,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:33,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:33,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:19:33,052.052 INFO    ] No camera update needed
[2026-06-13 20:19:33,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:33,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:33,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:33,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:35,099.099 INFO    ] ================================================
[2026-06-13 20:19:35,116.116 INFO    ] Launching Daemon at Sat Jun 13 20:19:35 IST 2026
[2026-06-13 20:19:35,127.127 INFO    ] ================================================
[2026-06-13 20:19:35,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:35
[2026-06-13 20:19:35,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:35,920.920 INFO    ] Initializing speech engine...
[2026-06-13 20:19:35,929.929 INFO    ] 2026-06-13 20:19:35
[2026-06-13 20:19:36,134.134 INFO    ] 2026-06-13 20:19:36
[2026-06-13 20:19:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:36,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:36,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:36,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:36,508.508 INFO    ] time= 13/06/2026 20:19:36
[2026-06-13 20:19:36,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:36,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:36,655.655 INFO    ] No existing commands found in stream
[2026-06-13 20:19:41,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:19:41,670.670 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 20:19:44,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:19:44,079.079 INFO    ] Checking for system updates...
[2026-06-13 20:19:44,101.101 INFO    ] 200
[2026-06-13 20:19:44,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:44,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:44,134.134 INFO    ] No update needed
[2026-06-13 20:19:44,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:44,155.155 INFO    ] 200
[2026-06-13 20:19:44,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:44,180.180 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:44,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:44,221.221 INFO    ] No camera update needed
[2026-06-13 20:19:44,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:44,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:44,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:44,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:46,270.270 INFO    ] ================================================
[2026-06-13 20:19:46,286.286 INFO    ] Launching Daemon at Sat Jun 13 20:19:46 IST 2026
[2026-06-13 20:19:46,297.297 INFO    ] ================================================
[2026-06-13 20:19:46,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:46
[2026-06-13 20:19:46,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:47,145.145 INFO    ] Initializing speech engine...
[2026-06-13 20:19:47,154.154 INFO    ] 2026-06-13 20:19:47
[2026-06-13 20:19:47,366.366 INFO    ] 2026-06-13 20:19:47
[2026-06-13 20:19:47,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:47,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:47,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:47,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:47,784.784 INFO    ] time= 13/06/2026 20:19:47
[2026-06-13 20:19:47,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:47,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:47,892.892 INFO    ] No existing commands found in stream
[2026-06-13 20:19:52,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:19:52,910.910 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 20:19:53,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:19:53,340.340 INFO    ] Checking for system updates...
[2026-06-13 20:19:53,362.362 INFO    ] 200
[2026-06-13 20:19:53,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:53,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:53,396.396 INFO    ] No update needed
[2026-06-13 20:19:53,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 20:19:53,420.420 INFO    ] 200
[2026-06-13 20:19:53,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:19:53,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:19:53,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:19:53,486.486 INFO    ] No camera update needed
[2026-06-13 20:19:53,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:19:53,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:19:53,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:19:53,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:19:55,534.534 INFO    ] ================================================
[2026-06-13 20:19:55,550.550 INFO    ] Launching Daemon at Sat Jun 13 20:19:55 IST 2026
[2026-06-13 20:19:55,561.561 INFO    ] ================================================
[2026-06-13 20:19:55,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:19:55
[2026-06-13 20:19:56,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:19:56,379.379 INFO    ] Initializing speech engine...
[2026-06-13 20:19:56,391.391 INFO    ] 2026-06-13 20:19:56
[2026-06-13 20:19:56,600.600 INFO    ] 2026-06-13 20:19:56
[2026-06-13 20:19:56,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:19:56,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:19:56,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:19:56,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:19:56,983.983 INFO    ] time= 13/06/2026 20:19:56
[2026-06-13 20:19:57,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:19:57,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:19:57,118.118 INFO    ] No existing commands found in stream
[2026-06-13 20:20:02,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:20:02,134.134 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 20:20:07,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:20:07,148.148 INFO    ] Checking for system updates...
[2026-06-13 20:20:07,184.184 INFO    ] 200
[2026-06-13 20:20:07,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:07,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:07,233.233 INFO    ] No update needed
[2026-06-13 20:20:07,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 20:20:07,255.255 INFO    ] 200
[2026-06-13 20:20:07,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:07,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:20:07,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:07,426.426 INFO    ] No camera update needed
[2026-06-13 20:20:07,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:20:07,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:20:07,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:20:07,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:20:09,474.474 INFO    ] ================================================
[2026-06-13 20:20:09,490.490 INFO    ] Launching Daemon at Sat Jun 13 20:20:09 IST 2026
[2026-06-13 20:20:09,501.501 INFO    ] ================================================
[2026-06-13 20:20:09,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:20:09
[2026-06-13 20:20:10,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:20:10,294.294 INFO    ] Initializing speech engine...
[2026-06-13 20:20:10,299.299 INFO    ] 2026-06-13 20:20:10
[2026-06-13 20:20:10,528.528 INFO    ] 2026-06-13 20:20:10
[2026-06-13 20:20:10,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:20:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:20:10,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:20:10,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:20:10,940.940 INFO    ] time= 13/06/2026 20:20:10
[2026-06-13 20:20:10,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:20:11,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:20:11,081.081 INFO    ] No existing commands found in stream
[2026-06-13 20:20:16,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:20:16,093.093 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 20:20:19,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:20:19,127.127 INFO    ] Checking for system updates...
[2026-06-13 20:20:19,150.150 INFO    ] 200
[2026-06-13 20:20:19,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:19,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:20:19,184.184 INFO    ] No update needed
[2026-06-13 20:20:19,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 20:20:19,206.206 INFO    ] 200
[2026-06-13 20:20:19,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:19,232.232 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:20:19,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:20:19,276.276 INFO    ] No camera update needed
[2026-06-13 20:20:19,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:20:19,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:20:19,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:20:19,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:20:21,324.324 INFO    ] ================================================
[2026-06-13 20:20:21,340.340 INFO    ] Launching Daemon at Sat Jun 13 20:20:21 IST 2026
[2026-06-13 20:20:21,351.351 INFO    ] ================================================
[2026-06-13 20:20:21,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:20:21
[2026-06-13 20:20:22,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:20:22,161.161 INFO    ] Initializing speech engine...
[2026-06-13 20:20:22,166.166 INFO    ] 2026-06-13 20:20:22
[2026-06-13 20:20:22,358.358 INFO    ] 2026-06-13 20:20:22
[2026-06-13 20:20:22,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:20:22,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:20:22,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:20:22,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:20:22,780.780 INFO    ] time= 13/06/2026 20:20:22
[2026-06-13 20:20:22,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:20:22,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:20:22,963.963 INFO    ] No existing commands found in stream
[2026-06-13 20:20:27,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:20:27,975.975 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 20:20:29,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:20:29,580.580 INFO    ] Checking for system updates...
[2026-06-13 20:20:29,600.600 INFO    ] 200
[2026-06-13 20:20:29,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:29,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:29,634.634 INFO    ] No update needed
[2026-06-13 20:20:29,636.636 INFO    ] Checking for camera pi updates...
[2026-06-13 20:20:29,656.656 INFO    ] 200
[2026-06-13 20:20:29,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:29,683.683 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:20:29,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:29,720.720 INFO    ] No camera update needed
[2026-06-13 20:20:29,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:20:29,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:20:29,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:20:29,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:20:31,760.760 INFO    ] ================================================
[2026-06-13 20:20:31,770.770 INFO    ] Launching Daemon at Sat Jun 13 20:20:31 IST 2026
[2026-06-13 20:20:31,779.779 INFO    ] ================================================
[2026-06-13 20:20:32,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:20:32
[2026-06-13 20:20:32,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:20:32,647.647 INFO    ] Initializing speech engine...
[2026-06-13 20:20:32,652.652 INFO    ] 2026-06-13 20:20:32
[2026-06-13 20:20:32,861.861 INFO    ] 2026-06-13 20:20:32
[2026-06-13 20:20:32,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:20:33,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:20:33,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:20:33,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:20:33,268.268 INFO    ] time= 13/06/2026 20:20:33
[2026-06-13 20:20:33,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:20:33,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:20:33,380.380 INFO    ] No existing commands found in stream
[2026-06-13 20:20:38,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:20:38,393.393 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 20:20:42,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:20:42,689.689 INFO    ] Checking for system updates...
[2026-06-13 20:20:42,710.710 INFO    ] 200
[2026-06-13 20:20:42,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:42,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:20:42,746.746 INFO    ] No update needed
[2026-06-13 20:20:42,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 20:20:42,767.767 INFO    ] 200
[2026-06-13 20:20:42,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:42,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:20:42,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:42,841.841 INFO    ] No camera update needed
[2026-06-13 20:20:42,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:20:42,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:20:42,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:20:42,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:20:44,889.889 INFO    ] ================================================
[2026-06-13 20:20:44,905.905 INFO    ] Launching Daemon at Sat Jun 13 20:20:44 IST 2026
[2026-06-13 20:20:44,916.916 INFO    ] ================================================
[2026-06-13 20:20:45,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:20:45
[2026-06-13 20:20:45,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:20:45,770.770 INFO    ] Initializing speech engine...
[2026-06-13 20:20:45,775.775 INFO    ] 2026-06-13 20:20:45
[2026-06-13 20:20:45,985.985 INFO    ] 2026-06-13 20:20:45
[2026-06-13 20:20:46,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:20:46,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:20:46,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:20:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:20:46,408.408 INFO    ] time= 13/06/2026 20:20:46
[2026-06-13 20:20:46,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:20:46,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:20:46,511.511 INFO    ] No existing commands found in stream
[2026-06-13 20:20:51,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:20:51,525.525 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 20:20:55,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:20:55,594.594 INFO    ] Checking for system updates...
[2026-06-13 20:20:55,616.616 INFO    ] 200
[2026-06-13 20:20:55,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:55,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:55,652.652 INFO    ] No update needed
[2026-06-13 20:20:55,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 20:20:55,673.673 INFO    ] 200
[2026-06-13 20:20:55,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:20:55,700.700 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:20:55,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:20:55,751.751 INFO    ] No camera update needed
[2026-06-13 20:20:55,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:20:55,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:20:55,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:20:55,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:20:57,798.798 INFO    ] ================================================
[2026-06-13 20:20:57,815.815 INFO    ] Launching Daemon at Sat Jun 13 20:20:57 IST 2026
[2026-06-13 20:20:57,826.826 INFO    ] ================================================
[2026-06-13 20:20:58,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:20:58
[2026-06-13 20:20:58,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:20:59,133.133 INFO    ] Initializing speech engine...
[2026-06-13 20:20:59,148.148 INFO    ] 2026-06-13 20:20:59
[2026-06-13 20:20:59,442.442 INFO    ] 2026-06-13 20:20:59
[2026-06-13 20:20:59,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:20:59,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:20:59,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:20:59,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:20:59,883.883 INFO    ] time= 13/06/2026 20:20:59
[2026-06-13 20:20:59,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:20:59,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:00,097.097 INFO    ] No existing commands found in stream
[2026-06-13 20:21:05,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:21:05,130.130 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 20:21:08,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:21:08,234.234 INFO    ] Checking for system updates...
[2026-06-13 20:21:08,257.257 INFO    ] 200
[2026-06-13 20:21:08,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:08,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:08,291.291 INFO    ] No update needed
[2026-06-13 20:21:08,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 20:21:08,312.312 INFO    ] 200
[2026-06-13 20:21:08,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:08,339.339 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:21:08,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:08,382.382 INFO    ] No camera update needed
[2026-06-13 20:21:08,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:21:08,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:21:08,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:21:08,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:21:10,431.431 INFO    ] ================================================
[2026-06-13 20:21:10,447.447 INFO    ] Launching Daemon at Sat Jun 13 20:21:10 IST 2026
[2026-06-13 20:21:10,459.459 INFO    ] ================================================
[2026-06-13 20:21:10,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:21:10
[2026-06-13 20:21:11,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:21:11,235.235 INFO    ] Initializing speech engine...
[2026-06-13 20:21:11,240.240 INFO    ] 2026-06-13 20:21:11
[2026-06-13 20:21:11,437.437 INFO    ] 2026-06-13 20:21:11
[2026-06-13 20:21:11,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:21:11,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:21:11,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:21:11,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:21:11,720.720 INFO    ] time= 13/06/2026 20:21:11
[2026-06-13 20:21:11,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:21:11,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:11,833.833 INFO    ] No existing commands found in stream
[2026-06-13 20:21:16,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:21:16,852.852 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 20:21:19,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:21:19,807.807 INFO    ] Checking for system updates...
[2026-06-13 20:21:19,829.829 INFO    ] 200
[2026-06-13 20:21:19,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:19,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:19,864.864 INFO    ] No update needed
[2026-06-13 20:21:19,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 20:21:19,887.887 INFO    ] 200
[2026-06-13 20:21:19,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:19,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:21:19,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:19,955.955 INFO    ] No camera update needed
[2026-06-13 20:21:19,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:21:19,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:21:19,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:21:19,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:21:21,994.994 INFO    ] ================================================
[2026-06-13 20:21:22,003.003 INFO    ] Launching Daemon at Sat Jun 13 20:21:22 IST 2026
[2026-06-13 20:21:22,009.009 INFO    ] ================================================
[2026-06-13 20:21:22,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:21:22
[2026-06-13 20:21:22,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:21:22,815.815 INFO    ] Initializing speech engine...
[2026-06-13 20:21:22,825.825 INFO    ] 2026-06-13 20:21:22
[2026-06-13 20:21:23,030.030 INFO    ] 2026-06-13 20:21:23
[2026-06-13 20:21:23,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:21:23,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:21:23,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:21:23,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:21:23,430.430 INFO    ] time= 13/06/2026 20:21:23
[2026-06-13 20:21:23,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:21:23,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:23,552.552 INFO    ] No existing commands found in stream
[2026-06-13 20:21:28,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:21:28,565.565 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 20:21:30,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:21:30,332.332 INFO    ] Checking for system updates...
[2026-06-13 20:21:30,354.354 INFO    ] 200
[2026-06-13 20:21:30,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:30,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:30,387.387 INFO    ] No update needed
[2026-06-13 20:21:30,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 20:21:30,409.409 INFO    ] 200
[2026-06-13 20:21:30,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:30,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:21:30,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:30,481.481 INFO    ] No camera update needed
[2026-06-13 20:21:30,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:21:30,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:21:30,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:21:30,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:21:32,522.522 INFO    ] ================================================
[2026-06-13 20:21:32,531.531 INFO    ] Launching Daemon at Sat Jun 13 20:21:32 IST 2026
[2026-06-13 20:21:32,541.541 INFO    ] ================================================
[2026-06-13 20:21:33,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:21:33
[2026-06-13 20:21:33,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:21:34,043.043 INFO    ] Initializing speech engine...
[2026-06-13 20:21:34,049.049 INFO    ] 2026-06-13 20:21:34
[2026-06-13 20:21:34,349.349 INFO    ] 2026-06-13 20:21:34
[2026-06-13 20:21:34,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:21:34,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:21:34,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:21:34,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:21:34,714.714 INFO    ] time= 13/06/2026 20:21:34
[2026-06-13 20:21:34,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:21:34,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:34,832.832 INFO    ] No existing commands found in stream
[2026-06-13 20:21:39,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:21:39,846.846 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 20:21:43,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:21:43,677.677 INFO    ] Checking for system updates...
[2026-06-13 20:21:43,698.698 INFO    ] 200
[2026-06-13 20:21:43,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:43,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:43,731.731 INFO    ] No update needed
[2026-06-13 20:21:43,732.732 INFO    ] Checking for camera pi updates...
[2026-06-13 20:21:43,752.752 INFO    ] 200
[2026-06-13 20:21:43,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:43,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:21:43,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:43,835.835 INFO    ] No camera update needed
[2026-06-13 20:21:43,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:21:43,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:21:43,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:21:43,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:21:45,884.884 INFO    ] ================================================
[2026-06-13 20:21:45,901.901 INFO    ] Launching Daemon at Sat Jun 13 20:21:45 IST 2026
[2026-06-13 20:21:45,912.912 INFO    ] ================================================
[2026-06-13 20:21:46,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:21:46
[2026-06-13 20:21:46,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:21:46,697.697 INFO    ] Initializing speech engine...
[2026-06-13 20:21:46,710.710 INFO    ] 2026-06-13 20:21:46
[2026-06-13 20:21:46,915.915 INFO    ] 2026-06-13 20:21:46
[2026-06-13 20:21:46,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:21:47,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:21:47,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:21:47,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:21:47,322.322 INFO    ] time= 13/06/2026 20:21:47
[2026-06-13 20:21:47,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:21:47,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:47,432.432 INFO    ] No existing commands found in stream
[2026-06-13 20:21:52,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:21:52,443.443 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 20:21:54,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:21:54,711.711 INFO    ] Checking for system updates...
[2026-06-13 20:21:54,732.732 INFO    ] 200
[2026-06-13 20:21:54,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:54,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:21:54,768.768 INFO    ] No update needed
[2026-06-13 20:21:54,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 20:21:54,790.790 INFO    ] 200
[2026-06-13 20:21:54,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:21:54,817.817 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:21:54,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:21:54,856.856 INFO    ] No camera update needed
[2026-06-13 20:21:54,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:21:54,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:21:54,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:21:54,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:21:56,905.905 INFO    ] ================================================
[2026-06-13 20:21:56,921.921 INFO    ] Launching Daemon at Sat Jun 13 20:21:56 IST 2026
[2026-06-13 20:21:56,932.932 INFO    ] ================================================
[2026-06-13 20:21:57,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:21:57
[2026-06-13 20:21:57,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:21:57,782.782 INFO    ] Initializing speech engine...
[2026-06-13 20:21:57,792.792 INFO    ] 2026-06-13 20:21:57
[2026-06-13 20:21:57,996.996 INFO    ] 2026-06-13 20:21:57
[2026-06-13 20:21:58,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:21:58,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:21:58,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:21:58,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:21:58,392.392 INFO    ] time= 13/06/2026 20:21:58
[2026-06-13 20:21:58,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:21:58,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:21:58,513.513 INFO    ] No existing commands found in stream
[2026-06-13 20:22:03,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:03,526.526 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 20:22:04,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:22:04,585.585 INFO    ] Checking for system updates...
[2026-06-13 20:22:04,606.606 INFO    ] 200
[2026-06-13 20:22:04,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:04,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:22:04,643.643 INFO    ] No update needed
[2026-06-13 20:22:04,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:04,664.664 INFO    ] 200
[2026-06-13 20:22:04,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:04,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:04,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:22:04,730.730 INFO    ] No camera update needed
[2026-06-13 20:22:04,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:04,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:04,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:04,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:22:06,778.778 INFO    ] ================================================
[2026-06-13 20:22:06,793.793 INFO    ] Launching Daemon at Sat Jun 13 20:22:06 IST 2026
[2026-06-13 20:22:06,805.805 INFO    ] ================================================
[2026-06-13 20:22:07,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:22:07
[2026-06-13 20:22:07,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:22:07,685.685 INFO    ] Initializing speech engine...
[2026-06-13 20:22:07,688.688 INFO    ] 2026-06-13 20:22:07
[2026-06-13 20:22:07,897.897 INFO    ] 2026-06-13 20:22:07
[2026-06-13 20:22:07,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:22:08,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:22:08,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:22:08,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:22:08,316.316 INFO    ] time= 13/06/2026 20:22:08
[2026-06-13 20:22:08,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:22:08,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:22:08,423.423 INFO    ] No existing commands found in stream
[2026-06-13 20:22:13,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:13,437.437 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 20:22:13,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:22:13,763.763 INFO    ] Checking for system updates...
[2026-06-13 20:22:13,784.784 INFO    ] 200
[2026-06-13 20:22:13,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:13,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:13,818.818 INFO    ] No update needed
[2026-06-13 20:22:13,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:13,839.839 INFO    ] 200
[2026-06-13 20:22:13,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:13,866.866 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:14,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:14,009.009 INFO    ] No camera update needed
[2026-06-13 20:22:14,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:14,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:14,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:14,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:22:16,058.058 INFO    ] ================================================
[2026-06-13 20:22:16,074.074 INFO    ] Launching Daemon at Sat Jun 13 20:22:16 IST 2026
[2026-06-13 20:22:16,085.085 INFO    ] ================================================
[2026-06-13 20:22:16,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:22:16
[2026-06-13 20:22:16,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:22:16,900.900 INFO    ] Initializing speech engine...
[2026-06-13 20:22:16,905.905 INFO    ] 2026-06-13 20:22:16
[2026-06-13 20:22:17,111.111 INFO    ] 2026-06-13 20:22:17
[2026-06-13 20:22:17,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:22:17,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:22:17,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:22:17,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:22:17,512.512 INFO    ] time= 13/06/2026 20:22:17
[2026-06-13 20:22:17,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:22:17,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:22:17,586.586 INFO    ] No existing commands found in stream
[2026-06-13 20:22:22,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:22,597.597 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-13 20:22:24,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:22:24,537.537 INFO    ] Checking for system updates...
[2026-06-13 20:22:24,559.559 INFO    ] 200
[2026-06-13 20:22:24,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:24,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:24,597.597 INFO    ] No update needed
[2026-06-13 20:22:24,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:24,620.620 INFO    ] 200
[2026-06-13 20:22:24,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:24,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:24,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:24,684.684 INFO    ] No camera update needed
[2026-06-13 20:22:24,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:24,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:24,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:22:26,732.732 INFO    ] ================================================
[2026-06-13 20:22:26,748.748 INFO    ] Launching Daemon at Sat Jun 13 20:22:26 IST 2026
[2026-06-13 20:22:26,758.758 INFO    ] ================================================
[2026-06-13 20:22:27,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:22:27
[2026-06-13 20:22:27,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:22:27,567.567 INFO    ] Initializing speech engine...
[2026-06-13 20:22:27,575.575 INFO    ] 2026-06-13 20:22:27
[2026-06-13 20:22:27,798.798 INFO    ] 2026-06-13 20:22:27
[2026-06-13 20:22:27,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:22:28,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:22:28,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:22:28,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:22:28,221.221 INFO    ] time= 13/06/2026 20:22:28
[2026-06-13 20:22:28,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:22:28,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:22:28,353.353 INFO    ] No existing commands found in stream
[2026-06-13 20:22:33,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:33,366.366 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 20:22:35,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:22:35,568.568 INFO    ] Checking for system updates...
[2026-06-13 20:22:35,590.590 INFO    ] 200
[2026-06-13 20:22:35,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:35,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:35,623.623 INFO    ] No update needed
[2026-06-13 20:22:35,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:35,644.644 INFO    ] 200
[2026-06-13 20:22:35,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:35,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:35,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:35,709.709 INFO    ] No camera update needed
[2026-06-13 20:22:35,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:35,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:35,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:35,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:22:37,757.757 INFO    ] ================================================
[2026-06-13 20:22:37,772.772 INFO    ] Launching Daemon at Sat Jun 13 20:22:37 IST 2026
[2026-06-13 20:22:37,783.783 INFO    ] ================================================
[2026-06-13 20:22:38,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:22:38
[2026-06-13 20:22:38,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:22:38,586.586 INFO    ] Initializing speech engine...
[2026-06-13 20:22:38,592.592 INFO    ] 2026-06-13 20:22:38
[2026-06-13 20:22:38,794.794 INFO    ] 2026-06-13 20:22:38
[2026-06-13 20:22:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:22:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:22:39,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:22:39,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:22:39,202.202 INFO    ] time= 13/06/2026 20:22:39
[2026-06-13 20:22:39,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:22:39,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:22:39,307.307 INFO    ] No existing commands found in stream
[2026-06-13 20:22:44,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:44,319.319 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-13 20:22:46,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:22:46,390.390 INFO    ] Checking for system updates...
[2026-06-13 20:22:46,410.410 INFO    ] 200
[2026-06-13 20:22:46,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:46,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:46,446.446 INFO    ] No update needed
[2026-06-13 20:22:46,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:46,469.469 INFO    ] 200
[2026-06-13 20:22:46,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:46,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:46,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:46,539.539 INFO    ] No camera update needed
[2026-06-13 20:22:46,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:46,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:46,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:46,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:22:48,590.590 INFO    ] ================================================
[2026-06-13 20:22:48,605.605 INFO    ] Launching Daemon at Sat Jun 13 20:22:48 IST 2026
[2026-06-13 20:22:48,617.617 INFO    ] ================================================
[2026-06-13 20:22:48,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:22:48
[2026-06-13 20:22:49,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:22:49,415.415 INFO    ] Initializing speech engine...
[2026-06-13 20:22:49,419.419 INFO    ] 2026-06-13 20:22:49
[2026-06-13 20:22:49,648.648 INFO    ] 2026-06-13 20:22:49
[2026-06-13 20:22:49,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:22:49,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:22:49,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:22:49,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:22:50,008.008 INFO    ] time= 13/06/2026 20:22:49
[2026-06-13 20:22:50,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:22:50,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:22:50,205.205 INFO    ] No existing commands found in stream
[2026-06-13 20:22:55,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:22:55,219.219 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 20:22:58,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:22:58,732.732 INFO    ] Checking for system updates...
[2026-06-13 20:22:58,753.753 INFO    ] 200
[2026-06-13 20:22:58,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:58,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:58,789.789 INFO    ] No update needed
[2026-06-13 20:22:58,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 20:22:58,811.811 INFO    ] 200
[2026-06-13 20:22:58,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:22:58,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:22:58,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:22:58,873.873 INFO    ] No camera update needed
[2026-06-13 20:22:58,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:22:58,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:22:58,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:22:58,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:00,920.920 INFO    ] ================================================
[2026-06-13 20:23:00,936.936 INFO    ] Launching Daemon at Sat Jun 13 20:23:00 IST 2026
[2026-06-13 20:23:00,947.947 INFO    ] ================================================
[2026-06-13 20:23:01,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:01
[2026-06-13 20:23:01,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:02,146.146 INFO    ] Initializing speech engine...
[2026-06-13 20:23:02,154.154 INFO    ] 2026-06-13 20:23:02
[2026-06-13 20:23:02,460.460 INFO    ] 2026-06-13 20:23:02
[2026-06-13 20:23:02,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:02,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:02,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:02,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:02,954.954 INFO    ] time= 13/06/2026 20:23:02
[2026-06-13 20:23:03,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:03,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:03,143.143 INFO    ] No existing commands found in stream
[2026-06-13 20:23:08,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:23:08,158.158 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 20:23:09,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:23:09,247.247 INFO    ] Checking for system updates...
[2026-06-13 20:23:09,269.269 INFO    ] 200
[2026-06-13 20:23:09,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:09,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:09,304.304 INFO    ] No update needed
[2026-06-13 20:23:09,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 20:23:09,325.325 INFO    ] 200
[2026-06-13 20:23:09,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:09,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:23:09,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:09,388.388 INFO    ] No camera update needed
[2026-06-13 20:23:09,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:23:09,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:23:09,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:23:09,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:11,435.435 INFO    ] ================================================
[2026-06-13 20:23:11,451.451 INFO    ] Launching Daemon at Sat Jun 13 20:23:11 IST 2026
[2026-06-13 20:23:11,462.462 INFO    ] ================================================
[2026-06-13 20:23:11,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:11
[2026-06-13 20:23:12,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:12,244.244 INFO    ] Initializing speech engine...
[2026-06-13 20:23:12,255.255 INFO    ] 2026-06-13 20:23:12
[2026-06-13 20:23:12,469.469 INFO    ] 2026-06-13 20:23:12
[2026-06-13 20:23:12,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:12,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:12,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:12,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:12,890.890 INFO    ] time= 13/06/2026 20:23:12
[2026-06-13 20:23:12,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:12,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:13,027.027 INFO    ] No existing commands found in stream
[2026-06-13 20:23:18,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:23:18,041.041 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 20:23:18,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:23:18,453.453 INFO    ] Checking for system updates...
[2026-06-13 20:23:18,473.473 INFO    ] 200
[2026-06-13 20:23:18,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:18,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:18,509.509 INFO    ] No update needed
[2026-06-13 20:23:18,510.510 INFO    ] Checking for camera pi updates...
[2026-06-13 20:23:18,530.530 INFO    ] 200
[2026-06-13 20:23:18,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:18,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:23:18,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:18,600.600 INFO    ] No camera update needed
[2026-06-13 20:23:18,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:23:18,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:23:18,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:23:18,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:20,647.647 INFO    ] ================================================
[2026-06-13 20:23:20,664.664 INFO    ] Launching Daemon at Sat Jun 13 20:23:20 IST 2026
[2026-06-13 20:23:20,675.675 INFO    ] ================================================
[2026-06-13 20:23:21,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:21
[2026-06-13 20:23:21,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:21,549.549 INFO    ] Initializing speech engine...
[2026-06-13 20:23:21,555.555 INFO    ] 2026-06-13 20:23:21
[2026-06-13 20:23:21,763.763 INFO    ] 2026-06-13 20:23:21
[2026-06-13 20:23:21,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:21,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:21,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:22,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:22,177.177 INFO    ] time= 13/06/2026 20:23:22
[2026-06-13 20:23:22,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:22,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:22,281.281 INFO    ] No existing commands found in stream
[2026-06-13 20:23:27,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:23:27,296.296 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-13 20:23:31,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:23:31,247.247 INFO    ] Checking for system updates...
[2026-06-13 20:23:31,285.285 INFO    ] 200
[2026-06-13 20:23:31,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:31,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:31,332.332 INFO    ] No update needed
[2026-06-13 20:23:31,333.333 INFO    ] Checking for camera pi updates...
[2026-06-13 20:23:31,353.353 INFO    ] 200
[2026-06-13 20:23:31,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:31,380.380 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:23:31,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:23:31,432.432 INFO    ] No camera update needed
[2026-06-13 20:23:31,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:23:31,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:23:31,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:23:31,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:33,474.474 INFO    ] ================================================
[2026-06-13 20:23:33,490.490 INFO    ] Launching Daemon at Sat Jun 13 20:23:33 IST 2026
[2026-06-13 20:23:33,501.501 INFO    ] ================================================
[2026-06-13 20:23:33,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:33
[2026-06-13 20:23:34,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:34,292.292 INFO    ] Initializing speech engine...
[2026-06-13 20:23:34,297.297 INFO    ] 2026-06-13 20:23:34
[2026-06-13 20:23:34,528.528 INFO    ] 2026-06-13 20:23:34
[2026-06-13 20:23:34,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:34,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:34,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:34,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:34,960.960 INFO    ] time= 13/06/2026 20:23:34
[2026-06-13 20:23:35,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:35,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:35,087.087 INFO    ] No existing commands found in stream
[2026-06-13 20:23:40,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:23:40,101.101 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 20:23:43,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:23:43,236.236 INFO    ] Checking for system updates...
[2026-06-13 20:23:43,259.259 INFO    ] 200
[2026-06-13 20:23:43,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:43,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:43,295.295 INFO    ] No update needed
[2026-06-13 20:23:43,296.296 INFO    ] Checking for camera pi updates...
[2026-06-13 20:23:43,317.317 INFO    ] 200
[2026-06-13 20:23:43,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:43,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:23:43,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:43,394.394 INFO    ] No camera update needed
[2026-06-13 20:23:43,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:23:43,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:23:43,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:23:43,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:45,442.442 INFO    ] ================================================
[2026-06-13 20:23:45,458.458 INFO    ] Launching Daemon at Sat Jun 13 20:23:45 IST 2026
[2026-06-13 20:23:45,470.470 INFO    ] ================================================
[2026-06-13 20:23:45,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:45
[2026-06-13 20:23:46,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:46,329.329 INFO    ] Initializing speech engine...
[2026-06-13 20:23:46,335.335 INFO    ] 2026-06-13 20:23:46
[2026-06-13 20:23:46,543.543 INFO    ] 2026-06-13 20:23:46
[2026-06-13 20:23:46,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:46,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:46,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:46,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:46,969.969 INFO    ] time= 13/06/2026 20:23:46
[2026-06-13 20:23:46,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:46,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:47,065.065 INFO    ] No existing commands found in stream
[2026-06-13 20:23:52,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:23:52,093.093 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 20:23:53,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:23:53,762.762 INFO    ] Checking for system updates...
[2026-06-13 20:23:53,784.784 INFO    ] 200
[2026-06-13 20:23:53,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:53,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:53,821.821 INFO    ] No update needed
[2026-06-13 20:23:53,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 20:23:53,844.844 INFO    ] 200
[2026-06-13 20:23:53,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:23:53,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:23:53,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:23:53,921.921 INFO    ] No camera update needed
[2026-06-13 20:23:53,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:23:53,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:23:53,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:23:53,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:23:55,971.971 INFO    ] ================================================
[2026-06-13 20:23:55,987.987 INFO    ] Launching Daemon at Sat Jun 13 20:23:55 IST 2026
[2026-06-13 20:23:56,998.998 INFO    ] ================================================
[2026-06-13 20:23:56,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:23:56
[2026-06-13 20:23:56,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:23:56,855.855 INFO    ] Initializing speech engine...
[2026-06-13 20:23:56,859.859 INFO    ] 2026-06-13 20:23:56
[2026-06-13 20:23:57,066.066 INFO    ] 2026-06-13 20:23:57
[2026-06-13 20:23:57,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:23:57,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:23:57,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:23:57,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:23:57,485.485 INFO    ] time= 13/06/2026 20:23:57
[2026-06-13 20:23:57,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:23:57,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:23:57,580.580 INFO    ] No existing commands found in stream
[2026-06-13 20:24:02,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:02,600.600 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 20:24:05,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:24:05,443.443 INFO    ] Checking for system updates...
[2026-06-13 20:24:05,466.466 INFO    ] 200
[2026-06-13 20:24:05,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:05,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:24:05,499.499 INFO    ] No update needed
[2026-06-13 20:24:05,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:05,521.521 INFO    ] 200
[2026-06-13 20:24:05,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:05,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:05,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:24:05,591.591 INFO    ] No camera update needed
[2026-06-13 20:24:05,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:05,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:05,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:05,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:07,630.630 INFO    ] ================================================
[2026-06-13 20:24:07,639.639 INFO    ] Launching Daemon at Sat Jun 13 20:24:07 IST 2026
[2026-06-13 20:24:07,646.646 INFO    ] ================================================
[2026-06-13 20:24:08,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:08
[2026-06-13 20:24:08,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:08,495.495 INFO    ] Initializing speech engine...
[2026-06-13 20:24:08,504.504 INFO    ] 2026-06-13 20:24:08
[2026-06-13 20:24:08,735.735 INFO    ] 2026-06-13 20:24:08
[2026-06-13 20:24:08,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:08,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:08,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:09,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:09,153.153 INFO    ] time= 13/06/2026 20:24:09
[2026-06-13 20:24:09,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:09,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:09,327.327 INFO    ] No existing commands found in stream
[2026-06-13 20:24:14,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:14,361.361 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 20:24:15,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:24:15,858.858 INFO    ] Checking for system updates...
[2026-06-13 20:24:15,881.881 INFO    ] 200
[2026-06-13 20:24:15,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:15,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:15,914.914 INFO    ] No update needed
[2026-06-13 20:24:15,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:15,935.935 INFO    ] 200
[2026-06-13 20:24:15,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:15,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:16,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:16,108.108 INFO    ] No camera update needed
[2026-06-13 20:24:16,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:16,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:16,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:18,156.156 INFO    ] ================================================
[2026-06-13 20:24:18,172.172 INFO    ] Launching Daemon at Sat Jun 13 20:24:18 IST 2026
[2026-06-13 20:24:18,186.186 INFO    ] ================================================
[2026-06-13 20:24:18,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:18
[2026-06-13 20:24:18,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:18,971.971 INFO    ] Initializing speech engine...
[2026-06-13 20:24:18,979.979 INFO    ] 2026-06-13 20:24:18
[2026-06-13 20:24:19,190.190 INFO    ] 2026-06-13 20:24:19
[2026-06-13 20:24:19,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:19,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:19,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:19,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:19,590.590 INFO    ] time= 13/06/2026 20:24:19
[2026-06-13 20:24:19,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:19,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:19,706.706 INFO    ] No existing commands found in stream
[2026-06-13 20:24:24,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:24,718.718 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 20:24:25,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:24:25,072.072 INFO    ] Checking for system updates...
[2026-06-13 20:24:25,093.093 INFO    ] 200
[2026-06-13 20:24:25,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:25,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:25,129.129 INFO    ] No update needed
[2026-06-13 20:24:25,130.130 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:25,150.150 INFO    ] 200
[2026-06-13 20:24:25,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:25,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:25,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:25,212.212 INFO    ] No camera update needed
[2026-06-13 20:24:25,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:25,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:25,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:25,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:27,261.261 INFO    ] ================================================
[2026-06-13 20:24:27,276.276 INFO    ] Launching Daemon at Sat Jun 13 20:24:27 IST 2026
[2026-06-13 20:24:27,287.287 INFO    ] ================================================
[2026-06-13 20:24:27,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:27
[2026-06-13 20:24:28,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:28,169.169 INFO    ] Initializing speech engine...
[2026-06-13 20:24:28,173.173 INFO    ] 2026-06-13 20:24:28
[2026-06-13 20:24:28,381.381 INFO    ] 2026-06-13 20:24:28
[2026-06-13 20:24:28,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:28,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:28,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:28,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:28,785.785 INFO    ] time= 13/06/2026 20:24:28
[2026-06-13 20:24:28,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:28,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:28,896.896 INFO    ] No existing commands found in stream
[2026-06-13 20:24:33,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:33,913.913 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 20:24:34,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:24:34,957.957 INFO    ] Checking for system updates...
[2026-06-13 20:24:34,978.978 INFO    ] 200
[2026-06-13 20:24:34,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:35,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:35,012.012 INFO    ] No update needed
[2026-06-13 20:24:35,013.013 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:35,037.037 INFO    ] 200
[2026-06-13 20:24:35,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:35,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:35,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:35,098.098 INFO    ] No camera update needed
[2026-06-13 20:24:35,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:35,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:35,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:35,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:37,147.147 INFO    ] ================================================
[2026-06-13 20:24:37,162.162 INFO    ] Launching Daemon at Sat Jun 13 20:24:37 IST 2026
[2026-06-13 20:24:37,175.175 INFO    ] ================================================
[2026-06-13 20:24:37,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:37
[2026-06-13 20:24:37,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:37,985.985 INFO    ] Initializing speech engine...
[2026-06-13 20:24:37,993.993 INFO    ] 2026-06-13 20:24:37
[2026-06-13 20:24:38,203.203 INFO    ] 2026-06-13 20:24:38
[2026-06-13 20:24:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:38,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:38,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:38,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:38,602.602 INFO    ] time= 13/06/2026 20:24:38
[2026-06-13 20:24:38,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:38,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:38,726.726 INFO    ] No existing commands found in stream
[2026-06-13 20:24:43,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:43,743.743 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 20:24:46,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:24:46,474.474 INFO    ] Checking for system updates...
[2026-06-13 20:24:46,494.494 INFO    ] 200
[2026-06-13 20:24:46,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:46,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:24:46,528.528 INFO    ] No update needed
[2026-06-13 20:24:46,529.529 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:46,549.549 INFO    ] 200
[2026-06-13 20:24:46,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:46,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:46,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:24:46,615.615 INFO    ] No camera update needed
[2026-06-13 20:24:46,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:46,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:46,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:46,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:48,663.663 INFO    ] ================================================
[2026-06-13 20:24:48,679.679 INFO    ] Launching Daemon at Sat Jun 13 20:24:48 IST 2026
[2026-06-13 20:24:48,691.691 INFO    ] ================================================
[2026-06-13 20:24:49,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:49
[2026-06-13 20:24:49,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:49,850.850 INFO    ] Initializing speech engine...
[2026-06-13 20:24:49,868.868 INFO    ] 2026-06-13 20:24:49
[2026-06-13 20:24:50,143.143 INFO    ] 2026-06-13 20:24:50
[2026-06-13 20:24:50,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:50,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:50,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:50,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:50,518.518 INFO    ] time= 13/06/2026 20:24:50
[2026-06-13 20:24:50,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:50,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:50,626.626 INFO    ] No existing commands found in stream
[2026-06-13 20:24:55,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:24:55,654.654 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 20:24:56,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:24:56,007.007 INFO    ] Checking for system updates...
[2026-06-13 20:24:56,029.029 INFO    ] 200
[2026-06-13 20:24:56,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:56,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:24:56,062.062 INFO    ] No update needed
[2026-06-13 20:24:56,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 20:24:56,083.083 INFO    ] 200
[2026-06-13 20:24:56,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:24:56,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:24:56,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:24:56,145.145 INFO    ] No camera update needed
[2026-06-13 20:24:56,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:24:56,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:24:56,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:24:56,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:24:58,194.194 INFO    ] ================================================
[2026-06-13 20:24:58,217.217 INFO    ] Launching Daemon at Sat Jun 13 20:24:58 IST 2026
[2026-06-13 20:24:58,228.228 INFO    ] ================================================
[2026-06-13 20:24:58,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:24:58
[2026-06-13 20:24:58,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:24:59,034.034 INFO    ] Initializing speech engine...
[2026-06-13 20:24:59,039.039 INFO    ] 2026-06-13 20:24:59
[2026-06-13 20:24:59,267.267 INFO    ] 2026-06-13 20:24:59
[2026-06-13 20:24:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:24:59,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:24:59,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:24:59,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:24:59,676.676 INFO    ] time= 13/06/2026 20:24:59
[2026-06-13 20:24:59,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:24:59,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:24:59,827.827 INFO    ] No existing commands found in stream
[2026-06-13 20:25:04,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:25:04,841.841 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 20:25:07,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:25:07,632.632 INFO    ] Checking for system updates...
[2026-06-13 20:25:07,654.654 INFO    ] 200
[2026-06-13 20:25:07,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:07,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:07,687.687 INFO    ] No update needed
[2026-06-13 20:25:07,688.688 INFO    ] Checking for camera pi updates...
[2026-06-13 20:25:07,708.708 INFO    ] 200
[2026-06-13 20:25:07,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:07,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:25:07,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:07,772.772 INFO    ] No camera update needed
[2026-06-13 20:25:07,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:25:07,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:25:07,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:25:07,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:25:09,820.820 INFO    ] ================================================
[2026-06-13 20:25:09,836.836 INFO    ] Launching Daemon at Sat Jun 13 20:25:09 IST 2026
[2026-06-13 20:25:09,847.847 INFO    ] ================================================
[2026-06-13 20:25:10,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:25:10
[2026-06-13 20:25:10,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:25:10,657.657 INFO    ] Initializing speech engine...
[2026-06-13 20:25:10,666.666 INFO    ] 2026-06-13 20:25:10
[2026-06-13 20:25:10,884.884 INFO    ] 2026-06-13 20:25:10
[2026-06-13 20:25:10,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:25:11,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:25:11,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:25:11,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:25:11,266.266 INFO    ] time= 13/06/2026 20:25:11
[2026-06-13 20:25:11,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:25:11,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:25:11,479.479 INFO    ] No existing commands found in stream
[2026-06-13 20:25:16,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:25:16,490.490 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 20:25:20,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:25:20,307.307 INFO    ] Checking for system updates...
[2026-06-13 20:25:20,330.330 INFO    ] 200
[2026-06-13 20:25:20,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:20,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:25:20,363.363 INFO    ] No update needed
[2026-06-13 20:25:20,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 20:25:20,385.385 INFO    ] 200
[2026-06-13 20:25:20,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:20,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:25:20,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:25:20,453.453 INFO    ] No camera update needed
[2026-06-13 20:25:20,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:25:20,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:25:20,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:25:20,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:25:22,499.499 INFO    ] ================================================
[2026-06-13 20:25:22,515.515 INFO    ] Launching Daemon at Sat Jun 13 20:25:22 IST 2026
[2026-06-13 20:25:22,526.526 INFO    ] ================================================
[2026-06-13 20:25:22,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:25:22
[2026-06-13 20:25:23,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:25:23,325.325 INFO    ] Initializing speech engine...
[2026-06-13 20:25:23,334.334 INFO    ] 2026-06-13 20:25:23
[2026-06-13 20:25:23,557.557 INFO    ] 2026-06-13 20:25:23
[2026-06-13 20:25:23,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:25:23,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:25:23,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:25:23,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:25:23,954.954 INFO    ] time= 13/06/2026 20:25:23
[2026-06-13 20:25:24,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:25:24,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:25:24,118.118 INFO    ] No existing commands found in stream
[2026-06-13 20:25:29,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:25:29,132.132 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 20:25:29,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:25:29,827.827 INFO    ] Checking for system updates...
[2026-06-13 20:25:29,848.848 INFO    ] 200
[2026-06-13 20:25:29,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:29,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:25:29,882.882 INFO    ] No update needed
[2026-06-13 20:25:29,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 20:25:29,903.903 INFO    ] 200
[2026-06-13 20:25:29,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:29,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:25:29,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:25:29,965.965 INFO    ] No camera update needed
[2026-06-13 20:25:29,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:25:29,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:25:29,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:25:29,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:25:32,003.003 INFO    ] ================================================
[2026-06-13 20:25:32,012.012 INFO    ] Launching Daemon at Sat Jun 13 20:25:32 IST 2026
[2026-06-13 20:25:32,018.018 INFO    ] ================================================
[2026-06-13 20:25:32,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:25:32
[2026-06-13 20:25:32,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:25:32,823.823 INFO    ] Initializing speech engine...
[2026-06-13 20:25:32,828.828 INFO    ] 2026-06-13 20:25:32
[2026-06-13 20:25:33,057.057 INFO    ] 2026-06-13 20:25:33
[2026-06-13 20:25:33,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:25:33,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:25:33,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:25:33,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:25:33,458.458 INFO    ] time= 13/06/2026 20:25:33
[2026-06-13 20:25:33,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:25:33,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:25:33,619.619 INFO    ] No existing commands found in stream
[2026-06-13 20:25:38,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:25:38,633.633 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 20:25:40,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:25:40,911.911 INFO    ] Checking for system updates...
[2026-06-13 20:25:40,932.932 INFO    ] 200
[2026-06-13 20:25:40,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:40,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:40,968.968 INFO    ] No update needed
[2026-06-13 20:25:40,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 20:25:40,989.989 INFO    ] 200
[2026-06-13 20:25:40,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:41,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:25:41,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:41,052.052 INFO    ] No camera update needed
[2026-06-13 20:25:41,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:25:41,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:25:41,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:25:41,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:25:43,101.101 INFO    ] ================================================
[2026-06-13 20:25:43,117.117 INFO    ] Launching Daemon at Sat Jun 13 20:25:43 IST 2026
[2026-06-13 20:25:43,128.128 INFO    ] ================================================
[2026-06-13 20:25:43,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:25:43
[2026-06-13 20:25:43,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:25:43,996.996 INFO    ] Initializing speech engine...
[2026-06-13 20:25:44,002.002 INFO    ] 2026-06-13 20:25:43
[2026-06-13 20:25:44,210.210 INFO    ] 2026-06-13 20:25:44
[2026-06-13 20:25:44,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:25:44,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:25:44,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:25:44,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:25:44,630.630 INFO    ] time= 13/06/2026 20:25:44
[2026-06-13 20:25:44,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:25:44,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:25:44,777.777 INFO    ] No existing commands found in stream
[2026-06-13 20:25:49,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:25:49,817.817 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 20:25:53,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:25:53,507.507 INFO    ] Checking for system updates...
[2026-06-13 20:25:53,528.528 INFO    ] 200
[2026-06-13 20:25:53,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:53,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:53,564.564 INFO    ] No update needed
[2026-06-13 20:25:53,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 20:25:53,586.586 INFO    ] 200
[2026-06-13 20:25:53,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:25:53,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:25:53,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:25:53,652.652 INFO    ] No camera update needed
[2026-06-13 20:25:53,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:25:53,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:25:53,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:25:53,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:25:55,701.701 INFO    ] ================================================
[2026-06-13 20:25:55,716.716 INFO    ] Launching Daemon at Sat Jun 13 20:25:55 IST 2026
[2026-06-13 20:25:55,727.727 INFO    ] ================================================
[2026-06-13 20:25:56,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:25:56
[2026-06-13 20:25:56,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:25:57,223.223 INFO    ] Initializing speech engine...
[2026-06-13 20:25:57,235.235 INFO    ] 2026-06-13 20:25:57
[2026-06-13 20:25:57,555.555 INFO    ] 2026-06-13 20:25:57
[2026-06-13 20:25:57,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:25:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:25:57,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:25:57,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:25:57,983.983 INFO    ] time= 13/06/2026 20:25:57
[2026-06-13 20:25:58,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:25:58,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:25:58,133.133 INFO    ] No existing commands found in stream
[2026-06-13 20:26:03,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:26:03,151.151 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 20:26:07,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:26:07,498.498 INFO    ] Checking for system updates...
[2026-06-13 20:26:07,521.521 INFO    ] 200
[2026-06-13 20:26:07,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:07,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:26:07,555.555 INFO    ] No update needed
[2026-06-13 20:26:07,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 20:26:07,576.576 INFO    ] 200
[2026-06-13 20:26:07,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:07,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:26:07,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:26:07,639.639 INFO    ] No camera update needed
[2026-06-13 20:26:07,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:26:07,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:26:07,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:26:07,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:26:09,688.688 INFO    ] ================================================
[2026-06-13 20:26:09,703.703 INFO    ] Launching Daemon at Sat Jun 13 20:26:09 IST 2026
[2026-06-13 20:26:09,715.715 INFO    ] ================================================
[2026-06-13 20:26:10,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:26:10
[2026-06-13 20:26:10,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:26:10,601.601 INFO    ] Initializing speech engine...
[2026-06-13 20:26:10,607.607 INFO    ] 2026-06-13 20:26:10
[2026-06-13 20:26:10,816.816 INFO    ] 2026-06-13 20:26:10
[2026-06-13 20:26:10,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:26:11,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:26:11,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:26:11,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:26:11,226.226 INFO    ] time= 13/06/2026 20:26:11
[2026-06-13 20:26:11,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:26:11,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:26:11,336.336 INFO    ] No existing commands found in stream
[2026-06-13 20:26:16,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:26:16,351.351 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 20:26:20,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:26:20,188.188 INFO    ] Checking for system updates...
[2026-06-13 20:26:20,210.210 INFO    ] 200
[2026-06-13 20:26:20,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:20,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:20,244.244 INFO    ] No update needed
[2026-06-13 20:26:20,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 20:26:20,266.266 INFO    ] 200
[2026-06-13 20:26:20,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:20,291.291 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:26:20,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:20,441.441 INFO    ] No camera update needed
[2026-06-13 20:26:20,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:26:20,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:26:20,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:26:20,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:26:22,490.490 INFO    ] ================================================
[2026-06-13 20:26:22,507.507 INFO    ] Launching Daemon at Sat Jun 13 20:26:22 IST 2026
[2026-06-13 20:26:22,517.517 INFO    ] ================================================
[2026-06-13 20:26:22,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:26:22
[2026-06-13 20:26:23,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:26:23,347.347 INFO    ] Initializing speech engine...
[2026-06-13 20:26:23,354.354 INFO    ] 2026-06-13 20:26:23
[2026-06-13 20:26:23,572.572 INFO    ] 2026-06-13 20:26:23
[2026-06-13 20:26:23,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:26:23,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:26:23,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:26:23,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:26:23,954.954 INFO    ] time= 13/06/2026 20:26:23
[2026-06-13 20:26:23,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:26:24,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:26:24,140.140 INFO    ] No existing commands found in stream
[2026-06-13 20:26:29,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:26:29,154.154 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 20:26:32,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:26:32,716.716 INFO    ] Checking for system updates...
[2026-06-13 20:26:32,737.737 INFO    ] 200
[2026-06-13 20:26:32,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:32,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:32,771.771 INFO    ] No update needed
[2026-06-13 20:26:32,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 20:26:32,792.792 INFO    ] 200
[2026-06-13 20:26:32,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:32,821.821 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:26:32,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:32,847.847 INFO    ] No camera update needed
[2026-06-13 20:26:32,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:26:32,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:26:32,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:26:32,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:26:34,896.896 INFO    ] ================================================
[2026-06-13 20:26:34,912.912 INFO    ] Launching Daemon at Sat Jun 13 20:26:34 IST 2026
[2026-06-13 20:26:34,923.923 INFO    ] ================================================
[2026-06-13 20:26:35,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:26:35
[2026-06-13 20:26:35,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:26:35,743.743 INFO    ] Initializing speech engine...
[2026-06-13 20:26:35,753.753 INFO    ] 2026-06-13 20:26:35
[2026-06-13 20:26:35,959.959 INFO    ] 2026-06-13 20:26:35
[2026-06-13 20:26:35,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:26:36,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:26:36,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:26:36,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:26:36,363.363 INFO    ] time= 13/06/2026 20:26:36
[2026-06-13 20:26:36,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:26:36,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:26:36,485.485 INFO    ] No existing commands found in stream
[2026-06-13 20:26:41,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:26:41,498.498 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 20:26:43,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:26:43,816.816 INFO    ] Checking for system updates...
[2026-06-13 20:26:43,837.837 INFO    ] 200
[2026-06-13 20:26:43,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:43,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:26:43,871.871 INFO    ] No update needed
[2026-06-13 20:26:43,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 20:26:43,892.892 INFO    ] 200
[2026-06-13 20:26:43,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:43,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:26:43,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:43,964.964 INFO    ] No camera update needed
[2026-06-13 20:26:43,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:26:43,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:26:43,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:26:43,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:26:46,014.014 INFO    ] ================================================
[2026-06-13 20:26:46,030.030 INFO    ] Launching Daemon at Sat Jun 13 20:26:46 IST 2026
[2026-06-13 20:26:46,041.041 INFO    ] ================================================
[2026-06-13 20:26:46,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:26:46
[2026-06-13 20:26:47,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:26:47,462.462 INFO    ] Initializing speech engine...
[2026-06-13 20:26:47,474.474 INFO    ] 2026-06-13 20:26:47
[2026-06-13 20:26:47,786.786 INFO    ] 2026-06-13 20:26:47
[2026-06-13 20:26:47,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:26:48,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:26:48,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:26:48,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:26:48,217.217 INFO    ] time= 13/06/2026 20:26:48
[2026-06-13 20:26:48,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:26:48,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:26:48,363.363 INFO    ] No existing commands found in stream
[2026-06-13 20:26:53,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:26:53,380.380 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-13 20:26:55,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:26:55,866.866 INFO    ] Checking for system updates...
[2026-06-13 20:26:55,889.889 INFO    ] 200
[2026-06-13 20:26:55,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:55,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:55,924.924 INFO    ] No update needed
[2026-06-13 20:26:55,926.926 INFO    ] Checking for camera pi updates...
[2026-06-13 20:26:55,945.945 INFO    ] 200
[2026-06-13 20:26:55,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:26:55,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:26:56,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:26:56,017.017 INFO    ] No camera update needed
[2026-06-13 20:26:56,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:26:56,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:26:56,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:26:56,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:26:58,066.066 INFO    ] ================================================
[2026-06-13 20:26:58,082.082 INFO    ] Launching Daemon at Sat Jun 13 20:26:58 IST 2026
[2026-06-13 20:26:58,094.094 INFO    ] ================================================
[2026-06-13 20:26:58,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:26:58
[2026-06-13 20:26:58,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:26:58,872.872 INFO    ] Initializing speech engine...
[2026-06-13 20:26:58,876.876 INFO    ] 2026-06-13 20:26:58
[2026-06-13 20:26:59,087.087 INFO    ] 2026-06-13 20:26:59
[2026-06-13 20:26:59,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:26:59,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:26:59,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:26:59,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:26:59,552.552 INFO    ] time= 13/06/2026 20:26:59
[2026-06-13 20:26:59,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:26:59,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:26:59,675.675 INFO    ] No existing commands found in stream
[2026-06-13 20:27:04,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:04,689.689 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 20:27:05,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:27:05,922.922 INFO    ] Checking for system updates...
[2026-06-13 20:27:05,944.944 INFO    ] 200
[2026-06-13 20:27:05,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:05,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:05,977.977 INFO    ] No update needed
[2026-06-13 20:27:05,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:06,000.000 INFO    ] 200
[2026-06-13 20:27:06,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:06,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:06,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:06,070.070 INFO    ] No camera update needed
[2026-06-13 20:27:06,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:06,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:06,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:06,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:08,117.117 INFO    ] ================================================
[2026-06-13 20:27:08,132.132 INFO    ] Launching Daemon at Sat Jun 13 20:27:08 IST 2026
[2026-06-13 20:27:08,144.144 INFO    ] ================================================
[2026-06-13 20:27:08,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:08
[2026-06-13 20:27:08,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:27:09,106.106 INFO    ] Initializing speech engine...
[2026-06-13 20:27:09,114.114 INFO    ] 2026-06-13 20:27:09
[2026-06-13 20:27:09,366.366 INFO    ] 2026-06-13 20:27:09
[2026-06-13 20:27:09,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:27:09,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:27:09,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:27:09,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:27:09,706.706 INFO    ] time= 13/06/2026 20:27:09
[2026-06-13 20:27:09,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:27:09,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:27:09,823.823 INFO    ] No existing commands found in stream
[2026-06-13 20:27:14,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:14,840.840 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 20:27:16,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:27:16,057.057 INFO    ] Checking for system updates...
[2026-06-13 20:27:16,078.078 INFO    ] 200
[2026-06-13 20:27:16,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:16,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:27:16,111.111 INFO    ] No update needed
[2026-06-13 20:27:16,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:16,131.131 INFO    ] 200
[2026-06-13 20:27:16,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:16,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:16,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:27:16,199.199 INFO    ] No camera update needed
[2026-06-13 20:27:16,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:16,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:16,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:16,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:18,246.246 INFO    ] ================================================
[2026-06-13 20:27:18,261.261 INFO    ] Launching Daemon at Sat Jun 13 20:27:18 IST 2026
[2026-06-13 20:27:18,273.273 INFO    ] ================================================
[2026-06-13 20:27:18,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:18
[2026-06-13 20:27:18,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:27:19,079.079 INFO    ] Initializing speech engine...
[2026-06-13 20:27:19,083.083 INFO    ] 2026-06-13 20:27:19
[2026-06-13 20:27:19,303.303 INFO    ] 2026-06-13 20:27:19
[2026-06-13 20:27:19,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:27:19,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:27:19,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:27:19,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:27:19,720.720 INFO    ] time= 13/06/2026 20:27:19
[2026-06-13 20:27:19,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:27:19,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:27:19,821.821 INFO    ] No existing commands found in stream
[2026-06-13 20:27:24,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:24,843.843 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 20:27:26,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:27:26,387.387 INFO    ] Checking for system updates...
[2026-06-13 20:27:26,408.408 INFO    ] 200
[2026-06-13 20:27:26,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:26,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:26,441.441 INFO    ] No update needed
[2026-06-13 20:27:26,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:26,462.462 INFO    ] 200
[2026-06-13 20:27:26,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:26,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:26,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:26,525.525 INFO    ] No camera update needed
[2026-06-13 20:27:26,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:26,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:26,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:26,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:28,572.572 INFO    ] ================================================
[2026-06-13 20:27:28,587.587 INFO    ] Launching Daemon at Sat Jun 13 20:27:28 IST 2026
[2026-06-13 20:27:28,599.599 INFO    ] ================================================
[2026-06-13 20:27:28,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:28
[2026-06-13 20:27:29,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:27:29,465.465 INFO    ] Initializing speech engine...
[2026-06-13 20:27:29,470.470 INFO    ] 2026-06-13 20:27:29
[2026-06-13 20:27:29,680.680 INFO    ] 2026-06-13 20:27:29
[2026-06-13 20:27:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:27:29,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:27:29,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:27:30,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:27:30,081.081 INFO    ] time= 13/06/2026 20:27:30
[2026-06-13 20:27:30,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:27:30,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:27:30,197.197 INFO    ] No existing commands found in stream
[2026-06-13 20:27:35,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:35,215.215 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 20:27:38,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:27:38,002.002 INFO    ] Checking for system updates...
[2026-06-13 20:27:38,023.023 INFO    ] 200
[2026-06-13 20:27:38,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:38,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:27:38,060.060 INFO    ] No update needed
[2026-06-13 20:27:38,062.062 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:38,082.082 INFO    ] 200
[2026-06-13 20:27:38,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:38,107.107 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:38,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:27:38,147.147 INFO    ] No camera update needed
[2026-06-13 20:27:38,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:38,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:38,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:38,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:40,195.195 INFO    ] ================================================
[2026-06-13 20:27:40,211.211 INFO    ] Launching Daemon at Sat Jun 13 20:27:40 IST 2026
[2026-06-13 20:27:40,222.222 INFO    ] ================================================
[2026-06-13 20:27:40,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:40
[2026-06-13 20:27:40,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:27:41,084.084 INFO    ] Initializing speech engine...
[2026-06-13 20:27:41,088.088 INFO    ] 2026-06-13 20:27:41
[2026-06-13 20:27:41,295.295 INFO    ] 2026-06-13 20:27:41
[2026-06-13 20:27:41,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:27:41,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:27:41,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:27:41,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:27:41,714.714 INFO    ] time= 13/06/2026 20:27:41
[2026-06-13 20:27:41,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:27:41,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:27:41,811.811 INFO    ] No existing commands found in stream
[2026-06-13 20:27:46,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:46,829.829 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 20:27:47,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:27:47,764.764 INFO    ] Checking for system updates...
[2026-06-13 20:27:47,785.785 INFO    ] 200
[2026-06-13 20:27:47,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:47,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:47,819.819 INFO    ] No update needed
[2026-06-13 20:27:47,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:47,841.841 INFO    ] 200
[2026-06-13 20:27:47,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:47,867.867 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:47,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:47,911.911 INFO    ] No camera update needed
[2026-06-13 20:27:47,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:47,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:47,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:47,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:49,946.946 INFO    ] ================================================
[2026-06-13 20:27:49,955.955 INFO    ] Launching Daemon at Sat Jun 13 20:27:49 IST 2026
[2026-06-13 20:27:49,961.961 INFO    ] ================================================
[2026-06-13 20:27:50,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:50
[2026-06-13 20:27:50,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:27:50,829.829 INFO    ] Initializing speech engine...
[2026-06-13 20:27:50,834.834 INFO    ] 2026-06-13 20:27:50
[2026-06-13 20:27:51,037.037 INFO    ] 2026-06-13 20:27:51
[2026-06-13 20:27:51,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:27:51,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:27:51,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:27:51,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:27:51,437.437 INFO    ] time= 13/06/2026 20:27:51
[2026-06-13 20:27:51,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:27:51,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:27:51,552.552 INFO    ] No existing commands found in stream
[2026-06-13 20:27:56,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:27:56,569.569 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 20:27:56,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:27:56,973.973 INFO    ] Checking for system updates...
[2026-06-13 20:27:56,994.994 INFO    ] 200
[2026-06-13 20:27:56,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:57,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:57,030.030 INFO    ] No update needed
[2026-06-13 20:27:57,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 20:27:57,051.051 INFO    ] 200
[2026-06-13 20:27:57,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:27:57,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:27:57,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:27:57,122.122 INFO    ] No camera update needed
[2026-06-13 20:27:57,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:27:57,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:27:57,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:27:57,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:27:59,170.170 INFO    ] ================================================
[2026-06-13 20:27:59,186.186 INFO    ] Launching Daemon at Sat Jun 13 20:27:59 IST 2026
[2026-06-13 20:27:59,197.197 INFO    ] ================================================
[2026-06-13 20:27:59,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:27:59
[2026-06-13 20:27:59,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:00,053.053 INFO    ] Initializing speech engine...
[2026-06-13 20:28:00,058.058 INFO    ] 2026-06-13 20:28:00
[2026-06-13 20:28:00,262.262 INFO    ] 2026-06-13 20:28:00
[2026-06-13 20:28:00,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:00,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:00,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:00,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:00,680.680 INFO    ] time= 13/06/2026 20:28:00
[2026-06-13 20:28:00,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:00,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:00,777.777 INFO    ] No existing commands found in stream
[2026-06-13 20:28:05,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:28:05,790.790 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 20:28:07,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:28:07,290.290 INFO    ] Checking for system updates...
[2026-06-13 20:28:07,311.311 INFO    ] 200
[2026-06-13 20:28:07,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:07,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:28:07,344.344 INFO    ] No update needed
[2026-06-13 20:28:07,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 20:28:07,365.365 INFO    ] 200
[2026-06-13 20:28:07,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:07,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:28:07,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:07,435.435 INFO    ] No camera update needed
[2026-06-13 20:28:07,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:28:07,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:28:07,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:28:07,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:28:09,485.485 INFO    ] ================================================
[2026-06-13 20:28:09,501.501 INFO    ] Launching Daemon at Sat Jun 13 20:28:09 IST 2026
[2026-06-13 20:28:09,512.512 INFO    ] ================================================
[2026-06-13 20:28:09,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:28:09
[2026-06-13 20:28:10,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:10,313.313 INFO    ] Initializing speech engine...
[2026-06-13 20:28:10,318.318 INFO    ] 2026-06-13 20:28:10
[2026-06-13 20:28:10,535.535 INFO    ] 2026-06-13 20:28:10
[2026-06-13 20:28:10,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:10,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:10,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:10,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:10,969.969 INFO    ] time= 13/06/2026 20:28:10
[2026-06-13 20:28:10,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:10,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:11,099.099 INFO    ] No existing commands found in stream
[2026-06-13 20:28:16,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:28:16,137.137 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 20:28:18,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:28:18,432.432 INFO    ] Checking for system updates...
[2026-06-13 20:28:18,453.453 INFO    ] 200
[2026-06-13 20:28:18,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:18,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:18,487.487 INFO    ] No update needed
[2026-06-13 20:28:18,489.489 INFO    ] Checking for camera pi updates...
[2026-06-13 20:28:18,509.509 INFO    ] 200
[2026-06-13 20:28:18,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:18,534.534 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:28:18,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:18,577.577 INFO    ] No camera update needed
[2026-06-13 20:28:18,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:28:18,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:28:18,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:28:18,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:28:20,628.628 INFO    ] ================================================
[2026-06-13 20:28:20,645.645 INFO    ] Launching Daemon at Sat Jun 13 20:28:20 IST 2026
[2026-06-13 20:28:20,657.657 INFO    ] ================================================
[2026-06-13 20:28:21,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:28:21
[2026-06-13 20:28:21,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:21,535.535 INFO    ] Initializing speech engine...
[2026-06-13 20:28:21,541.541 INFO    ] 2026-06-13 20:28:21
[2026-06-13 20:28:21,750.750 INFO    ] 2026-06-13 20:28:21
[2026-06-13 20:28:21,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:21,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:22,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:22,194.194 INFO    ] time= 13/06/2026 20:28:22
[2026-06-13 20:28:22,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:22,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:22,428.428 INFO    ] No existing commands found in stream
[2026-06-13 20:28:27,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:28:27,449.449 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 20:28:30,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:28:30,751.751 INFO    ] Checking for system updates...
[2026-06-13 20:28:30,773.773 INFO    ] 200
[2026-06-13 20:28:30,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:30,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:28:30,806.806 INFO    ] No update needed
[2026-06-13 20:28:30,808.808 INFO    ] Checking for camera pi updates...
[2026-06-13 20:28:30,828.828 INFO    ] 200
[2026-06-13 20:28:30,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:30,854.854 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:28:31,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:31,002.002 INFO    ] No camera update needed
[2026-06-13 20:28:31,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:28:31,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:28:31,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:28:31,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:28:33,046.046 INFO    ] ================================================
[2026-06-13 20:28:33,061.061 INFO    ] Launching Daemon at Sat Jun 13 20:28:33 IST 2026
[2026-06-13 20:28:33,073.073 INFO    ] ================================================
[2026-06-13 20:28:33,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:28:33
[2026-06-13 20:28:33,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:33,886.886 INFO    ] Initializing speech engine...
[2026-06-13 20:28:33,891.891 INFO    ] 2026-06-13 20:28:33
[2026-06-13 20:28:34,115.115 INFO    ] 2026-06-13 20:28:34
[2026-06-13 20:28:34,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:34,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:34,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:34,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:34,532.532 INFO    ] time= 13/06/2026 20:28:34
[2026-06-13 20:28:34,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:34,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:34,645.645 INFO    ] No existing commands found in stream
[2026-06-13 20:28:39,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:28:39,659.659 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 20:28:43,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:28:43,456.456 INFO    ] Checking for system updates...
[2026-06-13 20:28:43,492.492 INFO    ] 200
[2026-06-13 20:28:43,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:43,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:43,529.529 INFO    ] No update needed
[2026-06-13 20:28:43,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 20:28:43,550.550 INFO    ] 200
[2026-06-13 20:28:43,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:43,574.574 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:28:43,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:43,613.613 INFO    ] No camera update needed
[2026-06-13 20:28:43,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:28:43,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:28:43,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:28:43,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:28:45,661.661 INFO    ] ================================================
[2026-06-13 20:28:45,676.676 INFO    ] Launching Daemon at Sat Jun 13 20:28:45 IST 2026
[2026-06-13 20:28:45,686.686 INFO    ] ================================================
[2026-06-13 20:28:46,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:28:46
[2026-06-13 20:28:46,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:46,482.482 INFO    ] Initializing speech engine...
[2026-06-13 20:28:46,486.486 INFO    ] 2026-06-13 20:28:46
[2026-06-13 20:28:46,689.689 INFO    ] 2026-06-13 20:28:46
[2026-06-13 20:28:46,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:46,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:47,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:47,074.074 INFO    ] time= 13/06/2026 20:28:47
[2026-06-13 20:28:47,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:47,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:47,205.205 INFO    ] No existing commands found in stream
[2026-06-13 20:28:52,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:28:52,222.222 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 20:28:53,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:28:53,746.746 INFO    ] Checking for system updates...
[2026-06-13 20:28:53,766.766 INFO    ] 200
[2026-06-13 20:28:53,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:53,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:53,800.800 INFO    ] No update needed
[2026-06-13 20:28:53,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 20:28:53,821.821 INFO    ] 200
[2026-06-13 20:28:53,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:28:53,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:28:53,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:28:53,888.888 INFO    ] No camera update needed
[2026-06-13 20:28:53,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:28:53,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:28:53,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:28:53,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:28:55,936.936 INFO    ] ================================================
[2026-06-13 20:28:55,952.952 INFO    ] Launching Daemon at Sat Jun 13 20:28:55 IST 2026
[2026-06-13 20:28:55,964.964 INFO    ] ================================================
[2026-06-13 20:28:56,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:28:56
[2026-06-13 20:28:56,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:28:56,794.794 INFO    ] Initializing speech engine...
[2026-06-13 20:28:56,804.804 INFO    ] 2026-06-13 20:28:56
[2026-06-13 20:28:57,011.011 INFO    ] 2026-06-13 20:28:56
[2026-06-13 20:28:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:28:57,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:28:57,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:28:57,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:28:57,415.415 INFO    ] time= 13/06/2026 20:28:57
[2026-06-13 20:28:57,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:28:57,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:28:57,525.525 INFO    ] No existing commands found in stream
[2026-06-13 20:29:02,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:02,540.540 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 20:29:06,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:29:06,149.149 INFO    ] Checking for system updates...
[2026-06-13 20:29:06,170.170 INFO    ] 200
[2026-06-13 20:29:06,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:06,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:29:06,203.203 INFO    ] No update needed
[2026-06-13 20:29:06,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 20:29:06,224.224 INFO    ] 200
[2026-06-13 20:29:06,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:06,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:29:06,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:29:06,284.284 INFO    ] No camera update needed
[2026-06-13 20:29:06,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:29:06,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:29:06,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:29:06,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:29:08,331.331 INFO    ] ================================================
[2026-06-13 20:29:08,347.347 INFO    ] Launching Daemon at Sat Jun 13 20:29:08 IST 2026
[2026-06-13 20:29:08,358.358 INFO    ] ================================================
[2026-06-13 20:29:08,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:29:08
[2026-06-13 20:29:09,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:29:09,174.174 INFO    ] Initializing speech engine...
[2026-06-13 20:29:09,177.177 INFO    ] 2026-06-13 20:29:09
[2026-06-13 20:29:09,374.374 INFO    ] 2026-06-13 20:29:09
[2026-06-13 20:29:09,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:29:09,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:29:09,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:29:09,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:29:09,838.838 INFO    ] time= 13/06/2026 20:29:09
[2026-06-13 20:29:09,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:29:09,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:29:09,977.977 INFO    ] No existing commands found in stream
[2026-06-13 20:29:14,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:14,990.990 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 20:29:16,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:29:16,226.226 INFO    ] Checking for system updates...
[2026-06-13 20:29:16,248.248 INFO    ] 200
[2026-06-13 20:29:16,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:16,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:29:16,284.284 INFO    ] No update needed
[2026-06-13 20:29:16,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 20:29:16,306.306 INFO    ] 200
[2026-06-13 20:29:16,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:16,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:29:16,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:29:16,370.370 INFO    ] No camera update needed
[2026-06-13 20:29:16,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:29:16,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:29:16,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:29:16,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:29:18,419.419 INFO    ] ================================================
[2026-06-13 20:29:18,437.437 INFO    ] Launching Daemon at Sat Jun 13 20:29:18 IST 2026
[2026-06-13 20:29:18,447.447 INFO    ] ================================================
[2026-06-13 20:29:18,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:29:18
[2026-06-13 20:29:19,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:29:19,263.263 INFO    ] Initializing speech engine...
[2026-06-13 20:29:19,268.268 INFO    ] 2026-06-13 20:29:19
[2026-06-13 20:29:19,473.473 INFO    ] 2026-06-13 20:29:19
[2026-06-13 20:29:19,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:29:19,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:29:19,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:29:19,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:29:19,900.900 INFO    ] time= 13/06/2026 20:29:19
[2026-06-13 20:29:19,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:29:19,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:29:20,063.063 INFO    ] No existing commands found in stream
[2026-06-13 20:29:25,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:25,077.077 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 20:29:29,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:29:29,170.170 INFO    ] Checking for system updates...
[2026-06-13 20:29:29,191.191 INFO    ] 200
[2026-06-13 20:29:29,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:29,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:29:29,226.226 INFO    ] No update needed
[2026-06-13 20:29:29,228.228 INFO    ] Checking for camera pi updates...
[2026-06-13 20:29:29,248.248 INFO    ] 200
[2026-06-13 20:29:29,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:29,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:29:29,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:29:29,327.327 INFO    ] No camera update needed
[2026-06-13 20:29:29,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:29:29,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:29:29,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:29:29,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:29:31,376.376 INFO    ] ================================================
[2026-06-13 20:29:31,392.392 INFO    ] Launching Daemon at Sat Jun 13 20:29:31 IST 2026
[2026-06-13 20:29:31,403.403 INFO    ] ================================================
[2026-06-13 20:29:31,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:29:31
[2026-06-13 20:29:32,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:29:32,313.313 INFO    ] Initializing speech engine...
[2026-06-13 20:29:32,324.324 INFO    ] 2026-06-13 20:29:32
[2026-06-13 20:29:32,529.529 INFO    ] 2026-06-13 20:29:32
[2026-06-13 20:29:32,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:29:32,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:29:32,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:29:32,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:29:32,939.939 INFO    ] time= 13/06/2026 20:29:32
[2026-06-13 20:29:32,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:29:32,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:29:33,046.046 INFO    ] No existing commands found in stream
[2026-06-13 20:29:38,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:38,057.057 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 20:29:40,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:29:40,305.305 INFO    ] Checking for system updates...
[2026-06-13 20:29:40,328.328 INFO    ] 200
[2026-06-13 20:29:40,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:40,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:29:40,362.362 INFO    ] No update needed
[2026-06-13 20:29:40,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 20:29:40,383.383 INFO    ] 200
[2026-06-13 20:29:40,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:40,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:29:40,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:29:40,453.453 INFO    ] No camera update needed
[2026-06-13 20:29:40,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:29:40,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:29:40,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:29:40,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:29:42,501.501 INFO    ] ================================================
[2026-06-13 20:29:42,516.516 INFO    ] Launching Daemon at Sat Jun 13 20:29:42 IST 2026
[2026-06-13 20:29:42,527.527 INFO    ] ================================================
[2026-06-13 20:29:42,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:29:42
[2026-06-13 20:29:43,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:29:43,375.375 INFO    ] Initializing speech engine...
[2026-06-13 20:29:43,380.380 INFO    ] 2026-06-13 20:29:43
[2026-06-13 20:29:43,590.590 INFO    ] 2026-06-13 20:29:43
[2026-06-13 20:29:43,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:29:43,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:29:43,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:29:43,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:29:43,942.942 INFO    ] time= 13/06/2026 20:29:43
[2026-06-13 20:29:43,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:29:44,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:29:44,159.159 INFO    ] No existing commands found in stream
[2026-06-13 20:29:49,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:49,173.173 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 20:29:50,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:29:50,837.837 INFO    ] Checking for system updates...
[2026-06-13 20:29:50,860.860 INFO    ] 200
[2026-06-13 20:29:50,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:50,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:29:50,899.899 INFO    ] No update needed
[2026-06-13 20:29:50,901.901 INFO    ] Checking for camera pi updates...
[2026-06-13 20:29:50,925.925 INFO    ] 200
[2026-06-13 20:29:50,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:29:50,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:29:50,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:29:51,000.000 INFO    ] No camera update needed
[2026-06-13 20:29:51,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:29:51,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:29:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:29:51,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:29:53,048.048 INFO    ] ================================================
[2026-06-13 20:29:53,063.063 INFO    ] Launching Daemon at Sat Jun 13 20:29:53 IST 2026
[2026-06-13 20:29:53,074.074 INFO    ] ================================================
[2026-06-13 20:29:53,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:29:53
[2026-06-13 20:29:53,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:29:53,875.875 INFO    ] Initializing speech engine...
[2026-06-13 20:29:53,880.880 INFO    ] 2026-06-13 20:29:53
[2026-06-13 20:29:54,085.085 INFO    ] 2026-06-13 20:29:54
[2026-06-13 20:29:54,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:29:54,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:29:54,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:29:54,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:29:54,495.495 INFO    ] time= 13/06/2026 20:29:54
[2026-06-13 20:29:54,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:29:54,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:29:54,678.678 INFO    ] No existing commands found in stream
[2026-06-13 20:29:59,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:29:59,692.692 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 20:30:06,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:30:06,257.257 INFO    ] Checking for system updates...
[2026-06-13 20:30:06,294.294 INFO    ] 200
[2026-06-13 20:30:06,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:06,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:06,360.360 INFO    ] No update needed
[2026-06-13 20:30:06,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 20:30:06,388.388 INFO    ] 200
[2026-06-13 20:30:06,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:06,420.420 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:30:06,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:06,466.466 INFO    ] No camera update needed
[2026-06-13 20:30:06,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:30:06,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:30:06,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:30:06,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:30:08,514.514 INFO    ] ================================================
[2026-06-13 20:30:08,530.530 INFO    ] Launching Daemon at Sat Jun 13 20:30:08 IST 2026
[2026-06-13 20:30:08,541.541 INFO    ] ================================================
[2026-06-13 20:30:08,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:30:08
[2026-06-13 20:30:09,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:30:09,349.349 INFO    ] Initializing speech engine...
[2026-06-13 20:30:09,354.354 INFO    ] 2026-06-13 20:30:09
[2026-06-13 20:30:09,544.544 INFO    ] 2026-06-13 20:30:09
[2026-06-13 20:30:09,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:30:09,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:30:09,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:30:09,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:30:09,972.972 INFO    ] time= 13/06/2026 20:30:09
[2026-06-13 20:30:10,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:30:10,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:30:10,082.082 INFO    ] No existing commands found in stream
[2026-06-13 20:30:15,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:30:15,094.094 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 20:30:17,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:30:17,621.621 INFO    ] Checking for system updates...
[2026-06-13 20:30:17,645.645 INFO    ] 200
[2026-06-13 20:30:17,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:17,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:17,678.678 INFO    ] No update needed
[2026-06-13 20:30:17,680.680 INFO    ] Checking for camera pi updates...
[2026-06-13 20:30:17,700.700 INFO    ] 200
[2026-06-13 20:30:17,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:17,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:30:17,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:30:17,764.764 INFO    ] No camera update needed
[2026-06-13 20:30:17,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:30:17,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:30:17,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:30:17,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:30:19,805.805 INFO    ] ================================================
[2026-06-13 20:30:19,822.822 INFO    ] Launching Daemon at Sat Jun 13 20:30:19 IST 2026
[2026-06-13 20:30:19,833.833 INFO    ] ================================================
[2026-06-13 20:30:20,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:30:20
[2026-06-13 20:30:20,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:30:20,679.679 INFO    ] Initializing speech engine...
[2026-06-13 20:30:20,683.683 INFO    ] 2026-06-13 20:30:20
[2026-06-13 20:30:20,889.889 INFO    ] 2026-06-13 20:30:20
[2026-06-13 20:30:20,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:30:21,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:30:21,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:30:21,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:30:21,310.310 INFO    ] time= 13/06/2026 20:30:21
[2026-06-13 20:30:21,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:30:21,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:30:21,406.406 INFO    ] No existing commands found in stream
[2026-06-13 20:30:26,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:30:26,419.419 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 20:30:30,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:30:30,026.026 INFO    ] Checking for system updates...
[2026-06-13 20:30:30,047.047 INFO    ] 200
[2026-06-13 20:30:30,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:30,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:30,081.081 INFO    ] No update needed
[2026-06-13 20:30:30,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 20:30:30,102.102 INFO    ] 200
[2026-06-13 20:30:30,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:30,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:30:30,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:30,175.175 INFO    ] No camera update needed
[2026-06-13 20:30:30,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:30:30,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:30:30,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:30:30,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:30:32,216.216 INFO    ] ================================================
[2026-06-13 20:30:32,225.225 INFO    ] Launching Daemon at Sat Jun 13 20:30:32 IST 2026
[2026-06-13 20:30:32,232.232 INFO    ] ================================================
[2026-06-13 20:30:32,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:30:32
[2026-06-13 20:30:32,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:30:33,031.031 INFO    ] Initializing speech engine...
[2026-06-13 20:30:33,047.047 INFO    ] 2026-06-13 20:30:33
[2026-06-13 20:30:33,251.251 INFO    ] 2026-06-13 20:30:33
[2026-06-13 20:30:33,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:30:33,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:30:33,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:30:33,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:30:33,663.663 INFO    ] time= 13/06/2026 20:30:33
[2026-06-13 20:30:33,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:30:33,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:30:33,766.766 INFO    ] No existing commands found in stream
[2026-06-13 20:30:38,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:30:38,780.780 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 20:30:42,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:30:42,156.156 INFO    ] Checking for system updates...
[2026-06-13 20:30:42,177.177 INFO    ] 200
[2026-06-13 20:30:42,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:42,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:42,211.211 INFO    ] No update needed
[2026-06-13 20:30:42,213.213 INFO    ] Checking for camera pi updates...
[2026-06-13 20:30:42,233.233 INFO    ] 200
[2026-06-13 20:30:42,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:42,259.259 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:30:42,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:42,404.404 INFO    ] No camera update needed
[2026-06-13 20:30:42,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:30:42,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:30:42,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:30:42,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:30:44,453.453 INFO    ] ================================================
[2026-06-13 20:30:44,468.468 INFO    ] Launching Daemon at Sat Jun 13 20:30:44 IST 2026
[2026-06-13 20:30:44,479.479 INFO    ] ================================================
[2026-06-13 20:30:44,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:30:44
[2026-06-13 20:30:45,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:30:45,261.261 INFO    ] Initializing speech engine...
[2026-06-13 20:30:45,273.273 INFO    ] 2026-06-13 20:30:45
[2026-06-13 20:30:45,493.493 INFO    ] 2026-06-13 20:30:45
[2026-06-13 20:30:45,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:30:45,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:30:45,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:30:45,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:30:45,912.912 INFO    ] time= 13/06/2026 20:30:45
[2026-06-13 20:30:45,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:30:45,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:30:46,049.049 INFO    ] No existing commands found in stream
[2026-06-13 20:30:51,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:30:51,063.063 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 20:30:52,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:30:52,555.555 INFO    ] Checking for system updates...
[2026-06-13 20:30:52,576.576 INFO    ] 200
[2026-06-13 20:30:52,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:52,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:52,612.612 INFO    ] No update needed
[2026-06-13 20:30:52,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 20:30:52,634.634 INFO    ] 200
[2026-06-13 20:30:52,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:30:52,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:30:52,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:30:52,706.706 INFO    ] No camera update needed
[2026-06-13 20:30:52,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:30:52,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:30:52,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:30:52,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:30:54,754.754 INFO    ] ================================================
[2026-06-13 20:30:54,769.769 INFO    ] Launching Daemon at Sat Jun 13 20:30:54 IST 2026
[2026-06-13 20:30:54,780.780 INFO    ] ================================================
[2026-06-13 20:30:55,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:30:55
[2026-06-13 20:30:55,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:30:55,577.577 INFO    ] Initializing speech engine...
[2026-06-13 20:30:55,581.581 INFO    ] 2026-06-13 20:30:55
[2026-06-13 20:30:55,799.799 INFO    ] 2026-06-13 20:30:55
[2026-06-13 20:30:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:30:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:30:56,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:30:56,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:30:56,223.223 INFO    ] time= 13/06/2026 20:30:56
[2026-06-13 20:30:56,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:30:56,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:30:56,322.322 INFO    ] No existing commands found in stream
[2026-06-13 20:31:01,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:31:01,334.334 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 20:31:04,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:31:04,653.653 INFO    ] Checking for system updates...
[2026-06-13 20:31:04,679.679 INFO    ] 200
[2026-06-13 20:31:04,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:04,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:04,723.723 INFO    ] No update needed
[2026-06-13 20:31:04,725.725 INFO    ] Checking for camera pi updates...
[2026-06-13 20:31:04,744.744 INFO    ] 200
[2026-06-13 20:31:04,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:04,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:31:04,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:04,815.815 INFO    ] No camera update needed
[2026-06-13 20:31:04,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:31:04,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:31:04,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:31:04,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:31:06,863.863 INFO    ] ================================================
[2026-06-13 20:31:06,879.879 INFO    ] Launching Daemon at Sat Jun 13 20:31:06 IST 2026
[2026-06-13 20:31:06,889.889 INFO    ] ================================================
[2026-06-13 20:31:07,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:31:07
[2026-06-13 20:31:07,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:31:07,653.653 INFO    ] Initializing speech engine...
[2026-06-13 20:31:07,658.658 INFO    ] 2026-06-13 20:31:07
[2026-06-13 20:31:07,876.876 INFO    ] 2026-06-13 20:31:07
[2026-06-13 20:31:07,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:31:08,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:31:08,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:31:08,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:31:08,284.284 INFO    ] time= 13/06/2026 20:31:08
[2026-06-13 20:31:08,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:31:08,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:31:08,401.401 INFO    ] No existing commands found in stream
[2026-06-13 20:31:13,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:31:13,413.413 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-13 20:31:15,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:31:15,831.831 INFO    ] Checking for system updates...
[2026-06-13 20:31:15,852.852 INFO    ] 200
[2026-06-13 20:31:15,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:15,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:31:15,886.886 INFO    ] No update needed
[2026-06-13 20:31:15,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 20:31:15,908.908 INFO    ] 200
[2026-06-13 20:31:15,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:15,934.934 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:31:15,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:31:15,971.971 INFO    ] No camera update needed
[2026-06-13 20:31:15,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:31:15,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:31:15,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:31:15,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:31:18,018.018 INFO    ] ================================================
[2026-06-13 20:31:18,033.033 INFO    ] Launching Daemon at Sat Jun 13 20:31:18 IST 2026
[2026-06-13 20:31:18,044.044 INFO    ] ================================================
[2026-06-13 20:31:18,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:31:18
[2026-06-13 20:31:18,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:31:18,816.816 INFO    ] Initializing speech engine...
[2026-06-13 20:31:18,819.819 INFO    ] 2026-06-13 20:31:18
[2026-06-13 20:31:19,024.024 INFO    ] 2026-06-13 20:31:19
[2026-06-13 20:31:19,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:31:19,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:31:19,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:31:19,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:31:19,440.440 INFO    ] time= 13/06/2026 20:31:19
[2026-06-13 20:31:19,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:31:19,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:31:19,617.617 INFO    ] No existing commands found in stream
[2026-06-13 20:31:24,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:31:24,631.631 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 20:31:28,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:31:28,895.895 INFO    ] Checking for system updates...
[2026-06-13 20:31:28,916.916 INFO    ] 200
[2026-06-13 20:31:28,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:28,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:28,952.952 INFO    ] No update needed
[2026-06-13 20:31:28,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 20:31:28,972.972 INFO    ] 200
[2026-06-13 20:31:28,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:28,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:31:29,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:29,047.047 INFO    ] No camera update needed
[2026-06-13 20:31:29,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:31:29,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:31:29,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:31:29,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:31:31,095.095 INFO    ] ================================================
[2026-06-13 20:31:31,110.110 INFO    ] Launching Daemon at Sat Jun 13 20:31:31 IST 2026
[2026-06-13 20:31:31,121.121 INFO    ] ================================================
[2026-06-13 20:31:31,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:31:31
[2026-06-13 20:31:31,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:31:32,014.014 INFO    ] Initializing speech engine...
[2026-06-13 20:31:32,021.021 INFO    ] 2026-06-13 20:31:32
[2026-06-13 20:31:32,237.237 INFO    ] 2026-06-13 20:31:32
[2026-06-13 20:31:32,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:31:32,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:31:32,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:31:32,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:31:32,677.677 INFO    ] time= 13/06/2026 20:31:32
[2026-06-13 20:31:32,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:31:32,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:31:32,975.975 INFO    ] No existing commands found in stream
[2026-06-13 20:31:38,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:31:38,009.009 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 20:31:40,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:31:40,636.636 INFO    ] Checking for system updates...
[2026-06-13 20:31:40,657.657 INFO    ] 200
[2026-06-13 20:31:40,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:40,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:31:40,696.696 INFO    ] No update needed
[2026-06-13 20:31:40,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 20:31:40,718.718 INFO    ] 200
[2026-06-13 20:31:40,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:40,743.743 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:31:40,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:31:40,781.781 INFO    ] No camera update needed
[2026-06-13 20:31:40,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:31:40,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:31:40,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:31:40,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:31:42,830.830 INFO    ] ================================================
[2026-06-13 20:31:42,845.845 INFO    ] Launching Daemon at Sat Jun 13 20:31:42 IST 2026
[2026-06-13 20:31:42,855.855 INFO    ] ================================================
[2026-06-13 20:31:43,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:31:43
[2026-06-13 20:31:43,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:31:43,788.788 INFO    ] Initializing speech engine...
[2026-06-13 20:31:43,800.800 INFO    ] 2026-06-13 20:31:43
[2026-06-13 20:31:44,083.083 INFO    ] 2026-06-13 20:31:44
[2026-06-13 20:31:44,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:31:44,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:31:44,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:31:44,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:31:44,564.564 INFO    ] time= 13/06/2026 20:31:44
[2026-06-13 20:31:44,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:31:44,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:31:44,795.795 INFO    ] No existing commands found in stream
[2026-06-13 20:31:49,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:31:49,823.823 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 20:31:53,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:31:53,858.858 INFO    ] Checking for system updates...
[2026-06-13 20:31:53,880.880 INFO    ] 200
[2026-06-13 20:31:53,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:53,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:53,913.913 INFO    ] No update needed
[2026-06-13 20:31:53,915.915 INFO    ] Checking for camera pi updates...
[2026-06-13 20:31:53,936.936 INFO    ] 200
[2026-06-13 20:31:53,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:31:53,962.962 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:31:54,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:31:54,008.008 INFO    ] No camera update needed
[2026-06-13 20:31:54,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:31:54,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:31:54,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:31:54,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:31:56,059.059 INFO    ] ================================================
[2026-06-13 20:31:56,075.075 INFO    ] Launching Daemon at Sat Jun 13 20:31:56 IST 2026
[2026-06-13 20:31:56,086.086 INFO    ] ================================================
[2026-06-13 20:31:56,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:31:56
[2026-06-13 20:31:56,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:31:56,950.950 INFO    ] Initializing speech engine...
[2026-06-13 20:31:56,958.958 INFO    ] 2026-06-13 20:31:56
[2026-06-13 20:31:57,160.160 INFO    ] 2026-06-13 20:31:57
[2026-06-13 20:31:57,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:31:57,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:31:57,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:31:57,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:31:57,564.564 INFO    ] time= 13/06/2026 20:31:57
[2026-06-13 20:31:57,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:31:57,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:31:57,682.682 INFO    ] No existing commands found in stream
[2026-06-13 20:32:02,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:02,708.708 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 20:32:03,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:32:03,633.633 INFO    ] Checking for system updates...
[2026-06-13 20:32:03,654.654 INFO    ] 200
[2026-06-13 20:32:03,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:03,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:03,689.689 INFO    ] No update needed
[2026-06-13 20:32:03,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:03,711.711 INFO    ] 200
[2026-06-13 20:32:03,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:03,737.737 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:03,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:03,786.786 INFO    ] No camera update needed
[2026-06-13 20:32:03,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:03,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:03,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:03,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:05,832.832 INFO    ] ================================================
[2026-06-13 20:32:05,847.847 INFO    ] Launching Daemon at Sat Jun 13 20:32:05 IST 2026
[2026-06-13 20:32:05,858.858 INFO    ] ================================================
[2026-06-13 20:32:06,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:06
[2026-06-13 20:32:06,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:06,653.653 INFO    ] Initializing speech engine...
[2026-06-13 20:32:06,658.658 INFO    ] 2026-06-13 20:32:06
[2026-06-13 20:32:06,865.865 INFO    ] 2026-06-13 20:32:06
[2026-06-13 20:32:06,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:07,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:07,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:07,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:07,270.270 INFO    ] time= 13/06/2026 20:32:07
[2026-06-13 20:32:07,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:07,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:07,389.389 INFO    ] No existing commands found in stream
[2026-06-13 20:32:12,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:12,403.403 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 20:32:12,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:32:12,850.850 INFO    ] Checking for system updates...
[2026-06-13 20:32:12,870.870 INFO    ] 200
[2026-06-13 20:32:12,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:12,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:12,904.904 INFO    ] No update needed
[2026-06-13 20:32:12,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:12,925.925 INFO    ] 200
[2026-06-13 20:32:12,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:12,950.950 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:12,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:12,999.999 INFO    ] No camera update needed
[2026-06-13 20:32:13,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:13,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:13,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:13,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:15,047.047 INFO    ] ================================================
[2026-06-13 20:32:15,062.062 INFO    ] Launching Daemon at Sat Jun 13 20:32:15 IST 2026
[2026-06-13 20:32:15,072.072 INFO    ] ================================================
[2026-06-13 20:32:15,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:15
[2026-06-13 20:32:15,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:15,871.871 INFO    ] Initializing speech engine...
[2026-06-13 20:32:15,885.885 INFO    ] 2026-06-13 20:32:15
[2026-06-13 20:32:16,104.104 INFO    ] 2026-06-13 20:32:16
[2026-06-13 20:32:16,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:16,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:16,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:16,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:16,506.506 INFO    ] time= 13/06/2026 20:32:16
[2026-06-13 20:32:16,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:16,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:16,659.659 INFO    ] No existing commands found in stream
[2026-06-13 20:32:21,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:21,672.672 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 20:32:23,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:32:23,281.281 INFO    ] Checking for system updates...
[2026-06-13 20:32:23,302.302 INFO    ] 200
[2026-06-13 20:32:23,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:23,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:32:23,338.338 INFO    ] No update needed
[2026-06-13 20:32:23,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:23,360.360 INFO    ] 200
[2026-06-13 20:32:23,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:23,385.385 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:23,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:32:23,431.431 INFO    ] No camera update needed
[2026-06-13 20:32:23,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:23,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:23,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:23,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:25,481.481 INFO    ] ================================================
[2026-06-13 20:32:25,497.497 INFO    ] Launching Daemon at Sat Jun 13 20:32:25 IST 2026
[2026-06-13 20:32:25,509.509 INFO    ] ================================================
[2026-06-13 20:32:25,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:25
[2026-06-13 20:32:26,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:26,314.314 INFO    ] Initializing speech engine...
[2026-06-13 20:32:26,319.319 INFO    ] 2026-06-13 20:32:26
[2026-06-13 20:32:26,547.547 INFO    ] 2026-06-13 20:32:26
[2026-06-13 20:32:26,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:26,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:26,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:26,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:26,943.943 INFO    ] time= 13/06/2026 20:32:26
[2026-06-13 20:32:27,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:27,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:27,100.100 INFO    ] No existing commands found in stream
[2026-06-13 20:32:32,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:32,111.111 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 20:32:34,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:32:34,006.006 INFO    ] Checking for system updates...
[2026-06-13 20:32:34,027.027 INFO    ] 200
[2026-06-13 20:32:34,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:34,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:34,060.060 INFO    ] No update needed
[2026-06-13 20:32:34,061.061 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:34,083.083 INFO    ] 200
[2026-06-13 20:32:34,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:34,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:34,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:34,145.145 INFO    ] No camera update needed
[2026-06-13 20:32:34,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:34,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:34,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:34,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:36,194.194 INFO    ] ================================================
[2026-06-13 20:32:36,209.209 INFO    ] Launching Daemon at Sat Jun 13 20:32:36 IST 2026
[2026-06-13 20:32:36,221.221 INFO    ] ================================================
[2026-06-13 20:32:36,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:36
[2026-06-13 20:32:36,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:37,005.005 INFO    ] Initializing speech engine...
[2026-06-13 20:32:37,014.014 INFO    ] 2026-06-13 20:32:37
[2026-06-13 20:32:37,232.232 INFO    ] 2026-06-13 20:32:37
[2026-06-13 20:32:37,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:37,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:37,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:37,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:37,630.630 INFO    ] time= 13/06/2026 20:32:37
[2026-06-13 20:32:37,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:37,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:37,786.786 INFO    ] No existing commands found in stream
[2026-06-13 20:32:42,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:42,800.800 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 20:32:44,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:32:44,068.068 INFO    ] Checking for system updates...
[2026-06-13 20:32:44,116.116 INFO    ] 200
[2026-06-13 20:32:44,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:44,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:32:44,150.150 INFO    ] No update needed
[2026-06-13 20:32:44,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:44,172.172 INFO    ] 200
[2026-06-13 20:32:44,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:44,197.197 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:44,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:32:44,247.247 INFO    ] No camera update needed
[2026-06-13 20:32:44,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:44,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:44,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:44,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:46,289.289 INFO    ] ================================================
[2026-06-13 20:32:46,297.297 INFO    ] Launching Daemon at Sat Jun 13 20:32:46 IST 2026
[2026-06-13 20:32:46,303.303 INFO    ] ================================================
[2026-06-13 20:32:46,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:46
[2026-06-13 20:32:46,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:47,061.061 INFO    ] Initializing speech engine...
[2026-06-13 20:32:47,065.065 INFO    ] 2026-06-13 20:32:47
[2026-06-13 20:32:47,269.269 INFO    ] 2026-06-13 20:32:47
[2026-06-13 20:32:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:47,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:47,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:47,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:47,685.685 INFO    ] time= 13/06/2026 20:32:47
[2026-06-13 20:32:47,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:47,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:47,781.781 INFO    ] No existing commands found in stream
[2026-06-13 20:32:52,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:32:52,793.793 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 20:32:54,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:32:54,133.133 INFO    ] Checking for system updates...
[2026-06-13 20:32:54,155.155 INFO    ] 200
[2026-06-13 20:32:54,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:54,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:54,190.190 INFO    ] No update needed
[2026-06-13 20:32:54,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 20:32:54,212.212 INFO    ] 200
[2026-06-13 20:32:54,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:32:54,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:32:54,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:32:54,381.381 INFO    ] No camera update needed
[2026-06-13 20:32:54,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:32:54,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:32:54,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:32:54,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:32:56,431.431 INFO    ] ================================================
[2026-06-13 20:32:56,446.446 INFO    ] Launching Daemon at Sat Jun 13 20:32:56 IST 2026
[2026-06-13 20:32:56,456.456 INFO    ] ================================================
[2026-06-13 20:32:56,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:32:56
[2026-06-13 20:32:57,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:32:57,262.262 INFO    ] Initializing speech engine...
[2026-06-13 20:32:57,267.267 INFO    ] 2026-06-13 20:32:57
[2026-06-13 20:32:57,477.477 INFO    ] 2026-06-13 20:32:57
[2026-06-13 20:32:57,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:32:57,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:32:57,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:32:57,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:32:57,889.889 INFO    ] time= 13/06/2026 20:32:57
[2026-06-13 20:32:57,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:32:57,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:32:57,999.999 INFO    ] No existing commands found in stream
[2026-06-13 20:33:03,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:03,014.014 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-13 20:33:03,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:33:03,438.438 INFO    ] Checking for system updates...
[2026-06-13 20:33:03,475.475 INFO    ] 200
[2026-06-13 20:33:03,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:03,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:03,540.540 INFO    ] No update needed
[2026-06-13 20:33:03,542.542 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:03,576.576 INFO    ] 200
[2026-06-13 20:33:03,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:03,624.624 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:03,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:03,670.670 INFO    ] No camera update needed
[2026-06-13 20:33:03,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:03,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:03,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:03,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:05,728.728 INFO    ] ================================================
[2026-06-13 20:33:05,743.743 INFO    ] Launching Daemon at Sat Jun 13 20:33:05 IST 2026
[2026-06-13 20:33:05,754.754 INFO    ] ================================================
[2026-06-13 20:33:06,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:06
[2026-06-13 20:33:06,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:33:06,615.615 INFO    ] Initializing speech engine...
[2026-06-13 20:33:06,621.621 INFO    ] 2026-06-13 20:33:06
[2026-06-13 20:33:06,827.827 INFO    ] 2026-06-13 20:33:06
[2026-06-13 20:33:06,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:33:06,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:33:07,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:33:07,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:33:07,186.186 INFO    ] time= 13/06/2026 20:33:07
[2026-06-13 20:33:07,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:33:07,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:33:07,342.342 INFO    ] No existing commands found in stream
[2026-06-13 20:33:12,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:12,356.356 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 20:33:16,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:33:16,012.012 INFO    ] Checking for system updates...
[2026-06-13 20:33:16,053.053 INFO    ] 200
[2026-06-13 20:33:16,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:16,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:16,115.115 INFO    ] No update needed
[2026-06-13 20:33:16,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:16,147.147 INFO    ] 200
[2026-06-13 20:33:16,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:16,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:16,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:16,246.246 INFO    ] No camera update needed
[2026-06-13 20:33:16,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:16,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:16,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:16,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:18,296.296 INFO    ] ================================================
[2026-06-13 20:33:18,311.311 INFO    ] Launching Daemon at Sat Jun 13 20:33:18 IST 2026
[2026-06-13 20:33:18,322.322 INFO    ] ================================================
[2026-06-13 20:33:18,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:18
[2026-06-13 20:33:18,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:33:19,138.138 INFO    ] Initializing speech engine...
[2026-06-13 20:33:19,143.143 INFO    ] 2026-06-13 20:33:19
[2026-06-13 20:33:19,376.376 INFO    ] 2026-06-13 20:33:19
[2026-06-13 20:33:19,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:33:19,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:33:19,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:33:19,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:33:19,860.860 INFO    ] time= 13/06/2026 20:33:19
[2026-06-13 20:33:19,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:33:19,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:33:20,071.071 INFO    ] No existing commands found in stream
[2026-06-13 20:33:25,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:25,107.107 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 20:33:27,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:33:27,930.930 INFO    ] Checking for system updates...
[2026-06-13 20:33:27,951.951 INFO    ] 200
[2026-06-13 20:33:27,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:27,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:33:27,988.988 INFO    ] No update needed
[2026-06-13 20:33:27,990.990 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:28,009.009 INFO    ] 200
[2026-06-13 20:33:28,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:28,034.034 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:28,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:33:28,081.081 INFO    ] No camera update needed
[2026-06-13 20:33:28,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:28,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:28,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:28,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:30,129.129 INFO    ] ================================================
[2026-06-13 20:33:30,143.143 INFO    ] Launching Daemon at Sat Jun 13 20:33:30 IST 2026
[2026-06-13 20:33:30,154.154 INFO    ] ================================================
[2026-06-13 20:33:30,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:30
[2026-06-13 20:33:30,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:33:31,093.093 INFO    ] Initializing speech engine...
[2026-06-13 20:33:31,105.105 INFO    ] 2026-06-13 20:33:31
[2026-06-13 20:33:31,357.357 INFO    ] 2026-06-13 20:33:31
[2026-06-13 20:33:31,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:33:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:33:31,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:33:31,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:33:31,681.681 INFO    ] time= 13/06/2026 20:33:31
[2026-06-13 20:33:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:33:31,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:33:31,808.808 INFO    ] No existing commands found in stream
[2026-06-13 20:33:36,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:36,830.830 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 20:33:38,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:33:38,146.146 INFO    ] Checking for system updates...
[2026-06-13 20:33:38,166.166 INFO    ] 200
[2026-06-13 20:33:38,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:38,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:33:38,200.200 INFO    ] No update needed
[2026-06-13 20:33:38,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:38,223.223 INFO    ] 200
[2026-06-13 20:33:38,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:38,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:38,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:33:38,288.288 INFO    ] No camera update needed
[2026-06-13 20:33:38,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:38,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:38,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:38,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:40,336.336 INFO    ] ================================================
[2026-06-13 20:33:40,352.352 INFO    ] Launching Daemon at Sat Jun 13 20:33:40 IST 2026
[2026-06-13 20:33:40,363.363 INFO    ] ================================================
[2026-06-13 20:33:40,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:40
[2026-06-13 20:33:41,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:33:41,200.200 INFO    ] Initializing speech engine...
[2026-06-13 20:33:41,206.206 INFO    ] 2026-06-13 20:33:41
[2026-06-13 20:33:41,413.413 INFO    ] 2026-06-13 20:33:41
[2026-06-13 20:33:41,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:33:41,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:33:41,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:33:41,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:33:41,843.843 INFO    ] time= 13/06/2026 20:33:41
[2026-06-13 20:33:41,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:33:41,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:33:42,066.066 INFO    ] No existing commands found in stream
[2026-06-13 20:33:47,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:47,101.101 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 20:33:47,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:33:47,839.839 INFO    ] Checking for system updates...
[2026-06-13 20:33:47,860.860 INFO    ] 200
[2026-06-13 20:33:47,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:47,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:47,894.894 INFO    ] No update needed
[2026-06-13 20:33:47,895.895 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:47,916.916 INFO    ] 200
[2026-06-13 20:33:47,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:47,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:47,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:33:47,982.982 INFO    ] No camera update needed
[2026-06-13 20:33:47,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:47,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:47,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:47,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:50,031.031 INFO    ] ================================================
[2026-06-13 20:33:50,046.046 INFO    ] Launching Daemon at Sat Jun 13 20:33:50 IST 2026
[2026-06-13 20:33:50,057.057 INFO    ] ================================================
[2026-06-13 20:33:50,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:50
[2026-06-13 20:33:50,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:33:50,830.830 INFO    ] Initializing speech engine...
[2026-06-13 20:33:50,846.846 INFO    ] 2026-06-13 20:33:50
[2026-06-13 20:33:51,055.055 INFO    ] 2026-06-13 20:33:51
[2026-06-13 20:33:51,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:33:51,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:33:51,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:33:51,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:33:51,469.469 INFO    ] time= 13/06/2026 20:33:51
[2026-06-13 20:33:51,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:33:51,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:33:51,570.570 INFO    ] No existing commands found in stream
[2026-06-13 20:33:56,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:33:56,582.582 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 20:33:57,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:33:57,115.115 INFO    ] Checking for system updates...
[2026-06-13 20:33:57,136.136 INFO    ] 200
[2026-06-13 20:33:57,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:57,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:57,169.169 INFO    ] No update needed
[2026-06-13 20:33:57,171.171 INFO    ] Checking for camera pi updates...
[2026-06-13 20:33:57,191.191 INFO    ] 200
[2026-06-13 20:33:57,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:33:57,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:33:57,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:33:57,271.271 INFO    ] No camera update needed
[2026-06-13 20:33:57,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:33:57,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:33:57,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:33:57,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:33:59,318.318 INFO    ] ================================================
[2026-06-13 20:33:59,333.333 INFO    ] Launching Daemon at Sat Jun 13 20:33:59 IST 2026
[2026-06-13 20:33:59,344.344 INFO    ] ================================================
[2026-06-13 20:33:59,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:33:59
[2026-06-13 20:33:59,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:00,129.129 INFO    ] Initializing speech engine...
[2026-06-13 20:34:00,137.137 INFO    ] 2026-06-13 20:34:00
[2026-06-13 20:34:00,344.344 INFO    ] 2026-06-13 20:34:00
[2026-06-13 20:34:00,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:00,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:00,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:00,735.735 INFO    ] time= 13/06/2026 20:34:00
[2026-06-13 20:34:00,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:00,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:00,856.856 INFO    ] No existing commands found in stream
[2026-06-13 20:34:05,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:34:05,867.867 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 20:34:08,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:34:08,403.403 INFO    ] Checking for system updates...
[2026-06-13 20:34:08,424.424 INFO    ] 200
[2026-06-13 20:34:08,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:08,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:08,459.459 INFO    ] No update needed
[2026-06-13 20:34:08,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 20:34:08,480.480 INFO    ] 200
[2026-06-13 20:34:08,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:08,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:34:08,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:08,547.547 INFO    ] No camera update needed
[2026-06-13 20:34:08,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:34:08,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:34:08,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:34:08,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:34:10,595.595 INFO    ] ================================================
[2026-06-13 20:34:10,610.610 INFO    ] Launching Daemon at Sat Jun 13 20:34:10 IST 2026
[2026-06-13 20:34:10,621.621 INFO    ] ================================================
[2026-06-13 20:34:10,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:34:10
[2026-06-13 20:34:11,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:11,417.417 INFO    ] Initializing speech engine...
[2026-06-13 20:34:11,421.421 INFO    ] 2026-06-13 20:34:11
[2026-06-13 20:34:11,637.637 INFO    ] 2026-06-13 20:34:11
[2026-06-13 20:34:11,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:11,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:11,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:12,043.043 INFO    ] time= 13/06/2026 20:34:11
[2026-06-13 20:34:12,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:12,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:12,152.152 INFO    ] No existing commands found in stream
[2026-06-13 20:34:17,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:34:17,163.163 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 20:34:18,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:34:18,311.311 INFO    ] Checking for system updates...
[2026-06-13 20:34:18,331.331 INFO    ] 200
[2026-06-13 20:34:18,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:18,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:34:18,367.367 INFO    ] No update needed
[2026-06-13 20:34:18,368.368 INFO    ] Checking for camera pi updates...
[2026-06-13 20:34:18,389.389 INFO    ] 200
[2026-06-13 20:34:18,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:18,414.414 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:34:18,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:34:18,452.452 INFO    ] No camera update needed
[2026-06-13 20:34:18,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:34:18,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:34:18,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:34:18,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:34:20,499.499 INFO    ] ================================================
[2026-06-13 20:34:20,514.514 INFO    ] Launching Daemon at Sat Jun 13 20:34:20 IST 2026
[2026-06-13 20:34:20,524.524 INFO    ] ================================================
[2026-06-13 20:34:20,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:34:20
[2026-06-13 20:34:21,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:21,343.343 INFO    ] Initializing speech engine...
[2026-06-13 20:34:21,357.357 INFO    ] 2026-06-13 20:34:21
[2026-06-13 20:34:21,613.613 INFO    ] 2026-06-13 20:34:21
[2026-06-13 20:34:21,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:21,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:21,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:21,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:21,981.981 INFO    ] time= 13/06/2026 20:34:21
[2026-06-13 20:34:21,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:21,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:22,066.066 INFO    ] No existing commands found in stream
[2026-06-13 20:34:27,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:34:27,082.082 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 20:34:31,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:34:31,010.010 INFO    ] Checking for system updates...
[2026-06-13 20:34:31,031.031 INFO    ] 200
[2026-06-13 20:34:31,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:31,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:31,066.066 INFO    ] No update needed
[2026-06-13 20:34:31,067.067 INFO    ] Checking for camera pi updates...
[2026-06-13 20:34:31,087.087 INFO    ] 200
[2026-06-13 20:34:31,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:31,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:34:31,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:31,162.162 INFO    ] No camera update needed
[2026-06-13 20:34:31,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:34:31,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:34:31,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:34:31,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:34:33,210.210 INFO    ] ================================================
[2026-06-13 20:34:33,226.226 INFO    ] Launching Daemon at Sat Jun 13 20:34:33 IST 2026
[2026-06-13 20:34:33,237.237 INFO    ] ================================================
[2026-06-13 20:34:33,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:34:33
[2026-06-13 20:34:34,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:34,871.871 INFO    ] Initializing speech engine...
[2026-06-13 20:34:34,881.881 INFO    ] 2026-06-13 20:34:34
[2026-06-13 20:34:35,189.189 INFO    ] 2026-06-13 20:34:35
[2026-06-13 20:34:35,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:35,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:35,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:35,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:35,653.653 INFO    ] time= 13/06/2026 20:34:35
[2026-06-13 20:34:35,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:35,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:35,749.749 INFO    ] No existing commands found in stream
[2026-06-13 20:34:40,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:34:40,763.763 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 20:34:43,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:34:43,626.626 INFO    ] Checking for system updates...
[2026-06-13 20:34:43,648.648 INFO    ] 200
[2026-06-13 20:34:43,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:43,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:34:43,682.682 INFO    ] No update needed
[2026-06-13 20:34:43,683.683 INFO    ] Checking for camera pi updates...
[2026-06-13 20:34:43,705.705 INFO    ] 200
[2026-06-13 20:34:43,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:43,731.731 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:34:43,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:34:43,774.774 INFO    ] No camera update needed
[2026-06-13 20:34:43,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:34:43,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:34:43,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:34:43,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:34:45,822.822 INFO    ] ================================================
[2026-06-13 20:34:45,837.837 INFO    ] Launching Daemon at Sat Jun 13 20:34:45 IST 2026
[2026-06-13 20:34:45,848.848 INFO    ] ================================================
[2026-06-13 20:34:46,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:34:46
[2026-06-13 20:34:46,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:46,662.662 INFO    ] Initializing speech engine...
[2026-06-13 20:34:46,666.666 INFO    ] 2026-06-13 20:34:46
[2026-06-13 20:34:46,886.886 INFO    ] 2026-06-13 20:34:46
[2026-06-13 20:34:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:47,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:47,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:47,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:47,301.301 INFO    ] time= 13/06/2026 20:34:47
[2026-06-13 20:34:47,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:47,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:47,407.407 INFO    ] No existing commands found in stream
[2026-06-13 20:34:52,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:34:52,421.421 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 20:34:53,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:34:53,760.760 INFO    ] Checking for system updates...
[2026-06-13 20:34:53,780.780 INFO    ] 200
[2026-06-13 20:34:53,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:53,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:53,813.813 INFO    ] No update needed
[2026-06-13 20:34:53,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 20:34:53,836.836 INFO    ] 200
[2026-06-13 20:34:53,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:34:53,862.862 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:34:53,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:34:53,911.911 INFO    ] No camera update needed
[2026-06-13 20:34:53,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:34:53,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:34:53,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:34:53,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:34:55,958.958 INFO    ] ================================================
[2026-06-13 20:34:55,974.974 INFO    ] Launching Daemon at Sat Jun 13 20:34:55 IST 2026
[2026-06-13 20:34:55,985.985 INFO    ] ================================================
[2026-06-13 20:34:56,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:34:56
[2026-06-13 20:34:56,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:34:56,790.790 INFO    ] Initializing speech engine...
[2026-06-13 20:34:56,795.795 INFO    ] 2026-06-13 20:34:56
[2026-06-13 20:34:56,999.999 INFO    ] 2026-06-13 20:34:56
[2026-06-13 20:34:57,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:34:57,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:34:57,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:34:57,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:34:57,387.387 INFO    ] time= 13/06/2026 20:34:57
[2026-06-13 20:34:57,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:34:57,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:34:57,510.510 INFO    ] No existing commands found in stream
[2026-06-13 20:35:02,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:02,521.521 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 20:35:04,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:35:04,080.080 INFO    ] Checking for system updates...
[2026-06-13 20:35:04,101.101 INFO    ] 200
[2026-06-13 20:35:04,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:04,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:04,135.135 INFO    ] No update needed
[2026-06-13 20:35:04,136.136 INFO    ] Checking for camera pi updates...
[2026-06-13 20:35:04,156.156 INFO    ] 200
[2026-06-13 20:35:04,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:04,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:35:04,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:04,234.234 INFO    ] No camera update needed
[2026-06-13 20:35:04,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:35:04,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:35:04,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:35:04,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:35:06,282.282 INFO    ] ================================================
[2026-06-13 20:35:06,297.297 INFO    ] Launching Daemon at Sat Jun 13 20:35:06 IST 2026
[2026-06-13 20:35:06,308.308 INFO    ] ================================================
[2026-06-13 20:35:06,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:35:06
[2026-06-13 20:35:06,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:35:07,152.152 INFO    ] Initializing speech engine...
[2026-06-13 20:35:07,156.156 INFO    ] 2026-06-13 20:35:07
[2026-06-13 20:35:07,383.383 INFO    ] 2026-06-13 20:35:07
[2026-06-13 20:35:07,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:35:07,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:35:07,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:35:07,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:35:07,971.971 INFO    ] time= 13/06/2026 20:35:07
[2026-06-13 20:35:07,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:35:07,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:35:08,048.048 INFO    ] No existing commands found in stream
[2026-06-13 20:35:13,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:13,061.061 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 20:35:16,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:35:16,074.074 INFO    ] Checking for system updates...
[2026-06-13 20:35:16,095.095 INFO    ] 200
[2026-06-13 20:35:16,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:16,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:16,129.129 INFO    ] No update needed
[2026-06-13 20:35:16,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 20:35:16,157.157 INFO    ] 200
[2026-06-13 20:35:16,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:16,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:35:16,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:16,240.240 INFO    ] No camera update needed
[2026-06-13 20:35:16,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:35:16,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:35:16,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:35:16,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:35:18,289.289 INFO    ] ================================================
[2026-06-13 20:35:18,304.304 INFO    ] Launching Daemon at Sat Jun 13 20:35:18 IST 2026
[2026-06-13 20:35:18,315.315 INFO    ] ================================================
[2026-06-13 20:35:18,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:35:18
[2026-06-13 20:35:18,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:35:19,113.113 INFO    ] Initializing speech engine...
[2026-06-13 20:35:19,118.118 INFO    ] 2026-06-13 20:35:19
[2026-06-13 20:35:19,325.325 INFO    ] 2026-06-13 20:35:19
[2026-06-13 20:35:19,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:35:19,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:35:19,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:35:19,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:35:19,749.749 INFO    ] time= 13/06/2026 20:35:19
[2026-06-13 20:35:19,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:35:19,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:35:19,846.846 INFO    ] No existing commands found in stream
[2026-06-13 20:35:24,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:24,859.859 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 20:35:25,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:35:25,569.569 INFO    ] Checking for system updates...
[2026-06-13 20:35:25,590.590 INFO    ] 200
[2026-06-13 20:35:25,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:25,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:35:25,623.623 INFO    ] No update needed
[2026-06-13 20:35:25,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 20:35:25,646.646 INFO    ] 200
[2026-06-13 20:35:25,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:25,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:35:25,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:35:25,711.711 INFO    ] No camera update needed
[2026-06-13 20:35:25,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:35:25,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:35:25,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:35:25,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:35:27,759.759 INFO    ] ================================================
[2026-06-13 20:35:27,775.775 INFO    ] Launching Daemon at Sat Jun 13 20:35:27 IST 2026
[2026-06-13 20:35:27,785.785 INFO    ] ================================================
[2026-06-13 20:35:28,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:35:28
[2026-06-13 20:35:28,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:35:29,129.129 INFO    ] Initializing speech engine...
[2026-06-13 20:35:29,143.143 INFO    ] 2026-06-13 20:35:29
[2026-06-13 20:35:29,428.428 INFO    ] 2026-06-13 20:35:29
[2026-06-13 20:35:29,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:35:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:35:29,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:35:29,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:35:29,923.923 INFO    ] time= 13/06/2026 20:35:29
[2026-06-13 20:35:29,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:35:29,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:35:30,102.102 INFO    ] No existing commands found in stream
[2026-06-13 20:35:35,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:35,131.131 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 20:35:38,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:35:38,951.951 INFO    ] Checking for system updates...
[2026-06-13 20:35:38,975.975 INFO    ] 200
[2026-06-13 20:35:38,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:39,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:39,013.013 INFO    ] No update needed
[2026-06-13 20:35:39,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 20:35:39,037.037 INFO    ] 200
[2026-06-13 20:35:39,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:39,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:35:39,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:35:39,107.107 INFO    ] No camera update needed
[2026-06-13 20:35:39,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:35:39,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:35:39,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:35:39,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:35:41,151.151 INFO    ] ================================================
[2026-06-13 20:35:41,161.161 INFO    ] Launching Daemon at Sat Jun 13 20:35:41 IST 2026
[2026-06-13 20:35:41,167.167 INFO    ] ================================================
[2026-06-13 20:35:41,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:35:41
[2026-06-13 20:35:41,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:35:41,922.922 INFO    ] Initializing speech engine...
[2026-06-13 20:35:41,929.929 INFO    ] 2026-06-13 20:35:41
[2026-06-13 20:35:42,143.143 INFO    ] 2026-06-13 20:35:42
[2026-06-13 20:35:42,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:35:42,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:35:42,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:35:42,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:35:42,561.561 INFO    ] time= 13/06/2026 20:35:42
[2026-06-13 20:35:42,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:35:42,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:35:42,667.667 INFO    ] No existing commands found in stream
[2026-06-13 20:35:47,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:47,680.680 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 20:35:50,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:35:50,830.830 INFO    ] Checking for system updates...
[2026-06-13 20:35:50,851.851 INFO    ] 200
[2026-06-13 20:35:50,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:50,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:35:50,885.885 INFO    ] No update needed
[2026-06-13 20:35:50,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 20:35:50,907.907 INFO    ] 200
[2026-06-13 20:35:50,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:35:50,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:35:50,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:35:50,975.975 INFO    ] No camera update needed
[2026-06-13 20:35:50,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:35:50,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:35:50,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:35:50,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:35:53,025.025 INFO    ] ================================================
[2026-06-13 20:35:53,040.040 INFO    ] Launching Daemon at Sat Jun 13 20:35:53 IST 2026
[2026-06-13 20:35:53,051.051 INFO    ] ================================================
[2026-06-13 20:35:53,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:35:53
[2026-06-13 20:35:53,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:35:53,905.905 INFO    ] Initializing speech engine...
[2026-06-13 20:35:53,911.911 INFO    ] 2026-06-13 20:35:53
[2026-06-13 20:35:54,120.120 INFO    ] 2026-06-13 20:35:54
[2026-06-13 20:35:54,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:35:54,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:35:54,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:35:54,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:35:54,528.528 INFO    ] time= 13/06/2026 20:35:54
[2026-06-13 20:35:54,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:35:54,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:35:54,646.646 INFO    ] No existing commands found in stream
[2026-06-13 20:35:59,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:35:59,664.664 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 20:36:00,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:36:00,058.058 INFO    ] Checking for system updates...
[2026-06-13 20:36:00,079.079 INFO    ] 200
[2026-06-13 20:36:00,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:00,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:00,113.113 INFO    ] No update needed
[2026-06-13 20:36:00,115.115 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:00,135.135 INFO    ] 200
[2026-06-13 20:36:00,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:00,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:00,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:00,201.201 INFO    ] No camera update needed
[2026-06-13 20:36:00,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:00,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:00,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:00,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:36:02,253.253 INFO    ] ================================================
[2026-06-13 20:36:02,277.277 INFO    ] Launching Daemon at Sat Jun 13 20:36:02 IST 2026
[2026-06-13 20:36:02,291.291 INFO    ] ================================================
[2026-06-13 20:36:02,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:36:02
[2026-06-13 20:36:03,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:36:03,896.896 INFO    ] Initializing speech engine...
[2026-06-13 20:36:03,904.904 INFO    ] 2026-06-13 20:36:03
[2026-06-13 20:36:04,163.163 INFO    ] 2026-06-13 20:36:04
[2026-06-13 20:36:04,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:36:04,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:36:04,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:36:04,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:36:04,511.511 INFO    ] time= 13/06/2026 20:36:04
[2026-06-13 20:36:04,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:36:04,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:36:04,630.630 INFO    ] No existing commands found in stream
[2026-06-13 20:36:09,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:36:09,644.644 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 20:36:10,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:36:10,795.795 INFO    ] Checking for system updates...
[2026-06-13 20:36:10,816.816 INFO    ] 200
[2026-06-13 20:36:10,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:10,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:10,849.849 INFO    ] No update needed
[2026-06-13 20:36:10,850.850 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:10,869.869 INFO    ] 200
[2026-06-13 20:36:10,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:10,895.895 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:10,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:10,933.933 INFO    ] No camera update needed
[2026-06-13 20:36:10,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:10,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:10,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:10,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:36:12,981.981 INFO    ] ================================================
[2026-06-13 20:36:13,996.996 INFO    ] Launching Daemon at Sat Jun 13 20:36:12 IST 2026
[2026-06-13 20:36:13,007.007 INFO    ] ================================================
[2026-06-13 20:36:13,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:36:13
[2026-06-13 20:36:13,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:36:13,863.863 INFO    ] Initializing speech engine...
[2026-06-13 20:36:13,869.869 INFO    ] 2026-06-13 20:36:13
[2026-06-13 20:36:14,075.075 INFO    ] 2026-06-13 20:36:14
[2026-06-13 20:36:14,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:36:14,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:36:14,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:36:14,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:36:14,491.491 INFO    ] time= 13/06/2026 20:36:14
[2026-06-13 20:36:14,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:36:14,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:36:14,591.591 INFO    ] No existing commands found in stream
[2026-06-13 20:36:19,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:36:19,609.609 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-13 20:36:23,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:36:23,667.667 INFO    ] Checking for system updates...
[2026-06-13 20:36:23,688.688 INFO    ] 200
[2026-06-13 20:36:23,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:23,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:23,722.722 INFO    ] No update needed
[2026-06-13 20:36:23,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:23,743.743 INFO    ] 200
[2026-06-13 20:36:23,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:23,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:23,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:23,815.815 INFO    ] No camera update needed
[2026-06-13 20:36:23,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:23,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:23,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:23,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:36:25,863.863 INFO    ] ================================================
[2026-06-13 20:36:25,879.879 INFO    ] Launching Daemon at Sat Jun 13 20:36:25 IST 2026
[2026-06-13 20:36:25,889.889 INFO    ] ================================================
[2026-06-13 20:36:26,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:36:26
[2026-06-13 20:36:26,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:36:26,714.714 INFO    ] Initializing speech engine...
[2026-06-13 20:36:26,719.719 INFO    ] 2026-06-13 20:36:26
[2026-06-13 20:36:26,924.924 INFO    ] 2026-06-13 20:36:26
[2026-06-13 20:36:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:36:27,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:36:27,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:36:27,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:36:27,343.343 INFO    ] time= 13/06/2026 20:36:27
[2026-06-13 20:36:27,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:36:27,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:36:27,438.438 INFO    ] No existing commands found in stream
[2026-06-13 20:36:32,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:36:32,450.450 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 20:36:36,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:36:36,282.282 INFO    ] Checking for system updates...
[2026-06-13 20:36:36,303.303 INFO    ] 200
[2026-06-13 20:36:36,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:36,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:36,337.337 INFO    ] No update needed
[2026-06-13 20:36:36,339.339 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:36,358.358 INFO    ] 200
[2026-06-13 20:36:36,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:36,383.383 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:36,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:36:36,428.428 INFO    ] No camera update needed
[2026-06-13 20:36:36,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:36,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:36,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:36,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:36:38,479.479 INFO    ] ================================================
[2026-06-13 20:36:38,494.494 INFO    ] Launching Daemon at Sat Jun 13 20:36:38 IST 2026
[2026-06-13 20:36:38,505.505 INFO    ] ================================================
[2026-06-13 20:36:38,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:36:38
[2026-06-13 20:36:39,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:36:39,285.285 INFO    ] Initializing speech engine...
[2026-06-13 20:36:39,291.291 INFO    ] 2026-06-13 20:36:39
[2026-06-13 20:36:39,496.496 INFO    ] 2026-06-13 20:36:39
[2026-06-13 20:36:39,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:36:39,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:36:39,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:36:39,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:36:39,919.919 INFO    ] time= 13/06/2026 20:36:39
[2026-06-13 20:36:39,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:36:39,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:36:40,030.030 INFO    ] No existing commands found in stream
[2026-06-13 20:36:45,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:36:45,044.044 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 20:36:48,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:36:48,147.147 INFO    ] Checking for system updates...
[2026-06-13 20:36:48,169.169 INFO    ] 200
[2026-06-13 20:36:48,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:48,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:48,203.203 INFO    ] No update needed
[2026-06-13 20:36:48,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:48,224.224 INFO    ] 200
[2026-06-13 20:36:48,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:48,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:48,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:48,288.288 INFO    ] No camera update needed
[2026-06-13 20:36:48,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:48,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:48,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:48,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:36:50,337.337 INFO    ] ================================================
[2026-06-13 20:36:50,352.352 INFO    ] Launching Daemon at Sat Jun 13 20:36:50 IST 2026
[2026-06-13 20:36:50,363.363 INFO    ] ================================================
[2026-06-13 20:36:50,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:36:50
[2026-06-13 20:36:51,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:36:51,163.163 INFO    ] Initializing speech engine...
[2026-06-13 20:36:51,166.166 INFO    ] 2026-06-13 20:36:51
[2026-06-13 20:36:51,370.370 INFO    ] 2026-06-13 20:36:51
[2026-06-13 20:36:51,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:36:51,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:36:51,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:36:51,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:36:51,775.775 INFO    ] time= 13/06/2026 20:36:51
[2026-06-13 20:36:51,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:36:51,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:36:51,891.891 INFO    ] No existing commands found in stream
[2026-06-13 20:36:56,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:36:56,904.904 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 20:36:58,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:36:58,446.446 INFO    ] Checking for system updates...
[2026-06-13 20:36:58,467.467 INFO    ] 200
[2026-06-13 20:36:58,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:58,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:58,502.502 INFO    ] No update needed
[2026-06-13 20:36:58,503.503 INFO    ] Checking for camera pi updates...
[2026-06-13 20:36:58,523.523 INFO    ] 200
[2026-06-13 20:36:58,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:36:58,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:36:58,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:36:58,599.599 INFO    ] No camera update needed
[2026-06-13 20:36:58,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:36:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:36:58,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:36:58,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:00,647.647 INFO    ] ================================================
[2026-06-13 20:37:00,663.663 INFO    ] Launching Daemon at Sat Jun 13 20:37:00 IST 2026
[2026-06-13 20:37:00,673.673 INFO    ] ================================================
[2026-06-13 20:37:01,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:37:01
[2026-06-13 20:37:01,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:37:01,490.490 INFO    ] Initializing speech engine...
[2026-06-13 20:37:01,494.494 INFO    ] 2026-06-13 20:37:01
[2026-06-13 20:37:01,702.702 INFO    ] 2026-06-13 20:37:01
[2026-06-13 20:37:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:37:01,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:37:01,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:37:02,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:37:02,178.178 INFO    ] time= 13/06/2026 20:37:02
[2026-06-13 20:37:02,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:37:02,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:37:02,353.353 INFO    ] No existing commands found in stream
[2026-06-13 20:37:07,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:37:07,367.367 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 20:37:08,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:37:08,651.651 INFO    ] Checking for system updates...
[2026-06-13 20:37:08,671.671 INFO    ] 200
[2026-06-13 20:37:08,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:08,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:08,704.704 INFO    ] No update needed
[2026-06-13 20:37:08,705.705 INFO    ] Checking for camera pi updates...
[2026-06-13 20:37:08,727.727 INFO    ] 200
[2026-06-13 20:37:08,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:08,755.755 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:37:08,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:08,909.909 INFO    ] No camera update needed
[2026-06-13 20:37:08,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:37:08,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:37:08,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:37:08,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:10,949.949 INFO    ] ================================================
[2026-06-13 20:37:10,964.964 INFO    ] Launching Daemon at Sat Jun 13 20:37:10 IST 2026
[2026-06-13 20:37:10,975.975 INFO    ] ================================================
[2026-06-13 20:37:11,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:37:11
[2026-06-13 20:37:11,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:37:11,861.861 INFO    ] Initializing speech engine...
[2026-06-13 20:37:11,874.874 INFO    ] 2026-06-13 20:37:11
[2026-06-13 20:37:12,089.089 INFO    ] 2026-06-13 20:37:12
[2026-06-13 20:37:12,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:37:12,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:37:12,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:37:12,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:37:12,512.512 INFO    ] time= 13/06/2026 20:37:12
[2026-06-13 20:37:12,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:37:12,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:37:12,635.635 INFO    ] No existing commands found in stream
[2026-06-13 20:37:17,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:37:17,649.649 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 20:37:20,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:37:20,826.826 INFO    ] Checking for system updates...
[2026-06-13 20:37:20,847.847 INFO    ] 200
[2026-06-13 20:37:20,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:20,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:37:20,880.880 INFO    ] No update needed
[2026-06-13 20:37:20,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 20:37:20,913.913 INFO    ] 200
[2026-06-13 20:37:20,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:20,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:37:21,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:21,005.005 INFO    ] No camera update needed
[2026-06-13 20:37:21,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:37:21,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:37:21,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:37:21,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:23,060.060 INFO    ] ================================================
[2026-06-13 20:37:23,075.075 INFO    ] Launching Daemon at Sat Jun 13 20:37:23 IST 2026
[2026-06-13 20:37:23,086.086 INFO    ] ================================================
[2026-06-13 20:37:23,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:37:23
[2026-06-13 20:37:24,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:37:24,272.272 INFO    ] Initializing speech engine...
[2026-06-13 20:37:24,275.275 INFO    ] 2026-06-13 20:37:24
[2026-06-13 20:37:24,494.494 INFO    ] 2026-06-13 20:37:24
[2026-06-13 20:37:24,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:37:24,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:37:24,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:37:24,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:37:24,910.910 INFO    ] time= 13/06/2026 20:37:24
[2026-06-13 20:37:24,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:37:24,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:37:25,017.017 INFO    ] No existing commands found in stream
[2026-06-13 20:37:30,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:37:30,031.031 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 20:37:33,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:37:33,454.454 INFO    ] Checking for system updates...
[2026-06-13 20:37:33,477.477 INFO    ] 200
[2026-06-13 20:37:33,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:33,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:33,511.511 INFO    ] No update needed
[2026-06-13 20:37:33,512.512 INFO    ] Checking for camera pi updates...
[2026-06-13 20:37:33,531.531 INFO    ] 200
[2026-06-13 20:37:33,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:33,556.556 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:37:33,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:33,601.601 INFO    ] No camera update needed
[2026-06-13 20:37:33,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:37:33,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:37:33,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:37:33,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:35,652.652 INFO    ] ================================================
[2026-06-13 20:37:35,668.668 INFO    ] Launching Daemon at Sat Jun 13 20:37:35 IST 2026
[2026-06-13 20:37:35,678.678 INFO    ] ================================================
[2026-06-13 20:37:36,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:37:36
[2026-06-13 20:37:36,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:37:36,541.541 INFO    ] Initializing speech engine...
[2026-06-13 20:37:36,546.546 INFO    ] 2026-06-13 20:37:36
[2026-06-13 20:37:36,753.753 INFO    ] 2026-06-13 20:37:36
[2026-06-13 20:37:36,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:37:36,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:37:36,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:37:37,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:37:37,160.160 INFO    ] time= 13/06/2026 20:37:37
[2026-06-13 20:37:37,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:37:37,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:37:37,304.304 INFO    ] No existing commands found in stream
[2026-06-13 20:37:42,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:37:42,329.329 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 20:37:45,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:37:45,978.978 INFO    ] Checking for system updates...
[2026-06-13 20:37:45,999.999 INFO    ] 200
[2026-06-13 20:37:46,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:46,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:46,033.033 INFO    ] No update needed
[2026-06-13 20:37:46,034.034 INFO    ] Checking for camera pi updates...
[2026-06-13 20:37:46,054.054 INFO    ] 200
[2026-06-13 20:37:46,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:46,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:37:46,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:46,130.130 INFO    ] No camera update needed
[2026-06-13 20:37:46,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:37:46,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:37:46,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:37:46,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:48,179.179 INFO    ] ================================================
[2026-06-13 20:37:48,194.194 INFO    ] Launching Daemon at Sat Jun 13 20:37:48 IST 2026
[2026-06-13 20:37:48,205.205 INFO    ] ================================================
[2026-06-13 20:37:48,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:37:48
[2026-06-13 20:37:49,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:37:49,483.483 INFO    ] Initializing speech engine...
[2026-06-13 20:37:49,492.492 INFO    ] 2026-06-13 20:37:49
[2026-06-13 20:37:49,751.751 INFO    ] 2026-06-13 20:37:49
[2026-06-13 20:37:49,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:37:50,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:37:50,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:37:50,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:37:50,214.214 INFO    ] time= 13/06/2026 20:37:50
[2026-06-13 20:37:50,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:37:50,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:37:50,457.457 INFO    ] No existing commands found in stream
[2026-06-13 20:37:55,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:37:55,473.473 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 20:37:57,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:37:57,769.769 INFO    ] Checking for system updates...
[2026-06-13 20:37:57,790.790 INFO    ] 200
[2026-06-13 20:37:57,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:57,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:57,825.825 INFO    ] No update needed
[2026-06-13 20:37:57,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 20:37:57,847.847 INFO    ] 200
[2026-06-13 20:37:57,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:37:57,873.873 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:37:57,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:37:57,914.914 INFO    ] No camera update needed
[2026-06-13 20:37:57,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:37:57,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:37:57,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:37:57,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:37:59,962.962 INFO    ] ================================================
[2026-06-13 20:37:59,977.977 INFO    ] Launching Daemon at Sat Jun 13 20:37:59 IST 2026
[2026-06-13 20:37:59,987.987 INFO    ] ================================================
[2026-06-13 20:38:00,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:00
[2026-06-13 20:38:01,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:01,612.612 INFO    ] Initializing speech engine...
[2026-06-13 20:38:01,638.638 INFO    ] 2026-06-13 20:38:01
[2026-06-13 20:38:02,008.008 INFO    ] 2026-06-13 20:38:02
[2026-06-13 20:38:02,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:02,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:02,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:02,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:02,482.482 INFO    ] time= 13/06/2026 20:38:02
[2026-06-13 20:38:02,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:02,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:02,651.651 INFO    ] No existing commands found in stream
[2026-06-13 20:38:07,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:38:07,695.695 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 20:38:08,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:38:08,079.079 INFO    ] Checking for system updates...
[2026-06-13 20:38:08,099.099 INFO    ] 200
[2026-06-13 20:38:08,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:08,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:38:08,134.134 INFO    ] No update needed
[2026-06-13 20:38:08,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 20:38:08,156.156 INFO    ] 200
[2026-06-13 20:38:08,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:08,181.181 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:38:08,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:38:08,225.225 INFO    ] No camera update needed
[2026-06-13 20:38:08,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:38:08,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:38:08,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:38:08,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:38:10,272.272 INFO    ] ================================================
[2026-06-13 20:38:10,287.287 INFO    ] Launching Daemon at Sat Jun 13 20:38:10 IST 2026
[2026-06-13 20:38:10,298.298 INFO    ] ================================================
[2026-06-13 20:38:10,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:10
[2026-06-13 20:38:10,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:11,102.102 INFO    ] Initializing speech engine...
[2026-06-13 20:38:11,107.107 INFO    ] 2026-06-13 20:38:11
[2026-06-13 20:38:11,311.311 INFO    ] 2026-06-13 20:38:11
[2026-06-13 20:38:11,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:11,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:11,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:11,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:11,700.700 INFO    ] time= 13/06/2026 20:38:11
[2026-06-13 20:38:11,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:11,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:11,813.813 INFO    ] No existing commands found in stream
[2026-06-13 20:38:16,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:38:16,836.836 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 20:38:20,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:38:20,039.039 INFO    ] Checking for system updates...
[2026-06-13 20:38:20,059.059 INFO    ] 200
[2026-06-13 20:38:20,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:20,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:20,092.092 INFO    ] No update needed
[2026-06-13 20:38:20,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 20:38:20,113.113 INFO    ] 200
[2026-06-13 20:38:20,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:20,138.138 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:38:20,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:20,176.176 INFO    ] No camera update needed
[2026-06-13 20:38:20,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:38:20,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:38:20,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:38:20,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:38:22,223.223 INFO    ] ================================================
[2026-06-13 20:38:22,238.238 INFO    ] Launching Daemon at Sat Jun 13 20:38:22 IST 2026
[2026-06-13 20:38:22,249.249 INFO    ] ================================================
[2026-06-13 20:38:22,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:22
[2026-06-13 20:38:23,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:23,635.635 INFO    ] Initializing speech engine...
[2026-06-13 20:38:23,660.660 INFO    ] 2026-06-13 20:38:23
[2026-06-13 20:38:23,934.934 INFO    ] 2026-06-13 20:38:23
[2026-06-13 20:38:23,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:24,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:24,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:24,316.316 INFO    ] time= 13/06/2026 20:38:24
[2026-06-13 20:38:24,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:24,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:24,441.441 INFO    ] No existing commands found in stream
[2026-06-13 20:38:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:38:29,454.454 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 20:38:32,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:38:32,686.686 INFO    ] Checking for system updates...
[2026-06-13 20:38:32,726.726 INFO    ] 200
[2026-06-13 20:38:32,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:32,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:32,776.776 INFO    ] No update needed
[2026-06-13 20:38:32,777.777 INFO    ] Checking for camera pi updates...
[2026-06-13 20:38:32,798.798 INFO    ] 200
[2026-06-13 20:38:32,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:32,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:38:32,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:38:32,846.846 INFO    ] No camera update needed
[2026-06-13 20:38:32,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:38:32,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:38:32,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:38:32,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:38:34,896.896 INFO    ] ================================================
[2026-06-13 20:38:34,911.911 INFO    ] Launching Daemon at Sat Jun 13 20:38:34 IST 2026
[2026-06-13 20:38:34,922.922 INFO    ] ================================================
[2026-06-13 20:38:35,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:35
[2026-06-13 20:38:35,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:35,730.730 INFO    ] Initializing speech engine...
[2026-06-13 20:38:35,739.739 INFO    ] 2026-06-13 20:38:35
[2026-06-13 20:38:35,963.963 INFO    ] 2026-06-13 20:38:35
[2026-06-13 20:38:35,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:36,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:36,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:36,378.378 INFO    ] time= 13/06/2026 20:38:36
[2026-06-13 20:38:36,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:36,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:36,521.521 INFO    ] No existing commands found in stream
[2026-06-13 20:38:41,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:38:41,532.532 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 20:38:44,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:38:44,602.602 INFO    ] Checking for system updates...
[2026-06-13 20:38:44,623.623 INFO    ] 200
[2026-06-13 20:38:44,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:44,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:44,660.660 INFO    ] No update needed
[2026-06-13 20:38:44,662.662 INFO    ] Checking for camera pi updates...
[2026-06-13 20:38:44,684.684 INFO    ] 200
[2026-06-13 20:38:44,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:44,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:38:44,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:44,760.760 INFO    ] No camera update needed
[2026-06-13 20:38:44,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:38:44,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:38:44,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:38:44,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:38:46,810.810 INFO    ] ================================================
[2026-06-13 20:38:46,826.826 INFO    ] Launching Daemon at Sat Jun 13 20:38:46 IST 2026
[2026-06-13 20:38:46,836.836 INFO    ] ================================================
[2026-06-13 20:38:47,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:47
[2026-06-13 20:38:47,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:47,717.717 INFO    ] Initializing speech engine...
[2026-06-13 20:38:47,723.723 INFO    ] 2026-06-13 20:38:47
[2026-06-13 20:38:47,933.933 INFO    ] 2026-06-13 20:38:47
[2026-06-13 20:38:47,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:48,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:48,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:48,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:48,339.339 INFO    ] time= 13/06/2026 20:38:48
[2026-06-13 20:38:48,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:48,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:48,449.449 INFO    ] No existing commands found in stream
[2026-06-13 20:38:53,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:38:53,462.462 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 20:38:56,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:38:56,176.176 INFO    ] Checking for system updates...
[2026-06-13 20:38:56,198.198 INFO    ] 200
[2026-06-13 20:38:56,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:56,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:56,234.234 INFO    ] No update needed
[2026-06-13 20:38:56,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 20:38:56,257.257 INFO    ] 200
[2026-06-13 20:38:56,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:38:56,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:38:56,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:38:56,329.329 INFO    ] No camera update needed
[2026-06-13 20:38:56,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:38:56,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:38:56,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:38:56,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:38:58,378.378 INFO    ] ================================================
[2026-06-13 20:38:58,393.393 INFO    ] Launching Daemon at Sat Jun 13 20:38:58 IST 2026
[2026-06-13 20:38:58,404.404 INFO    ] ================================================
[2026-06-13 20:38:58,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:38:58
[2026-06-13 20:38:59,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:38:59,197.197 INFO    ] Initializing speech engine...
[2026-06-13 20:38:59,205.205 INFO    ] 2026-06-13 20:38:59
[2026-06-13 20:38:59,424.424 INFO    ] 2026-06-13 20:38:59
[2026-06-13 20:38:59,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:38:59,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:38:59,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:38:59,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:38:59,862.862 INFO    ] time= 13/06/2026 20:38:59
[2026-06-13 20:38:59,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:38:59,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:38:59,986.986 INFO    ] No existing commands found in stream
[2026-06-13 20:39:04,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:39:05,000.000 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-13 20:39:06,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:39:06,473.473 INFO    ] Checking for system updates...
[2026-06-13 20:39:06,494.494 INFO    ] 200
[2026-06-13 20:39:06,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:06,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:06,528.528 INFO    ] No update needed
[2026-06-13 20:39:06,529.529 INFO    ] Checking for camera pi updates...
[2026-06-13 20:39:06,549.549 INFO    ] 200
[2026-06-13 20:39:06,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:06,575.575 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:39:06,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:06,618.618 INFO    ] No camera update needed
[2026-06-13 20:39:06,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:39:06,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:39:06,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:39:06,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:39:08,668.668 INFO    ] ================================================
[2026-06-13 20:39:08,683.683 INFO    ] Launching Daemon at Sat Jun 13 20:39:08 IST 2026
[2026-06-13 20:39:08,694.694 INFO    ] ================================================
[2026-06-13 20:39:09,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:39:09
[2026-06-13 20:39:09,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:39:09,474.474 INFO    ] Initializing speech engine...
[2026-06-13 20:39:09,479.479 INFO    ] 2026-06-13 20:39:09
[2026-06-13 20:39:09,705.705 INFO    ] 2026-06-13 20:39:09
[2026-06-13 20:39:09,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:39:09,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:39:09,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:39:10,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:39:10,125.125 INFO    ] time= 13/06/2026 20:39:10
[2026-06-13 20:39:10,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:39:10,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:39:10,256.256 INFO    ] No existing commands found in stream
[2026-06-13 20:39:15,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:39:15,270.270 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 20:39:15,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:39:15,949.949 INFO    ] Checking for system updates...
[2026-06-13 20:39:15,970.970 INFO    ] 200
[2026-06-13 20:39:15,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:16,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:39:16,003.003 INFO    ] No update needed
[2026-06-13 20:39:16,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 20:39:16,024.024 INFO    ] 200
[2026-06-13 20:39:16,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:16,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:39:16,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:16,190.190 INFO    ] No camera update needed
[2026-06-13 20:39:16,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:39:16,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:39:16,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:39:16,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:39:18,238.238 INFO    ] ================================================
[2026-06-13 20:39:18,253.253 INFO    ] Launching Daemon at Sat Jun 13 20:39:18 IST 2026
[2026-06-13 20:39:18,265.265 INFO    ] ================================================
[2026-06-13 20:39:18,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:39:18
[2026-06-13 20:39:19,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:39:19,574.574 INFO    ] Initializing speech engine...
[2026-06-13 20:39:19,581.581 INFO    ] 2026-06-13 20:39:19
[2026-06-13 20:39:19,842.842 INFO    ] 2026-06-13 20:39:19
[2026-06-13 20:39:19,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:39:20,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:39:20,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:39:20,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:39:20,308.308 INFO    ] time= 13/06/2026 20:39:20
[2026-06-13 20:39:20,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:39:20,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:39:20,515.515 INFO    ] No existing commands found in stream
[2026-06-13 20:39:25,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:39:25,548.548 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 20:39:29,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:39:29,223.223 INFO    ] Checking for system updates...
[2026-06-13 20:39:29,245.245 INFO    ] 200
[2026-06-13 20:39:29,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:29,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:29,278.278 INFO    ] No update needed
[2026-06-13 20:39:29,280.280 INFO    ] Checking for camera pi updates...
[2026-06-13 20:39:29,300.300 INFO    ] 200
[2026-06-13 20:39:29,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:29,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:39:29,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:29,367.367 INFO    ] No camera update needed
[2026-06-13 20:39:29,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:39:29,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:39:29,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:39:29,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:39:31,416.416 INFO    ] ================================================
[2026-06-13 20:39:31,432.432 INFO    ] Launching Daemon at Sat Jun 13 20:39:31 IST 2026
[2026-06-13 20:39:31,444.444 INFO    ] ================================================
[2026-06-13 20:39:31,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:39:31
[2026-06-13 20:39:32,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:39:32,362.362 INFO    ] Initializing speech engine...
[2026-06-13 20:39:32,367.367 INFO    ] 2026-06-13 20:39:32
[2026-06-13 20:39:32,575.575 INFO    ] 2026-06-13 20:39:32
[2026-06-13 20:39:32,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:39:32,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:39:32,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:39:32,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:39:32,980.980 INFO    ] time= 13/06/2026 20:39:32
[2026-06-13 20:39:33,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:39:33,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:39:33,091.091 INFO    ] No existing commands found in stream
[2026-06-13 20:39:38,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:39:38,103.103 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 20:39:41,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:39:41,553.553 INFO    ] Checking for system updates...
[2026-06-13 20:39:41,574.574 INFO    ] 200
[2026-06-13 20:39:41,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:41,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:39:41,607.607 INFO    ] No update needed
[2026-06-13 20:39:41,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 20:39:41,629.629 INFO    ] 200
[2026-06-13 20:39:41,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:41,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:39:41,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:41,692.692 INFO    ] No camera update needed
[2026-06-13 20:39:41,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:39:41,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:39:41,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:39:41,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:39:43,742.742 INFO    ] ================================================
[2026-06-13 20:39:43,757.757 INFO    ] Launching Daemon at Sat Jun 13 20:39:43 IST 2026
[2026-06-13 20:39:43,768.768 INFO    ] ================================================
[2026-06-13 20:39:44,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:39:44
[2026-06-13 20:39:44,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:39:44,602.602 INFO    ] Initializing speech engine...
[2026-06-13 20:39:44,607.607 INFO    ] 2026-06-13 20:39:44
[2026-06-13 20:39:44,813.813 INFO    ] 2026-06-13 20:39:44
[2026-06-13 20:39:44,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:39:45,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:39:45,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:39:45,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:39:45,218.218 INFO    ] time= 13/06/2026 20:39:45
[2026-06-13 20:39:45,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:39:45,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:39:45,352.352 INFO    ] No existing commands found in stream
[2026-06-13 20:39:50,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:39:50,370.370 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 20:39:54,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:39:54,337.337 INFO    ] Checking for system updates...
[2026-06-13 20:39:54,358.358 INFO    ] 200
[2026-06-13 20:39:54,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:54,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:54,392.392 INFO    ] No update needed
[2026-06-13 20:39:54,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 20:39:54,413.413 INFO    ] 200
[2026-06-13 20:39:54,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:39:54,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:39:54,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:39:54,489.489 INFO    ] No camera update needed
[2026-06-13 20:39:54,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:39:54,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:39:54,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:39:54,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:39:56,538.538 INFO    ] ================================================
[2026-06-13 20:39:56,553.553 INFO    ] Launching Daemon at Sat Jun 13 20:39:56 IST 2026
[2026-06-13 20:39:56,564.564 INFO    ] ================================================
[2026-06-13 20:39:56,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:39:56
[2026-06-13 20:39:57,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:39:57,365.365 INFO    ] Initializing speech engine...
[2026-06-13 20:39:57,376.376 INFO    ] 2026-06-13 20:39:57
[2026-06-13 20:39:57,615.615 INFO    ] 2026-06-13 20:39:57
[2026-06-13 20:39:57,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:39:57,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:39:57,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:39:58,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:39:58,091.091 INFO    ] time= 13/06/2026 20:39:58
[2026-06-13 20:39:58,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:39:58,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:39:58,213.213 INFO    ] No existing commands found in stream
[2026-06-13 20:40:03,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:40:03,242.242 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 20:40:08,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:40:08,744.744 INFO    ] Checking for system updates...
[2026-06-13 20:40:08,782.782 INFO    ] 200
[2026-06-13 20:40:08,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:08,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:08,847.847 INFO    ] No update needed
[2026-06-13 20:40:08,849.849 INFO    ] Checking for camera pi updates...
[2026-06-13 20:40:08,883.883 INFO    ] 200
[2026-06-13 20:40:08,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:08,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:40:08,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:08,975.975 INFO    ] No camera update needed
[2026-06-13 20:40:08,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:40:08,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:40:08,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:40:08,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:40:11,036.036 INFO    ] ================================================
[2026-06-13 20:40:11,051.051 INFO    ] Launching Daemon at Sat Jun 13 20:40:11 IST 2026
[2026-06-13 20:40:11,063.063 INFO    ] ================================================
[2026-06-13 20:40:11,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:40:11
[2026-06-13 20:40:11,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:40:11,929.929 INFO    ] Initializing speech engine...
[2026-06-13 20:40:11,934.934 INFO    ] 2026-06-13 20:40:11
[2026-06-13 20:40:12,145.145 INFO    ] 2026-06-13 20:40:12
[2026-06-13 20:40:12,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:40:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:40:12,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:40:12,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:40:12,573.573 INFO    ] time= 13/06/2026 20:40:12
[2026-06-13 20:40:12,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:40:12,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:40:12,672.672 INFO    ] No existing commands found in stream
[2026-06-13 20:40:17,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:40:17,691.691 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 20:40:20,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:40:20,626.626 INFO    ] Checking for system updates...
[2026-06-13 20:40:20,647.647 INFO    ] 200
[2026-06-13 20:40:20,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:20,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:20,684.684 INFO    ] No update needed
[2026-06-13 20:40:20,685.685 INFO    ] Checking for camera pi updates...
[2026-06-13 20:40:20,708.708 INFO    ] 200
[2026-06-13 20:40:20,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:20,733.733 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:40:20,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:20,775.775 INFO    ] No camera update needed
[2026-06-13 20:40:20,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:40:20,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:40:20,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:40:20,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:40:22,823.823 INFO    ] ================================================
[2026-06-13 20:40:22,841.841 INFO    ] Launching Daemon at Sat Jun 13 20:40:22 IST 2026
[2026-06-13 20:40:22,851.851 INFO    ] ================================================
[2026-06-13 20:40:23,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:40:23
[2026-06-13 20:40:23,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:40:23,726.726 INFO    ] Initializing speech engine...
[2026-06-13 20:40:23,732.732 INFO    ] 2026-06-13 20:40:23
[2026-06-13 20:40:23,938.938 INFO    ] 2026-06-13 20:40:23
[2026-06-13 20:40:23,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:40:24,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:40:24,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:40:24,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:40:24,358.358 INFO    ] time= 13/06/2026 20:40:24
[2026-06-13 20:40:24,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:40:24,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:40:24,455.455 INFO    ] No existing commands found in stream
[2026-06-13 20:40:29,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:40:29,472.472 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 20:40:31,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:40:31,773.773 INFO    ] Checking for system updates...
[2026-06-13 20:40:31,797.797 INFO    ] 200
[2026-06-13 20:40:31,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:31,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:40:31,842.842 INFO    ] No update needed
[2026-06-13 20:40:31,844.844 INFO    ] Checking for camera pi updates...
[2026-06-13 20:40:31,867.867 INFO    ] 200
[2026-06-13 20:40:31,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:31,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:40:31,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:40:31,953.953 INFO    ] No camera update needed
[2026-06-13 20:40:31,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:40:31,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:40:31,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:40:31,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:40:34,006.006 INFO    ] ================================================
[2026-06-13 20:40:34,021.021 INFO    ] Launching Daemon at Sat Jun 13 20:40:34 IST 2026
[2026-06-13 20:40:34,032.032 INFO    ] ================================================
[2026-06-13 20:40:34,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:40:34
[2026-06-13 20:40:34,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:40:34,852.852 INFO    ] Initializing speech engine...
[2026-06-13 20:40:34,860.860 INFO    ] 2026-06-13 20:40:34
[2026-06-13 20:40:35,074.074 INFO    ] 2026-06-13 20:40:35
[2026-06-13 20:40:35,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:40:35,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:40:35,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:40:35,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:40:35,452.452 INFO    ] time= 13/06/2026 20:40:35
[2026-06-13 20:40:35,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:40:35,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:40:35,655.655 INFO    ] No existing commands found in stream
[2026-06-13 20:40:40,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:40:40,667.667 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 20:40:44,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:40:44,586.586 INFO    ] Checking for system updates...
[2026-06-13 20:40:44,608.608 INFO    ] 200
[2026-06-13 20:40:44,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:44,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:44,642.642 INFO    ] No update needed
[2026-06-13 20:40:44,643.643 INFO    ] Checking for camera pi updates...
[2026-06-13 20:40:44,666.666 INFO    ] 200
[2026-06-13 20:40:44,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:44,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:40:44,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:40:44,733.733 INFO    ] No camera update needed
[2026-06-13 20:40:44,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:40:44,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:40:44,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:40:44,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:40:46,780.780 INFO    ] ================================================
[2026-06-13 20:40:46,796.796 INFO    ] Launching Daemon at Sat Jun 13 20:40:46 IST 2026
[2026-06-13 20:40:46,807.807 INFO    ] ================================================
[2026-06-13 20:40:47,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:40:47
[2026-06-13 20:40:47,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:40:47,596.596 INFO    ] Initializing speech engine...
[2026-06-13 20:40:47,611.611 INFO    ] 2026-06-13 20:40:47
[2026-06-13 20:40:47,820.820 INFO    ] 2026-06-13 20:40:47
[2026-06-13 20:40:47,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:40:48,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:40:48,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:40:48,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:40:48,247.247 INFO    ] time= 13/06/2026 20:40:48
[2026-06-13 20:40:48,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:40:48,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:40:48,444.444 INFO    ] No existing commands found in stream
[2026-06-13 20:40:53,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:40:53,462.462 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 20:40:55,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:40:55,518.518 INFO    ] Checking for system updates...
[2026-06-13 20:40:55,555.555 INFO    ] 200
[2026-06-13 20:40:55,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:55,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:40:55,616.616 INFO    ] No update needed
[2026-06-13 20:40:55,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 20:40:55,657.657 INFO    ] 200
[2026-06-13 20:40:55,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:40:55,685.685 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:40:55,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:40:55,727.727 INFO    ] No camera update needed
[2026-06-13 20:40:55,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:40:55,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:40:55,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:40:55,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:40:57,776.776 INFO    ] ================================================
[2026-06-13 20:40:57,791.791 INFO    ] Launching Daemon at Sat Jun 13 20:40:57 IST 2026
[2026-06-13 20:40:57,803.803 INFO    ] ================================================
[2026-06-13 20:40:58,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:40:58
[2026-06-13 20:40:58,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:40:58,609.609 INFO    ] Initializing speech engine...
[2026-06-13 20:40:58,619.619 INFO    ] 2026-06-13 20:40:58
[2026-06-13 20:40:58,825.825 INFO    ] 2026-06-13 20:40:58
[2026-06-13 20:40:58,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:40:59,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:40:59,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:40:59,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:40:59,235.235 INFO    ] time= 13/06/2026 20:40:59
[2026-06-13 20:40:59,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:40:59,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:40:59,349.349 INFO    ] No existing commands found in stream
[2026-06-13 20:41:04,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:41:04,361.361 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 20:41:07,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:41:07,917.917 INFO    ] Checking for system updates...
[2026-06-13 20:41:07,937.937 INFO    ] 200
[2026-06-13 20:41:07,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:07,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:07,973.973 INFO    ] No update needed
[2026-06-13 20:41:07,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 20:41:07,995.995 INFO    ] 200
[2026-06-13 20:41:07,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:08,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:41:08,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:08,072.072 INFO    ] No camera update needed
[2026-06-13 20:41:08,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:41:08,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:41:08,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:41:08,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:41:10,118.118 INFO    ] ================================================
[2026-06-13 20:41:10,133.133 INFO    ] Launching Daemon at Sat Jun 13 20:41:10 IST 2026
[2026-06-13 20:41:10,144.144 INFO    ] ================================================
[2026-06-13 20:41:10,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:41:10
[2026-06-13 20:41:11,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:41:11,336.336 INFO    ] Initializing speech engine...
[2026-06-13 20:41:11,345.345 INFO    ] 2026-06-13 20:41:11
[2026-06-13 20:41:11,593.593 INFO    ] 2026-06-13 20:41:11
[2026-06-13 20:41:11,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:41:11,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:41:11,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:41:12,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:41:12,045.045 INFO    ] time= 13/06/2026 20:41:12
[2026-06-13 20:41:12,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:41:12,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:41:12,229.229 INFO    ] No existing commands found in stream
[2026-06-13 20:41:17,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:41:17,244.244 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 20:41:21,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:41:21,027.027 INFO    ] Checking for system updates...
[2026-06-13 20:41:21,047.047 INFO    ] 200
[2026-06-13 20:41:21,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:21,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:21,081.081 INFO    ] No update needed
[2026-06-13 20:41:21,082.082 INFO    ] Checking for camera pi updates...
[2026-06-13 20:41:21,102.102 INFO    ] 200
[2026-06-13 20:41:21,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:21,127.127 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:41:21,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:21,271.271 INFO    ] No camera update needed
[2026-06-13 20:41:21,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:41:21,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:41:21,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:41:21,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:41:23,320.320 INFO    ] ================================================
[2026-06-13 20:41:23,335.335 INFO    ] Launching Daemon at Sat Jun 13 20:41:23 IST 2026
[2026-06-13 20:41:23,346.346 INFO    ] ================================================
[2026-06-13 20:41:23,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:41:23
[2026-06-13 20:41:24,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:41:24,159.159 INFO    ] Initializing speech engine...
[2026-06-13 20:41:24,164.164 INFO    ] 2026-06-13 20:41:24
[2026-06-13 20:41:24,369.369 INFO    ] 2026-06-13 20:41:24
[2026-06-13 20:41:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:41:24,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:41:24,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:41:24,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:41:24,780.780 INFO    ] time= 13/06/2026 20:41:24
[2026-06-13 20:41:24,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:41:24,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:41:24,883.883 INFO    ] No existing commands found in stream
[2026-06-13 20:41:29,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:41:29,896.896 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 20:41:32,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:41:32,509.509 INFO    ] Checking for system updates...
[2026-06-13 20:41:32,531.531 INFO    ] 200
[2026-06-13 20:41:32,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:32,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:32,564.564 INFO    ] No update needed
[2026-06-13 20:41:32,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 20:41:32,587.587 INFO    ] 200
[2026-06-13 20:41:32,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:32,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:41:32,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:41:32,637.637 INFO    ] No camera update needed
[2026-06-13 20:41:32,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:41:32,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:41:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:41:32,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:41:34,685.685 INFO    ] ================================================
[2026-06-13 20:41:34,701.701 INFO    ] Launching Daemon at Sat Jun 13 20:41:34 IST 2026
[2026-06-13 20:41:34,711.711 INFO    ] ================================================
[2026-06-13 20:41:35,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:41:35
[2026-06-13 20:41:35,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:41:35,514.514 INFO    ] Initializing speech engine...
[2026-06-13 20:41:35,522.522 INFO    ] 2026-06-13 20:41:35
[2026-06-13 20:41:35,729.729 INFO    ] 2026-06-13 20:41:35
[2026-06-13 20:41:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:41:35,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:41:35,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:41:36,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:41:36,138.138 INFO    ] time= 13/06/2026 20:41:36
[2026-06-13 20:41:36,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:41:36,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:41:36,250.250 INFO    ] No existing commands found in stream
[2026-06-13 20:41:41,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:41:41,262.262 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 20:41:44,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:41:44,152.152 INFO    ] Checking for system updates...
[2026-06-13 20:41:44,173.173 INFO    ] 200
[2026-06-13 20:41:44,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:44,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:41:44,207.207 INFO    ] No update needed
[2026-06-13 20:41:44,208.208 INFO    ] Checking for camera pi updates...
[2026-06-13 20:41:44,230.230 INFO    ] 200
[2026-06-13 20:41:44,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:44,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:41:44,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:41:44,297.297 INFO    ] No camera update needed
[2026-06-13 20:41:44,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:41:44,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:41:44,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:41:44,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:41:46,345.345 INFO    ] ================================================
[2026-06-13 20:41:46,360.360 INFO    ] Launching Daemon at Sat Jun 13 20:41:46 IST 2026
[2026-06-13 20:41:46,371.371 INFO    ] ================================================
[2026-06-13 20:41:47,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:41:47
[2026-06-13 20:41:47,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:41:47,670.670 INFO    ] Initializing speech engine...
[2026-06-13 20:41:47,675.675 INFO    ] 2026-06-13 20:41:47
[2026-06-13 20:41:47,881.881 INFO    ] 2026-06-13 20:41:47
[2026-06-13 20:41:47,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:41:48,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:41:48,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:41:48,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:41:48,286.286 INFO    ] time= 13/06/2026 20:41:48
[2026-06-13 20:41:48,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:41:48,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:41:48,397.397 INFO    ] No existing commands found in stream
[2026-06-13 20:41:53,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:41:53,409.409 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 20:41:56,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:41:56,290.290 INFO    ] Checking for system updates...
[2026-06-13 20:41:56,312.312 INFO    ] 200
[2026-06-13 20:41:56,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:56,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:41:56,349.349 INFO    ] No update needed
[2026-06-13 20:41:56,350.350 INFO    ] Checking for camera pi updates...
[2026-06-13 20:41:56,371.371 INFO    ] 200
[2026-06-13 20:41:56,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:41:56,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:41:56,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:41:56,446.446 INFO    ] No camera update needed
[2026-06-13 20:41:56,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:41:56,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:41:56,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:41:56,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:41:58,494.494 INFO    ] ================================================
[2026-06-13 20:41:58,509.509 INFO    ] Launching Daemon at Sat Jun 13 20:41:58 IST 2026
[2026-06-13 20:41:58,520.520 INFO    ] ================================================
[2026-06-13 20:41:58,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:41:58
[2026-06-13 20:41:59,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:41:59,340.340 INFO    ] Initializing speech engine...
[2026-06-13 20:41:59,345.345 INFO    ] 2026-06-13 20:41:59
[2026-06-13 20:41:59,552.552 INFO    ] 2026-06-13 20:41:59
[2026-06-13 20:41:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:41:59,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:41:59,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:41:59,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:41:59,944.944 INFO    ] time= 13/06/2026 20:41:59
[2026-06-13 20:41:59,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:41:59,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:00,070.070 INFO    ] No existing commands found in stream
[2026-06-13 20:42:05,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:42:05,093.093 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 20:42:08,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:42:08,126.126 INFO    ] Checking for system updates...
[2026-06-13 20:42:08,148.148 INFO    ] 200
[2026-06-13 20:42:08,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:08,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:08,181.181 INFO    ] No update needed
[2026-06-13 20:42:08,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 20:42:08,203.203 INFO    ] 200
[2026-06-13 20:42:08,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:08,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:42:08,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:08,264.264 INFO    ] No camera update needed
[2026-06-13 20:42:08,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:42:08,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:42:08,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:42:08,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:42:10,313.313 INFO    ] ================================================
[2026-06-13 20:42:10,328.328 INFO    ] Launching Daemon at Sat Jun 13 20:42:10 IST 2026
[2026-06-13 20:42:10,339.339 INFO    ] ================================================
[2026-06-13 20:42:10,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:42:10
[2026-06-13 20:42:11,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:42:11,212.212 INFO    ] Initializing speech engine...
[2026-06-13 20:42:11,217.217 INFO    ] 2026-06-13 20:42:11
[2026-06-13 20:42:11,423.423 INFO    ] 2026-06-13 20:42:11
[2026-06-13 20:42:11,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:42:11,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:42:11,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:42:11,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:42:11,840.840 INFO    ] time= 13/06/2026 20:42:11
[2026-06-13 20:42:11,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:42:11,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:11,940.940 INFO    ] No existing commands found in stream
[2026-06-13 20:42:16,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:42:16,954.954 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-13 20:42:18,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:42:18,494.494 INFO    ] Checking for system updates...
[2026-06-13 20:42:18,514.514 INFO    ] 200
[2026-06-13 20:42:18,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:18,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:42:18,551.551 INFO    ] No update needed
[2026-06-13 20:42:18,552.552 INFO    ] Checking for camera pi updates...
[2026-06-13 20:42:18,572.572 INFO    ] 200
[2026-06-13 20:42:18,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:18,598.598 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:42:18,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:42:18,641.641 INFO    ] No camera update needed
[2026-06-13 20:42:18,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:42:18,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:42:18,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:42:18,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:42:20,692.692 INFO    ] ================================================
[2026-06-13 20:42:20,714.714 INFO    ] Launching Daemon at Sat Jun 13 20:42:20 IST 2026
[2026-06-13 20:42:20,725.725 INFO    ] ================================================
[2026-06-13 20:42:21,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:42:21
[2026-06-13 20:42:21,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:42:21,574.574 INFO    ] Initializing speech engine...
[2026-06-13 20:42:21,580.580 INFO    ] 2026-06-13 20:42:21
[2026-06-13 20:42:21,787.787 INFO    ] 2026-06-13 20:42:21
[2026-06-13 20:42:21,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:42:22,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:42:22,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:42:22,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:42:22,205.205 INFO    ] time= 13/06/2026 20:42:22
[2026-06-13 20:42:22,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:42:22,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:22,300.300 INFO    ] No existing commands found in stream
[2026-06-13 20:42:27,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:42:27,314.314 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 20:42:28,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:42:28,885.885 INFO    ] Checking for system updates...
[2026-06-13 20:42:28,906.906 INFO    ] 200
[2026-06-13 20:42:28,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:28,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:42:28,942.942 INFO    ] No update needed
[2026-06-13 20:42:28,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 20:42:28,966.966 INFO    ] 200
[2026-06-13 20:42:28,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:28,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:42:29,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:42:29,040.040 INFO    ] No camera update needed
[2026-06-13 20:42:29,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:42:29,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:42:29,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:42:29,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:42:31,081.081 INFO    ] ================================================
[2026-06-13 20:42:31,096.096 INFO    ] Launching Daemon at Sat Jun 13 20:42:31 IST 2026
[2026-06-13 20:42:31,106.106 INFO    ] ================================================
[2026-06-13 20:42:31,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:42:31
[2026-06-13 20:42:31,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:42:31,873.873 INFO    ] Initializing speech engine...
[2026-06-13 20:42:31,886.886 INFO    ] 2026-06-13 20:42:31
[2026-06-13 20:42:32,085.085 INFO    ] 2026-06-13 20:42:32
[2026-06-13 20:42:32,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:42:32,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:42:32,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:42:32,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:42:32,565.565 INFO    ] time= 13/06/2026 20:42:32
[2026-06-13 20:42:32,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:42:32,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:32,734.734 INFO    ] No existing commands found in stream
[2026-06-13 20:42:37,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:42:37,747.747 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-13 20:42:39,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:42:39,310.310 INFO    ] Checking for system updates...
[2026-06-13 20:42:39,331.331 INFO    ] 200
[2026-06-13 20:42:39,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:39,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:39,365.365 INFO    ] No update needed
[2026-06-13 20:42:39,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 20:42:39,385.385 INFO    ] 200
[2026-06-13 20:42:39,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:39,412.412 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:42:39,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:39,457.457 INFO    ] No camera update needed
[2026-06-13 20:42:39,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:42:39,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:42:39,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:42:39,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:42:41,504.504 INFO    ] ================================================
[2026-06-13 20:42:41,520.520 INFO    ] Launching Daemon at Sat Jun 13 20:42:41 IST 2026
[2026-06-13 20:42:41,531.531 INFO    ] ================================================
[2026-06-13 20:42:41,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:42:41
[2026-06-13 20:42:42,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:42:42,405.405 INFO    ] Initializing speech engine...
[2026-06-13 20:42:42,411.411 INFO    ] 2026-06-13 20:42:42
[2026-06-13 20:42:42,623.623 INFO    ] 2026-06-13 20:42:42
[2026-06-13 20:42:42,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:42:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:42:42,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:42:42,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:42:43,042.042 INFO    ] time= 13/06/2026 20:42:42
[2026-06-13 20:42:43,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:42:43,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:43,144.144 INFO    ] No existing commands found in stream
[2026-06-13 20:42:48,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:42:48,162.162 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 20:42:51,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:42:51,566.566 INFO    ] Checking for system updates...
[2026-06-13 20:42:51,588.588 INFO    ] 200
[2026-06-13 20:42:51,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:51,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:51,622.622 INFO    ] No update needed
[2026-06-13 20:42:51,624.624 INFO    ] Checking for camera pi updates...
[2026-06-13 20:42:51,644.644 INFO    ] 200
[2026-06-13 20:42:51,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:42:51,670.670 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:42:51,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:42:51,708.708 INFO    ] No camera update needed
[2026-06-13 20:42:51,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:42:51,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:42:51,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:42:51,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:42:53,755.755 INFO    ] ================================================
[2026-06-13 20:42:53,770.770 INFO    ] Launching Daemon at Sat Jun 13 20:42:53 IST 2026
[2026-06-13 20:42:53,781.781 INFO    ] ================================================
[2026-06-13 20:42:54,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:42:54
[2026-06-13 20:42:54,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:42:54,562.562 INFO    ] Initializing speech engine...
[2026-06-13 20:42:54,574.574 INFO    ] 2026-06-13 20:42:54
[2026-06-13 20:42:54,778.778 INFO    ] 2026-06-13 20:42:54
[2026-06-13 20:42:54,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:42:54,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:42:55,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:42:55,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:42:55,184.184 INFO    ] time= 13/06/2026 20:42:55
[2026-06-13 20:42:55,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:42:55,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:42:55,295.295 INFO    ] No existing commands found in stream
[2026-06-13 20:43:00,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:00,307.307 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 20:43:03,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:43:03,407.407 INFO    ] Checking for system updates...
[2026-06-13 20:43:03,446.446 INFO    ] 200
[2026-06-13 20:43:03,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:03,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:03,505.505 INFO    ] No update needed
[2026-06-13 20:43:03,507.507 INFO    ] Checking for camera pi updates...
[2026-06-13 20:43:03,542.542 INFO    ] 200
[2026-06-13 20:43:03,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:03,585.585 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:43:03,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:03,631.631 INFO    ] No camera update needed
[2026-06-13 20:43:03,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:43:03,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:43:03,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:43:03,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:43:05,687.687 INFO    ] ================================================
[2026-06-13 20:43:05,703.703 INFO    ] Launching Daemon at Sat Jun 13 20:43:05 IST 2026
[2026-06-13 20:43:05,716.716 INFO    ] ================================================
[2026-06-13 20:43:06,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:43:06
[2026-06-13 20:43:06,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:43:06,543.543 INFO    ] Initializing speech engine...
[2026-06-13 20:43:06,548.548 INFO    ] 2026-06-13 20:43:06
[2026-06-13 20:43:06,749.749 INFO    ] 2026-06-13 20:43:06
[2026-06-13 20:43:06,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:43:06,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:43:06,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:43:07,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:43:07,153.153 INFO    ] time= 13/06/2026 20:43:07
[2026-06-13 20:43:07,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:43:07,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:43:07,261.261 INFO    ] No existing commands found in stream
[2026-06-13 20:43:12,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:12,274.274 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 20:43:15,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:43:15,649.649 INFO    ] Checking for system updates...
[2026-06-13 20:43:15,670.670 INFO    ] 200
[2026-06-13 20:43:15,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:15,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:43:15,703.703 INFO    ] No update needed
[2026-06-13 20:43:15,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 20:43:15,724.724 INFO    ] 200
[2026-06-13 20:43:15,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:15,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:43:15,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:43:15,788.788 INFO    ] No camera update needed
[2026-06-13 20:43:15,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:43:15,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:43:15,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:43:15,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:43:17,836.836 INFO    ] ================================================
[2026-06-13 20:43:17,851.851 INFO    ] Launching Daemon at Sat Jun 13 20:43:17 IST 2026
[2026-06-13 20:43:17,862.862 INFO    ] ================================================
[2026-06-13 20:43:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:43:18
[2026-06-13 20:43:18,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:43:18,689.689 INFO    ] Initializing speech engine...
[2026-06-13 20:43:18,695.695 INFO    ] 2026-06-13 20:43:18
[2026-06-13 20:43:18,897.897 INFO    ] 2026-06-13 20:43:18
[2026-06-13 20:43:18,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:43:19,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:43:19,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:43:19,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:43:19,300.300 INFO    ] time= 13/06/2026 20:43:19
[2026-06-13 20:43:19,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:43:19,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:43:19,409.409 INFO    ] No existing commands found in stream
[2026-06-13 20:43:24,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:24,421.421 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 20:43:28,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:43:28,625.625 INFO    ] Checking for system updates...
[2026-06-13 20:43:28,646.646 INFO    ] 200
[2026-06-13 20:43:28,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:28,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:28,679.679 INFO    ] No update needed
[2026-06-13 20:43:28,680.680 INFO    ] Checking for camera pi updates...
[2026-06-13 20:43:28,700.700 INFO    ] 200
[2026-06-13 20:43:28,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:28,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:43:28,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:28,864.864 INFO    ] No camera update needed
[2026-06-13 20:43:28,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:43:28,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:43:28,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:43:28,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:43:30,911.911 INFO    ] ================================================
[2026-06-13 20:43:30,926.926 INFO    ] Launching Daemon at Sat Jun 13 20:43:30 IST 2026
[2026-06-13 20:43:30,937.937 INFO    ] ================================================
[2026-06-13 20:43:31,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:43:31
[2026-06-13 20:43:31,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:43:31,737.737 INFO    ] Initializing speech engine...
[2026-06-13 20:43:31,739.739 INFO    ] 2026-06-13 20:43:31
[2026-06-13 20:43:31,941.941 INFO    ] 2026-06-13 20:43:31
[2026-06-13 20:43:31,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:43:32,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:43:32,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:43:32,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:43:32,256.256 INFO    ] time= 13/06/2026 20:43:32
[2026-06-13 20:43:32,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:43:32,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:43:32,365.365 INFO    ] No existing commands found in stream
[2026-06-13 20:43:37,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:37,398.398 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 20:43:41,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:43:41,335.335 INFO    ] Checking for system updates...
[2026-06-13 20:43:41,356.356 INFO    ] 200
[2026-06-13 20:43:41,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:41,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:41,391.391 INFO    ] No update needed
[2026-06-13 20:43:41,392.392 INFO    ] Checking for camera pi updates...
[2026-06-13 20:43:41,412.412 INFO    ] 200
[2026-06-13 20:43:41,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:41,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:43:41,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:41,487.487 INFO    ] No camera update needed
[2026-06-13 20:43:41,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:43:41,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:43:41,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:43:41,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:43:43,534.534 INFO    ] ================================================
[2026-06-13 20:43:43,550.550 INFO    ] Launching Daemon at Sat Jun 13 20:43:43 IST 2026
[2026-06-13 20:43:43,560.560 INFO    ] ================================================
[2026-06-13 20:43:43,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:43:43
[2026-06-13 20:43:44,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:43:44,434.434 INFO    ] Initializing speech engine...
[2026-06-13 20:43:44,440.440 INFO    ] 2026-06-13 20:43:44
[2026-06-13 20:43:44,649.649 INFO    ] 2026-06-13 20:43:44
[2026-06-13 20:43:44,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:43:44,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:43:44,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:43:44,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:43:45,060.060 INFO    ] time= 13/06/2026 20:43:45
[2026-06-13 20:43:45,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:43:45,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:43:45,165.165 INFO    ] No existing commands found in stream
[2026-06-13 20:43:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:50,180.180 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 20:43:50,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:43:50,940.940 INFO    ] Checking for system updates...
[2026-06-13 20:43:50,963.963 INFO    ] 200
[2026-06-13 20:43:50,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:50,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:50,996.996 INFO    ] No update needed
[2026-06-13 20:43:50,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 20:43:51,016.016 INFO    ] 200
[2026-06-13 20:43:51,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:43:51,043.043 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:43:51,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:43:51,084.084 INFO    ] No camera update needed
[2026-06-13 20:43:51,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:43:51,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:43:51,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:43:51,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:43:53,133.133 INFO    ] ================================================
[2026-06-13 20:43:53,149.149 INFO    ] Launching Daemon at Sat Jun 13 20:43:53 IST 2026
[2026-06-13 20:43:53,159.159 INFO    ] ================================================
[2026-06-13 20:43:53,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:43:53
[2026-06-13 20:43:53,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:43:53,978.978 INFO    ] Initializing speech engine...
[2026-06-13 20:43:53,984.984 INFO    ] 2026-06-13 20:43:53
[2026-06-13 20:43:54,190.190 INFO    ] 2026-06-13 20:43:54
[2026-06-13 20:43:54,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:43:54,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:43:54,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:43:54,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:43:54,608.608 INFO    ] time= 13/06/2026 20:43:54
[2026-06-13 20:43:54,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:43:54,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:43:54,709.709 INFO    ] No existing commands found in stream
[2026-06-13 20:43:59,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:43:59,722.722 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 20:44:03,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:44:03,030.030 INFO    ] Checking for system updates...
[2026-06-13 20:44:03,051.051 INFO    ] 200
[2026-06-13 20:44:03,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:03,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:03,084.084 INFO    ] No update needed
[2026-06-13 20:44:03,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:03,105.105 INFO    ] 200
[2026-06-13 20:44:03,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:03,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:03,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:03,169.169 INFO    ] No camera update needed
[2026-06-13 20:44:03,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:03,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:03,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:03,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:44:05,215.215 INFO    ] ================================================
[2026-06-13 20:44:05,231.231 INFO    ] Launching Daemon at Sat Jun 13 20:44:05 IST 2026
[2026-06-13 20:44:05,242.242 INFO    ] ================================================
[2026-06-13 20:44:05,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:44:05
[2026-06-13 20:44:05,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:44:06,105.105 INFO    ] Initializing speech engine...
[2026-06-13 20:44:06,111.111 INFO    ] 2026-06-13 20:44:06
[2026-06-13 20:44:06,319.319 INFO    ] 2026-06-13 20:44:06
[2026-06-13 20:44:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:44:06,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:44:06,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:44:06,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:44:06,748.748 INFO    ] time= 13/06/2026 20:44:06
[2026-06-13 20:44:06,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:44:06,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:44:06,846.846 INFO    ] No existing commands found in stream
[2026-06-13 20:44:11,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:44:11,860.860 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 20:44:15,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:44:15,671.671 INFO    ] Checking for system updates...
[2026-06-13 20:44:15,694.694 INFO    ] 200
[2026-06-13 20:44:15,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:15,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:15,728.728 INFO    ] No update needed
[2026-06-13 20:44:15,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:15,751.751 INFO    ] 200
[2026-06-13 20:44:15,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:15,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:15,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:15,819.819 INFO    ] No camera update needed
[2026-06-13 20:44:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:15,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:15,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:15,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:44:17,866.866 INFO    ] ================================================
[2026-06-13 20:44:17,881.881 INFO    ] Launching Daemon at Sat Jun 13 20:44:17 IST 2026
[2026-06-13 20:44:17,892.892 INFO    ] ================================================
[2026-06-13 20:44:18,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:44:18
[2026-06-13 20:44:18,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:44:18,684.684 INFO    ] Initializing speech engine...
[2026-06-13 20:44:18,689.689 INFO    ] 2026-06-13 20:44:18
[2026-06-13 20:44:18,917.917 INFO    ] 2026-06-13 20:44:18
[2026-06-13 20:44:18,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:44:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:44:19,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:44:19,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:44:19,352.352 INFO    ] time= 13/06/2026 20:44:19
[2026-06-13 20:44:19,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:44:19,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:44:19,467.467 INFO    ] No existing commands found in stream
[2026-06-13 20:44:24,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:44:24,480.480 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 20:44:26,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:44:26,290.290 INFO    ] Checking for system updates...
[2026-06-13 20:44:26,311.311 INFO    ] 200
[2026-06-13 20:44:26,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:26,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:44:26,346.346 INFO    ] No update needed
[2026-06-13 20:44:26,347.347 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:26,367.367 INFO    ] 200
[2026-06-13 20:44:26,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:26,392.392 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:26,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:44:26,437.437 INFO    ] No camera update needed
[2026-06-13 20:44:26,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:26,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:26,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:26,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:44:28,484.484 INFO    ] ================================================
[2026-06-13 20:44:28,499.499 INFO    ] Launching Daemon at Sat Jun 13 20:44:28 IST 2026
[2026-06-13 20:44:28,510.510 INFO    ] ================================================
[2026-06-13 20:44:28,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:44:28
[2026-06-13 20:44:29,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:44:29,312.312 INFO    ] Initializing speech engine...
[2026-06-13 20:44:29,324.324 INFO    ] 2026-06-13 20:44:29
[2026-06-13 20:44:29,545.545 INFO    ] 2026-06-13 20:44:29
[2026-06-13 20:44:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:44:29,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:44:29,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:44:29,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:44:29,961.961 INFO    ] time= 13/06/2026 20:44:29
[2026-06-13 20:44:29,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:44:30,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:44:30,096.096 INFO    ] No existing commands found in stream
[2026-06-13 20:44:35,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:44:35,110.110 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 20:44:36,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:44:36,500.500 INFO    ] Checking for system updates...
[2026-06-13 20:44:36,521.521 INFO    ] 200
[2026-06-13 20:44:36,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:36,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:44:36,554.554 INFO    ] No update needed
[2026-06-13 20:44:36,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:36,575.575 INFO    ] 200
[2026-06-13 20:44:36,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:36,600.600 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:36,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:44:36,642.642 INFO    ] No camera update needed
[2026-06-13 20:44:36,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:36,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:36,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:36,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:44:38,690.690 INFO    ] ================================================
[2026-06-13 20:44:38,712.712 INFO    ] Launching Daemon at Sat Jun 13 20:44:38 IST 2026
[2026-06-13 20:44:38,723.723 INFO    ] ================================================
[2026-06-13 20:44:39,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:44:39
[2026-06-13 20:44:39,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:44:39,521.521 INFO    ] Initializing speech engine...
[2026-06-13 20:44:39,529.529 INFO    ] 2026-06-13 20:44:39
[2026-06-13 20:44:39,741.741 INFO    ] 2026-06-13 20:44:39
[2026-06-13 20:44:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:44:39,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:44:39,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:44:40,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:44:40,141.141 INFO    ] time= 13/06/2026 20:44:40
[2026-06-13 20:44:40,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:44:40,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:44:40,256.256 INFO    ] No existing commands found in stream
[2026-06-13 20:44:45,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:44:45,270.270 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 20:44:47,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:44:47,522.522 INFO    ] Checking for system updates...
[2026-06-13 20:44:47,542.542 INFO    ] 200
[2026-06-13 20:44:47,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:47,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:47,577.577 INFO    ] No update needed
[2026-06-13 20:44:47,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:47,599.599 INFO    ] 200
[2026-06-13 20:44:47,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:47,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:47,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:47,665.665 INFO    ] No camera update needed
[2026-06-13 20:44:47,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:47,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:47,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:47,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:44:49,712.712 INFO    ] ================================================
[2026-06-13 20:44:49,728.728 INFO    ] Launching Daemon at Sat Jun 13 20:44:49 IST 2026
[2026-06-13 20:44:49,739.739 INFO    ] ================================================
[2026-06-13 20:44:50,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:44:50
[2026-06-13 20:44:50,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:44:50,567.567 INFO    ] Initializing speech engine...
[2026-06-13 20:44:50,582.582 INFO    ] 2026-06-13 20:44:50
[2026-06-13 20:44:50,789.789 INFO    ] 2026-06-13 20:44:50
[2026-06-13 20:44:50,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:44:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:44:51,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:44:51,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:44:51,203.203 INFO    ] time= 13/06/2026 20:44:51
[2026-06-13 20:44:51,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:44:51,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:44:51,308.308 INFO    ] No existing commands found in stream
[2026-06-13 20:44:56,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:44:56,322.322 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 20:44:58,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:44:58,406.406 INFO    ] Checking for system updates...
[2026-06-13 20:44:58,428.428 INFO    ] 200
[2026-06-13 20:44:58,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:58,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:58,463.463 INFO    ] No update needed
[2026-06-13 20:44:58,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 20:44:58,487.487 INFO    ] 200
[2026-06-13 20:44:58,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:44:58,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:44:58,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:44:58,573.573 INFO    ] No camera update needed
[2026-06-13 20:44:58,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:44:58,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:44:58,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:44:58,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:45:00,622.622 INFO    ] ================================================
[2026-06-13 20:45:00,637.637 INFO    ] Launching Daemon at Sat Jun 13 20:45:00 IST 2026
[2026-06-13 20:45:00,648.648 INFO    ] ================================================
[2026-06-13 20:45:00,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:45:00
[2026-06-13 20:45:01,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:45:01,485.485 INFO    ] Initializing speech engine...
[2026-06-13 20:45:01,491.491 INFO    ] 2026-06-13 20:45:01
[2026-06-13 20:45:01,700.700 INFO    ] 2026-06-13 20:45:01
[2026-06-13 20:45:01,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:45:01,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:45:01,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:45:02,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:45:02,094.094 INFO    ] time= 13/06/2026 20:45:02
[2026-06-13 20:45:02,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:45:02,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:45:02,287.287 INFO    ] No existing commands found in stream
[2026-06-13 20:45:07,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:45:07,302.302 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-13 20:45:08,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:45:08,097.097 INFO    ] Checking for system updates...
[2026-06-13 20:45:08,119.119 INFO    ] 200
[2026-06-13 20:45:08,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:08,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:08,154.154 INFO    ] No update needed
[2026-06-13 20:45:08,156.156 INFO    ] Checking for camera pi updates...
[2026-06-13 20:45:08,178.178 INFO    ] 200
[2026-06-13 20:45:08,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:08,204.204 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:45:08,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:45:08,246.246 INFO    ] No camera update needed
[2026-06-13 20:45:08,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:45:08,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:45:08,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:45:08,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:45:10,295.295 INFO    ] ================================================
[2026-06-13 20:45:10,310.310 INFO    ] Launching Daemon at Sat Jun 13 20:45:10 IST 2026
[2026-06-13 20:45:10,320.320 INFO    ] ================================================
[2026-06-13 20:45:10,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:45:10
[2026-06-13 20:45:10,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:45:11,097.097 INFO    ] Initializing speech engine...
[2026-06-13 20:45:11,102.102 INFO    ] 2026-06-13 20:45:11
[2026-06-13 20:45:11,305.305 INFO    ] 2026-06-13 20:45:11
[2026-06-13 20:45:11,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:45:11,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:45:11,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:45:11,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:45:11,718.718 INFO    ] time= 13/06/2026 20:45:11
[2026-06-13 20:45:11,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:45:11,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:45:11,853.853 INFO    ] No existing commands found in stream
[2026-06-13 20:45:16,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:45:16,865.865 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-13 20:45:20,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:45:20,861.861 INFO    ] Checking for system updates...
[2026-06-13 20:45:20,883.883 INFO    ] 200
[2026-06-13 20:45:20,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:20,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:20,918.918 INFO    ] No update needed
[2026-06-13 20:45:20,919.919 INFO    ] Checking for camera pi updates...
[2026-06-13 20:45:20,939.939 INFO    ] 200
[2026-06-13 20:45:20,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:20,965.965 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:45:20,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:21,000.000 INFO    ] No camera update needed
[2026-06-13 20:45:21,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:45:21,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:45:21,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:45:21,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:45:23,047.047 INFO    ] ================================================
[2026-06-13 20:45:23,062.062 INFO    ] Launching Daemon at Sat Jun 13 20:45:23 IST 2026
[2026-06-13 20:45:23,073.073 INFO    ] ================================================
[2026-06-13 20:45:23,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:45:23
[2026-06-13 20:45:23,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:45:23,880.880 INFO    ] Initializing speech engine...
[2026-06-13 20:45:23,885.885 INFO    ] 2026-06-13 20:45:23
[2026-06-13 20:45:24,112.112 INFO    ] 2026-06-13 20:45:24
[2026-06-13 20:45:24,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:45:24,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:45:24,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:45:24,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:45:24,541.541 INFO    ] time= 13/06/2026 20:45:24
[2026-06-13 20:45:24,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:45:24,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:45:24,660.660 INFO    ] No existing commands found in stream
[2026-06-13 20:45:29,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:45:29,674.674 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 20:45:33,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:45:33,785.785 INFO    ] Checking for system updates...
[2026-06-13 20:45:33,806.806 INFO    ] 200
[2026-06-13 20:45:33,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:33,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:33,839.839 INFO    ] No update needed
[2026-06-13 20:45:33,840.840 INFO    ] Checking for camera pi updates...
[2026-06-13 20:45:33,860.860 INFO    ] 200
[2026-06-13 20:45:33,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:33,884.884 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:45:33,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:33,935.935 INFO    ] No camera update needed
[2026-06-13 20:45:33,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:45:33,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:45:33,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:45:33,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:45:35,984.984 INFO    ] ================================================
[2026-06-13 20:45:36,999.999 INFO    ] Launching Daemon at Sat Jun 13 20:45:35 IST 2026
[2026-06-13 20:45:36,010.010 INFO    ] ================================================
[2026-06-13 20:45:36,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:45:36
[2026-06-13 20:45:36,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:45:36,805.805 INFO    ] Initializing speech engine...
[2026-06-13 20:45:36,808.808 INFO    ] 2026-06-13 20:45:36
[2026-06-13 20:45:37,033.033 INFO    ] 2026-06-13 20:45:37
[2026-06-13 20:45:37,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:45:37,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:45:37,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:45:37,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:45:37,457.457 INFO    ] time= 13/06/2026 20:45:37
[2026-06-13 20:45:37,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:45:37,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:45:37,576.576 INFO    ] No existing commands found in stream
[2026-06-13 20:45:42,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:45:42,590.590 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 20:45:47,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:45:47,344.344 INFO    ] Checking for system updates...
[2026-06-13 20:45:47,365.365 INFO    ] 200
[2026-06-13 20:45:47,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:47,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:47,416.416 INFO    ] No update needed
[2026-06-13 20:45:47,419.419 INFO    ] Checking for camera pi updates...
[2026-06-13 20:45:47,456.456 INFO    ] 200
[2026-06-13 20:45:47,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:47,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:45:47,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:45:47,545.545 INFO    ] No camera update needed
[2026-06-13 20:45:47,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:45:47,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:45:47,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:45:47,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:45:49,593.593 INFO    ] ================================================
[2026-06-13 20:45:49,608.608 INFO    ] Launching Daemon at Sat Jun 13 20:45:49 IST 2026
[2026-06-13 20:45:49,619.619 INFO    ] ================================================
[2026-06-13 20:45:49,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:45:49
[2026-06-13 20:45:50,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:45:50,479.479 INFO    ] Initializing speech engine...
[2026-06-13 20:45:50,489.489 INFO    ] 2026-06-13 20:45:50
[2026-06-13 20:45:50,695.695 INFO    ] 2026-06-13 20:45:50
[2026-06-13 20:45:50,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:45:50,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:45:50,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:45:51,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:45:51,091.091 INFO    ] time= 13/06/2026 20:45:51
[2026-06-13 20:45:51,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:45:51,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:45:51,212.212 INFO    ] No existing commands found in stream
[2026-06-13 20:45:56,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:45:56,224.224 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 20:45:58,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:45:58,842.842 INFO    ] Checking for system updates...
[2026-06-13 20:45:58,863.863 INFO    ] 200
[2026-06-13 20:45:58,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:58,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:45:58,896.896 INFO    ] No update needed
[2026-06-13 20:45:58,898.898 INFO    ] Checking for camera pi updates...
[2026-06-13 20:45:58,918.918 INFO    ] 200
[2026-06-13 20:45:58,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:45:58,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:45:58,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:45:58,984.984 INFO    ] No camera update needed
[2026-06-13 20:45:58,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:45:58,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:45:58,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:45:58,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:01,035.035 INFO    ] ================================================
[2026-06-13 20:46:01,050.050 INFO    ] Launching Daemon at Sat Jun 13 20:46:01 IST 2026
[2026-06-13 20:46:01,061.061 INFO    ] ================================================
[2026-06-13 20:46:01,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:01
[2026-06-13 20:46:01,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:01,967.967 INFO    ] Initializing speech engine...
[2026-06-13 20:46:01,971.971 INFO    ] 2026-06-13 20:46:01
[2026-06-13 20:46:02,208.208 INFO    ] 2026-06-13 20:46:02
[2026-06-13 20:46:02,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:02,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:02,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:02,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:02,717.717 INFO    ] time= 13/06/2026 20:46:02
[2026-06-13 20:46:02,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:02,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:46:02,807.807 INFO    ] No existing commands found in stream
[2026-06-13 20:46:07,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:46:07,822.822 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 20:46:11,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:46:11,526.526 INFO    ] Checking for system updates...
[2026-06-13 20:46:11,547.547 INFO    ] 200
[2026-06-13 20:46:11,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:11,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:46:11,581.581 INFO    ] No update needed
[2026-06-13 20:46:11,582.582 INFO    ] Checking for camera pi updates...
[2026-06-13 20:46:11,602.602 INFO    ] 200
[2026-06-13 20:46:11,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:11,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:46:11,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:46:11,676.676 INFO    ] No camera update needed
[2026-06-13 20:46:11,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:46:11,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:46:11,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:46:11,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:13,723.723 INFO    ] ================================================
[2026-06-13 20:46:13,738.738 INFO    ] Launching Daemon at Sat Jun 13 20:46:13 IST 2026
[2026-06-13 20:46:13,749.749 INFO    ] ================================================
[2026-06-13 20:46:14,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:14
[2026-06-13 20:46:14,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:15,153.153 INFO    ] Initializing speech engine...
[2026-06-13 20:46:15,176.176 INFO    ] 2026-06-13 20:46:15
[2026-06-13 20:46:15,431.431 INFO    ] 2026-06-13 20:46:15
[2026-06-13 20:46:15,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:15,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:15,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:15,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:15,777.777 INFO    ] time= 13/06/2026 20:46:15
[2026-06-13 20:46:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:15,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:46:15,874.874 INFO    ] No existing commands found in stream
[2026-06-13 20:46:20,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:46:20,912.912 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 20:46:22,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:46:22,946.946 INFO    ] Checking for system updates...
[2026-06-13 20:46:22,967.967 INFO    ] 200
[2026-06-13 20:46:22,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:22,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:46:23,000.000 INFO    ] No update needed
[2026-06-13 20:46:23,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 20:46:23,021.021 INFO    ] 200
[2026-06-13 20:46:23,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:23,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:46:23,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:46:23,092.092 INFO    ] No camera update needed
[2026-06-13 20:46:23,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:46:23,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:46:23,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:46:23,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:25,144.144 INFO    ] ================================================
[2026-06-13 20:46:25,160.160 INFO    ] Launching Daemon at Sat Jun 13 20:46:25 IST 2026
[2026-06-13 20:46:25,171.171 INFO    ] ================================================
[2026-06-13 20:46:25,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:25
[2026-06-13 20:46:25,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:25,990.990 INFO    ] Initializing speech engine...
[2026-06-13 20:46:25,996.996 INFO    ] 2026-06-13 20:46:25
[2026-06-13 20:46:26,198.198 INFO    ] 2026-06-13 20:46:26
[2026-06-13 20:46:26,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:26,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:26,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:26,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:26,613.613 INFO    ] time= 13/06/2026 20:46:26
[2026-06-13 20:46:26,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:26,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:46:26,713.713 INFO    ] No existing commands found in stream
[2026-06-13 20:46:31,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:46:31,724.724 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 20:46:32,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:46:32,362.362 INFO    ] Checking for system updates...
[2026-06-13 20:46:32,383.383 INFO    ] 200
[2026-06-13 20:46:32,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:32,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:46:32,416.416 INFO    ] No update needed
[2026-06-13 20:46:32,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 20:46:32,437.437 INFO    ] 200
[2026-06-13 20:46:32,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:32,461.461 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:46:32,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:46:32,485.485 INFO    ] No camera update needed
[2026-06-13 20:46:32,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:46:32,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:46:32,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:46:32,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:34,534.534 INFO    ] ================================================
[2026-06-13 20:46:34,549.549 INFO    ] Launching Daemon at Sat Jun 13 20:46:34 IST 2026
[2026-06-13 20:46:34,560.560 INFO    ] ================================================
[2026-06-13 20:46:34,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:34
[2026-06-13 20:46:35,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:35,366.366 INFO    ] Initializing speech engine...
[2026-06-13 20:46:35,378.378 INFO    ] 2026-06-13 20:46:35
[2026-06-13 20:46:35,585.585 INFO    ] 2026-06-13 20:46:35
[2026-06-13 20:46:35,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:35,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:35,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:35,991.991 INFO    ] time= 13/06/2026 20:46:35
[2026-06-13 20:46:36,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:36,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:46:36,219.219 INFO    ] No existing commands found in stream
[2026-06-13 20:46:41,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:46:41,234.234 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 20:46:44,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:46:44,353.353 INFO    ] Checking for system updates...
[2026-06-13 20:46:44,374.374 INFO    ] 200
[2026-06-13 20:46:44,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:44,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:46:44,412.412 INFO    ] No update needed
[2026-06-13 20:46:44,413.413 INFO    ] Checking for camera pi updates...
[2026-06-13 20:46:44,433.433 INFO    ] 200
[2026-06-13 20:46:44,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:44,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:46:44,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:46:44,507.507 INFO    ] No camera update needed
[2026-06-13 20:46:44,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:46:44,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:46:44,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:46:44,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:46,554.554 INFO    ] ================================================
[2026-06-13 20:46:46,569.569 INFO    ] Launching Daemon at Sat Jun 13 20:46:46 IST 2026
[2026-06-13 20:46:46,580.580 INFO    ] ================================================
[2026-06-13 20:46:46,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:46
[2026-06-13 20:46:47,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:47,397.397 INFO    ] Initializing speech engine...
[2026-06-13 20:46:47,401.401 INFO    ] 2026-06-13 20:46:47
[2026-06-13 20:46:47,630.630 INFO    ] 2026-06-13 20:46:47
[2026-06-13 20:46:47,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:47,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:47,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:48,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:48,070.070 INFO    ] time= 13/06/2026 20:46:48
[2026-06-13 20:46:48,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:48,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:46:48,189.189 INFO    ] No existing commands found in stream
[2026-06-13 20:46:53,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:46:53,203.203 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-13 20:46:55,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:46:55,861.861 INFO    ] Checking for system updates...
[2026-06-13 20:46:55,882.882 INFO    ] 200
[2026-06-13 20:46:55,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:55,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:46:55,916.916 INFO    ] No update needed
[2026-06-13 20:46:55,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 20:46:55,937.937 INFO    ] 200
[2026-06-13 20:46:55,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:46:55,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:46:56,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:46:56,007.007 INFO    ] No camera update needed
[2026-06-13 20:46:56,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:46:56,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:46:56,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:46:56,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:46:58,057.057 INFO    ] ================================================
[2026-06-13 20:46:58,072.072 INFO    ] Launching Daemon at Sat Jun 13 20:46:58 IST 2026
[2026-06-13 20:46:58,082.082 INFO    ] ================================================
[2026-06-13 20:46:58,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:46:58
[2026-06-13 20:46:59,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:46:59,289.289 INFO    ] Initializing speech engine...
[2026-06-13 20:46:59,307.307 INFO    ] 2026-06-13 20:46:59
[2026-06-13 20:46:59,560.560 INFO    ] 2026-06-13 20:46:59
[2026-06-13 20:46:59,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:46:59,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:46:59,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:46:59,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:46:59,902.902 INFO    ] time= 13/06/2026 20:46:59
[2026-06-13 20:46:59,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:46:59,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:00,017.017 INFO    ] No existing commands found in stream
[2026-06-13 20:47:05,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:47:05,032.032 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-13 20:47:08,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:47:08,312.312 INFO    ] Checking for system updates...
[2026-06-13 20:47:08,333.333 INFO    ] 200
[2026-06-13 20:47:08,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:08,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:08,368.368 INFO    ] No update needed
[2026-06-13 20:47:08,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 20:47:08,389.389 INFO    ] 200
[2026-06-13 20:47:08,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:08,416.416 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:47:08,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:08,463.463 INFO    ] No camera update needed
[2026-06-13 20:47:08,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:47:08,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:47:08,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:47:08,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:47:10,512.512 INFO    ] ================================================
[2026-06-13 20:47:10,527.527 INFO    ] Launching Daemon at Sat Jun 13 20:47:10 IST 2026
[2026-06-13 20:47:10,537.537 INFO    ] ================================================
[2026-06-13 20:47:10,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:47:10
[2026-06-13 20:47:11,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:47:11,337.337 INFO    ] Initializing speech engine...
[2026-06-13 20:47:11,343.343 INFO    ] 2026-06-13 20:47:11
[2026-06-13 20:47:11,548.548 INFO    ] 2026-06-13 20:47:11
[2026-06-13 20:47:11,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:47:11,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:47:11,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:47:11,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:47:11,963.963 INFO    ] time= 13/06/2026 20:47:11
[2026-06-13 20:47:11,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:47:11,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:12,063.063 INFO    ] No existing commands found in stream
[2026-06-13 20:47:17,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:47:17,075.075 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 20:47:18,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:47:18,502.502 INFO    ] Checking for system updates...
[2026-06-13 20:47:18,544.544 INFO    ] 200
[2026-06-13 20:47:18,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:18,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:18,595.595 INFO    ] No update needed
[2026-06-13 20:47:18,597.597 INFO    ] Checking for camera pi updates...
[2026-06-13 20:47:18,618.618 INFO    ] 200
[2026-06-13 20:47:18,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:18,646.646 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:47:18,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:18,682.682 INFO    ] No camera update needed
[2026-06-13 20:47:18,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:47:18,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:47:18,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:47:18,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:47:20,732.732 INFO    ] ================================================
[2026-06-13 20:47:20,747.747 INFO    ] Launching Daemon at Sat Jun 13 20:47:20 IST 2026
[2026-06-13 20:47:20,758.758 INFO    ] ================================================
[2026-06-13 20:47:21,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:47:21
[2026-06-13 20:47:21,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:47:21,648.648 INFO    ] Initializing speech engine...
[2026-06-13 20:47:21,654.654 INFO    ] 2026-06-13 20:47:21
[2026-06-13 20:47:21,864.864 INFO    ] 2026-06-13 20:47:21
[2026-06-13 20:47:21,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:47:22,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:47:22,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:47:22,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:47:22,267.267 INFO    ] time= 13/06/2026 20:47:22
[2026-06-13 20:47:22,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:47:22,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:22,390.390 INFO    ] No existing commands found in stream
[2026-06-13 20:47:27,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:47:27,403.403 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 20:47:31,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:47:31,308.308 INFO    ] Checking for system updates...
[2026-06-13 20:47:31,331.331 INFO    ] 200
[2026-06-13 20:47:31,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:31,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:47:31,364.364 INFO    ] No update needed
[2026-06-13 20:47:31,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 20:47:31,385.385 INFO    ] 200
[2026-06-13 20:47:31,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:31,410.410 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:47:31,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:47:31,455.455 INFO    ] No camera update needed
[2026-06-13 20:47:31,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:47:31,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:47:31,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:47:31,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:47:33,503.503 INFO    ] ================================================
[2026-06-13 20:47:33,519.519 INFO    ] Launching Daemon at Sat Jun 13 20:47:33 IST 2026
[2026-06-13 20:47:33,530.530 INFO    ] ================================================
[2026-06-13 20:47:34,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:47:34
[2026-06-13 20:47:34,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:47:34,983.983 INFO    ] Initializing speech engine...
[2026-06-13 20:47:34,990.990 INFO    ] 2026-06-13 20:47:34
[2026-06-13 20:47:35,286.286 INFO    ] 2026-06-13 20:47:35
[2026-06-13 20:47:35,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:47:35,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:47:35,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:47:35,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:47:35,643.643 INFO    ] time= 13/06/2026 20:47:35
[2026-06-13 20:47:35,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:47:35,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:35,778.778 INFO    ] No existing commands found in stream
[2026-06-13 20:47:40,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:47:40,791.791 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 20:47:41,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:47:41,810.810 INFO    ] Checking for system updates...
[2026-06-13 20:47:41,831.831 INFO    ] 200
[2026-06-13 20:47:41,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:41,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:41,866.866 INFO    ] No update needed
[2026-06-13 20:47:41,868.868 INFO    ] Checking for camera pi updates...
[2026-06-13 20:47:41,888.888 INFO    ] 200
[2026-06-13 20:47:41,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:41,913.913 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:47:42,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:42,053.053 INFO    ] No camera update needed
[2026-06-13 20:47:42,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:47:42,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:47:42,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:47:42,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:47:44,102.102 INFO    ] ================================================
[2026-06-13 20:47:44,117.117 INFO    ] Launching Daemon at Sat Jun 13 20:47:44 IST 2026
[2026-06-13 20:47:44,128.128 INFO    ] ================================================
[2026-06-13 20:47:44,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:47:44
[2026-06-13 20:47:44,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:47:44,908.908 INFO    ] Initializing speech engine...
[2026-06-13 20:47:44,916.916 INFO    ] 2026-06-13 20:47:44
[2026-06-13 20:47:45,135.135 INFO    ] 2026-06-13 20:47:45
[2026-06-13 20:47:45,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:47:45,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:47:45,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:47:45,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:47:45,538.538 INFO    ] time= 13/06/2026 20:47:45
[2026-06-13 20:47:45,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:47:45,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:45,705.705 INFO    ] No existing commands found in stream
[2026-06-13 20:47:50,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:47:50,719.719 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 20:47:52,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:47:52,534.534 INFO    ] Checking for system updates...
[2026-06-13 20:47:52,555.555 INFO    ] 200
[2026-06-13 20:47:52,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:52,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:52,591.591 INFO    ] No update needed
[2026-06-13 20:47:52,592.592 INFO    ] Checking for camera pi updates...
[2026-06-13 20:47:52,611.611 INFO    ] 200
[2026-06-13 20:47:52,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:47:52,640.640 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:47:52,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:47:52,681.681 INFO    ] No camera update needed
[2026-06-13 20:47:52,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:47:52,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:47:52,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:47:52,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:47:54,730.730 INFO    ] ================================================
[2026-06-13 20:47:54,746.746 INFO    ] Launching Daemon at Sat Jun 13 20:47:54 IST 2026
[2026-06-13 20:47:54,758.758 INFO    ] ================================================
[2026-06-13 20:47:55,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:47:55
[2026-06-13 20:47:55,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:47:55,561.561 INFO    ] Initializing speech engine...
[2026-06-13 20:47:55,566.566 INFO    ] 2026-06-13 20:47:55
[2026-06-13 20:47:55,770.770 INFO    ] 2026-06-13 20:47:55
[2026-06-13 20:47:55,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:47:55,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:47:55,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:47:56,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:47:56,180.180 INFO    ] time= 13/06/2026 20:47:56
[2026-06-13 20:47:56,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:47:56,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:47:56,286.286 INFO    ] No existing commands found in stream
[2026-06-13 20:48:01,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:01,303.303 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 20:48:02,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:48:02,547.547 INFO    ] Checking for system updates...
[2026-06-13 20:48:02,568.568 INFO    ] 200
[2026-06-13 20:48:02,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:02,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:48:02,601.601 INFO    ] No update needed
[2026-06-13 20:48:02,602.602 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:02,622.622 INFO    ] 200
[2026-06-13 20:48:02,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:02,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:02,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:48:02,691.691 INFO    ] No camera update needed
[2026-06-13 20:48:02,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:02,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:02,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:02,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:04,746.746 INFO    ] ================================================
[2026-06-13 20:48:04,761.761 INFO    ] Launching Daemon at Sat Jun 13 20:48:04 IST 2026
[2026-06-13 20:48:04,772.772 INFO    ] ================================================
[2026-06-13 20:48:05,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:05
[2026-06-13 20:48:05,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:05,594.594 INFO    ] Initializing speech engine...
[2026-06-13 20:48:05,604.604 INFO    ] 2026-06-13 20:48:05
[2026-06-13 20:48:05,809.809 INFO    ] 2026-06-13 20:48:05
[2026-06-13 20:48:05,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:06,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:06,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:06,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:06,211.211 INFO    ] time= 13/06/2026 20:48:06
[2026-06-13 20:48:06,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:06,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:06,333.333 INFO    ] No existing commands found in stream
[2026-06-13 20:48:11,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:11,345.345 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 20:48:12,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:48:12,647.647 INFO    ] Checking for system updates...
[2026-06-13 20:48:12,667.667 INFO    ] 200
[2026-06-13 20:48:12,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:12,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:12,701.701 INFO    ] No update needed
[2026-06-13 20:48:12,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:12,721.721 INFO    ] 200
[2026-06-13 20:48:12,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:12,749.749 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:12,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:12,793.793 INFO    ] No camera update needed
[2026-06-13 20:48:12,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:12,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:12,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:12,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:14,832.832 INFO    ] ================================================
[2026-06-13 20:48:14,841.841 INFO    ] Launching Daemon at Sat Jun 13 20:48:14 IST 2026
[2026-06-13 20:48:14,846.846 INFO    ] ================================================
[2026-06-13 20:48:15,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:15
[2026-06-13 20:48:15,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:15,646.646 INFO    ] Initializing speech engine...
[2026-06-13 20:48:15,656.656 INFO    ] 2026-06-13 20:48:15
[2026-06-13 20:48:15,863.863 INFO    ] 2026-06-13 20:48:15
[2026-06-13 20:48:15,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:16,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:16,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:16,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:16,258.258 INFO    ] time= 13/06/2026 20:48:16
[2026-06-13 20:48:16,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:16,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:16,388.388 INFO    ] No existing commands found in stream
[2026-06-13 20:48:21,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:21,401.401 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-13 20:48:24,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:48:24,002.002 INFO    ] Checking for system updates...
[2026-06-13 20:48:24,023.023 INFO    ] 200
[2026-06-13 20:48:24,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:24,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:48:24,057.057 INFO    ] No update needed
[2026-06-13 20:48:24,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:24,078.078 INFO    ] 200
[2026-06-13 20:48:24,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:24,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:24,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:48:24,143.143 INFO    ] No camera update needed
[2026-06-13 20:48:24,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:24,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:24,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:24,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:26,189.189 INFO    ] ================================================
[2026-06-13 20:48:26,204.204 INFO    ] Launching Daemon at Sat Jun 13 20:48:26 IST 2026
[2026-06-13 20:48:26,215.215 INFO    ] ================================================
[2026-06-13 20:48:26,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:26
[2026-06-13 20:48:26,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:27,060.060 INFO    ] Initializing speech engine...
[2026-06-13 20:48:27,063.063 INFO    ] 2026-06-13 20:48:27
[2026-06-13 20:48:27,274.274 INFO    ] 2026-06-13 20:48:27
[2026-06-13 20:48:27,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:27,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:27,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:27,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:27,709.709 INFO    ] time= 13/06/2026 20:48:27
[2026-06-13 20:48:27,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:27,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:27,850.850 INFO    ] No existing commands found in stream
[2026-06-13 20:48:32,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:32,863.863 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 20:48:33,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:48:33,613.613 INFO    ] Checking for system updates...
[2026-06-13 20:48:33,634.634 INFO    ] 200
[2026-06-13 20:48:33,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:33,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:33,667.667 INFO    ] No update needed
[2026-06-13 20:48:33,669.669 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:33,689.689 INFO    ] 200
[2026-06-13 20:48:33,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:33,714.714 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:33,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:33,761.761 INFO    ] No camera update needed
[2026-06-13 20:48:33,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:33,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:33,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:33,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:35,815.815 INFO    ] ================================================
[2026-06-13 20:48:35,830.830 INFO    ] Launching Daemon at Sat Jun 13 20:48:35 IST 2026
[2026-06-13 20:48:35,840.840 INFO    ] ================================================
[2026-06-13 20:48:36,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:36
[2026-06-13 20:48:36,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:36,621.621 INFO    ] Initializing speech engine...
[2026-06-13 20:48:36,631.631 INFO    ] 2026-06-13 20:48:36
[2026-06-13 20:48:36,839.839 INFO    ] 2026-06-13 20:48:36
[2026-06-13 20:48:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:37,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:37,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:37,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:37,231.231 INFO    ] time= 13/06/2026 20:48:37
[2026-06-13 20:48:37,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:37,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:37,372.372 INFO    ] No existing commands found in stream
[2026-06-13 20:48:42,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:42,386.386 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 20:48:46,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:48:46,288.288 INFO    ] Checking for system updates...
[2026-06-13 20:48:46,310.310 INFO    ] 200
[2026-06-13 20:48:46,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:46,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:46,343.343 INFO    ] No update needed
[2026-06-13 20:48:46,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:46,365.365 INFO    ] 200
[2026-06-13 20:48:46,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:46,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:46,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:46,443.443 INFO    ] No camera update needed
[2026-06-13 20:48:46,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:46,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:46,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:46,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:48,492.492 INFO    ] ================================================
[2026-06-13 20:48:48,507.507 INFO    ] Launching Daemon at Sat Jun 13 20:48:48 IST 2026
[2026-06-13 20:48:48,517.517 INFO    ] ================================================
[2026-06-13 20:48:48,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:48
[2026-06-13 20:48:49,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:49,353.353 INFO    ] Initializing speech engine...
[2026-06-13 20:48:49,359.359 INFO    ] 2026-06-13 20:48:49
[2026-06-13 20:48:49,565.565 INFO    ] 2026-06-13 20:48:49
[2026-06-13 20:48:49,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:49,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:49,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:49,970.970 INFO    ] time= 13/06/2026 20:48:49
[2026-06-13 20:48:49,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:50,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:50,080.080 INFO    ] No existing commands found in stream
[2026-06-13 20:48:55,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:48:55,098.098 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 20:48:55,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:48:55,565.565 INFO    ] Checking for system updates...
[2026-06-13 20:48:55,585.585 INFO    ] 200
[2026-06-13 20:48:55,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:55,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:55,619.619 INFO    ] No update needed
[2026-06-13 20:48:55,620.620 INFO    ] Checking for camera pi updates...
[2026-06-13 20:48:55,640.640 INFO    ] 200
[2026-06-13 20:48:55,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:48:55,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:48:55,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:48:55,703.703 INFO    ] No camera update needed
[2026-06-13 20:48:55,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:48:55,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:48:55,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:48:55,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:48:57,750.750 INFO    ] ================================================
[2026-06-13 20:48:57,765.765 INFO    ] Launching Daemon at Sat Jun 13 20:48:57 IST 2026
[2026-06-13 20:48:57,775.775 INFO    ] ================================================
[2026-06-13 20:48:58,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:48:58
[2026-06-13 20:48:58,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:48:58,621.621 INFO    ] Initializing speech engine...
[2026-06-13 20:48:58,625.625 INFO    ] 2026-06-13 20:48:58
[2026-06-13 20:48:58,832.832 INFO    ] 2026-06-13 20:48:58
[2026-06-13 20:48:58,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:48:59,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:48:59,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:48:59,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:48:59,239.239 INFO    ] time= 13/06/2026 20:48:59
[2026-06-13 20:48:59,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:48:59,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:48:59,350.350 INFO    ] No existing commands found in stream
[2026-06-13 20:49:04,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:49:04,368.368 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 20:49:06,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:49:06,969.969 INFO    ] Checking for system updates...
[2026-06-13 20:49:06,990.990 INFO    ] 200
[2026-06-13 20:49:06,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:07,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:07,023.023 INFO    ] No update needed
[2026-06-13 20:49:07,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 20:49:07,044.044 INFO    ] 200
[2026-06-13 20:49:07,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:07,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:49:07,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:07,106.106 INFO    ] No camera update needed
[2026-06-13 20:49:07,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:49:07,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:49:07,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:49:07,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:49:09,152.152 INFO    ] ================================================
[2026-06-13 20:49:09,168.168 INFO    ] Launching Daemon at Sat Jun 13 20:49:09 IST 2026
[2026-06-13 20:49:09,179.179 INFO    ] ================================================
[2026-06-13 20:49:09,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:49:09
[2026-06-13 20:49:09,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:49:09,995.995 INFO    ] Initializing speech engine...
[2026-06-13 20:49:10,000.000 INFO    ] 2026-06-13 20:49:09
[2026-06-13 20:49:10,203.203 INFO    ] 2026-06-13 20:49:10
[2026-06-13 20:49:10,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:49:10,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:49:10,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:49:10,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:49:10,602.602 INFO    ] time= 13/06/2026 20:49:10
[2026-06-13 20:49:10,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:49:10,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:49:10,723.723 INFO    ] No existing commands found in stream
[2026-06-13 20:49:15,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:49:15,735.735 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 20:49:21,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:49:21,078.078 INFO    ] Checking for system updates...
[2026-06-13 20:49:21,115.115 INFO    ] 200
[2026-06-13 20:49:21,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:21,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:21,181.181 INFO    ] No update needed
[2026-06-13 20:49:21,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 20:49:21,218.218 INFO    ] 200
[2026-06-13 20:49:21,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:21,248.248 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:49:21,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:49:21,282.282 INFO    ] No camera update needed
[2026-06-13 20:49:21,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:49:21,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:49:21,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:49:21,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:49:23,333.333 INFO    ] ================================================
[2026-06-13 20:49:23,349.349 INFO    ] Launching Daemon at Sat Jun 13 20:49:23 IST 2026
[2026-06-13 20:49:23,359.359 INFO    ] ================================================
[2026-06-13 20:49:23,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:49:23
[2026-06-13 20:49:23,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:49:24,131.131 INFO    ] Initializing speech engine...
[2026-06-13 20:49:24,144.144 INFO    ] 2026-06-13 20:49:24
[2026-06-13 20:49:24,365.365 INFO    ] 2026-06-13 20:49:24
[2026-06-13 20:49:24,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:49:24,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:49:24,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:49:24,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:49:24,723.723 INFO    ] time= 13/06/2026 20:49:24
[2026-06-13 20:49:24,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:49:24,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:49:24,955.955 INFO    ] No existing commands found in stream
[2026-06-13 20:49:29,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:49:29,976.976 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 20:49:33,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:49:33,198.198 INFO    ] Checking for system updates...
[2026-06-13 20:49:33,220.220 INFO    ] 200
[2026-06-13 20:49:33,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:33,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:33,256.256 INFO    ] No update needed
[2026-06-13 20:49:33,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 20:49:33,280.280 INFO    ] 200
[2026-06-13 20:49:33,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:33,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:49:33,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:33,338.338 INFO    ] No camera update needed
[2026-06-13 20:49:33,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:49:33,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:49:33,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:49:33,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:49:35,384.384 INFO    ] ================================================
[2026-06-13 20:49:35,400.400 INFO    ] Launching Daemon at Sat Jun 13 20:49:35 IST 2026
[2026-06-13 20:49:35,412.412 INFO    ] ================================================
[2026-06-13 20:49:36,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:49:36
[2026-06-13 20:49:36,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:49:36,940.940 INFO    ] Initializing speech engine...
[2026-06-13 20:49:36,956.956 INFO    ] 2026-06-13 20:49:36
[2026-06-13 20:49:37,263.263 INFO    ] 2026-06-13 20:49:37
[2026-06-13 20:49:37,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:49:37,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:49:37,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:49:37,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:49:37,648.648 INFO    ] time= 13/06/2026 20:49:37
[2026-06-13 20:49:37,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:49:37,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:49:37,717.717 INFO    ] No existing commands found in stream
[2026-06-13 20:49:42,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:49:42,743.743 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 20:49:44,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:49:44,976.976 INFO    ] Checking for system updates...
[2026-06-13 20:49:44,998.998 INFO    ] 200
[2026-06-13 20:49:45,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:45,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:49:45,032.032 INFO    ] No update needed
[2026-06-13 20:49:45,034.034 INFO    ] Checking for camera pi updates...
[2026-06-13 20:49:45,055.055 INFO    ] 200
[2026-06-13 20:49:45,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:45,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:49:45,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:49:45,229.229 INFO    ] No camera update needed
[2026-06-13 20:49:45,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:49:45,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:49:45,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:49:45,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:49:47,278.278 INFO    ] ================================================
[2026-06-13 20:49:47,293.293 INFO    ] Launching Daemon at Sat Jun 13 20:49:47 IST 2026
[2026-06-13 20:49:47,305.305 INFO    ] ================================================
[2026-06-13 20:49:47,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:49:47
[2026-06-13 20:49:47,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:49:48,093.093 INFO    ] Initializing speech engine...
[2026-06-13 20:49:48,103.103 INFO    ] 2026-06-13 20:49:48
[2026-06-13 20:49:48,308.308 INFO    ] 2026-06-13 20:49:48
[2026-06-13 20:49:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:49:48,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:49:48,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:49:48,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:49:48,709.709 INFO    ] time= 13/06/2026 20:49:48
[2026-06-13 20:49:48,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:49:48,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:49:48,825.825 INFO    ] No existing commands found in stream
[2026-06-13 20:49:53,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:49:53,837.837 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 20:49:55,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:49:55,779.779 INFO    ] Checking for system updates...
[2026-06-13 20:49:55,801.801 INFO    ] 200
[2026-06-13 20:49:55,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:55,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:55,834.834 INFO    ] No update needed
[2026-06-13 20:49:55,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 20:49:55,855.855 INFO    ] 200
[2026-06-13 20:49:55,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:49:55,881.881 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:49:55,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:49:55,927.927 INFO    ] No camera update needed
[2026-06-13 20:49:55,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:49:55,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:49:55,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:49:55,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:49:57,975.975 INFO    ] ================================================
[2026-06-13 20:49:57,991.991 INFO    ] Launching Daemon at Sat Jun 13 20:49:57 IST 2026
[2026-06-13 20:49:58,003.003 INFO    ] ================================================
[2026-06-13 20:49:58,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:49:58
[2026-06-13 20:49:59,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:49:59,392.392 INFO    ] Initializing speech engine...
[2026-06-13 20:49:59,402.402 INFO    ] 2026-06-13 20:49:59
[2026-06-13 20:49:59,682.682 INFO    ] 2026-06-13 20:49:59
[2026-06-13 20:49:59,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:49:59,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:49:59,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:00,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:00,049.049 INFO    ] time= 13/06/2026 20:50:00
[2026-06-13 20:50:00,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:00,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:00,153.153 INFO    ] No existing commands found in stream
[2026-06-13 20:50:05,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:50:05,181.181 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 20:50:08,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:50:08,123.123 INFO    ] Checking for system updates...
[2026-06-13 20:50:08,160.160 INFO    ] 200
[2026-06-13 20:50:08,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:08,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:08,219.219 INFO    ] No update needed
[2026-06-13 20:50:08,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 20:50:08,256.256 INFO    ] 200
[2026-06-13 20:50:08,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:08,306.306 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:50:08,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:08,339.339 INFO    ] No camera update needed
[2026-06-13 20:50:08,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:50:08,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:50:08,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:50:08,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:50:10,395.395 INFO    ] ================================================
[2026-06-13 20:50:10,411.411 INFO    ] Launching Daemon at Sat Jun 13 20:50:10 IST 2026
[2026-06-13 20:50:10,422.422 INFO    ] ================================================
[2026-06-13 20:50:10,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:50:10
[2026-06-13 20:50:11,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:50:11,205.205 INFO    ] Initializing speech engine...
[2026-06-13 20:50:11,218.218 INFO    ] 2026-06-13 20:50:11
[2026-06-13 20:50:11,439.439 INFO    ] 2026-06-13 20:50:11
[2026-06-13 20:50:11,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:50:11,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:50:11,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:11,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:11,870.870 INFO    ] time= 13/06/2026 20:50:11
[2026-06-13 20:50:11,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:11,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:12,004.004 INFO    ] No existing commands found in stream
[2026-06-13 20:50:17,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:50:17,018.018 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-13 20:50:18,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:50:18,374.374 INFO    ] Checking for system updates...
[2026-06-13 20:50:18,396.396 INFO    ] 200
[2026-06-13 20:50:18,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:18,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:50:18,433.433 INFO    ] No update needed
[2026-06-13 20:50:18,434.434 INFO    ] Checking for camera pi updates...
[2026-06-13 20:50:18,455.455 INFO    ] 200
[2026-06-13 20:50:18,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:18,481.481 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:50:18,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:50:18,520.520 INFO    ] No camera update needed
[2026-06-13 20:50:18,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:50:18,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:50:18,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:50:18,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:50:20,568.568 INFO    ] ================================================
[2026-06-13 20:50:20,583.583 INFO    ] Launching Daemon at Sat Jun 13 20:50:20 IST 2026
[2026-06-13 20:50:20,594.594 INFO    ] ================================================
[2026-06-13 20:50:20,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:50:20
[2026-06-13 20:50:21,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:50:21,386.386 INFO    ] Initializing speech engine...
[2026-06-13 20:50:21,399.399 INFO    ] 2026-06-13 20:50:21
[2026-06-13 20:50:21,605.605 INFO    ] 2026-06-13 20:50:21
[2026-06-13 20:50:21,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:50:21,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:50:21,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:21,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:22,030.030 INFO    ] time= 13/06/2026 20:50:21
[2026-06-13 20:50:22,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:22,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:22,129.129 INFO    ] No existing commands found in stream
[2026-06-13 20:50:27,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:50:27,152.152 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 20:50:29,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:50:29,150.150 INFO    ] Checking for system updates...
[2026-06-13 20:50:29,171.171 INFO    ] 200
[2026-06-13 20:50:29,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:29,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:29,206.206 INFO    ] No update needed
[2026-06-13 20:50:29,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 20:50:29,228.228 INFO    ] 200
[2026-06-13 20:50:29,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:29,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:50:29,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:29,293.293 INFO    ] No camera update needed
[2026-06-13 20:50:29,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:50:29,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:50:29,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:50:29,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:50:31,344.344 INFO    ] ================================================
[2026-06-13 20:50:31,359.359 INFO    ] Launching Daemon at Sat Jun 13 20:50:31 IST 2026
[2026-06-13 20:50:31,369.369 INFO    ] ================================================
[2026-06-13 20:50:31,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:50:31
[2026-06-13 20:50:32,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:50:32,676.676 INFO    ] Initializing speech engine...
[2026-06-13 20:50:32,693.693 INFO    ] 2026-06-13 20:50:32
[2026-06-13 20:50:32,979.979 INFO    ] 2026-06-13 20:50:32
[2026-06-13 20:50:33,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:50:33,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:50:33,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:33,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:33,447.447 INFO    ] time= 13/06/2026 20:50:33
[2026-06-13 20:50:33,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:33,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:33,615.615 INFO    ] No existing commands found in stream
[2026-06-13 20:50:38,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:50:38,632.632 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-13 20:50:39,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:50:39,006.006 INFO    ] Checking for system updates...
[2026-06-13 20:50:39,027.027 INFO    ] 200
[2026-06-13 20:50:39,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:39,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:39,061.061 INFO    ] No update needed
[2026-06-13 20:50:39,063.063 INFO    ] Checking for camera pi updates...
[2026-06-13 20:50:39,082.082 INFO    ] 200
[2026-06-13 20:50:39,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:39,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:50:39,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:39,145.145 INFO    ] No camera update needed
[2026-06-13 20:50:39,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:50:39,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:50:39,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:50:39,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:50:41,192.192 INFO    ] ================================================
[2026-06-13 20:50:41,208.208 INFO    ] Launching Daemon at Sat Jun 13 20:50:41 IST 2026
[2026-06-13 20:50:41,219.219 INFO    ] ================================================
[2026-06-13 20:50:41,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:50:41
[2026-06-13 20:50:41,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:50:42,026.026 INFO    ] Initializing speech engine...
[2026-06-13 20:50:42,031.031 INFO    ] 2026-06-13 20:50:42
[2026-06-13 20:50:42,235.235 INFO    ] 2026-06-13 20:50:42
[2026-06-13 20:50:42,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:50:42,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:50:42,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:42,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:42,680.680 INFO    ] time= 13/06/2026 20:50:42
[2026-06-13 20:50:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:42,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:42,831.831 INFO    ] No existing commands found in stream
[2026-06-13 20:50:47,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:50:47,844.844 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 20:50:51,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:50:51,651.651 INFO    ] Checking for system updates...
[2026-06-13 20:50:51,671.671 INFO    ] 200
[2026-06-13 20:50:51,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:51,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:51,708.708 INFO    ] No update needed
[2026-06-13 20:50:51,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 20:50:51,730.730 INFO    ] 200
[2026-06-13 20:50:51,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:50:51,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:50:51,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:50:51,812.812 INFO    ] No camera update needed
[2026-06-13 20:50:51,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:50:51,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:50:51,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:50:51,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:50:53,860.860 INFO    ] ================================================
[2026-06-13 20:50:53,876.876 INFO    ] Launching Daemon at Sat Jun 13 20:50:53 IST 2026
[2026-06-13 20:50:53,886.886 INFO    ] ================================================
[2026-06-13 20:50:54,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:50:54
[2026-06-13 20:50:54,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:50:55,192.192 INFO    ] Initializing speech engine...
[2026-06-13 20:50:55,199.199 INFO    ] 2026-06-13 20:50:55
[2026-06-13 20:50:55,481.481 INFO    ] 2026-06-13 20:50:55
[2026-06-13 20:50:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:50:55,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:50:55,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:50:55,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:50:55,853.853 INFO    ] time= 13/06/2026 20:50:55
[2026-06-13 20:50:55,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:50:55,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:50:55,965.965 INFO    ] No existing commands found in stream
[2026-06-13 20:51:00,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:00,997.997 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 20:51:02,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:51:02,992.992 INFO    ] Checking for system updates...
[2026-06-13 20:51:03,013.013 INFO    ] 200
[2026-06-13 20:51:03,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:03,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:51:03,045.045 INFO    ] No update needed
[2026-06-13 20:51:03,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 20:51:03,067.067 INFO    ] 200
[2026-06-13 20:51:03,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:03,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:51:03,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:51:03,132.132 INFO    ] No camera update needed
[2026-06-13 20:51:03,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:51:03,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:51:03,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:51:03,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:51:05,181.181 INFO    ] ================================================
[2026-06-13 20:51:05,196.196 INFO    ] Launching Daemon at Sat Jun 13 20:51:05 IST 2026
[2026-06-13 20:51:05,207.207 INFO    ] ================================================
[2026-06-13 20:51:05,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:51:05
[2026-06-13 20:51:06,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:51:06,596.596 INFO    ] Initializing speech engine...
[2026-06-13 20:51:06,603.603 INFO    ] 2026-06-13 20:51:06
[2026-06-13 20:51:06,866.866 INFO    ] 2026-06-13 20:51:06
[2026-06-13 20:51:06,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:51:07,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:51:07,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:51:07,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:51:07,328.328 INFO    ] time= 13/06/2026 20:51:07
[2026-06-13 20:51:07,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:51:07,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:51:07,489.489 INFO    ] No existing commands found in stream
[2026-06-13 20:51:12,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:12,529.529 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 20:51:14,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:51:14,570.570 INFO    ] Checking for system updates...
[2026-06-13 20:51:14,591.591 INFO    ] 200
[2026-06-13 20:51:14,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:14,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:14,629.629 INFO    ] No update needed
[2026-06-13 20:51:14,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 20:51:14,650.650 INFO    ] 200
[2026-06-13 20:51:14,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:14,679.679 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:51:14,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:14,720.720 INFO    ] No camera update needed
[2026-06-13 20:51:14,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:51:14,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:51:14,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:51:14,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:51:16,772.772 INFO    ] ================================================
[2026-06-13 20:51:16,789.789 INFO    ] Launching Daemon at Sat Jun 13 20:51:16 IST 2026
[2026-06-13 20:51:16,800.800 INFO    ] ================================================
[2026-06-13 20:51:17,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:51:17
[2026-06-13 20:51:17,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:51:17,601.601 INFO    ] Initializing speech engine...
[2026-06-13 20:51:17,607.607 INFO    ] 2026-06-13 20:51:17
[2026-06-13 20:51:17,812.812 INFO    ] 2026-06-13 20:51:17
[2026-06-13 20:51:17,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:51:18,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:51:18,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:51:18,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:51:18,231.231 INFO    ] time= 13/06/2026 20:51:18
[2026-06-13 20:51:18,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:51:18,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:51:18,329.329 INFO    ] No existing commands found in stream
[2026-06-13 20:51:23,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:23,341.341 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 20:51:25,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:51:25,509.509 INFO    ] Checking for system updates...
[2026-06-13 20:51:25,531.531 INFO    ] 200
[2026-06-13 20:51:25,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:25,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:25,566.566 INFO    ] No update needed
[2026-06-13 20:51:25,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 20:51:25,589.589 INFO    ] 200
[2026-06-13 20:51:25,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:25,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:51:25,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:25,660.660 INFO    ] No camera update needed
[2026-06-13 20:51:25,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:51:25,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:51:25,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:51:25,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:51:27,709.709 INFO    ] ================================================
[2026-06-13 20:51:27,724.724 INFO    ] Launching Daemon at Sat Jun 13 20:51:27 IST 2026
[2026-06-13 20:51:27,735.735 INFO    ] ================================================
[2026-06-13 20:51:28,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:51:28
[2026-06-13 20:51:28,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:51:28,994.994 INFO    ] Initializing speech engine...
[2026-06-13 20:51:29,000.000 INFO    ] 2026-06-13 20:51:28
[2026-06-13 20:51:29,249.249 INFO    ] 2026-06-13 20:51:29
[2026-06-13 20:51:29,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:51:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:51:29,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:51:29,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:51:29,582.582 INFO    ] time= 13/06/2026 20:51:29
[2026-06-13 20:51:29,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:51:29,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:51:29,695.695 INFO    ] No existing commands found in stream
[2026-06-13 20:51:34,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:34,723.723 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 20:51:37,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:51:37,314.314 INFO    ] Checking for system updates...
[2026-06-13 20:51:37,335.335 INFO    ] 200
[2026-06-13 20:51:37,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:37,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:37,369.369 INFO    ] No update needed
[2026-06-13 20:51:37,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 20:51:37,390.390 INFO    ] 200
[2026-06-13 20:51:37,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:37,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:51:37,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:37,453.453 INFO    ] No camera update needed
[2026-06-13 20:51:37,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:51:37,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:51:37,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:51:37,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:51:39,500.500 INFO    ] ================================================
[2026-06-13 20:51:39,516.516 INFO    ] Launching Daemon at Sat Jun 13 20:51:39 IST 2026
[2026-06-13 20:51:39,527.527 INFO    ] ================================================
[2026-06-13 20:51:39,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:51:39
[2026-06-13 20:51:40,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:51:40,342.342 INFO    ] Initializing speech engine...
[2026-06-13 20:51:40,350.350 INFO    ] 2026-06-13 20:51:40
[2026-06-13 20:51:40,560.560 INFO    ] 2026-06-13 20:51:40
[2026-06-13 20:51:40,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:51:40,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:51:40,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:51:40,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:51:40,965.965 INFO    ] time= 13/06/2026 20:51:40
[2026-06-13 20:51:41,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:51:41,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:51:41,082.082 INFO    ] No existing commands found in stream
[2026-06-13 20:51:46,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:46,095.095 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 20:51:49,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:51:49,165.165 INFO    ] Checking for system updates...
[2026-06-13 20:51:49,187.187 INFO    ] 200
[2026-06-13 20:51:49,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:49,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:51:49,220.220 INFO    ] No update needed
[2026-06-13 20:51:49,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 20:51:49,243.243 INFO    ] 200
[2026-06-13 20:51:49,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:51:49,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:51:49,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:51:49,416.416 INFO    ] No camera update needed
[2026-06-13 20:51:49,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:51:49,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:51:49,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:51:49,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:51:51,467.467 INFO    ] ================================================
[2026-06-13 20:51:51,483.483 INFO    ] Launching Daemon at Sat Jun 13 20:51:51 IST 2026
[2026-06-13 20:51:51,494.494 INFO    ] ================================================
[2026-06-13 20:51:51,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:51:51
[2026-06-13 20:51:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:51:52,363.363 INFO    ] Initializing speech engine...
[2026-06-13 20:51:52,370.370 INFO    ] 2026-06-13 20:51:52
[2026-06-13 20:51:52,647.647 INFO    ] 2026-06-13 20:51:52
[2026-06-13 20:51:52,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:51:52,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:51:52,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:51:53,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:51:53,111.111 INFO    ] time= 13/06/2026 20:51:53
[2026-06-13 20:51:53,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:51:53,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:51:53,267.267 INFO    ] No existing commands found in stream
[2026-06-13 20:51:58,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:51:58,282.282 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-13 20:52:00,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:52:00,100.100 INFO    ] Checking for system updates...
[2026-06-13 20:52:00,122.122 INFO    ] 200
[2026-06-13 20:52:00,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:00,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:00,157.157 INFO    ] No update needed
[2026-06-13 20:52:00,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:00,181.181 INFO    ] 200
[2026-06-13 20:52:00,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:00,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:00,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:00,249.249 INFO    ] No camera update needed
[2026-06-13 20:52:00,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:00,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:00,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:00,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:02,292.292 INFO    ] ================================================
[2026-06-13 20:52:02,304.304 INFO    ] Launching Daemon at Sat Jun 13 20:52:02 IST 2026
[2026-06-13 20:52:02,314.314 INFO    ] ================================================
[2026-06-13 20:52:02,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:02
[2026-06-13 20:52:03,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:03,222.222 INFO    ] Initializing speech engine...
[2026-06-13 20:52:03,228.228 INFO    ] 2026-06-13 20:52:03
[2026-06-13 20:52:03,436.436 INFO    ] 2026-06-13 20:52:03
[2026-06-13 20:52:03,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:03,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:03,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:03,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:03,840.840 INFO    ] time= 13/06/2026 20:52:03
[2026-06-13 20:52:03,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:03,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:03,956.956 INFO    ] No existing commands found in stream
[2026-06-13 20:52:08,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:52:08,971.971 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 20:52:11,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:52:11,746.746 INFO    ] Checking for system updates...
[2026-06-13 20:52:11,768.768 INFO    ] 200
[2026-06-13 20:52:11,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:11,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:52:11,802.802 INFO    ] No update needed
[2026-06-13 20:52:11,803.803 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:11,825.825 INFO    ] 200
[2026-06-13 20:52:11,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:11,852.852 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:11,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:52:11,901.901 INFO    ] No camera update needed
[2026-06-13 20:52:11,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:11,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:11,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:11,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:13,950.950 INFO    ] ================================================
[2026-06-13 20:52:13,966.966 INFO    ] Launching Daemon at Sat Jun 13 20:52:13 IST 2026
[2026-06-13 20:52:13,977.977 INFO    ] ================================================
[2026-06-13 20:52:14,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:14
[2026-06-13 20:52:14,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:14,796.796 INFO    ] Initializing speech engine...
[2026-06-13 20:52:14,801.801 INFO    ] 2026-06-13 20:52:14
[2026-06-13 20:52:15,008.008 INFO    ] 2026-06-13 20:52:14
[2026-06-13 20:52:15,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:15,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:15,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:15,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:15,413.413 INFO    ] time= 13/06/2026 20:52:15
[2026-06-13 20:52:15,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:15,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:15,529.529 INFO    ] No existing commands found in stream
[2026-06-13 20:52:20,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:52:20,543.543 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 20:52:21,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:52:21,604.604 INFO    ] Checking for system updates...
[2026-06-13 20:52:21,625.625 INFO    ] 200
[2026-06-13 20:52:21,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:21,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:21,663.663 INFO    ] No update needed
[2026-06-13 20:52:21,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:21,685.685 INFO    ] 200
[2026-06-13 20:52:21,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:21,710.710 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:21,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:21,744.744 INFO    ] No camera update needed
[2026-06-13 20:52:21,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:21,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:21,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:21,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:23,793.793 INFO    ] ================================================
[2026-06-13 20:52:23,809.809 INFO    ] Launching Daemon at Sat Jun 13 20:52:23 IST 2026
[2026-06-13 20:52:23,820.820 INFO    ] ================================================
[2026-06-13 20:52:24,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:24
[2026-06-13 20:52:24,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:24,652.652 INFO    ] Initializing speech engine...
[2026-06-13 20:52:24,655.655 INFO    ] 2026-06-13 20:52:24
[2026-06-13 20:52:24,873.873 INFO    ] 2026-06-13 20:52:24
[2026-06-13 20:52:24,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:25,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:25,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:25,249.249 INFO    ] time= 13/06/2026 20:52:25
[2026-06-13 20:52:25,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:25,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:25,401.401 INFO    ] No existing commands found in stream
[2026-06-13 20:52:30,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:52:30,413.413 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 20:52:30,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:52:30,927.927 INFO    ] Checking for system updates...
[2026-06-13 20:52:30,949.949 INFO    ] 200
[2026-06-13 20:52:30,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:30,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:30,982.982 INFO    ] No update needed
[2026-06-13 20:52:30,983.983 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:31,002.002 INFO    ] 200
[2026-06-13 20:52:31,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:31,027.027 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:31,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:31,074.074 INFO    ] No camera update needed
[2026-06-13 20:52:31,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:31,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:31,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:31,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:33,124.124 INFO    ] ================================================
[2026-06-13 20:52:33,139.139 INFO    ] Launching Daemon at Sat Jun 13 20:52:33 IST 2026
[2026-06-13 20:52:33,151.151 INFO    ] ================================================
[2026-06-13 20:52:33,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:33
[2026-06-13 20:52:33,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:33,991.991 INFO    ] Initializing speech engine...
[2026-06-13 20:52:34,004.004 INFO    ] 2026-06-13 20:52:33
[2026-06-13 20:52:34,211.211 INFO    ] 2026-06-13 20:52:34
[2026-06-13 20:52:34,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:34,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:34,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:34,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:34,476.476 INFO    ] time= 13/06/2026 20:52:34
[2026-06-13 20:52:34,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:34,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:34,561.561 INFO    ] No existing commands found in stream
[2026-06-13 20:52:39,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:52:39,594.594 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 20:52:43,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:52:43,870.870 INFO    ] Checking for system updates...
[2026-06-13 20:52:43,891.891 INFO    ] 200
[2026-06-13 20:52:43,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:43,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:52:43,927.927 INFO    ] No update needed
[2026-06-13 20:52:43,928.928 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:43,947.947 INFO    ] 200
[2026-06-13 20:52:43,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:43,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:44,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:52:44,016.016 INFO    ] No camera update needed
[2026-06-13 20:52:44,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:44,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:44,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:44,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:46,064.064 INFO    ] ================================================
[2026-06-13 20:52:46,079.079 INFO    ] Launching Daemon at Sat Jun 13 20:52:46 IST 2026
[2026-06-13 20:52:46,090.090 INFO    ] ================================================
[2026-06-13 20:52:46,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:46
[2026-06-13 20:52:47,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:47,322.322 INFO    ] Initializing speech engine...
[2026-06-13 20:52:47,330.330 INFO    ] 2026-06-13 20:52:47
[2026-06-13 20:52:47,628.628 INFO    ] 2026-06-13 20:52:47
[2026-06-13 20:52:47,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:47,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:47,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:47,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:47,990.990 INFO    ] time= 13/06/2026 20:52:47
[2026-06-13 20:52:47,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:47,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:48,066.066 INFO    ] No existing commands found in stream
[2026-06-13 20:52:53,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:52:53,081.081 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 20:52:55,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:52:55,021.021 INFO    ] Checking for system updates...
[2026-06-13 20:52:55,041.041 INFO    ] 200
[2026-06-13 20:52:55,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:55,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:52:55,078.078 INFO    ] No update needed
[2026-06-13 20:52:55,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 20:52:55,101.101 INFO    ] 200
[2026-06-13 20:52:55,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:52:55,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:52:55,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:52:55,172.172 INFO    ] No camera update needed
[2026-06-13 20:52:55,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:52:55,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:52:55,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:52:55,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:52:57,220.220 INFO    ] ================================================
[2026-06-13 20:52:57,235.235 INFO    ] Launching Daemon at Sat Jun 13 20:52:57 IST 2026
[2026-06-13 20:52:57,246.246 INFO    ] ================================================
[2026-06-13 20:52:57,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:52:57
[2026-06-13 20:52:58,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:52:58,468.468 INFO    ] Initializing speech engine...
[2026-06-13 20:52:58,482.482 INFO    ] 2026-06-13 20:52:58
[2026-06-13 20:52:58,770.770 INFO    ] 2026-06-13 20:52:58
[2026-06-13 20:52:58,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:52:58,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:52:58,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:52:59,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:52:59,130.130 INFO    ] time= 13/06/2026 20:52:59
[2026-06-13 20:52:59,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:52:59,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:52:59,208.208 INFO    ] No existing commands found in stream
[2026-06-13 20:53:04,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:04,224.224 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 20:53:05,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:53:05,491.491 INFO    ] Checking for system updates...
[2026-06-13 20:53:05,511.511 INFO    ] 200
[2026-06-13 20:53:05,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:05,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:05,545.545 INFO    ] No update needed
[2026-06-13 20:53:05,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 20:53:05,568.568 INFO    ] 200
[2026-06-13 20:53:05,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:05,593.593 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:53:05,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:05,642.642 INFO    ] No camera update needed
[2026-06-13 20:53:05,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:53:05,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:53:05,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:53:05,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:53:07,688.688 INFO    ] ================================================
[2026-06-13 20:53:07,704.704 INFO    ] Launching Daemon at Sat Jun 13 20:53:07 IST 2026
[2026-06-13 20:53:07,714.714 INFO    ] ================================================
[2026-06-13 20:53:08,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:53:08
[2026-06-13 20:53:08,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:53:08,533.533 INFO    ] Initializing speech engine...
[2026-06-13 20:53:08,543.543 INFO    ] 2026-06-13 20:53:08
[2026-06-13 20:53:08,750.750 INFO    ] 2026-06-13 20:53:08
[2026-06-13 20:53:08,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:53:08,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:53:08,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:53:09,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:53:09,092.092 INFO    ] time= 13/06/2026 20:53:09
[2026-06-13 20:53:09,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:53:09,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:53:09,249.249 INFO    ] No existing commands found in stream
[2026-06-13 20:53:14,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:14,282.282 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 20:53:15,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:53:15,040.040 INFO    ] Checking for system updates...
[2026-06-13 20:53:15,063.063 INFO    ] 200
[2026-06-13 20:53:15,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:15,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:15,096.096 INFO    ] No update needed
[2026-06-13 20:53:15,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 20:53:15,119.119 INFO    ] 200
[2026-06-13 20:53:15,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:15,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:53:15,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:15,188.188 INFO    ] No camera update needed
[2026-06-13 20:53:15,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:53:15,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:53:15,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:53:15,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:53:17,237.237 INFO    ] ================================================
[2026-06-13 20:53:17,252.252 INFO    ] Launching Daemon at Sat Jun 13 20:53:17 IST 2026
[2026-06-13 20:53:17,262.262 INFO    ] ================================================
[2026-06-13 20:53:17,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:53:17
[2026-06-13 20:53:17,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:53:18,067.067 INFO    ] Initializing speech engine...
[2026-06-13 20:53:18,073.073 INFO    ] 2026-06-13 20:53:18
[2026-06-13 20:53:18,262.262 INFO    ] 2026-06-13 20:53:18
[2026-06-13 20:53:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:53:18,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:53:18,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:53:18,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:53:18,666.666 INFO    ] time= 13/06/2026 20:53:18
[2026-06-13 20:53:18,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:53:18,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:53:18,851.851 INFO    ] No existing commands found in stream
[2026-06-13 20:53:23,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:23,865.865 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 20:53:26,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:53:26,117.117 INFO    ] Checking for system updates...
[2026-06-13 20:53:26,139.139 INFO    ] 200
[2026-06-13 20:53:26,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:26,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:53:26,180.180 INFO    ] No update needed
[2026-06-13 20:53:26,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 20:53:26,201.201 INFO    ] 200
[2026-06-13 20:53:26,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:26,229.229 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:53:26,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:53:26,270.270 INFO    ] No camera update needed
[2026-06-13 20:53:26,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:53:26,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:53:26,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:53:26,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:53:28,319.319 INFO    ] ================================================
[2026-06-13 20:53:28,334.334 INFO    ] Launching Daemon at Sat Jun 13 20:53:28 IST 2026
[2026-06-13 20:53:28,345.345 INFO    ] ================================================
[2026-06-13 20:53:28,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:53:28
[2026-06-13 20:53:29,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:53:29,160.160 INFO    ] Initializing speech engine...
[2026-06-13 20:53:29,170.170 INFO    ] 2026-06-13 20:53:29
[2026-06-13 20:53:29,374.374 INFO    ] 2026-06-13 20:53:29
[2026-06-13 20:53:29,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:53:29,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:53:29,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:53:29,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:53:29,779.779 INFO    ] time= 13/06/2026 20:53:29
[2026-06-13 20:53:29,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:53:29,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:53:29,889.889 INFO    ] No existing commands found in stream
[2026-06-13 20:53:34,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:34,901.901 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 20:53:35,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:53:35,745.745 INFO    ] Checking for system updates...
[2026-06-13 20:53:35,766.766 INFO    ] 200
[2026-06-13 20:53:35,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:35,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:35,800.800 INFO    ] No update needed
[2026-06-13 20:53:35,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 20:53:35,821.821 INFO    ] 200
[2026-06-13 20:53:35,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:35,846.846 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:53:35,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:53:35,887.887 INFO    ] No camera update needed
[2026-06-13 20:53:35,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:53:35,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:53:35,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:53:35,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:53:38,000.000 INFO    ] ================================================
[2026-06-13 20:53:38,016.016 INFO    ] Launching Daemon at Sat Jun 13 20:53:38 IST 2026
[2026-06-13 20:53:38,027.027 INFO    ] ================================================
[2026-06-13 20:53:38,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:53:38
[2026-06-13 20:53:38,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:53:38,825.825 INFO    ] Initializing speech engine...
[2026-06-13 20:53:38,830.830 INFO    ] 2026-06-13 20:53:38
[2026-06-13 20:53:39,031.031 INFO    ] 2026-06-13 20:53:39
[2026-06-13 20:53:39,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:53:39,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:53:39,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:53:39,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:53:39,438.438 INFO    ] time= 13/06/2026 20:53:39
[2026-06-13 20:53:39,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:53:39,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:53:39,548.548 INFO    ] No existing commands found in stream
[2026-06-13 20:53:44,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:44,559.559 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 20:53:46,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:53:46,980.980 INFO    ] Checking for system updates...
[2026-06-13 20:53:47,002.002 INFO    ] 200
[2026-06-13 20:53:47,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:47,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:53:47,035.035 INFO    ] No update needed
[2026-06-13 20:53:47,036.036 INFO    ] Checking for camera pi updates...
[2026-06-13 20:53:47,056.056 INFO    ] 200
[2026-06-13 20:53:47,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:53:47,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:53:47,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:53:47,123.123 INFO    ] No camera update needed
[2026-06-13 20:53:47,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:53:47,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:53:47,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:53:47,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:53:49,173.173 INFO    ] ================================================
[2026-06-13 20:53:49,189.189 INFO    ] Launching Daemon at Sat Jun 13 20:53:49 IST 2026
[2026-06-13 20:53:49,199.199 INFO    ] ================================================
[2026-06-13 20:53:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:53:49
[2026-06-13 20:53:49,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:53:50,053.053 INFO    ] Initializing speech engine...
[2026-06-13 20:53:50,057.057 INFO    ] 2026-06-13 20:53:50
[2026-06-13 20:53:50,265.265 INFO    ] 2026-06-13 20:53:50
[2026-06-13 20:53:50,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:53:50,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:53:50,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:53:50,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:53:50,677.677 INFO    ] time= 13/06/2026 20:53:50
[2026-06-13 20:53:50,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:53:50,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:53:50,784.784 INFO    ] No existing commands found in stream
[2026-06-13 20:53:55,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:53:55,797.797 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 20:54:00,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:54:00,082.082 INFO    ] Checking for system updates...
[2026-06-13 20:54:00,103.103 INFO    ] 200
[2026-06-13 20:54:00,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:00,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:00,137.137 INFO    ] No update needed
[2026-06-13 20:54:00,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:00,160.160 INFO    ] 200
[2026-06-13 20:54:00,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:00,185.185 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:00,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:00,329.329 INFO    ] No camera update needed
[2026-06-13 20:54:00,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:00,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:00,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:00,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:02,368.368 INFO    ] ================================================
[2026-06-13 20:54:02,376.376 INFO    ] Launching Daemon at Sat Jun 13 20:54:02 IST 2026
[2026-06-13 20:54:02,383.383 INFO    ] ================================================
[2026-06-13 20:54:02,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:02
[2026-06-13 20:54:03,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:03,170.170 INFO    ] Initializing speech engine...
[2026-06-13 20:54:03,176.176 INFO    ] 2026-06-13 20:54:03
[2026-06-13 20:54:03,382.382 INFO    ] 2026-06-13 20:54:03
[2026-06-13 20:54:03,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:03,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:03,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:03,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:03,790.790 INFO    ] time= 13/06/2026 20:54:03
[2026-06-13 20:54:03,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:03,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:03,900.900 INFO    ] No existing commands found in stream
[2026-06-13 20:54:08,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:54:08,913.913 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 20:54:10,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:54:10,451.451 INFO    ] Checking for system updates...
[2026-06-13 20:54:10,492.492 INFO    ] 200
[2026-06-13 20:54:10,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:10,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:10,529.529 INFO    ] No update needed
[2026-06-13 20:54:10,530.530 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:10,551.551 INFO    ] 200
[2026-06-13 20:54:10,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:10,579.579 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:10,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:10,620.620 INFO    ] No camera update needed
[2026-06-13 20:54:10,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:10,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:10,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:10,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:12,668.668 INFO    ] ================================================
[2026-06-13 20:54:12,683.683 INFO    ] Launching Daemon at Sat Jun 13 20:54:12 IST 2026
[2026-06-13 20:54:12,694.694 INFO    ] ================================================
[2026-06-13 20:54:13,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:13
[2026-06-13 20:54:13,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:13,542.542 INFO    ] Initializing speech engine...
[2026-06-13 20:54:13,547.547 INFO    ] 2026-06-13 20:54:13
[2026-06-13 20:54:13,757.757 INFO    ] 2026-06-13 20:54:13
[2026-06-13 20:54:13,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:13,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:13,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:14,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:14,158.158 INFO    ] time= 13/06/2026 20:54:14
[2026-06-13 20:54:14,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:14,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:14,273.273 INFO    ] No existing commands found in stream
[2026-06-13 20:54:19,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:54:19,285.285 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 20:54:22,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:54:22,762.762 INFO    ] Checking for system updates...
[2026-06-13 20:54:22,783.783 INFO    ] 200
[2026-06-13 20:54:22,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:22,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:22,817.817 INFO    ] No update needed
[2026-06-13 20:54:22,819.819 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:22,839.839 INFO    ] 200
[2026-06-13 20:54:22,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:22,864.864 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:22,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:22,912.912 INFO    ] No camera update needed
[2026-06-13 20:54:22,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:22,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:22,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:22,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:24,963.963 INFO    ] ================================================
[2026-06-13 20:54:24,978.978 INFO    ] Launching Daemon at Sat Jun 13 20:54:24 IST 2026
[2026-06-13 20:54:24,989.989 INFO    ] ================================================
[2026-06-13 20:54:25,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:25
[2026-06-13 20:54:25,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:25,807.807 INFO    ] Initializing speech engine...
[2026-06-13 20:54:25,813.813 INFO    ] 2026-06-13 20:54:25
[2026-06-13 20:54:26,016.016 INFO    ] 2026-06-13 20:54:25
[2026-06-13 20:54:26,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:26,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:26,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:26,417.417 INFO    ] time= 13/06/2026 20:54:26
[2026-06-13 20:54:26,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:26,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:26,529.529 INFO    ] No existing commands found in stream
[2026-06-13 20:54:31,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:54:31,544.544 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-13 20:54:33,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:54:33,998.998 INFO    ] Checking for system updates...
[2026-06-13 20:54:34,018.018 INFO    ] 200
[2026-06-13 20:54:34,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:34,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:34,058.058 INFO    ] No update needed
[2026-06-13 20:54:34,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:34,079.079 INFO    ] 200
[2026-06-13 20:54:34,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:34,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:34,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:34,150.150 INFO    ] No camera update needed
[2026-06-13 20:54:34,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:34,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:34,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:34,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:36,199.199 INFO    ] ================================================
[2026-06-13 20:54:36,214.214 INFO    ] Launching Daemon at Sat Jun 13 20:54:36 IST 2026
[2026-06-13 20:54:36,225.225 INFO    ] ================================================
[2026-06-13 20:54:36,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:36
[2026-06-13 20:54:36,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:37,041.041 INFO    ] Initializing speech engine...
[2026-06-13 20:54:37,055.055 INFO    ] 2026-06-13 20:54:37
[2026-06-13 20:54:37,277.277 INFO    ] 2026-06-13 20:54:37
[2026-06-13 20:54:37,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:37,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:37,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:37,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:37,661.661 INFO    ] time= 13/06/2026 20:54:37
[2026-06-13 20:54:37,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:37,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:37,845.845 INFO    ] No existing commands found in stream
[2026-06-13 20:54:42,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:54:42,859.859 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-13 20:54:44,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:54:44,661.661 INFO    ] Checking for system updates...
[2026-06-13 20:54:44,682.682 INFO    ] 200
[2026-06-13 20:54:44,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:44,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:44,721.721 INFO    ] No update needed
[2026-06-13 20:54:44,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:44,745.745 INFO    ] 200
[2026-06-13 20:54:44,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:44,772.772 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:44,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:54:44,821.821 INFO    ] No camera update needed
[2026-06-13 20:54:44,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:44,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:44,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:44,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:46,869.869 INFO    ] ================================================
[2026-06-13 20:54:46,884.884 INFO    ] Launching Daemon at Sat Jun 13 20:54:46 IST 2026
[2026-06-13 20:54:46,895.895 INFO    ] ================================================
[2026-06-13 20:54:47,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:47
[2026-06-13 20:54:47,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:47,682.682 INFO    ] Initializing speech engine...
[2026-06-13 20:54:47,687.687 INFO    ] 2026-06-13 20:54:47
[2026-06-13 20:54:47,906.906 INFO    ] 2026-06-13 20:54:47
[2026-06-13 20:54:47,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:48,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:48,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:48,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:48,300.300 INFO    ] time= 13/06/2026 20:54:48
[2026-06-13 20:54:48,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:48,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:48,428.428 INFO    ] No existing commands found in stream
[2026-06-13 20:54:53,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:54:53,440.440 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 20:54:54,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:54:54,656.656 INFO    ] Checking for system updates...
[2026-06-13 20:54:54,678.678 INFO    ] 200
[2026-06-13 20:54:54,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:54,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:54,714.714 INFO    ] No update needed
[2026-06-13 20:54:54,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 20:54:54,737.737 INFO    ] 200
[2026-06-13 20:54:54,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:54:54,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:54:54,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:54:54,815.815 INFO    ] No camera update needed
[2026-06-13 20:54:54,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:54:54,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:54:54,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:54:54,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:54:56,865.865 INFO    ] ================================================
[2026-06-13 20:54:56,880.880 INFO    ] Launching Daemon at Sat Jun 13 20:54:56 IST 2026
[2026-06-13 20:54:56,891.891 INFO    ] ================================================
[2026-06-13 20:54:57,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:54:57
[2026-06-13 20:54:57,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:54:57,701.701 INFO    ] Initializing speech engine...
[2026-06-13 20:54:57,711.711 INFO    ] 2026-06-13 20:54:57
[2026-06-13 20:54:57,917.917 INFO    ] 2026-06-13 20:54:57
[2026-06-13 20:54:57,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:54:58,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:54:58,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:54:58,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:54:58,326.326 INFO    ] time= 13/06/2026 20:54:58
[2026-06-13 20:54:58,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:54:58,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:54:58,446.446 INFO    ] No existing commands found in stream
[2026-06-13 20:55:03,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:55:03,458.458 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-13 20:55:06,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:55:06,563.563 INFO    ] Checking for system updates...
[2026-06-13 20:55:06,613.613 INFO    ] 200
[2026-06-13 20:55:06,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:06,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:06,649.649 INFO    ] No update needed
[2026-06-13 20:55:06,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 20:55:06,670.670 INFO    ] 200
[2026-06-13 20:55:06,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:06,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:55:06,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:06,739.739 INFO    ] No camera update needed
[2026-06-13 20:55:06,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:55:06,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:55:06,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:55:06,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:55:08,789.789 INFO    ] ================================================
[2026-06-13 20:55:08,805.805 INFO    ] Launching Daemon at Sat Jun 13 20:55:08 IST 2026
[2026-06-13 20:55:08,815.815 INFO    ] ================================================
[2026-06-13 20:55:09,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:55:09
[2026-06-13 20:55:09,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:55:09,666.666 INFO    ] Initializing speech engine...
[2026-06-13 20:55:09,671.671 INFO    ] 2026-06-13 20:55:09
[2026-06-13 20:55:09,880.880 INFO    ] 2026-06-13 20:55:09
[2026-06-13 20:55:09,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:55:10,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:55:10,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:55:10,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:55:10,302.302 INFO    ] time= 13/06/2026 20:55:10
[2026-06-13 20:55:10,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:55:10,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:55:10,400.400 INFO    ] No existing commands found in stream
[2026-06-13 20:55:15,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:55:15,413.413 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 20:55:15,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:55:15,853.853 INFO    ] Checking for system updates...
[2026-06-13 20:55:15,876.876 INFO    ] 200
[2026-06-13 20:55:15,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:15,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:15,913.913 INFO    ] No update needed
[2026-06-13 20:55:15,914.914 INFO    ] Checking for camera pi updates...
[2026-06-13 20:55:15,934.934 INFO    ] 200
[2026-06-13 20:55:15,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:15,960.960 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:55:15,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:15,997.997 INFO    ] No camera update needed
[2026-06-13 20:55:15,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:55:16,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:55:16,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:55:16,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:55:18,049.049 INFO    ] ================================================
[2026-06-13 20:55:18,067.067 INFO    ] Launching Daemon at Sat Jun 13 20:55:18 IST 2026
[2026-06-13 20:55:18,075.075 INFO    ] ================================================
[2026-06-13 20:55:18,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:55:18
[2026-06-13 20:55:18,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:55:18,905.905 INFO    ] Initializing speech engine...
[2026-06-13 20:55:18,910.910 INFO    ] 2026-06-13 20:55:18
[2026-06-13 20:55:19,116.116 INFO    ] 2026-06-13 20:55:19
[2026-06-13 20:55:19,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:55:19,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:55:19,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:55:19,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:55:19,541.541 INFO    ] time= 13/06/2026 20:55:19
[2026-06-13 20:55:19,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:55:19,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:55:19,638.638 INFO    ] No existing commands found in stream
[2026-06-13 20:55:24,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:55:24,651.651 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 20:55:26,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:55:26,027.027 INFO    ] Checking for system updates...
[2026-06-13 20:55:26,049.049 INFO    ] 200
[2026-06-13 20:55:26,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:26,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:55:26,083.083 INFO    ] No update needed
[2026-06-13 20:55:26,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 20:55:26,104.104 INFO    ] 200
[2026-06-13 20:55:26,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:26,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:55:26,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:55:26,173.173 INFO    ] No camera update needed
[2026-06-13 20:55:26,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:55:26,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:55:26,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:55:26,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:55:28,221.221 INFO    ] ================================================
[2026-06-13 20:55:28,237.237 INFO    ] Launching Daemon at Sat Jun 13 20:55:28 IST 2026
[2026-06-13 20:55:28,249.249 INFO    ] ================================================
[2026-06-13 20:55:28,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:55:28
[2026-06-13 20:55:28,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:55:29,060.060 INFO    ] Initializing speech engine...
[2026-06-13 20:55:29,065.065 INFO    ] 2026-06-13 20:55:29
[2026-06-13 20:55:29,307.307 INFO    ] 2026-06-13 20:55:29
[2026-06-13 20:55:29,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:55:29,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:55:29,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:55:29,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:55:29,683.683 INFO    ] time= 13/06/2026 20:55:29
[2026-06-13 20:55:29,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:55:29,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:55:29,847.847 INFO    ] No existing commands found in stream
[2026-06-13 20:55:34,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:55:34,880.880 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 20:55:39,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:55:39,215.215 INFO    ] Checking for system updates...
[2026-06-13 20:55:39,237.237 INFO    ] 200
[2026-06-13 20:55:39,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:39,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:39,270.270 INFO    ] No update needed
[2026-06-13 20:55:39,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 20:55:39,291.291 INFO    ] 200
[2026-06-13 20:55:39,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:39,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:55:39,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:39,368.368 INFO    ] No camera update needed
[2026-06-13 20:55:39,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:55:39,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:55:39,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:55:39,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:55:41,422.422 INFO    ] ================================================
[2026-06-13 20:55:41,438.438 INFO    ] Launching Daemon at Sat Jun 13 20:55:41 IST 2026
[2026-06-13 20:55:41,449.449 INFO    ] ================================================
[2026-06-13 20:55:41,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:55:41
[2026-06-13 20:55:42,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:55:42,256.256 INFO    ] Initializing speech engine...
[2026-06-13 20:55:42,262.262 INFO    ] 2026-06-13 20:55:42
[2026-06-13 20:55:42,465.465 INFO    ] 2026-06-13 20:55:42
[2026-06-13 20:55:42,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:55:42,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:55:42,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:55:42,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:55:42,867.867 INFO    ] time= 13/06/2026 20:55:42
[2026-06-13 20:55:42,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:55:42,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:55:42,977.977 INFO    ] No existing commands found in stream
[2026-06-13 20:55:47,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:55:47,989.989 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 20:55:51,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:55:51,306.306 INFO    ] Checking for system updates...
[2026-06-13 20:55:51,327.327 INFO    ] 200
[2026-06-13 20:55:51,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:51,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:51,361.361 INFO    ] No update needed
[2026-06-13 20:55:51,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 20:55:51,382.382 INFO    ] 200
[2026-06-13 20:55:51,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:55:51,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:55:51,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:55:51,457.457 INFO    ] No camera update needed
[2026-06-13 20:55:51,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:55:51,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:55:51,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:55:51,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:55:53,508.508 INFO    ] ================================================
[2026-06-13 20:55:53,524.524 INFO    ] Launching Daemon at Sat Jun 13 20:55:53 IST 2026
[2026-06-13 20:55:53,535.535 INFO    ] ================================================
[2026-06-13 20:55:53,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:55:53
[2026-06-13 20:55:54,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:55:54,328.328 INFO    ] Initializing speech engine...
[2026-06-13 20:55:54,333.333 INFO    ] 2026-06-13 20:55:54
[2026-06-13 20:55:54,536.536 INFO    ] 2026-06-13 20:55:54
[2026-06-13 20:55:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:55:54,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:55:54,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:55:54,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:55:54,944.944 INFO    ] time= 13/06/2026 20:55:54
[2026-06-13 20:55:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:55:54,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:55:55,048.048 INFO    ] No existing commands found in stream
[2026-06-13 20:56:00,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:00,061.061 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 20:56:02,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:56:02,679.679 INFO    ] Checking for system updates...
[2026-06-13 20:56:02,726.726 INFO    ] 200
[2026-06-13 20:56:02,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:02,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:56:02,788.788 INFO    ] No update needed
[2026-06-13 20:56:02,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 20:56:02,833.833 INFO    ] 200
[2026-06-13 20:56:02,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:02,890.890 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:56:02,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:56:02,943.943 INFO    ] No camera update needed
[2026-06-13 20:56:02,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:56:02,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:56:02,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:56:02,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:56:05,002.002 INFO    ] ================================================
[2026-06-13 20:56:05,017.017 INFO    ] Launching Daemon at Sat Jun 13 20:56:05 IST 2026
[2026-06-13 20:56:05,028.028 INFO    ] ================================================
[2026-06-13 20:56:05,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:56:05
[2026-06-13 20:56:06,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:56:06,270.270 INFO    ] Initializing speech engine...
[2026-06-13 20:56:06,284.284 INFO    ] 2026-06-13 20:56:06
[2026-06-13 20:56:06,493.493 INFO    ] 2026-06-13 20:56:06
[2026-06-13 20:56:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:56:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:56:06,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:56:06,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:56:06,915.915 INFO    ] time= 13/06/2026 20:56:06
[2026-06-13 20:56:06,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:56:06,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:56:07,012.012 INFO    ] No existing commands found in stream
[2026-06-13 20:56:12,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:12,040.040 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-13 20:56:15,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:56:15,313.313 INFO    ] Checking for system updates...
[2026-06-13 20:56:15,334.334 INFO    ] 200
[2026-06-13 20:56:15,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:15,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:56:15,368.368 INFO    ] No update needed
[2026-06-13 20:56:15,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 20:56:15,391.391 INFO    ] 200
[2026-06-13 20:56:15,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:15,419.419 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:56:15,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:56:15,456.456 INFO    ] No camera update needed
[2026-06-13 20:56:15,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:56:15,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:56:15,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:56:15,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:56:17,505.505 INFO    ] ================================================
[2026-06-13 20:56:17,521.521 INFO    ] Launching Daemon at Sat Jun 13 20:56:17 IST 2026
[2026-06-13 20:56:17,532.532 INFO    ] ================================================
[2026-06-13 20:56:17,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:56:17
[2026-06-13 20:56:18,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:56:18,352.352 INFO    ] Initializing speech engine...
[2026-06-13 20:56:18,362.362 INFO    ] 2026-06-13 20:56:18
[2026-06-13 20:56:18,565.565 INFO    ] 2026-06-13 20:56:18
[2026-06-13 20:56:18,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:56:18,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:56:18,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:56:18,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:56:18,964.964 INFO    ] time= 13/06/2026 20:56:18
[2026-06-13 20:56:18,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:56:19,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:56:19,079.079 INFO    ] No existing commands found in stream
[2026-06-13 20:56:24,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:24,091.091 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 20:56:25,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:56:25,947.947 INFO    ] Checking for system updates...
[2026-06-13 20:56:25,967.967 INFO    ] 200
[2026-06-13 20:56:25,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:25,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:56:26,001.001 INFO    ] No update needed
[2026-06-13 20:56:26,002.002 INFO    ] Checking for camera pi updates...
[2026-06-13 20:56:26,024.024 INFO    ] 200
[2026-06-13 20:56:26,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:26,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:56:26,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:56:26,090.090 INFO    ] No camera update needed
[2026-06-13 20:56:26,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:56:26,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:56:26,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:56:26,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:56:28,138.138 INFO    ] ================================================
[2026-06-13 20:56:28,153.153 INFO    ] Launching Daemon at Sat Jun 13 20:56:28 IST 2026
[2026-06-13 20:56:28,164.164 INFO    ] ================================================
[2026-06-13 20:56:28,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:56:28
[2026-06-13 20:56:28,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:56:29,037.037 INFO    ] Initializing speech engine...
[2026-06-13 20:56:29,042.042 INFO    ] 2026-06-13 20:56:29
[2026-06-13 20:56:29,248.248 INFO    ] 2026-06-13 20:56:29
[2026-06-13 20:56:29,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:56:29,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:56:29,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:56:29,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:56:29,672.672 INFO    ] time= 13/06/2026 20:56:29
[2026-06-13 20:56:29,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:56:29,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:56:29,768.768 INFO    ] No existing commands found in stream
[2026-06-13 20:56:34,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:34,781.781 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 20:56:39,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:56:39,033.033 INFO    ] Checking for system updates...
[2026-06-13 20:56:39,054.054 INFO    ] 200
[2026-06-13 20:56:39,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:39,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:56:39,090.090 INFO    ] No update needed
[2026-06-13 20:56:39,092.092 INFO    ] Checking for camera pi updates...
[2026-06-13 20:56:39,112.112 INFO    ] 200
[2026-06-13 20:56:39,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:39,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:56:39,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:56:39,194.194 INFO    ] No camera update needed
[2026-06-13 20:56:39,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:56:39,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:56:39,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:56:39,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:56:41,241.241 INFO    ] ================================================
[2026-06-13 20:56:41,256.256 INFO    ] Launching Daemon at Sat Jun 13 20:56:41 IST 2026
[2026-06-13 20:56:41,267.267 INFO    ] ================================================
[2026-06-13 20:56:41,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:56:41
[2026-06-13 20:56:41,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:56:42,103.103 INFO    ] Initializing speech engine...
[2026-06-13 20:56:42,108.108 INFO    ] 2026-06-13 20:56:42
[2026-06-13 20:56:42,312.312 INFO    ] 2026-06-13 20:56:42
[2026-06-13 20:56:42,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:56:42,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:56:42,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:56:42,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:56:42,711.711 INFO    ] time= 13/06/2026 20:56:42
[2026-06-13 20:56:42,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:56:42,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:56:42,826.826 INFO    ] No existing commands found in stream
[2026-06-13 20:56:47,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:47,839.839 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 20:56:50,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:56:50,692.692 INFO    ] Checking for system updates...
[2026-06-13 20:56:50,713.713 INFO    ] 200
[2026-06-13 20:56:50,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:50,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:56:50,746.746 INFO    ] No update needed
[2026-06-13 20:56:50,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 20:56:50,768.768 INFO    ] 200
[2026-06-13 20:56:50,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:56:50,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:56:50,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:56:50,836.836 INFO    ] No camera update needed
[2026-06-13 20:56:50,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:56:50,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:56:50,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:56:50,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:56:52,883.883 INFO    ] ================================================
[2026-06-13 20:56:52,898.898 INFO    ] Launching Daemon at Sat Jun 13 20:56:52 IST 2026
[2026-06-13 20:56:52,909.909 INFO    ] ================================================
[2026-06-13 20:56:53,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:56:53
[2026-06-13 20:56:53,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:56:54,117.117 INFO    ] Initializing speech engine...
[2026-06-13 20:56:54,126.126 INFO    ] 2026-06-13 20:56:54
[2026-06-13 20:56:54,372.372 INFO    ] 2026-06-13 20:56:54
[2026-06-13 20:56:54,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:56:54,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:56:54,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:56:54,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:56:54,719.719 INFO    ] time= 13/06/2026 20:56:54
[2026-06-13 20:56:54,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:56:54,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:56:54,815.815 INFO    ] No existing commands found in stream
[2026-06-13 20:56:59,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:56:59,830.830 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-13 20:57:04,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:57:04,123.123 INFO    ] Checking for system updates...
[2026-06-13 20:57:04,143.143 INFO    ] 200
[2026-06-13 20:57:04,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:04,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:04,179.179 INFO    ] No update needed
[2026-06-13 20:57:04,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 20:57:04,200.200 INFO    ] 200
[2026-06-13 20:57:04,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:04,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:57:04,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:04,273.273 INFO    ] No camera update needed
[2026-06-13 20:57:04,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:57:04,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:57:04,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:57:04,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:57:06,320.320 INFO    ] ================================================
[2026-06-13 20:57:06,335.335 INFO    ] Launching Daemon at Sat Jun 13 20:57:06 IST 2026
[2026-06-13 20:57:06,346.346 INFO    ] ================================================
[2026-06-13 20:57:06,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:57:06
[2026-06-13 20:57:07,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:57:07,149.149 INFO    ] Initializing speech engine...
[2026-06-13 20:57:07,152.152 INFO    ] 2026-06-13 20:57:07
[2026-06-13 20:57:07,384.384 INFO    ] 2026-06-13 20:57:07
[2026-06-13 20:57:07,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:57:07,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:57:07,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:57:07,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:57:07,808.808 INFO    ] time= 13/06/2026 20:57:07
[2026-06-13 20:57:07,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:57:07,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:57:07,941.941 INFO    ] No existing commands found in stream
[2026-06-13 20:57:12,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:57:12,955.955 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 20:57:15,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:57:15,162.162 INFO    ] Checking for system updates...
[2026-06-13 20:57:15,183.183 INFO    ] 200
[2026-06-13 20:57:15,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:15,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:15,217.217 INFO    ] No update needed
[2026-06-13 20:57:15,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 20:57:15,239.239 INFO    ] 200
[2026-06-13 20:57:15,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:15,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:57:15,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:15,314.314 INFO    ] No camera update needed
[2026-06-13 20:57:15,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:57:15,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:57:15,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:57:15,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:57:17,361.361 INFO    ] ================================================
[2026-06-13 20:57:17,376.376 INFO    ] Launching Daemon at Sat Jun 13 20:57:17 IST 2026
[2026-06-13 20:57:17,386.386 INFO    ] ================================================
[2026-06-13 20:57:17,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:57:17
[2026-06-13 20:57:18,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:57:18,230.230 INFO    ] Initializing speech engine...
[2026-06-13 20:57:18,235.235 INFO    ] 2026-06-13 20:57:18
[2026-06-13 20:57:18,445.445 INFO    ] 2026-06-13 20:57:18
[2026-06-13 20:57:18,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:57:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:57:18,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:57:18,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:57:18,864.864 INFO    ] time= 13/06/2026 20:57:18
[2026-06-13 20:57:18,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:57:18,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:57:18,966.966 INFO    ] No existing commands found in stream
[2026-06-13 20:57:23,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:57:23,983.983 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 20:57:27,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 20:57:27,926.926 INFO    ] Checking for system updates...
[2026-06-13 20:57:27,947.947 INFO    ] 200
[2026-06-13 20:57:27,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:27,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:27,981.981 INFO    ] No update needed
[2026-06-13 20:57:27,982.982 INFO    ] Checking for camera pi updates...
[2026-06-13 20:57:28,003.003 INFO    ] 200
[2026-06-13 20:57:28,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:28,028.028 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:57:28,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:28,068.068 INFO    ] No camera update needed
[2026-06-13 20:57:28,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:57:28,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:57:28,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:57:28,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:57:30,117.117 INFO    ] ================================================
[2026-06-13 20:57:30,133.133 INFO    ] Launching Daemon at Sat Jun 13 20:57:30 IST 2026
[2026-06-13 20:57:30,144.144 INFO    ] ================================================
[2026-06-13 20:57:30,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:57:30
[2026-06-13 20:57:30,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:57:31,010.010 INFO    ] Initializing speech engine...
[2026-06-13 20:57:31,020.020 INFO    ] 2026-06-13 20:57:31
[2026-06-13 20:57:31,240.240 INFO    ] 2026-06-13 20:57:31
[2026-06-13 20:57:31,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:57:31,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:57:31,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:57:31,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:57:31,679.679 INFO    ] time= 13/06/2026 20:57:31
[2026-06-13 20:57:31,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:57:31,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:57:31,790.790 INFO    ] No existing commands found in stream
[2026-06-13 20:57:36,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:57:36,804.804 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-13 20:57:41,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:57:41,118.118 INFO    ] Checking for system updates...
[2026-06-13 20:57:41,174.174 INFO    ] 200
[2026-06-13 20:57:41,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:41,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:41,208.208 INFO    ] No update needed
[2026-06-13 20:57:41,209.209 INFO    ] Checking for camera pi updates...
[2026-06-13 20:57:41,229.229 INFO    ] 200
[2026-06-13 20:57:41,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:41,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:57:41,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:57:41,291.291 INFO    ] No camera update needed
[2026-06-13 20:57:41,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:57:41,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:57:41,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:57:41,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:57:43,340.340 INFO    ] ================================================
[2026-06-13 20:57:43,356.356 INFO    ] Launching Daemon at Sat Jun 13 20:57:43 IST 2026
[2026-06-13 20:57:43,368.368 INFO    ] ================================================
[2026-06-13 20:57:43,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:57:43
[2026-06-13 20:57:44,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:57:44,178.178 INFO    ] Initializing speech engine...
[2026-06-13 20:57:44,196.196 INFO    ] 2026-06-13 20:57:44
[2026-06-13 20:57:44,446.446 INFO    ] 2026-06-13 20:57:44
[2026-06-13 20:57:44,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:57:44,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:57:44,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:57:44,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:57:44,896.896 INFO    ] time= 13/06/2026 20:57:44
[2026-06-13 20:57:44,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:57:45,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:57:45,152.152 INFO    ] No existing commands found in stream
[2026-06-13 20:57:50,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:57:50,170.170 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-13 20:57:54,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:57:54,229.229 INFO    ] Checking for system updates...
[2026-06-13 20:57:54,250.250 INFO    ] 200
[2026-06-13 20:57:54,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:54,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:57:54,283.283 INFO    ] No update needed
[2026-06-13 20:57:54,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 20:57:54,304.304 INFO    ] 200
[2026-06-13 20:57:54,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:57:54,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:57:54,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:57:54,371.371 INFO    ] No camera update needed
[2026-06-13 20:57:54,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:57:54,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:57:54,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:57:54,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:57:56,420.420 INFO    ] ================================================
[2026-06-13 20:57:56,436.436 INFO    ] Launching Daemon at Sat Jun 13 20:57:56 IST 2026
[2026-06-13 20:57:56,446.446 INFO    ] ================================================
[2026-06-13 20:57:56,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:57:56
[2026-06-13 20:57:57,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:57:57,250.250 INFO    ] Initializing speech engine...
[2026-06-13 20:57:57,254.254 INFO    ] 2026-06-13 20:57:57
[2026-06-13 20:57:57,482.482 INFO    ] 2026-06-13 20:57:57
[2026-06-13 20:57:57,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:57:57,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:57:57,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:57:57,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:57:57,896.896 INFO    ] time= 13/06/2026 20:57:57
[2026-06-13 20:57:57,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:57:57,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:57:58,038.038 INFO    ] No existing commands found in stream
[2026-06-13 20:58:03,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:58:03,050.050 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-13 20:58:04,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:58:04,657.657 INFO    ] Checking for system updates...
[2026-06-13 20:58:04,678.678 INFO    ] 200
[2026-06-13 20:58:04,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:04,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:58:04,713.713 INFO    ] No update needed
[2026-06-13 20:58:04,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 20:58:04,734.734 INFO    ] 200
[2026-06-13 20:58:04,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:04,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:58:04,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:58:04,905.905 INFO    ] No camera update needed
[2026-06-13 20:58:04,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:58:04,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:58:04,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:58:04,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:58:06,951.951 INFO    ] ================================================
[2026-06-13 20:58:06,967.967 INFO    ] Launching Daemon at Sat Jun 13 20:58:06 IST 2026
[2026-06-13 20:58:06,978.978 INFO    ] ================================================
[2026-06-13 20:58:07,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:58:07
[2026-06-13 20:58:07,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:58:07,811.811 INFO    ] Initializing speech engine...
[2026-06-13 20:58:07,815.815 INFO    ] 2026-06-13 20:58:07
[2026-06-13 20:58:08,043.043 INFO    ] 2026-06-13 20:58:08
[2026-06-13 20:58:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:58:08,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:58:08,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:58:08,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:58:08,471.471 INFO    ] time= 13/06/2026 20:58:08
[2026-06-13 20:58:08,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:58:08,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:58:08,597.597 INFO    ] No existing commands found in stream
[2026-06-13 20:58:13,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:58:13,610.610 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 20:58:17,652.652 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:58:17,653.653 INFO    ] Checking for system updates...
[2026-06-13 20:58:17,674.674 INFO    ] 200
[2026-06-13 20:58:17,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:17,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:17,710.710 INFO    ] No update needed
[2026-06-13 20:58:17,711.711 INFO    ] Checking for camera pi updates...
[2026-06-13 20:58:17,731.731 INFO    ] 200
[2026-06-13 20:58:17,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:17,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:58:17,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:17,819.819 INFO    ] No camera update needed
[2026-06-13 20:58:17,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:58:17,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:58:17,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:58:17,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:58:19,878.878 INFO    ] ================================================
[2026-06-13 20:58:19,894.894 INFO    ] Launching Daemon at Sat Jun 13 20:58:19 IST 2026
[2026-06-13 20:58:19,906.906 INFO    ] ================================================
[2026-06-13 20:58:20,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:58:20
[2026-06-13 20:58:20,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:58:21,121.121 INFO    ] Initializing speech engine...
[2026-06-13 20:58:21,125.125 INFO    ] 2026-06-13 20:58:21
[2026-06-13 20:58:21,334.334 INFO    ] 2026-06-13 20:58:21
[2026-06-13 20:58:21,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:58:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:58:21,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:58:21,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:58:21,706.706 INFO    ] time= 13/06/2026 20:58:21
[2026-06-13 20:58:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:58:21,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:58:21,851.851 INFO    ] No existing commands found in stream
[2026-06-13 20:58:26,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:58:26,864.864 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 20:58:28,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 20:58:29,000.000 INFO    ] Checking for system updates...
[2026-06-13 20:58:29,021.021 INFO    ] 200
[2026-06-13 20:58:29,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:29,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:58:29,055.055 INFO    ] No update needed
[2026-06-13 20:58:29,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 20:58:29,079.079 INFO    ] 200
[2026-06-13 20:58:29,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:29,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:58:29,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:58:29,148.148 INFO    ] No camera update needed
[2026-06-13 20:58:29,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:58:29,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:58:29,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:58:29,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:58:31,208.208 INFO    ] ================================================
[2026-06-13 20:58:31,224.224 INFO    ] Launching Daemon at Sat Jun 13 20:58:31 IST 2026
[2026-06-13 20:58:31,235.235 INFO    ] ================================================
[2026-06-13 20:58:31,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:58:31
[2026-06-13 20:58:32,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:58:32,526.526 INFO    ] Initializing speech engine...
[2026-06-13 20:58:32,531.531 INFO    ] 2026-06-13 20:58:32
[2026-06-13 20:58:32,739.739 INFO    ] 2026-06-13 20:58:32
[2026-06-13 20:58:32,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:58:32,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:58:32,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:58:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:58:33,154.154 INFO    ] time= 13/06/2026 20:58:33
[2026-06-13 20:58:33,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:58:33,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:58:33,254.254 INFO    ] No existing commands found in stream
[2026-06-13 20:58:38,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:58:38,266.266 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 20:58:39,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:58:39,232.232 INFO    ] Checking for system updates...
[2026-06-13 20:58:39,253.253 INFO    ] 200
[2026-06-13 20:58:39,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:39,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:39,287.287 INFO    ] No update needed
[2026-06-13 20:58:39,288.288 INFO    ] Checking for camera pi updates...
[2026-06-13 20:58:39,308.308 INFO    ] 200
[2026-06-13 20:58:39,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:39,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:58:39,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:39,383.383 INFO    ] No camera update needed
[2026-06-13 20:58:39,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:58:39,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:58:39,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:58:39,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:58:41,430.430 INFO    ] ================================================
[2026-06-13 20:58:41,446.446 INFO    ] Launching Daemon at Sat Jun 13 20:58:41 IST 2026
[2026-06-13 20:58:41,457.457 INFO    ] ================================================
[2026-06-13 20:58:41,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:58:41
[2026-06-13 20:58:42,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:58:42,258.258 INFO    ] Initializing speech engine...
[2026-06-13 20:58:42,272.272 INFO    ] 2026-06-13 20:58:42
[2026-06-13 20:58:42,489.489 INFO    ] 2026-06-13 20:58:42
[2026-06-13 20:58:42,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:58:42,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:58:42,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:58:42,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:58:42,899.899 INFO    ] time= 13/06/2026 20:58:42
[2026-06-13 20:58:42,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:58:42,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:58:43,040.040 INFO    ] No existing commands found in stream
[2026-06-13 20:58:48,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:58:48,053.053 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 20:58:52,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 20:58:52,038.038 INFO    ] Checking for system updates...
[2026-06-13 20:58:52,059.059 INFO    ] 200
[2026-06-13 20:58:52,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:52,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:52,094.094 INFO    ] No update needed
[2026-06-13 20:58:52,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 20:58:52,115.115 INFO    ] 200
[2026-06-13 20:58:52,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:58:52,142.142 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:58:52,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:58:52,180.180 INFO    ] No camera update needed
[2026-06-13 20:58:52,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:58:52,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:58:52,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:58:52,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:58:54,229.229 INFO    ] ================================================
[2026-06-13 20:58:54,245.245 INFO    ] Launching Daemon at Sat Jun 13 20:58:54 IST 2026
[2026-06-13 20:58:54,257.257 INFO    ] ================================================
[2026-06-13 20:58:54,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:58:54
[2026-06-13 20:58:54,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:58:55,098.098 INFO    ] Initializing speech engine...
[2026-06-13 20:58:55,103.103 INFO    ] 2026-06-13 20:58:55
[2026-06-13 20:58:55,310.310 INFO    ] 2026-06-13 20:58:55
[2026-06-13 20:58:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:58:55,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:58:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:58:55,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:58:55,726.726 INFO    ] time= 13/06/2026 20:58:55
[2026-06-13 20:58:55,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:58:55,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:58:55,826.826 INFO    ] No existing commands found in stream
[2026-06-13 20:59:00,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:00,839.839 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 20:59:03,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 20:59:03,905.905 INFO    ] Checking for system updates...
[2026-06-13 20:59:03,943.943 INFO    ] 200
[2026-06-13 20:59:03,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:04,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:59:04,007.007 INFO    ] No update needed
[2026-06-13 20:59:04,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 20:59:04,045.045 INFO    ] 200
[2026-06-13 20:59:04,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:04,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:59:04,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 20:59:04,140.140 INFO    ] No camera update needed
[2026-06-13 20:59:04,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:59:04,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:59:04,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:59:04,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:59:06,198.198 INFO    ] ================================================
[2026-06-13 20:59:06,214.214 INFO    ] Launching Daemon at Sat Jun 13 20:59:06 IST 2026
[2026-06-13 20:59:06,226.226 INFO    ] ================================================
[2026-06-13 20:59:06,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:59:06
[2026-06-13 20:59:06,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:59:07,060.060 INFO    ] Initializing speech engine...
[2026-06-13 20:59:07,066.066 INFO    ] 2026-06-13 20:59:07
[2026-06-13 20:59:07,272.272 INFO    ] 2026-06-13 20:59:07
[2026-06-13 20:59:07,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:59:07,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:59:07,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:59:07,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:59:07,681.681 INFO    ] time= 13/06/2026 20:59:07
[2026-06-13 20:59:07,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:59:07,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:59:07,791.791 INFO    ] No existing commands found in stream
[2026-06-13 20:59:12,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:12,803.803 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 20:59:14,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:59:14,472.472 INFO    ] Checking for system updates...
[2026-06-13 20:59:14,493.493 INFO    ] 200
[2026-06-13 20:59:14,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:14,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:14,527.527 INFO    ] No update needed
[2026-06-13 20:59:14,528.528 INFO    ] Checking for camera pi updates...
[2026-06-13 20:59:14,549.549 INFO    ] 200
[2026-06-13 20:59:14,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:14,573.573 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:59:14,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:14,607.607 INFO    ] No camera update needed
[2026-06-13 20:59:14,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:59:14,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:59:14,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:59:14,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:59:16,655.655 INFO    ] ================================================
[2026-06-13 20:59:16,670.670 INFO    ] Launching Daemon at Sat Jun 13 20:59:16 IST 2026
[2026-06-13 20:59:16,681.681 INFO    ] ================================================
[2026-06-13 20:59:17,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:59:17
[2026-06-13 20:59:17,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:59:17,509.509 INFO    ] Initializing speech engine...
[2026-06-13 20:59:17,519.519 INFO    ] 2026-06-13 20:59:17
[2026-06-13 20:59:17,728.728 INFO    ] 2026-06-13 20:59:17
[2026-06-13 20:59:17,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:59:17,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:59:17,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:59:18,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:59:18,147.147 INFO    ] time= 13/06/2026 20:59:18
[2026-06-13 20:59:18,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:59:18,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:59:18,245.245 INFO    ] No existing commands found in stream
[2026-06-13 20:59:23,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:23,260.260 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 20:59:26,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:59:26,174.174 INFO    ] Checking for system updates...
[2026-06-13 20:59:26,196.196 INFO    ] 200
[2026-06-13 20:59:26,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:26,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:26,229.229 INFO    ] No update needed
[2026-06-13 20:59:26,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 20:59:26,250.250 INFO    ] 200
[2026-06-13 20:59:26,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:26,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:59:26,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:26,314.314 INFO    ] No camera update needed
[2026-06-13 20:59:26,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:59:26,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:59:26,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:59:26,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:59:28,361.361 INFO    ] ================================================
[2026-06-13 20:59:28,377.377 INFO    ] Launching Daemon at Sat Jun 13 20:59:28 IST 2026
[2026-06-13 20:59:28,388.388 INFO    ] ================================================
[2026-06-13 20:59:28,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:59:28
[2026-06-13 20:59:29,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:59:29,198.198 INFO    ] Initializing speech engine...
[2026-06-13 20:59:29,206.206 INFO    ] 2026-06-13 20:59:29
[2026-06-13 20:59:29,413.413 INFO    ] 2026-06-13 20:59:29
[2026-06-13 20:59:29,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:59:29,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:59:29,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:59:29,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:59:29,831.831 INFO    ] time= 13/06/2026 20:59:29
[2026-06-13 20:59:29,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:59:29,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:59:29,932.932 INFO    ] No existing commands found in stream
[2026-06-13 20:59:34,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:34,945.945 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 20:59:37,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 20:59:37,383.383 INFO    ] Checking for system updates...
[2026-06-13 20:59:37,403.403 INFO    ] 200
[2026-06-13 20:59:37,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:37,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:37,437.437 INFO    ] No update needed
[2026-06-13 20:59:37,438.438 INFO    ] Checking for camera pi updates...
[2026-06-13 20:59:37,457.457 INFO    ] 200
[2026-06-13 20:59:37,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:37,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:59:37,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:37,520.520 INFO    ] No camera update needed
[2026-06-13 20:59:37,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:59:37,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:59:37,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:59:37,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:59:39,568.568 INFO    ] ================================================
[2026-06-13 20:59:39,584.584 INFO    ] Launching Daemon at Sat Jun 13 20:59:39 IST 2026
[2026-06-13 20:59:39,595.595 INFO    ] ================================================
[2026-06-13 20:59:39,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:59:39
[2026-06-13 20:59:40,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:59:40,400.400 INFO    ] Initializing speech engine...
[2026-06-13 20:59:40,404.404 INFO    ] 2026-06-13 20:59:40
[2026-06-13 20:59:40,607.607 INFO    ] 2026-06-13 20:59:40
[2026-06-13 20:59:40,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:59:40,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:59:40,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:59:40,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:59:41,000.000 INFO    ] time= 13/06/2026 20:59:40
[2026-06-13 20:59:41,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:59:41,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:59:41,119.119 INFO    ] No existing commands found in stream
[2026-06-13 20:59:46,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:46,131.131 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-13 20:59:50,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 20:59:50,277.277 INFO    ] Checking for system updates...
[2026-06-13 20:59:50,299.299 INFO    ] 200
[2026-06-13 20:59:50,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:50,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:50,333.333 INFO    ] No update needed
[2026-06-13 20:59:50,334.334 INFO    ] Checking for camera pi updates...
[2026-06-13 20:59:50,353.353 INFO    ] 200
[2026-06-13 20:59:50,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 20:59:50,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 20:59:50,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 20:59:50,421.421 INFO    ] No camera update needed
[2026-06-13 20:59:50,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 20:59:50,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 20:59:50,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 20:59:50,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 20:59:52,470.470 INFO    ] ================================================
[2026-06-13 20:59:52,485.485 INFO    ] Launching Daemon at Sat Jun 13 20:59:52 IST 2026
[2026-06-13 20:59:52,496.496 INFO    ] ================================================
[2026-06-13 20:59:52,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 20:59:52
[2026-06-13 20:59:53,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 20:59:53,903.903 INFO    ] Initializing speech engine...
[2026-06-13 20:59:53,910.910 INFO    ] 2026-06-13 20:59:53
[2026-06-13 20:59:54,199.199 INFO    ] 2026-06-13 20:59:54
[2026-06-13 20:59:54,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 20:59:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 20:59:54,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 20:59:54,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 20:59:54,654.654 INFO    ] time= 13/06/2026 20:59:54
[2026-06-13 20:59:54,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 20:59:54,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 20:59:54,801.801 INFO    ] No existing commands found in stream
[2026-06-13 20:59:59,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 20:59:59,829.829 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 21:00:00,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:00:00,516.516 INFO    ] Checking for system updates...
[2026-06-13 21:00:00,537.537 INFO    ] 200
[2026-06-13 21:00:00,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:00,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:00:00,572.572 INFO    ] No update needed
[2026-06-13 21:00:00,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:00,592.592 INFO    ] 200
[2026-06-13 21:00:00,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:00,617.617 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:00,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:00:00,663.663 INFO    ] No camera update needed
[2026-06-13 21:00:00,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:00,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:00,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:00,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:02,776.776 INFO    ] ================================================
[2026-06-13 21:00:02,911.911 INFO    ] Launching Daemon at Sat Jun 13 21:00:02 IST 2026
[2026-06-13 21:00:02,952.952 INFO    ] ================================================
[2026-06-13 21:00:05,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:05
[2026-06-13 21:00:06,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:06,392.392 INFO    ] Initializing speech engine...
[2026-06-13 21:00:06,408.408 INFO    ] 2026-06-13 21:00:06
[2026-06-13 21:00:06,672.672 INFO    ] 2026-06-13 21:00:06
[2026-06-13 21:00:06,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:06,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:06,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:07,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:07,005.005 INFO    ] time= 13/06/2026 21:00:07
[2026-06-13 21:00:07,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:07,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:07,118.118 INFO    ] No existing commands found in stream
[2026-06-13 21:00:12,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:00:12,136.136 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 21:00:12,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:00:12,992.992 INFO    ] Checking for system updates...
[2026-06-13 21:00:13,018.018 INFO    ] 200
[2026-06-13 21:00:13,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:13,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:13,052.052 INFO    ] No update needed
[2026-06-13 21:00:13,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:13,073.073 INFO    ] 200
[2026-06-13 21:00:13,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:13,098.098 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:13,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:13,241.241 INFO    ] No camera update needed
[2026-06-13 21:00:13,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:13,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:13,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:13,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:15,290.290 INFO    ] ================================================
[2026-06-13 21:00:15,305.305 INFO    ] Launching Daemon at Sat Jun 13 21:00:15 IST 2026
[2026-06-13 21:00:15,317.317 INFO    ] ================================================
[2026-06-13 21:00:15,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:15
[2026-06-13 21:00:16,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:16,152.152 INFO    ] Initializing speech engine...
[2026-06-13 21:00:16,156.156 INFO    ] 2026-06-13 21:00:16
[2026-06-13 21:00:16,364.364 INFO    ] 2026-06-13 21:00:16
[2026-06-13 21:00:16,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:16,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:16,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:16,763.763 INFO    ] time= 13/06/2026 21:00:16
[2026-06-13 21:00:16,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:16,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:16,884.884 INFO    ] No existing commands found in stream
[2026-06-13 21:00:21,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:00:21,898.898 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-13 21:00:22,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:00:22,764.764 INFO    ] Checking for system updates...
[2026-06-13 21:00:22,786.786 INFO    ] 200
[2026-06-13 21:00:22,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:22,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:22,820.820 INFO    ] No update needed
[2026-06-13 21:00:22,822.822 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:22,842.842 INFO    ] 200
[2026-06-13 21:00:22,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:22,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:22,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:22,909.909 INFO    ] No camera update needed
[2026-06-13 21:00:22,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:22,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:22,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:22,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:24,957.957 INFO    ] ================================================
[2026-06-13 21:00:24,972.972 INFO    ] Launching Daemon at Sat Jun 13 21:00:24 IST 2026
[2026-06-13 21:00:24,983.983 INFO    ] ================================================
[2026-06-13 21:00:25,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:25
[2026-06-13 21:00:25,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:25,774.774 INFO    ] Initializing speech engine...
[2026-06-13 21:00:25,782.782 INFO    ] 2026-06-13 21:00:25
[2026-06-13 21:00:26,002.002 INFO    ] 2026-06-13 21:00:25
[2026-06-13 21:00:26,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:26,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:26,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:26,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:26,421.421 INFO    ] time= 13/06/2026 21:00:26
[2026-06-13 21:00:26,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:26,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:26,592.592 INFO    ] No existing commands found in stream
[2026-06-13 21:00:31,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:00:31,612.612 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 21:00:33,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:00:33,975.975 INFO    ] Checking for system updates...
[2026-06-13 21:00:33,996.996 INFO    ] 200
[2026-06-13 21:00:33,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:34,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:00:34,029.029 INFO    ] No update needed
[2026-06-13 21:00:34,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:34,050.050 INFO    ] 200
[2026-06-13 21:00:34,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:34,075.075 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:34,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:00:34,115.115 INFO    ] No camera update needed
[2026-06-13 21:00:34,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:34,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:34,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:34,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:36,161.161 INFO    ] ================================================
[2026-06-13 21:00:36,177.177 INFO    ] Launching Daemon at Sat Jun 13 21:00:36 IST 2026
[2026-06-13 21:00:36,188.188 INFO    ] ================================================
[2026-06-13 21:00:36,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:36
[2026-06-13 21:00:36,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:37,024.024 INFO    ] Initializing speech engine...
[2026-06-13 21:00:37,031.031 INFO    ] 2026-06-13 21:00:37
[2026-06-13 21:00:37,236.236 INFO    ] 2026-06-13 21:00:37
[2026-06-13 21:00:37,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:37,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:37,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:37,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:37,654.654 INFO    ] time= 13/06/2026 21:00:37
[2026-06-13 21:00:37,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:37,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:37,754.754 INFO    ] No existing commands found in stream
[2026-06-13 21:00:42,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:00:42,769.769 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-13 21:00:44,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:00:44,546.546 INFO    ] Checking for system updates...
[2026-06-13 21:00:44,567.567 INFO    ] 200
[2026-06-13 21:00:44,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:44,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:00:44,601.601 INFO    ] No update needed
[2026-06-13 21:00:44,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:44,623.623 INFO    ] 200
[2026-06-13 21:00:44,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:44,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:44,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:44,692.692 INFO    ] No camera update needed
[2026-06-13 21:00:44,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:44,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:44,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:44,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:46,745.745 INFO    ] ================================================
[2026-06-13 21:00:46,761.761 INFO    ] Launching Daemon at Sat Jun 13 21:00:46 IST 2026
[2026-06-13 21:00:46,771.771 INFO    ] ================================================
[2026-06-13 21:00:47,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:47
[2026-06-13 21:00:47,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:47,567.567 INFO    ] Initializing speech engine...
[2026-06-13 21:00:47,572.572 INFO    ] 2026-06-13 21:00:47
[2026-06-13 21:00:47,774.774 INFO    ] 2026-06-13 21:00:47
[2026-06-13 21:00:47,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:47,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:47,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:48,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:48,190.190 INFO    ] time= 13/06/2026 21:00:48
[2026-06-13 21:00:48,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:48,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:48,356.356 INFO    ] No existing commands found in stream
[2026-06-13 21:00:53,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:00:53,369.369 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 21:00:55,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:00:55,393.393 INFO    ] Checking for system updates...
[2026-06-13 21:00:55,414.414 INFO    ] 200
[2026-06-13 21:00:55,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:55,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:55,450.450 INFO    ] No update needed
[2026-06-13 21:00:55,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 21:00:55,471.471 INFO    ] 200
[2026-06-13 21:00:55,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:00:55,495.495 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:00:55,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:00:55,531.531 INFO    ] No camera update needed
[2026-06-13 21:00:55,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:00:55,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:00:55,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:00:55,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:00:57,579.579 INFO    ] ================================================
[2026-06-13 21:00:57,594.594 INFO    ] Launching Daemon at Sat Jun 13 21:00:57 IST 2026
[2026-06-13 21:00:57,605.605 INFO    ] ================================================
[2026-06-13 21:00:57,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:00:57
[2026-06-13 21:00:58,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:00:58,467.467 INFO    ] Initializing speech engine...
[2026-06-13 21:00:58,472.472 INFO    ] 2026-06-13 21:00:58
[2026-06-13 21:00:58,677.677 INFO    ] 2026-06-13 21:00:58
[2026-06-13 21:00:58,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:00:58,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:00:58,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:00:59,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:00:59,093.093 INFO    ] time= 13/06/2026 21:00:59
[2026-06-13 21:00:59,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:00:59,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:00:59,194.194 INFO    ] No existing commands found in stream
[2026-06-13 21:01:04,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:04,207.207 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 21:01:04,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:01:04,917.917 INFO    ] Checking for system updates...
[2026-06-13 21:01:04,938.938 INFO    ] 200
[2026-06-13 21:01:04,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:04,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:04,974.974 INFO    ] No update needed
[2026-06-13 21:01:04,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 21:01:04,996.996 INFO    ] 200
[2026-06-13 21:01:04,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:05,021.021 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:01:05,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:05,073.073 INFO    ] No camera update needed
[2026-06-13 21:01:05,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:01:05,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:01:05,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:01:05,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:01:07,121.121 INFO    ] ================================================
[2026-06-13 21:01:07,136.136 INFO    ] Launching Daemon at Sat Jun 13 21:01:07 IST 2026
[2026-06-13 21:01:07,146.146 INFO    ] ================================================
[2026-06-13 21:01:07,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:01:07
[2026-06-13 21:01:07,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:01:07,980.980 INFO    ] Initializing speech engine...
[2026-06-13 21:01:07,985.985 INFO    ] 2026-06-13 21:01:07
[2026-06-13 21:01:08,188.188 INFO    ] 2026-06-13 21:01:08
[2026-06-13 21:01:08,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:01:08,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:01:08,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:01:08,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:01:08,608.608 INFO    ] time= 13/06/2026 21:01:08
[2026-06-13 21:01:08,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:01:08,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:01:08,705.705 INFO    ] No existing commands found in stream
[2026-06-13 21:01:13,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:13,717.717 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 21:01:16,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:01:16,571.571 INFO    ] Checking for system updates...
[2026-06-13 21:01:16,593.593 INFO    ] 200
[2026-06-13 21:01:16,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:16,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:16,629.629 INFO    ] No update needed
[2026-06-13 21:01:16,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 21:01:16,650.650 INFO    ] 200
[2026-06-13 21:01:16,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:16,675.675 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:01:16,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:16,721.721 INFO    ] No camera update needed
[2026-06-13 21:01:16,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:01:16,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:01:16,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:01:16,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:01:18,768.768 INFO    ] ================================================
[2026-06-13 21:01:18,784.784 INFO    ] Launching Daemon at Sat Jun 13 21:01:18 IST 2026
[2026-06-13 21:01:18,794.794 INFO    ] ================================================
[2026-06-13 21:01:19,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:01:19
[2026-06-13 21:01:19,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:01:19,649.649 INFO    ] Initializing speech engine...
[2026-06-13 21:01:19,655.655 INFO    ] 2026-06-13 21:01:19
[2026-06-13 21:01:19,861.861 INFO    ] 2026-06-13 21:01:19
[2026-06-13 21:01:19,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:01:20,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:01:20,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:01:20,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:01:20,278.278 INFO    ] time= 13/06/2026 21:01:20
[2026-06-13 21:01:20,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:01:20,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:01:20,379.379 INFO    ] No existing commands found in stream
[2026-06-13 21:01:25,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:25,396.396 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 21:01:28,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:01:28,698.698 INFO    ] Checking for system updates...
[2026-06-13 21:01:28,719.719 INFO    ] 200
[2026-06-13 21:01:28,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:28,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:01:28,754.754 INFO    ] No update needed
[2026-06-13 21:01:28,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 21:01:28,775.775 INFO    ] 200
[2026-06-13 21:01:28,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:28,800.800 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:01:28,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:01:28,840.840 INFO    ] No camera update needed
[2026-06-13 21:01:28,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:01:28,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:01:28,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:01:28,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:01:30,889.889 INFO    ] ================================================
[2026-06-13 21:01:30,904.904 INFO    ] Launching Daemon at Sat Jun 13 21:01:30 IST 2026
[2026-06-13 21:01:30,915.915 INFO    ] ================================================
[2026-06-13 21:01:31,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:01:31
[2026-06-13 21:01:31,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:01:31,779.779 INFO    ] Initializing speech engine...
[2026-06-13 21:01:31,784.784 INFO    ] 2026-06-13 21:01:31
[2026-06-13 21:01:32,010.010 INFO    ] 2026-06-13 21:01:31
[2026-06-13 21:01:32,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:01:32,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:01:32,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:01:32,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:01:32,424.424 INFO    ] time= 13/06/2026 21:01:32
[2026-06-13 21:01:32,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:01:32,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:01:32,545.545 INFO    ] No existing commands found in stream
[2026-06-13 21:01:37,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:37,559.559 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 21:01:39,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:01:39,801.801 INFO    ] Checking for system updates...
[2026-06-13 21:01:39,842.842 INFO    ] 200
[2026-06-13 21:01:39,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:39,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:39,903.903 INFO    ] No update needed
[2026-06-13 21:01:39,905.905 INFO    ] Checking for camera pi updates...
[2026-06-13 21:01:39,940.940 INFO    ] 200
[2026-06-13 21:01:39,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:39,974.974 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:01:40,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:40,016.016 INFO    ] No camera update needed
[2026-06-13 21:01:40,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:01:40,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:01:40,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:01:40,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:01:42,064.064 INFO    ] ================================================
[2026-06-13 21:01:42,079.079 INFO    ] Launching Daemon at Sat Jun 13 21:01:42 IST 2026
[2026-06-13 21:01:42,090.090 INFO    ] ================================================
[2026-06-13 21:01:42,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:01:42
[2026-06-13 21:01:42,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:01:42,917.917 INFO    ] Initializing speech engine...
[2026-06-13 21:01:42,922.922 INFO    ] 2026-06-13 21:01:42
[2026-06-13 21:01:43,127.127 INFO    ] 2026-06-13 21:01:43
[2026-06-13 21:01:43,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:01:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:01:43,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:01:43,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:01:43,524.524 INFO    ] time= 13/06/2026 21:01:43
[2026-06-13 21:01:43,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:01:43,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:01:43,641.641 INFO    ] No existing commands found in stream
[2026-06-13 21:01:48,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:48,653.653 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 21:01:48,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:01:48,948.948 INFO    ] Checking for system updates...
[2026-06-13 21:01:48,970.970 INFO    ] 200
[2026-06-13 21:01:48,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:49,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:49,006.006 INFO    ] No update needed
[2026-06-13 21:01:49,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 21:01:49,031.031 INFO    ] 200
[2026-06-13 21:01:49,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:01:49,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:01:49,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:01:49,104.104 INFO    ] No camera update needed
[2026-06-13 21:01:49,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:01:49,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:01:49,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:01:49,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:01:51,151.151 INFO    ] ================================================
[2026-06-13 21:01:51,167.167 INFO    ] Launching Daemon at Sat Jun 13 21:01:51 IST 2026
[2026-06-13 21:01:51,178.178 INFO    ] ================================================
[2026-06-13 21:01:51,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:01:51
[2026-06-13 21:01:51,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:01:51,997.997 INFO    ] Initializing speech engine...
[2026-06-13 21:01:52,007.007 INFO    ] 2026-06-13 21:01:51
[2026-06-13 21:01:52,210.210 INFO    ] 2026-06-13 21:01:52
[2026-06-13 21:01:52,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:01:52,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:01:52,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:01:52,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:01:52,611.611 INFO    ] time= 13/06/2026 21:01:52
[2026-06-13 21:01:52,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:01:52,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:01:52,727.727 INFO    ] No existing commands found in stream
[2026-06-13 21:01:57,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:01:57,744.744 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 21:02:00,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:02:00,554.554 INFO    ] Checking for system updates...
[2026-06-13 21:02:00,574.574 INFO    ] 200
[2026-06-13 21:02:00,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:00,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:02:00,608.608 INFO    ] No update needed
[2026-06-13 21:02:00,609.609 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:00,629.629 INFO    ] 200
[2026-06-13 21:02:00,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:00,653.653 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:00,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:00,695.695 INFO    ] No camera update needed
[2026-06-13 21:02:00,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:00,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:00,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:00,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:02,745.745 INFO    ] ================================================
[2026-06-13 21:02:02,765.765 INFO    ] Launching Daemon at Sat Jun 13 21:02:02 IST 2026
[2026-06-13 21:02:02,780.780 INFO    ] ================================================
[2026-06-13 21:02:03,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:03
[2026-06-13 21:02:03,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:04,273.273 INFO    ] Initializing speech engine...
[2026-06-13 21:02:04,280.280 INFO    ] 2026-06-13 21:02:04
[2026-06-13 21:02:04,542.542 INFO    ] 2026-06-13 21:02:04
[2026-06-13 21:02:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:04,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:04,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:04,905.905 INFO    ] time= 13/06/2026 21:02:04
[2026-06-13 21:02:04,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:04,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:05,027.027 INFO    ] No existing commands found in stream
[2026-06-13 21:02:10,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:02:10,041.041 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 21:02:12,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:02:12,225.225 INFO    ] Checking for system updates...
[2026-06-13 21:02:12,247.247 INFO    ] 200
[2026-06-13 21:02:12,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:12,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:12,280.280 INFO    ] No update needed
[2026-06-13 21:02:12,282.282 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:12,301.301 INFO    ] 200
[2026-06-13 21:02:12,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:12,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:12,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:12,375.375 INFO    ] No camera update needed
[2026-06-13 21:02:12,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:12,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:12,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:12,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:14,421.421 INFO    ] ================================================
[2026-06-13 21:02:14,436.436 INFO    ] Launching Daemon at Sat Jun 13 21:02:14 IST 2026
[2026-06-13 21:02:14,447.447 INFO    ] ================================================
[2026-06-13 21:02:14,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:14
[2026-06-13 21:02:15,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:15,258.258 INFO    ] Initializing speech engine...
[2026-06-13 21:02:15,266.266 INFO    ] 2026-06-13 21:02:15
[2026-06-13 21:02:15,475.475 INFO    ] 2026-06-13 21:02:15
[2026-06-13 21:02:15,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:15,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:15,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:15,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:15,896.896 INFO    ] time= 13/06/2026 21:02:15
[2026-06-13 21:02:15,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:15,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:15,995.995 INFO    ] No existing commands found in stream
[2026-06-13 21:02:21,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:02:21,009.009 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 21:02:22,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:02:22,780.780 INFO    ] Checking for system updates...
[2026-06-13 21:02:22,802.802 INFO    ] 200
[2026-06-13 21:02:22,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:22,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:22,838.838 INFO    ] No update needed
[2026-06-13 21:02:22,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:22,859.859 INFO    ] 200
[2026-06-13 21:02:22,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:22,885.885 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:23,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:23,035.035 INFO    ] No camera update needed
[2026-06-13 21:02:23,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:23,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:23,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:25,083.083 INFO    ] ================================================
[2026-06-13 21:02:25,098.098 INFO    ] Launching Daemon at Sat Jun 13 21:02:25 IST 2026
[2026-06-13 21:02:25,109.109 INFO    ] ================================================
[2026-06-13 21:02:25,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:25
[2026-06-13 21:02:25,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:25,894.894 INFO    ] Initializing speech engine...
[2026-06-13 21:02:25,898.898 INFO    ] 2026-06-13 21:02:25
[2026-06-13 21:02:26,126.126 INFO    ] 2026-06-13 21:02:26
[2026-06-13 21:02:26,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:26,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:26,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:26,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:26,541.541 INFO    ] time= 13/06/2026 21:02:26
[2026-06-13 21:02:26,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:26,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:26,669.669 INFO    ] No existing commands found in stream
[2026-06-13 21:02:31,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:02:31,683.683 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-13 21:02:32,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:02:32,089.089 INFO    ] Checking for system updates...
[2026-06-13 21:02:32,118.118 INFO    ] 200
[2026-06-13 21:02:32,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:32,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:02:32,157.157 INFO    ] No update needed
[2026-06-13 21:02:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:32,181.181 INFO    ] 200
[2026-06-13 21:02:32,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:32,210.210 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:32,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:02:32,236.236 INFO    ] No camera update needed
[2026-06-13 21:02:32,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:32,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:32,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:32,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:34,279.279 INFO    ] ================================================
[2026-06-13 21:02:34,294.294 INFO    ] Launching Daemon at Sat Jun 13 21:02:34 IST 2026
[2026-06-13 21:02:34,305.305 INFO    ] ================================================
[2026-06-13 21:02:34,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:34
[2026-06-13 21:02:34,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:35,103.103 INFO    ] Initializing speech engine...
[2026-06-13 21:02:35,108.108 INFO    ] 2026-06-13 21:02:35
[2026-06-13 21:02:35,311.311 INFO    ] 2026-06-13 21:02:35
[2026-06-13 21:02:35,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:35,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:35,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:35,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:35,711.711 INFO    ] time= 13/06/2026 21:02:35
[2026-06-13 21:02:35,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:35,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:35,926.926 INFO    ] No existing commands found in stream
[2026-06-13 21:02:40,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:02:40,944.944 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 21:02:41,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:02:41,904.904 INFO    ] Checking for system updates...
[2026-06-13 21:02:41,925.925 INFO    ] 200
[2026-06-13 21:02:41,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:41,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:02:41,960.960 INFO    ] No update needed
[2026-06-13 21:02:41,962.962 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:41,981.981 INFO    ] 200
[2026-06-13 21:02:41,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:42,006.006 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:42,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:02:42,045.045 INFO    ] No camera update needed
[2026-06-13 21:02:42,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:42,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:42,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:42,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:44,093.093 INFO    ] ================================================
[2026-06-13 21:02:44,109.109 INFO    ] Launching Daemon at Sat Jun 13 21:02:44 IST 2026
[2026-06-13 21:02:44,121.121 INFO    ] ================================================
[2026-06-13 21:02:44,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:44
[2026-06-13 21:02:44,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:44,952.952 INFO    ] Initializing speech engine...
[2026-06-13 21:02:44,956.956 INFO    ] 2026-06-13 21:02:44
[2026-06-13 21:02:45,161.161 INFO    ] 2026-06-13 21:02:45
[2026-06-13 21:02:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:45,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:45,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:45,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:45,554.554 INFO    ] time= 13/06/2026 21:02:45
[2026-06-13 21:02:45,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:45,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:45,674.674 INFO    ] No existing commands found in stream
[2026-06-13 21:02:50,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:02:50,686.686 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 21:02:54,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:02:54,803.803 INFO    ] Checking for system updates...
[2026-06-13 21:02:54,824.824 INFO    ] 200
[2026-06-13 21:02:54,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:54,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:54,865.865 INFO    ] No update needed
[2026-06-13 21:02:54,866.866 INFO    ] Checking for camera pi updates...
[2026-06-13 21:02:54,885.885 INFO    ] 200
[2026-06-13 21:02:54,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:02:54,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:02:54,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:02:54,947.947 INFO    ] No camera update needed
[2026-06-13 21:02:54,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:02:54,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:02:54,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:02:54,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:02:56,993.993 INFO    ] ================================================
[2026-06-13 21:02:57,009.009 INFO    ] Launching Daemon at Sat Jun 13 21:02:57 IST 2026
[2026-06-13 21:02:57,020.020 INFO    ] ================================================
[2026-06-13 21:02:57,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:02:57
[2026-06-13 21:02:57,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:02:57,849.849 INFO    ] Initializing speech engine...
[2026-06-13 21:02:57,854.854 INFO    ] 2026-06-13 21:02:57
[2026-06-13 21:02:58,096.096 INFO    ] 2026-06-13 21:02:58
[2026-06-13 21:02:58,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:02:58,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:02:58,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:02:58,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:02:58,532.532 INFO    ] time= 13/06/2026 21:02:58
[2026-06-13 21:02:58,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:02:58,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:02:58,683.683 INFO    ] No existing commands found in stream
[2026-06-13 21:03:03,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:03,701.701 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 21:03:06,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:03:06,029.029 INFO    ] Checking for system updates...
[2026-06-13 21:03:06,065.065 INFO    ] 200
[2026-06-13 21:03:06,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:06,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:06,106.106 INFO    ] No update needed
[2026-06-13 21:03:06,107.107 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:06,128.128 INFO    ] 200
[2026-06-13 21:03:06,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:06,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:06,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:06,197.197 INFO    ] No camera update needed
[2026-06-13 21:03:06,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:06,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:06,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:06,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:08,244.244 INFO    ] ================================================
[2026-06-13 21:03:08,260.260 INFO    ] Launching Daemon at Sat Jun 13 21:03:08 IST 2026
[2026-06-13 21:03:08,272.272 INFO    ] ================================================
[2026-06-13 21:03:08,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:03:08
[2026-06-13 21:03:08,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:03:09,042.042 INFO    ] Initializing speech engine...
[2026-06-13 21:03:09,055.055 INFO    ] 2026-06-13 21:03:09
[2026-06-13 21:03:09,262.262 INFO    ] 2026-06-13 21:03:09
[2026-06-13 21:03:09,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:03:09,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:03:09,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:03:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:03:09,679.679 INFO    ] time= 13/06/2026 21:03:09
[2026-06-13 21:03:09,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:03:09,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:03:09,780.780 INFO    ] No existing commands found in stream
[2026-06-13 21:03:14,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:14,797.797 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 21:03:16,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:03:16,929.929 INFO    ] Checking for system updates...
[2026-06-13 21:03:16,951.951 INFO    ] 200
[2026-06-13 21:03:16,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:16,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:03:16,984.984 INFO    ] No update needed
[2026-06-13 21:03:16,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:17,005.005 INFO    ] 200
[2026-06-13 21:03:17,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:17,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:17,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:17,068.068 INFO    ] No camera update needed
[2026-06-13 21:03:17,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:17,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:17,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:17,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:19,115.115 INFO    ] ================================================
[2026-06-13 21:03:19,131.131 INFO    ] Launching Daemon at Sat Jun 13 21:03:19 IST 2026
[2026-06-13 21:03:19,142.142 INFO    ] ================================================
[2026-06-13 21:03:19,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:03:19
[2026-06-13 21:03:19,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:03:19,908.908 INFO    ] Initializing speech engine...
[2026-06-13 21:03:19,917.917 INFO    ] 2026-06-13 21:03:19
[2026-06-13 21:03:20,130.130 INFO    ] 2026-06-13 21:03:20
[2026-06-13 21:03:20,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:03:20,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:03:20,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:03:20,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:03:20,550.550 INFO    ] time= 13/06/2026 21:03:20
[2026-06-13 21:03:20,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:03:20,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:03:20,704.704 INFO    ] No existing commands found in stream
[2026-06-13 21:03:25,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:25,742.742 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 21:03:28,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:03:28,078.078 INFO    ] Checking for system updates...
[2026-06-13 21:03:28,102.102 INFO    ] 200
[2026-06-13 21:03:28,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:28,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:03:28,142.142 INFO    ] No update needed
[2026-06-13 21:03:28,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:28,168.168 INFO    ] 200
[2026-06-13 21:03:28,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:28,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:28,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:03:28,248.248 INFO    ] No camera update needed
[2026-06-13 21:03:28,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:28,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:28,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:28,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:30,290.290 INFO    ] ================================================
[2026-06-13 21:03:30,306.306 INFO    ] Launching Daemon at Sat Jun 13 21:03:30 IST 2026
[2026-06-13 21:03:30,317.317 INFO    ] ================================================
[2026-06-13 21:03:30,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:03:30
[2026-06-13 21:03:31,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:03:31,139.139 INFO    ] Initializing speech engine...
[2026-06-13 21:03:31,147.147 INFO    ] 2026-06-13 21:03:31
[2026-06-13 21:03:31,360.360 INFO    ] 2026-06-13 21:03:31
[2026-06-13 21:03:31,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:03:31,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:03:31,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:03:31,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:03:31,837.837 INFO    ] time= 13/06/2026 21:03:31
[2026-06-13 21:03:31,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:03:31,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:03:32,030.030 INFO    ] No existing commands found in stream
[2026-06-13 21:03:37,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:37,059.059 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 21:03:37,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:03:37,789.789 INFO    ] Checking for system updates...
[2026-06-13 21:03:37,811.811 INFO    ] 200
[2026-06-13 21:03:37,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:37,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:37,846.846 INFO    ] No update needed
[2026-06-13 21:03:37,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:37,867.867 INFO    ] 200
[2026-06-13 21:03:37,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:37,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:37,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:37,933.933 INFO    ] No camera update needed
[2026-06-13 21:03:37,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:37,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:37,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:37,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:39,980.980 INFO    ] ================================================
[2026-06-13 21:03:40,997.997 INFO    ] Launching Daemon at Sat Jun 13 21:03:39 IST 2026
[2026-06-13 21:03:40,007.007 INFO    ] ================================================
[2026-06-13 21:03:40,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:03:40
[2026-06-13 21:03:40,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:03:40,902.902 INFO    ] Initializing speech engine...
[2026-06-13 21:03:40,908.908 INFO    ] 2026-06-13 21:03:40
[2026-06-13 21:03:41,107.107 INFO    ] 2026-06-13 21:03:41
[2026-06-13 21:03:41,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:03:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:03:41,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:03:41,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:03:41,500.500 INFO    ] time= 13/06/2026 21:03:41
[2026-06-13 21:03:41,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:03:41,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:03:41,734.734 INFO    ] No existing commands found in stream
[2026-06-13 21:03:46,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:46,758.758 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 21:03:48,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:03:48,165.165 INFO    ] Checking for system updates...
[2026-06-13 21:03:48,188.188 INFO    ] 200
[2026-06-13 21:03:48,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:48,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:03:48,223.223 INFO    ] No update needed
[2026-06-13 21:03:48,224.224 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:48,244.244 INFO    ] 200
[2026-06-13 21:03:48,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:48,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:48,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:03:48,307.307 INFO    ] No camera update needed
[2026-06-13 21:03:48,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:48,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:48,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:48,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:50,355.355 INFO    ] ================================================
[2026-06-13 21:03:50,371.371 INFO    ] Launching Daemon at Sat Jun 13 21:03:50 IST 2026
[2026-06-13 21:03:50,382.382 INFO    ] ================================================
[2026-06-13 21:03:50,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:03:50
[2026-06-13 21:03:51,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:03:51,186.186 INFO    ] Initializing speech engine...
[2026-06-13 21:03:51,197.197 INFO    ] 2026-06-13 21:03:51
[2026-06-13 21:03:51,403.403 INFO    ] 2026-06-13 21:03:51
[2026-06-13 21:03:51,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:03:51,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:03:51,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:03:51,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:03:51,806.806 INFO    ] time= 13/06/2026 21:03:51
[2026-06-13 21:03:51,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:03:51,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:03:51,923.923 INFO    ] No existing commands found in stream
[2026-06-13 21:03:56,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:03:56,935.935 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 21:03:57,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:03:57,379.379 INFO    ] Checking for system updates...
[2026-06-13 21:03:57,405.405 INFO    ] 200
[2026-06-13 21:03:57,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:57,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:57,439.439 INFO    ] No update needed
[2026-06-13 21:03:57,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 21:03:57,460.460 INFO    ] 200
[2026-06-13 21:03:57,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:03:57,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:03:57,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:03:57,522.522 INFO    ] No camera update needed
[2026-06-13 21:03:57,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:03:57,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:03:57,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:03:57,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:03:59,569.569 INFO    ] ================================================
[2026-06-13 21:03:59,585.585 INFO    ] Launching Daemon at Sat Jun 13 21:03:59 IST 2026
[2026-06-13 21:03:59,596.596 INFO    ] ================================================
[2026-06-13 21:04:00,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:04:00
[2026-06-13 21:04:00,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:04:00,985.985 INFO    ] Initializing speech engine...
[2026-06-13 21:04:00,994.994 INFO    ] 2026-06-13 21:04:00
[2026-06-13 21:04:01,245.245 INFO    ] 2026-06-13 21:04:01
[2026-06-13 21:04:01,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:04:01,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:04:01,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:04:01,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:04:01,639.639 INFO    ] time= 13/06/2026 21:04:01
[2026-06-13 21:04:01,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:04:01,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:04:01,713.713 INFO    ] No existing commands found in stream
[2026-06-13 21:04:06,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:04:06,726.726 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 21:04:09,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:04:09,844.844 INFO    ] Checking for system updates...
[2026-06-13 21:04:09,864.864 INFO    ] 200
[2026-06-13 21:04:09,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:09,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:04:09,897.897 INFO    ] No update needed
[2026-06-13 21:04:09,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 21:04:09,919.919 INFO    ] 200
[2026-06-13 21:04:09,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:09,944.944 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:04:09,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:04:09,982.982 INFO    ] No camera update needed
[2026-06-13 21:04:09,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:04:09,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:04:09,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:04:09,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:04:12,029.029 INFO    ] ================================================
[2026-06-13 21:04:12,045.045 INFO    ] Launching Daemon at Sat Jun 13 21:04:12 IST 2026
[2026-06-13 21:04:12,056.056 INFO    ] ================================================
[2026-06-13 21:04:12,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:04:12
[2026-06-13 21:04:12,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:04:12,881.881 INFO    ] Initializing speech engine...
[2026-06-13 21:04:12,886.886 INFO    ] 2026-06-13 21:04:12
[2026-06-13 21:04:13,091.091 INFO    ] 2026-06-13 21:04:13
[2026-06-13 21:04:13,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:04:13,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:04:13,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:04:13,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:04:13,511.511 INFO    ] time= 13/06/2026 21:04:13
[2026-06-13 21:04:13,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:04:13,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:04:13,608.608 INFO    ] No existing commands found in stream
[2026-06-13 21:04:18,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:04:18,621.621 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 21:04:21,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:04:21,996.996 INFO    ] Checking for system updates...
[2026-06-13 21:04:22,017.017 INFO    ] 200
[2026-06-13 21:04:22,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:22,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:04:22,052.052 INFO    ] No update needed
[2026-06-13 21:04:22,053.053 INFO    ] Checking for camera pi updates...
[2026-06-13 21:04:22,076.076 INFO    ] 200
[2026-06-13 21:04:22,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:22,101.101 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:04:22,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:04:22,142.142 INFO    ] No camera update needed
[2026-06-13 21:04:22,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:04:22,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:04:22,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:04:22,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:04:24,190.190 INFO    ] ================================================
[2026-06-13 21:04:24,206.206 INFO    ] Launching Daemon at Sat Jun 13 21:04:24 IST 2026
[2026-06-13 21:04:24,217.217 INFO    ] ================================================
[2026-06-13 21:04:24,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:04:24
[2026-06-13 21:04:24,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:04:24,993.993 INFO    ] Initializing speech engine...
[2026-06-13 21:04:24,998.998 INFO    ] 2026-06-13 21:04:24
[2026-06-13 21:04:25,229.229 INFO    ] 2026-06-13 21:04:25
[2026-06-13 21:04:25,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:04:25,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:04:25,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:04:25,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:04:25,658.658 INFO    ] time= 13/06/2026 21:04:25
[2026-06-13 21:04:25,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:04:25,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:04:25,779.779 INFO    ] No existing commands found in stream
[2026-06-13 21:04:30,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:04:30,792.792 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 21:04:34,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:04:34,694.694 INFO    ] Checking for system updates...
[2026-06-13 21:04:34,714.714 INFO    ] 200
[2026-06-13 21:04:34,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:34,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:04:34,748.748 INFO    ] No update needed
[2026-06-13 21:04:34,749.749 INFO    ] Checking for camera pi updates...
[2026-06-13 21:04:34,769.769 INFO    ] 200
[2026-06-13 21:04:34,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:34,794.794 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:04:34,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:04:34,829.829 INFO    ] No camera update needed
[2026-06-13 21:04:34,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:04:34,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:04:34,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:04:34,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:04:36,876.876 INFO    ] ================================================
[2026-06-13 21:04:36,892.892 INFO    ] Launching Daemon at Sat Jun 13 21:04:36 IST 2026
[2026-06-13 21:04:36,902.902 INFO    ] ================================================
[2026-06-13 21:04:37,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:04:37
[2026-06-13 21:04:37,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:04:37,759.759 INFO    ] Initializing speech engine...
[2026-06-13 21:04:37,765.765 INFO    ] 2026-06-13 21:04:37
[2026-06-13 21:04:37,972.972 INFO    ] 2026-06-13 21:04:37
[2026-06-13 21:04:38,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:04:38,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:04:38,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:04:38,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:04:38,391.391 INFO    ] time= 13/06/2026 21:04:38
[2026-06-13 21:04:38,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:04:38,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:04:38,487.487 INFO    ] No existing commands found in stream
[2026-06-13 21:04:39,005.005 INFO    ] Received new command: ID=1781364878805-0
[2026-06-13 21:04:39,009.009 INFO    ] process_and_cleanup_command: msg_id=1781364878805-0
[2026-06-13 21:04:39,011.011 INFO    ] is_command_expired: timestamp=2026-06-13T15:34:38.716Z, expiry=30s
[2026-06-13 21:04:39,088.088 INFO    ] Command removed from stream: 1781364878805-0. returning for processing...
[2026-06-13 21:04:39,107.107 INFO    ] ***** get_valid_command
[2026-06-13 21:04:39,122.122 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1781364878716-x1iexdih7","orderId":"TM08202203260613210357638","is_vending":false}', 'timeout': '10', 'timestamp': '2026-06-13T15:34:38.716Z', 'source': 'webapp'}
[2026-06-13 21:04:39,130.130 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613210357638', 'is_vending': False, 'request_id': 'start-order-1781364878716-x1iexdih7'}
[2026-06-13 21:04:39,147.147 INFO    ] Handling start order...
[2026-06-13 21:04:39,194.194 INFO    ] handle_start_order_command
[2026-06-13 21:04:39,213.213 INFO    ] _send_start_order_success: request_id=start-order-1781364878716-x1iexdih7, order_id=TM08202203260613210357638
[2026-06-13 21:04:39,250.250 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 21:04:39,330.330 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781364879265-0
[2026-06-13 21:04:39,342.342 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 21:04:39,360.360 INFO    ] Checking for system updates...
[2026-06-13 21:04:39,460.460 INFO    ] 200
[2026-06-13 21:04:39,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:39,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:04:39,587.587 INFO    ] No update needed
[2026-06-13 21:04:39,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 21:04:39,673.673 INFO    ] 200
[2026-06-13 21:04:39,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:39,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:04:39,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:04:39,875.875 INFO    ] No camera update needed
[2026-06-13 21:04:39,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:04:39,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:04:39,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:04:39,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:04:41,962.962 INFO    ] ================================================
[2026-06-13 21:04:41,976.976 INFO    ] Launching Daemon at Sat Jun 13 21:04:41 IST 2026
[2026-06-13 21:04:41,987.987 INFO    ] ================================================
[2026-06-13 21:04:42,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:04:42
[2026-06-13 21:04:42,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:04:42,825.825 INFO    ] Initializing speech engine...
[2026-06-13 21:04:42,830.830 INFO    ] 2026-06-13 21:04:42
[2026-06-13 21:04:43,049.049 INFO    ] 2026-06-13 21:04:43
[2026-06-13 21:04:43,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:04:43,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:04:43,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:04:43,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:04:43,458.458 INFO    ] time= 13/06/2026 21:04:43
[2026-06-13 21:04:43,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:04:43,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:04:43,573.573 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 21:04:43,595.595 INFO    ] Checking historical command: ID=1781364879265-0
[2026-06-13 21:04:43,600.600 INFO    ] process_and_cleanup_command: msg_id=1781364879265-0
[2026-06-13 21:04:43,626.626 INFO    ] is_command_expired: timestamp=2026-06-13T15:34:39.215056Z, expiry=30s
[2026-06-13 21:04:43,713.713 INFO    ] Command removed from stream: 1781364879265-0. returning for processing...
[2026-06-13 21:04:43,716.716 INFO    ] ***** get_valid_command
[2026-06-13 21:04:43,719.719 INFO    ] {'metadata_order_id': 'TM08202203260613210357638', 'message': 'start-order success', 'imei': 'TM08202203', 'status': 'success', 'metadata_request_id': 'start-order-1781364878716-x1iexdih7', 'message_type': 'command_response', 'timestamp': '2026-06-13T15:34:39.215056Z'}
[2026-06-13 21:04:43,723.723 INFO    ] Checking historical command: ID=1781364881810-0
[2026-06-13 21:04:43,727.727 INFO    ] process_and_cleanup_command: msg_id=1781364881810-0
[2026-06-13 21:04:43,731.731 INFO    ] is_command_expired: timestamp=2026-06-13T15:34:41.715Z, expiry=30s
[2026-06-13 21:04:43,773.773 INFO    ] Command removed from stream: 1781364881810-0. returning for processing...
[2026-06-13 21:04:43,776.776 INFO    ] ***** get_valid_command
[2026-06-13 21:04:43,779.779 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1781364881714-ynrqypols","orderId":"TM08202203260613210357638","is_vending":false,"accessCode":"99499686"}', 'command': 'process-order', 'timeout': '60', 'timestamp': '2026-06-13T15:34:41.715Z'}
[2026-06-13 21:04:43,782.782 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613210357638', 'accessCode': '99499686', 'request_id': 'process-order-1781364881714-ynrqypols', 'is_vending': False}
[2026-06-13 21:04:43,784.784 INFO    ] Handling process order...
[2026-06-13 21:04:43,788.788 INFO    ] Processing process-order command...
[2026-06-13 21:04:43,791.791 INFO    ] 🔍 Lock file Order ID: TM08202203260613210357638, TS: 2026-06-13 21:04:39
[2026-06-13 21:04:43,800.800 INFO    ] ✅ Order lock valid for TM08202203260613210357638
[2026-06-13 21:04:43,803.803 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 21:04:43,805.805 INFO    ] processing access code 99499686 for order TM08202203260613210357638
[2026-06-13 21:04:43,809.809 INFO    ] 🔍 Lock file Order ID: TM08202203260613210357638, TS: 2026-06-13 21:04:39
[2026-06-13 21:04:43,812.812 INFO    ] ✅ Order lock valid for TM08202203260613210357638
[2026-06-13 21:04:43,815.815 INFO    ] 2026-06-13 21:04:43
[2026-06-13 21:04:43,843.843 INFO    ] 200
[2026-06-13 21:04:43,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:04:43,851.851 INFO    ] 99499686
[2026-06-13 21:04:43,854.854 INFO    ] 2026-06-13 21:04:43
[2026-06-13 21:04:43,857.857 INFO    ] session id :392736185
[2026-06-13 21:04:43,861.861 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=99499686&imei=TM08202203&session_id=392736185
[2026-06-13 21:04:44,568.568 INFO    ] 200
[2026-06-13 21:04:44,579.579 INFO    ] {"data": {"mobile": "6366119104", "order_id": "TM08202203260613210357638", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "skuid": "4500706", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "MAA Mango flavoured Fruit drink 170ml", "tray_id": "41", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "99499686", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 21:04:44,589.589 INFO    ] 20
[2026-06-13 21:04:44,594.594 INFO    ] TM08202203260613210357638
[2026-06-13 21:04:44,602.602 INFO    ] 6366119104
[2026-06-13 21:04:44,607.607 INFO    ] 2026-06-13 21:04:44
[2026-06-13 21:04:44,614.614 INFO    ] Door Opening for user mobile ending with  nine one zero four 
[2026-06-13 21:04:44,615.615 INFO    ] Door Opening for user mobile ending with  nine one zero four 
[2026-06-13 21:04:44,617.617 INFO    ] 4c1acaf3a420c631a5baf58de6d97e1b
[2026-06-13 21:04:44,618.618 INFO    ] 2026-06-13 21:04:44
[2026-06-13 21:04:44,620.620 INFO    ] playing audio file
[2026-06-13 21:04:44,630.630 INFO    ] 2026-06-13 21:04:44
[2026-06-13 21:04:44,632.632 INFO    ] 2026-06-13 21:04:44
[2026-06-13 21:04:44,634.634 INFO    ] publish_status: order_id=TM08202203260613210357638
[2026-06-13 21:04:44,636.636 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210357638
[2026-06-13 21:04:44,690.690 INFO    ] [publish_status] Message added to stream with ID: 1781364884651-0
[2026-06-13 21:04:44,691.691 INFO    ] Published to order:TM08202203260613210357638: {'order_id': 'TM08202203260613210357638', 'server_status': 'order-started', 'timestamp': '2026-06-13T15:34:44.633268Z', 'server_response': '{"data": {"mobile": "6366119104", "access_code": "99499686", "order_id": "TM08202203260613210357638", "invoice_bill": "20", "proposed_sku_json": [{"tray_id": "41", "name": "MAA Mango flavoured Fruit drink 170ml", "skuid": "4500706", "offer_id": "", "offer_desc": "", "qty": 1, "door_id": "2", "mrp": "20", "image_url": "https://images.tinymart.in/product/4500706-1073.webp", "sku_total": 20, "unit_price": 20}], "bill_amount": "20"}, "status": true, "msg": "Order Data", "rstatus": true}'} (ID: 1781364884651-0)
[2026-06-13 21:04:44,991.991 INFO    ] {'order_id': 'TM08202203260613210357638', 'server_status': 'order-started', 'server_response': {'data': {'mobile': '6366119104', 'access_code': '99499686', 'order_id': 'TM08202203260613210357638', 'invoice_bill': '20', 'proposed_sku_json': [{'tray_id': '41', 'name': 'MAA Mango flavoured Fruit drink 170ml', 'skuid': '4500706', 'offer_id': '', 'offer_desc': '', 'qty': 1, 'door_id': '2', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'sku_total': 20, 'unit_price': 20}], 'bill_amount': '20'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}}
[2026-06-13 21:04:44,992.992 INFO    ] 200
[2026-06-13 21:04:44,994.994 INFO    ] {"data":{"order_id":"TM08202203260613210357638","server_status":"order-started","server_response":{"data":{"mobile":"6366119104","access_code":"99499686","order_id":"TM08202203260613210357638","invoice_bill":"20","proposed_sku_json":[{"tray_id":"41","name":"MAA Mango flavoured Fruit drink 170ml","skuid":"4500706","offer_id":"","offer_desc":"","qty":1,"door_id":"2","mrp":"20","image_url":"https:\/\/images.tinymart.in\/product\/4500706-1073.webp","sku_total":20,"unit_price":20}],"bill_amount":"20"},"status":true,"msg":"Order Data","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:04:44,995.995 INFO    ] {'data': {'order_id': 'TM08202203260613210357638', 'server_status': 'order-started', 'server_response': {'data': {'mobile': '6366119104', 'access_code': '99499686', 'order_id': 'TM08202203260613210357638', 'invoice_bill': '20', 'proposed_sku_json': [{'tray_id': '41', 'unit_price': 20, 'door_id': '2', 'skuid': '4500706', 'offer_desc': '', 'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'sku_total': 20, 'offer_id': ''}], 'bill_amount': '20'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 21:04:44,997.997 INFO    ] 2026-06-13 21:04:44
[2026-06-13 21:04:45,022.022 INFO    ] 200
[2026-06-13 21:04:45,024.024 INFO    ] True
[2026-06-13 21:04:45,127.127 INFO    ] 200
[2026-06-13 21:04:45,129.129 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 21:04:45,131.131 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 21:04:45,133.133 INFO    ] *** process_order ***
[2026-06-13 21:04:46,291.291 INFO    ] 200
[2026-06-13 21:04:46,292.292 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:04:46,293.293 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 21:04:46,295.295 INFO    ] *** process_order ***
[2026-06-13 21:04:46,296.296 INFO    ] publish_status: order_id=TM08202203260613210357638
[2026-06-13 21:04:46,297.297 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210357638
[2026-06-13 21:04:46,362.362 INFO    ] [publish_status] Message added to stream with ID: 1781364886322-0
[2026-06-13 21:04:46,363.363 INFO    ] Published to order:TM08202203260613210357638: {'order_id': 'TM08202203260613210357638', 'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now."}}'} (ID: 1781364886322-0)
[2026-06-13 21:04:47,409.409 INFO    ] 2026-06-13 21:04:47
[2026-06-13 21:04:47,411.411 INFO    ] publish_status: order_id=TM08202203260613210357638
[2026-06-13 21:04:47,414.414 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210357638
[2026-06-13 21:04:47,495.495 INFO    ] [publish_status] Message added to stream with ID: 1781364887455-0
[2026-06-13 21:04:47,498.498 INFO    ] Published to order:TM08202203260613210357638: {'order_id': 'TM08202203260613210357638', 'server_status': 'processOrder', 'timestamp': '2026-06-13T15:34:47.410364Z', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}}'} (ID: 1781364887455-0)
[2026-06-13 21:04:47,611.611 INFO    ] {'order_id': 'TM08202203260613210357638', 'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}}}
[2026-06-13 21:04:47,613.613 INFO    ] 200
[2026-06-13 21:04:47,614.614 INFO    ] {"data":{"order_id":"TM08202203260613210357638","server_status":"processOrder","server_response":{"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionStatus":{"Header":" Your order is under process  ","Note":"","UI_Header":"","SubHeader":"Please wait while we process your order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:04:47,616.616 INFO    ] {'data': {'order_id': 'TM08202203260613210357638', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 21:04:47,618.618 INFO    ] 2026-06-13 21:04:47
[2026-06-13 21:04:47,620.620 INFO    ] None
[2026-06-13 21:04:47,622.622 INFO    ] Opening Door now
[2026-06-13 21:04:47,623.623 INFO    ] Opening Door now
[2026-06-13 21:04:47,624.624 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 21:04:47,626.626 INFO    ] 2026-06-13 21:04:47
[2026-06-13 21:04:47,628.628 INFO    ] playing audio file
[2026-06-13 21:04:47,639.639 INFO    ] 2026-06-13 21:04:47
[2026-06-13 21:04:47,641.641 INFO    ] 2026-06-13 21:04:47
[2026-06-13 21:04:50,741.741 INFO    ] 200
[2026-06-13 21:04:50,743.743 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:04:50,747.747 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 21:04:53,778.778 INFO    ] 200
[2026-06-13 21:04:53,779.779 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:04:53,781.781 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 21:04:56,834.834 INFO    ] 200
[2026-06-13 21:04:56,837.837 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:04:56,842.842 INFO    ] Please close door 2
[2026-06-13 21:04:56,845.845 INFO    ] Please close door 2
[2026-06-13 21:04:56,860.860 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 21:04:56,864.864 INFO    ] 2026-06-13 21:04:56
[2026-06-13 21:04:56,870.870 INFO    ] playing audio file
[2026-06-13 21:04:56,899.899 INFO    ] 2026-06-13 21:04:56
[2026-06-13 21:04:56,903.903 INFO    ] publish_status: order_id=TM08202203260613210357638
[2026-06-13 21:04:56,905.905 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210357638
[2026-06-13 21:04:56,969.969 INFO    ] [publish_status] Message added to stream with ID: 1781364896929-0
[2026-06-13 21:04:56,972.972 INFO    ] Published to order:TM08202203260613210357638: {'order_id': 'TM08202203260613210357638', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T15:34:56.901368Z', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "rstatus": false, "voiceNote": "Please close door 2", "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}}'} (ID: 1781364896929-0)
[2026-06-13 21:04:57,411.411 INFO    ] {'order_id': 'TM08202203260613210357638', 'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}}}
[2026-06-13 21:04:57,414.414 INFO    ] 200
[2026-06-13 21:04:57,417.417 INFO    ] {"data":{"order_id":"TM08202203260613210357638","server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"rstatus":false,"voiceNote":"Please close door 2","status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"MAA Mango flavoured Fruit drink 170ml"}]},"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:04:57,421.421 INFO    ] {'data': {'order_id': 'TM08202203260613210357638', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 21:04:57,425.425 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 21:05:00,515.515 INFO    ] 200
[2026-06-13 21:05:00,517.517 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 2 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:05:00,521.521 INFO    ] {'SectionMain': {'Header': 'Door Close'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}]}, 'delay': 1000, 'rstatus': False, 'voiceNote': 'Door 2 is closed now', 'status': 'False', 'SectionStatus': {'Header': 'Door 2 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 21:05:03,576.576 INFO    ] 200
[2026-06-13 21:05:03,578.578 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:05:03,581.581 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 21:05:03,584.584 INFO    ] 2026-06-13 21:05:03
[2026-06-13 21:05:03,586.586 INFO    ] Order Completed 
[2026-06-13 21:05:03,591.591 INFO    ] Order Completed 
[2026-06-13 21:05:03,594.594 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 21:05:03,597.597 INFO    ] 2026-06-13 21:05:03
[2026-06-13 21:05:03,600.600 INFO    ] playing audio file
[2026-06-13 21:05:03,618.618 INFO    ] 2026-06-13 21:05:03
[2026-06-13 21:05:03,622.622 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-13 21:05:03,625.625 INFO    ] 2026-06-13 21:05:03
[2026-06-13 21:05:04,155.155 INFO    ] 200
[2026-06-13 21:05:04,158.158 INFO    ] {"res": true, "bill_amount": 20, "orderId": "TM08202203260613210357638", "skus": [{"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "unit_price": "20", "door_id": "", "mrp": "20", "name": "MAA Mango flavoured Fruit drink 170ml per peice", "skuid": "4500706", "tray_id": "41", "sku_total": 20, "qty": 1, "offer_id": ""}], "cart_offer_desc": "", "anomaly": 0, "total_amount": 20, "order_status": "", "userId": "6366119104", "rstatus": true, "imei": "TM08202203"}
[2026-06-13 21:05:04,161.161 INFO    ] {'skus': [{'tray_id': '41', 'unit_price': '20', 'skuid': '4500706', 'offer_id': '', 'qty': 1, 'door_id': '', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'sku_total': 20}], 'res': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM08202203260613210357638', 'total_amount': 20, 'rstatus': True, 'imei': 'TM08202203', 'userId': '6366119104', 'bill_amount': 20, 'cart_offer_desc': ''}
[2026-06-13 21:05:04,169.169 INFO    ] {'skus': [{'tray_id': '41', 'unit_price': '20', 'skuid': '4500706', 'offer_id': '', 'qty': 1, 'door_id': '', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'sku_total': 20}], 'res': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM08202203260613210357638', 'total_amount': 20, 'rstatus': True, 'imei': 'TM08202203', 'userId': '6366119104', 'bill_amount': 20, 'cart_offer_desc': ''}
[2026-06-13 21:05:04,172.172 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,175.175 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,178.178 INFO    ] 20
[2026-06-13 21:05:04,181.181 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,184.184 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,188.188 INFO    ]  Your Bill Amount is 20
[2026-06-13 21:05:04,191.191 INFO    ]  Your Bill Amount is 20
[2026-06-13 21:05:04,194.194 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 21:05:04,197.197 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,200.200 INFO    ] playing audio file
[2026-06-13 21:05:04,221.221 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,225.225 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:04,228.228 INFO    ] publish_status: order_id=TM08202203260613210357638
[2026-06-13 21:05:04,231.231 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210357638
[2026-06-13 21:05:04,297.297 INFO    ] [publish_status] Message added to stream with ID: 1781364904257-0
[2026-06-13 21:05:04,299.299 INFO    ] Published to order:TM08202203260613210357638: {'order_id': 'TM08202203260613210357638', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T15:35:04.226374Z', 'server_response': '{"skus": [{"tray_id": "41", "unit_price": "20", "skuid": "4500706", "offer_id": "", "qty": 1, "door_id": "", "mrp": "20", "image_url": "https://images.tinymart.in/product/4500706-1073.webp", "name": "MAA Mango flavoured Fruit drink 170ml per peice", "sku_total": 20}], "res": true, "anomaly": 0, "order_status": "", "orderId": "TM08202203260613210357638", "total_amount": 20, "rstatus": true, "imei": "TM08202203", "userId": "6366119104", "bill_amount": 20, "cart_offer_desc": ""}'} (ID: 1781364904257-0)
[2026-06-13 21:05:04,701.701 INFO    ] {'order_id': 'TM08202203260613210357638', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'tray_id': '41', 'unit_price': '20', 'skuid': '4500706', 'offer_id': '', 'qty': 1, 'door_id': '', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'sku_total': 20}], 'res': True, 'anomaly': 0, 'order_status': '', 'orderId': 'TM08202203260613210357638', 'total_amount': 20, 'rstatus': True, 'imei': 'TM08202203', 'userId': '6366119104', 'bill_amount': 20, 'cart_offer_desc': ''}}
[2026-06-13 21:05:04,702.702 INFO    ] 200
[2026-06-13 21:05:04,703.703 INFO    ] {"data":{"order_id":"TM08202203260613210357638","server_status":"invoiceOrder","server_response":{"skus":[{"tray_id":"41","unit_price":"20","skuid":"4500706","offer_id":"","qty":1,"door_id":"","mrp":"20","image_url":"https:\/\/images.tinymart.in\/product\/4500706-1073.webp","name":"MAA Mango flavoured Fruit drink 170ml per peice","sku_total":20}],"res":true,"anomaly":0,"order_status":"","orderId":"TM08202203260613210357638","total_amount":20,"rstatus":true,"imei":"TM08202203","userId":"6366119104","bill_amount":20,"cart_offer_desc":""}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:05:04,705.705 INFO    ] {'data': {'order_id': 'TM08202203260613210357638', 'server_status': 'invoiceOrder', 'server_response': {'order_status': '', 'cart_offer_desc': '', 'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'tray_id': '41', 'unit_price': '20', 'skuid': '4500706', 'qty': 1, 'sku_total': 20, 'door_id': '', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'offer_id': ''}], 'orderId': 'TM08202203260613210357638', 'imei': 'TM08202203', 'userId': '6366119104', 'bill_amount': 20, 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 21:05:04,707.707 INFO    ] {'data': {'order_id': 'TM08202203260613210357638', 'server_status': 'invoiceOrder', 'server_response': {'order_status': '', 'cart_offer_desc': '', 'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'tray_id': '41', 'unit_price': '20', 'skuid': '4500706', 'qty': 1, 'sku_total': 20, 'door_id': '', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'offer_id': ''}], 'orderId': 'TM08202203260613210357638', 'imei': 'TM08202203', 'userId': '6366119104', 'bill_amount': 20, 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-06-13 21:05:04,708.708 INFO    ] 2026-06-13 21:05:04
[2026-06-13 21:05:06,538.538 INFO    ] 200
[2026-06-13 21:05:06,542.542 INFO    ] {"tray_sync": [], "orders": [], "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"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 21:05:06,546.546 INFO    ] 2026-06-13 21:05:06
[2026-06-13 21:05:06,652.652 INFO    ] 200
[2026-06-13 21:05:06,655.655 INFO    ] True
[2026-06-13 21:05:06,657.657 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613210357638
[2026-06-13 21:05:06,661.661 INFO    ] start order file deleted
[2026-06-13 21:05:06,664.664 INFO    ] Checking for system updates...
[2026-06-13 21:05:06,698.698 INFO    ] 200
[2026-06-13 21:05:06,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:06,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:05:06,759.759 INFO    ] No update needed
[2026-06-13 21:05:06,761.761 INFO    ] Checking for camera pi updates...
[2026-06-13 21:05:06,796.796 INFO    ] 200
[2026-06-13 21:05:06,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:06,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:05:06,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:05:06,897.897 INFO    ] No camera update needed
[2026-06-13 21:05:06,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:05:06,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:05:06,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:05:06,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:05:08,957.957 INFO    ] ================================================
[2026-06-13 21:05:08,971.971 INFO    ] Launching Daemon at Sat Jun 13 21:05:08 IST 2026
[2026-06-13 21:05:08,982.982 INFO    ] ================================================
[2026-06-13 21:05:09,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:05:09
[2026-06-13 21:05:09,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:05:09,839.839 INFO    ] Initializing speech engine...
[2026-06-13 21:05:09,843.843 INFO    ] 2026-06-13 21:05:09
[2026-06-13 21:05:10,054.054 INFO    ] 2026-06-13 21:05:10
[2026-06-13 21:05:10,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:05:10,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:05:10,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:05:10,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:05:10,478.478 INFO    ] time= 13/06/2026 21:05:10
[2026-06-13 21:05:10,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:05:10,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:05:10,581.581 INFO    ] No existing commands found in stream
[2026-06-13 21:05:15,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:05:15,593.593 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 21:05:18,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:05:18,117.117 INFO    ] Checking for system updates...
[2026-06-13 21:05:18,139.139 INFO    ] 200
[2026-06-13 21:05:18,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:18,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:05:18,173.173 INFO    ] No update needed
[2026-06-13 21:05:18,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 21:05:18,196.196 INFO    ] 200
[2026-06-13 21:05:18,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:18,220.220 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:05:18,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:05:18,259.259 INFO    ] No camera update needed
[2026-06-13 21:05:18,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:05:18,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:05:18,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:05:18,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:05:20,305.305 INFO    ] ================================================
[2026-06-13 21:05:20,320.320 INFO    ] Launching Daemon at Sat Jun 13 21:05:20 IST 2026
[2026-06-13 21:05:20,332.332 INFO    ] ================================================
[2026-06-13 21:05:20,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:05:20
[2026-06-13 21:05:21,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:05:21,145.145 INFO    ] Initializing speech engine...
[2026-06-13 21:05:21,150.150 INFO    ] 2026-06-13 21:05:21
[2026-06-13 21:05:21,353.353 INFO    ] 2026-06-13 21:05:21
[2026-06-13 21:05:21,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:05:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:05:21,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:05:21,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:05:21,747.747 INFO    ] time= 13/06/2026 21:05:21
[2026-06-13 21:05:21,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:05:21,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:05:21,868.868 INFO    ] No existing commands found in stream
[2026-06-13 21:05:26,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:05:26,885.885 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 21:05:30,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:05:30,453.453 INFO    ] Checking for system updates...
[2026-06-13 21:05:30,490.490 INFO    ] 200
[2026-06-13 21:05:30,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:30,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:05:30,556.556 INFO    ] No update needed
[2026-06-13 21:05:30,557.557 INFO    ] Checking for camera pi updates...
[2026-06-13 21:05:30,577.577 INFO    ] 200
[2026-06-13 21:05:30,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:30,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:05:30,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:05:30,642.642 INFO    ] No camera update needed
[2026-06-13 21:05:30,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:05:30,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:05:30,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:05:30,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:05:32,686.686 INFO    ] ================================================
[2026-06-13 21:05:32,701.701 INFO    ] Launching Daemon at Sat Jun 13 21:05:32 IST 2026
[2026-06-13 21:05:32,712.712 INFO    ] ================================================
[2026-06-13 21:05:33,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:05:33
[2026-06-13 21:05:33,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:05:33,488.488 INFO    ] Initializing speech engine...
[2026-06-13 21:05:33,500.500 INFO    ] 2026-06-13 21:05:33
[2026-06-13 21:05:33,708.708 INFO    ] 2026-06-13 21:05:33
[2026-06-13 21:05:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:05:33,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:05:33,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:05:34,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:05:34,102.102 INFO    ] time= 13/06/2026 21:05:34
[2026-06-13 21:05:34,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:05:34,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:05:34,306.306 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 21:05:34,314.314 INFO    ] Checking historical command: ID=1781364933110-0
[2026-06-13 21:05:34,317.317 INFO    ] process_and_cleanup_command: msg_id=1781364933110-0
[2026-06-13 21:05:34,324.324 INFO    ] is_command_expired: timestamp=2026-06-13T15:35:32.909Z, expiry=30s
[2026-06-13 21:05:34,403.403 INFO    ] Command removed from stream: 1781364933110-0. returning for processing...
[2026-06-13 21:05:34,404.404 INFO    ] ***** get_valid_command
[2026-06-13 21:05:34,406.406 INFO    ] {'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1781364932909-70o4e9zvn","orderId":"TM08202203260613210455349","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-13T15:35:32.909Z'}
[2026-06-13 21:05:34,408.408 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613210455349', 'request_id': 'start-order-1781364932909-70o4e9zvn', 'is_vending': False}
[2026-06-13 21:05:34,456.456 INFO    ] Handling start order...
[2026-06-13 21:05:34,475.475 INFO    ] handle_start_order_command
[2026-06-13 21:05:34,489.489 INFO    ] _send_start_order_success: request_id=start-order-1781364932909-70o4e9zvn, order_id=TM08202203260613210455349
[2026-06-13 21:05:34,493.493 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 21:05:34,546.546 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781364934506-0
[2026-06-13 21:05:34,550.550 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 21:05:34,557.557 INFO    ] Checking for system updates...
[2026-06-13 21:05:34,596.596 INFO    ] 200
[2026-06-13 21:05:34,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:34,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:05:34,643.643 INFO    ] No update needed
[2026-06-13 21:05:34,645.645 INFO    ] Checking for camera pi updates...
[2026-06-13 21:05:34,672.672 INFO    ] 200
[2026-06-13 21:05:34,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:34,727.727 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:05:34,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:05:34,788.788 INFO    ] No camera update needed
[2026-06-13 21:05:34,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:05:34,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:05:34,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:05:34,804.804 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 21:05:34,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:05:36,852.852 INFO    ] ================================================
[2026-06-13 21:05:36,867.867 INFO    ] Launching Daemon at Sat Jun 13 21:05:36 IST 2026
[2026-06-13 21:05:36,878.878 INFO    ] ================================================
[2026-06-13 21:05:37,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:05:37
[2026-06-13 21:05:38,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:05:38,263.263 INFO    ] Initializing speech engine...
[2026-06-13 21:05:38,267.267 INFO    ] 2026-06-13 21:05:38
[2026-06-13 21:05:38,459.459 INFO    ] 2026-06-13 21:05:38
[2026-06-13 21:05:38,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:05:38,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:05:38,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:05:38,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:05:38,882.882 INFO    ] time= 13/06/2026 21:05:38
[2026-06-13 21:05:38,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:05:38,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:05:39,010.010 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 21:05:39,035.035 INFO    ] Checking historical command: ID=1781364934506-0
[2026-06-13 21:05:39,037.037 INFO    ] process_and_cleanup_command: msg_id=1781364934506-0
[2026-06-13 21:05:39,064.064 INFO    ] is_command_expired: timestamp=2026-06-13T15:35:34.490564Z, expiry=30s
[2026-06-13 21:05:39,148.148 INFO    ] Command removed from stream: 1781364934506-0. returning for processing...
[2026-06-13 21:05:39,151.151 INFO    ] ***** get_valid_command
[2026-06-13 21:05:39,154.154 INFO    ] {'metadata_request_id': 'start-order-1781364932909-70o4e9zvn', 'imei': 'TM08202203', 'message': 'start-order success', 'metadata_order_id': 'TM08202203260613210455349', 'status': 'success', 'message_type': 'command_response', 'timestamp': '2026-06-13T15:35:34.490564Z'}
[2026-06-13 21:05:39,158.158 INFO    ] Checking historical command: ID=1781364938835-0
[2026-06-13 21:05:39,163.163 INFO    ] process_and_cleanup_command: msg_id=1781364938835-0
[2026-06-13 21:05:39,166.166 INFO    ] is_command_expired: timestamp=2026-06-13T15:35:38.719Z, expiry=30s
[2026-06-13 21:05:39,214.214 INFO    ] Command removed from stream: 1781364938835-0. returning for processing...
[2026-06-13 21:05:39,218.218 INFO    ] ***** get_valid_command
[2026-06-13 21:05:39,220.220 INFO    ] {'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'timestamp': '2026-06-13T15:35:38.719Z', 'data': '{"request_id":"process-order-1781364938719-m8y385t64","orderId":"TM08202203260613210455349","is_vending":false,"accessCode":"30346613"}'}
[2026-06-13 21:05:39,223.223 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781364938719-m8y385t64', 'orderId': 'TM08202203260613210455349', 'accessCode': '30346613', 'is_vending': False}
[2026-06-13 21:05:39,226.226 INFO    ] Handling process order...
[2026-06-13 21:05:39,229.229 INFO    ] Processing process-order command...
[2026-06-13 21:05:39,233.233 INFO    ] 🔍 Lock file Order ID: TM08202203260613210455349, TS: 2026-06-13 21:05:34
[2026-06-13 21:05:39,243.243 INFO    ] ✅ Order lock valid for TM08202203260613210455349
[2026-06-13 21:05:39,245.245 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 21:05:39,248.248 INFO    ] processing access code 30346613 for order TM08202203260613210455349
[2026-06-13 21:05:39,252.252 INFO    ] 🔍 Lock file Order ID: TM08202203260613210455349, TS: 2026-06-13 21:05:34
[2026-06-13 21:05:39,256.256 INFO    ] ✅ Order lock valid for TM08202203260613210455349
[2026-06-13 21:05:39,259.259 INFO    ] 2026-06-13 21:05:39
[2026-06-13 21:05:39,289.289 INFO    ] 200
[2026-06-13 21:05:39,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:39,298.298 INFO    ] 30346613
[2026-06-13 21:05:39,304.304 INFO    ] 2026-06-13 21:05:39
[2026-06-13 21:05:39,308.308 INFO    ] session id :976481662
[2026-06-13 21:05:39,313.313 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=30346613&imei=TM08202203&session_id=976481662
[2026-06-13 21:05:40,140.140 INFO    ] 200
[2026-06-13 21:05:40,156.156 INFO    ] {"data": {"mobile": "9361861764", "order_id": "TM08202203260613210455349", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "30346613", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 21:05:40,162.162 INFO    ] 20
[2026-06-13 21:05:40,178.178 INFO    ] TM08202203260613210455349
[2026-06-13 21:05:40,186.186 INFO    ] 9361861764
[2026-06-13 21:05:40,194.194 INFO    ] 2026-06-13 21:05:40
[2026-06-13 21:05:40,201.201 INFO    ] Door Opening for user mobile ending with  one seven six four 
[2026-06-13 21:05:40,204.204 INFO    ] Door Opening for user mobile ending with  one seven six four 
[2026-06-13 21:05:40,206.206 INFO    ] 9c26a34790c5845c27f55e7654fd27aa
[2026-06-13 21:05:40,209.209 INFO    ] 2026-06-13 21:05:40
[2026-06-13 21:05:40,211.211 INFO    ] playing audio file
[2026-06-13 21:05:40,228.228 INFO    ] 2026-06-13 21:05:40
[2026-06-13 21:05:40,231.231 INFO    ] 2026-06-13 21:05:40
[2026-06-13 21:05:40,234.234 INFO    ] publish_status: order_id=TM08202203260613210455349
[2026-06-13 21:05:40,237.237 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210455349
[2026-06-13 21:05:40,287.287 INFO    ] [publish_status] Message added to stream with ID: 1781364940246-0
[2026-06-13 21:05:40,290.290 INFO    ] Published to order:TM08202203260613210455349: {'server_status': 'order-started', 'timestamp': '2026-06-13T15:35:40.233164Z', 'server_response': '{"msg": "Order Data", "status": true, "rstatus": true, "data": {"invoice_bill": "20", "bill_amount": "20", "order_id": "TM08202203260613210455349", "mobile": "9361861764", "proposed_sku_json": [{"door_id": "2", "sku_total": 20, "mrp": "20", "unit_price": 20, "offer_id": "", "skuid": "185993", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "qty": 1, "tray_id": "43"}], "access_code": "30346613"}}', 'order_id': 'TM08202203260613210455349'} (ID: 1781364940246-0)
[2026-06-13 21:05:40,723.723 INFO    ] {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'invoice_bill': '20', 'bill_amount': '20', 'order_id': 'TM08202203260613210455349', 'mobile': '9361861764', 'proposed_sku_json': [{'door_id': '2', 'sku_total': 20, 'mrp': '20', 'unit_price': 20, 'offer_id': '', 'skuid': '185993', 'offer_desc': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'access_code': '30346613'}}, 'order_id': 'TM08202203260613210455349'}
[2026-06-13 21:05:40,726.726 INFO    ] 200
[2026-06-13 21:05:40,728.728 INFO    ] {"data":{"server_status":"order-started","server_response":{"msg":"Order Data","status":true,"rstatus":true,"data":{"invoice_bill":"20","bill_amount":"20","order_id":"TM08202203260613210455349","mobile":"9361861764","proposed_sku_json":[{"door_id":"2","sku_total":20,"mrp":"20","unit_price":20,"offer_id":"","skuid":"185993","offer_desc":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","qty":1,"tray_id":"43"}],"access_code":"30346613"}},"order_id":"TM08202203260613210455349"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:05:40,732.732 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'invoice_bill': '20', 'bill_amount': '20', 'order_id': 'TM08202203260613210455349', 'mobile': '9361861764', 'proposed_sku_json': [{'door_id': '2', 'offer_desc': '', 'mrp': '20', 'unit_price': 20, 'offer_id': '', 'skuid': '185993', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'access_code': '30346613'}}, 'order_id': 'TM08202203260613210455349', 'server_status': 'order-started'}}
[2026-06-13 21:05:40,735.735 INFO    ] 2026-06-13 21:05:40
[2026-06-13 21:05:40,783.783 INFO    ] 200
[2026-06-13 21:05:40,785.785 INFO    ] True
[2026-06-13 21:05:40,978.978 INFO    ] 200
[2026-06-13 21:05:40,982.982 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 21:05:40,985.985 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False}
[2026-06-13 21:05:40,988.988 INFO    ] *** process_order ***
[2026-06-13 21:05:42,175.175 INFO    ] 200
[2026-06-13 21:05:42,178.178 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:05:42,181.181 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True}
[2026-06-13 21:05:42,183.183 INFO    ] *** process_order ***
[2026-06-13 21:05:42,186.186 INFO    ] publish_status: order_id=TM08202203260613210455349
[2026-06-13 21:05:42,188.188 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210455349
[2026-06-13 21:05:42,271.271 INFO    ] [publish_status] Message added to stream with ID: 1781364942231-0
[2026-06-13 21:05:42,273.273 INFO    ] Published to order:TM08202203260613210455349: {'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "voiceNote": "Door is open...", "status": "True", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'order_id': 'TM08202203260613210455349'} (ID: 1781364942231-0)
[2026-06-13 21:05:43,329.329 INFO    ] 2026-06-13 21:05:43
[2026-06-13 21:05:43,332.332 INFO    ] publish_status: order_id=TM08202203260613210455349
[2026-06-13 21:05:43,334.334 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210455349
[2026-06-13 21:05:43,417.417 INFO    ] [publish_status] Message added to stream with ID: 1781364943376-0
[2026-06-13 21:05:43,420.420 INFO    ] Published to order:TM08202203260613210455349: {'server_status': 'processOrder', 'timestamp': '2026-06-13T15:35:43.330669Z', 'server_response': '{"SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true}', 'order_id': 'TM08202203260613210455349'} (ID: 1781364943376-0)
[2026-06-13 21:05:43,533.533 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True}, 'order_id': 'TM08202203260613210455349'}
[2026-06-13 21:05:43,536.536 INFO    ] 200
[2026-06-13 21:05:43,539.539 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"SectionMain":{"Header":"Processing Order"},"delay":0,"status":"true","voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true},"order_id":"TM08202203260613210455349"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:05:43,542.542 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True}, 'order_id': 'TM08202203260613210455349', 'server_status': 'processOrder'}}
[2026-06-13 21:05:43,545.545 INFO    ] 2026-06-13 21:05:43
[2026-06-13 21:05:43,548.548 INFO    ] None
[2026-06-13 21:05:43,551.551 INFO    ] Opening Door now
[2026-06-13 21:05:43,553.553 INFO    ] Opening Door now
[2026-06-13 21:05:43,556.556 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 21:05:43,559.559 INFO    ] 2026-06-13 21:05:43
[2026-06-13 21:05:43,562.562 INFO    ] playing audio file
[2026-06-13 21:05:43,581.581 INFO    ] 2026-06-13 21:05:43
[2026-06-13 21:05:43,585.585 INFO    ] 2026-06-13 21:05:43
[2026-06-13 21:05:46,649.649 INFO    ] 200
[2026-06-13 21:05:46,652.652 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:05:46,655.655 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'rstatus': False}
[2026-06-13 21:05:49,721.721 INFO    ] 200
[2026-06-13 21:05:49,723.723 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:05:49,726.726 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'rstatus': False}
[2026-06-13 21:05:52,765.765 INFO    ] 200
[2026-06-13 21:05:52,767.767 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:05:52,769.769 INFO    ] Please close door 2
[2026-06-13 21:05:52,771.771 INFO    ] Please close door 2
[2026-06-13 21:05:52,772.772 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 21:05:52,774.774 INFO    ] 2026-06-13 21:05:52
[2026-06-13 21:05:52,776.776 INFO    ] playing audio file
[2026-06-13 21:05:52,786.786 INFO    ] 2026-06-13 21:05:52
[2026-06-13 21:05:52,788.788 INFO    ] publish_status: order_id=TM08202203260613210455349
[2026-06-13 21:05:52,789.789 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210455349
[2026-06-13 21:05:52,868.868 INFO    ] [publish_status] Message added to stream with ID: 1781364952829-0
[2026-06-13 21:05:52,870.870 INFO    ] Published to order:TM08202203260613210455349: {'server_status': 'OrderStatus', 'timestamp': '2026-06-13T15:35:52.787162Z', 'server_response': '{"SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products"}, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "rstatus": false}', 'order_id': 'TM08202203260613210455349'} (ID: 1781364952829-0)
[2026-06-13 21:05:53,185.185 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'rstatus': False}, 'order_id': 'TM08202203260613210455349'}
[2026-06-13 21:05:53,186.186 INFO    ] 200
[2026-06-13 21:05:53,187.187 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products"},"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}]},"rstatus":false},"order_id":"TM08202203260613210455349"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:05:53,189.189 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}, 'status': 'false', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'rstatus': False}, 'order_id': 'TM08202203260613210455349', 'server_status': 'OrderStatus'}}
[2026-06-13 21:05:53,191.191 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}, 'rstatus': False}
[2026-06-13 21:05:56,230.230 INFO    ] 200
[2026-06-13 21:05:56,231.231 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:05:56,233.233 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True}
[2026-06-13 21:05:56,235.235 INFO    ] 2026-06-13 21:05:56
[2026-06-13 21:05:56,237.237 INFO    ] Order Completed 
[2026-06-13 21:05:56,238.238 INFO    ] Order Completed 
[2026-06-13 21:05:56,240.240 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 21:05:56,242.242 INFO    ] 2026-06-13 21:05:56
[2026-06-13 21:05:56,243.243 INFO    ] playing audio file
[2026-06-13 21:05:56,254.254 INFO    ] 2026-06-13 21:05:56
[2026-06-13 21:05:56,256.256 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True}
[2026-06-13 21:05:56,259.259 INFO    ] 2026-06-13 21:05:56
[2026-06-13 21:05:57,345.345 INFO    ] 200
[2026-06-13 21:05:57,349.349 INFO    ] {"res": "True", "orderId": "TM08202203260613210455349", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 21:05:57,352.352 INFO    ] {'orderId': 'TM08202203260613210455349', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 21:05:57,356.356 INFO    ] {'orderId': 'TM08202203260613210455349', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}
[2026-06-13 21:05:57,364.364 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,367.367 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,370.370 INFO    ] 20
[2026-06-13 21:05:57,373.373 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,376.376 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,380.380 INFO    ]  Your Bill Amount is 20
[2026-06-13 21:05:57,383.383 INFO    ]  Your Bill Amount is 20
[2026-06-13 21:05:57,386.386 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 21:05:57,389.389 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,392.392 INFO    ] playing audio file
[2026-06-13 21:05:57,411.411 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,414.414 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:57,418.418 INFO    ] publish_status: order_id=TM08202203260613210455349
[2026-06-13 21:05:57,421.421 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210455349
[2026-06-13 21:05:57,499.499 INFO    ] [publish_status] Message added to stream with ID: 1781364957458-0
[2026-06-13 21:05:57,502.502 INFO    ] Published to order:TM08202203260613210455349: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T15:35:57.416593Z', 'server_response': '{"orderId": "TM08202203260613210455349", "res": "True", "skus": [{"door_id": "", "mrp": "20", "unit_price": "20", "skuid": "185993", "sku_total": 20.0, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "qty": 1, "tray_id": "43"}], "total_amount": 20.0, "rstatus": true, "anomaly": 0, "logic": "WBL"}', 'order_id': 'TM08202203260613210455349'} (ID: 1781364957458-0)
[2026-06-13 21:05:57,615.615 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202203260613210455349', 'res': 'True', 'skus': [{'door_id': '', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'sku_total': 20.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'total_amount': 20.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}, 'order_id': 'TM08202203260613210455349'}
[2026-06-13 21:05:57,619.619 INFO    ] 200
[2026-06-13 21:05:57,621.621 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"orderId":"TM08202203260613210455349","res":"true","skus":[{"door_id":"","mrp":"20","unit_price":"20","skuid":"185993","sku_total":20,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","qty":1,"tray_id":"43"}],"total_amount":20,"rstatus":true,"anomaly":0,"logic":"WBL"},"order_id":"TM08202203260613210455349"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:05:57,625.625 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613210455349', 'res': 'true', 'skus': [{'door_id': '', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'total_amount': 20, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}, 'order_id': 'TM08202203260613210455349', 'server_status': 'invoiceOrder'}}
[2026-06-13 21:05:57,628.628 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM08202203260613210455349', 'res': 'true', 'skus': [{'door_id': '', 'mrp': '20', 'unit_price': '20', 'skuid': '185993', 'sku_total': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43'}], 'total_amount': 20, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL'}, 'order_id': 'TM08202203260613210455349', 'server_status': 'invoiceOrder'}}
[2026-06-13 21:05:57,631.631 INFO    ] 2026-06-13 21:05:57
[2026-06-13 21:05:59,508.508 INFO    ] 200
[2026-06-13 21:05:59,512.512 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349", "TM08202203260613210455349"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 21:05:59,524.524 INFO    ] 2026-06-13 21:05:59
[2026-06-13 21:05:59,668.668 INFO    ] 200
[2026-06-13 21:05:59,671.671 INFO    ] True
[2026-06-13 21:05:59,679.679 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613210455349
[2026-06-13 21:05:59,683.683 INFO    ] start order file deleted
[2026-06-13 21:05:59,687.687 INFO    ] Checking for system updates...
[2026-06-13 21:05:59,736.736 INFO    ] 200
[2026-06-13 21:05:59,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:59,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:05:59,822.822 INFO    ] No update needed
[2026-06-13 21:05:59,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 21:05:59,902.902 INFO    ] 200
[2026-06-13 21:05:59,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:05:59,967.967 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:00,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:00,047.047 INFO    ] No camera update needed
[2026-06-13 21:06:00,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:00,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:00,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:00,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:02,120.120 INFO    ] ================================================
[2026-06-13 21:06:02,155.155 INFO    ] Launching Daemon at Sat Jun 13 21:06:02 IST 2026
[2026-06-13 21:06:02,178.178 INFO    ] ================================================
[2026-06-13 21:06:02,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:02
[2026-06-13 21:06:03,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:03,815.815 INFO    ] Initializing speech engine...
[2026-06-13 21:06:03,825.825 INFO    ] 2026-06-13 21:06:03
[2026-06-13 21:06:04,108.108 INFO    ] 2026-06-13 21:06:04
[2026-06-13 21:06:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:04,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:04,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:04,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:04,472.472 INFO    ] time= 13/06/2026 21:06:04
[2026-06-13 21:06:04,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:04,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:04,542.542 INFO    ] No existing commands found in stream
[2026-06-13 21:06:09,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:06:09,568.568 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 21:06:10,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:06:10,815.815 INFO    ] Checking for system updates...
[2026-06-13 21:06:10,837.837 INFO    ] 200
[2026-06-13 21:06:10,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:10,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:10,871.871 INFO    ] No update needed
[2026-06-13 21:06:10,872.872 INFO    ] Checking for camera pi updates...
[2026-06-13 21:06:10,892.892 INFO    ] 200
[2026-06-13 21:06:10,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:10,921.921 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:10,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:10,964.964 INFO    ] No camera update needed
[2026-06-13 21:06:10,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:10,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:10,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:10,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:12,995.995 INFO    ] ================================================
[2026-06-13 21:06:13,004.004 INFO    ] Launching Daemon at Sat Jun 13 21:06:13 IST 2026
[2026-06-13 21:06:13,010.010 INFO    ] ================================================
[2026-06-13 21:06:13,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:13
[2026-06-13 21:06:13,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:13,807.807 INFO    ] Initializing speech engine...
[2026-06-13 21:06:13,821.821 INFO    ] 2026-06-13 21:06:13
[2026-06-13 21:06:14,038.038 INFO    ] 2026-06-13 21:06:14
[2026-06-13 21:06:14,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:14,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:14,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:14,424.424 INFO    ] time= 13/06/2026 21:06:14
[2026-06-13 21:06:14,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:14,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:14,639.639 INFO    ] No existing commands found in stream
[2026-06-13 21:06:19,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:06:19,652.652 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 21:06:22,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:06:22,335.335 INFO    ] Checking for system updates...
[2026-06-13 21:06:22,355.355 INFO    ] 200
[2026-06-13 21:06:22,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:22,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:22,388.388 INFO    ] No update needed
[2026-06-13 21:06:22,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 21:06:22,411.411 INFO    ] 200
[2026-06-13 21:06:22,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:22,436.436 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:22,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:22,475.475 INFO    ] No camera update needed
[2026-06-13 21:06:22,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:22,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:22,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:22,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:24,522.522 INFO    ] ================================================
[2026-06-13 21:06:24,537.537 INFO    ] Launching Daemon at Sat Jun 13 21:06:24 IST 2026
[2026-06-13 21:06:24,548.548 INFO    ] ================================================
[2026-06-13 21:06:24,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:24
[2026-06-13 21:06:25,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:25,357.357 INFO    ] Initializing speech engine...
[2026-06-13 21:06:25,366.366 INFO    ] 2026-06-13 21:06:25
[2026-06-13 21:06:25,593.593 INFO    ] 2026-06-13 21:06:25
[2026-06-13 21:06:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:25,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:25,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:25,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:26,003.003 INFO    ] time= 13/06/2026 21:06:25
[2026-06-13 21:06:26,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:26,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:26,114.114 INFO    ] No existing commands found in stream
[2026-06-13 21:06:31,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:06:31,128.128 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 21:06:32,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:06:32,827.827 INFO    ] Checking for system updates...
[2026-06-13 21:06:32,849.849 INFO    ] 200
[2026-06-13 21:06:32,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:32,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:32,882.882 INFO    ] No update needed
[2026-06-13 21:06:32,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 21:06:32,903.903 INFO    ] 200
[2026-06-13 21:06:32,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:32,929.929 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:32,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:06:32,955.955 INFO    ] No camera update needed
[2026-06-13 21:06:32,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:32,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:32,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:32,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:35,004.004 INFO    ] ================================================
[2026-06-13 21:06:35,019.019 INFO    ] Launching Daemon at Sat Jun 13 21:06:35 IST 2026
[2026-06-13 21:06:35,030.030 INFO    ] ================================================
[2026-06-13 21:06:35,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:35
[2026-06-13 21:06:35,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:35,837.837 INFO    ] Initializing speech engine...
[2026-06-13 21:06:35,841.841 INFO    ] 2026-06-13 21:06:35
[2026-06-13 21:06:36,071.071 INFO    ] 2026-06-13 21:06:36
[2026-06-13 21:06:36,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:36,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:36,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:36,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:36,488.488 INFO    ] time= 13/06/2026 21:06:36
[2026-06-13 21:06:36,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:36,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:36,631.631 INFO    ] No existing commands found in stream
[2026-06-13 21:06:41,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:06:41,644.644 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 21:06:42,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:06:42,955.955 INFO    ] Checking for system updates...
[2026-06-13 21:06:42,979.979 INFO    ] 200
[2026-06-13 21:06:42,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:43,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:06:43,013.013 INFO    ] No update needed
[2026-06-13 21:06:43,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 21:06:43,038.038 INFO    ] 200
[2026-06-13 21:06:43,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:43,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:43,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:06:43,207.207 INFO    ] No camera update needed
[2026-06-13 21:06:43,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:43,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:43,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:43,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:45,255.255 INFO    ] ================================================
[2026-06-13 21:06:45,270.270 INFO    ] Launching Daemon at Sat Jun 13 21:06:45 IST 2026
[2026-06-13 21:06:45,281.281 INFO    ] ================================================
[2026-06-13 21:06:45,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:45
[2026-06-13 21:06:45,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:46,103.103 INFO    ] Initializing speech engine...
[2026-06-13 21:06:46,108.108 INFO    ] 2026-06-13 21:06:46
[2026-06-13 21:06:46,313.313 INFO    ] 2026-06-13 21:06:46
[2026-06-13 21:06:46,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:46,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:46,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:46,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:46,730.730 INFO    ] time= 13/06/2026 21:06:46
[2026-06-13 21:06:46,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:46,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:46,826.826 INFO    ] No existing commands found in stream
[2026-06-13 21:06:51,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:06:51,840.840 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 21:06:55,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:06:55,531.531 INFO    ] Checking for system updates...
[2026-06-13 21:06:55,552.552 INFO    ] 200
[2026-06-13 21:06:55,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:55,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:06:55,586.586 INFO    ] No update needed
[2026-06-13 21:06:55,588.588 INFO    ] Checking for camera pi updates...
[2026-06-13 21:06:55,609.609 INFO    ] 200
[2026-06-13 21:06:55,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:06:55,635.635 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:06:55,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:06:55,678.678 INFO    ] No camera update needed
[2026-06-13 21:06:55,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:06:55,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:06:55,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:06:55,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:06:57,727.727 INFO    ] ================================================
[2026-06-13 21:06:57,743.743 INFO    ] Launching Daemon at Sat Jun 13 21:06:57 IST 2026
[2026-06-13 21:06:57,755.755 INFO    ] ================================================
[2026-06-13 21:06:58,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:06:58
[2026-06-13 21:06:58,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:06:58,567.567 INFO    ] Initializing speech engine...
[2026-06-13 21:06:58,572.572 INFO    ] 2026-06-13 21:06:58
[2026-06-13 21:06:58,774.774 INFO    ] 2026-06-13 21:06:58
[2026-06-13 21:06:58,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:06:58,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:06:58,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:06:59,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:06:59,189.189 INFO    ] time= 13/06/2026 21:06:59
[2026-06-13 21:06:59,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:06:59,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:06:59,288.288 INFO    ] No existing commands found in stream
[2026-06-13 21:07:04,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:07:04,300.300 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 21:07:07,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:07:07,401.401 INFO    ] Checking for system updates...
[2026-06-13 21:07:07,422.422 INFO    ] 200
[2026-06-13 21:07:07,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:07,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:07:07,460.460 INFO    ] No update needed
[2026-06-13 21:07:07,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 21:07:07,481.481 INFO    ] 200
[2026-06-13 21:07:07,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:07,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:07:07,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:07:07,547.547 INFO    ] No camera update needed
[2026-06-13 21:07:07,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:07:07,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:07:07,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:07:07,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:07:09,597.597 INFO    ] ================================================
[2026-06-13 21:07:09,613.613 INFO    ] Launching Daemon at Sat Jun 13 21:07:09 IST 2026
[2026-06-13 21:07:09,624.624 INFO    ] ================================================
[2026-06-13 21:07:09,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:07:09
[2026-06-13 21:07:10,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:07:10,482.482 INFO    ] Initializing speech engine...
[2026-06-13 21:07:10,489.489 INFO    ] 2026-06-13 21:07:10
[2026-06-13 21:07:10,703.703 INFO    ] 2026-06-13 21:07:10
[2026-06-13 21:07:10,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:07:10,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:07:10,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:07:11,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:07:11,046.046 INFO    ] time= 13/06/2026 21:07:11
[2026-06-13 21:07:11,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:07:11,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:07:11,235.235 INFO    ] No existing commands found in stream
[2026-06-13 21:07:16,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:07:16,249.249 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 21:07:19,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:07:19,811.811 INFO    ] Checking for system updates...
[2026-06-13 21:07:19,833.833 INFO    ] 200
[2026-06-13 21:07:19,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:19,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:19,867.867 INFO    ] No update needed
[2026-06-13 21:07:19,869.869 INFO    ] Checking for camera pi updates...
[2026-06-13 21:07:19,890.890 INFO    ] 200
[2026-06-13 21:07:19,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:19,918.918 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:07:19,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:19,957.957 INFO    ] No camera update needed
[2026-06-13 21:07:19,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:07:19,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:07:19,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:07:19,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:07:22,008.008 INFO    ] ================================================
[2026-06-13 21:07:22,024.024 INFO    ] Launching Daemon at Sat Jun 13 21:07:22 IST 2026
[2026-06-13 21:07:22,035.035 INFO    ] ================================================
[2026-06-13 21:07:22,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:07:22
[2026-06-13 21:07:22,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:07:22,925.925 INFO    ] Initializing speech engine...
[2026-06-13 21:07:22,930.930 INFO    ] 2026-06-13 21:07:22
[2026-06-13 21:07:23,139.139 INFO    ] 2026-06-13 21:07:23
[2026-06-13 21:07:23,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:07:23,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:07:23,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:07:23,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:07:23,561.561 INFO    ] time= 13/06/2026 21:07:23
[2026-06-13 21:07:23,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:07:23,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:07:23,657.657 INFO    ] No existing commands found in stream
[2026-06-13 21:07:28,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:07:28,672.672 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 21:07:29,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:07:29,541.541 INFO    ] Checking for system updates...
[2026-06-13 21:07:29,562.562 INFO    ] 200
[2026-06-13 21:07:29,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:29,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:29,596.596 INFO    ] No update needed
[2026-06-13 21:07:29,598.598 INFO    ] Checking for camera pi updates...
[2026-06-13 21:07:29,618.618 INFO    ] 200
[2026-06-13 21:07:29,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:29,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:07:29,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:29,683.683 INFO    ] No camera update needed
[2026-06-13 21:07:29,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:07:29,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:07:29,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:07:29,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:07:31,731.731 INFO    ] ================================================
[2026-06-13 21:07:31,746.746 INFO    ] Launching Daemon at Sat Jun 13 21:07:31 IST 2026
[2026-06-13 21:07:31,757.757 INFO    ] ================================================
[2026-06-13 21:07:32,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:07:32
[2026-06-13 21:07:32,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:07:32,644.644 INFO    ] Initializing speech engine...
[2026-06-13 21:07:32,649.649 INFO    ] 2026-06-13 21:07:32
[2026-06-13 21:07:32,851.851 INFO    ] 2026-06-13 21:07:32
[2026-06-13 21:07:32,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:07:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:07:33,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:07:33,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:07:33,270.270 INFO    ] time= 13/06/2026 21:07:33
[2026-06-13 21:07:33,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:07:33,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:07:33,486.486 INFO    ] No existing commands found in stream
[2026-06-13 21:07:38,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:07:38,503.503 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 21:07:41,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:07:41,377.377 INFO    ] Checking for system updates...
[2026-06-13 21:07:41,413.413 INFO    ] 200
[2026-06-13 21:07:41,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:41,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:41,472.472 INFO    ] No update needed
[2026-06-13 21:07:41,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 21:07:41,509.509 INFO    ] 200
[2026-06-13 21:07:41,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:41,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:07:41,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:07:41,600.600 INFO    ] No camera update needed
[2026-06-13 21:07:41,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:07:41,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:07:41,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:07:41,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:07:43,659.659 INFO    ] ================================================
[2026-06-13 21:07:43,674.674 INFO    ] Launching Daemon at Sat Jun 13 21:07:43 IST 2026
[2026-06-13 21:07:43,685.685 INFO    ] ================================================
[2026-06-13 21:07:44,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:07:44
[2026-06-13 21:07:44,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:07:44,510.510 INFO    ] Initializing speech engine...
[2026-06-13 21:07:44,515.515 INFO    ] 2026-06-13 21:07:44
[2026-06-13 21:07:44,705.705 INFO    ] 2026-06-13 21:07:44
[2026-06-13 21:07:44,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:07:44,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:07:44,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:07:45,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:07:45,103.103 INFO    ] time= 13/06/2026 21:07:45
[2026-06-13 21:07:45,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:07:45,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:07:45,187.187 INFO    ] No existing commands found in stream
[2026-06-13 21:07:50,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:07:50,226.226 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 21:07:53,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:07:53,216.216 INFO    ] Checking for system updates...
[2026-06-13 21:07:53,237.237 INFO    ] 200
[2026-06-13 21:07:53,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:53,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:07:53,272.272 INFO    ] No update needed
[2026-06-13 21:07:53,274.274 INFO    ] Checking for camera pi updates...
[2026-06-13 21:07:53,293.293 INFO    ] 200
[2026-06-13 21:07:53,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:07:53,318.318 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:07:53,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:07:53,361.361 INFO    ] No camera update needed
[2026-06-13 21:07:53,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:07:53,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:07:53,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:07:53,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:07:55,410.410 INFO    ] ================================================
[2026-06-13 21:07:55,427.427 INFO    ] Launching Daemon at Sat Jun 13 21:07:55 IST 2026
[2026-06-13 21:07:55,438.438 INFO    ] ================================================
[2026-06-13 21:07:55,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:07:55
[2026-06-13 21:07:56,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:07:56,314.314 INFO    ] Initializing speech engine...
[2026-06-13 21:07:56,319.319 INFO    ] 2026-06-13 21:07:56
[2026-06-13 21:07:56,524.524 INFO    ] 2026-06-13 21:07:56
[2026-06-13 21:07:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:07:56,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:07:56,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:07:56,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:07:56,941.941 INFO    ] time= 13/06/2026 21:07:56
[2026-06-13 21:07:56,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:07:56,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:07:57,039.039 INFO    ] No existing commands found in stream
[2026-06-13 21:08:02,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:08:02,055.055 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 21:08:04,620.620 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:08:04,622.622 INFO    ] Checking for system updates...
[2026-06-13 21:08:04,643.643 INFO    ] 200
[2026-06-13 21:08:04,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:04,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:08:04,677.677 INFO    ] No update needed
[2026-06-13 21:08:04,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 21:08:04,699.699 INFO    ] 200
[2026-06-13 21:08:04,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:04,724.724 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:08:04,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:08:04,768.768 INFO    ] No camera update needed
[2026-06-13 21:08:04,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:08:04,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:08:04,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:08:04,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:08:06,819.819 INFO    ] ================================================
[2026-06-13 21:08:06,834.834 INFO    ] Launching Daemon at Sat Jun 13 21:08:06 IST 2026
[2026-06-13 21:08:06,846.846 INFO    ] ================================================
[2026-06-13 21:08:07,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:08:07
[2026-06-13 21:08:07,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:08:07,749.749 INFO    ] Initializing speech engine...
[2026-06-13 21:08:07,754.754 INFO    ] 2026-06-13 21:08:07
[2026-06-13 21:08:07,963.963 INFO    ] 2026-06-13 21:08:07
[2026-06-13 21:08:07,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:08:08,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:08:08,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:08:08,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:08:08,374.374 INFO    ] time= 13/06/2026 21:08:08
[2026-06-13 21:08:08,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:08:08,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:08:08,481.481 INFO    ] No existing commands found in stream
[2026-06-13 21:08:08,659.659 INFO    ] Received new command: ID=1781365088616-0
[2026-06-13 21:08:08,663.663 INFO    ] process_and_cleanup_command: msg_id=1781365088616-0
[2026-06-13 21:08:08,667.667 INFO    ] is_command_expired: timestamp=2026-06-13T15:38:08.452Z, expiry=30s
[2026-06-13 21:08:08,729.729 INFO    ] Command removed from stream: 1781365088616-0. returning for processing...
[2026-06-13 21:08:08,731.731 INFO    ] ***** get_valid_command
[2026-06-13 21:08:08,779.779 INFO    ] {'data': '{"request_id":"start-order-1781365088451-f7y5l9xhr","orderId":"TM08202203260613210725879","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'timestamp': '2026-06-13T15:38:08.452Z'}
[2026-06-13 21:08:08,793.793 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613210725879', 'request_id': 'start-order-1781365088451-f7y5l9xhr'}
[2026-06-13 21:08:08,818.818 INFO    ] Handling start order...
[2026-06-13 21:08:08,820.820 INFO    ] handle_start_order_command
[2026-06-13 21:08:08,850.850 INFO    ] _send_start_order_success: request_id=start-order-1781365088451-f7y5l9xhr, order_id=TM08202203260613210725879
[2026-06-13 21:08:08,853.853 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 21:08:08,922.922 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781365088865-0
[2026-06-13 21:08:08,926.926 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 21:08:08,930.930 INFO    ] Checking for system updates...
[2026-06-13 21:08:08,959.959 INFO    ] 200
[2026-06-13 21:08:08,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:09,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:08:09,004.004 INFO    ] No update needed
[2026-06-13 21:08:09,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 21:08:09,032.032 INFO    ] 200
[2026-06-13 21:08:09,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:09,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:08:09,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:08:09,157.157 INFO    ] No camera update needed
[2026-06-13 21:08:09,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:08:09,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:08:09,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:08:09,221.221 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 21:08:09,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:08:11,264.264 INFO    ] ================================================
[2026-06-13 21:08:11,279.279 INFO    ] Launching Daemon at Sat Jun 13 21:08:11 IST 2026
[2026-06-13 21:08:11,290.290 INFO    ] ================================================
[2026-06-13 21:08:11,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:08:11
[2026-06-13 21:08:11,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:08:12,132.132 INFO    ] Initializing speech engine...
[2026-06-13 21:08:12,136.136 INFO    ] 2026-06-13 21:08:12
[2026-06-13 21:08:12,342.342 INFO    ] 2026-06-13 21:08:12
[2026-06-13 21:08:12,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:08:12,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:08:12,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:08:12,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:08:12,747.747 INFO    ] time= 13/06/2026 21:08:12
[2026-06-13 21:08:12,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:08:12,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:08:13,023.023 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 21:08:13,050.050 INFO    ] Checking historical command: ID=1781365088865-0
[2026-06-13 21:08:13,056.056 INFO    ] process_and_cleanup_command: msg_id=1781365088865-0
[2026-06-13 21:08:13,064.064 INFO    ] is_command_expired: timestamp=2026-06-13T15:38:08.850905Z, expiry=30s
[2026-06-13 21:08:13,185.185 INFO    ] Command removed from stream: 1781365088865-0. returning for processing...
[2026-06-13 21:08:13,190.190 INFO    ] ***** get_valid_command
[2026-06-13 21:08:13,195.195 INFO    ] {'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781365088451-f7y5l9xhr', 'metadata_order_id': 'TM08202203260613210725879', 'message_type': 'command_response', 'timestamp': '2026-06-13T15:38:08.850905Z', 'message': 'start-order success', 'status': 'success'}
[2026-06-13 21:08:13,212.212 INFO    ] Checking historical command: ID=1781365091041-0
[2026-06-13 21:08:13,217.217 INFO    ] process_and_cleanup_command: msg_id=1781365091041-0
[2026-06-13 21:08:13,222.222 INFO    ] is_command_expired: timestamp=2026-06-13T15:38:10.913Z, expiry=30s
[2026-06-13 21:08:13,330.330 INFO    ] Command removed from stream: 1781365091041-0. returning for processing...
[2026-06-13 21:08:13,351.351 INFO    ] ***** get_valid_command
[2026-06-13 21:08:13,357.357 INFO    ] {'data': '{"request_id":"process-order-1781365090913-4km5herbs","orderId":"TM08202203260613210725879","is_vending":false,"accessCode":"35401263"}', 'timeout': '60', 'source': 'webapp', 'command': 'process-order', 'timestamp': '2026-06-13T15:38:10.913Z'}
[2026-06-13 21:08:13,366.366 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '35401263', 'request_id': 'process-order-1781365090913-4km5herbs', 'orderId': 'TM08202203260613210725879'}
[2026-06-13 21:08:13,374.374 INFO    ] Handling process order...
[2026-06-13 21:08:13,381.381 INFO    ] Processing process-order command...
[2026-06-13 21:08:13,388.388 INFO    ] 🔍 Lock file Order ID: TM08202203260613210725879, TS: 2026-06-13 21:08:08
[2026-06-13 21:08:13,404.404 INFO    ] ✅ Order lock valid for TM08202203260613210725879
[2026-06-13 21:08:13,409.409 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 21:08:13,416.416 INFO    ] processing access code 35401263 for order TM08202203260613210725879
[2026-06-13 21:08:13,422.422 INFO    ] 🔍 Lock file Order ID: TM08202203260613210725879, TS: 2026-06-13 21:08:08
[2026-06-13 21:08:13,428.428 INFO    ] ✅ Order lock valid for TM08202203260613210725879
[2026-06-13 21:08:13,434.434 INFO    ] 2026-06-13 21:08:13
[2026-06-13 21:08:13,487.487 INFO    ] 200
[2026-06-13 21:08:13,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:13,498.498 INFO    ] 35401263
[2026-06-13 21:08:13,504.504 INFO    ] 2026-06-13 21:08:13
[2026-06-13 21:08:13,510.510 INFO    ] session id :885807861
[2026-06-13 21:08:13,516.516 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=35401263&imei=TM08202203&session_id=885807861
[2026-06-13 21:08:14,521.521 INFO    ] 200
[2026-06-13 21:08:14,554.554 INFO    ] {"data": {"mobile": "8078308534", "order_id": "TM08202203260613210725879", "bill_amount": "70", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "tray_id": "23", "unit_price": 10, "qty": 2, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "tray_id": "40", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}], "access_code": "35401263", "invoice_bill": "70"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 21:08:14,567.567 INFO    ] 70
[2026-06-13 21:08:14,573.573 INFO    ] TM08202203260613210725879
[2026-06-13 21:08:14,594.594 INFO    ] 8078308534
[2026-06-13 21:08:14,602.602 INFO    ] 2026-06-13 21:08:14
[2026-06-13 21:08:14,610.610 INFO    ] Door Opening for user mobile ending with  eight five three four 
[2026-06-13 21:08:14,630.630 INFO    ] Door Opening for user mobile ending with  eight five three four 
[2026-06-13 21:08:14,649.649 INFO    ] fef52805701707cc1c46d72ba8e66325
[2026-06-13 21:08:14,673.673 INFO    ] 2026-06-13 21:08:14
[2026-06-13 21:08:14,683.683 INFO    ] playing audio file
[2026-06-13 21:08:14,714.714 INFO    ] 2026-06-13 21:08:14
[2026-06-13 21:08:14,743.743 INFO    ] 2026-06-13 21:08:14
[2026-06-13 21:08:14,781.781 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:14,843.843 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:14,915.915 INFO    ] [publish_status] Message added to stream with ID: 1781365094861-0
[2026-06-13 21:08:14,924.924 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'order-started', 'server_response': '{"data": {"mobile": "8078308534", "invoice_bill": "70", "bill_amount": "70", "access_code": "35401263", "order_id": "TM08202203260613210725879", "proposed_sku_json": [{"qty": 2, "mrp": "10", "offer_desc": "", "tray_id": "23", "skuid": "4500687", "door_id": "1", "unit_price": 10, "offer_id": "", "name": "Modern Kitchens Potato waffers Spicy 24gm ", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500687-5964.webp"}, {"qty": 1, "mrp": "20", "offer_desc": "", "tray_id": "39", "skuid": "4500541", "door_id": "2", "unit_price": 20, "offer_id": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg"}, {"qty": 1, "mrp": "30", "offer_desc": "", "tray_id": "40", "skuid": "186084", "door_id": "2", "unit_price": 30, "offer_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png"}]}, "msg": "Order Data", "rstatus": true, "status": true}', 'timestamp': '2026-06-13T15:38:14.750378Z'} (ID: 1781365094861-0)
[2026-06-13 21:08:15,345.345 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'order-started', 'server_response': {'data': {'mobile': '8078308534', 'invoice_bill': '70', 'bill_amount': '70', 'access_code': '35401263', 'order_id': 'TM08202203260613210725879', 'proposed_sku_json': [{'qty': 2, 'mrp': '10', 'offer_desc': '', 'tray_id': '23', 'skuid': '4500687', 'door_id': '1', 'unit_price': 10, 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'qty': 1, 'mrp': '20', 'offer_desc': '', 'tray_id': '39', 'skuid': '4500541', 'door_id': '2', 'unit_price': 20, 'offer_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'qty': 1, 'mrp': '30', 'offer_desc': '', 'tray_id': '40', 'skuid': '186084', 'door_id': '2', 'unit_price': 30, 'offer_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}]}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}
[2026-06-13 21:08:15,347.347 INFO    ] 200
[2026-06-13 21:08:15,350.350 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"order-started","server_response":{"data":{"mobile":"8078308534","invoice_bill":"70","bill_amount":"70","access_code":"35401263","order_id":"TM08202203260613210725879","proposed_sku_json":[{"qty":2,"mrp":"10","offer_desc":"","tray_id":"23","skuid":"4500687","door_id":"1","unit_price":10,"offer_id":"","name":"Modern Kitchens Potato waffers Spicy 24gm ","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp"},{"qty":1,"mrp":"20","offer_desc":"","tray_id":"39","skuid":"4500541","door_id":"2","unit_price":20,"offer_id":"","name":"Cad bury Dairy Milk Chocolate 18gm","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg"},{"qty":1,"mrp":"30","offer_desc":"","tray_id":"40","skuid":"186084","door_id":"2","unit_price":30,"offer_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g","sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"}]},"msg":"Order Data","rstatus":true,"status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:15,353.353 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'order-started', 'server_response': {'data': {'mobile': '8078308534', 'invoice_bill': '70', 'bill_amount': '70', 'access_code': '35401263', 'order_id': 'TM08202203260613210725879', 'proposed_sku_json': [{'qty': 2, 'mrp': '10', 'offer_desc': '', 'tray_id': '23', 'skuid': '4500687', 'door_id': '1', 'unit_price': 10, 'offer_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm ', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'qty': 1, 'mrp': '20', 'offer_desc': '', 'tray_id': '39', 'skuid': '4500541', 'door_id': '2', 'unit_price': 20, 'offer_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'qty': 1, 'mrp': '30', 'offer_desc': '', 'tray_id': '40', 'skuid': '186084', 'door_id': '2', 'unit_price': 30, 'offer_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}]}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:15,356.356 INFO    ] 2026-06-13 21:08:15
[2026-06-13 21:08:15,401.401 INFO    ] 200
[2026-06-13 21:08:15,404.404 INFO    ] True
[2026-06-13 21:08:15,579.579 INFO    ] 200
[2026-06-13 21:08:15,582.582 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:15,586.586 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'status': 'False'}
[2026-06-13 21:08:15,588.588 INFO    ] *** process_order ***
[2026-06-13 21:08:16,761.761 INFO    ] 200
[2026-06-13 21:08:16,763.763 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:08:16,764.764 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'status': 'True'}
[2026-06-13 21:08:16,765.765 INFO    ] *** process_order ***
[2026-06-13 21:08:16,767.767 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:16,768.768 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:16,846.846 INFO    ] [publish_status] Message added to stream with ID: 1781365096805-0
[2026-06-13 21:08:16,847.847 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "delay": 0, "status": "True"}'} (ID: 1781365096805-0)
[2026-06-13 21:08:17,893.893 INFO    ] 2026-06-13 21:08:17
[2026-06-13 21:08:17,896.896 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:17,899.899 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:17,983.983 INFO    ] [publish_status] Message added to stream with ID: 1781365097941-0
[2026-06-13 21:08:17,986.986 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "status": "True"}', 'timestamp': '2026-06-13T15:38:17.894867Z'} (ID: 1781365097941-0)
[2026-06-13 21:08:18,099.099 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'status': 'True'}}
[2026-06-13 21:08:18,102.102 INFO    ] 200
[2026-06-13 21:08:18,105.105 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"delay":0,"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:18,108.108 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'status': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:18,111.111 INFO    ] 2026-06-13 21:08:18
[2026-06-13 21:08:18,114.114 INFO    ] None
[2026-06-13 21:08:18,117.117 INFO    ] Opening Door now
[2026-06-13 21:08:18,119.119 INFO    ] Opening Door now
[2026-06-13 21:08:18,122.122 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 21:08:18,125.125 INFO    ] 2026-06-13 21:08:18
[2026-06-13 21:08:18,127.127 INFO    ] playing audio file
[2026-06-13 21:08:18,145.145 INFO    ] 2026-06-13 21:08:18
[2026-06-13 21:08:18,149.149 INFO    ] 2026-06-13 21:08:18
[2026-06-13 21:08:21,237.237 INFO    ] 200
[2026-06-13 21:08:21,240.240 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:21,243.243 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:24,298.298 INFO    ] 200
[2026-06-13 21:08:24,300.300 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:24,302.302 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:27,334.334 INFO    ] 200
[2026-06-13 21:08:27,336.336 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:27,337.337 INFO    ] Please close door 1
[2026-06-13 21:08:27,339.339 INFO    ] Please close door 1
[2026-06-13 21:08:27,340.340 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 21:08:27,342.342 INFO    ] 2026-06-13 21:08:27
[2026-06-13 21:08:27,343.343 INFO    ] playing audio file
[2026-06-13 21:08:27,353.353 INFO    ] 2026-06-13 21:08:27
[2026-06-13 21:08:27,355.355 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:27,357.357 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:27,434.434 INFO    ] [publish_status] Message added to stream with ID: 1781365107393-0
[2026-06-13 21:08:27,435.435 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "status": "False"}', 'timestamp': '2026-06-13T15:38:27.354491Z'} (ID: 1781365107393-0)
[2026-06-13 21:08:27,771.771 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}}
[2026-06-13 21:08:27,773.773 INFO    ] 200
[2026-06-13 21:08:27,775.775 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"OrderStatus","server_response":{"error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Modern Kitchens Potato waffers Spicy 24gm "}]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:27,777.777 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:27,779.779 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:30,810.810 INFO    ] 200
[2026-06-13 21:08:30,811.811 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern Kitchens Potato waffers Spicy 24gm "}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:30,813.813 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern Kitchens Potato waffers Spicy 24gm '}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Close'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 1 is closed now', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 1000, 'status': 'False'}
[2026-06-13 21:08:33,891.891 INFO    ] 200
[2026-06-13 21:08:33,894.894 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:33,898.898 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:36,971.971 INFO    ] 200
[2026-06-13 21:08:36,974.974 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:36,978.978 INFO    ] Please close door 2
[2026-06-13 21:08:36,981.981 INFO    ] Please close door 2
[2026-06-13 21:08:36,984.984 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 21:08:36,988.988 INFO    ] 2026-06-13 21:08:36
[2026-06-13 21:08:36,992.992 INFO    ] playing audio file
[2026-06-13 21:08:37,012.012 INFO    ] 2026-06-13 21:08:37
[2026-06-13 21:08:37,022.022 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:37,029.029 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:37,121.121 INFO    ] [publish_status] Message added to stream with ID: 1781365117079-0
[2026-06-13 21:08:37,124.124 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "status": "False"}', 'timestamp': '2026-06-13T15:38:37.015710Z'} (ID: 1781365117079-0)
[2026-06-13 21:08:37,563.563 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}}
[2026-06-13 21:08:37,566.566 INFO    ] 200
[2026-06-13 21:08:37,569.569 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"OrderStatus","server_response":{"error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:37,572.572 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:37,574.574 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:40,636.636 INFO    ] 200
[2026-06-13 21:08:40,639.639 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:40,642.642 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:43,684.684 INFO    ] 200
[2026-06-13 21:08:43,685.685 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:43,687.687 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:46,722.722 INFO    ] 200
[2026-06-13 21:08:46,723.723 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 21:08:46,725.725 INFO    ] Please close door 2
[2026-06-13 21:08:46,726.726 INFO    ] Please close door 2
[2026-06-13 21:08:46,728.728 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 21:08:46,729.729 INFO    ] 2026-06-13 21:08:46
[2026-06-13 21:08:46,731.731 INFO    ] playing audio file
[2026-06-13 21:08:46,742.742 INFO    ] 2026-06-13 21:08:46
[2026-06-13 21:08:46,744.744 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:46,745.745 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:46,834.834 INFO    ] [publish_status] Message added to stream with ID: 1781365126793-0
[2026-06-13 21:08:46,835.835 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': '{"error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}, {"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "status": "False"}', 'timestamp': '2026-06-13T15:38:46.743106Z'} (ID: 1781365126793-0)
[2026-06-13 21:08:47,156.156 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}}
[2026-06-13 21:08:47,157.157 INFO    ] 200
[2026-06-13 21:08:47,158.158 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"OrderStatus","server_response":{"error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"},{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:47,160.160 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'OrderStatus', 'server_response': {'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:47,161.161 INFO    ] {'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False'}
[2026-06-13 21:08:50,216.216 INFO    ] 200
[2026-06-13 21:08:50,219.219 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 21:08:50,222.222 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'status': 'True'}
[2026-06-13 21:08:50,225.225 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,228.228 INFO    ] Order Completed 
[2026-06-13 21:08:50,230.230 INFO    ] Order Completed 
[2026-06-13 21:08:50,233.233 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 21:08:50,236.236 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,239.239 INFO    ] playing audio file
[2026-06-13 21:08:50,256.256 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,260.260 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'status': 'True'}
[2026-06-13 21:08:50,263.263 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,665.665 INFO    ] 200
[2026-06-13 21:08:50,668.668 INFO    ] {"res": "True", "orderId": "TM08202203260613210725879", "skus": [{"image_url": "https://images.tinymart.in/product/4500687-5964.webp", "skuid": "4500687", "door_id": "", "tray_id": "23", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "unit_price": "10", "mrp": "10", "qty": 2, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "", "tray_id": "39", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "skuid": "186084", "door_id": "", "tray_id": "40", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 70.0}
[2026-06-13 21:08:50,671.671 INFO    ] {'logic': 'WBL', 'skus': [{'mrp': '10', 'qty': 2, 'skuid': '4500687', 'tray_id': '23', 'unit_price': '10', 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'mrp': '20', 'qty': 1, 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'door_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'mrp': '30', 'qty': 1, 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'orderId': 'TM08202203260613210725879', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'total_amount': 70.0}
[2026-06-13 21:08:50,674.674 INFO    ] {'logic': 'WBL', 'skus': [{'mrp': '10', 'qty': 2, 'skuid': '4500687', 'tray_id': '23', 'unit_price': '10', 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'mrp': '20', 'qty': 1, 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'door_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'mrp': '30', 'qty': 1, 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'orderId': 'TM08202203260613210725879', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'total_amount': 70.0}
[2026-06-13 21:08:50,676.676 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,679.679 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,681.681 INFO    ] 70
[2026-06-13 21:08:50,684.684 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,686.686 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,688.688 INFO    ]  Your Bill Amount is 70
[2026-06-13 21:08:50,691.691 INFO    ]  Your Bill Amount is 70
[2026-06-13 21:08:50,693.693 INFO    ] fe4177b52341392c156fd3492fee0be1
[2026-06-13 21:08:50,696.696 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,698.698 INFO    ] playing audio file
[2026-06-13 21:08:50,715.715 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,719.719 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:50,722.722 INFO    ] publish_status: order_id=TM08202203260613210725879
[2026-06-13 21:08:50,725.725 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613210725879
[2026-06-13 21:08:50,784.784 INFO    ] [publish_status] Message added to stream with ID: 1781365130743-0
[2026-06-13 21:08:50,787.787 INFO    ] Published to order:TM08202203260613210725879: {'order_id': 'TM08202203260613210725879', 'server_status': 'invoiceOrder', 'server_response': '{"logic": "WBL", "skus": [{"mrp": "10", "qty": 2, "skuid": "4500687", "tray_id": "23", "unit_price": "10", "door_id": "", "name": "Modern Kitchens Potato waffers Spicy 24gm  per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500687-5964.webp"}, {"mrp": "20", "qty": 1, "skuid": "4500541", "tray_id": "39", "unit_price": "20", "door_id": "", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg"}, {"mrp": "30", "qty": 1, "skuid": "186084", "tray_id": "40", "unit_price": "30", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/186084-5395.png"}], "orderId": "TM08202203260613210725879", "res": "True", "rstatus": true, "anomaly": 0, "total_amount": 70.0}', 'timestamp': '2026-06-13T15:38:50.721015Z'} (ID: 1781365130743-0)
[2026-06-13 21:08:50,909.909 INFO    ] {'order_id': 'TM08202203260613210725879', 'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'skus': [{'mrp': '10', 'qty': 2, 'skuid': '4500687', 'tray_id': '23', 'unit_price': '10', 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'mrp': '20', 'qty': 1, 'skuid': '4500541', 'tray_id': '39', 'unit_price': '20', 'door_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'mrp': '30', 'qty': 1, 'skuid': '186084', 'tray_id': '40', 'unit_price': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'orderId': 'TM08202203260613210725879', 'res': 'True', 'rstatus': True, 'anomaly': 0, 'total_amount': 70.0}}
[2026-06-13 21:08:50,912.912 INFO    ] 200
[2026-06-13 21:08:50,914.914 INFO    ] {"data":{"order_id":"TM08202203260613210725879","server_status":"invoiceOrder","server_response":{"logic":"WBL","skus":[{"mrp":"10","qty":2,"skuid":"4500687","tray_id":"23","unit_price":"10","door_id":"","name":"Modern Kitchens Potato waffers Spicy 24gm  per peice","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500687-5964.webp"},{"mrp":"20","qty":1,"skuid":"4500541","tray_id":"39","unit_price":"20","door_id":"","name":"Cad bury Dairy Milk Chocolate 18gm per peice","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg"},{"mrp":"30","qty":1,"skuid":"186084","tray_id":"40","unit_price":"30","door_id":"","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","sku_total":30,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"}],"orderId":"TM08202203260613210725879","res":"true","rstatus":true,"anomaly":0,"total_amount":70}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 21:08:50,918.918 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'skus': [{'skuid': '4500687', 'qty': 2, 'mrp': '10', 'tray_id': '23', 'unit_price': '10', 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'skuid': '4500541', 'qty': 1, 'mrp': '20', 'tray_id': '39', 'unit_price': '20', 'door_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'skuid': '186084', 'qty': 1, 'mrp': '30', 'tray_id': '40', 'unit_price': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'orderId': 'TM08202203260613210725879', 'res': 'true', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 70}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:50,921.921 INFO    ] {'data': {'order_id': 'TM08202203260613210725879', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'skus': [{'skuid': '4500687', 'qty': 2, 'mrp': '10', 'tray_id': '23', 'unit_price': '10', 'door_id': '', 'name': 'Modern Kitchens Potato waffers Spicy 24gm  per peice', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500687-5964.webp'}, {'skuid': '4500541', 'qty': 1, 'mrp': '20', 'tray_id': '39', 'unit_price': '20', 'door_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg'}, {'skuid': '186084', 'qty': 1, 'mrp': '30', 'tray_id': '40', 'unit_price': '30', 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}], 'orderId': 'TM08202203260613210725879', 'res': 'true', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 70}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-13 21:08:50,924.924 INFO    ] 2026-06-13 21:08:50
[2026-06-13 21:08:54,324.324 INFO    ] 200
[2026-06-13 21:08:54,326.326 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879", "TM08202203260613210725879"], "orders_synced": [], "order_items_synced": ["TM08202203260613210725879_0", "TM08202203260613210725879_1", "TM08202203260613210725879_2"], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 21:08:54,329.329 INFO    ] 2026-06-13 21:08:54
[2026-06-13 21:08:54,420.420 INFO    ] 200
[2026-06-13 21:08:54,421.421 INFO    ] True
[2026-06-13 21:08:54,422.422 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613210725879
[2026-06-13 21:08:54,424.424 INFO    ] start order file deleted
[2026-06-13 21:08:54,426.426 INFO    ] Checking for system updates...
[2026-06-13 21:08:54,445.445 INFO    ] 200
[2026-06-13 21:08:54,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:54,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:08:54,480.480 INFO    ] No update needed
[2026-06-13 21:08:54,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 21:08:54,507.507 INFO    ] 200
[2026-06-13 21:08:54,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:08:54,532.532 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:08:54,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:08:54,608.608 INFO    ] No camera update needed
[2026-06-13 21:08:54,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:08:54,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:08:54,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:08:54,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:08:56,657.657 INFO    ] ================================================
[2026-06-13 21:08:56,672.672 INFO    ] Launching Daemon at Sat Jun 13 21:08:56 IST 2026
[2026-06-13 21:08:56,683.683 INFO    ] ================================================
[2026-06-13 21:08:57,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:08:57
[2026-06-13 21:08:57,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:08:57,760.760 INFO    ] Initializing speech engine...
[2026-06-13 21:08:57,775.775 INFO    ] 2026-06-13 21:08:57
[2026-06-13 21:08:58,061.061 INFO    ] 2026-06-13 21:08:58
[2026-06-13 21:08:58,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:08:58,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:08:58,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:08:58,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:08:58,444.444 INFO    ] time= 13/06/2026 21:08:58
[2026-06-13 21:08:58,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:08:58,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:08:58,570.570 INFO    ] No existing commands found in stream
[2026-06-13 21:09:03,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:03,583.583 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-13 21:09:06,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:09:06,280.280 INFO    ] Checking for system updates...
[2026-06-13 21:09:06,301.301 INFO    ] 200
[2026-06-13 21:09:06,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:06,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:09:06,343.343 INFO    ] No update needed
[2026-06-13 21:09:06,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:06,364.364 INFO    ] 200
[2026-06-13 21:09:06,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:06,391.391 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:06,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:06,433.433 INFO    ] No camera update needed
[2026-06-13 21:09:06,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:06,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:06,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:06,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:09:08,479.479 INFO    ] ================================================
[2026-06-13 21:09:08,497.497 INFO    ] Launching Daemon at Sat Jun 13 21:09:08 IST 2026
[2026-06-13 21:09:08,508.508 INFO    ] ================================================
[2026-06-13 21:09:08,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:09:08
[2026-06-13 21:09:09,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:09:09,335.335 INFO    ] Initializing speech engine...
[2026-06-13 21:09:09,348.348 INFO    ] 2026-06-13 21:09:09
[2026-06-13 21:09:09,556.556 INFO    ] 2026-06-13 21:09:09
[2026-06-13 21:09:09,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:09:09,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:09:09,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:09:09,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:09:09,957.957 INFO    ] time= 13/06/2026 21:09:09
[2026-06-13 21:09:09,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:09:10,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:09:10,072.072 INFO    ] No existing commands found in stream
[2026-06-13 21:09:15,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:15,084.084 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-13 21:09:16,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:09:17,001.001 INFO    ] Checking for system updates...
[2026-06-13 21:09:17,021.021 INFO    ] 200
[2026-06-13 21:09:17,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:17,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:17,054.054 INFO    ] No update needed
[2026-06-13 21:09:17,056.056 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:17,076.076 INFO    ] 200
[2026-06-13 21:09:17,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:17,103.103 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:17,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:17,142.142 INFO    ] No camera update needed
[2026-06-13 21:09:17,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:17,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:17,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:17,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:09:19,183.183 INFO    ] ================================================
[2026-06-13 21:09:19,198.198 INFO    ] Launching Daemon at Sat Jun 13 21:09:19 IST 2026
[2026-06-13 21:09:19,209.209 INFO    ] ================================================
[2026-06-13 21:09:19,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:09:19
[2026-06-13 21:09:20,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:09:20,550.550 INFO    ] Initializing speech engine...
[2026-06-13 21:09:20,564.564 INFO    ] 2026-06-13 21:09:20
[2026-06-13 21:09:20,872.872 INFO    ] 2026-06-13 21:09:20
[2026-06-13 21:09:20,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:09:21,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:09:21,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:09:21,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:09:21,389.389 INFO    ] time= 13/06/2026 21:09:21
[2026-06-13 21:09:21,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:09:21,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:09:21,543.543 INFO    ] No existing commands found in stream
[2026-06-13 21:09:26,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:26,567.567 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 21:09:28,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:09:28,205.205 INFO    ] Checking for system updates...
[2026-06-13 21:09:28,226.226 INFO    ] 200
[2026-06-13 21:09:28,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:28,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:09:28,263.263 INFO    ] No update needed
[2026-06-13 21:09:28,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:28,286.286 INFO    ] 200
[2026-06-13 21:09:28,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:28,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:28,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:09:28,363.363 INFO    ] No camera update needed
[2026-06-13 21:09:28,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:28,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:28,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:28,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:09:30,412.412 INFO    ] ================================================
[2026-06-13 21:09:30,428.428 INFO    ] Launching Daemon at Sat Jun 13 21:09:30 IST 2026
[2026-06-13 21:09:30,439.439 INFO    ] ================================================
[2026-06-13 21:09:30,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:09:30
[2026-06-13 21:09:31,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:09:31,542.542 INFO    ] Initializing speech engine...
[2026-06-13 21:09:31,566.566 INFO    ] 2026-06-13 21:09:31
[2026-06-13 21:09:31,844.844 INFO    ] 2026-06-13 21:09:31
[2026-06-13 21:09:31,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:09:32,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:09:32,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:09:32,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:09:32,238.238 INFO    ] time= 13/06/2026 21:09:32
[2026-06-13 21:09:32,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:09:32,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:09:32,348.348 INFO    ] No existing commands found in stream
[2026-06-13 21:09:37,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:37,366.366 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 21:09:37,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:09:37,965.965 INFO    ] Checking for system updates...
[2026-06-13 21:09:37,985.985 INFO    ] 200
[2026-06-13 21:09:37,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:38,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:09:38,020.020 INFO    ] No update needed
[2026-06-13 21:09:38,021.021 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:38,042.042 INFO    ] 200
[2026-06-13 21:09:38,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:38,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:38,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:09:38,109.109 INFO    ] No camera update needed
[2026-06-13 21:09:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:38,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:38,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:38,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:09:40,156.156 INFO    ] ================================================
[2026-06-13 21:09:40,171.171 INFO    ] Launching Daemon at Sat Jun 13 21:09:40 IST 2026
[2026-06-13 21:09:40,181.181 INFO    ] ================================================
[2026-06-13 21:09:40,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:09:40
[2026-06-13 21:09:40,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:09:40,969.969 INFO    ] Initializing speech engine...
[2026-06-13 21:09:40,974.974 INFO    ] 2026-06-13 21:09:40
[2026-06-13 21:09:41,175.175 INFO    ] 2026-06-13 21:09:41
[2026-06-13 21:09:41,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:09:41,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:09:41,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:09:41,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:09:41,583.583 INFO    ] time= 13/06/2026 21:09:41
[2026-06-13 21:09:41,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:09:41,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:09:41,698.698 INFO    ] No existing commands found in stream
[2026-06-13 21:09:46,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:46,710.710 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 21:09:48,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:09:48,362.362 INFO    ] Checking for system updates...
[2026-06-13 21:09:48,384.384 INFO    ] 200
[2026-06-13 21:09:48,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:48,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:48,418.418 INFO    ] No update needed
[2026-06-13 21:09:48,419.419 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:48,438.438 INFO    ] 200
[2026-06-13 21:09:48,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:48,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:48,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:48,504.504 INFO    ] No camera update needed
[2026-06-13 21:09:48,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:48,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:48,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:48,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:09:50,554.554 INFO    ] ================================================
[2026-06-13 21:09:50,569.569 INFO    ] Launching Daemon at Sat Jun 13 21:09:50 IST 2026
[2026-06-13 21:09:50,579.579 INFO    ] ================================================
[2026-06-13 21:09:50,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:09:50
[2026-06-13 21:09:51,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:09:51,381.381 INFO    ] Initializing speech engine...
[2026-06-13 21:09:51,385.385 INFO    ] 2026-06-13 21:09:51
[2026-06-13 21:09:51,602.602 INFO    ] 2026-06-13 21:09:51
[2026-06-13 21:09:51,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:09:51,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:09:51,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:09:51,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:09:52,008.008 INFO    ] time= 13/06/2026 21:09:51
[2026-06-13 21:09:52,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:09:52,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:09:52,115.115 INFO    ] No existing commands found in stream
[2026-06-13 21:09:57,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:09:57,129.129 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 21:09:59,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:09:59,417.417 INFO    ] Checking for system updates...
[2026-06-13 21:09:59,439.439 INFO    ] 200
[2026-06-13 21:09:59,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:59,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:59,475.475 INFO    ] No update needed
[2026-06-13 21:09:59,476.476 INFO    ] Checking for camera pi updates...
[2026-06-13 21:09:59,496.496 INFO    ] 200
[2026-06-13 21:09:59,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:09:59,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:09:59,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:09:59,561.561 INFO    ] No camera update needed
[2026-06-13 21:09:59,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:09:59,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:09:59,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:09:59,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:01,609.609 INFO    ] ================================================
[2026-06-13 21:10:01,624.624 INFO    ] Launching Daemon at Sat Jun 13 21:10:01 IST 2026
[2026-06-13 21:10:01,635.635 INFO    ] ================================================
[2026-06-13 21:10:02,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:02
[2026-06-13 21:10:02,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:03,306.306 INFO    ] Initializing speech engine...
[2026-06-13 21:10:03,312.312 INFO    ] 2026-06-13 21:10:03
[2026-06-13 21:10:03,666.666 INFO    ] 2026-06-13 21:10:03
[2026-06-13 21:10:03,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:03,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:03,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:04,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:04,117.117 INFO    ] time= 13/06/2026 21:10:04
[2026-06-13 21:10:04,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:04,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:04,239.239 INFO    ] No existing commands found in stream
[2026-06-13 21:10:09,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:10:09,268.268 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 21:10:11,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:10:11,347.347 INFO    ] Checking for system updates...
[2026-06-13 21:10:11,369.369 INFO    ] 200
[2026-06-13 21:10:11,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:11,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:10:11,403.403 INFO    ] No update needed
[2026-06-13 21:10:11,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 21:10:11,424.424 INFO    ] 200
[2026-06-13 21:10:11,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:11,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:10:11,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:10:11,491.491 INFO    ] No camera update needed
[2026-06-13 21:10:11,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:10:11,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:10:11,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:10:11,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:13,541.541 INFO    ] ================================================
[2026-06-13 21:10:13,556.556 INFO    ] Launching Daemon at Sat Jun 13 21:10:13 IST 2026
[2026-06-13 21:10:13,566.566 INFO    ] ================================================
[2026-06-13 21:10:13,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:13
[2026-06-13 21:10:14,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:14,383.383 INFO    ] Initializing speech engine...
[2026-06-13 21:10:14,387.387 INFO    ] 2026-06-13 21:10:14
[2026-06-13 21:10:14,591.591 INFO    ] 2026-06-13 21:10:14
[2026-06-13 21:10:14,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:14,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:14,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:14,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:14,920.920 INFO    ] time= 13/06/2026 21:10:14
[2026-06-13 21:10:14,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:15,085.085 INFO    ] No existing commands found in stream
[2026-06-13 21:10:20,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:10:20,119.119 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 21:10:23,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:10:23,100.100 INFO    ] Checking for system updates...
[2026-06-13 21:10:23,121.121 INFO    ] 200
[2026-06-13 21:10:23,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:23,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:10:23,154.154 INFO    ] No update needed
[2026-06-13 21:10:23,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 21:10:23,176.176 INFO    ] 200
[2026-06-13 21:10:23,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:23,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:10:23,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:10:23,237.237 INFO    ] No camera update needed
[2026-06-13 21:10:23,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:10:23,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:10:23,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:10:23,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:25,285.285 INFO    ] ================================================
[2026-06-13 21:10:25,300.300 INFO    ] Launching Daemon at Sat Jun 13 21:10:25 IST 2026
[2026-06-13 21:10:25,311.311 INFO    ] ================================================
[2026-06-13 21:10:25,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:25
[2026-06-13 21:10:25,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:26,120.120 INFO    ] Initializing speech engine...
[2026-06-13 21:10:26,125.125 INFO    ] 2026-06-13 21:10:26
[2026-06-13 21:10:26,328.328 INFO    ] 2026-06-13 21:10:26
[2026-06-13 21:10:26,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:26,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:26,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:26,727.727 INFO    ] time= 13/06/2026 21:10:26
[2026-06-13 21:10:26,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:26,842.842 INFO    ] No existing commands found in stream
[2026-06-13 21:10:31,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:10:31,854.854 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 21:10:34,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:10:34,778.778 INFO    ] Checking for system updates...
[2026-06-13 21:10:34,814.814 INFO    ] 200
[2026-06-13 21:10:34,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:34,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:10:34,873.873 INFO    ] No update needed
[2026-06-13 21:10:34,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 21:10:34,913.913 INFO    ] 200
[2026-06-13 21:10:34,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:34,956.956 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:10:34,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:10:35,000.000 INFO    ] No camera update needed
[2026-06-13 21:10:35,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:10:35,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:10:35,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:10:35,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:37,057.057 INFO    ] ================================================
[2026-06-13 21:10:37,072.072 INFO    ] Launching Daemon at Sat Jun 13 21:10:37 IST 2026
[2026-06-13 21:10:37,083.083 INFO    ] ================================================
[2026-06-13 21:10:37,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:37
[2026-06-13 21:10:37,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:37,887.887 INFO    ] Initializing speech engine...
[2026-06-13 21:10:37,892.892 INFO    ] 2026-06-13 21:10:37
[2026-06-13 21:10:38,122.122 INFO    ] 2026-06-13 21:10:38
[2026-06-13 21:10:38,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:38,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:38,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:38,555.555 INFO    ] time= 13/06/2026 21:10:38
[2026-06-13 21:10:38,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:38,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:38,684.684 INFO    ] No existing commands found in stream
[2026-06-13 21:10:43,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:10:43,698.698 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 21:10:44,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:10:44,366.366 INFO    ] Checking for system updates...
[2026-06-13 21:10:44,388.388 INFO    ] 200
[2026-06-13 21:10:44,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:44,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:10:44,422.422 INFO    ] No update needed
[2026-06-13 21:10:44,423.423 INFO    ] Checking for camera pi updates...
[2026-06-13 21:10:44,442.442 INFO    ] 200
[2026-06-13 21:10:44,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:44,467.467 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:10:44,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:10:44,517.517 INFO    ] No camera update needed
[2026-06-13 21:10:44,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:10:44,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:10:44,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:10:44,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:46,564.564 INFO    ] ================================================
[2026-06-13 21:10:46,580.580 INFO    ] Launching Daemon at Sat Jun 13 21:10:46 IST 2026
[2026-06-13 21:10:46,590.590 INFO    ] ================================================
[2026-06-13 21:10:46,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:46
[2026-06-13 21:10:47,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:47,400.400 INFO    ] Initializing speech engine...
[2026-06-13 21:10:47,405.405 INFO    ] 2026-06-13 21:10:47
[2026-06-13 21:10:47,610.610 INFO    ] 2026-06-13 21:10:47
[2026-06-13 21:10:47,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:47,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:47,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:47,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:48,014.014 INFO    ] time= 13/06/2026 21:10:47
[2026-06-13 21:10:48,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:48,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:48,125.125 INFO    ] No existing commands found in stream
[2026-06-13 21:10:53,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:10:53,137.137 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 21:10:54,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:10:54,262.262 INFO    ] Checking for system updates...
[2026-06-13 21:10:54,283.283 INFO    ] 200
[2026-06-13 21:10:54,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:54,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:10:54,317.317 INFO    ] No update needed
[2026-06-13 21:10:54,319.319 INFO    ] Checking for camera pi updates...
[2026-06-13 21:10:54,339.339 INFO    ] 200
[2026-06-13 21:10:54,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:10:54,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:10:54,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:10:54,505.505 INFO    ] No camera update needed
[2026-06-13 21:10:54,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:10:54,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:10:54,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:10:54,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:10:56,553.553 INFO    ] ================================================
[2026-06-13 21:10:56,568.568 INFO    ] Launching Daemon at Sat Jun 13 21:10:56 IST 2026
[2026-06-13 21:10:56,579.579 INFO    ] ================================================
[2026-06-13 21:10:56,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:10:56
[2026-06-13 21:10:57,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:10:57,378.378 INFO    ] Initializing speech engine...
[2026-06-13 21:10:57,391.391 INFO    ] 2026-06-13 21:10:57
[2026-06-13 21:10:57,609.609 INFO    ] 2026-06-13 21:10:57
[2026-06-13 21:10:57,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:10:57,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:10:57,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:10:57,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:10:58,037.037 INFO    ] time= 13/06/2026 21:10:57
[2026-06-13 21:10:58,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:10:58,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:10:58,163.163 INFO    ] No existing commands found in stream
[2026-06-13 21:11:03,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:03,176.176 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 21:11:07,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:11:07,331.331 INFO    ] Checking for system updates...
[2026-06-13 21:11:07,370.370 INFO    ] 200
[2026-06-13 21:11:07,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:07,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:07,430.430 INFO    ] No update needed
[2026-06-13 21:11:07,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:07,466.466 INFO    ] 200
[2026-06-13 21:11:07,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:07,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:07,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:07,550.550 INFO    ] No camera update needed
[2026-06-13 21:11:07,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:07,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:07,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:07,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:11:09,605.605 INFO    ] ================================================
[2026-06-13 21:11:09,620.620 INFO    ] Launching Daemon at Sat Jun 13 21:11:09 IST 2026
[2026-06-13 21:11:09,631.631 INFO    ] ================================================
[2026-06-13 21:11:10,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:11:10
[2026-06-13 21:11:10,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:11:10,476.476 INFO    ] Initializing speech engine...
[2026-06-13 21:11:10,484.484 INFO    ] 2026-06-13 21:11:10
[2026-06-13 21:11:10,699.699 INFO    ] 2026-06-13 21:11:10
[2026-06-13 21:11:10,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:11:10,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:11:10,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:11:11,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:11:11,117.117 INFO    ] time= 13/06/2026 21:11:11
[2026-06-13 21:11:11,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:11:11,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:11:11,215.215 INFO    ] No existing commands found in stream
[2026-06-13 21:11:16,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:16,233.233 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 21:11:19,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:11:19,102.102 INFO    ] Checking for system updates...
[2026-06-13 21:11:19,123.123 INFO    ] 200
[2026-06-13 21:11:19,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:19,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:19,156.156 INFO    ] No update needed
[2026-06-13 21:11:19,158.158 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:19,178.178 INFO    ] 200
[2026-06-13 21:11:19,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:19,203.203 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:19,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:19,240.240 INFO    ] No camera update needed
[2026-06-13 21:11:19,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:19,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:19,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:19,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:11:21,288.288 INFO    ] ================================================
[2026-06-13 21:11:21,304.304 INFO    ] Launching Daemon at Sat Jun 13 21:11:21 IST 2026
[2026-06-13 21:11:21,314.314 INFO    ] ================================================
[2026-06-13 21:11:21,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:11:21
[2026-06-13 21:11:22,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:11:22,147.147 INFO    ] Initializing speech engine...
[2026-06-13 21:11:22,157.157 INFO    ] 2026-06-13 21:11:22
[2026-06-13 21:11:22,366.366 INFO    ] 2026-06-13 21:11:22
[2026-06-13 21:11:22,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:11:22,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:11:22,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:11:22,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:11:22,785.785 INFO    ] time= 13/06/2026 21:11:22
[2026-06-13 21:11:22,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:11:22,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:11:22,880.880 INFO    ] No existing commands found in stream
[2026-06-13 21:11:27,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:27,894.894 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 21:11:29,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:11:29,545.545 INFO    ] Checking for system updates...
[2026-06-13 21:11:29,566.566 INFO    ] 200
[2026-06-13 21:11:29,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:29,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:29,602.602 INFO    ] No update needed
[2026-06-13 21:11:29,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:29,625.625 INFO    ] 200
[2026-06-13 21:11:29,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:29,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:29,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:29,689.689 INFO    ] No camera update needed
[2026-06-13 21:11:29,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:29,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:29,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:29,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:11:31,734.734 INFO    ] ================================================
[2026-06-13 21:11:31,744.744 INFO    ] Launching Daemon at Sat Jun 13 21:11:31 IST 2026
[2026-06-13 21:11:31,751.751 INFO    ] ================================================
[2026-06-13 21:11:32,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:11:32
[2026-06-13 21:11:32,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:11:32,554.554 INFO    ] Initializing speech engine...
[2026-06-13 21:11:32,563.563 INFO    ] 2026-06-13 21:11:32
[2026-06-13 21:11:32,787.787 INFO    ] 2026-06-13 21:11:32
[2026-06-13 21:11:32,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:11:32,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:11:33,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:11:33,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:11:33,204.204 INFO    ] time= 13/06/2026 21:11:33
[2026-06-13 21:11:33,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:11:33,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:11:33,339.339 INFO    ] No existing commands found in stream
[2026-06-13 21:11:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:38,353.353 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 21:11:39,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:11:39,964.964 INFO    ] Checking for system updates...
[2026-06-13 21:11:39,985.985 INFO    ] 200
[2026-06-13 21:11:39,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:40,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:11:40,018.018 INFO    ] No update needed
[2026-06-13 21:11:40,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:40,039.039 INFO    ] 200
[2026-06-13 21:11:40,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:40,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:40,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:11:40,112.112 INFO    ] No camera update needed
[2026-06-13 21:11:40,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:40,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:40,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:40,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:11:42,161.161 INFO    ] ================================================
[2026-06-13 21:11:42,175.175 INFO    ] Launching Daemon at Sat Jun 13 21:11:42 IST 2026
[2026-06-13 21:11:42,186.186 INFO    ] ================================================
[2026-06-13 21:11:42,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:11:42
[2026-06-13 21:11:42,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:11:42,969.969 INFO    ] Initializing speech engine...
[2026-06-13 21:11:42,979.979 INFO    ] 2026-06-13 21:11:42
[2026-06-13 21:11:43,181.181 INFO    ] 2026-06-13 21:11:43
[2026-06-13 21:11:43,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:11:43,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:11:43,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:11:43,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:11:43,596.596 INFO    ] time= 13/06/2026 21:11:43
[2026-06-13 21:11:43,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:11:43,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:11:43,697.697 INFO    ] No existing commands found in stream
[2026-06-13 21:11:48,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:48,710.710 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 21:11:49,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:11:49,074.074 INFO    ] Checking for system updates...
[2026-06-13 21:11:49,095.095 INFO    ] 200
[2026-06-13 21:11:49,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:49,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:49,130.130 INFO    ] No update needed
[2026-06-13 21:11:49,132.132 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:49,151.151 INFO    ] 200
[2026-06-13 21:11:49,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:49,175.175 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:49,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:11:49,218.218 INFO    ] No camera update needed
[2026-06-13 21:11:49,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:49,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:49,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:49,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:11:51,267.267 INFO    ] ================================================
[2026-06-13 21:11:51,282.282 INFO    ] Launching Daemon at Sat Jun 13 21:11:51 IST 2026
[2026-06-13 21:11:51,292.292 INFO    ] ================================================
[2026-06-13 21:11:51,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:11:51
[2026-06-13 21:11:51,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:11:52,128.128 INFO    ] Initializing speech engine...
[2026-06-13 21:11:52,133.133 INFO    ] 2026-06-13 21:11:52
[2026-06-13 21:11:52,337.337 INFO    ] 2026-06-13 21:11:52
[2026-06-13 21:11:52,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:11:52,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:11:52,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:11:52,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:11:52,742.742 INFO    ] time= 13/06/2026 21:11:52
[2026-06-13 21:11:52,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:11:52,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:11:52,852.852 INFO    ] No existing commands found in stream
[2026-06-13 21:11:57,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:11:57,865.865 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 21:11:58,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:11:58,627.627 INFO    ] Checking for system updates...
[2026-06-13 21:11:58,647.647 INFO    ] 200
[2026-06-13 21:11:58,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:58,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:11:58,680.680 INFO    ] No update needed
[2026-06-13 21:11:58,681.681 INFO    ] Checking for camera pi updates...
[2026-06-13 21:11:58,704.704 INFO    ] 200
[2026-06-13 21:11:58,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:11:58,728.728 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:11:58,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:11:58,775.775 INFO    ] No camera update needed
[2026-06-13 21:11:58,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:11:58,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:11:58,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:11:58,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:00,822.822 INFO    ] ================================================
[2026-06-13 21:12:00,837.837 INFO    ] Launching Daemon at Sat Jun 13 21:12:00 IST 2026
[2026-06-13 21:12:00,848.848 INFO    ] ================================================
[2026-06-13 21:12:01,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:01
[2026-06-13 21:12:01,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:01,654.654 INFO    ] Initializing speech engine...
[2026-06-13 21:12:01,657.657 INFO    ] 2026-06-13 21:12:01
[2026-06-13 21:12:01,966.966 INFO    ] 2026-06-13 21:12:01
[2026-06-13 21:12:02,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:02,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:02,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:02,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:02,309.309 INFO    ] time= 13/06/2026 21:12:02
[2026-06-13 21:12:02,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:02,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:02,424.424 INFO    ] No existing commands found in stream
[2026-06-13 21:12:07,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:12:07,454.454 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 21:12:10,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:12:10,258.258 INFO    ] Checking for system updates...
[2026-06-13 21:12:10,279.279 INFO    ] 200
[2026-06-13 21:12:10,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:10,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:10,312.312 INFO    ] No update needed
[2026-06-13 21:12:10,313.313 INFO    ] Checking for camera pi updates...
[2026-06-13 21:12:10,335.335 INFO    ] 200
[2026-06-13 21:12:10,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:10,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:12:10,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:10,399.399 INFO    ] No camera update needed
[2026-06-13 21:12:10,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:12:10,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:12:10,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:12:10,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:12,446.446 INFO    ] ================================================
[2026-06-13 21:12:12,461.461 INFO    ] Launching Daemon at Sat Jun 13 21:12:12 IST 2026
[2026-06-13 21:12:12,472.472 INFO    ] ================================================
[2026-06-13 21:12:12,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:12
[2026-06-13 21:12:13,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:13,326.326 INFO    ] Initializing speech engine...
[2026-06-13 21:12:13,332.332 INFO    ] 2026-06-13 21:12:13
[2026-06-13 21:12:13,540.540 INFO    ] 2026-06-13 21:12:13
[2026-06-13 21:12:13,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:13,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:13,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:13,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:13,914.914 INFO    ] time= 13/06/2026 21:12:13
[2026-06-13 21:12:13,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:13,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:14,074.074 INFO    ] No existing commands found in stream
[2026-06-13 21:12:19,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:12:19,090.090 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 21:12:21,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:12:21,848.848 INFO    ] Checking for system updates...
[2026-06-13 21:12:21,871.871 INFO    ] 200
[2026-06-13 21:12:21,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:21,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:12:21,906.906 INFO    ] No update needed
[2026-06-13 21:12:21,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 21:12:21,927.927 INFO    ] 200
[2026-06-13 21:12:21,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:21,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:12:21,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:12:21,974.974 INFO    ] No camera update needed
[2026-06-13 21:12:21,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:12:21,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:12:21,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:12:21,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:24,022.022 INFO    ] ================================================
[2026-06-13 21:12:24,037.037 INFO    ] Launching Daemon at Sat Jun 13 21:12:24 IST 2026
[2026-06-13 21:12:24,047.047 INFO    ] ================================================
[2026-06-13 21:12:24,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:24
[2026-06-13 21:12:24,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:24,835.835 INFO    ] Initializing speech engine...
[2026-06-13 21:12:24,844.844 INFO    ] 2026-06-13 21:12:24
[2026-06-13 21:12:25,034.034 INFO    ] 2026-06-13 21:12:25
[2026-06-13 21:12:25,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:25,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:25,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:25,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:25,483.483 INFO    ] time= 13/06/2026 21:12:25
[2026-06-13 21:12:25,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:25,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:25,639.639 INFO    ] No existing commands found in stream
[2026-06-13 21:12:30,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:12:30,652.652 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 21:12:33,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:12:33,546.546 INFO    ] Checking for system updates...
[2026-06-13 21:12:33,567.567 INFO    ] 200
[2026-06-13 21:12:33,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:33,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:12:33,603.603 INFO    ] No update needed
[2026-06-13 21:12:33,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 21:12:33,623.623 INFO    ] 200
[2026-06-13 21:12:33,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:33,648.648 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:12:33,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:12:33,690.690 INFO    ] No camera update needed
[2026-06-13 21:12:33,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:12:33,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:12:33,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:12:33,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:35,728.728 INFO    ] ================================================
[2026-06-13 21:12:35,737.737 INFO    ] Launching Daemon at Sat Jun 13 21:12:35 IST 2026
[2026-06-13 21:12:35,743.743 INFO    ] ================================================
[2026-06-13 21:12:36,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:36
[2026-06-13 21:12:36,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:36,580.580 INFO    ] Initializing speech engine...
[2026-06-13 21:12:36,587.587 INFO    ] 2026-06-13 21:12:36
[2026-06-13 21:12:36,807.807 INFO    ] 2026-06-13 21:12:36
[2026-06-13 21:12:36,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:37,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:37,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:37,212.212 INFO    ] time= 13/06/2026 21:12:37
[2026-06-13 21:12:37,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:37,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:37,364.364 INFO    ] No existing commands found in stream
[2026-06-13 21:12:42,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:12:42,377.377 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 21:12:43,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:12:43,561.561 INFO    ] Checking for system updates...
[2026-06-13 21:12:43,583.583 INFO    ] 200
[2026-06-13 21:12:43,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:43,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:43,618.618 INFO    ] No update needed
[2026-06-13 21:12:43,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 21:12:43,639.639 INFO    ] 200
[2026-06-13 21:12:43,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:43,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:12:43,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:43,698.698 INFO    ] No camera update needed
[2026-06-13 21:12:43,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:12:43,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:12:43,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:12:43,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:45,745.745 INFO    ] ================================================
[2026-06-13 21:12:45,761.761 INFO    ] Launching Daemon at Sat Jun 13 21:12:45 IST 2026
[2026-06-13 21:12:45,771.771 INFO    ] ================================================
[2026-06-13 21:12:46,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:46
[2026-06-13 21:12:46,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:46,571.571 INFO    ] Initializing speech engine...
[2026-06-13 21:12:46,576.576 INFO    ] 2026-06-13 21:12:46
[2026-06-13 21:12:46,797.797 INFO    ] 2026-06-13 21:12:46
[2026-06-13 21:12:46,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:47,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:47,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:47,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:47,201.201 INFO    ] time= 13/06/2026 21:12:47
[2026-06-13 21:12:47,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:47,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:47,345.345 INFO    ] No existing commands found in stream
[2026-06-13 21:12:52,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:12:52,361.361 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 21:12:52,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:12:52,775.775 INFO    ] Checking for system updates...
[2026-06-13 21:12:52,796.796 INFO    ] 200
[2026-06-13 21:12:52,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:52,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:52,830.830 INFO    ] No update needed
[2026-06-13 21:12:52,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 21:12:52,852.852 INFO    ] 200
[2026-06-13 21:12:52,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:12:52,877.877 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:12:52,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:12:52,914.914 INFO    ] No camera update needed
[2026-06-13 21:12:52,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:12:52,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:12:52,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:12:52,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:12:54,962.962 INFO    ] ================================================
[2026-06-13 21:12:54,978.978 INFO    ] Launching Daemon at Sat Jun 13 21:12:54 IST 2026
[2026-06-13 21:12:54,989.989 INFO    ] ================================================
[2026-06-13 21:12:55,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:12:55
[2026-06-13 21:12:56,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:12:56,205.205 INFO    ] Initializing speech engine...
[2026-06-13 21:12:56,211.211 INFO    ] 2026-06-13 21:12:56
[2026-06-13 21:12:56,430.430 INFO    ] 2026-06-13 21:12:56
[2026-06-13 21:12:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:12:56,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:12:56,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:12:56,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:12:56,839.839 INFO    ] time= 13/06/2026 21:12:56
[2026-06-13 21:12:56,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:12:56,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:12:56,995.995 INFO    ] No existing commands found in stream
[2026-06-13 21:13:02,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:02,011.011 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 21:13:04,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:13:04,555.555 INFO    ] Checking for system updates...
[2026-06-13 21:13:04,577.577 INFO    ] 200
[2026-06-13 21:13:04,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:04,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:04,610.610 INFO    ] No update needed
[2026-06-13 21:13:04,612.612 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:04,638.638 INFO    ] 200
[2026-06-13 21:13:04,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:04,665.665 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:04,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:04,702.702 INFO    ] No camera update needed
[2026-06-13 21:13:04,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:04,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:04,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:04,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:13:06,751.751 INFO    ] ================================================
[2026-06-13 21:13:06,767.767 INFO    ] Launching Daemon at Sat Jun 13 21:13:06 IST 2026
[2026-06-13 21:13:06,778.778 INFO    ] ================================================
[2026-06-13 21:13:07,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:13:07
[2026-06-13 21:13:07,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:13:07,656.656 INFO    ] Initializing speech engine...
[2026-06-13 21:13:07,661.661 INFO    ] 2026-06-13 21:13:07
[2026-06-13 21:13:07,870.870 INFO    ] 2026-06-13 21:13:07
[2026-06-13 21:13:07,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:13:08,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:13:08,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:13:08,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:13:08,281.281 INFO    ] time= 13/06/2026 21:13:08
[2026-06-13 21:13:08,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:13:08,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:13:08,397.397 INFO    ] No existing commands found in stream
[2026-06-13 21:13:13,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:13,412.412 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 21:13:14,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:13:14,617.617 INFO    ] Checking for system updates...
[2026-06-13 21:13:14,639.639 INFO    ] 200
[2026-06-13 21:13:14,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:14,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:14,673.673 INFO    ] No update needed
[2026-06-13 21:13:14,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:14,695.695 INFO    ] 200
[2026-06-13 21:13:14,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:14,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:14,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:14,762.762 INFO    ] No camera update needed
[2026-06-13 21:13:14,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:14,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:14,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:14,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:13:16,810.810 INFO    ] ================================================
[2026-06-13 21:13:16,826.826 INFO    ] Launching Daemon at Sat Jun 13 21:13:16 IST 2026
[2026-06-13 21:13:16,837.837 INFO    ] ================================================
[2026-06-13 21:13:17,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:13:17
[2026-06-13 21:13:17,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:13:17,654.654 INFO    ] Initializing speech engine...
[2026-06-13 21:13:17,665.665 INFO    ] 2026-06-13 21:13:17
[2026-06-13 21:13:17,867.867 INFO    ] 2026-06-13 21:13:17
[2026-06-13 21:13:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:13:18,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:13:18,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:13:18,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:13:18,270.270 INFO    ] time= 13/06/2026 21:13:18
[2026-06-13 21:13:18,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:13:18,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:13:18,380.380 INFO    ] No existing commands found in stream
[2026-06-13 21:13:23,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:23,392.392 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 21:13:26,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:13:26,126.126 INFO    ] Checking for system updates...
[2026-06-13 21:13:26,146.146 INFO    ] 200
[2026-06-13 21:13:26,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:26,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:26,180.180 INFO    ] No update needed
[2026-06-13 21:13:26,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:26,203.203 INFO    ] 200
[2026-06-13 21:13:26,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:26,230.230 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:26,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:26,268.268 INFO    ] No camera update needed
[2026-06-13 21:13:26,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:26,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:26,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:26,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:13:28,317.317 INFO    ] ================================================
[2026-06-13 21:13:28,333.333 INFO    ] Launching Daemon at Sat Jun 13 21:13:28 IST 2026
[2026-06-13 21:13:28,345.345 INFO    ] ================================================
[2026-06-13 21:13:28,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:13:28
[2026-06-13 21:13:29,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:13:29,154.154 INFO    ] Initializing speech engine...
[2026-06-13 21:13:29,159.159 INFO    ] 2026-06-13 21:13:29
[2026-06-13 21:13:29,391.391 INFO    ] 2026-06-13 21:13:29
[2026-06-13 21:13:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:13:29,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:13:29,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:13:29,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:13:29,803.803 INFO    ] time= 13/06/2026 21:13:29
[2026-06-13 21:13:29,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:13:29,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:13:29,952.952 INFO    ] No existing commands found in stream
[2026-06-13 21:13:34,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:34,965.965 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 21:13:36,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:13:36,566.566 INFO    ] Checking for system updates...
[2026-06-13 21:13:36,586.586 INFO    ] 200
[2026-06-13 21:13:36,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:36,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:36,622.622 INFO    ] No update needed
[2026-06-13 21:13:36,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:36,643.643 INFO    ] 200
[2026-06-13 21:13:36,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:36,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:36,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:36,707.707 INFO    ] No camera update needed
[2026-06-13 21:13:36,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:36,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:36,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:36,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:13:38,755.755 INFO    ] ================================================
[2026-06-13 21:13:38,771.771 INFO    ] Launching Daemon at Sat Jun 13 21:13:38 IST 2026
[2026-06-13 21:13:38,782.782 INFO    ] ================================================
[2026-06-13 21:13:39,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:13:39
[2026-06-13 21:13:39,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:13:39,653.653 INFO    ] Initializing speech engine...
[2026-06-13 21:13:39,659.659 INFO    ] 2026-06-13 21:13:39
[2026-06-13 21:13:39,867.867 INFO    ] 2026-06-13 21:13:39
[2026-06-13 21:13:39,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:13:40,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:13:40,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:13:40,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:13:40,281.281 INFO    ] time= 13/06/2026 21:13:40
[2026-06-13 21:13:40,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:13:40,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:13:40,387.387 INFO    ] No existing commands found in stream
[2026-06-13 21:13:45,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:45,415.415 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-13 21:13:47,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:13:47,351.351 INFO    ] Checking for system updates...
[2026-06-13 21:13:47,374.374 INFO    ] 200
[2026-06-13 21:13:47,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:47,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:47,407.407 INFO    ] No update needed
[2026-06-13 21:13:47,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:47,429.429 INFO    ] 200
[2026-06-13 21:13:47,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:47,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:47,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:13:47,501.501 INFO    ] No camera update needed
[2026-06-13 21:13:47,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:47,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:47,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:47,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:13:49,550.550 INFO    ] ================================================
[2026-06-13 21:13:49,566.566 INFO    ] Launching Daemon at Sat Jun 13 21:13:49 IST 2026
[2026-06-13 21:13:49,576.576 INFO    ] ================================================
[2026-06-13 21:13:49,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:13:49
[2026-06-13 21:13:50,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:13:50,387.387 INFO    ] Initializing speech engine...
[2026-06-13 21:13:50,391.391 INFO    ] 2026-06-13 21:13:50
[2026-06-13 21:13:50,622.622 INFO    ] 2026-06-13 21:13:50
[2026-06-13 21:13:50,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:13:50,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:13:50,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:13:50,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:13:51,043.043 INFO    ] time= 13/06/2026 21:13:50
[2026-06-13 21:13:51,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:13:51,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:13:51,183.183 INFO    ] No existing commands found in stream
[2026-06-13 21:13:56,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:13:56,196.196 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 21:13:58,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:13:58,459.459 INFO    ] Checking for system updates...
[2026-06-13 21:13:58,480.480 INFO    ] 200
[2026-06-13 21:13:58,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:58,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:58,514.514 INFO    ] No update needed
[2026-06-13 21:13:58,515.515 INFO    ] Checking for camera pi updates...
[2026-06-13 21:13:58,534.534 INFO    ] 200
[2026-06-13 21:13:58,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:13:58,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:13:58,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:13:58,610.610 INFO    ] No camera update needed
[2026-06-13 21:13:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:13:58,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:13:58,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:13:58,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:00,657.657 INFO    ] ================================================
[2026-06-13 21:14:00,673.673 INFO    ] Launching Daemon at Sat Jun 13 21:14:00 IST 2026
[2026-06-13 21:14:00,684.684 INFO    ] ================================================
[2026-06-13 21:14:01,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:01
[2026-06-13 21:14:01,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:01,615.615 INFO    ] Initializing speech engine...
[2026-06-13 21:14:01,620.620 INFO    ] 2026-06-13 21:14:01
[2026-06-13 21:14:01,871.871 INFO    ] 2026-06-13 21:14:01
[2026-06-13 21:14:01,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:14:02,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:14:02,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:14:02,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:14:02,337.337 INFO    ] time= 13/06/2026 21:14:02
[2026-06-13 21:14:02,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:14:02,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:14:02,505.505 INFO    ] No existing commands found in stream
[2026-06-13 21:14:07,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:14:07,519.519 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 21:14:10,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:14:10,003.003 INFO    ] Checking for system updates...
[2026-06-13 21:14:10,025.025 INFO    ] 200
[2026-06-13 21:14:10,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:10,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:10,058.058 INFO    ] No update needed
[2026-06-13 21:14:10,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 21:14:10,081.081 INFO    ] 200
[2026-06-13 21:14:10,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:10,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:14:10,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:10,150.150 INFO    ] No camera update needed
[2026-06-13 21:14:10,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:14:10,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:14:10,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:14:10,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:12,198.198 INFO    ] ================================================
[2026-06-13 21:14:12,213.213 INFO    ] Launching Daemon at Sat Jun 13 21:14:12 IST 2026
[2026-06-13 21:14:12,223.223 INFO    ] ================================================
[2026-06-13 21:14:12,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:12
[2026-06-13 21:14:12,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:13,003.003 INFO    ] Initializing speech engine...
[2026-06-13 21:14:13,006.006 INFO    ] 2026-06-13 21:14:13
[2026-06-13 21:14:13,236.236 INFO    ] 2026-06-13 21:14:13
[2026-06-13 21:14:13,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:14:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:14:13,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:14:13,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:14:13,648.648 INFO    ] time= 13/06/2026 21:14:13
[2026-06-13 21:14:13,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:14:13,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:14:13,796.796 INFO    ] No existing commands found in stream
[2026-06-13 21:14:18,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:14:18,810.810 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 21:14:19,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:14:19,918.918 INFO    ] Checking for system updates...
[2026-06-13 21:14:19,939.939 INFO    ] 200
[2026-06-13 21:14:19,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:19,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:14:19,973.973 INFO    ] No update needed
[2026-06-13 21:14:19,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 21:14:19,994.994 INFO    ] 200
[2026-06-13 21:14:19,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:20,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:14:20,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:14:20,057.057 INFO    ] No camera update needed
[2026-06-13 21:14:20,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:14:20,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:14:20,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:14:20,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:22,104.104 INFO    ] ================================================
[2026-06-13 21:14:22,120.120 INFO    ] Launching Daemon at Sat Jun 13 21:14:22 IST 2026
[2026-06-13 21:14:22,130.130 INFO    ] ================================================
[2026-06-13 21:14:22,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:22
[2026-06-13 21:14:22,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:22,956.956 INFO    ] Initializing speech engine...
[2026-06-13 21:14:22,961.961 INFO    ] 2026-06-13 21:14:22
[2026-06-13 21:14:23,208.208 INFO    ] 2026-06-13 21:14:23
[2026-06-13 21:14:23,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:14:23,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:14:23,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:14:23,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:14:23,618.618 INFO    ] time= 13/06/2026 21:14:23
[2026-06-13 21:14:23,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:14:23,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:14:23,771.771 INFO    ] No existing commands found in stream
[2026-06-13 21:14:28,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:14:28,805.805 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-13 21:14:32,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:14:32,023.023 INFO    ] Checking for system updates...
[2026-06-13 21:14:32,043.043 INFO    ] 200
[2026-06-13 21:14:32,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:32,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:32,077.077 INFO    ] No update needed
[2026-06-13 21:14:32,078.078 INFO    ] Checking for camera pi updates...
[2026-06-13 21:14:32,098.098 INFO    ] 200
[2026-06-13 21:14:32,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:32,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:14:32,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:32,152.152 INFO    ] No camera update needed
[2026-06-13 21:14:32,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:14:32,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:14:32,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:14:32,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:34,198.198 INFO    ] ================================================
[2026-06-13 21:14:34,213.213 INFO    ] Launching Daemon at Sat Jun 13 21:14:34 IST 2026
[2026-06-13 21:14:34,224.224 INFO    ] ================================================
[2026-06-13 21:14:34,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:34
[2026-06-13 21:14:34,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:35,070.070 INFO    ] Initializing speech engine...
[2026-06-13 21:14:35,076.076 INFO    ] 2026-06-13 21:14:35
[2026-06-13 21:14:35,280.280 INFO    ] 2026-06-13 21:14:35
[2026-06-13 21:14:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:14:35,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:14:35,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:14:35,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:14:35,668.668 INFO    ] time= 13/06/2026 21:14:35
[2026-06-13 21:14:35,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:14:35,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:14:35,794.794 INFO    ] No existing commands found in stream
[2026-06-13 21:14:40,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:14:40,811.811 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-13 21:14:44,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:14:44,282.282 INFO    ] Checking for system updates...
[2026-06-13 21:14:44,305.305 INFO    ] 200
[2026-06-13 21:14:44,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:44,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:44,340.340 INFO    ] No update needed
[2026-06-13 21:14:44,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 21:14:44,361.361 INFO    ] 200
[2026-06-13 21:14:44,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:44,388.388 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:14:44,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:44,428.428 INFO    ] No camera update needed
[2026-06-13 21:14:44,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:14:44,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:14:44,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:14:44,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:46,476.476 INFO    ] ================================================
[2026-06-13 21:14:46,492.492 INFO    ] Launching Daemon at Sat Jun 13 21:14:46 IST 2026
[2026-06-13 21:14:46,502.502 INFO    ] ================================================
[2026-06-13 21:14:46,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:46
[2026-06-13 21:14:47,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:47,301.301 INFO    ] Initializing speech engine...
[2026-06-13 21:14:47,306.306 INFO    ] 2026-06-13 21:14:47
[2026-06-13 21:14:47,494.494 INFO    ] 2026-06-13 21:14:47
[2026-06-13 21:14:47,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:14:47,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:14:47,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:14:47,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:14:47,914.914 INFO    ] time= 13/06/2026 21:14:47
[2026-06-13 21:14:47,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:14:47,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:14:48,035.035 INFO    ] No existing commands found in stream
[2026-06-13 21:14:53,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:14:53,047.047 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 21:14:56,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:14:56,258.258 INFO    ] Checking for system updates...
[2026-06-13 21:14:56,300.300 INFO    ] 200
[2026-06-13 21:14:56,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:56,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:56,358.358 INFO    ] No update needed
[2026-06-13 21:14:56,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 21:14:56,395.395 INFO    ] 200
[2026-06-13 21:14:56,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:14:56,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:14:56,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:14:56,487.487 INFO    ] No camera update needed
[2026-06-13 21:14:56,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:14:56,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:14:56,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:14:56,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:14:58,547.547 INFO    ] ================================================
[2026-06-13 21:14:58,562.562 INFO    ] Launching Daemon at Sat Jun 13 21:14:58 IST 2026
[2026-06-13 21:14:58,573.573 INFO    ] ================================================
[2026-06-13 21:14:59,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:14:59
[2026-06-13 21:14:59,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:14:59,740.740 INFO    ] Initializing speech engine...
[2026-06-13 21:14:59,746.746 INFO    ] 2026-06-13 21:14:59
[2026-06-13 21:14:59,949.949 INFO    ] 2026-06-13 21:14:59
[2026-06-13 21:14:59,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:00,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:00,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:00,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:00,338.338 INFO    ] time= 13/06/2026 21:15:00
[2026-06-13 21:15:00,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:00,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:00,462.462 INFO    ] No existing commands found in stream
[2026-06-13 21:15:05,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:15:05,475.475 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-13 21:15:06,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:15:06,467.467 INFO    ] Checking for system updates...
[2026-06-13 21:15:06,496.496 INFO    ] 200
[2026-06-13 21:15:06,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:06,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:06,534.534 INFO    ] No update needed
[2026-06-13 21:15:06,536.536 INFO    ] Checking for camera pi updates...
[2026-06-13 21:15:06,557.557 INFO    ] 200
[2026-06-13 21:15:06,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:06,583.583 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:15:06,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:06,731.731 INFO    ] No camera update needed
[2026-06-13 21:15:06,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:15:06,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:15:06,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:15:06,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:15:08,781.781 INFO    ] ================================================
[2026-06-13 21:15:08,796.796 INFO    ] Launching Daemon at Sat Jun 13 21:15:08 IST 2026
[2026-06-13 21:15:08,808.808 INFO    ] ================================================
[2026-06-13 21:15:09,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:15:09
[2026-06-13 21:15:09,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:15:09,654.654 INFO    ] Initializing speech engine...
[2026-06-13 21:15:09,659.659 INFO    ] 2026-06-13 21:15:09
[2026-06-13 21:15:09,867.867 INFO    ] 2026-06-13 21:15:09
[2026-06-13 21:15:09,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:10,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:10,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:10,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:10,287.287 INFO    ] time= 13/06/2026 21:15:10
[2026-06-13 21:15:10,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:10,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:10,384.384 INFO    ] No existing commands found in stream
[2026-06-13 21:15:15,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:15:15,399.399 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 21:15:17,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:15:17,591.591 INFO    ] Checking for system updates...
[2026-06-13 21:15:17,613.613 INFO    ] 200
[2026-06-13 21:15:17,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:17,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:15:17,652.652 INFO    ] No update needed
[2026-06-13 21:15:17,654.654 INFO    ] Checking for camera pi updates...
[2026-06-13 21:15:17,674.674 INFO    ] 200
[2026-06-13 21:15:17,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:17,699.699 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:15:17,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:15:17,737.737 INFO    ] No camera update needed
[2026-06-13 21:15:17,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:15:17,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:15:17,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:15:17,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:15:19,787.787 INFO    ] ================================================
[2026-06-13 21:15:19,803.803 INFO    ] Launching Daemon at Sat Jun 13 21:15:19 IST 2026
[2026-06-13 21:15:19,814.814 INFO    ] ================================================
[2026-06-13 21:15:20,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:15:20
[2026-06-13 21:15:20,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:15:20,663.663 INFO    ] Initializing speech engine...
[2026-06-13 21:15:20,668.668 INFO    ] 2026-06-13 21:15:20
[2026-06-13 21:15:20,878.878 INFO    ] 2026-06-13 21:15:20
[2026-06-13 21:15:20,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:21,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:21,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:21,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:21,285.285 INFO    ] time= 13/06/2026 21:15:21
[2026-06-13 21:15:21,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:21,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:21,402.402 INFO    ] No existing commands found in stream
[2026-06-13 21:15:26,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:15:26,416.416 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 21:15:30,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:15:30,548.548 INFO    ] Checking for system updates...
[2026-06-13 21:15:30,569.569 INFO    ] 200
[2026-06-13 21:15:30,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:30,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:30,605.605 INFO    ] No update needed
[2026-06-13 21:15:30,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 21:15:30,628.628 INFO    ] 200
[2026-06-13 21:15:30,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:30,655.655 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:15:30,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:30,702.702 INFO    ] No camera update needed
[2026-06-13 21:15:30,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:15:30,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:15:30,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:15:30,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:15:32,751.751 INFO    ] ================================================
[2026-06-13 21:15:32,767.767 INFO    ] Launching Daemon at Sat Jun 13 21:15:32 IST 2026
[2026-06-13 21:15:32,778.778 INFO    ] ================================================
[2026-06-13 21:15:33,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:15:33
[2026-06-13 21:15:33,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:15:33,625.625 INFO    ] Initializing speech engine...
[2026-06-13 21:15:33,632.632 INFO    ] 2026-06-13 21:15:33
[2026-06-13 21:15:33,840.840 INFO    ] 2026-06-13 21:15:33
[2026-06-13 21:15:33,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:33,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:34,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:34,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:34,259.259 INFO    ] time= 13/06/2026 21:15:34
[2026-06-13 21:15:34,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:34,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:34,359.359 INFO    ] No existing commands found in stream
[2026-06-13 21:15:39,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:15:39,374.374 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 21:15:40,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:15:40,637.637 INFO    ] Checking for system updates...
[2026-06-13 21:15:40,659.659 INFO    ] 200
[2026-06-13 21:15:40,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:40,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:40,695.695 INFO    ] No update needed
[2026-06-13 21:15:40,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 21:15:40,721.721 INFO    ] 200
[2026-06-13 21:15:40,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:40,750.750 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:15:40,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:40,790.790 INFO    ] No camera update needed
[2026-06-13 21:15:40,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:15:40,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:15:40,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:15:40,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:15:42,839.839 INFO    ] ================================================
[2026-06-13 21:15:42,855.855 INFO    ] Launching Daemon at Sat Jun 13 21:15:42 IST 2026
[2026-06-13 21:15:42,867.867 INFO    ] ================================================
[2026-06-13 21:15:43,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:15:43
[2026-06-13 21:15:43,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:15:43,729.729 INFO    ] Initializing speech engine...
[2026-06-13 21:15:43,735.735 INFO    ] 2026-06-13 21:15:43
[2026-06-13 21:15:43,946.946 INFO    ] 2026-06-13 21:15:43
[2026-06-13 21:15:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:44,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:44,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:44,313.313 INFO    ] time= 13/06/2026 21:15:44
[2026-06-13 21:15:44,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:44,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:44,468.468 INFO    ] No existing commands found in stream
[2026-06-13 21:15:49,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:15:49,483.483 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 21:15:52,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:15:52,857.857 INFO    ] Checking for system updates...
[2026-06-13 21:15:52,880.880 INFO    ] 200
[2026-06-13 21:15:52,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:52,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:52,916.916 INFO    ] No update needed
[2026-06-13 21:15:52,917.917 INFO    ] Checking for camera pi updates...
[2026-06-13 21:15:52,938.938 INFO    ] 200
[2026-06-13 21:15:52,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:15:52,964.964 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:15:53,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:15:53,007.007 INFO    ] No camera update needed
[2026-06-13 21:15:53,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:15:53,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:15:53,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:15:53,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:15:55,056.056 INFO    ] ================================================
[2026-06-13 21:15:55,073.073 INFO    ] Launching Daemon at Sat Jun 13 21:15:55 IST 2026
[2026-06-13 21:15:55,084.084 INFO    ] ================================================
[2026-06-13 21:15:55,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:15:55
[2026-06-13 21:15:55,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:15:55,930.930 INFO    ] Initializing speech engine...
[2026-06-13 21:15:55,935.935 INFO    ] 2026-06-13 21:15:55
[2026-06-13 21:15:56,142.142 INFO    ] 2026-06-13 21:15:56
[2026-06-13 21:15:56,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:15:56,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:15:56,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:15:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:15:56,512.512 INFO    ] time= 13/06/2026 21:15:56
[2026-06-13 21:15:56,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:15:56,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:15:56,694.694 INFO    ] No existing commands found in stream
[2026-06-13 21:16:01,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:01,705.705 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 21:16:03,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:16:03,064.064 INFO    ] Checking for system updates...
[2026-06-13 21:16:03,085.085 INFO    ] 200
[2026-06-13 21:16:03,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:03,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:03,119.119 INFO    ] No update needed
[2026-06-13 21:16:03,120.120 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:03,140.140 INFO    ] 200
[2026-06-13 21:16:03,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:03,168.168 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:03,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:03,211.211 INFO    ] No camera update needed
[2026-06-13 21:16:03,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:03,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:03,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:03,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:16:05,262.262 INFO    ] ================================================
[2026-06-13 21:16:05,278.278 INFO    ] Launching Daemon at Sat Jun 13 21:16:05 IST 2026
[2026-06-13 21:16:05,289.289 INFO    ] ================================================
[2026-06-13 21:16:05,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:16:05
[2026-06-13 21:16:06,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:16:06,190.190 INFO    ] Initializing speech engine...
[2026-06-13 21:16:06,194.194 INFO    ] 2026-06-13 21:16:06
[2026-06-13 21:16:06,402.402 INFO    ] 2026-06-13 21:16:06
[2026-06-13 21:16:06,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:16:06,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:16:06,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:16:06,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:16:06,820.820 INFO    ] time= 13/06/2026 21:16:06
[2026-06-13 21:16:06,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:16:06,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:16:06,921.921 INFO    ] No existing commands found in stream
[2026-06-13 21:16:11,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:11,939.939 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 21:16:15,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:16:15,085.085 INFO    ] Checking for system updates...
[2026-06-13 21:16:15,106.106 INFO    ] 200
[2026-06-13 21:16:15,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:15,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:15,144.144 INFO    ] No update needed
[2026-06-13 21:16:15,145.145 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:15,168.168 INFO    ] 200
[2026-06-13 21:16:15,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:15,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:15,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:15,236.236 INFO    ] No camera update needed
[2026-06-13 21:16:15,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:15,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:15,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:15,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:16:17,287.287 INFO    ] ================================================
[2026-06-13 21:16:17,303.303 INFO    ] Launching Daemon at Sat Jun 13 21:16:17 IST 2026
[2026-06-13 21:16:17,315.315 INFO    ] ================================================
[2026-06-13 21:16:17,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:16:17
[2026-06-13 21:16:17,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:16:18,124.124 INFO    ] Initializing speech engine...
[2026-06-13 21:16:18,132.132 INFO    ] 2026-06-13 21:16:18
[2026-06-13 21:16:18,340.340 INFO    ] 2026-06-13 21:16:18
[2026-06-13 21:16:18,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:16:18,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:16:18,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:16:18,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:16:18,751.751 INFO    ] time= 13/06/2026 21:16:18
[2026-06-13 21:16:18,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:16:18,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:16:18,855.855 INFO    ] No existing commands found in stream
[2026-06-13 21:16:23,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:23,869.869 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 21:16:24,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:16:24,581.581 INFO    ] Checking for system updates...
[2026-06-13 21:16:24,601.601 INFO    ] 200
[2026-06-13 21:16:24,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:24,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:24,636.636 INFO    ] No update needed
[2026-06-13 21:16:24,637.637 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:24,656.656 INFO    ] 200
[2026-06-13 21:16:24,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:24,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:24,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:24,724.724 INFO    ] No camera update needed
[2026-06-13 21:16:24,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:24,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:24,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:24,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:16:26,771.771 INFO    ] ================================================
[2026-06-13 21:16:26,786.786 INFO    ] Launching Daemon at Sat Jun 13 21:16:26 IST 2026
[2026-06-13 21:16:26,797.797 INFO    ] ================================================
[2026-06-13 21:16:27,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:16:27
[2026-06-13 21:16:27,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:16:27,587.587 INFO    ] Initializing speech engine...
[2026-06-13 21:16:27,592.592 INFO    ] 2026-06-13 21:16:27
[2026-06-13 21:16:27,788.788 INFO    ] 2026-06-13 21:16:27
[2026-06-13 21:16:27,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:16:27,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:16:27,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:16:28,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:16:28,091.091 INFO    ] time= 13/06/2026 21:16:28
[2026-06-13 21:16:28,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:16:28,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:16:28,218.218 INFO    ] No existing commands found in stream
[2026-06-13 21:16:33,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:33,253.253 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 21:16:36,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:16:36,656.656 INFO    ] Checking for system updates...
[2026-06-13 21:16:36,678.678 INFO    ] 200
[2026-06-13 21:16:36,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:36,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:36,712.712 INFO    ] No update needed
[2026-06-13 21:16:36,713.713 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:36,734.734 INFO    ] 200
[2026-06-13 21:16:36,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:36,759.759 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:36,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:36,798.798 INFO    ] No camera update needed
[2026-06-13 21:16:36,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:36,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:36,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:36,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:16:38,852.852 INFO    ] ================================================
[2026-06-13 21:16:38,868.868 INFO    ] Launching Daemon at Sat Jun 13 21:16:38 IST 2026
[2026-06-13 21:16:38,879.879 INFO    ] ================================================
[2026-06-13 21:16:39,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:16:39
[2026-06-13 21:16:39,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:16:39,762.762 INFO    ] Initializing speech engine...
[2026-06-13 21:16:39,768.768 INFO    ] 2026-06-13 21:16:39
[2026-06-13 21:16:39,977.977 INFO    ] 2026-06-13 21:16:39
[2026-06-13 21:16:40,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:16:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:16:40,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:16:40,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:16:40,390.390 INFO    ] time= 13/06/2026 21:16:40
[2026-06-13 21:16:40,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:16:40,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:16:40,496.496 INFO    ] No existing commands found in stream
[2026-06-13 21:16:45,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:45,511.511 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-13 21:16:46,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:16:46,705.705 INFO    ] Checking for system updates...
[2026-06-13 21:16:46,727.727 INFO    ] 200
[2026-06-13 21:16:46,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:46,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:46,761.761 INFO    ] No update needed
[2026-06-13 21:16:46,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:46,785.785 INFO    ] 200
[2026-06-13 21:16:46,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:46,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:46,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:46,857.857 INFO    ] No camera update needed
[2026-06-13 21:16:46,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:46,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:46,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:46,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:16:48,907.907 INFO    ] ================================================
[2026-06-13 21:16:48,923.923 INFO    ] Launching Daemon at Sat Jun 13 21:16:48 IST 2026
[2026-06-13 21:16:48,935.935 INFO    ] ================================================
[2026-06-13 21:16:49,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:16:49
[2026-06-13 21:16:49,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:16:49,737.737 INFO    ] Initializing speech engine...
[2026-06-13 21:16:49,742.742 INFO    ] 2026-06-13 21:16:49
[2026-06-13 21:16:49,946.946 INFO    ] 2026-06-13 21:16:49
[2026-06-13 21:16:49,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:16:50,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:16:50,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:16:50,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:16:50,299.299 INFO    ] time= 13/06/2026 21:16:50
[2026-06-13 21:16:50,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:16:50,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:16:50,462.462 INFO    ] No existing commands found in stream
[2026-06-13 21:16:55,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:16:55,479.479 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 21:16:58,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:16:58,174.174 INFO    ] Checking for system updates...
[2026-06-13 21:16:58,195.195 INFO    ] 200
[2026-06-13 21:16:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:58,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:58,228.228 INFO    ] No update needed
[2026-06-13 21:16:58,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 21:16:58,250.250 INFO    ] 200
[2026-06-13 21:16:58,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:16:58,275.275 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:16:58,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:16:58,316.316 INFO    ] No camera update needed
[2026-06-13 21:16:58,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:16:58,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:16:58,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:16:58,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:00,364.364 INFO    ] ================================================
[2026-06-13 21:17:00,380.380 INFO    ] Launching Daemon at Sat Jun 13 21:17:00 IST 2026
[2026-06-13 21:17:00,390.390 INFO    ] ================================================
[2026-06-13 21:17:00,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:00
[2026-06-13 21:17:01,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:01,161.161 INFO    ] Initializing speech engine...
[2026-06-13 21:17:01,166.166 INFO    ] 2026-06-13 21:17:01
[2026-06-13 21:17:01,383.383 INFO    ] 2026-06-13 21:17:01
[2026-06-13 21:17:01,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:01,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:01,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:01,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:01,763.763 INFO    ] time= 13/06/2026 21:17:01
[2026-06-13 21:17:01,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:01,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:01,933.933 INFO    ] No existing commands found in stream
[2026-06-13 21:17:06,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:06,947.947 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 21:17:08,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:17:08,206.206 INFO    ] Checking for system updates...
[2026-06-13 21:17:08,227.227 INFO    ] 200
[2026-06-13 21:17:08,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:08,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:08,261.261 INFO    ] No update needed
[2026-06-13 21:17:08,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 21:17:08,282.282 INFO    ] 200
[2026-06-13 21:17:08,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:08,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:17:08,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:08,448.448 INFO    ] No camera update needed
[2026-06-13 21:17:08,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:17:08,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:17:08,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:17:08,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:10,500.500 INFO    ] ================================================
[2026-06-13 21:17:10,515.515 INFO    ] Launching Daemon at Sat Jun 13 21:17:10 IST 2026
[2026-06-13 21:17:10,526.526 INFO    ] ================================================
[2026-06-13 21:17:10,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:10
[2026-06-13 21:17:11,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:11,648.648 INFO    ] Initializing speech engine...
[2026-06-13 21:17:11,658.658 INFO    ] 2026-06-13 21:17:11
[2026-06-13 21:17:11,906.906 INFO    ] 2026-06-13 21:17:11
[2026-06-13 21:17:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:12,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:12,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:12,276.276 INFO    ] time= 13/06/2026 21:17:12
[2026-06-13 21:17:12,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:12,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:12,455.455 INFO    ] No existing commands found in stream
[2026-06-13 21:17:17,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:17,483.483 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 21:17:18,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:17:18,764.764 INFO    ] Checking for system updates...
[2026-06-13 21:17:18,785.785 INFO    ] 200
[2026-06-13 21:17:18,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:18,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:17:18,818.818 INFO    ] No update needed
[2026-06-13 21:17:18,820.820 INFO    ] Checking for camera pi updates...
[2026-06-13 21:17:18,841.841 INFO    ] 200
[2026-06-13 21:17:18,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:18,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:17:18,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:18,903.903 INFO    ] No camera update needed
[2026-06-13 21:17:18,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:17:18,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:17:18,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:17:18,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:20,951.951 INFO    ] ================================================
[2026-06-13 21:17:20,967.967 INFO    ] Launching Daemon at Sat Jun 13 21:17:20 IST 2026
[2026-06-13 21:17:20,978.978 INFO    ] ================================================
[2026-06-13 21:17:21,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:21
[2026-06-13 21:17:21,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:21,831.831 INFO    ] Initializing speech engine...
[2026-06-13 21:17:21,837.837 INFO    ] 2026-06-13 21:17:21
[2026-06-13 21:17:22,047.047 INFO    ] 2026-06-13 21:17:22
[2026-06-13 21:17:22,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:22,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:22,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:22,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:22,394.394 INFO    ] time= 13/06/2026 21:17:22
[2026-06-13 21:17:22,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:22,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:22,540.540 INFO    ] No existing commands found in stream
[2026-06-13 21:17:27,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:27,569.569 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 21:17:28,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:17:28,377.377 INFO    ] Checking for system updates...
[2026-06-13 21:17:28,399.399 INFO    ] 200
[2026-06-13 21:17:28,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:28,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:28,434.434 INFO    ] No update needed
[2026-06-13 21:17:28,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 21:17:28,456.456 INFO    ] 200
[2026-06-13 21:17:28,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:28,481.481 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:17:28,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:28,507.507 INFO    ] No camera update needed
[2026-06-13 21:17:28,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:17:28,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:17:28,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:17:28,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:30,554.554 INFO    ] ================================================
[2026-06-13 21:17:30,569.569 INFO    ] Launching Daemon at Sat Jun 13 21:17:30 IST 2026
[2026-06-13 21:17:30,580.580 INFO    ] ================================================
[2026-06-13 21:17:30,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:30
[2026-06-13 21:17:31,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:31,432.432 INFO    ] Initializing speech engine...
[2026-06-13 21:17:31,437.437 INFO    ] 2026-06-13 21:17:31
[2026-06-13 21:17:31,647.647 INFO    ] 2026-06-13 21:17:31
[2026-06-13 21:17:31,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:31,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:31,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:32,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:32,090.090 INFO    ] time= 13/06/2026 21:17:32
[2026-06-13 21:17:32,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:32,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:32,195.195 INFO    ] No existing commands found in stream
[2026-06-13 21:17:37,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:37,210.210 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 21:17:37,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:17:37,860.860 INFO    ] Checking for system updates...
[2026-06-13 21:17:37,881.881 INFO    ] 200
[2026-06-13 21:17:37,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:37,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:37,915.915 INFO    ] No update needed
[2026-06-13 21:17:37,916.916 INFO    ] Checking for camera pi updates...
[2026-06-13 21:17:37,936.936 INFO    ] 200
[2026-06-13 21:17:37,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:37,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:17:37,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:17:37,987.987 INFO    ] No camera update needed
[2026-06-13 21:17:37,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:17:37,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:17:37,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:17:37,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:40,035.035 INFO    ] ================================================
[2026-06-13 21:17:40,050.050 INFO    ] Launching Daemon at Sat Jun 13 21:17:40 IST 2026
[2026-06-13 21:17:40,061.061 INFO    ] ================================================
[2026-06-13 21:17:40,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:40
[2026-06-13 21:17:40,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:40,939.939 INFO    ] Initializing speech engine...
[2026-06-13 21:17:40,944.944 INFO    ] 2026-06-13 21:17:40
[2026-06-13 21:17:41,150.150 INFO    ] 2026-06-13 21:17:41
[2026-06-13 21:17:41,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:41,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:41,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:41,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:41,551.551 INFO    ] time= 13/06/2026 21:17:41
[2026-06-13 21:17:41,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:41,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:41,666.666 INFO    ] No existing commands found in stream
[2026-06-13 21:17:46,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:46,680.680 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 21:17:49,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:17:49,380.380 INFO    ] Checking for system updates...
[2026-06-13 21:17:49,403.403 INFO    ] 200
[2026-06-13 21:17:49,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:49,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:17:49,435.435 INFO    ] No update needed
[2026-06-13 21:17:49,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 21:17:49,458.458 INFO    ] 200
[2026-06-13 21:17:49,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:17:49,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:17:49,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:17:49,527.527 INFO    ] No camera update needed
[2026-06-13 21:17:49,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:17:49,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:17:49,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:17:49,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:17:51,574.574 INFO    ] ================================================
[2026-06-13 21:17:51,589.589 INFO    ] Launching Daemon at Sat Jun 13 21:17:51 IST 2026
[2026-06-13 21:17:51,600.600 INFO    ] ================================================
[2026-06-13 21:17:51,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:17:51
[2026-06-13 21:17:52,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:17:52,401.401 INFO    ] Initializing speech engine...
[2026-06-13 21:17:52,406.406 INFO    ] 2026-06-13 21:17:52
[2026-06-13 21:17:52,608.608 INFO    ] 2026-06-13 21:17:52
[2026-06-13 21:17:52,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:17:52,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:17:52,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:17:52,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:17:53,012.012 INFO    ] time= 13/06/2026 21:17:52
[2026-06-13 21:17:53,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:17:53,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:17:53,129.129 INFO    ] No existing commands found in stream
[2026-06-13 21:17:58,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:17:58,141.141 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 21:18:00,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:18:00,883.883 INFO    ] Checking for system updates...
[2026-06-13 21:18:00,904.904 INFO    ] 200
[2026-06-13 21:18:00,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:00,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:18:00,937.937 INFO    ] No update needed
[2026-06-13 21:18:00,938.938 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:00,958.958 INFO    ] 200
[2026-06-13 21:18:00,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:00,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:01,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:18:01,030.030 INFO    ] No camera update needed
[2026-06-13 21:18:01,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:01,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:01,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:03,082.082 INFO    ] ================================================
[2026-06-13 21:18:03,099.099 INFO    ] Launching Daemon at Sat Jun 13 21:18:03 IST 2026
[2026-06-13 21:18:03,111.111 INFO    ] ================================================
[2026-06-13 21:18:03,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:03
[2026-06-13 21:18:04,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:04,542.542 INFO    ] Initializing speech engine...
[2026-06-13 21:18:04,557.557 INFO    ] 2026-06-13 21:18:04
[2026-06-13 21:18:04,824.824 INFO    ] 2026-06-13 21:18:04
[2026-06-13 21:18:04,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:18:05,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:18:05,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:18:05,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:18:05,155.155 INFO    ] time= 13/06/2026 21:18:05
[2026-06-13 21:18:05,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:18:05,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:18:05,338.338 INFO    ] No existing commands found in stream
[2026-06-13 21:18:10,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:18:10,376.376 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 21:18:11,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:18:11,280.280 INFO    ] Checking for system updates...
[2026-06-13 21:18:11,301.301 INFO    ] 200
[2026-06-13 21:18:11,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:11,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:11,334.334 INFO    ] No update needed
[2026-06-13 21:18:11,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:11,357.357 INFO    ] 200
[2026-06-13 21:18:11,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:11,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:11,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:11,419.419 INFO    ] No camera update needed
[2026-06-13 21:18:11,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:11,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:11,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:11,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:13,469.469 INFO    ] ================================================
[2026-06-13 21:18:13,484.484 INFO    ] Launching Daemon at Sat Jun 13 21:18:13 IST 2026
[2026-06-13 21:18:13,495.495 INFO    ] ================================================
[2026-06-13 21:18:13,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:13
[2026-06-13 21:18:14,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:14,279.279 INFO    ] Initializing speech engine...
[2026-06-13 21:18:14,288.288 INFO    ] 2026-06-13 21:18:14
[2026-06-13 21:18:14,492.492 INFO    ] 2026-06-13 21:18:14
[2026-06-13 21:18:14,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:18:14,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:18:14,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:18:14,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:18:14,898.898 INFO    ] time= 13/06/2026 21:18:14
[2026-06-13 21:18:14,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:18:14,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:18:15,009.009 INFO    ] No existing commands found in stream
[2026-06-13 21:18:20,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:18:20,021.021 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-13 21:18:21,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:18:21,832.832 INFO    ] Checking for system updates...
[2026-06-13 21:18:21,853.853 INFO    ] 200
[2026-06-13 21:18:21,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:21,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:21,887.887 INFO    ] No update needed
[2026-06-13 21:18:21,888.888 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:21,911.911 INFO    ] 200
[2026-06-13 21:18:21,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:21,936.936 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:21,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:21,974.974 INFO    ] No camera update needed
[2026-06-13 21:18:21,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:21,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:21,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:21,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:24,023.023 INFO    ] ================================================
[2026-06-13 21:18:24,038.038 INFO    ] Launching Daemon at Sat Jun 13 21:18:24 IST 2026
[2026-06-13 21:18:24,049.049 INFO    ] ================================================
[2026-06-13 21:18:24,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:24
[2026-06-13 21:18:25,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:25,470.470 INFO    ] Initializing speech engine...
[2026-06-13 21:18:25,478.478 INFO    ] 2026-06-13 21:18:25
[2026-06-13 21:18:25,772.772 INFO    ] 2026-06-13 21:18:25
[2026-06-13 21:18:25,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:18:26,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:18:26,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:18:26,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:18:26,151.151 INFO    ] time= 13/06/2026 21:18:26
[2026-06-13 21:18:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:18:26,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:18:26,278.278 INFO    ] No existing commands found in stream
[2026-06-13 21:18:31,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:18:31,293.293 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 21:18:34,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:18:34,409.409 INFO    ] Checking for system updates...
[2026-06-13 21:18:34,430.430 INFO    ] 200
[2026-06-13 21:18:34,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:34,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:18:34,464.464 INFO    ] No update needed
[2026-06-13 21:18:34,465.465 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:34,484.484 INFO    ] 200
[2026-06-13 21:18:34,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:34,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:34,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:34,548.548 INFO    ] No camera update needed
[2026-06-13 21:18:34,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:34,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:34,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:34,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:36,594.594 INFO    ] ================================================
[2026-06-13 21:18:36,609.609 INFO    ] Launching Daemon at Sat Jun 13 21:18:36 IST 2026
[2026-06-13 21:18:36,620.620 INFO    ] ================================================
[2026-06-13 21:18:36,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:36
[2026-06-13 21:18:37,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:37,407.407 INFO    ] Initializing speech engine...
[2026-06-13 21:18:37,419.419 INFO    ] 2026-06-13 21:18:37
[2026-06-13 21:18:37,626.626 INFO    ] 2026-06-13 21:18:37
[2026-06-13 21:18:37,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:18:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:18:37,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:18:37,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:18:38,029.029 INFO    ] time= 13/06/2026 21:18:37
[2026-06-13 21:18:38,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:18:38,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:18:38,143.143 INFO    ] No existing commands found in stream
[2026-06-13 21:18:43,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:18:43,157.157 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 21:18:44,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:18:44,315.315 INFO    ] Checking for system updates...
[2026-06-13 21:18:44,336.336 INFO    ] 200
[2026-06-13 21:18:44,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:44,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:18:44,369.369 INFO    ] No update needed
[2026-06-13 21:18:44,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:44,390.390 INFO    ] 200
[2026-06-13 21:18:44,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:44,418.418 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:44,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:18:44,460.460 INFO    ] No camera update needed
[2026-06-13 21:18:44,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:44,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:44,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:44,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:46,508.508 INFO    ] ================================================
[2026-06-13 21:18:46,523.523 INFO    ] Launching Daemon at Sat Jun 13 21:18:46 IST 2026
[2026-06-13 21:18:46,534.534 INFO    ] ================================================
[2026-06-13 21:18:46,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:46
[2026-06-13 21:18:47,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:47,425.425 INFO    ] Initializing speech engine...
[2026-06-13 21:18:47,429.429 INFO    ] 2026-06-13 21:18:47
[2026-06-13 21:18:47,637.637 INFO    ] 2026-06-13 21:18:47
[2026-06-13 21:18:47,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:18:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:18:47,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:18:47,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:18:48,051.051 INFO    ] time= 13/06/2026 21:18:47
[2026-06-13 21:18:48,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:18:48,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:18:48,156.156 INFO    ] No existing commands found in stream
[2026-06-13 21:18:53,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:18:53,171.171 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 21:18:56,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:18:56,880.880 INFO    ] Checking for system updates...
[2026-06-13 21:18:56,901.901 INFO    ] 200
[2026-06-13 21:18:56,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:56,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:56,938.938 INFO    ] No update needed
[2026-06-13 21:18:56,939.939 INFO    ] Checking for camera pi updates...
[2026-06-13 21:18:56,960.960 INFO    ] 200
[2026-06-13 21:18:56,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:18:56,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:18:57,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:18:57,027.027 INFO    ] No camera update needed
[2026-06-13 21:18:57,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:18:57,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:18:57,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:18:57,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:18:59,075.075 INFO    ] ================================================
[2026-06-13 21:18:59,091.091 INFO    ] Launching Daemon at Sat Jun 13 21:18:59 IST 2026
[2026-06-13 21:18:59,102.102 INFO    ] ================================================
[2026-06-13 21:18:59,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:18:59
[2026-06-13 21:18:59,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:18:59,883.883 INFO    ] Initializing speech engine...
[2026-06-13 21:18:59,888.888 INFO    ] 2026-06-13 21:18:59
[2026-06-13 21:19:00,117.117 INFO    ] 2026-06-13 21:19:00
[2026-06-13 21:19:00,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:19:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:19:00,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:19:00,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:19:00,557.557 INFO    ] time= 13/06/2026 21:19:00
[2026-06-13 21:19:00,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:19:00,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:19:00,674.674 INFO    ] No existing commands found in stream
[2026-06-13 21:19:05,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:19:05,687.687 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-13 21:19:09,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:19:09,090.090 INFO    ] Checking for system updates...
[2026-06-13 21:19:09,110.110 INFO    ] 200
[2026-06-13 21:19:09,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:09,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:09,145.145 INFO    ] No update needed
[2026-06-13 21:19:09,146.146 INFO    ] Checking for camera pi updates...
[2026-06-13 21:19:09,166.166 INFO    ] 200
[2026-06-13 21:19:09,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:09,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:19:09,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:19:09,341.341 INFO    ] No camera update needed
[2026-06-13 21:19:09,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:19:09,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:19:09,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:19:09,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:19:11,389.389 INFO    ] ================================================
[2026-06-13 21:19:11,405.405 INFO    ] Launching Daemon at Sat Jun 13 21:19:11 IST 2026
[2026-06-13 21:19:11,416.416 INFO    ] ================================================
[2026-06-13 21:19:11,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:19:11
[2026-06-13 21:19:12,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:19:12,212.212 INFO    ] Initializing speech engine...
[2026-06-13 21:19:12,216.216 INFO    ] 2026-06-13 21:19:12
[2026-06-13 21:19:12,445.445 INFO    ] 2026-06-13 21:19:12
[2026-06-13 21:19:12,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:19:12,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:19:12,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:19:12,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:19:12,871.871 INFO    ] time= 13/06/2026 21:19:12
[2026-06-13 21:19:12,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:19:12,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:19:13,004.004 INFO    ] No existing commands found in stream
[2026-06-13 21:19:18,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:19:18,017.017 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 21:19:20,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:19:20,101.101 INFO    ] Checking for system updates...
[2026-06-13 21:19:20,143.143 INFO    ] 200
[2026-06-13 21:19:20,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:20,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:20,208.208 INFO    ] No update needed
[2026-06-13 21:19:20,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 21:19:20,246.246 INFO    ] 200
[2026-06-13 21:19:20,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:20,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:19:20,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:20,318.318 INFO    ] No camera update needed
[2026-06-13 21:19:20,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:19:20,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:19:20,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:19:20,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:19:22,372.372 INFO    ] ================================================
[2026-06-13 21:19:22,387.387 INFO    ] Launching Daemon at Sat Jun 13 21:19:22 IST 2026
[2026-06-13 21:19:22,398.398 INFO    ] ================================================
[2026-06-13 21:19:22,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:19:22
[2026-06-13 21:19:23,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:19:23,219.219 INFO    ] Initializing speech engine...
[2026-06-13 21:19:23,233.233 INFO    ] 2026-06-13 21:19:23
[2026-06-13 21:19:23,453.453 INFO    ] 2026-06-13 21:19:23
[2026-06-13 21:19:23,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:19:23,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:19:23,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:19:23,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:19:23,854.854 INFO    ] time= 13/06/2026 21:19:23
[2026-06-13 21:19:23,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:19:23,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:19:24,012.012 INFO    ] No existing commands found in stream
[2026-06-13 21:19:29,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:19:29,025.025 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 21:19:32,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:19:32,578.578 INFO    ] Checking for system updates...
[2026-06-13 21:19:32,599.599 INFO    ] 200
[2026-06-13 21:19:32,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:32,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:32,632.632 INFO    ] No update needed
[2026-06-13 21:19:32,634.634 INFO    ] Checking for camera pi updates...
[2026-06-13 21:19:32,653.653 INFO    ] 200
[2026-06-13 21:19:32,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:32,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:19:32,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:19:32,700.700 INFO    ] No camera update needed
[2026-06-13 21:19:32,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:19:32,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:19:32,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:19:32,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:19:34,748.748 INFO    ] ================================================
[2026-06-13 21:19:34,763.763 INFO    ] Launching Daemon at Sat Jun 13 21:19:34 IST 2026
[2026-06-13 21:19:34,774.774 INFO    ] ================================================
[2026-06-13 21:19:35,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:19:35
[2026-06-13 21:19:35,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:19:35,616.616 INFO    ] Initializing speech engine...
[2026-06-13 21:19:35,622.622 INFO    ] 2026-06-13 21:19:35
[2026-06-13 21:19:35,830.830 INFO    ] 2026-06-13 21:19:35
[2026-06-13 21:19:35,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:19:36,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:19:36,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:19:36,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:19:36,240.240 INFO    ] time= 13/06/2026 21:19:36
[2026-06-13 21:19:36,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:19:36,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:19:36,352.352 INFO    ] No existing commands found in stream
[2026-06-13 21:19:41,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:19:41,364.364 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 21:19:45,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:19:45,448.448 INFO    ] Checking for system updates...
[2026-06-13 21:19:45,469.469 INFO    ] 200
[2026-06-13 21:19:45,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:45,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:19:45,505.505 INFO    ] No update needed
[2026-06-13 21:19:45,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 21:19:45,530.530 INFO    ] 200
[2026-06-13 21:19:45,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:45,557.557 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:19:45,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:19:45,598.598 INFO    ] No camera update needed
[2026-06-13 21:19:45,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:19:45,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:19:45,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:19:45,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:19:47,648.648 INFO    ] ================================================
[2026-06-13 21:19:47,664.664 INFO    ] Launching Daemon at Sat Jun 13 21:19:47 IST 2026
[2026-06-13 21:19:47,674.674 INFO    ] ================================================
[2026-06-13 21:19:47,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:19:47
[2026-06-13 21:19:48,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:19:48,737.737 INFO    ] Initializing speech engine...
[2026-06-13 21:19:48,746.746 INFO    ] 2026-06-13 21:19:48
[2026-06-13 21:19:49,022.022 INFO    ] 2026-06-13 21:19:49
[2026-06-13 21:19:49,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:19:49,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:19:49,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:19:49,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:19:49,363.363 INFO    ] time= 13/06/2026 21:19:49
[2026-06-13 21:19:49,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:19:49,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:19:49,474.474 INFO    ] No existing commands found in stream
[2026-06-13 21:19:54,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:19:54,490.490 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 21:19:56,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:19:56,592.592 INFO    ] Checking for system updates...
[2026-06-13 21:19:56,613.613 INFO    ] 200
[2026-06-13 21:19:56,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:56,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:56,649.649 INFO    ] No update needed
[2026-06-13 21:19:56,650.650 INFO    ] Checking for camera pi updates...
[2026-06-13 21:19:56,670.670 INFO    ] 200
[2026-06-13 21:19:56,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:19:56,694.694 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:19:56,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:19:56,731.731 INFO    ] No camera update needed
[2026-06-13 21:19:56,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:19:56,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:19:56,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:19:56,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:19:58,781.781 INFO    ] ================================================
[2026-06-13 21:19:58,797.797 INFO    ] Launching Daemon at Sat Jun 13 21:19:58 IST 2026
[2026-06-13 21:19:58,807.807 INFO    ] ================================================
[2026-06-13 21:19:59,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:19:59
[2026-06-13 21:19:59,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:19:59,845.845 INFO    ] Initializing speech engine...
[2026-06-13 21:19:59,859.859 INFO    ] 2026-06-13 21:19:59
[2026-06-13 21:20:00,147.147 INFO    ] 2026-06-13 21:20:00
[2026-06-13 21:20:00,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:00,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:00,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:00,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:00,500.500 INFO    ] time= 13/06/2026 21:20:00
[2026-06-13 21:20:00,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:00,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:00,581.581 INFO    ] No existing commands found in stream
[2026-06-13 21:20:05,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:05,594.594 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 21:20:09,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:20:09,292.292 INFO    ] Checking for system updates...
[2026-06-13 21:20:09,313.313 INFO    ] 200
[2026-06-13 21:20:09,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:09,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:20:09,346.346 INFO    ] No update needed
[2026-06-13 21:20:09,347.347 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:09,367.367 INFO    ] 200
[2026-06-13 21:20:09,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:09,393.393 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:09,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:20:09,434.434 INFO    ] No camera update needed
[2026-06-13 21:20:09,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:09,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:09,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:09,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:20:11,481.481 INFO    ] ================================================
[2026-06-13 21:20:11,496.496 INFO    ] Launching Daemon at Sat Jun 13 21:20:11 IST 2026
[2026-06-13 21:20:11,507.507 INFO    ] ================================================
[2026-06-13 21:20:11,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:20:11
[2026-06-13 21:20:12,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:20:12,283.283 INFO    ] Initializing speech engine...
[2026-06-13 21:20:12,294.294 INFO    ] 2026-06-13 21:20:12
[2026-06-13 21:20:12,498.498 INFO    ] 2026-06-13 21:20:12
[2026-06-13 21:20:12,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:12,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:12,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:12,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:12,915.915 INFO    ] time= 13/06/2026 21:20:12
[2026-06-13 21:20:12,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:12,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:13,011.011 INFO    ] No existing commands found in stream
[2026-06-13 21:20:18,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:18,023.023 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 21:20:18,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:20:18,518.518 INFO    ] Checking for system updates...
[2026-06-13 21:20:18,538.538 INFO    ] 200
[2026-06-13 21:20:18,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:18,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:18,576.576 INFO    ] No update needed
[2026-06-13 21:20:18,577.577 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:18,597.597 INFO    ] 200
[2026-06-13 21:20:18,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:18,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:18,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:18,664.664 INFO    ] No camera update needed
[2026-06-13 21:20:18,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:18,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:18,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:18,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:20:20,715.715 INFO    ] ================================================
[2026-06-13 21:20:20,731.731 INFO    ] Launching Daemon at Sat Jun 13 21:20:20 IST 2026
[2026-06-13 21:20:20,742.742 INFO    ] ================================================
[2026-06-13 21:20:21,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:20:21
[2026-06-13 21:20:21,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:20:21,524.524 INFO    ] Initializing speech engine...
[2026-06-13 21:20:21,534.534 INFO    ] 2026-06-13 21:20:21
[2026-06-13 21:20:21,737.737 INFO    ] 2026-06-13 21:20:21
[2026-06-13 21:20:21,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:21,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:21,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:22,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:22,148.148 INFO    ] time= 13/06/2026 21:20:22
[2026-06-13 21:20:22,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:22,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:22,258.258 INFO    ] No existing commands found in stream
[2026-06-13 21:20:27,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:27,272.272 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 21:20:27,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:20:27,617.617 INFO    ] Checking for system updates...
[2026-06-13 21:20:27,638.638 INFO    ] 200
[2026-06-13 21:20:27,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:27,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:27,671.671 INFO    ] No update needed
[2026-06-13 21:20:27,672.672 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:27,692.692 INFO    ] 200
[2026-06-13 21:20:27,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:27,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:27,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:27,758.758 INFO    ] No camera update needed
[2026-06-13 21:20:27,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:27,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:27,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:27,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:20:29,807.807 INFO    ] ================================================
[2026-06-13 21:20:29,822.822 INFO    ] Launching Daemon at Sat Jun 13 21:20:29 IST 2026
[2026-06-13 21:20:29,833.833 INFO    ] ================================================
[2026-06-13 21:20:30,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:20:30
[2026-06-13 21:20:30,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:20:30,615.615 INFO    ] Initializing speech engine...
[2026-06-13 21:20:30,628.628 INFO    ] 2026-06-13 21:20:30
[2026-06-13 21:20:30,833.833 INFO    ] 2026-06-13 21:20:30
[2026-06-13 21:20:30,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:31,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:31,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:31,232.232 INFO    ] time= 13/06/2026 21:20:31
[2026-06-13 21:20:31,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:31,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:31,346.346 INFO    ] No existing commands found in stream
[2026-06-13 21:20:36,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:36,358.358 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 21:20:37,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:20:37,263.263 INFO    ] Checking for system updates...
[2026-06-13 21:20:37,283.283 INFO    ] 200
[2026-06-13 21:20:37,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:37,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:37,318.318 INFO    ] No update needed
[2026-06-13 21:20:37,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:37,340.340 INFO    ] 200
[2026-06-13 21:20:37,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:37,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:37,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:37,405.405 INFO    ] No camera update needed
[2026-06-13 21:20:37,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:37,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:37,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:37,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:20:39,451.451 INFO    ] ================================================
[2026-06-13 21:20:39,466.466 INFO    ] Launching Daemon at Sat Jun 13 21:20:39 IST 2026
[2026-06-13 21:20:39,476.476 INFO    ] ================================================
[2026-06-13 21:20:39,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:20:39
[2026-06-13 21:20:40,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:20:40,321.321 INFO    ] Initializing speech engine...
[2026-06-13 21:20:40,325.325 INFO    ] 2026-06-13 21:20:40
[2026-06-13 21:20:40,532.532 INFO    ] 2026-06-13 21:20:40
[2026-06-13 21:20:40,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:40,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:40,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:40,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:40,953.953 INFO    ] time= 13/06/2026 21:20:40
[2026-06-13 21:20:40,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:40,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:41,049.049 INFO    ] No existing commands found in stream
[2026-06-13 21:20:46,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:46,059.059 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 21:20:47,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:20:47,592.592 INFO    ] Checking for system updates...
[2026-06-13 21:20:47,615.615 INFO    ] 200
[2026-06-13 21:20:47,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:47,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:20:47,651.651 INFO    ] No update needed
[2026-06-13 21:20:47,653.653 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:47,673.673 INFO    ] 200
[2026-06-13 21:20:47,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:47,698.698 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:47,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:47,738.738 INFO    ] No camera update needed
[2026-06-13 21:20:47,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:47,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:47,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:47,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:20:49,787.787 INFO    ] ================================================
[2026-06-13 21:20:49,802.802 INFO    ] Launching Daemon at Sat Jun 13 21:20:49 IST 2026
[2026-06-13 21:20:49,813.813 INFO    ] ================================================
[2026-06-13 21:20:50,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:20:50
[2026-06-13 21:20:50,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:20:50,639.639 INFO    ] Initializing speech engine...
[2026-06-13 21:20:50,644.644 INFO    ] 2026-06-13 21:20:50
[2026-06-13 21:20:50,848.848 INFO    ] 2026-06-13 21:20:50
[2026-06-13 21:20:50,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:20:51,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:20:51,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:20:51,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:20:51,249.249 INFO    ] time= 13/06/2026 21:20:51
[2026-06-13 21:20:51,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:20:51,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:20:51,372.372 INFO    ] No existing commands found in stream
[2026-06-13 21:20:56,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:20:56,383.383 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 21:20:58,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:20:58,652.652 INFO    ] Checking for system updates...
[2026-06-13 21:20:58,673.673 INFO    ] 200
[2026-06-13 21:20:58,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:58,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:58,706.706 INFO    ] No update needed
[2026-06-13 21:20:58,707.707 INFO    ] Checking for camera pi updates...
[2026-06-13 21:20:58,733.733 INFO    ] 200
[2026-06-13 21:20:58,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:20:58,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:20:58,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:20:58,815.815 INFO    ] No camera update needed
[2026-06-13 21:20:58,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:20:58,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:20:58,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:20:58,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:00,863.863 INFO    ] ================================================
[2026-06-13 21:21:00,878.878 INFO    ] Launching Daemon at Sat Jun 13 21:21:00 IST 2026
[2026-06-13 21:21:00,889.889 INFO    ] ================================================
[2026-06-13 21:21:01,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:01
[2026-06-13 21:21:02,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:02,410.410 INFO    ] Initializing speech engine...
[2026-06-13 21:21:02,422.422 INFO    ] 2026-06-13 21:21:02
[2026-06-13 21:21:02,721.721 INFO    ] 2026-06-13 21:21:02
[2026-06-13 21:21:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:02,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:02,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:03,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:03,089.089 INFO    ] time= 13/06/2026 21:21:03
[2026-06-13 21:21:03,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:03,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:03,161.161 INFO    ] No existing commands found in stream
[2026-06-13 21:21:08,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:21:08,174.174 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 21:21:11,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:21:11,303.303 INFO    ] Checking for system updates...
[2026-06-13 21:21:11,326.326 INFO    ] 200
[2026-06-13 21:21:11,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:11,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:11,365.365 INFO    ] No update needed
[2026-06-13 21:21:11,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 21:21:11,391.391 INFO    ] 200
[2026-06-13 21:21:11,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:11,422.422 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:21:11,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:11,564.564 INFO    ] No camera update needed
[2026-06-13 21:21:11,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:21:11,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:21:11,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:21:11,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:13,601.601 INFO    ] ================================================
[2026-06-13 21:21:13,611.611 INFO    ] Launching Daemon at Sat Jun 13 21:21:13 IST 2026
[2026-06-13 21:21:13,618.618 INFO    ] ================================================
[2026-06-13 21:21:13,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:13
[2026-06-13 21:21:14,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:14,383.383 INFO    ] Initializing speech engine...
[2026-06-13 21:21:14,388.388 INFO    ] 2026-06-13 21:21:14
[2026-06-13 21:21:14,586.586 INFO    ] 2026-06-13 21:21:14
[2026-06-13 21:21:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:14,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:14,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:14,878.878 INFO    ] time= 13/06/2026 21:21:14
[2026-06-13 21:21:14,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:14,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:14,977.977 INFO    ] No existing commands found in stream
[2026-06-13 21:21:20,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:21:20,013.013 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 21:21:20,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:21:20,816.816 INFO    ] Checking for system updates...
[2026-06-13 21:21:20,837.837 INFO    ] 200
[2026-06-13 21:21:20,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:20,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:20,870.870 INFO    ] No update needed
[2026-06-13 21:21:20,871.871 INFO    ] Checking for camera pi updates...
[2026-06-13 21:21:20,892.892 INFO    ] 200
[2026-06-13 21:21:20,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:20,916.916 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:21:20,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:20,962.962 INFO    ] No camera update needed
[2026-06-13 21:21:20,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:21:20,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:21:20,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:21:20,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:23,011.011 INFO    ] ================================================
[2026-06-13 21:21:23,027.027 INFO    ] Launching Daemon at Sat Jun 13 21:21:23 IST 2026
[2026-06-13 21:21:23,038.038 INFO    ] ================================================
[2026-06-13 21:21:23,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:23
[2026-06-13 21:21:23,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:24,284.284 INFO    ] Initializing speech engine...
[2026-06-13 21:21:24,296.296 INFO    ] 2026-06-13 21:21:24
[2026-06-13 21:21:24,602.602 INFO    ] 2026-06-13 21:21:24
[2026-06-13 21:21:24,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:24,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:24,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:24,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:25,042.042 INFO    ] time= 13/06/2026 21:21:24
[2026-06-13 21:21:25,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:25,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:25,271.271 INFO    ] No existing commands found in stream
[2026-06-13 21:21:30,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:21:30,290.290 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 21:21:33,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:21:33,667.667 INFO    ] Checking for system updates...
[2026-06-13 21:21:33,688.688 INFO    ] 200
[2026-06-13 21:21:33,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:33,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:33,722.722 INFO    ] No update needed
[2026-06-13 21:21:33,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 21:21:33,744.744 INFO    ] 200
[2026-06-13 21:21:33,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:33,769.769 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:21:33,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:33,811.811 INFO    ] No camera update needed
[2026-06-13 21:21:33,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:21:33,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:21:33,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:21:33,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:35,861.861 INFO    ] ================================================
[2026-06-13 21:21:35,878.878 INFO    ] Launching Daemon at Sat Jun 13 21:21:35 IST 2026
[2026-06-13 21:21:35,893.893 INFO    ] ================================================
[2026-06-13 21:21:36,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:36
[2026-06-13 21:21:36,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:36,666.666 INFO    ] Initializing speech engine...
[2026-06-13 21:21:36,680.680 INFO    ] 2026-06-13 21:21:36
[2026-06-13 21:21:36,883.883 INFO    ] 2026-06-13 21:21:36
[2026-06-13 21:21:36,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:37,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:37,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:37,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:37,302.302 INFO    ] time= 13/06/2026 21:21:37
[2026-06-13 21:21:37,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:37,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:37,482.482 INFO    ] No existing commands found in stream
[2026-06-13 21:21:42,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:21:42,494.494 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 21:21:43,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:21:43,337.337 INFO    ] Checking for system updates...
[2026-06-13 21:21:43,359.359 INFO    ] 200
[2026-06-13 21:21:43,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:43,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:43,397.397 INFO    ] No update needed
[2026-06-13 21:21:43,399.399 INFO    ] Checking for camera pi updates...
[2026-06-13 21:21:43,422.422 INFO    ] 200
[2026-06-13 21:21:43,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:43,448.448 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:21:43,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:43,493.493 INFO    ] No camera update needed
[2026-06-13 21:21:43,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:21:43,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:21:43,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:21:43,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:45,541.541 INFO    ] ================================================
[2026-06-13 21:21:45,556.556 INFO    ] Launching Daemon at Sat Jun 13 21:21:45 IST 2026
[2026-06-13 21:21:45,567.567 INFO    ] ================================================
[2026-06-13 21:21:45,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:45
[2026-06-13 21:21:46,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:46,355.355 INFO    ] Initializing speech engine...
[2026-06-13 21:21:46,366.366 INFO    ] 2026-06-13 21:21:46
[2026-06-13 21:21:46,573.573 INFO    ] 2026-06-13 21:21:46
[2026-06-13 21:21:46,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:46,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:46,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:46,982.982 INFO    ] time= 13/06/2026 21:21:46
[2026-06-13 21:21:47,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:47,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:47,087.087 INFO    ] No existing commands found in stream
[2026-06-13 21:21:52,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:21:52,099.099 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 21:21:52,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:21:52,678.678 INFO    ] Checking for system updates...
[2026-06-13 21:21:52,699.699 INFO    ] 200
[2026-06-13 21:21:52,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:52,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:52,736.736 INFO    ] No update needed
[2026-06-13 21:21:52,737.737 INFO    ] Checking for camera pi updates...
[2026-06-13 21:21:52,757.757 INFO    ] 200
[2026-06-13 21:21:52,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:21:52,783.783 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:21:52,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:21:52,811.811 INFO    ] No camera update needed
[2026-06-13 21:21:52,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:21:52,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:21:52,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:21:52,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:21:54,860.860 INFO    ] ================================================
[2026-06-13 21:21:54,876.876 INFO    ] Launching Daemon at Sat Jun 13 21:21:54 IST 2026
[2026-06-13 21:21:54,887.887 INFO    ] ================================================
[2026-06-13 21:21:55,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:21:55
[2026-06-13 21:21:55,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:21:55,680.680 INFO    ] Initializing speech engine...
[2026-06-13 21:21:55,684.684 INFO    ] 2026-06-13 21:21:55
[2026-06-13 21:21:55,911.911 INFO    ] 2026-06-13 21:21:55
[2026-06-13 21:21:55,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:21:56,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:21:56,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:21:56,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:21:56,330.330 INFO    ] time= 13/06/2026 21:21:56
[2026-06-13 21:21:56,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:21:56,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:21:56,468.468 INFO    ] No existing commands found in stream
[2026-06-13 21:22:01,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:01,479.479 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 21:22:04,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:22:04,194.194 INFO    ] Checking for system updates...
[2026-06-13 21:22:04,215.215 INFO    ] 200
[2026-06-13 21:22:04,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:04,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:04,248.248 INFO    ] No update needed
[2026-06-13 21:22:04,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 21:22:04,274.274 INFO    ] 200
[2026-06-13 21:22:04,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:04,308.308 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:22:04,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:04,349.349 INFO    ] No camera update needed
[2026-06-13 21:22:04,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:22:04,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:22:04,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:22:04,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:22:06,398.398 INFO    ] ================================================
[2026-06-13 21:22:06,413.413 INFO    ] Launching Daemon at Sat Jun 13 21:22:06 IST 2026
[2026-06-13 21:22:06,424.424 INFO    ] ================================================
[2026-06-13 21:22:06,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:22:06
[2026-06-13 21:22:07,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:22:07,230.230 INFO    ] Initializing speech engine...
[2026-06-13 21:22:07,235.235 INFO    ] 2026-06-13 21:22:07
[2026-06-13 21:22:07,441.441 INFO    ] 2026-06-13 21:22:07
[2026-06-13 21:22:07,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:22:07,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:22:07,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:22:07,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:22:07,850.850 INFO    ] time= 13/06/2026 21:22:07
[2026-06-13 21:22:07,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:22:07,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:22:07,968.968 INFO    ] No existing commands found in stream
[2026-06-13 21:22:12,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:12,981.981 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-13 21:22:16,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:22:16,802.802 INFO    ] Checking for system updates...
[2026-06-13 21:22:16,822.822 INFO    ] 200
[2026-06-13 21:22:16,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:16,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:22:16,856.856 INFO    ] No update needed
[2026-06-13 21:22:16,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 21:22:16,878.878 INFO    ] 200
[2026-06-13 21:22:16,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:16,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:22:16,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:22:16,959.959 INFO    ] No camera update needed
[2026-06-13 21:22:16,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:22:16,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:22:16,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:22:16,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:22:19,010.010 INFO    ] ================================================
[2026-06-13 21:22:19,026.026 INFO    ] Launching Daemon at Sat Jun 13 21:22:19 IST 2026
[2026-06-13 21:22:19,043.043 INFO    ] ================================================
[2026-06-13 21:22:19,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:22:19
[2026-06-13 21:22:19,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:22:19,944.944 INFO    ] Initializing speech engine...
[2026-06-13 21:22:19,966.966 INFO    ] 2026-06-13 21:22:19
[2026-06-13 21:22:20,226.226 INFO    ] 2026-06-13 21:22:20
[2026-06-13 21:22:20,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:22:20,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:22:20,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:22:20,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:22:20,587.587 INFO    ] time= 13/06/2026 21:22:20
[2026-06-13 21:22:20,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:22:20,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:22:20,671.671 INFO    ] No existing commands found in stream
[2026-06-13 21:22:25,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:25,689.689 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 21:22:29,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:22:29,304.304 INFO    ] Checking for system updates...
[2026-06-13 21:22:29,326.326 INFO    ] 200
[2026-06-13 21:22:29,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:29,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:22:29,360.360 INFO    ] No update needed
[2026-06-13 21:22:29,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 21:22:29,388.388 INFO    ] 200
[2026-06-13 21:22:29,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:29,428.428 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:22:29,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:22:29,454.454 INFO    ] No camera update needed
[2026-06-13 21:22:29,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:22:29,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:22:29,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:22:29,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:22:31,497.497 INFO    ] ================================================
[2026-06-13 21:22:31,508.508 INFO    ] Launching Daemon at Sat Jun 13 21:22:31 IST 2026
[2026-06-13 21:22:31,515.515 INFO    ] ================================================
[2026-06-13 21:22:31,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:22:31
[2026-06-13 21:22:32,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:22:32,318.318 INFO    ] Initializing speech engine...
[2026-06-13 21:22:32,331.331 INFO    ] 2026-06-13 21:22:32
[2026-06-13 21:22:32,549.549 INFO    ] 2026-06-13 21:22:32
[2026-06-13 21:22:32,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:22:32,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:22:32,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:22:32,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:22:32,963.963 INFO    ] time= 13/06/2026 21:22:32
[2026-06-13 21:22:33,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:22:33,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:22:33,106.106 INFO    ] No existing commands found in stream
[2026-06-13 21:22:38,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:38,120.120 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 21:22:39,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:22:39,821.821 INFO    ] Checking for system updates...
[2026-06-13 21:22:39,841.841 INFO    ] 200
[2026-06-13 21:22:39,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:39,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:39,874.874 INFO    ] No update needed
[2026-06-13 21:22:39,875.875 INFO    ] Checking for camera pi updates...
[2026-06-13 21:22:39,896.896 INFO    ] 200
[2026-06-13 21:22:39,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:39,922.922 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:22:39,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:39,966.966 INFO    ] No camera update needed
[2026-06-13 21:22:39,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:22:39,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:22:39,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:22:39,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:22:42,013.013 INFO    ] ================================================
[2026-06-13 21:22:42,029.029 INFO    ] Launching Daemon at Sat Jun 13 21:22:42 IST 2026
[2026-06-13 21:22:42,044.044 INFO    ] ================================================
[2026-06-13 21:22:42,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:22:42
[2026-06-13 21:22:42,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:22:42,813.813 INFO    ] Initializing speech engine...
[2026-06-13 21:22:42,818.818 INFO    ] 2026-06-13 21:22:42
[2026-06-13 21:22:43,039.039 INFO    ] 2026-06-13 21:22:43
[2026-06-13 21:22:43,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:22:43,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:22:43,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:22:43,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:22:43,445.445 INFO    ] time= 13/06/2026 21:22:43
[2026-06-13 21:22:43,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:22:43,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:22:43,568.568 INFO    ] No existing commands found in stream
[2026-06-13 21:22:48,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:48,582.582 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 21:22:49,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:22:49,841.841 INFO    ] Checking for system updates...
[2026-06-13 21:22:49,862.862 INFO    ] 200
[2026-06-13 21:22:49,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:49,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:49,895.895 INFO    ] No update needed
[2026-06-13 21:22:49,897.897 INFO    ] Checking for camera pi updates...
[2026-06-13 21:22:49,918.918 INFO    ] 200
[2026-06-13 21:22:49,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:22:49,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:22:49,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:22:49,980.980 INFO    ] No camera update needed
[2026-06-13 21:22:49,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:22:49,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:22:49,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:22:49,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:22:52,028.028 INFO    ] ================================================
[2026-06-13 21:22:52,043.043 INFO    ] Launching Daemon at Sat Jun 13 21:22:52 IST 2026
[2026-06-13 21:22:52,054.054 INFO    ] ================================================
[2026-06-13 21:22:52,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:22:52
[2026-06-13 21:22:52,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:22:52,930.930 INFO    ] Initializing speech engine...
[2026-06-13 21:22:52,936.936 INFO    ] 2026-06-13 21:22:52
[2026-06-13 21:22:53,144.144 INFO    ] 2026-06-13 21:22:53
[2026-06-13 21:22:53,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:22:53,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:22:53,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:22:53,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:22:53,645.645 INFO    ] time= 13/06/2026 21:22:53
[2026-06-13 21:22:53,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:22:53,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:22:53,860.860 INFO    ] No existing commands found in stream
[2026-06-13 21:22:58,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:22:58,885.885 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-13 21:23:00,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:23:00,717.717 INFO    ] Checking for system updates...
[2026-06-13 21:23:00,738.738 INFO    ] 200
[2026-06-13 21:23:00,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:00,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:23:00,774.774 INFO    ] No update needed
[2026-06-13 21:23:00,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:00,797.797 INFO    ] 200
[2026-06-13 21:23:00,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:00,823.823 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:00,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:23:00,864.864 INFO    ] No camera update needed
[2026-06-13 21:23:00,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:00,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:00,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:00,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:02,908.908 INFO    ] ================================================
[2026-06-13 21:23:02,923.923 INFO    ] Launching Daemon at Sat Jun 13 21:23:02 IST 2026
[2026-06-13 21:23:02,935.935 INFO    ] ================================================
[2026-06-13 21:23:03,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:23:03
[2026-06-13 21:23:03,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:23:03,757.757 INFO    ] Initializing speech engine...
[2026-06-13 21:23:03,763.763 INFO    ] 2026-06-13 21:23:03
[2026-06-13 21:23:03,972.972 INFO    ] 2026-06-13 21:23:03
[2026-06-13 21:23:04,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:23:04,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:23:04,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:23:04,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:23:04,393.393 INFO    ] time= 13/06/2026 21:23:04
[2026-06-13 21:23:04,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:23:04,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:23:04,493.493 INFO    ] No existing commands found in stream
[2026-06-13 21:23:09,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:23:09,507.507 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 21:23:12,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:23:12,697.697 INFO    ] Checking for system updates...
[2026-06-13 21:23:12,718.718 INFO    ] 200
[2026-06-13 21:23:12,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:12,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:23:12,754.754 INFO    ] No update needed
[2026-06-13 21:23:12,755.755 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:12,779.779 INFO    ] 200
[2026-06-13 21:23:12,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:12,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:12,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:23:12,949.949 INFO    ] No camera update needed
[2026-06-13 21:23:12,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:12,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:12,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:12,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:15,999.999 INFO    ] ================================================
[2026-06-13 21:23:15,015.015 INFO    ] Launching Daemon at Sat Jun 13 21:23:15 IST 2026
[2026-06-13 21:23:15,026.026 INFO    ] ================================================
[2026-06-13 21:23:15,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:23:15
[2026-06-13 21:23:15,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:23:15,853.853 INFO    ] Initializing speech engine...
[2026-06-13 21:23:15,866.866 INFO    ] 2026-06-13 21:23:15
[2026-06-13 21:23:16,132.132 INFO    ] 2026-06-13 21:23:16
[2026-06-13 21:23:16,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:23:16,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:23:16,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:23:16,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:23:16,554.554 INFO    ] time= 13/06/2026 21:23:16
[2026-06-13 21:23:16,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:23:16,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:23:16,793.793 INFO    ] No existing commands found in stream
[2026-06-13 21:23:21,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:23:21,828.828 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 21:23:23,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:23:23,121.121 INFO    ] Checking for system updates...
[2026-06-13 21:23:23,141.141 INFO    ] 200
[2026-06-13 21:23:23,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:23,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:23,174.174 INFO    ] No update needed
[2026-06-13 21:23:23,175.175 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:23,195.195 INFO    ] 200
[2026-06-13 21:23:23,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:23,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:23,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:23,258.258 INFO    ] No camera update needed
[2026-06-13 21:23:23,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:23,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:23,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:23,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:25,306.306 INFO    ] ================================================
[2026-06-13 21:23:25,322.322 INFO    ] Launching Daemon at Sat Jun 13 21:23:25 IST 2026
[2026-06-13 21:23:25,335.335 INFO    ] ================================================
[2026-06-13 21:23:25,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:23:25
[2026-06-13 21:23:25,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:23:26,126.126 INFO    ] Initializing speech engine...
[2026-06-13 21:23:26,139.139 INFO    ] 2026-06-13 21:23:26
[2026-06-13 21:23:26,356.356 INFO    ] 2026-06-13 21:23:26
[2026-06-13 21:23:26,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:23:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:23:26,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:23:26,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:23:26,788.788 INFO    ] time= 13/06/2026 21:23:26
[2026-06-13 21:23:26,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:23:26,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:23:26,907.907 INFO    ] No existing commands found in stream
[2026-06-13 21:23:31,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:23:31,919.919 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-13 21:23:34,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:23:34,471.471 INFO    ] Checking for system updates...
[2026-06-13 21:23:34,491.491 INFO    ] 200
[2026-06-13 21:23:34,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:34,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:34,525.525 INFO    ] No update needed
[2026-06-13 21:23:34,526.526 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:34,546.546 INFO    ] 200
[2026-06-13 21:23:34,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:34,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:34,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:34,612.612 INFO    ] No camera update needed
[2026-06-13 21:23:34,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:34,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:34,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:34,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:36,660.660 INFO    ] ================================================
[2026-06-13 21:23:36,676.676 INFO    ] Launching Daemon at Sat Jun 13 21:23:36 IST 2026
[2026-06-13 21:23:36,687.687 INFO    ] ================================================
[2026-06-13 21:23:37,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:23:37
[2026-06-13 21:23:37,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:23:37,486.486 INFO    ] Initializing speech engine...
[2026-06-13 21:23:37,500.500 INFO    ] 2026-06-13 21:23:37
[2026-06-13 21:23:37,706.706 INFO    ] 2026-06-13 21:23:37
[2026-06-13 21:23:37,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:23:37,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:23:37,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:23:38,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:23:38,119.119 INFO    ] time= 13/06/2026 21:23:38
[2026-06-13 21:23:38,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:23:38,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:23:38,221.221 INFO    ] No existing commands found in stream
[2026-06-13 21:23:43,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:23:43,231.231 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 21:23:45,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:23:45,021.021 INFO    ] Checking for system updates...
[2026-06-13 21:23:45,041.041 INFO    ] 200
[2026-06-13 21:23:45,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:45,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:45,074.074 INFO    ] No update needed
[2026-06-13 21:23:45,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:45,095.095 INFO    ] 200
[2026-06-13 21:23:45,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:45,119.119 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:45,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:45,161.161 INFO    ] No camera update needed
[2026-06-13 21:23:45,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:45,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:45,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:45,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:47,210.210 INFO    ] ================================================
[2026-06-13 21:23:47,226.226 INFO    ] Launching Daemon at Sat Jun 13 21:23:47 IST 2026
[2026-06-13 21:23:47,237.237 INFO    ] ================================================
[2026-06-13 21:23:47,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:23:47
[2026-06-13 21:23:47,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:23:48,059.059 INFO    ] Initializing speech engine...
[2026-06-13 21:23:48,063.063 INFO    ] 2026-06-13 21:23:48
[2026-06-13 21:23:48,274.274 INFO    ] 2026-06-13 21:23:48
[2026-06-13 21:23:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:23:48,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:23:48,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:23:48,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:23:48,673.673 INFO    ] time= 13/06/2026 21:23:48
[2026-06-13 21:23:48,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:23:48,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:23:48,856.856 INFO    ] No existing commands found in stream
[2026-06-13 21:23:53,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:23:53,869.869 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 21:23:57,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:23:57,661.661 INFO    ] Checking for system updates...
[2026-06-13 21:23:57,682.682 INFO    ] 200
[2026-06-13 21:23:57,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:57,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:57,716.716 INFO    ] No update needed
[2026-06-13 21:23:57,717.717 INFO    ] Checking for camera pi updates...
[2026-06-13 21:23:57,736.736 INFO    ] 200
[2026-06-13 21:23:57,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:23:57,761.761 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:23:57,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:23:57,811.811 INFO    ] No camera update needed
[2026-06-13 21:23:57,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:23:57,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:23:57,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:23:57,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:23:59,860.860 INFO    ] ================================================
[2026-06-13 21:23:59,875.875 INFO    ] Launching Daemon at Sat Jun 13 21:23:59 IST 2026
[2026-06-13 21:23:59,886.886 INFO    ] ================================================
[2026-06-13 21:24:00,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:00
[2026-06-13 21:24:00,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:00,739.739 INFO    ] Initializing speech engine...
[2026-06-13 21:24:00,745.745 INFO    ] 2026-06-13 21:24:00
[2026-06-13 21:24:01,010.010 INFO    ] 2026-06-13 21:24:01
[2026-06-13 21:24:01,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:01,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:01,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:01,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:01,447.447 INFO    ] time= 13/06/2026 21:24:01
[2026-06-13 21:24:01,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:01,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:01,678.678 INFO    ] No existing commands found in stream
[2026-06-13 21:24:06,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:24:06,697.697 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 21:24:08,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:24:08,725.725 INFO    ] Checking for system updates...
[2026-06-13 21:24:08,745.745 INFO    ] 200
[2026-06-13 21:24:08,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:08,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:08,779.779 INFO    ] No update needed
[2026-06-13 21:24:08,780.780 INFO    ] Checking for camera pi updates...
[2026-06-13 21:24:08,800.800 INFO    ] 200
[2026-06-13 21:24:08,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:08,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:24:08,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:08,865.865 INFO    ] No camera update needed
[2026-06-13 21:24:08,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:24:08,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:24:08,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:24:08,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:24:10,909.909 INFO    ] ================================================
[2026-06-13 21:24:10,924.924 INFO    ] Launching Daemon at Sat Jun 13 21:24:10 IST 2026
[2026-06-13 21:24:10,934.934 INFO    ] ================================================
[2026-06-13 21:24:11,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:11
[2026-06-13 21:24:11,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:11,714.714 INFO    ] Initializing speech engine...
[2026-06-13 21:24:11,719.719 INFO    ] 2026-06-13 21:24:11
[2026-06-13 21:24:11,915.915 INFO    ] 2026-06-13 21:24:11
[2026-06-13 21:24:11,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:12,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:12,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:12,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:12,280.280 INFO    ] time= 13/06/2026 21:24:12
[2026-06-13 21:24:12,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:12,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:12,363.363 INFO    ] No existing commands found in stream
[2026-06-13 21:24:17,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:24:17,376.376 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 21:24:21,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:24:21,693.693 INFO    ] Checking for system updates...
[2026-06-13 21:24:21,714.714 INFO    ] 200
[2026-06-13 21:24:21,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:21,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:21,747.747 INFO    ] No update needed
[2026-06-13 21:24:21,748.748 INFO    ] Checking for camera pi updates...
[2026-06-13 21:24:21,769.769 INFO    ] 200
[2026-06-13 21:24:21,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:21,793.793 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:24:21,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:21,841.841 INFO    ] No camera update needed
[2026-06-13 21:24:21,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:24:21,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:24:21,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:24:21,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:24:23,888.888 INFO    ] ================================================
[2026-06-13 21:24:23,904.904 INFO    ] Launching Daemon at Sat Jun 13 21:24:23 IST 2026
[2026-06-13 21:24:23,914.914 INFO    ] ================================================
[2026-06-13 21:24:24,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:24
[2026-06-13 21:24:24,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:24,694.694 INFO    ] Initializing speech engine...
[2026-06-13 21:24:24,698.698 INFO    ] 2026-06-13 21:24:24
[2026-06-13 21:24:24,918.918 INFO    ] 2026-06-13 21:24:24
[2026-06-13 21:24:24,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:25,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:25,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:25,322.322 INFO    ] time= 13/06/2026 21:24:25
[2026-06-13 21:24:25,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:25,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:25,439.439 INFO    ] No existing commands found in stream
[2026-06-13 21:24:30,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:24:30,452.452 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 21:24:31,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:24:31,039.039 INFO    ] Checking for system updates...
[2026-06-13 21:24:31,061.061 INFO    ] 200
[2026-06-13 21:24:31,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:31,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:31,096.096 INFO    ] No update needed
[2026-06-13 21:24:31,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 21:24:31,118.118 INFO    ] 200
[2026-06-13 21:24:31,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:31,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:24:31,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:31,188.188 INFO    ] No camera update needed
[2026-06-13 21:24:31,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:24:31,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:24:31,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:24:31,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:24:33,231.231 INFO    ] ================================================
[2026-06-13 21:24:33,247.247 INFO    ] Launching Daemon at Sat Jun 13 21:24:33 IST 2026
[2026-06-13 21:24:33,258.258 INFO    ] ================================================
[2026-06-13 21:24:33,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:33
[2026-06-13 21:24:34,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:34,160.160 INFO    ] Initializing speech engine...
[2026-06-13 21:24:34,165.165 INFO    ] 2026-06-13 21:24:34
[2026-06-13 21:24:34,366.366 INFO    ] 2026-06-13 21:24:34
[2026-06-13 21:24:34,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:34,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:34,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:34,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:34,803.803 INFO    ] time= 13/06/2026 21:24:34
[2026-06-13 21:24:34,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:34,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:34,950.950 INFO    ] No existing commands found in stream
[2026-06-13 21:24:39,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:24:39,970.970 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 21:24:42,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:24:42,391.391 INFO    ] Checking for system updates...
[2026-06-13 21:24:42,412.412 INFO    ] 200
[2026-06-13 21:24:42,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:42,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:24:42,446.446 INFO    ] No update needed
[2026-06-13 21:24:42,447.447 INFO    ] Checking for camera pi updates...
[2026-06-13 21:24:42,467.467 INFO    ] 200
[2026-06-13 21:24:42,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:42,493.493 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:24:42,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:24:42,529.529 INFO    ] No camera update needed
[2026-06-13 21:24:42,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:24:42,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:24:42,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:24:42,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:24:44,580.580 INFO    ] ================================================
[2026-06-13 21:24:44,596.596 INFO    ] Launching Daemon at Sat Jun 13 21:24:44 IST 2026
[2026-06-13 21:24:44,607.607 INFO    ] ================================================
[2026-06-13 21:24:44,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:44
[2026-06-13 21:24:45,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:45,442.442 INFO    ] Initializing speech engine...
[2026-06-13 21:24:45,452.452 INFO    ] 2026-06-13 21:24:45
[2026-06-13 21:24:45,662.662 INFO    ] 2026-06-13 21:24:45
[2026-06-13 21:24:45,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:45,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:46,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:46,108.108 INFO    ] time= 13/06/2026 21:24:46
[2026-06-13 21:24:46,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:46,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:46,291.291 INFO    ] No existing commands found in stream
[2026-06-13 21:24:51,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:24:51,303.303 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 21:24:54,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:24:54,246.246 INFO    ] Checking for system updates...
[2026-06-13 21:24:54,267.267 INFO    ] 200
[2026-06-13 21:24:54,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:54,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:54,303.303 INFO    ] No update needed
[2026-06-13 21:24:54,305.305 INFO    ] Checking for camera pi updates...
[2026-06-13 21:24:54,324.324 INFO    ] 200
[2026-06-13 21:24:54,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:24:54,349.349 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:24:54,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:24:54,397.397 INFO    ] No camera update needed
[2026-06-13 21:24:54,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:24:54,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:24:54,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:24:54,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:24:56,445.445 INFO    ] ================================================
[2026-06-13 21:24:56,461.461 INFO    ] Launching Daemon at Sat Jun 13 21:24:56 IST 2026
[2026-06-13 21:24:56,472.472 INFO    ] ================================================
[2026-06-13 21:24:56,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:24:56
[2026-06-13 21:24:57,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:24:57,523.523 INFO    ] Initializing speech engine...
[2026-06-13 21:24:57,529.529 INFO    ] 2026-06-13 21:24:57
[2026-06-13 21:24:57,831.831 INFO    ] 2026-06-13 21:24:57
[2026-06-13 21:24:57,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:24:58,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:24:58,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:24:58,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:24:58,193.193 INFO    ] time= 13/06/2026 21:24:58
[2026-06-13 21:24:58,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:24:58,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:24:58,276.276 INFO    ] No existing commands found in stream
[2026-06-13 21:25:03,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:03,290.290 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 21:25:04,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:25:04,318.318 INFO    ] Checking for system updates...
[2026-06-13 21:25:04,354.354 INFO    ] 200
[2026-06-13 21:25:04,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:04,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:25:04,412.412 INFO    ] No update needed
[2026-06-13 21:25:04,414.414 INFO    ] Checking for camera pi updates...
[2026-06-13 21:25:04,448.448 INFO    ] 200
[2026-06-13 21:25:04,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:04,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:25:04,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:25:04,541.541 INFO    ] No camera update needed
[2026-06-13 21:25:04,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:25:04,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:25:04,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:25:04,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:25:06,597.597 INFO    ] ================================================
[2026-06-13 21:25:06,613.613 INFO    ] Launching Daemon at Sat Jun 13 21:25:06 IST 2026
[2026-06-13 21:25:06,623.623 INFO    ] ================================================
[2026-06-13 21:25:06,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:25:06
[2026-06-13 21:25:07,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:25:07,438.438 INFO    ] Initializing speech engine...
[2026-06-13 21:25:07,443.443 INFO    ] 2026-06-13 21:25:07
[2026-06-13 21:25:07,649.649 INFO    ] 2026-06-13 21:25:07
[2026-06-13 21:25:07,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:25:07,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:25:07,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:25:08,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:25:08,066.066 INFO    ] time= 13/06/2026 21:25:08
[2026-06-13 21:25:08,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:25:08,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:25:08,213.213 INFO    ] No existing commands found in stream
[2026-06-13 21:25:13,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:13,226.226 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 21:25:14,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:25:14,560.560 INFO    ] Checking for system updates...
[2026-06-13 21:25:14,581.581 INFO    ] 200
[2026-06-13 21:25:14,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:14,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:14,616.616 INFO    ] No update needed
[2026-06-13 21:25:14,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 21:25:14,636.636 INFO    ] 200
[2026-06-13 21:25:14,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:14,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:25:14,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:14,801.801 INFO    ] No camera update needed
[2026-06-13 21:25:14,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:25:14,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:25:14,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:25:14,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:25:16,847.847 INFO    ] ================================================
[2026-06-13 21:25:16,863.863 INFO    ] Launching Daemon at Sat Jun 13 21:25:16 IST 2026
[2026-06-13 21:25:16,875.875 INFO    ] ================================================
[2026-06-13 21:25:17,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:25:17
[2026-06-13 21:25:17,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:25:17,690.690 INFO    ] Initializing speech engine...
[2026-06-13 21:25:17,693.693 INFO    ] 2026-06-13 21:25:17
[2026-06-13 21:25:17,894.894 INFO    ] 2026-06-13 21:25:17
[2026-06-13 21:25:17,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:25:18,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:25:18,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:25:18,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:25:18,310.310 INFO    ] time= 13/06/2026 21:25:18
[2026-06-13 21:25:18,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:25:18,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:25:18,411.411 INFO    ] No existing commands found in stream
[2026-06-13 21:25:23,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:23,423.423 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 21:25:27,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:25:27,334.334 INFO    ] Checking for system updates...
[2026-06-13 21:25:27,355.355 INFO    ] 200
[2026-06-13 21:25:27,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:27,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:27,389.389 INFO    ] No update needed
[2026-06-13 21:25:27,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 21:25:27,410.410 INFO    ] 200
[2026-06-13 21:25:27,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:27,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:25:27,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:27,483.483 INFO    ] No camera update needed
[2026-06-13 21:25:27,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:25:27,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:25:27,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:25:27,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:25:29,530.530 INFO    ] ================================================
[2026-06-13 21:25:29,545.545 INFO    ] Launching Daemon at Sat Jun 13 21:25:29 IST 2026
[2026-06-13 21:25:29,557.557 INFO    ] ================================================
[2026-06-13 21:25:29,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:25:29
[2026-06-13 21:25:30,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:25:30,344.344 INFO    ] Initializing speech engine...
[2026-06-13 21:25:30,353.353 INFO    ] 2026-06-13 21:25:30
[2026-06-13 21:25:30,588.588 INFO    ] 2026-06-13 21:25:30
[2026-06-13 21:25:30,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:25:30,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:25:30,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:25:30,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:25:30,929.929 INFO    ] time= 13/06/2026 21:25:30
[2026-06-13 21:25:30,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:25:30,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:25:31,041.041 INFO    ] No existing commands found in stream
[2026-06-13 21:25:36,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:36,057.057 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 21:25:40,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:25:40,256.256 INFO    ] Checking for system updates...
[2026-06-13 21:25:40,277.277 INFO    ] 200
[2026-06-13 21:25:40,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:40,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:40,310.310 INFO    ] No update needed
[2026-06-13 21:25:40,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 21:25:40,331.331 INFO    ] 200
[2026-06-13 21:25:40,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:40,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:25:40,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:40,402.402 INFO    ] No camera update needed
[2026-06-13 21:25:40,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:25:40,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:25:40,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:25:40,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:25:42,450.450 INFO    ] ================================================
[2026-06-13 21:25:42,465.465 INFO    ] Launching Daemon at Sat Jun 13 21:25:42 IST 2026
[2026-06-13 21:25:42,477.477 INFO    ] ================================================
[2026-06-13 21:25:42,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:25:42
[2026-06-13 21:25:43,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:25:43,280.280 INFO    ] Initializing speech engine...
[2026-06-13 21:25:43,283.283 INFO    ] 2026-06-13 21:25:43
[2026-06-13 21:25:43,510.510 INFO    ] 2026-06-13 21:25:43
[2026-06-13 21:25:43,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:25:43,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:25:43,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:25:43,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:25:43,932.932 INFO    ] time= 13/06/2026 21:25:43
[2026-06-13 21:25:43,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:25:43,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:25:44,064.064 INFO    ] No existing commands found in stream
[2026-06-13 21:25:49,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:49,077.077 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 21:25:49,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:25:49,779.779 INFO    ] Checking for system updates...
[2026-06-13 21:25:49,800.800 INFO    ] 200
[2026-06-13 21:25:49,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:49,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:49,833.833 INFO    ] No update needed
[2026-06-13 21:25:49,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 21:25:49,854.854 INFO    ] 200
[2026-06-13 21:25:49,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:25:49,879.879 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:25:49,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:25:49,922.922 INFO    ] No camera update needed
[2026-06-13 21:25:49,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:25:49,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:25:49,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:25:49,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:25:51,970.970 INFO    ] ================================================
[2026-06-13 21:25:51,985.985 INFO    ] Launching Daemon at Sat Jun 13 21:25:51 IST 2026
[2026-06-13 21:25:52,997.997 INFO    ] ================================================
[2026-06-13 21:25:52,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:25:52
[2026-06-13 21:25:52,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:25:52,777.777 INFO    ] Initializing speech engine...
[2026-06-13 21:25:52,782.782 INFO    ] 2026-06-13 21:25:52
[2026-06-13 21:25:52,991.991 INFO    ] 2026-06-13 21:25:52
[2026-06-13 21:25:53,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:25:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:25:53,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:25:53,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:25:53,331.331 INFO    ] time= 13/06/2026 21:25:53
[2026-06-13 21:25:53,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:25:53,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:25:53,447.447 INFO    ] No existing commands found in stream
[2026-06-13 21:25:58,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:25:58,465.465 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 21:26:00,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:26:00,140.140 INFO    ] Checking for system updates...
[2026-06-13 21:26:00,161.161 INFO    ] 200
[2026-06-13 21:26:00,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:00,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:00,196.196 INFO    ] No update needed
[2026-06-13 21:26:00,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:00,217.217 INFO    ] 200
[2026-06-13 21:26:00,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:00,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:00,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:00,282.282 INFO    ] No camera update needed
[2026-06-13 21:26:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:00,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:00,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:00,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:26:02,327.327 INFO    ] ================================================
[2026-06-13 21:26:02,340.340 INFO    ] Launching Daemon at Sat Jun 13 21:26:02 IST 2026
[2026-06-13 21:26:02,349.349 INFO    ] ================================================
[2026-06-13 21:26:02,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:26:02
[2026-06-13 21:26:03,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:26:03,219.219 INFO    ] Initializing speech engine...
[2026-06-13 21:26:03,223.223 INFO    ] 2026-06-13 21:26:03
[2026-06-13 21:26:03,427.427 INFO    ] 2026-06-13 21:26:03
[2026-06-13 21:26:03,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:26:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:26:03,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:26:03,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:26:03,801.801 INFO    ] time= 13/06/2026 21:26:03
[2026-06-13 21:26:03,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:26:03,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:26:03,942.942 INFO    ] No existing commands found in stream
[2026-06-13 21:26:08,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:26:08,955.955 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 21:26:11,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:26:11,891.891 INFO    ] Checking for system updates...
[2026-06-13 21:26:11,912.912 INFO    ] 200
[2026-06-13 21:26:11,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:11,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:26:11,945.945 INFO    ] No update needed
[2026-06-13 21:26:11,946.946 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:11,966.966 INFO    ] 200
[2026-06-13 21:26:11,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:11,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:12,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:26:12,038.038 INFO    ] No camera update needed
[2026-06-13 21:26:12,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:12,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:12,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:12,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:26:14,086.086 INFO    ] ================================================
[2026-06-13 21:26:14,102.102 INFO    ] Launching Daemon at Sat Jun 13 21:26:14 IST 2026
[2026-06-13 21:26:14,113.113 INFO    ] ================================================
[2026-06-13 21:26:14,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:26:14
[2026-06-13 21:26:14,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:26:14,975.975 INFO    ] Initializing speech engine...
[2026-06-13 21:26:14,980.980 INFO    ] 2026-06-13 21:26:14
[2026-06-13 21:26:15,190.190 INFO    ] 2026-06-13 21:26:15
[2026-06-13 21:26:15,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:26:15,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:26:15,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:26:15,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:26:15,597.597 INFO    ] time= 13/06/2026 21:26:15
[2026-06-13 21:26:15,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:26:15,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:26:15,715.715 INFO    ] No existing commands found in stream
[2026-06-13 21:26:20,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:26:20,733.733 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 21:26:22,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:26:22,706.706 INFO    ] Checking for system updates...
[2026-06-13 21:26:22,727.727 INFO    ] 200
[2026-06-13 21:26:22,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:22,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:26:22,763.763 INFO    ] No update needed
[2026-06-13 21:26:22,764.764 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:22,787.787 INFO    ] 200
[2026-06-13 21:26:22,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:22,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:22,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:22,852.852 INFO    ] No camera update needed
[2026-06-13 21:26:22,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:22,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:22,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:22,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:26:24,899.899 INFO    ] ================================================
[2026-06-13 21:26:24,915.915 INFO    ] Launching Daemon at Sat Jun 13 21:26:24 IST 2026
[2026-06-13 21:26:24,926.926 INFO    ] ================================================
[2026-06-13 21:26:25,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:26:25
[2026-06-13 21:26:25,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:26:25,760.760 INFO    ] Initializing speech engine...
[2026-06-13 21:26:25,765.765 INFO    ] 2026-06-13 21:26:25
[2026-06-13 21:26:25,975.975 INFO    ] 2026-06-13 21:26:25
[2026-06-13 21:26:26,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:26:26,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:26:26,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:26:26,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:26:26,402.402 INFO    ] time= 13/06/2026 21:26:26
[2026-06-13 21:26:26,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:26:26,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:26:26,499.499 INFO    ] No existing commands found in stream
[2026-06-13 21:26:31,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:26:31,514.514 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-13 21:26:35,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:26:35,221.221 INFO    ] Checking for system updates...
[2026-06-13 21:26:35,243.243 INFO    ] 200
[2026-06-13 21:26:35,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:35,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:35,276.276 INFO    ] No update needed
[2026-06-13 21:26:35,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:35,296.296 INFO    ] 200
[2026-06-13 21:26:35,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:35,321.321 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:35,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:35,344.344 INFO    ] No camera update needed
[2026-06-13 21:26:35,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:35,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:35,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:35,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:26:37,391.391 INFO    ] ================================================
[2026-06-13 21:26:37,407.407 INFO    ] Launching Daemon at Sat Jun 13 21:26:37 IST 2026
[2026-06-13 21:26:37,418.418 INFO    ] ================================================
[2026-06-13 21:26:37,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:26:37
[2026-06-13 21:26:38,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:26:38,787.787 INFO    ] Initializing speech engine...
[2026-06-13 21:26:38,797.797 INFO    ] 2026-06-13 21:26:38
[2026-06-13 21:26:39,086.086 INFO    ] 2026-06-13 21:26:39
[2026-06-13 21:26:39,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:26:39,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:26:39,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:26:39,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:26:39,537.537 INFO    ] time= 13/06/2026 21:26:39
[2026-06-13 21:26:39,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:26:39,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:26:39,766.766 INFO    ] No existing commands found in stream
[2026-06-13 21:26:44,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:26:44,792.792 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-13 21:26:45,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:26:45,620.620 INFO    ] Checking for system updates...
[2026-06-13 21:26:45,641.641 INFO    ] 200
[2026-06-13 21:26:45,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:45,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:45,674.674 INFO    ] No update needed
[2026-06-13 21:26:45,675.675 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:45,695.695 INFO    ] 200
[2026-06-13 21:26:45,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:45,722.722 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:45,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:45,770.770 INFO    ] No camera update needed
[2026-06-13 21:26:45,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:45,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:45,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:45,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:26:47,818.818 INFO    ] ================================================
[2026-06-13 21:26:47,834.834 INFO    ] Launching Daemon at Sat Jun 13 21:26:47 IST 2026
[2026-06-13 21:26:47,845.845 INFO    ] ================================================
[2026-06-13 21:26:48,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:26:48
[2026-06-13 21:26:48,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:26:48,675.675 INFO    ] Initializing speech engine...
[2026-06-13 21:26:48,685.685 INFO    ] 2026-06-13 21:26:48
[2026-06-13 21:26:48,901.901 INFO    ] 2026-06-13 21:26:48
[2026-06-13 21:26:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:26:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:26:49,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:26:49,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:26:49,289.289 INFO    ] time= 13/06/2026 21:26:49
[2026-06-13 21:26:49,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:26:49,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:26:49,424.424 INFO    ] No existing commands found in stream
[2026-06-13 21:26:54,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:26:54,458.458 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 21:26:58,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:26:58,586.586 INFO    ] Checking for system updates...
[2026-06-13 21:26:58,607.607 INFO    ] 200
[2026-06-13 21:26:58,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:58,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:58,641.641 INFO    ] No update needed
[2026-06-13 21:26:58,642.642 INFO    ] Checking for camera pi updates...
[2026-06-13 21:26:58,663.663 INFO    ] 200
[2026-06-13 21:26:58,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:26:58,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:26:58,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:26:58,737.737 INFO    ] No camera update needed
[2026-06-13 21:26:58,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:26:58,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:26:58,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:26:58,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:00,786.786 INFO    ] ================================================
[2026-06-13 21:27:00,802.802 INFO    ] Launching Daemon at Sat Jun 13 21:27:00 IST 2026
[2026-06-13 21:27:00,813.813 INFO    ] ================================================
[2026-06-13 21:27:01,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:27:01
[2026-06-13 21:27:01,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:27:01,821.821 INFO    ] Initializing speech engine...
[2026-06-13 21:27:01,824.824 INFO    ] 2026-06-13 21:27:01
[2026-06-13 21:27:02,089.089 INFO    ] 2026-06-13 21:27:02
[2026-06-13 21:27:02,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:27:02,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:27:02,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:27:02,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:27:02,485.485 INFO    ] time= 13/06/2026 21:27:02
[2026-06-13 21:27:02,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:27:02,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:27:02,633.633 INFO    ] No existing commands found in stream
[2026-06-13 21:27:07,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:27:07,646.646 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 21:27:11,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:27:11,856.856 INFO    ] Checking for system updates...
[2026-06-13 21:27:11,877.877 INFO    ] 200
[2026-06-13 21:27:11,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:11,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:11,911.911 INFO    ] No update needed
[2026-06-13 21:27:11,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 21:27:11,931.931 INFO    ] 200
[2026-06-13 21:27:11,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:11,958.958 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:27:11,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:12,000.000 INFO    ] No camera update needed
[2026-06-13 21:27:12,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:27:12,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:27:12,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:27:12,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:14,049.049 INFO    ] ================================================
[2026-06-13 21:27:14,065.065 INFO    ] Launching Daemon at Sat Jun 13 21:27:14 IST 2026
[2026-06-13 21:27:14,076.076 INFO    ] ================================================
[2026-06-13 21:27:14,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:27:14
[2026-06-13 21:27:14,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:27:14,859.859 INFO    ] Initializing speech engine...
[2026-06-13 21:27:14,863.863 INFO    ] 2026-06-13 21:27:14
[2026-06-13 21:27:15,068.068 INFO    ] 2026-06-13 21:27:15
[2026-06-13 21:27:15,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:27:15,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:27:15,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:27:15,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:27:15,473.473 INFO    ] time= 13/06/2026 21:27:15
[2026-06-13 21:27:15,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:27:15,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:27:15,584.584 INFO    ] No existing commands found in stream
[2026-06-13 21:27:20,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:27:20,601.601 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 21:27:22,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:27:22,910.910 INFO    ] Checking for system updates...
[2026-06-13 21:27:22,930.930 INFO    ] 200
[2026-06-13 21:27:22,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:22,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:27:22,963.963 INFO    ] No update needed
[2026-06-13 21:27:22,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 21:27:22,989.989 INFO    ] 200
[2026-06-13 21:27:22,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:23,014.014 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:27:23,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:27:23,141.141 INFO    ] No camera update needed
[2026-06-13 21:27:23,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:27:23,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:27:23,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:27:23,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:25,189.189 INFO    ] ================================================
[2026-06-13 21:27:25,205.205 INFO    ] Launching Daemon at Sat Jun 13 21:27:25 IST 2026
[2026-06-13 21:27:25,216.216 INFO    ] ================================================
[2026-06-13 21:27:25,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:27:25
[2026-06-13 21:27:25,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:27:26,088.088 INFO    ] Initializing speech engine...
[2026-06-13 21:27:26,092.092 INFO    ] 2026-06-13 21:27:26
[2026-06-13 21:27:26,303.303 INFO    ] 2026-06-13 21:27:26
[2026-06-13 21:27:26,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:27:26,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:27:26,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:27:26,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:27:26,711.711 INFO    ] time= 13/06/2026 21:27:26
[2026-06-13 21:27:26,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:27:26,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:27:26,829.829 INFO    ] No existing commands found in stream
[2026-06-13 21:27:31,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:27:31,841.841 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 21:27:33,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:27:33,944.944 INFO    ] Checking for system updates...
[2026-06-13 21:27:33,981.981 INFO    ] 200
[2026-06-13 21:27:33,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:34,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:27:34,049.049 INFO    ] No update needed
[2026-06-13 21:27:34,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 21:27:34,088.088 INFO    ] 200
[2026-06-13 21:27:34,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:34,133.133 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:27:34,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:34,188.188 INFO    ] No camera update needed
[2026-06-13 21:27:34,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:27:34,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:27:34,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:27:34,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:36,244.244 INFO    ] ================================================
[2026-06-13 21:27:36,260.260 INFO    ] Launching Daemon at Sat Jun 13 21:27:36 IST 2026
[2026-06-13 21:27:36,270.270 INFO    ] ================================================
[2026-06-13 21:27:36,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:27:36
[2026-06-13 21:27:37,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:27:37,374.374 INFO    ] Initializing speech engine...
[2026-06-13 21:27:37,382.382 INFO    ] 2026-06-13 21:27:37
[2026-06-13 21:27:37,605.605 INFO    ] 2026-06-13 21:27:37
[2026-06-13 21:27:37,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:27:37,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:27:37,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:27:37,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:27:38,030.030 INFO    ] time= 13/06/2026 21:27:37
[2026-06-13 21:27:38,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:27:38,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:27:38,155.155 INFO    ] No existing commands found in stream
[2026-06-13 21:27:43,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:27:43,169.169 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 21:27:45,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:27:45,334.334 INFO    ] Checking for system updates...
[2026-06-13 21:27:45,355.355 INFO    ] 200
[2026-06-13 21:27:45,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:45,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:45,389.389 INFO    ] No update needed
[2026-06-13 21:27:45,390.390 INFO    ] Checking for camera pi updates...
[2026-06-13 21:27:45,409.409 INFO    ] 200
[2026-06-13 21:27:45,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:45,435.435 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:27:45,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:27:45,475.475 INFO    ] No camera update needed
[2026-06-13 21:27:45,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:27:45,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:27:45,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:27:45,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:47,524.524 INFO    ] ================================================
[2026-06-13 21:27:47,542.542 INFO    ] Launching Daemon at Sat Jun 13 21:27:47 IST 2026
[2026-06-13 21:27:47,553.553 INFO    ] ================================================
[2026-06-13 21:27:47,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:27:47
[2026-06-13 21:27:48,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:27:48,327.327 INFO    ] Initializing speech engine...
[2026-06-13 21:27:48,340.340 INFO    ] 2026-06-13 21:27:48
[2026-06-13 21:27:48,556.556 INFO    ] 2026-06-13 21:27:48
[2026-06-13 21:27:48,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:27:48,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:27:48,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:27:48,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:27:48,979.979 INFO    ] time= 13/06/2026 21:27:48
[2026-06-13 21:27:49,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:27:49,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:27:49,103.103 INFO    ] No existing commands found in stream
[2026-06-13 21:27:54,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:27:54,117.117 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 21:27:57,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:27:57,644.644 INFO    ] Checking for system updates...
[2026-06-13 21:27:57,664.664 INFO    ] 200
[2026-06-13 21:27:57,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:57,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:57,697.697 INFO    ] No update needed
[2026-06-13 21:27:57,699.699 INFO    ] Checking for camera pi updates...
[2026-06-13 21:27:57,718.718 INFO    ] 200
[2026-06-13 21:27:57,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:27:57,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:27:57,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:27:57,788.788 INFO    ] No camera update needed
[2026-06-13 21:27:57,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:27:57,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:27:57,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:27:57,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:27:59,836.836 INFO    ] ================================================
[2026-06-13 21:27:59,851.851 INFO    ] Launching Daemon at Sat Jun 13 21:27:59 IST 2026
[2026-06-13 21:27:59,862.862 INFO    ] ================================================
[2026-06-13 21:28:00,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:00
[2026-06-13 21:28:00,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:00,638.638 INFO    ] Initializing speech engine...
[2026-06-13 21:28:00,643.643 INFO    ] 2026-06-13 21:28:00
[2026-06-13 21:28:00,871.871 INFO    ] 2026-06-13 21:28:00
[2026-06-13 21:28:00,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:01,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:01,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:01,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:01,294.294 INFO    ] time= 13/06/2026 21:28:01
[2026-06-13 21:28:01,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:01,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:01,427.427 INFO    ] No existing commands found in stream
[2026-06-13 21:28:06,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:28:06,440.440 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-13 21:28:07,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:28:07,530.530 INFO    ] Checking for system updates...
[2026-06-13 21:28:07,552.552 INFO    ] 200
[2026-06-13 21:28:07,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:07,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:07,586.586 INFO    ] No update needed
[2026-06-13 21:28:07,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 21:28:07,610.610 INFO    ] 200
[2026-06-13 21:28:07,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:07,634.634 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:28:07,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:07,680.680 INFO    ] No camera update needed
[2026-06-13 21:28:07,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:28:07,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:28:07,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:28:07,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:28:09,729.729 INFO    ] ================================================
[2026-06-13 21:28:09,744.744 INFO    ] Launching Daemon at Sat Jun 13 21:28:09 IST 2026
[2026-06-13 21:28:09,756.756 INFO    ] ================================================
[2026-06-13 21:28:10,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:10
[2026-06-13 21:28:10,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:10,547.547 INFO    ] Initializing speech engine...
[2026-06-13 21:28:10,552.552 INFO    ] 2026-06-13 21:28:10
[2026-06-13 21:28:10,778.778 INFO    ] 2026-06-13 21:28:10
[2026-06-13 21:28:10,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:11,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:11,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:11,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:11,195.195 INFO    ] time= 13/06/2026 21:28:11
[2026-06-13 21:28:11,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:11,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:11,330.330 INFO    ] No existing commands found in stream
[2026-06-13 21:28:16,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:28:16,343.343 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 21:28:18,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:28:18,419.419 INFO    ] Checking for system updates...
[2026-06-13 21:28:18,440.440 INFO    ] 200
[2026-06-13 21:28:18,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:18,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:18,473.473 INFO    ] No update needed
[2026-06-13 21:28:18,474.474 INFO    ] Checking for camera pi updates...
[2026-06-13 21:28:18,493.493 INFO    ] 200
[2026-06-13 21:28:18,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:18,522.522 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:28:18,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:28:18,556.556 INFO    ] No camera update needed
[2026-06-13 21:28:18,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:28:18,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:28:18,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:28:18,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:28:20,603.603 INFO    ] ================================================
[2026-06-13 21:28:20,618.618 INFO    ] Launching Daemon at Sat Jun 13 21:28:20 IST 2026
[2026-06-13 21:28:20,628.628 INFO    ] ================================================
[2026-06-13 21:28:20,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:20
[2026-06-13 21:28:21,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:21,418.418 INFO    ] Initializing speech engine...
[2026-06-13 21:28:21,422.422 INFO    ] 2026-06-13 21:28:21
[2026-06-13 21:28:21,650.650 INFO    ] 2026-06-13 21:28:21
[2026-06-13 21:28:21,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:21,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:21,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:22,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:22,027.027 INFO    ] time= 13/06/2026 21:28:22
[2026-06-13 21:28:22,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:22,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:22,205.205 INFO    ] No existing commands found in stream
[2026-06-13 21:28:27,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:28:27,217.217 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 21:28:29,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:28:29,353.353 INFO    ] Checking for system updates...
[2026-06-13 21:28:29,374.374 INFO    ] 200
[2026-06-13 21:28:29,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:29,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:29,407.407 INFO    ] No update needed
[2026-06-13 21:28:29,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 21:28:29,431.431 INFO    ] 200
[2026-06-13 21:28:29,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:29,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:28:29,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:29,493.493 INFO    ] No camera update needed
[2026-06-13 21:28:29,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:28:29,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:28:29,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:28:29,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:28:31,543.543 INFO    ] ================================================
[2026-06-13 21:28:31,561.561 INFO    ] Launching Daemon at Sat Jun 13 21:28:31 IST 2026
[2026-06-13 21:28:31,573.573 INFO    ] ================================================
[2026-06-13 21:28:31,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:31
[2026-06-13 21:28:32,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:32,453.453 INFO    ] Initializing speech engine...
[2026-06-13 21:28:32,463.463 INFO    ] 2026-06-13 21:28:32
[2026-06-13 21:28:32,675.675 INFO    ] 2026-06-13 21:28:32
[2026-06-13 21:28:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:32,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:33,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:33,092.092 INFO    ] time= 13/06/2026 21:28:33
[2026-06-13 21:28:33,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:33,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:33,198.198 INFO    ] No existing commands found in stream
[2026-06-13 21:28:38,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:28:38,212.212 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 21:28:41,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:28:41,540.540 INFO    ] Checking for system updates...
[2026-06-13 21:28:41,561.561 INFO    ] 200
[2026-06-13 21:28:41,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:41,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:41,597.597 INFO    ] No update needed
[2026-06-13 21:28:41,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 21:28:41,621.621 INFO    ] 200
[2026-06-13 21:28:41,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:41,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:28:41,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:41,696.696 INFO    ] No camera update needed
[2026-06-13 21:28:41,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:28:41,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:28:41,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:28:41,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:28:43,745.745 INFO    ] ================================================
[2026-06-13 21:28:43,761.761 INFO    ] Launching Daemon at Sat Jun 13 21:28:43 IST 2026
[2026-06-13 21:28:43,772.772 INFO    ] ================================================
[2026-06-13 21:28:44,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:44
[2026-06-13 21:28:44,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:45,124.124 INFO    ] Initializing speech engine...
[2026-06-13 21:28:45,129.129 INFO    ] 2026-06-13 21:28:45
[2026-06-13 21:28:45,339.339 INFO    ] 2026-06-13 21:28:45
[2026-06-13 21:28:45,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:45,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:45,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:45,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:45,763.763 INFO    ] time= 13/06/2026 21:28:45
[2026-06-13 21:28:45,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:45,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:45,864.864 INFO    ] No existing commands found in stream
[2026-06-13 21:28:50,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:28:50,878.878 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 21:28:52,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:28:52,929.929 INFO    ] Checking for system updates...
[2026-06-13 21:28:52,952.952 INFO    ] 200
[2026-06-13 21:28:52,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:52,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:52,985.985 INFO    ] No update needed
[2026-06-13 21:28:52,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 21:28:53,007.007 INFO    ] 200
[2026-06-13 21:28:53,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:28:53,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:28:53,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:28:53,070.070 INFO    ] No camera update needed
[2026-06-13 21:28:53,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:28:53,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:28:53,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:28:53,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:28:55,116.116 INFO    ] ================================================
[2026-06-13 21:28:55,132.132 INFO    ] Launching Daemon at Sat Jun 13 21:28:55 IST 2026
[2026-06-13 21:28:55,143.143 INFO    ] ================================================
[2026-06-13 21:28:55,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:28:55
[2026-06-13 21:28:55,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:28:55,931.931 INFO    ] Initializing speech engine...
[2026-06-13 21:28:55,935.935 INFO    ] 2026-06-13 21:28:55
[2026-06-13 21:28:56,169.169 INFO    ] 2026-06-13 21:28:56
[2026-06-13 21:28:56,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:28:56,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:28:56,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:28:56,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:28:56,595.595 INFO    ] time= 13/06/2026 21:28:56
[2026-06-13 21:28:56,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:28:56,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:28:56,729.729 INFO    ] No existing commands found in stream
[2026-06-13 21:29:01,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:01,743.743 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 21:29:03,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:29:03,934.934 INFO    ] Checking for system updates...
[2026-06-13 21:29:03,955.955 INFO    ] 200
[2026-06-13 21:29:03,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:03,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:03,991.991 INFO    ] No update needed
[2026-06-13 21:29:03,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:04,011.011 INFO    ] 200
[2026-06-13 21:29:04,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:04,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:04,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:04,073.073 INFO    ] No camera update needed
[2026-06-13 21:29:04,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:04,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:04,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:04,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:29:06,122.122 INFO    ] ================================================
[2026-06-13 21:29:06,139.139 INFO    ] Launching Daemon at Sat Jun 13 21:29:06 IST 2026
[2026-06-13 21:29:06,150.150 INFO    ] ================================================
[2026-06-13 21:29:06,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:29:06
[2026-06-13 21:29:06,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:29:06,984.984 INFO    ] Initializing speech engine...
[2026-06-13 21:29:06,989.989 INFO    ] 2026-06-13 21:29:06
[2026-06-13 21:29:07,193.193 INFO    ] 2026-06-13 21:29:07
[2026-06-13 21:29:07,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:29:07,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:29:07,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:29:07,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:29:07,587.587 INFO    ] time= 13/06/2026 21:29:07
[2026-06-13 21:29:07,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:29:07,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:29:07,706.706 INFO    ] No existing commands found in stream
[2026-06-13 21:29:12,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:12,720.720 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 21:29:14,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:29:14,209.209 INFO    ] Checking for system updates...
[2026-06-13 21:29:14,231.231 INFO    ] 200
[2026-06-13 21:29:14,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:14,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:29:14,264.264 INFO    ] No update needed
[2026-06-13 21:29:14,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:14,285.285 INFO    ] 200
[2026-06-13 21:29:14,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:14,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:14,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:29:14,349.349 INFO    ] No camera update needed
[2026-06-13 21:29:14,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:14,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:14,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:14,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:29:16,398.398 INFO    ] ================================================
[2026-06-13 21:29:16,414.414 INFO    ] Launching Daemon at Sat Jun 13 21:29:16 IST 2026
[2026-06-13 21:29:16,426.426 INFO    ] ================================================
[2026-06-13 21:29:16,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:29:16
[2026-06-13 21:29:17,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:29:17,276.276 INFO    ] Initializing speech engine...
[2026-06-13 21:29:17,287.287 INFO    ] 2026-06-13 21:29:17
[2026-06-13 21:29:17,496.496 INFO    ] 2026-06-13 21:29:17
[2026-06-13 21:29:17,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:29:17,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:29:17,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:29:17,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:29:17,912.912 INFO    ] time= 13/06/2026 21:29:17
[2026-06-13 21:29:17,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:29:17,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:29:18,014.014 INFO    ] No existing commands found in stream
[2026-06-13 21:29:23,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:23,026.026 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 21:29:26,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:29:26,204.204 INFO    ] Checking for system updates...
[2026-06-13 21:29:26,241.241 INFO    ] 200
[2026-06-13 21:29:26,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:26,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:29:26,307.307 INFO    ] No update needed
[2026-06-13 21:29:26,310.310 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:26,347.347 INFO    ] 200
[2026-06-13 21:29:26,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:26,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:26,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:29:26,542.542 INFO    ] No camera update needed
[2026-06-13 21:29:26,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:26,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:26,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:26,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:29:28,601.601 INFO    ] ================================================
[2026-06-13 21:29:28,617.617 INFO    ] Launching Daemon at Sat Jun 13 21:29:28 IST 2026
[2026-06-13 21:29:28,629.629 INFO    ] ================================================
[2026-06-13 21:29:29,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:29:29
[2026-06-13 21:29:29,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:29:29,639.639 INFO    ] Initializing speech engine...
[2026-06-13 21:29:29,642.642 INFO    ] 2026-06-13 21:29:29
[2026-06-13 21:29:29,835.835 INFO    ] 2026-06-13 21:29:29
[2026-06-13 21:29:29,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:29:30,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:29:30,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:29:30,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:29:30,252.252 INFO    ] time= 13/06/2026 21:29:30
[2026-06-13 21:29:30,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:29:30,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:29:30,433.433 INFO    ] No existing commands found in stream
[2026-06-13 21:29:35,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:35,446.446 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 21:29:38,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:29:38,225.225 INFO    ] Checking for system updates...
[2026-06-13 21:29:38,246.246 INFO    ] 200
[2026-06-13 21:29:38,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:38,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:38,279.279 INFO    ] No update needed
[2026-06-13 21:29:38,281.281 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:38,302.302 INFO    ] 200
[2026-06-13 21:29:38,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:38,327.327 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:38,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:38,368.368 INFO    ] No camera update needed
[2026-06-13 21:29:38,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:38,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:38,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:38,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:29:40,416.416 INFO    ] ================================================
[2026-06-13 21:29:40,432.432 INFO    ] Launching Daemon at Sat Jun 13 21:29:40 IST 2026
[2026-06-13 21:29:40,444.444 INFO    ] ================================================
[2026-06-13 21:29:40,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:29:40
[2026-06-13 21:29:41,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:29:41,240.240 INFO    ] Initializing speech engine...
[2026-06-13 21:29:41,250.250 INFO    ] 2026-06-13 21:29:41
[2026-06-13 21:29:41,442.442 INFO    ] 2026-06-13 21:29:41
[2026-06-13 21:29:41,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:29:41,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:29:41,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:29:41,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:29:41,890.890 INFO    ] time= 13/06/2026 21:29:41
[2026-06-13 21:29:41,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:29:41,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:29:41,989.989 INFO    ] No existing commands found in stream
[2026-06-13 21:29:47,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:47,003.003 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 21:29:50,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:29:50,081.081 INFO    ] Checking for system updates...
[2026-06-13 21:29:50,102.102 INFO    ] 200
[2026-06-13 21:29:50,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:50,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:50,138.138 INFO    ] No update needed
[2026-06-13 21:29:50,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:50,162.162 INFO    ] 200
[2026-06-13 21:29:50,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:50,187.187 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:50,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:50,224.224 INFO    ] No camera update needed
[2026-06-13 21:29:50,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:50,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:50,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:50,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:29:52,273.273 INFO    ] ================================================
[2026-06-13 21:29:52,289.289 INFO    ] Launching Daemon at Sat Jun 13 21:29:52 IST 2026
[2026-06-13 21:29:52,300.300 INFO    ] ================================================
[2026-06-13 21:29:52,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:29:52
[2026-06-13 21:29:53,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:29:53,173.173 INFO    ] Initializing speech engine...
[2026-06-13 21:29:53,179.179 INFO    ] 2026-06-13 21:29:53
[2026-06-13 21:29:53,389.389 INFO    ] 2026-06-13 21:29:53
[2026-06-13 21:29:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:29:53,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:29:53,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:29:53,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:29:53,794.794 INFO    ] time= 13/06/2026 21:29:53
[2026-06-13 21:29:53,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:29:53,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:29:53,905.905 INFO    ] No existing commands found in stream
[2026-06-13 21:29:58,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:29:58,918.918 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 21:29:59,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:29:59,444.444 INFO    ] Checking for system updates...
[2026-06-13 21:29:59,466.466 INFO    ] 200
[2026-06-13 21:29:59,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:59,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:59,500.500 INFO    ] No update needed
[2026-06-13 21:29:59,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 21:29:59,521.521 INFO    ] 200
[2026-06-13 21:29:59,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:29:59,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:29:59,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:29:59,587.587 INFO    ] No camera update needed
[2026-06-13 21:29:59,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:29:59,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:29:59,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:29:59,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:01,643.643 INFO    ] ================================================
[2026-06-13 21:30:01,690.690 INFO    ] Launching Daemon at Sat Jun 13 21:30:01 IST 2026
[2026-06-13 21:30:01,722.722 INFO    ] ================================================
[2026-06-13 21:30:02,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:02
[2026-06-13 21:30:03,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:30:03,295.295 INFO    ] Initializing speech engine...
[2026-06-13 21:30:03,303.303 INFO    ] 2026-06-13 21:30:03
[2026-06-13 21:30:03,612.612 INFO    ] 2026-06-13 21:30:03
[2026-06-13 21:30:03,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:30:03,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:30:03,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:30:03,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:30:04,033.033 INFO    ] time= 13/06/2026 21:30:03
[2026-06-13 21:30:04,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:30:04,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:30:04,177.177 INFO    ] No existing commands found in stream
[2026-06-13 21:30:09,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:30:09,192.192 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-13 21:30:13,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:30:13,482.482 INFO    ] Checking for system updates...
[2026-06-13 21:30:13,503.503 INFO    ] 200
[2026-06-13 21:30:13,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:13,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:30:13,536.536 INFO    ] No update needed
[2026-06-13 21:30:13,537.537 INFO    ] Checking for camera pi updates...
[2026-06-13 21:30:13,557.557 INFO    ] 200
[2026-06-13 21:30:13,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:13,584.584 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:30:13,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:30:13,622.622 INFO    ] No camera update needed
[2026-06-13 21:30:13,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:30:13,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:30:13,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:30:13,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:15,669.669 INFO    ] ================================================
[2026-06-13 21:30:15,684.684 INFO    ] Launching Daemon at Sat Jun 13 21:30:15 IST 2026
[2026-06-13 21:30:15,695.695 INFO    ] ================================================
[2026-06-13 21:30:16,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:16
[2026-06-13 21:30:16,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:30:16,509.509 INFO    ] Initializing speech engine...
[2026-06-13 21:30:16,520.520 INFO    ] 2026-06-13 21:30:16
[2026-06-13 21:30:16,730.730 INFO    ] 2026-06-13 21:30:16
[2026-06-13 21:30:16,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:30:17,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:30:17,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:30:17,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:30:17,208.208 INFO    ] time= 13/06/2026 21:30:17
[2026-06-13 21:30:17,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:30:17,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:30:17,388.388 INFO    ] No existing commands found in stream
[2026-06-13 21:30:22,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:30:22,402.402 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 21:30:23,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:30:23,998.998 INFO    ] Checking for system updates...
[2026-06-13 21:30:24,019.019 INFO    ] 200
[2026-06-13 21:30:24,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:24,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:30:24,053.053 INFO    ] No update needed
[2026-06-13 21:30:24,054.054 INFO    ] Checking for camera pi updates...
[2026-06-13 21:30:24,076.076 INFO    ] 200
[2026-06-13 21:30:24,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:24,102.102 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:30:24,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:30:24,146.146 INFO    ] No camera update needed
[2026-06-13 21:30:24,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:30:24,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:30:24,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:30:24,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:26,190.190 INFO    ] ================================================
[2026-06-13 21:30:26,200.200 INFO    ] Launching Daemon at Sat Jun 13 21:30:26 IST 2026
[2026-06-13 21:30:26,207.207 INFO    ] ================================================
[2026-06-13 21:30:26,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:26
[2026-06-13 21:30:26,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:30:26,981.981 INFO    ] Initializing speech engine...
[2026-06-13 21:30:26,986.986 INFO    ] 2026-06-13 21:30:26
[2026-06-13 21:30:27,190.190 INFO    ] 2026-06-13 21:30:27
[2026-06-13 21:30:27,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:30:27,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:30:27,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:30:27,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:30:27,588.588 INFO    ] time= 13/06/2026 21:30:27
[2026-06-13 21:30:27,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:30:27,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:30:27,709.709 INFO    ] No existing commands found in stream
[2026-06-13 21:30:32,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:30:32,722.722 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 21:30:35,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:30:35,895.895 INFO    ] Checking for system updates...
[2026-06-13 21:30:35,918.918 INFO    ] 200
[2026-06-13 21:30:35,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:35,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:30:35,954.954 INFO    ] No update needed
[2026-06-13 21:30:35,956.956 INFO    ] Checking for camera pi updates...
[2026-06-13 21:30:35,975.975 INFO    ] 200
[2026-06-13 21:30:35,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:36,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:30:36,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:30:36,038.038 INFO    ] No camera update needed
[2026-06-13 21:30:36,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:30:36,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:30:36,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:30:36,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:38,086.086 INFO    ] ================================================
[2026-06-13 21:30:38,101.101 INFO    ] Launching Daemon at Sat Jun 13 21:30:38 IST 2026
[2026-06-13 21:30:38,113.113 INFO    ] ================================================
[2026-06-13 21:30:38,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:38
[2026-06-13 21:30:38,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:30:38,888.888 INFO    ] Initializing speech engine...
[2026-06-13 21:30:38,897.897 INFO    ] 2026-06-13 21:30:38
[2026-06-13 21:30:39,103.103 INFO    ] 2026-06-13 21:30:39
[2026-06-13 21:30:39,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:30:39,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:30:39,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:30:39,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:30:39,486.486 INFO    ] time= 13/06/2026 21:30:39
[2026-06-13 21:30:39,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:30:39,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:30:39,620.620 INFO    ] No existing commands found in stream
[2026-06-13 21:30:44,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:30:44,647.647 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 21:30:47,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:30:47,119.119 INFO    ] Checking for system updates...
[2026-06-13 21:30:47,142.142 INFO    ] 200
[2026-06-13 21:30:47,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:47,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:30:47,178.178 INFO    ] No update needed
[2026-06-13 21:30:47,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 21:30:47,200.200 INFO    ] 200
[2026-06-13 21:30:47,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:47,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:30:47,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:30:47,272.272 INFO    ] No camera update needed
[2026-06-13 21:30:47,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:30:47,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:30:47,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:30:47,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:49,321.321 INFO    ] ================================================
[2026-06-13 21:30:49,337.337 INFO    ] Launching Daemon at Sat Jun 13 21:30:49 IST 2026
[2026-06-13 21:30:49,348.348 INFO    ] ================================================
[2026-06-13 21:30:49,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:49
[2026-06-13 21:30:50,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:30:50,211.211 INFO    ] Initializing speech engine...
[2026-06-13 21:30:50,215.215 INFO    ] 2026-06-13 21:30:50
[2026-06-13 21:30:50,426.426 INFO    ] 2026-06-13 21:30:50
[2026-06-13 21:30:50,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:30:50,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:30:50,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:30:50,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:30:50,842.842 INFO    ] time= 13/06/2026 21:30:50
[2026-06-13 21:30:50,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:30:50,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:30:50,947.947 INFO    ] No existing commands found in stream
[2026-06-13 21:30:55,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:30:55,963.963 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 21:30:57,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:30:57,174.174 INFO    ] Checking for system updates...
[2026-06-13 21:30:57,195.195 INFO    ] 200
[2026-06-13 21:30:57,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:57,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:30:57,229.229 INFO    ] No update needed
[2026-06-13 21:30:57,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 21:30:57,252.252 INFO    ] 200
[2026-06-13 21:30:57,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:30:57,281.281 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:30:57,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:30:57,325.325 INFO    ] No camera update needed
[2026-06-13 21:30:57,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:30:57,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:30:57,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:30:57,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:30:59,375.375 INFO    ] ================================================
[2026-06-13 21:30:59,390.390 INFO    ] Launching Daemon at Sat Jun 13 21:30:59 IST 2026
[2026-06-13 21:30:59,401.401 INFO    ] ================================================
[2026-06-13 21:30:59,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:30:59
[2026-06-13 21:31:00,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:00,210.210 INFO    ] Initializing speech engine...
[2026-06-13 21:31:00,215.215 INFO    ] 2026-06-13 21:31:00
[2026-06-13 21:31:00,421.421 INFO    ] 2026-06-13 21:31:00
[2026-06-13 21:31:00,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:00,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:00,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:00,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:00,838.838 INFO    ] time= 13/06/2026 21:31:00
[2026-06-13 21:31:00,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:00,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:00,945.945 INFO    ] No existing commands found in stream
[2026-06-13 21:31:05,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:31:05,957.957 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 21:31:09,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:31:09,104.104 INFO    ] Checking for system updates...
[2026-06-13 21:31:09,125.125 INFO    ] 200
[2026-06-13 21:31:09,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:09,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:09,159.159 INFO    ] No update needed
[2026-06-13 21:31:09,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 21:31:09,179.179 INFO    ] 200
[2026-06-13 21:31:09,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:09,207.207 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:31:09,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:09,246.246 INFO    ] No camera update needed
[2026-06-13 21:31:09,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:31:09,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:31:09,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:31:09,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:31:11,294.294 INFO    ] ================================================
[2026-06-13 21:31:11,309.309 INFO    ] Launching Daemon at Sat Jun 13 21:31:11 IST 2026
[2026-06-13 21:31:11,320.320 INFO    ] ================================================
[2026-06-13 21:31:11,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:31:11
[2026-06-13 21:31:11,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:12,099.099 INFO    ] Initializing speech engine...
[2026-06-13 21:31:12,104.104 INFO    ] 2026-06-13 21:31:12
[2026-06-13 21:31:12,310.310 INFO    ] 2026-06-13 21:31:12
[2026-06-13 21:31:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:12,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:12,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:12,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:12,713.713 INFO    ] time= 13/06/2026 21:31:12
[2026-06-13 21:31:12,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:12,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:12,830.830 INFO    ] No existing commands found in stream
[2026-06-13 21:31:17,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:31:17,845.845 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 21:31:20,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:31:20,693.693 INFO    ] Checking for system updates...
[2026-06-13 21:31:20,714.714 INFO    ] 200
[2026-06-13 21:31:20,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:20,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:20,747.747 INFO    ] No update needed
[2026-06-13 21:31:20,748.748 INFO    ] Checking for camera pi updates...
[2026-06-13 21:31:20,768.768 INFO    ] 200
[2026-06-13 21:31:20,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:20,792.792 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:31:20,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:20,838.838 INFO    ] No camera update needed
[2026-06-13 21:31:20,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:31:20,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:31:20,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:31:20,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:31:22,887.887 INFO    ] ================================================
[2026-06-13 21:31:22,902.902 INFO    ] Launching Daemon at Sat Jun 13 21:31:22 IST 2026
[2026-06-13 21:31:22,913.913 INFO    ] ================================================
[2026-06-13 21:31:23,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:31:23
[2026-06-13 21:31:23,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:23,733.733 INFO    ] Initializing speech engine...
[2026-06-13 21:31:23,738.738 INFO    ] 2026-06-13 21:31:23
[2026-06-13 21:31:23,965.965 INFO    ] 2026-06-13 21:31:23
[2026-06-13 21:31:23,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:24,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:24,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:24,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:24,363.363 INFO    ] time= 13/06/2026 21:31:24
[2026-06-13 21:31:24,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:24,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:24,471.471 INFO    ] No existing commands found in stream
[2026-06-13 21:31:29,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:31:29,495.495 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 21:31:31,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:31:31,250.250 INFO    ] Checking for system updates...
[2026-06-13 21:31:31,274.274 INFO    ] 200
[2026-06-13 21:31:31,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:31,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:31,313.313 INFO    ] No update needed
[2026-06-13 21:31:31,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 21:31:31,338.338 INFO    ] 200
[2026-06-13 21:31:31,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:31,365.365 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:31:31,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:31,498.498 INFO    ] No camera update needed
[2026-06-13 21:31:31,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:31:31,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:31:31,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:31:31,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:31:33,547.547 INFO    ] ================================================
[2026-06-13 21:31:33,562.562 INFO    ] Launching Daemon at Sat Jun 13 21:31:33 IST 2026
[2026-06-13 21:31:33,573.573 INFO    ] ================================================
[2026-06-13 21:31:33,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:31:33
[2026-06-13 21:31:34,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:34,437.437 INFO    ] Initializing speech engine...
[2026-06-13 21:31:34,443.443 INFO    ] 2026-06-13 21:31:34
[2026-06-13 21:31:34,652.652 INFO    ] 2026-06-13 21:31:34
[2026-06-13 21:31:34,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:34,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:34,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:35,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:35,077.077 INFO    ] time= 13/06/2026 21:31:35
[2026-06-13 21:31:35,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:35,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:35,174.174 INFO    ] No existing commands found in stream
[2026-06-13 21:31:40,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:31:40,189.189 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-13 21:31:42,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:31:42,051.051 INFO    ] Checking for system updates...
[2026-06-13 21:31:42,073.073 INFO    ] 200
[2026-06-13 21:31:42,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:42,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:42,110.110 INFO    ] No update needed
[2026-06-13 21:31:42,112.112 INFO    ] Checking for camera pi updates...
[2026-06-13 21:31:42,132.132 INFO    ] 200
[2026-06-13 21:31:42,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:42,157.157 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:31:42,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:42,194.194 INFO    ] No camera update needed
[2026-06-13 21:31:42,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:31:42,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:31:42,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:31:42,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:31:44,244.244 INFO    ] ================================================
[2026-06-13 21:31:44,260.260 INFO    ] Launching Daemon at Sat Jun 13 21:31:44 IST 2026
[2026-06-13 21:31:44,272.272 INFO    ] ================================================
[2026-06-13 21:31:44,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:31:44
[2026-06-13 21:31:44,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:45,072.072 INFO    ] Initializing speech engine...
[2026-06-13 21:31:45,077.077 INFO    ] 2026-06-13 21:31:45
[2026-06-13 21:31:45,285.285 INFO    ] 2026-06-13 21:31:45
[2026-06-13 21:31:45,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:45,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:45,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:45,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:45,700.700 INFO    ] time= 13/06/2026 21:31:45
[2026-06-13 21:31:45,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:45,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:45,803.803 INFO    ] No existing commands found in stream
[2026-06-13 21:31:50,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:31:50,815.815 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 21:31:54,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:31:54,337.337 INFO    ] Checking for system updates...
[2026-06-13 21:31:54,359.359 INFO    ] 200
[2026-06-13 21:31:54,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:54,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:31:54,392.392 INFO    ] No update needed
[2026-06-13 21:31:54,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 21:31:54,413.413 INFO    ] 200
[2026-06-13 21:31:54,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:31:54,438.438 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:31:54,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:31:54,479.479 INFO    ] No camera update needed
[2026-06-13 21:31:54,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:31:54,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:31:54,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:31:54,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:31:56,528.528 INFO    ] ================================================
[2026-06-13 21:31:56,544.544 INFO    ] Launching Daemon at Sat Jun 13 21:31:56 IST 2026
[2026-06-13 21:31:56,555.555 INFO    ] ================================================
[2026-06-13 21:31:56,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:31:56
[2026-06-13 21:31:57,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:31:57,395.395 INFO    ] Initializing speech engine...
[2026-06-13 21:31:57,399.399 INFO    ] 2026-06-13 21:31:57
[2026-06-13 21:31:57,605.605 INFO    ] 2026-06-13 21:31:57
[2026-06-13 21:31:57,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:31:57,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:31:57,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:31:58,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:31:58,092.092 INFO    ] time= 13/06/2026 21:31:58
[2026-06-13 21:31:58,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:31:58,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:31:58,314.314 INFO    ] No existing commands found in stream
[2026-06-13 21:32:03,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:03,353.353 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 21:32:04,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:32:04,473.473 INFO    ] Checking for system updates...
[2026-06-13 21:32:04,513.513 INFO    ] 200
[2026-06-13 21:32:04,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:04,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:04,584.584 INFO    ] No update needed
[2026-06-13 21:32:04,586.586 INFO    ] Checking for camera pi updates...
[2026-06-13 21:32:04,622.622 INFO    ] 200
[2026-06-13 21:32:04,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:04,667.667 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:32:04,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:04,719.719 INFO    ] No camera update needed
[2026-06-13 21:32:04,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:32:04,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:32:04,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:32:04,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:32:06,772.772 INFO    ] ================================================
[2026-06-13 21:32:06,788.788 INFO    ] Launching Daemon at Sat Jun 13 21:32:06 IST 2026
[2026-06-13 21:32:06,799.799 INFO    ] ================================================
[2026-06-13 21:32:07,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:32:07
[2026-06-13 21:32:07,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:32:07,597.597 INFO    ] Initializing speech engine...
[2026-06-13 21:32:07,607.607 INFO    ] 2026-06-13 21:32:07
[2026-06-13 21:32:07,820.820 INFO    ] 2026-06-13 21:32:07
[2026-06-13 21:32:07,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:32:07,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:32:08,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:32:08,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:32:08,255.255 INFO    ] time= 13/06/2026 21:32:08
[2026-06-13 21:32:08,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:32:08,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:32:08,430.430 INFO    ] No existing commands found in stream
[2026-06-13 21:32:13,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:13,442.442 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 21:32:14,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:32:14,623.623 INFO    ] Checking for system updates...
[2026-06-13 21:32:14,645.645 INFO    ] 200
[2026-06-13 21:32:14,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:14,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:32:14,678.678 INFO    ] No update needed
[2026-06-13 21:32:14,679.679 INFO    ] Checking for camera pi updates...
[2026-06-13 21:32:14,699.699 INFO    ] 200
[2026-06-13 21:32:14,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:14,725.725 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:32:14,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:32:14,769.769 INFO    ] No camera update needed
[2026-06-13 21:32:14,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:32:14,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:32:14,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:32:14,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:32:16,817.817 INFO    ] ================================================
[2026-06-13 21:32:16,833.833 INFO    ] Launching Daemon at Sat Jun 13 21:32:16 IST 2026
[2026-06-13 21:32:16,844.844 INFO    ] ================================================
[2026-06-13 21:32:17,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:32:17
[2026-06-13 21:32:17,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:32:17,686.686 INFO    ] Initializing speech engine...
[2026-06-13 21:32:17,692.692 INFO    ] 2026-06-13 21:32:17
[2026-06-13 21:32:17,900.900 INFO    ] 2026-06-13 21:32:17
[2026-06-13 21:32:17,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:32:18,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:32:18,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:32:18,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:32:18,294.294 INFO    ] time= 13/06/2026 21:32:18
[2026-06-13 21:32:18,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:32:18,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:32:18,420.420 INFO    ] No existing commands found in stream
[2026-06-13 21:32:23,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:23,433.433 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 21:32:27,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:32:27,735.735 INFO    ] Checking for system updates...
[2026-06-13 21:32:27,756.756 INFO    ] 200
[2026-06-13 21:32:27,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:27,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:27,790.790 INFO    ] No update needed
[2026-06-13 21:32:27,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 21:32:27,812.812 INFO    ] 200
[2026-06-13 21:32:27,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:27,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:32:27,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:27,875.875 INFO    ] No camera update needed
[2026-06-13 21:32:27,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:32:27,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:32:27,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:32:27,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:32:29,924.924 INFO    ] ================================================
[2026-06-13 21:32:29,939.939 INFO    ] Launching Daemon at Sat Jun 13 21:32:29 IST 2026
[2026-06-13 21:32:29,949.949 INFO    ] ================================================
[2026-06-13 21:32:30,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:32:30
[2026-06-13 21:32:30,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:32:30,751.751 INFO    ] Initializing speech engine...
[2026-06-13 21:32:30,755.755 INFO    ] 2026-06-13 21:32:30
[2026-06-13 21:32:30,973.973 INFO    ] 2026-06-13 21:32:30
[2026-06-13 21:32:31,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:32:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:32:31,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:32:31,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:32:31,381.381 INFO    ] time= 13/06/2026 21:32:31
[2026-06-13 21:32:31,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:32:31,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:32:31,600.600 INFO    ] No existing commands found in stream
[2026-06-13 21:32:36,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:36,631.631 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 21:32:38,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:32:38,658.658 INFO    ] Checking for system updates...
[2026-06-13 21:32:38,679.679 INFO    ] 200
[2026-06-13 21:32:38,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:38,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:38,712.712 INFO    ] No update needed
[2026-06-13 21:32:38,714.714 INFO    ] Checking for camera pi updates...
[2026-06-13 21:32:38,733.733 INFO    ] 200
[2026-06-13 21:32:38,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:38,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:32:38,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:38,805.805 INFO    ] No camera update needed
[2026-06-13 21:32:38,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:32:38,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:32:38,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:32:38,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:32:40,852.852 INFO    ] ================================================
[2026-06-13 21:32:40,867.867 INFO    ] Launching Daemon at Sat Jun 13 21:32:40 IST 2026
[2026-06-13 21:32:40,878.878 INFO    ] ================================================
[2026-06-13 21:32:41,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:32:41
[2026-06-13 21:32:41,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:32:41,681.681 INFO    ] Initializing speech engine...
[2026-06-13 21:32:41,686.686 INFO    ] 2026-06-13 21:32:41
[2026-06-13 21:32:41,891.891 INFO    ] 2026-06-13 21:32:41
[2026-06-13 21:32:41,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:32:42,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:32:42,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:32:42,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:32:42,301.301 INFO    ] time= 13/06/2026 21:32:42
[2026-06-13 21:32:42,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:32:42,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:32:42,404.404 INFO    ] No existing commands found in stream
[2026-06-13 21:32:47,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:47,413.413 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 21:32:48,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:32:48,658.658 INFO    ] Checking for system updates...
[2026-06-13 21:32:48,679.679 INFO    ] 200
[2026-06-13 21:32:48,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:48,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:32:48,714.714 INFO    ] No update needed
[2026-06-13 21:32:48,716.716 INFO    ] Checking for camera pi updates...
[2026-06-13 21:32:48,740.740 INFO    ] 200
[2026-06-13 21:32:48,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:32:48,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:32:48,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:32:48,808.808 INFO    ] No camera update needed
[2026-06-13 21:32:48,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:32:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:32:48,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:32:48,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:32:50,856.856 INFO    ] ================================================
[2026-06-13 21:32:50,872.872 INFO    ] Launching Daemon at Sat Jun 13 21:32:50 IST 2026
[2026-06-13 21:32:50,883.883 INFO    ] ================================================
[2026-06-13 21:32:51,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:32:51
[2026-06-13 21:32:51,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:32:51,697.697 INFO    ] Initializing speech engine...
[2026-06-13 21:32:51,701.701 INFO    ] 2026-06-13 21:32:51
[2026-06-13 21:32:51,907.907 INFO    ] 2026-06-13 21:32:51
[2026-06-13 21:32:51,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:32:52,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:32:52,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:32:52,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:32:52,323.323 INFO    ] time= 13/06/2026 21:32:52
[2026-06-13 21:32:52,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:32:52,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:32:52,428.428 INFO    ] No existing commands found in stream
[2026-06-13 21:32:57,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:32:57,442.442 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-13 21:33:01,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:33:01,339.339 INFO    ] Checking for system updates...
[2026-06-13 21:33:01,360.360 INFO    ] 200
[2026-06-13 21:33:01,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:01,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:01,395.395 INFO    ] No update needed
[2026-06-13 21:33:01,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:01,419.419 INFO    ] 200
[2026-06-13 21:33:01,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:01,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:01,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:01,489.489 INFO    ] No camera update needed
[2026-06-13 21:33:01,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:01,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:01,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:01,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:03,543.543 INFO    ] ================================================
[2026-06-13 21:33:03,559.559 INFO    ] Launching Daemon at Sat Jun 13 21:33:03 IST 2026
[2026-06-13 21:33:03,570.570 INFO    ] ================================================
[2026-06-13 21:33:03,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:03
[2026-06-13 21:33:04,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:33:04,436.436 INFO    ] Initializing speech engine...
[2026-06-13 21:33:04,442.442 INFO    ] 2026-06-13 21:33:04
[2026-06-13 21:33:04,648.648 INFO    ] 2026-06-13 21:33:04
[2026-06-13 21:33:04,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:33:04,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:33:04,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:33:04,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:33:05,049.049 INFO    ] time= 13/06/2026 21:33:05
[2026-06-13 21:33:05,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:33:05,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:33:05,173.173 INFO    ] No existing commands found in stream
[2026-06-13 21:33:10,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:33:10,187.187 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 21:33:11,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:33:11,582.582 INFO    ] Checking for system updates...
[2026-06-13 21:33:11,603.603 INFO    ] 200
[2026-06-13 21:33:11,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:11,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:11,636.636 INFO    ] No update needed
[2026-06-13 21:33:11,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:11,658.658 INFO    ] 200
[2026-06-13 21:33:11,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:11,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:11,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:33:11,727.727 INFO    ] No camera update needed
[2026-06-13 21:33:11,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:11,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:11,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:11,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:13,777.777 INFO    ] ================================================
[2026-06-13 21:33:13,793.793 INFO    ] Launching Daemon at Sat Jun 13 21:33:13 IST 2026
[2026-06-13 21:33:13,804.804 INFO    ] ================================================
[2026-06-13 21:33:14,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:14
[2026-06-13 21:33:14,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:33:14,656.656 INFO    ] Initializing speech engine...
[2026-06-13 21:33:14,661.661 INFO    ] 2026-06-13 21:33:14
[2026-06-13 21:33:14,872.872 INFO    ] 2026-06-13 21:33:14
[2026-06-13 21:33:14,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:33:15,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:33:15,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:33:15,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:33:15,270.270 INFO    ] time= 13/06/2026 21:33:15
[2026-06-13 21:33:15,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:33:15,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:33:15,392.392 INFO    ] No existing commands found in stream
[2026-06-13 21:33:20,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:33:20,410.410 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 21:33:21,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:33:21,807.807 INFO    ] Checking for system updates...
[2026-06-13 21:33:21,842.842 INFO    ] 200
[2026-06-13 21:33:21,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:21,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:21,877.877 INFO    ] No update needed
[2026-06-13 21:33:21,879.879 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:21,902.902 INFO    ] 200
[2026-06-13 21:33:21,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:21,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:21,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:33:21,966.966 INFO    ] No camera update needed
[2026-06-13 21:33:21,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:21,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:21,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:21,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:24,012.012 INFO    ] ================================================
[2026-06-13 21:33:24,028.028 INFO    ] Launching Daemon at Sat Jun 13 21:33:24 IST 2026
[2026-06-13 21:33:24,039.039 INFO    ] ================================================
[2026-06-13 21:33:24,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:24
[2026-06-13 21:33:24,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:33:24,875.875 INFO    ] Initializing speech engine...
[2026-06-13 21:33:24,880.880 INFO    ] 2026-06-13 21:33:24
[2026-06-13 21:33:25,085.085 INFO    ] 2026-06-13 21:33:25
[2026-06-13 21:33:25,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:33:25,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:33:25,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:33:25,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:33:25,499.499 INFO    ] time= 13/06/2026 21:33:25
[2026-06-13 21:33:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:33:25,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:33:25,605.605 INFO    ] No existing commands found in stream
[2026-06-13 21:33:30,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:33:30,619.619 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 21:33:34,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:33:34,551.551 INFO    ] Checking for system updates...
[2026-06-13 21:33:34,573.573 INFO    ] 200
[2026-06-13 21:33:34,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:34,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:34,606.606 INFO    ] No update needed
[2026-06-13 21:33:34,607.607 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:34,627.627 INFO    ] 200
[2026-06-13 21:33:34,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:34,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:34,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:34,796.796 INFO    ] No camera update needed
[2026-06-13 21:33:34,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:34,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:34,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:34,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:36,843.843 INFO    ] ================================================
[2026-06-13 21:33:36,860.860 INFO    ] Launching Daemon at Sat Jun 13 21:33:36 IST 2026
[2026-06-13 21:33:36,870.870 INFO    ] ================================================
[2026-06-13 21:33:37,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:37
[2026-06-13 21:33:37,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:33:37,677.677 INFO    ] Initializing speech engine...
[2026-06-13 21:33:37,682.682 INFO    ] 2026-06-13 21:33:37
[2026-06-13 21:33:37,890.890 INFO    ] 2026-06-13 21:33:37
[2026-06-13 21:33:37,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:33:38,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:33:38,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:33:38,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:33:38,294.294 INFO    ] time= 13/06/2026 21:33:38
[2026-06-13 21:33:38,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:33:38,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:33:38,405.405 INFO    ] No existing commands found in stream
[2026-06-13 21:33:43,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:33:43,428.428 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 21:33:44,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:33:44,389.389 INFO    ] Checking for system updates...
[2026-06-13 21:33:44,410.410 INFO    ] 200
[2026-06-13 21:33:44,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:44,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:44,444.444 INFO    ] No update needed
[2026-06-13 21:33:44,446.446 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:44,469.469 INFO    ] 200
[2026-06-13 21:33:44,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:44,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:44,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:33:44,531.531 INFO    ] No camera update needed
[2026-06-13 21:33:44,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:44,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:44,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:46,580.580 INFO    ] ================================================
[2026-06-13 21:33:46,596.596 INFO    ] Launching Daemon at Sat Jun 13 21:33:46 IST 2026
[2026-06-13 21:33:46,607.607 INFO    ] ================================================
[2026-06-13 21:33:46,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:46
[2026-06-13 21:33:47,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:33:47,382.382 INFO    ] Initializing speech engine...
[2026-06-13 21:33:47,390.390 INFO    ] 2026-06-13 21:33:47
[2026-06-13 21:33:47,603.603 INFO    ] 2026-06-13 21:33:47
[2026-06-13 21:33:47,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:33:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:33:47,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:33:47,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:33:47,996.996 INFO    ] time= 13/06/2026 21:33:47
[2026-06-13 21:33:48,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:33:48,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:33:48,123.123 INFO    ] No existing commands found in stream
[2026-06-13 21:33:53,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:33:53,135.135 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 21:33:57,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:33:57,284.284 INFO    ] Checking for system updates...
[2026-06-13 21:33:57,305.305 INFO    ] 200
[2026-06-13 21:33:57,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:57,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:33:57,341.341 INFO    ] No update needed
[2026-06-13 21:33:57,342.342 INFO    ] Checking for camera pi updates...
[2026-06-13 21:33:57,365.365 INFO    ] 200
[2026-06-13 21:33:57,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:33:57,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:33:57,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:33:57,441.441 INFO    ] No camera update needed
[2026-06-13 21:33:57,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:33:57,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:33:57,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:33:57,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:33:59,493.493 INFO    ] ================================================
[2026-06-13 21:33:59,508.508 INFO    ] Launching Daemon at Sat Jun 13 21:33:59 IST 2026
[2026-06-13 21:33:59,520.520 INFO    ] ================================================
[2026-06-13 21:33:59,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:33:59
[2026-06-13 21:34:00,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:00,361.361 INFO    ] Initializing speech engine...
[2026-06-13 21:34:00,367.367 INFO    ] 2026-06-13 21:34:00
[2026-06-13 21:34:00,576.576 INFO    ] 2026-06-13 21:34:00
[2026-06-13 21:34:00,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:00,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:00,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:00,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:00,987.987 INFO    ] time= 13/06/2026 21:34:00
[2026-06-13 21:34:01,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:01,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:01,106.106 INFO    ] No existing commands found in stream
[2026-06-13 21:34:06,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:06,121.121 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 21:34:08,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:34:08,187.187 INFO    ] Checking for system updates...
[2026-06-13 21:34:08,208.208 INFO    ] 200
[2026-06-13 21:34:08,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:08,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:08,244.244 INFO    ] No update needed
[2026-06-13 21:34:08,245.245 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:08,267.267 INFO    ] 200
[2026-06-13 21:34:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:08,293.293 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:08,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:08,332.332 INFO    ] No camera update needed
[2026-06-13 21:34:08,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:08,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:08,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:08,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:34:10,379.379 INFO    ] ================================================
[2026-06-13 21:34:10,394.394 INFO    ] Launching Daemon at Sat Jun 13 21:34:10 IST 2026
[2026-06-13 21:34:10,405.405 INFO    ] ================================================
[2026-06-13 21:34:10,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:34:10
[2026-06-13 21:34:11,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:11,221.221 INFO    ] Initializing speech engine...
[2026-06-13 21:34:11,230.230 INFO    ] 2026-06-13 21:34:11
[2026-06-13 21:34:11,471.471 INFO    ] 2026-06-13 21:34:11
[2026-06-13 21:34:11,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:11,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:11,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:11,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:11,878.878 INFO    ] time= 13/06/2026 21:34:11
[2026-06-13 21:34:11,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:11,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:12,058.058 INFO    ] No existing commands found in stream
[2026-06-13 21:34:17,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:17,085.085 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 21:34:17,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:34:17,480.480 INFO    ] Checking for system updates...
[2026-06-13 21:34:17,501.501 INFO    ] 200
[2026-06-13 21:34:17,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:17,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:17,537.537 INFO    ] No update needed
[2026-06-13 21:34:17,539.539 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:17,561.561 INFO    ] 200
[2026-06-13 21:34:17,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:17,586.586 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:17,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:17,630.630 INFO    ] No camera update needed
[2026-06-13 21:34:17,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:17,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:17,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:17,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:34:19,681.681 INFO    ] ================================================
[2026-06-13 21:34:19,696.696 INFO    ] Launching Daemon at Sat Jun 13 21:34:19 IST 2026
[2026-06-13 21:34:19,707.707 INFO    ] ================================================
[2026-06-13 21:34:20,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:34:20
[2026-06-13 21:34:20,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:20,559.559 INFO    ] Initializing speech engine...
[2026-06-13 21:34:20,570.570 INFO    ] 2026-06-13 21:34:20
[2026-06-13 21:34:20,785.785 INFO    ] 2026-06-13 21:34:20
[2026-06-13 21:34:20,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:21,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:21,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:21,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:21,194.194 INFO    ] time= 13/06/2026 21:34:21
[2026-06-13 21:34:21,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:21,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:21,334.334 INFO    ] No existing commands found in stream
[2026-06-13 21:34:26,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:26,347.347 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 21:34:27,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:34:27,300.300 INFO    ] Checking for system updates...
[2026-06-13 21:34:27,322.322 INFO    ] 200
[2026-06-13 21:34:27,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:27,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:27,360.360 INFO    ] No update needed
[2026-06-13 21:34:27,361.361 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:27,388.388 INFO    ] 200
[2026-06-13 21:34:27,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:27,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:27,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:27,456.456 INFO    ] No camera update needed
[2026-06-13 21:34:27,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:27,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:27,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:27,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:34:29,503.503 INFO    ] ================================================
[2026-06-13 21:34:29,519.519 INFO    ] Launching Daemon at Sat Jun 13 21:34:29 IST 2026
[2026-06-13 21:34:29,530.530 INFO    ] ================================================
[2026-06-13 21:34:29,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:34:29
[2026-06-13 21:34:30,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:30,339.339 INFO    ] Initializing speech engine...
[2026-06-13 21:34:30,352.352 INFO    ] 2026-06-13 21:34:30
[2026-06-13 21:34:30,570.570 INFO    ] 2026-06-13 21:34:30
[2026-06-13 21:34:30,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:30,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:30,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:30,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:30,969.969 INFO    ] time= 13/06/2026 21:34:30
[2026-06-13 21:34:31,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:31,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:31,118.118 INFO    ] No existing commands found in stream
[2026-06-13 21:34:36,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:36,132.132 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 21:34:37,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:34:37,022.022 INFO    ] Checking for system updates...
[2026-06-13 21:34:37,043.043 INFO    ] 200
[2026-06-13 21:34:37,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:37,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:37,076.076 INFO    ] No update needed
[2026-06-13 21:34:37,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:37,100.100 INFO    ] 200
[2026-06-13 21:34:37,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:37,125.125 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:37,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:34:37,168.168 INFO    ] No camera update needed
[2026-06-13 21:34:37,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:37,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:37,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:37,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:34:39,216.216 INFO    ] ================================================
[2026-06-13 21:34:39,231.231 INFO    ] Launching Daemon at Sat Jun 13 21:34:39 IST 2026
[2026-06-13 21:34:39,242.242 INFO    ] ================================================
[2026-06-13 21:34:39,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:34:39
[2026-06-13 21:34:39,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:40,093.093 INFO    ] Initializing speech engine...
[2026-06-13 21:34:40,094.094 INFO    ] 2026-06-13 21:34:40
[2026-06-13 21:34:40,309.309 INFO    ] 2026-06-13 21:34:40
[2026-06-13 21:34:40,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:40,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:40,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:40,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:40,730.730 INFO    ] time= 13/06/2026 21:34:40
[2026-06-13 21:34:40,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:40,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:40,840.840 INFO    ] No existing commands found in stream
[2026-06-13 21:34:45,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:45,858.858 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-13 21:34:47,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:34:47,368.368 INFO    ] Checking for system updates...
[2026-06-13 21:34:47,390.390 INFO    ] 200
[2026-06-13 21:34:47,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:47,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:34:47,427.427 INFO    ] No update needed
[2026-06-13 21:34:47,429.429 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:47,457.457 INFO    ] 200
[2026-06-13 21:34:47,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:47,484.484 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:47,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:34:47,526.526 INFO    ] No camera update needed
[2026-06-13 21:34:47,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:47,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:47,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:47,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:34:49,575.575 INFO    ] ================================================
[2026-06-13 21:34:49,590.590 INFO    ] Launching Daemon at Sat Jun 13 21:34:49 IST 2026
[2026-06-13 21:34:49,601.601 INFO    ] ================================================
[2026-06-13 21:34:49,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:34:49
[2026-06-13 21:34:50,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:34:50,426.426 INFO    ] Initializing speech engine...
[2026-06-13 21:34:50,431.431 INFO    ] 2026-06-13 21:34:50
[2026-06-13 21:34:50,637.637 INFO    ] 2026-06-13 21:34:50
[2026-06-13 21:34:50,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:34:50,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:34:50,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:34:50,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:34:51,057.057 INFO    ] time= 13/06/2026 21:34:51
[2026-06-13 21:34:51,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:34:51,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:34:51,153.153 INFO    ] No existing commands found in stream
[2026-06-13 21:34:56,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:34:56,167.167 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 21:34:58,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:34:58,036.036 INFO    ] Checking for system updates...
[2026-06-13 21:34:58,057.057 INFO    ] 200
[2026-06-13 21:34:58,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:58,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:34:58,091.091 INFO    ] No update needed
[2026-06-13 21:34:58,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 21:34:58,114.114 INFO    ] 200
[2026-06-13 21:34:58,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:34:58,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:34:58,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:34:58,181.181 INFO    ] No camera update needed
[2026-06-13 21:34:58,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:34:58,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:34:58,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:34:58,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:00,229.229 INFO    ] ================================================
[2026-06-13 21:35:00,245.245 INFO    ] Launching Daemon at Sat Jun 13 21:35:00 IST 2026
[2026-06-13 21:35:00,256.256 INFO    ] ================================================
[2026-06-13 21:35:00,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:00
[2026-06-13 21:35:00,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:01,056.056 INFO    ] Initializing speech engine...
[2026-06-13 21:35:01,068.068 INFO    ] 2026-06-13 21:35:01
[2026-06-13 21:35:01,285.285 INFO    ] 2026-06-13 21:35:01
[2026-06-13 21:35:01,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:01,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:01,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:01,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:01,711.711 INFO    ] time= 13/06/2026 21:35:01
[2026-06-13 21:35:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:01,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:01,818.818 INFO    ] No existing commands found in stream
[2026-06-13 21:35:06,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:35:06,830.830 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 21:35:08,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:35:08,844.844 INFO    ] Checking for system updates...
[2026-06-13 21:35:08,867.867 INFO    ] 200
[2026-06-13 21:35:08,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:08,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:08,906.906 INFO    ] No update needed
[2026-06-13 21:35:08,908.908 INFO    ] Checking for camera pi updates...
[2026-06-13 21:35:08,928.928 INFO    ] 200
[2026-06-13 21:35:08,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:08,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:35:08,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:08,991.991 INFO    ] No camera update needed
[2026-06-13 21:35:08,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:35:08,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:35:08,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:35:08,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:11,040.040 INFO    ] ================================================
[2026-06-13 21:35:11,055.055 INFO    ] Launching Daemon at Sat Jun 13 21:35:11 IST 2026
[2026-06-13 21:35:11,066.066 INFO    ] ================================================
[2026-06-13 21:35:11,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:11
[2026-06-13 21:35:11,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:11,875.875 INFO    ] Initializing speech engine...
[2026-06-13 21:35:11,882.882 INFO    ] 2026-06-13 21:35:11
[2026-06-13 21:35:12,104.104 INFO    ] 2026-06-13 21:35:12
[2026-06-13 21:35:12,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:12,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:12,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:12,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:12,536.536 INFO    ] time= 13/06/2026 21:35:12
[2026-06-13 21:35:12,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:12,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:12,652.652 INFO    ] No existing commands found in stream
[2026-06-13 21:35:17,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:35:17,663.663 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 21:35:20,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:35:20,187.187 INFO    ] Checking for system updates...
[2026-06-13 21:35:20,210.210 INFO    ] 200
[2026-06-13 21:35:20,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:20,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:20,249.249 INFO    ] No update needed
[2026-06-13 21:35:20,251.251 INFO    ] Checking for camera pi updates...
[2026-06-13 21:35:20,271.271 INFO    ] 200
[2026-06-13 21:35:20,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:20,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:35:20,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:20,337.337 INFO    ] No camera update needed
[2026-06-13 21:35:20,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:35:20,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:35:20,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:35:20,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:22,388.388 INFO    ] ================================================
[2026-06-13 21:35:22,403.403 INFO    ] Launching Daemon at Sat Jun 13 21:35:22 IST 2026
[2026-06-13 21:35:22,414.414 INFO    ] ================================================
[2026-06-13 21:35:22,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:22
[2026-06-13 21:35:23,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:23,201.201 INFO    ] Initializing speech engine...
[2026-06-13 21:35:23,214.214 INFO    ] 2026-06-13 21:35:23
[2026-06-13 21:35:23,433.433 INFO    ] 2026-06-13 21:35:23
[2026-06-13 21:35:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:23,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:23,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:23,812.812 INFO    ] time= 13/06/2026 21:35:23
[2026-06-13 21:35:23,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:23,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:23,984.984 INFO    ] No existing commands found in stream
[2026-06-13 21:35:28,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:35:28,998.998 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 21:35:30,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:35:30,150.150 INFO    ] Checking for system updates...
[2026-06-13 21:35:30,170.170 INFO    ] 200
[2026-06-13 21:35:30,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:30,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:30,203.203 INFO    ] No update needed
[2026-06-13 21:35:30,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 21:35:30,226.226 INFO    ] 200
[2026-06-13 21:35:30,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:30,251.251 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:35:30,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:30,291.291 INFO    ] No camera update needed
[2026-06-13 21:35:30,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:35:30,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:35:30,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:35:30,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:32,331.331 INFO    ] ================================================
[2026-06-13 21:35:32,341.341 INFO    ] Launching Daemon at Sat Jun 13 21:35:32 IST 2026
[2026-06-13 21:35:32,348.348 INFO    ] ================================================
[2026-06-13 21:35:32,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:32
[2026-06-13 21:35:33,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:33,180.180 INFO    ] Initializing speech engine...
[2026-06-13 21:35:33,185.185 INFO    ] 2026-06-13 21:35:33
[2026-06-13 21:35:33,390.390 INFO    ] 2026-06-13 21:35:33
[2026-06-13 21:35:33,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:33,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:33,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:33,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:33,793.793 INFO    ] time= 13/06/2026 21:35:33
[2026-06-13 21:35:33,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:33,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:33,976.976 INFO    ] No existing commands found in stream
[2026-06-13 21:35:39,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:35:39,002.002 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 21:35:42,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:35:42,303.303 INFO    ] Checking for system updates...
[2026-06-13 21:35:42,325.325 INFO    ] 200
[2026-06-13 21:35:42,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:42,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:42,362.362 INFO    ] No update needed
[2026-06-13 21:35:42,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 21:35:42,384.384 INFO    ] 200
[2026-06-13 21:35:42,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:42,409.409 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:35:42,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:35:42,554.554 INFO    ] No camera update needed
[2026-06-13 21:35:42,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:35:42,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:35:42,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:35:42,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:44,604.604 INFO    ] ================================================
[2026-06-13 21:35:44,619.619 INFO    ] Launching Daemon at Sat Jun 13 21:35:44 IST 2026
[2026-06-13 21:35:44,630.630 INFO    ] ================================================
[2026-06-13 21:35:44,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:44
[2026-06-13 21:35:45,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:45,424.424 INFO    ] Initializing speech engine...
[2026-06-13 21:35:45,429.429 INFO    ] 2026-06-13 21:35:45
[2026-06-13 21:35:45,632.632 INFO    ] 2026-06-13 21:35:45
[2026-06-13 21:35:45,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:45,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:45,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:45,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:46,026.026 INFO    ] time= 13/06/2026 21:35:45
[2026-06-13 21:35:46,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:46,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:46,147.147 INFO    ] No existing commands found in stream
[2026-06-13 21:35:51,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:35:51,159.159 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 21:35:52,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:35:52,867.867 INFO    ] Checking for system updates...
[2026-06-13 21:35:52,888.888 INFO    ] 200
[2026-06-13 21:35:52,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:52,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:35:52,922.922 INFO    ] No update needed
[2026-06-13 21:35:52,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 21:35:52,942.942 INFO    ] 200
[2026-06-13 21:35:52,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:35:52,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:35:53,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:35:53,012.012 INFO    ] No camera update needed
[2026-06-13 21:35:53,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:35:53,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:35:53,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:35:53,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:35:55,058.058 INFO    ] ================================================
[2026-06-13 21:35:55,074.074 INFO    ] Launching Daemon at Sat Jun 13 21:35:55 IST 2026
[2026-06-13 21:35:55,084.084 INFO    ] ================================================
[2026-06-13 21:35:55,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:35:55
[2026-06-13 21:35:55,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:35:55,933.933 INFO    ] Initializing speech engine...
[2026-06-13 21:35:55,938.938 INFO    ] 2026-06-13 21:35:55
[2026-06-13 21:35:56,149.149 INFO    ] 2026-06-13 21:35:56
[2026-06-13 21:35:56,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:35:56,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:35:56,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:35:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:35:56,577.577 INFO    ] time= 13/06/2026 21:35:56
[2026-06-13 21:35:56,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:35:56,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:35:56,676.676 INFO    ] No existing commands found in stream
[2026-06-13 21:36:01,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:01,688.688 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 21:36:04,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:36:04,157.157 INFO    ] Checking for system updates...
[2026-06-13 21:36:04,179.179 INFO    ] 200
[2026-06-13 21:36:04,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:04,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:04,214.214 INFO    ] No update needed
[2026-06-13 21:36:04,215.215 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:04,235.235 INFO    ] 200
[2026-06-13 21:36:04,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:04,260.260 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:04,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:04,295.295 INFO    ] No camera update needed
[2026-06-13 21:36:04,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:04,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:04,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:04,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:06,343.343 INFO    ] ================================================
[2026-06-13 21:36:06,358.358 INFO    ] Launching Daemon at Sat Jun 13 21:36:06 IST 2026
[2026-06-13 21:36:06,368.368 INFO    ] ================================================
[2026-06-13 21:36:06,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:36:06
[2026-06-13 21:36:07,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:36:07,169.169 INFO    ] Initializing speech engine...
[2026-06-13 21:36:07,173.173 INFO    ] 2026-06-13 21:36:07
[2026-06-13 21:36:07,378.378 INFO    ] 2026-06-13 21:36:07
[2026-06-13 21:36:07,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:36:07,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:36:07,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:36:07,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:36:07,777.777 INFO    ] time= 13/06/2026 21:36:07
[2026-06-13 21:36:07,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:36:07,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:36:07,893.893 INFO    ] No existing commands found in stream
[2026-06-13 21:36:12,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:12,905.905 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 21:36:16,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:36:16,282.282 INFO    ] Checking for system updates...
[2026-06-13 21:36:16,303.303 INFO    ] 200
[2026-06-13 21:36:16,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:16,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:16,340.340 INFO    ] No update needed
[2026-06-13 21:36:16,341.341 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:16,362.362 INFO    ] 200
[2026-06-13 21:36:16,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:16,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:16,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:16,427.427 INFO    ] No camera update needed
[2026-06-13 21:36:16,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:16,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:16,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:16,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:18,474.474 INFO    ] ================================================
[2026-06-13 21:36:18,490.490 INFO    ] Launching Daemon at Sat Jun 13 21:36:18 IST 2026
[2026-06-13 21:36:18,500.500 INFO    ] ================================================
[2026-06-13 21:36:18,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:36:18
[2026-06-13 21:36:19,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:36:19,286.286 INFO    ] Initializing speech engine...
[2026-06-13 21:36:19,291.291 INFO    ] 2026-06-13 21:36:19
[2026-06-13 21:36:19,493.493 INFO    ] 2026-06-13 21:36:19
[2026-06-13 21:36:19,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:36:19,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:36:19,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:36:19,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:36:19,862.862 INFO    ] time= 13/06/2026 21:36:19
[2026-06-13 21:36:19,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:36:19,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:36:20,041.041 INFO    ] No existing commands found in stream
[2026-06-13 21:36:25,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:25,055.055 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-13 21:36:25,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:36:25,413.413 INFO    ] Checking for system updates...
[2026-06-13 21:36:25,434.434 INFO    ] 200
[2026-06-13 21:36:25,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:25,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:36:25,468.468 INFO    ] No update needed
[2026-06-13 21:36:25,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:25,489.489 INFO    ] 200
[2026-06-13 21:36:25,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:25,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:25,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:36:25,557.557 INFO    ] No camera update needed
[2026-06-13 21:36:25,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:25,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:25,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:25,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:27,604.604 INFO    ] ================================================
[2026-06-13 21:36:27,619.619 INFO    ] Launching Daemon at Sat Jun 13 21:36:27 IST 2026
[2026-06-13 21:36:27,629.629 INFO    ] ================================================
[2026-06-13 21:36:27,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:36:27
[2026-06-13 21:36:28,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:36:28,435.435 INFO    ] Initializing speech engine...
[2026-06-13 21:36:28,442.442 INFO    ] 2026-06-13 21:36:28
[2026-06-13 21:36:28,656.656 INFO    ] 2026-06-13 21:36:28
[2026-06-13 21:36:28,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:36:28,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:36:28,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:36:29,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:36:29,067.067 INFO    ] time= 13/06/2026 21:36:29
[2026-06-13 21:36:29,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:36:29,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:36:29,175.175 INFO    ] No existing commands found in stream
[2026-06-13 21:36:34,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:34,187.187 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 21:36:37,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:36:37,222.222 INFO    ] Checking for system updates...
[2026-06-13 21:36:37,242.242 INFO    ] 200
[2026-06-13 21:36:37,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:37,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:37,277.277 INFO    ] No update needed
[2026-06-13 21:36:37,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:37,298.298 INFO    ] 200
[2026-06-13 21:36:37,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:37,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:37,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:37,358.358 INFO    ] No camera update needed
[2026-06-13 21:36:37,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:37,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:37,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:37,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:39,405.405 INFO    ] ================================================
[2026-06-13 21:36:39,421.421 INFO    ] Launching Daemon at Sat Jun 13 21:36:39 IST 2026
[2026-06-13 21:36:39,432.432 INFO    ] ================================================
[2026-06-13 21:36:39,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:36:39
[2026-06-13 21:36:40,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:36:40,244.244 INFO    ] Initializing speech engine...
[2026-06-13 21:36:40,254.254 INFO    ] 2026-06-13 21:36:40
[2026-06-13 21:36:40,469.469 INFO    ] 2026-06-13 21:36:40
[2026-06-13 21:36:40,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:36:40,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:36:40,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:36:40,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:36:40,887.887 INFO    ] time= 13/06/2026 21:36:40
[2026-06-13 21:36:40,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:36:40,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:36:41,016.016 INFO    ] No existing commands found in stream
[2026-06-13 21:36:46,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:46,030.030 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 21:36:47,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:36:47,587.587 INFO    ] Checking for system updates...
[2026-06-13 21:36:47,609.609 INFO    ] 200
[2026-06-13 21:36:47,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:47,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:36:47,642.642 INFO    ] No update needed
[2026-06-13 21:36:47,644.644 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:47,664.664 INFO    ] 200
[2026-06-13 21:36:47,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:47,689.689 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:47,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:36:47,727.727 INFO    ] No camera update needed
[2026-06-13 21:36:47,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:47,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:47,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:47,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:49,775.775 INFO    ] ================================================
[2026-06-13 21:36:49,790.790 INFO    ] Launching Daemon at Sat Jun 13 21:36:49 IST 2026
[2026-06-13 21:36:49,801.801 INFO    ] ================================================
[2026-06-13 21:36:50,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:36:50
[2026-06-13 21:36:50,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:36:50,599.599 INFO    ] Initializing speech engine...
[2026-06-13 21:36:50,612.612 INFO    ] 2026-06-13 21:36:50
[2026-06-13 21:36:50,828.828 INFO    ] 2026-06-13 21:36:50
[2026-06-13 21:36:50,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:36:51,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:36:51,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:36:51,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:36:51,256.256 INFO    ] time= 13/06/2026 21:36:51
[2026-06-13 21:36:51,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:36:51,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:36:51,374.374 INFO    ] No existing commands found in stream
[2026-06-13 21:36:56,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:36:56,387.387 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 21:36:57,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:36:57,506.506 INFO    ] Checking for system updates...
[2026-06-13 21:36:57,527.527 INFO    ] 200
[2026-06-13 21:36:57,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:57,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:57,562.562 INFO    ] No update needed
[2026-06-13 21:36:57,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 21:36:57,583.583 INFO    ] 200
[2026-06-13 21:36:57,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:36:57,607.607 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:36:57,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:36:57,654.654 INFO    ] No camera update needed
[2026-06-13 21:36:57,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:36:57,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:36:57,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:36:57,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:36:59,701.701 INFO    ] ================================================
[2026-06-13 21:36:59,716.716 INFO    ] Launching Daemon at Sat Jun 13 21:36:59 IST 2026
[2026-06-13 21:36:59,727.727 INFO    ] ================================================
[2026-06-13 21:37:00,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:00
[2026-06-13 21:37:00,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:00,537.537 INFO    ] Initializing speech engine...
[2026-06-13 21:37:00,541.541 INFO    ] 2026-06-13 21:37:00
[2026-06-13 21:37:00,749.749 INFO    ] 2026-06-13 21:37:00
[2026-06-13 21:37:00,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:01,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:01,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:01,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:01,174.174 INFO    ] time= 13/06/2026 21:37:01
[2026-06-13 21:37:01,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:01,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:01,379.379 INFO    ] No existing commands found in stream
[2026-06-13 21:37:06,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:06,393.393 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 21:37:07,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:37:07,751.751 INFO    ] Checking for system updates...
[2026-06-13 21:37:07,772.772 INFO    ] 200
[2026-06-13 21:37:07,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:07,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:37:07,805.805 INFO    ] No update needed
[2026-06-13 21:37:07,806.806 INFO    ] Checking for camera pi updates...
[2026-06-13 21:37:07,826.826 INFO    ] 200
[2026-06-13 21:37:07,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:07,851.851 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:37:07,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:37:07,890.890 INFO    ] No camera update needed
[2026-06-13 21:37:07,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:37:07,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:37:07,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:37:07,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:37:09,937.937 INFO    ] ================================================
[2026-06-13 21:37:09,952.952 INFO    ] Launching Daemon at Sat Jun 13 21:37:09 IST 2026
[2026-06-13 21:37:09,964.964 INFO    ] ================================================
[2026-06-13 21:37:10,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:10
[2026-06-13 21:37:10,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:10,741.741 INFO    ] Initializing speech engine...
[2026-06-13 21:37:10,749.749 INFO    ] 2026-06-13 21:37:10
[2026-06-13 21:37:10,963.963 INFO    ] 2026-06-13 21:37:10
[2026-06-13 21:37:10,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:11,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:11,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:11,366.366 INFO    ] time= 13/06/2026 21:37:11
[2026-06-13 21:37:11,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:11,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:11,483.483 INFO    ] No existing commands found in stream
[2026-06-13 21:37:16,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:16,496.496 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-13 21:37:17,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:37:17,497.497 INFO    ] Checking for system updates...
[2026-06-13 21:37:17,525.525 INFO    ] 200
[2026-06-13 21:37:17,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:17,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:37:17,562.562 INFO    ] No update needed
[2026-06-13 21:37:17,564.564 INFO    ] Checking for camera pi updates...
[2026-06-13 21:37:17,583.583 INFO    ] 200
[2026-06-13 21:37:17,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:17,609.609 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:37:17,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:37:17,649.649 INFO    ] No camera update needed
[2026-06-13 21:37:17,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:37:17,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:37:17,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:37:17,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:37:19,696.696 INFO    ] ================================================
[2026-06-13 21:37:19,712.712 INFO    ] Launching Daemon at Sat Jun 13 21:37:19 IST 2026
[2026-06-13 21:37:19,723.723 INFO    ] ================================================
[2026-06-13 21:37:20,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:20
[2026-06-13 21:37:20,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:20,572.572 INFO    ] Initializing speech engine...
[2026-06-13 21:37:20,577.577 INFO    ] 2026-06-13 21:37:20
[2026-06-13 21:37:20,784.784 INFO    ] 2026-06-13 21:37:20
[2026-06-13 21:37:20,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:20,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:21,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:21,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:21,203.203 INFO    ] time= 13/06/2026 21:37:21
[2026-06-13 21:37:21,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:21,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:21,300.300 INFO    ] No existing commands found in stream
[2026-06-13 21:37:26,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:26,318.318 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 21:37:29,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:37:29,426.426 INFO    ] Checking for system updates...
[2026-06-13 21:37:29,448.448 INFO    ] 200
[2026-06-13 21:37:29,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:29,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:37:29,484.484 INFO    ] No update needed
[2026-06-13 21:37:29,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 21:37:29,507.507 INFO    ] 200
[2026-06-13 21:37:29,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:29,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:37:29,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:37:29,576.576 INFO    ] No camera update needed
[2026-06-13 21:37:29,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:37:29,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:37:29,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:37:29,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:37:31,624.624 INFO    ] ================================================
[2026-06-13 21:37:31,640.640 INFO    ] Launching Daemon at Sat Jun 13 21:37:31 IST 2026
[2026-06-13 21:37:31,651.651 INFO    ] ================================================
[2026-06-13 21:37:32,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:32
[2026-06-13 21:37:32,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:32,518.518 INFO    ] Initializing speech engine...
[2026-06-13 21:37:32,523.523 INFO    ] 2026-06-13 21:37:32
[2026-06-13 21:37:32,739.739 INFO    ] 2026-06-13 21:37:32
[2026-06-13 21:37:32,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:32,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:32,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:33,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:33,146.146 INFO    ] time= 13/06/2026 21:37:33
[2026-06-13 21:37:33,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:33,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:33,259.259 INFO    ] No existing commands found in stream
[2026-06-13 21:37:38,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:38,271.271 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-13 21:37:41,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:37:41,337.337 INFO    ] Checking for system updates...
[2026-06-13 21:37:41,357.357 INFO    ] 200
[2026-06-13 21:37:41,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:41,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:37:41,393.393 INFO    ] No update needed
[2026-06-13 21:37:41,394.394 INFO    ] Checking for camera pi updates...
[2026-06-13 21:37:41,414.414 INFO    ] 200
[2026-06-13 21:37:41,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:41,441.441 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:37:41,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:37:41,482.482 INFO    ] No camera update needed
[2026-06-13 21:37:41,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:37:41,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:37:41,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:37:41,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:37:43,532.532 INFO    ] ================================================
[2026-06-13 21:37:43,547.547 INFO    ] Launching Daemon at Sat Jun 13 21:37:43 IST 2026
[2026-06-13 21:37:43,558.558 INFO    ] ================================================
[2026-06-13 21:37:43,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:43
[2026-06-13 21:37:44,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:44,336.336 INFO    ] Initializing speech engine...
[2026-06-13 21:37:44,341.341 INFO    ] 2026-06-13 21:37:44
[2026-06-13 21:37:44,557.557 INFO    ] 2026-06-13 21:37:44
[2026-06-13 21:37:44,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:44,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:44,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:44,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:44,965.965 INFO    ] time= 13/06/2026 21:37:44
[2026-06-13 21:37:45,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:45,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:45,077.077 INFO    ] No existing commands found in stream
[2026-06-13 21:37:50,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:50,089.089 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 21:37:50,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:37:50,654.654 INFO    ] Checking for system updates...
[2026-06-13 21:37:50,675.675 INFO    ] 200
[2026-06-13 21:37:50,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:50,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:37:50,708.708 INFO    ] No update needed
[2026-06-13 21:37:50,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 21:37:50,729.729 INFO    ] 200
[2026-06-13 21:37:50,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:37:50,754.754 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:37:50,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:37:50,896.896 INFO    ] No camera update needed
[2026-06-13 21:37:50,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:37:50,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:37:50,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:37:50,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:37:52,943.943 INFO    ] ================================================
[2026-06-13 21:37:52,959.959 INFO    ] Launching Daemon at Sat Jun 13 21:37:52 IST 2026
[2026-06-13 21:37:52,970.970 INFO    ] ================================================
[2026-06-13 21:37:53,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:37:53
[2026-06-13 21:37:53,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:37:53,757.757 INFO    ] Initializing speech engine...
[2026-06-13 21:37:53,767.767 INFO    ] 2026-06-13 21:37:53
[2026-06-13 21:37:53,971.971 INFO    ] 2026-06-13 21:37:53
[2026-06-13 21:37:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:37:54,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:37:54,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:37:54,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:37:54,373.373 INFO    ] time= 13/06/2026 21:37:54
[2026-06-13 21:37:54,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:37:54,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:37:54,484.484 INFO    ] No existing commands found in stream
[2026-06-13 21:37:59,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:37:59,501.501 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 21:38:02,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:38:02,291.291 INFO    ] Checking for system updates...
[2026-06-13 21:38:02,315.315 INFO    ] 200
[2026-06-13 21:38:02,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:02,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:02,361.361 INFO    ] No update needed
[2026-06-13 21:38:02,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:02,396.396 INFO    ] 200
[2026-06-13 21:38:02,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:02,457.457 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:02,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:02,492.492 INFO    ] No camera update needed
[2026-06-13 21:38:02,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:02,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:02,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:02,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:04,556.556 INFO    ] ================================================
[2026-06-13 21:38:04,573.573 INFO    ] Launching Daemon at Sat Jun 13 21:38:04 IST 2026
[2026-06-13 21:38:04,584.584 INFO    ] ================================================
[2026-06-13 21:38:05,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:05
[2026-06-13 21:38:05,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:05,783.783 INFO    ] Initializing speech engine...
[2026-06-13 21:38:05,794.794 INFO    ] 2026-06-13 21:38:05
[2026-06-13 21:38:06,025.025 INFO    ] 2026-06-13 21:38:05
[2026-06-13 21:38:06,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:06,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:06,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:06,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:06,448.448 INFO    ] time= 13/06/2026 21:38:06
[2026-06-13 21:38:06,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:06,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:06,572.572 INFO    ] No existing commands found in stream
[2026-06-13 21:38:11,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:38:11,585.585 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 21:38:12,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:38:12,806.806 INFO    ] Checking for system updates...
[2026-06-13 21:38:12,828.828 INFO    ] 200
[2026-06-13 21:38:12,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:12,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:12,861.861 INFO    ] No update needed
[2026-06-13 21:38:12,862.862 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:12,885.885 INFO    ] 200
[2026-06-13 21:38:12,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:12,910.910 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:12,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:12,951.951 INFO    ] No camera update needed
[2026-06-13 21:38:12,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:12,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:12,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:12,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:15,004.004 INFO    ] ================================================
[2026-06-13 21:38:15,019.019 INFO    ] Launching Daemon at Sat Jun 13 21:38:15 IST 2026
[2026-06-13 21:38:15,030.030 INFO    ] ================================================
[2026-06-13 21:38:15,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:15
[2026-06-13 21:38:15,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:15,810.810 INFO    ] Initializing speech engine...
[2026-06-13 21:38:15,815.815 INFO    ] 2026-06-13 21:38:15
[2026-06-13 21:38:16,030.030 INFO    ] 2026-06-13 21:38:16
[2026-06-13 21:38:16,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:16,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:16,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:16,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:16,427.427 INFO    ] time= 13/06/2026 21:38:16
[2026-06-13 21:38:16,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:16,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:16,549.549 INFO    ] No existing commands found in stream
[2026-06-13 21:38:21,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:38:21,561.561 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 21:38:23,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:38:23,641.641 INFO    ] Checking for system updates...
[2026-06-13 21:38:23,678.678 INFO    ] 200
[2026-06-13 21:38:23,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:23,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:23,744.744 INFO    ] No update needed
[2026-06-13 21:38:23,746.746 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:23,776.776 INFO    ] 200
[2026-06-13 21:38:23,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:23,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:23,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:23,844.844 INFO    ] No camera update needed
[2026-06-13 21:38:23,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:23,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:23,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:23,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:25,892.892 INFO    ] ================================================
[2026-06-13 21:38:25,908.908 INFO    ] Launching Daemon at Sat Jun 13 21:38:25 IST 2026
[2026-06-13 21:38:25,919.919 INFO    ] ================================================
[2026-06-13 21:38:26,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:26
[2026-06-13 21:38:26,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:26,779.779 INFO    ] Initializing speech engine...
[2026-06-13 21:38:26,785.785 INFO    ] 2026-06-13 21:38:26
[2026-06-13 21:38:26,995.995 INFO    ] 2026-06-13 21:38:26
[2026-06-13 21:38:27,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:27,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:27,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:27,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:27,406.406 INFO    ] time= 13/06/2026 21:38:27
[2026-06-13 21:38:27,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:27,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:27,521.521 INFO    ] No existing commands found in stream
[2026-06-13 21:38:32,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:38:32,533.533 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 21:38:34,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:38:34,462.462 INFO    ] Checking for system updates...
[2026-06-13 21:38:34,483.483 INFO    ] 200
[2026-06-13 21:38:34,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:34,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:34,516.516 INFO    ] No update needed
[2026-06-13 21:38:34,518.518 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:34,537.537 INFO    ] 200
[2026-06-13 21:38:34,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:34,564.564 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:34,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:34,607.607 INFO    ] No camera update needed
[2026-06-13 21:38:34,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:34,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:34,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:34,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:36,659.659 INFO    ] ================================================
[2026-06-13 21:38:36,674.674 INFO    ] Launching Daemon at Sat Jun 13 21:38:36 IST 2026
[2026-06-13 21:38:36,685.685 INFO    ] ================================================
[2026-06-13 21:38:37,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:37
[2026-06-13 21:38:37,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:37,499.499 INFO    ] Initializing speech engine...
[2026-06-13 21:38:37,504.504 INFO    ] 2026-06-13 21:38:37
[2026-06-13 21:38:37,714.714 INFO    ] 2026-06-13 21:38:37
[2026-06-13 21:38:37,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:37,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:38,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:38,131.131 INFO    ] time= 13/06/2026 21:38:38
[2026-06-13 21:38:38,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:38,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:38,237.237 INFO    ] No existing commands found in stream
[2026-06-13 21:38:43,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:38:43,252.252 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-13 21:38:43,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:38:43,742.742 INFO    ] Checking for system updates...
[2026-06-13 21:38:43,763.763 INFO    ] 200
[2026-06-13 21:38:43,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:43,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:43,799.799 INFO    ] No update needed
[2026-06-13 21:38:43,800.800 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:43,819.819 INFO    ] 200
[2026-06-13 21:38:43,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:43,845.845 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:43,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:38:43,891.891 INFO    ] No camera update needed
[2026-06-13 21:38:43,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:43,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:43,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:43,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:45,938.938 INFO    ] ================================================
[2026-06-13 21:38:45,953.953 INFO    ] Launching Daemon at Sat Jun 13 21:38:45 IST 2026
[2026-06-13 21:38:45,963.963 INFO    ] ================================================
[2026-06-13 21:38:46,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:46
[2026-06-13 21:38:46,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:46,780.780 INFO    ] Initializing speech engine...
[2026-06-13 21:38:46,787.787 INFO    ] 2026-06-13 21:38:46
[2026-06-13 21:38:46,999.999 INFO    ] 2026-06-13 21:38:46
[2026-06-13 21:38:47,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:47,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:47,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:47,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:47,411.411 INFO    ] time= 13/06/2026 21:38:47
[2026-06-13 21:38:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:47,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:47,517.517 INFO    ] No existing commands found in stream
[2026-06-13 21:38:52,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:38:52,531.531 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 21:38:55,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:38:55,174.174 INFO    ] Checking for system updates...
[2026-06-13 21:38:55,195.195 INFO    ] 200
[2026-06-13 21:38:55,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:55,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:55,228.228 INFO    ] No update needed
[2026-06-13 21:38:55,229.229 INFO    ] Checking for camera pi updates...
[2026-06-13 21:38:55,249.249 INFO    ] 200
[2026-06-13 21:38:55,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:38:55,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:38:55,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:38:55,316.316 INFO    ] No camera update needed
[2026-06-13 21:38:55,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:38:55,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:38:55,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:38:55,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:38:57,364.364 INFO    ] ================================================
[2026-06-13 21:38:57,380.380 INFO    ] Launching Daemon at Sat Jun 13 21:38:57 IST 2026
[2026-06-13 21:38:57,390.390 INFO    ] ================================================
[2026-06-13 21:38:57,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:38:57
[2026-06-13 21:38:58,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:38:58,238.238 INFO    ] Initializing speech engine...
[2026-06-13 21:38:58,243.243 INFO    ] 2026-06-13 21:38:58
[2026-06-13 21:38:58,447.447 INFO    ] 2026-06-13 21:38:58
[2026-06-13 21:38:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:38:58,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:38:58,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:38:58,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:38:58,839.839 INFO    ] time= 13/06/2026 21:38:58
[2026-06-13 21:38:58,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:38:58,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:38:59,024.024 INFO    ] No existing commands found in stream
[2026-06-13 21:39:04,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:04,058.058 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 21:39:04,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:39:04,362.362 INFO    ] Checking for system updates...
[2026-06-13 21:39:04,384.384 INFO    ] 200
[2026-06-13 21:39:04,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:04,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:04,419.419 INFO    ] No update needed
[2026-06-13 21:39:04,420.420 INFO    ] Checking for camera pi updates...
[2026-06-13 21:39:04,441.441 INFO    ] 200
[2026-06-13 21:39:04,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:04,469.469 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:39:04,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:39:04,512.512 INFO    ] No camera update needed
[2026-06-13 21:39:04,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:39:04,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:39:04,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:39:04,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:39:06,571.571 INFO    ] ================================================
[2026-06-13 21:39:06,586.586 INFO    ] Launching Daemon at Sat Jun 13 21:39:06 IST 2026
[2026-06-13 21:39:06,597.597 INFO    ] ================================================
[2026-06-13 21:39:07,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:39:07
[2026-06-13 21:39:07,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:39:07,914.914 INFO    ] Initializing speech engine...
[2026-06-13 21:39:07,920.920 INFO    ] 2026-06-13 21:39:07
[2026-06-13 21:39:08,129.129 INFO    ] 2026-06-13 21:39:08
[2026-06-13 21:39:08,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:39:08,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:39:08,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:39:08,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:39:08,553.553 INFO    ] time= 13/06/2026 21:39:08
[2026-06-13 21:39:08,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:39:08,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:39:08,654.654 INFO    ] No existing commands found in stream
[2026-06-13 21:39:13,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:13,668.668 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 21:39:14,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:39:14,392.392 INFO    ] Checking for system updates...
[2026-06-13 21:39:14,414.414 INFO    ] 200
[2026-06-13 21:39:14,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:14,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:14,450.450 INFO    ] No update needed
[2026-06-13 21:39:14,451.451 INFO    ] Checking for camera pi updates...
[2026-06-13 21:39:14,472.472 INFO    ] 200
[2026-06-13 21:39:14,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:14,499.499 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:39:14,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:14,536.536 INFO    ] No camera update needed
[2026-06-13 21:39:14,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:39:14,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:39:14,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:39:14,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:39:16,584.584 INFO    ] ================================================
[2026-06-13 21:39:16,600.600 INFO    ] Launching Daemon at Sat Jun 13 21:39:16 IST 2026
[2026-06-13 21:39:16,610.610 INFO    ] ================================================
[2026-06-13 21:39:16,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:39:16
[2026-06-13 21:39:17,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:39:17,433.433 INFO    ] Initializing speech engine...
[2026-06-13 21:39:17,443.443 INFO    ] 2026-06-13 21:39:17
[2026-06-13 21:39:17,649.649 INFO    ] 2026-06-13 21:39:17
[2026-06-13 21:39:17,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:39:17,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:39:17,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:39:18,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:39:18,061.061 INFO    ] time= 13/06/2026 21:39:18
[2026-06-13 21:39:18,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:39:18,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:39:18,166.166 INFO    ] No existing commands found in stream
[2026-06-13 21:39:23,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:23,183.183 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-13 21:39:27,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:39:27,402.402 INFO    ] Checking for system updates...
[2026-06-13 21:39:27,423.423 INFO    ] 200
[2026-06-13 21:39:27,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:27,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:27,457.457 INFO    ] No update needed
[2026-06-13 21:39:27,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 21:39:27,478.478 INFO    ] 200
[2026-06-13 21:39:27,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:27,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:39:27,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:27,541.541 INFO    ] No camera update needed
[2026-06-13 21:39:27,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:39:27,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:39:27,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:39:27,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:39:29,592.592 INFO    ] ================================================
[2026-06-13 21:39:29,607.607 INFO    ] Launching Daemon at Sat Jun 13 21:39:29 IST 2026
[2026-06-13 21:39:29,618.618 INFO    ] ================================================
[2026-06-13 21:39:29,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:39:29
[2026-06-13 21:39:30,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:39:30,450.450 INFO    ] Initializing speech engine...
[2026-06-13 21:39:30,454.454 INFO    ] 2026-06-13 21:39:30
[2026-06-13 21:39:30,711.711 INFO    ] 2026-06-13 21:39:30
[2026-06-13 21:39:30,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:39:30,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:39:30,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:39:31,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:39:31,096.096 INFO    ] time= 13/06/2026 21:39:31
[2026-06-13 21:39:31,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:39:31,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:39:31,277.277 INFO    ] No existing commands found in stream
[2026-06-13 21:39:36,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:36,290.290 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 21:39:38,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:39:38,455.455 INFO    ] Checking for system updates...
[2026-06-13 21:39:38,494.494 INFO    ] 200
[2026-06-13 21:39:38,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:38,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:39:38,557.557 INFO    ] No update needed
[2026-06-13 21:39:38,561.561 INFO    ] Checking for camera pi updates...
[2026-06-13 21:39:38,598.598 INFO    ] 200
[2026-06-13 21:39:38,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:38,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:39:38,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:38,696.696 INFO    ] No camera update needed
[2026-06-13 21:39:38,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:39:38,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:39:38,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:39:38,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:39:40,757.757 INFO    ] ================================================
[2026-06-13 21:39:40,775.775 INFO    ] Launching Daemon at Sat Jun 13 21:39:40 IST 2026
[2026-06-13 21:39:40,790.790 INFO    ] ================================================
[2026-06-13 21:39:41,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:39:41
[2026-06-13 21:39:41,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:39:41,834.834 INFO    ] Initializing speech engine...
[2026-06-13 21:39:41,844.844 INFO    ] 2026-06-13 21:39:41
[2026-06-13 21:39:42,048.048 INFO    ] 2026-06-13 21:39:42
[2026-06-13 21:39:42,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:39:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:39:42,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:39:42,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:39:42,337.337 INFO    ] time= 13/06/2026 21:39:42
[2026-06-13 21:39:42,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:39:42,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:39:42,435.435 INFO    ] No existing commands found in stream
[2026-06-13 21:39:47,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:47,473.473 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 21:39:49,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:39:49,885.885 INFO    ] Checking for system updates...
[2026-06-13 21:39:49,906.906 INFO    ] 200
[2026-06-13 21:39:49,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:49,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:39:49,941.941 INFO    ] No update needed
[2026-06-13 21:39:49,942.942 INFO    ] Checking for camera pi updates...
[2026-06-13 21:39:49,961.961 INFO    ] 200
[2026-06-13 21:39:49,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:39:49,986.986 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:39:50,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:39:50,026.026 INFO    ] No camera update needed
[2026-06-13 21:39:50,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:39:50,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:39:50,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:39:50,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:39:52,073.073 INFO    ] ================================================
[2026-06-13 21:39:52,088.088 INFO    ] Launching Daemon at Sat Jun 13 21:39:52 IST 2026
[2026-06-13 21:39:52,099.099 INFO    ] ================================================
[2026-06-13 21:39:52,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:39:52
[2026-06-13 21:39:52,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:39:52,924.924 INFO    ] Initializing speech engine...
[2026-06-13 21:39:52,928.928 INFO    ] 2026-06-13 21:39:52
[2026-06-13 21:39:53,146.146 INFO    ] 2026-06-13 21:39:53
[2026-06-13 21:39:53,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:39:53,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:39:53,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:39:53,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:39:53,561.561 INFO    ] time= 13/06/2026 21:39:53
[2026-06-13 21:39:53,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:39:53,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:39:53,644.644 INFO    ] No existing commands found in stream
[2026-06-13 21:39:58,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:39:58,655.655 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 21:40:01,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:40:01,129.129 INFO    ] Checking for system updates...
[2026-06-13 21:40:01,220.220 INFO    ] 200
[2026-06-13 21:40:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:01,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:40:01,361.361 INFO    ] No update needed
[2026-06-13 21:40:01,363.363 INFO    ] Checking for camera pi updates...
[2026-06-13 21:40:01,399.399 INFO    ] 200
[2026-06-13 21:40:01,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:01,501.501 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:40:01,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:40:01,656.656 INFO    ] No camera update needed
[2026-06-13 21:40:01,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:40:01,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:40:01,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:40:01,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:40:03,703.703 INFO    ] ================================================
[2026-06-13 21:40:03,719.719 INFO    ] Launching Daemon at Sat Jun 13 21:40:03 IST 2026
[2026-06-13 21:40:03,729.729 INFO    ] ================================================
[2026-06-13 21:40:04,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:40:04
[2026-06-13 21:40:04,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:40:04,512.512 INFO    ] Initializing speech engine...
[2026-06-13 21:40:04,520.520 INFO    ] 2026-06-13 21:40:04
[2026-06-13 21:40:04,731.731 INFO    ] 2026-06-13 21:40:04
[2026-06-13 21:40:04,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:40:04,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:40:04,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:40:05,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:40:05,158.158 INFO    ] time= 13/06/2026 21:40:05
[2026-06-13 21:40:05,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:40:05,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:40:05,255.255 INFO    ] No existing commands found in stream
[2026-06-13 21:40:10,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:40:10,267.267 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 21:40:11,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:40:11,432.432 INFO    ] Checking for system updates...
[2026-06-13 21:40:11,462.462 INFO    ] 200
[2026-06-13 21:40:11,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:11,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:11,496.496 INFO    ] No update needed
[2026-06-13 21:40:11,498.498 INFO    ] Checking for camera pi updates...
[2026-06-13 21:40:11,517.517 INFO    ] 200
[2026-06-13 21:40:11,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:11,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:40:11,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:11,581.581 INFO    ] No camera update needed
[2026-06-13 21:40:11,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:40:11,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:40:11,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:40:11,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:40:13,623.623 INFO    ] ================================================
[2026-06-13 21:40:13,631.631 INFO    ] Launching Daemon at Sat Jun 13 21:40:13 IST 2026
[2026-06-13 21:40:13,637.637 INFO    ] ================================================
[2026-06-13 21:40:13,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:40:13
[2026-06-13 21:40:14,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:40:14,447.447 INFO    ] Initializing speech engine...
[2026-06-13 21:40:14,456.456 INFO    ] 2026-06-13 21:40:14
[2026-06-13 21:40:14,656.656 INFO    ] 2026-06-13 21:40:14
[2026-06-13 21:40:14,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:40:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:40:14,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:40:14,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:40:15,065.065 INFO    ] time= 13/06/2026 21:40:15
[2026-06-13 21:40:15,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:40:15,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:40:15,169.169 INFO    ] No existing commands found in stream
[2026-06-13 21:40:20,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:40:20,181.181 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 21:40:24,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:40:24,056.056 INFO    ] Checking for system updates...
[2026-06-13 21:40:24,078.078 INFO    ] 200
[2026-06-13 21:40:24,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:24,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:24,112.112 INFO    ] No update needed
[2026-06-13 21:40:24,114.114 INFO    ] Checking for camera pi updates...
[2026-06-13 21:40:24,134.134 INFO    ] 200
[2026-06-13 21:40:24,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:24,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:40:24,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:24,202.202 INFO    ] No camera update needed
[2026-06-13 21:40:24,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:40:24,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:40:24,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:40:24,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:40:26,251.251 INFO    ] ================================================
[2026-06-13 21:40:26,266.266 INFO    ] Launching Daemon at Sat Jun 13 21:40:26 IST 2026
[2026-06-13 21:40:26,277.277 INFO    ] ================================================
[2026-06-13 21:40:26,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:40:26
[2026-06-13 21:40:26,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:40:27,124.124 INFO    ] Initializing speech engine...
[2026-06-13 21:40:27,129.129 INFO    ] 2026-06-13 21:40:27
[2026-06-13 21:40:27,337.337 INFO    ] 2026-06-13 21:40:27
[2026-06-13 21:40:27,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:40:27,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:40:27,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:40:27,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:40:27,758.758 INFO    ] time= 13/06/2026 21:40:27
[2026-06-13 21:40:27,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:40:27,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:40:27,856.856 INFO    ] No existing commands found in stream
[2026-06-13 21:40:32,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:40:32,869.869 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 21:40:36,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:40:36,447.447 INFO    ] Checking for system updates...
[2026-06-13 21:40:36,468.468 INFO    ] 200
[2026-06-13 21:40:36,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:36,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:40:36,502.502 INFO    ] No update needed
[2026-06-13 21:40:36,504.504 INFO    ] Checking for camera pi updates...
[2026-06-13 21:40:36,523.523 INFO    ] 200
[2026-06-13 21:40:36,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:36,549.549 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:40:36,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:40:36,586.586 INFO    ] No camera update needed
[2026-06-13 21:40:36,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:40:36,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:40:36,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:40:36,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:40:38,634.634 INFO    ] ================================================
[2026-06-13 21:40:38,649.649 INFO    ] Launching Daemon at Sat Jun 13 21:40:38 IST 2026
[2026-06-13 21:40:38,660.660 INFO    ] ================================================
[2026-06-13 21:40:39,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:40:39
[2026-06-13 21:40:39,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:40:39,450.450 INFO    ] Initializing speech engine...
[2026-06-13 21:40:39,455.455 INFO    ] 2026-06-13 21:40:39
[2026-06-13 21:40:39,663.663 INFO    ] 2026-06-13 21:40:39
[2026-06-13 21:40:39,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:40:39,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:40:39,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:40:40,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:40:40,048.048 INFO    ] time= 13/06/2026 21:40:40
[2026-06-13 21:40:40,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:40:40,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:40:40,170.170 INFO    ] No existing commands found in stream
[2026-06-13 21:40:45,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:40:45,191.191 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 21:40:48,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:40:48,979.979 INFO    ] Checking for system updates...
[2026-06-13 21:40:49,003.003 INFO    ] 200
[2026-06-13 21:40:49,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:49,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:49,039.039 INFO    ] No update needed
[2026-06-13 21:40:49,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 21:40:49,060.060 INFO    ] 200
[2026-06-13 21:40:49,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:40:49,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:40:49,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:40:49,121.121 INFO    ] No camera update needed
[2026-06-13 21:40:49,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:40:49,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:40:49,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:40:49,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:40:51,171.171 INFO    ] ================================================
[2026-06-13 21:40:51,187.187 INFO    ] Launching Daemon at Sat Jun 13 21:40:51 IST 2026
[2026-06-13 21:40:51,199.199 INFO    ] ================================================
[2026-06-13 21:40:51,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:40:51
[2026-06-13 21:40:51,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:40:52,001.001 INFO    ] Initializing speech engine...
[2026-06-13 21:40:52,006.006 INFO    ] 2026-06-13 21:40:52
[2026-06-13 21:40:52,209.209 INFO    ] 2026-06-13 21:40:52
[2026-06-13 21:40:52,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:40:52,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:40:52,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:40:52,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:40:52,610.610 INFO    ] time= 13/06/2026 21:40:52
[2026-06-13 21:40:52,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:40:52,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:40:52,724.724 INFO    ] No existing commands found in stream
[2026-06-13 21:40:57,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:40:57,737.737 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 21:41:01,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:41:01,623.623 INFO    ] Checking for system updates...
[2026-06-13 21:41:01,660.660 INFO    ] 200
[2026-06-13 21:41:01,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:01,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:41:01,746.746 INFO    ] No update needed
[2026-06-13 21:41:01,750.750 INFO    ] Checking for camera pi updates...
[2026-06-13 21:41:01,779.779 INFO    ] 200
[2026-06-13 21:41:01,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:01,810.810 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:41:01,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:41:01,839.839 INFO    ] No camera update needed
[2026-06-13 21:41:01,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:41:01,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:41:01,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:41:01,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:41:03,891.891 INFO    ] ================================================
[2026-06-13 21:41:03,906.906 INFO    ] Launching Daemon at Sat Jun 13 21:41:03 IST 2026
[2026-06-13 21:41:03,917.917 INFO    ] ================================================
[2026-06-13 21:41:04,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:41:04
[2026-06-13 21:41:05,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:41:05,267.267 INFO    ] Initializing speech engine...
[2026-06-13 21:41:05,275.275 INFO    ] 2026-06-13 21:41:05
[2026-06-13 21:41:05,489.489 INFO    ] 2026-06-13 21:41:05
[2026-06-13 21:41:05,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:41:05,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:41:05,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:41:05,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:41:05,902.902 INFO    ] time= 13/06/2026 21:41:05
[2026-06-13 21:41:05,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:41:05,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:41:06,025.025 INFO    ] No existing commands found in stream
[2026-06-13 21:41:11,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:41:11,037.037 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 21:41:13,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:41:13,333.333 INFO    ] Checking for system updates...
[2026-06-13 21:41:13,369.369 INFO    ] 200
[2026-06-13 21:41:13,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:13,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:41:13,442.442 INFO    ] No update needed
[2026-06-13 21:41:13,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 21:41:13,463.463 INFO    ] 200
[2026-06-13 21:41:13,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:13,488.488 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:41:13,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:41:13,523.523 INFO    ] No camera update needed
[2026-06-13 21:41:13,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:41:13,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:41:13,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:41:13,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:41:15,562.562 INFO    ] ================================================
[2026-06-13 21:41:15,570.570 INFO    ] Launching Daemon at Sat Jun 13 21:41:15 IST 2026
[2026-06-13 21:41:15,579.579 INFO    ] ================================================
[2026-06-13 21:41:15,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:41:15
[2026-06-13 21:41:16,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:41:16,447.447 INFO    ] Initializing speech engine...
[2026-06-13 21:41:16,456.456 INFO    ] 2026-06-13 21:41:16
[2026-06-13 21:41:16,666.666 INFO    ] 2026-06-13 21:41:16
[2026-06-13 21:41:16,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:41:16,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:41:16,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:41:17,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:41:17,072.072 INFO    ] time= 13/06/2026 21:41:17
[2026-06-13 21:41:17,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:41:17,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:41:17,180.180 INFO    ] No existing commands found in stream
[2026-06-13 21:41:22,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:41:22,194.194 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 21:41:24,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:41:24,510.510 INFO    ] Checking for system updates...
[2026-06-13 21:41:24,548.548 INFO    ] 200
[2026-06-13 21:41:24,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:24,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:41:24,611.611 INFO    ] No update needed
[2026-06-13 21:41:24,614.614 INFO    ] Checking for camera pi updates...
[2026-06-13 21:41:24,650.650 INFO    ] 200
[2026-06-13 21:41:24,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:24,701.701 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:41:24,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:41:24,746.746 INFO    ] No camera update needed
[2026-06-13 21:41:24,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:41:24,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:41:24,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:41:24,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:41:26,807.807 INFO    ] ================================================
[2026-06-13 21:41:26,822.822 INFO    ] Launching Daemon at Sat Jun 13 21:41:26 IST 2026
[2026-06-13 21:41:26,833.833 INFO    ] ================================================
[2026-06-13 21:41:27,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:41:27
[2026-06-13 21:41:27,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:41:27,931.931 INFO    ] Initializing speech engine...
[2026-06-13 21:41:27,934.934 INFO    ] 2026-06-13 21:41:27
[2026-06-13 21:41:28,139.139 INFO    ] 2026-06-13 21:41:28
[2026-06-13 21:41:28,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:41:28,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:41:28,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:41:28,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:41:28,566.566 INFO    ] time= 13/06/2026 21:41:28
[2026-06-13 21:41:28,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:41:28,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:41:28,738.738 INFO    ] No existing commands found in stream
[2026-06-13 21:41:33,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:41:33,751.751 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 21:41:37,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:41:37,991.991 INFO    ] Checking for system updates...
[2026-06-13 21:41:38,012.012 INFO    ] 200
[2026-06-13 21:41:38,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:38,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:41:38,045.045 INFO    ] No update needed
[2026-06-13 21:41:38,047.047 INFO    ] Checking for camera pi updates...
[2026-06-13 21:41:38,066.066 INFO    ] 200
[2026-06-13 21:41:38,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:38,091.091 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:41:38,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:41:38,127.127 INFO    ] No camera update needed
[2026-06-13 21:41:38,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:41:38,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:41:38,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:41:38,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:41:40,176.176 INFO    ] ================================================
[2026-06-13 21:41:40,191.191 INFO    ] Launching Daemon at Sat Jun 13 21:41:40 IST 2026
[2026-06-13 21:41:40,202.202 INFO    ] ================================================
[2026-06-13 21:41:40,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:41:40
[2026-06-13 21:41:40,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:41:40,987.987 INFO    ] Initializing speech engine...
[2026-06-13 21:41:40,992.992 INFO    ] 2026-06-13 21:41:40
[2026-06-13 21:41:41,197.197 INFO    ] 2026-06-13 21:41:41
[2026-06-13 21:41:41,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:41:41,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:41:41,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:41:41,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:41:41,580.580 INFO    ] time= 13/06/2026 21:41:41
[2026-06-13 21:41:41,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:41:41,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:41:41,716.716 INFO    ] No existing commands found in stream
[2026-06-13 21:41:46,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:41:46,749.749 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 21:41:50,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:41:50,071.071 INFO    ] Checking for system updates...
[2026-06-13 21:41:50,093.093 INFO    ] 200
[2026-06-13 21:41:50,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:50,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:41:50,126.126 INFO    ] No update needed
[2026-06-13 21:41:50,127.127 INFO    ] Checking for camera pi updates...
[2026-06-13 21:41:50,147.147 INFO    ] 200
[2026-06-13 21:41:50,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:41:50,173.173 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:41:50,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:41:50,222.222 INFO    ] No camera update needed
[2026-06-13 21:41:50,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:41:50,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:41:50,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:41:50,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:41:52,271.271 INFO    ] ================================================
[2026-06-13 21:41:52,286.286 INFO    ] Launching Daemon at Sat Jun 13 21:41:52 IST 2026
[2026-06-13 21:41:52,297.297 INFO    ] ================================================
[2026-06-13 21:41:52,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:41:52
[2026-06-13 21:41:53,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:41:53,189.189 INFO    ] Initializing speech engine...
[2026-06-13 21:41:53,199.199 INFO    ] 2026-06-13 21:41:53
[2026-06-13 21:41:53,404.404 INFO    ] 2026-06-13 21:41:53
[2026-06-13 21:41:53,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:41:53,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:41:53,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:41:53,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:41:53,809.809 INFO    ] time= 13/06/2026 21:41:53
[2026-06-13 21:41:53,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:41:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:41:53,918.918 INFO    ] No existing commands found in stream
[2026-06-13 21:41:58,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:41:58,931.931 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 21:42:02,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:42:02,313.313 INFO    ] Checking for system updates...
[2026-06-13 21:42:02,338.338 INFO    ] 200
[2026-06-13 21:42:02,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:02,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:02,371.371 INFO    ] No update needed
[2026-06-13 21:42:02,373.373 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:02,392.392 INFO    ] 200
[2026-06-13 21:42:02,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:02,417.417 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:02,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:02,542.542 INFO    ] No camera update needed
[2026-06-13 21:42:02,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:02,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:02,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:02,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:04,596.596 INFO    ] ================================================
[2026-06-13 21:42:04,612.612 INFO    ] Launching Daemon at Sat Jun 13 21:42:04 IST 2026
[2026-06-13 21:42:04,623.623 INFO    ] ================================================
[2026-06-13 21:42:04,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:04
[2026-06-13 21:42:05,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:42:05,436.436 INFO    ] Initializing speech engine...
[2026-06-13 21:42:05,444.444 INFO    ] 2026-06-13 21:42:05
[2026-06-13 21:42:05,650.650 INFO    ] 2026-06-13 21:42:05
[2026-06-13 21:42:05,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:42:05,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:42:05,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:42:05,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:42:06,043.043 INFO    ] time= 13/06/2026 21:42:05
[2026-06-13 21:42:06,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:42:06,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:42:06,163.163 INFO    ] No existing commands found in stream
[2026-06-13 21:42:11,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:42:11,174.174 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 21:42:14,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:42:14,332.332 INFO    ] Checking for system updates...
[2026-06-13 21:42:14,354.354 INFO    ] 200
[2026-06-13 21:42:14,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:14,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:42:14,387.387 INFO    ] No update needed
[2026-06-13 21:42:14,389.389 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:14,408.408 INFO    ] 200
[2026-06-13 21:42:14,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:14,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:14,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:42:14,483.483 INFO    ] No camera update needed
[2026-06-13 21:42:14,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:14,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:14,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:14,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:16,532.532 INFO    ] ================================================
[2026-06-13 21:42:16,547.547 INFO    ] Launching Daemon at Sat Jun 13 21:42:16 IST 2026
[2026-06-13 21:42:16,558.558 INFO    ] ================================================
[2026-06-13 21:42:16,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:16
[2026-06-13 21:42:17,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:42:17,381.381 INFO    ] Initializing speech engine...
[2026-06-13 21:42:17,386.386 INFO    ] 2026-06-13 21:42:17
[2026-06-13 21:42:17,591.591 INFO    ] 2026-06-13 21:42:17
[2026-06-13 21:42:17,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:42:17,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:42:17,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:42:17,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:42:17,981.981 INFO    ] time= 13/06/2026 21:42:17
[2026-06-13 21:42:18,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:42:18,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:42:18,107.107 INFO    ] No existing commands found in stream
[2026-06-13 21:42:23,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:42:23,125.125 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 21:42:23,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:42:23,451.451 INFO    ] Checking for system updates...
[2026-06-13 21:42:23,471.471 INFO    ] 200
[2026-06-13 21:42:23,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:23,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:23,505.505 INFO    ] No update needed
[2026-06-13 21:42:23,506.506 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:23,527.527 INFO    ] 200
[2026-06-13 21:42:23,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:23,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:23,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:23,609.609 INFO    ] No camera update needed
[2026-06-13 21:42:23,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:23,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:23,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:23,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:25,656.656 INFO    ] ================================================
[2026-06-13 21:42:25,671.671 INFO    ] Launching Daemon at Sat Jun 13 21:42:25 IST 2026
[2026-06-13 21:42:25,682.682 INFO    ] ================================================
[2026-06-13 21:42:26,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:26
[2026-06-13 21:42:26,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:42:26,862.862 INFO    ] Initializing speech engine...
[2026-06-13 21:42:26,887.887 INFO    ] 2026-06-13 21:42:26
[2026-06-13 21:42:27,157.157 INFO    ] 2026-06-13 21:42:27
[2026-06-13 21:42:27,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:42:27,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:42:27,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:42:27,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:42:27,531.531 INFO    ] time= 13/06/2026 21:42:27
[2026-06-13 21:42:27,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:42:27,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:42:27,656.656 INFO    ] No existing commands found in stream
[2026-06-13 21:42:32,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:42:32,671.671 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 21:42:36,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:42:36,472.472 INFO    ] Checking for system updates...
[2026-06-13 21:42:36,493.493 INFO    ] 200
[2026-06-13 21:42:36,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:36,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:42:36,528.528 INFO    ] No update needed
[2026-06-13 21:42:36,529.529 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:36,549.549 INFO    ] 200
[2026-06-13 21:42:36,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:36,577.577 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:36,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:36,617.617 INFO    ] No camera update needed
[2026-06-13 21:42:36,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:36,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:36,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:36,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:38,663.663 INFO    ] ================================================
[2026-06-13 21:42:38,678.678 INFO    ] Launching Daemon at Sat Jun 13 21:42:38 IST 2026
[2026-06-13 21:42:38,689.689 INFO    ] ================================================
[2026-06-13 21:42:39,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:39
[2026-06-13 21:42:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:42:39,540.540 INFO    ] Initializing speech engine...
[2026-06-13 21:42:39,545.545 INFO    ] 2026-06-13 21:42:39
[2026-06-13 21:42:39,753.753 INFO    ] 2026-06-13 21:42:39
[2026-06-13 21:42:39,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:42:39,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:42:39,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:42:40,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:42:40,164.164 INFO    ] time= 13/06/2026 21:42:40
[2026-06-13 21:42:40,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:42:40,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:42:40,274.274 INFO    ] No existing commands found in stream
[2026-06-13 21:42:45,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:42:45,292.292 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 21:42:47,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:42:47,371.371 INFO    ] Checking for system updates...
[2026-06-13 21:42:47,391.391 INFO    ] 200
[2026-06-13 21:42:47,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:47,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:47,426.426 INFO    ] No update needed
[2026-06-13 21:42:47,428.428 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:47,447.447 INFO    ] 200
[2026-06-13 21:42:47,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:47,472.472 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:47,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:42:47,511.511 INFO    ] No camera update needed
[2026-06-13 21:42:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:47,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:47,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:47,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:49,558.558 INFO    ] ================================================
[2026-06-13 21:42:49,574.574 INFO    ] Launching Daemon at Sat Jun 13 21:42:49 IST 2026
[2026-06-13 21:42:49,585.585 INFO    ] ================================================
[2026-06-13 21:42:49,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:49
[2026-06-13 21:42:50,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:42:50,373.373 INFO    ] Initializing speech engine...
[2026-06-13 21:42:50,386.386 INFO    ] 2026-06-13 21:42:50
[2026-06-13 21:42:50,606.606 INFO    ] 2026-06-13 21:42:50
[2026-06-13 21:42:50,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:42:50,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:42:50,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:42:50,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:42:51,042.042 INFO    ] time= 13/06/2026 21:42:50
[2026-06-13 21:42:51,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:42:51,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:42:51,157.157 INFO    ] No existing commands found in stream
[2026-06-13 21:42:56,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:42:56,171.171 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 21:42:56,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:42:56,701.701 INFO    ] Checking for system updates...
[2026-06-13 21:42:56,723.723 INFO    ] 200
[2026-06-13 21:42:56,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:56,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:42:56,756.756 INFO    ] No update needed
[2026-06-13 21:42:56,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 21:42:56,779.779 INFO    ] 200
[2026-06-13 21:42:56,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:42:56,806.806 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:42:56,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:42:56,847.847 INFO    ] No camera update needed
[2026-06-13 21:42:56,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:42:56,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:42:56,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:42:56,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:42:58,895.895 INFO    ] ================================================
[2026-06-13 21:42:58,911.911 INFO    ] Launching Daemon at Sat Jun 13 21:42:58 IST 2026
[2026-06-13 21:42:58,922.922 INFO    ] ================================================
[2026-06-13 21:42:59,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:42:59
[2026-06-13 21:43:00,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:43:00,330.330 INFO    ] Initializing speech engine...
[2026-06-13 21:43:00,354.354 INFO    ] 2026-06-13 21:43:00
[2026-06-13 21:43:00,610.610 INFO    ] 2026-06-13 21:43:00
[2026-06-13 21:43:00,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:43:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:43:00,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:43:00,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:43:00,993.993 INFO    ] time= 13/06/2026 21:43:00
[2026-06-13 21:43:01,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:43:01,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:43:01,123.123 INFO    ] No existing commands found in stream
[2026-06-13 21:43:06,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:43:06,137.137 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 21:43:10,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:43:10,147.147 INFO    ] Checking for system updates...
[2026-06-13 21:43:10,186.186 INFO    ] 200
[2026-06-13 21:43:10,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:10,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:43:10,246.246 INFO    ] No update needed
[2026-06-13 21:43:10,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 21:43:10,282.282 INFO    ] 200
[2026-06-13 21:43:10,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:10,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:43:10,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:43:10,389.389 INFO    ] No camera update needed
[2026-06-13 21:43:10,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:43:10,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:43:10,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:43:10,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:43:12,437.437 INFO    ] ================================================
[2026-06-13 21:43:12,454.454 INFO    ] Launching Daemon at Sat Jun 13 21:43:12 IST 2026
[2026-06-13 21:43:12,466.466 INFO    ] ================================================
[2026-06-13 21:43:12,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:43:12
[2026-06-13 21:43:13,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:43:13,230.230 INFO    ] Initializing speech engine...
[2026-06-13 21:43:13,238.238 INFO    ] 2026-06-13 21:43:13
[2026-06-13 21:43:13,452.452 INFO    ] 2026-06-13 21:43:13
[2026-06-13 21:43:13,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:43:13,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:43:13,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:43:13,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:43:13,854.854 INFO    ] time= 13/06/2026 21:43:13
[2026-06-13 21:43:13,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:43:13,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:43:13,972.972 INFO    ] No existing commands found in stream
[2026-06-13 21:43:18,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:43:18,984.984 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 21:43:22,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:43:22,386.386 INFO    ] Checking for system updates...
[2026-06-13 21:43:22,406.406 INFO    ] 200
[2026-06-13 21:43:22,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:22,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:43:22,441.441 INFO    ] No update needed
[2026-06-13 21:43:22,443.443 INFO    ] Checking for camera pi updates...
[2026-06-13 21:43:22,465.465 INFO    ] 200
[2026-06-13 21:43:22,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:22,491.491 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:43:22,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:43:22,527.527 INFO    ] No camera update needed
[2026-06-13 21:43:22,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:43:22,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:43:22,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:43:22,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:43:24,576.576 INFO    ] ================================================
[2026-06-13 21:43:24,592.592 INFO    ] Launching Daemon at Sat Jun 13 21:43:24 IST 2026
[2026-06-13 21:43:24,603.603 INFO    ] ================================================
[2026-06-13 21:43:24,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:43:24
[2026-06-13 21:43:25,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:43:25,393.393 INFO    ] Initializing speech engine...
[2026-06-13 21:43:25,398.398 INFO    ] 2026-06-13 21:43:25
[2026-06-13 21:43:25,602.602 INFO    ] 2026-06-13 21:43:25
[2026-06-13 21:43:25,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:43:25,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:43:25,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:43:25,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:43:26,007.007 INFO    ] time= 13/06/2026 21:43:25
[2026-06-13 21:43:26,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:43:26,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:43:26,124.124 INFO    ] No existing commands found in stream
[2026-06-13 21:43:31,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:43:31,137.137 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 21:43:34,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:43:34,878.878 INFO    ] Checking for system updates...
[2026-06-13 21:43:34,899.899 INFO    ] 200
[2026-06-13 21:43:34,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:34,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:43:34,934.934 INFO    ] No update needed
[2026-06-13 21:43:34,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 21:43:34,955.955 INFO    ] 200
[2026-06-13 21:43:34,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:34,980.980 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:43:35,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:43:35,026.026 INFO    ] No camera update needed
[2026-06-13 21:43:35,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:43:35,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:43:35,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:43:35,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:43:37,074.074 INFO    ] ================================================
[2026-06-13 21:43:37,089.089 INFO    ] Launching Daemon at Sat Jun 13 21:43:37 IST 2026
[2026-06-13 21:43:37,099.099 INFO    ] ================================================
[2026-06-13 21:43:37,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:43:37
[2026-06-13 21:43:37,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:43:37,878.878 INFO    ] Initializing speech engine...
[2026-06-13 21:43:37,883.883 INFO    ] 2026-06-13 21:43:37
[2026-06-13 21:43:38,110.110 INFO    ] 2026-06-13 21:43:38
[2026-06-13 21:43:38,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:43:38,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:43:38,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:43:38,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:43:38,530.530 INFO    ] time= 13/06/2026 21:43:38
[2026-06-13 21:43:38,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:43:38,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:43:38,667.667 INFO    ] No existing commands found in stream
[2026-06-13 21:43:43,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:43:43,681.681 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 21:43:47,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:43:47,756.756 INFO    ] Checking for system updates...
[2026-06-13 21:43:47,777.777 INFO    ] 200
[2026-06-13 21:43:47,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:47,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:43:47,815.815 INFO    ] No update needed
[2026-06-13 21:43:47,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 21:43:47,835.835 INFO    ] 200
[2026-06-13 21:43:47,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:43:47,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:43:47,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:43:47,898.898 INFO    ] No camera update needed
[2026-06-13 21:43:47,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:43:47,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:43:47,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:43:47,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:43:49,945.945 INFO    ] ================================================
[2026-06-13 21:43:49,960.960 INFO    ] Launching Daemon at Sat Jun 13 21:43:49 IST 2026
[2026-06-13 21:43:49,971.971 INFO    ] ================================================
[2026-06-13 21:43:50,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:43:50
[2026-06-13 21:43:50,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:43:51,206.206 INFO    ] Initializing speech engine...
[2026-06-13 21:43:51,222.222 INFO    ] 2026-06-13 21:43:51
[2026-06-13 21:43:51,504.504 INFO    ] 2026-06-13 21:43:51
[2026-06-13 21:43:51,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:43:51,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:43:51,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:43:51,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:43:51,878.878 INFO    ] time= 13/06/2026 21:43:51
[2026-06-13 21:43:51,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:43:51,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:43:52,006.006 INFO    ] No existing commands found in stream
[2026-06-13 21:43:57,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:43:57,021.021 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 21:44:01,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:44:01,016.016 INFO    ] Checking for system updates...
[2026-06-13 21:44:01,036.036 INFO    ] 200
[2026-06-13 21:44:01,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:01,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:01,074.074 INFO    ] No update needed
[2026-06-13 21:44:01,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:01,094.094 INFO    ] 200
[2026-06-13 21:44:01,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:01,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:01,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:01,157.157 INFO    ] No camera update needed
[2026-06-13 21:44:01,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:01,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:01,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:01,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:44:03,192.192 INFO    ] ================================================
[2026-06-13 21:44:03,201.201 INFO    ] Launching Daemon at Sat Jun 13 21:44:03 IST 2026
[2026-06-13 21:44:03,206.206 INFO    ] ================================================
[2026-06-13 21:44:03,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:44:03
[2026-06-13 21:44:03,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:44:04,010.010 INFO    ] Initializing speech engine...
[2026-06-13 21:44:04,015.015 INFO    ] 2026-06-13 21:44:04
[2026-06-13 21:44:04,222.222 INFO    ] 2026-06-13 21:44:04
[2026-06-13 21:44:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:44:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:44:04,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:44:04,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:44:04,494.494 INFO    ] time= 13/06/2026 21:44:04
[2026-06-13 21:44:04,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:44:04,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:44:04,614.614 INFO    ] No existing commands found in stream
[2026-06-13 21:44:09,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:44:09,639.639 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 21:44:13,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:44:13,311.311 INFO    ] Checking for system updates...
[2026-06-13 21:44:13,333.333 INFO    ] 200
[2026-06-13 21:44:13,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:13,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:13,366.366 INFO    ] No update needed
[2026-06-13 21:44:13,367.367 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:13,386.386 INFO    ] 200
[2026-06-13 21:44:13,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:13,411.411 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:13,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:13,555.555 INFO    ] No camera update needed
[2026-06-13 21:44:13,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:13,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:13,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:13,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:44:15,602.602 INFO    ] ================================================
[2026-06-13 21:44:15,617.617 INFO    ] Launching Daemon at Sat Jun 13 21:44:15 IST 2026
[2026-06-13 21:44:15,628.628 INFO    ] ================================================
[2026-06-13 21:44:15,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:44:15
[2026-06-13 21:44:16,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:44:16,430.430 INFO    ] Initializing speech engine...
[2026-06-13 21:44:16,435.435 INFO    ] 2026-06-13 21:44:16
[2026-06-13 21:44:16,640.640 INFO    ] 2026-06-13 21:44:16
[2026-06-13 21:44:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:44:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:44:16,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:44:16,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:44:17,043.043 INFO    ] time= 13/06/2026 21:44:16
[2026-06-13 21:44:17,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:44:17,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:44:17,160.160 INFO    ] No existing commands found in stream
[2026-06-13 21:44:22,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:44:22,172.172 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 21:44:23,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:44:23,331.331 INFO    ] Checking for system updates...
[2026-06-13 21:44:23,352.352 INFO    ] 200
[2026-06-13 21:44:23,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:23,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:23,385.385 INFO    ] No update needed
[2026-06-13 21:44:23,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:23,406.406 INFO    ] 200
[2026-06-13 21:44:23,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:23,432.432 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:23,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:23,473.473 INFO    ] No camera update needed
[2026-06-13 21:44:23,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:23,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:23,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:23,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:44:25,521.521 INFO    ] ================================================
[2026-06-13 21:44:25,536.536 INFO    ] Launching Daemon at Sat Jun 13 21:44:25 IST 2026
[2026-06-13 21:44:25,546.546 INFO    ] ================================================
[2026-06-13 21:44:25,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:44:25
[2026-06-13 21:44:26,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:44:26,396.396 INFO    ] Initializing speech engine...
[2026-06-13 21:44:26,405.405 INFO    ] 2026-06-13 21:44:26
[2026-06-13 21:44:26,613.613 INFO    ] 2026-06-13 21:44:26
[2026-06-13 21:44:26,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:44:26,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:44:26,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:44:26,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:44:27,013.013 INFO    ] time= 13/06/2026 21:44:26
[2026-06-13 21:44:27,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:44:27,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:44:27,130.130 INFO    ] No existing commands found in stream
[2026-06-13 21:44:32,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:44:32,144.144 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 21:44:34,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:44:34,973.973 INFO    ] Checking for system updates...
[2026-06-13 21:44:34,995.995 INFO    ] 200
[2026-06-13 21:44:34,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:35,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:35,031.031 INFO    ] No update needed
[2026-06-13 21:44:35,032.032 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:35,053.053 INFO    ] 200
[2026-06-13 21:44:35,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:35,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:35,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:35,130.130 INFO    ] No camera update needed
[2026-06-13 21:44:35,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:35,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:35,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:35,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:44:37,179.179 INFO    ] ================================================
[2026-06-13 21:44:37,194.194 INFO    ] Launching Daemon at Sat Jun 13 21:44:37 IST 2026
[2026-06-13 21:44:37,205.205 INFO    ] ================================================
[2026-06-13 21:44:37,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:44:37
[2026-06-13 21:44:37,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:44:38,037.037 INFO    ] Initializing speech engine...
[2026-06-13 21:44:38,047.047 INFO    ] 2026-06-13 21:44:38
[2026-06-13 21:44:38,256.256 INFO    ] 2026-06-13 21:44:38
[2026-06-13 21:44:38,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:44:38,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:44:38,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:44:38,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:44:38,664.664 INFO    ] time= 13/06/2026 21:44:38
[2026-06-13 21:44:38,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:44:38,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:44:38,782.782 INFO    ] No existing commands found in stream
[2026-06-13 21:44:43,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:44:43,810.810 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 21:44:46,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:44:46,852.852 INFO    ] Checking for system updates...
[2026-06-13 21:44:46,872.872 INFO    ] 200
[2026-06-13 21:44:46,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:46,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:44:46,909.909 INFO    ] No update needed
[2026-06-13 21:44:46,910.910 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:46,930.930 INFO    ] 200
[2026-06-13 21:44:46,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:46,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:46,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:44:46,990.990 INFO    ] No camera update needed
[2026-06-13 21:44:46,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:46,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:46,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:44:49,039.039 INFO    ] ================================================
[2026-06-13 21:44:49,054.054 INFO    ] Launching Daemon at Sat Jun 13 21:44:49 IST 2026
[2026-06-13 21:44:49,065.065 INFO    ] ================================================
[2026-06-13 21:44:49,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:44:49
[2026-06-13 21:44:49,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:44:49,919.919 INFO    ] Initializing speech engine...
[2026-06-13 21:44:49,925.925 INFO    ] 2026-06-13 21:44:49
[2026-06-13 21:44:50,114.114 INFO    ] 2026-06-13 21:44:50
[2026-06-13 21:44:50,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:44:50,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:44:50,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:44:50,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:44:50,561.561 INFO    ] time= 13/06/2026 21:44:50
[2026-06-13 21:44:50,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:44:50,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:44:50,661.661 INFO    ] No existing commands found in stream
[2026-06-13 21:44:55,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:44:55,689.689 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 21:44:58,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:44:58,241.241 INFO    ] Checking for system updates...
[2026-06-13 21:44:58,262.262 INFO    ] 200
[2026-06-13 21:44:58,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:58,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:58,299.299 INFO    ] No update needed
[2026-06-13 21:44:58,300.300 INFO    ] Checking for camera pi updates...
[2026-06-13 21:44:58,321.321 INFO    ] 200
[2026-06-13 21:44:58,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:44:58,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:44:58,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:44:58,389.389 INFO    ] No camera update needed
[2026-06-13 21:44:58,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:44:58,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:44:58,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:44:58,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:00,437.437 INFO    ] ================================================
[2026-06-13 21:45:00,452.452 INFO    ] Launching Daemon at Sat Jun 13 21:45:00 IST 2026
[2026-06-13 21:45:00,463.463 INFO    ] ================================================
[2026-06-13 21:45:00,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:00
[2026-06-13 21:45:01,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:01,682.682 INFO    ] Initializing speech engine...
[2026-06-13 21:45:01,685.685 INFO    ] 2026-06-13 21:45:01
[2026-06-13 21:45:01,966.966 INFO    ] 2026-06-13 21:45:01
[2026-06-13 21:45:01,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:02,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:02,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:02,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:02,389.389 INFO    ] time= 13/06/2026 21:45:02
[2026-06-13 21:45:02,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:02,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:02,575.575 INFO    ] No existing commands found in stream
[2026-06-13 21:45:07,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:45:07,589.589 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 21:45:08,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:45:08,434.434 INFO    ] Checking for system updates...
[2026-06-13 21:45:08,455.455 INFO    ] 200
[2026-06-13 21:45:08,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:08,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:08,488.488 INFO    ] No update needed
[2026-06-13 21:45:08,490.490 INFO    ] Checking for camera pi updates...
[2026-06-13 21:45:08,509.509 INFO    ] 200
[2026-06-13 21:45:08,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:08,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:45:08,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:08,571.571 INFO    ] No camera update needed
[2026-06-13 21:45:08,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:45:08,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:45:08,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:45:08,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:10,619.619 INFO    ] ================================================
[2026-06-13 21:45:10,635.635 INFO    ] Launching Daemon at Sat Jun 13 21:45:10 IST 2026
[2026-06-13 21:45:10,646.646 INFO    ] ================================================
[2026-06-13 21:45:10,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:10
[2026-06-13 21:45:11,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:11,437.437 INFO    ] Initializing speech engine...
[2026-06-13 21:45:11,442.442 INFO    ] 2026-06-13 21:45:11
[2026-06-13 21:45:11,646.646 INFO    ] 2026-06-13 21:45:11
[2026-06-13 21:45:11,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:11,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:11,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:11,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:12,049.049 INFO    ] time= 13/06/2026 21:45:11
[2026-06-13 21:45:12,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:12,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:12,159.159 INFO    ] No existing commands found in stream
[2026-06-13 21:45:17,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:45:17,171.171 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 21:45:20,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:45:20,773.773 INFO    ] Checking for system updates...
[2026-06-13 21:45:20,793.793 INFO    ] 200
[2026-06-13 21:45:20,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:20,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:20,826.826 INFO    ] No update needed
[2026-06-13 21:45:20,827.827 INFO    ] Checking for camera pi updates...
[2026-06-13 21:45:20,847.847 INFO    ] 200
[2026-06-13 21:45:20,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:20,872.872 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:45:20,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:20,906.906 INFO    ] No camera update needed
[2026-06-13 21:45:20,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:45:20,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:45:20,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:45:20,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:22,953.953 INFO    ] ================================================
[2026-06-13 21:45:22,969.969 INFO    ] Launching Daemon at Sat Jun 13 21:45:22 IST 2026
[2026-06-13 21:45:22,981.981 INFO    ] ================================================
[2026-06-13 21:45:23,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:23
[2026-06-13 21:45:23,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:23,776.776 INFO    ] Initializing speech engine...
[2026-06-13 21:45:23,781.781 INFO    ] 2026-06-13 21:45:23
[2026-06-13 21:45:23,985.985 INFO    ] 2026-06-13 21:45:23
[2026-06-13 21:45:24,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:24,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:24,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:24,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:24,395.395 INFO    ] time= 13/06/2026 21:45:24
[2026-06-13 21:45:24,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:24,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:24,508.508 INFO    ] No existing commands found in stream
[2026-06-13 21:45:29,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:45:29,520.520 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 21:45:31,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:45:31,661.661 INFO    ] Checking for system updates...
[2026-06-13 21:45:31,687.687 INFO    ] 200
[2026-06-13 21:45:31,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:31,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:31,760.760 INFO    ] No update needed
[2026-06-13 21:45:31,763.763 INFO    ] Checking for camera pi updates...
[2026-06-13 21:45:31,802.802 INFO    ] 200
[2026-06-13 21:45:31,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:31,853.853 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:45:31,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:31,905.905 INFO    ] No camera update needed
[2026-06-13 21:45:31,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:45:31,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:45:31,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:45:31,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:33,968.968 INFO    ] ================================================
[2026-06-13 21:45:33,984.984 INFO    ] Launching Daemon at Sat Jun 13 21:45:33 IST 2026
[2026-06-13 21:45:34,996.996 INFO    ] ================================================
[2026-06-13 21:45:34,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:34
[2026-06-13 21:45:35,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:35,142.142 INFO    ] Initializing speech engine...
[2026-06-13 21:45:35,151.151 INFO    ] 2026-06-13 21:45:35
[2026-06-13 21:45:35,367.367 INFO    ] 2026-06-13 21:45:35
[2026-06-13 21:45:35,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:35,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:35,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:35,762.762 INFO    ] time= 13/06/2026 21:45:35
[2026-06-13 21:45:35,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:35,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:35,910.910 INFO    ] No existing commands found in stream
[2026-06-13 21:45:40,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:45:40,923.923 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 21:45:43,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:45:43,541.541 INFO    ] Checking for system updates...
[2026-06-13 21:45:43,568.568 INFO    ] 200
[2026-06-13 21:45:43,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:43,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:43,602.602 INFO    ] No update needed
[2026-06-13 21:45:43,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 21:45:43,625.625 INFO    ] 200
[2026-06-13 21:45:43,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:43,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:45:43,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:45:43,697.697 INFO    ] No camera update needed
[2026-06-13 21:45:43,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:45:43,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:45:43,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:45:43,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:45,746.746 INFO    ] ================================================
[2026-06-13 21:45:45,762.762 INFO    ] Launching Daemon at Sat Jun 13 21:45:45 IST 2026
[2026-06-13 21:45:45,774.774 INFO    ] ================================================
[2026-06-13 21:45:46,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:46
[2026-06-13 21:45:46,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:46,589.589 INFO    ] Initializing speech engine...
[2026-06-13 21:45:46,596.596 INFO    ] 2026-06-13 21:45:46
[2026-06-13 21:45:46,818.818 INFO    ] 2026-06-13 21:45:46
[2026-06-13 21:45:46,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:46,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:47,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:47,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:47,238.238 INFO    ] time= 13/06/2026 21:45:47
[2026-06-13 21:45:47,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:47,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:47,368.368 INFO    ] No existing commands found in stream
[2026-06-13 21:45:52,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:45:52,382.382 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 21:45:53,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:45:53,851.851 INFO    ] Checking for system updates...
[2026-06-13 21:45:53,871.871 INFO    ] 200
[2026-06-13 21:45:53,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:53,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:45:53,904.904 INFO    ] No update needed
[2026-06-13 21:45:53,906.906 INFO    ] Checking for camera pi updates...
[2026-06-13 21:45:53,929.929 INFO    ] 200
[2026-06-13 21:45:53,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:45:53,955.955 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:45:53,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:45:54,000.000 INFO    ] No camera update needed
[2026-06-13 21:45:54,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:45:54,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:45:54,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:45:54,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:45:56,050.050 INFO    ] ================================================
[2026-06-13 21:45:56,066.066 INFO    ] Launching Daemon at Sat Jun 13 21:45:56 IST 2026
[2026-06-13 21:45:56,077.077 INFO    ] ================================================
[2026-06-13 21:45:56,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:45:56
[2026-06-13 21:45:56,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:45:56,919.919 INFO    ] Initializing speech engine...
[2026-06-13 21:45:56,929.929 INFO    ] 2026-06-13 21:45:56
[2026-06-13 21:45:57,138.138 INFO    ] 2026-06-13 21:45:57
[2026-06-13 21:45:57,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:45:57,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:45:57,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:45:57,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:45:57,494.494 INFO    ] time= 13/06/2026 21:45:57
[2026-06-13 21:45:57,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:45:57,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:45:57,664.664 INFO    ] No existing commands found in stream
[2026-06-13 21:46:02,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:02,679.679 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-13 21:46:03,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:46:03,977.977 INFO    ] Checking for system updates...
[2026-06-13 21:46:03,998.998 INFO    ] 200
[2026-06-13 21:46:03,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:04,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:46:04,033.033 INFO    ] No update needed
[2026-06-13 21:46:04,034.034 INFO    ] Checking for camera pi updates...
[2026-06-13 21:46:04,054.054 INFO    ] 200
[2026-06-13 21:46:04,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:04,083.083 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:46:04,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:46:04,136.136 INFO    ] No camera update needed
[2026-06-13 21:46:04,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:46:04,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:46:04,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:46:04,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:46:06,185.185 INFO    ] ================================================
[2026-06-13 21:46:06,201.201 INFO    ] Launching Daemon at Sat Jun 13 21:46:06 IST 2026
[2026-06-13 21:46:06,211.211 INFO    ] ================================================
[2026-06-13 21:46:06,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:46:06
[2026-06-13 21:46:06,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:46:07,014.014 INFO    ] Initializing speech engine...
[2026-06-13 21:46:07,020.020 INFO    ] 2026-06-13 21:46:07
[2026-06-13 21:46:07,222.222 INFO    ] 2026-06-13 21:46:07
[2026-06-13 21:46:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:46:07,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:46:07,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:46:07,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:46:07,637.637 INFO    ] time= 13/06/2026 21:46:07
[2026-06-13 21:46:07,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:46:07,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:46:07,737.737 INFO    ] No existing commands found in stream
[2026-06-13 21:46:12,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:12,749.749 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 21:46:14,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:46:14,094.094 INFO    ] Checking for system updates...
[2026-06-13 21:46:14,115.115 INFO    ] 200
[2026-06-13 21:46:14,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:14,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:14,148.148 INFO    ] No update needed
[2026-06-13 21:46:14,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 21:46:14,169.169 INFO    ] 200
[2026-06-13 21:46:14,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:14,196.196 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:46:14,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:14,241.241 INFO    ] No camera update needed
[2026-06-13 21:46:14,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:46:14,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:46:14,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:46:14,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:46:16,289.289 INFO    ] ================================================
[2026-06-13 21:46:16,304.304 INFO    ] Launching Daemon at Sat Jun 13 21:46:16 IST 2026
[2026-06-13 21:46:16,316.316 INFO    ] ================================================
[2026-06-13 21:46:16,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:46:16
[2026-06-13 21:46:17,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:46:17,190.190 INFO    ] Initializing speech engine...
[2026-06-13 21:46:17,196.196 INFO    ] 2026-06-13 21:46:17
[2026-06-13 21:46:17,406.406 INFO    ] 2026-06-13 21:46:17
[2026-06-13 21:46:17,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:46:17,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:46:17,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:46:17,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:46:17,830.830 INFO    ] time= 13/06/2026 21:46:17
[2026-06-13 21:46:17,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:46:17,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:46:17,928.928 INFO    ] No existing commands found in stream
[2026-06-13 21:46:22,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:22,946.946 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 21:46:27,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:46:27,092.092 INFO    ] Checking for system updates...
[2026-06-13 21:46:27,113.113 INFO    ] 200
[2026-06-13 21:46:27,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:27,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:46:27,147.147 INFO    ] No update needed
[2026-06-13 21:46:27,148.148 INFO    ] Checking for camera pi updates...
[2026-06-13 21:46:27,168.168 INFO    ] 200
[2026-06-13 21:46:27,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:27,194.194 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:46:27,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:46:27,334.334 INFO    ] No camera update needed
[2026-06-13 21:46:27,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:46:27,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:46:27,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:46:27,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:46:29,385.385 INFO    ] ================================================
[2026-06-13 21:46:29,401.401 INFO    ] Launching Daemon at Sat Jun 13 21:46:29 IST 2026
[2026-06-13 21:46:29,412.412 INFO    ] ================================================
[2026-06-13 21:46:29,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:46:29
[2026-06-13 21:46:30,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:46:30,227.227 INFO    ] Initializing speech engine...
[2026-06-13 21:46:30,232.232 INFO    ] 2026-06-13 21:46:30
[2026-06-13 21:46:30,439.439 INFO    ] 2026-06-13 21:46:30
[2026-06-13 21:46:30,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:46:30,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:46:30,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:46:30,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:46:30,690.690 INFO    ] time= 13/06/2026 21:46:30
[2026-06-13 21:46:30,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:46:30,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:46:30,882.882 INFO    ] No existing commands found in stream
[2026-06-13 21:46:35,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:35,915.915 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 21:46:39,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:46:39,576.576 INFO    ] Checking for system updates...
[2026-06-13 21:46:39,597.597 INFO    ] 200
[2026-06-13 21:46:39,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:39,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:39,630.630 INFO    ] No update needed
[2026-06-13 21:46:39,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 21:46:39,651.651 INFO    ] 200
[2026-06-13 21:46:39,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:39,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:46:39,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:39,719.719 INFO    ] No camera update needed
[2026-06-13 21:46:39,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:46:39,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:46:39,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:46:39,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:46:41,766.766 INFO    ] ================================================
[2026-06-13 21:46:41,782.782 INFO    ] Launching Daemon at Sat Jun 13 21:46:41 IST 2026
[2026-06-13 21:46:41,793.793 INFO    ] ================================================
[2026-06-13 21:46:42,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:46:42
[2026-06-13 21:46:42,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:46:42,613.613 INFO    ] Initializing speech engine...
[2026-06-13 21:46:42,618.618 INFO    ] 2026-06-13 21:46:42
[2026-06-13 21:46:42,823.823 INFO    ] 2026-06-13 21:46:42
[2026-06-13 21:46:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:46:43,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:46:43,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:46:43,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:46:43,229.229 INFO    ] time= 13/06/2026 21:46:43
[2026-06-13 21:46:43,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:46:43,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:46:43,362.362 INFO    ] No existing commands found in stream
[2026-06-13 21:46:48,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:48,375.375 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-13 21:46:50,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:46:50,690.690 INFO    ] Checking for system updates...
[2026-06-13 21:46:50,710.710 INFO    ] 200
[2026-06-13 21:46:50,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:50,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:50,746.746 INFO    ] No update needed
[2026-06-13 21:46:50,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 21:46:50,767.767 INFO    ] 200
[2026-06-13 21:46:50,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:46:50,791.791 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:46:50,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:46:50,830.830 INFO    ] No camera update needed
[2026-06-13 21:46:50,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:46:50,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:46:50,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:46:50,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:46:52,876.876 INFO    ] ================================================
[2026-06-13 21:46:52,891.891 INFO    ] Launching Daemon at Sat Jun 13 21:46:52 IST 2026
[2026-06-13 21:46:52,902.902 INFO    ] ================================================
[2026-06-13 21:46:53,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:46:53
[2026-06-13 21:46:53,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:46:53,723.723 INFO    ] Initializing speech engine...
[2026-06-13 21:46:53,728.728 INFO    ] 2026-06-13 21:46:53
[2026-06-13 21:46:53,942.942 INFO    ] 2026-06-13 21:46:53
[2026-06-13 21:46:53,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:46:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:46:54,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:46:54,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:46:54,367.367 INFO    ] time= 13/06/2026 21:46:54
[2026-06-13 21:46:54,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:46:54,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:46:54,491.491 INFO    ] No existing commands found in stream
[2026-06-13 21:46:59,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:46:59,505.505 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-13 21:47:01,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:47:01,889.889 INFO    ] Checking for system updates...
[2026-06-13 21:47:01,926.926 INFO    ] 200
[2026-06-13 21:47:01,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:01,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:47:01,985.985 INFO    ] No update needed
[2026-06-13 21:47:01,988.988 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:02,050.050 INFO    ] 200
[2026-06-13 21:47:02,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:02,094.094 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:02,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:47:02,128.128 INFO    ] No camera update needed
[2026-06-13 21:47:02,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:02,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:02,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:02,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:04,173.173 INFO    ] ================================================
[2026-06-13 21:47:04,188.188 INFO    ] Launching Daemon at Sat Jun 13 21:47:04 IST 2026
[2026-06-13 21:47:04,199.199 INFO    ] ================================================
[2026-06-13 21:47:04,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:04
[2026-06-13 21:47:04,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:04,995.995 INFO    ] Initializing speech engine...
[2026-06-13 21:47:05,005.005 INFO    ] 2026-06-13 21:47:05
[2026-06-13 21:47:05,209.209 INFO    ] 2026-06-13 21:47:05
[2026-06-13 21:47:05,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:05,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:47:05,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:47:05,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:47:05,628.628 INFO    ] time= 13/06/2026 21:47:05
[2026-06-13 21:47:05,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:47:05,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:47:05,723.723 INFO    ] No existing commands found in stream
[2026-06-13 21:47:10,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:47:10,736.736 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 21:47:12,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:47:12,142.142 INFO    ] Checking for system updates...
[2026-06-13 21:47:12,164.164 INFO    ] 200
[2026-06-13 21:47:12,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:12,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:12,198.198 INFO    ] No update needed
[2026-06-13 21:47:12,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:12,220.220 INFO    ] 200
[2026-06-13 21:47:12,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:12,245.245 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:12,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:12,291.291 INFO    ] No camera update needed
[2026-06-13 21:47:12,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:12,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:12,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:12,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:14,338.338 INFO    ] ================================================
[2026-06-13 21:47:14,353.353 INFO    ] Launching Daemon at Sat Jun 13 21:47:14 IST 2026
[2026-06-13 21:47:14,364.364 INFO    ] ================================================
[2026-06-13 21:47:14,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:14
[2026-06-13 21:47:15,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:15,202.202 INFO    ] Initializing speech engine...
[2026-06-13 21:47:15,208.208 INFO    ] 2026-06-13 21:47:15
[2026-06-13 21:47:15,417.417 INFO    ] 2026-06-13 21:47:15
[2026-06-13 21:47:15,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:15,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:47:15,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:47:15,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:47:15,845.845 INFO    ] time= 13/06/2026 21:47:15
[2026-06-13 21:47:15,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:47:15,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:47:15,992.992 INFO    ] No existing commands found in stream
[2026-06-13 21:47:21,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:47:21,006.006 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 21:47:22,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:47:22,877.877 INFO    ] Checking for system updates...
[2026-06-13 21:47:22,898.898 INFO    ] 200
[2026-06-13 21:47:22,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:22,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:47:22,931.931 INFO    ] No update needed
[2026-06-13 21:47:22,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:22,952.952 INFO    ] 200
[2026-06-13 21:47:22,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:22,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:23,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:23,020.020 INFO    ] No camera update needed
[2026-06-13 21:47:23,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:23,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:23,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:23,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:25,069.069 INFO    ] ================================================
[2026-06-13 21:47:25,084.084 INFO    ] Launching Daemon at Sat Jun 13 21:47:25 IST 2026
[2026-06-13 21:47:25,095.095 INFO    ] ================================================
[2026-06-13 21:47:25,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:25
[2026-06-13 21:47:25,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:25,884.884 INFO    ] Initializing speech engine...
[2026-06-13 21:47:25,888.888 INFO    ] 2026-06-13 21:47:25
[2026-06-13 21:47:26,105.105 INFO    ] 2026-06-13 21:47:26
[2026-06-13 21:47:26,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:26,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:47:26,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:47:26,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:47:26,519.519 INFO    ] time= 13/06/2026 21:47:26
[2026-06-13 21:47:26,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:47:26,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:47:26,623.623 INFO    ] No existing commands found in stream
[2026-06-13 21:47:31,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:47:31,640.640 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 21:47:34,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:47:34,512.512 INFO    ] Checking for system updates...
[2026-06-13 21:47:34,533.533 INFO    ] 200
[2026-06-13 21:47:34,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:34,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:34,569.569 INFO    ] No update needed
[2026-06-13 21:47:34,570.570 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:34,589.589 INFO    ] 200
[2026-06-13 21:47:34,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:34,614.614 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:34,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:34,654.654 INFO    ] No camera update needed
[2026-06-13 21:47:34,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:34,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:34,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:34,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:36,706.706 INFO    ] ================================================
[2026-06-13 21:47:36,721.721 INFO    ] Launching Daemon at Sat Jun 13 21:47:36 IST 2026
[2026-06-13 21:47:36,732.732 INFO    ] ================================================
[2026-06-13 21:47:37,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:37
[2026-06-13 21:47:37,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:37,554.554 INFO    ] Initializing speech engine...
[2026-06-13 21:47:37,558.558 INFO    ] 2026-06-13 21:47:37
[2026-06-13 21:47:37,787.787 INFO    ] 2026-06-13 21:47:37
[2026-06-13 21:47:37,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:37,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:47:38,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:47:38,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:47:38,210.210 INFO    ] time= 13/06/2026 21:47:38
[2026-06-13 21:47:38,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:47:38,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:47:38,341.341 INFO    ] No existing commands found in stream
[2026-06-13 21:47:43,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:47:43,354.354 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 21:47:46,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:47:46,607.607 INFO    ] Checking for system updates...
[2026-06-13 21:47:46,628.628 INFO    ] 200
[2026-06-13 21:47:46,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:46,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:46,661.661 INFO    ] No update needed
[2026-06-13 21:47:46,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:46,682.682 INFO    ] 200
[2026-06-13 21:47:46,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:46,713.713 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:46,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:47:46,761.761 INFO    ] No camera update needed
[2026-06-13 21:47:46,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:46,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:46,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:46,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:48,809.809 INFO    ] ================================================
[2026-06-13 21:47:48,824.824 INFO    ] Launching Daemon at Sat Jun 13 21:47:48 IST 2026
[2026-06-13 21:47:48,835.835 INFO    ] ================================================
[2026-06-13 21:47:49,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:49
[2026-06-13 21:47:49,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:49,610.610 INFO    ] Initializing speech engine...
[2026-06-13 21:47:49,619.619 INFO    ] 2026-06-13 21:47:49
[2026-06-13 21:47:49,824.824 INFO    ] 2026-06-13 21:47:49
[2026-06-13 21:47:49,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:50,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:47:50,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:47:50,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:47:50,230.230 INFO    ] time= 13/06/2026 21:47:50
[2026-06-13 21:47:50,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:47:50,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:47:50,349.349 INFO    ] No existing commands found in stream
[2026-06-13 21:47:55,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:47:55,361.361 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 21:47:55,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:47:55,936.936 INFO    ] Checking for system updates...
[2026-06-13 21:47:55,957.957 INFO    ] 200
[2026-06-13 21:47:55,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:55,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:55,990.990 INFO    ] No update needed
[2026-06-13 21:47:55,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 21:47:56,011.011 INFO    ] 200
[2026-06-13 21:47:56,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:47:56,038.038 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:47:56,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:47:56,062.062 INFO    ] No camera update needed
[2026-06-13 21:47:56,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:47:56,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:56,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:56,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:47:58,107.107 INFO    ] ================================================
[2026-06-13 21:47:58,122.122 INFO    ] Launching Daemon at Sat Jun 13 21:47:58 IST 2026
[2026-06-13 21:47:58,133.133 INFO    ] ================================================
[2026-06-13 21:47:58,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:47:58
[2026-06-13 21:47:58,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:47:58,943.943 INFO    ] Initializing speech engine...
[2026-06-13 21:47:58,946.946 INFO    ] 2026-06-13 21:47:58
[2026-06-13 21:47:59,175.175 INFO    ] 2026-06-13 21:47:59
[2026-06-13 21:47:59,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:47:59,261.261 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 21:47:59,307.307 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 21:47:59,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:47:59,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:47:59,410.410 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 21:47:59,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:01,481.481 INFO    ] ================================================
[2026-06-13 21:48:01,496.496 INFO    ] Launching Daemon at Sat Jun 13 21:48:01 IST 2026
[2026-06-13 21:48:01,507.507 INFO    ] ================================================
[2026-06-13 21:48:01,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:01
[2026-06-13 21:48:02,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:02,483.483 INFO    ] Initializing speech engine...
[2026-06-13 21:48:02,491.491 INFO    ] 2026-06-13 21:48:02
[2026-06-13 21:48:02,725.725 INFO    ] 2026-06-13 21:48:02
[2026-06-13 21:48:02,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:02,840.840 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 21:48:02,982.982 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 21:48:03,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:03,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:03,102.102 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 21:48:03,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:05,296.296 INFO    ] ================================================
[2026-06-13 21:48:05,311.311 INFO    ] Launching Daemon at Sat Jun 13 21:48:05 IST 2026
[2026-06-13 21:48:05,322.322 INFO    ] ================================================
[2026-06-13 21:48:05,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:05
[2026-06-13 21:48:06,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:06,348.348 INFO    ] Initializing speech engine...
[2026-06-13 21:48:06,358.358 INFO    ] 2026-06-13 21:48:06
[2026-06-13 21:48:06,561.561 INFO    ] 2026-06-13 21:48:06
[2026-06-13 21:48:06,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:06,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:48:06,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:48:06,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:48:06,965.965 INFO    ] time= 13/06/2026 21:48:06
[2026-06-13 21:48:06,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:48:07,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:48:07,074.074 INFO    ] No existing commands found in stream
[2026-06-13 21:48:12,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:48:12,086.086 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 21:48:13,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:48:13,166.166 INFO    ] Checking for system updates...
[2026-06-13 21:48:13,188.188 INFO    ] 200
[2026-06-13 21:48:13,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:13,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:48:13,221.221 INFO    ] No update needed
[2026-06-13 21:48:13,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 21:48:13,242.242 INFO    ] 200
[2026-06-13 21:48:13,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:13,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:48:13,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:48:13,410.410 INFO    ] No camera update needed
[2026-06-13 21:48:13,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:48:13,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:13,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:13,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:15,460.460 INFO    ] ================================================
[2026-06-13 21:48:15,475.475 INFO    ] Launching Daemon at Sat Jun 13 21:48:15 IST 2026
[2026-06-13 21:48:15,485.485 INFO    ] ================================================
[2026-06-13 21:48:15,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:15
[2026-06-13 21:48:16,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:16,301.301 INFO    ] Initializing speech engine...
[2026-06-13 21:48:16,306.306 INFO    ] 2026-06-13 21:48:16
[2026-06-13 21:48:16,511.511 INFO    ] 2026-06-13 21:48:16
[2026-06-13 21:48:16,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:16,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:48:16,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:48:16,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:48:16,917.917 INFO    ] time= 13/06/2026 21:48:16
[2026-06-13 21:48:16,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:48:16,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:48:17,028.028 INFO    ] No existing commands found in stream
[2026-06-13 21:48:22,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:48:22,042.042 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 21:48:24,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:48:24,151.151 INFO    ] Checking for system updates...
[2026-06-13 21:48:24,173.173 INFO    ] 200
[2026-06-13 21:48:24,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:24,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:24,207.207 INFO    ] No update needed
[2026-06-13 21:48:24,208.208 INFO    ] Checking for camera pi updates...
[2026-06-13 21:48:24,229.229 INFO    ] 200
[2026-06-13 21:48:24,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:24,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:48:24,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:24,295.295 INFO    ] No camera update needed
[2026-06-13 21:48:24,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:48:24,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:24,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:24,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:26,343.343 INFO    ] ================================================
[2026-06-13 21:48:26,359.359 INFO    ] Launching Daemon at Sat Jun 13 21:48:26 IST 2026
[2026-06-13 21:48:26,370.370 INFO    ] ================================================
[2026-06-13 21:48:26,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:26
[2026-06-13 21:48:27,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:27,194.194 INFO    ] Initializing speech engine...
[2026-06-13 21:48:27,196.196 INFO    ] 2026-06-13 21:48:27
[2026-06-13 21:48:27,413.413 INFO    ] 2026-06-13 21:48:27
[2026-06-13 21:48:27,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:48:27,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:48:27,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:48:27,695.695 INFO    ] time= 13/06/2026 21:48:27
[2026-06-13 21:48:27,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:48:27,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:48:27,785.785 INFO    ] No existing commands found in stream
[2026-06-13 21:48:32,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:48:32,820.820 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 21:48:34,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:48:34,115.115 INFO    ] Checking for system updates...
[2026-06-13 21:48:34,139.139 INFO    ] 200
[2026-06-13 21:48:34,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:34,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:34,172.172 INFO    ] No update needed
[2026-06-13 21:48:34,174.174 INFO    ] Checking for camera pi updates...
[2026-06-13 21:48:34,193.193 INFO    ] 200
[2026-06-13 21:48:34,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:34,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:48:34,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:34,267.267 INFO    ] No camera update needed
[2026-06-13 21:48:34,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:48:34,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:34,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:34,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:36,316.316 INFO    ] ================================================
[2026-06-13 21:48:36,331.331 INFO    ] Launching Daemon at Sat Jun 13 21:48:36 IST 2026
[2026-06-13 21:48:36,343.343 INFO    ] ================================================
[2026-06-13 21:48:36,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:36
[2026-06-13 21:48:37,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:37,656.656 INFO    ] Initializing speech engine...
[2026-06-13 21:48:37,662.662 INFO    ] 2026-06-13 21:48:37
[2026-06-13 21:48:37,909.909 INFO    ] 2026-06-13 21:48:37
[2026-06-13 21:48:37,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:48:38,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:48:38,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:48:38,280.280 INFO    ] time= 13/06/2026 21:48:38
[2026-06-13 21:48:38,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:48:38,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:48:38,356.356 INFO    ] No existing commands found in stream
[2026-06-13 21:48:43,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:48:43,371.371 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 21:48:45,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:48:45,504.504 INFO    ] Checking for system updates...
[2026-06-13 21:48:45,525.525 INFO    ] 200
[2026-06-13 21:48:45,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:45,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:48:45,560.560 INFO    ] No update needed
[2026-06-13 21:48:45,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 21:48:45,581.581 INFO    ] 200
[2026-06-13 21:48:45,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:45,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:48:45,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:48:45,648.648 INFO    ] No camera update needed
[2026-06-13 21:48:45,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:48:45,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:45,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:45,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:47,693.693 INFO    ] ================================================
[2026-06-13 21:48:47,709.709 INFO    ] Launching Daemon at Sat Jun 13 21:48:47 IST 2026
[2026-06-13 21:48:47,720.720 INFO    ] ================================================
[2026-06-13 21:48:48,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:48:48
[2026-06-13 21:48:48,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:48:48,578.578 INFO    ] Initializing speech engine...
[2026-06-13 21:48:48,584.584 INFO    ] 2026-06-13 21:48:48
[2026-06-13 21:48:48,793.793 INFO    ] 2026-06-13 21:48:48
[2026-06-13 21:48:48,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:48:49,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:48:49,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:48:49,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:48:49,220.220 INFO    ] time= 13/06/2026 21:48:49
[2026-06-13 21:48:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:48:49,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:48:49,317.317 INFO    ] No existing commands found in stream
[2026-06-13 21:48:54,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:48:54,331.331 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 21:48:57,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:48:57,432.432 INFO    ] Checking for system updates...
[2026-06-13 21:48:57,453.453 INFO    ] 200
[2026-06-13 21:48:57,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:57,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:57,488.488 INFO    ] No update needed
[2026-06-13 21:48:57,490.490 INFO    ] Checking for camera pi updates...
[2026-06-13 21:48:57,509.509 INFO    ] 200
[2026-06-13 21:48:57,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:48:57,535.535 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:48:57,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:48:57,580.580 INFO    ] No camera update needed
[2026-06-13 21:48:57,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:48:57,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:48:57,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:48:57,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:48:59,621.621 INFO    ] ================================================
[2026-06-13 21:48:59,639.639 INFO    ] Launching Daemon at Sat Jun 13 21:48:59 IST 2026
[2026-06-13 21:48:59,651.651 INFO    ] ================================================
[2026-06-13 21:49:00,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:00
[2026-06-13 21:49:00,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:01,095.095 INFO    ] Initializing speech engine...
[2026-06-13 21:49:01,103.103 INFO    ] 2026-06-13 21:49:01
[2026-06-13 21:49:01,355.355 INFO    ] 2026-06-13 21:49:01
[2026-06-13 21:49:01,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:01,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:01,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:01,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:01,756.756 INFO    ] time= 13/06/2026 21:49:01
[2026-06-13 21:49:01,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:01,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:01,870.870 INFO    ] No existing commands found in stream
[2026-06-13 21:49:06,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:49:06,913.913 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 21:49:09,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:49:09,301.301 INFO    ] Checking for system updates...
[2026-06-13 21:49:09,322.322 INFO    ] 200
[2026-06-13 21:49:09,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:09,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:09,356.356 INFO    ] No update needed
[2026-06-13 21:49:09,357.357 INFO    ] Checking for camera pi updates...
[2026-06-13 21:49:09,379.379 INFO    ] 200
[2026-06-13 21:49:09,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:09,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:49:09,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:09,443.443 INFO    ] No camera update needed
[2026-06-13 21:49:09,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:49:09,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:49:09,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:49:09,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:49:11,491.491 INFO    ] ================================================
[2026-06-13 21:49:11,506.506 INFO    ] Launching Daemon at Sat Jun 13 21:49:11 IST 2026
[2026-06-13 21:49:11,517.517 INFO    ] ================================================
[2026-06-13 21:49:11,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:11
[2026-06-13 21:49:12,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:12,386.386 INFO    ] Initializing speech engine...
[2026-06-13 21:49:12,392.392 INFO    ] 2026-06-13 21:49:12
[2026-06-13 21:49:12,601.601 INFO    ] 2026-06-13 21:49:12
[2026-06-13 21:49:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:12,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:12,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:12,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:13,025.025 INFO    ] time= 13/06/2026 21:49:12
[2026-06-13 21:49:13,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:13,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:13,129.129 INFO    ] No existing commands found in stream
[2026-06-13 21:49:18,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:49:18,147.147 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 21:49:19,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:49:19,141.141 INFO    ] Checking for system updates...
[2026-06-13 21:49:19,163.163 INFO    ] 200
[2026-06-13 21:49:19,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:19,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:49:19,197.197 INFO    ] No update needed
[2026-06-13 21:49:19,198.198 INFO    ] Checking for camera pi updates...
[2026-06-13 21:49:19,218.218 INFO    ] 200
[2026-06-13 21:49:19,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:19,244.244 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:49:19,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:19,292.292 INFO    ] No camera update needed
[2026-06-13 21:49:19,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:49:19,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:49:19,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:49:19,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:49:21,341.341 INFO    ] ================================================
[2026-06-13 21:49:21,356.356 INFO    ] Launching Daemon at Sat Jun 13 21:49:21 IST 2026
[2026-06-13 21:49:21,367.367 INFO    ] ================================================
[2026-06-13 21:49:21,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:21
[2026-06-13 21:49:22,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:22,208.208 INFO    ] Initializing speech engine...
[2026-06-13 21:49:22,213.213 INFO    ] 2026-06-13 21:49:22
[2026-06-13 21:49:22,419.419 INFO    ] 2026-06-13 21:49:22
[2026-06-13 21:49:22,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:22,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:22,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:22,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:22,768.768 INFO    ] time= 13/06/2026 21:49:22
[2026-06-13 21:49:22,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:22,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:22,941.941 INFO    ] No existing commands found in stream
[2026-06-13 21:49:27,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:49:27,969.969 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 21:49:32,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:49:32,181.181 INFO    ] Checking for system updates...
[2026-06-13 21:49:32,204.204 INFO    ] 200
[2026-06-13 21:49:32,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:32,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:32,242.242 INFO    ] No update needed
[2026-06-13 21:49:32,244.244 INFO    ] Checking for camera pi updates...
[2026-06-13 21:49:32,267.267 INFO    ] 200
[2026-06-13 21:49:32,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:32,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:49:32,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:32,321.321 INFO    ] No camera update needed
[2026-06-13 21:49:32,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:49:32,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:49:32,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:49:32,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:49:34,373.373 INFO    ] ================================================
[2026-06-13 21:49:34,389.389 INFO    ] Launching Daemon at Sat Jun 13 21:49:34 IST 2026
[2026-06-13 21:49:34,400.400 INFO    ] ================================================
[2026-06-13 21:49:34,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:34
[2026-06-13 21:49:35,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:35,179.179 INFO    ] Initializing speech engine...
[2026-06-13 21:49:35,182.182 INFO    ] 2026-06-13 21:49:35
[2026-06-13 21:49:35,387.387 INFO    ] 2026-06-13 21:49:35
[2026-06-13 21:49:35,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:35,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:35,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:35,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:35,794.794 INFO    ] time= 13/06/2026 21:49:35
[2026-06-13 21:49:35,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:35,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:35,977.977 INFO    ] No existing commands found in stream
[2026-06-13 21:49:40,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:49:40,990.990 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 21:49:41,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:49:41,821.821 INFO    ] Checking for system updates...
[2026-06-13 21:49:41,841.841 INFO    ] 200
[2026-06-13 21:49:41,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:41,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:41,875.875 INFO    ] No update needed
[2026-06-13 21:49:41,876.876 INFO    ] Checking for camera pi updates...
[2026-06-13 21:49:41,898.898 INFO    ] 200
[2026-06-13 21:49:41,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:41,923.923 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:49:41,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:41,963.963 INFO    ] No camera update needed
[2026-06-13 21:49:41,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:49:41,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:49:41,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:49:41,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:49:44,010.010 INFO    ] ================================================
[2026-06-13 21:49:44,025.025 INFO    ] Launching Daemon at Sat Jun 13 21:49:44 IST 2026
[2026-06-13 21:49:44,037.037 INFO    ] ================================================
[2026-06-13 21:49:44,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:44
[2026-06-13 21:49:44,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:44,859.859 INFO    ] Initializing speech engine...
[2026-06-13 21:49:44,872.872 INFO    ] 2026-06-13 21:49:44
[2026-06-13 21:49:45,092.092 INFO    ] 2026-06-13 21:49:45
[2026-06-13 21:49:45,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:45,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:45,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:45,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:45,473.473 INFO    ] time= 13/06/2026 21:49:45
[2026-06-13 21:49:45,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:45,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:45,656.656 INFO    ] No existing commands found in stream
[2026-06-13 21:49:50,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:49:50,670.670 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 21:49:54,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:49:54,680.680 INFO    ] Checking for system updates...
[2026-06-13 21:49:54,701.701 INFO    ] 200
[2026-06-13 21:49:54,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:54,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:54,735.735 INFO    ] No update needed
[2026-06-13 21:49:54,737.737 INFO    ] Checking for camera pi updates...
[2026-06-13 21:49:54,756.756 INFO    ] 200
[2026-06-13 21:49:54,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:49:54,782.782 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:49:54,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:49:54,824.824 INFO    ] No camera update needed
[2026-06-13 21:49:54,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:49:54,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:49:54,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:49:54,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:49:56,870.870 INFO    ] ================================================
[2026-06-13 21:49:56,886.886 INFO    ] Launching Daemon at Sat Jun 13 21:49:56 IST 2026
[2026-06-13 21:49:56,897.897 INFO    ] ================================================
[2026-06-13 21:49:57,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:49:57
[2026-06-13 21:49:57,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:49:57,682.682 INFO    ] Initializing speech engine...
[2026-06-13 21:49:57,689.689 INFO    ] 2026-06-13 21:49:57
[2026-06-13 21:49:57,888.888 INFO    ] 2026-06-13 21:49:57
[2026-06-13 21:49:57,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:49:58,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:49:58,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:49:58,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:49:58,323.323 INFO    ] time= 13/06/2026 21:49:58
[2026-06-13 21:49:58,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:49:58,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:49:58,483.483 INFO    ] No existing commands found in stream
[2026-06-13 21:50:03,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:50:03,496.496 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 21:50:08,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:50:08,100.100 INFO    ] Checking for system updates...
[2026-06-13 21:50:08,136.136 INFO    ] 200
[2026-06-13 21:50:08,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:08,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:50:08,185.185 INFO    ] No update needed
[2026-06-13 21:50:08,186.186 INFO    ] Checking for camera pi updates...
[2026-06-13 21:50:08,205.205 INFO    ] 200
[2026-06-13 21:50:08,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:08,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:50:08,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:50:08,272.272 INFO    ] No camera update needed
[2026-06-13 21:50:08,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:50:08,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:50:08,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:50:08,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:50:10,321.321 INFO    ] ================================================
[2026-06-13 21:50:10,337.337 INFO    ] Launching Daemon at Sat Jun 13 21:50:10 IST 2026
[2026-06-13 21:50:10,348.348 INFO    ] ================================================
[2026-06-13 21:50:10,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:50:10
[2026-06-13 21:50:11,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:50:11,150.150 INFO    ] Initializing speech engine...
[2026-06-13 21:50:11,155.155 INFO    ] 2026-06-13 21:50:11
[2026-06-13 21:50:11,360.360 INFO    ] 2026-06-13 21:50:11
[2026-06-13 21:50:11,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:50:11,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:50:11,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:50:11,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:50:11,774.774 INFO    ] time= 13/06/2026 21:50:11
[2026-06-13 21:50:11,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:50:11,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:50:11,875.875 INFO    ] No existing commands found in stream
[2026-06-13 21:50:16,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:50:16,889.889 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 21:50:20,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:50:20,595.595 INFO    ] Checking for system updates...
[2026-06-13 21:50:20,616.616 INFO    ] 200
[2026-06-13 21:50:20,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:20,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:50:20,650.650 INFO    ] No update needed
[2026-06-13 21:50:20,652.652 INFO    ] Checking for camera pi updates...
[2026-06-13 21:50:20,671.671 INFO    ] 200
[2026-06-13 21:50:20,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:20,695.695 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:50:20,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:50:20,843.843 INFO    ] No camera update needed
[2026-06-13 21:50:20,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:50:20,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:50:20,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:50:20,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:50:22,892.892 INFO    ] ================================================
[2026-06-13 21:50:22,907.907 INFO    ] Launching Daemon at Sat Jun 13 21:50:22 IST 2026
[2026-06-13 21:50:22,918.918 INFO    ] ================================================
[2026-06-13 21:50:23,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:50:23
[2026-06-13 21:50:24,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:50:24,433.433 INFO    ] Initializing speech engine...
[2026-06-13 21:50:24,438.438 INFO    ] 2026-06-13 21:50:24
[2026-06-13 21:50:24,723.723 INFO    ] 2026-06-13 21:50:24
[2026-06-13 21:50:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:50:24,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:50:24,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:50:25,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:50:25,155.155 INFO    ] time= 13/06/2026 21:50:25
[2026-06-13 21:50:25,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:50:25,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:50:25,392.392 INFO    ] No existing commands found in stream
[2026-06-13 21:50:30,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:50:30,429.429 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 21:50:43,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:50:43,931.931 INFO    ] Checking for system updates...
[2026-06-13 21:50:43,967.967 INFO    ] 200
[2026-06-13 21:50:43,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:44,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:50:44,026.026 INFO    ] No update needed
[2026-06-13 21:50:44,028.028 INFO    ] Checking for camera pi updates...
[2026-06-13 21:50:44,057.057 INFO    ] 200
[2026-06-13 21:50:44,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:50:44,082.082 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:50:44,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:50:44,124.124 INFO    ] No camera update needed
[2026-06-13 21:50:44,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:50:44,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:50:44,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:50:44,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:50:46,171.171 INFO    ] ================================================
[2026-06-13 21:50:46,186.186 INFO    ] Launching Daemon at Sat Jun 13 21:50:46 IST 2026
[2026-06-13 21:50:46,197.197 INFO    ] ================================================
[2026-06-13 21:50:46,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:50:46
[2026-06-13 21:50:46,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:50:47,014.014 INFO    ] Initializing speech engine...
[2026-06-13 21:50:47,023.023 INFO    ] 2026-06-13 21:50:47
[2026-06-13 21:50:47,239.239 INFO    ] 2026-06-13 21:50:47
[2026-06-13 21:50:47,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:50:47,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:50:47,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:50:47,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:50:47,610.610 INFO    ] time= 13/06/2026 21:50:47
[2026-06-13 21:50:47,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:50:47,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:50:47,787.787 INFO    ] No existing commands found in stream
[2026-06-13 21:50:52,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:50:52,801.801 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 21:51:06,511.511 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 21:51:06,539.539 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-13 21:51:06,548.548 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-13 21:51:06,567.567 INFO    ] None
[2026-06-13 21:51:06,570.570 INFO    ] Checking for system updates...
[2026-06-13 21:51:06,593.593 INFO    ] 200
[2026-06-13 21:51:06,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:06,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:06,628.628 INFO    ] No update needed
[2026-06-13 21:51:06,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 21:51:06,649.649 INFO    ] 200
[2026-06-13 21:51:06,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:06,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:51:06,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:06,718.718 INFO    ] No camera update needed
[2026-06-13 21:51:06,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:51:06,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:51:06,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:51:06,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:51:08,767.767 INFO    ] ================================================
[2026-06-13 21:51:08,783.783 INFO    ] Launching Daemon at Sat Jun 13 21:51:08 IST 2026
[2026-06-13 21:51:08,794.794 INFO    ] ================================================
[2026-06-13 21:51:09,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:51:09
[2026-06-13 21:51:09,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:51:09,576.576 INFO    ] Initializing speech engine...
[2026-06-13 21:51:09,579.579 INFO    ] 2026-06-13 21:51:09
[2026-06-13 21:51:09,807.807 INFO    ] 2026-06-13 21:51:09
[2026-06-13 21:51:09,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:51:10,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:51:10,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:51:10,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:51:10,231.231 INFO    ] time= 13/06/2026 21:51:10
[2026-06-13 21:51:10,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:51:10,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:51:10,358.358 INFO    ] No existing commands found in stream
[2026-06-13 21:51:15,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:51:15,370.370 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 21:51:20,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:51:20,151.151 INFO    ] Checking for system updates...
[2026-06-13 21:51:20,202.202 INFO    ] 200
[2026-06-13 21:51:20,205.205 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:20,208.208 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-13 21:51:20,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 21:51:20,259.259 INFO    ] 200
[2026-06-13 21:51:20,262.262 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:20,265.265 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-13 21:51:20,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:51:20,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:51:20,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:51:20,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:51:22,329.329 INFO    ] ================================================
[2026-06-13 21:51:22,344.344 INFO    ] Launching Daemon at Sat Jun 13 21:51:22 IST 2026
[2026-06-13 21:51:22,354.354 INFO    ] ================================================
[2026-06-13 21:51:22,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:51:22
[2026-06-13 21:51:23,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:51:23,276.276 INFO    ] Initializing speech engine...
[2026-06-13 21:51:23,281.281 INFO    ] 2026-06-13 21:51:23
[2026-06-13 21:51:23,510.510 INFO    ] 2026-06-13 21:51:23
[2026-06-13 21:51:23,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:51:23,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:51:23,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:51:23,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:51:23,935.935 INFO    ] time= 13/06/2026 21:51:23
[2026-06-13 21:51:23,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:51:23,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:51:24,068.068 INFO    ] No existing commands found in stream
[2026-06-13 21:51:29,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:51:29,082.082 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 21:51:30,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:51:30,667.667 INFO    ] Checking for system updates...
[2026-06-13 21:51:30,689.689 INFO    ] 200
[2026-06-13 21:51:30,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:30,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:51:30,722.722 INFO    ] No update needed
[2026-06-13 21:51:30,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 21:51:30,744.744 INFO    ] 200
[2026-06-13 21:51:30,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:30,771.771 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:51:30,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:51:30,817.817 INFO    ] No camera update needed
[2026-06-13 21:51:30,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:51:30,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:51:30,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:51:30,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:51:32,860.860 INFO    ] ================================================
[2026-06-13 21:51:32,876.876 INFO    ] Launching Daemon at Sat Jun 13 21:51:32 IST 2026
[2026-06-13 21:51:32,887.887 INFO    ] ================================================
[2026-06-13 21:51:33,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:51:33
[2026-06-13 21:51:33,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:51:33,726.726 INFO    ] Initializing speech engine...
[2026-06-13 21:51:33,730.730 INFO    ] 2026-06-13 21:51:33
[2026-06-13 21:51:33,937.937 INFO    ] 2026-06-13 21:51:33
[2026-06-13 21:51:33,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:51:34,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:51:34,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:51:34,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:51:34,353.353 INFO    ] time= 13/06/2026 21:51:34
[2026-06-13 21:51:34,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:51:34,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:51:34,453.453 INFO    ] No existing commands found in stream
[2026-06-13 21:51:39,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:51:39,479.479 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-13 21:51:42,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:51:42,176.176 INFO    ] Checking for system updates...
[2026-06-13 21:51:42,217.217 INFO    ] 200
[2026-06-13 21:51:42,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:42,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:42,283.283 INFO    ] No update needed
[2026-06-13 21:51:42,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 21:51:42,324.324 INFO    ] 200
[2026-06-13 21:51:42,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:42,374.374 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:51:42,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:42,423.423 INFO    ] No camera update needed
[2026-06-13 21:51:42,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:51:42,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:51:42,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:51:42,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:51:44,490.490 INFO    ] ================================================
[2026-06-13 21:51:44,507.507 INFO    ] Launching Daemon at Sat Jun 13 21:51:44 IST 2026
[2026-06-13 21:51:44,518.518 INFO    ] ================================================
[2026-06-13 21:51:44,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:51:44
[2026-06-13 21:51:45,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:51:45,452.452 INFO    ] Initializing speech engine...
[2026-06-13 21:51:45,458.458 INFO    ] 2026-06-13 21:51:45
[2026-06-13 21:51:45,649.649 INFO    ] 2026-06-13 21:51:45
[2026-06-13 21:51:45,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:51:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:51:45,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:51:45,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:51:45,946.946 INFO    ] time= 13/06/2026 21:51:45
[2026-06-13 21:51:45,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:51:45,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:51:46,071.071 INFO    ] No existing commands found in stream
[2026-06-13 21:51:51,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:51:51,096.096 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 21:51:54,519.519 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 21:51:54,544.544 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d8e7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 21:51:54,553.553 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d8e7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 21:51:54,562.562 INFO    ] None
[2026-06-13 21:51:54,564.564 INFO    ] Checking for system updates...
[2026-06-13 21:51:54,605.605 INFO    ] 200
[2026-06-13 21:51:54,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:54,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:54,645.645 INFO    ] No update needed
[2026-06-13 21:51:54,646.646 INFO    ] Checking for camera pi updates...
[2026-06-13 21:51:54,666.666 INFO    ] 200
[2026-06-13 21:51:54,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:51:54,691.691 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:51:55,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:51:55,357.357 INFO    ] No camera update needed
[2026-06-13 21:51:55,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:51:55,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:51:55,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:51:55,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:51:57,405.405 INFO    ] ================================================
[2026-06-13 21:51:57,421.421 INFO    ] Launching Daemon at Sat Jun 13 21:51:57 IST 2026
[2026-06-13 21:51:57,432.432 INFO    ] ================================================
[2026-06-13 21:51:57,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:51:57
[2026-06-13 21:51:58,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:51:58,275.275 INFO    ] Initializing speech engine...
[2026-06-13 21:51:58,280.280 INFO    ] 2026-06-13 21:51:58
[2026-06-13 21:51:58,494.494 INFO    ] 2026-06-13 21:51:58
[2026-06-13 21:51:58,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:51:58,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:51:58,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:51:58,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:51:58,914.914 INFO    ] time= 13/06/2026 21:51:58
[2026-06-13 21:51:58,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:51:58,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:51:59,027.027 INFO    ] No existing commands found in stream
[2026-06-13 21:52:04,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:04,042.042 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 21:52:06,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:52:06,791.791 INFO    ] Checking for system updates...
[2026-06-13 21:52:06,813.813 INFO    ] 200
[2026-06-13 21:52:06,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:06,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:06,846.846 INFO    ] No update needed
[2026-06-13 21:52:06,848.848 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:06,868.868 INFO    ] 200
[2026-06-13 21:52:06,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:06,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:06,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:06,941.941 INFO    ] No camera update needed
[2026-06-13 21:52:06,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:06,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:06,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:52:08,990.990 INFO    ] ================================================
[2026-06-13 21:52:09,005.005 INFO    ] Launching Daemon at Sat Jun 13 21:52:08 IST 2026
[2026-06-13 21:52:09,016.016 INFO    ] ================================================
[2026-06-13 21:52:09,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:52:09
[2026-06-13 21:52:09,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:52:09,807.807 INFO    ] Initializing speech engine...
[2026-06-13 21:52:09,812.812 INFO    ] 2026-06-13 21:52:09
[2026-06-13 21:52:10,016.016 INFO    ] 2026-06-13 21:52:09
[2026-06-13 21:52:10,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:52:10,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:52:10,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:52:10,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:52:10,380.380 INFO    ] time= 13/06/2026 21:52:10
[2026-06-13 21:52:10,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:52:10,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:52:10,588.588 INFO    ] No existing commands found in stream
[2026-06-13 21:52:15,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:15,604.604 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 21:52:19,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:52:19,493.493 INFO    ] Checking for system updates...
[2026-06-13 21:52:19,513.513 INFO    ] 200
[2026-06-13 21:52:19,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:19,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:19,546.546 INFO    ] No update needed
[2026-06-13 21:52:19,547.547 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:19,567.567 INFO    ] 200
[2026-06-13 21:52:19,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:19,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:19,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:19,635.635 INFO    ] No camera update needed
[2026-06-13 21:52:19,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:19,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:19,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:19,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:52:21,683.683 INFO    ] ================================================
[2026-06-13 21:52:21,698.698 INFO    ] Launching Daemon at Sat Jun 13 21:52:21 IST 2026
[2026-06-13 21:52:21,709.709 INFO    ] ================================================
[2026-06-13 21:52:22,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:52:22
[2026-06-13 21:52:22,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:52:22,524.524 INFO    ] Initializing speech engine...
[2026-06-13 21:52:22,534.534 INFO    ] 2026-06-13 21:52:22
[2026-06-13 21:52:22,738.738 INFO    ] 2026-06-13 21:52:22
[2026-06-13 21:52:22,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:52:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:52:22,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:52:23,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:52:23,132.132 INFO    ] time= 13/06/2026 21:52:23
[2026-06-13 21:52:23,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:52:23,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:52:23,251.251 INFO    ] No existing commands found in stream
[2026-06-13 21:52:28,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:28,263.263 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 21:52:28,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:52:28,970.970 INFO    ] Checking for system updates...
[2026-06-13 21:52:28,991.991 INFO    ] 200
[2026-06-13 21:52:28,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:29,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:29,024.024 INFO    ] No update needed
[2026-06-13 21:52:29,025.025 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:29,044.044 INFO    ] 200
[2026-06-13 21:52:29,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:29,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:29,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:29,116.116 INFO    ] No camera update needed
[2026-06-13 21:52:29,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:29,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:29,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:29,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:52:31,164.164 INFO    ] ================================================
[2026-06-13 21:52:31,180.180 INFO    ] Launching Daemon at Sat Jun 13 21:52:31 IST 2026
[2026-06-13 21:52:31,190.190 INFO    ] ================================================
[2026-06-13 21:52:31,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:52:31
[2026-06-13 21:52:31,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:52:32,088.088 INFO    ] Initializing speech engine...
[2026-06-13 21:52:32,093.093 INFO    ] 2026-06-13 21:52:32
[2026-06-13 21:52:32,372.372 INFO    ] 2026-06-13 21:52:32
[2026-06-13 21:52:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:52:32,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:52:32,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:52:32,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:52:32,742.742 INFO    ] time= 13/06/2026 21:52:32
[2026-06-13 21:52:32,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:52:32,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:52:32,837.837 INFO    ] No existing commands found in stream
[2026-06-13 21:52:37,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:37,852.852 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 21:52:39,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:52:39,412.412 INFO    ] Checking for system updates...
[2026-06-13 21:52:39,432.432 INFO    ] 200
[2026-06-13 21:52:39,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:39,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:39,466.466 INFO    ] No update needed
[2026-06-13 21:52:39,467.467 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:39,488.488 INFO    ] 200
[2026-06-13 21:52:39,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:39,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:39,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:39,553.553 INFO    ] No camera update needed
[2026-06-13 21:52:39,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:39,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:39,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:39,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:52:41,600.600 INFO    ] ================================================
[2026-06-13 21:52:41,615.615 INFO    ] Launching Daemon at Sat Jun 13 21:52:41 IST 2026
[2026-06-13 21:52:41,625.625 INFO    ] ================================================
[2026-06-13 21:52:41,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:52:41
[2026-06-13 21:52:42,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:52:42,399.399 INFO    ] Initializing speech engine...
[2026-06-13 21:52:42,409.409 INFO    ] 2026-06-13 21:52:42
[2026-06-13 21:52:42,617.617 INFO    ] 2026-06-13 21:52:42
[2026-06-13 21:52:42,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:52:42,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:52:42,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:52:42,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:52:43,024.024 INFO    ] time= 13/06/2026 21:52:42
[2026-06-13 21:52:43,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:52:43,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:52:43,141.141 INFO    ] No existing commands found in stream
[2026-06-13 21:52:48,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:48,153.153 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 21:52:48,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:52:48,962.962 INFO    ] Checking for system updates...
[2026-06-13 21:52:48,982.982 INFO    ] 200
[2026-06-13 21:52:48,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:49,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:52:49,015.015 INFO    ] No update needed
[2026-06-13 21:52:49,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:49,036.036 INFO    ] 200
[2026-06-13 21:52:49,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:49,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:49,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:49,098.098 INFO    ] No camera update needed
[2026-06-13 21:52:49,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:49,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:49,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:49,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:52:51,147.147 INFO    ] ================================================
[2026-06-13 21:52:51,162.162 INFO    ] Launching Daemon at Sat Jun 13 21:52:51 IST 2026
[2026-06-13 21:52:51,173.173 INFO    ] ================================================
[2026-06-13 21:52:51,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:52:51
[2026-06-13 21:52:51,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:52:51,940.940 INFO    ] Initializing speech engine...
[2026-06-13 21:52:51,944.944 INFO    ] 2026-06-13 21:52:51
[2026-06-13 21:52:52,175.175 INFO    ] 2026-06-13 21:52:52
[2026-06-13 21:52:52,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:52:52,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:52:52,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:52:52,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:52:52,576.576 INFO    ] time= 13/06/2026 21:52:52
[2026-06-13 21:52:52,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:52:52,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:52:52,691.691 INFO    ] No existing commands found in stream
[2026-06-13 21:52:57,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:52:57,702.702 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 21:52:58,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:52:58,360.360 INFO    ] Checking for system updates...
[2026-06-13 21:52:58,383.383 INFO    ] 200
[2026-06-13 21:52:58,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:58,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:58,416.416 INFO    ] No update needed
[2026-06-13 21:52:58,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 21:52:58,437.437 INFO    ] 200
[2026-06-13 21:52:58,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:52:58,461.461 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:52:58,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:52:58,501.501 INFO    ] No camera update needed
[2026-06-13 21:52:58,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:52:58,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:52:58,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:52:58,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:00,547.547 INFO    ] ================================================
[2026-06-13 21:53:00,562.562 INFO    ] Launching Daemon at Sat Jun 13 21:53:00 IST 2026
[2026-06-13 21:53:00,573.573 INFO    ] ================================================
[2026-06-13 21:53:00,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:00
[2026-06-13 21:53:01,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:01,434.434 INFO    ] Initializing speech engine...
[2026-06-13 21:53:01,446.446 INFO    ] 2026-06-13 21:53:01
[2026-06-13 21:53:01,658.658 INFO    ] 2026-06-13 21:53:01
[2026-06-13 21:53:01,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:01,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:01,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:02,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:02,016.016 INFO    ] time= 13/06/2026 21:53:02
[2026-06-13 21:53:02,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:02,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:02,158.158 INFO    ] No existing commands found in stream
[2026-06-13 21:53:07,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:53:07,207.207 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-13 21:53:09,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:53:09,731.731 INFO    ] Checking for system updates...
[2026-06-13 21:53:09,753.753 INFO    ] 200
[2026-06-13 21:53:09,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:09,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:53:09,786.786 INFO    ] No update needed
[2026-06-13 21:53:09,788.788 INFO    ] Checking for camera pi updates...
[2026-06-13 21:53:09,809.809 INFO    ] 200
[2026-06-13 21:53:09,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:09,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:53:09,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:53:09,882.882 INFO    ] No camera update needed
[2026-06-13 21:53:09,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:53:09,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:53:09,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:53:09,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:11,930.930 INFO    ] ================================================
[2026-06-13 21:53:11,946.946 INFO    ] Launching Daemon at Sat Jun 13 21:53:11 IST 2026
[2026-06-13 21:53:11,956.956 INFO    ] ================================================
[2026-06-13 21:53:12,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:12
[2026-06-13 21:53:12,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:12,753.753 INFO    ] Initializing speech engine...
[2026-06-13 21:53:12,766.766 INFO    ] 2026-06-13 21:53:12
[2026-06-13 21:53:12,984.984 INFO    ] 2026-06-13 21:53:12
[2026-06-13 21:53:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:13,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:13,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:13,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:13,380.380 INFO    ] time= 13/06/2026 21:53:13
[2026-06-13 21:53:13,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:13,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:13,537.537 INFO    ] No existing commands found in stream
[2026-06-13 21:53:18,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:53:18,551.551 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-13 21:53:20,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:53:20,416.416 INFO    ] Checking for system updates...
[2026-06-13 21:53:20,437.437 INFO    ] 200
[2026-06-13 21:53:20,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:20,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:20,470.470 INFO    ] No update needed
[2026-06-13 21:53:20,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 21:53:20,492.492 INFO    ] 200
[2026-06-13 21:53:20,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:20,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:53:20,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:20,560.560 INFO    ] No camera update needed
[2026-06-13 21:53:20,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:53:20,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:53:20,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:53:20,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:22,607.607 INFO    ] ================================================
[2026-06-13 21:53:22,623.623 INFO    ] Launching Daemon at Sat Jun 13 21:53:22 IST 2026
[2026-06-13 21:53:22,634.634 INFO    ] ================================================
[2026-06-13 21:53:22,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:22
[2026-06-13 21:53:23,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:23,457.457 INFO    ] Initializing speech engine...
[2026-06-13 21:53:23,473.473 INFO    ] 2026-06-13 21:53:23
[2026-06-13 21:53:23,723.723 INFO    ] 2026-06-13 21:53:23
[2026-06-13 21:53:23,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:23,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:23,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:24,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:24,102.102 INFO    ] time= 13/06/2026 21:53:24
[2026-06-13 21:53:24,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:24,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:24,285.285 INFO    ] No existing commands found in stream
[2026-06-13 21:53:29,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:53:29,298.298 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 21:53:32,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:53:32,921.921 INFO    ] Checking for system updates...
[2026-06-13 21:53:32,942.942 INFO    ] 200
[2026-06-13 21:53:32,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:32,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:32,975.975 INFO    ] No update needed
[2026-06-13 21:53:32,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 21:53:32,995.995 INFO    ] 200
[2026-06-13 21:53:32,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:33,020.020 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:53:33,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:33,059.059 INFO    ] No camera update needed
[2026-06-13 21:53:33,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:53:33,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:53:33,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:53:33,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:35,110.110 INFO    ] ================================================
[2026-06-13 21:53:35,126.126 INFO    ] Launching Daemon at Sat Jun 13 21:53:35 IST 2026
[2026-06-13 21:53:35,137.137 INFO    ] ================================================
[2026-06-13 21:53:35,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:35
[2026-06-13 21:53:35,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:35,933.933 INFO    ] Initializing speech engine...
[2026-06-13 21:53:35,941.941 INFO    ] 2026-06-13 21:53:35
[2026-06-13 21:53:36,150.150 INFO    ] 2026-06-13 21:53:36
[2026-06-13 21:53:36,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:36,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:36,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:36,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:36,574.574 INFO    ] time= 13/06/2026 21:53:36
[2026-06-13 21:53:36,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:36,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:36,671.671 INFO    ] No existing commands found in stream
[2026-06-13 21:53:41,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:53:41,688.688 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 21:53:42,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:53:42,587.587 INFO    ] Checking for system updates...
[2026-06-13 21:53:42,609.609 INFO    ] 200
[2026-06-13 21:53:42,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:42,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:53:42,645.645 INFO    ] No update needed
[2026-06-13 21:53:42,646.646 INFO    ] Checking for camera pi updates...
[2026-06-13 21:53:42,666.666 INFO    ] 200
[2026-06-13 21:53:42,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:42,690.690 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:53:42,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:53:42,737.737 INFO    ] No camera update needed
[2026-06-13 21:53:42,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:53:42,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:53:42,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:53:42,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:44,786.786 INFO    ] ================================================
[2026-06-13 21:53:44,802.802 INFO    ] Launching Daemon at Sat Jun 13 21:53:44 IST 2026
[2026-06-13 21:53:44,813.813 INFO    ] ================================================
[2026-06-13 21:53:45,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:45
[2026-06-13 21:53:45,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:45,631.631 INFO    ] Initializing speech engine...
[2026-06-13 21:53:45,635.635 INFO    ] 2026-06-13 21:53:45
[2026-06-13 21:53:45,852.852 INFO    ] 2026-06-13 21:53:45
[2026-06-13 21:53:45,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:46,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:46,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:46,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:46,271.271 INFO    ] time= 13/06/2026 21:53:46
[2026-06-13 21:53:46,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:46,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:46,368.368 INFO    ] No existing commands found in stream
[2026-06-13 21:53:51,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:53:51,381.381 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-13 21:53:54,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:53:54,219.219 INFO    ] Checking for system updates...
[2026-06-13 21:53:54,240.240 INFO    ] 200
[2026-06-13 21:53:54,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:54,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:54,276.276 INFO    ] No update needed
[2026-06-13 21:53:54,277.277 INFO    ] Checking for camera pi updates...
[2026-06-13 21:53:54,297.297 INFO    ] 200
[2026-06-13 21:53:54,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:53:54,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:53:54,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:53:54,360.360 INFO    ] No camera update needed
[2026-06-13 21:53:54,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:53:54,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:53:54,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:53:54,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:53:56,412.412 INFO    ] ================================================
[2026-06-13 21:53:56,428.428 INFO    ] Launching Daemon at Sat Jun 13 21:53:56 IST 2026
[2026-06-13 21:53:56,440.440 INFO    ] ================================================
[2026-06-13 21:53:56,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:53:56
[2026-06-13 21:53:57,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:53:57,235.235 INFO    ] Initializing speech engine...
[2026-06-13 21:53:57,240.240 INFO    ] 2026-06-13 21:53:57
[2026-06-13 21:53:57,446.446 INFO    ] 2026-06-13 21:53:57
[2026-06-13 21:53:57,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:53:57,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:53:57,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:53:57,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:53:57,858.858 INFO    ] time= 13/06/2026 21:53:57
[2026-06-13 21:53:57,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:53:57,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:53:57,963.963 INFO    ] No existing commands found in stream
[2026-06-13 21:54:02,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:54:02,976.976 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 21:54:06,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:54:06,961.961 INFO    ] Checking for system updates...
[2026-06-13 21:54:06,984.984 INFO    ] 200
[2026-06-13 21:54:06,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:07,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:54:07,020.020 INFO    ] No update needed
[2026-06-13 21:54:07,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 21:54:07,044.044 INFO    ] 200
[2026-06-13 21:54:07,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:07,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:54:07,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:54:07,112.112 INFO    ] No camera update needed
[2026-06-13 21:54:07,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:54:07,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:54:07,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:54:07,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:54:09,162.162 INFO    ] ================================================
[2026-06-13 21:54:09,178.178 INFO    ] Launching Daemon at Sat Jun 13 21:54:09 IST 2026
[2026-06-13 21:54:09,189.189 INFO    ] ================================================
[2026-06-13 21:54:09,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:54:09
[2026-06-13 21:54:09,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:54:09,977.977 INFO    ] Initializing speech engine...
[2026-06-13 21:54:09,982.982 INFO    ] 2026-06-13 21:54:09
[2026-06-13 21:54:10,193.193 INFO    ] 2026-06-13 21:54:10
[2026-06-13 21:54:10,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:54:10,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:54:10,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:54:10,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:54:10,604.604 INFO    ] time= 13/06/2026 21:54:10
[2026-06-13 21:54:10,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:54:10,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:54:10,713.713 INFO    ] No existing commands found in stream
[2026-06-13 21:54:15,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:54:15,725.725 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 21:54:18,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:54:18,407.407 INFO    ] Checking for system updates...
[2026-06-13 21:54:18,428.428 INFO    ] 200
[2026-06-13 21:54:18,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:18,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:18,461.461 INFO    ] No update needed
[2026-06-13 21:54:18,462.462 INFO    ] Checking for camera pi updates...
[2026-06-13 21:54:18,481.481 INFO    ] 200
[2026-06-13 21:54:18,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:18,506.506 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:54:18,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:18,544.544 INFO    ] No camera update needed
[2026-06-13 21:54:18,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:54:18,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:54:18,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:54:18,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:54:20,592.592 INFO    ] ================================================
[2026-06-13 21:54:20,607.607 INFO    ] Launching Daemon at Sat Jun 13 21:54:20 IST 2026
[2026-06-13 21:54:20,619.619 INFO    ] ================================================
[2026-06-13 21:54:20,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:54:20
[2026-06-13 21:54:21,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:54:21,399.399 INFO    ] Initializing speech engine...
[2026-06-13 21:54:21,404.404 INFO    ] 2026-06-13 21:54:21
[2026-06-13 21:54:21,608.608 INFO    ] 2026-06-13 21:54:21
[2026-06-13 21:54:21,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:54:21,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:54:21,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:54:21,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:54:22,010.010 INFO    ] time= 13/06/2026 21:54:21
[2026-06-13 21:54:22,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:54:22,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:54:22,121.121 INFO    ] No existing commands found in stream
[2026-06-13 21:54:27,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:54:27,132.132 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 21:54:31,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:54:31,331.331 INFO    ] Checking for system updates...
[2026-06-13 21:54:31,352.352 INFO    ] 200
[2026-06-13 21:54:31,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:31,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:31,386.386 INFO    ] No update needed
[2026-06-13 21:54:31,388.388 INFO    ] Checking for camera pi updates...
[2026-06-13 21:54:31,407.407 INFO    ] 200
[2026-06-13 21:54:31,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:31,433.433 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:54:31,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:31,465.465 INFO    ] No camera update needed
[2026-06-13 21:54:31,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:54:31,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:54:31,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:54:31,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:54:33,506.506 INFO    ] ================================================
[2026-06-13 21:54:33,522.522 INFO    ] Launching Daemon at Sat Jun 13 21:54:33 IST 2026
[2026-06-13 21:54:33,533.533 INFO    ] ================================================
[2026-06-13 21:54:33,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:54:33
[2026-06-13 21:54:34,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:54:34,324.324 INFO    ] Initializing speech engine...
[2026-06-13 21:54:34,329.329 INFO    ] 2026-06-13 21:54:34
[2026-06-13 21:54:34,531.531 INFO    ] 2026-06-13 21:54:34
[2026-06-13 21:54:34,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:54:34,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:54:34,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:54:34,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:54:34,946.946 INFO    ] time= 13/06/2026 21:54:34
[2026-06-13 21:54:34,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:54:34,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:54:35,045.045 INFO    ] No existing commands found in stream
[2026-06-13 21:54:40,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:54:40,057.057 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 21:54:43,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:54:43,981.981 INFO    ] Checking for system updates...
[2026-06-13 21:54:44,003.003 INFO    ] 200
[2026-06-13 21:54:44,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:44,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:54:44,036.036 INFO    ] No update needed
[2026-06-13 21:54:44,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 21:54:44,059.059 INFO    ] 200
[2026-06-13 21:54:44,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:44,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:54:44,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:54:44,124.124 INFO    ] No camera update needed
[2026-06-13 21:54:44,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:54:44,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:54:44,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:54:44,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:54:46,174.174 INFO    ] ================================================
[2026-06-13 21:54:46,190.190 INFO    ] Launching Daemon at Sat Jun 13 21:54:46 IST 2026
[2026-06-13 21:54:46,201.201 INFO    ] ================================================
[2026-06-13 21:54:46,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:54:46
[2026-06-13 21:54:46,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:54:47,025.025 INFO    ] Initializing speech engine...
[2026-06-13 21:54:47,031.031 INFO    ] 2026-06-13 21:54:47
[2026-06-13 21:54:47,249.249 INFO    ] 2026-06-13 21:54:47
[2026-06-13 21:54:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:54:47,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:54:47,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:54:47,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:54:47,690.690 INFO    ] time= 13/06/2026 21:54:47
[2026-06-13 21:54:47,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:54:47,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:54:47,806.806 INFO    ] No existing commands found in stream
[2026-06-13 21:54:52,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:54:52,820.820 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 21:54:56,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:54:56,975.975 INFO    ] Checking for system updates...
[2026-06-13 21:54:56,996.996 INFO    ] 200
[2026-06-13 21:54:56,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:57,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:57,030.030 INFO    ] No update needed
[2026-06-13 21:54:57,031.031 INFO    ] Checking for camera pi updates...
[2026-06-13 21:54:57,051.051 INFO    ] 200
[2026-06-13 21:54:57,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:54:57,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:54:57,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:54:57,118.118 INFO    ] No camera update needed
[2026-06-13 21:54:57,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:54:57,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:54:57,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:54:57,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:54:59,166.166 INFO    ] ================================================
[2026-06-13 21:54:59,181.181 INFO    ] Launching Daemon at Sat Jun 13 21:54:59 IST 2026
[2026-06-13 21:54:59,192.192 INFO    ] ================================================
[2026-06-13 21:54:59,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:54:59
[2026-06-13 21:54:59,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:54:59,991.991 INFO    ] Initializing speech engine...
[2026-06-13 21:55:00,004.004 INFO    ] 2026-06-13 21:54:59
[2026-06-13 21:55:00,211.211 INFO    ] 2026-06-13 21:55:00
[2026-06-13 21:55:00,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:00,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:00,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:00,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:00,611.611 INFO    ] time= 13/06/2026 21:55:00
[2026-06-13 21:55:00,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:00,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:00,727.727 INFO    ] No existing commands found in stream
[2026-06-13 21:55:05,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:55:05,739.739 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-13 21:55:07,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:55:07,442.442 INFO    ] Checking for system updates...
[2026-06-13 21:55:07,462.462 INFO    ] 200
[2026-06-13 21:55:07,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:07,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:07,498.498 INFO    ] No update needed
[2026-06-13 21:55:07,499.499 INFO    ] Checking for camera pi updates...
[2026-06-13 21:55:07,519.519 INFO    ] 200
[2026-06-13 21:55:07,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:07,544.544 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:55:07,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:55:07,582.582 INFO    ] No camera update needed
[2026-06-13 21:55:07,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:55:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:55:07,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:55:07,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:55:09,631.631 INFO    ] ================================================
[2026-06-13 21:55:09,647.647 INFO    ] Launching Daemon at Sat Jun 13 21:55:09 IST 2026
[2026-06-13 21:55:09,659.659 INFO    ] ================================================
[2026-06-13 21:55:09,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:55:09
[2026-06-13 21:55:10,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:55:10,442.442 INFO    ] Initializing speech engine...
[2026-06-13 21:55:10,445.445 INFO    ] 2026-06-13 21:55:10
[2026-06-13 21:55:10,673.673 INFO    ] 2026-06-13 21:55:10
[2026-06-13 21:55:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:10,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:10,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:11,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:11,068.068 INFO    ] time= 13/06/2026 21:55:11
[2026-06-13 21:55:11,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:11,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:11,226.226 INFO    ] No existing commands found in stream
[2026-06-13 21:55:16,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:55:16,238.238 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-13 21:55:19,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:55:19,715.715 INFO    ] Checking for system updates...
[2026-06-13 21:55:19,736.736 INFO    ] 200
[2026-06-13 21:55:19,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:19,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:19,773.773 INFO    ] No update needed
[2026-06-13 21:55:19,775.775 INFO    ] Checking for camera pi updates...
[2026-06-13 21:55:19,794.794 INFO    ] 200
[2026-06-13 21:55:19,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:19,819.819 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:55:19,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:19,856.856 INFO    ] No camera update needed
[2026-06-13 21:55:19,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:55:19,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:55:19,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:55:19,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:55:21,903.903 INFO    ] ================================================
[2026-06-13 21:55:21,919.919 INFO    ] Launching Daemon at Sat Jun 13 21:55:21 IST 2026
[2026-06-13 21:55:21,929.929 INFO    ] ================================================
[2026-06-13 21:55:22,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:55:22
[2026-06-13 21:55:22,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:55:22,766.766 INFO    ] Initializing speech engine...
[2026-06-13 21:55:22,772.772 INFO    ] 2026-06-13 21:55:22
[2026-06-13 21:55:22,978.978 INFO    ] 2026-06-13 21:55:22
[2026-06-13 21:55:23,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:23,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:23,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:23,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:23,397.397 INFO    ] time= 13/06/2026 21:55:23
[2026-06-13 21:55:23,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:23,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:23,498.498 INFO    ] No existing commands found in stream
[2026-06-13 21:55:28,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:55:28,515.515 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 21:55:30,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:55:30,617.617 INFO    ] Checking for system updates...
[2026-06-13 21:55:30,638.638 INFO    ] 200
[2026-06-13 21:55:30,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:30,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:30,672.672 INFO    ] No update needed
[2026-06-13 21:55:30,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 21:55:30,692.692 INFO    ] 200
[2026-06-13 21:55:30,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:30,719.719 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:55:30,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:30,764.764 INFO    ] No camera update needed
[2026-06-13 21:55:30,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:55:30,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:55:30,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:55:30,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:55:32,817.817 INFO    ] ================================================
[2026-06-13 21:55:32,832.832 INFO    ] Launching Daemon at Sat Jun 13 21:55:32 IST 2026
[2026-06-13 21:55:32,844.844 INFO    ] ================================================
[2026-06-13 21:55:33,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:55:33
[2026-06-13 21:55:33,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:55:33,655.655 INFO    ] Initializing speech engine...
[2026-06-13 21:55:33,666.666 INFO    ] 2026-06-13 21:55:33
[2026-06-13 21:55:33,883.883 INFO    ] 2026-06-13 21:55:33
[2026-06-13 21:55:33,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:34,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:34,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:34,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:34,302.302 INFO    ] time= 13/06/2026 21:55:34
[2026-06-13 21:55:34,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:34,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:34,432.432 INFO    ] No existing commands found in stream
[2026-06-13 21:55:39,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:55:39,444.444 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 21:55:42,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:55:42,385.385 INFO    ] Checking for system updates...
[2026-06-13 21:55:42,407.407 INFO    ] 200
[2026-06-13 21:55:42,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:42,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:42,440.440 INFO    ] No update needed
[2026-06-13 21:55:42,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 21:55:42,461.461 INFO    ] 200
[2026-06-13 21:55:42,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:42,486.486 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:55:42,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:42,526.526 INFO    ] No camera update needed
[2026-06-13 21:55:42,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:55:42,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:55:42,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:55:42,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:55:44,573.573 INFO    ] ================================================
[2026-06-13 21:55:44,589.589 INFO    ] Launching Daemon at Sat Jun 13 21:55:44 IST 2026
[2026-06-13 21:55:44,600.600 INFO    ] ================================================
[2026-06-13 21:55:44,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:55:44
[2026-06-13 21:55:45,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:55:45,436.436 INFO    ] Initializing speech engine...
[2026-06-13 21:55:45,441.441 INFO    ] 2026-06-13 21:55:45
[2026-06-13 21:55:45,662.662 INFO    ] 2026-06-13 21:55:45
[2026-06-13 21:55:45,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:45,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:45,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:46,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:46,083.083 INFO    ] time= 13/06/2026 21:55:46
[2026-06-13 21:55:46,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:46,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:46,184.184 INFO    ] No existing commands found in stream
[2026-06-13 21:55:51,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:55:51,194.194 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-13 21:55:53,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:55:53,985.985 INFO    ] Checking for system updates...
[2026-06-13 21:55:54,007.007 INFO    ] 200
[2026-06-13 21:55:54,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:54,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:55:54,042.042 INFO    ] No update needed
[2026-06-13 21:55:54,043.043 INFO    ] Checking for camera pi updates...
[2026-06-13 21:55:54,064.064 INFO    ] 200
[2026-06-13 21:55:54,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:55:54,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:55:54,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:55:54,140.140 INFO    ] No camera update needed
[2026-06-13 21:55:54,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:55:54,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:55:54,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:55:54,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:55:56,188.188 INFO    ] ================================================
[2026-06-13 21:55:56,203.203 INFO    ] Launching Daemon at Sat Jun 13 21:55:56 IST 2026
[2026-06-13 21:55:56,214.214 INFO    ] ================================================
[2026-06-13 21:55:56,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:55:56
[2026-06-13 21:55:56,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:55:57,018.018 INFO    ] Initializing speech engine...
[2026-06-13 21:55:57,024.024 INFO    ] 2026-06-13 21:55:57
[2026-06-13 21:55:57,237.237 INFO    ] 2026-06-13 21:55:57
[2026-06-13 21:55:57,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:55:57,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:55:57,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:55:57,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:55:57,653.653 INFO    ] time= 13/06/2026 21:55:57
[2026-06-13 21:55:57,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:55:57,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:55:57,789.789 INFO    ] No existing commands found in stream
[2026-06-13 21:56:02,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:02,801.801 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 21:56:03,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:56:03,765.765 INFO    ] Checking for system updates...
[2026-06-13 21:56:03,786.786 INFO    ] 200
[2026-06-13 21:56:03,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:03,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:03,820.820 INFO    ] No update needed
[2026-06-13 21:56:03,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:03,841.841 INFO    ] 200
[2026-06-13 21:56:03,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:03,865.865 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:04,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:04,007.007 INFO    ] No camera update needed
[2026-06-13 21:56:04,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:04,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:04,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:04,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:56:06,058.058 INFO    ] ================================================
[2026-06-13 21:56:06,075.075 INFO    ] Launching Daemon at Sat Jun 13 21:56:06 IST 2026
[2026-06-13 21:56:06,089.089 INFO    ] ================================================
[2026-06-13 21:56:06,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:56:06
[2026-06-13 21:56:06,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:56:06,865.865 INFO    ] Initializing speech engine...
[2026-06-13 21:56:06,870.870 INFO    ] 2026-06-13 21:56:06
[2026-06-13 21:56:07,096.096 INFO    ] 2026-06-13 21:56:07
[2026-06-13 21:56:07,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:56:07,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:56:07,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:56:07,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:56:07,537.537 INFO    ] time= 13/06/2026 21:56:07
[2026-06-13 21:56:07,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:56:07,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:56:07,646.646 INFO    ] No existing commands found in stream
[2026-06-13 21:56:12,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:12,660.660 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 21:56:16,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:56:16,031.031 INFO    ] Checking for system updates...
[2026-06-13 21:56:16,052.052 INFO    ] 200
[2026-06-13 21:56:16,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:16,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:16,085.085 INFO    ] No update needed
[2026-06-13 21:56:16,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:16,106.106 INFO    ] 200
[2026-06-13 21:56:16,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:16,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:16,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:16,172.172 INFO    ] No camera update needed
[2026-06-13 21:56:16,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:16,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:16,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:16,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:56:18,220.220 INFO    ] ================================================
[2026-06-13 21:56:18,235.235 INFO    ] Launching Daemon at Sat Jun 13 21:56:18 IST 2026
[2026-06-13 21:56:18,246.246 INFO    ] ================================================
[2026-06-13 21:56:18,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:56:18
[2026-06-13 21:56:18,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:56:19,041.041 INFO    ] Initializing speech engine...
[2026-06-13 21:56:19,048.048 INFO    ] 2026-06-13 21:56:19
[2026-06-13 21:56:19,273.273 INFO    ] 2026-06-13 21:56:19
[2026-06-13 21:56:19,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:56:19,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:56:19,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:56:19,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:56:19,696.696 INFO    ] time= 13/06/2026 21:56:19
[2026-06-13 21:56:19,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:56:19,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:56:19,827.827 INFO    ] No existing commands found in stream
[2026-06-13 21:56:24,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:24,841.841 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-13 21:56:25,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:56:25,165.165 INFO    ] Checking for system updates...
[2026-06-13 21:56:25,186.186 INFO    ] 200
[2026-06-13 21:56:25,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:25,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:25,219.219 INFO    ] No update needed
[2026-06-13 21:56:25,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:25,240.240 INFO    ] 200
[2026-06-13 21:56:25,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:25,265.265 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:25,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:25,303.303 INFO    ] No camera update needed
[2026-06-13 21:56:25,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:25,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:25,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:25,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:56:27,350.350 INFO    ] ================================================
[2026-06-13 21:56:27,365.365 INFO    ] Launching Daemon at Sat Jun 13 21:56:27 IST 2026
[2026-06-13 21:56:27,377.377 INFO    ] ================================================
[2026-06-13 21:56:27,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:56:27
[2026-06-13 21:56:28,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:56:28,569.569 INFO    ] Initializing speech engine...
[2026-06-13 21:56:28,576.576 INFO    ] 2026-06-13 21:56:28
[2026-06-13 21:56:28,871.871 INFO    ] 2026-06-13 21:56:28
[2026-06-13 21:56:28,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:56:29,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:56:29,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:56:29,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:56:29,222.222 INFO    ] time= 13/06/2026 21:56:29
[2026-06-13 21:56:29,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:56:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:56:29,305.305 INFO    ] No existing commands found in stream
[2026-06-13 21:56:34,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:34,350.350 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 21:56:35,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:56:35,909.909 INFO    ] Checking for system updates...
[2026-06-13 21:56:35,929.929 INFO    ] 200
[2026-06-13 21:56:35,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:35,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:56:35,963.963 INFO    ] No update needed
[2026-06-13 21:56:35,964.964 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:35,984.984 INFO    ] 200
[2026-06-13 21:56:35,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:36,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:36,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:56:36,051.051 INFO    ] No camera update needed
[2026-06-13 21:56:36,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:36,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:36,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:36,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:56:38,097.097 INFO    ] ================================================
[2026-06-13 21:56:38,113.113 INFO    ] Launching Daemon at Sat Jun 13 21:56:38 IST 2026
[2026-06-13 21:56:38,123.123 INFO    ] ================================================
[2026-06-13 21:56:38,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:56:38
[2026-06-13 21:56:38,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:56:38,925.925 INFO    ] Initializing speech engine...
[2026-06-13 21:56:38,935.935 INFO    ] 2026-06-13 21:56:38
[2026-06-13 21:56:39,174.174 INFO    ] 2026-06-13 21:56:39
[2026-06-13 21:56:39,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:56:39,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:56:39,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:56:39,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:56:39,597.597 INFO    ] time= 13/06/2026 21:56:39
[2026-06-13 21:56:39,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:56:39,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:56:39,686.686 INFO    ] No existing commands found in stream
[2026-06-13 21:56:44,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:44,702.702 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 21:56:47,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:56:47,602.602 INFO    ] Checking for system updates...
[2026-06-13 21:56:47,624.624 INFO    ] 200
[2026-06-13 21:56:47,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:47,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:47,657.657 INFO    ] No update needed
[2026-06-13 21:56:47,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:47,678.678 INFO    ] 200
[2026-06-13 21:56:47,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:47,705.705 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:47,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:47,752.752 INFO    ] No camera update needed
[2026-06-13 21:56:47,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:47,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:47,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:47,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:56:49,803.803 INFO    ] ================================================
[2026-06-13 21:56:49,819.819 INFO    ] Launching Daemon at Sat Jun 13 21:56:49 IST 2026
[2026-06-13 21:56:49,830.830 INFO    ] ================================================
[2026-06-13 21:56:50,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:56:50
[2026-06-13 21:56:50,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:56:50,998.998 INFO    ] Initializing speech engine...
[2026-06-13 21:56:51,023.023 INFO    ] 2026-06-13 21:56:51
[2026-06-13 21:56:51,293.293 INFO    ] 2026-06-13 21:56:51
[2026-06-13 21:56:51,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:56:51,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:56:51,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:56:51,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:56:51,670.670 INFO    ] time= 13/06/2026 21:56:51
[2026-06-13 21:56:51,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:56:51,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:56:51,793.793 INFO    ] No existing commands found in stream
[2026-06-13 21:56:56,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:56:56,808.808 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-13 21:56:58,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:56:58,511.511 INFO    ] Checking for system updates...
[2026-06-13 21:56:58,532.532 INFO    ] 200
[2026-06-13 21:56:58,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:58,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:56:58,565.565 INFO    ] No update needed
[2026-06-13 21:56:58,566.566 INFO    ] Checking for camera pi updates...
[2026-06-13 21:56:58,586.586 INFO    ] 200
[2026-06-13 21:56:58,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:56:58,611.611 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:56:58,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:56:58,652.652 INFO    ] No camera update needed
[2026-06-13 21:56:58,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:56:58,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:56:58,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:56:58,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:00,700.700 INFO    ] ================================================
[2026-06-13 21:57:00,716.716 INFO    ] Launching Daemon at Sat Jun 13 21:57:00 IST 2026
[2026-06-13 21:57:00,727.727 INFO    ] ================================================
[2026-06-13 21:57:01,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:01
[2026-06-13 21:57:01,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:57:01,921.921 INFO    ] Initializing speech engine...
[2026-06-13 21:57:01,940.940 INFO    ] 2026-06-13 21:57:01
[2026-06-13 21:57:02,246.246 INFO    ] 2026-06-13 21:57:02
[2026-06-13 21:57:02,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:57:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:57:02,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:57:02,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:57:02,627.627 INFO    ] time= 13/06/2026 21:57:02
[2026-06-13 21:57:02,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:57:02,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:57:02,745.745 INFO    ] No existing commands found in stream
[2026-06-13 21:57:07,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:57:07,762.762 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 21:57:11,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:57:11,055.055 INFO    ] Checking for system updates...
[2026-06-13 21:57:11,076.076 INFO    ] 200
[2026-06-13 21:57:11,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:11,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:11,110.110 INFO    ] No update needed
[2026-06-13 21:57:11,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 21:57:11,131.131 INFO    ] 200
[2026-06-13 21:57:11,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:11,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:57:11,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:11,194.194 INFO    ] No camera update needed
[2026-06-13 21:57:11,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:57:11,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:57:11,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:57:11,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:13,243.243 INFO    ] ================================================
[2026-06-13 21:57:13,259.259 INFO    ] Launching Daemon at Sat Jun 13 21:57:13 IST 2026
[2026-06-13 21:57:13,270.270 INFO    ] ================================================
[2026-06-13 21:57:13,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:13
[2026-06-13 21:57:13,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:57:14,094.094 INFO    ] Initializing speech engine...
[2026-06-13 21:57:14,100.100 INFO    ] 2026-06-13 21:57:14
[2026-06-13 21:57:14,308.308 INFO    ] 2026-06-13 21:57:14
[2026-06-13 21:57:14,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:57:14,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:57:14,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:57:14,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:57:14,716.716 INFO    ] time= 13/06/2026 21:57:14
[2026-06-13 21:57:14,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:57:14,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:57:14,826.826 INFO    ] No existing commands found in stream
[2026-06-13 21:57:19,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:57:19,839.839 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 21:57:23,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 21:57:23,237.237 INFO    ] Checking for system updates...
[2026-06-13 21:57:23,257.257 INFO    ] 200
[2026-06-13 21:57:23,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:23,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:23,291.291 INFO    ] No update needed
[2026-06-13 21:57:23,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 21:57:23,312.312 INFO    ] 200
[2026-06-13 21:57:23,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:23,340.340 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:57:23,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:23,380.380 INFO    ] No camera update needed
[2026-06-13 21:57:23,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:57:23,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:57:23,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:57:23,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:25,428.428 INFO    ] ================================================
[2026-06-13 21:57:25,444.444 INFO    ] Launching Daemon at Sat Jun 13 21:57:25 IST 2026
[2026-06-13 21:57:25,455.455 INFO    ] ================================================
[2026-06-13 21:57:25,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:25
[2026-06-13 21:57:26,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:57:26,235.235 INFO    ] Initializing speech engine...
[2026-06-13 21:57:26,240.240 INFO    ] 2026-06-13 21:57:26
[2026-06-13 21:57:26,469.469 INFO    ] 2026-06-13 21:57:26
[2026-06-13 21:57:26,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:57:26,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:57:26,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:57:26,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:57:26,913.913 INFO    ] time= 13/06/2026 21:57:26
[2026-06-13 21:57:26,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:57:26,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:57:27,024.024 INFO    ] No existing commands found in stream
[2026-06-13 21:57:32,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:57:32,031.031 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 21:57:32,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:57:32,638.638 INFO    ] Checking for system updates...
[2026-06-13 21:57:32,659.659 INFO    ] 200
[2026-06-13 21:57:32,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:32,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:32,693.693 INFO    ] No update needed
[2026-06-13 21:57:32,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 21:57:32,714.714 INFO    ] 200
[2026-06-13 21:57:32,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:32,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:57:32,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:32,769.769 INFO    ] No camera update needed
[2026-06-13 21:57:32,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:57:32,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:57:32,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:57:32,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:34,816.816 INFO    ] ================================================
[2026-06-13 21:57:34,832.832 INFO    ] Launching Daemon at Sat Jun 13 21:57:34 IST 2026
[2026-06-13 21:57:34,843.843 INFO    ] ================================================
[2026-06-13 21:57:35,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:35
[2026-06-13 21:57:35,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:57:36,178.178 INFO    ] Initializing speech engine...
[2026-06-13 21:57:36,185.185 INFO    ] 2026-06-13 21:57:36
[2026-06-13 21:57:36,442.442 INFO    ] 2026-06-13 21:57:36
[2026-06-13 21:57:36,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:57:36,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:57:36,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:57:36,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:57:36,867.867 INFO    ] time= 13/06/2026 21:57:36
[2026-06-13 21:57:36,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:57:36,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:57:37,109.109 INFO    ] No existing commands found in stream
[2026-06-13 21:57:42,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:57:42,144.144 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 21:57:46,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 21:57:46,401.401 INFO    ] Checking for system updates...
[2026-06-13 21:57:46,421.421 INFO    ] 200
[2026-06-13 21:57:46,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:46,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:57:46,456.456 INFO    ] No update needed
[2026-06-13 21:57:46,457.457 INFO    ] Checking for camera pi updates...
[2026-06-13 21:57:46,479.479 INFO    ] 200
[2026-06-13 21:57:46,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:46,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:57:46,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:57:46,546.546 INFO    ] No camera update needed
[2026-06-13 21:57:46,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:57:46,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:57:46,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:57:46,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:48,593.593 INFO    ] ================================================
[2026-06-13 21:57:48,609.609 INFO    ] Launching Daemon at Sat Jun 13 21:57:48 IST 2026
[2026-06-13 21:57:48,620.620 INFO    ] ================================================
[2026-06-13 21:57:48,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:48
[2026-06-13 21:57:49,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:57:49,410.410 INFO    ] Initializing speech engine...
[2026-06-13 21:57:49,415.415 INFO    ] 2026-06-13 21:57:49
[2026-06-13 21:57:49,618.618 INFO    ] 2026-06-13 21:57:49
[2026-06-13 21:57:49,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:57:49,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:57:49,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:57:49,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:57:50,015.015 INFO    ] time= 13/06/2026 21:57:49
[2026-06-13 21:57:50,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:57:50,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:57:50,130.130 INFO    ] No existing commands found in stream
[2026-06-13 21:57:55,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:57:55,141.141 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 21:57:57,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:57:57,012.012 INFO    ] Checking for system updates...
[2026-06-13 21:57:57,034.034 INFO    ] 200
[2026-06-13 21:57:57,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:57,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:57:57,067.067 INFO    ] No update needed
[2026-06-13 21:57:57,069.069 INFO    ] Checking for camera pi updates...
[2026-06-13 21:57:57,090.090 INFO    ] 200
[2026-06-13 21:57:57,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:57:57,115.115 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:57:57,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:57:57,152.152 INFO    ] No camera update needed
[2026-06-13 21:57:57,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:57:57,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:57:57,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:57:57,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:57:59,200.200 INFO    ] ================================================
[2026-06-13 21:57:59,216.216 INFO    ] Launching Daemon at Sat Jun 13 21:57:59 IST 2026
[2026-06-13 21:57:59,227.227 INFO    ] ================================================
[2026-06-13 21:57:59,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:57:59
[2026-06-13 21:57:59,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:58:00,088.088 INFO    ] Initializing speech engine...
[2026-06-13 21:58:00,094.094 INFO    ] 2026-06-13 21:58:00
[2026-06-13 21:58:00,303.303 INFO    ] 2026-06-13 21:58:00
[2026-06-13 21:58:00,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:58:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:58:00,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:58:00,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:58:00,721.721 INFO    ] time= 13/06/2026 21:58:00
[2026-06-13 21:58:00,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:58:00,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:58:00,818.818 INFO    ] No existing commands found in stream
[2026-06-13 21:58:05,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:58:05,832.832 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 21:58:08,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:58:08,703.703 INFO    ] Checking for system updates...
[2026-06-13 21:58:08,724.724 INFO    ] 200
[2026-06-13 21:58:08,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:08,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:08,759.759 INFO    ] No update needed
[2026-06-13 21:58:08,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 21:58:08,780.780 INFO    ] 200
[2026-06-13 21:58:08,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:08,807.807 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:58:08,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:08,951.951 INFO    ] No camera update needed
[2026-06-13 21:58:08,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:58:08,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:58:08,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:58:08,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:58:11,010.010 INFO    ] ================================================
[2026-06-13 21:58:11,026.026 INFO    ] Launching Daemon at Sat Jun 13 21:58:11 IST 2026
[2026-06-13 21:58:11,037.037 INFO    ] ================================================
[2026-06-13 21:58:11,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:58:11
[2026-06-13 21:58:12,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:58:12,238.238 INFO    ] Initializing speech engine...
[2026-06-13 21:58:12,243.243 INFO    ] 2026-06-13 21:58:12
[2026-06-13 21:58:12,445.445 INFO    ] 2026-06-13 21:58:12
[2026-06-13 21:58:12,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:58:12,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:58:12,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:58:12,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:58:12,844.844 INFO    ] time= 13/06/2026 21:58:12
[2026-06-13 21:58:12,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:58:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:58:12,960.960 INFO    ] No existing commands found in stream
[2026-06-13 21:58:17,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:58:17,972.972 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 21:58:22,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:58:22,240.240 INFO    ] Checking for system updates...
[2026-06-13 21:58:22,260.260 INFO    ] 200
[2026-06-13 21:58:22,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:22,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:22,293.293 INFO    ] No update needed
[2026-06-13 21:58:22,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 21:58:22,318.318 INFO    ] 200
[2026-06-13 21:58:22,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:22,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:58:22,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:22,379.379 INFO    ] No camera update needed
[2026-06-13 21:58:22,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:58:22,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:58:22,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:58:22,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:58:24,430.430 INFO    ] ================================================
[2026-06-13 21:58:24,446.446 INFO    ] Launching Daemon at Sat Jun 13 21:58:24 IST 2026
[2026-06-13 21:58:24,457.457 INFO    ] ================================================
[2026-06-13 21:58:24,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:58:24
[2026-06-13 21:58:25,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:58:25,259.259 INFO    ] Initializing speech engine...
[2026-06-13 21:58:25,264.264 INFO    ] 2026-06-13 21:58:25
[2026-06-13 21:58:25,467.467 INFO    ] 2026-06-13 21:58:25
[2026-06-13 21:58:25,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:58:25,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:58:25,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:58:25,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:58:25,878.878 INFO    ] time= 13/06/2026 21:58:25
[2026-06-13 21:58:25,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:58:25,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:58:25,982.982 INFO    ] No existing commands found in stream
[2026-06-13 21:58:30,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:58:30,995.995 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 21:58:35,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:58:35,125.125 INFO    ] Checking for system updates...
[2026-06-13 21:58:35,146.146 INFO    ] 200
[2026-06-13 21:58:35,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:35,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:58:35,181.181 INFO    ] No update needed
[2026-06-13 21:58:35,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 21:58:35,202.202 INFO    ] 200
[2026-06-13 21:58:35,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:35,227.227 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:58:35,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:58:35,262.262 INFO    ] No camera update needed
[2026-06-13 21:58:35,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:58:35,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:58:35,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:58:35,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:58:37,313.313 INFO    ] ================================================
[2026-06-13 21:58:37,330.330 INFO    ] Launching Daemon at Sat Jun 13 21:58:37 IST 2026
[2026-06-13 21:58:37,343.343 INFO    ] ================================================
[2026-06-13 21:58:37,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:58:37
[2026-06-13 21:58:38,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:58:38,142.142 INFO    ] Initializing speech engine...
[2026-06-13 21:58:38,150.150 INFO    ] 2026-06-13 21:58:38
[2026-06-13 21:58:38,358.358 INFO    ] 2026-06-13 21:58:38
[2026-06-13 21:58:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:58:38,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:58:38,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:58:38,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:58:38,768.768 INFO    ] time= 13/06/2026 21:58:38
[2026-06-13 21:58:38,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:58:38,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:58:38,872.872 INFO    ] No existing commands found in stream
[2026-06-13 21:58:43,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:58:43,885.885 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 21:58:46,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:58:46,746.746 INFO    ] Checking for system updates...
[2026-06-13 21:58:46,767.767 INFO    ] 200
[2026-06-13 21:58:46,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:46,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:46,800.800 INFO    ] No update needed
[2026-06-13 21:58:46,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 21:58:46,822.822 INFO    ] 200
[2026-06-13 21:58:46,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:46,847.847 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:58:46,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:46,888.888 INFO    ] No camera update needed
[2026-06-13 21:58:46,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:58:46,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:58:46,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:58:46,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:58:48,937.937 INFO    ] ================================================
[2026-06-13 21:58:48,952.952 INFO    ] Launching Daemon at Sat Jun 13 21:58:48 IST 2026
[2026-06-13 21:58:48,963.963 INFO    ] ================================================
[2026-06-13 21:58:49,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:58:49
[2026-06-13 21:58:49,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:58:49,747.747 INFO    ] Initializing speech engine...
[2026-06-13 21:58:49,752.752 INFO    ] 2026-06-13 21:58:49
[2026-06-13 21:58:49,954.954 INFO    ] 2026-06-13 21:58:49
[2026-06-13 21:58:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:58:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:58:50,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:58:50,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:58:50,373.373 INFO    ] time= 13/06/2026 21:58:50
[2026-06-13 21:58:50,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:58:50,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:58:50,470.470 INFO    ] No existing commands found in stream
[2026-06-13 21:58:55,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:58:55,487.487 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-13 21:58:56,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:58:56,921.921 INFO    ] Checking for system updates...
[2026-06-13 21:58:56,944.944 INFO    ] 200
[2026-06-13 21:58:56,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:56,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:58:56,977.977 INFO    ] No update needed
[2026-06-13 21:58:56,979.979 INFO    ] Checking for camera pi updates...
[2026-06-13 21:58:56,998.998 INFO    ] 200
[2026-06-13 21:58:56,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:58:57,024.024 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:58:57,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:58:57,066.066 INFO    ] No camera update needed
[2026-06-13 21:58:57,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:58:57,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:58:57,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:58:57,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:58:59,114.114 INFO    ] ================================================
[2026-06-13 21:58:59,130.130 INFO    ] Launching Daemon at Sat Jun 13 21:58:59 IST 2026
[2026-06-13 21:58:59,141.141 INFO    ] ================================================
[2026-06-13 21:58:59,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:58:59
[2026-06-13 21:58:59,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:00,038.038 INFO    ] Initializing speech engine...
[2026-06-13 21:59:00,042.042 INFO    ] 2026-06-13 21:59:00
[2026-06-13 21:59:00,250.250 INFO    ] 2026-06-13 21:59:00
[2026-06-13 21:59:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:00,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:00,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:00,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:00,670.670 INFO    ] time= 13/06/2026 21:59:00
[2026-06-13 21:59:00,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:00,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:00,767.767 INFO    ] No existing commands found in stream
[2026-06-13 21:59:05,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:59:05,786.786 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 21:59:08,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 21:59:08,762.762 INFO    ] Checking for system updates...
[2026-06-13 21:59:08,785.785 INFO    ] 200
[2026-06-13 21:59:08,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:08,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:08,819.819 INFO    ] No update needed
[2026-06-13 21:59:08,821.821 INFO    ] Checking for camera pi updates...
[2026-06-13 21:59:08,841.841 INFO    ] 200
[2026-06-13 21:59:08,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:08,868.868 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:59:08,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:59:08,906.906 INFO    ] No camera update needed
[2026-06-13 21:59:08,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:59:08,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:59:08,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:59:08,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:59:10,956.956 INFO    ] ================================================
[2026-06-13 21:59:10,973.973 INFO    ] Launching Daemon at Sat Jun 13 21:59:10 IST 2026
[2026-06-13 21:59:10,985.985 INFO    ] ================================================
[2026-06-13 21:59:11,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:59:11
[2026-06-13 21:59:11,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:11,863.863 INFO    ] Initializing speech engine...
[2026-06-13 21:59:11,869.869 INFO    ] 2026-06-13 21:59:11
[2026-06-13 21:59:12,078.078 INFO    ] 2026-06-13 21:59:12
[2026-06-13 21:59:12,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:12,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:12,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:12,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:12,497.497 INFO    ] time= 13/06/2026 21:59:12
[2026-06-13 21:59:12,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:12,598.598 INFO    ] No existing commands found in stream
[2026-06-13 21:59:17,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:59:17,616.616 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 21:59:20,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 21:59:20,506.506 INFO    ] Checking for system updates...
[2026-06-13 21:59:20,527.527 INFO    ] 200
[2026-06-13 21:59:20,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:20,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:20,563.563 INFO    ] No update needed
[2026-06-13 21:59:20,565.565 INFO    ] Checking for camera pi updates...
[2026-06-13 21:59:20,586.586 INFO    ] 200
[2026-06-13 21:59:20,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:20,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:59:20,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:20,650.650 INFO    ] No camera update needed
[2026-06-13 21:59:20,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:59:20,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:59:20,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:59:20,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:59:22,697.697 INFO    ] ================================================
[2026-06-13 21:59:22,713.713 INFO    ] Launching Daemon at Sat Jun 13 21:59:22 IST 2026
[2026-06-13 21:59:22,726.726 INFO    ] ================================================
[2026-06-13 21:59:23,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:59:23
[2026-06-13 21:59:23,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:23,609.609 INFO    ] Initializing speech engine...
[2026-06-13 21:59:23,616.616 INFO    ] 2026-06-13 21:59:23
[2026-06-13 21:59:23,828.828 INFO    ] 2026-06-13 21:59:23
[2026-06-13 21:59:23,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:24,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:24,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:24,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:24,255.255 INFO    ] time= 13/06/2026 21:59:24
[2026-06-13 21:59:24,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:24,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:24,402.402 INFO    ] No existing commands found in stream
[2026-06-13 21:59:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:59:29,416.416 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 21:59:30,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:59:30,202.202 INFO    ] Checking for system updates...
[2026-06-13 21:59:30,223.223 INFO    ] 200
[2026-06-13 21:59:30,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:30,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:30,257.257 INFO    ] No update needed
[2026-06-13 21:59:30,258.258 INFO    ] Checking for camera pi updates...
[2026-06-13 21:59:30,279.279 INFO    ] 200
[2026-06-13 21:59:30,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:30,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:59:30,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:30,345.345 INFO    ] No camera update needed
[2026-06-13 21:59:30,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:59:30,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:59:30,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:59:30,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:59:32,386.386 INFO    ] ================================================
[2026-06-13 21:59:32,396.396 INFO    ] Launching Daemon at Sat Jun 13 21:59:32 IST 2026
[2026-06-13 21:59:32,402.402 INFO    ] ================================================
[2026-06-13 21:59:32,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:59:32
[2026-06-13 21:59:33,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:33,449.449 INFO    ] Initializing speech engine...
[2026-06-13 21:59:33,456.456 INFO    ] 2026-06-13 21:59:33
[2026-06-13 21:59:33,714.714 INFO    ] 2026-06-13 21:59:33
[2026-06-13 21:59:33,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:34,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:34,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:34,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:34,181.181 INFO    ] time= 13/06/2026 21:59:34
[2026-06-13 21:59:34,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:34,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:34,336.336 INFO    ] No existing commands found in stream
[2026-06-13 21:59:39,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:59:39,348.348 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 21:59:41,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 21:59:41,385.385 INFO    ] Checking for system updates...
[2026-06-13 21:59:41,406.406 INFO    ] 200
[2026-06-13 21:59:41,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:41,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:41,439.439 INFO    ] No update needed
[2026-06-13 21:59:41,440.440 INFO    ] Checking for camera pi updates...
[2026-06-13 21:59:41,462.462 INFO    ] 200
[2026-06-13 21:59:41,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:41,487.487 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:59:41,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 21:59:41,522.522 INFO    ] No camera update needed
[2026-06-13 21:59:41,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:59:41,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:59:41,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:59:41,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:59:43,569.569 INFO    ] ================================================
[2026-06-13 21:59:43,585.585 INFO    ] Launching Daemon at Sat Jun 13 21:59:43 IST 2026
[2026-06-13 21:59:43,596.596 INFO    ] ================================================
[2026-06-13 21:59:43,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:59:43
[2026-06-13 21:59:44,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:44,397.397 INFO    ] Initializing speech engine...
[2026-06-13 21:59:44,402.402 INFO    ] 2026-06-13 21:59:44
[2026-06-13 21:59:44,607.607 INFO    ] 2026-06-13 21:59:44
[2026-06-13 21:59:44,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:44,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:44,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:44,954.954 INFO    ] time= 13/06/2026 21:59:44
[2026-06-13 21:59:45,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:45,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:45,123.123 INFO    ] No existing commands found in stream
[2026-06-13 21:59:50,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 21:59:50,135.135 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 21:59:51,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 21:59:51,266.266 INFO    ] Checking for system updates...
[2026-06-13 21:59:51,288.288 INFO    ] 200
[2026-06-13 21:59:51,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:51,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:59:51,321.321 INFO    ] No update needed
[2026-06-13 21:59:51,323.323 INFO    ] Checking for camera pi updates...
[2026-06-13 21:59:51,344.344 INFO    ] 200
[2026-06-13 21:59:51,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 21:59:51,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 21:59:51,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 21:59:51,407.407 INFO    ] No camera update needed
[2026-06-13 21:59:51,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-13 21:59:51,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 21:59:51,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 21:59:51,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 21:59:53,457.457 INFO    ] ================================================
[2026-06-13 21:59:53,472.472 INFO    ] Launching Daemon at Sat Jun 13 21:59:53 IST 2026
[2026-06-13 21:59:53,483.483 INFO    ] ================================================
[2026-06-13 21:59:53,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 21:59:53
[2026-06-13 21:59:54,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 21:59:54,348.348 INFO    ] Initializing speech engine...
[2026-06-13 21:59:54,356.356 INFO    ] 2026-06-13 21:59:54
[2026-06-13 21:59:54,558.558 INFO    ] 2026-06-13 21:59:54
[2026-06-13 21:59:54,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 21:59:54,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 21:59:54,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 21:59:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 21:59:54,962.962 INFO    ] time= 13/06/2026 21:59:54
[2026-06-13 21:59:54,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 21:59:55,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 21:59:55,070.070 INFO    ] No existing commands found in stream
[2026-06-13 22:00:00,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:00,084.084 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 22:00:03,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:00:03,903.903 INFO    ] Checking for system updates...
[2026-06-13 22:00:04,109.109 INFO    ] 200
[2026-06-13 22:00:04,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:04,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:00:04,438.438 INFO    ] No update needed
[2026-06-13 22:00:04,442.442 INFO    ] Checking for camera pi updates...
[2026-06-13 22:00:04,640.640 INFO    ] 200
[2026-06-13 22:00:04,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:04,912.912 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:00:05,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:00:05,016.016 INFO    ] No camera update needed
[2026-06-13 22:00:05,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:00:05,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:00:05,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:00:05,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:00:07,191.191 INFO    ] ================================================
[2026-06-13 22:00:07,206.206 INFO    ] Launching Daemon at Sat Jun 13 22:00:07 IST 2026
[2026-06-13 22:00:07,217.217 INFO    ] ================================================
[2026-06-13 22:00:07,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:00:07
[2026-06-13 22:00:07,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:00:08,027.027 INFO    ] Initializing speech engine...
[2026-06-13 22:00:08,032.032 INFO    ] 2026-06-13 22:00:08
[2026-06-13 22:00:08,243.243 INFO    ] 2026-06-13 22:00:08
[2026-06-13 22:00:08,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:00:08,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:00:08,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:00:08,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:00:08,663.663 INFO    ] time= 13/06/2026 22:00:08
[2026-06-13 22:00:08,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:00:08,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:00:08,783.783 INFO    ] No existing commands found in stream
[2026-06-13 22:00:13,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:13,798.798 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-13 22:00:16,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:00:16,219.219 INFO    ] Checking for system updates...
[2026-06-13 22:00:16,240.240 INFO    ] 200
[2026-06-13 22:00:16,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:16,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:16,274.274 INFO    ] No update needed
[2026-06-13 22:00:16,275.275 INFO    ] Checking for camera pi updates...
[2026-06-13 22:00:16,297.297 INFO    ] 200
[2026-06-13 22:00:16,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:16,324.324 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:00:16,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:16,463.463 INFO    ] No camera update needed
[2026-06-13 22:00:16,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:00:16,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:00:16,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:00:16,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:00:18,513.513 INFO    ] ================================================
[2026-06-13 22:00:18,528.528 INFO    ] Launching Daemon at Sat Jun 13 22:00:18 IST 2026
[2026-06-13 22:00:18,539.539 INFO    ] ================================================
[2026-06-13 22:00:18,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:00:18
[2026-06-13 22:00:19,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:00:19,322.322 INFO    ] Initializing speech engine...
[2026-06-13 22:00:19,327.327 INFO    ] 2026-06-13 22:00:19
[2026-06-13 22:00:19,544.544 INFO    ] 2026-06-13 22:00:19
[2026-06-13 22:00:19,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:00:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:00:19,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:00:19,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:00:19,954.954 INFO    ] time= 13/06/2026 22:00:19
[2026-06-13 22:00:19,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:00:19,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:00:20,071.071 INFO    ] No existing commands found in stream
[2026-06-13 22:00:25,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:25,083.083 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 22:00:29,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:00:29,239.239 INFO    ] Checking for system updates...
[2026-06-13 22:00:29,280.280 INFO    ] 200
[2026-06-13 22:00:29,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:29,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:29,342.342 INFO    ] No update needed
[2026-06-13 22:00:29,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 22:00:29,365.365 INFO    ] 200
[2026-06-13 22:00:29,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:29,394.394 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:00:29,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:29,435.435 INFO    ] No camera update needed
[2026-06-13 22:00:29,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:00:29,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:00:29,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:00:29,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:00:31,483.483 INFO    ] ================================================
[2026-06-13 22:00:31,499.499 INFO    ] Launching Daemon at Sat Jun 13 22:00:31 IST 2026
[2026-06-13 22:00:31,509.509 INFO    ] ================================================
[2026-06-13 22:00:31,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:00:31
[2026-06-13 22:00:32,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:00:32,331.331 INFO    ] Initializing speech engine...
[2026-06-13 22:00:32,346.346 INFO    ] 2026-06-13 22:00:32
[2026-06-13 22:00:32,544.544 INFO    ] 2026-06-13 22:00:32
[2026-06-13 22:00:32,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:00:32,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:00:32,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:00:32,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:00:32,857.857 INFO    ] time= 13/06/2026 22:00:32
[2026-06-13 22:00:32,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:00:32,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:00:32,975.975 INFO    ] No existing commands found in stream
[2026-06-13 22:00:38,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:38,012.012 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 22:00:38,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:00:38,886.886 INFO    ] Checking for system updates...
[2026-06-13 22:00:38,908.908 INFO    ] 200
[2026-06-13 22:00:38,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:38,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:38,942.942 INFO    ] No update needed
[2026-06-13 22:00:38,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 22:00:38,962.962 INFO    ] 200
[2026-06-13 22:00:38,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:38,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:00:39,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:39,026.026 INFO    ] No camera update needed
[2026-06-13 22:00:39,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:00:39,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:00:39,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:00:39,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:00:41,074.074 INFO    ] ================================================
[2026-06-13 22:00:41,089.089 INFO    ] Launching Daemon at Sat Jun 13 22:00:41 IST 2026
[2026-06-13 22:00:41,100.100 INFO    ] ================================================
[2026-06-13 22:00:41,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:00:41
[2026-06-13 22:00:41,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:00:41,884.884 INFO    ] Initializing speech engine...
[2026-06-13 22:00:41,888.888 INFO    ] 2026-06-13 22:00:41
[2026-06-13 22:00:42,109.109 INFO    ] 2026-06-13 22:00:42
[2026-06-13 22:00:42,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:00:42,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:00:42,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:00:42,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:00:42,508.508 INFO    ] time= 13/06/2026 22:00:42
[2026-06-13 22:00:42,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:00:42,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:00:42,673.673 INFO    ] No existing commands found in stream
[2026-06-13 22:00:47,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:47,685.685 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 22:00:50,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:00:50,082.082 INFO    ] Checking for system updates...
[2026-06-13 22:00:50,102.102 INFO    ] 200
[2026-06-13 22:00:50,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:50,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:50,138.138 INFO    ] No update needed
[2026-06-13 22:00:50,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 22:00:50,160.160 INFO    ] 200
[2026-06-13 22:00:50,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:00:50,185.185 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:00:50,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:00:50,230.230 INFO    ] No camera update needed
[2026-06-13 22:00:50,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:00:50,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:00:50,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:00:50,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:00:52,279.279 INFO    ] ================================================
[2026-06-13 22:00:52,294.294 INFO    ] Launching Daemon at Sat Jun 13 22:00:52 IST 2026
[2026-06-13 22:00:52,305.305 INFO    ] ================================================
[2026-06-13 22:00:52,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:00:52
[2026-06-13 22:00:53,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:00:53,171.171 INFO    ] Initializing speech engine...
[2026-06-13 22:00:53,176.176 INFO    ] 2026-06-13 22:00:53
[2026-06-13 22:00:53,388.388 INFO    ] 2026-06-13 22:00:53
[2026-06-13 22:00:53,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:00:53,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:00:53,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:00:53,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:00:53,806.806 INFO    ] time= 13/06/2026 22:00:53
[2026-06-13 22:00:53,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:00:53,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:00:53,908.908 INFO    ] No existing commands found in stream
[2026-06-13 22:00:58,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:00:58,921.921 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 22:01:01,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:01:01,017.017 INFO    ] Checking for system updates...
[2026-06-13 22:01:01,038.038 INFO    ] 200
[2026-06-13 22:01:01,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:01,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:01:01,073.073 INFO    ] No update needed
[2026-06-13 22:01:01,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:01,095.095 INFO    ] 200
[2026-06-13 22:01:01,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:01,123.123 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:01,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:01:01,161.161 INFO    ] No camera update needed
[2026-06-13 22:01:01,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:01,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:01,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:01,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:03,206.206 INFO    ] ================================================
[2026-06-13 22:01:03,222.222 INFO    ] Launching Daemon at Sat Jun 13 22:01:03 IST 2026
[2026-06-13 22:01:03,233.233 INFO    ] ================================================
[2026-06-13 22:01:03,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:03
[2026-06-13 22:01:04,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:04,869.869 INFO    ] Initializing speech engine...
[2026-06-13 22:01:04,881.881 INFO    ] 2026-06-13 22:01:04
[2026-06-13 22:01:05,170.170 INFO    ] 2026-06-13 22:01:05
[2026-06-13 22:01:05,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:05,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:05,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:05,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:05,636.636 INFO    ] time= 13/06/2026 22:01:05
[2026-06-13 22:01:05,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:05,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:05,816.816 INFO    ] No existing commands found in stream
[2026-06-13 22:01:10,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:01:10,850.850 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 22:01:11,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:01:11,512.512 INFO    ] Checking for system updates...
[2026-06-13 22:01:11,534.534 INFO    ] 200
[2026-06-13 22:01:11,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:11,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:11,571.571 INFO    ] No update needed
[2026-06-13 22:01:11,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:11,595.595 INFO    ] 200
[2026-06-13 22:01:11,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:11,622.622 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:11,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:11,662.662 INFO    ] No camera update needed
[2026-06-13 22:01:11,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:11,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:11,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:11,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:13,711.711 INFO    ] ================================================
[2026-06-13 22:01:13,727.727 INFO    ] Launching Daemon at Sat Jun 13 22:01:13 IST 2026
[2026-06-13 22:01:13,738.738 INFO    ] ================================================
[2026-06-13 22:01:14,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:14
[2026-06-13 22:01:14,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:14,855.855 INFO    ] Initializing speech engine...
[2026-06-13 22:01:14,866.866 INFO    ] 2026-06-13 22:01:14
[2026-06-13 22:01:15,184.184 INFO    ] 2026-06-13 22:01:15
[2026-06-13 22:01:15,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:15,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:15,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:15,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:15,626.626 INFO    ] time= 13/06/2026 22:01:15
[2026-06-13 22:01:15,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:15,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:15,851.851 INFO    ] No existing commands found in stream
[2026-06-13 22:01:20,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:01:20,881.881 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 22:01:22,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:01:22,528.528 INFO    ] Checking for system updates...
[2026-06-13 22:01:22,566.566 INFO    ] 200
[2026-06-13 22:01:22,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:22,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:22,616.616 INFO    ] No update needed
[2026-06-13 22:01:22,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:22,640.640 INFO    ] 200
[2026-06-13 22:01:22,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:22,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:22,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:22,705.705 INFO    ] No camera update needed
[2026-06-13 22:01:22,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:22,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:22,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:22,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:24,755.755 INFO    ] ================================================
[2026-06-13 22:01:24,770.770 INFO    ] Launching Daemon at Sat Jun 13 22:01:24 IST 2026
[2026-06-13 22:01:24,781.781 INFO    ] ================================================
[2026-06-13 22:01:25,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:25
[2026-06-13 22:01:25,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:25,582.582 INFO    ] Initializing speech engine...
[2026-06-13 22:01:25,587.587 INFO    ] 2026-06-13 22:01:25
[2026-06-13 22:01:25,794.794 INFO    ] 2026-06-13 22:01:25
[2026-06-13 22:01:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:25,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:25,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:26,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:26,195.195 INFO    ] time= 13/06/2026 22:01:26
[2026-06-13 22:01:26,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:26,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:26,329.329 INFO    ] No existing commands found in stream
[2026-06-13 22:01:31,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:01:31,359.359 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 22:01:32,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:01:32,127.127 INFO    ] Checking for system updates...
[2026-06-13 22:01:32,150.150 INFO    ] 200
[2026-06-13 22:01:32,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:32,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:32,191.191 INFO    ] No update needed
[2026-06-13 22:01:32,193.193 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:32,218.218 INFO    ] 200
[2026-06-13 22:01:32,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:32,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:32,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:32,309.309 INFO    ] No camera update needed
[2026-06-13 22:01:32,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:32,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:32,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:32,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:34,365.365 INFO    ] ================================================
[2026-06-13 22:01:34,381.381 INFO    ] Launching Daemon at Sat Jun 13 22:01:34 IST 2026
[2026-06-13 22:01:34,393.393 INFO    ] ================================================
[2026-06-13 22:01:34,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:34
[2026-06-13 22:01:35,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:35,168.168 INFO    ] Initializing speech engine...
[2026-06-13 22:01:35,172.172 INFO    ] 2026-06-13 22:01:35
[2026-06-13 22:01:35,404.404 INFO    ] 2026-06-13 22:01:35
[2026-06-13 22:01:35,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:35,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:35,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:35,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:35,839.839 INFO    ] time= 13/06/2026 22:01:35
[2026-06-13 22:01:35,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:35,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:35,968.968 INFO    ] No existing commands found in stream
[2026-06-13 22:01:40,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:01:40,982.982 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-13 22:01:43,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:01:43,413.413 INFO    ] Checking for system updates...
[2026-06-13 22:01:43,435.435 INFO    ] 200
[2026-06-13 22:01:43,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:43,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:43,470.470 INFO    ] No update needed
[2026-06-13 22:01:43,472.472 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:43,492.492 INFO    ] 200
[2026-06-13 22:01:43,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:43,517.517 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:43,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:43,556.556 INFO    ] No camera update needed
[2026-06-13 22:01:43,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:43,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:43,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:43,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:45,604.604 INFO    ] ================================================
[2026-06-13 22:01:45,620.620 INFO    ] Launching Daemon at Sat Jun 13 22:01:45 IST 2026
[2026-06-13 22:01:45,631.631 INFO    ] ================================================
[2026-06-13 22:01:45,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:45
[2026-06-13 22:01:46,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:46,420.420 INFO    ] Initializing speech engine...
[2026-06-13 22:01:46,427.427 INFO    ] 2026-06-13 22:01:46
[2026-06-13 22:01:46,639.639 INFO    ] 2026-06-13 22:01:46
[2026-06-13 22:01:46,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:46,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:46,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:46,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:47,049.049 INFO    ] time= 13/06/2026 22:01:46
[2026-06-13 22:01:47,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:47,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:47,153.153 INFO    ] No existing commands found in stream
[2026-06-13 22:01:52,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:01:52,163.163 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 22:01:55,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:01:55,371.371 INFO    ] Checking for system updates...
[2026-06-13 22:01:55,394.394 INFO    ] 200
[2026-06-13 22:01:55,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:55,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:55,430.430 INFO    ] No update needed
[2026-06-13 22:01:55,432.432 INFO    ] Checking for camera pi updates...
[2026-06-13 22:01:55,452.452 INFO    ] 200
[2026-06-13 22:01:55,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:01:55,479.479 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:01:55,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:01:55,517.517 INFO    ] No camera update needed
[2026-06-13 22:01:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:01:55,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:01:55,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:01:55,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:01:57,566.566 INFO    ] ================================================
[2026-06-13 22:01:57,582.582 INFO    ] Launching Daemon at Sat Jun 13 22:01:57 IST 2026
[2026-06-13 22:01:57,593.593 INFO    ] ================================================
[2026-06-13 22:01:57,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:01:57
[2026-06-13 22:01:58,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:01:58,404.404 INFO    ] Initializing speech engine...
[2026-06-13 22:01:58,409.409 INFO    ] 2026-06-13 22:01:58
[2026-06-13 22:01:58,613.613 INFO    ] 2026-06-13 22:01:58
[2026-06-13 22:01:58,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:01:58,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:01:58,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:01:59,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:01:59,052.052 INFO    ] time= 13/06/2026 22:01:59
[2026-06-13 22:01:59,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:01:59,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:01:59,338.338 INFO    ] No existing commands found in stream
[2026-06-13 22:02:04,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:02:04,360.360 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 22:02:08,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:02:08,561.561 INFO    ] Checking for system updates...
[2026-06-13 22:02:08,583.583 INFO    ] 200
[2026-06-13 22:02:08,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:08,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:08,616.616 INFO    ] No update needed
[2026-06-13 22:02:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 22:02:08,638.638 INFO    ] 200
[2026-06-13 22:02:08,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:08,663.663 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:02:08,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:08,705.705 INFO    ] No camera update needed
[2026-06-13 22:02:08,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:02:08,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:02:08,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:02:08,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:02:10,743.743 INFO    ] ================================================
[2026-06-13 22:02:10,751.751 INFO    ] Launching Daemon at Sat Jun 13 22:02:10 IST 2026
[2026-06-13 22:02:10,757.757 INFO    ] ================================================
[2026-06-13 22:02:11,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:02:11
[2026-06-13 22:02:11,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:02:11,570.570 INFO    ] Initializing speech engine...
[2026-06-13 22:02:11,575.575 INFO    ] 2026-06-13 22:02:11
[2026-06-13 22:02:11,781.781 INFO    ] 2026-06-13 22:02:11
[2026-06-13 22:02:11,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:02:11,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:02:12,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:02:12,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:02:12,199.199 INFO    ] time= 13/06/2026 22:02:12
[2026-06-13 22:02:12,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:02:12,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:02:12,296.296 INFO    ] No existing commands found in stream
[2026-06-13 22:02:17,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:02:17,313.313 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 22:02:21,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:02:21,231.231 INFO    ] Checking for system updates...
[2026-06-13 22:02:21,253.253 INFO    ] 200
[2026-06-13 22:02:21,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:21,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:21,289.289 INFO    ] No update needed
[2026-06-13 22:02:21,291.291 INFO    ] Checking for camera pi updates...
[2026-06-13 22:02:21,315.315 INFO    ] 200
[2026-06-13 22:02:21,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:21,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:02:21,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:21,471.471 INFO    ] No camera update needed
[2026-06-13 22:02:21,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:02:21,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:02:21,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:02:21,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:02:23,521.521 INFO    ] ================================================
[2026-06-13 22:02:23,536.536 INFO    ] Launching Daemon at Sat Jun 13 22:02:23 IST 2026
[2026-06-13 22:02:23,546.546 INFO    ] ================================================
[2026-06-13 22:02:23,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:02:23
[2026-06-13 22:02:24,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:02:24,322.322 INFO    ] Initializing speech engine...
[2026-06-13 22:02:24,330.330 INFO    ] 2026-06-13 22:02:24
[2026-06-13 22:02:24,539.539 INFO    ] 2026-06-13 22:02:24
[2026-06-13 22:02:24,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:02:24,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:02:24,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:02:24,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:02:24,948.948 INFO    ] time= 13/06/2026 22:02:24
[2026-06-13 22:02:24,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:02:24,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:02:25,057.057 INFO    ] No existing commands found in stream
[2026-06-13 22:02:30,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:02:30,071.071 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-13 22:02:32,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:02:32,449.449 INFO    ] Checking for system updates...
[2026-06-13 22:02:32,482.482 INFO    ] 200
[2026-06-13 22:02:32,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:32,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:32,548.548 INFO    ] No update needed
[2026-06-13 22:02:32,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 22:02:32,591.591 INFO    ] 200
[2026-06-13 22:02:32,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:32,639.639 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:02:32,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:02:32,672.672 INFO    ] No camera update needed
[2026-06-13 22:02:32,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:02:32,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:02:32,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:02:32,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:02:34,728.728 INFO    ] ================================================
[2026-06-13 22:02:34,743.743 INFO    ] Launching Daemon at Sat Jun 13 22:02:34 IST 2026
[2026-06-13 22:02:34,754.754 INFO    ] ================================================
[2026-06-13 22:02:35,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:02:35
[2026-06-13 22:02:35,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:02:35,806.806 INFO    ] Initializing speech engine...
[2026-06-13 22:02:35,812.812 INFO    ] 2026-06-13 22:02:35
[2026-06-13 22:02:36,014.014 INFO    ] 2026-06-13 22:02:35
[2026-06-13 22:02:36,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:02:36,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:02:36,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:02:36,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:02:36,411.411 INFO    ] time= 13/06/2026 22:02:36
[2026-06-13 22:02:36,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:02:36,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:02:36,526.526 INFO    ] No existing commands found in stream
[2026-06-13 22:02:41,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:02:41,539.539 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-13 22:02:42,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:02:42,795.795 INFO    ] Checking for system updates...
[2026-06-13 22:02:42,817.817 INFO    ] 200
[2026-06-13 22:02:42,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:42,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:02:42,852.852 INFO    ] No update needed
[2026-06-13 22:02:42,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 22:02:42,873.873 INFO    ] 200
[2026-06-13 22:02:42,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:42,900.900 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:02:42,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:02:42,943.943 INFO    ] No camera update needed
[2026-06-13 22:02:42,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:02:42,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:02:42,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:02:42,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:02:44,991.991 INFO    ] ================================================
[2026-06-13 22:02:45,006.006 INFO    ] Launching Daemon at Sat Jun 13 22:02:45 IST 2026
[2026-06-13 22:02:45,017.017 INFO    ] ================================================
[2026-06-13 22:02:45,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:02:45
[2026-06-13 22:02:46,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:02:46,486.486 INFO    ] Initializing speech engine...
[2026-06-13 22:02:46,495.495 INFO    ] 2026-06-13 22:02:46
[2026-06-13 22:02:46,743.743 INFO    ] 2026-06-13 22:02:46
[2026-06-13 22:02:46,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:02:46,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:02:46,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:02:47,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:02:47,109.109 INFO    ] time= 13/06/2026 22:02:47
[2026-06-13 22:02:47,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:02:47,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:02:47,214.214 INFO    ] No existing commands found in stream
[2026-06-13 22:02:52,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:02:52,243.243 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 22:02:53,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:02:53,741.741 INFO    ] Checking for system updates...
[2026-06-13 22:02:53,762.762 INFO    ] 200
[2026-06-13 22:02:53,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:53,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:02:53,796.796 INFO    ] No update needed
[2026-06-13 22:02:53,797.797 INFO    ] Checking for camera pi updates...
[2026-06-13 22:02:53,817.817 INFO    ] 200
[2026-06-13 22:02:53,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:02:53,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:02:53,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:02:53,878.878 INFO    ] No camera update needed
[2026-06-13 22:02:53,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:02:53,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:02:53,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:02:53,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:02:55,927.927 INFO    ] ================================================
[2026-06-13 22:02:55,942.942 INFO    ] Launching Daemon at Sat Jun 13 22:02:55 IST 2026
[2026-06-13 22:02:55,954.954 INFO    ] ================================================
[2026-06-13 22:02:56,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:02:56
[2026-06-13 22:02:56,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:02:56,774.774 INFO    ] Initializing speech engine...
[2026-06-13 22:02:56,780.780 INFO    ] 2026-06-13 22:02:56
[2026-06-13 22:02:56,999.999 INFO    ] 2026-06-13 22:02:56
[2026-06-13 22:02:57,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:02:57,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:02:57,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:02:57,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:02:57,410.410 INFO    ] time= 13/06/2026 22:02:57
[2026-06-13 22:02:57,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:02:57,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:02:57,558.558 INFO    ] No existing commands found in stream
[2026-06-13 22:03:02,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:02,570.570 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 22:03:05,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:03:05,611.611 INFO    ] Checking for system updates...
[2026-06-13 22:03:05,632.632 INFO    ] 200
[2026-06-13 22:03:05,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:05,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:03:05,666.666 INFO    ] No update needed
[2026-06-13 22:03:05,668.668 INFO    ] Checking for camera pi updates...
[2026-06-13 22:03:05,689.689 INFO    ] 200
[2026-06-13 22:03:05,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:05,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:03:05,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:03:05,758.758 INFO    ] No camera update needed
[2026-06-13 22:03:05,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:03:05,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:03:05,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:03:05,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:03:07,805.805 INFO    ] ================================================
[2026-06-13 22:03:07,820.820 INFO    ] Launching Daemon at Sat Jun 13 22:03:07 IST 2026
[2026-06-13 22:03:07,831.831 INFO    ] ================================================
[2026-06-13 22:03:08,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:03:08
[2026-06-13 22:03:08,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:03:08,611.611 INFO    ] Initializing speech engine...
[2026-06-13 22:03:08,616.616 INFO    ] 2026-06-13 22:03:08
[2026-06-13 22:03:08,824.824 INFO    ] 2026-06-13 22:03:08
[2026-06-13 22:03:08,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:03:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:03:09,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:03:09,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:03:09,224.224 INFO    ] time= 13/06/2026 22:03:09
[2026-06-13 22:03:09,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:03:09,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:03:09,406.406 INFO    ] No existing commands found in stream
[2026-06-13 22:03:14,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:14,420.420 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 22:03:15,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:03:15,122.122 INFO    ] Checking for system updates...
[2026-06-13 22:03:15,144.144 INFO    ] 200
[2026-06-13 22:03:15,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:15,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:15,180.180 INFO    ] No update needed
[2026-06-13 22:03:15,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 22:03:15,200.200 INFO    ] 200
[2026-06-13 22:03:15,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:15,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:03:15,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:15,273.273 INFO    ] No camera update needed
[2026-06-13 22:03:15,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:03:15,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:03:15,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:03:15,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:03:17,323.323 INFO    ] ================================================
[2026-06-13 22:03:17,338.338 INFO    ] Launching Daemon at Sat Jun 13 22:03:17 IST 2026
[2026-06-13 22:03:17,349.349 INFO    ] ================================================
[2026-06-13 22:03:17,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:03:17
[2026-06-13 22:03:18,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:03:18,163.163 INFO    ] Initializing speech engine...
[2026-06-13 22:03:18,173.173 INFO    ] 2026-06-13 22:03:18
[2026-06-13 22:03:18,375.375 INFO    ] 2026-06-13 22:03:18
[2026-06-13 22:03:18,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:03:18,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:03:18,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:03:18,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:03:18,788.788 INFO    ] time= 13/06/2026 22:03:18
[2026-06-13 22:03:18,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:03:18,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:03:18,893.893 INFO    ] No existing commands found in stream
[2026-06-13 22:03:23,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:23,904.904 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-13 22:03:27,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:03:27,541.541 INFO    ] Checking for system updates...
[2026-06-13 22:03:27,564.564 INFO    ] 200
[2026-06-13 22:03:27,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:27,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:27,598.598 INFO    ] No update needed
[2026-06-13 22:03:27,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 22:03:27,618.618 INFO    ] 200
[2026-06-13 22:03:27,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:27,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:03:27,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:27,686.686 INFO    ] No camera update needed
[2026-06-13 22:03:27,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:03:27,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:03:27,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:03:27,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:03:29,736.736 INFO    ] ================================================
[2026-06-13 22:03:29,752.752 INFO    ] Launching Daemon at Sat Jun 13 22:03:29 IST 2026
[2026-06-13 22:03:29,764.764 INFO    ] ================================================
[2026-06-13 22:03:30,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:03:30
[2026-06-13 22:03:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:03:30,578.578 INFO    ] Initializing speech engine...
[2026-06-13 22:03:30,582.582 INFO    ] 2026-06-13 22:03:30
[2026-06-13 22:03:30,771.771 INFO    ] 2026-06-13 22:03:30
[2026-06-13 22:03:30,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:03:30,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:03:31,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:03:31,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:03:31,217.217 INFO    ] time= 13/06/2026 22:03:31
[2026-06-13 22:03:31,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:03:31,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:03:31,404.404 INFO    ] No existing commands found in stream
[2026-06-13 22:03:36,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:36,434.434 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 22:03:37,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:03:37,985.985 INFO    ] Checking for system updates...
[2026-06-13 22:03:38,007.007 INFO    ] 200
[2026-06-13 22:03:38,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:38,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:03:38,043.043 INFO    ] No update needed
[2026-06-13 22:03:38,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 22:03:38,063.063 INFO    ] 200
[2026-06-13 22:03:38,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:38,088.088 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:03:38,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:03:38,128.128 INFO    ] No camera update needed
[2026-06-13 22:03:38,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:03:38,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:03:38,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:03:38,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:03:40,177.177 INFO    ] ================================================
[2026-06-13 22:03:40,192.192 INFO    ] Launching Daemon at Sat Jun 13 22:03:40 IST 2026
[2026-06-13 22:03:40,204.204 INFO    ] ================================================
[2026-06-13 22:03:40,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:03:40
[2026-06-13 22:03:40,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:03:41,013.013 INFO    ] Initializing speech engine...
[2026-06-13 22:03:41,018.018 INFO    ] 2026-06-13 22:03:41
[2026-06-13 22:03:41,222.222 INFO    ] 2026-06-13 22:03:41
[2026-06-13 22:03:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:03:41,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:03:41,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:03:41,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:03:41,631.631 INFO    ] time= 13/06/2026 22:03:41
[2026-06-13 22:03:41,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:03:41,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:03:41,736.736 INFO    ] No existing commands found in stream
[2026-06-13 22:03:46,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:46,748.748 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 22:03:50,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:03:50,916.916 INFO    ] Checking for system updates...
[2026-06-13 22:03:50,961.961 INFO    ] 200
[2026-06-13 22:03:50,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:50,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:50,996.996 INFO    ] No update needed
[2026-06-13 22:03:50,997.997 INFO    ] Checking for camera pi updates...
[2026-06-13 22:03:51,017.017 INFO    ] 200
[2026-06-13 22:03:51,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:03:51,042.042 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:03:51,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:03:51,082.082 INFO    ] No camera update needed
[2026-06-13 22:03:51,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:03:51,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:03:51,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:03:51,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:03:53,132.132 INFO    ] ================================================
[2026-06-13 22:03:53,147.147 INFO    ] Launching Daemon at Sat Jun 13 22:03:53 IST 2026
[2026-06-13 22:03:53,158.158 INFO    ] ================================================
[2026-06-13 22:03:53,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:03:53
[2026-06-13 22:03:53,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:03:54,020.020 INFO    ] Initializing speech engine...
[2026-06-13 22:03:54,026.026 INFO    ] 2026-06-13 22:03:54
[2026-06-13 22:03:54,234.234 INFO    ] 2026-06-13 22:03:54
[2026-06-13 22:03:54,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:03:54,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:03:54,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:03:54,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:03:54,641.641 INFO    ] time= 13/06/2026 22:03:54
[2026-06-13 22:03:54,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:03:54,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:03:54,751.751 INFO    ] No existing commands found in stream
[2026-06-13 22:03:59,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:03:59,769.769 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 22:04:02,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:04:02,181.181 INFO    ] Checking for system updates...
[2026-06-13 22:04:02,212.212 INFO    ] 200
[2026-06-13 22:04:02,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:02,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:02,262.262 INFO    ] No update needed
[2026-06-13 22:04:02,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 22:04:02,309.309 INFO    ] 200
[2026-06-13 22:04:02,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:02,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:04:02,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:02,393.393 INFO    ] No camera update needed
[2026-06-13 22:04:02,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:04:02,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:04:02,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:04:02,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:04:04,453.453 INFO    ] ================================================
[2026-06-13 22:04:04,470.470 INFO    ] Launching Daemon at Sat Jun 13 22:04:04 IST 2026
[2026-06-13 22:04:04,481.481 INFO    ] ================================================
[2026-06-13 22:04:05,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:04:05
[2026-06-13 22:04:05,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:04:05,712.712 INFO    ] Initializing speech engine...
[2026-06-13 22:04:05,720.720 INFO    ] 2026-06-13 22:04:05
[2026-06-13 22:04:05,934.934 INFO    ] 2026-06-13 22:04:05
[2026-06-13 22:04:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:04:06,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:04:06,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:04:06,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:04:06,212.212 INFO    ] time= 13/06/2026 22:04:06
[2026-06-13 22:04:06,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:04:06,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:04:06,313.313 INFO    ] No existing commands found in stream
[2026-06-13 22:04:11,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:04:11,346.346 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 22:04:13,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:04:13,721.721 INFO    ] Checking for system updates...
[2026-06-13 22:04:13,743.743 INFO    ] 200
[2026-06-13 22:04:13,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:13,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:04:13,777.777 INFO    ] No update needed
[2026-06-13 22:04:13,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 22:04:13,799.799 INFO    ] 200
[2026-06-13 22:04:13,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:13,826.826 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:04:13,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:13,874.874 INFO    ] No camera update needed
[2026-06-13 22:04:13,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:04:13,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:04:13,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:04:13,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:04:15,935.935 INFO    ] ================================================
[2026-06-13 22:04:15,951.951 INFO    ] Launching Daemon at Sat Jun 13 22:04:15 IST 2026
[2026-06-13 22:04:15,962.962 INFO    ] ================================================
[2026-06-13 22:04:16,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:04:16
[2026-06-13 22:04:17,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:04:17,308.308 INFO    ] Initializing speech engine...
[2026-06-13 22:04:17,315.315 INFO    ] 2026-06-13 22:04:17
[2026-06-13 22:04:17,522.522 INFO    ] 2026-06-13 22:04:17
[2026-06-13 22:04:17,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:04:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:04:17,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:04:17,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:04:17,937.937 INFO    ] time= 13/06/2026 22:04:17
[2026-06-13 22:04:17,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:04:17,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:04:18,036.036 INFO    ] No existing commands found in stream
[2026-06-13 22:04:23,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:04:23,050.050 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-13 22:04:27,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:04:27,371.371 INFO    ] Checking for system updates...
[2026-06-13 22:04:27,392.392 INFO    ] 200
[2026-06-13 22:04:27,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:27,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:27,425.425 INFO    ] No update needed
[2026-06-13 22:04:27,427.427 INFO    ] Checking for camera pi updates...
[2026-06-13 22:04:27,446.446 INFO    ] 200
[2026-06-13 22:04:27,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:27,472.472 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:04:27,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:27,612.612 INFO    ] No camera update needed
[2026-06-13 22:04:27,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:04:27,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:04:27,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:04:27,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:04:29,659.659 INFO    ] ================================================
[2026-06-13 22:04:29,675.675 INFO    ] Launching Daemon at Sat Jun 13 22:04:29 IST 2026
[2026-06-13 22:04:29,687.687 INFO    ] ================================================
[2026-06-13 22:04:30,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:04:30
[2026-06-13 22:04:30,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:04:30,691.691 INFO    ] Initializing speech engine...
[2026-06-13 22:04:30,700.700 INFO    ] 2026-06-13 22:04:30
[2026-06-13 22:04:30,999.999 INFO    ] 2026-06-13 22:04:30
[2026-06-13 22:04:31,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:04:31,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:04:31,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:04:31,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:04:31,360.360 INFO    ] time= 13/06/2026 22:04:31
[2026-06-13 22:04:31,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:04:31,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:04:31,451.451 INFO    ] No existing commands found in stream
[2026-06-13 22:04:36,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:04:36,466.466 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-13 22:04:37,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:04:37,601.601 INFO    ] Checking for system updates...
[2026-06-13 22:04:37,624.624 INFO    ] 200
[2026-06-13 22:04:37,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:37,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:37,656.656 INFO    ] No update needed
[2026-06-13 22:04:37,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 22:04:37,677.677 INFO    ] 200
[2026-06-13 22:04:37,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:37,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:04:37,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:04:37,750.750 INFO    ] No camera update needed
[2026-06-13 22:04:37,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:04:37,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:04:37,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:04:37,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:04:39,797.797 INFO    ] ================================================
[2026-06-13 22:04:39,813.813 INFO    ] Launching Daemon at Sat Jun 13 22:04:39 IST 2026
[2026-06-13 22:04:39,824.824 INFO    ] ================================================
[2026-06-13 22:04:40,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:04:40
[2026-06-13 22:04:40,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:04:40,601.601 INFO    ] Initializing speech engine...
[2026-06-13 22:04:40,614.614 INFO    ] 2026-06-13 22:04:40
[2026-06-13 22:04:40,824.824 INFO    ] 2026-06-13 22:04:40
[2026-06-13 22:04:40,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:04:40,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:04:41,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:04:41,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:04:41,237.237 INFO    ] time= 13/06/2026 22:04:41
[2026-06-13 22:04:41,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:04:41,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:04:41,350.350 INFO    ] No existing commands found in stream
[2026-06-13 22:04:46,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:04:46,362.362 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 22:04:50,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:04:50,563.563 INFO    ] Checking for system updates...
[2026-06-13 22:04:50,585.585 INFO    ] 200
[2026-06-13 22:04:50,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:50,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:04:50,621.621 INFO    ] No update needed
[2026-06-13 22:04:50,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 22:04:50,642.642 INFO    ] 200
[2026-06-13 22:04:50,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:04:50,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:04:50,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:04:50,717.717 INFO    ] No camera update needed
[2026-06-13 22:04:50,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:04:50,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:04:50,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:04:50,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:04:52,764.764 INFO    ] ================================================
[2026-06-13 22:04:52,780.780 INFO    ] Launching Daemon at Sat Jun 13 22:04:52 IST 2026
[2026-06-13 22:04:52,792.792 INFO    ] ================================================
[2026-06-13 22:04:53,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:04:53
[2026-06-13 22:04:53,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:04:53,593.593 INFO    ] Initializing speech engine...
[2026-06-13 22:04:53,606.606 INFO    ] 2026-06-13 22:04:53
[2026-06-13 22:04:53,828.828 INFO    ] 2026-06-13 22:04:53
[2026-06-13 22:04:53,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:04:54,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:04:54,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:04:54,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:04:54,251.251 INFO    ] time= 13/06/2026 22:04:54
[2026-06-13 22:04:54,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:04:54,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:04:54,406.406 INFO    ] No existing commands found in stream
[2026-06-13 22:04:59,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:04:59,419.419 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-13 22:05:02,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:05:02,267.267 INFO    ] Checking for system updates...
[2026-06-13 22:05:02,296.296 INFO    ] 200
[2026-06-13 22:05:02,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:02,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:02,338.338 INFO    ] No update needed
[2026-06-13 22:05:02,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:02,366.366 INFO    ] 200
[2026-06-13 22:05:02,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:02,396.396 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:02,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:05:02,421.421 INFO    ] No camera update needed
[2026-06-13 22:05:02,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:02,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:02,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:02,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:05:04,474.474 INFO    ] ================================================
[2026-06-13 22:05:04,491.491 INFO    ] Launching Daemon at Sat Jun 13 22:05:04 IST 2026
[2026-06-13 22:05:04,501.501 INFO    ] ================================================
[2026-06-13 22:05:04,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:05:04
[2026-06-13 22:05:05,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:05:05,314.314 INFO    ] Initializing speech engine...
[2026-06-13 22:05:05,319.319 INFO    ] 2026-06-13 22:05:05
[2026-06-13 22:05:05,522.522 INFO    ] 2026-06-13 22:05:05
[2026-06-13 22:05:05,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:05:05,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:05:05,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:05:05,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:05:05,926.926 INFO    ] time= 13/06/2026 22:05:05
[2026-06-13 22:05:05,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:05:05,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:05:06,054.054 INFO    ] No existing commands found in stream
[2026-06-13 22:05:11,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:05:11,067.067 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 22:05:11,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:05:11,826.826 INFO    ] Checking for system updates...
[2026-06-13 22:05:11,847.847 INFO    ] 200
[2026-06-13 22:05:11,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:11,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:11,881.881 INFO    ] No update needed
[2026-06-13 22:05:11,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:11,905.905 INFO    ] 200
[2026-06-13 22:05:11,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:11,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:11,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:11,970.970 INFO    ] No camera update needed
[2026-06-13 22:05:11,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:11,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:11,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:11,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:05:14,018.018 INFO    ] ================================================
[2026-06-13 22:05:14,034.034 INFO    ] Launching Daemon at Sat Jun 13 22:05:14 IST 2026
[2026-06-13 22:05:14,045.045 INFO    ] ================================================
[2026-06-13 22:05:14,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:05:14
[2026-06-13 22:05:14,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:05:14,817.817 INFO    ] Initializing speech engine...
[2026-06-13 22:05:14,826.826 INFO    ] 2026-06-13 22:05:14
[2026-06-13 22:05:15,045.045 INFO    ] 2026-06-13 22:05:15
[2026-06-13 22:05:15,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:05:15,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:05:15,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:05:15,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:05:15,429.429 INFO    ] time= 13/06/2026 22:05:15
[2026-06-13 22:05:15,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:05:15,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:05:15,550.550 INFO    ] No existing commands found in stream
[2026-06-13 22:05:20,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:05:20,584.584 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 22:05:23,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:05:23,759.759 INFO    ] Checking for system updates...
[2026-06-13 22:05:23,780.780 INFO    ] 200
[2026-06-13 22:05:23,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:23,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:23,813.813 INFO    ] No update needed
[2026-06-13 22:05:23,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:23,835.835 INFO    ] 200
[2026-06-13 22:05:23,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:23,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:23,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:23,897.897 INFO    ] No camera update needed
[2026-06-13 22:05:23,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:23,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:23,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:23,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:05:25,937.937 INFO    ] ================================================
[2026-06-13 22:05:25,954.954 INFO    ] Launching Daemon at Sat Jun 13 22:05:25 IST 2026
[2026-06-13 22:05:25,965.965 INFO    ] ================================================
[2026-06-13 22:05:26,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:05:26
[2026-06-13 22:05:26,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:05:27,152.152 INFO    ] Initializing speech engine...
[2026-06-13 22:05:27,169.169 INFO    ] 2026-06-13 22:05:27
[2026-06-13 22:05:27,465.465 INFO    ] 2026-06-13 22:05:27
[2026-06-13 22:05:27,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:05:27,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:05:27,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:05:27,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:05:27,849.849 INFO    ] time= 13/06/2026 22:05:27
[2026-06-13 22:05:27,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:05:27,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:05:27,914.914 INFO    ] No existing commands found in stream
[2026-06-13 22:05:32,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:05:32,946.946 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-13 22:05:36,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:05:36,174.174 INFO    ] Checking for system updates...
[2026-06-13 22:05:36,195.195 INFO    ] 200
[2026-06-13 22:05:36,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:36,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:36,229.229 INFO    ] No update needed
[2026-06-13 22:05:36,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:36,250.250 INFO    ] 200
[2026-06-13 22:05:36,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:36,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:36,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:05:36,328.328 INFO    ] No camera update needed
[2026-06-13 22:05:36,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:36,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:36,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:36,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:05:38,377.377 INFO    ] ================================================
[2026-06-13 22:05:38,392.392 INFO    ] Launching Daemon at Sat Jun 13 22:05:38 IST 2026
[2026-06-13 22:05:38,403.403 INFO    ] ================================================
[2026-06-13 22:05:38,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:05:38
[2026-06-13 22:05:39,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:05:39,196.196 INFO    ] Initializing speech engine...
[2026-06-13 22:05:39,200.200 INFO    ] 2026-06-13 22:05:39
[2026-06-13 22:05:39,416.416 INFO    ] 2026-06-13 22:05:39
[2026-06-13 22:05:39,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:05:39,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:05:39,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:05:39,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:05:39,795.795 INFO    ] time= 13/06/2026 22:05:39
[2026-06-13 22:05:39,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:05:39,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:05:39,963.963 INFO    ] No existing commands found in stream
[2026-06-13 22:05:44,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:05:44,975.975 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-13 22:05:49,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:05:49,172.172 INFO    ] Checking for system updates...
[2026-06-13 22:05:49,193.193 INFO    ] 200
[2026-06-13 22:05:49,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:49,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:05:49,228.228 INFO    ] No update needed
[2026-06-13 22:05:49,230.230 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:49,251.251 INFO    ] 200
[2026-06-13 22:05:49,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:49,278.278 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:49,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:05:49,321.321 INFO    ] No camera update needed
[2026-06-13 22:05:49,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:49,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:49,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:49,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:05:51,369.369 INFO    ] ================================================
[2026-06-13 22:05:51,384.384 INFO    ] Launching Daemon at Sat Jun 13 22:05:51 IST 2026
[2026-06-13 22:05:51,395.395 INFO    ] ================================================
[2026-06-13 22:05:51,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:05:51
[2026-06-13 22:05:52,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:05:52,626.626 INFO    ] Initializing speech engine...
[2026-06-13 22:05:52,636.636 INFO    ] 2026-06-13 22:05:52
[2026-06-13 22:05:52,841.841 INFO    ] 2026-06-13 22:05:52
[2026-06-13 22:05:52,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:05:52,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:05:53,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:05:53,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:05:53,251.251 INFO    ] time= 13/06/2026 22:05:53
[2026-06-13 22:05:53,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:05:53,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:05:53,356.356 INFO    ] No existing commands found in stream
[2026-06-13 22:05:58,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:05:58,366.366 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-13 22:05:59,164.164 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:05:59,166.166 INFO    ] Checking for system updates...
[2026-06-13 22:05:59,186.186 INFO    ] 200
[2026-06-13 22:05:59,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:59,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:05:59,220.220 INFO    ] No update needed
[2026-06-13 22:05:59,221.221 INFO    ] Checking for camera pi updates...
[2026-06-13 22:05:59,241.241 INFO    ] 200
[2026-06-13 22:05:59,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:05:59,267.267 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:05:59,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:05:59,306.306 INFO    ] No camera update needed
[2026-06-13 22:05:59,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:05:59,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:05:59,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:05:59,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:06:01,354.354 INFO    ] ================================================
[2026-06-13 22:06:01,369.369 INFO    ] Launching Daemon at Sat Jun 13 22:06:01 IST 2026
[2026-06-13 22:06:01,380.380 INFO    ] ================================================
[2026-06-13 22:06:01,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:06:01
[2026-06-13 22:06:02,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:06:02,370.370 INFO    ] Initializing speech engine...
[2026-06-13 22:06:02,377.377 INFO    ] 2026-06-13 22:06:02
[2026-06-13 22:06:02,617.617 INFO    ] 2026-06-13 22:06:02
[2026-06-13 22:06:02,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:06:02,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:06:02,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:06:02,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:06:03,016.016 INFO    ] time= 13/06/2026 22:06:02
[2026-06-13 22:06:03,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:06:03,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:06:03,195.195 INFO    ] No existing commands found in stream
[2026-06-13 22:06:08,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:06:08,210.210 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 22:06:12,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:06:12,346.346 INFO    ] Checking for system updates...
[2026-06-13 22:06:12,368.368 INFO    ] 200
[2026-06-13 22:06:12,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:12,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:12,402.402 INFO    ] No update needed
[2026-06-13 22:06:12,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 22:06:12,423.423 INFO    ] 200
[2026-06-13 22:06:12,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:12,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:06:12,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:12,489.489 INFO    ] No camera update needed
[2026-06-13 22:06:12,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:06:12,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:06:12,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:06:12,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:06:14,537.537 INFO    ] ================================================
[2026-06-13 22:06:14,553.553 INFO    ] Launching Daemon at Sat Jun 13 22:06:14 IST 2026
[2026-06-13 22:06:14,564.564 INFO    ] ================================================
[2026-06-13 22:06:14,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:06:14
[2026-06-13 22:06:15,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:06:15,366.366 INFO    ] Initializing speech engine...
[2026-06-13 22:06:15,371.371 INFO    ] 2026-06-13 22:06:15
[2026-06-13 22:06:15,575.575 INFO    ] 2026-06-13 22:06:15
[2026-06-13 22:06:15,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:06:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:06:15,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:06:15,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:06:16,005.005 INFO    ] time= 13/06/2026 22:06:15
[2026-06-13 22:06:16,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:06:16,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:06:16,124.124 INFO    ] No existing commands found in stream
[2026-06-13 22:06:21,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:06:21,135.135 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-13 22:06:25,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:06:25,284.284 INFO    ] Checking for system updates...
[2026-06-13 22:06:25,305.305 INFO    ] 200
[2026-06-13 22:06:25,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:25,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:06:25,343.343 INFO    ] No update needed
[2026-06-13 22:06:25,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 22:06:25,364.364 INFO    ] 200
[2026-06-13 22:06:25,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:25,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:06:25,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:25,430.430 INFO    ] No camera update needed
[2026-06-13 22:06:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:06:25,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:06:25,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:06:25,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:06:27,479.479 INFO    ] ================================================
[2026-06-13 22:06:27,495.495 INFO    ] Launching Daemon at Sat Jun 13 22:06:27 IST 2026
[2026-06-13 22:06:27,506.506 INFO    ] ================================================
[2026-06-13 22:06:27,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:06:27
[2026-06-13 22:06:28,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:06:28,577.577 INFO    ] Initializing speech engine...
[2026-06-13 22:06:28,586.586 INFO    ] 2026-06-13 22:06:28
[2026-06-13 22:06:28,852.852 INFO    ] 2026-06-13 22:06:28
[2026-06-13 22:06:28,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:06:29,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:06:29,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:06:29,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:06:29,193.193 INFO    ] time= 13/06/2026 22:06:29
[2026-06-13 22:06:29,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:06:29,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:06:29,319.319 INFO    ] No existing commands found in stream
[2026-06-13 22:06:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:06:34,335.335 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-13 22:06:36,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:06:36,956.956 INFO    ] Checking for system updates...
[2026-06-13 22:06:36,979.979 INFO    ] 200
[2026-06-13 22:06:36,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:37,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:37,015.015 INFO    ] No update needed
[2026-06-13 22:06:37,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 22:06:37,037.037 INFO    ] 200
[2026-06-13 22:06:37,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:37,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:06:37,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:37,099.099 INFO    ] No camera update needed
[2026-06-13 22:06:37,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:06:37,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:06:37,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:06:37,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:06:39,147.147 INFO    ] ================================================
[2026-06-13 22:06:39,162.162 INFO    ] Launching Daemon at Sat Jun 13 22:06:39 IST 2026
[2026-06-13 22:06:39,173.173 INFO    ] ================================================
[2026-06-13 22:06:39,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:06:39
[2026-06-13 22:06:40,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:06:40,501.501 INFO    ] Initializing speech engine...
[2026-06-13 22:06:40,511.511 INFO    ] 2026-06-13 22:06:40
[2026-06-13 22:06:40,775.775 INFO    ] 2026-06-13 22:06:40
[2026-06-13 22:06:40,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:06:40,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:06:41,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:06:41,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:06:41,128.128 INFO    ] time= 13/06/2026 22:06:41
[2026-06-13 22:06:41,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:06:41,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:06:41,208.208 INFO    ] No existing commands found in stream
[2026-06-13 22:06:46,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:06:46,223.223 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 22:06:48,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:06:48,230.230 INFO    ] Checking for system updates...
[2026-06-13 22:06:48,252.252 INFO    ] 200
[2026-06-13 22:06:48,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:48,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:48,285.285 INFO    ] No update needed
[2026-06-13 22:06:48,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 22:06:48,306.306 INFO    ] 200
[2026-06-13 22:06:48,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:06:48,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:06:48,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:06:48,371.371 INFO    ] No camera update needed
[2026-06-13 22:06:48,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:06:48,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:06:48,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:06:48,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:06:50,420.420 INFO    ] ================================================
[2026-06-13 22:06:50,435.435 INFO    ] Launching Daemon at Sat Jun 13 22:06:50 IST 2026
[2026-06-13 22:06:50,446.446 INFO    ] ================================================
[2026-06-13 22:06:50,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:06:50
[2026-06-13 22:06:51,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:06:51,919.919 INFO    ] Initializing speech engine...
[2026-06-13 22:06:51,933.933 INFO    ] 2026-06-13 22:06:51
[2026-06-13 22:06:52,222.222 INFO    ] 2026-06-13 22:06:52
[2026-06-13 22:06:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:06:52,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:06:52,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:06:52,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:06:52,752.752 INFO    ] time= 13/06/2026 22:06:52
[2026-06-13 22:06:52,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:06:52,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:06:52,906.906 INFO    ] No existing commands found in stream
[2026-06-13 22:06:57,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:06:57,930.930 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 22:07:01,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:07:01,081.081 INFO    ] Checking for system updates...
[2026-06-13 22:07:01,102.102 INFO    ] 200
[2026-06-13 22:07:01,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:01,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:01,179.179 INFO    ] No update needed
[2026-06-13 22:07:01,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:01,241.241 INFO    ] 200
[2026-06-13 22:07:01,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:01,289.289 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:01,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:01,337.337 INFO    ] No camera update needed
[2026-06-13 22:07:01,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:01,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:01,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:01,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:07:03,398.398 INFO    ] ================================================
[2026-06-13 22:07:03,414.414 INFO    ] Launching Daemon at Sat Jun 13 22:07:03 IST 2026
[2026-06-13 22:07:03,426.426 INFO    ] ================================================
[2026-06-13 22:07:03,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:07:03
[2026-06-13 22:07:04,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:07:04,841.841 INFO    ] Initializing speech engine...
[2026-06-13 22:07:04,850.850 INFO    ] 2026-06-13 22:07:04
[2026-06-13 22:07:05,064.064 INFO    ] 2026-06-13 22:07:05
[2026-06-13 22:07:05,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:07:05,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:07:05,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:07:05,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:07:05,463.463 INFO    ] time= 13/06/2026 22:07:05
[2026-06-13 22:07:05,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:07:05,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:07:05,586.586 INFO    ] No existing commands found in stream
[2026-06-13 22:07:10,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:07:10,610.610 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 22:07:12,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:07:12,898.898 INFO    ] Checking for system updates...
[2026-06-13 22:07:12,922.922 INFO    ] 200
[2026-06-13 22:07:12,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:12,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:12,962.962 INFO    ] No update needed
[2026-06-13 22:07:12,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:12,984.984 INFO    ] 200
[2026-06-13 22:07:12,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:13,009.009 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:13,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:13,033.033 INFO    ] No camera update needed
[2026-06-13 22:07:13,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:13,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:13,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:13,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:07:15,083.083 INFO    ] ================================================
[2026-06-13 22:07:15,099.099 INFO    ] Launching Daemon at Sat Jun 13 22:07:15 IST 2026
[2026-06-13 22:07:15,110.110 INFO    ] ================================================
[2026-06-13 22:07:15,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:07:15
[2026-06-13 22:07:15,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:07:16,003.003 INFO    ] Initializing speech engine...
[2026-06-13 22:07:16,011.011 INFO    ] 2026-06-13 22:07:16
[2026-06-13 22:07:16,216.216 INFO    ] 2026-06-13 22:07:16
[2026-06-13 22:07:16,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:07:16,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:07:16,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:07:16,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:07:16,587.587 INFO    ] time= 13/06/2026 22:07:16
[2026-06-13 22:07:16,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:07:16,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:07:16,756.756 INFO    ] No existing commands found in stream
[2026-06-13 22:07:21,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:07:21,770.770 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 22:07:22,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:07:22,229.229 INFO    ] Checking for system updates...
[2026-06-13 22:07:22,251.251 INFO    ] 200
[2026-06-13 22:07:22,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:22,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:22,285.285 INFO    ] No update needed
[2026-06-13 22:07:22,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:22,306.306 INFO    ] 200
[2026-06-13 22:07:22,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:22,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:22,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:22,371.371 INFO    ] No camera update needed
[2026-06-13 22:07:22,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:22,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:22,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:22,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:07:24,422.422 INFO    ] ================================================
[2026-06-13 22:07:24,437.437 INFO    ] Launching Daemon at Sat Jun 13 22:07:24 IST 2026
[2026-06-13 22:07:24,448.448 INFO    ] ================================================
[2026-06-13 22:07:24,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:07:24
[2026-06-13 22:07:25,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:07:25,295.295 INFO    ] Initializing speech engine...
[2026-06-13 22:07:25,301.301 INFO    ] 2026-06-13 22:07:25
[2026-06-13 22:07:25,511.511 INFO    ] 2026-06-13 22:07:25
[2026-06-13 22:07:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:07:25,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:07:25,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:07:25,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:07:25,884.884 INFO    ] time= 13/06/2026 22:07:25
[2026-06-13 22:07:25,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:07:25,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:07:26,030.030 INFO    ] No existing commands found in stream
[2026-06-13 22:07:31,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:07:31,053.053 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-13 22:07:34,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:07:34,705.705 INFO    ] Checking for system updates...
[2026-06-13 22:07:34,727.727 INFO    ] 200
[2026-06-13 22:07:34,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:34,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:34,763.763 INFO    ] No update needed
[2026-06-13 22:07:34,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:34,787.787 INFO    ] 200
[2026-06-13 22:07:34,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:34,813.813 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:34,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:34,852.852 INFO    ] No camera update needed
[2026-06-13 22:07:34,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:34,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:34,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:34,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:07:36,901.901 INFO    ] ================================================
[2026-06-13 22:07:36,916.916 INFO    ] Launching Daemon at Sat Jun 13 22:07:36 IST 2026
[2026-06-13 22:07:36,927.927 INFO    ] ================================================
[2026-06-13 22:07:37,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:07:37
[2026-06-13 22:07:37,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:07:37,737.737 INFO    ] Initializing speech engine...
[2026-06-13 22:07:37,742.742 INFO    ] 2026-06-13 22:07:37
[2026-06-13 22:07:37,948.948 INFO    ] 2026-06-13 22:07:37
[2026-06-13 22:07:37,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:07:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:07:38,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:07:38,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:07:38,357.357 INFO    ] time= 13/06/2026 22:07:38
[2026-06-13 22:07:38,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:07:38,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:07:38,470.470 INFO    ] No existing commands found in stream
[2026-06-13 22:07:43,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:07:43,483.483 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-13 22:07:47,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:07:47,352.352 INFO    ] Checking for system updates...
[2026-06-13 22:07:47,373.373 INFO    ] 200
[2026-06-13 22:07:47,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:47,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:47,410.410 INFO    ] No update needed
[2026-06-13 22:07:47,411.411 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:47,431.431 INFO    ] 200
[2026-06-13 22:07:47,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:47,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:47,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:07:47,499.499 INFO    ] No camera update needed
[2026-06-13 22:07:47,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:47,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:47,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:47,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:07:49,549.549 INFO    ] ================================================
[2026-06-13 22:07:49,564.564 INFO    ] Launching Daemon at Sat Jun 13 22:07:49 IST 2026
[2026-06-13 22:07:49,574.574 INFO    ] ================================================
[2026-06-13 22:07:49,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:07:49
[2026-06-13 22:07:50,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:07:50,383.383 INFO    ] Initializing speech engine...
[2026-06-13 22:07:50,396.396 INFO    ] 2026-06-13 22:07:50
[2026-06-13 22:07:50,604.604 INFO    ] 2026-06-13 22:07:50
[2026-06-13 22:07:50,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:07:50,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:07:50,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:07:50,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:07:51,021.021 INFO    ] time= 13/06/2026 22:07:50
[2026-06-13 22:07:51,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:07:51,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:07:51,122.122 INFO    ] No existing commands found in stream
[2026-06-13 22:07:56,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:07:56,134.134 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 22:07:57,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:07:57,984.984 INFO    ] Checking for system updates...
[2026-06-13 22:07:58,005.005 INFO    ] 200
[2026-06-13 22:07:58,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:58,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:07:58,039.039 INFO    ] No update needed
[2026-06-13 22:07:58,040.040 INFO    ] Checking for camera pi updates...
[2026-06-13 22:07:58,060.060 INFO    ] 200
[2026-06-13 22:07:58,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:07:58,087.087 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:07:58,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:07:58,133.133 INFO    ] No camera update needed
[2026-06-13 22:07:58,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:07:58,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:07:58,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:07:58,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:00,180.180 INFO    ] ================================================
[2026-06-13 22:08:00,196.196 INFO    ] Launching Daemon at Sat Jun 13 22:08:00 IST 2026
[2026-06-13 22:08:00,206.206 INFO    ] ================================================
[2026-06-13 22:08:00,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:00
[2026-06-13 22:08:00,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:01,086.086 INFO    ] Initializing speech engine...
[2026-06-13 22:08:01,096.096 INFO    ] 2026-06-13 22:08:01
[2026-06-13 22:08:01,302.302 INFO    ] 2026-06-13 22:08:01
[2026-06-13 22:08:01,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:01,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:01,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:01,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:01,664.664 INFO    ] time= 13/06/2026 22:08:01
[2026-06-13 22:08:01,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:01,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:01,809.809 INFO    ] No existing commands found in stream
[2026-06-13 22:08:06,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:06,823.823 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 22:08:07,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:08:07,354.354 INFO    ] Checking for system updates...
[2026-06-13 22:08:07,376.376 INFO    ] 200
[2026-06-13 22:08:07,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:07,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:08:07,411.411 INFO    ] No update needed
[2026-06-13 22:08:07,412.412 INFO    ] Checking for camera pi updates...
[2026-06-13 22:08:07,431.431 INFO    ] 200
[2026-06-13 22:08:07,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:07,459.459 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:08:07,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:08:07,494.494 INFO    ] No camera update needed
[2026-06-13 22:08:07,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:08:07,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:08:07,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:08:07,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:09,543.543 INFO    ] ================================================
[2026-06-13 22:08:09,559.559 INFO    ] Launching Daemon at Sat Jun 13 22:08:09 IST 2026
[2026-06-13 22:08:09,570.570 INFO    ] ================================================
[2026-06-13 22:08:09,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:09
[2026-06-13 22:08:10,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:10,382.382 INFO    ] Initializing speech engine...
[2026-06-13 22:08:10,390.390 INFO    ] 2026-06-13 22:08:10
[2026-06-13 22:08:10,612.612 INFO    ] 2026-06-13 22:08:10
[2026-06-13 22:08:10,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:10,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:10,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:10,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:11,034.034 INFO    ] time= 13/06/2026 22:08:10
[2026-06-13 22:08:11,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:11,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:11,180.180 INFO    ] No existing commands found in stream
[2026-06-13 22:08:16,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:16,193.193 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 22:08:18,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:08:18,173.173 INFO    ] Checking for system updates...
[2026-06-13 22:08:18,196.196 INFO    ] 200
[2026-06-13 22:08:18,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:18,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:18,230.230 INFO    ] No update needed
[2026-06-13 22:08:18,231.231 INFO    ] Checking for camera pi updates...
[2026-06-13 22:08:18,250.250 INFO    ] 200
[2026-06-13 22:08:18,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:18,277.277 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:08:18,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:18,314.314 INFO    ] No camera update needed
[2026-06-13 22:08:18,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:08:18,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:08:18,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:08:18,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:20,361.361 INFO    ] ================================================
[2026-06-13 22:08:20,377.377 INFO    ] Launching Daemon at Sat Jun 13 22:08:20 IST 2026
[2026-06-13 22:08:20,388.388 INFO    ] ================================================
[2026-06-13 22:08:20,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:20
[2026-06-13 22:08:21,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:21,275.275 INFO    ] Initializing speech engine...
[2026-06-13 22:08:21,279.279 INFO    ] 2026-06-13 22:08:21
[2026-06-13 22:08:21,490.490 INFO    ] 2026-06-13 22:08:21
[2026-06-13 22:08:21,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:21,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:21,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:21,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:21,917.917 INFO    ] time= 13/06/2026 22:08:21
[2026-06-13 22:08:21,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:21,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:22,015.015 INFO    ] No existing commands found in stream
[2026-06-13 22:08:27,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:27,033.033 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 22:08:27,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:08:27,528.528 INFO    ] Checking for system updates...
[2026-06-13 22:08:27,549.549 INFO    ] 200
[2026-06-13 22:08:27,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:27,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:27,583.583 INFO    ] No update needed
[2026-06-13 22:08:27,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 22:08:27,606.606 INFO    ] 200
[2026-06-13 22:08:27,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:27,643.643 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:08:27,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:27,686.686 INFO    ] No camera update needed
[2026-06-13 22:08:27,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:08:27,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:08:27,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:08:27,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:29,735.735 INFO    ] ================================================
[2026-06-13 22:08:29,750.750 INFO    ] Launching Daemon at Sat Jun 13 22:08:29 IST 2026
[2026-06-13 22:08:29,761.761 INFO    ] ================================================
[2026-06-13 22:08:30,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:30
[2026-06-13 22:08:30,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:30,585.585 INFO    ] Initializing speech engine...
[2026-06-13 22:08:30,588.588 INFO    ] 2026-06-13 22:08:30
[2026-06-13 22:08:30,791.791 INFO    ] 2026-06-13 22:08:30
[2026-06-13 22:08:30,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:30,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:31,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:31,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:31,263.263 INFO    ] time= 13/06/2026 22:08:31
[2026-06-13 22:08:31,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:31,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:31,388.388 INFO    ] No existing commands found in stream
[2026-06-13 22:08:36,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:36,402.402 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 22:08:40,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:08:40,555.555 INFO    ] Checking for system updates...
[2026-06-13 22:08:40,578.578 INFO    ] 200
[2026-06-13 22:08:40,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:40,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:40,611.611 INFO    ] No update needed
[2026-06-13 22:08:40,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 22:08:40,632.632 INFO    ] 200
[2026-06-13 22:08:40,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:40,659.659 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:08:40,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:08:40,800.800 INFO    ] No camera update needed
[2026-06-13 22:08:40,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:08:40,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:08:40,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:08:40,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:42,848.848 INFO    ] ================================================
[2026-06-13 22:08:42,863.863 INFO    ] Launching Daemon at Sat Jun 13 22:08:42 IST 2026
[2026-06-13 22:08:42,874.874 INFO    ] ================================================
[2026-06-13 22:08:43,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:43
[2026-06-13 22:08:43,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:43,743.743 INFO    ] Initializing speech engine...
[2026-06-13 22:08:43,748.748 INFO    ] 2026-06-13 22:08:43
[2026-06-13 22:08:43,956.956 INFO    ] 2026-06-13 22:08:43
[2026-06-13 22:08:43,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:44,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:44,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:44,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:44,374.374 INFO    ] time= 13/06/2026 22:08:44
[2026-06-13 22:08:44,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:44,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:44,491.491 INFO    ] No existing commands found in stream
[2026-06-13 22:08:49,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:49,518.518 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-13 22:08:50,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:08:50,795.795 INFO    ] Checking for system updates...
[2026-06-13 22:08:50,816.816 INFO    ] 200
[2026-06-13 22:08:50,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:50,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:08:50,852.852 INFO    ] No update needed
[2026-06-13 22:08:50,853.853 INFO    ] Checking for camera pi updates...
[2026-06-13 22:08:50,872.872 INFO    ] 200
[2026-06-13 22:08:50,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:08:50,898.898 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:08:50,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:08:50,940.940 INFO    ] No camera update needed
[2026-06-13 22:08:50,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:08:50,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:08:50,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:08:50,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:08:52,987.987 INFO    ] ================================================
[2026-06-13 22:08:53,002.002 INFO    ] Launching Daemon at Sat Jun 13 22:08:52 IST 2026
[2026-06-13 22:08:53,012.012 INFO    ] ================================================
[2026-06-13 22:08:53,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:08:53
[2026-06-13 22:08:53,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:08:53,810.810 INFO    ] Initializing speech engine...
[2026-06-13 22:08:53,815.815 INFO    ] 2026-06-13 22:08:53
[2026-06-13 22:08:54,010.010 INFO    ] 2026-06-13 22:08:54
[2026-06-13 22:08:54,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:08:54,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:08:54,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:08:54,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:08:54,480.480 INFO    ] time= 13/06/2026 22:08:54
[2026-06-13 22:08:54,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:08:54,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:08:54,636.636 INFO    ] No existing commands found in stream
[2026-06-13 22:08:59,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:08:59,650.650 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-13 22:09:01,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:09:01,269.269 INFO    ] Checking for system updates...
[2026-06-13 22:09:01,290.290 INFO    ] 200
[2026-06-13 22:09:01,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:01,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:01,325.325 INFO    ] No update needed
[2026-06-13 22:09:01,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 22:09:01,346.346 INFO    ] 200
[2026-06-13 22:09:01,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:01,371.371 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:09:01,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:01,406.406 INFO    ] No camera update needed
[2026-06-13 22:09:01,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:09:01,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:01,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:01,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:03,447.447 INFO    ] ================================================
[2026-06-13 22:09:03,462.462 INFO    ] Launching Daemon at Sat Jun 13 22:09:03 IST 2026
[2026-06-13 22:09:03,473.473 INFO    ] ================================================
[2026-06-13 22:09:03,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:03
[2026-06-13 22:09:04,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:04,283.283 INFO    ] Initializing speech engine...
[2026-06-13 22:09:04,288.288 INFO    ] 2026-06-13 22:09:04
[2026-06-13 22:09:04,518.518 INFO    ] 2026-06-13 22:09:04
[2026-06-13 22:09:04,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:04,592.592 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 22:09:04,650.650 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 22:09:04,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:04,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:04,738.738 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:09:04,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:06,826.826 INFO    ] ================================================
[2026-06-13 22:09:06,841.841 INFO    ] Launching Daemon at Sat Jun 13 22:09:06 IST 2026
[2026-06-13 22:09:06,852.852 INFO    ] ================================================
[2026-06-13 22:09:07,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:07
[2026-06-13 22:09:07,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:07,656.656 INFO    ] Initializing speech engine...
[2026-06-13 22:09:07,668.668 INFO    ] 2026-06-13 22:09:07
[2026-06-13 22:09:07,881.881 INFO    ] 2026-06-13 22:09:07
[2026-06-13 22:09:07,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:07,945.945 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-13 22:09:08,007.007 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-13 22:09:08,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:08,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:08,067.067 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:09:08,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:10,180.180 INFO    ] ================================================
[2026-06-13 22:09:10,195.195 INFO    ] Launching Daemon at Sat Jun 13 22:09:10 IST 2026
[2026-06-13 22:09:10,207.207 INFO    ] ================================================
[2026-06-13 22:09:10,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:10
[2026-06-13 22:09:10,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:11,067.067 INFO    ] Initializing speech engine...
[2026-06-13 22:09:11,083.083 INFO    ] 2026-06-13 22:09:11
[2026-06-13 22:09:11,370.370 INFO    ] 2026-06-13 22:09:11
[2026-06-13 22:09:11,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:11,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:09:11,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:09:11,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:09:11,751.751 INFO    ] time= 13/06/2026 22:09:11
[2026-06-13 22:09:11,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:09:11,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:09:11,876.876 INFO    ] No existing commands found in stream
[2026-06-13 22:09:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:09:16,891.891 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 22:09:19,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:09:19,681.681 INFO    ] Checking for system updates...
[2026-06-13 22:09:19,703.703 INFO    ] 200
[2026-06-13 22:09:19,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:19,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:19,738.738 INFO    ] No update needed
[2026-06-13 22:09:19,740.740 INFO    ] Checking for camera pi updates...
[2026-06-13 22:09:19,760.760 INFO    ] 200
[2026-06-13 22:09:19,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:19,785.785 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:09:19,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:19,923.923 INFO    ] No camera update needed
[2026-06-13 22:09:19,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:09:19,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:19,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:19,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:21,972.972 INFO    ] ================================================
[2026-06-13 22:09:21,987.987 INFO    ] Launching Daemon at Sat Jun 13 22:09:21 IST 2026
[2026-06-13 22:09:22,998.998 INFO    ] ================================================
[2026-06-13 22:09:22,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:22
[2026-06-13 22:09:22,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:22,885.885 INFO    ] Initializing speech engine...
[2026-06-13 22:09:22,891.891 INFO    ] 2026-06-13 22:09:22
[2026-06-13 22:09:23,101.101 INFO    ] 2026-06-13 22:09:23
[2026-06-13 22:09:23,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:23,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:09:23,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:09:23,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:09:23,529.529 INFO    ] time= 13/06/2026 22:09:23
[2026-06-13 22:09:23,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:09:23,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:09:23,627.627 INFO    ] No existing commands found in stream
[2026-06-13 22:09:28,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:09:28,641.641 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 22:09:32,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:09:32,604.604 INFO    ] Checking for system updates...
[2026-06-13 22:09:32,625.625 INFO    ] 200
[2026-06-13 22:09:32,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:32,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:09:32,659.659 INFO    ] No update needed
[2026-06-13 22:09:32,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 22:09:32,679.679 INFO    ] 200
[2026-06-13 22:09:32,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:32,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:09:32,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:32,727.727 INFO    ] No camera update needed
[2026-06-13 22:09:32,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:09:32,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:32,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:32,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:34,775.775 INFO    ] ================================================
[2026-06-13 22:09:34,791.791 INFO    ] Launching Daemon at Sat Jun 13 22:09:34 IST 2026
[2026-06-13 22:09:34,802.802 INFO    ] ================================================
[2026-06-13 22:09:35,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:35
[2026-06-13 22:09:35,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:35,625.625 INFO    ] Initializing speech engine...
[2026-06-13 22:09:35,630.630 INFO    ] 2026-06-13 22:09:35
[2026-06-13 22:09:35,833.833 INFO    ] 2026-06-13 22:09:35
[2026-06-13 22:09:35,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:36,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:09:36,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:09:36,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:09:36,260.260 INFO    ] time= 13/06/2026 22:09:36
[2026-06-13 22:09:36,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:09:36,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:09:36,356.356 INFO    ] No existing commands found in stream
[2026-06-13 22:09:41,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:09:41,371.371 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 22:09:43,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:09:43,016.016 INFO    ] Checking for system updates...
[2026-06-13 22:09:43,037.037 INFO    ] 200
[2026-06-13 22:09:43,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:43,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:43,073.073 INFO    ] No update needed
[2026-06-13 22:09:43,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 22:09:43,093.093 INFO    ] 200
[2026-06-13 22:09:43,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:43,118.118 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:09:43,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:09:43,162.162 INFO    ] No camera update needed
[2026-06-13 22:09:43,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:09:43,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:43,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:43,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:45,210.210 INFO    ] ================================================
[2026-06-13 22:09:45,226.226 INFO    ] Launching Daemon at Sat Jun 13 22:09:45 IST 2026
[2026-06-13 22:09:45,236.236 INFO    ] ================================================
[2026-06-13 22:09:45,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:45
[2026-06-13 22:09:45,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:46,108.108 INFO    ] Initializing speech engine...
[2026-06-13 22:09:46,113.113 INFO    ] 2026-06-13 22:09:46
[2026-06-13 22:09:46,322.322 INFO    ] 2026-06-13 22:09:46
[2026-06-13 22:09:46,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:46,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:09:46,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:09:46,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:09:46,724.724 INFO    ] time= 13/06/2026 22:09:46
[2026-06-13 22:09:46,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:09:46,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:09:46,897.897 INFO    ] No existing commands found in stream
[2026-06-13 22:09:51,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:09:51,912.912 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 22:09:54,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:09:54,516.516 INFO    ] Checking for system updates...
[2026-06-13 22:09:54,538.538 INFO    ] 200
[2026-06-13 22:09:54,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:54,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:09:54,571.571 INFO    ] No update needed
[2026-06-13 22:09:54,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 22:09:54,592.592 INFO    ] 200
[2026-06-13 22:09:54,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:09:54,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:09:54,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:09:54,656.656 INFO    ] No camera update needed
[2026-06-13 22:09:54,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:09:54,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:09:54,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:09:54,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:09:56,703.703 INFO    ] ================================================
[2026-06-13 22:09:56,718.718 INFO    ] Launching Daemon at Sat Jun 13 22:09:56 IST 2026
[2026-06-13 22:09:56,729.729 INFO    ] ================================================
[2026-06-13 22:09:57,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:09:57
[2026-06-13 22:09:57,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:09:57,526.526 INFO    ] Initializing speech engine...
[2026-06-13 22:09:57,536.536 INFO    ] 2026-06-13 22:09:57
[2026-06-13 22:09:57,739.739 INFO    ] 2026-06-13 22:09:57
[2026-06-13 22:09:57,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:09:57,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:09:57,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:09:58,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:09:58,110.110 INFO    ] time= 13/06/2026 22:09:58
[2026-06-13 22:09:58,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:09:58,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:09:58,256.256 INFO    ] No existing commands found in stream
[2026-06-13 22:10:03,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:10:03,274.274 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-13 22:10:09,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:10:09,091.091 INFO    ] Checking for system updates...
[2026-06-13 22:10:09,128.128 INFO    ] 200
[2026-06-13 22:10:09,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:09,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:09,186.186 INFO    ] No update needed
[2026-06-13 22:10:09,189.189 INFO    ] Checking for camera pi updates...
[2026-06-13 22:10:09,227.227 INFO    ] 200
[2026-06-13 22:10:09,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:09,270.270 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:10:09,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:09,316.316 INFO    ] No camera update needed
[2026-06-13 22:10:09,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:10:09,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:10:09,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:10:09,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:10:11,372.372 INFO    ] ================================================
[2026-06-13 22:10:11,387.387 INFO    ] Launching Daemon at Sat Jun 13 22:10:11 IST 2026
[2026-06-13 22:10:11,398.398 INFO    ] ================================================
[2026-06-13 22:10:11,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:10:11
[2026-06-13 22:10:12,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:10:12,201.201 INFO    ] Initializing speech engine...
[2026-06-13 22:10:12,210.210 INFO    ] 2026-06-13 22:10:12
[2026-06-13 22:10:12,436.436 INFO    ] 2026-06-13 22:10:12
[2026-06-13 22:10:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:10:12,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:10:12,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:10:12,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:10:12,913.913 INFO    ] time= 13/06/2026 22:10:12
[2026-06-13 22:10:12,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:10:13,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:10:13,120.120 INFO    ] No existing commands found in stream
[2026-06-13 22:10:18,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:10:18,153.153 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-13 22:10:18,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:10:18,702.702 INFO    ] Checking for system updates...
[2026-06-13 22:10:18,724.724 INFO    ] 200
[2026-06-13 22:10:18,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:18,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:10:18,758.758 INFO    ] No update needed
[2026-06-13 22:10:18,760.760 INFO    ] Checking for camera pi updates...
[2026-06-13 22:10:18,780.780 INFO    ] 200
[2026-06-13 22:10:18,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:18,804.804 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:10:18,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:10:18,843.843 INFO    ] No camera update needed
[2026-06-13 22:10:18,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:10:18,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:10:18,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:10:18,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:10:20,891.891 INFO    ] ================================================
[2026-06-13 22:10:20,907.907 INFO    ] Launching Daemon at Sat Jun 13 22:10:20 IST 2026
[2026-06-13 22:10:20,917.917 INFO    ] ================================================
[2026-06-13 22:10:21,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:10:21
[2026-06-13 22:10:21,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:10:21,690.690 INFO    ] Initializing speech engine...
[2026-06-13 22:10:21,695.695 INFO    ] 2026-06-13 22:10:21
[2026-06-13 22:10:21,923.923 INFO    ] 2026-06-13 22:10:21
[2026-06-13 22:10:21,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:10:22,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:10:22,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:10:22,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:10:22,325.325 INFO    ] time= 13/06/2026 22:10:22
[2026-06-13 22:10:22,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:10:22,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:10:22,477.477 INFO    ] No existing commands found in stream
[2026-06-13 22:10:27,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:10:27,490.490 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 22:10:29,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:10:29,261.261 INFO    ] Checking for system updates...
[2026-06-13 22:10:29,282.282 INFO    ] 200
[2026-06-13 22:10:29,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:29,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:29,316.316 INFO    ] No update needed
[2026-06-13 22:10:29,317.317 INFO    ] Checking for camera pi updates...
[2026-06-13 22:10:29,337.337 INFO    ] 200
[2026-06-13 22:10:29,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:29,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:10:29,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:29,400.400 INFO    ] No camera update needed
[2026-06-13 22:10:29,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:10:29,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:10:29,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:10:29,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:10:31,447.447 INFO    ] ================================================
[2026-06-13 22:10:31,463.463 INFO    ] Launching Daemon at Sat Jun 13 22:10:31 IST 2026
[2026-06-13 22:10:31,475.475 INFO    ] ================================================
[2026-06-13 22:10:32,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:10:32
[2026-06-13 22:10:32,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:10:32,740.740 INFO    ] Initializing speech engine...
[2026-06-13 22:10:32,745.745 INFO    ] 2026-06-13 22:10:32
[2026-06-13 22:10:32,947.947 INFO    ] 2026-06-13 22:10:32
[2026-06-13 22:10:32,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:10:33,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:10:33,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:10:33,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:10:33,357.357 INFO    ] time= 13/06/2026 22:10:33
[2026-06-13 22:10:33,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:10:33,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:10:33,460.460 INFO    ] No existing commands found in stream
[2026-06-13 22:10:35,456.456 INFO    ] Received new command: ID=1781368835280-0
[2026-06-13 22:10:35,459.459 INFO    ] process_and_cleanup_command: msg_id=1781368835280-0
[2026-06-13 22:10:35,461.461 INFO    ] is_command_expired: timestamp=2026-06-13T16:40:34.894Z, expiry=30s
[2026-06-13 22:10:35,528.528 INFO    ] Command removed from stream: 1781368835280-0. returning for processing...
[2026-06-13 22:10:35,530.530 INFO    ] ***** get_valid_command
[2026-06-13 22:10:35,532.532 INFO    ] {'timeout': '10', 'timestamp': '2026-06-13T16:40:34.894Z', 'data': '{"request_id":"start-order-1781368834894-asz8pj2hg","orderId":"TM08202203260613220948238","is_vending":false}', 'command': 'start-order', 'source': 'webapp'}
[2026-06-13 22:10:35,535.535 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613220948238', 'request_id': 'start-order-1781368834894-asz8pj2hg', 'is_vending': False}
[2026-06-13 22:10:35,537.537 INFO    ] Handling start order...
[2026-06-13 22:10:35,540.540 INFO    ] handle_start_order_command
[2026-06-13 22:10:35,545.545 INFO    ] _send_start_order_success: request_id=start-order-1781368834894-asz8pj2hg, order_id=TM08202203260613220948238
[2026-06-13 22:10:35,548.548 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:10:35,595.595 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781368835575-0
[2026-06-13 22:10:35,596.596 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:10:35,597.597 INFO    ] Checking for system updates...
[2026-06-13 22:10:35,621.621 INFO    ] 200
[2026-06-13 22:10:35,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:35,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:35,657.657 INFO    ] No update needed
[2026-06-13 22:10:35,658.658 INFO    ] Checking for camera pi updates...
[2026-06-13 22:10:35,678.678 INFO    ] 200
[2026-06-13 22:10:35,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:35,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:10:35,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:10:35,746.746 INFO    ] No camera update needed
[2026-06-13 22:10:35,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:10:35,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:10:35,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:10:35,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:10:37,796.796 INFO    ] ================================================
[2026-06-13 22:10:37,811.811 INFO    ] Launching Daemon at Sat Jun 13 22:10:37 IST 2026
[2026-06-13 22:10:37,822.822 INFO    ] ================================================
[2026-06-13 22:10:38,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:10:38
[2026-06-13 22:10:38,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:10:38,664.664 INFO    ] Initializing speech engine...
[2026-06-13 22:10:38,670.670 INFO    ] 2026-06-13 22:10:38
[2026-06-13 22:10:38,878.878 INFO    ] 2026-06-13 22:10:38
[2026-06-13 22:10:38,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:10:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:10:39,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:10:39,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:10:39,288.288 INFO    ] time= 13/06/2026 22:10:39
[2026-06-13 22:10:39,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:10:39,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:10:39,402.402 INFO    ] Found 3 existing command(s) in stream
[2026-06-13 22:10:39,404.404 INFO    ] Checking historical command: ID=1781368835575-0
[2026-06-13 22:10:39,429.429 INFO    ] process_and_cleanup_command: msg_id=1781368835575-0
[2026-06-13 22:10:39,431.431 INFO    ] is_command_expired: timestamp=2026-06-13T16:40:35.546698Z, expiry=30s
[2026-06-13 22:10:39,542.542 INFO    ] Command removed from stream: 1781368835575-0. returning for processing...
[2026-06-13 22:10:39,546.546 INFO    ] ***** get_valid_command
[2026-06-13 22:10:39,550.550 INFO    ] {'message': 'start-order success', 'status': 'success', 'metadata_order_id': 'TM08202203260613220948238', 'metadata_request_id': 'start-order-1781368834894-asz8pj2hg', 'message_type': 'command_response', 'imei': 'TM08202203', 'timestamp': '2026-06-13T16:40:35.546698Z'}
[2026-06-13 22:10:39,556.556 INFO    ] Checking historical command: ID=1781368837886-0
[2026-06-13 22:10:39,559.559 INFO    ] process_and_cleanup_command: msg_id=1781368837886-0
[2026-06-13 22:10:39,562.562 INFO    ] is_command_expired: timestamp=2026-06-13T16:40:37.528Z, expiry=30s
[2026-06-13 22:10:39,618.618 INFO    ] Command removed from stream: 1781368837886-0. returning for processing...
[2026-06-13 22:10:39,621.621 INFO    ] ***** get_valid_command
[2026-06-13 22:10:39,624.624 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1781368837528-fy6be3h6r","orderId":"TM08202203260613220948238","is_vending":false,"accessCode":"36340238"}', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-06-13T16:40:37.528Z'}
[2026-06-13 22:10:39,628.628 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613220948238', 'is_vending': False, 'request_id': 'process-order-1781368837528-fy6be3h6r', 'accessCode': '36340238'}
[2026-06-13 22:10:39,632.632 INFO    ] Handling process order...
[2026-06-13 22:10:39,636.636 INFO    ] Processing process-order command...
[2026-06-13 22:10:39,642.642 INFO    ] 🔍 Lock file Order ID: TM08202203260613220948238, TS: 2026-06-13 22:10:35
[2026-06-13 22:10:39,654.654 INFO    ] ✅ Order lock valid for TM08202203260613220948238
[2026-06-13 22:10:39,658.658 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:10:39,662.662 INFO    ] processing access code 36340238 for order TM08202203260613220948238
[2026-06-13 22:10:39,667.667 INFO    ] 🔍 Lock file Order ID: TM08202203260613220948238, TS: 2026-06-13 22:10:35
[2026-06-13 22:10:39,673.673 INFO    ] ✅ Order lock valid for TM08202203260613220948238
[2026-06-13 22:10:39,677.677 INFO    ] 2026-06-13 22:10:39
[2026-06-13 22:10:39,708.708 INFO    ] 200
[2026-06-13 22:10:39,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:10:39,711.711 INFO    ] 36340238
[2026-06-13 22:10:39,764.764 INFO    ] 2026-06-13 22:10:39
[2026-06-13 22:10:39,774.774 INFO    ] session id :672703159
[2026-06-13 22:10:39,799.799 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=36340238&imei=TM08202203&session_id=672703159
[2026-06-13 22:10:40,617.617 INFO    ] 200
[2026-06-13 22:10:40,620.620 INFO    ] {"data": {"mobile": "8553957775", "order_id": "TM08202203260613220948238", "bill_amount": "60", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 2, "sku_total": 40, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 2, "sku_total": 20, "offer_id": ""}], "access_code": "36340238", "invoice_bill": "60"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:10:40,623.623 INFO    ] 60
[2026-06-13 22:10:40,626.626 INFO    ] TM08202203260613220948238
[2026-06-13 22:10:40,628.628 INFO    ] 8553957775
[2026-06-13 22:10:40,631.631 INFO    ] 2026-06-13 22:10:40
[2026-06-13 22:10:40,634.634 INFO    ] Door Opening for user mobile ending with  seven seven seven five 
[2026-06-13 22:10:40,637.637 INFO    ] Door Opening for user mobile ending with  seven seven seven five 
[2026-06-13 22:10:40,640.640 INFO    ] d60bd71273c714b2646d353170e5f6bd
[2026-06-13 22:10:40,643.643 INFO    ] 2026-06-13 22:10:40
[2026-06-13 22:10:40,645.645 INFO    ] playing audio file
[2026-06-13 22:10:40,663.663 INFO    ] 2026-06-13 22:10:40
[2026-06-13 22:10:40,667.667 INFO    ] 2026-06-13 22:10:40
[2026-06-13 22:10:40,671.671 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:10:40,674.674 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:10:40,719.719 INFO    ] [publish_status] Message added to stream with ID: 1781368840698-0
[2026-06-13 22:10:40,722.722 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "data": {"bill_amount": "60", "proposed_sku_json": [{"offer_desc": "", "sku_total": 40, "unit_price": 20, "door_id": "2", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "43", "offer_id": "", "qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "mrp": "20", "skuid": "185993"}, {"offer_desc": "", "sku_total": 20, "unit_price": 10, "door_id": "1", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "tray_id": "11", "offer_id": "", "qty": 2, "name": "Modern kitchens Banana Chips 21gm", "mrp": "10", "skuid": "4500648"}], "mobile": "8553957775", "invoice_bill": "60", "order_id": "TM08202203260613220948238", "access_code": "36340238"}, "status": true, "msg": "Order Data"}', 'timestamp': '2026-06-13T16:40:40.669115Z'} (ID: 1781368840698-0)
[2026-06-13 22:10:41,112.112 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'bill_amount': '60', 'proposed_sku_json': [{'offer_desc': '', 'sku_total': 40, 'unit_price': 20, 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'offer_id': '', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'mrp': '20', 'skuid': '185993'}, {'offer_desc': '', 'sku_total': 20, 'unit_price': 10, 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'tray_id': '11', 'offer_id': '', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm', 'mrp': '10', 'skuid': '4500648'}], 'mobile': '8553957775', 'invoice_bill': '60', 'order_id': 'TM08202203260613220948238', 'access_code': '36340238'}, 'status': True, 'msg': 'Order Data'}}
[2026-06-13 22:10:41,115.115 INFO    ] 200
[2026-06-13 22:10:41,117.117 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"order-started","server_response":{"rstatus":true,"data":{"bill_amount":"60","proposed_sku_json":[{"offer_desc":"","sku_total":40,"unit_price":20,"door_id":"2","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"43","offer_id":"","qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","skuid":"185993"},{"offer_desc":"","sku_total":20,"unit_price":10,"door_id":"1","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","tray_id":"11","offer_id":"","qty":2,"name":"Modern kitchens Banana Chips 21gm","mrp":"10","skuid":"4500648"}],"mobile":"8553957775","invoice_bill":"60","order_id":"TM08202203260613220948238","access_code":"36340238"},"status":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:10:41,120.120 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'order_id': 'TM08202203260613220948238', 'proposed_sku_json': [{'offer_desc': '', 'sku_total': 40, 'unit_price': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'qty': 2, 'offer_id': '', 'mrp': '20', 'skuid': '185993'}, {'offer_desc': '', 'sku_total': 20, 'unit_price': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'tray_id': '11', 'qty': 2, 'offer_id': '', 'mrp': '10', 'skuid': '4500648'}], 'mobile': '8553957775', 'invoice_bill': '60', 'bill_amount': '60', 'access_code': '36340238'}}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:10:41,123.123 INFO    ] 2026-06-13 22:10:41
[2026-06-13 22:10:41,185.185 INFO    ] 200
[2026-06-13 22:10:41,188.188 INFO    ] True
[2026-06-13 22:10:41,351.351 INFO    ] 200
[2026-06-13 22:10:41,354.354 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:41,357.357 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False}
[2026-06-13 22:10:41,360.360 INFO    ] *** process_order ***
[2026-06-13 22:10:42,555.555 INFO    ] 200
[2026-06-13 22:10:42,558.558 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:10:42,561.561 INFO    ] {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True}
[2026-06-13 22:10:42,563.563 INFO    ] *** process_order ***
[2026-06-13 22:10:42,566.566 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:10:42,568.568 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:10:42,646.646 INFO    ] [publish_status] Message added to stream with ID: 1781368842626-0
[2026-06-13 22:10:42,649.649 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'doorOpened', 'server_response': '{"voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1781368842626-0)
[2026-06-13 22:10:43,694.694 INFO    ] 2026-06-13 22:10:43
[2026-06-13 22:10:43,697.697 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:10:43,700.700 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:10:43,765.765 INFO    ] [publish_status] Message added to stream with ID: 1781368843743-0
[2026-06-13 22:10:43,768.768 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true}', 'timestamp': '2026-06-13T16:40:43.696092Z'} (ID: 1781368843743-0)
[2026-06-13 22:10:43,884.884 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True}}
[2026-06-13 22:10:43,886.886 INFO    ] 200
[2026-06-13 22:10:43,887.887 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"},"delay":0,"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:10:43,888.888 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:10:43,890.890 INFO    ] 2026-06-13 22:10:43
[2026-06-13 22:10:43,892.892 INFO    ] None
[2026-06-13 22:10:43,893.893 INFO    ] Opening Door now
[2026-06-13 22:10:43,895.895 INFO    ] Opening Door now
[2026-06-13 22:10:43,896.896 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:10:43,898.898 INFO    ] 2026-06-13 22:10:43
[2026-06-13 22:10:43,900.900 INFO    ] playing audio file
[2026-06-13 22:10:43,910.910 INFO    ] 2026-06-13 22:10:43
[2026-06-13 22:10:43,912.912 INFO    ] 2026-06-13 22:10:43
[2026-06-13 22:10:47,071.071 INFO    ] 200
[2026-06-13 22:10:47,073.073 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:47,075.075 INFO    ] {'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, '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'}, 'rstatus': False}
[2026-06-13 22:10:50,111.111 INFO    ] 200
[2026-06-13 22:10:50,113.113 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:50,115.115 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, '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'}, 'rstatus': False}
[2026-06-13 22:10:53,180.180 INFO    ] 200
[2026-06-13 22:10:53,183.183 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:53,185.185 INFO    ] Please close door 1
[2026-06-13 22:10:53,188.188 INFO    ] Please close door 1
[2026-06-13 22:10:53,191.191 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 22:10:53,193.193 INFO    ] 2026-06-13 22:10:53
[2026-06-13 22:10:53,196.196 INFO    ] playing audio file
[2026-06-13 22:10:53,213.213 INFO    ] 2026-06-13 22:10:53
[2026-06-13 22:10:53,217.217 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:10:53,220.220 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:10:53,293.293 INFO    ] [publish_status] Message added to stream with ID: 1781368853273-0
[2026-06-13 22:10:53,296.296 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "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"}, "rstatus": false}', 'timestamp': '2026-06-13T16:40:53.215707Z'} (ID: 1781368853273-0)
[2026-06-13 22:10:53,721.721 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, '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'}, 'rstatus': False}}
[2026-06-13 22:10:53,724.724 INFO    ] 200
[2026-06-13 22:10:53,726.726 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Modern kitchens Banana Chips 21gm"}]},"status":"false","error":{"data":[],"tmessage":"In Progress","code":20001,"umessage":"In Progress"},"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"},"rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:10:53,730.730 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'false', 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, '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'}, 'rstatus': False}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:10:53,733.733 INFO    ] {'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, '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'}, 'rstatus': False}
[2026-06-13 22:10:56,765.765 INFO    ] 200
[2026-06-13 22:10:56,766.766 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Door 1 is closed now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "delay": 1000, "SectionMain": {"Header": "Door Close"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:56,768.768 INFO    ] {'voiceNote': 'Door 1 is closed now', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Close'}, 'delay': 1000, 'rstatus': False}
[2026-06-13 22:10:59,831.831 INFO    ] 200
[2026-06-13 22:10:59,833.833 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:10:59,837.837 INFO    ] {'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:11:02,960.960 INFO    ] 200
[2026-06-13 22:11:02,963.963 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:11:02,967.967 INFO    ] Please close door 2
[2026-06-13 22:11:02,971.971 INFO    ] Please close door 2
[2026-06-13 22:11:02,974.974 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 22:11:02,978.978 INFO    ] 2026-06-13 22:11:02
[2026-06-13 22:11:02,980.980 INFO    ] playing audio file
[2026-06-13 22:11:02,999.999 INFO    ] 2026-06-13 22:11:02
[2026-06-13 22:11:03,003.003 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:11:03,006.006 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:11:03,054.054 INFO    ] [publish_status] Message added to stream with ID: 1781368863033-0
[2026-06-13 22:11:03,058.058 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "SectionMain": {"Header": "Door Open"}, "rstatus": false}', 'timestamp': '2026-06-13T16:41:03.001482Z'} (ID: 1781368863033-0)
[2026-06-13 22:11:03,485.485 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}}
[2026-06-13 22:11:03,488.488 INFO    ] 200
[2026-06-13 22:11:03,491.491 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"status":"false","error":{"data":[],"tmessage":"In Progress","code":20001,"umessage":"In Progress"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"SectionMain":{"Header":"Door Open"},"rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:11:03,495.495 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'false', 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:11:03,498.498 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:11:06,601.601 INFO    ] 200
[2026-06-13 22:11:06,605.605 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:11:06,609.609 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:11:09,643.643 INFO    ] 200
[2026-06-13 22:11:09,645.645 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:11:09,647.647 INFO    ] {'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'status': 'False', 'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:11:12,694.694 INFO    ] 200
[2026-06-13 22:11:12,696.696 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:11:12,698.698 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:11:12,700.700 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:11:12,782.782 INFO    ] [publish_status] Message added to stream with ID: 1781368872761-0
[2026-06-13 22:11:12,785.785 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Transaction Completed", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate"}, "SectionMain": {"Header": "Door Closed"}, "delay": 100, "rstatus": true}', 'timestamp': '2026-06-13T16:41:12.697688Z'} (ID: 1781368872761-0)
[2026-06-13 22:11:13,206.206 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True}}
[2026-06-13 22:11:13,209.209 INFO    ] 200
[2026-06-13 22:11:13,212.212 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"OrderStatus","server_response":{"voiceNote":"Transaction Completed","SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"status":"true","SectionStatus":{"Note":"If any due amount, clear at https:\/\/go.tinymart.in","UI_Header":"","Header":" Order is complete ","SubHeader":"Please wait for invoice to generate"},"SectionMain":{"Header":"Door Closed"},"delay":100,"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:11:13,215.215 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'true', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:11:13,218.218 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True}
[2026-06-13 22:11:13,221.221 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,223.223 INFO    ] Order Completed 
[2026-06-13 22:11:13,226.226 INFO    ] Order Completed 
[2026-06-13 22:11:13,229.229 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:11:13,232.232 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,234.234 INFO    ] playing audio file
[2026-06-13 22:11:13,252.252 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,256.256 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'rstatus': True}
[2026-06-13 22:11:13,260.260 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,706.706 INFO    ] 200
[2026-06-13 22:11:13,709.709 INFO    ] {"res": "True", "orderId": "TM08202203260613220948238", "skus": [{"image_url": "https://images.tinymart.in/product/4500672-7226.webp", "skuid": "4500672", "door_id": "", "tray_id": "12", "name": "Modern kitchens Garlic Mixture 26gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "", "tray_id": "16", "name": "Modern kitchens Banana Chips 21gm per peice", "unit_price": "10", "mrp": "10", "qty": 1, "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 2, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 60.0}
[2026-06-13 22:11:13,713.713 INFO    ] {'total_amount': 60.0, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220948238', 'rstatus': True, 'skus': [{'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'skuid': '4500672'}, {'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '16', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'skuid': '4500648'}, {'sku_total': 40.0, 'unit_price': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'skuid': '185993'}], 'res': 'True'}
[2026-06-13 22:11:13,717.717 INFO    ] {'total_amount': 60.0, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220948238', 'rstatus': True, 'skus': [{'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'skuid': '4500672'}, {'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '16', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'skuid': '4500648'}, {'sku_total': 40.0, 'unit_price': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'skuid': '185993'}], 'res': 'True'}
[2026-06-13 22:11:13,721.721 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,725.725 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,728.728 INFO    ] 60
[2026-06-13 22:11:13,732.732 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,736.736 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,739.739 INFO    ]  Your Bill Amount is 60
[2026-06-13 22:11:13,742.742 INFO    ]  Your Bill Amount is 60
[2026-06-13 22:11:13,745.745 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-13 22:11:13,749.749 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,752.752 INFO    ] playing audio file
[2026-06-13 22:11:13,772.772 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,775.775 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:13,780.780 INFO    ] publish_status: order_id=TM08202203260613220948238
[2026-06-13 22:11:13,783.783 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220948238
[2026-06-13 22:11:13,854.854 INFO    ] [publish_status] Message added to stream with ID: 1781368873830-0
[2026-06-13 22:11:13,857.857 INFO    ] Published to order:TM08202203260613220948238: {'order_id': 'TM08202203260613220948238', 'server_status': 'invoiceOrder', 'server_response': '{"total_amount": 60.0, "anomaly": 0, "logic": "WBL", "orderId": "TM08202203260613220948238", "rstatus": true, "skus": [{"sku_total": 10.0, "unit_price": "10", "door_id": "", "name": "Modern kitchens Garlic Mixture 26gm per peice", "tray_id": "12", "qty": 1, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "mrp": "10", "skuid": "4500672"}, {"sku_total": 10.0, "unit_price": "10", "door_id": "", "name": "Modern kitchens Banana Chips 21gm per peice", "tray_id": "16", "qty": 1, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "mrp": "10", "skuid": "4500648"}, {"sku_total": 40.0, "unit_price": "20", "door_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "tray_id": "43", "qty": 2, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "mrp": "20", "skuid": "185993"}], "res": "True"}', 'timestamp': '2026-06-13T16:41:13.777711Z'} (ID: 1781368873830-0)
[2026-06-13 22:11:13,978.978 INFO    ] {'order_id': 'TM08202203260613220948238', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 60.0, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220948238', 'rstatus': True, 'skus': [{'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'skuid': '4500672'}, {'sku_total': 10.0, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '16', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'skuid': '4500648'}, {'sku_total': 40.0, 'unit_price': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'skuid': '185993'}], 'res': 'True'}}
[2026-06-13 22:11:13,981.981 INFO    ] 200
[2026-06-13 22:11:13,984.984 INFO    ] {"data":{"order_id":"TM08202203260613220948238","server_status":"invoiceOrder","server_response":{"total_amount":60,"anomaly":0,"logic":"WBL","orderId":"TM08202203260613220948238","rstatus":true,"skus":[{"sku_total":10,"unit_price":"10","door_id":"","name":"Modern kitchens Garlic Mixture 26gm per peice","tray_id":"12","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","mrp":"10","skuid":"4500672"},{"sku_total":10,"unit_price":"10","door_id":"","name":"Modern kitchens Banana Chips 21gm per peice","tray_id":"16","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","mrp":"10","skuid":"4500648"},{"sku_total":40,"unit_price":"20","door_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","tray_id":"43","qty":2,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","mrp":"20","skuid":"185993"}],"res":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:11:13,987.987 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 60, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220948238', 'rstatus': True, 'skus': [{'sku_total': 10, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'skuid': '4500672'}, {'sku_total': 10, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '16', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'skuid': '4500648'}, {'sku_total': 40, 'unit_price': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'skuid': '185993'}], 'res': 'true'}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:11:13,991.991 INFO    ] {'data': {'order_id': 'TM08202203260613220948238', 'server_status': 'invoiceOrder', 'server_response': {'total_amount': 60, 'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220948238', 'rstatus': True, 'skus': [{'sku_total': 10, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'skuid': '4500672'}, {'sku_total': 10, 'unit_price': '10', 'door_id': '', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '16', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'skuid': '4500648'}, {'sku_total': 40, 'unit_price': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'tray_id': '43', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'mrp': '20', 'skuid': '185993'}], 'res': 'true'}}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}}
[2026-06-13 22:11:13,995.995 INFO    ] 2026-06-13 22:11:13
[2026-06-13 22:11:17,341.341 INFO    ] 200
[2026-06-13 22:11:17,344.344 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238", "TM08202203260613220948238"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:11:17,347.347 INFO    ] 2026-06-13 22:11:17
[2026-06-13 22:11:17,488.488 INFO    ] 200
[2026-06-13 22:11:17,491.491 INFO    ] True
[2026-06-13 22:11:17,494.494 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613220948238
[2026-06-13 22:11:17,497.497 INFO    ] start order file deleted
[2026-06-13 22:11:17,501.501 INFO    ] Checking for system updates...
[2026-06-13 22:11:17,539.539 INFO    ] 200
[2026-06-13 22:11:17,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:17,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:17,593.593 INFO    ] No update needed
[2026-06-13 22:11:17,594.594 INFO    ] Checking for camera pi updates...
[2026-06-13 22:11:17,625.625 INFO    ] 200
[2026-06-13 22:11:17,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:17,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:11:17,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:11:17,745.745 INFO    ] No camera update needed
[2026-06-13 22:11:17,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:11:17,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:11:17,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:11:17,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:11:19,804.804 INFO    ] ================================================
[2026-06-13 22:11:19,819.819 INFO    ] Launching Daemon at Sat Jun 13 22:11:19 IST 2026
[2026-06-13 22:11:19,830.830 INFO    ] ================================================
[2026-06-13 22:11:20,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:11:20
[2026-06-13 22:11:20,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:11:21,018.018 INFO    ] Initializing speech engine...
[2026-06-13 22:11:21,031.031 INFO    ] 2026-06-13 22:11:21
[2026-06-13 22:11:21,251.251 INFO    ] 2026-06-13 22:11:21
[2026-06-13 22:11:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:11:21,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:11:21,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:11:21,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:11:21,669.669 INFO    ] time= 13/06/2026 22:11:21
[2026-06-13 22:11:21,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:11:21,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:11:21,806.806 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 22:11:21,809.809 INFO    ] Checking historical command: ID=1781368838413-0
[2026-06-13 22:11:21,836.836 INFO    ] process_and_cleanup_command: msg_id=1781368838413-0
[2026-06-13 22:11:21,838.838 INFO    ] is_command_expired: timestamp=2026-06-13T16:40:37.978Z, expiry=30s
[2026-06-13 22:11:21,880.880 INFO    ] Command 1781368838413-0 is expired (older than 30s), removing...
[2026-06-13 22:11:21,957.957 INFO    ] Deleted expired command: 1781368838413-0
[2026-06-13 22:11:21,961.961 INFO    ] Processed historical messages, no valid command available...
[2026-06-13 22:11:26,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:11:26,973.973 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-13 22:11:29,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:11:29,122.122 INFO    ] Checking for system updates...
[2026-06-13 22:11:29,143.143 INFO    ] 200
[2026-06-13 22:11:29,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:29,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:29,178.178 INFO    ] No update needed
[2026-06-13 22:11:29,180.180 INFO    ] Checking for camera pi updates...
[2026-06-13 22:11:29,199.199 INFO    ] 200
[2026-06-13 22:11:29,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:29,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:11:29,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:29,372.372 INFO    ] No camera update needed
[2026-06-13 22:11:29,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:11:29,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:11:29,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:11:29,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:11:31,420.420 INFO    ] ================================================
[2026-06-13 22:11:31,436.436 INFO    ] Launching Daemon at Sat Jun 13 22:11:31 IST 2026
[2026-06-13 22:11:31,448.448 INFO    ] ================================================
[2026-06-13 22:11:31,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:11:31
[2026-06-13 22:11:32,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:11:32,869.869 INFO    ] Initializing speech engine...
[2026-06-13 22:11:32,881.881 INFO    ] 2026-06-13 22:11:32
[2026-06-13 22:11:33,128.128 INFO    ] 2026-06-13 22:11:33
[2026-06-13 22:11:33,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:11:33,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:11:33,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:11:33,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:11:33,579.579 INFO    ] time= 13/06/2026 22:11:33
[2026-06-13 22:11:33,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:11:33,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:11:33,825.825 INFO    ] No existing commands found in stream
[2026-06-13 22:11:38,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:11:38,852.852 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-13 22:11:40,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:11:40,515.515 INFO    ] Checking for system updates...
[2026-06-13 22:11:40,536.536 INFO    ] 200
[2026-06-13 22:11:40,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:40,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:40,569.569 INFO    ] No update needed
[2026-06-13 22:11:40,570.570 INFO    ] Checking for camera pi updates...
[2026-06-13 22:11:40,590.590 INFO    ] 200
[2026-06-13 22:11:40,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:40,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:11:40,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:40,659.659 INFO    ] No camera update needed
[2026-06-13 22:11:40,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:11:40,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:11:40,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:11:40,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:11:42,707.707 INFO    ] ================================================
[2026-06-13 22:11:42,722.722 INFO    ] Launching Daemon at Sat Jun 13 22:11:42 IST 2026
[2026-06-13 22:11:42,732.732 INFO    ] ================================================
[2026-06-13 22:11:43,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:11:43
[2026-06-13 22:11:43,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:11:43,524.524 INFO    ] Initializing speech engine...
[2026-06-13 22:11:43,529.529 INFO    ] 2026-06-13 22:11:43
[2026-06-13 22:11:43,735.735 INFO    ] 2026-06-13 22:11:43
[2026-06-13 22:11:43,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:11:43,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:11:43,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:11:44,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:11:44,146.146 INFO    ] time= 13/06/2026 22:11:44
[2026-06-13 22:11:44,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:11:44,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:11:44,249.249 INFO    ] No existing commands found in stream
[2026-06-13 22:11:49,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:11:49,263.263 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 22:11:50,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:11:50,897.897 INFO    ] Checking for system updates...
[2026-06-13 22:11:50,918.918 INFO    ] 200
[2026-06-13 22:11:50,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:50,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:11:50,952.952 INFO    ] No update needed
[2026-06-13 22:11:50,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 22:11:50,974.974 INFO    ] 200
[2026-06-13 22:11:50,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:11:51,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:11:51,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:11:51,049.049 INFO    ] No camera update needed
[2026-06-13 22:11:51,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:11:51,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:11:51,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:11:51,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:11:53,098.098 INFO    ] ================================================
[2026-06-13 22:11:53,113.113 INFO    ] Launching Daemon at Sat Jun 13 22:11:53 IST 2026
[2026-06-13 22:11:53,124.124 INFO    ] ================================================
[2026-06-13 22:11:53,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:11:53
[2026-06-13 22:11:53,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:11:54,141.141 INFO    ] Initializing speech engine...
[2026-06-13 22:11:54,149.149 INFO    ] 2026-06-13 22:11:54
[2026-06-13 22:11:54,424.424 INFO    ] 2026-06-13 22:11:54
[2026-06-13 22:11:54,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:11:54,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:11:54,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:11:54,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:11:54,802.802 INFO    ] time= 13/06/2026 22:11:54
[2026-06-13 22:11:54,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:11:54,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:11:54,880.880 INFO    ] No existing commands found in stream
[2026-06-13 22:11:59,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:11:59,895.895 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-13 22:12:04,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:12:04,037.037 INFO    ] Checking for system updates...
[2026-06-13 22:12:04,059.059 INFO    ] 200
[2026-06-13 22:12:04,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:04,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:04,092.092 INFO    ] No update needed
[2026-06-13 22:12:04,093.093 INFO    ] Checking for camera pi updates...
[2026-06-13 22:12:04,113.113 INFO    ] 200
[2026-06-13 22:12:04,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:04,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:12:04,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:04,182.182 INFO    ] No camera update needed
[2026-06-13 22:12:04,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:12:04,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:12:04,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:12:04,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:12:06,232.232 INFO    ] ================================================
[2026-06-13 22:12:06,247.247 INFO    ] Launching Daemon at Sat Jun 13 22:12:06 IST 2026
[2026-06-13 22:12:06,258.258 INFO    ] ================================================
[2026-06-13 22:12:06,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:12:06
[2026-06-13 22:12:06,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:12:07,109.109 INFO    ] Initializing speech engine...
[2026-06-13 22:12:07,114.114 INFO    ] 2026-06-13 22:12:07
[2026-06-13 22:12:07,321.321 INFO    ] 2026-06-13 22:12:07
[2026-06-13 22:12:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:12:07,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:12:07,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:12:07,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:12:07,733.733 INFO    ] time= 13/06/2026 22:12:07
[2026-06-13 22:12:07,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:12:07,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:12:07,838.838 INFO    ] No existing commands found in stream
[2026-06-13 22:12:12,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:12:12,856.856 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 22:12:13,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:12:13,685.685 INFO    ] Checking for system updates...
[2026-06-13 22:12:13,706.706 INFO    ] 200
[2026-06-13 22:12:13,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:13,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:12:13,743.743 INFO    ] No update needed
[2026-06-13 22:12:13,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 22:12:13,763.763 INFO    ] 200
[2026-06-13 22:12:13,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:13,789.789 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:12:13,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:12:13,840.840 INFO    ] No camera update needed
[2026-06-13 22:12:13,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:12:13,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:12:13,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:12:13,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:12:15,889.889 INFO    ] ================================================
[2026-06-13 22:12:15,904.904 INFO    ] Launching Daemon at Sat Jun 13 22:12:15 IST 2026
[2026-06-13 22:12:15,915.915 INFO    ] ================================================
[2026-06-13 22:12:16,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:12:16
[2026-06-13 22:12:16,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:12:17,247.247 INFO    ] Initializing speech engine...
[2026-06-13 22:12:17,256.256 INFO    ] 2026-06-13 22:12:17
[2026-06-13 22:12:17,503.503 INFO    ] 2026-06-13 22:12:17
[2026-06-13 22:12:17,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:12:17,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:12:17,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:12:17,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:12:17,882.882 INFO    ] time= 13/06/2026 22:12:17
[2026-06-13 22:12:17,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:12:17,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:12:18,069.069 INFO    ] No existing commands found in stream
[2026-06-13 22:12:23,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:12:23,095.095 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-13 22:12:27,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:12:27,125.125 INFO    ] Checking for system updates...
[2026-06-13 22:12:27,147.147 INFO    ] 200
[2026-06-13 22:12:27,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:27,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:27,184.184 INFO    ] No update needed
[2026-06-13 22:12:27,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 22:12:27,206.206 INFO    ] 200
[2026-06-13 22:12:27,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:27,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:12:27,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:12:27,277.277 INFO    ] No camera update needed
[2026-06-13 22:12:27,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:12:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:12:27,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:12:27,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:12:29,336.336 INFO    ] ================================================
[2026-06-13 22:12:29,352.352 INFO    ] Launching Daemon at Sat Jun 13 22:12:29 IST 2026
[2026-06-13 22:12:29,363.363 INFO    ] ================================================
[2026-06-13 22:12:29,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:12:29
[2026-06-13 22:12:30,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:12:30,578.578 INFO    ] Initializing speech engine...
[2026-06-13 22:12:30,583.583 INFO    ] 2026-06-13 22:12:30
[2026-06-13 22:12:30,787.787 INFO    ] 2026-06-13 22:12:30
[2026-06-13 22:12:30,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:12:31,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:12:31,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:12:31,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:12:31,239.239 INFO    ] time= 13/06/2026 22:12:31
[2026-06-13 22:12:31,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:12:31,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:12:31,355.355 INFO    ] No existing commands found in stream
[2026-06-13 22:12:36,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:12:36,367.367 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 22:12:39,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:12:39,706.706 INFO    ] Checking for system updates...
[2026-06-13 22:12:39,727.727 INFO    ] 200
[2026-06-13 22:12:39,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:39,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:39,765.765 INFO    ] No update needed
[2026-06-13 22:12:39,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 22:12:39,786.786 INFO    ] 200
[2026-06-13 22:12:39,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:39,810.810 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:12:39,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:39,856.856 INFO    ] No camera update needed
[2026-06-13 22:12:39,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:12:39,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:12:39,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:12:39,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:12:41,902.902 INFO    ] ================================================
[2026-06-13 22:12:41,917.917 INFO    ] Launching Daemon at Sat Jun 13 22:12:41 IST 2026
[2026-06-13 22:12:41,929.929 INFO    ] ================================================
[2026-06-13 22:12:42,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:12:42
[2026-06-13 22:12:42,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:12:42,777.777 INFO    ] Initializing speech engine...
[2026-06-13 22:12:42,781.781 INFO    ] 2026-06-13 22:12:42
[2026-06-13 22:12:42,988.988 INFO    ] 2026-06-13 22:12:42
[2026-06-13 22:12:43,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:12:43,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:12:43,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:12:43,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:12:43,404.404 INFO    ] time= 13/06/2026 22:12:43
[2026-06-13 22:12:43,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:12:43,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:12:43,504.504 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 22:12:43,506.506 INFO    ] Checking historical command: ID=1781368958801-0
[2026-06-13 22:12:43,532.532 INFO    ] process_and_cleanup_command: msg_id=1781368958801-0
[2026-06-13 22:12:43,533.533 INFO    ] is_command_expired: timestamp=2026-06-13T16:42:38.386Z, expiry=30s
[2026-06-13 22:12:43,644.644 INFO    ] Command removed from stream: 1781368958801-0. returning for processing...
[2026-06-13 22:12:43,647.647 INFO    ] ***** get_valid_command
[2026-06-13 22:12:43,652.652 INFO    ] {'source': 'webapp', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781368958386-62ng3t8g4","orderId":"TM08202203260613220812172","is_vending":false}', 'timestamp': '2026-06-13T16:42:38.386Z'}
[2026-06-13 22:12:43,657.657 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781368958386-62ng3t8g4', 'orderId': 'TM08202203260613220812172', 'is_vending': False}
[2026-06-13 22:12:43,661.661 INFO    ] Handling start order...
[2026-06-13 22:12:43,665.665 INFO    ] handle_start_order_command
[2026-06-13 22:12:43,674.674 INFO    ] _send_start_order_success: request_id=start-order-1781368958386-62ng3t8g4, order_id=TM08202203260613220812172
[2026-06-13 22:12:43,677.677 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:12:43,733.733 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781368963711-0
[2026-06-13 22:12:43,737.737 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:12:43,742.742 INFO    ] Checking for system updates...
[2026-06-13 22:12:43,772.772 INFO    ] 200
[2026-06-13 22:12:43,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:43,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:43,873.873 INFO    ] No update needed
[2026-06-13 22:12:43,883.883 INFO    ] Checking for camera pi updates...
[2026-06-13 22:12:43,915.915 INFO    ] 200
[2026-06-13 22:12:43,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:43,992.992 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:12:44,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:12:44,043.043 INFO    ] No camera update needed
[2026-06-13 22:12:44,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:12:44,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:12:44,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:12:44,063.063 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:12:44,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:12:46,103.103 INFO    ] ================================================
[2026-06-13 22:12:46,118.118 INFO    ] Launching Daemon at Sat Jun 13 22:12:46 IST 2026
[2026-06-13 22:12:46,129.129 INFO    ] ================================================
[2026-06-13 22:12:46,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:12:46
[2026-06-13 22:12:46,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:12:46,938.938 INFO    ] Initializing speech engine...
[2026-06-13 22:12:46,948.948 INFO    ] 2026-06-13 22:12:46
[2026-06-13 22:12:47,151.151 INFO    ] 2026-06-13 22:12:47
[2026-06-13 22:12:47,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:12:47,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:12:47,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:12:47,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:12:47,550.550 INFO    ] time= 13/06/2026 22:12:47
[2026-06-13 22:12:47,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:12:47,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:12:47,668.668 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 22:12:47,670.670 INFO    ] Checking historical command: ID=1781368963711-0
[2026-06-13 22:12:47,695.695 INFO    ] process_and_cleanup_command: msg_id=1781368963711-0
[2026-06-13 22:12:47,702.702 INFO    ] is_command_expired: timestamp=2026-06-13T16:42:43.675178Z, expiry=30s
[2026-06-13 22:12:47,806.806 INFO    ] Command removed from stream: 1781368963711-0. returning for processing...
[2026-06-13 22:12:47,809.809 INFO    ] ***** get_valid_command
[2026-06-13 22:12:47,812.812 INFO    ] {'imei': 'TM08202203', 'timestamp': '2026-06-13T16:42:43.675178Z', 'status': 'success', 'metadata_order_id': 'TM08202203260613220812172', 'metadata_request_id': 'start-order-1781368958386-62ng3t8g4', 'message_type': 'command_response', 'message': 'start-order success'}
[2026-06-13 22:12:47,816.816 INFO    ] Checking historical command: ID=1781368966139-0
[2026-06-13 22:12:47,820.820 INFO    ] process_and_cleanup_command: msg_id=1781368966139-0
[2026-06-13 22:12:47,824.824 INFO    ] is_command_expired: timestamp=2026-06-13T16:42:45.737Z, expiry=30s
[2026-06-13 22:12:47,868.868 INFO    ] Command removed from stream: 1781368966139-0. returning for processing...
[2026-06-13 22:12:47,872.872 INFO    ] ***** get_valid_command
[2026-06-13 22:12:47,875.875 INFO    ] {'source': 'webapp', 'command': 'process-order', 'timestamp': '2026-06-13T16:42:45.737Z', 'data': '{"request_id":"process-order-1781368965737-o46sis91s","orderId":"TM08202203260613220812172","is_vending":false,"accessCode":"66540004"}', 'timeout': '60'}
[2026-06-13 22:12:47,878.878 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781368965737-o46sis91s', 'orderId': 'TM08202203260613220812172', 'is_vending': False, 'accessCode': '66540004'}
[2026-06-13 22:12:47,881.881 INFO    ] Handling process order...
[2026-06-13 22:12:47,884.884 INFO    ] Processing process-order command...
[2026-06-13 22:12:47,888.888 INFO    ] 🔍 Lock file Order ID: TM08202203260613220812172, TS: 2026-06-13 22:12:43
[2026-06-13 22:12:47,897.897 INFO    ] ✅ Order lock valid for TM08202203260613220812172
[2026-06-13 22:12:47,900.900 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:12:47,903.903 INFO    ] processing access code 66540004 for order TM08202203260613220812172
[2026-06-13 22:12:47,906.906 INFO    ] 🔍 Lock file Order ID: TM08202203260613220812172, TS: 2026-06-13 22:12:43
[2026-06-13 22:12:47,909.909 INFO    ] ✅ Order lock valid for TM08202203260613220812172
[2026-06-13 22:12:47,912.912 INFO    ] 2026-06-13 22:12:47
[2026-06-13 22:12:47,942.942 INFO    ] 200
[2026-06-13 22:12:47,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:12:47,950.950 INFO    ] 66540004
[2026-06-13 22:12:47,955.955 INFO    ] 2026-06-13 22:12:47
[2026-06-13 22:12:47,958.958 INFO    ] session id :703682969
[2026-06-13 22:12:47,963.963 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=66540004&imei=TM08202203&session_id=703682969
[2026-06-13 22:12:48,930.930 INFO    ] 200
[2026-06-13 22:12:48,939.939 INFO    ] {"data": {"mobile": "9381565114", "order_id": "TM08202203260613220812172", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500672-7226.webp", "skuid": "4500672", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Garlic Mixture 26gm", "tray_id": "12", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 1, "sku_total": 10, "offer_id": ""}], "access_code": "66540004", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:12:48,949.949 INFO    ] 20
[2026-06-13 22:12:48,959.959 INFO    ] TM08202203260613220812172
[2026-06-13 22:12:48,966.966 INFO    ] 9381565114
[2026-06-13 22:12:48,999.999 INFO    ] 2026-06-13 22:12:48
[2026-06-13 22:12:49,007.007 INFO    ] Door Opening for user mobile ending with  five one one four 
[2026-06-13 22:12:49,031.031 INFO    ] Door Opening for user mobile ending with  five one one four 
[2026-06-13 22:12:49,036.036 INFO    ] 319d6d062f4f3c886fb4aa56a5e6a628
[2026-06-13 22:12:49,041.041 INFO    ] 2026-06-13 22:12:49
[2026-06-13 22:12:49,049.049 INFO    ] playing audio file
[2026-06-13 22:12:49,075.075 INFO    ] 2026-06-13 22:12:49
[2026-06-13 22:12:49,088.088 INFO    ] 2026-06-13 22:12:49
[2026-06-13 22:12:49,111.111 INFO    ] publish_status: order_id=TM08202203260613220812172
[2026-06-13 22:12:49,117.117 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220812172
[2026-06-13 22:12:49,274.274 INFO    ] [publish_status] Message added to stream with ID: 1781368969185-0
[2026-06-13 22:12:49,290.290 INFO    ] Published to order:TM08202203260613220812172: {'server_response': '{"status": true, "rstatus": true, "msg": "Order Data", "data": {"bill_amount": "20", "access_code": "66540004", "proposed_sku_json": [{"unit_price": 10, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "name": "Modern kitchens Garlic Mixture 26gm", "tray_id": "12", "skuid": "4500672", "offer_id": "", "sku_total": 10, "mrp": "10", "qty": 1, "door_id": "1", "offer_desc": ""}, {"unit_price": 10, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "skuid": "4500648", "offer_id": "", "sku_total": 10, "mrp": "10", "qty": 1, "door_id": "1", "offer_desc": ""}], "invoice_bill": "20", "order_id": "TM08202203260613220812172", "mobile": "9381565114"}}', 'timestamp': '2026-06-13T16:42:49.097330Z', 'server_status': 'order-started', 'order_id': 'TM08202203260613220812172'} (ID: 1781368969185-0)
[2026-06-13 22:12:49,696.696 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'bill_amount': '20', 'access_code': '66540004', 'proposed_sku_json': [{'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '12', 'skuid': '4500672', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'qty': 1, 'door_id': '1', 'offer_desc': ''}, {'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '11', 'skuid': '4500648', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'qty': 1, 'door_id': '1', 'offer_desc': ''}], 'invoice_bill': '20', 'order_id': 'TM08202203260613220812172', 'mobile': '9381565114'}}, 'server_status': 'order-started', 'order_id': 'TM08202203260613220812172'}
[2026-06-13 22:12:49,699.699 INFO    ] 200
[2026-06-13 22:12:49,701.701 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"msg":"Order Data","data":{"bill_amount":"20","access_code":"66540004","proposed_sku_json":[{"unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","tray_id":"12","skuid":"4500672","offer_id":"","sku_total":10,"mrp":"10","qty":1,"door_id":"1","offer_desc":""},{"unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","tray_id":"11","skuid":"4500648","offer_id":"","sku_total":10,"mrp":"10","qty":1,"door_id":"1","offer_desc":""}],"invoice_bill":"20","order_id":"TM08202203260613220812172","mobile":"9381565114"}},"server_status":"order-started","order_id":"TM08202203260613220812172"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:12:49,704.704 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'data': {'bill_amount': '20', 'access_code': '66540004', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'mrp': '10', 'door_id': '1', 'tray_id': '12', 'skuid': '4500672', 'sku_total': 10, 'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1, 'offer_id': '', 'offer_desc': '', 'unit_price': 10}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'door_id': '1', 'tray_id': '11', 'skuid': '4500648', 'sku_total': 10, 'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1, 'offer_id': '', 'offer_desc': '', 'unit_price': 10}], 'invoice_bill': '20', 'order_id': 'TM08202203260613220812172', 'mobile': '9381565114'}, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613220812172'}}
[2026-06-13 22:12:49,707.707 INFO    ] 2026-06-13 22:12:49
[2026-06-13 22:12:49,751.751 INFO    ] 200
[2026-06-13 22:12:49,754.754 INFO    ] True
[2026-06-13 22:12:49,930.930 INFO    ] 200
[2026-06-13 22:12:49,933.933 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:12:49,937.937 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}}
[2026-06-13 22:12:49,947.947 INFO    ] *** process_order ***
[2026-06-13 22:12:51,128.128 INFO    ] 200
[2026-06-13 22:12:51,129.129 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:12:51,131.131 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}}
[2026-06-13 22:12:51,132.132 INFO    ] *** process_order ***
[2026-06-13 22:12:51,133.133 INFO    ] publish_status: order_id=TM08202203260613220812172
[2026-06-13 22:12:51,135.135 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220812172
[2026-06-13 22:12:51,211.211 INFO    ] [publish_status] Message added to stream with ID: 1781368971191-0
[2026-06-13 22:12:51,212.212 INFO    ] Published to order:TM08202203260613220812172: {'server_response': '{"status": "True", "rstatus": true, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613220812172'} (ID: 1781368971191-0)
[2026-06-13 22:12:52,261.261 INFO    ] 2026-06-13 22:12:52
[2026-06-13 22:12:52,264.264 INFO    ] publish_status: order_id=TM08202203260613220812172
[2026-06-13 22:12:52,267.267 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220812172
[2026-06-13 22:12:52,347.347 INFO    ] [publish_status] Message added to stream with ID: 1781368972325-0
[2026-06-13 22:12:52,360.360 INFO    ] Published to order:TM08202203260613220812172: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}}', 'timestamp': '2026-06-13T16:42:52.263191Z', 'server_status': 'processOrder', 'order_id': 'TM08202203260613220812172'} (ID: 1781368972325-0)
[2026-06-13 22:12:52,473.473 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613220812172'}
[2026-06-13 22:12:52,475.475 INFO    ] 200
[2026-06-13 22:12:52,476.476 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "}},"server_status":"processOrder","order_id":"TM08202203260613220812172"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:12:52,477.477 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}}, 'order_id': 'TM08202203260613220812172'}}
[2026-06-13 22:12:52,479.479 INFO    ] 2026-06-13 22:12:52
[2026-06-13 22:12:52,481.481 INFO    ] None
[2026-06-13 22:12:52,483.483 INFO    ] Opening Door now
[2026-06-13 22:12:52,485.485 INFO    ] Opening Door now
[2026-06-13 22:12:52,488.488 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:12:52,490.490 INFO    ] 2026-06-13 22:12:52
[2026-06-13 22:12:52,493.493 INFO    ] playing audio file
[2026-06-13 22:12:52,516.516 INFO    ] 2026-06-13 22:12:52
[2026-06-13 22:12:52,520.520 INFO    ] 2026-06-13 22:12:52
[2026-06-13 22:12:55,668.668 INFO    ] 200
[2026-06-13 22:12:55,671.671 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:12:55,674.674 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}}
[2026-06-13 22:12:58,775.775 INFO    ] 200
[2026-06-13 22:12:58,777.777 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:12:58,779.779 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}}
[2026-06-13 22:13:01,911.911 INFO    ] 200
[2026-06-13 22:13:01,915.915 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:13:01,922.922 INFO    ] Please close door 1
[2026-06-13 22:13:01,926.926 INFO    ] Please close door 1
[2026-06-13 22:13:01,929.929 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 22:13:01,933.933 INFO    ] 2026-06-13 22:13:01
[2026-06-13 22:13:01,938.938 INFO    ] playing audio file
[2026-06-13 22:13:01,971.971 INFO    ] 2026-06-13 22:13:01
[2026-06-13 22:13:01,980.980 INFO    ] publish_status: order_id=TM08202203260613220812172
[2026-06-13 22:13:01,983.983 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220812172
[2026-06-13 22:13:02,052.052 INFO    ] [publish_status] Message added to stream with ID: 1781368982031-0
[2026-06-13 22:13:02,055.055 INFO    ] Published to order:TM08202203260613220812172: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "rstatus": false, "voiceNote": "Please close door 1", "status": "False", "SectionSKU": {"skus": [{"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}, {"name": "Modern kitchens Banana Chips 21gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1"}, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}}', 'timestamp': '2026-06-13T16:43:01.978483Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613220812172'} (ID: 1781368982031-0)
[2026-06-13 22:13:02,529.529 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613220812172'}
[2026-06-13 22:13:02,532.532 INFO    ] 200
[2026-06-13 22:13:02,535.535 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"rstatus":false,"voiceNote":"Please close door 1","status":"false","SectionSKU":{"skus":[{"name":"Modern kitchens Garlic Mixture 26gm","qty":1},{"name":"Modern kitchens Banana Chips 21gm","qty":1}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1"},"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]}},"server_status":"OrderStatus","order_id":"TM08202203260613220812172"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:13:02,539.539 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}]}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}}, 'order_id': 'TM08202203260613220812172'}}
[2026-06-13 22:13:02,544.544 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}, {'name': 'Modern kitchens Banana Chips 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}}
[2026-06-13 22:13:05,583.583 INFO    ] 200
[2026-06-13 22:13:05,584.584 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:13:05,587.587 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}}
[2026-06-13 22:13:05,589.589 INFO    ] 2026-06-13 22:13:05
[2026-06-13 22:13:05,591.591 INFO    ] Order Completed 
[2026-06-13 22:13:05,592.592 INFO    ] Order Completed 
[2026-06-13 22:13:05,594.594 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:13:05,596.596 INFO    ] 2026-06-13 22:13:05
[2026-06-13 22:13:05,601.601 INFO    ] playing audio file
[2026-06-13 22:13:05,613.613 INFO    ] 2026-06-13 22:13:05
[2026-06-13 22:13:05,615.615 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete '}}
[2026-06-13 22:13:05,618.618 INFO    ] 2026-06-13 22:13:05
[2026-06-13 22:13:06,926.926 INFO    ] 200
[2026-06-13 22:13:06,931.931 INFO    ] {"res": "True", "orderId": "TM08202203260613220812172", "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "", "tray_id": "11", "name": "Modern kitchens Banana Chips 21gm per peice", "unit_price": "10", "mrp": "10", "qty": 2, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 22:13:06,934.934 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220812172', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'tray_id': '11', 'skuid': '4500648', 'sku_total': 20.0, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2, 'door_id': '', 'unit_price': '10'}], 'total_amount': 20.0, 'res': 'True'}
[2026-06-13 22:13:06,938.938 INFO    ] {'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220812172', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'tray_id': '11', 'skuid': '4500648', 'sku_total': 20.0, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2, 'door_id': '', 'unit_price': '10'}], 'total_amount': 20.0, 'res': 'True'}
[2026-06-13 22:13:06,942.942 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:06,945.945 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:06,950.950 INFO    ] 20
[2026-06-13 22:13:06,954.954 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:06,958.958 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:06,964.964 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:13:06,969.969 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:13:06,973.973 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 22:13:06,977.977 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:06,981.981 INFO    ] playing audio file
[2026-06-13 22:13:07,001.001 INFO    ] 2026-06-13 22:13:06
[2026-06-13 22:13:07,005.005 INFO    ] 2026-06-13 22:13:07
[2026-06-13 22:13:07,011.011 INFO    ] publish_status: order_id=TM08202203260613220812172
[2026-06-13 22:13:07,015.015 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613220812172
[2026-06-13 22:13:07,077.077 INFO    ] [publish_status] Message added to stream with ID: 1781368987055-0
[2026-06-13 22:13:07,082.082 INFO    ] Published to order:TM08202203260613220812172: {'server_response': '{"anomaly": 0, "logic": "WBL", "orderId": "TM08202203260613220812172", "rstatus": true, "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "mrp": "10", "tray_id": "11", "skuid": "4500648", "sku_total": 20.0, "name": "Modern kitchens Banana Chips 21gm per peice", "qty": 2, "door_id": "", "unit_price": "10"}], "total_amount": 20.0, "res": "True"}', 'timestamp': '2026-06-13T16:43:07.008656Z', 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613220812172'} (ID: 1781368987055-0)
[2026-06-13 22:13:07,202.202 INFO    ] {'server_response': {'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220812172', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'mrp': '10', 'tray_id': '11', 'skuid': '4500648', 'sku_total': 20.0, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2, 'door_id': '', 'unit_price': '10'}], 'total_amount': 20.0, 'res': 'True'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613220812172'}
[2026-06-13 22:13:07,205.205 INFO    ] 200
[2026-06-13 22:13:07,207.207 INFO    ] {"data":{"server_response":{"anomaly":0,"logic":"WBL","orderId":"TM08202203260613220812172","rstatus":true,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","mrp":"10","tray_id":"11","skuid":"4500648","sku_total":20,"name":"Modern kitchens Banana Chips 21gm per peice","qty":2,"door_id":"","unit_price":"10"}],"total_amount":20,"res":"true"},"server_status":"invoiceOrder","order_id":"TM08202203260613220812172"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:13:07,211.211 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220812172', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '11', 'sku_total': 20, 'mrp': '10', 'qty': 2, 'door_id': '', 'unit_price': '10'}], 'total_amount': 20, 'res': 'true'}, 'order_id': 'TM08202203260613220812172'}}
[2026-06-13 22:13:07,214.214 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'orderId': 'TM08202203260613220812172', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'skuid': '4500648', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'tray_id': '11', 'sku_total': 20, 'mrp': '10', 'qty': 2, 'door_id': '', 'unit_price': '10'}], 'total_amount': 20, 'res': 'true'}, 'order_id': 'TM08202203260613220812172'}}
[2026-06-13 22:13:07,217.217 INFO    ] 2026-06-13 22:13:07
[2026-06-13 22:13:09,111.111 INFO    ] 200
[2026-06-13 22:13:09,114.114 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172", "TM08202203260613220812172"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:13:09,117.117 INFO    ] 2026-06-13 22:13:09
[2026-06-13 22:13:09,235.235 INFO    ] 200
[2026-06-13 22:13:09,238.238 INFO    ] True
[2026-06-13 22:13:09,241.241 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613220812172
[2026-06-13 22:13:09,244.244 INFO    ] start order file deleted
[2026-06-13 22:13:09,248.248 INFO    ] Checking for system updates...
[2026-06-13 22:13:09,286.286 INFO    ] 200
[2026-06-13 22:13:09,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:09,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:13:09,355.355 INFO    ] No update needed
[2026-06-13 22:13:09,358.358 INFO    ] Checking for camera pi updates...
[2026-06-13 22:13:09,408.408 INFO    ] 200
[2026-06-13 22:13:09,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:09,456.456 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:13:09,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:13:09,519.519 INFO    ] No camera update needed
[2026-06-13 22:13:09,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:13:09,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:13:09,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:13:09,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:13:11,580.580 INFO    ] ================================================
[2026-06-13 22:13:11,594.594 INFO    ] Launching Daemon at Sat Jun 13 22:13:11 IST 2026
[2026-06-13 22:13:11,605.605 INFO    ] ================================================
[2026-06-13 22:13:11,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:13:11
[2026-06-13 22:13:12,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:13:12,685.685 INFO    ] Initializing speech engine...
[2026-06-13 22:13:12,696.696 INFO    ] 2026-06-13 22:13:12
[2026-06-13 22:13:12,996.996 INFO    ] 2026-06-13 22:13:12
[2026-06-13 22:13:13,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:13:13,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:13:13,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:13:13,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:13:13,351.351 INFO    ] time= 13/06/2026 22:13:13
[2026-06-13 22:13:13,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:13:13,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:13:13,431.431 INFO    ] No existing commands found in stream
[2026-06-13 22:13:18,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:13:18,445.445 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 22:13:21,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:13:21,648.648 INFO    ] Checking for system updates...
[2026-06-13 22:13:21,669.669 INFO    ] 200
[2026-06-13 22:13:21,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:21,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:13:21,703.703 INFO    ] No update needed
[2026-06-13 22:13:21,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 22:13:21,725.725 INFO    ] 200
[2026-06-13 22:13:21,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:21,754.754 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:13:21,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:13:21,805.805 INFO    ] No camera update needed
[2026-06-13 22:13:21,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:13:21,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:13:21,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:13:21,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:13:23,853.853 INFO    ] ================================================
[2026-06-13 22:13:23,869.869 INFO    ] Launching Daemon at Sat Jun 13 22:13:23 IST 2026
[2026-06-13 22:13:23,879.879 INFO    ] ================================================
[2026-06-13 22:13:24,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:13:24
[2026-06-13 22:13:24,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:13:24,757.757 INFO    ] Initializing speech engine...
[2026-06-13 22:13:24,768.768 INFO    ] 2026-06-13 22:13:24
[2026-06-13 22:13:24,978.978 INFO    ] 2026-06-13 22:13:24
[2026-06-13 22:13:25,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:13:25,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:13:25,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:13:25,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:13:25,398.398 INFO    ] time= 13/06/2026 22:13:25
[2026-06-13 22:13:25,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:13:25,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:13:25,506.506 INFO    ] No existing commands found in stream
[2026-06-13 22:13:30,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:13:30,523.523 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-13 22:13:32,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:13:32,356.356 INFO    ] Checking for system updates...
[2026-06-13 22:13:32,377.377 INFO    ] 200
[2026-06-13 22:13:32,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:32,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:13:32,430.430 INFO    ] No update needed
[2026-06-13 22:13:32,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 22:13:32,472.472 INFO    ] 200
[2026-06-13 22:13:32,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:32,505.505 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:13:32,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:13:32,600.600 INFO    ] No camera update needed
[2026-06-13 22:13:32,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:13:32,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:13:32,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:13:32,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:13:34,649.649 INFO    ] ================================================
[2026-06-13 22:13:34,664.664 INFO    ] Launching Daemon at Sat Jun 13 22:13:34 IST 2026
[2026-06-13 22:13:34,675.675 INFO    ] ================================================
[2026-06-13 22:13:35,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:13:35
[2026-06-13 22:13:35,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:13:35,552.552 INFO    ] Initializing speech engine...
[2026-06-13 22:13:35,557.557 INFO    ] 2026-06-13 22:13:35
[2026-06-13 22:13:35,765.765 INFO    ] 2026-06-13 22:13:35
[2026-06-13 22:13:35,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:13:35,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:13:35,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:13:36,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:13:36,119.119 INFO    ] time= 13/06/2026 22:13:36
[2026-06-13 22:13:36,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:13:36,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:13:36,339.339 INFO    ] No existing commands found in stream
[2026-06-13 22:13:41,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:13:41,352.352 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-13 22:13:45,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:13:45,486.486 INFO    ] Checking for system updates...
[2026-06-13 22:13:45,507.507 INFO    ] 200
[2026-06-13 22:13:45,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:45,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:13:45,541.541 INFO    ] No update needed
[2026-06-13 22:13:45,543.543 INFO    ] Checking for camera pi updates...
[2026-06-13 22:13:45,565.565 INFO    ] 200
[2026-06-13 22:13:45,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:45,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:13:45,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:13:45,635.635 INFO    ] No camera update needed
[2026-06-13 22:13:45,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:13:45,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:13:45,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:13:45,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:13:47,684.684 INFO    ] ================================================
[2026-06-13 22:13:47,699.699 INFO    ] Launching Daemon at Sat Jun 13 22:13:47 IST 2026
[2026-06-13 22:13:47,710.710 INFO    ] ================================================
[2026-06-13 22:13:48,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:13:48
[2026-06-13 22:13:48,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:13:48,533.533 INFO    ] Initializing speech engine...
[2026-06-13 22:13:48,539.539 INFO    ] 2026-06-13 22:13:48
[2026-06-13 22:13:48,742.742 INFO    ] 2026-06-13 22:13:48
[2026-06-13 22:13:48,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:13:48,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:13:48,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:13:49,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:13:49,160.160 INFO    ] time= 13/06/2026 22:13:49
[2026-06-13 22:13:49,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:13:49,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:13:49,256.256 INFO    ] No existing commands found in stream
[2026-06-13 22:13:54,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:13:54,268.268 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 22:13:56,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:13:56,241.241 INFO    ] Checking for system updates...
[2026-06-13 22:13:56,263.263 INFO    ] 200
[2026-06-13 22:13:56,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:56,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:13:56,296.296 INFO    ] No update needed
[2026-06-13 22:13:56,297.297 INFO    ] Checking for camera pi updates...
[2026-06-13 22:13:56,317.317 INFO    ] 200
[2026-06-13 22:13:56,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:13:56,344.344 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:13:56,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:13:56,390.390 INFO    ] No camera update needed
[2026-06-13 22:13:56,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:13:56,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:13:56,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:13:56,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:13:58,440.440 INFO    ] ================================================
[2026-06-13 22:13:58,456.456 INFO    ] Launching Daemon at Sat Jun 13 22:13:58 IST 2026
[2026-06-13 22:13:58,467.467 INFO    ] ================================================
[2026-06-13 22:13:58,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:13:58
[2026-06-13 22:13:59,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:13:59,245.245 INFO    ] Initializing speech engine...
[2026-06-13 22:13:59,250.250 INFO    ] 2026-06-13 22:13:59
[2026-06-13 22:13:59,454.454 INFO    ] 2026-06-13 22:13:59
[2026-06-13 22:13:59,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:13:59,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:13:59,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:13:59,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:13:59,862.862 INFO    ] time= 13/06/2026 22:13:59
[2026-06-13 22:13:59,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:13:59,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:13:59,967.967 INFO    ] No existing commands found in stream
[2026-06-13 22:14:04,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:14:04,984.984 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 22:14:08,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:14:08,230.230 INFO    ] Checking for system updates...
[2026-06-13 22:14:08,252.252 INFO    ] 200
[2026-06-13 22:14:08,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:08,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:14:08,286.286 INFO    ] No update needed
[2026-06-13 22:14:08,287.287 INFO    ] Checking for camera pi updates...
[2026-06-13 22:14:08,307.307 INFO    ] 200
[2026-06-13 22:14:08,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:08,334.334 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:14:08,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:14:08,372.372 INFO    ] No camera update needed
[2026-06-13 22:14:08,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:14:08,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:14:08,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:14:08,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:14:10,421.421 INFO    ] ================================================
[2026-06-13 22:14:10,436.436 INFO    ] Launching Daemon at Sat Jun 13 22:14:10 IST 2026
[2026-06-13 22:14:10,447.447 INFO    ] ================================================
[2026-06-13 22:14:10,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:14:10
[2026-06-13 22:14:11,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:14:11,312.312 INFO    ] Initializing speech engine...
[2026-06-13 22:14:11,317.317 INFO    ] 2026-06-13 22:14:11
[2026-06-13 22:14:11,523.523 INFO    ] 2026-06-13 22:14:11
[2026-06-13 22:14:11,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:14:11,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:14:11,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:14:11,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:14:11,941.941 INFO    ] time= 13/06/2026 22:14:11
[2026-06-13 22:14:11,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:14:11,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:14:12,038.038 INFO    ] No existing commands found in stream
[2026-06-13 22:14:17,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:14:17,052.052 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 22:14:17,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:14:17,490.490 INFO    ] Checking for system updates...
[2026-06-13 22:14:17,511.511 INFO    ] 200
[2026-06-13 22:14:17,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:17,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:14:17,545.545 INFO    ] No update needed
[2026-06-13 22:14:17,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 22:14:17,566.566 INFO    ] 200
[2026-06-13 22:14:17,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:17,591.591 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:14:17,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:14:17,641.641 INFO    ] No camera update needed
[2026-06-13 22:14:17,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:14:17,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:14:17,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:14:17,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:14:19,692.692 INFO    ] ================================================
[2026-06-13 22:14:19,707.707 INFO    ] Launching Daemon at Sat Jun 13 22:14:19 IST 2026
[2026-06-13 22:14:19,718.718 INFO    ] ================================================
[2026-06-13 22:14:20,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:14:20
[2026-06-13 22:14:20,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:14:20,504.504 INFO    ] Initializing speech engine...
[2026-06-13 22:14:20,513.513 INFO    ] 2026-06-13 22:14:20
[2026-06-13 22:14:20,736.736 INFO    ] 2026-06-13 22:14:20
[2026-06-13 22:14:20,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:14:20,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:14:20,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:14:21,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:14:21,149.149 INFO    ] time= 13/06/2026 22:14:21
[2026-06-13 22:14:21,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:14:21,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:14:21,291.291 INFO    ] No existing commands found in stream
[2026-06-13 22:14:26,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:14:26,304.304 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 22:14:30,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:14:30,215.215 INFO    ] Checking for system updates...
[2026-06-13 22:14:30,236.236 INFO    ] 200
[2026-06-13 22:14:30,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:30,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:14:30,271.271 INFO    ] No update needed
[2026-06-13 22:14:30,272.272 INFO    ] Checking for camera pi updates...
[2026-06-13 22:14:30,291.291 INFO    ] 200
[2026-06-13 22:14:30,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:30,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:14:30,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:14:30,358.358 INFO    ] No camera update needed
[2026-06-13 22:14:30,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:14:30,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:14:30,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:14:30,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:14:32,405.405 INFO    ] ================================================
[2026-06-13 22:14:32,420.420 INFO    ] Launching Daemon at Sat Jun 13 22:14:32 IST 2026
[2026-06-13 22:14:32,432.432 INFO    ] ================================================
[2026-06-13 22:14:32,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:14:32
[2026-06-13 22:14:33,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:14:33,242.242 INFO    ] Initializing speech engine...
[2026-06-13 22:14:33,250.250 INFO    ] 2026-06-13 22:14:33
[2026-06-13 22:14:33,468.468 INFO    ] 2026-06-13 22:14:33
[2026-06-13 22:14:33,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:14:33,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:14:33,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:14:33,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:14:33,874.874 INFO    ] time= 13/06/2026 22:14:33
[2026-06-13 22:14:33,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:14:33,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:14:33,990.990 INFO    ] No existing commands found in stream
[2026-06-13 22:14:39,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:14:39,006.006 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 22:14:40,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:14:40,846.846 INFO    ] Checking for system updates...
[2026-06-13 22:14:40,866.866 INFO    ] 200
[2026-06-13 22:14:40,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:40,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:14:40,901.901 INFO    ] No update needed
[2026-06-13 22:14:40,903.903 INFO    ] Checking for camera pi updates...
[2026-06-13 22:14:40,922.922 INFO    ] 200
[2026-06-13 22:14:40,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:40,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:14:40,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:14:40,994.994 INFO    ] No camera update needed
[2026-06-13 22:14:40,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:14:40,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:14:41,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:14:41,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:14:43,042.042 INFO    ] ================================================
[2026-06-13 22:14:43,058.058 INFO    ] Launching Daemon at Sat Jun 13 22:14:43 IST 2026
[2026-06-13 22:14:43,069.069 INFO    ] ================================================
[2026-06-13 22:14:43,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:14:43
[2026-06-13 22:14:43,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:14:43,848.848 INFO    ] Initializing speech engine...
[2026-06-13 22:14:43,852.852 INFO    ] 2026-06-13 22:14:43
[2026-06-13 22:14:44,071.071 INFO    ] 2026-06-13 22:14:44
[2026-06-13 22:14:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:14:44,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:14:44,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:14:44,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:14:44,481.481 INFO    ] time= 13/06/2026 22:14:44
[2026-06-13 22:14:44,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:14:44,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:14:44,603.603 INFO    ] No existing commands found in stream
[2026-06-13 22:14:49,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:14:49,615.615 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 22:14:51,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:14:51,519.519 INFO    ] Checking for system updates...
[2026-06-13 22:14:51,540.540 INFO    ] 200
[2026-06-13 22:14:51,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:51,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:14:51,574.574 INFO    ] No update needed
[2026-06-13 22:14:51,575.575 INFO    ] Checking for camera pi updates...
[2026-06-13 22:14:51,594.594 INFO    ] 200
[2026-06-13 22:14:51,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:14:51,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:14:51,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:14:51,673.673 INFO    ] No camera update needed
[2026-06-13 22:14:51,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:14:51,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:14:51,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:14:51,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:14:53,720.720 INFO    ] ================================================
[2026-06-13 22:14:53,736.736 INFO    ] Launching Daemon at Sat Jun 13 22:14:53 IST 2026
[2026-06-13 22:14:53,747.747 INFO    ] ================================================
[2026-06-13 22:14:54,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:14:54
[2026-06-13 22:14:54,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:14:54,533.533 INFO    ] Initializing speech engine...
[2026-06-13 22:14:54,537.537 INFO    ] 2026-06-13 22:14:54
[2026-06-13 22:14:54,753.753 INFO    ] 2026-06-13 22:14:54
[2026-06-13 22:14:54,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:14:54,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:14:54,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:14:55,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:14:55,184.184 INFO    ] time= 13/06/2026 22:14:55
[2026-06-13 22:14:55,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:14:55,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:14:55,304.304 INFO    ] No existing commands found in stream
[2026-06-13 22:15:00,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:00,318.318 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 22:15:02,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:15:02,482.482 INFO    ] Checking for system updates...
[2026-06-13 22:15:02,509.509 INFO    ] 200
[2026-06-13 22:15:02,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:02,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:15:02,553.553 INFO    ] No update needed
[2026-06-13 22:15:02,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:02,593.593 INFO    ] 200
[2026-06-13 22:15:02,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:02,634.634 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:02,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:15:02,666.666 INFO    ] No camera update needed
[2026-06-13 22:15:02,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:02,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:02,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:02,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:15:04,727.727 INFO    ] ================================================
[2026-06-13 22:15:04,743.743 INFO    ] Launching Daemon at Sat Jun 13 22:15:04 IST 2026
[2026-06-13 22:15:04,754.754 INFO    ] ================================================
[2026-06-13 22:15:05,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:15:05
[2026-06-13 22:15:05,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:15:05,589.589 INFO    ] Initializing speech engine...
[2026-06-13 22:15:05,594.594 INFO    ] 2026-06-13 22:15:05
[2026-06-13 22:15:05,799.799 INFO    ] 2026-06-13 22:15:05
[2026-06-13 22:15:05,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:15:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:15:06,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:15:06,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:15:06,221.221 INFO    ] time= 13/06/2026 22:15:06
[2026-06-13 22:15:06,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:15:06,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:15:06,325.325 INFO    ] No existing commands found in stream
[2026-06-13 22:15:11,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:11,336.336 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 22:15:12,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:15:12,245.245 INFO    ] Checking for system updates...
[2026-06-13 22:15:12,266.266 INFO    ] 200
[2026-06-13 22:15:12,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:12,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:12,299.299 INFO    ] No update needed
[2026-06-13 22:15:12,301.301 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:12,320.320 INFO    ] 200
[2026-06-13 22:15:12,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:12,345.345 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:12,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:12,384.384 INFO    ] No camera update needed
[2026-06-13 22:15:12,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:12,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:12,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:12,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:15:14,433.433 INFO    ] ================================================
[2026-06-13 22:15:14,449.449 INFO    ] Launching Daemon at Sat Jun 13 22:15:14 IST 2026
[2026-06-13 22:15:14,460.460 INFO    ] ================================================
[2026-06-13 22:15:14,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:15:14
[2026-06-13 22:15:15,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:15:15,261.261 INFO    ] Initializing speech engine...
[2026-06-13 22:15:15,265.265 INFO    ] 2026-06-13 22:15:15
[2026-06-13 22:15:15,496.496 INFO    ] 2026-06-13 22:15:15
[2026-06-13 22:15:15,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:15:15,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:15:15,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:15:15,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:15:15,873.873 INFO    ] time= 13/06/2026 22:15:15
[2026-06-13 22:15:15,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:15:15,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:15:16,000.000 INFO    ] No existing commands found in stream
[2026-06-13 22:15:21,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:21,036.036 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-13 22:15:24,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:15:24,868.868 INFO    ] Checking for system updates...
[2026-06-13 22:15:24,904.904 INFO    ] 200
[2026-06-13 22:15:24,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:24,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:24,966.966 INFO    ] No update needed
[2026-06-13 22:15:24,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:25,004.004 INFO    ] 200
[2026-06-13 22:15:25,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:25,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:25,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:25,102.102 INFO    ] No camera update needed
[2026-06-13 22:15:25,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:25,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:25,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:25,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:15:27,160.160 INFO    ] ================================================
[2026-06-13 22:15:27,176.176 INFO    ] Launching Daemon at Sat Jun 13 22:15:27 IST 2026
[2026-06-13 22:15:27,187.187 INFO    ] ================================================
[2026-06-13 22:15:27,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:15:27
[2026-06-13 22:15:27,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:15:27,996.996 INFO    ] Initializing speech engine...
[2026-06-13 22:15:28,001.001 INFO    ] 2026-06-13 22:15:27
[2026-06-13 22:15:28,204.204 INFO    ] 2026-06-13 22:15:28
[2026-06-13 22:15:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:15:28,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:15:28,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:15:28,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:15:28,615.615 INFO    ] time= 13/06/2026 22:15:28
[2026-06-13 22:15:28,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:15:28,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:15:28,719.719 INFO    ] No existing commands found in stream
[2026-06-13 22:15:33,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:33,733.733 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-13 22:15:36,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:15:36,083.083 INFO    ] Checking for system updates...
[2026-06-13 22:15:36,119.119 INFO    ] 200
[2026-06-13 22:15:36,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:36,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:15:36,180.180 INFO    ] No update needed
[2026-06-13 22:15:36,181.181 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:36,200.200 INFO    ] 200
[2026-06-13 22:15:36,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:36,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:36,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:15:36,363.363 INFO    ] No camera update needed
[2026-06-13 22:15:36,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:36,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:36,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:36,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:15:38,411.411 INFO    ] ================================================
[2026-06-13 22:15:38,426.426 INFO    ] Launching Daemon at Sat Jun 13 22:15:38 IST 2026
[2026-06-13 22:15:38,438.438 INFO    ] ================================================
[2026-06-13 22:15:38,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:15:38
[2026-06-13 22:15:39,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:15:39,246.246 INFO    ] Initializing speech engine...
[2026-06-13 22:15:39,251.251 INFO    ] 2026-06-13 22:15:39
[2026-06-13 22:15:39,470.470 INFO    ] 2026-06-13 22:15:39
[2026-06-13 22:15:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:15:39,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:15:39,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:15:39,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:15:39,898.898 INFO    ] time= 13/06/2026 22:15:39
[2026-06-13 22:15:39,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:15:39,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:15:39,995.995 INFO    ] No existing commands found in stream
[2026-06-13 22:15:45,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:45,008.008 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 22:15:47,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:15:47,665.665 INFO    ] Checking for system updates...
[2026-06-13 22:15:47,686.686 INFO    ] 200
[2026-06-13 22:15:47,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:47,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:47,720.720 INFO    ] No update needed
[2026-06-13 22:15:47,722.722 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:47,741.741 INFO    ] 200
[2026-06-13 22:15:47,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:47,766.766 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:47,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:47,805.805 INFO    ] No camera update needed
[2026-06-13 22:15:47,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:47,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:47,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:47,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:15:49,852.852 INFO    ] ================================================
[2026-06-13 22:15:49,868.868 INFO    ] Launching Daemon at Sat Jun 13 22:15:49 IST 2026
[2026-06-13 22:15:49,879.879 INFO    ] ================================================
[2026-06-13 22:15:50,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:15:50
[2026-06-13 22:15:50,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:15:50,662.662 INFO    ] Initializing speech engine...
[2026-06-13 22:15:50,667.667 INFO    ] 2026-06-13 22:15:50
[2026-06-13 22:15:50,871.871 INFO    ] 2026-06-13 22:15:50
[2026-06-13 22:15:50,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:15:51,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:15:51,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:15:51,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:15:51,272.272 INFO    ] time= 13/06/2026 22:15:51
[2026-06-13 22:15:51,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:15:51,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:15:51,386.386 INFO    ] No existing commands found in stream
[2026-06-13 22:15:56,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:15:56,400.400 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 22:15:59,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:15:59,395.395 INFO    ] Checking for system updates...
[2026-06-13 22:15:59,416.416 INFO    ] 200
[2026-06-13 22:15:59,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:59,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:59,451.451 INFO    ] No update needed
[2026-06-13 22:15:59,452.452 INFO    ] Checking for camera pi updates...
[2026-06-13 22:15:59,472.472 INFO    ] 200
[2026-06-13 22:15:59,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:15:59,498.498 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:15:59,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:15:59,537.537 INFO    ] No camera update needed
[2026-06-13 22:15:59,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:15:59,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:15:59,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:15:59,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:01,585.585 INFO    ] ================================================
[2026-06-13 22:16:01,600.600 INFO    ] Launching Daemon at Sat Jun 13 22:16:01 IST 2026
[2026-06-13 22:16:01,611.611 INFO    ] ================================================
[2026-06-13 22:16:01,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:01
[2026-06-13 22:16:02,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:02,600.600 INFO    ] Initializing speech engine...
[2026-06-13 22:16:02,613.613 INFO    ] 2026-06-13 22:16:02
[2026-06-13 22:16:02,844.844 INFO    ] 2026-06-13 22:16:02
[2026-06-13 22:16:02,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:02,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:03,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:03,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:03,155.155 INFO    ] time= 13/06/2026 22:16:03
[2026-06-13 22:16:03,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:03,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:03,282.282 INFO    ] No existing commands found in stream
[2026-06-13 22:16:08,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:16:08,311.311 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 22:16:09,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:16:09,047.047 INFO    ] Checking for system updates...
[2026-06-13 22:16:09,084.084 INFO    ] 200
[2026-06-13 22:16:09,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:09,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:09,145.145 INFO    ] No update needed
[2026-06-13 22:16:09,148.148 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:09,187.187 INFO    ] 200
[2026-06-13 22:16:09,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:09,233.233 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:09,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:09,279.279 INFO    ] No camera update needed
[2026-06-13 22:16:09,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:09,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:09,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:09,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:11,330.330 INFO    ] ================================================
[2026-06-13 22:16:11,346.346 INFO    ] Launching Daemon at Sat Jun 13 22:16:11 IST 2026
[2026-06-13 22:16:11,356.356 INFO    ] ================================================
[2026-06-13 22:16:11,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:11
[2026-06-13 22:16:12,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:12,683.683 INFO    ] Initializing speech engine...
[2026-06-13 22:16:12,700.700 INFO    ] 2026-06-13 22:16:12
[2026-06-13 22:16:12,988.988 INFO    ] 2026-06-13 22:16:12
[2026-06-13 22:16:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:13,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:13,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:13,340.340 INFO    ] time= 13/06/2026 22:16:13
[2026-06-13 22:16:13,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:13,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:13,424.424 INFO    ] No existing commands found in stream
[2026-06-13 22:16:18,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:16:18,441.441 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-13 22:16:19,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:16:19,123.123 INFO    ] Checking for system updates...
[2026-06-13 22:16:19,144.144 INFO    ] 200
[2026-06-13 22:16:19,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:19,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:19,182.182 INFO    ] No update needed
[2026-06-13 22:16:19,183.183 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:19,203.203 INFO    ] 200
[2026-06-13 22:16:19,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:19,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:19,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:19,271.271 INFO    ] No camera update needed
[2026-06-13 22:16:19,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:19,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:19,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:19,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:21,319.319 INFO    ] ================================================
[2026-06-13 22:16:21,334.334 INFO    ] Launching Daemon at Sat Jun 13 22:16:21 IST 2026
[2026-06-13 22:16:21,345.345 INFO    ] ================================================
[2026-06-13 22:16:21,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:21
[2026-06-13 22:16:22,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:22,226.226 INFO    ] Initializing speech engine...
[2026-06-13 22:16:22,235.235 INFO    ] 2026-06-13 22:16:22
[2026-06-13 22:16:22,455.455 INFO    ] 2026-06-13 22:16:22
[2026-06-13 22:16:22,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:22,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:22,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:22,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:22,834.834 INFO    ] time= 13/06/2026 22:16:22
[2026-06-13 22:16:22,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:22,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:23,018.018 INFO    ] No existing commands found in stream
[2026-06-13 22:16:28,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:16:28,032.032 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 22:16:31,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:16:31,650.650 INFO    ] Checking for system updates...
[2026-06-13 22:16:31,675.675 INFO    ] 200
[2026-06-13 22:16:31,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:31,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:31,713.713 INFO    ] No update needed
[2026-06-13 22:16:31,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:31,738.738 INFO    ] 200
[2026-06-13 22:16:31,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:31,765.765 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:31,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:31,807.807 INFO    ] No camera update needed
[2026-06-13 22:16:31,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:31,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:31,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:31,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:33,850.850 INFO    ] ================================================
[2026-06-13 22:16:33,865.865 INFO    ] Launching Daemon at Sat Jun 13 22:16:33 IST 2026
[2026-06-13 22:16:33,876.876 INFO    ] ================================================
[2026-06-13 22:16:34,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:34
[2026-06-13 22:16:34,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:34,745.745 INFO    ] Initializing speech engine...
[2026-06-13 22:16:34,751.751 INFO    ] 2026-06-13 22:16:34
[2026-06-13 22:16:34,960.960 INFO    ] 2026-06-13 22:16:34
[2026-06-13 22:16:34,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:35,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:35,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:35,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:35,368.368 INFO    ] time= 13/06/2026 22:16:35
[2026-06-13 22:16:35,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:35,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:35,477.477 INFO    ] No existing commands found in stream
[2026-06-13 22:16:40,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:16:40,492.492 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 22:16:42,682.682 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:16:42,683.683 INFO    ] Checking for system updates...
[2026-06-13 22:16:42,704.704 INFO    ] 200
[2026-06-13 22:16:42,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:42,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:16:42,739.739 INFO    ] No update needed
[2026-06-13 22:16:42,741.741 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:42,760.760 INFO    ] 200
[2026-06-13 22:16:42,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:42,786.786 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:42,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:16:42,825.825 INFO    ] No camera update needed
[2026-06-13 22:16:42,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:42,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:42,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:42,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:44,874.874 INFO    ] ================================================
[2026-06-13 22:16:44,889.889 INFO    ] Launching Daemon at Sat Jun 13 22:16:44 IST 2026
[2026-06-13 22:16:44,900.900 INFO    ] ================================================
[2026-06-13 22:16:45,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:45
[2026-06-13 22:16:45,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:46,002.002 INFO    ] Initializing speech engine...
[2026-06-13 22:16:46,021.021 INFO    ] 2026-06-13 22:16:46
[2026-06-13 22:16:46,271.271 INFO    ] 2026-06-13 22:16:46
[2026-06-13 22:16:46,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:46,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:46,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:46,606.606 INFO    ] time= 13/06/2026 22:16:46
[2026-06-13 22:16:46,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:46,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:46,718.718 INFO    ] No existing commands found in stream
[2026-06-13 22:16:51,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:16:51,757.757 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 22:16:52,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:16:52,119.119 INFO    ] Checking for system updates...
[2026-06-13 22:16:52,141.141 INFO    ] 200
[2026-06-13 22:16:52,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:52,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:52,178.178 INFO    ] No update needed
[2026-06-13 22:16:52,179.179 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:52,200.200 INFO    ] 200
[2026-06-13 22:16:52,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:52,225.225 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:52,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:16:52,263.263 INFO    ] No camera update needed
[2026-06-13 22:16:52,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:52,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:52,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:52,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:16:54,305.305 INFO    ] ================================================
[2026-06-13 22:16:54,321.321 INFO    ] Launching Daemon at Sat Jun 13 22:16:54 IST 2026
[2026-06-13 22:16:54,332.332 INFO    ] ================================================
[2026-06-13 22:16:54,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:16:54
[2026-06-13 22:16:54,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:16:55,119.119 INFO    ] Initializing speech engine...
[2026-06-13 22:16:55,133.133 INFO    ] 2026-06-13 22:16:55
[2026-06-13 22:16:55,353.353 INFO    ] 2026-06-13 22:16:55
[2026-06-13 22:16:55,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:16:55,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:16:55,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:16:55,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:16:55,601.601 INFO    ] time= 13/06/2026 22:16:55
[2026-06-13 22:16:55,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:16:55,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:16:55,690.690 INFO    ] No existing commands found in stream
[2026-06-13 22:16:58,742.742 INFO    ] Received new command: ID=1781369218720-0
[2026-06-13 22:16:58,744.744 INFO    ] process_and_cleanup_command: msg_id=1781369218720-0
[2026-06-13 22:16:58,747.747 INFO    ] is_command_expired: timestamp=2026-06-13T16:46:58.585Z, expiry=30s
[2026-06-13 22:16:58,811.811 INFO    ] Command removed from stream: 1781369218720-0. returning for processing...
[2026-06-13 22:16:58,814.814 INFO    ] ***** get_valid_command
[2026-06-13 22:16:58,816.816 INFO    ] {'data': '{"request_id":"start-order-1781369218585-d22thkenb","orderId":"TM08202203260613221615635","is_vending":false}', 'command': 'start-order', 'timeout': '10', 'timestamp': '2026-06-13T16:46:58.585Z', 'source': 'webapp'}
[2026-06-13 22:16:58,819.819 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613221615635', 'request_id': 'start-order-1781369218585-d22thkenb'}
[2026-06-13 22:16:58,822.822 INFO    ] Handling start order...
[2026-06-13 22:16:58,824.824 INFO    ] handle_start_order_command
[2026-06-13 22:16:58,829.829 INFO    ] _send_start_order_success: request_id=start-order-1781369218585-d22thkenb, order_id=TM08202203260613221615635
[2026-06-13 22:16:58,832.832 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:16:58,880.880 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781369218860-0
[2026-06-13 22:16:58,882.882 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:16:58,885.885 INFO    ] Checking for system updates...
[2026-06-13 22:16:58,926.926 INFO    ] 200
[2026-06-13 22:16:58,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:58,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:16:58,985.985 INFO    ] No update needed
[2026-06-13 22:16:58,987.987 INFO    ] Checking for camera pi updates...
[2026-06-13 22:16:59,021.021 INFO    ] 200
[2026-06-13 22:16:59,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:16:59,066.066 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:16:59,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:16:59,111.111 INFO    ] No camera update needed
[2026-06-13 22:16:59,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:16:59,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:16:59,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:16:59,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:17:01,179.179 INFO    ] ================================================
[2026-06-13 22:17:01,204.204 INFO    ] Launching Daemon at Sat Jun 13 22:17:01 IST 2026
[2026-06-13 22:17:01,230.230 INFO    ] ================================================
[2026-06-13 22:17:01,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:17:01
[2026-06-13 22:17:02,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:17:02,246.246 INFO    ] Initializing speech engine...
[2026-06-13 22:17:02,260.260 INFO    ] 2026-06-13 22:17:02
[2026-06-13 22:17:02,452.452 INFO    ] 2026-06-13 22:17:02
[2026-06-13 22:17:02,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:17:02,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:17:02,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:17:02,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:17:02,748.748 INFO    ] time= 13/06/2026 22:17:02
[2026-06-13 22:17:02,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:17:02,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:17:02,832.832 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 22:17:02,873.873 INFO    ] Checking historical command: ID=1781369218860-0
[2026-06-13 22:17:02,899.899 INFO    ] process_and_cleanup_command: msg_id=1781369218860-0
[2026-06-13 22:17:02,963.963 INFO    ] is_command_expired: timestamp=2026-06-13T16:46:58.830873Z, expiry=30s
[2026-06-13 22:17:03,084.084 INFO    ] Command removed from stream: 1781369218860-0. returning for processing...
[2026-06-13 22:17:03,088.088 INFO    ] ***** get_valid_command
[2026-06-13 22:17:03,115.115 INFO    ] {'status': 'success', 'message': 'start-order success', 'metadata_order_id': 'TM08202203260613221615635', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781369218585-d22thkenb', 'message_type': 'command_response', 'timestamp': '2026-06-13T16:46:58.830873Z'}
[2026-06-13 22:17:03,117.117 INFO    ] Checking historical command: ID=1781369221145-0
[2026-06-13 22:17:03,124.124 INFO    ] process_and_cleanup_command: msg_id=1781369221145-0
[2026-06-13 22:17:03,148.148 INFO    ] is_command_expired: timestamp=2026-06-13T16:47:00.986Z, expiry=30s
[2026-06-13 22:17:03,225.225 INFO    ] Command removed from stream: 1781369221145-0. returning for processing...
[2026-06-13 22:17:03,230.230 INFO    ] ***** get_valid_command
[2026-06-13 22:17:03,232.232 INFO    ] {'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1781369220986-fsky77mk5","orderId":"TM08202203260613221615635","is_vending":false,"accessCode":"85519925"}', 'timeout': '60', 'timestamp': '2026-06-13T16:47:00.986Z'}
[2026-06-13 22:17:03,237.237 INFO    ] ***** Parsed command data: {'accessCode': '85519925', 'orderId': 'TM08202203260613221615635', 'is_vending': False, 'request_id': 'process-order-1781369220986-fsky77mk5'}
[2026-06-13 22:17:03,241.241 INFO    ] Handling process order...
[2026-06-13 22:17:03,244.244 INFO    ] Processing process-order command...
[2026-06-13 22:17:03,247.247 INFO    ] 🔍 Lock file Order ID: TM08202203260613221615635, TS: 2026-06-13 22:16:58
[2026-06-13 22:17:03,257.257 INFO    ] ✅ Order lock valid for TM08202203260613221615635
[2026-06-13 22:17:03,260.260 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:17:03,262.262 INFO    ] processing access code 85519925 for order TM08202203260613221615635
[2026-06-13 22:17:03,267.267 INFO    ] 🔍 Lock file Order ID: TM08202203260613221615635, TS: 2026-06-13 22:16:58
[2026-06-13 22:17:03,271.271 INFO    ] ✅ Order lock valid for TM08202203260613221615635
[2026-06-13 22:17:03,274.274 INFO    ] 2026-06-13 22:17:03
[2026-06-13 22:17:03,305.305 INFO    ] 200
[2026-06-13 22:17:03,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:03,312.312 INFO    ] 85519925
[2026-06-13 22:17:03,315.315 INFO    ] 2026-06-13 22:17:03
[2026-06-13 22:17:03,318.318 INFO    ] session id :154069704
[2026-06-13 22:17:03,321.321 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=85519925&imei=TM08202203&session_id=154069704
[2026-06-13 22:17:04,255.255 INFO    ] 200
[2026-06-13 22:17:04,261.261 INFO    ] {"data": {"mobile": "9703868607", "order_id": "TM08202203260613221615635", "bill_amount": "50", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500702-1302.webp", "skuid": "4500702", "door_id": "2", "mrp": "30", "offer_desc": "", "name": "Raw Masala Shikanji 200ml", "tray_id": "33", "unit_price": 30, "qty": 1, "sku_total": 30, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "skuid": "4500706", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "MAA Mango flavoured Fruit drink 170ml", "tray_id": "41", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "85519925", "invoice_bill": "50"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:17:04,271.271 INFO    ] 50
[2026-06-13 22:17:04,291.291 INFO    ] TM08202203260613221615635
[2026-06-13 22:17:04,296.296 INFO    ] 9703868607
[2026-06-13 22:17:04,303.303 INFO    ] 2026-06-13 22:17:04
[2026-06-13 22:17:04,309.309 INFO    ] Door Opening for user mobile ending with  eight six zero seven 
[2026-06-13 22:17:04,340.340 INFO    ] Door Opening for user mobile ending with  eight six zero seven 
[2026-06-13 22:17:04,358.358 INFO    ] de88a13971ba931c78f3f9ea630ab3a8
[2026-06-13 22:17:04,370.370 INFO    ] 2026-06-13 22:17:04
[2026-06-13 22:17:04,378.378 INFO    ] creating audio file
[2026-06-13 22:17:04,883.883 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-13 22:17:05,400.400 INFO    ] gTTS API call completed successfully
[2026-06-13 22:17:06,571.571 INFO    ] 2026-06-13 22:17:06
[2026-06-13 22:17:06,573.573 INFO    ] playing audio file
[2026-06-13 22:17:06,583.583 INFO    ] 2026-06-13 22:17:06
[2026-06-13 22:17:06,585.585 INFO    ] 2026-06-13 22:17:06
[2026-06-13 22:17:06,587.587 INFO    ] publish_status: order_id=TM08202203260613221615635
[2026-06-13 22:17:06,589.589 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613221615635
[2026-06-13 22:17:06,657.657 INFO    ] [publish_status] Message added to stream with ID: 1781369226638-0
[2026-06-13 22:17:06,659.659 INFO    ] Published to order:TM08202203260613221615635: {'server_response': '{"status": true, "data": {"invoice_bill": "50", "access_code": "85519925", "bill_amount": "50", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500702-1302.webp", "door_id": "2", "offer_id": "", "skuid": "4500702", "offer_desc": "", "name": "Raw Masala Shikanji 200ml", "tray_id": "33", "qty": 1, "unit_price": 30, "mrp": "30", "sku_total": 30}, {"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "door_id": "2", "offer_id": "", "skuid": "4500706", "offer_desc": "", "name": "MAA Mango flavoured Fruit drink 170ml", "tray_id": "41", "qty": 1, "unit_price": 20, "mrp": "20", "sku_total": 20}], "order_id": "TM08202203260613221615635", "mobile": "9703868607"}, "msg": "Order Data", "rstatus": true}', 'server_status': 'order-started', 'timestamp': '2026-06-13T16:47:06.586280Z', 'order_id': 'TM08202203260613221615635'} (ID: 1781369226638-0)
[2026-06-13 22:17:06,967.967 INFO    ] {'server_response': {'status': True, 'data': {'invoice_bill': '50', 'access_code': '85519925', 'bill_amount': '50', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '2', 'offer_id': '', 'skuid': '4500702', 'offer_desc': '', 'name': 'Raw Masala Shikanji 200ml', 'tray_id': '33', 'qty': 1, 'unit_price': 30, 'mrp': '30', 'sku_total': 30}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '2', 'offer_id': '', 'skuid': '4500706', 'offer_desc': '', 'name': 'MAA Mango flavoured Fruit drink 170ml', 'tray_id': '41', 'qty': 1, 'unit_price': 20, 'mrp': '20', 'sku_total': 20}], 'order_id': 'TM08202203260613221615635', 'mobile': '9703868607'}, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM08202203260613221615635'}
[2026-06-13 22:17:06,969.969 INFO    ] 200
[2026-06-13 22:17:06,970.970 INFO    ] {"data":{"server_response":{"status":true,"data":{"invoice_bill":"50","access_code":"85519925","bill_amount":"50","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500702-1302.webp","door_id":"2","offer_id":"","skuid":"4500702","offer_desc":"","name":"Raw Masala Shikanji 200ml","tray_id":"33","qty":1,"unit_price":30,"mrp":"30","sku_total":30},{"image_url":"https:\/\/images.tinymart.in\/product\/4500706-1073.webp","door_id":"2","offer_id":"","skuid":"4500706","offer_desc":"","name":"MAA Mango flavoured Fruit drink 170ml","tray_id":"41","qty":1,"unit_price":20,"mrp":"20","sku_total":20}],"order_id":"TM08202203260613221615635","mobile":"9703868607"},"msg":"Order Data","rstatus":true},"server_status":"order-started","order_id":"TM08202203260613221615635"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:17:06,972.972 INFO    ] {'data': {'server_response': {'status': True, 'data': {'invoice_bill': '50', 'access_code': '85519925', 'bill_amount': '50', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '2', 'skuid': '4500702', 'offer_desc': '', 'name': 'Raw Masala Shikanji 200ml', 'tray_id': '33', 'offer_id': '', 'sku_total': 30, 'unit_price': 30, 'qty': 1, 'mrp': '30'}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '2', 'skuid': '4500706', 'offer_desc': '', 'name': 'MAA Mango flavoured Fruit drink 170ml', 'tray_id': '41', 'offer_id': '', 'sku_total': 20, 'unit_price': 20, 'qty': 1, 'mrp': '20'}], 'order_id': 'TM08202203260613221615635', 'mobile': '9703868607'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM08202203260613221615635', 'server_status': 'order-started'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:17:06,974.974 INFO    ] 2026-06-13 22:17:06
[2026-06-13 22:17:07,000.000 INFO    ] 200
[2026-06-13 22:17:07,002.002 INFO    ] True
[2026-06-13 22:17:07,084.084 INFO    ] 200
[2026-06-13 22:17:07,086.086 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:17:07,088.088 INFO    ] {'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False}
[2026-06-13 22:17:07,090.090 INFO    ] *** process_order ***
[2026-06-13 22:17:08,236.236 INFO    ] 200
[2026-06-13 22:17:08,238.238 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:17:08,240.240 INFO    ] {'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}
[2026-06-13 22:17:08,241.241 INFO    ] *** process_order ***
[2026-06-13 22:17:08,243.243 INFO    ] publish_status: order_id=TM08202203260613221615635
[2026-06-13 22:17:08,245.245 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613221615635
[2026-06-13 22:17:08,328.328 INFO    ] [publish_status] Message added to stream with ID: 1781369228309-0
[2026-06-13 22:17:08,330.330 INFO    ] Published to order:TM08202203260613221615635: {'server_response': '{"status": "True", "voiceNote": "Door is open...", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": "", "Note": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'server_status': 'doorOpened', 'order_id': 'TM08202203260613221615635'} (ID: 1781369228309-0)
[2026-06-13 22:17:09,374.374 INFO    ] 2026-06-13 22:17:09
[2026-06-13 22:17:09,377.377 INFO    ] publish_status: order_id=TM08202203260613221615635
[2026-06-13 22:17:09,381.381 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613221615635
[2026-06-13 22:17:09,457.457 INFO    ] [publish_status] Message added to stream with ID: 1781369229436-0
[2026-06-13 22:17:09,460.460 INFO    ] Published to order:TM08202203260613221615635: {'server_response': '{"voiceNote": "Please Wait", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'server_status': 'processOrder', 'timestamp': '2026-06-13T16:47:09.375953Z', 'order_id': 'TM08202203260613221615635'} (ID: 1781369229436-0)
[2026-06-13 22:17:09,576.576 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM08202203260613221615635'}
[2026-06-13 22:17:09,580.580 INFO    ] 200
[2026-06-13 22:17:09,581.581 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"delay":0,"SectionMain":{"Header":"Processing Order"},"rstatus":true},"server_status":"processOrder","order_id":"TM08202203260613221615635"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:17:09,583.583 INFO    ] {'data': {'server_response': {'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'order_id': 'TM08202203260613221615635', 'server_status': 'processOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:17:09,585.585 INFO    ] 2026-06-13 22:17:09
[2026-06-13 22:17:09,586.586 INFO    ] None
[2026-06-13 22:17:09,587.587 INFO    ] Opening Door now
[2026-06-13 22:17:09,589.589 INFO    ] Opening Door now
[2026-06-13 22:17:09,591.591 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:17:09,592.592 INFO    ] 2026-06-13 22:17:09
[2026-06-13 22:17:09,594.594 INFO    ] playing audio file
[2026-06-13 22:17:09,605.605 INFO    ] 2026-06-13 22:17:09
[2026-06-13 22:17:09,607.607 INFO    ] 2026-06-13 22:17:09
[2026-06-13 22:17:12,643.643 INFO    ] 200
[2026-06-13 22:17:12,645.645 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}, {"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:17:12,647.647 INFO    ] {'voiceNote': 'Door 2 is open now', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:17:15,716.716 INFO    ] 200
[2026-06-13 22:17:15,719.719 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}, {"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:17:15,723.723 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:17:18,754.754 INFO    ] 200
[2026-06-13 22:17:18,756.756 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}, {"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:17:18,757.757 INFO    ] Please close door 2
[2026-06-13 22:17:18,759.759 INFO    ] Please close door 2
[2026-06-13 22:17:18,761.761 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 22:17:18,762.762 INFO    ] 2026-06-13 22:17:18
[2026-06-13 22:17:18,764.764 INFO    ] playing audio file
[2026-06-13 22:17:18,775.775 INFO    ] 2026-06-13 22:17:18
[2026-06-13 22:17:18,778.778 INFO    ] publish_status: order_id=TM08202203260613221615635
[2026-06-13 22:17:18,780.780 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613221615635
[2026-06-13 22:17:18,863.863 INFO    ] [publish_status] Message added to stream with ID: 1781369238844-0
[2026-06-13 22:17:18,866.866 INFO    ] Published to order:TM08202203260613221615635: {'server_response': '{"voiceNote": "Please close door 2", "status": "False", "SectionSKU": {"skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}, {"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}], "Header": "Pick the below items from the door"}, "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "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"}, "SectionMain": {"Header": "Door Open"}, "rstatus": false}', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T16:47:18.776750Z', 'order_id': 'TM08202203260613221615635'} (ID: 1781369238844-0)
[2026-06-13 22:17:19,225.225 INFO    ] {'server_response': {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'server_status': 'OrderStatus', 'order_id': 'TM08202203260613221615635'}
[2026-06-13 22:17:19,228.228 INFO    ] 200
[2026-06-13 22:17:19,231.231 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 2","status":"false","SectionSKU":{"skus":[{"qty":1,"name":"Raw Masala Shikanji 200ml"},{"qty":1,"name":"MAA Mango flavoured Fruit drink 170ml"}],"Header":"Pick the below items from the door"},"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"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"},"SectionMain":{"Header":"Door Open"},"rstatus":false},"server_status":"OrderStatus","order_id":"TM08202203260613221615635"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:17:19,235.235 INFO    ] {'data': {'server_response': {'voiceNote': 'Please close door 2', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'order_id': 'TM08202203260613221615635', 'server_status': 'OrderStatus'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:17:19,240.240 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:17:22,281.281 INFO    ] 200
[2026-06-13 22:17:22,283.283 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}, {"qty": 1, "name": "MAA Mango flavoured Fruit drink 170ml"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:17:22,285.285 INFO    ] {'voiceNote': 'Please close door 2', 'status': 'False', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}, {'qty': 1, 'name': 'MAA Mango flavoured Fruit drink 170ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}
[2026-06-13 22:17:25,347.347 INFO    ] 200
[2026-06-13 22:17:25,351.351 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:17:25,354.354 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-13 22:17:25,357.357 INFO    ] 2026-06-13 22:17:25
[2026-06-13 22:17:25,362.362 INFO    ] Order Completed 
[2026-06-13 22:17:25,365.365 INFO    ] Order Completed 
[2026-06-13 22:17:25,368.368 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:17:25,371.371 INFO    ] 2026-06-13 22:17:25
[2026-06-13 22:17:25,374.374 INFO    ] playing audio file
[2026-06-13 22:17:25,391.391 INFO    ] 2026-06-13 22:17:25
[2026-06-13 22:17:25,395.395 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True}
[2026-06-13 22:17:25,398.398 INFO    ] 2026-06-13 22:17:25
[2026-06-13 22:17:26,124.124 INFO    ] 200
[2026-06-13 22:17:26,126.126 INFO    ] {"res": "True", "orderId": "TM08202203260613221615635", "skus": [{"image_url": "https://images.tinymart.in/product/4500702-1302.webp", "skuid": "4500702", "door_id": "", "tray_id": "33", "name": "Raw Masala Shikanji 200ml per peice", "unit_price": "30", "mrp": "30", "qty": 1, "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "skuid": "4500706", "door_id": "", "tray_id": "41", "name": "MAA Mango flavoured Fruit drink 170ml per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 50.0}
[2026-06-13 22:17:26,130.130 INFO    ] {'logic': 'WBL', 'total_amount': 50.0, 'orderId': 'TM08202203260613221615635', 'anomaly': 0, 'res': 'True', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'skuid': '4500702', 'name': 'Raw Masala Shikanji 200ml per peice', 'qty': 1, 'tray_id': '33', 'unit_price': '30', 'mrp': '30', 'sku_total': 30.0}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '', 'skuid': '4500706', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'qty': 1, 'tray_id': '41', 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0}]}
[2026-06-13 22:17:26,133.133 INFO    ] {'logic': 'WBL', 'total_amount': 50.0, 'orderId': 'TM08202203260613221615635', 'anomaly': 0, 'res': 'True', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'skuid': '4500702', 'name': 'Raw Masala Shikanji 200ml per peice', 'qty': 1, 'tray_id': '33', 'unit_price': '30', 'mrp': '30', 'sku_total': 30.0}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '', 'skuid': '4500706', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'qty': 1, 'tray_id': '41', 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0}]}
[2026-06-13 22:17:26,136.136 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,139.139 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,142.142 INFO    ] 50
[2026-06-13 22:17:26,144.144 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,147.147 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,149.149 INFO    ]  Your Bill Amount is 50
[2026-06-13 22:17:26,152.152 INFO    ]  Your Bill Amount is 50
[2026-06-13 22:17:26,154.154 INFO    ] acaba83684019477cc6824f67d759a10
[2026-06-13 22:17:26,157.157 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,160.160 INFO    ] playing audio file
[2026-06-13 22:17:26,180.180 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,184.184 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:26,187.187 INFO    ] publish_status: order_id=TM08202203260613221615635
[2026-06-13 22:17:26,191.191 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613221615635
[2026-06-13 22:17:26,264.264 INFO    ] [publish_status] Message added to stream with ID: 1781369246243-0
[2026-06-13 22:17:26,267.267 INFO    ] Published to order:TM08202203260613221615635: {'server_response': '{"logic": "WBL", "total_amount": 50.0, "orderId": "TM08202203260613221615635", "anomaly": 0, "res": "True", "rstatus": true, "skus": [{"image_url": "https://images.tinymart.in/product/4500702-1302.webp", "door_id": "", "skuid": "4500702", "name": "Raw Masala Shikanji 200ml per peice", "qty": 1, "tray_id": "33", "unit_price": "30", "mrp": "30", "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/4500706-1073.webp", "door_id": "", "skuid": "4500706", "name": "MAA Mango flavoured Fruit drink 170ml per peice", "qty": 1, "tray_id": "41", "unit_price": "20", "mrp": "20", "sku_total": 20.0}]}', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T16:47:26.185836Z', 'order_id': 'TM08202203260613221615635'} (ID: 1781369246243-0)
[2026-06-13 22:17:26,670.670 INFO    ] {'server_response': {'logic': 'WBL', 'total_amount': 50.0, 'orderId': 'TM08202203260613221615635', 'anomaly': 0, 'res': 'True', 'rstatus': True, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'skuid': '4500702', 'name': 'Raw Masala Shikanji 200ml per peice', 'qty': 1, 'tray_id': '33', 'unit_price': '30', 'mrp': '30', 'sku_total': 30.0}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '', 'skuid': '4500706', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'qty': 1, 'tray_id': '41', 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613221615635'}
[2026-06-13 22:17:26,673.673 INFO    ] 200
[2026-06-13 22:17:26,675.675 INFO    ] {"data":{"server_response":{"logic":"WBL","total_amount":50,"orderId":"TM08202203260613221615635","anomaly":0,"res":"true","rstatus":true,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500702-1302.webp","door_id":"","skuid":"4500702","name":"Raw Masala Shikanji 200ml per peice","qty":1,"tray_id":"33","unit_price":"30","mrp":"30","sku_total":30},{"image_url":"https:\/\/images.tinymart.in\/product\/4500706-1073.webp","door_id":"","skuid":"4500706","name":"MAA Mango flavoured Fruit drink 170ml per peice","qty":1,"tray_id":"41","unit_price":"20","mrp":"20","sku_total":20}]},"server_status":"invoiceOrder","order_id":"TM08202203260613221615635"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:17:26,678.678 INFO    ] {'data': {'server_response': {'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'skuid': '4500702', 'name': 'Raw Masala Shikanji 200ml per peice', 'qty': 1, 'tray_id': '33', 'unit_price': '30', 'mrp': '30', 'sku_total': 30}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '', 'skuid': '4500706', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'qty': 1, 'tray_id': '41', 'unit_price': '20', 'mrp': '20', 'sku_total': 20}], 'res': 'true', 'anomaly': 0, 'orderId': 'TM08202203260613221615635', 'rstatus': True, 'total_amount': 50}, 'order_id': 'TM08202203260613221615635', 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:17:26,681.681 INFO    ] {'data': {'server_response': {'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'skuid': '4500702', 'name': 'Raw Masala Shikanji 200ml per peice', 'qty': 1, 'tray_id': '33', 'unit_price': '30', 'mrp': '30', 'sku_total': 30}, {'image_url': 'https://images.tinymart.in/product/4500706-1073.webp', 'door_id': '', 'skuid': '4500706', 'name': 'MAA Mango flavoured Fruit drink 170ml per peice', 'qty': 1, 'tray_id': '41', 'unit_price': '20', 'mrp': '20', 'sku_total': 20}], 'res': 'true', 'anomaly': 0, 'orderId': 'TM08202203260613221615635', 'rstatus': True, 'total_amount': 50}, 'order_id': 'TM08202203260613221615635', 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:17:26,683.683 INFO    ] 2026-06-13 22:17:26
[2026-06-13 22:17:29,093.093 INFO    ] 200
[2026-06-13 22:17:29,096.096 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635", "TM08202203260613221615635"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:17:29,099.099 INFO    ] 2026-06-13 22:17:29
[2026-06-13 22:17:29,218.218 INFO    ] 200
[2026-06-13 22:17:29,221.221 INFO    ] True
[2026-06-13 22:17:29,224.224 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613221615635
[2026-06-13 22:17:29,228.228 INFO    ] start order file deleted
[2026-06-13 22:17:29,231.231 INFO    ] Checking for system updates...
[2026-06-13 22:17:29,271.271 INFO    ] 200
[2026-06-13 22:17:29,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:29,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:17:29,336.336 INFO    ] No update needed
[2026-06-13 22:17:29,340.340 INFO    ] Checking for camera pi updates...
[2026-06-13 22:17:29,376.376 INFO    ] 200
[2026-06-13 22:17:29,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:29,425.425 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:17:29,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:17:29,471.471 INFO    ] No camera update needed
[2026-06-13 22:17:29,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:17:29,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:17:29,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:17:29,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:17:31,524.524 INFO    ] ================================================
[2026-06-13 22:17:31,534.534 INFO    ] Launching Daemon at Sat Jun 13 22:17:31 IST 2026
[2026-06-13 22:17:31,541.541 INFO    ] ================================================
[2026-06-13 22:17:31,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:17:31
[2026-06-13 22:17:32,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:17:32,408.408 INFO    ] Initializing speech engine...
[2026-06-13 22:17:32,414.414 INFO    ] 2026-06-13 22:17:32
[2026-06-13 22:17:32,626.626 INFO    ] 2026-06-13 22:17:32
[2026-06-13 22:17:32,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:17:32,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:17:32,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:17:32,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:17:33,044.044 INFO    ] time= 13/06/2026 22:17:32
[2026-06-13 22:17:33,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:17:33,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:17:33,151.151 INFO    ] No existing commands found in stream
[2026-06-13 22:17:38,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:17:38,166.166 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 22:17:39,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:17:39,229.229 INFO    ] Checking for system updates...
[2026-06-13 22:17:39,251.251 INFO    ] 200
[2026-06-13 22:17:39,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:39,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:17:39,284.284 INFO    ] No update needed
[2026-06-13 22:17:39,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 22:17:39,306.306 INFO    ] 200
[2026-06-13 22:17:39,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:39,331.331 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:17:39,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:17:39,456.456 INFO    ] No camera update needed
[2026-06-13 22:17:39,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:17:39,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:17:39,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:17:39,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:17:41,504.504 INFO    ] ================================================
[2026-06-13 22:17:41,519.519 INFO    ] Launching Daemon at Sat Jun 13 22:17:41 IST 2026
[2026-06-13 22:17:41,530.530 INFO    ] ================================================
[2026-06-13 22:17:41,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:17:41
[2026-06-13 22:17:42,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:17:42,732.732 INFO    ] Initializing speech engine...
[2026-06-13 22:17:42,744.744 INFO    ] 2026-06-13 22:17:42
[2026-06-13 22:17:43,002.002 INFO    ] 2026-06-13 22:17:42
[2026-06-13 22:17:43,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:17:43,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:17:43,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:17:43,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:17:43,459.459 INFO    ] time= 13/06/2026 22:17:43
[2026-06-13 22:17:43,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:17:43,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:17:43,619.619 INFO    ] No existing commands found in stream
[2026-06-13 22:17:48,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:17:48,654.654 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-13 22:17:49,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:17:49,106.106 INFO    ] Checking for system updates...
[2026-06-13 22:17:49,127.127 INFO    ] 200
[2026-06-13 22:17:49,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:49,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:17:49,164.164 INFO    ] No update needed
[2026-06-13 22:17:49,165.165 INFO    ] Checking for camera pi updates...
[2026-06-13 22:17:49,185.185 INFO    ] 200
[2026-06-13 22:17:49,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:49,211.211 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:17:49,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:17:49,259.259 INFO    ] No camera update needed
[2026-06-13 22:17:49,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:17:49,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:17:49,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:17:49,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:17:51,307.307 INFO    ] ================================================
[2026-06-13 22:17:51,323.323 INFO    ] Launching Daemon at Sat Jun 13 22:17:51 IST 2026
[2026-06-13 22:17:51,334.334 INFO    ] ================================================
[2026-06-13 22:17:51,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:17:51
[2026-06-13 22:17:52,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:17:52,186.186 INFO    ] Initializing speech engine...
[2026-06-13 22:17:52,193.193 INFO    ] 2026-06-13 22:17:52
[2026-06-13 22:17:52,402.402 INFO    ] 2026-06-13 22:17:52
[2026-06-13 22:17:52,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:17:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:17:52,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:17:52,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:17:52,835.835 INFO    ] time= 13/06/2026 22:17:52
[2026-06-13 22:17:52,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:17:52,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:17:53,007.007 INFO    ] No existing commands found in stream
[2026-06-13 22:17:58,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:17:58,022.022 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 22:17:59,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:17:59,767.767 INFO    ] Checking for system updates...
[2026-06-13 22:17:59,789.789 INFO    ] 200
[2026-06-13 22:17:59,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:59,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:17:59,823.823 INFO    ] No update needed
[2026-06-13 22:17:59,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 22:17:59,844.844 INFO    ] 200
[2026-06-13 22:17:59,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:17:59,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:17:59,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:17:59,906.906 INFO    ] No camera update needed
[2026-06-13 22:17:59,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:17:59,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:17:59,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:17:59,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:01,951.951 INFO    ] ================================================
[2026-06-13 22:18:01,963.963 INFO    ] Launching Daemon at Sat Jun 13 22:18:01 IST 2026
[2026-06-13 22:18:01,972.972 INFO    ] ================================================
[2026-06-13 22:18:02,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:02
[2026-06-13 22:18:02,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:02,793.793 INFO    ] Initializing speech engine...
[2026-06-13 22:18:02,804.804 INFO    ] 2026-06-13 22:18:02
[2026-06-13 22:18:03,021.021 INFO    ] 2026-06-13 22:18:02
[2026-06-13 22:18:03,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:03,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:03,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:03,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:03,269.269 INFO    ] time= 13/06/2026 22:18:03
[2026-06-13 22:18:03,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:03,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:03,368.368 INFO    ] No existing commands found in stream
[2026-06-13 22:18:08,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:18:08,400.400 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 22:18:10,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:18:10,090.090 INFO    ] Checking for system updates...
[2026-06-13 22:18:10,110.110 INFO    ] 200
[2026-06-13 22:18:10,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:10,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:18:10,151.151 INFO    ] No update needed
[2026-06-13 22:18:10,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 22:18:10,172.172 INFO    ] 200
[2026-06-13 22:18:10,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:10,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:18:10,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:18:10,244.244 INFO    ] No camera update needed
[2026-06-13 22:18:10,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:18:10,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:18:10,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:18:10,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:12,292.292 INFO    ] ================================================
[2026-06-13 22:18:12,307.307 INFO    ] Launching Daemon at Sat Jun 13 22:18:12 IST 2026
[2026-06-13 22:18:12,319.319 INFO    ] ================================================
[2026-06-13 22:18:12,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:12
[2026-06-13 22:18:12,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:13,140.140 INFO    ] Initializing speech engine...
[2026-06-13 22:18:13,145.145 INFO    ] 2026-06-13 22:18:13
[2026-06-13 22:18:13,351.351 INFO    ] 2026-06-13 22:18:13
[2026-06-13 22:18:13,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:13,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:13,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:13,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:13,762.762 INFO    ] time= 13/06/2026 22:18:13
[2026-06-13 22:18:13,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:13,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:13,876.876 INFO    ] No existing commands found in stream
[2026-06-13 22:18:18,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:18:18,888.888 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 22:18:20,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:18:20,460.460 INFO    ] Checking for system updates...
[2026-06-13 22:18:20,481.481 INFO    ] 200
[2026-06-13 22:18:20,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:20,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:18:20,515.515 INFO    ] No update needed
[2026-06-13 22:18:20,516.516 INFO    ] Checking for camera pi updates...
[2026-06-13 22:18:20,536.536 INFO    ] 200
[2026-06-13 22:18:20,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:20,562.562 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:18:20,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:18:20,603.603 INFO    ] No camera update needed
[2026-06-13 22:18:20,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:18:20,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:18:20,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:18:20,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:22,651.651 INFO    ] ================================================
[2026-06-13 22:18:22,666.666 INFO    ] Launching Daemon at Sat Jun 13 22:18:22 IST 2026
[2026-06-13 22:18:22,677.677 INFO    ] ================================================
[2026-06-13 22:18:23,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:23
[2026-06-13 22:18:23,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:23,484.484 INFO    ] Initializing speech engine...
[2026-06-13 22:18:23,490.490 INFO    ] 2026-06-13 22:18:23
[2026-06-13 22:18:23,692.692 INFO    ] 2026-06-13 22:18:23
[2026-06-13 22:18:23,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:23,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:23,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:24,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:24,098.098 INFO    ] time= 13/06/2026 22:18:24
[2026-06-13 22:18:24,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:24,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:24,210.210 INFO    ] No existing commands found in stream
[2026-06-13 22:18:29,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:18:29,222.222 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-13 22:18:32,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:18:32,830.830 INFO    ] Checking for system updates...
[2026-06-13 22:18:32,866.866 INFO    ] 200
[2026-06-13 22:18:32,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:32,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:18:32,924.924 INFO    ] No update needed
[2026-06-13 22:18:32,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 22:18:32,961.961 INFO    ] 200
[2026-06-13 22:18:32,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:33,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:18:33,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:18:33,047.047 INFO    ] No camera update needed
[2026-06-13 22:18:33,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:18:33,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:18:33,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:18:33,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:35,103.103 INFO    ] ================================================
[2026-06-13 22:18:35,120.120 INFO    ] Launching Daemon at Sat Jun 13 22:18:35 IST 2026
[2026-06-13 22:18:35,131.131 INFO    ] ================================================
[2026-06-13 22:18:35,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:35
[2026-06-13 22:18:35,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:35,936.936 INFO    ] Initializing speech engine...
[2026-06-13 22:18:35,942.942 INFO    ] 2026-06-13 22:18:35
[2026-06-13 22:18:36,145.145 INFO    ] 2026-06-13 22:18:36
[2026-06-13 22:18:36,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:36,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:36,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:36,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:36,549.549 INFO    ] time= 13/06/2026 22:18:36
[2026-06-13 22:18:36,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:36,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:36,658.658 INFO    ] No existing commands found in stream
[2026-06-13 22:18:41,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:18:41,671.671 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 22:18:43,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:18:43,019.019 INFO    ] Checking for system updates...
[2026-06-13 22:18:43,039.039 INFO    ] 200
[2026-06-13 22:18:43,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:43,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:18:43,073.073 INFO    ] No update needed
[2026-06-13 22:18:43,074.074 INFO    ] Checking for camera pi updates...
[2026-06-13 22:18:43,095.095 INFO    ] 200
[2026-06-13 22:18:43,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:43,120.120 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:18:43,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:18:43,162.162 INFO    ] No camera update needed
[2026-06-13 22:18:43,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:18:43,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:18:43,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:18:43,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:45,211.211 INFO    ] ================================================
[2026-06-13 22:18:45,227.227 INFO    ] Launching Daemon at Sat Jun 13 22:18:45 IST 2026
[2026-06-13 22:18:45,240.240 INFO    ] ================================================
[2026-06-13 22:18:45,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:45
[2026-06-13 22:18:45,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:46,017.017 INFO    ] Initializing speech engine...
[2026-06-13 22:18:46,021.021 INFO    ] 2026-06-13 22:18:46
[2026-06-13 22:18:46,240.240 INFO    ] 2026-06-13 22:18:46
[2026-06-13 22:18:46,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:46,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:46,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:46,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:46,648.648 INFO    ] time= 13/06/2026 22:18:46
[2026-06-13 22:18:46,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:46,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:46,766.766 INFO    ] No existing commands found in stream
[2026-06-13 22:18:51,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:18:51,777.777 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 22:18:55,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:18:55,630.630 INFO    ] Checking for system updates...
[2026-06-13 22:18:55,651.651 INFO    ] 200
[2026-06-13 22:18:55,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:55,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:18:55,686.686 INFO    ] No update needed
[2026-06-13 22:18:55,687.687 INFO    ] Checking for camera pi updates...
[2026-06-13 22:18:55,707.707 INFO    ] 200
[2026-06-13 22:18:55,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:18:55,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:18:55,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:18:55,779.779 INFO    ] No camera update needed
[2026-06-13 22:18:55,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:18:55,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:18:55,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:18:55,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:18:57,827.827 INFO    ] ================================================
[2026-06-13 22:18:57,843.843 INFO    ] Launching Daemon at Sat Jun 13 22:18:57 IST 2026
[2026-06-13 22:18:57,854.854 INFO    ] ================================================
[2026-06-13 22:18:58,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:18:58
[2026-06-13 22:18:58,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:18:58,714.714 INFO    ] Initializing speech engine...
[2026-06-13 22:18:58,720.720 INFO    ] 2026-06-13 22:18:58
[2026-06-13 22:18:58,928.928 INFO    ] 2026-06-13 22:18:58
[2026-06-13 22:18:58,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:18:59,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:18:59,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:18:59,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:18:59,351.351 INFO    ] time= 13/06/2026 22:18:59
[2026-06-13 22:18:59,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:18:59,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:18:59,449.449 INFO    ] No existing commands found in stream
[2026-06-13 22:19:04,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:19:04,466.466 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 22:19:04,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:19:04,976.976 INFO    ] Checking for system updates...
[2026-06-13 22:19:04,999.999 INFO    ] 200
[2026-06-13 22:19:05,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:05,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:05,032.032 INFO    ] No update needed
[2026-06-13 22:19:05,034.034 INFO    ] Checking for camera pi updates...
[2026-06-13 22:19:05,055.055 INFO    ] 200
[2026-06-13 22:19:05,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:05,080.080 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:19:05,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:05,120.120 INFO    ] No camera update needed
[2026-06-13 22:19:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:19:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:19:05,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:19:05,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:19:07,168.168 INFO    ] ================================================
[2026-06-13 22:19:07,184.184 INFO    ] Launching Daemon at Sat Jun 13 22:19:07 IST 2026
[2026-06-13 22:19:07,195.195 INFO    ] ================================================
[2026-06-13 22:19:07,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:19:07
[2026-06-13 22:19:07,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:19:08,083.083 INFO    ] Initializing speech engine...
[2026-06-13 22:19:08,089.089 INFO    ] 2026-06-13 22:19:08
[2026-06-13 22:19:08,297.297 INFO    ] 2026-06-13 22:19:08
[2026-06-13 22:19:08,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:19:08,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:19:08,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:19:08,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:19:08,720.720 INFO    ] time= 13/06/2026 22:19:08
[2026-06-13 22:19:08,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:19:08,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:19:08,816.816 INFO    ] No existing commands found in stream
[2026-06-13 22:19:13,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:19:13,835.835 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 22:19:17,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:19:17,271.271 INFO    ] Checking for system updates...
[2026-06-13 22:19:17,292.292 INFO    ] 200
[2026-06-13 22:19:17,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:17,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:19:17,326.326 INFO    ] No update needed
[2026-06-13 22:19:17,327.327 INFO    ] Checking for camera pi updates...
[2026-06-13 22:19:17,347.347 INFO    ] 200
[2026-06-13 22:19:17,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:17,375.375 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:19:17,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:19:17,421.421 INFO    ] No camera update needed
[2026-06-13 22:19:17,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:19:17,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:19:17,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:19:17,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:19:19,471.471 INFO    ] ================================================
[2026-06-13 22:19:19,487.487 INFO    ] Launching Daemon at Sat Jun 13 22:19:19 IST 2026
[2026-06-13 22:19:19,498.498 INFO    ] ================================================
[2026-06-13 22:19:19,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:19:19
[2026-06-13 22:19:20,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:19:20,314.314 INFO    ] Initializing speech engine...
[2026-06-13 22:19:20,324.324 INFO    ] 2026-06-13 22:19:20
[2026-06-13 22:19:20,532.532 INFO    ] 2026-06-13 22:19:20
[2026-06-13 22:19:20,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:19:20,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:19:20,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:19:20,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:19:20,937.937 INFO    ] time= 13/06/2026 22:19:20
[2026-06-13 22:19:20,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:19:20,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:19:21,046.046 INFO    ] No existing commands found in stream
[2026-06-13 22:19:26,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:19:26,060.060 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 22:19:29,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:19:29,813.813 INFO    ] Checking for system updates...
[2026-06-13 22:19:29,835.835 INFO    ] 200
[2026-06-13 22:19:29,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:29,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:29,871.871 INFO    ] No update needed
[2026-06-13 22:19:29,873.873 INFO    ] Checking for camera pi updates...
[2026-06-13 22:19:29,892.892 INFO    ] 200
[2026-06-13 22:19:29,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:29,917.917 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:19:29,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:29,947.947 INFO    ] No camera update needed
[2026-06-13 22:19:29,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:19:29,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:19:29,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:19:29,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:19:31,988.988 INFO    ] ================================================
[2026-06-13 22:19:32,997.997 INFO    ] Launching Daemon at Sat Jun 13 22:19:31 IST 2026
[2026-06-13 22:19:32,003.003 INFO    ] ================================================
[2026-06-13 22:19:32,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:19:32
[2026-06-13 22:19:32,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:19:32,868.868 INFO    ] Initializing speech engine...
[2026-06-13 22:19:32,872.872 INFO    ] 2026-06-13 22:19:32
[2026-06-13 22:19:33,075.075 INFO    ] 2026-06-13 22:19:33
[2026-06-13 22:19:33,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:19:33,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:19:33,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:19:33,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:19:33,494.494 INFO    ] time= 13/06/2026 22:19:33
[2026-06-13 22:19:33,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:19:33,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:19:33,591.591 INFO    ] No existing commands found in stream
[2026-06-13 22:19:38,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:19:38,603.603 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 22:19:40,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:19:40,031.031 INFO    ] Checking for system updates...
[2026-06-13 22:19:40,052.052 INFO    ] 200
[2026-06-13 22:19:40,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:40,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:40,085.085 INFO    ] No update needed
[2026-06-13 22:19:40,086.086 INFO    ] Checking for camera pi updates...
[2026-06-13 22:19:40,106.106 INFO    ] 200
[2026-06-13 22:19:40,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:40,132.132 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:19:40,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:40,274.274 INFO    ] No camera update needed
[2026-06-13 22:19:40,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:19:40,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:19:40,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:19:40,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:19:42,323.323 INFO    ] ================================================
[2026-06-13 22:19:42,338.338 INFO    ] Launching Daemon at Sat Jun 13 22:19:42 IST 2026
[2026-06-13 22:19:42,349.349 INFO    ] ================================================
[2026-06-13 22:19:42,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:19:42
[2026-06-13 22:19:43,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:19:43,181.181 INFO    ] Initializing speech engine...
[2026-06-13 22:19:43,186.186 INFO    ] 2026-06-13 22:19:43
[2026-06-13 22:19:43,390.390 INFO    ] 2026-06-13 22:19:43
[2026-06-13 22:19:43,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:19:43,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:19:43,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:19:43,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:19:43,804.804 INFO    ] time= 13/06/2026 22:19:43
[2026-06-13 22:19:43,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:19:43,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:19:43,903.903 INFO    ] No existing commands found in stream
[2026-06-13 22:19:48,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:19:48,916.916 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 22:19:53,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:19:53,087.087 INFO    ] Checking for system updates...
[2026-06-13 22:19:53,109.109 INFO    ] 200
[2026-06-13 22:19:53,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:53,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:53,142.142 INFO    ] No update needed
[2026-06-13 22:19:53,143.143 INFO    ] Checking for camera pi updates...
[2026-06-13 22:19:53,163.163 INFO    ] 200
[2026-06-13 22:19:53,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:19:53,188.188 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:19:53,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:19:53,227.227 INFO    ] No camera update needed
[2026-06-13 22:19:53,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:19:53,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:19:53,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:19:53,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:19:55,277.277 INFO    ] ================================================
[2026-06-13 22:19:55,292.292 INFO    ] Launching Daemon at Sat Jun 13 22:19:55 IST 2026
[2026-06-13 22:19:55,303.303 INFO    ] ================================================
[2026-06-13 22:19:55,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:19:55
[2026-06-13 22:19:55,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:19:56,092.092 INFO    ] Initializing speech engine...
[2026-06-13 22:19:56,097.097 INFO    ] 2026-06-13 22:19:56
[2026-06-13 22:19:56,301.301 INFO    ] 2026-06-13 22:19:56
[2026-06-13 22:19:56,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:19:56,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:19:56,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:19:56,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:19:56,715.715 INFO    ] time= 13/06/2026 22:19:56
[2026-06-13 22:19:56,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:19:56,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:19:56,847.847 INFO    ] No existing commands found in stream
[2026-06-13 22:20:01,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:20:01,883.883 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 22:20:08,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:20:08,099.099 INFO    ] Checking for system updates...
[2026-06-13 22:20:08,142.142 INFO    ] 200
[2026-06-13 22:20:08,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:08,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:08,201.201 INFO    ] No update needed
[2026-06-13 22:20:08,204.204 INFO    ] Checking for camera pi updates...
[2026-06-13 22:20:08,237.237 INFO    ] 200
[2026-06-13 22:20:08,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:08,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:20:08,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:08,304.304 INFO    ] No camera update needed
[2026-06-13 22:20:08,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:20:08,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:20:08,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:20:08,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:20:10,344.344 INFO    ] ================================================
[2026-06-13 22:20:10,360.360 INFO    ] Launching Daemon at Sat Jun 13 22:20:10 IST 2026
[2026-06-13 22:20:10,371.371 INFO    ] ================================================
[2026-06-13 22:20:10,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:20:10
[2026-06-13 22:20:11,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:20:11,181.181 INFO    ] Initializing speech engine...
[2026-06-13 22:20:11,190.190 INFO    ] 2026-06-13 22:20:11
[2026-06-13 22:20:11,406.406 INFO    ] 2026-06-13 22:20:11
[2026-06-13 22:20:11,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:20:11,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:20:11,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:20:11,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:20:11,838.838 INFO    ] time= 13/06/2026 22:20:11
[2026-06-13 22:20:11,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:20:11,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:20:11,958.958 INFO    ] No existing commands found in stream
[2026-06-13 22:20:16,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:20:16,972.972 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 22:20:20,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:20:20,848.848 INFO    ] Checking for system updates...
[2026-06-13 22:20:20,869.869 INFO    ] 200
[2026-06-13 22:20:20,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:20,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:20,906.906 INFO    ] No update needed
[2026-06-13 22:20:20,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 22:20:20,929.929 INFO    ] 200
[2026-06-13 22:20:20,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:20,961.961 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:20:21,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:21,001.001 INFO    ] No camera update needed
[2026-06-13 22:20:21,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:20:21,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:20:21,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:20:21,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:20:23,050.050 INFO    ] ================================================
[2026-06-13 22:20:23,066.066 INFO    ] Launching Daemon at Sat Jun 13 22:20:23 IST 2026
[2026-06-13 22:20:23,076.076 INFO    ] ================================================
[2026-06-13 22:20:23,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:20:23
[2026-06-13 22:20:23,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:20:23,892.892 INFO    ] Initializing speech engine...
[2026-06-13 22:20:23,906.906 INFO    ] 2026-06-13 22:20:23
[2026-06-13 22:20:24,111.111 INFO    ] 2026-06-13 22:20:24
[2026-06-13 22:20:24,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:20:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:20:24,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:20:24,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:20:24,519.519 INFO    ] time= 13/06/2026 22:20:24
[2026-06-13 22:20:24,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:20:24,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:20:24,673.673 INFO    ] No existing commands found in stream
[2026-06-13 22:20:29,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:20:29,686.686 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 22:20:31,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:20:31,902.902 INFO    ] Checking for system updates...
[2026-06-13 22:20:31,925.925 INFO    ] 200
[2026-06-13 22:20:31,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:31,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:31,974.974 INFO    ] No update needed
[2026-06-13 22:20:31,975.975 INFO    ] Checking for camera pi updates...
[2026-06-13 22:20:32,010.010 INFO    ] 200
[2026-06-13 22:20:32,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:32,046.046 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:20:32,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:32,078.078 INFO    ] No camera update needed
[2026-06-13 22:20:32,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:20:32,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:20:32,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:20:32,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:20:34,118.118 INFO    ] ================================================
[2026-06-13 22:20:34,131.131 INFO    ] Launching Daemon at Sat Jun 13 22:20:34 IST 2026
[2026-06-13 22:20:34,137.137 INFO    ] ================================================
[2026-06-13 22:20:34,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:20:34
[2026-06-13 22:20:34,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:20:35,019.019 INFO    ] Initializing speech engine...
[2026-06-13 22:20:35,026.026 INFO    ] 2026-06-13 22:20:35
[2026-06-13 22:20:35,234.234 INFO    ] 2026-06-13 22:20:35
[2026-06-13 22:20:35,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:20:35,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:20:35,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:20:35,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:20:35,665.665 INFO    ] time= 13/06/2026 22:20:35
[2026-06-13 22:20:35,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:20:35,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:20:35,905.905 INFO    ] No existing commands found in stream
[2026-06-13 22:20:40,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:20:40,937.937 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 22:20:43,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:20:43,688.688 INFO    ] Checking for system updates...
[2026-06-13 22:20:43,719.719 INFO    ] 200
[2026-06-13 22:20:43,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:43,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:20:43,786.786 INFO    ] No update needed
[2026-06-13 22:20:43,789.789 INFO    ] Checking for camera pi updates...
[2026-06-13 22:20:43,810.810 INFO    ] 200
[2026-06-13 22:20:43,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:43,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:20:43,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:20:43,873.873 INFO    ] No camera update needed
[2026-06-13 22:20:43,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:20:43,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:20:43,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:20:43,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:20:45,924.924 INFO    ] ================================================
[2026-06-13 22:20:45,939.939 INFO    ] Launching Daemon at Sat Jun 13 22:20:45 IST 2026
[2026-06-13 22:20:45,951.951 INFO    ] ================================================
[2026-06-13 22:20:46,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:20:46
[2026-06-13 22:20:46,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:20:46,732.732 INFO    ] Initializing speech engine...
[2026-06-13 22:20:46,745.745 INFO    ] 2026-06-13 22:20:46
[2026-06-13 22:20:46,949.949 INFO    ] 2026-06-13 22:20:46
[2026-06-13 22:20:47,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:20:47,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:20:47,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:20:47,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:20:47,384.384 INFO    ] time= 13/06/2026 22:20:47
[2026-06-13 22:20:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:20:47,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:20:47,550.550 INFO    ] No existing commands found in stream
[2026-06-13 22:20:52,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:20:52,566.566 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 22:20:59,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:20:59,109.109 INFO    ] Checking for system updates...
[2026-06-13 22:20:59,147.147 INFO    ] 200
[2026-06-13 22:20:59,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:59,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:59,206.206 INFO    ] No update needed
[2026-06-13 22:20:59,209.209 INFO    ] Checking for camera pi updates...
[2026-06-13 22:20:59,244.244 INFO    ] 200
[2026-06-13 22:20:59,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:20:59,288.288 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:20:59,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:20:59,316.316 INFO    ] No camera update needed
[2026-06-13 22:20:59,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:20:59,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:20:59,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:20:59,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:01,370.370 INFO    ] ================================================
[2026-06-13 22:21:01,386.386 INFO    ] Launching Daemon at Sat Jun 13 22:21:01 IST 2026
[2026-06-13 22:21:01,397.397 INFO    ] ================================================
[2026-06-13 22:21:01,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:01
[2026-06-13 22:21:02,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:02,406.406 INFO    ] Initializing speech engine...
[2026-06-13 22:21:02,413.413 INFO    ] 2026-06-13 22:21:02
[2026-06-13 22:21:02,659.659 INFO    ] 2026-06-13 22:21:02
[2026-06-13 22:21:02,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:02,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:02,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:03,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:03,114.114 INFO    ] time= 13/06/2026 22:21:03
[2026-06-13 22:21:03,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:03,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:03,293.293 INFO    ] No existing commands found in stream
[2026-06-13 22:21:08,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:21:08,305.305 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-13 22:21:12,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:21:12,067.067 INFO    ] Checking for system updates...
[2026-06-13 22:21:12,104.104 INFO    ] 200
[2026-06-13 22:21:12,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:12,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:12,171.171 INFO    ] No update needed
[2026-06-13 22:21:12,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 22:21:12,199.199 INFO    ] 200
[2026-06-13 22:21:12,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:12,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:21:12,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:12,261.261 INFO    ] No camera update needed
[2026-06-13 22:21:12,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:21:12,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:21:12,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:21:12,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:14,311.311 INFO    ] ================================================
[2026-06-13 22:21:14,327.327 INFO    ] Launching Daemon at Sat Jun 13 22:21:14 IST 2026
[2026-06-13 22:21:14,338.338 INFO    ] ================================================
[2026-06-13 22:21:14,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:14
[2026-06-13 22:21:15,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:15,211.211 INFO    ] Initializing speech engine...
[2026-06-13 22:21:15,218.218 INFO    ] 2026-06-13 22:21:15
[2026-06-13 22:21:15,430.430 INFO    ] 2026-06-13 22:21:15
[2026-06-13 22:21:15,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:15,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:15,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:15,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:15,829.829 INFO    ] time= 13/06/2026 22:21:15
[2026-06-13 22:21:15,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:15,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:15,958.958 INFO    ] No existing commands found in stream
[2026-06-13 22:21:20,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:21:20,971.971 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-13 22:21:22,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:21:22,067.067 INFO    ] Checking for system updates...
[2026-06-13 22:21:22,089.089 INFO    ] 200
[2026-06-13 22:21:22,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:22,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:21:22,122.122 INFO    ] No update needed
[2026-06-13 22:21:22,124.124 INFO    ] Checking for camera pi updates...
[2026-06-13 22:21:22,144.144 INFO    ] 200
[2026-06-13 22:21:22,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:22,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:21:22,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:21:22,216.216 INFO    ] No camera update needed
[2026-06-13 22:21:22,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:21:22,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:21:22,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:21:22,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:24,263.263 INFO    ] ================================================
[2026-06-13 22:21:24,279.279 INFO    ] Launching Daemon at Sat Jun 13 22:21:24 IST 2026
[2026-06-13 22:21:24,290.290 INFO    ] ================================================
[2026-06-13 22:21:24,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:24
[2026-06-13 22:21:24,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:25,121.121 INFO    ] Initializing speech engine...
[2026-06-13 22:21:25,131.131 INFO    ] 2026-06-13 22:21:25
[2026-06-13 22:21:25,336.336 INFO    ] 2026-06-13 22:21:25
[2026-06-13 22:21:25,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:25,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:25,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:25,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:25,751.751 INFO    ] time= 13/06/2026 22:21:25
[2026-06-13 22:21:25,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:25,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:25,854.854 INFO    ] No existing commands found in stream
[2026-06-13 22:21:30,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:21:30,866.866 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 22:21:31,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:21:31,889.889 INFO    ] Checking for system updates...
[2026-06-13 22:21:31,910.910 INFO    ] 200
[2026-06-13 22:21:31,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:31,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:31,943.943 INFO    ] No update needed
[2026-06-13 22:21:31,944.944 INFO    ] Checking for camera pi updates...
[2026-06-13 22:21:31,966.966 INFO    ] 200
[2026-06-13 22:21:31,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:31,991.991 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:21:32,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:32,031.031 INFO    ] No camera update needed
[2026-06-13 22:21:32,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:21:32,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:21:32,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:21:32,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:34,077.077 INFO    ] ================================================
[2026-06-13 22:21:34,093.093 INFO    ] Launching Daemon at Sat Jun 13 22:21:34 IST 2026
[2026-06-13 22:21:34,105.105 INFO    ] ================================================
[2026-06-13 22:21:34,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:34
[2026-06-13 22:21:34,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:34,897.897 INFO    ] Initializing speech engine...
[2026-06-13 22:21:34,901.901 INFO    ] 2026-06-13 22:21:34
[2026-06-13 22:21:35,131.131 INFO    ] 2026-06-13 22:21:35
[2026-06-13 22:21:35,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:35,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:35,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:35,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:35,557.557 INFO    ] time= 13/06/2026 22:21:35
[2026-06-13 22:21:35,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:35,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:35,656.656 INFO    ] No existing commands found in stream
[2026-06-13 22:21:40,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:21:40,668.668 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 22:21:41,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:21:41,517.517 INFO    ] Checking for system updates...
[2026-06-13 22:21:41,538.538 INFO    ] 200
[2026-06-13 22:21:41,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:41,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:21:41,572.572 INFO    ] No update needed
[2026-06-13 22:21:41,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 22:21:41,592.592 INFO    ] 200
[2026-06-13 22:21:41,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:41,619.619 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:21:41,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:21:41,756.756 INFO    ] No camera update needed
[2026-06-13 22:21:41,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:21:41,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:21:41,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:21:41,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:43,803.803 INFO    ] ================================================
[2026-06-13 22:21:43,819.819 INFO    ] Launching Daemon at Sat Jun 13 22:21:43 IST 2026
[2026-06-13 22:21:43,830.830 INFO    ] ================================================
[2026-06-13 22:21:44,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:44
[2026-06-13 22:21:44,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:44,648.648 INFO    ] Initializing speech engine...
[2026-06-13 22:21:44,652.652 INFO    ] 2026-06-13 22:21:44
[2026-06-13 22:21:44,870.870 INFO    ] 2026-06-13 22:21:44
[2026-06-13 22:21:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:45,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:45,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:45,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:45,274.274 INFO    ] time= 13/06/2026 22:21:45
[2026-06-13 22:21:45,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:45,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:45,397.397 INFO    ] No existing commands found in stream
[2026-06-13 22:21:50,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:21:50,409.409 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-13 22:21:52,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:21:52,947.947 INFO    ] Checking for system updates...
[2026-06-13 22:21:52,968.968 INFO    ] 200
[2026-06-13 22:21:52,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:53,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:53,004.004 INFO    ] No update needed
[2026-06-13 22:21:53,005.005 INFO    ] Checking for camera pi updates...
[2026-06-13 22:21:53,025.025 INFO    ] 200
[2026-06-13 22:21:53,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:21:53,070.070 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:21:53,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:21:53,120.120 INFO    ] No camera update needed
[2026-06-13 22:21:53,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:21:53,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:21:53,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:21:53,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:21:55,168.168 INFO    ] ================================================
[2026-06-13 22:21:55,184.184 INFO    ] Launching Daemon at Sat Jun 13 22:21:55 IST 2026
[2026-06-13 22:21:55,198.198 INFO    ] ================================================
[2026-06-13 22:21:55,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:21:55
[2026-06-13 22:21:55,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:21:55,977.977 INFO    ] Initializing speech engine...
[2026-06-13 22:21:55,982.982 INFO    ] 2026-06-13 22:21:55
[2026-06-13 22:21:56,185.185 INFO    ] 2026-06-13 22:21:56
[2026-06-13 22:21:56,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:21:56,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:21:56,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:21:56,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:21:56,584.584 INFO    ] time= 13/06/2026 22:21:56
[2026-06-13 22:21:56,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:21:56,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:21:56,699.699 INFO    ] No existing commands found in stream
[2026-06-13 22:22:01,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:22:01,709.709 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 22:22:04,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:22:04,799.799 INFO    ] Checking for system updates...
[2026-06-13 22:22:04,819.819 INFO    ] 200
[2026-06-13 22:22:04,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:04,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:22:04,855.855 INFO    ] No update needed
[2026-06-13 22:22:04,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 22:22:04,877.877 INFO    ] 200
[2026-06-13 22:22:04,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:04,902.902 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:22:04,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:22:04,942.942 INFO    ] No camera update needed
[2026-06-13 22:22:04,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:22:04,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:22:04,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:22:04,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:22:06,991.991 INFO    ] ================================================
[2026-06-13 22:22:07,007.007 INFO    ] Launching Daemon at Sat Jun 13 22:22:07 IST 2026
[2026-06-13 22:22:07,017.017 INFO    ] ================================================
[2026-06-13 22:22:07,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:22:07
[2026-06-13 22:22:07,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:22:07,798.798 INFO    ] Initializing speech engine...
[2026-06-13 22:22:07,812.812 INFO    ] 2026-06-13 22:22:07
[2026-06-13 22:22:08,032.032 INFO    ] 2026-06-13 22:22:08
[2026-06-13 22:22:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:22:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:22:08,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:22:08,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:22:08,452.452 INFO    ] time= 13/06/2026 22:22:08
[2026-06-13 22:22:08,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:22:08,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:22:08,581.581 INFO    ] No existing commands found in stream
[2026-06-13 22:22:13,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:22:13,595.595 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-13 22:22:16,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:22:16,303.303 INFO    ] Checking for system updates...
[2026-06-13 22:22:16,324.324 INFO    ] 200
[2026-06-13 22:22:16,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:16,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:16,358.358 INFO    ] No update needed
[2026-06-13 22:22:16,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 22:22:16,380.380 INFO    ] 200
[2026-06-13 22:22:16,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:16,405.405 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:22:16,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:16,443.443 INFO    ] No camera update needed
[2026-06-13 22:22:16,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:22:16,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:22:16,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:22:16,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:22:18,491.491 INFO    ] ================================================
[2026-06-13 22:22:18,507.507 INFO    ] Launching Daemon at Sat Jun 13 22:22:18 IST 2026
[2026-06-13 22:22:18,517.517 INFO    ] ================================================
[2026-06-13 22:22:18,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:22:18
[2026-06-13 22:22:19,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:22:19,308.308 INFO    ] Initializing speech engine...
[2026-06-13 22:22:19,313.313 INFO    ] 2026-06-13 22:22:19
[2026-06-13 22:22:19,519.519 INFO    ] 2026-06-13 22:22:19
[2026-06-13 22:22:19,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:22:19,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:22:19,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:22:19,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:22:19,919.919 INFO    ] time= 13/06/2026 22:22:19
[2026-06-13 22:22:19,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:22:19,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:22:20,042.042 INFO    ] No existing commands found in stream
[2026-06-13 22:22:25,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:22:25,055.055 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-13 22:22:28,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:22:28,709.709 INFO    ] Checking for system updates...
[2026-06-13 22:22:28,730.730 INFO    ] 200
[2026-06-13 22:22:28,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:28,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:22:28,764.764 INFO    ] No update needed
[2026-06-13 22:22:28,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 22:22:28,785.785 INFO    ] 200
[2026-06-13 22:22:28,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:28,812.812 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:22:28,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:22:28,849.849 INFO    ] No camera update needed
[2026-06-13 22:22:28,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:22:28,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:22:28,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:22:28,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:22:30,899.899 INFO    ] ================================================
[2026-06-13 22:22:30,914.914 INFO    ] Launching Daemon at Sat Jun 13 22:22:30 IST 2026
[2026-06-13 22:22:30,924.924 INFO    ] ================================================
[2026-06-13 22:22:31,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:22:31
[2026-06-13 22:22:31,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:22:31,773.773 INFO    ] Initializing speech engine...
[2026-06-13 22:22:31,782.782 INFO    ] 2026-06-13 22:22:31
[2026-06-13 22:22:31,982.982 INFO    ] 2026-06-13 22:22:31
[2026-06-13 22:22:32,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:22:32,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:22:32,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:22:32,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:22:32,424.424 INFO    ] time= 13/06/2026 22:22:32
[2026-06-13 22:22:32,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:22:32,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:22:32,532.532 INFO    ] No existing commands found in stream
[2026-06-13 22:22:37,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:22:37,545.545 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 22:22:41,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:22:41,254.254 INFO    ] Checking for system updates...
[2026-06-13 22:22:41,274.274 INFO    ] 200
[2026-06-13 22:22:41,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:41,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:41,309.309 INFO    ] No update needed
[2026-06-13 22:22:41,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 22:22:41,330.330 INFO    ] 200
[2026-06-13 22:22:41,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:41,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:22:41,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:41,401.401 INFO    ] No camera update needed
[2026-06-13 22:22:41,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:22:41,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:22:41,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:22:41,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:22:43,447.447 INFO    ] ================================================
[2026-06-13 22:22:43,462.462 INFO    ] Launching Daemon at Sat Jun 13 22:22:43 IST 2026
[2026-06-13 22:22:43,473.473 INFO    ] ================================================
[2026-06-13 22:22:43,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:22:43
[2026-06-13 22:22:44,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:22:44,278.278 INFO    ] Initializing speech engine...
[2026-06-13 22:22:44,282.282 INFO    ] 2026-06-13 22:22:44
[2026-06-13 22:22:44,486.486 INFO    ] 2026-06-13 22:22:44
[2026-06-13 22:22:44,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:22:44,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:22:44,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:22:44,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:22:44,903.903 INFO    ] time= 13/06/2026 22:22:44
[2026-06-13 22:22:44,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:22:44,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:22:45,131.131 INFO    ] No existing commands found in stream
[2026-06-13 22:22:50,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:22:50,144.144 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 22:22:53,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:22:53,200.200 INFO    ] Checking for system updates...
[2026-06-13 22:22:53,221.221 INFO    ] 200
[2026-06-13 22:22:53,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:53,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:53,255.255 INFO    ] No update needed
[2026-06-13 22:22:53,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 22:22:53,278.278 INFO    ] 200
[2026-06-13 22:22:53,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:22:53,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:22:53,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:22:53,346.346 INFO    ] No camera update needed
[2026-06-13 22:22:53,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:22:53,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:22:53,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:22:53,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:22:55,393.393 INFO    ] ================================================
[2026-06-13 22:22:55,408.408 INFO    ] Launching Daemon at Sat Jun 13 22:22:55 IST 2026
[2026-06-13 22:22:55,419.419 INFO    ] ================================================
[2026-06-13 22:22:55,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:22:55
[2026-06-13 22:22:56,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:22:56,376.376 INFO    ] Initializing speech engine...
[2026-06-13 22:22:56,400.400 INFO    ] 2026-06-13 22:22:56
[2026-06-13 22:22:56,680.680 INFO    ] 2026-06-13 22:22:56
[2026-06-13 22:22:56,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:22:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:22:56,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:22:57,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:22:57,049.049 INFO    ] time= 13/06/2026 22:22:57
[2026-06-13 22:22:57,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:22:57,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:22:57,173.173 INFO    ] No existing commands found in stream
[2026-06-13 22:23:02,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:23:02,183.183 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 22:23:05,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:23:05,564.564 INFO    ] Checking for system updates...
[2026-06-13 22:23:05,584.584 INFO    ] 200
[2026-06-13 22:23:05,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:05,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:05,620.620 INFO    ] No update needed
[2026-06-13 22:23:05,621.621 INFO    ] Checking for camera pi updates...
[2026-06-13 22:23:05,641.641 INFO    ] 200
[2026-06-13 22:23:05,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:05,666.666 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:23:05,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:23:05,714.714 INFO    ] No camera update needed
[2026-06-13 22:23:05,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:23:05,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:23:05,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:23:05,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:23:07,762.762 INFO    ] ================================================
[2026-06-13 22:23:07,779.779 INFO    ] Launching Daemon at Sat Jun 13 22:23:07 IST 2026
[2026-06-13 22:23:07,790.790 INFO    ] ================================================
[2026-06-13 22:23:08,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:23:08
[2026-06-13 22:23:08,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:23:08,615.615 INFO    ] Initializing speech engine...
[2026-06-13 22:23:08,623.623 INFO    ] 2026-06-13 22:23:08
[2026-06-13 22:23:08,840.840 INFO    ] 2026-06-13 22:23:08
[2026-06-13 22:23:08,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:23:09,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:23:09,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:23:09,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:23:09,253.253 INFO    ] time= 13/06/2026 22:23:09
[2026-06-13 22:23:09,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:23:09,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:23:09,388.388 INFO    ] No existing commands found in stream
[2026-06-13 22:23:14,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:23:14,401.401 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 22:23:17,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:23:17,670.670 INFO    ] Checking for system updates...
[2026-06-13 22:23:17,692.692 INFO    ] 200
[2026-06-13 22:23:17,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:17,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:17,728.728 INFO    ] No update needed
[2026-06-13 22:23:17,729.729 INFO    ] Checking for camera pi updates...
[2026-06-13 22:23:17,749.749 INFO    ] 200
[2026-06-13 22:23:17,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:17,775.775 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:23:17,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:17,814.814 INFO    ] No camera update needed
[2026-06-13 22:23:17,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:23:17,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:23:17,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:23:17,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:23:19,862.862 INFO    ] ================================================
[2026-06-13 22:23:19,877.877 INFO    ] Launching Daemon at Sat Jun 13 22:23:19 IST 2026
[2026-06-13 22:23:19,888.888 INFO    ] ================================================
[2026-06-13 22:23:20,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:23:20
[2026-06-13 22:23:20,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:23:20,665.665 INFO    ] Initializing speech engine...
[2026-06-13 22:23:20,674.674 INFO    ] 2026-06-13 22:23:20
[2026-06-13 22:23:20,896.896 INFO    ] 2026-06-13 22:23:20
[2026-06-13 22:23:20,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:23:21,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:23:21,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:23:21,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:23:21,322.322 INFO    ] time= 13/06/2026 22:23:21
[2026-06-13 22:23:21,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:23:21,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:23:21,447.447 INFO    ] No existing commands found in stream
[2026-06-13 22:23:26,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:23:26,461.461 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 22:23:28,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:23:28,756.756 INFO    ] Checking for system updates...
[2026-06-13 22:23:28,776.776 INFO    ] 200
[2026-06-13 22:23:28,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:28,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:28,812.812 INFO    ] No update needed
[2026-06-13 22:23:28,814.814 INFO    ] Checking for camera pi updates...
[2026-06-13 22:23:28,846.846 INFO    ] 200
[2026-06-13 22:23:28,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:28,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:23:28,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:28,913.913 INFO    ] No camera update needed
[2026-06-13 22:23:28,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:23:28,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:23:28,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:23:28,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:23:30,963.963 INFO    ] ================================================
[2026-06-13 22:23:30,978.978 INFO    ] Launching Daemon at Sat Jun 13 22:23:30 IST 2026
[2026-06-13 22:23:30,989.989 INFO    ] ================================================
[2026-06-13 22:23:31,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:23:31
[2026-06-13 22:23:31,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:23:31,866.866 INFO    ] Initializing speech engine...
[2026-06-13 22:23:31,872.872 INFO    ] 2026-06-13 22:23:31
[2026-06-13 22:23:32,103.103 INFO    ] 2026-06-13 22:23:32
[2026-06-13 22:23:32,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:23:32,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:23:32,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:23:32,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:23:32,529.529 INFO    ] time= 13/06/2026 22:23:32
[2026-06-13 22:23:32,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:23:32,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:23:32,635.635 INFO    ] No existing commands found in stream
[2026-06-13 22:23:37,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:23:37,653.653 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 22:23:41,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:23:41,630.630 INFO    ] Checking for system updates...
[2026-06-13 22:23:41,668.668 INFO    ] 200
[2026-06-13 22:23:41,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:41,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:41,722.722 INFO    ] No update needed
[2026-06-13 22:23:41,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 22:23:41,743.743 INFO    ] 200
[2026-06-13 22:23:41,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:41,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:23:41,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:23:41,806.806 INFO    ] No camera update needed
[2026-06-13 22:23:41,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:23:41,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:23:41,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:23:41,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:23:43,854.854 INFO    ] ================================================
[2026-06-13 22:23:43,870.870 INFO    ] Launching Daemon at Sat Jun 13 22:23:43 IST 2026
[2026-06-13 22:23:43,881.881 INFO    ] ================================================
[2026-06-13 22:23:44,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:23:44
[2026-06-13 22:23:44,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:23:44,679.679 INFO    ] Initializing speech engine...
[2026-06-13 22:23:44,683.683 INFO    ] 2026-06-13 22:23:44
[2026-06-13 22:23:44,885.885 INFO    ] 2026-06-13 22:23:44
[2026-06-13 22:23:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:23:45,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:23:45,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:23:45,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:23:45,278.278 INFO    ] time= 13/06/2026 22:23:45
[2026-06-13 22:23:45,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:23:45,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:23:45,396.396 INFO    ] No existing commands found in stream
[2026-06-13 22:23:50,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:23:50,410.410 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-13 22:23:51,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:23:51,607.607 INFO    ] Checking for system updates...
[2026-06-13 22:23:51,628.628 INFO    ] 200
[2026-06-13 22:23:51,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:51,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:23:51,662.662 INFO    ] No update needed
[2026-06-13 22:23:51,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 22:23:51,682.682 INFO    ] 200
[2026-06-13 22:23:51,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:23:51,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:23:51,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:23:51,850.850 INFO    ] No camera update needed
[2026-06-13 22:23:51,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:23:51,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:23:51,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:23:51,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:23:53,898.898 INFO    ] ================================================
[2026-06-13 22:23:53,914.914 INFO    ] Launching Daemon at Sat Jun 13 22:23:53 IST 2026
[2026-06-13 22:23:53,926.926 INFO    ] ================================================
[2026-06-13 22:23:54,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:23:54
[2026-06-13 22:23:54,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:23:54,774.774 INFO    ] Initializing speech engine...
[2026-06-13 22:23:54,779.779 INFO    ] 2026-06-13 22:23:54
[2026-06-13 22:23:54,993.993 INFO    ] 2026-06-13 22:23:54
[2026-06-13 22:23:55,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:23:55,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:23:55,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:23:55,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:23:55,384.384 INFO    ] time= 13/06/2026 22:23:55
[2026-06-13 22:23:55,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:23:55,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:23:55,516.516 INFO    ] No existing commands found in stream
[2026-06-13 22:24:00,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:00,530.530 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 22:24:03,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:24:03,368.368 INFO    ] Checking for system updates...
[2026-06-13 22:24:03,390.390 INFO    ] 200
[2026-06-13 22:24:03,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:03,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:24:03,429.429 INFO    ] No update needed
[2026-06-13 22:24:03,431.431 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:03,452.452 INFO    ] 200
[2026-06-13 22:24:03,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:03,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:03,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:24:03,515.515 INFO    ] No camera update needed
[2026-06-13 22:24:03,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:03,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:03,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:03,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:24:05,575.575 INFO    ] ================================================
[2026-06-13 22:24:05,590.590 INFO    ] Launching Daemon at Sat Jun 13 22:24:05 IST 2026
[2026-06-13 22:24:05,601.601 INFO    ] ================================================
[2026-06-13 22:24:05,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:24:05
[2026-06-13 22:24:06,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:24:06,453.453 INFO    ] Initializing speech engine...
[2026-06-13 22:24:06,459.459 INFO    ] 2026-06-13 22:24:06
[2026-06-13 22:24:06,667.667 INFO    ] 2026-06-13 22:24:06
[2026-06-13 22:24:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:24:06,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:24:06,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:24:07,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:24:07,084.084 INFO    ] time= 13/06/2026 22:24:07
[2026-06-13 22:24:07,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:24:07,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:24:07,184.184 INFO    ] No existing commands found in stream
[2026-06-13 22:24:12,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:12,202.202 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 22:24:15,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:24:15,546.546 INFO    ] Checking for system updates...
[2026-06-13 22:24:15,568.568 INFO    ] 200
[2026-06-13 22:24:15,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:15,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:15,602.602 INFO    ] No update needed
[2026-06-13 22:24:15,603.603 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:15,622.622 INFO    ] 200
[2026-06-13 22:24:15,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:15,649.649 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:15,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:15,690.690 INFO    ] No camera update needed
[2026-06-13 22:24:15,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:15,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:15,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:15,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:24:17,736.736 INFO    ] ================================================
[2026-06-13 22:24:17,751.751 INFO    ] Launching Daemon at Sat Jun 13 22:24:17 IST 2026
[2026-06-13 22:24:17,762.762 INFO    ] ================================================
[2026-06-13 22:24:18,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:24:18
[2026-06-13 22:24:18,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:24:18,557.557 INFO    ] Initializing speech engine...
[2026-06-13 22:24:18,563.563 INFO    ] 2026-06-13 22:24:18
[2026-06-13 22:24:18,758.758 INFO    ] 2026-06-13 22:24:18
[2026-06-13 22:24:18,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:24:18,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:24:19,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:24:19,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:24:19,208.208 INFO    ] time= 13/06/2026 22:24:19
[2026-06-13 22:24:19,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:24:19,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:24:19,351.351 INFO    ] No existing commands found in stream
[2026-06-13 22:24:24,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:24,365.365 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-13 22:24:25,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:24:25,337.337 INFO    ] Checking for system updates...
[2026-06-13 22:24:25,360.360 INFO    ] 200
[2026-06-13 22:24:25,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:25,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:25,395.395 INFO    ] No update needed
[2026-06-13 22:24:25,396.396 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:25,416.416 INFO    ] 200
[2026-06-13 22:24:25,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:25,441.441 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:25,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:25,473.473 INFO    ] No camera update needed
[2026-06-13 22:24:25,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:25,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:25,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:25,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:24:27,520.520 INFO    ] ================================================
[2026-06-13 22:24:27,535.535 INFO    ] Launching Daemon at Sat Jun 13 22:24:27 IST 2026
[2026-06-13 22:24:27,547.547 INFO    ] ================================================
[2026-06-13 22:24:27,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:24:27
[2026-06-13 22:24:28,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:24:28,357.357 INFO    ] Initializing speech engine...
[2026-06-13 22:24:28,361.361 INFO    ] 2026-06-13 22:24:28
[2026-06-13 22:24:28,590.590 INFO    ] 2026-06-13 22:24:28
[2026-06-13 22:24:28,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:24:28,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:24:28,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:24:28,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:24:29,029.029 INFO    ] time= 13/06/2026 22:24:28
[2026-06-13 22:24:29,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:24:29,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:24:29,144.144 INFO    ] No existing commands found in stream
[2026-06-13 22:24:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:34,153.153 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-13 22:24:34,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:24:34,725.725 INFO    ] Checking for system updates...
[2026-06-13 22:24:34,746.746 INFO    ] 200
[2026-06-13 22:24:34,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:34,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:34,782.782 INFO    ] No update needed
[2026-06-13 22:24:34,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:34,805.805 INFO    ] 200
[2026-06-13 22:24:34,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:34,830.830 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:34,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:34,869.869 INFO    ] No camera update needed
[2026-06-13 22:24:34,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:34,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:34,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:34,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:24:36,916.916 INFO    ] ================================================
[2026-06-13 22:24:36,931.931 INFO    ] Launching Daemon at Sat Jun 13 22:24:36 IST 2026
[2026-06-13 22:24:36,942.942 INFO    ] ================================================
[2026-06-13 22:24:37,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:24:37
[2026-06-13 22:24:37,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:24:37,776.776 INFO    ] Initializing speech engine...
[2026-06-13 22:24:37,781.781 INFO    ] 2026-06-13 22:24:37
[2026-06-13 22:24:37,985.985 INFO    ] 2026-06-13 22:24:37
[2026-06-13 22:24:38,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:24:38,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:24:38,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:24:38,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:24:38,379.379 INFO    ] time= 13/06/2026 22:24:38
[2026-06-13 22:24:38,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:24:38,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:24:38,497.497 INFO    ] No existing commands found in stream
[2026-06-13 22:24:43,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:43,511.511 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 22:24:46,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:24:46,252.252 INFO    ] Checking for system updates...
[2026-06-13 22:24:46,273.273 INFO    ] 200
[2026-06-13 22:24:46,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:46,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:46,310.310 INFO    ] No update needed
[2026-06-13 22:24:46,312.312 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:46,332.332 INFO    ] 200
[2026-06-13 22:24:46,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:46,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:46,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:46,397.397 INFO    ] No camera update needed
[2026-06-13 22:24:46,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:46,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:46,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:46,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:24:48,447.447 INFO    ] ================================================
[2026-06-13 22:24:48,463.463 INFO    ] Launching Daemon at Sat Jun 13 22:24:48 IST 2026
[2026-06-13 22:24:48,474.474 INFO    ] ================================================
[2026-06-13 22:24:48,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:24:48
[2026-06-13 22:24:49,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:24:49,306.306 INFO    ] Initializing speech engine...
[2026-06-13 22:24:49,312.312 INFO    ] 2026-06-13 22:24:49
[2026-06-13 22:24:49,516.516 INFO    ] 2026-06-13 22:24:49
[2026-06-13 22:24:49,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:24:49,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:24:49,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:24:49,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:24:49,919.919 INFO    ] time= 13/06/2026 22:24:49
[2026-06-13 22:24:49,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:24:49,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:24:50,028.028 INFO    ] No existing commands found in stream
[2026-06-13 22:24:55,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:24:55,045.045 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 22:24:59,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:24:59,115.115 INFO    ] Checking for system updates...
[2026-06-13 22:24:59,136.136 INFO    ] 200
[2026-06-13 22:24:59,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:59,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:59,170.170 INFO    ] No update needed
[2026-06-13 22:24:59,171.171 INFO    ] Checking for camera pi updates...
[2026-06-13 22:24:59,191.191 INFO    ] 200
[2026-06-13 22:24:59,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:24:59,216.216 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:24:59,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:24:59,255.255 INFO    ] No camera update needed
[2026-06-13 22:24:59,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:24:59,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:24:59,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:24:59,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:01,327.327 INFO    ] ================================================
[2026-06-13 22:25:01,365.365 INFO    ] Launching Daemon at Sat Jun 13 22:25:01 IST 2026
[2026-06-13 22:25:01,377.377 INFO    ] ================================================
[2026-06-13 22:25:01,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:01
[2026-06-13 22:25:02,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:02,388.388 INFO    ] Initializing speech engine...
[2026-06-13 22:25:02,391.391 INFO    ] 2026-06-13 22:25:02
[2026-06-13 22:25:02,595.595 INFO    ] 2026-06-13 22:25:02
[2026-06-13 22:25:02,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:02,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:02,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:02,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:02,850.850 INFO    ] time= 13/06/2026 22:25:02
[2026-06-13 22:25:02,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:02,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:03,032.032 INFO    ] No existing commands found in stream
[2026-06-13 22:25:08,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:25:08,061.061 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 22:25:08,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:25:08,545.545 INFO    ] Checking for system updates...
[2026-06-13 22:25:08,566.566 INFO    ] 200
[2026-06-13 22:25:08,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:08,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:08,599.599 INFO    ] No update needed
[2026-06-13 22:25:08,600.600 INFO    ] Checking for camera pi updates...
[2026-06-13 22:25:08,621.621 INFO    ] 200
[2026-06-13 22:25:08,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:08,647.647 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:25:08,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:08,693.693 INFO    ] No camera update needed
[2026-06-13 22:25:08,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:25:08,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:25:08,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:25:08,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:10,741.741 INFO    ] ================================================
[2026-06-13 22:25:10,756.756 INFO    ] Launching Daemon at Sat Jun 13 22:25:10 IST 2026
[2026-06-13 22:25:10,769.769 INFO    ] ================================================
[2026-06-13 22:25:11,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:11
[2026-06-13 22:25:11,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:11,576.576 INFO    ] Initializing speech engine...
[2026-06-13 22:25:11,581.581 INFO    ] 2026-06-13 22:25:11
[2026-06-13 22:25:11,785.785 INFO    ] 2026-06-13 22:25:11
[2026-06-13 22:25:11,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:11,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:12,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:12,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:12,202.202 INFO    ] time= 13/06/2026 22:25:12
[2026-06-13 22:25:12,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:12,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:12,298.298 INFO    ] No existing commands found in stream
[2026-06-13 22:25:17,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:25:17,310.310 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 22:25:21,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:25:21,512.512 INFO    ] Checking for system updates...
[2026-06-13 22:25:21,535.535 INFO    ] 200
[2026-06-13 22:25:21,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:21,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:25:21,571.571 INFO    ] No update needed
[2026-06-13 22:25:21,572.572 INFO    ] Checking for camera pi updates...
[2026-06-13 22:25:21,595.595 INFO    ] 200
[2026-06-13 22:25:21,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:21,620.620 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:25:21,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:25:21,658.658 INFO    ] No camera update needed
[2026-06-13 22:25:21,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:25:21,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:25:21,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:25:21,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:23,699.699 INFO    ] ================================================
[2026-06-13 22:25:23,707.707 INFO    ] Launching Daemon at Sat Jun 13 22:25:23 IST 2026
[2026-06-13 22:25:23,713.713 INFO    ] ================================================
[2026-06-13 22:25:24,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:24
[2026-06-13 22:25:24,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:24,476.476 INFO    ] Initializing speech engine...
[2026-06-13 22:25:24,481.481 INFO    ] 2026-06-13 22:25:24
[2026-06-13 22:25:24,684.684 INFO    ] 2026-06-13 22:25:24
[2026-06-13 22:25:24,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:24,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:24,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:25,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:25,082.082 INFO    ] time= 13/06/2026 22:25:25
[2026-06-13 22:25:25,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:25,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:25,199.199 INFO    ] No existing commands found in stream
[2026-06-13 22:25:30,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:25:30,212.212 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 22:25:32,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:25:32,982.982 INFO    ] Checking for system updates...
[2026-06-13 22:25:33,003.003 INFO    ] 200
[2026-06-13 22:25:33,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:33,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:33,036.036 INFO    ] No update needed
[2026-06-13 22:25:33,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 22:25:33,060.060 INFO    ] 200
[2026-06-13 22:25:33,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:33,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:25:33,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:25:33,135.135 INFO    ] No camera update needed
[2026-06-13 22:25:33,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:25:33,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:25:33,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:25:33,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:35,184.184 INFO    ] ================================================
[2026-06-13 22:25:35,199.199 INFO    ] Launching Daemon at Sat Jun 13 22:25:35 IST 2026
[2026-06-13 22:25:35,210.210 INFO    ] ================================================
[2026-06-13 22:25:35,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:35
[2026-06-13 22:25:35,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:36,008.008 INFO    ] Initializing speech engine...
[2026-06-13 22:25:36,013.013 INFO    ] 2026-06-13 22:25:36
[2026-06-13 22:25:36,223.223 INFO    ] 2026-06-13 22:25:36
[2026-06-13 22:25:36,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:36,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:36,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:36,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:36,632.632 INFO    ] time= 13/06/2026 22:25:36
[2026-06-13 22:25:36,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:36,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:36,744.744 INFO    ] No existing commands found in stream
[2026-06-13 22:25:41,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:25:41,757.757 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 22:25:42,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:25:42,472.472 INFO    ] Checking for system updates...
[2026-06-13 22:25:42,493.493 INFO    ] 200
[2026-06-13 22:25:42,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:42,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:42,529.529 INFO    ] No update needed
[2026-06-13 22:25:42,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 22:25:42,552.552 INFO    ] 200
[2026-06-13 22:25:42,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:42,580.580 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:25:42,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:25:42,615.615 INFO    ] No camera update needed
[2026-06-13 22:25:42,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:25:42,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:25:42,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:25:42,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:44,666.666 INFO    ] ================================================
[2026-06-13 22:25:44,681.681 INFO    ] Launching Daemon at Sat Jun 13 22:25:44 IST 2026
[2026-06-13 22:25:44,692.692 INFO    ] ================================================
[2026-06-13 22:25:45,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:45
[2026-06-13 22:25:45,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:45,495.495 INFO    ] Initializing speech engine...
[2026-06-13 22:25:45,500.500 INFO    ] 2026-06-13 22:25:45
[2026-06-13 22:25:45,704.704 INFO    ] 2026-06-13 22:25:45
[2026-06-13 22:25:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:45,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:45,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:46,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:46,107.107 INFO    ] time= 13/06/2026 22:25:46
[2026-06-13 22:25:46,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:46,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:46,217.217 INFO    ] No existing commands found in stream
[2026-06-13 22:25:51,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:25:51,229.229 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 22:25:55,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:25:55,002.002 INFO    ] Checking for system updates...
[2026-06-13 22:25:55,023.023 INFO    ] 200
[2026-06-13 22:25:55,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:55,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:55,056.056 INFO    ] No update needed
[2026-06-13 22:25:55,058.058 INFO    ] Checking for camera pi updates...
[2026-06-13 22:25:55,080.080 INFO    ] 200
[2026-06-13 22:25:55,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:25:55,104.104 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:25:55,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:25:55,245.245 INFO    ] No camera update needed
[2026-06-13 22:25:55,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:25:55,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:25:55,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:25:55,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:25:57,291.291 INFO    ] ================================================
[2026-06-13 22:25:57,307.307 INFO    ] Launching Daemon at Sat Jun 13 22:25:57 IST 2026
[2026-06-13 22:25:57,318.318 INFO    ] ================================================
[2026-06-13 22:25:57,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:25:57
[2026-06-13 22:25:57,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:25:58,119.119 INFO    ] Initializing speech engine...
[2026-06-13 22:25:58,123.123 INFO    ] 2026-06-13 22:25:58
[2026-06-13 22:25:58,328.328 INFO    ] 2026-06-13 22:25:58
[2026-06-13 22:25:58,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:25:58,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:25:58,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:25:58,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:25:58,727.727 INFO    ] time= 13/06/2026 22:25:58
[2026-06-13 22:25:58,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:25:58,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:25:58,842.842 INFO    ] No existing commands found in stream
[2026-06-13 22:26:03,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:03,854.854 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-13 22:26:04,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:26:04,554.554 INFO    ] Checking for system updates...
[2026-06-13 22:26:04,590.590 INFO    ] 200
[2026-06-13 22:26:04,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:04,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:26:04,648.648 INFO    ] No update needed
[2026-06-13 22:26:04,651.651 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:04,686.686 INFO    ] 200
[2026-06-13 22:26:04,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:04,729.729 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:04,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:26:04,771.771 INFO    ] No camera update needed
[2026-06-13 22:26:04,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:04,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:04,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:04,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:06,829.829 INFO    ] ================================================
[2026-06-13 22:26:06,845.845 INFO    ] Launching Daemon at Sat Jun 13 22:26:06 IST 2026
[2026-06-13 22:26:06,856.856 INFO    ] ================================================
[2026-06-13 22:26:07,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:07
[2026-06-13 22:26:07,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:07,672.672 INFO    ] Initializing speech engine...
[2026-06-13 22:26:07,681.681 INFO    ] 2026-06-13 22:26:07
[2026-06-13 22:26:07,890.890 INFO    ] 2026-06-13 22:26:07
[2026-06-13 22:26:07,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:26:08,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:26:08,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:26:08,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:26:08,302.302 INFO    ] time= 13/06/2026 22:26:08
[2026-06-13 22:26:08,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:26:08,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:26:08,408.408 INFO    ] No existing commands found in stream
[2026-06-13 22:26:13,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:13,421.421 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 22:26:15,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:26:15,511.511 INFO    ] Checking for system updates...
[2026-06-13 22:26:15,531.531 INFO    ] 200
[2026-06-13 22:26:15,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:15,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:15,567.567 INFO    ] No update needed
[2026-06-13 22:26:15,568.568 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:15,588.588 INFO    ] 200
[2026-06-13 22:26:15,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:15,612.612 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:15,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:15,655.655 INFO    ] No camera update needed
[2026-06-13 22:26:15,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:15,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:15,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:15,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:17,704.704 INFO    ] ================================================
[2026-06-13 22:26:17,720.720 INFO    ] Launching Daemon at Sat Jun 13 22:26:17 IST 2026
[2026-06-13 22:26:17,730.730 INFO    ] ================================================
[2026-06-13 22:26:18,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:18
[2026-06-13 22:26:18,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:18,555.555 INFO    ] Initializing speech engine...
[2026-06-13 22:26:18,560.560 INFO    ] 2026-06-13 22:26:18
[2026-06-13 22:26:18,767.767 INFO    ] 2026-06-13 22:26:18
[2026-06-13 22:26:18,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:26:18,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:26:18,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:26:19,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:26:19,171.171 INFO    ] time= 13/06/2026 22:26:19
[2026-06-13 22:26:19,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:26:19,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:26:19,281.281 INFO    ] No existing commands found in stream
[2026-06-13 22:26:24,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:24,293.293 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 22:26:27,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:26:27,305.305 INFO    ] Checking for system updates...
[2026-06-13 22:26:27,326.326 INFO    ] 200
[2026-06-13 22:26:27,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:27,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:27,359.359 INFO    ] No update needed
[2026-06-13 22:26:27,360.360 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:27,380.380 INFO    ] 200
[2026-06-13 22:26:27,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:27,404.404 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:27,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:27,456.456 INFO    ] No camera update needed
[2026-06-13 22:26:27,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:27,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:27,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:27,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:29,507.507 INFO    ] ================================================
[2026-06-13 22:26:29,522.522 INFO    ] Launching Daemon at Sat Jun 13 22:26:29 IST 2026
[2026-06-13 22:26:29,533.533 INFO    ] ================================================
[2026-06-13 22:26:30,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:30
[2026-06-13 22:26:30,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:30,866.866 INFO    ] Initializing speech engine...
[2026-06-13 22:26:30,891.891 INFO    ] 2026-06-13 22:26:30
[2026-06-13 22:26:31,166.166 INFO    ] 2026-06-13 22:26:31
[2026-06-13 22:26:31,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:26:31,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:26:31,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:26:31,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:26:31,556.556 INFO    ] time= 13/06/2026 22:26:31
[2026-06-13 22:26:31,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:26:31,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:26:31,667.667 INFO    ] No existing commands found in stream
[2026-06-13 22:26:36,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:36,696.696 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 22:26:38,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:26:38,209.209 INFO    ] Checking for system updates...
[2026-06-13 22:26:38,230.230 INFO    ] 200
[2026-06-13 22:26:38,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:38,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:38,263.263 INFO    ] No update needed
[2026-06-13 22:26:38,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:38,285.285 INFO    ] 200
[2026-06-13 22:26:38,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:38,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:38,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:38,348.348 INFO    ] No camera update needed
[2026-06-13 22:26:38,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:38,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:38,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:38,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:40,397.397 INFO    ] ================================================
[2026-06-13 22:26:40,412.412 INFO    ] Launching Daemon at Sat Jun 13 22:26:40 IST 2026
[2026-06-13 22:26:40,424.424 INFO    ] ================================================
[2026-06-13 22:26:40,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:40
[2026-06-13 22:26:41,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:41,216.216 INFO    ] Initializing speech engine...
[2026-06-13 22:26:41,220.220 INFO    ] 2026-06-13 22:26:41
[2026-06-13 22:26:41,427.427 INFO    ] 2026-06-13 22:26:41
[2026-06-13 22:26:41,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:26:41,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:26:41,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:26:41,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:26:41,831.831 INFO    ] time= 13/06/2026 22:26:41
[2026-06-13 22:26:41,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:26:41,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:26:41,948.948 INFO    ] No existing commands found in stream
[2026-06-13 22:26:46,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:46,960.960 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-13 22:26:47,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:26:47,328.328 INFO    ] Checking for system updates...
[2026-06-13 22:26:47,350.350 INFO    ] 200
[2026-06-13 22:26:47,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:47,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:47,384.384 INFO    ] No update needed
[2026-06-13 22:26:47,385.385 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:47,406.406 INFO    ] 200
[2026-06-13 22:26:47,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:47,430.430 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:47,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:26:47,469.469 INFO    ] No camera update needed
[2026-06-13 22:26:47,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:47,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:47,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:47,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:49,516.516 INFO    ] ================================================
[2026-06-13 22:26:49,531.531 INFO    ] Launching Daemon at Sat Jun 13 22:26:49 IST 2026
[2026-06-13 22:26:49,542.542 INFO    ] ================================================
[2026-06-13 22:26:49,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:49
[2026-06-13 22:26:50,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:50,371.371 INFO    ] Initializing speech engine...
[2026-06-13 22:26:50,381.381 INFO    ] 2026-06-13 22:26:50
[2026-06-13 22:26:50,588.588 INFO    ] 2026-06-13 22:26:50
[2026-06-13 22:26:50,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:26:50,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:26:50,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:26:50,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:26:50,989.989 INFO    ] time= 13/06/2026 22:26:50
[2026-06-13 22:26:51,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:26:51,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:26:51,105.105 INFO    ] No existing commands found in stream
[2026-06-13 22:26:56,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:26:56,117.117 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 22:26:56,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:26:56,727.727 INFO    ] Checking for system updates...
[2026-06-13 22:26:56,747.747 INFO    ] 200
[2026-06-13 22:26:56,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:56,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:26:56,782.782 INFO    ] No update needed
[2026-06-13 22:26:56,783.783 INFO    ] Checking for camera pi updates...
[2026-06-13 22:26:56,805.805 INFO    ] 200
[2026-06-13 22:26:56,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:26:56,832.832 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:26:56,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:26:56,874.874 INFO    ] No camera update needed
[2026-06-13 22:26:56,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:26:56,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:26:56,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:26:56,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:26:58,922.922 INFO    ] ================================================
[2026-06-13 22:26:58,939.939 INFO    ] Launching Daemon at Sat Jun 13 22:26:58 IST 2026
[2026-06-13 22:26:58,950.950 INFO    ] ================================================
[2026-06-13 22:26:59,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:26:59
[2026-06-13 22:26:59,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:26:59,740.740 INFO    ] Initializing speech engine...
[2026-06-13 22:26:59,745.745 INFO    ] 2026-06-13 22:26:59
[2026-06-13 22:26:59,950.950 INFO    ] 2026-06-13 22:26:59
[2026-06-13 22:26:59,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:00,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:00,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:00,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:00,354.354 INFO    ] time= 13/06/2026 22:27:00
[2026-06-13 22:27:00,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:00,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:00,463.463 INFO    ] No existing commands found in stream
[2026-06-13 22:27:05,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:27:05,475.475 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 22:27:09,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:27:09,197.197 INFO    ] Checking for system updates...
[2026-06-13 22:27:09,218.218 INFO    ] 200
[2026-06-13 22:27:09,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:09,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:09,254.254 INFO    ] No update needed
[2026-06-13 22:27:09,255.255 INFO    ] Checking for camera pi updates...
[2026-06-13 22:27:09,275.275 INFO    ] 200
[2026-06-13 22:27:09,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:09,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:27:09,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:09,342.342 INFO    ] No camera update needed
[2026-06-13 22:27:09,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:27:09,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:27:09,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:27:09,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:27:11,389.389 INFO    ] ================================================
[2026-06-13 22:27:11,404.404 INFO    ] Launching Daemon at Sat Jun 13 22:27:11 IST 2026
[2026-06-13 22:27:11,416.416 INFO    ] ================================================
[2026-06-13 22:27:11,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:27:11
[2026-06-13 22:27:12,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:27:12,190.190 INFO    ] Initializing speech engine...
[2026-06-13 22:27:12,198.198 INFO    ] 2026-06-13 22:27:12
[2026-06-13 22:27:12,412.412 INFO    ] 2026-06-13 22:27:12
[2026-06-13 22:27:12,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:12,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:12,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:12,828.828 INFO    ] time= 13/06/2026 22:27:12
[2026-06-13 22:27:12,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:12,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:12,935.935 INFO    ] No existing commands found in stream
[2026-06-13 22:27:17,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:27:17,948.948 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-13 22:27:19,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:27:19,678.678 INFO    ] Checking for system updates...
[2026-06-13 22:27:19,699.699 INFO    ] 200
[2026-06-13 22:27:19,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:19,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:19,735.735 INFO    ] No update needed
[2026-06-13 22:27:19,737.737 INFO    ] Checking for camera pi updates...
[2026-06-13 22:27:19,762.762 INFO    ] 200
[2026-06-13 22:27:19,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:19,805.805 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:27:19,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:19,855.855 INFO    ] No camera update needed
[2026-06-13 22:27:19,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:27:19,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:27:19,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:27:19,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:27:21,912.912 INFO    ] ================================================
[2026-06-13 22:27:21,928.928 INFO    ] Launching Daemon at Sat Jun 13 22:27:21 IST 2026
[2026-06-13 22:27:21,939.939 INFO    ] ================================================
[2026-06-13 22:27:22,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:27:22
[2026-06-13 22:27:23,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:27:23,220.220 INFO    ] Initializing speech engine...
[2026-06-13 22:27:23,229.229 INFO    ] 2026-06-13 22:27:23
[2026-06-13 22:27:23,432.432 INFO    ] 2026-06-13 22:27:23
[2026-06-13 22:27:23,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:23,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:23,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:23,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:23,848.848 INFO    ] time= 13/06/2026 22:27:23
[2026-06-13 22:27:23,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:23,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:23,943.943 INFO    ] No existing commands found in stream
[2026-06-13 22:27:28,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:27:28,956.956 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 22:27:31,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:27:31,932.932 INFO    ] Checking for system updates...
[2026-06-13 22:27:31,956.956 INFO    ] 200
[2026-06-13 22:27:31,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:31,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:27:31,993.993 INFO    ] No update needed
[2026-06-13 22:27:31,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 22:27:32,019.019 INFO    ] 200
[2026-06-13 22:27:32,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:32,047.047 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:27:32,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:27:32,073.073 INFO    ] No camera update needed
[2026-06-13 22:27:32,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:27:32,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:27:32,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:27:32,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:27:34,126.126 INFO    ] ================================================
[2026-06-13 22:27:34,141.141 INFO    ] Launching Daemon at Sat Jun 13 22:27:34 IST 2026
[2026-06-13 22:27:34,152.152 INFO    ] ================================================
[2026-06-13 22:27:34,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:27:34
[2026-06-13 22:27:34,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:27:34,931.931 INFO    ] Initializing speech engine...
[2026-06-13 22:27:34,940.940 INFO    ] 2026-06-13 22:27:34
[2026-06-13 22:27:35,146.146 INFO    ] 2026-06-13 22:27:35
[2026-06-13 22:27:35,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:35,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:35,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:35,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:35,545.545 INFO    ] time= 13/06/2026 22:27:35
[2026-06-13 22:27:35,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:35,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:35,660.660 INFO    ] No existing commands found in stream
[2026-06-13 22:27:40,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:27:40,677.677 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 22:27:43,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:27:43,830.830 INFO    ] Checking for system updates...
[2026-06-13 22:27:43,851.851 INFO    ] 200
[2026-06-13 22:27:43,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:43,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:43,886.886 INFO    ] No update needed
[2026-06-13 22:27:43,887.887 INFO    ] Checking for camera pi updates...
[2026-06-13 22:27:43,908.908 INFO    ] 200
[2026-06-13 22:27:43,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:43,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:27:43,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:43,988.988 INFO    ] No camera update needed
[2026-06-13 22:27:43,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:27:43,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:27:43,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:27:43,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:27:46,035.035 INFO    ] ================================================
[2026-06-13 22:27:46,050.050 INFO    ] Launching Daemon at Sat Jun 13 22:27:46 IST 2026
[2026-06-13 22:27:46,061.061 INFO    ] ================================================
[2026-06-13 22:27:46,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:27:46
[2026-06-13 22:27:46,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:27:46,917.917 INFO    ] Initializing speech engine...
[2026-06-13 22:27:46,922.922 INFO    ] 2026-06-13 22:27:46
[2026-06-13 22:27:47,131.131 INFO    ] 2026-06-13 22:27:47
[2026-06-13 22:27:47,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:47,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:47,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:47,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:47,548.548 INFO    ] time= 13/06/2026 22:27:47
[2026-06-13 22:27:47,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:47,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:47,645.645 INFO    ] No existing commands found in stream
[2026-06-13 22:27:52,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:27:52,663.663 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-13 22:27:53,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:27:53,844.844 INFO    ] Checking for system updates...
[2026-06-13 22:27:53,867.867 INFO    ] 200
[2026-06-13 22:27:53,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:53,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:53,900.900 INFO    ] No update needed
[2026-06-13 22:27:53,902.902 INFO    ] Checking for camera pi updates...
[2026-06-13 22:27:53,923.923 INFO    ] 200
[2026-06-13 22:27:53,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:27:53,948.948 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:27:53,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:27:53,986.986 INFO    ] No camera update needed
[2026-06-13 22:27:53,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:27:53,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:27:53,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:27:53,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:27:56,033.033 INFO    ] ================================================
[2026-06-13 22:27:56,049.049 INFO    ] Launching Daemon at Sat Jun 13 22:27:56 IST 2026
[2026-06-13 22:27:56,059.059 INFO    ] ================================================
[2026-06-13 22:27:56,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:27:56
[2026-06-13 22:27:56,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:27:56,919.919 INFO    ] Initializing speech engine...
[2026-06-13 22:27:56,924.924 INFO    ] 2026-06-13 22:27:56
[2026-06-13 22:27:57,126.126 INFO    ] 2026-06-13 22:27:57
[2026-06-13 22:27:57,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:27:57,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:27:57,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:27:57,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:27:57,531.531 INFO    ] time= 13/06/2026 22:27:57
[2026-06-13 22:27:57,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:27:57,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:27:57,641.641 INFO    ] No existing commands found in stream
[2026-06-13 22:28:02,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:28:02,651.651 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-13 22:28:04,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:28:04,408.408 INFO    ] Checking for system updates...
[2026-06-13 22:28:04,429.429 INFO    ] 200
[2026-06-13 22:28:04,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:04,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:04,465.465 INFO    ] No update needed
[2026-06-13 22:28:04,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 22:28:04,485.485 INFO    ] 200
[2026-06-13 22:28:04,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:04,513.513 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:28:04,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:04,552.552 INFO    ] No camera update needed
[2026-06-13 22:28:04,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:28:04,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:28:04,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:28:04,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:28:06,600.600 INFO    ] ================================================
[2026-06-13 22:28:06,615.615 INFO    ] Launching Daemon at Sat Jun 13 22:28:06 IST 2026
[2026-06-13 22:28:06,626.626 INFO    ] ================================================
[2026-06-13 22:28:06,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:28:06
[2026-06-13 22:28:07,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:28:07,428.428 INFO    ] Initializing speech engine...
[2026-06-13 22:28:07,433.433 INFO    ] 2026-06-13 22:28:07
[2026-06-13 22:28:07,639.639 INFO    ] 2026-06-13 22:28:07
[2026-06-13 22:28:07,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:28:07,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:28:07,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:28:07,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:28:08,052.052 INFO    ] time= 13/06/2026 22:28:07
[2026-06-13 22:28:08,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:28:08,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:28:08,162.162 INFO    ] No existing commands found in stream
[2026-06-13 22:28:13,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:28:13,176.176 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 22:28:15,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:28:15,218.218 INFO    ] Checking for system updates...
[2026-06-13 22:28:15,258.258 INFO    ] 200
[2026-06-13 22:28:15,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:15,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:15,307.307 INFO    ] No update needed
[2026-06-13 22:28:15,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 22:28:15,328.328 INFO    ] 200
[2026-06-13 22:28:15,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:15,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:28:15,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:28:15,395.395 INFO    ] No camera update needed
[2026-06-13 22:28:15,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:28:15,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:28:15,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:28:15,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:28:17,442.442 INFO    ] ================================================
[2026-06-13 22:28:17,456.456 INFO    ] Launching Daemon at Sat Jun 13 22:28:17 IST 2026
[2026-06-13 22:28:17,467.467 INFO    ] ================================================
[2026-06-13 22:28:17,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:28:17
[2026-06-13 22:28:18,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:28:18,285.285 INFO    ] Initializing speech engine...
[2026-06-13 22:28:18,291.291 INFO    ] 2026-06-13 22:28:18
[2026-06-13 22:28:18,494.494 INFO    ] 2026-06-13 22:28:18
[2026-06-13 22:28:18,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:28:18,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:28:18,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:28:18,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:28:18,888.888 INFO    ] time= 13/06/2026 22:28:18
[2026-06-13 22:28:18,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:28:18,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:28:19,008.008 INFO    ] No existing commands found in stream
[2026-06-13 22:28:24,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:28:24,022.022 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-13 22:28:27,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:28:27,823.823 INFO    ] Checking for system updates...
[2026-06-13 22:28:27,845.845 INFO    ] 200
[2026-06-13 22:28:27,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:27,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:27,880.880 INFO    ] No update needed
[2026-06-13 22:28:27,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 22:28:27,902.902 INFO    ] 200
[2026-06-13 22:28:27,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:27,927.927 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:28:27,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:27,968.968 INFO    ] No camera update needed
[2026-06-13 22:28:27,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:28:27,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:28:27,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:28:27,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:28:30,014.014 INFO    ] ================================================
[2026-06-13 22:28:30,029.029 INFO    ] Launching Daemon at Sat Jun 13 22:28:30 IST 2026
[2026-06-13 22:28:30,040.040 INFO    ] ================================================
[2026-06-13 22:28:30,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:28:30
[2026-06-13 22:28:30,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:28:30,878.878 INFO    ] Initializing speech engine...
[2026-06-13 22:28:30,892.892 INFO    ] 2026-06-13 22:28:30
[2026-06-13 22:28:31,101.101 INFO    ] 2026-06-13 22:28:31
[2026-06-13 22:28:31,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:28:31,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:28:31,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:28:31,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:28:31,513.513 INFO    ] time= 13/06/2026 22:28:31
[2026-06-13 22:28:31,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:28:31,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:28:31,618.618 INFO    ] No existing commands found in stream
[2026-06-13 22:28:36,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:28:36,631.631 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 22:28:40,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:28:40,129.129 INFO    ] Checking for system updates...
[2026-06-13 22:28:40,150.150 INFO    ] 200
[2026-06-13 22:28:40,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:40,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:28:40,184.184 INFO    ] No update needed
[2026-06-13 22:28:40,185.185 INFO    ] Checking for camera pi updates...
[2026-06-13 22:28:40,207.207 INFO    ] 200
[2026-06-13 22:28:40,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:40,235.235 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:28:40,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:28:40,275.275 INFO    ] No camera update needed
[2026-06-13 22:28:40,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:28:40,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:28:40,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:28:40,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:28:42,323.323 INFO    ] ================================================
[2026-06-13 22:28:42,338.338 INFO    ] Launching Daemon at Sat Jun 13 22:28:42 IST 2026
[2026-06-13 22:28:42,349.349 INFO    ] ================================================
[2026-06-13 22:28:42,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:28:42
[2026-06-13 22:28:43,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:28:43,229.229 INFO    ] Initializing speech engine...
[2026-06-13 22:28:43,233.233 INFO    ] 2026-06-13 22:28:43
[2026-06-13 22:28:43,444.444 INFO    ] 2026-06-13 22:28:43
[2026-06-13 22:28:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:28:43,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:28:43,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:28:43,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:28:43,855.855 INFO    ] time= 13/06/2026 22:28:43
[2026-06-13 22:28:43,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:28:43,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:28:44,012.012 INFO    ] No existing commands found in stream
[2026-06-13 22:28:49,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:28:49,028.028 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 22:28:52,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:28:52,051.051 INFO    ] Checking for system updates...
[2026-06-13 22:28:52,072.072 INFO    ] 200
[2026-06-13 22:28:52,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:52,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:52,108.108 INFO    ] No update needed
[2026-06-13 22:28:52,110.110 INFO    ] Checking for camera pi updates...
[2026-06-13 22:28:52,130.130 INFO    ] 200
[2026-06-13 22:28:52,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:28:52,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:28:52,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:28:52,194.194 INFO    ] No camera update needed
[2026-06-13 22:28:52,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:28:52,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:28:52,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:28:52,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:28:54,240.240 INFO    ] ================================================
[2026-06-13 22:28:54,255.255 INFO    ] Launching Daemon at Sat Jun 13 22:28:54 IST 2026
[2026-06-13 22:28:54,266.266 INFO    ] ================================================
[2026-06-13 22:28:54,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:28:54
[2026-06-13 22:28:54,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:28:55,075.075 INFO    ] Initializing speech engine...
[2026-06-13 22:28:55,079.079 INFO    ] 2026-06-13 22:28:55
[2026-06-13 22:28:55,271.271 INFO    ] 2026-06-13 22:28:55
[2026-06-13 22:28:55,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:28:55,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:28:55,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:28:55,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:28:55,697.697 INFO    ] time= 13/06/2026 22:28:55
[2026-06-13 22:28:55,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:28:55,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:28:55,879.879 INFO    ] No existing commands found in stream
[2026-06-13 22:29:00,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:29:00,893.893 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 22:29:03,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:29:03,756.756 INFO    ] Checking for system updates...
[2026-06-13 22:29:03,779.779 INFO    ] 200
[2026-06-13 22:29:03,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:03,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:03,815.815 INFO    ] No update needed
[2026-06-13 22:29:03,816.816 INFO    ] Checking for camera pi updates...
[2026-06-13 22:29:03,835.835 INFO    ] 200
[2026-06-13 22:29:03,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:03,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:29:03,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:03,902.902 INFO    ] No camera update needed
[2026-06-13 22:29:03,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:29:03,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:29:03,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:29:03,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:29:05,951.951 INFO    ] ================================================
[2026-06-13 22:29:05,970.970 INFO    ] Launching Daemon at Sat Jun 13 22:29:05 IST 2026
[2026-06-13 22:29:05,982.982 INFO    ] ================================================
[2026-06-13 22:29:06,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:29:06
[2026-06-13 22:29:06,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:29:06,805.805 INFO    ] Initializing speech engine...
[2026-06-13 22:29:06,811.811 INFO    ] 2026-06-13 22:29:06
[2026-06-13 22:29:07,005.005 INFO    ] 2026-06-13 22:29:07
[2026-06-13 22:29:07,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:29:07,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:29:07,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:29:07,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:29:07,440.440 INFO    ] time= 13/06/2026 22:29:07
[2026-06-13 22:29:07,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:29:07,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:29:07,567.567 INFO    ] No existing commands found in stream
[2026-06-13 22:29:12,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:29:12,580.580 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 22:29:14,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:29:14,945.945 INFO    ] Checking for system updates...
[2026-06-13 22:29:14,967.967 INFO    ] 200
[2026-06-13 22:29:14,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:15,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:15,003.003 INFO    ] No update needed
[2026-06-13 22:29:15,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 22:29:15,024.024 INFO    ] 200
[2026-06-13 22:29:15,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:15,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:29:15,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:15,092.092 INFO    ] No camera update needed
[2026-06-13 22:29:15,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:29:15,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:29:15,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:29:15,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:29:17,139.139 INFO    ] ================================================
[2026-06-13 22:29:17,154.154 INFO    ] Launching Daemon at Sat Jun 13 22:29:17 IST 2026
[2026-06-13 22:29:17,165.165 INFO    ] ================================================
[2026-06-13 22:29:17,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:29:17
[2026-06-13 22:29:18,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:29:18,336.336 INFO    ] Initializing speech engine...
[2026-06-13 22:29:18,341.341 INFO    ] 2026-06-13 22:29:18
[2026-06-13 22:29:18,643.643 INFO    ] 2026-06-13 22:29:18
[2026-06-13 22:29:18,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:29:18,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:29:18,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:29:19,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:29:19,009.009 INFO    ] time= 13/06/2026 22:29:19
[2026-06-13 22:29:19,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:29:19,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:29:19,090.090 INFO    ] No existing commands found in stream
[2026-06-13 22:29:24,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:29:24,103.103 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-13 22:29:27,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:29:27,833.833 INFO    ] Checking for system updates...
[2026-06-13 22:29:27,855.855 INFO    ] 200
[2026-06-13 22:29:27,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:27,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:27,891.891 INFO    ] No update needed
[2026-06-13 22:29:27,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 22:29:27,912.912 INFO    ] 200
[2026-06-13 22:29:27,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:27,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:29:27,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:27,977.977 INFO    ] No camera update needed
[2026-06-13 22:29:27,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:29:27,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:29:27,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:29:27,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:29:30,023.023 INFO    ] ================================================
[2026-06-13 22:29:30,039.039 INFO    ] Launching Daemon at Sat Jun 13 22:29:30 IST 2026
[2026-06-13 22:29:30,050.050 INFO    ] ================================================
[2026-06-13 22:29:30,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:29:30
[2026-06-13 22:29:30,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:29:30,853.853 INFO    ] Initializing speech engine...
[2026-06-13 22:29:30,856.856 INFO    ] 2026-06-13 22:29:30
[2026-06-13 22:29:31,061.061 INFO    ] 2026-06-13 22:29:31
[2026-06-13 22:29:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:29:31,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:29:31,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:29:31,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:29:31,341.341 INFO    ] time= 13/06/2026 22:29:31
[2026-06-13 22:29:31,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:29:31,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:29:31,434.434 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 22:29:31,477.477 INFO    ] Checking historical command: ID=1781369969497-0
[2026-06-13 22:29:31,503.503 INFO    ] process_and_cleanup_command: msg_id=1781369969497-0
[2026-06-13 22:29:31,560.560 INFO    ] is_command_expired: timestamp=2026-06-13T16:59:29.348Z, expiry=30s
[2026-06-13 22:29:31,675.675 INFO    ] Command removed from stream: 1781369969497-0. returning for processing...
[2026-06-13 22:29:31,678.678 INFO    ] ***** get_valid_command
[2026-06-13 22:29:31,705.705 INFO    ] {'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781369969348-1ft9kvfgs","orderId":"TM08202203260613222849816","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-13T16:59:29.348Z'}
[2026-06-13 22:29:31,708.708 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781369969348-1ft9kvfgs', 'is_vending': False, 'orderId': 'TM08202203260613222849816'}
[2026-06-13 22:29:31,709.709 INFO    ] Handling start order...
[2026-06-13 22:29:31,737.737 INFO    ] handle_start_order_command
[2026-06-13 22:29:31,745.745 INFO    ] _send_start_order_success: request_id=start-order-1781369969348-1ft9kvfgs, order_id=TM08202203260613222849816
[2026-06-13 22:29:31,747.747 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:29:31,823.823 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781369971770-0
[2026-06-13 22:29:31,827.827 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:29:31,832.832 INFO    ] Checking for system updates...
[2026-06-13 22:29:31,862.862 INFO    ] 200
[2026-06-13 22:29:31,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:31,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:29:31,915.915 INFO    ] No update needed
[2026-06-13 22:29:31,918.918 INFO    ] Checking for camera pi updates...
[2026-06-13 22:29:31,956.956 INFO    ] 200
[2026-06-13 22:29:31,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:31,993.993 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:29:32,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:29:32,033.033 INFO    ] No camera update needed
[2026-06-13 22:29:32,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:29:32,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:29:32,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:29:32,163.163 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:29:32,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:29:34,208.208 INFO    ] ================================================
[2026-06-13 22:29:34,224.224 INFO    ] Launching Daemon at Sat Jun 13 22:29:34 IST 2026
[2026-06-13 22:29:34,234.234 INFO    ] ================================================
[2026-06-13 22:29:34,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:29:34
[2026-06-13 22:29:35,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:29:35,791.791 INFO    ] Initializing speech engine...
[2026-06-13 22:29:35,803.803 INFO    ] 2026-06-13 22:29:35
[2026-06-13 22:29:36,117.117 INFO    ] 2026-06-13 22:29:36
[2026-06-13 22:29:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:29:36,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:29:36,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:29:36,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:29:36,563.563 INFO    ] time= 13/06/2026 22:29:36
[2026-06-13 22:29:36,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:29:36,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:29:36,770.770 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 22:29:36,820.820 INFO    ] Checking historical command: ID=1781369971770-0
[2026-06-13 22:29:36,886.886 INFO    ] process_and_cleanup_command: msg_id=1781369971770-0
[2026-06-13 22:29:36,919.919 INFO    ] is_command_expired: timestamp=2026-06-13T16:59:31.746136Z, expiry=30s
[2026-06-13 22:29:37,134.134 INFO    ] Command removed from stream: 1781369971770-0. returning for processing...
[2026-06-13 22:29:37,137.137 INFO    ] ***** get_valid_command
[2026-06-13 22:29:37,141.141 INFO    ] {'message_type': 'command_response', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781369969348-1ft9kvfgs', 'metadata_order_id': 'TM08202203260613222849816', 'imei': 'TM08202203', 'status': 'success', 'timestamp': '2026-06-13T16:59:31.746136Z'}
[2026-06-13 22:29:37,207.207 INFO    ] Checking historical command: ID=1781369973756-0
[2026-06-13 22:29:37,271.271 INFO    ] process_and_cleanup_command: msg_id=1781369973756-0
[2026-06-13 22:29:37,278.278 INFO    ] is_command_expired: timestamp=2026-06-13T16:59:33.604Z, expiry=30s
[2026-06-13 22:29:37,381.381 INFO    ] Command removed from stream: 1781369973756-0. returning for processing...
[2026-06-13 22:29:37,386.386 INFO    ] ***** get_valid_command
[2026-06-13 22:29:37,391.391 INFO    ] {'data': '{"request_id":"process-order-1781369973604-pjg1upqqa","orderId":"TM08202203260613222849816","is_vending":false,"accessCode":"37808620"}', 'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'timestamp': '2026-06-13T16:59:33.604Z'}
[2026-06-13 22:29:37,397.397 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613222849816', 'request_id': 'process-order-1781369973604-pjg1upqqa', 'accessCode': '37808620'}
[2026-06-13 22:29:37,403.403 INFO    ] Handling process order...
[2026-06-13 22:29:37,409.409 INFO    ] Processing process-order command...
[2026-06-13 22:29:37,415.415 INFO    ] 🔍 Lock file Order ID: TM08202203260613222849816, TS: 2026-06-13 22:29:31
[2026-06-13 22:29:37,433.433 INFO    ] ✅ Order lock valid for TM08202203260613222849816
[2026-06-13 22:29:37,439.439 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:29:37,445.445 INFO    ] processing access code 37808620 for order TM08202203260613222849816
[2026-06-13 22:29:37,451.451 INFO    ] 🔍 Lock file Order ID: TM08202203260613222849816, TS: 2026-06-13 22:29:31
[2026-06-13 22:29:37,456.456 INFO    ] ✅ Order lock valid for TM08202203260613222849816
[2026-06-13 22:29:37,461.461 INFO    ] 2026-06-13 22:29:37
[2026-06-13 22:29:37,581.581 INFO    ] 200
[2026-06-13 22:29:37,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:37,612.612 INFO    ] 37808620
[2026-06-13 22:29:37,623.623 INFO    ] 2026-06-13 22:29:37
[2026-06-13 22:29:37,631.631 INFO    ] session id :732201364
[2026-06-13 22:29:37,637.637 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=37808620&imei=TM08202203&session_id=732201364
[2026-06-13 22:29:38,515.515 INFO    ] 200
[2026-06-13 22:29:38,522.522 INFO    ] {"data": {"mobile": "9108022066", "order_id": "TM08202203260613222849816", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "37808620", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:29:38,546.546 INFO    ] 20
[2026-06-13 22:29:38,552.552 INFO    ] TM08202203260613222849816
[2026-06-13 22:29:38,561.561 INFO    ] 9108022066
[2026-06-13 22:29:38,569.569 INFO    ] 2026-06-13 22:29:38
[2026-06-13 22:29:38,575.575 INFO    ] Door Opening for user mobile ending with  two zero six six 
[2026-06-13 22:29:38,588.588 INFO    ] Door Opening for user mobile ending with  two zero six six 
[2026-06-13 22:29:38,609.609 INFO    ] a05d78fb0c80ac48bd3518bbd4ad1e52
[2026-06-13 22:29:38,632.632 INFO    ] 2026-06-13 22:29:38
[2026-06-13 22:29:38,683.683 INFO    ] playing audio file
[2026-06-13 22:29:38,723.723 INFO    ] 2026-06-13 22:29:38
[2026-06-13 22:29:38,791.791 INFO    ] 2026-06-13 22:29:38
[2026-06-13 22:29:38,815.815 INFO    ] publish_status: order_id=TM08202203260613222849816
[2026-06-13 22:29:38,826.826 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613222849816
[2026-06-13 22:29:38,878.878 INFO    ] [publish_status] Message added to stream with ID: 1781369978849-0
[2026-06-13 22:29:38,881.881 INFO    ] Published to order:TM08202203260613222849816: {'timestamp': '2026-06-13T16:59:38.798659Z', 'server_response': '{"data": {"bill_amount": "20", "order_id": "TM08202203260613222849816", "access_code": "37808620", "proposed_sku_json": [{"mrp": "20", "sku_total": 20, "offer_id": "", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "43", "skuid": "185993", "door_id": "2", "unit_price": 20, "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}], "invoice_bill": "20", "mobile": "9108022066"}, "rstatus": true, "status": true, "msg": "Order Data"}', 'order_id': 'TM08202203260613222849816', 'server_status': 'order-started'} (ID: 1781369978849-0)
[2026-06-13 22:29:39,284.284 INFO    ] {'server_response': {'data': {'bill_amount': '20', 'order_id': 'TM08202203260613222849816', 'access_code': '37808620', 'proposed_sku_json': [{'mrp': '20', 'sku_total': 20, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'skuid': '185993', 'door_id': '2', 'unit_price': 20, 'offer_desc': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'invoice_bill': '20', 'mobile': '9108022066'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613222849816', 'server_status': 'order-started'}
[2026-06-13 22:29:39,287.287 INFO    ] 200
[2026-06-13 22:29:39,290.290 INFO    ] {"data":{"server_response":{"data":{"bill_amount":"20","order_id":"TM08202203260613222849816","access_code":"37808620","proposed_sku_json":[{"mrp":"20","sku_total":20,"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"43","skuid":"185993","door_id":"2","unit_price":20,"offer_desc":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}],"invoice_bill":"20","mobile":"9108022066"},"rstatus":true,"status":true,"msg":"Order Data"},"order_id":"TM08202203260613222849816","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:29:39,293.293 INFO    ] {'data': {'server_response': {'data': {'bill_amount': '20', 'order_id': 'TM08202203260613222849816', 'access_code': '37808620', 'proposed_sku_json': [{'mrp': '20', 'sku_total': 20, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 1, 'tray_id': '43', 'skuid': '185993', 'unit_price': 20, 'door_id': '2', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_desc': ''}], 'invoice_bill': '20', 'mobile': '9108022066'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613222849816', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:29:39,296.296 INFO    ] 2026-06-13 22:29:39
[2026-06-13 22:29:39,347.347 INFO    ] 200
[2026-06-13 22:29:39,351.351 INFO    ] True
[2026-06-13 22:29:39,511.511 INFO    ] 200
[2026-06-13 22:29:39,514.514 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:29:39,518.518 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, '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 :)'}, 'status': 'False'}
[2026-06-13 22:29:39,522.522 INFO    ] *** process_order ***
[2026-06-13 22:29:40,712.712 INFO    ] 200
[2026-06-13 22:29:40,715.715 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:29:40,718.718 INFO    ] {'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, '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}
[2026-06-13 22:29:40,721.721 INFO    ] *** process_order ***
[2026-06-13 22:29:40,724.724 INFO    ] publish_status: order_id=TM08202203260613222849816
[2026-06-13 22:29:40,727.727 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613222849816
[2026-06-13 22:29:40,781.781 INFO    ] [publish_status] Message added to stream with ID: 1781369980751-0
[2026-06-13 22:29:40,784.784 INFO    ] Published to order:TM08202203260613222849816: {'server_response': '{"voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True"}', 'order_id': 'TM08202203260613222849816', 'server_status': 'doorOpened'} (ID: 1781369980751-0)
[2026-06-13 22:29:41,829.829 INFO    ] 2026-06-13 22:29:41
[2026-06-13 22:29:41,833.833 INFO    ] publish_status: order_id=TM08202203260613222849816
[2026-06-13 22:29:41,836.836 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613222849816
[2026-06-13 22:29:41,916.916 INFO    ] [publish_status] Message added to stream with ID: 1781369981886-0
[2026-06-13 22:29:41,921.921 INFO    ] Published to order:TM08202203260613222849816: {'timestamp': '2026-06-13T16:59:41.831115Z', 'server_response': '{"status": "True", "voiceNote": "Please Wait", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "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}', 'order_id': 'TM08202203260613222849816', 'server_status': 'processOrder'} (ID: 1781369981886-0)
[2026-06-13 22:29:42,039.039 INFO    ] {'server_response': {'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, '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}, 'order_id': 'TM08202203260613222849816', 'server_status': 'processOrder'}
[2026-06-13 22:29:42,042.042 INFO    ] 200
[2026-06-13 22:29:42,045.045 INFO    ] {"data":{"server_response":{"status":"true","voiceNote":"Please Wait","rstatus":true,"SectionMain":{"Header":"Processing Order"},"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},"order_id":"TM08202203260613222849816","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:29:42,049.049 INFO    ] {'data': {'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true'}, 'order_id': 'TM08202203260613222849816', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:29:42,053.053 INFO    ] 2026-06-13 22:29:42
[2026-06-13 22:29:42,056.056 INFO    ] None
[2026-06-13 22:29:42,059.059 INFO    ] Opening Door now
[2026-06-13 22:29:42,062.062 INFO    ] Opening Door now
[2026-06-13 22:29:42,065.065 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:29:42,069.069 INFO    ] 2026-06-13 22:29:42
[2026-06-13 22:29:42,072.072 INFO    ] playing audio file
[2026-06-13 22:29:42,087.087 INFO    ] 2026-06-13 22:29:42
[2026-06-13 22:29:42,089.089 INFO    ] 2026-06-13 22:29:42
[2026-06-13 22:29:45,127.127 INFO    ] 200
[2026-06-13 22:29:45,129.129 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:29:45,131.131 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False'}
[2026-06-13 22:29:48,194.194 INFO    ] 200
[2026-06-13 22:29:48,198.198 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:29:48,202.202 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False'}
[2026-06-13 22:29:51,239.239 INFO    ] 200
[2026-06-13 22:29:51,240.240 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:29:51,242.242 INFO    ] Please close door 2
[2026-06-13 22:29:51,244.244 INFO    ] Please close door 2
[2026-06-13 22:29:51,245.245 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 22:29:51,247.247 INFO    ] 2026-06-13 22:29:51
[2026-06-13 22:29:51,249.249 INFO    ] playing audio file
[2026-06-13 22:29:51,260.260 INFO    ] 2026-06-13 22:29:51
[2026-06-13 22:29:51,262.262 INFO    ] publish_status: order_id=TM08202203260613222849816
[2026-06-13 22:29:51,264.264 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613222849816
[2026-06-13 22:29:51,339.339 INFO    ] [publish_status] Message added to stream with ID: 1781369991311-0
[2026-06-13 22:29:51,341.341 INFO    ] Published to order:TM08202203260613222849816: {'timestamp': '2026-06-13T16:59:51.261113Z', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 2", "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "SectionSKU": {"skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False"}', 'order_id': 'TM08202203260613222849816', 'server_status': 'OrderStatus'} (ID: 1781369991311-0)
[2026-06-13 22:29:51,714.714 INFO    ] {'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False'}, 'order_id': 'TM08202203260613222849816', 'server_status': 'OrderStatus'}
[2026-06-13 22:29:51,717.717 INFO    ] 200
[2026-06-13 22:29:51,720.720 INFO    ] {"data":{"server_response":{"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"voiceNote":"Please close door 2","rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"SectionSKU":{"skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}],"Header":"Pick the below items from the door"},"status":"false"},"order_id":"TM08202203260613222849816","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:29:51,727.727 INFO    ] {'data': {'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false'}, 'order_id': 'TM08202203260613222849816', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:29:51,731.731 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False'}
[2026-06-13 22:29:54,774.774 INFO    ] 200
[2026-06-13 22:29:54,775.775 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:29:54,778.778 INFO    ] {'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100}
[2026-06-13 22:29:54,780.780 INFO    ] 2026-06-13 22:29:54
[2026-06-13 22:29:54,781.781 INFO    ] Order Completed 
[2026-06-13 22:29:54,783.783 INFO    ] Order Completed 
[2026-06-13 22:29:54,785.785 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:29:54,787.787 INFO    ] 2026-06-13 22:29:54
[2026-06-13 22:29:54,792.792 INFO    ] playing audio file
[2026-06-13 22:29:54,803.803 INFO    ] 2026-06-13 22:29:54
[2026-06-13 22:29:54,805.805 INFO    ] {'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100}
[2026-06-13 22:29:54,808.808 INFO    ] 2026-06-13 22:29:54
[2026-06-13 22:29:56,192.192 INFO    ] 200
[2026-06-13 22:29:56,195.195 INFO    ] {"res": "True", "orderId": "TM08202203260613222849816", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 22:29:56,198.198 INFO    ] {'res': 'True', 'orderId': 'TM08202203260613222849816', 'skus': [{'mrp': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'door_id': '', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0}
[2026-06-13 22:29:56,202.202 INFO    ] {'res': 'True', 'orderId': 'TM08202203260613222849816', 'skus': [{'mrp': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'door_id': '', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0}
[2026-06-13 22:29:56,204.204 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,207.207 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,211.211 INFO    ] 20
[2026-06-13 22:29:56,215.215 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,218.218 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,221.221 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:29:56,224.224 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:29:56,227.227 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 22:29:56,233.233 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,236.236 INFO    ] playing audio file
[2026-06-13 22:29:56,255.255 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,259.259 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:56,264.264 INFO    ] publish_status: order_id=TM08202203260613222849816
[2026-06-13 22:29:56,268.268 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613222849816
[2026-06-13 22:29:56,331.331 INFO    ] [publish_status] Message added to stream with ID: 1781369996301-0
[2026-06-13 22:29:56,334.334 INFO    ] Published to order:TM08202203260613222849816: {'timestamp': '2026-06-13T16:59:56.261416Z', 'server_response': '{"res": "True", "orderId": "TM08202203260613222849816", "skus": [{"mrp": "20", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "43", "door_id": "", "unit_price": "20", "skuid": "185993", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "qty": 1}], "rstatus": true, "logic": "WBL", "anomaly": 0, "total_amount": 20.0}', 'order_id': 'TM08202203260613222849816', 'server_status': 'invoiceOrder'} (ID: 1781369996301-0)
[2026-06-13 22:29:56,458.458 INFO    ] {'server_response': {'res': 'True', 'orderId': 'TM08202203260613222849816', 'skus': [{'mrp': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'door_id': '', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20.0}, 'order_id': 'TM08202203260613222849816', 'server_status': 'invoiceOrder'}
[2026-06-13 22:29:56,462.462 INFO    ] 200
[2026-06-13 22:29:56,464.464 INFO    ] {"data":{"server_response":{"res":"true","orderId":"TM08202203260613222849816","skus":[{"mrp":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"43","door_id":"","unit_price":"20","skuid":"185993","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","qty":1}],"rstatus":true,"logic":"WBL","anomaly":0,"total_amount":20},"order_id":"TM08202203260613222849816","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:29:56,468.468 INFO    ] {'data': {'server_response': {'res': 'true', 'orderId': 'TM08202203260613222849816', 'skus': [{'mrp': '20', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'door_id': '', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20}, 'order_id': 'TM08202203260613222849816', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:29:56,472.472 INFO    ] {'data': {'server_response': {'res': 'true', 'orderId': 'TM08202203260613222849816', 'skus': [{'mrp': '20', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '43', 'door_id': '', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 1}], 'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 20}, 'order_id': 'TM08202203260613222849816', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-13 22:29:56,475.475 INFO    ] 2026-06-13 22:29:56
[2026-06-13 22:29:59,705.705 INFO    ] 200
[2026-06-13 22:29:59,709.709 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816", "TM08202203260613222849816"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:29:59,712.712 INFO    ] 2026-06-13 22:29:59
[2026-06-13 22:29:59,821.821 INFO    ] 200
[2026-06-13 22:29:59,824.824 INFO    ] True
[2026-06-13 22:29:59,827.827 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613222849816
[2026-06-13 22:29:59,831.831 INFO    ] start order file deleted
[2026-06-13 22:29:59,835.835 INFO    ] Checking for system updates...
[2026-06-13 22:29:59,895.895 INFO    ] 200
[2026-06-13 22:29:59,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:29:59,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:29:59,977.977 INFO    ] No update needed
[2026-06-13 22:29:59,980.980 INFO    ] Checking for camera pi updates...
[2026-06-13 22:30:00,020.020 INFO    ] 200
[2026-06-13 22:30:00,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:00,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:30:00,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:30:00,122.122 INFO    ] No camera update needed
[2026-06-13 22:30:00,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:30:00,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:30:00,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:30:00,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:30:02,200.200 INFO    ] ================================================
[2026-06-13 22:30:02,265.265 INFO    ] Launching Daemon at Sat Jun 13 22:30:02 IST 2026
[2026-06-13 22:30:02,305.305 INFO    ] ================================================
[2026-06-13 22:30:03,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:30:03
[2026-06-13 22:30:03,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:30:04,064.064 INFO    ] Initializing speech engine...
[2026-06-13 22:30:04,071.071 INFO    ] 2026-06-13 22:30:04
[2026-06-13 22:30:04,331.331 INFO    ] 2026-06-13 22:30:04
[2026-06-13 22:30:04,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:30:04,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:30:04,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:30:04,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:30:04,659.659 INFO    ] time= 13/06/2026 22:30:04
[2026-06-13 22:30:04,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:30:04,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:30:04,769.769 INFO    ] No existing commands found in stream
[2026-06-13 22:30:09,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:30:09,784.784 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 22:30:13,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:30:13,285.285 INFO    ] Checking for system updates...
[2026-06-13 22:30:13,306.306 INFO    ] 200
[2026-06-13 22:30:13,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:13,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:30:13,341.341 INFO    ] No update needed
[2026-06-13 22:30:13,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 22:30:13,362.362 INFO    ] 200
[2026-06-13 22:30:13,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:13,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:30:13,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:30:13,529.529 INFO    ] No camera update needed
[2026-06-13 22:30:13,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:30:13,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:30:13,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:30:13,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:30:15,576.576 INFO    ] ================================================
[2026-06-13 22:30:15,591.591 INFO    ] Launching Daemon at Sat Jun 13 22:30:15 IST 2026
[2026-06-13 22:30:15,602.602 INFO    ] ================================================
[2026-06-13 22:30:15,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:30:15
[2026-06-13 22:30:16,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:30:16,378.378 INFO    ] Initializing speech engine...
[2026-06-13 22:30:16,382.382 INFO    ] 2026-06-13 22:30:16
[2026-06-13 22:30:16,609.609 INFO    ] 2026-06-13 22:30:16
[2026-06-13 22:30:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:30:16,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:30:16,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:30:16,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:30:16,874.874 INFO    ] time= 13/06/2026 22:30:16
[2026-06-13 22:30:16,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:30:16,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:30:17,016.016 INFO    ] No existing commands found in stream
[2026-06-13 22:30:22,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:30:22,048.048 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-13 22:30:23,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:30:23,842.842 INFO    ] Checking for system updates...
[2026-06-13 22:30:23,862.862 INFO    ] 200
[2026-06-13 22:30:23,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:23,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:30:23,899.899 INFO    ] No update needed
[2026-06-13 22:30:23,900.900 INFO    ] Checking for camera pi updates...
[2026-06-13 22:30:23,920.920 INFO    ] 200
[2026-06-13 22:30:23,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:23,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:30:23,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:30:23,985.985 INFO    ] No camera update needed
[2026-06-13 22:30:23,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:30:23,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:30:23,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:30:23,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:30:26,031.031 INFO    ] ================================================
[2026-06-13 22:30:26,047.047 INFO    ] Launching Daemon at Sat Jun 13 22:30:26 IST 2026
[2026-06-13 22:30:26,058.058 INFO    ] ================================================
[2026-06-13 22:30:26,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:30:26
[2026-06-13 22:30:26,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:30:26,845.845 INFO    ] Initializing speech engine...
[2026-06-13 22:30:26,855.855 INFO    ] 2026-06-13 22:30:26
[2026-06-13 22:30:27,059.059 INFO    ] 2026-06-13 22:30:27
[2026-06-13 22:30:27,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:30:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:30:27,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:30:27,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:30:27,468.468 INFO    ] time= 13/06/2026 22:30:27
[2026-06-13 22:30:27,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:30:27,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:30:27,574.574 INFO    ] No existing commands found in stream
[2026-06-13 22:30:32,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:30:32,586.586 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-13 22:30:36,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:30:36,596.596 INFO    ] Checking for system updates...
[2026-06-13 22:30:36,616.616 INFO    ] 200
[2026-06-13 22:30:36,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:36,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:30:36,657.657 INFO    ] No update needed
[2026-06-13 22:30:36,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 22:30:36,695.695 INFO    ] 200
[2026-06-13 22:30:36,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:36,741.741 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:30:36,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:30:36,792.792 INFO    ] No camera update needed
[2026-06-13 22:30:36,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:30:36,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:30:36,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:30:36,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:30:38,849.849 INFO    ] ================================================
[2026-06-13 22:30:38,865.865 INFO    ] Launching Daemon at Sat Jun 13 22:30:38 IST 2026
[2026-06-13 22:30:38,876.876 INFO    ] ================================================
[2026-06-13 22:30:39,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:30:39
[2026-06-13 22:30:39,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:30:40,053.053 INFO    ] Initializing speech engine...
[2026-06-13 22:30:40,058.058 INFO    ] 2026-06-13 22:30:40
[2026-06-13 22:30:40,262.262 INFO    ] 2026-06-13 22:30:40
[2026-06-13 22:30:40,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:30:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:30:40,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:30:40,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:30:40,669.669 INFO    ] time= 13/06/2026 22:30:40
[2026-06-13 22:30:40,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:30:40,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:30:40,779.779 INFO    ] No existing commands found in stream
[2026-06-13 22:30:45,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:30:45,791.791 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 22:30:48,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:30:48,413.413 INFO    ] Checking for system updates...
[2026-06-13 22:30:48,434.434 INFO    ] 200
[2026-06-13 22:30:48,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:48,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:30:48,469.469 INFO    ] No update needed
[2026-06-13 22:30:48,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 22:30:48,491.491 INFO    ] 200
[2026-06-13 22:30:48,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:48,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:30:48,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:30:48,555.555 INFO    ] No camera update needed
[2026-06-13 22:30:48,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:30:48,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:30:48,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:30:48,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:30:50,601.601 INFO    ] ================================================
[2026-06-13 22:30:50,617.617 INFO    ] Launching Daemon at Sat Jun 13 22:30:50 IST 2026
[2026-06-13 22:30:50,628.628 INFO    ] ================================================
[2026-06-13 22:30:50,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:30:50
[2026-06-13 22:30:51,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:30:51,426.426 INFO    ] Initializing speech engine...
[2026-06-13 22:30:51,431.431 INFO    ] 2026-06-13 22:30:51
[2026-06-13 22:30:51,656.656 INFO    ] 2026-06-13 22:30:51
[2026-06-13 22:30:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:30:51,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:30:51,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:30:52,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:30:52,067.067 INFO    ] time= 13/06/2026 22:30:52
[2026-06-13 22:30:52,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:30:52,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:30:52,200.200 INFO    ] No existing commands found in stream
[2026-06-13 22:30:57,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:30:57,213.213 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 22:30:59,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:30:59,932.932 INFO    ] Checking for system updates...
[2026-06-13 22:30:59,953.953 INFO    ] 200
[2026-06-13 22:30:59,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:30:59,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:30:59,989.989 INFO    ] No update needed
[2026-06-13 22:30:59,991.991 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:00,011.011 INFO    ] 200
[2026-06-13 22:31:00,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:00,035.035 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:00,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:31:00,077.077 INFO    ] No camera update needed
[2026-06-13 22:31:00,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:00,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:00,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:00,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:02,118.118 INFO    ] ================================================
[2026-06-13 22:31:02,129.129 INFO    ] Launching Daemon at Sat Jun 13 22:31:02 IST 2026
[2026-06-13 22:31:02,136.136 INFO    ] ================================================
[2026-06-13 22:31:02,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:02
[2026-06-13 22:31:02,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:02,955.955 INFO    ] Initializing speech engine...
[2026-06-13 22:31:02,966.966 INFO    ] 2026-06-13 22:31:02
[2026-06-13 22:31:03,170.170 INFO    ] 2026-06-13 22:31:03
[2026-06-13 22:31:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:31:03,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:31:03,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:31:03,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:31:03,532.532 INFO    ] time= 13/06/2026 22:31:03
[2026-06-13 22:31:03,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:31:03,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:31:03,689.689 INFO    ] No existing commands found in stream
[2026-06-13 22:31:08,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:31:08,702.702 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 22:31:09,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:31:09,599.599 INFO    ] Checking for system updates...
[2026-06-13 22:31:09,621.621 INFO    ] 200
[2026-06-13 22:31:09,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:09,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:09,654.654 INFO    ] No update needed
[2026-06-13 22:31:09,655.655 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:09,677.677 INFO    ] 200
[2026-06-13 22:31:09,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:09,704.704 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:09,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:09,743.743 INFO    ] No camera update needed
[2026-06-13 22:31:09,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:09,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:09,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:09,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:11,791.791 INFO    ] ================================================
[2026-06-13 22:31:11,807.807 INFO    ] Launching Daemon at Sat Jun 13 22:31:11 IST 2026
[2026-06-13 22:31:11,818.818 INFO    ] ================================================
[2026-06-13 22:31:12,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:12
[2026-06-13 22:31:12,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:12,639.639 INFO    ] Initializing speech engine...
[2026-06-13 22:31:12,652.652 INFO    ] 2026-06-13 22:31:12
[2026-06-13 22:31:12,871.871 INFO    ] 2026-06-13 22:31:12
[2026-06-13 22:31:12,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:31:13,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:31:13,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:31:13,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:31:13,246.246 INFO    ] time= 13/06/2026 22:31:13
[2026-06-13 22:31:13,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:31:13,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:31:13,427.427 INFO    ] No existing commands found in stream
[2026-06-13 22:31:18,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:31:18,440.440 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 22:31:21,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:31:21,128.128 INFO    ] Checking for system updates...
[2026-06-13 22:31:21,164.164 INFO    ] 200
[2026-06-13 22:31:21,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:21,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:31:21,232.232 INFO    ] No update needed
[2026-06-13 22:31:21,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:21,271.271 INFO    ] 200
[2026-06-13 22:31:21,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:21,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:21,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:31:21,355.355 INFO    ] No camera update needed
[2026-06-13 22:31:21,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:21,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:21,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:21,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:23,414.414 INFO    ] ================================================
[2026-06-13 22:31:23,430.430 INFO    ] Launching Daemon at Sat Jun 13 22:31:23 IST 2026
[2026-06-13 22:31:23,442.442 INFO    ] ================================================
[2026-06-13 22:31:24,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:24
[2026-06-13 22:31:24,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:24,637.637 INFO    ] Initializing speech engine...
[2026-06-13 22:31:24,643.643 INFO    ] 2026-06-13 22:31:24
[2026-06-13 22:31:24,851.851 INFO    ] 2026-06-13 22:31:24
[2026-06-13 22:31:24,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:31:25,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:31:25,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:31:25,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:31:25,272.272 INFO    ] time= 13/06/2026 22:31:25
[2026-06-13 22:31:25,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:31:25,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:31:25,368.368 INFO    ] No existing commands found in stream
[2026-06-13 22:31:30,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:31:30,383.383 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 22:31:32,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:31:32,995.995 INFO    ] Checking for system updates...
[2026-06-13 22:31:33,016.016 INFO    ] 200
[2026-06-13 22:31:33,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:33,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:33,049.049 INFO    ] No update needed
[2026-06-13 22:31:33,051.051 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:33,071.071 INFO    ] 200
[2026-06-13 22:31:33,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:33,098.098 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:33,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:33,139.139 INFO    ] No camera update needed
[2026-06-13 22:31:33,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:33,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:33,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:33,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:35,186.186 INFO    ] ================================================
[2026-06-13 22:31:35,202.202 INFO    ] Launching Daemon at Sat Jun 13 22:31:35 IST 2026
[2026-06-13 22:31:35,213.213 INFO    ] ================================================
[2026-06-13 22:31:35,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:35
[2026-06-13 22:31:35,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:36,009.009 INFO    ] Initializing speech engine...
[2026-06-13 22:31:36,013.013 INFO    ] 2026-06-13 22:31:36
[2026-06-13 22:31:36,243.243 INFO    ] 2026-06-13 22:31:36
[2026-06-13 22:31:36,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:31:36,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:31:36,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:31:36,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:31:36,686.686 INFO    ] time= 13/06/2026 22:31:36
[2026-06-13 22:31:36,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:31:36,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:31:36,796.796 INFO    ] No existing commands found in stream
[2026-06-13 22:31:41,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:31:41,810.810 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 22:31:44,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:31:44,551.551 INFO    ] Checking for system updates...
[2026-06-13 22:31:44,591.591 INFO    ] 200
[2026-06-13 22:31:44,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:44,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:31:44,657.657 INFO    ] No update needed
[2026-06-13 22:31:44,660.660 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:44,692.692 INFO    ] 200
[2026-06-13 22:31:44,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:44,716.716 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:44,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:31:44,759.759 INFO    ] No camera update needed
[2026-06-13 22:31:44,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:44,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:44,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:44,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:46,807.807 INFO    ] ================================================
[2026-06-13 22:31:46,823.823 INFO    ] Launching Daemon at Sat Jun 13 22:31:46 IST 2026
[2026-06-13 22:31:46,835.835 INFO    ] ================================================
[2026-06-13 22:31:47,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:47
[2026-06-13 22:31:47,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:47,677.677 INFO    ] Initializing speech engine...
[2026-06-13 22:31:47,685.685 INFO    ] 2026-06-13 22:31:47
[2026-06-13 22:31:47,903.903 INFO    ] 2026-06-13 22:31:47
[2026-06-13 22:31:47,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:31:48,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:31:48,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:31:48,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:31:48,256.256 INFO    ] time= 13/06/2026 22:31:48
[2026-06-13 22:31:48,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:31:48,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:31:48,465.465 INFO    ] No existing commands found in stream
[2026-06-13 22:31:53,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:31:53,477.477 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-13 22:31:56,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:31:56,872.872 INFO    ] Checking for system updates...
[2026-06-13 22:31:56,894.894 INFO    ] 200
[2026-06-13 22:31:56,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:56,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:56,927.927 INFO    ] No update needed
[2026-06-13 22:31:56,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 22:31:56,948.948 INFO    ] 200
[2026-06-13 22:31:56,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:31:56,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:31:57,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:31:57,010.010 INFO    ] No camera update needed
[2026-06-13 22:31:57,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:31:57,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:31:57,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:31:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:31:59,058.058 INFO    ] ================================================
[2026-06-13 22:31:59,074.074 INFO    ] Launching Daemon at Sat Jun 13 22:31:59 IST 2026
[2026-06-13 22:31:59,085.085 INFO    ] ================================================
[2026-06-13 22:31:59,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:31:59
[2026-06-13 22:31:59,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:31:59,895.895 INFO    ] Initializing speech engine...
[2026-06-13 22:31:59,900.900 INFO    ] 2026-06-13 22:31:59
[2026-06-13 22:32:00,103.103 INFO    ] 2026-06-13 22:32:00
[2026-06-13 22:32:00,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:00,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:00,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:00,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:00,511.511 INFO    ] time= 13/06/2026 22:32:00
[2026-06-13 22:32:00,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:00,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:00,760.760 INFO    ] No existing commands found in stream
[2026-06-13 22:32:05,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:32:05,793.793 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 22:32:07,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:32:07,317.317 INFO    ] Checking for system updates...
[2026-06-13 22:32:07,339.339 INFO    ] 200
[2026-06-13 22:32:07,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:07,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:07,374.374 INFO    ] No update needed
[2026-06-13 22:32:07,375.375 INFO    ] Checking for camera pi updates...
[2026-06-13 22:32:07,396.396 INFO    ] 200
[2026-06-13 22:32:07,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:07,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:32:07,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:07,466.466 INFO    ] No camera update needed
[2026-06-13 22:32:07,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:32:07,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:32:07,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:32:07,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:32:09,515.515 INFO    ] ================================================
[2026-06-13 22:32:09,531.531 INFO    ] Launching Daemon at Sat Jun 13 22:32:09 IST 2026
[2026-06-13 22:32:09,542.542 INFO    ] ================================================
[2026-06-13 22:32:09,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:32:09
[2026-06-13 22:32:10,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:32:10,336.336 INFO    ] Initializing speech engine...
[2026-06-13 22:32:10,340.340 INFO    ] 2026-06-13 22:32:10
[2026-06-13 22:32:10,571.571 INFO    ] 2026-06-13 22:32:10
[2026-06-13 22:32:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:10,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:10,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:10,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:11,029.029 INFO    ] time= 13/06/2026 22:32:10
[2026-06-13 22:32:11,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:11,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:11,131.131 INFO    ] No existing commands found in stream
[2026-06-13 22:32:16,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:32:16,143.143 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 22:32:17,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:32:17,504.504 INFO    ] Checking for system updates...
[2026-06-13 22:32:17,525.525 INFO    ] 200
[2026-06-13 22:32:17,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:17,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:17,559.559 INFO    ] No update needed
[2026-06-13 22:32:17,560.560 INFO    ] Checking for camera pi updates...
[2026-06-13 22:32:17,580.580 INFO    ] 200
[2026-06-13 22:32:17,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:17,605.605 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:32:17,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:17,750.750 INFO    ] No camera update needed
[2026-06-13 22:32:17,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:32:17,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:32:17,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:32:17,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:32:19,809.809 INFO    ] ================================================
[2026-06-13 22:32:19,825.825 INFO    ] Launching Daemon at Sat Jun 13 22:32:19 IST 2026
[2026-06-13 22:32:19,836.836 INFO    ] ================================================
[2026-06-13 22:32:20,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:32:20
[2026-06-13 22:32:20,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:32:20,988.988 INFO    ] Initializing speech engine...
[2026-06-13 22:32:20,998.998 INFO    ] 2026-06-13 22:32:20
[2026-06-13 22:32:21,205.205 INFO    ] 2026-06-13 22:32:21
[2026-06-13 22:32:21,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:21,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:21,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:21,626.626 INFO    ] time= 13/06/2026 22:32:21
[2026-06-13 22:32:21,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:21,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:21,753.753 INFO    ] No existing commands found in stream
[2026-06-13 22:32:26,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:32:26,765.765 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 22:32:27,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:32:27,858.858 INFO    ] Checking for system updates...
[2026-06-13 22:32:27,936.936 INFO    ] 200
[2026-06-13 22:32:27,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:27,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:32:27,971.971 INFO    ] No update needed
[2026-06-13 22:32:27,972.972 INFO    ] Checking for camera pi updates...
[2026-06-13 22:32:27,992.992 INFO    ] 200
[2026-06-13 22:32:27,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:28,017.017 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:32:28,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:28,059.059 INFO    ] No camera update needed
[2026-06-13 22:32:28,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:32:28,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:32:28,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:32:28,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:32:30,110.110 INFO    ] ================================================
[2026-06-13 22:32:30,125.125 INFO    ] Launching Daemon at Sat Jun 13 22:32:30 IST 2026
[2026-06-13 22:32:30,136.136 INFO    ] ================================================
[2026-06-13 22:32:30,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:32:30
[2026-06-13 22:32:30,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:32:30,920.920 INFO    ] Initializing speech engine...
[2026-06-13 22:32:30,930.930 INFO    ] 2026-06-13 22:32:30
[2026-06-13 22:32:31,134.134 INFO    ] 2026-06-13 22:32:31
[2026-06-13 22:32:31,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:31,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:31,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:31,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:31,539.539 INFO    ] time= 13/06/2026 22:32:31
[2026-06-13 22:32:31,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:31,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:31,649.649 INFO    ] No existing commands found in stream
[2026-06-13 22:32:36,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:32:36,661.661 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 22:32:40,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:32:40,646.646 INFO    ] Checking for system updates...
[2026-06-13 22:32:40,668.668 INFO    ] 200
[2026-06-13 22:32:40,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:40,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:32:40,701.701 INFO    ] No update needed
[2026-06-13 22:32:40,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 22:32:40,722.722 INFO    ] 200
[2026-06-13 22:32:40,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:40,746.746 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:32:40,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:32:40,789.789 INFO    ] No camera update needed
[2026-06-13 22:32:40,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:32:40,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:32:40,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:32:40,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:32:42,838.838 INFO    ] ================================================
[2026-06-13 22:32:42,854.854 INFO    ] Launching Daemon at Sat Jun 13 22:32:42 IST 2026
[2026-06-13 22:32:42,864.864 INFO    ] ================================================
[2026-06-13 22:32:43,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:32:43
[2026-06-13 22:32:43,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:32:43,654.654 INFO    ] Initializing speech engine...
[2026-06-13 22:32:43,662.662 INFO    ] 2026-06-13 22:32:43
[2026-06-13 22:32:43,873.873 INFO    ] 2026-06-13 22:32:43
[2026-06-13 22:32:43,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:44,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:44,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:44,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:44,272.272 INFO    ] time= 13/06/2026 22:32:44
[2026-06-13 22:32:44,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:44,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:44,387.387 INFO    ] No existing commands found in stream
[2026-06-13 22:32:49,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:32:49,399.399 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 22:32:52,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:32:52,304.304 INFO    ] Checking for system updates...
[2026-06-13 22:32:52,325.325 INFO    ] 200
[2026-06-13 22:32:52,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:52,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:32:52,363.363 INFO    ] No update needed
[2026-06-13 22:32:52,364.364 INFO    ] Checking for camera pi updates...
[2026-06-13 22:32:52,384.384 INFO    ] 200
[2026-06-13 22:32:52,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:32:52,408.408 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:32:52,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:32:52,449.449 INFO    ] No camera update needed
[2026-06-13 22:32:52,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:32:52,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:32:52,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:32:52,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:32:54,497.497 INFO    ] ================================================
[2026-06-13 22:32:54,513.513 INFO    ] Launching Daemon at Sat Jun 13 22:32:54 IST 2026
[2026-06-13 22:32:54,523.523 INFO    ] ================================================
[2026-06-13 22:32:54,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:32:54
[2026-06-13 22:32:55,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:32:55,334.334 INFO    ] Initializing speech engine...
[2026-06-13 22:32:55,338.338 INFO    ] 2026-06-13 22:32:55
[2026-06-13 22:32:55,566.566 INFO    ] 2026-06-13 22:32:55
[2026-06-13 22:32:55,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:32:55,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:32:55,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:32:55,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:32:55,947.947 INFO    ] time= 13/06/2026 22:32:55
[2026-06-13 22:32:56,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:32:56,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:32:56,120.120 INFO    ] No existing commands found in stream
[2026-06-13 22:33:01,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:01,133.133 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 22:33:04,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:33:04,924.924 INFO    ] Checking for system updates...
[2026-06-13 22:33:04,960.960 INFO    ] 200
[2026-06-13 22:33:04,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:05,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:05,024.024 INFO    ] No update needed
[2026-06-13 22:33:05,026.026 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:05,063.063 INFO    ] 200
[2026-06-13 22:33:05,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:05,108.108 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:05,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:05,155.155 INFO    ] No camera update needed
[2026-06-13 22:33:05,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:05,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:05,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:05,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:33:07,210.210 INFO    ] ================================================
[2026-06-13 22:33:07,226.226 INFO    ] Launching Daemon at Sat Jun 13 22:33:07 IST 2026
[2026-06-13 22:33:07,236.236 INFO    ] ================================================
[2026-06-13 22:33:07,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:33:07
[2026-06-13 22:33:07,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:33:08,271.271 INFO    ] Initializing speech engine...
[2026-06-13 22:33:08,295.295 INFO    ] 2026-06-13 22:33:08
[2026-06-13 22:33:08,561.561 INFO    ] 2026-06-13 22:33:08
[2026-06-13 22:33:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:33:08,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:33:08,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:33:08,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:33:08,914.914 INFO    ] time= 13/06/2026 22:33:08
[2026-06-13 22:33:08,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:33:08,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:33:09,026.026 INFO    ] No existing commands found in stream
[2026-06-13 22:33:14,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:14,042.042 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 22:33:15,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:33:15,118.118 INFO    ] Checking for system updates...
[2026-06-13 22:33:15,139.139 INFO    ] 200
[2026-06-13 22:33:15,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:15,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:15,172.172 INFO    ] No update needed
[2026-06-13 22:33:15,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:15,192.192 INFO    ] 200
[2026-06-13 22:33:15,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:15,219.219 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:15,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:15,261.261 INFO    ] No camera update needed
[2026-06-13 22:33:15,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:15,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:15,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:15,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:33:17,309.309 INFO    ] ================================================
[2026-06-13 22:33:17,324.324 INFO    ] Launching Daemon at Sat Jun 13 22:33:17 IST 2026
[2026-06-13 22:33:17,336.336 INFO    ] ================================================
[2026-06-13 22:33:17,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:33:17
[2026-06-13 22:33:17,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:33:18,121.121 INFO    ] Initializing speech engine...
[2026-06-13 22:33:18,126.126 INFO    ] 2026-06-13 22:33:18
[2026-06-13 22:33:18,331.331 INFO    ] 2026-06-13 22:33:18
[2026-06-13 22:33:18,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:33:18,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:33:18,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:33:18,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:33:18,725.725 INFO    ] time= 13/06/2026 22:33:18
[2026-06-13 22:33:18,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:33:18,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:33:18,845.845 INFO    ] No existing commands found in stream
[2026-06-13 22:33:23,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:23,859.859 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-13 22:33:24,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:33:24,473.473 INFO    ] Checking for system updates...
[2026-06-13 22:33:24,527.527 INFO    ] 200
[2026-06-13 22:33:24,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:24,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:24,562.562 INFO    ] No update needed
[2026-06-13 22:33:24,563.563 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:24,583.583 INFO    ] 200
[2026-06-13 22:33:24,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:24,610.610 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:24,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:24,649.649 INFO    ] No camera update needed
[2026-06-13 22:33:24,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:24,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:24,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:24,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:33:26,698.698 INFO    ] ================================================
[2026-06-13 22:33:26,714.714 INFO    ] Launching Daemon at Sat Jun 13 22:33:26 IST 2026
[2026-06-13 22:33:26,725.725 INFO    ] ================================================
[2026-06-13 22:33:27,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:33:27
[2026-06-13 22:33:27,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:33:27,532.532 INFO    ] Initializing speech engine...
[2026-06-13 22:33:27,537.537 INFO    ] 2026-06-13 22:33:27
[2026-06-13 22:33:27,742.742 INFO    ] 2026-06-13 22:33:27
[2026-06-13 22:33:27,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:33:27,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:33:27,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:33:28,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:33:28,145.145 INFO    ] time= 13/06/2026 22:33:28
[2026-06-13 22:33:28,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:33:28,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:33:28,253.253 INFO    ] No existing commands found in stream
[2026-06-13 22:33:33,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:33,264.264 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 22:33:36,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:33:36,035.035 INFO    ] Checking for system updates...
[2026-06-13 22:33:36,055.055 INFO    ] 200
[2026-06-13 22:33:36,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:36,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:36,089.089 INFO    ] No update needed
[2026-06-13 22:33:36,090.090 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:36,110.110 INFO    ] 200
[2026-06-13 22:33:36,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:36,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:36,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:33:36,177.177 INFO    ] No camera update needed
[2026-06-13 22:33:36,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:36,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:36,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:36,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:33:38,226.226 INFO    ] ================================================
[2026-06-13 22:33:38,242.242 INFO    ] Launching Daemon at Sat Jun 13 22:33:38 IST 2026
[2026-06-13 22:33:38,254.254 INFO    ] ================================================
[2026-06-13 22:33:38,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:33:38
[2026-06-13 22:33:38,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:33:39,065.065 INFO    ] Initializing speech engine...
[2026-06-13 22:33:39,070.070 INFO    ] 2026-06-13 22:33:39
[2026-06-13 22:33:39,286.286 INFO    ] 2026-06-13 22:33:39
[2026-06-13 22:33:39,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:33:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:33:39,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:33:39,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:33:39,693.693 INFO    ] time= 13/06/2026 22:33:39
[2026-06-13 22:33:39,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:33:39,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:33:39,804.804 INFO    ] No existing commands found in stream
[2026-06-13 22:33:44,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:44,815.815 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-13 22:33:46,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:33:46,981.981 INFO    ] Checking for system updates...
[2026-06-13 22:33:47,002.002 INFO    ] 200
[2026-06-13 22:33:47,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:47,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:47,035.035 INFO    ] No update needed
[2026-06-13 22:33:47,037.037 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:47,056.056 INFO    ] 200
[2026-06-13 22:33:47,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:47,081.081 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:47,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:47,123.123 INFO    ] No camera update needed
[2026-06-13 22:33:47,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:47,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:47,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:47,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:33:49,169.169 INFO    ] ================================================
[2026-06-13 22:33:49,187.187 INFO    ] Launching Daemon at Sat Jun 13 22:33:49 IST 2026
[2026-06-13 22:33:49,200.200 INFO    ] ================================================
[2026-06-13 22:33:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:33:49
[2026-06-13 22:33:49,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:33:49,983.983 INFO    ] Initializing speech engine...
[2026-06-13 22:33:49,996.996 INFO    ] 2026-06-13 22:33:49
[2026-06-13 22:33:50,214.214 INFO    ] 2026-06-13 22:33:50
[2026-06-13 22:33:50,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:33:50,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:33:50,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:33:50,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:33:50,462.462 INFO    ] time= 13/06/2026 22:33:50
[2026-06-13 22:33:50,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:33:50,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:33:50,560.560 INFO    ] No existing commands found in stream
[2026-06-13 22:33:55,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:33:55,593.593 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 22:33:58,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:33:58,105.105 INFO    ] Checking for system updates...
[2026-06-13 22:33:58,126.126 INFO    ] 200
[2026-06-13 22:33:58,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:58,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:58,159.159 INFO    ] No update needed
[2026-06-13 22:33:58,160.160 INFO    ] Checking for camera pi updates...
[2026-06-13 22:33:58,183.183 INFO    ] 200
[2026-06-13 22:33:58,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:33:58,208.208 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:33:58,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:33:58,250.250 INFO    ] No camera update needed
[2026-06-13 22:33:58,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:33:58,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:33:58,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:33:58,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:00,300.300 INFO    ] ================================================
[2026-06-13 22:34:00,316.316 INFO    ] Launching Daemon at Sat Jun 13 22:34:00 IST 2026
[2026-06-13 22:34:00,327.327 INFO    ] ================================================
[2026-06-13 22:34:00,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:00
[2026-06-13 22:34:01,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:34:01,702.702 INFO    ] Initializing speech engine...
[2026-06-13 22:34:01,774.774 INFO    ] 2026-06-13 22:34:01
[2026-06-13 22:34:02,057.057 INFO    ] 2026-06-13 22:34:02
[2026-06-13 22:34:02,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:34:02,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:34:02,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:34:02,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:34:02,466.466 INFO    ] time= 13/06/2026 22:34:02
[2026-06-13 22:34:02,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:34:02,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:34:02,577.577 INFO    ] No existing commands found in stream
[2026-06-13 22:34:07,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:34:07,610.610 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 22:34:10,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:34:10,240.240 INFO    ] Checking for system updates...
[2026-06-13 22:34:10,261.261 INFO    ] 200
[2026-06-13 22:34:10,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:10,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:34:10,297.297 INFO    ] No update needed
[2026-06-13 22:34:10,298.298 INFO    ] Checking for camera pi updates...
[2026-06-13 22:34:10,319.319 INFO    ] 200
[2026-06-13 22:34:10,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:10,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:34:10,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:10,385.385 INFO    ] No camera update needed
[2026-06-13 22:34:10,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:34:10,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:34:10,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:34:10,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:12,434.434 INFO    ] ================================================
[2026-06-13 22:34:12,450.450 INFO    ] Launching Daemon at Sat Jun 13 22:34:12 IST 2026
[2026-06-13 22:34:12,461.461 INFO    ] ================================================
[2026-06-13 22:34:12,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:12
[2026-06-13 22:34:13,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:34:13,243.243 INFO    ] Initializing speech engine...
[2026-06-13 22:34:13,255.255 INFO    ] 2026-06-13 22:34:13
[2026-06-13 22:34:13,462.462 INFO    ] 2026-06-13 22:34:13
[2026-06-13 22:34:13,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:34:13,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:34:13,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:34:13,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:34:13,876.876 INFO    ] time= 13/06/2026 22:34:13
[2026-06-13 22:34:13,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:34:13,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:34:13,976.976 INFO    ] No existing commands found in stream
[2026-06-13 22:34:18,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:34:18,993.993 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-13 22:34:21,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:34:21,758.758 INFO    ] Checking for system updates...
[2026-06-13 22:34:21,779.779 INFO    ] 200
[2026-06-13 22:34:21,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:21,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:21,812.812 INFO    ] No update needed
[2026-06-13 22:34:21,813.813 INFO    ] Checking for camera pi updates...
[2026-06-13 22:34:21,833.833 INFO    ] 200
[2026-06-13 22:34:21,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:21,860.860 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:34:22,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:22,004.004 INFO    ] No camera update needed
[2026-06-13 22:34:22,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:34:22,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:34:22,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:34:22,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:24,039.039 INFO    ] ================================================
[2026-06-13 22:34:24,048.048 INFO    ] Launching Daemon at Sat Jun 13 22:34:24 IST 2026
[2026-06-13 22:34:24,056.056 INFO    ] ================================================
[2026-06-13 22:34:24,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:24
[2026-06-13 22:34:24,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:34:24,890.890 INFO    ] Initializing speech engine...
[2026-06-13 22:34:24,898.898 INFO    ] 2026-06-13 22:34:24
[2026-06-13 22:34:25,134.134 INFO    ] 2026-06-13 22:34:25
[2026-06-13 22:34:25,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:34:25,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:34:25,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:34:25,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:34:25,576.576 INFO    ] time= 13/06/2026 22:34:25
[2026-06-13 22:34:25,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:34:25,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:34:25,696.696 INFO    ] No existing commands found in stream
[2026-06-13 22:34:30,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:34:30,710.710 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 22:34:33,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:34:33,496.496 INFO    ] Checking for system updates...
[2026-06-13 22:34:33,533.533 INFO    ] 200
[2026-06-13 22:34:33,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:33,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:33,597.597 INFO    ] No update needed
[2026-06-13 22:34:33,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 22:34:33,634.634 INFO    ] 200
[2026-06-13 22:34:33,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:33,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:34:33,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:33,727.727 INFO    ] No camera update needed
[2026-06-13 22:34:33,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:34:33,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:34:33,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:34:33,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:35,786.786 INFO    ] ================================================
[2026-06-13 22:34:35,801.801 INFO    ] Launching Daemon at Sat Jun 13 22:34:35 IST 2026
[2026-06-13 22:34:35,812.812 INFO    ] ================================================
[2026-06-13 22:34:36,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:36
[2026-06-13 22:34:36,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:34:36,629.629 INFO    ] Initializing speech engine...
[2026-06-13 22:34:36,638.638 INFO    ] 2026-06-13 22:34:36
[2026-06-13 22:34:36,845.845 INFO    ] 2026-06-13 22:34:36
[2026-06-13 22:34:36,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:34:37,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:34:37,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:34:37,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:34:37,262.262 INFO    ] time= 13/06/2026 22:34:37
[2026-06-13 22:34:37,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:34:37,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:34:37,362.362 INFO    ] No existing commands found in stream
[2026-06-13 22:34:42,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:34:42,376.376 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 22:34:46,330.330 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:34:46,331.331 INFO    ] Checking for system updates...
[2026-06-13 22:34:46,353.353 INFO    ] 200
[2026-06-13 22:34:46,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:46,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:46,386.386 INFO    ] No update needed
[2026-06-13 22:34:46,387.387 INFO    ] Checking for camera pi updates...
[2026-06-13 22:34:46,407.407 INFO    ] 200
[2026-06-13 22:34:46,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:46,434.434 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:34:46,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:46,474.474 INFO    ] No camera update needed
[2026-06-13 22:34:46,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:34:46,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:34:46,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:34:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:48,520.520 INFO    ] ================================================
[2026-06-13 22:34:48,535.535 INFO    ] Launching Daemon at Sat Jun 13 22:34:48 IST 2026
[2026-06-13 22:34:48,549.549 INFO    ] ================================================
[2026-06-13 22:34:48,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:48
[2026-06-13 22:34:49,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:34:49,346.346 INFO    ] Initializing speech engine...
[2026-06-13 22:34:49,349.349 INFO    ] 2026-06-13 22:34:49
[2026-06-13 22:34:49,552.552 INFO    ] 2026-06-13 22:34:49
[2026-06-13 22:34:49,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:34:49,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:34:49,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:34:49,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:34:49,959.959 INFO    ] time= 13/06/2026 22:34:49
[2026-06-13 22:34:49,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:34:49,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:34:50,064.064 INFO    ] No existing commands found in stream
[2026-06-13 22:34:55,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:34:55,076.076 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 22:34:57,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:34:57,361.361 INFO    ] Checking for system updates...
[2026-06-13 22:34:57,382.382 INFO    ] 200
[2026-06-13 22:34:57,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:57,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:57,416.416 INFO    ] No update needed
[2026-06-13 22:34:57,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 22:34:57,437.437 INFO    ] 200
[2026-06-13 22:34:57,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:34:57,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:34:57,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:34:57,505.505 INFO    ] No camera update needed
[2026-06-13 22:34:57,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:34:57,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:34:57,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:34:57,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:34:59,551.551 INFO    ] ================================================
[2026-06-13 22:34:59,566.566 INFO    ] Launching Daemon at Sat Jun 13 22:34:59 IST 2026
[2026-06-13 22:34:59,577.577 INFO    ] ================================================
[2026-06-13 22:34:59,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:34:59
[2026-06-13 22:35:00,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:00,411.411 INFO    ] Initializing speech engine...
[2026-06-13 22:35:00,417.417 INFO    ] 2026-06-13 22:35:00
[2026-06-13 22:35:00,636.636 INFO    ] 2026-06-13 22:35:00
[2026-06-13 22:35:00,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:00,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:00,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:01,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:01,051.051 INFO    ] time= 13/06/2026 22:35:01
[2026-06-13 22:35:01,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:01,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:01,187.187 INFO    ] No existing commands found in stream
[2026-06-13 22:35:06,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:06,201.201 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 22:35:08,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:35:08,406.406 INFO    ] Checking for system updates...
[2026-06-13 22:35:08,428.428 INFO    ] 200
[2026-06-13 22:35:08,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:08,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:08,463.463 INFO    ] No update needed
[2026-06-13 22:35:08,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 22:35:08,485.485 INFO    ] 200
[2026-06-13 22:35:08,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:08,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:35:08,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:08,549.549 INFO    ] No camera update needed
[2026-06-13 22:35:08,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:35:08,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:35:08,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:35:08,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:35:10,595.595 INFO    ] ================================================
[2026-06-13 22:35:10,611.611 INFO    ] Launching Daemon at Sat Jun 13 22:35:10 IST 2026
[2026-06-13 22:35:10,622.622 INFO    ] ================================================
[2026-06-13 22:35:10,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:35:10
[2026-06-13 22:35:11,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:11,408.408 INFO    ] Initializing speech engine...
[2026-06-13 22:35:11,413.413 INFO    ] 2026-06-13 22:35:11
[2026-06-13 22:35:11,633.633 INFO    ] 2026-06-13 22:35:11
[2026-06-13 22:35:11,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:11,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:11,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:11,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:12,006.006 INFO    ] time= 13/06/2026 22:35:11
[2026-06-13 22:35:12,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:12,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:12,083.083 INFO    ] No existing commands found in stream
[2026-06-13 22:35:17,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:17,101.101 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-13 22:35:19,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:35:19,335.335 INFO    ] Checking for system updates...
[2026-06-13 22:35:19,357.357 INFO    ] 200
[2026-06-13 22:35:19,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:19,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:19,392.392 INFO    ] No update needed
[2026-06-13 22:35:19,393.393 INFO    ] Checking for camera pi updates...
[2026-06-13 22:35:19,414.414 INFO    ] 200
[2026-06-13 22:35:19,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:19,440.440 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:35:19,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:19,477.477 INFO    ] No camera update needed
[2026-06-13 22:35:19,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:35:19,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:35:19,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:35:19,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:35:21,526.526 INFO    ] ================================================
[2026-06-13 22:35:21,541.541 INFO    ] Launching Daemon at Sat Jun 13 22:35:21 IST 2026
[2026-06-13 22:35:21,552.552 INFO    ] ================================================
[2026-06-13 22:35:21,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:35:21
[2026-06-13 22:35:22,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:22,337.337 INFO    ] Initializing speech engine...
[2026-06-13 22:35:22,342.342 INFO    ] 2026-06-13 22:35:22
[2026-06-13 22:35:22,547.547 INFO    ] 2026-06-13 22:35:22
[2026-06-13 22:35:22,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:22,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:22,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:22,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:22,961.961 INFO    ] time= 13/06/2026 22:35:22
[2026-06-13 22:35:22,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:23,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:23,066.066 INFO    ] No existing commands found in stream
[2026-06-13 22:35:28,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:28,080.080 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-13 22:35:29,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:35:29,736.736 INFO    ] Checking for system updates...
[2026-06-13 22:35:29,759.759 INFO    ] 200
[2026-06-13 22:35:29,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:29,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:35:29,795.795 INFO    ] No update needed
[2026-06-13 22:35:29,796.796 INFO    ] Checking for camera pi updates...
[2026-06-13 22:35:29,816.816 INFO    ] 200
[2026-06-13 22:35:29,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:29,841.841 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:35:29,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:35:29,884.884 INFO    ] No camera update needed
[2026-06-13 22:35:29,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:35:29,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:35:29,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:35:29,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:35:31,932.932 INFO    ] ================================================
[2026-06-13 22:35:31,947.947 INFO    ] Launching Daemon at Sat Jun 13 22:35:31 IST 2026
[2026-06-13 22:35:31,957.957 INFO    ] ================================================
[2026-06-13 22:35:32,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:35:32
[2026-06-13 22:35:32,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:32,810.810 INFO    ] Initializing speech engine...
[2026-06-13 22:35:32,814.814 INFO    ] 2026-06-13 22:35:32
[2026-06-13 22:35:33,033.033 INFO    ] 2026-06-13 22:35:33
[2026-06-13 22:35:33,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:33,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:33,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:33,448.448 INFO    ] time= 13/06/2026 22:35:33
[2026-06-13 22:35:33,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:33,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:33,560.560 INFO    ] No existing commands found in stream
[2026-06-13 22:35:38,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:38,573.573 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 22:35:39,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:35:39,518.518 INFO    ] Checking for system updates...
[2026-06-13 22:35:39,541.541 INFO    ] 200
[2026-06-13 22:35:39,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:39,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:35:39,578.578 INFO    ] No update needed
[2026-06-13 22:35:39,579.579 INFO    ] Checking for camera pi updates...
[2026-06-13 22:35:39,601.601 INFO    ] 200
[2026-06-13 22:35:39,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:39,625.625 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:35:39,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:35:39,663.663 INFO    ] No camera update needed
[2026-06-13 22:35:39,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:35:39,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:35:39,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:35:39,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:35:41,710.710 INFO    ] ================================================
[2026-06-13 22:35:41,725.725 INFO    ] Launching Daemon at Sat Jun 13 22:35:41 IST 2026
[2026-06-13 22:35:41,736.736 INFO    ] ================================================
[2026-06-13 22:35:42,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:35:42
[2026-06-13 22:35:42,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:42,507.507 INFO    ] Initializing speech engine...
[2026-06-13 22:35:42,512.512 INFO    ] 2026-06-13 22:35:42
[2026-06-13 22:35:42,729.729 INFO    ] 2026-06-13 22:35:42
[2026-06-13 22:35:42,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:42,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:42,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:43,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:43,144.144 INFO    ] time= 13/06/2026 22:35:43
[2026-06-13 22:35:43,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:43,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:43,241.241 INFO    ] No existing commands found in stream
[2026-06-13 22:35:48,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:48,253.253 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-13 22:35:51,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:35:51,290.290 INFO    ] Checking for system updates...
[2026-06-13 22:35:51,313.313 INFO    ] 200
[2026-06-13 22:35:51,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:51,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:51,348.348 INFO    ] No update needed
[2026-06-13 22:35:51,350.350 INFO    ] Checking for camera pi updates...
[2026-06-13 22:35:51,370.370 INFO    ] 200
[2026-06-13 22:35:51,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:35:51,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:35:51,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:35:51,433.433 INFO    ] No camera update needed
[2026-06-13 22:35:51,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:35:51,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:35:51,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:35:51,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:35:53,481.481 INFO    ] ================================================
[2026-06-13 22:35:53,500.500 INFO    ] Launching Daemon at Sat Jun 13 22:35:53 IST 2026
[2026-06-13 22:35:53,511.511 INFO    ] ================================================
[2026-06-13 22:35:53,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:35:53
[2026-06-13 22:35:54,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:35:54,314.314 INFO    ] Initializing speech engine...
[2026-06-13 22:35:54,319.319 INFO    ] 2026-06-13 22:35:54
[2026-06-13 22:35:54,524.524 INFO    ] 2026-06-13 22:35:54
[2026-06-13 22:35:54,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:35:54,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:35:54,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:35:54,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:35:54,804.804 INFO    ] time= 13/06/2026 22:35:54
[2026-06-13 22:35:54,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:35:54,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:35:54,914.914 INFO    ] No existing commands found in stream
[2026-06-13 22:35:59,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:35:59,949.949 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-13 22:36:02,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:36:02,531.531 INFO    ] Checking for system updates...
[2026-06-13 22:36:02,572.572 INFO    ] 200
[2026-06-13 22:36:02,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:02,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:02,644.644 INFO    ] No update needed
[2026-06-13 22:36:02,647.647 INFO    ] Checking for camera pi updates...
[2026-06-13 22:36:02,690.690 INFO    ] 200
[2026-06-13 22:36:02,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:02,754.754 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:36:02,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:02,788.788 INFO    ] No camera update needed
[2026-06-13 22:36:02,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:36:02,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:36:02,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:36:02,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:36:04,847.847 INFO    ] ================================================
[2026-06-13 22:36:04,862.862 INFO    ] Launching Daemon at Sat Jun 13 22:36:04 IST 2026
[2026-06-13 22:36:04,873.873 INFO    ] ================================================
[2026-06-13 22:36:05,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:36:05
[2026-06-13 22:36:05,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:36:05,679.679 INFO    ] Initializing speech engine...
[2026-06-13 22:36:05,684.684 INFO    ] 2026-06-13 22:36:05
[2026-06-13 22:36:05,886.886 INFO    ] 2026-06-13 22:36:05
[2026-06-13 22:36:05,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:36:06,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:36:06,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:36:06,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:36:06,285.285 INFO    ] time= 13/06/2026 22:36:06
[2026-06-13 22:36:06,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:36:06,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:36:06,400.400 INFO    ] No existing commands found in stream
[2026-06-13 22:36:11,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:36:11,412.412 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 22:36:12,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:36:12,782.782 INFO    ] Checking for system updates...
[2026-06-13 22:36:12,802.802 INFO    ] 200
[2026-06-13 22:36:12,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:12,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:12,835.835 INFO    ] No update needed
[2026-06-13 22:36:12,836.836 INFO    ] Checking for camera pi updates...
[2026-06-13 22:36:12,858.858 INFO    ] 200
[2026-06-13 22:36:12,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:12,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:36:12,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:12,925.925 INFO    ] No camera update needed
[2026-06-13 22:36:12,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:36:12,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:36:12,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:36:12,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:36:14,973.973 INFO    ] ================================================
[2026-06-13 22:36:14,988.988 INFO    ] Launching Daemon at Sat Jun 13 22:36:14 IST 2026
[2026-06-13 22:36:15,999.999 INFO    ] ================================================
[2026-06-13 22:36:15,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:36:15
[2026-06-13 22:36:16,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:36:16,294.294 INFO    ] Initializing speech engine...
[2026-06-13 22:36:16,299.299 INFO    ] 2026-06-13 22:36:16
[2026-06-13 22:36:16,505.505 INFO    ] 2026-06-13 22:36:16
[2026-06-13 22:36:16,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:36:16,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:36:16,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:36:16,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:36:16,906.906 INFO    ] time= 13/06/2026 22:36:16
[2026-06-13 22:36:16,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:36:16,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:36:17,021.021 INFO    ] No existing commands found in stream
[2026-06-13 22:36:22,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:36:22,039.039 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 22:36:25,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:36:25,215.215 INFO    ] Checking for system updates...
[2026-06-13 22:36:25,238.238 INFO    ] 200
[2026-06-13 22:36:25,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:25,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:25,274.274 INFO    ] No update needed
[2026-06-13 22:36:25,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 22:36:25,295.295 INFO    ] 200
[2026-06-13 22:36:25,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:25,322.322 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:36:25,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:36:25,463.463 INFO    ] No camera update needed
[2026-06-13 22:36:25,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:36:25,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:36:25,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:36:25,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:36:27,512.512 INFO    ] ================================================
[2026-06-13 22:36:27,527.527 INFO    ] Launching Daemon at Sat Jun 13 22:36:27 IST 2026
[2026-06-13 22:36:27,538.538 INFO    ] ================================================
[2026-06-13 22:36:27,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:36:27
[2026-06-13 22:36:28,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:36:28,365.365 INFO    ] Initializing speech engine...
[2026-06-13 22:36:28,373.373 INFO    ] 2026-06-13 22:36:28
[2026-06-13 22:36:28,583.583 INFO    ] 2026-06-13 22:36:28
[2026-06-13 22:36:28,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:36:28,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:36:28,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:36:28,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:36:28,993.993 INFO    ] time= 13/06/2026 22:36:28
[2026-06-13 22:36:29,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:36:29,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:36:29,152.152 INFO    ] No existing commands found in stream
[2026-06-13 22:36:34,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:36:34,166.166 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 22:36:37,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:36:37,225.225 INFO    ] Checking for system updates...
[2026-06-13 22:36:37,247.247 INFO    ] 200
[2026-06-13 22:36:37,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:37,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:36:37,283.283 INFO    ] No update needed
[2026-06-13 22:36:37,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 22:36:37,309.309 INFO    ] 200
[2026-06-13 22:36:37,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:37,338.338 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:36:37,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:36:37,374.374 INFO    ] No camera update needed
[2026-06-13 22:36:37,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:36:37,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:36:37,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:36:37,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:36:39,416.416 INFO    ] ================================================
[2026-06-13 22:36:39,425.425 INFO    ] Launching Daemon at Sat Jun 13 22:36:39 IST 2026
[2026-06-13 22:36:39,431.431 INFO    ] ================================================
[2026-06-13 22:36:39,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:36:39
[2026-06-13 22:36:40,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:36:40,254.254 INFO    ] Initializing speech engine...
[2026-06-13 22:36:40,258.258 INFO    ] 2026-06-13 22:36:40
[2026-06-13 22:36:40,488.488 INFO    ] 2026-06-13 22:36:40
[2026-06-13 22:36:40,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:36:40,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:36:40,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:36:40,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:36:40,908.908 INFO    ] time= 13/06/2026 22:36:40
[2026-06-13 22:36:40,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:36:40,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:36:41,047.047 INFO    ] No existing commands found in stream
[2026-06-13 22:36:46,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:36:46,061.061 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 22:36:47,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:36:47,425.425 INFO    ] Checking for system updates...
[2026-06-13 22:36:47,447.447 INFO    ] 200
[2026-06-13 22:36:47,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:47,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:36:47,483.483 INFO    ] No update needed
[2026-06-13 22:36:47,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 22:36:47,505.505 INFO    ] 200
[2026-06-13 22:36:47,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:47,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:36:47,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:36:47,573.573 INFO    ] No camera update needed
[2026-06-13 22:36:47,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:36:47,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:36:47,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:36:47,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:36:49,620.620 INFO    ] ================================================
[2026-06-13 22:36:49,636.636 INFO    ] Launching Daemon at Sat Jun 13 22:36:49 IST 2026
[2026-06-13 22:36:49,648.648 INFO    ] ================================================
[2026-06-13 22:36:50,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:36:50
[2026-06-13 22:36:50,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:36:50,482.482 INFO    ] Initializing speech engine...
[2026-06-13 22:36:50,494.494 INFO    ] 2026-06-13 22:36:50
[2026-06-13 22:36:50,704.704 INFO    ] 2026-06-13 22:36:50
[2026-06-13 22:36:50,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:36:50,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:36:50,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:36:51,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:36:51,105.105 INFO    ] time= 13/06/2026 22:36:51
[2026-06-13 22:36:51,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:36:51,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:36:51,222.222 INFO    ] No existing commands found in stream
[2026-06-13 22:36:56,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:36:56,234.234 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 22:36:59,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:36:59,938.938 INFO    ] Checking for system updates...
[2026-06-13 22:36:59,961.961 INFO    ] 200
[2026-06-13 22:36:59,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:36:59,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:36:59,994.994 INFO    ] No update needed
[2026-06-13 22:36:59,995.995 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:00,016.016 INFO    ] 200
[2026-06-13 22:37:00,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:00,041.041 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:00,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:00,084.084 INFO    ] No camera update needed
[2026-06-13 22:37:00,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:00,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:00,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:00,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:02,125.125 INFO    ] ================================================
[2026-06-13 22:37:02,136.136 INFO    ] Launching Daemon at Sat Jun 13 22:37:02 IST 2026
[2026-06-13 22:37:02,143.143 INFO    ] ================================================
[2026-06-13 22:37:02,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:37:02
[2026-06-13 22:37:02,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:37:02,980.980 INFO    ] Initializing speech engine...
[2026-06-13 22:37:02,984.984 INFO    ] 2026-06-13 22:37:02
[2026-06-13 22:37:03,187.187 INFO    ] 2026-06-13 22:37:03
[2026-06-13 22:37:03,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:37:03,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:37:03,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:37:03,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:37:03,592.592 INFO    ] time= 13/06/2026 22:37:03
[2026-06-13 22:37:03,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:37:03,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:37:03,791.791 INFO    ] No existing commands found in stream
[2026-06-13 22:37:08,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:37:08,806.806 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 22:37:13,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:37:13,110.110 INFO    ] Checking for system updates...
[2026-06-13 22:37:13,132.132 INFO    ] 200
[2026-06-13 22:37:13,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:13,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:37:13,165.165 INFO    ] No update needed
[2026-06-13 22:37:13,166.166 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:13,186.186 INFO    ] 200
[2026-06-13 22:37:13,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:13,212.212 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:13,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:37:13,254.254 INFO    ] No camera update needed
[2026-06-13 22:37:13,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:13,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:13,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:13,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:15,305.305 INFO    ] ================================================
[2026-06-13 22:37:15,320.320 INFO    ] Launching Daemon at Sat Jun 13 22:37:15 IST 2026
[2026-06-13 22:37:15,331.331 INFO    ] ================================================
[2026-06-13 22:37:15,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:37:15
[2026-06-13 22:37:16,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:37:16,176.176 INFO    ] Initializing speech engine...
[2026-06-13 22:37:16,182.182 INFO    ] 2026-06-13 22:37:16
[2026-06-13 22:37:16,388.388 INFO    ] 2026-06-13 22:37:16
[2026-06-13 22:37:16,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:37:16,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:37:16,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:37:16,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:37:16,808.808 INFO    ] time= 13/06/2026 22:37:16
[2026-06-13 22:37:16,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:37:16,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:37:16,908.908 INFO    ] No existing commands found in stream
[2026-06-13 22:37:21,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:37:21,921.921 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 22:37:25,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:37:25,374.374 INFO    ] Checking for system updates...
[2026-06-13 22:37:25,396.396 INFO    ] 200
[2026-06-13 22:37:25,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:25,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:25,435.435 INFO    ] No update needed
[2026-06-13 22:37:25,437.437 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:25,456.456 INFO    ] 200
[2026-06-13 22:37:25,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:25,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:25,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:25,523.523 INFO    ] No camera update needed
[2026-06-13 22:37:25,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:25,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:25,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:25,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:27,571.571 INFO    ] ================================================
[2026-06-13 22:37:27,586.586 INFO    ] Launching Daemon at Sat Jun 13 22:37:27 IST 2026
[2026-06-13 22:37:27,597.597 INFO    ] ================================================
[2026-06-13 22:37:27,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:37:27
[2026-06-13 22:37:28,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:37:28,403.403 INFO    ] Initializing speech engine...
[2026-06-13 22:37:28,411.411 INFO    ] 2026-06-13 22:37:28
[2026-06-13 22:37:28,638.638 INFO    ] 2026-06-13 22:37:28
[2026-06-13 22:37:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:37:28,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:37:28,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:37:29,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:37:29,079.079 INFO    ] time= 13/06/2026 22:37:29
[2026-06-13 22:37:29,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:37:29,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:37:29,196.196 INFO    ] No existing commands found in stream
[2026-06-13 22:37:34,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:37:34,210.210 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-13 22:37:35,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:37:35,117.117 INFO    ] Checking for system updates...
[2026-06-13 22:37:35,138.138 INFO    ] 200
[2026-06-13 22:37:35,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:35,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:35,172.172 INFO    ] No update needed
[2026-06-13 22:37:35,173.173 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:35,194.194 INFO    ] 200
[2026-06-13 22:37:35,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:35,221.221 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:35,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:37:35,259.259 INFO    ] No camera update needed
[2026-06-13 22:37:35,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:35,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:35,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:35,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:37,308.308 INFO    ] ================================================
[2026-06-13 22:37:37,323.323 INFO    ] Launching Daemon at Sat Jun 13 22:37:37 IST 2026
[2026-06-13 22:37:37,334.334 INFO    ] ================================================
[2026-06-13 22:37:37,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:37:37
[2026-06-13 22:37:38,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:37:38,685.685 INFO    ] Initializing speech engine...
[2026-06-13 22:37:38,694.694 INFO    ] 2026-06-13 22:37:38
[2026-06-13 22:37:38,953.953 INFO    ] 2026-06-13 22:37:38
[2026-06-13 22:37:39,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:37:39,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:37:39,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:37:39,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:37:39,310.310 INFO    ] time= 13/06/2026 22:37:39
[2026-06-13 22:37:39,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:37:39,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:37:39,489.489 INFO    ] No existing commands found in stream
[2026-06-13 22:37:44,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:37:44,518.518 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 22:37:46,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:37:46,785.785 INFO    ] Checking for system updates...
[2026-06-13 22:37:46,805.805 INFO    ] 200
[2026-06-13 22:37:46,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:46,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:37:46,838.838 INFO    ] No update needed
[2026-06-13 22:37:46,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:46,860.860 INFO    ] 200
[2026-06-13 22:37:46,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:46,886.886 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:46,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:37:46,922.922 INFO    ] No camera update needed
[2026-06-13 22:37:46,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:46,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:46,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:46,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:48,970.970 INFO    ] ================================================
[2026-06-13 22:37:48,986.986 INFO    ] Launching Daemon at Sat Jun 13 22:37:48 IST 2026
[2026-06-13 22:37:49,997.997 INFO    ] ================================================
[2026-06-13 22:37:49,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:37:49
[2026-06-13 22:37:49,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:37:49,787.787 INFO    ] Initializing speech engine...
[2026-06-13 22:37:49,797.797 INFO    ] 2026-06-13 22:37:49
[2026-06-13 22:37:50,004.004 INFO    ] 2026-06-13 22:37:49
[2026-06-13 22:37:50,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:37:50,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:37:50,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:37:50,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:37:50,411.411 INFO    ] time= 13/06/2026 22:37:50
[2026-06-13 22:37:50,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:37:50,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:37:50,551.551 INFO    ] No existing commands found in stream
[2026-06-13 22:37:55,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:37:55,566.566 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 22:37:57,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:37:57,556.556 INFO    ] Checking for system updates...
[2026-06-13 22:37:57,577.577 INFO    ] 200
[2026-06-13 22:37:57,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:57,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:57,610.610 INFO    ] No update needed
[2026-06-13 22:37:57,611.611 INFO    ] Checking for camera pi updates...
[2026-06-13 22:37:57,633.633 INFO    ] 200
[2026-06-13 22:37:57,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:37:57,662.662 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:37:57,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:37:57,700.700 INFO    ] No camera update needed
[2026-06-13 22:37:57,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:37:57,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:37:57,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:37:57,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:37:59,747.747 INFO    ] ================================================
[2026-06-13 22:37:59,762.762 INFO    ] Launching Daemon at Sat Jun 13 22:37:59 IST 2026
[2026-06-13 22:37:59,773.773 INFO    ] ================================================
[2026-06-13 22:38:00,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:00
[2026-06-13 22:38:00,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:00,663.663 INFO    ] Initializing speech engine...
[2026-06-13 22:38:00,670.670 INFO    ] 2026-06-13 22:38:00
[2026-06-13 22:38:00,879.879 INFO    ] 2026-06-13 22:38:00
[2026-06-13 22:38:00,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:01,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:01,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:01,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:01,311.311 INFO    ] time= 13/06/2026 22:38:01
[2026-06-13 22:38:01,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:01,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:01,408.408 INFO    ] No existing commands found in stream
[2026-06-13 22:38:06,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:38:06,422.422 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-13 22:38:07,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:38:07,013.013 INFO    ] Checking for system updates...
[2026-06-13 22:38:07,036.036 INFO    ] 200
[2026-06-13 22:38:07,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:07,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:38:07,075.075 INFO    ] No update needed
[2026-06-13 22:38:07,076.076 INFO    ] Checking for camera pi updates...
[2026-06-13 22:38:07,099.099 INFO    ] 200
[2026-06-13 22:38:07,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:07,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:38:07,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:38:07,161.161 INFO    ] No camera update needed
[2026-06-13 22:38:07,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:38:07,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:38:07,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:38:07,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:38:09,208.208 INFO    ] ================================================
[2026-06-13 22:38:09,224.224 INFO    ] Launching Daemon at Sat Jun 13 22:38:09 IST 2026
[2026-06-13 22:38:09,234.234 INFO    ] ================================================
[2026-06-13 22:38:09,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:09
[2026-06-13 22:38:09,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:10,109.109 INFO    ] Initializing speech engine...
[2026-06-13 22:38:10,112.112 INFO    ] 2026-06-13 22:38:10
[2026-06-13 22:38:10,327.327 INFO    ] 2026-06-13 22:38:10
[2026-06-13 22:38:10,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:10,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:10,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:10,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:10,750.750 INFO    ] time= 13/06/2026 22:38:10
[2026-06-13 22:38:10,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:10,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:10,907.907 INFO    ] No existing commands found in stream
[2026-06-13 22:38:15,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:38:15,926.926 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-13 22:38:18,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:38:18,710.710 INFO    ] Checking for system updates...
[2026-06-13 22:38:18,732.732 INFO    ] 200
[2026-06-13 22:38:18,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:18,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:38:18,771.771 INFO    ] No update needed
[2026-06-13 22:38:18,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 22:38:18,795.795 INFO    ] 200
[2026-06-13 22:38:18,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:18,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:38:18,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:38:18,859.859 INFO    ] No camera update needed
[2026-06-13 22:38:18,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:38:18,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:38:18,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:38:18,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:38:20,907.907 INFO    ] ================================================
[2026-06-13 22:38:20,922.922 INFO    ] Launching Daemon at Sat Jun 13 22:38:20 IST 2026
[2026-06-13 22:38:20,933.933 INFO    ] ================================================
[2026-06-13 22:38:21,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:21
[2026-06-13 22:38:21,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:21,803.803 INFO    ] Initializing speech engine...
[2026-06-13 22:38:21,808.808 INFO    ] 2026-06-13 22:38:21
[2026-06-13 22:38:22,016.016 INFO    ] 2026-06-13 22:38:21
[2026-06-13 22:38:22,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:22,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:22,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:22,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:22,396.396 INFO    ] time= 13/06/2026 22:38:22
[2026-06-13 22:38:22,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:22,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:22,525.525 INFO    ] No existing commands found in stream
[2026-06-13 22:38:27,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:38:27,564.564 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-13 22:38:30,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:38:30,256.256 INFO    ] Checking for system updates...
[2026-06-13 22:38:30,278.278 INFO    ] 200
[2026-06-13 22:38:30,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:30,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:38:30,312.312 INFO    ] No update needed
[2026-06-13 22:38:30,314.314 INFO    ] Checking for camera pi updates...
[2026-06-13 22:38:30,334.334 INFO    ] 200
[2026-06-13 22:38:30,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:30,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:38:30,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:38:30,505.505 INFO    ] No camera update needed
[2026-06-13 22:38:30,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:38:30,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:38:30,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:38:30,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:38:32,545.545 INFO    ] ================================================
[2026-06-13 22:38:32,555.555 INFO    ] Launching Daemon at Sat Jun 13 22:38:32 IST 2026
[2026-06-13 22:38:32,563.563 INFO    ] ================================================
[2026-06-13 22:38:32,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:32
[2026-06-13 22:38:33,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:33,502.502 INFO    ] Initializing speech engine...
[2026-06-13 22:38:33,511.511 INFO    ] 2026-06-13 22:38:33
[2026-06-13 22:38:33,762.762 INFO    ] 2026-06-13 22:38:33
[2026-06-13 22:38:33,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:33,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:34,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:34,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:34,142.142 INFO    ] time= 13/06/2026 22:38:34
[2026-06-13 22:38:34,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:34,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:34,268.268 INFO    ] No existing commands found in stream
[2026-06-13 22:38:39,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:38:39,283.283 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 22:38:40,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:38:40,826.826 INFO    ] Checking for system updates...
[2026-06-13 22:38:40,848.848 INFO    ] 200
[2026-06-13 22:38:40,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:40,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:38:40,883.883 INFO    ] No update needed
[2026-06-13 22:38:40,885.885 INFO    ] Checking for camera pi updates...
[2026-06-13 22:38:40,905.905 INFO    ] 200
[2026-06-13 22:38:40,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:40,930.930 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:38:40,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:38:40,968.968 INFO    ] No camera update needed
[2026-06-13 22:38:40,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:38:40,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:38:40,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:38:40,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:38:43,009.009 INFO    ] ================================================
[2026-06-13 22:38:43,017.017 INFO    ] Launching Daemon at Sat Jun 13 22:38:43 IST 2026
[2026-06-13 22:38:43,023.023 INFO    ] ================================================
[2026-06-13 22:38:43,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:43
[2026-06-13 22:38:43,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:43,837.837 INFO    ] Initializing speech engine...
[2026-06-13 22:38:43,841.841 INFO    ] 2026-06-13 22:38:43
[2026-06-13 22:38:44,047.047 INFO    ] 2026-06-13 22:38:44
[2026-06-13 22:38:44,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:44,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:44,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:44,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:44,353.353 INFO    ] time= 13/06/2026 22:38:44
[2026-06-13 22:38:44,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:44,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:44,544.544 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 22:38:44,547.547 INFO    ] Checking historical command: ID=1781370523744-0
[2026-06-13 22:38:44,550.550 INFO    ] process_and_cleanup_command: msg_id=1781370523744-0
[2026-06-13 22:38:44,553.553 INFO    ] is_command_expired: timestamp=2026-06-13T17:08:43.652Z, expiry=30s
[2026-06-13 22:38:44,690.690 INFO    ] Command removed from stream: 1781370523744-0. returning for processing...
[2026-06-13 22:38:44,710.710 INFO    ] ***** get_valid_command
[2026-06-13 22:38:44,717.717 INFO    ] {'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781370523652-l4k9jv4fs","orderId":"TM08202203260613223808020","is_vending":false}', 'source': 'webapp', 'timestamp': '2026-06-13T17:08:43.652Z'}
[2026-06-13 22:38:44,720.720 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613223808020', 'is_vending': False, 'request_id': 'start-order-1781370523652-l4k9jv4fs'}
[2026-06-13 22:38:44,771.771 INFO    ] Handling start order...
[2026-06-13 22:38:44,774.774 INFO    ] handle_start_order_command
[2026-06-13 22:38:44,831.831 INFO    ] _send_start_order_success: request_id=start-order-1781370523652-l4k9jv4fs, order_id=TM08202203260613223808020
[2026-06-13 22:38:44,835.835 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:38:44,977.977 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781370524893-0
[2026-06-13 22:38:44,983.983 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:38:44,989.989 INFO    ] Checking for system updates...
[2026-06-13 22:38:45,041.041 INFO    ] 200
[2026-06-13 22:38:45,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:45,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:38:45,110.110 INFO    ] No update needed
[2026-06-13 22:38:45,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 22:38:45,161.161 INFO    ] 200
[2026-06-13 22:38:45,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:45,228.228 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:38:45,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:38:45,285.285 INFO    ] No camera update needed
[2026-06-13 22:38:45,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:38:45,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:38:45,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:38:45,337.337 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:38:45,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:38:47,403.403 INFO    ] ================================================
[2026-06-13 22:38:47,418.418 INFO    ] Launching Daemon at Sat Jun 13 22:38:47 IST 2026
[2026-06-13 22:38:47,430.430 INFO    ] ================================================
[2026-06-13 22:38:47,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:38:47
[2026-06-13 22:38:48,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:38:48,281.281 INFO    ] Initializing speech engine...
[2026-06-13 22:38:48,286.286 INFO    ] 2026-06-13 22:38:48
[2026-06-13 22:38:48,491.491 INFO    ] 2026-06-13 22:38:48
[2026-06-13 22:38:48,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:38:48,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:38:48,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:38:48,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:38:48,900.900 INFO    ] time= 13/06/2026 22:38:48
[2026-06-13 22:38:48,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:38:48,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:38:49,006.006 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 22:38:49,007.007 INFO    ] Checking historical command: ID=1781370524893-0
[2026-06-13 22:38:49,033.033 INFO    ] process_and_cleanup_command: msg_id=1781370524893-0
[2026-06-13 22:38:49,039.039 INFO    ] is_command_expired: timestamp=2026-06-13T17:08:44.832381Z, expiry=30s
[2026-06-13 22:38:49,142.142 INFO    ] Command removed from stream: 1781370524893-0. returning for processing...
[2026-06-13 22:38:49,146.146 INFO    ] ***** get_valid_command
[2026-06-13 22:38:49,149.149 INFO    ] {'status': 'success', 'message': 'start-order success', 'timestamp': '2026-06-13T17:08:44.832381Z', 'metadata_request_id': 'start-order-1781370523652-l4k9jv4fs', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613223808020', 'imei': 'TM08202203'}
[2026-06-13 22:38:49,153.153 INFO    ] Checking historical command: ID=1781370527083-0
[2026-06-13 22:38:49,156.156 INFO    ] process_and_cleanup_command: msg_id=1781370527083-0
[2026-06-13 22:38:49,160.160 INFO    ] is_command_expired: timestamp=2026-06-13T17:08:46.899Z, expiry=30s
[2026-06-13 22:38:49,206.206 INFO    ] Command removed from stream: 1781370527083-0. returning for processing...
[2026-06-13 22:38:49,210.210 INFO    ] ***** get_valid_command
[2026-06-13 22:38:49,213.213 INFO    ] {'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1781370526899-xvp466zyz","orderId":"TM08202203260613223808020","is_vending":false,"accessCode":"60772575"}', 'timeout': '60', 'timestamp': '2026-06-13T17:08:46.899Z'}
[2026-06-13 22:38:49,215.215 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781370526899-xvp466zyz', 'is_vending': False, 'orderId': 'TM08202203260613223808020', 'accessCode': '60772575'}
[2026-06-13 22:38:49,218.218 INFO    ] Handling process order...
[2026-06-13 22:38:49,221.221 INFO    ] Processing process-order command...
[2026-06-13 22:38:49,225.225 INFO    ] 🔍 Lock file Order ID: TM08202203260613223808020, TS: 2026-06-13 22:38:44
[2026-06-13 22:38:49,233.233 INFO    ] ✅ Order lock valid for TM08202203260613223808020
[2026-06-13 22:38:49,237.237 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:38:49,240.240 INFO    ] processing access code 60772575 for order TM08202203260613223808020
[2026-06-13 22:38:49,244.244 INFO    ] 🔍 Lock file Order ID: TM08202203260613223808020, TS: 2026-06-13 22:38:44
[2026-06-13 22:38:49,248.248 INFO    ] ✅ Order lock valid for TM08202203260613223808020
[2026-06-13 22:38:49,252.252 INFO    ] 2026-06-13 22:38:49
[2026-06-13 22:38:49,277.277 INFO    ] 200
[2026-06-13 22:38:49,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:38:49,285.285 INFO    ] 60772575
[2026-06-13 22:38:49,288.288 INFO    ] 2026-06-13 22:38:49
[2026-06-13 22:38:49,292.292 INFO    ] session id :949532239
[2026-06-13 22:38:49,295.295 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=60772575&imei=TM08202203&session_id=949532239
[2026-06-13 22:38:50,291.291 INFO    ] 200
[2026-06-13 22:38:50,304.304 INFO    ] {"data": {"mobile": "9703868607", "order_id": "TM08202203260613223808020", "bill_amount": "65", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500651-8004.webp", "skuid": "4500651", "door_id": "2", "mrp": "45", "offer_desc": "", "name": "Sunfeast Breakfast protein Smoothie with Oats", "tray_id": "44", "unit_price": 45, "qty": 1, "sku_total": 45, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "60772575", "invoice_bill": "65"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:38:50,314.314 INFO    ] 65
[2026-06-13 22:38:50,324.324 INFO    ] TM08202203260613223808020
[2026-06-13 22:38:50,331.331 INFO    ] 9703868607
[2026-06-13 22:38:50,361.361 INFO    ] 2026-06-13 22:38:50
[2026-06-13 22:38:50,371.371 INFO    ] Door Opening for user mobile ending with  eight six zero seven 
[2026-06-13 22:38:50,395.395 INFO    ] Door Opening for user mobile ending with  eight six zero seven 
[2026-06-13 22:38:50,402.402 INFO    ] de88a13971ba931c78f3f9ea630ab3a8
[2026-06-13 22:38:50,411.411 INFO    ] 2026-06-13 22:38:50
[2026-06-13 22:38:50,417.417 INFO    ] playing audio file
[2026-06-13 22:38:50,460.460 INFO    ] 2026-06-13 22:38:50
[2026-06-13 22:38:50,475.475 INFO    ] 2026-06-13 22:38:50
[2026-06-13 22:38:50,496.496 INFO    ] publish_status: order_id=TM08202203260613223808020
[2026-06-13 22:38:50,562.562 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223808020
[2026-06-13 22:38:50,650.650 INFO    ] [publish_status] Message added to stream with ID: 1781370530609-0
[2026-06-13 22:38:50,662.662 INFO    ] Published to order:TM08202203260613223808020: {'server_response': '{"msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 45, "name": "Sunfeast Breakfast protein Smoothie with Oats", "qty": 1, "tray_id": "44", "offer_desc": "", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "unit_price": 45, "door_id": "2", "skuid": "4500651", "mrp": "45"}, {"sku_total": 20, "name": "Cad bury Dairy Milk Chocolate 18gm", "qty": 1, "tray_id": "39", "offer_desc": "", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": 20, "door_id": "2", "skuid": "4500541", "mrp": "20"}], "access_code": "60772575", "invoice_bill": "65", "bill_amount": "65", "order_id": "TM08202203260613223808020", "mobile": "9703868607"}, "rstatus": true}', 'order_id': 'TM08202203260613223808020', 'server_status': 'order-started', 'timestamp': '2026-06-13T17:08:50.477088Z'} (ID: 1781370530609-0)
[2026-06-13 22:38:51,064.064 INFO    ] {'server_response': {'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'sku_total': 45, 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1, 'tray_id': '44', 'offer_desc': '', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'unit_price': 45, 'door_id': '2', 'skuid': '4500651', 'mrp': '45'}, {'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1, 'tray_id': '39', 'offer_desc': '', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': 20, 'door_id': '2', 'skuid': '4500541', 'mrp': '20'}], 'access_code': '60772575', 'invoice_bill': '65', 'bill_amount': '65', 'order_id': 'TM08202203260613223808020', 'mobile': '9703868607'}, 'rstatus': True}, 'order_id': 'TM08202203260613223808020', 'server_status': 'order-started'}
[2026-06-13 22:38:51,067.067 INFO    ] 200
[2026-06-13 22:38:51,069.069 INFO    ] {"data":{"server_response":{"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"sku_total":45,"name":"Sunfeast Breakfast protein Smoothie with Oats","qty":1,"tray_id":"44","offer_desc":"","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","unit_price":45,"door_id":"2","skuid":"4500651","mrp":"45"},{"sku_total":20,"name":"Cad bury Dairy Milk Chocolate 18gm","qty":1,"tray_id":"39","offer_desc":"","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","unit_price":20,"door_id":"2","skuid":"4500541","mrp":"20"}],"access_code":"60772575","invoice_bill":"65","bill_amount":"65","order_id":"TM08202203260613223808020","mobile":"9703868607"},"rstatus":true},"order_id":"TM08202203260613223808020","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:38:51,072.072 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'qty': 1, 'tray_id': '44', 'offer_desc': '', 'offer_id': '', 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'unit_price': 45, 'door_id': '2', 'skuid': '4500651', 'mrp': '45'}, {'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1, 'tray_id': '39', 'offer_desc': '', 'offer_id': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'unit_price': 20, 'door_id': '2', 'skuid': '4500541', 'mrp': '20'}], 'access_code': '60772575', 'invoice_bill': '65', 'bill_amount': '65', 'order_id': 'TM08202203260613223808020', 'mobile': '9703868607'}, 'rstatus': True}, 'order_id': 'TM08202203260613223808020', 'server_status': 'order-started'}}
[2026-06-13 22:38:51,074.074 INFO    ] 2026-06-13 22:38:51
[2026-06-13 22:38:51,125.125 INFO    ] 200
[2026-06-13 22:38:51,128.128 INFO    ] True
[2026-06-13 22:38:51,305.305 INFO    ] 200
[2026-06-13 22:38:51,308.308 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:38:51,311.311 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-13 22:38:51,314.314 INFO    ] *** process_order ***
[2026-06-13 22:38:52,487.487 INFO    ] 200
[2026-06-13 22:38:52,488.488 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:38:52,490.490 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0}
[2026-06-13 22:38:52,491.491 INFO    ] *** process_order ***
[2026-06-13 22:38:52,492.492 INFO    ] publish_status: order_id=TM08202203260613223808020
[2026-06-13 22:38:52,493.493 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223808020
[2026-06-13 22:38:52,576.576 INFO    ] [publish_status] Message added to stream with ID: 1781370532540-0
[2026-06-13 22:38:52,578.578 INFO    ] Published to order:TM08202203260613223808020: {'server_response': '{"status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "delay": 0, "voiceNote": "Door is open..."}', 'order_id': 'TM08202203260613223808020', 'server_status': 'doorOpened'} (ID: 1781370532540-0)
[2026-06-13 22:38:53,626.626 INFO    ] 2026-06-13 22:38:53
[2026-06-13 22:38:53,629.629 INFO    ] publish_status: order_id=TM08202203260613223808020
[2026-06-13 22:38:53,631.631 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223808020
[2026-06-13 22:38:53,710.710 INFO    ] [publish_status] Message added to stream with ID: 1781370533678-0
[2026-06-13 22:38:53,713.713 INFO    ] Published to order:TM08202203260613223808020: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "status": "True", "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0}', 'order_id': 'TM08202203260613223808020', 'server_status': 'processOrder', 'timestamp': '2026-06-13T17:08:53.627294Z'} (ID: 1781370533678-0)
[2026-06-13 22:38:53,834.834 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'True', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0}, 'order_id': 'TM08202203260613223808020', 'server_status': 'processOrder'}
[2026-06-13 22:38:53,836.836 INFO    ] 200
[2026-06-13 22:38:53,839.839 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"status":"true","SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"delay":0},"order_id":"TM08202203260613223808020","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:38:53,842.842 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'true', 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'order_id': 'TM08202203260613223808020', 'server_status': 'processOrder'}}
[2026-06-13 22:38:53,845.845 INFO    ] 2026-06-13 22:38:53
[2026-06-13 22:38:53,848.848 INFO    ] None
[2026-06-13 22:38:53,850.850 INFO    ] Opening Door now
[2026-06-13 22:38:53,853.853 INFO    ] Opening Door now
[2026-06-13 22:38:53,856.856 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:38:53,859.859 INFO    ] 2026-06-13 22:38:53
[2026-06-13 22:38:53,862.862 INFO    ] playing audio file
[2026-06-13 22:38:53,879.879 INFO    ] 2026-06-13 22:38:53
[2026-06-13 22:38:53,882.882 INFO    ] 2026-06-13 22:38:53
[2026-06-13 22:38:56,918.918 INFO    ] 200
[2026-06-13 22:38:56,919.919 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:38:56,921.921 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}, {'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 22:38:59,968.968 INFO    ] 200
[2026-06-13 22:38:59,969.969 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:38:59,971.971 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}, {'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 22:39:03,047.047 INFO    ] 200
[2026-06-13 22:39:03,050.050 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}, {"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:39:03,053.053 INFO    ] Please close door 2
[2026-06-13 22:39:03,056.056 INFO    ] Please close door 2
[2026-06-13 22:39:03,058.058 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 22:39:03,061.061 INFO    ] 2026-06-13 22:39:03
[2026-06-13 22:39:03,064.064 INFO    ] playing audio file
[2026-06-13 22:39:03,081.081 INFO    ] 2026-06-13 22:39:03
[2026-06-13 22:39:03,085.085 INFO    ] publish_status: order_id=TM08202203260613223808020
[2026-06-13 22:39:03,088.088 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223808020
[2026-06-13 22:39:03,135.135 INFO    ] [publish_status] Message added to stream with ID: 1781370543103-0
[2026-06-13 22:39:03,138.138 INFO    ] Published to order:TM08202203260613223808020: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Sunfeast Breakfast protein Smoothie with Oats", "qty": 1}, {"name": "Cad bury Dairy Milk Chocolate 18gm", "qty": 1}], "Header": "Pick the below items from the door"}, "rstatus": false, "status": "False", "error": {"code": 20001, "umessage": "In Progress", "data": {}, "tmessage": "In Progress"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}}', 'order_id': 'TM08202203260613223808020', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T17:09:03.083307Z'} (ID: 1781370543103-0)
[2026-06-13 22:39:03,538.538 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}, {'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613223808020', 'server_status': 'OrderStatus'}
[2026-06-13 22:39:03,541.541 INFO    ] 200
[2026-06-13 22:39:03,543.543 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"name":"Sunfeast Breakfast protein Smoothie with Oats","qty":1},{"name":"Cad bury Dairy Milk Chocolate 18gm","qty":1}],"Header":"Pick the below items from the door"},"rstatus":false,"status":"false","error":{"code":20001,"umessage":"In Progress","data":[],"tmessage":"In Progress"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"}},"order_id":"TM08202203260613223808020","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:39:03,547.547 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}, {'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'false', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM08202203260613223808020', 'server_status': 'OrderStatus'}}
[2026-06-13 22:39:03,550.550 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}, {'name': 'Cad bury Dairy Milk Chocolate 18gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-13 22:39:06,588.588 INFO    ] 200
[2026-06-13 22:39:06,589.589 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:39:06,591.591 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100}
[2026-06-13 22:39:06,593.593 INFO    ] 2026-06-13 22:39:06
[2026-06-13 22:39:06,594.594 INFO    ] Order Completed 
[2026-06-13 22:39:06,596.596 INFO    ] Order Completed 
[2026-06-13 22:39:06,598.598 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:39:06,599.599 INFO    ] 2026-06-13 22:39:06
[2026-06-13 22:39:06,601.601 INFO    ] playing audio file
[2026-06-13 22:39:06,611.611 INFO    ] 2026-06-13 22:39:06
[2026-06-13 22:39:06,613.613 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'status': 'True', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100}
[2026-06-13 22:39:06,615.615 INFO    ] 2026-06-13 22:39:06
[2026-06-13 22:39:08,265.265 INFO    ] 200
[2026-06-13 22:39:08,267.267 INFO    ] {"res": "True", "orderId": "TM08202203260613223808020", "skus": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "", "tray_id": "39", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/4500651-8004.webp", "skuid": "4500651", "door_id": "", "tray_id": "44", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "unit_price": "45", "mrp": "45", "qty": 1, "sku_total": 45.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 65.0}
[2026-06-13 22:39:08,270.270 INFO    ] {'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'unit_price': '20', 'door_id': '', 'skuid': '4500541', 'mrp': '20'}, {'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'qty': 1, 'tray_id': '44', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'unit_price': '45', 'door_id': '', 'skuid': '4500651', 'mrp': '45'}], 'orderId': 'TM08202203260613223808020', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'total_amount': 65.0}
[2026-06-13 22:39:08,273.273 INFO    ] {'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'unit_price': '20', 'door_id': '', 'skuid': '4500541', 'mrp': '20'}, {'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'qty': 1, 'tray_id': '44', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'unit_price': '45', 'door_id': '', 'skuid': '4500651', 'mrp': '45'}], 'orderId': 'TM08202203260613223808020', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'total_amount': 65.0}
[2026-06-13 22:39:08,275.275 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,277.277 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,280.280 INFO    ] 65
[2026-06-13 22:39:08,282.282 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,285.285 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,287.287 INFO    ]  Your Bill Amount is 65
[2026-06-13 22:39:08,289.289 INFO    ]  Your Bill Amount is 65
[2026-06-13 22:39:08,292.292 INFO    ] 7b2025a0e6cbaee6ff555fbabc0d9298
[2026-06-13 22:39:08,294.294 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,296.296 INFO    ] playing audio file
[2026-06-13 22:39:08,316.316 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,320.320 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:08,323.323 INFO    ] publish_status: order_id=TM08202203260613223808020
[2026-06-13 22:39:08,325.325 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223808020
[2026-06-13 22:39:08,386.386 INFO    ] [publish_status] Message added to stream with ID: 1781370548353-0
[2026-06-13 22:39:08,389.389 INFO    ] Published to order:TM08202203260613223808020: {'server_response': '{"skus": [{"sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "qty": 1, "tray_id": "39", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "unit_price": "20", "door_id": "", "skuid": "4500541", "mrp": "20"}, {"sku_total": 45.0, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "qty": 1, "tray_id": "44", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "unit_price": "45", "door_id": "", "skuid": "4500651", "mrp": "45"}], "orderId": "TM08202203260613223808020", "rstatus": true, "anomaly": 0, "res": "True", "logic": "WBL", "total_amount": 65.0}', 'order_id': 'TM08202203260613223808020', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T17:09:08.321513Z'} (ID: 1781370548353-0)
[2026-06-13 22:39:08,512.512 INFO    ] {'server_response': {'skus': [{'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1, 'tray_id': '39', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'unit_price': '20', 'door_id': '', 'skuid': '4500541', 'mrp': '20'}, {'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'qty': 1, 'tray_id': '44', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'unit_price': '45', 'door_id': '', 'skuid': '4500651', 'mrp': '45'}], 'orderId': 'TM08202203260613223808020', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'total_amount': 65.0}, 'order_id': 'TM08202203260613223808020', 'server_status': 'invoiceOrder'}
[2026-06-13 22:39:08,514.514 INFO    ] 200
[2026-06-13 22:39:08,517.517 INFO    ] {"data":{"server_response":{"skus":[{"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","qty":1,"tray_id":"39","name":"Cad bury Dairy Milk Chocolate 18gm per peice","unit_price":"20","door_id":"","skuid":"4500541","mrp":"20"},{"sku_total":45,"image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","qty":1,"tray_id":"44","name":"Sunfeast Breakfast protein Smoothie with Oats per peice","unit_price":"45","door_id":"","skuid":"4500651","mrp":"45"}],"orderId":"TM08202203260613223808020","rstatus":true,"anomaly":0,"res":"true","logic":"WBL","total_amount":65},"order_id":"TM08202203260613223808020","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:39:08,520.520 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'qty': 1, 'tray_id': '39', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'door_id': '', 'skuid': '4500541', 'mrp': '20'}, {'sku_total': 45, 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'qty': 1, 'tray_id': '44', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'unit_price': '45', 'door_id': '', 'skuid': '4500651', 'mrp': '45'}], 'orderId': 'TM08202203260613223808020', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'total_amount': 65}, 'order_id': 'TM08202203260613223808020', 'server_status': 'invoiceOrder'}}
[2026-06-13 22:39:08,524.524 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'sku_total': 20, 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'qty': 1, 'tray_id': '39', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'door_id': '', 'skuid': '4500541', 'mrp': '20'}, {'sku_total': 45, 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'qty': 1, 'tray_id': '44', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'unit_price': '45', 'door_id': '', 'skuid': '4500651', 'mrp': '45'}], 'orderId': 'TM08202203260613223808020', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'total_amount': 65}, 'order_id': 'TM08202203260613223808020', 'server_status': 'invoiceOrder'}}
[2026-06-13 22:39:08,527.527 INFO    ] 2026-06-13 22:39:08
[2026-06-13 22:39:10,278.278 INFO    ] 200
[2026-06-13 22:39:10,281.281 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020", "TM08202203260613223808020"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:39:10,285.285 INFO    ] 2026-06-13 22:39:10
[2026-06-13 22:39:10,416.416 INFO    ] 200
[2026-06-13 22:39:10,420.420 INFO    ] True
[2026-06-13 22:39:10,423.423 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613223808020
[2026-06-13 22:39:10,426.426 INFO    ] start order file deleted
[2026-06-13 22:39:10,428.428 INFO    ] Checking for system updates...
[2026-06-13 22:39:10,453.453 INFO    ] 200
[2026-06-13 22:39:10,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:10,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:10,493.493 INFO    ] No update needed
[2026-06-13 22:39:10,495.495 INFO    ] Checking for camera pi updates...
[2026-06-13 22:39:10,518.518 INFO    ] 200
[2026-06-13 22:39:10,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:10,551.551 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:39:10,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:10,589.589 INFO    ] No camera update needed
[2026-06-13 22:39:10,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:39:10,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:39:10,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:39:10,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:39:12,641.641 INFO    ] ================================================
[2026-06-13 22:39:12,657.657 INFO    ] Launching Daemon at Sat Jun 13 22:39:12 IST 2026
[2026-06-13 22:39:12,667.667 INFO    ] ================================================
[2026-06-13 22:39:13,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:39:13
[2026-06-13 22:39:13,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:39:13,482.482 INFO    ] Initializing speech engine...
[2026-06-13 22:39:13,495.495 INFO    ] 2026-06-13 22:39:13
[2026-06-13 22:39:13,703.703 INFO    ] 2026-06-13 22:39:13
[2026-06-13 22:39:13,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:39:13,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:39:13,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:39:14,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:39:14,125.125 INFO    ] time= 13/06/2026 22:39:14
[2026-06-13 22:39:14,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:39:14,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:39:14,220.220 INFO    ] No existing commands found in stream
[2026-06-13 22:39:19,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:39:19,233.233 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-13 22:39:20,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:39:20,632.632 INFO    ] Checking for system updates...
[2026-06-13 22:39:20,658.658 INFO    ] 200
[2026-06-13 22:39:20,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:20,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:39:20,694.694 INFO    ] No update needed
[2026-06-13 22:39:20,695.695 INFO    ] Checking for camera pi updates...
[2026-06-13 22:39:20,714.714 INFO    ] 200
[2026-06-13 22:39:20,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:20,744.744 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:39:20,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:39:20,786.786 INFO    ] No camera update needed
[2026-06-13 22:39:20,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:39:20,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:39:20,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:39:20,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:39:22,834.834 INFO    ] ================================================
[2026-06-13 22:39:22,850.850 INFO    ] Launching Daemon at Sat Jun 13 22:39:22 IST 2026
[2026-06-13 22:39:22,861.861 INFO    ] ================================================
[2026-06-13 22:39:23,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:39:23
[2026-06-13 22:39:23,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:39:23,664.664 INFO    ] Initializing speech engine...
[2026-06-13 22:39:23,669.669 INFO    ] 2026-06-13 22:39:23
[2026-06-13 22:39:23,873.873 INFO    ] 2026-06-13 22:39:23
[2026-06-13 22:39:23,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:39:24,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:39:24,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:39:24,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:39:24,272.272 INFO    ] time= 13/06/2026 22:39:24
[2026-06-13 22:39:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:39:24,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:39:24,394.394 INFO    ] No existing commands found in stream
[2026-06-13 22:39:29,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:39:29,407.407 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-13 22:39:29,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:39:29,917.917 INFO    ] Checking for system updates...
[2026-06-13 22:39:29,939.939 INFO    ] 200
[2026-06-13 22:39:29,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:29,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:29,973.973 INFO    ] No update needed
[2026-06-13 22:39:29,974.974 INFO    ] Checking for camera pi updates...
[2026-06-13 22:39:29,994.994 INFO    ] 200
[2026-06-13 22:39:29,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:30,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:39:30,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:30,067.067 INFO    ] No camera update needed
[2026-06-13 22:39:30,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:39:30,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:39:30,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:39:30,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:39:32,117.117 INFO    ] ================================================
[2026-06-13 22:39:32,133.133 INFO    ] Launching Daemon at Sat Jun 13 22:39:32 IST 2026
[2026-06-13 22:39:32,143.143 INFO    ] ================================================
[2026-06-13 22:39:32,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:39:32
[2026-06-13 22:39:32,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:39:32,917.917 INFO    ] Initializing speech engine...
[2026-06-13 22:39:32,927.927 INFO    ] 2026-06-13 22:39:32
[2026-06-13 22:39:33,130.130 INFO    ] 2026-06-13 22:39:33
[2026-06-13 22:39:33,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:39:33,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:39:33,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:39:33,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:39:33,545.545 INFO    ] time= 13/06/2026 22:39:33
[2026-06-13 22:39:33,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:39:33,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:39:33,640.640 INFO    ] No existing commands found in stream
[2026-06-13 22:39:38,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:39:38,653.653 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 22:39:40,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:39:40,158.158 INFO    ] Checking for system updates...
[2026-06-13 22:39:40,179.179 INFO    ] 200
[2026-06-13 22:39:40,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:40,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:40,213.213 INFO    ] No update needed
[2026-06-13 22:39:40,214.214 INFO    ] Checking for camera pi updates...
[2026-06-13 22:39:40,235.235 INFO    ] 200
[2026-06-13 22:39:40,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:40,260.260 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:39:40,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:40,300.300 INFO    ] No camera update needed
[2026-06-13 22:39:40,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:39:40,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:39:40,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:39:40,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:39:42,349.349 INFO    ] ================================================
[2026-06-13 22:39:42,365.365 INFO    ] Launching Daemon at Sat Jun 13 22:39:42 IST 2026
[2026-06-13 22:39:42,376.376 INFO    ] ================================================
[2026-06-13 22:39:42,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:39:42
[2026-06-13 22:39:43,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:39:43,228.228 INFO    ] Initializing speech engine...
[2026-06-13 22:39:43,233.233 INFO    ] 2026-06-13 22:39:43
[2026-06-13 22:39:43,440.440 INFO    ] 2026-06-13 22:39:43
[2026-06-13 22:39:43,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:39:43,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:39:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:39:43,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:39:43,862.862 INFO    ] time= 13/06/2026 22:39:43
[2026-06-13 22:39:43,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:39:43,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:39:43,958.958 INFO    ] No existing commands found in stream
[2026-06-13 22:39:48,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:39:48,972.972 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-13 22:39:51,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:39:51,090.090 INFO    ] Checking for system updates...
[2026-06-13 22:39:51,112.112 INFO    ] 200
[2026-06-13 22:39:51,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:51,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:51,146.146 INFO    ] No update needed
[2026-06-13 22:39:51,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 22:39:51,168.168 INFO    ] 200
[2026-06-13 22:39:51,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:39:51,193.193 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:39:51,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:39:51,232.232 INFO    ] No camera update needed
[2026-06-13 22:39:51,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:39:51,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:39:51,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:39:51,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:39:53,283.283 INFO    ] ================================================
[2026-06-13 22:39:53,298.298 INFO    ] Launching Daemon at Sat Jun 13 22:39:53 IST 2026
[2026-06-13 22:39:53,308.308 INFO    ] ================================================
[2026-06-13 22:39:53,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:39:53
[2026-06-13 22:39:53,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:39:54,098.098 INFO    ] Initializing speech engine...
[2026-06-13 22:39:54,103.103 INFO    ] 2026-06-13 22:39:54
[2026-06-13 22:39:54,307.307 INFO    ] 2026-06-13 22:39:54
[2026-06-13 22:39:54,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:39:54,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:39:54,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:39:54,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:39:54,710.710 INFO    ] time= 13/06/2026 22:39:54
[2026-06-13 22:39:54,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:39:54,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:39:54,819.819 INFO    ] No existing commands found in stream
[2026-06-13 22:39:59,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:39:59,832.832 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 22:40:01,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:40:01,393.393 INFO    ] Checking for system updates...
[2026-06-13 22:40:01,446.446 INFO    ] 200
[2026-06-13 22:40:01,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:01,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:01,576.576 INFO    ] No update needed
[2026-06-13 22:40:01,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 22:40:01,623.623 INFO    ] 200
[2026-06-13 22:40:01,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:01,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:40:01,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:01,769.769 INFO    ] No camera update needed
[2026-06-13 22:40:01,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:40:01,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:40:01,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:40:01,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:40:03,831.831 INFO    ] ================================================
[2026-06-13 22:40:03,846.846 INFO    ] Launching Daemon at Sat Jun 13 22:40:03 IST 2026
[2026-06-13 22:40:03,857.857 INFO    ] ================================================
[2026-06-13 22:40:04,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:40:04
[2026-06-13 22:40:04,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:40:04,650.650 INFO    ] Initializing speech engine...
[2026-06-13 22:40:04,655.655 INFO    ] 2026-06-13 22:40:04
[2026-06-13 22:40:04,850.850 INFO    ] 2026-06-13 22:40:04
[2026-06-13 22:40:04,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:40:05,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:40:05,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:40:05,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:40:05,144.144 INFO    ] time= 13/06/2026 22:40:05
[2026-06-13 22:40:05,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:40:05,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:40:05,234.234 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 22:40:05,284.284 INFO    ] Checking historical command: ID=1781370604157-0
[2026-06-13 22:40:05,309.309 INFO    ] process_and_cleanup_command: msg_id=1781370604157-0
[2026-06-13 22:40:05,367.367 INFO    ] is_command_expired: timestamp=2026-06-13T17:10:03.657Z, expiry=30s
[2026-06-13 22:40:05,520.520 INFO    ] Command removed from stream: 1781370604157-0. returning for processing...
[2026-06-13 22:40:05,547.547 INFO    ] ***** get_valid_command
[2026-06-13 22:40:05,550.550 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1781370603656-pkxfhcpef","orderId":"TM08202203260613223955342","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-13T17:10:03.657Z'}
[2026-06-13 22:40:05,553.553 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613223955342', 'request_id': 'start-order-1781370603656-pkxfhcpef'}
[2026-06-13 22:40:05,556.556 INFO    ] Handling start order...
[2026-06-13 22:40:05,558.558 INFO    ] handle_start_order_command
[2026-06-13 22:40:05,564.564 INFO    ] _send_start_order_success: request_id=start-order-1781370603656-pkxfhcpef, order_id=TM08202203260613223955342
[2026-06-13 22:40:05,567.567 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 22:40:05,633.633 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781370605585-0
[2026-06-13 22:40:05,636.636 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 22:40:05,638.638 INFO    ] Checking for system updates...
[2026-06-13 22:40:05,667.667 INFO    ] 200
[2026-06-13 22:40:05,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:05,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:40:05,712.712 INFO    ] No update needed
[2026-06-13 22:40:05,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 22:40:05,740.740 INFO    ] 200
[2026-06-13 22:40:05,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:05,772.772 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:40:05,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:40:05,878.878 INFO    ] No camera update needed
[2026-06-13 22:40:05,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:40:05,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:40:05,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:40:05,944.944 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 22:40:05,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:40:07,985.985 INFO    ] ================================================
[2026-06-13 22:40:08,000.000 INFO    ] Launching Daemon at Sat Jun 13 22:40:07 IST 2026
[2026-06-13 22:40:08,012.012 INFO    ] ================================================
[2026-06-13 22:40:08,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:40:08
[2026-06-13 22:40:08,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:40:08,790.790 INFO    ] Initializing speech engine...
[2026-06-13 22:40:08,793.793 INFO    ] 2026-06-13 22:40:08
[2026-06-13 22:40:08,986.986 INFO    ] 2026-06-13 22:40:08
[2026-06-13 22:40:09,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:40:09,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:40:09,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:40:09,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:40:09,416.416 INFO    ] time= 13/06/2026 22:40:09
[2026-06-13 22:40:09,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:40:09,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:40:09,597.597 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 22:40:09,601.601 INFO    ] Checking historical command: ID=1781370605585-0
[2026-06-13 22:40:09,628.628 INFO    ] process_and_cleanup_command: msg_id=1781370605585-0
[2026-06-13 22:40:09,630.630 INFO    ] is_command_expired: timestamp=2026-06-13T17:10:05.566034Z, expiry=30s
[2026-06-13 22:40:09,749.749 INFO    ] Command removed from stream: 1781370605585-0. returning for processing...
[2026-06-13 22:40:09,753.753 INFO    ] ***** get_valid_command
[2026-06-13 22:40:09,756.756 INFO    ] {'timestamp': '2026-06-13T17:10:05.566034Z', 'message_type': 'command_response', 'metadata_order_id': 'TM08202203260613223955342', 'imei': 'TM08202203', 'message': 'start-order success', 'metadata_request_id': 'start-order-1781370603656-pkxfhcpef', 'status': 'success'}
[2026-06-13 22:40:09,760.760 INFO    ] Checking historical command: ID=1781370608585-0
[2026-06-13 22:40:09,765.765 INFO    ] process_and_cleanup_command: msg_id=1781370608585-0
[2026-06-13 22:40:09,768.768 INFO    ] is_command_expired: timestamp=2026-06-13T17:10:08.070Z, expiry=30s
[2026-06-13 22:40:09,815.815 INFO    ] Command removed from stream: 1781370608585-0. returning for processing...
[2026-06-13 22:40:09,818.818 INFO    ] ***** get_valid_command
[2026-06-13 22:40:09,821.821 INFO    ] {'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1781370608070-13hnsp9r3","orderId":"TM08202203260613223955342","is_vending":false,"accessCode":"28685563"}', 'timestamp': '2026-06-13T17:10:08.070Z'}
[2026-06-13 22:40:09,824.824 INFO    ] ***** Parsed command data: {'accessCode': '28685563', 'orderId': 'TM08202203260613223955342', 'request_id': 'process-order-1781370608070-13hnsp9r3', 'is_vending': False}
[2026-06-13 22:40:09,827.827 INFO    ] Handling process order...
[2026-06-13 22:40:09,830.830 INFO    ] Processing process-order command...
[2026-06-13 22:40:09,834.834 INFO    ] 🔍 Lock file Order ID: TM08202203260613223955342, TS: 2026-06-13 22:40:05
[2026-06-13 22:40:09,842.842 INFO    ] ✅ Order lock valid for TM08202203260613223955342
[2026-06-13 22:40:09,845.845 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 22:40:09,847.847 INFO    ] processing access code 28685563 for order TM08202203260613223955342
[2026-06-13 22:40:09,851.851 INFO    ] 🔍 Lock file Order ID: TM08202203260613223955342, TS: 2026-06-13 22:40:05
[2026-06-13 22:40:09,854.854 INFO    ] ✅ Order lock valid for TM08202203260613223955342
[2026-06-13 22:40:09,857.857 INFO    ] 2026-06-13 22:40:09
[2026-06-13 22:40:09,887.887 INFO    ] 200
[2026-06-13 22:40:09,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:09,894.894 INFO    ] 28685563
[2026-06-13 22:40:09,898.898 INFO    ] 2026-06-13 22:40:09
[2026-06-13 22:40:09,902.902 INFO    ] session id :845046798
[2026-06-13 22:40:09,906.906 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=28685563&imei=TM08202203&session_id=845046798
[2026-06-13 22:40:10,598.598 INFO    ] 200
[2026-06-13 22:40:10,628.628 INFO    ] {"data": {"mobile": "9844115520", "order_id": "TM08202203260613223955342", "bill_amount": "20", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "39", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "28685563", "invoice_bill": "20"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 22:40:10,639.639 INFO    ] 20
[2026-06-13 22:40:10,643.643 INFO    ] TM08202203260613223955342
[2026-06-13 22:40:10,647.647 INFO    ] 9844115520
[2026-06-13 22:40:10,656.656 INFO    ] 2026-06-13 22:40:10
[2026-06-13 22:40:10,662.662 INFO    ] Door Opening for user mobile ending with  five five two zero 
[2026-06-13 22:40:10,666.666 INFO    ] Door Opening for user mobile ending with  five five two zero 
[2026-06-13 22:40:10,668.668 INFO    ] 27c9ca0b26c40f05592bd6edde98ce6b
[2026-06-13 22:40:10,669.669 INFO    ] 2026-06-13 22:40:10
[2026-06-13 22:40:10,670.670 INFO    ] playing audio file
[2026-06-13 22:40:10,680.680 INFO    ] 2026-06-13 22:40:10
[2026-06-13 22:40:10,682.682 INFO    ] 2026-06-13 22:40:10
[2026-06-13 22:40:10,684.684 INFO    ] publish_status: order_id=TM08202203260613223955342
[2026-06-13 22:40:10,686.686 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223955342
[2026-06-13 22:40:10,770.770 INFO    ] [publish_status] Message added to stream with ID: 1781370610738-0
[2026-06-13 22:40:10,771.771 INFO    ] Published to order:TM08202203260613223955342: {'timestamp': '2026-06-13T17:10:10.683375Z', 'order_id': 'TM08202203260613223955342', 'server_response': '{"status": true, "msg": "Order Data", "data": {"invoice_bill": "20", "bill_amount": "20", "access_code": "28685563", "order_id": "TM08202203260613223955342", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": 20, "offer_id": "", "mrp": "20", "tray_id": "39", "skuid": "4500541", "name": "Cad bury Dairy Milk Chocolate 18gm", "sku_total": 20, "offer_desc": "", "qty": 1, "door_id": "2"}], "mobile": "9844115520"}, "rstatus": true}', 'server_status': 'order-started'} (ID: 1781370610738-0)
[2026-06-13 22:40:11,069.069 INFO    ] {'order_id': 'TM08202203260613223955342', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'invoice_bill': '20', 'bill_amount': '20', 'access_code': '28685563', 'order_id': 'TM08202203260613223955342', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': 20, 'offer_id': '', 'mrp': '20', 'tray_id': '39', 'skuid': '4500541', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'sku_total': 20, 'offer_desc': '', 'qty': 1, 'door_id': '2'}], 'mobile': '9844115520'}, 'rstatus': True}, 'server_status': 'order-started'}
[2026-06-13 22:40:11,070.070 INFO    ] 200
[2026-06-13 22:40:11,071.071 INFO    ] {"data":{"order_id":"TM08202203260613223955342","server_response":{"status":true,"msg":"Order Data","data":{"invoice_bill":"20","bill_amount":"20","access_code":"28685563","order_id":"TM08202203260613223955342","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","unit_price":20,"offer_id":"","mrp":"20","tray_id":"39","skuid":"4500541","name":"Cad bury Dairy Milk Chocolate 18gm","sku_total":20,"offer_desc":"","qty":1,"door_id":"2"}],"mobile":"9844115520"},"rstatus":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:40:11,073.073 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613223955342', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '9844115520', 'bill_amount': '20', 'access_code': '28685563', 'order_id': 'TM08202203260613223955342', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': 20, 'offer_id': '', 'mrp': '20', 'tray_id': '39', 'skuid': '4500541', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'sku_total': 20, 'offer_desc': '', 'qty': 1, 'door_id': '2'}], 'invoice_bill': '20'}, 'status': True}, 'server_status': 'order-started'}}
[2026-06-13 22:40:11,075.075 INFO    ] 2026-06-13 22:40:11
[2026-06-13 22:40:11,100.100 INFO    ] 200
[2026-06-13 22:40:11,101.101 INFO    ] True
[2026-06-13 22:40:11,188.188 INFO    ] 200
[2026-06-13 22:40:11,190.190 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 22:40:11,192.192 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 22:40:11,194.194 INFO    ] *** process_order ***
[2026-06-13 22:40:12,391.391 INFO    ] 200
[2026-06-13 22:40:12,392.392 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:40:12,394.394 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-13 22:40:12,396.396 INFO    ] *** process_order ***
[2026-06-13 22:40:12,398.398 INFO    ] publish_status: order_id=TM08202203260613223955342
[2026-06-13 22:40:12,399.399 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223955342
[2026-06-13 22:40:12,456.456 INFO    ] [publish_status] Message added to stream with ID: 1781370612423-0
[2026-06-13 22:40:12,457.457 INFO    ] Published to order:TM08202203260613223955342: {'order_id': 'TM08202203260613223955342', 'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781370612423-0)
[2026-06-13 22:40:13,507.507 INFO    ] 2026-06-13 22:40:13
[2026-06-13 22:40:13,510.510 INFO    ] publish_status: order_id=TM08202203260613223955342
[2026-06-13 22:40:13,512.512 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223955342
[2026-06-13 22:40:13,566.566 INFO    ] [publish_status] Message added to stream with ID: 1781370613533-0
[2026-06-13 22:40:13,569.569 INFO    ] Published to order:TM08202203260613223955342: {'timestamp': '2026-06-13T17:10:13.508532Z', 'order_id': 'TM08202203260613223955342', 'server_response': '{"SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'processOrder'} (ID: 1781370613533-0)
[2026-06-13 22:40:13,689.689 INFO    ] {'order_id': 'TM08202203260613223955342', 'server_response': {'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-13 22:40:13,692.692 INFO    ] 200
[2026-06-13 22:40:13,695.695 INFO    ] {"data":{"order_id":"TM08202203260613223955342","server_response":{"SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"voiceNote":"Please Wait","rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"SectionMain":{"Header":"Processing Order"},"status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:40:13,698.698 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613223955342', 'server_response': {'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}, 'server_status': 'processOrder'}}
[2026-06-13 22:40:13,701.701 INFO    ] 2026-06-13 22:40:13
[2026-06-13 22:40:13,704.704 INFO    ] None
[2026-06-13 22:40:13,707.707 INFO    ] Opening Door now
[2026-06-13 22:40:13,709.709 INFO    ] Opening Door now
[2026-06-13 22:40:13,712.712 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 22:40:13,715.715 INFO    ] 2026-06-13 22:40:13
[2026-06-13 22:40:13,717.717 INFO    ] playing audio file
[2026-06-13 22:40:13,734.734 INFO    ] 2026-06-13 22:40:13
[2026-06-13 22:40:13,738.738 INFO    ] 2026-06-13 22:40:13
[2026-06-13 22:40:16,769.769 INFO    ] 200
[2026-06-13 22:40:16,771.771 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:40:16,773.773 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 22:40:19,814.814 INFO    ] 200
[2026-06-13 22:40:19,816.816 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:40:19,818.818 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 22:40:22,854.854 INFO    ] 200
[2026-06-13 22:40:22,856.856 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 22:40:22,857.857 INFO    ] Please close door 2
[2026-06-13 22:40:22,859.859 INFO    ] Please close door 2
[2026-06-13 22:40:22,860.860 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 22:40:22,862.862 INFO    ] 2026-06-13 22:40:22
[2026-06-13 22:40:22,863.863 INFO    ] playing audio file
[2026-06-13 22:40:22,878.878 INFO    ] 2026-06-13 22:40:22
[2026-06-13 22:40:22,880.880 INFO    ] publish_status: order_id=TM08202203260613223955342
[2026-06-13 22:40:22,882.882 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223955342
[2026-06-13 22:40:22,952.952 INFO    ] [publish_status] Message added to stream with ID: 1781370622920-0
[2026-06-13 22:40:22,954.954 INFO    ] Published to order:TM08202203260613223955342: {'timestamp': '2026-06-13T17:10:22.879368Z', 'order_id': 'TM08202203260613223955342', 'server_response': '{"SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}}', 'server_status': 'OrderStatus'} (ID: 1781370622920-0)
[2026-06-13 22:40:23,285.285 INFO    ] {'order_id': 'TM08202203260613223955342', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}, 'server_status': 'OrderStatus'}
[2026-06-13 22:40:23,287.287 INFO    ] 200
[2026-06-13 22:40:23,288.288 INFO    ] {"data":{"order_id":"TM08202203260613223955342","server_response":{"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"voiceNote":"Please close door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:40:23,290.290 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613223955342', 'server_response': {'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'server_status': 'OrderStatus'}}
[2026-06-13 22:40:23,292.292 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}}
[2026-06-13 22:40:26,332.332 INFO    ] 200
[2026-06-13 22:40:26,334.334 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 22:40:26,336.336 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 22:40:26,338.338 INFO    ] 2026-06-13 22:40:26
[2026-06-13 22:40:26,339.339 INFO    ] Order Completed 
[2026-06-13 22:40:26,341.341 INFO    ] Order Completed 
[2026-06-13 22:40:26,343.343 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 22:40:26,344.344 INFO    ] 2026-06-13 22:40:26
[2026-06-13 22:40:26,346.346 INFO    ] playing audio file
[2026-06-13 22:40:26,357.357 INFO    ] 2026-06-13 22:40:26
[2026-06-13 22:40:26,359.359 INFO    ] {'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-13 22:40:26,361.361 INFO    ] 2026-06-13 22:40:26
[2026-06-13 22:40:27,084.084 INFO    ] 200
[2026-06-13 22:40:27,086.086 INFO    ] {"res": "True", "orderId": "TM08202203260613223955342", "skus": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "door_id": "", "tray_id": "39", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 22:40:27,087.087 INFO    ] {'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613223955342', 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'skuid': '4500541', 'tray_id': '39', 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'qty': 1, 'door_id': ''}]}
[2026-06-13 22:40:27,089.089 INFO    ] {'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613223955342', 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'skuid': '4500541', 'tray_id': '39', 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'qty': 1, 'door_id': ''}]}
[2026-06-13 22:40:27,091.091 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,092.092 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,093.093 INFO    ] 20
[2026-06-13 22:40:27,095.095 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,096.096 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,097.097 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:40:27,098.098 INFO    ]  Your Bill Amount is 20
[2026-06-13 22:40:27,100.100 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 22:40:27,101.101 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,103.103 INFO    ] playing audio file
[2026-06-13 22:40:27,113.113 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,115.115 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:27,117.117 INFO    ] publish_status: order_id=TM08202203260613223955342
[2026-06-13 22:40:27,119.119 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613223955342
[2026-06-13 22:40:27,188.188 INFO    ] [publish_status] Message added to stream with ID: 1781370627153-0
[2026-06-13 22:40:27,190.190 INFO    ] Published to order:TM08202203260613223955342: {'timestamp': '2026-06-13T17:10:27.116530Z', 'order_id': 'TM08202203260613223955342', 'server_response': '{"total_amount": 20.0, "rstatus": true, "res": "True", "anomaly": 0, "orderId": "TM08202203260613223955342", "logic": "WBL", "skus": [{"image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": "20", "skuid": "4500541", "tray_id": "39", "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "sku_total": 20.0, "qty": 1, "door_id": ""}]}', 'server_status': 'invoiceOrder'} (ID: 1781370627153-0)
[2026-06-13 22:40:27,310.310 INFO    ] {'order_id': 'TM08202203260613223955342', 'server_response': {'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'anomaly': 0, 'orderId': 'TM08202203260613223955342', 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'skuid': '4500541', 'tray_id': '39', 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20.0, 'qty': 1, 'door_id': ''}]}, 'server_status': 'invoiceOrder'}
[2026-06-13 22:40:27,313.313 INFO    ] 200
[2026-06-13 22:40:27,315.315 INFO    ] {"data":{"order_id":"TM08202203260613223955342","server_response":{"total_amount":20,"rstatus":true,"res":"true","anomaly":0,"orderId":"TM08202203260613223955342","logic":"WBL","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","unit_price":"20","skuid":"4500541","tray_id":"39","mrp":"20","name":"Cad bury Dairy Milk Chocolate 18gm per peice","sku_total":20,"qty":1,"door_id":""}]},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 22:40:27,319.319 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613223955342', 'server_response': {'total_amount': 20, 'rstatus': True, 'res': 'true', 'anomaly': 0, 'orderId': 'TM08202203260613223955342', 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'skuid': '4500541', 'tray_id': '39', 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'qty': 1, 'door_id': ''}]}, 'server_status': 'invoiceOrder'}}
[2026-06-13 22:40:27,322.322 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202203260613223955342', 'server_response': {'total_amount': 20, 'rstatus': True, 'res': 'true', 'anomaly': 0, 'orderId': 'TM08202203260613223955342', 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20', 'skuid': '4500541', 'tray_id': '39', 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'sku_total': 20, 'qty': 1, 'door_id': ''}]}, 'server_status': 'invoiceOrder'}}
[2026-06-13 22:40:27,325.325 INFO    ] 2026-06-13 22:40:27
[2026-06-13 22:40:29,017.017 INFO    ] 200
[2026-06-13 22:40:29,020.020 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342", "TM08202203260613223955342"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 22:40:29,023.023 INFO    ] 2026-06-13 22:40:29
[2026-06-13 22:40:29,126.126 INFO    ] 200
[2026-06-13 22:40:29,127.127 INFO    ] True
[2026-06-13 22:40:29,129.129 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613223955342
[2026-06-13 22:40:29,132.132 INFO    ] start order file deleted
[2026-06-13 22:40:29,134.134 INFO    ] Checking for system updates...
[2026-06-13 22:40:29,157.157 INFO    ] 200
[2026-06-13 22:40:29,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:29,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:29,198.198 INFO    ] No update needed
[2026-06-13 22:40:29,200.200 INFO    ] Checking for camera pi updates...
[2026-06-13 22:40:29,224.224 INFO    ] 200
[2026-06-13 22:40:29,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:29,254.254 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:40:29,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:29,285.285 INFO    ] No camera update needed
[2026-06-13 22:40:29,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:40:29,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:40:29,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:40:29,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:40:31,342.342 INFO    ] ================================================
[2026-06-13 22:40:31,363.363 INFO    ] Launching Daemon at Sat Jun 13 22:40:31 IST 2026
[2026-06-13 22:40:31,374.374 INFO    ] ================================================
[2026-06-13 22:40:31,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:40:31
[2026-06-13 22:40:32,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:40:32,720.720 INFO    ] Initializing speech engine...
[2026-06-13 22:40:32,725.725 INFO    ] 2026-06-13 22:40:32
[2026-06-13 22:40:32,933.933 INFO    ] 2026-06-13 22:40:32
[2026-06-13 22:40:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:40:33,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:40:33,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:40:33,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:40:33,318.318 INFO    ] time= 13/06/2026 22:40:33
[2026-06-13 22:40:33,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:40:33,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:40:33,448.448 INFO    ] No existing commands found in stream
[2026-06-13 22:40:38,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:40:38,463.463 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 22:40:39,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:40:39,850.850 INFO    ] Checking for system updates...
[2026-06-13 22:40:39,871.871 INFO    ] 200
[2026-06-13 22:40:39,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:39,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:40:39,906.906 INFO    ] No update needed
[2026-06-13 22:40:39,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 22:40:39,927.927 INFO    ] 200
[2026-06-13 22:40:39,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:39,953.953 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:40:39,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:39,993.993 INFO    ] No camera update needed
[2026-06-13 22:40:39,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:40:39,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:40:39,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:40:40,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:40:42,042.042 INFO    ] ================================================
[2026-06-13 22:40:42,058.058 INFO    ] Launching Daemon at Sat Jun 13 22:40:42 IST 2026
[2026-06-13 22:40:42,069.069 INFO    ] ================================================
[2026-06-13 22:40:42,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:40:42
[2026-06-13 22:40:42,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:40:42,971.971 INFO    ] Initializing speech engine...
[2026-06-13 22:40:42,976.976 INFO    ] 2026-06-13 22:40:42
[2026-06-13 22:40:43,190.190 INFO    ] 2026-06-13 22:40:43
[2026-06-13 22:40:43,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:40:43,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:40:43,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:40:43,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:40:43,618.618 INFO    ] time= 13/06/2026 22:40:43
[2026-06-13 22:40:43,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:40:43,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:40:43,718.718 INFO    ] No existing commands found in stream
[2026-06-13 22:40:48,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:40:48,731.731 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 22:40:50,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:40:50,411.411 INFO    ] Checking for system updates...
[2026-06-13 22:40:50,432.432 INFO    ] 200
[2026-06-13 22:40:50,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:50,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:50,465.465 INFO    ] No update needed
[2026-06-13 22:40:50,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 22:40:50,487.487 INFO    ] 200
[2026-06-13 22:40:50,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:40:50,512.512 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:40:50,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:40:50,551.551 INFO    ] No camera update needed
[2026-06-13 22:40:50,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:40:50,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:40:50,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:40:50,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:40:52,600.600 INFO    ] ================================================
[2026-06-13 22:40:52,617.617 INFO    ] Launching Daemon at Sat Jun 13 22:40:52 IST 2026
[2026-06-13 22:40:52,628.628 INFO    ] ================================================
[2026-06-13 22:40:52,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:40:52
[2026-06-13 22:40:53,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:40:53,423.423 INFO    ] Initializing speech engine...
[2026-06-13 22:40:53,433.433 INFO    ] 2026-06-13 22:40:53
[2026-06-13 22:40:53,676.676 INFO    ] 2026-06-13 22:40:53
[2026-06-13 22:40:53,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:40:53,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:40:53,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:40:54,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:40:54,115.115 INFO    ] time= 13/06/2026 22:40:54
[2026-06-13 22:40:54,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:40:54,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:40:54,266.266 INFO    ] No existing commands found in stream
[2026-06-13 22:40:59,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:40:59,284.284 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 22:41:01,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:41:01,162.162 INFO    ] Checking for system updates...
[2026-06-13 22:41:01,183.183 INFO    ] 200
[2026-06-13 22:41:01,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:01,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:41:01,217.217 INFO    ] No update needed
[2026-06-13 22:41:01,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:01,239.239 INFO    ] 200
[2026-06-13 22:41:01,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:01,264.264 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:01,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:41:01,306.306 INFO    ] No camera update needed
[2026-06-13 22:41:01,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:01,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:01,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:01,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:41:03,349.349 INFO    ] ================================================
[2026-06-13 22:41:03,364.364 INFO    ] Launching Daemon at Sat Jun 13 22:41:03 IST 2026
[2026-06-13 22:41:03,375.375 INFO    ] ================================================
[2026-06-13 22:41:03,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:41:03
[2026-06-13 22:41:04,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:41:04,194.194 INFO    ] Initializing speech engine...
[2026-06-13 22:41:04,199.199 INFO    ] 2026-06-13 22:41:04
[2026-06-13 22:41:04,396.396 INFO    ] 2026-06-13 22:41:04
[2026-06-13 22:41:04,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:41:04,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:41:04,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:41:04,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:41:04,680.680 INFO    ] time= 13/06/2026 22:41:04
[2026-06-13 22:41:04,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:41:04,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:41:04,771.771 INFO    ] No existing commands found in stream
[2026-06-13 22:41:09,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:41:09,803.803 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 22:41:11,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:41:11,488.488 INFO    ] Checking for system updates...
[2026-06-13 22:41:11,509.509 INFO    ] 200
[2026-06-13 22:41:11,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:11,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:11,542.542 INFO    ] No update needed
[2026-06-13 22:41:11,543.543 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:11,563.563 INFO    ] 200
[2026-06-13 22:41:11,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:11,592.592 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:11,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:11,631.631 INFO    ] No camera update needed
[2026-06-13 22:41:11,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:11,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:11,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:11,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:41:13,679.679 INFO    ] ================================================
[2026-06-13 22:41:13,695.695 INFO    ] Launching Daemon at Sat Jun 13 22:41:13 IST 2026
[2026-06-13 22:41:13,706.706 INFO    ] ================================================
[2026-06-13 22:41:14,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:41:14
[2026-06-13 22:41:14,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:41:14,499.499 INFO    ] Initializing speech engine...
[2026-06-13 22:41:14,503.503 INFO    ] 2026-06-13 22:41:14
[2026-06-13 22:41:14,698.698 INFO    ] 2026-06-13 22:41:14
[2026-06-13 22:41:14,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:41:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:41:14,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:41:15,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:41:15,007.007 INFO    ] time= 13/06/2026 22:41:15
[2026-06-13 22:41:15,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:41:15,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:41:15,132.132 INFO    ] No existing commands found in stream
[2026-06-13 22:41:20,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:41:20,165.165 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 22:41:23,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:41:23,656.656 INFO    ] Checking for system updates...
[2026-06-13 22:41:23,694.694 INFO    ] 200
[2026-06-13 22:41:23,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:23,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:23,764.764 INFO    ] No update needed
[2026-06-13 22:41:23,766.766 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:23,800.800 INFO    ] 200
[2026-06-13 22:41:23,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:23,829.829 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:23,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:23,870.870 INFO    ] No camera update needed
[2026-06-13 22:41:23,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:23,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:23,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:23,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:41:25,921.921 INFO    ] ================================================
[2026-06-13 22:41:25,936.936 INFO    ] Launching Daemon at Sat Jun 13 22:41:25 IST 2026
[2026-06-13 22:41:25,947.947 INFO    ] ================================================
[2026-06-13 22:41:26,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:41:26
[2026-06-13 22:41:26,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:41:26,745.745 INFO    ] Initializing speech engine...
[2026-06-13 22:41:26,749.749 INFO    ] 2026-06-13 22:41:26
[2026-06-13 22:41:26,971.971 INFO    ] 2026-06-13 22:41:26
[2026-06-13 22:41:27,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:41:27,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:41:27,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:41:27,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:41:27,391.391 INFO    ] time= 13/06/2026 22:41:27
[2026-06-13 22:41:27,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:41:27,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:41:27,581.581 INFO    ] No existing commands found in stream
[2026-06-13 22:41:32,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:41:32,610.610 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 22:41:35,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:41:35,662.662 INFO    ] Checking for system updates...
[2026-06-13 22:41:35,690.690 INFO    ] 200
[2026-06-13 22:41:35,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:35,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:41:35,726.726 INFO    ] No update needed
[2026-06-13 22:41:35,727.727 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:35,747.747 INFO    ] 200
[2026-06-13 22:41:35,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:35,774.774 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:35,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:41:35,811.811 INFO    ] No camera update needed
[2026-06-13 22:41:35,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:35,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:35,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:35,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:41:37,859.859 INFO    ] ================================================
[2026-06-13 22:41:37,875.875 INFO    ] Launching Daemon at Sat Jun 13 22:41:37 IST 2026
[2026-06-13 22:41:37,886.886 INFO    ] ================================================
[2026-06-13 22:41:38,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:41:38
[2026-06-13 22:41:38,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:41:38,679.679 INFO    ] Initializing speech engine...
[2026-06-13 22:41:38,689.689 INFO    ] 2026-06-13 22:41:38
[2026-06-13 22:41:38,897.897 INFO    ] 2026-06-13 22:41:38
[2026-06-13 22:41:38,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:41:39,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:41:39,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:41:39,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:41:39,303.303 INFO    ] time= 13/06/2026 22:41:39
[2026-06-13 22:41:39,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:41:39,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:41:39,412.412 INFO    ] No existing commands found in stream
[2026-06-13 22:41:44,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:41:44,425.425 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 22:41:48,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:41:48,242.242 INFO    ] Checking for system updates...
[2026-06-13 22:41:48,262.262 INFO    ] 200
[2026-06-13 22:41:48,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:48,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:48,298.298 INFO    ] No update needed
[2026-06-13 22:41:48,299.299 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:48,320.320 INFO    ] 200
[2026-06-13 22:41:48,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:48,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:48,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:41:48,387.387 INFO    ] No camera update needed
[2026-06-13 22:41:48,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:48,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:48,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:48,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:41:50,437.437 INFO    ] ================================================
[2026-06-13 22:41:50,452.452 INFO    ] Launching Daemon at Sat Jun 13 22:41:50 IST 2026
[2026-06-13 22:41:50,462.462 INFO    ] ================================================
[2026-06-13 22:41:50,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:41:50
[2026-06-13 22:41:51,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:41:51,249.249 INFO    ] Initializing speech engine...
[2026-06-13 22:41:51,254.254 INFO    ] 2026-06-13 22:41:51
[2026-06-13 22:41:51,459.459 INFO    ] 2026-06-13 22:41:51
[2026-06-13 22:41:51,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:41:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:41:51,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:41:51,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:41:51,868.868 INFO    ] time= 13/06/2026 22:41:51
[2026-06-13 22:41:51,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:41:51,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:41:51,980.980 INFO    ] No existing commands found in stream
[2026-06-13 22:41:56,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:41:56,992.992 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 22:41:58,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:41:58,061.061 INFO    ] Checking for system updates...
[2026-06-13 22:41:58,084.084 INFO    ] 200
[2026-06-13 22:41:58,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:58,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:58,117.117 INFO    ] No update needed
[2026-06-13 22:41:58,118.118 INFO    ] Checking for camera pi updates...
[2026-06-13 22:41:58,137.137 INFO    ] 200
[2026-06-13 22:41:58,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:41:58,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:41:58,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:41:58,200.200 INFO    ] No camera update needed
[2026-06-13 22:41:58,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:41:58,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:41:58,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:41:58,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:00,246.246 INFO    ] ================================================
[2026-06-13 22:42:00,262.262 INFO    ] Launching Daemon at Sat Jun 13 22:42:00 IST 2026
[2026-06-13 22:42:00,273.273 INFO    ] ================================================
[2026-06-13 22:42:00,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:00
[2026-06-13 22:42:00,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:01,073.073 INFO    ] Initializing speech engine...
[2026-06-13 22:42:01,078.078 INFO    ] 2026-06-13 22:42:01
[2026-06-13 22:42:01,286.286 INFO    ] 2026-06-13 22:42:01
[2026-06-13 22:42:01,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:01,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:01,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:01,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:01,709.709 INFO    ] time= 13/06/2026 22:42:01
[2026-06-13 22:42:01,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:01,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:01,894.894 INFO    ] No existing commands found in stream
[2026-06-13 22:42:06,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:42:06,922.922 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 22:42:08,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:42:08,647.647 INFO    ] Checking for system updates...
[2026-06-13 22:42:08,670.670 INFO    ] 200
[2026-06-13 22:42:08,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:08,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:42:08,703.703 INFO    ] No update needed
[2026-06-13 22:42:08,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 22:42:08,725.725 INFO    ] 200
[2026-06-13 22:42:08,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:08,752.752 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:42:08,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:42:08,789.789 INFO    ] No camera update needed
[2026-06-13 22:42:08,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:42:08,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:42:08,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:42:08,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:10,838.838 INFO    ] ================================================
[2026-06-13 22:42:10,854.854 INFO    ] Launching Daemon at Sat Jun 13 22:42:10 IST 2026
[2026-06-13 22:42:10,865.865 INFO    ] ================================================
[2026-06-13 22:42:11,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:11
[2026-06-13 22:42:11,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:11,676.676 INFO    ] Initializing speech engine...
[2026-06-13 22:42:11,681.681 INFO    ] 2026-06-13 22:42:11
[2026-06-13 22:42:11,885.885 INFO    ] 2026-06-13 22:42:11
[2026-06-13 22:42:11,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:12,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:12,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:12,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:12,301.301 INFO    ] time= 13/06/2026 22:42:12
[2026-06-13 22:42:12,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:12,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:12,400.400 INFO    ] No existing commands found in stream
[2026-06-13 22:42:17,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:42:17,414.414 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 22:42:21,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:42:21,125.125 INFO    ] Checking for system updates...
[2026-06-13 22:42:21,145.145 INFO    ] 200
[2026-06-13 22:42:21,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:21,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:42:21,181.181 INFO    ] No update needed
[2026-06-13 22:42:21,182.182 INFO    ] Checking for camera pi updates...
[2026-06-13 22:42:21,201.201 INFO    ] 200
[2026-06-13 22:42:21,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:21,226.226 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:42:21,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:42:21,266.266 INFO    ] No camera update needed
[2026-06-13 22:42:21,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:42:21,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:42:21,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:42:21,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:23,313.313 INFO    ] ================================================
[2026-06-13 22:42:23,330.330 INFO    ] Launching Daemon at Sat Jun 13 22:42:23 IST 2026
[2026-06-13 22:42:23,341.341 INFO    ] ================================================
[2026-06-13 22:42:23,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:23
[2026-06-13 22:42:23,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:24,120.120 INFO    ] Initializing speech engine...
[2026-06-13 22:42:24,128.128 INFO    ] 2026-06-13 22:42:24
[2026-06-13 22:42:24,340.340 INFO    ] 2026-06-13 22:42:24
[2026-06-13 22:42:24,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:24,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:24,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:24,767.767 INFO    ] time= 13/06/2026 22:42:24
[2026-06-13 22:42:24,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:24,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:24,863.863 INFO    ] No existing commands found in stream
[2026-06-13 22:42:29,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:42:29,876.876 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-13 22:42:31,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:42:31,938.938 INFO    ] Checking for system updates...
[2026-06-13 22:42:31,960.960 INFO    ] 200
[2026-06-13 22:42:31,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:31,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:42:31,998.998 INFO    ] No update needed
[2026-06-13 22:42:31,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 22:42:32,021.021 INFO    ] 200
[2026-06-13 22:42:32,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:32,049.049 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:42:32,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:42:32,094.094 INFO    ] No camera update needed
[2026-06-13 22:42:32,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:42:32,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:42:32,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:42:32,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:34,137.137 INFO    ] ================================================
[2026-06-13 22:42:34,152.152 INFO    ] Launching Daemon at Sat Jun 13 22:42:34 IST 2026
[2026-06-13 22:42:34,162.162 INFO    ] ================================================
[2026-06-13 22:42:34,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:34
[2026-06-13 22:42:35,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:35,272.272 INFO    ] Initializing speech engine...
[2026-06-13 22:42:35,280.280 INFO    ] 2026-06-13 22:42:35
[2026-06-13 22:42:35,527.527 INFO    ] 2026-06-13 22:42:35
[2026-06-13 22:42:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:35,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:35,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:35,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:35,991.991 INFO    ] time= 13/06/2026 22:42:35
[2026-06-13 22:42:36,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:36,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:36,194.194 INFO    ] No existing commands found in stream
[2026-06-13 22:42:41,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:42:41,223.223 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 22:42:41,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:42:41,735.735 INFO    ] Checking for system updates...
[2026-06-13 22:42:41,756.756 INFO    ] 200
[2026-06-13 22:42:41,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:41,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:42:41,790.790 INFO    ] No update needed
[2026-06-13 22:42:41,791.791 INFO    ] Checking for camera pi updates...
[2026-06-13 22:42:41,813.813 INFO    ] 200
[2026-06-13 22:42:41,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:41,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:42:41,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:42:41,978.978 INFO    ] No camera update needed
[2026-06-13 22:42:41,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:42:41,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:42:41,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:42:41,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:44,026.026 INFO    ] ================================================
[2026-06-13 22:42:44,041.041 INFO    ] Launching Daemon at Sat Jun 13 22:42:44 IST 2026
[2026-06-13 22:42:44,052.052 INFO    ] ================================================
[2026-06-13 22:42:44,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:44
[2026-06-13 22:42:44,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:44,871.871 INFO    ] Initializing speech engine...
[2026-06-13 22:42:44,876.876 INFO    ] 2026-06-13 22:42:44
[2026-06-13 22:42:45,083.083 INFO    ] 2026-06-13 22:42:45
[2026-06-13 22:42:45,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:45,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:45,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:45,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:45,497.497 INFO    ] time= 13/06/2026 22:42:45
[2026-06-13 22:42:45,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:45,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:45,597.597 INFO    ] No existing commands found in stream
[2026-06-13 22:42:50,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:42:50,620.620 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 22:42:53,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:42:53,734.734 INFO    ] Checking for system updates...
[2026-06-13 22:42:53,754.754 INFO    ] 200
[2026-06-13 22:42:53,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:53,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:42:53,788.788 INFO    ] No update needed
[2026-06-13 22:42:53,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 22:42:53,811.811 INFO    ] 200
[2026-06-13 22:42:53,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:42:53,840.840 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:42:53,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:42:53,883.883 INFO    ] No camera update needed
[2026-06-13 22:42:53,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:42:53,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:42:53,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:42:53,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:42:55,930.930 INFO    ] ================================================
[2026-06-13 22:42:55,946.946 INFO    ] Launching Daemon at Sat Jun 13 22:42:55 IST 2026
[2026-06-13 22:42:55,957.957 INFO    ] ================================================
[2026-06-13 22:42:56,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:42:56
[2026-06-13 22:42:56,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:42:56,755.755 INFO    ] Initializing speech engine...
[2026-06-13 22:42:56,759.759 INFO    ] 2026-06-13 22:42:56
[2026-06-13 22:42:56,963.963 INFO    ] 2026-06-13 22:42:56
[2026-06-13 22:42:56,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:42:57,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:42:57,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:42:57,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:42:57,358.358 INFO    ] time= 13/06/2026 22:42:57
[2026-06-13 22:42:57,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:42:57,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:42:57,511.511 INFO    ] No existing commands found in stream
[2026-06-13 22:43:02,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:02,521.521 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-13 22:43:02,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:43:02,887.887 INFO    ] Checking for system updates...
[2026-06-13 22:43:02,908.908 INFO    ] 200
[2026-06-13 22:43:02,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:02,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:02,942.942 INFO    ] No update needed
[2026-06-13 22:43:02,943.943 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:02,964.964 INFO    ] 200
[2026-06-13 22:43:02,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:02,989.989 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:03,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:43:03,012.012 INFO    ] No camera update needed
[2026-06-13 22:43:03,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:03,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:03,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:03,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:05,061.061 INFO    ] ================================================
[2026-06-13 22:43:05,076.076 INFO    ] Launching Daemon at Sat Jun 13 22:43:05 IST 2026
[2026-06-13 22:43:05,088.088 INFO    ] ================================================
[2026-06-13 22:43:05,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:05
[2026-06-13 22:43:05,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:43:05,953.953 INFO    ] Initializing speech engine...
[2026-06-13 22:43:05,962.962 INFO    ] 2026-06-13 22:43:05
[2026-06-13 22:43:06,183.183 INFO    ] 2026-06-13 22:43:06
[2026-06-13 22:43:06,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:43:06,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:43:06,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:43:06,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:43:06,551.551 INFO    ] time= 13/06/2026 22:43:06
[2026-06-13 22:43:06,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:43:06,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:43:06,664.664 INFO    ] No existing commands found in stream
[2026-06-13 22:43:11,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:11,680.680 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 22:43:12,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:43:12,692.692 INFO    ] Checking for system updates...
[2026-06-13 22:43:12,713.713 INFO    ] 200
[2026-06-13 22:43:12,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:12,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:43:12,746.746 INFO    ] No update needed
[2026-06-13 22:43:12,747.747 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:12,767.767 INFO    ] 200
[2026-06-13 22:43:12,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:12,793.793 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:12,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:43:12,832.832 INFO    ] No camera update needed
[2026-06-13 22:43:12,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:12,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:12,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:12,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:14,879.879 INFO    ] ================================================
[2026-06-13 22:43:14,895.895 INFO    ] Launching Daemon at Sat Jun 13 22:43:14 IST 2026
[2026-06-13 22:43:14,907.907 INFO    ] ================================================
[2026-06-13 22:43:15,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:15
[2026-06-13 22:43:15,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:43:15,709.709 INFO    ] Initializing speech engine...
[2026-06-13 22:43:15,714.714 INFO    ] 2026-06-13 22:43:15
[2026-06-13 22:43:15,930.930 INFO    ] 2026-06-13 22:43:15
[2026-06-13 22:43:15,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:43:16,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:43:16,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:43:16,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:43:16,317.317 INFO    ] time= 13/06/2026 22:43:16
[2026-06-13 22:43:16,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:43:16,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:43:16,457.457 INFO    ] No existing commands found in stream
[2026-06-13 22:43:21,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:21,469.469 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 22:43:23,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:43:23,776.776 INFO    ] Checking for system updates...
[2026-06-13 22:43:23,796.796 INFO    ] 200
[2026-06-13 22:43:23,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:23,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:23,832.832 INFO    ] No update needed
[2026-06-13 22:43:23,833.833 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:23,853.853 INFO    ] 200
[2026-06-13 22:43:23,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:23,877.877 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:23,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:23,915.915 INFO    ] No camera update needed
[2026-06-13 22:43:23,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:23,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:23,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:23,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:25,961.961 INFO    ] ================================================
[2026-06-13 22:43:25,977.977 INFO    ] Launching Daemon at Sat Jun 13 22:43:25 IST 2026
[2026-06-13 22:43:25,988.988 INFO    ] ================================================
[2026-06-13 22:43:26,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:26
[2026-06-13 22:43:26,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:43:26,811.811 INFO    ] Initializing speech engine...
[2026-06-13 22:43:26,815.815 INFO    ] 2026-06-13 22:43:26
[2026-06-13 22:43:27,031.031 INFO    ] 2026-06-13 22:43:27
[2026-06-13 22:43:27,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:43:27,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:43:27,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:43:27,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:43:27,447.447 INFO    ] time= 13/06/2026 22:43:27
[2026-06-13 22:43:27,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:43:27,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:43:27,543.543 INFO    ] No existing commands found in stream
[2026-06-13 22:43:32,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:32,553.553 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-13 22:43:36,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:43:36,403.403 INFO    ] Checking for system updates...
[2026-06-13 22:43:36,424.424 INFO    ] 200
[2026-06-13 22:43:36,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:36,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:36,458.458 INFO    ] No update needed
[2026-06-13 22:43:36,460.460 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:36,482.482 INFO    ] 200
[2026-06-13 22:43:36,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:36,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:36,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:36,548.548 INFO    ] No camera update needed
[2026-06-13 22:43:36,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:36,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:36,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:36,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:38,597.597 INFO    ] ================================================
[2026-06-13 22:43:38,613.613 INFO    ] Launching Daemon at Sat Jun 13 22:43:38 IST 2026
[2026-06-13 22:43:38,627.627 INFO    ] ================================================
[2026-06-13 22:43:38,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:38
[2026-06-13 22:43:39,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:43:39,410.410 INFO    ] Initializing speech engine...
[2026-06-13 22:43:39,414.414 INFO    ] 2026-06-13 22:43:39
[2026-06-13 22:43:39,617.617 INFO    ] 2026-06-13 22:43:39
[2026-06-13 22:43:39,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:43:39,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:43:39,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:43:39,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:43:40,032.032 INFO    ] time= 13/06/2026 22:43:39
[2026-06-13 22:43:40,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:43:40,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:43:40,131.131 INFO    ] No existing commands found in stream
[2026-06-13 22:43:45,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:45,144.144 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-13 22:43:46,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:43:46,618.618 INFO    ] Checking for system updates...
[2026-06-13 22:43:46,639.639 INFO    ] 200
[2026-06-13 22:43:46,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:46,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:43:46,671.671 INFO    ] No update needed
[2026-06-13 22:43:46,673.673 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:46,693.693 INFO    ] 200
[2026-06-13 22:43:46,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:46,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:46,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:46,755.755 INFO    ] No camera update needed
[2026-06-13 22:43:46,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:46,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:46,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:46,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:48,803.803 INFO    ] ================================================
[2026-06-13 22:43:48,819.819 INFO    ] Launching Daemon at Sat Jun 13 22:43:48 IST 2026
[2026-06-13 22:43:48,831.831 INFO    ] ================================================
[2026-06-13 22:43:49,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:49
[2026-06-13 22:43:49,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:43:49,695.695 INFO    ] Initializing speech engine...
[2026-06-13 22:43:49,701.701 INFO    ] 2026-06-13 22:43:49
[2026-06-13 22:43:49,909.909 INFO    ] 2026-06-13 22:43:49
[2026-06-13 22:43:49,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:43:50,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:43:50,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:43:50,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:43:50,324.324 INFO    ] time= 13/06/2026 22:43:50
[2026-06-13 22:43:50,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:43:50,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:43:50,425.425 INFO    ] No existing commands found in stream
[2026-06-13 22:43:55,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:43:55,443.443 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 22:43:57,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:43:57,387.387 INFO    ] Checking for system updates...
[2026-06-13 22:43:57,408.408 INFO    ] 200
[2026-06-13 22:43:57,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:57,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:57,444.444 INFO    ] No update needed
[2026-06-13 22:43:57,446.446 INFO    ] Checking for camera pi updates...
[2026-06-13 22:43:57,469.469 INFO    ] 200
[2026-06-13 22:43:57,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:43:57,494.494 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:43:57,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:43:57,540.540 INFO    ] No camera update needed
[2026-06-13 22:43:57,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:43:57,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:43:57,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:43:57,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:43:59,590.590 INFO    ] ================================================
[2026-06-13 22:43:59,605.605 INFO    ] Launching Daemon at Sat Jun 13 22:43:59 IST 2026
[2026-06-13 22:43:59,616.616 INFO    ] ================================================
[2026-06-13 22:43:59,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:43:59
[2026-06-13 22:44:00,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:00,404.404 INFO    ] Initializing speech engine...
[2026-06-13 22:44:00,409.409 INFO    ] 2026-06-13 22:44:00
[2026-06-13 22:44:00,614.614 INFO    ] 2026-06-13 22:44:00
[2026-06-13 22:44:00,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:00,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:00,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:00,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:01,014.014 INFO    ] time= 13/06/2026 22:44:00
[2026-06-13 22:44:01,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:01,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:01,126.126 INFO    ] No existing commands found in stream
[2026-06-13 22:44:06,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:44:06,140.140 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 22:44:07,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:44:07,493.493 INFO    ] Checking for system updates...
[2026-06-13 22:44:07,514.514 INFO    ] 200
[2026-06-13 22:44:07,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:07,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:07,548.548 INFO    ] No update needed
[2026-06-13 22:44:07,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 22:44:07,570.570 INFO    ] 200
[2026-06-13 22:44:07,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:07,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:44:07,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:07,642.642 INFO    ] No camera update needed
[2026-06-13 22:44:07,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:44:07,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:44:07,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:44:07,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:44:09,690.690 INFO    ] ================================================
[2026-06-13 22:44:09,705.705 INFO    ] Launching Daemon at Sat Jun 13 22:44:09 IST 2026
[2026-06-13 22:44:09,716.716 INFO    ] ================================================
[2026-06-13 22:44:10,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:44:10
[2026-06-13 22:44:10,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:10,536.536 INFO    ] Initializing speech engine...
[2026-06-13 22:44:10,542.542 INFO    ] 2026-06-13 22:44:10
[2026-06-13 22:44:10,745.745 INFO    ] 2026-06-13 22:44:10
[2026-06-13 22:44:10,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:10,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:10,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:11,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:11,145.145 INFO    ] time= 13/06/2026 22:44:11
[2026-06-13 22:44:11,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:11,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:11,261.261 INFO    ] No existing commands found in stream
[2026-06-13 22:44:16,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:44:16,273.273 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-13 22:44:18,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:44:18,789.789 INFO    ] Checking for system updates...
[2026-06-13 22:44:18,812.812 INFO    ] 200
[2026-06-13 22:44:18,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:18,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:18,845.845 INFO    ] No update needed
[2026-06-13 22:44:18,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 22:44:18,866.866 INFO    ] 200
[2026-06-13 22:44:18,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:18,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:44:18,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:18,931.931 INFO    ] No camera update needed
[2026-06-13 22:44:18,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:44:18,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:44:18,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:44:18,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:44:20,980.980 INFO    ] ================================================
[2026-06-13 22:44:21,995.995 INFO    ] Launching Daemon at Sat Jun 13 22:44:20 IST 2026
[2026-06-13 22:44:21,006.006 INFO    ] ================================================
[2026-06-13 22:44:21,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:44:21
[2026-06-13 22:44:21,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:21,845.845 INFO    ] Initializing speech engine...
[2026-06-13 22:44:21,850.850 INFO    ] 2026-06-13 22:44:21
[2026-06-13 22:44:22,055.055 INFO    ] 2026-06-13 22:44:22
[2026-06-13 22:44:22,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:22,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:22,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:22,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:22,453.453 INFO    ] time= 13/06/2026 22:44:22
[2026-06-13 22:44:22,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:22,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:22,568.568 INFO    ] No existing commands found in stream
[2026-06-13 22:44:27,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:44:27,581.581 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-13 22:44:31,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:44:31,209.209 INFO    ] Checking for system updates...
[2026-06-13 22:44:31,231.231 INFO    ] 200
[2026-06-13 22:44:31,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:31,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:44:31,268.268 INFO    ] No update needed
[2026-06-13 22:44:31,270.270 INFO    ] Checking for camera pi updates...
[2026-06-13 22:44:31,290.290 INFO    ] 200
[2026-06-13 22:44:31,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:31,317.317 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:44:31,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:44:31,360.360 INFO    ] No camera update needed
[2026-06-13 22:44:31,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:44:31,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:44:31,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:44:31,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:44:33,403.403 INFO    ] ================================================
[2026-06-13 22:44:33,419.419 INFO    ] Launching Daemon at Sat Jun 13 22:44:33 IST 2026
[2026-06-13 22:44:33,430.430 INFO    ] ================================================
[2026-06-13 22:44:33,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:44:33
[2026-06-13 22:44:34,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:34,297.297 INFO    ] Initializing speech engine...
[2026-06-13 22:44:34,303.303 INFO    ] 2026-06-13 22:44:34
[2026-06-13 22:44:34,516.516 INFO    ] 2026-06-13 22:44:34
[2026-06-13 22:44:34,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:34,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:34,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:34,924.924 INFO    ] time= 13/06/2026 22:44:34
[2026-06-13 22:44:34,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:34,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:35,034.034 INFO    ] No existing commands found in stream
[2026-06-13 22:44:40,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:44:40,049.049 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 22:44:43,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:44:43,801.801 INFO    ] Checking for system updates...
[2026-06-13 22:44:43,822.822 INFO    ] 200
[2026-06-13 22:44:43,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:43,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:44:43,857.857 INFO    ] No update needed
[2026-06-13 22:44:43,859.859 INFO    ] Checking for camera pi updates...
[2026-06-13 22:44:43,881.881 INFO    ] 200
[2026-06-13 22:44:43,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:43,911.911 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:44:44,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:44:44,056.056 INFO    ] No camera update needed
[2026-06-13 22:44:44,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:44:44,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:44:44,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:44:44,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:44:46,105.105 INFO    ] ================================================
[2026-06-13 22:44:46,121.121 INFO    ] Launching Daemon at Sat Jun 13 22:44:46 IST 2026
[2026-06-13 22:44:46,132.132 INFO    ] ================================================
[2026-06-13 22:44:46,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:44:46
[2026-06-13 22:44:46,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:46,956.956 INFO    ] Initializing speech engine...
[2026-06-13 22:44:46,961.961 INFO    ] 2026-06-13 22:44:46
[2026-06-13 22:44:47,194.194 INFO    ] 2026-06-13 22:44:47
[2026-06-13 22:44:47,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:47,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:47,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:47,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:47,609.609 INFO    ] time= 13/06/2026 22:44:47
[2026-06-13 22:44:47,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:47,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:47,704.704 INFO    ] No existing commands found in stream
[2026-06-13 22:44:52,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:44:52,717.717 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 22:44:53,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:44:53,928.928 INFO    ] Checking for system updates...
[2026-06-13 22:44:53,949.949 INFO    ] 200
[2026-06-13 22:44:53,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:53,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:53,985.985 INFO    ] No update needed
[2026-06-13 22:44:53,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 22:44:54,005.005 INFO    ] 200
[2026-06-13 22:44:54,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:44:54,030.030 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:44:54,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:44:54,073.073 INFO    ] No camera update needed
[2026-06-13 22:44:54,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:44:54,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:44:54,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:44:54,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:44:56,121.121 INFO    ] ================================================
[2026-06-13 22:44:56,136.136 INFO    ] Launching Daemon at Sat Jun 13 22:44:56 IST 2026
[2026-06-13 22:44:56,147.147 INFO    ] ================================================
[2026-06-13 22:44:56,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:44:56
[2026-06-13 22:44:56,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:44:57,034.034 INFO    ] Initializing speech engine...
[2026-06-13 22:44:57,040.040 INFO    ] 2026-06-13 22:44:57
[2026-06-13 22:44:57,248.248 INFO    ] 2026-06-13 22:44:57
[2026-06-13 22:44:57,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:44:57,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:44:57,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:44:57,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:44:57,667.667 INFO    ] time= 13/06/2026 22:44:57
[2026-06-13 22:44:57,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:44:57,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:44:57,765.765 INFO    ] No existing commands found in stream
[2026-06-13 22:45:02,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:02,781.781 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 22:45:04,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:45:04,559.559 INFO    ] Checking for system updates...
[2026-06-13 22:45:04,581.581 INFO    ] 200
[2026-06-13 22:45:04,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:04,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:45:04,620.620 INFO    ] No update needed
[2026-06-13 22:45:04,622.622 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:04,642.642 INFO    ] 200
[2026-06-13 22:45:04,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:04,667.667 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:04,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:45:04,706.706 INFO    ] No camera update needed
[2026-06-13 22:45:04,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:04,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:04,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:04,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:45:06,756.756 INFO    ] ================================================
[2026-06-13 22:45:06,772.772 INFO    ] Launching Daemon at Sat Jun 13 22:45:06 IST 2026
[2026-06-13 22:45:06,782.782 INFO    ] ================================================
[2026-06-13 22:45:07,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:45:07
[2026-06-13 22:45:07,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:45:07,563.563 INFO    ] Initializing speech engine...
[2026-06-13 22:45:07,572.572 INFO    ] 2026-06-13 22:45:07
[2026-06-13 22:45:07,778.778 INFO    ] 2026-06-13 22:45:07
[2026-06-13 22:45:07,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:45:07,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:45:07,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:45:08,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:45:08,177.177 INFO    ] time= 13/06/2026 22:45:08
[2026-06-13 22:45:08,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:45:08,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:45:08,292.292 INFO    ] No existing commands found in stream
[2026-06-13 22:45:13,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:13,304.304 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 22:45:16,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:45:16,189.189 INFO    ] Checking for system updates...
[2026-06-13 22:45:16,211.211 INFO    ] 200
[2026-06-13 22:45:16,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:16,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:16,246.246 INFO    ] No update needed
[2026-06-13 22:45:16,248.248 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:16,269.269 INFO    ] 200
[2026-06-13 22:45:16,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:16,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:16,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:16,337.337 INFO    ] No camera update needed
[2026-06-13 22:45:16,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:16,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:16,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:16,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:45:18,384.384 INFO    ] ================================================
[2026-06-13 22:45:18,400.400 INFO    ] Launching Daemon at Sat Jun 13 22:45:18 IST 2026
[2026-06-13 22:45:18,411.411 INFO    ] ================================================
[2026-06-13 22:45:18,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:45:18
[2026-06-13 22:45:19,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:45:19,226.226 INFO    ] Initializing speech engine...
[2026-06-13 22:45:19,230.230 INFO    ] 2026-06-13 22:45:19
[2026-06-13 22:45:19,462.462 INFO    ] 2026-06-13 22:45:19
[2026-06-13 22:45:19,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:45:19,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:45:19,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:45:19,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:45:19,886.886 INFO    ] time= 13/06/2026 22:45:19
[2026-06-13 22:45:19,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:45:19,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:45:20,024.024 INFO    ] No existing commands found in stream
[2026-06-13 22:45:25,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:25,037.037 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 22:45:27,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:45:27,428.428 INFO    ] Checking for system updates...
[2026-06-13 22:45:27,449.449 INFO    ] 200
[2026-06-13 22:45:27,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:27,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:27,484.484 INFO    ] No update needed
[2026-06-13 22:45:27,485.485 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:27,506.506 INFO    ] 200
[2026-06-13 22:45:27,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:27,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:27,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:27,580.580 INFO    ] No camera update needed
[2026-06-13 22:45:27,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:27,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:27,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:27,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:45:29,630.630 INFO    ] ================================================
[2026-06-13 22:45:29,646.646 INFO    ] Launching Daemon at Sat Jun 13 22:45:29 IST 2026
[2026-06-13 22:45:29,658.658 INFO    ] ================================================
[2026-06-13 22:45:30,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:45:30
[2026-06-13 22:45:30,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:45:30,505.505 INFO    ] Initializing speech engine...
[2026-06-13 22:45:30,515.515 INFO    ] 2026-06-13 22:45:30
[2026-06-13 22:45:30,721.721 INFO    ] 2026-06-13 22:45:30
[2026-06-13 22:45:30,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:45:30,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:45:30,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:45:31,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:45:31,144.144 INFO    ] time= 13/06/2026 22:45:31
[2026-06-13 22:45:31,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:45:31,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:45:31,242.242 INFO    ] No existing commands found in stream
[2026-06-13 22:45:36,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:36,253.253 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-13 22:45:37,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:45:37,179.179 INFO    ] Checking for system updates...
[2026-06-13 22:45:37,202.202 INFO    ] 200
[2026-06-13 22:45:37,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:37,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:37,240.240 INFO    ] No update needed
[2026-06-13 22:45:37,242.242 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:37,262.262 INFO    ] 200
[2026-06-13 22:45:37,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:37,287.287 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:37,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:37,325.325 INFO    ] No camera update needed
[2026-06-13 22:45:37,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:37,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:37,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:37,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:45:39,374.374 INFO    ] ================================================
[2026-06-13 22:45:39,390.390 INFO    ] Launching Daemon at Sat Jun 13 22:45:39 IST 2026
[2026-06-13 22:45:39,402.402 INFO    ] ================================================
[2026-06-13 22:45:39,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:45:39
[2026-06-13 22:45:40,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:45:40,208.208 INFO    ] Initializing speech engine...
[2026-06-13 22:45:40,221.221 INFO    ] 2026-06-13 22:45:40
[2026-06-13 22:45:40,469.469 INFO    ] 2026-06-13 22:45:40
[2026-06-13 22:45:40,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:45:40,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:45:40,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:45:40,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:45:40,940.940 INFO    ] time= 13/06/2026 22:45:40
[2026-06-13 22:45:40,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:45:41,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:45:41,177.177 INFO    ] No existing commands found in stream
[2026-06-13 22:45:46,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:46,193.193 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 22:45:47,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:45:47,262.262 INFO    ] Checking for system updates...
[2026-06-13 22:45:47,283.283 INFO    ] 200
[2026-06-13 22:45:47,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:47,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:47,319.319 INFO    ] No update needed
[2026-06-13 22:45:47,320.320 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:47,343.343 INFO    ] 200
[2026-06-13 22:45:47,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:47,370.370 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:47,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:47,411.411 INFO    ] No camera update needed
[2026-06-13 22:45:47,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:47,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:47,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:47,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:45:49,459.459 INFO    ] ================================================
[2026-06-13 22:45:49,474.474 INFO    ] Launching Daemon at Sat Jun 13 22:45:49 IST 2026
[2026-06-13 22:45:49,485.485 INFO    ] ================================================
[2026-06-13 22:45:49,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:45:49
[2026-06-13 22:45:50,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:45:50,254.254 INFO    ] Initializing speech engine...
[2026-06-13 22:45:50,267.267 INFO    ] 2026-06-13 22:45:50
[2026-06-13 22:45:50,474.474 INFO    ] 2026-06-13 22:45:50
[2026-06-13 22:45:50,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:45:50,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:45:50,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:45:50,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:45:50,863.863 INFO    ] time= 13/06/2026 22:45:50
[2026-06-13 22:45:50,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:45:50,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:45:51,024.024 INFO    ] No existing commands found in stream
[2026-06-13 22:45:56,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:45:56,037.037 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-13 22:45:59,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:45:59,045.045 INFO    ] Checking for system updates...
[2026-06-13 22:45:59,066.066 INFO    ] 200
[2026-06-13 22:45:59,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:59,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:59,100.100 INFO    ] No update needed
[2026-06-13 22:45:59,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 22:45:59,122.122 INFO    ] 200
[2026-06-13 22:45:59,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:45:59,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:45:59,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:45:59,185.185 INFO    ] No camera update needed
[2026-06-13 22:45:59,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:45:59,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:45:59,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:45:59,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:01,234.234 INFO    ] ================================================
[2026-06-13 22:46:01,250.250 INFO    ] Launching Daemon at Sat Jun 13 22:46:01 IST 2026
[2026-06-13 22:46:01,261.261 INFO    ] ================================================
[2026-06-13 22:46:01,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:01
[2026-06-13 22:46:02,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:02,448.448 INFO    ] Initializing speech engine...
[2026-06-13 22:46:02,465.465 INFO    ] 2026-06-13 22:46:02
[2026-06-13 22:46:02,798.798 INFO    ] 2026-06-13 22:46:02
[2026-06-13 22:46:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:03,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:03,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:03,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:03,211.211 INFO    ] time= 13/06/2026 22:46:03
[2026-06-13 22:46:03,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:03,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:03,359.359 INFO    ] No existing commands found in stream
[2026-06-13 22:46:08,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:46:08,374.374 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 22:46:09,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:46:09,837.837 INFO    ] Checking for system updates...
[2026-06-13 22:46:09,857.857 INFO    ] 200
[2026-06-13 22:46:09,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:09,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:09,890.890 INFO    ] No update needed
[2026-06-13 22:46:09,891.891 INFO    ] Checking for camera pi updates...
[2026-06-13 22:46:09,912.912 INFO    ] 200
[2026-06-13 22:46:09,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:09,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:46:09,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:09,975.975 INFO    ] No camera update needed
[2026-06-13 22:46:09,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:46:09,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:46:09,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:46:09,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:12,024.024 INFO    ] ================================================
[2026-06-13 22:46:12,040.040 INFO    ] Launching Daemon at Sat Jun 13 22:46:12 IST 2026
[2026-06-13 22:46:12,050.050 INFO    ] ================================================
[2026-06-13 22:46:12,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:12
[2026-06-13 22:46:12,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:12,826.826 INFO    ] Initializing speech engine...
[2026-06-13 22:46:12,831.831 INFO    ] 2026-06-13 22:46:12
[2026-06-13 22:46:13,059.059 INFO    ] 2026-06-13 22:46:13
[2026-06-13 22:46:13,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:13,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:13,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:13,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:13,471.471 INFO    ] time= 13/06/2026 22:46:13
[2026-06-13 22:46:13,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:13,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:13,634.634 INFO    ] No existing commands found in stream
[2026-06-13 22:46:18,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:46:18,646.646 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-13 22:46:20,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:46:20,912.912 INFO    ] Checking for system updates...
[2026-06-13 22:46:20,949.949 INFO    ] 200
[2026-06-13 22:46:20,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:21,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:21,013.013 INFO    ] No update needed
[2026-06-13 22:46:21,016.016 INFO    ] Checking for camera pi updates...
[2026-06-13 22:46:21,050.050 INFO    ] 200
[2026-06-13 22:46:21,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:21,093.093 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:46:21,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:21,138.138 INFO    ] No camera update needed
[2026-06-13 22:46:21,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:46:21,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:46:21,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:46:21,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:23,195.195 INFO    ] ================================================
[2026-06-13 22:46:23,210.210 INFO    ] Launching Daemon at Sat Jun 13 22:46:23 IST 2026
[2026-06-13 22:46:23,221.221 INFO    ] ================================================
[2026-06-13 22:46:23,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:23
[2026-06-13 22:46:23,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:24,024.024 INFO    ] Initializing speech engine...
[2026-06-13 22:46:24,029.029 INFO    ] 2026-06-13 22:46:24
[2026-06-13 22:46:24,255.255 INFO    ] 2026-06-13 22:46:24
[2026-06-13 22:46:24,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:24,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:24,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:24,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:24,682.682 INFO    ] time= 13/06/2026 22:46:24
[2026-06-13 22:46:24,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:24,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:24,811.811 INFO    ] No existing commands found in stream
[2026-06-13 22:46:29,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:46:29,822.822 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-13 22:46:31,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:46:31,119.119 INFO    ] Checking for system updates...
[2026-06-13 22:46:31,140.140 INFO    ] 200
[2026-06-13 22:46:31,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:31,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:31,175.175 INFO    ] No update needed
[2026-06-13 22:46:31,177.177 INFO    ] Checking for camera pi updates...
[2026-06-13 22:46:31,199.199 INFO    ] 200
[2026-06-13 22:46:31,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:31,224.224 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:46:31,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:46:31,267.267 INFO    ] No camera update needed
[2026-06-13 22:46:31,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:46:31,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:46:31,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:46:31,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:33,309.309 INFO    ] ================================================
[2026-06-13 22:46:33,324.324 INFO    ] Launching Daemon at Sat Jun 13 22:46:33 IST 2026
[2026-06-13 22:46:33,335.335 INFO    ] ================================================
[2026-06-13 22:46:33,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:33
[2026-06-13 22:46:34,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:34,212.212 INFO    ] Initializing speech engine...
[2026-06-13 22:46:34,218.218 INFO    ] 2026-06-13 22:46:34
[2026-06-13 22:46:34,427.427 INFO    ] 2026-06-13 22:46:34
[2026-06-13 22:46:34,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:34,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:34,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:34,831.831 INFO    ] time= 13/06/2026 22:46:34
[2026-06-13 22:46:34,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:34,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:34,950.950 INFO    ] No existing commands found in stream
[2026-06-13 22:46:39,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:46:39,963.963 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 22:46:42,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:46:42,835.835 INFO    ] Checking for system updates...
[2026-06-13 22:46:42,857.857 INFO    ] 200
[2026-06-13 22:46:42,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:42,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:46:42,893.893 INFO    ] No update needed
[2026-06-13 22:46:42,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 22:46:42,918.918 INFO    ] 200
[2026-06-13 22:46:42,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:42,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:46:42,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:46:42,994.994 INFO    ] No camera update needed
[2026-06-13 22:46:42,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:46:42,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:46:43,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:46:43,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:45,045.045 INFO    ] ================================================
[2026-06-13 22:46:45,060.060 INFO    ] Launching Daemon at Sat Jun 13 22:46:45 IST 2026
[2026-06-13 22:46:45,072.072 INFO    ] ================================================
[2026-06-13 22:46:45,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:45
[2026-06-13 22:46:45,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:45,911.911 INFO    ] Initializing speech engine...
[2026-06-13 22:46:45,917.917 INFO    ] 2026-06-13 22:46:45
[2026-06-13 22:46:46,123.123 INFO    ] 2026-06-13 22:46:46
[2026-06-13 22:46:46,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:46,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:46,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:46,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:46,542.542 INFO    ] time= 13/06/2026 22:46:46
[2026-06-13 22:46:46,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:46,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:46,644.644 INFO    ] No existing commands found in stream
[2026-06-13 22:46:51,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:46:51,657.657 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 22:46:55,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:46:55,081.081 INFO    ] Checking for system updates...
[2026-06-13 22:46:55,124.124 INFO    ] 200
[2026-06-13 22:46:55,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:55,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:46:55,189.189 INFO    ] No update needed
[2026-06-13 22:46:55,191.191 INFO    ] Checking for camera pi updates...
[2026-06-13 22:46:55,225.225 INFO    ] 200
[2026-06-13 22:46:55,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:46:55,268.268 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:46:55,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:46:55,413.413 INFO    ] No camera update needed
[2026-06-13 22:46:55,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:46:55,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:46:55,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:46:55,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:46:57,469.469 INFO    ] ================================================
[2026-06-13 22:46:57,484.484 INFO    ] Launching Daemon at Sat Jun 13 22:46:57 IST 2026
[2026-06-13 22:46:57,495.495 INFO    ] ================================================
[2026-06-13 22:46:57,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:46:57
[2026-06-13 22:46:58,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:46:58,371.371 INFO    ] Initializing speech engine...
[2026-06-13 22:46:58,381.381 INFO    ] 2026-06-13 22:46:58
[2026-06-13 22:46:58,647.647 INFO    ] 2026-06-13 22:46:58
[2026-06-13 22:46:58,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:46:58,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:46:58,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:46:59,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:46:59,118.118 INFO    ] time= 13/06/2026 22:46:59
[2026-06-13 22:46:59,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:46:59,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:46:59,262.262 INFO    ] No existing commands found in stream
[2026-06-13 22:47:04,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:47:04,272.272 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 22:47:06,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:47:06,903.903 INFO    ] Checking for system updates...
[2026-06-13 22:47:06,939.939 INFO    ] 200
[2026-06-13 22:47:06,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:06,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:47:06,985.985 INFO    ] No update needed
[2026-06-13 22:47:06,986.986 INFO    ] Checking for camera pi updates...
[2026-06-13 22:47:07,007.007 INFO    ] 200
[2026-06-13 22:47:07,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:07,031.031 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:47:07,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:07,076.076 INFO    ] No camera update needed
[2026-06-13 22:47:07,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:47:07,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:47:07,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:47:07,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:47:09,127.127 INFO    ] ================================================
[2026-06-13 22:47:09,143.143 INFO    ] Launching Daemon at Sat Jun 13 22:47:09 IST 2026
[2026-06-13 22:47:09,154.154 INFO    ] ================================================
[2026-06-13 22:47:09,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:47:09
[2026-06-13 22:47:10,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:47:10,375.375 INFO    ] Initializing speech engine...
[2026-06-13 22:47:10,384.384 INFO    ] 2026-06-13 22:47:10
[2026-06-13 22:47:10,655.655 INFO    ] 2026-06-13 22:47:10
[2026-06-13 22:47:10,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:47:10,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:47:10,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:47:11,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:47:11,032.032 INFO    ] time= 13/06/2026 22:47:11
[2026-06-13 22:47:11,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:47:11,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:47:11,160.160 INFO    ] No existing commands found in stream
[2026-06-13 22:47:16,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:47:16,173.173 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 22:47:16,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:47:16,867.867 INFO    ] Checking for system updates...
[2026-06-13 22:47:16,887.887 INFO    ] 200
[2026-06-13 22:47:16,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:16,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:16,921.921 INFO    ] No update needed
[2026-06-13 22:47:16,923.923 INFO    ] Checking for camera pi updates...
[2026-06-13 22:47:16,945.945 INFO    ] 200
[2026-06-13 22:47:16,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:16,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:47:17,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:17,017.017 INFO    ] No camera update needed
[2026-06-13 22:47:17,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:47:17,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:47:17,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:47:17,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:47:19,064.064 INFO    ] ================================================
[2026-06-13 22:47:19,076.076 INFO    ] Launching Daemon at Sat Jun 13 22:47:19 IST 2026
[2026-06-13 22:47:19,082.082 INFO    ] ================================================
[2026-06-13 22:47:19,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:47:19
[2026-06-13 22:47:19,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:47:19,898.898 INFO    ] Initializing speech engine...
[2026-06-13 22:47:19,909.909 INFO    ] 2026-06-13 22:47:19
[2026-06-13 22:47:20,125.125 INFO    ] 2026-06-13 22:47:20
[2026-06-13 22:47:20,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:47:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:47:20,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:47:20,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:47:20,553.553 INFO    ] time= 13/06/2026 22:47:20
[2026-06-13 22:47:20,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:47:20,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:47:20,688.688 INFO    ] No existing commands found in stream
[2026-06-13 22:47:25,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:47:25,728.728 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-13 22:47:29,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:47:29,335.335 INFO    ] Checking for system updates...
[2026-06-13 22:47:29,375.375 INFO    ] 200
[2026-06-13 22:47:29,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:29,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:29,437.437 INFO    ] No update needed
[2026-06-13 22:47:29,439.439 INFO    ] Checking for camera pi updates...
[2026-06-13 22:47:29,475.475 INFO    ] 200
[2026-06-13 22:47:29,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:29,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:47:29,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:29,574.574 INFO    ] No camera update needed
[2026-06-13 22:47:29,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:47:29,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:47:29,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:47:29,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:47:31,620.620 INFO    ] ================================================
[2026-06-13 22:47:31,628.628 INFO    ] Launching Daemon at Sat Jun 13 22:47:31 IST 2026
[2026-06-13 22:47:31,634.634 INFO    ] ================================================
[2026-06-13 22:47:31,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:47:31
[2026-06-13 22:47:32,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:47:32,890.890 INFO    ] Initializing speech engine...
[2026-06-13 22:47:32,900.900 INFO    ] 2026-06-13 22:47:32
[2026-06-13 22:47:33,162.162 INFO    ] 2026-06-13 22:47:33
[2026-06-13 22:47:33,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:47:33,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:47:33,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:47:33,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:47:33,656.656 INFO    ] time= 13/06/2026 22:47:33
[2026-06-13 22:47:33,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:47:33,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:47:33,772.772 INFO    ] No existing commands found in stream
[2026-06-13 22:47:38,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:47:38,786.786 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 22:47:41,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:47:41,639.639 INFO    ] Checking for system updates...
[2026-06-13 22:47:41,660.660 INFO    ] 200
[2026-06-13 22:47:41,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:41,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:41,695.695 INFO    ] No update needed
[2026-06-13 22:47:41,697.697 INFO    ] Checking for camera pi updates...
[2026-06-13 22:47:41,717.717 INFO    ] 200
[2026-06-13 22:47:41,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:41,742.742 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:47:41,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:47:41,779.779 INFO    ] No camera update needed
[2026-06-13 22:47:41,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:47:41,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:47:41,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:47:41,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:47:43,831.831 INFO    ] ================================================
[2026-06-13 22:47:43,846.846 INFO    ] Launching Daemon at Sat Jun 13 22:47:43 IST 2026
[2026-06-13 22:47:43,856.856 INFO    ] ================================================
[2026-06-13 22:47:44,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:47:44
[2026-06-13 22:47:44,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:47:44,641.641 INFO    ] Initializing speech engine...
[2026-06-13 22:47:44,645.645 INFO    ] 2026-06-13 22:47:44
[2026-06-13 22:47:44,872.872 INFO    ] 2026-06-13 22:47:44
[2026-06-13 22:47:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:47:45,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:47:45,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:47:45,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:47:45,309.309 INFO    ] time= 13/06/2026 22:47:45
[2026-06-13 22:47:45,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:47:45,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:47:45,424.424 INFO    ] No existing commands found in stream
[2026-06-13 22:47:50,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:47:50,437.437 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-13 22:47:52,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:47:52,079.079 INFO    ] Checking for system updates...
[2026-06-13 22:47:52,100.100 INFO    ] 200
[2026-06-13 22:47:52,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:52,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:47:52,134.134 INFO    ] No update needed
[2026-06-13 22:47:52,135.135 INFO    ] Checking for camera pi updates...
[2026-06-13 22:47:52,156.156 INFO    ] 200
[2026-06-13 22:47:52,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:47:52,182.182 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:47:52,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:47:52,228.228 INFO    ] No camera update needed
[2026-06-13 22:47:52,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:47:52,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:47:52,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:47:52,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:47:54,289.289 INFO    ] ================================================
[2026-06-13 22:47:54,305.305 INFO    ] Launching Daemon at Sat Jun 13 22:47:54 IST 2026
[2026-06-13 22:47:54,315.315 INFO    ] ================================================
[2026-06-13 22:47:54,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:47:54
[2026-06-13 22:47:55,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:47:55,667.667 INFO    ] Initializing speech engine...
[2026-06-13 22:47:55,675.675 INFO    ] 2026-06-13 22:47:55
[2026-06-13 22:47:55,926.926 INFO    ] 2026-06-13 22:47:55
[2026-06-13 22:47:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:47:56,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:47:56,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:47:56,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:47:56,266.266 INFO    ] time= 13/06/2026 22:47:56
[2026-06-13 22:47:56,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:47:56,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:47:56,379.379 INFO    ] No existing commands found in stream
[2026-06-13 22:48:01,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:01,394.394 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-13 22:48:03,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:48:03,605.605 INFO    ] Checking for system updates...
[2026-06-13 22:48:03,642.642 INFO    ] 200
[2026-06-13 22:48:03,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:03,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:03,702.702 INFO    ] No update needed
[2026-06-13 22:48:03,704.704 INFO    ] Checking for camera pi updates...
[2026-06-13 22:48:03,741.741 INFO    ] 200
[2026-06-13 22:48:03,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:03,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:48:03,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:03,808.808 INFO    ] No camera update needed
[2026-06-13 22:48:03,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:48:03,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:48:03,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:48:03,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:48:05,856.856 INFO    ] ================================================
[2026-06-13 22:48:05,872.872 INFO    ] Launching Daemon at Sat Jun 13 22:48:05 IST 2026
[2026-06-13 22:48:05,883.883 INFO    ] ================================================
[2026-06-13 22:48:06,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:48:06
[2026-06-13 22:48:06,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:48:07,191.191 INFO    ] Initializing speech engine...
[2026-06-13 22:48:07,199.199 INFO    ] 2026-06-13 22:48:07
[2026-06-13 22:48:07,497.497 INFO    ] 2026-06-13 22:48:07
[2026-06-13 22:48:07,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:48:07,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:48:07,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:48:07,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:48:07,876.876 INFO    ] time= 13/06/2026 22:48:07
[2026-06-13 22:48:07,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:48:07,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:48:08,048.048 INFO    ] No existing commands found in stream
[2026-06-13 22:48:13,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:13,071.071 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 22:48:14,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:48:14,784.784 INFO    ] Checking for system updates...
[2026-06-13 22:48:14,806.806 INFO    ] 200
[2026-06-13 22:48:14,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:14,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:48:14,842.842 INFO    ] No update needed
[2026-06-13 22:48:14,843.843 INFO    ] Checking for camera pi updates...
[2026-06-13 22:48:14,863.863 INFO    ] 200
[2026-06-13 22:48:14,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:14,887.887 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:48:14,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:48:14,925.925 INFO    ] No camera update needed
[2026-06-13 22:48:14,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:48:14,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:48:14,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:48:14,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:48:16,970.970 INFO    ] ================================================
[2026-06-13 22:48:16,985.985 INFO    ] Launching Daemon at Sat Jun 13 22:48:16 IST 2026
[2026-06-13 22:48:17,996.996 INFO    ] ================================================
[2026-06-13 22:48:17,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:48:17
[2026-06-13 22:48:17,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:48:17,852.852 INFO    ] Initializing speech engine...
[2026-06-13 22:48:17,858.858 INFO    ] 2026-06-13 22:48:17
[2026-06-13 22:48:18,069.069 INFO    ] 2026-06-13 22:48:18
[2026-06-13 22:48:18,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:48:18,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:48:18,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:48:18,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:48:18,479.479 INFO    ] time= 13/06/2026 22:48:18
[2026-06-13 22:48:18,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:48:18,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:48:18,599.599 INFO    ] No existing commands found in stream
[2026-06-13 22:48:23,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:23,612.612 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 22:48:27,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:48:27,875.875 INFO    ] Checking for system updates...
[2026-06-13 22:48:27,896.896 INFO    ] 200
[2026-06-13 22:48:27,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:27,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:27,932.932 INFO    ] No update needed
[2026-06-13 22:48:27,934.934 INFO    ] Checking for camera pi updates...
[2026-06-13 22:48:27,956.956 INFO    ] 200
[2026-06-13 22:48:27,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:27,983.983 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:48:28,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:28,023.023 INFO    ] No camera update needed
[2026-06-13 22:48:28,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:48:28,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:48:28,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:48:28,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:48:30,073.073 INFO    ] ================================================
[2026-06-13 22:48:30,088.088 INFO    ] Launching Daemon at Sat Jun 13 22:48:30 IST 2026
[2026-06-13 22:48:30,099.099 INFO    ] ================================================
[2026-06-13 22:48:30,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:48:30
[2026-06-13 22:48:30,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:48:30,951.951 INFO    ] Initializing speech engine...
[2026-06-13 22:48:30,956.956 INFO    ] 2026-06-13 22:48:30
[2026-06-13 22:48:31,159.159 INFO    ] 2026-06-13 22:48:31
[2026-06-13 22:48:31,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:48:31,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:48:31,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:48:31,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:48:31,568.568 INFO    ] time= 13/06/2026 22:48:31
[2026-06-13 22:48:31,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:48:31,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:48:31,671.671 INFO    ] No existing commands found in stream
[2026-06-13 22:48:36,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:36,684.684 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 22:48:40,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:48:40,946.946 INFO    ] Checking for system updates...
[2026-06-13 22:48:40,968.968 INFO    ] 200
[2026-06-13 22:48:40,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:41,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:41,002.002 INFO    ] No update needed
[2026-06-13 22:48:41,003.003 INFO    ] Checking for camera pi updates...
[2026-06-13 22:48:41,023.023 INFO    ] 200
[2026-06-13 22:48:41,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:41,050.050 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:48:41,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:41,101.101 INFO    ] No camera update needed
[2026-06-13 22:48:41,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:48:41,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:48:41,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:48:41,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:48:43,151.151 INFO    ] ================================================
[2026-06-13 22:48:43,166.166 INFO    ] Launching Daemon at Sat Jun 13 22:48:43 IST 2026
[2026-06-13 22:48:43,177.177 INFO    ] ================================================
[2026-06-13 22:48:43,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:48:43
[2026-06-13 22:48:43,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:48:43,989.989 INFO    ] Initializing speech engine...
[2026-06-13 22:48:43,994.994 INFO    ] 2026-06-13 22:48:43
[2026-06-13 22:48:44,199.199 INFO    ] 2026-06-13 22:48:44
[2026-06-13 22:48:44,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:48:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:48:44,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:48:44,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:48:44,617.617 INFO    ] time= 13/06/2026 22:48:44
[2026-06-13 22:48:44,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:48:44,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:48:44,715.715 INFO    ] No existing commands found in stream
[2026-06-13 22:48:49,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:49,727.727 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-13 22:48:50,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:48:50,319.319 INFO    ] Checking for system updates...
[2026-06-13 22:48:50,341.341 INFO    ] 200
[2026-06-13 22:48:50,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:50,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:50,374.374 INFO    ] No update needed
[2026-06-13 22:48:50,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 22:48:50,396.396 INFO    ] 200
[2026-06-13 22:48:50,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:48:50,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:48:50,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:48:50,459.459 INFO    ] No camera update needed
[2026-06-13 22:48:50,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:48:50,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:48:50,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:48:50,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:48:52,508.508 INFO    ] ================================================
[2026-06-13 22:48:52,523.523 INFO    ] Launching Daemon at Sat Jun 13 22:48:52 IST 2026
[2026-06-13 22:48:52,534.534 INFO    ] ================================================
[2026-06-13 22:48:52,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:48:52
[2026-06-13 22:48:53,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:48:53,313.313 INFO    ] Initializing speech engine...
[2026-06-13 22:48:53,316.316 INFO    ] 2026-06-13 22:48:53
[2026-06-13 22:48:53,535.535 INFO    ] 2026-06-13 22:48:53
[2026-06-13 22:48:53,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:48:53,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:48:53,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:48:53,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:48:53,947.947 INFO    ] time= 13/06/2026 22:48:53
[2026-06-13 22:48:53,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:48:53,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:48:54,059.059 INFO    ] No existing commands found in stream
[2026-06-13 22:48:59,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:48:59,073.073 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-13 22:49:01,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:49:01,541.541 INFO    ] Checking for system updates...
[2026-06-13 22:49:01,590.590 INFO    ] 200
[2026-06-13 22:49:01,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:01,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:01,674.674 INFO    ] No update needed
[2026-06-13 22:49:01,677.677 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:01,717.717 INFO    ] 200
[2026-06-13 22:49:01,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:01,778.778 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:01,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:01,917.917 INFO    ] No camera update needed
[2026-06-13 22:49:01,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:01,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:01,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:01,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:49:03,980.980 INFO    ] ================================================
[2026-06-13 22:49:04,995.995 INFO    ] Launching Daemon at Sat Jun 13 22:49:03 IST 2026
[2026-06-13 22:49:04,006.006 INFO    ] ================================================
[2026-06-13 22:49:04,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:49:04
[2026-06-13 22:49:05,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:49:05,165.165 INFO    ] Initializing speech engine...
[2026-06-13 22:49:05,173.173 INFO    ] 2026-06-13 22:49:05
[2026-06-13 22:49:05,398.398 INFO    ] 2026-06-13 22:49:05
[2026-06-13 22:49:05,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:49:05,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:49:05,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:49:05,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:49:05,796.796 INFO    ] time= 13/06/2026 22:49:05
[2026-06-13 22:49:05,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:49:05,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:49:05,963.963 INFO    ] No existing commands found in stream
[2026-06-13 22:49:10,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:49:10,981.981 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 22:49:14,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:49:14,828.828 INFO    ] Checking for system updates...
[2026-06-13 22:49:14,850.850 INFO    ] 200
[2026-06-13 22:49:14,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:14,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:14,887.887 INFO    ] No update needed
[2026-06-13 22:49:14,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:14,911.911 INFO    ] 200
[2026-06-13 22:49:14,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:14,938.938 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:14,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:14,988.988 INFO    ] No camera update needed
[2026-06-13 22:49:14,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:14,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:14,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:14,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:49:17,038.038 INFO    ] ================================================
[2026-06-13 22:49:17,053.053 INFO    ] Launching Daemon at Sat Jun 13 22:49:17 IST 2026
[2026-06-13 22:49:17,064.064 INFO    ] ================================================
[2026-06-13 22:49:17,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:49:17
[2026-06-13 22:49:17,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:49:17,854.854 INFO    ] Initializing speech engine...
[2026-06-13 22:49:17,867.867 INFO    ] 2026-06-13 22:49:17
[2026-06-13 22:49:18,075.075 INFO    ] 2026-06-13 22:49:18
[2026-06-13 22:49:18,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:49:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:49:18,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:49:18,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:49:18,492.492 INFO    ] time= 13/06/2026 22:49:18
[2026-06-13 22:49:18,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:49:18,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:49:18,621.621 INFO    ] No existing commands found in stream
[2026-06-13 22:49:23,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:49:23,636.636 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-13 22:49:26,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:49:26,777.777 INFO    ] Checking for system updates...
[2026-06-13 22:49:26,798.798 INFO    ] 200
[2026-06-13 22:49:26,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:26,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:49:26,833.833 INFO    ] No update needed
[2026-06-13 22:49:26,834.834 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:26,855.855 INFO    ] 200
[2026-06-13 22:49:26,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:26,880.880 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:26,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:49:26,917.917 INFO    ] No camera update needed
[2026-06-13 22:49:26,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:26,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:26,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:26,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:49:28,966.966 INFO    ] ================================================
[2026-06-13 22:49:28,981.981 INFO    ] Launching Daemon at Sat Jun 13 22:49:28 IST 2026
[2026-06-13 22:49:28,993.993 INFO    ] ================================================
[2026-06-13 22:49:29,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:49:29
[2026-06-13 22:49:29,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:49:29,857.857 INFO    ] Initializing speech engine...
[2026-06-13 22:49:29,863.863 INFO    ] 2026-06-13 22:49:29
[2026-06-13 22:49:30,073.073 INFO    ] 2026-06-13 22:49:30
[2026-06-13 22:49:30,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:49:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:49:30,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:49:30,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:49:30,503.503 INFO    ] time= 13/06/2026 22:49:30
[2026-06-13 22:49:30,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:49:30,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:49:30,715.715 INFO    ] No existing commands found in stream
[2026-06-13 22:49:35,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:49:35,748.748 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-13 22:49:39,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:49:39,532.532 INFO    ] Checking for system updates...
[2026-06-13 22:49:39,553.553 INFO    ] 200
[2026-06-13 22:49:39,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:39,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:39,589.589 INFO    ] No update needed
[2026-06-13 22:49:39,590.590 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:39,611.611 INFO    ] 200
[2026-06-13 22:49:39,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:39,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:39,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:39,678.678 INFO    ] No camera update needed
[2026-06-13 22:49:39,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:39,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:39,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:39,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:49:41,726.726 INFO    ] ================================================
[2026-06-13 22:49:41,741.741 INFO    ] Launching Daemon at Sat Jun 13 22:49:41 IST 2026
[2026-06-13 22:49:41,753.753 INFO    ] ================================================
[2026-06-13 22:49:42,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:49:42
[2026-06-13 22:49:42,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:49:42,526.526 INFO    ] Initializing speech engine...
[2026-06-13 22:49:42,539.539 INFO    ] 2026-06-13 22:49:42
[2026-06-13 22:49:42,746.746 INFO    ] 2026-06-13 22:49:42
[2026-06-13 22:49:42,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:49:42,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:49:42,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:49:43,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:49:43,153.153 INFO    ] time= 13/06/2026 22:49:43
[2026-06-13 22:49:43,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:49:43,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:49:43,265.265 INFO    ] No existing commands found in stream
[2026-06-13 22:49:48,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:49:48,276.276 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-13 22:49:49,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:49:49,047.047 INFO    ] Checking for system updates...
[2026-06-13 22:49:49,068.068 INFO    ] 200
[2026-06-13 22:49:49,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:49,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:49:49,101.101 INFO    ] No update needed
[2026-06-13 22:49:49,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:49,123.123 INFO    ] 200
[2026-06-13 22:49:49,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:49,150.150 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:49,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:49:49,172.172 INFO    ] No camera update needed
[2026-06-13 22:49:49,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:49,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:49,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:49,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:49:51,221.221 INFO    ] ================================================
[2026-06-13 22:49:51,237.237 INFO    ] Launching Daemon at Sat Jun 13 22:49:51 IST 2026
[2026-06-13 22:49:51,248.248 INFO    ] ================================================
[2026-06-13 22:49:51,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:49:51
[2026-06-13 22:49:51,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:49:52,073.073 INFO    ] Initializing speech engine...
[2026-06-13 22:49:52,078.078 INFO    ] 2026-06-13 22:49:52
[2026-06-13 22:49:52,283.283 INFO    ] 2026-06-13 22:49:52
[2026-06-13 22:49:52,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:49:52,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:49:52,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:49:52,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:49:52,651.651 INFO    ] time= 13/06/2026 22:49:52
[2026-06-13 22:49:52,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:49:52,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:49:52,782.782 INFO    ] No existing commands found in stream
[2026-06-13 22:49:57,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:49:57,817.817 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 22:49:59,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:49:59,777.777 INFO    ] Checking for system updates...
[2026-06-13 22:49:59,798.798 INFO    ] 200
[2026-06-13 22:49:59,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:59,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:49:59,836.836 INFO    ] No update needed
[2026-06-13 22:49:59,837.837 INFO    ] Checking for camera pi updates...
[2026-06-13 22:49:59,857.857 INFO    ] 200
[2026-06-13 22:49:59,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:49:59,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:49:59,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:49:59,933.933 INFO    ] No camera update needed
[2026-06-13 22:49:59,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:49:59,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:49:59,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:49:59,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:02,064.064 INFO    ] ================================================
[2026-06-13 22:50:02,125.125 INFO    ] Launching Daemon at Sat Jun 13 22:50:02 IST 2026
[2026-06-13 22:50:02,150.150 INFO    ] ================================================
[2026-06-13 22:50:02,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:02
[2026-06-13 22:50:03,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:03,889.889 INFO    ] Initializing speech engine...
[2026-06-13 22:50:03,895.895 INFO    ] 2026-06-13 22:50:03
[2026-06-13 22:50:04,204.204 INFO    ] 2026-06-13 22:50:04
[2026-06-13 22:50:04,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:04,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:04,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:04,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:04,560.560 INFO    ] time= 13/06/2026 22:50:04
[2026-06-13 22:50:04,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:04,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:04,636.636 INFO    ] No existing commands found in stream
[2026-06-13 22:50:09,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:50:09,654.654 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-13 22:50:11,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:50:11,764.764 INFO    ] Checking for system updates...
[2026-06-13 22:50:11,787.787 INFO    ] 200
[2026-06-13 22:50:11,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:11,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:11,823.823 INFO    ] No update needed
[2026-06-13 22:50:11,825.825 INFO    ] Checking for camera pi updates...
[2026-06-13 22:50:11,844.844 INFO    ] 200
[2026-06-13 22:50:11,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:11,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:50:11,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:11,922.922 INFO    ] No camera update needed
[2026-06-13 22:50:11,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:50:11,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:50:11,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:50:11,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:13,970.970 INFO    ] ================================================
[2026-06-13 22:50:13,986.986 INFO    ] Launching Daemon at Sat Jun 13 22:50:13 IST 2026
[2026-06-13 22:50:14,998.998 INFO    ] ================================================
[2026-06-13 22:50:14,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:14
[2026-06-13 22:50:14,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:14,843.843 INFO    ] Initializing speech engine...
[2026-06-13 22:50:14,852.852 INFO    ] 2026-06-13 22:50:14
[2026-06-13 22:50:15,103.103 INFO    ] 2026-06-13 22:50:15
[2026-06-13 22:50:15,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:15,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:15,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:15,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:15,474.474 INFO    ] time= 13/06/2026 22:50:15
[2026-06-13 22:50:15,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:15,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:15,665.665 INFO    ] No existing commands found in stream
[2026-06-13 22:50:20,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:50:20,685.685 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 22:50:22,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:50:22,094.094 INFO    ] Checking for system updates...
[2026-06-13 22:50:22,115.115 INFO    ] 200
[2026-06-13 22:50:22,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:22,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:22,150.150 INFO    ] No update needed
[2026-06-13 22:50:22,152.152 INFO    ] Checking for camera pi updates...
[2026-06-13 22:50:22,173.173 INFO    ] 200
[2026-06-13 22:50:22,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:22,199.199 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:50:22,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:22,241.241 INFO    ] No camera update needed
[2026-06-13 22:50:22,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:50:22,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:50:22,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:50:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:24,288.288 INFO    ] ================================================
[2026-06-13 22:50:24,305.305 INFO    ] Launching Daemon at Sat Jun 13 22:50:24 IST 2026
[2026-06-13 22:50:24,316.316 INFO    ] ================================================
[2026-06-13 22:50:24,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:24
[2026-06-13 22:50:24,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:25,126.126 INFO    ] Initializing speech engine...
[2026-06-13 22:50:25,132.132 INFO    ] 2026-06-13 22:50:25
[2026-06-13 22:50:25,337.337 INFO    ] 2026-06-13 22:50:25
[2026-06-13 22:50:25,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:25,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:25,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:25,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:25,689.689 INFO    ] time= 13/06/2026 22:50:25
[2026-06-13 22:50:25,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:25,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:25,872.872 INFO    ] No existing commands found in stream
[2026-06-13 22:50:30,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:50:30,886.886 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 22:50:31,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:50:31,931.931 INFO    ] Checking for system updates...
[2026-06-13 22:50:31,957.957 INFO    ] 200
[2026-06-13 22:50:31,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:31,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:31,999.999 INFO    ] No update needed
[2026-06-13 22:50:32,001.001 INFO    ] Checking for camera pi updates...
[2026-06-13 22:50:32,024.024 INFO    ] 200
[2026-06-13 22:50:32,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:32,054.054 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:50:32,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:50:32,078.078 INFO    ] No camera update needed
[2026-06-13 22:50:32,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:50:32,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:50:32,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:50:32,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:34,121.121 INFO    ] ================================================
[2026-06-13 22:50:34,137.137 INFO    ] Launching Daemon at Sat Jun 13 22:50:34 IST 2026
[2026-06-13 22:50:34,148.148 INFO    ] ================================================
[2026-06-13 22:50:34,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:34
[2026-06-13 22:50:34,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:34,929.929 INFO    ] Initializing speech engine...
[2026-06-13 22:50:34,934.934 INFO    ] 2026-06-13 22:50:34
[2026-06-13 22:50:35,152.152 INFO    ] 2026-06-13 22:50:35
[2026-06-13 22:50:35,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:35,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:35,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:35,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:35,549.549 INFO    ] time= 13/06/2026 22:50:35
[2026-06-13 22:50:35,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:35,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:35,677.677 INFO    ] No existing commands found in stream
[2026-06-13 22:50:40,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:50:40,689.689 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 22:50:42,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:50:42,238.238 INFO    ] Checking for system updates...
[2026-06-13 22:50:42,258.258 INFO    ] 200
[2026-06-13 22:50:42,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:42,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:50:42,292.292 INFO    ] No update needed
[2026-06-13 22:50:42,293.293 INFO    ] Checking for camera pi updates...
[2026-06-13 22:50:42,315.315 INFO    ] 200
[2026-06-13 22:50:42,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:42,342.342 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:50:42,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:50:42,365.365 INFO    ] No camera update needed
[2026-06-13 22:50:42,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:50:42,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:50:42,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:50:42,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:44,414.414 INFO    ] ================================================
[2026-06-13 22:50:44,430.430 INFO    ] Launching Daemon at Sat Jun 13 22:50:44 IST 2026
[2026-06-13 22:50:44,442.442 INFO    ] ================================================
[2026-06-13 22:50:44,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:44
[2026-06-13 22:50:45,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:45,231.231 INFO    ] Initializing speech engine...
[2026-06-13 22:50:45,236.236 INFO    ] 2026-06-13 22:50:45
[2026-06-13 22:50:45,442.442 INFO    ] 2026-06-13 22:50:45
[2026-06-13 22:50:45,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:45,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:45,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:45,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:45,840.840 INFO    ] time= 13/06/2026 22:50:45
[2026-06-13 22:50:45,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:45,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:45,970.970 INFO    ] No existing commands found in stream
[2026-06-13 22:50:50,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:50:50,982.982 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-13 22:50:52,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:50:52,043.043 INFO    ] Checking for system updates...
[2026-06-13 22:50:52,065.065 INFO    ] 200
[2026-06-13 22:50:52,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:52,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:50:52,101.101 INFO    ] No update needed
[2026-06-13 22:50:52,102.102 INFO    ] Checking for camera pi updates...
[2026-06-13 22:50:52,123.123 INFO    ] 200
[2026-06-13 22:50:52,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:50:52,147.147 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:50:52,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:50:52,187.187 INFO    ] No camera update needed
[2026-06-13 22:50:52,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:50:52,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:50:52,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:50:52,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:50:54,233.233 INFO    ] ================================================
[2026-06-13 22:50:54,248.248 INFO    ] Launching Daemon at Sat Jun 13 22:50:54 IST 2026
[2026-06-13 22:50:54,260.260 INFO    ] ================================================
[2026-06-13 22:50:54,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:50:54
[2026-06-13 22:50:54,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:50:55,065.065 INFO    ] Initializing speech engine...
[2026-06-13 22:50:55,074.074 INFO    ] 2026-06-13 22:50:55
[2026-06-13 22:50:55,282.282 INFO    ] 2026-06-13 22:50:55
[2026-06-13 22:50:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:50:55,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:50:55,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:50:55,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:50:55,701.701 INFO    ] time= 13/06/2026 22:50:55
[2026-06-13 22:50:55,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:50:55,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:50:55,799.799 INFO    ] No existing commands found in stream
[2026-06-13 22:51:00,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:00,811.811 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-13 22:51:01,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:51:01,786.786 INFO    ] Checking for system updates...
[2026-06-13 22:51:01,829.829 INFO    ] 200
[2026-06-13 22:51:01,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:01,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:01,903.903 INFO    ] No update needed
[2026-06-13 22:51:01,907.907 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:01,937.937 INFO    ] 200
[2026-06-13 22:51:01,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:01,971.971 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:02,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:02,010.010 INFO    ] No camera update needed
[2026-06-13 22:51:02,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:02,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:02,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:02,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:04,062.062 INFO    ] ================================================
[2026-06-13 22:51:04,077.077 INFO    ] Launching Daemon at Sat Jun 13 22:51:04 IST 2026
[2026-06-13 22:51:04,093.093 INFO    ] ================================================
[2026-06-13 22:51:04,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:04
[2026-06-13 22:51:04,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:51:04,918.918 INFO    ] Initializing speech engine...
[2026-06-13 22:51:04,923.923 INFO    ] 2026-06-13 22:51:04
[2026-06-13 22:51:05,126.126 INFO    ] 2026-06-13 22:51:05
[2026-06-13 22:51:05,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:51:05,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:51:05,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:51:05,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:51:05,618.618 INFO    ] time= 13/06/2026 22:51:05
[2026-06-13 22:51:05,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:51:05,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:51:05,855.855 INFO    ] No existing commands found in stream
[2026-06-13 22:51:10,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:10,879.879 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 22:51:14,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:51:14,179.179 INFO    ] Checking for system updates...
[2026-06-13 22:51:14,201.201 INFO    ] 200
[2026-06-13 22:51:14,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:14,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:14,233.233 INFO    ] No update needed
[2026-06-13 22:51:14,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:14,255.255 INFO    ] 200
[2026-06-13 22:51:14,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:14,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:14,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:14,322.322 INFO    ] No camera update needed
[2026-06-13 22:51:14,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:14,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:14,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:14,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:16,371.371 INFO    ] ================================================
[2026-06-13 22:51:16,387.387 INFO    ] Launching Daemon at Sat Jun 13 22:51:16 IST 2026
[2026-06-13 22:51:16,397.397 INFO    ] ================================================
[2026-06-13 22:51:16,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:16
[2026-06-13 22:51:17,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:51:17,216.216 INFO    ] Initializing speech engine...
[2026-06-13 22:51:17,223.223 INFO    ] 2026-06-13 22:51:17
[2026-06-13 22:51:17,467.467 INFO    ] 2026-06-13 22:51:17
[2026-06-13 22:51:17,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:51:17,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:51:17,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:51:17,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:51:17,892.892 INFO    ] time= 13/06/2026 22:51:17
[2026-06-13 22:51:17,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:51:17,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:51:18,023.023 INFO    ] No existing commands found in stream
[2026-06-13 22:51:23,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:23,036.036 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 22:51:23,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:51:23,868.868 INFO    ] Checking for system updates...
[2026-06-13 22:51:23,890.890 INFO    ] 200
[2026-06-13 22:51:23,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:23,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:51:23,925.925 INFO    ] No update needed
[2026-06-13 22:51:23,927.927 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:23,947.947 INFO    ] 200
[2026-06-13 22:51:23,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:23,972.972 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:24,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:51:24,014.014 INFO    ] No camera update needed
[2026-06-13 22:51:24,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:24,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:24,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:24,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:26,061.061 INFO    ] ================================================
[2026-06-13 22:51:26,076.076 INFO    ] Launching Daemon at Sat Jun 13 22:51:26 IST 2026
[2026-06-13 22:51:26,087.087 INFO    ] ================================================
[2026-06-13 22:51:26,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:26
[2026-06-13 22:51:26,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:51:26,914.914 INFO    ] Initializing speech engine...
[2026-06-13 22:51:26,922.922 INFO    ] 2026-06-13 22:51:26
[2026-06-13 22:51:27,190.190 INFO    ] 2026-06-13 22:51:27
[2026-06-13 22:51:27,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:51:27,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:51:27,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:51:27,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:51:27,619.619 INFO    ] time= 13/06/2026 22:51:27
[2026-06-13 22:51:27,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:51:27,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:51:27,774.774 INFO    ] No existing commands found in stream
[2026-06-13 22:51:32,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:32,786.786 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-13 22:51:34,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:51:34,872.872 INFO    ] Checking for system updates...
[2026-06-13 22:51:34,893.893 INFO    ] 200
[2026-06-13 22:51:34,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:34,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:34,928.928 INFO    ] No update needed
[2026-06-13 22:51:34,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:34,951.951 INFO    ] 200
[2026-06-13 22:51:34,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:34,977.977 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:35,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:35,019.019 INFO    ] No camera update needed
[2026-06-13 22:51:35,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:35,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:35,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:35,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:37,065.065 INFO    ] ================================================
[2026-06-13 22:51:37,080.080 INFO    ] Launching Daemon at Sat Jun 13 22:51:37 IST 2026
[2026-06-13 22:51:37,091.091 INFO    ] ================================================
[2026-06-13 22:51:37,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:37
[2026-06-13 22:51:37,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:51:37,865.865 INFO    ] Initializing speech engine...
[2026-06-13 22:51:37,874.874 INFO    ] 2026-06-13 22:51:37
[2026-06-13 22:51:38,084.084 INFO    ] 2026-06-13 22:51:38
[2026-06-13 22:51:38,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:51:38,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:51:38,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:51:38,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:51:38,487.487 INFO    ] time= 13/06/2026 22:51:38
[2026-06-13 22:51:38,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:51:38,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:51:38,600.600 INFO    ] No existing commands found in stream
[2026-06-13 22:51:43,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:43,613.613 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-13 22:51:46,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:51:46,659.659 INFO    ] Checking for system updates...
[2026-06-13 22:51:46,681.681 INFO    ] 200
[2026-06-13 22:51:46,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:46,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:46,714.714 INFO    ] No update needed
[2026-06-13 22:51:46,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:46,735.735 INFO    ] 200
[2026-06-13 22:51:46,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:46,760.760 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:46,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:51:46,803.803 INFO    ] No camera update needed
[2026-06-13 22:51:46,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:46,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:46,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:46,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:48,851.851 INFO    ] ================================================
[2026-06-13 22:51:48,866.866 INFO    ] Launching Daemon at Sat Jun 13 22:51:48 IST 2026
[2026-06-13 22:51:48,877.877 INFO    ] ================================================
[2026-06-13 22:51:49,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:49
[2026-06-13 22:51:49,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:51:49,679.679 INFO    ] Initializing speech engine...
[2026-06-13 22:51:49,689.689 INFO    ] 2026-06-13 22:51:49
[2026-06-13 22:51:49,894.894 INFO    ] 2026-06-13 22:51:49
[2026-06-13 22:51:49,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:51:50,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:51:50,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:51:50,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:51:50,300.300 INFO    ] time= 13/06/2026 22:51:50
[2026-06-13 22:51:50,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:51:50,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:51:50,470.470 INFO    ] No existing commands found in stream
[2026-06-13 22:51:55,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:51:55,492.492 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 22:51:57,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:51:57,029.029 INFO    ] Checking for system updates...
[2026-06-13 22:51:57,051.051 INFO    ] 200
[2026-06-13 22:51:57,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:57,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:51:57,086.086 INFO    ] No update needed
[2026-06-13 22:51:57,088.088 INFO    ] Checking for camera pi updates...
[2026-06-13 22:51:57,109.109 INFO    ] 200
[2026-06-13 22:51:57,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:51:57,135.135 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:51:57,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:51:57,175.175 INFO    ] No camera update needed
[2026-06-13 22:51:57,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:51:57,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:51:57,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:51:57,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:51:59,224.224 INFO    ] ================================================
[2026-06-13 22:51:59,239.239 INFO    ] Launching Daemon at Sat Jun 13 22:51:59 IST 2026
[2026-06-13 22:51:59,250.250 INFO    ] ================================================
[2026-06-13 22:51:59,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:51:59
[2026-06-13 22:51:59,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:00,042.042 INFO    ] Initializing speech engine...
[2026-06-13 22:52:00,046.046 INFO    ] 2026-06-13 22:52:00
[2026-06-13 22:52:00,278.278 INFO    ] 2026-06-13 22:52:00
[2026-06-13 22:52:00,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:00,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:00,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:00,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:00,695.695 INFO    ] time= 13/06/2026 22:52:00
[2026-06-13 22:52:00,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:00,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:00,839.839 INFO    ] No existing commands found in stream
[2026-06-13 22:52:05,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:52:05,852.852 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 22:52:07,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:52:07,147.147 INFO    ] Checking for system updates...
[2026-06-13 22:52:07,169.169 INFO    ] 200
[2026-06-13 22:52:07,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:07,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:52:07,206.206 INFO    ] No update needed
[2026-06-13 22:52:07,207.207 INFO    ] Checking for camera pi updates...
[2026-06-13 22:52:07,229.229 INFO    ] 200
[2026-06-13 22:52:07,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:07,255.255 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:52:07,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:52:07,293.293 INFO    ] No camera update needed
[2026-06-13 22:52:07,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:52:07,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:52:07,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:52:07,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:52:09,340.340 INFO    ] ================================================
[2026-06-13 22:52:09,356.356 INFO    ] Launching Daemon at Sat Jun 13 22:52:09 IST 2026
[2026-06-13 22:52:09,367.367 INFO    ] ================================================
[2026-06-13 22:52:09,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:52:09
[2026-06-13 22:52:10,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:10,170.170 INFO    ] Initializing speech engine...
[2026-06-13 22:52:10,175.175 INFO    ] 2026-06-13 22:52:10
[2026-06-13 22:52:10,382.382 INFO    ] 2026-06-13 22:52:10
[2026-06-13 22:52:10,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:10,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:10,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:10,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:10,796.796 INFO    ] time= 13/06/2026 22:52:10
[2026-06-13 22:52:10,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:10,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:10,894.894 INFO    ] No existing commands found in stream
[2026-06-13 22:52:15,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:52:15,904.904 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 22:52:17,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:52:17,024.024 INFO    ] Checking for system updates...
[2026-06-13 22:52:17,046.046 INFO    ] 200
[2026-06-13 22:52:17,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:17,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:17,083.083 INFO    ] No update needed
[2026-06-13 22:52:17,084.084 INFO    ] Checking for camera pi updates...
[2026-06-13 22:52:17,104.104 INFO    ] 200
[2026-06-13 22:52:17,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:17,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:52:17,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:17,173.173 INFO    ] No camera update needed
[2026-06-13 22:52:17,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:52:17,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:52:17,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:52:17,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:52:19,223.223 INFO    ] ================================================
[2026-06-13 22:52:19,239.239 INFO    ] Launching Daemon at Sat Jun 13 22:52:19 IST 2026
[2026-06-13 22:52:19,249.249 INFO    ] ================================================
[2026-06-13 22:52:21,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:52:19
[2026-06-13 22:52:22,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:22,486.486 INFO    ] Initializing speech engine...
[2026-06-13 22:52:22,491.491 INFO    ] 2026-06-13 22:52:22
[2026-06-13 22:52:22,707.707 INFO    ] 2026-06-13 22:52:22
[2026-06-13 22:52:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:22,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:22,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:23,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:23,111.111 INFO    ] time= 13/06/2026 22:52:23
[2026-06-13 22:52:23,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:23,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:23,220.220 INFO    ] No existing commands found in stream
[2026-06-13 22:52:28,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:52:28,234.234 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-13 22:52:31,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:52:31,376.376 INFO    ] Checking for system updates...
[2026-06-13 22:52:31,398.398 INFO    ] 200
[2026-06-13 22:52:31,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:31,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:52:31,433.433 INFO    ] No update needed
[2026-06-13 22:52:31,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 22:52:31,456.456 INFO    ] 200
[2026-06-13 22:52:31,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:31,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:52:31,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:52:31,523.523 INFO    ] No camera update needed
[2026-06-13 22:52:31,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:52:31,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:52:31,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:52:31,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:52:33,565.565 INFO    ] ================================================
[2026-06-13 22:52:33,580.580 INFO    ] Launching Daemon at Sat Jun 13 22:52:33 IST 2026
[2026-06-13 22:52:33,590.590 INFO    ] ================================================
[2026-06-13 22:52:33,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:52:33
[2026-06-13 22:52:34,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:34,377.377 INFO    ] Initializing speech engine...
[2026-06-13 22:52:34,382.382 INFO    ] 2026-06-13 22:52:34
[2026-06-13 22:52:34,585.585 INFO    ] 2026-06-13 22:52:34
[2026-06-13 22:52:34,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:34,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:34,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:34,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:35,000.000 INFO    ] time= 13/06/2026 22:52:34
[2026-06-13 22:52:35,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:35,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:35,102.102 INFO    ] No existing commands found in stream
[2026-06-13 22:52:40,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:52:40,115.115 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 22:52:43,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:52:43,881.881 INFO    ] Checking for system updates...
[2026-06-13 22:52:43,902.902 INFO    ] 200
[2026-06-13 22:52:43,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:43,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:43,939.939 INFO    ] No update needed
[2026-06-13 22:52:43,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 22:52:43,960.960 INFO    ] 200
[2026-06-13 22:52:43,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:43,987.987 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:52:44,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:44,028.028 INFO    ] No camera update needed
[2026-06-13 22:52:44,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:52:44,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:52:44,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:52:44,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:52:46,077.077 INFO    ] ================================================
[2026-06-13 22:52:46,092.092 INFO    ] Launching Daemon at Sat Jun 13 22:52:46 IST 2026
[2026-06-13 22:52:46,103.103 INFO    ] ================================================
[2026-06-13 22:52:46,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:52:46
[2026-06-13 22:52:46,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:46,890.890 INFO    ] Initializing speech engine...
[2026-06-13 22:52:46,901.901 INFO    ] 2026-06-13 22:52:46
[2026-06-13 22:52:47,104.104 INFO    ] 2026-06-13 22:52:47
[2026-06-13 22:52:47,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:47,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:47,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:47,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:47,497.497 INFO    ] time= 13/06/2026 22:52:47
[2026-06-13 22:52:47,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:47,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:47,618.618 INFO    ] No existing commands found in stream
[2026-06-13 22:52:52,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:52:52,630.630 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 22:52:56,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:52:56,140.140 INFO    ] Checking for system updates...
[2026-06-13 22:52:56,163.163 INFO    ] 200
[2026-06-13 22:52:56,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:56,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:56,202.202 INFO    ] No update needed
[2026-06-13 22:52:56,203.203 INFO    ] Checking for camera pi updates...
[2026-06-13 22:52:56,227.227 INFO    ] 200
[2026-06-13 22:52:56,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:52:56,253.253 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:52:56,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:52:56,294.294 INFO    ] No camera update needed
[2026-06-13 22:52:56,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:52:56,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:52:56,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:52:56,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:52:58,341.341 INFO    ] ================================================
[2026-06-13 22:52:58,356.356 INFO    ] Launching Daemon at Sat Jun 13 22:52:58 IST 2026
[2026-06-13 22:52:58,370.370 INFO    ] ================================================
[2026-06-13 22:52:58,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:52:58
[2026-06-13 22:52:59,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:52:59,163.163 INFO    ] Initializing speech engine...
[2026-06-13 22:52:59,176.176 INFO    ] 2026-06-13 22:52:59
[2026-06-13 22:52:59,395.395 INFO    ] 2026-06-13 22:52:59
[2026-06-13 22:52:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:52:59,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:52:59,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:52:59,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:52:59,760.760 INFO    ] time= 13/06/2026 22:52:59
[2026-06-13 22:52:59,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:52:59,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:52:59,975.975 INFO    ] No existing commands found in stream
[2026-06-13 22:53:04,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:53:04,989.989 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 22:53:07,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:53:07,957.957 INFO    ] Checking for system updates...
[2026-06-13 22:53:07,979.979 INFO    ] 200
[2026-06-13 22:53:07,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:08,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:08,014.014 INFO    ] No update needed
[2026-06-13 22:53:08,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 22:53:08,036.036 INFO    ] 200
[2026-06-13 22:53:08,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:08,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:53:08,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:08,202.202 INFO    ] No camera update needed
[2026-06-13 22:53:08,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:53:08,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:53:08,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:53:08,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:53:10,249.249 INFO    ] ================================================
[2026-06-13 22:53:10,264.264 INFO    ] Launching Daemon at Sat Jun 13 22:53:10 IST 2026
[2026-06-13 22:53:10,275.275 INFO    ] ================================================
[2026-06-13 22:53:10,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:53:10
[2026-06-13 22:53:10,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:53:11,067.067 INFO    ] Initializing speech engine...
[2026-06-13 22:53:11,079.079 INFO    ] 2026-06-13 22:53:11
[2026-06-13 22:53:11,297.297 INFO    ] 2026-06-13 22:53:11
[2026-06-13 22:53:11,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:53:11,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:53:11,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:53:11,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:53:11,703.703 INFO    ] time= 13/06/2026 22:53:11
[2026-06-13 22:53:11,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:53:11,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:53:11,848.848 INFO    ] No existing commands found in stream
[2026-06-13 22:53:16,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:53:16,862.862 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 22:53:20,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:53:20,206.206 INFO    ] Checking for system updates...
[2026-06-13 22:53:20,229.229 INFO    ] 200
[2026-06-13 22:53:20,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:20,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:20,263.263 INFO    ] No update needed
[2026-06-13 22:53:20,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 22:53:20,287.287 INFO    ] 200
[2026-06-13 22:53:20,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:20,313.313 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:53:20,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:20,355.355 INFO    ] No camera update needed
[2026-06-13 22:53:20,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:53:20,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:53:20,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:53:20,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:53:22,402.402 INFO    ] ================================================
[2026-06-13 22:53:22,418.418 INFO    ] Launching Daemon at Sat Jun 13 22:53:22 IST 2026
[2026-06-13 22:53:22,429.429 INFO    ] ================================================
[2026-06-13 22:53:22,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:53:22
[2026-06-13 22:53:23,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:53:23,205.205 INFO    ] Initializing speech engine...
[2026-06-13 22:53:23,213.213 INFO    ] 2026-06-13 22:53:23
[2026-06-13 22:53:23,432.432 INFO    ] 2026-06-13 22:53:23
[2026-06-13 22:53:23,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:53:23,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:53:23,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:53:23,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:53:23,862.862 INFO    ] time= 13/06/2026 22:53:23
[2026-06-13 22:53:23,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:53:23,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:53:23,984.984 INFO    ] No existing commands found in stream
[2026-06-13 22:53:28,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:53:28,993.993 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 22:53:29,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:53:29,425.425 INFO    ] Checking for system updates...
[2026-06-13 22:53:29,447.447 INFO    ] 200
[2026-06-13 22:53:29,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:29,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:29,481.481 INFO    ] No update needed
[2026-06-13 22:53:29,482.482 INFO    ] Checking for camera pi updates...
[2026-06-13 22:53:29,501.501 INFO    ] 200
[2026-06-13 22:53:29,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:29,526.526 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:53:29,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:53:29,562.562 INFO    ] No camera update needed
[2026-06-13 22:53:29,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:53:29,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:53:29,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:53:29,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:53:31,609.609 INFO    ] ================================================
[2026-06-13 22:53:31,624.624 INFO    ] Launching Daemon at Sat Jun 13 22:53:31 IST 2026
[2026-06-13 22:53:31,636.636 INFO    ] ================================================
[2026-06-13 22:53:32,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:53:32
[2026-06-13 22:53:32,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:53:32,507.507 INFO    ] Initializing speech engine...
[2026-06-13 22:53:32,522.522 INFO    ] 2026-06-13 22:53:32
[2026-06-13 22:53:32,729.729 INFO    ] 2026-06-13 22:53:32
[2026-06-13 22:53:32,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:53:32,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:53:32,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:53:33,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:53:33,142.142 INFO    ] time= 13/06/2026 22:53:33
[2026-06-13 22:53:33,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:53:33,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:53:33,279.279 INFO    ] No existing commands found in stream
[2026-06-13 22:53:38,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:53:38,292.292 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 22:53:41,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:53:41,633.633 INFO    ] Checking for system updates...
[2026-06-13 22:53:41,655.655 INFO    ] 200
[2026-06-13 22:53:41,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:41,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:53:41,690.690 INFO    ] No update needed
[2026-06-13 22:53:41,692.692 INFO    ] Checking for camera pi updates...
[2026-06-13 22:53:41,712.712 INFO    ] 200
[2026-06-13 22:53:41,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:41,739.739 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:53:41,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:53:41,779.779 INFO    ] No camera update needed
[2026-06-13 22:53:41,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:53:41,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:53:41,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:53:41,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:53:43,825.825 INFO    ] ================================================
[2026-06-13 22:53:43,840.840 INFO    ] Launching Daemon at Sat Jun 13 22:53:43 IST 2026
[2026-06-13 22:53:43,851.851 INFO    ] ================================================
[2026-06-13 22:53:44,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:53:44
[2026-06-13 22:53:44,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:53:44,708.708 INFO    ] Initializing speech engine...
[2026-06-13 22:53:44,714.714 INFO    ] 2026-06-13 22:53:44
[2026-06-13 22:53:44,922.922 INFO    ] 2026-06-13 22:53:44
[2026-06-13 22:53:44,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:53:45,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:53:45,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:53:45,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:53:45,324.324 INFO    ] time= 13/06/2026 22:53:45
[2026-06-13 22:53:45,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:53:45,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:53:45,438.438 INFO    ] No existing commands found in stream
[2026-06-13 22:53:50,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:53:50,452.452 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 22:53:52,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:53:52,745.745 INFO    ] Checking for system updates...
[2026-06-13 22:53:52,766.766 INFO    ] 200
[2026-06-13 22:53:52,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:52,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:53:52,800.800 INFO    ] No update needed
[2026-06-13 22:53:52,801.801 INFO    ] Checking for camera pi updates...
[2026-06-13 22:53:52,821.821 INFO    ] 200
[2026-06-13 22:53:52,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:53:52,848.848 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:53:52,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:53:52,891.891 INFO    ] No camera update needed
[2026-06-13 22:53:52,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:53:52,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:53:52,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:53:52,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:53:54,938.938 INFO    ] ================================================
[2026-06-13 22:53:54,953.953 INFO    ] Launching Daemon at Sat Jun 13 22:53:54 IST 2026
[2026-06-13 22:53:54,963.963 INFO    ] ================================================
[2026-06-13 22:53:55,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:53:55
[2026-06-13 22:53:55,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:53:55,740.740 INFO    ] Initializing speech engine...
[2026-06-13 22:53:55,752.752 INFO    ] 2026-06-13 22:53:55
[2026-06-13 22:53:55,958.958 INFO    ] 2026-06-13 22:53:55
[2026-06-13 22:53:55,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:53:56,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:53:56,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:53:56,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:53:56,362.362 INFO    ] time= 13/06/2026 22:53:56
[2026-06-13 22:53:56,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:53:56,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:53:56,471.471 INFO    ] No existing commands found in stream
[2026-06-13 22:54:01,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:01,484.484 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 22:54:03,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:54:03,895.895 INFO    ] Checking for system updates...
[2026-06-13 22:54:03,918.918 INFO    ] 200
[2026-06-13 22:54:03,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:03,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:03,951.951 INFO    ] No update needed
[2026-06-13 22:54:03,953.953 INFO    ] Checking for camera pi updates...
[2026-06-13 22:54:03,972.972 INFO    ] 200
[2026-06-13 22:54:03,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:03,998.998 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:54:04,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:04,038.038 INFO    ] No camera update needed
[2026-06-13 22:54:04,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:54:04,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:54:04,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:54:04,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:54:06,087.087 INFO    ] ================================================
[2026-06-13 22:54:06,103.103 INFO    ] Launching Daemon at Sat Jun 13 22:54:06 IST 2026
[2026-06-13 22:54:06,114.114 INFO    ] ================================================
[2026-06-13 22:54:06,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:54:06
[2026-06-13 22:54:06,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:54:06,938.938 INFO    ] Initializing speech engine...
[2026-06-13 22:54:06,943.943 INFO    ] 2026-06-13 22:54:06
[2026-06-13 22:54:07,152.152 INFO    ] 2026-06-13 22:54:07
[2026-06-13 22:54:07,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:54:07,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:54:07,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:54:07,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:54:07,570.570 INFO    ] time= 13/06/2026 22:54:07
[2026-06-13 22:54:07,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:54:07,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:54:07,669.669 INFO    ] No existing commands found in stream
[2026-06-13 22:54:12,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:12,683.683 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-13 22:54:13,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:54:13,284.284 INFO    ] Checking for system updates...
[2026-06-13 22:54:13,307.307 INFO    ] 200
[2026-06-13 22:54:13,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:13,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:13,343.343 INFO    ] No update needed
[2026-06-13 22:54:13,344.344 INFO    ] Checking for camera pi updates...
[2026-06-13 22:54:13,368.368 INFO    ] 200
[2026-06-13 22:54:13,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:13,395.395 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:54:13,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:13,439.439 INFO    ] No camera update needed
[2026-06-13 22:54:13,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:54:13,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:54:13,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:54:13,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:54:15,488.488 INFO    ] ================================================
[2026-06-13 22:54:15,503.503 INFO    ] Launching Daemon at Sat Jun 13 22:54:15 IST 2026
[2026-06-13 22:54:15,514.514 INFO    ] ================================================
[2026-06-13 22:54:15,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:54:15
[2026-06-13 22:54:16,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:54:16,682.682 INFO    ] Initializing speech engine...
[2026-06-13 22:54:16,693.693 INFO    ] 2026-06-13 22:54:16
[2026-06-13 22:54:16,965.965 INFO    ] 2026-06-13 22:54:16
[2026-06-13 22:54:17,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:54:17,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:54:17,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:54:17,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:54:17,424.424 INFO    ] time= 13/06/2026 22:54:17
[2026-06-13 22:54:17,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:54:17,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:54:17,552.552 INFO    ] No existing commands found in stream
[2026-06-13 22:54:22,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:22,568.568 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 22:54:25,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:54:25,989.989 INFO    ] Checking for system updates...
[2026-06-13 22:54:26,010.010 INFO    ] 200
[2026-06-13 22:54:26,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:26,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:54:26,043.043 INFO    ] No update needed
[2026-06-13 22:54:26,045.045 INFO    ] Checking for camera pi updates...
[2026-06-13 22:54:26,065.065 INFO    ] 200
[2026-06-13 22:54:26,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:26,092.092 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:54:26,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:54:26,135.135 INFO    ] No camera update needed
[2026-06-13 22:54:26,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:54:26,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:54:26,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:54:26,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:54:28,186.186 INFO    ] ================================================
[2026-06-13 22:54:28,201.201 INFO    ] Launching Daemon at Sat Jun 13 22:54:28 IST 2026
[2026-06-13 22:54:28,211.211 INFO    ] ================================================
[2026-06-13 22:54:28,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:54:28
[2026-06-13 22:54:28,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:54:29,011.011 INFO    ] Initializing speech engine...
[2026-06-13 22:54:29,015.015 INFO    ] 2026-06-13 22:54:29
[2026-06-13 22:54:29,220.220 INFO    ] 2026-06-13 22:54:29
[2026-06-13 22:54:29,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:54:29,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:54:29,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:54:29,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:54:29,629.629 INFO    ] time= 13/06/2026 22:54:29
[2026-06-13 22:54:29,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:54:29,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:54:29,737.737 INFO    ] No existing commands found in stream
[2026-06-13 22:54:34,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:34,751.751 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-13 22:54:38,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:54:38,426.426 INFO    ] Checking for system updates...
[2026-06-13 22:54:38,448.448 INFO    ] 200
[2026-06-13 22:54:38,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:38,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:54:38,482.482 INFO    ] No update needed
[2026-06-13 22:54:38,483.483 INFO    ] Checking for camera pi updates...
[2026-06-13 22:54:38,503.503 INFO    ] 200
[2026-06-13 22:54:38,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:38,528.528 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:54:38,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:54:38,566.566 INFO    ] No camera update needed
[2026-06-13 22:54:38,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:54:38,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:54:38,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:54:38,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:54:40,613.613 INFO    ] ================================================
[2026-06-13 22:54:40,628.628 INFO    ] Launching Daemon at Sat Jun 13 22:54:40 IST 2026
[2026-06-13 22:54:40,639.639 INFO    ] ================================================
[2026-06-13 22:54:41,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:54:41
[2026-06-13 22:54:41,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:54:41,448.448 INFO    ] Initializing speech engine...
[2026-06-13 22:54:41,452.452 INFO    ] 2026-06-13 22:54:41
[2026-06-13 22:54:41,665.665 INFO    ] 2026-06-13 22:54:41
[2026-06-13 22:54:41,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:54:41,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:54:41,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:54:42,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:54:42,073.073 INFO    ] time= 13/06/2026 22:54:42
[2026-06-13 22:54:42,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:54:42,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:54:42,176.176 INFO    ] No existing commands found in stream
[2026-06-13 22:54:47,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:47,189.189 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 22:54:49,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:54:49,738.738 INFO    ] Checking for system updates...
[2026-06-13 22:54:49,760.760 INFO    ] 200
[2026-06-13 22:54:49,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:49,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:49,794.794 INFO    ] No update needed
[2026-06-13 22:54:49,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 22:54:49,816.816 INFO    ] 200
[2026-06-13 22:54:49,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:54:49,844.844 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:54:49,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:54:49,883.883 INFO    ] No camera update needed
[2026-06-13 22:54:49,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:54:49,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:54:49,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:54:49,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:54:51,924.924 INFO    ] ================================================
[2026-06-13 22:54:51,939.939 INFO    ] Launching Daemon at Sat Jun 13 22:54:51 IST 2026
[2026-06-13 22:54:51,950.950 INFO    ] ================================================
[2026-06-13 22:54:52,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:54:52
[2026-06-13 22:54:52,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:54:52,763.763 INFO    ] Initializing speech engine...
[2026-06-13 22:54:52,767.767 INFO    ] 2026-06-13 22:54:52
[2026-06-13 22:54:52,998.998 INFO    ] 2026-06-13 22:54:52
[2026-06-13 22:54:53,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:54:53,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:54:53,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:54:53,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:54:53,238.238 INFO    ] time= 13/06/2026 22:54:53
[2026-06-13 22:54:53,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:54:53,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:54:53,354.354 INFO    ] No existing commands found in stream
[2026-06-13 22:54:58,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:54:58,392.392 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 22:55:02,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:55:02,362.362 INFO    ] Checking for system updates...
[2026-06-13 22:55:02,407.407 INFO    ] 200
[2026-06-13 22:55:02,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:02,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:55:02,481.481 INFO    ] No update needed
[2026-06-13 22:55:02,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 22:55:02,531.531 INFO    ] 200
[2026-06-13 22:55:02,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:02,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:55:02,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:55:02,636.636 INFO    ] No camera update needed
[2026-06-13 22:55:02,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:55:02,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:55:02,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:55:02,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:55:04,702.702 INFO    ] ================================================
[2026-06-13 22:55:04,717.717 INFO    ] Launching Daemon at Sat Jun 13 22:55:04 IST 2026
[2026-06-13 22:55:04,727.727 INFO    ] ================================================
[2026-06-13 22:55:05,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:55:05
[2026-06-13 22:55:05,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:55:05,523.523 INFO    ] Initializing speech engine...
[2026-06-13 22:55:05,528.528 INFO    ] 2026-06-13 22:55:05
[2026-06-13 22:55:05,755.755 INFO    ] 2026-06-13 22:55:05
[2026-06-13 22:55:05,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:55:05,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:55:05,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:55:06,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:55:06,140.140 INFO    ] time= 13/06/2026 22:55:06
[2026-06-13 22:55:06,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:55:06,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:55:06,339.339 INFO    ] No existing commands found in stream
[2026-06-13 22:55:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:55:11,353.353 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 22:55:15,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:55:15,089.089 INFO    ] Checking for system updates...
[2026-06-13 22:55:15,112.112 INFO    ] 200
[2026-06-13 22:55:15,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:15,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:15,148.148 INFO    ] No update needed
[2026-06-13 22:55:15,150.150 INFO    ] Checking for camera pi updates...
[2026-06-13 22:55:15,170.170 INFO    ] 200
[2026-06-13 22:55:15,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:15,195.195 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:55:15,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:15,335.335 INFO    ] No camera update needed
[2026-06-13 22:55:15,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:55:15,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:55:15,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:55:15,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:55:17,381.381 INFO    ] ================================================
[2026-06-13 22:55:17,396.396 INFO    ] Launching Daemon at Sat Jun 13 22:55:17 IST 2026
[2026-06-13 22:55:17,407.407 INFO    ] ================================================
[2026-06-13 22:55:17,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:55:17
[2026-06-13 22:55:18,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:55:18,591.591 INFO    ] Initializing speech engine...
[2026-06-13 22:55:18,598.598 INFO    ] 2026-06-13 22:55:18
[2026-06-13 22:55:18,858.858 INFO    ] 2026-06-13 22:55:18
[2026-06-13 22:55:18,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:55:19,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:55:19,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:55:19,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:55:19,291.291 INFO    ] time= 13/06/2026 22:55:19
[2026-06-13 22:55:19,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:55:19,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:55:19,552.552 INFO    ] No existing commands found in stream
[2026-06-13 22:55:24,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:55:24,574.574 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 22:55:28,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:55:28,825.825 INFO    ] Checking for system updates...
[2026-06-13 22:55:28,846.846 INFO    ] 200
[2026-06-13 22:55:28,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:28,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:55:28,879.879 INFO    ] No update needed
[2026-06-13 22:55:28,881.881 INFO    ] Checking for camera pi updates...
[2026-06-13 22:55:28,900.900 INFO    ] 200
[2026-06-13 22:55:28,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:28,925.925 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:55:28,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:55:28,974.974 INFO    ] No camera update needed
[2026-06-13 22:55:28,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:55:28,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:55:28,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:55:28,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:55:31,020.020 INFO    ] ================================================
[2026-06-13 22:55:31,035.035 INFO    ] Launching Daemon at Sat Jun 13 22:55:31 IST 2026
[2026-06-13 22:55:31,046.046 INFO    ] ================================================
[2026-06-13 22:55:31,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:55:31
[2026-06-13 22:55:31,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:55:31,895.895 INFO    ] Initializing speech engine...
[2026-06-13 22:55:31,903.903 INFO    ] 2026-06-13 22:55:31
[2026-06-13 22:55:32,115.115 INFO    ] 2026-06-13 22:55:32
[2026-06-13 22:55:32,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:55:32,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:55:32,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:55:32,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:55:32,515.515 INFO    ] time= 13/06/2026 22:55:32
[2026-06-13 22:55:32,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:55:32,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:55:32,639.639 INFO    ] No existing commands found in stream
[2026-06-13 22:55:37,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:55:37,651.651 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 22:55:39,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:55:39,034.034 INFO    ] Checking for system updates...
[2026-06-13 22:55:39,054.054 INFO    ] 200
[2026-06-13 22:55:39,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:39,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:39,090.090 INFO    ] No update needed
[2026-06-13 22:55:39,091.091 INFO    ] Checking for camera pi updates...
[2026-06-13 22:55:39,111.111 INFO    ] 200
[2026-06-13 22:55:39,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:39,137.137 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:55:39,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:39,180.180 INFO    ] No camera update needed
[2026-06-13 22:55:39,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:55:39,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:55:39,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:55:39,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:55:41,225.225 INFO    ] ================================================
[2026-06-13 22:55:41,240.240 INFO    ] Launching Daemon at Sat Jun 13 22:55:41 IST 2026
[2026-06-13 22:55:41,251.251 INFO    ] ================================================
[2026-06-13 22:55:41,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:55:41
[2026-06-13 22:55:41,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:55:42,042.042 INFO    ] Initializing speech engine...
[2026-06-13 22:55:42,046.046 INFO    ] 2026-06-13 22:55:42
[2026-06-13 22:55:42,249.249 INFO    ] 2026-06-13 22:55:42
[2026-06-13 22:55:42,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:55:42,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:55:42,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:55:42,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:55:42,647.647 INFO    ] time= 13/06/2026 22:55:42
[2026-06-13 22:55:42,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:55:42,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:55:42,831.831 INFO    ] No existing commands found in stream
[2026-06-13 22:55:47,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:55:47,843.843 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 22:55:50,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:55:50,156.156 INFO    ] Checking for system updates...
[2026-06-13 22:55:50,176.176 INFO    ] 200
[2026-06-13 22:55:50,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:50,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:50,210.210 INFO    ] No update needed
[2026-06-13 22:55:50,211.211 INFO    ] Checking for camera pi updates...
[2026-06-13 22:55:50,234.234 INFO    ] 200
[2026-06-13 22:55:50,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:55:50,259.259 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:55:50,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:55:50,298.298 INFO    ] No camera update needed
[2026-06-13 22:55:50,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:55:50,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:55:50,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:55:50,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:55:52,346.346 INFO    ] ================================================
[2026-06-13 22:55:52,361.361 INFO    ] Launching Daemon at Sat Jun 13 22:55:52 IST 2026
[2026-06-13 22:55:52,371.371 INFO    ] ================================================
[2026-06-13 22:55:52,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:55:52
[2026-06-13 22:55:53,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:55:53,177.177 INFO    ] Initializing speech engine...
[2026-06-13 22:55:53,181.181 INFO    ] 2026-06-13 22:55:53
[2026-06-13 22:55:53,395.395 INFO    ] 2026-06-13 22:55:53
[2026-06-13 22:55:53,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:55:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:55:53,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:55:53,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:55:53,802.802 INFO    ] time= 13/06/2026 22:55:53
[2026-06-13 22:55:53,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:55:53,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:55:53,912.912 INFO    ] No existing commands found in stream
[2026-06-13 22:55:58,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:55:58,924.924 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 22:56:01,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 22:56:01,717.717 INFO    ] Checking for system updates...
[2026-06-13 22:56:01,743.743 INFO    ] 200
[2026-06-13 22:56:01,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:01,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:01,788.788 INFO    ] No update needed
[2026-06-13 22:56:01,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:01,817.817 INFO    ] 200
[2026-06-13 22:56:01,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:01,859.859 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:01,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:56:01,934.934 INFO    ] No camera update needed
[2026-06-13 22:56:01,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:01,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:01,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:56:03,984.984 INFO    ] ================================================
[2026-06-13 22:56:04,999.999 INFO    ] Launching Daemon at Sat Jun 13 22:56:03 IST 2026
[2026-06-13 22:56:04,010.010 INFO    ] ================================================
[2026-06-13 22:56:04,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:56:04
[2026-06-13 22:56:04,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:56:04,795.795 INFO    ] Initializing speech engine...
[2026-06-13 22:56:04,801.801 INFO    ] 2026-06-13 22:56:04
[2026-06-13 22:56:05,015.015 INFO    ] 2026-06-13 22:56:04
[2026-06-13 22:56:05,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:56:05,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:56:05,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:56:05,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:56:05,432.432 INFO    ] time= 13/06/2026 22:56:05
[2026-06-13 22:56:05,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:56:05,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:56:05,552.552 INFO    ] No existing commands found in stream
[2026-06-13 22:56:10,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:56:10,563.563 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 22:56:11,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:56:11,312.312 INFO    ] Checking for system updates...
[2026-06-13 22:56:11,334.334 INFO    ] 200
[2026-06-13 22:56:11,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:11,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:56:11,369.369 INFO    ] No update needed
[2026-06-13 22:56:11,370.370 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:11,390.390 INFO    ] 200
[2026-06-13 22:56:11,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:11,416.416 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:11,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:11,458.458 INFO    ] No camera update needed
[2026-06-13 22:56:11,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:11,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:11,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:11,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:56:13,505.505 INFO    ] ================================================
[2026-06-13 22:56:13,520.520 INFO    ] Launching Daemon at Sat Jun 13 22:56:13 IST 2026
[2026-06-13 22:56:13,530.530 INFO    ] ================================================
[2026-06-13 22:56:13,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:56:13
[2026-06-13 22:56:14,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:56:14,760.760 INFO    ] Initializing speech engine...
[2026-06-13 22:56:14,773.773 INFO    ] 2026-06-13 22:56:14
[2026-06-13 22:56:15,040.040 INFO    ] 2026-06-13 22:56:15
[2026-06-13 22:56:15,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:56:15,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:56:15,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:56:15,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:56:15,410.410 INFO    ] time= 13/06/2026 22:56:15
[2026-06-13 22:56:15,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:56:15,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:56:15,491.491 INFO    ] No existing commands found in stream
[2026-06-13 22:56:20,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:56:20,505.505 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-13 22:56:24,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:56:24,051.051 INFO    ] Checking for system updates...
[2026-06-13 22:56:24,075.075 INFO    ] 200
[2026-06-13 22:56:24,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:24,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:24,110.110 INFO    ] No update needed
[2026-06-13 22:56:24,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:24,133.133 INFO    ] 200
[2026-06-13 22:56:24,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:24,159.159 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:24,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:24,202.202 INFO    ] No camera update needed
[2026-06-13 22:56:24,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:24,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:24,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:24,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:56:26,250.250 INFO    ] ================================================
[2026-06-13 22:56:26,265.265 INFO    ] Launching Daemon at Sat Jun 13 22:56:26 IST 2026
[2026-06-13 22:56:26,276.276 INFO    ] ================================================
[2026-06-13 22:56:26,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:56:26
[2026-06-13 22:56:26,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:56:27,124.124 INFO    ] Initializing speech engine...
[2026-06-13 22:56:27,133.133 INFO    ] 2026-06-13 22:56:27
[2026-06-13 22:56:27,324.324 INFO    ] 2026-06-13 22:56:27
[2026-06-13 22:56:27,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:56:27,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:56:27,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:56:27,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:56:27,757.757 INFO    ] time= 13/06/2026 22:56:27
[2026-06-13 22:56:27,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:56:27,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:56:27,868.868 INFO    ] No existing commands found in stream
[2026-06-13 22:56:32,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:56:32,881.881 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 22:56:34,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:56:34,633.633 INFO    ] Checking for system updates...
[2026-06-13 22:56:34,655.655 INFO    ] 200
[2026-06-13 22:56:34,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:34,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:34,689.689 INFO    ] No update needed
[2026-06-13 22:56:34,690.690 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:34,711.711 INFO    ] 200
[2026-06-13 22:56:34,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:34,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:34,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:34,783.783 INFO    ] No camera update needed
[2026-06-13 22:56:34,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:34,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:34,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:34,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:56:36,836.836 INFO    ] ================================================
[2026-06-13 22:56:36,851.851 INFO    ] Launching Daemon at Sat Jun 13 22:56:36 IST 2026
[2026-06-13 22:56:36,862.862 INFO    ] ================================================
[2026-06-13 22:56:37,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:56:37
[2026-06-13 22:56:37,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:56:37,725.725 INFO    ] Initializing speech engine...
[2026-06-13 22:56:37,732.732 INFO    ] 2026-06-13 22:56:37
[2026-06-13 22:56:37,939.939 INFO    ] 2026-06-13 22:56:37
[2026-06-13 22:56:37,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:56:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:56:38,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:56:38,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:56:38,362.362 INFO    ] time= 13/06/2026 22:56:38
[2026-06-13 22:56:38,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:56:38,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:56:38,511.511 INFO    ] No existing commands found in stream
[2026-06-13 22:56:43,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:56:43,525.525 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 22:56:47,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:56:47,788.788 INFO    ] Checking for system updates...
[2026-06-13 22:56:47,809.809 INFO    ] 200
[2026-06-13 22:56:47,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:47,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:56:47,845.845 INFO    ] No update needed
[2026-06-13 22:56:47,846.846 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:47,869.869 INFO    ] 200
[2026-06-13 22:56:47,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:47,896.896 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:47,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:56:47,939.939 INFO    ] No camera update needed
[2026-06-13 22:56:47,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:47,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:47,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:47,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:56:49,987.987 INFO    ] ================================================
[2026-06-13 22:56:50,002.002 INFO    ] Launching Daemon at Sat Jun 13 22:56:49 IST 2026
[2026-06-13 22:56:50,013.013 INFO    ] ================================================
[2026-06-13 22:56:50,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:56:50
[2026-06-13 22:56:50,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:56:50,830.830 INFO    ] Initializing speech engine...
[2026-06-13 22:56:50,835.835 INFO    ] 2026-06-13 22:56:50
[2026-06-13 22:56:51,039.039 INFO    ] 2026-06-13 22:56:51
[2026-06-13 22:56:51,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:56:51,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:56:51,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:56:51,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:56:51,433.433 INFO    ] time= 13/06/2026 22:56:51
[2026-06-13 22:56:51,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:56:51,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:56:51,553.553 INFO    ] No existing commands found in stream
[2026-06-13 22:56:56,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:56:56,565.565 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 22:56:59,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:56:59,196.196 INFO    ] Checking for system updates...
[2026-06-13 22:56:59,217.217 INFO    ] 200
[2026-06-13 22:56:59,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:59,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:59,252.252 INFO    ] No update needed
[2026-06-13 22:56:59,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 22:56:59,274.274 INFO    ] 200
[2026-06-13 22:56:59,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:56:59,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:56:59,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:56:59,337.337 INFO    ] No camera update needed
[2026-06-13 22:56:59,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:56:59,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:56:59,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:56:59,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:57:01,384.384 INFO    ] ================================================
[2026-06-13 22:57:01,400.400 INFO    ] Launching Daemon at Sat Jun 13 22:57:01 IST 2026
[2026-06-13 22:57:01,411.411 INFO    ] ================================================
[2026-06-13 22:57:01,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:57:01
[2026-06-13 22:57:02,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:57:02,304.304 INFO    ] Initializing speech engine...
[2026-06-13 22:57:02,312.312 INFO    ] 2026-06-13 22:57:02
[2026-06-13 22:57:02,536.536 INFO    ] 2026-06-13 22:57:02
[2026-06-13 22:57:02,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:57:02,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:57:02,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:57:02,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:57:02,958.958 INFO    ] time= 13/06/2026 22:57:02
[2026-06-13 22:57:02,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:57:02,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:57:03,058.058 INFO    ] No existing commands found in stream
[2026-06-13 22:57:08,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:57:08,072.072 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-13 22:57:10,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:57:10,960.960 INFO    ] Checking for system updates...
[2026-06-13 22:57:10,984.984 INFO    ] 200
[2026-06-13 22:57:10,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:11,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:11,018.018 INFO    ] No update needed
[2026-06-13 22:57:11,020.020 INFO    ] Checking for camera pi updates...
[2026-06-13 22:57:11,039.039 INFO    ] 200
[2026-06-13 22:57:11,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:11,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:57:11,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:11,119.119 INFO    ] No camera update needed
[2026-06-13 22:57:11,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:57:11,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:57:11,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:57:11,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:57:13,168.168 INFO    ] ================================================
[2026-06-13 22:57:13,184.184 INFO    ] Launching Daemon at Sat Jun 13 22:57:13 IST 2026
[2026-06-13 22:57:13,196.196 INFO    ] ================================================
[2026-06-13 22:57:13,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:57:13
[2026-06-13 22:57:13,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:57:13,992.992 INFO    ] Initializing speech engine...
[2026-06-13 22:57:13,997.997 INFO    ] 2026-06-13 22:57:13
[2026-06-13 22:57:14,199.199 INFO    ] 2026-06-13 22:57:14
[2026-06-13 22:57:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:57:14,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:57:14,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:57:14,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:57:14,608.608 INFO    ] time= 13/06/2026 22:57:14
[2026-06-13 22:57:14,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:57:14,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:57:14,711.711 INFO    ] No existing commands found in stream
[2026-06-13 22:57:19,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:57:19,724.724 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-13 22:57:23,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:57:23,380.380 INFO    ] Checking for system updates...
[2026-06-13 22:57:23,402.402 INFO    ] 200
[2026-06-13 22:57:23,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:23,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:57:23,435.435 INFO    ] No update needed
[2026-06-13 22:57:23,436.436 INFO    ] Checking for camera pi updates...
[2026-06-13 22:57:23,456.456 INFO    ] 200
[2026-06-13 22:57:23,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:23,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:57:23,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:57:23,629.629 INFO    ] No camera update needed
[2026-06-13 22:57:23,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:57:23,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:57:23,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:57:23,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:57:25,679.679 INFO    ] ================================================
[2026-06-13 22:57:25,694.694 INFO    ] Launching Daemon at Sat Jun 13 22:57:25 IST 2026
[2026-06-13 22:57:25,706.706 INFO    ] ================================================
[2026-06-13 22:57:26,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:57:26
[2026-06-13 22:57:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:57:26,509.509 INFO    ] Initializing speech engine...
[2026-06-13 22:57:26,514.514 INFO    ] 2026-06-13 22:57:26
[2026-06-13 22:57:26,711.711 INFO    ] 2026-06-13 22:57:26
[2026-06-13 22:57:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:57:26,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:57:26,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:57:26,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:57:27,001.001 INFO    ] time= 13/06/2026 22:57:26
[2026-06-13 22:57:27,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:57:27,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:57:27,182.182 INFO    ] No existing commands found in stream
[2026-06-13 22:57:32,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:57:32,220.220 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-13 22:57:35,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:57:35,431.431 INFO    ] Checking for system updates...
[2026-06-13 22:57:35,452.452 INFO    ] 200
[2026-06-13 22:57:35,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:35,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:35,485.485 INFO    ] No update needed
[2026-06-13 22:57:35,486.486 INFO    ] Checking for camera pi updates...
[2026-06-13 22:57:35,506.506 INFO    ] 200
[2026-06-13 22:57:35,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:35,531.531 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:57:35,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:35,568.568 INFO    ] No camera update needed
[2026-06-13 22:57:35,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:57:35,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:57:35,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:57:35,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:57:37,615.615 INFO    ] ================================================
[2026-06-13 22:57:37,630.630 INFO    ] Launching Daemon at Sat Jun 13 22:57:37 IST 2026
[2026-06-13 22:57:37,641.641 INFO    ] ================================================
[2026-06-13 22:57:38,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:57:38
[2026-06-13 22:57:38,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:57:38,525.525 INFO    ] Initializing speech engine...
[2026-06-13 22:57:38,532.532 INFO    ] 2026-06-13 22:57:38
[2026-06-13 22:57:38,742.742 INFO    ] 2026-06-13 22:57:38
[2026-06-13 22:57:38,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:57:38,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:57:38,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:57:39,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:57:39,166.166 INFO    ] time= 13/06/2026 22:57:39
[2026-06-13 22:57:39,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:57:39,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:57:39,260.260 INFO    ] No existing commands found in stream
[2026-06-13 22:57:44,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:57:44,274.274 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 22:57:48,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:57:48,189.189 INFO    ] Checking for system updates...
[2026-06-13 22:57:48,211.211 INFO    ] 200
[2026-06-13 22:57:48,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:48,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:48,245.245 INFO    ] No update needed
[2026-06-13 22:57:48,246.246 INFO    ] Checking for camera pi updates...
[2026-06-13 22:57:48,266.266 INFO    ] 200
[2026-06-13 22:57:48,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:57:48,292.292 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:57:48,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:57:48,331.331 INFO    ] No camera update needed
[2026-06-13 22:57:48,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:57:48,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:57:48,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:57:48,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:57:50,381.381 INFO    ] ================================================
[2026-06-13 22:57:50,396.396 INFO    ] Launching Daemon at Sat Jun 13 22:57:50 IST 2026
[2026-06-13 22:57:50,408.408 INFO    ] ================================================
[2026-06-13 22:57:50,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:57:50
[2026-06-13 22:57:51,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:57:51,200.200 INFO    ] Initializing speech engine...
[2026-06-13 22:57:51,213.213 INFO    ] 2026-06-13 22:57:51
[2026-06-13 22:57:51,421.421 INFO    ] 2026-06-13 22:57:51
[2026-06-13 22:57:51,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:57:51,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:57:51,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:57:51,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:57:51,827.827 INFO    ] time= 13/06/2026 22:57:51
[2026-06-13 22:57:51,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:57:51,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:57:51,939.939 INFO    ] No existing commands found in stream
[2026-06-13 22:57:56,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:57:56,951.951 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-13 22:58:00,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:58:00,542.542 INFO    ] Checking for system updates...
[2026-06-13 22:58:00,563.563 INFO    ] 200
[2026-06-13 22:58:00,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:00,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:00,597.597 INFO    ] No update needed
[2026-06-13 22:58:00,599.599 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:00,620.620 INFO    ] 200
[2026-06-13 22:58:00,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:00,645.645 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:00,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:00,687.687 INFO    ] No camera update needed
[2026-06-13 22:58:00,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:00,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:00,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:00,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:58:02,723.723 INFO    ] ================================================
[2026-06-13 22:58:02,731.731 INFO    ] Launching Daemon at Sat Jun 13 22:58:02 IST 2026
[2026-06-13 22:58:02,737.737 INFO    ] ================================================
[2026-06-13 22:58:03,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:58:03
[2026-06-13 22:58:03,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:58:03,531.531 INFO    ] Initializing speech engine...
[2026-06-13 22:58:03,535.535 INFO    ] 2026-06-13 22:58:03
[2026-06-13 22:58:03,753.753 INFO    ] 2026-06-13 22:58:03
[2026-06-13 22:58:03,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:58:03,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:58:03,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:58:04,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:58:04,103.103 INFO    ] time= 13/06/2026 22:58:04
[2026-06-13 22:58:04,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:58:04,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:58:04,271.271 INFO    ] No existing commands found in stream
[2026-06-13 22:58:09,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:58:09,281.281 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 22:58:11,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 22:58:11,660.660 INFO    ] Checking for system updates...
[2026-06-13 22:58:11,680.680 INFO    ] 200
[2026-06-13 22:58:11,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:11,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:11,714.714 INFO    ] No update needed
[2026-06-13 22:58:11,715.715 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:11,735.735 INFO    ] 200
[2026-06-13 22:58:11,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:11,768.768 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:11,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:11,809.809 INFO    ] No camera update needed
[2026-06-13 22:58:11,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:11,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:11,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:11,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:58:13,864.864 INFO    ] ================================================
[2026-06-13 22:58:13,880.880 INFO    ] Launching Daemon at Sat Jun 13 22:58:13 IST 2026
[2026-06-13 22:58:13,891.891 INFO    ] ================================================
[2026-06-13 22:58:14,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:58:14
[2026-06-13 22:58:15,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:58:15,180.180 INFO    ] Initializing speech engine...
[2026-06-13 22:58:15,190.190 INFO    ] 2026-06-13 22:58:15
[2026-06-13 22:58:15,391.391 INFO    ] 2026-06-13 22:58:15
[2026-06-13 22:58:15,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:58:15,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:58:15,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:58:15,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:58:15,780.780 INFO    ] time= 13/06/2026 22:58:15
[2026-06-13 22:58:15,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:58:15,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:58:15,906.906 INFO    ] No existing commands found in stream
[2026-06-13 22:58:20,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:58:20,924.924 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-13 22:58:25,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:58:25,067.067 INFO    ] Checking for system updates...
[2026-06-13 22:58:25,088.088 INFO    ] 200
[2026-06-13 22:58:25,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:25,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:25,122.122 INFO    ] No update needed
[2026-06-13 22:58:25,123.123 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:25,143.143 INFO    ] 200
[2026-06-13 22:58:25,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:25,169.169 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:25,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:25,207.207 INFO    ] No camera update needed
[2026-06-13 22:58:25,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:25,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:25,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:25,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:58:27,256.256 INFO    ] ================================================
[2026-06-13 22:58:27,271.271 INFO    ] Launching Daemon at Sat Jun 13 22:58:27 IST 2026
[2026-06-13 22:58:27,282.282 INFO    ] ================================================
[2026-06-13 22:58:27,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:58:27
[2026-06-13 22:58:27,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:58:28,093.093 INFO    ] Initializing speech engine...
[2026-06-13 22:58:28,097.097 INFO    ] 2026-06-13 22:58:28
[2026-06-13 22:58:28,324.324 INFO    ] 2026-06-13 22:58:28
[2026-06-13 22:58:28,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:58:28,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:58:28,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:58:28,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:58:28,774.774 INFO    ] time= 13/06/2026 22:58:28
[2026-06-13 22:58:28,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:58:28,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:58:28,877.877 INFO    ] No existing commands found in stream
[2026-06-13 22:58:33,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:58:33,891.891 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-13 22:58:35,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:58:35,841.841 INFO    ] Checking for system updates...
[2026-06-13 22:58:35,861.861 INFO    ] 200
[2026-06-13 22:58:35,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:35,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:35,895.895 INFO    ] No update needed
[2026-06-13 22:58:35,896.896 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:35,916.916 INFO    ] 200
[2026-06-13 22:58:35,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:35,943.943 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:35,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:35,995.995 INFO    ] No camera update needed
[2026-06-13 22:58:35,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:35,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:36,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:36,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:58:38,042.042 INFO    ] ================================================
[2026-06-13 22:58:38,057.057 INFO    ] Launching Daemon at Sat Jun 13 22:58:38 IST 2026
[2026-06-13 22:58:38,068.068 INFO    ] ================================================
[2026-06-13 22:58:38,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:58:38
[2026-06-13 22:58:38,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:58:38,875.875 INFO    ] Initializing speech engine...
[2026-06-13 22:58:38,888.888 INFO    ] 2026-06-13 22:58:38
[2026-06-13 22:58:39,104.104 INFO    ] 2026-06-13 22:58:39
[2026-06-13 22:58:39,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:58:39,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:58:39,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:58:39,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:58:39,533.533 INFO    ] time= 13/06/2026 22:58:39
[2026-06-13 22:58:39,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:58:39,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:58:39,652.652 INFO    ] No existing commands found in stream
[2026-06-13 22:58:44,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:58:44,663.663 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 22:58:45,085.085 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 22:58:45,110.110 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dcf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 22:58:45,118.118 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dcf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 22:58:45,127.127 INFO    ] None
[2026-06-13 22:58:45,129.129 INFO    ] Checking for system updates...
[2026-06-13 22:58:45,160.160 INFO    ] 200
[2026-06-13 22:58:45,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:45,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:45,193.193 INFO    ] No update needed
[2026-06-13 22:58:45,195.195 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:45,214.214 INFO    ] 200
[2026-06-13 22:58:45,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:45,239.239 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:47,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:58:47,984.984 INFO    ] No camera update needed
[2026-06-13 22:58:47,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:47,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:48,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:58:50,045.045 INFO    ] ================================================
[2026-06-13 22:58:50,061.061 INFO    ] Launching Daemon at Sat Jun 13 22:58:50 IST 2026
[2026-06-13 22:58:50,072.072 INFO    ] ================================================
[2026-06-13 22:58:50,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:58:50
[2026-06-13 22:58:50,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:58:50,879.879 INFO    ] Initializing speech engine...
[2026-06-13 22:58:50,884.884 INFO    ] 2026-06-13 22:58:50
[2026-06-13 22:58:51,088.088 INFO    ] 2026-06-13 22:58:51
[2026-06-13 22:58:51,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:58:51,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:58:51,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:58:51,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:58:51,492.492 INFO    ] time= 13/06/2026 22:58:51
[2026-06-13 22:58:51,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:58:51,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:58:51,600.600 INFO    ] No existing commands found in stream
[2026-06-13 22:58:56,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:58:56,613.613 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 22:58:58,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 22:58:58,493.493 INFO    ] Checking for system updates...
[2026-06-13 22:58:58,515.515 INFO    ] 200
[2026-06-13 22:58:58,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:58,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:58,550.550 INFO    ] No update needed
[2026-06-13 22:58:58,551.551 INFO    ] Checking for camera pi updates...
[2026-06-13 22:58:58,570.570 INFO    ] 200
[2026-06-13 22:58:58,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:58:58,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:58:58,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:58:58,635.635 INFO    ] No camera update needed
[2026-06-13 22:58:58,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:58:58,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:58:58,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:58:58,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:00,684.684 INFO    ] ================================================
[2026-06-13 22:59:00,700.700 INFO    ] Launching Daemon at Sat Jun 13 22:59:00 IST 2026
[2026-06-13 22:59:00,711.711 INFO    ] ================================================
[2026-06-13 22:59:01,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:01
[2026-06-13 22:59:01,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:01,510.510 INFO    ] Initializing speech engine...
[2026-06-13 22:59:01,518.518 INFO    ] 2026-06-13 22:59:01
[2026-06-13 22:59:01,712.712 INFO    ] 2026-06-13 22:59:01
[2026-06-13 22:59:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:01,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:01,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:02,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:02,130.130 INFO    ] time= 13/06/2026 22:59:02
[2026-06-13 22:59:02,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:02,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:02,267.267 INFO    ] No existing commands found in stream
[2026-06-13 22:59:07,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:59:07,296.296 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-13 22:59:11,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:59:11,532.532 INFO    ] Checking for system updates...
[2026-06-13 22:59:11,553.553 INFO    ] 200
[2026-06-13 22:59:11,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:11,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:11,586.586 INFO    ] No update needed
[2026-06-13 22:59:11,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 22:59:11,607.607 INFO    ] 200
[2026-06-13 22:59:11,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:11,633.633 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:59:11,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:11,674.674 INFO    ] No camera update needed
[2026-06-13 22:59:11,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:59:11,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:59:11,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:59:11,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:13,724.724 INFO    ] ================================================
[2026-06-13 22:59:13,740.740 INFO    ] Launching Daemon at Sat Jun 13 22:59:13 IST 2026
[2026-06-13 22:59:13,751.751 INFO    ] ================================================
[2026-06-13 22:59:14,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:14
[2026-06-13 22:59:14,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:14,609.609 INFO    ] Initializing speech engine...
[2026-06-13 22:59:14,614.614 INFO    ] 2026-06-13 22:59:14
[2026-06-13 22:59:14,820.820 INFO    ] 2026-06-13 22:59:14
[2026-06-13 22:59:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:15,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:15,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:15,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:15,238.238 INFO    ] time= 13/06/2026 22:59:15
[2026-06-13 22:59:15,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:15,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:15,335.335 INFO    ] No existing commands found in stream
[2026-06-13 22:59:20,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:59:20,352.352 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 22:59:23,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 22:59:23,687.687 INFO    ] Checking for system updates...
[2026-06-13 22:59:23,709.709 INFO    ] 200
[2026-06-13 22:59:23,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:23,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:23,743.743 INFO    ] No update needed
[2026-06-13 22:59:23,744.744 INFO    ] Checking for camera pi updates...
[2026-06-13 22:59:23,764.764 INFO    ] 200
[2026-06-13 22:59:23,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:23,789.789 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:59:23,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:23,828.828 INFO    ] No camera update needed
[2026-06-13 22:59:23,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:59:23,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:59:23,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:59:23,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:25,879.879 INFO    ] ================================================
[2026-06-13 22:59:25,894.894 INFO    ] Launching Daemon at Sat Jun 13 22:59:25 IST 2026
[2026-06-13 22:59:25,905.905 INFO    ] ================================================
[2026-06-13 22:59:26,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:26
[2026-06-13 22:59:26,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:26,687.687 INFO    ] Initializing speech engine...
[2026-06-13 22:59:26,692.692 INFO    ] 2026-06-13 22:59:26
[2026-06-13 22:59:26,896.896 INFO    ] 2026-06-13 22:59:26
[2026-06-13 22:59:26,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:27,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:27,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:27,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:27,309.309 INFO    ] time= 13/06/2026 22:59:27
[2026-06-13 22:59:27,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:27,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:27,454.454 INFO    ] No existing commands found in stream
[2026-06-13 22:59:32,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:59:32,461.461 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 22:59:33,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 22:59:33,414.414 INFO    ] Checking for system updates...
[2026-06-13 22:59:33,435.435 INFO    ] 200
[2026-06-13 22:59:33,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:33,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:59:33,469.469 INFO    ] No update needed
[2026-06-13 22:59:33,470.470 INFO    ] Checking for camera pi updates...
[2026-06-13 22:59:33,490.490 INFO    ] 200
[2026-06-13 22:59:33,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:33,514.514 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:59:33,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:59:33,555.555 INFO    ] No camera update needed
[2026-06-13 22:59:33,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:59:33,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:59:33,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:59:33,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:35,602.602 INFO    ] ================================================
[2026-06-13 22:59:35,617.617 INFO    ] Launching Daemon at Sat Jun 13 22:59:35 IST 2026
[2026-06-13 22:59:35,628.628 INFO    ] ================================================
[2026-06-13 22:59:36,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:36
[2026-06-13 22:59:36,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:36,889.889 INFO    ] Initializing speech engine...
[2026-06-13 22:59:36,899.899 INFO    ] 2026-06-13 22:59:36
[2026-06-13 22:59:37,158.158 INFO    ] 2026-06-13 22:59:37
[2026-06-13 22:59:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:37,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:37,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:37,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:37,514.514 INFO    ] time= 13/06/2026 22:59:37
[2026-06-13 22:59:37,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:37,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:37,588.588 INFO    ] No existing commands found in stream
[2026-06-13 22:59:42,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:59:42,603.603 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-13 22:59:45,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:59:45,491.491 INFO    ] Checking for system updates...
[2026-06-13 22:59:45,512.512 INFO    ] 200
[2026-06-13 22:59:45,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:45,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:59:45,545.545 INFO    ] No update needed
[2026-06-13 22:59:45,546.546 INFO    ] Checking for camera pi updates...
[2026-06-13 22:59:45,566.566 INFO    ] 200
[2026-06-13 22:59:45,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:45,599.599 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:59:45,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 22:59:45,638.638 INFO    ] No camera update needed
[2026-06-13 22:59:45,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:59:45,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:59:45,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:59:45,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:47,687.687 INFO    ] ================================================
[2026-06-13 22:59:47,703.703 INFO    ] Launching Daemon at Sat Jun 13 22:59:47 IST 2026
[2026-06-13 22:59:47,715.715 INFO    ] ================================================
[2026-06-13 22:59:48,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:48
[2026-06-13 22:59:48,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:48,504.504 INFO    ] Initializing speech engine...
[2026-06-13 22:59:48,508.508 INFO    ] 2026-06-13 22:59:48
[2026-06-13 22:59:48,736.736 INFO    ] 2026-06-13 22:59:48
[2026-06-13 22:59:48,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:48,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:48,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:49,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:49,092.092 INFO    ] time= 13/06/2026 22:59:49
[2026-06-13 22:59:49,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:49,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:49,285.285 INFO    ] No existing commands found in stream
[2026-06-13 22:59:54,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 22:59:54,297.297 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-13 22:59:54,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 22:59:54,732.732 INFO    ] Checking for system updates...
[2026-06-13 22:59:54,753.753 INFO    ] 200
[2026-06-13 22:59:54,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:54,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:54,787.787 INFO    ] No update needed
[2026-06-13 22:59:54,788.788 INFO    ] Checking for camera pi updates...
[2026-06-13 22:59:54,808.808 INFO    ] 200
[2026-06-13 22:59:54,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 22:59:54,833.833 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 22:59:54,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 22:59:54,880.880 INFO    ] No camera update needed
[2026-06-13 22:59:54,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-13 22:59:54,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 22:59:54,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 22:59:54,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 22:59:56,927.927 INFO    ] ================================================
[2026-06-13 22:59:56,942.942 INFO    ] Launching Daemon at Sat Jun 13 22:59:56 IST 2026
[2026-06-13 22:59:56,957.957 INFO    ] ================================================
[2026-06-13 22:59:57,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 22:59:57
[2026-06-13 22:59:57,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 22:59:57,790.790 INFO    ] Initializing speech engine...
[2026-06-13 22:59:57,796.796 INFO    ] 2026-06-13 22:59:57
[2026-06-13 22:59:58,003.003 INFO    ] 2026-06-13 22:59:57
[2026-06-13 22:59:58,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 22:59:58,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 22:59:58,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 22:59:58,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 22:59:58,420.420 INFO    ] time= 13/06/2026 22:59:58
[2026-06-13 22:59:58,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 22:59:58,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-13 22:59:58,522.522 INFO    ] No existing commands found in stream
[2026-06-13 23:00:03,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:00:03,541.541 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 23:00:07,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:00:07,537.537 INFO    ] Checking for system updates...
[2026-06-13 23:00:07,573.573 INFO    ] 200
[2026-06-13 23:00:07,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:07,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:00:07,628.628 INFO    ] No update needed
[2026-06-13 23:00:07,630.630 INFO    ] Checking for camera pi updates...
[2026-06-13 23:00:07,649.649 INFO    ] 200
[2026-06-13 23:00:07,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:07,673.673 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:00:07,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:07,720.720 INFO    ] No camera update needed
[2026-06-13 23:00:07,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:00:07,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:00:07,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:00:07,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:00:09,767.767 INFO    ] ================================================
[2026-06-13 23:00:09,789.789 INFO    ] Launching Daemon at Sat Jun 13 23:00:09 IST 2026
[2026-06-13 23:00:09,800.800 INFO    ] ================================================
[2026-06-13 23:00:10,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:00:10
[2026-06-13 23:00:10,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:00:10,642.642 INFO    ] Initializing speech engine...
[2026-06-13 23:00:10,651.651 INFO    ] 2026-06-13 23:00:10
[2026-06-13 23:00:10,867.867 INFO    ] 2026-06-13 23:00:10
[2026-06-13 23:00:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:00:11,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:00:11,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:00:11,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:00:11,281.281 INFO    ] time= 13/06/2026 23:00:11
[2026-06-13 23:00:11,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:00:11,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:00:11,418.418 INFO    ] No existing commands found in stream
[2026-06-13 23:00:16,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:00:16,431.431 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 23:00:19,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:00:19,400.400 INFO    ] Checking for system updates...
[2026-06-13 23:00:19,422.422 INFO    ] 200
[2026-06-13 23:00:19,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:19,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:19,455.455 INFO    ] No update needed
[2026-06-13 23:00:19,456.456 INFO    ] Checking for camera pi updates...
[2026-06-13 23:00:19,476.476 INFO    ] 200
[2026-06-13 23:00:19,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:19,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:00:19,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:19,543.543 INFO    ] No camera update needed
[2026-06-13 23:00:19,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:00:19,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:00:19,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:00:19,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:00:21,591.591 INFO    ] ================================================
[2026-06-13 23:00:21,606.606 INFO    ] Launching Daemon at Sat Jun 13 23:00:21 IST 2026
[2026-06-13 23:00:21,617.617 INFO    ] ================================================
[2026-06-13 23:00:21,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:00:21
[2026-06-13 23:00:22,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:00:22,452.452 INFO    ] Initializing speech engine...
[2026-06-13 23:00:22,457.457 INFO    ] 2026-06-13 23:00:22
[2026-06-13 23:00:22,665.665 INFO    ] 2026-06-13 23:00:22
[2026-06-13 23:00:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:00:22,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:00:22,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:00:23,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:00:23,084.084 INFO    ] time= 13/06/2026 23:00:23
[2026-06-13 23:00:23,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:00:23,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:00:23,181.181 INFO    ] No existing commands found in stream
[2026-06-13 23:00:28,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:00:28,194.194 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-13 23:00:31,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:00:31,977.977 INFO    ] Checking for system updates...
[2026-06-13 23:00:32,002.002 INFO    ] 200
[2026-06-13 23:00:32,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:32,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:32,042.042 INFO    ] No update needed
[2026-06-13 23:00:32,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 23:00:32,065.065 INFO    ] 200
[2026-06-13 23:00:32,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:32,101.101 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:00:32,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:32,136.136 INFO    ] No camera update needed
[2026-06-13 23:00:32,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:00:32,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:00:32,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:00:32,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:00:34,194.194 INFO    ] ================================================
[2026-06-13 23:00:34,210.210 INFO    ] Launching Daemon at Sat Jun 13 23:00:34 IST 2026
[2026-06-13 23:00:34,221.221 INFO    ] ================================================
[2026-06-13 23:00:34,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:00:34
[2026-06-13 23:00:35,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:00:35,512.512 INFO    ] Initializing speech engine...
[2026-06-13 23:00:35,518.518 INFO    ] 2026-06-13 23:00:35
[2026-06-13 23:00:35,724.724 INFO    ] 2026-06-13 23:00:35
[2026-06-13 23:00:35,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:00:35,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:00:35,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:00:36,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:00:36,143.143 INFO    ] time= 13/06/2026 23:00:36
[2026-06-13 23:00:36,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:00:36,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:00:36,244.244 INFO    ] No existing commands found in stream
[2026-06-13 23:00:41,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:00:41,258.258 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 23:00:44,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:00:44,573.573 INFO    ] Checking for system updates...
[2026-06-13 23:00:44,595.595 INFO    ] 200
[2026-06-13 23:00:44,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:44,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:44,628.628 INFO    ] No update needed
[2026-06-13 23:00:44,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 23:00:44,649.649 INFO    ] 200
[2026-06-13 23:00:44,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:44,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:00:44,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:44,714.714 INFO    ] No camera update needed
[2026-06-13 23:00:44,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:00:44,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:00:44,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:00:44,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:00:46,762.762 INFO    ] ================================================
[2026-06-13 23:00:46,777.777 INFO    ] Launching Daemon at Sat Jun 13 23:00:46 IST 2026
[2026-06-13 23:00:46,788.788 INFO    ] ================================================
[2026-06-13 23:00:47,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:00:47
[2026-06-13 23:00:47,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:00:47,616.616 INFO    ] Initializing speech engine...
[2026-06-13 23:00:47,622.622 INFO    ] 2026-06-13 23:00:47
[2026-06-13 23:00:47,830.830 INFO    ] 2026-06-13 23:00:47
[2026-06-13 23:00:47,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:00:47,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:00:48,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:00:48,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:00:48,247.247 INFO    ] time= 13/06/2026 23:00:48
[2026-06-13 23:00:48,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:00:48,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:00:48,348.348 INFO    ] No existing commands found in stream
[2026-06-13 23:00:53,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:00:53,366.366 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 23:00:56,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:00:56,238.238 INFO    ] Checking for system updates...
[2026-06-13 23:00:56,259.259 INFO    ] 200
[2026-06-13 23:00:56,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:56,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:56,294.294 INFO    ] No update needed
[2026-06-13 23:00:56,295.295 INFO    ] Checking for camera pi updates...
[2026-06-13 23:00:56,315.315 INFO    ] 200
[2026-06-13 23:00:56,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:00:56,340.340 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:00:56,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:00:56,488.488 INFO    ] No camera update needed
[2026-06-13 23:00:56,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:00:56,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:00:56,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:00:56,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:00:58,537.537 INFO    ] ================================================
[2026-06-13 23:00:58,553.553 INFO    ] Launching Daemon at Sat Jun 13 23:00:58 IST 2026
[2026-06-13 23:00:58,564.564 INFO    ] ================================================
[2026-06-13 23:00:58,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:00:58
[2026-06-13 23:00:59,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:00:59,379.379 INFO    ] Initializing speech engine...
[2026-06-13 23:00:59,384.384 INFO    ] 2026-06-13 23:00:59
[2026-06-13 23:00:59,590.590 INFO    ] 2026-06-13 23:00:59
[2026-06-13 23:00:59,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:00:59,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:00:59,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:00:59,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:00:59,992.992 INFO    ] time= 13/06/2026 23:00:59
[2026-06-13 23:01:00,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:00,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:00,110.110 INFO    ] No existing commands found in stream
[2026-06-13 23:01:05,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:01:05,122.122 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 23:01:08,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:01:08,019.019 INFO    ] Checking for system updates...
[2026-06-13 23:01:08,041.041 INFO    ] 200
[2026-06-13 23:01:08,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:08,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:01:08,074.074 INFO    ] No update needed
[2026-06-13 23:01:08,075.075 INFO    ] Checking for camera pi updates...
[2026-06-13 23:01:08,095.095 INFO    ] 200
[2026-06-13 23:01:08,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:08,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:01:08,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:01:08,164.164 INFO    ] No camera update needed
[2026-06-13 23:01:08,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:01:08,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:01:08,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:01:08,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:01:10,213.213 INFO    ] ================================================
[2026-06-13 23:01:10,228.228 INFO    ] Launching Daemon at Sat Jun 13 23:01:10 IST 2026
[2026-06-13 23:01:10,239.239 INFO    ] ================================================
[2026-06-13 23:01:10,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:01:10
[2026-06-13 23:01:10,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:01:11,028.028 INFO    ] Initializing speech engine...
[2026-06-13 23:01:11,031.031 INFO    ] 2026-06-13 23:01:11
[2026-06-13 23:01:11,256.256 INFO    ] 2026-06-13 23:01:11
[2026-06-13 23:01:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:01:11,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:01:11,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:01:11,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:01:11,617.617 INFO    ] time= 13/06/2026 23:01:11
[2026-06-13 23:01:11,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:11,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:11,730.730 INFO    ] No existing commands found in stream
[2026-06-13 23:01:16,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:01:16,747.747 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 23:01:19,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:01:19,038.038 INFO    ] Checking for system updates...
[2026-06-13 23:01:19,059.059 INFO    ] 200
[2026-06-13 23:01:19,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:19,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:01:19,093.093 INFO    ] No update needed
[2026-06-13 23:01:19,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 23:01:19,114.114 INFO    ] 200
[2026-06-13 23:01:19,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:19,139.139 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:01:19,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:01:19,180.180 INFO    ] No camera update needed
[2026-06-13 23:01:19,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:01:19,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:01:19,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:01:19,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:01:21,230.230 INFO    ] ================================================
[2026-06-13 23:01:21,245.245 INFO    ] Launching Daemon at Sat Jun 13 23:01:21 IST 2026
[2026-06-13 23:01:21,256.256 INFO    ] ================================================
[2026-06-13 23:01:21,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:01:21
[2026-06-13 23:01:21,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:01:22,035.035 INFO    ] Initializing speech engine...
[2026-06-13 23:01:22,043.043 INFO    ] 2026-06-13 23:01:22
[2026-06-13 23:01:22,253.253 INFO    ] 2026-06-13 23:01:22
[2026-06-13 23:01:22,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:01:22,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:01:22,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:01:22,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:01:22,653.653 INFO    ] time= 13/06/2026 23:01:22
[2026-06-13 23:01:22,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:22,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:22,831.831 INFO    ] No existing commands found in stream
[2026-06-13 23:01:27,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:01:27,857.857 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 23:01:31,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:01:31,913.913 INFO    ] Checking for system updates...
[2026-06-13 23:01:31,937.937 INFO    ] 200
[2026-06-13 23:01:31,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:31,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:01:31,975.975 INFO    ] No update needed
[2026-06-13 23:01:31,977.977 INFO    ] Checking for camera pi updates...
[2026-06-13 23:01:31,999.999 INFO    ] 200
[2026-06-13 23:01:32,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:32,026.026 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:01:32,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:01:32,052.052 INFO    ] No camera update needed
[2026-06-13 23:01:32,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:01:32,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:01:32,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:01:32,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:01:34,103.103 INFO    ] ================================================
[2026-06-13 23:01:34,119.119 INFO    ] Launching Daemon at Sat Jun 13 23:01:34 IST 2026
[2026-06-13 23:01:34,130.130 INFO    ] ================================================
[2026-06-13 23:01:34,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:01:34
[2026-06-13 23:01:34,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:01:34,999.999 INFO    ] Initializing speech engine...
[2026-06-13 23:01:35,004.004 INFO    ] 2026-06-13 23:01:35
[2026-06-13 23:01:35,217.217 INFO    ] 2026-06-13 23:01:35
[2026-06-13 23:01:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:01:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:01:35,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:01:35,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:01:35,639.639 INFO    ] time= 13/06/2026 23:01:35
[2026-06-13 23:01:35,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:35,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:35,744.744 INFO    ] No existing commands found in stream
[2026-06-13 23:01:40,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:01:40,762.762 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 23:01:41,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:01:41,447.447 INFO    ] Checking for system updates...
[2026-06-13 23:01:41,469.469 INFO    ] 200
[2026-06-13 23:01:41,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:41,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:01:41,506.506 INFO    ] No update needed
[2026-06-13 23:01:41,508.508 INFO    ] Checking for camera pi updates...
[2026-06-13 23:01:41,528.528 INFO    ] 200
[2026-06-13 23:01:41,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:41,553.553 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:01:41,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:01:41,587.587 INFO    ] No camera update needed
[2026-06-13 23:01:41,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:01:41,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:01:41,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:01:41,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:01:43,636.636 INFO    ] ================================================
[2026-06-13 23:01:43,651.651 INFO    ] Launching Daemon at Sat Jun 13 23:01:43 IST 2026
[2026-06-13 23:01:43,662.662 INFO    ] ================================================
[2026-06-13 23:01:44,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:01:44
[2026-06-13 23:01:44,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:01:44,470.470 INFO    ] Initializing speech engine...
[2026-06-13 23:01:44,478.478 INFO    ] 2026-06-13 23:01:44
[2026-06-13 23:01:44,692.692 INFO    ] 2026-06-13 23:01:44
[2026-06-13 23:01:44,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:01:44,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:01:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:01:45,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:01:45,110.110 INFO    ] time= 13/06/2026 23:01:45
[2026-06-13 23:01:45,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:45,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:45,336.336 INFO    ] No existing commands found in stream
[2026-06-13 23:01:50,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:01:50,370.370 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 23:01:53,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:01:53,847.847 INFO    ] Checking for system updates...
[2026-06-13 23:01:53,869.869 INFO    ] 200
[2026-06-13 23:01:53,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:53,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:01:53,902.902 INFO    ] No update needed
[2026-06-13 23:01:53,904.904 INFO    ] Checking for camera pi updates...
[2026-06-13 23:01:53,926.926 INFO    ] 200
[2026-06-13 23:01:53,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:01:53,952.952 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:01:53,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:01:53,996.996 INFO    ] No camera update needed
[2026-06-13 23:01:53,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:01:53,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:01:54,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:01:54,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:01:56,050.050 INFO    ] ================================================
[2026-06-13 23:01:56,066.066 INFO    ] Launching Daemon at Sat Jun 13 23:01:56 IST 2026
[2026-06-13 23:01:56,077.077 INFO    ] ================================================
[2026-06-13 23:01:56,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:01:56
[2026-06-13 23:01:57,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:01:57,325.325 INFO    ] Initializing speech engine...
[2026-06-13 23:01:57,332.332 INFO    ] 2026-06-13 23:01:57
[2026-06-13 23:01:57,625.625 INFO    ] 2026-06-13 23:01:57
[2026-06-13 23:01:57,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:01:57,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:01:57,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:01:57,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:01:58,000.000 INFO    ] time= 13/06/2026 23:01:57
[2026-06-13 23:01:58,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:01:58,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:01:58,125.125 INFO    ] No existing commands found in stream
[2026-06-13 23:02:03,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:02:03,142.142 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 23:02:05,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:02:05,406.406 INFO    ] Checking for system updates...
[2026-06-13 23:02:05,426.426 INFO    ] 200
[2026-06-13 23:02:05,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:05,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:05,460.460 INFO    ] No update needed
[2026-06-13 23:02:05,461.461 INFO    ] Checking for camera pi updates...
[2026-06-13 23:02:05,481.481 INFO    ] 200
[2026-06-13 23:02:05,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:05,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:02:05,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:05,546.546 INFO    ] No camera update needed
[2026-06-13 23:02:05,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:02:05,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:02:05,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:02:05,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:02:07,594.594 INFO    ] ================================================
[2026-06-13 23:02:07,610.610 INFO    ] Launching Daemon at Sat Jun 13 23:02:07 IST 2026
[2026-06-13 23:02:07,620.620 INFO    ] ================================================
[2026-06-13 23:02:07,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:02:07
[2026-06-13 23:02:08,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:02:08,937.937 INFO    ] Initializing speech engine...
[2026-06-13 23:02:08,952.952 INFO    ] 2026-06-13 23:02:08
[2026-06-13 23:02:09,233.233 INFO    ] 2026-06-13 23:02:09
[2026-06-13 23:02:09,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:02:09,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:02:09,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:02:09,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:02:09,700.700 INFO    ] time= 13/06/2026 23:02:09
[2026-06-13 23:02:09,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:02:09,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:02:09,907.907 INFO    ] No existing commands found in stream
[2026-06-13 23:02:14,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:02:14,941.941 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 23:02:17,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:02:17,982.982 INFO    ] Checking for system updates...
[2026-06-13 23:02:18,004.004 INFO    ] 200
[2026-06-13 23:02:18,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:18,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:18,037.037 INFO    ] No update needed
[2026-06-13 23:02:18,039.039 INFO    ] Checking for camera pi updates...
[2026-06-13 23:02:18,059.059 INFO    ] 200
[2026-06-13 23:02:18,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:18,085.085 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:02:18,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:18,130.130 INFO    ] No camera update needed
[2026-06-13 23:02:18,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:02:18,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:02:18,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:02:18,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:02:20,180.180 INFO    ] ================================================
[2026-06-13 23:02:20,195.195 INFO    ] Launching Daemon at Sat Jun 13 23:02:20 IST 2026
[2026-06-13 23:02:20,206.206 INFO    ] ================================================
[2026-06-13 23:02:20,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:02:20
[2026-06-13 23:02:20,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:02:21,063.063 INFO    ] Initializing speech engine...
[2026-06-13 23:02:21,071.071 INFO    ] 2026-06-13 23:02:21
[2026-06-13 23:02:21,281.281 INFO    ] 2026-06-13 23:02:21
[2026-06-13 23:02:21,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:02:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:02:21,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:02:21,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:02:21,703.703 INFO    ] time= 13/06/2026 23:02:21
[2026-06-13 23:02:21,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:02:21,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:02:21,810.810 INFO    ] No existing commands found in stream
[2026-06-13 23:02:26,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:02:26,824.824 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-13 23:02:28,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:02:28,077.077 INFO    ] Checking for system updates...
[2026-06-13 23:02:28,098.098 INFO    ] 200
[2026-06-13 23:02:28,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:28,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:02:28,132.132 INFO    ] No update needed
[2026-06-13 23:02:28,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 23:02:28,153.153 INFO    ] 200
[2026-06-13 23:02:28,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:28,197.197 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:02:28,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:02:28,249.249 INFO    ] No camera update needed
[2026-06-13 23:02:28,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:02:28,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:02:28,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:02:28,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:02:30,307.307 INFO    ] ================================================
[2026-06-13 23:02:30,323.323 INFO    ] Launching Daemon at Sat Jun 13 23:02:30 IST 2026
[2026-06-13 23:02:30,335.335 INFO    ] ================================================
[2026-06-13 23:02:30,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:02:30
[2026-06-13 23:02:31,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:02:31,145.145 INFO    ] Initializing speech engine...
[2026-06-13 23:02:31,148.148 INFO    ] 2026-06-13 23:02:31
[2026-06-13 23:02:31,354.354 INFO    ] 2026-06-13 23:02:31
[2026-06-13 23:02:31,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:02:31,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:02:31,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:02:31,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:02:31,781.781 INFO    ] time= 13/06/2026 23:02:31
[2026-06-13 23:02:31,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:02:31,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:02:31,969.969 INFO    ] No existing commands found in stream
[2026-06-13 23:02:36,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:02:36,979.979 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-13 23:02:41,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:02:41,178.178 INFO    ] Checking for system updates...
[2026-06-13 23:02:41,204.204 INFO    ] 200
[2026-06-13 23:02:41,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:41,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:41,260.260 INFO    ] No update needed
[2026-06-13 23:02:41,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 23:02:41,318.318 INFO    ] 200
[2026-06-13 23:02:41,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:41,366.366 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:02:41,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:41,411.411 INFO    ] No camera update needed
[2026-06-13 23:02:41,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:02:41,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:02:41,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:02:41,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:02:43,473.473 INFO    ] ================================================
[2026-06-13 23:02:43,489.489 INFO    ] Launching Daemon at Sat Jun 13 23:02:43 IST 2026
[2026-06-13 23:02:43,500.500 INFO    ] ================================================
[2026-06-13 23:02:44,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:02:44
[2026-06-13 23:02:44,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:02:44,817.817 INFO    ] Initializing speech engine...
[2026-06-13 23:02:44,822.822 INFO    ] 2026-06-13 23:02:44
[2026-06-13 23:02:45,039.039 INFO    ] 2026-06-13 23:02:45
[2026-06-13 23:02:45,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:02:45,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:02:45,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:02:45,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:02:45,445.445 INFO    ] time= 13/06/2026 23:02:45
[2026-06-13 23:02:45,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:02:45,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:02:45,593.593 INFO    ] No existing commands found in stream
[2026-06-13 23:02:50,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:02:50,605.605 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-13 23:02:52,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:02:52,712.712 INFO    ] Checking for system updates...
[2026-06-13 23:02:52,735.735 INFO    ] 200
[2026-06-13 23:02:52,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:52,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:52,769.769 INFO    ] No update needed
[2026-06-13 23:02:52,770.770 INFO    ] Checking for camera pi updates...
[2026-06-13 23:02:52,790.790 INFO    ] 200
[2026-06-13 23:02:52,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:02:52,822.822 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:02:52,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:02:52,868.868 INFO    ] No camera update needed
[2026-06-13 23:02:52,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:02:52,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:02:52,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:02:52,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:02:54,924.924 INFO    ] ================================================
[2026-06-13 23:02:54,939.939 INFO    ] Launching Daemon at Sat Jun 13 23:02:54 IST 2026
[2026-06-13 23:02:54,950.950 INFO    ] ================================================
[2026-06-13 23:02:55,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:02:55
[2026-06-13 23:02:56,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:02:56,193.193 INFO    ] Initializing speech engine...
[2026-06-13 23:02:56,199.199 INFO    ] 2026-06-13 23:02:56
[2026-06-13 23:02:56,409.409 INFO    ] 2026-06-13 23:02:56
[2026-06-13 23:02:56,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:02:56,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:02:56,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:02:56,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:02:56,822.822 INFO    ] time= 13/06/2026 23:02:56
[2026-06-13 23:02:56,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:02:56,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:02:56,922.922 INFO    ] No existing commands found in stream
[2026-06-13 23:03:01,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:03:01,931.931 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 23:03:04,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:03:04,242.242 INFO    ] Checking for system updates...
[2026-06-13 23:03:04,263.263 INFO    ] 200
[2026-06-13 23:03:04,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:04,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:04,301.301 INFO    ] No update needed
[2026-06-13 23:03:04,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 23:03:04,322.322 INFO    ] 200
[2026-06-13 23:03:04,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:04,347.347 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:03:04,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:04,392.392 INFO    ] No camera update needed
[2026-06-13 23:03:04,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:03:04,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:03:04,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:03:04,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:03:06,442.442 INFO    ] ================================================
[2026-06-13 23:03:06,457.457 INFO    ] Launching Daemon at Sat Jun 13 23:03:06 IST 2026
[2026-06-13 23:03:06,468.468 INFO    ] ================================================
[2026-06-13 23:03:06,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:03:06
[2026-06-13 23:03:07,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:03:07,241.241 INFO    ] Initializing speech engine...
[2026-06-13 23:03:07,246.246 INFO    ] 2026-06-13 23:03:07
[2026-06-13 23:03:07,475.475 INFO    ] 2026-06-13 23:03:07
[2026-06-13 23:03:07,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:03:07,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:03:07,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:03:07,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:03:07,898.898 INFO    ] time= 13/06/2026 23:03:07
[2026-06-13 23:03:07,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:03:07,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:03:08,030.030 INFO    ] No existing commands found in stream
[2026-06-13 23:03:13,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:03:13,043.043 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-13 23:03:16,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:03:16,903.903 INFO    ] Checking for system updates...
[2026-06-13 23:03:16,924.924 INFO    ] 200
[2026-06-13 23:03:16,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:16,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:16,957.957 INFO    ] No update needed
[2026-06-13 23:03:16,958.958 INFO    ] Checking for camera pi updates...
[2026-06-13 23:03:16,978.978 INFO    ] 200
[2026-06-13 23:03:16,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:17,003.003 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:03:17,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:17,041.041 INFO    ] No camera update needed
[2026-06-13 23:03:17,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:03:17,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:03:17,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:03:17,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:03:19,089.089 INFO    ] ================================================
[2026-06-13 23:03:19,104.104 INFO    ] Launching Daemon at Sat Jun 13 23:03:19 IST 2026
[2026-06-13 23:03:19,115.115 INFO    ] ================================================
[2026-06-13 23:03:19,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:03:19
[2026-06-13 23:03:19,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:03:19,901.901 INFO    ] Initializing speech engine...
[2026-06-13 23:03:19,913.913 INFO    ] 2026-06-13 23:03:19
[2026-06-13 23:03:20,120.120 INFO    ] 2026-06-13 23:03:20
[2026-06-13 23:03:20,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:03:20,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:03:20,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:03:20,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:03:20,537.537 INFO    ] time= 13/06/2026 23:03:20
[2026-06-13 23:03:20,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:03:20,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:03:20,637.637 INFO    ] No existing commands found in stream
[2026-06-13 23:03:25,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:03:25,650.650 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 23:03:28,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:03:28,585.585 INFO    ] Checking for system updates...
[2026-06-13 23:03:28,607.607 INFO    ] 200
[2026-06-13 23:03:28,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:28,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:28,640.640 INFO    ] No update needed
[2026-06-13 23:03:28,646.646 INFO    ] Checking for camera pi updates...
[2026-06-13 23:03:28,669.669 INFO    ] 200
[2026-06-13 23:03:28,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:28,693.693 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:03:28,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:28,732.732 INFO    ] No camera update needed
[2026-06-13 23:03:28,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:03:28,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:03:28,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:03:28,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:03:30,780.780 INFO    ] ================================================
[2026-06-13 23:03:30,795.795 INFO    ] Launching Daemon at Sat Jun 13 23:03:30 IST 2026
[2026-06-13 23:03:30,806.806 INFO    ] ================================================
[2026-06-13 23:03:31,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:03:31
[2026-06-13 23:03:31,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:03:31,700.700 INFO    ] Initializing speech engine...
[2026-06-13 23:03:31,713.713 INFO    ] 2026-06-13 23:03:31
[2026-06-13 23:03:32,011.011 INFO    ] 2026-06-13 23:03:32
[2026-06-13 23:03:32,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:03:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:03:32,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:03:32,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:03:32,460.460 INFO    ] time= 13/06/2026 23:03:32
[2026-06-13 23:03:32,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:03:32,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:03:32,648.648 INFO    ] No existing commands found in stream
[2026-06-13 23:03:37,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:03:37,663.663 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 23:03:39,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:03:39,687.687 INFO    ] Checking for system updates...
[2026-06-13 23:03:39,708.708 INFO    ] 200
[2026-06-13 23:03:39,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:39,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:39,742.742 INFO    ] No update needed
[2026-06-13 23:03:39,743.743 INFO    ] Checking for camera pi updates...
[2026-06-13 23:03:39,763.763 INFO    ] 200
[2026-06-13 23:03:39,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:39,790.790 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:03:39,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:03:39,835.835 INFO    ] No camera update needed
[2026-06-13 23:03:39,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:03:39,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:03:39,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:03:39,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:03:41,888.888 INFO    ] ================================================
[2026-06-13 23:03:41,903.903 INFO    ] Launching Daemon at Sat Jun 13 23:03:41 IST 2026
[2026-06-13 23:03:41,914.914 INFO    ] ================================================
[2026-06-13 23:03:42,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:03:42
[2026-06-13 23:03:42,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:03:42,702.702 INFO    ] Initializing speech engine...
[2026-06-13 23:03:42,707.707 INFO    ] 2026-06-13 23:03:42
[2026-06-13 23:03:42,912.912 INFO    ] 2026-06-13 23:03:42
[2026-06-13 23:03:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:03:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:03:43,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:03:43,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:03:43,332.332 INFO    ] time= 13/06/2026 23:03:43
[2026-06-13 23:03:43,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:03:43,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:03:43,464.464 INFO    ] No existing commands found in stream
[2026-06-13 23:03:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:03:48,501.501 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 23:03:51,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:03:51,566.566 INFO    ] Checking for system updates...
[2026-06-13 23:03:51,594.594 INFO    ] 200
[2026-06-13 23:03:51,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:51,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:51,631.631 INFO    ] No update needed
[2026-06-13 23:03:51,632.632 INFO    ] Checking for camera pi updates...
[2026-06-13 23:03:51,652.652 INFO    ] 200
[2026-06-13 23:03:51,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:03:51,677.677 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:03:51,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:03:51,722.722 INFO    ] No camera update needed
[2026-06-13 23:03:51,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:03:51,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:03:51,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:03:51,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:03:53,771.771 INFO    ] ================================================
[2026-06-13 23:03:53,786.786 INFO    ] Launching Daemon at Sat Jun 13 23:03:53 IST 2026
[2026-06-13 23:03:53,797.797 INFO    ] ================================================
[2026-06-13 23:03:54,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:03:54
[2026-06-13 23:03:54,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:03:54,627.627 INFO    ] Initializing speech engine...
[2026-06-13 23:03:54,632.632 INFO    ] 2026-06-13 23:03:54
[2026-06-13 23:03:54,839.839 INFO    ] 2026-06-13 23:03:54
[2026-06-13 23:03:54,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:03:54,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:03:55,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:03:55,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:03:55,233.233 INFO    ] time= 13/06/2026 23:03:55
[2026-06-13 23:03:55,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:03:55,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:03:55,351.351 INFO    ] No existing commands found in stream
[2026-06-13 23:04:00,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:00,365.365 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 23:04:02,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:04:02,998.998 INFO    ] Checking for system updates...
[2026-06-13 23:04:03,020.020 INFO    ] 200
[2026-06-13 23:04:03,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:03,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:03,056.056 INFO    ] No update needed
[2026-06-13 23:04:03,057.057 INFO    ] Checking for camera pi updates...
[2026-06-13 23:04:03,077.077 INFO    ] 200
[2026-06-13 23:04:03,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:03,102.102 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:04:03,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:03,152.152 INFO    ] No camera update needed
[2026-06-13 23:04:03,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:04:03,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:04:03,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:04:03,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:04:05,209.209 INFO    ] ================================================
[2026-06-13 23:04:05,224.224 INFO    ] Launching Daemon at Sat Jun 13 23:04:05 IST 2026
[2026-06-13 23:04:05,235.235 INFO    ] ================================================
[2026-06-13 23:04:05,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:04:05
[2026-06-13 23:04:05,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:04:06,101.101 INFO    ] Initializing speech engine...
[2026-06-13 23:04:06,105.105 INFO    ] 2026-06-13 23:04:06
[2026-06-13 23:04:06,299.299 INFO    ] 2026-06-13 23:04:06
[2026-06-13 23:04:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:04:06,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:04:06,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:04:06,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:04:06,591.591 INFO    ] time= 13/06/2026 23:04:06
[2026-06-13 23:04:06,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:04:06,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:04:06,687.687 INFO    ] No existing commands found in stream
[2026-06-13 23:04:11,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:11,722.722 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-13 23:04:14,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:04:14,821.821 INFO    ] Checking for system updates...
[2026-06-13 23:04:14,844.844 INFO    ] 200
[2026-06-13 23:04:14,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:14,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:04:14,877.877 INFO    ] No update needed
[2026-06-13 23:04:14,878.878 INFO    ] Checking for camera pi updates...
[2026-06-13 23:04:14,901.901 INFO    ] 200
[2026-06-13 23:04:14,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:14,925.925 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:04:14,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:04:14,961.961 INFO    ] No camera update needed
[2026-06-13 23:04:14,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:04:14,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:04:14,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:04:14,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:04:17,007.007 INFO    ] ================================================
[2026-06-13 23:04:17,022.022 INFO    ] Launching Daemon at Sat Jun 13 23:04:17 IST 2026
[2026-06-13 23:04:17,033.033 INFO    ] ================================================
[2026-06-13 23:04:17,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:04:17
[2026-06-13 23:04:17,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:04:17,837.837 INFO    ] Initializing speech engine...
[2026-06-13 23:04:17,843.843 INFO    ] 2026-06-13 23:04:17
[2026-06-13 23:04:18,062.062 INFO    ] 2026-06-13 23:04:18
[2026-06-13 23:04:18,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:04:18,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:04:18,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:04:18,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:04:18,475.475 INFO    ] time= 13/06/2026 23:04:18
[2026-06-13 23:04:18,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:04:18,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:04:18,631.631 INFO    ] No existing commands found in stream
[2026-06-13 23:04:23,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:23,645.645 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 23:04:27,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:04:27,953.953 INFO    ] Checking for system updates...
[2026-06-13 23:04:27,974.974 INFO    ] 200
[2026-06-13 23:04:27,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:28,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:28,008.008 INFO    ] No update needed
[2026-06-13 23:04:28,009.009 INFO    ] Checking for camera pi updates...
[2026-06-13 23:04:28,032.032 INFO    ] 200
[2026-06-13 23:04:28,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:28,057.057 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:04:28,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:28,096.096 INFO    ] No camera update needed
[2026-06-13 23:04:28,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:04:28,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:04:28,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:04:28,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:04:30,142.142 INFO    ] ================================================
[2026-06-13 23:04:30,157.157 INFO    ] Launching Daemon at Sat Jun 13 23:04:30 IST 2026
[2026-06-13 23:04:30,168.168 INFO    ] ================================================
[2026-06-13 23:04:30,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:04:30
[2026-06-13 23:04:30,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:04:30,980.980 INFO    ] Initializing speech engine...
[2026-06-13 23:04:30,984.984 INFO    ] 2026-06-13 23:04:30
[2026-06-13 23:04:31,191.191 INFO    ] 2026-06-13 23:04:31
[2026-06-13 23:04:31,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:04:31,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:04:31,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:04:31,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:04:31,613.613 INFO    ] time= 13/06/2026 23:04:31
[2026-06-13 23:04:31,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:04:31,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:04:31,747.747 INFO    ] No existing commands found in stream
[2026-06-13 23:04:36,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:36,761.761 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-13 23:04:38,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:04:38,663.663 INFO    ] Checking for system updates...
[2026-06-13 23:04:38,684.684 INFO    ] 200
[2026-06-13 23:04:38,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:38,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:04:38,717.717 INFO    ] No update needed
[2026-06-13 23:04:38,718.718 INFO    ] Checking for camera pi updates...
[2026-06-13 23:04:38,738.738 INFO    ] 200
[2026-06-13 23:04:38,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:38,763.763 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:04:38,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:04:38,804.804 INFO    ] No camera update needed
[2026-06-13 23:04:38,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:04:38,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:04:38,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:04:38,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:04:40,851.851 INFO    ] ================================================
[2026-06-13 23:04:40,867.867 INFO    ] Launching Daemon at Sat Jun 13 23:04:40 IST 2026
[2026-06-13 23:04:40,878.878 INFO    ] ================================================
[2026-06-13 23:04:41,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:04:41
[2026-06-13 23:04:41,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:04:41,704.704 INFO    ] Initializing speech engine...
[2026-06-13 23:04:41,710.710 INFO    ] 2026-06-13 23:04:41
[2026-06-13 23:04:41,921.921 INFO    ] 2026-06-13 23:04:41
[2026-06-13 23:04:41,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:04:42,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:04:42,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:04:42,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:04:42,328.328 INFO    ] time= 13/06/2026 23:04:42
[2026-06-13 23:04:42,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:04:42,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:04:42,438.438 INFO    ] No existing commands found in stream
[2026-06-13 23:04:47,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:47,451.451 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 23:04:49,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:04:49,737.737 INFO    ] Checking for system updates...
[2026-06-13 23:04:49,758.758 INFO    ] 200
[2026-06-13 23:04:49,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:49,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:49,794.794 INFO    ] No update needed
[2026-06-13 23:04:49,795.795 INFO    ] Checking for camera pi updates...
[2026-06-13 23:04:49,816.816 INFO    ] 200
[2026-06-13 23:04:49,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:04:49,843.843 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:04:49,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:04:49,890.890 INFO    ] No camera update needed
[2026-06-13 23:04:49,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:04:49,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:04:49,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:04:49,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:04:51,936.936 INFO    ] ================================================
[2026-06-13 23:04:51,952.952 INFO    ] Launching Daemon at Sat Jun 13 23:04:51 IST 2026
[2026-06-13 23:04:51,962.962 INFO    ] ================================================
[2026-06-13 23:04:52,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:04:52
[2026-06-13 23:04:52,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:04:52,767.767 INFO    ] Initializing speech engine...
[2026-06-13 23:04:52,777.777 INFO    ] 2026-06-13 23:04:52
[2026-06-13 23:04:52,989.989 INFO    ] 2026-06-13 23:04:52
[2026-06-13 23:04:53,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:04:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:04:53,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:04:53,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:04:53,417.417 INFO    ] time= 13/06/2026 23:04:53
[2026-06-13 23:04:53,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:04:53,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:04:53,514.514 INFO    ] No existing commands found in stream
[2026-06-13 23:04:58,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:04:58,529.529 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-13 23:05:01,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:05:01,947.947 INFO    ] Checking for system updates...
[2026-06-13 23:05:02,083.083 INFO    ] 200
[2026-06-13 23:05:02,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:02,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:02,263.263 INFO    ] No update needed
[2026-06-13 23:05:02,267.267 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:02,404.404 INFO    ] 200
[2026-06-13 23:05:02,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:02,490.490 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:02,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:02,522.522 INFO    ] No camera update needed
[2026-06-13 23:05:02,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:02,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:02,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:02,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:04,588.588 INFO    ] ================================================
[2026-06-13 23:05:04,603.603 INFO    ] Launching Daemon at Sat Jun 13 23:05:04 IST 2026
[2026-06-13 23:05:04,614.614 INFO    ] ================================================
[2026-06-13 23:05:05,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:05
[2026-06-13 23:05:05,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:05,601.601 INFO    ] Initializing speech engine...
[2026-06-13 23:05:05,606.606 INFO    ] 2026-06-13 23:05:05
[2026-06-13 23:05:05,817.817 INFO    ] 2026-06-13 23:05:05
[2026-06-13 23:05:05,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:05,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:06,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:06,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:06,235.235 INFO    ] time= 13/06/2026 23:05:06
[2026-06-13 23:05:06,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:06,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:06,342.342 INFO    ] No existing commands found in stream
[2026-06-13 23:05:11,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:05:11,357.357 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 23:05:13,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:05:13,097.097 INFO    ] Checking for system updates...
[2026-06-13 23:05:13,118.118 INFO    ] 200
[2026-06-13 23:05:13,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:13,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:13,153.153 INFO    ] No update needed
[2026-06-13 23:05:13,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:13,175.175 INFO    ] 200
[2026-06-13 23:05:13,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:13,202.202 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:13,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:13,342.342 INFO    ] No camera update needed
[2026-06-13 23:05:13,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:13,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:13,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:13,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:15,393.393 INFO    ] ================================================
[2026-06-13 23:05:15,409.409 INFO    ] Launching Daemon at Sat Jun 13 23:05:15 IST 2026
[2026-06-13 23:05:15,420.420 INFO    ] ================================================
[2026-06-13 23:05:15,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:15
[2026-06-13 23:05:16,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:16,238.238 INFO    ] Initializing speech engine...
[2026-06-13 23:05:16,243.243 INFO    ] 2026-06-13 23:05:16
[2026-06-13 23:05:16,453.453 INFO    ] 2026-06-13 23:05:16
[2026-06-13 23:05:16,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:16,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:16,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:16,863.863 INFO    ] time= 13/06/2026 23:05:16
[2026-06-13 23:05:16,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:16,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:16,974.974 INFO    ] No existing commands found in stream
[2026-06-13 23:05:21,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:05:21,988.988 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-13 23:05:23,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:05:23,201.201 INFO    ] Checking for system updates...
[2026-06-13 23:05:23,222.222 INFO    ] 200
[2026-06-13 23:05:23,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:23,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:05:23,257.257 INFO    ] No update needed
[2026-06-13 23:05:23,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:23,278.278 INFO    ] 200
[2026-06-13 23:05:23,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:23,303.303 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:23,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:05:23,345.345 INFO    ] No camera update needed
[2026-06-13 23:05:23,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:23,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:23,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:23,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:25,394.394 INFO    ] ================================================
[2026-06-13 23:05:25,410.410 INFO    ] Launching Daemon at Sat Jun 13 23:05:25 IST 2026
[2026-06-13 23:05:25,421.421 INFO    ] ================================================
[2026-06-13 23:05:25,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:25
[2026-06-13 23:05:26,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:26,240.240 INFO    ] Initializing speech engine...
[2026-06-13 23:05:26,250.250 INFO    ] 2026-06-13 23:05:26
[2026-06-13 23:05:26,460.460 INFO    ] 2026-06-13 23:05:26
[2026-06-13 23:05:26,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:26,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:26,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:26,876.876 INFO    ] time= 13/06/2026 23:05:26
[2026-06-13 23:05:26,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:26,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:26,981.981 INFO    ] No existing commands found in stream
[2026-06-13 23:05:31,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:05:31,995.995 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-13 23:05:34,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:05:34,172.172 INFO    ] Checking for system updates...
[2026-06-13 23:05:34,209.209 INFO    ] 200
[2026-06-13 23:05:34,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:34,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:05:34,265.265 INFO    ] No update needed
[2026-06-13 23:05:34,266.266 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:34,286.286 INFO    ] 200
[2026-06-13 23:05:34,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:34,311.311 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:34,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:34,350.350 INFO    ] No camera update needed
[2026-06-13 23:05:34,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:34,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:34,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:34,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:36,397.397 INFO    ] ================================================
[2026-06-13 23:05:36,413.413 INFO    ] Launching Daemon at Sat Jun 13 23:05:36 IST 2026
[2026-06-13 23:05:36,424.424 INFO    ] ================================================
[2026-06-13 23:05:36,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:36
[2026-06-13 23:05:37,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:37,242.242 INFO    ] Initializing speech engine...
[2026-06-13 23:05:37,247.247 INFO    ] 2026-06-13 23:05:37
[2026-06-13 23:05:37,451.451 INFO    ] 2026-06-13 23:05:37
[2026-06-13 23:05:37,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:37,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:37,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:37,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:37,855.855 INFO    ] time= 13/06/2026 23:05:37
[2026-06-13 23:05:37,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:37,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:37,970.970 INFO    ] No existing commands found in stream
[2026-06-13 23:05:42,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:05:42,988.988 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-13 23:05:43,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:05:43,878.878 INFO    ] Checking for system updates...
[2026-06-13 23:05:43,901.901 INFO    ] 200
[2026-06-13 23:05:43,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:43,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:43,939.939 INFO    ] No update needed
[2026-06-13 23:05:43,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:43,963.963 INFO    ] 200
[2026-06-13 23:05:43,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:43,988.988 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:44,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:44,030.030 INFO    ] No camera update needed
[2026-06-13 23:05:44,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:44,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:44,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:44,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:46,081.081 INFO    ] ================================================
[2026-06-13 23:05:46,096.096 INFO    ] Launching Daemon at Sat Jun 13 23:05:46 IST 2026
[2026-06-13 23:05:46,107.107 INFO    ] ================================================
[2026-06-13 23:05:46,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:46
[2026-06-13 23:05:47,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:47,328.328 INFO    ] Initializing speech engine...
[2026-06-13 23:05:47,338.338 INFO    ] 2026-06-13 23:05:47
[2026-06-13 23:05:47,604.604 INFO    ] 2026-06-13 23:05:47
[2026-06-13 23:05:47,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:47,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:47,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:48,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:48,094.094 INFO    ] time= 13/06/2026 23:05:48
[2026-06-13 23:05:48,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:48,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:48,286.286 INFO    ] No existing commands found in stream
[2026-06-13 23:05:53,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:05:53,317.317 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-13 23:05:55,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:05:55,973.973 INFO    ] Checking for system updates...
[2026-06-13 23:05:55,995.995 INFO    ] 200
[2026-06-13 23:05:55,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:56,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:56,029.029 INFO    ] No update needed
[2026-06-13 23:05:56,030.030 INFO    ] Checking for camera pi updates...
[2026-06-13 23:05:56,049.049 INFO    ] 200
[2026-06-13 23:05:56,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:05:56,076.076 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:05:56,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:05:56,113.113 INFO    ] No camera update needed
[2026-06-13 23:05:56,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:05:56,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:05:56,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:05:56,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:05:58,161.161 INFO    ] ================================================
[2026-06-13 23:05:58,178.178 INFO    ] Launching Daemon at Sat Jun 13 23:05:58 IST 2026
[2026-06-13 23:05:58,189.189 INFO    ] ================================================
[2026-06-13 23:05:58,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:05:58
[2026-06-13 23:05:58,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:05:59,021.021 INFO    ] Initializing speech engine...
[2026-06-13 23:05:59,026.026 INFO    ] 2026-06-13 23:05:59
[2026-06-13 23:05:59,235.235 INFO    ] 2026-06-13 23:05:59
[2026-06-13 23:05:59,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:05:59,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:05:59,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:05:59,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:05:59,646.646 INFO    ] time= 13/06/2026 23:05:59
[2026-06-13 23:05:59,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:05:59,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:05:59,759.759 INFO    ] No existing commands found in stream
[2026-06-13 23:06:04,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:04,777.777 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 23:06:06,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:06:06,788.788 INFO    ] Checking for system updates...
[2026-06-13 23:06:06,810.810 INFO    ] 200
[2026-06-13 23:06:06,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:06,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:06:06,846.846 INFO    ] No update needed
[2026-06-13 23:06:06,847.847 INFO    ] Checking for camera pi updates...
[2026-06-13 23:06:06,868.868 INFO    ] 200
[2026-06-13 23:06:06,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:06,894.894 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:06:06,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:06,937.937 INFO    ] No camera update needed
[2026-06-13 23:06:06,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:06:06,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:06:06,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:06:06,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:06:08,982.982 INFO    ] ================================================
[2026-06-13 23:06:09,998.998 INFO    ] Launching Daemon at Sat Jun 13 23:06:08 IST 2026
[2026-06-13 23:06:09,009.009 INFO    ] ================================================
[2026-06-13 23:06:09,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:06:09
[2026-06-13 23:06:09,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:06:09,818.818 INFO    ] Initializing speech engine...
[2026-06-13 23:06:09,832.832 INFO    ] 2026-06-13 23:06:09
[2026-06-13 23:06:10,036.036 INFO    ] 2026-06-13 23:06:10
[2026-06-13 23:06:10,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:06:10,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:06:10,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:06:10,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:06:10,445.445 INFO    ] time= 13/06/2026 23:06:10
[2026-06-13 23:06:10,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:06:10,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:06:10,549.549 INFO    ] No existing commands found in stream
[2026-06-13 23:06:15,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:15,562.562 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 23:06:17,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:06:17,569.569 INFO    ] Checking for system updates...
[2026-06-13 23:06:17,589.589 INFO    ] 200
[2026-06-13 23:06:17,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:17,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:06:17,624.624 INFO    ] No update needed
[2026-06-13 23:06:17,626.626 INFO    ] Checking for camera pi updates...
[2026-06-13 23:06:17,646.646 INFO    ] 200
[2026-06-13 23:06:17,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:17,671.671 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:06:17,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:17,712.712 INFO    ] No camera update needed
[2026-06-13 23:06:17,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:06:17,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:06:17,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:06:17,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:06:19,758.758 INFO    ] ================================================
[2026-06-13 23:06:19,773.773 INFO    ] Launching Daemon at Sat Jun 13 23:06:19 IST 2026
[2026-06-13 23:06:19,784.784 INFO    ] ================================================
[2026-06-13 23:06:20,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:06:20
[2026-06-13 23:06:20,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:06:20,622.622 INFO    ] Initializing speech engine...
[2026-06-13 23:06:20,627.627 INFO    ] 2026-06-13 23:06:20
[2026-06-13 23:06:20,832.832 INFO    ] 2026-06-13 23:06:20
[2026-06-13 23:06:20,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:06:21,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:06:21,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:06:21,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:06:21,235.235 INFO    ] time= 13/06/2026 23:06:21
[2026-06-13 23:06:21,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:06:21,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:06:21,346.346 INFO    ] No existing commands found in stream
[2026-06-13 23:06:26,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:26,357.357 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 23:06:29,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:06:29,768.768 INFO    ] Checking for system updates...
[2026-06-13 23:06:29,789.789 INFO    ] 200
[2026-06-13 23:06:29,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:29,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:29,822.822 INFO    ] No update needed
[2026-06-13 23:06:29,823.823 INFO    ] Checking for camera pi updates...
[2026-06-13 23:06:29,842.842 INFO    ] 200
[2026-06-13 23:06:29,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:29,871.871 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:06:29,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:29,911.911 INFO    ] No camera update needed
[2026-06-13 23:06:29,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:06:29,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:06:29,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:06:29,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:06:31,960.960 INFO    ] ================================================
[2026-06-13 23:06:31,978.978 INFO    ] Launching Daemon at Sat Jun 13 23:06:31 IST 2026
[2026-06-13 23:06:31,991.991 INFO    ] ================================================
[2026-06-13 23:06:32,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:06:32
[2026-06-13 23:06:32,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:06:32,880.880 INFO    ] Initializing speech engine...
[2026-06-13 23:06:32,887.887 INFO    ] 2026-06-13 23:06:32
[2026-06-13 23:06:33,096.096 INFO    ] 2026-06-13 23:06:33
[2026-06-13 23:06:33,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:06:33,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:06:33,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:06:33,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:06:33,522.522 INFO    ] time= 13/06/2026 23:06:33
[2026-06-13 23:06:33,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:06:33,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:06:33,620.620 INFO    ] No existing commands found in stream
[2026-06-13 23:06:38,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:38,638.638 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-13 23:06:39,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:06:39,251.251 INFO    ] Checking for system updates...
[2026-06-13 23:06:39,272.272 INFO    ] 200
[2026-06-13 23:06:39,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:39,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:39,305.305 INFO    ] No update needed
[2026-06-13 23:06:39,307.307 INFO    ] Checking for camera pi updates...
[2026-06-13 23:06:39,328.328 INFO    ] 200
[2026-06-13 23:06:39,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:39,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:06:39,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:06:39,401.401 INFO    ] No camera update needed
[2026-06-13 23:06:39,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:06:39,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:06:39,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:06:39,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:06:41,451.451 INFO    ] ================================================
[2026-06-13 23:06:41,466.466 INFO    ] Launching Daemon at Sat Jun 13 23:06:41 IST 2026
[2026-06-13 23:06:41,477.477 INFO    ] ================================================
[2026-06-13 23:06:41,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:06:41
[2026-06-13 23:06:42,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:06:42,335.335 INFO    ] Initializing speech engine...
[2026-06-13 23:06:42,341.341 INFO    ] 2026-06-13 23:06:42
[2026-06-13 23:06:42,550.550 INFO    ] 2026-06-13 23:06:42
[2026-06-13 23:06:42,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:06:42,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:06:42,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:06:42,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:06:42,963.963 INFO    ] time= 13/06/2026 23:06:42
[2026-06-13 23:06:43,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:06:43,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:06:43,077.077 INFO    ] No existing commands found in stream
[2026-06-13 23:06:48,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:48,090.090 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-13 23:06:49,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:06:49,827.827 INFO    ] Checking for system updates...
[2026-06-13 23:06:49,847.847 INFO    ] 200
[2026-06-13 23:06:49,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:49,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:06:49,881.881 INFO    ] No update needed
[2026-06-13 23:06:49,882.882 INFO    ] Checking for camera pi updates...
[2026-06-13 23:06:49,902.902 INFO    ] 200
[2026-06-13 23:06:49,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:06:49,928.928 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:06:49,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:06:49,968.968 INFO    ] No camera update needed
[2026-06-13 23:06:49,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:06:49,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:06:49,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:06:49,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:06:52,016.016 INFO    ] ================================================
[2026-06-13 23:06:52,032.032 INFO    ] Launching Daemon at Sat Jun 13 23:06:52 IST 2026
[2026-06-13 23:06:52,043.043 INFO    ] ================================================
[2026-06-13 23:06:52,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:06:52
[2026-06-13 23:06:52,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:06:52,966.966 INFO    ] Initializing speech engine...
[2026-06-13 23:06:52,973.973 INFO    ] 2026-06-13 23:06:52
[2026-06-13 23:06:53,208.208 INFO    ] 2026-06-13 23:06:53
[2026-06-13 23:06:53,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:06:53,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:06:53,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:06:53,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:06:53,659.659 INFO    ] time= 13/06/2026 23:06:53
[2026-06-13 23:06:53,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:06:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:06:53,766.766 INFO    ] No existing commands found in stream
[2026-06-13 23:06:58,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:06:58,780.780 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 23:07:02,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:07:02,946.946 INFO    ] Checking for system updates...
[2026-06-13 23:07:02,968.968 INFO    ] 200
[2026-06-13 23:07:02,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:03,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:03,009.009 INFO    ] No update needed
[2026-06-13 23:07:03,010.010 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:03,032.032 INFO    ] 200
[2026-06-13 23:07:03,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:03,058.058 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:03,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:03,101.101 INFO    ] No camera update needed
[2026-06-13 23:07:03,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:03,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:03,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:03,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:07:05,153.153 INFO    ] ================================================
[2026-06-13 23:07:05,169.169 INFO    ] Launching Daemon at Sat Jun 13 23:07:05 IST 2026
[2026-06-13 23:07:05,180.180 INFO    ] ================================================
[2026-06-13 23:07:05,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:07:05
[2026-06-13 23:07:05,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:07:06,009.009 INFO    ] Initializing speech engine...
[2026-06-13 23:07:06,014.014 INFO    ] 2026-06-13 23:07:06
[2026-06-13 23:07:06,245.245 INFO    ] 2026-06-13 23:07:06
[2026-06-13 23:07:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:07:06,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:07:06,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:07:06,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:07:06,615.615 INFO    ] time= 13/06/2026 23:07:06
[2026-06-13 23:07:06,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:07:06,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:07:06,793.793 INFO    ] No existing commands found in stream
[2026-06-13 23:07:11,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:07:11,807.807 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 23:07:14,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:07:14,179.179 INFO    ] Checking for system updates...
[2026-06-13 23:07:14,199.199 INFO    ] 200
[2026-06-13 23:07:14,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:14,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:14,232.232 INFO    ] No update needed
[2026-06-13 23:07:14,234.234 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:14,254.254 INFO    ] 200
[2026-06-13 23:07:14,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:14,280.280 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:14,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:14,327.327 INFO    ] No camera update needed
[2026-06-13 23:07:14,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:14,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:14,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:14,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:07:16,375.375 INFO    ] ================================================
[2026-06-13 23:07:16,391.391 INFO    ] Launching Daemon at Sat Jun 13 23:07:16 IST 2026
[2026-06-13 23:07:16,403.403 INFO    ] ================================================
[2026-06-13 23:07:16,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:07:16
[2026-06-13 23:07:17,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:07:17,226.226 INFO    ] Initializing speech engine...
[2026-06-13 23:07:17,230.230 INFO    ] 2026-06-13 23:07:17
[2026-06-13 23:07:17,431.431 INFO    ] 2026-06-13 23:07:17
[2026-06-13 23:07:17,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:07:17,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:07:17,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:07:17,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:07:17,845.845 INFO    ] time= 13/06/2026 23:07:17
[2026-06-13 23:07:17,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:07:17,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:07:17,952.952 INFO    ] No existing commands found in stream
[2026-06-13 23:07:22,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:07:22,963.963 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 23:07:27,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:07:27,308.308 INFO    ] Checking for system updates...
[2026-06-13 23:07:27,329.329 INFO    ] 200
[2026-06-13 23:07:27,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:27,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:27,365.365 INFO    ] No update needed
[2026-06-13 23:07:27,366.366 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:27,387.387 INFO    ] 200
[2026-06-13 23:07:27,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:27,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:27,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:27,568.568 INFO    ] No camera update needed
[2026-06-13 23:07:27,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:27,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:07:29,624.624 INFO    ] ================================================
[2026-06-13 23:07:29,639.639 INFO    ] Launching Daemon at Sat Jun 13 23:07:29 IST 2026
[2026-06-13 23:07:29,650.650 INFO    ] ================================================
[2026-06-13 23:07:30,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:07:30
[2026-06-13 23:07:30,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:07:30,794.794 INFO    ] Initializing speech engine...
[2026-06-13 23:07:30,805.805 INFO    ] 2026-06-13 23:07:30
[2026-06-13 23:07:31,015.015 INFO    ] 2026-06-13 23:07:30
[2026-06-13 23:07:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:07:31,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:07:31,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:07:31,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:07:31,429.429 INFO    ] time= 13/06/2026 23:07:31
[2026-06-13 23:07:31,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:07:31,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:07:31,543.543 INFO    ] No existing commands found in stream
[2026-06-13 23:07:36,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:07:36,555.555 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 23:07:37,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:07:37,419.419 INFO    ] Checking for system updates...
[2026-06-13 23:07:37,440.440 INFO    ] 200
[2026-06-13 23:07:37,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:37,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:37,480.480 INFO    ] No update needed
[2026-06-13 23:07:37,481.481 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:37,507.507 INFO    ] 200
[2026-06-13 23:07:37,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:37,532.532 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:37,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:37,570.570 INFO    ] No camera update needed
[2026-06-13 23:07:37,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:37,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:37,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:37,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:07:39,619.619 INFO    ] ================================================
[2026-06-13 23:07:39,636.636 INFO    ] Launching Daemon at Sat Jun 13 23:07:39 IST 2026
[2026-06-13 23:07:39,647.647 INFO    ] ================================================
[2026-06-13 23:07:39,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:07:39
[2026-06-13 23:07:40,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:07:40,428.428 INFO    ] Initializing speech engine...
[2026-06-13 23:07:40,438.438 INFO    ] 2026-06-13 23:07:40
[2026-06-13 23:07:40,640.640 INFO    ] 2026-06-13 23:07:40
[2026-06-13 23:07:40,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:07:40,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:07:40,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:07:40,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:07:41,029.029 INFO    ] time= 13/06/2026 23:07:40
[2026-06-13 23:07:41,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:07:41,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:07:41,154.154 INFO    ] No existing commands found in stream
[2026-06-13 23:07:46,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:07:46,163.163 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 23:07:49,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:07:49,368.368 INFO    ] Checking for system updates...
[2026-06-13 23:07:49,389.389 INFO    ] 200
[2026-06-13 23:07:49,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:49,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:07:49,424.424 INFO    ] No update needed
[2026-06-13 23:07:49,425.425 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:49,446.446 INFO    ] 200
[2026-06-13 23:07:49,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:49,471.471 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:49,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:07:49,511.511 INFO    ] No camera update needed
[2026-06-13 23:07:49,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:49,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:49,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:49,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:07:51,559.559 INFO    ] ================================================
[2026-06-13 23:07:51,575.575 INFO    ] Launching Daemon at Sat Jun 13 23:07:51 IST 2026
[2026-06-13 23:07:51,586.586 INFO    ] ================================================
[2026-06-13 23:07:51,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:07:51
[2026-06-13 23:07:52,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:07:52,394.394 INFO    ] Initializing speech engine...
[2026-06-13 23:07:52,398.398 INFO    ] 2026-06-13 23:07:52
[2026-06-13 23:07:52,596.596 INFO    ] 2026-06-13 23:07:52
[2026-06-13 23:07:52,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:07:52,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:07:52,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:07:53,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:07:53,034.034 INFO    ] time= 13/06/2026 23:07:53
[2026-06-13 23:07:53,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:07:53,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:07:53,187.187 INFO    ] No existing commands found in stream
[2026-06-13 23:07:58,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:07:58,200.200 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-13 23:07:59,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:07:59,802.802 INFO    ] Checking for system updates...
[2026-06-13 23:07:59,824.824 INFO    ] 200
[2026-06-13 23:07:59,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:59,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:07:59,860.860 INFO    ] No update needed
[2026-06-13 23:07:59,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 23:07:59,881.881 INFO    ] 200
[2026-06-13 23:07:59,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:07:59,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:07:59,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:07:59,954.954 INFO    ] No camera update needed
[2026-06-13 23:07:59,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:07:59,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:07:59,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:07:59,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:02,003.003 INFO    ] ================================================
[2026-06-13 23:08:02,021.021 INFO    ] Launching Daemon at Sat Jun 13 23:08:02 IST 2026
[2026-06-13 23:08:02,033.033 INFO    ] ================================================
[2026-06-13 23:08:02,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:02
[2026-06-13 23:08:03,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:03,569.569 INFO    ] Initializing speech engine...
[2026-06-13 23:08:03,578.578 INFO    ] 2026-06-13 23:08:03
[2026-06-13 23:08:03,828.828 INFO    ] 2026-06-13 23:08:03
[2026-06-13 23:08:03,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:04,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:04,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:04,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:04,202.202 INFO    ] time= 13/06/2026 23:08:04
[2026-06-13 23:08:04,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:04,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:04,283.283 INFO    ] No existing commands found in stream
[2026-06-13 23:08:09,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:08:09,298.298 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-13 23:08:13,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:08:13,502.502 INFO    ] Checking for system updates...
[2026-06-13 23:08:13,523.523 INFO    ] 200
[2026-06-13 23:08:13,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:13,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:13,557.557 INFO    ] No update needed
[2026-06-13 23:08:13,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 23:08:13,578.578 INFO    ] 200
[2026-06-13 23:08:13,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:13,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:08:13,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:13,644.644 INFO    ] No camera update needed
[2026-06-13 23:08:13,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:08:13,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:08:13,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:08:13,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:15,693.693 INFO    ] ================================================
[2026-06-13 23:08:15,708.708 INFO    ] Launching Daemon at Sat Jun 13 23:08:15 IST 2026
[2026-06-13 23:08:15,720.720 INFO    ] ================================================
[2026-06-13 23:08:16,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:16
[2026-06-13 23:08:16,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:16,542.542 INFO    ] Initializing speech engine...
[2026-06-13 23:08:16,546.546 INFO    ] 2026-06-13 23:08:16
[2026-06-13 23:08:16,750.750 INFO    ] 2026-06-13 23:08:16
[2026-06-13 23:08:16,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:16,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:16,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:17,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:17,168.168 INFO    ] time= 13/06/2026 23:08:17
[2026-06-13 23:08:17,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:17,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:17,263.263 INFO    ] No existing commands found in stream
[2026-06-13 23:08:22,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:08:22,276.276 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-13 23:08:23,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:08:23,199.199 INFO    ] Checking for system updates...
[2026-06-13 23:08:23,221.221 INFO    ] 200
[2026-06-13 23:08:23,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:23,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:23,256.256 INFO    ] No update needed
[2026-06-13 23:08:23,257.257 INFO    ] Checking for camera pi updates...
[2026-06-13 23:08:23,276.276 INFO    ] 200
[2026-06-13 23:08:23,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:23,302.302 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:08:23,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:23,342.342 INFO    ] No camera update needed
[2026-06-13 23:08:23,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:08:23,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:08:23,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:08:23,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:25,390.390 INFO    ] ================================================
[2026-06-13 23:08:25,405.405 INFO    ] Launching Daemon at Sat Jun 13 23:08:25 IST 2026
[2026-06-13 23:08:25,416.416 INFO    ] ================================================
[2026-06-13 23:08:25,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:25
[2026-06-13 23:08:26,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:26,222.222 INFO    ] Initializing speech engine...
[2026-06-13 23:08:26,227.227 INFO    ] 2026-06-13 23:08:26
[2026-06-13 23:08:26,453.453 INFO    ] 2026-06-13 23:08:26
[2026-06-13 23:08:26,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:26,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:26,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:26,823.823 INFO    ] time= 13/06/2026 23:08:26
[2026-06-13 23:08:26,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:26,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:27,002.002 INFO    ] No existing commands found in stream
[2026-06-13 23:08:32,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:08:32,011.011 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 23:08:34,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:08:34,259.259 INFO    ] Checking for system updates...
[2026-06-13 23:08:34,281.281 INFO    ] 200
[2026-06-13 23:08:34,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:34,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:08:34,313.313 INFO    ] No update needed
[2026-06-13 23:08:34,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 23:08:34,337.337 INFO    ] 200
[2026-06-13 23:08:34,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:34,362.362 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:08:34,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:08:34,401.401 INFO    ] No camera update needed
[2026-06-13 23:08:34,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:08:34,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:08:34,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:08:34,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:36,447.447 INFO    ] ================================================
[2026-06-13 23:08:36,462.462 INFO    ] Launching Daemon at Sat Jun 13 23:08:36 IST 2026
[2026-06-13 23:08:36,473.473 INFO    ] ================================================
[2026-06-13 23:08:36,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:36
[2026-06-13 23:08:37,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:37,280.280 INFO    ] Initializing speech engine...
[2026-06-13 23:08:37,285.285 INFO    ] 2026-06-13 23:08:37
[2026-06-13 23:08:37,510.510 INFO    ] 2026-06-13 23:08:37
[2026-06-13 23:08:37,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:37,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:37,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:37,824.824 INFO    ] time= 13/06/2026 23:08:37
[2026-06-13 23:08:37,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:37,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:37,871.871 INFO    ] No existing commands found in stream
[2026-06-13 23:08:42,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:08:42,882.882 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-13 23:08:44,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:08:44,256.256 INFO    ] Checking for system updates...
[2026-06-13 23:08:44,277.277 INFO    ] 200
[2026-06-13 23:08:44,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:44,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:44,310.310 INFO    ] No update needed
[2026-06-13 23:08:44,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 23:08:44,330.330 INFO    ] 200
[2026-06-13 23:08:44,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:44,357.357 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:08:44,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:08:44,394.394 INFO    ] No camera update needed
[2026-06-13 23:08:44,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:08:44,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:08:44,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:08:44,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:46,444.444 INFO    ] ================================================
[2026-06-13 23:08:46,460.460 INFO    ] Launching Daemon at Sat Jun 13 23:08:46 IST 2026
[2026-06-13 23:08:46,470.470 INFO    ] ================================================
[2026-06-13 23:08:47,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:47
[2026-06-13 23:08:47,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:47,953.953 INFO    ] Initializing speech engine...
[2026-06-13 23:08:47,973.973 INFO    ] 2026-06-13 23:08:47
[2026-06-13 23:08:48,241.241 INFO    ] 2026-06-13 23:08:48
[2026-06-13 23:08:48,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:48,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:48,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:48,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:48,610.610 INFO    ] time= 13/06/2026 23:08:48
[2026-06-13 23:08:48,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:48,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:48,732.732 INFO    ] No existing commands found in stream
[2026-06-13 23:08:53,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:08:53,747.747 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 23:08:56,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:08:56,028.028 INFO    ] Checking for system updates...
[2026-06-13 23:08:56,050.050 INFO    ] 200
[2026-06-13 23:08:56,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:56,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:08:56,083.083 INFO    ] No update needed
[2026-06-13 23:08:56,085.085 INFO    ] Checking for camera pi updates...
[2026-06-13 23:08:56,105.105 INFO    ] 200
[2026-06-13 23:08:56,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:08:56,130.130 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:08:56,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:08:56,166.166 INFO    ] No camera update needed
[2026-06-13 23:08:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:08:56,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:08:56,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:08:56,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:08:58,214.214 INFO    ] ================================================
[2026-06-13 23:08:58,230.230 INFO    ] Launching Daemon at Sat Jun 13 23:08:58 IST 2026
[2026-06-13 23:08:58,240.240 INFO    ] ================================================
[2026-06-13 23:08:58,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:08:58
[2026-06-13 23:08:58,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:08:59,050.050 INFO    ] Initializing speech engine...
[2026-06-13 23:08:59,060.060 INFO    ] 2026-06-13 23:08:59
[2026-06-13 23:08:59,267.267 INFO    ] 2026-06-13 23:08:59
[2026-06-13 23:08:59,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:08:59,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:08:59,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:08:59,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:08:59,673.673 INFO    ] time= 13/06/2026 23:08:59
[2026-06-13 23:08:59,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:08:59,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:08:59,785.785 INFO    ] No existing commands found in stream
[2026-06-13 23:09:04,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:09:04,802.802 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 23:09:05,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:09:05,503.503 INFO    ] Checking for system updates...
[2026-06-13 23:09:05,524.524 INFO    ] 200
[2026-06-13 23:09:05,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:05,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:05,557.557 INFO    ] No update needed
[2026-06-13 23:09:05,559.559 INFO    ] Checking for camera pi updates...
[2026-06-13 23:09:05,579.579 INFO    ] 200
[2026-06-13 23:09:05,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:05,603.603 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:09:05,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:05,651.651 INFO    ] No camera update needed
[2026-06-13 23:09:05,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:09:05,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:09:05,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:09:05,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:09:07,699.699 INFO    ] ================================================
[2026-06-13 23:09:07,714.714 INFO    ] Launching Daemon at Sat Jun 13 23:09:07 IST 2026
[2026-06-13 23:09:07,725.725 INFO    ] ================================================
[2026-06-13 23:09:08,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:09:08
[2026-06-13 23:09:08,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:09:08,771.771 INFO    ] Initializing speech engine...
[2026-06-13 23:09:08,780.780 INFO    ] 2026-06-13 23:09:08
[2026-06-13 23:09:09,057.057 INFO    ] 2026-06-13 23:09:09
[2026-06-13 23:09:09,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:09:09,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:09:09,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:09:09,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:09:09,515.515 INFO    ] time= 13/06/2026 23:09:09
[2026-06-13 23:09:09,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:09:09,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:09:09,681.681 INFO    ] No existing commands found in stream
[2026-06-13 23:09:14,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:09:14,697.697 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-13 23:09:18,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:09:18,160.160 INFO    ] Checking for system updates...
[2026-06-13 23:09:18,182.182 INFO    ] 200
[2026-06-13 23:09:18,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:18,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:18,218.218 INFO    ] No update needed
[2026-06-13 23:09:18,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 23:09:18,241.241 INFO    ] 200
[2026-06-13 23:09:18,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:18,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:09:18,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:18,308.308 INFO    ] No camera update needed
[2026-06-13 23:09:18,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:09:18,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:09:18,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:09:18,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:09:20,356.356 INFO    ] ================================================
[2026-06-13 23:09:20,371.371 INFO    ] Launching Daemon at Sat Jun 13 23:09:20 IST 2026
[2026-06-13 23:09:20,382.382 INFO    ] ================================================
[2026-06-13 23:09:20,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:09:20
[2026-06-13 23:09:21,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:09:21,228.228 INFO    ] Initializing speech engine...
[2026-06-13 23:09:21,237.237 INFO    ] 2026-06-13 23:09:21
[2026-06-13 23:09:21,447.447 INFO    ] 2026-06-13 23:09:21
[2026-06-13 23:09:21,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:09:21,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:09:21,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:09:21,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:09:21,849.849 INFO    ] time= 13/06/2026 23:09:21
[2026-06-13 23:09:21,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:09:21,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:09:21,967.967 INFO    ] No existing commands found in stream
[2026-06-13 23:09:26,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:09:26,980.980 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-13 23:09:28,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:09:28,178.178 INFO    ] Checking for system updates...
[2026-06-13 23:09:28,200.200 INFO    ] 200
[2026-06-13 23:09:28,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:28,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:09:28,234.234 INFO    ] No update needed
[2026-06-13 23:09:28,235.235 INFO    ] Checking for camera pi updates...
[2026-06-13 23:09:28,256.256 INFO    ] 200
[2026-06-13 23:09:28,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:28,282.282 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:09:28,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:09:28,329.329 INFO    ] No camera update needed
[2026-06-13 23:09:28,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:09:28,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:09:28,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:09:28,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:09:30,377.377 INFO    ] ================================================
[2026-06-13 23:09:30,393.393 INFO    ] Launching Daemon at Sat Jun 13 23:09:30 IST 2026
[2026-06-13 23:09:30,403.403 INFO    ] ================================================
[2026-06-13 23:09:30,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:09:30
[2026-06-13 23:09:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:09:31,281.281 INFO    ] Initializing speech engine...
[2026-06-13 23:09:31,291.291 INFO    ] 2026-06-13 23:09:31
[2026-06-13 23:09:31,580.580 INFO    ] 2026-06-13 23:09:31
[2026-06-13 23:09:31,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:09:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:09:31,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:09:31,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:09:31,981.981 INFO    ] time= 13/06/2026 23:09:31
[2026-06-13 23:09:31,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:09:32,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:09:32,070.070 INFO    ] No existing commands found in stream
[2026-06-13 23:09:37,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:09:37,083.083 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 23:09:40,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:09:40,717.717 INFO    ] Checking for system updates...
[2026-06-13 23:09:40,739.739 INFO    ] 200
[2026-06-13 23:09:40,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:40,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:09:40,776.776 INFO    ] No update needed
[2026-06-13 23:09:40,778.778 INFO    ] Checking for camera pi updates...
[2026-06-13 23:09:40,799.799 INFO    ] 200
[2026-06-13 23:09:40,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:40,824.824 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:09:40,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:09:40,865.865 INFO    ] No camera update needed
[2026-06-13 23:09:40,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:09:40,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:09:40,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:09:40,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:09:42,914.914 INFO    ] ================================================
[2026-06-13 23:09:42,929.929 INFO    ] Launching Daemon at Sat Jun 13 23:09:42 IST 2026
[2026-06-13 23:09:42,939.939 INFO    ] ================================================
[2026-06-13 23:09:43,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:09:43
[2026-06-13 23:09:43,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:09:43,736.736 INFO    ] Initializing speech engine...
[2026-06-13 23:09:43,746.746 INFO    ] 2026-06-13 23:09:43
[2026-06-13 23:09:43,951.951 INFO    ] 2026-06-13 23:09:43
[2026-06-13 23:09:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:09:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:09:44,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:09:44,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:09:44,376.376 INFO    ] time= 13/06/2026 23:09:44
[2026-06-13 23:09:44,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:09:44,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:09:44,475.475 INFO    ] No existing commands found in stream
[2026-06-13 23:09:49,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:09:49,486.486 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 23:09:53,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:09:53,753.753 INFO    ] Checking for system updates...
[2026-06-13 23:09:53,774.774 INFO    ] 200
[2026-06-13 23:09:53,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:53,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:53,810.810 INFO    ] No update needed
[2026-06-13 23:09:53,811.811 INFO    ] Checking for camera pi updates...
[2026-06-13 23:09:53,832.832 INFO    ] 200
[2026-06-13 23:09:53,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:09:53,859.859 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:09:53,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:09:53,904.904 INFO    ] No camera update needed
[2026-06-13 23:09:53,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:09:53,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:09:53,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:09:53,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:09:55,954.954 INFO    ] ================================================
[2026-06-13 23:09:55,969.969 INFO    ] Launching Daemon at Sat Jun 13 23:09:55 IST 2026
[2026-06-13 23:09:55,980.980 INFO    ] ================================================
[2026-06-13 23:09:56,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:09:56
[2026-06-13 23:09:56,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:09:56,796.796 INFO    ] Initializing speech engine...
[2026-06-13 23:09:56,802.802 INFO    ] 2026-06-13 23:09:56
[2026-06-13 23:09:57,006.006 INFO    ] 2026-06-13 23:09:56
[2026-06-13 23:09:57,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:09:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:09:57,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:09:57,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:09:57,416.416 INFO    ] time= 13/06/2026 23:09:57
[2026-06-13 23:09:57,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:09:57,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:09:57,529.529 INFO    ] No existing commands found in stream
[2026-06-13 23:10:02,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:10:02,539.539 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 23:10:08,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:10:08,759.759 INFO    ] Checking for system updates...
[2026-06-13 23:10:08,797.797 INFO    ] 200
[2026-06-13 23:10:08,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:08,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:08,856.856 INFO    ] No update needed
[2026-06-13 23:10:08,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 23:10:08,877.877 INFO    ] 200
[2026-06-13 23:10:08,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:08,905.905 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:10:08,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:10:08,947.947 INFO    ] No camera update needed
[2026-06-13 23:10:08,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:10:08,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:10:08,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:10:08,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:10:11,997.997 INFO    ] ================================================
[2026-06-13 23:10:11,013.013 INFO    ] Launching Daemon at Sat Jun 13 23:10:11 IST 2026
[2026-06-13 23:10:11,024.024 INFO    ] ================================================
[2026-06-13 23:10:11,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:10:11
[2026-06-13 23:10:11,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:10:11,868.868 INFO    ] Initializing speech engine...
[2026-06-13 23:10:11,873.873 INFO    ] 2026-06-13 23:10:11
[2026-06-13 23:10:12,082.082 INFO    ] 2026-06-13 23:10:12
[2026-06-13 23:10:12,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:10:12,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:10:12,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:10:12,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:10:12,500.500 INFO    ] time= 13/06/2026 23:10:12
[2026-06-13 23:10:12,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:10:12,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:10:12,601.601 INFO    ] No existing commands found in stream
[2026-06-13 23:10:17,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:10:17,619.619 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 23:10:20,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:10:20,853.853 INFO    ] Checking for system updates...
[2026-06-13 23:10:20,876.876 INFO    ] 200
[2026-06-13 23:10:20,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:20,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:10:20,911.911 INFO    ] No update needed
[2026-06-13 23:10:20,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 23:10:20,933.933 INFO    ] 200
[2026-06-13 23:10:20,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:20,963.963 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:10:21,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:21,006.006 INFO    ] No camera update needed
[2026-06-13 23:10:21,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:10:21,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:10:21,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:10:21,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:10:23,054.054 INFO    ] ================================================
[2026-06-13 23:10:23,071.071 INFO    ] Launching Daemon at Sat Jun 13 23:10:23 IST 2026
[2026-06-13 23:10:23,081.081 INFO    ] ================================================
[2026-06-13 23:10:23,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:10:23
[2026-06-13 23:10:23,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:10:23,873.873 INFO    ] Initializing speech engine...
[2026-06-13 23:10:23,886.886 INFO    ] 2026-06-13 23:10:23
[2026-06-13 23:10:24,107.107 INFO    ] 2026-06-13 23:10:24
[2026-06-13 23:10:24,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:10:24,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:10:24,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:10:24,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:10:24,528.528 INFO    ] time= 13/06/2026 23:10:24
[2026-06-13 23:10:24,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:10:24,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:10:24,673.673 INFO    ] No existing commands found in stream
[2026-06-13 23:10:29,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:10:29,686.686 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-13 23:10:30,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:10:30,340.340 INFO    ] Checking for system updates...
[2026-06-13 23:10:30,362.362 INFO    ] 200
[2026-06-13 23:10:30,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:30,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:10:30,395.395 INFO    ] No update needed
[2026-06-13 23:10:30,397.397 INFO    ] Checking for camera pi updates...
[2026-06-13 23:10:30,420.420 INFO    ] 200
[2026-06-13 23:10:30,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:30,445.445 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:10:30,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:10:30,483.483 INFO    ] No camera update needed
[2026-06-13 23:10:30,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:10:30,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:10:30,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:10:30,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:10:32,536.536 INFO    ] ================================================
[2026-06-13 23:10:32,552.552 INFO    ] Launching Daemon at Sat Jun 13 23:10:32 IST 2026
[2026-06-13 23:10:32,564.564 INFO    ] ================================================
[2026-06-13 23:10:32,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:10:32
[2026-06-13 23:10:33,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:10:33,464.464 INFO    ] Initializing speech engine...
[2026-06-13 23:10:33,468.468 INFO    ] 2026-06-13 23:10:33
[2026-06-13 23:10:33,680.680 INFO    ] 2026-06-13 23:10:33
[2026-06-13 23:10:33,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:10:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:10:33,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:10:34,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:10:34,108.108 INFO    ] time= 13/06/2026 23:10:34
[2026-06-13 23:10:34,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:10:34,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:10:34,204.204 INFO    ] No existing commands found in stream
[2026-06-13 23:10:39,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:10:39,217.217 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-13 23:10:43,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:10:43,098.098 INFO    ] Checking for system updates...
[2026-06-13 23:10:43,120.120 INFO    ] 200
[2026-06-13 23:10:43,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:43,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:43,154.154 INFO    ] No update needed
[2026-06-13 23:10:43,155.155 INFO    ] Checking for camera pi updates...
[2026-06-13 23:10:43,175.175 INFO    ] 200
[2026-06-13 23:10:43,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:43,201.201 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:10:43,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:43,243.243 INFO    ] No camera update needed
[2026-06-13 23:10:43,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:10:43,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:10:43,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:10:43,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:10:45,295.295 INFO    ] ================================================
[2026-06-13 23:10:45,311.311 INFO    ] Launching Daemon at Sat Jun 13 23:10:45 IST 2026
[2026-06-13 23:10:45,321.321 INFO    ] ================================================
[2026-06-13 23:10:45,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:10:45
[2026-06-13 23:10:45,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:10:46,107.107 INFO    ] Initializing speech engine...
[2026-06-13 23:10:46,111.111 INFO    ] 2026-06-13 23:10:46
[2026-06-13 23:10:46,316.316 INFO    ] 2026-06-13 23:10:46
[2026-06-13 23:10:46,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:10:46,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:10:46,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:10:46,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:10:46,775.775 INFO    ] time= 13/06/2026 23:10:46
[2026-06-13 23:10:46,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:10:46,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:10:46,909.909 INFO    ] No existing commands found in stream
[2026-06-13 23:10:51,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:10:51,923.923 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-13 23:10:54,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:10:54,351.351 INFO    ] Checking for system updates...
[2026-06-13 23:10:54,373.373 INFO    ] 200
[2026-06-13 23:10:54,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:54,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:54,407.407 INFO    ] No update needed
[2026-06-13 23:10:54,408.408 INFO    ] Checking for camera pi updates...
[2026-06-13 23:10:54,428.428 INFO    ] 200
[2026-06-13 23:10:54,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:10:54,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:10:54,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:10:54,496.496 INFO    ] No camera update needed
[2026-06-13 23:10:54,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:10:54,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:10:54,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:10:54,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:10:56,545.545 INFO    ] ================================================
[2026-06-13 23:10:56,561.561 INFO    ] Launching Daemon at Sat Jun 13 23:10:56 IST 2026
[2026-06-13 23:10:56,572.572 INFO    ] ================================================
[2026-06-13 23:10:56,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:10:56
[2026-06-13 23:10:57,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:10:57,357.357 INFO    ] Initializing speech engine...
[2026-06-13 23:10:57,362.362 INFO    ] 2026-06-13 23:10:57
[2026-06-13 23:10:57,567.567 INFO    ] 2026-06-13 23:10:57
[2026-06-13 23:10:57,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:10:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:10:57,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:10:57,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:10:57,983.983 INFO    ] time= 13/06/2026 23:10:57
[2026-06-13 23:10:58,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:10:58,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:10:58,085.085 INFO    ] No existing commands found in stream
[2026-06-13 23:11:03,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:11:03,095.095 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-13 23:11:06,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:11:06,009.009 INFO    ] Checking for system updates...
[2026-06-13 23:11:06,030.030 INFO    ] 200
[2026-06-13 23:11:06,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:06,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:11:06,063.063 INFO    ] No update needed
[2026-06-13 23:11:06,064.064 INFO    ] Checking for camera pi updates...
[2026-06-13 23:11:06,084.084 INFO    ] 200
[2026-06-13 23:11:06,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:06,112.112 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:11:06,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:11:06,161.161 INFO    ] No camera update needed
[2026-06-13 23:11:06,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:11:06,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:11:06,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:11:06,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:11:08,211.211 INFO    ] ================================================
[2026-06-13 23:11:08,227.227 INFO    ] Launching Daemon at Sat Jun 13 23:11:08 IST 2026
[2026-06-13 23:11:08,240.240 INFO    ] ================================================
[2026-06-13 23:11:08,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:11:08
[2026-06-13 23:11:08,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:11:09,063.063 INFO    ] Initializing speech engine...
[2026-06-13 23:11:09,068.068 INFO    ] 2026-06-13 23:11:09
[2026-06-13 23:11:09,284.284 INFO    ] 2026-06-13 23:11:09
[2026-06-13 23:11:09,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:11:09,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:11:09,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:11:09,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:11:09,739.739 INFO    ] time= 13/06/2026 23:11:09
[2026-06-13 23:11:09,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:11:09,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:11:09,864.864 INFO    ] No existing commands found in stream
[2026-06-13 23:11:14,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:11:14,876.876 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-13 23:11:17,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:11:17,961.961 INFO    ] Checking for system updates...
[2026-06-13 23:11:17,982.982 INFO    ] 200
[2026-06-13 23:11:17,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:18,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:11:18,016.016 INFO    ] No update needed
[2026-06-13 23:11:18,017.017 INFO    ] Checking for camera pi updates...
[2026-06-13 23:11:18,038.038 INFO    ] 200
[2026-06-13 23:11:18,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:18,067.067 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:11:18,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:11:18,105.105 INFO    ] No camera update needed
[2026-06-13 23:11:18,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:11:18,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:11:18,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:11:18,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:11:20,153.153 INFO    ] ================================================
[2026-06-13 23:11:20,169.169 INFO    ] Launching Daemon at Sat Jun 13 23:11:20 IST 2026
[2026-06-13 23:11:20,180.180 INFO    ] ================================================
[2026-06-13 23:11:20,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:11:20
[2026-06-13 23:11:20,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:11:21,015.015 INFO    ] Initializing speech engine...
[2026-06-13 23:11:21,020.020 INFO    ] 2026-06-13 23:11:21
[2026-06-13 23:11:21,225.225 INFO    ] 2026-06-13 23:11:21
[2026-06-13 23:11:21,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:11:21,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:11:21,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:11:21,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:11:21,641.641 INFO    ] time= 13/06/2026 23:11:21
[2026-06-13 23:11:21,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:11:21,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:11:21,739.739 INFO    ] No existing commands found in stream
[2026-06-13 23:11:26,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:11:26,752.752 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-13 23:11:28,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:11:28,280.280 INFO    ] Checking for system updates...
[2026-06-13 23:11:28,300.300 INFO    ] 200
[2026-06-13 23:11:28,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:28,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:11:28,334.334 INFO    ] No update needed
[2026-06-13 23:11:28,335.335 INFO    ] Checking for camera pi updates...
[2026-06-13 23:11:28,356.356 INFO    ] 200
[2026-06-13 23:11:28,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:28,383.383 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:11:28,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:11:28,430.430 INFO    ] No camera update needed
[2026-06-13 23:11:28,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:11:28,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:11:28,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:11:28,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:11:30,480.480 INFO    ] ================================================
[2026-06-13 23:11:30,496.496 INFO    ] Launching Daemon at Sat Jun 13 23:11:30 IST 2026
[2026-06-13 23:11:30,508.508 INFO    ] ================================================
[2026-06-13 23:11:30,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:11:30
[2026-06-13 23:11:31,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:11:31,331.331 INFO    ] Initializing speech engine...
[2026-06-13 23:11:31,344.344 INFO    ] 2026-06-13 23:11:31
[2026-06-13 23:11:31,549.549 INFO    ] 2026-06-13 23:11:31
[2026-06-13 23:11:31,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:11:31,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:11:31,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:11:31,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:11:31,990.990 INFO    ] time= 13/06/2026 23:11:31
[2026-06-13 23:11:32,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:11:32,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:11:32,091.091 INFO    ] No existing commands found in stream
[2026-06-13 23:11:37,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:11:37,110.110 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-13 23:11:40,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:11:40,950.950 INFO    ] Checking for system updates...
[2026-06-13 23:11:40,973.973 INFO    ] 200
[2026-06-13 23:11:40,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:41,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:11:41,012.012 INFO    ] No update needed
[2026-06-13 23:11:41,014.014 INFO    ] Checking for camera pi updates...
[2026-06-13 23:11:41,033.033 INFO    ] 200
[2026-06-13 23:11:41,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:41,059.059 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:11:41,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:11:41,207.207 INFO    ] No camera update needed
[2026-06-13 23:11:41,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:11:41,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:11:41,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:11:41,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:11:43,255.255 INFO    ] ================================================
[2026-06-13 23:11:43,270.270 INFO    ] Launching Daemon at Sat Jun 13 23:11:43 IST 2026
[2026-06-13 23:11:43,281.281 INFO    ] ================================================
[2026-06-13 23:11:43,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:11:43
[2026-06-13 23:11:43,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:11:44,116.116 INFO    ] Initializing speech engine...
[2026-06-13 23:11:44,121.121 INFO    ] 2026-06-13 23:11:44
[2026-06-13 23:11:44,329.329 INFO    ] 2026-06-13 23:11:44
[2026-06-13 23:11:44,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:11:44,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:11:44,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:11:44,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:11:44,751.751 INFO    ] time= 13/06/2026 23:11:44
[2026-06-13 23:11:44,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:11:44,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:11:44,848.848 INFO    ] No existing commands found in stream
[2026-06-13 23:11:49,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:11:49,866.866 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-13 23:11:52,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:11:52,724.724 INFO    ] Checking for system updates...
[2026-06-13 23:11:52,745.745 INFO    ] 200
[2026-06-13 23:11:52,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:52,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:11:52,779.779 INFO    ] No update needed
[2026-06-13 23:11:52,781.781 INFO    ] Checking for camera pi updates...
[2026-06-13 23:11:52,804.804 INFO    ] 200
[2026-06-13 23:11:52,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:11:52,831.831 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:11:52,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:11:52,869.869 INFO    ] No camera update needed
[2026-06-13 23:11:52,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:11:52,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:11:52,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:11:52,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:11:54,918.918 INFO    ] ================================================
[2026-06-13 23:11:54,933.933 INFO    ] Launching Daemon at Sat Jun 13 23:11:54 IST 2026
[2026-06-13 23:11:54,944.944 INFO    ] ================================================
[2026-06-13 23:11:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:11:55
[2026-06-13 23:11:55,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:11:55,722.722 INFO    ] Initializing speech engine...
[2026-06-13 23:11:55,726.726 INFO    ] 2026-06-13 23:11:55
[2026-06-13 23:11:55,936.936 INFO    ] 2026-06-13 23:11:55
[2026-06-13 23:11:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:11:56,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:11:56,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:11:56,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:11:56,340.340 INFO    ] time= 13/06/2026 23:11:56
[2026-06-13 23:11:56,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:11:56,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:11:56,524.524 INFO    ] No existing commands found in stream
[2026-06-13 23:12:01,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:01,535.535 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-13 23:12:02,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:12:02,377.377 INFO    ] Checking for system updates...
[2026-06-13 23:12:02,422.422 INFO    ] 200
[2026-06-13 23:12:02,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:02,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:12:02,497.497 INFO    ] No update needed
[2026-06-13 23:12:02,502.502 INFO    ] Checking for camera pi updates...
[2026-06-13 23:12:02,549.549 INFO    ] 200
[2026-06-13 23:12:02,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:02,606.606 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:12:02,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:12:02,641.641 INFO    ] No camera update needed
[2026-06-13 23:12:02,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:12:02,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:12:02,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:12:02,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:12:04,703.703 INFO    ] ================================================
[2026-06-13 23:12:04,719.719 INFO    ] Launching Daemon at Sat Jun 13 23:12:04 IST 2026
[2026-06-13 23:12:04,730.730 INFO    ] ================================================
[2026-06-13 23:12:05,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:12:05
[2026-06-13 23:12:05,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:12:05,858.858 INFO    ] Initializing speech engine...
[2026-06-13 23:12:05,863.863 INFO    ] 2026-06-13 23:12:05
[2026-06-13 23:12:06,066.066 INFO    ] 2026-06-13 23:12:06
[2026-06-13 23:12:06,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:12:06,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:12:06,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:12:06,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:12:06,436.436 INFO    ] time= 13/06/2026 23:12:06
[2026-06-13 23:12:06,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:12:06,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:12:06,615.615 INFO    ] No existing commands found in stream
[2026-06-13 23:12:11,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:11,629.629 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-13 23:12:14,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:12:14,194.194 INFO    ] Checking for system updates...
[2026-06-13 23:12:14,214.214 INFO    ] 200
[2026-06-13 23:12:14,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:14,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:14,247.247 INFO    ] No update needed
[2026-06-13 23:12:14,249.249 INFO    ] Checking for camera pi updates...
[2026-06-13 23:12:14,270.270 INFO    ] 200
[2026-06-13 23:12:14,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:14,296.296 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:12:14,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:14,337.337 INFO    ] No camera update needed
[2026-06-13 23:12:14,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:12:14,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:12:14,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:12:14,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:12:16,385.385 INFO    ] ================================================
[2026-06-13 23:12:16,401.401 INFO    ] Launching Daemon at Sat Jun 13 23:12:16 IST 2026
[2026-06-13 23:12:16,411.411 INFO    ] ================================================
[2026-06-13 23:12:16,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:12:16
[2026-06-13 23:12:17,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:12:17,274.274 INFO    ] Initializing speech engine...
[2026-06-13 23:12:17,280.280 INFO    ] 2026-06-13 23:12:17
[2026-06-13 23:12:17,488.488 INFO    ] 2026-06-13 23:12:17
[2026-06-13 23:12:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:12:17,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:12:17,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:12:17,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:12:17,921.921 INFO    ] time= 13/06/2026 23:12:17
[2026-06-13 23:12:17,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:12:17,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:12:18,018.018 INFO    ] No existing commands found in stream
[2026-06-13 23:12:23,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:23,031.031 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-13 23:12:27,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:12:27,021.021 INFO    ] Checking for system updates...
[2026-06-13 23:12:27,043.043 INFO    ] 200
[2026-06-13 23:12:27,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:27,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:27,079.079 INFO    ] No update needed
[2026-06-13 23:12:27,080.080 INFO    ] Checking for camera pi updates...
[2026-06-13 23:12:27,104.104 INFO    ] 200
[2026-06-13 23:12:27,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:27,131.131 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:12:27,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:27,171.171 INFO    ] No camera update needed
[2026-06-13 23:12:27,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:12:27,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:12:27,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:12:27,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:12:29,212.212 INFO    ] ================================================
[2026-06-13 23:12:29,227.227 INFO    ] Launching Daemon at Sat Jun 13 23:12:29 IST 2026
[2026-06-13 23:12:29,238.238 INFO    ] ================================================
[2026-06-13 23:12:29,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:12:29
[2026-06-13 23:12:29,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:12:30,093.093 INFO    ] Initializing speech engine...
[2026-06-13 23:12:30,098.098 INFO    ] 2026-06-13 23:12:30
[2026-06-13 23:12:30,307.307 INFO    ] 2026-06-13 23:12:30
[2026-06-13 23:12:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:12:30,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:12:30,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:12:30,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:12:30,696.696 INFO    ] time= 13/06/2026 23:12:30
[2026-06-13 23:12:30,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:12:30,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:12:30,878.878 INFO    ] No existing commands found in stream
[2026-06-13 23:12:35,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:35,907.907 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 23:12:38,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:12:38,080.080 INFO    ] Checking for system updates...
[2026-06-13 23:12:38,102.102 INFO    ] 200
[2026-06-13 23:12:38,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:38,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:38,138.138 INFO    ] No update needed
[2026-06-13 23:12:38,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 23:12:38,159.159 INFO    ] 200
[2026-06-13 23:12:38,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:38,184.184 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:12:38,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:38,223.223 INFO    ] No camera update needed
[2026-06-13 23:12:38,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:12:38,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:12:38,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:12:38,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:12:40,271.271 INFO    ] ================================================
[2026-06-13 23:12:40,286.286 INFO    ] Launching Daemon at Sat Jun 13 23:12:40 IST 2026
[2026-06-13 23:12:40,297.297 INFO    ] ================================================
[2026-06-13 23:12:40,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:12:40
[2026-06-13 23:12:40,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:12:41,092.092 INFO    ] Initializing speech engine...
[2026-06-13 23:12:41,102.102 INFO    ] 2026-06-13 23:12:41
[2026-06-13 23:12:41,306.306 INFO    ] 2026-06-13 23:12:41
[2026-06-13 23:12:41,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:12:41,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:12:41,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:12:41,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:12:41,712.712 INFO    ] time= 13/06/2026 23:12:41
[2026-06-13 23:12:41,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:12:41,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:12:41,824.824 INFO    ] No existing commands found in stream
[2026-06-13 23:12:46,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:46,836.836 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-13 23:12:49,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:12:49,014.014 INFO    ] Checking for system updates...
[2026-06-13 23:12:49,034.034 INFO    ] 200
[2026-06-13 23:12:49,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:49,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:49,070.070 INFO    ] No update needed
[2026-06-13 23:12:49,072.072 INFO    ] Checking for camera pi updates...
[2026-06-13 23:12:49,092.092 INFO    ] 200
[2026-06-13 23:12:49,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:12:49,117.117 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:12:49,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:12:49,164.164 INFO    ] No camera update needed
[2026-06-13 23:12:49,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:12:49,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:12:49,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:12:49,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:12:51,210.210 INFO    ] ================================================
[2026-06-13 23:12:51,226.226 INFO    ] Launching Daemon at Sat Jun 13 23:12:51 IST 2026
[2026-06-13 23:12:51,237.237 INFO    ] ================================================
[2026-06-13 23:12:51,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:12:51
[2026-06-13 23:12:51,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:12:52,017.017 INFO    ] Initializing speech engine...
[2026-06-13 23:12:52,022.022 INFO    ] 2026-06-13 23:12:52
[2026-06-13 23:12:52,226.226 INFO    ] 2026-06-13 23:12:52
[2026-06-13 23:12:52,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:12:52,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:12:52,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:12:52,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:12:52,622.622 INFO    ] time= 13/06/2026 23:12:52
[2026-06-13 23:12:52,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:12:52,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:12:52,742.742 INFO    ] No existing commands found in stream
[2026-06-13 23:12:57,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:12:57,755.755 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-13 23:13:01,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:13:01,756.756 INFO    ] Checking for system updates...
[2026-06-13 23:13:01,785.785 INFO    ] 200
[2026-06-13 23:13:01,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:01,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:01,827.827 INFO    ] No update needed
[2026-06-13 23:13:01,829.829 INFO    ] Checking for camera pi updates...
[2026-06-13 23:13:01,855.855 INFO    ] 200
[2026-06-13 23:13:01,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:01,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:13:01,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:01,923.923 INFO    ] No camera update needed
[2026-06-13 23:13:01,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:13:01,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:13:01,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:13:01,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:13:03,977.977 INFO    ] ================================================
[2026-06-13 23:13:03,992.992 INFO    ] Launching Daemon at Sat Jun 13 23:13:03 IST 2026
[2026-06-13 23:13:04,003.003 INFO    ] ================================================
[2026-06-13 23:13:04,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:13:04
[2026-06-13 23:13:04,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:13:04,868.868 INFO    ] Initializing speech engine...
[2026-06-13 23:13:04,873.873 INFO    ] 2026-06-13 23:13:04
[2026-06-13 23:13:05,079.079 INFO    ] 2026-06-13 23:13:05
[2026-06-13 23:13:05,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:13:05,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:13:05,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:13:05,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:13:05,492.492 INFO    ] time= 13/06/2026 23:13:05
[2026-06-13 23:13:05,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:13:05,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:13:05,670.670 INFO    ] No existing commands found in stream
[2026-06-13 23:13:10,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:13:10,683.683 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-13 23:13:15,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:13:15,040.040 INFO    ] Checking for system updates...
[2026-06-13 23:13:15,062.062 INFO    ] 200
[2026-06-13 23:13:15,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:15,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:13:15,099.099 INFO    ] No update needed
[2026-06-13 23:13:15,101.101 INFO    ] Checking for camera pi updates...
[2026-06-13 23:13:15,121.121 INFO    ] 200
[2026-06-13 23:13:15,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:15,146.146 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:13:15,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:13:15,184.184 INFO    ] No camera update needed
[2026-06-13 23:13:15,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:13:15,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:13:15,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:13:15,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:13:17,234.234 INFO    ] ================================================
[2026-06-13 23:13:17,250.250 INFO    ] Launching Daemon at Sat Jun 13 23:13:17 IST 2026
[2026-06-13 23:13:17,261.261 INFO    ] ================================================
[2026-06-13 23:13:17,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:13:17
[2026-06-13 23:13:17,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:13:18,118.118 INFO    ] Initializing speech engine...
[2026-06-13 23:13:18,124.124 INFO    ] 2026-06-13 23:13:18
[2026-06-13 23:13:18,334.334 INFO    ] 2026-06-13 23:13:18
[2026-06-13 23:13:18,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:13:18,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:13:18,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:13:18,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:13:18,738.738 INFO    ] time= 13/06/2026 23:13:18
[2026-06-13 23:13:18,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:13:18,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:13:18,863.863 INFO    ] No existing commands found in stream
[2026-06-13 23:13:23,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:13:23,877.877 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-13 23:13:25,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:13:25,976.976 INFO    ] Checking for system updates...
[2026-06-13 23:13:25,997.997 INFO    ] 200
[2026-06-13 23:13:25,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:26,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:26,034.034 INFO    ] No update needed
[2026-06-13 23:13:26,035.035 INFO    ] Checking for camera pi updates...
[2026-06-13 23:13:26,059.059 INFO    ] 200
[2026-06-13 23:13:26,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:26,086.086 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:13:26,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:26,130.130 INFO    ] No camera update needed
[2026-06-13 23:13:26,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:13:26,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:13:26,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:13:26,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:13:28,180.180 INFO    ] ================================================
[2026-06-13 23:13:28,195.195 INFO    ] Launching Daemon at Sat Jun 13 23:13:28 IST 2026
[2026-06-13 23:13:28,206.206 INFO    ] ================================================
[2026-06-13 23:13:28,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:13:28
[2026-06-13 23:13:28,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:13:29,033.033 INFO    ] Initializing speech engine...
[2026-06-13 23:13:29,046.046 INFO    ] 2026-06-13 23:13:29
[2026-06-13 23:13:29,251.251 INFO    ] 2026-06-13 23:13:29
[2026-06-13 23:13:29,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:13:29,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:13:29,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:13:29,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:13:29,656.656 INFO    ] time= 13/06/2026 23:13:29
[2026-06-13 23:13:29,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:13:29,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:13:29,765.765 INFO    ] No existing commands found in stream
[2026-06-13 23:13:34,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:13:34,779.779 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-13 23:13:38,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:13:38,157.157 INFO    ] Checking for system updates...
[2026-06-13 23:13:38,194.194 INFO    ] 200
[2026-06-13 23:13:38,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:38,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:13:38,261.261 INFO    ] No update needed
[2026-06-13 23:13:38,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 23:13:38,309.309 INFO    ] 200
[2026-06-13 23:13:38,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:38,337.337 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:13:38,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:13:38,375.375 INFO    ] No camera update needed
[2026-06-13 23:13:38,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:13:38,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:13:38,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:13:38,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:13:40,424.424 INFO    ] ================================================
[2026-06-13 23:13:40,440.440 INFO    ] Launching Daemon at Sat Jun 13 23:13:40 IST 2026
[2026-06-13 23:13:40,451.451 INFO    ] ================================================
[2026-06-13 23:13:40,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:13:40
[2026-06-13 23:13:41,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:13:41,223.223 INFO    ] Initializing speech engine...
[2026-06-13 23:13:41,228.228 INFO    ] 2026-06-13 23:13:41
[2026-06-13 23:13:41,431.431 INFO    ] 2026-06-13 23:13:41
[2026-06-13 23:13:41,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:13:41,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:13:41,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:13:41,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:13:41,845.845 INFO    ] time= 13/06/2026 23:13:41
[2026-06-13 23:13:41,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:13:41,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:13:41,943.943 INFO    ] No existing commands found in stream
[2026-06-13 23:13:46,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:13:46,956.956 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 23:13:50,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:13:50,207.207 INFO    ] Checking for system updates...
[2026-06-13 23:13:50,228.228 INFO    ] 200
[2026-06-13 23:13:50,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:50,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:50,262.262 INFO    ] No update needed
[2026-06-13 23:13:50,263.263 INFO    ] Checking for camera pi updates...
[2026-06-13 23:13:50,283.283 INFO    ] 200
[2026-06-13 23:13:50,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:13:50,307.307 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:13:50,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:13:50,446.446 INFO    ] No camera update needed
[2026-06-13 23:13:50,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:13:50,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:13:50,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:13:50,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:13:52,493.493 INFO    ] ================================================
[2026-06-13 23:13:52,510.510 INFO    ] Launching Daemon at Sat Jun 13 23:13:52 IST 2026
[2026-06-13 23:13:52,523.523 INFO    ] ================================================
[2026-06-13 23:13:52,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:13:52
[2026-06-13 23:13:53,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:13:53,365.365 INFO    ] Initializing speech engine...
[2026-06-13 23:13:53,371.371 INFO    ] 2026-06-13 23:13:53
[2026-06-13 23:13:53,580.580 INFO    ] 2026-06-13 23:13:53
[2026-06-13 23:13:53,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:13:53,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:13:53,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:13:53,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:13:53,999.999 INFO    ] time= 13/06/2026 23:13:53
[2026-06-13 23:13:54,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:13:54,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:13:54,124.124 INFO    ] No existing commands found in stream
[2026-06-13 23:13:59,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:13:59,142.142 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-13 23:14:00,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:14:00,343.343 INFO    ] Checking for system updates...
[2026-06-13 23:14:00,364.364 INFO    ] 200
[2026-06-13 23:14:00,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:00,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:00,398.398 INFO    ] No update needed
[2026-06-13 23:14:00,399.399 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:00,420.420 INFO    ] 200
[2026-06-13 23:14:00,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:00,444.444 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:00,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:00,485.485 INFO    ] No camera update needed
[2026-06-13 23:14:00,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:00,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:00,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:00,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:02,525.525 INFO    ] ================================================
[2026-06-13 23:14:02,538.538 INFO    ] Launching Daemon at Sat Jun 13 23:14:02 IST 2026
[2026-06-13 23:14:02,544.544 INFO    ] ================================================
[2026-06-13 23:14:02,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:14:02
[2026-06-13 23:14:03,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:14:03,316.316 INFO    ] Initializing speech engine...
[2026-06-13 23:14:03,320.320 INFO    ] 2026-06-13 23:14:03
[2026-06-13 23:14:03,547.547 INFO    ] 2026-06-13 23:14:03
[2026-06-13 23:14:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:14:03,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:14:03,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:14:03,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:14:03,920.920 INFO    ] time= 13/06/2026 23:14:03
[2026-06-13 23:14:03,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:14:04,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:14:04,100.100 INFO    ] No existing commands found in stream
[2026-06-13 23:14:09,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:14:09,114.114 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-13 23:14:09,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:14:09,638.638 INFO    ] Checking for system updates...
[2026-06-13 23:14:09,661.661 INFO    ] 200
[2026-06-13 23:14:09,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:09,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:09,695.695 INFO    ] No update needed
[2026-06-13 23:14:09,696.696 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:09,717.717 INFO    ] 200
[2026-06-13 23:14:09,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:09,748.748 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:09,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:09,786.786 INFO    ] No camera update needed
[2026-06-13 23:14:09,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:09,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:09,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:09,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:11,833.833 INFO    ] ================================================
[2026-06-13 23:14:11,849.849 INFO    ] Launching Daemon at Sat Jun 13 23:14:11 IST 2026
[2026-06-13 23:14:11,861.861 INFO    ] ================================================
[2026-06-13 23:14:12,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:14:12
[2026-06-13 23:14:12,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:14:12,669.669 INFO    ] Initializing speech engine...
[2026-06-13 23:14:12,672.672 INFO    ] 2026-06-13 23:14:12
[2026-06-13 23:14:12,874.874 INFO    ] 2026-06-13 23:14:12
[2026-06-13 23:14:12,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:14:13,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:14:13,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:14:13,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:14:13,288.288 INFO    ] time= 13/06/2026 23:14:13
[2026-06-13 23:14:13,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:14:13,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:14:13,387.387 INFO    ] No existing commands found in stream
[2026-06-13 23:14:18,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:14:18,400.400 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 23:14:21,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:14:21,564.564 INFO    ] Checking for system updates...
[2026-06-13 23:14:21,587.587 INFO    ] 200
[2026-06-13 23:14:21,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:21,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:21,623.623 INFO    ] No update needed
[2026-06-13 23:14:21,625.625 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:21,644.644 INFO    ] 200
[2026-06-13 23:14:21,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:21,669.669 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:21,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:14:21,709.709 INFO    ] No camera update needed
[2026-06-13 23:14:21,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:21,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:21,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:21,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:23,757.757 INFO    ] ================================================
[2026-06-13 23:14:23,773.773 INFO    ] Launching Daemon at Sat Jun 13 23:14:23 IST 2026
[2026-06-13 23:14:23,790.790 INFO    ] ================================================
[2026-06-13 23:14:24,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:14:24
[2026-06-13 23:14:24,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:14:24,576.576 INFO    ] Initializing speech engine...
[2026-06-13 23:14:24,582.582 INFO    ] 2026-06-13 23:14:24
[2026-06-13 23:14:24,784.784 INFO    ] 2026-06-13 23:14:24
[2026-06-13 23:14:24,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:14:24,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:14:25,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:14:25,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:14:25,179.179 INFO    ] time= 13/06/2026 23:14:25
[2026-06-13 23:14:25,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:14:25,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:14:25,299.299 INFO    ] No existing commands found in stream
[2026-06-13 23:14:30,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:14:30,311.311 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-13 23:14:31,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:14:31,514.514 INFO    ] Checking for system updates...
[2026-06-13 23:14:31,535.535 INFO    ] 200
[2026-06-13 23:14:31,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:31,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:31,568.568 INFO    ] No update needed
[2026-06-13 23:14:31,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:31,591.591 INFO    ] 200
[2026-06-13 23:14:31,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:31,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:31,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:14:31,649.649 INFO    ] No camera update needed
[2026-06-13 23:14:31,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:31,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:31,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:31,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:33,689.689 INFO    ] ================================================
[2026-06-13 23:14:33,705.705 INFO    ] Launching Daemon at Sat Jun 13 23:14:33 IST 2026
[2026-06-13 23:14:33,715.715 INFO    ] ================================================
[2026-06-13 23:14:34,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:14:34
[2026-06-13 23:14:34,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:14:35,028.028 INFO    ] Initializing speech engine...
[2026-06-13 23:14:35,037.037 INFO    ] 2026-06-13 23:14:35
[2026-06-13 23:14:35,285.285 INFO    ] 2026-06-13 23:14:35
[2026-06-13 23:14:35,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:14:35,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:14:35,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:14:35,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:14:35,738.738 INFO    ] time= 13/06/2026 23:14:35
[2026-06-13 23:14:35,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:14:35,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:14:35,973.973 INFO    ] No existing commands found in stream
[2026-06-13 23:14:40,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:14:41,001.001 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 23:14:44,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:14:44,809.809 INFO    ] Checking for system updates...
[2026-06-13 23:14:44,845.845 INFO    ] 200
[2026-06-13 23:14:44,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:44,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:14:44,909.909 INFO    ] No update needed
[2026-06-13 23:14:44,912.912 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:44,939.939 INFO    ] 200
[2026-06-13 23:14:44,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:44,966.966 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:45,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:14:45,003.003 INFO    ] No camera update needed
[2026-06-13 23:14:45,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:45,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:45,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:45,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:47,053.053 INFO    ] ================================================
[2026-06-13 23:14:47,068.068 INFO    ] Launching Daemon at Sat Jun 13 23:14:47 IST 2026
[2026-06-13 23:14:47,079.079 INFO    ] ================================================
[2026-06-13 23:14:47,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:14:47
[2026-06-13 23:14:47,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:14:47,878.878 INFO    ] Initializing speech engine...
[2026-06-13 23:14:47,891.891 INFO    ] 2026-06-13 23:14:47
[2026-06-13 23:14:48,108.108 INFO    ] 2026-06-13 23:14:48
[2026-06-13 23:14:48,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:14:48,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:14:48,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:14:48,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:14:48,521.521 INFO    ] time= 13/06/2026 23:14:48
[2026-06-13 23:14:48,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:14:48,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:14:48,655.655 INFO    ] No existing commands found in stream
[2026-06-13 23:14:53,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:14:53,669.669 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 23:14:57,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:14:57,773.773 INFO    ] Checking for system updates...
[2026-06-13 23:14:57,794.794 INFO    ] 200
[2026-06-13 23:14:57,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:57,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:14:57,829.829 INFO    ] No update needed
[2026-06-13 23:14:57,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 23:14:57,850.850 INFO    ] 200
[2026-06-13 23:14:57,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:14:57,875.875 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:14:57,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:14:57,908.908 INFO    ] No camera update needed
[2026-06-13 23:14:57,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:14:57,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:14:57,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:14:57,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:14:59,956.956 INFO    ] ================================================
[2026-06-13 23:14:59,972.972 INFO    ] Launching Daemon at Sat Jun 13 23:14:59 IST 2026
[2026-06-13 23:14:59,983.983 INFO    ] ================================================
[2026-06-13 23:15:00,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:15:00
[2026-06-13 23:15:00,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:15:00,808.808 INFO    ] Initializing speech engine...
[2026-06-13 23:15:00,817.817 INFO    ] 2026-06-13 23:15:00
[2026-06-13 23:15:01,039.039 INFO    ] 2026-06-13 23:15:01
[2026-06-13 23:15:01,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:15:01,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:15:01,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:15:01,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:15:01,466.466 INFO    ] time= 13/06/2026 23:15:01
[2026-06-13 23:15:01,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:15:01,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:15:01,592.592 INFO    ] No existing commands found in stream
[2026-06-13 23:15:06,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:15:06,605.605 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 23:15:09,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:15:09,346.346 INFO    ] Checking for system updates...
[2026-06-13 23:15:09,367.367 INFO    ] 200
[2026-06-13 23:15:09,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:09,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:09,402.402 INFO    ] No update needed
[2026-06-13 23:15:09,404.404 INFO    ] Checking for camera pi updates...
[2026-06-13 23:15:09,423.423 INFO    ] 200
[2026-06-13 23:15:09,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:09,449.449 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:15:09,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:09,488.488 INFO    ] No camera update needed
[2026-06-13 23:15:09,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:15:09,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:15:09,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:15:09,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:15:11,538.538 INFO    ] ================================================
[2026-06-13 23:15:11,554.554 INFO    ] Launching Daemon at Sat Jun 13 23:15:11 IST 2026
[2026-06-13 23:15:11,565.565 INFO    ] ================================================
[2026-06-13 23:15:11,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:15:11
[2026-06-13 23:15:12,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:15:12,430.430 INFO    ] Initializing speech engine...
[2026-06-13 23:15:12,440.440 INFO    ] 2026-06-13 23:15:12
[2026-06-13 23:15:12,651.651 INFO    ] 2026-06-13 23:15:12
[2026-06-13 23:15:12,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:15:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:15:12,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:15:13,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:15:13,063.063 INFO    ] time= 13/06/2026 23:15:13
[2026-06-13 23:15:13,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:15:13,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:15:13,210.210 INFO    ] No existing commands found in stream
[2026-06-13 23:15:18,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:15:18,232.232 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 23:15:20,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:15:20,441.441 INFO    ] Checking for system updates...
[2026-06-13 23:15:20,463.463 INFO    ] 200
[2026-06-13 23:15:20,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:20,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:15:20,500.500 INFO    ] No update needed
[2026-06-13 23:15:20,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 23:15:20,521.521 INFO    ] 200
[2026-06-13 23:15:20,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:20,548.548 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:15:20,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:15:20,591.591 INFO    ] No camera update needed
[2026-06-13 23:15:20,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:15:20,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:15:20,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:15:20,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:15:22,642.642 INFO    ] ================================================
[2026-06-13 23:15:22,662.662 INFO    ] Launching Daemon at Sat Jun 13 23:15:22 IST 2026
[2026-06-13 23:15:22,673.673 INFO    ] ================================================
[2026-06-13 23:15:23,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:15:23
[2026-06-13 23:15:23,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:15:23,463.463 INFO    ] Initializing speech engine...
[2026-06-13 23:15:23,471.471 INFO    ] 2026-06-13 23:15:23
[2026-06-13 23:15:23,685.685 INFO    ] 2026-06-13 23:15:23
[2026-06-13 23:15:23,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:15:23,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:15:23,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:15:24,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:15:24,089.089 INFO    ] time= 13/06/2026 23:15:24
[2026-06-13 23:15:24,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:15:24,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:15:24,200.200 INFO    ] No existing commands found in stream
[2026-06-13 23:15:29,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:15:29,217.217 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 23:15:33,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:15:33,236.236 INFO    ] Checking for system updates...
[2026-06-13 23:15:33,257.257 INFO    ] 200
[2026-06-13 23:15:33,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:33,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:33,290.290 INFO    ] No update needed
[2026-06-13 23:15:33,292.292 INFO    ] Checking for camera pi updates...
[2026-06-13 23:15:33,311.311 INFO    ] 200
[2026-06-13 23:15:33,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:33,336.336 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:15:33,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:33,374.374 INFO    ] No camera update needed
[2026-06-13 23:15:33,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:15:33,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:15:33,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:15:33,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:15:35,422.422 INFO    ] ================================================
[2026-06-13 23:15:35,437.437 INFO    ] Launching Daemon at Sat Jun 13 23:15:35 IST 2026
[2026-06-13 23:15:35,448.448 INFO    ] ================================================
[2026-06-13 23:15:35,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:15:35
[2026-06-13 23:15:36,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:15:36,854.854 INFO    ] Initializing speech engine...
[2026-06-13 23:15:36,863.863 INFO    ] 2026-06-13 23:15:36
[2026-06-13 23:15:37,111.111 INFO    ] 2026-06-13 23:15:37
[2026-06-13 23:15:37,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:15:37,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:15:37,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:15:37,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:15:37,461.461 INFO    ] time= 13/06/2026 23:15:37
[2026-06-13 23:15:37,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:15:37,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:15:37,561.561 INFO    ] No existing commands found in stream
[2026-06-13 23:15:42,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:15:42,599.599 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 23:15:45,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:15:45,441.441 INFO    ] Checking for system updates...
[2026-06-13 23:15:45,461.461 INFO    ] 200
[2026-06-13 23:15:45,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:45,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:45,495.495 INFO    ] No update needed
[2026-06-13 23:15:45,496.496 INFO    ] Checking for camera pi updates...
[2026-06-13 23:15:45,516.516 INFO    ] 200
[2026-06-13 23:15:45,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:45,540.540 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:15:45,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:45,578.578 INFO    ] No camera update needed
[2026-06-13 23:15:45,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:15:45,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:15:45,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:15:45,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:15:47,617.617 INFO    ] ================================================
[2026-06-13 23:15:47,625.625 INFO    ] Launching Daemon at Sat Jun 13 23:15:47 IST 2026
[2026-06-13 23:15:47,631.631 INFO    ] ================================================
[2026-06-13 23:15:47,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:15:47
[2026-06-13 23:15:48,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:15:48,430.430 INFO    ] Initializing speech engine...
[2026-06-13 23:15:48,434.434 INFO    ] 2026-06-13 23:15:48
[2026-06-13 23:15:48,654.654 INFO    ] 2026-06-13 23:15:48
[2026-06-13 23:15:48,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:15:48,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:15:48,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:15:48,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:15:49,037.037 INFO    ] time= 13/06/2026 23:15:48
[2026-06-13 23:15:49,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:15:49,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:15:49,177.177 INFO    ] No existing commands found in stream
[2026-06-13 23:15:54,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:15:54,211.211 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-13 23:15:58,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:15:58,226.226 INFO    ] Checking for system updates...
[2026-06-13 23:15:58,270.270 INFO    ] 200
[2026-06-13 23:15:58,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:58,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:58,341.341 INFO    ] No update needed
[2026-06-13 23:15:58,343.343 INFO    ] Checking for camera pi updates...
[2026-06-13 23:15:58,378.378 INFO    ] 200
[2026-06-13 23:15:58,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:15:58,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:15:58,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:15:58,571.571 INFO    ] No camera update needed
[2026-06-13 23:15:58,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:15:58,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:15:58,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:15:58,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:00,639.639 INFO    ] ================================================
[2026-06-13 23:16:00,654.654 INFO    ] Launching Daemon at Sat Jun 13 23:16:00 IST 2026
[2026-06-13 23:16:00,665.665 INFO    ] ================================================
[2026-06-13 23:16:01,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:01
[2026-06-13 23:16:01,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:16:01,818.818 INFO    ] Initializing speech engine...
[2026-06-13 23:16:01,822.822 INFO    ] 2026-06-13 23:16:01
[2026-06-13 23:16:02,070.070 INFO    ] 2026-06-13 23:16:02
[2026-06-13 23:16:02,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:16:02,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:16:02,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:16:02,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:16:02,375.375 INFO    ] time= 13/06/2026 23:16:02
[2026-06-13 23:16:02,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:16:02,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:16:02,556.556 INFO    ] No existing commands found in stream
[2026-06-13 23:16:07,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:16:07,588.588 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-13 23:16:08,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:16:08,645.645 INFO    ] Checking for system updates...
[2026-06-13 23:16:08,666.666 INFO    ] 200
[2026-06-13 23:16:08,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:08,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:16:08,700.700 INFO    ] No update needed
[2026-06-13 23:16:08,702.702 INFO    ] Checking for camera pi updates...
[2026-06-13 23:16:08,721.721 INFO    ] 200
[2026-06-13 23:16:08,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:08,747.747 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:16:08,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:16:08,793.793 INFO    ] No camera update needed
[2026-06-13 23:16:08,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:16:08,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:16:08,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:16:08,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:10,843.843 INFO    ] ================================================
[2026-06-13 23:16:10,859.859 INFO    ] Launching Daemon at Sat Jun 13 23:16:10 IST 2026
[2026-06-13 23:16:10,870.870 INFO    ] ================================================
[2026-06-13 23:16:11,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:11
[2026-06-13 23:16:11,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:16:11,653.653 INFO    ] Initializing speech engine...
[2026-06-13 23:16:11,666.666 INFO    ] 2026-06-13 23:16:11
[2026-06-13 23:16:11,873.873 INFO    ] 2026-06-13 23:16:11
[2026-06-13 23:16:11,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:16:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:16:12,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:16:12,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:16:12,287.287 INFO    ] time= 13/06/2026 23:16:12
[2026-06-13 23:16:12,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:16:12,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:16:12,392.392 INFO    ] No existing commands found in stream
[2026-06-13 23:16:17,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:16:17,404.404 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 23:16:20,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:16:20,825.825 INFO    ] Checking for system updates...
[2026-06-13 23:16:20,846.846 INFO    ] 200
[2026-06-13 23:16:20,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:20,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:16:20,883.883 INFO    ] No update needed
[2026-06-13 23:16:20,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 23:16:20,905.905 INFO    ] 200
[2026-06-13 23:16:20,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:20,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:16:20,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:16:20,969.969 INFO    ] No camera update needed
[2026-06-13 23:16:20,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:16:20,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:16:20,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:16:20,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:23,017.017 INFO    ] ================================================
[2026-06-13 23:16:23,032.032 INFO    ] Launching Daemon at Sat Jun 13 23:16:23 IST 2026
[2026-06-13 23:16:23,043.043 INFO    ] ================================================
[2026-06-13 23:16:23,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:23
[2026-06-13 23:16:23,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:16:23,832.832 INFO    ] Initializing speech engine...
[2026-06-13 23:16:23,836.836 INFO    ] 2026-06-13 23:16:23
[2026-06-13 23:16:24,040.040 INFO    ] 2026-06-13 23:16:24
[2026-06-13 23:16:24,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:16:24,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:16:24,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:16:24,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:16:24,491.491 INFO    ] time= 13/06/2026 23:16:24
[2026-06-13 23:16:24,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:16:24,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:16:24,626.626 INFO    ] No existing commands found in stream
[2026-06-13 23:16:29,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:16:29,640.640 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 23:16:33,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:16:33,529.529 INFO    ] Checking for system updates...
[2026-06-13 23:16:33,550.550 INFO    ] 200
[2026-06-13 23:16:33,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:33,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:33,583.583 INFO    ] No update needed
[2026-06-13 23:16:33,584.584 INFO    ] Checking for camera pi updates...
[2026-06-13 23:16:33,604.604 INFO    ] 200
[2026-06-13 23:16:33,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:33,628.628 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:16:33,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:33,666.666 INFO    ] No camera update needed
[2026-06-13 23:16:33,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:16:33,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:16:33,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:16:33,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:35,714.714 INFO    ] ================================================
[2026-06-13 23:16:35,730.730 INFO    ] Launching Daemon at Sat Jun 13 23:16:35 IST 2026
[2026-06-13 23:16:35,742.742 INFO    ] ================================================
[2026-06-13 23:16:36,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:36
[2026-06-13 23:16:36,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:16:36,520.520 INFO    ] Initializing speech engine...
[2026-06-13 23:16:36,528.528 INFO    ] 2026-06-13 23:16:36
[2026-06-13 23:16:36,740.740 INFO    ] 2026-06-13 23:16:36
[2026-06-13 23:16:36,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:16:36,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:16:36,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:16:37,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:16:37,142.142 INFO    ] time= 13/06/2026 23:16:37
[2026-06-13 23:16:37,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:16:37,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:16:37,252.252 INFO    ] No existing commands found in stream
[2026-06-13 23:16:42,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:16:42,263.263 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-13 23:16:45,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:16:45,074.074 INFO    ] Checking for system updates...
[2026-06-13 23:16:45,094.094 INFO    ] 200
[2026-06-13 23:16:45,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:45,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:45,130.130 INFO    ] No update needed
[2026-06-13 23:16:45,131.131 INFO    ] Checking for camera pi updates...
[2026-06-13 23:16:45,150.150 INFO    ] 200
[2026-06-13 23:16:45,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:45,178.178 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:16:45,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:45,224.224 INFO    ] No camera update needed
[2026-06-13 23:16:45,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:16:45,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:16:45,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:16:45,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:47,272.272 INFO    ] ================================================
[2026-06-13 23:16:47,288.288 INFO    ] Launching Daemon at Sat Jun 13 23:16:47 IST 2026
[2026-06-13 23:16:47,299.299 INFO    ] ================================================
[2026-06-13 23:16:47,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:47
[2026-06-13 23:16:48,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:16:48,161.161 INFO    ] Initializing speech engine...
[2026-06-13 23:16:48,166.166 INFO    ] 2026-06-13 23:16:48
[2026-06-13 23:16:48,373.373 INFO    ] 2026-06-13 23:16:48
[2026-06-13 23:16:48,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:16:48,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:16:48,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:16:48,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:16:48,802.802 INFO    ] time= 13/06/2026 23:16:48
[2026-06-13 23:16:48,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:16:48,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:16:49,009.009 INFO    ] No existing commands found in stream
[2026-06-13 23:16:54,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:16:54,033.033 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-13 23:16:57,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:16:57,051.051 INFO    ] Checking for system updates...
[2026-06-13 23:16:57,073.073 INFO    ] 200
[2026-06-13 23:16:57,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:57,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:57,107.107 INFO    ] No update needed
[2026-06-13 23:16:57,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 23:16:57,130.130 INFO    ] 200
[2026-06-13 23:16:57,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:16:57,155.155 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:16:57,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:16:57,195.195 INFO    ] No camera update needed
[2026-06-13 23:16:57,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:16:57,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:16:57,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:16:57,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:16:59,244.244 INFO    ] ================================================
[2026-06-13 23:16:59,259.259 INFO    ] Launching Daemon at Sat Jun 13 23:16:59 IST 2026
[2026-06-13 23:16:59,269.269 INFO    ] ================================================
[2026-06-13 23:16:59,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:16:59
[2026-06-13 23:16:59,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:00,146.146 INFO    ] Initializing speech engine...
[2026-06-13 23:17:00,156.156 INFO    ] 2026-06-13 23:17:00
[2026-06-13 23:17:00,420.420 INFO    ] 2026-06-13 23:17:00
[2026-06-13 23:17:00,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:00,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:00,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:00,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:00,896.896 INFO    ] time= 13/06/2026 23:17:00
[2026-06-13 23:17:00,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:01,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:01,097.097 INFO    ] No existing commands found in stream
[2026-06-13 23:17:06,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:06,112.112 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 23:17:08,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:17:08,914.914 INFO    ] Checking for system updates...
[2026-06-13 23:17:08,935.935 INFO    ] 200
[2026-06-13 23:17:08,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:08,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:08,969.969 INFO    ] No update needed
[2026-06-13 23:17:08,971.971 INFO    ] Checking for camera pi updates...
[2026-06-13 23:17:08,990.990 INFO    ] 200
[2026-06-13 23:17:08,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:09,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:17:09,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:09,039.039 INFO    ] No camera update needed
[2026-06-13 23:17:09,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:17:09,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:17:09,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:17:09,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:17:11,088.088 INFO    ] ================================================
[2026-06-13 23:17:11,104.104 INFO    ] Launching Daemon at Sat Jun 13 23:17:11 IST 2026
[2026-06-13 23:17:11,115.115 INFO    ] ================================================
[2026-06-13 23:17:11,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:17:11
[2026-06-13 23:17:11,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:11,927.927 INFO    ] Initializing speech engine...
[2026-06-13 23:17:11,941.941 INFO    ] 2026-06-13 23:17:11
[2026-06-13 23:17:12,199.199 INFO    ] 2026-06-13 23:17:12
[2026-06-13 23:17:12,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:12,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:12,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:12,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:12,602.602 INFO    ] time= 13/06/2026 23:17:12
[2026-06-13 23:17:12,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:12,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:12,761.761 INFO    ] No existing commands found in stream
[2026-06-13 23:17:17,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:17,775.775 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 23:17:18,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:17:18,735.735 INFO    ] Checking for system updates...
[2026-06-13 23:17:18,756.756 INFO    ] 200
[2026-06-13 23:17:18,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:18,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:17:18,790.790 INFO    ] No update needed
[2026-06-13 23:17:18,792.792 INFO    ] Checking for camera pi updates...
[2026-06-13 23:17:18,811.811 INFO    ] 200
[2026-06-13 23:17:18,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:18,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:17:18,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:17:18,861.861 INFO    ] No camera update needed
[2026-06-13 23:17:18,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:17:18,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:17:18,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:17:18,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:17:20,910.910 INFO    ] ================================================
[2026-06-13 23:17:20,927.927 INFO    ] Launching Daemon at Sat Jun 13 23:17:20 IST 2026
[2026-06-13 23:17:20,939.939 INFO    ] ================================================
[2026-06-13 23:17:21,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:17:21
[2026-06-13 23:17:21,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:21,721.721 INFO    ] Initializing speech engine...
[2026-06-13 23:17:21,726.726 INFO    ] 2026-06-13 23:17:21
[2026-06-13 23:17:21,932.932 INFO    ] 2026-06-13 23:17:21
[2026-06-13 23:17:21,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:22,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:22,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:22,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:22,277.277 INFO    ] time= 13/06/2026 23:17:22
[2026-06-13 23:17:22,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:22,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:22,484.484 INFO    ] No existing commands found in stream
[2026-06-13 23:17:27,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:27,497.497 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-13 23:17:30,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:17:30,900.900 INFO    ] Checking for system updates...
[2026-06-13 23:17:30,920.920 INFO    ] 200
[2026-06-13 23:17:30,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:30,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:30,954.954 INFO    ] No update needed
[2026-06-13 23:17:30,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 23:17:30,975.975 INFO    ] 200
[2026-06-13 23:17:30,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:31,000.000 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:17:31,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:31,041.041 INFO    ] No camera update needed
[2026-06-13 23:17:31,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:17:31,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:17:31,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:17:31,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:17:33,084.084 INFO    ] ================================================
[2026-06-13 23:17:33,099.099 INFO    ] Launching Daemon at Sat Jun 13 23:17:33 IST 2026
[2026-06-13 23:17:33,110.110 INFO    ] ================================================
[2026-06-13 23:17:33,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:17:33
[2026-06-13 23:17:34,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:34,296.296 INFO    ] Initializing speech engine...
[2026-06-13 23:17:34,309.309 INFO    ] 2026-06-13 23:17:34
[2026-06-13 23:17:34,571.571 INFO    ] 2026-06-13 23:17:34
[2026-06-13 23:17:34,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:34,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:34,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:34,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:34,925.925 INFO    ] time= 13/06/2026 23:17:34
[2026-06-13 23:17:34,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:34,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:35,036.036 INFO    ] No existing commands found in stream
[2026-06-13 23:17:40,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:40,051.051 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 23:17:41,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:17:41,005.005 INFO    ] Checking for system updates...
[2026-06-13 23:17:41,026.026 INFO    ] 200
[2026-06-13 23:17:41,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:41,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:41,064.064 INFO    ] No update needed
[2026-06-13 23:17:41,065.065 INFO    ] Checking for camera pi updates...
[2026-06-13 23:17:41,085.085 INFO    ] 200
[2026-06-13 23:17:41,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:41,110.110 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:17:41,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:41,147.147 INFO    ] No camera update needed
[2026-06-13 23:17:41,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:17:41,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:17:41,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:17:41,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:17:43,196.196 INFO    ] ================================================
[2026-06-13 23:17:43,211.211 INFO    ] Launching Daemon at Sat Jun 13 23:17:43 IST 2026
[2026-06-13 23:17:43,222.222 INFO    ] ================================================
[2026-06-13 23:17:43,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:17:43
[2026-06-13 23:17:43,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:44,014.014 INFO    ] Initializing speech engine...
[2026-06-13 23:17:44,024.024 INFO    ] 2026-06-13 23:17:44
[2026-06-13 23:17:44,229.229 INFO    ] 2026-06-13 23:17:44
[2026-06-13 23:17:44,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:44,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:44,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:44,641.641 INFO    ] time= 13/06/2026 23:17:44
[2026-06-13 23:17:44,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:44,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:44,748.748 INFO    ] No existing commands found in stream
[2026-06-13 23:17:49,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:49,760.760 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-13 23:17:50,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:17:50,771.771 INFO    ] Checking for system updates...
[2026-06-13 23:17:50,794.794 INFO    ] 200
[2026-06-13 23:17:50,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:50,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:17:50,829.829 INFO    ] No update needed
[2026-06-13 23:17:50,830.830 INFO    ] Checking for camera pi updates...
[2026-06-13 23:17:50,851.851 INFO    ] 200
[2026-06-13 23:17:50,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:17:50,876.876 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:17:50,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:17:50,918.918 INFO    ] No camera update needed
[2026-06-13 23:17:50,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:17:50,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:17:50,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:17:50,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:17:52,966.966 INFO    ] ================================================
[2026-06-13 23:17:52,981.981 INFO    ] Launching Daemon at Sat Jun 13 23:17:52 IST 2026
[2026-06-13 23:17:52,992.992 INFO    ] ================================================
[2026-06-13 23:17:53,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:17:53
[2026-06-13 23:17:53,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:17:53,803.803 INFO    ] Initializing speech engine...
[2026-06-13 23:17:53,808.808 INFO    ] 2026-06-13 23:17:53
[2026-06-13 23:17:54,013.013 INFO    ] 2026-06-13 23:17:53
[2026-06-13 23:17:54,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:17:54,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:17:54,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:17:54,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:17:54,413.413 INFO    ] time= 13/06/2026 23:17:54
[2026-06-13 23:17:54,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:17:54,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:17:54,528.528 INFO    ] No existing commands found in stream
[2026-06-13 23:17:59,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:17:59,542.542 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 23:18:02,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:18:02,345.345 INFO    ] Checking for system updates...
[2026-06-13 23:18:02,390.390 INFO    ] 200
[2026-06-13 23:18:02,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:02,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:02,460.460 INFO    ] No update needed
[2026-06-13 23:18:02,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:02,515.515 INFO    ] 200
[2026-06-13 23:18:02,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:02,568.568 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:02,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:02,707.707 INFO    ] No camera update needed
[2026-06-13 23:18:02,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:02,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:02,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:02,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:04,776.776 INFO    ] ================================================
[2026-06-13 23:18:04,791.791 INFO    ] Launching Daemon at Sat Jun 13 23:18:04 IST 2026
[2026-06-13 23:18:04,801.801 INFO    ] ================================================
[2026-06-13 23:18:05,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:05
[2026-06-13 23:18:05,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:18:05,665.665 INFO    ] Initializing speech engine...
[2026-06-13 23:18:05,675.675 INFO    ] 2026-06-13 23:18:05
[2026-06-13 23:18:05,884.884 INFO    ] 2026-06-13 23:18:05
[2026-06-13 23:18:05,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:18:06,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:18:06,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:18:06,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:18:06,301.301 INFO    ] time= 13/06/2026 23:18:06
[2026-06-13 23:18:06,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:18:06,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:18:06,413.413 INFO    ] No existing commands found in stream
[2026-06-13 23:18:11,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:18:11,425.425 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 23:18:13,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:18:13,167.167 INFO    ] Checking for system updates...
[2026-06-13 23:18:13,187.187 INFO    ] 200
[2026-06-13 23:18:13,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:13,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:13,220.220 INFO    ] No update needed
[2026-06-13 23:18:13,222.222 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:13,242.242 INFO    ] 200
[2026-06-13 23:18:13,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:13,273.273 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:13,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:13,316.316 INFO    ] No camera update needed
[2026-06-13 23:18:13,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:13,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:13,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:13,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:15,356.356 INFO    ] ================================================
[2026-06-13 23:18:15,365.365 INFO    ] Launching Daemon at Sat Jun 13 23:18:15 IST 2026
[2026-06-13 23:18:15,371.371 INFO    ] ================================================
[2026-06-13 23:18:15,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:15
[2026-06-13 23:18:15,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:18:16,137.137 INFO    ] Initializing speech engine...
[2026-06-13 23:18:16,142.142 INFO    ] 2026-06-13 23:18:16
[2026-06-13 23:18:16,348.348 INFO    ] 2026-06-13 23:18:16
[2026-06-13 23:18:16,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:18:16,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:18:16,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:18:16,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:18:16,764.764 INFO    ] time= 13/06/2026 23:18:16
[2026-06-13 23:18:16,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:18:16,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:18:16,864.864 INFO    ] No existing commands found in stream
[2026-06-13 23:18:21,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:18:21,876.876 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-13 23:18:24,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:18:24,245.245 INFO    ] Checking for system updates...
[2026-06-13 23:18:24,267.267 INFO    ] 200
[2026-06-13 23:18:24,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:24,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:24,301.301 INFO    ] No update needed
[2026-06-13 23:18:24,302.302 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:24,322.322 INFO    ] 200
[2026-06-13 23:18:24,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:24,347.347 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:24,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:24,383.383 INFO    ] No camera update needed
[2026-06-13 23:18:24,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:24,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:24,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:24,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:26,430.430 INFO    ] ================================================
[2026-06-13 23:18:26,445.445 INFO    ] Launching Daemon at Sat Jun 13 23:18:26 IST 2026
[2026-06-13 23:18:26,456.456 INFO    ] ================================================
[2026-06-13 23:18:26,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:26
[2026-06-13 23:18:27,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:18:27,297.297 INFO    ] Initializing speech engine...
[2026-06-13 23:18:27,301.301 INFO    ] 2026-06-13 23:18:27
[2026-06-13 23:18:27,509.509 INFO    ] 2026-06-13 23:18:27
[2026-06-13 23:18:27,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:18:27,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:18:27,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:18:27,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:18:27,909.909 INFO    ] time= 13/06/2026 23:18:27
[2026-06-13 23:18:27,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:18:27,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:18:28,032.032 INFO    ] No existing commands found in stream
[2026-06-13 23:18:33,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:18:33,047.047 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 23:18:36,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:18:36,501.501 INFO    ] Checking for system updates...
[2026-06-13 23:18:36,521.521 INFO    ] 200
[2026-06-13 23:18:36,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:36,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:36,555.555 INFO    ] No update needed
[2026-06-13 23:18:36,556.556 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:36,576.576 INFO    ] 200
[2026-06-13 23:18:36,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:36,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:36,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:36,643.643 INFO    ] No camera update needed
[2026-06-13 23:18:36,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:36,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:36,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:36,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:38,691.691 INFO    ] ================================================
[2026-06-13 23:18:38,706.706 INFO    ] Launching Daemon at Sat Jun 13 23:18:38 IST 2026
[2026-06-13 23:18:38,717.717 INFO    ] ================================================
[2026-06-13 23:18:39,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:39
[2026-06-13 23:18:39,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:18:39,523.523 INFO    ] Initializing speech engine...
[2026-06-13 23:18:39,534.534 INFO    ] 2026-06-13 23:18:39
[2026-06-13 23:18:39,736.736 INFO    ] 2026-06-13 23:18:39
[2026-06-13 23:18:39,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:18:39,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:18:39,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:18:40,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:18:40,153.153 INFO    ] time= 13/06/2026 23:18:40
[2026-06-13 23:18:40,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:18:40,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:18:40,250.250 INFO    ] No existing commands found in stream
[2026-06-13 23:18:45,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:18:45,263.263 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-13 23:18:47,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:18:47,835.835 INFO    ] Checking for system updates...
[2026-06-13 23:18:47,857.857 INFO    ] 200
[2026-06-13 23:18:47,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:47,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:47,890.890 INFO    ] No update needed
[2026-06-13 23:18:47,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:47,915.915 INFO    ] 200
[2026-06-13 23:18:47,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:47,941.941 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:47,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:18:47,977.977 INFO    ] No camera update needed
[2026-06-13 23:18:47,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:47,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:47,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:47,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:50,025.025 INFO    ] ================================================
[2026-06-13 23:18:50,040.040 INFO    ] Launching Daemon at Sat Jun 13 23:18:50 IST 2026
[2026-06-13 23:18:50,051.051 INFO    ] ================================================
[2026-06-13 23:18:50,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:50
[2026-06-13 23:18:50,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:18:50,893.893 INFO    ] Initializing speech engine...
[2026-06-13 23:18:50,906.906 INFO    ] 2026-06-13 23:18:50
[2026-06-13 23:18:51,119.119 INFO    ] 2026-06-13 23:18:51
[2026-06-13 23:18:51,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:18:51,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:18:51,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:18:51,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:18:51,527.527 INFO    ] time= 13/06/2026 23:18:51
[2026-06-13 23:18:51,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:18:51,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:18:51,638.638 INFO    ] No existing commands found in stream
[2026-06-13 23:18:56,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:18:56,652.652 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-13 23:18:57,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:18:57,050.050 INFO    ] Checking for system updates...
[2026-06-13 23:18:57,072.072 INFO    ] 200
[2026-06-13 23:18:57,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:57,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:57,108.108 INFO    ] No update needed
[2026-06-13 23:18:57,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 23:18:57,129.129 INFO    ] 200
[2026-06-13 23:18:57,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:18:57,154.154 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:18:57,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:18:57,182.182 INFO    ] No camera update needed
[2026-06-13 23:18:57,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:18:57,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:18:57,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:18:57,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:18:59,230.230 INFO    ] ================================================
[2026-06-13 23:18:59,245.245 INFO    ] Launching Daemon at Sat Jun 13 23:18:59 IST 2026
[2026-06-13 23:18:59,256.256 INFO    ] ================================================
[2026-06-13 23:18:59,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:18:59
[2026-06-13 23:18:59,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:00,031.031 INFO    ] Initializing speech engine...
[2026-06-13 23:19:00,035.035 INFO    ] 2026-06-13 23:19:00
[2026-06-13 23:19:00,232.232 INFO    ] 2026-06-13 23:19:00
[2026-06-13 23:19:00,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:00,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:00,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:00,690.690 INFO    ] time= 13/06/2026 23:19:00
[2026-06-13 23:19:00,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:00,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:00,828.828 INFO    ] No existing commands found in stream
[2026-06-13 23:19:05,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:05,842.842 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-13 23:19:09,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:19:09,555.555 INFO    ] Checking for system updates...
[2026-06-13 23:19:09,575.575 INFO    ] 200
[2026-06-13 23:19:09,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:09,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:09,609.609 INFO    ] No update needed
[2026-06-13 23:19:09,610.610 INFO    ] Checking for camera pi updates...
[2026-06-13 23:19:09,630.630 INFO    ] 200
[2026-06-13 23:19:09,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:09,654.654 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:19:09,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:09,703.703 INFO    ] No camera update needed
[2026-06-13 23:19:09,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:19:09,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:19:09,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:19:09,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:19:11,751.751 INFO    ] ================================================
[2026-06-13 23:19:11,767.767 INFO    ] Launching Daemon at Sat Jun 13 23:19:11 IST 2026
[2026-06-13 23:19:11,778.778 INFO    ] ================================================
[2026-06-13 23:19:12,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:19:12
[2026-06-13 23:19:12,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:12,589.589 INFO    ] Initializing speech engine...
[2026-06-13 23:19:12,602.602 INFO    ] 2026-06-13 23:19:12
[2026-06-13 23:19:12,823.823 INFO    ] 2026-06-13 23:19:12
[2026-06-13 23:19:12,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:12,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:13,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:13,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:13,258.258 INFO    ] time= 13/06/2026 23:19:13
[2026-06-13 23:19:13,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:13,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:13,379.379 INFO    ] No existing commands found in stream
[2026-06-13 23:19:18,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:18,391.391 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-13 23:19:20,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:19:20,275.275 INFO    ] Checking for system updates...
[2026-06-13 23:19:20,297.297 INFO    ] 200
[2026-06-13 23:19:20,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:20,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:19:20,337.337 INFO    ] No update needed
[2026-06-13 23:19:20,339.339 INFO    ] Checking for camera pi updates...
[2026-06-13 23:19:20,360.360 INFO    ] 200
[2026-06-13 23:19:20,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:20,386.386 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:19:20,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:19:20,426.426 INFO    ] No camera update needed
[2026-06-13 23:19:20,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:19:20,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:19:20,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:19:20,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:19:22,475.475 INFO    ] ================================================
[2026-06-13 23:19:22,492.492 INFO    ] Launching Daemon at Sat Jun 13 23:19:22 IST 2026
[2026-06-13 23:19:22,503.503 INFO    ] ================================================
[2026-06-13 23:19:22,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:19:22
[2026-06-13 23:19:23,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:23,308.308 INFO    ] Initializing speech engine...
[2026-06-13 23:19:23,313.313 INFO    ] 2026-06-13 23:19:23
[2026-06-13 23:19:23,517.517 INFO    ] 2026-06-13 23:19:23
[2026-06-13 23:19:23,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:23,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:23,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:23,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:23,917.917 INFO    ] time= 13/06/2026 23:19:23
[2026-06-13 23:19:23,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:23,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:24,039.039 INFO    ] No existing commands found in stream
[2026-06-13 23:19:29,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:29,055.055 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 23:19:30,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:19:30,316.316 INFO    ] Checking for system updates...
[2026-06-13 23:19:30,337.337 INFO    ] 200
[2026-06-13 23:19:30,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:30,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:19:30,378.378 INFO    ] No update needed
[2026-06-13 23:19:30,379.379 INFO    ] Checking for camera pi updates...
[2026-06-13 23:19:30,398.398 INFO    ] 200
[2026-06-13 23:19:30,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:30,423.423 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:19:30,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:30,455.455 INFO    ] No camera update needed
[2026-06-13 23:19:30,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:19:30,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:19:30,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:19:30,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:19:32,509.509 INFO    ] ================================================
[2026-06-13 23:19:32,524.524 INFO    ] Launching Daemon at Sat Jun 13 23:19:32 IST 2026
[2026-06-13 23:19:32,535.535 INFO    ] ================================================
[2026-06-13 23:19:32,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:19:32
[2026-06-13 23:19:33,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:33,349.349 INFO    ] Initializing speech engine...
[2026-06-13 23:19:33,352.352 INFO    ] 2026-06-13 23:19:33
[2026-06-13 23:19:33,565.565 INFO    ] 2026-06-13 23:19:33
[2026-06-13 23:19:33,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:33,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:33,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:33,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:33,989.989 INFO    ] time= 13/06/2026 23:19:33
[2026-06-13 23:19:34,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:34,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:34,121.121 INFO    ] No existing commands found in stream
[2026-06-13 23:19:39,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:39,134.134 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-13 23:19:40,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:19:40,420.420 INFO    ] Checking for system updates...
[2026-06-13 23:19:40,443.443 INFO    ] 200
[2026-06-13 23:19:40,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:40,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:40,477.477 INFO    ] No update needed
[2026-06-13 23:19:40,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 23:19:40,501.501 INFO    ] 200
[2026-06-13 23:19:40,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:40,528.528 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:19:40,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:40,567.567 INFO    ] No camera update needed
[2026-06-13 23:19:40,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:19:40,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:19:40,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:19:40,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:19:42,618.618 INFO    ] ================================================
[2026-06-13 23:19:42,634.634 INFO    ] Launching Daemon at Sat Jun 13 23:19:42 IST 2026
[2026-06-13 23:19:42,646.646 INFO    ] ================================================
[2026-06-13 23:19:43,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:19:43
[2026-06-13 23:19:43,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:43,526.526 INFO    ] Initializing speech engine...
[2026-06-13 23:19:43,532.532 INFO    ] 2026-06-13 23:19:43
[2026-06-13 23:19:43,744.744 INFO    ] 2026-06-13 23:19:43
[2026-06-13 23:19:43,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:43,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:43,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:44,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:44,168.168 INFO    ] time= 13/06/2026 23:19:44
[2026-06-13 23:19:44,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:44,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:44,273.273 INFO    ] No existing commands found in stream
[2026-06-13 23:19:49,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:49,291.291 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-13 23:19:50,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:19:50,960.960 INFO    ] Checking for system updates...
[2026-06-13 23:19:50,982.982 INFO    ] 200
[2026-06-13 23:19:50,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:51,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:51,020.020 INFO    ] No update needed
[2026-06-13 23:19:51,022.022 INFO    ] Checking for camera pi updates...
[2026-06-13 23:19:51,044.044 INFO    ] 200
[2026-06-13 23:19:51,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:19:51,071.071 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:19:51,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:19:51,110.110 INFO    ] No camera update needed
[2026-06-13 23:19:51,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:19:51,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:19:51,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:19:51,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:19:53,159.159 INFO    ] ================================================
[2026-06-13 23:19:53,175.175 INFO    ] Launching Daemon at Sat Jun 13 23:19:53 IST 2026
[2026-06-13 23:19:53,186.186 INFO    ] ================================================
[2026-06-13 23:19:53,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:19:53
[2026-06-13 23:19:53,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:19:53,981.981 INFO    ] Initializing speech engine...
[2026-06-13 23:19:53,984.984 INFO    ] 2026-06-13 23:19:53
[2026-06-13 23:19:54,205.205 INFO    ] 2026-06-13 23:19:54
[2026-06-13 23:19:54,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:19:54,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:19:54,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:19:54,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:19:54,619.619 INFO    ] time= 13/06/2026 23:19:54
[2026-06-13 23:19:54,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:19:54,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:19:54,731.731 INFO    ] No existing commands found in stream
[2026-06-13 23:19:59,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:19:59,744.744 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 23:20:07,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:20:07,798.798 INFO    ] Checking for system updates...
[2026-06-13 23:20:07,834.834 INFO    ] 200
[2026-06-13 23:20:07,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:07,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:07,892.892 INFO    ] No update needed
[2026-06-13 23:20:07,894.894 INFO    ] Checking for camera pi updates...
[2026-06-13 23:20:07,929.929 INFO    ] 200
[2026-06-13 23:20:07,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:07,973.973 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:20:08,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:08,119.119 INFO    ] No camera update needed
[2026-06-13 23:20:08,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:20:08,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:20:08,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:20:08,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:20:10,175.175 INFO    ] ================================================
[2026-06-13 23:20:10,192.192 INFO    ] Launching Daemon at Sat Jun 13 23:20:10 IST 2026
[2026-06-13 23:20:10,203.203 INFO    ] ================================================
[2026-06-13 23:20:10,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:20:10
[2026-06-13 23:20:11,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:20:11,440.440 INFO    ] Initializing speech engine...
[2026-06-13 23:20:11,446.446 INFO    ] 2026-06-13 23:20:11
[2026-06-13 23:20:11,708.708 INFO    ] 2026-06-13 23:20:11
[2026-06-13 23:20:11,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:20:12,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:20:12,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:20:12,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:20:12,185.185 INFO    ] time= 13/06/2026 23:20:12
[2026-06-13 23:20:12,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:20:12,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:20:12,386.386 INFO    ] No existing commands found in stream
[2026-06-13 23:20:17,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:20:17,404.404 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-13 23:20:19,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:20:19,442.442 INFO    ] Checking for system updates...
[2026-06-13 23:20:19,462.462 INFO    ] 200
[2026-06-13 23:20:19,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:19,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:19,500.500 INFO    ] No update needed
[2026-06-13 23:20:19,501.501 INFO    ] Checking for camera pi updates...
[2026-06-13 23:20:19,521.521 INFO    ] 200
[2026-06-13 23:20:19,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:19,546.546 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:20:19,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:19,590.590 INFO    ] No camera update needed
[2026-06-13 23:20:19,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:20:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:20:19,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:20:19,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:20:21,638.638 INFO    ] ================================================
[2026-06-13 23:20:21,654.654 INFO    ] Launching Daemon at Sat Jun 13 23:20:21 IST 2026
[2026-06-13 23:20:21,665.665 INFO    ] ================================================
[2026-06-13 23:20:22,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:20:22
[2026-06-13 23:20:22,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:20:23,036.036 INFO    ] Initializing speech engine...
[2026-06-13 23:20:23,061.061 INFO    ] 2026-06-13 23:20:23
[2026-06-13 23:20:23,340.340 INFO    ] 2026-06-13 23:20:23
[2026-06-13 23:20:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:20:23,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:20:23,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:20:23,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:20:23,720.720 INFO    ] time= 13/06/2026 23:20:23
[2026-06-13 23:20:23,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:20:23,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:20:23,847.847 INFO    ] No existing commands found in stream
[2026-06-13 23:20:28,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:20:28,862.862 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 23:20:29,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:20:29,336.336 INFO    ] Checking for system updates...
[2026-06-13 23:20:29,357.357 INFO    ] 200
[2026-06-13 23:20:29,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:29,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:20:29,390.390 INFO    ] No update needed
[2026-06-13 23:20:29,391.391 INFO    ] Checking for camera pi updates...
[2026-06-13 23:20:29,411.411 INFO    ] 200
[2026-06-13 23:20:29,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:29,439.439 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:20:29,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:20:29,474.474 INFO    ] No camera update needed
[2026-06-13 23:20:29,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:20:29,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:20:29,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:20:29,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:20:31,522.522 INFO    ] ================================================
[2026-06-13 23:20:31,538.538 INFO    ] Launching Daemon at Sat Jun 13 23:20:31 IST 2026
[2026-06-13 23:20:31,549.549 INFO    ] ================================================
[2026-06-13 23:20:31,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:20:31
[2026-06-13 23:20:32,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:20:32,489.489 INFO    ] Initializing speech engine...
[2026-06-13 23:20:32,495.495 INFO    ] 2026-06-13 23:20:32
[2026-06-13 23:20:32,704.704 INFO    ] 2026-06-13 23:20:32
[2026-06-13 23:20:32,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:20:32,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:20:32,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:20:33,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:20:33,122.122 INFO    ] time= 13/06/2026 23:20:33
[2026-06-13 23:20:33,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:20:33,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:20:33,229.229 INFO    ] No existing commands found in stream
[2026-06-13 23:20:38,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:20:38,244.244 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-13 23:20:41,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:20:41,678.678 INFO    ] Checking for system updates...
[2026-06-13 23:20:41,699.699 INFO    ] 200
[2026-06-13 23:20:41,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:41,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:41,733.733 INFO    ] No update needed
[2026-06-13 23:20:41,734.734 INFO    ] Checking for camera pi updates...
[2026-06-13 23:20:41,755.755 INFO    ] 200
[2026-06-13 23:20:41,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:41,781.781 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:20:41,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:20:41,822.822 INFO    ] No camera update needed
[2026-06-13 23:20:41,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:20:41,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:20:41,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:20:41,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:20:43,871.871 INFO    ] ================================================
[2026-06-13 23:20:43,887.887 INFO    ] Launching Daemon at Sat Jun 13 23:20:43 IST 2026
[2026-06-13 23:20:43,899.899 INFO    ] ================================================
[2026-06-13 23:20:44,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:20:44
[2026-06-13 23:20:44,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:20:45,188.188 INFO    ] Initializing speech engine...
[2026-06-13 23:20:45,199.199 INFO    ] 2026-06-13 23:20:45
[2026-06-13 23:20:45,490.490 INFO    ] 2026-06-13 23:20:45
[2026-06-13 23:20:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:20:45,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:20:45,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:20:45,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:20:45,944.944 INFO    ] time= 13/06/2026 23:20:45
[2026-06-13 23:20:45,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:20:46,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:20:46,174.174 INFO    ] No existing commands found in stream
[2026-06-13 23:20:51,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:20:51,204.204 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 23:20:53,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:20:53,911.911 INFO    ] Checking for system updates...
[2026-06-13 23:20:53,932.932 INFO    ] 200
[2026-06-13 23:20:53,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:53,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:20:53,966.966 INFO    ] No update needed
[2026-06-13 23:20:53,967.967 INFO    ] Checking for camera pi updates...
[2026-06-13 23:20:53,989.989 INFO    ] 200
[2026-06-13 23:20:53,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:20:54,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:20:54,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:20:54,065.065 INFO    ] No camera update needed
[2026-06-13 23:20:54,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:20:54,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:20:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:20:54,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:20:56,114.114 INFO    ] ================================================
[2026-06-13 23:20:56,131.131 INFO    ] Launching Daemon at Sat Jun 13 23:20:56 IST 2026
[2026-06-13 23:20:56,142.142 INFO    ] ================================================
[2026-06-13 23:20:56,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:20:56
[2026-06-13 23:20:56,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:20:56,958.958 INFO    ] Initializing speech engine...
[2026-06-13 23:20:56,961.961 INFO    ] 2026-06-13 23:20:56
[2026-06-13 23:20:57,156.156 INFO    ] 2026-06-13 23:20:57
[2026-06-13 23:20:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:20:57,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:20:57,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:20:57,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:20:57,576.576 INFO    ] time= 13/06/2026 23:20:57
[2026-06-13 23:20:57,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:20:57,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:20:57,757.757 INFO    ] No existing commands found in stream
[2026-06-13 23:21:02,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:02,769.769 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-13 23:21:03,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:21:03,510.510 INFO    ] Checking for system updates...
[2026-06-13 23:21:03,543.543 INFO    ] 200
[2026-06-13 23:21:03,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:03,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:21:03,601.601 INFO    ] No update needed
[2026-06-13 23:21:03,604.604 INFO    ] Checking for camera pi updates...
[2026-06-13 23:21:03,639.639 INFO    ] 200
[2026-06-13 23:21:03,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:03,682.682 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:21:03,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:21:03,724.724 INFO    ] No camera update needed
[2026-06-13 23:21:03,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:21:03,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:21:03,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:21:03,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:21:05,780.780 INFO    ] ================================================
[2026-06-13 23:21:05,795.795 INFO    ] Launching Daemon at Sat Jun 13 23:21:05 IST 2026
[2026-06-13 23:21:05,807.807 INFO    ] ================================================
[2026-06-13 23:21:06,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:21:06
[2026-06-13 23:21:06,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:21:06,641.641 INFO    ] Initializing speech engine...
[2026-06-13 23:21:06,647.647 INFO    ] 2026-06-13 23:21:06
[2026-06-13 23:21:06,855.855 INFO    ] 2026-06-13 23:21:06
[2026-06-13 23:21:06,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:21:07,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:21:07,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:21:07,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:21:07,268.268 INFO    ] time= 13/06/2026 23:21:07
[2026-06-13 23:21:07,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:21:07,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:21:07,377.377 INFO    ] No existing commands found in stream
[2026-06-13 23:21:12,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:12,391.391 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 23:21:14,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:21:14,499.499 INFO    ] Checking for system updates...
[2026-06-13 23:21:14,520.520 INFO    ] 200
[2026-06-13 23:21:14,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:14,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:14,553.553 INFO    ] No update needed
[2026-06-13 23:21:14,554.554 INFO    ] Checking for camera pi updates...
[2026-06-13 23:21:14,574.574 INFO    ] 200
[2026-06-13 23:21:14,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:14,602.602 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:21:14,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:14,640.640 INFO    ] No camera update needed
[2026-06-13 23:21:14,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:21:14,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:21:14,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:21:14,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:21:16,690.690 INFO    ] ================================================
[2026-06-13 23:21:16,705.705 INFO    ] Launching Daemon at Sat Jun 13 23:21:16 IST 2026
[2026-06-13 23:21:16,716.716 INFO    ] ================================================
[2026-06-13 23:21:17,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:21:17
[2026-06-13 23:21:17,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:21:17,600.600 INFO    ] Initializing speech engine...
[2026-06-13 23:21:17,608.608 INFO    ] 2026-06-13 23:21:17
[2026-06-13 23:21:17,809.809 INFO    ] 2026-06-13 23:21:17
[2026-06-13 23:21:17,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:21:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:21:17,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:21:18,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:21:18,200.200 INFO    ] time= 13/06/2026 23:21:18
[2026-06-13 23:21:18,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:21:18,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:21:18,363.363 INFO    ] No existing commands found in stream
[2026-06-13 23:21:23,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:23,386.386 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-13 23:21:25,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:21:25,041.041 INFO    ] Checking for system updates...
[2026-06-13 23:21:25,063.063 INFO    ] 200
[2026-06-13 23:21:25,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:25,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:21:25,097.097 INFO    ] No update needed
[2026-06-13 23:21:25,098.098 INFO    ] Checking for camera pi updates...
[2026-06-13 23:21:25,118.118 INFO    ] 200
[2026-06-13 23:21:25,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:25,144.144 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:21:25,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:21:25,189.189 INFO    ] No camera update needed
[2026-06-13 23:21:25,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:21:25,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:21:25,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:21:25,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:21:27,236.236 INFO    ] ================================================
[2026-06-13 23:21:27,252.252 INFO    ] Launching Daemon at Sat Jun 13 23:21:27 IST 2026
[2026-06-13 23:21:27,264.264 INFO    ] ================================================
[2026-06-13 23:21:27,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:21:27
[2026-06-13 23:21:27,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:21:28,140.140 INFO    ] Initializing speech engine...
[2026-06-13 23:21:28,147.147 INFO    ] 2026-06-13 23:21:28
[2026-06-13 23:21:28,357.357 INFO    ] 2026-06-13 23:21:28
[2026-06-13 23:21:28,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:21:28,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:21:28,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:21:28,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:21:28,779.779 INFO    ] time= 13/06/2026 23:21:28
[2026-06-13 23:21:28,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:21:28,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:21:28,882.882 INFO    ] No existing commands found in stream
[2026-06-13 23:21:33,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:33,894.894 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 23:21:36,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:21:36,731.731 INFO    ] Checking for system updates...
[2026-06-13 23:21:36,752.752 INFO    ] 200
[2026-06-13 23:21:36,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:36,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:36,789.789 INFO    ] No update needed
[2026-06-13 23:21:36,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 23:21:36,810.810 INFO    ] 200
[2026-06-13 23:21:36,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:36,835.835 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:21:36,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:36,870.870 INFO    ] No camera update needed
[2026-06-13 23:21:36,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:21:36,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:21:36,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:21:36,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:21:38,916.916 INFO    ] ================================================
[2026-06-13 23:21:38,932.932 INFO    ] Launching Daemon at Sat Jun 13 23:21:38 IST 2026
[2026-06-13 23:21:38,942.942 INFO    ] ================================================
[2026-06-13 23:21:39,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:21:39
[2026-06-13 23:21:39,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:21:39,732.732 INFO    ] Initializing speech engine...
[2026-06-13 23:21:39,736.736 INFO    ] 2026-06-13 23:21:39
[2026-06-13 23:21:39,949.949 INFO    ] 2026-06-13 23:21:39
[2026-06-13 23:21:39,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:21:40,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:21:40,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:21:40,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:21:40,375.375 INFO    ] time= 13/06/2026 23:21:40
[2026-06-13 23:21:40,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:21:40,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:21:40,577.577 INFO    ] No existing commands found in stream
[2026-06-13 23:21:45,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:45,611.611 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-13 23:21:48,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:21:48,872.872 INFO    ] Checking for system updates...
[2026-06-13 23:21:48,894.894 INFO    ] 200
[2026-06-13 23:21:48,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:48,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:48,928.928 INFO    ] No update needed
[2026-06-13 23:21:48,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 23:21:48,950.950 INFO    ] 200
[2026-06-13 23:21:48,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:21:48,975.975 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:21:49,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:21:49,017.017 INFO    ] No camera update needed
[2026-06-13 23:21:49,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:21:49,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:21:49,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:21:49,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:21:51,066.066 INFO    ] ================================================
[2026-06-13 23:21:51,081.081 INFO    ] Launching Daemon at Sat Jun 13 23:21:51 IST 2026
[2026-06-13 23:21:51,091.091 INFO    ] ================================================
[2026-06-13 23:21:51,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:21:51
[2026-06-13 23:21:51,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:21:51,927.927 INFO    ] Initializing speech engine...
[2026-06-13 23:21:51,931.931 INFO    ] 2026-06-13 23:21:51
[2026-06-13 23:21:52,140.140 INFO    ] 2026-06-13 23:21:52
[2026-06-13 23:21:52,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:21:52,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:21:52,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:21:52,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:21:52,558.558 INFO    ] time= 13/06/2026 23:21:52
[2026-06-13 23:21:52,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:21:52,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:21:52,655.655 INFO    ] No existing commands found in stream
[2026-06-13 23:21:57,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:21:57,667.667 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-13 23:22:00,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:22:00,109.109 INFO    ] Checking for system updates...
[2026-06-13 23:22:00,145.145 INFO    ] 200
[2026-06-13 23:22:00,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:00,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:22:00,204.204 INFO    ] No update needed
[2026-06-13 23:22:00,206.206 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:00,246.246 INFO    ] 200
[2026-06-13 23:22:00,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:00,295.295 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:00,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:22:00,332.332 INFO    ] No camera update needed
[2026-06-13 23:22:00,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:00,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:00,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:00,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:02,364.364 INFO    ] ================================================
[2026-06-13 23:22:02,373.373 INFO    ] Launching Daemon at Sat Jun 13 23:22:02 IST 2026
[2026-06-13 23:22:02,379.379 INFO    ] ================================================
[2026-06-13 23:22:02,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:02
[2026-06-13 23:22:03,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:22:03,530.530 INFO    ] Initializing speech engine...
[2026-06-13 23:22:03,539.539 INFO    ] 2026-06-13 23:22:03
[2026-06-13 23:22:03,790.790 INFO    ] 2026-06-13 23:22:03
[2026-06-13 23:22:03,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:22:04,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:22:04,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:22:04,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:22:04,148.148 INFO    ] time= 13/06/2026 23:22:04
[2026-06-13 23:22:04,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:22:04,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:22:04,244.244 INFO    ] No existing commands found in stream
[2026-06-13 23:22:09,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:22:09,265.265 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 23:22:12,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:22:12,074.074 INFO    ] Checking for system updates...
[2026-06-13 23:22:12,095.095 INFO    ] 200
[2026-06-13 23:22:12,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:12,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:12,128.128 INFO    ] No update needed
[2026-06-13 23:22:12,129.129 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:12,149.149 INFO    ] 200
[2026-06-13 23:22:12,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:12,176.176 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:12,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:12,318.318 INFO    ] No camera update needed
[2026-06-13 23:22:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:12,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:12,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:12,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:14,367.367 INFO    ] ================================================
[2026-06-13 23:22:14,382.382 INFO    ] Launching Daemon at Sat Jun 13 23:22:14 IST 2026
[2026-06-13 23:22:14,393.393 INFO    ] ================================================
[2026-06-13 23:22:14,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:14
[2026-06-13 23:22:15,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:22:15,207.207 INFO    ] Initializing speech engine...
[2026-06-13 23:22:15,211.211 INFO    ] 2026-06-13 23:22:15
[2026-06-13 23:22:15,429.429 INFO    ] 2026-06-13 23:22:15
[2026-06-13 23:22:15,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:22:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:22:15,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:22:15,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:22:15,843.843 INFO    ] time= 13/06/2026 23:22:15
[2026-06-13 23:22:15,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:22:15,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:22:15,950.950 INFO    ] No existing commands found in stream
[2026-06-13 23:22:20,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:22:20,962.962 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-13 23:22:23,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:22:23,290.290 INFO    ] Checking for system updates...
[2026-06-13 23:22:23,311.311 INFO    ] 200
[2026-06-13 23:22:23,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:23,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:23,344.344 INFO    ] No update needed
[2026-06-13 23:22:23,345.345 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:23,365.365 INFO    ] 200
[2026-06-13 23:22:23,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:23,389.389 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:23,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:23,426.426 INFO    ] No camera update needed
[2026-06-13 23:22:23,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:23,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:23,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:23,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:25,471.471 INFO    ] ================================================
[2026-06-13 23:22:25,487.487 INFO    ] Launching Daemon at Sat Jun 13 23:22:25 IST 2026
[2026-06-13 23:22:25,497.497 INFO    ] ================================================
[2026-06-13 23:22:25,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:25
[2026-06-13 23:22:26,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:22:26,369.369 INFO    ] Initializing speech engine...
[2026-06-13 23:22:26,373.373 INFO    ] 2026-06-13 23:22:26
[2026-06-13 23:22:26,589.589 INFO    ] 2026-06-13 23:22:26
[2026-06-13 23:22:26,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:22:26,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:22:26,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:22:26,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:22:27,008.008 INFO    ] time= 13/06/2026 23:22:26
[2026-06-13 23:22:27,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:22:27,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:22:27,104.104 INFO    ] No existing commands found in stream
[2026-06-13 23:22:32,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:22:32,117.117 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-13 23:22:35,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:22:35,143.143 INFO    ] Checking for system updates...
[2026-06-13 23:22:35,163.163 INFO    ] 200
[2026-06-13 23:22:35,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:35,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:35,200.200 INFO    ] No update needed
[2026-06-13 23:22:35,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:35,222.222 INFO    ] 200
[2026-06-13 23:22:35,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:35,246.246 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:35,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:35,287.287 INFO    ] No camera update needed
[2026-06-13 23:22:35,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:35,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:35,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:35,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:37,335.335 INFO    ] ================================================
[2026-06-13 23:22:37,351.351 INFO    ] Launching Daemon at Sat Jun 13 23:22:37 IST 2026
[2026-06-13 23:22:37,362.362 INFO    ] ================================================
[2026-06-13 23:22:37,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:37
[2026-06-13 23:22:38,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:22:38,160.160 INFO    ] Initializing speech engine...
[2026-06-13 23:22:38,165.165 INFO    ] 2026-06-13 23:22:38
[2026-06-13 23:22:38,363.363 INFO    ] 2026-06-13 23:22:38
[2026-06-13 23:22:38,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:22:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:22:38,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:22:38,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:22:38,774.774 INFO    ] time= 13/06/2026 23:22:38
[2026-06-13 23:22:38,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:22:38,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:22:38,957.957 INFO    ] No existing commands found in stream
[2026-06-13 23:22:43,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:22:43,969.969 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 23:22:45,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:22:45,867.867 INFO    ] Checking for system updates...
[2026-06-13 23:22:45,888.888 INFO    ] 200
[2026-06-13 23:22:45,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:45,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:45,922.922 INFO    ] No update needed
[2026-06-13 23:22:45,924.924 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:45,944.944 INFO    ] 200
[2026-06-13 23:22:45,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:45,969.969 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:46,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:46,010.010 INFO    ] No camera update needed
[2026-06-13 23:22:46,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:46,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:46,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:46,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:48,060.060 INFO    ] ================================================
[2026-06-13 23:22:48,075.075 INFO    ] Launching Daemon at Sat Jun 13 23:22:48 IST 2026
[2026-06-13 23:22:48,086.086 INFO    ] ================================================
[2026-06-13 23:22:48,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:48
[2026-06-13 23:22:48,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:22:48,881.881 INFO    ] Initializing speech engine...
[2026-06-13 23:22:48,894.894 INFO    ] 2026-06-13 23:22:48
[2026-06-13 23:22:49,115.115 INFO    ] 2026-06-13 23:22:49
[2026-06-13 23:22:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:22:49,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:22:49,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:22:49,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:22:49,553.553 INFO    ] time= 13/06/2026 23:22:49
[2026-06-13 23:22:49,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:22:49,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:22:49,676.676 INFO    ] No existing commands found in stream
[2026-06-13 23:22:54,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:22:54,690.690 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-13 23:22:57,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:22:57,320.320 INFO    ] Checking for system updates...
[2026-06-13 23:22:57,342.342 INFO    ] 200
[2026-06-13 23:22:57,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:57,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:57,375.375 INFO    ] No update needed
[2026-06-13 23:22:57,376.376 INFO    ] Checking for camera pi updates...
[2026-06-13 23:22:57,396.396 INFO    ] 200
[2026-06-13 23:22:57,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:22:57,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:22:57,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:22:57,464.464 INFO    ] No camera update needed
[2026-06-13 23:22:57,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:22:57,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:22:57,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:22:57,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:22:59,511.511 INFO    ] ================================================
[2026-06-13 23:22:59,525.525 INFO    ] Launching Daemon at Sat Jun 13 23:22:59 IST 2026
[2026-06-13 23:22:59,536.536 INFO    ] ================================================
[2026-06-13 23:22:59,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:22:59
[2026-06-13 23:23:00,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:23:00,333.333 INFO    ] Initializing speech engine...
[2026-06-13 23:23:00,338.338 INFO    ] 2026-06-13 23:23:00
[2026-06-13 23:23:00,543.543 INFO    ] 2026-06-13 23:23:00
[2026-06-13 23:23:00,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:23:00,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:23:00,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:23:00,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:23:00,948.948 INFO    ] time= 13/06/2026 23:23:00
[2026-06-13 23:23:00,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:23:00,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:23:01,064.064 INFO    ] Found 1 existing command(s) in stream
[2026-06-13 23:23:01,065.065 INFO    ] Checking historical command: ID=1781373179664-0
[2026-06-13 23:23:01,091.091 INFO    ] process_and_cleanup_command: msg_id=1781373179664-0
[2026-06-13 23:23:01,092.092 INFO    ] is_command_expired: timestamp=2026-06-13T17:52:59.396Z, expiry=30s
[2026-06-13 23:23:01,201.201 INFO    ] Command removed from stream: 1781373179664-0. returning for processing...
[2026-06-13 23:23:01,205.205 INFO    ] ***** get_valid_command
[2026-06-13 23:23:01,207.207 INFO    ] {'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-13T17:52:59.396Z', 'data': '{"request_id":"start-order-1781373179396-3k6oy5fp9","orderId":"TM08202203260613232217928","is_vending":false}', 'source': 'webapp'}
[2026-06-13 23:23:01,212.212 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781373179396-3k6oy5fp9', 'orderId': 'TM08202203260613232217928'}
[2026-06-13 23:23:01,216.216 INFO    ] Handling start order...
[2026-06-13 23:23:01,219.219 INFO    ] handle_start_order_command
[2026-06-13 23:23:01,226.226 INFO    ] _send_start_order_success: request_id=start-order-1781373179396-3k6oy5fp9, order_id=TM08202203260613232217928
[2026-06-13 23:23:01,229.229 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 23:23:01,281.281 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781373181238-0
[2026-06-13 23:23:01,284.284 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 23:23:01,287.287 INFO    ] Checking for system updates...
[2026-06-13 23:23:01,316.316 INFO    ] 200
[2026-06-13 23:23:01,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:01,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:23:01,359.359 INFO    ] No update needed
[2026-06-13 23:23:01,365.365 INFO    ] Checking for camera pi updates...
[2026-06-13 23:23:01,445.445 INFO    ] 200
[2026-06-13 23:23:01,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:01,534.534 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:23:01,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:23:01,587.587 INFO    ] No camera update needed
[2026-06-13 23:23:01,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:23:01,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:23:01,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:23:01,616.616 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 23:23:01,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:23:03,690.690 INFO    ] ================================================
[2026-06-13 23:23:03,705.705 INFO    ] Launching Daemon at Sat Jun 13 23:23:03 IST 2026
[2026-06-13 23:23:03,716.716 INFO    ] ================================================
[2026-06-13 23:23:04,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:23:04
[2026-06-13 23:23:04,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:23:04,503.503 INFO    ] Initializing speech engine...
[2026-06-13 23:23:04,519.519 INFO    ] 2026-06-13 23:23:04
[2026-06-13 23:23:04,775.775 INFO    ] 2026-06-13 23:23:04
[2026-06-13 23:23:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:23:05,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:23:05,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:23:05,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:23:05,137.137 INFO    ] time= 13/06/2026 23:23:05
[2026-06-13 23:23:05,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:23:05,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:23:05,238.238 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 23:23:05,303.303 INFO    ] Checking historical command: ID=1781373181238-0
[2026-06-13 23:23:05,358.358 INFO    ] process_and_cleanup_command: msg_id=1781373181238-0
[2026-06-13 23:23:05,370.370 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:01.227649Z, expiry=30s
[2026-06-13 23:23:05,538.538 INFO    ] Command removed from stream: 1781373181238-0. returning for processing...
[2026-06-13 23:23:05,568.568 INFO    ] ***** get_valid_command
[2026-06-13 23:23:05,629.629 INFO    ] {'message': 'start-order success', 'timestamp': '2026-06-13T17:53:01.227649Z', 'metadata_order_id': 'TM08202203260613232217928', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781373179396-3k6oy5fp9', 'imei': 'TM08202203', 'status': 'success'}
[2026-06-13 23:23:05,669.669 INFO    ] Checking historical command: ID=1781373183650-0
[2026-06-13 23:23:05,697.697 INFO    ] process_and_cleanup_command: msg_id=1781373183650-0
[2026-06-13 23:23:05,757.757 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:03.455Z, expiry=30s
[2026-06-13 23:23:05,867.867 INFO    ] Command removed from stream: 1781373183650-0. returning for processing...
[2026-06-13 23:23:05,917.917 INFO    ] ***** get_valid_command
[2026-06-13 23:23:05,920.920 INFO    ] {'timestamp': '2026-06-13T17:53:03.455Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781373183455-hoh9rn1z9","orderId":"TM08202203260613232217928","is_vending":false,"accessCode":"41701996"}'}
[2026-06-13 23:23:05,932.932 INFO    ] ***** Parsed command data: {'orderId': 'TM08202203260613232217928', 'accessCode': '41701996', 'request_id': 'process-order-1781373183455-hoh9rn1z9', 'is_vending': False}
[2026-06-13 23:23:05,935.935 INFO    ] Handling process order...
[2026-06-13 23:23:05,938.938 INFO    ] Processing process-order command...
[2026-06-13 23:23:05,941.941 INFO    ] 🔍 Lock file Order ID: TM08202203260613232217928, TS: 2026-06-13 23:23:01
[2026-06-13 23:23:05,990.990 INFO    ] ✅ Order lock valid for TM08202203260613232217928
[2026-06-13 23:23:06,055.055 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 23:23:06,103.103 INFO    ] processing access code 41701996 for order TM08202203260613232217928
[2026-06-13 23:23:06,111.111 INFO    ] 🔍 Lock file Order ID: TM08202203260613232217928, TS: 2026-06-13 23:23:01
[2026-06-13 23:23:06,115.115 INFO    ] ✅ Order lock valid for TM08202203260613232217928
[2026-06-13 23:23:06,159.159 INFO    ] 2026-06-13 23:23:06
[2026-06-13 23:23:06,249.249 INFO    ] 200
[2026-06-13 23:23:06,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:06,261.261 INFO    ] 41701996
[2026-06-13 23:23:06,266.266 INFO    ] 2026-06-13 23:23:06
[2026-06-13 23:23:06,270.270 INFO    ] session id :437513627
[2026-06-13 23:23:06,275.275 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=41701996&imei=TM08202203&session_id=437513627
[2026-06-13 23:23:07,289.289 INFO    ] 200
[2026-06-13 23:23:07,294.294 INFO    ] {"data": {"mobile": "8152074014", "order_id": "TM08202203260613232217928", "bill_amount": "60", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 2, "sku_total": 40, "offer_id": ""}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "1", "mrp": "10", "offer_desc": "", "name": "Modern kitchens Banana Chips 21gm", "tray_id": "11", "unit_price": 10, "qty": 2, "sku_total": 20, "offer_id": ""}], "access_code": "41701996", "invoice_bill": "60"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 23:23:07,304.304 INFO    ] 60
[2026-06-13 23:23:07,349.349 INFO    ] TM08202203260613232217928
[2026-06-13 23:23:07,383.383 INFO    ] 8152074014
[2026-06-13 23:23:07,406.406 INFO    ] 2026-06-13 23:23:07
[2026-06-13 23:23:07,413.413 INFO    ] Door Opening for user mobile ending with  four zero one four 
[2026-06-13 23:23:07,440.440 INFO    ] Door Opening for user mobile ending with  four zero one four 
[2026-06-13 23:23:07,446.446 INFO    ] 8f1dc77a390e72d4a52449bfc65363f2
[2026-06-13 23:23:07,451.451 INFO    ] 2026-06-13 23:23:07
[2026-06-13 23:23:07,456.456 INFO    ] playing audio file
[2026-06-13 23:23:07,477.477 INFO    ] 2026-06-13 23:23:07
[2026-06-13 23:23:07,491.491 INFO    ] 2026-06-13 23:23:07
[2026-06-13 23:23:07,502.502 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:07,512.512 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:07,603.603 INFO    ] [publish_status] Message added to stream with ID: 1781373187552-0
[2026-06-13 23:23:07,611.611 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40, "mrp": "20", "tray_id": "43", "offer_id": "", "unit_price": 20, "skuid": "185993", "qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_desc": "", "door_id": "2"}, {"image_url": "https://images.tinymart.in/product/4500648-25.webp", "sku_total": 20, "mrp": "10", "tray_id": "11", "offer_id": "", "unit_price": 10, "skuid": "4500648", "qty": 2, "name": "Modern kitchens Banana Chips 21gm", "offer_desc": "", "door_id": "1"}], "access_code": "41701996", "invoice_bill": "60", "order_id": "TM08202203260613232217928", "mobile": "8152074014", "bill_amount": "60"}}', 'order_id': 'TM08202203260613232217928', 'server_status': 'order-started', 'timestamp': '2026-06-13T17:53:07.494658Z'} (ID: 1781373187552-0)
[2026-06-13 23:23:08,058.058 INFO    ] {'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'mrp': '20', 'tray_id': '43', 'offer_id': '', 'unit_price': 20, 'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_desc': '', 'door_id': '2'}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20, 'mrp': '10', 'tray_id': '11', 'offer_id': '', 'unit_price': 10, 'skuid': '4500648', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm', 'offer_desc': '', 'door_id': '1'}], 'access_code': '41701996', 'invoice_bill': '60', 'order_id': 'TM08202203260613232217928', 'mobile': '8152074014', 'bill_amount': '60'}}, 'order_id': 'TM08202203260613232217928', 'server_status': 'order-started'}
[2026-06-13 23:23:08,066.066 INFO    ] 200
[2026-06-13 23:23:08,076.076 INFO    ] {"data":{"server_response":{"rstatus":true,"status":true,"msg":"Order Data","data":{"proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":40,"mrp":"20","tray_id":"43","offer_id":"","unit_price":20,"skuid":"185993","qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","offer_desc":"","door_id":"2"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","sku_total":20,"mrp":"10","tray_id":"11","offer_id":"","unit_price":10,"skuid":"4500648","qty":2,"name":"Modern kitchens Banana Chips 21gm","offer_desc":"","door_id":"1"}],"access_code":"41701996","invoice_bill":"60","order_id":"TM08202203260613232217928","mobile":"8152074014","bill_amount":"60"}},"order_id":"TM08202203260613232217928","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:08,080.080 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'order_id': 'TM08202203260613232217928', 'server_response': {'rstatus': True, 'status': True, 'data': {'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'mrp': '20', 'tray_id': '43', 'unit_price': 20, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2, 'offer_id': '', 'offer_desc': '', 'door_id': '2'}, {'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20, 'mrp': '10', 'tray_id': '11', 'unit_price': 10, 'skuid': '4500648', 'name': 'Modern kitchens Banana Chips 21gm', 'qty': 2, 'offer_id': '', 'offer_desc': '', 'door_id': '1'}], 'access_code': '41701996', 'invoice_bill': '60', 'order_id': 'TM08202203260613232217928', 'mobile': '8152074014', 'bill_amount': '60'}, 'msg': 'Order Data'}}}
[2026-06-13 23:23:08,089.089 INFO    ] 2026-06-13 23:23:08
[2026-06-13 23:23:08,117.117 INFO    ] 200
[2026-06-13 23:23:08,118.118 INFO    ] True
[2026-06-13 23:23:08,215.215 INFO    ] 200
[2026-06-13 23:23:08,216.216 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:08,218.218 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:08,220.220 INFO    ] *** process_order ***
[2026-06-13 23:23:09,406.406 INFO    ] 200
[2026-06-13 23:23:09,408.408 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 23:23:09,409.409 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 0}
[2026-06-13 23:23:09,411.411 INFO    ] *** process_order ***
[2026-06-13 23:23:09,412.412 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:09,413.413 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:09,508.508 INFO    ] [publish_status] Message added to stream with ID: 1781373189467-0
[2026-06-13 23:23:09,510.510 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": "", "Note": ""}, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True", "delay": 0}', 'order_id': 'TM08202203260613232217928', 'server_status': 'doorOpened'} (ID: 1781373189467-0)
[2026-06-13 23:23:10,555.555 INFO    ] 2026-06-13 23:23:10
[2026-06-13 23:23:10,557.557 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:10,560.560 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:10,626.626 INFO    ] [publish_status] Message added to stream with ID: 1781373190585-0
[2026-06-13 23:23:10,629.629 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}, "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True", "delay": 0}', 'order_id': 'TM08202203260613232217928', 'server_status': 'processOrder', 'timestamp': '2026-06-13T17:53:10.556311Z'} (ID: 1781373190585-0)
[2026-06-13 23:23:10,749.749 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 0}, 'order_id': 'TM08202203260613232217928', 'server_status': 'processOrder'}
[2026-06-13 23:23:10,752.752 INFO    ] 200
[2026-06-13 23:23:10,755.755 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""},"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"status":"true","delay":0},"order_id":"TM08202203260613232217928","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:10,758.758 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM08202203260613232217928', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'status': 'true', 'delay': 0}}}
[2026-06-13 23:23:10,761.761 INFO    ] 2026-06-13 23:23:10
[2026-06-13 23:23:10,764.764 INFO    ] None
[2026-06-13 23:23:10,766.766 INFO    ] Opening Door now
[2026-06-13 23:23:10,769.769 INFO    ] Opening Door now
[2026-06-13 23:23:10,771.771 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 23:23:10,774.774 INFO    ] 2026-06-13 23:23:10
[2026-06-13 23:23:10,776.776 INFO    ] playing audio file
[2026-06-13 23:23:10,794.794 INFO    ] 2026-06-13 23:23:10
[2026-06-13 23:23:10,797.797 INFO    ] 2026-06-13 23:23:10
[2026-06-13 23:23:13,836.836 INFO    ] 200
[2026-06-13 23:23:13,838.838 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 1 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:13,840.840 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:16,880.880 INFO    ] 200
[2026-06-13 23:23:16,882.882 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:16,883.883 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:19,914.914 INFO    ] 200
[2026-06-13 23:23:19,916.916 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:19,917.917 INFO    ] Please close door 1
[2026-06-13 23:23:19,918.918 INFO    ] Please close door 1
[2026-06-13 23:23:19,920.920 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-13 23:23:19,921.921 INFO    ] 2026-06-13 23:23:19
[2026-06-13 23:23:19,922.922 INFO    ] playing audio file
[2026-06-13 23:23:19,932.932 INFO    ] 2026-06-13 23:23:19
[2026-06-13 23:23:19,934.934 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:19,936.936 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:19,992.992 INFO    ] [publish_status] Message added to stream with ID: 1781373199951-0
[2026-06-13 23:23:19,994.994 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False", "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}}', 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T17:53:19.933730Z'} (ID: 1781373199951-0)
[2026-06-13 23:23:20,382.382 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}, 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus'}
[2026-06-13 23:23:20,383.383 INFO    ] 200
[2026-06-13 23:23:20,384.384 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Modern kitchens Banana Chips 21gm"}]},"rstatus":false,"status":"false","error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]}},"order_id":"TM08202203260613232217928","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:20,386.386 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613232217928', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'false', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress'}}}}
[2026-06-13 23:23:20,387.387 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:23,465.465 INFO    ] 200
[2026-06-13 23:23:23,468.468 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 1", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Modern kitchens Banana Chips 21gm"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:23,471.471 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:26,509.509 INFO    ] 200
[2026-06-13 23:23:26,510.510 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Opening Door 2", "Note": "Please wait for door to open", "SubHeader": "Please Pick products after opening"}, "voiceNote": "Opening Door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:26,512.512 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Opening Door 2', 'SubHeader': 'Please Pick products after opening', 'Note': 'Please wait for door to open'}, 'voiceNote': 'Opening Door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:29,564.564 INFO    ] 200
[2026-06-13 23:23:29,565.565 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:29,568.568 INFO    ] Door 2 is open now
[2026-06-13 23:23:29,570.570 INFO    ] Door 2 is open now
[2026-06-13 23:23:29,571.571 INFO    ] c0b0c0995d30574d97edd3ece08dfc12
[2026-06-13 23:23:29,573.573 INFO    ] 2026-06-13 23:23:29
[2026-06-13 23:23:29,575.575 INFO    ] playing audio file
[2026-06-13 23:23:29,586.586 INFO    ] 2026-06-13 23:23:29
[2026-06-13 23:23:29,589.589 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:29,591.591 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:29,681.681 INFO    ] [publish_status] Message added to stream with ID: 1781373209639-0
[2026-06-13 23:23:29,682.682 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "voiceNote": "Door 2 is open now", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False", "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}}', 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T17:53:29.587948Z'} (ID: 1781373209639-0)
[2026-06-13 23:23:30,014.014 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}, 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus'}
[2026-06-13 23:23:30,015.015 INFO    ] 200
[2026-06-13 23:23:30,017.017 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"voiceNote":"Door 2 is open now","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"rstatus":false,"status":"false","error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]}},"order_id":"TM08202203260613232217928","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:30,019.019 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613232217928', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'false', 'error': {'code': 20001, 'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress'}}}}
[2026-06-13 23:23:30,021.021 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:33,058.058 INFO    ] 200
[2026-06-13 23:23:33,059.059 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:33,061.061 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:36,098.098 INFO    ] 200
[2026-06-13 23:23:36,100.100 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:36,101.101 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'rstatus': False, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:39,139.139 INFO    ] 200
[2026-06-13 23:23:39,140.140 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 23:23:39,142.142 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:39,144.144 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:39,204.204 INFO    ] [publish_status] Message added to stream with ID: 1781373219164-0
[2026-06-13 23:23:39,206.206 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in"}, "voiceNote": "Transaction Completed", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True", "delay": 100}', 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus', 'timestamp': '2026-06-13T17:53:39.141572Z'} (ID: 1781373219164-0)
[2026-06-13 23:23:39,531.531 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 100}, 'order_id': 'TM08202203260613232217928', 'server_status': 'OrderStatus'}
[2026-06-13 23:23:39,532.532 INFO    ] 200
[2026-06-13 23:23:39,534.534 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Closed"},"SectionStatus":{"UI_Header":"","Header":" Order is complete ","SubHeader":"Please wait for invoice to generate","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"voiceNote":"Transaction Completed","SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"rstatus":true,"status":"true","delay":100},"order_id":"TM08202203260613232217928","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:39,536.536 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202203260613232217928', 'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'true', 'delay': 100}}}
[2026-06-13 23:23:39,538.538 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-13 23:23:39,539.539 INFO    ] 2026-06-13 23:23:39
[2026-06-13 23:23:39,541.541 INFO    ] Order Completed 
[2026-06-13 23:23:39,543.543 INFO    ] Order Completed 
[2026-06-13 23:23:39,544.544 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 23:23:39,546.546 INFO    ] 2026-06-13 23:23:39
[2026-06-13 23:23:39,547.547 INFO    ] playing audio file
[2026-06-13 23:23:39,558.558 INFO    ] 2026-06-13 23:23:39
[2026-06-13 23:23:39,561.561 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True, 'status': 'True', 'delay': 100}
[2026-06-13 23:23:39,562.562 INFO    ] 2026-06-13 23:23:39
[2026-06-13 23:23:40,379.379 INFO    ] 200
[2026-06-13 23:23:40,380.380 INFO    ] {"res": "True", "orderId": "TM08202203260613232217928", "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "skuid": "4500648", "door_id": "", "tray_id": "11", "name": "Modern kitchens Banana Chips 21gm per peice", "unit_price": "10", "mrp": "10", "qty": 2, "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 2, "sku_total": 40.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 60.0}
[2026-06-13 23:23:40,381.381 INFO    ] {'orderId': 'TM08202203260613232217928', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20.0, 'mrp': '10', 'tray_id': '11', 'unit_price': '10', 'skuid': '4500648', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'total_amount': 60.0}
[2026-06-13 23:23:40,383.383 INFO    ] {'orderId': 'TM08202203260613232217928', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20.0, 'mrp': '10', 'tray_id': '11', 'unit_price': '10', 'skuid': '4500648', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'total_amount': 60.0}
[2026-06-13 23:23:40,384.384 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,386.386 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,387.387 INFO    ] 60
[2026-06-13 23:23:40,388.388 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,390.390 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,391.391 INFO    ]  Your Bill Amount is 60
[2026-06-13 23:23:40,392.392 INFO    ]  Your Bill Amount is 60
[2026-06-13 23:23:40,394.394 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-13 23:23:40,395.395 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,396.396 INFO    ] playing audio file
[2026-06-13 23:23:40,407.407 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,409.409 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:40,411.411 INFO    ] publish_status: order_id=TM08202203260613232217928
[2026-06-13 23:23:40,412.412 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232217928
[2026-06-13 23:23:40,474.474 INFO    ] [publish_status] Message added to stream with ID: 1781373220431-0
[2026-06-13 23:23:40,476.476 INFO    ] Published to order:TM08202203260613232217928: {'server_response': '{"orderId": "TM08202203260613232217928", "rstatus": true, "res": "True", "logic": "WBL", "anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500648-25.webp", "sku_total": 20.0, "mrp": "10", "tray_id": "11", "unit_price": "10", "skuid": "4500648", "qty": 2, "name": "Modern kitchens Banana Chips 21gm per peice", "door_id": ""}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40.0, "mrp": "20", "tray_id": "43", "unit_price": "20", "skuid": "185993", "qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "door_id": ""}], "total_amount": 60.0}', 'order_id': 'TM08202203260613232217928', 'server_status': 'invoiceOrder', 'timestamp': '2026-06-13T17:53:40.409929Z'} (ID: 1781373220431-0)
[2026-06-13 23:23:40,593.593 INFO    ] {'server_response': {'orderId': 'TM08202203260613232217928', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20.0, 'mrp': '10', 'tray_id': '11', 'unit_price': '10', 'skuid': '4500648', 'qty': 2, 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40.0, 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'total_amount': 60.0}, 'order_id': 'TM08202203260613232217928', 'server_status': 'invoiceOrder'}
[2026-06-13 23:23:40,594.594 INFO    ] 200
[2026-06-13 23:23:40,596.596 INFO    ] {"data":{"server_response":{"orderId":"TM08202203260613232217928","rstatus":true,"res":"true","logic":"WBL","anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","sku_total":20,"mrp":"10","tray_id":"11","unit_price":"10","skuid":"4500648","qty":2,"name":"Modern kitchens Banana Chips 21gm per peice","door_id":""},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":40,"mrp":"20","tray_id":"43","unit_price":"20","skuid":"185993","qty":2,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","door_id":""}],"total_amount":60},"order_id":"TM08202203260613232217928","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:40,598.598 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613232217928', 'server_response': {'orderId': 'TM08202203260613232217928', 'res': 'true', 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20, 'mrp': '10', 'tray_id': '11', 'unit_price': '10', 'skuid': '4500648', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2, 'door_id': ''}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 2, 'door_id': ''}], 'total_amount': 60}}}
[2026-06-13 23:23:40,600.600 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202203260613232217928', 'server_response': {'orderId': 'TM08202203260613232217928', 'res': 'true', 'logic': 'WBL', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'sku_total': 20, 'mrp': '10', 'tray_id': '11', 'unit_price': '10', 'skuid': '4500648', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'qty': 2, 'door_id': ''}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 40, 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 2, 'door_id': ''}], 'total_amount': 60}}}
[2026-06-13 23:23:40,602.602 INFO    ] 2026-06-13 23:23:40
[2026-06-13 23:23:42,666.666 INFO    ] 200
[2026-06-13 23:23:42,668.668 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928", "TM08202203260613232217928"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 23:23:42,670.670 INFO    ] 2026-06-13 23:23:42
[2026-06-13 23:23:42,770.770 INFO    ] 200
[2026-06-13 23:23:42,773.773 INFO    ] True
[2026-06-13 23:23:42,776.776 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613232217928
[2026-06-13 23:23:42,780.780 INFO    ] start order file deleted
[2026-06-13 23:23:42,783.783 INFO    ] Checking for system updates...
[2026-06-13 23:23:42,824.824 INFO    ] 200
[2026-06-13 23:23:42,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:42,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:23:42,887.887 INFO    ] No update needed
[2026-06-13 23:23:42,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 23:23:42,930.930 INFO    ] 200
[2026-06-13 23:23:42,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:43,011.011 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:23:43,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:23:43,062.062 INFO    ] No camera update needed
[2026-06-13 23:23:43,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:23:43,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:23:43,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:23:43,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:23:45,126.126 INFO    ] ================================================
[2026-06-13 23:23:45,141.141 INFO    ] Launching Daemon at Sat Jun 13 23:23:45 IST 2026
[2026-06-13 23:23:45,153.153 INFO    ] ================================================
[2026-06-13 23:23:45,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:23:45
[2026-06-13 23:23:46,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:23:46,152.152 INFO    ] Initializing speech engine...
[2026-06-13 23:23:46,157.157 INFO    ] 2026-06-13 23:23:46
[2026-06-13 23:23:46,365.365 INFO    ] 2026-06-13 23:23:46
[2026-06-13 23:23:46,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:23:46,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:23:46,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:23:46,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:23:46,782.782 INFO    ] time= 13/06/2026 23:23:46
[2026-06-13 23:23:46,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:23:46,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:23:46,879.879 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 23:23:46,883.883 INFO    ] Checking historical command: ID=1781373201555-0
[2026-06-13 23:23:46,908.908 INFO    ] process_and_cleanup_command: msg_id=1781373201555-0
[2026-06-13 23:23:46,910.910 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:21.213Z, expiry=30s
[2026-06-13 23:23:47,019.019 INFO    ] Command removed from stream: 1781373201555-0. returning for processing...
[2026-06-13 23:23:47,023.023 INFO    ] ***** get_valid_command
[2026-06-13 23:23:47,026.026 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-13T17:53:21.213Z', 'data': '{"request_id":"start-order-1781373201213-ddaa0tqmj","orderId":"TM08202203260613232206684","is_vending":false}', 'command': 'start-order', 'timeout': '10'}
[2026-06-13 23:23:47,031.031 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781373201213-ddaa0tqmj', 'is_vending': False, 'orderId': 'TM08202203260613232206684'}
[2026-06-13 23:23:47,035.035 INFO    ] Handling start order...
[2026-06-13 23:23:47,040.040 INFO    ] handle_start_order_command
[2026-06-13 23:23:47,046.046 INFO    ] _send_start_order_success: request_id=start-order-1781373201213-ddaa0tqmj, order_id=TM08202203260613232206684
[2026-06-13 23:23:47,049.049 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 23:23:47,102.102 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781373227059-0
[2026-06-13 23:23:47,105.105 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 23:23:47,108.108 INFO    ] Checking for system updates...
[2026-06-13 23:23:47,136.136 INFO    ] 200
[2026-06-13 23:23:47,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:47,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:23:47,234.234 INFO    ] No update needed
[2026-06-13 23:23:47,259.259 INFO    ] Checking for camera pi updates...
[2026-06-13 23:23:47,296.296 INFO    ] 200
[2026-06-13 23:23:47,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:47,326.326 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:23:47,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:23:47,391.391 INFO    ] No camera update needed
[2026-06-13 23:23:47,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:23:47,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:23:47,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:23:47,415.415 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 23:23:47,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:23:49,456.456 INFO    ] ================================================
[2026-06-13 23:23:49,472.472 INFO    ] Launching Daemon at Sat Jun 13 23:23:49 IST 2026
[2026-06-13 23:23:49,484.484 INFO    ] ================================================
[2026-06-13 23:23:49,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:23:49
[2026-06-13 23:23:50,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:23:50,758.758 INFO    ] Initializing speech engine...
[2026-06-13 23:23:50,767.767 INFO    ] 2026-06-13 23:23:50
[2026-06-13 23:23:51,062.062 INFO    ] 2026-06-13 23:23:51
[2026-06-13 23:23:51,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:23:51,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:23:51,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:23:51,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:23:51,444.444 INFO    ] time= 13/06/2026 23:23:51
[2026-06-13 23:23:51,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:23:51,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:23:51,574.574 INFO    ] Found 2 existing command(s) in stream
[2026-06-13 23:23:51,622.622 INFO    ] Checking historical command: ID=1781373221976-0
[2026-06-13 23:23:51,676.676 INFO    ] process_and_cleanup_command: msg_id=1781373221976-0
[2026-06-13 23:23:51,725.725 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:41.503Z, expiry=30s
[2026-06-13 23:23:51,809.809 INFO    ] Command removed from stream: 1781373221976-0. returning for processing...
[2026-06-13 23:23:51,818.818 INFO    ] ***** get_valid_command
[2026-06-13 23:23:51,824.824 INFO    ] {'timestamp': '2026-06-13T17:53:41.503Z', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1781373221503-mwg2pfazk","orderId":"TM08202203260613232206684","is_vending":false}', 'source': 'webapp'}
[2026-06-13 23:23:51,880.880 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202203260613232206684', 'request_id': 'start-order-1781373221503-mwg2pfazk'}
[2026-06-13 23:23:51,908.908 INFO    ] Handling start order...
[2026-06-13 23:23:51,945.945 INFO    ] handle_start_order_command
[2026-06-13 23:23:52,025.025 INFO    ] 🔍 handle_start_order_command: Lock file Order ID: TM08202203260613232206684, TS: 2026-06-13 23:23:47
[2026-06-13 23:23:52,083.083 INFO    ] _send_start_order_success: request_id=start-order-1781373221503-mwg2pfazk, order_id=TM08202203260613232206684
[2026-06-13 23:23:52,119.119 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202203
[2026-06-13 23:23:52,259.259 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781373232176-0
[2026-06-13 23:23:52,308.308 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-13 23:23:52,311.311 INFO    ] Checking for system updates...
[2026-06-13 23:23:52,458.458 INFO    ] 200
[2026-06-13 23:23:52,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:52,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:23:52,558.558 INFO    ] No update needed
[2026-06-13 23:23:52,613.613 INFO    ] Checking for camera pi updates...
[2026-06-13 23:23:52,655.655 INFO    ] 200
[2026-06-13 23:23:52,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:52,715.715 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:23:52,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:23:52,813.813 INFO    ] No camera update needed
[2026-06-13 23:23:52,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:23:52,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:23:52,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:23:52,852.852 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-13 23:23:52,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:23:54,901.901 INFO    ] ================================================
[2026-06-13 23:23:54,917.917 INFO    ] Launching Daemon at Sat Jun 13 23:23:54 IST 2026
[2026-06-13 23:23:54,928.928 INFO    ] ================================================
[2026-06-13 23:23:55,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:23:55
[2026-06-13 23:23:55,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:23:55,813.813 INFO    ] Initializing speech engine...
[2026-06-13 23:23:55,818.818 INFO    ] 2026-06-13 23:23:55
[2026-06-13 23:23:56,023.023 INFO    ] 2026-06-13 23:23:56
[2026-06-13 23:23:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:23:56,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:23:56,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:23:56,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:23:56,430.430 INFO    ] time= 13/06/2026 23:23:56
[2026-06-13 23:23:56,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:23:56,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:23:56,553.553 INFO    ] Found 3 existing command(s) in stream
[2026-06-13 23:23:56,579.579 INFO    ] Checking historical command: ID=1781373227059-0
[2026-06-13 23:23:56,581.581 INFO    ] process_and_cleanup_command: msg_id=1781373227059-0
[2026-06-13 23:23:56,588.588 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:47.047516Z, expiry=30s
[2026-06-13 23:23:56,693.693 INFO    ] Command removed from stream: 1781373227059-0. returning for processing...
[2026-06-13 23:23:56,697.697 INFO    ] ***** get_valid_command
[2026-06-13 23:23:56,702.702 INFO    ] {'metadata_order_id': 'TM08202203260613232206684', 'status': 'success', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781373201213-ddaa0tqmj', 'message_type': 'command_response', 'message': 'start-order success', 'timestamp': '2026-06-13T17:53:47.047516Z'}
[2026-06-13 23:23:56,706.706 INFO    ] Checking historical command: ID=1781373232176-0
[2026-06-13 23:23:56,710.710 INFO    ] process_and_cleanup_command: msg_id=1781373232176-0
[2026-06-13 23:23:56,715.715 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:52.092449Z, expiry=30s
[2026-06-13 23:23:56,761.761 INFO    ] Command removed from stream: 1781373232176-0. returning for processing...
[2026-06-13 23:23:56,764.764 INFO    ] ***** get_valid_command
[2026-06-13 23:23:56,768.768 INFO    ] {'metadata_order_id': 'TM08202203260613232206684', 'status': 'success', 'imei': 'TM08202203', 'metadata_request_id': 'start-order-1781373221503-mwg2pfazk', 'timestamp': '2026-06-13T17:53:52.092449Z', 'message': 'start-order success', 'message_type': 'command_response'}
[2026-06-13 23:23:56,771.771 INFO    ] Checking historical command: ID=1781373234301-0
[2026-06-13 23:23:56,774.774 INFO    ] process_and_cleanup_command: msg_id=1781373234301-0
[2026-06-13 23:23:56,778.778 INFO    ] is_command_expired: timestamp=2026-06-13T17:53:54.104Z, expiry=30s
[2026-06-13 23:23:56,826.826 INFO    ] Command removed from stream: 1781373234301-0. returning for processing...
[2026-06-13 23:23:56,829.829 INFO    ] ***** get_valid_command
[2026-06-13 23:23:56,834.834 INFO    ] {'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781373234104-z173vqqvh","orderId":"TM08202203260613232206684","is_vending":false,"accessCode":"14804805"}', 'timeout': '60', 'timestamp': '2026-06-13T17:53:54.104Z'}
[2026-06-13 23:23:56,836.836 INFO    ] ***** Parsed command data: {'accessCode': '14804805', 'orderId': 'TM08202203260613232206684', 'request_id': 'process-order-1781373234104-z173vqqvh', 'is_vending': False}
[2026-06-13 23:23:56,838.838 INFO    ] Handling process order...
[2026-06-13 23:23:56,881.881 INFO    ] Processing process-order command...
[2026-06-13 23:23:56,900.900 INFO    ] 🔍 Lock file Order ID: TM08202203260613232206684, TS: 2026-06-13 23:23:51
[2026-06-13 23:23:56,931.931 INFO    ] ✅ Order lock valid for TM08202203260613232206684
[2026-06-13 23:23:56,933.933 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-13 23:23:56,959.959 INFO    ] processing access code 14804805 for order TM08202203260613232206684
[2026-06-13 23:23:56,963.963 INFO    ] 🔍 Lock file Order ID: TM08202203260613232206684, TS: 2026-06-13 23:23:51
[2026-06-13 23:23:56,966.966 INFO    ] ✅ Order lock valid for TM08202203260613232206684
[2026-06-13 23:23:56,969.969 INFO    ] 2026-06-13 23:23:56
[2026-06-13 23:23:57,045.045 INFO    ] 200
[2026-06-13 23:23:57,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:23:57,052.052 INFO    ] 14804805
[2026-06-13 23:23:57,057.057 INFO    ] 2026-06-13 23:23:57
[2026-06-13 23:23:57,060.060 INFO    ] session id :694820224
[2026-06-13 23:23:57,064.064 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=14804805&imei=TM08202203&session_id=694820224
[2026-06-13 23:23:57,713.713 INFO    ] 200
[2026-06-13 23:23:57,722.722 INFO    ] {"data": {"mobile": "8210377691", "order_id": "TM08202203260613232206684", "bill_amount": "20.0", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "2", "mrp": "20", "offer_desc": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "tray_id": "43", "unit_price": 20, "qty": 1, "sku_total": 20, "offer_id": ""}], "access_code": "14804805", "invoice_bill": "20.0"}, "msg": "Order Data", "rstatus": true, "status": true}
[2026-06-13 23:23:57,756.756 INFO    ] 20
[2026-06-13 23:23:57,764.764 INFO    ] TM08202203260613232206684
[2026-06-13 23:23:57,787.787 INFO    ] 8210377691
[2026-06-13 23:23:57,795.795 INFO    ] 2026-06-13 23:23:57
[2026-06-13 23:23:57,800.800 INFO    ] Door Opening for user mobile ending with  seven six nine one 
[2026-06-13 23:23:57,810.810 INFO    ] Door Opening for user mobile ending with  seven six nine one 
[2026-06-13 23:23:57,817.817 INFO    ] 99ee0a1698e4836bdf56e526c7d2bb8e
[2026-06-13 23:23:57,824.824 INFO    ] 2026-06-13 23:23:57
[2026-06-13 23:23:57,834.834 INFO    ] playing audio file
[2026-06-13 23:23:57,877.877 INFO    ] 2026-06-13 23:23:57
[2026-06-13 23:23:57,900.900 INFO    ] 2026-06-13 23:23:57
[2026-06-13 23:23:57,947.947 INFO    ] publish_status: order_id=TM08202203260613232206684
[2026-06-13 23:23:57,979.979 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232206684
[2026-06-13 23:23:58,087.087 INFO    ] [publish_status] Message added to stream with ID: 1781373238032-0
[2026-06-13 23:23:58,099.099 INFO    ] Published to order:TM08202203260613232206684: {'timestamp': '2026-06-13T17:53:57.902686Z', 'server_response': '{"status": true, "rstatus": true, "data": {"proposed_sku_json": [{"mrp": "20", "offer_id": "", "tray_id": "43", "unit_price": 20, "offer_desc": "", "skuid": "185993", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "2", "qty": 1}], "order_id": "TM08202203260613232206684", "mobile": "8210377691", "bill_amount": "20.0", "invoice_bill": "20.0", "access_code": "14804805"}, "msg": "Order Data"}', 'order_id': 'TM08202203260613232206684', 'server_status': 'order-started'} (ID: 1781373238032-0)
[2026-06-13 23:23:58,965.965 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'data': {'proposed_sku_json': [{'mrp': '20', 'offer_id': '', 'tray_id': '43', 'unit_price': 20, 'offer_desc': '', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'qty': 1}], 'order_id': 'TM08202203260613232206684', 'mobile': '8210377691', 'bill_amount': '20.0', 'invoice_bill': '20.0', 'access_code': '14804805'}, 'msg': 'Order Data'}, 'order_id': 'TM08202203260613232206684', 'server_status': 'order-started'}
[2026-06-13 23:23:58,968.968 INFO    ] 200
[2026-06-13 23:23:58,970.970 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"data":{"proposed_sku_json":[{"mrp":"20","offer_id":"","tray_id":"43","unit_price":20,"offer_desc":"","skuid":"185993","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"2","qty":1}],"order_id":"TM08202203260613232206684","mobile":"8210377691","bill_amount":"20.0","invoice_bill":"20.0","access_code":"14804805"},"msg":"Order Data"},"order_id":"TM08202203260613232206684","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:23:58,974.974 INFO    ] {'data': {'order_id': 'TM08202203260613232206684', 'server_status': 'order-started', 'server_response': {'data': {'bill_amount': '20.0', 'access_code': '14804805', 'order_id': 'TM08202203260613232206684', 'proposed_sku_json': [{'mrp': '20', 'offer_id': '', 'tray_id': '43', 'unit_price': 20, 'offer_desc': '', 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'qty': 1}], 'invoice_bill': '20.0', 'mobile': '8210377691'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 23:23:58,977.977 INFO    ] 2026-06-13 23:23:58
[2026-06-13 23:23:59,027.027 INFO    ] 200
[2026-06-13 23:23:59,031.031 INFO    ] True
[2026-06-13 23:23:59,183.183 INFO    ] 200
[2026-06-13 23:23:59,186.186 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": false, "status": "False"}
[2026-06-13 23:23:59,190.190 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:23:59,194.194 INFO    ] *** process_order ***
[2026-06-13 23:24:00,400.400 INFO    ] 200
[2026-06-13 23:24:00,403.403 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 23:24:00,406.406 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-06-13 23:24:00,409.409 INFO    ] *** process_order ***
[2026-06-13 23:24:00,412.412 INFO    ] publish_status: order_id=TM08202203260613232206684
[2026-06-13 23:24:00,415.415 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232206684
[2026-06-13 23:24:00,489.489 INFO    ] [publish_status] Message added to stream with ID: 1781373240448-0
[2026-06-13 23:24:00,492.492 INFO    ] Published to order:TM08202203260613232206684: {'server_response': '{"rstatus": true, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "Note": ""}, "delay": 0, "voiceNote": "Door is open...", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202203260613232206684', 'server_status': 'doorOpened'} (ID: 1781373240448-0)
[2026-06-13 23:24:01,550.550 INFO    ] 2026-06-13 23:24:01
[2026-06-13 23:24:01,554.554 INFO    ] publish_status: order_id=TM08202203260613232206684
[2026-06-13 23:24:01,557.557 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232206684
[2026-06-13 23:24:01,631.631 INFO    ] [publish_status] Message added to stream with ID: 1781373241589-0
[2026-06-13 23:24:01,634.634 INFO    ] Published to order:TM08202203260613232206684: {'timestamp': '2026-06-13T17:54:01.552228Z', 'server_response': '{"status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "voiceNote": "Please Wait", "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'order_id': 'TM08202203260613232206684', 'server_status': 'processOrder'} (ID: 1781373241589-0)
[2026-06-13 23:24:01,787.787 INFO    ] {'server_response': {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}, 'order_id': 'TM08202203260613232206684', 'server_status': 'processOrder'}
[2026-06-13 23:24:01,792.792 INFO    ] 200
[2026-06-13 23:24:01,795.795 INFO    ] {"data":{"server_response":{"status":"true","rstatus":true,"SectionMain":{"Header":"Processing Order"},"delay":0,"voiceNote":"Please Wait","SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"}},"order_id":"TM08202203260613232206684","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:24:01,800.800 INFO    ] {'data': {'order_id': 'TM08202203260613232206684', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 23:24:01,810.810 INFO    ] 2026-06-13 23:24:01
[2026-06-13 23:24:01,829.829 INFO    ] None
[2026-06-13 23:24:01,834.834 INFO    ] Opening Door now
[2026-06-13 23:24:01,846.846 INFO    ] Opening Door now
[2026-06-13 23:24:01,854.854 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-13 23:24:01,861.861 INFO    ] 2026-06-13 23:24:01
[2026-06-13 23:24:01,864.864 INFO    ] playing audio file
[2026-06-13 23:24:01,910.910 INFO    ] 2026-06-13 23:24:01
[2026-06-13 23:24:01,913.913 INFO    ] 2026-06-13 23:24:01
[2026-06-13 23:24:04,958.958 INFO    ] 200
[2026-06-13 23:24:04,959.959 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Door 2 is open now", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:24:04,961.961 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:24:08,014.014 INFO    ] 200
[2026-06-13 23:24:08,016.016 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:24:08,018.018 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:24:11,078.078 INFO    ] 200
[2026-06-13 23:24:11,081.081 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "rstatus": false, "status": "False"}
[2026-06-13 23:24:11,084.084 INFO    ] Please close door 2
[2026-06-13 23:24:11,086.086 INFO    ] Please close door 2
[2026-06-13 23:24:11,089.089 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-13 23:24:11,091.091 INFO    ] 2026-06-13 23:24:11
[2026-06-13 23:24:11,094.094 INFO    ] playing audio file
[2026-06-13 23:24:11,111.111 INFO    ] 2026-06-13 23:24:11
[2026-06-13 23:24:11,114.114 INFO    ] publish_status: order_id=TM08202203260613232206684
[2026-06-13 23:24:11,117.117 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232206684
[2026-06-13 23:24:11,194.194 INFO    ] [publish_status] Message added to stream with ID: 1781373251151-0
[2026-06-13 23:24:11,197.197 INFO    ] Published to order:TM08202203260613232206684: {'timestamp': '2026-06-13T17:54:11.112980Z', 'server_response': '{"rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}}', 'order_id': 'TM08202203260613232206684', 'server_status': 'OrderStatus'} (ID: 1781373251151-0)
[2026-06-13 23:24:11,608.608 INFO    ] {'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}, 'order_id': 'TM08202203260613232206684', 'server_status': 'OrderStatus'}
[2026-06-13 23:24:11,611.611 INFO    ] 200
[2026-06-13 23:24:11,613.613 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"SectionSKU":{"skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]}},"order_id":"TM08202203260613232206684","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:24:11,616.616 INFO    ] {'data': {'order_id': 'TM08202203260613232206684', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'status': 'false', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 23:24:11,619.619 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-06-13 23:24:14,660.660 INFO    ] 200
[2026-06-13 23:24:14,662.662 INFO    ] {"SectionStatus": {"UI_Header": "", "Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate"}, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "rstatus": true, "status": "True"}
[2026-06-13 23:24:14,663.663 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-13 23:24:14,665.665 INFO    ] 2026-06-13 23:24:14
[2026-06-13 23:24:14,667.667 INFO    ] Order Completed 
[2026-06-13 23:24:14,668.668 INFO    ] Order Completed 
[2026-06-13 23:24:14,670.670 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-13 23:24:14,671.671 INFO    ] 2026-06-13 23:24:14
[2026-06-13 23:24:14,673.673 INFO    ] playing audio file
[2026-06-13 23:24:14,684.684 INFO    ] 2026-06-13 23:24:14
[2026-06-13 23:24:14,685.685 INFO    ] {'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-06-13 23:24:14,687.687 INFO    ] 2026-06-13 23:24:14
[2026-06-13 23:24:15,107.107 INFO    ] 200
[2026-06-13 23:24:15,110.110 INFO    ] {"res": "True", "orderId": "TM08202203260613232206684", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "unit_price": "20", "mrp": "20", "qty": 1, "sku_total": 20.0}], "anomaly": 0, "logic": "WBL", "rstatus": true, "total_amount": 20.0}
[2026-06-13 23:24:15,113.113 INFO    ] {'anomaly': 0, 'orderId': 'TM08202203260613232206684', 'logic': 'WBL', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'sku_total': 20.0, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'qty': 1}], 'res': 'True'}
[2026-06-13 23:24:15,116.116 INFO    ] {'anomaly': 0, 'orderId': 'TM08202203260613232206684', 'logic': 'WBL', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'sku_total': 20.0, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'qty': 1}], 'res': 'True'}
[2026-06-13 23:24:15,119.119 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,121.121 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,124.124 INFO    ] 20
[2026-06-13 23:24:15,127.127 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,130.130 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,133.133 INFO    ]  Your Bill Amount is 20
[2026-06-13 23:24:15,135.135 INFO    ]  Your Bill Amount is 20
[2026-06-13 23:24:15,138.138 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-13 23:24:15,141.141 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,144.144 INFO    ] playing audio file
[2026-06-13 23:24:15,162.162 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,165.165 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:15,170.170 INFO    ] publish_status: order_id=TM08202203260613232206684
[2026-06-13 23:24:15,174.174 INFO    ] [publish_status] Adding message to stream: order:TM08202203260613232206684
[2026-06-13 23:24:15,253.253 INFO    ] [publish_status] Message added to stream with ID: 1781373255211-0
[2026-06-13 23:24:15,256.256 INFO    ] Published to order:TM08202203260613232206684: {'timestamp': '2026-06-13T17:54:15.166986Z', 'server_response': '{"anomaly": 0, "orderId": "TM08202203260613232206684", "logic": "WBL", "rstatus": true, "total_amount": 20.0, "skus": [{"mrp": "20", "tray_id": "43", "unit_price": "20", "sku_total": 20.0, "skuid": "185993", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "", "qty": 1}], "res": "True"}', 'order_id': 'TM08202203260613232206684', 'server_status': 'invoiceOrder'} (ID: 1781373255211-0)
[2026-06-13 23:24:15,375.375 INFO    ] {'server_response': {'anomaly': 0, 'orderId': 'TM08202203260613232206684', 'logic': 'WBL', 'rstatus': True, 'total_amount': 20.0, 'skus': [{'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'sku_total': 20.0, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'qty': 1}], 'res': 'True'}, 'order_id': 'TM08202203260613232206684', 'server_status': 'invoiceOrder'}
[2026-06-13 23:24:15,379.379 INFO    ] 200
[2026-06-13 23:24:15,382.382 INFO    ] {"data":{"server_response":{"anomaly":0,"orderId":"TM08202203260613232206684","logic":"WBL","rstatus":true,"total_amount":20,"skus":[{"mrp":"20","tray_id":"43","unit_price":"20","sku_total":20,"skuid":"185993","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"","qty":1}],"res":"true"},"order_id":"TM08202203260613232206684","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-13 23:24:15,385.385 INFO    ] {'data': {'order_id': 'TM08202203260613232206684', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'orderId': 'TM08202203260613232206684', 'logic': 'WBL', 'rstatus': True, 'total_amount': 20, 'skus': [{'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'sku_total': 20, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'qty': 1}], 'res': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 23:24:15,389.389 INFO    ] {'data': {'order_id': 'TM08202203260613232206684', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'orderId': 'TM08202203260613232206684', 'logic': 'WBL', 'rstatus': True, 'total_amount': 20, 'skus': [{'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'sku_total': 20, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'qty': 1}], 'res': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-13 23:24:15,392.392 INFO    ] 2026-06-13 23:24:15
[2026-06-13 23:24:17,556.556 INFO    ] 200
[2026-06-13 23:24:17,559.559 INFO    ] {"tray_sync": [], "orders": [], "tray_synced": ["TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684", "TM08202203260613232206684"], "orders_synced": [], "order_items_synced": [], "order_items": [], "orders_data_synced": [], "orders_data": [], "status": true}
[2026-06-13 23:24:17,563.563 INFO    ] 2026-06-13 23:24:17
[2026-06-13 23:24:17,680.680 INFO    ] 200
[2026-06-13 23:24:17,684.684 INFO    ] True
[2026-06-13 23:24:17,687.687 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202203260613232206684
[2026-06-13 23:24:17,692.692 INFO    ] start order file deleted
[2026-06-13 23:24:17,694.694 INFO    ] Checking for system updates...
[2026-06-13 23:24:17,717.717 INFO    ] 200
[2026-06-13 23:24:17,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:17,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:17,755.755 INFO    ] No update needed
[2026-06-13 23:24:17,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 23:24:17,782.782 INFO    ] 200
[2026-06-13 23:24:17,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:17,837.837 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:24:17,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:17,884.884 INFO    ] No camera update needed
[2026-06-13 23:24:17,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:24:17,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:24:17,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:24:17,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:24:19,946.946 INFO    ] ================================================
[2026-06-13 23:24:19,962.962 INFO    ] Launching Daemon at Sat Jun 13 23:24:19 IST 2026
[2026-06-13 23:24:19,972.972 INFO    ] ================================================
[2026-06-13 23:24:20,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:24:20
[2026-06-13 23:24:21,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:24:21,240.240 INFO    ] Initializing speech engine...
[2026-06-13 23:24:21,245.245 INFO    ] 2026-06-13 23:24:21
[2026-06-13 23:24:21,457.457 INFO    ] 2026-06-13 23:24:21
[2026-06-13 23:24:21,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:24:21,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:24:21,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:24:21,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:24:21,813.813 INFO    ] time= 13/06/2026 23:24:21
[2026-06-13 23:24:21,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:24:21,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:24:21,986.986 INFO    ] No existing commands found in stream
[2026-06-13 23:24:26,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:24:27,000.000 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 23:24:29,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:24:29,987.987 INFO    ] Checking for system updates...
[2026-06-13 23:24:30,009.009 INFO    ] 200
[2026-06-13 23:24:30,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:30,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:30,043.043 INFO    ] No update needed
[2026-06-13 23:24:30,044.044 INFO    ] Checking for camera pi updates...
[2026-06-13 23:24:30,064.064 INFO    ] 200
[2026-06-13 23:24:30,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:30,089.089 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:24:30,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:30,130.130 INFO    ] No camera update needed
[2026-06-13 23:24:30,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:24:30,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:24:30,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:24:30,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:24:32,171.171 INFO    ] ================================================
[2026-06-13 23:24:32,182.182 INFO    ] Launching Daemon at Sat Jun 13 23:24:32 IST 2026
[2026-06-13 23:24:32,189.189 INFO    ] ================================================
[2026-06-13 23:24:32,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:24:32
[2026-06-13 23:24:32,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:24:32,996.996 INFO    ] Initializing speech engine...
[2026-06-13 23:24:33,001.001 INFO    ] 2026-06-13 23:24:32
[2026-06-13 23:24:33,205.205 INFO    ] 2026-06-13 23:24:33
[2026-06-13 23:24:33,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:24:33,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:24:33,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:24:33,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:24:33,592.592 INFO    ] time= 13/06/2026 23:24:33
[2026-06-13 23:24:33,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:24:33,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:24:33,717.717 INFO    ] No existing commands found in stream
[2026-06-13 23:24:38,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:24:38,727.727 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 23:24:40,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:24:40,045.045 INFO    ] Checking for system updates...
[2026-06-13 23:24:40,069.069 INFO    ] 200
[2026-06-13 23:24:40,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:40,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:40,108.108 INFO    ] No update needed
[2026-06-13 23:24:40,109.109 INFO    ] Checking for camera pi updates...
[2026-06-13 23:24:40,130.130 INFO    ] 200
[2026-06-13 23:24:40,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:40,156.156 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:24:40,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:40,198.198 INFO    ] No camera update needed
[2026-06-13 23:24:40,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:24:40,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:24:40,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:24:40,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:24:42,250.250 INFO    ] ================================================
[2026-06-13 23:24:42,265.265 INFO    ] Launching Daemon at Sat Jun 13 23:24:42 IST 2026
[2026-06-13 23:24:42,277.277 INFO    ] ================================================
[2026-06-13 23:24:42,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:24:42
[2026-06-13 23:24:42,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:24:43,077.077 INFO    ] Initializing speech engine...
[2026-06-13 23:24:43,082.082 INFO    ] 2026-06-13 23:24:43
[2026-06-13 23:24:43,286.286 INFO    ] 2026-06-13 23:24:43
[2026-06-13 23:24:43,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:24:43,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:24:43,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:24:43,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:24:43,695.695 INFO    ] time= 13/06/2026 23:24:43
[2026-06-13 23:24:43,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:24:43,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:24:43,799.799 INFO    ] No existing commands found in stream
[2026-06-13 23:24:48,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:24:48,809.809 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-13 23:24:50,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:24:50,233.233 INFO    ] Checking for system updates...
[2026-06-13 23:24:50,255.255 INFO    ] 200
[2026-06-13 23:24:50,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:50,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:50,288.288 INFO    ] No update needed
[2026-06-13 23:24:50,290.290 INFO    ] Checking for camera pi updates...
[2026-06-13 23:24:50,310.310 INFO    ] 200
[2026-06-13 23:24:50,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:24:50,335.335 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:24:50,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:24:50,378.378 INFO    ] No camera update needed
[2026-06-13 23:24:50,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:24:50,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:24:50,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:24:50,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:24:52,428.428 INFO    ] ================================================
[2026-06-13 23:24:52,443.443 INFO    ] Launching Daemon at Sat Jun 13 23:24:52 IST 2026
[2026-06-13 23:24:52,455.455 INFO    ] ================================================
[2026-06-13 23:24:52,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:24:52
[2026-06-13 23:24:53,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:24:53,261.261 INFO    ] Initializing speech engine...
[2026-06-13 23:24:53,270.270 INFO    ] 2026-06-13 23:24:53
[2026-06-13 23:24:53,494.494 INFO    ] 2026-06-13 23:24:53
[2026-06-13 23:24:53,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:24:53,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:24:53,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:24:53,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:24:53,909.909 INFO    ] time= 13/06/2026 23:24:53
[2026-06-13 23:24:53,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:24:53,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:24:54,044.044 INFO    ] No existing commands found in stream
[2026-06-13 23:24:59,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:24:59,057.057 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-13 23:25:01,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:25:01,096.096 INFO    ] Checking for system updates...
[2026-06-13 23:25:01,116.116 INFO    ] 200
[2026-06-13 23:25:01,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:01,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:01,150.150 INFO    ] No update needed
[2026-06-13 23:25:01,151.151 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:01,172.172 INFO    ] 200
[2026-06-13 23:25:01,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:01,198.198 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:01,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:01,222.222 INFO    ] No camera update needed
[2026-06-13 23:25:01,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:01,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:01,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:01,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:03,262.262 INFO    ] ================================================
[2026-06-13 23:25:03,282.282 INFO    ] Launching Daemon at Sat Jun 13 23:25:03 IST 2026
[2026-06-13 23:25:03,296.296 INFO    ] ================================================
[2026-06-13 23:25:03,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:03
[2026-06-13 23:25:04,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:04,733.733 INFO    ] Initializing speech engine...
[2026-06-13 23:25:04,742.742 INFO    ] 2026-06-13 23:25:04
[2026-06-13 23:25:04,991.991 INFO    ] 2026-06-13 23:25:04
[2026-06-13 23:25:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:25:05,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:25:05,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:25:05,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:25:05,431.431 INFO    ] time= 13/06/2026 23:25:05
[2026-06-13 23:25:05,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:25:05,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:25:05,613.613 INFO    ] No existing commands found in stream
[2026-06-13 23:25:10,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:25:10,641.641 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 23:25:12,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:25:12,157.157 INFO    ] Checking for system updates...
[2026-06-13 23:25:12,179.179 INFO    ] 200
[2026-06-13 23:25:12,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:12,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:25:12,219.219 INFO    ] No update needed
[2026-06-13 23:25:12,220.220 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:12,240.240 INFO    ] 200
[2026-06-13 23:25:12,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:12,269.269 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:12,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:12,307.307 INFO    ] No camera update needed
[2026-06-13 23:25:12,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:12,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:12,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:12,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:14,357.357 INFO    ] ================================================
[2026-06-13 23:25:14,371.371 INFO    ] Launching Daemon at Sat Jun 13 23:25:14 IST 2026
[2026-06-13 23:25:14,382.382 INFO    ] ================================================
[2026-06-13 23:25:14,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:14
[2026-06-13 23:25:15,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:15,185.185 INFO    ] Initializing speech engine...
[2026-06-13 23:25:15,195.195 INFO    ] 2026-06-13 23:25:15
[2026-06-13 23:25:15,398.398 INFO    ] 2026-06-13 23:25:15
[2026-06-13 23:25:15,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:25:15,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:25:15,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:25:15,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:25:15,802.802 INFO    ] time= 13/06/2026 23:25:15
[2026-06-13 23:25:15,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:25:15,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:25:15,912.912 INFO    ] No existing commands found in stream
[2026-06-13 23:25:20,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:25:20,924.924 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-13 23:25:21,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:25:21,880.880 INFO    ] Checking for system updates...
[2026-06-13 23:25:21,916.916 INFO    ] 200
[2026-06-13 23:25:21,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:21,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:21,956.956 INFO    ] No update needed
[2026-06-13 23:25:21,957.957 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:21,978.978 INFO    ] 200
[2026-06-13 23:25:21,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:22,004.004 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:22,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:22,040.040 INFO    ] No camera update needed
[2026-06-13 23:25:22,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:22,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:22,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:22,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:24,087.087 INFO    ] ================================================
[2026-06-13 23:25:24,103.103 INFO    ] Launching Daemon at Sat Jun 13 23:25:24 IST 2026
[2026-06-13 23:25:24,114.114 INFO    ] ================================================
[2026-06-13 23:25:24,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:24
[2026-06-13 23:25:24,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:25,060.060 INFO    ] Initializing speech engine...
[2026-06-13 23:25:25,066.066 INFO    ] 2026-06-13 23:25:25
[2026-06-13 23:25:25,328.328 INFO    ] 2026-06-13 23:25:25
[2026-06-13 23:25:25,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:25:25,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:25:25,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:25:25,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:25:25,767.767 INFO    ] time= 13/06/2026 23:25:25
[2026-06-13 23:25:25,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:25:25,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:25:25,930.930 INFO    ] No existing commands found in stream
[2026-06-13 23:25:30,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:25:30,945.945 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 23:25:33,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:25:33,942.942 INFO    ] Checking for system updates...
[2026-06-13 23:25:33,982.982 INFO    ] 200
[2026-06-13 23:25:33,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:34,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:25:34,045.045 INFO    ] No update needed
[2026-06-13 23:25:34,048.048 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:34,086.086 INFO    ] 200
[2026-06-13 23:25:34,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:34,121.121 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:34,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:25:34,160.160 INFO    ] No camera update needed
[2026-06-13 23:25:34,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:34,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:34,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:34,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:36,209.209 INFO    ] ================================================
[2026-06-13 23:25:36,224.224 INFO    ] Launching Daemon at Sat Jun 13 23:25:36 IST 2026
[2026-06-13 23:25:36,235.235 INFO    ] ================================================
[2026-06-13 23:25:36,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:36
[2026-06-13 23:25:36,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:37,042.042 INFO    ] Initializing speech engine...
[2026-06-13 23:25:37,046.046 INFO    ] 2026-06-13 23:25:37
[2026-06-13 23:25:37,273.273 INFO    ] 2026-06-13 23:25:37
[2026-06-13 23:25:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:25:37,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:25:37,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:25:37,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:25:37,679.679 INFO    ] time= 13/06/2026 23:25:37
[2026-06-13 23:25:37,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:25:37,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:25:37,794.794 INFO    ] No existing commands found in stream
[2026-06-13 23:25:42,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:25:42,805.805 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-13 23:25:44,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:25:44,328.328 INFO    ] Checking for system updates...
[2026-06-13 23:25:44,349.349 INFO    ] 200
[2026-06-13 23:25:44,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:44,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:25:44,382.382 INFO    ] No update needed
[2026-06-13 23:25:44,383.383 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:44,403.403 INFO    ] 200
[2026-06-13 23:25:44,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:44,427.427 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:44,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:25:44,476.476 INFO    ] No camera update needed
[2026-06-13 23:25:44,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:44,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:44,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:44,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:46,523.523 INFO    ] ================================================
[2026-06-13 23:25:46,539.539 INFO    ] Launching Daemon at Sat Jun 13 23:25:46 IST 2026
[2026-06-13 23:25:46,549.549 INFO    ] ================================================
[2026-06-13 23:25:46,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:46
[2026-06-13 23:25:47,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:47,574.574 INFO    ] Initializing speech engine...
[2026-06-13 23:25:47,580.580 INFO    ] 2026-06-13 23:25:47
[2026-06-13 23:25:47,830.830 INFO    ] 2026-06-13 23:25:47
[2026-06-13 23:25:47,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:25:48,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:25:48,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:25:48,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:25:48,287.287 INFO    ] time= 13/06/2026 23:25:48
[2026-06-13 23:25:48,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:25:48,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:25:48,539.539 INFO    ] No existing commands found in stream
[2026-06-13 23:25:53,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:25:53,555.555 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 23:25:56,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:25:56,673.673 INFO    ] Checking for system updates...
[2026-06-13 23:25:56,694.694 INFO    ] 200
[2026-06-13 23:25:56,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:56,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:56,729.729 INFO    ] No update needed
[2026-06-13 23:25:56,730.730 INFO    ] Checking for camera pi updates...
[2026-06-13 23:25:56,750.750 INFO    ] 200
[2026-06-13 23:25:56,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:25:56,776.776 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:25:56,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:25:56,813.813 INFO    ] No camera update needed
[2026-06-13 23:25:56,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:25:56,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:25:56,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:25:56,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:25:58,862.862 INFO    ] ================================================
[2026-06-13 23:25:58,877.877 INFO    ] Launching Daemon at Sat Jun 13 23:25:58 IST 2026
[2026-06-13 23:25:58,888.888 INFO    ] ================================================
[2026-06-13 23:25:59,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:25:59
[2026-06-13 23:25:59,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:25:59,757.757 INFO    ] Initializing speech engine...
[2026-06-13 23:25:59,763.763 INFO    ] 2026-06-13 23:25:59
[2026-06-13 23:25:59,972.972 INFO    ] 2026-06-13 23:25:59
[2026-06-13 23:26:00,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:00,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:00,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:00,379.379 INFO    ] time= 13/06/2026 23:26:00
[2026-06-13 23:26:00,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:00,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:00,496.496 INFO    ] No existing commands found in stream
[2026-06-13 23:26:05,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:05,513.513 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 23:26:07,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:26:07,264.264 INFO    ] Checking for system updates...
[2026-06-13 23:26:07,285.285 INFO    ] 200
[2026-06-13 23:26:07,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:07,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:26:07,322.322 INFO    ] No update needed
[2026-06-13 23:26:07,324.324 INFO    ] Checking for camera pi updates...
[2026-06-13 23:26:07,343.343 INFO    ] 200
[2026-06-13 23:26:07,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:07,368.368 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:26:07,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:26:07,411.411 INFO    ] No camera update needed
[2026-06-13 23:26:07,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:26:07,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:26:07,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:26:07,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:26:09,458.458 INFO    ] ================================================
[2026-06-13 23:26:09,473.473 INFO    ] Launching Daemon at Sat Jun 13 23:26:09 IST 2026
[2026-06-13 23:26:09,484.484 INFO    ] ================================================
[2026-06-13 23:26:09,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:26:09
[2026-06-13 23:26:10,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:26:10,837.837 INFO    ] Initializing speech engine...
[2026-06-13 23:26:10,846.846 INFO    ] 2026-06-13 23:26:10
[2026-06-13 23:26:11,092.092 INFO    ] 2026-06-13 23:26:11
[2026-06-13 23:26:11,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:11,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:11,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:11,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:11,425.425 INFO    ] time= 13/06/2026 23:26:11
[2026-06-13 23:26:11,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:11,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:11,538.538 INFO    ] No existing commands found in stream
[2026-06-13 23:26:16,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:16,553.553 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-13 23:26:18,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:26:18,120.120 INFO    ] Checking for system updates...
[2026-06-13 23:26:18,142.142 INFO    ] 200
[2026-06-13 23:26:18,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:18,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:26:18,174.174 INFO    ] No update needed
[2026-06-13 23:26:18,176.176 INFO    ] Checking for camera pi updates...
[2026-06-13 23:26:18,195.195 INFO    ] 200
[2026-06-13 23:26:18,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:18,222.222 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:26:18,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:26:18,366.366 INFO    ] No camera update needed
[2026-06-13 23:26:18,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:26:18,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:26:18,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:26:18,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:26:20,413.413 INFO    ] ================================================
[2026-06-13 23:26:20,428.428 INFO    ] Launching Daemon at Sat Jun 13 23:26:20 IST 2026
[2026-06-13 23:26:20,439.439 INFO    ] ================================================
[2026-06-13 23:26:20,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:26:20
[2026-06-13 23:26:21,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:26:21,514.514 INFO    ] Initializing speech engine...
[2026-06-13 23:26:21,527.527 INFO    ] 2026-06-13 23:26:21
[2026-06-13 23:26:21,788.788 INFO    ] 2026-06-13 23:26:21
[2026-06-13 23:26:21,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:22,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:22,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:22,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:22,266.266 INFO    ] time= 13/06/2026 23:26:22
[2026-06-13 23:26:22,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:22,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:22,428.428 INFO    ] No existing commands found in stream
[2026-06-13 23:26:27,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:27,467.467 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-13 23:26:28,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:26:28,376.376 INFO    ] Checking for system updates...
[2026-06-13 23:26:28,398.398 INFO    ] 200
[2026-06-13 23:26:28,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:28,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:26:28,431.431 INFO    ] No update needed
[2026-06-13 23:26:28,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 23:26:28,453.453 INFO    ] 200
[2026-06-13 23:26:28,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:28,477.477 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:26:28,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:26:28,517.517 INFO    ] No camera update needed
[2026-06-13 23:26:28,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:26:28,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:26:28,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:26:28,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:26:30,564.564 INFO    ] ================================================
[2026-06-13 23:26:30,579.579 INFO    ] Launching Daemon at Sat Jun 13 23:26:30 IST 2026
[2026-06-13 23:26:30,589.589 INFO    ] ================================================
[2026-06-13 23:26:30,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:26:30
[2026-06-13 23:26:31,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:26:31,402.402 INFO    ] Initializing speech engine...
[2026-06-13 23:26:31,408.408 INFO    ] 2026-06-13 23:26:31
[2026-06-13 23:26:31,626.626 INFO    ] 2026-06-13 23:26:31
[2026-06-13 23:26:31,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:31,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:31,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:32,061.061 INFO    ] time= 13/06/2026 23:26:32
[2026-06-13 23:26:32,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:32,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:32,265.265 INFO    ] No existing commands found in stream
[2026-06-13 23:26:37,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:37,281.281 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 23:26:38,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:26:38,002.002 INFO    ] Checking for system updates...
[2026-06-13 23:26:38,023.023 INFO    ] 200
[2026-06-13 23:26:38,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:38,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:26:38,059.059 INFO    ] No update needed
[2026-06-13 23:26:38,060.060 INFO    ] Checking for camera pi updates...
[2026-06-13 23:26:38,081.081 INFO    ] 200
[2026-06-13 23:26:38,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:38,106.106 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:26:38,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:26:38,144.144 INFO    ] No camera update needed
[2026-06-13 23:26:38,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:26:38,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:26:38,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:26:38,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:26:40,190.190 INFO    ] ================================================
[2026-06-13 23:26:40,205.205 INFO    ] Launching Daemon at Sat Jun 13 23:26:40 IST 2026
[2026-06-13 23:26:40,216.216 INFO    ] ================================================
[2026-06-13 23:26:40,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:26:40
[2026-06-13 23:26:40,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:26:41,076.076 INFO    ] Initializing speech engine...
[2026-06-13 23:26:41,081.081 INFO    ] 2026-06-13 23:26:41
[2026-06-13 23:26:41,289.289 INFO    ] 2026-06-13 23:26:41
[2026-06-13 23:26:41,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:41,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:41,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:41,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:41,711.711 INFO    ] time= 13/06/2026 23:26:41
[2026-06-13 23:26:41,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:41,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:41,806.806 INFO    ] No existing commands found in stream
[2026-06-13 23:26:46,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:46,824.824 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 23:26:50,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:26:50,203.203 INFO    ] Checking for system updates...
[2026-06-13 23:26:50,224.224 INFO    ] 200
[2026-06-13 23:26:50,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:50,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:26:50,259.259 INFO    ] No update needed
[2026-06-13 23:26:50,260.260 INFO    ] Checking for camera pi updates...
[2026-06-13 23:26:50,280.280 INFO    ] 200
[2026-06-13 23:26:50,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:26:50,304.304 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:26:50,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:26:50,341.341 INFO    ] No camera update needed
[2026-06-13 23:26:50,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:26:50,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:26:50,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:26:50,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:26:52,388.388 INFO    ] ================================================
[2026-06-13 23:26:52,402.402 INFO    ] Launching Daemon at Sat Jun 13 23:26:52 IST 2026
[2026-06-13 23:26:52,413.413 INFO    ] ================================================
[2026-06-13 23:26:52,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:26:52
[2026-06-13 23:26:53,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:26:53,211.211 INFO    ] Initializing speech engine...
[2026-06-13 23:26:53,216.216 INFO    ] 2026-06-13 23:26:53
[2026-06-13 23:26:53,420.420 INFO    ] 2026-06-13 23:26:53
[2026-06-13 23:26:53,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:26:53,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:26:53,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:26:53,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:26:53,830.830 INFO    ] time= 13/06/2026 23:26:53
[2026-06-13 23:26:53,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:26:53,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:26:53,936.936 INFO    ] No existing commands found in stream
[2026-06-13 23:26:58,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:26:58,948.948 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-13 23:27:03,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:27:03,128.128 INFO    ] Checking for system updates...
[2026-06-13 23:27:03,164.164 INFO    ] 200
[2026-06-13 23:27:03,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:03,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:03,236.236 INFO    ] No update needed
[2026-06-13 23:27:03,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 23:27:03,272.272 INFO    ] 200
[2026-06-13 23:27:03,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:03,320.320 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:27:03,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:03,359.359 INFO    ] No camera update needed
[2026-06-13 23:27:03,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:27:03,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:27:03,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:27:03,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:27:05,406.406 INFO    ] ================================================
[2026-06-13 23:27:05,422.422 INFO    ] Launching Daemon at Sat Jun 13 23:27:05 IST 2026
[2026-06-13 23:27:05,433.433 INFO    ] ================================================
[2026-06-13 23:27:05,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:27:05
[2026-06-13 23:27:06,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:27:06,313.313 INFO    ] Initializing speech engine...
[2026-06-13 23:27:06,321.321 INFO    ] 2026-06-13 23:27:06
[2026-06-13 23:27:06,524.524 INFO    ] 2026-06-13 23:27:06
[2026-06-13 23:27:06,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:27:06,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:27:06,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:27:06,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:27:06,940.940 INFO    ] time= 13/06/2026 23:27:06
[2026-06-13 23:27:06,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:27:06,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:27:07,045.045 INFO    ] No existing commands found in stream
[2026-06-13 23:27:12,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:27:12,059.059 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-13 23:27:15,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:27:15,890.890 INFO    ] Checking for system updates...
[2026-06-13 23:27:15,912.912 INFO    ] 200
[2026-06-13 23:27:15,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:15,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:15,947.947 INFO    ] No update needed
[2026-06-13 23:27:15,949.949 INFO    ] Checking for camera pi updates...
[2026-06-13 23:27:15,968.968 INFO    ] 200
[2026-06-13 23:27:15,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:15,995.995 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:27:16,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:16,032.032 INFO    ] No camera update needed
[2026-06-13 23:27:16,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:27:16,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:27:16,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:27:16,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:27:18,079.079 INFO    ] ================================================
[2026-06-13 23:27:18,095.095 INFO    ] Launching Daemon at Sat Jun 13 23:27:18 IST 2026
[2026-06-13 23:27:18,106.106 INFO    ] ================================================
[2026-06-13 23:27:18,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:27:18
[2026-06-13 23:27:18,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:27:18,896.896 INFO    ] Initializing speech engine...
[2026-06-13 23:27:18,900.900 INFO    ] 2026-06-13 23:27:18
[2026-06-13 23:27:19,118.118 INFO    ] 2026-06-13 23:27:19
[2026-06-13 23:27:19,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:27:19,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:27:19,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:27:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:27:19,534.534 INFO    ] time= 13/06/2026 23:27:19
[2026-06-13 23:27:19,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:27:19,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:27:19,639.639 INFO    ] No existing commands found in stream
[2026-06-13 23:27:24,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:27:24,651.651 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-13 23:27:25,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:27:25,700.700 INFO    ] Checking for system updates...
[2026-06-13 23:27:25,722.722 INFO    ] 200
[2026-06-13 23:27:25,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:25,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:27:25,755.755 INFO    ] No update needed
[2026-06-13 23:27:25,756.756 INFO    ] Checking for camera pi updates...
[2026-06-13 23:27:25,778.778 INFO    ] 200
[2026-06-13 23:27:25,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:25,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:27:25,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:27:25,841.841 INFO    ] No camera update needed
[2026-06-13 23:27:25,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:27:25,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:27:25,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:27:25,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:27:27,891.891 INFO    ] ================================================
[2026-06-13 23:27:27,906.906 INFO    ] Launching Daemon at Sat Jun 13 23:27:27 IST 2026
[2026-06-13 23:27:27,917.917 INFO    ] ================================================
[2026-06-13 23:27:28,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:27:28
[2026-06-13 23:27:28,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:27:29,201.201 INFO    ] Initializing speech engine...
[2026-06-13 23:27:29,209.209 INFO    ] 2026-06-13 23:27:29
[2026-06-13 23:27:29,457.457 INFO    ] 2026-06-13 23:27:29
[2026-06-13 23:27:29,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:27:29,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:27:29,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:27:29,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:27:29,814.814 INFO    ] time= 13/06/2026 23:27:29
[2026-06-13 23:27:29,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:27:29,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:27:29,943.943 INFO    ] No existing commands found in stream
[2026-06-13 23:27:34,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:27:34,958.958 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 23:27:38,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:27:38,345.345 INFO    ] Checking for system updates...
[2026-06-13 23:27:38,367.367 INFO    ] 200
[2026-06-13 23:27:38,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:38,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:27:38,402.402 INFO    ] No update needed
[2026-06-13 23:27:38,403.403 INFO    ] Checking for camera pi updates...
[2026-06-13 23:27:38,424.424 INFO    ] 200
[2026-06-13 23:27:38,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:38,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:27:38,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:27:38,494.494 INFO    ] No camera update needed
[2026-06-13 23:27:38,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:27:38,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:27:38,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:27:38,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:27:40,542.542 INFO    ] ================================================
[2026-06-13 23:27:40,558.558 INFO    ] Launching Daemon at Sat Jun 13 23:27:40 IST 2026
[2026-06-13 23:27:40,570.570 INFO    ] ================================================
[2026-06-13 23:27:40,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:27:40
[2026-06-13 23:27:41,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:27:41,361.361 INFO    ] Initializing speech engine...
[2026-06-13 23:27:41,366.366 INFO    ] 2026-06-13 23:27:41
[2026-06-13 23:27:41,567.567 INFO    ] 2026-06-13 23:27:41
[2026-06-13 23:27:41,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:27:41,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:27:41,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:27:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:27:41,977.977 INFO    ] time= 13/06/2026 23:27:41
[2026-06-13 23:27:42,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:27:42,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:27:42,081.081 INFO    ] No existing commands found in stream
[2026-06-13 23:27:47,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:27:47,092.092 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-13 23:27:50,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:27:50,581.581 INFO    ] Checking for system updates...
[2026-06-13 23:27:50,633.633 INFO    ] 200
[2026-06-13 23:27:50,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:50,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:50,669.669 INFO    ] No update needed
[2026-06-13 23:27:50,670.670 INFO    ] Checking for camera pi updates...
[2026-06-13 23:27:50,691.691 INFO    ] 200
[2026-06-13 23:27:50,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:27:50,717.717 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:27:50,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:27:50,758.758 INFO    ] No camera update needed
[2026-06-13 23:27:50,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:27:50,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:27:50,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:27:50,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:27:52,808.808 INFO    ] ================================================
[2026-06-13 23:27:52,823.823 INFO    ] Launching Daemon at Sat Jun 13 23:27:52 IST 2026
[2026-06-13 23:27:52,834.834 INFO    ] ================================================
[2026-06-13 23:27:53,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:27:53
[2026-06-13 23:27:53,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:27:53,626.626 INFO    ] Initializing speech engine...
[2026-06-13 23:27:53,631.631 INFO    ] 2026-06-13 23:27:53
[2026-06-13 23:27:53,835.835 INFO    ] 2026-06-13 23:27:53
[2026-06-13 23:27:53,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:27:54,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:27:54,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:27:54,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:27:54,215.215 INFO    ] time= 13/06/2026 23:27:54
[2026-06-13 23:27:54,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:27:54,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:27:54,351.351 INFO    ] No existing commands found in stream
[2026-06-13 23:27:59,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:27:59,364.364 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-13 23:27:59,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:27:59,950.950 INFO    ] Checking for system updates...
[2026-06-13 23:27:59,970.970 INFO    ] 200
[2026-06-13 23:27:59,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:00,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:00,005.005 INFO    ] No update needed
[2026-06-13 23:28:00,006.006 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:00,027.027 INFO    ] 200
[2026-06-13 23:28:00,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:00,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:00,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:00,091.091 INFO    ] No camera update needed
[2026-06-13 23:28:00,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:00,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:00,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:00,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:28:02,156.156 INFO    ] ================================================
[2026-06-13 23:28:02,188.188 INFO    ] Launching Daemon at Sat Jun 13 23:28:02 IST 2026
[2026-06-13 23:28:02,204.204 INFO    ] ================================================
[2026-06-13 23:28:02,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:28:02
[2026-06-13 23:28:03,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:28:03,790.790 INFO    ] Initializing speech engine...
[2026-06-13 23:28:03,800.800 INFO    ] 2026-06-13 23:28:03
[2026-06-13 23:28:04,046.046 INFO    ] 2026-06-13 23:28:04
[2026-06-13 23:28:04,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:28:04,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:28:04,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:28:04,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:28:04,395.395 INFO    ] time= 13/06/2026 23:28:04
[2026-06-13 23:28:04,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:28:04,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:28:04,493.493 INFO    ] No existing commands found in stream
[2026-06-13 23:28:09,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:28:09,531.531 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-13 23:28:12,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:28:12,251.251 INFO    ] Checking for system updates...
[2026-06-13 23:28:12,271.271 INFO    ] 200
[2026-06-13 23:28:12,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:12,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:12,307.307 INFO    ] No update needed
[2026-06-13 23:28:12,308.308 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:12,328.328 INFO    ] 200
[2026-06-13 23:28:12,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:12,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:12,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:28:12,392.392 INFO    ] No camera update needed
[2026-06-13 23:28:12,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:12,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:12,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:12,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:28:14,438.438 INFO    ] ================================================
[2026-06-13 23:28:14,454.454 INFO    ] Launching Daemon at Sat Jun 13 23:28:14 IST 2026
[2026-06-13 23:28:14,465.465 INFO    ] ================================================
[2026-06-13 23:28:14,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:28:14
[2026-06-13 23:28:15,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:28:15,255.255 INFO    ] Initializing speech engine...
[2026-06-13 23:28:15,259.259 INFO    ] 2026-06-13 23:28:15
[2026-06-13 23:28:15,489.489 INFO    ] 2026-06-13 23:28:15
[2026-06-13 23:28:15,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:28:15,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:28:15,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:28:15,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:28:15,918.918 INFO    ] time= 13/06/2026 23:28:15
[2026-06-13 23:28:15,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:28:15,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:28:16,038.038 INFO    ] No existing commands found in stream
[2026-06-13 23:28:21,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:28:21,052.052 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 23:28:23,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:28:23,961.961 INFO    ] Checking for system updates...
[2026-06-13 23:28:23,983.983 INFO    ] 200
[2026-06-13 23:28:23,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:24,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:24,018.018 INFO    ] No update needed
[2026-06-13 23:28:24,019.019 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:24,039.039 INFO    ] 200
[2026-06-13 23:28:24,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:24,064.064 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:24,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:28:24,203.203 INFO    ] No camera update needed
[2026-06-13 23:28:24,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:24,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:24,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:24,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:28:26,251.251 INFO    ] ================================================
[2026-06-13 23:28:26,266.266 INFO    ] Launching Daemon at Sat Jun 13 23:28:26 IST 2026
[2026-06-13 23:28:26,277.277 INFO    ] ================================================
[2026-06-13 23:28:26,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:28:26
[2026-06-13 23:28:26,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:28:27,105.105 INFO    ] Initializing speech engine...
[2026-06-13 23:28:27,119.119 INFO    ] 2026-06-13 23:28:27
[2026-06-13 23:28:27,330.330 INFO    ] 2026-06-13 23:28:27
[2026-06-13 23:28:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:28:27,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:28:27,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:28:27,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:28:27,753.753 INFO    ] time= 13/06/2026 23:28:27
[2026-06-13 23:28:27,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:28:27,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:28:27,850.850 INFO    ] No existing commands found in stream
[2026-06-13 23:28:32,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:28:32,863.863 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 23:28:34,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:28:34,385.385 INFO    ] Checking for system updates...
[2026-06-13 23:28:34,407.407 INFO    ] 200
[2026-06-13 23:28:34,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:34,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:34,443.443 INFO    ] No update needed
[2026-06-13 23:28:34,444.444 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:34,466.466 INFO    ] 200
[2026-06-13 23:28:34,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:34,492.492 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:34,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:34,527.527 INFO    ] No camera update needed
[2026-06-13 23:28:34,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:34,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:34,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:34,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:28:36,576.576 INFO    ] ================================================
[2026-06-13 23:28:36,592.592 INFO    ] Launching Daemon at Sat Jun 13 23:28:36 IST 2026
[2026-06-13 23:28:36,604.604 INFO    ] ================================================
[2026-06-13 23:28:36,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:28:36
[2026-06-13 23:28:37,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:28:37,401.401 INFO    ] Initializing speech engine...
[2026-06-13 23:28:37,411.411 INFO    ] 2026-06-13 23:28:37
[2026-06-13 23:28:37,625.625 INFO    ] 2026-06-13 23:28:37
[2026-06-13 23:28:37,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:28:37,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:28:37,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:28:37,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:28:38,058.058 INFO    ] time= 13/06/2026 23:28:38
[2026-06-13 23:28:38,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:28:38,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:28:38,177.177 INFO    ] No existing commands found in stream
[2026-06-13 23:28:43,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:28:43,191.191 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 23:28:46,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:28:46,636.636 INFO    ] Checking for system updates...
[2026-06-13 23:28:46,656.656 INFO    ] 200
[2026-06-13 23:28:46,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:46,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:28:46,690.690 INFO    ] No update needed
[2026-06-13 23:28:46,691.691 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:46,711.711 INFO    ] 200
[2026-06-13 23:28:46,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:46,736.736 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:46,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:28:46,782.782 INFO    ] No camera update needed
[2026-06-13 23:28:46,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:46,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:46,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:46,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:28:48,837.837 INFO    ] ================================================
[2026-06-13 23:28:48,852.852 INFO    ] Launching Daemon at Sat Jun 13 23:28:48 IST 2026
[2026-06-13 23:28:48,863.863 INFO    ] ================================================
[2026-06-13 23:28:49,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:28:49
[2026-06-13 23:28:49,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:28:50,083.083 INFO    ] Initializing speech engine...
[2026-06-13 23:28:50,087.087 INFO    ] 2026-06-13 23:28:50
[2026-06-13 23:28:50,304.304 INFO    ] 2026-06-13 23:28:50
[2026-06-13 23:28:50,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:28:50,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:28:50,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:28:50,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:28:50,713.713 INFO    ] time= 13/06/2026 23:28:50
[2026-06-13 23:28:50,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:28:50,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:28:50,824.824 INFO    ] No existing commands found in stream
[2026-06-13 23:28:55,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:28:55,835.835 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-13 23:28:59,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:28:59,571.571 INFO    ] Checking for system updates...
[2026-06-13 23:28:59,592.592 INFO    ] 200
[2026-06-13 23:28:59,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:59,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:59,627.627 INFO    ] No update needed
[2026-06-13 23:28:59,629.629 INFO    ] Checking for camera pi updates...
[2026-06-13 23:28:59,649.649 INFO    ] 200
[2026-06-13 23:28:59,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:28:59,674.674 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:28:59,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:28:59,699.699 INFO    ] No camera update needed
[2026-06-13 23:28:59,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:28:59,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:28:59,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:28:59,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:01,745.745 INFO    ] ================================================
[2026-06-13 23:29:01,780.780 INFO    ] Launching Daemon at Sat Jun 13 23:29:01 IST 2026
[2026-06-13 23:29:01,808.808 INFO    ] ================================================
[2026-06-13 23:29:02,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:02
[2026-06-13 23:29:02,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:02,720.720 INFO    ] Initializing speech engine...
[2026-06-13 23:29:02,737.737 INFO    ] 2026-06-13 23:29:02
[2026-06-13 23:29:02,950.950 INFO    ] 2026-06-13 23:29:02
[2026-06-13 23:29:02,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:03,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:29:03,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:29:03,290.290 INFO    ] time= 13/06/2026 23:29:03
[2026-06-13 23:29:03,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:29:03,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:29:03,434.434 INFO    ] No existing commands found in stream
[2026-06-13 23:29:08,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:29:08,446.446 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-13 23:29:11,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:29:11,402.402 INFO    ] Checking for system updates...
[2026-06-13 23:29:11,424.424 INFO    ] 200
[2026-06-13 23:29:11,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:11,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:29:11,457.457 INFO    ] No update needed
[2026-06-13 23:29:11,459.459 INFO    ] Checking for camera pi updates...
[2026-06-13 23:29:11,482.482 INFO    ] 200
[2026-06-13 23:29:11,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:11,509.509 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:29:11,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:29:11,551.551 INFO    ] No camera update needed
[2026-06-13 23:29:11,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:29:11,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:29:11,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:29:11,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:13,599.599 INFO    ] ================================================
[2026-06-13 23:29:13,615.615 INFO    ] Launching Daemon at Sat Jun 13 23:29:13 IST 2026
[2026-06-13 23:29:13,631.631 INFO    ] ================================================
[2026-06-13 23:29:13,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:13
[2026-06-13 23:29:14,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:14,484.484 INFO    ] Initializing speech engine...
[2026-06-13 23:29:14,487.487 INFO    ] 2026-06-13 23:29:14
[2026-06-13 23:29:14,695.695 INFO    ] 2026-06-13 23:29:14
[2026-06-13 23:29:14,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:14,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:14,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:29:15,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:29:15,112.112 INFO    ] time= 13/06/2026 23:29:15
[2026-06-13 23:29:15,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:29:15,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:29:15,319.319 INFO    ] No existing commands found in stream
[2026-06-13 23:29:20,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:29:20,337.337 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-13 23:29:22,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:29:22,314.314 INFO    ] Checking for system updates...
[2026-06-13 23:29:22,335.335 INFO    ] 200
[2026-06-13 23:29:22,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:22,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:29:22,370.370 INFO    ] No update needed
[2026-06-13 23:29:22,371.371 INFO    ] Checking for camera pi updates...
[2026-06-13 23:29:22,391.391 INFO    ] 200
[2026-06-13 23:29:22,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:22,415.415 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:29:22,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:29:22,454.454 INFO    ] No camera update needed
[2026-06-13 23:29:22,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:29:22,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:29:22,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:29:22,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:24,501.501 INFO    ] ================================================
[2026-06-13 23:29:24,516.516 INFO    ] Launching Daemon at Sat Jun 13 23:29:24 IST 2026
[2026-06-13 23:29:24,527.527 INFO    ] ================================================
[2026-06-13 23:29:24,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:24
[2026-06-13 23:29:25,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:25,307.307 INFO    ] Initializing speech engine...
[2026-06-13 23:29:25,312.312 INFO    ] 2026-06-13 23:29:25
[2026-06-13 23:29:25,514.514 INFO    ] 2026-06-13 23:29:25
[2026-06-13 23:29:25,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:25,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:25,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:29:25,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:29:25,924.924 INFO    ] time= 13/06/2026 23:29:25
[2026-06-13 23:29:25,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:29:25,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:29:26,030.030 INFO    ] No existing commands found in stream
[2026-06-13 23:29:31,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:29:31,042.042 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 23:29:31,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:29:31,880.880 INFO    ] Checking for system updates...
[2026-06-13 23:29:31,904.904 INFO    ] 200
[2026-06-13 23:29:31,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:31,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:29:31,960.960 INFO    ] No update needed
[2026-06-13 23:29:31,963.963 INFO    ] Checking for camera pi updates...
[2026-06-13 23:29:32,001.001 INFO    ] 200
[2026-06-13 23:29:32,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:32,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:29:32,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:29:32,099.099 INFO    ] No camera update needed
[2026-06-13 23:29:32,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:29:32,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:29:32,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:29:32,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:34,165.165 INFO    ] ================================================
[2026-06-13 23:29:34,181.181 INFO    ] Launching Daemon at Sat Jun 13 23:29:34 IST 2026
[2026-06-13 23:29:34,191.191 INFO    ] ================================================
[2026-06-13 23:29:34,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:34
[2026-06-13 23:29:35,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:35,308.308 INFO    ] Initializing speech engine...
[2026-06-13 23:29:35,321.321 INFO    ] 2026-06-13 23:29:35
[2026-06-13 23:29:35,539.539 INFO    ] 2026-06-13 23:29:35
[2026-06-13 23:29:35,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:35,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:35,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:29:35,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:29:35,957.957 INFO    ] time= 13/06/2026 23:29:35
[2026-06-13 23:29:35,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:29:36,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:29:36,094.094 INFO    ] No existing commands found in stream
[2026-06-13 23:29:41,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:29:41,108.108 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-13 23:29:44,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:29:44,319.319 INFO    ] Checking for system updates...
[2026-06-13 23:29:44,341.341 INFO    ] 200
[2026-06-13 23:29:44,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:44,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:29:44,382.382 INFO    ] No update needed
[2026-06-13 23:29:44,384.384 INFO    ] Checking for camera pi updates...
[2026-06-13 23:29:44,403.403 INFO    ] 200
[2026-06-13 23:29:44,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:44,429.429 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:29:44,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:29:44,468.468 INFO    ] No camera update needed
[2026-06-13 23:29:44,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:29:44,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:29:44,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:29:44,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:46,517.517 INFO    ] ================================================
[2026-06-13 23:29:46,533.533 INFO    ] Launching Daemon at Sat Jun 13 23:29:46 IST 2026
[2026-06-13 23:29:46,544.544 INFO    ] ================================================
[2026-06-13 23:29:46,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:46
[2026-06-13 23:29:47,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:47,344.344 INFO    ] Initializing speech engine...
[2026-06-13 23:29:47,354.354 INFO    ] 2026-06-13 23:29:47
[2026-06-13 23:29:47,558.558 INFO    ] 2026-06-13 23:29:47
[2026-06-13 23:29:47,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:47,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:47,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:29:47,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:29:47,967.967 INFO    ] time= 13/06/2026 23:29:47
[2026-06-13 23:29:47,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:29:48,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:29:48,071.071 INFO    ] No existing commands found in stream
[2026-06-13 23:29:53,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:29:53,084.084 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-13 23:29:56,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:29:56,375.375 INFO    ] Checking for system updates...
[2026-06-13 23:29:56,396.396 INFO    ] 200
[2026-06-13 23:29:56,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:56,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:29:56,432.432 INFO    ] No update needed
[2026-06-13 23:29:56,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 23:29:56,453.453 INFO    ] 200
[2026-06-13 23:29:56,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:29:56,478.478 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:29:56,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:29:56,526.526 INFO    ] No camera update needed
[2026-06-13 23:29:56,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:29:56,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:29:56,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:29:56,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:29:58,574.574 INFO    ] ================================================
[2026-06-13 23:29:58,590.590 INFO    ] Launching Daemon at Sat Jun 13 23:29:58 IST 2026
[2026-06-13 23:29:58,601.601 INFO    ] ================================================
[2026-06-13 23:29:58,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:29:58
[2026-06-13 23:29:59,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:29:59,410.410 INFO    ] Initializing speech engine...
[2026-06-13 23:29:59,415.415 INFO    ] 2026-06-13 23:29:59
[2026-06-13 23:29:59,622.622 INFO    ] 2026-06-13 23:29:59
[2026-06-13 23:29:59,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:29:59,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:29:59,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:00,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:00,122.122 INFO    ] time= 13/06/2026 23:30:00
[2026-06-13 23:30:00,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:00,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:30:00,353.353 INFO    ] No existing commands found in stream
[2026-06-13 23:30:05,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:30:05,377.377 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-13 23:30:08,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:30:08,724.724 INFO    ] Checking for system updates...
[2026-06-13 23:30:08,766.766 INFO    ] 200
[2026-06-13 23:30:08,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:08,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:08,836.836 INFO    ] No update needed
[2026-06-13 23:30:08,839.839 INFO    ] Checking for camera pi updates...
[2026-06-13 23:30:08,873.873 INFO    ] 200
[2026-06-13 23:30:08,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:08,899.899 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:30:08,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:08,939.939 INFO    ] No camera update needed
[2026-06-13 23:30:08,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:30:08,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:30:08,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:30:08,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:30:10,990.990 INFO    ] ================================================
[2026-06-13 23:30:11,006.006 INFO    ] Launching Daemon at Sat Jun 13 23:30:11 IST 2026
[2026-06-13 23:30:11,017.017 INFO    ] ================================================
[2026-06-13 23:30:11,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:30:11
[2026-06-13 23:30:11,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:30:11,891.891 INFO    ] Initializing speech engine...
[2026-06-13 23:30:11,895.895 INFO    ] 2026-06-13 23:30:11
[2026-06-13 23:30:12,102.102 INFO    ] 2026-06-13 23:30:12
[2026-06-13 23:30:12,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:30:12,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:30:12,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:12,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:12,526.526 INFO    ] time= 13/06/2026 23:30:12
[2026-06-13 23:30:12,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:12,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:30:12,623.623 INFO    ] No existing commands found in stream
[2026-06-13 23:30:17,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:30:17,636.636 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-13 23:30:19,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:30:19,139.139 INFO    ] Checking for system updates...
[2026-06-13 23:30:19,160.160 INFO    ] 200
[2026-06-13 23:30:19,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:19,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:19,196.196 INFO    ] No update needed
[2026-06-13 23:30:19,197.197 INFO    ] Checking for camera pi updates...
[2026-06-13 23:30:19,217.217 INFO    ] 200
[2026-06-13 23:30:19,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:19,243.243 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:30:19,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:19,283.283 INFO    ] No camera update needed
[2026-06-13 23:30:19,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:30:19,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:30:19,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:30:19,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:30:21,333.333 INFO    ] ================================================
[2026-06-13 23:30:21,348.348 INFO    ] Launching Daemon at Sat Jun 13 23:30:21 IST 2026
[2026-06-13 23:30:21,359.359 INFO    ] ================================================
[2026-06-13 23:30:21,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:30:21
[2026-06-13 23:30:22,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:30:22,346.346 INFO    ] Initializing speech engine...
[2026-06-13 23:30:22,356.356 INFO    ] 2026-06-13 23:30:22
[2026-06-13 23:30:22,668.668 INFO    ] 2026-06-13 23:30:22
[2026-06-13 23:30:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:30:22,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:30:22,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:23,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:23,180.180 INFO    ] time= 13/06/2026 23:30:23
[2026-06-13 23:30:23,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:23,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:30:23,317.317 INFO    ] No existing commands found in stream
[2026-06-13 23:30:28,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:30:28,344.344 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-13 23:30:32,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:30:32,230.230 INFO    ] Checking for system updates...
[2026-06-13 23:30:32,250.250 INFO    ] 200
[2026-06-13 23:30:32,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:32,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:32,285.285 INFO    ] No update needed
[2026-06-13 23:30:32,286.286 INFO    ] Checking for camera pi updates...
[2026-06-13 23:30:32,306.306 INFO    ] 200
[2026-06-13 23:30:32,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:32,330.330 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:30:32,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:30:32,476.476 INFO    ] No camera update needed
[2026-06-13 23:30:32,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:30:32,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:30:32,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:30:32,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:30:34,516.516 INFO    ] ================================================
[2026-06-13 23:30:34,531.531 INFO    ] Launching Daemon at Sat Jun 13 23:30:34 IST 2026
[2026-06-13 23:30:34,542.542 INFO    ] ================================================
[2026-06-13 23:30:34,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:30:34
[2026-06-13 23:30:35,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:30:35,324.324 INFO    ] Initializing speech engine...
[2026-06-13 23:30:35,330.330 INFO    ] 2026-06-13 23:30:35
[2026-06-13 23:30:35,532.532 INFO    ] 2026-06-13 23:30:35
[2026-06-13 23:30:35,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:30:35,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:30:35,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:35,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:35,935.935 INFO    ] time= 13/06/2026 23:30:35
[2026-06-13 23:30:35,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:35,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:30:36,044.044 INFO    ] No existing commands found in stream
[2026-06-13 23:30:41,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:30:41,056.056 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-13 23:30:43,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:30:43,805.805 INFO    ] Checking for system updates...
[2026-06-13 23:30:43,827.827 INFO    ] 200
[2026-06-13 23:30:43,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:43,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:30:43,860.860 INFO    ] No update needed
[2026-06-13 23:30:43,861.861 INFO    ] Checking for camera pi updates...
[2026-06-13 23:30:43,880.880 INFO    ] 200
[2026-06-13 23:30:43,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:43,906.906 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:30:43,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:30:43,948.948 INFO    ] No camera update needed
[2026-06-13 23:30:43,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:30:43,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:30:43,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:30:43,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:30:46,994.994 INFO    ] ================================================
[2026-06-13 23:30:46,010.010 INFO    ] Launching Daemon at Sat Jun 13 23:30:46 IST 2026
[2026-06-13 23:30:46,021.021 INFO    ] ================================================
[2026-06-13 23:30:46,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:30:46
[2026-06-13 23:30:46,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:30:46,876.876 INFO    ] Initializing speech engine...
[2026-06-13 23:30:46,882.882 INFO    ] 2026-06-13 23:30:46
[2026-06-13 23:30:47,096.096 INFO    ] 2026-06-13 23:30:47
[2026-06-13 23:30:47,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:30:47,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:30:47,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:47,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:47,523.523 INFO    ] time= 13/06/2026 23:30:47
[2026-06-13 23:30:47,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:47,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:30:47,620.620 INFO    ] No existing commands found in stream
[2026-06-13 23:30:52,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:30:52,634.634 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-13 23:30:56,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:30:56,231.231 INFO    ] Checking for system updates...
[2026-06-13 23:30:56,252.252 INFO    ] 200
[2026-06-13 23:30:56,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:56,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:30:56,286.286 INFO    ] No update needed
[2026-06-13 23:30:56,288.288 INFO    ] Checking for camera pi updates...
[2026-06-13 23:30:56,308.308 INFO    ] 200
[2026-06-13 23:30:56,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:30:56,333.333 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:30:56,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:30:56,377.377 INFO    ] No camera update needed
[2026-06-13 23:30:56,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:30:56,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:30:56,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:30:56,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:30:58,424.424 INFO    ] ================================================
[2026-06-13 23:30:58,440.440 INFO    ] Launching Daemon at Sat Jun 13 23:30:58 IST 2026
[2026-06-13 23:30:58,451.451 INFO    ] ================================================
[2026-06-13 23:30:58,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:30:58
[2026-06-13 23:30:59,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:30:59,249.249 INFO    ] Initializing speech engine...
[2026-06-13 23:30:59,258.258 INFO    ] 2026-06-13 23:30:59
[2026-06-13 23:30:59,482.482 INFO    ] 2026-06-13 23:30:59
[2026-06-13 23:30:59,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:30:59,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:30:59,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:30:59,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:30:59,906.906 INFO    ] time= 13/06/2026 23:30:59
[2026-06-13 23:30:59,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:30:59,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:00,037.037 INFO    ] No existing commands found in stream
[2026-06-13 23:31:05,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:31:05,051.051 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-13 23:31:07,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:31:07,912.912 INFO    ] Checking for system updates...
[2026-06-13 23:31:07,934.934 INFO    ] 200
[2026-06-13 23:31:07,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:07,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:07,967.967 INFO    ] No update needed
[2026-06-13 23:31:07,969.969 INFO    ] Checking for camera pi updates...
[2026-06-13 23:31:07,988.988 INFO    ] 200
[2026-06-13 23:31:07,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:08,015.015 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:31:08,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:08,053.053 INFO    ] No camera update needed
[2026-06-13 23:31:08,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:31:08,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:31:08,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:31:08,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:31:10,100.100 INFO    ] ================================================
[2026-06-13 23:31:10,115.115 INFO    ] Launching Daemon at Sat Jun 13 23:31:10 IST 2026
[2026-06-13 23:31:10,126.126 INFO    ] ================================================
[2026-06-13 23:31:10,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:31:10
[2026-06-13 23:31:10,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:31:10,910.910 INFO    ] Initializing speech engine...
[2026-06-13 23:31:10,914.914 INFO    ] 2026-06-13 23:31:10
[2026-06-13 23:31:11,135.135 INFO    ] 2026-06-13 23:31:11
[2026-06-13 23:31:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:31:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:31:11,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:31:11,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:31:11,581.581 INFO    ] time= 13/06/2026 23:31:11
[2026-06-13 23:31:11,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:31:11,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:11,703.703 INFO    ] No existing commands found in stream
[2026-06-13 23:31:16,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:31:16,716.716 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-13 23:31:19,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:31:19,835.835 INFO    ] Checking for system updates...
[2026-06-13 23:31:19,856.856 INFO    ] 200
[2026-06-13 23:31:19,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:19,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:31:19,889.889 INFO    ] No update needed
[2026-06-13 23:31:19,890.890 INFO    ] Checking for camera pi updates...
[2026-06-13 23:31:19,911.911 INFO    ] 200
[2026-06-13 23:31:19,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:19,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:31:19,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:31:19,985.985 INFO    ] No camera update needed
[2026-06-13 23:31:19,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:31:19,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:31:19,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:31:19,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:31:22,032.032 INFO    ] ================================================
[2026-06-13 23:31:22,047.047 INFO    ] Launching Daemon at Sat Jun 13 23:31:22 IST 2026
[2026-06-13 23:31:22,059.059 INFO    ] ================================================
[2026-06-13 23:31:22,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:31:22
[2026-06-13 23:31:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:31:22,862.862 INFO    ] Initializing speech engine...
[2026-06-13 23:31:22,867.867 INFO    ] 2026-06-13 23:31:22
[2026-06-13 23:31:23,073.073 INFO    ] 2026-06-13 23:31:23
[2026-06-13 23:31:23,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:31:23,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:31:23,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:31:23,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:31:23,484.484 INFO    ] time= 13/06/2026 23:31:23
[2026-06-13 23:31:23,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:31:23,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:23,596.596 INFO    ] No existing commands found in stream
[2026-06-13 23:31:28,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:31:28,610.610 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 23:31:30,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:31:30,817.817 INFO    ] Checking for system updates...
[2026-06-13 23:31:30,838.838 INFO    ] 200
[2026-06-13 23:31:30,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:30,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:30,872.872 INFO    ] No update needed
[2026-06-13 23:31:30,873.873 INFO    ] Checking for camera pi updates...
[2026-06-13 23:31:30,893.893 INFO    ] 200
[2026-06-13 23:31:30,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:30,920.920 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:31:30,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:30,957.957 INFO    ] No camera update needed
[2026-06-13 23:31:30,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:31:30,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:31:30,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:31:30,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:31:33,006.006 INFO    ] ================================================
[2026-06-13 23:31:33,022.022 INFO    ] Launching Daemon at Sat Jun 13 23:31:33 IST 2026
[2026-06-13 23:31:33,033.033 INFO    ] ================================================
[2026-06-13 23:31:33,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:31:33
[2026-06-13 23:31:33,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:31:33,825.825 INFO    ] Initializing speech engine...
[2026-06-13 23:31:33,829.829 INFO    ] 2026-06-13 23:31:33
[2026-06-13 23:31:34,027.027 INFO    ] 2026-06-13 23:31:34
[2026-06-13 23:31:34,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:31:34,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:31:34,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:31:34,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:31:34,466.466 INFO    ] time= 13/06/2026 23:31:34
[2026-06-13 23:31:34,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:31:34,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:34,626.626 INFO    ] No existing commands found in stream
[2026-06-13 23:31:39,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:31:39,637.637 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 23:31:42,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:31:42,405.405 INFO    ] Checking for system updates...
[2026-06-13 23:31:42,427.427 INFO    ] 200
[2026-06-13 23:31:42,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:42,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:42,463.463 INFO    ] No update needed
[2026-06-13 23:31:42,464.464 INFO    ] Checking for camera pi updates...
[2026-06-13 23:31:42,483.483 INFO    ] 200
[2026-06-13 23:31:42,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:42,508.508 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:31:42,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:42,565.565 INFO    ] No camera update needed
[2026-06-13 23:31:42,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:31:42,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:31:42,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:31:42,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:31:44,613.613 INFO    ] ================================================
[2026-06-13 23:31:44,629.629 INFO    ] Launching Daemon at Sat Jun 13 23:31:44 IST 2026
[2026-06-13 23:31:44,641.641 INFO    ] ================================================
[2026-06-13 23:31:44,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:31:44
[2026-06-13 23:31:45,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:31:45,447.447 INFO    ] Initializing speech engine...
[2026-06-13 23:31:45,453.453 INFO    ] 2026-06-13 23:31:45
[2026-06-13 23:31:45,656.656 INFO    ] 2026-06-13 23:31:45
[2026-06-13 23:31:45,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:31:45,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:31:45,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:31:46,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:31:46,073.073 INFO    ] time= 13/06/2026 23:31:46
[2026-06-13 23:31:46,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:31:46,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:46,170.170 INFO    ] No existing commands found in stream
[2026-06-13 23:31:51,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:31:51,181.181 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-13 23:31:54,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:31:55,024.024 INFO    ] Checking for system updates...
[2026-06-13 23:31:55,051.051 INFO    ] 200
[2026-06-13 23:31:55,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:55,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:55,092.092 INFO    ] No update needed
[2026-06-13 23:31:55,094.094 INFO    ] Checking for camera pi updates...
[2026-06-13 23:31:55,116.116 INFO    ] 200
[2026-06-13 23:31:55,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:31:55,143.143 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:31:55,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:31:55,183.183 INFO    ] No camera update needed
[2026-06-13 23:31:55,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:31:55,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:31:55,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:31:55,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:31:57,238.238 INFO    ] ================================================
[2026-06-13 23:31:57,255.255 INFO    ] Launching Daemon at Sat Jun 13 23:31:57 IST 2026
[2026-06-13 23:31:57,265.265 INFO    ] ================================================
[2026-06-13 23:31:57,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:31:57
[2026-06-13 23:31:58,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:31:58,381.381 INFO    ] Initializing speech engine...
[2026-06-13 23:31:58,399.399 INFO    ] 2026-06-13 23:31:58
[2026-06-13 23:31:58,680.680 INFO    ] 2026-06-13 23:31:58
[2026-06-13 23:31:58,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:31:58,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:31:58,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:31:59,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:31:59,034.034 INFO    ] time= 13/06/2026 23:31:59
[2026-06-13 23:31:59,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:31:59,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:31:59,112.112 INFO    ] No existing commands found in stream
[2026-06-13 23:32:04,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:32:04,127.127 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-13 23:32:05,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:32:05,159.159 INFO    ] Checking for system updates...
[2026-06-13 23:32:05,179.179 INFO    ] 200
[2026-06-13 23:32:05,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:05,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:32:05,215.215 INFO    ] No update needed
[2026-06-13 23:32:05,216.216 INFO    ] Checking for camera pi updates...
[2026-06-13 23:32:05,237.237 INFO    ] 200
[2026-06-13 23:32:05,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:05,263.263 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:32:05,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:32:05,301.301 INFO    ] No camera update needed
[2026-06-13 23:32:05,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:32:05,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:32:05,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:32:05,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:32:07,351.351 INFO    ] ================================================
[2026-06-13 23:32:07,366.366 INFO    ] Launching Daemon at Sat Jun 13 23:32:07 IST 2026
[2026-06-13 23:32:07,377.377 INFO    ] ================================================
[2026-06-13 23:32:07,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:32:07
[2026-06-13 23:32:08,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:32:08,183.183 INFO    ] Initializing speech engine...
[2026-06-13 23:32:08,188.188 INFO    ] 2026-06-13 23:32:08
[2026-06-13 23:32:08,392.392 INFO    ] 2026-06-13 23:32:08
[2026-06-13 23:32:08,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:32:08,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:32:08,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:32:08,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:32:08,802.802 INFO    ] time= 13/06/2026 23:32:08
[2026-06-13 23:32:08,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:32:08,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:32:09,010.010 INFO    ] No existing commands found in stream
[2026-06-13 23:32:14,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:32:14,031.031 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 23:32:17,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:32:17,941.941 INFO    ] Checking for system updates...
[2026-06-13 23:32:17,961.961 INFO    ] 200
[2026-06-13 23:32:17,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:17,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:17,997.997 INFO    ] No update needed
[2026-06-13 23:32:17,998.998 INFO    ] Checking for camera pi updates...
[2026-06-13 23:32:18,019.019 INFO    ] 200
[2026-06-13 23:32:18,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:18,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:32:18,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:18,069.069 INFO    ] No camera update needed
[2026-06-13 23:32:18,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:32:18,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:32:18,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:32:18,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:32:20,120.120 INFO    ] ================================================
[2026-06-13 23:32:20,138.138 INFO    ] Launching Daemon at Sat Jun 13 23:32:20 IST 2026
[2026-06-13 23:32:20,150.150 INFO    ] ================================================
[2026-06-13 23:32:20,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:32:20
[2026-06-13 23:32:20,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:32:20,972.972 INFO    ] Initializing speech engine...
[2026-06-13 23:32:20,976.976 INFO    ] 2026-06-13 23:32:20
[2026-06-13 23:32:21,167.167 INFO    ] 2026-06-13 23:32:21
[2026-06-13 23:32:21,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:32:21,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:32:21,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:32:21,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:32:21,634.634 INFO    ] time= 13/06/2026 23:32:21
[2026-06-13 23:32:21,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:32:21,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:32:21,766.766 INFO    ] No existing commands found in stream
[2026-06-13 23:32:26,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:32:26,777.777 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-13 23:32:31,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:32:31,073.073 INFO    ] Checking for system updates...
[2026-06-13 23:32:31,093.093 INFO    ] 200
[2026-06-13 23:32:31,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:31,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:32:31,127.127 INFO    ] No update needed
[2026-06-13 23:32:31,128.128 INFO    ] Checking for camera pi updates...
[2026-06-13 23:32:31,149.149 INFO    ] 200
[2026-06-13 23:32:31,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:31,174.174 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:32:31,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:32:31,213.213 INFO    ] No camera update needed
[2026-06-13 23:32:31,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:32:31,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:32:31,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:32:31,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:32:33,262.262 INFO    ] ================================================
[2026-06-13 23:32:33,278.278 INFO    ] Launching Daemon at Sat Jun 13 23:32:33 IST 2026
[2026-06-13 23:32:33,289.289 INFO    ] ================================================
[2026-06-13 23:32:33,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:32:33
[2026-06-13 23:32:34,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:32:34,413.413 INFO    ] Initializing speech engine...
[2026-06-13 23:32:34,418.418 INFO    ] 2026-06-13 23:32:34
[2026-06-13 23:32:34,613.613 INFO    ] 2026-06-13 23:32:34
[2026-06-13 23:32:34,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:32:34,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:32:34,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:32:34,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:32:35,027.027 INFO    ] time= 13/06/2026 23:32:35
[2026-06-13 23:32:35,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:32:35,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:32:35,204.204 INFO    ] No existing commands found in stream
[2026-06-13 23:32:40,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:32:40,213.213 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-13 23:32:44,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:32:44,180.180 INFO    ] Checking for system updates...
[2026-06-13 23:32:44,201.201 INFO    ] 200
[2026-06-13 23:32:44,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:44,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:44,234.234 INFO    ] No update needed
[2026-06-13 23:32:44,236.236 INFO    ] Checking for camera pi updates...
[2026-06-13 23:32:44,257.257 INFO    ] 200
[2026-06-13 23:32:44,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:44,284.284 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:32:44,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:44,425.425 INFO    ] No camera update needed
[2026-06-13 23:32:44,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:32:44,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:32:44,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:32:44,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:32:46,474.474 INFO    ] ================================================
[2026-06-13 23:32:46,489.489 INFO    ] Launching Daemon at Sat Jun 13 23:32:46 IST 2026
[2026-06-13 23:32:46,500.500 INFO    ] ================================================
[2026-06-13 23:32:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:32:46
[2026-06-13 23:32:47,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:32:47,316.316 INFO    ] Initializing speech engine...
[2026-06-13 23:32:47,324.324 INFO    ] 2026-06-13 23:32:47
[2026-06-13 23:32:47,543.543 INFO    ] 2026-06-13 23:32:47
[2026-06-13 23:32:47,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:32:47,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:32:47,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:32:47,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:32:47,978.978 INFO    ] time= 13/06/2026 23:32:47
[2026-06-13 23:32:48,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:32:48,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:32:48,101.101 INFO    ] No existing commands found in stream
[2026-06-13 23:32:53,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:32:53,114.114 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-13 23:32:54,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:32:54,841.841 INFO    ] Checking for system updates...
[2026-06-13 23:32:54,862.862 INFO    ] 200
[2026-06-13 23:32:54,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:54,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:54,898.898 INFO    ] No update needed
[2026-06-13 23:32:54,899.899 INFO    ] Checking for camera pi updates...
[2026-06-13 23:32:54,920.920 INFO    ] 200
[2026-06-13 23:32:54,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:32:54,946.946 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:32:54,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:32:54,984.984 INFO    ] No camera update needed
[2026-06-13 23:32:54,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:32:54,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:32:54,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:32:54,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:32:57,034.034 INFO    ] ================================================
[2026-06-13 23:32:57,050.050 INFO    ] Launching Daemon at Sat Jun 13 23:32:57 IST 2026
[2026-06-13 23:32:57,061.061 INFO    ] ================================================
[2026-06-13 23:32:57,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:32:57
[2026-06-13 23:32:57,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:32:57,870.870 INFO    ] Initializing speech engine...
[2026-06-13 23:32:57,875.875 INFO    ] 2026-06-13 23:32:57
[2026-06-13 23:32:58,078.078 INFO    ] 2026-06-13 23:32:58
[2026-06-13 23:32:58,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:32:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:32:58,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:32:58,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:32:58,492.492 INFO    ] time= 13/06/2026 23:32:58
[2026-06-13 23:32:58,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:32:58,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:32:58,593.593 INFO    ] No existing commands found in stream
[2026-06-13 23:33:03,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:33:03,604.604 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 23:33:07,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:33:07,121.121 INFO    ] Checking for system updates...
[2026-06-13 23:33:07,157.157 INFO    ] 200
[2026-06-13 23:33:07,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:07,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:07,216.216 INFO    ] No update needed
[2026-06-13 23:33:07,219.219 INFO    ] Checking for camera pi updates...
[2026-06-13 23:33:07,254.254 INFO    ] 200
[2026-06-13 23:33:07,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:07,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:33:07,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:07,340.340 INFO    ] No camera update needed
[2026-06-13 23:33:07,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:33:07,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:33:07,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:33:07,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:33:09,389.389 INFO    ] ================================================
[2026-06-13 23:33:09,405.405 INFO    ] Launching Daemon at Sat Jun 13 23:33:09 IST 2026
[2026-06-13 23:33:09,416.416 INFO    ] ================================================
[2026-06-13 23:33:09,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:33:09
[2026-06-13 23:33:10,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:33:10,233.233 INFO    ] Initializing speech engine...
[2026-06-13 23:33:10,245.245 INFO    ] 2026-06-13 23:33:10
[2026-06-13 23:33:10,453.453 INFO    ] 2026-06-13 23:33:10
[2026-06-13 23:33:10,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:33:10,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:33:10,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:33:10,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:33:10,856.856 INFO    ] time= 13/06/2026 23:33:10
[2026-06-13 23:33:10,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:33:10,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:33:10,994.994 INFO    ] No existing commands found in stream
[2026-06-13 23:33:16,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:33:16,024.024 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-13 23:33:19,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:33:19,055.055 INFO    ] Checking for system updates...
[2026-06-13 23:33:19,076.076 INFO    ] 200
[2026-06-13 23:33:19,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:19,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:19,109.109 INFO    ] No update needed
[2026-06-13 23:33:19,111.111 INFO    ] Checking for camera pi updates...
[2026-06-13 23:33:19,131.131 INFO    ] 200
[2026-06-13 23:33:19,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:19,158.158 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:33:19,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:19,203.203 INFO    ] No camera update needed
[2026-06-13 23:33:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:33:19,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:33:19,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:33:19,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:33:21,252.252 INFO    ] ================================================
[2026-06-13 23:33:21,269.269 INFO    ] Launching Daemon at Sat Jun 13 23:33:21 IST 2026
[2026-06-13 23:33:21,279.279 INFO    ] ================================================
[2026-06-13 23:33:21,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:33:21
[2026-06-13 23:33:22,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:33:22,383.383 INFO    ] Initializing speech engine...
[2026-06-13 23:33:22,392.392 INFO    ] 2026-06-13 23:33:22
[2026-06-13 23:33:22,687.687 INFO    ] 2026-06-13 23:33:22
[2026-06-13 23:33:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:33:22,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:33:22,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:33:23,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:33:23,066.066 INFO    ] time= 13/06/2026 23:33:23
[2026-06-13 23:33:23,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:33:23,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:33:23,192.192 INFO    ] No existing commands found in stream
[2026-06-13 23:33:28,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:33:28,207.207 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-13 23:33:32,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:33:32,410.410 INFO    ] Checking for system updates...
[2026-06-13 23:33:32,434.434 INFO    ] 200
[2026-06-13 23:33:32,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:32,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:32,477.477 INFO    ] No update needed
[2026-06-13 23:33:32,479.479 INFO    ] Checking for camera pi updates...
[2026-06-13 23:33:32,504.504 INFO    ] 200
[2026-06-13 23:33:32,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:32,533.533 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:33:32,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:33:32,558.558 INFO    ] No camera update needed
[2026-06-13 23:33:32,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:33:32,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:33:32,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:33:32,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:33:34,610.610 INFO    ] ================================================
[2026-06-13 23:33:34,626.626 INFO    ] Launching Daemon at Sat Jun 13 23:33:34 IST 2026
[2026-06-13 23:33:34,637.637 INFO    ] ================================================
[2026-06-13 23:33:35,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:33:35
[2026-06-13 23:33:35,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:33:35,457.457 INFO    ] Initializing speech engine...
[2026-06-13 23:33:35,462.462 INFO    ] 2026-06-13 23:33:35
[2026-06-13 23:33:35,654.654 INFO    ] 2026-06-13 23:33:35
[2026-06-13 23:33:35,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:33:35,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:33:35,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:33:35,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:33:35,945.945 INFO    ] time= 13/06/2026 23:33:35
[2026-06-13 23:33:35,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:33:35,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:33:36,039.039 INFO    ] No existing commands found in stream
[2026-06-13 23:33:41,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:33:41,076.076 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-13 23:33:44,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:33:44,225.225 INFO    ] Checking for system updates...
[2026-06-13 23:33:44,246.246 INFO    ] 200
[2026-06-13 23:33:44,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:44,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:33:44,282.282 INFO    ] No update needed
[2026-06-13 23:33:44,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 23:33:44,303.303 INFO    ] 200
[2026-06-13 23:33:44,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:44,328.328 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:33:44,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:33:44,376.376 INFO    ] No camera update needed
[2026-06-13 23:33:44,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:33:44,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:33:44,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:33:44,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:33:46,434.434 INFO    ] ================================================
[2026-06-13 23:33:46,450.450 INFO    ] Launching Daemon at Sat Jun 13 23:33:46 IST 2026
[2026-06-13 23:33:46,462.462 INFO    ] ================================================
[2026-06-13 23:33:47,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:33:47
[2026-06-13 23:33:47,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:33:47,706.706 INFO    ] Initializing speech engine...
[2026-06-13 23:33:47,711.711 INFO    ] 2026-06-13 23:33:47
[2026-06-13 23:33:47,915.915 INFO    ] 2026-06-13 23:33:47
[2026-06-13 23:33:47,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:33:48,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:33:48,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:33:48,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:33:48,329.329 INFO    ] time= 13/06/2026 23:33:48
[2026-06-13 23:33:48,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:33:48,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:33:48,426.426 INFO    ] No existing commands found in stream
[2026-06-13 23:33:53,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:33:53,440.440 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 23:33:55,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:33:55,720.720 INFO    ] Checking for system updates...
[2026-06-13 23:33:55,742.742 INFO    ] 200
[2026-06-13 23:33:55,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:55,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:33:55,777.777 INFO    ] No update needed
[2026-06-13 23:33:55,779.779 INFO    ] Checking for camera pi updates...
[2026-06-13 23:33:55,800.800 INFO    ] 200
[2026-06-13 23:33:55,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:33:55,828.828 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:33:55,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:33:55,869.869 INFO    ] No camera update needed
[2026-06-13 23:33:55,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:33:55,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:33:55,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:33:55,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:33:57,918.918 INFO    ] ================================================
[2026-06-13 23:33:57,934.934 INFO    ] Launching Daemon at Sat Jun 13 23:33:57 IST 2026
[2026-06-13 23:33:57,945.945 INFO    ] ================================================
[2026-06-13 23:33:58,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:33:58
[2026-06-13 23:33:58,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:33:58,740.740 INFO    ] Initializing speech engine...
[2026-06-13 23:33:58,744.744 INFO    ] 2026-06-13 23:33:58
[2026-06-13 23:33:58,947.947 INFO    ] 2026-06-13 23:33:58
[2026-06-13 23:33:58,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:33:59,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:33:59,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:33:59,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:33:59,357.357 INFO    ] time= 13/06/2026 23:33:59
[2026-06-13 23:33:59,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:33:59,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:33:59,460.460 INFO    ] No existing commands found in stream
[2026-06-13 23:34:04,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:04,473.473 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-13 23:34:06,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:34:06,765.765 INFO    ] Checking for system updates...
[2026-06-13 23:34:06,787.787 INFO    ] 200
[2026-06-13 23:34:06,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:06,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:06,822.822 INFO    ] No update needed
[2026-06-13 23:34:06,824.824 INFO    ] Checking for camera pi updates...
[2026-06-13 23:34:06,844.844 INFO    ] 200
[2026-06-13 23:34:06,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:06,869.869 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:34:06,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:06,910.910 INFO    ] No camera update needed
[2026-06-13 23:34:06,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:34:06,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:34:06,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:34:06,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:34:08,951.951 INFO    ] ================================================
[2026-06-13 23:34:08,959.959 INFO    ] Launching Daemon at Sat Jun 13 23:34:08 IST 2026
[2026-06-13 23:34:08,969.969 INFO    ] ================================================
[2026-06-13 23:34:09,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:34:09
[2026-06-13 23:34:09,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:34:09,787.787 INFO    ] Initializing speech engine...
[2026-06-13 23:34:09,791.791 INFO    ] 2026-06-13 23:34:09
[2026-06-13 23:34:09,991.991 INFO    ] 2026-06-13 23:34:09
[2026-06-13 23:34:10,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:34:10,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:34:10,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:34:10,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:34:10,400.400 INFO    ] time= 13/06/2026 23:34:10
[2026-06-13 23:34:10,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:34:10,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:34:10,503.503 INFO    ] No existing commands found in stream
[2026-06-13 23:34:15,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:15,517.517 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-13 23:34:16,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:34:16,782.782 INFO    ] Checking for system updates...
[2026-06-13 23:34:16,803.803 INFO    ] 200
[2026-06-13 23:34:16,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:16,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:16,840.840 INFO    ] No update needed
[2026-06-13 23:34:16,841.841 INFO    ] Checking for camera pi updates...
[2026-06-13 23:34:16,865.865 INFO    ] 200
[2026-06-13 23:34:16,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:16,892.892 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:34:16,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:16,941.941 INFO    ] No camera update needed
[2026-06-13 23:34:16,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:34:16,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:34:16,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:34:16,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:34:18,992.992 INFO    ] ================================================
[2026-06-13 23:34:19,007.007 INFO    ] Launching Daemon at Sat Jun 13 23:34:19 IST 2026
[2026-06-13 23:34:19,019.019 INFO    ] ================================================
[2026-06-13 23:34:19,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:34:19
[2026-06-13 23:34:19,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:34:19,895.895 INFO    ] Initializing speech engine...
[2026-06-13 23:34:19,905.905 INFO    ] 2026-06-13 23:34:19
[2026-06-13 23:34:20,113.113 INFO    ] 2026-06-13 23:34:20
[2026-06-13 23:34:20,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:34:20,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:34:20,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:34:20,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:34:20,533.533 INFO    ] time= 13/06/2026 23:34:20
[2026-06-13 23:34:20,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:34:20,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:34:20,610.610 INFO    ] No existing commands found in stream
[2026-06-13 23:34:25,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:25,620.620 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-13 23:34:28,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:34:28,894.894 INFO    ] Checking for system updates...
[2026-06-13 23:34:28,917.917 INFO    ] 200
[2026-06-13 23:34:28,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:28,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:28,954.954 INFO    ] No update needed
[2026-06-13 23:34:28,955.955 INFO    ] Checking for camera pi updates...
[2026-06-13 23:34:28,975.975 INFO    ] 200
[2026-06-13 23:34:28,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:29,001.001 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:34:29,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:29,051.051 INFO    ] No camera update needed
[2026-06-13 23:34:29,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:34:29,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:34:29,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:34:29,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:34:31,101.101 INFO    ] ================================================
[2026-06-13 23:34:31,117.117 INFO    ] Launching Daemon at Sat Jun 13 23:34:31 IST 2026
[2026-06-13 23:34:31,128.128 INFO    ] ================================================
[2026-06-13 23:34:31,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:34:31
[2026-06-13 23:34:31,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:34:32,058.058 INFO    ] Initializing speech engine...
[2026-06-13 23:34:32,062.062 INFO    ] 2026-06-13 23:34:32
[2026-06-13 23:34:32,272.272 INFO    ] 2026-06-13 23:34:32
[2026-06-13 23:34:32,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:34:32,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:34:32,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:34:32,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:34:32,689.689 INFO    ] time= 13/06/2026 23:34:32
[2026-06-13 23:34:32,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:34:32,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:34:32,803.803 INFO    ] No existing commands found in stream
[2026-06-13 23:34:37,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:37,821.821 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 23:34:38,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:34:38,493.493 INFO    ] Checking for system updates...
[2026-06-13 23:34:38,514.514 INFO    ] 200
[2026-06-13 23:34:38,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:38,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:38,547.547 INFO    ] No update needed
[2026-06-13 23:34:38,549.549 INFO    ] Checking for camera pi updates...
[2026-06-13 23:34:38,570.570 INFO    ] 200
[2026-06-13 23:34:38,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:38,595.595 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:34:38,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:34:38,641.641 INFO    ] No camera update needed
[2026-06-13 23:34:38,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:34:38,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:34:38,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:34:38,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:34:40,689.689 INFO    ] ================================================
[2026-06-13 23:34:40,706.706 INFO    ] Launching Daemon at Sat Jun 13 23:34:40 IST 2026
[2026-06-13 23:34:40,717.717 INFO    ] ================================================
[2026-06-13 23:34:41,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:34:41
[2026-06-13 23:34:41,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:34:41,560.560 INFO    ] Initializing speech engine...
[2026-06-13 23:34:41,573.573 INFO    ] 2026-06-13 23:34:41
[2026-06-13 23:34:41,782.782 INFO    ] 2026-06-13 23:34:41
[2026-06-13 23:34:41,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:34:41,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:34:42,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:34:42,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:34:42,194.194 INFO    ] time= 13/06/2026 23:34:42
[2026-06-13 23:34:42,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:34:42,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:34:42,307.307 INFO    ] No existing commands found in stream
[2026-06-13 23:34:47,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:47,324.324 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-13 23:34:50,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:34:50,799.799 INFO    ] Checking for system updates...
[2026-06-13 23:34:50,820.820 INFO    ] 200
[2026-06-13 23:34:50,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:50,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:34:50,856.856 INFO    ] No update needed
[2026-06-13 23:34:50,857.857 INFO    ] Checking for camera pi updates...
[2026-06-13 23:34:50,878.878 INFO    ] 200
[2026-06-13 23:34:50,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:34:50,903.903 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:34:51,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:34:51,043.043 INFO    ] No camera update needed
[2026-06-13 23:34:51,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:34:51,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:34:51,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:34:51,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:34:53,091.091 INFO    ] ================================================
[2026-06-13 23:34:53,106.106 INFO    ] Launching Daemon at Sat Jun 13 23:34:53 IST 2026
[2026-06-13 23:34:53,117.117 INFO    ] ================================================
[2026-06-13 23:34:53,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:34:53
[2026-06-13 23:34:53,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:34:53,963.963 INFO    ] Initializing speech engine...
[2026-06-13 23:34:53,974.974 INFO    ] 2026-06-13 23:34:53
[2026-06-13 23:34:54,184.184 INFO    ] 2026-06-13 23:34:54
[2026-06-13 23:34:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:34:54,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:34:54,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:34:54,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:34:54,597.597 INFO    ] time= 13/06/2026 23:34:54
[2026-06-13 23:34:54,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:34:54,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:34:54,704.704 INFO    ] No existing commands found in stream
[2026-06-13 23:34:59,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:34:59,717.717 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-13 23:35:01,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:35:01,855.855 INFO    ] Checking for system updates...
[2026-06-13 23:35:01,881.881 INFO    ] 200
[2026-06-13 23:35:01,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:01,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:35:01,923.923 INFO    ] No update needed
[2026-06-13 23:35:01,924.924 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:01,951.951 INFO    ] 200
[2026-06-13 23:35:01,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:01,984.984 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:02,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:35:02,024.024 INFO    ] No camera update needed
[2026-06-13 23:35:02,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:02,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:02,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:02,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:04,083.083 INFO    ] ================================================
[2026-06-13 23:35:04,099.099 INFO    ] Launching Daemon at Sat Jun 13 23:35:04 IST 2026
[2026-06-13 23:35:04,110.110 INFO    ] ================================================
[2026-06-13 23:35:04,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:04
[2026-06-13 23:35:04,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:35:04,931.931 INFO    ] Initializing speech engine...
[2026-06-13 23:35:04,944.944 INFO    ] 2026-06-13 23:35:04
[2026-06-13 23:35:05,152.152 INFO    ] 2026-06-13 23:35:05
[2026-06-13 23:35:05,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:35:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:35:05,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:35:05,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:35:05,548.548 INFO    ] time= 13/06/2026 23:35:05
[2026-06-13 23:35:05,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:35:05,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:35:05,685.685 INFO    ] No existing commands found in stream
[2026-06-13 23:35:10,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:35:10,699.699 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 23:35:12,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:35:12,023.023 INFO    ] Checking for system updates...
[2026-06-13 23:35:12,044.044 INFO    ] 200
[2026-06-13 23:35:12,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:12,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:12,077.077 INFO    ] No update needed
[2026-06-13 23:35:12,079.079 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:12,099.099 INFO    ] 200
[2026-06-13 23:35:12,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:12,124.124 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:12,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:12,164.164 INFO    ] No camera update needed
[2026-06-13 23:35:12,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:12,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:12,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:12,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:14,213.213 INFO    ] ================================================
[2026-06-13 23:35:14,230.230 INFO    ] Launching Daemon at Sat Jun 13 23:35:14 IST 2026
[2026-06-13 23:35:14,240.240 INFO    ] ================================================
[2026-06-13 23:35:14,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:14
[2026-06-13 23:35:14,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:35:15,063.063 INFO    ] Initializing speech engine...
[2026-06-13 23:35:15,066.066 INFO    ] 2026-06-13 23:35:15
[2026-06-13 23:35:15,287.287 INFO    ] 2026-06-13 23:35:15
[2026-06-13 23:35:15,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:35:15,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:35:15,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:35:15,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:35:15,696.696 INFO    ] time= 13/06/2026 23:35:15
[2026-06-13 23:35:15,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:35:15,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:35:15,808.808 INFO    ] No existing commands found in stream
[2026-06-13 23:35:20,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:35:20,820.820 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-13 23:35:23,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:35:23,836.836 INFO    ] Checking for system updates...
[2026-06-13 23:35:23,857.857 INFO    ] 200
[2026-06-13 23:35:23,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:23,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:35:23,891.891 INFO    ] No update needed
[2026-06-13 23:35:23,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:23,912.912 INFO    ] 200
[2026-06-13 23:35:23,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:23,937.937 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:23,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:35:23,982.982 INFO    ] No camera update needed
[2026-06-13 23:35:23,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:23,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:23,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:23,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:26,030.030 INFO    ] ================================================
[2026-06-13 23:35:26,045.045 INFO    ] Launching Daemon at Sat Jun 13 23:35:26 IST 2026
[2026-06-13 23:35:26,057.057 INFO    ] ================================================
[2026-06-13 23:35:26,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:26
[2026-06-13 23:35:26,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:35:26,873.873 INFO    ] Initializing speech engine...
[2026-06-13 23:35:26,881.881 INFO    ] 2026-06-13 23:35:26
[2026-06-13 23:35:27,086.086 INFO    ] 2026-06-13 23:35:27
[2026-06-13 23:35:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:35:27,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:35:27,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:35:27,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:35:27,482.482 INFO    ] time= 13/06/2026 23:35:27
[2026-06-13 23:35:27,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:35:27,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:35:27,601.601 INFO    ] No existing commands found in stream
[2026-06-13 23:35:32,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:35:32,614.614 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-13 23:35:33,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:35:33,061.061 INFO    ] Checking for system updates...
[2026-06-13 23:35:33,082.082 INFO    ] 200
[2026-06-13 23:35:33,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:33,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:33,118.118 INFO    ] No update needed
[2026-06-13 23:35:33,119.119 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:33,139.139 INFO    ] 200
[2026-06-13 23:35:33,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:33,163.163 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:33,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:33,210.210 INFO    ] No camera update needed
[2026-06-13 23:35:33,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:33,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:33,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:33,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:35,261.261 INFO    ] ================================================
[2026-06-13 23:35:35,278.278 INFO    ] Launching Daemon at Sat Jun 13 23:35:35 IST 2026
[2026-06-13 23:35:35,290.290 INFO    ] ================================================
[2026-06-13 23:35:35,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:35
[2026-06-13 23:35:36,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:35:36,173.173 INFO    ] Initializing speech engine...
[2026-06-13 23:35:36,178.178 INFO    ] 2026-06-13 23:35:36
[2026-06-13 23:35:36,391.391 INFO    ] 2026-06-13 23:35:36
[2026-06-13 23:35:36,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:35:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:35:36,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:35:36,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:35:36,834.834 INFO    ] time= 13/06/2026 23:35:36
[2026-06-13 23:35:36,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:35:36,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:35:37,033.033 INFO    ] No existing commands found in stream
[2026-06-13 23:35:42,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:35:42,056.056 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 23:35:44,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:35:44,832.832 INFO    ] Checking for system updates...
[2026-06-13 23:35:44,852.852 INFO    ] 200
[2026-06-13 23:35:44,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:44,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:44,886.886 INFO    ] No update needed
[2026-06-13 23:35:44,887.887 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:44,906.906 INFO    ] 200
[2026-06-13 23:35:44,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:44,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:44,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:44,969.969 INFO    ] No camera update needed
[2026-06-13 23:35:44,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:44,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:44,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:44,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:47,016.016 INFO    ] ================================================
[2026-06-13 23:35:47,032.032 INFO    ] Launching Daemon at Sat Jun 13 23:35:47 IST 2026
[2026-06-13 23:35:47,044.044 INFO    ] ================================================
[2026-06-13 23:35:47,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:47
[2026-06-13 23:35:47,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:35:48,140.140 INFO    ] Initializing speech engine...
[2026-06-13 23:35:48,152.152 INFO    ] 2026-06-13 23:35:48
[2026-06-13 23:35:48,441.441 INFO    ] 2026-06-13 23:35:48
[2026-06-13 23:35:48,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:35:48,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:35:48,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:35:48,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:35:48,911.911 INFO    ] time= 13/06/2026 23:35:48
[2026-06-13 23:35:48,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:35:49,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:35:49,084.084 INFO    ] No existing commands found in stream
[2026-06-13 23:35:54,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:35:54,114.114 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-13 23:35:57,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:35:57,168.168 INFO    ] Checking for system updates...
[2026-06-13 23:35:57,193.193 INFO    ] 200
[2026-06-13 23:35:57,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:57,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:57,236.236 INFO    ] No update needed
[2026-06-13 23:35:57,238.238 INFO    ] Checking for camera pi updates...
[2026-06-13 23:35:57,261.261 INFO    ] 200
[2026-06-13 23:35:57,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:35:57,290.290 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:35:57,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:35:57,342.342 INFO    ] No camera update needed
[2026-06-13 23:35:57,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:35:57,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:35:57,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:35:57,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:35:59,378.378 INFO    ] ================================================
[2026-06-13 23:35:59,386.386 INFO    ] Launching Daemon at Sat Jun 13 23:35:59 IST 2026
[2026-06-13 23:35:59,392.392 INFO    ] ================================================
[2026-06-13 23:35:59,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:35:59
[2026-06-13 23:36:00,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:00,165.165 INFO    ] Initializing speech engine...
[2026-06-13 23:36:00,170.170 INFO    ] 2026-06-13 23:36:00
[2026-06-13 23:36:00,388.388 INFO    ] 2026-06-13 23:36:00
[2026-06-13 23:36:00,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:00,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:00,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:00,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:00,744.744 INFO    ] time= 13/06/2026 23:36:00
[2026-06-13 23:36:00,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:00,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:00,923.923 INFO    ] No existing commands found in stream
[2026-06-13 23:36:05,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:36:05,936.936 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-13 23:36:08,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:36:08,208.208 INFO    ] Checking for system updates...
[2026-06-13 23:36:08,230.230 INFO    ] 200
[2026-06-13 23:36:08,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:08,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:08,263.263 INFO    ] No update needed
[2026-06-13 23:36:08,264.264 INFO    ] Checking for camera pi updates...
[2026-06-13 23:36:08,284.284 INFO    ] 200
[2026-06-13 23:36:08,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:08,310.310 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:36:08,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:08,350.350 INFO    ] No camera update needed
[2026-06-13 23:36:08,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:36:08,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:36:08,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:36:08,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:36:10,397.397 INFO    ] ================================================
[2026-06-13 23:36:10,413.413 INFO    ] Launching Daemon at Sat Jun 13 23:36:10 IST 2026
[2026-06-13 23:36:10,424.424 INFO    ] ================================================
[2026-06-13 23:36:10,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:36:10
[2026-06-13 23:36:11,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:11,226.226 INFO    ] Initializing speech engine...
[2026-06-13 23:36:11,231.231 INFO    ] 2026-06-13 23:36:11
[2026-06-13 23:36:11,435.435 INFO    ] 2026-06-13 23:36:11
[2026-06-13 23:36:11,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:11,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:11,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:11,809.809 INFO    ] time= 13/06/2026 23:36:11
[2026-06-13 23:36:11,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:11,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:12,007.007 INFO    ] No existing commands found in stream
[2026-06-13 23:36:17,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:36:17,035.035 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 23:36:19,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:36:19,259.259 INFO    ] Checking for system updates...
[2026-06-13 23:36:19,279.279 INFO    ] 200
[2026-06-13 23:36:19,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:19,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:19,315.315 INFO    ] No update needed
[2026-06-13 23:36:19,316.316 INFO    ] Checking for camera pi updates...
[2026-06-13 23:36:19,338.338 INFO    ] 200
[2026-06-13 23:36:19,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:19,363.363 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:36:19,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:19,402.402 INFO    ] No camera update needed
[2026-06-13 23:36:19,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:36:19,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:36:19,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:36:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:36:21,452.452 INFO    ] ================================================
[2026-06-13 23:36:21,469.469 INFO    ] Launching Daemon at Sat Jun 13 23:36:21 IST 2026
[2026-06-13 23:36:21,481.481 INFO    ] ================================================
[2026-06-13 23:36:21,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:36:21
[2026-06-13 23:36:22,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:22,264.264 INFO    ] Initializing speech engine...
[2026-06-13 23:36:22,268.268 INFO    ] 2026-06-13 23:36:22
[2026-06-13 23:36:22,460.460 INFO    ] 2026-06-13 23:36:22
[2026-06-13 23:36:22,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:22,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:22,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:22,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:22,900.900 INFO    ] time= 13/06/2026 23:36:22
[2026-06-13 23:36:22,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:22,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:23,057.057 INFO    ] No existing commands found in stream
[2026-06-13 23:36:28,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:36:28,071.071 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-13 23:36:31,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:36:31,398.398 INFO    ] Checking for system updates...
[2026-06-13 23:36:31,423.423 INFO    ] 200
[2026-06-13 23:36:31,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:31,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:36:31,471.471 INFO    ] No update needed
[2026-06-13 23:36:31,473.473 INFO    ] Checking for camera pi updates...
[2026-06-13 23:36:31,496.496 INFO    ] 200
[2026-06-13 23:36:31,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:31,524.524 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:36:31,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:36:31,554.554 INFO    ] No camera update needed
[2026-06-13 23:36:31,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:36:31,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:36:31,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:36:31,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:36:33,599.599 INFO    ] ================================================
[2026-06-13 23:36:33,615.615 INFO    ] Launching Daemon at Sat Jun 13 23:36:33 IST 2026
[2026-06-13 23:36:33,627.627 INFO    ] ================================================
[2026-06-13 23:36:33,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:36:33
[2026-06-13 23:36:34,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:34,439.439 INFO    ] Initializing speech engine...
[2026-06-13 23:36:34,452.452 INFO    ] 2026-06-13 23:36:34
[2026-06-13 23:36:34,671.671 INFO    ] 2026-06-13 23:36:34
[2026-06-13 23:36:34,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:34,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:34,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:35,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:35,091.091 INFO    ] time= 13/06/2026 23:36:35
[2026-06-13 23:36:35,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:35,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:35,228.228 INFO    ] No existing commands found in stream
[2026-06-13 23:36:40,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:36:40,242.242 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-13 23:36:42,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:36:42,288.288 INFO    ] Checking for system updates...
[2026-06-13 23:36:42,309.309 INFO    ] 200
[2026-06-13 23:36:42,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:42,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:36:42,345.345 INFO    ] No update needed
[2026-06-13 23:36:42,346.346 INFO    ] Checking for camera pi updates...
[2026-06-13 23:36:42,370.370 INFO    ] 200
[2026-06-13 23:36:42,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:42,398.398 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:36:42,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:36:42,438.438 INFO    ] No camera update needed
[2026-06-13 23:36:42,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:36:42,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:36:42,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:36:42,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:36:44,486.486 INFO    ] ================================================
[2026-06-13 23:36:44,503.503 INFO    ] Launching Daemon at Sat Jun 13 23:36:44 IST 2026
[2026-06-13 23:36:44,515.515 INFO    ] ================================================
[2026-06-13 23:36:44,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:36:44
[2026-06-13 23:36:45,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:45,307.307 INFO    ] Initializing speech engine...
[2026-06-13 23:36:45,312.312 INFO    ] 2026-06-13 23:36:45
[2026-06-13 23:36:45,517.517 INFO    ] 2026-06-13 23:36:45
[2026-06-13 23:36:45,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:45,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:45,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:45,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:45,931.931 INFO    ] time= 13/06/2026 23:36:45
[2026-06-13 23:36:45,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:46,030.030 INFO    ] No existing commands found in stream
[2026-06-13 23:36:51,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:36:51,047.047 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 23:36:52,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:36:52,889.889 INFO    ] Checking for system updates...
[2026-06-13 23:36:52,910.910 INFO    ] 200
[2026-06-13 23:36:52,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:52,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:52,943.943 INFO    ] No update needed
[2026-06-13 23:36:52,944.944 INFO    ] Checking for camera pi updates...
[2026-06-13 23:36:52,965.965 INFO    ] 200
[2026-06-13 23:36:52,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:36:52,990.990 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:36:53,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:36:53,131.131 INFO    ] No camera update needed
[2026-06-13 23:36:53,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:36:53,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:36:53,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:36:53,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:36:55,179.179 INFO    ] ================================================
[2026-06-13 23:36:55,195.195 INFO    ] Launching Daemon at Sat Jun 13 23:36:55 IST 2026
[2026-06-13 23:36:55,206.206 INFO    ] ================================================
[2026-06-13 23:36:55,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:36:55
[2026-06-13 23:36:55,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:36:56,094.094 INFO    ] Initializing speech engine...
[2026-06-13 23:36:56,099.099 INFO    ] 2026-06-13 23:36:56
[2026-06-13 23:36:56,307.307 INFO    ] 2026-06-13 23:36:56
[2026-06-13 23:36:56,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:36:56,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:36:56,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:36:56,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:36:56,732.732 INFO    ] time= 13/06/2026 23:36:56
[2026-06-13 23:36:56,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:36:56,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:36:56,830.830 INFO    ] No existing commands found in stream
[2026-06-13 23:37:01,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:01,842.842 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-13 23:37:06,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:37:06,022.022 INFO    ] Checking for system updates...
[2026-06-13 23:37:06,043.043 INFO    ] 200
[2026-06-13 23:37:06,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:06,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:06,076.076 INFO    ] No update needed
[2026-06-13 23:37:06,077.077 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:06,098.098 INFO    ] 200
[2026-06-13 23:37:06,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:06,126.126 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:06,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:06,169.169 INFO    ] No camera update needed
[2026-06-13 23:37:06,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:06,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:06,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:06,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:08,219.219 INFO    ] ================================================
[2026-06-13 23:37:08,235.235 INFO    ] Launching Daemon at Sat Jun 13 23:37:08 IST 2026
[2026-06-13 23:37:08,246.246 INFO    ] ================================================
[2026-06-13 23:37:08,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:08
[2026-06-13 23:37:08,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:09,036.036 INFO    ] Initializing speech engine...
[2026-06-13 23:37:09,040.040 INFO    ] 2026-06-13 23:37:09
[2026-06-13 23:37:09,250.250 INFO    ] 2026-06-13 23:37:09
[2026-06-13 23:37:09,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:09,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:09,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:09,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:09,652.652 INFO    ] time= 13/06/2026 23:37:09
[2026-06-13 23:37:09,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:09,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:09,834.834 INFO    ] No existing commands found in stream
[2026-06-13 23:37:14,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:14,848.848 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-13 23:37:15,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:37:15,509.509 INFO    ] Checking for system updates...
[2026-06-13 23:37:15,530.530 INFO    ] 200
[2026-06-13 23:37:15,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:15,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:15,568.568 INFO    ] No update needed
[2026-06-13 23:37:15,569.569 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:15,589.589 INFO    ] 200
[2026-06-13 23:37:15,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:15,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:15,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:15,650.650 INFO    ] No camera update needed
[2026-06-13 23:37:15,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:15,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:15,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:15,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:17,698.698 INFO    ] ================================================
[2026-06-13 23:37:17,713.713 INFO    ] Launching Daemon at Sat Jun 13 23:37:17 IST 2026
[2026-06-13 23:37:17,725.725 INFO    ] ================================================
[2026-06-13 23:37:18,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:18
[2026-06-13 23:37:18,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:18,516.516 INFO    ] Initializing speech engine...
[2026-06-13 23:37:18,521.521 INFO    ] 2026-06-13 23:37:18
[2026-06-13 23:37:18,724.724 INFO    ] 2026-06-13 23:37:18
[2026-06-13 23:37:18,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:18,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:18,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:19,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:19,176.176 INFO    ] time= 13/06/2026 23:37:19
[2026-06-13 23:37:19,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:19,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:19,315.315 INFO    ] No existing commands found in stream
[2026-06-13 23:37:24,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:24,329.329 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-13 23:37:24,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:37:24,653.653 INFO    ] Checking for system updates...
[2026-06-13 23:37:24,673.673 INFO    ] 200
[2026-06-13 23:37:24,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:24,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:37:24,707.707 INFO    ] No update needed
[2026-06-13 23:37:24,708.708 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:24,730.730 INFO    ] 200
[2026-06-13 23:37:24,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:24,757.757 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:24,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:24,793.793 INFO    ] No camera update needed
[2026-06-13 23:37:24,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:24,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:24,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:24,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:26,842.842 INFO    ] ================================================
[2026-06-13 23:37:26,858.858 INFO    ] Launching Daemon at Sat Jun 13 23:37:26 IST 2026
[2026-06-13 23:37:26,869.869 INFO    ] ================================================
[2026-06-13 23:37:27,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:27
[2026-06-13 23:37:27,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:27,667.667 INFO    ] Initializing speech engine...
[2026-06-13 23:37:27,672.672 INFO    ] 2026-06-13 23:37:27
[2026-06-13 23:37:27,874.874 INFO    ] 2026-06-13 23:37:27
[2026-06-13 23:37:27,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:28,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:28,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:28,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:28,282.282 INFO    ] time= 13/06/2026 23:37:28
[2026-06-13 23:37:28,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:28,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:28,385.385 INFO    ] No existing commands found in stream
[2026-06-13 23:37:33,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:33,398.398 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-13 23:37:35,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:37:35,701.701 INFO    ] Checking for system updates...
[2026-06-13 23:37:35,722.722 INFO    ] 200
[2026-06-13 23:37:35,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:35,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:35,756.756 INFO    ] No update needed
[2026-06-13 23:37:35,757.757 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:35,777.777 INFO    ] 200
[2026-06-13 23:37:35,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:35,802.802 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:35,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:35,841.841 INFO    ] No camera update needed
[2026-06-13 23:37:35,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:35,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:35,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:35,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:37,891.891 INFO    ] ================================================
[2026-06-13 23:37:37,907.907 INFO    ] Launching Daemon at Sat Jun 13 23:37:37 IST 2026
[2026-06-13 23:37:37,918.918 INFO    ] ================================================
[2026-06-13 23:37:38,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:38
[2026-06-13 23:37:38,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:38,808.808 INFO    ] Initializing speech engine...
[2026-06-13 23:37:38,812.812 INFO    ] 2026-06-13 23:37:38
[2026-06-13 23:37:39,019.019 INFO    ] 2026-06-13 23:37:39
[2026-06-13 23:37:39,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:39,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:39,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:39,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:39,430.430 INFO    ] time= 13/06/2026 23:37:39
[2026-06-13 23:37:39,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:39,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:39,536.536 INFO    ] No existing commands found in stream
[2026-06-13 23:37:44,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:44,553.553 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-13 23:37:44,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:37:44,944.944 INFO    ] Checking for system updates...
[2026-06-13 23:37:44,966.966 INFO    ] 200
[2026-06-13 23:37:44,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:45,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:37:45,002.002 INFO    ] No update needed
[2026-06-13 23:37:45,004.004 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:45,025.025 INFO    ] 200
[2026-06-13 23:37:45,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:45,052.052 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:45,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:37:45,094.094 INFO    ] No camera update needed
[2026-06-13 23:37:45,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:45,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:45,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:45,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:47,136.136 INFO    ] ================================================
[2026-06-13 23:37:47,145.145 INFO    ] Launching Daemon at Sat Jun 13 23:37:47 IST 2026
[2026-06-13 23:37:47,152.152 INFO    ] ================================================
[2026-06-13 23:37:47,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:47
[2026-06-13 23:37:47,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:48,030.030 INFO    ] Initializing speech engine...
[2026-06-13 23:37:48,035.035 INFO    ] 2026-06-13 23:37:48
[2026-06-13 23:37:48,240.240 INFO    ] 2026-06-13 23:37:48
[2026-06-13 23:37:48,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:48,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:48,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:48,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:48,641.641 INFO    ] time= 13/06/2026 23:37:48
[2026-06-13 23:37:48,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:48,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:48,815.815 INFO    ] No existing commands found in stream
[2026-06-13 23:37:53,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:37:53,829.829 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-13 23:37:54,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:37:54,602.602 INFO    ] Checking for system updates...
[2026-06-13 23:37:54,623.623 INFO    ] 200
[2026-06-13 23:37:54,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:54,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:54,656.656 INFO    ] No update needed
[2026-06-13 23:37:54,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 23:37:54,677.677 INFO    ] 200
[2026-06-13 23:37:54,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:37:54,702.702 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:37:54,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:37:54,745.745 INFO    ] No camera update needed
[2026-06-13 23:37:54,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:37:54,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:37:54,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:37:54,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:37:56,793.793 INFO    ] ================================================
[2026-06-13 23:37:56,809.809 INFO    ] Launching Daemon at Sat Jun 13 23:37:56 IST 2026
[2026-06-13 23:37:56,820.820 INFO    ] ================================================
[2026-06-13 23:37:57,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:37:57
[2026-06-13 23:37:57,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:37:57,662.662 INFO    ] Initializing speech engine...
[2026-06-13 23:37:57,667.667 INFO    ] 2026-06-13 23:37:57
[2026-06-13 23:37:57,874.874 INFO    ] 2026-06-13 23:37:57
[2026-06-13 23:37:57,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:37:58,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:37:58,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:37:58,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:37:58,289.289 INFO    ] time= 13/06/2026 23:37:58
[2026-06-13 23:37:58,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:37:58,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:37:58,389.389 INFO    ] No existing commands found in stream
[2026-06-13 23:38:03,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:38:03,404.404 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-13 23:38:04,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:38:04,718.718 INFO    ] Checking for system updates...
[2026-06-13 23:38:04,761.761 INFO    ] 200
[2026-06-13 23:38:04,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:04,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:38:04,830.830 INFO    ] No update needed
[2026-06-13 23:38:04,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 23:38:04,871.871 INFO    ] 200
[2026-06-13 23:38:04,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:04,914.914 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:38:04,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:38:04,965.965 INFO    ] No camera update needed
[2026-06-13 23:38:04,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:38:04,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:38:04,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:38:04,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:38:07,022.022 INFO    ] ================================================
[2026-06-13 23:38:07,038.038 INFO    ] Launching Daemon at Sat Jun 13 23:38:07 IST 2026
[2026-06-13 23:38:07,049.049 INFO    ] ================================================
[2026-06-13 23:38:07,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:38:07
[2026-06-13 23:38:07,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:38:07,885.885 INFO    ] Initializing speech engine...
[2026-06-13 23:38:07,890.890 INFO    ] 2026-06-13 23:38:07
[2026-06-13 23:38:08,103.103 INFO    ] 2026-06-13 23:38:08
[2026-06-13 23:38:08,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:38:08,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:38:08,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:38:08,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:38:08,512.512 INFO    ] time= 13/06/2026 23:38:08
[2026-06-13 23:38:08,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:38:08,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:38:08,627.627 INFO    ] No existing commands found in stream
[2026-06-13 23:38:13,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:38:13,641.641 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-13 23:38:13,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:38:13,942.942 INFO    ] Checking for system updates...
[2026-06-13 23:38:13,963.963 INFO    ] 200
[2026-06-13 23:38:13,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:13,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:38:13,997.997 INFO    ] No update needed
[2026-06-13 23:38:13,999.999 INFO    ] Checking for camera pi updates...
[2026-06-13 23:38:14,019.019 INFO    ] 200
[2026-06-13 23:38:14,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:14,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:38:14,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:38:14,091.091 INFO    ] No camera update needed
[2026-06-13 23:38:14,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:38:14,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:38:14,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:38:14,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:38:16,141.141 INFO    ] ================================================
[2026-06-13 23:38:16,156.156 INFO    ] Launching Daemon at Sat Jun 13 23:38:16 IST 2026
[2026-06-13 23:38:16,167.167 INFO    ] ================================================
[2026-06-13 23:38:16,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:38:16
[2026-06-13 23:38:16,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:38:17,008.008 INFO    ] Initializing speech engine...
[2026-06-13 23:38:17,016.016 INFO    ] 2026-06-13 23:38:17
[2026-06-13 23:38:17,235.235 INFO    ] 2026-06-13 23:38:17
[2026-06-13 23:38:17,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:38:17,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:38:17,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:38:17,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:38:17,645.645 INFO    ] time= 13/06/2026 23:38:17
[2026-06-13 23:38:17,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:38:17,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:38:17,799.799 INFO    ] No existing commands found in stream
[2026-06-13 23:38:22,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:38:22,812.812 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-13 23:38:26,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:38:26,874.874 INFO    ] Checking for system updates...
[2026-06-13 23:38:26,895.895 INFO    ] 200
[2026-06-13 23:38:26,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:26,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:38:26,930.930 INFO    ] No update needed
[2026-06-13 23:38:26,932.932 INFO    ] Checking for camera pi updates...
[2026-06-13 23:38:26,951.951 INFO    ] 200
[2026-06-13 23:38:26,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:26,976.976 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:38:27,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:38:27,013.013 INFO    ] No camera update needed
[2026-06-13 23:38:27,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:38:27,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:38:27,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:38:27,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:38:29,064.064 INFO    ] ================================================
[2026-06-13 23:38:29,080.080 INFO    ] Launching Daemon at Sat Jun 13 23:38:29 IST 2026
[2026-06-13 23:38:29,091.091 INFO    ] ================================================
[2026-06-13 23:38:29,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:38:29
[2026-06-13 23:38:29,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:38:29,937.937 INFO    ] Initializing speech engine...
[2026-06-13 23:38:29,948.948 INFO    ] 2026-06-13 23:38:29
[2026-06-13 23:38:30,156.156 INFO    ] 2026-06-13 23:38:30
[2026-06-13 23:38:30,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:38:30,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:38:30,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:38:30,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:38:30,579.579 INFO    ] time= 13/06/2026 23:38:30
[2026-06-13 23:38:30,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:38:30,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:38:30,675.675 INFO    ] No existing commands found in stream
[2026-06-13 23:38:35,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:38:35,690.690 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-13 23:38:39,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:38:39,254.254 INFO    ] Checking for system updates...
[2026-06-13 23:38:39,275.275 INFO    ] 200
[2026-06-13 23:38:39,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:39,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:38:39,309.309 INFO    ] No update needed
[2026-06-13 23:38:39,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 23:38:39,332.332 INFO    ] 200
[2026-06-13 23:38:39,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:39,361.361 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:38:39,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:38:39,399.399 INFO    ] No camera update needed
[2026-06-13 23:38:39,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:38:39,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:38:39,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:38:39,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:38:41,448.448 INFO    ] ================================================
[2026-06-13 23:38:41,463.463 INFO    ] Launching Daemon at Sat Jun 13 23:38:41 IST 2026
[2026-06-13 23:38:41,474.474 INFO    ] ================================================
[2026-06-13 23:38:41,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:38:41
[2026-06-13 23:38:42,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:38:42,700.700 INFO    ] Initializing speech engine...
[2026-06-13 23:38:42,716.716 INFO    ] 2026-06-13 23:38:42
[2026-06-13 23:38:43,000.000 INFO    ] 2026-06-13 23:38:42
[2026-06-13 23:38:43,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:38:43,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:38:43,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:38:43,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:38:43,356.356 INFO    ] time= 13/06/2026 23:38:43
[2026-06-13 23:38:43,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:38:43,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:38:43,435.435 INFO    ] No existing commands found in stream
[2026-06-13 23:38:48,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:38:48,450.450 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-13 23:38:51,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:38:51,882.882 INFO    ] Checking for system updates...
[2026-06-13 23:38:51,903.903 INFO    ] 200
[2026-06-13 23:38:51,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:51,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:38:51,936.936 INFO    ] No update needed
[2026-06-13 23:38:51,937.937 INFO    ] Checking for camera pi updates...
[2026-06-13 23:38:51,957.957 INFO    ] 200
[2026-06-13 23:38:51,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:38:51,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:38:52,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:38:52,025.025 INFO    ] No camera update needed
[2026-06-13 23:38:52,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:38:52,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:38:52,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:38:52,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:38:54,072.072 INFO    ] ================================================
[2026-06-13 23:38:54,088.088 INFO    ] Launching Daemon at Sat Jun 13 23:38:54 IST 2026
[2026-06-13 23:38:54,099.099 INFO    ] ================================================
[2026-06-13 23:38:54,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:38:54
[2026-06-13 23:38:54,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:38:54,914.914 INFO    ] Initializing speech engine...
[2026-06-13 23:38:54,924.924 INFO    ] 2026-06-13 23:38:54
[2026-06-13 23:38:55,128.128 INFO    ] 2026-06-13 23:38:55
[2026-06-13 23:38:55,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:38:55,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:38:55,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:38:55,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:38:55,531.531 INFO    ] time= 13/06/2026 23:38:55
[2026-06-13 23:38:55,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:38:55,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:38:55,640.640 INFO    ] No existing commands found in stream
[2026-06-13 23:39:00,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:00,651.651 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-13 23:39:03,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:39:03,516.516 INFO    ] Checking for system updates...
[2026-06-13 23:39:03,537.537 INFO    ] 200
[2026-06-13 23:39:03,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:03,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:39:03,570.570 INFO    ] No update needed
[2026-06-13 23:39:03,571.571 INFO    ] Checking for camera pi updates...
[2026-06-13 23:39:03,591.591 INFO    ] 200
[2026-06-13 23:39:03,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:03,616.616 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:39:03,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:03,656.656 INFO    ] No camera update needed
[2026-06-13 23:39:03,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:39:03,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:39:03,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:39:03,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:39:05,707.707 INFO    ] ================================================
[2026-06-13 23:39:05,723.723 INFO    ] Launching Daemon at Sat Jun 13 23:39:05 IST 2026
[2026-06-13 23:39:05,734.734 INFO    ] ================================================
[2026-06-13 23:39:06,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:39:06
[2026-06-13 23:39:06,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:39:06,555.555 INFO    ] Initializing speech engine...
[2026-06-13 23:39:06,560.560 INFO    ] 2026-06-13 23:39:06
[2026-06-13 23:39:06,762.762 INFO    ] 2026-06-13 23:39:06
[2026-06-13 23:39:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:39:06,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:39:06,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:39:07,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:39:07,135.135 INFO    ] time= 13/06/2026 23:39:07
[2026-06-13 23:39:07,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:39:07,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:39:07,275.275 INFO    ] No existing commands found in stream
[2026-06-13 23:39:12,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:12,289.289 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-13 23:39:14,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:39:14,577.577 INFO    ] Checking for system updates...
[2026-06-13 23:39:14,599.599 INFO    ] 200
[2026-06-13 23:39:14,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:14,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:39:14,632.632 INFO    ] No update needed
[2026-06-13 23:39:14,633.633 INFO    ] Checking for camera pi updates...
[2026-06-13 23:39:14,656.656 INFO    ] 200
[2026-06-13 23:39:14,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:14,680.680 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:39:14,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:39:14,728.728 INFO    ] No camera update needed
[2026-06-13 23:39:14,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:39:14,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:39:14,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:39:14,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:39:16,777.777 INFO    ] ================================================
[2026-06-13 23:39:16,794.794 INFO    ] Launching Daemon at Sat Jun 13 23:39:16 IST 2026
[2026-06-13 23:39:16,805.805 INFO    ] ================================================
[2026-06-13 23:39:17,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:39:17
[2026-06-13 23:39:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:39:17,572.572 INFO    ] Initializing speech engine...
[2026-06-13 23:39:17,577.577 INFO    ] 2026-06-13 23:39:17
[2026-06-13 23:39:17,805.805 INFO    ] 2026-06-13 23:39:17
[2026-06-13 23:39:17,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:39:17,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:39:17,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:39:18,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:39:18,050.050 INFO    ] time= 13/06/2026 23:39:18
[2026-06-13 23:39:18,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:39:18,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:39:18,148.148 INFO    ] No existing commands found in stream
[2026-06-13 23:39:23,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:23,185.185 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-13 23:39:26,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:39:26,316.316 INFO    ] Checking for system updates...
[2026-06-13 23:39:26,337.337 INFO    ] 200
[2026-06-13 23:39:26,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:26,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:26,372.372 INFO    ] No update needed
[2026-06-13 23:39:26,374.374 INFO    ] Checking for camera pi updates...
[2026-06-13 23:39:26,396.396 INFO    ] 200
[2026-06-13 23:39:26,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:26,421.421 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:39:26,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:26,463.463 INFO    ] No camera update needed
[2026-06-13 23:39:26,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:39:26,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:39:26,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:39:26,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:39:28,518.518 INFO    ] ================================================
[2026-06-13 23:39:28,535.535 INFO    ] Launching Daemon at Sat Jun 13 23:39:28 IST 2026
[2026-06-13 23:39:28,546.546 INFO    ] ================================================
[2026-06-13 23:39:29,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:39:29
[2026-06-13 23:39:29,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:39:29,784.784 INFO    ] Initializing speech engine...
[2026-06-13 23:39:29,789.789 INFO    ] 2026-06-13 23:39:29
[2026-06-13 23:39:29,992.992 INFO    ] 2026-06-13 23:39:29
[2026-06-13 23:39:30,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:39:30,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:39:30,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:39:30,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:39:30,395.395 INFO    ] time= 13/06/2026 23:39:30
[2026-06-13 23:39:30,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:39:30,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:39:30,504.504 INFO    ] No existing commands found in stream
[2026-06-13 23:39:35,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:35,517.517 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-13 23:39:37,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:39:37,061.061 INFO    ] Checking for system updates...
[2026-06-13 23:39:37,082.082 INFO    ] 200
[2026-06-13 23:39:37,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:37,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:37,114.114 INFO    ] No update needed
[2026-06-13 23:39:37,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 23:39:37,135.135 INFO    ] 200
[2026-06-13 23:39:37,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:37,160.160 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:39:37,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:37,203.203 INFO    ] No camera update needed
[2026-06-13 23:39:37,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:39:37,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:39:37,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:39:37,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:39:39,251.251 INFO    ] ================================================
[2026-06-13 23:39:39,267.267 INFO    ] Launching Daemon at Sat Jun 13 23:39:39 IST 2026
[2026-06-13 23:39:39,278.278 INFO    ] ================================================
[2026-06-13 23:39:39,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:39:39
[2026-06-13 23:39:39,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:39:40,144.144 INFO    ] Initializing speech engine...
[2026-06-13 23:39:40,149.149 INFO    ] 2026-06-13 23:39:40
[2026-06-13 23:39:40,357.357 INFO    ] 2026-06-13 23:39:40
[2026-06-13 23:39:40,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:39:40,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:39:40,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:39:40,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:39:40,775.775 INFO    ] time= 13/06/2026 23:39:40
[2026-06-13 23:39:40,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:39:40,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:39:40,871.871 INFO    ] No existing commands found in stream
[2026-06-13 23:39:45,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:45,884.884 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-13 23:39:48,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:39:48,525.525 INFO    ] Checking for system updates...
[2026-06-13 23:39:48,550.550 INFO    ] 200
[2026-06-13 23:39:48,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:48,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:48,586.586 INFO    ] No update needed
[2026-06-13 23:39:48,587.587 INFO    ] Checking for camera pi updates...
[2026-06-13 23:39:48,610.610 INFO    ] 200
[2026-06-13 23:39:48,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:39:48,637.637 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:39:48,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:39:48,675.675 INFO    ] No camera update needed
[2026-06-13 23:39:48,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:39:48,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:39:48,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:39:48,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:39:50,722.722 INFO    ] ================================================
[2026-06-13 23:39:50,738.738 INFO    ] Launching Daemon at Sat Jun 13 23:39:50 IST 2026
[2026-06-13 23:39:50,750.750 INFO    ] ================================================
[2026-06-13 23:39:51,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:39:51
[2026-06-13 23:39:51,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:39:51,537.537 INFO    ] Initializing speech engine...
[2026-06-13 23:39:51,542.542 INFO    ] 2026-06-13 23:39:51
[2026-06-13 23:39:51,744.744 INFO    ] 2026-06-13 23:39:51
[2026-06-13 23:39:51,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:39:51,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:39:51,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:39:52,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:39:52,148.148 INFO    ] time= 13/06/2026 23:39:52
[2026-06-13 23:39:52,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:39:52,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:39:52,258.258 INFO    ] No existing commands found in stream
[2026-06-13 23:39:57,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:39:57,271.271 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 23:40:00,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:40:00,428.428 INFO    ] Checking for system updates...
[2026-06-13 23:40:00,449.449 INFO    ] 200
[2026-06-13 23:40:00,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:00,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:00,483.483 INFO    ] No update needed
[2026-06-13 23:40:00,484.484 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:00,504.504 INFO    ] 200
[2026-06-13 23:40:00,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:00,530.530 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:00,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:00,579.579 INFO    ] No camera update needed
[2026-06-13 23:40:00,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:00,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:00,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:00,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:02,642.642 INFO    ] ================================================
[2026-06-13 23:40:02,673.673 INFO    ] Launching Daemon at Sat Jun 13 23:40:02 IST 2026
[2026-06-13 23:40:02,694.694 INFO    ] ================================================
[2026-06-13 23:40:03,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:03
[2026-06-13 23:40:04,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:04,326.326 INFO    ] Initializing speech engine...
[2026-06-13 23:40:04,335.335 INFO    ] 2026-06-13 23:40:04
[2026-06-13 23:40:04,582.582 INFO    ] 2026-06-13 23:40:04
[2026-06-13 23:40:04,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:04,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:04,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:04,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:04,932.932 INFO    ] time= 13/06/2026 23:40:04
[2026-06-13 23:40:04,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:04,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:05,027.027 INFO    ] No existing commands found in stream
[2026-06-13 23:40:10,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:40:10,043.043 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-13 23:40:12,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:40:12,057.057 INFO    ] Checking for system updates...
[2026-06-13 23:40:12,078.078 INFO    ] 200
[2026-06-13 23:40:12,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:12,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:12,114.114 INFO    ] No update needed
[2026-06-13 23:40:12,116.116 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:12,139.139 INFO    ] 200
[2026-06-13 23:40:12,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:12,165.165 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:12,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:12,204.204 INFO    ] No camera update needed
[2026-06-13 23:40:12,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:12,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:12,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:12,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:14,253.253 INFO    ] ================================================
[2026-06-13 23:40:14,269.269 INFO    ] Launching Daemon at Sat Jun 13 23:40:14 IST 2026
[2026-06-13 23:40:14,280.280 INFO    ] ================================================
[2026-06-13 23:40:14,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:14
[2026-06-13 23:40:14,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:15,105.105 INFO    ] Initializing speech engine...
[2026-06-13 23:40:15,116.116 INFO    ] 2026-06-13 23:40:15
[2026-06-13 23:40:15,323.323 INFO    ] 2026-06-13 23:40:15
[2026-06-13 23:40:15,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:15,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:15,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:15,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:15,724.724 INFO    ] time= 13/06/2026 23:40:15
[2026-06-13 23:40:15,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:15,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:15,841.841 INFO    ] No existing commands found in stream
[2026-06-13 23:40:20,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:40:20,874.874 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-13 23:40:25,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:40:25,077.077 INFO    ] Checking for system updates...
[2026-06-13 23:40:25,098.098 INFO    ] 200
[2026-06-13 23:40:25,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:25,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:25,132.132 INFO    ] No update needed
[2026-06-13 23:40:25,133.133 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:25,152.152 INFO    ] 200
[2026-06-13 23:40:25,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:25,177.177 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:25,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:25,227.227 INFO    ] No camera update needed
[2026-06-13 23:40:25,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:25,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:25,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:25,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:27,275.275 INFO    ] ================================================
[2026-06-13 23:40:27,291.291 INFO    ] Launching Daemon at Sat Jun 13 23:40:27 IST 2026
[2026-06-13 23:40:27,302.302 INFO    ] ================================================
[2026-06-13 23:40:27,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:27
[2026-06-13 23:40:27,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:28,095.095 INFO    ] Initializing speech engine...
[2026-06-13 23:40:28,105.105 INFO    ] 2026-06-13 23:40:28
[2026-06-13 23:40:28,293.293 INFO    ] 2026-06-13 23:40:28
[2026-06-13 23:40:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:28,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:28,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:28,676.676 INFO    ] time= 13/06/2026 23:40:28
[2026-06-13 23:40:28,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:28,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:28,878.878 INFO    ] No existing commands found in stream
[2026-06-13 23:40:33,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:40:33,893.893 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-13 23:40:35,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:40:35,608.608 INFO    ] Checking for system updates...
[2026-06-13 23:40:35,628.628 INFO    ] 200
[2026-06-13 23:40:35,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:35,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:35,661.661 INFO    ] No update needed
[2026-06-13 23:40:35,663.663 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:35,682.682 INFO    ] 200
[2026-06-13 23:40:35,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:35,709.709 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:35,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:40:35,748.748 INFO    ] No camera update needed
[2026-06-13 23:40:35,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:35,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:35,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:35,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:37,797.797 INFO    ] ================================================
[2026-06-13 23:40:37,812.812 INFO    ] Launching Daemon at Sat Jun 13 23:40:37 IST 2026
[2026-06-13 23:40:37,823.823 INFO    ] ================================================
[2026-06-13 23:40:38,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:38
[2026-06-13 23:40:38,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:38,647.647 INFO    ] Initializing speech engine...
[2026-06-13 23:40:38,659.659 INFO    ] 2026-06-13 23:40:38
[2026-06-13 23:40:38,872.872 INFO    ] 2026-06-13 23:40:38
[2026-06-13 23:40:38,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:39,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:39,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:39,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:39,287.287 INFO    ] time= 13/06/2026 23:40:39
[2026-06-13 23:40:39,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:39,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:39,439.439 INFO    ] No existing commands found in stream
[2026-06-13 23:40:44,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:40:44,465.465 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 23:40:46,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:40:46,347.347 INFO    ] Checking for system updates...
[2026-06-13 23:40:46,369.369 INFO    ] 200
[2026-06-13 23:40:46,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:46,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:46,406.406 INFO    ] No update needed
[2026-06-13 23:40:46,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:46,427.427 INFO    ] 200
[2026-06-13 23:40:46,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:46,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:46,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:46,494.494 INFO    ] No camera update needed
[2026-06-13 23:40:46,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:46,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:46,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:46,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:48,542.542 INFO    ] ================================================
[2026-06-13 23:40:48,558.558 INFO    ] Launching Daemon at Sat Jun 13 23:40:48 IST 2026
[2026-06-13 23:40:48,569.569 INFO    ] ================================================
[2026-06-13 23:40:48,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:48
[2026-06-13 23:40:49,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:49,352.352 INFO    ] Initializing speech engine...
[2026-06-13 23:40:49,357.357 INFO    ] 2026-06-13 23:40:49
[2026-06-13 23:40:49,576.576 INFO    ] 2026-06-13 23:40:49
[2026-06-13 23:40:49,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:49,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:49,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:49,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:50,020.020 INFO    ] time= 13/06/2026 23:40:49
[2026-06-13 23:40:50,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:50,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:50,141.141 INFO    ] No existing commands found in stream
[2026-06-13 23:40:55,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:40:55,154.154 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-13 23:40:55,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:40:55,837.837 INFO    ] Checking for system updates...
[2026-06-13 23:40:55,858.858 INFO    ] 200
[2026-06-13 23:40:55,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:55,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:55,890.890 INFO    ] No update needed
[2026-06-13 23:40:55,892.892 INFO    ] Checking for camera pi updates...
[2026-06-13 23:40:55,911.911 INFO    ] 200
[2026-06-13 23:40:55,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:40:55,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:40:55,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:40:55,974.974 INFO    ] No camera update needed
[2026-06-13 23:40:55,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:40:55,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:40:55,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:40:55,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:40:58,021.021 INFO    ] ================================================
[2026-06-13 23:40:58,037.037 INFO    ] Launching Daemon at Sat Jun 13 23:40:58 IST 2026
[2026-06-13 23:40:58,047.047 INFO    ] ================================================
[2026-06-13 23:40:58,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:40:58
[2026-06-13 23:40:58,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:40:58,851.851 INFO    ] Initializing speech engine...
[2026-06-13 23:40:58,865.865 INFO    ] 2026-06-13 23:40:58
[2026-06-13 23:40:59,083.083 INFO    ] 2026-06-13 23:40:59
[2026-06-13 23:40:59,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:40:59,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:40:59,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:40:59,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:40:59,457.457 INFO    ] time= 13/06/2026 23:40:59
[2026-06-13 23:40:59,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:40:59,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:40:59,637.637 INFO    ] No existing commands found in stream
[2026-06-13 23:41:04,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:04,650.650 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 23:41:05,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:41:05,895.895 INFO    ] Checking for system updates...
[2026-06-13 23:41:05,916.916 INFO    ] 200
[2026-06-13 23:41:05,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:05,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:41:05,949.949 INFO    ] No update needed
[2026-06-13 23:41:05,950.950 INFO    ] Checking for camera pi updates...
[2026-06-13 23:41:05,971.971 INFO    ] 200
[2026-06-13 23:41:05,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:05,997.997 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:41:06,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:41:06,143.143 INFO    ] No camera update needed
[2026-06-13 23:41:06,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:41:06,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:41:06,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:41:06,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:41:08,199.199 INFO    ] ================================================
[2026-06-13 23:41:08,214.214 INFO    ] Launching Daemon at Sat Jun 13 23:41:08 IST 2026
[2026-06-13 23:41:08,224.224 INFO    ] ================================================
[2026-06-13 23:41:08,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:41:08
[2026-06-13 23:41:08,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:41:09,105.105 INFO    ] Initializing speech engine...
[2026-06-13 23:41:09,108.108 INFO    ] 2026-06-13 23:41:09
[2026-06-13 23:41:09,315.315 INFO    ] 2026-06-13 23:41:09
[2026-06-13 23:41:09,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:41:09,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:41:09,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:41:09,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:41:09,722.722 INFO    ] time= 13/06/2026 23:41:09
[2026-06-13 23:41:09,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:41:09,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:41:09,839.839 INFO    ] No existing commands found in stream
[2026-06-13 23:41:14,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:14,852.852 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-13 23:41:17,680.680 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:41:17,682.682 INFO    ] Checking for system updates...
[2026-06-13 23:41:17,703.703 INFO    ] 200
[2026-06-13 23:41:17,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:17,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:17,736.736 INFO    ] No update needed
[2026-06-13 23:41:17,737.737 INFO    ] Checking for camera pi updates...
[2026-06-13 23:41:17,758.758 INFO    ] 200
[2026-06-13 23:41:17,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:17,783.783 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:41:17,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:17,830.830 INFO    ] No camera update needed
[2026-06-13 23:41:17,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:41:17,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:41:17,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:41:17,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:41:19,880.880 INFO    ] ================================================
[2026-06-13 23:41:20,736.736 INFO    ] Launching Daemon at Sat Jun 13 23:41:20 IST 2026
[2026-06-13 23:41:20,747.747 INFO    ] ================================================
[2026-06-13 23:41:21,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:41:21
[2026-06-13 23:41:21,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:41:21,567.567 INFO    ] Initializing speech engine...
[2026-06-13 23:41:21,572.572 INFO    ] 2026-06-13 23:41:21
[2026-06-13 23:41:21,775.775 INFO    ] 2026-06-13 23:41:21
[2026-06-13 23:41:21,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:41:21,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:41:21,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:41:22,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:41:22,191.191 INFO    ] time= 13/06/2026 23:41:22
[2026-06-13 23:41:22,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:41:22,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:41:22,290.290 INFO    ] No existing commands found in stream
[2026-06-13 23:41:27,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:27,307.307 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 23:41:27,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:41:27,829.829 INFO    ] Checking for system updates...
[2026-06-13 23:41:27,850.850 INFO    ] 200
[2026-06-13 23:41:27,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:27,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:27,883.883 INFO    ] No update needed
[2026-06-13 23:41:27,884.884 INFO    ] Checking for camera pi updates...
[2026-06-13 23:41:27,906.906 INFO    ] 200
[2026-06-13 23:41:27,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:27,932.932 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:41:27,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:41:27,974.974 INFO    ] No camera update needed
[2026-06-13 23:41:27,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:41:27,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:41:27,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:41:27,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:41:30,023.023 INFO    ] ================================================
[2026-06-13 23:41:30,038.038 INFO    ] Launching Daemon at Sat Jun 13 23:41:30 IST 2026
[2026-06-13 23:41:30,049.049 INFO    ] ================================================
[2026-06-13 23:41:30,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:41:30
[2026-06-13 23:41:30,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:41:30,840.840 INFO    ] Initializing speech engine...
[2026-06-13 23:41:30,845.845 INFO    ] 2026-06-13 23:41:30
[2026-06-13 23:41:31,050.050 INFO    ] 2026-06-13 23:41:31
[2026-06-13 23:41:31,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:41:31,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:41:31,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:41:31,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:41:31,454.454 INFO    ] time= 13/06/2026 23:41:31
[2026-06-13 23:41:31,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:41:31,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:41:31,571.571 INFO    ] No existing commands found in stream
[2026-06-13 23:41:36,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:36,583.583 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-13 23:41:38,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:41:38,503.503 INFO    ] Checking for system updates...
[2026-06-13 23:41:38,524.524 INFO    ] 200
[2026-06-13 23:41:38,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:38,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:38,560.560 INFO    ] No update needed
[2026-06-13 23:41:38,562.562 INFO    ] Checking for camera pi updates...
[2026-06-13 23:41:38,585.585 INFO    ] 200
[2026-06-13 23:41:38,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:38,613.613 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:41:38,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:38,656.656 INFO    ] No camera update needed
[2026-06-13 23:41:38,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:41:38,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:41:38,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:41:38,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:41:40,705.705 INFO    ] ================================================
[2026-06-13 23:41:40,720.720 INFO    ] Launching Daemon at Sat Jun 13 23:41:40 IST 2026
[2026-06-13 23:41:40,731.731 INFO    ] ================================================
[2026-06-13 23:41:41,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:41:41
[2026-06-13 23:41:41,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:41:41,871.871 INFO    ] Initializing speech engine...
[2026-06-13 23:41:41,885.885 INFO    ] 2026-06-13 23:41:41
[2026-06-13 23:41:42,135.135 INFO    ] 2026-06-13 23:41:42
[2026-06-13 23:41:42,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:41:42,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:41:42,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:41:42,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:41:42,480.480 INFO    ] time= 13/06/2026 23:41:42
[2026-06-13 23:41:42,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:41:42,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:41:42,592.592 INFO    ] No existing commands found in stream
[2026-06-13 23:41:47,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:47,607.607 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-13 23:41:50,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:41:50,518.518 INFO    ] Checking for system updates...
[2026-06-13 23:41:50,554.554 INFO    ] 200
[2026-06-13 23:41:50,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:50,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:50,613.613 INFO    ] No update needed
[2026-06-13 23:41:50,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 23:41:50,650.650 INFO    ] 200
[2026-06-13 23:41:50,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:41:50,678.678 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:41:50,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:41:50,716.716 INFO    ] No camera update needed
[2026-06-13 23:41:50,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:41:50,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:41:50,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:41:50,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:41:52,763.763 INFO    ] ================================================
[2026-06-13 23:41:52,779.779 INFO    ] Launching Daemon at Sat Jun 13 23:41:52 IST 2026
[2026-06-13 23:41:52,790.790 INFO    ] ================================================
[2026-06-13 23:41:53,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:41:53
[2026-06-13 23:41:53,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:41:53,583.583 INFO    ] Initializing speech engine...
[2026-06-13 23:41:53,588.588 INFO    ] 2026-06-13 23:41:53
[2026-06-13 23:41:53,797.797 INFO    ] 2026-06-13 23:41:53
[2026-06-13 23:41:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:41:53,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:41:54,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:41:54,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:41:54,220.220 INFO    ] time= 13/06/2026 23:41:54
[2026-06-13 23:41:54,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:41:54,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:41:54,317.317 INFO    ] No existing commands found in stream
[2026-06-13 23:41:59,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:41:59,331.331 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 23:42:01,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:42:01,593.593 INFO    ] Checking for system updates...
[2026-06-13 23:42:01,620.620 INFO    ] 200
[2026-06-13 23:42:01,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:01,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:42:01,662.662 INFO    ] No update needed
[2026-06-13 23:42:01,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 23:42:01,693.693 INFO    ] 200
[2026-06-13 23:42:01,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:01,732.732 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:42:01,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:42:01,777.777 INFO    ] No camera update needed
[2026-06-13 23:42:01,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:42:01,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:42:01,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:42:01,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:42:03,831.831 INFO    ] ================================================
[2026-06-13 23:42:03,846.846 INFO    ] Launching Daemon at Sat Jun 13 23:42:03 IST 2026
[2026-06-13 23:42:03,857.857 INFO    ] ================================================
[2026-06-13 23:42:04,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:42:04
[2026-06-13 23:42:04,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:42:04,672.672 INFO    ] Initializing speech engine...
[2026-06-13 23:42:04,678.678 INFO    ] 2026-06-13 23:42:04
[2026-06-13 23:42:04,881.881 INFO    ] 2026-06-13 23:42:04
[2026-06-13 23:42:04,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:42:05,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:42:05,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:42:05,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:42:05,301.301 INFO    ] time= 13/06/2026 23:42:05
[2026-06-13 23:42:05,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:42:05,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:42:05,411.411 INFO    ] No existing commands found in stream
[2026-06-13 23:42:10,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:42:10,425.425 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-13 23:42:12,295.295 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 23:42:12,322.322 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 23:42:12,331.331 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf7d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 23:42:12,341.341 INFO    ] None
[2026-06-13 23:42:12,344.344 INFO    ] Checking for system updates...
[2026-06-13 23:42:12,369.369 INFO    ] 200
[2026-06-13 23:42:12,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:12,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:12,404.404 INFO    ] No update needed
[2026-06-13 23:42:12,405.405 INFO    ] Checking for camera pi updates...
[2026-06-13 23:42:12,426.426 INFO    ] 200
[2026-06-13 23:42:12,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:12,453.453 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:42:21,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:21,263.263 INFO    ] No camera update needed
[2026-06-13 23:42:21,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:42:21,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:42:21,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:42:21,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:42:23,324.324 INFO    ] ================================================
[2026-06-13 23:42:23,339.339 INFO    ] Launching Daemon at Sat Jun 13 23:42:23 IST 2026
[2026-06-13 23:42:23,350.350 INFO    ] ================================================
[2026-06-13 23:42:23,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:42:23
[2026-06-13 23:42:24,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:42:24,183.183 INFO    ] Initializing speech engine...
[2026-06-13 23:42:24,189.189 INFO    ] 2026-06-13 23:42:24
[2026-06-13 23:42:24,397.397 INFO    ] 2026-06-13 23:42:24
[2026-06-13 23:42:24,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:42:24,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:42:24,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:42:24,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:42:24,794.794 INFO    ] time= 13/06/2026 23:42:24
[2026-06-13 23:42:24,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:42:24,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:42:24,916.916 INFO    ] No existing commands found in stream
[2026-06-13 23:42:29,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:42:29,933.933 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 23:42:30,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:42:30,473.473 INFO    ] Checking for system updates...
[2026-06-13 23:42:30,495.495 INFO    ] 200
[2026-06-13 23:42:30,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:30,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:30,529.529 INFO    ] No update needed
[2026-06-13 23:42:30,531.531 INFO    ] Checking for camera pi updates...
[2026-06-13 23:42:30,551.551 INFO    ] 200
[2026-06-13 23:42:30,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:30,576.576 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:42:30,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:30,628.628 INFO    ] No camera update needed
[2026-06-13 23:42:30,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:42:30,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:42:30,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:42:30,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:42:32,677.677 INFO    ] ================================================
[2026-06-13 23:42:32,693.693 INFO    ] Launching Daemon at Sat Jun 13 23:42:32 IST 2026
[2026-06-13 23:42:32,705.705 INFO    ] ================================================
[2026-06-13 23:42:33,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:42:33
[2026-06-13 23:42:33,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:42:34,117.117 INFO    ] Initializing speech engine...
[2026-06-13 23:42:34,123.123 INFO    ] 2026-06-13 23:42:34
[2026-06-13 23:42:34,437.437 INFO    ] 2026-06-13 23:42:34
[2026-06-13 23:42:34,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:42:34,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:42:34,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:42:34,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:42:34,824.824 INFO    ] time= 13/06/2026 23:42:34
[2026-06-13 23:42:34,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:42:34,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:42:34,936.936 INFO    ] No existing commands found in stream
[2026-06-13 23:42:39,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:42:39,954.954 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-13 23:42:40,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:42:40,702.702 INFO    ] Checking for system updates...
[2026-06-13 23:42:40,722.722 INFO    ] 200
[2026-06-13 23:42:40,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:40,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:40,757.757 INFO    ] No update needed
[2026-06-13 23:42:40,759.759 INFO    ] Checking for camera pi updates...
[2026-06-13 23:42:40,778.778 INFO    ] 200
[2026-06-13 23:42:40,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:40,803.803 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:42:40,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:42:40,851.851 INFO    ] No camera update needed
[2026-06-13 23:42:40,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:42:40,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:42:40,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:42:40,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:42:42,902.902 INFO    ] ================================================
[2026-06-13 23:42:42,918.918 INFO    ] Launching Daemon at Sat Jun 13 23:42:42 IST 2026
[2026-06-13 23:42:42,929.929 INFO    ] ================================================
[2026-06-13 23:42:43,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:42:43
[2026-06-13 23:42:43,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:42:43,730.730 INFO    ] Initializing speech engine...
[2026-06-13 23:42:43,743.743 INFO    ] 2026-06-13 23:42:43
[2026-06-13 23:42:43,957.957 INFO    ] 2026-06-13 23:42:43
[2026-06-13 23:42:43,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:42:44,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:42:44,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:42:44,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:42:44,373.373 INFO    ] time= 13/06/2026 23:42:44
[2026-06-13 23:42:44,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:42:44,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:42:44,482.482 INFO    ] No existing commands found in stream
[2026-06-13 23:42:49,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:42:49,493.493 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-13 23:42:51,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:42:51,362.362 INFO    ] Checking for system updates...
[2026-06-13 23:42:51,383.383 INFO    ] 200
[2026-06-13 23:42:51,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:51,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:42:51,416.416 INFO    ] No update needed
[2026-06-13 23:42:51,417.417 INFO    ] Checking for camera pi updates...
[2026-06-13 23:42:51,438.438 INFO    ] 200
[2026-06-13 23:42:51,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:42:51,463.463 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:42:51,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:42:51,504.504 INFO    ] No camera update needed
[2026-06-13 23:42:51,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:42:51,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:42:51,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:42:51,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:42:53,552.552 INFO    ] ================================================
[2026-06-13 23:42:53,567.567 INFO    ] Launching Daemon at Sat Jun 13 23:42:53 IST 2026
[2026-06-13 23:42:53,578.578 INFO    ] ================================================
[2026-06-13 23:42:53,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:42:53
[2026-06-13 23:42:54,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:42:54,862.862 INFO    ] Initializing speech engine...
[2026-06-13 23:42:54,876.876 INFO    ] 2026-06-13 23:42:54
[2026-06-13 23:42:55,186.186 INFO    ] 2026-06-13 23:42:55
[2026-06-13 23:42:55,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:42:55,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:42:55,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:42:55,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:42:55,638.638 INFO    ] time= 13/06/2026 23:42:55
[2026-06-13 23:42:55,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:42:55,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:42:55,829.829 INFO    ] No existing commands found in stream
[2026-06-13 23:43:00,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:00,861.861 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-13 23:43:03,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:43:03,200.200 INFO    ] Checking for system updates...
[2026-06-13 23:43:03,221.221 INFO    ] 200
[2026-06-13 23:43:03,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:03,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:03,254.254 INFO    ] No update needed
[2026-06-13 23:43:03,256.256 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:03,276.276 INFO    ] 200
[2026-06-13 23:43:03,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:03,301.301 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:03,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:03,341.341 INFO    ] No camera update needed
[2026-06-13 23:43:03,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:03,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:03,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:03,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:05,391.391 INFO    ] ================================================
[2026-06-13 23:43:05,407.407 INFO    ] Launching Daemon at Sat Jun 13 23:43:05 IST 2026
[2026-06-13 23:43:05,418.418 INFO    ] ================================================
[2026-06-13 23:43:05,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:05
[2026-06-13 23:43:06,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:06,799.799 INFO    ] Initializing speech engine...
[2026-06-13 23:43:06,818.818 INFO    ] 2026-06-13 23:43:06
[2026-06-13 23:43:07,068.068 INFO    ] 2026-06-13 23:43:07
[2026-06-13 23:43:07,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:43:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:43:07,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:43:07,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:43:07,437.437 INFO    ] time= 13/06/2026 23:43:07
[2026-06-13 23:43:07,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:43:07,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:43:07,516.516 INFO    ] No existing commands found in stream
[2026-06-13 23:43:12,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:12,532.532 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 23:43:13,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:43:13,698.698 INFO    ] Checking for system updates...
[2026-06-13 23:43:13,719.719 INFO    ] 200
[2026-06-13 23:43:13,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:13,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:43:13,753.753 INFO    ] No update needed
[2026-06-13 23:43:13,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:13,777.777 INFO    ] 200
[2026-06-13 23:43:13,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:13,808.808 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:13,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:43:13,849.849 INFO    ] No camera update needed
[2026-06-13 23:43:13,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:13,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:13,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:13,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:15,900.900 INFO    ] ================================================
[2026-06-13 23:43:15,915.915 INFO    ] Launching Daemon at Sat Jun 13 23:43:15 IST 2026
[2026-06-13 23:43:15,926.926 INFO    ] ================================================
[2026-06-13 23:43:16,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:16
[2026-06-13 23:43:16,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:16,768.768 INFO    ] Initializing speech engine...
[2026-06-13 23:43:16,784.784 INFO    ] 2026-06-13 23:43:16
[2026-06-13 23:43:17,043.043 INFO    ] 2026-06-13 23:43:17
[2026-06-13 23:43:17,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:43:17,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:43:17,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:43:17,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:43:17,381.381 INFO    ] time= 13/06/2026 23:43:17
[2026-06-13 23:43:17,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:43:17,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:43:17,494.494 INFO    ] No existing commands found in stream
[2026-06-13 23:43:22,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:22,527.527 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-13 23:43:25,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:43:25,871.871 INFO    ] Checking for system updates...
[2026-06-13 23:43:25,893.893 INFO    ] 200
[2026-06-13 23:43:25,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:25,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:25,929.929 INFO    ] No update needed
[2026-06-13 23:43:25,930.930 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:25,949.949 INFO    ] 200
[2026-06-13 23:43:25,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:25,976.976 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:26,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:26,002.002 INFO    ] No camera update needed
[2026-06-13 23:43:26,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:26,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:26,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:26,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:28,050.050 INFO    ] ================================================
[2026-06-13 23:43:28,065.065 INFO    ] Launching Daemon at Sat Jun 13 23:43:28 IST 2026
[2026-06-13 23:43:28,076.076 INFO    ] ================================================
[2026-06-13 23:43:28,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:28
[2026-06-13 23:43:28,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:28,889.889 INFO    ] Initializing speech engine...
[2026-06-13 23:43:28,894.894 INFO    ] 2026-06-13 23:43:28
[2026-06-13 23:43:29,100.100 INFO    ] 2026-06-13 23:43:29
[2026-06-13 23:43:29,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:43:29,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:43:29,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:43:29,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:43:29,513.513 INFO    ] time= 13/06/2026 23:43:29
[2026-06-13 23:43:29,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:43:29,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:43:29,614.614 INFO    ] No existing commands found in stream
[2026-06-13 23:43:34,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:34,626.626 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-13 23:43:36,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:43:36,697.697 INFO    ] Checking for system updates...
[2026-06-13 23:43:36,719.719 INFO    ] 200
[2026-06-13 23:43:36,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:36,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:43:36,752.752 INFO    ] No update needed
[2026-06-13 23:43:36,754.754 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:36,773.773 INFO    ] 200
[2026-06-13 23:43:36,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:36,799.799 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:36,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:43:36,846.846 INFO    ] No camera update needed
[2026-06-13 23:43:36,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:36,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:36,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:36,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:38,896.896 INFO    ] ================================================
[2026-06-13 23:43:38,912.912 INFO    ] Launching Daemon at Sat Jun 13 23:43:38 IST 2026
[2026-06-13 23:43:38,923.923 INFO    ] ================================================
[2026-06-13 23:43:39,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:39
[2026-06-13 23:43:40,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:40,269.269 INFO    ] Initializing speech engine...
[2026-06-13 23:43:40,288.288 INFO    ] 2026-06-13 23:43:40
[2026-06-13 23:43:40,548.548 INFO    ] 2026-06-13 23:43:40
[2026-06-13 23:43:40,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:43:40,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:43:40,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:43:40,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:43:40,890.890 INFO    ] time= 13/06/2026 23:43:40
[2026-06-13 23:43:40,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:43:40,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:43:41,002.002 INFO    ] No existing commands found in stream
[2026-06-13 23:43:46,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:46,017.017 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-13 23:43:46,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:43:46,553.553 INFO    ] Checking for system updates...
[2026-06-13 23:43:46,574.574 INFO    ] 200
[2026-06-13 23:43:46,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:46,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:46,606.606 INFO    ] No update needed
[2026-06-13 23:43:46,608.608 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:46,627.627 INFO    ] 200
[2026-06-13 23:43:46,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:46,652.652 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:46,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:46,699.699 INFO    ] No camera update needed
[2026-06-13 23:43:46,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:46,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:46,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:46,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:48,747.747 INFO    ] ================================================
[2026-06-13 23:43:48,762.762 INFO    ] Launching Daemon at Sat Jun 13 23:43:48 IST 2026
[2026-06-13 23:43:48,774.774 INFO    ] ================================================
[2026-06-13 23:43:49,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:49
[2026-06-13 23:43:49,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:49,553.553 INFO    ] Initializing speech engine...
[2026-06-13 23:43:49,561.561 INFO    ] 2026-06-13 23:43:49
[2026-06-13 23:43:49,771.771 INFO    ] 2026-06-13 23:43:49
[2026-06-13 23:43:49,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:43:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:43:49,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:43:50,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:43:50,182.182 INFO    ] time= 13/06/2026 23:43:50
[2026-06-13 23:43:50,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:43:50,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:43:50,370.370 INFO    ] No existing commands found in stream
[2026-06-13 23:43:55,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:43:55,408.408 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-13 23:43:56,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:43:56,537.537 INFO    ] Checking for system updates...
[2026-06-13 23:43:56,558.558 INFO    ] 200
[2026-06-13 23:43:56,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:56,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:56,592.592 INFO    ] No update needed
[2026-06-13 23:43:56,593.593 INFO    ] Checking for camera pi updates...
[2026-06-13 23:43:56,616.616 INFO    ] 200
[2026-06-13 23:43:56,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:43:56,641.641 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:43:56,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:43:56,686.686 INFO    ] No camera update needed
[2026-06-13 23:43:56,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:43:56,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:43:56,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:43:56,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:43:58,734.734 INFO    ] ================================================
[2026-06-13 23:43:58,749.749 INFO    ] Launching Daemon at Sat Jun 13 23:43:58 IST 2026
[2026-06-13 23:43:58,760.760 INFO    ] ================================================
[2026-06-13 23:43:59,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:43:59
[2026-06-13 23:43:59,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:43:59,611.611 INFO    ] Initializing speech engine...
[2026-06-13 23:43:59,622.622 INFO    ] 2026-06-13 23:43:59
[2026-06-13 23:43:59,833.833 INFO    ] 2026-06-13 23:43:59
[2026-06-13 23:43:59,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:00,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:00,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:00,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:00,245.245 INFO    ] time= 13/06/2026 23:44:00
[2026-06-13 23:44:00,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:00,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:00,357.357 INFO    ] No existing commands found in stream
[2026-06-13 23:44:05,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:44:05,367.367 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-13 23:44:07,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:44:07,833.833 INFO    ] Checking for system updates...
[2026-06-13 23:44:07,854.854 INFO    ] 200
[2026-06-13 23:44:07,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:07,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:07,888.888 INFO    ] No update needed
[2026-06-13 23:44:07,889.889 INFO    ] Checking for camera pi updates...
[2026-06-13 23:44:07,910.910 INFO    ] 200
[2026-06-13 23:44:07,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:07,935.935 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:44:07,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:07,985.985 INFO    ] No camera update needed
[2026-06-13 23:44:07,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:44:07,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:44:07,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:44:07,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:44:10,035.035 INFO    ] ================================================
[2026-06-13 23:44:10,050.050 INFO    ] Launching Daemon at Sat Jun 13 23:44:10 IST 2026
[2026-06-13 23:44:10,061.061 INFO    ] ================================================
[2026-06-13 23:44:10,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:44:10
[2026-06-13 23:44:10,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:44:10,896.896 INFO    ] Initializing speech engine...
[2026-06-13 23:44:10,901.901 INFO    ] 2026-06-13 23:44:10
[2026-06-13 23:44:11,106.106 INFO    ] 2026-06-13 23:44:11
[2026-06-13 23:44:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:11,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:11,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:11,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:11,506.506 INFO    ] time= 13/06/2026 23:44:11
[2026-06-13 23:44:11,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:11,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:11,622.622 INFO    ] No existing commands found in stream
[2026-06-13 23:44:16,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:44:16,640.640 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 23:44:19,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:44:19,981.981 INFO    ] Checking for system updates...
[2026-06-13 23:44:20,003.003 INFO    ] 200
[2026-06-13 23:44:20,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:20,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:20,037.037 INFO    ] No update needed
[2026-06-13 23:44:20,038.038 INFO    ] Checking for camera pi updates...
[2026-06-13 23:44:20,059.059 INFO    ] 200
[2026-06-13 23:44:20,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:20,084.084 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:44:20,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:20,123.123 INFO    ] No camera update needed
[2026-06-13 23:44:20,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:44:20,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:44:20,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:44:20,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:44:22,170.170 INFO    ] ================================================
[2026-06-13 23:44:22,185.185 INFO    ] Launching Daemon at Sat Jun 13 23:44:22 IST 2026
[2026-06-13 23:44:22,196.196 INFO    ] ================================================
[2026-06-13 23:44:22,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:44:22
[2026-06-13 23:44:22,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:44:22,975.975 INFO    ] Initializing speech engine...
[2026-06-13 23:44:22,980.980 INFO    ] 2026-06-13 23:44:22
[2026-06-13 23:44:23,184.184 INFO    ] 2026-06-13 23:44:23
[2026-06-13 23:44:23,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:23,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:23,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:23,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:23,592.592 INFO    ] time= 13/06/2026 23:44:23
[2026-06-13 23:44:23,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:23,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:23,698.698 INFO    ] No existing commands found in stream
[2026-06-13 23:44:28,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:44:28,714.714 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 23:44:30,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:44:30,908.908 INFO    ] Checking for system updates...
[2026-06-13 23:44:30,929.929 INFO    ] 200
[2026-06-13 23:44:30,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:30,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:30,963.963 INFO    ] No update needed
[2026-06-13 23:44:30,965.965 INFO    ] Checking for camera pi updates...
[2026-06-13 23:44:30,984.984 INFO    ] 200
[2026-06-13 23:44:30,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:31,011.011 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:44:31,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:44:31,151.151 INFO    ] No camera update needed
[2026-06-13 23:44:31,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:44:31,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:44:31,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:44:31,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:44:33,192.192 INFO    ] ================================================
[2026-06-13 23:44:33,208.208 INFO    ] Launching Daemon at Sat Jun 13 23:44:33 IST 2026
[2026-06-13 23:44:33,219.219 INFO    ] ================================================
[2026-06-13 23:44:33,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:44:33
[2026-06-13 23:44:33,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:44:34,069.069 INFO    ] Initializing speech engine...
[2026-06-13 23:44:34,075.075 INFO    ] 2026-06-13 23:44:34
[2026-06-13 23:44:34,285.285 INFO    ] 2026-06-13 23:44:34
[2026-06-13 23:44:34,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:34,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:34,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:34,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:34,694.694 INFO    ] time= 13/06/2026 23:44:34
[2026-06-13 23:44:34,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:34,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:34,807.807 INFO    ] No existing commands found in stream
[2026-06-13 23:44:39,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:44:39,824.824 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-13 23:44:42,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:44:42,572.572 INFO    ] Checking for system updates...
[2026-06-13 23:44:42,593.593 INFO    ] 200
[2026-06-13 23:44:42,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:42,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:44:42,626.626 INFO    ] No update needed
[2026-06-13 23:44:42,627.627 INFO    ] Checking for camera pi updates...
[2026-06-13 23:44:42,647.647 INFO    ] 200
[2026-06-13 23:44:42,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:42,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:44:42,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:44:42,710.710 INFO    ] No camera update needed
[2026-06-13 23:44:42,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:44:42,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:44:42,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:44:42,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:44:44,757.757 INFO    ] ================================================
[2026-06-13 23:44:44,772.772 INFO    ] Launching Daemon at Sat Jun 13 23:44:44 IST 2026
[2026-06-13 23:44:44,783.783 INFO    ] ================================================
[2026-06-13 23:44:45,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:44:45
[2026-06-13 23:44:45,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:44:45,606.606 INFO    ] Initializing speech engine...
[2026-06-13 23:44:45,616.616 INFO    ] 2026-06-13 23:44:45
[2026-06-13 23:44:45,819.819 INFO    ] 2026-06-13 23:44:45
[2026-06-13 23:44:45,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:46,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:46,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:46,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:46,220.220 INFO    ] time= 13/06/2026 23:44:46
[2026-06-13 23:44:46,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:46,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:46,349.349 INFO    ] No existing commands found in stream
[2026-06-13 23:44:51,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:44:51,365.365 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-13 23:44:53,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:44:53,602.602 INFO    ] Checking for system updates...
[2026-06-13 23:44:53,623.623 INFO    ] 200
[2026-06-13 23:44:53,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:53,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:44:53,656.656 INFO    ] No update needed
[2026-06-13 23:44:53,657.657 INFO    ] Checking for camera pi updates...
[2026-06-13 23:44:53,678.678 INFO    ] 200
[2026-06-13 23:44:53,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:44:53,703.703 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:44:53,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:44:53,742.742 INFO    ] No camera update needed
[2026-06-13 23:44:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:44:53,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:44:53,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:44:53,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:44:55,791.791 INFO    ] ================================================
[2026-06-13 23:44:55,806.806 INFO    ] Launching Daemon at Sat Jun 13 23:44:55 IST 2026
[2026-06-13 23:44:55,816.816 INFO    ] ================================================
[2026-06-13 23:44:56,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:44:56
[2026-06-13 23:44:56,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:44:56,631.631 INFO    ] Initializing speech engine...
[2026-06-13 23:44:56,636.636 INFO    ] 2026-06-13 23:44:56
[2026-06-13 23:44:56,841.841 INFO    ] 2026-06-13 23:44:56
[2026-06-13 23:44:56,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:44:56,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:44:57,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:44:57,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:44:57,235.235 INFO    ] time= 13/06/2026 23:44:57
[2026-06-13 23:44:57,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:44:57,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:44:57,356.356 INFO    ] No existing commands found in stream
[2026-06-13 23:45:02,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:45:02,361.361 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-13 23:45:03,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:45:03,205.205 INFO    ] Checking for system updates...
[2026-06-13 23:45:03,245.245 INFO    ] 200
[2026-06-13 23:45:03,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:03,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:45:03,308.308 INFO    ] No update needed
[2026-06-13 23:45:03,311.311 INFO    ] Checking for camera pi updates...
[2026-06-13 23:45:03,346.346 INFO    ] 200
[2026-06-13 23:45:03,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:03,390.390 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:45:03,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:45:03,424.424 INFO    ] No camera update needed
[2026-06-13 23:45:03,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:45:03,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:45:03,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:45:03,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:45:05,479.479 INFO    ] ================================================
[2026-06-13 23:45:05,494.494 INFO    ] Launching Daemon at Sat Jun 13 23:45:05 IST 2026
[2026-06-13 23:45:05,505.505 INFO    ] ================================================
[2026-06-13 23:45:06,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:45:06
[2026-06-13 23:45:06,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:45:06,609.609 INFO    ] Initializing speech engine...
[2026-06-13 23:45:06,614.614 INFO    ] 2026-06-13 23:45:06
[2026-06-13 23:45:06,817.817 INFO    ] 2026-06-13 23:45:06
[2026-06-13 23:45:06,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:45:07,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:45:07,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:45:07,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:45:07,237.237 INFO    ] time= 13/06/2026 23:45:07
[2026-06-13 23:45:07,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:45:07,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:45:07,332.332 INFO    ] No existing commands found in stream
[2026-06-13 23:45:12,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:45:12,345.345 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-13 23:45:16,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:45:16,457.457 INFO    ] Checking for system updates...
[2026-06-13 23:45:16,477.477 INFO    ] 200
[2026-06-13 23:45:16,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:16,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:45:16,510.510 INFO    ] No update needed
[2026-06-13 23:45:16,511.511 INFO    ] Checking for camera pi updates...
[2026-06-13 23:45:16,535.535 INFO    ] 200
[2026-06-13 23:45:16,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:16,559.559 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:45:16,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:45:16,597.597 INFO    ] No camera update needed
[2026-06-13 23:45:16,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:45:16,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:45:16,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:45:16,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:45:18,645.645 INFO    ] ================================================
[2026-06-13 23:45:18,660.660 INFO    ] Launching Daemon at Sat Jun 13 23:45:18 IST 2026
[2026-06-13 23:45:18,671.671 INFO    ] ================================================
[2026-06-13 23:45:19,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:45:19
[2026-06-13 23:45:19,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:45:19,484.484 INFO    ] Initializing speech engine...
[2026-06-13 23:45:19,495.495 INFO    ] 2026-06-13 23:45:19
[2026-06-13 23:45:19,699.699 INFO    ] 2026-06-13 23:45:19
[2026-06-13 23:45:19,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:45:19,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:45:19,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:45:20,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:45:20,113.113 INFO    ] time= 13/06/2026 23:45:20
[2026-06-13 23:45:20,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:45:20,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:45:20,309.309 INFO    ] No existing commands found in stream
[2026-06-13 23:45:25,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:45:25,322.322 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-13 23:45:29,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:45:29,197.197 INFO    ] Checking for system updates...
[2026-06-13 23:45:29,218.218 INFO    ] 200
[2026-06-13 23:45:29,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:29,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:29,252.252 INFO    ] No update needed
[2026-06-13 23:45:29,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 23:45:29,274.274 INFO    ] 200
[2026-06-13 23:45:29,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:29,299.299 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:45:29,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:29,337.337 INFO    ] No camera update needed
[2026-06-13 23:45:29,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:45:29,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:45:29,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:45:29,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:45:31,387.387 INFO    ] ================================================
[2026-06-13 23:45:31,402.402 INFO    ] Launching Daemon at Sat Jun 13 23:45:31 IST 2026
[2026-06-13 23:45:31,413.413 INFO    ] ================================================
[2026-06-13 23:45:32,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:45:32
[2026-06-13 23:45:32,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:45:33,058.058 INFO    ] Initializing speech engine...
[2026-06-13 23:45:33,063.063 INFO    ] 2026-06-13 23:45:33
[2026-06-13 23:45:33,326.326 INFO    ] 2026-06-13 23:45:33
[2026-06-13 23:45:33,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:45:33,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:45:33,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:45:33,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:45:33,699.699 INFO    ] time= 13/06/2026 23:45:33
[2026-06-13 23:45:33,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:45:33,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:45:33,824.824 INFO    ] No existing commands found in stream
[2026-06-13 23:45:38,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:45:38,839.839 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-13 23:45:41,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:45:41,777.777 INFO    ] Checking for system updates...
[2026-06-13 23:45:41,800.800 INFO    ] 200
[2026-06-13 23:45:41,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:41,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:41,833.833 INFO    ] No update needed
[2026-06-13 23:45:41,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 23:45:41,856.856 INFO    ] 200
[2026-06-13 23:45:41,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:41,881.881 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:45:41,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:41,920.920 INFO    ] No camera update needed
[2026-06-13 23:45:41,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:45:41,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:45:41,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:45:41,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:45:43,968.968 INFO    ] ================================================
[2026-06-13 23:45:43,983.983 INFO    ] Launching Daemon at Sat Jun 13 23:45:43 IST 2026
[2026-06-13 23:45:43,994.994 INFO    ] ================================================
[2026-06-13 23:45:44,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:45:44
[2026-06-13 23:45:44,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:45:44,827.827 INFO    ] Initializing speech engine...
[2026-06-13 23:45:44,838.838 INFO    ] 2026-06-13 23:45:44
[2026-06-13 23:45:45,045.045 INFO    ] 2026-06-13 23:45:45
[2026-06-13 23:45:45,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:45:45,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:45:45,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:45:45,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:45:45,469.469 INFO    ] time= 13/06/2026 23:45:45
[2026-06-13 23:45:45,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:45:45,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:45:45,568.568 INFO    ] No existing commands found in stream
[2026-06-13 23:45:50,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:45:50,585.585 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-13 23:45:54,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:45:54,048.048 INFO    ] Checking for system updates...
[2026-06-13 23:45:54,070.070 INFO    ] 200
[2026-06-13 23:45:54,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:54,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:54,104.104 INFO    ] No update needed
[2026-06-13 23:45:54,106.106 INFO    ] Checking for camera pi updates...
[2026-06-13 23:45:54,126.126 INFO    ] 200
[2026-06-13 23:45:54,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:45:54,152.152 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:45:54,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:45:54,193.193 INFO    ] No camera update needed
[2026-06-13 23:45:54,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:45:54,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:45:54,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:45:54,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:45:56,241.241 INFO    ] ================================================
[2026-06-13 23:45:56,256.256 INFO    ] Launching Daemon at Sat Jun 13 23:45:56 IST 2026
[2026-06-13 23:45:56,267.267 INFO    ] ================================================
[2026-06-13 23:45:56,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:45:56
[2026-06-13 23:45:56,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:45:57,069.069 INFO    ] Initializing speech engine...
[2026-06-13 23:45:57,080.080 INFO    ] 2026-06-13 23:45:57
[2026-06-13 23:45:57,296.296 INFO    ] 2026-06-13 23:45:57
[2026-06-13 23:45:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:45:57,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:45:57,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:45:57,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:45:57,706.706 INFO    ] time= 13/06/2026 23:45:57
[2026-06-13 23:45:57,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:45:57,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:45:57,847.847 INFO    ] No existing commands found in stream
[2026-06-13 23:46:02,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:02,858.858 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-13 23:46:03,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:46:03,135.135 INFO    ] Checking for system updates...
[2026-06-13 23:46:03,155.155 INFO    ] 200
[2026-06-13 23:46:03,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:03,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:03,192.192 INFO    ] No update needed
[2026-06-13 23:46:03,194.194 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:03,213.213 INFO    ] 200
[2026-06-13 23:46:03,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:03,238.238 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:03,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:03,273.273 INFO    ] No camera update needed
[2026-06-13 23:46:03,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:03,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:03,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:03,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:46:05,323.323 INFO    ] ================================================
[2026-06-13 23:46:05,338.338 INFO    ] Launching Daemon at Sat Jun 13 23:46:05 IST 2026
[2026-06-13 23:46:05,349.349 INFO    ] ================================================
[2026-06-13 23:46:05,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:46:05
[2026-06-13 23:46:06,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:46:06,177.177 INFO    ] Initializing speech engine...
[2026-06-13 23:46:06,182.182 INFO    ] 2026-06-13 23:46:06
[2026-06-13 23:46:06,384.384 INFO    ] 2026-06-13 23:46:06
[2026-06-13 23:46:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:46:06,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:46:06,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:46:06,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:46:06,732.732 INFO    ] time= 13/06/2026 23:46:06
[2026-06-13 23:46:06,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:46:06,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:46:06,904.904 INFO    ] No existing commands found in stream
[2026-06-13 23:46:11,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:11,915.915 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-13 23:46:14,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:46:14,731.731 INFO    ] Checking for system updates...
[2026-06-13 23:46:14,751.751 INFO    ] 200
[2026-06-13 23:46:14,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:14,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:14,787.787 INFO    ] No update needed
[2026-06-13 23:46:14,788.788 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:14,808.808 INFO    ] 200
[2026-06-13 23:46:14,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:14,833.833 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:14,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:14,874.874 INFO    ] No camera update needed
[2026-06-13 23:46:14,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:14,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:14,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:14,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:46:16,922.922 INFO    ] ================================================
[2026-06-13 23:46:16,937.937 INFO    ] Launching Daemon at Sat Jun 13 23:46:16 IST 2026
[2026-06-13 23:46:16,947.947 INFO    ] ================================================
[2026-06-13 23:46:17,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:46:17
[2026-06-13 23:46:17,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:46:17,756.756 INFO    ] Initializing speech engine...
[2026-06-13 23:46:17,761.761 INFO    ] 2026-06-13 23:46:17
[2026-06-13 23:46:17,967.967 INFO    ] 2026-06-13 23:46:17
[2026-06-13 23:46:17,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:46:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:46:18,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:46:18,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:46:18,391.391 INFO    ] time= 13/06/2026 23:46:18
[2026-06-13 23:46:18,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:46:18,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:46:18,492.492 INFO    ] No existing commands found in stream
[2026-06-13 23:46:23,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:23,506.506 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-13 23:46:25,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:46:25,223.223 INFO    ] Checking for system updates...
[2026-06-13 23:46:25,244.244 INFO    ] 200
[2026-06-13 23:46:25,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:25,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:25,278.278 INFO    ] No update needed
[2026-06-13 23:46:25,279.279 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:25,299.299 INFO    ] 200
[2026-06-13 23:46:25,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:25,325.325 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:25,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:25,366.366 INFO    ] No camera update needed
[2026-06-13 23:46:25,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:25,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:25,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:25,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:46:27,415.415 INFO    ] ================================================
[2026-06-13 23:46:27,431.431 INFO    ] Launching Daemon at Sat Jun 13 23:46:27 IST 2026
[2026-06-13 23:46:27,442.442 INFO    ] ================================================
[2026-06-13 23:46:27,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:46:27
[2026-06-13 23:46:28,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:46:28,289.289 INFO    ] Initializing speech engine...
[2026-06-13 23:46:28,295.295 INFO    ] 2026-06-13 23:46:28
[2026-06-13 23:46:28,503.503 INFO    ] 2026-06-13 23:46:28
[2026-06-13 23:46:28,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:46:28,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:46:28,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:46:28,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:46:28,930.930 INFO    ] time= 13/06/2026 23:46:28
[2026-06-13 23:46:28,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:46:28,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:46:29,029.029 INFO    ] No existing commands found in stream
[2026-06-13 23:46:34,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:34,047.047 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-13 23:46:37,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:46:37,228.228 INFO    ] Checking for system updates...
[2026-06-13 23:46:37,250.250 INFO    ] 200
[2026-06-13 23:46:37,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:37,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:46:37,284.284 INFO    ] No update needed
[2026-06-13 23:46:37,285.285 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:37,305.305 INFO    ] 200
[2026-06-13 23:46:37,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:37,332.332 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:37,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:46:37,475.475 INFO    ] No camera update needed
[2026-06-13 23:46:37,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:37,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:37,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:37,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:46:39,528.528 INFO    ] ================================================
[2026-06-13 23:46:39,542.542 INFO    ] Launching Daemon at Sat Jun 13 23:46:39 IST 2026
[2026-06-13 23:46:39,553.553 INFO    ] ================================================
[2026-06-13 23:46:39,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:46:39
[2026-06-13 23:46:40,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:46:40,389.389 INFO    ] Initializing speech engine...
[2026-06-13 23:46:40,399.399 INFO    ] 2026-06-13 23:46:40
[2026-06-13 23:46:40,604.604 INFO    ] 2026-06-13 23:46:40
[2026-06-13 23:46:40,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:46:40,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:46:40,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:46:40,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:46:41,019.019 INFO    ] time= 13/06/2026 23:46:40
[2026-06-13 23:46:41,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:46:41,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:46:41,124.124 INFO    ] No existing commands found in stream
[2026-06-13 23:46:46,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:46,137.137 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-13 23:46:48,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:46:48,726.726 INFO    ] Checking for system updates...
[2026-06-13 23:46:48,748.748 INFO    ] 200
[2026-06-13 23:46:48,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:48,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:48,781.781 INFO    ] No update needed
[2026-06-13 23:46:48,782.782 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:48,802.802 INFO    ] 200
[2026-06-13 23:46:48,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:48,827.827 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:48,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:46:48,871.871 INFO    ] No camera update needed
[2026-06-13 23:46:48,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:48,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:48,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:48,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:46:50,919.919 INFO    ] ================================================
[2026-06-13 23:46:50,934.934 INFO    ] Launching Daemon at Sat Jun 13 23:46:50 IST 2026
[2026-06-13 23:46:50,945.945 INFO    ] ================================================
[2026-06-13 23:46:51,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:46:51
[2026-06-13 23:46:51,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:46:51,744.744 INFO    ] Initializing speech engine...
[2026-06-13 23:46:51,747.747 INFO    ] 2026-06-13 23:46:51
[2026-06-13 23:46:51,978.978 INFO    ] 2026-06-13 23:46:51
[2026-06-13 23:46:52,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:46:52,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:46:52,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:46:52,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:46:52,353.353 INFO    ] time= 13/06/2026 23:46:52
[2026-06-13 23:46:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:46:52,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:46:52,532.532 INFO    ] No existing commands found in stream
[2026-06-13 23:46:57,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:46:57,544.544 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-13 23:46:58,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:46:58,884.884 INFO    ] Checking for system updates...
[2026-06-13 23:46:58,905.905 INFO    ] 200
[2026-06-13 23:46:58,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:58,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:58,939.939 INFO    ] No update needed
[2026-06-13 23:46:58,940.940 INFO    ] Checking for camera pi updates...
[2026-06-13 23:46:58,961.961 INFO    ] 200
[2026-06-13 23:46:58,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:46:58,986.986 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:46:59,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:46:59,027.027 INFO    ] No camera update needed
[2026-06-13 23:46:59,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:46:59,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:46:59,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:46:59,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:01,086.086 INFO    ] ================================================
[2026-06-13 23:47:01,120.120 INFO    ] Launching Daemon at Sat Jun 13 23:47:01 IST 2026
[2026-06-13 23:47:01,140.140 INFO    ] ================================================
[2026-06-13 23:47:01,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:01
[2026-06-13 23:47:02,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:02,776.776 INFO    ] Initializing speech engine...
[2026-06-13 23:47:02,789.789 INFO    ] 2026-06-13 23:47:02
[2026-06-13 23:47:03,061.061 INFO    ] 2026-06-13 23:47:03
[2026-06-13 23:47:03,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:03,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:03,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:03,475.475 INFO    ] time= 13/06/2026 23:47:03
[2026-06-13 23:47:03,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:03,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:03,654.654 INFO    ] No existing commands found in stream
[2026-06-13 23:47:08,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:47:08,670.670 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-13 23:47:10,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:47:10,259.259 INFO    ] Checking for system updates...
[2026-06-13 23:47:10,281.281 INFO    ] 200
[2026-06-13 23:47:10,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:10,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:10,314.314 INFO    ] No update needed
[2026-06-13 23:47:10,315.315 INFO    ] Checking for camera pi updates...
[2026-06-13 23:47:10,335.335 INFO    ] 200
[2026-06-13 23:47:10,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:10,360.360 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:47:10,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:10,405.405 INFO    ] No camera update needed
[2026-06-13 23:47:10,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:47:10,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:47:10,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:47:10,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:12,452.452 INFO    ] ================================================
[2026-06-13 23:47:12,467.467 INFO    ] Launching Daemon at Sat Jun 13 23:47:12 IST 2026
[2026-06-13 23:47:12,478.478 INFO    ] ================================================
[2026-06-13 23:47:12,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:12
[2026-06-13 23:47:13,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:13,333.333 INFO    ] Initializing speech engine...
[2026-06-13 23:47:13,340.340 INFO    ] 2026-06-13 23:47:13
[2026-06-13 23:47:13,546.546 INFO    ] 2026-06-13 23:47:13
[2026-06-13 23:47:13,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:13,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:13,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:13,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:13,957.957 INFO    ] time= 13/06/2026 23:47:13
[2026-06-13 23:47:13,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:13,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:14,062.062 INFO    ] No existing commands found in stream
[2026-06-13 23:47:19,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:47:19,076.076 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 23:47:22,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:47:22,043.043 INFO    ] Checking for system updates...
[2026-06-13 23:47:22,064.064 INFO    ] 200
[2026-06-13 23:47:22,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:22,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:22,098.098 INFO    ] No update needed
[2026-06-13 23:47:22,100.100 INFO    ] Checking for camera pi updates...
[2026-06-13 23:47:22,120.120 INFO    ] 200
[2026-06-13 23:47:22,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:22,145.145 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:47:22,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:22,184.184 INFO    ] No camera update needed
[2026-06-13 23:47:22,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:47:22,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:47:22,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:47:22,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:24,233.233 INFO    ] ================================================
[2026-06-13 23:47:24,248.248 INFO    ] Launching Daemon at Sat Jun 13 23:47:24 IST 2026
[2026-06-13 23:47:24,259.259 INFO    ] ================================================
[2026-06-13 23:47:24,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:24
[2026-06-13 23:47:24,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:25,064.064 INFO    ] Initializing speech engine...
[2026-06-13 23:47:25,072.072 INFO    ] 2026-06-13 23:47:25
[2026-06-13 23:47:25,288.288 INFO    ] 2026-06-13 23:47:25
[2026-06-13 23:47:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:25,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:25,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:25,702.702 INFO    ] time= 13/06/2026 23:47:25
[2026-06-13 23:47:25,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:25,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:25,809.809 INFO    ] No existing commands found in stream
[2026-06-13 23:47:30,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:47:30,821.821 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-13 23:47:32,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:47:32,082.082 INFO    ] Checking for system updates...
[2026-06-13 23:47:32,103.103 INFO    ] 200
[2026-06-13 23:47:32,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:32,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:32,137.137 INFO    ] No update needed
[2026-06-13 23:47:32,139.139 INFO    ] Checking for camera pi updates...
[2026-06-13 23:47:32,158.158 INFO    ] 200
[2026-06-13 23:47:32,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:32,185.185 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:47:32,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:32,211.211 INFO    ] No camera update needed
[2026-06-13 23:47:32,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:47:32,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:47:32,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:47:32,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:34,260.260 INFO    ] ================================================
[2026-06-13 23:47:34,275.275 INFO    ] Launching Daemon at Sat Jun 13 23:47:34 IST 2026
[2026-06-13 23:47:34,286.286 INFO    ] ================================================
[2026-06-13 23:47:34,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:34
[2026-06-13 23:47:35,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:35,576.576 INFO    ] Initializing speech engine...
[2026-06-13 23:47:35,585.585 INFO    ] 2026-06-13 23:47:35
[2026-06-13 23:47:35,867.867 INFO    ] 2026-06-13 23:47:35
[2026-06-13 23:47:35,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:36,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:36,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:36,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:36,285.285 INFO    ] time= 13/06/2026 23:47:36
[2026-06-13 23:47:36,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:36,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:36,471.471 INFO    ] No existing commands found in stream
[2026-06-13 23:47:41,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:47:41,487.487 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-13 23:47:43,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:47:43,128.128 INFO    ] Checking for system updates...
[2026-06-13 23:47:43,149.149 INFO    ] 200
[2026-06-13 23:47:43,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:43,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:47:43,186.186 INFO    ] No update needed
[2026-06-13 23:47:43,188.188 INFO    ] Checking for camera pi updates...
[2026-06-13 23:47:43,207.207 INFO    ] 200
[2026-06-13 23:47:43,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:43,234.234 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:47:43,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:47:43,272.272 INFO    ] No camera update needed
[2026-06-13 23:47:43,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:47:43,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:47:43,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:47:43,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:45,320.320 INFO    ] ================================================
[2026-06-13 23:47:45,335.335 INFO    ] Launching Daemon at Sat Jun 13 23:47:45 IST 2026
[2026-06-13 23:47:45,346.346 INFO    ] ================================================
[2026-06-13 23:47:45,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:45
[2026-06-13 23:47:46,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:46,366.366 INFO    ] Initializing speech engine...
[2026-06-13 23:47:46,393.393 INFO    ] 2026-06-13 23:47:46
[2026-06-13 23:47:46,677.677 INFO    ] 2026-06-13 23:47:46
[2026-06-13 23:47:46,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:46,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:46,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:47,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:47,052.052 INFO    ] time= 13/06/2026 23:47:47
[2026-06-13 23:47:47,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:47,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:47,175.175 INFO    ] No existing commands found in stream
[2026-06-13 23:47:52,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:47:52,192.192 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-13 23:47:55,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:47:55,921.921 INFO    ] Checking for system updates...
[2026-06-13 23:47:55,941.941 INFO    ] 200
[2026-06-13 23:47:55,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:55,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:55,974.974 INFO    ] No update needed
[2026-06-13 23:47:55,976.976 INFO    ] Checking for camera pi updates...
[2026-06-13 23:47:55,995.995 INFO    ] 200
[2026-06-13 23:47:55,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:47:56,023.023 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:47:56,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:47:56,065.065 INFO    ] No camera update needed
[2026-06-13 23:47:56,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:47:56,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:47:56,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:47:56,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:47:58,112.112 INFO    ] ================================================
[2026-06-13 23:47:58,126.126 INFO    ] Launching Daemon at Sat Jun 13 23:47:58 IST 2026
[2026-06-13 23:47:58,137.137 INFO    ] ================================================
[2026-06-13 23:47:58,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:47:58
[2026-06-13 23:47:58,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:47:58,935.935 INFO    ] Initializing speech engine...
[2026-06-13 23:47:58,948.948 INFO    ] 2026-06-13 23:47:58
[2026-06-13 23:47:59,166.166 INFO    ] 2026-06-13 23:47:59
[2026-06-13 23:47:59,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:47:59,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:47:59,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:47:59,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:47:59,578.578 INFO    ] time= 13/06/2026 23:47:59
[2026-06-13 23:47:59,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:47:59,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:47:59,720.720 INFO    ] No existing commands found in stream
[2026-06-13 23:48:04,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:04,733.733 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-13 23:48:05,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:48:05,338.338 INFO    ] Checking for system updates...
[2026-06-13 23:48:05,374.374 INFO    ] 200
[2026-06-13 23:48:05,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:05,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:05,432.432 INFO    ] No update needed
[2026-06-13 23:48:05,435.435 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:05,469.469 INFO    ] 200
[2026-06-13 23:48:05,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:05,516.516 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:05,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:05,563.563 INFO    ] No camera update needed
[2026-06-13 23:48:05,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:05,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:05,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:05,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:07,618.618 INFO    ] ================================================
[2026-06-13 23:48:07,633.633 INFO    ] Launching Daemon at Sat Jun 13 23:48:07 IST 2026
[2026-06-13 23:48:07,644.644 INFO    ] ================================================
[2026-06-13 23:48:07,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:48:07
[2026-06-13 23:48:08,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:48:08,541.541 INFO    ] Initializing speech engine...
[2026-06-13 23:48:08,551.551 INFO    ] 2026-06-13 23:48:08
[2026-06-13 23:48:08,822.822 INFO    ] 2026-06-13 23:48:08
[2026-06-13 23:48:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:48:09,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:48:09,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:48:09,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:48:09,173.173 INFO    ] time= 13/06/2026 23:48:09
[2026-06-13 23:48:09,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:48:09,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:48:09,254.254 INFO    ] No existing commands found in stream
[2026-06-13 23:48:14,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:14,269.269 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-13 23:48:15,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:48:15,223.223 INFO    ] Checking for system updates...
[2026-06-13 23:48:15,244.244 INFO    ] 200
[2026-06-13 23:48:15,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:15,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:48:15,281.281 INFO    ] No update needed
[2026-06-13 23:48:15,283.283 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:15,302.302 INFO    ] 200
[2026-06-13 23:48:15,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:15,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:15,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:48:15,375.375 INFO    ] No camera update needed
[2026-06-13 23:48:15,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:15,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:15,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:15,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:17,422.422 INFO    ] ================================================
[2026-06-13 23:48:17,438.438 INFO    ] Launching Daemon at Sat Jun 13 23:48:17 IST 2026
[2026-06-13 23:48:17,450.450 INFO    ] ================================================
[2026-06-13 23:48:17,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:48:17
[2026-06-13 23:48:18,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:48:18,261.261 INFO    ] Initializing speech engine...
[2026-06-13 23:48:18,270.270 INFO    ] 2026-06-13 23:48:18
[2026-06-13 23:48:18,492.492 INFO    ] 2026-06-13 23:48:18
[2026-06-13 23:48:18,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:48:18,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:48:18,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:48:18,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:48:18,904.904 INFO    ] time= 13/06/2026 23:48:18
[2026-06-13 23:48:18,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:48:18,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:48:19,044.044 INFO    ] No existing commands found in stream
[2026-06-13 23:48:24,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:24,057.057 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-13 23:48:26,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:48:26,403.403 INFO    ] Checking for system updates...
[2026-06-13 23:48:26,423.423 INFO    ] 200
[2026-06-13 23:48:26,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:26,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:26,456.456 INFO    ] No update needed
[2026-06-13 23:48:26,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:26,477.477 INFO    ] 200
[2026-06-13 23:48:26,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:26,502.502 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:26,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:26,543.543 INFO    ] No camera update needed
[2026-06-13 23:48:26,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:26,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:26,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:26,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:28,591.591 INFO    ] ================================================
[2026-06-13 23:48:28,606.606 INFO    ] Launching Daemon at Sat Jun 13 23:48:28 IST 2026
[2026-06-13 23:48:28,617.617 INFO    ] ================================================
[2026-06-13 23:48:28,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:48:28
[2026-06-13 23:48:29,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:48:29,391.391 INFO    ] Initializing speech engine...
[2026-06-13 23:48:29,401.401 INFO    ] 2026-06-13 23:48:29
[2026-06-13 23:48:29,606.606 INFO    ] 2026-06-13 23:48:29
[2026-06-13 23:48:29,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:48:29,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:48:29,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:48:29,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:48:30,015.015 INFO    ] time= 13/06/2026 23:48:29
[2026-06-13 23:48:30,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:48:30,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:48:30,126.126 INFO    ] No existing commands found in stream
[2026-06-13 23:48:35,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:35,140.140 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-13 23:48:35,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:48:35,832.832 INFO    ] Checking for system updates...
[2026-06-13 23:48:35,852.852 INFO    ] 200
[2026-06-13 23:48:35,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:35,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:35,885.885 INFO    ] No update needed
[2026-06-13 23:48:35,886.886 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:35,906.906 INFO    ] 200
[2026-06-13 23:48:35,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:35,931.931 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:35,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:35,967.967 INFO    ] No camera update needed
[2026-06-13 23:48:35,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:35,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:35,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:35,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:38,016.016 INFO    ] ================================================
[2026-06-13 23:48:38,031.031 INFO    ] Launching Daemon at Sat Jun 13 23:48:38 IST 2026
[2026-06-13 23:48:38,042.042 INFO    ] ================================================
[2026-06-13 23:48:38,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:48:38
[2026-06-13 23:48:38,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:48:38,858.858 INFO    ] Initializing speech engine...
[2026-06-13 23:48:38,863.863 INFO    ] 2026-06-13 23:48:38
[2026-06-13 23:48:39,068.068 INFO    ] 2026-06-13 23:48:39
[2026-06-13 23:48:39,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:48:39,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:48:39,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:48:39,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:48:39,474.474 INFO    ] time= 13/06/2026 23:48:39
[2026-06-13 23:48:39,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:48:39,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:48:39,600.600 INFO    ] No existing commands found in stream
[2026-06-13 23:48:44,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:44,622.622 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-13 23:48:46,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:48:46,717.717 INFO    ] Checking for system updates...
[2026-06-13 23:48:46,739.739 INFO    ] 200
[2026-06-13 23:48:46,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:46,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:48:46,772.772 INFO    ] No update needed
[2026-06-13 23:48:46,773.773 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:46,793.793 INFO    ] 200
[2026-06-13 23:48:46,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:46,820.820 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:46,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:48:46,955.955 INFO    ] No camera update needed
[2026-06-13 23:48:46,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:46,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:46,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:46,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:49,005.005 INFO    ] ================================================
[2026-06-13 23:48:49,021.021 INFO    ] Launching Daemon at Sat Jun 13 23:48:49 IST 2026
[2026-06-13 23:48:49,032.032 INFO    ] ================================================
[2026-06-13 23:48:49,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:48:49
[2026-06-13 23:48:50,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:48:50,474.474 INFO    ] Initializing speech engine...
[2026-06-13 23:48:50,484.484 INFO    ] 2026-06-13 23:48:50
[2026-06-13 23:48:50,696.696 INFO    ] 2026-06-13 23:48:50
[2026-06-13 23:48:50,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:48:50,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:48:50,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:48:51,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:48:51,115.115 INFO    ] time= 13/06/2026 23:48:51
[2026-06-13 23:48:51,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:48:51,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:48:51,224.224 INFO    ] No existing commands found in stream
[2026-06-13 23:48:56,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:48:56,242.242 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-13 23:48:57,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:48:57,774.774 INFO    ] Checking for system updates...
[2026-06-13 23:48:57,796.796 INFO    ] 200
[2026-06-13 23:48:57,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:57,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:57,830.830 INFO    ] No update needed
[2026-06-13 23:48:57,832.832 INFO    ] Checking for camera pi updates...
[2026-06-13 23:48:57,852.852 INFO    ] 200
[2026-06-13 23:48:57,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:48:57,878.878 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:48:57,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:48:57,917.917 INFO    ] No camera update needed
[2026-06-13 23:48:57,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:48:57,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:48:57,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:48:57,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:48:59,967.967 INFO    ] ================================================
[2026-06-13 23:48:59,983.983 INFO    ] Launching Daemon at Sat Jun 13 23:48:59 IST 2026
[2026-06-13 23:48:59,994.994 INFO    ] ================================================
[2026-06-13 23:49:00,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:00
[2026-06-13 23:49:00,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:00,771.771 INFO    ] Initializing speech engine...
[2026-06-13 23:49:00,779.779 INFO    ] 2026-06-13 23:49:00
[2026-06-13 23:49:00,993.993 INFO    ] 2026-06-13 23:49:00
[2026-06-13 23:49:01,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:01,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:01,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:01,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:01,409.409 INFO    ] time= 13/06/2026 23:49:01
[2026-06-13 23:49:01,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:01,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:01,561.561 INFO    ] No existing commands found in stream
[2026-06-13 23:49:06,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:49:06,584.584 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-13 23:49:09,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:49:09,495.495 INFO    ] Checking for system updates...
[2026-06-13 23:49:09,516.516 INFO    ] 200
[2026-06-13 23:49:09,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:09,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:09,554.554 INFO    ] No update needed
[2026-06-13 23:49:09,555.555 INFO    ] Checking for camera pi updates...
[2026-06-13 23:49:09,574.574 INFO    ] 200
[2026-06-13 23:49:09,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:09,601.601 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:49:09,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:09,639.639 INFO    ] No camera update needed
[2026-06-13 23:49:09,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:49:09,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:49:09,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:49:09,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:49:11,689.689 INFO    ] ================================================
[2026-06-13 23:49:11,705.705 INFO    ] Launching Daemon at Sat Jun 13 23:49:11 IST 2026
[2026-06-13 23:49:11,716.716 INFO    ] ================================================
[2026-06-13 23:49:12,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:12
[2026-06-13 23:49:12,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:12,502.502 INFO    ] Initializing speech engine...
[2026-06-13 23:49:12,512.512 INFO    ] 2026-06-13 23:49:12
[2026-06-13 23:49:12,718.718 INFO    ] 2026-06-13 23:49:12
[2026-06-13 23:49:12,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:12,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:12,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:13,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:13,139.139 INFO    ] time= 13/06/2026 23:49:13
[2026-06-13 23:49:13,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:13,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:13,240.240 INFO    ] No existing commands found in stream
[2026-06-13 23:49:18,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:49:18,253.253 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 23:49:19,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:49:19,038.038 INFO    ] Checking for system updates...
[2026-06-13 23:49:19,059.059 INFO    ] 200
[2026-06-13 23:49:19,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:19,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:49:19,095.095 INFO    ] No update needed
[2026-06-13 23:49:19,096.096 INFO    ] Checking for camera pi updates...
[2026-06-13 23:49:19,116.116 INFO    ] 200
[2026-06-13 23:49:19,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:19,141.141 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:49:19,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:49:19,181.181 INFO    ] No camera update needed
[2026-06-13 23:49:19,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:49:19,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:49:19,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:49:19,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:49:21,230.230 INFO    ] ================================================
[2026-06-13 23:49:21,247.247 INFO    ] Launching Daemon at Sat Jun 13 23:49:21 IST 2026
[2026-06-13 23:49:21,259.259 INFO    ] ================================================
[2026-06-13 23:49:21,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:21
[2026-06-13 23:49:21,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:22,056.056 INFO    ] Initializing speech engine...
[2026-06-13 23:49:22,067.067 INFO    ] 2026-06-13 23:49:22
[2026-06-13 23:49:22,287.287 INFO    ] 2026-06-13 23:49:22
[2026-06-13 23:49:22,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:22,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:22,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:22,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:22,737.737 INFO    ] time= 13/06/2026 23:49:22
[2026-06-13 23:49:22,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:22,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:22,851.851 INFO    ] No existing commands found in stream
[2026-06-13 23:49:27,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:49:27,864.864 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-13 23:49:29,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:49:29,046.046 INFO    ] Checking for system updates...
[2026-06-13 23:49:29,067.067 INFO    ] 200
[2026-06-13 23:49:29,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:29,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:29,102.102 INFO    ] No update needed
[2026-06-13 23:49:29,103.103 INFO    ] Checking for camera pi updates...
[2026-06-13 23:49:29,124.124 INFO    ] 200
[2026-06-13 23:49:29,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:29,149.149 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:49:29,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:29,186.186 INFO    ] No camera update needed
[2026-06-13 23:49:29,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:49:29,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:49:29,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:49:29,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:49:31,236.236 INFO    ] ================================================
[2026-06-13 23:49:31,252.252 INFO    ] Launching Daemon at Sat Jun 13 23:49:31 IST 2026
[2026-06-13 23:49:31,263.263 INFO    ] ================================================
[2026-06-13 23:49:31,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:31
[2026-06-13 23:49:32,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:32,203.203 INFO    ] Initializing speech engine...
[2026-06-13 23:49:32,207.207 INFO    ] 2026-06-13 23:49:32
[2026-06-13 23:49:32,430.430 INFO    ] 2026-06-13 23:49:32
[2026-06-13 23:49:32,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:32,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:32,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:32,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:32,804.804 INFO    ] time= 13/06/2026 23:49:32
[2026-06-13 23:49:32,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:32,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:32,950.950 INFO    ] No existing commands found in stream
[2026-06-13 23:49:37,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:49:37,972.972 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-13 23:49:41,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:49:41,427.427 INFO    ] Checking for system updates...
[2026-06-13 23:49:41,464.464 INFO    ] 200
[2026-06-13 23:49:41,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:41,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:41,525.525 INFO    ] No update needed
[2026-06-13 23:49:41,528.528 INFO    ] Checking for camera pi updates...
[2026-06-13 23:49:41,561.561 INFO    ] 200
[2026-06-13 23:49:41,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:41,587.587 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:49:41,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:41,625.625 INFO    ] No camera update needed
[2026-06-13 23:49:41,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:49:41,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:49:41,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:49:41,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:49:43,673.673 INFO    ] ================================================
[2026-06-13 23:49:43,689.689 INFO    ] Launching Daemon at Sat Jun 13 23:49:43 IST 2026
[2026-06-13 23:49:43,700.700 INFO    ] ================================================
[2026-06-13 23:49:44,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:44
[2026-06-13 23:49:44,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:44,502.502 INFO    ] Initializing speech engine...
[2026-06-13 23:49:44,514.514 INFO    ] 2026-06-13 23:49:44
[2026-06-13 23:49:44,721.721 INFO    ] 2026-06-13 23:49:44
[2026-06-13 23:49:44,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:44,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:44,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:45,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:45,136.136 INFO    ] time= 13/06/2026 23:49:45
[2026-06-13 23:49:45,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:45,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:45,233.233 INFO    ] No existing commands found in stream
[2026-06-13 23:49:50,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:49:50,247.247 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-13 23:49:54,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:49:54,092.092 INFO    ] Checking for system updates...
[2026-06-13 23:49:54,113.113 INFO    ] 200
[2026-06-13 23:49:54,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:54,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:54,146.146 INFO    ] No update needed
[2026-06-13 23:49:54,147.147 INFO    ] Checking for camera pi updates...
[2026-06-13 23:49:54,167.167 INFO    ] 200
[2026-06-13 23:49:54,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:49:54,192.192 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:49:54,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:49:54,230.230 INFO    ] No camera update needed
[2026-06-13 23:49:54,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:49:54,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:49:54,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:49:54,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:49:56,277.277 INFO    ] ================================================
[2026-06-13 23:49:56,293.293 INFO    ] Launching Daemon at Sat Jun 13 23:49:56 IST 2026
[2026-06-13 23:49:56,305.305 INFO    ] ================================================
[2026-06-13 23:49:56,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:49:56
[2026-06-13 23:49:56,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:49:57,098.098 INFO    ] Initializing speech engine...
[2026-06-13 23:49:57,102.102 INFO    ] 2026-06-13 23:49:57
[2026-06-13 23:49:57,322.322 INFO    ] 2026-06-13 23:49:57
[2026-06-13 23:49:57,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:49:57,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:49:57,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:49:57,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:49:57,723.723 INFO    ] time= 13/06/2026 23:49:57
[2026-06-13 23:49:57,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:49:57,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:49:57,845.845 INFO    ] No existing commands found in stream
[2026-06-13 23:50:02,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:50:02,851.851 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-13 23:50:08,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:50:08,103.103 INFO    ] Checking for system updates...
[2026-06-13 23:50:08,140.140 INFO    ] 200
[2026-06-13 23:50:08,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:08,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:08,198.198 INFO    ] No update needed
[2026-06-13 23:50:08,201.201 INFO    ] Checking for camera pi updates...
[2026-06-13 23:50:08,237.237 INFO    ] 200
[2026-06-13 23:50:08,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:08,274.274 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:50:08,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:08,310.310 INFO    ] No camera update needed
[2026-06-13 23:50:08,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:50:08,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:50:08,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:50:08,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:50:10,358.358 INFO    ] ================================================
[2026-06-13 23:50:10,375.375 INFO    ] Launching Daemon at Sat Jun 13 23:50:10 IST 2026
[2026-06-13 23:50:10,387.387 INFO    ] ================================================
[2026-06-13 23:50:10,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:50:10
[2026-06-13 23:50:11,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:50:11,195.195 INFO    ] Initializing speech engine...
[2026-06-13 23:50:11,200.200 INFO    ] 2026-06-13 23:50:11
[2026-06-13 23:50:11,406.406 INFO    ] 2026-06-13 23:50:11
[2026-06-13 23:50:11,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:50:11,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:50:11,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:50:11,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:50:11,818.818 INFO    ] time= 13/06/2026 23:50:11
[2026-06-13 23:50:11,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:50:11,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:50:11,931.931 INFO    ] No existing commands found in stream
[2026-06-13 23:50:16,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:50:16,944.944 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-13 23:50:18,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:50:18,352.352 INFO    ] Checking for system updates...
[2026-06-13 23:50:18,372.372 INFO    ] 200
[2026-06-13 23:50:18,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:18,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:18,406.406 INFO    ] No update needed
[2026-06-13 23:50:18,407.407 INFO    ] Checking for camera pi updates...
[2026-06-13 23:50:18,433.433 INFO    ] 200
[2026-06-13 23:50:18,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:18,458.458 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:50:18,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:18,496.496 INFO    ] No camera update needed
[2026-06-13 23:50:18,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:50:18,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:50:18,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:50:18,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:50:20,543.543 INFO    ] ================================================
[2026-06-13 23:50:20,558.558 INFO    ] Launching Daemon at Sat Jun 13 23:50:20 IST 2026
[2026-06-13 23:50:20,569.569 INFO    ] ================================================
[2026-06-13 23:50:20,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:50:20
[2026-06-13 23:50:21,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:50:21,371.371 INFO    ] Initializing speech engine...
[2026-06-13 23:50:21,375.375 INFO    ] 2026-06-13 23:50:21
[2026-06-13 23:50:21,580.580 INFO    ] 2026-06-13 23:50:21
[2026-06-13 23:50:21,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:50:21,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:50:21,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:50:21,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:50:21,991.991 INFO    ] time= 13/06/2026 23:50:21
[2026-06-13 23:50:22,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:50:22,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:50:22,096.096 INFO    ] No existing commands found in stream
[2026-06-13 23:50:27,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:50:27,108.108 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-13 23:50:30,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:50:30,582.582 INFO    ] Checking for system updates...
[2026-06-13 23:50:30,620.620 INFO    ] 200
[2026-06-13 23:50:30,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:30,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:30,692.692 INFO    ] No update needed
[2026-06-13 23:50:30,694.694 INFO    ] Checking for camera pi updates...
[2026-06-13 23:50:30,729.729 INFO    ] 200
[2026-06-13 23:50:30,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:30,772.772 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:50:30,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:50:30,818.818 INFO    ] No camera update needed
[2026-06-13 23:50:30,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:50:30,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:50:30,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:50:30,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:50:32,876.876 INFO    ] ================================================
[2026-06-13 23:50:32,891.891 INFO    ] Launching Daemon at Sat Jun 13 23:50:32 IST 2026
[2026-06-13 23:50:32,902.902 INFO    ] ================================================
[2026-06-13 23:50:33,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:50:33
[2026-06-13 23:50:33,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:50:33,760.760 INFO    ] Initializing speech engine...
[2026-06-13 23:50:33,765.765 INFO    ] 2026-06-13 23:50:33
[2026-06-13 23:50:33,973.973 INFO    ] 2026-06-13 23:50:33
[2026-06-13 23:50:34,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:50:34,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:50:34,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:50:34,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:50:34,396.396 INFO    ] time= 13/06/2026 23:50:34
[2026-06-13 23:50:34,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:50:34,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:50:34,612.612 INFO    ] No existing commands found in stream
[2026-06-13 23:50:39,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:50:39,646.646 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-13 23:50:42,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:50:42,351.351 INFO    ] Checking for system updates...
[2026-06-13 23:50:42,372.372 INFO    ] 200
[2026-06-13 23:50:42,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:42,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:50:42,408.408 INFO    ] No update needed
[2026-06-13 23:50:42,410.410 INFO    ] Checking for camera pi updates...
[2026-06-13 23:50:42,430.430 INFO    ] 200
[2026-06-13 23:50:42,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:42,455.455 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:50:42,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:50:42,492.492 INFO    ] No camera update needed
[2026-06-13 23:50:42,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:50:42,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:50:42,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:50:42,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:50:44,539.539 INFO    ] ================================================
[2026-06-13 23:50:44,554.554 INFO    ] Launching Daemon at Sat Jun 13 23:50:44 IST 2026
[2026-06-13 23:50:44,565.565 INFO    ] ================================================
[2026-06-13 23:50:44,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:50:44
[2026-06-13 23:50:45,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:50:45,404.404 INFO    ] Initializing speech engine...
[2026-06-13 23:50:45,410.410 INFO    ] 2026-06-13 23:50:45
[2026-06-13 23:50:45,620.620 INFO    ] 2026-06-13 23:50:45
[2026-06-13 23:50:45,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:50:45,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:50:45,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:50:45,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:50:46,045.045 INFO    ] time= 13/06/2026 23:50:45
[2026-06-13 23:50:46,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:50:46,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:50:46,143.143 INFO    ] No existing commands found in stream
[2026-06-13 23:50:51,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:50:51,156.156 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-13 23:50:54,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:50:54,146.146 INFO    ] Checking for system updates...
[2026-06-13 23:50:54,167.167 INFO    ] 200
[2026-06-13 23:50:54,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:54,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:50:54,200.200 INFO    ] No update needed
[2026-06-13 23:50:54,202.202 INFO    ] Checking for camera pi updates...
[2026-06-13 23:50:54,222.222 INFO    ] 200
[2026-06-13 23:50:54,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:50:54,249.249 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:50:54,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:50:54,391.391 INFO    ] No camera update needed
[2026-06-13 23:50:54,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:50:54,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:50:54,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:50:54,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:50:56,439.439 INFO    ] ================================================
[2026-06-13 23:50:56,454.454 INFO    ] Launching Daemon at Sat Jun 13 23:50:56 IST 2026
[2026-06-13 23:50:56,465.465 INFO    ] ================================================
[2026-06-13 23:50:56,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:50:56
[2026-06-13 23:50:57,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:50:57,752.752 INFO    ] Initializing speech engine...
[2026-06-13 23:50:57,758.758 INFO    ] 2026-06-13 23:50:57
[2026-06-13 23:50:58,033.033 INFO    ] 2026-06-13 23:50:58
[2026-06-13 23:50:58,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:50:58,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:50:58,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:50:58,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:50:58,511.511 INFO    ] time= 13/06/2026 23:50:58
[2026-06-13 23:50:58,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:50:58,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:50:58,741.741 INFO    ] No existing commands found in stream
[2026-06-13 23:51:03,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:03,772.772 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-13 23:51:06,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:51:06,958.958 INFO    ] Checking for system updates...
[2026-06-13 23:51:06,979.979 INFO    ] 200
[2026-06-13 23:51:06,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:07,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:07,016.016 INFO    ] No update needed
[2026-06-13 23:51:07,018.018 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:07,037.037 INFO    ] 200
[2026-06-13 23:51:07,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:07,062.062 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:07,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:07,108.108 INFO    ] No camera update needed
[2026-06-13 23:51:07,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:07,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:07,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:07,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:51:09,154.154 INFO    ] ================================================
[2026-06-13 23:51:09,170.170 INFO    ] Launching Daemon at Sat Jun 13 23:51:09 IST 2026
[2026-06-13 23:51:09,180.180 INFO    ] ================================================
[2026-06-13 23:51:09,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:51:09
[2026-06-13 23:51:09,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:51:10,003.003 INFO    ] Initializing speech engine...
[2026-06-13 23:51:10,009.009 INFO    ] 2026-06-13 23:51:10
[2026-06-13 23:51:10,215.215 INFO    ] 2026-06-13 23:51:10
[2026-06-13 23:51:10,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:51:10,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:51:10,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:51:10,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:51:10,608.608 INFO    ] time= 13/06/2026 23:51:10
[2026-06-13 23:51:10,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:51:10,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:51:10,728.728 INFO    ] No existing commands found in stream
[2026-06-13 23:51:15,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:15,740.740 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-13 23:51:16,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:51:16,581.581 INFO    ] Checking for system updates...
[2026-06-13 23:51:16,602.602 INFO    ] 200
[2026-06-13 23:51:16,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:16,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:16,637.637 INFO    ] No update needed
[2026-06-13 23:51:16,638.638 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:16,657.657 INFO    ] 200
[2026-06-13 23:51:16,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:16,684.684 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:16,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:16,729.729 INFO    ] No camera update needed
[2026-06-13 23:51:16,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:16,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:16,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:16,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:51:18,777.777 INFO    ] ================================================
[2026-06-13 23:51:18,792.792 INFO    ] Launching Daemon at Sat Jun 13 23:51:18 IST 2026
[2026-06-13 23:51:18,802.802 INFO    ] ================================================
[2026-06-13 23:51:19,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:51:19
[2026-06-13 23:51:19,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:51:20,105.105 INFO    ] Initializing speech engine...
[2026-06-13 23:51:20,132.132 INFO    ] 2026-06-13 23:51:20
[2026-06-13 23:51:20,403.403 INFO    ] 2026-06-13 23:51:20
[2026-06-13 23:51:20,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:51:20,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:51:20,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:51:20,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:51:20,772.772 INFO    ] time= 13/06/2026 23:51:20
[2026-06-13 23:51:20,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:51:20,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:51:20,894.894 INFO    ] No existing commands found in stream
[2026-06-13 23:51:25,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:25,922.922 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-13 23:51:26,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:51:26,669.669 INFO    ] Checking for system updates...
[2026-06-13 23:51:26,690.690 INFO    ] 200
[2026-06-13 23:51:26,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:26,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:51:26,723.723 INFO    ] No update needed
[2026-06-13 23:51:26,724.724 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:26,743.743 INFO    ] 200
[2026-06-13 23:51:26,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:26,770.770 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:26,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:26,812.812 INFO    ] No camera update needed
[2026-06-13 23:51:26,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:26,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:26,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:26,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:51:28,859.859 INFO    ] ================================================
[2026-06-13 23:51:28,874.874 INFO    ] Launching Daemon at Sat Jun 13 23:51:28 IST 2026
[2026-06-13 23:51:28,885.885 INFO    ] ================================================
[2026-06-13 23:51:29,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:51:29
[2026-06-13 23:51:29,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:51:29,671.671 INFO    ] Initializing speech engine...
[2026-06-13 23:51:29,676.676 INFO    ] 2026-06-13 23:51:29
[2026-06-13 23:51:29,882.882 INFO    ] 2026-06-13 23:51:29
[2026-06-13 23:51:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:51:30,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:51:30,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:51:30,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:51:30,289.289 INFO    ] time= 13/06/2026 23:51:30
[2026-06-13 23:51:30,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:51:30,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:51:30,444.444 INFO    ] No existing commands found in stream
[2026-06-13 23:51:35,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:35,469.469 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 23:51:38,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:51:38,967.967 INFO    ] Checking for system updates...
[2026-06-13 23:51:38,989.989 INFO    ] 200
[2026-06-13 23:51:38,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:39,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:39,023.023 INFO    ] No update needed
[2026-06-13 23:51:39,024.024 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:39,044.044 INFO    ] 200
[2026-06-13 23:51:39,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:39,069.069 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:39,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:39,105.105 INFO    ] No camera update needed
[2026-06-13 23:51:39,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:39,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:39,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:39,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:51:41,151.151 INFO    ] ================================================
[2026-06-13 23:51:41,166.166 INFO    ] Launching Daemon at Sat Jun 13 23:51:41 IST 2026
[2026-06-13 23:51:41,177.177 INFO    ] ================================================
[2026-06-13 23:51:41,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:51:41
[2026-06-13 23:51:42,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:51:42,335.335 INFO    ] Initializing speech engine...
[2026-06-13 23:51:42,344.344 INFO    ] 2026-06-13 23:51:42
[2026-06-13 23:51:42,598.598 INFO    ] 2026-06-13 23:51:42
[2026-06-13 23:51:42,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:51:42,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:51:42,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:51:42,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:51:42,960.960 INFO    ] time= 13/06/2026 23:51:42
[2026-06-13 23:51:42,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:51:43,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:51:43,080.080 INFO    ] No existing commands found in stream
[2026-06-13 23:51:48,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:48,096.096 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-13 23:51:48,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:51:48,882.882 INFO    ] Checking for system updates...
[2026-06-13 23:51:48,902.902 INFO    ] 200
[2026-06-13 23:51:48,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:48,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:51:48,935.935 INFO    ] No update needed
[2026-06-13 23:51:48,936.936 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:48,957.957 INFO    ] 200
[2026-06-13 23:51:48,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:48,982.982 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:49,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:51:49,020.020 INFO    ] No camera update needed
[2026-06-13 23:51:49,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:49,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:49,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:49,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:51:51,066.066 INFO    ] ================================================
[2026-06-13 23:51:51,082.082 INFO    ] Launching Daemon at Sat Jun 13 23:51:51 IST 2026
[2026-06-13 23:51:51,092.092 INFO    ] ================================================
[2026-06-13 23:51:51,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:51:51
[2026-06-13 23:51:51,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:51:51,916.916 INFO    ] Initializing speech engine...
[2026-06-13 23:51:51,922.922 INFO    ] 2026-06-13 23:51:51
[2026-06-13 23:51:52,147.147 INFO    ] 2026-06-13 23:51:52
[2026-06-13 23:51:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:51:52,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:51:52,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:51:52,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:51:52,566.566 INFO    ] time= 13/06/2026 23:51:52
[2026-06-13 23:51:52,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:51:52,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:51:52,662.662 INFO    ] No existing commands found in stream
[2026-06-13 23:51:57,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:51:57,679.679 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-13 23:51:59,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:51:59,377.377 INFO    ] Checking for system updates...
[2026-06-13 23:51:59,398.398 INFO    ] 200
[2026-06-13 23:51:59,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:59,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:59,432.432 INFO    ] No update needed
[2026-06-13 23:51:59,433.433 INFO    ] Checking for camera pi updates...
[2026-06-13 23:51:59,456.456 INFO    ] 200
[2026-06-13 23:51:59,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:51:59,481.481 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:51:59,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:51:59,518.518 INFO    ] No camera update needed
[2026-06-13 23:51:59,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:51:59,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:51:59,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:51:59,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:01,562.562 INFO    ] ================================================
[2026-06-13 23:52:01,575.575 INFO    ] Launching Daemon at Sat Jun 13 23:52:01 IST 2026
[2026-06-13 23:52:01,585.585 INFO    ] ================================================
[2026-06-13 23:52:01,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:01
[2026-06-13 23:52:02,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:02,485.485 INFO    ] Initializing speech engine...
[2026-06-13 23:52:02,488.488 INFO    ] 2026-06-13 23:52:02
[2026-06-13 23:52:02,695.695 INFO    ] 2026-06-13 23:52:02
[2026-06-13 23:52:02,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:02,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:02,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:03,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:03,101.101 INFO    ] time= 13/06/2026 23:52:03
[2026-06-13 23:52:03,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:03,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:52:03,218.218 INFO    ] No existing commands found in stream
[2026-06-13 23:52:08,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:52:08,232.232 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-13 23:52:11,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:52:11,228.228 INFO    ] Checking for system updates...
[2026-06-13 23:52:11,249.249 INFO    ] 200
[2026-06-13 23:52:11,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:11,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:11,282.282 INFO    ] No update needed
[2026-06-13 23:52:11,284.284 INFO    ] Checking for camera pi updates...
[2026-06-13 23:52:11,304.304 INFO    ] 200
[2026-06-13 23:52:11,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:11,329.329 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:52:11,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:11,370.370 INFO    ] No camera update needed
[2026-06-13 23:52:11,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:52:11,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:52:11,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:52:11,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:13,419.419 INFO    ] ================================================
[2026-06-13 23:52:13,434.434 INFO    ] Launching Daemon at Sat Jun 13 23:52:13 IST 2026
[2026-06-13 23:52:13,445.445 INFO    ] ================================================
[2026-06-13 23:52:13,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:13
[2026-06-13 23:52:14,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:14,231.231 INFO    ] Initializing speech engine...
[2026-06-13 23:52:14,241.241 INFO    ] 2026-06-13 23:52:14
[2026-06-13 23:52:14,445.445 INFO    ] 2026-06-13 23:52:14
[2026-06-13 23:52:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:14,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:14,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:14,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:14,850.850 INFO    ] time= 13/06/2026 23:52:14
[2026-06-13 23:52:14,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:14,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:52:14,961.961 INFO    ] No existing commands found in stream
[2026-06-13 23:52:19,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:52:19,973.973 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-13 23:52:22,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:52:22,678.678 INFO    ] Checking for system updates...
[2026-06-13 23:52:22,699.699 INFO    ] 200
[2026-06-13 23:52:22,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:22,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:22,734.734 INFO    ] No update needed
[2026-06-13 23:52:22,735.735 INFO    ] Checking for camera pi updates...
[2026-06-13 23:52:22,754.754 INFO    ] 200
[2026-06-13 23:52:22,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:22,779.779 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:52:22,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:22,801.801 INFO    ] No camera update needed
[2026-06-13 23:52:22,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:52:22,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:52:22,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:52:22,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:24,849.849 INFO    ] ================================================
[2026-06-13 23:52:24,864.864 INFO    ] Launching Daemon at Sat Jun 13 23:52:24 IST 2026
[2026-06-13 23:52:24,875.875 INFO    ] ================================================
[2026-06-13 23:52:25,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:25
[2026-06-13 23:52:25,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:25,699.699 INFO    ] Initializing speech engine...
[2026-06-13 23:52:25,709.709 INFO    ] 2026-06-13 23:52:25
[2026-06-13 23:52:25,912.912 INFO    ] 2026-06-13 23:52:25
[2026-06-13 23:52:25,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:26,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:26,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:26,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:26,325.325 INFO    ] time= 13/06/2026 23:52:26
[2026-06-13 23:52:26,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:26,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:52:26,448.448 INFO    ] No existing commands found in stream
[2026-06-13 23:52:31,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:52:31,464.464 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-13 23:52:32,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:52:32,606.606 INFO    ] Checking for system updates...
[2026-06-13 23:52:32,628.628 INFO    ] 200
[2026-06-13 23:52:32,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:32,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:52:32,662.662 INFO    ] No update needed
[2026-06-13 23:52:32,664.664 INFO    ] Checking for camera pi updates...
[2026-06-13 23:52:32,684.684 INFO    ] 200
[2026-06-13 23:52:32,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:32,721.721 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:52:32,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:52:32,749.749 INFO    ] No camera update needed
[2026-06-13 23:52:32,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:52:32,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:52:32,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:52:32,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:34,796.796 INFO    ] ================================================
[2026-06-13 23:52:34,812.812 INFO    ] Launching Daemon at Sat Jun 13 23:52:34 IST 2026
[2026-06-13 23:52:34,823.823 INFO    ] ================================================
[2026-06-13 23:52:35,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:35
[2026-06-13 23:52:35,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:35,710.710 INFO    ] Initializing speech engine...
[2026-06-13 23:52:35,717.717 INFO    ] 2026-06-13 23:52:35
[2026-06-13 23:52:35,920.920 INFO    ] 2026-06-13 23:52:35
[2026-06-13 23:52:35,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:36,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:36,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:36,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:36,346.346 INFO    ] time= 13/06/2026 23:52:36
[2026-06-13 23:52:36,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:36,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:52:36,444.444 INFO    ] No existing commands found in stream
[2026-06-13 23:52:41,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:52:41,462.462 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-13 23:52:44,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:52:44,511.511 INFO    ] Checking for system updates...
[2026-06-13 23:52:44,533.533 INFO    ] 200
[2026-06-13 23:52:44,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:44,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:52:44,569.569 INFO    ] No update needed
[2026-06-13 23:52:44,570.570 INFO    ] Checking for camera pi updates...
[2026-06-13 23:52:44,590.590 INFO    ] 200
[2026-06-13 23:52:44,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:44,615.615 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:52:44,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:52:44,656.656 INFO    ] No camera update needed
[2026-06-13 23:52:44,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:52:44,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:52:44,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:52:44,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:46,700.700 INFO    ] ================================================
[2026-06-13 23:52:46,715.715 INFO    ] Launching Daemon at Sat Jun 13 23:52:46 IST 2026
[2026-06-13 23:52:46,726.726 INFO    ] ================================================
[2026-06-13 23:52:47,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:47
[2026-06-13 23:52:47,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:47,581.581 INFO    ] Initializing speech engine...
[2026-06-13 23:52:47,587.587 INFO    ] 2026-06-13 23:52:47
[2026-06-13 23:52:47,798.798 INFO    ] 2026-06-13 23:52:47
[2026-06-13 23:52:47,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:48,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:48,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:48,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:48,211.211 INFO    ] time= 13/06/2026 23:52:48
[2026-06-13 23:52:48,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:48,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:52:48,322.322 INFO    ] No existing commands found in stream
[2026-06-13 23:52:53,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:52:53,336.336 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-13 23:52:56,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:52:56,280.280 INFO    ] Checking for system updates...
[2026-06-13 23:52:56,302.302 INFO    ] 200
[2026-06-13 23:52:56,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:56,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:56,335.335 INFO    ] No update needed
[2026-06-13 23:52:56,336.336 INFO    ] Checking for camera pi updates...
[2026-06-13 23:52:56,357.357 INFO    ] 200
[2026-06-13 23:52:56,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:52:56,382.382 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:52:56,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:52:56,419.419 INFO    ] No camera update needed
[2026-06-13 23:52:56,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:52:56,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:52:56,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:52:56,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:52:58,465.465 INFO    ] ================================================
[2026-06-13 23:52:58,480.480 INFO    ] Launching Daemon at Sat Jun 13 23:52:58 IST 2026
[2026-06-13 23:52:58,491.491 INFO    ] ================================================
[2026-06-13 23:52:58,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:52:58
[2026-06-13 23:52:59,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:52:59,281.281 INFO    ] Initializing speech engine...
[2026-06-13 23:52:59,290.290 INFO    ] 2026-06-13 23:52:59
[2026-06-13 23:52:59,495.495 INFO    ] 2026-06-13 23:52:59
[2026-06-13 23:52:59,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:52:59,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:52:59,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:52:59,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:52:59,912.912 INFO    ] time= 13/06/2026 23:52:59
[2026-06-13 23:52:59,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:52:59,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:00,009.009 INFO    ] No existing commands found in stream
[2026-06-13 23:53:05,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:05,021.021 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-13 23:53:08,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:53:08,411.411 INFO    ] Checking for system updates...
[2026-06-13 23:53:08,432.432 INFO    ] 200
[2026-06-13 23:53:08,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:08,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:53:08,465.465 INFO    ] No update needed
[2026-06-13 23:53:08,466.466 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:08,486.486 INFO    ] 200
[2026-06-13 23:53:08,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:08,510.510 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:08,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:53:08,548.548 INFO    ] No camera update needed
[2026-06-13 23:53:08,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:08,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:08,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:08,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:53:10,596.596 INFO    ] ================================================
[2026-06-13 23:53:10,611.611 INFO    ] Launching Daemon at Sat Jun 13 23:53:10 IST 2026
[2026-06-13 23:53:10,622.622 INFO    ] ================================================
[2026-06-13 23:53:10,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:53:10
[2026-06-13 23:53:11,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:53:11,693.693 INFO    ] Initializing speech engine...
[2026-06-13 23:53:11,706.706 INFO    ] 2026-06-13 23:53:11
[2026-06-13 23:53:12,014.014 INFO    ] 2026-06-13 23:53:11
[2026-06-13 23:53:12,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:53:12,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:53:12,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:53:12,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:53:12,430.430 INFO    ] time= 13/06/2026 23:53:12
[2026-06-13 23:53:12,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:53:12,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:12,665.665 INFO    ] No existing commands found in stream
[2026-06-13 23:53:17,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:17,684.684 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-13 23:53:18,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:53:18,561.561 INFO    ] Checking for system updates...
[2026-06-13 23:53:18,582.582 INFO    ] 200
[2026-06-13 23:53:18,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:18,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:18,614.614 INFO    ] No update needed
[2026-06-13 23:53:18,616.616 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:18,635.635 INFO    ] 200
[2026-06-13 23:53:18,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:18,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:18,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:18,704.704 INFO    ] No camera update needed
[2026-06-13 23:53:18,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:18,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:18,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:18,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:53:20,752.752 INFO    ] ================================================
[2026-06-13 23:53:20,767.767 INFO    ] Launching Daemon at Sat Jun 13 23:53:20 IST 2026
[2026-06-13 23:53:20,779.779 INFO    ] ================================================
[2026-06-13 23:53:21,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:53:21
[2026-06-13 23:53:21,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:53:21,578.578 INFO    ] Initializing speech engine...
[2026-06-13 23:53:21,584.584 INFO    ] 2026-06-13 23:53:21
[2026-06-13 23:53:21,787.787 INFO    ] 2026-06-13 23:53:21
[2026-06-13 23:53:21,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:53:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:53:22,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:53:22,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:53:22,192.192 INFO    ] time= 13/06/2026 23:53:22
[2026-06-13 23:53:22,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:53:22,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:22,301.301 INFO    ] No existing commands found in stream
[2026-06-13 23:53:27,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:27,313.313 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-13 23:53:29,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:53:29,173.173 INFO    ] Checking for system updates...
[2026-06-13 23:53:29,209.209 INFO    ] 200
[2026-06-13 23:53:29,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:29,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:29,273.273 INFO    ] No update needed
[2026-06-13 23:53:29,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:29,311.311 INFO    ] 200
[2026-06-13 23:53:29,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:29,354.354 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:29,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:53:29,397.397 INFO    ] No camera update needed
[2026-06-13 23:53:29,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:29,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:29,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:29,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:53:31,454.454 INFO    ] ================================================
[2026-06-13 23:53:31,470.470 INFO    ] Launching Daemon at Sat Jun 13 23:53:31 IST 2026
[2026-06-13 23:53:31,481.481 INFO    ] ================================================
[2026-06-13 23:53:31,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:53:31
[2026-06-13 23:53:32,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:53:32,432.432 INFO    ] Initializing speech engine...
[2026-06-13 23:53:32,439.439 INFO    ] 2026-06-13 23:53:32
[2026-06-13 23:53:32,648.648 INFO    ] 2026-06-13 23:53:32
[2026-06-13 23:53:32,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:53:32,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:53:32,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:53:33,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:53:33,071.071 INFO    ] time= 13/06/2026 23:53:33
[2026-06-13 23:53:33,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:53:33,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:33,174.174 INFO    ] No existing commands found in stream
[2026-06-13 23:53:38,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:38,187.187 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-13 23:53:38,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:53:38,944.944 INFO    ] Checking for system updates...
[2026-06-13 23:53:38,965.965 INFO    ] 200
[2026-06-13 23:53:38,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:38,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:38,999.999 INFO    ] No update needed
[2026-06-13 23:53:39,000.000 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:39,020.020 INFO    ] 200
[2026-06-13 23:53:39,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:39,045.045 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:39,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:39,087.087 INFO    ] No camera update needed
[2026-06-13 23:53:39,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:39,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:39,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:39,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:53:41,136.136 INFO    ] ================================================
[2026-06-13 23:53:41,151.151 INFO    ] Launching Daemon at Sat Jun 13 23:53:41 IST 2026
[2026-06-13 23:53:41,163.163 INFO    ] ================================================
[2026-06-13 23:53:41,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:53:41
[2026-06-13 23:53:41,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:53:41,992.992 INFO    ] Initializing speech engine...
[2026-06-13 23:53:41,998.998 INFO    ] 2026-06-13 23:53:41
[2026-06-13 23:53:42,206.206 INFO    ] 2026-06-13 23:53:42
[2026-06-13 23:53:42,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:53:42,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:53:42,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:53:42,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:53:42,615.615 INFO    ] time= 13/06/2026 23:53:42
[2026-06-13 23:53:42,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:53:42,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:42,732.732 INFO    ] No existing commands found in stream
[2026-06-13 23:53:47,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:47,745.745 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-13 23:53:48,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:53:48,221.221 INFO    ] Checking for system updates...
[2026-06-13 23:53:48,242.242 INFO    ] 200
[2026-06-13 23:53:48,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:48,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:48,275.275 INFO    ] No update needed
[2026-06-13 23:53:48,276.276 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:48,296.296 INFO    ] 200
[2026-06-13 23:53:48,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:48,323.323 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:48,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:53:48,365.365 INFO    ] No camera update needed
[2026-06-13 23:53:48,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:48,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:48,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:48,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:53:50,413.413 INFO    ] ================================================
[2026-06-13 23:53:50,429.429 INFO    ] Launching Daemon at Sat Jun 13 23:53:50 IST 2026
[2026-06-13 23:53:50,441.441 INFO    ] ================================================
[2026-06-13 23:53:50,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:53:50
[2026-06-13 23:53:51,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:53:51,849.849 INFO    ] Initializing speech engine...
[2026-06-13 23:53:51,855.855 INFO    ] 2026-06-13 23:53:51
[2026-06-13 23:53:52,155.155 INFO    ] 2026-06-13 23:53:52
[2026-06-13 23:53:52,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:53:52,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:53:52,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:53:52,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:53:52,516.516 INFO    ] time= 13/06/2026 23:53:52
[2026-06-13 23:53:52,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:53:52,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:53:52,600.600 INFO    ] No existing commands found in stream
[2026-06-13 23:53:57,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:53:57,614.614 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-13 23:53:58,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:53:58,596.596 INFO    ] Checking for system updates...
[2026-06-13 23:53:58,643.643 INFO    ] 200
[2026-06-13 23:53:58,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:58,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:53:58,706.706 INFO    ] No update needed
[2026-06-13 23:53:58,709.709 INFO    ] Checking for camera pi updates...
[2026-06-13 23:53:58,750.750 INFO    ] 200
[2026-06-13 23:53:58,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:53:58,796.796 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:53:58,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:53:58,851.851 INFO    ] No camera update needed
[2026-06-13 23:53:58,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:53:58,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:53:58,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:53:58,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:54:00,895.895 INFO    ] ================================================
[2026-06-13 23:54:00,904.904 INFO    ] Launching Daemon at Sat Jun 13 23:54:00 IST 2026
[2026-06-13 23:54:00,911.911 INFO    ] ================================================
[2026-06-13 23:54:01,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:54:01
[2026-06-13 23:54:01,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:54:01,828.828 INFO    ] Initializing speech engine...
[2026-06-13 23:54:01,832.832 INFO    ] 2026-06-13 23:54:01
[2026-06-13 23:54:02,101.101 INFO    ] 2026-06-13 23:54:02
[2026-06-13 23:54:02,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:54:02,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:54:02,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:54:02,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:54:02,409.409 INFO    ] time= 13/06/2026 23:54:02
[2026-06-13 23:54:02,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:54:02,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:54:02,491.491 INFO    ] No existing commands found in stream
[2026-06-13 23:54:07,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:54:07,532.532 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-13 23:54:09,215.215 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-13 23:54:09,239.239 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-13 23:54:09,248.248 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202203 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-13 23:54:09,256.256 INFO    ] None
[2026-06-13 23:54:09,259.259 INFO    ] Checking for system updates...
[2026-06-13 23:54:09,302.302 INFO    ] 200
[2026-06-13 23:54:09,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:09,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:54:09,352.352 INFO    ] No update needed
[2026-06-13 23:54:09,353.353 INFO    ] Checking for camera pi updates...
[2026-06-13 23:54:09,374.374 INFO    ] 200
[2026-06-13 23:54:09,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:09,399.399 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:54:11,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:54:11,617.617 INFO    ] No camera update needed
[2026-06-13 23:54:11,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:54:11,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:54:11,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:54:11,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:54:13,687.687 INFO    ] ================================================
[2026-06-13 23:54:13,702.702 INFO    ] Launching Daemon at Sat Jun 13 23:54:13 IST 2026
[2026-06-13 23:54:13,714.714 INFO    ] ================================================
[2026-06-13 23:54:14,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:54:14
[2026-06-13 23:54:14,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:54:14,603.603 INFO    ] Initializing speech engine...
[2026-06-13 23:54:14,608.608 INFO    ] 2026-06-13 23:54:14
[2026-06-13 23:54:14,816.816 INFO    ] 2026-06-13 23:54:14
[2026-06-13 23:54:14,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:54:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:54:15,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:54:15,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:54:15,235.235 INFO    ] time= 13/06/2026 23:54:15
[2026-06-13 23:54:15,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:54:15,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:54:15,332.332 INFO    ] No existing commands found in stream
[2026-06-13 23:54:20,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:54:20,351.351 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-13 23:54:23,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:54:23,869.869 INFO    ] Checking for system updates...
[2026-06-13 23:54:23,890.890 INFO    ] 200
[2026-06-13 23:54:23,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:23,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:54:23,927.927 INFO    ] No update needed
[2026-06-13 23:54:23,929.929 INFO    ] Checking for camera pi updates...
[2026-06-13 23:54:23,950.950 INFO    ] 200
[2026-06-13 23:54:23,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:23,979.979 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:54:24,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:54:24,020.020 INFO    ] No camera update needed
[2026-06-13 23:54:24,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:54:24,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:54:24,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:54:24,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:54:26,070.070 INFO    ] ================================================
[2026-06-13 23:54:26,086.086 INFO    ] Launching Daemon at Sat Jun 13 23:54:26 IST 2026
[2026-06-13 23:54:26,097.097 INFO    ] ================================================
[2026-06-13 23:54:26,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:54:26
[2026-06-13 23:54:26,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:54:26,898.898 INFO    ] Initializing speech engine...
[2026-06-13 23:54:26,903.903 INFO    ] 2026-06-13 23:54:26
[2026-06-13 23:54:27,094.094 INFO    ] 2026-06-13 23:54:27
[2026-06-13 23:54:27,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:54:27,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:54:27,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:54:27,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:54:27,412.412 INFO    ] time= 13/06/2026 23:54:27
[2026-06-13 23:54:27,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:54:27,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:54:27,591.591 INFO    ] No existing commands found in stream
[2026-06-13 23:54:32,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:54:32,623.623 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-13 23:54:36,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:54:36,709.709 INFO    ] Checking for system updates...
[2026-06-13 23:54:36,731.731 INFO    ] 200
[2026-06-13 23:54:36,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:36,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:54:36,764.764 INFO    ] No update needed
[2026-06-13 23:54:36,765.765 INFO    ] Checking for camera pi updates...
[2026-06-13 23:54:36,784.784 INFO    ] 200
[2026-06-13 23:54:36,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:36,809.809 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:54:36,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:54:36,845.845 INFO    ] No camera update needed
[2026-06-13 23:54:36,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:54:36,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:54:36,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:54:36,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:54:38,949.949 INFO    ] ================================================
[2026-06-13 23:54:38,965.965 INFO    ] Launching Daemon at Sat Jun 13 23:54:38 IST 2026
[2026-06-13 23:54:38,976.976 INFO    ] ================================================
[2026-06-13 23:54:39,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:54:39
[2026-06-13 23:54:39,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:54:39,772.772 INFO    ] Initializing speech engine...
[2026-06-13 23:54:39,775.775 INFO    ] 2026-06-13 23:54:39
[2026-06-13 23:54:39,974.974 INFO    ] 2026-06-13 23:54:39
[2026-06-13 23:54:40,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:54:40,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:54:40,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:54:40,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:54:40,261.261 INFO    ] time= 13/06/2026 23:54:40
[2026-06-13 23:54:40,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:54:40,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:54:40,375.375 INFO    ] No existing commands found in stream
[2026-06-13 23:54:45,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:54:45,407.407 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-13 23:54:49,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:54:49,412.412 INFO    ] Checking for system updates...
[2026-06-13 23:54:49,432.432 INFO    ] 200
[2026-06-13 23:54:49,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:49,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:54:49,467.467 INFO    ] No update needed
[2026-06-13 23:54:49,469.469 INFO    ] Checking for camera pi updates...
[2026-06-13 23:54:49,491.491 INFO    ] 200
[2026-06-13 23:54:49,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:49,515.515 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:54:49,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:54:49,558.558 INFO    ] No camera update needed
[2026-06-13 23:54:49,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:54:49,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:54:49,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:54:49,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:54:51,606.606 INFO    ] ================================================
[2026-06-13 23:54:51,621.621 INFO    ] Launching Daemon at Sat Jun 13 23:54:51 IST 2026
[2026-06-13 23:54:51,632.632 INFO    ] ================================================
[2026-06-13 23:54:51,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:54:51
[2026-06-13 23:54:52,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:54:52,456.456 INFO    ] Initializing speech engine...
[2026-06-13 23:54:52,461.461 INFO    ] 2026-06-13 23:54:52
[2026-06-13 23:54:52,659.659 INFO    ] 2026-06-13 23:54:52
[2026-06-13 23:54:52,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:54:52,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:54:52,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:54:53,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:54:53,157.157 INFO    ] time= 13/06/2026 23:54:53
[2026-06-13 23:54:53,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:54:53,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:54:53,302.302 INFO    ] No existing commands found in stream
[2026-06-13 23:54:58,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:54:58,326.326 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-13 23:54:59,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-13 23:54:59,432.432 INFO    ] Checking for system updates...
[2026-06-13 23:54:59,453.453 INFO    ] 200
[2026-06-13 23:54:59,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:59,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:54:59,491.491 INFO    ] No update needed
[2026-06-13 23:54:59,493.493 INFO    ] Checking for camera pi updates...
[2026-06-13 23:54:59,514.514 INFO    ] 200
[2026-06-13 23:54:59,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:54:59,541.541 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:54:59,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:54:59,588.588 INFO    ] No camera update needed
[2026-06-13 23:54:59,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:54:59,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:54:59,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:54:59,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:55:01,631.631 INFO    ] ================================================
[2026-06-13 23:55:01,645.645 INFO    ] Launching Daemon at Sat Jun 13 23:55:01 IST 2026
[2026-06-13 23:55:01,657.657 INFO    ] ================================================
[2026-06-13 23:55:02,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:55:02
[2026-06-13 23:55:02,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:55:02,530.530 INFO    ] Initializing speech engine...
[2026-06-13 23:55:02,535.535 INFO    ] 2026-06-13 23:55:02
[2026-06-13 23:55:02,738.738 INFO    ] 2026-06-13 23:55:02
[2026-06-13 23:55:02,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:55:02,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:55:02,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:55:03,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:55:03,085.085 INFO    ] time= 13/06/2026 23:55:03
[2026-06-13 23:55:03,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:55:03,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:55:03,254.254 INFO    ] No existing commands found in stream
[2026-06-13 23:55:08,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:55:08,266.266 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-13 23:55:12,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:55:12,562.562 INFO    ] Checking for system updates...
[2026-06-13 23:55:12,583.583 INFO    ] 200
[2026-06-13 23:55:12,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:12,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:55:12,616.616 INFO    ] No update needed
[2026-06-13 23:55:12,617.617 INFO    ] Checking for camera pi updates...
[2026-06-13 23:55:12,636.636 INFO    ] 200
[2026-06-13 23:55:12,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:12,661.661 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:55:12,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:55:12,708.708 INFO    ] No camera update needed
[2026-06-13 23:55:12,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:55:12,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:55:12,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:55:12,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:55:14,758.758 INFO    ] ================================================
[2026-06-13 23:55:14,775.775 INFO    ] Launching Daemon at Sat Jun 13 23:55:14 IST 2026
[2026-06-13 23:55:14,786.786 INFO    ] ================================================
[2026-06-13 23:55:15,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:55:15
[2026-06-13 23:55:15,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:55:16,211.211 INFO    ] Initializing speech engine...
[2026-06-13 23:55:16,221.221 INFO    ] 2026-06-13 23:55:16
[2026-06-13 23:55:16,466.466 INFO    ] 2026-06-13 23:55:16
[2026-06-13 23:55:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:55:16,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:55:16,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:55:16,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:55:16,934.934 INFO    ] time= 13/06/2026 23:55:16
[2026-06-13 23:55:16,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:55:17,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:55:17,089.089 INFO    ] No existing commands found in stream
[2026-06-13 23:55:22,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:55:22,104.104 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-13 23:55:23,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:55:23,517.517 INFO    ] Checking for system updates...
[2026-06-13 23:55:23,538.538 INFO    ] 200
[2026-06-13 23:55:23,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:23,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:55:23,572.572 INFO    ] No update needed
[2026-06-13 23:55:23,573.573 INFO    ] Checking for camera pi updates...
[2026-06-13 23:55:23,593.593 INFO    ] 200
[2026-06-13 23:55:23,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:23,618.618 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:55:23,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:55:23,658.658 INFO    ] No camera update needed
[2026-06-13 23:55:23,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:55:23,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:55:23,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:55:23,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:55:25,704.704 INFO    ] ================================================
[2026-06-13 23:55:25,720.720 INFO    ] Launching Daemon at Sat Jun 13 23:55:25 IST 2026
[2026-06-13 23:55:25,731.731 INFO    ] ================================================
[2026-06-13 23:55:26,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:55:26
[2026-06-13 23:55:26,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:55:27,064.064 INFO    ] Initializing speech engine...
[2026-06-13 23:55:27,076.076 INFO    ] 2026-06-13 23:55:27
[2026-06-13 23:55:27,353.353 INFO    ] 2026-06-13 23:55:27
[2026-06-13 23:55:27,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:55:27,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:55:27,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:55:27,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:55:27,781.781 INFO    ] time= 13/06/2026 23:55:27
[2026-06-13 23:55:27,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:55:27,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:55:28,011.011 INFO    ] No existing commands found in stream
[2026-06-13 23:55:33,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:55:33,045.045 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-13 23:55:35,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:55:35,933.933 INFO    ] Checking for system updates...
[2026-06-13 23:55:35,953.953 INFO    ] 200
[2026-06-13 23:55:35,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:35,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:55:35,991.991 INFO    ] No update needed
[2026-06-13 23:55:35,992.992 INFO    ] Checking for camera pi updates...
[2026-06-13 23:55:36,011.011 INFO    ] 200
[2026-06-13 23:55:36,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:36,037.037 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:55:36,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:55:36,082.082 INFO    ] No camera update needed
[2026-06-13 23:55:36,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:55:36,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:55:36,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:55:36,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:55:38,129.129 INFO    ] ================================================
[2026-06-13 23:55:38,145.145 INFO    ] Launching Daemon at Sat Jun 13 23:55:38 IST 2026
[2026-06-13 23:55:38,157.157 INFO    ] ================================================
[2026-06-13 23:55:38,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:55:38
[2026-06-13 23:55:38,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:55:38,958.958 INFO    ] Initializing speech engine...
[2026-06-13 23:55:38,964.964 INFO    ] 2026-06-13 23:55:38
[2026-06-13 23:55:39,166.166 INFO    ] 2026-06-13 23:55:39
[2026-06-13 23:55:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:55:39,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:55:39,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:55:39,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:55:39,567.567 INFO    ] time= 13/06/2026 23:55:39
[2026-06-13 23:55:39,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:55:39,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:55:39,684.684 INFO    ] No existing commands found in stream
[2026-06-13 23:55:44,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:55:44,696.696 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-13 23:55:48,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:55:48,663.663 INFO    ] Checking for system updates...
[2026-06-13 23:55:48,686.686 INFO    ] 200
[2026-06-13 23:55:48,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:48,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:55:48,722.722 INFO    ] No update needed
[2026-06-13 23:55:48,723.723 INFO    ] Checking for camera pi updates...
[2026-06-13 23:55:48,742.742 INFO    ] 200
[2026-06-13 23:55:48,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:55:48,767.767 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:55:48,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:55:48,805.805 INFO    ] No camera update needed
[2026-06-13 23:55:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:55:48,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:55:48,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:55:48,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:55:50,855.855 INFO    ] ================================================
[2026-06-13 23:55:50,870.870 INFO    ] Launching Daemon at Sat Jun 13 23:55:50 IST 2026
[2026-06-13 23:55:50,882.882 INFO    ] ================================================
[2026-06-13 23:55:51,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:55:51
[2026-06-13 23:55:51,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:55:51,663.663 INFO    ] Initializing speech engine...
[2026-06-13 23:55:51,675.675 INFO    ] 2026-06-13 23:55:51
[2026-06-13 23:55:51,880.880 INFO    ] 2026-06-13 23:55:51
[2026-06-13 23:55:51,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:55:52,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:55:52,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:55:52,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:55:52,274.274 INFO    ] time= 13/06/2026 23:55:52
[2026-06-13 23:55:52,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:55:52,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:55:52,393.393 INFO    ] No existing commands found in stream
[2026-06-13 23:55:57,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:55:57,406.406 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-13 23:56:00,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:56:00,737.737 INFO    ] Checking for system updates...
[2026-06-13 23:56:00,758.758 INFO    ] 200
[2026-06-13 23:56:00,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:00,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:00,792.792 INFO    ] No update needed
[2026-06-13 23:56:00,793.793 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:00,813.813 INFO    ] 200
[2026-06-13 23:56:00,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:00,838.838 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:00,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:00,875.875 INFO    ] No camera update needed
[2026-06-13 23:56:00,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:00,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:00,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:00,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:02,909.909 INFO    ] ================================================
[2026-06-13 23:56:02,918.918 INFO    ] Launching Daemon at Sat Jun 13 23:56:02 IST 2026
[2026-06-13 23:56:02,924.924 INFO    ] ================================================
[2026-06-13 23:56:03,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:03
[2026-06-13 23:56:03,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:03,738.738 INFO    ] Initializing speech engine...
[2026-06-13 23:56:03,743.743 INFO    ] 2026-06-13 23:56:03
[2026-06-13 23:56:03,947.947 INFO    ] 2026-06-13 23:56:03
[2026-06-13 23:56:03,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:04,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:04,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:04,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:56:04,352.352 INFO    ] time= 13/06/2026 23:56:04
[2026-06-13 23:56:04,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:56:04,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:56:04,461.461 INFO    ] No existing commands found in stream
[2026-06-13 23:56:09,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:56:09,475.475 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-13 23:56:11,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:56:11,779.779 INFO    ] Checking for system updates...
[2026-06-13 23:56:11,801.801 INFO    ] 200
[2026-06-13 23:56:11,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:11,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:56:11,834.834 INFO    ] No update needed
[2026-06-13 23:56:11,835.835 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:11,856.856 INFO    ] 200
[2026-06-13 23:56:11,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:11,883.883 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:11,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:56:11,920.920 INFO    ] No camera update needed
[2026-06-13 23:56:11,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:11,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:11,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:11,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:13,967.967 INFO    ] ================================================
[2026-06-13 23:56:13,983.983 INFO    ] Launching Daemon at Sat Jun 13 23:56:13 IST 2026
[2026-06-13 23:56:14,995.995 INFO    ] ================================================
[2026-06-13 23:56:14,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:14
[2026-06-13 23:56:14,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:14,802.802 INFO    ] Initializing speech engine...
[2026-06-13 23:56:14,807.807 INFO    ] 2026-06-13 23:56:14
[2026-06-13 23:56:15,010.010 INFO    ] 2026-06-13 23:56:14
[2026-06-13 23:56:15,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:15,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:15,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:15,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:56:15,409.409 INFO    ] time= 13/06/2026 23:56:15
[2026-06-13 23:56:15,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:56:15,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:56:15,525.525 INFO    ] No existing commands found in stream
[2026-06-13 23:56:20,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:56:20,542.542 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-13 23:56:21,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:56:21,804.804 INFO    ] Checking for system updates...
[2026-06-13 23:56:21,824.824 INFO    ] 200
[2026-06-13 23:56:21,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:21,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:21,859.859 INFO    ] No update needed
[2026-06-13 23:56:21,860.860 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:21,879.879 INFO    ] 200
[2026-06-13 23:56:21,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:21,904.904 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:22,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:22,046.046 INFO    ] No camera update needed
[2026-06-13 23:56:22,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:22,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:22,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:22,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:24,093.093 INFO    ] ================================================
[2026-06-13 23:56:24,109.109 INFO    ] Launching Daemon at Sat Jun 13 23:56:24 IST 2026
[2026-06-13 23:56:24,121.121 INFO    ] ================================================
[2026-06-13 23:56:24,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:24
[2026-06-13 23:56:24,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:24,954.954 INFO    ] Initializing speech engine...
[2026-06-13 23:56:24,959.959 INFO    ] 2026-06-13 23:56:24
[2026-06-13 23:56:25,165.165 INFO    ] 2026-06-13 23:56:25
[2026-06-13 23:56:25,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:25,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:25,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:56:25,571.571 INFO    ] time= 13/06/2026 23:56:25
[2026-06-13 23:56:25,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:56:25,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:56:25,680.680 INFO    ] No existing commands found in stream
[2026-06-13 23:56:30,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:56:30,694.694 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-13 23:56:34,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:56:34,996.996 INFO    ] Checking for system updates...
[2026-06-13 23:56:35,017.017 INFO    ] 200
[2026-06-13 23:56:35,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:35,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:35,053.053 INFO    ] No update needed
[2026-06-13 23:56:35,055.055 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:35,075.075 INFO    ] 200
[2026-06-13 23:56:35,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:35,100.100 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:35,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:35,149.149 INFO    ] No camera update needed
[2026-06-13 23:56:35,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:35,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:35,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:35,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:37,198.198 INFO    ] ================================================
[2026-06-13 23:56:37,214.214 INFO    ] Launching Daemon at Sat Jun 13 23:56:37 IST 2026
[2026-06-13 23:56:37,225.225 INFO    ] ================================================
[2026-06-13 23:56:37,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:37
[2026-06-13 23:56:37,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:38,006.006 INFO    ] Initializing speech engine...
[2026-06-13 23:56:38,011.011 INFO    ] 2026-06-13 23:56:38
[2026-06-13 23:56:38,213.213 INFO    ] 2026-06-13 23:56:38
[2026-06-13 23:56:38,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:38,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:38,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:38,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:56:38,621.621 INFO    ] time= 13/06/2026 23:56:38
[2026-06-13 23:56:38,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:56:38,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:56:38,724.724 INFO    ] No existing commands found in stream
[2026-06-13 23:56:43,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:56:43,737.737 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-13 23:56:46,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:56:46,471.471 INFO    ] Checking for system updates...
[2026-06-13 23:56:46,492.492 INFO    ] 200
[2026-06-13 23:56:46,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:46,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:56:46,525.525 INFO    ] No update needed
[2026-06-13 23:56:46,527.527 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:46,546.546 INFO    ] 200
[2026-06-13 23:56:46,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:46,572.572 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:46,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:56:46,615.615 INFO    ] No camera update needed
[2026-06-13 23:56:46,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:46,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:46,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:46,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:48,662.662 INFO    ] ================================================
[2026-06-13 23:56:48,677.677 INFO    ] Launching Daemon at Sat Jun 13 23:56:48 IST 2026
[2026-06-13 23:56:48,688.688 INFO    ] ================================================
[2026-06-13 23:56:49,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:49
[2026-06-13 23:56:49,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:49,487.487 INFO    ] Initializing speech engine...
[2026-06-13 23:56:49,492.492 INFO    ] 2026-06-13 23:56:49
[2026-06-13 23:56:49,695.695 INFO    ] 2026-06-13 23:56:49
[2026-06-13 23:56:49,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:49,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:49,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:50,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:56:50,103.103 INFO    ] time= 13/06/2026 23:56:50
[2026-06-13 23:56:50,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:56:50,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:56:50,209.209 INFO    ] No existing commands found in stream
[2026-06-13 23:56:55,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:56:55,221.221 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-13 23:56:56,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:56:56,352.352 INFO    ] Checking for system updates...
[2026-06-13 23:56:56,374.374 INFO    ] 200
[2026-06-13 23:56:56,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:56,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:56:56,407.407 INFO    ] No update needed
[2026-06-13 23:56:56,409.409 INFO    ] Checking for camera pi updates...
[2026-06-13 23:56:56,429.429 INFO    ] 200
[2026-06-13 23:56:56,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:56:56,454.454 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:56:56,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:56:56,490.490 INFO    ] No camera update needed
[2026-06-13 23:56:56,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:56:56,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:56:56,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:56:56,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:56:58,538.538 INFO    ] ================================================
[2026-06-13 23:56:58,554.554 INFO    ] Launching Daemon at Sat Jun 13 23:56:58 IST 2026
[2026-06-13 23:56:58,565.565 INFO    ] ================================================
[2026-06-13 23:56:58,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:56:58
[2026-06-13 23:56:59,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:56:59,367.367 INFO    ] Initializing speech engine...
[2026-06-13 23:56:59,376.376 INFO    ] 2026-06-13 23:56:59
[2026-06-13 23:56:59,592.592 INFO    ] 2026-06-13 23:56:59
[2026-06-13 23:56:59,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:56:59,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:56:59,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:56:59,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:00,013.013 INFO    ] time= 13/06/2026 23:56:59
[2026-06-13 23:57:00,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:00,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:00,138.138 INFO    ] No existing commands found in stream
[2026-06-13 23:57:05,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:57:05,150.150 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-13 23:57:07,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:57:07,161.161 INFO    ] Checking for system updates...
[2026-06-13 23:57:07,198.198 INFO    ] 200
[2026-06-13 23:57:07,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:07,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:57:07,259.259 INFO    ] No update needed
[2026-06-13 23:57:07,262.262 INFO    ] Checking for camera pi updates...
[2026-06-13 23:57:07,296.296 INFO    ] 200
[2026-06-13 23:57:07,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:07,346.346 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:57:07,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:57:07,399.399 INFO    ] No camera update needed
[2026-06-13 23:57:07,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:57:07,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:57:07,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:57:07,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:57:09,446.446 INFO    ] ================================================
[2026-06-13 23:57:09,461.461 INFO    ] Launching Daemon at Sat Jun 13 23:57:09 IST 2026
[2026-06-13 23:57:09,472.472 INFO    ] ================================================
[2026-06-13 23:57:09,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:57:09
[2026-06-13 23:57:10,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:57:10,290.290 INFO    ] Initializing speech engine...
[2026-06-13 23:57:10,301.301 INFO    ] 2026-06-13 23:57:10
[2026-06-13 23:57:10,506.506 INFO    ] 2026-06-13 23:57:10
[2026-06-13 23:57:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:57:10,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:57:10,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:57:10,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:10,922.922 INFO    ] time= 13/06/2026 23:57:10
[2026-06-13 23:57:10,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:10,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:11,019.019 INFO    ] No existing commands found in stream
[2026-06-13 23:57:16,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:57:16,032.032 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-13 23:57:19,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:57:19,931.931 INFO    ] Checking for system updates...
[2026-06-13 23:57:19,951.951 INFO    ] 200
[2026-06-13 23:57:19,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:19,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:19,984.984 INFO    ] No update needed
[2026-06-13 23:57:19,985.985 INFO    ] Checking for camera pi updates...
[2026-06-13 23:57:20,007.007 INFO    ] 200
[2026-06-13 23:57:20,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:20,032.032 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:57:20,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:20,071.071 INFO    ] No camera update needed
[2026-06-13 23:57:20,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:57:20,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:57:20,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:57:20,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:57:22,117.117 INFO    ] ================================================
[2026-06-13 23:57:22,132.132 INFO    ] Launching Daemon at Sat Jun 13 23:57:22 IST 2026
[2026-06-13 23:57:22,142.142 INFO    ] ================================================
[2026-06-13 23:57:22,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:57:22
[2026-06-13 23:57:22,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:57:22,929.929 INFO    ] Initializing speech engine...
[2026-06-13 23:57:22,934.934 INFO    ] 2026-06-13 23:57:22
[2026-06-13 23:57:23,136.136 INFO    ] 2026-06-13 23:57:23
[2026-06-13 23:57:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:57:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:57:23,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:57:23,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:23,541.541 INFO    ] time= 13/06/2026 23:57:23
[2026-06-13 23:57:23,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:23,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:23,651.651 INFO    ] No existing commands found in stream
[2026-06-13 23:57:28,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:57:28,660.660 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-13 23:57:32,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:57:32,547.547 INFO    ] Checking for system updates...
[2026-06-13 23:57:32,568.568 INFO    ] 200
[2026-06-13 23:57:32,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:32,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:32,604.604 INFO    ] No update needed
[2026-06-13 23:57:32,605.605 INFO    ] Checking for camera pi updates...
[2026-06-13 23:57:32,624.624 INFO    ] 200
[2026-06-13 23:57:32,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:32,651.651 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:57:32,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:32,688.688 INFO    ] No camera update needed
[2026-06-13 23:57:32,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:57:32,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:57:32,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:57:32,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:57:34,745.745 INFO    ] ================================================
[2026-06-13 23:57:34,761.761 INFO    ] Launching Daemon at Sat Jun 13 23:57:34 IST 2026
[2026-06-13 23:57:34,772.772 INFO    ] ================================================
[2026-06-13 23:57:35,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:57:35
[2026-06-13 23:57:35,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:57:36,119.119 INFO    ] Initializing speech engine...
[2026-06-13 23:57:36,125.125 INFO    ] 2026-06-13 23:57:36
[2026-06-13 23:57:36,398.398 INFO    ] 2026-06-13 23:57:36
[2026-06-13 23:57:36,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:57:36,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:57:36,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:57:36,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:36,862.862 INFO    ] time= 13/06/2026 23:57:36
[2026-06-13 23:57:36,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:36,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:37,039.039 INFO    ] No existing commands found in stream
[2026-06-13 23:57:42,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:57:42,080.080 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-13 23:57:43,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:57:43,562.562 INFO    ] Checking for system updates...
[2026-06-13 23:57:43,584.584 INFO    ] 200
[2026-06-13 23:57:43,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:43,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:43,617.617 INFO    ] No update needed
[2026-06-13 23:57:43,619.619 INFO    ] Checking for camera pi updates...
[2026-06-13 23:57:43,639.639 INFO    ] 200
[2026-06-13 23:57:43,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:43,664.664 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:57:43,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:43,701.701 INFO    ] No camera update needed
[2026-06-13 23:57:43,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:57:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:57:43,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:57:43,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:57:45,750.750 INFO    ] ================================================
[2026-06-13 23:57:45,765.765 INFO    ] Launching Daemon at Sat Jun 13 23:57:45 IST 2026
[2026-06-13 23:57:45,776.776 INFO    ] ================================================
[2026-06-13 23:57:46,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:57:46
[2026-06-13 23:57:46,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:57:46,557.557 INFO    ] Initializing speech engine...
[2026-06-13 23:57:46,568.568 INFO    ] 2026-06-13 23:57:46
[2026-06-13 23:57:46,760.760 INFO    ] 2026-06-13 23:57:46
[2026-06-13 23:57:46,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:57:46,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:57:47,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:57:47,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:47,163.163 INFO    ] time= 13/06/2026 23:57:47
[2026-06-13 23:57:47,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:47,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:47,324.324 INFO    ] No existing commands found in stream
[2026-06-13 23:57:52,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:57:52,341.341 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-13 23:57:56,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:57:56,059.059 INFO    ] Checking for system updates...
[2026-06-13 23:57:56,081.081 INFO    ] 200
[2026-06-13 23:57:56,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:56,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:57:56,116.116 INFO    ] No update needed
[2026-06-13 23:57:56,117.117 INFO    ] Checking for camera pi updates...
[2026-06-13 23:57:56,137.137 INFO    ] 200
[2026-06-13 23:57:56,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:57:56,162.162 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:57:56,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:57:56,204.204 INFO    ] No camera update needed
[2026-06-13 23:57:56,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:57:56,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:57:56,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:57:56,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:57:58,252.252 INFO    ] ================================================
[2026-06-13 23:57:58,267.267 INFO    ] Launching Daemon at Sat Jun 13 23:57:58 IST 2026
[2026-06-13 23:57:58,279.279 INFO    ] ================================================
[2026-06-13 23:57:58,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:57:58
[2026-06-13 23:57:58,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:57:59,112.112 INFO    ] Initializing speech engine...
[2026-06-13 23:57:59,124.124 INFO    ] 2026-06-13 23:57:59
[2026-06-13 23:57:59,332.332 INFO    ] 2026-06-13 23:57:59
[2026-06-13 23:57:59,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:57:59,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:57:59,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:57:59,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:57:59,732.732 INFO    ] time= 13/06/2026 23:57:59
[2026-06-13 23:57:59,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:57:59,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:57:59,848.848 INFO    ] No existing commands found in stream
[2026-06-13 23:58:04,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:58:04,861.861 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-13 23:58:07,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:58:07,009.009 INFO    ] Checking for system updates...
[2026-06-13 23:58:07,031.031 INFO    ] 200
[2026-06-13 23:58:07,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:07,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:07,065.065 INFO    ] No update needed
[2026-06-13 23:58:07,066.066 INFO    ] Checking for camera pi updates...
[2026-06-13 23:58:07,086.086 INFO    ] 200
[2026-06-13 23:58:07,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:07,111.111 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:58:07,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:07,153.153 INFO    ] No camera update needed
[2026-06-13 23:58:07,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:58:07,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:58:07,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:58:07,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:58:09,202.202 INFO    ] ================================================
[2026-06-13 23:58:09,217.217 INFO    ] Launching Daemon at Sat Jun 13 23:58:09 IST 2026
[2026-06-13 23:58:09,227.227 INFO    ] ================================================
[2026-06-13 23:58:09,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:58:09
[2026-06-13 23:58:09,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:58:10,023.023 INFO    ] Initializing speech engine...
[2026-06-13 23:58:10,028.028 INFO    ] 2026-06-13 23:58:10
[2026-06-13 23:58:10,233.233 INFO    ] 2026-06-13 23:58:10
[2026-06-13 23:58:10,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:58:10,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:58:10,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:58:10,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:58:10,637.637 INFO    ] time= 13/06/2026 23:58:10
[2026-06-13 23:58:10,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:58:10,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:58:10,746.746 INFO    ] No existing commands found in stream
[2026-06-13 23:58:15,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:58:15,760.760 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-13 23:58:16,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:58:16,957.957 INFO    ] Checking for system updates...
[2026-06-13 23:58:16,978.978 INFO    ] 200
[2026-06-13 23:58:16,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:17,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:58:17,014.014 INFO    ] No update needed
[2026-06-13 23:58:17,015.015 INFO    ] Checking for camera pi updates...
[2026-06-13 23:58:17,034.034 INFO    ] 200
[2026-06-13 23:58:17,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:17,061.061 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:58:17,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:58:17,103.103 INFO    ] No camera update needed
[2026-06-13 23:58:17,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:58:17,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:58:17,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:58:17,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:58:19,150.150 INFO    ] ================================================
[2026-06-13 23:58:19,165.165 INFO    ] Launching Daemon at Sat Jun 13 23:58:19 IST 2026
[2026-06-13 23:58:19,176.176 INFO    ] ================================================
[2026-06-13 23:58:19,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:58:19
[2026-06-13 23:58:19,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:58:19,959.959 INFO    ] Initializing speech engine...
[2026-06-13 23:58:19,964.964 INFO    ] 2026-06-13 23:58:19
[2026-06-13 23:58:20,178.178 INFO    ] 2026-06-13 23:58:20
[2026-06-13 23:58:20,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:58:20,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:58:20,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:58:20,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:58:20,580.580 INFO    ] time= 13/06/2026 23:58:20
[2026-06-13 23:58:20,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:58:20,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:58:20,821.821 INFO    ] No existing commands found in stream
[2026-06-13 23:58:25,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:58:25,860.860 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-13 23:58:29,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-13 23:58:29,198.198 INFO    ] Checking for system updates...
[2026-06-13 23:58:29,219.219 INFO    ] 200
[2026-06-13 23:58:29,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:29,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:29,252.252 INFO    ] No update needed
[2026-06-13 23:58:29,253.253 INFO    ] Checking for camera pi updates...
[2026-06-13 23:58:29,273.273 INFO    ] 200
[2026-06-13 23:58:29,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:29,300.300 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:58:29,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:29,449.449 INFO    ] No camera update needed
[2026-06-13 23:58:29,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:58:29,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:58:29,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:58:29,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:58:31,508.508 INFO    ] ================================================
[2026-06-13 23:58:31,526.526 INFO    ] Launching Daemon at Sat Jun 13 23:58:31 IST 2026
[2026-06-13 23:58:31,538.538 INFO    ] ================================================
[2026-06-13 23:58:31,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:58:31
[2026-06-13 23:58:32,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:58:32,831.831 INFO    ] Initializing speech engine...
[2026-06-13 23:58:32,840.840 INFO    ] 2026-06-13 23:58:32
[2026-06-13 23:58:33,112.112 INFO    ] 2026-06-13 23:58:33
[2026-06-13 23:58:33,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:58:33,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:58:33,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:58:33,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:58:33,475.475 INFO    ] time= 13/06/2026 23:58:33
[2026-06-13 23:58:33,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:58:33,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:58:33,556.556 INFO    ] No existing commands found in stream
[2026-06-13 23:58:38,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:58:38,571.571 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-13 23:58:40,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:58:40,298.298 INFO    ] Checking for system updates...
[2026-06-13 23:58:40,319.319 INFO    ] 200
[2026-06-13 23:58:40,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:40,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:40,352.352 INFO    ] No update needed
[2026-06-13 23:58:40,353.353 INFO    ] Checking for camera pi updates...
[2026-06-13 23:58:40,373.373 INFO    ] 200
[2026-06-13 23:58:40,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:40,397.397 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:58:40,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:40,437.437 INFO    ] No camera update needed
[2026-06-13 23:58:40,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:58:40,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:58:40,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:58:40,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:58:42,485.485 INFO    ] ================================================
[2026-06-13 23:58:42,502.502 INFO    ] Launching Daemon at Sat Jun 13 23:58:42 IST 2026
[2026-06-13 23:58:42,513.513 INFO    ] ================================================
[2026-06-13 23:58:42,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:58:42
[2026-06-13 23:58:43,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:58:43,513.513 INFO    ] Initializing speech engine...
[2026-06-13 23:58:43,520.520 INFO    ] 2026-06-13 23:58:43
[2026-06-13 23:58:43,814.814 INFO    ] 2026-06-13 23:58:43
[2026-06-13 23:58:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:58:44,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:58:44,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:58:44,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:58:44,214.214 INFO    ] time= 13/06/2026 23:58:44
[2026-06-13 23:58:44,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:58:44,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:58:44,380.380 INFO    ] No existing commands found in stream
[2026-06-13 23:58:49,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:58:49,413.413 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-13 23:58:52,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:58:52,952.952 INFO    ] Checking for system updates...
[2026-06-13 23:58:52,973.973 INFO    ] 200
[2026-06-13 23:58:52,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:53,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:53,005.005 INFO    ] No update needed
[2026-06-13 23:58:53,007.007 INFO    ] Checking for camera pi updates...
[2026-06-13 23:58:53,026.026 INFO    ] 200
[2026-06-13 23:58:53,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:58:53,051.051 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:58:53,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:58:53,090.090 INFO    ] No camera update needed
[2026-06-13 23:58:53,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:58:53,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:58:53,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:58:53,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:58:55,136.136 INFO    ] ================================================
[2026-06-13 23:58:55,152.152 INFO    ] Launching Daemon at Sat Jun 13 23:58:55 IST 2026
[2026-06-13 23:58:55,163.163 INFO    ] ================================================
[2026-06-13 23:58:55,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:58:55
[2026-06-13 23:58:55,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:58:55,947.947 INFO    ] Initializing speech engine...
[2026-06-13 23:58:55,955.955 INFO    ] 2026-06-13 23:58:55
[2026-06-13 23:58:56,166.166 INFO    ] 2026-06-13 23:58:56
[2026-06-13 23:58:56,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:58:56,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:58:56,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:58:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:58:56,581.581 INFO    ] time= 13/06/2026 23:58:56
[2026-06-13 23:58:56,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:58:56,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:58:56,678.678 INFO    ] No existing commands found in stream
[2026-06-13 23:59:01,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:01,690.690 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-13 23:59:04,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:59:04,401.401 INFO    ] Checking for system updates...
[2026-06-13 23:59:04,422.422 INFO    ] 200
[2026-06-13 23:59:04,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:04,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:04,456.456 INFO    ] No update needed
[2026-06-13 23:59:04,458.458 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:04,478.478 INFO    ] 200
[2026-06-13 23:59:04,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:04,503.503 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:59:04,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:04,542.542 INFO    ] No camera update needed
[2026-06-13 23:59:04,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:59:04,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:59:04,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:59:04,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:59:06,591.591 INFO    ] ================================================
[2026-06-13 23:59:06,607.607 INFO    ] Launching Daemon at Sat Jun 13 23:59:06 IST 2026
[2026-06-13 23:59:06,619.619 INFO    ] ================================================
[2026-06-13 23:59:06,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:59:06
[2026-06-13 23:59:07,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:59:07,403.403 INFO    ] Initializing speech engine...
[2026-06-13 23:59:07,408.408 INFO    ] 2026-06-13 23:59:07
[2026-06-13 23:59:07,613.613 INFO    ] 2026-06-13 23:59:07
[2026-06-13 23:59:07,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:59:07,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:59:07,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:59:07,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:59:08,016.016 INFO    ] time= 13/06/2026 23:59:07
[2026-06-13 23:59:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:59:08,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:59:08,126.126 INFO    ] No existing commands found in stream
[2026-06-13 23:59:13,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:13,143.143 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-13 23:59:15,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:59:15,732.732 INFO    ] Checking for system updates...
[2026-06-13 23:59:15,753.753 INFO    ] 200
[2026-06-13 23:59:15,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:15,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:15,788.788 INFO    ] No update needed
[2026-06-13 23:59:15,790.790 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:15,812.812 INFO    ] 200
[2026-06-13 23:59:15,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:15,836.836 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:59:15,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:15,874.874 INFO    ] No camera update needed
[2026-06-13 23:59:15,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:59:15,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:59:15,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:59:15,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:59:17,922.922 INFO    ] ================================================
[2026-06-13 23:59:17,938.938 INFO    ] Launching Daemon at Sat Jun 13 23:59:17 IST 2026
[2026-06-13 23:59:17,950.950 INFO    ] ================================================
[2026-06-13 23:59:18,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:59:18
[2026-06-13 23:59:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:59:18,763.763 INFO    ] Initializing speech engine...
[2026-06-13 23:59:18,771.771 INFO    ] 2026-06-13 23:59:18
[2026-06-13 23:59:18,990.990 INFO    ] 2026-06-13 23:59:18
[2026-06-13 23:59:19,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:59:19,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:59:19,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:59:19,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:59:19,415.415 INFO    ] time= 13/06/2026 23:59:19
[2026-06-13 23:59:19,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:59:19,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:59:19,547.547 INFO    ] No existing commands found in stream
[2026-06-13 23:59:24,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:24,560.560 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-13 23:59:26,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-13 23:59:26,896.896 INFO    ] Checking for system updates...
[2026-06-13 23:59:26,916.916 INFO    ] 200
[2026-06-13 23:59:26,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:26,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:26,953.953 INFO    ] No update needed
[2026-06-13 23:59:26,954.954 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:26,976.976 INFO    ] 200
[2026-06-13 23:59:26,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:27,002.002 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:59:27,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:59:27,036.036 INFO    ] No camera update needed
[2026-06-13 23:59:27,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:59:27,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:59:27,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:59:27,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:59:29,085.085 INFO    ] ================================================
[2026-06-13 23:59:29,101.101 INFO    ] Launching Daemon at Sat Jun 13 23:59:29 IST 2026
[2026-06-13 23:59:29,112.112 INFO    ] ================================================
[2026-06-13 23:59:29,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:59:29
[2026-06-13 23:59:29,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:59:29,913.913 INFO    ] Initializing speech engine...
[2026-06-13 23:59:29,918.918 INFO    ] 2026-06-13 23:59:29
[2026-06-13 23:59:30,122.122 INFO    ] 2026-06-13 23:59:30
[2026-06-13 23:59:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:59:30,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:59:30,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:59:30,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:59:30,533.533 INFO    ] time= 13/06/2026 23:59:30
[2026-06-13 23:59:30,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:59:30,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:59:30,638.638 INFO    ] No existing commands found in stream
[2026-06-13 23:59:35,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:35,650.650 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-13 23:59:36,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-13 23:59:36,383.383 INFO    ] Checking for system updates...
[2026-06-13 23:59:36,404.404 INFO    ] 200
[2026-06-13 23:59:36,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:36,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:36,437.437 INFO    ] No update needed
[2026-06-13 23:59:36,438.438 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:36,457.457 INFO    ] 200
[2026-06-13 23:59:36,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:36,482.482 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:59:36,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:36,520.520 INFO    ] No camera update needed
[2026-06-13 23:59:36,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:59:36,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:59:36,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:59:36,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:59:38,568.568 INFO    ] ================================================
[2026-06-13 23:59:38,584.584 INFO    ] Launching Daemon at Sat Jun 13 23:59:38 IST 2026
[2026-06-13 23:59:38,595.595 INFO    ] ================================================
[2026-06-13 23:59:38,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:59:38
[2026-06-13 23:59:39,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:59:39,411.411 INFO    ] Initializing speech engine...
[2026-06-13 23:59:39,415.415 INFO    ] 2026-06-13 23:59:39
[2026-06-13 23:59:39,621.621 INFO    ] 2026-06-13 23:59:39
[2026-06-13 23:59:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:59:39,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:59:39,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:59:39,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:59:39,896.896 INFO    ] time= 13/06/2026 23:59:39
[2026-06-13 23:59:39,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:59:39,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:59:40,003.003 INFO    ] No existing commands found in stream
[2026-06-13 23:59:45,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:45,040.040 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-13 23:59:48,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-13 23:59:48,564.564 INFO    ] Checking for system updates...
[2026-06-13 23:59:48,586.586 INFO    ] 200
[2026-06-13 23:59:48,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:48,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-13 23:59:48,622.622 INFO    ] No update needed
[2026-06-13 23:59:48,623.623 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:48,645.645 INFO    ] 200
[2026-06-13 23:59:48,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:48,672.672 INFO    ] Camera IP: TMCAM08202203.local
[2026-06-13 23:59:48,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:59:48,710.710 INFO    ] No camera update needed
[2026-06-13 23:59:48,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-13 23:59:48,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-13 23:59:48,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-13 23:59:48,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-13 23:59:50,759.759 INFO    ] ================================================
[2026-06-13 23:59:50,774.774 INFO    ] Launching Daemon at Sat Jun 13 23:59:50 IST 2026
[2026-06-13 23:59:50,785.785 INFO    ] ================================================
[2026-06-13 23:59:51,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-13 23:59:51
[2026-06-13 23:59:51,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-13 23:59:51,593.593 INFO    ] Initializing speech engine...
[2026-06-13 23:59:51,597.597 INFO    ] 2026-06-13 23:59:51
[2026-06-13 23:59:51,806.806 INFO    ] 2026-06-13 23:59:51
[2026-06-13 23:59:51,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-13 23:59:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-13 23:59:52,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-13 23:59:52,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-13 23:59:52,249.249 INFO    ] time= 13/06/2026 23:59:52
[2026-06-13 23:59:52,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202203
[2026-06-13 23:59:52,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-13 23:59:52,387.387 INFO    ] No existing commands found in stream
[2026-06-13 23:59:57,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-13 23:59:57,400.400 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-13 23:59:59,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-13 23:59:59,914.914 INFO    ] Checking for system updates...
[2026-06-13 23:59:59,935.935 INFO    ] 200
[2026-06-13 23:59:59,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-06-13 23:59:59,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-13 23:59:59,968.968 INFO    ] No update needed
[2026-06-13 23:59:59,970.970 INFO    ] Checking for camera pi updates...
[2026-06-13 23:59:59,989.989 INFO    ] 200
[2026-06-13 23:59:59,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
